ZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCmluZGV4IDdkZmM1YWQuLjhlZmNkMmUgMTAwNjQ0Ci0tLSBhLy5naXRpZ25vcmUKKysrIGIvLmdpdGlnbm9yZQpAQCAtMTIsNiArMTIsNyBAQAogRG9jL3Rvb2xzL3B5Z21lbnRzLwogRG9jL3Rvb2xzL3NwaGlueC8KIExpYi9saWIydG8zLyoucGlja2xlCitMaWIvX3N5c2NvbmZpZ2RhdGEucHkKIE1ha2VmaWxlCiBNYWtlZmlsZS5wcmUKIE1pc2MvcHl0aG9uLnBjCmRpZmYgLS1naXQgYS8uaGdlb2wgYi8uaGdlb2wKaW5kZXggZWQxMzE3MS4uYWZiMWU2YiAxMDA2NDQKLS0tIGEvLmhnZW9sCisrKyBiLy5oZ2VvbApAQCAtMjgsOCArMjgsOSBAQAogCiBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yNi50eHQgPSBCSU4KIExpYi90ZXN0L2Nqa2VuY29kaW5ncy8qID0gQklOCi1MaWIvdGVzdC9zbmRoZHJkYXRhL3NuZGhkci4qID0gQklOCiBMaWIvdGVzdC9kZWNpbWFsdGVzdGRhdGEvKi5kZWNUZXN0ID0gQklOCitMaWIvdGVzdC9zbmRoZHJkYXRhL3NuZGhkci4qID0gQklOCitMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzI2LnR4dCA9IEJJTgogCiAjIEFsbCBvdGhlciBmaWxlcyAod2hpY2ggcHJlc3VtYWJseSBhcmUgaHVtYW4tZWRpdGFibGUpIGFyZSAibmF0aXZlIi4KICMgVGhpcyBtdXN0IGJlIHRoZSBsYXN0IHJ1bGUhCmRpZmYgLS1naXQgYS8uaGdpZ25vcmUgYi8uaGdpZ25vcmUKaW5kZXggMjRkZjNiOS4uMGZkODU2MiAxMDA2NDQKLS0tIGEvLmhnaWdub3JlCisrKyBiLy5oZ2lnbm9yZQpAQCAtNSw3ICs1LDggQEAKIE1ha2VmaWxlLnByZSQKIFRBR1MkCiBhdXRvbTR0ZS5jYWNoZSQKLWJ1aWxkLworXmJ1aWxkLworXkRvYy9idWlsZC8KIGJ1aWxkbm8kCiBjb25maWcuY2FjaGUKIGNvbmZpZy5sb2cKQEAgLTMyLDYgKzMzLDcgQEAKIE1vZHVsZXMvbGRfc29fYWl4JAogUGFyc2VyL3BnZW4kCiBQYXJzZXIvcGdlbi5zdGFtcCQKK1BDYnVpbGQvYW1kNjQvCiBeY29yZQogXnB5dGhvbi1nZGIucHkKIF5weXRob24uZXhlLWdkYi5weQpAQCAtNDcsNiArNDksNyBAQAogKi5weWQKICouY292ZXIKICp+CitMaWIvX3N5c2NvbmZpZ2RhdGEucHkKIExpYi9saWIydG8zLyoucGlja2xlCiBMaWIvdGVzdC9kYXRhLyoKIE1pc2MvKi53cHUKQEAgLTYyLDcgKzY1LDEwIEBACiBQQ2J1aWxkLyoubwogUENidWlsZC8qLm5jYgogUENidWlsZC8qLmJzYworUENidWlsZC8qLnVzZXIKK1BDYnVpbGQvKi5zdW8KIFBDYnVpbGQvV2luMzItdGVtcC0qCitQQ2J1aWxkL3g2NC10ZW1wLSoKIF9fcHljYWNoZV9fCiBNb2R1bGVzL190ZXN0ZW1iZWQKIC5jb3ZlcmFnZQpkaWZmIC0tZ2l0IGEvRG9jL0FDS1MudHh0IGIvRG9jL0FDS1MudHh0CmluZGV4IDcwMDYzYzAuLmY5ZTRkM2IgMTAwNjQ0Ci0tLSBhL0RvYy9BQ0tTLnR4dAorKysgYi9Eb2MvQUNLUy50eHQKQEAgLTIxMCw2ICsyMTAsNyBAQAogICAgKiBEYXZpZCBUdXJuZXIKICAgICogU2FuZHJvIFRvc2kKICAgICogVmlsbGUgVmFpbmlvCisgICAqIE5hZGVlbSBWYXdkYQogICAgKiBNYXJ0aWpuIFZyaWVzCiAgICAqIENoYXJsZXMgRy4gV2FsZG1hbgogICAgKiBHcmVnIFdhcmQKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9hcmcucnN0IGIvRG9jL2MtYXBpL2FyZy5yc3QKaW5kZXggZDRkZGE3Yy4uMTk2YWE3NyAxMDA2NDQKLS0tIGEvRG9jL2MtYXBpL2FyZy5yc3QKKysrIGIvRG9jL2MtYXBpL2FyZy5yc3QKQEAgLTE0Niw3ICsxNDYsNyBAQAogICAgTGlrZSBgYHUjYGAsIGJ1dCB0aGUgUHl0aG9uIG9iamVjdCBtYXkgYWxzbyBiZSBgYE5vbmVgYCwgaW4gd2hpY2ggY2FzZSB0aGUKICAgIDpjOnR5cGU6YFB5X1VOSUNPREVgIHBvaW50ZXIgaXMgc2V0IHRvICpOVUxMKi4KIAotYGBVYGAgKDpjbGFzczpgc3RyYCkgW1B5VW5pY29kZU9iamVjdCBcKl0KK2BgVWBgICg6Y2xhc3M6YHN0cmApIFtQeU9iamVjdCBcKl0KICAgIFJlcXVpcmVzIHRoYXQgdGhlIFB5dGhvbiBvYmplY3QgaXMgYSBVbmljb2RlIG9iamVjdCwgd2l0aG91dCBhdHRlbXB0aW5nCiAgICBhbnkgY29udmVyc2lvbi4gIFJhaXNlcyA6ZXhjOmBUeXBlRXJyb3JgIGlmIHRoZSBvYmplY3QgaXMgbm90IGEgVW5pY29kZQogICAgb2JqZWN0LiAgVGhlIEMgdmFyaWFibGUgbWF5IGFsc28gYmUgZGVjbGFyZWQgYXMgOmM6dHlwZTpgUHlPYmplY3RcKmAuCkBAIC0yNjAsOSArMjYwLDExIEBACiBgYG5gYCAoOmNsYXNzOmBpbnRgKSBbUHlfc3NpemVfdF0KICAgIENvbnZlcnQgYSBQeXRob24gaW50ZWdlciB0byBhIEMgOmM6dHlwZTpgUHlfc3NpemVfdGAuCiAKLWBgY2BgICg6Y2xhc3M6YGJ5dGVzYCBvZiBsZW5ndGggMSkgW2NoYXJdCi0gICBDb252ZXJ0IGEgUHl0aG9uIGJ5dGUsIHJlcHJlc2VudGVkIGFzIGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0IG9mIGxlbmd0aCAxLAotICAgdG8gYSBDIDpjOnR5cGU6YGNoYXJgLgorYGBjYGAgKDpjbGFzczpgYnl0ZXNgIG9yIDpjbGFzczpgYnl0ZWFycmF5YCBvZiBsZW5ndGggMSkgW2NoYXJdCisgICBDb252ZXJ0IGEgUHl0aG9uIGJ5dGUsIHJlcHJlc2VudGVkIGFzIGEgOmNsYXNzOmBieXRlc2Agb3IKKyAgIDpjbGFzczpgYnl0ZWFycmF5YCBvYmplY3Qgb2YgbGVuZ3RoIDEsIHRvIGEgQyA6Yzp0eXBlOmBjaGFyYC4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMgQWxsb3cgOmNsYXNzOmBieXRlYXJyYXlgIG9iamVjdHMKIAogYGBDYGAgKDpjbGFzczpgc3RyYCBvZiBsZW5ndGggMSkgW2ludF0KICAgIENvbnZlcnQgYSBQeXRob24gY2hhcmFjdGVyLCByZXByZXNlbnRlZCBhcyBhIDpjbGFzczpgc3RyYCBvYmplY3Qgb2YKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9kYXRldGltZS5yc3QgYi9Eb2MvYy1hcGkvZGF0ZXRpbWUucnN0CmluZGV4IGZjZDEzOTUuLjM5NTQyYmQgMTAwNjQ0Ci0tLSBhL0RvYy9jLWFwaS9kYXRldGltZS5yc3QKKysrIGIvRG9jL2MtYXBpL2RhdGV0aW1lLnJzdApAQCAtMTcwLDYgKzE3MCwzMSBAQAogICAgUmV0dXJuIHRoZSBtaWNyb3NlY29uZCwgYXMgYW4gaW50IGZyb20gMCB0aHJvdWdoIDk5OTk5OS4KIAogCitNYWNyb3MgdG8gZXh0cmFjdCBmaWVsZHMgZnJvbSB0aW1lIGRlbHRhIG9iamVjdHMuICBUaGUgYXJndW1lbnQgbXVzdCBiZSBhbgoraW5zdGFuY2Ugb2YgOmM6ZGF0YTpgUHlEYXRlVGltZV9EZWx0YWAsIGluY2x1ZGluZyBzdWJjbGFzc2VzLiBUaGUgYXJndW1lbnQgbXVzdAorbm90IGJlICpOVUxMKiwgYW5kIHRoZSB0eXBlIGlzIG5vdCBjaGVja2VkOgorCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5RGF0ZVRpbWVfREVMVEFfR0VUX0RBWVMoUHlEYXRlVGltZV9EZWx0YSAqbykKKworICAgUmV0dXJuIHRoZSBudW1iZXIgb2YgZGF5cywgYXMgYW4gaW50IGZyb20gLTk5OTk5OTk5OSB0byA5OTk5OTk5OTkuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBpbnQgUHlEYXRlVGltZV9ERUxUQV9HRVRfU0VDT05EUyhQeURhdGVUaW1lX0RlbHRhICpvKQorCisgICBSZXR1cm4gdGhlIG51bWJlciBvZiBzZWNvbmRzLCBhcyBhbiBpbnQgZnJvbSAwIHRocm91Z2ggODYzOTkuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBpbnQgUHlEYXRlVGltZV9ERUxUQV9HRVRfTUlDUk9TRUNPTkQoUHlEYXRlVGltZV9EZWx0YSAqbykKKworICAgUmV0dXJuIHRoZSBudW1iZXIgb2YgbWljcm9zZWNvbmRzLCBhcyBhbiBpbnQgZnJvbSAwIHRocm91Z2ggOTk5OTk5LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiBNYWNyb3MgZm9yIHRoZSBjb252ZW5pZW5jZSBvZiBtb2R1bGVzIGltcGxlbWVudGluZyB0aGUgREIgQVBJOgogCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5RGF0ZVRpbWVfRnJvbVRpbWVzdGFtcChQeU9iamVjdCAqYXJncykKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9kaWN0LnJzdCBiL0RvYy9jLWFwaS9kaWN0LnJzdAppbmRleCA2ZGY4NGUwLi5hYzcxNGE2IDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvZGljdC5yc3QKKysrIGIvRG9jL2MtYXBpL2RpY3QucnN0CkBAIC0yMDksMyArMjA5LDEwIEBACiAgICAgICAgICAgZm9yIGtleSwgdmFsdWUgaW4gc2VxMjoKICAgICAgICAgICAgICAgaWYgb3ZlcnJpZGUgb3Iga2V5IG5vdCBpbiBhOgogICAgICAgICAgICAgICAgICAgYVtrZXldID0gdmFsdWUKKworCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5RGljdF9DbGVhckZyZWVMaXN0KCkKKworICAgQ2xlYXIgdGhlIGZyZWUgbGlzdC4gUmV0dXJuIHRoZSB0b3RhbCBudW1iZXIgb2YgZnJlZWQgaXRlbXMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwpkaWZmIC0tZ2l0IGEvRG9jL2MtYXBpL2V4Y2VwdGlvbnMucnN0IGIvRG9jL2MtYXBpL2V4Y2VwdGlvbnMucnN0CmluZGV4IDZmMTNjODAuLmM3MjUyZWQgMTAwNjQ0Ci0tLSBhL0RvYy9jLWFwaS9leGNlcHRpb25zLnJzdAorKysgYi9Eb2MvYy1hcGkvZXhjZXB0aW9ucy5yc3QKQEAgLTUyNSw3ICs1MjUsNyBAQAogCiAgICBNYXJrcyBhIHBvaW50IHdoZXJlIGEgcmVjdXJzaXZlIEMtbGV2ZWwgY2FsbCBpcyBhYm91dCB0byBiZSBwZXJmb3JtZWQuCiAKLSAgIElmIDpjb25zdDpgVVNFX1NUQUNLQ0hFQ0tgIGlzIGRlZmluZWQsIHRoaXMgZnVuY3Rpb24gY2hlY2tzIGlmIHRoZSB0aGUgT1MKKyAgIElmIDpjb25zdDpgVVNFX1NUQUNLQ0hFQ0tgIGlzIGRlZmluZWQsIHRoaXMgZnVuY3Rpb24gY2hlY2tzIGlmIHRoZSBPUwogICAgc3RhY2sgb3ZlcmZsb3dlZCB1c2luZyA6YzpmdW5jOmBQeU9TX0NoZWNrU3RhY2tgLiAgSW4gdGhpcyBpcyB0aGUgY2FzZSwgaXQKICAgIHNldHMgYSA6ZXhjOmBNZW1vcnlFcnJvcmAgYW5kIHJldHVybnMgYSBub256ZXJvIHZhbHVlLgogCkBAIC01ODIsNjUgKzU4MiwxMTYgQEAKIDpjOnR5cGU6YFB5T2JqZWN0XCpgOyB0aGV5IGFyZSBhbGwgY2xhc3Mgb2JqZWN0cy4gIEZvciBjb21wbGV0ZW5lc3MsIGhlcmUgYXJlIGFsbAogdGhlIHZhcmlhYmxlczoKIAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCBDIE5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFB5dGhvbiBOYW1lICAgICAgICAgICAgICAgIHwgTm90ZXMgICAgfAotKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09KwotfCA6YzpkYXRhOmBQeUV4Y19CYXNlRXhjZXB0aW9uYCAgICAgICB8IDpleGM6YEJhc2VFeGNlcHRpb25gICAgICAgIHwgXCgxKSAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19FeGNlcHRpb25gICAgICAgICAgICB8IDpleGM6YEV4Y2VwdGlvbmAgICAgICAgICAgIHwgXCgxKSAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19Bcml0aG1ldGljRXJyb3JgICAgICB8IDpleGM6YEFyaXRobWV0aWNFcnJvcmAgICAgIHwgXCgxKSAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19Mb29rdXBFcnJvcmAgICAgICAgICB8IDpleGM6YExvb2t1cEVycm9yYCAgICAgICAgIHwgXCgxKSAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19Bc3NlcnRpb25FcnJvcmAgICAgICB8IDpleGM6YEFzc2VydGlvbkVycm9yYCAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19BdHRyaWJ1dGVFcnJvcmAgICAgICB8IDpleGM6YEF0dHJpYnV0ZUVycm9yYCAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19FT0ZFcnJvcmAgICAgICAgICAgICB8IDpleGM6YEVPRkVycm9yYCAgICAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19FbnZpcm9ubWVudEVycm9yYCAgICB8IDpleGM6YEVudmlyb25tZW50RXJyb3JgICAgIHwgXCgxKSAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19GbG9hdGluZ1BvaW50RXJyb3JgICB8IDpleGM6YEZsb2F0aW5nUG9pbnRFcnJvcmAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19JT0Vycm9yYCAgICAgICAgICAgICB8IDpleGM6YElPRXJyb3JgICAgICAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19JbXBvcnRFcnJvcmAgICAgICAgICB8IDpleGM6YEltcG9ydEVycm9yYCAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19JbmRleEVycm9yYCAgICAgICAgICB8IDpleGM6YEluZGV4RXJyb3JgICAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19LZXlFcnJvcmAgICAgICAgICAgICB8IDpleGM6YEtleUVycm9yYCAgICAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19LZXlib2FyZEludGVycnVwdGAgICB8IDpleGM6YEtleWJvYXJkSW50ZXJydXB0YCAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19NZW1vcnlFcnJvcmAgICAgICAgICB8IDpleGM6YE1lbW9yeUVycm9yYCAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19OYW1lRXJyb3JgICAgICAgICAgICB8IDpleGM6YE5hbWVFcnJvcmAgICAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yYCB8IDpleGM6YE5vdEltcGxlbWVudGVkRXJyb3JgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19PU0Vycm9yYCAgICAgICAgICAgICB8IDpleGM6YE9TRXJyb3JgICAgICAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19PdmVyZmxvd0Vycm9yYCAgICAgICB8IDpleGM6YE92ZXJmbG93RXJyb3JgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19SZWZlcmVuY2VFcnJvcmAgICAgICB8IDpleGM6YFJlZmVyZW5jZUVycm9yYCAgICAgIHwgXCgyKSAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19SdW50aW1lRXJyb3JgICAgICAgICB8IDpleGM6YFJ1bnRpbWVFcnJvcmAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19TeW50YXhFcnJvcmAgICAgICAgICB8IDpleGM6YFN5bnRheEVycm9yYCAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19TeXN0ZW1FcnJvcmAgICAgICAgICB8IDpleGM6YFN5c3RlbUVycm9yYCAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19TeXN0ZW1FeGl0YCAgICAgICAgICB8IDpleGM6YFN5c3RlbUV4aXRgICAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19UeXBlRXJyb3JgICAgICAgICAgICB8IDpleGM6YFR5cGVFcnJvcmAgICAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19WYWx1ZUVycm9yYCAgICAgICAgICB8IDpleGM6YFZhbHVlRXJyb3JgICAgICAgICAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19XaW5kb3dzRXJyb3JgICAgICAgICB8IDpleGM6YFdpbmRvd3NFcnJvcmAgICAgICAgIHwgXCgzKSAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKwotfCA6YzpkYXRhOmBQeUV4Y19aZXJvRGl2aXNpb25FcnJvcmAgICB8IDpleGM6YFplcm9EaXZpc2lvbkVycm9yYCAgIHwgICAgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCBDIE5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBQeXRob24gTmFtZSAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgICAgfAorKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09KworfCA6YzpkYXRhOmBQeUV4Y19CYXNlRXhjZXB0aW9uYCAgICAgICAgICAgfCA6ZXhjOmBCYXNlRXhjZXB0aW9uYCAgICAgICAgICAgIHwgXCgxKSAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19FeGNlcHRpb25gICAgICAgICAgICAgICAgfCA6ZXhjOmBFeGNlcHRpb25gICAgICAgICAgICAgICAgIHwgXCgxKSAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Bcml0aG1ldGljRXJyb3JgICAgICAgICAgfCA6ZXhjOmBBcml0aG1ldGljRXJyb3JgICAgICAgICAgIHwgXCgxKSAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Mb29rdXBFcnJvcmAgICAgICAgICAgICAgfCA6ZXhjOmBMb29rdXBFcnJvcmAgICAgICAgICAgICAgIHwgXCgxKSAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Bc3NlcnRpb25FcnJvcmAgICAgICAgICAgfCA6ZXhjOmBBc3NlcnRpb25FcnJvcmAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19BdHRyaWJ1dGVFcnJvcmAgICAgICAgICAgfCA6ZXhjOmBBdHRyaWJ1dGVFcnJvcmAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19CbG9ja2luZ0lPRXJyb3JgICAgICAgICAgfCA6ZXhjOmBCbG9ja2luZ0lPRXJyb3JgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Ccm9rZW5QaXBlRXJyb3JgICAgICAgICAgfCA6ZXhjOmBCcm9rZW5QaXBlRXJyb3JgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19DaGlsZFByb2Nlc3NFcnJvcmAgICAgICAgfCA6ZXhjOmBDaGlsZFByb2Nlc3NFcnJvcmAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Db25uZWN0aW9uRXJyb3JgICAgICAgICAgfCA6ZXhjOmBDb25uZWN0aW9uRXJyb3JgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Db25uZWN0aW9uQWJvcnRlZEVycm9yYCAgfCA6ZXhjOmBDb25uZWN0aW9uQWJvcnRlZEVycm9yYCAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Db25uZWN0aW9uUmVmdXNlZEVycm9yYCAgfCA6ZXhjOmBDb25uZWN0aW9uUmVmdXNlZEVycm9yYCAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Db25uZWN0aW9uUmVzZXRFcnJvcmAgICAgfCA6ZXhjOmBDb25uZWN0aW9uUmVzZXRFcnJvcmAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19GaWxlRXhpc3RzRXJyb3JgICAgICAgICAgfCA6ZXhjOmBGaWxlRXhpc3RzRXJyb3JgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19GaWxlTm90Rm91bmRFcnJvcmAgICAgICAgfCA6ZXhjOmBGaWxlTm90Rm91bmRFcnJvcmAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19FT0ZFcnJvcmAgICAgICAgICAgICAgICAgfCA6ZXhjOmBFT0ZFcnJvcmAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19GbG9hdGluZ1BvaW50RXJyb3JgICAgICAgfCA6ZXhjOmBGbG9hdGluZ1BvaW50RXJyb3JgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19JbXBvcnRFcnJvcmAgICAgICAgICAgICAgfCA6ZXhjOmBJbXBvcnRFcnJvcmAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19JbmRleEVycm9yYCAgICAgICAgICAgICAgfCA6ZXhjOmBJbmRleEVycm9yYCAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19JbnRlcnJ1cHRlZEVycm9yYCAgICAgICAgfCA6ZXhjOmBJbnRlcnJ1cHRlZEVycm9yYCAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Jc0FEaXJlY3RvcnlFcnJvcmAgICAgICAgfCA6ZXhjOmBJc0FEaXJlY3RvcnlFcnJvcmAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19LZXlFcnJvcmAgICAgICAgICAgICAgICAgfCA6ZXhjOmBLZXlFcnJvcmAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19LZXlib2FyZEludGVycnVwdGAgICAgICAgfCA6ZXhjOmBLZXlib2FyZEludGVycnVwdGAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19NZW1vcnlFcnJvcmAgICAgICAgICAgICAgfCA6ZXhjOmBNZW1vcnlFcnJvcmAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19OYW1lRXJyb3JgICAgICAgICAgICAgICAgfCA6ZXhjOmBOYW1lRXJyb3JgICAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Ob3RBRGlyZWN0b3J5RXJyb3JgICAgICAgfCA6ZXhjOmBOb3RBRGlyZWN0b3J5RXJyb3JgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yYCAgICAgfCA6ZXhjOmBOb3RJbXBsZW1lbnRlZEVycm9yYCAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19PU0Vycm9yYCAgICAgICAgICAgICAgICAgfCA6ZXhjOmBPU0Vycm9yYCAgICAgICAgICAgICAgICAgIHwgXCgxKSAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19PdmVyZmxvd0Vycm9yYCAgICAgICAgICAgfCA6ZXhjOmBPdmVyZmxvd0Vycm9yYCAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19QZXJtaXNzaW9uRXJyb3JgICAgICAgICAgfCA6ZXhjOmBQZXJtaXNzaW9uRXJyb3JgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19Qcm9jZXNzTG9va3VwRXJyb3JgICAgICAgfCA6ZXhjOmBQcm9jZXNzTG9va3VwRXJyb3JgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19SZWZlcmVuY2VFcnJvcmAgICAgICAgICAgfCA6ZXhjOmBSZWZlcmVuY2VFcnJvcmAgICAgICAgICAgIHwgXCgyKSAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19SdW50aW1lRXJyb3JgICAgICAgICAgICAgfCA6ZXhjOmBSdW50aW1lRXJyb3JgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19TeW50YXhFcnJvcmAgICAgICAgICAgICAgfCA6ZXhjOmBTeW50YXhFcnJvcmAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19TeXN0ZW1FcnJvcmAgICAgICAgICAgICAgfCA6ZXhjOmBTeXN0ZW1FcnJvcmAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19UaW1lb3V0RXJyb3JgICAgICAgICAgICAgfCA6ZXhjOmBUaW1lb3V0RXJyb3JgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19TeXN0ZW1FeGl0YCAgICAgICAgICAgICAgfCA6ZXhjOmBTeXN0ZW1FeGl0YCAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19UeXBlRXJyb3JgICAgICAgICAgICAgICAgfCA6ZXhjOmBUeXBlRXJyb3JgICAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19WYWx1ZUVycm9yYCAgICAgICAgICAgICAgfCA6ZXhjOmBWYWx1ZUVycm9yYCAgICAgICAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19aZXJvRGl2aXNpb25FcnJvcmAgICAgICAgfCA6ZXhjOmBaZXJvRGl2aXNpb25FcnJvcmAgICAgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgIDpjOmRhdGE6YFB5RXhjX0Jsb2NraW5nSU9FcnJvcmAsIDpjOmRhdGE6YFB5RXhjX0Jyb2tlblBpcGVFcnJvcmAsCisgICA6YzpkYXRhOmBQeUV4Y19DaGlsZFByb2Nlc3NFcnJvcmAsIDpjOmRhdGE6YFB5RXhjX0Nvbm5lY3Rpb25FcnJvcmAsCisgICA6YzpkYXRhOmBQeUV4Y19Db25uZWN0aW9uQWJvcnRlZEVycm9yYCwgOmM6ZGF0YTpgUHlFeGNfQ29ubmVjdGlvblJlZnVzZWRFcnJvcmAsCisgICA6YzpkYXRhOmBQeUV4Y19Db25uZWN0aW9uUmVzZXRFcnJvcmAsIDpjOmRhdGE6YFB5RXhjX0ZpbGVFeGlzdHNFcnJvcmAsCisgICA6YzpkYXRhOmBQeUV4Y19GaWxlTm90Rm91bmRFcnJvcmAsIDpjOmRhdGE6YFB5RXhjX0ludGVycnVwdGVkRXJyb3JgLAorICAgOmM6ZGF0YTpgUHlFeGNfSXNBRGlyZWN0b3J5RXJyb3JgLCA6YzpkYXRhOmBQeUV4Y19Ob3RBRGlyZWN0b3J5RXJyb3JgLAorICAgOmM6ZGF0YTpgUHlFeGNfUGVybWlzc2lvbkVycm9yYCwgOmM6ZGF0YTpgUHlFeGNfUHJvY2Vzc0xvb2t1cEVycm9yYAorICAgYW5kIDpjOmRhdGE6YFB5RXhjX1RpbWVvdXRFcnJvcmAgd2VyZSBpbnRyb2R1Y2VkIGZvbGxvd2luZyA6cGVwOmAzMTUxYC4KKworCitUaGVzZSBhcmUgY29tcGF0aWJpbGl0eSBhbGlhc2VzIHRvIDpjOmRhdGE6YFB5RXhjX09TRXJyb3JgOgorCisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCBDIE5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzICAgIHwKKys9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT0rCit8IDpjOmRhdGE6YFB5RXhjX0Vudmlyb25tZW50RXJyb3JgICAgIHwgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSsKK3wgOmM6ZGF0YTpgUHlFeGNfSU9FcnJvcmAgICAgICAgICAgICAgfCAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tKworfCA6YzpkYXRhOmBQeUV4Y19XaW5kb3dzRXJyb3JgICAgICAgICB8IFwoMykgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rCisKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICBUaGVzZSBhbGlhc2VzIHVzZWQgdG8gYmUgc2VwYXJhdGUgZXhjZXB0aW9uIHR5cGVzLgorCiAKIC4uIGluZGV4OjoKICAgIHNpbmdsZTogUHlFeGNfQmFzZUV4Y2VwdGlvbgpAQCAtNjQ5LDI4ICs3MDAsNDIgQEAKICAgIHNpbmdsZTogUHlFeGNfTG9va3VwRXJyb3IKICAgIHNpbmdsZTogUHlFeGNfQXNzZXJ0aW9uRXJyb3IKICAgIHNpbmdsZTogUHlFeGNfQXR0cmlidXRlRXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfQmxvY2tpbmdJT0Vycm9yCisgICBzaW5nbGU6IFB5RXhjX0Jyb2tlblBpcGVFcnJvcgorICAgc2luZ2xlOiBQeUV4Y19Db25uZWN0aW9uRXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfQ29ubmVjdGlvbkFib3J0ZWRFcnJvcgorICAgc2luZ2xlOiBQeUV4Y19Db25uZWN0aW9uUmVmdXNlZEVycm9yCisgICBzaW5nbGU6IFB5RXhjX0Nvbm5lY3Rpb25SZXNldEVycm9yCiAgICBzaW5nbGU6IFB5RXhjX0VPRkVycm9yCi0gICBzaW5nbGU6IFB5RXhjX0Vudmlyb25tZW50RXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfRmlsZUV4aXN0c0Vycm9yCisgICBzaW5nbGU6IFB5RXhjX0ZpbGVOb3RGb3VuZEVycm9yCiAgICBzaW5nbGU6IFB5RXhjX0Zsb2F0aW5nUG9pbnRFcnJvcgotICAgc2luZ2xlOiBQeUV4Y19JT0Vycm9yCiAgICBzaW5nbGU6IFB5RXhjX0ltcG9ydEVycm9yCiAgICBzaW5nbGU6IFB5RXhjX0luZGV4RXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfSW50ZXJydXB0ZWRFcnJvcgorICAgc2luZ2xlOiBQeUV4Y19Jc0FEaXJlY3RvcnlFcnJvcgogICAgc2luZ2xlOiBQeUV4Y19LZXlFcnJvcgogICAgc2luZ2xlOiBQeUV4Y19LZXlib2FyZEludGVycnVwdAogICAgc2luZ2xlOiBQeUV4Y19NZW1vcnlFcnJvcgogICAgc2luZ2xlOiBQeUV4Y19OYW1lRXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfTm90QURpcmVjdG9yeUVycm9yCiAgICBzaW5nbGU6IFB5RXhjX05vdEltcGxlbWVudGVkRXJyb3IKICAgIHNpbmdsZTogUHlFeGNfT1NFcnJvcgogICAgc2luZ2xlOiBQeUV4Y19PdmVyZmxvd0Vycm9yCisgICBzaW5nbGU6IFB5RXhjX1Blcm1pc3Npb25FcnJvcgorICAgc2luZ2xlOiBQeUV4Y19Qcm9jZXNzTG9va3VwRXJyb3IKICAgIHNpbmdsZTogUHlFeGNfUmVmZXJlbmNlRXJyb3IKICAgIHNpbmdsZTogUHlFeGNfUnVudGltZUVycm9yCiAgICBzaW5nbGU6IFB5RXhjX1N5bnRheEVycm9yCiAgICBzaW5nbGU6IFB5RXhjX1N5c3RlbUVycm9yCiAgICBzaW5nbGU6IFB5RXhjX1N5c3RlbUV4aXQKKyAgIHNpbmdsZTogUHlFeGNfVGltZW91dEVycm9yCiAgICBzaW5nbGU6IFB5RXhjX1R5cGVFcnJvcgogICAgc2luZ2xlOiBQeUV4Y19WYWx1ZUVycm9yCi0gICBzaW5nbGU6IFB5RXhjX1dpbmRvd3NFcnJvcgogICAgc2luZ2xlOiBQeUV4Y19aZXJvRGl2aXNpb25FcnJvcgorICAgc2luZ2xlOiBQeUV4Y19FbnZpcm9ubWVudEVycm9yCisgICBzaW5nbGU6IFB5RXhjX0lPRXJyb3IKKyAgIHNpbmdsZTogUHlFeGNfV2luZG93c0Vycm9yCiAKIE5vdGVzOgogCmRpZmYgLS1naXQgYS9Eb2MvYy1hcGkvZnVuY3Rpb24ucnN0IGIvRG9jL2MtYXBpL2Z1bmN0aW9uLnJzdAppbmRleCAzMTgwNWZkLi5hZDk4MzIyIDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvZnVuY3Rpb24ucnN0CisrKyBiL0RvYy9jLWFwaS9mdW5jdGlvbi5yc3QKQEAgLTM4LDYgKzM4LDE2IEBACiAgICBvYmplY3QsIHRoZSBhcmd1bWVudCBkZWZhdWx0cyBhbmQgY2xvc3VyZSBhcmUgc2V0IHRvICpOVUxMKi4KIAogCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5RnVuY3Rpb25fTmV3V2l0aFF1YWxOYW1lKFB5T2JqZWN0ICpjb2RlLCBQeU9iamVjdCAqZ2xvYmFscywgUHlPYmplY3QgKnF1YWxuYW1lKQorCisgICBBcyA6YzpmdW5jOmBQeUZ1bmN0aW9uX05ld2AsIGJ1dCBhbHNvIGFsbG93cyB0byBzZXQgdGhlIGZ1bmN0aW9uIG9iamVjdCdzCisgICBgYF9fcXVhbG5hbWVfX2BgIGF0dHJpYnV0ZS4gICpxdWFsbmFtZSogc2hvdWxkIGJlIGEgdW5pY29kZSBvYmplY3Qgb3IgTlVMTDsKKyAgIGlmIE5VTEwsIHRoZSBgYF9fcXVhbG5hbWVfX2BgIGF0dHJpYnV0ZSBpcyBzZXQgdG8gdGhlIHNhbWUgdmFsdWUgYXMgaXRzCisgICBgYF9fbmFtZV9fYGAgYXR0cmlidXRlLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5RnVuY3Rpb25fR2V0Q29kZShQeU9iamVjdCAqb3ApCiAKICAgIFJldHVybiB0aGUgY29kZSBvYmplY3QgYXNzb2NpYXRlZCB3aXRoIHRoZSBmdW5jdGlvbiBvYmplY3QgKm9wKi4KZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9pbXBvcnQucnN0IGIvRG9jL2MtYXBpL2ltcG9ydC5yc3QKaW5kZXggY2Y0ODM2My4uYjE2ODc1MSAxMDA2NDQKLS0tIGEvRG9jL2MtYXBpL2ltcG9ydC5yc3QKKysrIGIvRG9jL2MtYXBpL2ltcG9ydC5yc3QKQEAgLTU3LDcgKzU3LDcgQEAKICAgIDpjOmZ1bmM6YFB5SW1wb3J0X0ltcG9ydE1vZHVsZWAuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbChjaGFyICpuYW1lLCBQeU9iamVjdCAqZ2xvYmFscywgUHlPYmplY3QgKmxvY2FscywgUHlPYmplY3QgKmZyb21saXN0LCBpbnQgbGV2ZWwpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5SW1wb3J0X0ltcG9ydE1vZHVsZUxldmVsT2JqZWN0KFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqZ2xvYmFscywgUHlPYmplY3QgKmxvY2FscywgUHlPYmplY3QgKmZyb21saXN0LCBpbnQgbGV2ZWwpCiAKICAgIEltcG9ydCBhIG1vZHVsZS4gIFRoaXMgaXMgYmVzdCBkZXNjcmliZWQgYnkgcmVmZXJyaW5nIHRvIHRoZSBidWlsdC1pbiBQeXRob24KICAgIGZ1bmN0aW9uIDpmdW5jOmBfX2ltcG9ydF9fYCwgYXMgdGhlIHN0YW5kYXJkIDpmdW5jOmBfX2ltcG9ydF9fYCBmdW5jdGlvbiBjYWxscwpAQCAtNjgsNiArNjgsMTMgQEAKICAgIHRoZSByZXR1cm4gdmFsdWUgd2hlbiBhIHN1Ym1vZHVsZSBvZiBhIHBhY2thZ2Ugd2FzIHJlcXVlc3RlZCBpcyBub3JtYWxseSB0aGUKICAgIHRvcC1sZXZlbCBwYWNrYWdlLCB1bmxlc3MgYSBub24tZW1wdHkgKmZyb21saXN0KiB3YXMgZ2l2ZW4uCiAKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWwoY2hhciAqbmFtZSwgUHlPYmplY3QgKmdsb2JhbHMsIFB5T2JqZWN0ICpsb2NhbHMsIFB5T2JqZWN0ICpmcm9tbGlzdCwgaW50IGxldmVsKQorCisgICBTaW1pbGFyIHRvIDpjOmZ1bmM6YFB5SW1wb3J0X0ltcG9ydE1vZHVsZUxldmVsT2JqZWN0YCwgYnV0IHRoZSBuYW1lIGlzIGFuCisgICBVVEYtOCBlbmNvZGVkIHN0cmluZyBpbnN0ZWFkIG9mIGEgVW5pY29kZSBvYmplY3QuCiAKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlJbXBvcnRfSW1wb3J0KFB5T2JqZWN0ICpuYW1lKQogCkBAIC04Niw3ICs5Myw3IEBACiAgICBhbiBleGNlcHRpb24gc2V0IG9uIGZhaWx1cmUgKHRoZSBtb2R1bGUgc3RpbGwgZXhpc3RzIGluIHRoaXMgY2FzZSkuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUltcG9ydF9BZGRNb2R1bGUoY29uc3QgY2hhciAqbmFtZSkKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlJbXBvcnRfQWRkTW9kdWxlT2JqZWN0KFB5T2JqZWN0ICpuYW1lKQogCiAgICBSZXR1cm4gdGhlIG1vZHVsZSBvYmplY3QgY29ycmVzcG9uZGluZyB0byBhIG1vZHVsZSBuYW1lLiAgVGhlICpuYW1lKiBhcmd1bWVudAogICAgbWF5IGJlIG9mIHRoZSBmb3JtIGBgcGFja2FnZS5tb2R1bGVgYC4gRmlyc3QgY2hlY2sgdGhlIG1vZHVsZXMgZGljdGlvbmFyeSBpZgpAQCAtMTAwLDYgKzEwNywxNCBAQAogICAgICAgb3Igb25lIG9mIGl0cyB2YXJpYW50cyB0byBpbXBvcnQgYSBtb2R1bGUuICBQYWNrYWdlIHN0cnVjdHVyZXMgaW1wbGllZCBieSBhCiAgICAgICBkb3R0ZWQgbmFtZSBmb3IgKm5hbWUqIGFyZSBub3QgY3JlYXRlZCBpZiBub3QgYWxyZWFkeSBwcmVzZW50LgogCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5SW1wb3J0X0FkZE1vZHVsZShjb25zdCBjaGFyICpuYW1lKQorCisgICBTaW1pbGFyIHRvIDpjOmZ1bmM6YFB5SW1wb3J0X0FkZE1vZHVsZU9iamVjdGAsIGJ1dCB0aGUgbmFtZSBpcyBhIFVURi04CisgICBlbmNvZGVkIHN0cmluZyBpbnN0ZWFkIG9mIGEgVW5pY29kZSBvYmplY3QuCisKIAogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZShjaGFyICpuYW1lLCBQeU9iamVjdCAqY28pCiAKQEAgLTEzNiwxNCArMTUxLDIzIEBACiAgICBTZWUgYWxzbyA6YzpmdW5jOmBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZVdpdGhQYXRobmFtZXNgLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVXaXRoUGF0aG5hbWVzKGNoYXIgKm5hbWUsIFB5T2JqZWN0ICpjbywgY2hhciAqcGF0aG5hbWUsIGNoYXIgKmNwYXRobmFtZSkKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVPYmplY3QoUHlPYmplY3QgKm5hbWUsIFB5T2JqZWN0ICpjbywgUHlPYmplY3QgKnBhdGhuYW1lLCBQeU9iamVjdCAqY3BhdGhuYW1lKQogCiAgICBMaWtlIDpjOmZ1bmM6YFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlRXhgLCBidXQgdGhlIDphdHRyOmBfX2NhY2hlZF9fYAogICAgYXR0cmlidXRlIG9mIHRoZSBtb2R1bGUgb2JqZWN0IGlzIHNldCB0byAqY3BhdGhuYW1lKiBpZiBpdCBpcwogICAgbm9uLWBgTlVMTGBgLiAgT2YgdGhlIHRocmVlIGZ1bmN0aW9ucywgdGhpcyBpcyB0aGUgcHJlZmVycmVkIG9uZSB0byB1c2UuCiAKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVXaXRoUGF0aG5hbWVzKGNoYXIgKm5hbWUsIFB5T2JqZWN0ICpjbywgY2hhciAqcGF0aG5hbWUsIGNoYXIgKmNwYXRobmFtZSkKKworICAgTGlrZSA6YzpmdW5jOmBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZU9iamVjdGAsIGJ1dCAqbmFtZSosICpwYXRobmFtZSogYW5kCisgICAqY3BhdGhuYW1lKiBhcmUgVVRGLTggZW5jb2RlZCBzdHJpbmdzLgorCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAorCiAuLiBjOmZ1bmN0aW9uOjogbG9uZyBQeUltcG9ydF9HZXRNYWdpY051bWJlcigpCiAKICAgIFJldHVybiB0aGUgbWFnaWMgbnVtYmVyIGZvciBQeXRob24gYnl0ZWNvZGUgZmlsZXMgKGEuay5hLiA6ZmlsZTpgLnB5Y2AgYW5kCkBAIC0yMDAsNyArMjI0LDcgQEAKICAgIEZvciBpbnRlcm5hbCB1c2Ugb25seS4KIAogCi0uLiBjOmZ1bmN0aW9uOjogaW50IFB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZShjaGFyICpuYW1lKQorLi4gYzpmdW5jdGlvbjo6IGludCBQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGVPYmplY3QoUHlPYmplY3QgKm5hbWUpCiAKICAgIExvYWQgYSBmcm96ZW4gbW9kdWxlIG5hbWVkICpuYW1lKi4gIFJldHVybiBgYDFgYCBmb3Igc3VjY2VzcywgYGAwYGAgaWYgdGhlCiAgICBtb2R1bGUgaXMgbm90IGZvdW5kLCBhbmQgYGAtMWBgIHdpdGggYW4gZXhjZXB0aW9uIHNldCBpZiB0aGUgaW5pdGlhbGl6YXRpb24KQEAgLTIwOCw2ICsyMzIsMTQgQEAKICAgIDpjOmZ1bmM6YFB5SW1wb3J0X0ltcG9ydE1vZHVsZWAuICAoTm90ZSB0aGUgbWlzbm9tZXIgLS0tIHRoaXMgZnVuY3Rpb24gd291bGQKICAgIHJlbG9hZCB0aGUgbW9kdWxlIGlmIGl0IHdhcyBhbHJlYWR5IGltcG9ydGVkLikKIAorICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IGludCBQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGUoY2hhciAqbmFtZSkKKworICAgU2ltaWxhciB0byA6YzpmdW5jOmBQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGVPYmplY3RgLCBidXQgdGhlIG5hbWUgaXMgYQorICAgVVRGLTggZW5jb2RlZCBzdHJpbmcgaW5zdGVhZCBvZiBhIFVuaWNvZGUgb2JqZWN0LgorCiAKIC4uIGM6dHlwZTo6IHN0cnVjdCBfZnJvemVuCiAKQEAgLTI0NywxMyArMjc5LDEzIEBACiAKICAgIFN0cnVjdHVyZSBkZXNjcmliaW5nIGEgc2luZ2xlIGVudHJ5IGluIHRoZSBsaXN0IG9mIGJ1aWx0LWluIG1vZHVsZXMuICBFYWNoIG9mCiAgICB0aGVzZSBzdHJ1Y3R1cmVzIGdpdmVzIHRoZSBuYW1lIGFuZCBpbml0aWFsaXphdGlvbiBmdW5jdGlvbiBmb3IgYSBtb2R1bGUgYnVpbHQKLSAgIGludG8gdGhlIGludGVycHJldGVyLiAgUHJvZ3JhbXMgd2hpY2ggZW1iZWQgUHl0aG9uIG1heSB1c2UgYW4gYXJyYXkgb2YgdGhlc2UKLSAgIHN0cnVjdHVyZXMgaW4gY29uanVuY3Rpb24gd2l0aCA6YzpmdW5jOmBQeUltcG9ydF9FeHRlbmRJbml0dGFiYCB0byBwcm92aWRlCi0gICBhZGRpdGlvbmFsIGJ1aWx0LWluIG1vZHVsZXMuICBUaGUgc3RydWN0dXJlIGlzIGRlZmluZWQgaW4KLSAgIDpmaWxlOmBJbmNsdWRlL2ltcG9ydC5oYCBhczo6CisgICBpbnRvIHRoZSBpbnRlcnByZXRlci4gIFRoZSBuYW1lIGlzIGFuIEFTQ0lJIGVuY29kZWQgc3RyaW5nLiAgUHJvZ3JhbXMgd2hpY2gKKyAgIGVtYmVkIFB5dGhvbiBtYXkgdXNlIGFuIGFycmF5IG9mIHRoZXNlIHN0cnVjdHVyZXMgaW4gY29uanVuY3Rpb24gd2l0aAorICAgOmM6ZnVuYzpgUHlJbXBvcnRfRXh0ZW5kSW5pdHRhYmAgdG8gcHJvdmlkZSBhZGRpdGlvbmFsIGJ1aWx0LWluIG1vZHVsZXMuCisgICBUaGUgc3RydWN0dXJlIGlzIGRlZmluZWQgaW4gOmZpbGU6YEluY2x1ZGUvaW1wb3J0LmhgIGFzOjoKIAogICAgICAgc3RydWN0IF9pbml0dGFiIHsKLSAgICAgICAgICBjaGFyICpuYW1lOworICAgICAgICAgIGNoYXIgKm5hbWU7ICAgICAgICAgICAgICAgICAvKiBBU0NJSSBlbmNvZGVkIHN0cmluZyAqLwogICAgICAgICAgIFB5T2JqZWN0KiAoKmluaXRmdW5jKSh2b2lkKTsKICAgICAgIH07CiAKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9saXN0LnJzdCBiL0RvYy9jLWFwaS9saXN0LnJzdAppbmRleCBmZWI5MDE1Li41YjI2M2E3IDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvbGlzdC5yc3QKKysrIGIvRG9jL2MtYXBpL2xpc3QucnN0CkBAIC0xNDIsMyArMTQyLDEwIEBACiAKICAgIFJldHVybiBhIG5ldyB0dXBsZSBvYmplY3QgY29udGFpbmluZyB0aGUgY29udGVudHMgb2YgKmxpc3QqOyBlcXVpdmFsZW50IHRvCiAgICBgYHR1cGxlKGxpc3QpYGAuCisKKworLi4gYzpmdW5jdGlvbjo6IGludCBQeUxpc3RfQ2xlYXJGcmVlTGlzdCgpCisKKyAgIENsZWFyIHRoZSBmcmVlIGxpc3QuIFJldHVybiB0aGUgdG90YWwgbnVtYmVyIG9mIGZyZWVkIGl0ZW1zLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9sb25nLnJzdCBiL0RvYy9jLWFwaS9sb25nLnJzdAppbmRleCBiMjI5NWUwLi40YzI5NWZhIDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvbG9uZy5yc3QKKysrIGIvRG9jL2MtYXBpL2xvbmcucnN0CkBAIC0xMDAsNiArMTAwLDIwIEBACiAgICBzdHJpbmcgaXMgZmlyc3QgZW5jb2RlZCB0byBhIGJ5dGUgc3RyaW5nIHVzaW5nIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVEZWNpbWFsYAogICAgYW5kIHRoZW4gY29udmVydGVkIHVzaW5nIDpjOmZ1bmM6YFB5TG9uZ19Gcm9tU3RyaW5nYC4KIAorICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIDpjOnR5cGU6YFB5X1VOSUNPREVgIEFQSTsgcGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcKKyAgICAgIDpjOmZ1bmM6YFB5TG9uZ19Gcm9tVW5pY29kZU9iamVjdGAuCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeUxvbmdfRnJvbVVuaWNvZGVPYmplY3QoUHlPYmplY3QgKnUsIGludCBiYXNlKQorCisgICBDb252ZXJ0IGEgc2VxdWVuY2Ugb2YgVW5pY29kZSBkaWdpdHMgaW4gdGhlIHN0cmluZyAqdSogdG8gYSBQeXRob24gaW50ZWdlcgorICAgdmFsdWUuICBUaGUgVW5pY29kZSBzdHJpbmcgaXMgZmlyc3QgZW5jb2RlZCB0byBhIGJ5dGUgc3RyaW5nIHVzaW5nCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfRW5jb2RlRGVjaW1hbGAgYW5kIHRoZW4gY29udmVydGVkIHVzaW5nCisgICA6YzpmdW5jOmBQeUxvbmdfRnJvbVN0cmluZ2AuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlMb25nX0Zyb21Wb2lkUHRyKHZvaWQgKnApCiAKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9tb2R1bGUucnN0IGIvRG9jL2MtYXBpL21vZHVsZS5yc3QKaW5kZXggZmZkNjhlMy4uMzI1ODdiZSAxMDA2NDQKLS0tIGEvRG9jL2MtYXBpL21vZHVsZS5yc3QKKysrIGIvRG9jL2MtYXBpL21vZHVsZS5yc3QKQEAgLTI5LDcgKzI5LDcgQEAKICAgIDpjOmRhdGE6YFB5TW9kdWxlX1R5cGVgLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlNb2R1bGVfTmV3KGNvbnN0IGNoYXIgKm5hbWUpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5TW9kdWxlX05ld09iamVjdChQeU9iamVjdCAqbmFtZSkKIAogICAgLi4gaW5kZXg6OgogICAgICAgc2luZ2xlOiBfX25hbWVfXyAobW9kdWxlIGF0dHJpYnV0ZSkKQEAgLTQwLDYgKzQwLDE0IEBACiAgICBPbmx5IHRoZSBtb2R1bGUncyA6YXR0cjpgX19kb2NfX2AgYW5kIDphdHRyOmBfX25hbWVfX2AgYXR0cmlidXRlcyBhcmUgZmlsbGVkIGluOwogICAgdGhlIGNhbGxlciBpcyByZXNwb25zaWJsZSBmb3IgcHJvdmlkaW5nIGEgOmF0dHI6YF9fZmlsZV9fYCBhdHRyaWJ1dGUuCiAKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlNb2R1bGVfTmV3KGNvbnN0IGNoYXIgKm5hbWUpCisKKyAgIFNpbWlsYXIgdG8gOmM6ZnVuYzpgUHlJbXBvcnRfTmV3T2JqZWN0YCwgYnV0IHRoZSBuYW1lIGlzIGFuIFVURi04IGVuY29kZWQKKyAgIHN0cmluZyBpbnN0ZWFkIG9mIGEgVW5pY29kZSBvYmplY3QuCisKIAogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeU1vZHVsZV9HZXREaWN0KFB5T2JqZWN0ICptb2R1bGUpCiAKQEAgLTUyLDcgKzYwLDcgQEAKICAgIG1hbmlwdWxhdGUgYSBtb2R1bGUncyA6YXR0cjpgX19kaWN0X19gLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBjaGFyKiBQeU1vZHVsZV9HZXROYW1lKFB5T2JqZWN0ICptb2R1bGUpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5TW9kdWxlX0dldE5hbWVPYmplY3QoUHlPYmplY3QgKm1vZHVsZSkKIAogICAgLi4gaW5kZXg6OgogICAgICAgc2luZ2xlOiBfX25hbWVfXyAobW9kdWxlIGF0dHJpYnV0ZSkKQEAgLTYxLDE1ICs2OSwxMyBAQAogICAgUmV0dXJuICptb2R1bGUqJ3MgOmF0dHI6YF9fbmFtZV9fYCB2YWx1ZS4gIElmIHRoZSBtb2R1bGUgZG9lcyBub3QgcHJvdmlkZSBvbmUsCiAgICBvciBpZiBpdCBpcyBub3QgYSBzdHJpbmcsIDpleGM6YFN5c3RlbUVycm9yYCBpcyByYWlzZWQgYW5kICpOVUxMKiBpcyByZXR1cm5lZC4KIAorICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCiAKLS4uIGM6ZnVuY3Rpb246OiBjaGFyKiBQeU1vZHVsZV9HZXRGaWxlbmFtZShQeU9iamVjdCAqbW9kdWxlKQogCi0gICBTaW1pbGFyIHRvIDpjOmZ1bmM6YFB5TW9kdWxlX0dldEZpbGVuYW1lT2JqZWN0YCBidXQgcmV0dXJuIHRoZSBmaWxlbmFtZQotICAgZW5jb2RlZCB0byAndXRmLTgnLgorLi4gYzpmdW5jdGlvbjo6IGNoYXIqIFB5TW9kdWxlX0dldE5hbWUoUHlPYmplY3QgKm1vZHVsZSkKIAotICAgLi4gZGVwcmVjYXRlZDo6IDMuMgotICAgICAgOmM6ZnVuYzpgUHlNb2R1bGVfR2V0RmlsZW5hbWVgIHJhaXNlcyA6Yzp0eXBlOmBVbmljb2RlRW5jb2RlRXJyb3JgIG9uCi0gICAgICB1bmVuY29kYWJsZSBmaWxlbmFtZXMsIHVzZSA6YzpmdW5jOmBQeU1vZHVsZV9HZXRGaWxlbmFtZU9iamVjdGAgaW5zdGVhZC4KKyAgIFNpbWlsYXIgdG8gOmM6ZnVuYzpgUHlNb2R1bGVfR2V0TmFtZU9iamVjdGAgYnV0IHJldHVybiB0aGUgbmFtZSBlbmNvZGVkIHRvCisgICBgYCd1dGYtOCdgYC4KIAogCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5TW9kdWxlX0dldEZpbGVuYW1lT2JqZWN0KFB5T2JqZWN0ICptb2R1bGUpCkBAIC04MSwxMSArODcsMjEgQEAKICAgIFJldHVybiB0aGUgbmFtZSBvZiB0aGUgZmlsZSBmcm9tIHdoaWNoICptb2R1bGUqIHdhcyBsb2FkZWQgdXNpbmcgKm1vZHVsZSoncwogICAgOmF0dHI6YF9fZmlsZV9fYCBhdHRyaWJ1dGUuICBJZiB0aGlzIGlzIG5vdCBkZWZpbmVkLCBvciBpZiBpdCBpcyBub3QgYQogICAgdW5pY29kZSBzdHJpbmcsIHJhaXNlIDpleGM6YFN5c3RlbUVycm9yYCBhbmQgcmV0dXJuICpOVUxMKjsgb3RoZXJ3aXNlIHJldHVybgotICAgYSByZWZlcmVuY2UgdG8gYSA6Yzp0eXBlOmBQeVVuaWNvZGVPYmplY3RgLgorICAgYSByZWZlcmVuY2UgdG8gYSBVbmljb2RlIG9iamVjdC4KIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKIAorLi4gYzpmdW5jdGlvbjo6IGNoYXIqIFB5TW9kdWxlX0dldEZpbGVuYW1lKFB5T2JqZWN0ICptb2R1bGUpCisKKyAgIFNpbWlsYXIgdG8gOmM6ZnVuYzpgUHlNb2R1bGVfR2V0RmlsZW5hbWVPYmplY3RgIGJ1dCByZXR1cm4gdGhlIGZpbGVuYW1lCisgICBlbmNvZGVkIHRvICd1dGYtOCcuCisKKyAgIC4uIGRlcHJlY2F0ZWQ6OiAzLjIKKyAgICAgIDpjOmZ1bmM6YFB5TW9kdWxlX0dldEZpbGVuYW1lYCByYWlzZXMgOmM6dHlwZTpgVW5pY29kZUVuY29kZUVycm9yYCBvbgorICAgICAgdW5lbmNvZGFibGUgZmlsZW5hbWVzLCB1c2UgOmM6ZnVuYzpgUHlNb2R1bGVfR2V0RmlsZW5hbWVPYmplY3RgIGluc3RlYWQuCisKKwogLi4gYzpmdW5jdGlvbjo6IHZvaWQqIFB5TW9kdWxlX0dldFN0YXRlKFB5T2JqZWN0ICptb2R1bGUpCiAKICAgIFJldHVybiB0aGUgInN0YXRlIiBvZiB0aGUgbW9kdWxlLCB0aGF0IGlzLCBhIHBvaW50ZXIgdG8gdGhlIGJsb2NrIG9mIG1lbW9yeQpkaWZmIC0tZ2l0IGEvRG9jL2MtYXBpL29iamVjdC5yc3QgYi9Eb2MvYy1hcGkvb2JqZWN0LnJzdAppbmRleCBkMGQ0NWFkLi44OGJhNWFjIDEwMDY0NAotLS0gYS9Eb2MvYy1hcGkvb2JqZWN0LnJzdAorKysgYi9Eb2MvYy1hcGkvb2JqZWN0LnJzdApAQCAtNiw2ICs2LDE5IEBACiA9PT09PT09PT09PT09PT0KIAogCisuLiBjOnZhcjo6IFB5T2JqZWN0KiBQeV9Ob3RJbXBsZW1lbnRlZAorCisgICBUaGUgYGBOb3RJbXBsZW1lbnRlZGBgIHNpbmdsZXRvbiwgdXNlZCB0byBzaWduYWwgdGhhdCBhbiBvcGVyYXRpb24gaXMKKyAgIG5vdCBpbXBsZW1lbnRlZCBmb3IgdGhlIGdpdmVuIHR5cGUgY29tYmluYXRpb24uCisKKworLi4gYzptYWNybzo6IFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRAorCisgICBQcm9wZXJseSBoYW5kbGUgcmV0dXJuaW5nIDpjOmRhdGE6YFB5X05vdEltcGxlbWVudGVkYCBmcm9tIHdpdGhpbiBhIEMKKyAgIGZ1bmN0aW9uICh0aGF0IGlzLCBpbmNyZW1lbnQgdGhlIHJlZmVyZW5jZSBjb3VudCBvZiBOb3RJbXBsZW1lbnRlZCBhbmQKKyAgIHJldHVybiBpdCkuCisKKwogLi4gYzpmdW5jdGlvbjo6IGludCBQeU9iamVjdF9QcmludChQeU9iamVjdCAqbywgRklMRSAqZnAsIGludCBmbGFncykKIAogICAgUHJpbnQgYW4gb2JqZWN0ICpvKiwgb24gZmlsZSAqZnAqLiAgUmV0dXJucyBgYC0xYGAgb24gZXJyb3IuICBUaGUgZmxhZ3MgYXJndW1lbnQKZGlmZiAtLWdpdCBhL0RvYy9jLWFwaS9zZXQucnN0IGIvRG9jL2MtYXBpL3NldC5yc3QKaW5kZXggNjZiNDdjNC4uNWYwZWY5MCAxMDA2NDQKLS0tIGEvRG9jL2MtYXBpL3NldC5yc3QKKysrIGIvRG9jL2MtYXBpL3NldC5yc3QKQEAgLTE1NywzICsxNTcsMTAgQEAKIC4uIGM6ZnVuY3Rpb246OiBpbnQgUHlTZXRfQ2xlYXIoUHlPYmplY3QgKnNldCkKIAogICAgRW1wdHkgYW4gZXhpc3Rpbmcgc2V0IG9mIGFsbCBlbGVtZW50cy4KKworCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5U2V0X0NsZWFyRnJlZUxpc3QoKQorCisgICBDbGVhciB0aGUgZnJlZSBsaXN0LiBSZXR1cm4gdGhlIHRvdGFsIG51bWJlciBvZiBmcmVlZCBpdGVtcy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCmRpZmYgLS1naXQgYS9Eb2MvYy1hcGkvdW5pY29kZS5yc3QgYi9Eb2MvYy1hcGkvdW5pY29kZS5yc3QKaW5kZXggMzUwMDY1NC4uYTc0YTczZCAxMDA2NDQKLS0tIGEvRG9jL2MtYXBpL3VuaWNvZGUucnN0CisrKyBiL0RvYy9jLWFwaS91bmljb2RlLnJzdApAQCAtNiwzOCArNiw3MiBAQAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogLi4gc2VjdGlvbmF1dGhvcjo6IE1hcmMtQW5kcmUgTGVtYnVyZyA8bWFsQGxlbWJ1cmcuY29tPgorLi4gc2VjdGlvbmF1dGhvcjo6IEdlb3JnIEJyYW5kbCA8Z2VvcmdAcHl0aG9uLm9yZz4KIAogVW5pY29kZSBPYmplY3RzCiBeXl5eXl5eXl5eXl5eXl4KIAorU2luY2UgdGhlIGltcGxlbWVudGF0aW9uIG9mIDpwZXA6YDM5M2AgaW4gUHl0aG9uIDMuMywgVW5pY29kZSBvYmplY3RzIGludGVybmFsbHkKK3VzZSBhIHZhcmlldHkgb2YgcmVwcmVzZW50YXRpb25zLCBpbiBvcmRlciB0byBhbGxvdyBoYW5kbGluZyB0aGUgY29tcGxldGUgcmFuZ2UKK29mIFVuaWNvZGUgY2hhcmFjdGVycyB3aGlsZSBzdGF5aW5nIG1lbW9yeSBlZmZpY2llbnQuICBUaGVyZSBhcmUgc3BlY2lhbCBjYXNlcworZm9yIHN0cmluZ3Mgd2hlcmUgYWxsIGNvZGUgcG9pbnRzIGFyZSBiZWxvdyAxMjgsIDI1Niwgb3IgNjU1MzY7IG90aGVyd2lzZSwgY29kZQorcG9pbnRzIG11c3QgYmUgYmVsb3cgMTExNDExMiAod2hpY2ggaXMgdGhlIGZ1bGwgVW5pY29kZSByYW5nZSkuCisKKzpjOnR5cGU6YFB5X1VOSUNPREUqYCBhbmQgVVRGLTggcmVwcmVzZW50YXRpb25zIGFyZSBjcmVhdGVkIG9uIGRlbWFuZCBhbmQgY2FjaGVkCitpbiB0aGUgVW5pY29kZSBvYmplY3QuICBUaGUgOmM6dHlwZTpgUHlfVU5JQ09ERSpgIHJlcHJlc2VudGF0aW9uIGlzIGRlcHJlY2F0ZWQKK2FuZCBpbmVmZmljaWVudDsgaXQgc2hvdWxkIGJlIGF2b2lkZWQgaW4gcGVyZm9ybWFuY2UtIG9yIG1lbW9yeS1zZW5zaXRpdmUKK3NpdHVhdGlvbnMuCisKK0R1ZSB0byB0aGUgdHJhbnNpdGlvbiBiZXR3ZWVuIHRoZSBvbGQgQVBJcyBhbmQgdGhlIG5ldyBBUElzLCB1bmljb2RlIG9iamVjdHMKK2NhbiBpbnRlcm5hbGx5IGJlIGluIHR3byBzdGF0ZXMgZGVwZW5kaW5nIG9uIGhvdyB0aGV5IHdlcmUgY3JlYXRlZDoKKworKiAiY2Fub25pY2FsIiB1bmljb2RlIG9iamVjdHMgYXJlIGFsbCBvYmplY3RzIGNyZWF0ZWQgYnkgYSBub24tZGVwcmVjYXRlZAorICB1bmljb2RlIEFQSS4gIFRoZXkgdXNlIHRoZSBtb3N0IGVmZmljaWVudCByZXByZXNlbnRhdGlvbiBhbGxvd2VkIGJ5IHRoZQorICBpbXBsZW1lbnRhdGlvbi4KKworKiAibGVnYWN5IiB1bmljb2RlIG9iamVjdHMgaGF2ZSBiZWVuIGNyZWF0ZWQgdGhyb3VnaCBvbmUgb2YgdGhlIGRlcHJlY2F0ZWQKKyAgQVBJcyAodHlwaWNhbGx5IDpjOmZ1bmM6YFB5VW5pY29kZV9Gcm9tVW5pY29kZWApIGFuZCBvbmx5IGJlYXIgdGhlCisgIDpjOnR5cGU6YFB5X1VOSUNPREUqYCByZXByZXNlbnRhdGlvbjsgeW91IHdpbGwgaGF2ZSB0byBjYWxsCisgIDpjOmZ1bmM6YFB5VW5pY29kZV9SRUFEWWAgb24gdGhlbSBiZWZvcmUgY2FsbGluZyBhbnkgb3RoZXIgQVBJLgorCisKIFVuaWNvZGUgVHlwZQogIiIiIiIiIiIiIiIiCiAKIFRoZXNlIGFyZSB0aGUgYmFzaWMgVW5pY29kZSBvYmplY3QgdHlwZXMgdXNlZCBmb3IgdGhlIFVuaWNvZGUgaW1wbGVtZW50YXRpb24gaW4KIFB5dGhvbjoKIAorLi4gYzp0eXBlOjogUHlfVUNTNAorICAgICAgICAgICAgUHlfVUNTMgorICAgICAgICAgICAgUHlfVUNTMQorCisgICBUaGVzZSB0eXBlcyBhcmUgdHlwZWRlZnMgZm9yIHVuc2lnbmVkIGludGVnZXIgdHlwZXMgd2lkZSBlbm91Z2ggdG8gY29udGFpbgorICAgY2hhcmFjdGVycyBvZiAzMiBiaXRzLCAxNiBiaXRzIGFuZCA4IGJpdHMsIHJlc3BlY3RpdmVseS4gIFdoZW4gZGVhbGluZyB3aXRoCisgICBzaW5nbGUgVW5pY29kZSBjaGFyYWN0ZXJzLCB1c2UgOmM6dHlwZTpgUHlfVUNTNGAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAKIC4uIGM6dHlwZTo6IFB5X1VOSUNPREUKIAotICAgVGhpcyB0eXBlIHJlcHJlc2VudHMgdGhlIHN0b3JhZ2UgdHlwZSB3aGljaCBpcyB1c2VkIGJ5IFB5dGhvbiBpbnRlcm5hbGx5IGFzCi0gICBiYXNpcyBmb3IgaG9sZGluZyBVbmljb2RlIG9yZGluYWxzLiAgUHl0aG9uJ3MgZGVmYXVsdCBidWlsZHMgdXNlIGEgMTYtYml0IHR5cGUKLSAgIGZvciA6Yzp0eXBlOmBQeV9VTklDT0RFYCBhbmQgc3RvcmUgVW5pY29kZSB2YWx1ZXMgaW50ZXJuYWxseSBhcyBVQ1MyLiBJdCBpcyBhbHNvCi0gICBwb3NzaWJsZSB0byBidWlsZCBhIFVDUzQgdmVyc2lvbiBvZiBQeXRob24gKG1vc3QgcmVjZW50IExpbnV4IGRpc3RyaWJ1dGlvbnMgY29tZQotICAgd2l0aCBVQ1M0IGJ1aWxkcyBvZiBQeXRob24pLiBUaGVzZSBidWlsZHMgdGhlbiB1c2UgYSAzMi1iaXQgdHlwZSBmb3IKLSAgIDpjOnR5cGU6YFB5X1VOSUNPREVgIGFuZCBzdG9yZSBVbmljb2RlIGRhdGEgaW50ZXJuYWxseSBhcyBVQ1M0LiBPbiBwbGF0Zm9ybXMKLSAgIHdoZXJlIDpjOnR5cGU6YHdjaGFyX3RgIGlzIGF2YWlsYWJsZSBhbmQgY29tcGF0aWJsZSB3aXRoIHRoZSBjaG9zZW4gUHl0aG9uCi0gICBVbmljb2RlIGJ1aWxkIHZhcmlhbnQsIDpjOnR5cGU6YFB5X1VOSUNPREVgIGlzIGEgdHlwZWRlZiBhbGlhcyBmb3IKLSAgIDpjOnR5cGU6YHdjaGFyX3RgIHRvIGVuaGFuY2UgbmF0aXZlIHBsYXRmb3JtIGNvbXBhdGliaWxpdHkuIE9uIGFsbCBvdGhlcgotICAgcGxhdGZvcm1zLCA6Yzp0eXBlOmBQeV9VTklDT0RFYCBpcyBhIHR5cGVkZWYgYWxpYXMgZm9yIGVpdGhlciA6Yzp0eXBlOmB1bnNpZ25lZAotICAgc2hvcnRgIChVQ1MyKSBvciA6Yzp0eXBlOmB1bnNpZ25lZCBsb25nYCAoVUNTNCkuCisgICBUaGlzIGlzIGEgdHlwZWRlZiBvZiA6Yzp0eXBlOmB3Y2hhcl90YCwgd2hpY2ggaXMgYSAxNi1iaXQgdHlwZSBvciAzMi1iaXQgdHlwZQorICAgZGVwZW5kaW5nIG9uIHRoZSBwbGF0Zm9ybS4KIAotTm90ZSB0aGF0IFVDUzIgYW5kIFVDUzQgUHl0aG9uIGJ1aWxkcyBhcmUgbm90IGJpbmFyeSBjb21wYXRpYmxlLiBQbGVhc2Uga2VlcAotdGhpcyBpbiBtaW5kIHdoZW4gd3JpdGluZyBleHRlbnNpb25zIG9yIGludGVyZmFjZXMuCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgSW4gcHJldmlvdXMgdmVyc2lvbnMsIHRoaXMgd2FzIGEgMTYtYml0IHR5cGUgb3IgYSAzMi1iaXQgdHlwZSBkZXBlbmRpbmcgb24KKyAgICAgIHdoZXRoZXIgeW91IHNlbGVjdGVkIGEgIm5hcnJvdyIgb3IgIndpZGUiIFVuaWNvZGUgdmVyc2lvbiBvZiBQeXRob24gYXQKKyAgICAgIGJ1aWxkIHRpbWUuCiAKIAotLi4gYzp0eXBlOjogUHlVbmljb2RlT2JqZWN0CisuLiBjOnR5cGU6OiBQeUFTQ0lJT2JqZWN0CisgICAgICAgICAgICBQeUNvbXBhY3RVbmljb2RlT2JqZWN0CisgICAgICAgICAgICBQeVVuaWNvZGVPYmplY3QKIAotICAgVGhpcyBzdWJ0eXBlIG9mIDpjOnR5cGU6YFB5T2JqZWN0YCByZXByZXNlbnRzIGEgUHl0aG9uIFVuaWNvZGUgb2JqZWN0LgorICAgVGhlc2Ugc3VidHlwZXMgb2YgOmM6dHlwZTpgUHlPYmplY3RgIHJlcHJlc2VudCBhIFB5dGhvbiBVbmljb2RlIG9iamVjdC4gIEluCisgICBhbG1vc3QgYWxsIGNhc2VzLCB0aGV5IHNob3VsZG4ndCBiZSB1c2VkIGRpcmVjdGx5LCBzaW5jZSBhbGwgQVBJIGZ1bmN0aW9ucworICAgdGhhdCBkZWFsIHdpdGggVW5pY29kZSBvYmplY3RzIHRha2UgYW5kIHJldHVybiA6Yzp0eXBlOmBQeU9iamVjdGAgcG9pbnRlcnMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiAKIC4uIGM6dmFyOjogUHlUeXBlT2JqZWN0IFB5VW5pY29kZV9UeXBlCkBAIC00NSwxMCArNzksMTAgQEAKICAgIFRoaXMgaW5zdGFuY2Ugb2YgOmM6dHlwZTpgUHlUeXBlT2JqZWN0YCByZXByZXNlbnRzIHRoZSBQeXRob24gVW5pY29kZSB0eXBlLiAgSXQKICAgIGlzIGV4cG9zZWQgdG8gUHl0aG9uIGNvZGUgYXMgYGBzdHJgYC4KIAorCiBUaGUgZm9sbG93aW5nIEFQSXMgYXJlIHJlYWxseSBDIG1hY3JvcyBhbmQgY2FuIGJlIHVzZWQgdG8gZG8gZmFzdCBjaGVja3MgYW5kIHRvCiBhY2Nlc3MgaW50ZXJuYWwgcmVhZC1vbmx5IGRhdGEgb2YgVW5pY29kZSBvYmplY3RzOgogCi0KIC4uIGM6ZnVuY3Rpb246OiBpbnQgUHlVbmljb2RlX0NoZWNrKFB5T2JqZWN0ICpvKQogCiAgICBSZXR1cm4gdHJ1ZSBpZiB0aGUgb2JqZWN0ICpvKiBpcyBhIFVuaWNvZGUgb2JqZWN0IG9yIGFuIGluc3RhbmNlIG9mIGEgVW5pY29kZQpAQCAtNjEsMjggKzk1LDEwNiBAQAogICAgc3VidHlwZS4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfR0VUX1NJWkUoUHlPYmplY3QgKm8pCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5VW5pY29kZV9SRUFEWShQeU9iamVjdCAqbykKIAotICAgUmV0dXJuIHRoZSBzaXplIG9mIHRoZSBvYmplY3QuICAqbyogaGFzIHRvIGJlIGEgOmM6dHlwZTpgUHlVbmljb2RlT2JqZWN0YCAobm90Ci0gICBjaGVja2VkKS4KKyAgIEVuc3VyZSB0aGUgc3RyaW5nIG9iamVjdCAqbyogaXMgaW4gdGhlICJjYW5vbmljYWwiIHJlcHJlc2VudGF0aW9uLiAgVGhpcyBpcworICAgcmVxdWlyZWQgYmVmb3JlIHVzaW5nIGFueSBvZiB0aGUgYWNjZXNzIG1hY3JvcyBkZXNjcmliZWQgYmVsb3cuCisKKyAgIC4uIFhYWCBleHBhbmQgb24gd2hlbiBpdCBpcyBub3QgcmVxdWlyZWQKKworICAgUmV0dXJucyAwIG9uIHN1Y2Nlc3MgYW5kIC0xIHdpdGggYW4gZXhjZXB0aW9uIHNldCBvbiBmYWlsdXJlLCB3aGljaCBpbgorICAgcGFydGljdWxhciBoYXBwZW5zIGlmIG1lbW9yeSBhbGxvY2F0aW9uIGZhaWxzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfR0VUX0RBVEFfU0laRShQeU9iamVjdCAqbykKKy4uIGM6ZnVuY3Rpb246OiBQeV9zc2l6ZV90IFB5VW5pY29kZV9HRVRfTEVOR1RIKFB5T2JqZWN0ICpvKQogCi0gICBSZXR1cm4gdGhlIHNpemUgb2YgdGhlIG9iamVjdCdzIGludGVybmFsIGJ1ZmZlciBpbiBieXRlcy4gICpvKiBoYXMgdG8gYmUgYQotICAgOmM6dHlwZTpgUHlVbmljb2RlT2JqZWN0YCAobm90IGNoZWNrZWQpLgorICAgUmV0dXJuIHRoZSBsZW5ndGggb2YgdGhlIFVuaWNvZGUgc3RyaW5nLCBpbiBjb2RlIHBvaW50cy4gICpvKiBoYXMgdG8gYmUgYQorICAgVW5pY29kZSBvYmplY3QgaW4gdGhlICJjYW5vbmljYWwiIHJlcHJlc2VudGF0aW9uIChub3QgY2hlY2tlZCkuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeV9VTklDT0RFKiBQeVVuaWNvZGVfQVNfVU5JQ09ERShQeU9iamVjdCAqbykKKy4uIGM6ZnVuY3Rpb246OiBQeV9VQ1MxKiBQeVVuaWNvZGVfMUJZVEVfREFUQShQeU9iamVjdCAqbykKKyAgICAgICAgICAgICAgICBQeV9VQ1MyKiBQeVVuaWNvZGVfMkJZVEVfREFUQShQeU9iamVjdCAqbykKKyAgICAgICAgICAgICAgICBQeV9VQ1M0KiBQeVVuaWNvZGVfNEJZVEVfREFUQShQeU9iamVjdCAqbykKIAotICAgUmV0dXJuIGEgcG9pbnRlciB0byB0aGUgaW50ZXJuYWwgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYnVmZmVyIG9mIHRoZSBvYmplY3QuICAqbyoKLSAgIGhhcyB0byBiZSBhIDpjOnR5cGU6YFB5VW5pY29kZU9iamVjdGAgKG5vdCBjaGVja2VkKS4KKyAgIFJldHVybiBhIHBvaW50ZXIgdG8gdGhlIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbiBjYXN0IHRvIFVDUzEsIFVDUzIgb3IgVUNTNAorICAgaW50ZWdlciB0eXBlcyBmb3IgZGlyZWN0IGNoYXJhY3RlciBhY2Nlc3MuICBObyBjaGVja3MgYXJlIHBlcmZvcm1lZCBpZiB0aGUKKyAgIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbiBoYXMgdGhlIGNvcnJlY3QgY2hhcmFjdGVyIHNpemU7IHVzZQorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0tJTkRgIHRvIHNlbGVjdCB0aGUgcmlnaHQgbWFjcm8uICBNYWtlIHN1cmUKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9SRUFEWWAgaGFzIGJlZW4gY2FsbGVkIGJlZm9yZSBhY2Nlc3NpbmcgdGhpcy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCiAKIAotLi4gYzpmdW5jdGlvbjo6IGNvbnN0IGNoYXIqIFB5VW5pY29kZV9BU19EQVRBKFB5T2JqZWN0ICpvKQorLi4gYzptYWNybzo6IFB5VW5pY29kZV9XQ0hBUl9LSU5ECisgICAgICAgICAgICAgUHlVbmljb2RlXzFCWVRFX0tJTkQKKyAgICAgICAgICAgICBQeVVuaWNvZGVfMkJZVEVfS0lORAorICAgICAgICAgICAgIFB5VW5pY29kZV80QllURV9LSU5ECiAKLSAgIFJldHVybiBhIHBvaW50ZXIgdG8gdGhlIGludGVybmFsIGJ1ZmZlciBvZiB0aGUgb2JqZWN0LiAqbyogaGFzIHRvIGJlIGEKLSAgIDpjOnR5cGU6YFB5VW5pY29kZU9iamVjdGAgKG5vdCBjaGVja2VkKS4KKyAgIFJldHVybiB2YWx1ZXMgb2YgdGhlIDpjOmZ1bmM6YFB5VW5pY29kZV9LSU5EYCBtYWNyby4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IGludCBQeVVuaWNvZGVfS0lORChQeU9iamVjdCAqbykKKworICAgUmV0dXJuIG9uZSBvZiB0aGUgUHlVbmljb2RlIGtpbmQgY29uc3RhbnRzIChzZWUgYWJvdmUpIHRoYXQgaW5kaWNhdGUgaG93IG1hbnkKKyAgIGJ5dGVzIHBlciBjaGFyYWN0ZXIgdGhpcyBVbmljb2RlIG9iamVjdCB1c2VzIHRvIHN0b3JlIGl0cyBkYXRhLiAgKm8qIGhhcyB0bworICAgYmUgYSBVbmljb2RlIG9iamVjdCBpbiB0aGUgImNhbm9uaWNhbCIgcmVwcmVzZW50YXRpb24gKG5vdCBjaGVja2VkKS4KKworICAgLi4gWFhYIGRvY3VtZW50ICIwIiByZXR1cm4gdmFsdWU/CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiB2b2lkKiBQeVVuaWNvZGVfREFUQShQeU9iamVjdCAqbykKKworICAgUmV0dXJuIGEgdm9pZCBwb2ludGVyIHRvIHRoZSByYXcgdW5pY29kZSBidWZmZXIuICAqbyogaGFzIHRvIGJlIGEgVW5pY29kZQorICAgb2JqZWN0IGluIHRoZSAiY2Fub25pY2FsIiByZXByZXNlbnRhdGlvbiAobm90IGNoZWNrZWQpLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogdm9pZCBQeVVuaWNvZGVfV1JJVEUoaW50IGtpbmQsIHZvaWQgKmRhdGEsIFB5X3NzaXplX3QgaW5kZXgsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9VQ1M0IHZhbHVlKQorCisgICBXcml0ZSBpbnRvIGEgY2Fub25pY2FsIHJlcHJlc2VudGF0aW9uICpkYXRhKiAoYXMgb2J0YWluZWQgd2l0aAorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0RBVEFgKS4gIFRoaXMgbWFjcm8gZG9lcyBub3QgZG8gYW55IHNhbml0eSBjaGVja3MgYW5kIGlzCisgICBpbnRlbmRlZCBmb3IgdXNhZ2UgaW4gbG9vcHMuICBUaGUgY2FsbGVyIHNob3VsZCBjYWNoZSB0aGUgKmtpbmQqIHZhbHVlIGFuZAorICAgKmRhdGEqIHBvaW50ZXIgYXMgb2J0YWluZWQgZnJvbSBvdGhlciBtYWNybyBjYWxscy4gICppbmRleCogaXMgdGhlIGluZGV4IGluCisgICB0aGUgc3RyaW5nIChzdGFydHMgYXQgMCkgYW5kICp2YWx1ZSogaXMgdGhlIG5ldyBjb2RlIHBvaW50IHZhbHVlIHdoaWNoIHNob3VsZAorICAgYmUgd3JpdHRlbiB0byB0aGF0IGxvY2F0aW9uLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogUHlfVUNTNCBQeVVuaWNvZGVfUkVBRChpbnQga2luZCwgdm9pZCAqZGF0YSwgUHlfc3NpemVfdCBpbmRleCkKKworICAgUmVhZCBhIGNvZGUgcG9pbnQgZnJvbSBhIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbiAqZGF0YSogKGFzIG9idGFpbmVkIHdpdGgKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9EQVRBYCkuICBObyBjaGVja3Mgb3IgcmVhZHkgY2FsbHMgYXJlIHBlcmZvcm1lZC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X1VDUzQgUHlVbmljb2RlX1JFQURfQ0hBUihQeU9iamVjdCAqbywgUHlfc3NpemVfdCBpbmRleCkKKworICAgUmVhZCBhIGNoYXJhY3RlciBmcm9tIGEgVW5pY29kZSBvYmplY3QgKm8qLCB3aGljaCBtdXN0IGJlIGluIHRoZSAiY2Fub25pY2FsIgorICAgcmVwcmVzZW50YXRpb24uICBUaGlzIGlzIGxlc3MgZWZmaWNpZW50IHRoYW4gOmM6ZnVuYzpgUHlVbmljb2RlX1JFQURgIGlmIHlvdQorICAgZG8gbXVsdGlwbGUgY29uc2VjdXRpdmUgcmVhZHMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUoUHlPYmplY3QgKm8pCisKKyAgIFJldHVybiB0aGUgbWF4aW11bSBjb2RlIHBvaW50IHRoYXQgaXMgc3VpdGFibGUgZm9yIGNyZWF0aW5nIGFub3RoZXIgc3RyaW5nCisgICBiYXNlZCBvbiAqbyosIHdoaWNoIG11c3QgYmUgaW4gdGhlICJjYW5vbmljYWwiIHJlcHJlc2VudGF0aW9uLiAgVGhpcyBpcworICAgYWx3YXlzIGFuIGFwcHJveGltYXRpb24gYnV0IG1vcmUgZWZmaWNpZW50IHRoYW4gaXRlcmF0aW5nIG92ZXIgdGhlIHN0cmluZy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCiAKIAogLi4gYzpmdW5jdGlvbjo6IGludCBQeVVuaWNvZGVfQ2xlYXJGcmVlTGlzdCgpCkBAIC05MCw2ICsyMDIsNDYgQEAKICAgIENsZWFyIHRoZSBmcmVlIGxpc3QuIFJldHVybiB0aGUgdG90YWwgbnVtYmVyIG9mIGZyZWVkIGl0ZW1zLgogCiAKKy4uIGM6ZnVuY3Rpb246OiBQeV9zc2l6ZV90IFB5VW5pY29kZV9HRVRfU0laRShQeU9iamVjdCAqbykKKworICAgUmV0dXJuIHRoZSBzaXplIG9mIHRoZSBkZXByZWNhdGVkIDpjOnR5cGU6YFB5X1VOSUNPREVgIHJlcHJlc2VudGF0aW9uLCBpbgorICAgY29kZSB1bml0cyAodGhpcyBpbmNsdWRlcyBzdXJyb2dhdGUgcGFpcnMgYXMgMiB1bml0cykuICAqbyogaGFzIHRvIGJlIGEKKyAgIFVuaWNvZGUgb2JqZWN0IChub3QgY2hlY2tlZCkuCisKKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSBVbmljb2RlIEFQSSwgcGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcKKyAgICAgIDpjOmZ1bmM6YFB5VW5pY29kZV9HRVRfTEVOR1RIYC4KKworCisuLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfR0VUX0RBVEFfU0laRShQeU9iamVjdCAqbykKKworICAgUmV0dXJuIHRoZSBzaXplIG9mIHRoZSBkZXByZWNhdGVkIDpjOnR5cGU6YFB5X1VOSUNPREVgIHJlcHJlc2VudGF0aW9uIGluCisgICBieXRlcy4gICpvKiBoYXMgdG8gYmUgYSBVbmljb2RlIG9iamVjdCAobm90IGNoZWNrZWQpLgorCisgICAuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisgICAgICBQYXJ0IG9mIHRoZSBvbGQtc3R5bGUgVW5pY29kZSBBUEksIHBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfR0VUX0xFTkdUSGAuCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X1VOSUNPREUqIFB5VW5pY29kZV9BU19VTklDT0RFKFB5T2JqZWN0ICpvKQorICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIFB5VW5pY29kZV9BU19EQVRBKFB5T2JqZWN0ICpvKQorCisgICBSZXR1cm4gYSBwb2ludGVyIHRvIGEgOmM6dHlwZTpgUHlfVU5JQ09ERWAgcmVwcmVzZW50YXRpb24gb2YgdGhlIG9iamVjdC4gIFRoZQorICAgYGBBU19EQVRBYGAgZm9ybSBjYXN0cyB0aGUgcG9pbnRlciB0byA6Yzp0eXBlOmBjb25zdCBjaGFyICpgLiAgKm8qIGhhcyB0byBiZQorICAgYSBVbmljb2RlIG9iamVjdCAobm90IGNoZWNrZWQpLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhpcyBtYWNybyBpcyBub3cgaW5lZmZpY2llbnQgLS0gYmVjYXVzZSBpbiBtYW55IGNhc2VzIHRoZQorICAgICAgOmM6dHlwZTpgUHlfVU5JQ09ERWAgcmVwcmVzZW50YXRpb24gZG9lcyBub3QgZXhpc3QgYW5kIG5lZWRzIHRvIGJlIGNyZWF0ZWQKKyAgICAgIC0tIGFuZCBjYW4gZmFpbCAocmV0dXJuICpOVUxMKiB3aXRoIGFuIGV4Y2VwdGlvbiBzZXQpLiAgVHJ5IHRvIHBvcnQgdGhlCisgICAgICBjb2RlIHRvIHVzZSB0aGUgbmV3IDpjOmZ1bmM6YFB5VW5pY29kZV9uQllURV9EQVRBYCBtYWNyb3Mgb3IgdXNlCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfV1JJVEVgIG9yIDpjOmZ1bmM6YFB5VW5pY29kZV9SRUFEYC4KKworICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIFVuaWNvZGUgQVBJLCBwbGVhc2UgbWlncmF0ZSB0byB1c2luZyB0aGUKKyAgICAgIDpjOmZ1bmM6YFB5VW5pY29kZV9uQllURV9EQVRBYCBmYW1pbHkgb2YgbWFjcm9zLgorCisKIFVuaWNvZGUgQ2hhcmFjdGVyIFByb3BlcnRpZXMKICIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKIApAQCAtMTY2LDE2ICszMTgsMjUgQEAKIAogICAgUmV0dXJuIHRoZSBjaGFyYWN0ZXIgKmNoKiBjb252ZXJ0ZWQgdG8gbG93ZXIgY2FzZS4KIAorICAgLi4gZGVwcmVjYXRlZDo6IDMuMworICAgICAgVGhpcyBmdW5jdGlvbiB1c2VzIHNpbXBsZSBjYXNlIG1hcHBpbmdzLgorCiAKIC4uIGM6ZnVuY3Rpb246OiBQeV9VTklDT0RFIFB5X1VOSUNPREVfVE9VUFBFUihQeV9VTklDT0RFIGNoKQogCiAgICBSZXR1cm4gdGhlIGNoYXJhY3RlciAqY2gqIGNvbnZlcnRlZCB0byB1cHBlciBjYXNlLgogCisgICAuLiBkZXByZWNhdGVkOjogMy4zCisgICAgICBUaGlzIGZ1bmN0aW9uIHVzZXMgc2ltcGxlIGNhc2UgbWFwcGluZ3MuCisKIAogLi4gYzpmdW5jdGlvbjo6IFB5X1VOSUNPREUgUHlfVU5JQ09ERV9UT1RJVExFKFB5X1VOSUNPREUgY2gpCiAKICAgIFJldHVybiB0aGUgY2hhcmFjdGVyICpjaCogY29udmVydGVkIHRvIHRpdGxlIGNhc2UuCiAKKyAgIC4uIGRlcHJlY2F0ZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gdXNlcyBzaW1wbGUgY2FzZSBtYXBwaW5ncy4KKwogCiAuLiBjOmZ1bmN0aW9uOjogaW50IFB5X1VOSUNPREVfVE9ERUNJTUFMKFB5X1VOSUNPREUgY2gpCiAKQEAgLTE5NSwzMSArMzU2LDY2IEBACiAgICBwb3NzaWJsZS4gIFRoaXMgbWFjcm8gZG9lcyBub3QgcmFpc2UgZXhjZXB0aW9ucy4KIAogCi1QbGFpbiBQeV9VTklDT0RFCi0iIiIiIiIiIiIiIiIiIiIiCitUaGVzZSBBUElzIGNhbiBiZSB1c2VkIHRvIHdvcmsgd2l0aCBzdXJyb2dhdGVzOgorCisuLiBjOm1hY3JvOjogUHlfVU5JQ09ERV9JU19TVVJST0dBVEUoY2gpCisKKyAgIENoZWNrIGlmICpjaCogaXMgYSBzdXJyb2dhdGUgKGBgMHhEODAwIDw9IGNoIDw9IDB4REZGRmBgKS4KKworLi4gYzptYWNybzo6IFB5X1VOSUNPREVfSVNfSElHSF9TVVJST0dBVEUoY2gpCisKKyAgIENoZWNrIGlmICpjaCogaXMgYW4gaGlnaCBzdXJyb2dhdGUgKGBgMHhEODAwIDw9IGNoIDw9IDB4REJGRmBgKS4KKworLi4gYzptYWNybzo6IFB5X1VOSUNPREVfSVNfTE9XX1NVUlJPR0FURShjaCkKKworICAgQ2hlY2sgaWYgKmNoKiBpcyBhIGxvdyBzdXJyb2dhdGUgKGBgMHhEQzAwIDw9IGNoIDw9IDB4REZGRmBgKS4KKworLi4gYzptYWNybzo6IFB5X1VOSUNPREVfSk9JTl9TVVJST0dBVEVTKGhpZ2gsIGxvdykKKworICAgSm9pbiB0d28gc3Vycm9nYXRlIGNoYXJhY3RlcnMgYW5kIHJldHVybiBhIHNpbmdsZSBQeV9VQ1M0IHZhbHVlLgorICAgKmhpZ2gqIGFuZCAqbG93KiBhcmUgcmVzcGVjdGl2ZWx5IHRoZSBsZWFkaW5nIGFuZCB0cmFpbGluZyBzdXJyb2dhdGVzIGluIGEKKyAgIHN1cnJvZ2F0ZSBwYWlyLgorCisKK0NyZWF0aW5nIGFuZCBhY2Nlc3NpbmcgVW5pY29kZSBzdHJpbmdzCisiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIgogCiBUbyBjcmVhdGUgVW5pY29kZSBvYmplY3RzIGFuZCBhY2Nlc3MgdGhlaXIgYmFzaWMgc2VxdWVuY2UgcHJvcGVydGllcywgdXNlIHRoZXNlCiBBUElzOgogCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9OZXcoUHlfc3NpemVfdCBzaXplLCBQeV9VQ1M0IG1heGNoYXIpCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0Zyb21Vbmljb2RlKGNvbnN0IFB5X1VOSUNPREUgKnUsIFB5X3NzaXplX3Qgc2l6ZSkKKyAgIENyZWF0ZSBhIG5ldyBVbmljb2RlIG9iamVjdC4gICptYXhjaGFyKiBzaG91bGQgYmUgdGhlIHRydWUgbWF4aW11bSBjb2RlIHBvaW50CisgICB0byBiZSBwbGFjZWQgaW4gdGhlIHN0cmluZy4gIEFzIGFuIGFwcHJveGltYXRpb24sIGl0IGNhbiBiZSByb3VuZGVkIHVwIHRvIHRoZQorICAgbmVhcmVzdCB2YWx1ZSBpbiB0aGUgc2VxdWVuY2UgMTI3LCAyNTUsIDY1NTM1LCAxMTE0MTExLgogCi0gICBDcmVhdGUgYSBVbmljb2RlIG9iamVjdCBmcm9tIHRoZSBQeV9VTklDT0RFIGJ1ZmZlciAqdSogb2YgdGhlIGdpdmVuIHNpemUuICp1KgotICAgbWF5IGJlICpOVUxMKiB3aGljaCBjYXVzZXMgdGhlIGNvbnRlbnRzIHRvIGJlIHVuZGVmaW5lZC4gSXQgaXMgdGhlIHVzZXIncwotICAgcmVzcG9uc2liaWxpdHkgdG8gZmlsbCBpbiB0aGUgbmVlZGVkIGRhdGEuICBUaGUgYnVmZmVyIGlzIGNvcGllZCBpbnRvIHRoZSBuZXcKLSAgIG9iamVjdC4gSWYgdGhlIGJ1ZmZlciBpcyBub3QgKk5VTEwqLCB0aGUgcmV0dXJuIHZhbHVlIG1pZ2h0IGJlIGEgc2hhcmVkIG9iamVjdC4KLSAgIFRoZXJlZm9yZSwgbW9kaWZpY2F0aW9uIG9mIHRoZSByZXN1bHRpbmcgVW5pY29kZSBvYmplY3QgaXMgb25seSBhbGxvd2VkIHdoZW4gKnUqCi0gICBpcyAqTlVMTCouCisgICBUaGlzIGlzIHRoZSByZWNvbW1lbmRlZCB3YXkgdG8gYWxsb2NhdGUgYSBuZXcgVW5pY29kZSBvYmplY3QuICBPYmplY3RzCisgICBjcmVhdGVkIHVzaW5nIHRoaXMgZnVuY3Rpb24gYXJlIG5vdCByZXNpemFibGUuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShpbnQga2luZCwgY29uc3Qgdm9pZCAqYnVmZmVyLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplKQorCisgICBDcmVhdGUgYSBuZXcgVW5pY29kZSBvYmplY3Qgd2l0aCB0aGUgZ2l2ZW4gKmtpbmQqIChwb3NzaWJsZSB2YWx1ZXMgYXJlCisgICA6YzptYWNybzpgUHlVbmljb2RlXzFCWVRFX0tJTkRgIGV0Yy4sIGFzIHJldHVybmVkIGJ5CisgICA6YzpmdW5jOmBQeVVuaWNvZGVfS0lORGApLiAgVGhlICpidWZmZXIqIG11c3QgcG9pbnQgdG8gYW4gYXJyYXkgb2YgKnNpemUqCisgICB1bml0cyBvZiAxLCAyIG9yIDQgYnl0ZXMgcGVyIGNoYXJhY3RlciwgYXMgZ2l2ZW4gYnkgdGhlIGtpbmQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiAKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKGNvbnN0IGNoYXIgKnUsIFB5X3NzaXplX3Qgc2l6ZSkKIAotICAgQ3JlYXRlIGEgVW5pY29kZSBvYmplY3QgZnJvbSB0aGUgY2hhciBidWZmZXIgKnUqLiAgVGhlIGJ5dGVzIHdpbGwgYmUgaW50ZXJwcmV0ZWQKLSAgIGFzIGJlaW5nIFVURi04IGVuY29kZWQuICAqdSogbWF5IGFsc28gYmUgKk5VTEwqIHdoaWNoCi0gICBjYXVzZXMgdGhlIGNvbnRlbnRzIHRvIGJlIHVuZGVmaW5lZC4gSXQgaXMgdGhlIHVzZXIncyByZXNwb25zaWJpbGl0eSB0byBmaWxsIGluCi0gICB0aGUgbmVlZGVkIGRhdGEuICBUaGUgYnVmZmVyIGlzIGNvcGllZCBpbnRvIHRoZSBuZXcgb2JqZWN0LiBJZiB0aGUgYnVmZmVyIGlzIG5vdAotICAgKk5VTEwqLCB0aGUgcmV0dXJuIHZhbHVlIG1pZ2h0IGJlIGEgc2hhcmVkIG9iamVjdC4gVGhlcmVmb3JlLCBtb2RpZmljYXRpb24gb2YKLSAgIHRoZSByZXN1bHRpbmcgVW5pY29kZSBvYmplY3QgaXMgb25seSBhbGxvd2VkIHdoZW4gKnUqIGlzICpOVUxMKi4KKyAgIENyZWF0ZSBhIFVuaWNvZGUgb2JqZWN0IGZyb20gdGhlIGNoYXIgYnVmZmVyICp1Ki4gIFRoZSBieXRlcyB3aWxsIGJlCisgICBpbnRlcnByZXRlZCBhcyBiZWluZyBVVEYtOCBlbmNvZGVkLiAgVGhlIGJ1ZmZlciBpcyBjb3BpZWQgaW50byB0aGUgbmV3CisgICBvYmplY3QuIElmIHRoZSBidWZmZXIgaXMgbm90ICpOVUxMKiwgdGhlIHJldHVybiB2YWx1ZSBtaWdodCBiZSBhIHNoYXJlZAorICAgb2JqZWN0LCBpLmUuIG1vZGlmaWNhdGlvbiBvZiB0aGUgZGF0YSBpcyBub3QgYWxsb3dlZC4KKworICAgSWYgKnUqIGlzICpOVUxMKiwgdGhpcyBmdW5jdGlvbiBiZWhhdmVzIGxpa2UgOmM6ZnVuYzpgUHlVbmljb2RlX0Zyb21Vbmljb2RlYAorICAgd2l0aCB0aGUgYnVmZmVyIHNldCB0byAqTlVMTCouICBUaGlzIHVzYWdlIGlzIGRlcHJlY2F0ZWQgaW4gZmF2b3Igb2YKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9OZXdgLgogCiAKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCAqUHlVbmljb2RlX0Zyb21TdHJpbmcoY29uc3QgY2hhciAqdSkKQEAgLTI2MCwxOCArNDU2LDI3IEBACiAgICB8IDphdHRyOmAlbGRgICAgICAgIHwgbG9uZyAgICAgICAgICAgICAgICB8IEV4YWN0bHkgZXF1aXZhbGVudCB0byAgICAgICAgICB8CiAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8IGBgcHJpbnRmKCIlbGQiKWBgLiAgICAgICAgICAgICB8CiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IDphdHRyOmAlbGlgICAgICAgIHwgbG9uZyAgICAgICAgICAgICAgICB8IEV4YWN0bHkgZXF1aXZhbGVudCB0byAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8IGBgcHJpbnRmKCIlbGkiKWBgLiAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICB8IDphdHRyOmAlbHVgICAgICAgIHwgdW5zaWduZWQgbG9uZyAgICAgICB8IEV4YWN0bHkgZXF1aXZhbGVudCB0byAgICAgICAgICB8CiAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8IGBgcHJpbnRmKCIlbHUiKWBgLiAgICAgICAgICAgICB8CiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICB8IDphdHRyOmAlbGxkYCAgICAgIHwgbG9uZyBsb25nICAgICAgICAgICB8IEV4YWN0bHkgZXF1aXZhbGVudCB0byAgICAgICAgICB8CiAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8IGBgcHJpbnRmKCIlbGxkIilgYC4gICAgICAgICAgICB8CiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IDphdHRyOmAlbGxpYCAgICAgIHwgbG9uZyBsb25nICAgICAgICAgICB8IEV4YWN0bHkgZXF1aXZhbGVudCB0byAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8IGBgcHJpbnRmKCIlbGxpIilgYC4gICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICB8IDphdHRyOmAlbGx1YCAgICAgIHwgdW5zaWduZWQgbG9uZyBsb25nICB8IEV4YWN0bHkgZXF1aXZhbGVudCB0byAgICAgICAgICB8CiAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8IGBgcHJpbnRmKCIlbGx1IilgYC4gICAgICAgICAgICB8CiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICB8IDphdHRyOmAlemRgICAgICAgIHwgUHlfc3NpemVfdCAgICAgICAgICB8IEV4YWN0bHkgZXF1aXZhbGVudCB0byAgICAgICAgICB8CiAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8IGBgcHJpbnRmKCIlemQiKWBgLiAgICAgICAgICAgICB8CiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IDphdHRyOmAlemlgICAgICAgIHwgUHlfc3NpemVfdCAgICAgICAgICB8IEV4YWN0bHkgZXF1aXZhbGVudCB0byAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8IGBgcHJpbnRmKCIlemkiKWBgLiAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICB8IDphdHRyOmAlenVgICAgICAgIHwgc2l6ZV90ICAgICAgICAgICAgICB8IEV4YWN0bHkgZXF1aXZhbGVudCB0byAgICAgICAgICB8CiAgICB8ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICB8IGBgcHJpbnRmKCIlenUiKWBgLiAgICAgICAgICAgICB8CiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCkBAIC0zMjIsNDcgKzUyNywxOCBAQAogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIKICAgICAgIFN1cHBvcnQgZm9yIGBgIiVsbGQiYGAgYW5kIGBgIiVsbHUiYGAgYWRkZWQuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBTdXBwb3J0IGZvciBgYCIlbGkiYGAsIGBgIiVsbGkiYGAgYW5kIGBgIiV6aSJgYCBhZGRlZC4KKwogCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Gcm9tRm9ybWF0Vihjb25zdCBjaGFyICpmb3JtYXQsIHZhX2xpc3QgdmFyZ3MpCiAKICAgIElkZW50aWNhbCB0byA6YzpmdW5jOmBQeVVuaWNvZGVfRnJvbUZvcm1hdGAgZXhjZXB0IHRoYXQgaXQgdGFrZXMgZXhhY3RseSB0d28KICAgIGFyZ3VtZW50cy4KIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfVHJhbnNmb3JtRGVjaW1hbFRvQVNDSUkoUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplKQogCi0gICBDcmVhdGUgYSBVbmljb2RlIG9iamVjdCBieSByZXBsYWNpbmcgYWxsIGRlY2ltYWwgZGlnaXRzIGluCi0gICA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuICpzaXplKiBieSBBU0NJSSBkaWdpdHMgMC0tOQotICAgYWNjb3JkaW5nIHRvIHRoZWlyIGRlY2ltYWwgdmFsdWUuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbgotICAgb2NjdXJzLgotCi0KLS4uIGM6ZnVuY3Rpb246OiBQeV9VTklDT0RFKiBQeVVuaWNvZGVfQXNVbmljb2RlKFB5T2JqZWN0ICp1bmljb2RlKQotCi0gICBSZXR1cm4gYSByZWFkLW9ubHkgcG9pbnRlciB0byB0aGUgVW5pY29kZSBvYmplY3QncyBpbnRlcm5hbAotICAgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYnVmZmVyLCAqTlVMTCogaWYgKnVuaWNvZGUqIGlzIG5vdCBhIFVuaWNvZGUgb2JqZWN0LgotICAgTm90ZSB0aGF0IHRoZSByZXN1bHRpbmcgOmM6dHlwZTpgUHlfVU5JQ09ERSpgIHN0cmluZyBtYXkgY29udGFpbiBlbWJlZGRlZAotICAgbnVsbCBjaGFyYWN0ZXJzLCB3aGljaCB3b3VsZCBjYXVzZSB0aGUgc3RyaW5nIHRvIGJlIHRydW5jYXRlZCB3aGVuIHVzZWQgaW4KLSAgIG1vc3QgQyBmdW5jdGlvbnMuCi0KLQotLi4gYzpmdW5jdGlvbjo6IFB5X1VOSUNPREUqIFB5VW5pY29kZV9Bc1VuaWNvZGVDb3B5KFB5T2JqZWN0ICp1bmljb2RlKQotCi0gICBDcmVhdGUgYSBjb3B5IG9mIGEgVW5pY29kZSBzdHJpbmcgZW5kaW5nIHdpdGggYSBudWwgY2hhcmFjdGVyLiBSZXR1cm4gKk5VTEwqCi0gICBhbmQgcmFpc2UgYSA6ZXhjOmBNZW1vcnlFcnJvcmAgZXhjZXB0aW9uIG9uIG1lbW9yeSBhbGxvY2F0aW9uIGZhaWx1cmUsCi0gICBvdGhlcndpc2UgcmV0dXJuIGEgbmV3IGFsbG9jYXRlZCBidWZmZXIgKHVzZSA6YzpmdW5jOmBQeU1lbV9GcmVlYCB0byBmcmVlCi0gICB0aGUgYnVmZmVyKS4gTm90ZSB0aGF0IHRoZSByZXN1bHRpbmcgOmM6dHlwZTpgUHlfVU5JQ09ERSpgIHN0cmluZyBtYXkgY29udGFpbgotICAgZW1iZWRkZWQgbnVsbCBjaGFyYWN0ZXJzLCB3aGljaCB3b3VsZCBjYXVzZSB0aGUgc3RyaW5nIHRvIGJlIHRydW5jYXRlZCB3aGVuCi0gICB1c2VkIGluIG1vc3QgQyBmdW5jdGlvbnMuCi0KLSAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgotCi0KLS4uIGM6ZnVuY3Rpb246OiBQeV9zc2l6ZV90IFB5VW5pY29kZV9HZXRTaXplKFB5T2JqZWN0ICp1bmljb2RlKQotCi0gICBSZXR1cm4gdGhlIGxlbmd0aCBvZiB0aGUgVW5pY29kZSBvYmplY3QuCi0KLQotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRnJvbUVuY29kZWRPYmplY3QoUHlPYmplY3QgKm9iaiwgY29uc3QgY2hhciAqZW5jb2RpbmcsIGNvbnN0IGNoYXIgKmVycm9ycykKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0Zyb21FbmNvZGVkT2JqZWN0KFB5T2JqZWN0ICpvYmosIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBDb2VyY2UgYW4gZW5jb2RlZCBvYmplY3QgKm9iaiogdG8gYW4gVW5pY29kZSBvYmplY3QgYW5kIHJldHVybiBhIHJlZmVyZW5jZSB3aXRoCiAgICBpbmNyZW1lbnRlZCByZWZjb3VudC4KQEAgLTM3OSwxNSArNTU1LDIyNyBAQAogICAgZGVjcmVmJ2luZyB0aGUgcmV0dXJuZWQgb2JqZWN0cy4KIAogCisuLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfR2V0TGVuZ3RoKFB5T2JqZWN0ICp1bmljb2RlKQorCisgICBSZXR1cm4gdGhlIGxlbmd0aCBvZiB0aGUgVW5pY29kZSBvYmplY3QsIGluIGNvZGUgcG9pbnRzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyhQeU9iamVjdCAqdG8sIFB5X3NzaXplX3QgdG9fc3RhcnQsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp0bywgUHlfc3NpemVfdCBmcm9tX3N0YXJ0LCBQeV9zc2l6ZV90IGhvd19tYW55KQorCisgICBDb3B5IGNoYXJhY3RlcnMgZnJvbSBvbmUgVW5pY29kZSBvYmplY3QgaW50byBhbm90aGVyLiAgVGhpcyBmdW5jdGlvbiBwZXJmb3JtcworICAgY2hhcmFjdGVyIGNvbnZlcnNpb24gd2hlbiBuZWNlc3NhcnkgYW5kIGZhbGxzIGJhY2sgdG8gOmM6ZnVuYzpgbWVtY3B5YCBpZgorICAgcG9zc2libGUuICBSZXR1cm5zIGBgLTFgYCBhbmQgc2V0cyBhbiBleGNlcHRpb24gb24gZXJyb3IsIG90aGVyd2lzZSByZXR1cm5zCisgICBgYDBgYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X3NzaXplX3QgUHlVbmljb2RlX0ZpbGwoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3Qgc3RhcnQsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuZ3RoLCBQeV9VQ1M0IGZpbGxfY2hhcikKKworICAgRmlsbCBhIHN0cmluZyB3aXRoIGEgY2hhcmFjdGVyOiB3cml0ZSAqZmlsbF9jaGFyKiBpbnRvCisgICBgYHVuaWNvZGVbc3RhcnQ6c3RhcnQrbGVuZ3RoXWBgLgorCisgICBGYWlsIGlmICpmaWxsX2NoYXIqIGlzIGJpZ2dlciB0aGFuIHRoZSBzdHJpbmcgbWF4aW11bSBjaGFyYWN0ZXIsIG9yIGlmIHRoZQorICAgc3RyaW5nIGhhcyBtb3JlIHRoYW4gMSByZWZlcmVuY2UuCisKKyAgIFJldHVybiB0aGUgbnVtYmVyIG9mIHdyaXR0ZW4gY2hhcmFjdGVyLCBvciByZXR1cm4gYGAtMWBgIGFuZCByYWlzZSBhbgorICAgZXhjZXB0aW9uIG9uIGVycm9yLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5VW5pY29kZV9Xcml0ZUNoYXIoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3QgaW5kZXgsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9VQ1M0IGNoYXJhY3RlcikKKworICAgV3JpdGUgYSBjaGFyYWN0ZXIgdG8gYSBzdHJpbmcuICBUaGUgc3RyaW5nIG11c3QgaGF2ZSBiZWVuIGNyZWF0ZWQgdGhyb3VnaAorICAgOmM6ZnVuYzpgUHlVbmljb2RlX05ld2AuICBTaW5jZSBVbmljb2RlIHN0cmluZ3MgYXJlIHN1cHBvc2VkIHRvIGJlIGltbXV0YWJsZSwKKyAgIHRoZSBzdHJpbmcgbXVzdCBub3QgYmUgc2hhcmVkLCBvciBoYXZlIGJlZW4gaGFzaGVkIHlldC4KKworICAgVGhpcyBmdW5jdGlvbiBjaGVja3MgdGhhdCAqdW5pY29kZSogaXMgYSBVbmljb2RlIG9iamVjdCwgdGhhdCB0aGUgaW5kZXggaXMKKyAgIG5vdCBvdXQgb2YgYm91bmRzLCBhbmQgdGhhdCB0aGUgb2JqZWN0IGNhbiBiZSBtb2RpZmllZCBzYWZlbHkgKGkuZS4gdGhhdCBpdAorICAgaXRzIHJlZmVyZW5jZSBjb3VudCBpcyBvbmUpLCBpbiBjb250cmFzdCB0byB0aGUgbWFjcm8gdmVyc2lvbgorICAgOmM6ZnVuYzpgUHlVbmljb2RlX1dSSVRFX0NIQVJgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogUHlfVUNTNCBQeVVuaWNvZGVfUmVhZENoYXIoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3QgaW5kZXgpCisKKyAgIFJlYWQgYSBjaGFyYWN0ZXIgZnJvbSBhIHN0cmluZy4gIFRoaXMgZnVuY3Rpb24gY2hlY2tzIHRoYXQgKnVuaWNvZGUqIGlzIGEKKyAgIFVuaWNvZGUgb2JqZWN0IGFuZCB0aGUgaW5kZXggaXMgbm90IG91dCBvZiBib3VuZHMsIGluIGNvbnRyYXN0IHRvIHRoZSBtYWNybworICAgdmVyc2lvbiA6YzpmdW5jOmBQeVVuaWNvZGVfUkVBRF9DSEFSYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfU3Vic3RyaW5nKFB5T2JqZWN0ICpzdHIsIFB5X3NzaXplX3Qgc3RhcnQsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGVuZCkKKworICAgUmV0dXJuIGEgc3Vic3RyaW5nIG9mICpzdHIqLCBmcm9tIGNoYXJhY3RlciBpbmRleCAqc3RhcnQqIChpbmNsdWRlZCkgdG8KKyAgIGNoYXJhY3RlciBpbmRleCAqZW5kKiAoZXhjbHVkZWQpLiAgTmVnYXRpdmUgaW5kaWNlcyBhcmUgbm90IHN1cHBvcnRlZC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X1VDUzQqIFB5VW5pY29kZV9Bc1VDUzQoUHlPYmplY3QgKnUsIFB5X1VDUzQgKmJ1ZmZlciwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBidWZsZW4sIGludCBjb3B5X251bGwpCisKKyAgIENvcHkgdGhlIHN0cmluZyAqdSogaW50byBhIFVDUzQgYnVmZmVyLCBpbmNsdWRpbmcgYSBudWxsIGNoYXJhY3RlciwgaWYKKyAgICpjb3B5X251bGwqIGlzIHNldC4gIFJldHVybnMgKk5VTEwqIGFuZCBzZXRzIGFuIGV4Y2VwdGlvbiBvbiBlcnJvciAoaW4KKyAgIHBhcnRpY3VsYXIsIGEgOmV4YzpgVmFsdWVFcnJvcmAgaWYgKmJ1ZmxlbiogaXMgc21hbGxlciB0aGFuIHRoZSBsZW5ndGggb2YKKyAgICp1KikuICAqYnVmZmVyKiBpcyByZXR1cm5lZCBvbiBzdWNjZXNzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogUHlfVUNTNCogUHlVbmljb2RlX0FzVUNTNENvcHkoUHlPYmplY3QgKnUpCisKKyAgIENvcHkgdGhlIHN0cmluZyAqdSogaW50byBhIG5ldyBVQ1M0IGJ1ZmZlciB0aGF0IGlzIGFsbG9jYXRlZCB1c2luZworICAgOmM6ZnVuYzpgUHlNZW1fTWFsbG9jYC4gIElmIHRoaXMgZmFpbHMsICpOVUxMKiBpcyByZXR1cm5lZCB3aXRoIGEKKyAgIDpleGM6YE1lbW9yeUVycm9yYCBzZXQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKK0RlcHJlY2F0ZWQgUHlfVU5JQ09ERSBBUElzCisiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIgorCisuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisKK1RoZXNlIEFQSSBmdW5jdGlvbnMgYXJlIGRlcHJlY2F0ZWQgd2l0aCB0aGUgaW1wbGVtZW50YXRpb24gb2YgOnBlcDpgMzkzYC4KK0V4dGVuc2lvbiBtb2R1bGVzIGNhbiBjb250aW51ZSB1c2luZyB0aGVtLCBhcyB0aGV5IHdpbGwgbm90IGJlIHJlbW92ZWQgaW4gUHl0aG9uCiszLngsIGJ1dCBuZWVkIHRvIGJlIGF3YXJlIHRoYXQgdGhlaXIgdXNlIGNhbiBub3cgY2F1c2UgcGVyZm9ybWFuY2UgYW5kIG1lbW9yeSBoaXRzLgorCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0Zyb21Vbmljb2RlKGNvbnN0IFB5X1VOSUNPREUgKnUsIFB5X3NzaXplX3Qgc2l6ZSkKKworICAgQ3JlYXRlIGEgVW5pY29kZSBvYmplY3QgZnJvbSB0aGUgUHlfVU5JQ09ERSBidWZmZXIgKnUqIG9mIHRoZSBnaXZlbiBzaXplLiAqdSoKKyAgIG1heSBiZSAqTlVMTCogd2hpY2ggY2F1c2VzIHRoZSBjb250ZW50cyB0byBiZSB1bmRlZmluZWQuIEl0IGlzIHRoZSB1c2VyJ3MKKyAgIHJlc3BvbnNpYmlsaXR5IHRvIGZpbGwgaW4gdGhlIG5lZWRlZCBkYXRhLiAgVGhlIGJ1ZmZlciBpcyBjb3BpZWQgaW50byB0aGUgbmV3CisgICBvYmplY3QuCisKKyAgIElmIHRoZSBidWZmZXIgaXMgbm90ICpOVUxMKiwgdGhlIHJldHVybiB2YWx1ZSBtaWdodCBiZSBhIHNoYXJlZCBvYmplY3QuCisgICBUaGVyZWZvcmUsIG1vZGlmaWNhdGlvbiBvZiB0aGUgcmVzdWx0aW5nIFVuaWNvZGUgb2JqZWN0IGlzIG9ubHkgYWxsb3dlZCB3aGVuCisgICAqdSogaXMgKk5VTEwqLgorCisgICBJZiB0aGUgYnVmZmVyIGlzICpOVUxMKiwgOmM6ZnVuYzpgUHlVbmljb2RlX1JFQURZYCBtdXN0IGJlIGNhbGxlZCBvbmNlIHRoZQorICAgc3RyaW5nIGNvbnRlbnQgaGFzIGJlZW4gZmlsbGVkIGJlZm9yZSB1c2luZyBhbnkgb2YgdGhlIGFjY2VzcyBtYWNyb3Mgc3VjaCBhcworICAgOmM6ZnVuYzpgUHlVbmljb2RlX0tJTkRgLgorCisgICBQbGVhc2UgbWlncmF0ZSB0byB1c2luZyA6YzpmdW5jOmBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhYCBvcgorICAgOmM6ZnVuYzpgUHlVbmljb2RlX05ld2AuCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X1VOSUNPREUqIFB5VW5pY29kZV9Bc1VuaWNvZGUoUHlPYmplY3QgKnVuaWNvZGUpCisKKyAgIFJldHVybiBhIHJlYWQtb25seSBwb2ludGVyIHRvIHRoZSBVbmljb2RlIG9iamVjdCdzIGludGVybmFsCisgICA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIsIG9yICpOVUxMKiBvbiBlcnJvci4gVGhpcyB3aWxsIGNyZWF0ZSB0aGUKKyAgIDpjOnR5cGU6YFB5X1VOSUNPREUqYCByZXByZXNlbnRhdGlvbiBvZiB0aGUgb2JqZWN0IGlmIGl0IGlzIG5vdCB5ZXQKKyAgIGF2YWlsYWJsZS4gTm90ZSB0aGF0IHRoZSByZXN1bHRpbmcgOmM6dHlwZTpgUHlfVU5JQ09ERWAgc3RyaW5nIG1heSBjb250YWluCisgICBlbWJlZGRlZCBudWxsIGNoYXJhY3RlcnMsIHdoaWNoIHdvdWxkIGNhdXNlIHRoZSBzdHJpbmcgdG8gYmUgdHJ1bmNhdGVkIHdoZW4KKyAgIHVzZWQgaW4gbW9zdCBDIGZ1bmN0aW9ucy4KKworICAgUGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcgOmM6ZnVuYzpgUHlVbmljb2RlX0FzVUNTNGAsCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfU3Vic3RyaW5nYCwgOmM6ZnVuYzpgUHlVbmljb2RlX1JlYWRDaGFyYCBvciBzaW1pbGFyIG5ldworICAgQVBJcy4KKworCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsVG9BU0NJSShQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUpCisKKyAgIENyZWF0ZSBhIFVuaWNvZGUgb2JqZWN0IGJ5IHJlcGxhY2luZyBhbGwgZGVjaW1hbCBkaWdpdHMgaW4KKyAgIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gKnNpemUqIGJ5IEFTQ0lJIGRpZ2l0cyAwLS05CisgICBhY2NvcmRpbmcgdG8gdGhlaXIgZGVjaW1hbCB2YWx1ZS4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIG9jY3Vycy4KKworCisuLiBjOmZ1bmN0aW9uOjogUHlfVU5JQ09ERSogUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3QgKnNpemUpCisKKyAgIExpa2UgOmM6ZnVuYzpgUHlVbmljb2RlX0FzVW5pY29kZWAsIGJ1dCBhbHNvIHNhdmVzIHRoZSA6YzpmdW5jOmBQeV9VTklDT0RFYAorICAgYXJyYXkgbGVuZ3RoIGluICpzaXplKi4gTm90ZSB0aGF0IHRoZSByZXN1bHRpbmcgOmM6dHlwZTpgUHlfVU5JQ09ERSpgIHN0cmluZworICAgbWF5IGNvbnRhaW4gZW1iZWRkZWQgbnVsbCBjaGFyYWN0ZXJzLCB3aGljaCB3b3VsZCBjYXVzZSB0aGUgc3RyaW5nIHRvIGJlCisgICB0cnVuY2F0ZWQgd2hlbiB1c2VkIGluIG1vc3QgQyBmdW5jdGlvbnMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBQeV9VTklDT0RFKiBQeVVuaWNvZGVfQXNVbmljb2RlQ29weShQeU9iamVjdCAqdW5pY29kZSkKKworICAgQ3JlYXRlIGEgY29weSBvZiBhIFVuaWNvZGUgc3RyaW5nIGVuZGluZyB3aXRoIGEgbnVsIGNoYXJhY3Rlci4gUmV0dXJuICpOVUxMKgorICAgYW5kIHJhaXNlIGEgOmV4YzpgTWVtb3J5RXJyb3JgIGV4Y2VwdGlvbiBvbiBtZW1vcnkgYWxsb2NhdGlvbiBmYWlsdXJlLAorICAgb3RoZXJ3aXNlIHJldHVybiBhIG5ldyBhbGxvY2F0ZWQgYnVmZmVyICh1c2UgOmM6ZnVuYzpgUHlNZW1fRnJlZWAgdG8gZnJlZQorICAgdGhlIGJ1ZmZlcikuIE5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIDpjOnR5cGU6YFB5X1VOSUNPREUqYCBzdHJpbmcgbWF5CisgICBjb250YWluIGVtYmVkZGVkIG51bGwgY2hhcmFjdGVycywgd2hpY2ggd291bGQgY2F1c2UgdGhlIHN0cmluZyB0byBiZQorICAgdHJ1bmNhdGVkIHdoZW4gdXNlZCBpbiBtb3N0IEMgZnVuY3Rpb25zLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKKworICAgUGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcgOmM6ZnVuYzpgUHlVbmljb2RlX0FzVUNTNENvcHlgIG9yIHNpbWlsYXIgbmV3IEFQSXMuCisKKworLi4gYzpmdW5jdGlvbjo6IFB5X3NzaXplX3QgUHlVbmljb2RlX0dldFNpemUoUHlPYmplY3QgKnVuaWNvZGUpCisKKyAgIFJldHVybiB0aGUgc2l6ZSBvZiB0aGUgZGVwcmVjYXRlZCA6Yzp0eXBlOmBQeV9VTklDT0RFYCByZXByZXNlbnRhdGlvbiwgaW4KKyAgIGNvZGUgdW5pdHMgKHRoaXMgaW5jbHVkZXMgc3Vycm9nYXRlIHBhaXJzIGFzIDIgdW5pdHMpLgorCisgICBQbGVhc2UgbWlncmF0ZSB0byB1c2luZyA6YzpmdW5jOmBQeVVuaWNvZGVfR2V0TGVuZ3RoYC4KKworCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Gcm9tT2JqZWN0KFB5T2JqZWN0ICpvYmopCiAKICAgIFNob3J0Y3V0IGZvciBgYFB5VW5pY29kZV9Gcm9tRW5jb2RlZE9iamVjdChvYmosIE5VTEwsICJzdHJpY3QiKWBgIHdoaWNoIGlzIHVzZWQKICAgIHRocm91Z2hvdXQgdGhlIGludGVycHJldGVyIHdoZW5ldmVyIGNvZXJjaW9uIHRvIFVuaWNvZGUgaXMgbmVlZGVkLgogCi1JZiB0aGUgcGxhdGZvcm0gc3VwcG9ydHMgOmM6dHlwZTpgd2NoYXJfdGAgYW5kIHByb3ZpZGVzIGEgaGVhZGVyIGZpbGUgd2NoYXIuaCwKLVB5dGhvbiBjYW4gaW50ZXJmYWNlIGRpcmVjdGx5IHRvIHRoaXMgdHlwZSB1c2luZyB0aGUgZm9sbG93aW5nIGZ1bmN0aW9ucy4KLVN1cHBvcnQgaXMgb3B0aW1pemVkIGlmIFB5dGhvbidzIG93biA6Yzp0eXBlOmBQeV9VTklDT0RFYCB0eXBlIGlzIGlkZW50aWNhbCB0bwotdGhlIHN5c3RlbSdzIDpjOnR5cGU6YHdjaGFyX3RgLgorCitMb2NhbGUgRW5jb2RpbmcKKyIiIiIiIiIiIiIiIiIiIgorCitUaGUgY3VycmVudCBsb2NhbGUgZW5jb2RpbmcgY2FuIGJlIHVzZWQgdG8gZGVjb2RlIHRleHQgZnJvbSB0aGUgb3BlcmF0aW5nCitzeXN0ZW0uCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZUxvY2FsZUFuZFNpemUoY29uc3QgY2hhciAqc3RyLCBQeV9zc2l6ZV90IGxlbiwgaW50IHN1cnJvZ2F0ZWVzY2FwZSkKKworICAgRGVjb2RlIGEgc3RyaW5nIGZyb20gdGhlIGN1cnJlbnQgbG9jYWxlIGVuY29kaW5nLiBUaGUgZGVjb2RlciBpcyBzdHJpY3QgaWYKKyAgICpzdXJyb2dhdGVlc2NhcGUqIGlzIGVxdWFsIHRvIHplcm8sIG90aGVyd2lzZSBpdCB1c2VzIHRoZQorICAgYGAnc3Vycm9nYXRlZXNjYXBlJ2BgIGVycm9yIGhhbmRsZXIgKDpwZXA6YDM4M2ApIHRvIGVzY2FwZSB1bmRlY29kYWJsZQorICAgYnl0ZXMuIElmIGEgYnl0ZSBzZXF1ZW5jZSBjYW4gYmUgZGVjb2RlZCBhcyBhIHN1cnJvZ2F0ZSBjaGFyYWN0ZXIgYW5kCisgICAqc3Vycm9nYXRlZXNjYXBlKiBpcyBub3QgZXF1YWwgdG8gemVybywgdGhlIGJ5dGUgc2VxdWVuY2UgaXMgZXNjYXBlZCB1c2luZworICAgdGhlIGBgJ3N1cnJvZ2F0ZWVzY2FwZSdgYCBlcnJvciBoYW5kbGVyIGluc3RlYWQgb2YgYmVpbmcgZGVjb2RlZC4gICpzdHIqCisgICBtdXN0IGVuZCB3aXRoIGEgbnVsbCBjaGFyYWN0ZXIgYnV0IGNhbm5vdCBjb250YWluIGVtYmVkZGVkIG51bGwgY2hhcmFjdGVycy4KKworICAgLi4gc2VlYWxzbzo6CisKKyAgICAgIFVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZWAgdG8gZGVjb2RlIGEgc3RyaW5nIGZyb20KKyAgICAgIDpjOmRhdGE6YFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmdgICh0aGUgbG9jYWxlIGVuY29kaW5nIHJlYWQgYXQKKyAgICAgIFB5dGhvbiBzdGFydHVwKS4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKGNvbnN0IGNoYXIgKnN0ciwgaW50IHN1cnJvZ2F0ZWVzY2FwZSkKKworICAgU2ltaWxhciB0byA6YzpmdW5jOmBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlQW5kU2l6ZWAsIGJ1dCBjb21wdXRlIHRoZSBzdHJpbmcKKyAgIGxlbmd0aCB1c2luZyA6YzpmdW5jOmBzdHJsZW5gLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGVMb2NhbGUoUHlPYmplY3QgKnVuaWNvZGUsIGludCBzdXJyb2dhdGVlc2NhcGUpCisKKyAgIEVuY29kZSBhIFVuaWNvZGUgb2JqZWN0IHRvIHRoZSBjdXJyZW50IGxvY2FsZSBlbmNvZGluZy4gVGhlIGVuY29kZXIgaXMKKyAgIHN0cmljdCBpZiAqc3Vycm9nYXRlZXNjYXBlKiBpcyBlcXVhbCB0byB6ZXJvLCBvdGhlcndpc2UgaXQgdXNlcyB0aGUKKyAgIGBgJ3N1cnJvZ2F0ZWVzY2FwZSdgYCBlcnJvciBoYW5kbGVyICg6cGVwOmAzODNgKS4gUmV0dXJuIGEgOmNsYXNzOmBieXRlc2AKKyAgIG9iamVjdC4gKnN0ciogY2Fubm90IGNvbnRhaW4gZW1iZWRkZWQgbnVsbCBjaGFyYWN0ZXJzLgorCisgICAuLiBzZWVhbHNvOjoKKworICAgICAgVXNlIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHRgIHRvIGVuY29kZSBhIHN0cmluZyB0bworICAgICAgOmM6ZGF0YTpgUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZ2AgKHRoZSBsb2NhbGUgZW5jb2RpbmcgcmVhZCBhdAorICAgICAgUHl0aG9uIHN0YXJ0dXApLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogCiBGaWxlIFN5c3RlbSBFbmNvZGluZwpAQCAtNDMwLDYgKzgxOCwxMyBAQAogICAgSWYgOmM6ZGF0YTpgUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZ2AgaXMgbm90IHNldCwgZmFsbCBiYWNrIHRvIHRoZQogICAgbG9jYWxlIGVuY29kaW5nLgogCisgICAuLiBzZWVhbHNvOjoKKworICAgICAgOmM6ZGF0YTpgUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZ2AgaXMgaW5pdGlhbGl6ZWQgYXQgc3RhcnR1cCBmcm9tIHRoZQorICAgICAgbG9jYWxlIGVuY29kaW5nIGFuZCBjYW5ub3QgYmUgbW9kaWZpZWQgbGF0ZXIuIElmIHlvdSBuZWVkIHRvIGRlY29kZSBhCisgICAgICBzdHJpbmcgZnJvbSB0aGUgY3VycmVudCBsb2NhbGUgZW5jb2RpbmcsIHVzZQorICAgICAgOmM6ZnVuYzpgUHlVbmljb2RlX0RlY29kZUxvY2FsZUFuZFNpemVgLgorCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgICAgVXNlIGBgJ3N0cmljdCdgYCBlcnJvciBoYW5kbGVyIG9uIFdpbmRvd3MuCiAKQEAgLTQ1OCw2ICs4NTMsMTMgQEAKICAgIElmIDpjOmRhdGE6YFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmdgIGlzIG5vdCBzZXQsIGZhbGwgYmFjayB0byB0aGUKICAgIGxvY2FsZSBlbmNvZGluZy4KIAorICAgLi4gc2VlYWxzbzo6CisKKyAgICAgIDpjOmRhdGE6YFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmdgIGlzIGluaXRpYWxpemVkIGF0IHN0YXJ0dXAgZnJvbSB0aGUKKyAgICAgIGxvY2FsZSBlbmNvZGluZyBhbmQgY2Fubm90IGJlIG1vZGlmaWVkIGxhdGVyLiBJZiB5b3UgbmVlZCB0byBlbmNvZGUgYQorICAgICAgc3RyaW5nIHRvIHRoZSBjdXJyZW50IGxvY2FsZSBlbmNvZGluZywgdXNlCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfRW5jb2RlTG9jYWxlYC4KKwogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKIApAQCAtNDc5LDkgKzg4MSw5IEBACiAgICBDb3B5IHRoZSBVbmljb2RlIG9iamVjdCBjb250ZW50cyBpbnRvIHRoZSA6Yzp0eXBlOmB3Y2hhcl90YCBidWZmZXIgKncqLiAgQXQgbW9zdAogICAgKnNpemUqIDpjOnR5cGU6YHdjaGFyX3RgIGNoYXJhY3RlcnMgYXJlIGNvcGllZCAoZXhjbHVkaW5nIGEgcG9zc2libHkgdHJhaWxpbmcKICAgIDAtdGVybWluYXRpb24gY2hhcmFjdGVyKS4gIFJldHVybiB0aGUgbnVtYmVyIG9mIDpjOnR5cGU6YHdjaGFyX3RgIGNoYXJhY3RlcnMKLSAgIGNvcGllZCBvciAtMSBpbiBjYXNlIG9mIGFuIGVycm9yLiAgTm90ZSB0aGF0IHRoZSByZXN1bHRpbmcgOmM6dHlwZTpgd2NoYXJfdGAKKyAgIGNvcGllZCBvciAtMSBpbiBjYXNlIG9mIGFuIGVycm9yLiAgTm90ZSB0aGF0IHRoZSByZXN1bHRpbmcgOmM6dHlwZTpgd2NoYXJfdCpgCiAgICBzdHJpbmcgbWF5IG9yIG1heSBub3QgYmUgMC10ZXJtaW5hdGVkLiAgSXQgaXMgdGhlIHJlc3BvbnNpYmlsaXR5IG9mIHRoZSBjYWxsZXIKLSAgIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZSA6Yzp0eXBlOmB3Y2hhcl90YCBzdHJpbmcgaXMgMC10ZXJtaW5hdGVkIGluIGNhc2UgdGhpcyBpcworICAgdG8gbWFrZSBzdXJlIHRoYXQgdGhlIDpjOnR5cGU6YHdjaGFyX3QqYCBzdHJpbmcgaXMgMC10ZXJtaW5hdGVkIGluIGNhc2UgdGhpcyBpcwogICAgcmVxdWlyZWQgYnkgdGhlIGFwcGxpY2F0aW9uLiBBbHNvLCBub3RlIHRoYXQgdGhlIDpjOnR5cGU6YHdjaGFyX3QqYCBzdHJpbmcKICAgIG1pZ2h0IGNvbnRhaW4gbnVsbCBjaGFyYWN0ZXJzLCB3aGljaCB3b3VsZCBjYXVzZSB0aGUgc3RyaW5nIHRvIGJlIHRydW5jYXRlZAogICAgd2hlbiB1c2VkIHdpdGggbW9zdCBDIGZ1bmN0aW9ucy4KQEAgLTQ5NywxMiArODk5LDMyIEBACiAgICBSZXR1cm5zIGEgYnVmZmVyIGFsbG9jYXRlZCBieSA6YzpmdW5jOmBQeU1lbV9BbGxvY2AgKHVzZQogICAgOmM6ZnVuYzpgUHlNZW1fRnJlZWAgdG8gZnJlZSBpdCkgb24gc3VjY2Vzcy4gT24gZXJyb3IsIHJldHVybnMgKk5VTEwqLAogICAgKlwqc2l6ZSogaXMgdW5kZWZpbmVkIGFuZCByYWlzZXMgYSA6ZXhjOmBNZW1vcnlFcnJvcmAuIE5vdGUgdGhhdCB0aGUKLSAgIHJlc3VsdGluZyA6Yzp0eXBlOmB3Y2hhcl90KmAgc3RyaW5nIG1pZ2h0IGNvbnRhaW4gbnVsbCBjaGFyYWN0ZXJzLCB3aGljaAorICAgcmVzdWx0aW5nIDpjOnR5cGU6YHdjaGFyX3RgIHN0cmluZyBtaWdodCBjb250YWluIG51bGwgY2hhcmFjdGVycywgd2hpY2gKICAgIHdvdWxkIGNhdXNlIHRoZSBzdHJpbmcgdG8gYmUgdHJ1bmNhdGVkIHdoZW4gdXNlZCB3aXRoIG1vc3QgQyBmdW5jdGlvbnMuCiAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCiAKK1VDUzQgU3VwcG9ydAorIiIiIiIiIiIiIiIiCisKKy4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBYWFggYXJlIHRoZXNlIG1lYW50IHRvIGJlIHB1YmxpYz8KKworLi4gYzpmdW5jdGlvbjo6IHNpemVfdCBQeV9VQ1M0X3N0cmxlbihjb25zdCBQeV9VQ1M0ICp1KQorICAgICAgICAgICAgICAgIFB5X1VDUzQqIFB5X1VDUzRfc3RyY3B5KFB5X1VDUzQgKnMxLCBjb25zdCBQeV9VQ1M0ICpzMikKKyAgICAgICAgICAgICAgICBQeV9VQ1M0KiBQeV9VQ1M0X3N0cm5jcHkoUHlfVUNTNCAqczEsIGNvbnN0IFB5X1VDUzQgKnMyLCBzaXplX3QgbikKKyAgICAgICAgICAgICAgICBQeV9VQ1M0KiBQeV9VQ1M0X3N0cmNhdChQeV9VQ1M0ICpzMSwgY29uc3QgUHlfVUNTNCAqczIpCisgICAgICAgICAgICAgICAgaW50IFB5X1VDUzRfc3RyY21wKGNvbnN0IFB5X1VDUzQgKnMxLCBjb25zdCBQeV9VQ1M0ICpzMikKKyAgICAgICAgICAgICAgICBpbnQgUHlfVUNTNF9zdHJuY21wKGNvbnN0IFB5X1VDUzQgKnMxLCBjb25zdCBQeV9VQ1M0ICpzMiwgc2l6ZV90IG4pCisgICAgICAgICAgICAgICAgUHlfVUNTNCogUHlfVUNTNF9zdHJjaHIoY29uc3QgUHlfVUNTNCAqcywgUHlfVUNTNCBjKQorICAgICAgICAgICAgICAgIFB5X1VDUzQqIFB5X1VDUzRfc3RycmNocihjb25zdCBQeV9VQ1M0ICpzLCBQeV9VQ1M0IGMpCisKKyAgIFRoZXNlIHV0aWxpdHkgZnVuY3Rpb25zIHdvcmsgb24gc3RyaW5ncyBvZiA6Yzp0eXBlOmBQeV9VQ1M0YCBjaGFyYWN0ZXJzIGFuZAorICAgb3RoZXJ3aXNlIGJlaGF2ZSBsaWtlIHRoZSBDIHN0YW5kYXJkIGxpYnJhcnkgZnVuY3Rpb25zIHdpdGggdGhlIHNhbWUgbmFtZS4KKworCiAuLiBfYnVpbHRpbmNvZGVjczoKIAogQnVpbHQtaW4gQ29kZWNzCkBAIC01MzcsNyArOTU5LDggQEAKIFRoZXNlIGFyZSB0aGUgZ2VuZXJpYyBjb2RlYyBBUElzOgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZShjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVuY29kaW5nLCBjb25zdCBjaGFyICplcnJvcnMpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGUoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBDcmVhdGUgYSBVbmljb2RlIG9iamVjdCBieSBkZWNvZGluZyAqc2l6ZSogYnl0ZXMgb2YgdGhlIGVuY29kZWQgc3RyaW5nICpzKi4KICAgICplbmNvZGluZyogYW5kICplcnJvcnMqIGhhdmUgdGhlIHNhbWUgbWVhbmluZyBhcyB0aGUgcGFyYW1ldGVycyBvZiB0aGUgc2FtZSBuYW1lCkBAIC01NDYsNyArOTY5LDE4IEBACiAgICB0aGUgY29kZWMuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZW5jb2RpbmcsIGNvbnN0IGNoYXIgKmVycm9ycykKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZyhQeU9iamVjdCAqdW5pY29kZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsIGNvbnN0IGNoYXIgKmVycm9ycykKKworICAgRW5jb2RlIGEgVW5pY29kZSBvYmplY3QgYW5kIHJldHVybiB0aGUgcmVzdWx0IGFzIFB5dGhvbiBieXRlcyBvYmplY3QuCisgICAqZW5jb2RpbmcqIGFuZCAqZXJyb3JzKiBoYXZlIHRoZSBzYW1lIG1lYW5pbmcgYXMgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIHNhbWUKKyAgIG5hbWUgaW4gdGhlIFVuaWNvZGUgOm1ldGg6YGVuY29kZWAgbWV0aG9kLiBUaGUgY29kZWMgdG8gYmUgdXNlZCBpcyBsb29rZWQgdXAKKyAgIHVzaW5nIHRoZSBQeXRob24gY29kZWMgcmVnaXN0cnkuIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkKKyAgIHRoZSBjb2RlYy4KKworCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGUoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBFbmNvZGUgdGhlIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciAqcyogb2YgdGhlIGdpdmVuICpzaXplKiBhbmQgcmV0dXJuIGEgUHl0aG9uCiAgICBieXRlcyBvYmplY3QuICAqZW5jb2RpbmcqIGFuZCAqZXJyb3JzKiBoYXZlIHRoZSBzYW1lIG1lYW5pbmcgYXMgdGhlCkBAIC01NTQsMTQgKzk4OCw5IEBACiAgICB0byBiZSB1c2VkIGlzIGxvb2tlZCB1cCB1c2luZyB0aGUgUHl0aG9uIGNvZGVjIHJlZ2lzdHJ5LiAgUmV0dXJuICpOVUxMKiBpZiBhbgogICAgZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgogCi0KLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZyhQeU9iamVjdCAqdW5pY29kZSwgY29uc3QgY2hhciAqZW5jb2RpbmcsIGNvbnN0IGNoYXIgKmVycm9ycykKLQotICAgRW5jb2RlIGEgVW5pY29kZSBvYmplY3QgYW5kIHJldHVybiB0aGUgcmVzdWx0IGFzIFB5dGhvbiBieXRlcyBvYmplY3QuCi0gICAqZW5jb2RpbmcqIGFuZCAqZXJyb3JzKiBoYXZlIHRoZSBzYW1lIG1lYW5pbmcgYXMgdGhlIHBhcmFtZXRlcnMgb2YgdGhlIHNhbWUKLSAgIG5hbWUgaW4gdGhlIFVuaWNvZGUgOm1ldGg6YGVuY29kZWAgbWV0aG9kLiBUaGUgY29kZWMgdG8gYmUgdXNlZCBpcyBsb29rZWQgdXAKLSAgIHVzaW5nIHRoZSBQeXRob24gY29kZWMgcmVnaXN0cnkuIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkKLSAgIHRoZSBjb2RlYy4KKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBBUEk7IHBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nYC4KIAogCiBVVEYtOCBDb2RlY3MKQEAgLTU3Niw3ICsxMDA1LDggQEAKICAgICpzKi4gUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlVVRGOFN0YXRlZnVsKGNvbnN0IGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzLCBQeV9zc2l6ZV90ICpjb25zdW1lZCkKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywgUHlfc3NpemVfdCAqY29uc3VtZWQpCiAKICAgIElmICpjb25zdW1lZCogaXMgKk5VTEwqLCBiZWhhdmUgbGlrZSA6YzpmdW5jOmBQeVVuaWNvZGVfRGVjb2RlVVRGOGAuIElmCiAgICAqY29uc3VtZWQqIGlzIG5vdCAqTlVMTCosIHRyYWlsaW5nIGluY29tcGxldGUgVVRGLTggYnl0ZSBzZXF1ZW5jZXMgd2lsbCBub3QgYmUKQEAgLTU4NCwxMyArMTAxNCw2IEBACiAgICB0aGF0IGhhdmUgYmVlbiBkZWNvZGVkIHdpbGwgYmUgc3RvcmVkIGluICpjb25zdW1lZCouCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlVVRGOChjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycykKLQotICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgKnMqIG9mIHRoZSBnaXZlbiAqc2l6ZSogdXNpbmcgVVRGLTggYW5kCi0gICByZXR1cm4gYSBQeXRob24gYnl0ZXMgb2JqZWN0LiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieQotICAgdGhlIGNvZGVjLgotCi0KIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzVVRGOFN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKIAogICAgRW5jb2RlIGEgVW5pY29kZSBvYmplY3QgdXNpbmcgVVRGLTggYW5kIHJldHVybiB0aGUgcmVzdWx0IGFzIFB5dGhvbiBieXRlcwpAQCAtNTk4LDEzICsxMDIxLDQ4IEBACiAgICByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKKy4uIGM6ZnVuY3Rpb246OiBjaGFyKiBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZShQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCAqc2l6ZSkKKworICAgUmV0dXJuIGEgcG9pbnRlciB0byB0aGUgZGVmYXVsdCBlbmNvZGluZyAoVVRGLTgpIG9mIHRoZSBVbmljb2RlIG9iamVjdCwgYW5kCisgICBzdG9yZSB0aGUgc2l6ZSBvZiB0aGUgZW5jb2RlZCByZXByZXNlbnRhdGlvbiAoaW4gYnl0ZXMpIGluICpzaXplKi4gICpzaXplKgorICAgY2FuIGJlICpOVUxMKiwgaW4gdGhpcyBjYXNlIG5vIHNpemUgd2lsbCBiZSBzdG9yZWQuCisKKyAgIEluIHRoZSBjYXNlIG9mIGFuIGVycm9yLCAqTlVMTCogaXMgcmV0dXJuZWQgd2l0aCBhbiBleGNlcHRpb24gc2V0IGFuZCBubworICAgKnNpemUqIGlzIHN0b3JlZC4KKworICAgVGhpcyBjYWNoZXMgdGhlIFVURi04IHJlcHJlc2VudGF0aW9uIG9mIHRoZSBzdHJpbmcgaW4gdGhlIFVuaWNvZGUgb2JqZWN0LCBhbmQKKyAgIHN1YnNlcXVlbnQgY2FsbHMgd2lsbCByZXR1cm4gYSBwb2ludGVyIHRvIHRoZSBzYW1lIGJ1ZmZlci4gIFRoZSBjYWxsZXIgaXMgbm90CisgICByZXNwb25zaWJsZSBmb3IgZGVhbGxvY2F0aW5nIHRoZSBidWZmZXIuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGM6ZnVuY3Rpb246OiBjaGFyKiBQeVVuaWNvZGVfQXNVVEY4KFB5T2JqZWN0ICp1bmljb2RlKQorCisgICBBcyA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZWAsIGJ1dCBkb2VzIG5vdCBzdG9yZSB0aGUgc2l6ZS4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlVVRGOChjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycykKKworICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgKnMqIG9mIHRoZSBnaXZlbiAqc2l6ZSogdXNpbmcgVVRGLTggYW5kCisgICByZXR1cm4gYSBQeXRob24gYnl0ZXMgb2JqZWN0LiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieQorICAgdGhlIGNvZGVjLgorCisgICAuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisgICAgICBQYXJ0IG9mIHRoZSBvbGQtc3R5bGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgQVBJOyBwbGVhc2UgbWlncmF0ZSB0byB1c2luZworICAgICAgOmM6ZnVuYzpgUHlVbmljb2RlX0FzVVRGOFN0cmluZ2Agb3IgOmM6ZnVuYzpgUHlVbmljb2RlX0FzVVRGOEFuZFNpemVgLgorCisKIFVURi0zMiBDb2RlY3MKICIiIiIiIiIiIiIiIiIKIAogVGhlc2UgYXJlIHRoZSBVVEYtMzIgY29kZWMgQVBJczoKIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVVVEYzMihjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycywgaW50ICpieXRlb3JkZXIpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVVVEYzMihjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywgaW50ICpieXRlb3JkZXIpCiAKICAgIERlY29kZSAqc2l6ZSogYnl0ZXMgZnJvbSBhIFVURi0zMiBlbmNvZGVkIGJ1ZmZlciBzdHJpbmcgYW5kIHJldHVybiB0aGUKICAgIGNvcnJlc3BvbmRpbmcgVW5pY29kZSBvYmplY3QuICAqZXJyb3JzKiAoaWYgbm9uLSpOVUxMKikgZGVmaW5lcyB0aGUgZXJyb3IKQEAgLTYzMiw3ICsxMDkwLDggQEAKICAgIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVURjMyU3RhdGVmdWwoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMsIGludCAqYnl0ZW9yZGVyLCBQeV9zc2l6ZV90ICpjb25zdW1lZCkKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVURjMyU3RhdGVmdWwoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsIGludCAqYnl0ZW9yZGVyLCBQeV9zc2l6ZV90ICpjb25zdW1lZCkKIAogICAgSWYgKmNvbnN1bWVkKiBpcyAqTlVMTCosIGJlaGF2ZSBsaWtlIDpjOmZ1bmM6YFB5VW5pY29kZV9EZWNvZGVVVEYzMmAuIElmCiAgICAqY29uc3VtZWQqIGlzIG5vdCAqTlVMTCosIDpjOmZ1bmM6YFB5VW5pY29kZV9EZWNvZGVVVEYzMlN0YXRlZnVsYCB3aWxsIG5vdCB0cmVhdApAQCAtNjQxLDcgKzExMDAsMTUgQEAKICAgIHRoYXQgaGF2ZSBiZWVuIGRlY29kZWQgd2lsbCBiZSBzdG9yZWQgaW4gKmNvbnN1bWVkKi4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGVVVEYzMihjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycywgaW50IGJ5dGVvcmRlcikKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzVVRGMzJTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCisKKyAgIFJldHVybiBhIFB5dGhvbiBieXRlIHN0cmluZyB1c2luZyB0aGUgVVRGLTMyIGVuY29kaW5nIGluIG5hdGl2ZSBieXRlCisgICBvcmRlci4gVGhlIHN0cmluZyBhbHdheXMgc3RhcnRzIHdpdGggYSBCT00gbWFyay4gIEVycm9yIGhhbmRsaW5nIGlzICJzdHJpY3QiLgorICAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlVVRGMzIoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsIGludCBieXRlb3JkZXIpCiAKICAgIFJldHVybiBhIFB5dGhvbiBieXRlcyBvYmplY3QgaG9sZGluZyB0aGUgVVRGLTMyIGVuY29kZWQgdmFsdWUgb2YgdGhlIFVuaWNvZGUKICAgIGRhdGEgaW4gKnMqLiAgT3V0cHV0IGlzIHdyaXR0ZW4gYWNjb3JkaW5nIHRvIHRoZSBmb2xsb3dpbmcgYnl0ZSBvcmRlcjo6CkBAIC02NTgsMTIgKzExMjUsOSBAQAogCiAgICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KIAotCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc1VURjMyU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQotCi0gICBSZXR1cm4gYSBQeXRob24gYnl0ZSBzdHJpbmcgdXNpbmcgdGhlIFVURi0zMiBlbmNvZGluZyBpbiBuYXRpdmUgYnl0ZQotICAgb3JkZXIuIFRoZSBzdHJpbmcgYWx3YXlzIHN0YXJ0cyB3aXRoIGEgQk9NIG1hcmsuICBFcnJvciBoYW5kbGluZyBpcyAic3RyaWN0Ii4KLSAgIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgorICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIDpjOnR5cGU6YFB5X1VOSUNPREVgIEFQSTsgcGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcKKyAgICAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VURjMyU3RyaW5nYC4KIAogCiBVVEYtMTYgQ29kZWNzCkBAIC02NzIsNyArMTEzNiw4IEBACiBUaGVzZSBhcmUgdGhlIFVURi0xNiBjb2RlYyBBUElzOgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVURjE2KGNvbnN0IGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzLCBpbnQgKmJ5dGVvcmRlcikKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVURjE2KGNvbnN0IGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLCBpbnQgKmJ5dGVvcmRlcikKIAogICAgRGVjb2RlICpzaXplKiBieXRlcyBmcm9tIGEgVVRGLTE2IGVuY29kZWQgYnVmZmVyIHN0cmluZyBhbmQgcmV0dXJuIHRoZQogICAgY29ycmVzcG9uZGluZyBVbmljb2RlIG9iamVjdC4gICplcnJvcnMqIChpZiBub24tKk5VTEwqKSBkZWZpbmVzIHRoZSBlcnJvcgpAQCAtNjk5LDcgKzExNjQsOCBAQAogICAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlVVRGMTZTdGF0ZWZ1bChjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycywgaW50ICpieXRlb3JkZXIsIFB5X3NzaXplX3QgKmNvbnN1bWVkKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlVVRGMTZTdGF0ZWZ1bChjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywgaW50ICpieXRlb3JkZXIsIFB5X3NzaXplX3QgKmNvbnN1bWVkKQogCiAgICBJZiAqY29uc3VtZWQqIGlzICpOVUxMKiwgYmVoYXZlIGxpa2UgOmM6ZnVuYzpgUHlVbmljb2RlX0RlY29kZVVURjE2YC4gSWYKICAgICpjb25zdW1lZCogaXMgbm90ICpOVUxMKiwgOmM6ZnVuYzpgUHlVbmljb2RlX0RlY29kZVVURjE2U3RhdGVmdWxgIHdpbGwgbm90IHRyZWF0CkBAIC03MDgsNyArMTE3NCwxNSBAQAogICAgbnVtYmVyIG9mIGJ5dGVzIHRoYXQgaGF2ZSBiZWVuIGRlY29kZWQgd2lsbCBiZSBzdG9yZWQgaW4gKmNvbnN1bWVkKi4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGVVVEYxNihjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycywgaW50IGJ5dGVvcmRlcikKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzVVRGMTZTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCisKKyAgIFJldHVybiBhIFB5dGhvbiBieXRlIHN0cmluZyB1c2luZyB0aGUgVVRGLTE2IGVuY29kaW5nIGluIG5hdGl2ZSBieXRlCisgICBvcmRlci4gVGhlIHN0cmluZyBhbHdheXMgc3RhcnRzIHdpdGggYSBCT00gbWFyay4gIEVycm9yIGhhbmRsaW5nIGlzICJzdHJpY3QiLgorICAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCisKKworLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlVVRGMTYoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsIGludCBieXRlb3JkZXIpCiAKICAgIFJldHVybiBhIFB5dGhvbiBieXRlcyBvYmplY3QgaG9sZGluZyB0aGUgVVRGLTE2IGVuY29kZWQgdmFsdWUgb2YgdGhlIFVuaWNvZGUKICAgIGRhdGEgaW4gKnMqLiAgT3V0cHV0IGlzIHdyaXR0ZW4gYWNjb3JkaW5nIHRvIHRoZSBmb2xsb3dpbmcgYnl0ZSBvcmRlcjo6CkBAIC03MjYsMTIgKzEyMDAsOSBAQAogCiAgICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KIAotCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc1VURjE2U3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQotCi0gICBSZXR1cm4gYSBQeXRob24gYnl0ZSBzdHJpbmcgdXNpbmcgdGhlIFVURi0xNiBlbmNvZGluZyBpbiBuYXRpdmUgYnl0ZQotICAgb3JkZXIuIFRoZSBzdHJpbmcgYWx3YXlzIHN0YXJ0cyB3aXRoIGEgQk9NIG1hcmsuICBFcnJvciBoYW5kbGluZyBpcyAic3RyaWN0Ii4KLSAgIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgorICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIDpjOnR5cGU6YFB5X1VOSUNPREVgIEFQSTsgcGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcKKyAgICAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VURjE2U3RyaW5nYC4KIAogCiBVVEYtNyBDb2RlY3MKQEAgLTc0Niw3ICsxMjE3LDggQEAKICAgICpzKi4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVURjdTdGF0ZWZ1bChjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycywgUHlfc3NpemVfdCAqY29uc3VtZWQpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVVVEY3U3RhdGVmdWwoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsIFB5X3NzaXplX3QgKmNvbnN1bWVkKQogCiAgICBJZiAqY29uc3VtZWQqIGlzICpOVUxMKiwgYmVoYXZlIGxpa2UgOmM6ZnVuYzpgUHlVbmljb2RlX0RlY29kZVVURjdgLiAgSWYKICAgICpjb25zdW1lZCogaXMgbm90ICpOVUxMKiwgdHJhaWxpbmcgaW5jb21wbGV0ZSBVVEYtNyBiYXNlLTY0IHNlY3Rpb25zIHdpbGwgbm90CkBAIC03NTQsNyArMTIyNiw4IEBACiAgICBieXRlcyB0aGF0IGhhdmUgYmVlbiBkZWNvZGVkIHdpbGwgYmUgc3RvcmVkIGluICpjb25zdW1lZCouCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlVVRGNyhjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIGludCBiYXNlNjRTZXRPLCBpbnQgYmFzZTY0V2hpdGVTcGFjZSwgY29uc3QgY2hhciAqZXJyb3JzKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlVVRGNyhjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBiYXNlNjRTZXRPLCBpbnQgYmFzZTY0V2hpdGVTcGFjZSwgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBFbmNvZGUgdGhlIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gc2l6ZSB1c2luZyBVVEYtNyBhbmQKICAgIHJldHVybiBhIFB5dGhvbiBieXRlcyBvYmplY3QuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5CkBAIC03NjUsNiArMTIzOCwxMSBAQAogICAgbm9uemVybywgd2hpdGVzcGFjZSB3aWxsIGJlIGVuY29kZWQgaW4gYmFzZS02NC4gIEJvdGggYXJlIHNldCB0byB6ZXJvIGZvciB0aGUKICAgIFB5dGhvbiAidXRmLTciIGNvZGVjLgogCisgICAuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisgICAgICBQYXJ0IG9mIHRoZSBvbGQtc3R5bGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgQVBJLgorCisgICAuLiBYWFggcmVwbGFjZSB3aXRoIHdoYXQ/CisKIAogVW5pY29kZS1Fc2NhcGUgQ29kZWNzCiAiIiIiIiIiIiIiIiIiIiIiIiIiIiIKQEAgLTc3MiwxOSArMTI1MCwxMyBAQAogVGhlc2UgYXJlIHRoZSAiVW5pY29kZSBFc2NhcGUiIGNvZGVjIEFQSXM6CiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlVW5pY29kZUVzY2FwZShjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycykKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVVuaWNvZGVFc2NhcGUoY29uc3QgY2hhciAqcywgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMpCiAKICAgIENyZWF0ZSBhIFVuaWNvZGUgb2JqZWN0IGJ5IGRlY29kaW5nICpzaXplKiBieXRlcyBvZiB0aGUgVW5pY29kZS1Fc2NhcGUgZW5jb2RlZAogICAgc3RyaW5nICpzKi4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZVVuaWNvZGVFc2NhcGUoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplKQotCi0gICBFbmNvZGUgdGhlIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gKnNpemUqIHVzaW5nIFVuaWNvZGUtRXNjYXBlIGFuZAotICAgcmV0dXJuIGEgUHl0aG9uIHN0cmluZyBvYmplY3QuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZQotICAgY29kZWMuCi0KLQogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQogCiAgICBFbmNvZGUgYSBVbmljb2RlIG9iamVjdCB1c2luZyBVbmljb2RlLUVzY2FwZSBhbmQgcmV0dXJuIHRoZSByZXN1bHQgYXMgUHl0aG9uCkBAIC03OTIsMjUgKzEyNjQsMzAgQEAKICAgIHJhaXNlZCBieSB0aGUgY29kZWMuCiAKIAorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlVW5pY29kZUVzY2FwZShjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUpCisKKyAgIEVuY29kZSB0aGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYnVmZmVyIG9mIHRoZSBnaXZlbiAqc2l6ZSogdXNpbmcgVW5pY29kZS1Fc2NhcGUgYW5kCisgICByZXR1cm4gYSBQeXRob24gc3RyaW5nIG9iamVjdC4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlCisgICBjb2RlYy4KKworICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIDpjOnR5cGU6YFB5X1VOSUNPREVgIEFQSTsgcGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcKKyAgICAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VuaWNvZGVFc2NhcGVTdHJpbmdgLgorCisKIFJhdy1Vbmljb2RlLUVzY2FwZSBDb2RlY3MKICIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKIAogVGhlc2UgYXJlIHRoZSAiUmF3IFVuaWNvZGUgRXNjYXBlIiBjb2RlYyBBUElzOgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZVJhd1VuaWNvZGVFc2NhcGUoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVSYXdVbmljb2RlRXNjYXBlKGNvbnN0IGNoYXIgKnMsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBDcmVhdGUgYSBVbmljb2RlIG9iamVjdCBieSBkZWNvZGluZyAqc2l6ZSogYnl0ZXMgb2YgdGhlIFJhdy1Vbmljb2RlLUVzY2FwZQogICAgZW5jb2RlZCBzdHJpbmcgKnMqLiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlUmF3VW5pY29kZUVzY2FwZShjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIGNvbnN0IGNoYXIgKmVycm9ycykKLQotICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuICpzaXplKiB1c2luZyBSYXctVW5pY29kZS1Fc2NhcGUKLSAgIGFuZCByZXR1cm4gYSBQeXRob24gc3RyaW5nIG9iamVjdC4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkKLSAgIHRoZSBjb2RlYy4KLQotCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCiAKICAgIEVuY29kZSBhIFVuaWNvZGUgb2JqZWN0IHVzaW5nIFJhdy1Vbmljb2RlLUVzY2FwZSBhbmQgcmV0dXJuIHRoZSByZXN1bHQgYXMKQEAgLTgxOCw2ICsxMjk1LDE4IEBACiAgICB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KIAogCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGVSYXdVbmljb2RlRXNjYXBlKGNvbnN0IFB5X1VOSUNPREUgKnMsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzKQorCisgICBFbmNvZGUgdGhlIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gKnNpemUqIHVzaW5nIFJhdy1Vbmljb2RlLUVzY2FwZQorICAgYW5kIHJldHVybiBhIFB5dGhvbiBzdHJpbmcgb2JqZWN0LiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieQorICAgdGhlIGNvZGVjLgorCisgICAuLiBkZXByZWNhdGVkLXJlbW92ZWQ6OiAzLjMgNC4wCisgICAgICBQYXJ0IG9mIHRoZSBvbGQtc3R5bGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgQVBJOyBwbGVhc2UgbWlncmF0ZSB0byB1c2luZworICAgICAgOmM6ZnVuYzpgUHlVbmljb2RlX0FzUmF3VW5pY29kZUVzY2FwZVN0cmluZ2AuCisKKwogTGF0aW4tMSBDb2RlY3MKICIiIiIiIiIiIiIiIiIiCiAKQEAgLTgzMSwxOCArMTMyMCwyMiBAQAogICAgKnMqLiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCiAKIAorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfQXNMYXRpbjFTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCisKKyAgIEVuY29kZSBhIFVuaWNvZGUgb2JqZWN0IHVzaW5nIExhdGluLTEgYW5kIHJldHVybiB0aGUgcmVzdWx0IGFzIFB5dGhvbiBieXRlcworICAgb2JqZWN0LiAgRXJyb3IgaGFuZGxpbmcgaXMgInN0cmljdCIuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMKKyAgIHJhaXNlZCBieSB0aGUgY29kZWMuCisKKwogLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRW5jb2RlTGF0aW4xKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBFbmNvZGUgdGhlIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gKnNpemUqIHVzaW5nIExhdGluLTEgYW5kCiAgICByZXR1cm4gYSBQeXRob24gYnl0ZXMgb2JqZWN0LiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieQogICAgdGhlIGNvZGVjLgogCi0KLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQotCi0gICBFbmNvZGUgYSBVbmljb2RlIG9iamVjdCB1c2luZyBMYXRpbi0xIGFuZCByZXR1cm4gdGhlIHJlc3VsdCBhcyBQeXRob24gYnl0ZXMKLSAgIG9iamVjdC4gIEVycm9yIGhhbmRsaW5nIGlzICJzdHJpY3QiLiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzCi0gICByYWlzZWQgYnkgdGhlIGNvZGVjLgorICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIDpjOnR5cGU6YFB5X1VOSUNPREVgIEFQSTsgcGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcKKyAgICAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc0xhdGluMVN0cmluZ2AuCiAKIAogQVNDSUkgQ29kZWNzCkBAIC04NTgsMTggKzEzNTEsMjIgQEAKICAgICpzKi4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlIGNvZGVjLgogCiAKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0FzQVNDSUlTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCisKKyAgIEVuY29kZSBhIFVuaWNvZGUgb2JqZWN0IHVzaW5nIEFTQ0lJIGFuZCByZXR1cm4gdGhlIHJlc3VsdCBhcyBQeXRob24gYnl0ZXMKKyAgIG9iamVjdC4gIEVycm9yIGhhbmRsaW5nIGlzICJzdHJpY3QiLiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzCisgICByYWlzZWQgYnkgdGhlIGNvZGVjLgorCisKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZUFTQ0lJKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgY29uc3QgY2hhciAqZXJyb3JzKQogCiAgICBFbmNvZGUgdGhlIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gKnNpemUqIHVzaW5nIEFTQ0lJIGFuZAogICAgcmV0dXJuIGEgUHl0aG9uIGJ5dGVzIG9iamVjdC4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkKICAgIHRoZSBjb2RlYy4KIAotCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQotCi0gICBFbmNvZGUgYSBVbmljb2RlIG9iamVjdCB1c2luZyBBU0NJSSBhbmQgcmV0dXJuIHRoZSByZXN1bHQgYXMgUHl0aG9uIGJ5dGVzCi0gICBvYmplY3QuICBFcnJvciBoYW5kbGluZyBpcyAic3RyaWN0Ii4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcwotICAgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBBUEk7IHBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfQXNBU0NJSVN0cmluZ2AuCiAKIAogQ2hhcmFjdGVyIE1hcCBDb2RlY3MKQEAgLTg5OCw3ICsxMzk1LDggQEAKIAogVGhlc2UgYXJlIHRoZSBtYXBwaW5nIGNvZGVjIEFQSXM6CiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0RlY29kZUNoYXJtYXAoY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLCBQeU9iamVjdCAqbWFwcGluZywgY29uc3QgY2hhciAqZXJyb3JzKQorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlQ2hhcm1hcChjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nLCBjb25zdCBjaGFyICplcnJvcnMpCiAKICAgIENyZWF0ZSBhIFVuaWNvZGUgb2JqZWN0IGJ5IGRlY29kaW5nICpzaXplKiBieXRlcyBvZiB0aGUgZW5jb2RlZCBzdHJpbmcgKnMqIHVzaW5nCiAgICB0aGUgZ2l2ZW4gKm1hcHBpbmcqIG9iamVjdC4gIFJldHVybiAqTlVMTCogaWYgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQgYnkgdGhlCkBAIC05MDgsMTMgKzE0MDYsNiBAQAogICAgdHJlYXRlZCBhcyAidW5kZWZpbmVkIG1hcHBpbmciLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZUNoYXJtYXAoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBQeU9iamVjdCAqbWFwcGluZywgY29uc3QgY2hhciAqZXJyb3JzKQotCi0gICBFbmNvZGUgdGhlIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gKnNpemUqIHVzaW5nIHRoZSBnaXZlbgotICAgKm1hcHBpbmcqIG9iamVjdCBhbmQgcmV0dXJuIGEgUHl0aG9uIHN0cmluZyBvYmplY3QuIFJldHVybiAqTlVMTCogaWYgYW4KLSAgIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZSBjb2RlYy4KLQotCiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9Bc0NoYXJtYXBTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUsIFB5T2JqZWN0ICptYXBwaW5nKQogCiAgICBFbmNvZGUgYSBVbmljb2RlIG9iamVjdCB1c2luZyB0aGUgZ2l2ZW4gKm1hcHBpbmcqIG9iamVjdCBhbmQgcmV0dXJuIHRoZSByZXN1bHQKQEAgLTkyNCw3ICsxNDE1LDggQEAKIFRoZSBmb2xsb3dpbmcgY29kZWMgQVBJIGlzIHNwZWNpYWwgaW4gdGhhdCBtYXBzIFVuaWNvZGUgdG8gVW5pY29kZS4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9UcmFuc2xhdGVDaGFybWFwKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgUHlPYmplY3QgKnRhYmxlLCBjb25zdCBjaGFyICplcnJvcnMpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9UcmFuc2xhdGVDaGFybWFwKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnRhYmxlLCBjb25zdCBjaGFyICplcnJvcnMpCiAKICAgIFRyYW5zbGF0ZSBhIDpjOnR5cGU6YFB5X1VOSUNPREVgIGJ1ZmZlciBvZiB0aGUgZ2l2ZW4gKnNpemUqIGJ5IGFwcGx5aW5nIGEKICAgIGNoYXJhY3RlciBtYXBwaW5nICp0YWJsZSogdG8gaXQgYW5kIHJldHVybiB0aGUgcmVzdWx0aW5nIFVuaWNvZGUgb2JqZWN0LiAgUmV0dXJuCkBAIC05MzcsNiArMTQyOSwyMiBAQAogICAgYW5kIHNlcXVlbmNlcyB3b3JrIHdlbGwuICBVbm1hcHBlZCBjaGFyYWN0ZXIgb3JkaW5hbHMgKG9uZXMgd2hpY2ggY2F1c2UgYQogICAgOmV4YzpgTG9va3VwRXJyb3JgKSBhcmUgbGVmdCB1bnRvdWNoZWQgYW5kIGFyZSBjb3BpZWQgYXMtaXMuCiAKKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBBUEkuCisKKyAgIC4uIFhYWCByZXBsYWNlIHdpdGggd2hhdD8KKworCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9FbmNvZGVDaGFybWFwKGNvbnN0IFB5X1VOSUNPREUgKnMsIFB5X3NzaXplX3Qgc2l6ZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm1hcHBpbmcsIGNvbnN0IGNoYXIgKmVycm9ycykKKworICAgRW5jb2RlIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBidWZmZXIgb2YgdGhlIGdpdmVuICpzaXplKiB1c2luZyB0aGUgZ2l2ZW4KKyAgICptYXBwaW5nKiBvYmplY3QgYW5kIHJldHVybiBhIFB5dGhvbiBzdHJpbmcgb2JqZWN0LiBSZXR1cm4gKk5VTEwqIGlmIGFuCisgICBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCisKKyAgIC4uIGRlcHJlY2F0ZWQtcmVtb3ZlZDo6IDMuMyA0LjAKKyAgICAgIFBhcnQgb2YgdGhlIG9sZC1zdHlsZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBBUEk7IHBsZWFzZSBtaWdyYXRlIHRvIHVzaW5nCisgICAgICA6YzpmdW5jOmBQeVVuaWNvZGVfQXNDaGFybWFwU3RyaW5nYC4KIAogCiBNQkNTIGNvZGVjcyBmb3IgV2luZG93cwpAQCAtOTUzLDcgKzE0NjEsOCBAQAogICAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfRGVjb2RlTUJDU1N0YXRlZnVsKGNvbnN0IGNoYXIgKnMsIGludCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMsIGludCAqY29uc3VtZWQpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9EZWNvZGVNQkNTU3RhdGVmdWwoY29uc3QgY2hhciAqcywgaW50IHNpemUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywgaW50ICpjb25zdW1lZCkKIAogICAgSWYgKmNvbnN1bWVkKiBpcyAqTlVMTCosIGJlaGF2ZSBsaWtlIDpjOmZ1bmM6YFB5VW5pY29kZV9EZWNvZGVNQkNTYC4gSWYKICAgICpjb25zdW1lZCogaXMgbm90ICpOVUxMKiwgOmM6ZnVuYzpgUHlVbmljb2RlX0RlY29kZU1CQ1NTdGF0ZWZ1bGAgd2lsbCBub3QgZGVjb2RlCkBAIC05NjEsMTggKzE0NzAsMzEgQEAKICAgIGluICpjb25zdW1lZCouCiAKIAorLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfQXNNQkNTU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorCisgICBFbmNvZGUgYSBVbmljb2RlIG9iamVjdCB1c2luZyBNQkNTIGFuZCByZXR1cm4gdGhlIHJlc3VsdCBhcyBQeXRob24gYnl0ZXMKKyAgIG9iamVjdC4gIEVycm9yIGhhbmRsaW5nIGlzICJzdHJpY3QiLiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzCisgICByYWlzZWQgYnkgdGhlIGNvZGVjLgorCisKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZUNvZGVQYWdlKGludCBjb2RlX3BhZ2UsIFB5T2JqZWN0ICp1bmljb2RlLCBjb25zdCBjaGFyICplcnJvcnMpCisKKyAgIEVuY29kZSB0aGUgVW5pY29kZSBvYmplY3QgdXNpbmcgdGhlIHNwZWNpZmllZCBjb2RlIHBhZ2UgYW5kIHJldHVybiBhIFB5dGhvbgorICAgYnl0ZXMgb2JqZWN0LiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzIHJhaXNlZCBieSB0aGUgY29kZWMuIFVzZQorICAgOmM6ZGF0YTpgQ1BfQUNQYCBjb2RlIHBhZ2UgdG8gZ2V0IHRoZSBNQkNTIGVuY29kZXIuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX0VuY29kZU1CQ1MoY29uc3QgUHlfVU5JQ09ERSAqcywgUHlfc3NpemVfdCBzaXplLCBjb25zdCBjaGFyICplcnJvcnMpCiAKICAgIEVuY29kZSB0aGUgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYnVmZmVyIG9mIHRoZSBnaXZlbiAqc2l6ZSogdXNpbmcgTUJDUyBhbmQgcmV0dXJuCiAgICBhIFB5dGhvbiBieXRlcyBvYmplY3QuICBSZXR1cm4gKk5VTEwqIGlmIGFuIGV4Y2VwdGlvbiB3YXMgcmFpc2VkIGJ5IHRoZQogICAgY29kZWMuCiAKLQotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfQXNNQkNTU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQotCi0gICBFbmNvZGUgYSBVbmljb2RlIG9iamVjdCB1c2luZyBNQkNTIGFuZCByZXR1cm4gdGhlIHJlc3VsdCBhcyBQeXRob24gYnl0ZXMKLSAgIG9iamVjdC4gIEVycm9yIGhhbmRsaW5nIGlzICJzdHJpY3QiLiAgUmV0dXJuICpOVUxMKiBpZiBhbiBleGNlcHRpb24gd2FzCi0gICByYWlzZWQgYnkgdGhlIGNvZGVjLgorICAgLi4gZGVwcmVjYXRlZC1yZW1vdmVkOjogMy4zIDQuMAorICAgICAgUGFydCBvZiB0aGUgb2xkLXN0eWxlIDpjOnR5cGU6YFB5X1VOSUNPREVgIEFQSTsgcGxlYXNlIG1pZ3JhdGUgdG8gdXNpbmcKKyAgICAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc01CQ1NTdHJpbmdgIG9yIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVDb2RlUGFnZWAuCiAKIAogTWV0aG9kcyAmIFNsb3RzCkBAIC0xMDExLDcgKzE1MzMsOCBAQAogICAgY2hhcmFjdGVycyBhcmUgbm90IGluY2x1ZGVkIGluIHRoZSByZXN1bHRpbmcgc3RyaW5ncy4KIAogCi0uLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9UcmFuc2xhdGUoUHlPYmplY3QgKnN0ciwgUHlPYmplY3QgKnRhYmxlLCBjb25zdCBjaGFyICplcnJvcnMpCisuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9UcmFuc2xhdGUoUHlPYmplY3QgKnN0ciwgUHlPYmplY3QgKnRhYmxlLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiAKICAgIFRyYW5zbGF0ZSBhIHN0cmluZyBieSBhcHBseWluZyBhIGNoYXJhY3RlciBtYXBwaW5nIHRhYmxlIHRvIGl0IGFuZCByZXR1cm4gdGhlCiAgICByZXN1bHRpbmcgVW5pY29kZSBvYmplY3QuCkBAIC0xMDMzLDE0ICsxNTU2LDE2IEBACiAgICBVbmljb2RlIHN0cmluZy4KIAogCi0uLiBjOmZ1bmN0aW9uOjogaW50IFB5VW5pY29kZV9UYWlsbWF0Y2goUHlPYmplY3QgKnN0ciwgUHlPYmplY3QgKnN1YnN0ciwgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQsIGludCBkaXJlY3Rpb24pCisuLiBjOmZ1bmN0aW9uOjogaW50IFB5VW5pY29kZV9UYWlsbWF0Y2goUHlPYmplY3QgKnN0ciwgUHlPYmplY3QgKnN1YnN0ciwgXAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQsIGludCBkaXJlY3Rpb24pCiAKICAgIFJldHVybiAxIGlmICpzdWJzdHIqIG1hdGNoZXMgYGBzdHJbc3RhcnQ6ZW5kXWBgIGF0IHRoZSBnaXZlbiB0YWlsIGVuZAogICAgKCpkaXJlY3Rpb24qID09IC0xIG1lYW5zIHRvIGRvIGEgcHJlZml4IG1hdGNoLCAqZGlyZWN0aW9uKiA9PSAxIGEgc3VmZml4IG1hdGNoKSwKICAgIDAgb3RoZXJ3aXNlLiBSZXR1cm4gYGAtMWBgIGlmIGFuIGVycm9yIG9jY3VycmVkLgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeV9zc2l6ZV90IFB5VW5pY29kZV9GaW5kKFB5T2JqZWN0ICpzdHIsIFB5T2JqZWN0ICpzdWJzdHIsIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kLCBpbnQgZGlyZWN0aW9uKQorLi4gYzpmdW5jdGlvbjo6IFB5X3NzaXplX3QgUHlVbmljb2RlX0ZpbmQoUHlPYmplY3QgKnN0ciwgUHlPYmplY3QgKnN1YnN0ciwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kLCBpbnQgZGlyZWN0aW9uKQogCiAgICBSZXR1cm4gdGhlIGZpcnN0IHBvc2l0aW9uIG9mICpzdWJzdHIqIGluIGBgc3RyW3N0YXJ0OmVuZF1gYCB1c2luZyB0aGUgZ2l2ZW4KICAgICpkaXJlY3Rpb24qICgqZGlyZWN0aW9uKiA9PSAxIG1lYW5zIHRvIGRvIGEgZm9yd2FyZCBzZWFyY2gsICpkaXJlY3Rpb24qID09IC0xIGEKQEAgLTEwNDksMTMgKzE1NzQsMjcgQEAKICAgIG9jY3VycmVkIGFuZCBhbiBleGNlcHRpb24gaGFzIGJlZW4gc2V0LgogCiAKLS4uIGM6ZnVuY3Rpb246OiBQeV9zc2l6ZV90IFB5VW5pY29kZV9Db3VudChQeU9iamVjdCAqc3RyLCBQeU9iamVjdCAqc3Vic3RyLCBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCkKKy4uIGM6ZnVuY3Rpb246OiBQeV9zc2l6ZV90IFB5VW5pY29kZV9GaW5kQ2hhcihQeU9iamVjdCAqc3RyLCBQeV9VQ1M0IGNoLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQsIGludCBkaXJlY3Rpb24pCisKKyAgIFJldHVybiB0aGUgZmlyc3QgcG9zaXRpb24gb2YgdGhlIGNoYXJhY3RlciAqY2gqIGluIGBgc3RyW3N0YXJ0OmVuZF1gYCB1c2luZworICAgdGhlIGdpdmVuICpkaXJlY3Rpb24qICgqZGlyZWN0aW9uKiA9PSAxIG1lYW5zIHRvIGRvIGEgZm9yd2FyZCBzZWFyY2gsCisgICAqZGlyZWN0aW9uKiA9PSAtMSBhIGJhY2t3YXJkIHNlYXJjaCkuICBUaGUgcmV0dXJuIHZhbHVlIGlzIHRoZSBpbmRleCBvZiB0aGUKKyAgIGZpcnN0IG1hdGNoOyBhIHZhbHVlIG9mIGBgLTFgYCBpbmRpY2F0ZXMgdGhhdCBubyBtYXRjaCB3YXMgZm91bmQsIGFuZCBgYC0yYGAKKyAgIGluZGljYXRlcyB0aGF0IGFuIGVycm9yIG9jY3VycmVkIGFuZCBhbiBleGNlcHRpb24gaGFzIGJlZW4gc2V0LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBjOmZ1bmN0aW9uOjogUHlfc3NpemVfdCBQeVVuaWNvZGVfQ291bnQoUHlPYmplY3QgKnN0ciwgUHlPYmplY3QgKnN1YnN0ciwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kKQogCiAgICBSZXR1cm4gdGhlIG51bWJlciBvZiBub24tb3ZlcmxhcHBpbmcgb2NjdXJyZW5jZXMgb2YgKnN1YnN0ciogaW4KICAgIGBgc3RyW3N0YXJ0OmVuZF1gYC4gIFJldHVybiBgYC0xYGAgaWYgYW4gZXJyb3Igb2NjdXJyZWQuCiAKIAotLi4gYzpmdW5jdGlvbjo6IFB5T2JqZWN0KiBQeVVuaWNvZGVfUmVwbGFjZShQeU9iamVjdCAqc3RyLCBQeU9iamVjdCAqc3Vic3RyLCBQeU9iamVjdCAqcmVwbHN0ciwgUHlfc3NpemVfdCBtYXhjb3VudCkKKy4uIGM6ZnVuY3Rpb246OiBQeU9iamVjdCogUHlVbmljb2RlX1JlcGxhY2UoUHlPYmplY3QgKnN0ciwgUHlPYmplY3QgKnN1YnN0ciwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnJlcGxzdHIsIFB5X3NzaXplX3QgbWF4Y291bnQpCiAKICAgIFJlcGxhY2UgYXQgbW9zdCAqbWF4Y291bnQqIG9jY3VycmVuY2VzIG9mICpzdWJzdHIqIGluICpzdHIqIHdpdGggKnJlcGxzdHIqIGFuZAogICAgcmV0dXJuIHRoZSByZXN1bHRpbmcgVW5pY29kZSBvYmplY3QuICptYXhjb3VudCogPT0gLTEgbWVhbnMgcmVwbGFjZSBhbGwKQEAgLTExMDMsOCArMTY0Miw4IEBACiAgICBDaGVjayB3aGV0aGVyICplbGVtZW50KiBpcyBjb250YWluZWQgaW4gKmNvbnRhaW5lciogYW5kIHJldHVybiB0cnVlIG9yIGZhbHNlCiAgICBhY2NvcmRpbmdseS4KIAotICAgKmVsZW1lbnQqIGhhcyB0byBjb2VyY2UgdG8gYSBvbmUgZWxlbWVudCBVbmljb2RlIHN0cmluZy4gYGAtMWBgIGlzIHJldHVybmVkIGlmCi0gICB0aGVyZSB3YXMgYW4gZXJyb3IuCisgICAqZWxlbWVudCogaGFzIHRvIGNvZXJjZSB0byBhIG9uZSBlbGVtZW50IFVuaWNvZGUgc3RyaW5nLiBgYC0xYGAgaXMgcmV0dXJuZWQKKyAgIGlmIHRoZXJlIHdhcyBhbiBlcnJvci4KIAogCiAuLiBjOmZ1bmN0aW9uOjogdm9pZCBQeVVuaWNvZGVfSW50ZXJuSW5QbGFjZShQeU9iamVjdCAqKnN0cmluZykKQEAgLTExMjMsNyArMTY2Miw2IEBACiAuLiBjOmZ1bmN0aW9uOjogUHlPYmplY3QqIFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKGNvbnN0IGNoYXIgKnYpCiAKICAgIEEgY29tYmluYXRpb24gb2YgOmM6ZnVuYzpgUHlVbmljb2RlX0Zyb21TdHJpbmdgIGFuZAotICAgOmM6ZnVuYzpgUHlVbmljb2RlX0ludGVybkluUGxhY2VgLCByZXR1cm5pbmcgZWl0aGVyIGEgbmV3IHVuaWNvZGUgc3RyaW5nIG9iamVjdAotICAgdGhhdCBoYXMgYmVlbiBpbnRlcm5lZCwgb3IgYSBuZXcgKCJvd25lZCIpIHJlZmVyZW5jZSB0byBhbiBlYXJsaWVyIGludGVybmVkCi0gICBzdHJpbmcgb2JqZWN0IHdpdGggdGhlIHNhbWUgdmFsdWUuCi0KKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9JbnRlcm5JblBsYWNlYCwgcmV0dXJuaW5nIGVpdGhlciBhIG5ldyB1bmljb2RlIHN0cmluZworICAgb2JqZWN0IHRoYXQgaGFzIGJlZW4gaW50ZXJuZWQsIG9yIGEgbmV3ICgib3duZWQiKSByZWZlcmVuY2UgdG8gYW4gZWFybGllcgorICAgaW50ZXJuZWQgc3RyaW5nIG9iamVjdCB3aXRoIHRoZSBzYW1lIHZhbHVlLgpkaWZmIC0tZ2l0IGEvRG9jL2NvbnRlbnRzLnJzdCBiL0RvYy9jb250ZW50cy5yc3QKaW5kZXggYzBjNmFmMy4uY2M1YzhlMyAxMDA2NDQKLS0tIGEvRG9jL2NvbnRlbnRzLnJzdAorKysgYi9Eb2MvY29udGVudHMucnN0CkBAIC0xMSw3ICsxMSw3IEBACiAgICBsaWJyYXJ5L2luZGV4LnJzdAogICAgZXh0ZW5kaW5nL2luZGV4LnJzdAogICAgYy1hcGkvaW5kZXgucnN0Ci0gICBkaXN0dXRpbHMvaW5kZXgucnN0CisgICBwYWNrYWdpbmcvaW5kZXgucnN0CiAgICBpbnN0YWxsL2luZGV4LnJzdAogICAgaG93dG8vaW5kZXgucnN0CiAgICBmYXEvaW5kZXgucnN0CmRpZmYgLS1naXQgYS9Eb2MvZGF0YS9yZWZjb3VudHMuZGF0IGIvRG9jL2RhdGEvcmVmY291bnRzLmRhdAppbmRleCBjN2Q3YmQxLi5hMTAwNGFkIDEwMDY0NAotLS0gYS9Eb2MvZGF0YS9yZWZjb3VudHMuZGF0CisrKyBiL0RvYy9kYXRhL3JlZmNvdW50cy5kYXQKQEAgLTQ2NSw2ICs0NjUsMTEgQEAKIFB5RnVuY3Rpb25fTmV3OlB5T2JqZWN0Kjpjb2RlOisxOgogUHlGdW5jdGlvbl9OZXc6UHlPYmplY3QqOmdsb2JhbHM6KzE6CiAKK1B5RnVuY3Rpb25fTmV3V2l0aFF1YWxOYW1lOlB5T2JqZWN0Kjo6KzE6CitQeUZ1bmN0aW9uX05ld1dpdGhRdWFsTmFtZTpQeU9iamVjdCo6Y29kZTorMToKK1B5RnVuY3Rpb25fTmV3V2l0aFF1YWxOYW1lOlB5T2JqZWN0KjpnbG9iYWxzOisxOgorUHlGdW5jdGlvbl9OZXdXaXRoUXVhbE5hbWU6UHlPYmplY3QqOnF1YWxuYW1lOisxOgorCiBQeUZ1bmN0aW9uX1NldENsb3N1cmU6aW50Ojo6CiBQeUZ1bmN0aW9uX1NldENsb3N1cmU6UHlPYmplY3QqOm9wOjA6CiBQeUZ1bmN0aW9uX1NldENsb3N1cmU6UHlPYmplY3QqOmNsb3N1cmU6KzE6CmRpZmYgLS1naXQgYS9Eb2MvZGlzdHV0aWxzL2FwaXJlZi5yc3QgYi9Eb2MvZGlzdHV0aWxzL2FwaXJlZi5yc3QKaW5kZXggYjNkZWYyMi4uOTdmMWJlZCAxMDA2NDQKLS0tIGEvRG9jL2Rpc3R1dGlscy9hcGlyZWYucnN0CisrKyBiL0RvYy9kaXN0dXRpbHMvYXBpcmVmLnJzdApAQCAtMTYwLDcgKzE2MCw3IEBACiAuLiBjbGFzczo6IEV4dGVuc2lvbgogCiAgICBUaGUgRXh0ZW5zaW9uIGNsYXNzIGRlc2NyaWJlcyBhIHNpbmdsZSBDIG9yIEMrK2V4dGVuc2lvbiBtb2R1bGUgaW4gYSBzZXR1cAotICAgc2NyaXB0LiBJdCBhY2NlcHRzIHRoZSBmb2xsb3dpbmcga2V5d29yZCBhcmd1bWVudHMgaW4gaXRzIGNvbnN0cnVjdG9yCisgICBzY3JpcHQuIEl0IGFjY2VwdHMgdGhlIGZvbGxvd2luZyBrZXl3b3JkIGFyZ3VtZW50cyBpbiBpdHMgY29uc3RydWN0b3I6CiAKICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCBhcmd1bWVudCBuYW1lICAgICAgICAgIHwgdmFsdWUgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdHlwZSAgICAgICAgICAgICAgICAgICAgICB8CkBAIC0xMTYyLDEyICsxMTYyLDExIEBACiAKIC4uIGZ1bmN0aW9uOjogZ3Jva19lbnZpcm9ubWVudF9lcnJvcihleGNbLCBwcmVmaXg9J2Vycm9yOiAnXSkKIAotICAgR2VuZXJhdGUgYSB1c2VmdWwgZXJyb3IgbWVzc2FnZSBmcm9tIGFuIDpleGM6YEVudmlyb25tZW50RXJyb3JgICAoOmV4YzpgSU9FcnJvcmAKLSAgIG9yIDpleGM6YE9TRXJyb3JgKSBleGNlcHRpb24gb2JqZWN0LiAgIEhhbmRsZXMgUHl0aG9uIDEuNS4xIGFuZCBsYXRlciBzdHlsZXMsCi0gICBhbmQgZG9lcyB3aGF0IGl0IGNhbiB0byBkZWFsIHdpdGggIGV4Y2VwdGlvbiBvYmplY3RzIHRoYXQgZG9uJ3QgaGF2ZSBhIGZpbGVuYW1lCi0gICAod2hpY2ggaGFwcGVucyB3aGVuIHRoZSBlcnJvciAgaXMgZHVlIHRvIGEgdHdvLWZpbGUgb3BlcmF0aW9uLCBzdWNoIGFzCi0gICA6ZnVuYzpgcmVuYW1lYCBvciAgOmZ1bmM6YGxpbmtgKS4gIFJldHVybnMgdGhlIGVycm9yIG1lc3NhZ2UgYXMgYSBzdHJpbmcKLSAgIHByZWZpeGVkICB3aXRoICpwcmVmaXgqLgorICAgR2VuZXJhdGUgYSB1c2VmdWwgZXJyb3IgbWVzc2FnZSBmcm9tIGFuIDpleGM6YE9TRXJyb3JgIGV4Y2VwdGlvbiBvYmplY3QuCisgICBIYW5kbGVzIFB5dGhvbiAxLjUuMSBhbmQgbGF0ZXIgc3R5bGVzLCBhbmQgZG9lcyB3aGF0IGl0IGNhbiB0byBkZWFsIHdpdGgKKyAgIGV4Y2VwdGlvbiBvYmplY3RzIHRoYXQgZG9uJ3QgaGF2ZSBhIGZpbGVuYW1lICh3aGljaCBoYXBwZW5zIHdoZW4gdGhlIGVycm9yCisgICBpcyBkdWUgdG8gYSB0d28tZmlsZSBvcGVyYXRpb24sIHN1Y2ggYXMgOmZ1bmM6YHJlbmFtZWAgb3IgOmZ1bmM6YGxpbmtgKS4KKyAgIFJldHVybnMgdGhlIGVycm9yIG1lc3NhZ2UgYXMgYSBzdHJpbmcgcHJlZml4ZWQgd2l0aCAqcHJlZml4Ki4KIAogCiAuLiBmdW5jdGlvbjo6IHNwbGl0X3F1b3RlZChzKQpkaWZmIC0tZ2l0IGEvRG9jL2Rpc3R1dGlscy9pbmRleC5yc3QgYi9Eb2MvZGlzdHV0aWxzL2luZGV4LnJzdAppbmRleCBhY2U4MjgwLi5jOGRkOWY0IDEwMDY0NAotLS0gYS9Eb2MvZGlzdHV0aWxzL2luZGV4LnJzdAorKysgYi9Eb2MvZGlzdHV0aWxzL2luZGV4LnJzdApAQCAtMTQsOSArMTQsMTIgQEAKIG1ha2UgUHl0aG9uIG1vZHVsZXMgYW5kIGV4dGVuc2lvbnMgZWFzaWx5IGF2YWlsYWJsZSB0byBhIHdpZGVyIGF1ZGllbmNlIHdpdGgKIHZlcnkgbGl0dGxlIG92ZXJoZWFkIGZvciBidWlsZC9yZWxlYXNlL2luc3RhbGwgbWVjaGFuaWNzLgogCisuLiBkZXByZWNhdGVkOjogMy4zCisgICA6bW9kOmBwYWNrYWdpbmdgIHJlcGxhY2VzIERpc3R1dGlscy4gIFNlZSA6cmVmOmBwYWNrYWdpbmctaW5kZXhgIGFuZAorICAgOnJlZjpgcGFja2FnaW5nLWluc3RhbGwtaW5kZXhgLgorCiAuLiB0b2N0cmVlOjoKICAgIDptYXhkZXB0aDogMgotICAgOm51bWJlcmVkOgogCiAgICBpbnRyb2R1Y3Rpb24ucnN0CiAgICBzZXR1cHNjcmlwdC5yc3QKQEAgLTI5LDMgKzMyLDEwIEBACiAgICBleHRlbmRpbmcucnN0CiAgICBjb21tYW5kcmVmLnJzdAogICAgYXBpcmVmLnJzdAorCitBbm90aGVyIGRvY3VtZW50IGRlc2NyaWJlcyBob3cgdG8gaW5zdGFsbCBtb2R1bGVzIGFuZCBleHRlbnNpb25zIHBhY2thZ2VkCitmb2xsb3dpbmcgdGhlIGFib3ZlIGd1aWRlbGluZXM6CisKKy4uIHRvY3RyZWU6OgorCisgICBpbnN0YWxsLnJzdApkaWZmIC0tZ2l0IGEvRG9jL2Rpc3R1dGlscy9pbnN0YWxsLnJzdCBiL0RvYy9kaXN0dXRpbHMvaW5zdGFsbC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjIwZjFmYgotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9kaXN0dXRpbHMvaW5zdGFsbC5yc3QKQEAgLTAsMCArMSwxMDg2IEBACisuLiBoaWdobGlnaHRsYW5nOjogbm9uZQorCisuLiBfaW5zdGFsbC1pbmRleDoKKworKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAgSW5zdGFsbGluZyBQeXRob24gTW9kdWxlcworKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKworOkF1dGhvcjogR3JlZyBXYXJkCis6UmVsZWFzZTogfHZlcnNpb258Cis6RGF0ZTogfHRvZGF5fAorCisuLiBUT0RPOiBGaWxsIGluIFhYWCBjb21tZW50cworCisuLiBUaGUgYXVkaWVuY2UgZm9yIHRoaXMgZG9jdW1lbnQgaW5jbHVkZXMgcGVvcGxlIHdobyBkb24ndCBrbm93IGFueXRoaW5nCisgICBhYm91dCBQeXRob24gYW5kIGFyZW4ndCBhYm91dCB0byBsZWFybiB0aGUgbGFuZ3VhZ2UganVzdCBpbiBvcmRlciB0bworICAgaW5zdGFsbCBhbmQgbWFpbnRhaW4gaXQgZm9yIHRoZWlyIHVzZXJzLCBpLmUuIHN5c3RlbSBhZG1pbmlzdHJhdG9ycy4KKyAgIFRodXMsIEkgaGF2ZSB0byBiZSBzdXJlIHRvIGV4cGxhaW4gdGhlIGJhc2ljcyBhdCBzb21lIHBvaW50OgorICAgc3lzLnBhdGggYW5kIFBZVEhPTlBBVEggYXQgbGVhc3QuICBTaG91bGQgcHJvYmFibHkgZ2l2ZSBwb2ludGVycyB0bworICAgb3RoZXIgZG9jcyBvbiAiaW1wb3J0IHNpdGUiLCBQWVRIT05TVEFSVFVQLCBQWVRIT05IT01FLCBldGMuCisKKyAgIEZpbmFsbHksIGl0IG1pZ2h0IGJlIHVzZWZ1bCB0byBpbmNsdWRlIGFsbCB0aGUgbWF0ZXJpYWwgZnJvbSBteSAiQ2FyZQorICAgYW5kIEZlZWRpbmcgb2YgYSBQeXRob24gSW5zdGFsbGF0aW9uIiB0YWxrIGluIGhlcmUgc29tZXdoZXJlLiAgWW93IQorCisuLiB0b3BpYzo6IEFic3RyYWN0CisKKyAgIFRoaXMgZG9jdW1lbnQgZGVzY3JpYmVzIHRoZSBQeXRob24gRGlzdHJpYnV0aW9uIFV0aWxpdGllcyAoIkRpc3R1dGlscyIpIGZyb20gdGhlCisgICBlbmQtdXNlcidzIHBvaW50LW9mLXZpZXcsIGRlc2NyaWJpbmcgaG93IHRvIGV4dGVuZCB0aGUgY2FwYWJpbGl0aWVzIG9mIGEKKyAgIHN0YW5kYXJkIFB5dGhvbiBpbnN0YWxsYXRpb24gYnkgYnVpbGRpbmcgYW5kIGluc3RhbGxpbmcgdGhpcmQtcGFydHkgUHl0aG9uCisgICBtb2R1bGVzIGFuZCBleHRlbnNpb25zLgorCisKKy4uIF9pbnN0LWludHJvOgorCitJbnRyb2R1Y3Rpb24KKz09PT09PT09PT09PQorCitBbHRob3VnaCBQeXRob24ncyBleHRlbnNpdmUgc3RhbmRhcmQgbGlicmFyeSBjb3ZlcnMgbWFueSBwcm9ncmFtbWluZyBuZWVkcywKK3RoZXJlIG9mdGVuIGNvbWVzIGEgdGltZSB3aGVuIHlvdSBuZWVkIHRvIGFkZCBzb21lIG5ldyBmdW5jdGlvbmFsaXR5IHRvIHlvdXIKK1B5dGhvbiBpbnN0YWxsYXRpb24gaW4gdGhlIGZvcm0gb2YgdGhpcmQtcGFydHkgbW9kdWxlcy4gIFRoaXMgbWlnaHQgYmUgbmVjZXNzYXJ5Cit0byBzdXBwb3J0IHlvdXIgb3duIHByb2dyYW1taW5nLCBvciB0byBzdXBwb3J0IGFuIGFwcGxpY2F0aW9uIHRoYXQgeW91IHdhbnQgdG8KK3VzZSBhbmQgdGhhdCBoYXBwZW5zIHRvIGJlIHdyaXR0ZW4gaW4gUHl0aG9uLgorCitJbiB0aGUgcGFzdCwgdGhlcmUgaGFzIGJlZW4gbGl0dGxlIHN1cHBvcnQgZm9yIGFkZGluZyB0aGlyZC1wYXJ0eSBtb2R1bGVzIHRvIGFuCitleGlzdGluZyBQeXRob24gaW5zdGFsbGF0aW9uLiAgV2l0aCB0aGUgaW50cm9kdWN0aW9uIG9mIHRoZSBQeXRob24gRGlzdHJpYnV0aW9uCitVdGlsaXRpZXMgKERpc3R1dGlscyBmb3Igc2hvcnQpIGluIFB5dGhvbiAyLjAsIHRoaXMgY2hhbmdlZC4KKworVGhpcyBkb2N1bWVudCBpcyBhaW1lZCBwcmltYXJpbHkgYXQgdGhlIHBlb3BsZSB3aG8gbmVlZCB0byBpbnN0YWxsIHRoaXJkLXBhcnR5CitQeXRob24gbW9kdWxlczogZW5kLXVzZXJzIGFuZCBzeXN0ZW0gYWRtaW5pc3RyYXRvcnMgd2hvIGp1c3QgbmVlZCB0byBnZXQgc29tZQorUHl0aG9uIGFwcGxpY2F0aW9uIHJ1bm5pbmcsIGFuZCBleGlzdGluZyBQeXRob24gcHJvZ3JhbW1lcnMgd2hvIHdhbnQgdG8gYWRkIHNvbWUKK25ldyBnb29kaWVzIHRvIHRoZWlyIHRvb2xib3guICBZb3UgZG9uJ3QgbmVlZCB0byBrbm93IFB5dGhvbiB0byByZWFkIHRoaXMKK2RvY3VtZW50OyB0aGVyZSB3aWxsIGJlIHNvbWUgYnJpZWYgZm9yYXlzIGludG8gdXNpbmcgUHl0aG9uJ3MgaW50ZXJhY3RpdmUgbW9kZQordG8gZXhwbG9yZSB5b3VyIGluc3RhbGxhdGlvbiwgYnV0IHRoYXQncyBpdC4gIElmIHlvdSdyZSBsb29raW5nIGZvciBpbmZvcm1hdGlvbgorb24gaG93IHRvIGRpc3RyaWJ1dGUgeW91ciBvd24gUHl0aG9uIG1vZHVsZXMgc28gdGhhdCBvdGhlcnMgbWF5IHVzZSB0aGVtLCBzZWUKK3RoZSA6cmVmOmBkaXN0dXRpbHMtaW5kZXhgIG1hbnVhbC4KKworCisuLiBfaW5zdC10cml2aWFsLWluc3RhbGw6CisKK0Jlc3QgY2FzZTogdHJpdmlhbCBpbnN0YWxsYXRpb24KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworSW4gdGhlIGJlc3QgY2FzZSwgc29tZW9uZSB3aWxsIGhhdmUgcHJlcGFyZWQgYSBzcGVjaWFsIHZlcnNpb24gb2YgdGhlIG1vZHVsZQorZGlzdHJpYnV0aW9uIHlvdSB3YW50IHRvIGluc3RhbGwgdGhhdCBpcyB0YXJnZXRlZCBzcGVjaWZpY2FsbHkgYXQgeW91ciBwbGF0Zm9ybQorYW5kIGlzIGluc3RhbGxlZCBqdXN0IGxpa2UgYW55IG90aGVyIHNvZnR3YXJlIG9uIHlvdXIgcGxhdGZvcm0uICBGb3IgZXhhbXBsZSwKK3RoZSBtb2R1bGUgZGV2ZWxvcGVyIG1pZ2h0IG1ha2UgYW4gZXhlY3V0YWJsZSBpbnN0YWxsZXIgYXZhaWxhYmxlIGZvciBXaW5kb3dzCit1c2VycywgYW4gUlBNIHBhY2thZ2UgZm9yIHVzZXJzIG9mIFJQTS1iYXNlZCBMaW51eCBzeXN0ZW1zIChSZWQgSGF0LCBTdVNFLAorTWFuZHJha2UsIGFuZCBtYW55IG90aGVycyksIGEgRGViaWFuIHBhY2thZ2UgZm9yIHVzZXJzIG9mIERlYmlhbi1iYXNlZCBMaW51eAorc3lzdGVtcywgYW5kIHNvIGZvcnRoLgorCitJbiB0aGF0IGNhc2UsIHlvdSB3b3VsZCBkb3dubG9hZCB0aGUgaW5zdGFsbGVyIGFwcHJvcHJpYXRlIHRvIHlvdXIgcGxhdGZvcm0gYW5kCitkbyB0aGUgb2J2aW91cyB0aGluZyB3aXRoIGl0OiBydW4gaXQgaWYgaXQncyBhbiBleGVjdXRhYmxlIGluc3RhbGxlciwgYGBycG0KKy0taW5zdGFsbGBgIGl0IGlmIGl0J3MgYW4gUlBNLCBldGMuICBZb3UgZG9uJ3QgbmVlZCB0byBydW4gUHl0aG9uIG9yIGEgc2V0dXAKK3NjcmlwdCwgeW91IGRvbid0IG5lZWQgdG8gY29tcGlsZSBhbnl0aGluZy0tLXlvdSBtaWdodCBub3QgZXZlbiBuZWVkIHRvIHJlYWQgYW55CitpbnN0cnVjdGlvbnMgKGFsdGhvdWdoIGl0J3MgYWx3YXlzIGEgZ29vZCBpZGVhIHRvIGRvIHNvIGFueXdheSkuCisKK09mIGNvdXJzZSwgdGhpbmdzIHdpbGwgbm90IGFsd2F5cyBiZSB0aGF0IGVhc3kuICBZb3UgbWlnaHQgYmUgaW50ZXJlc3RlZCBpbiBhCittb2R1bGUgZGlzdHJpYnV0aW9uIHRoYXQgZG9lc24ndCBoYXZlIGFuIGVhc3ktdG8tdXNlIGluc3RhbGxlciBmb3IgeW91cgorcGxhdGZvcm0uICBJbiB0aGF0IGNhc2UsIHlvdSdsbCBoYXZlIHRvIHN0YXJ0IHdpdGggdGhlIHNvdXJjZSBkaXN0cmlidXRpb24KK3JlbGVhc2VkIGJ5IHRoZSBtb2R1bGUncyBhdXRob3IvbWFpbnRhaW5lci4gIEluc3RhbGxpbmcgZnJvbSBhIHNvdXJjZQorZGlzdHJpYnV0aW9uIGlzIG5vdCB0b28gaGFyZCwgYXMgbG9uZyBhcyB0aGUgbW9kdWxlcyBhcmUgcGFja2FnZWQgaW4gdGhlCitzdGFuZGFyZCB3YXkuICBUaGUgYnVsayBvZiB0aGlzIGRvY3VtZW50IGlzIGFib3V0IGJ1aWxkaW5nIGFuZCBpbnN0YWxsaW5nCittb2R1bGVzIGZyb20gc3RhbmRhcmQgc291cmNlIGRpc3RyaWJ1dGlvbnMuCisKKworLi4gX2luc3QtbmV3LXN0YW5kYXJkOgorCitUaGUgbmV3IHN0YW5kYXJkOiBEaXN0dXRpbHMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitJZiB5b3UgZG93bmxvYWQgYSBtb2R1bGUgc291cmNlIGRpc3RyaWJ1dGlvbiwgeW91IGNhbiB0ZWxsIHByZXR0eSBxdWlja2x5IGlmIGl0Cit3YXMgcGFja2FnZWQgYW5kIGRpc3RyaWJ1dGVkIGluIHRoZSBzdGFuZGFyZCB3YXksIGkuZS4gdXNpbmcgdGhlIERpc3R1dGlscy4KK0ZpcnN0LCB0aGUgZGlzdHJpYnV0aW9uJ3MgbmFtZSBhbmQgdmVyc2lvbiBudW1iZXIgd2lsbCBiZSBmZWF0dXJlZCBwcm9taW5lbnRseQoraW4gdGhlIG5hbWUgb2YgdGhlIGRvd25sb2FkZWQgYXJjaGl2ZSwgZS5nLiA6ZmlsZTpgZm9vLTEuMC50YXIuZ3pgIG9yCis6ZmlsZTpgd2lkZ2V0LTAuOS43LnppcGAuICBOZXh0LCB0aGUgYXJjaGl2ZSB3aWxsIHVucGFjayBpbnRvIGEgc2ltaWxhcmx5LW5hbWVkCitkaXJlY3Rvcnk6IDpmaWxlOmBmb28tMS4wYCBvciA6ZmlsZTpgd2lkZ2V0LTAuOS43YC4gIEFkZGl0aW9uYWxseSwgdGhlCitkaXN0cmlidXRpb24gd2lsbCBjb250YWluIGEgc2V0dXAgc2NyaXB0IDpmaWxlOmBzZXR1cC5weWAsIGFuZCBhIGZpbGUgbmFtZWQKKzpmaWxlOmBSRUFETUUudHh0YCBvciBwb3NzaWJseSBqdXN0IDpmaWxlOmBSRUFETUVgLCB3aGljaCBzaG91bGQgZXhwbGFpbiB0aGF0CitidWlsZGluZyBhbmQgaW5zdGFsbGluZyB0aGUgbW9kdWxlIGRpc3RyaWJ1dGlvbiBpcyBhIHNpbXBsZSBtYXR0ZXIgb2YgcnVubmluZworb25lIGNvbW1hbmQgZnJvbSBhIHRlcm1pbmFsOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwKKworRm9yIFdpbmRvd3MsIHRoaXMgY29tbWFuZCBzaG91bGQgYmUgcnVuIGZyb20gYSBjb21tYW5kIHByb21wdCB3aW5kb3cKKyg6bWVudXNlbGVjdGlvbjpgU3RhcnQgLS0+IEFjY2Vzc29yaWVzYCk6OgorCisgICBzZXR1cC5weSBpbnN0YWxsCisKK0lmIGFsbCB0aGVzZSB0aGluZ3MgYXJlIHRydWUsIHRoZW4geW91IGFscmVhZHkga25vdyBob3cgdG8gYnVpbGQgYW5kIGluc3RhbGwgdGhlCittb2R1bGVzIHlvdSd2ZSBqdXN0IGRvd25sb2FkZWQ6ICBSdW4gdGhlIGNvbW1hbmQgYWJvdmUuIFVubGVzcyB5b3UgbmVlZCB0bworaW5zdGFsbCB0aGluZ3MgaW4gYSBub24tc3RhbmRhcmQgd2F5IG9yIGN1c3RvbWl6ZSB0aGUgYnVpbGQgcHJvY2VzcywgeW91IGRvbid0CityZWFsbHkgbmVlZCB0aGlzIG1hbnVhbC4gIE9yIHJhdGhlciwgdGhlIGFib3ZlIGNvbW1hbmQgaXMgZXZlcnl0aGluZyB5b3UgbmVlZCB0bworZ2V0IG91dCBvZiB0aGlzIG1hbnVhbC4KKworCisuLiBfaW5zdC1zdGFuZGFyZC1pbnN0YWxsOgorCitTdGFuZGFyZCBCdWlsZCBhbmQgSW5zdGFsbAorPT09PT09PT09PT09PT09PT09PT09PT09PT0KKworQXMgZGVzY3JpYmVkIGluIHNlY3Rpb24gOnJlZjpgaW5zdC1uZXctc3RhbmRhcmRgLCBidWlsZGluZyBhbmQgaW5zdGFsbGluZyBhIG1vZHVsZQorZGlzdHJpYnV0aW9uIHVzaW5nIHRoZSBEaXN0dXRpbHMgaXMgdXN1YWxseSBvbmUgc2ltcGxlIGNvbW1hbmQgdG8gcnVuIGZyb20gYQordGVybWluYWw6OgorCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbAorCisKKy4uIF9pbnN0LXBsYXRmb3JtLXZhcmlhdGlvbnM6CisKK1BsYXRmb3JtIHZhcmlhdGlvbnMKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworWW91IHNob3VsZCBhbHdheXMgcnVuIHRoZSBzZXR1cCBjb21tYW5kIGZyb20gdGhlIGRpc3RyaWJ1dGlvbiByb290IGRpcmVjdG9yeSwKK2kuZS4gdGhlIHRvcC1sZXZlbCBzdWJkaXJlY3RvcnkgdGhhdCB0aGUgbW9kdWxlIHNvdXJjZSBkaXN0cmlidXRpb24gdW5wYWNrcworaW50by4gIEZvciBleGFtcGxlLCBpZiB5b3UndmUganVzdCBkb3dubG9hZGVkIGEgbW9kdWxlIHNvdXJjZSBkaXN0cmlidXRpb24KKzpmaWxlOmBmb28tMS4wLnRhci5nemAgb250byBhIFVuaXggc3lzdGVtLCB0aGUgbm9ybWFsIHRoaW5nIHRvIGRvIGlzOjoKKworICAgZ3VuemlwIC1jIGZvby0xLjAudGFyLmd6IHwgdGFyIHhmIC0gICAgIyB1bnBhY2tzIGludG8gZGlyZWN0b3J5IGZvby0xLjAKKyAgIGNkIGZvby0xLjAKKyAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsCisKK09uIFdpbmRvd3MsIHlvdSdkIHByb2JhYmx5IGRvd25sb2FkIDpmaWxlOmBmb28tMS4wLnppcGAuICBJZiB5b3UgZG93bmxvYWRlZCB0aGUKK2FyY2hpdmUgZmlsZSB0byA6ZmlsZTpgQzpcXFRlbXBgLCB0aGVuIGl0IHdvdWxkIHVucGFjayBpbnRvCis6ZmlsZTpgQzpcXFRlbXBcXGZvby0xLjBgOyB5b3UgY2FuIHVzZSBlaXRoZXIgYSBhcmNoaXZlIG1hbmlwdWxhdG9yIHdpdGggYQorZ3JhcGhpY2FsIHVzZXIgaW50ZXJmYWNlIChzdWNoIGFzIFdpblppcCkgb3IgYSBjb21tYW5kLWxpbmUgdG9vbCAoc3VjaCBhcworOnByb2dyYW06YHVuemlwYCBvciA6cHJvZ3JhbTpgcGt1bnppcGApIHRvIHVucGFjayB0aGUgYXJjaGl2ZS4gIFRoZW4sIG9wZW4gYQorY29tbWFuZCBwcm9tcHQgd2luZG93IGFuZCBydW46OgorCisgICBjZCBjOlxUZW1wXGZvby0xLjAKKyAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsCisKKworLi4gX2luc3Qtc3BsaXR0aW5nLXVwOgorCitTcGxpdHRpbmcgdGhlIGpvYiB1cAorLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworUnVubmluZyBgYHNldHVwLnB5IGluc3RhbGxgYCBidWlsZHMgYW5kIGluc3RhbGxzIGFsbCBtb2R1bGVzIGluIG9uZSBydW4uICBJZiB5b3UKK3ByZWZlciB0byB3b3JrIGluY3JlbWVudGFsbHktLS1lc3BlY2lhbGx5IHVzZWZ1bCBpZiB5b3Ugd2FudCB0byBjdXN0b21pemUgdGhlCitidWlsZCBwcm9jZXNzLCBvciBpZiB0aGluZ3MgYXJlIGdvaW5nIHdyb25nLS0teW91IGNhbiB1c2UgdGhlIHNldHVwIHNjcmlwdCB0byBkbworb25lIHRoaW5nIGF0IGEgdGltZS4gIFRoaXMgaXMgcGFydGljdWxhcmx5IGhlbHBmdWwgd2hlbiB0aGUgYnVpbGQgYW5kIGluc3RhbGwKK3dpbGwgYmUgZG9uZSBieSBkaWZmZXJlbnQgdXNlcnMtLS1mb3IgZXhhbXBsZSwgeW91IG1pZ2h0IHdhbnQgdG8gYnVpbGQgYSBtb2R1bGUKK2Rpc3RyaWJ1dGlvbiBhbmQgaGFuZCBpdCBvZmYgdG8gYSBzeXN0ZW0gYWRtaW5pc3RyYXRvciBmb3IgaW5zdGFsbGF0aW9uIChvciBkbworaXQgeW91cnNlbGYsIHdpdGggc3VwZXItdXNlciBwcml2aWxlZ2VzKS4KKworRm9yIGV4YW1wbGUsIHlvdSBjYW4gYnVpbGQgZXZlcnl0aGluZyBpbiBvbmUgc3RlcCwgYW5kIHRoZW4gaW5zdGFsbCBldmVyeXRoaW5nCitpbiBhIHNlY29uZCBzdGVwLCBieSBpbnZva2luZyB0aGUgc2V0dXAgc2NyaXB0IHR3aWNlOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbAorCitJZiB5b3UgZG8gdGhpcywgeW91IHdpbGwgbm90aWNlIHRoYXQgcnVubmluZyB0aGUgOmNvbW1hbmQ6YGluc3RhbGxgIGNvbW1hbmQKK2ZpcnN0IHJ1bnMgdGhlIDpjb21tYW5kOmBidWlsZGAgY29tbWFuZCwgd2hpY2gtLS1pbiB0aGlzIGNhc2UtLS1xdWlja2x5IG5vdGljZXMKK3RoYXQgaXQgaGFzIG5vdGhpbmcgdG8gZG8sIHNpbmNlIGV2ZXJ5dGhpbmcgaW4gdGhlIDpmaWxlOmBidWlsZGAgZGlyZWN0b3J5IGlzCit1cC10by1kYXRlLgorCitZb3UgbWF5IG5vdCBuZWVkIHRoaXMgYWJpbGl0eSB0byBicmVhayB0aGluZ3MgZG93biBvZnRlbiBpZiBhbGwgeW91IGRvIGlzCitpbnN0YWxsIG1vZHVsZXMgZG93bmxvYWRlZCBvZmYgdGhlICduZXQsIGJ1dCBpdCdzIHZlcnkgaGFuZHkgZm9yIG1vcmUgYWR2YW5jZWQKK3Rhc2tzLiAgSWYgeW91IGdldCBpbnRvIGRpc3RyaWJ1dGluZyB5b3VyIG93biBQeXRob24gbW9kdWxlcyBhbmQgZXh0ZW5zaW9ucywKK3lvdSdsbCBydW4gbG90cyBvZiBpbmRpdmlkdWFsIERpc3R1dGlscyBjb21tYW5kcyBvbiB0aGVpciBvd24uCisKKworLi4gX2luc3QtaG93LWJ1aWxkLXdvcmtzOgorCitIb3cgYnVpbGRpbmcgd29ya3MKKy0tLS0tLS0tLS0tLS0tLS0tLQorCitBcyBpbXBsaWVkIGFib3ZlLCB0aGUgOmNvbW1hbmQ6YGJ1aWxkYCBjb21tYW5kIGlzIHJlc3BvbnNpYmxlIGZvciBwdXR0aW5nIHRoZQorZmlsZXMgdG8gaW5zdGFsbCBpbnRvIGEgKmJ1aWxkIGRpcmVjdG9yeSouICBCeSBkZWZhdWx0LCB0aGlzIGlzIDpmaWxlOmBidWlsZGAKK3VuZGVyIHRoZSBkaXN0cmlidXRpb24gcm9vdDsgaWYgeW91J3JlIGV4Y2Vzc2l2ZWx5IGNvbmNlcm5lZCB3aXRoIHNwZWVkLCBvciB3YW50Cit0byBrZWVwIHRoZSBzb3VyY2UgdHJlZSBwcmlzdGluZSwgeW91IGNhbiBjaGFuZ2UgdGhlIGJ1aWxkIGRpcmVjdG9yeSB3aXRoIHRoZQorOm9wdGlvbjpgLS1idWlsZC1iYXNlYCBvcHRpb24uIEZvciBleGFtcGxlOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0tYnVpbGQtYmFzZT0vdG1wL3B5YnVpbGQvZm9vLTEuMAorCisoT3IgeW91IGNvdWxkIGRvIHRoaXMgcGVybWFuZW50bHkgd2l0aCBhIGRpcmVjdGl2ZSBpbiB5b3VyIHN5c3RlbSBvciBwZXJzb25hbAorRGlzdHV0aWxzIGNvbmZpZ3VyYXRpb24gZmlsZTsgc2VlIHNlY3Rpb24gOnJlZjpgaW5zdC1jb25maWctZmlsZXNgLikgIE5vcm1hbGx5LCB0aGlzCitpc24ndCBuZWNlc3NhcnkuCisKK1RoZSBkZWZhdWx0IGxheW91dCBmb3IgdGhlIGJ1aWxkIHRyZWUgaXMgYXMgZm9sbG93czo6CisKKyAgIC0tLSBidWlsZC8gLS0tIGxpYi8KKyAgIG9yCisgICAtLS0gYnVpbGQvIC0tLSBsaWIuPHBsYXQ+LworICAgICAgICAgICAgICAgICAgdGVtcC48cGxhdD4vCisKK3doZXJlIGBgPHBsYXQ+YGAgZXhwYW5kcyB0byBhIGJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoZSBjdXJyZW50IE9TL2hhcmR3YXJlCitwbGF0Zm9ybSBhbmQgUHl0aG9uIHZlcnNpb24uICBUaGUgZmlyc3QgZm9ybSwgd2l0aCBqdXN0IGEgOmZpbGU6YGxpYmAgZGlyZWN0b3J5LAoraXMgdXNlZCBmb3IgInB1cmUgbW9kdWxlIGRpc3RyaWJ1dGlvbnMiLS0tdGhhdCBpcywgbW9kdWxlIGRpc3RyaWJ1dGlvbnMgdGhhdAoraW5jbHVkZSBvbmx5IHB1cmUgUHl0aG9uIG1vZHVsZXMuICBJZiBhIG1vZHVsZSBkaXN0cmlidXRpb24gY29udGFpbnMgYW55CitleHRlbnNpb25zIChtb2R1bGVzIHdyaXR0ZW4gaW4gQy9DKyspLCB0aGVuIHRoZSBzZWNvbmQgZm9ybSwgd2l0aCB0d28gYGA8cGxhdD5gYAorZGlyZWN0b3JpZXMsIGlzIHVzZWQuICBJbiB0aGF0IGNhc2UsIHRoZSA6ZmlsZTpgdGVtcC57cGxhdH1gIGRpcmVjdG9yeSBob2xkcwordGVtcG9yYXJ5IGZpbGVzIGdlbmVyYXRlZCBieSB0aGUgY29tcGlsZS9saW5rIHByb2Nlc3MgdGhhdCBkb24ndCBhY3R1YWxseSBnZXQKK2luc3RhbGxlZC4gIEluIGVpdGhlciBjYXNlLCB0aGUgOmZpbGU6YGxpYmAgKG9yIDpmaWxlOmBsaWIue3BsYXR9YCkgZGlyZWN0b3J5Citjb250YWlucyBhbGwgUHl0aG9uIG1vZHVsZXMgKHB1cmUgUHl0aG9uIGFuZCBleHRlbnNpb25zKSB0aGF0IHdpbGwgYmUgaW5zdGFsbGVkLgorCitJbiB0aGUgZnV0dXJlLCBtb3JlIGRpcmVjdG9yaWVzIHdpbGwgYmUgYWRkZWQgdG8gaGFuZGxlIFB5dGhvbiBzY3JpcHRzLAorZG9jdW1lbnRhdGlvbiwgYmluYXJ5IGV4ZWN1dGFibGVzLCBhbmQgd2hhdGV2ZXIgZWxzZSBpcyBuZWVkZWQgdG8gaGFuZGxlIHRoZSBqb2IKK29mIGluc3RhbGxpbmcgUHl0aG9uIG1vZHVsZXMgYW5kIGFwcGxpY2F0aW9ucy4KKworCisuLiBfaW5zdC1ob3ctaW5zdGFsbC13b3JrczoKKworSG93IGluc3RhbGxhdGlvbiB3b3JrcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitBZnRlciB0aGUgOmNvbW1hbmQ6YGJ1aWxkYCBjb21tYW5kIHJ1bnMgKHdoZXRoZXIgeW91IHJ1biBpdCBleHBsaWNpdGx5LCBvciB0aGUKKzpjb21tYW5kOmBpbnN0YWxsYCBjb21tYW5kIGRvZXMgaXQgZm9yIHlvdSksIHRoZSB3b3JrIG9mIHRoZSA6Y29tbWFuZDpgaW5zdGFsbGAKK2NvbW1hbmQgaXMgcmVsYXRpdmVseSBzaW1wbGU6IGFsbCBpdCBoYXMgdG8gZG8gaXMgY29weSBldmVyeXRoaW5nIHVuZGVyCis6ZmlsZTpgYnVpbGQvbGliYCAob3IgOmZpbGU6YGJ1aWxkL2xpYi57cGxhdH1gKSB0byB5b3VyIGNob3NlbiBpbnN0YWxsYXRpb24KK2RpcmVjdG9yeS4KKworSWYgeW91IGRvbid0IGNob29zZSBhbiBpbnN0YWxsYXRpb24gZGlyZWN0b3J5LS0taS5lLiwgaWYgeW91IGp1c3QgcnVuIGBgc2V0dXAucHkKK2luc3RhbGxgYFwgLS0tdGhlbiB0aGUgOmNvbW1hbmQ6YGluc3RhbGxgIGNvbW1hbmQgaW5zdGFsbHMgdG8gdGhlIHN0YW5kYXJkCitsb2NhdGlvbiBmb3IgdGhpcmQtcGFydHkgUHl0aG9uIG1vZHVsZXMuICBUaGlzIGxvY2F0aW9uIHZhcmllcyBieSBwbGF0Zm9ybSBhbmQKK2J5IGhvdyB5b3UgYnVpbHQvaW5zdGFsbGVkIFB5dGhvbiBpdHNlbGYuICBPbiBVbml4IChhbmQgTWFjIE9TIFgsIHdoaWNoIGlzIGFsc28KK1VuaXgtYmFzZWQpLCBpdCBhbHNvIGRlcGVuZHMgb24gd2hldGhlciB0aGUgbW9kdWxlIGRpc3RyaWJ1dGlvbiBiZWluZyBpbnN0YWxsZWQKK2lzIHB1cmUgUHl0aG9uIG9yIGNvbnRhaW5zIGV4dGVuc2lvbnMgKCJub24tcHVyZSIpOgorCisrLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgUGxhdGZvcm0gICAgICAgIHwgU3RhbmRhcmQgaW5zdGFsbGF0aW9uIGxvY2F0aW9uICAgICAgICAgICAgICAgICAgICAgIHwgRGVmYXVsdCB2YWx1ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgfAorKz09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT0rCit8IFVuaXggKHB1cmUpICAgICB8IDpmaWxlOmB7cHJlZml4fS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AgICAgICB8IDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYCB8IFwoMSkgIHwKKystLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBVbml4IChub24tcHVyZSkgfCA6ZmlsZTpge2V4ZWMtcHJlZml4fS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AgfCA6ZmlsZTpgL3Vzci9sb2NhbC9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AgfCBcKDEpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgV2luZG93cyAgICAgICAgIHwgOmZpbGU6YHtwcmVmaXh9XFxMaWJcXHNpdGUtcGFja2FnZXNgICAgICAgICAgICAgICAgIHwgOmZpbGU6YEM6XFxQeXRob257WFl9XFxMaWJcXHNpdGUtcGFja2FnZXNgICAgICAgIHwgXCgyKSAgfAorKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCisKK05vdGVzOgorCisoMSkKKyAgIE1vc3QgTGludXggZGlzdHJpYnV0aW9ucyBpbmNsdWRlIFB5dGhvbiBhcyBhIHN0YW5kYXJkIHBhcnQgb2YgdGhlIHN5c3RlbSwgc28KKyAgIDpmaWxlOmB7cHJlZml4fWAgYW5kIDpmaWxlOmB7ZXhlYy1wcmVmaXh9YCBhcmUgdXN1YWxseSBib3RoIDpmaWxlOmAvdXNyYCBvbgorICAgTGludXguICBJZiB5b3UgYnVpbGQgUHl0aG9uIHlvdXJzZWxmIG9uIExpbnV4IChvciBhbnkgVW5peC1saWtlIHN5c3RlbSksIHRoZQorICAgZGVmYXVsdCA6ZmlsZTpge3ByZWZpeH1gIGFuZCA6ZmlsZTpge2V4ZWMtcHJlZml4fWAgYXJlIDpmaWxlOmAvdXNyL2xvY2FsYC4KKworKDIpCisgICBUaGUgZGVmYXVsdCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IG9uIFdpbmRvd3Mgd2FzIDpmaWxlOmBDOlxcUHJvZ3JhbQorICAgRmlsZXNcXFB5dGhvbmAgdW5kZXIgUHl0aG9uIDEuNmExLCAxLjUuMiwgYW5kIGVhcmxpZXIuCisKKzpmaWxlOmB7cHJlZml4fWAgYW5kIDpmaWxlOmB7ZXhlYy1wcmVmaXh9YCBzdGFuZCBmb3IgdGhlIGRpcmVjdG9yaWVzIHRoYXQgUHl0aG9uCitpcyBpbnN0YWxsZWQgdG8sIGFuZCB3aGVyZSBpdCBmaW5kcyBpdHMgbGlicmFyaWVzIGF0IHJ1bi10aW1lLiAgVGhleSBhcmUgYWx3YXlzCit0aGUgc2FtZSB1bmRlciBXaW5kb3dzLCBhbmQgdmVyeSBvZnRlbiB0aGUgc2FtZSB1bmRlciBVbml4IGFuZCBNYWMgT1MgWC4gIFlvdQorY2FuIGZpbmQgb3V0IHdoYXQgeW91ciBQeXRob24gaW5zdGFsbGF0aW9uIHVzZXMgZm9yIDpmaWxlOmB7cHJlZml4fWAgYW5kCis6ZmlsZTpge2V4ZWMtcHJlZml4fWAgYnkgcnVubmluZyBQeXRob24gaW4gaW50ZXJhY3RpdmUgbW9kZSBhbmQgdHlwaW5nIGEgZmV3CitzaW1wbGUgY29tbWFuZHMuIFVuZGVyIFVuaXgsIGp1c3QgdHlwZSBgYHB5dGhvbmBgIGF0IHRoZSBzaGVsbCBwcm9tcHQuICBVbmRlcgorV2luZG93cywgY2hvb3NlIDptZW51c2VsZWN0aW9uOmBTdGFydCAtLT4gUHJvZ3JhbXMgLS0+IFB5dGhvbiBYLlkgLS0+CitQeXRob24gKGNvbW1hbmQgbGluZSlgLiAgIE9uY2UgdGhlIGludGVycHJldGVyIGlzIHN0YXJ0ZWQsIHlvdSB0eXBlIFB5dGhvbiBjb2RlCithdCB0aGUgcHJvbXB0LiAgRm9yIGV4YW1wbGUsIG9uIG15IExpbnV4IHN5c3RlbSwgSSB0eXBlIHRoZSB0aHJlZSBQeXRob24KK3N0YXRlbWVudHMgc2hvd24gYmVsb3csIGFuZCBnZXQgdGhlIG91dHB1dCBhcyBzaG93biwgdG8gZmluZCBvdXQgbXkKKzpmaWxlOmB7cHJlZml4fWAgYW5kIDpmaWxlOmB7ZXhlYy1wcmVmaXh9YDo6CisKKyAgIFB5dGhvbiAyLjQgKCMyNiwgQXVnICA3IDIwMDQsIDE3OjE5OjAyKQorICAgVHlwZSAiaGVscCIsICJjb3B5cmlnaHQiLCAiY3JlZGl0cyIgb3IgImxpY2Vuc2UiIGZvciBtb3JlIGluZm9ybWF0aW9uLgorICAgPj4+IGltcG9ydCBzeXMKKyAgID4+PiBzeXMucHJlZml4CisgICAnL3VzcicKKyAgID4+PiBzeXMuZXhlY19wcmVmaXgKKyAgICcvdXNyJworCitBIGZldyBvdGhlciBwbGFjZWhvbGRlcnMgYXJlIHVzZWQgaW4gdGhpcyBkb2N1bWVudDogOmZpbGU6YHtYLll9YCBzdGFuZHMgZm9yIHRoZQordmVyc2lvbiBvZiBQeXRob24sIGZvciBleGFtcGxlIGBgMy4yYGA7IDpmaWxlOmB7YWJpZmxhZ3N9YCB3aWxsIGJlIHJlcGxhY2VkIGJ5Cit0aGUgdmFsdWUgb2YgOmRhdGE6YHN5cy5hYmlmbGFnc2Agb3IgdGhlIGVtcHR5IHN0cmluZyBmb3IgcGxhdGZvcm1zIHdoaWNoIGRvbid0CitkZWZpbmUgQUJJIGZsYWdzOyA6ZmlsZTpge2Rpc3RuYW1lfWAgd2lsbCBiZSByZXBsYWNlZCBieSB0aGUgbmFtZSBvZiB0aGUgbW9kdWxlCitkaXN0cmlidXRpb24gYmVpbmcgaW5zdGFsbGVkLiAgRG90cyBhbmQgY2FwaXRhbGl6YXRpb24gYXJlIGltcG9ydGFudCBpbiB0aGUKK3BhdGhzOyBmb3IgZXhhbXBsZSwgYSB2YWx1ZSB0aGF0IHVzZXMgYGBweXRob24zLjJgYCBvbiBVTklYIHdpbGwgdHlwaWNhbGx5IHVzZQorYGBQeXRob24zMmBgIG9uIFdpbmRvd3MuCisKK0lmIHlvdSBkb24ndCB3YW50IHRvIGluc3RhbGwgbW9kdWxlcyB0byB0aGUgc3RhbmRhcmQgbG9jYXRpb24sIG9yIGlmIHlvdSBkb24ndAoraGF2ZSBwZXJtaXNzaW9uIHRvIHdyaXRlIHRoZXJlLCB0aGVuIHlvdSBuZWVkIHRvIHJlYWQgYWJvdXQgYWx0ZXJuYXRlCitpbnN0YWxsYXRpb25zIGluIHNlY3Rpb24gOnJlZjpgaW5zdC1hbHQtaW5zdGFsbGAuICBJZiB5b3Ugd2FudCB0byBjdXN0b21pemUgeW91cgoraW5zdGFsbGF0aW9uIGRpcmVjdG9yaWVzIG1vcmUgaGVhdmlseSwgc2VlIHNlY3Rpb24gOnJlZjpgaW5zdC1jdXN0b20taW5zdGFsbGAgb24KK2N1c3RvbSBpbnN0YWxsYXRpb25zLgorCisKKy4uIF9pbnN0LWFsdC1pbnN0YWxsOgorCitBbHRlcm5hdGUgSW5zdGFsbGF0aW9uCis9PT09PT09PT09PT09PT09PT09PT09CisKK09mdGVuLCBpdCBpcyBuZWNlc3Nhcnkgb3IgZGVzaXJhYmxlIHRvIGluc3RhbGwgbW9kdWxlcyB0byBhIGxvY2F0aW9uIG90aGVyIHRoYW4KK3RoZSBzdGFuZGFyZCBsb2NhdGlvbiBmb3IgdGhpcmQtcGFydHkgUHl0aG9uIG1vZHVsZXMuICBGb3IgZXhhbXBsZSwgb24gYSBVbml4CitzeXN0ZW0geW91IG1pZ2h0IG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gd3JpdGUgdG8gdGhlIHN0YW5kYXJkIHRoaXJkLXBhcnR5IG1vZHVsZQorZGlyZWN0b3J5LiAgT3IgeW91IG1pZ2h0IHdpc2ggdG8gdHJ5IG91dCBhIG1vZHVsZSBiZWZvcmUgbWFraW5nIGl0IGEgc3RhbmRhcmQKK3BhcnQgb2YgeW91ciBsb2NhbCBQeXRob24gaW5zdGFsbGF0aW9uLiAgVGhpcyBpcyBlc3BlY2lhbGx5IHRydWUgd2hlbiB1cGdyYWRpbmcKK2EgZGlzdHJpYnV0aW9uIGFscmVhZHkgcHJlc2VudDogeW91IHdhbnQgdG8gbWFrZSBzdXJlIHlvdXIgZXhpc3RpbmcgYmFzZSBvZgorc2NyaXB0cyBzdGlsbCB3b3JrcyB3aXRoIHRoZSBuZXcgdmVyc2lvbiBiZWZvcmUgYWN0dWFsbHkgdXBncmFkaW5nLgorCitUaGUgRGlzdHV0aWxzIDpjb21tYW5kOmBpbnN0YWxsYCBjb21tYW5kIGlzIGRlc2lnbmVkIHRvIG1ha2UgaW5zdGFsbGluZyBtb2R1bGUKK2Rpc3RyaWJ1dGlvbnMgdG8gYW4gYWx0ZXJuYXRlIGxvY2F0aW9uIHNpbXBsZSBhbmQgcGFpbmxlc3MuICBUaGUgYmFzaWMgaWRlYSBpcwordGhhdCB5b3Ugc3VwcGx5IGEgYmFzZSBkaXJlY3RvcnkgZm9yIHRoZSBpbnN0YWxsYXRpb24sIGFuZCB0aGUKKzpjb21tYW5kOmBpbnN0YWxsYCBjb21tYW5kIHBpY2tzIGEgc2V0IG9mIGRpcmVjdG9yaWVzIChjYWxsZWQgYW4gKmluc3RhbGxhdGlvbgorc2NoZW1lKikgdW5kZXIgdGhpcyBiYXNlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBpbnN0YWxsIGZpbGVzLiAgVGhlIGRldGFpbHMKK2RpZmZlciBhY3Jvc3MgcGxhdGZvcm1zLCBzbyByZWFkIHdoaWNoZXZlciBvZiB0aGUgZm9sbG93aW5nIHNlY3Rpb25zIGFwcGxpZXMgdG8KK3lvdS4KKworTm90ZSB0aGF0IHRoZSB2YXJpb3VzIGFsdGVybmF0ZSBpbnN0YWxsYXRpb24gc2NoZW1lcyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlOiB5b3UKK2NhbiBwYXNzIGBgLS11c2VyYGAsIG9yIGBgLS1ob21lYGAsIG9yIGBgLS1wcmVmaXhgYCBhbmQgYGAtLWV4ZWMtcHJlZml4YGAsIG9yCitgYC0taW5zdGFsbC1iYXNlYGAgYW5kIGBgLS1pbnN0YWxsLXBsYXRiYXNlYGAsIGJ1dCB5b3UgY2FuJ3QgbWl4IGZyb20gdGhlc2UKK2dyb3Vwcy4KKworCisuLiBfaW5zdC1hbHQtaW5zdGFsbC11c2VyOgorCitBbHRlcm5hdGUgaW5zdGFsbGF0aW9uOiB0aGUgdXNlciBzY2hlbWUKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGlzIHNjaGVtZSBpcyBkZXNpZ25lZCB0byBiZSB0aGUgbW9zdCBjb252ZW5pZW50IHNvbHV0aW9uIGZvciB1c2VycyB0aGF0IGRvbid0CitoYXZlIHdyaXRlIHBlcm1pc3Npb24gdG8gdGhlIGdsb2JhbCBzaXRlLXBhY2thZ2VzIGRpcmVjdG9yeSBvciBkb24ndCB3YW50IHRvCitpbnN0YWxsIGludG8gaXQuICBJdCBpcyBlbmFibGVkIHdpdGggYSBzaW1wbGUgb3B0aW9uOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS11c2VyCisKK0ZpbGVzIHdpbGwgYmUgaW5zdGFsbGVkIGludG8gc3ViZGlyZWN0b3JpZXMgb2YgOmRhdGE6YHNpdGUuVVNFUl9CQVNFYCAod3JpdHRlbgorYXMgOmZpbGU6YHt1c2VyYmFzZX1gIGhlcmVhZnRlcikuICBUaGlzIHNjaGVtZSBpbnN0YWxscyBwdXJlIFB5dGhvbiBtb2R1bGVzIGFuZAorZXh0ZW5zaW9uIG1vZHVsZXMgaW4gdGhlIHNhbWUgbG9jYXRpb24gKGFsc28ga25vd24gYXMgOmRhdGE6YHNpdGUuVVNFUl9TSVRFYCkuCitIZXJlIGFyZSB0aGUgdmFsdWVzIGZvciBVTklYLCBpbmNsdWRpbmcgTWFjIE9TIFg6CisKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorbW9kdWxlcyAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9L2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYAorc2NyaXB0cyAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9L2JpbmAKK2RhdGEgICAgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfWAKK0MgaGVhZGVycyAgICAgICA6ZmlsZTpge3VzZXJiYXNlfS9pbmNsdWRlL3B5dGhvbntYLll9e2FiaWZsYWdzfS97ZGlzdG5hbWV9YAorPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0FuZCBoZXJlIGFyZSB0aGUgdmFsdWVzIHVzZWQgb24gV2luZG93czoKKworPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitUeXBlIG9mIGZpbGUgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQorPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cittb2R1bGVzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1cXFB5dGhvbntYWX1cXHNpdGUtcGFja2FnZXNgCitzY3JpcHRzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1cXFNjcmlwdHNgCitkYXRhICAgICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1gCitDIGhlYWRlcnMgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1cXFB5dGhvbntYWX1cXEluY2x1ZGVcXHtkaXN0bmFtZX1gCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworVGhlIGFkdmFudGFnZSBvZiB1c2luZyB0aGlzIHNjaGVtZSBjb21wYXJlZCB0byB0aGUgb3RoZXIgb25lcyBkZXNjcmliZWQgYmVsb3cgaXMKK3RoYXQgdGhlIHVzZXIgc2l0ZS1wYWNrYWdlcyBkaXJlY3RvcnkgaXMgdW5kZXIgbm9ybWFsIGNvbmRpdGlvbnMgYWx3YXlzIGluY2x1ZGVkCitpbiA6ZGF0YTpgc3lzLnBhdGhgIChzZWUgOm1vZDpgc2l0ZWAgZm9yIG1vcmUgaW5mb3JtYXRpb24pLCB3aGljaCBtZWFucyB0aGF0Cit0aGVyZSBpcyBubyBhZGRpdGlvbmFsIHN0ZXAgdG8gcGVyZm9ybSBhZnRlciBydW5uaW5nIHRoZSA6ZmlsZTpgc2V0dXAucHlgIHNjcmlwdAordG8gZmluYWxpemUgdGhlIGluc3RhbGxhdGlvbi4KKworVGhlIDpjb21tYW5kOmBidWlsZF9leHRgIGNvbW1hbmQgYWxzbyBoYXMgYSBgYC0tdXNlcmBgIG9wdGlvbiB0byBhZGQKKzpmaWxlOmB7dXNlcmJhc2V9L2luY2x1ZGVgIHRvIHRoZSBjb21waWxlciBzZWFyY2ggcGF0aCBmb3IgaGVhZGVyIGZpbGVzIGFuZAorOmZpbGU6YHt1c2VyYmFzZX0vbGliYCB0byB0aGUgY29tcGlsZXIgc2VhcmNoIHBhdGggZm9yIGxpYnJhcmllcyBhcyB3ZWxsIGFzIHRvCit0aGUgcnVudGltZSBzZWFyY2ggcGF0aCBmb3Igc2hhcmVkIEMgbGlicmFyaWVzIChycGF0aCkuCisKKworLi4gX2luc3QtYWx0LWluc3RhbGwtaG9tZToKKworQWx0ZXJuYXRlIGluc3RhbGxhdGlvbjogdGhlIGhvbWUgc2NoZW1lCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIGlkZWEgYmVoaW5kIHRoZSAiaG9tZSBzY2hlbWUiIGlzIHRoYXQgeW91IGJ1aWxkIGFuZCBtYWludGFpbiBhIHBlcnNvbmFsCitzdGFzaCBvZiBQeXRob24gbW9kdWxlcy4gIFRoaXMgc2NoZW1lJ3MgbmFtZSBpcyBkZXJpdmVkIGZyb20gdGhlIGlkZWEgb2YgYQorImhvbWUiIGRpcmVjdG9yeSBvbiBVbml4LCBzaW5jZSBpdCdzIG5vdCB1bnVzdWFsIGZvciBhIFVuaXggdXNlciB0byBtYWtlIHRoZWlyCitob21lIGRpcmVjdG9yeSBoYXZlIGEgbGF5b3V0IHNpbWlsYXIgdG8gOmZpbGU6YC91c3IvYCBvciA6ZmlsZTpgL3Vzci9sb2NhbC9gLgorVGhpcyBzY2hlbWUgY2FuIGJlIHVzZWQgYnkgYW55b25lLCByZWdhcmRsZXNzIG9mIHRoZSBvcGVyYXRpbmcgc3lzdGVtIHRoZXkKK2FyZSBpbnN0YWxsaW5nIGZvci4KKworSW5zdGFsbGluZyBhIG5ldyBtb2R1bGUgZGlzdHJpYnV0aW9uIGlzIGFzIHNpbXBsZSBhcyA6OgorCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWhvbWU9PGRpcj4KKword2hlcmUgeW91IGNhbiBzdXBwbHkgYW55IGRpcmVjdG9yeSB5b3UgbGlrZSBmb3IgdGhlIDpvcHRpb246YC0taG9tZWAgb3B0aW9uLiAgT24KK1VuaXgsIGxhenkgdHlwaXN0cyBjYW4ganVzdCB0eXBlIGEgdGlsZGUgKGBgfmBgKTsgdGhlIDpjb21tYW5kOmBpbnN0YWxsYCBjb21tYW5kCit3aWxsIGV4cGFuZCB0aGlzIHRvIHlvdXIgaG9tZSBkaXJlY3Rvcnk6OgorCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWhvbWU9fgorCitUbyBtYWtlIFB5dGhvbiBmaW5kIHRoZSBkaXN0cmlidXRpb25zIGluc3RhbGxlZCB3aXRoIHRoaXMgc2NoZW1lLCB5b3UgbWF5IGhhdmUKK3RvIDpyZWY6YG1vZGlmeSBQeXRob24ncyBzZWFyY2ggcGF0aCA8aW5zdC1zZWFyY2gtcGF0aD5gIG9yIGVkaXQKKzptb2Q6YHNpdGVjdXN0b21pemVgIChzZWUgOm1vZDpgc2l0ZWApIHRvIGNhbGwgOmZ1bmM6YHNpdGUuYWRkc2l0ZWRpcmAgb3IgZWRpdAorOmRhdGE6YHN5cy5wYXRoYC4KKworVGhlIDpvcHRpb246YC0taG9tZWAgb3B0aW9uIGRlZmluZXMgdGhlIGluc3RhbGxhdGlvbiBiYXNlIGRpcmVjdG9yeS4gIEZpbGVzIGFyZQoraW5zdGFsbGVkIHRvIHRoZSBmb2xsb3dpbmcgZGlyZWN0b3JpZXMgdW5kZXIgdGhlIGluc3RhbGxhdGlvbiBiYXNlIGFzIGZvbGxvd3M6CisKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorbW9kdWxlcyAgICAgICAgIDpmaWxlOmB7aG9tZX0vbGliL3B5dGhvbmAKK3NjcmlwdHMgICAgICAgICA6ZmlsZTpge2hvbWV9L2JpbmAKK2RhdGEgICAgICAgICAgICA6ZmlsZTpge2hvbWV9YAorQyBoZWFkZXJzICAgICAgIDpmaWxlOmB7aG9tZX0vaW5jbHVkZS9weXRob24ve2Rpc3RuYW1lfWAKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisoTWVudGFsbHkgcmVwbGFjZSBzbGFzaGVzIHdpdGggYmFja3NsYXNoZXMgaWYgeW91J3JlIG9uIFdpbmRvd3MuKQorCisKKy4uIF9pbnN0LWFsdC1pbnN0YWxsLXByZWZpeC11bml4OgorCitBbHRlcm5hdGUgaW5zdGFsbGF0aW9uOiBVbml4ICh0aGUgcHJlZml4IHNjaGVtZSkKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgInByZWZpeCBzY2hlbWUiIGlzIHVzZWZ1bCB3aGVuIHlvdSB3aXNoIHRvIHVzZSBvbmUgUHl0aG9uIGluc3RhbGxhdGlvbiB0bworcGVyZm9ybSB0aGUgYnVpbGQvaW5zdGFsbCAoaS5lLiwgdG8gcnVuIHRoZSBzZXR1cCBzY3JpcHQpLCBidXQgaW5zdGFsbCBtb2R1bGVzCitpbnRvIHRoZSB0aGlyZC1wYXJ0eSBtb2R1bGUgZGlyZWN0b3J5IG9mIGEgZGlmZmVyZW50IFB5dGhvbiBpbnN0YWxsYXRpb24gKG9yCitzb21ldGhpbmcgdGhhdCBsb29rcyBsaWtlIGEgZGlmZmVyZW50IFB5dGhvbiBpbnN0YWxsYXRpb24pLiAgSWYgdGhpcyBzb3VuZHMgYQordHJpZmxlIHVudXN1YWwsIGl0IGlzLS0tdGhhdCdzIHdoeSB0aGUgdXNlciBhbmQgaG9tZSBzY2hlbWVzIGNvbWUgYmVmb3JlLiAgSG93ZXZlciwKK3RoZXJlIGFyZSBhdCBsZWFzdCB0d28ga25vd24gY2FzZXMgd2hlcmUgdGhlIHByZWZpeCBzY2hlbWUgd2lsbCBiZSB1c2VmdWwuCisKK0ZpcnN0LCBjb25zaWRlciB0aGF0IG1hbnkgTGludXggZGlzdHJpYnV0aW9ucyBwdXQgUHl0aG9uIGluIDpmaWxlOmAvdXNyYCwgcmF0aGVyCit0aGFuIHRoZSBtb3JlIHRyYWRpdGlvbmFsIDpmaWxlOmAvdXNyL2xvY2FsYC4gIFRoaXMgaXMgZW50aXJlbHkgYXBwcm9wcmlhdGUsCitzaW5jZSBpbiB0aG9zZSBjYXNlcyBQeXRob24gaXMgcGFydCBvZiAidGhlIHN5c3RlbSIgcmF0aGVyIHRoYW4gYSBsb2NhbCBhZGQtb24uCitIb3dldmVyLCBpZiB5b3UgYXJlIGluc3RhbGxpbmcgUHl0aG9uIG1vZHVsZXMgZnJvbSBzb3VyY2UsIHlvdSBwcm9iYWJseSB3YW50Cit0aGVtIHRvIGdvIGluIDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob24yLntYfWAgcmF0aGVyIHRoYW4KKzpmaWxlOmAvdXNyL2xpYi9weXRob24yLntYfWAuICBUaGlzIGNhbiBiZSBkb25lIHdpdGggOjoKKworICAgL3Vzci9iaW4vcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1wcmVmaXg9L3Vzci9sb2NhbAorCitBbm90aGVyIHBvc3NpYmlsaXR5IGlzIGEgbmV0d29yayBmaWxlc3lzdGVtIHdoZXJlIHRoZSBuYW1lIHVzZWQgdG8gd3JpdGUgdG8gYQorcmVtb3RlIGRpcmVjdG9yeSBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgbmFtZSB1c2VkIHRvIHJlYWQgaXQ6IGZvciBleGFtcGxlLCB0aGUKK1B5dGhvbiBpbnRlcnByZXRlciBhY2Nlc3NlZCBhcyA6ZmlsZTpgL3Vzci9sb2NhbC9iaW4vcHl0aG9uYCBtaWdodCBzZWFyY2ggZm9yCittb2R1bGVzIGluIDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob24yLntYfWAsIGJ1dCB0aG9zZSBtb2R1bGVzIHdvdWxkIGhhdmUgdG8KK2JlIGluc3RhbGxlZCB0bywgc2F5LCA6ZmlsZTpgL21udC97QHNlcnZlcn0vZXhwb3J0L2xpYi9weXRob24yLntYfWAuICBUaGlzIGNvdWxkCitiZSBkb25lIHdpdGggOjoKKworICAgL3Vzci9sb2NhbC9iaW4vcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1wcmVmaXg9L21udC9Ac2VydmVyL2V4cG9ydAorCitJbiBlaXRoZXIgY2FzZSwgdGhlIDpvcHRpb246YC0tcHJlZml4YCBvcHRpb24gZGVmaW5lcyB0aGUgaW5zdGFsbGF0aW9uIGJhc2UsIGFuZAordGhlIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgIG9wdGlvbiBkZWZpbmVzIHRoZSBwbGF0Zm9ybS1zcGVjaWZpYyBpbnN0YWxsYXRpb24KK2Jhc2UsIHdoaWNoIGlzIHVzZWQgZm9yIHBsYXRmb3JtLXNwZWNpZmljIGZpbGVzLiAgKEN1cnJlbnRseSwgdGhpcyBqdXN0IG1lYW5zCitub24tcHVyZSBtb2R1bGUgZGlzdHJpYnV0aW9ucywgYnV0IGNvdWxkIGJlIGV4cGFuZGVkIHRvIEMgbGlicmFyaWVzLCBiaW5hcnkKK2V4ZWN1dGFibGVzLCBldGMuKSAgSWYgOm9wdGlvbjpgLS1leGVjLXByZWZpeGAgaXMgbm90IHN1cHBsaWVkLCBpdCBkZWZhdWx0cyB0bworOm9wdGlvbjpgLS1wcmVmaXhgLiAgRmlsZXMgYXJlIGluc3RhbGxlZCBhcyBmb2xsb3dzOgorCis9PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitUeXBlIG9mIGZpbGUgICAgICBJbnN0YWxsYXRpb24gZGlyZWN0b3J5Cis9PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitQeXRob24gbW9kdWxlcyAgICA6ZmlsZTpge3ByZWZpeH0vbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgCitleHRlbnNpb24gbW9kdWxlcyA6ZmlsZTpge2V4ZWMtcHJlZml4fS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AKK3NjcmlwdHMgICAgICAgICAgIDpmaWxlOmB7cHJlZml4fS9iaW5gCitkYXRhICAgICAgICAgICAgICA6ZmlsZTpge3ByZWZpeH1gCitDIGhlYWRlcnMgICAgICAgICA6ZmlsZTpge3ByZWZpeH0vaW5jbHVkZS9weXRob257WC5ZfXthYmlmbGFnc30ve2Rpc3RuYW1lfWAKKz09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworVGhlcmUgaXMgbm8gcmVxdWlyZW1lbnQgdGhhdCA6b3B0aW9uOmAtLXByZWZpeGAgb3IgOm9wdGlvbjpgLS1leGVjLXByZWZpeGAKK2FjdHVhbGx5IHBvaW50IHRvIGFuIGFsdGVybmF0ZSBQeXRob24gaW5zdGFsbGF0aW9uOyBpZiB0aGUgZGlyZWN0b3JpZXMgbGlzdGVkCithYm92ZSBkbyBub3QgYWxyZWFkeSBleGlzdCwgdGhleSBhcmUgY3JlYXRlZCBhdCBpbnN0YWxsYXRpb24gdGltZS4KKworSW5jaWRlbnRhbGx5LCB0aGUgcmVhbCByZWFzb24gdGhlIHByZWZpeCBzY2hlbWUgaXMgaW1wb3J0YW50IGlzIHNpbXBseSB0aGF0IGEKK3N0YW5kYXJkIFVuaXggaW5zdGFsbGF0aW9uIHVzZXMgdGhlIHByZWZpeCBzY2hlbWUsIGJ1dCB3aXRoIDpvcHRpb246YC0tcHJlZml4YAorYW5kIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgIHN1cHBsaWVkIGJ5IFB5dGhvbiBpdHNlbGYgYXMgYGBzeXMucHJlZml4YGAgYW5kCitgYHN5cy5leGVjX3ByZWZpeGBgLiAgVGh1cywgeW91IG1pZ2h0IHRoaW5rIHlvdSdsbCBuZXZlciB1c2UgdGhlIHByZWZpeCBzY2hlbWUsCitidXQgZXZlcnkgdGltZSB5b3UgcnVuIGBgcHl0aG9uIHNldHVwLnB5IGluc3RhbGxgYCB3aXRob3V0IGFueSBvdGhlciBvcHRpb25zLAoreW91J3JlIHVzaW5nIGl0LgorCitOb3RlIHRoYXQgaW5zdGFsbGluZyBleHRlbnNpb25zIHRvIGFuIGFsdGVybmF0ZSBQeXRob24gaW5zdGFsbGF0aW9uIGhhcyBubworZWZmZWN0IG9uIGhvdyB0aG9zZSBleHRlbnNpb25zIGFyZSBidWlsdDogaW4gcGFydGljdWxhciwgdGhlIFB5dGhvbiBoZWFkZXIgZmlsZXMKKyg6ZmlsZTpgUHl0aG9uLmhgIGFuZCBmcmllbmRzKSBpbnN0YWxsZWQgd2l0aCB0aGUgUHl0aG9uIGludGVycHJldGVyIHVzZWQgdG8gcnVuCit0aGUgc2V0dXAgc2NyaXB0IHdpbGwgYmUgdXNlZCBpbiBjb21waWxpbmcgZXh0ZW5zaW9ucy4gIEl0IGlzIHlvdXIKK3Jlc3BvbnNpYmlsaXR5IHRvIGVuc3VyZSB0aGF0IHRoZSBpbnRlcnByZXRlciB1c2VkIHRvIHJ1biBleHRlbnNpb25zIGluc3RhbGxlZAoraW4gdGhpcyB3YXkgaXMgY29tcGF0aWJsZSB3aXRoIHRoZSBpbnRlcnByZXRlciB1c2VkIHRvIGJ1aWxkIHRoZW0uICBUaGUgYmVzdCB3YXkKK3RvIGRvIHRoaXMgaXMgdG8gZW5zdXJlIHRoYXQgdGhlIHR3byBpbnRlcnByZXRlcnMgYXJlIHRoZSBzYW1lIHZlcnNpb24gb2YgUHl0aG9uCisocG9zc2libHkgZGlmZmVyZW50IGJ1aWxkcywgb3IgcG9zc2libHkgY29waWVzIG9mIHRoZSBzYW1lIGJ1aWxkKS4gIChPZiBjb3Vyc2UsCitpZiB5b3VyIDpvcHRpb246YC0tcHJlZml4YCBhbmQgOm9wdGlvbjpgLS1leGVjLXByZWZpeGAgZG9uJ3QgZXZlbiBwb2ludCB0byBhbgorYWx0ZXJuYXRlIFB5dGhvbiBpbnN0YWxsYXRpb24sIHRoaXMgaXMgaW1tYXRlcmlhbC4pCisKKworLi4gX2luc3QtYWx0LWluc3RhbGwtcHJlZml4LXdpbmRvd3M6CisKK0FsdGVybmF0ZSBpbnN0YWxsYXRpb246IFdpbmRvd3MgKHRoZSBwcmVmaXggc2NoZW1lKQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1dpbmRvd3MgaGFzIG5vIGNvbmNlcHQgb2YgYSB1c2VyJ3MgaG9tZSBkaXJlY3RvcnksIGFuZCBzaW5jZSB0aGUgc3RhbmRhcmQgUHl0aG9uCitpbnN0YWxsYXRpb24gdW5kZXIgV2luZG93cyBpcyBzaW1wbGVyIHRoYW4gdW5kZXIgVW5peCwgdGhlIDpvcHRpb246YC0tcHJlZml4YAorb3B0aW9uIGhhcyB0cmFkaXRpb25hbGx5IGJlZW4gdXNlZCB0byBpbnN0YWxsIGFkZGl0aW9uYWwgcGFja2FnZXMgaW4gc2VwYXJhdGUKK2xvY2F0aW9ucyBvbiBXaW5kb3dzLiA6OgorCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLXByZWZpeD0iXFRlbXBcUHl0aG9uIgorCit0byBpbnN0YWxsIG1vZHVsZXMgdG8gdGhlIDpmaWxlOmBcXFRlbXBcXFB5dGhvbmAgZGlyZWN0b3J5IG9uIHRoZSBjdXJyZW50IGRyaXZlLgorCitUaGUgaW5zdGFsbGF0aW9uIGJhc2UgaXMgZGVmaW5lZCBieSB0aGUgOm9wdGlvbjpgLS1wcmVmaXhgIG9wdGlvbjsgdGhlCis6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YCBvcHRpb24gaXMgbm90IHN1cHBvcnRlZCB1bmRlciBXaW5kb3dzLCB3aGljaCBtZWFucyB0aGF0CitwdXJlIFB5dGhvbiBtb2R1bGVzIGFuZCBleHRlbnNpb24gbW9kdWxlcyBhcmUgaW5zdGFsbGVkIGludG8gdGhlIHNhbWUgbG9jYXRpb24uCitGaWxlcyBhcmUgaW5zdGFsbGVkIGFzIGZvbGxvd3M6CisKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitUeXBlIG9mIGZpbGUgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQorPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK21vZHVsZXMgICAgICAgICA6ZmlsZTpge3ByZWZpeH1cXExpYlxcc2l0ZS1wYWNrYWdlc2AKK3NjcmlwdHMgICAgICAgICA6ZmlsZTpge3ByZWZpeH1cXFNjcmlwdHNgCitkYXRhICAgICAgICAgICAgOmZpbGU6YHtwcmVmaXh9YAorQyBoZWFkZXJzICAgICAgIDpmaWxlOmB7cHJlZml4fVxcSW5jbHVkZVxce2Rpc3RuYW1lfWAKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKworLi4gX2luc3QtY3VzdG9tLWluc3RhbGw6CisKK0N1c3RvbSBJbnN0YWxsYXRpb24KKz09PT09PT09PT09PT09PT09PT0KKworU29tZXRpbWVzLCB0aGUgYWx0ZXJuYXRlIGluc3RhbGxhdGlvbiBzY2hlbWVzIGRlc2NyaWJlZCBpbiBzZWN0aW9uCis6cmVmOmBpbnN0LWFsdC1pbnN0YWxsYCBqdXN0IGRvbid0IGRvIHdoYXQgeW91IHdhbnQuICBZb3UgbWlnaHQgd2FudCB0byB0d2VhayBqdXN0CitvbmUgb3IgdHdvIGRpcmVjdG9yaWVzIHdoaWxlIGtlZXBpbmcgZXZlcnl0aGluZyB1bmRlciB0aGUgc2FtZSBiYXNlIGRpcmVjdG9yeSwKK29yIHlvdSBtaWdodCB3YW50IHRvIGNvbXBsZXRlbHkgcmVkZWZpbmUgdGhlIGluc3RhbGxhdGlvbiBzY2hlbWUuICBJbiBlaXRoZXIKK2Nhc2UsIHlvdSdyZSBjcmVhdGluZyBhICpjdXN0b20gaW5zdGFsbGF0aW9uIHNjaGVtZSouCisKK1RvIGNyZWF0ZSBhIGN1c3RvbSBpbnN0YWxsYXRpb24gc2NoZW1lLCB5b3Ugc3RhcnQgd2l0aCBvbmUgb2YgdGhlIGFsdGVybmF0ZQorc2NoZW1lcyBhbmQgb3ZlcnJpZGUgc29tZSBvZiB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yaWVzIHVzZWQgZm9yIHRoZSB2YXJpb3VzCit0eXBlcyBvZiBmaWxlcywgdXNpbmcgdGhlc2Ugb3B0aW9uczoKKworPT09PT09PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgICAgICAgICBPdmVycmlkZSBvcHRpb24KKz09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT0KK1B5dGhvbiBtb2R1bGVzICAgICAgICAgYGAtLWluc3RhbGwtcHVyZWxpYmBgCitleHRlbnNpb24gbW9kdWxlcyAgICAgIGBgLS1pbnN0YWxsLXBsYXRsaWJgYAorYWxsIG1vZHVsZXMgICAgICAgICAgICBgYC0taW5zdGFsbC1saWJgYAorc2NyaXB0cyAgICAgICAgICAgICAgICBgYC0taW5zdGFsbC1zY3JpcHRzYGAKK2RhdGEgICAgICAgICAgICAgICAgICAgYGAtLWluc3RhbGwtZGF0YWBgCitDIGhlYWRlcnMgICAgICAgICAgICAgIGBgLS1pbnN0YWxsLWhlYWRlcnNgYAorPT09PT09PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PQorCitUaGVzZSBvdmVycmlkZSBvcHRpb25zIGNhbiBiZSByZWxhdGl2ZSwgYWJzb2x1dGUsCitvciBleHBsaWNpdGx5IGRlZmluZWQgaW4gdGVybXMgb2Ygb25lIG9mIHRoZSBpbnN0YWxsYXRpb24gYmFzZSBkaXJlY3Rvcmllcy4KKyhUaGVyZSBhcmUgdHdvIGluc3RhbGxhdGlvbiBiYXNlIGRpcmVjdG9yaWVzLCBhbmQgdGhleSBhcmUgbm9ybWFsbHkgdGhlIHNhbWUtLS0KK3RoZXkgb25seSBkaWZmZXIgd2hlbiB5b3UgdXNlIHRoZSBVbml4ICJwcmVmaXggc2NoZW1lIiBhbmQgc3VwcGx5IGRpZmZlcmVudAorYGAtLXByZWZpeGBgIGFuZCBgYC0tZXhlYy1wcmVmaXhgYCBvcHRpb25zOyB1c2luZyBgYC0taW5zdGFsbC1saWJgYCB3aWxsCitvdmVycmlkZSB2YWx1ZXMgY29tcHV0ZWQgb3IgZ2l2ZW4gZm9yIGBgLS1pbnN0YWxsLXB1cmVsaWJgYCBhbmQKK2BgLS1pbnN0YWxsLXBsYXRsaWJgYCwgYW5kIGlzIHJlY29tbWVuZGVkIGZvciBzY2hlbWVzIHRoYXQgZG9uJ3QgbWFrZSBhCitkaWZmZXJlbmNlIGJldHdlZW4gUHl0aG9uIGFuZCBleHRlbnNpb24gbW9kdWxlcy4pCisKK0ZvciBleGFtcGxlLCBzYXkgeW91J3JlIGluc3RhbGxpbmcgYSBtb2R1bGUgZGlzdHJpYnV0aW9uIHRvIHlvdXIgaG9tZSBkaXJlY3RvcnkKK3VuZGVyIFVuaXgtLS1idXQgeW91IHdhbnQgc2NyaXB0cyB0byBnbyBpbiA6ZmlsZTpgfi9zY3JpcHRzYCByYXRoZXIgdGhhbgorOmZpbGU6YH4vYmluYC4gQXMgeW91IG1pZ2h0IGV4cGVjdCwgeW91IGNhbiBvdmVycmlkZSB0aGlzIGRpcmVjdG9yeSB3aXRoIHRoZQorOm9wdGlvbjpgLS1pbnN0YWxsLXNjcmlwdHNgIG9wdGlvbjsgaW4gdGhpcyBjYXNlLCBpdCBtYWtlcyBtb3N0IHNlbnNlIHRvIHN1cHBseQorYSByZWxhdGl2ZSBwYXRoLCB3aGljaCB3aWxsIGJlIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBpbnN0YWxsYXRpb24gYmFzZQorZGlyZWN0b3J5ICh5b3VyIGhvbWUgZGlyZWN0b3J5LCBpbiB0aGlzIGNhc2UpOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1ob21lPX4gLS1pbnN0YWxsLXNjcmlwdHM9c2NyaXB0cworCitBbm90aGVyIFVuaXggZXhhbXBsZTogc3VwcG9zZSB5b3VyIFB5dGhvbiBpbnN0YWxsYXRpb24gd2FzIGJ1aWx0IGFuZCBpbnN0YWxsZWQKK3dpdGggYSBwcmVmaXggb2YgOmZpbGU6YC91c3IvbG9jYWwvcHl0aG9uYCwgc28gdW5kZXIgYSBzdGFuZGFyZCAgaW5zdGFsbGF0aW9uCitzY3JpcHRzIHdpbGwgd2luZCB1cCBpbiA6ZmlsZTpgL3Vzci9sb2NhbC9weXRob24vYmluYC4gIElmIHlvdSB3YW50IHRoZW0gaW4KKzpmaWxlOmAvdXNyL2xvY2FsL2JpbmAgaW5zdGVhZCwgeW91IHdvdWxkIHN1cHBseSB0aGlzIGFic29sdXRlIGRpcmVjdG9yeSBmb3IgdGhlCis6b3B0aW9uOmAtLWluc3RhbGwtc2NyaXB0c2Agb3B0aW9uOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1pbnN0YWxsLXNjcmlwdHM9L3Vzci9sb2NhbC9iaW4KKworKFRoaXMgcGVyZm9ybXMgYW4gaW5zdGFsbGF0aW9uIHVzaW5nIHRoZSAicHJlZml4IHNjaGVtZSwiIHdoZXJlIHRoZSBwcmVmaXggaXMKK3doYXRldmVyIHlvdXIgUHl0aG9uIGludGVycHJldGVyIHdhcyBpbnN0YWxsZWQgd2l0aC0tLSA6ZmlsZTpgL3Vzci9sb2NhbC9weXRob25gCitpbiB0aGlzIGNhc2UuKQorCitJZiB5b3UgbWFpbnRhaW4gUHl0aG9uIG9uIFdpbmRvd3MsIHlvdSBtaWdodCB3YW50IHRoaXJkLXBhcnR5IG1vZHVsZXMgdG8gbGl2ZSBpbgorYSBzdWJkaXJlY3Rvcnkgb2YgOmZpbGU6YHtwcmVmaXh9YCwgcmF0aGVyIHRoYW4gcmlnaHQgaW4gOmZpbGU6YHtwcmVmaXh9YAoraXRzZWxmLiAgVGhpcyBpcyBhbG1vc3QgYXMgZWFzeSBhcyBjdXN0b21pemluZyB0aGUgc2NyaXB0IGluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKy0tLXlvdSBqdXN0IGhhdmUgdG8gcmVtZW1iZXIgdGhhdCB0aGVyZSBhcmUgdHdvIHR5cGVzIG9mIG1vZHVsZXMgdG8gd29ycnkgYWJvdXQsCitQeXRob24gYW5kIGV4dGVuc2lvbiBtb2R1bGVzLCB3aGljaCBjYW4gY29udmVuaWVudGx5IGJlIGJvdGggY29udHJvbGxlZCBieSBvbmUKK29wdGlvbjo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0taW5zdGFsbC1saWI9U2l0ZQorCitUaGUgc3BlY2lmaWVkIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkgaXMgcmVsYXRpdmUgdG8gOmZpbGU6YHtwcmVmaXh9YC4gIE9mCitjb3Vyc2UsIHlvdSBhbHNvIGhhdmUgdG8gZW5zdXJlIHRoYXQgdGhpcyBkaXJlY3RvcnkgaXMgaW4gUHl0aG9uJ3MgbW9kdWxlCitzZWFyY2ggcGF0aCwgc3VjaCBhcyBieSBwdXR0aW5nIGEgOmZpbGU6YC5wdGhgIGZpbGUgaW4gYSBzaXRlIGRpcmVjdG9yeSAoc2VlCis6bW9kOmBzaXRlYCkuICBTZWUgc2VjdGlvbiA6cmVmOmBpbnN0LXNlYXJjaC1wYXRoYCB0byBmaW5kIG91dCBob3cgdG8gbW9kaWZ5CitQeXRob24ncyBzZWFyY2ggcGF0aC4KKworSWYgeW91IHdhbnQgdG8gZGVmaW5lIGFuIGVudGlyZSBpbnN0YWxsYXRpb24gc2NoZW1lLCB5b3UganVzdCBoYXZlIHRvIHN1cHBseSBhbGwKK29mIHRoZSBpbnN0YWxsYXRpb24gZGlyZWN0b3J5IG9wdGlvbnMuICBUaGUgcmVjb21tZW5kZWQgd2F5IHRvIGRvIHRoaXMgaXMgdG8KK3N1cHBseSByZWxhdGl2ZSBwYXRoczsgZm9yIGV4YW1wbGUsIGlmIHlvdSB3YW50IHRvIG1haW50YWluIGFsbCBQeXRob24KK21vZHVsZS1yZWxhdGVkIGZpbGVzIHVuZGVyIDpmaWxlOmBweXRob25gIGluIHlvdXIgaG9tZSBkaXJlY3RvcnksIGFuZCB5b3Ugd2FudCBhCitzZXBhcmF0ZSBkaXJlY3RvcnkgZm9yIGVhY2ggcGxhdGZvcm0gdGhhdCB5b3UgdXNlIHlvdXIgaG9tZSBkaXJlY3RvcnkgZnJvbSwgeW91CittaWdodCBkZWZpbmUgdGhlIGZvbGxvd2luZyBpbnN0YWxsYXRpb24gc2NoZW1lOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1ob21lPX4gXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1pbnN0YWxsLXB1cmVsaWI9cHl0aG9uL2xpYiBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAtLWluc3RhbGwtcGxhdGxpYj1weXRob24vbGliLiRQTEFUIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1zY3JpcHRzPXB5dGhvbi9zY3JpcHRzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAtLWluc3RhbGwtZGF0YT1weXRob24vZGF0YQorCitvciwgZXF1aXZhbGVudGx5LCA6OgorCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWhvbWU9fi9weXRob24gXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1pbnN0YWxsLXB1cmVsaWI9bGliIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1wbGF0bGliPSdsaWIuJFBMQVQnIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1zY3JpcHRzPXNjcmlwdHMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1kYXRhPWRhdGEKKworYGAkUExBVGBgIGlzIG5vdCAobmVjZXNzYXJpbHkpIGFuIGVudmlyb25tZW50IHZhcmlhYmxlLS0taXQgd2lsbCBiZSBleHBhbmRlZCBieQordGhlIERpc3R1dGlscyBhcyBpdCBwYXJzZXMgeW91ciBjb21tYW5kIGxpbmUgb3B0aW9ucywganVzdCBhcyBpdCBkb2VzIHdoZW4KK3BhcnNpbmcgeW91ciBjb25maWd1cmF0aW9uIGZpbGUocykuCisKK09idmlvdXNseSwgc3BlY2lmeWluZyB0aGUgZW50aXJlIGluc3RhbGxhdGlvbiBzY2hlbWUgZXZlcnkgdGltZSB5b3UgaW5zdGFsbCBhCituZXcgbW9kdWxlIGRpc3RyaWJ1dGlvbiB3b3VsZCBiZSB2ZXJ5IHRlZGlvdXMuICBUaHVzLCB5b3UgY2FuIHB1dCB0aGVzZSBvcHRpb25zCitpbnRvIHlvdXIgRGlzdHV0aWxzIGNvbmZpZyBmaWxlIChzZWUgc2VjdGlvbiA6cmVmOmBpbnN0LWNvbmZpZy1maWxlc2ApOjoKKworICAgW2luc3RhbGxdCisgICBpbnN0YWxsLWJhc2U9JEhPTUUKKyAgIGluc3RhbGwtcHVyZWxpYj1weXRob24vbGliCisgICBpbnN0YWxsLXBsYXRsaWI9cHl0aG9uL2xpYi4kUExBVAorICAgaW5zdGFsbC1zY3JpcHRzPXB5dGhvbi9zY3JpcHRzCisgICBpbnN0YWxsLWRhdGE9cHl0aG9uL2RhdGEKKworb3IsIGVxdWl2YWxlbnRseSwgOjoKKworICAgW2luc3RhbGxdCisgICBpbnN0YWxsLWJhc2U9JEhPTUUvcHl0aG9uCisgICBpbnN0YWxsLXB1cmVsaWI9bGliCisgICBpbnN0YWxsLXBsYXRsaWI9bGliLiRQTEFUCisgICBpbnN0YWxsLXNjcmlwdHM9c2NyaXB0cworICAgaW5zdGFsbC1kYXRhPWRhdGEKKworTm90ZSB0aGF0IHRoZXNlIHR3byBhcmUgKm5vdCogZXF1aXZhbGVudCBpZiB5b3Ugc3VwcGx5IGEgZGlmZmVyZW50IGluc3RhbGxhdGlvbgorYmFzZSBkaXJlY3Rvcnkgd2hlbiB5b3UgcnVuIHRoZSBzZXR1cCBzY3JpcHQuICBGb3IgZXhhbXBsZSwgOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1pbnN0YWxsLWJhc2U9L3RtcAorCit3b3VsZCBpbnN0YWxsIHB1cmUgbW9kdWxlcyB0byA6ZmlsZTpgL3RtcC9weXRob24vbGliYCBpbiB0aGUgZmlyc3QgY2FzZSwgYW5kCit0byA6ZmlsZTpgL3RtcC9saWJgIGluIHRoZSBzZWNvbmQgY2FzZS4gIChGb3IgdGhlIHNlY29uZCBjYXNlLCB5b3UgcHJvYmFibHkKK3dhbnQgdG8gc3VwcGx5IGFuIGluc3RhbGxhdGlvbiBiYXNlIG9mIDpmaWxlOmAvdG1wL3B5dGhvbmAuKQorCitZb3UgcHJvYmFibHkgbm90aWNlZCB0aGUgdXNlIG9mIGBgJEhPTUVgYCBhbmQgYGAkUExBVGBgIGluIHRoZSBzYW1wbGUKK2NvbmZpZ3VyYXRpb24gZmlsZSBpbnB1dC4gIFRoZXNlIGFyZSBEaXN0dXRpbHMgY29uZmlndXJhdGlvbiB2YXJpYWJsZXMsIHdoaWNoCitiZWFyIGEgc3Ryb25nIHJlc2VtYmxhbmNlIHRvIGVudmlyb25tZW50IHZhcmlhYmxlcy4gSW4gZmFjdCwgeW91IGNhbiB1c2UKK2Vudmlyb25tZW50IHZhcmlhYmxlcyBpbiBjb25maWcgZmlsZXMgb24gcGxhdGZvcm1zIHRoYXQgaGF2ZSBzdWNoIGEgbm90aW9uIGJ1dAordGhlIERpc3R1dGlscyBhZGRpdGlvbmFsbHkgZGVmaW5lIGEgZmV3IGV4dHJhIHZhcmlhYmxlcyB0aGF0IG1heSBub3QgYmUgaW4geW91cgorZW52aXJvbm1lbnQsIHN1Y2ggYXMgYGAkUExBVGBgLiAgKEFuZCBvZiBjb3Vyc2UsIG9uIHN5c3RlbXMgdGhhdCBkb24ndCBoYXZlCitlbnZpcm9ubWVudCB2YXJpYWJsZXMsIHN1Y2ggYXMgTWFjIE9TIDksIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlcyBzdXBwbGllZCBieQordGhlIERpc3R1dGlscyBhcmUgdGhlIG9ubHkgb25lcyB5b3UgY2FuIHVzZS4pIFNlZSBzZWN0aW9uIDpyZWY6YGluc3QtY29uZmlnLWZpbGVzYAorZm9yIGRldGFpbHMuCisKKy4uIFhYWCBuZWVkIHNvbWUgV2luZG93cyBleGFtcGxlcy0tLXdoZW4gd291bGQgY3VzdG9tIGluc3RhbGxhdGlvbiBzY2hlbWVzIGJlCisgICBuZWVkZWQgb24gdGhvc2UgcGxhdGZvcm1zPworCisKKy4uIFhYWCBNb3ZlIHRoaXMgdG8gRG9jL3VzaW5nCisKKy4uIF9pbnN0LXNlYXJjaC1wYXRoOgorCitNb2RpZnlpbmcgUHl0aG9uJ3MgU2VhcmNoIFBhdGgKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitXaGVuIHRoZSBQeXRob24gaW50ZXJwcmV0ZXIgZXhlY3V0ZXMgYW4gOmtleXdvcmQ6YGltcG9ydGAgc3RhdGVtZW50LCBpdCBzZWFyY2hlcworZm9yIGJvdGggUHl0aG9uIGNvZGUgYW5kIGV4dGVuc2lvbiBtb2R1bGVzIGFsb25nIGEgc2VhcmNoIHBhdGguICBBIGRlZmF1bHQgdmFsdWUKK2ZvciB0aGUgcGF0aCBpcyBjb25maWd1cmVkIGludG8gdGhlIFB5dGhvbiBiaW5hcnkgd2hlbiB0aGUgaW50ZXJwcmV0ZXIgaXMgYnVpbHQuCitZb3UgY2FuIGRldGVybWluZSB0aGUgcGF0aCBieSBpbXBvcnRpbmcgdGhlIDptb2Q6YHN5c2AgbW9kdWxlIGFuZCBwcmludGluZyB0aGUKK3ZhbHVlIG9mIGBgc3lzLnBhdGhgYC4gICA6OgorCisgICAkIHB5dGhvbgorICAgUHl0aG9uIDIuMiAoIzExLCBPY3QgIDMgMjAwMiwgMTM6MzE6MjcpCisgICBbR0NDIDIuOTYgMjAwMDA3MzEgKFJlZCBIYXQgTGludXggNy4zIDIuOTYtMTEyKV0gb24gbGludXgyCisgICBUeXBlICJoZWxwIiwgImNvcHlyaWdodCIsICJjcmVkaXRzIiBvciAibGljZW5zZSIgZm9yIG1vcmUgaW5mb3JtYXRpb24uCisgICA+Pj4gaW1wb3J0IHN5cworICAgPj4+IHN5cy5wYXRoCisgICBbJycsICcvdXNyL2xvY2FsL2xpYi9weXRob24yLjMnLCAnL3Vzci9sb2NhbC9saWIvcHl0aG9uMi4zL3BsYXQtbGludXgyJywKKyAgICAnL3Vzci9sb2NhbC9saWIvcHl0aG9uMi4zL2xpYi10aycsICcvdXNyL2xvY2FsL2xpYi9weXRob24yLjMvbGliLWR5bmxvYWQnLAorICAgICcvdXNyL2xvY2FsL2xpYi9weXRob24yLjMvc2l0ZS1wYWNrYWdlcyddCisgICA+Pj4KKworVGhlIG51bGwgc3RyaW5nIGluIGBgc3lzLnBhdGhgYCByZXByZXNlbnRzIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCitUaGUgZXhwZWN0ZWQgY29udmVudGlvbiBmb3IgbG9jYWxseSBpbnN0YWxsZWQgcGFja2FnZXMgaXMgdG8gcHV0IHRoZW0gaW4gdGhlCis6ZmlsZTpgey4uLn0vc2l0ZS1wYWNrYWdlcy9gIGRpcmVjdG9yeSwgYnV0IHlvdSBtYXkgd2FudCB0byBpbnN0YWxsIFB5dGhvbgorbW9kdWxlcyBpbnRvIHNvbWUgYXJiaXRyYXJ5IGRpcmVjdG9yeS4gIEZvciBleGFtcGxlLCB5b3VyIHNpdGUgbWF5IGhhdmUgYQorY29udmVudGlvbiBvZiBrZWVwaW5nIGFsbCBzb2Z0d2FyZSByZWxhdGVkIHRvIHRoZSB3ZWIgc2VydmVyIHVuZGVyIDpmaWxlOmAvd3d3YC4KK0FkZC1vbiBQeXRob24gbW9kdWxlcyBtaWdodCB0aGVuIGJlbG9uZyBpbiA6ZmlsZTpgL3d3dy9weXRob25gLCBhbmQgaW4gb3JkZXIgdG8KK2ltcG9ydCB0aGVtLCB0aGlzIGRpcmVjdG9yeSBtdXN0IGJlIGFkZGVkIHRvIGBgc3lzLnBhdGhgYC4gIFRoZXJlIGFyZSBzZXZlcmFsCitkaWZmZXJlbnQgd2F5cyB0byBhZGQgdGhlIGRpcmVjdG9yeS4KKworVGhlIG1vc3QgY29udmVuaWVudCB3YXkgaXMgdG8gYWRkIGEgcGF0aCBjb25maWd1cmF0aW9uIGZpbGUgdG8gYSBkaXJlY3RvcnkKK3RoYXQncyBhbHJlYWR5IG9uIFB5dGhvbidzIHBhdGgsIHVzdWFsbHkgdG8gdGhlIDpmaWxlOmAuLi4vc2l0ZS1wYWNrYWdlcy9gCitkaXJlY3RvcnkuICBQYXRoIGNvbmZpZ3VyYXRpb24gZmlsZXMgaGF2ZSBhbiBleHRlbnNpb24gb2YgOmZpbGU6YC5wdGhgLCBhbmQgZWFjaAorbGluZSBtdXN0IGNvbnRhaW4gYSBzaW5nbGUgcGF0aCB0aGF0IHdpbGwgYmUgYXBwZW5kZWQgdG8gYGBzeXMucGF0aGBgLiAgKEJlY2F1c2UKK3RoZSBuZXcgcGF0aHMgYXJlIGFwcGVuZGVkIHRvIGBgc3lzLnBhdGhgYCwgbW9kdWxlcyBpbiB0aGUgYWRkZWQgZGlyZWN0b3JpZXMKK3dpbGwgbm90IG92ZXJyaWRlIHN0YW5kYXJkIG1vZHVsZXMuICBUaGlzIG1lYW5zIHlvdSBjYW4ndCB1c2UgdGhpcyBtZWNoYW5pc20gZm9yCitpbnN0YWxsaW5nIGZpeGVkIHZlcnNpb25zIG9mIHN0YW5kYXJkIG1vZHVsZXMuKQorCitQYXRocyBjYW4gYmUgYWJzb2x1dGUgb3IgcmVsYXRpdmUsIGluIHdoaWNoIGNhc2UgdGhleSdyZSByZWxhdGl2ZSB0byB0aGUKK2RpcmVjdG9yeSBjb250YWluaW5nIHRoZSA6ZmlsZTpgLnB0aGAgZmlsZS4gIFNlZSB0aGUgZG9jdW1lbnRhdGlvbiBvZgordGhlIDptb2Q6YHNpdGVgIG1vZHVsZSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KKworQSBzbGlnaHRseSBsZXNzIGNvbnZlbmllbnQgd2F5IGlzIHRvIGVkaXQgdGhlIDpmaWxlOmBzaXRlLnB5YCBmaWxlIGluIFB5dGhvbidzCitzdGFuZGFyZCBsaWJyYXJ5LCBhbmQgbW9kaWZ5IGBgc3lzLnBhdGhgYC4gIDpmaWxlOmBzaXRlLnB5YCBpcyBhdXRvbWF0aWNhbGx5CitpbXBvcnRlZCB3aGVuIHRoZSBQeXRob24gaW50ZXJwcmV0ZXIgaXMgZXhlY3V0ZWQsIHVubGVzcyB0aGUgOm9wdGlvbjpgLVNgIHN3aXRjaAoraXMgc3VwcGxpZWQgdG8gc3VwcHJlc3MgdGhpcyBiZWhhdmlvdXIuICBTbyB5b3UgY291bGQgc2ltcGx5IGVkaXQKKzpmaWxlOmBzaXRlLnB5YCBhbmQgYWRkIHR3byBsaW5lcyB0byBpdDo6CisKKyAgIGltcG9ydCBzeXMKKyAgIHN5cy5wYXRoLmFwcGVuZCgnL3d3dy9weXRob24vJykKKworSG93ZXZlciwgaWYgeW91IHJlaW5zdGFsbCB0aGUgc2FtZSBtYWpvciB2ZXJzaW9uIG9mIFB5dGhvbiAocGVyaGFwcyB3aGVuCit1cGdyYWRpbmcgZnJvbSAyLjIgdG8gMi4yLjIsIGZvciBleGFtcGxlKSA6ZmlsZTpgc2l0ZS5weWAgd2lsbCBiZSBvdmVyd3JpdHRlbiBieQordGhlIHN0b2NrIHZlcnNpb24uICBZb3UnZCBoYXZlIHRvIHJlbWVtYmVyIHRoYXQgaXQgd2FzIG1vZGlmaWVkIGFuZCBzYXZlIGEgY29weQorYmVmb3JlIGRvaW5nIHRoZSBpbnN0YWxsYXRpb24uCisKK1RoZXJlIGFyZSB0d28gZW52aXJvbm1lbnQgdmFyaWFibGVzIHRoYXQgY2FuIG1vZGlmeSBgYHN5cy5wYXRoYGAuCis6ZW52dmFyOmBQWVRIT05IT01FYCBzZXRzIGFuIGFsdGVybmF0ZSB2YWx1ZSBmb3IgdGhlIHByZWZpeCBvZiB0aGUgUHl0aG9uCitpbnN0YWxsYXRpb24uICBGb3IgZXhhbXBsZSwgaWYgOmVudnZhcjpgUFlUSE9OSE9NRWAgaXMgc2V0IHRvIGBgL3d3dy9weXRob25gYCwKK3RoZSBzZWFyY2ggcGF0aCB3aWxsIGJlIHNldCB0byBgYFsnJywgJy93d3cvcHl0aG9uL2xpYi9weXRob25YLlkvJywKKycvd3d3L3B5dGhvbi9saWIvcHl0aG9uWC5ZL3BsYXQtbGludXgyJywgLi4uXWBgLgorCitUaGUgOmVudnZhcjpgUFlUSE9OUEFUSGAgdmFyaWFibGUgY2FuIGJlIHNldCB0byBhIGxpc3Qgb2YgcGF0aHMgdGhhdCB3aWxsIGJlCithZGRlZCB0byB0aGUgYmVnaW5uaW5nIG9mIGBgc3lzLnBhdGhgYC4gIEZvciBleGFtcGxlLCBpZiA6ZW52dmFyOmBQWVRIT05QQVRIYCBpcworc2V0IHRvIGBgL3d3dy9weXRob246L29wdC9weWBgLCB0aGUgc2VhcmNoIHBhdGggd2lsbCBiZWdpbiB3aXRoCitgYFsnL3d3dy9weXRob24nLCAnL29wdC9weSddYGAuICAoTm90ZSB0aGF0IGRpcmVjdG9yaWVzIG11c3QgZXhpc3QgaW4gb3JkZXIgdG8KK2JlIGFkZGVkIHRvIGBgc3lzLnBhdGhgYDsgdGhlIDptb2Q6YHNpdGVgIG1vZHVsZSByZW1vdmVzIHBhdGhzIHRoYXQgZG9uJ3QKK2V4aXN0LikKKworRmluYWxseSwgYGBzeXMucGF0aGBgIGlzIGp1c3QgYSByZWd1bGFyIFB5dGhvbiBsaXN0LCBzbyBhbnkgUHl0aG9uIGFwcGxpY2F0aW9uCitjYW4gbW9kaWZ5IGl0IGJ5IGFkZGluZyBvciByZW1vdmluZyBlbnRyaWVzLgorCisKKy4uIF9pbnN0LWNvbmZpZy1maWxlczoKKworRGlzdHV0aWxzIENvbmZpZ3VyYXRpb24gRmlsZXMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0FzIG1lbnRpb25lZCBhYm92ZSwgeW91IGNhbiB1c2UgRGlzdHV0aWxzIGNvbmZpZ3VyYXRpb24gZmlsZXMgdG8gcmVjb3JkIHBlcnNvbmFsCitvciBzaXRlIHByZWZlcmVuY2VzIGZvciBhbnkgRGlzdHV0aWxzIG9wdGlvbnMuICBUaGF0IGlzLCBhbnkgb3B0aW9uIHRvIGFueQorY29tbWFuZCBjYW4gYmUgc3RvcmVkIGluIG9uZSBvZiB0d28gb3IgdGhyZWUgKGRlcGVuZGluZyBvbiB5b3VyIHBsYXRmb3JtKQorY29uZmlndXJhdGlvbiBmaWxlcywgd2hpY2ggd2lsbCBiZSBjb25zdWx0ZWQgYmVmb3JlIHRoZSBjb21tYW5kLWxpbmUgaXMgcGFyc2VkLgorVGhpcyBtZWFucyB0aGF0IGNvbmZpZ3VyYXRpb24gZmlsZXMgd2lsbCBvdmVycmlkZSBkZWZhdWx0IHZhbHVlcywgYW5kIHRoZQorY29tbWFuZC1saW5lIHdpbGwgaW4gdHVybiBvdmVycmlkZSBjb25maWd1cmF0aW9uIGZpbGVzLiAgRnVydGhlcm1vcmUsIGlmCittdWx0aXBsZSBjb25maWd1cmF0aW9uIGZpbGVzIGFwcGx5LCB2YWx1ZXMgZnJvbSAiZWFybGllciIgZmlsZXMgYXJlIG92ZXJyaWRkZW4KK2J5ICJsYXRlciIgZmlsZXMuCisKKworLi4gX2luc3QtY29uZmlnLWZpbGVuYW1lczoKKworTG9jYXRpb24gYW5kIG5hbWVzIG9mIGNvbmZpZyBmaWxlcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgbmFtZXMgYW5kIGxvY2F0aW9ucyBvZiB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyB2YXJ5IHNsaWdodGx5IGFjcm9zcworcGxhdGZvcm1zLiAgT24gVW5peCBhbmQgTWFjIE9TIFgsIHRoZSB0aHJlZSBjb25maWd1cmF0aW9uIGZpbGVzIChpbiB0aGUgb3JkZXIKK3RoZXkgYXJlIHByb2Nlc3NlZCkgYXJlOgorCisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBUeXBlIG9mIGZpbGUgfCBMb2NhdGlvbiBhbmQgZmlsZW5hbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzIHwKKys9PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT0rCit8IHN5c3RlbSAgICAgICB8IDpmaWxlOmB7cHJlZml4fS9saWIvcHl0aG9ue3Zlcn0vZGlzdHV0aWxzL2Rpc3R1dGlscy5jZmdgIHwgXCgxKSAgfAorKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgcGVyc29uYWwgICAgIHwgOmZpbGU6YCRIT01FLy5weWRpc3R1dGlscy5jZmdgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBcKDIpICB8CisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBsb2NhbCAgICAgICAgfCA6ZmlsZTpgc2V0dXAuY2ZnYCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFwoMykgIHwKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCisKK0FuZCBvbiBXaW5kb3dzLCB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyBhcmU6CisKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IFR5cGUgb2YgZmlsZSB8IExvY2F0aW9uIGFuZCBmaWxlbmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgfAorKz09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKK3wgc3lzdGVtICAgICAgIHwgOmZpbGU6YHtwcmVmaXh9XFxMaWJcXGRpc3R1dGlsc1xcZGlzdHV0aWxzLmNmZ2AgfCBcKDQpICB8CisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBwZXJzb25hbCAgICAgfCA6ZmlsZTpgJUhPTUUlXFxweWRpc3R1dGlscy5jZmdgICAgICAgICAgICAgICAgICB8IFwoNSkgIHwKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGxvY2FsICAgICAgICB8IDpmaWxlOmBzZXR1cC5jZmdgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgXCgzKSAgfAorKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKKworT24gYWxsIHBsYXRmb3JtcywgdGhlICJwZXJzb25hbCIgZmlsZSBjYW4gYmUgdGVtcG9yYXJpbHkgZGlzYWJsZWQgYnkKK3Bhc3NpbmcgdGhlIGAtLW5vLXVzZXItY2ZnYCBvcHRpb24uCisKK05vdGVzOgorCisoMSkKKyAgIFN0cmljdGx5IHNwZWFraW5nLCB0aGUgc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbiBmaWxlIGxpdmVzIGluIHRoZSBkaXJlY3RvcnkKKyAgIHdoZXJlIHRoZSBEaXN0dXRpbHMgYXJlIGluc3RhbGxlZDsgdW5kZXIgUHl0aG9uIDEuNiBhbmQgbGF0ZXIgb24gVW5peCwgdGhpcyBpcworICAgYXMgc2hvd24uIEZvciBQeXRob24gMS41LjIsIHRoZSBEaXN0dXRpbHMgd2lsbCBub3JtYWxseSBiZSBpbnN0YWxsZWQgdG8KKyAgIDpmaWxlOmB7cHJlZml4fS9saWIvcHl0aG9uMS41L3NpdGUtcGFja2FnZXMvZGlzdHV0aWxzYCwgc28gdGhlIHN5c3RlbQorICAgY29uZmlndXJhdGlvbiBmaWxlIHNob3VsZCBiZSBwdXQgdGhlcmUgdW5kZXIgUHl0aG9uIDEuNS4yLgorCisoMikKKyAgIE9uIFVuaXgsIGlmIHRoZSA6ZW52dmFyOmBIT01FYCBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBub3QgZGVmaW5lZCwgdGhlIHVzZXIncworICAgaG9tZSBkaXJlY3Rvcnkgd2lsbCBiZSBkZXRlcm1pbmVkIHdpdGggdGhlIDpmdW5jOmBnZXRwd3VpZGAgZnVuY3Rpb24gZnJvbSB0aGUKKyAgIHN0YW5kYXJkIDptb2Q6YHB3ZGAgbW9kdWxlLiBUaGlzIGlzIGRvbmUgYnkgdGhlIDpmdW5jOmBvcy5wYXRoLmV4cGFuZHVzZXJgCisgICBmdW5jdGlvbiB1c2VkIGJ5IERpc3R1dGlscy4KKworKDMpCisgICBJLmUuLCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgKHVzdWFsbHkgdGhlIGxvY2F0aW9uIG9mIHRoZSBzZXR1cCBzY3JpcHQpLgorCisoNCkKKyAgIChTZWUgYWxzbyBub3RlICgxKS4pICBVbmRlciBQeXRob24gMS42IGFuZCBsYXRlciwgUHl0aG9uJ3MgZGVmYXVsdCAiaW5zdGFsbGF0aW9uCisgICBwcmVmaXgiIGlzIDpmaWxlOmBDOlxcUHl0aG9uYCwgc28gdGhlIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUgaXMgbm9ybWFsbHkKKyAgIDpmaWxlOmBDOlxcUHl0aG9uXFxMaWJcXGRpc3R1dGlsc1xcZGlzdHV0aWxzLmNmZ2AuIFVuZGVyIFB5dGhvbiAxLjUuMiwgdGhlCisgICBkZWZhdWx0IHByZWZpeCB3YXMgOmZpbGU6YEM6XFxQcm9ncmFtIEZpbGVzXFxQeXRob25gLCBhbmQgdGhlIERpc3R1dGlscyB3ZXJlIG5vdAorICAgcGFydCBvZiB0aGUgc3RhbmRhcmQgbGlicmFyeS0tLXNvIHRoZSBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlIHdvdWxkIGJlCisgICA6ZmlsZTpgQzpcXFByb2dyYW0gRmlsZXNcXFB5dGhvblxcZGlzdHV0aWxzXFxkaXN0dXRpbHMuY2ZnYCBpbiBhIHN0YW5kYXJkIFB5dGhvbgorICAgMS41LjIgaW5zdGFsbGF0aW9uIHVuZGVyIFdpbmRvd3MuCisKKyg1KQorICAgT24gV2luZG93cywgaWYgdGhlIDplbnZ2YXI6YEhPTUVgIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIG5vdCBkZWZpbmVkLAorICAgOmVudnZhcjpgVVNFUlBST0ZJTEVgIHRoZW4gOmVudnZhcjpgSE9NRURSSVZFYCBhbmQgOmVudnZhcjpgSE9NRVBBVEhgIHdpbGwKKyAgIGJlIHRyaWVkLiBUaGlzIGlzIGRvbmUgYnkgdGhlIDpmdW5jOmBvcy5wYXRoLmV4cGFuZHVzZXJgIGZ1bmN0aW9uIHVzZWQKKyAgIGJ5IERpc3R1dGlscy4KKworCisuLiBfaW5zdC1jb25maWctc3ludGF4OgorCitTeW50YXggb2YgY29uZmlnIGZpbGVzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSBEaXN0dXRpbHMgY29uZmlndXJhdGlvbiBmaWxlcyBhbGwgaGF2ZSB0aGUgc2FtZSBzeW50YXguICBUaGUgY29uZmlnIGZpbGVzCithcmUgZ3JvdXBlZCBpbnRvIHNlY3Rpb25zLiAgVGhlcmUgaXMgb25lIHNlY3Rpb24gZm9yIGVhY2ggRGlzdHV0aWxzIGNvbW1hbmQsCitwbHVzIGEgYGBnbG9iYWxgYCBzZWN0aW9uIGZvciBnbG9iYWwgb3B0aW9ucyB0aGF0IGFmZmVjdCBldmVyeSBjb21tYW5kLiAgRWFjaAorc2VjdGlvbiBjb25zaXN0cyBvZiBvbmUgb3B0aW9uIHBlciBsaW5lLCBzcGVjaWZpZWQgYXMgYGBvcHRpb249dmFsdWVgYC4KKworRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgaXMgYSBjb21wbGV0ZSBjb25maWcgZmlsZSB0aGF0IGp1c3QgZm9yY2VzIGFsbAorY29tbWFuZHMgdG8gcnVuIHF1aWV0bHkgYnkgZGVmYXVsdDo6CisKKyAgIFtnbG9iYWxdCisgICB2ZXJib3NlPTAKKworSWYgdGhpcyBpcyBpbnN0YWxsZWQgYXMgdGhlIHN5c3RlbSBjb25maWcgZmlsZSwgaXQgd2lsbCBhZmZlY3QgYWxsIHByb2Nlc3Npbmcgb2YKK2FueSBQeXRob24gbW9kdWxlIGRpc3RyaWJ1dGlvbiBieSBhbnkgdXNlciBvbiB0aGUgY3VycmVudCBzeXN0ZW0uICBJZiBpdCBpcworaW5zdGFsbGVkIGFzIHlvdXIgcGVyc29uYWwgY29uZmlnIGZpbGUgKG9uIHN5c3RlbXMgdGhhdCBzdXBwb3J0IHRoZW0pLCBpdCB3aWxsCithZmZlY3Qgb25seSBtb2R1bGUgZGlzdHJpYnV0aW9ucyBwcm9jZXNzZWQgYnkgeW91LiAgQW5kIGlmIGl0IGlzIHVzZWQgYXMgdGhlCis6ZmlsZTpgc2V0dXAuY2ZnYCBmb3IgYSBwYXJ0aWN1bGFyIG1vZHVsZSBkaXN0cmlidXRpb24sIGl0IGFmZmVjdHMgb25seSB0aGF0CitkaXN0cmlidXRpb24uCisKK1lvdSBjb3VsZCBvdmVycmlkZSB0aGUgZGVmYXVsdCAiYnVpbGQgYmFzZSIgZGlyZWN0b3J5IGFuZCBtYWtlIHRoZQorOmNvbW1hbmQ6YGJ1aWxkXCpgIGNvbW1hbmRzIGFsd2F5cyBmb3JjaWJseSByZWJ1aWxkIGFsbCBmaWxlcyB3aXRoIHRoZQorZm9sbG93aW5nOjoKKworICAgW2J1aWxkXQorICAgYnVpbGQtYmFzZT1ibGliCisgICBmb3JjZT0xCisKK3doaWNoIGNvcnJlc3BvbmRzIHRvIHRoZSBjb21tYW5kLWxpbmUgYXJndW1lbnRzIDo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBidWlsZCAtLWJ1aWxkLWJhc2U9YmxpYiAtLWZvcmNlCisKK2V4Y2VwdCB0aGF0IGluY2x1ZGluZyB0aGUgOmNvbW1hbmQ6YGJ1aWxkYCBjb21tYW5kIG9uIHRoZSBjb21tYW5kLWxpbmUgbWVhbnMKK3RoYXQgY29tbWFuZCB3aWxsIGJlIHJ1bi4gIEluY2x1ZGluZyBhIHBhcnRpY3VsYXIgY29tbWFuZCBpbiBjb25maWcgZmlsZXMgaGFzIG5vCitzdWNoIGltcGxpY2F0aW9uOyBpdCBvbmx5IG1lYW5zIHRoYXQgaWYgdGhlIGNvbW1hbmQgaXMgcnVuLCB0aGUgb3B0aW9ucyBpbiB0aGUKK2NvbmZpZyBmaWxlIHdpbGwgYXBwbHkuICAoT3IgaWYgb3RoZXIgY29tbWFuZHMgdGhhdCBkZXJpdmUgdmFsdWVzIGZyb20gaXQgYXJlCitydW4sIHRoZXkgd2lsbCB1c2UgdGhlIHZhbHVlcyBpbiB0aGUgY29uZmlnIGZpbGUuKQorCitZb3UgY2FuIGZpbmQgb3V0IHRoZSBjb21wbGV0ZSBsaXN0IG9mIG9wdGlvbnMgZm9yIGFueSBjb21tYW5kIHVzaW5nIHRoZQorOm9wdGlvbjpgLS1oZWxwYCBvcHRpb24sIGUuZy46OgorCisgICBweXRob24gc2V0dXAucHkgYnVpbGQgLS1oZWxwCisKK2FuZCB5b3UgY2FuIGZpbmQgb3V0IHRoZSBjb21wbGV0ZSBsaXN0IG9mIGdsb2JhbCBvcHRpb25zIGJ5IHVzaW5nCis6b3B0aW9uOmAtLWhlbHBgIHdpdGhvdXQgYSBjb21tYW5kOjoKKworICAgcHl0aG9uIHNldHVwLnB5IC0taGVscAorCitTZWUgYWxzbyB0aGUgIlJlZmVyZW5jZSIgc2VjdGlvbiBvZiB0aGUgIkRpc3RyaWJ1dGluZyBQeXRob24gTW9kdWxlcyIgbWFudWFsLgorCisKKy4uIF9pbnN0LWJ1aWxkaW5nLWV4dDoKKworQnVpbGRpbmcgRXh0ZW5zaW9uczogVGlwcyBhbmQgVHJpY2tzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworV2hlbmV2ZXIgcG9zc2libGUsIHRoZSBEaXN0dXRpbHMgdHJ5IHRvIHVzZSB0aGUgY29uZmlndXJhdGlvbiBpbmZvcm1hdGlvbiBtYWRlCithdmFpbGFibGUgYnkgdGhlIFB5dGhvbiBpbnRlcnByZXRlciB1c2VkIHRvIHJ1biB0aGUgOmZpbGU6YHNldHVwLnB5YCBzY3JpcHQuCitGb3IgZXhhbXBsZSwgdGhlIHNhbWUgY29tcGlsZXIgYW5kIGxpbmtlciBmbGFncyB1c2VkIHRvIGNvbXBpbGUgUHl0aG9uIHdpbGwgYWxzbworYmUgdXNlZCBmb3IgY29tcGlsaW5nIGV4dGVuc2lvbnMuICBVc3VhbGx5IHRoaXMgd2lsbCB3b3JrIHdlbGwsIGJ1dCBpbgorY29tcGxpY2F0ZWQgc2l0dWF0aW9ucyB0aGlzIG1pZ2h0IGJlIGluYXBwcm9wcmlhdGUuICBUaGlzIHNlY3Rpb24gZGlzY3Vzc2VzIGhvdwordG8gb3ZlcnJpZGUgdGhlIHVzdWFsIERpc3R1dGlscyBiZWhhdmlvdXIuCisKKworLi4gX2luc3QtdHdlYWstZmxhZ3M6CisKK1R3ZWFraW5nIGNvbXBpbGVyL2xpbmtlciBmbGFncworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0NvbXBpbGluZyBhIFB5dGhvbiBleHRlbnNpb24gd3JpdHRlbiBpbiBDIG9yIEMrKyB3aWxsIHNvbWV0aW1lcyByZXF1aXJlCitzcGVjaWZ5aW5nIGN1c3RvbSBmbGFncyBmb3IgdGhlIGNvbXBpbGVyIGFuZCBsaW5rZXIgaW4gb3JkZXIgdG8gdXNlIGEgcGFydGljdWxhcgorbGlicmFyeSBvciBwcm9kdWNlIGEgc3BlY2lhbCBraW5kIG9mIG9iamVjdCBjb2RlLiBUaGlzIGlzIGVzcGVjaWFsbHkgdHJ1ZSBpZiB0aGUKK2V4dGVuc2lvbiBoYXNuJ3QgYmVlbiB0ZXN0ZWQgb24geW91ciBwbGF0Zm9ybSwgb3IgaWYgeW91J3JlIHRyeWluZyB0bworY3Jvc3MtY29tcGlsZSBQeXRob24uCisKK0luIHRoZSBtb3N0IGdlbmVyYWwgY2FzZSwgdGhlIGV4dGVuc2lvbiBhdXRob3IgbWlnaHQgaGF2ZSBmb3Jlc2VlbiB0aGF0Citjb21waWxpbmcgdGhlIGV4dGVuc2lvbnMgd291bGQgYmUgY29tcGxpY2F0ZWQsIGFuZCBwcm92aWRlZCBhIDpmaWxlOmBTZXR1cGAgZmlsZQorZm9yIHlvdSB0byBlZGl0LiAgVGhpcyB3aWxsIGxpa2VseSBvbmx5IGJlIGRvbmUgaWYgdGhlIG1vZHVsZSBkaXN0cmlidXRpb24KK2NvbnRhaW5zIG1hbnkgc2VwYXJhdGUgZXh0ZW5zaW9uIG1vZHVsZXMsIG9yIGlmIHRoZXkgb2Z0ZW4gcmVxdWlyZSBlbGFib3JhdGUKK3NldHMgb2YgY29tcGlsZXIgZmxhZ3MgaW4gb3JkZXIgdG8gd29yay4KKworQSA6ZmlsZTpgU2V0dXBgIGZpbGUsIGlmIHByZXNlbnQsIGlzIHBhcnNlZCBpbiBvcmRlciB0byBnZXQgYSBsaXN0IG9mIGV4dGVuc2lvbnMKK3RvIGJ1aWxkLiAgRWFjaCBsaW5lIGluIGEgOmZpbGU6YFNldHVwYCBkZXNjcmliZXMgYSBzaW5nbGUgbW9kdWxlLiAgTGluZXMgaGF2ZQordGhlIGZvbGxvd2luZyBzdHJ1Y3R1cmU6OgorCisgICBtb2R1bGUgLi4uIFtzb3VyY2VmaWxlIC4uLl0gW2NwcGFyZyAuLi5dIFtsaWJyYXJ5IC4uLl0KKworCitMZXQncyBleGFtaW5lIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0dXJuLgorCisqICptb2R1bGUqIGlzIHRoZSBuYW1lIG9mIHRoZSBleHRlbnNpb24gbW9kdWxlIHRvIGJlIGJ1aWx0LCBhbmQgc2hvdWxkIGJlIGEKKyAgdmFsaWQgUHl0aG9uIGlkZW50aWZpZXIuICBZb3UgY2FuJ3QganVzdCBjaGFuZ2UgdGhpcyBpbiBvcmRlciB0byByZW5hbWUgYSBtb2R1bGUKKyAgKGVkaXRzIHRvIHRoZSBzb3VyY2UgY29kZSB3b3VsZCBhbHNvIGJlIG5lZWRlZCksIHNvIHRoaXMgc2hvdWxkIGJlIGxlZnQgYWxvbmUuCisKKyogKnNvdXJjZWZpbGUqIGlzIGFueXRoaW5nIHRoYXQncyBsaWtlbHkgdG8gYmUgYSBzb3VyY2UgY29kZSBmaWxlLCBhdCBsZWFzdAorICBqdWRnaW5nIGJ5IHRoZSBmaWxlbmFtZS4gIEZpbGVuYW1lcyBlbmRpbmcgaW4gOmZpbGU6YC5jYCBhcmUgYXNzdW1lZCB0byBiZQorICB3cml0dGVuIGluIEMsIGZpbGVuYW1lcyBlbmRpbmcgaW4gOmZpbGU6YC5DYCwgOmZpbGU6YC5jY2AsIGFuZCA6ZmlsZTpgLmMrK2AgYXJlCisgIGFzc3VtZWQgdG8gYmUgQysrLCBhbmQgZmlsZW5hbWVzIGVuZGluZyBpbiA6ZmlsZTpgLm1gIG9yIDpmaWxlOmAubW1gIGFyZSBhc3N1bWVkCisgIHRvIGJlIGluIE9iamVjdGl2ZSBDLgorCisqICpjcHBhcmcqIGlzIGFuIGFyZ3VtZW50IGZvciB0aGUgQyBwcmVwcm9jZXNzb3IsICBhbmQgaXMgYW55dGhpbmcgc3RhcnRpbmcgd2l0aAorICA6b3B0aW9uOmAtSWAsIDpvcHRpb246YC1EYCwgOm9wdGlvbjpgLVVgIG9yIDpvcHRpb246YC1DYC4KKworKiAqbGlicmFyeSogaXMgYW55dGhpbmcgZW5kaW5nIGluIDpmaWxlOmAuYWAgb3IgYmVnaW5uaW5nIHdpdGggOm9wdGlvbjpgLWxgIG9yCisgIDpvcHRpb246YC1MYC4KKworSWYgYSBwYXJ0aWN1bGFyIHBsYXRmb3JtIHJlcXVpcmVzIGEgc3BlY2lhbCBsaWJyYXJ5IG9uIHlvdXIgcGxhdGZvcm0sIHlvdSBjYW4KK2FkZCBpdCBieSBlZGl0aW5nIHRoZSA6ZmlsZTpgU2V0dXBgIGZpbGUgYW5kIHJ1bm5pbmcgYGBweXRob24gc2V0dXAucHkgYnVpbGRgYC4KK0ZvciBleGFtcGxlLCBpZiB0aGUgbW9kdWxlIGRlZmluZWQgYnkgdGhlIGxpbmUgOjoKKworICAgZm9vIGZvb21vZHVsZS5jCisKK211c3QgYmUgbGlua2VkIHdpdGggdGhlIG1hdGggbGlicmFyeSA6ZmlsZTpgbGlibS5hYCBvbiB5b3VyIHBsYXRmb3JtLCBzaW1wbHkgYWRkCis6b3B0aW9uOmAtbG1gIHRvIHRoZSBsaW5lOjoKKworICAgZm9vIGZvb21vZHVsZS5jIC1sbQorCitBcmJpdHJhcnkgc3dpdGNoZXMgaW50ZW5kZWQgZm9yIHRoZSBjb21waWxlciBvciB0aGUgbGlua2VyIGNhbiBiZSBzdXBwbGllZCB3aXRoCit0aGUgOm9wdGlvbjpgLVhjb21waWxlcmAgKmFyZyogYW5kIDpvcHRpb246YC1YbGlua2VyYCAqYXJnKiBvcHRpb25zOjoKKworICAgZm9vIGZvb21vZHVsZS5jIC1YY29tcGlsZXIgLW8zMiAtWGxpbmtlciAtc2hhcmVkIC1sbQorCitUaGUgbmV4dCBvcHRpb24gYWZ0ZXIgOm9wdGlvbjpgLVhjb21waWxlcmAgYW5kIDpvcHRpb246YC1YbGlua2VyYCB3aWxsIGJlCithcHBlbmRlZCB0byB0aGUgcHJvcGVyIGNvbW1hbmQgbGluZSwgc28gaW4gdGhlIGFib3ZlIGV4YW1wbGUgdGhlIGNvbXBpbGVyIHdpbGwKK2JlIHBhc3NlZCB0aGUgOm9wdGlvbjpgLW8zMmAgb3B0aW9uLCBhbmQgdGhlIGxpbmtlciB3aWxsIGJlIHBhc3NlZAorOm9wdGlvbjpgLXNoYXJlZGAuICBJZiBhIGNvbXBpbGVyIG9wdGlvbiByZXF1aXJlcyBhbiBhcmd1bWVudCwgeW91J2xsIGhhdmUgdG8KK3N1cHBseSBtdWx0aXBsZSA6b3B0aW9uOmAtWGNvbXBpbGVyYCBvcHRpb25zOyBmb3IgZXhhbXBsZSwgdG8gcGFzcyBgYC14IGMrK2BgCit0aGUgOmZpbGU6YFNldHVwYCBmaWxlIHdvdWxkIGhhdmUgdG8gY29udGFpbiBgYC1YY29tcGlsZXIgLXggLVhjb21waWxlciBjKytgYC4KKworQ29tcGlsZXIgZmxhZ3MgY2FuIGFsc28gYmUgc3VwcGxpZWQgdGhyb3VnaCBzZXR0aW5nIHRoZSA6ZW52dmFyOmBDRkxBR1NgCitlbnZpcm9ubWVudCB2YXJpYWJsZS4gIElmIHNldCwgdGhlIGNvbnRlbnRzIG9mIDplbnZ2YXI6YENGTEFHU2Agd2lsbCBiZSBhZGRlZCB0bwordGhlIGNvbXBpbGVyIGZsYWdzIHNwZWNpZmllZCBpbiB0aGUgIDpmaWxlOmBTZXR1cGAgZmlsZS4KKworCisuLiBfaW5zdC1ub24tbXMtY29tcGlsZXJzOgorCitVc2luZyBub24tTWljcm9zb2Z0IGNvbXBpbGVycyBvbiBXaW5kb3dzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy4uIHNlY3Rpb25hdXRob3I6OiBSZW5lIExpZWJzY2hlciA8Ui5MaWVic2NoZXJAZ214LmRlPgorCisKKworQm9ybGFuZC9Db2RlR2VhciBDKysKK15eXl5eXl5eXl5eXl5eXl5eXl5eCisKK1RoaXMgc3Vic2VjdGlvbiBkZXNjcmliZXMgdGhlIG5lY2Vzc2FyeSBzdGVwcyB0byB1c2UgRGlzdHV0aWxzIHdpdGggdGhlIEJvcmxhbmQKK0MrKyBjb21waWxlciB2ZXJzaW9uIDUuNS4gIEZpcnN0IHlvdSBoYXZlIHRvIGtub3cgdGhhdCBCb3JsYW5kJ3Mgb2JqZWN0IGZpbGUKK2Zvcm1hdCAoT01GKSBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgZm9ybWF0IHVzZWQgYnkgdGhlIFB5dGhvbiB2ZXJzaW9uIHlvdSBjYW4KK2Rvd25sb2FkIGZyb20gdGhlIFB5dGhvbiBvciBBY3RpdmVTdGF0ZSBXZWIgc2l0ZS4gIChQeXRob24gaXMgYnVpbHQgd2l0aAorTWljcm9zb2Z0IFZpc3VhbCBDKyssIHdoaWNoIHVzZXMgQ09GRiBhcyB0aGUgb2JqZWN0IGZpbGUgZm9ybWF0LikgRm9yIHRoaXMKK3JlYXNvbiB5b3UgaGF2ZSB0byBjb252ZXJ0IFB5dGhvbidzIGxpYnJhcnkgOmZpbGU6YHB5dGhvbjI1LmxpYmAgaW50byB0aGUKK0JvcmxhbmQgZm9ybWF0LiAgWW91IGNhbiBkbyB0aGlzIGFzIGZvbGxvd3M6CisKKy4uIFNob3VsZCB3ZSBtZW50aW9uIHRoYXQgdXNlcnMgaGF2ZSB0byBjcmVhdGUgY2ZnLWZpbGVzIGZvciB0aGUgY29tcGlsZXI/CisuLiBzZWUgYWxzbyBodHRwOi8vY29tbXVuaXR5LmJvcmxhbmQuY29tL2FydGljbGUvMCwxNDEwLDIxMjA1LDAwLmh0bWwKKworOjoKKworICAgY29mZjJvbWYgcHl0aG9uMjUubGliIHB5dGhvbjI1X2JjcHAubGliCisKK1RoZSA6ZmlsZTpgY29mZjJvbWZgIHByb2dyYW0gY29tZXMgd2l0aCB0aGUgQm9ybGFuZCBjb21waWxlci4gIFRoZSBmaWxlCis6ZmlsZTpgcHl0aG9uMjUubGliYCBpcyBpbiB0aGUgOmZpbGU6YExpYnNgIGRpcmVjdG9yeSBvZiB5b3VyIFB5dGhvbgoraW5zdGFsbGF0aW9uLiAgSWYgeW91ciBleHRlbnNpb24gdXNlcyBvdGhlciBsaWJyYXJpZXMgKHpsaWIsIC4uLikgeW91IGhhdmUgdG8KK2NvbnZlcnQgdGhlbSB0b28uCisKK1RoZSBjb252ZXJ0ZWQgZmlsZXMgaGF2ZSB0byByZXNpZGUgaW4gdGhlIHNhbWUgZGlyZWN0b3JpZXMgYXMgdGhlIG5vcm1hbAorbGlicmFyaWVzLgorCitIb3cgZG9lcyBEaXN0dXRpbHMgbWFuYWdlIHRvIHVzZSB0aGVzZSBsaWJyYXJpZXMgd2l0aCB0aGVpciBjaGFuZ2VkIG5hbWVzPyAgSWYKK3RoZSBleHRlbnNpb24gbmVlZHMgYSBsaWJyYXJ5IChlZy4gOmZpbGU6YGZvb2ApIERpc3R1dGlscyBjaGVja3MgZmlyc3QgaWYgaXQKK2ZpbmRzIGEgbGlicmFyeSB3aXRoIHN1ZmZpeCA6ZmlsZTpgX2JjcHBgIChlZy4gOmZpbGU6YGZvb19iY3BwLmxpYmApIGFuZCB0aGVuCit1c2VzIHRoaXMgbGlicmFyeS4gIEluIHRoZSBjYXNlIGl0IGRvZXNuJ3QgZmluZCBzdWNoIGEgc3BlY2lhbCBsaWJyYXJ5IGl0IHVzZXMKK3RoZSBkZWZhdWx0IG5hbWUgKDpmaWxlOmBmb28ubGliYC4pIFsjXV8KKworVG8gbGV0IERpc3R1dGlscyBjb21waWxlIHlvdXIgZXh0ZW5zaW9uIHdpdGggQm9ybGFuZCBDKysgeW91IG5vdyBoYXZlIHRvIHR5cGU6OgorCisgICBweXRob24gc2V0dXAucHkgYnVpbGQgLS1jb21waWxlcj1iY3BwCisKK0lmIHlvdSB3YW50IHRvIHVzZSB0aGUgQm9ybGFuZCBDKysgY29tcGlsZXIgYXMgdGhlIGRlZmF1bHQsIHlvdSBjb3VsZCBzcGVjaWZ5Cit0aGlzIGluIHlvdXIgcGVyc29uYWwgb3Igc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbiBmaWxlIGZvciBEaXN0dXRpbHMgKHNlZQorc2VjdGlvbiA6cmVmOmBpbnN0LWNvbmZpZy1maWxlc2AuKQorCisKKy4uIHNlZWFsc286OgorCisgICBgQysrQnVpbGRlciBDb21waWxlciA8aHR0cDovL3d3dy5jb2RlZ2Vhci5jb20vZG93bmxvYWRzL2ZyZWUvY3BwYnVpbGRlcj5gXworICAgICAgSW5mb3JtYXRpb24gYWJvdXQgdGhlIGZyZWUgQysrIGNvbXBpbGVyIGZyb20gQm9ybGFuZCwgaW5jbHVkaW5nIGxpbmtzIHRvIHRoZQorICAgICAgZG93bmxvYWQgcGFnZXMuCisKKyAgIGBDcmVhdGluZyBQeXRob24gRXh0ZW5zaW9ucyBVc2luZyBCb3JsYW5kJ3MgRnJlZSBDb21waWxlciA8aHR0cDovL3d3dy5jeWJlcnVzLmNhL35nX3dpbGwvcHlFeHRlbkRMLnNodG1sPmBfCisgICAgICBEb2N1bWVudCBkZXNjcmliaW5nIGhvdyB0byB1c2UgQm9ybGFuZCdzIGZyZWUgY29tbWFuZC1saW5lIEMrKyBjb21waWxlciB0byBidWlsZAorICAgICAgUHl0aG9uLgorCisKK0dOVSBDIC8gQ3lnd2luIC8gTWluR1cKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl4KKworVGhpcyBzZWN0aW9uIGRlc2NyaWJlcyB0aGUgbmVjZXNzYXJ5IHN0ZXBzIHRvIHVzZSBEaXN0dXRpbHMgd2l0aCB0aGUgR05VIEMvQysrCitjb21waWxlcnMgaW4gdGhlaXIgQ3lnd2luIGFuZCBNaW5HVyBkaXN0cmlidXRpb25zLiBbI11fIEZvciBhIFB5dGhvbiBpbnRlcnByZXRlcgordGhhdCB3YXMgYnVpbHQgd2l0aCBDeWd3aW4sIGV2ZXJ5dGhpbmcgc2hvdWxkIHdvcmsgd2l0aG91dCBhbnkgb2YgdGhlc2UKK2ZvbGxvd2luZyBzdGVwcy4KKworTm90IGFsbCBleHRlbnNpb25zIGNhbiBiZSBidWlsdCB3aXRoIE1pbkdXIG9yIEN5Z3dpbiwgYnV0IG1hbnkgY2FuLiAgRXh0ZW5zaW9ucworbW9zdCBsaWtlbHkgdG8gbm90IHdvcmsgYXJlIHRob3NlIHRoYXQgdXNlIEMrKyBvciBkZXBlbmQgb24gTWljcm9zb2Z0IFZpc3VhbCBDCitleHRlbnNpb25zLgorCitUbyBsZXQgRGlzdHV0aWxzIGNvbXBpbGUgeW91ciBleHRlbnNpb24gd2l0aCBDeWd3aW4geW91IGhhdmUgdG8gdHlwZTo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBidWlsZCAtLWNvbXBpbGVyPWN5Z3dpbgorCithbmQgZm9yIEN5Z3dpbiBpbiBuby1jeWd3aW4gbW9kZSBbI11fIG9yIGZvciBNaW5HVyB0eXBlOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0tY29tcGlsZXI9bWluZ3czMgorCitJZiB5b3Ugd2FudCB0byB1c2UgYW55IG9mIHRoZXNlIG9wdGlvbnMvY29tcGlsZXJzIGFzIGRlZmF1bHQsIHlvdSBzaG91bGQKK2NvbnNpZGVyIHdyaXRpbmcgaXQgaW4geW91ciBwZXJzb25hbCBvciBzeXN0ZW0td2lkZSBjb25maWd1cmF0aW9uIGZpbGUgZm9yCitEaXN0dXRpbHMgKHNlZSBzZWN0aW9uIDpyZWY6YGluc3QtY29uZmlnLWZpbGVzYC4pCisKK09sZGVyIFZlcnNpb25zIG9mIFB5dGhvbiBhbmQgTWluR1cKKyIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKK1RoZSBmb2xsb3dpbmcgaW5zdHJ1Y3Rpb25zIG9ubHkgYXBwbHkgaWYgeW91J3JlIHVzaW5nIGEgdmVyc2lvbiBvZiBQeXRob24KK2luZmVyaW9yIHRvIDIuNC4xIHdpdGggYSBNaW5HVyBpbmZlcmlvciB0byAzLjAuMCAod2l0aAorYmludXRpbHMtMi4xMy45MC0yMDAzMDExMS0xKS4KKworVGhlc2UgY29tcGlsZXJzIHJlcXVpcmUgc29tZSBzcGVjaWFsIGxpYnJhcmllcy4gIFRoaXMgdGFzayBpcyBtb3JlIGNvbXBsZXggdGhhbgorZm9yIEJvcmxhbmQncyBDKyssIGJlY2F1c2UgdGhlcmUgaXMgbm8gcHJvZ3JhbSB0byBjb252ZXJ0IHRoZSBsaWJyYXJ5LiAgRmlyc3QKK3lvdSBoYXZlIHRvIGNyZWF0ZSBhIGxpc3Qgb2Ygc3ltYm9scyB3aGljaCB0aGUgUHl0aG9uIERMTCBleHBvcnRzLiAoWW91IGNhbiBmaW5kCithIGdvb2QgcHJvZ3JhbSBmb3IgdGhpcyB0YXNrIGF0CitodHRwOi8vd3d3LmVtbWVzdGVjaC5jb20vc29mdHdhcmUvcGV4cG9ydHMtMC40My9kb3dubG9hZF9wZXhwb3J0cy5odG1sKS4KKworLi4gSSBkb24ndCB1bmRlcnN0YW5kIHdoYXQgdGhlIG5leHQgbGluZSBtZWFucy4gLS1hbWsKKy4uIChpbmNsdXNpdmUgdGhlIHJlZmVyZW5jZXMgb24gZGF0YSBzdHJ1Y3R1cmVzLikKKworOjoKKworICAgcGV4cG9ydHMgcHl0aG9uMjUuZGxsID5weXRob24yNS5kZWYKKworVGhlIGxvY2F0aW9uIG9mIGFuIGluc3RhbGxlZCA6ZmlsZTpgcHl0aG9uMjUuZGxsYCB3aWxsIGRlcGVuZCBvbiB0aGUKK2luc3RhbGxhdGlvbiBvcHRpb25zIGFuZCB0aGUgdmVyc2lvbiBhbmQgbGFuZ3VhZ2Ugb2YgV2luZG93cy4gIEluIGEgImp1c3QgZm9yCittZSIgaW5zdGFsbGF0aW9uLCBpdCB3aWxsIGFwcGVhciBpbiB0aGUgcm9vdCBvZiB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeS4gIEluCithIHNoYXJlZCBpbnN0YWxsYXRpb24sIGl0IHdpbGwgYmUgbG9jYXRlZCBpbiB0aGUgc3lzdGVtIGRpcmVjdG9yeS4KKworVGhlbiB5b3UgY2FuIGNyZWF0ZSBmcm9tIHRoZXNlIGluZm9ybWF0aW9uIGFuIGltcG9ydCBsaWJyYXJ5IGZvciBnY2MuIDo6CisKKyAgIC9jeWd3aW4vYmluL2RsbHRvb2wgLS1kbGxuYW1lIHB5dGhvbjI1LmRsbCAtLWRlZiBweXRob24yNS5kZWYgLS1vdXRwdXQtbGliIGxpYnB5dGhvbjI1LmEKKworVGhlIHJlc3VsdGluZyBsaWJyYXJ5IGhhcyB0byBiZSBwbGFjZWQgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzCis6ZmlsZTpgcHl0aG9uMjUubGliYC4gKFNob3VsZCBiZSB0aGUgOmZpbGU6YGxpYnNgIGRpcmVjdG9yeSB1bmRlciB5b3VyIFB5dGhvbgoraW5zdGFsbGF0aW9uIGRpcmVjdG9yeS4pCisKK0lmIHlvdXIgZXh0ZW5zaW9uIHVzZXMgb3RoZXIgbGlicmFyaWVzICh6bGliLC4uLikgeW91IG1pZ2h0ICBoYXZlIHRvIGNvbnZlcnQKK3RoZW0gdG9vLiBUaGUgY29udmVydGVkIGZpbGVzIGhhdmUgdG8gcmVzaWRlIGluIHRoZSBzYW1lIGRpcmVjdG9yaWVzIGFzIHRoZQorbm9ybWFsIGxpYnJhcmllcyBkby4KKworCisuLiBzZWVhbHNvOjoKKworICAgYEJ1aWxkaW5nIFB5dGhvbiBtb2R1bGVzIG9uIE1TIFdpbmRvd3MgcGxhdGZvcm0gd2l0aCBNaW5HVyA8aHR0cDovL3d3dy56b3BlLm9yZy9NZW1iZXJzL2Fscy90aXBzL3dpbjMyX21pbmd3X21vZHVsZXM+YF8KKyAgICAgIEluZm9ybWF0aW9uIGFib3V0IGJ1aWxkaW5nIHRoZSByZXF1aXJlZCBsaWJyYXJpZXMgZm9yIHRoZSBNaW5HVyBlbnZpcm9ubWVudC4KKworCisuLiBydWJyaWM6OiBGb290bm90ZXMKKworLi4gWyNdIFRoaXMgYWxzbyBtZWFucyB5b3UgY291bGQgcmVwbGFjZSBhbGwgZXhpc3RpbmcgQ09GRi1saWJyYXJpZXMgd2l0aCBPTUYtbGlicmFyaWVzCisgICBvZiB0aGUgc2FtZSBuYW1lLgorCisuLiBbI10gQ2hlY2sgaHR0cDovL3NvdXJjZXMucmVkaGF0LmNvbS9jeWd3aW4vIGFuZCBodHRwOi8vd3d3Lm1pbmd3Lm9yZy8gZm9yIG1vcmUKKyAgIGluZm9ybWF0aW9uCisKKy4uIFsjXSBUaGVuIHlvdSBoYXZlIG5vIFBPU0lYIGVtdWxhdGlvbiBhdmFpbGFibGUsIGJ1dCB5b3UgYWxzbyBkb24ndCBuZWVkCisgICA6ZmlsZTpgY3lnd2luMS5kbGxgLgpkaWZmIC0tZ2l0IGEvRG9jL2V4dGVuZGluZy9uZXd0eXBlcy5yc3QgYi9Eb2MvZXh0ZW5kaW5nL25ld3R5cGVzLnJzdAppbmRleCAyYmEwMWJjLi42YTY1OTQxIDEwMDY0NAotLS0gYS9Eb2MvZXh0ZW5kaW5nL25ld3R5cGVzLnJzdAorKysgYi9Eb2MvZXh0ZW5kaW5nL25ld3R5cGVzLnJzdApAQCAtMjg4LDE4ICsyODgsMTYgQEAKICAgICAgICBzZWxmID0gKE5vZGR5ICopdHlwZS0+dHBfYWxsb2ModHlwZSwgMCk7CiAgICAgICAgaWYgKHNlbGYgIT0gTlVMTCkgewogICAgICAgICAgICBzZWxmLT5maXJzdCA9IFB5U3RyaW5nX0Zyb21TdHJpbmcoIiIpOwotICAgICAgICAgICBpZiAoc2VsZi0+Zmlyc3QgPT0gTlVMTCkKLSAgICAgICAgICAgICB7CisgICAgICAgICAgIGlmIChzZWxmLT5maXJzdCA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICBQeV9ERUNSRUYoc2VsZik7CiAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KIAogICAgICAgICAgICBzZWxmLT5sYXN0ID0gUHlTdHJpbmdfRnJvbVN0cmluZygiIik7Ci0gICAgICAgICAgIGlmIChzZWxmLT5sYXN0ID09IE5VTEwpCi0gICAgICAgICAgICAgeworICAgICAgICAgICBpZiAoc2VsZi0+bGFzdCA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICBQeV9ERUNSRUYoc2VsZik7CiAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgICB9CisgICAgICAgICAgIH0KIAogICAgICAgICAgICBzZWxmLT5udW1iZXIgPSAwOwogICAgICAgIH0KZGlmZiAtLWdpdCBhL0RvYy9mYXEvZGVzaWduLnJzdCBiL0RvYy9mYXEvZGVzaWduLnJzdAppbmRleCBlNDVhYWFhLi4xNTIxZjZjIDEwMDY0NAotLS0gYS9Eb2MvZmFxL2Rlc2lnbi5yc3QKKysrIGIvRG9jL2ZhcS9kZXNpZ24ucnN0CkBAIC02NDUsNyArNjQ1LDcgQEAKIFB5dGhvbiAyLjYgYWRkcyBhbiA6bW9kOmBhYmNgIG1vZHVsZSB0aGF0IGxldHMgeW91IGRlZmluZSBBYnN0cmFjdCBCYXNlIENsYXNzZXMKIChBQkNzKS4gIFlvdSBjYW4gdGhlbiB1c2UgOmZ1bmM6YGlzaW5zdGFuY2VgIGFuZCA6ZnVuYzpgaXNzdWJjbGFzc2AgdG8gY2hlY2sKIHdoZXRoZXIgYW4gaW5zdGFuY2Ugb3IgYSBjbGFzcyBpbXBsZW1lbnRzIGEgcGFydGljdWxhciBBQkMuICBUaGUKLTptb2Q6YGNvbGxlY3Rpb25zYCBtb2R1bGUgZGVmaW5lcyBhIHNldCBvZiB1c2VmdWwgQUJDcyBzdWNoIGFzCis6bW9kOmBjb2xsZWN0aW9ucy5hYmNgIG1vZHVsZSBkZWZpbmVzIGEgc2V0IG9mIHVzZWZ1bCBBQkNzIHN1Y2ggYXMKIDpjbGFzczpgSXRlcmFibGVgLCA6Y2xhc3M6YENvbnRhaW5lcmAsIGFuZCA6Y2xhc3M6YE11dGFibGVNYXBwaW5nYC4KIAogRm9yIFB5dGhvbiwgbWFueSBvZiB0aGUgYWR2YW50YWdlcyBvZiBpbnRlcmZhY2Ugc3BlY2lmaWNhdGlvbnMgY2FuIGJlIG9idGFpbmVkCmRpZmYgLS1naXQgYS9Eb2MvZmFxL2V4dGVuZGluZy5yc3QgYi9Eb2MvZmFxL2V4dGVuZGluZy5yc3QKaW5kZXggN2M2ODRhMC4uZmEyNDVjNyAxMDA2NDQKLS0tIGEvRG9jL2ZhcS9leHRlbmRpbmcucnN0CisrKyBiL0RvYy9mYXEvZXh0ZW5kaW5nLnJzdApAQCAtNDQ1LDM0ICs0NDUsMyBAQAogVGhlIEJvb3N0IFB5dGhvbiBMaWJyYXJ5IChCUEwsIGh0dHA6Ly93d3cuYm9vc3Qub3JnL2xpYnMvcHl0aG9uL2RvYy9pbmRleC5odG1sKQogcHJvdmlkZXMgYSB3YXkgb2YgZG9pbmcgdGhpcyBmcm9tIEMrKyAoaS5lLiB5b3UgY2FuIGluaGVyaXQgZnJvbSBhbiBleHRlbnNpb24KIGNsYXNzIHdyaXR0ZW4gaW4gQysrIHVzaW5nIHRoZSBCUEwpLgotCi0KLVdoZW4gaW1wb3J0aW5nIG1vZHVsZSBYLCB3aHkgZG8gSSBnZXQgInVuZGVmaW5lZCBzeW1ib2w6IFB5VW5pY29kZVVDUzIqIj8KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotWW91IGFyZSB1c2luZyBhIHZlcnNpb24gb2YgUHl0aG9uIHRoYXQgdXNlcyBhIDQtYnl0ZSByZXByZXNlbnRhdGlvbiBmb3IgVW5pY29kZQotY2hhcmFjdGVycywgYnV0IHNvbWUgQyBleHRlbnNpb24gbW9kdWxlIHlvdSBhcmUgaW1wb3J0aW5nIHdhcyBjb21waWxlZCB1c2luZyBhCi1QeXRob24gdGhhdCB1c2VzIGEgMi1ieXRlIHJlcHJlc2VudGF0aW9uIGZvciBVbmljb2RlIGNoYXJhY3RlcnMgKHRoZSBkZWZhdWx0KS4KLQotSWYgaW5zdGVhZCB0aGUgbmFtZSBvZiB0aGUgdW5kZWZpbmVkIHN5bWJvbCBzdGFydHMgd2l0aCBgYFB5VW5pY29kZVVDUzRgYCwgdGhlCi1wcm9ibGVtIGlzIHRoZSByZXZlcnNlOiBQeXRob24gd2FzIGJ1aWx0IHVzaW5nIDItYnl0ZSBVbmljb2RlIGNoYXJhY3RlcnMsIGFuZAotdGhlIGV4dGVuc2lvbiBtb2R1bGUgd2FzIGNvbXBpbGVkIHVzaW5nIGEgUHl0aG9uIHdpdGggNC1ieXRlIFVuaWNvZGUgY2hhcmFjdGVycy4KLQotVGhpcyBjYW4gZWFzaWx5IG9jY3VyIHdoZW4gdXNpbmcgcHJlLWJ1aWx0IGV4dGVuc2lvbiBwYWNrYWdlcy4gIFJlZEhhdCBMaW51eAotNy54LCBpbiBwYXJ0aWN1bGFyLCBwcm92aWRlZCBhICJweXRob24yIiBiaW5hcnkgdGhhdCBpcyBjb21waWxlZCB3aXRoIDQtYnl0ZQotVW5pY29kZS4gIFRoaXMgb25seSBjYXVzZXMgdGhlIGxpbmsgZmFpbHVyZSBpZiB0aGUgZXh0ZW5zaW9uIHVzZXMgYW55IG9mIHRoZQotYGBQeVVuaWNvZGVfKigpYGAgZnVuY3Rpb25zLiAgSXQgaXMgYWxzbyBhIHByb2JsZW0gaWYgYW4gZXh0ZW5zaW9uIHVzZXMgYW55IG9mCi10aGUgVW5pY29kZS1yZWxhdGVkIGZvcm1hdCBzcGVjaWZpZXJzIGZvciA6YzpmdW5jOmBQeV9CdWlsZFZhbHVlYCAob3Igc2ltaWxhcikgb3IKLXBhcmFtZXRlciBzcGVjaWZpY2F0aW9ucyBmb3IgOmM6ZnVuYzpgUHlBcmdfUGFyc2VUdXBsZWAuCi0KLVlvdSBjYW4gY2hlY2sgdGhlIHNpemUgb2YgdGhlIFVuaWNvZGUgY2hhcmFjdGVyIGEgUHl0aG9uIGludGVycHJldGVyIGlzIHVzaW5nIGJ5Ci1jaGVja2luZyB0aGUgdmFsdWUgb2Ygc3lzLm1heHVuaWNvZGU6Ci0KLSAgID4+PiBpbXBvcnQgc3lzCi0gICA+Pj4gaWYgc3lzLm1heHVuaWNvZGUgPiA2NTUzNToKLSAgIC4uLiAgICAgcHJpbnQoJ1VDUzQgYnVpbGQnKQotICAgLi4uIGVsc2U6Ci0gICAuLi4gICAgIHByaW50KCdVQ1MyIGJ1aWxkJykKLQotVGhlIG9ubHkgd2F5IHRvIHNvbHZlIHRoaXMgcHJvYmxlbSBpcyB0byB1c2UgZXh0ZW5zaW9uIG1vZHVsZXMgY29tcGlsZWQgd2l0aCBhCi1QeXRob24gYmluYXJ5IGJ1aWx0IHVzaW5nIHRoZSBzYW1lIHNpemUgZm9yIFVuaWNvZGUgY2hhcmFjdGVycy4KZGlmZiAtLWdpdCBhL0RvYy9nbG9zc2FyeS5yc3QgYi9Eb2MvZ2xvc3NhcnkucnN0CmluZGV4IDNiMjExYWUuLmY1Y2EwZDkgMTAwNjQ0Ci0tLSBhL0RvYy9nbG9zc2FyeS5yc3QKKysrIGIvRG9jL2dsb3NzYXJ5LnJzdApAQCAtMzQsNyArMzQsNyBAQAogICAgICAgc3ViY2xhc3Nlcywgd2hpY2ggYXJlIGNsYXNzZXMgdGhhdCBkb24ndCBpbmhlcml0IGZyb20gYSBjbGFzcyBidXQgYXJlCiAgICAgICBzdGlsbCByZWNvZ25pemVkIGJ5IDpmdW5jOmBpc2luc3RhbmNlYCBhbmQgOmZ1bmM6YGlzc3ViY2xhc3NgOyBzZWUgdGhlCiAgICAgICA6bW9kOmBhYmNgIG1vZHVsZSBkb2N1bWVudGF0aW9uLiAgUHl0aG9uIGNvbWVzIHdpdGggbWFueSBidWlsdC1pbiBBQkNzIGZvcgotICAgICAgZGF0YSBzdHJ1Y3R1cmVzIChpbiB0aGUgOm1vZDpgY29sbGVjdGlvbnNgIG1vZHVsZSksIG51bWJlcnMgKGluIHRoZQorICAgICAgZGF0YSBzdHJ1Y3R1cmVzIChpbiB0aGUgOm1vZDpgY29sbGVjdGlvbnMuYWJjYCBtb2R1bGUpLCBudW1iZXJzIChpbiB0aGUKICAgICAgIDptb2Q6YG51bWJlcnNgIG1vZHVsZSksIHN0cmVhbXMgKGluIHRoZSA6bW9kOmBpb2AgbW9kdWxlKSwgaW1wb3J0IGZpbmRlcnMKICAgICAgIGFuZCBsb2FkZXJzIChpbiB0aGUgOm1vZDpgaW1wb3J0bGliLmFiY2AgbW9kdWxlKS4gIFlvdSBjYW4gY3JlYXRlIHlvdXIgb3duCiAgICAgICBBQkNzIHdpdGggdGhlIDptb2Q6YGFiY2AgbW9kdWxlLgpAQCAtNDM0LDggKzQzNCw4IEBACiAKICAgIG1hcHBpbmcKICAgICAgIEEgY29udGFpbmVyIG9iamVjdCB0aGF0IHN1cHBvcnRzIGFyYml0cmFyeSBrZXkgbG9va3VwcyBhbmQgaW1wbGVtZW50cyB0aGUKLSAgICAgIG1ldGhvZHMgc3BlY2lmaWVkIGluIHRoZSA6Y2xhc3M6YH5jb2xsZWN0aW9ucy5NYXBwaW5nYCBvcgotICAgICAgOmNsYXNzOmB+Y29sbGVjdGlvbnMuTXV0YWJsZU1hcHBpbmdgCisgICAgICBtZXRob2RzIHNwZWNpZmllZCBpbiB0aGUgOmNsYXNzOmB+Y29sbGVjdGlvbnMuYWJjLk1hcHBpbmdgIG9yCisgICAgICA6Y2xhc3M6YH5jb2xsZWN0aW9ucy5hYmMuTXV0YWJsZU1hcHBpbmdgCiAgICAgICA6cmVmOmBhYnN0cmFjdCBiYXNlIGNsYXNzZXMgPGNvbGxlY3Rpb25zLWFic3RyYWN0LWJhc2UtY2xhc3Nlcz5gLiAgRXhhbXBsZXMKICAgICAgIGluY2x1ZGUgOmNsYXNzOmBkaWN0YCwgOmNsYXNzOmBjb2xsZWN0aW9ucy5kZWZhdWx0ZGljdGAsCiAgICAgICA6Y2xhc3M6YGNvbGxlY3Rpb25zLk9yZGVyZWREaWN0YCBhbmQgOmNsYXNzOmBjb2xsZWN0aW9ucy5Db3VudGVyYC4KQEAgLTU0NCw2ICs1NDQsMjQgQEAKICAgICAgICAgIGZvciBwaWVjZSBpbiBmb29kOgogICAgICAgICAgICAgIHByaW50KHBpZWNlKQogCisgICBxdWFsaWZpZWQgbmFtZQorICAgICAgQSBkb3R0ZWQgbmFtZSBzaG93aW5nIHRoZSAicGF0aCIgZnJvbSBhIG1vZHVsZSdzIGdsb2JhbCBzY29wZSB0byBhCisgICAgICBjbGFzcywgZnVuY3Rpb24gb3IgbWV0aG9kIGRlZmluZWQgaW4gdGhhdCBtb2R1bGUsIGFzIGRlZmluZWQgaW4KKyAgICAgIDpwZXA6YDMxNTVgLiAgRm9yIHRvcC1sZXZlbCBmdW5jdGlvbnMgYW5kIGNsYXNzZXMsIHRoZSBxdWFsaWZpZWQgbmFtZQorICAgICAgaXMgdGhlIHNhbWUgYXMgdGhlIG9iamVjdCdzIG5hbWU6OgorCisgICAgICAgICA+Pj4gY2xhc3MgQzoKKyAgICAgICAgIC4uLiAgICAgY2xhc3MgRDoKKyAgICAgICAgIC4uLiAgICAgICAgIGRlZiBtZXRoKHNlbGYpOgorICAgICAgICAgLi4uICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgIC4uLgorICAgICAgICAgPj4+IEMuX19xdWFsbmFtZV9fCisgICAgICAgICAnQycKKyAgICAgICAgID4+PiBDLkQuX19xdWFsbmFtZV9fCisgICAgICAgICAnQy5EJworICAgICAgICAgPj4+IEMuRC5tZXRoLl9fcXVhbG5hbWVfXworICAgICAgICAgJ0MuRC5tZXRoJworCiAgICByZWZlcmVuY2UgY291bnQKICAgICAgIFRoZSBudW1iZXIgb2YgcmVmZXJlbmNlcyB0byBhbiBvYmplY3QuICBXaGVuIHRoZSByZWZlcmVuY2UgY291bnQgb2YgYW4KICAgICAgIG9iamVjdCBkcm9wcyB0byB6ZXJvLCBpdCBpcyBkZWFsbG9jYXRlZC4gIFJlZmVyZW5jZSBjb3VudGluZyBpcwpAQCAtNTg2LDYgKzYwNCwxNCBAQAogICAgICAgYW4gOnRlcm06YGV4cHJlc3Npb25gIG9yIGEgb25lIG9mIHNldmVyYWwgY29uc3RydWN0cyB3aXRoIGEga2V5d29yZCwgc3VjaAogICAgICAgYXMgOmtleXdvcmQ6YGlmYCwgOmtleXdvcmQ6YHdoaWxlYCBvciA6a2V5d29yZDpgZm9yYC4KIAorICAgc3RydWN0IHNlcXVlbmNlCisgICAgICBBIHR1cGxlIHdpdGggbmFtZWQgZWxlbWVudHMuIFN0cnVjdCBzZXF1ZW5jZXMgZXhwb3NlIGFuIGludGVyZmFjZSBzaW1pbGFyCisgICAgICB0byA6dGVybTpgbmFtZWQgdHVwbGVgIGluIHRoYXQgZWxlbWVudHMgY2FuIGVpdGhlciBiZSBhY2Nlc3NlZCBlaXRoZXIgYnkKKyAgICAgIGluZGV4IG9yIGFzIGFuIGF0dHJpYnV0ZS4gSG93ZXZlciwgdGhleSBkbyBub3QgaGF2ZSBhbnkgb2YgdGhlIG5hbWVkIHR1cGxlCisgICAgICBtZXRob2RzIGxpa2UgOm1ldGg6YH5jb2xsZWN0aW9ucy5zb21lbmFtZWR0dXBsZS5fbWFrZWAgb3IKKyAgICAgIDptZXRoOmB+Y29sbGVjdGlvbnMuc29tZW5hbWVkdHVwbGUuX2FzZGljdGAuIEV4YW1wbGVzIG9mIHN0cnVjdCBzZXF1ZW5jZXMKKyAgICAgIGluY2x1ZGUgOmRhdGE6YHN5cy5mbG9hdF9pbmZvYCBhbmQgdGhlIHJldHVybiB2YWx1ZSBvZiA6ZnVuYzpgb3Muc3RhdGAuCisKICAgIHRyaXBsZS1xdW90ZWQgc3RyaW5nCiAgICAgICBBIHN0cmluZyB3aGljaCBpcyBib3VuZCBieSB0aHJlZSBpbnN0YW5jZXMgb2YgZWl0aGVyIGEgcXVvdGF0aW9uIG1hcmsKICAgICAgICgiKSBvciBhbiBhcG9zdHJvcGhlICgnKS4gIFdoaWxlIHRoZXkgZG9uJ3QgcHJvdmlkZSBhbnkgZnVuY3Rpb25hbGl0eQpkaWZmIC0tZ2l0IGEvRG9jL2hvd3RvL2Rlc2NyaXB0b3IucnN0IGIvRG9jL2hvd3RvL2Rlc2NyaXB0b3IucnN0CmluZGV4IDE2MTZmNjcuLjBiNTEzZjkgMTAwNjQ0Ci0tLSBhL0RvYy9ob3d0by9kZXNjcmlwdG9yLnJzdAorKysgYi9Eb2MvaG93dG8vZGVzY3JpcHRvci5yc3QKQEAgLTM2LDkgKzM2LDcgQEAKIGxvb2tlZC11cCB2YWx1ZSBpcyBhbiBvYmplY3QgZGVmaW5pbmcgb25lIG9mIHRoZSBkZXNjcmlwdG9yIG1ldGhvZHMsIHRoZW4gUHl0aG9uCiBtYXkgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYmVoYXZpb3IgYW5kIGludm9rZSB0aGUgZGVzY3JpcHRvciBtZXRob2QgaW5zdGVhZC4KIFdoZXJlIHRoaXMgb2NjdXJzIGluIHRoZSBwcmVjZWRlbmNlIGNoYWluIGRlcGVuZHMgb24gd2hpY2ggZGVzY3JpcHRvciBtZXRob2RzCi13ZXJlIGRlZmluZWQuICBOb3RlIHRoYXQgZGVzY3JpcHRvcnMgYXJlIG9ubHkgaW52b2tlZCBmb3IgbmV3IHN0eWxlIG9iamVjdHMgb3IKLWNsYXNzZXMgKGEgY2xhc3MgaXMgbmV3IHN0eWxlIGlmIGl0IGluaGVyaXRzIGZyb20gOmNsYXNzOmBvYmplY3RgIG9yCi06Y2xhc3M6YHR5cGVgKS4KK3dlcmUgZGVmaW5lZC4KIAogRGVzY3JpcHRvcnMgYXJlIGEgcG93ZXJmdWwsIGdlbmVyYWwgcHVycG9zZSBwcm90b2NvbC4gIFRoZXkgYXJlIHRoZSBtZWNoYW5pc20KIGJlaGluZCBwcm9wZXJ0aWVzLCBtZXRob2RzLCBzdGF0aWMgbWV0aG9kcywgY2xhc3MgbWV0aG9kcywgYW5kIDpmdW5jOmBzdXBlcigpYC4KQEAgLTg5LDggKzg3LDYgQEAKIGlzIGludm9rZWQgYWNjb3JkaW5nIHRvIHRoZSBwcmVjZWRlbmNlIHJ1bGVzIGxpc3RlZCBiZWxvdy4KIAogVGhlIGRldGFpbHMgb2YgaW52b2NhdGlvbiBkZXBlbmQgb24gd2hldGhlciBgYG9iamBgIGlzIGFuIG9iamVjdCBvciBhIGNsYXNzLgotRWl0aGVyIHdheSwgZGVzY3JpcHRvcnMgb25seSB3b3JrIGZvciBuZXcgc3R5bGUgb2JqZWN0cyBhbmQgY2xhc3Nlcy4gIEEgY2xhc3MgaXMKLW5ldyBzdHlsZSBpZiBpdCBpcyBhIHN1YmNsYXNzIG9mIDpjbGFzczpgb2JqZWN0YC4KIAogRm9yIG9iamVjdHMsIHRoZSBtYWNoaW5lcnkgaXMgaW4gOm1ldGg6YG9iamVjdC5fX2dldGF0dHJpYnV0ZV9fYCB3aGljaAogdHJhbnNmb3JtcyBgYGIueGBgIGludG8gYGB0eXBlKGIpLl9fZGljdF9fWyd4J10uX19nZXRfXyhiLCB0eXBlKGIpKWBgLiAgVGhlCkBAIC0xMTUsNyArMTExLDYgQEAKIAogKiBkZXNjcmlwdG9ycyBhcmUgaW52b2tlZCBieSB0aGUgOm1ldGg6YF9fZ2V0YXR0cmlidXRlX19gIG1ldGhvZAogKiBvdmVycmlkaW5nIDptZXRoOmBfX2dldGF0dHJpYnV0ZV9fYCBwcmV2ZW50cyBhdXRvbWF0aWMgZGVzY3JpcHRvciBjYWxscwotKiA6bWV0aDpgX19nZXRhdHRyaWJ1dGVfX2AgaXMgb25seSBhdmFpbGFibGUgd2l0aCBuZXcgc3R5bGUgY2xhc3NlcyBhbmQgb2JqZWN0cwogKiA6bWV0aDpgb2JqZWN0Ll9fZ2V0YXR0cmlidXRlX19gIGFuZCA6bWV0aDpgdHlwZS5fX2dldGF0dHJpYnV0ZV9fYCBtYWtlCiAgIGRpZmZlcmVudCBjYWxscyB0byA6bWV0aDpgX19nZXRfX2AuCiAqIGRhdGEgZGVzY3JpcHRvcnMgYWx3YXlzIG92ZXJyaWRlIGluc3RhbmNlIGRpY3Rpb25hcmllcy4KQEAgLTEyOCwxMCArMTIzLDcgQEAKIGBgbWBgIGlzIHJldHVybmVkIHVuY2hhbmdlZC4gIElmIG5vdCBpbiB0aGUgZGljdGlvbmFyeSwgYGBtYGAgcmV2ZXJ0cyB0byBhCiBzZWFyY2ggdXNpbmcgOm1ldGg6YG9iamVjdC5fX2dldGF0dHJpYnV0ZV9fYC4KIAotTm90ZSwgaW4gUHl0aG9uIDIuMiwgYGBzdXBlcihCLCBvYmopLm0oKWBgIHdvdWxkIG9ubHkgaW52b2tlIDptZXRoOmBfX2dldF9fYCBpZgotYGBtYGAgd2FzIGEgZGF0YSBkZXNjcmlwdG9yLiAgSW4gUHl0aG9uIDIuMywgbm9uLWRhdGEgZGVzY3JpcHRvcnMgYWxzbyBnZXQKLWludm9rZWQgdW5sZXNzIGFuIG9sZC1zdHlsZSBjbGFzcyBpcyBpbnZvbHZlZC4gIFRoZSBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzIGFyZQotaW4gOmM6ZnVuYzpgc3VwZXJfZ2V0YXR0cm8oKWAgaW4KK1RoZSBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzIGFyZSBpbiA6YzpmdW5jOmBzdXBlcl9nZXRhdHRybygpYCBpbgogYE9iamVjdHMvdHlwZW9iamVjdC5jIDxodHRwOi8vc3ZuLnB5dGhvbi5vcmcvdmlldy9weXRob24vdHJ1bmsvT2JqZWN0cy90eXBlb2JqZWN0LmM/dmlldz1tYXJrdXA+YF8KIGFuZCBhIHB1cmUgUHl0aG9uIGVxdWl2YWxlbnQgY2FuIGJlIGZvdW5kIGluIGBHdWlkbydzIFR1dG9yaWFsYF8uCiAKZGlmZiAtLWdpdCBhL0RvYy9ob3d0by9sb2dnaW5nLWNvb2tib29rLnJzdCBiL0RvYy9ob3d0by9sb2dnaW5nLWNvb2tib29rLnJzdAppbmRleCA3ZGM4MDIxLi4zMjJlNTJlIDEwMDY0NAotLS0gYS9Eb2MvaG93dG8vbG9nZ2luZy1jb29rYm9vay5yc3QKKysrIGIvRG9jL2hvd3RvL2xvZ2dpbmctY29va2Jvb2sucnN0CkBAIC0xMTAyLDMgKzExMDIsMzEgQEAKIEZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoaXMgY29uZmlndXJhdGlvbiwgeW91IGNhbiBzZWUgdGhlIGByZWxldmFudAogc2VjdGlvbiA8aHR0cHM6Ly9kb2NzLmRqYW5nb3Byb2plY3QuY29tL2VuLzEuMy90b3BpY3MvbG9nZ2luZy8jY29uZmlndXJpbmctbG9nZ2luZz5gXwogb2YgdGhlIERqYW5nbyBkb2N1bWVudGF0aW9uLgorCisuLiBfY29va2Jvb2stcm90YXRvci1uYW1lcjoKKworVXNpbmcgYSByb3RhdG9yIGFuZCBuYW1lciB0byBjdXN0b21pc2UgbG9nIHJvdGF0aW9uIHByb2Nlc3NpbmcKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0FuIGV4YW1wbGUgb2YgaG93IHlvdSBjYW4gZGVmaW5lIGEgbmFtZXIgYW5kIHJvdGF0b3IgaXMgZ2l2ZW4gaW4gdGhlIGZvbGxvd2luZworc25pcHBldCwgd2hpY2ggc2hvd3MgemxpYi1iYXNlZCBjb21wcmVzc2lvbiBvZiB0aGUgbG9nIGZpbGU6OgorCisgICAgZGVmIG5hbWVyKG5hbWUpOgorICAgICAgICByZXR1cm4gbmFtZSArICIuZ3oiCisKKyAgICBkZWYgcm90YXRvcihzb3VyY2UsIGRlc3QpOgorICAgICAgICB3aXRoIG9wZW4oc291cmNlLCAicmIiKSBhcyBzZjoKKyAgICAgICAgICAgIGRhdGEgPSBzZi5yZWFkKCkKKyAgICAgICAgICAgIGNvbXByZXNzZWQgPSB6bGliLmNvbXByZXNzKGRhdGEsIDkpCisgICAgICAgICAgICB3aXRoIG9wZW4oZGVzdCwgIndiIikgYXMgZGY6CisgICAgICAgICAgICAgICAgZGYud3JpdGUoY29tcHJlc3NlZCkKKyAgICAgICAgb3MucmVtb3ZlKHNvdXJjZSkKKworICAgIHJoID0gbG9nZ2luZy5oYW5kbGVycy5Sb3RhdGluZ0ZpbGVIYW5kbGVyKC4uLikKKyAgICByaC5yb3RhdG9yID0gcm90YXRvcgorICAgIHJoLm5hbWVyID0gbmFtZXIKKworVGhlc2UgYXJlIG5vdCAidHJ1ZSIgLmd6IGZpbGVzLCBhcyB0aGV5IGFyZSBiYXJlIGNvbXByZXNzZWQgZGF0YSwgd2l0aCBubworImNvbnRhaW5lciIgc3VjaCBhcyB5b3XigJlkIGZpbmQgaW4gYW4gYWN0dWFsIGd6aXAgZmlsZS4gVGhpcyBzbmlwcGV0IGlzIGp1c3QKK2ZvciBpbGx1c3RyYXRpb24gcHVycG9zZXMuCisKZGlmZiAtLWdpdCBhL0RvYy9ob3d0by9zb2NrZXRzLnJzdCBiL0RvYy9ob3d0by9zb2NrZXRzLnJzdAppbmRleCBlMjcwM2Y1Li44ZWUzMzRhIDEwMDY0NAotLS0gYS9Eb2MvaG93dG8vc29ja2V0cy5yc3QKKysrIGIvRG9jL2hvd3RvL3NvY2tldHMucnN0CkBAIC0yMyw4ICsyMyw4IEBACiB3b3JraW5nLiBJdCBkb2Vzbid0IGNvdmVyIHRoZSBmaW5lIHBvaW50cyAoYW5kIHRoZXJlIGFyZSBhIGxvdCBvZiB0aGVtKSwgYnV0IEkKIGhvcGUgaXQgd2lsbCBnaXZlIHlvdSBlbm91Z2ggYmFja2dyb3VuZCB0byBiZWdpbiB1c2luZyB0aGVtIGRlY2VudGx5LgogCi1JJ20gb25seSBnb2luZyB0byB0YWxrIGFib3V0IElORVQgc29ja2V0cywgYnV0IHRoZXkgYWNjb3VudCBmb3IgYXQgbGVhc3QgOTklIG9mCi10aGUgc29ja2V0cyBpbiB1c2UuIEFuZCBJJ2xsIG9ubHkgdGFsayBhYm91dCBTVFJFQU0gc29ja2V0cyAtIHVubGVzcyB5b3UgcmVhbGx5CitJJ20gb25seSBnb2luZyB0byB0YWxrIGFib3V0IElORVQgKGkuZS4gSVB2NCkgc29ja2V0cywgYnV0IHRoZXkgYWNjb3VudCBmb3IgYXQgbGVhc3QgOTklIG9mCit0aGUgc29ja2V0cyBpbiB1c2UuIEFuZCBJJ2xsIG9ubHkgdGFsayBhYm91dCBTVFJFQU0gKGkuZS4gVENQKSBzb2NrZXRzIC0gdW5sZXNzIHlvdSByZWFsbHkKIGtub3cgd2hhdCB5b3UncmUgZG9pbmcgKGluIHdoaWNoIGNhc2UgdGhpcyBIT1dUTyBpc24ndCBmb3IgeW91ISksIHlvdSdsbCBnZXQKIGJldHRlciBiZWhhdmlvciBhbmQgcGVyZm9ybWFuY2UgZnJvbSBhIFNUUkVBTSBzb2NrZXQgdGhhbiBhbnl0aGluZyBlbHNlLiBJIHdpbGwKIHRyeSB0byBjbGVhciB1cCB0aGUgbXlzdGVyeSBvZiB3aGF0IGEgc29ja2V0IGlzLCBhcyB3ZWxsIGFzIHNvbWUgaGludHMgb24gaG93IHRvCkBAIC0yMDYsMTAgKzIwNiwxMCBAQAogICAgICAgICAgICAgICAgdG90YWxzZW50ID0gdG90YWxzZW50ICsgc2VudAogCiAgICAgICAgZGVmIG15cmVjZWl2ZShzZWxmKToKLSAgICAgICAgICAgbXNnID0gJycKKyAgICAgICAgICAgbXNnID0gYicnCiAgICAgICAgICAgIHdoaWxlIGxlbihtc2cpIDwgTVNHTEVOOgogICAgICAgICAgICAgICAgY2h1bmsgPSBzZWxmLnNvY2sucmVjdihNU0dMRU4tbGVuKG1zZykpCi0gICAgICAgICAgICAgICBpZiBjaHVuayA9PSAnJzoKKyAgICAgICAgICAgICAgIGlmIGNodW5rID09IGInJzoKICAgICAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoInNvY2tldCBjb25uZWN0aW9uIGJyb2tlbiIpCiAgICAgICAgICAgICAgICBtc2cgPSBtc2cgKyBjaHVuawogICAgICAgICAgICByZXR1cm4gbXNnCkBAIC0zNjksMTIgKzM2OSw2IEBACiBwb3RlbnRpYWxfd3JpdGVycyBsaXN0LiBJZiBpdCBzaG93cyB1cCBpbiB0aGUgd3JpdGFibGUgbGlzdCwgeW91IGhhdmUgYSBkZWNlbnQKIGNoYW5jZSB0aGF0IGl0IGhhcyBjb25uZWN0ZWQuCiAKLU9uZSB2ZXJ5IG5hc3R5IHByb2JsZW0gd2l0aCBgYHNlbGVjdGBgOiBpZiBzb21ld2hlcmUgaW4gdGhvc2UgaW5wdXQgbGlzdHMgb2YKLXNvY2tldHMgaXMgb25lIHdoaWNoIGhhcyBkaWVkIGEgbmFzdHkgZGVhdGgsIHRoZSBgYHNlbGVjdGBgIHdpbGwgZmFpbC4gWW91IHRoZW4KLW5lZWQgdG8gbG9vcCB0aHJvdWdoIGV2ZXJ5IHNpbmdsZSBkYW1uIHNvY2tldCBpbiBhbGwgdGhvc2UgbGlzdHMgYW5kIGRvIGEKLWBgc2VsZWN0KFtzb2NrXSxbXSxbXSwwKWBgIHVudGlsIHlvdSBmaW5kIHRoZSBiYWQgb25lLiBUaGF0IHRpbWVvdXQgb2YgMCBtZWFucwotaXQgd29uJ3QgdGFrZSBsb25nLCBidXQgaXQncyB1Z2x5LgotCiBBY3R1YWxseSwgYGBzZWxlY3RgYCBjYW4gYmUgaGFuZHkgZXZlbiB3aXRoIGJsb2NraW5nIHNvY2tldHMuIEl0J3Mgb25lIHdheSBvZgogZGV0ZXJtaW5pbmcgd2hldGhlciB5b3Ugd2lsbCBibG9jayAtIHRoZSBzb2NrZXQgcmV0dXJucyBhcyByZWFkYWJsZSB3aGVuIHRoZXJlJ3MKIHNvbWV0aGluZyBpbiB0aGUgYnVmZmVycy4gIEhvd2V2ZXIsIHRoaXMgc3RpbGwgZG9lc24ndCBoZWxwIHdpdGggdGhlIHByb2JsZW0gb2YKQEAgLTM4NCwyNiArMzc4LDYgQEAKIGZpbGVzLiBEb24ndCB0cnkgdGhpcyBvbiBXaW5kb3dzLiBPbiBXaW5kb3dzLCBgYHNlbGVjdGBgIHdvcmtzIHdpdGggc29ja2V0cwogb25seS4gQWxzbyBub3RlIHRoYXQgaW4gQywgbWFueSBvZiB0aGUgbW9yZSBhZHZhbmNlZCBzb2NrZXQgb3B0aW9ucyBhcmUgZG9uZQogZGlmZmVyZW50bHkgb24gV2luZG93cy4gSW4gZmFjdCwgb24gV2luZG93cyBJIHVzdWFsbHkgdXNlIHRocmVhZHMgKHdoaWNoIHdvcmsKLXZlcnksIHZlcnkgd2VsbCkgd2l0aCBteSBzb2NrZXRzLiBGYWNlIGl0LCBpZiB5b3Ugd2FudCBhbnkga2luZCBvZiBwZXJmb3JtYW5jZSwKLXlvdXIgY29kZSB3aWxsIGxvb2sgdmVyeSBkaWZmZXJlbnQgb24gV2luZG93cyB0aGFuIG9uIFVuaXguCit2ZXJ5LCB2ZXJ5IHdlbGwpIHdpdGggbXkgc29ja2V0cy4KIAogCi1QZXJmb3JtYW5jZQotLS0tLS0tLS0tLS0KLQotVGhlcmUncyBubyBxdWVzdGlvbiB0aGF0IHRoZSBmYXN0ZXN0IHNvY2tldHMgY29kZSB1c2VzIG5vbi1ibG9ja2luZyBzb2NrZXRzIGFuZAotc2VsZWN0IHRvIG11bHRpcGxleCB0aGVtLiBZb3UgY2FuIHB1dCB0b2dldGhlciBzb21ldGhpbmcgdGhhdCB3aWxsIHNhdHVyYXRlIGEKLUxBTiBjb25uZWN0aW9uIHdpdGhvdXQgcHV0dGluZyBhbnkgc3RyYWluIG9uIHRoZSBDUFUuCi0KLVRoZSB0cm91YmxlIGlzIHRoYXQgYW4gYXBwIHdyaXR0ZW4gdGhpcyB3YXkgY2FuJ3QgZG8gbXVjaCBvZiBhbnl0aGluZyBlbHNlIC0KLWl0IG5lZWRzIHRvIGJlIHJlYWR5IHRvIHNodWZmbGUgYnl0ZXMgYXJvdW5kIGF0IGFsbCB0aW1lcy4gQXNzdW1pbmcgdGhhdCB5b3VyCi1hcHAgaXMgYWN0dWFsbHkgc3VwcG9zZWQgdG8gZG8gc29tZXRoaW5nIG1vcmUgdGhhbiB0aGF0LCB0aHJlYWRpbmcgaXMgdGhlCi1vcHRpbWFsIHNvbHV0aW9uLCAoYW5kIHVzaW5nIG5vbi1ibG9ja2luZyBzb2NrZXRzIHdpbGwgYmUgZmFzdGVyIHRoYW4gdXNpbmcKLWJsb2NraW5nIHNvY2tldHMpLgotCi1GaW5hbGx5LCByZW1lbWJlciB0aGF0IGV2ZW4gdGhvdWdoIGJsb2NraW5nIHNvY2tldHMgYXJlIHNvbWV3aGF0IHNsb3dlciB0aGFuCi1ub24tYmxvY2tpbmcsIGluIG1hbnkgY2FzZXMgdGhleSBhcmUgdGhlICJyaWdodCIgc29sdXRpb24uIEFmdGVyIGFsbCwgaWYgeW91cgotYXBwIGlzIGRyaXZlbiBieSB0aGUgZGF0YSBpdCByZWNlaXZlcyBvdmVyIGEgc29ja2V0LCB0aGVyZSdzIG5vdCBtdWNoIHNlbnNlIGluCi1jb21wbGljYXRpbmcgdGhlIGxvZ2ljIGp1c3Qgc28geW91ciBhcHAgY2FuIHdhaXQgb24gYGBzZWxlY3RgYCBpbnN0ZWFkIG9mCi1gYHJlY3ZgYC4KLQpkaWZmIC0tZ2l0IGEvRG9jL2luY2x1ZGVzL25vZGR5Mi5jIGIvRG9jL2luY2x1ZGVzL25vZGR5Mi5jCmluZGV4IDliOGVhZmIuLjk2NDE1NTggMTAwNjQ0Ci0tLSBhL0RvYy9pbmNsdWRlcy9ub2RkeTIuYworKysgYi9Eb2MvaW5jbHVkZXMvbm9kZHkyLmMKQEAgLTI0LDE4ICsyNCwxNiBAQAogICAgIHNlbGYgPSAoTm9kZHkgKil0eXBlLT50cF9hbGxvYyh0eXBlLCAwKTsKICAgICBpZiAoc2VsZiAhPSBOVUxMKSB7CiAgICAgICAgIHNlbGYtPmZpcnN0ID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIiIpOwotICAgICAgICBpZiAoc2VsZi0+Zmlyc3QgPT0gTlVMTCkKLSAgICAgICAgICB7CisgICAgICAgIGlmIChzZWxmLT5maXJzdCA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYoc2VsZik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICB9Ci0gICAgICAgIAorICAgICAgICB9CisKICAgICAgICAgc2VsZi0+bGFzdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIiKTsKLSAgICAgICAgaWYgKHNlbGYtPmxhc3QgPT0gTlVMTCkKLSAgICAgICAgICB7CisgICAgICAgIGlmIChzZWxmLT5sYXN0ID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihzZWxmKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgIH0KKyAgICAgICAgfQogCiAgICAgICAgIHNlbGYtPm51bWJlciA9IDA7CiAgICAgfQpAQCAtNTAsMTAgKzQ4LDEwIEBACiAKICAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7ImZpcnN0IiwgImxhc3QiLCAibnVtYmVyIiwgTlVMTH07CiAKLSAgICBpZiAoISBQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxPT2kiLCBrd2xpc3QsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZmlyc3QsICZsYXN0LCAKKyAgICBpZiAoISBQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxPT2kiLCBrd2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmaXJzdCwgJmxhc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzZWxmLT5udW1iZXIpKQotICAgICAgICByZXR1cm4gLTE7IAorICAgICAgICByZXR1cm4gLTE7CiAKICAgICBpZiAoZmlyc3QpIHsKICAgICAgICAgdG1wID0gc2VsZi0+Zmlyc3Q7CkBAIC04NiwxNSArODQsNiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIE5vZGR5X25hbWUoTm9kZHkqIHNlbGYpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpmb3JtYXQgPSBOVUxMOwotICAgIFB5T2JqZWN0ICphcmdzLCAqcmVzdWx0OwotCi0gICAgaWYgKGZvcm1hdCA9PSBOVUxMKSB7Ci0gICAgICAgIGZvcm1hdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIlcyAlcyIpOwotICAgICAgICBpZiAoZm9ybWF0ID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0KICAgICBpZiAoc2VsZi0+Zmlyc3QgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQXR0cmlidXRlRXJyb3IsICJmaXJzdCIpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTEwNSwxNCArOTQsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBhcmdzID0gUHlfQnVpbGRWYWx1ZSgiT08iLCBzZWxmLT5maXJzdCwgc2VsZi0+bGFzdCk7Ci0gICAgaWYgKGFyZ3MgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICByZXN1bHQgPSBQeVVuaWNvZGVfRm9ybWF0KGZvcm1hdCwgYXJncyk7Ci0gICAgUHlfREVDUkVGKGFyZ3MpOwotICAgIAotICAgIHJldHVybiByZXN1bHQ7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlUyAlUyIsIHNlbGYtPmZpcnN0LCBzZWxmLT5sYXN0KTsKIH0KIAogc3RhdGljIFB5TWV0aG9kRGVmIE5vZGR5X21ldGhvZHNbXSA9IHsKQEAgLTE0NSwxMiArMTI3LDEyIEBACiAgICAgUHlfVFBGTEFHU19ERUZBVUxUIHwKICAgICAgICAgUHlfVFBGTEFHU19CQVNFVFlQRSwgICAvKiB0cF9mbGFncyAqLwogICAgICJOb2RkeSBvYmplY3RzIiwgICAgICAgICAgIC8qIHRwX2RvYyAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF90cmF2ZXJzZSAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF9jbGVhciAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCi0gICAgMCwJCSAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jbGVhciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JpY2hjb21wYXJlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KICAgICBOb2RkeV9tZXRob2RzLCAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCiAgICAgTm9kZHlfbWVtYmVycywgICAgICAgICAgICAgLyogdHBfbWVtYmVycyAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLwpAQCAtMTczLDcgKzE1NSw3IEBACiB9OwogCiBQeU1PRElOSVRfRlVOQwotUHlJbml0X25vZGR5Mih2b2lkKSAKK1B5SW5pdF9ub2RkeTIodm9pZCkKIHsKICAgICBQeU9iamVjdCogbTsKIApkaWZmIC0tZ2l0IGEvRG9jL2luY2x1ZGVzL25vZGR5My5jIGIvRG9jL2luY2x1ZGVzL25vZGR5My5jCmluZGV4IDg5ZjNhNzcuLjhhNWE3NTMgMTAwNjQ0Ci0tLSBhL0RvYy9pbmNsdWRlcy9ub2RkeTMuYworKysgYi9Eb2MvaW5jbHVkZXMvbm9kZHkzLmMKQEAgLTI0LDE4ICsyNCwxNiBAQAogICAgIHNlbGYgPSAoTm9kZHkgKil0eXBlLT50cF9hbGxvYyh0eXBlLCAwKTsKICAgICBpZiAoc2VsZiAhPSBOVUxMKSB7CiAgICAgICAgIHNlbGYtPmZpcnN0ID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIiIpOwotICAgICAgICBpZiAoc2VsZi0+Zmlyc3QgPT0gTlVMTCkKLSAgICAgICAgICB7CisgICAgICAgIGlmIChzZWxmLT5maXJzdCA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYoc2VsZik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICB9Ci0gICAgICAgIAorICAgICAgICB9CisKICAgICAgICAgc2VsZi0+bGFzdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIiKTsKLSAgICAgICAgaWYgKHNlbGYtPmxhc3QgPT0gTlVMTCkKLSAgICAgICAgICB7CisgICAgICAgIGlmIChzZWxmLT5sYXN0ID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihzZWxmKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgIH0KKyAgICAgICAgfQogCiAgICAgICAgIHNlbGYtPm51bWJlciA9IDA7CiAgICAgfQpAQCAtNTAsMTAgKzQ4LDEwIEBACiAKICAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7ImZpcnN0IiwgImxhc3QiLCAibnVtYmVyIiwgTlVMTH07CiAKLSAgICBpZiAoISBQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxTU2kiLCBrd2xpc3QsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZmlyc3QsICZsYXN0LCAKKyAgICBpZiAoISBQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxTU2kiLCBrd2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmaXJzdCwgJmxhc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzZWxmLT5udW1iZXIpKQotICAgICAgICByZXR1cm4gLTE7IAorICAgICAgICByZXR1cm4gLTE7CiAKICAgICBpZiAoZmlyc3QpIHsKICAgICAgICAgdG1wID0gc2VsZi0+Zmlyc3Q7CkBAIC04OCwyMiArODYsMjIgQEAKIHN0YXRpYyBpbnQKIE5vZGR5X3NldGZpcnN0KE5vZGR5ICpzZWxmLCBQeU9iamVjdCAqdmFsdWUsIHZvaWQgKmNsb3N1cmUpCiB7Ci0gIGlmICh2YWx1ZSA9PSBOVUxMKSB7Ci0gICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgIkNhbm5vdCBkZWxldGUgdGhlIGZpcnN0IGF0dHJpYnV0ZSIpOwotICAgIHJldHVybiAtMTsKLSAgfQotICAKLSAgaWYgKCEgUHlVbmljb2RlX0NoZWNrKHZhbHVlKSkgewotICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsIAotICAgICAgICAgICAgICAgICAgICAiVGhlIGZpcnN0IGF0dHJpYnV0ZSB2YWx1ZSBtdXN0IGJlIGEgc3RyaW5nIik7Ci0gICAgcmV0dXJuIC0xOwotICB9Ci0gICAgICAKLSAgUHlfREVDUkVGKHNlbGYtPmZpcnN0KTsKLSAgUHlfSU5DUkVGKHZhbHVlKTsKLSAgc2VsZi0+Zmlyc3QgPSB2YWx1ZTsgICAgCisgICAgaWYgKHZhbHVlID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgIkNhbm5vdCBkZWxldGUgdGhlIGZpcnN0IGF0dHJpYnV0ZSIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQogCi0gIHJldHVybiAwOworICAgIGlmICghIFB5VW5pY29kZV9DaGVjayh2YWx1ZSkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJUaGUgZmlyc3QgYXR0cmlidXRlIHZhbHVlIG11c3QgYmUgYSBzdHJpbmciKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIFB5X0RFQ1JFRihzZWxmLT5maXJzdCk7CisgICAgUHlfSU5DUkVGKHZhbHVlKTsKKyAgICBzZWxmLT5maXJzdCA9IHZhbHVlOworCisgICAgcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xMTYsMzAgKzExNCwzMCBAQAogc3RhdGljIGludAogTm9kZHlfc2V0bGFzdChOb2RkeSAqc2VsZiwgUHlPYmplY3QgKnZhbHVlLCB2b2lkICpjbG9zdXJlKQogewotICBpZiAodmFsdWUgPT0gTlVMTCkgewotICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJDYW5ub3QgZGVsZXRlIHRoZSBsYXN0IGF0dHJpYnV0ZSIpOwotICAgIHJldHVybiAtMTsKLSAgfQotICAKLSAgaWYgKCEgUHlVbmljb2RlX0NoZWNrKHZhbHVlKSkgewotICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsIAotICAgICAgICAgICAgICAgICAgICAiVGhlIGxhc3QgYXR0cmlidXRlIHZhbHVlIG11c3QgYmUgYSBzdHJpbmciKTsKLSAgICByZXR1cm4gLTE7Ci0gIH0KLSAgICAgIAotICBQeV9ERUNSRUYoc2VsZi0+bGFzdCk7Ci0gIFB5X0lOQ1JFRih2YWx1ZSk7Ci0gIHNlbGYtPmxhc3QgPSB2YWx1ZTsgICAgCisgICAgaWYgKHZhbHVlID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgIkNhbm5vdCBkZWxldGUgdGhlIGxhc3QgYXR0cmlidXRlIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CiAKLSAgcmV0dXJuIDA7CisgICAgaWYgKCEgUHlVbmljb2RlX0NoZWNrKHZhbHVlKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIlRoZSBsYXN0IGF0dHJpYnV0ZSB2YWx1ZSBtdXN0IGJlIGEgc3RyaW5nIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBQeV9ERUNSRUYoc2VsZi0+bGFzdCk7CisgICAgUHlfSU5DUkVGKHZhbHVlKTsKKyAgICBzZWxmLT5sYXN0ID0gdmFsdWU7CisKKyAgICByZXR1cm4gMDsKIH0KIAogc3RhdGljIFB5R2V0U2V0RGVmIE5vZGR5X2dldHNldGVyc1tdID0gewotICAgIHsiZmlyc3QiLCAKKyAgICB7ImZpcnN0IiwKICAgICAgKGdldHRlcilOb2RkeV9nZXRmaXJzdCwgKHNldHRlcilOb2RkeV9zZXRmaXJzdCwKICAgICAgImZpcnN0IG5hbWUiLAogICAgICBOVUxMfSwKLSAgICB7Imxhc3QiLCAKKyAgICB7Imxhc3QiLAogICAgICAoZ2V0dGVyKU5vZGR5X2dldGxhc3QsIChzZXR0ZXIpTm9kZHlfc2V0bGFzdCwKICAgICAgImxhc3QgbmFtZSIsCiAgICAgIE5VTEx9LApAQCAtMTQ5LDIzICsxNDcsNyBAQAogc3RhdGljIFB5T2JqZWN0ICoKIE5vZGR5X25hbWUoTm9kZHkqIHNlbGYpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpmb3JtYXQgPSBOVUxMOwotICAgIFB5T2JqZWN0ICphcmdzLCAqcmVzdWx0OwotCi0gICAgaWYgKGZvcm1hdCA9PSBOVUxMKSB7Ci0gICAgICAgIGZvcm1hdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIlcyAlcyIpOwotICAgICAgICBpZiAoZm9ybWF0ID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0KLSAgICBhcmdzID0gUHlfQnVpbGRWYWx1ZSgiT08iLCBzZWxmLT5maXJzdCwgc2VsZi0+bGFzdCk7Ci0gICAgaWYgKGFyZ3MgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICByZXN1bHQgPSBQeVVuaWNvZGVfRm9ybWF0KGZvcm1hdCwgYXJncyk7Ci0gICAgUHlfREVDUkVGKGFyZ3MpOwotICAgIAotICAgIHJldHVybiByZXN1bHQ7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlUyAlUyIsIHNlbGYtPmZpcnN0LCBzZWxmLT5sYXN0KTsKIH0KIAogc3RhdGljIFB5TWV0aG9kRGVmIE5vZGR5X21ldGhvZHNbXSA9IHsKQEAgLTE5OCwxMiArMTgwLDEyIEBACiAgICAgUHlfVFBGTEFHU19ERUZBVUxUIHwKICAgICAgICAgUHlfVFBGTEFHU19CQVNFVFlQRSwgICAvKiB0cF9mbGFncyAqLwogICAgICJOb2RkeSBvYmplY3RzIiwgICAgICAgICAgIC8qIHRwX2RvYyAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF90cmF2ZXJzZSAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF9jbGVhciAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLwotICAgIDAsCQkgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCi0gICAgMCwJCSAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jbGVhciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JpY2hjb21wYXJlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KICAgICBOb2RkeV9tZXRob2RzLCAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCiAgICAgTm9kZHlfbWVtYmVycywgICAgICAgICAgICAgLyogdHBfbWVtYmVycyAqLwogICAgIE5vZGR5X2dldHNldGVycywgICAgICAgICAgIC8qIHRwX2dldHNldCAqLwpAQCAtMjI2LDcgKzIwOCw3IEBACiB9OwogCiBQeU1PRElOSVRfRlVOQwotUHlJbml0X25vZGR5Myh2b2lkKSAKK1B5SW5pdF9ub2RkeTModm9pZCkKIHsKICAgICBQeU9iamVjdCogbTsKIApkaWZmIC0tZ2l0IGEvRG9jL2luY2x1ZGVzL25vZGR5NC5jIGIvRG9jL2luY2x1ZGVzL25vZGR5NC5jCmluZGV4IDZhOTZmYWMuLmViOTYyMmEgMTAwNjQ0Ci0tLSBhL0RvYy9pbmNsdWRlcy9ub2RkeTQuYworKysgYi9Eb2MvaW5jbHVkZXMvbm9kZHk0LmMKQEAgLTI3LDcgKzI3LDcgQEAKICAgICByZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCAKK3N0YXRpYyBpbnQKIE5vZGR5X2NsZWFyKE5vZGR5ICpzZWxmKQogewogICAgIFB5T2JqZWN0ICp0bXA7CkBAIC01OCwxOCArNTgsMTYgQEAKICAgICBzZWxmID0gKE5vZGR5ICopdHlwZS0+dHBfYWxsb2ModHlwZSwgMCk7CiAgICAgaWYgKHNlbGYgIT0gTlVMTCkgewogICAgICAgICBzZWxmLT5maXJzdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIiKTsKLSAgICAgICAgaWYgKHNlbGYtPmZpcnN0ID09IE5VTEwpCi0gICAgICAgICAgeworICAgICAgICBpZiAoc2VsZi0+Zmlyc3QgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKHNlbGYpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgfQotICAgICAgICAKKyAgICAgICAgfQorCiAgICAgICAgIHNlbGYtPmxhc3QgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiIik7Ci0gICAgICAgIGlmIChzZWxmLT5sYXN0ID09IE5VTEwpCi0gICAgICAgICAgeworICAgICAgICBpZiAoc2VsZi0+bGFzdCA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYoc2VsZik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICB9CisgICAgICAgIH0KIAogICAgICAgICBzZWxmLT5udW1iZXIgPSAwOwogICAgIH0KQEAgLTg0LDEwICs4MiwxMCBAQAogCiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJmaXJzdCIsICJsYXN0IiwgIm51bWJlciIsIE5VTEx9OwogCi0gICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8T09pIiwga3dsaXN0LCAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZpcnN0LCAmbGFzdCwgCisgICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8T09pIiwga3dsaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZmlyc3QsICZsYXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2VsZi0+bnVtYmVyKSkKLSAgICAgICAgcmV0dXJuIC0xOyAKKyAgICAgICAgcmV0dXJuIC0xOwogCiAgICAgaWYgKGZpcnN0KSB7CiAgICAgICAgIHRtcCA9IHNlbGYtPmZpcnN0OwpAQCAtMTIwLDE1ICsxMTgsNiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIE5vZGR5X25hbWUoTm9kZHkqIHNlbGYpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpmb3JtYXQgPSBOVUxMOwotICAgIFB5T2JqZWN0ICphcmdzLCAqcmVzdWx0OwotCi0gICAgaWYgKGZvcm1hdCA9PSBOVUxMKSB7Ci0gICAgICAgIGZvcm1hdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIlcyAlcyIpOwotICAgICAgICBpZiAoZm9ybWF0ID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0KICAgICBpZiAoc2VsZi0+Zmlyc3QgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQXR0cmlidXRlRXJyb3IsICJmaXJzdCIpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTEzOSwxNCArMTI4LDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgYXJncyA9IFB5X0J1aWxkVmFsdWUoIk9PIiwgc2VsZi0+Zmlyc3QsIHNlbGYtPmxhc3QpOwotICAgIGlmIChhcmdzID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zvcm1hdChmb3JtYXQsIGFyZ3MpOwotICAgIFB5X0RFQ1JFRihhcmdzKTsKLSAgICAKLSAgICByZXR1cm4gcmVzdWx0OworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVMgJVMiLCBzZWxmLT5maXJzdCwgc2VsZi0+bGFzdCk7CiB9CiAKIHN0YXRpYyBQeU1ldGhvZERlZiBOb2RkeV9tZXRob2RzW10gPSB7CkBAIC0xODIsMTAgKzE2NCwxMCBAQAogICAgICJOb2RkeSBvYmplY3RzIiwgICAgICAgICAgIC8qIHRwX2RvYyAqLwogICAgICh0cmF2ZXJzZXByb2MpTm9kZHlfdHJhdmVyc2UsICAgLyogdHBfdHJhdmVyc2UgKi8KICAgICAoaW5xdWlyeSlOb2RkeV9jbGVhciwgICAgICAgICAgIC8qIHRwX2NsZWFyICovCi0gICAgMCwJCSAgICAgICAgICAgICAgIC8qIHRwX3JpY2hjb21wYXJlICovCi0gICAgMCwJCSAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCi0gICAgMCwJCSAgICAgICAgICAgICAgIC8qIHRwX2l0ZXIgKi8KLSAgICAwLAkJICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCiAgICAgTm9kZHlfbWV0aG9kcywgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLwogICAgIE5vZGR5X21lbWJlcnMsICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KQEAgLTIwOCw3ICsxOTAsNyBAQAogfTsKIAogUHlNT0RJTklUX0ZVTkMKLVB5SW5pdF9ub2RkeTQodm9pZCkgCitQeUluaXRfbm9kZHk0KHZvaWQpCiB7CiAgICAgUHlPYmplY3QqIG07CiAKZGlmZiAtLWdpdCBhL0RvYy9pbnN0YWxsL2luZGV4LnJzdCBiL0RvYy9pbnN0YWxsL2luZGV4LnJzdAppbmRleCBiMjBmMWZiLi5iYjJlOWM1IDEwMDY0NAotLS0gYS9Eb2MvaW5zdGFsbC9pbmRleC5yc3QKKysrIGIvRG9jL2luc3RhbGwvaW5kZXgucnN0CkBAIC0xLDEyICsxLDEwIEBACi0uLiBoaWdobGlnaHRsYW5nOjogbm9uZQorLi4gX3BhY2thZ2luZy1pbnN0YWxsLWluZGV4OgogCi0uLiBfaW5zdGFsbC1pbmRleDoKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICBJbnN0YWxsaW5nIFB5dGhvbiBQcm9qZWN0cworKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAKLSoqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gIEluc3RhbGxpbmcgUHl0aG9uIE1vZHVsZXMKLSoqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0KLTpBdXRob3I6IEdyZWcgV2FyZAorOkF1dGhvcjogVGhlIEZlbGxvd3NoaXAgb2YgdGhlIFBhY2thZ2luZwogOlJlbGVhc2U6IHx2ZXJzaW9ufAogOkRhdGU6IHx0b2RheXwKIApAQCAtMTYsMTA3MSArMTQsNDMgQEAKICAgIGFib3V0IFB5dGhvbiBhbmQgYXJlbid0IGFib3V0IHRvIGxlYXJuIHRoZSBsYW5ndWFnZSBqdXN0IGluIG9yZGVyIHRvCiAgICBpbnN0YWxsIGFuZCBtYWludGFpbiBpdCBmb3IgdGhlaXIgdXNlcnMsIGkuZS4gc3lzdGVtIGFkbWluaXN0cmF0b3JzLgogICAgVGh1cywgSSBoYXZlIHRvIGJlIHN1cmUgdG8gZXhwbGFpbiB0aGUgYmFzaWNzIGF0IHNvbWUgcG9pbnQ6Ci0gICBzeXMucGF0aCBhbmQgUFlUSE9OUEFUSCBhdCBsZWFzdC4gIFNob3VsZCBwcm9iYWJseSBnaXZlIHBvaW50ZXJzIHRvCisgICBzeXMucGF0aCBhbmQgUFlUSE9OUEFUSCBhdCBsZWFzdC4gU2hvdWxkIHByb2JhYmx5IGdpdmUgcG9pbnRlcnMgdG8KICAgIG90aGVyIGRvY3Mgb24gImltcG9ydCBzaXRlIiwgUFlUSE9OU1RBUlRVUCwgUFlUSE9OSE9NRSwgZXRjLgogCiAgICBGaW5hbGx5LCBpdCBtaWdodCBiZSB1c2VmdWwgdG8gaW5jbHVkZSBhbGwgdGhlIG1hdGVyaWFsIGZyb20gbXkgIkNhcmUKLSAgIGFuZCBGZWVkaW5nIG9mIGEgUHl0aG9uIEluc3RhbGxhdGlvbiIgdGFsayBpbiBoZXJlIHNvbWV3aGVyZS4gIFlvdyEKKyAgIGFuZCBGZWVkaW5nIG9mIGEgUHl0aG9uIEluc3RhbGxhdGlvbiIgdGFsayBpbiBoZXJlIHNvbWV3aGVyZS4gWW93IQogCiAuLiB0b3BpYzo6IEFic3RyYWN0CiAKLSAgIFRoaXMgZG9jdW1lbnQgZGVzY3JpYmVzIHRoZSBQeXRob24gRGlzdHJpYnV0aW9uIFV0aWxpdGllcyAoIkRpc3R1dGlscyIpIGZyb20gdGhlCi0gICBlbmQtdXNlcidzIHBvaW50LW9mLXZpZXcsIGRlc2NyaWJpbmcgaG93IHRvIGV4dGVuZCB0aGUgY2FwYWJpbGl0aWVzIG9mIGEKLSAgIHN0YW5kYXJkIFB5dGhvbiBpbnN0YWxsYXRpb24gYnkgYnVpbGRpbmcgYW5kIGluc3RhbGxpbmcgdGhpcmQtcGFydHkgUHl0aG9uCi0gICBtb2R1bGVzIGFuZCBleHRlbnNpb25zLgorICAgVGhpcyBkb2N1bWVudCBkZXNjcmliZXMgUGFja2FnaW5nIGZyb20gdGhlIGVuZC11c2VyJ3MgcG9pbnQgb2YgdmlldzogaXQKKyAgIGV4cGxhaW5zIGhvdyB0byBleHRlbmQgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgYSBzdGFuZGFyZCBQeXRob24gaW5zdGFsbGF0aW9uIGJ5CisgICBidWlsZGluZyBhbmQgaW5zdGFsbGluZyB0aGlyZC1wYXJ0eSBQeXRob24gbW9kdWxlcyBhbmQgYXBwbGljYXRpb25zLgogCiAKLS4uIF9pbnN0LWludHJvOgorVGhpcyBndWlkZSBpcyBzcGxpdCBpbnRvIGEgc2ltcGxlIG92ZXJ2aWV3ICBmb2xsb3dlZCBieSBhIGxvbmdlciBwcmVzZW50YXRpb24gb2YKK3RoZSA6cHJvZ3JhbTpgcHlzZXR1cGAgc2NyaXB0LCB0aGUgUHl0aG9uIHBhY2thZ2UgbWFuYWdlbWVudCB0b29sIHVzZWQgdG8KK2J1aWxkLCBkaXN0cmlidXRlLCBzZWFyY2ggZm9yLCBpbnN0YWxsLCByZW1vdmUgYW5kIGxpc3QgUHl0aG9uIGRpc3RyaWJ1dGlvbnMuCiAKLUludHJvZHVjdGlvbgotPT09PT09PT09PT09CisuLiBUT0RPIGludGVncmF0ZSBpbnN0YWxsIGFuZCBweXNldHVwIGluc3RlYWQgb2YgZHVwbGljYXRpbmcKIAotQWx0aG91Z2ggUHl0aG9uJ3MgZXh0ZW5zaXZlIHN0YW5kYXJkIGxpYnJhcnkgY292ZXJzIG1hbnkgcHJvZ3JhbW1pbmcgbmVlZHMsCi10aGVyZSBvZnRlbiBjb21lcyBhIHRpbWUgd2hlbiB5b3UgbmVlZCB0byBhZGQgc29tZSBuZXcgZnVuY3Rpb25hbGl0eSB0byB5b3VyCi1QeXRob24gaW5zdGFsbGF0aW9uIGluIHRoZSBmb3JtIG9mIHRoaXJkLXBhcnR5IG1vZHVsZXMuICBUaGlzIG1pZ2h0IGJlIG5lY2Vzc2FyeQotdG8gc3VwcG9ydCB5b3VyIG93biBwcm9ncmFtbWluZywgb3IgdG8gc3VwcG9ydCBhbiBhcHBsaWNhdGlvbiB0aGF0IHlvdSB3YW50IHRvCi11c2UgYW5kIHRoYXQgaGFwcGVucyB0byBiZSB3cml0dGVuIGluIFB5dGhvbi4KKy4uIHRvY3RyZWU6OgorICAgOm1heGRlcHRoOiAyCisgICA6bnVtYmVyZWQ6CiAKLUluIHRoZSBwYXN0LCB0aGVyZSBoYXMgYmVlbiBsaXR0bGUgc3VwcG9ydCBmb3IgYWRkaW5nIHRoaXJkLXBhcnR5IG1vZHVsZXMgdG8gYW4KLWV4aXN0aW5nIFB5dGhvbiBpbnN0YWxsYXRpb24uICBXaXRoIHRoZSBpbnRyb2R1Y3Rpb24gb2YgdGhlIFB5dGhvbiBEaXN0cmlidXRpb24KLVV0aWxpdGllcyAoRGlzdHV0aWxzIGZvciBzaG9ydCkgaW4gUHl0aG9uIDIuMCwgdGhpcyBjaGFuZ2VkLgotCi1UaGlzIGRvY3VtZW50IGlzIGFpbWVkIHByaW1hcmlseSBhdCB0aGUgcGVvcGxlIHdobyBuZWVkIHRvIGluc3RhbGwgdGhpcmQtcGFydHkKLVB5dGhvbiBtb2R1bGVzOiBlbmQtdXNlcnMgYW5kIHN5c3RlbSBhZG1pbmlzdHJhdG9ycyB3aG8ganVzdCBuZWVkIHRvIGdldCBzb21lCi1QeXRob24gYXBwbGljYXRpb24gcnVubmluZywgYW5kIGV4aXN0aW5nIFB5dGhvbiBwcm9ncmFtbWVycyB3aG8gd2FudCB0byBhZGQgc29tZQotbmV3IGdvb2RpZXMgdG8gdGhlaXIgdG9vbGJveC4gIFlvdSBkb24ndCBuZWVkIHRvIGtub3cgUHl0aG9uIHRvIHJlYWQgdGhpcwotZG9jdW1lbnQ7IHRoZXJlIHdpbGwgYmUgc29tZSBicmllZiBmb3JheXMgaW50byB1c2luZyBQeXRob24ncyBpbnRlcmFjdGl2ZSBtb2RlCi10byBleHBsb3JlIHlvdXIgaW5zdGFsbGF0aW9uLCBidXQgdGhhdCdzIGl0LiAgSWYgeW91J3JlIGxvb2tpbmcgZm9yIGluZm9ybWF0aW9uCi1vbiBob3cgdG8gZGlzdHJpYnV0ZSB5b3VyIG93biBQeXRob24gbW9kdWxlcyBzbyB0aGF0IG90aGVycyBtYXkgdXNlIHRoZW0sIHNlZQotdGhlIDpyZWY6YGRpc3R1dGlscy1pbmRleGAgbWFudWFsLgotCi0KLS4uIF9pbnN0LXRyaXZpYWwtaW5zdGFsbDoKLQotQmVzdCBjYXNlOiB0cml2aWFsIGluc3RhbGxhdGlvbgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1JbiB0aGUgYmVzdCBjYXNlLCBzb21lb25lIHdpbGwgaGF2ZSBwcmVwYXJlZCBhIHNwZWNpYWwgdmVyc2lvbiBvZiB0aGUgbW9kdWxlCi1kaXN0cmlidXRpb24geW91IHdhbnQgdG8gaW5zdGFsbCB0aGF0IGlzIHRhcmdldGVkIHNwZWNpZmljYWxseSBhdCB5b3VyIHBsYXRmb3JtCi1hbmQgaXMgaW5zdGFsbGVkIGp1c3QgbGlrZSBhbnkgb3RoZXIgc29mdHdhcmUgb24geW91ciBwbGF0Zm9ybS4gIEZvciBleGFtcGxlLAotdGhlIG1vZHVsZSBkZXZlbG9wZXIgbWlnaHQgbWFrZSBhbiBleGVjdXRhYmxlIGluc3RhbGxlciBhdmFpbGFibGUgZm9yIFdpbmRvd3MKLXVzZXJzLCBhbiBSUE0gcGFja2FnZSBmb3IgdXNlcnMgb2YgUlBNLWJhc2VkIExpbnV4IHN5c3RlbXMgKFJlZCBIYXQsIFN1U0UsCi1NYW5kcmFrZSwgYW5kIG1hbnkgb3RoZXJzKSwgYSBEZWJpYW4gcGFja2FnZSBmb3IgdXNlcnMgb2YgRGViaWFuLWJhc2VkIExpbnV4Ci1zeXN0ZW1zLCBhbmQgc28gZm9ydGguCi0KLUluIHRoYXQgY2FzZSwgeW91IHdvdWxkIGRvd25sb2FkIHRoZSBpbnN0YWxsZXIgYXBwcm9wcmlhdGUgdG8geW91ciBwbGF0Zm9ybSBhbmQKLWRvIHRoZSBvYnZpb3VzIHRoaW5nIHdpdGggaXQ6IHJ1biBpdCBpZiBpdCdzIGFuIGV4ZWN1dGFibGUgaW5zdGFsbGVyLCBgYHJwbQotLS1pbnN0YWxsYGAgaXQgaWYgaXQncyBhbiBSUE0sIGV0Yy4gIFlvdSBkb24ndCBuZWVkIHRvIHJ1biBQeXRob24gb3IgYSBzZXR1cAotc2NyaXB0LCB5b3UgZG9uJ3QgbmVlZCB0byBjb21waWxlIGFueXRoaW5nLS0teW91IG1pZ2h0IG5vdCBldmVuIG5lZWQgdG8gcmVhZCBhbnkKLWluc3RydWN0aW9ucyAoYWx0aG91Z2ggaXQncyBhbHdheXMgYSBnb29kIGlkZWEgdG8gZG8gc28gYW55d2F5KS4KLQotT2YgY291cnNlLCB0aGluZ3Mgd2lsbCBub3QgYWx3YXlzIGJlIHRoYXQgZWFzeS4gIFlvdSBtaWdodCBiZSBpbnRlcmVzdGVkIGluIGEKLW1vZHVsZSBkaXN0cmlidXRpb24gdGhhdCBkb2Vzbid0IGhhdmUgYW4gZWFzeS10by11c2UgaW5zdGFsbGVyIGZvciB5b3VyCi1wbGF0Zm9ybS4gIEluIHRoYXQgY2FzZSwgeW91J2xsIGhhdmUgdG8gc3RhcnQgd2l0aCB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbgotcmVsZWFzZWQgYnkgdGhlIG1vZHVsZSdzIGF1dGhvci9tYWludGFpbmVyLiAgSW5zdGFsbGluZyBmcm9tIGEgc291cmNlCi1kaXN0cmlidXRpb24gaXMgbm90IHRvbyBoYXJkLCBhcyBsb25nIGFzIHRoZSBtb2R1bGVzIGFyZSBwYWNrYWdlZCBpbiB0aGUKLXN0YW5kYXJkIHdheS4gIFRoZSBidWxrIG9mIHRoaXMgZG9jdW1lbnQgaXMgYWJvdXQgYnVpbGRpbmcgYW5kIGluc3RhbGxpbmcKLW1vZHVsZXMgZnJvbSBzdGFuZGFyZCBzb3VyY2UgZGlzdHJpYnV0aW9ucy4KLQotCi0uLiBfaW5zdC1uZXctc3RhbmRhcmQ6Ci0KLVRoZSBuZXcgc3RhbmRhcmQ6IERpc3R1dGlscwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLUlmIHlvdSBkb3dubG9hZCBhIG1vZHVsZSBzb3VyY2UgZGlzdHJpYnV0aW9uLCB5b3UgY2FuIHRlbGwgcHJldHR5IHF1aWNrbHkgaWYgaXQKLXdhcyBwYWNrYWdlZCBhbmQgZGlzdHJpYnV0ZWQgaW4gdGhlIHN0YW5kYXJkIHdheSwgaS5lLiB1c2luZyB0aGUgRGlzdHV0aWxzLgotRmlyc3QsIHRoZSBkaXN0cmlidXRpb24ncyBuYW1lIGFuZCB2ZXJzaW9uIG51bWJlciB3aWxsIGJlIGZlYXR1cmVkIHByb21pbmVudGx5Ci1pbiB0aGUgbmFtZSBvZiB0aGUgZG93bmxvYWRlZCBhcmNoaXZlLCBlLmcuIDpmaWxlOmBmb28tMS4wLnRhci5nemAgb3IKLTpmaWxlOmB3aWRnZXQtMC45LjcuemlwYC4gIE5leHQsIHRoZSBhcmNoaXZlIHdpbGwgdW5wYWNrIGludG8gYSBzaW1pbGFybHktbmFtZWQKLWRpcmVjdG9yeTogOmZpbGU6YGZvby0xLjBgIG9yIDpmaWxlOmB3aWRnZXQtMC45LjdgLiAgQWRkaXRpb25hbGx5LCB0aGUKLWRpc3RyaWJ1dGlvbiB3aWxsIGNvbnRhaW4gYSBzZXR1cCBzY3JpcHQgOmZpbGU6YHNldHVwLnB5YCwgYW5kIGEgZmlsZSBuYW1lZAotOmZpbGU6YFJFQURNRS50eHRgIG9yIHBvc3NpYmx5IGp1c3QgOmZpbGU6YFJFQURNRWAsIHdoaWNoIHNob3VsZCBleHBsYWluIHRoYXQKLWJ1aWxkaW5nIGFuZCBpbnN0YWxsaW5nIHRoZSBtb2R1bGUgZGlzdHJpYnV0aW9uIGlzIGEgc2ltcGxlIG1hdHRlciBvZiBydW5uaW5nCi1vbmUgY29tbWFuZCBmcm9tIGEgdGVybWluYWw6OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbAotCi1Gb3IgV2luZG93cywgdGhpcyBjb21tYW5kIHNob3VsZCBiZSBydW4gZnJvbSBhIGNvbW1hbmQgcHJvbXB0IHdpbmRvdwotKDptZW51c2VsZWN0aW9uOmBTdGFydCAtLT4gQWNjZXNzb3JpZXNgKTo6Ci0KLSAgIHNldHVwLnB5IGluc3RhbGwKLQotSWYgYWxsIHRoZXNlIHRoaW5ncyBhcmUgdHJ1ZSwgdGhlbiB5b3UgYWxyZWFkeSBrbm93IGhvdyB0byBidWlsZCBhbmQgaW5zdGFsbCB0aGUKLW1vZHVsZXMgeW91J3ZlIGp1c3QgZG93bmxvYWRlZDogIFJ1biB0aGUgY29tbWFuZCBhYm92ZS4gVW5sZXNzIHlvdSBuZWVkIHRvCi1pbnN0YWxsIHRoaW5ncyBpbiBhIG5vbi1zdGFuZGFyZCB3YXkgb3IgY3VzdG9taXplIHRoZSBidWlsZCBwcm9jZXNzLCB5b3UgZG9uJ3QKLXJlYWxseSBuZWVkIHRoaXMgbWFudWFsLiAgT3IgcmF0aGVyLCB0aGUgYWJvdmUgY29tbWFuZCBpcyBldmVyeXRoaW5nIHlvdSBuZWVkIHRvCi1nZXQgb3V0IG9mIHRoaXMgbWFudWFsLgotCi0KLS4uIF9pbnN0LXN0YW5kYXJkLWluc3RhbGw6Ci0KLVN0YW5kYXJkIEJ1aWxkIGFuZCBJbnN0YWxsCi09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1BcyBkZXNjcmliZWQgaW4gc2VjdGlvbiA6cmVmOmBpbnN0LW5ldy1zdGFuZGFyZGAsIGJ1aWxkaW5nIGFuZCBpbnN0YWxsaW5nIGEgbW9kdWxlCi1kaXN0cmlidXRpb24gdXNpbmcgdGhlIERpc3R1dGlscyBpcyB1c3VhbGx5IG9uZSBzaW1wbGUgY29tbWFuZCB0byBydW4gZnJvbSBhCi10ZXJtaW5hbDo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsCi0KLQotLi4gX2luc3QtcGxhdGZvcm0tdmFyaWF0aW9uczoKLQotUGxhdGZvcm0gdmFyaWF0aW9ucwotLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1Zb3Ugc2hvdWxkIGFsd2F5cyBydW4gdGhlIHNldHVwIGNvbW1hbmQgZnJvbSB0aGUgZGlzdHJpYnV0aW9uIHJvb3QgZGlyZWN0b3J5LAotaS5lLiB0aGUgdG9wLWxldmVsIHN1YmRpcmVjdG9yeSB0aGF0IHRoZSBtb2R1bGUgc291cmNlIGRpc3RyaWJ1dGlvbiB1bnBhY2tzCi1pbnRvLiAgRm9yIGV4YW1wbGUsIGlmIHlvdSd2ZSBqdXN0IGRvd25sb2FkZWQgYSBtb2R1bGUgc291cmNlIGRpc3RyaWJ1dGlvbgotOmZpbGU6YGZvby0xLjAudGFyLmd6YCBvbnRvIGEgVW5peCBzeXN0ZW0sIHRoZSBub3JtYWwgdGhpbmcgdG8gZG8gaXM6OgotCi0gICBndW56aXAgLWMgZm9vLTEuMC50YXIuZ3ogfCB0YXIgeGYgLSAgICAjIHVucGFja3MgaW50byBkaXJlY3RvcnkgZm9vLTEuMAotICAgY2QgZm9vLTEuMAotICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwKLQotT24gV2luZG93cywgeW91J2QgcHJvYmFibHkgZG93bmxvYWQgOmZpbGU6YGZvby0xLjAuemlwYC4gIElmIHlvdSBkb3dubG9hZGVkIHRoZQotYXJjaGl2ZSBmaWxlIHRvIDpmaWxlOmBDOlxcVGVtcGAsIHRoZW4gaXQgd291bGQgdW5wYWNrIGludG8KLTpmaWxlOmBDOlxcVGVtcFxcZm9vLTEuMGA7IHlvdSBjYW4gdXNlIGVpdGhlciBhIGFyY2hpdmUgbWFuaXB1bGF0b3Igd2l0aCBhCi1ncmFwaGljYWwgdXNlciBpbnRlcmZhY2UgKHN1Y2ggYXMgV2luWmlwKSBvciBhIGNvbW1hbmQtbGluZSB0b29sIChzdWNoIGFzCi06cHJvZ3JhbTpgdW56aXBgIG9yIDpwcm9ncmFtOmBwa3VuemlwYCkgdG8gdW5wYWNrIHRoZSBhcmNoaXZlLiAgVGhlbiwgb3BlbiBhCi1jb21tYW5kIHByb21wdCB3aW5kb3cgYW5kIHJ1bjo6Ci0KLSAgIGNkIGM6XFRlbXBcZm9vLTEuMAotICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwKLQotCi0uLiBfaW5zdC1zcGxpdHRpbmctdXA6Ci0KLVNwbGl0dGluZyB0aGUgam9iIHVwCi0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1SdW5uaW5nIGBgc2V0dXAucHkgaW5zdGFsbGBgIGJ1aWxkcyBhbmQgaW5zdGFsbHMgYWxsIG1vZHVsZXMgaW4gb25lIHJ1bi4gIElmIHlvdQotcHJlZmVyIHRvIHdvcmsgaW5jcmVtZW50YWxseS0tLWVzcGVjaWFsbHkgdXNlZnVsIGlmIHlvdSB3YW50IHRvIGN1c3RvbWl6ZSB0aGUKLWJ1aWxkIHByb2Nlc3MsIG9yIGlmIHRoaW5ncyBhcmUgZ29pbmcgd3JvbmctLS15b3UgY2FuIHVzZSB0aGUgc2V0dXAgc2NyaXB0IHRvIGRvCi1vbmUgdGhpbmcgYXQgYSB0aW1lLiAgVGhpcyBpcyBwYXJ0aWN1bGFybHkgaGVscGZ1bCB3aGVuIHRoZSBidWlsZCBhbmQgaW5zdGFsbAotd2lsbCBiZSBkb25lIGJ5IGRpZmZlcmVudCB1c2Vycy0tLWZvciBleGFtcGxlLCB5b3UgbWlnaHQgd2FudCB0byBidWlsZCBhIG1vZHVsZQotZGlzdHJpYnV0aW9uIGFuZCBoYW5kIGl0IG9mZiB0byBhIHN5c3RlbSBhZG1pbmlzdHJhdG9yIGZvciBpbnN0YWxsYXRpb24gKG9yIGRvCi1pdCB5b3Vyc2VsZiwgd2l0aCBzdXBlci11c2VyIHByaXZpbGVnZXMpLgotCi1Gb3IgZXhhbXBsZSwgeW91IGNhbiBidWlsZCBldmVyeXRoaW5nIGluIG9uZSBzdGVwLCBhbmQgdGhlbiBpbnN0YWxsIGV2ZXJ5dGhpbmcKLWluIGEgc2Vjb25kIHN0ZXAsIGJ5IGludm9raW5nIHRoZSBzZXR1cCBzY3JpcHQgdHdpY2U6OgotCi0gICBweXRob24gc2V0dXAucHkgYnVpbGQKLSAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsCi0KLUlmIHlvdSBkbyB0aGlzLCB5b3Ugd2lsbCBub3RpY2UgdGhhdCBydW5uaW5nIHRoZSA6Y29tbWFuZDpgaW5zdGFsbGAgY29tbWFuZAotZmlyc3QgcnVucyB0aGUgOmNvbW1hbmQ6YGJ1aWxkYCBjb21tYW5kLCB3aGljaC0tLWluIHRoaXMgY2FzZS0tLXF1aWNrbHkgbm90aWNlcwotdGhhdCBpdCBoYXMgbm90aGluZyB0byBkbywgc2luY2UgZXZlcnl0aGluZyBpbiB0aGUgOmZpbGU6YGJ1aWxkYCBkaXJlY3RvcnkgaXMKLXVwLXRvLWRhdGUuCi0KLVlvdSBtYXkgbm90IG5lZWQgdGhpcyBhYmlsaXR5IHRvIGJyZWFrIHRoaW5ncyBkb3duIG9mdGVuIGlmIGFsbCB5b3UgZG8gaXMKLWluc3RhbGwgbW9kdWxlcyBkb3dubG9hZGVkIG9mZiB0aGUgJ25ldCwgYnV0IGl0J3MgdmVyeSBoYW5keSBmb3IgbW9yZSBhZHZhbmNlZAotdGFza3MuICBJZiB5b3UgZ2V0IGludG8gZGlzdHJpYnV0aW5nIHlvdXIgb3duIFB5dGhvbiBtb2R1bGVzIGFuZCBleHRlbnNpb25zLAoteW91J2xsIHJ1biBsb3RzIG9mIGluZGl2aWR1YWwgRGlzdHV0aWxzIGNvbW1hbmRzIG9uIHRoZWlyIG93bi4KLQotCi0uLiBfaW5zdC1ob3ctYnVpbGQtd29ya3M6Ci0KLUhvdyBidWlsZGluZyB3b3JrcwotLS0tLS0tLS0tLS0tLS0tLS0tCi0KLUFzIGltcGxpZWQgYWJvdmUsIHRoZSA6Y29tbWFuZDpgYnVpbGRgIGNvbW1hbmQgaXMgcmVzcG9uc2libGUgZm9yIHB1dHRpbmcgdGhlCi1maWxlcyB0byBpbnN0YWxsIGludG8gYSAqYnVpbGQgZGlyZWN0b3J5Ki4gIEJ5IGRlZmF1bHQsIHRoaXMgaXMgOmZpbGU6YGJ1aWxkYAotdW5kZXIgdGhlIGRpc3RyaWJ1dGlvbiByb290OyBpZiB5b3UncmUgZXhjZXNzaXZlbHkgY29uY2VybmVkIHdpdGggc3BlZWQsIG9yIHdhbnQKLXRvIGtlZXAgdGhlIHNvdXJjZSB0cmVlIHByaXN0aW5lLCB5b3UgY2FuIGNoYW5nZSB0aGUgYnVpbGQgZGlyZWN0b3J5IHdpdGggdGhlCi06b3B0aW9uOmAtLWJ1aWxkLWJhc2VgIG9wdGlvbi4gRm9yIGV4YW1wbGU6OgotCi0gICBweXRob24gc2V0dXAucHkgYnVpbGQgLS1idWlsZC1iYXNlPS90bXAvcHlidWlsZC9mb28tMS4wCi0KLShPciB5b3UgY291bGQgZG8gdGhpcyBwZXJtYW5lbnRseSB3aXRoIGEgZGlyZWN0aXZlIGluIHlvdXIgc3lzdGVtIG9yIHBlcnNvbmFsCi1EaXN0dXRpbHMgY29uZmlndXJhdGlvbiBmaWxlOyBzZWUgc2VjdGlvbiA6cmVmOmBpbnN0LWNvbmZpZy1maWxlc2AuKSAgTm9ybWFsbHksIHRoaXMKLWlzbid0IG5lY2Vzc2FyeS4KLQotVGhlIGRlZmF1bHQgbGF5b3V0IGZvciB0aGUgYnVpbGQgdHJlZSBpcyBhcyBmb2xsb3dzOjoKLQotICAgLS0tIGJ1aWxkLyAtLS0gbGliLwotICAgb3IKLSAgIC0tLSBidWlsZC8gLS0tIGxpYi48cGxhdD4vCi0gICAgICAgICAgICAgICAgICB0ZW1wLjxwbGF0Pi8KLQotd2hlcmUgYGA8cGxhdD5gYCBleHBhbmRzIHRvIGEgYnJpZWYgZGVzY3JpcHRpb24gb2YgdGhlIGN1cnJlbnQgT1MvaGFyZHdhcmUKLXBsYXRmb3JtIGFuZCBQeXRob24gdmVyc2lvbi4gIFRoZSBmaXJzdCBmb3JtLCB3aXRoIGp1c3QgYSA6ZmlsZTpgbGliYCBkaXJlY3RvcnksCi1pcyB1c2VkIGZvciAicHVyZSBtb2R1bGUgZGlzdHJpYnV0aW9ucyItLS10aGF0IGlzLCBtb2R1bGUgZGlzdHJpYnV0aW9ucyB0aGF0Ci1pbmNsdWRlIG9ubHkgcHVyZSBQeXRob24gbW9kdWxlcy4gIElmIGEgbW9kdWxlIGRpc3RyaWJ1dGlvbiBjb250YWlucyBhbnkKLWV4dGVuc2lvbnMgKG1vZHVsZXMgd3JpdHRlbiBpbiBDL0MrKyksIHRoZW4gdGhlIHNlY29uZCBmb3JtLCB3aXRoIHR3byBgYDxwbGF0PmBgCi1kaXJlY3RvcmllcywgaXMgdXNlZC4gIEluIHRoYXQgY2FzZSwgdGhlIDpmaWxlOmB0ZW1wLntwbGF0fWAgZGlyZWN0b3J5IGhvbGRzCi10ZW1wb3JhcnkgZmlsZXMgZ2VuZXJhdGVkIGJ5IHRoZSBjb21waWxlL2xpbmsgcHJvY2VzcyB0aGF0IGRvbid0IGFjdHVhbGx5IGdldAotaW5zdGFsbGVkLiAgSW4gZWl0aGVyIGNhc2UsIHRoZSA6ZmlsZTpgbGliYCAob3IgOmZpbGU6YGxpYi57cGxhdH1gKSBkaXJlY3RvcnkKLWNvbnRhaW5zIGFsbCBQeXRob24gbW9kdWxlcyAocHVyZSBQeXRob24gYW5kIGV4dGVuc2lvbnMpIHRoYXQgd2lsbCBiZSBpbnN0YWxsZWQuCi0KLUluIHRoZSBmdXR1cmUsIG1vcmUgZGlyZWN0b3JpZXMgd2lsbCBiZSBhZGRlZCB0byBoYW5kbGUgUHl0aG9uIHNjcmlwdHMsCi1kb2N1bWVudGF0aW9uLCBiaW5hcnkgZXhlY3V0YWJsZXMsIGFuZCB3aGF0ZXZlciBlbHNlIGlzIG5lZWRlZCB0byBoYW5kbGUgdGhlIGpvYgotb2YgaW5zdGFsbGluZyBQeXRob24gbW9kdWxlcyBhbmQgYXBwbGljYXRpb25zLgotCi0KLS4uIF9pbnN0LWhvdy1pbnN0YWxsLXdvcmtzOgotCi1Ib3cgaW5zdGFsbGF0aW9uIHdvcmtzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLUFmdGVyIHRoZSA6Y29tbWFuZDpgYnVpbGRgIGNvbW1hbmQgcnVucyAod2hldGhlciB5b3UgcnVuIGl0IGV4cGxpY2l0bHksIG9yIHRoZQotOmNvbW1hbmQ6YGluc3RhbGxgIGNvbW1hbmQgZG9lcyBpdCBmb3IgeW91KSwgdGhlIHdvcmsgb2YgdGhlIDpjb21tYW5kOmBpbnN0YWxsYAotY29tbWFuZCBpcyByZWxhdGl2ZWx5IHNpbXBsZTogYWxsIGl0IGhhcyB0byBkbyBpcyBjb3B5IGV2ZXJ5dGhpbmcgdW5kZXIKLTpmaWxlOmBidWlsZC9saWJgIChvciA6ZmlsZTpgYnVpbGQvbGliLntwbGF0fWApIHRvIHlvdXIgY2hvc2VuIGluc3RhbGxhdGlvbgotZGlyZWN0b3J5LgotCi1JZiB5b3UgZG9uJ3QgY2hvb3NlIGFuIGluc3RhbGxhdGlvbiBkaXJlY3RvcnktLS1pLmUuLCBpZiB5b3UganVzdCBydW4gYGBzZXR1cC5weQotaW5zdGFsbGBgXCAtLS10aGVuIHRoZSA6Y29tbWFuZDpgaW5zdGFsbGAgY29tbWFuZCBpbnN0YWxscyB0byB0aGUgc3RhbmRhcmQKLWxvY2F0aW9uIGZvciB0aGlyZC1wYXJ0eSBQeXRob24gbW9kdWxlcy4gIFRoaXMgbG9jYXRpb24gdmFyaWVzIGJ5IHBsYXRmb3JtIGFuZAotYnkgaG93IHlvdSBidWlsdC9pbnN0YWxsZWQgUHl0aG9uIGl0c2VsZi4gIE9uIFVuaXggKGFuZCBNYWMgT1MgWCwgd2hpY2ggaXMgYWxzbwotVW5peC1iYXNlZCksIGl0IGFsc28gZGVwZW5kcyBvbiB3aGV0aGVyIHRoZSBtb2R1bGUgZGlzdHJpYnV0aW9uIGJlaW5nIGluc3RhbGxlZAotaXMgcHVyZSBQeXRob24gb3IgY29udGFpbnMgZXh0ZW5zaW9ucyAoIm5vbi1wdXJlIik6Ci0KLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBQbGF0Zm9ybSAgICAgICAgfCBTdGFuZGFyZCBpbnN0YWxsYXRpb24gbG9jYXRpb24gICAgICAgICAgICAgICAgICAgICAgfCBEZWZhdWx0IHZhbHVlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyB8Ci0rPT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKLXwgVW5peCAocHVyZSkgICAgIHwgOmZpbGU6YHtwcmVmaXh9L2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYCAgICAgIHwgOmZpbGU6YC91c3IvbG9jYWwvbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgIHwgXCgxKSAgfAotKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IFVuaXggKG5vbi1wdXJlKSB8IDpmaWxlOmB7ZXhlYy1wcmVmaXh9L2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYCB8IDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYCB8IFwoMSkgIHwKLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBXaW5kb3dzICAgICAgICAgfCA6ZmlsZTpge3ByZWZpeH1cXExpYlxcc2l0ZS1wYWNrYWdlc2AgICAgICAgICAgICAgICAgfCA6ZmlsZTpgQzpcXFB5dGhvbntYWX1cXExpYlxcc2l0ZS1wYWNrYWdlc2AgICAgICAgfCBcKDIpICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLQotTm90ZXM6Ci0KLSgxKQotICAgTW9zdCBMaW51eCBkaXN0cmlidXRpb25zIGluY2x1ZGUgUHl0aG9uIGFzIGEgc3RhbmRhcmQgcGFydCBvZiB0aGUgc3lzdGVtLCBzbwotICAgOmZpbGU6YHtwcmVmaXh9YCBhbmQgOmZpbGU6YHtleGVjLXByZWZpeH1gIGFyZSB1c3VhbGx5IGJvdGggOmZpbGU6YC91c3JgIG9uCi0gICBMaW51eC4gIElmIHlvdSBidWlsZCBQeXRob24geW91cnNlbGYgb24gTGludXggKG9yIGFueSBVbml4LWxpa2Ugc3lzdGVtKSwgdGhlCi0gICBkZWZhdWx0IDpmaWxlOmB7cHJlZml4fWAgYW5kIDpmaWxlOmB7ZXhlYy1wcmVmaXh9YCBhcmUgOmZpbGU6YC91c3IvbG9jYWxgLgotCi0oMikKLSAgIFRoZSBkZWZhdWx0IGluc3RhbGxhdGlvbiBkaXJlY3Rvcnkgb24gV2luZG93cyB3YXMgOmZpbGU6YEM6XFxQcm9ncmFtCi0gICBGaWxlc1xcUHl0aG9uYCB1bmRlciBQeXRob24gMS42YTEsIDEuNS4yLCBhbmQgZWFybGllci4KLQotOmZpbGU6YHtwcmVmaXh9YCBhbmQgOmZpbGU6YHtleGVjLXByZWZpeH1gIHN0YW5kIGZvciB0aGUgZGlyZWN0b3JpZXMgdGhhdCBQeXRob24KLWlzIGluc3RhbGxlZCB0bywgYW5kIHdoZXJlIGl0IGZpbmRzIGl0cyBsaWJyYXJpZXMgYXQgcnVuLXRpbWUuICBUaGV5IGFyZSBhbHdheXMKLXRoZSBzYW1lIHVuZGVyIFdpbmRvd3MsIGFuZCB2ZXJ5IG9mdGVuIHRoZSBzYW1lIHVuZGVyIFVuaXggYW5kIE1hYyBPUyBYLiAgWW91Ci1jYW4gZmluZCBvdXQgd2hhdCB5b3VyIFB5dGhvbiBpbnN0YWxsYXRpb24gdXNlcyBmb3IgOmZpbGU6YHtwcmVmaXh9YCBhbmQKLTpmaWxlOmB7ZXhlYy1wcmVmaXh9YCBieSBydW5uaW5nIFB5dGhvbiBpbiBpbnRlcmFjdGl2ZSBtb2RlIGFuZCB0eXBpbmcgYSBmZXcKLXNpbXBsZSBjb21tYW5kcy4gVW5kZXIgVW5peCwganVzdCB0eXBlIGBgcHl0aG9uYGAgYXQgdGhlIHNoZWxsIHByb21wdC4gIFVuZGVyCi1XaW5kb3dzLCBjaG9vc2UgOm1lbnVzZWxlY3Rpb246YFN0YXJ0IC0tPiBQcm9ncmFtcyAtLT4gUHl0aG9uIFguWSAtLT4KLVB5dGhvbiAoY29tbWFuZCBsaW5lKWAuICAgT25jZSB0aGUgaW50ZXJwcmV0ZXIgaXMgc3RhcnRlZCwgeW91IHR5cGUgUHl0aG9uIGNvZGUKLWF0IHRoZSBwcm9tcHQuICBGb3IgZXhhbXBsZSwgb24gbXkgTGludXggc3lzdGVtLCBJIHR5cGUgdGhlIHRocmVlIFB5dGhvbgotc3RhdGVtZW50cyBzaG93biBiZWxvdywgYW5kIGdldCB0aGUgb3V0cHV0IGFzIHNob3duLCB0byBmaW5kIG91dCBteQotOmZpbGU6YHtwcmVmaXh9YCBhbmQgOmZpbGU6YHtleGVjLXByZWZpeH1gOjoKLQotICAgUHl0aG9uIDIuNCAoIzI2LCBBdWcgIDcgMjAwNCwgMTc6MTk6MDIpCi0gICBUeXBlICJoZWxwIiwgImNvcHlyaWdodCIsICJjcmVkaXRzIiBvciAibGljZW5zZSIgZm9yIG1vcmUgaW5mb3JtYXRpb24uCi0gICA+Pj4gaW1wb3J0IHN5cwotICAgPj4+IHN5cy5wcmVmaXgKLSAgICcvdXNyJwotICAgPj4+IHN5cy5leGVjX3ByZWZpeAotICAgJy91c3InCi0KLUEgZmV3IG90aGVyIHBsYWNlaG9sZGVycyBhcmUgdXNlZCBpbiB0aGlzIGRvY3VtZW50OiA6ZmlsZTpge1guWX1gIHN0YW5kcyBmb3IgdGhlCi12ZXJzaW9uIG9mIFB5dGhvbiwgZm9yIGV4YW1wbGUgYGAzLjJgYDsgOmZpbGU6YHthYmlmbGFnc31gIHdpbGwgYmUgcmVwbGFjZWQgYnkKLXRoZSB2YWx1ZSBvZiA6ZGF0YTpgc3lzLmFiaWZsYWdzYCBvciB0aGUgZW1wdHkgc3RyaW5nIGZvciBwbGF0Zm9ybXMgd2hpY2ggZG9uJ3QKLWRlZmluZSBBQkkgZmxhZ3M7IDpmaWxlOmB7ZGlzdG5hbWV9YCB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUKLWRpc3RyaWJ1dGlvbiBiZWluZyBpbnN0YWxsZWQuICBEb3RzIGFuZCBjYXBpdGFsaXphdGlvbiBhcmUgaW1wb3J0YW50IGluIHRoZQotcGF0aHM7IGZvciBleGFtcGxlLCBhIHZhbHVlIHRoYXQgdXNlcyBgYHB5dGhvbjMuMmBgIG9uIFVOSVggd2lsbCB0eXBpY2FsbHkgdXNlCi1gYFB5dGhvbjMyYGAgb24gV2luZG93cy4KLQotSWYgeW91IGRvbid0IHdhbnQgdG8gaW5zdGFsbCBtb2R1bGVzIHRvIHRoZSBzdGFuZGFyZCBsb2NhdGlvbiwgb3IgaWYgeW91IGRvbid0Ci1oYXZlIHBlcm1pc3Npb24gdG8gd3JpdGUgdGhlcmUsIHRoZW4geW91IG5lZWQgdG8gcmVhZCBhYm91dCBhbHRlcm5hdGUKLWluc3RhbGxhdGlvbnMgaW4gc2VjdGlvbiA6cmVmOmBpbnN0LWFsdC1pbnN0YWxsYC4gIElmIHlvdSB3YW50IHRvIGN1c3RvbWl6ZSB5b3VyCi1pbnN0YWxsYXRpb24gZGlyZWN0b3JpZXMgbW9yZSBoZWF2aWx5LCBzZWUgc2VjdGlvbiA6cmVmOmBpbnN0LWN1c3RvbS1pbnN0YWxsYCBvbgotY3VzdG9tIGluc3RhbGxhdGlvbnMuCi0KLQotLi4gX2luc3QtYWx0LWluc3RhbGw6Ci0KLUFsdGVybmF0ZSBJbnN0YWxsYXRpb24KLT09PT09PT09PT09PT09PT09PT09PT0KLQotT2Z0ZW4sIGl0IGlzIG5lY2Vzc2FyeSBvciBkZXNpcmFibGUgdG8gaW5zdGFsbCBtb2R1bGVzIHRvIGEgbG9jYXRpb24gb3RoZXIgdGhhbgotdGhlIHN0YW5kYXJkIGxvY2F0aW9uIGZvciB0aGlyZC1wYXJ0eSBQeXRob24gbW9kdWxlcy4gIEZvciBleGFtcGxlLCBvbiBhIFVuaXgKLXN5c3RlbSB5b3UgbWlnaHQgbm90IGhhdmUgcGVybWlzc2lvbiB0byB3cml0ZSB0byB0aGUgc3RhbmRhcmQgdGhpcmQtcGFydHkgbW9kdWxlCi1kaXJlY3RvcnkuICBPciB5b3UgbWlnaHQgd2lzaCB0byB0cnkgb3V0IGEgbW9kdWxlIGJlZm9yZSBtYWtpbmcgaXQgYSBzdGFuZGFyZAotcGFydCBvZiB5b3VyIGxvY2FsIFB5dGhvbiBpbnN0YWxsYXRpb24uICBUaGlzIGlzIGVzcGVjaWFsbHkgdHJ1ZSB3aGVuIHVwZ3JhZGluZwotYSBkaXN0cmlidXRpb24gYWxyZWFkeSBwcmVzZW50OiB5b3Ugd2FudCB0byBtYWtlIHN1cmUgeW91ciBleGlzdGluZyBiYXNlIG9mCi1zY3JpcHRzIHN0aWxsIHdvcmtzIHdpdGggdGhlIG5ldyB2ZXJzaW9uIGJlZm9yZSBhY3R1YWxseSB1cGdyYWRpbmcuCi0KLVRoZSBEaXN0dXRpbHMgOmNvbW1hbmQ6YGluc3RhbGxgIGNvbW1hbmQgaXMgZGVzaWduZWQgdG8gbWFrZSBpbnN0YWxsaW5nIG1vZHVsZQotZGlzdHJpYnV0aW9ucyB0byBhbiBhbHRlcm5hdGUgbG9jYXRpb24gc2ltcGxlIGFuZCBwYWlubGVzcy4gIFRoZSBiYXNpYyBpZGVhIGlzCi10aGF0IHlvdSBzdXBwbHkgYSBiYXNlIGRpcmVjdG9yeSBmb3IgdGhlIGluc3RhbGxhdGlvbiwgYW5kIHRoZQotOmNvbW1hbmQ6YGluc3RhbGxgIGNvbW1hbmQgcGlja3MgYSBzZXQgb2YgZGlyZWN0b3JpZXMgKGNhbGxlZCBhbiAqaW5zdGFsbGF0aW9uCi1zY2hlbWUqKSB1bmRlciB0aGlzIGJhc2UgZGlyZWN0b3J5IGluIHdoaWNoIHRvIGluc3RhbGwgZmlsZXMuICBUaGUgZGV0YWlscwotZGlmZmVyIGFjcm9zcyBwbGF0Zm9ybXMsIHNvIHJlYWQgd2hpY2hldmVyIG9mIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnMgYXBwbGllcyB0bwoteW91LgotCi1Ob3RlIHRoYXQgdGhlIHZhcmlvdXMgYWx0ZXJuYXRlIGluc3RhbGxhdGlvbiBzY2hlbWVzIGFyZSBtdXR1YWxseSBleGNsdXNpdmU6IHlvdQotY2FuIHBhc3MgYGAtLXVzZXJgYCwgb3IgYGAtLWhvbWVgYCwgb3IgYGAtLXByZWZpeGBgIGFuZCBgYC0tZXhlYy1wcmVmaXhgYCwgb3IKLWBgLS1pbnN0YWxsLWJhc2VgYCBhbmQgYGAtLWluc3RhbGwtcGxhdGJhc2VgYCwgYnV0IHlvdSBjYW4ndCBtaXggZnJvbSB0aGVzZQotZ3JvdXBzLgotCi0KLS4uIF9pbnN0LWFsdC1pbnN0YWxsLXVzZXI6Ci0KLUFsdGVybmF0ZSBpbnN0YWxsYXRpb246IHRoZSB1c2VyIHNjaGVtZQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLVRoaXMgc2NoZW1lIGlzIGRlc2lnbmVkIHRvIGJlIHRoZSBtb3N0IGNvbnZlbmllbnQgc29sdXRpb24gZm9yIHVzZXJzIHRoYXQgZG9uJ3QKLWhhdmUgd3JpdGUgcGVybWlzc2lvbiB0byB0aGUgZ2xvYmFsIHNpdGUtcGFja2FnZXMgZGlyZWN0b3J5IG9yIGRvbid0IHdhbnQgdG8KLWluc3RhbGwgaW50byBpdC4gIEl0IGlzIGVuYWJsZWQgd2l0aCBhIHNpbXBsZSBvcHRpb246OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLXVzZXIKLQotRmlsZXMgd2lsbCBiZSBpbnN0YWxsZWQgaW50byBzdWJkaXJlY3RvcmllcyBvZiA6ZGF0YTpgc2l0ZS5VU0VSX0JBU0VgICh3cml0dGVuCi1hcyA6ZmlsZTpge3VzZXJiYXNlfWAgaGVyZWFmdGVyKS4gIFRoaXMgc2NoZW1lIGluc3RhbGxzIHB1cmUgUHl0aG9uIG1vZHVsZXMgYW5kCi1leHRlbnNpb24gbW9kdWxlcyBpbiB0aGUgc2FtZSBsb2NhdGlvbiAoYWxzbyBrbm93biBhcyA6ZGF0YTpgc2l0ZS5VU0VSX1NJVEVgKS4KLUhlcmUgYXJlIHRoZSB2YWx1ZXMgZm9yIFVOSVgsIGluY2x1ZGluZyBNYWMgT1MgWDoKLQotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1UeXBlIG9mIGZpbGUgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1tb2R1bGVzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX0vbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgCi1zY3JpcHRzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX0vYmluYAotZGF0YSAgICAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9YAotQyBoZWFkZXJzICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9L2luY2x1ZGUvcHl0aG9ue1guWX17YWJpZmxhZ3N9L3tkaXN0bmFtZX1gCi09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotQW5kIGhlcmUgYXJlIHRoZSB2YWx1ZXMgdXNlZCBvbiBXaW5kb3dzOgotCi09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVR5cGUgb2YgZmlsZSAgICBJbnN0YWxsYXRpb24gZGlyZWN0b3J5Ci09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLW1vZHVsZXMgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfVxcUHl0aG9ue1hZfVxcc2l0ZS1wYWNrYWdlc2AKLXNjcmlwdHMgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfVxcU2NyaXB0c2AKLWRhdGEgICAgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfWAKLUMgaGVhZGVycyAgICAgICA6ZmlsZTpge3VzZXJiYXNlfVxcUHl0aG9ue1hZfVxcSW5jbHVkZVxce2Rpc3RuYW1lfWAKLT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1UaGUgYWR2YW50YWdlIG9mIHVzaW5nIHRoaXMgc2NoZW1lIGNvbXBhcmVkIHRvIHRoZSBvdGhlciBvbmVzIGRlc2NyaWJlZCBiZWxvdyBpcwotdGhhdCB0aGUgdXNlciBzaXRlLXBhY2thZ2VzIGRpcmVjdG9yeSBpcyB1bmRlciBub3JtYWwgY29uZGl0aW9ucyBhbHdheXMgaW5jbHVkZWQKLWluIDpkYXRhOmBzeXMucGF0aGAgKHNlZSA6bW9kOmBzaXRlYCBmb3IgbW9yZSBpbmZvcm1hdGlvbiksIHdoaWNoIG1lYW5zIHRoYXQKLXRoZXJlIGlzIG5vIGFkZGl0aW9uYWwgc3RlcCB0byBwZXJmb3JtIGFmdGVyIHJ1bm5pbmcgdGhlIDpmaWxlOmBzZXR1cC5weWAgc2NyaXB0Ci10byBmaW5hbGl6ZSB0aGUgaW5zdGFsbGF0aW9uLgotCi1UaGUgOmNvbW1hbmQ6YGJ1aWxkX2V4dGAgY29tbWFuZCBhbHNvIGhhcyBhIGBgLS11c2VyYGAgb3B0aW9uIHRvIGFkZAotOmZpbGU6YHt1c2VyYmFzZX0vaW5jbHVkZWAgdG8gdGhlIGNvbXBpbGVyIHNlYXJjaCBwYXRoIGZvciBoZWFkZXIgZmlsZXMgYW5kCi06ZmlsZTpge3VzZXJiYXNlfS9saWJgIHRvIHRoZSBjb21waWxlciBzZWFyY2ggcGF0aCBmb3IgbGlicmFyaWVzIGFzIHdlbGwgYXMgdG8KLXRoZSBydW50aW1lIHNlYXJjaCBwYXRoIGZvciBzaGFyZWQgQyBsaWJyYXJpZXMgKHJwYXRoKS4KLQotCi0uLiBfaW5zdC1hbHQtaW5zdGFsbC1ob21lOgotCi1BbHRlcm5hdGUgaW5zdGFsbGF0aW9uOiB0aGUgaG9tZSBzY2hlbWUKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1UaGUgaWRlYSBiZWhpbmQgdGhlICJob21lIHNjaGVtZSIgaXMgdGhhdCB5b3UgYnVpbGQgYW5kIG1haW50YWluIGEgcGVyc29uYWwKLXN0YXNoIG9mIFB5dGhvbiBtb2R1bGVzLiAgVGhpcyBzY2hlbWUncyBuYW1lIGlzIGRlcml2ZWQgZnJvbSB0aGUgaWRlYSBvZiBhCi0iaG9tZSIgZGlyZWN0b3J5IG9uIFVuaXgsIHNpbmNlIGl0J3Mgbm90IHVudXN1YWwgZm9yIGEgVW5peCB1c2VyIHRvIG1ha2UgdGhlaXIKLWhvbWUgZGlyZWN0b3J5IGhhdmUgYSBsYXlvdXQgc2ltaWxhciB0byA6ZmlsZTpgL3Vzci9gIG9yIDpmaWxlOmAvdXNyL2xvY2FsL2AuCi1UaGlzIHNjaGVtZSBjYW4gYmUgdXNlZCBieSBhbnlvbmUsIHJlZ2FyZGxlc3Mgb2YgdGhlIG9wZXJhdGluZyBzeXN0ZW0gdGhleQotYXJlIGluc3RhbGxpbmcgZm9yLgotCi1JbnN0YWxsaW5nIGEgbmV3IG1vZHVsZSBkaXN0cmlidXRpb24gaXMgYXMgc2ltcGxlIGFzIDo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0taG9tZT08ZGlyPgotCi13aGVyZSB5b3UgY2FuIHN1cHBseSBhbnkgZGlyZWN0b3J5IHlvdSBsaWtlIGZvciB0aGUgOm9wdGlvbjpgLS1ob21lYCBvcHRpb24uICBPbgotVW5peCwgbGF6eSB0eXBpc3RzIGNhbiBqdXN0IHR5cGUgYSB0aWxkZSAoYGB+YGApOyB0aGUgOmNvbW1hbmQ6YGluc3RhbGxgIGNvbW1hbmQKLXdpbGwgZXhwYW5kIHRoaXMgdG8geW91ciBob21lIGRpcmVjdG9yeTo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0taG9tZT1+Ci0KLVRvIG1ha2UgUHl0aG9uIGZpbmQgdGhlIGRpc3RyaWJ1dGlvbnMgaW5zdGFsbGVkIHdpdGggdGhpcyBzY2hlbWUsIHlvdSBtYXkgaGF2ZQotdG8gOnJlZjpgbW9kaWZ5IFB5dGhvbidzIHNlYXJjaCBwYXRoIDxpbnN0LXNlYXJjaC1wYXRoPmAgb3IgZWRpdAotOm1vZDpgc2l0ZWN1c3RvbWl6ZWAgKHNlZSA6bW9kOmBzaXRlYCkgdG8gY2FsbCA6ZnVuYzpgc2l0ZS5hZGRzaXRlZGlyYCBvciBlZGl0Ci06ZGF0YTpgc3lzLnBhdGhgLgotCi1UaGUgOm9wdGlvbjpgLS1ob21lYCBvcHRpb24gZGVmaW5lcyB0aGUgaW5zdGFsbGF0aW9uIGJhc2UgZGlyZWN0b3J5LiAgRmlsZXMgYXJlCi1pbnN0YWxsZWQgdG8gdGhlIGZvbGxvd2luZyBkaXJlY3RvcmllcyB1bmRlciB0aGUgaW5zdGFsbGF0aW9uIGJhc2UgYXMgZm9sbG93czoKLQotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1UeXBlIG9mIGZpbGUgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci1tb2R1bGVzICAgICAgICAgOmZpbGU6YHtob21lfS9saWIvcHl0aG9uYAotc2NyaXB0cyAgICAgICAgIDpmaWxlOmB7aG9tZX0vYmluYAotZGF0YSAgICAgICAgICAgIDpmaWxlOmB7aG9tZX1gCi1DIGhlYWRlcnMgICAgICAgOmZpbGU6YHtob21lfS9pbmNsdWRlL3B5dGhvbi97ZGlzdG5hbWV9YAotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLShNZW50YWxseSByZXBsYWNlIHNsYXNoZXMgd2l0aCBiYWNrc2xhc2hlcyBpZiB5b3UncmUgb24gV2luZG93cy4pCi0KLQotLi4gX2luc3QtYWx0LWluc3RhbGwtcHJlZml4LXVuaXg6Ci0KLUFsdGVybmF0ZSBpbnN0YWxsYXRpb246IFVuaXggKHRoZSBwcmVmaXggc2NoZW1lKQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLVRoZSAicHJlZml4IHNjaGVtZSIgaXMgdXNlZnVsIHdoZW4geW91IHdpc2ggdG8gdXNlIG9uZSBQeXRob24gaW5zdGFsbGF0aW9uIHRvCi1wZXJmb3JtIHRoZSBidWlsZC9pbnN0YWxsIChpLmUuLCB0byBydW4gdGhlIHNldHVwIHNjcmlwdCksIGJ1dCBpbnN0YWxsIG1vZHVsZXMKLWludG8gdGhlIHRoaXJkLXBhcnR5IG1vZHVsZSBkaXJlY3Rvcnkgb2YgYSBkaWZmZXJlbnQgUHl0aG9uIGluc3RhbGxhdGlvbiAob3IKLXNvbWV0aGluZyB0aGF0IGxvb2tzIGxpa2UgYSBkaWZmZXJlbnQgUHl0aG9uIGluc3RhbGxhdGlvbikuICBJZiB0aGlzIHNvdW5kcyBhCi10cmlmbGUgdW51c3VhbCwgaXQgaXMtLS10aGF0J3Mgd2h5IHRoZSB1c2VyIGFuZCBob21lIHNjaGVtZXMgY29tZSBiZWZvcmUuICBIb3dldmVyLAotdGhlcmUgYXJlIGF0IGxlYXN0IHR3byBrbm93biBjYXNlcyB3aGVyZSB0aGUgcHJlZml4IHNjaGVtZSB3aWxsIGJlIHVzZWZ1bC4KLQotRmlyc3QsIGNvbnNpZGVyIHRoYXQgbWFueSBMaW51eCBkaXN0cmlidXRpb25zIHB1dCBQeXRob24gaW4gOmZpbGU6YC91c3JgLCByYXRoZXIKLXRoYW4gdGhlIG1vcmUgdHJhZGl0aW9uYWwgOmZpbGU6YC91c3IvbG9jYWxgLiAgVGhpcyBpcyBlbnRpcmVseSBhcHByb3ByaWF0ZSwKLXNpbmNlIGluIHRob3NlIGNhc2VzIFB5dGhvbiBpcyBwYXJ0IG9mICJ0aGUgc3lzdGVtIiByYXRoZXIgdGhhbiBhIGxvY2FsIGFkZC1vbi4KLUhvd2V2ZXIsIGlmIHlvdSBhcmUgaW5zdGFsbGluZyBQeXRob24gbW9kdWxlcyBmcm9tIHNvdXJjZSwgeW91IHByb2JhYmx5IHdhbnQKLXRoZW0gdG8gZ28gaW4gOmZpbGU6YC91c3IvbG9jYWwvbGliL3B5dGhvbjIue1h9YCByYXRoZXIgdGhhbgotOmZpbGU6YC91c3IvbGliL3B5dGhvbjIue1h9YC4gIFRoaXMgY2FuIGJlIGRvbmUgd2l0aCA6OgotCi0gICAvdXNyL2Jpbi9weXRob24gc2V0dXAucHkgaW5zdGFsbCAtLXByZWZpeD0vdXNyL2xvY2FsCi0KLUFub3RoZXIgcG9zc2liaWxpdHkgaXMgYSBuZXR3b3JrIGZpbGVzeXN0ZW0gd2hlcmUgdGhlIG5hbWUgdXNlZCB0byB3cml0ZSB0byBhCi1yZW1vdGUgZGlyZWN0b3J5IGlzIGRpZmZlcmVudCBmcm9tIHRoZSBuYW1lIHVzZWQgdG8gcmVhZCBpdDogZm9yIGV4YW1wbGUsIHRoZQotUHl0aG9uIGludGVycHJldGVyIGFjY2Vzc2VkIGFzIDpmaWxlOmAvdXNyL2xvY2FsL2Jpbi9weXRob25gIG1pZ2h0IHNlYXJjaCBmb3IKLW1vZHVsZXMgaW4gOmZpbGU6YC91c3IvbG9jYWwvbGliL3B5dGhvbjIue1h9YCwgYnV0IHRob3NlIG1vZHVsZXMgd291bGQgaGF2ZSB0bwotYmUgaW5zdGFsbGVkIHRvLCBzYXksIDpmaWxlOmAvbW50L3tAc2VydmVyfS9leHBvcnQvbGliL3B5dGhvbjIue1h9YC4gIFRoaXMgY291bGQKLWJlIGRvbmUgd2l0aCA6OgotCi0gICAvdXNyL2xvY2FsL2Jpbi9weXRob24gc2V0dXAucHkgaW5zdGFsbCAtLXByZWZpeD0vbW50L0BzZXJ2ZXIvZXhwb3J0Ci0KLUluIGVpdGhlciBjYXNlLCB0aGUgOm9wdGlvbjpgLS1wcmVmaXhgIG9wdGlvbiBkZWZpbmVzIHRoZSBpbnN0YWxsYXRpb24gYmFzZSwgYW5kCi10aGUgOm9wdGlvbjpgLS1leGVjLXByZWZpeGAgb3B0aW9uIGRlZmluZXMgdGhlIHBsYXRmb3JtLXNwZWNpZmljIGluc3RhbGxhdGlvbgotYmFzZSwgd2hpY2ggaXMgdXNlZCBmb3IgcGxhdGZvcm0tc3BlY2lmaWMgZmlsZXMuICAoQ3VycmVudGx5LCB0aGlzIGp1c3QgbWVhbnMKLW5vbi1wdXJlIG1vZHVsZSBkaXN0cmlidXRpb25zLCBidXQgY291bGQgYmUgZXhwYW5kZWQgdG8gQyBsaWJyYXJpZXMsIGJpbmFyeQotZXhlY3V0YWJsZXMsIGV0Yy4pICBJZiA6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YCBpcyBub3Qgc3VwcGxpZWQsIGl0IGRlZmF1bHRzIHRvCi06b3B0aW9uOmAtLXByZWZpeGAuICBGaWxlcyBhcmUgaW5zdGFsbGVkIGFzIGZvbGxvd3M6Ci0KLT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVR5cGUgb2YgZmlsZSAgICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKLT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVB5dGhvbiBtb2R1bGVzICAgIDpmaWxlOmB7cHJlZml4fS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AKLWV4dGVuc2lvbiBtb2R1bGVzIDpmaWxlOmB7ZXhlYy1wcmVmaXh9L2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYAotc2NyaXB0cyAgICAgICAgICAgOmZpbGU6YHtwcmVmaXh9L2JpbmAKLWRhdGEgICAgICAgICAgICAgIDpmaWxlOmB7cHJlZml4fWAKLUMgaGVhZGVycyAgICAgICAgIDpmaWxlOmB7cHJlZml4fS9pbmNsdWRlL3B5dGhvbntYLll9e2FiaWZsYWdzfS97ZGlzdG5hbWV9YAotPT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1UaGVyZSBpcyBubyByZXF1aXJlbWVudCB0aGF0IDpvcHRpb246YC0tcHJlZml4YCBvciA6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YAotYWN0dWFsbHkgcG9pbnQgdG8gYW4gYWx0ZXJuYXRlIFB5dGhvbiBpbnN0YWxsYXRpb247IGlmIHRoZSBkaXJlY3RvcmllcyBsaXN0ZWQKLWFib3ZlIGRvIG5vdCBhbHJlYWR5IGV4aXN0LCB0aGV5IGFyZSBjcmVhdGVkIGF0IGluc3RhbGxhdGlvbiB0aW1lLgotCi1JbmNpZGVudGFsbHksIHRoZSByZWFsIHJlYXNvbiB0aGUgcHJlZml4IHNjaGVtZSBpcyBpbXBvcnRhbnQgaXMgc2ltcGx5IHRoYXQgYQotc3RhbmRhcmQgVW5peCBpbnN0YWxsYXRpb24gdXNlcyB0aGUgcHJlZml4IHNjaGVtZSwgYnV0IHdpdGggOm9wdGlvbjpgLS1wcmVmaXhgCi1hbmQgOm9wdGlvbjpgLS1leGVjLXByZWZpeGAgc3VwcGxpZWQgYnkgUHl0aG9uIGl0c2VsZiBhcyBgYHN5cy5wcmVmaXhgYCBhbmQKLWBgc3lzLmV4ZWNfcHJlZml4YGAuICBUaHVzLCB5b3UgbWlnaHQgdGhpbmsgeW91J2xsIG5ldmVyIHVzZSB0aGUgcHJlZml4IHNjaGVtZSwKLWJ1dCBldmVyeSB0aW1lIHlvdSBydW4gYGBweXRob24gc2V0dXAucHkgaW5zdGFsbGBgIHdpdGhvdXQgYW55IG90aGVyIG9wdGlvbnMsCi15b3UncmUgdXNpbmcgaXQuCi0KLU5vdGUgdGhhdCBpbnN0YWxsaW5nIGV4dGVuc2lvbnMgdG8gYW4gYWx0ZXJuYXRlIFB5dGhvbiBpbnN0YWxsYXRpb24gaGFzIG5vCi1lZmZlY3Qgb24gaG93IHRob3NlIGV4dGVuc2lvbnMgYXJlIGJ1aWx0OiBpbiBwYXJ0aWN1bGFyLCB0aGUgUHl0aG9uIGhlYWRlciBmaWxlcwotKDpmaWxlOmBQeXRob24uaGAgYW5kIGZyaWVuZHMpIGluc3RhbGxlZCB3aXRoIHRoZSBQeXRob24gaW50ZXJwcmV0ZXIgdXNlZCB0byBydW4KLXRoZSBzZXR1cCBzY3JpcHQgd2lsbCBiZSB1c2VkIGluIGNvbXBpbGluZyBleHRlbnNpb25zLiAgSXQgaXMgeW91cgotcmVzcG9uc2liaWxpdHkgdG8gZW5zdXJlIHRoYXQgdGhlIGludGVycHJldGVyIHVzZWQgdG8gcnVuIGV4dGVuc2lvbnMgaW5zdGFsbGVkCi1pbiB0aGlzIHdheSBpcyBjb21wYXRpYmxlIHdpdGggdGhlIGludGVycHJldGVyIHVzZWQgdG8gYnVpbGQgdGhlbS4gIFRoZSBiZXN0IHdheQotdG8gZG8gdGhpcyBpcyB0byBlbnN1cmUgdGhhdCB0aGUgdHdvIGludGVycHJldGVycyBhcmUgdGhlIHNhbWUgdmVyc2lvbiBvZiBQeXRob24KLShwb3NzaWJseSBkaWZmZXJlbnQgYnVpbGRzLCBvciBwb3NzaWJseSBjb3BpZXMgb2YgdGhlIHNhbWUgYnVpbGQpLiAgKE9mIGNvdXJzZSwKLWlmIHlvdXIgOm9wdGlvbjpgLS1wcmVmaXhgIGFuZCA6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YCBkb24ndCBldmVuIHBvaW50IHRvIGFuCi1hbHRlcm5hdGUgUHl0aG9uIGluc3RhbGxhdGlvbiwgdGhpcyBpcyBpbW1hdGVyaWFsLikKLQotCi0uLiBfaW5zdC1hbHQtaW5zdGFsbC1wcmVmaXgtd2luZG93czoKLQotQWx0ZXJuYXRlIGluc3RhbGxhdGlvbjogV2luZG93cyAodGhlIHByZWZpeCBzY2hlbWUpCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotV2luZG93cyBoYXMgbm8gY29uY2VwdCBvZiBhIHVzZXIncyBob21lIGRpcmVjdG9yeSwgYW5kIHNpbmNlIHRoZSBzdGFuZGFyZCBQeXRob24KLWluc3RhbGxhdGlvbiB1bmRlciBXaW5kb3dzIGlzIHNpbXBsZXIgdGhhbiB1bmRlciBVbml4LCB0aGUgOm9wdGlvbjpgLS1wcmVmaXhgCi1vcHRpb24gaGFzIHRyYWRpdGlvbmFsbHkgYmVlbiB1c2VkIHRvIGluc3RhbGwgYWRkaXRpb25hbCBwYWNrYWdlcyBpbiBzZXBhcmF0ZQotbG9jYXRpb25zIG9uIFdpbmRvd3MuIDo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0tcHJlZml4PSJcVGVtcFxQeXRob24iCi0KLXRvIGluc3RhbGwgbW9kdWxlcyB0byB0aGUgOmZpbGU6YFxcVGVtcFxcUHl0aG9uYCBkaXJlY3Rvcnkgb24gdGhlIGN1cnJlbnQgZHJpdmUuCi0KLVRoZSBpbnN0YWxsYXRpb24gYmFzZSBpcyBkZWZpbmVkIGJ5IHRoZSA6b3B0aW9uOmAtLXByZWZpeGAgb3B0aW9uOyB0aGUKLTpvcHRpb246YC0tZXhlYy1wcmVmaXhgIG9wdGlvbiBpcyBub3Qgc3VwcG9ydGVkIHVuZGVyIFdpbmRvd3MsIHdoaWNoIG1lYW5zIHRoYXQKLXB1cmUgUHl0aG9uIG1vZHVsZXMgYW5kIGV4dGVuc2lvbiBtb2R1bGVzIGFyZSBpbnN0YWxsZWQgaW50byB0aGUgc2FtZSBsb2NhdGlvbi4KLUZpbGVzIGFyZSBpbnN0YWxsZWQgYXMgZm9sbG93czoKLQotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLVR5cGUgb2YgZmlsZSAgICBJbnN0YWxsYXRpb24gZGlyZWN0b3J5Ci09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotbW9kdWxlcyAgICAgICAgIDpmaWxlOmB7cHJlZml4fVxcTGliXFxzaXRlLXBhY2thZ2VzYAotc2NyaXB0cyAgICAgICAgIDpmaWxlOmB7cHJlZml4fVxcU2NyaXB0c2AKLWRhdGEgICAgICAgICAgICA6ZmlsZTpge3ByZWZpeH1gCi1DIGhlYWRlcnMgICAgICAgOmZpbGU6YHtwcmVmaXh9XFxJbmNsdWRlXFx7ZGlzdG5hbWV9YAotPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotCi0uLiBfaW5zdC1jdXN0b20taW5zdGFsbDoKLQotQ3VzdG9tIEluc3RhbGxhdGlvbgotPT09PT09PT09PT09PT09PT09PQotCi1Tb21ldGltZXMsIHRoZSBhbHRlcm5hdGUgaW5zdGFsbGF0aW9uIHNjaGVtZXMgZGVzY3JpYmVkIGluIHNlY3Rpb24KLTpyZWY6YGluc3QtYWx0LWluc3RhbGxgIGp1c3QgZG9uJ3QgZG8gd2hhdCB5b3Ugd2FudC4gIFlvdSBtaWdodCB3YW50IHRvIHR3ZWFrIGp1c3QKLW9uZSBvciB0d28gZGlyZWN0b3JpZXMgd2hpbGUga2VlcGluZyBldmVyeXRoaW5nIHVuZGVyIHRoZSBzYW1lIGJhc2UgZGlyZWN0b3J5LAotb3IgeW91IG1pZ2h0IHdhbnQgdG8gY29tcGxldGVseSByZWRlZmluZSB0aGUgaW5zdGFsbGF0aW9uIHNjaGVtZS4gIEluIGVpdGhlcgotY2FzZSwgeW91J3JlIGNyZWF0aW5nIGEgKmN1c3RvbSBpbnN0YWxsYXRpb24gc2NoZW1lKi4KLQotVG8gY3JlYXRlIGEgY3VzdG9tIGluc3RhbGxhdGlvbiBzY2hlbWUsIHlvdSBzdGFydCB3aXRoIG9uZSBvZiB0aGUgYWx0ZXJuYXRlCi1zY2hlbWVzIGFuZCBvdmVycmlkZSBzb21lIG9mIHRoZSBpbnN0YWxsYXRpb24gZGlyZWN0b3JpZXMgdXNlZCBmb3IgdGhlIHZhcmlvdXMKLXR5cGVzIG9mIGZpbGVzLCB1c2luZyB0aGVzZSBvcHRpb25zOgotCi09PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09Ci1UeXBlIG9mIGZpbGUgICAgICAgICAgIE92ZXJyaWRlIG9wdGlvbgotPT09PT09PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PQotUHl0aG9uIG1vZHVsZXMgICAgICAgICBgYC0taW5zdGFsbC1wdXJlbGliYGAKLWV4dGVuc2lvbiBtb2R1bGVzICAgICAgYGAtLWluc3RhbGwtcGxhdGxpYmBgCi1hbGwgbW9kdWxlcyAgICAgICAgICAgIGBgLS1pbnN0YWxsLWxpYmBgCi1zY3JpcHRzICAgICAgICAgICAgICAgIGBgLS1pbnN0YWxsLXNjcmlwdHNgYAotZGF0YSAgICAgICAgICAgICAgICAgICBgYC0taW5zdGFsbC1kYXRhYGAKLUMgaGVhZGVycyAgICAgICAgICAgICAgYGAtLWluc3RhbGwtaGVhZGVyc2BgCi09PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09Ci0KLVRoZXNlIG92ZXJyaWRlIG9wdGlvbnMgY2FuIGJlIHJlbGF0aXZlLCBhYnNvbHV0ZSwKLW9yIGV4cGxpY2l0bHkgZGVmaW5lZCBpbiB0ZXJtcyBvZiBvbmUgb2YgdGhlIGluc3RhbGxhdGlvbiBiYXNlIGRpcmVjdG9yaWVzLgotKFRoZXJlIGFyZSB0d28gaW5zdGFsbGF0aW9uIGJhc2UgZGlyZWN0b3JpZXMsIGFuZCB0aGV5IGFyZSBub3JtYWxseSB0aGUgc2FtZS0tLQotdGhleSBvbmx5IGRpZmZlciB3aGVuIHlvdSB1c2UgdGhlIFVuaXggInByZWZpeCBzY2hlbWUiIGFuZCBzdXBwbHkgZGlmZmVyZW50Ci1gYC0tcHJlZml4YGAgYW5kIGBgLS1leGVjLXByZWZpeGBgIG9wdGlvbnM7IHVzaW5nIGBgLS1pbnN0YWxsLWxpYmBgIHdpbGwKLW92ZXJyaWRlIHZhbHVlcyBjb21wdXRlZCBvciBnaXZlbiBmb3IgYGAtLWluc3RhbGwtcHVyZWxpYmBgIGFuZAotYGAtLWluc3RhbGwtcGxhdGxpYmBgLCBhbmQgaXMgcmVjb21tZW5kZWQgZm9yIHNjaGVtZXMgdGhhdCBkb24ndCBtYWtlIGEKLWRpZmZlcmVuY2UgYmV0d2VlbiBQeXRob24gYW5kIGV4dGVuc2lvbiBtb2R1bGVzLikKLQotRm9yIGV4YW1wbGUsIHNheSB5b3UncmUgaW5zdGFsbGluZyBhIG1vZHVsZSBkaXN0cmlidXRpb24gdG8geW91ciBob21lIGRpcmVjdG9yeQotdW5kZXIgVW5peC0tLWJ1dCB5b3Ugd2FudCBzY3JpcHRzIHRvIGdvIGluIDpmaWxlOmB+L3NjcmlwdHNgIHJhdGhlciB0aGFuCi06ZmlsZTpgfi9iaW5gLiBBcyB5b3UgbWlnaHQgZXhwZWN0LCB5b3UgY2FuIG92ZXJyaWRlIHRoaXMgZGlyZWN0b3J5IHdpdGggdGhlCi06b3B0aW9uOmAtLWluc3RhbGwtc2NyaXB0c2Agb3B0aW9uOyBpbiB0aGlzIGNhc2UsIGl0IG1ha2VzIG1vc3Qgc2Vuc2UgdG8gc3VwcGx5Ci1hIHJlbGF0aXZlIHBhdGgsIHdoaWNoIHdpbGwgYmUgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGluc3RhbGxhdGlvbiBiYXNlCi1kaXJlY3RvcnkgKHlvdXIgaG9tZSBkaXJlY3RvcnksIGluIHRoaXMgY2FzZSk6OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWhvbWU9fiAtLWluc3RhbGwtc2NyaXB0cz1zY3JpcHRzCi0KLUFub3RoZXIgVW5peCBleGFtcGxlOiBzdXBwb3NlIHlvdXIgUHl0aG9uIGluc3RhbGxhdGlvbiB3YXMgYnVpbHQgYW5kIGluc3RhbGxlZAotd2l0aCBhIHByZWZpeCBvZiA6ZmlsZTpgL3Vzci9sb2NhbC9weXRob25gLCBzbyB1bmRlciBhIHN0YW5kYXJkICBpbnN0YWxsYXRpb24KLXNjcmlwdHMgd2lsbCB3aW5kIHVwIGluIDpmaWxlOmAvdXNyL2xvY2FsL3B5dGhvbi9iaW5gLiAgSWYgeW91IHdhbnQgdGhlbSBpbgotOmZpbGU6YC91c3IvbG9jYWwvYmluYCBpbnN0ZWFkLCB5b3Ugd291bGQgc3VwcGx5IHRoaXMgYWJzb2x1dGUgZGlyZWN0b3J5IGZvciB0aGUKLTpvcHRpb246YC0taW5zdGFsbC1zY3JpcHRzYCBvcHRpb246OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWluc3RhbGwtc2NyaXB0cz0vdXNyL2xvY2FsL2JpbgotCi0oVGhpcyBwZXJmb3JtcyBhbiBpbnN0YWxsYXRpb24gdXNpbmcgdGhlICJwcmVmaXggc2NoZW1lLCIgd2hlcmUgdGhlIHByZWZpeCBpcwotd2hhdGV2ZXIgeW91ciBQeXRob24gaW50ZXJwcmV0ZXIgd2FzIGluc3RhbGxlZCB3aXRoLS0tIDpmaWxlOmAvdXNyL2xvY2FsL3B5dGhvbmAKLWluIHRoaXMgY2FzZS4pCi0KLUlmIHlvdSBtYWludGFpbiBQeXRob24gb24gV2luZG93cywgeW91IG1pZ2h0IHdhbnQgdGhpcmQtcGFydHkgbW9kdWxlcyB0byBsaXZlIGluCi1hIHN1YmRpcmVjdG9yeSBvZiA6ZmlsZTpge3ByZWZpeH1gLCByYXRoZXIgdGhhbiByaWdodCBpbiA6ZmlsZTpge3ByZWZpeH1gCi1pdHNlbGYuICBUaGlzIGlzIGFsbW9zdCBhcyBlYXN5IGFzIGN1c3RvbWl6aW5nIHRoZSBzY3JpcHQgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeQotLS0teW91IGp1c3QgaGF2ZSB0byByZW1lbWJlciB0aGF0IHRoZXJlIGFyZSB0d28gdHlwZXMgb2YgbW9kdWxlcyB0byB3b3JyeSBhYm91dCwKLVB5dGhvbiBhbmQgZXh0ZW5zaW9uIG1vZHVsZXMsIHdoaWNoIGNhbiBjb252ZW5pZW50bHkgYmUgYm90aCBjb250cm9sbGVkIGJ5IG9uZQotb3B0aW9uOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGluc3RhbGwgLS1pbnN0YWxsLWxpYj1TaXRlCi0KLVRoZSBzcGVjaWZpZWQgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBpcyByZWxhdGl2ZSB0byA6ZmlsZTpge3ByZWZpeH1gLiAgT2YKLWNvdXJzZSwgeW91IGFsc28gaGF2ZSB0byBlbnN1cmUgdGhhdCB0aGlzIGRpcmVjdG9yeSBpcyBpbiBQeXRob24ncyBtb2R1bGUKLXNlYXJjaCBwYXRoLCBzdWNoIGFzIGJ5IHB1dHRpbmcgYSA6ZmlsZTpgLnB0aGAgZmlsZSBpbiBhIHNpdGUgZGlyZWN0b3J5IChzZWUKLTptb2Q6YHNpdGVgKS4gIFNlZSBzZWN0aW9uIDpyZWY6YGluc3Qtc2VhcmNoLXBhdGhgIHRvIGZpbmQgb3V0IGhvdyB0byBtb2RpZnkKLVB5dGhvbidzIHNlYXJjaCBwYXRoLgotCi1JZiB5b3Ugd2FudCB0byBkZWZpbmUgYW4gZW50aXJlIGluc3RhbGxhdGlvbiBzY2hlbWUsIHlvdSBqdXN0IGhhdmUgdG8gc3VwcGx5IGFsbAotb2YgdGhlIGluc3RhbGxhdGlvbiBkaXJlY3Rvcnkgb3B0aW9ucy4gIFRoZSByZWNvbW1lbmRlZCB3YXkgdG8gZG8gdGhpcyBpcyB0bwotc3VwcGx5IHJlbGF0aXZlIHBhdGhzOyBmb3IgZXhhbXBsZSwgaWYgeW91IHdhbnQgdG8gbWFpbnRhaW4gYWxsIFB5dGhvbgotbW9kdWxlLXJlbGF0ZWQgZmlsZXMgdW5kZXIgOmZpbGU6YHB5dGhvbmAgaW4geW91ciBob21lIGRpcmVjdG9yeSwgYW5kIHlvdSB3YW50IGEKLXNlcGFyYXRlIGRpcmVjdG9yeSBmb3IgZWFjaCBwbGF0Zm9ybSB0aGF0IHlvdSB1c2UgeW91ciBob21lIGRpcmVjdG9yeSBmcm9tLCB5b3UKLW1pZ2h0IGRlZmluZSB0aGUgZm9sbG93aW5nIGluc3RhbGxhdGlvbiBzY2hlbWU6OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWhvbWU9fiBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAtLWluc3RhbGwtcHVyZWxpYj1weXRob24vbGliIFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1wbGF0bGliPXB5dGhvbi9saWIuJFBMQVQgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1pbnN0YWxsLXNjcmlwdHM9cHl0aG9uL3NjcmlwdHMKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taW5zdGFsbC1kYXRhPXB5dGhvbi9kYXRhCi0KLW9yLCBlcXVpdmFsZW50bHksIDo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsIC0taG9tZT1+L3B5dGhvbiBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAtLWluc3RhbGwtcHVyZWxpYj1saWIgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1pbnN0YWxsLXBsYXRsaWI9J2xpYi4kUExBVCcgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1pbnN0YWxsLXNjcmlwdHM9c2NyaXB0cwotICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1pbnN0YWxsLWRhdGE9ZGF0YQotCi1gYCRQTEFUYGAgaXMgbm90IChuZWNlc3NhcmlseSkgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUtLS1pdCB3aWxsIGJlIGV4cGFuZGVkIGJ5Ci10aGUgRGlzdHV0aWxzIGFzIGl0IHBhcnNlcyB5b3VyIGNvbW1hbmQgbGluZSBvcHRpb25zLCBqdXN0IGFzIGl0IGRvZXMgd2hlbgotcGFyc2luZyB5b3VyIGNvbmZpZ3VyYXRpb24gZmlsZShzKS4KLQotT2J2aW91c2x5LCBzcGVjaWZ5aW5nIHRoZSBlbnRpcmUgaW5zdGFsbGF0aW9uIHNjaGVtZSBldmVyeSB0aW1lIHlvdSBpbnN0YWxsIGEKLW5ldyBtb2R1bGUgZGlzdHJpYnV0aW9uIHdvdWxkIGJlIHZlcnkgdGVkaW91cy4gIFRodXMsIHlvdSBjYW4gcHV0IHRoZXNlIG9wdGlvbnMKLWludG8geW91ciBEaXN0dXRpbHMgY29uZmlnIGZpbGUgKHNlZSBzZWN0aW9uIDpyZWY6YGluc3QtY29uZmlnLWZpbGVzYCk6OgotCi0gICBbaW5zdGFsbF0KLSAgIGluc3RhbGwtYmFzZT0kSE9NRQotICAgaW5zdGFsbC1wdXJlbGliPXB5dGhvbi9saWIKLSAgIGluc3RhbGwtcGxhdGxpYj1weXRob24vbGliLiRQTEFUCi0gICBpbnN0YWxsLXNjcmlwdHM9cHl0aG9uL3NjcmlwdHMKLSAgIGluc3RhbGwtZGF0YT1weXRob24vZGF0YQotCi1vciwgZXF1aXZhbGVudGx5LCA6OgotCi0gICBbaW5zdGFsbF0KLSAgIGluc3RhbGwtYmFzZT0kSE9NRS9weXRob24KLSAgIGluc3RhbGwtcHVyZWxpYj1saWIKLSAgIGluc3RhbGwtcGxhdGxpYj1saWIuJFBMQVQKLSAgIGluc3RhbGwtc2NyaXB0cz1zY3JpcHRzCi0gICBpbnN0YWxsLWRhdGE9ZGF0YQotCi1Ob3RlIHRoYXQgdGhlc2UgdHdvIGFyZSAqbm90KiBlcXVpdmFsZW50IGlmIHlvdSBzdXBwbHkgYSBkaWZmZXJlbnQgaW5zdGFsbGF0aW9uCi1iYXNlIGRpcmVjdG9yeSB3aGVuIHlvdSBydW4gdGhlIHNldHVwIHNjcmlwdC4gIEZvciBleGFtcGxlLCA6OgotCi0gICBweXRob24gc2V0dXAucHkgaW5zdGFsbCAtLWluc3RhbGwtYmFzZT0vdG1wCi0KLXdvdWxkIGluc3RhbGwgcHVyZSBtb2R1bGVzIHRvIDpmaWxlOmAvdG1wL3B5dGhvbi9saWJgIGluIHRoZSBmaXJzdCBjYXNlLCBhbmQKLXRvIDpmaWxlOmAvdG1wL2xpYmAgaW4gdGhlIHNlY29uZCBjYXNlLiAgKEZvciB0aGUgc2Vjb25kIGNhc2UsIHlvdSBwcm9iYWJseQotd2FudCB0byBzdXBwbHkgYW4gaW5zdGFsbGF0aW9uIGJhc2Ugb2YgOmZpbGU6YC90bXAvcHl0aG9uYC4pCi0KLVlvdSBwcm9iYWJseSBub3RpY2VkIHRoZSB1c2Ugb2YgYGAkSE9NRWBgIGFuZCBgYCRQTEFUYGAgaW4gdGhlIHNhbXBsZQotY29uZmlndXJhdGlvbiBmaWxlIGlucHV0LiAgVGhlc2UgYXJlIERpc3R1dGlscyBjb25maWd1cmF0aW9uIHZhcmlhYmxlcywgd2hpY2gKLWJlYXIgYSBzdHJvbmcgcmVzZW1ibGFuY2UgdG8gZW52aXJvbm1lbnQgdmFyaWFibGVzLiBJbiBmYWN0LCB5b3UgY2FuIHVzZQotZW52aXJvbm1lbnQgdmFyaWFibGVzIGluIGNvbmZpZyBmaWxlcyBvbiBwbGF0Zm9ybXMgdGhhdCBoYXZlIHN1Y2ggYSBub3Rpb24gYnV0Ci10aGUgRGlzdHV0aWxzIGFkZGl0aW9uYWxseSBkZWZpbmUgYSBmZXcgZXh0cmEgdmFyaWFibGVzIHRoYXQgbWF5IG5vdCBiZSBpbiB5b3VyCi1lbnZpcm9ubWVudCwgc3VjaCBhcyBgYCRQTEFUYGAuICAoQW5kIG9mIGNvdXJzZSwgb24gc3lzdGVtcyB0aGF0IGRvbid0IGhhdmUKLWVudmlyb25tZW50IHZhcmlhYmxlcywgc3VjaCBhcyBNYWMgT1MgOSwgdGhlIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzIHN1cHBsaWVkIGJ5Ci10aGUgRGlzdHV0aWxzIGFyZSB0aGUgb25seSBvbmVzIHlvdSBjYW4gdXNlLikgU2VlIHNlY3Rpb24gOnJlZjpgaW5zdC1jb25maWctZmlsZXNgCi1mb3IgZGV0YWlscy4KLQotLi4gWFhYIG5lZWQgc29tZSBXaW5kb3dzIGV4YW1wbGVzLS0td2hlbiB3b3VsZCBjdXN0b20gaW5zdGFsbGF0aW9uIHNjaGVtZXMgYmUKLSAgIG5lZWRlZCBvbiB0aG9zZSBwbGF0Zm9ybXM/Ci0KLQotLi4gWFhYIE1vdmUgdGhpcyB0byBEb2MvdXNpbmcKLQotLi4gX2luc3Qtc2VhcmNoLXBhdGg6Ci0KLU1vZGlmeWluZyBQeXRob24ncyBTZWFyY2ggUGF0aAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLVdoZW4gdGhlIFB5dGhvbiBpbnRlcnByZXRlciBleGVjdXRlcyBhbiA6a2V5d29yZDpgaW1wb3J0YCBzdGF0ZW1lbnQsIGl0IHNlYXJjaGVzCi1mb3IgYm90aCBQeXRob24gY29kZSBhbmQgZXh0ZW5zaW9uIG1vZHVsZXMgYWxvbmcgYSBzZWFyY2ggcGF0aC4gIEEgZGVmYXVsdCB2YWx1ZQotZm9yIHRoZSBwYXRoIGlzIGNvbmZpZ3VyZWQgaW50byB0aGUgUHl0aG9uIGJpbmFyeSB3aGVuIHRoZSBpbnRlcnByZXRlciBpcyBidWlsdC4KLVlvdSBjYW4gZGV0ZXJtaW5lIHRoZSBwYXRoIGJ5IGltcG9ydGluZyB0aGUgOm1vZDpgc3lzYCBtb2R1bGUgYW5kIHByaW50aW5nIHRoZQotdmFsdWUgb2YgYGBzeXMucGF0aGBgLiAgIDo6Ci0KLSAgICQgcHl0aG9uCi0gICBQeXRob24gMi4yICgjMTEsIE9jdCAgMyAyMDAyLCAxMzozMToyNykKLSAgIFtHQ0MgMi45NiAyMDAwMDczMSAoUmVkIEhhdCBMaW51eCA3LjMgMi45Ni0xMTIpXSBvbiBsaW51eDIKLSAgIFR5cGUgImhlbHAiLCAiY29weXJpZ2h0IiwgImNyZWRpdHMiIG9yICJsaWNlbnNlIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KLSAgID4+PiBpbXBvcnQgc3lzCi0gICA+Pj4gc3lzLnBhdGgKLSAgIFsnJywgJy91c3IvbG9jYWwvbGliL3B5dGhvbjIuMycsICcvdXNyL2xvY2FsL2xpYi9weXRob24yLjMvcGxhdC1saW51eDInLAotICAgICcvdXNyL2xvY2FsL2xpYi9weXRob24yLjMvbGliLXRrJywgJy91c3IvbG9jYWwvbGliL3B5dGhvbjIuMy9saWItZHlubG9hZCcsCi0gICAgJy91c3IvbG9jYWwvbGliL3B5dGhvbjIuMy9zaXRlLXBhY2thZ2VzJ10KLSAgID4+PgotCi1UaGUgbnVsbCBzdHJpbmcgaW4gYGBzeXMucGF0aGBgIHJlcHJlc2VudHMgdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuCi0KLVRoZSBleHBlY3RlZCBjb252ZW50aW9uIGZvciBsb2NhbGx5IGluc3RhbGxlZCBwYWNrYWdlcyBpcyB0byBwdXQgdGhlbSBpbiB0aGUKLTpmaWxlOmB7Li4ufS9zaXRlLXBhY2thZ2VzL2AgZGlyZWN0b3J5LCBidXQgeW91IG1heSB3YW50IHRvIGluc3RhbGwgUHl0aG9uCi1tb2R1bGVzIGludG8gc29tZSBhcmJpdHJhcnkgZGlyZWN0b3J5LiAgRm9yIGV4YW1wbGUsIHlvdXIgc2l0ZSBtYXkgaGF2ZSBhCi1jb252ZW50aW9uIG9mIGtlZXBpbmcgYWxsIHNvZnR3YXJlIHJlbGF0ZWQgdG8gdGhlIHdlYiBzZXJ2ZXIgdW5kZXIgOmZpbGU6YC93d3dgLgotQWRkLW9uIFB5dGhvbiBtb2R1bGVzIG1pZ2h0IHRoZW4gYmVsb25nIGluIDpmaWxlOmAvd3d3L3B5dGhvbmAsIGFuZCBpbiBvcmRlciB0bwotaW1wb3J0IHRoZW0sIHRoaXMgZGlyZWN0b3J5IG11c3QgYmUgYWRkZWQgdG8gYGBzeXMucGF0aGBgLiAgVGhlcmUgYXJlIHNldmVyYWwKLWRpZmZlcmVudCB3YXlzIHRvIGFkZCB0aGUgZGlyZWN0b3J5LgotCi1UaGUgbW9zdCBjb252ZW5pZW50IHdheSBpcyB0byBhZGQgYSBwYXRoIGNvbmZpZ3VyYXRpb24gZmlsZSB0byBhIGRpcmVjdG9yeQotdGhhdCdzIGFscmVhZHkgb24gUHl0aG9uJ3MgcGF0aCwgdXN1YWxseSB0byB0aGUgOmZpbGU6YC4uLi9zaXRlLXBhY2thZ2VzL2AKLWRpcmVjdG9yeS4gIFBhdGggY29uZmlndXJhdGlvbiBmaWxlcyBoYXZlIGFuIGV4dGVuc2lvbiBvZiA6ZmlsZTpgLnB0aGAsIGFuZCBlYWNoCi1saW5lIG11c3QgY29udGFpbiBhIHNpbmdsZSBwYXRoIHRoYXQgd2lsbCBiZSBhcHBlbmRlZCB0byBgYHN5cy5wYXRoYGAuICAoQmVjYXVzZQotdGhlIG5ldyBwYXRocyBhcmUgYXBwZW5kZWQgdG8gYGBzeXMucGF0aGBgLCBtb2R1bGVzIGluIHRoZSBhZGRlZCBkaXJlY3Rvcmllcwotd2lsbCBub3Qgb3ZlcnJpZGUgc3RhbmRhcmQgbW9kdWxlcy4gIFRoaXMgbWVhbnMgeW91IGNhbid0IHVzZSB0aGlzIG1lY2hhbmlzbSBmb3IKLWluc3RhbGxpbmcgZml4ZWQgdmVyc2lvbnMgb2Ygc3RhbmRhcmQgbW9kdWxlcy4pCi0KLVBhdGhzIGNhbiBiZSBhYnNvbHV0ZSBvciByZWxhdGl2ZSwgaW4gd2hpY2ggY2FzZSB0aGV5J3JlIHJlbGF0aXZlIHRvIHRoZQotZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIDpmaWxlOmAucHRoYCBmaWxlLiAgU2VlIHRoZSBkb2N1bWVudGF0aW9uIG9mCi10aGUgOm1vZDpgc2l0ZWAgbW9kdWxlIGZvciBtb3JlIGluZm9ybWF0aW9uLgotCi1BIHNsaWdodGx5IGxlc3MgY29udmVuaWVudCB3YXkgaXMgdG8gZWRpdCB0aGUgOmZpbGU6YHNpdGUucHlgIGZpbGUgaW4gUHl0aG9uJ3MKLXN0YW5kYXJkIGxpYnJhcnksIGFuZCBtb2RpZnkgYGBzeXMucGF0aGBgLiAgOmZpbGU6YHNpdGUucHlgIGlzIGF1dG9tYXRpY2FsbHkKLWltcG9ydGVkIHdoZW4gdGhlIFB5dGhvbiBpbnRlcnByZXRlciBpcyBleGVjdXRlZCwgdW5sZXNzIHRoZSA6b3B0aW9uOmAtU2Agc3dpdGNoCi1pcyBzdXBwbGllZCB0byBzdXBwcmVzcyB0aGlzIGJlaGF2aW91ci4gIFNvIHlvdSBjb3VsZCBzaW1wbHkgZWRpdAotOmZpbGU6YHNpdGUucHlgIGFuZCBhZGQgdHdvIGxpbmVzIHRvIGl0OjoKLQotICAgaW1wb3J0IHN5cwotICAgc3lzLnBhdGguYXBwZW5kKCcvd3d3L3B5dGhvbi8nKQotCi1Ib3dldmVyLCBpZiB5b3UgcmVpbnN0YWxsIHRoZSBzYW1lIG1ham9yIHZlcnNpb24gb2YgUHl0aG9uIChwZXJoYXBzIHdoZW4KLXVwZ3JhZGluZyBmcm9tIDIuMiB0byAyLjIuMiwgZm9yIGV4YW1wbGUpIDpmaWxlOmBzaXRlLnB5YCB3aWxsIGJlIG92ZXJ3cml0dGVuIGJ5Ci10aGUgc3RvY2sgdmVyc2lvbi4gIFlvdSdkIGhhdmUgdG8gcmVtZW1iZXIgdGhhdCBpdCB3YXMgbW9kaWZpZWQgYW5kIHNhdmUgYSBjb3B5Ci1iZWZvcmUgZG9pbmcgdGhlIGluc3RhbGxhdGlvbi4KLQotVGhlcmUgYXJlIHR3byBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdGhhdCBjYW4gbW9kaWZ5IGBgc3lzLnBhdGhgYC4KLTplbnZ2YXI6YFBZVEhPTkhPTUVgIHNldHMgYW4gYWx0ZXJuYXRlIHZhbHVlIGZvciB0aGUgcHJlZml4IG9mIHRoZSBQeXRob24KLWluc3RhbGxhdGlvbi4gIEZvciBleGFtcGxlLCBpZiA6ZW52dmFyOmBQWVRIT05IT01FYCBpcyBzZXQgdG8gYGAvd3d3L3B5dGhvbmBgLAotdGhlIHNlYXJjaCBwYXRoIHdpbGwgYmUgc2V0IHRvIGBgWycnLCAnL3d3dy9weXRob24vbGliL3B5dGhvblguWS8nLAotJy93d3cvcHl0aG9uL2xpYi9weXRob25YLlkvcGxhdC1saW51eDInLCAuLi5dYGAuCi0KLVRoZSA6ZW52dmFyOmBQWVRIT05QQVRIYCB2YXJpYWJsZSBjYW4gYmUgc2V0IHRvIGEgbGlzdCBvZiBwYXRocyB0aGF0IHdpbGwgYmUKLWFkZGVkIHRvIHRoZSBiZWdpbm5pbmcgb2YgYGBzeXMucGF0aGBgLiAgRm9yIGV4YW1wbGUsIGlmIDplbnZ2YXI6YFBZVEhPTlBBVEhgIGlzCi1zZXQgdG8gYGAvd3d3L3B5dGhvbjovb3B0L3B5YGAsIHRoZSBzZWFyY2ggcGF0aCB3aWxsIGJlZ2luIHdpdGgKLWBgWycvd3d3L3B5dGhvbicsICcvb3B0L3B5J11gYC4gIChOb3RlIHRoYXQgZGlyZWN0b3JpZXMgbXVzdCBleGlzdCBpbiBvcmRlciB0bwotYmUgYWRkZWQgdG8gYGBzeXMucGF0aGBgOyB0aGUgOm1vZDpgc2l0ZWAgbW9kdWxlIHJlbW92ZXMgcGF0aHMgdGhhdCBkb24ndAotZXhpc3QuKQotCi1GaW5hbGx5LCBgYHN5cy5wYXRoYGAgaXMganVzdCBhIHJlZ3VsYXIgUHl0aG9uIGxpc3QsIHNvIGFueSBQeXRob24gYXBwbGljYXRpb24KLWNhbiBtb2RpZnkgaXQgYnkgYWRkaW5nIG9yIHJlbW92aW5nIGVudHJpZXMuCi0KLQotLi4gX2luc3QtY29uZmlnLWZpbGVzOgotCi1EaXN0dXRpbHMgQ29uZmlndXJhdGlvbiBGaWxlcwotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotQXMgbWVudGlvbmVkIGFib3ZlLCB5b3UgY2FuIHVzZSBEaXN0dXRpbHMgY29uZmlndXJhdGlvbiBmaWxlcyB0byByZWNvcmQgcGVyc29uYWwKLW9yIHNpdGUgcHJlZmVyZW5jZXMgZm9yIGFueSBEaXN0dXRpbHMgb3B0aW9ucy4gIFRoYXQgaXMsIGFueSBvcHRpb24gdG8gYW55Ci1jb21tYW5kIGNhbiBiZSBzdG9yZWQgaW4gb25lIG9mIHR3byBvciB0aHJlZSAoZGVwZW5kaW5nIG9uIHlvdXIgcGxhdGZvcm0pCi1jb25maWd1cmF0aW9uIGZpbGVzLCB3aGljaCB3aWxsIGJlIGNvbnN1bHRlZCBiZWZvcmUgdGhlIGNvbW1hbmQtbGluZSBpcyBwYXJzZWQuCi1UaGlzIG1lYW5zIHRoYXQgY29uZmlndXJhdGlvbiBmaWxlcyB3aWxsIG92ZXJyaWRlIGRlZmF1bHQgdmFsdWVzLCBhbmQgdGhlCi1jb21tYW5kLWxpbmUgd2lsbCBpbiB0dXJuIG92ZXJyaWRlIGNvbmZpZ3VyYXRpb24gZmlsZXMuICBGdXJ0aGVybW9yZSwgaWYKLW11bHRpcGxlIGNvbmZpZ3VyYXRpb24gZmlsZXMgYXBwbHksIHZhbHVlcyBmcm9tICJlYXJsaWVyIiBmaWxlcyBhcmUgb3ZlcnJpZGRlbgotYnkgImxhdGVyIiBmaWxlcy4KLQotCi0uLiBfaW5zdC1jb25maWctZmlsZW5hbWVzOgotCi1Mb2NhdGlvbiBhbmQgbmFtZXMgb2YgY29uZmlnIGZpbGVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLVRoZSBuYW1lcyBhbmQgbG9jYXRpb25zIG9mIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIHZhcnkgc2xpZ2h0bHkgYWNyb3NzCi1wbGF0Zm9ybXMuICBPbiBVbml4IGFuZCBNYWMgT1MgWCwgdGhlIHRocmVlIGNvbmZpZ3VyYXRpb24gZmlsZXMgKGluIHRoZSBvcmRlcgotdGhleSBhcmUgcHJvY2Vzc2VkKSBhcmU6Ci0KLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IFR5cGUgb2YgZmlsZSB8IExvY2F0aW9uIGFuZCBmaWxlbmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgfAotKz09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKLXwgc3lzdGVtICAgICAgIHwgOmZpbGU6YHtwcmVmaXh9L2xpYi9weXRob257dmVyfS9kaXN0dXRpbHMvZGlzdHV0aWxzLmNmZ2AgfCBcKDEpICB8Ci0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBwZXJzb25hbCAgICAgfCA6ZmlsZTpgJEhPTUUvLnB5ZGlzdHV0aWxzLmNmZ2AgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFwoMikgIHwKLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGxvY2FsICAgICAgICB8IDpmaWxlOmBzZXR1cC5jZmdgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgXCgzKSAgfAotKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLQotQW5kIG9uIFdpbmRvd3MsIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIGFyZToKLQotKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgVHlwZSBvZiBmaWxlIHwgTG9jYXRpb24gYW5kIGZpbGVuYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyB8Ci0rPT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09KwotfCBzeXN0ZW0gICAgICAgfCA6ZmlsZTpge3ByZWZpeH1cXExpYlxcZGlzdHV0aWxzXFxkaXN0dXRpbHMuY2ZnYCB8IFwoNCkgIHwKLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IHBlcnNvbmFsICAgICB8IDpmaWxlOmAlSE9NRSVcXHB5ZGlzdHV0aWxzLmNmZ2AgICAgICAgICAgICAgICAgIHwgXCg1KSAgfAotKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgbG9jYWwgICAgICAgIHwgOmZpbGU6YHNldHVwLmNmZ2AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBcKDMpICB8Ci0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotCi1PbiBhbGwgcGxhdGZvcm1zLCB0aGUgInBlcnNvbmFsIiBmaWxlIGNhbiBiZSB0ZW1wb3JhcmlseSBkaXNhYmxlZCBieQotcGFzc2luZyB0aGUgYC0tbm8tdXNlci1jZmdgIG9wdGlvbi4KLQotTm90ZXM6Ci0KLSgxKQotICAgU3RyaWN0bHkgc3BlYWtpbmcsIHRoZSBzeXN0ZW0td2lkZSBjb25maWd1cmF0aW9uIGZpbGUgbGl2ZXMgaW4gdGhlIGRpcmVjdG9yeQotICAgd2hlcmUgdGhlIERpc3R1dGlscyBhcmUgaW5zdGFsbGVkOyB1bmRlciBQeXRob24gMS42IGFuZCBsYXRlciBvbiBVbml4LCB0aGlzIGlzCi0gICBhcyBzaG93bi4gRm9yIFB5dGhvbiAxLjUuMiwgdGhlIERpc3R1dGlscyB3aWxsIG5vcm1hbGx5IGJlIGluc3RhbGxlZCB0bwotICAgOmZpbGU6YHtwcmVmaXh9L2xpYi9weXRob24xLjUvc2l0ZS1wYWNrYWdlcy9kaXN0dXRpbHNgLCBzbyB0aGUgc3lzdGVtCi0gICBjb25maWd1cmF0aW9uIGZpbGUgc2hvdWxkIGJlIHB1dCB0aGVyZSB1bmRlciBQeXRob24gMS41LjIuCi0KLSgyKQotICAgT24gVW5peCwgaWYgdGhlIDplbnZ2YXI6YEhPTUVgIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIG5vdCBkZWZpbmVkLCB0aGUgdXNlcidzCi0gICBob21lIGRpcmVjdG9yeSB3aWxsIGJlIGRldGVybWluZWQgd2l0aCB0aGUgOmZ1bmM6YGdldHB3dWlkYCBmdW5jdGlvbiBmcm9tIHRoZQotICAgc3RhbmRhcmQgOm1vZDpgcHdkYCBtb2R1bGUuIFRoaXMgaXMgZG9uZSBieSB0aGUgOmZ1bmM6YG9zLnBhdGguZXhwYW5kdXNlcmAKLSAgIGZ1bmN0aW9uIHVzZWQgYnkgRGlzdHV0aWxzLgotCi0oMykKLSAgIEkuZS4sIGluIHRoZSBjdXJyZW50IGRpcmVjdG9yeSAodXN1YWxseSB0aGUgbG9jYXRpb24gb2YgdGhlIHNldHVwIHNjcmlwdCkuCi0KLSg0KQotICAgKFNlZSBhbHNvIG5vdGUgKDEpLikgIFVuZGVyIFB5dGhvbiAxLjYgYW5kIGxhdGVyLCBQeXRob24ncyBkZWZhdWx0ICJpbnN0YWxsYXRpb24KLSAgIHByZWZpeCIgaXMgOmZpbGU6YEM6XFxQeXRob25gLCBzbyB0aGUgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyBub3JtYWxseQotICAgOmZpbGU6YEM6XFxQeXRob25cXExpYlxcZGlzdHV0aWxzXFxkaXN0dXRpbHMuY2ZnYC4gVW5kZXIgUHl0aG9uIDEuNS4yLCB0aGUKLSAgIGRlZmF1bHQgcHJlZml4IHdhcyA6ZmlsZTpgQzpcXFByb2dyYW0gRmlsZXNcXFB5dGhvbmAsIGFuZCB0aGUgRGlzdHV0aWxzIHdlcmUgbm90Ci0gICBwYXJ0IG9mIHRoZSBzdGFuZGFyZCBsaWJyYXJ5LS0tc28gdGhlIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUgd291bGQgYmUKLSAgIDpmaWxlOmBDOlxcUHJvZ3JhbSBGaWxlc1xcUHl0aG9uXFxkaXN0dXRpbHNcXGRpc3R1dGlscy5jZmdgIGluIGEgc3RhbmRhcmQgUHl0aG9uCi0gICAxLjUuMiBpbnN0YWxsYXRpb24gdW5kZXIgV2luZG93cy4KLQotKDUpCi0gICBPbiBXaW5kb3dzLCBpZiB0aGUgOmVudnZhcjpgSE9NRWAgZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgbm90IGRlZmluZWQsCi0gICA6ZW52dmFyOmBVU0VSUFJPRklMRWAgdGhlbiA6ZW52dmFyOmBIT01FRFJJVkVgIGFuZCA6ZW52dmFyOmBIT01FUEFUSGAgd2lsbAotICAgYmUgdHJpZWQuIFRoaXMgaXMgZG9uZSBieSB0aGUgOmZ1bmM6YG9zLnBhdGguZXhwYW5kdXNlcmAgZnVuY3Rpb24gdXNlZAotICAgYnkgRGlzdHV0aWxzLgotCi0KLS4uIF9pbnN0LWNvbmZpZy1zeW50YXg6Ci0KLVN5bnRheCBvZiBjb25maWcgZmlsZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotVGhlIERpc3R1dGlscyBjb25maWd1cmF0aW9uIGZpbGVzIGFsbCBoYXZlIHRoZSBzYW1lIHN5bnRheC4gIFRoZSBjb25maWcgZmlsZXMKLWFyZSBncm91cGVkIGludG8gc2VjdGlvbnMuICBUaGVyZSBpcyBvbmUgc2VjdGlvbiBmb3IgZWFjaCBEaXN0dXRpbHMgY29tbWFuZCwKLXBsdXMgYSBgYGdsb2JhbGBgIHNlY3Rpb24gZm9yIGdsb2JhbCBvcHRpb25zIHRoYXQgYWZmZWN0IGV2ZXJ5IGNvbW1hbmQuICBFYWNoCi1zZWN0aW9uIGNvbnNpc3RzIG9mIG9uZSBvcHRpb24gcGVyIGxpbmUsIHNwZWNpZmllZCBhcyBgYG9wdGlvbj12YWx1ZWBgLgotCi1Gb3IgZXhhbXBsZSwgdGhlIGZvbGxvd2luZyBpcyBhIGNvbXBsZXRlIGNvbmZpZyBmaWxlIHRoYXQganVzdCBmb3JjZXMgYWxsCi1jb21tYW5kcyB0byBydW4gcXVpZXRseSBieSBkZWZhdWx0OjoKLQotICAgW2dsb2JhbF0KLSAgIHZlcmJvc2U9MAotCi1JZiB0aGlzIGlzIGluc3RhbGxlZCBhcyB0aGUgc3lzdGVtIGNvbmZpZyBmaWxlLCBpdCB3aWxsIGFmZmVjdCBhbGwgcHJvY2Vzc2luZyBvZgotYW55IFB5dGhvbiBtb2R1bGUgZGlzdHJpYnV0aW9uIGJ5IGFueSB1c2VyIG9uIHRoZSBjdXJyZW50IHN5c3RlbS4gIElmIGl0IGlzCi1pbnN0YWxsZWQgYXMgeW91ciBwZXJzb25hbCBjb25maWcgZmlsZSAob24gc3lzdGVtcyB0aGF0IHN1cHBvcnQgdGhlbSksIGl0IHdpbGwKLWFmZmVjdCBvbmx5IG1vZHVsZSBkaXN0cmlidXRpb25zIHByb2Nlc3NlZCBieSB5b3UuICBBbmQgaWYgaXQgaXMgdXNlZCBhcyB0aGUKLTpmaWxlOmBzZXR1cC5jZmdgIGZvciBhIHBhcnRpY3VsYXIgbW9kdWxlIGRpc3RyaWJ1dGlvbiwgaXQgYWZmZWN0cyBvbmx5IHRoYXQKLWRpc3RyaWJ1dGlvbi4KLQotWW91IGNvdWxkIG92ZXJyaWRlIHRoZSBkZWZhdWx0ICJidWlsZCBiYXNlIiBkaXJlY3RvcnkgYW5kIG1ha2UgdGhlCi06Y29tbWFuZDpgYnVpbGRcKmAgY29tbWFuZHMgYWx3YXlzIGZvcmNpYmx5IHJlYnVpbGQgYWxsIGZpbGVzIHdpdGggdGhlCi1mb2xsb3dpbmc6OgotCi0gICBbYnVpbGRdCi0gICBidWlsZC1iYXNlPWJsaWIKLSAgIGZvcmNlPTEKLQotd2hpY2ggY29ycmVzcG9uZHMgdG8gdGhlIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0tYnVpbGQtYmFzZT1ibGliIC0tZm9yY2UKLQotZXhjZXB0IHRoYXQgaW5jbHVkaW5nIHRoZSA6Y29tbWFuZDpgYnVpbGRgIGNvbW1hbmQgb24gdGhlIGNvbW1hbmQtbGluZSBtZWFucwotdGhhdCBjb21tYW5kIHdpbGwgYmUgcnVuLiAgSW5jbHVkaW5nIGEgcGFydGljdWxhciBjb21tYW5kIGluIGNvbmZpZyBmaWxlcyBoYXMgbm8KLXN1Y2ggaW1wbGljYXRpb247IGl0IG9ubHkgbWVhbnMgdGhhdCBpZiB0aGUgY29tbWFuZCBpcyBydW4sIHRoZSBvcHRpb25zIGluIHRoZQotY29uZmlnIGZpbGUgd2lsbCBhcHBseS4gIChPciBpZiBvdGhlciBjb21tYW5kcyB0aGF0IGRlcml2ZSB2YWx1ZXMgZnJvbSBpdCBhcmUKLXJ1biwgdGhleSB3aWxsIHVzZSB0aGUgdmFsdWVzIGluIHRoZSBjb25maWcgZmlsZS4pCi0KLVlvdSBjYW4gZmluZCBvdXQgdGhlIGNvbXBsZXRlIGxpc3Qgb2Ygb3B0aW9ucyBmb3IgYW55IGNvbW1hbmQgdXNpbmcgdGhlCi06b3B0aW9uOmAtLWhlbHBgIG9wdGlvbiwgZS5nLjo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBidWlsZCAtLWhlbHAKLQotYW5kIHlvdSBjYW4gZmluZCBvdXQgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgZ2xvYmFsIG9wdGlvbnMgYnkgdXNpbmcKLTpvcHRpb246YC0taGVscGAgd2l0aG91dCBhIGNvbW1hbmQ6OgotCi0gICBweXRob24gc2V0dXAucHkgLS1oZWxwCi0KLVNlZSBhbHNvIHRoZSAiUmVmZXJlbmNlIiBzZWN0aW9uIG9mIHRoZSAiRGlzdHJpYnV0aW5nIFB5dGhvbiBNb2R1bGVzIiBtYW51YWwuCi0KLQotLi4gX2luc3QtYnVpbGRpbmctZXh0OgotCi1CdWlsZGluZyBFeHRlbnNpb25zOiBUaXBzIGFuZCBUcmlja3MKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi1XaGVuZXZlciBwb3NzaWJsZSwgdGhlIERpc3R1dGlscyB0cnkgdG8gdXNlIHRoZSBjb25maWd1cmF0aW9uIGluZm9ybWF0aW9uIG1hZGUKLWF2YWlsYWJsZSBieSB0aGUgUHl0aG9uIGludGVycHJldGVyIHVzZWQgdG8gcnVuIHRoZSA6ZmlsZTpgc2V0dXAucHlgIHNjcmlwdC4KLUZvciBleGFtcGxlLCB0aGUgc2FtZSBjb21waWxlciBhbmQgbGlua2VyIGZsYWdzIHVzZWQgdG8gY29tcGlsZSBQeXRob24gd2lsbCBhbHNvCi1iZSB1c2VkIGZvciBjb21waWxpbmcgZXh0ZW5zaW9ucy4gIFVzdWFsbHkgdGhpcyB3aWxsIHdvcmsgd2VsbCwgYnV0IGluCi1jb21wbGljYXRlZCBzaXR1YXRpb25zIHRoaXMgbWlnaHQgYmUgaW5hcHByb3ByaWF0ZS4gIFRoaXMgc2VjdGlvbiBkaXNjdXNzZXMgaG93Ci10byBvdmVycmlkZSB0aGUgdXN1YWwgRGlzdHV0aWxzIGJlaGF2aW91ci4KLQotCi0uLiBfaW5zdC10d2Vhay1mbGFnczoKLQotVHdlYWtpbmcgY29tcGlsZXIvbGlua2VyIGZsYWdzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotQ29tcGlsaW5nIGEgUHl0aG9uIGV4dGVuc2lvbiB3cml0dGVuIGluIEMgb3IgQysrIHdpbGwgc29tZXRpbWVzIHJlcXVpcmUKLXNwZWNpZnlpbmcgY3VzdG9tIGZsYWdzIGZvciB0aGUgY29tcGlsZXIgYW5kIGxpbmtlciBpbiBvcmRlciB0byB1c2UgYSBwYXJ0aWN1bGFyCi1saWJyYXJ5IG9yIHByb2R1Y2UgYSBzcGVjaWFsIGtpbmQgb2Ygb2JqZWN0IGNvZGUuIFRoaXMgaXMgZXNwZWNpYWxseSB0cnVlIGlmIHRoZQotZXh0ZW5zaW9uIGhhc24ndCBiZWVuIHRlc3RlZCBvbiB5b3VyIHBsYXRmb3JtLCBvciBpZiB5b3UncmUgdHJ5aW5nIHRvCi1jcm9zcy1jb21waWxlIFB5dGhvbi4KLQotSW4gdGhlIG1vc3QgZ2VuZXJhbCBjYXNlLCB0aGUgZXh0ZW5zaW9uIGF1dGhvciBtaWdodCBoYXZlIGZvcmVzZWVuIHRoYXQKLWNvbXBpbGluZyB0aGUgZXh0ZW5zaW9ucyB3b3VsZCBiZSBjb21wbGljYXRlZCwgYW5kIHByb3ZpZGVkIGEgOmZpbGU6YFNldHVwYCBmaWxlCi1mb3IgeW91IHRvIGVkaXQuICBUaGlzIHdpbGwgbGlrZWx5IG9ubHkgYmUgZG9uZSBpZiB0aGUgbW9kdWxlIGRpc3RyaWJ1dGlvbgotY29udGFpbnMgbWFueSBzZXBhcmF0ZSBleHRlbnNpb24gbW9kdWxlcywgb3IgaWYgdGhleSBvZnRlbiByZXF1aXJlIGVsYWJvcmF0ZQotc2V0cyBvZiBjb21waWxlciBmbGFncyBpbiBvcmRlciB0byB3b3JrLgotCi1BIDpmaWxlOmBTZXR1cGAgZmlsZSwgaWYgcHJlc2VudCwgaXMgcGFyc2VkIGluIG9yZGVyIHRvIGdldCBhIGxpc3Qgb2YgZXh0ZW5zaW9ucwotdG8gYnVpbGQuICBFYWNoIGxpbmUgaW4gYSA6ZmlsZTpgU2V0dXBgIGRlc2NyaWJlcyBhIHNpbmdsZSBtb2R1bGUuICBMaW5lcyBoYXZlCi10aGUgZm9sbG93aW5nIHN0cnVjdHVyZTo6Ci0KLSAgIG1vZHVsZSAuLi4gW3NvdXJjZWZpbGUgLi4uXSBbY3BwYXJnIC4uLl0gW2xpYnJhcnkgLi4uXQotCi0KLUxldCdzIGV4YW1pbmUgZWFjaCBvZiB0aGUgZmllbGRzIGluIHR1cm4uCi0KLSogKm1vZHVsZSogaXMgdGhlIG5hbWUgb2YgdGhlIGV4dGVuc2lvbiBtb2R1bGUgdG8gYmUgYnVpbHQsIGFuZCBzaG91bGQgYmUgYQotICB2YWxpZCBQeXRob24gaWRlbnRpZmllci4gIFlvdSBjYW4ndCBqdXN0IGNoYW5nZSB0aGlzIGluIG9yZGVyIHRvIHJlbmFtZSBhIG1vZHVsZQotICAoZWRpdHMgdG8gdGhlIHNvdXJjZSBjb2RlIHdvdWxkIGFsc28gYmUgbmVlZGVkKSwgc28gdGhpcyBzaG91bGQgYmUgbGVmdCBhbG9uZS4KLQotKiAqc291cmNlZmlsZSogaXMgYW55dGhpbmcgdGhhdCdzIGxpa2VseSB0byBiZSBhIHNvdXJjZSBjb2RlIGZpbGUsIGF0IGxlYXN0Ci0gIGp1ZGdpbmcgYnkgdGhlIGZpbGVuYW1lLiAgRmlsZW5hbWVzIGVuZGluZyBpbiA6ZmlsZTpgLmNgIGFyZSBhc3N1bWVkIHRvIGJlCi0gIHdyaXR0ZW4gaW4gQywgZmlsZW5hbWVzIGVuZGluZyBpbiA6ZmlsZTpgLkNgLCA6ZmlsZTpgLmNjYCwgYW5kIDpmaWxlOmAuYysrYCBhcmUKLSAgYXNzdW1lZCB0byBiZSBDKyssIGFuZCBmaWxlbmFtZXMgZW5kaW5nIGluIDpmaWxlOmAubWAgb3IgOmZpbGU6YC5tbWAgYXJlIGFzc3VtZWQKLSAgdG8gYmUgaW4gT2JqZWN0aXZlIEMuCi0KLSogKmNwcGFyZyogaXMgYW4gYXJndW1lbnQgZm9yIHRoZSBDIHByZXByb2Nlc3NvciwgIGFuZCBpcyBhbnl0aGluZyBzdGFydGluZyB3aXRoCi0gIDpvcHRpb246YC1JYCwgOm9wdGlvbjpgLURgLCA6b3B0aW9uOmAtVWAgb3IgOm9wdGlvbjpgLUNgLgotCi0qICpsaWJyYXJ5KiBpcyBhbnl0aGluZyBlbmRpbmcgaW4gOmZpbGU6YC5hYCBvciBiZWdpbm5pbmcgd2l0aCA6b3B0aW9uOmAtbGAgb3IKLSAgOm9wdGlvbjpgLUxgLgotCi1JZiBhIHBhcnRpY3VsYXIgcGxhdGZvcm0gcmVxdWlyZXMgYSBzcGVjaWFsIGxpYnJhcnkgb24geW91ciBwbGF0Zm9ybSwgeW91IGNhbgotYWRkIGl0IGJ5IGVkaXRpbmcgdGhlIDpmaWxlOmBTZXR1cGAgZmlsZSBhbmQgcnVubmluZyBgYHB5dGhvbiBzZXR1cC5weSBidWlsZGBgLgotRm9yIGV4YW1wbGUsIGlmIHRoZSBtb2R1bGUgZGVmaW5lZCBieSB0aGUgbGluZSA6OgotCi0gICBmb28gZm9vbW9kdWxlLmMKLQotbXVzdCBiZSBsaW5rZWQgd2l0aCB0aGUgbWF0aCBsaWJyYXJ5IDpmaWxlOmBsaWJtLmFgIG9uIHlvdXIgcGxhdGZvcm0sIHNpbXBseSBhZGQKLTpvcHRpb246YC1sbWAgdG8gdGhlIGxpbmU6OgotCi0gICBmb28gZm9vbW9kdWxlLmMgLWxtCi0KLUFyYml0cmFyeSBzd2l0Y2hlcyBpbnRlbmRlZCBmb3IgdGhlIGNvbXBpbGVyIG9yIHRoZSBsaW5rZXIgY2FuIGJlIHN1cHBsaWVkIHdpdGgKLXRoZSA6b3B0aW9uOmAtWGNvbXBpbGVyYCAqYXJnKiBhbmQgOm9wdGlvbjpgLVhsaW5rZXJgICphcmcqIG9wdGlvbnM6OgotCi0gICBmb28gZm9vbW9kdWxlLmMgLVhjb21waWxlciAtbzMyIC1YbGlua2VyIC1zaGFyZWQgLWxtCi0KLVRoZSBuZXh0IG9wdGlvbiBhZnRlciA6b3B0aW9uOmAtWGNvbXBpbGVyYCBhbmQgOm9wdGlvbjpgLVhsaW5rZXJgIHdpbGwgYmUKLWFwcGVuZGVkIHRvIHRoZSBwcm9wZXIgY29tbWFuZCBsaW5lLCBzbyBpbiB0aGUgYWJvdmUgZXhhbXBsZSB0aGUgY29tcGlsZXIgd2lsbAotYmUgcGFzc2VkIHRoZSA6b3B0aW9uOmAtbzMyYCBvcHRpb24sIGFuZCB0aGUgbGlua2VyIHdpbGwgYmUgcGFzc2VkCi06b3B0aW9uOmAtc2hhcmVkYC4gIElmIGEgY29tcGlsZXIgb3B0aW9uIHJlcXVpcmVzIGFuIGFyZ3VtZW50LCB5b3UnbGwgaGF2ZSB0bwotc3VwcGx5IG11bHRpcGxlIDpvcHRpb246YC1YY29tcGlsZXJgIG9wdGlvbnM7IGZvciBleGFtcGxlLCB0byBwYXNzIGBgLXggYysrYGAKLXRoZSA6ZmlsZTpgU2V0dXBgIGZpbGUgd291bGQgaGF2ZSB0byBjb250YWluIGBgLVhjb21waWxlciAteCAtWGNvbXBpbGVyIGMrK2BgLgotCi1Db21waWxlciBmbGFncyBjYW4gYWxzbyBiZSBzdXBwbGllZCB0aHJvdWdoIHNldHRpbmcgdGhlIDplbnZ2YXI6YENGTEFHU2AKLWVudmlyb25tZW50IHZhcmlhYmxlLiAgSWYgc2V0LCB0aGUgY29udGVudHMgb2YgOmVudnZhcjpgQ0ZMQUdTYCB3aWxsIGJlIGFkZGVkIHRvCi10aGUgY29tcGlsZXIgZmxhZ3Mgc3BlY2lmaWVkIGluIHRoZSAgOmZpbGU6YFNldHVwYCBmaWxlLgotCi0KLS4uIF9pbnN0LW5vbi1tcy1jb21waWxlcnM6Ci0KLVVzaW5nIG5vbi1NaWNyb3NvZnQgY29tcGlsZXJzIG9uIFdpbmRvd3MKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotLi4gc2VjdGlvbmF1dGhvcjo6IFJlbmUgTGllYnNjaGVyIDxSLkxpZWJzY2hlckBnbXguZGU+Ci0KLQotCi1Cb3JsYW5kL0NvZGVHZWFyIEMrKwotXl5eXl5eXl5eXl5eXl5eXl5eXl4KLQotVGhpcyBzdWJzZWN0aW9uIGRlc2NyaWJlcyB0aGUgbmVjZXNzYXJ5IHN0ZXBzIHRvIHVzZSBEaXN0dXRpbHMgd2l0aCB0aGUgQm9ybGFuZAotQysrIGNvbXBpbGVyIHZlcnNpb24gNS41LiAgRmlyc3QgeW91IGhhdmUgdG8ga25vdyB0aGF0IEJvcmxhbmQncyBvYmplY3QgZmlsZQotZm9ybWF0IChPTUYpIGlzIGRpZmZlcmVudCBmcm9tIHRoZSBmb3JtYXQgdXNlZCBieSB0aGUgUHl0aG9uIHZlcnNpb24geW91IGNhbgotZG93bmxvYWQgZnJvbSB0aGUgUHl0aG9uIG9yIEFjdGl2ZVN0YXRlIFdlYiBzaXRlLiAgKFB5dGhvbiBpcyBidWlsdCB3aXRoCi1NaWNyb3NvZnQgVmlzdWFsIEMrKywgd2hpY2ggdXNlcyBDT0ZGIGFzIHRoZSBvYmplY3QgZmlsZSBmb3JtYXQuKSBGb3IgdGhpcwotcmVhc29uIHlvdSBoYXZlIHRvIGNvbnZlcnQgUHl0aG9uJ3MgbGlicmFyeSA6ZmlsZTpgcHl0aG9uMjUubGliYCBpbnRvIHRoZQotQm9ybGFuZCBmb3JtYXQuICBZb3UgY2FuIGRvIHRoaXMgYXMgZm9sbG93czoKLQotLi4gU2hvdWxkIHdlIG1lbnRpb24gdGhhdCB1c2VycyBoYXZlIHRvIGNyZWF0ZSBjZmctZmlsZXMgZm9yIHRoZSBjb21waWxlcj8KLS4uIHNlZSBhbHNvIGh0dHA6Ly9jb21tdW5pdHkuYm9ybGFuZC5jb20vYXJ0aWNsZS8wLDE0MTAsMjEyMDUsMDAuaHRtbAotCi06OgotCi0gICBjb2ZmMm9tZiBweXRob24yNS5saWIgcHl0aG9uMjVfYmNwcC5saWIKLQotVGhlIDpmaWxlOmBjb2ZmMm9tZmAgcHJvZ3JhbSBjb21lcyB3aXRoIHRoZSBCb3JsYW5kIGNvbXBpbGVyLiAgVGhlIGZpbGUKLTpmaWxlOmBweXRob24yNS5saWJgIGlzIGluIHRoZSA6ZmlsZTpgTGlic2AgZGlyZWN0b3J5IG9mIHlvdXIgUHl0aG9uCi1pbnN0YWxsYXRpb24uICBJZiB5b3VyIGV4dGVuc2lvbiB1c2VzIG90aGVyIGxpYnJhcmllcyAoemxpYiwgLi4uKSB5b3UgaGF2ZSB0bwotY29udmVydCB0aGVtIHRvby4KLQotVGhlIGNvbnZlcnRlZCBmaWxlcyBoYXZlIHRvIHJlc2lkZSBpbiB0aGUgc2FtZSBkaXJlY3RvcmllcyBhcyB0aGUgbm9ybWFsCi1saWJyYXJpZXMuCi0KLUhvdyBkb2VzIERpc3R1dGlscyBtYW5hZ2UgdG8gdXNlIHRoZXNlIGxpYnJhcmllcyB3aXRoIHRoZWlyIGNoYW5nZWQgbmFtZXM/ICBJZgotdGhlIGV4dGVuc2lvbiBuZWVkcyBhIGxpYnJhcnkgKGVnLiA6ZmlsZTpgZm9vYCkgRGlzdHV0aWxzIGNoZWNrcyBmaXJzdCBpZiBpdAotZmluZHMgYSBsaWJyYXJ5IHdpdGggc3VmZml4IDpmaWxlOmBfYmNwcGAgKGVnLiA6ZmlsZTpgZm9vX2JjcHAubGliYCkgYW5kIHRoZW4KLXVzZXMgdGhpcyBsaWJyYXJ5LiAgSW4gdGhlIGNhc2UgaXQgZG9lc24ndCBmaW5kIHN1Y2ggYSBzcGVjaWFsIGxpYnJhcnkgaXQgdXNlcwotdGhlIGRlZmF1bHQgbmFtZSAoOmZpbGU6YGZvby5saWJgLikgWyNdXwotCi1UbyBsZXQgRGlzdHV0aWxzIGNvbXBpbGUgeW91ciBleHRlbnNpb24gd2l0aCBCb3JsYW5kIEMrKyB5b3Ugbm93IGhhdmUgdG8gdHlwZTo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBidWlsZCAtLWNvbXBpbGVyPWJjcHAKLQotSWYgeW91IHdhbnQgdG8gdXNlIHRoZSBCb3JsYW5kIEMrKyBjb21waWxlciBhcyB0aGUgZGVmYXVsdCwgeW91IGNvdWxkIHNwZWNpZnkKLXRoaXMgaW4geW91ciBwZXJzb25hbCBvciBzeXN0ZW0td2lkZSBjb25maWd1cmF0aW9uIGZpbGUgZm9yIERpc3R1dGlscyAoc2VlCi1zZWN0aW9uIDpyZWY6YGluc3QtY29uZmlnLWZpbGVzYC4pCisgICBpbnN0YWxsCisgICBweXNldHVwCisgICBweXNldHVwLWNvbmZpZworICAgcHlzZXR1cC1zZXJ2ZXJzCiAKIAogLi4gc2VlYWxzbzo6CiAKLSAgIGBDKytCdWlsZGVyIENvbXBpbGVyIDxodHRwOi8vd3d3LmNvZGVnZWFyLmNvbS9kb3dubG9hZHMvZnJlZS9jcHBidWlsZGVyPmBfCi0gICAgICBJbmZvcm1hdGlvbiBhYm91dCB0aGUgZnJlZSBDKysgY29tcGlsZXIgZnJvbSBCb3JsYW5kLCBpbmNsdWRpbmcgbGlua3MgdG8gdGhlCi0gICAgICBkb3dubG9hZCBwYWdlcy4KKyAgIDpyZWY6YHBhY2thZ2luZy1pbmRleGAKKyAgICAgIFRoZSBtYW51YWwgZm9yIGRldmVsb3BlcnMgb2YgUHl0aG9uIHByb2plY3RzIHdobyB3YW50IHRvIHBhY2thZ2UgYW5kCisgICAgICBkaXN0cmlidXRlIHRoZW0uIFRoaXMgZGVzY3JpYmVzIGhvdyB0byB1c2UgOm1vZDpgcGFja2FnaW5nYCB0byBtYWtlCisgICAgICBwcm9qZWN0cyBlYXNpbHkgZm91bmQgYW5kIGFkZGVkIHRvIGFuIGV4aXN0aW5nIFB5dGhvbiBpbnN0YWxsYXRpb24uCiAKLSAgIGBDcmVhdGluZyBQeXRob24gRXh0ZW5zaW9ucyBVc2luZyBCb3JsYW5kJ3MgRnJlZSBDb21waWxlciA8aHR0cDovL3d3dy5jeWJlcnVzLmNhL35nX3dpbGwvcHlFeHRlbkRMLnNodG1sPmBfCi0gICAgICBEb2N1bWVudCBkZXNjcmliaW5nIGhvdyB0byB1c2UgQm9ybGFuZCdzIGZyZWUgY29tbWFuZC1saW5lIEMrKyBjb21waWxlciB0byBidWlsZAotICAgICAgUHl0aG9uLgotCi0KLUdOVSBDIC8gQ3lnd2luIC8gTWluR1cKLV5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KLQotVGhpcyBzZWN0aW9uIGRlc2NyaWJlcyB0aGUgbmVjZXNzYXJ5IHN0ZXBzIHRvIHVzZSBEaXN0dXRpbHMgd2l0aCB0aGUgR05VIEMvQysrCi1jb21waWxlcnMgaW4gdGhlaXIgQ3lnd2luIGFuZCBNaW5HVyBkaXN0cmlidXRpb25zLiBbI11fIEZvciBhIFB5dGhvbiBpbnRlcnByZXRlcgotdGhhdCB3YXMgYnVpbHQgd2l0aCBDeWd3aW4sIGV2ZXJ5dGhpbmcgc2hvdWxkIHdvcmsgd2l0aG91dCBhbnkgb2YgdGhlc2UKLWZvbGxvd2luZyBzdGVwcy4KLQotTm90IGFsbCBleHRlbnNpb25zIGNhbiBiZSBidWlsdCB3aXRoIE1pbkdXIG9yIEN5Z3dpbiwgYnV0IG1hbnkgY2FuLiAgRXh0ZW5zaW9ucwotbW9zdCBsaWtlbHkgdG8gbm90IHdvcmsgYXJlIHRob3NlIHRoYXQgdXNlIEMrKyBvciBkZXBlbmQgb24gTWljcm9zb2Z0IFZpc3VhbCBDCi1leHRlbnNpb25zLgotCi1UbyBsZXQgRGlzdHV0aWxzIGNvbXBpbGUgeW91ciBleHRlbnNpb24gd2l0aCBDeWd3aW4geW91IGhhdmUgdG8gdHlwZTo6Ci0KLSAgIHB5dGhvbiBzZXR1cC5weSBidWlsZCAtLWNvbXBpbGVyPWN5Z3dpbgotCi1hbmQgZm9yIEN5Z3dpbiBpbiBuby1jeWd3aW4gbW9kZSBbI11fIG9yIGZvciBNaW5HVyB0eXBlOjoKLQotICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0tY29tcGlsZXI9bWluZ3czMgotCi1JZiB5b3Ugd2FudCB0byB1c2UgYW55IG9mIHRoZXNlIG9wdGlvbnMvY29tcGlsZXJzIGFzIGRlZmF1bHQsIHlvdSBzaG91bGQKLWNvbnNpZGVyIHdyaXRpbmcgaXQgaW4geW91ciBwZXJzb25hbCBvciBzeXN0ZW0td2lkZSBjb25maWd1cmF0aW9uIGZpbGUgZm9yCi1EaXN0dXRpbHMgKHNlZSBzZWN0aW9uIDpyZWY6YGluc3QtY29uZmlnLWZpbGVzYC4pCi0KLU9sZGVyIFZlcnNpb25zIG9mIFB5dGhvbiBhbmQgTWluR1cKLSIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKLVRoZSBmb2xsb3dpbmcgaW5zdHJ1Y3Rpb25zIG9ubHkgYXBwbHkgaWYgeW91J3JlIHVzaW5nIGEgdmVyc2lvbiBvZiBQeXRob24KLWluZmVyaW9yIHRvIDIuNC4xIHdpdGggYSBNaW5HVyBpbmZlcmlvciB0byAzLjAuMCAod2l0aAotYmludXRpbHMtMi4xMy45MC0yMDAzMDExMS0xKS4KLQotVGhlc2UgY29tcGlsZXJzIHJlcXVpcmUgc29tZSBzcGVjaWFsIGxpYnJhcmllcy4gIFRoaXMgdGFzayBpcyBtb3JlIGNvbXBsZXggdGhhbgotZm9yIEJvcmxhbmQncyBDKyssIGJlY2F1c2UgdGhlcmUgaXMgbm8gcHJvZ3JhbSB0byBjb252ZXJ0IHRoZSBsaWJyYXJ5LiAgRmlyc3QKLXlvdSBoYXZlIHRvIGNyZWF0ZSBhIGxpc3Qgb2Ygc3ltYm9scyB3aGljaCB0aGUgUHl0aG9uIERMTCBleHBvcnRzLiAoWW91IGNhbiBmaW5kCi1hIGdvb2QgcHJvZ3JhbSBmb3IgdGhpcyB0YXNrIGF0Ci1odHRwOi8vd3d3LmVtbWVzdGVjaC5jb20vc29mdHdhcmUvcGV4cG9ydHMtMC40My9kb3dubG9hZF9wZXhwb3J0cy5odG1sKS4KLQotLi4gSSBkb24ndCB1bmRlcnN0YW5kIHdoYXQgdGhlIG5leHQgbGluZSBtZWFucy4gLS1hbWsKLS4uIChpbmNsdXNpdmUgdGhlIHJlZmVyZW5jZXMgb24gZGF0YSBzdHJ1Y3R1cmVzLikKLQotOjoKLQotICAgcGV4cG9ydHMgcHl0aG9uMjUuZGxsID5weXRob24yNS5kZWYKLQotVGhlIGxvY2F0aW9uIG9mIGFuIGluc3RhbGxlZCA6ZmlsZTpgcHl0aG9uMjUuZGxsYCB3aWxsIGRlcGVuZCBvbiB0aGUKLWluc3RhbGxhdGlvbiBvcHRpb25zIGFuZCB0aGUgdmVyc2lvbiBhbmQgbGFuZ3VhZ2Ugb2YgV2luZG93cy4gIEluIGEgImp1c3QgZm9yCi1tZSIgaW5zdGFsbGF0aW9uLCBpdCB3aWxsIGFwcGVhciBpbiB0aGUgcm9vdCBvZiB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeS4gIEluCi1hIHNoYXJlZCBpbnN0YWxsYXRpb24sIGl0IHdpbGwgYmUgbG9jYXRlZCBpbiB0aGUgc3lzdGVtIGRpcmVjdG9yeS4KLQotVGhlbiB5b3UgY2FuIGNyZWF0ZSBmcm9tIHRoZXNlIGluZm9ybWF0aW9uIGFuIGltcG9ydCBsaWJyYXJ5IGZvciBnY2MuIDo6Ci0KLSAgIC9jeWd3aW4vYmluL2RsbHRvb2wgLS1kbGxuYW1lIHB5dGhvbjI1LmRsbCAtLWRlZiBweXRob24yNS5kZWYgLS1vdXRwdXQtbGliIGxpYnB5dGhvbjI1LmEKLQotVGhlIHJlc3VsdGluZyBsaWJyYXJ5IGhhcyB0byBiZSBwbGFjZWQgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzCi06ZmlsZTpgcHl0aG9uMjUubGliYC4gKFNob3VsZCBiZSB0aGUgOmZpbGU6YGxpYnNgIGRpcmVjdG9yeSB1bmRlciB5b3VyIFB5dGhvbgotaW5zdGFsbGF0aW9uIGRpcmVjdG9yeS4pCi0KLUlmIHlvdXIgZXh0ZW5zaW9uIHVzZXMgb3RoZXIgbGlicmFyaWVzICh6bGliLC4uLikgeW91IG1pZ2h0ICBoYXZlIHRvIGNvbnZlcnQKLXRoZW0gdG9vLiBUaGUgY29udmVydGVkIGZpbGVzIGhhdmUgdG8gcmVzaWRlIGluIHRoZSBzYW1lIGRpcmVjdG9yaWVzIGFzIHRoZQotbm9ybWFsIGxpYnJhcmllcyBkby4KLQotCi0uLiBzZWVhbHNvOjoKLQotICAgYEJ1aWxkaW5nIFB5dGhvbiBtb2R1bGVzIG9uIE1TIFdpbmRvd3MgcGxhdGZvcm0gd2l0aCBNaW5HVyA8aHR0cDovL3d3dy56b3BlLm9yZy9NZW1iZXJzL2Fscy90aXBzL3dpbjMyX21pbmd3X21vZHVsZXM+YF8KLSAgICAgIEluZm9ybWF0aW9uIGFib3V0IGJ1aWxkaW5nIHRoZSByZXF1aXJlZCBsaWJyYXJpZXMgZm9yIHRoZSBNaW5HVyBlbnZpcm9ubWVudC4KLQotCi0uLiBydWJyaWM6OiBGb290bm90ZXMKLQotLi4gWyNdIFRoaXMgYWxzbyBtZWFucyB5b3UgY291bGQgcmVwbGFjZSBhbGwgZXhpc3RpbmcgQ09GRi1saWJyYXJpZXMgd2l0aCBPTUYtbGlicmFyaWVzCi0gICBvZiB0aGUgc2FtZSBuYW1lLgotCi0uLiBbI10gQ2hlY2sgaHR0cDovL3NvdXJjZXMucmVkaGF0LmNvbS9jeWd3aW4vIGFuZCBodHRwOi8vd3d3Lm1pbmd3Lm9yZy8gZm9yIG1vcmUKLSAgIGluZm9ybWF0aW9uCi0KLS4uIFsjXSBUaGVuIHlvdSBoYXZlIG5vIFBPU0lYIGVtdWxhdGlvbiBhdmFpbGFibGUsIGJ1dCB5b3UgYWxzbyBkb24ndCBuZWVkCi0gICA6ZmlsZTpgY3lnd2luMS5kbGxgLgorICAgOm1vZDpgcGFja2FnaW5nYAorICAgICAgQSBsaWJyYXJ5IHJlZmVyZW5jZSBmb3IgZGV2ZWxvcGVycyBvZiBwYWNrYWdpbmcgdG9vbHMgd2FudGluZyB0byB1c2UKKyAgICAgIHN0YW5kYWxvbmUgYnVpbGRpbmcgYmxvY2tzIGxpa2UgOm1vZDpgfnBhY2thZ2luZy52ZXJzaW9uYCBvcgorICAgICAgOm1vZDpgfnBhY2thZ2luZy5tZXRhZGF0YWAsIG9yIGV4dGVuZCBQYWNrYWdpbmcgaXRzZWxmLgpkaWZmIC0tZ2l0IGEvRG9jL2luc3RhbGwvaW5zdGFsbC5yc3QgYi9Eb2MvaW5zdGFsbC9pbnN0YWxsLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iM2U2NTViCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2luc3RhbGwvaW5zdGFsbC5yc3QKQEAgLTAsMCArMSwxMTE5IEBACisuLiBoaWdobGlnaHRsYW5nOjogbm9uZQorCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK0luc3RhbGxpbmcgUHl0aG9uIHByb2plY3RzOiBvdmVydmlldworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIF9wYWNrYWdpbmctaW5zdGFsbC1pbnRybzoKKworSW50cm9kdWN0aW9uCis9PT09PT09PT09PT0KKworQWx0aG91Z2ggUHl0aG9uJ3MgZXh0ZW5zaXZlIHN0YW5kYXJkIGxpYnJhcnkgY292ZXJzIG1hbnkgcHJvZ3JhbW1pbmcgbmVlZHMsCit0aGVyZSBvZnRlbiBjb21lcyBhIHRpbWUgd2hlbiB5b3UgbmVlZCB0byBhZGQgbmV3IGZ1bmN0aW9uYWxpdHkgdG8geW91ciBQeXRob24KK2luc3RhbGxhdGlvbiBpbiB0aGUgZm9ybSBvZiB0aGlyZC1wYXJ0eSBtb2R1bGVzLiBUaGlzIG1pZ2h0IGJlIG5lY2Vzc2FyeSB0bworc3VwcG9ydCB5b3VyIG93biBwcm9ncmFtbWluZywgb3IgdG8gc3VwcG9ydCBhbiBhcHBsaWNhdGlvbiB0aGF0IHlvdSB3YW50IHRvIHVzZQorYW5kIHRoYXQgaGFwcGVucyB0byBiZSB3cml0dGVuIGluIFB5dGhvbi4KKworSW4gdGhlIHBhc3QsIHRoZXJlIHdhcyBsaXR0bGUgc3VwcG9ydCBmb3IgYWRkaW5nIHRoaXJkLXBhcnR5IG1vZHVsZXMgdG8gYW4KK2V4aXN0aW5nIFB5dGhvbiBpbnN0YWxsYXRpb24uICBXaXRoIHRoZSBpbnRyb2R1Y3Rpb24gb2YgdGhlIFB5dGhvbiBEaXN0cmlidXRpb24KK1V0aWxpdGllcyAoRGlzdHV0aWxzIGZvciBzaG9ydCkgaW4gUHl0aG9uIDIuMCwgdGhpcyBjaGFuZ2VkLiAgSG93ZXZlciwgbm90IGFsbAorcHJvYmxlbXMgd2VyZSBzb2x2ZWQ7IGVuZC11c2VycyBoYWQgdG8gcmVseSBvbiBgYGVhc3lfaW5zdGFsbGBgIG9yCitgYHBpcGBgIHRvIGRvd25sb2FkIHRoaXJkLXBhcnR5IG1vZHVsZXMgZnJvbSBQeVBJLCB1bmluc3RhbGwgZGlzdHJpYnV0aW9ucyBvciBkbworb3RoZXIgbWFpbnRlbmFuY2Ugb3BlcmF0aW9ucy4gIFBhY2thZ2luZyBpcyBhIG1vcmUgY29tcGxldGUgcmVwbGFjZW1lbnQgZm9yCitEaXN0dXRpbHMsIGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5LCB3aXRoIGEgYmFja3BvcnQgbmFtZWQgRGlzdHV0aWxzMiBhdmFpbGFibGUKK2ZvciBvbGRlciBQeXRob24gdmVyc2lvbnMuCisKK1RoaXMgZG9jdW1lbnQgaXMgYWltZWQgcHJpbWFyaWx5IGF0IHBlb3BsZSB3aG8gbmVlZCB0byBpbnN0YWxsIHRoaXJkLXBhcnR5CitQeXRob24gbW9kdWxlczogZW5kLXVzZXJzIGFuZCBzeXN0ZW0gYWRtaW5pc3RyYXRvcnMgd2hvIGp1c3QgbmVlZCB0byBnZXQgc29tZQorUHl0aG9uIGFwcGxpY2F0aW9uIHJ1bm5pbmcsIGFuZCBleGlzdGluZyBQeXRob24gcHJvZ3JhbW1lcnMgd2hvIHdhbnQgdG8gYWRkCituZXcgZ29vZGllcyB0byB0aGVpciB0b29sYm94LiBZb3UgZG9uJ3QgbmVlZCB0byBrbm93IFB5dGhvbiB0byByZWFkIHRoaXMKK2RvY3VtZW50OyB0aGVyZSB3aWxsIGJlIHNvbWUgYnJpZWYgZm9yYXlzIGludG8gdXNpbmcgUHl0aG9uJ3MgaW50ZXJhY3RpdmUgbW9kZQordG8gZXhwbG9yZSB5b3VyIGluc3RhbGxhdGlvbiwgYnV0IHRoYXQncyBpdC4gSWYgeW91J3JlIGxvb2tpbmcgZm9yIGluZm9ybWF0aW9uCitvbiBob3cgdG8gZGlzdHJpYnV0ZSB5b3VyIG93biBQeXRob24gbW9kdWxlcyBzbyB0aGF0IG90aGVycyBtYXkgdXNlIHRoZW0sIHNlZQordGhlIDpyZWY6YHBhY2thZ2luZy1pbmRleGAgbWFudWFsLgorCisKKy4uIF9wYWNrYWdpbmctdHJpdmlhbC1pbnN0YWxsOgorCitCZXN0IGNhc2U6IHRyaXZpYWwgaW5zdGFsbGF0aW9uCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0luIHRoZSBiZXN0IGNhc2UsIHNvbWVvbmUgd2lsbCBoYXZlIHByZXBhcmVkIGEgc3BlY2lhbCB2ZXJzaW9uIG9mIHRoZSBtb2R1bGUKK2Rpc3RyaWJ1dGlvbiB5b3Ugd2FudCB0byBpbnN0YWxsIHRoYXQgaXMgdGFyZ2V0ZWQgc3BlY2lmaWNhbGx5IGF0IHlvdXIgcGxhdGZvcm0KK2FuZCBjYW4gYmUgaW5zdGFsbGVkIGp1c3QgbGlrZSBhbnkgb3RoZXIgc29mdHdhcmUgb24geW91ciBwbGF0Zm9ybS4gRm9yIGV4YW1wbGUsCit0aGUgbW9kdWxlJ3MgZGV2ZWxvcGVyIG1pZ2h0IG1ha2UgYW4gZXhlY3V0YWJsZSBpbnN0YWxsZXIgYXZhaWxhYmxlIGZvciBXaW5kb3dzCit1c2VycywgYW4gUlBNIHBhY2thZ2UgZm9yIHVzZXJzIG9mIFJQTS1iYXNlZCBMaW51eCBzeXN0ZW1zIChSZWQgSGF0LCBTdVNFLAorTWFuZHJha2UsIGFuZCBtYW55IG90aGVycyksIGEgRGViaWFuIHBhY2thZ2UgZm9yIHVzZXJzIG9mIERlYmlhbiBhbmQgZGVyaXZhdGl2ZQorc3lzdGVtcywgYW5kIHNvIGZvcnRoLgorCitJbiB0aGF0IGNhc2UsIHlvdSB3b3VsZCB1c2UgdGhlIHN0YW5kYXJkIHN5c3RlbSB0b29scyB0byBkb3dubG9hZCBhbmQgaW5zdGFsbAordGhlIHNwZWNpZmljIGluc3RhbGxlciBmb3IgeW91ciBwbGF0Zm9ybSBhbmQgaXRzIGRlcGVuZGVuY2llcy4KKworT2YgY291cnNlLCB0aGluZ3Mgd2lsbCBub3QgYWx3YXlzIGJlIHRoYXQgZWFzeS4gWW91IG1pZ2h0IGJlIGludGVyZXN0ZWQgaW4gYQorbW9kdWxlIHdob3NlIGRpc3RyaWJ1dGlvbiBkb2Vzbid0IGhhdmUgYW4gZWFzeS10by11c2UgaW5zdGFsbGVyIGZvciB5b3VyCitwbGF0Zm9ybS4gSW4gdGhhdCBjYXNlLCB5b3UnbGwgaGF2ZSB0byBzdGFydCB3aXRoIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uCityZWxlYXNlZCBieSB0aGUgbW9kdWxlJ3MgYXV0aG9yL21haW50YWluZXIuIEluc3RhbGxpbmcgZnJvbSBhIHNvdXJjZQorZGlzdHJpYnV0aW9uIGlzIG5vdCB0b28gaGFyZCwgYXMgbG9uZyBhcyB0aGUgbW9kdWxlcyBhcmUgcGFja2FnZWQgaW4gdGhlCitzdGFuZGFyZCB3YXkuIFRoZSBidWxrIG9mIHRoaXMgZG9jdW1lbnQgYWRkcmVzc2VzIHRoZSBidWlsZGluZyBhbmQgaW5zdGFsbGluZworb2YgbW9kdWxlcyBmcm9tIHN0YW5kYXJkIHNvdXJjZSBkaXN0cmlidXRpb25zLgorCisKKy4uIF9wYWNrYWdpbmctZGlzdHV0aWxzOgorCitUaGUgUHl0aG9uIHN0YW5kYXJkOiBEaXN0dXRpbHMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitJZiB5b3UgZG93bmxvYWQgYSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9mIGEgbW9kdWxlLCBpdCB3aWxsIGJlIG9idmlvdXMgd2hldGhlcgoraXQgd2FzIHBhY2thZ2VkIGFuZCBkaXN0cmlidXRlZCB1c2luZyBEaXN0dXRpbHMuICBGaXJzdCwgdGhlIGRpc3RyaWJ1dGlvbidzIG5hbWUKK2FuZCB2ZXJzaW9uIG51bWJlciB3aWxsIGJlIGZlYXR1cmVkIHByb21pbmVudGx5IGluIHRoZSBuYW1lIG9mIHRoZSBkb3dubG9hZGVkCithcmNoaXZlLCBlLmcuIDpmaWxlOmBmb28tMS4wLnRhci5nemAgb3IgOmZpbGU6YHdpZGdldC0wLjkuNy56aXBgLiAgTmV4dCwgdGhlCithcmNoaXZlIHdpbGwgdW5wYWNrIGludG8gYSBzaW1pbGFybHktbmFtZWQgZGlyZWN0b3J5OiA6ZmlsZTpgZm9vLTEuMGAgb3IKKzpmaWxlOmB3aWRnZXQtMC45LjdgLiAgQWRkaXRpb25hbGx5LCB0aGUgZGlzdHJpYnV0aW9uIG1heSBjb250YWluIGEKKzpmaWxlOmBzZXR1cC5jZmdgIGZpbGUgYW5kIGEgZmlsZSBuYW1lZCA6ZmlsZTpgUkVBRE1FLnR4dGAgLS0tb3IgcG9zc2libHkganVzdAorOmZpbGU6YFJFQURNRWAtLS0gZXhwbGFpbmluZyB0aGF0IGJ1aWxkaW5nIGFuZCBpbnN0YWxsaW5nIHRoZSBtb2R1bGUKK2Rpc3RyaWJ1dGlvbiBpcyBhIHNpbXBsZSBtYXR0ZXIgb2YgaXNzdWluZyB0aGUgZm9sbG93aW5nIGNvbW1hbmQgYXQgeW91ciBzaGVsbCdzCitwcm9tcHQ6OgorCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbAorCitUaGlyZC1wYXJ0eSBwcm9qZWN0cyBoYXZlIGV4dGVuZGVkIERpc3R1dGlscyB0byB3b3JrIGFyb3VuZCBpdHMgbGltaXRhdGlvbnMgb3IKK2FkZCBmdW5jdGlvbmFsaXR5LiAgQWZ0ZXIgc29tZSB5ZWFycyBvZiBuZWFyLWluYWN0aXZpdHkgaW4gRGlzdHV0aWxzLCBhIG5ldworbWFpbnRhaW5lciBoYXMgc3RhcnRlZCB0byBzdGFuZGFyZGl6ZSBnb29kIGlkZWFzIGluIFBFUHMgYW5kIGltcGxlbWVudCB0aGVtIGluIGEKK25ldywgaW1wcm92ZWQgdmVyc2lvbiBvZiBEaXN0dXRpbHMsIGNhbGxlZCBEaXN0dXRpbHMyIG9yIFBhY2thZ2luZy4KKworCisuLiBfcGFja2FnaW5nLW5ldy1zdGFuZGFyZDoKKworVGhlIG5ldyBzdGFuZGFyZDogUGFja2FnaW5nCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIHJ1bGVzIGRlc2NyaWJlZCBpbiB0aGUgZmlyc3QgcGFyYWdyYXBoIGFib3ZlIGFwcGx5IHRvIFBhY2thZ2luZy1iYXNlZAorcHJvamVjdHMgdG9vOiBhIHNvdXJjZSBkaXN0cmlidXRpb24gd2lsbCBoYXZlIGEgbmFtZSBsaWtlCis6ZmlsZTpgd2lkZ2V0LTAuOS43LnppcGAuICBPbmUgb2YgdGhlIG1haW4gZGlmZmVyZW5jZXMgd2l0aCBEaXN0dXRpbHMgaXMgdGhhdAorZGlzdHJpYnV0aW9ucyBubyBsb25nZXIgaGF2ZSBhIDpmaWxlOmBzZXR1cC5weWAgc2NyaXB0OyBpdCB1c2VkIHRvIGNhdXNlIGEKK251bWJlciBvZiBpc3N1ZXMuICBOb3cgdGhlcmUgaXMgYSB1bmlxdWUgc2NyaXB0IGluc3RhbGxlZCB3aXRoIFB5dGhvbiBpdHNlbGY6OgorCisgICBweXNldHVwIGluc3RhbGwgd2lkZ2V0LTAuOS43LnppcAorCitSdW5uaW5nIHRoaXMgY29tbWFuZCBpcyBlbm91Z2ggdG8gYnVpbGQgYW5kIGluc3RhbGwgcHJvamVjdHMgKFB5dGhvbiBtb2R1bGVzIG9yCitwYWNrYWdlcywgc2NyaXB0cyBvciB3aG9sZSBhcHBsaWNhdGlvbnMpLCB3aXRob3V0IGV2ZW4gaGF2aW5nIHRvIHVucGFjayB0aGUKK2FyY2hpdmUuICBJdCBpcyBhbHNvIGNvbXBhdGlibGUgd2l0aCBEaXN0dXRpbHMtYmFzZWQgZGlzdHJpYnV0aW9ucy4KKworVW5sZXNzIHlvdSBoYXZlIHRvIHBlcmZvcm0gbm9uLXN0YW5kYXJkIGluc3RhbGxhdGlvbnMgb3IgY3VzdG9taXplIHRoZSBidWlsZAorcHJvY2VzcywgeW91IGNhbiBzdG9wIHJlYWRpbmcgdGhpcyBtYW51YWwgLS0tdGhlIGFib3ZlIGNvbW1hbmQgaXMgZXZlcnl0aGluZyB5b3UKK25lZWQgdG8gZ2V0IG91dCBvZiBpdC4KKworV2l0aCA6cHJvZ3JhbTpgcHlzZXR1cGAsIHlvdSB3b24ndCBldmVuIGhhdmUgdG8gbWFudWFsbHkgZG93bmxvYWQgYSBkaXN0cmlidXRpb24KK2JlZm9yZSBpbnN0YWxsaW5nIGl0OyBzZWUgOnJlZjpgcGFja2FnaW5nLXB5c2V0dXBgLgorCisKKy4uIF9wYWNrYWdpbmctc3RhbmRhcmQtaW5zdGFsbDoKKworU3RhbmRhcmQgYnVpbGQgYW5kIGluc3RhbGwKKz09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0FzIGRlc2NyaWJlZCBpbiBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1uZXctc3RhbmRhcmRgLCBidWlsZGluZyBhbmQgaW5zdGFsbGluZworYSBtb2R1bGUgZGlzdHJpYnV0aW9uIHVzaW5nIFBhY2thZ2luZyB1c3VhbGx5IGNvbWVzIGRvd24gdG8gb25lIHNpbXBsZQorY29tbWFuZDo6CisKKyAgIHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdAorCitUaGlzIGlzIGEgY29tbWFuZCB0aGF0IHNob3VsZCBiZSBydW4gaW4gYSB0ZXJtaW5hbC4gIE9uIFdpbmRvd3MsIGl0IGlzIGNhbGxlZCBhCitjb21tYW5kIHByb21wdCBhbmQgZm91bmQgaW4gOm1lbnVzZWxlY3Rpb246YFN0YXJ0IC0tPiBBY2Nlc3Nvcmllc2A7IFBvd2Vyc2hlbGwKK2lzIGEgcG9wdWxhciBhbHRlcm5hdGl2ZS4KKworCisuLiBfcGFja2FnaW5nLXBsYXRmb3JtLXZhcmlhdGlvbnM6CisKK1BsYXRmb3JtIHZhcmlhdGlvbnMKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIHNldHVwIGNvbW1hbmQgaXMgbWVhbnQgdG8gYmUgcnVuIGZyb20gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBzb3VyY2UKK2Rpc3RyaWJ1dGlvbiwgaS5lLiB0aGUgdG9wLWxldmVsIHN1YmRpcmVjdG9yeSB0aGF0IHRoZSBtb2R1bGUgc291cmNlCitkaXN0cmlidXRpb24gdW5wYWNrcyBpbnRvLiBGb3IgZXhhbXBsZSwgaWYgeW91J3ZlIGp1c3QgZG93bmxvYWRlZCBhIG1vZHVsZQorc291cmNlIGRpc3RyaWJ1dGlvbiA6ZmlsZTpgZm9vLTEuMC50YXIuZ3pgIG9udG8gYSBVbml4IHN5c3RlbSwgdGhlIG5vcm1hbAorc3RlcHMgdG8gZm9sbG93IGFyZSB0aGVzZTo6CisKKyAgIGd1bnppcCAtYyBmb28tMS4wLnRhci5neiB8IHRhciB4ZiAtICAgICMgdW5wYWNrcyBpbnRvIGRpcmVjdG9yeSBmb28tMS4wCisgICBjZCBmb28tMS4wCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QKKworT24gV2luZG93cywgeW91J2QgcHJvYmFibHkgZG93bmxvYWQgOmZpbGU6YGZvby0xLjAuemlwYC4gSWYgeW91IGRvd25sb2FkZWQgdGhlCithcmNoaXZlIGZpbGUgdG8gOmZpbGU6YEM6XFxUZW1wYCwgdGhlbiBpdCB3b3VsZCB1bnBhY2sgaW50bworOmZpbGU6YEM6XFxUZW1wXFxmb28tMS4wYC4gVG8gYWN0dWFsbHkgdW5wYWNrIHRoZSBhcmNoaXZlLCB5b3UgY2FuIHVzZSBlaXRoZXIKK2FuIGFyY2hpdmUgbWFuaXB1bGF0b3Igd2l0aCBhIGdyYXBoaWNhbCB1c2VyIGludGVyZmFjZSAoc3VjaCBhcyBXaW5aaXAgb3IgNy1aaXApCitvciBhIGNvbW1hbmQtbGluZSB0b29sIChzdWNoIGFzIDpwcm9ncmFtOmB1bnppcGAsIDpwcm9ncmFtOmBwa3VuemlwYCBvciwgYWdhaW4sCis6cHJvZ3JhbTpgN3pgKS4gVGhlbiwgb3BlbiBhIGNvbW1hbmQgcHJvbXB0IHdpbmRvdyBhbmQgcnVuOjoKKworICAgY2QgYzpcVGVtcFxmb28tMS4wCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QKKworCisuLiBfcGFja2FnaW5nLXNwbGl0dGluZy11cDoKKworU3BsaXR0aW5nIHRoZSBqb2IgdXAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1J1bm5pbmcgYGBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3RgYCBidWlsZHMgYW5kIGluc3RhbGxzIGFsbCBtb2R1bGVzIGluIG9uZSBnby4gSWYgeW91CitwcmVmZXIgdG8gd29yayBpbmNyZW1lbnRhbGx5IC0tLWVzcGVjaWFsbHkgdXNlZnVsIGlmIHlvdSB3YW50IHRvIGN1c3RvbWl6ZSB0aGUKK2J1aWxkIHByb2Nlc3MsIG9yIGlmIHRoaW5ncyBhcmUgZ29pbmcgd3JvbmctLS0geW91IGNhbiB1c2UgdGhlIHNldHVwIHNjcmlwdCB0bworZG8gb25lIHRoaW5nIGF0IGEgdGltZS4gVGhpcyBpcyBhIHZhbHVhYmxlIHRvb2wgd2hlbiBkaWZmZXJlbnQgdXNlcnMgd2lsbCBwZXJmb3JtCitzZXBhcmF0ZWx5IHRoZSBidWlsZCBhbmQgaW5zdGFsbCBzdGVwcy4gRm9yIGV4YW1wbGUsIHlvdSBtaWdodCB3YW50IHRvIGJ1aWxkIGEKK21vZHVsZSBkaXN0cmlidXRpb24gYW5kIGhhbmQgaXQgb2ZmIHRvIGEgc3lzdGVtIGFkbWluaXN0cmF0b3IgZm9yIGluc3RhbGxhdGlvbgorKG9yIGRvIGl0IHlvdXJzZWxmLCBidXQgd2l0aCBzdXBlci11c2VyIG9yIGFkbWluIHByaXZpbGVnZXMpLgorCitGb3IgZXhhbXBsZSwgdG8gYnVpbGQgZXZlcnl0aGluZyBpbiBvbmUgc3RlcCBhbmQgdGhlbiBpbnN0YWxsIGV2ZXJ5dGhpbmcKK2luIGEgc2Vjb25kIHN0ZXAsIHlvdSBhcHRseSBpbnZva2UgdHdvIGRpc3RpbmN0IFBhY2thZ2luZyBjb21tYW5kczo6CisKKyAgIHB5c2V0dXAgcnVuIGJ1aWxkCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QKKworSWYgeW91IGRvIHRoaXMsIHlvdSB3aWxsIG5vdGljZSB0aGF0IGludm9raW5nIHRoZSA6Y29tbWFuZDpgaW5zdGFsbF9kaXN0YCBjb21tYW5kCitmaXJzdCBydW5zIHRoZSA6Y29tbWFuZDpgYnVpbGRgIGNvbW1hbmQsIHdoaWNoIC0tLWluIHRoaXMgY2FzZS0tLSBxdWlja2x5Citub3RpY2VzIGl0IGNhbiBzcGFyZSBpdHNlbGYgdGhlIHdvcmssIHNpbmNlIGV2ZXJ5dGhpbmcgaW4gdGhlIDpmaWxlOmBidWlsZGAKK2RpcmVjdG9yeSBpcyB1cC10by1kYXRlLgorCitZb3UgbWF5IG9mdGVuIGlnbm9yZSB0aGlzIGFiaWxpdHkgdG8gZGl2aWRlIHRoZSBwcm9jZXNzIGluIHN0ZXBzIGlmIGFsbCB5b3UgZG8KK2lzIGluc3RhbGxpbmcgbW9kdWxlcyBkb3dubG9hZGVkIGZyb20gdGhlIEludGVybmV0LCBidXQgaXQncyB2ZXJ5IGhhbmR5IGZvcgorbW9yZSBhZHZhbmNlZCB0YXNrcy4gSWYgeW91IGZpbmQgeW91cnNlbGYgaW4gdGhlIG5lZWQgZm9yIGRpc3RyaWJ1dGluZyB5b3VyIG93bgorUHl0aG9uIG1vZHVsZXMgYW5kIGV4dGVuc2lvbnMsIHRob3VnaCwgeW91J2xsIG1vc3QgbGlrZWx5IHJ1biBtYW55IGluZGl2aWR1YWwKK1BhY2thZ2luZyBjb21tYW5kcy4KKworCisuLiBfcGFja2FnaW5nLWhvdy1idWlsZC13b3JrczoKKworSG93IGJ1aWxkaW5nIHdvcmtzCistLS0tLS0tLS0tLS0tLS0tLS0KKworQXMgaW1wbGllZCBhYm92ZSwgdGhlIDpjb21tYW5kOmBidWlsZGAgY29tbWFuZCBpcyByZXNwb25zaWJsZSBmb3IgY29sbGVjdGluZworYW5kIHBsYWNpbmcgdGhlIGZpbGVzIHRvIGJlIGluc3RhbGxlZCBpbnRvIGEgKmJ1aWxkIGRpcmVjdG9yeSouIEJ5IGRlZmF1bHQsCit0aGlzIGlzIDpmaWxlOmBidWlsZGAsIHVuZGVyIHRoZSBkaXN0cmlidXRpb24gcm9vdC4gSWYgeW91J3JlIGV4Y2Vzc2l2ZWx5Citjb25jZXJuZWQgd2l0aCBzcGVlZCwgb3Igd2FudCB0byBrZWVwIHRoZSBzb3VyY2UgdHJlZSBwcmlzdGluZSwgeW91IGNhbiBzcGVjaWZ5CithIGRpZmZlcmVudCBidWlsZCBkaXJlY3Rvcnkgd2l0aCB0aGUgOm9wdGlvbjpgLS1idWlsZC1iYXNlYCBvcHRpb24uIEZvciBleGFtcGxlOjoKKworICAgcHlzZXR1cCBydW4gYnVpbGQgLS1idWlsZC1iYXNlIC90bXAvcHlidWlsZC9mb28tMS4wCisKKyhPciB5b3UgY291bGQgZG8gdGhpcyBwZXJtYW5lbnRseSB3aXRoIGEgZGlyZWN0aXZlIGluIHlvdXIgc3lzdGVtIG9yIHBlcnNvbmFsCitQYWNrYWdpbmcgY29uZmlndXJhdGlvbiBmaWxlOyBzZWUgc2VjdGlvbiA6cmVmOmBwYWNrYWdpbmctY29uZmlnLWZpbGVzYC4pCitJbiB0aGUgdXN1YWwgY2FzZSwgaG93ZXZlciwgYWxsIHRoaXMgaXMgdW5uZWNlc3NhcnkuCisKK1RoZSBidWlsZCB0cmVlJ3MgZGVmYXVsdCBsYXlvdXQgbG9va3MgbGlrZSBzbzo6CisKKyAgIC0tLSBidWlsZC8gLS0tIGxpYi8KKyAgIG9yCisgICAtLS0gYnVpbGQvIC0tLSBsaWIuPHBsYXQ+LworICAgICAgICAgICAgICAgICAgdGVtcC48cGxhdD4vCisKK3doZXJlIGBgPHBsYXQ+YGAgZXhwYW5kcyB0byBhIGJyaWVmIGRlc2NyaXB0aW9uIG9mIHRoZSBjdXJyZW50IE9TL2hhcmR3YXJlCitwbGF0Zm9ybSBhbmQgUHl0aG9uIHZlcnNpb24uIFRoZSBmaXJzdCBmb3JtLCB3aXRoIGp1c3QgYSA6ZmlsZTpgbGliYCBkaXJlY3RvcnksCitpcyB1c2VkIGZvciBwdXJlIG1vZHVsZSBkaXN0cmlidXRpb25zIChtb2R1bGUgZGlzdHJpYnV0aW9ucyB0aGF0CitpbmNsdWRlIG9ubHkgcHVyZSBQeXRob24gbW9kdWxlcykuIElmIGEgbW9kdWxlIGRpc3RyaWJ1dGlvbiBjb250YWlucyBhbnkKK2V4dGVuc2lvbnMgKG1vZHVsZXMgd3JpdHRlbiBpbiBDL0MrKyksIHRoZW4gdGhlIHNlY29uZCBmb3JtLCB3aXRoIHR3byBgYDxwbGF0PmBgCitkaXJlY3RvcmllcywgaXMgdXNlZC4gSW4gdGhhdCBjYXNlLCB0aGUgOmZpbGU6YHRlbXAue3BsYXR9YCBkaXJlY3RvcnkgaG9sZHMKK3RlbXBvcmFyeSBmaWxlcyBnZW5lcmF0ZWQgZHVyaW5nIHRoZSBjb21waWxlL2xpbmsgcHJvY2VzcyB3aGljaCBhcmUgbm90IGludGVuZGVkCit0byBiZSBpbnN0YWxsZWQuIEluIGVpdGhlciBjYXNlLCB0aGUgOmZpbGU6YGxpYmAgKG9yIDpmaWxlOmBsaWIue3BsYXR9YCkgZGlyZWN0b3J5Citjb250YWlucyBhbGwgUHl0aG9uIG1vZHVsZXMgKHB1cmUgUHl0aG9uIGFuZCBleHRlbnNpb25zKSB0byBiZSBpbnN0YWxsZWQuCisKK0luIHRoZSBmdXR1cmUsIG1vcmUgZGlyZWN0b3JpZXMgd2lsbCBiZSBhZGRlZCB0byBoYW5kbGUgUHl0aG9uIHNjcmlwdHMsCitkb2N1bWVudGF0aW9uLCBiaW5hcnkgZXhlY3V0YWJsZXMsIGFuZCB3aGF0ZXZlciBlbHNlIGlzIHJlcXVpcmVkIHRvIGluc3RhbGwKK1B5dGhvbiBtb2R1bGVzIGFuZCBhcHBsaWNhdGlvbnMuCisKKworLi4gX3BhY2thZ2luZy1ob3ctaW5zdGFsbC13b3JrczoKKworSG93IGluc3RhbGxhdGlvbiB3b3JrcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitBZnRlciB0aGUgOmNvbW1hbmQ6YGJ1aWxkYCBjb21tYW5kIGlzIHJ1biAod2hldGhlciBleHBsaWNpdGx5IG9yIGJ5IHRoZQorOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGAgY29tbWFuZCBvbiB5b3VyIGJlaGFsZiksIHRoZSB3b3JrIG9mIHRoZSA6Y29tbWFuZDpgaW5zdGFsbF9kaXN0YAorY29tbWFuZCBpcyByZWxhdGl2ZWx5IHNpbXBsZTogYWxsIGl0IGhhcyB0byBkbyBpcyBjb3B5IHRoZSBjb250ZW50cyBvZgorOmZpbGU6YGJ1aWxkL2xpYmAgKG9yIDpmaWxlOmBidWlsZC9saWIue3BsYXR9YCkgdG8gdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkKK29mIHlvdXIgY2hvaWNlLgorCitJZiB5b3UgZG9uJ3QgY2hvb3NlIGFuIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkgLS0taS5lLiwgaWYgeW91IGp1c3QgcnVuCitgYHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdGBgXCAtLS0gdGhlbiB0aGUgOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGAgY29tbWFuZAoraW5zdGFsbHMgdG8gdGhlIHN0YW5kYXJkIGxvY2F0aW9uIGZvciB0aGlyZC1wYXJ0eSBQeXRob24gbW9kdWxlcy4gVGhpcyBsb2NhdGlvbgordmFyaWVzIGJ5IHBsYXRmb3JtIGFuZCBkZXBlbmRpbmcgb24gaG93IHlvdSBidWlsdC9pbnN0YWxsZWQgUHl0aG9uIGl0c2VsZi4gT24KK1VuaXggKGFuZCBNYWMgT1MgWCwgd2hpY2ggaXMgYWxzbyBVbml4LWJhc2VkKSwgaXQgYWxzbyBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlCittb2R1bGUgZGlzdHJpYnV0aW9uIGJlaW5nIGluc3RhbGxlZCBpcyBwdXJlIFB5dGhvbiBvciBjb250YWlucyBleHRlbnNpb25zCisoIm5vbi1wdXJlIik6CisKKystLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBQbGF0Zm9ybSAgICAgICAgfCBTdGFuZGFyZCBpbnN0YWxsYXRpb24gbG9jYXRpb24gICAgICAgICAgICAgICAgICAgICAgfCBEZWZhdWx0IHZhbHVlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyB8CisrPT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKK3wgVW5peCAocHVyZSkgICAgIHwgOmZpbGU6YHtwcmVmaXh9L2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYCAgICAgIHwgOmZpbGU6YC91c3IvbG9jYWwvbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgIHwgXCgxKSAgfAorKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IFVuaXggKG5vbi1wdXJlKSB8IDpmaWxlOmB7ZXhlYy1wcmVmaXh9L2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYCB8IDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob257WC5ZfS9zaXRlLXBhY2thZ2VzYCB8IFwoMSkgIHwKKystLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBXaW5kb3dzICAgICAgICAgfCA6ZmlsZTpge3ByZWZpeH1cXExpYlxcc2l0ZS1wYWNrYWdlc2AgICAgICAgICAgICAgICAgfCA6ZmlsZTpgQzpcXFB5dGhvbntYWX1cXExpYlxcc2l0ZS1wYWNrYWdlc2AgICAgICAgfCBcKDIpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKKworTm90ZXM6CisKKygxKQorICAgTW9zdCBMaW51eCBkaXN0cmlidXRpb25zIGluY2x1ZGUgUHl0aG9uIGFzIGEgc3RhbmRhcmQgcGFydCBvZiB0aGUgc3lzdGVtLCBzbworICAgOmZpbGU6YHtwcmVmaXh9YCBhbmQgOmZpbGU6YHtleGVjLXByZWZpeH1gIGFyZSB1c3VhbGx5IGJvdGggOmZpbGU6YC91c3JgIG9uCisgICBMaW51eC4gSWYgeW91IGJ1aWxkIFB5dGhvbiB5b3Vyc2VsZiBvbiBMaW51eCAob3IgYW55IFVuaXgtbGlrZSBzeXN0ZW0pLCB0aGUKKyAgIGRlZmF1bHQgOmZpbGU6YHtwcmVmaXh9YCBhbmQgOmZpbGU6YHtleGVjLXByZWZpeH1gIGFyZSA6ZmlsZTpgL3Vzci9sb2NhbGAuCisKKygyKQorICAgVGhlIGRlZmF1bHQgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBvbiBXaW5kb3dzIHdhcyA6ZmlsZTpgQzpcXFByb2dyYW0KKyAgIEZpbGVzXFxQeXRob25gIHVuZGVyIFB5dGhvbiAxLjZhMSwgMS41LjIsIGFuZCBlYXJsaWVyLgorCis6ZmlsZTpge3ByZWZpeH1gIGFuZCA6ZmlsZTpge2V4ZWMtcHJlZml4fWAgc3RhbmQgZm9yIHRoZSBkaXJlY3RvcmllcyB0aGF0IFB5dGhvbgoraXMgaW5zdGFsbGVkIHRvLCBhbmQgd2hlcmUgaXQgZmluZHMgaXRzIGxpYnJhcmllcyBhdCBydW4tdGltZS4gVGhleSBhcmUgYWx3YXlzCit0aGUgc2FtZSB1bmRlciBXaW5kb3dzLCBhbmQgdmVyeSBvZnRlbiB0aGUgc2FtZSB1bmRlciBVbml4IGFuZCBNYWMgT1MgWC4gWW91CitjYW4gZmluZCBvdXQgd2hhdCB5b3VyIFB5dGhvbiBpbnN0YWxsYXRpb24gdXNlcyBmb3IgOmZpbGU6YHtwcmVmaXh9YCBhbmQKKzpmaWxlOmB7ZXhlYy1wcmVmaXh9YCBieSBydW5uaW5nIFB5dGhvbiBpbiBpbnRlcmFjdGl2ZSBtb2RlIGFuZCB0eXBpbmcgYSBmZXcKK3NpbXBsZSBjb21tYW5kcy4KKworLi4gVE9ETyBsaW5rIHRvIERvYy91c2luZyBpbnN0ZWFkIG9mIGR1cGxpY2F0aW5nCisKK1RvIHN0YXJ0IHRoZSBpbnRlcmFjdGl2ZSBQeXRob24gaW50ZXJwcmV0ZXIsIHlvdSBuZWVkIHRvIGZvbGxvdyBhIHNsaWdodGx5CitkaWZmZXJlbnQgcmVjaXBlIGZvciBlYWNoIHBsYXRmb3JtLiBVbmRlciBVbml4LCBqdXN0IHR5cGUgOmNvbW1hbmQ6YHB5dGhvbmAgYXQKK3RoZSBzaGVsbCBwcm9tcHQuIFVuZGVyIFdpbmRvd3MgKGFzc3VtaW5nIHRoZSBQeXRob24gZXhlY3V0YWJsZSBpcyBvbiB5b3VyCis6ZW52dmFyOmBQQVRIYCwgd2hpY2ggaXMgdGhlIHVzdWFsIGNhc2UpLCB5b3UgY2FuIGNob29zZSA6bWVudXNlbGVjdGlvbjpgU3RhcnQgLS0+IFJ1bmAsCit0eXBlIGBgcHl0aG9uYGAgYW5kIHByZXNzIGBgZW50ZXJgYC4gQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBzaW1wbHkgZXhlY3V0ZQorOmNvbW1hbmQ6YHB5dGhvbmAgYXQgYSBjb21tYW5kIHByb21wdCAoOm1lbnVzZWxlY3Rpb246YFN0YXJ0IC0tPiBBY2Nlc3Nvcmllc2ApCitvciBpbiBQb3dlcnNoZWxsLgorCitPbmNlIHRoZSBpbnRlcnByZXRlciBpcyBzdGFydGVkLCB5b3UgdHlwZSBQeXRob24gY29kZSBhdCB0aGUgcHJvbXB0LiBGb3IKK2V4YW1wbGUsIG9uIG15IExpbnV4IHN5c3RlbSwgSSB0eXBlIHRoZSB0aHJlZSBQeXRob24gc3RhdGVtZW50cyBzaG93biBiZWxvdywKK2FuZCBnZXQgdGhlIG91dHB1dCBhcyBzaG93biwgdG8gZmluZCBvdXQgbXkgOmZpbGU6YHtwcmVmaXh9YCBhbmQgOmZpbGU6YHtleGVjLXByZWZpeH1gOjoKKworICAgUHl0aG9uIDMuMyAocjMyOjg4NDQ1LCBBcHIgIDIgMjAxMSwgMTA6NDM6NTQpCisgICBUeXBlICJoZWxwIiwgImNvcHlyaWdodCIsICJjcmVkaXRzIiBvciAibGljZW5zZSIgZm9yIG1vcmUgaW5mb3JtYXRpb24uCisgICA+Pj4gaW1wb3J0IHN5cworICAgPj4+IHN5cy5wcmVmaXgKKyAgICcvdXNyJworICAgPj4+IHN5cy5leGVjX3ByZWZpeAorICAgJy91c3InCisKK0EgZmV3IG90aGVyIHBsYWNlaG9sZGVycyBhcmUgdXNlZCBpbiB0aGlzIGRvY3VtZW50OiA6ZmlsZTpge1guWX1gIHN0YW5kcyBmb3IgdGhlCit2ZXJzaW9uIG9mIFB5dGhvbiwgZm9yIGV4YW1wbGUgYGAzLjJgYDsgOmZpbGU6YHthYmlmbGFnc31gIHdpbGwgYmUgcmVwbGFjZWQgYnkKK3RoZSB2YWx1ZSBvZiA6ZGF0YTpgc3lzLmFiaWZsYWdzYCBvciB0aGUgZW1wdHkgc3RyaW5nIGZvciBwbGF0Zm9ybXMgd2hpY2ggZG9uJ3QKK2RlZmluZSBBQkkgZmxhZ3M7IDpmaWxlOmB7ZGlzdG5hbWV9YCB3aWxsIGJlIHJlcGxhY2VkIGJ5IHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUKK2Rpc3RyaWJ1dGlvbiBiZWluZyBpbnN0YWxsZWQuICBEb3RzIGFuZCBjYXBpdGFsaXphdGlvbiBhcmUgaW1wb3J0YW50IGluIHRoZQorcGF0aHM7IGZvciBleGFtcGxlLCBhIHZhbHVlIHRoYXQgdXNlcyBgYHB5dGhvbjMuMmBgIG9uIFVOSVggd2lsbCB0eXBpY2FsbHkgdXNlCitgYFB5dGhvbjMyYGAgb24gV2luZG93cy4KKworSWYgeW91IGRvbid0IHdhbnQgdG8gaW5zdGFsbCBtb2R1bGVzIHRvIHRoZSBzdGFuZGFyZCBsb2NhdGlvbiwgb3IgaWYgeW91IGRvbid0CitoYXZlIHBlcm1pc3Npb24gdG8gd3JpdGUgdGhlcmUsIHRoZW4geW91IG5lZWQgdG8gcmVhZCBhYm91dCBhbHRlcm5hdGUKK2luc3RhbGxhdGlvbnMgaW4gc2VjdGlvbiA6cmVmOmBwYWNrYWdpbmctYWx0LWluc3RhbGxgLiBJZiB5b3Ugd2FudCB0byBjdXN0b21pemUgeW91cgoraW5zdGFsbGF0aW9uIGRpcmVjdG9yaWVzIG1vcmUgaGVhdmlseSwgc2VlIHNlY3Rpb24gOnJlZjpgcGFja2FnaW5nLWN1c3RvbS1pbnN0YWxsYC4KKworCisuLiBfcGFja2FnaW5nLWFsdC1pbnN0YWxsOgorCitBbHRlcm5hdGUgaW5zdGFsbGF0aW9uCis9PT09PT09PT09PT09PT09PT09PT09CisKK09mdGVuLCBpdCBpcyBuZWNlc3Nhcnkgb3IgZGVzaXJhYmxlIHRvIGluc3RhbGwgbW9kdWxlcyB0byBhIGxvY2F0aW9uIG90aGVyIHRoYW4KK3RoZSBzdGFuZGFyZCBsb2NhdGlvbiBmb3IgdGhpcmQtcGFydHkgUHl0aG9uIG1vZHVsZXMuIEZvciBleGFtcGxlLCBvbiBhIFVuaXgKK3N5c3RlbSB5b3UgbWlnaHQgbm90IGhhdmUgcGVybWlzc2lvbiB0byB3cml0ZSB0byB0aGUgc3RhbmRhcmQgdGhpcmQtcGFydHkgbW9kdWxlCitkaXJlY3RvcnkuIE9yIHlvdSBtaWdodCB3aXNoIHRvIHRyeSBvdXQgYSBtb2R1bGUgYmVmb3JlIG1ha2luZyBpdCBhIHN0YW5kYXJkCitwYXJ0IG9mIHlvdXIgbG9jYWwgUHl0aG9uIGluc3RhbGxhdGlvbi4gVGhpcyBpcyBlc3BlY2lhbGx5IHRydWUgd2hlbiB1cGdyYWRpbmcKK2EgZGlzdHJpYnV0aW9uIGFscmVhZHkgcHJlc2VudDogeW91IHdhbnQgdG8gbWFrZSBzdXJlIHlvdXIgZXhpc3RpbmcgYmFzZSBvZgorc2NyaXB0cyBzdGlsbCB3b3JrcyB3aXRoIHRoZSBuZXcgdmVyc2lvbiBiZWZvcmUgYWN0dWFsbHkgdXBncmFkaW5nLgorCitUaGUgUGFja2FnaW5nIDpjb21tYW5kOmBpbnN0YWxsX2Rpc3RgIGNvbW1hbmQgaXMgZGVzaWduZWQgdG8gbWFrZSBpbnN0YWxsaW5nIG1vZHVsZQorZGlzdHJpYnV0aW9ucyB0byBhbiBhbHRlcm5hdGUgbG9jYXRpb24gc2ltcGxlIGFuZCBwYWlubGVzcy4gVGhlIGJhc2ljIGlkZWEgaXMKK3RoYXQgeW91IHN1cHBseSBhIGJhc2UgZGlyZWN0b3J5IGZvciB0aGUgaW5zdGFsbGF0aW9uLCBhbmQgdGhlCis6Y29tbWFuZDpgaW5zdGFsbF9kaXN0YCBjb21tYW5kIHBpY2tzIGEgc2V0IG9mIGRpcmVjdG9yaWVzIChjYWxsZWQgYW4gKmluc3RhbGxhdGlvbgorc2NoZW1lKikgdW5kZXIgdGhpcyBiYXNlIGRpcmVjdG9yeSBpbiB3aGljaCB0byBpbnN0YWxsIGZpbGVzLiBUaGUgZGV0YWlscworZGlmZmVyIGFjcm9zcyBwbGF0Zm9ybXMsIHNvIHJlYWQgd2hpY2hldmVyIG9mIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnMgYXBwbGllcyB0bworeW91LgorCitOb3RlIHRoYXQgdGhlIHZhcmlvdXMgYWx0ZXJuYXRlIGluc3RhbGxhdGlvbiBzY2hlbWVzIGFyZSBtdXR1YWxseSBleGNsdXNpdmU6IHlvdQorY2FuIHBhc3MgYGAtLXVzZXJgYCwgb3IgYGAtLWhvbWVgYCwgb3IgYGAtLXByZWZpeGBgIGFuZCBgYC0tZXhlYy1wcmVmaXhgYCwgb3IKK2BgLS1pbnN0YWxsLWJhc2VgYCBhbmQgYGAtLWluc3RhbGwtcGxhdGJhc2VgYCwgYnV0IHlvdSBjYW4ndCBtaXggZnJvbSB0aGVzZQorZ3JvdXBzLgorCisKKy4uIF9wYWNrYWdpbmctYWx0LWluc3RhbGwtdXNlcjoKKworQWx0ZXJuYXRlIGluc3RhbGxhdGlvbjogdGhlIHVzZXIgc2NoZW1lCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhpcyBzY2hlbWUgaXMgZGVzaWduZWQgdG8gYmUgdGhlIG1vc3QgY29udmVuaWVudCBzb2x1dGlvbiBmb3IgdXNlcnMgdGhhdCBkb24ndAoraGF2ZSB3cml0ZSBwZXJtaXNzaW9uIHRvIHRoZSBnbG9iYWwgc2l0ZS1wYWNrYWdlcyBkaXJlY3Rvcnkgb3IgZG9uJ3Qgd2FudCB0bworaW5zdGFsbCBpbnRvIGl0LiAgSXQgaXMgZW5hYmxlZCB3aXRoIGEgc2ltcGxlIG9wdGlvbjo6CisKKyAgIHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdCAtLXVzZXIKKworRmlsZXMgd2lsbCBiZSBpbnN0YWxsZWQgaW50byBzdWJkaXJlY3RvcmllcyBvZiA6ZGF0YTpgc2l0ZS5VU0VSX0JBU0VgICh3cml0dGVuCithcyA6ZmlsZTpge3VzZXJiYXNlfWAgaGVyZWFmdGVyKS4gIFRoaXMgc2NoZW1lIGluc3RhbGxzIHB1cmUgUHl0aG9uIG1vZHVsZXMgYW5kCitleHRlbnNpb24gbW9kdWxlcyBpbiB0aGUgc2FtZSBsb2NhdGlvbiAoYWxzbyBrbm93biBhcyA6ZGF0YTpgc2l0ZS5VU0VSX1NJVEVgKS4KK0hlcmUgYXJlIHRoZSB2YWx1ZXMgZm9yIFVOSVgsIGluY2x1ZGluZyBub24tZnJhbWV3b3JrIGJ1aWxkcyBvbiBNYWMgT1MgWDoKKworPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitUeXBlIG9mIGZpbGUgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQorPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cittb2R1bGVzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX0vbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgCitzY3JpcHRzICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX0vYmluYAorZGF0YSAgICAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9YAorQyBoZWFkZXJzICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9L2luY2x1ZGUvcHl0aG9ue1guWX1gCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworRnJhbWV3b3JrIGJ1aWxkcyBvbiBNYWMgT1MgWCB1c2UgdGhlc2UgcGF0aHM6CisKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorbW9kdWxlcyAgICAgICAgIDpmaWxlOmB7dXNlcmJhc2V9L2xpYi9weXRob24vc2l0ZS1wYWNrYWdlc2AKK3NjcmlwdHMgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfS9iaW5gCitkYXRhICAgICAgICAgICAgOmZpbGU6YHt1c2VyYmFzZX1gCitDIGhlYWRlcnMgICAgICAgOmZpbGU6YHt1c2VyYmFzZX0vaW5jbHVkZS9weXRob25gCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworQW5kIGhlcmUgYXJlIHRoZSB2YWx1ZXMgdXNlZCBvbiBXaW5kb3dzOgorCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1R5cGUgb2YgZmlsZSAgICBJbnN0YWxsYXRpb24gZGlyZWN0b3J5Cis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK21vZHVsZXMgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfVxcUHl0aG9ue1hZfVxcc2l0ZS1wYWNrYWdlc2AKK3NjcmlwdHMgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfVxcU2NyaXB0c2AKK2RhdGEgICAgICAgICAgICA6ZmlsZTpge3VzZXJiYXNlfWAKK0MgaGVhZGVycyAgICAgICA6ZmlsZTpge3VzZXJiYXNlfVxcUHl0aG9ue1hZfVxcSW5jbHVkZWAKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitUaGUgYWR2YW50YWdlIG9mIHVzaW5nIHRoaXMgc2NoZW1lIGNvbXBhcmVkIHRvIHRoZSBvdGhlciBvbmVzIGRlc2NyaWJlZCBiZWxvdyBpcwordGhhdCB0aGUgdXNlciBzaXRlLXBhY2thZ2VzIGRpcmVjdG9yeSBpcyB1bmRlciBub3JtYWwgY29uZGl0aW9ucyBhbHdheXMgaW5jbHVkZWQKK2luIDpkYXRhOmBzeXMucGF0aGAgKHNlZSA6bW9kOmBzaXRlYCBmb3IgbW9yZSBpbmZvcm1hdGlvbiksIHdoaWNoIG1lYW5zIHRoYXQKK3RoZXJlIGlzIG5vIGFkZGl0aW9uYWwgc3RlcCB0byBwZXJmb3JtIGFmdGVyIHJ1bm5pbmcgYGBweXNldHVwYGAgdG8gZmluYWxpemUgdGhlCitpbnN0YWxsYXRpb24uCisKK1RoZSA6Y29tbWFuZDpgYnVpbGRfZXh0YCBjb21tYW5kIGFsc28gaGFzIGEgYGAtLXVzZXJgYCBvcHRpb24gdG8gYWRkCis6ZmlsZTpge3VzZXJiYXNlfS9pbmNsdWRlYCB0byB0aGUgY29tcGlsZXIgc2VhcmNoIHBhdGggZm9yIGhlYWRlciBmaWxlcyBhbmQKKzpmaWxlOmB7dXNlcmJhc2V9L2xpYmAgdG8gdGhlIGNvbXBpbGVyIHNlYXJjaCBwYXRoIGZvciBsaWJyYXJpZXMgYXMgd2VsbCBhcyB0bwordGhlIHJ1bnRpbWUgc2VhcmNoIHBhdGggZm9yIHNoYXJlZCBDIGxpYnJhcmllcyAocnBhdGgpLgorCisKKy4uIF9wYWNrYWdpbmctYWx0LWluc3RhbGwtaG9tZToKKworQWx0ZXJuYXRlIGluc3RhbGxhdGlvbjogdGhlIGhvbWUgc2NoZW1lCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIGlkZWEgYmVoaW5kIHRoZSAiaG9tZSBzY2hlbWUiIGlzIHRoYXQgeW91IGJ1aWxkIGFuZCBtYWludGFpbiBhIHBlcnNvbmFsCitzdGFzaCBvZiBQeXRob24gbW9kdWxlcy4gVGhpcyBzY2hlbWUncyBuYW1lIGlzIGRlcml2ZWQgZnJvbSB0aGUgY29uY2VwdCBvZiBhCisiaG9tZSIgZGlyZWN0b3J5IG9uIFVuaXgsIHNpbmNlIGl0J3Mgbm90IHVudXN1YWwgZm9yIGEgVW5peCB1c2VyIHRvIG1ha2UgdGhlaXIKK2hvbWUgZGlyZWN0b3J5IGhhdmUgYSBsYXlvdXQgc2ltaWxhciB0byA6ZmlsZTpgL3Vzci9gIG9yIDpmaWxlOmAvdXNyL2xvY2FsL2AuCitJbiBzcGl0ZSBvZiBpdHMgbmFtZSdzIG9yaWdpbiwgdGhpcyBzY2hlbWUgY2FuIGJlIHVzZWQgYnkgYW55b25lLCByZWdhcmRsZXNzCitvZiB0aGUgb3BlcmF0aW5nIHN5c3RlbS4KKworSW5zdGFsbGluZyBhIG5ldyBtb2R1bGUgZGlzdHJpYnV0aW9uIGluIHRoaXMgd2F5IGlzIGFzIHNpbXBsZSBhcyA6OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QgLS1ob21lIDxkaXI+CisKK3doZXJlIHlvdSBjYW4gc3VwcGx5IGFueSBkaXJlY3RvcnkgeW91IGxpa2UgZm9yIHRoZSA6b3B0aW9uOmAtLWhvbWVgIG9wdGlvbi4gT24KK1VuaXgsIGxhenkgdHlwaXN0cyBjYW4ganVzdCB0eXBlIGEgdGlsZGUgKGBgfmBgKTsgdGhlIDpjb21tYW5kOmBpbnN0YWxsX2Rpc3RgIGNvbW1hbmQKK3dpbGwgZXhwYW5kIHRoaXMgdG8geW91ciBob21lIGRpcmVjdG9yeTo6CisKKyAgIHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdCAtLWhvbWUgfgorCitUbyBtYWtlIFB5dGhvbiBmaW5kIHRoZSBkaXN0cmlidXRpb25zIGluc3RhbGxlZCB3aXRoIHRoaXMgc2NoZW1lLCB5b3UgbWF5IGhhdmUKK3RvIDpyZWY6YG1vZGlmeSBQeXRob24ncyBzZWFyY2ggcGF0aCA8aW5zdC1zZWFyY2gtcGF0aD5gIG9yIGVkaXQKKzptb2Q6YHNpdGVjdXN0b21pemVgIChzZWUgOm1vZDpgc2l0ZWApIHRvIGNhbGwgOmZ1bmM6YHNpdGUuYWRkc2l0ZWRpcmAgb3IgZWRpdAorOmRhdGE6YHN5cy5wYXRoYC4KKworVGhlIDpvcHRpb246YC0taG9tZWAgb3B0aW9uIGRlZmluZXMgdGhlIGJhc2UgZGlyZWN0b3J5IGZvciB0aGUgaW5zdGFsbGF0aW9uLgorVW5kZXIgaXQsIGZpbGVzIGFyZSBpbnN0YWxsZWQgdG8gdGhlIGZvbGxvd2luZyBkaXJlY3RvcmllczoKKworPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitUeXBlIG9mIGZpbGUgICAgSW5zdGFsbGF0aW9uIGRpcmVjdG9yeQorPT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cittb2R1bGVzICAgICAgICAgOmZpbGU6YHtob21lfS9saWIvcHl0aG9uYAorc2NyaXB0cyAgICAgICAgIDpmaWxlOmB7aG9tZX0vYmluYAorZGF0YSAgICAgICAgICAgIDpmaWxlOmB7aG9tZX1gCitDIGhlYWRlcnMgICAgICAgOmZpbGU6YHtob21lfS9pbmNsdWRlL3B5dGhvbmAKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisoTWVudGFsbHkgcmVwbGFjZSBzbGFzaGVzIHdpdGggYmFja3NsYXNoZXMgaWYgeW91J3JlIG9uIFdpbmRvd3MuKQorCisKKy4uIF9wYWNrYWdpbmctYWx0LWluc3RhbGwtcHJlZml4LXVuaXg6CisKK0FsdGVybmF0ZSBpbnN0YWxsYXRpb246IFVuaXggKHRoZSBwcmVmaXggc2NoZW1lKQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSAicHJlZml4IHNjaGVtZSIgaXMgdXNlZnVsIHdoZW4geW91IHdpc2ggdG8gdXNlIG9uZSBQeXRob24gaW5zdGFsbGF0aW9uIHRvCitydW4gdGhlIGJ1aWxkIGNvbW1hbmQsIGJ1dCBpbnN0YWxsIG1vZHVsZXMgaW50byB0aGUgdGhpcmQtcGFydHkgbW9kdWxlIGRpcmVjdG9yeQorb2YgYSBkaWZmZXJlbnQgUHl0aG9uIGluc3RhbGxhdGlvbiAob3Igc29tZXRoaW5nIHRoYXQgbG9va3MgbGlrZSBhIGRpZmZlcmVudAorUHl0aG9uIGluc3RhbGxhdGlvbikuIElmIHRoaXMgc291bmRzIGEgdHJpZmxlIHVudXN1YWwsIGl0IGlzIC0tLXRoYXQncyB3aHkgdGhlCit1c2VyIGFuZCBob21lIHNjaGVtZXMgY29tZSBiZWZvcmUuIEhvd2V2ZXIsIHRoZXJlIGFyZSBhdCBsZWFzdCB0d28ga25vd24gY2FzZXMKK3doZXJlIHRoZSBwcmVmaXggc2NoZW1lIHdpbGwgYmUgdXNlZnVsLgorCitGaXJzdCwgY29uc2lkZXIgdGhhdCBtYW55IExpbnV4IGRpc3RyaWJ1dGlvbnMgcHV0IFB5dGhvbiBpbiA6ZmlsZTpgL3VzcmAsIHJhdGhlcgordGhhbiB0aGUgbW9yZSB0cmFkaXRpb25hbCA6ZmlsZTpgL3Vzci9sb2NhbGAuIFRoaXMgaXMgZW50aXJlbHkgYXBwcm9wcmlhdGUsCitzaW5jZSBpbiB0aG9zZSBjYXNlcyBQeXRob24gaXMgcGFydCBvZiAidGhlIHN5c3RlbSIgcmF0aGVyIHRoYW4gYSBsb2NhbCBhZGQtb24uCitIb3dldmVyLCBpZiB5b3UgYXJlIGluc3RhbGxpbmcgUHl0aG9uIG1vZHVsZXMgZnJvbSBzb3VyY2UsIHlvdSBwcm9iYWJseSB3YW50Cit0aGVtIHRvIGdvIGluIDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob24yLntYfWAgcmF0aGVyIHRoYW4KKzpmaWxlOmAvdXNyL2xpYi9weXRob24yLntYfWAuIFRoaXMgY2FuIGJlIGRvbmUgd2l0aCA6OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QgLS1wcmVmaXggL3Vzci9sb2NhbAorCitBbm90aGVyIHBvc3NpYmlsaXR5IGlzIGEgbmV0d29yayBmaWxlc3lzdGVtIHdoZXJlIHRoZSBuYW1lIHVzZWQgdG8gd3JpdGUgdG8gYQorcmVtb3RlIGRpcmVjdG9yeSBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgbmFtZSB1c2VkIHRvIHJlYWQgaXQ6IGZvciBleGFtcGxlLCB0aGUKK1B5dGhvbiBpbnRlcnByZXRlciBhY2Nlc3NlZCBhcyA6ZmlsZTpgL3Vzci9sb2NhbC9iaW4vcHl0aG9uYCBtaWdodCBzZWFyY2ggZm9yCittb2R1bGVzIGluIDpmaWxlOmAvdXNyL2xvY2FsL2xpYi9weXRob24yLntYfWAsIGJ1dCB0aG9zZSBtb2R1bGVzIHdvdWxkIGhhdmUgdG8KK2JlIGluc3RhbGxlZCB0bywgc2F5LCA6ZmlsZTpgL21udC97QHNlcnZlcn0vZXhwb3J0L2xpYi9weXRob24yLntYfWAuIFRoaXMgY291bGQKK2JlIGRvbmUgd2l0aCA6OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QgLS1wcmVmaXg9L21udC9Ac2VydmVyL2V4cG9ydAorCitJbiBlaXRoZXIgY2FzZSwgdGhlIDpvcHRpb246YC0tcHJlZml4YCBvcHRpb24gZGVmaW5lcyB0aGUgaW5zdGFsbGF0aW9uIGJhc2UsIGFuZAordGhlIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgIG9wdGlvbiBkZWZpbmVzIHRoZSBwbGF0Zm9ybS1zcGVjaWZpYyBpbnN0YWxsYXRpb24KK2Jhc2UsIHdoaWNoIGlzIHVzZWQgZm9yIHBsYXRmb3JtLXNwZWNpZmljIGZpbGVzLiAoQ3VycmVudGx5LCB0aGlzIGp1c3QgbWVhbnMKK25vbi1wdXJlIG1vZHVsZSBkaXN0cmlidXRpb25zLCBidXQgY291bGQgYmUgZXhwYW5kZWQgdG8gQyBsaWJyYXJpZXMsIGJpbmFyeQorZXhlY3V0YWJsZXMsIGV0Yy4pIElmIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgIGlzIG5vdCBzdXBwbGllZCwgaXQgZGVmYXVsdHMgdG8KKzpvcHRpb246YC0tcHJlZml4YC4gRmlsZXMgYXJlIGluc3RhbGxlZCBhcyBmb2xsb3dzOgorCis9PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitUeXBlIG9mIGZpbGUgICAgICBJbnN0YWxsYXRpb24gZGlyZWN0b3J5Cis9PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitQeXRob24gbW9kdWxlcyAgICA6ZmlsZTpge3ByZWZpeH0vbGliL3B5dGhvbntYLll9L3NpdGUtcGFja2FnZXNgCitleHRlbnNpb24gbW9kdWxlcyA6ZmlsZTpge2V4ZWMtcHJlZml4fS9saWIvcHl0aG9ue1guWX0vc2l0ZS1wYWNrYWdlc2AKK3NjcmlwdHMgICAgICAgICAgIDpmaWxlOmB7cHJlZml4fS9iaW5gCitkYXRhICAgICAgICAgICAgICA6ZmlsZTpge3ByZWZpeH1gCitDIGhlYWRlcnMgICAgICAgICA6ZmlsZTpge3ByZWZpeH0vaW5jbHVkZS9weXRob257WC5ZfXthYmlmbGFnc31gCis9PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIFhYWCBtaXNzZXMgYW4gZW50cnkgZm9yIHBsYXRpbmNsdWRlCisKK1RoZXJlIGlzIG5vIHJlcXVpcmVtZW50IHRoYXQgOm9wdGlvbjpgLS1wcmVmaXhgIG9yIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgCithY3R1YWxseSBwb2ludCB0byBhbiBhbHRlcm5hdGUgUHl0aG9uIGluc3RhbGxhdGlvbjsgaWYgdGhlIGRpcmVjdG9yaWVzIGxpc3RlZAorYWJvdmUgZG8gbm90IGFscmVhZHkgZXhpc3QsIHRoZXkgYXJlIGNyZWF0ZWQgYXQgaW5zdGFsbGF0aW9uIHRpbWUuCisKK0luY2lkZW50YWxseSwgdGhlIHJlYWwgcmVhc29uIHRoZSBwcmVmaXggc2NoZW1lIGlzIGltcG9ydGFudCBpcyBzaW1wbHkgdGhhdCBhCitzdGFuZGFyZCBVbml4IGluc3RhbGxhdGlvbiB1c2VzIHRoZSBwcmVmaXggc2NoZW1lLCBidXQgd2l0aCA6b3B0aW9uOmAtLXByZWZpeGAKK2FuZCA6b3B0aW9uOmAtLWV4ZWMtcHJlZml4YCBzdXBwbGllZCBieSBQeXRob24gaXRzZWxmIGFzIGBgc3lzLnByZWZpeGBgIGFuZAorYGBzeXMuZXhlY19wcmVmaXhgYC4gVGh1cywgeW91IG1pZ2h0IHRoaW5rIHlvdSdsbCBuZXZlciB1c2UgdGhlIHByZWZpeCBzY2hlbWUsCitidXQgZXZlcnkgdGltZSB5b3UgcnVuIGBgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0YGAgd2l0aG91dCBhbnkgb3RoZXIKK29wdGlvbnMsIHlvdSdyZSB1c2luZyBpdC4KKworTm90ZSB0aGF0IGluc3RhbGxpbmcgZXh0ZW5zaW9ucyB0byBhbiBhbHRlcm5hdGUgUHl0aG9uIGluc3RhbGxhdGlvbiBkb2Vzbid0IGhhdmUKK2FueXRoaW5nIHRvIGRvIHdpdGggaG93IHRob3NlIGV4dGVuc2lvbnMgYXJlIGJ1aWx0OiBpbiBwYXJ0aWN1bGFyLCBleHRlbnNpb25zCit3aWxsIGJlIGNvbXBpbGVkIHVzaW5nIHRoZSBQeXRob24gaGVhZGVyIGZpbGVzICg6ZmlsZTpgUHl0aG9uLmhgIGFuZCBmcmllbmRzKQoraW5zdGFsbGVkIHdpdGggdGhlIFB5dGhvbiBpbnRlcnByZXRlciB1c2VkIHRvIHJ1biB0aGUgYnVpbGQgY29tbWFuZC4gSXQgaXMKK3RoZXJlZm9yZSB5b3VyIHJlc3BvbnNpYmlsaXR5IHRvIGVuc3VyZSBjb21wYXRpYmlsaXR5IGJldHdlZW4gdGhlIGludGVycHJldGVyCitpbnRlbmRlZCB0byBydW4gZXh0ZW5zaW9ucyBpbnN0YWxsZWQgaW4gdGhpcyB3YXkgYW5kIHRoZSBpbnRlcnByZXRlciB1c2VkIHRvCitidWlsZCB0aGVzZSBzYW1lIGV4dGVuc2lvbnMuIFRvIGF2b2lkIHByb2JsZW1zLCBpdCBpcyBiZXN0IHRvIG1ha2Ugc3VyZSB0aGF0Cit0aGUgdHdvIGludGVycHJldGVycyBhcmUgdGhlIHNhbWUgdmVyc2lvbiBvZiBQeXRob24gKHBvc3NpYmx5IGRpZmZlcmVudCBidWlsZHMsCitvciBwb3NzaWJseSBjb3BpZXMgb2YgdGhlIHNhbWUgYnVpbGQpLiAoT2YgY291cnNlLCBpZiB5b3VyIDpvcHRpb246YC0tcHJlZml4YAorYW5kIDpvcHRpb246YC0tZXhlYy1wcmVmaXhgIGRvbid0IGV2ZW4gcG9pbnQgdG8gYW4gYWx0ZXJuYXRlIFB5dGhvbiBpbnN0YWxsYXRpb24sCit0aGlzIGlzIGltbWF0ZXJpYWwuKQorCisKKy4uIF9wYWNrYWdpbmctYWx0LWluc3RhbGwtcHJlZml4LXdpbmRvd3M6CisKK0FsdGVybmF0ZSBpbnN0YWxsYXRpb246IFdpbmRvd3MgKHRoZSBwcmVmaXggc2NoZW1lKQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1dpbmRvd3MgaGFzIGEgZGlmZmVyZW50IGFuZCB2YWd1ZXIgbm90aW9uIG9mIGhvbWUgZGlyZWN0b3JpZXMgdGhhbiBVbml4LCBhbmQKK3NpbmNlIGl0cyBzdGFuZGFyZCBQeXRob24gaW5zdGFsbGF0aW9uIGlzIHNpbXBsZXIsIHRoZSA6b3B0aW9uOmAtLXByZWZpeGAgb3B0aW9uCitoYXMgdHJhZGl0aW9uYWxseSBiZWVuIHVzZWQgdG8gaW5zdGFsbCBhZGRpdGlvbmFsIHBhY2thZ2VzIHRvIGFyYml0cmFyeQorbG9jYXRpb25zLiA6OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QgLS1wcmVmaXggIlxUZW1wXFB5dGhvbiIKKwordG8gaW5zdGFsbCBtb2R1bGVzIHRvIHRoZSA6ZmlsZTpgXFxUZW1wXFxQeXRob25gIGRpcmVjdG9yeSBvbiB0aGUgY3VycmVudCBkcml2ZS4KKworVGhlIGluc3RhbGxhdGlvbiBiYXNlIGlzIGRlZmluZWQgYnkgdGhlIDpvcHRpb246YC0tcHJlZml4YCBvcHRpb247IHRoZQorOm9wdGlvbjpgLS1leGVjLXByZWZpeGAgb3B0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgdW5kZXIgV2luZG93cywgd2hpY2ggbWVhbnMgdGhhdAorcHVyZSBQeXRob24gbW9kdWxlcyBhbmQgZXh0ZW5zaW9uIG1vZHVsZXMgYXJlIGluc3RhbGxlZCBpbnRvIHRoZSBzYW1lIGxvY2F0aW9uLgorRmlsZXMgYXJlIGluc3RhbGxlZCBhcyBmb2xsb3dzOgorCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgIEluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKz09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cittb2R1bGVzICAgICAgICAgOmZpbGU6YHtwcmVmaXh9XFxMaWJcXHNpdGUtcGFja2FnZXNgCitzY3JpcHRzICAgICAgICAgOmZpbGU6YHtwcmVmaXh9XFxTY3JpcHRzYAorZGF0YSAgICAgICAgICAgIDpmaWxlOmB7cHJlZml4fWAKK0MgaGVhZGVycyAgICAgICA6ZmlsZTpge3ByZWZpeH1cXEluY2x1ZGVgCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisKKy4uIF9wYWNrYWdpbmctY3VzdG9tLWluc3RhbGw6CisKK0N1c3RvbSBpbnN0YWxsYXRpb24KKz09PT09PT09PT09PT09PT09PT0KKworU29tZXRpbWVzLCB0aGUgYWx0ZXJuYXRlIGluc3RhbGxhdGlvbiBzY2hlbWVzIGRlc2NyaWJlZCBpbiBzZWN0aW9uCis6cmVmOmBwYWNrYWdpbmctYWx0LWluc3RhbGxgIGp1c3QgZG9uJ3QgZG8gd2hhdCB5b3Ugd2FudC4gWW91IG1pZ2h0IHdhbnQgdG8gdHdlYWsKK2p1c3Qgb25lIG9yIHR3byBkaXJlY3RvcmllcyB3aGlsZSBrZWVwaW5nIGV2ZXJ5dGhpbmcgdW5kZXIgdGhlIHNhbWUgYmFzZQorZGlyZWN0b3J5LCBvciB5b3UgbWlnaHQgd2FudCB0byBjb21wbGV0ZWx5IHJlZGVmaW5lIHRoZSBpbnN0YWxsYXRpb24gc2NoZW1lLgorSW4gZWl0aGVyIGNhc2UsIHlvdSdyZSBjcmVhdGluZyBhICpjdXN0b20gaW5zdGFsbGF0aW9uIHNjaGVtZSouCisKK1RvIGNyZWF0ZSBhIGN1c3RvbSBpbnN0YWxsYXRpb24gc2NoZW1lLCB5b3Ugc3RhcnQgd2l0aCBvbmUgb2YgdGhlIGFsdGVybmF0ZQorc2NoZW1lcyBhbmQgb3ZlcnJpZGUgc29tZSBvZiB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yaWVzIHVzZWQgZm9yIHRoZSB2YXJpb3VzCit0eXBlcyBvZiBmaWxlcywgdXNpbmcgdGhlc2Ugb3B0aW9uczoKKworPT09PT09PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PQorVHlwZSBvZiBmaWxlICAgICAgICAgICBPdmVycmlkZSBvcHRpb24KKz09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT0KK1B5dGhvbiBtb2R1bGVzICAgICAgICAgYGAtLWluc3RhbGwtcHVyZWxpYmBgCitleHRlbnNpb24gbW9kdWxlcyAgICAgIGBgLS1pbnN0YWxsLXBsYXRsaWJgYAorYWxsIG1vZHVsZXMgICAgICAgICAgICBgYC0taW5zdGFsbC1saWJgYAorc2NyaXB0cyAgICAgICAgICAgICAgICBgYC0taW5zdGFsbC1zY3JpcHRzYGAKK2RhdGEgICAgICAgICAgICAgICAgICAgYGAtLWluc3RhbGwtZGF0YWBgCitDIGhlYWRlcnMgICAgICAgICAgICAgIGBgLS1pbnN0YWxsLWhlYWRlcnNgYAorPT09PT09PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PQorCitUaGVzZSBvdmVycmlkZSBvcHRpb25zIGNhbiBiZSByZWxhdGl2ZSwgYWJzb2x1dGUsCitvciBleHBsaWNpdGx5IGRlZmluZWQgaW4gdGVybXMgb2Ygb25lIG9mIHRoZSBpbnN0YWxsYXRpb24gYmFzZSBkaXJlY3Rvcmllcy4KKyhUaGVyZSBhcmUgdHdvIGluc3RhbGxhdGlvbiBiYXNlIGRpcmVjdG9yaWVzLCBhbmQgdGhleSBhcmUgbm9ybWFsbHkgdGhlIHNhbWUKKy0tLXRoZXkgb25seSBkaWZmZXIgd2hlbiB5b3UgdXNlIHRoZSBVbml4ICJwcmVmaXggc2NoZW1lIiBhbmQgc3VwcGx5IGRpZmZlcmVudAorYGAtLXByZWZpeGBgIGFuZCBgYC0tZXhlYy1wcmVmaXhgYCBvcHRpb25zOyB1c2luZyBgYC0taW5zdGFsbC1saWJgYCB3aWxsCitvdmVycmlkZSB2YWx1ZXMgY29tcHV0ZWQgb3IgZ2l2ZW4gZm9yIGBgLS1pbnN0YWxsLXB1cmVsaWJgYCBhbmQKK2BgLS1pbnN0YWxsLXBsYXRsaWJgYCwgYW5kIGlzIHJlY29tbWVuZGVkIGZvciBzY2hlbWVzIHRoYXQgZG9uJ3QgbWFrZSBhCitkaWZmZXJlbmNlIGJldHdlZW4gUHl0aG9uIGFuZCBleHRlbnNpb24gbW9kdWxlcy4pCisKK0ZvciBleGFtcGxlLCBzYXkgeW91J3JlIGluc3RhbGxpbmcgYSBtb2R1bGUgZGlzdHJpYnV0aW9uIHRvIHlvdXIgaG9tZSBkaXJlY3RvcnkKK3VuZGVyIFVuaXgsIGJ1dCB5b3Ugd2FudCBzY3JpcHRzIHRvIGdvIGluIDpmaWxlOmB+L3NjcmlwdHNgIHJhdGhlciB0aGFuCis6ZmlsZTpgfi9iaW5gLiBBcyB5b3UgbWlnaHQgZXhwZWN0LCB5b3UgY2FuIG92ZXJyaWRlIHRoaXMgZGlyZWN0b3J5IHdpdGggdGhlCis6b3B0aW9uOmAtLWluc3RhbGwtc2NyaXB0c2Agb3B0aW9uIGFuZCwgaW4gdGhpcyBjYXNlLCBpdCBtYWtlcyBtb3N0IHNlbnNlIHRvIHN1cHBseQorYSByZWxhdGl2ZSBwYXRoLCB3aGljaCB3aWxsIGJlIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBpbnN0YWxsYXRpb24gYmFzZQorZGlyZWN0b3J5IChpbiBvdXIgZXhhbXBsZSwgeW91ciBob21lIGRpcmVjdG9yeSk6OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QgLS1ob21lIH4gLS1pbnN0YWxsLXNjcmlwdHMgc2NyaXB0cworCitBbm90aGVyIFVuaXggZXhhbXBsZTogc3VwcG9zZSB5b3VyIFB5dGhvbiBpbnN0YWxsYXRpb24gd2FzIGJ1aWx0IGFuZCBpbnN0YWxsZWQKK3dpdGggYSBwcmVmaXggb2YgOmZpbGU6YC91c3IvbG9jYWwvcHl0aG9uYC4gVGh1cywgaW4gYSBzdGFuZGFyZCBpbnN0YWxsYXRpb24sCitzY3JpcHRzIHdpbGwgd2luZCB1cCBpbiA6ZmlsZTpgL3Vzci9sb2NhbC9weXRob24vYmluYC4gSWYgeW91IHdhbnQgdGhlbSBpbgorOmZpbGU6YC91c3IvbG9jYWwvYmluYCBpbnN0ZWFkLCB5b3Ugd291bGQgc3VwcGx5IHRoaXMgYWJzb2x1dGUgZGlyZWN0b3J5IGZvcgordGhlIDpvcHRpb246YC0taW5zdGFsbC1zY3JpcHRzYCBvcHRpb246OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QgLS1pbnN0YWxsLXNjcmlwdHMgL3Vzci9sb2NhbC9iaW4KKworVGhpcyBjb21tYW5kIHBlcmZvcm1zIGFuIGluc3RhbGxhdGlvbiB1c2luZyB0aGUgInByZWZpeCBzY2hlbWUiLCB3aGVyZSB0aGUKK3ByZWZpeCBpcyB3aGF0ZXZlciB5b3VyIFB5dGhvbiBpbnRlcnByZXRlciB3YXMgaW5zdGFsbGVkIHdpdGggLS0taW4gdGhpcyBjYXNlLAorOmZpbGU6YC91c3IvbG9jYWwvcHl0aG9uYC4KKworSWYgeW91IG1haW50YWluIFB5dGhvbiBvbiBXaW5kb3dzLCB5b3UgbWlnaHQgd2FudCB0aGlyZC1wYXJ0eSBtb2R1bGVzIHRvIGxpdmUgaW4KK2Egc3ViZGlyZWN0b3J5IG9mIDpmaWxlOmB7cHJlZml4fWAsIHJhdGhlciB0aGFuIHJpZ2h0IGluIDpmaWxlOmB7cHJlZml4fWAKK2l0c2VsZi4gVGhpcyBpcyBhbG1vc3QgYXMgZWFzeSBhcyBjdXN0b21pemluZyB0aGUgc2NyaXB0IGluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKy0tLXlvdSBqdXN0IGhhdmUgdG8gcmVtZW1iZXIgdGhhdCB0aGVyZSBhcmUgdHdvIHR5cGVzIG9mIG1vZHVsZXMgdG8gd29ycnkgYWJvdXQsCitQeXRob24gYW5kIGV4dGVuc2lvbiBtb2R1bGVzLCB3aGljaCBjYW4gY29udmVuaWVudGx5IGJlIGJvdGggY29udHJvbGxlZCBieSBvbmUKK29wdGlvbjo6CisKKyAgIHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdCAtLWluc3RhbGwtbGliIFNpdGUKKworLi4gWFhYIE5vdGhpbmcgaXMgaW5zdGFsbGVkIHJpZ2h0IHVuZGVyIHByZWZpeCBpbiB3aW5kb3dzLCBpcyBpdD8/CisKK1RoZSBzcGVjaWZpZWQgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBpcyByZWxhdGl2ZSB0byA6ZmlsZTpge3ByZWZpeH1gLiAgT2YKK2NvdXJzZSwgeW91IGFsc28gaGF2ZSB0byBlbnN1cmUgdGhhdCB0aGlzIGRpcmVjdG9yeSBpcyBpbiBQeXRob24ncyBtb2R1bGUKK3NlYXJjaCBwYXRoLCBzdWNoIGFzIGJ5IHB1dHRpbmcgYSA6ZmlsZTpgLnB0aGAgZmlsZSBpbiBhIHNpdGUgZGlyZWN0b3J5IChzZWUKKzptb2Q6YHNpdGVgKS4gIFNlZSBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1zZWFyY2gtcGF0aGAgdG8gZmluZCBvdXQgaG93IHRvIG1vZGlmeQorUHl0aG9uJ3Mgc2VhcmNoIHBhdGguCisKK0lmIHlvdSB3YW50IHRvIGRlZmluZSBhbiBlbnRpcmUgaW5zdGFsbGF0aW9uIHNjaGVtZSwgeW91IGp1c3QgaGF2ZSB0byBzdXBwbHkgYWxsCitvZiB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBvcHRpb25zLiBVc2luZyByZWxhdGl2ZSBwYXRocyBpcyByZWNvbW1lbmRlZCBoZXJlLgorRm9yIGV4YW1wbGUsIGlmIHlvdSB3YW50IHRvIG1haW50YWluIGFsbCBQeXRob24gbW9kdWxlLXJlbGF0ZWQgZmlsZXMgdW5kZXIKKzpmaWxlOmBweXRob25gIGluIHlvdXIgaG9tZSBkaXJlY3RvcnksIGFuZCB5b3Ugd2FudCBhIHNlcGFyYXRlIGRpcmVjdG9yeSBmb3IKK2VhY2ggcGxhdGZvcm0gdGhhdCB5b3UgdXNlIHlvdXIgaG9tZSBkaXJlY3RvcnkgZnJvbSwgeW91IG1pZ2h0IGRlZmluZSB0aGUKK2ZvbGxvd2luZyBpbnN0YWxsYXRpb24gc2NoZW1lOjoKKworICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0IC0taG9tZSB+IFwKKyAgICAgICAtLWluc3RhbGwtcHVyZWxpYiBweXRob24vbGliIFwKKyAgICAgICAtLWluc3RhbGwtcGxhdGxpYiBweXRob24vJ2xpYi4kUExBVCcgXAorICAgICAgIC0taW5zdGFsbC1zY3JpcHRzIHB5dGhvbi9zY3JpcHRzIFwKKyAgICAgICAtLWluc3RhbGwtZGF0YSBweXRob24vZGF0YQorCitvciwgZXF1aXZhbGVudGx5LCA6OgorCisgICBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QgLS1ob21lIH4vcHl0aG9uIFwKKyAgICAgICAtLWluc3RhbGwtcHVyZWxpYiBsaWIgXAorICAgICAgIC0taW5zdGFsbC1wbGF0bGliICdsaWIuJFBMQVQnIFwKKyAgICAgICAtLWluc3RhbGwtc2NyaXB0cyBzY3JpcHRzIFwKKyAgICAgICAtLWluc3RhbGwtZGF0YSBkYXRhCisKK2BgJFBMQVRgYCBkb2Vzbid0IG5lZWQgdG8gYmUgZGVmaW5lZCBhcyBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSAtLS1pdCB3aWxsIGFsc28KK2JlIGV4cGFuZGVkIGJ5IFBhY2thZ2luZyBhcyBpdCBwYXJzZXMgeW91ciBjb21tYW5kIGxpbmUgb3B0aW9ucywganVzdCBhcyBpdAorZG9lcyB3aGVuIHBhcnNpbmcgeW91ciBjb25maWd1cmF0aW9uIGZpbGUocykuIChNb3JlIG9uIHRoYXQgbGF0ZXIuKQorCitPYnZpb3VzbHksIHNwZWNpZnlpbmcgdGhlIGVudGlyZSBpbnN0YWxsYXRpb24gc2NoZW1lIGV2ZXJ5IHRpbWUgeW91IGluc3RhbGwgYQorbmV3IG1vZHVsZSBkaXN0cmlidXRpb24gd291bGQgYmUgdmVyeSB0ZWRpb3VzLiBUbyBzcGFyZSB5b3UgYWxsIHRoYXQgd29yaywgeW91CitjYW4gc3RvcmUgaXQgaW4gYSBQYWNrYWdpbmcgY29uZmlndXJhdGlvbiBmaWxlIGluc3RlYWQgKHNlZSBzZWN0aW9uCis6cmVmOmBwYWNrYWdpbmctY29uZmlnLWZpbGVzYCksIGxpa2Ugc286OgorCisgICBbaW5zdGFsbF9kaXN0XQorICAgaW5zdGFsbC1iYXNlID0gJEhPTUUKKyAgIGluc3RhbGwtcHVyZWxpYiA9IHB5dGhvbi9saWIKKyAgIGluc3RhbGwtcGxhdGxpYiA9IHB5dGhvbi9saWIuJFBMQVQKKyAgIGluc3RhbGwtc2NyaXB0cyA9IHB5dGhvbi9zY3JpcHRzCisgICBpbnN0YWxsLWRhdGEgPSBweXRob24vZGF0YQorCitvciwgZXF1aXZhbGVudGx5LCA6OgorCisgICBbaW5zdGFsbF9kaXN0XQorICAgaW5zdGFsbC1iYXNlID0gJEhPTUUvcHl0aG9uCisgICBpbnN0YWxsLXB1cmVsaWIgPSBsaWIKKyAgIGluc3RhbGwtcGxhdGxpYiA9IGxpYi4kUExBVAorICAgaW5zdGFsbC1zY3JpcHRzID0gc2NyaXB0cworICAgaW5zdGFsbC1kYXRhID0gZGF0YQorCitOb3RlIHRoYXQgdGhlc2UgdHdvIGFyZSAqbm90KiBlcXVpdmFsZW50IGlmIHlvdSBvdmVycmlkZSB0aGVpciBpbnN0YWxsYXRpb24KK2Jhc2UgZGlyZWN0b3J5IHdoZW4gcnVubmluZyB0aGUgc2V0dXAgc2NyaXB0LiBGb3IgZXhhbXBsZSwgOjoKKworICAgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0IC0taW5zdGFsbC1iYXNlIC90bXAKKword291bGQgaW5zdGFsbCBwdXJlIG1vZHVsZXMgdG8gOmZpbGU6YC90bXAvcHl0aG9uL2xpYmAgaW4gdGhlIGZpcnN0IGNhc2UsIGFuZAordG8gOmZpbGU6YC90bXAvbGliYCBpbiB0aGUgc2Vjb25kIGNhc2UuIChGb3IgdGhlIHNlY29uZCBjYXNlLCB5b3UnZCBwcm9iYWJseQord2FudCB0byBzdXBwbHkgYW4gaW5zdGFsbGF0aW9uIGJhc2Ugb2YgOmZpbGU6YC90bXAvcHl0aG9uYC4pCisKK1lvdSBtYXkgaGF2ZSBub3RpY2VkIHRoZSB1c2Ugb2YgYGAkSE9NRWBgIGFuZCBgYCRQTEFUYGAgaW4gdGhlIHNhbXBsZQorY29uZmlndXJhdGlvbiBmaWxlLiBUaGVzZSBhcmUgUGFja2FnaW5nIGNvbmZpZ3VyYXRpb24gdmFyaWFibGVzLCB3aGljaAorYmVhciBhIHN0cm9uZyByZXNlbWJsYW5jZSB0byBlbnZpcm9ubWVudCB2YXJpYWJsZXMuIEluIGZhY3QsIHlvdSBjYW4gdXNlCitlbnZpcm9ubWVudCB2YXJpYWJsZXMgaW4gY29uZmlndXJhdGlvbiBmaWxlcyBvbiBwbGF0Zm9ybXMgdGhhdCBoYXZlIHN1Y2ggYSBub3Rpb24sIGJ1dAorUGFja2FnaW5nIGFkZGl0aW9uYWxseSBkZWZpbmVzIGEgZmV3IGV4dHJhIHZhcmlhYmxlcyB0aGF0IG1heSBub3QgYmUgaW4geW91cgorZW52aXJvbm1lbnQsIHN1Y2ggYXMgYGAkUExBVGBgLiBPZiBjb3Vyc2UsIG9uIHN5c3RlbXMgdGhhdCBkb24ndCBoYXZlCitlbnZpcm9ubWVudCB2YXJpYWJsZXMsIHN1Y2ggYXMgTWFjIE9TIDksIHRoZSBjb25maWd1cmF0aW9uIHZhcmlhYmxlcyBzdXBwbGllZCBieQordGhlIFBhY2thZ2luZyBhcmUgdGhlIG9ubHkgb25lcyB5b3UgY2FuIHVzZS4gU2VlIHNlY3Rpb24gOnJlZjpgcGFja2FnaW5nLWNvbmZpZy1maWxlc2AKK2ZvciBkZXRhaWxzLgorCisuLiBYWFggd2hpY2ggdmFycyB3aW4gb3V0IGV2ZW50dWFsbHkgaW4gY2FzZSBvZiBjbGFzaCBlbnYgb3IgUGFja2FnaW5nPworCisuLiBYWFggbmVlZCBzb21lIFdpbmRvd3MgZXhhbXBsZXMtLS13aGVuIHdvdWxkIGN1c3RvbSBpbnN0YWxsYXRpb24gc2NoZW1lcyBiZQorICAgbmVlZGVkIG9uIHRob3NlIHBsYXRmb3Jtcz8KKworCisuLiBYWFggTW92ZSB0aGlzIHNlY3Rpb24gdG8gRG9jL3VzaW5nCisKKy4uIF9wYWNrYWdpbmctc2VhcmNoLXBhdGg6CisKK01vZGlmeWluZyBQeXRob24ncyBzZWFyY2ggcGF0aAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1doZW4gdGhlIFB5dGhvbiBpbnRlcnByZXRlciBleGVjdXRlcyBhbiA6a2V5d29yZDpgaW1wb3J0YCBzdGF0ZW1lbnQsIGl0IHNlYXJjaGVzCitmb3IgYm90aCBQeXRob24gY29kZSBhbmQgZXh0ZW5zaW9uIG1vZHVsZXMgYWxvbmcgYSBzZWFyY2ggcGF0aC4gQSBkZWZhdWx0IHZhbHVlCitmb3IgdGhpcyBwYXRoIGlzIGNvbmZpZ3VyZWQgaW50byB0aGUgUHl0aG9uIGJpbmFyeSB3aGVuIHRoZSBpbnRlcnByZXRlciBpcyBidWlsdC4KK1lvdSBjYW4gb2J0YWluIHRoZSBzZWFyY2ggcGF0aCBieSBpbXBvcnRpbmcgdGhlIDptb2Q6YHN5c2AgbW9kdWxlIGFuZCBwcmludGluZwordGhlIHZhbHVlIG9mIGBgc3lzLnBhdGhgYC4gOjoKKworICAgJCBweXRob24KKyAgIFB5dGhvbiAyLjIgKCMxMSwgT2N0ICAzIDIwMDIsIDEzOjMxOjI3KQorICAgW0dDQyAyLjk2IDIwMDAwNzMxIChSZWQgSGF0IExpbnV4IDcuMyAyLjk2LTExMildIG9uIGxpbnV4MgorICAgVHlwZSAiaGVscCIsICJjb3B5cmlnaHQiLCAiY3JlZGl0cyIgb3IgImxpY2Vuc2UiIGZvciBtb3JlIGluZm9ybWF0aW9uLgorICAgPj4+IGltcG9ydCBzeXMKKyAgID4+PiBzeXMucGF0aAorICAgWycnLCAnL3Vzci9sb2NhbC9saWIvcHl0aG9uMi4zJywgJy91c3IvbG9jYWwvbGliL3B5dGhvbjIuMy9wbGF0LWxpbnV4MicsCisgICAgJy91c3IvbG9jYWwvbGliL3B5dGhvbjIuMy9saWItdGsnLCAnL3Vzci9sb2NhbC9saWIvcHl0aG9uMi4zL2xpYi1keW5sb2FkJywKKyAgICAnL3Vzci9sb2NhbC9saWIvcHl0aG9uMi4zL3NpdGUtcGFja2FnZXMnXQorICAgPj4+CisKK1RoZSBudWxsIHN0cmluZyBpbiBgYHN5cy5wYXRoYGAgcmVwcmVzZW50cyB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKworVGhlIGV4cGVjdGVkIGNvbnZlbnRpb24gZm9yIGxvY2FsbHkgaW5zdGFsbGVkIHBhY2thZ2VzIGlzIHRvIHB1dCB0aGVtIGluIHRoZQorOmZpbGU6YHsuLi59L3NpdGUtcGFja2FnZXMvYCBkaXJlY3RvcnksIGJ1dCB5b3UgbWF5IHdhbnQgdG8gY2hvb3NlIGEgZGlmZmVyZW50Citsb2NhdGlvbiBmb3Igc29tZSByZWFzb24uIEZvciBleGFtcGxlLCBpZiB5b3VyIHNpdGUga2VwdCBieSBjb252ZW50aW9uIGFsbCB3ZWIKK3NlcnZlci1yZWxhdGVkIHNvZnR3YXJlIHVuZGVyIDpmaWxlOmAvd3d3YC4gQWRkLW9uIFB5dGhvbiBtb2R1bGVzIG1pZ2h0IHRoZW4KK2JlbG9uZyBpbiA6ZmlsZTpgL3d3dy9weXRob25gLCBhbmQgaW4gb3JkZXIgdG8gaW1wb3J0IHRoZW0sIHRoaXMgZGlyZWN0b3J5IHdvdWxkCitoYXZlIHRvIGJlIGFkZGVkIHRvIGBgc3lzLnBhdGhgYC4gVGhlcmUgYXJlIHNldmVyYWwgd2F5cyB0byBzb2x2ZSB0aGlzIHByb2JsZW0uCisKK1RoZSBtb3N0IGNvbnZlbmllbnQgd2F5IGlzIHRvIGFkZCBhIHBhdGggY29uZmlndXJhdGlvbiBmaWxlIHRvIGEgZGlyZWN0b3J5Cit0aGF0J3MgYWxyZWFkeSBvbiBQeXRob24ncyBwYXRoLCB1c3VhbGx5IHRvIHRoZSA6ZmlsZTpgLi4uL3NpdGUtcGFja2FnZXMvYAorZGlyZWN0b3J5LiBQYXRoIGNvbmZpZ3VyYXRpb24gZmlsZXMgaGF2ZSBhbiBleHRlbnNpb24gb2YgOmZpbGU6YC5wdGhgLCBhbmQgZWFjaAorbGluZSBtdXN0IGNvbnRhaW4gYSBzaW5nbGUgcGF0aCB0aGF0IHdpbGwgYmUgYXBwZW5kZWQgdG8gYGBzeXMucGF0aGBgLiAoQmVjYXVzZQordGhlIG5ldyBwYXRocyBhcmUgYXBwZW5kZWQgdG8gYGBzeXMucGF0aGBgLCBtb2R1bGVzIGluIHRoZSBhZGRlZCBkaXJlY3Rvcmllcword2lsbCBub3Qgb3ZlcnJpZGUgc3RhbmRhcmQgbW9kdWxlcy4gVGhpcyBtZWFucyB5b3UgY2FuJ3QgdXNlIHRoaXMgbWVjaGFuaXNtIGZvcgoraW5zdGFsbGluZyBmaXhlZCB2ZXJzaW9ucyBvZiBzdGFuZGFyZCBtb2R1bGVzLikKKworUGF0aHMgY2FuIGJlIGFic29sdXRlIG9yIHJlbGF0aXZlLCBpbiB3aGljaCBjYXNlIHRoZXkncmUgcmVsYXRpdmUgdG8gdGhlCitkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgOmZpbGU6YC5wdGhgIGZpbGUuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbiBvZgordGhlIDptb2Q6YHNpdGVgIG1vZHVsZSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KKworQSBzbGlnaHRseSBsZXNzIGNvbnZlbmllbnQgd2F5IGlzIHRvIGVkaXQgdGhlIDpmaWxlOmBzaXRlLnB5YCBmaWxlIGluIFB5dGhvbidzCitzdGFuZGFyZCBsaWJyYXJ5LCBhbmQgbW9kaWZ5IGBgc3lzLnBhdGhgYC4gOmZpbGU6YHNpdGUucHlgIGlzIGF1dG9tYXRpY2FsbHkKK2ltcG9ydGVkIHdoZW4gdGhlIFB5dGhvbiBpbnRlcnByZXRlciBpcyBleGVjdXRlZCwgdW5sZXNzIHRoZSA6b3B0aW9uOmAtU2Agc3dpdGNoCitpcyBzdXBwbGllZCB0byBzdXBwcmVzcyB0aGlzIGJlaGF2aW91ci4gU28geW91IGNvdWxkIHNpbXBseSBlZGl0Cis6ZmlsZTpgc2l0ZS5weWAgYW5kIGFkZCB0d28gbGluZXMgdG8gaXQ6OgorCisgICBpbXBvcnQgc3lzCisgICBzeXMucGF0aC5hcHBlbmQoJy93d3cvcHl0aG9uLycpCisKK0hvd2V2ZXIsIGlmIHlvdSByZWluc3RhbGwgdGhlIHNhbWUgbWFqb3IgdmVyc2lvbiBvZiBQeXRob24gKHBlcmhhcHMgd2hlbgordXBncmFkaW5nIGZyb20gMy4zIHRvIDMuMy4xLCBmb3IgZXhhbXBsZSkgOmZpbGU6YHNpdGUucHlgIHdpbGwgYmUgb3ZlcndyaXR0ZW4gYnkKK3RoZSBzdG9jayB2ZXJzaW9uLiBZb3UnZCBoYXZlIHRvIHJlbWVtYmVyIHRoYXQgaXQgd2FzIG1vZGlmaWVkIGFuZCBzYXZlIGEgY29weQorYmVmb3JlIGRvaW5nIHRoZSBpbnN0YWxsYXRpb24uCisKK0FsdGVybmF0aXZlbHksIHRoZXJlIGFyZSB0d28gZW52aXJvbm1lbnQgdmFyaWFibGVzIHRoYXQgY2FuIG1vZGlmeSBgYHN5cy5wYXRoYGAuCis6ZW52dmFyOmBQWVRIT05IT01FYCBzZXRzIGFuIGFsdGVybmF0ZSB2YWx1ZSBmb3IgdGhlIHByZWZpeCBvZiB0aGUgUHl0aG9uCitpbnN0YWxsYXRpb24uIEZvciBleGFtcGxlLCBpZiA6ZW52dmFyOmBQWVRIT05IT01FYCBpcyBzZXQgdG8gYGAvd3d3L3B5dGhvbmBgLAordGhlIHNlYXJjaCBwYXRoIHdpbGwgYmUgc2V0IHRvIGBgWycnLCAnL3d3dy9weXRob24vbGliL3B5dGhvblguWS8nLAorJy93d3cvcHl0aG9uL2xpYi9weXRob25YLlkvcGxhdC1saW51eDInLCAuLi5dYGAuCisKK1RoZSA6ZW52dmFyOmBQWVRIT05QQVRIYCB2YXJpYWJsZSBjYW4gYmUgc2V0IHRvIGEgbGlzdCBvZiBwYXRocyB0aGF0IHdpbGwgYmUKK2FkZGVkIHRvIHRoZSBiZWdpbm5pbmcgb2YgYGBzeXMucGF0aGBgLiBGb3IgZXhhbXBsZSwgaWYgOmVudnZhcjpgUFlUSE9OUEFUSGAgaXMKK3NldCB0byBgYC93d3cvcHl0aG9uOi9vcHQvcHlgYCwgdGhlIHNlYXJjaCBwYXRoIHdpbGwgYmVnaW4gd2l0aAorYGBbJy93d3cvcHl0aG9uJywgJy9vcHQvcHknXWBgLiAoTm90ZSB0aGF0IGRpcmVjdG9yaWVzIG11c3QgZXhpc3QgaW4gb3JkZXIgdG8KK2JlIGFkZGVkIHRvIGBgc3lzLnBhdGhgYDsgdGhlIDptb2Q6YHNpdGVgIG1vZHVsZSByZW1vdmVzIG5vbi1leGlzdGVudCBwYXRocy4pCisKK0ZpbmFsbHksIGBgc3lzLnBhdGhgYCBpcyBqdXN0IGEgcmVndWxhciBQeXRob24gbGlzdCwgc28gYW55IFB5dGhvbiBhcHBsaWNhdGlvbgorY2FuIG1vZGlmeSBpdCBieSBhZGRpbmcgb3IgcmVtb3ZpbmcgZW50cmllcy4KKworCisuLiBfcGFja2FnaW5nLWNvbmZpZy1maWxlczoKKworQ29uZmlndXJhdGlvbiBmaWxlcyBmb3IgUGFja2FnaW5nCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworQXMgbWVudGlvbmVkIGFib3ZlLCB5b3UgY2FuIHVzZSBjb25maWd1cmF0aW9uIGZpbGVzIHRvIHN0b3JlIHBlcnNvbmFsIG9yIHNpdGUKK3ByZWZlcmVuY2VzIGZvciBhbnkgb3B0aW9uIHN1cHBvcnRlZCBieSBhbnkgUGFja2FnaW5nIGNvbW1hbmQuIERlcGVuZGluZyBvbiB5b3VyCitwbGF0Zm9ybSwgeW91IGNhbiB1c2Ugb25lIG9mIHR3byBvciB0aHJlZSBwb3NzaWJsZSBjb25maWd1cmF0aW9uIGZpbGVzLiBUaGVzZQorZmlsZXMgd2lsbCBiZSByZWFkIGJlZm9yZSBwYXJzaW5nIHRoZSBjb21tYW5kLWxpbmUsIHNvIHRoZXkgdGFrZSBwcmVjZWRlbmNlIG92ZXIKK2RlZmF1bHQgdmFsdWVzLiBJbiB0dXJuLCB0aGUgY29tbWFuZC1saW5lIHdpbGwgb3ZlcnJpZGUgY29uZmlndXJhdGlvbiBmaWxlcy4KK0xhc3RseSwgaWYgdGhlcmUgYXJlIG11bHRpcGxlIGNvbmZpZ3VyYXRpb24gZmlsZXMsIHZhbHVlcyBmcm9tIGZpbGVzIHJlYWQKK2VhcmxpZXIgd2lsbCBiZSBvdmVycmlkZGVuIGJ5IHZhbHVlcyBmcm9tIGZpbGVzIHJlYWQgbGF0ZXIuCisKKy4uIFhYWCAib25lIG9mIHR3byBvciB0aHJlZSBwb3NzaWJsZS4uLiIgc2VlbXMgd3JvbmcgaW5mby4gQmVsb3cgYWx3YXlzIDMgZmlsZXMKKyAgIGFyZSBpbmRpY2F0ZWQgaW4gdGhlIHRhYmxlcy4KKworCisuLiBfcGFja2FnaW5nLWNvbmZpZy1maWxlbmFtZXM6CisKK0xvY2F0aW9uIGFuZCBuYW1lcyBvZiBjb25maWd1cmF0aW9uIGZpbGVzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgbmFtZSBhbmQgbG9jYXRpb24gb2YgdGhlIGNvbmZpZ3VyYXRpb24gZmlsZXMgdmFyeSBzbGlnaHRseSBhY3Jvc3MKK3BsYXRmb3Jtcy4gT24gVW5peCBhbmQgTWFjIE9TIFgsIHRoZXNlIGFyZSB0aGUgdGhyZWUgY29uZmlndXJhdGlvbiBmaWxlcyBsaXN0ZWQKK2luIHRoZSBvcmRlciB0aGV5IGFyZSBwcm9jZXNzZWQ6CisKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IFR5cGUgb2YgZmlsZSB8IExvY2F0aW9uIGFuZCBmaWxlbmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgfAorKz09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKK3wgc3lzdGVtICAgICAgIHwgOmZpbGU6YHtwcmVmaXh9L2xpYi9weXRob257dmVyfS9wYWNrYWdpbmcvcGFja2FnaW5nLmNmZ2AgfCBcKDEpICB8CisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBwZXJzb25hbCAgICAgfCA6ZmlsZTpgJEhPTUUvLnB5ZGlzdHV0aWxzLmNmZ2AgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFwoMikgIHwKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGxvY2FsICAgICAgICB8IDpmaWxlOmBzZXR1cC5jZmdgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgXCgzKSAgfAorKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKKworU2ltaWxhcmx5LCB0aGUgY29uZmlndXJhdGlvbiBmaWxlcyBvbiBXaW5kb3dzIC0tLWFsc28gbGlzdGVkIGluIHRoZSBvcmRlciB0aGV5CithcmUgcHJvY2Vzc2VkLS0tIGFyZSB0aGVzZToKKworKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgVHlwZSBvZiBmaWxlIHwgTG9jYXRpb24gYW5kIGZpbGVuYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyB8CisrPT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09KworfCBzeXN0ZW0gICAgICAgfCA6ZmlsZTpge3ByZWZpeH1cXExpYlxccGFja2FnaW5nXFxwYWNrYWdpbmcuY2ZnYCB8IFwoNCkgIHwKKystLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IHBlcnNvbmFsICAgICB8IDpmaWxlOmAlSE9NRSVcXHB5ZGlzdHV0aWxzLmNmZ2AgICAgICAgICAgICAgICAgIHwgXCg1KSAgfAorKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgbG9jYWwgICAgICAgIHwgOmZpbGU6YHNldHVwLmNmZ2AgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBcKDMpICB8CisrLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworCitPbiBhbGwgcGxhdGZvcm1zLCB0aGUgKnBlcnNvbmFsKiBmaWxlIGNhbiBiZSB0ZW1wb3JhcmlseSBkaXNhYmxlZCBieQorbWVhbnMgb2YgdGhlIGAtLW5vLXVzZXItY2ZnYCBvcHRpb24uCisKK05vdGVzOgorCisoMSkKKyAgIFN0cmljdGx5IHNwZWFraW5nLCB0aGUgc3lzdGVtLXdpZGUgY29uZmlndXJhdGlvbiBmaWxlIGxpdmVzIGluIHRoZSBkaXJlY3RvcnkKKyAgIHdoZXJlIFBhY2thZ2luZyBpcyBpbnN0YWxsZWQuCisKKygyKQorICAgT24gVW5peCwgaWYgdGhlIDplbnZ2YXI6YEhPTUVgIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIG5vdCBkZWZpbmVkLCB0aGUKKyAgIHVzZXIncyBob21lIGRpcmVjdG9yeSB3aWxsIGJlIGRldGVybWluZWQgd2l0aCB0aGUgOmZ1bmM6YGdldHB3dWlkYCBmdW5jdGlvbgorICAgZnJvbSB0aGUgc3RhbmRhcmQgOm1vZDpgcHdkYCBtb2R1bGUuIFBhY2thZ2luZyB1c2VzIHRoZQorICAgOmZ1bmM6YG9zLnBhdGguZXhwYW5kdXNlcmAgZnVuY3Rpb24gdG8gZG8gdGhpcy4KKworKDMpCisgICBJLmUuLCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgKHVzdWFsbHkgdGhlIGxvY2F0aW9uIG9mIHRoZSBzZXR1cCBzY3JpcHQpLgorCisoNCkKKyAgIChTZWUgYWxzbyBub3RlICgxKS4pIFB5dGhvbidzIGRlZmF1bHQgaW5zdGFsbGF0aW9uIHByZWZpeCBpcworICAgOmZpbGU6YEM6XFxQeXRob25gLCBzbyB0aGUgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyBub3JtYWxseQorICAgOmZpbGU6YEM6XFxQeXRob25cXExpYlxccGFja2FnaW5nXFxwYWNrYWdpbmcuY2ZnYC4KKworKDUpCisgICBPbiBXaW5kb3dzLCBpZiB0aGUgOmVudnZhcjpgSE9NRWAgZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgbm90IGRlZmluZWQsCisgICA6ZW52dmFyOmBVU0VSUFJPRklMRWAgdGhlbiA6ZW52dmFyOmBIT01FRFJJVkVgIGFuZCA6ZW52dmFyOmBIT01FUEFUSGAgd2lsbAorICAgYmUgdHJpZWQuIFBhY2thZ2luZyB1c2VzIHRoZSA6ZnVuYzpgb3MucGF0aC5leHBhbmR1c2VyYCBmdW5jdGlvbiB0byBkbyB0aGlzLgorCisKKy4uIF9wYWNrYWdpbmctY29uZmlnLXN5bnRheDoKKworU3ludGF4IG9mIGNvbmZpZ3VyYXRpb24gZmlsZXMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0FsbCBQYWNrYWdpbmcgY29uZmlndXJhdGlvbiBmaWxlcyBzaGFyZSB0aGUgc2FtZSBzeW50YXguIE9wdGlvbnMgZGVmaW5lZCBpbgordGhlbSBhcmUgZ3JvdXBlZCBpbnRvIHNlY3Rpb25zLCBhbmQgZWFjaCBQYWNrYWdpbmcgY29tbWFuZCBnZXRzIGl0cyBvd24gc2VjdGlvbi4KK0FkZGl0aW9uYWxseSwgdGhlcmUncyBhIGBgZ2xvYmFsYGAgc2VjdGlvbiBmb3Igb3B0aW9ucyB0aGF0IGFmZmVjdCBldmVyeSBjb21tYW5kLgorU2VjdGlvbnMgY29uc2lzdCBvZiBvbmUgb3IgbW9yZSBsaW5lcyBjb250YWluaW5nIGEgc2luZ2xlIG9wdGlvbiBzcGVjaWZpZWQgYXMKK2Bgb3B0aW9uID0gdmFsdWVgYC4KKworLi4gWFhYIHVzZSBkcnktcnVuIGluIHRoZSBuZXh0IGV4YW1wbGUgb3IgdXNlIGEgcHlzZXR1cCBvcHRpb24gYXMgZXhhbXBsZQorCitGb3IgZXhhbXBsZSwgaGVyZSdzIGEgY29tcGxldGUgY29uZmlndXJhdGlvbiBmaWxlIHRoYXQgZm9yY2VzIGFsbCBjb21tYW5kcyB0bworcnVuIHF1aWV0bHkgYnkgZGVmYXVsdDo6CisKKyAgIFtnbG9iYWxdCisgICB2ZXJib3NlID0gMAorCitJZiB0aGlzIHdhcyB0aGUgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSwgaXQgd291bGQgYWZmZWN0IGFsbCBwcm9jZXNzaW5nCitvZiBhbnkgUHl0aG9uIG1vZHVsZSBkaXN0cmlidXRpb24gYnkgYW55IHVzZXIgb24gdGhlIGN1cnJlbnQgc3lzdGVtLiBJZiBpdCB3YXMKK2luc3RhbGxlZCBhcyB5b3VyIHBlcnNvbmFsIGNvbmZpZ3VyYXRpb24gZmlsZSAob24gc3lzdGVtcyB0aGF0IHN1cHBvcnQgdGhlbSksCitpdCB3b3VsZCBhZmZlY3Qgb25seSBtb2R1bGUgZGlzdHJpYnV0aW9ucyBwcm9jZXNzZWQgYnkgeW91LiBMYXN0bHksIGlmIGl0IHdhcwordXNlZCBhcyB0aGUgOmZpbGU6YHNldHVwLmNmZ2AgZm9yIGEgcGFydGljdWxhciBtb2R1bGUgZGlzdHJpYnV0aW9uLCBpdCB3b3VsZAorYWZmZWN0IHRoYXQgZGlzdHJpYnV0aW9uIG9ubHkuCisKKy4uIFhYWCAiKG9uIHN5c3RlbXMgdGhhdCBzdXBwb3J0IHRoZW0pIiBzZWVtcyB3cm9uZyBpbmZvCisKK0lmIHlvdSB3YW50ZWQgdG8sIHlvdSBjb3VsZCBvdmVycmlkZSB0aGUgZGVmYXVsdCAiYnVpbGQgYmFzZSIgZGlyZWN0b3J5IGFuZAorbWFrZSB0aGUgOmNvbW1hbmQ6YGJ1aWxkXCpgIGNvbW1hbmRzIGFsd2F5cyBmb3JjaWJseSByZWJ1aWxkIGFsbCBmaWxlcyB3aXRoCit0aGUgZm9sbG93aW5nOjoKKworICAgW2J1aWxkXQorICAgYnVpbGQtYmFzZSA9IGJsaWIKKyAgIGZvcmNlID0gMQorCit3aGljaCBjb3JyZXNwb25kcyB0byB0aGUgY29tbWFuZC1saW5lIGFyZ3VtZW50czo6CisKKyAgIHB5c2V0dXAgcnVuIGJ1aWxkIC0tYnVpbGQtYmFzZSBibGliIC0tZm9yY2UKKworZXhjZXB0IHRoYXQgaW5jbHVkaW5nIHRoZSA6Y29tbWFuZDpgYnVpbGRgIGNvbW1hbmQgb24gdGhlIGNvbW1hbmQtbGluZSBtZWFucwordGhhdCBjb21tYW5kIHdpbGwgYmUgcnVuLiBJbmNsdWRpbmcgYSBwYXJ0aWN1bGFyIGNvbW1hbmQgaW4gY29uZmlndXJhdGlvbiBmaWxlcworaGFzIG5vIHN1Y2ggaW1wbGljYXRpb247IGl0IG9ubHkgbWVhbnMgdGhhdCBpZiB0aGUgY29tbWFuZCBpcyBydW4sIHRoZSBvcHRpb25zCitmb3IgaXQgaW4gdGhlIGNvbmZpZ3VyYXRpb24gZmlsZSB3aWxsIGFwcGx5LiAoVGhpcyBpcyBhbHNvIHRydWUgaWYgeW91IHJ1bgorb3RoZXIgY29tbWFuZHMgdGhhdCBkZXJpdmUgdmFsdWVzIGZyb20gaXQuKQorCitZb3UgY2FuIGZpbmQgb3V0IHRoZSBjb21wbGV0ZSBsaXN0IG9mIG9wdGlvbnMgZm9yIGFueSBjb21tYW5kIHVzaW5nIHRoZQorOm9wdGlvbjpgLS1oZWxwYCBvcHRpb24sIGUuZy46OgorCisgICBweXNldHVwIHJ1biBidWlsZCAtLWhlbHAKKworYW5kIHlvdSBjYW4gZmluZCBvdXQgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgZ2xvYmFsIG9wdGlvbnMgYnkgdXNpbmcKKzpvcHRpb246YC0taGVscGAgd2l0aG91dCBhIGNvbW1hbmQ6OgorCisgICBweXNldHVwIHJ1biAtLWhlbHAKKworU2VlIGFsc28gdGhlICJSZWZlcmVuY2UiIHNlY3Rpb24gb2YgdGhlICJEaXN0cmlidXRpbmcgUHl0aG9uIE1vZHVsZXMiIG1hbnVhbC4KKworLi4gWFhYIG5vIGxpbmtzIHRvIHRoZSByZWxldmFudCBzZWN0aW9uIGV4aXN0LgorCisKKy4uIF9wYWNrYWdpbmctYnVpbGRpbmctZXh0OgorCitCdWlsZGluZyBleHRlbnNpb25zOiB0aXBzIGFuZCB0cmlja3MKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitXaGVuZXZlciBwb3NzaWJsZSwgUGFja2FnaW5nIHRyaWVzIHRvIHVzZSB0aGUgY29uZmlndXJhdGlvbiBpbmZvcm1hdGlvbiBtYWRlCithdmFpbGFibGUgYnkgdGhlIFB5dGhvbiBpbnRlcnByZXRlciB1c2VkIHRvIHJ1biBgcHlzZXR1cGAuCitGb3IgZXhhbXBsZSwgdGhlIHNhbWUgY29tcGlsZXIgYW5kIGxpbmtlciBmbGFncyB1c2VkIHRvIGNvbXBpbGUgUHl0aG9uIHdpbGwgYWxzbworYmUgdXNlZCBmb3IgY29tcGlsaW5nIGV4dGVuc2lvbnMuIFVzdWFsbHkgdGhpcyB3aWxsIHdvcmsgd2VsbCwgYnV0IGluCitjb21wbGljYXRlZCBzaXR1YXRpb25zIHRoaXMgbWlnaHQgYmUgaW5hcHByb3ByaWF0ZS4gVGhpcyBzZWN0aW9uIGRpc2N1c3NlcyBob3cKK3RvIG92ZXJyaWRlIHRoZSB1c3VhbCBQYWNrYWdpbmcgYmVoYXZpb3VyLgorCisKKy4uIF9wYWNrYWdpbmctdHdlYWstZmxhZ3M6CisKK1R3ZWFraW5nIGNvbXBpbGVyL2xpbmtlciBmbGFncworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0NvbXBpbGluZyBhIFB5dGhvbiBleHRlbnNpb24gd3JpdHRlbiBpbiBDIG9yIEMrKyB3aWxsIHNvbWV0aW1lcyByZXF1aXJlCitzcGVjaWZ5aW5nIGN1c3RvbSBmbGFncyBmb3IgdGhlIGNvbXBpbGVyIGFuZCBsaW5rZXIgaW4gb3JkZXIgdG8gdXNlIGEgcGFydGljdWxhcgorbGlicmFyeSBvciBwcm9kdWNlIGEgc3BlY2lhbCBraW5kIG9mIG9iamVjdCBjb2RlLiBUaGlzIGlzIGVzcGVjaWFsbHkgdHJ1ZSBpZiB0aGUKK2V4dGVuc2lvbiBoYXNuJ3QgYmVlbiB0ZXN0ZWQgb24geW91ciBwbGF0Zm9ybSwgb3IgaWYgeW91J3JlIHRyeWluZyB0bworY3Jvc3MtY29tcGlsZSBQeXRob24uCisKKy4uIFRPRE8gdXBkYXRlIHRvIG5ldyBzZXR1cC5jZmcKKworSW4gdGhlIG1vc3QgZ2VuZXJhbCBjYXNlLCB0aGUgZXh0ZW5zaW9uIGF1dGhvciBtaWdodCBoYXZlIGZvcmVzZWVuIHRoYXQKK2NvbXBpbGluZyB0aGUgZXh0ZW5zaW9ucyB3b3VsZCBiZSBjb21wbGljYXRlZCwgYW5kIHByb3ZpZGVkIGEgOmZpbGU6YFNldHVwYCBmaWxlCitmb3IgeW91IHRvIGVkaXQuIFRoaXMgd2lsbCBsaWtlbHkgb25seSBiZSBkb25lIGlmIHRoZSBtb2R1bGUgZGlzdHJpYnV0aW9uCitjb250YWlucyBtYW55IHNlcGFyYXRlIGV4dGVuc2lvbiBtb2R1bGVzLCBvciBpZiB0aGV5IG9mdGVuIHJlcXVpcmUgZWxhYm9yYXRlCitzZXRzIG9mIGNvbXBpbGVyIGZsYWdzIGluIG9yZGVyIHRvIHdvcmsuCisKK0EgOmZpbGU6YFNldHVwYCBmaWxlLCBpZiBwcmVzZW50LCBpcyBwYXJzZWQgaW4gb3JkZXIgdG8gZ2V0IGEgbGlzdCBvZiBleHRlbnNpb25zCit0byBidWlsZC4gRWFjaCBsaW5lIGluIGEgOmZpbGU6YFNldHVwYCBkZXNjcmliZXMgYSBzaW5nbGUgbW9kdWxlLiBMaW5lcyBoYXZlCit0aGUgZm9sbG93aW5nIHN0cnVjdHVyZTo6CisKKyAgIG1vZHVsZSAuLi4gW3NvdXJjZWZpbGUgLi4uXSBbY3BwYXJnIC4uLl0gW2xpYnJhcnkgLi4uXQorCisKK0xldCdzIGV4YW1pbmUgZWFjaCBvZiB0aGUgZmllbGRzIGluIHR1cm4uCisKKyogKm1vZHVsZSogaXMgdGhlIG5hbWUgb2YgdGhlIGV4dGVuc2lvbiBtb2R1bGUgdG8gYmUgYnVpbHQsIGFuZCBzaG91bGQgYmUgYQorICB2YWxpZCBQeXRob24gaWRlbnRpZmllci4gWW91IGNhbid0IGp1c3QgY2hhbmdlIHRoaXMgaW4gb3JkZXIgdG8gcmVuYW1lIGEgbW9kdWxlCisgIChlZGl0cyB0byB0aGUgc291cmNlIGNvZGUgd291bGQgYWxzbyBiZSBuZWVkZWQpLCBzbyB0aGlzIHNob3VsZCBiZSBsZWZ0IGFsb25lLgorCisqICpzb3VyY2VmaWxlKiBpcyBhbnl0aGluZyB0aGF0J3MgbGlrZWx5IHRvIGJlIGEgc291cmNlIGNvZGUgZmlsZSwgYXQgbGVhc3QKKyAganVkZ2luZyBieSB0aGUgZmlsZW5hbWUuIEZpbGVuYW1lcyBlbmRpbmcgaW4gOmZpbGU6YC5jYCBhcmUgYXNzdW1lZCB0byBiZQorICB3cml0dGVuIGluIEMsIGZpbGVuYW1lcyBlbmRpbmcgaW4gOmZpbGU6YC5DYCwgOmZpbGU6YC5jY2AsIGFuZCA6ZmlsZTpgLmMrK2AgYXJlCisgIGFzc3VtZWQgdG8gYmUgQysrLCBhbmQgZmlsZW5hbWVzIGVuZGluZyBpbiA6ZmlsZTpgLm1gIG9yIDpmaWxlOmAubW1gIGFyZSBhc3N1bWVkCisgIHRvIGJlIGluIE9iamVjdGl2ZSBDLgorCisqICpjcHBhcmcqIGlzIGFuIGFyZ3VtZW50IGZvciB0aGUgQyBwcmVwcm9jZXNzb3IsICBhbmQgaXMgYW55dGhpbmcgc3RhcnRpbmcgd2l0aAorICA6b3B0aW9uOmAtSWAsIDpvcHRpb246YC1EYCwgOm9wdGlvbjpgLVVgIG9yIDpvcHRpb246YC1DYC4KKworKiAqbGlicmFyeSogaXMgYW55dGhpbmcgZW5kaW5nIGluIDpmaWxlOmAuYWAgb3IgYmVnaW5uaW5nIHdpdGggOm9wdGlvbjpgLWxgIG9yCisgIDpvcHRpb246YC1MYC4KKworSWYgYSBwYXJ0aWN1bGFyIHBsYXRmb3JtIHJlcXVpcmVzIGEgc3BlY2lhbCBsaWJyYXJ5IG9uIHlvdXIgcGxhdGZvcm0sIHlvdSBjYW4KK2FkZCBpdCBieSBlZGl0aW5nIHRoZSA6ZmlsZTpgU2V0dXBgIGZpbGUgYW5kIHJ1bm5pbmcgYGBweXNldHVwIHJ1biBidWlsZGBgLgorRm9yIGV4YW1wbGUsIGlmIHRoZSBtb2R1bGUgZGVmaW5lZCBieSB0aGUgbGluZSA6OgorCisgICBmb28gZm9vbW9kdWxlLmMKKworbXVzdCBiZSBsaW5rZWQgd2l0aCB0aGUgbWF0aCBsaWJyYXJ5IDpmaWxlOmBsaWJtLmFgIG9uIHlvdXIgcGxhdGZvcm0sIHNpbXBseSBhZGQKKzpvcHRpb246YC1sbWAgdG8gdGhlIGxpbmU6OgorCisgICBmb28gZm9vbW9kdWxlLmMgLWxtCisKK0FyYml0cmFyeSBzd2l0Y2hlcyBpbnRlbmRlZCBmb3IgdGhlIGNvbXBpbGVyIG9yIHRoZSBsaW5rZXIgY2FuIGJlIHN1cHBsaWVkIHdpdGgKK3RoZSA6b3B0aW9uOmAtWGNvbXBpbGVyYCAqYXJnKiBhbmQgOm9wdGlvbjpgLVhsaW5rZXJgICphcmcqIG9wdGlvbnM6OgorCisgICBmb28gZm9vbW9kdWxlLmMgLVhjb21waWxlciAtbzMyIC1YbGlua2VyIC1zaGFyZWQgLWxtCisKK1RoZSBuZXh0IG9wdGlvbiBhZnRlciA6b3B0aW9uOmAtWGNvbXBpbGVyYCBhbmQgOm9wdGlvbjpgLVhsaW5rZXJgIHdpbGwgYmUKK2FwcGVuZGVkIHRvIHRoZSBwcm9wZXIgY29tbWFuZCBsaW5lLCBzbyBpbiB0aGUgYWJvdmUgZXhhbXBsZSB0aGUgY29tcGlsZXIgd2lsbAorYmUgcGFzc2VkIHRoZSA6b3B0aW9uOmAtbzMyYCBvcHRpb24sIGFuZCB0aGUgbGlua2VyIHdpbGwgYmUgcGFzc2VkCis6b3B0aW9uOmAtc2hhcmVkYC4gSWYgYSBjb21waWxlciBvcHRpb24gcmVxdWlyZXMgYW4gYXJndW1lbnQsIHlvdSdsbCBoYXZlIHRvCitzdXBwbHkgbXVsdGlwbGUgOm9wdGlvbjpgLVhjb21waWxlcmAgb3B0aW9uczsgZm9yIGV4YW1wbGUsIHRvIHBhc3MgYGAteCBjKytgYAordGhlIDpmaWxlOmBTZXR1cGAgZmlsZSB3b3VsZCBoYXZlIHRvIGNvbnRhaW4gYGAtWGNvbXBpbGVyIC14IC1YY29tcGlsZXIgYysrYGAuCisKK0NvbXBpbGVyIGZsYWdzIGNhbiBhbHNvIGJlIHN1cHBsaWVkIHRocm91Z2ggc2V0dGluZyB0aGUgOmVudnZhcjpgQ0ZMQUdTYAorZW52aXJvbm1lbnQgdmFyaWFibGUuIElmIHNldCwgdGhlIGNvbnRlbnRzIG9mIDplbnZ2YXI6YENGTEFHU2Agd2lsbCBiZSBhZGRlZCB0bwordGhlIGNvbXBpbGVyIGZsYWdzIHNwZWNpZmllZCBpbiB0aGUgIDpmaWxlOmBTZXR1cGAgZmlsZS4KKworCisuLiBfcGFja2FnaW5nLW5vbi1tcy1jb21waWxlcnM6CisKK1VzaW5nIG5vbi1NaWNyb3NvZnQgY29tcGlsZXJzIG9uIFdpbmRvd3MKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gc2VjdGlvbmF1dGhvcjo6IFJlbmUgTGllYnNjaGVyIDxSLkxpZWJzY2hlckBnbXguZGU+CisKKworCitCb3JsYW5kL0NvZGVHZWFyIEMrKworXl5eXl5eXl5eXl5eXl5eXl5eXl4KKworVGhpcyBzdWJzZWN0aW9uIGRlc2NyaWJlcyB0aGUgbmVjZXNzYXJ5IHN0ZXBzIHRvIHVzZSBQYWNrYWdpbmcgd2l0aCB0aGUgQm9ybGFuZAorQysrIGNvbXBpbGVyIHZlcnNpb24gNS41LiBGaXJzdCB5b3UgaGF2ZSB0byBrbm93IHRoYXQgQm9ybGFuZCdzIG9iamVjdCBmaWxlCitmb3JtYXQgKE9NRikgaXMgZGlmZmVyZW50IGZyb20gdGhlIGZvcm1hdCB1c2VkIGJ5IHRoZSBQeXRob24gdmVyc2lvbiB5b3UgY2FuCitkb3dubG9hZCBmcm9tIHRoZSBQeXRob24gb3IgQWN0aXZlU3RhdGUgV2ViIHNpdGUuIChQeXRob24gaXMgYnVpbHQgd2l0aAorTWljcm9zb2Z0IFZpc3VhbCBDKyssIHdoaWNoIHVzZXMgQ09GRiBhcyB0aGUgb2JqZWN0IGZpbGUgZm9ybWF0LikgRm9yIHRoaXMKK3JlYXNvbiwgeW91IGhhdmUgdG8gY29udmVydCBQeXRob24ncyBsaWJyYXJ5IDpmaWxlOmBweXRob24yNS5saWJgIGludG8gdGhlCitCb3JsYW5kIGZvcm1hdC4gWW91IGNhbiBkbyB0aGlzIGFzIGZvbGxvd3M6CisKKy4uIFNob3VsZCB3ZSBtZW50aW9uIHRoYXQgdXNlcnMgaGF2ZSB0byBjcmVhdGUgY2ZnLWZpbGVzIGZvciB0aGUgY29tcGlsZXI/CisuLiBzZWUgYWxzbyBodHRwOi8vY29tbXVuaXR5LmJvcmxhbmQuY29tL2FydGljbGUvMCwxNDEwLDIxMjA1LDAwLmh0bWwKKworOjoKKworICAgY29mZjJvbWYgcHl0aG9uMjUubGliIHB5dGhvbjI1X2JjcHAubGliCisKK1RoZSA6ZmlsZTpgY29mZjJvbWZgIHByb2dyYW0gY29tZXMgd2l0aCB0aGUgQm9ybGFuZCBjb21waWxlci4gVGhlIGZpbGUKKzpmaWxlOmBweXRob24yNS5saWJgIGlzIGluIHRoZSA6ZmlsZTpgTGlic2AgZGlyZWN0b3J5IG9mIHlvdXIgUHl0aG9uCitpbnN0YWxsYXRpb24uIElmIHlvdXIgZXh0ZW5zaW9uIHVzZXMgb3RoZXIgbGlicmFyaWVzICh6bGliLCAuLi4pIHlvdSBoYXZlIHRvCitjb252ZXJ0IHRoZW0gdG9vLgorCitUaGUgY29udmVydGVkIGZpbGVzIGhhdmUgdG8gcmVzaWRlIGluIHRoZSBzYW1lIGRpcmVjdG9yaWVzIGFzIHRoZSBub3JtYWwKK2xpYnJhcmllcy4KKworSG93IGRvZXMgUGFja2FnaW5nIG1hbmFnZSB0byB1c2UgdGhlc2UgbGlicmFyaWVzIHdpdGggdGhlaXIgY2hhbmdlZCBuYW1lcz8gIElmCit0aGUgZXh0ZW5zaW9uIG5lZWRzIGEgbGlicmFyeSAoZWcuIDpmaWxlOmBmb29gKSBQYWNrYWdpbmcgY2hlY2tzIGZpcnN0IGlmIGl0CitmaW5kcyBhIGxpYnJhcnkgd2l0aCBzdWZmaXggOmZpbGU6YF9iY3BwYCAoZWcuIDpmaWxlOmBmb29fYmNwcC5saWJgKSBhbmQgdGhlbgordXNlcyB0aGlzIGxpYnJhcnkuIEluIHRoZSBjYXNlIGl0IGRvZXNuJ3QgZmluZCBzdWNoIGEgc3BlY2lhbCBsaWJyYXJ5IGl0IHVzZXMKK3RoZSBkZWZhdWx0IG5hbWUgKDpmaWxlOmBmb28ubGliYC4pIFsjXV8KKworVG8gbGV0IFBhY2thZ2luZyBjb21waWxlIHlvdXIgZXh0ZW5zaW9uIHdpdGggQm9ybGFuZCwgQysrIHlvdSBub3cgaGF2ZSB0bwordHlwZTo6CisKKyAgIHB5c2V0dXAgcnVuIGJ1aWxkIC0tY29tcGlsZXIgYmNwcAorCitJZiB5b3Ugd2FudCB0byB1c2UgdGhlIEJvcmxhbmQgQysrIGNvbXBpbGVyIGFzIHRoZSBkZWZhdWx0LCB5b3UgY291bGQgc3BlY2lmeQordGhpcyBpbiB5b3VyIHBlcnNvbmFsIG9yIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb24gZmlsZSBmb3IgUGFja2FnaW5nIChzZWUKK3NlY3Rpb24gOnJlZjpgcGFja2FnaW5nLWNvbmZpZy1maWxlc2AuKQorCisKKy4uIHNlZWFsc286OgorCisgICBgQysrQnVpbGRlciBDb21waWxlciA8aHR0cDovL3d3dy5jb2RlZ2Vhci5jb20vZG93bmxvYWRzL2ZyZWUvY3BwYnVpbGRlcj5gXworICAgICAgSW5mb3JtYXRpb24gYWJvdXQgdGhlIGZyZWUgQysrIGNvbXBpbGVyIGZyb20gQm9ybGFuZCwgaW5jbHVkaW5nIGxpbmtzIHRvIHRoZQorICAgICAgZG93bmxvYWQgcGFnZXMuCisKKyAgIGBDcmVhdGluZyBQeXRob24gRXh0ZW5zaW9ucyBVc2luZyBCb3JsYW5kJ3MgRnJlZSBDb21waWxlciA8aHR0cDovL3d3dy5jeWJlcnVzLmNhL35nX3dpbGwvcHlFeHRlbkRMLnNodG1sPmBfCisgICAgICBEb2N1bWVudCBkZXNjcmliaW5nIGhvdyB0byB1c2UgQm9ybGFuZCdzIGZyZWUgY29tbWFuZC1saW5lIEMrKyBjb21waWxlciB0byBidWlsZAorICAgICAgUHl0aG9uLgorCisKK0dOVSBDIC8gQ3lnd2luIC8gTWluR1cKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl4KKworVGhpcyBzZWN0aW9uIGRlc2NyaWJlcyB0aGUgbmVjZXNzYXJ5IHN0ZXBzIHRvIHVzZSBQYWNrYWdpbmcgd2l0aCB0aGUgR05VIEMvQysrCitjb21waWxlcnMgaW4gdGhlaXIgQ3lnd2luIGFuZCBNaW5HVyBkaXN0cmlidXRpb25zLiBbI11fIEZvciBhIFB5dGhvbiBpbnRlcnByZXRlcgordGhhdCB3YXMgYnVpbHQgd2l0aCBDeWd3aW4sIGV2ZXJ5dGhpbmcgc2hvdWxkIHdvcmsgd2l0aG91dCBhbnkgb2YgdGhlc2UKK2ZvbGxvd2luZyBzdGVwcy4KKworTm90IGFsbCBleHRlbnNpb25zIGNhbiBiZSBidWlsdCB3aXRoIE1pbkdXIG9yIEN5Z3dpbiwgYnV0IG1hbnkgY2FuLiBFeHRlbnNpb25zCittb3N0IGxpa2VseSB0byBub3Qgd29yayBhcmUgdGhvc2UgdGhhdCB1c2UgQysrIG9yIGRlcGVuZCBvbiBNaWNyb3NvZnQgVmlzdWFsIEMKK2V4dGVuc2lvbnMuCisKK1RvIGxldCBQYWNrYWdpbmcgY29tcGlsZSB5b3VyIGV4dGVuc2lvbiB3aXRoIEN5Z3dpbiwgeW91IGhhdmUgdG8gdHlwZTo6CisKKyAgIHB5c2V0dXAgcnVuIGJ1aWxkIC0tY29tcGlsZXI9Y3lnd2luCisKK2FuZCBmb3IgQ3lnd2luIGluIG5vLWN5Z3dpbiBtb2RlIFsjXV8gb3IgZm9yIE1pbkdXLCB0eXBlOjoKKworICAgcHlzZXR1cCBydW4gYnVpbGQgLS1jb21waWxlcj1taW5ndzMyCisKK0lmIHlvdSB3YW50IHRvIHVzZSBhbnkgb2YgdGhlc2Ugb3B0aW9ucy9jb21waWxlcnMgYXMgZGVmYXVsdCwgeW91IHNob3VsZAorY29uc2lkZXIgd3JpdGluZyBpdCBpbiB5b3VyIHBlcnNvbmFsIG9yIHN5c3RlbS13aWRlIGNvbmZpZ3VyYXRpb24gZmlsZSBmb3IKK1BhY2thZ2luZyAoc2VlIHNlY3Rpb24gOnJlZjpgcGFja2FnaW5nLWNvbmZpZy1maWxlc2AuKQorCitPbGRlciBWZXJzaW9ucyBvZiBQeXRob24gYW5kIE1pbkdXCisiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiCitUaGUgZm9sbG93aW5nIGluc3RydWN0aW9ucyBvbmx5IGFwcGx5IGlmIHlvdSdyZSB1c2luZyBhIHZlcnNpb24gb2YgUHl0aG9uCitpbmZlcmlvciB0byAyLjQuMSB3aXRoIGEgTWluR1cgaW5mZXJpb3IgdG8gMy4wLjAgKHdpdGgKKzpmaWxlOmBiaW51dGlscy0yLjEzLjkwLTIwMDMwMTExLTFgKS4KKworVGhlc2UgY29tcGlsZXJzIHJlcXVpcmUgc29tZSBzcGVjaWFsIGxpYnJhcmllcy4gVGhpcyB0YXNrIGlzIG1vcmUgY29tcGxleCB0aGFuCitmb3IgQm9ybGFuZCdzIEMrKywgYmVjYXVzZSB0aGVyZSBpcyBubyBwcm9ncmFtIHRvIGNvbnZlcnQgdGhlIGxpYnJhcnkuIEZpcnN0Cit5b3UgaGF2ZSB0byBjcmVhdGUgYSBsaXN0IG9mIHN5bWJvbHMgd2hpY2ggdGhlIFB5dGhvbiBETEwgZXhwb3J0cy4gKFlvdSBjYW4gZmluZAorYSBnb29kIHByb2dyYW0gZm9yIHRoaXMgdGFzayBhdAoraHR0cDovL3d3dy5lbW1lc3RlY2guY29tL3NvZnR3YXJlL3BleHBvcnRzLTAuNDMvZG93bmxvYWRfcGV4cG9ydHMuaHRtbCkuCisKKy4uIEkgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0IHRoZSBuZXh0IGxpbmUgbWVhbnMuIC0tYW1rCisgICAoaW5jbHVzaXZlIHRoZSByZWZlcmVuY2VzIG9uIGRhdGEgc3RydWN0dXJlcy4pCisKKzo6CisKKyAgIHBleHBvcnRzIHB5dGhvbjI1LmRsbCA+IHB5dGhvbjI1LmRlZgorCitUaGUgbG9jYXRpb24gb2YgYW4gaW5zdGFsbGVkIDpmaWxlOmBweXRob24yNS5kbGxgIHdpbGwgZGVwZW5kIG9uIHRoZQoraW5zdGFsbGF0aW9uIG9wdGlvbnMgYW5kIHRoZSB2ZXJzaW9uIGFuZCBsYW5ndWFnZSBvZiBXaW5kb3dzLiBJbiBhICJqdXN0IGZvcgorbWUiIGluc3RhbGxhdGlvbiwgaXQgd2lsbCBhcHBlYXIgaW4gdGhlIHJvb3Qgb2YgdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkuIEluCithIHNoYXJlZCBpbnN0YWxsYXRpb24sIGl0IHdpbGwgYmUgbG9jYXRlZCBpbiB0aGUgc3lzdGVtIGRpcmVjdG9yeS4KKworVGhlbiB5b3UgY2FuIGNyZWF0ZSBmcm9tIHRoZXNlIGluZm9ybWF0aW9uIGFuIGltcG9ydCBsaWJyYXJ5IGZvciBnY2MuIDo6CisKKyAgIC9jeWd3aW4vYmluL2RsbHRvb2wgLS1kbGxuYW1lIHB5dGhvbjI1LmRsbCAtLWRlZiBweXRob24yNS5kZWYgLS1vdXRwdXQtbGliIGxpYnB5dGhvbjI1LmEKKworVGhlIHJlc3VsdGluZyBsaWJyYXJ5IGhhcyB0byBiZSBwbGFjZWQgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzCis6ZmlsZTpgcHl0aG9uMjUubGliYC4gKFNob3VsZCBiZSB0aGUgOmZpbGU6YGxpYnNgIGRpcmVjdG9yeSB1bmRlciB5b3VyIFB5dGhvbgoraW5zdGFsbGF0aW9uIGRpcmVjdG9yeS4pCisKK0lmIHlvdXIgZXh0ZW5zaW9uIHVzZXMgb3RoZXIgbGlicmFyaWVzICh6bGliLC4uLikgeW91IG1pZ2h0IGhhdmUgdG8gY29udmVydAordGhlbSB0b28uIFRoZSBjb252ZXJ0ZWQgZmlsZXMgaGF2ZSB0byByZXNpZGUgaW4gdGhlIHNhbWUgZGlyZWN0b3JpZXMgYXMgdGhlCitub3JtYWwgbGlicmFyaWVzIGRvLgorCisKKy4uIHNlZWFsc286OgorCisgICBgQnVpbGRpbmcgUHl0aG9uIG1vZHVsZXMgb24gTVMgV2luZG93cyBwbGF0Zm9ybSB3aXRoIE1pbkdXIDxodHRwOi8vd3d3LnpvcGUub3JnL01lbWJlcnMvYWxzL3RpcHMvd2luMzJfbWluZ3dfbW9kdWxlcz5gXworICAgICAgSW5mb3JtYXRpb24gYWJvdXQgYnVpbGRpbmcgdGhlIHJlcXVpcmVkIGxpYnJhcmllcyBmb3IgdGhlIE1pbkdXCisgICAgICBlbnZpcm9ubWVudC4KKworCisuLiBydWJyaWM6OiBGb290bm90ZXMKKworLi4gWyNdIFRoaXMgYWxzbyBtZWFucyB5b3UgY291bGQgcmVwbGFjZSBhbGwgZXhpc3RpbmcgQ09GRi1saWJyYXJpZXMgd2l0aAorICAgT01GLWxpYnJhcmllcyBvZiB0aGUgc2FtZSBuYW1lLgorCisuLiBbI10gQ2hlY2sgaHR0cDovL3NvdXJjZXMucmVkaGF0LmNvbS9jeWd3aW4vIGFuZCBodHRwOi8vd3d3Lm1pbmd3Lm9yZy8gZm9yCisgICBtb3JlIGluZm9ybWF0aW9uLgorCisuLiBbI10gVGhlbiB5b3UgaGF2ZSBubyBQT1NJWCBlbXVsYXRpb24gYXZhaWxhYmxlLCBidXQgeW91IGFsc28gZG9uJ3QgbmVlZAorICAgOmZpbGU6YGN5Z3dpbjEuZGxsYC4KZGlmZiAtLWdpdCBhL0RvYy9pbnN0YWxsL3B5c2V0dXAtY29uZmlnLnJzdCBiL0RvYy9pbnN0YWxsL3B5c2V0dXAtY29uZmlnLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNDczYmZlCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2luc3RhbGwvcHlzZXR1cC1jb25maWcucnN0CkBAIC0wLDAgKzEsNDQgQEAKKy4uIF9wYWNrYWdpbmctcHlzZXR1cC1jb25maWc6CisKKz09PT09PT09PT09PT09PT09PT09PQorUHlzZXR1cCBDb25maWd1cmF0aW9uCis9PT09PT09PT09PT09PT09PT09PT0KKworUHlzZXR1cCBzdXBwb3J0cyB0d28gY29uZmlndXJhdGlvbiBmaWxlczogOmZpbGU6YC5weXBpcmNgIGFuZCA6ZmlsZTpgcGFja2FnaW5nLmNmZ2AuCisKKy4uIEZJWE1FIGludGVncmF0ZSB3aXRoIGNvbmZpZ2ZpbGUgaW5zdGVhZCBvZiBkdXBsaWNhdGluZworCitDb25maWd1cmluZyBpbmRleGVzCistLS0tLS0tLS0tLS0tLS0tLS0tCisKK1lvdSBjYW4gY29uZmlndXJlIGFkZGl0aW9uYWwgaW5kZXhlcyBpbiA6ZmlsZTpgLnB5cGlyY2AgdG8gYmUgdXNlZCBmb3IgaW5kZXgtcmVsYXRlZAorb3BlcmF0aW9ucy4gQnkgZGVmYXVsdCwgYWxsIGNvbmZpZ3VyZWQgaW5kZXgtc2VydmVycyBhbmQgcGFja2FnZS1zZXJ2ZXJzIHdpbGwgYmUgdXNlZAoraW4gYW4gYWRkaXRpdmUgZmFzaGlvbi4gVG8gbGltaXQgb3BlcmF0aW9ucyB0byBzcGVjaWZpYyBpbmRleGVzLCB1c2UgdGhlIDpvcHRpb246YC0taW5kZXhgCithbmQgOm9wdGlvbjpgLS1wYWNrYWdlLXNlcnZlciBvcHRpb25zYDo6CisKKyAgJCBweXNldHVwIGluc3RhbGwgLS1pbmRleCBweXBpIC0tcGFja2FnZS1zZXJ2ZXIgZGphbmdvIHNvbWUucHJvamVjdAorCitBZGRpbmcgaW5kZXhlcyB0byA6ZmlsZTpgLnB5cGlyY2A6OgorCisgIFtwYWNrYWdpbmddCisgIGluZGV4LXNlcnZlcnMgPQorICAgICAgcHlwaQorICAgICAgb3RoZXIKKworICBwYWNrYWdlLXNlcnZlcnMgPQorICAgICAgZGphbmdvCisKKyAgW3B5cGldCisgICAgICByZXBvc2l0b3J5OiA8cmVwb3NpdG9yeS11cmw+CisgICAgICB1c2VybmFtZTogPHVzZXJuYW1lPgorICAgICAgcGFzc3dvcmQ6IDxwYXNzd29yZD4KKworICBbb3RoZXJdCisgICAgICByZXBvc2l0b3J5OiA8cmVwb3NpdG9yeS11cmw+CisgICAgICB1c2VybmFtZTogPHVzZXJuYW1lPgorICAgICAgcGFzc3dvcmQ6IDxwYXNzd29yZD4KKworICBbZGphbmdvXQorICAgICAgcmVwb3NpdG9yeTogPHJlcG9zaXRvcnktdXJsPgorICAgICAgdXNlcm5hbWU6IDx1c2VybmFtZT4KKyAgICAgIHBhc3N3b3JkOiA8cGFzc3dvcmQ+CmRpZmYgLS1naXQgYS9Eb2MvaW5zdGFsbC9weXNldHVwLXNlcnZlcnMucnN0IGIvRG9jL2luc3RhbGwvcHlzZXR1cC1zZXJ2ZXJzLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNjEwNmRlCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2luc3RhbGwvcHlzZXR1cC1zZXJ2ZXJzLnJzdApAQCAtMCwwICsxLDYxIEBACisuLiBfcGFja2FnaW5nLXB5c2V0dXAtc2VydmVyczoKKworPT09PT09PT09PT09PT09CitQYWNrYWdlIFNlcnZlcnMKKz09PT09PT09PT09PT09PQorCitQeXNldHVwIHN1cHBvcnRzIGluc3RhbGxpbmcgUHl0aG9uIHBhY2thZ2VzIGZyb20gKlBhY2thZ2UgU2VydmVycyogaW4gYWRkaXRpb24KK3RvIFB5UEkgaW5kZXhlcyBhbmQgbWlycm9ycy4KKworUGFja2FnZSBTZXJ2ZXJzIGFyZSBzaW1wbGUgZGlyZWN0b3J5IGxpc3RpbmdzIG9mIFB5dGhvbiBkaXN0cmlidXRpb25zLiBEaXJlY3RvcmllcworY2FuIGJlIHNlcnZlZCB2aWEgSFRUUCBvciBhIGxvY2FsIGZpbGUgc3lzdGVtLiBUaGlzIGlzIHVzZWZ1bCB3aGVuIHlvdSB3YW50IHRvCitkdW1wIHNvdXJjZSBkaXN0cmlidXRpb25zIGluIGEgZGlyZWN0b3J5IGFuZCBub3Qgd29ycnkgYWJvdXQgdGhlIGZ1bGwgaW5kZXggc3RydWN0dXJlLgorCitTZXJ2aW5nIGRpc3RyaWJ1dGlvbnMgZnJvbSBBcGFjaGUKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorOjoKKworICAgJCBta2RpciAtcCAvdmFyL3d3dy9odG1sL3B5dGhvbi9kaXN0cmlidXRpb25zCisgICAkIGNwICoudGFyLmd6IC92YXIvd3d3L2h0bWwvcHl0aG9uL2Rpc3RyaWJ1dGlvbnMvCisKKyAgIDxWaXJ0dWFsSG9zdCBweXRob24uZXhhbXBsZS5vcmc6ODA+CisgICAgICAgU2VydmVyQWRtaW4gd2VibWFzdGVyQGRvbWFpbi5jb20KKyAgICAgICBEb2N1bWVudFJvb3QgIi92YXIvd3d3L2h0bWwvcHl0aG9uIgorICAgICAgIFNlcnZlck5hbWUgcHl0aG9uLmV4YW1wbGUub3JnCisgICAgICAgRXJyb3JMb2cgbG9ncy9weXRob24uZXhhbXBsZS5vcmctZXJyb3IubG9nCisgICAgICAgQ3VzdG9tTG9nIGxvZ3MvcHl0aG9uLmV4YW1wbGUub3JnLWFjY2Vzcy5sb2cgY29tbW9uCisgICAgICAgT3B0aW9ucyBJbmRleGVzIEZvbGxvd1N5bUxpbmtzIE11bHRpVmlld3MKKyAgICAgICBEaXJlY3RvcnlJbmRleCBpbmRleC5odG1sIGluZGV4Lmh0bQorCisgICAgICAgPERpcmVjdG9yeSAiL3Zhci93d3cvaHRtbC9weXRob24vZGlzdHJpYnV0aW9ucyI+CisgICAgICAgICAgIE9wdGlvbnMgSW5kZXhlcyBGb2xsb3dTeW1MaW5rcyBNdWx0aVZpZXdzCisgICAgICAgICAgIE9yZGVyIGFsbG93LGRlbnkKKyAgICAgICAgICAgQWxsb3cgZnJvbSBhbGwKKyAgICAgICA8L0RpcmVjdG9yeT4KKyAgIDwvVmlydHVhbEhvc3Q+CisKK0FkZCB0aGUgQXBhY2hlIGJhc2VkIGRpc3RyaWJ1dGlvbiBzZXJ2ZXIgdG8gOmZpbGU6YC5weXBpcmNgOjoKKworICAgW3BhY2thZ2luZ10KKyAgIHBhY2thZ2Utc2VydmVycyA9CisgICAgICAgYXBhY2hlCisKKyAgIFthcGFjaGVdCisgICByZXBvc2l0b3J5OiBodHRwOi8vcHl0aG9uLmV4YW1wbGUub3JnL2Rpc3RyaWJ1dGlvbnMvCisKKworU2VydmluZyBkaXN0cmlidXRpb25zIGZyb20gYSBmaWxlIHN5c3RlbQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorOjoKKworICAgJCBta2RpciAtcCAvZGF0YS9weXRob24vZGlzdHJpYnV0aW9ucworICAgJCBjcCAqLnRhci5neiAvZGF0YS9weXRob24vZGlzdHJpYnV0aW9ucy8KKworQWRkIHRoZSBkaXJlY3RvcnkgdG8gOmZpbGU6YC5weXBpcmNgOjoKKworICAgW3BhY2thZ2luZ10KKyAgIHBhY2thZ2Utc2VydmVycyA9CisgICAgICAgbG9jYWwKKworICAgW2xvY2FsXQorICAgcmVwb3NpdG9yeTogZmlsZTovLy9kYXRhL3B5dGhvbi9kaXN0cmlidXRpb25zLwpkaWZmIC0tZ2l0IGEvRG9jL2luc3RhbGwvcHlzZXR1cC5yc3QgYi9Eb2MvaW5zdGFsbC9weXNldHVwLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNDcyYzI0Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jL2luc3RhbGwvcHlzZXR1cC5yc3QKQEAgLTAsMCArMSwxNjQgQEAKKy4uIF9wYWNrYWdpbmctcHlzZXR1cDoKKworPT09PT09PT09PT09PT09PQorUHlzZXR1cCBUdXRvcmlhbAorPT09PT09PT09PT09PT09PQorCitHZXR0aW5nIHN0YXJ0ZWQKKy0tLS0tLS0tLS0tLS0tLQorCitQeXNldHVwIGlzIGEgc2ltcGxlIHNjcmlwdCB0aGF0IHN1cHBvcnRzIHRoZSBmb2xsb3dpbmcgZmVhdHVyZXM6CisKKy0gaW5zdGFsbCwgcmVtb3ZlLCBsaXN0LCBhbmQgdmVyaWZ5IFB5dGhvbiBwYWNrYWdlczsKKy0gc2VhcmNoIGZvciBhdmFpbGFibGUgcGFja2FnZXMgb24gUHlQSSBvciBhbnkgKlNpbXBsZSBJbmRleCo7CistIHZlcmlmeSBpbnN0YWxsZWQgcGFja2FnZXMgKG1kNXN1bSwgaW5zdGFsbGVkIGZpbGVzLCB2ZXJzaW9uKS4KKworCitGaW5kaW5nIG91dCB3aGF0J3MgaW5zdGFsbGVkCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1B5c2V0dXAgbWFrZXMgaXQgZWFzeSB0byBmaW5kIG91dCB3aGF0IFB5dGhvbiBwYWNrYWdlcyBhcmUgaW5zdGFsbGVkOjoKKworICAgJCBweXNldHVwIGxpc3QgdmlydHVhbGVudgorICAgJ3ZpcnR1YWxlbnYnIDEuNiBhdCAnL29wdC9weXRob24zLjMvbGliL3B5dGhvbjMuMy9zaXRlLXBhY2thZ2VzL3ZpcnR1YWxlbnYtMS42LXB5My4zLmVnZy1pbmZvJworCisgICAkIHB5c2V0dXAgbGlzdAorICAgJ3B5dmVyaWZ5JyAwLjguMSBhdCAnL29wdC9weXRob24zLjMvbGliL3B5dGhvbjMuMy9zaXRlLXBhY2thZ2VzL3B5dmVyaWZ5LTAuOC4xLmRpc3QtaW5mbycKKyAgICd2aXJ0dWFsZW52JyAxLjYgYXQgJy9vcHQvcHl0aG9uMy4zL2xpYi9weXRob24zLjMvc2l0ZS1wYWNrYWdlcy92aXJ0dWFsZW52LTEuNi1weTMuMy5lZ2ctaW5mbycKKyAgIC4uLgorCisKK0luc3RhbGxpbmcgYSBkaXN0cmlidXRpb24KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworUHlzZXR1cCBjYW4gaW5zdGFsbCBhIFB5dGhvbiBwcm9qZWN0IGZyb20gdGhlIGZvbGxvd2luZyBzb3VyY2VzOgorCistIFB5UEkgYW5kIFNpbXBsZSBJbmRleGVzOworLSBzb3VyY2UgZGlyZWN0b3JpZXMgY29udGFpbmluZyBhIHZhbGlkIDpmaWxlOmBzZXR1cC5weWAgb3IgOmZpbGU6YHNldHVwLmNmZ2A7CistIGRpc3RyaWJ1dGlvbiBzb3VyY2UgYXJjaGl2ZXMgKDpmaWxlOmBwcm9qZWN0LTEuMC50YXIuZ3pgLCA6ZmlsZTpgcHJvamVjdC0xLjAuemlwYCk7CistIEhUVFAgKGh0dHA6Ly9ob3N0L3BhY2thZ2VzL3Byb2plY3QtMS4wLnRhci5neikuCisKKworSW5zdGFsbGluZyBmcm9tIFB5UEkgYW5kIFNpbXBsZSBJbmRleGVzOjoKKworICAgJCBweXNldHVwIGluc3RhbGwgcHJvamVjdAorICAgJCBweXNldHVwIGluc3RhbGwgcHJvamVjdD09MS4wCisKK0luc3RhbGxpbmcgZnJvbSBhIGRpc3RyaWJ1dGlvbiBzb3VyY2UgYXJjaGl2ZTo6CisKKyAgICQgcHlzZXR1cCBpbnN0YWxsIHByb2plY3QtMS4wLnRhci5negorCitJbnN0YWxsaW5nIGZyb20gYSBzb3VyY2UgZGlyZWN0b3J5IGNvbnRhaW5pbmcgYSB2YWxpZCA6ZmlsZTpgc2V0dXAucHlgIG9yCis6ZmlsZTpgc2V0dXAuY2ZnYDo6CisKKyAgICQgY2QgcGF0aC90by9zb3VyY2UvZGlyZWN0b3J5CisgICAkIHB5c2V0dXAgaW5zdGFsbAorCisgICAkIHB5c2V0dXAgaW5zdGFsbCBwYXRoL3RvL3NvdXJjZS9kaXJlY3RvcnkKKworSW5zdGFsbGluZyBmcm9tIEhUVFA6OgorCisgICAkIHB5c2V0dXAgaW5zdGFsbCBodHRwOi8vaG9zdC9wYWNrYWdlcy9wcm9qZWN0LTEuMC50YXIuZ3oKKworCitSZXRyaWV2aW5nIG1ldGFkYXRhCistLS0tLS0tLS0tLS0tLS0tLS0tCisKK1lvdSBjYW4gZ2F0aGVyIG1ldGFkYXRhIGZyb20gdHdvIHNvdXJjZXMsIGEgcHJvamVjdCdzIHNvdXJjZSBkaXJlY3Rvcnkgb3IgYW4KK2luc3RhbGxlZCBkaXN0cmlidXRpb24uIFRoZSBgcHlzZXR1cCBtZXRhZGF0YWAgY29tbWFuZCBjYW4gcmV0cmlldmUgb25lIG9yCittb3JlIG1ldGFkYXRhIGZpZWxkcyB1c2luZyB0aGUgYC1mYCBvcHRpb24gYW5kIGEgbWV0YWRhdGEgZmllbGQgYXMgdGhlCithcmd1bWVudC4gOjoKKworICAgJCBweXNldHVwIG1ldGFkYXRhIHZpcnR1YWxlbnYgLWYgdmVyc2lvbiAtZiBuYW1lCisgICBWZXJzaW9uOgorICAgICAgIDEuNgorICAgTmFtZToKKyAgICAgICB2aXJ0dWFsZW52CisKKyAgICQgcHlzZXR1cCBtZXRhZGF0YSB2aXJ0dWFsZW52CisgICBNZXRhZGF0YS1WZXJzaW9uOgorICAgICAgIDEuMAorICAgTmFtZToKKyAgICAgICB2aXJ0dWFsZW52CisgICBWZXJzaW9uOgorICAgICAgIDEuNgorICAgUGxhdGZvcm06CisgICAgICAgVU5LTk9XTgorICAgU3VtbWFyeToKKyAgICAgICBWaXJ0dWFsIFB5dGhvbiBFbnZpcm9ubWVudCBidWlsZGVyCisgICAuLi4KKworLi4gc2VlYWxzbzo6CisKKyAgIFRoZXJlIGFyZSB0aHJlZSBtZXRhZGF0YSB2ZXJzaW9ucywgMS4wLCAxLjEsIGFuZCAxLjIuIFRoZSBmb2xsb3dpbmcgUEVQcworICAgZGVzY3JpYmUgc3BlY2lmaWNzIG9mIHRoZSBmaWVsZCBuYW1lcywgYW5kIHRoZWlyIHNlbWFudGljcyBhbmQgdXNhZ2UuICAxLjAKKyAgIDpQRVA6YDI0MWAsIDEuMSA6UEVQOmAzMTRgLCBhbmQgMS4yIDpQRVA6YDM0NWAKKworCitSZW1vdmluZyBhIGRpc3RyaWJ1dGlvbgorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworWW91IGNhbiByZW1vdmUgb25lIG9yIG1vcmUgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbnMgdXNpbmcgdGhlIGBweXNldHVwIHJlbW92ZWAKK2NvbW1hbmQ6OgorCisgICAkIHB5c2V0dXAgcmVtb3ZlIHZpcnR1YWxlbnYKKyAgIHJlbW92aW5nICd2aXJ0dWFsZW52JzoKKyAgICAgL29wdC9weXRob24zLjMvbGliL3B5dGhvbjMuMy9zaXRlLXBhY2thZ2VzL3ZpcnR1YWxlbnYtMS42LXB5My4zLmVnZy1pbmZvL2RlcGVuZGVuY3lfbGlua3MudHh0CisgICAgIC9vcHQvcHl0aG9uMy4zL2xpYi9weXRob24zLjMvc2l0ZS1wYWNrYWdlcy92aXJ0dWFsZW52LTEuNi1weTMuMy5lZ2ctaW5mby9lbnRyeV9wb2ludHMudHh0CisgICAgIC9vcHQvcHl0aG9uMy4zL2xpYi9weXRob24zLjMvc2l0ZS1wYWNrYWdlcy92aXJ0dWFsZW52LTEuNi1weTMuMy5lZ2ctaW5mby9ub3QtemlwLXNhZmUKKyAgICAgL29wdC9weXRob24zLjMvbGliL3B5dGhvbjMuMy9zaXRlLXBhY2thZ2VzL3ZpcnR1YWxlbnYtMS42LXB5My4zLmVnZy1pbmZvL1BLRy1JTkZPCisgICAgIC9vcHQvcHl0aG9uMy4zL2xpYi9weXRob24zLjMvc2l0ZS1wYWNrYWdlcy92aXJ0dWFsZW52LTEuNi1weTMuMy5lZ2ctaW5mby9TT1VSQ0VTLnR4dAorICAgICAvb3B0L3B5dGhvbjMuMy9saWIvcHl0aG9uMy4zL3NpdGUtcGFja2FnZXMvdmlydHVhbGVudi0xLjYtcHkzLjMuZWdnLWluZm8vdG9wX2xldmVsLnR4dAorICAgUHJvY2VlZCAoeS9uKT8geQorICAgc3VjY2VzczogcmVtb3ZlZCA2IGZpbGVzIGFuZCAxIGRpcnMKKworVGhlIG9wdGlvbmFsICcteScgYXJndW1lbnQgYXV0byBjb25maXJtcywgc2tpcHBpbmcgdGhlIGNvbmZvcm1hdGlvbiBwcm9tcHQ6OgorCisgICQgcHlzZXR1cCByZW1vdmUgdmlydHVhbGVudiAteQorCisKK0dldHRpbmcgaGVscAorLS0tLS0tLS0tLS0tCisKK0FsbCBweXNldHVwIGFjdGlvbnMgdGFrZSB0aGUgYC1oYCBhbmQgYC0taGVscGAgb3B0aW9ucyB3aGljaCBwcmludHMgdGhlIGNvbW1hbmRzCitoZWxwIHN0cmluZyB0byBzdGRvdXQuIDo6CisKKyAgICQgcHlzZXR1cCByZW1vdmUgLWgKKyAgIFVzYWdlOiBweXNldHVwIHJlbW92ZSBkaXN0IFsteV0KKyAgICAgIG9yOiBweXNldHVwIHJlbW92ZSAtLWhlbHAKKworICAgVW5pbnN0YWxsIGEgUHl0aG9uIHBhY2thZ2UuCisKKyAgIHBvc2l0aW9uYWwgYXJndW1lbnRzOgorICAgICAgZGlzdCAgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbiBuYW1lCisKKyAgIG9wdGlvbmFsIGFyZ3VtZW50czoKKyAgICAgIC15ICBhdXRvIGNvbmZpcm0gcGFja2FnZSByZW1vdmFsCisKK0dldHRpbmcgYSBsaXN0IG9mIGFsbCBweXNldHVwIGFjdGlvbnMgYW5kIGdsb2JhbCBvcHRpb25zOjoKKworICAgJCBweXNldHVwIC0taGVscAorICAgVXNhZ2U6IHB5c2V0dXAgW29wdGlvbnNdIGFjdGlvbiBbYWN0aW9uX29wdGlvbnNdCisKKyAgIEFjdGlvbnM6CisgICAgICAgcnVuOiBSdW4gb25lIG9yIHNldmVyYWwgY29tbWFuZHMKKyAgICAgICBtZXRhZGF0YTogRGlzcGxheSB0aGUgbWV0YWRhdGEgb2YgYSBwcm9qZWN0CisgICAgICAgaW5zdGFsbDogSW5zdGFsbCBhIHByb2plY3QKKyAgICAgICByZW1vdmU6IFJlbW92ZSBhIHByb2plY3QKKyAgICAgICBzZWFyY2g6IFNlYXJjaCBmb3IgYSBwcm9qZWN0IGluIHRoZSBpbmRleGVzCisgICAgICAgbGlzdDogTGlzdCBpbnN0YWxsZWQgcHJvamVjdHMKKyAgICAgICBncmFwaDogRGlzcGxheSBhIGdyYXBoCisgICAgICAgY3JlYXRlOiBDcmVhdGUgYSBwcm9qZWN0CisgICAgICAgZ2VuZXJhdGUtc2V0dXA6IEdlbmVyYXRlIGEgYmFja3dhcmQtY29tcGF0aWJsZSBzZXR1cC5weQorCisgICBUbyBnZXQgbW9yZSBoZWxwIG9uIGFuIGFjdGlvbiwgdXNlOgorCisgICAgICAgcHlzZXR1cCBhY3Rpb24gLS1oZWxwCisKKyAgIEdsb2JhbCBvcHRpb25zOgorICAgICAgIC0tdmVyYm9zZSAoLXYpICBydW4gdmVyYm9zZWx5IChkZWZhdWx0KQorICAgICAgIC0tcXVpZXQgKC1xKSAgICBydW4gcXVpZXRseSAodHVybnMgdmVyYm9zaXR5IG9mZikKKyAgICAgICAtLWRyeS1ydW4gKC1uKSAgZG9uJ3QgYWN0dWFsbHkgZG8gYW55dGhpbmcKKyAgICAgICAtLWhlbHAgKC1oKSAgICAgc2hvdyBkZXRhaWxlZCBoZWxwIG1lc3NhZ2UKKyAgICAgICAtLW5vLXVzZXItY2ZnICAgaWdub3JlIHB5ZGlzdHV0aWxzLmNmZyBpbiB5b3VyIGhvbWUgZGlyZWN0b3J5CisgICAgICAgLS12ZXJzaW9uICAgICAgIERpc3BsYXkgdGhlIHZlcnNpb24KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L190aHJlYWQucnN0IGIvRG9jL2xpYnJhcnkvX3RocmVhZC5yc3QKaW5kZXggMzY5ZTljZC4uZTdlNzUwNCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvX3RocmVhZC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvX3RocmVhZC5yc3QKQEAgLTM1LDYgKzM1LDkgQEAKIAogICAgUmFpc2VkIG9uIHRocmVhZC1zcGVjaWZpYyBlcnJvcnMuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIGlzIG5vdyBhIHN5bm9ueW0gb2YgdGhlIGJ1aWx0LWluIDpleGM6YFJ1bnRpbWVFcnJvcmAuCisKIAogLi4gZGF0YTo6IExvY2tUeXBlCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2FiYy5yc3QgYi9Eb2MvbGlicmFyeS9hYmMucnN0CmluZGV4IDEwNDhiMjQuLjZmNDIyMjIgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2FiYy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvYWJjLnJzdApAQCAtMTgsNyArMTgsNyBAQAogCiBUaGUgOm1vZDpgY29sbGVjdGlvbnNgIG1vZHVsZSBoYXMgc29tZSBjb25jcmV0ZSBjbGFzc2VzIHRoYXQgZGVyaXZlIGZyb20KIEFCQ3M7IHRoZXNlIGNhbiwgb2YgY291cnNlLCBiZSBmdXJ0aGVyIGRlcml2ZWQuIEluIGFkZGl0aW9uIHRoZQotOm1vZDpgY29sbGVjdGlvbnNgIG1vZHVsZSBoYXMgc29tZSBBQkNzIHRoYXQgY2FuIGJlIHVzZWQgdG8gdGVzdCB3aGV0aGVyCis6bW9kOmBjb2xsZWN0aW9ucy5hYmNgIHN1Ym1vZHVsZSBoYXMgc29tZSBBQkNzIHRoYXQgY2FuIGJlIHVzZWQgdG8gdGVzdCB3aGV0aGVyCiBhIGNsYXNzIG9yIGluc3RhbmNlIHByb3ZpZGVzIGEgcGFydGljdWxhciBpbnRlcmZhY2UsIGZvciBleGFtcGxlLCBpcyBpdAogaGFzaGFibGUgb3IgYSBtYXBwaW5nLgogCkBAIC01NSw2ICs1NSw5IEBACiAgICAgICAgIGFzc2VydCBpc3N1YmNsYXNzKHR1cGxlLCBNeUFCQykKICAgICAgICAgYXNzZXJ0IGlzaW5zdGFuY2UoKCksIE15QUJDKQogCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgICAgUmV0dXJucyB0aGUgcmVnaXN0ZXJlZCBzdWJjbGFzcywgdG8gYWxsb3cgdXNhZ2UgYXMgYSBjbGFzcyBkZWNvcmF0b3IuCisKICAgIFlvdSBjYW4gYWxzbyBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiBhbiBhYnN0cmFjdCBiYXNlIGNsYXNzOgogCiAgICAuLiBtZXRob2Q6OiBfX3N1YmNsYXNzaG9va19fKHN1YmNsYXNzKQpAQCAtMTI0LDE5ICsxMjcsMTggQEAKICAgIGF2YWlsYWJsZSBhcyBhIG1ldGhvZCBvZiBgYEZvb2BgLCBzbyBpdCBpcyBwcm92aWRlZCBzZXBhcmF0ZWx5LgogCiAKLUl0IGFsc28gcHJvdmlkZXMgdGhlIGZvbGxvd2luZyBkZWNvcmF0b3JzOgorVGhlIDptb2Q6YGFiY2AgbW9kdWxlIGFsc28gcHJvdmlkZXMgdGhlIGZvbGxvd2luZyBkZWNvcmF0b3JzOgogCiAuLiBkZWNvcmF0b3I6OiBhYnN0cmFjdG1ldGhvZChmdW5jdGlvbikKIAogICAgQSBkZWNvcmF0b3IgaW5kaWNhdGluZyBhYnN0cmFjdCBtZXRob2RzLgogCi0gICBVc2luZyB0aGlzIGRlY29yYXRvciByZXF1aXJlcyB0aGF0IHRoZSBjbGFzcydzIG1ldGFjbGFzcyBpcyA6Y2xhc3M6YEFCQ01ldGFgIG9yCi0gICBpcyBkZXJpdmVkIGZyb20gaXQuCi0gICBBIGNsYXNzIHRoYXQgaGFzIGEgbWV0YWNsYXNzIGRlcml2ZWQgZnJvbSA6Y2xhc3M6YEFCQ01ldGFgCi0gICBjYW5ub3QgYmUgaW5zdGFudGlhdGVkIHVubGVzcyBhbGwgb2YgaXRzIGFic3RyYWN0IG1ldGhvZHMgYW5kCi0gICBwcm9wZXJ0aWVzIGFyZSBvdmVycmlkZGVuLgotICAgVGhlIGFic3RyYWN0IG1ldGhvZHMgY2FuIGJlIGNhbGxlZCB1c2luZyBhbnkgb2YgdGhlIG5vcm1hbCAnc3VwZXInIGNhbGwKLSAgIG1lY2hhbmlzbXMuCisgICBVc2luZyB0aGlzIGRlY29yYXRvciByZXF1aXJlcyB0aGF0IHRoZSBjbGFzcydzIG1ldGFjbGFzcyBpcyA6Y2xhc3M6YEFCQ01ldGFgCisgICBvciBpcyBkZXJpdmVkIGZyb20gaXQuICBBIGNsYXNzIHRoYXQgaGFzIGEgbWV0YWNsYXNzIGRlcml2ZWQgZnJvbQorICAgOmNsYXNzOmBBQkNNZXRhYCBjYW5ub3QgYmUgaW5zdGFudGlhdGVkIHVubGVzcyBhbGwgb2YgaXRzIGFic3RyYWN0IG1ldGhvZHMKKyAgIGFuZCBwcm9wZXJ0aWVzIGFyZSBvdmVycmlkZGVuLiAgVGhlIGFic3RyYWN0IG1ldGhvZHMgY2FuIGJlIGNhbGxlZCB1c2luZyBhbnkKKyAgIG9mIHRoZSBub3JtYWwgJ3N1cGVyJyBjYWxsIG1lY2hhbmlzbXMuICA6ZnVuYzpgYWJzdHJhY3RtZXRob2RgIG1heSBiZSB1c2VkCisgICB0byBkZWNsYXJlIGFic3RyYWN0IG1ldGhvZHMgZm9yIHByb3BlcnRpZXMgYW5kIGRlc2NyaXB0b3JzLgogCiAgICBEeW5hbWljYWxseSBhZGRpbmcgYWJzdHJhY3QgbWV0aG9kcyB0byBhIGNsYXNzLCBvciBhdHRlbXB0aW5nIHRvIG1vZGlmeSB0aGUKICAgIGFic3RyYWN0aW9uIHN0YXR1cyBvZiBhIG1ldGhvZCBvciBjbGFzcyBvbmNlIGl0IGlzIGNyZWF0ZWQsIGFyZSBub3QKQEAgLTE0NCwxMiArMTQ2LDUyIEBACiAgICByZWd1bGFyIGluaGVyaXRhbmNlOyAidmlydHVhbCBzdWJjbGFzc2VzIiByZWdpc3RlcmVkIHdpdGggdGhlIEFCQydzCiAgICA6bWV0aDpgcmVnaXN0ZXJgIG1ldGhvZCBhcmUgbm90IGFmZmVjdGVkLgogCi0gICBVc2FnZTo6CisgICBXaGVuIDpmdW5jOmBhYnN0cmFjdG1ldGhvZGAgaXMgYXBwbGllZCBpbiBjb21iaW5hdGlvbiB3aXRoIG90aGVyIG1ldGhvZAorICAgZGVzY3JpcHRvcnMsIGl0IHNob3VsZCBiZSBhcHBsaWVkIGFzIHRoZSBpbm5lcm1vc3QgZGVjb3JhdG9yLCBhcyBzaG93biBpbgorICAgdGhlIGZvbGxvd2luZyB1c2FnZSBleGFtcGxlczo6CiAKICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPUFCQ01ldGEpOgogICAgICAgICAgIEBhYnN0cmFjdG1ldGhvZAogICAgICAgICAgIGRlZiBteV9hYnN0cmFjdF9tZXRob2Qoc2VsZiwgLi4uKToKICAgICAgICAgICAgICAgLi4uCisgICAgICAgICAgQGNsYXNzbWV0aG9kCisgICAgICAgICAgQGFic3RyYWN0bWV0aG9kCisgICAgICAgICAgZGVmIG15X2Fic3RyYWN0X2NsYXNzbWV0aG9kKGNscywgLi4uKToKKyAgICAgICAgICAgICAgLi4uCisgICAgICAgICAgQHN0YXRpY21ldGhvZAorICAgICAgICAgIEBhYnN0cmFjdG1ldGhvZAorICAgICAgICAgIGRlZiBteV9hYnN0cmFjdF9zdGF0aWNtZXRob2QoLi4uKToKKyAgICAgICAgICAgICAgLi4uCisKKyAgICAgICAgICBAcHJvcGVydHkKKyAgICAgICAgICBAYWJzdHJhY3RtZXRob2QKKyAgICAgICAgICBkZWYgbXlfYWJzdHJhY3RfcHJvcGVydHkoc2VsZik6CisgICAgICAgICAgICAgIC4uLgorICAgICAgICAgIEBteV9hYnN0cmFjdF9wcm9wZXJ0eS5zZXR0ZXIKKyAgICAgICAgICBAYWJzdHJhY3RtZXRob2QKKyAgICAgICAgICBkZWYgbXlfYWJzdHJhY3RfcHJvcGVydHkoc2VsZiwgdmFsKToKKyAgICAgICAgICAgICAgLi4uCisKKyAgICAgICAgICBAYWJzdHJhY3RtZXRob2QKKyAgICAgICAgICBkZWYgX2dldF94KHNlbGYpOgorICAgICAgICAgICAgICAuLi4KKyAgICAgICAgICBAYWJzdHJhY3RtZXRob2QKKyAgICAgICAgICBkZWYgX3NldF94KHNlbGYsIHZhbCk6CisgICAgICAgICAgICAgIC4uLgorICAgICAgICAgIHggPSBwcm9wZXJ0eShfZ2V0X3gsIF9zZXRfeCkKKworICAgSW4gb3JkZXIgdG8gY29ycmVjdGx5IGludGVyb3BlcmF0ZSB3aXRoIHRoZSBhYnN0cmFjdCBiYXNlIGNsYXNzIG1hY2hpbmVyeSwKKyAgIHRoZSBkZXNjcmlwdG9yIG11c3QgaWRlbnRpZnkgaXRzZWxmIGFzIGFic3RyYWN0IHVzaW5nCisgICA6YXR0cjpgX19pc2Fic3RyYWN0bWV0aG9kX19gLiBJbiBnZW5lcmFsLCB0aGlzIGF0dHJpYnV0ZSBzaG91bGQgYmUgYGBUcnVlYGAKKyAgIGlmIGFueSBvZiB0aGUgbWV0aG9kcyB1c2VkIHRvIGNvbXBvc2UgdGhlIGRlc2NyaXB0b3IgYXJlIGFic3RyYWN0LiBGb3IKKyAgIGV4YW1wbGUsIFB5dGhvbidzIGJ1aWx0LWluIHByb3BlcnR5IGRvZXMgdGhlIGVxdWl2YWxlbnQgb2Y6OgorCisgICAgICBjbGFzcyBEZXNjcmlwdG9yOgorICAgICAgICAgIC4uLgorICAgICAgICAgIEBwcm9wZXJ0eQorICAgICAgICAgIGRlZiBfX2lzYWJzdHJhY3RtZXRob2RfXyhzZWxmKToKKyAgICAgICAgICAgICAgcmV0dXJuIGFueShnZXRhdHRyKGYsICdfX2lzYWJzdHJhY3RtZXRob2RfXycsIEZhbHNlKSBmb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICBmIGluIChzZWxmLl9mZ2V0LCBzZWxmLl9mc2V0LCBzZWxmLl9mZGVsKSkKIAogICAgLi4gbm90ZTo6CiAKQEAgLTE3NCw2ICsyMTYsOCBAQAogICAgICAgICAgICAgICAuLi4KIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCisgICAuLiBkZXByZWNhdGVkOjogMy4zCisgICAgICAgVXNlIDpjbGFzczpgY2xhc3NtZXRob2RgIHdpdGggOmZ1bmM6YGFic3RyYWN0bWV0aG9kYCBpbnN0ZWFkCiAKIAogLi4gZGVjb3JhdG9yOjogYWJzdHJhY3RzdGF0aWNtZXRob2QoZnVuY3Rpb24pCkBAIC0xODksMTggKzIzMywxOSBAQAogICAgICAgICAgICAgICAuLi4KIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCisgICAuLiBkZXByZWNhdGVkOjogMy4zCisgICAgICAgVXNlIDpjbGFzczpgc3RhdGljbWV0aG9kYCB3aXRoIDpmdW5jOmBhYnN0cmFjdG1ldGhvZGAgaW5zdGVhZAogCiAKLS4uIGZ1bmN0aW9uOjogYWJzdHJhY3Rwcm9wZXJ0eShmZ2V0PU5vbmUsIGZzZXQ9Tm9uZSwgZmRlbD1Ob25lLCBkb2M9Tm9uZSkKKy4uIGRlY29yYXRvcjo6IGFic3RyYWN0cHJvcGVydHkoZmdldD1Ob25lLCBmc2V0PU5vbmUsIGZkZWw9Tm9uZSwgZG9jPU5vbmUpCiAKICAgIEEgc3ViY2xhc3Mgb2YgdGhlIGJ1aWx0LWluIDpmdW5jOmBwcm9wZXJ0eWAsIGluZGljYXRpbmcgYW4gYWJzdHJhY3QgcHJvcGVydHkuCiAKLSAgIFVzaW5nIHRoaXMgZnVuY3Rpb24gcmVxdWlyZXMgdGhhdCB0aGUgY2xhc3MncyBtZXRhY2xhc3MgaXMgOmNsYXNzOmBBQkNNZXRhYCBvcgotICAgaXMgZGVyaXZlZCBmcm9tIGl0LgotICAgQSBjbGFzcyB0aGF0IGhhcyBhIG1ldGFjbGFzcyBkZXJpdmVkIGZyb20gOmNsYXNzOmBBQkNNZXRhYCBjYW5ub3QgYmUKLSAgIGluc3RhbnRpYXRlZCB1bmxlc3MgYWxsIG9mIGl0cyBhYnN0cmFjdCBtZXRob2RzIGFuZCBwcm9wZXJ0aWVzIGFyZSBvdmVycmlkZGVuLgotICAgVGhlIGFic3RyYWN0IHByb3BlcnRpZXMgY2FuIGJlIGNhbGxlZCB1c2luZyBhbnkgb2YgdGhlIG5vcm1hbAotICAgJ3N1cGVyJyBjYWxsIG1lY2hhbmlzbXMuCisgICBVc2luZyB0aGlzIGZ1bmN0aW9uIHJlcXVpcmVzIHRoYXQgdGhlIGNsYXNzJ3MgbWV0YWNsYXNzIGlzIDpjbGFzczpgQUJDTWV0YWAKKyAgIG9yIGlzIGRlcml2ZWQgZnJvbSBpdC4gQSBjbGFzcyB0aGF0IGhhcyBhIG1ldGFjbGFzcyBkZXJpdmVkIGZyb20KKyAgIDpjbGFzczpgQUJDTWV0YWAgY2Fubm90IGJlIGluc3RhbnRpYXRlZCB1bmxlc3MgYWxsIG9mIGl0cyBhYnN0cmFjdCBtZXRob2RzCisgICBhbmQgcHJvcGVydGllcyBhcmUgb3ZlcnJpZGRlbi4gVGhlIGFic3RyYWN0IHByb3BlcnRpZXMgY2FuIGJlIGNhbGxlZCB1c2luZworICAgYW55IG9mIHRoZSBub3JtYWwgJ3N1cGVyJyBjYWxsIG1lY2hhbmlzbXMuCiAKICAgIFVzYWdlOjoKIApAQCAtMjE3LDYgKzI2Miw5IEBACiAgICAgICAgICAgZGVmIHNldHgoc2VsZiwgdmFsdWUpOiAuLi4KICAgICAgICAgICB4ID0gYWJzdHJhY3Rwcm9wZXJ0eShnZXR4LCBzZXR4KQogCisgICAuLiBkZXByZWNhdGVkOjogMy4zCisgICAgICAgVXNlIDpjbGFzczpgcHJvcGVydHlgIHdpdGggOmZ1bmM6YGFic3RyYWN0bWV0aG9kYCBpbnN0ZWFkCisKIAogLi4gcnVicmljOjogRm9vdG5vdGVzCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2FyY2hpdmluZy5yc3QgYi9Eb2MvbGlicmFyeS9hcmNoaXZpbmcucnN0CmluZGV4IGYyZDA4YWQuLmI3ZDQwMGMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2FyY2hpdmluZy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvYXJjaGl2aW5nLnJzdApAQCAtNSw3ICs1LDggQEAKICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogCiBUaGUgbW9kdWxlcyBkZXNjcmliZWQgaW4gdGhpcyBjaGFwdGVyIHN1cHBvcnQgZGF0YSBjb21wcmVzc2lvbiB3aXRoIHRoZSB6bGliLAotZ3ppcCwgYW5kIGJ6aXAyIGFsZ29yaXRobXMsIGFuZCAgdGhlIGNyZWF0aW9uIG9mIFpJUC0gYW5kIHRhci1mb3JtYXQgYXJjaGl2ZXMuCitnemlwLCBiemlwMiBhbmQgbHptYSBhbGdvcml0aG1zLCBhbmQgdGhlIGNyZWF0aW9uIG9mIFpJUC0gYW5kIHRhci1mb3JtYXQKK2FyY2hpdmVzLgogCiAKIC4uIHRvY3RyZWU6OgpAQCAtMTMsNSArMTQsNiBAQAogICAgemxpYi5yc3QKICAgIGd6aXAucnN0CiAgICBiejIucnN0CisgICBsem1hLnJzdAogICAgemlwZmlsZS5yc3QKICAgIHRhcmZpbGUucnN0CmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9hcmdwYXJzZS5yc3QgYi9Eb2MvbGlicmFyeS9hcmdwYXJzZS5yc3QKaW5kZXggNDI3MmYxNi4uMjYxN2FlNSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvYXJncGFyc2UucnN0CisrKyBiL0RvYy9saWJyYXJ5L2FyZ3BhcnNlLnJzdApAQCAtMzYyLDE2ICszNjIsMTYgQEAKIF5eXl5eXl5eXl5eXl5eXgogCiA6Y2xhc3M6YEFyZ3VtZW50UGFyc2VyYCBvYmplY3RzIGFsbG93IHRoZSBoZWxwIGZvcm1hdHRpbmcgdG8gYmUgY3VzdG9taXplZCBieQotc3BlY2lmeWluZyBhbiBhbHRlcm5hdGUgZm9ybWF0dGluZyBjbGFzcy4gIEN1cnJlbnRseSwgdGhlcmUgYXJlIHRocmVlIHN1Y2gKK3NwZWNpZnlpbmcgYW4gYWx0ZXJuYXRlIGZvcm1hdHRpbmcgY2xhc3MuICBDdXJyZW50bHksIHRoZXJlIGFyZSBmb3VyIHN1Y2gKIGNsYXNzZXM6CiAKIC4uIGNsYXNzOjogUmF3RGVzY3JpcHRpb25IZWxwRm9ybWF0dGVyCiAgICAgICAgICAgIFJhd1RleHRIZWxwRm9ybWF0dGVyCiAgICAgICAgICAgIEFyZ3VtZW50RGVmYXVsdHNIZWxwRm9ybWF0dGVyCisgICAgICAgICAgIE1ldGF2YXJUeXBlSGVscEZvcm1hdHRlcgogCi1UaGUgZmlyc3QgdHdvIGFsbG93IG1vcmUgY29udHJvbCBvdmVyIGhvdyB0ZXh0dWFsIGRlc2NyaXB0aW9ucyBhcmUgZGlzcGxheWVkLAotd2hpbGUgdGhlIGxhc3QgYXV0b21hdGljYWxseSBhZGRzIGluZm9ybWF0aW9uIGFib3V0IGFyZ3VtZW50IGRlZmF1bHQgdmFsdWVzLgotCis6Y2xhc3M6YFJhd0Rlc2NyaXB0aW9uSGVscEZvcm1hdHRlcmAgYW5kIDpjbGFzczpgUmF3VGV4dEhlbHBGb3JtYXR0ZXJgIGdpdmUKK21vcmUgY29udHJvbCBvdmVyIGhvdyB0ZXh0dWFsIGRlc2NyaXB0aW9ucyBhcmUgZGlzcGxheWVkLgogQnkgZGVmYXVsdCwgOmNsYXNzOmBBcmd1bWVudFBhcnNlcmAgb2JqZWN0cyBsaW5lLXdyYXAgdGhlIGRlc2NyaXB0aW9uXyBhbmQKIGVwaWxvZ18gdGV4dHMgaW4gY29tbWFuZC1saW5lIGhlbHAgbWVzc2FnZXM6OgogCkBAIC00MjQsOCArNDI0LDggQEAKIDpjbGFzczpgUmF3VGV4dEhlbHBGb3JtYXR0ZXJgIG1haW50YWlucyB3aGl0ZXNwYWNlIGZvciBhbGwgc29ydHMgb2YgaGVscCB0ZXh0LAogaW5jbHVkaW5nIGFyZ3VtZW50IGRlc2NyaXB0aW9ucy4KIAotVGhlIG90aGVyIGZvcm1hdHRlciBjbGFzcyBhdmFpbGFibGUsIDpjbGFzczpgQXJndW1lbnREZWZhdWx0c0hlbHBGb3JtYXR0ZXJgLAotd2lsbCBhZGQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgZWFjaCBvZiB0aGUgYXJndW1lbnRzOjoKKzpjbGFzczpgQXJndW1lbnREZWZhdWx0c0hlbHBGb3JtYXR0ZXJgIGF1dG9tYXRpY2FsbHkgYWRkcyBpbmZvcm1hdGlvbiBhYm91dAorZGVmYXVsdCB2YWx1ZXMgdG8gZWFjaCBvZiB0aGUgYXJndW1lbnQgaGVscCBtZXNzYWdlczo6CiAKICAgID4+PiBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcigKICAgIC4uLiAgICAgcHJvZz0nUFJPRycsCkBAIC00NDIsNiArNDQyLDI1IEBACiAgICAgLWgsIC0taGVscCAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZSBhbmQgZXhpdAogICAgIC0tZm9vIEZPTyAgIEZPTyEgKGRlZmF1bHQ6IDQyKQogCis6Y2xhc3M6YE1ldGF2YXJUeXBlSGVscEZvcm1hdHRlcmAgdXNlcyB0aGUgbmFtZSBvZiB0aGUgdHlwZV8gYXJndW1lbnQgZm9yIGVhY2gKK2FyZ3VtZW50IGFzIHRoZSBkaXNwbGF5IG5hbWUgZm9yIGl0cyB2YWx1ZXMgKHJhdGhlciB0aGFuIHVzaW5nIHRoZSBkZXN0XworYXMgdGhlIHJlZ3VsYXIgZm9ybWF0dGVyIGRvZXMpOjoKKworICAgPj4+IHBhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKAorICAgLi4uICAgICBwcm9nPSdQUk9HJywKKyAgIC4uLiAgICAgZm9ybWF0dGVyX2NsYXNzPWFyZ3BhcnNlLk1ldGF2YXJUeXBlSGVscEZvcm1hdHRlcikKKyAgID4+PiBwYXJzZXIuYWRkX2FyZ3VtZW50KCctLWZvbycsIHR5cGU9aW50KQorICAgPj4+IHBhcnNlci5hZGRfYXJndW1lbnQoJ2JhcicsIHR5cGU9ZmxvYXQpCisgICA+Pj4gcGFyc2VyLnByaW50X2hlbHAoKQorICAgdXNhZ2U6IFBST0cgWy1oXSBbLS1mb28gaW50XSBmbG9hdAorCisgICBwb3NpdGlvbmFsIGFyZ3VtZW50czoKKyAgICAgZmxvYXQKKworICAgb3B0aW9uYWwgYXJndW1lbnRzOgorICAgICAtaCwgLS1oZWxwICBzaG93IHRoaXMgaGVscCBtZXNzYWdlIGFuZCBleGl0CisgICAgIC0tZm9vIGludAorCiAKIGNvbmZsaWN0X2hhbmRsZXIKIF5eXl5eXl5eXl5eXl5eXl4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2FycmF5LnJzdCBiL0RvYy9saWJyYXJ5L2FycmF5LnJzdAppbmRleCBkNTYzY2NlLi4zZTI3NWEyIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9hcnJheS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvYXJyYXkucnN0CkBAIC0xNCwzNiArMTQsNDQgQEAKIDpkZm46YHR5cGUgY29kZWAsIHdoaWNoIGlzIGEgc2luZ2xlIGNoYXJhY3Rlci4gIFRoZSBmb2xsb3dpbmcgdHlwZSBjb2RlcyBhcmUKIGRlZmluZWQ6CiAKLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCi18IFR5cGUgY29kZSB8IEMgVHlwZSAgICAgICAgIHwgUHl0aG9uIFR5cGUgICAgICAgfCBNaW5pbXVtIHNpemUgaW4gYnl0ZXMgfAotKz09PT09PT09PT09Kz09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PSsKLXwgYGAnYidgYCAgIHwgc2lnbmVkIGNoYXIgICAgfCBpbnQgICAgICAgICAgICAgICB8IDEgICAgICAgICAgICAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotfCBgYCdCJ2BgICAgfCB1bnNpZ25lZCBjaGFyICB8IGludCAgICAgICAgICAgICAgIHwgMSAgICAgICAgICAgICAgICAgICAgIHwKLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCi18IGBgJ3UnYGAgICB8IFB5X1VOSUNPREUgICAgIHwgVW5pY29kZSBjaGFyYWN0ZXIgfCAyIChzZWUgbm90ZSkgICAgICAgICAgfAotKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKLXwgYGAnaCdgYCAgIHwgc2lnbmVkIHNob3J0ICAgfCBpbnQgICAgICAgICAgICAgICB8IDIgICAgICAgICAgICAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotfCBgYCdIJ2BgICAgfCB1bnNpZ25lZCBzaG9ydCB8IGludCAgICAgICAgICAgICAgIHwgMiAgICAgICAgICAgICAgICAgICAgIHwKLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCi18IGBgJ2knYGAgICB8IHNpZ25lZCBpbnQgICAgIHwgaW50ICAgICAgICAgICAgICAgfCAyICAgICAgICAgICAgICAgICAgICAgfAotKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKLXwgYGAnSSdgYCAgIHwgdW5zaWduZWQgaW50ICAgfCBpbnQgICAgICAgICAgICAgICB8IDIgICAgICAgICAgICAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotfCBgYCdsJ2BgICAgfCBzaWduZWQgbG9uZyAgICB8IGludCAgICAgICAgICAgICAgIHwgNCAgICAgICAgICAgICAgICAgICAgIHwKLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCi18IGBgJ0wnYGAgICB8IHVuc2lnbmVkIGxvbmcgIHwgaW50ICAgICAgICAgICAgICAgfCA0ICAgICAgICAgICAgICAgICAgICAgfAotKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKLXwgYGAnZidgYCAgIHwgZmxvYXQgICAgICAgICAgfCBmbG9hdCAgICAgICAgICAgICB8IDQgICAgICAgICAgICAgICAgICAgICB8Ci0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotfCBgYCdkJ2BgICAgfCBkb3VibGUgICAgICAgICB8IGZsb2F0ICAgICAgICAgICAgIHwgOCAgICAgICAgICAgICAgICAgICAgIHwKLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBUeXBlIGNvZGUgfCBDIFR5cGUgICAgICAgICAgICAgfCBQeXRob24gVHlwZSAgICAgICB8IE1pbmltdW0gc2l6ZSBpbiBieXRlcyB8IE5vdGVzIHwKKys9PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT0rCit8IGBgJ2InYGAgICB8IHNpZ25lZCBjaGFyICAgICAgICB8IGludCAgICAgICAgICAgICAgIHwgMSAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAorKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnQidgYCAgIHwgdW5zaWduZWQgY2hhciAgICAgIHwgaW50ICAgICAgICAgICAgICAgfCAxICAgICAgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBgYCd1J2BgICAgfCBQeV9VQ1M0ICAgICAgICAgICAgfCBVbmljb2RlIGNoYXJhY3RlciB8IDQgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2gnYGAgICB8IHNpZ25lZCBzaG9ydCAgICAgICB8IGludCAgICAgICAgICAgICAgIHwgMiAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAorKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnSCdgYCAgIHwgdW5zaWduZWQgc2hvcnQgICAgIHwgaW50ICAgICAgICAgICAgICAgfCAyICAgICAgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBgYCdpJ2BgICAgfCBzaWduZWQgaW50ICAgICAgICAgfCBpbnQgICAgICAgICAgICAgICB8IDIgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ0knYGAgICB8IHVuc2lnbmVkIGludCAgICAgICB8IGludCAgICAgICAgICAgICAgIHwgMiAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAorKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnbCdgYCAgIHwgc2lnbmVkIGxvbmcgICAgICAgIHwgaW50ICAgICAgICAgICAgICAgfCA0ICAgICAgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBgYCdMJ2BgICAgfCB1bnNpZ25lZCBsb25nICAgICAgfCBpbnQgICAgICAgICAgICAgICB8IDQgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ3EnYGAgICB8IHNpZ25lZCBsb25nIGxvbmcgICB8IGludCAgICAgICAgICAgICAgIHwgOCAgICAgICAgICAgICAgICAgICAgIHwgXCgxKSAgfAorKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKK3wgYGAnUSdgYCAgIHwgdW5zaWduZWQgbG9uZyBsb25nIHwgaW50ICAgICAgICAgICAgICAgfCA4ICAgICAgICAgICAgICAgICAgICAgfCBcKDEpICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKworfCBgYCdmJ2BgICAgfCBmbG9hdCAgICAgICAgICAgICAgfCBmbG9hdCAgICAgICAgICAgICB8IDQgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKKystLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2QnYGAgICB8IGRvdWJsZSAgICAgICAgICAgICB8IGZsb2F0ICAgICAgICAgICAgIHwgOCAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAorKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKIAotLi4gbm90ZTo6CitOb3RlczoKIAotICAgVGhlIGBgJ3UnYGAgdHlwZWNvZGUgY29ycmVzcG9uZHMgdG8gUHl0aG9uJ3MgdW5pY29kZSBjaGFyYWN0ZXIuICBPbiBuYXJyb3cKLSAgIFVuaWNvZGUgYnVpbGRzIHRoaXMgaXMgMi1ieXRlcywgb24gd2lkZSBidWlsZHMgdGhpcyBpcyA0LWJ5dGVzLgorKDEpCisgICBUaGUgYGAncSdgYCBhbmQgYGAnUSdgYCB0eXBlIGNvZGVzIGFyZSBhdmFpbGFibGUgb25seSBpZgorICAgdGhlIHBsYXRmb3JtIEMgY29tcGlsZXIgdXNlZCB0byBidWlsZCBQeXRob24gc3VwcG9ydHMgQyA6Yzp0eXBlOmBsb25nIGxvbmdgLAorICAgb3IsIG9uIFdpbmRvd3MsIDpjOnR5cGU6YF9faW50NjRgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogVGhlIGFjdHVhbCByZXByZXNlbnRhdGlvbiBvZiB2YWx1ZXMgaXMgZGV0ZXJtaW5lZCBieSB0aGUgbWFjaGluZSBhcmNoaXRlY3R1cmUKIChzdHJpY3RseSBzcGVha2luZywgYnkgdGhlIEMgaW1wbGVtZW50YXRpb24pLiAgVGhlIGFjdHVhbCBzaXplIGNhbiBiZSBhY2Nlc3NlZApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvYXN0LnJzdCBiL0RvYy9saWJyYXJ5L2FzdC5yc3QKaW5kZXggZTJjMGI2ZC4uMTZkZTNjYSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvYXN0LnJzdAorKysgYi9Eb2MvbGlicmFyeS9hc3QucnN0CkBAIC05Niw5ICs5Niw2IEBACiBBYnN0cmFjdCBHcmFtbWFyCiAtLS0tLS0tLS0tLS0tLS0tCiAKLVRoZSBtb2R1bGUgZGVmaW5lcyBhIHN0cmluZyBjb25zdGFudCBgYF9fdmVyc2lvbl9fYGAgd2hpY2ggaXMgdGhlIGRlY2ltYWwKLVN1YnZlcnNpb24gcmV2aXNpb24gbnVtYmVyIG9mIHRoZSBmaWxlIHNob3duIGJlbG93LgotCiBUaGUgYWJzdHJhY3QgZ3JhbW1hciBpcyBjdXJyZW50bHkgZGVmaW5lZCBhcyBmb2xsb3dzOgogCiAuLiBsaXRlcmFsaW5jbHVkZTo6IC4uLy4uL1BhcnNlci9QeXRob24uYXNkbApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvYXN5bmNvcmUucnN0IGIvRG9jL2xpYnJhcnkvYXN5bmNvcmUucnN0CmluZGV4IDYxOWI3YmIuLjU0MTFjMzAgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2FzeW5jb3JlLnJzdAorKysgYi9Eb2MvbGlicmFyeS9hc3luY29yZS5yc3QKQEAgLTE4NCwxMiArMTg0LDE0IEBACiAgICBNb3N0IG9mIHRoZXNlIGFyZSBuZWFybHkgaWRlbnRpY2FsIHRvIHRoZWlyIHNvY2tldCBwYXJ0bmVycy4KIAogCi0gICAuLiBtZXRob2Q6OiBjcmVhdGVfc29ja2V0KGZhbWlseSwgdHlwZSkKKyAgIC4uIG1ldGhvZDo6IGNyZWF0ZV9zb2NrZXQoZmFtaWx5PXNvY2tldC5BRl9JTkVULCB0eXBlPXNvY2tldC5TT0NLX1NUUkVBTSkKIAogICAgICAgVGhpcyBpcyBpZGVudGljYWwgdG8gdGhlIGNyZWF0aW9uIG9mIGEgbm9ybWFsIHNvY2tldCwgYW5kIHdpbGwgdXNlIHRoZQogICAgICAgc2FtZSBvcHRpb25zIGZvciBjcmVhdGlvbi4gIFJlZmVyIHRvIHRoZSA6bW9kOmBzb2NrZXRgIGRvY3VtZW50YXRpb24gZm9yCiAgICAgICBpbmZvcm1hdGlvbiBvbiBjcmVhdGluZyBzb2NrZXRzLgogCisgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zIGZhbWlseSBhbmQgdHlwZSBhcmd1bWVudHMgY2FuIGJlIG9taXR0ZWQuCisKIAogICAgLi4gbWV0aG9kOjogY29ubmVjdChhZGRyZXNzKQogCkBAIC0yODAsNyArMjgyLDcgQEAKIAogICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBob3N0LCBwYXRoKToKICAgICAgICAgICAgYXN5bmNvcmUuZGlzcGF0Y2hlci5fX2luaXRfXyhzZWxmKQotICAgICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgICAgc2VsZi5jcmVhdGVfc29ja2V0KCkKICAgICAgICAgICAgc2VsZi5jb25uZWN0KCAoaG9zdCwgODApICkKICAgICAgICAgICAgc2VsZi5idWZmZXIgPSBieXRlcygnR0VUICVzIEhUVFAvMS4wXHJcbkhvc3Q6ICVzXHJcblxyXG4nICUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocGF0aCwgaG9zdCksICdhc2NpaScpCkBAIC0zMjcsNyArMzI5LDcgQEAKIAogICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdCwgcG9ydCk6CiAgICAgICAgICAgICBhc3luY29yZS5kaXNwYXRjaGVyLl9faW5pdF9fKHNlbGYpCi0gICAgICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgICAgIHNlbGYuY3JlYXRlX3NvY2tldCgpCiAgICAgICAgICAgICBzZWxmLnNldF9yZXVzZV9hZGRyKCkKICAgICAgICAgICAgIHNlbGYuYmluZCgoaG9zdCwgcG9ydCkpCiAgICAgICAgICAgICBzZWxmLmxpc3Rlbig1KQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvYXRleGl0LnJzdCBiL0RvYy9saWJyYXJ5L2F0ZXhpdC5yc3QKaW5kZXggNWI4N2I5NC4uYzNiYjA0ZCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvYXRleGl0LnJzdAorKysgYi9Eb2MvbGlicmFyeS9hdGV4aXQucnN0CkBAIC02NCw4ICs2NCw5IEBACiBtYWtpbmcgYW4gZXhwbGljaXQgY2FsbCBpbnRvIHRoaXMgbW9kdWxlIGF0IHRlcm1pbmF0aW9uLiA6OgogCiAgICB0cnk6Ci0gICAgICAgX2NvdW50ID0gaW50KG9wZW4oIi90bXAvY291bnRlciIpLnJlYWQoKSkKLSAgIGV4Y2VwdCBJT0Vycm9yOgorICAgICAgIHdpdGggb3BlbigiL3RtcC9jb3VudGVyIikgYXMgaW5maWxlOgorICAgICAgICAgICBfY291bnQgPSBpbnQoaW5maWxlLnJlYWQoKSkKKyAgIGV4Y2VwdCBGaWxlTm90Rm91bmRFcnJvcjoKICAgICAgICBfY291bnQgPSAwCiAKICAgIGRlZiBpbmNyY291bnRlcihuKToKQEAgLTczLDcgKzc0LDggQEAKICAgICAgICBfY291bnQgPSBfY291bnQgKyBuCiAKICAgIGRlZiBzYXZlY291bnRlcigpOgotICAgICAgIG9wZW4oIi90bXAvY291bnRlciIsICJ3Iikud3JpdGUoIiVkIiAlIF9jb3VudCkKKyAgICAgICB3aXRoIG9wZW4oIi90bXAvY291bnRlciIsICJ3IikgYXMgb3V0ZmlsZToKKyAgICAgICAgICAgb3V0ZmlsZS53cml0ZSgiJWQiICUgX2NvdW50KQogCiAgICBpbXBvcnQgYXRleGl0CiAgICBhdGV4aXQucmVnaXN0ZXIoc2F2ZWNvdW50ZXIpCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9iaW5hc2NpaS5yc3QgYi9Eb2MvbGlicmFyeS9iaW5hc2NpaS5yc3QKaW5kZXggMmFhMzcwMi4uYmFmNDMwZCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvYmluYXNjaWkucnN0CisrKyBiL0RvYy9saWJyYXJ5L2JpbmFzY2lpLnJzdApAQCAtMjAsOCArMjAsMTMgQEAKIAogLi4gbm90ZTo6CiAKLSAgIEVuY29kaW5nIGFuZCBkZWNvZGluZyBmdW5jdGlvbnMgZG8gbm90IGFjY2VwdCBVbmljb2RlIHN0cmluZ3MuICBPbmx5IGJ5dGVzdHJpbmcKLSAgIGFuZCBieXRlYXJyYXkgb2JqZWN0cyBjYW4gYmUgcHJvY2Vzc2VkLgorICAgYGBhMmJfKmBgIGZ1bmN0aW9ucyBhY2NlcHQgVW5pY29kZSBzdHJpbmdzIGNvbnRhaW5pbmcgb25seSBBU0NJSSBjaGFyYWN0ZXJzLgorICAgT3RoZXIgZnVuY3Rpb25zIG9ubHkgYWNjZXB0IGJ5dGVzIGFuZCBieXRlcy1jb21wYXRpYmxlIG9iamVjdHMgKHN1Y2ggYXMKKyAgIGJ5dGVhcnJheSBvYmplY3RzIGFuZCBvdGhlciBvYmplY3RzIGltcGxlbWVudGluZyB0aGUgYnVmZmVyIEFQSSkuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBBU0NJSS1vbmx5IHVuaWNvZGUgc3RyaW5ncyBhcmUgbm93IGFjY2VwdGVkIGJ5IHRoZSBgYGEyYl8qYGAgZnVuY3Rpb25zLgorCiAKIFRoZSA6bW9kOmBiaW5hc2NpaWAgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnM6CiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2J6Mi5yc3QgYi9Eb2MvbGlicmFyeS9iejIucnN0CmluZGV4IGQ5YTJiYWQuLmRiZjkzOGEgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2J6Mi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvYnoyLnJzdApAQCAtMSwxODkgKzEsMTcyIEBACi06bW9kOmBiejJgIC0tLSBDb21wcmVzc2lvbiBjb21wYXRpYmxlIHdpdGggOnByb2dyYW06YGJ6aXAyYAotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKzptb2Q6YGJ6MmAgLS0tIFN1cHBvcnQgZm9yIDpwcm9ncmFtOmBiemlwMmAgY29tcHJlc3Npb24KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIAogLi4gbW9kdWxlOjogYnoyCi0gICA6c3lub3BzaXM6IEludGVyZmFjZSB0byBjb21wcmVzc2lvbiBhbmQgZGVjb21wcmVzc2lvbiByb3V0aW5lcwotICAgICAgICAgICAgICBjb21wYXRpYmxlIHdpdGggYnppcDIuCisgICA6c3lub3BzaXM6IEludGVyZmFjZXMgZm9yIGJ6aXAyIGNvbXByZXNzaW9uIGFuZCBkZWNvbXByZXNzaW9uLgogLi4gbW9kdWxlYXV0aG9yOjogR3VzdGF2byBOaWVtZXllciA8bmllbWV5ZXJAY29uZWN0aXZhLmNvbT4KKy4uIG1vZHVsZWF1dGhvcjo6IE5hZGVlbSBWYXdkYSA8bmFkZWVtLnZhd2RhQGdtYWlsLmNvbT4KIC4uIHNlY3Rpb25hdXRob3I6OiBHdXN0YXZvIE5pZW1leWVyIDxuaWVtZXllckBjb25lY3RpdmEuY29tPgorLi4gc2VjdGlvbmF1dGhvcjo6IE5hZGVlbSBWYXdkYSA8bmFkZWVtLnZhd2RhQGdtYWlsLmNvbT4KIAogCi1UaGlzIG1vZHVsZSBwcm92aWRlcyBhIGNvbXByZWhlbnNpdmUgaW50ZXJmYWNlIGZvciB0aGUgYnoyIGNvbXByZXNzaW9uIGxpYnJhcnkuCi1JdCBpbXBsZW1lbnRzIGEgY29tcGxldGUgZmlsZSBpbnRlcmZhY2UsIG9uZS1zaG90IChkZSljb21wcmVzc2lvbiBmdW5jdGlvbnMsIGFuZAotdHlwZXMgZm9yIHNlcXVlbnRpYWwgKGRlKWNvbXByZXNzaW9uLgorVGhpcyBtb2R1bGUgcHJvdmlkZXMgYSBjb21wcmVoZW5zaXZlIGludGVyZmFjZSBmb3IgY29tcHJlc3NpbmcgYW5kCitkZWNvbXByZXNzaW5nIGRhdGEgdXNpbmcgdGhlIGJ6aXAyIGNvbXByZXNzaW9uIGFsZ29yaXRobS4KIAotRm9yIG90aGVyIGFyY2hpdmUgZm9ybWF0cywgc2VlIHRoZSA6bW9kOmBnemlwYCwgOm1vZDpgemlwZmlsZWAsIGFuZAorRm9yIHJlbGF0ZWQgZmlsZSBmb3JtYXRzLCBzZWUgdGhlIDptb2Q6YGd6aXBgLCA6bW9kOmBsem1hYCwgOm1vZDpgemlwZmlsZWAsIGFuZAogOm1vZDpgdGFyZmlsZWAgbW9kdWxlcy4KIAotSGVyZSBpcyBhIHN1bW1hcnkgb2YgdGhlIGZlYXR1cmVzIG9mZmVyZWQgYnkgdGhlIGJ6MiBtb2R1bGU6CitUaGUgOm1vZDpgYnoyYCBtb2R1bGUgY29udGFpbnM6CiAKLSogOmNsYXNzOmBCWjJGaWxlYCBjbGFzcyBpbXBsZW1lbnRzIGEgY29tcGxldGUgZmlsZSBpbnRlcmZhY2UsIGluY2x1ZGluZwotICA6bWV0aDpgfkJaMkZpbGUucmVhZGxpbmVgLCA6bWV0aDpgfkJaMkZpbGUucmVhZGxpbmVzYCwKLSAgOm1ldGg6YH5CWjJGaWxlLndyaXRlbGluZXNgLCA6bWV0aDpgfkJaMkZpbGUuc2Vla2AsIGV0YzsKKyogVGhlIDpjbGFzczpgQloyRmlsZWAgY2xhc3MgZm9yIHJlYWRpbmcgYW5kIHdyaXRpbmcgY29tcHJlc3NlZCBmaWxlcy4KKyogVGhlIDpjbGFzczpgQloyQ29tcHJlc3NvcmAgYW5kIDpjbGFzczpgQloyRGVjb21wcmVzc29yYCBjbGFzc2VzIGZvcgorICBpbmNyZW1lbnRhbCAoZGUpY29tcHJlc3Npb24uCisqIFRoZSA6ZnVuYzpgY29tcHJlc3NgIGFuZCA6ZnVuYzpgZGVjb21wcmVzc2AgZnVuY3Rpb25zIGZvciBvbmUtc2hvdAorICAoZGUpY29tcHJlc3Npb24uCiAKLSogOmNsYXNzOmBCWjJGaWxlYCBjbGFzcyBpbXBsZW1lbnRzIGVtdWxhdGVkIDptZXRoOmB+QloyRmlsZS5zZWVrYCBzdXBwb3J0OwotCi0qIDpjbGFzczpgQloyRmlsZWAgY2xhc3MgaW1wbGVtZW50cyB1bml2ZXJzYWwgbmV3bGluZSBzdXBwb3J0OwotCi0qIDpjbGFzczpgQloyRmlsZWAgY2xhc3Mgb2ZmZXJzIGFuIG9wdGltaXplZCBsaW5lIGl0ZXJhdGlvbiB1c2luZyBhIHJlYWRhaGVhZAotICBhbGdvcml0aG07Ci0KLSogU2VxdWVudGlhbCAoZGUpY29tcHJlc3Npb24gc3VwcG9ydGVkIGJ5IDpjbGFzczpgQloyQ29tcHJlc3NvcmAgYW5kCi0gIDpjbGFzczpgQloyRGVjb21wcmVzc29yYCBjbGFzc2VzOwotCi0qIE9uZS1zaG90IChkZSljb21wcmVzc2lvbiBzdXBwb3J0ZWQgYnkgOmZ1bmM6YGNvbXByZXNzYCBhbmQgOmZ1bmM6YGRlY29tcHJlc3NgCi0gIGZ1bmN0aW9uczsKLQotKiBUaHJlYWQgc2FmZXR5IHVzZXMgaW5kaXZpZHVhbCBsb2NraW5nIG1lY2hhbmlzbS4KK0FsbCBvZiB0aGUgY2xhc3NlcyBpbiB0aGlzIG1vZHVsZSBtYXkgc2FmZWx5IGJlIGFjY2Vzc2VkIGZyb20gbXVsdGlwbGUgdGhyZWFkcy4KIAogCiAoRGUpY29tcHJlc3Npb24gb2YgZmlsZXMKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1IYW5kbGluZyBvZiBjb21wcmVzc2VkIGZpbGVzIGlzIG9mZmVyZWQgYnkgdGhlIDpjbGFzczpgQloyRmlsZWAgY2xhc3MuCisuLiBjbGFzczo6IEJaMkZpbGUoZmlsZW5hbWU9Tm9uZSwgbW9kZT0ncicsIGJ1ZmZlcmluZz1Ob25lLCBjb21wcmVzc2xldmVsPTksIGZpbGVvYmo9Tm9uZSkKIAorICAgT3BlbiBhIGJ6aXAyLWNvbXByZXNzZWQgZmlsZS4KIAotLi4gY2xhc3M6OiBCWjJGaWxlKGZpbGVuYW1lLCBtb2RlPSdyJywgYnVmZmVyaW5nPTAsIGNvbXByZXNzbGV2ZWw9OSkKKyAgIFRoZSA6Y2xhc3M6YEJaMkZpbGVgIGNhbiB3cmFwIGFuIGV4aXN0aW5nIDp0ZXJtOmBmaWxlIG9iamVjdGAgKGdpdmVuIGJ5CisgICAqZmlsZW9iaiopLCBvciBvcGVyYXRlIGRpcmVjdGx5IG9uIGEgbmFtZWQgZmlsZSAobmFtZWQgYnkgKmZpbGVuYW1lKikuCisgICBFeGFjdGx5IG9uZSBvZiB0aGVzZSB0d28gcGFyYW1ldGVycyBzaG91bGQgYmUgcHJvdmlkZWQuCiAKLSAgIE9wZW4gYSBiejIgZmlsZS4gTW9kZSBjYW4gYmUgZWl0aGVyIGBgJ3InYGAgb3IgYGAndydgYCwgZm9yIHJlYWRpbmcgKGRlZmF1bHQpCi0gICBvciB3cml0aW5nLiBXaGVuIG9wZW5lZCBmb3Igd3JpdGluZywgdGhlIGZpbGUgd2lsbCBiZSBjcmVhdGVkIGlmIGl0IGRvZXNuJ3QKLSAgIGV4aXN0LCBhbmQgdHJ1bmNhdGVkIG90aGVyd2lzZS4gSWYgKmJ1ZmZlcmluZyogaXMgZ2l2ZW4sIGBgMGBgIG1lYW5zCi0gICB1bmJ1ZmZlcmVkLCBhbmQgbGFyZ2VyIG51bWJlcnMgc3BlY2lmeSB0aGUgYnVmZmVyIHNpemU7IHRoZSBkZWZhdWx0IGlzCi0gICBgYDBgYC4gSWYgKmNvbXByZXNzbGV2ZWwqIGlzIGdpdmVuLCBpdCBtdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gYGAxYGAgYW5kCi0gICBgYDlgYDsgdGhlIGRlZmF1bHQgaXMgYGA5YGAuIEFkZCBhIGBgJ1UnYGAgdG8gbW9kZSB0byBvcGVuIHRoZSBmaWxlIGZvciBpbnB1dAotICAgd2l0aCB1bml2ZXJzYWwgbmV3bGluZSBzdXBwb3J0LiBBbnkgbGluZSBlbmRpbmcgaW4gdGhlIGlucHV0IGZpbGUgd2lsbCBiZQotICAgc2VlbiBhcyBhIGBgJ1xuJ2BgIGluIFB5dGhvbi4gIEFsc28sIGEgZmlsZSBzbyBvcGVuZWQgZ2FpbnMgdGhlIGF0dHJpYnV0ZQotICAgOmF0dHI6YG5ld2xpbmVzYDsgdGhlIHZhbHVlIGZvciB0aGlzIGF0dHJpYnV0ZSBpcyBvbmUgb2YgYGBOb25lYGAgKG5vIG5ld2xpbmUKLSAgIHJlYWQgeWV0KSwgYGAnXHInYGAsIGBgJ1xuJ2BgLCBgYCdcclxuJ2BgIG9yIGEgdHVwbGUgY29udGFpbmluZyBhbGwgdGhlCi0gICBuZXdsaW5lIHR5cGVzIHNlZW4uIFVuaXZlcnNhbCBuZXdsaW5lcyBhcmUgYXZhaWxhYmxlIG9ubHkgd2hlbgotICAgcmVhZGluZy4gSW5zdGFuY2VzIHN1cHBvcnQgaXRlcmF0aW9uIGluIHRoZSBzYW1lIHdheSBhcyBub3JtYWwgOmNsYXNzOmBmaWxlYAotICAgaW5zdGFuY2VzLgorICAgVGhlICptb2RlKiBhcmd1bWVudCBjYW4gYmUgZWl0aGVyIGBgJ3InYGAgZm9yIHJlYWRpbmcgKGRlZmF1bHQpLCBgYCd3J2BgIGZvcgorICAgb3ZlcndyaXRpbmcsIG9yIGBgJ2EnYGAgZm9yIGFwcGVuZGluZy4gSWYgKmZpbGVvYmoqIGlzIHByb3ZpZGVkLCBhIG1vZGUgb2YKKyAgIGBgJ3cnYGAgZG9lcyBub3QgdHJ1bmNhdGUgdGhlIGZpbGUsIGFuZCBpcyBpbnN0ZWFkIGVxdWl2YWxlbnQgdG8gYGAnYSdgYC4KIAotICAgOmNsYXNzOmBCWjJGaWxlYCBzdXBwb3J0cyB0aGUgOmtleXdvcmQ6YHdpdGhgIHN0YXRlbWVudC4KKyAgIFRoZSAqYnVmZmVyaW5nKiBhcmd1bWVudCBpcyBpZ25vcmVkLiBJdHMgdXNlIGlzIGRlcHJlY2F0ZWQuCisKKyAgIElmICptb2RlKiBpcyBgYCd3J2BgIG9yIGBgJ2EnYGAsICpjb21wcmVzc2xldmVsKiBjYW4gYmUgYSBudW1iZXIgYmV0d2VlbgorICAgYGAxYGAgYW5kIGBgOWBgIHNwZWNpZnlpbmcgdGhlIGxldmVsIG9mIGNvbXByZXNzaW9uOiBgYDFgYCBwcm9kdWNlcyB0aGUKKyAgIGxlYXN0IGNvbXByZXNzaW9uLCBhbmQgYGA5YGAgKGRlZmF1bHQpIHByb2R1Y2VzIHRoZSBtb3N0IGNvbXByZXNzaW9uLgorCisgICBJZiAqbW9kZSogaXMgYGAncidgYCwgdGhlIGlucHV0IGZpbGUgbWF5IGJlIHRoZSBjb25jYXRlbmF0aW9uIG9mIG11bHRpcGxlCisgICBjb21wcmVzc2VkIHN0cmVhbXMuCisKKyAgIDpjbGFzczpgQloyRmlsZWAgcHJvdmlkZXMgYWxsIG9mIHRoZSBtZW1iZXJzIHNwZWNpZmllZCBieSB0aGUKKyAgIDpjbGFzczpgaW8uQnVmZmVyZWRJT0Jhc2VgLCBleGNlcHQgZm9yIDptZXRoOmBkZXRhY2hgIGFuZCA6bWV0aDpgdHJ1bmNhdGVgLgorICAgSXRlcmF0aW9uIGFuZCB0aGUgOmtleXdvcmQ6YHdpdGhgIHN0YXRlbWVudCBhcmUgc3VwcG9ydGVkLgorCisgICA6Y2xhc3M6YEJaMkZpbGVgIGFsc28gcHJvdmlkZXMgdGhlIGZvbGxvd2luZyBtZXRob2Q6CisKKyAgIC4uIG1ldGhvZDo6IHBlZWsoW25dKQorCisgICAgICBSZXR1cm4gYnVmZmVyZWQgZGF0YSB3aXRob3V0IGFkdmFuY2luZyB0aGUgZmlsZSBwb3NpdGlvbi4gQXQgbGVhc3Qgb25lCisgICAgICBieXRlIG9mIGRhdGEgd2lsbCBiZSByZXR1cm5lZCAodW5sZXNzIGF0IEVPRikuIFRoZSBleGFjdCBudW1iZXIgb2YgYnl0ZXMKKyAgICAgIHJldHVybmVkIGlzIHVuc3BlY2lmaWVkLgorCisgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjEKICAgICAgIFN1cHBvcnQgZm9yIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50IHdhcyBhZGRlZC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSA6bWV0aDpgZmlsZW5vYCwgOm1ldGg6YHJlYWRhYmxlYCwgOm1ldGg6YHNlZWthYmxlYCwgOm1ldGg6YHdyaXRhYmxlYCwKKyAgICAgIDptZXRoOmByZWFkMWAgYW5kIDptZXRoOmByZWFkaW50b2AgbWV0aG9kcyB3ZXJlIGFkZGVkLgogCi0gICAuLiBtZXRob2Q6OiBjbG9zZSgpCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhlICpmaWxlb2JqKiBhcmd1bWVudCB0byB0aGUgY29uc3RydWN0b3Igd2FzIGFkZGVkLgogCi0gICAgICBDbG9zZSB0aGUgZmlsZS4gU2V0cyBkYXRhIGF0dHJpYnV0ZSA6YXR0cjpgY2xvc2VkYCB0byB0cnVlLiBBIGNsb3NlZCBmaWxlCi0gICAgICBjYW5ub3QgYmUgdXNlZCBmb3IgZnVydGhlciBJL08gb3BlcmF0aW9ucy4gOm1ldGg6YGNsb3NlYCBtYXkgYmUgY2FsbGVkCi0gICAgICBtb3JlIHRoYW4gb25jZSB3aXRob3V0IGVycm9yLgorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSBgYCdhJ2BgIChhcHBlbmQpIG1vZGUgd2FzIGFkZGVkLCBhbG9uZyB3aXRoIHN1cHBvcnQgZm9yIHJlYWRpbmcKKyAgICAgIG11bHRpLXN0cmVhbSBmaWxlcy4KIAogCi0gICAuLiBtZXRob2Q6OiByZWFkKFtzaXplXSkKLQotICAgICAgUmVhZCBhdCBtb3N0ICpzaXplKiB1bmNvbXByZXNzZWQgYnl0ZXMsIHJldHVybmVkIGFzIGEgYnl0ZSBzdHJpbmcuIElmIHRoZQotICAgICAgKnNpemUqIGFyZ3VtZW50IGlzIG5lZ2F0aXZlIG9yIG9taXR0ZWQsIHJlYWQgdW50aWwgRU9GIGlzIHJlYWNoZWQuCi0KLQotICAgLi4gbWV0aG9kOjogcmVhZGxpbmUoW3NpemVdKQotCi0gICAgICBSZXR1cm4gdGhlIG5leHQgbGluZSBmcm9tIHRoZSBmaWxlLCBhcyBhIGJ5dGUgc3RyaW5nLCByZXRhaW5pbmcgbmV3bGluZS4KLSAgICAgIEEgbm9uLW5lZ2F0aXZlICpzaXplKiBhcmd1bWVudCBsaW1pdHMgdGhlIG1heGltdW0gbnVtYmVyIG9mIGJ5dGVzIHRvCi0gICAgICByZXR1cm4gKGFuIGluY29tcGxldGUgbGluZSBtYXkgYmUgcmV0dXJuZWQgdGhlbikuIFJldHVybiBhbiBlbXB0eSBieXRlCi0gICAgICBzdHJpbmcgYXQgRU9GLgotCi0KLSAgIC4uIG1ldGhvZDo6IHJlYWRsaW5lcyhbc2l6ZV0pCi0KLSAgICAgIFJldHVybiBhIGxpc3Qgb2YgbGluZXMgcmVhZC4gVGhlIG9wdGlvbmFsICpzaXplKiBhcmd1bWVudCwgaWYgZ2l2ZW4sIGlzIGFuCi0gICAgICBhcHByb3hpbWF0ZSBib3VuZCBvbiB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIGluIHRoZSBsaW5lcyByZXR1cm5lZC4KLQotCi0gICAuLiBtZXRob2Q6OiBzZWVrKG9mZnNldFssIHdoZW5jZV0pCi0KLSAgICAgIE1vdmUgdG8gbmV3IGZpbGUgcG9zaXRpb24uIEFyZ3VtZW50ICpvZmZzZXQqIGlzIGEgYnl0ZSBjb3VudC4gT3B0aW9uYWwKLSAgICAgIGFyZ3VtZW50ICp3aGVuY2UqIGRlZmF1bHRzIHRvIGBgb3MuU0VFS19TRVRgYCBvciBgYDBgYCAob2Zmc2V0IGZyb20gc3RhcnQKLSAgICAgIG9mIGZpbGU7IG9mZnNldCBzaG91bGQgYmUgYGA+PSAwYGApOyBvdGhlciB2YWx1ZXMgYXJlIGBgb3MuU0VFS19DVVJgYCBvcgotICAgICAgYGAxYGAgKG1vdmUgcmVsYXRpdmUgdG8gY3VycmVudCBwb3NpdGlvbjsgb2Zmc2V0IGNhbiBiZSBwb3NpdGl2ZSBvcgotICAgICAgbmVnYXRpdmUpLCBhbmQgYGBvcy5TRUVLX0VORGBgIG9yIGBgMmBgIChtb3ZlIHJlbGF0aXZlIHRvIGVuZCBvZiBmaWxlOwotICAgICAgb2Zmc2V0IGlzIHVzdWFsbHkgbmVnYXRpdmUsIGFsdGhvdWdoIG1hbnkgcGxhdGZvcm1zIGFsbG93IHNlZWtpbmcgYmV5b25kCi0gICAgICB0aGUgZW5kIG9mIGEgZmlsZSkuCi0KLSAgICAgIE5vdGUgdGhhdCBzZWVraW5nIG9mIGJ6MiBmaWxlcyBpcyBlbXVsYXRlZCwgYW5kIGRlcGVuZGluZyBvbiB0aGUKLSAgICAgIHBhcmFtZXRlcnMgdGhlIG9wZXJhdGlvbiBtYXkgYmUgZXh0cmVtZWx5IHNsb3cuCi0KLQotICAgLi4gbWV0aG9kOjogdGVsbCgpCi0KLSAgICAgIFJldHVybiB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uLCBhbiBpbnRlZ2VyLgotCi0KLSAgIC4uIG1ldGhvZDo6IHdyaXRlKGRhdGEpCi0KLSAgICAgIFdyaXRlIHRoZSBieXRlIHN0cmluZyAqZGF0YSogdG8gZmlsZS4gTm90ZSB0aGF0IGR1ZSB0byBidWZmZXJpbmcsCi0gICAgICA6bWV0aDpgY2xvc2VgIG1heSBiZSBuZWVkZWQgYmVmb3JlIHRoZSBmaWxlIG9uIGRpc2sgcmVmbGVjdHMgdGhlIGRhdGEKLSAgICAgIHdyaXR0ZW4uCi0KLQotICAgLi4gbWV0aG9kOjogd3JpdGVsaW5lcyhzZXF1ZW5jZV9vZl9ieXRlX3N0cmluZ3MpCi0KLSAgICAgIFdyaXRlIHRoZSBzZXF1ZW5jZSBvZiBieXRlIHN0cmluZ3MgdG8gdGhlIGZpbGUuIE5vdGUgdGhhdCBuZXdsaW5lcyBhcmUgbm90Ci0gICAgICBhZGRlZC4gVGhlIHNlcXVlbmNlIGNhbiBiZSBhbnkgaXRlcmFibGUgb2JqZWN0IHByb2R1Y2luZyBieXRlIHN0cmluZ3MuCi0gICAgICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gY2FsbGluZyB3cml0ZSgpIGZvciBlYWNoIGJ5dGUgc3RyaW5nLgotCi0KLVNlcXVlbnRpYWwgKGRlKWNvbXByZXNzaW9uCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi1TZXF1ZW50aWFsIGNvbXByZXNzaW9uIGFuZCBkZWNvbXByZXNzaW9uIGlzIGRvbmUgdXNpbmcgdGhlIGNsYXNzZXMKLTpjbGFzczpgQloyQ29tcHJlc3NvcmAgYW5kIDpjbGFzczpgQloyRGVjb21wcmVzc29yYC4KLQorSW5jcmVtZW50YWwgKGRlKWNvbXByZXNzaW9uCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogLi4gY2xhc3M6OiBCWjJDb21wcmVzc29yKGNvbXByZXNzbGV2ZWw9OSkKIAogICAgQ3JlYXRlIGEgbmV3IGNvbXByZXNzb3Igb2JqZWN0LiBUaGlzIG9iamVjdCBtYXkgYmUgdXNlZCB0byBjb21wcmVzcyBkYXRhCi0gICBzZXF1ZW50aWFsbHkuIElmIHlvdSB3YW50IHRvIGNvbXByZXNzIGRhdGEgaW4gb25lIHNob3QsIHVzZSB0aGUKLSAgIDpmdW5jOmBjb21wcmVzc2AgZnVuY3Rpb24gaW5zdGVhZC4gVGhlICpjb21wcmVzc2xldmVsKiBwYXJhbWV0ZXIsIGlmIGdpdmVuLAotICAgbXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIGBgMWBgIGFuZCBgYDlgYDsgdGhlIGRlZmF1bHQgaXMgYGA5YGAuCisgICBpbmNyZW1lbnRhbGx5LiBGb3Igb25lLXNob3QgY29tcHJlc3Npb24sIHVzZSB0aGUgOmZ1bmM6YGNvbXByZXNzYCBmdW5jdGlvbgorICAgaW5zdGVhZC4KKworICAgKmNvbXByZXNzbGV2ZWwqLCBpZiBnaXZlbiwgbXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIGBgMWBgIGFuZCBgYDlgYC4gVGhlCisgICBkZWZhdWx0IGlzIGBgOWBgLgogCiAgICAuLiBtZXRob2Q6OiBjb21wcmVzcyhkYXRhKQogCi0gICAgICBQcm92aWRlIG1vcmUgZGF0YSB0byB0aGUgY29tcHJlc3NvciBvYmplY3QuIEl0IHdpbGwgcmV0dXJuIGNodW5rcyBvZgotICAgICAgY29tcHJlc3NlZCBkYXRhIHdoZW5ldmVyIHBvc3NpYmxlLiBXaGVuIHlvdSd2ZSBmaW5pc2hlZCBwcm92aWRpbmcgZGF0YSB0bwotICAgICAgY29tcHJlc3MsIGNhbGwgdGhlIDptZXRoOmBmbHVzaGAgbWV0aG9kIHRvIGZpbmlzaCB0aGUgY29tcHJlc3Npb24gcHJvY2VzcywKLSAgICAgIGFuZCByZXR1cm4gd2hhdCBpcyBsZWZ0IGluIGludGVybmFsIGJ1ZmZlcnMuCisgICAgICBQcm92aWRlIGRhdGEgdG8gdGhlIGNvbXByZXNzb3Igb2JqZWN0LiBSZXR1cm5zIGEgY2h1bmsgb2YgY29tcHJlc3NlZCBkYXRhCisgICAgICBpZiBwb3NzaWJsZSwgb3IgYW4gZW1wdHkgYnl0ZSBzdHJpbmcgb3RoZXJ3aXNlLgorCisgICAgICBXaGVuIHlvdSBoYXZlIGZpbmlzaGVkIHByb3ZpZGluZyBkYXRhIHRvIHRoZSBjb21wcmVzc29yLCBjYWxsIHRoZQorICAgICAgOm1ldGg6YGZsdXNoYCBtZXRob2QgdG8gZmluaXNoIHRoZSBjb21wcmVzc2lvbiBwcm9jZXNzLgogCiAKICAgIC4uIG1ldGhvZDo6IGZsdXNoKCkKIAotICAgICAgRmluaXNoIHRoZSBjb21wcmVzc2lvbiBwcm9jZXNzIGFuZCByZXR1cm4gd2hhdCBpcyBsZWZ0IGluIGludGVybmFsCi0gICAgICBidWZmZXJzLiBZb3UgbXVzdCBub3QgdXNlIHRoZSBjb21wcmVzc29yIG9iamVjdCBhZnRlciBjYWxsaW5nIHRoaXMgbWV0aG9kLgorICAgICAgRmluaXNoIHRoZSBjb21wcmVzc2lvbiBwcm9jZXNzLiBSZXR1cm5zIHRoZSBjb21wcmVzc2VkIGRhdGEgbGVmdCBpbgorICAgICAgaW50ZXJuYWwgYnVmZmVycy4KKworICAgICAgVGhlIGNvbXByZXNzb3Igb2JqZWN0IG1heSBub3QgYmUgdXNlZCBhZnRlciB0aGlzIG1ldGhvZCBoYXMgYmVlbiBjYWxsZWQuCiAKIAogLi4gY2xhc3M6OiBCWjJEZWNvbXByZXNzb3IoKQogCiAgICBDcmVhdGUgYSBuZXcgZGVjb21wcmVzc29yIG9iamVjdC4gVGhpcyBvYmplY3QgbWF5IGJlIHVzZWQgdG8gZGVjb21wcmVzcyBkYXRhCi0gICBzZXF1ZW50aWFsbHkuIElmIHlvdSB3YW50IHRvIGRlY29tcHJlc3MgZGF0YSBpbiBvbmUgc2hvdCwgdXNlIHRoZQotICAgOmZ1bmM6YGRlY29tcHJlc3NgIGZ1bmN0aW9uIGluc3RlYWQuCisgICBpbmNyZW1lbnRhbGx5LiBGb3Igb25lLXNob3QgY29tcHJlc3Npb24sIHVzZSB0aGUgOmZ1bmM6YGRlY29tcHJlc3NgIGZ1bmN0aW9uCisgICBpbnN0ZWFkLgorCisgICAuLiBub3RlOjoKKyAgICAgIFRoaXMgY2xhc3MgZG9lcyBub3QgdHJhbnNwYXJlbnRseSBoYW5kbGUgaW5wdXRzIGNvbnRhaW5pbmcgbXVsdGlwbGUKKyAgICAgIGNvbXByZXNzZWQgc3RyZWFtcywgdW5saWtlIDpmdW5jOmBkZWNvbXByZXNzYCBhbmQgOmNsYXNzOmBCWjJGaWxlYC4gSWYKKyAgICAgIHlvdSBuZWVkIHRvIGRlY29tcHJlc3MgYSBtdWx0aS1zdHJlYW0gaW5wdXQgd2l0aCA6Y2xhc3M6YEJaMkRlY29tcHJlc3NvcmAsCisgICAgICB5b3UgbXVzdCB1c2UgYSBuZXcgZGVjb21wcmVzc29yIGZvciBlYWNoIHN0cmVhbS4KIAogICAgLi4gbWV0aG9kOjogZGVjb21wcmVzcyhkYXRhKQogCi0gICAgICBQcm92aWRlIG1vcmUgZGF0YSB0byB0aGUgZGVjb21wcmVzc29yIG9iamVjdC4gSXQgd2lsbCByZXR1cm4gY2h1bmtzIG9mCi0gICAgICBkZWNvbXByZXNzZWQgZGF0YSB3aGVuZXZlciBwb3NzaWJsZS4gSWYgeW91IHRyeSB0byBkZWNvbXByZXNzIGRhdGEgYWZ0ZXIKLSAgICAgIHRoZSBlbmQgb2Ygc3RyZWFtIGlzIGZvdW5kLCA6ZXhjOmBFT0ZFcnJvcmAgd2lsbCBiZSByYWlzZWQuIElmIGFueSBkYXRhCi0gICAgICB3YXMgZm91bmQgYWZ0ZXIgdGhlIGVuZCBvZiBzdHJlYW0sIGl0J2xsIGJlIGlnbm9yZWQgYW5kIHNhdmVkIGluCi0gICAgICA6YXR0cjpgdW51c2VkX2RhdGFgIGF0dHJpYnV0ZS4KKyAgICAgIFByb3ZpZGUgZGF0YSB0byB0aGUgZGVjb21wcmVzc29yIG9iamVjdC4gUmV0dXJucyBhIGNodW5rIG9mIGRlY29tcHJlc3NlZAorICAgICAgZGF0YSBpZiBwb3NzaWJsZSwgb3IgYW4gZW1wdHkgYnl0ZSBzdHJpbmcgb3RoZXJ3aXNlLgorCisgICAgICBBdHRlbXB0aW5nIHRvIGRlY29tcHJlc3MgZGF0YSBhZnRlciB0aGUgZW5kIG9mIHRoZSBjdXJyZW50IHN0cmVhbSBpcworICAgICAgcmVhY2hlZCByYWlzZXMgYW4gOmV4YzpgRU9GRXJyb3JgLiBJZiBhbnkgZGF0YSBpcyBmb3VuZCBhZnRlciB0aGUgZW5kIG9mCisgICAgICB0aGUgc3RyZWFtLCBpdCBpcyBpZ25vcmVkIGFuZCBzYXZlZCBpbiB0aGUgOmF0dHI6YHVudXNlZF9kYXRhYCBhdHRyaWJ1dGUuCisKKworICAgLi4gYXR0cmlidXRlOjogZW9mCisKKyAgICAgIFRydWUgaWYgdGhlIGVuZC1vZi1zdHJlYW0gbWFya2VyIGhhcyBiZWVuIHJlYWNoZWQuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKyAgIC4uIGF0dHJpYnV0ZTo6IHVudXNlZF9kYXRhCisKKyAgICAgIERhdGEgZm91bmQgYWZ0ZXIgdGhlIGVuZCBvZiB0aGUgY29tcHJlc3NlZCBzdHJlYW0uCisKKyAgICAgIElmIHRoaXMgYXR0cmlidXRlIGlzIGFjY2Vzc2VkIGJlZm9yZSB0aGUgZW5kIG9mIHRoZSBzdHJlYW0gaGFzIGJlZW4KKyAgICAgIHJlYWNoZWQsIGl0cyB2YWx1ZSB3aWxsIGJlIGBgYicnYGAuCiAKIAogT25lLXNob3QgKGRlKWNvbXByZXNzaW9uCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotT25lLXNob3QgY29tcHJlc3Npb24gYW5kIGRlY29tcHJlc3Npb24gaXMgcHJvdmlkZWQgdGhyb3VnaCB0aGUgOmZ1bmM6YGNvbXByZXNzYAotYW5kIDpmdW5jOmBkZWNvbXByZXNzYCBmdW5jdGlvbnMuCi0KLQogLi4gZnVuY3Rpb246OiBjb21wcmVzcyhkYXRhLCBjb21wcmVzc2xldmVsPTkpCiAKLSAgIENvbXByZXNzICpkYXRhKiBpbiBvbmUgc2hvdC4gSWYgeW91IHdhbnQgdG8gY29tcHJlc3MgZGF0YSBzZXF1ZW50aWFsbHksIHVzZQotICAgYW4gaW5zdGFuY2Ugb2YgOmNsYXNzOmBCWjJDb21wcmVzc29yYCBpbnN0ZWFkLiBUaGUgKmNvbXByZXNzbGV2ZWwqIHBhcmFtZXRlciwKLSAgIGlmIGdpdmVuLCBtdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gYGAxYGAgYW5kIGBgOWBgOyB0aGUgZGVmYXVsdCBpcyBgYDlgYC4KKyAgIENvbXByZXNzICpkYXRhKi4KKworICAgKmNvbXByZXNzbGV2ZWwqLCBpZiBnaXZlbiwgbXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIGBgMWBgIGFuZCBgYDlgYC4gVGhlCisgICBkZWZhdWx0IGlzIGBgOWBgLgorCisgICBGb3IgaW5jcmVtZW50YWwgY29tcHJlc3Npb24sIHVzZSBhIDpjbGFzczpgQloyQ29tcHJlc3NvcmAgaW5zdGVhZC4KIAogCiAuLiBmdW5jdGlvbjo6IGRlY29tcHJlc3MoZGF0YSkKIAotICAgRGVjb21wcmVzcyAqZGF0YSogaW4gb25lIHNob3QuIElmIHlvdSB3YW50IHRvIGRlY29tcHJlc3MgZGF0YSBzZXF1ZW50aWFsbHksCi0gICB1c2UgYW4gaW5zdGFuY2Ugb2YgOmNsYXNzOmBCWjJEZWNvbXByZXNzb3JgIGluc3RlYWQuCisgICBEZWNvbXByZXNzICpkYXRhKi4KKworICAgSWYgKmRhdGEqIGlzIHRoZSBjb25jYXRlbmF0aW9uIG9mIG11bHRpcGxlIGNvbXByZXNzZWQgc3RyZWFtcywgZGVjb21wcmVzcworICAgYWxsIG9mIHRoZSBzdHJlYW1zLgorCisgICBGb3IgaW5jcmVtZW50YWwgZGVjb21wcmVzc2lvbiwgdXNlIGEgOmNsYXNzOmBCWjJEZWNvbXByZXNzb3JgIGluc3RlYWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBTdXBwb3J0IGZvciBtdWx0aS1zdHJlYW0gaW5wdXRzIHdhcyBhZGRlZC4KIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvY2h1bmsucnN0IGIvRG9jL2xpYnJhcnkvY2h1bmsucnN0CmluZGV4IGQzNTU4YTQuLmMxYmE0OTcgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2NodW5rLnJzdAorKysgYi9Eb2MvbGlicmFyeS9jaHVuay5yc3QKQEAgLTg0LDggKzg0LDkgQEAKICAgICAgIENsb3NlIGFuZCBza2lwIHRvIHRoZSBlbmQgb2YgdGhlIGNodW5rLiAgVGhpcyBkb2VzIG5vdCBjbG9zZSB0aGUKICAgICAgIHVuZGVybHlpbmcgZmlsZS4KIAotICAgVGhlIHJlbWFpbmluZyBtZXRob2RzIHdpbGwgcmFpc2UgOmV4YzpgSU9FcnJvcmAgaWYgY2FsbGVkIGFmdGVyIHRoZQotICAgOm1ldGg6YGNsb3NlYCBtZXRob2QgaGFzIGJlZW4gY2FsbGVkLgorICAgVGhlIHJlbWFpbmluZyBtZXRob2RzIHdpbGwgcmFpc2UgOmV4YzpgT1NFcnJvcmAgaWYgY2FsbGVkIGFmdGVyIHRoZQorICAgOm1ldGg6YGNsb3NlYCBtZXRob2QgaGFzIGJlZW4gY2FsbGVkLiAgQmVmb3JlIFB5dGhvbiAzLjMsIHRoZXkgdXNlZCB0bworICAgcmFpc2UgOmV4YzpgSU9FcnJvcmAsIG5vdyBhbiBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAogCiAgICAuLiBtZXRob2Q6OiBpc2F0dHkoKQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvY21kLnJzdCBiL0RvYy9saWJyYXJ5L2NtZC5yc3QKaW5kZXggZmQ3ZjQ1My4uMGM0M2JiOCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvY21kLnJzdAorKysgYi9Eb2MvbGlicmFyeS9jbWQucnN0CkBAIC0yODUsOCArMjg1LDggQEAKICAgICAgICAgZGVmIGRvX3BsYXliYWNrKHNlbGYsIGFyZyk6CiAgICAgICAgICAgICAnUGxheWJhY2sgY29tbWFuZHMgZnJvbSBhIGZpbGU6ICBQTEFZQkFDSyByb3NlLmNtZCcKICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQotICAgICAgICAgICAgY21kcyA9IG9wZW4oYXJnKS5yZWFkKCkuc3BsaXRsaW5lcygpCi0gICAgICAgICAgICBzZWxmLmNtZHF1ZXVlLmV4dGVuZChjbWRzKQorICAgICAgICAgICAgd2l0aCBvcGVuKGFyZykgYXMgZjoKKyAgICAgICAgICAgICAgICBzZWxmLmNtZHF1ZXVlLmV4dGVuZChmLnJlYWQoKS5zcGxpdGxpbmVzKCkpCiAgICAgICAgIGRlZiBwcmVjbWQoc2VsZiwgbGluZSk6CiAgICAgICAgICAgICBsaW5lID0gbGluZS5sb3dlcigpCiAgICAgICAgICAgICBpZiBzZWxmLmZpbGUgYW5kICdwbGF5YmFjaycgbm90IGluIGxpbmU6CmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9jb2RlY3MucnN0IGIvRG9jL2xpYnJhcnkvY29kZWNzLnJzdAppbmRleCA3NzQ3Nzk0Li5hOWZhZTk1IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9jb2RlY3MucnN0CisrKyBiL0RvYy9saWJyYXJ5L2NvZGVjcy5yc3QKQEAgLTQ1OCw3ICs0NTgsOCBAQAogCiAgICAuLiBtZXRob2Q6OiByZXNldCgpCiAKLSAgICAgIFJlc2V0IHRoZSBlbmNvZGVyIHRvIHRoZSBpbml0aWFsIHN0YXRlLgorICAgICAgUmVzZXQgdGhlIGVuY29kZXIgdG8gdGhlIGluaXRpYWwgc3RhdGUuIFRoZSBvdXRwdXQgaXMgZGlzY2FyZGVkOiBjYWxsCisgICAgICBgYC5lbmNvZGUoJycsIGZpbmFsPVRydWUpYGAgdG8gcmVzZXQgdGhlIGVuY29kZXIgYW5kIHRvIGdldCB0aGUgb3V0cHV0LgogCiAKIC4uIG1ldGhvZDo6IEluY3JlbWVudGFsRW5jb2Rlci5nZXRzdGF0ZSgpCkBAIC03ODYsMTEgKzc4Nyw5IEBACiBFbmNvZGluZ3MgYW5kIFVuaWNvZGUKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1TdHJpbmdzIGFyZSBzdG9yZWQgaW50ZXJuYWxseSBhcyBzZXF1ZW5jZXMgb2YgY29kZXBvaW50cyAodG8gYmUgcHJlY2lzZQotYXMgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYXJyYXlzKS4gRGVwZW5kaW5nIG9uIHRoZSB3YXkgUHl0aG9uIGlzIGNvbXBpbGVkIChlaXRoZXIKLXZpYSBgYC0td2l0aG91dC13aWRlLXVuaWNvZGVgYCBvciBgYC0td2l0aC13aWRlLXVuaWNvZGVgYCwgd2l0aCB0aGUKLWZvcm1lciBiZWluZyB0aGUgZGVmYXVsdCkgOmM6dHlwZTpgUHlfVU5JQ09ERWAgaXMgZWl0aGVyIGEgMTYtYml0IG9yIDMyLWJpdCBkYXRhCi10eXBlLiBPbmNlIGEgc3RyaW5nIG9iamVjdCBpcyB1c2VkIG91dHNpZGUgb2YgQ1BVIGFuZCBtZW1vcnksIENQVSBlbmRpYW5uZXNzCitTdHJpbmdzIGFyZSBzdG9yZWQgaW50ZXJuYWxseSBhcyBzZXF1ZW5jZXMgb2YgY29kZXBvaW50cyBpbiByYW5nZSBgYDAgLSAxMEZGRkZgYAorKHNlZSA6cGVwOmAzOTNgIGZvciBtb3JlIGRldGFpbHMgYWJvdXQgdGhlIGltcGxlbWVudGF0aW9uKS4KK09uY2UgYSBzdHJpbmcgb2JqZWN0IGlzIHVzZWQgb3V0c2lkZSBvZiBDUFUgYW5kIG1lbW9yeSwgQ1BVIGVuZGlhbm5lc3MKIGFuZCBob3cgdGhlc2UgYXJyYXlzIGFyZSBzdG9yZWQgYXMgYnl0ZXMgYmVjb21lIGFuIGlzc3VlLiAgVHJhbnNmb3JtaW5nIGEKIHN0cmluZyBvYmplY3QgaW50byBhIHNlcXVlbmNlIG9mIGJ5dGVzIGlzIGNhbGxlZCBlbmNvZGluZyBhbmQgcmVjcmVhdGluZyB0aGUKIHN0cmluZyBvYmplY3QgZnJvbSB0aGUgc2VxdWVuY2Ugb2YgYnl0ZXMgaXMga25vd24gYXMgZGVjb2RpbmcuICBUaGVyZSBhcmUgbWFueQpAQCAtOTAxLDYgKzkwMCwxNSBAQAogY2FzZSBvciB1c2UgYSBoeXBoZW4gaW5zdGVhZCBvZiBhbiB1bmRlcnNjb3JlIGFyZSBhbHNvIHZhbGlkIGFsaWFzZXM7IHRoZXJlZm9yZSwKIGUuZy4gYGAndXRmLTgnYGAgaXMgYSB2YWxpZCBhbGlhcyBmb3IgdGhlIGBgJ3V0Zl84J2BgIGNvZGVjLgogCisuLiBpbXBsLWRldGFpbDo6CisKKyAgIFNvbWUgY29tbW9uIGVuY29kaW5ncyBjYW4gYnlwYXNzIHRoZSBjb2RlY3MgbG9va3VwIG1hY2hpbmVyeSB0bworICAgaW1wcm92ZSBwZXJmb3JtYW5jZS4gIFRoZXNlIG9wdGltaXphdGlvbiBvcHBvcnR1bml0aWVzIGFyZSBvbmx5CisgICByZWNvZ25pemVkIGJ5IENQeXRob24gZm9yIGEgbGltaXRlZCBzZXQgb2YgYWxpYXNlczogdXRmLTgsIHV0ZjgsCisgICBsYXRpbi0xLCBsYXRpbjEsIGlzby04ODU5LTEsIG1iY3MgKFdpbmRvd3Mgb25seSksIGFzY2lpLCB1dGYtMTYsCisgICBhbmQgdXRmLTMyLiAgVXNpbmcgYWx0ZXJuYXRpdmUgc3BlbGxpbmdzIGZvciB0aGVzZSBlbmNvZGluZ3MgbWF5CisgICByZXN1bHQgaW4gc2xvd2VyIGV4ZWN1dGlvbi4KKwogTWFueSBvZiB0aGUgY2hhcmFjdGVyIHNldHMgc3VwcG9ydCB0aGUgc2FtZSBsYW5ndWFnZXMuIFRoZXkgdmFyeSBpbiBpbmRpdmlkdWFsCiBjaGFyYWN0ZXJzIChlLmcuIHdoZXRoZXIgdGhlIEVVUk8gU0lHTiBpcyBzdXBwb3J0ZWQgb3Igbm90KSwgYW5kIGluIHRoZQogYXNzaWdubWVudCBvZiBjaGFyYWN0ZXJzIHRvIGNvZGUgcG9zaXRpb25zLiBGb3IgdGhlIEV1cm9wZWFuIGxhbmd1YWdlcyBpbgpAQCAtMTAwMyw2ICsxMDExLDExIEBACiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiB8IGNwMTI1OCAgICAgICAgICB8IHdpbmRvd3MtMTI1OCAgICAgICAgICAgICAgICAgICB8IFZpZXRuYW1lc2UgICAgICAgICAgICAgICAgICAgICB8CiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IGNwNjUwMDEgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFdpbmRvd3Mgb25seTogV2luZG93cyBVVEYtOCAgICB8Cit8ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IChgYENQX1VURjhgYCkgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IC4uIHZlcnNpb25hZGRlZDo6IDMuMyAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiB8IGV1Y19qcCAgICAgICAgICB8IGV1Y2pwLCB1amlzLCB1LWppcyAgICAgICAgICAgICB8IEphcGFuZXNlICAgICAgICAgICAgICAgICAgICAgICB8CiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiB8IGV1Y19qaXNfMjAwNCAgICB8IGppc3gwMjEzLCBldWNqaXMyMDA0ICAgICAgICAgICB8IEphcGFuZXNlICAgICAgICAgICAgICAgICAgICAgICB8CkBAIC0xMTYwLDYgKzExNzMsOCBAQAogfCB1bmljb2RlX2ludGVybmFsICAgfCAgICAgICAgIHwgUmV0dXJuIHRoZSBpbnRlcm5hbCAgICAgICB8CiB8ICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfCByZXByZXNlbnRhdGlvbiBvZiB0aGUgICAgIHwKIHwgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8IG9wZXJhbmQgICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfCAuLiBkZXByZWNhdGVkOjogMy4zICAgICAgIHwKICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogCiBUaGUgZm9sbG93aW5nIGNvZGVjcyBwcm92aWRlIGJ5dGVzLXRvLWJ5dGVzIG1hcHBpbmdzLgpAQCAtMTI3MiwxMiArMTI4NywxMyBAQAogLi4gbW9kdWxlOjogZW5jb2RpbmdzLm1iY3MKICAgIDpzeW5vcHNpczogV2luZG93cyBBTlNJIGNvZGVwYWdlCiAKLUVuY29kZSBvcGVyYW5kIGFjY29yZGluZyB0byB0aGUgQU5TSSBjb2RlcGFnZSAoQ1BfQUNQKS4gVGhpcyBjb2RlYyBvbmx5Ci1zdXBwb3J0cyBgYCdzdHJpY3QnYGAgYW5kIGBgJ3JlcGxhY2UnYGAgZXJyb3IgaGFuZGxlcnMgdG8gZW5jb2RlLCBhbmQKLWBgJ3N0cmljdCdgYCBhbmQgYGAnaWdub3JlJ2BgIGVycm9yIGhhbmRsZXJzIHRvIGRlY29kZS4KK0VuY29kZSBvcGVyYW5kIGFjY29yZGluZyB0byB0aGUgQU5TSSBjb2RlcGFnZSAoQ1BfQUNQKS4KIAogQXZhaWxhYmlsaXR5OiBXaW5kb3dzIG9ubHkuCiAKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICBTdXBwb3J0IGFueSBlcnJvciBoYW5kbGVyLgorCiAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgQmVmb3JlIDMuMiwgdGhlICplcnJvcnMqIGFyZ3VtZW50IHdhcyBpZ25vcmVkOyBgYCdyZXBsYWNlJ2BgIHdhcyBhbHdheXMgdXNlZAogICAgdG8gZW5jb2RlLCBhbmQgYGAnaWdub3JlJ2BgIHRvIGRlY29kZS4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2NvbGxlY3Rpb25zLmFiYy5yc3QgYi9Eb2MvbGlicmFyeS9jb2xsZWN0aW9ucy5hYmMucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk4NzM0ODkKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9jb2xsZWN0aW9ucy5hYmMucnN0CkBAIC0wLDAgKzEsMTgyIEBACis6bW9kOmBjb2xsZWN0aW9ucy5hYmNgIC0tLSBBYnN0cmFjdCBCYXNlIENsYXNzZXMgZm9yIENvbnRhaW5lcnMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBjb2xsZWN0aW9ucy5hYmMKKyAgIDpzeW5vcHNpczogQWJzdHJhY3QgYmFzZSBjbGFzc2VzIGZvciBjb250YWluZXJzCisuLiBtb2R1bGVhdXRob3I6OiBSYXltb25kIEhldHRpbmdlciA8cHl0aG9uIGF0IHJjbi5jb20+CisuLiBzZWN0aW9uYXV0aG9yOjogUmF5bW9uZCBIZXR0aW5nZXIgPHB5dGhvbiBhdCByY24uY29tPgorCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgIEZvcm1lcmx5LCB0aGlzIG1vZHVsZSB3YXMgcGFydCBvZiB0aGUgOm1vZDpgY29sbGVjdGlvbnNgIG1vZHVsZS4KKworLi4gdGVzdHNldHVwOjogKgorCisgICBmcm9tIGNvbGxlY3Rpb25zIGltcG9ydCAqCisgICBpbXBvcnQgaXRlcnRvb2xzCisgICBfX25hbWVfXyA9ICc8ZG9jdGVzdD4nCisKKyoqU291cmNlIGNvZGU6KiogOnNvdXJjZTpgTGliL2NvbGxlY3Rpb25zL2FiYy5weWAKKworLS0tLS0tLS0tLS0tLS0KKworVGhpcyBtb2R1bGUgcHJvdmlkZXMgOnRlcm06YGFic3RyYWN0IGJhc2UgY2xhc3NlcyA8YWJzdHJhY3QgYmFzZSBjbGFzcz5gIHRoYXQKK2NhbiBiZSB1c2VkIHRvIHRlc3Qgd2hldGhlciBhIGNsYXNzIHByb3ZpZGVzIGEgcGFydGljdWxhciBpbnRlcmZhY2U7IGZvcgorZXhhbXBsZSwgd2hldGhlciBpdCBpcyBoYXNoYWJsZSBvciB3aGV0aGVyIGl0IGlzIGEgbWFwcGluZy4KKworCisuLiBfY29sbGVjdGlvbnMtYWJzdHJhY3QtYmFzZS1jbGFzc2VzOgorCitDb2xsZWN0aW9ucyBBYnN0cmFjdCBCYXNlIENsYXNzZXMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgY29sbGVjdGlvbnMgbW9kdWxlIG9mZmVycyB0aGUgZm9sbG93aW5nIDp0ZXJtOmBBQkNzIDxhYnN0cmFjdCBiYXNlIGNsYXNzPmA6CisKKz09PT09PT09PT09PT09PT09PT09PT09PT0gID09PT09PT09PT09PT09PT09PT09PSAgPT09PT09PT09PT09PT09PT09PT09PSAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorQUJDICAgICAgICAgICAgICAgICAgICAgICAgSW5oZXJpdHMgZnJvbSAgICAgICAgICBBYnN0cmFjdCBNZXRob2RzICAgICAgICBNaXhpbiBNZXRob2RzCis9PT09PT09PT09PT09PT09PT09PT09PT09ICA9PT09PT09PT09PT09PT09PT09PT0gID09PT09PT09PT09PT09PT09PT09PT0gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKzpjbGFzczpgQ29udGFpbmVyYCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2NvbnRhaW5zX19gYAorOmNsYXNzOmBIYXNoYWJsZWAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9faGFzaF9fYGAKKzpjbGFzczpgSXRlcmFibGVgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2l0ZXJfX2BgCis6Y2xhc3M6YEl0ZXJhdG9yYCAgICAgICAgICA6Y2xhc3M6YEl0ZXJhYmxlYCAgICAgIGBgX19uZXh0X19gYCAgICAgICAgICAgIGBgX19pdGVyX19gYAorOmNsYXNzOmBTaXplZGAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9fbGVuX19gYAorOmNsYXNzOmBDYWxsYWJsZWAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9fY2FsbF9fYGAKKworOmNsYXNzOmBTZXF1ZW5jZWAgICAgICAgICAgOmNsYXNzOmBTaXplZGAsICAgICAgICBgYF9fZ2V0aXRlbV9fYGAgICAgICAgICBgYF9fY29udGFpbnNfX2BgLCBgYF9faXRlcl9fYGAsIGBgX19yZXZlcnNlZF9fYGAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6Y2xhc3M6YEl0ZXJhYmxlYCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgaW5kZXhgYCwgYW5kIGBgY291bnRgYAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOmNsYXNzOmBDb250YWluZXJgCisKKzpjbGFzczpgTXV0YWJsZVNlcXVlbmNlYCAgIDpjbGFzczpgU2VxdWVuY2VgICAgICAgYGBfX3NldGl0ZW1fX2BgLCAgICAgICAgSW5oZXJpdGVkIDpjbGFzczpgU2VxdWVuY2VgIG1ldGhvZHMgYW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgX19kZWxpdGVtX19gYCwgICAgICAgIGBgYXBwZW5kYGAsIGBgcmV2ZXJzZWBgLCBgYGV4dGVuZGBgLCBgYHBvcGBgLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYGluc2VydGBgICAgICAgICAgICAgICBgYHJlbW92ZWBgLCBgYGNsZWFyYGAsIGFuZCBgYF9faWFkZF9fYGAKKworOmNsYXNzOmBTZXRgICAgICAgICAgICAgICAgOmNsYXNzOmBTaXplZGAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9fbGVfX2BgLCBgYF9fbHRfX2BgLCBgYF9fZXFfX2BgLCBgYF9fbmVfX2BgLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgOmNsYXNzOmBJdGVyYWJsZWAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9fZ3RfX2BgLCBgYF9fZ2VfX2BgLCBgYF9fYW5kX19gYCwgYGBfX29yX19gYCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDpjbGFzczpgQ29udGFpbmVyYCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX3N1Yl9fYGAsIGBgX194b3JfX2BgLCBhbmQgYGBpc2Rpc2pvaW50YGAKKworOmNsYXNzOmBNdXRhYmxlU2V0YCAgICAgICAgOmNsYXNzOmBTZXRgICAgICAgICAgICBgYGFkZGBgLCAgICAgICAgICAgICAgICBJbmhlcml0ZWQgOmNsYXNzOmBTZXRgIG1ldGhvZHMgYW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgZGlzY2FyZGBgICAgICAgICAgICAgIGBgY2xlYXJgYCwgYGBwb3BgYCwgYGByZW1vdmVgYCwgYGBfX2lvcl9fYGAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgX19pYW5kX19gYCwgYGBfX2l4b3JfX2BgLCBhbmQgYGBfX2lzdWJfX2BgCisKKzpjbGFzczpgTWFwcGluZ2AgICAgICAgICAgIDpjbGFzczpgU2l6ZWRgLCAgICAgICAgYGBfX2dldGl0ZW1fX2BgICAgICAgICAgYGBfX2NvbnRhaW5zX19gYCwgYGBrZXlzYGAsIGBgaXRlbXNgYCwgYGB2YWx1ZXNgYCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDpjbGFzczpgSXRlcmFibGVgLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBnZXRgYCwgYGBfX2VxX19gYCwgYW5kIGBgX19uZV9fYGAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDpjbGFzczpgQ29udGFpbmVyYAorCis6Y2xhc3M6YE11dGFibGVNYXBwaW5nYCAgICA6Y2xhc3M6YE1hcHBpbmdgICAgICAgIGBgX19zZXRpdGVtX19gYCwgICAgICAgIEluaGVyaXRlZCA6Y2xhc3M6YE1hcHBpbmdgIG1ldGhvZHMgYW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgX19kZWxpdGVtX19gYCAgICAgICAgIGBgcG9wYGAsIGBgcG9waXRlbWBgLCBgYGNsZWFyYGAsIGBgdXBkYXRlYGAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBgYHNldGRlZmF1bHRgYAorCisKKzpjbGFzczpgTWFwcGluZ1ZpZXdgICAgICAgIDpjbGFzczpgU2l6ZWRgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2xlbl9fYGAKKzpjbGFzczpgSXRlbXNWaWV3YCAgICAgICAgIDpjbGFzczpgTWFwcGluZ1ZpZXdgLCAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2NvbnRhaW5zX19gYCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIDpjbGFzczpgU2V0YCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2l0ZXJfX2BgCis6Y2xhc3M6YEtleXNWaWV3YCAgICAgICAgICA6Y2xhc3M6YE1hcHBpbmdWaWV3YCwgICAgICAgICAgICAgICAgICAgICAgICAgIGBgX19jb250YWluc19fYGAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICA6Y2xhc3M6YFNldGAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgX19pdGVyX19gYAorOmNsYXNzOmBWYWx1ZXNWaWV3YCAgICAgICAgOmNsYXNzOmBNYXBwaW5nVmlld2AgICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9fY29udGFpbnNfX2BgLCBgYF9faXRlcl9fYGAKKz09PT09PT09PT09PT09PT09PT09PT09PT0gID09PT09PT09PT09PT09PT09PT09PSAgPT09PT09PT09PT09PT09PT09PT09PSAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisKKy4uIGNsYXNzOjogQ29udGFpbmVyCisgICAgICAgICAgIEhhc2hhYmxlCisgICAgICAgICAgIFNpemVkCisgICAgICAgICAgIENhbGxhYmxlCisKKyAgIEFCQ3MgZm9yIGNsYXNzZXMgdGhhdCBwcm92aWRlIHJlc3BlY3RpdmVseSB0aGUgbWV0aG9kcyA6bWV0aDpgX19jb250YWluc19fYCwKKyAgIDptZXRoOmBfX2hhc2hfX2AsIDptZXRoOmBfX2xlbl9fYCwgYW5kIDptZXRoOmBfX2NhbGxfX2AuCisKKy4uIGNsYXNzOjogSXRlcmFibGUKKworICAgQUJDIGZvciBjbGFzc2VzIHRoYXQgcHJvdmlkZSB0aGUgOm1ldGg6YF9faXRlcl9fYCBtZXRob2QuCisgICBTZWUgYWxzbyB0aGUgZGVmaW5pdGlvbiBvZiA6dGVybTpgaXRlcmFibGVgLgorCisuLiBjbGFzczo6IEl0ZXJhdG9yCisKKyAgIEFCQyBmb3IgY2xhc3NlcyB0aGF0IHByb3ZpZGUgdGhlIDptZXRoOmBfX2l0ZXJfX2AgYW5kIDptZXRoOmBuZXh0YCBtZXRob2RzLgorICAgU2VlIGFsc28gdGhlIGRlZmluaXRpb24gb2YgOnRlcm06YGl0ZXJhdG9yYC4KKworLi4gY2xhc3M6OiBTZXF1ZW5jZQorICAgICAgICAgICBNdXRhYmxlU2VxdWVuY2UKKworICAgQUJDcyBmb3IgcmVhZC1vbmx5IGFuZCBtdXRhYmxlIDp0ZXJtOmBzZXF1ZW5jZXMgPHNlcXVlbmNlPmAuCisKKy4uIGNsYXNzOjogU2V0CisgICAgICAgICAgIE11dGFibGVTZXQKKworICAgQUJDcyBmb3IgcmVhZC1vbmx5IGFuZCBtdXRhYmxlIHNldHMuCisKKy4uIGNsYXNzOjogTWFwcGluZworICAgICAgICAgICBNdXRhYmxlTWFwcGluZworCisgICBBQkNzIGZvciByZWFkLW9ubHkgYW5kIG11dGFibGUgOnRlcm06YG1hcHBpbmdzIDxtYXBwaW5nPmAuCisKKy4uIGNsYXNzOjogTWFwcGluZ1ZpZXcKKyAgICAgICAgICAgSXRlbXNWaWV3CisgICAgICAgICAgIEtleXNWaWV3CisgICAgICAgICAgIFZhbHVlc1ZpZXcKKworICAgQUJDcyBmb3IgbWFwcGluZywgaXRlbXMsIGtleXMsIGFuZCB2YWx1ZXMgOnRlcm06YHZpZXdzIDx2aWV3PmAuCisKKworVGhlc2UgQUJDcyBhbGxvdyB1cyB0byBhc2sgY2xhc3NlcyBvciBpbnN0YW5jZXMgaWYgdGhleSBwcm92aWRlCitwYXJ0aWN1bGFyIGZ1bmN0aW9uYWxpdHksIGZvciBleGFtcGxlOjoKKworICAgIHNpemUgPSBOb25lCisgICAgaWYgaXNpbnN0YW5jZShteXZhciwgY29sbGVjdGlvbnMuU2l6ZWQpOgorICAgICAgICBzaXplID0gbGVuKG15dmFyKQorCitTZXZlcmFsIG9mIHRoZSBBQkNzIGFyZSBhbHNvIHVzZWZ1bCBhcyBtaXhpbnMgdGhhdCBtYWtlIGl0IGVhc2llciB0byBkZXZlbG9wCitjbGFzc2VzIHN1cHBvcnRpbmcgY29udGFpbmVyIEFQSXMuICBGb3IgZXhhbXBsZSwgdG8gd3JpdGUgYSBjbGFzcyBzdXBwb3J0aW5nCit0aGUgZnVsbCA6Y2xhc3M6YFNldGAgQVBJLCBpdCBvbmx5IG5lY2Vzc2FyeSB0byBzdXBwbHkgdGhlIHRocmVlIHVuZGVybHlpbmcKK2Fic3RyYWN0IG1ldGhvZHM6IDptZXRoOmBfX2NvbnRhaW5zX19gLCA6bWV0aDpgX19pdGVyX19gLCBhbmQgOm1ldGg6YF9fbGVuX19gLgorVGhlIEFCQyBzdXBwbGllcyB0aGUgcmVtYWluaW5nIG1ldGhvZHMgc3VjaCBhcyA6bWV0aDpgX19hbmRfX2AgYW5kCis6bWV0aDpgaXNkaXNqb2ludGAgOjoKKworICAgIGNsYXNzIExpc3RCYXNlZFNldChjb2xsZWN0aW9ucy5TZXQpOgorICAgICAgICAgJycnIEFsdGVybmF0ZSBzZXQgaW1wbGVtZW50YXRpb24gZmF2b3Jpbmcgc3BhY2Ugb3ZlciBzcGVlZAorICAgICAgICAgICAgIGFuZCBub3QgcmVxdWlyaW5nIHRoZSBzZXQgZWxlbWVudHMgdG8gYmUgaGFzaGFibGUuICcnJworICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGl0ZXJhYmxlKToKKyAgICAgICAgICAgICBzZWxmLmVsZW1lbnRzID0gbHN0ID0gW10KKyAgICAgICAgICAgICBmb3IgdmFsdWUgaW4gaXRlcmFibGU6CisgICAgICAgICAgICAgICAgIGlmIHZhbHVlIG5vdCBpbiBsc3Q6CisgICAgICAgICAgICAgICAgICAgICBsc3QuYXBwZW5kKHZhbHVlKQorICAgICAgICAgZGVmIF9faXRlcl9fKHNlbGYpOgorICAgICAgICAgICAgIHJldHVybiBpdGVyKHNlbGYuZWxlbWVudHMpCisgICAgICAgICBkZWYgX19jb250YWluc19fKHNlbGYsIHZhbHVlKToKKyAgICAgICAgICAgICByZXR1cm4gdmFsdWUgaW4gc2VsZi5lbGVtZW50cworICAgICAgICAgZGVmIF9fbGVuX18oc2VsZik6CisgICAgICAgICAgICAgcmV0dXJuIGxlbihzZWxmLmVsZW1lbnRzKQorCisgICAgczEgPSBMaXN0QmFzZWRTZXQoJ2FiY2RlZicpCisgICAgczIgPSBMaXN0QmFzZWRTZXQoJ2RlZmdoaScpCisgICAgb3ZlcmxhcCA9IHMxICYgczIgICAgICAgICAgICAjIFRoZSBfX2FuZF9fKCkgbWV0aG9kIGlzIHN1cHBvcnRlZCBhdXRvbWF0aWNhbGx5CisKK05vdGVzIG9uIHVzaW5nIDpjbGFzczpgU2V0YCBhbmQgOmNsYXNzOmBNdXRhYmxlU2V0YCBhcyBhIG1peGluOgorCisoMSkKKyAgIFNpbmNlIHNvbWUgc2V0IG9wZXJhdGlvbnMgY3JlYXRlIG5ldyBzZXRzLCB0aGUgZGVmYXVsdCBtaXhpbiBtZXRob2RzIG5lZWQKKyAgIGEgd2F5IHRvIGNyZWF0ZSBuZXcgaW5zdGFuY2VzIGZyb20gYW4gaXRlcmFibGUuIFRoZSBjbGFzcyBjb25zdHJ1Y3RvciBpcworICAgYXNzdW1lZCB0byBoYXZlIGEgc2lnbmF0dXJlIGluIHRoZSBmb3JtIGBgQ2xhc3NOYW1lKGl0ZXJhYmxlKWBgLgorICAgVGhhdCBhc3N1bXB0aW9uIGlzIGZhY3RvcmVkLW91dCB0byBhbiBpbnRlcm5hbCBjbGFzc21ldGhvZCBjYWxsZWQKKyAgIDptZXRoOmBfZnJvbV9pdGVyYWJsZWAgd2hpY2ggY2FsbHMgYGBjbHMoaXRlcmFibGUpYGAgdG8gcHJvZHVjZSBhIG5ldyBzZXQuCisgICBJZiB0aGUgOmNsYXNzOmBTZXRgIG1peGluIGlzIGJlaW5nIHVzZWQgaW4gYSBjbGFzcyB3aXRoIGEgZGlmZmVyZW50CisgICBjb25zdHJ1Y3RvciBzaWduYXR1cmUsIHlvdSB3aWxsIG5lZWQgdG8gb3ZlcnJpZGUgOm1ldGg6YF9mcm9tX2l0ZXJhYmxlYAorICAgd2l0aCBhIGNsYXNzbWV0aG9kIHRoYXQgY2FuIGNvbnN0cnVjdCBuZXcgaW5zdGFuY2VzIGZyb20KKyAgIGFuIGl0ZXJhYmxlIGFyZ3VtZW50LgorCisoMikKKyAgIFRvIG92ZXJyaWRlIHRoZSBjb21wYXJpc29ucyAocHJlc3VtYWJseSBmb3Igc3BlZWQsIGFzIHRoZQorICAgc2VtYW50aWNzIGFyZSBmaXhlZCksIHJlZGVmaW5lIDptZXRoOmBfX2xlX19gIGFuZAorICAgdGhlbiB0aGUgb3RoZXIgb3BlcmF0aW9ucyB3aWxsIGF1dG9tYXRpY2FsbHkgZm9sbG93IHN1aXQuCisKKygzKQorICAgVGhlIDpjbGFzczpgU2V0YCBtaXhpbiBwcm92aWRlcyBhIDptZXRoOmBfaGFzaGAgbWV0aG9kIHRvIGNvbXB1dGUgYSBoYXNoIHZhbHVlCisgICBmb3IgdGhlIHNldDsgaG93ZXZlciwgOm1ldGg6YF9faGFzaF9fYCBpcyBub3QgZGVmaW5lZCBiZWNhdXNlIG5vdCBhbGwgc2V0cworICAgYXJlIGhhc2hhYmxlIG9yIGltbXV0YWJsZS4gIFRvIGFkZCBzZXQgaGFzaGFiaWx0eSB1c2luZyBtaXhpbnMsCisgICBpbmhlcml0IGZyb20gYm90aCA6bWV0aDpgU2V0YCBhbmQgOm1ldGg6YEhhc2hhYmxlYCwgdGhlbiBkZWZpbmUKKyAgIGBgX19oYXNoX18gPSBTZXQuX2hhc2hgYC4KKworLi4gc2VlYWxzbzo6CisKKyAgICogYE9yZGVyZWRTZXQgcmVjaXBlIDxodHRwOi8vY29kZS5hY3RpdmVzdGF0ZS5jb20vcmVjaXBlcy81NzY2OTQvPmBfIGZvciBhbgorICAgICBleGFtcGxlIGJ1aWx0IG9uIDpjbGFzczpgTXV0YWJsZVNldGAuCisKKyAgICogRm9yIG1vcmUgYWJvdXQgQUJDcywgc2VlIHRoZSA6bW9kOmBhYmNgIG1vZHVsZSBhbmQgOnBlcDpgMzExOWAuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9jb2xsZWN0aW9ucy5yc3QgYi9Eb2MvbGlicmFyeS9jb2xsZWN0aW9ucy5yc3QKaW5kZXggZTkwYjI1ZS4uMTg4ZmQwYSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvY29sbGVjdGlvbnMucnN0CisrKyBiL0RvYy9saWJyYXJ5L2NvbGxlY3Rpb25zLnJzdApAQCAtMTIsNyArMTIsNyBAQAogICAgaW1wb3J0IGl0ZXJ0b29scwogICAgX19uYW1lX18gPSAnPGRvY3Rlc3Q+JwogCi0qKlNvdXJjZSBjb2RlOioqIDpzb3VyY2U6YExpYi9jb2xsZWN0aW9ucy5weWAgYW5kIDpzb3VyY2U6YExpYi9fYWJjb2xsLnB5YAorKipTb3VyY2UgY29kZToqKiA6c291cmNlOmBMaWIvY29sbGVjdGlvbnMvX19pbml0X18ucHlgCiAKIC0tLS0tLS0tLS0tLS0tCiAKQEAgLTIzLDYgKzIzLDcgQEAKID09PT09PT09PT09PT09PT09PT09PSAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiA6ZnVuYzpgbmFtZWR0dXBsZWAgICAgICBmYWN0b3J5IGZ1bmN0aW9uIGZvciBjcmVhdGluZyB0dXBsZSBzdWJjbGFzc2VzIHdpdGggbmFtZWQgZmllbGRzCiA6Y2xhc3M6YGRlcXVlYCAgICAgICAgICBsaXN0LWxpa2UgY29udGFpbmVyIHdpdGggZmFzdCBhcHBlbmRzIGFuZCBwb3BzIG9uIGVpdGhlciBlbmQKKzpjbGFzczpgQ2hhaW5NYXBgICAgICAgIGRpY3QtbGlrZSBjbGFzcyBmb3IgY3JlYXRpbmcgYSBzaW5nbGUgdmlldyBvZiBtdWx0aXBsZSBtYXBwaW5ncwogOmNsYXNzOmBDb3VudGVyYCAgICAgICAgZGljdCBzdWJjbGFzcyBmb3IgY291bnRpbmcgaGFzaGFibGUgb2JqZWN0cwogOmNsYXNzOmBPcmRlcmVkRGljdGAgICAgZGljdCBzdWJjbGFzcyB0aGF0IHJlbWVtYmVycyB0aGUgb3JkZXIgZW50cmllcyB3ZXJlIGFkZGVkCiA6Y2xhc3M6YGRlZmF1bHRkaWN0YCAgICBkaWN0IHN1YmNsYXNzIHRoYXQgY2FsbHMgYSBmYWN0b3J5IGZ1bmN0aW9uIHRvIHN1cHBseSBtaXNzaW5nIHZhbHVlcwpAQCAtMzEsMTIgKzMyLDEyNSBAQAogOmNsYXNzOmBVc2VyU3RyaW5nYCAgICAgd3JhcHBlciBhcm91bmQgc3RyaW5nIG9iamVjdHMgZm9yIGVhc2llciBzdHJpbmcgc3ViY2xhc3NpbmcKID09PT09PT09PT09PT09PT09PT09PSAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAKLUluIGFkZGl0aW9uIHRvIHRoZSBjb25jcmV0ZSBjb250YWluZXIgY2xhc3NlcywgdGhlIGNvbGxlY3Rpb25zIG1vZHVsZSBwcm92aWRlcwotOnJlZjpgYWJzdHJhY3QgYmFzZSBjbGFzc2VzIDxjb2xsZWN0aW9ucy1hYnN0cmFjdC1iYXNlLWNsYXNzZXM+YCB0aGF0IGNhbiBiZQotdXNlZCB0byB0ZXN0IHdoZXRoZXIgYSBjbGFzcyBwcm92aWRlcyBhIHBhcnRpY3VsYXIgaW50ZXJmYWNlLCBmb3IgZXhhbXBsZSwKLXdoZXRoZXIgaXQgaXMgaGFzaGFibGUgb3IgYSBtYXBwaW5nLgorLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgIE1vdmVkIDpyZWY6YGNvbGxlY3Rpb25zLWFic3RyYWN0LWJhc2UtY2xhc3Nlc2AgdG8gdGhlIDptb2Q6YGNvbGxlY3Rpb25zLmFiY2AgbW9kdWxlLgorICAgRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCB0aGV5IGNvbnRpbnVlIHRvIGJlIHZpc2libGUgaW4gdGhpcyBtb2R1bGUKKyAgIGFzIHdlbGwuCiAKIAorOmNsYXNzOmBDaGFpbk1hcGAgb2JqZWN0cworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitBIDpjbGFzczpgQ2hhaW5NYXBgIGNsYXNzIGlzIHByb3ZpZGVkIGZvciBxdWlja2x5IGxpbmtpbmcgYSBudW1iZXIgb2YgbWFwcGluZ3MKK3NvIHRoZXkgY2FuIGJlIHRyZWF0ZWQgYXMgYSBzaW5nbGUgdW5pdC4gIEl0IGlzIG9mdGVuIG11Y2ggZmFzdGVyIHRoYW4gY3JlYXRpbmcKK2EgbmV3IGRpY3Rpb25hcnkgYW5kIHJ1bm5pbmcgbXVsdGlwbGUgOm1ldGg6YH5kaWN0LnVwZGF0ZWAgY2FsbHMuCisKK1RoZSBjbGFzcyBjYW4gYmUgdXNlZCB0byBzaW11bGF0ZSBuZXN0ZWQgc2NvcGVzIGFuZCBpcyB1c2VmdWwgaW4gdGVtcGxhdGluZy4KKworLi4gY2xhc3M6OiBDaGFpbk1hcCgqbWFwcykKKworICAgQSA6Y2xhc3M6YENoYWluTWFwYCBncm91cHMgbXVsdGlwbGUgZGljdHMgb3Igb3RoZXIgbWFwcGluZ3MgdG9nZXRoZXIgdG8KKyAgIGNyZWF0ZSBhIHNpbmdsZSwgdXBkYXRlYWJsZSB2aWV3LiAgSWYgbm8gKm1hcHMqIGFyZSBzcGVjaWZpZWQsIGEgc2luZ2xlIGVtcHR5CisgICBkaWN0aW9uYXJ5IGlzIHByb3ZpZGVkIHNvIHRoYXQgYSBuZXcgY2hhaW4gYWx3YXlzIGhhcyBhdCBsZWFzdCBvbmUgbWFwcGluZy4KKworICAgVGhlIHVuZGVybHlpbmcgbWFwcGluZ3MgYXJlIHN0b3JlZCBpbiBhIGxpc3QuICBUaGF0IGxpc3QgaXMgcHVibGljIGFuZCBjYW4KKyAgIGFjY2Vzc2VkIG9yIHVwZGF0ZWQgdXNpbmcgdGhlICptYXBzKiBhdHRyaWJ1dGUuICBUaGVyZSBpcyBubyBvdGhlciBzdGF0ZS4KKworICAgTG9va3VwcyBzZWFyY2ggdGhlIHVuZGVybHlpbmcgbWFwcGluZ3Mgc3VjY2Vzc2l2ZWx5IHVudGlsIGEga2V5IGlzIGZvdW5kLiAgSW4KKyAgIGNvbnRyYXN0LCB3cml0ZXMsIHVwZGF0ZXMsIGFuZCBkZWxldGlvbnMgb25seSBvcGVyYXRlIG9uIHRoZSBmaXJzdCBtYXBwaW5nLgorCisgICBBIDpjbGFzczpgQ2hhaW5NYXBgIGluY29ycG9yYXRlcyB0aGUgdW5kZXJseWluZyBtYXBwaW5ncyBieSByZWZlcmVuY2UuICBTbywgaWYKKyAgIG9uZSBvZiB0aGUgdW5kZXJseWluZyBtYXBwaW5ncyBnZXRzIHVwZGF0ZWQsIHRob3NlIGNoYW5nZXMgd2lsbCBiZSByZWZsZWN0ZWQKKyAgIGluIDpjbGFzczpgQ2hhaW5NYXBgLgorCisgICBBbGwgb2YgdGhlIHVzdWFsIGRpY3Rpb25hcnkgbWV0aG9kcyBhcmUgc3VwcG9ydGVkLiAgSW4gYWRkaXRpb24sIHRoZXJlIGlzIGEKKyAgICptYXBzKiBhdHRyaWJ1dGUsIGEgbWV0aG9kIGZvciBjcmVhdGluZyBuZXcgc3ViY29udGV4dHMsIGFuZCBhIHByb3BlcnR5IGZvcgorICAgYWNjZXNzaW5nIGFsbCBidXQgdGhlIGZpcnN0IG1hcHBpbmc6CisKKyAgIC4uIGF0dHJpYnV0ZTo6IG1hcHMKKworICAgICAgQSB1c2VyIHVwZGF0ZWFibGUgbGlzdCBvZiBtYXBwaW5ncy4gIFRoZSBsaXN0IGlzIG9yZGVyZWQgZnJvbQorICAgICAgZmlyc3Qtc2VhcmNoZWQgdG8gbGFzdC1zZWFyY2hlZC4gIEl0IGlzIHRoZSBvbmx5IHN0b3JlZCBzdGF0ZSBhbmQgY2FuCisgICAgICBiZSBtb2RpZmllZCB0byBjaGFuZ2Ugd2hpY2ggbWFwcGluZ3MgYXJlIHNlYXJjaGVkLiAgVGhlIGxpc3Qgc2hvdWxkCisgICAgICBhbHdheXMgY29udGFpbiBhdCBsZWFzdCBvbmUgbWFwcGluZy4KKworICAgLi4gbWV0aG9kOjogbmV3X2NoaWxkKCkKKworICAgICAgUmV0dXJucyBhIG5ldyA6Y2xhc3M6YENoYWluTWFwYCBjb250YWluaW5nIGEgbmV3IDpjbGFzczpgZGljdGAgZm9sbG93ZWQgYnkKKyAgICAgIGFsbCBvZiB0aGUgbWFwcyBpbiB0aGUgY3VycmVudCBpbnN0YW5jZS4gIEEgY2FsbCB0byBgYGQubmV3X2NoaWxkKClgYCBpcworICAgICAgZXF1aXZhbGVudCB0bzogYGBDaGFpbk1hcCh7fSwgKmQubWFwcylgYC4gIFRoaXMgbWV0aG9kIGlzIHVzZWQgZm9yCisgICAgICBjcmVhdGluZyBzdWJjb250ZXh0cyB0aGF0IGNhbiBiZSB1cGRhdGVkIHdpdGhvdXQgYWx0ZXJpbmcgdmFsdWVzIGluIGFueQorICAgICAgb2YgdGhlIHBhcmVudCBtYXBwaW5ncy4KKworICAgLi4gbWV0aG9kOjogcGFyZW50cygpCisKKyAgICAgIFJldHVybnMgYSBuZXcgOmNsYXNzOmBDaGFpbk1hcGAgY29udGFpbmluZyBhbGwgb2YgdGhlIG1hcHMgaW4gdGhlIGN1cnJlbnQKKyAgICAgIGluc3RhbmNlIGV4Y2VwdCB0aGUgZmlyc3Qgb25lLiAgVGhpcyBpcyB1c2VmdWwgZm9yIHNraXBwaW5nIHRoZSBmaXJzdCBtYXAKKyAgICAgIGluIHRoZSBzZWFyY2guICBUaGUgdXNlLWNhc2VzIGFyZSBzaW1pbGFyIHRvIHRob3NlIGZvciB0aGUKKyAgICAgIDprZXl3b3JkOmBub25sb2NhbGAga2V5d29yZCB1c2VkIGluIDp0ZXJtOmBuZXN0ZWQgc2NvcGVzIDxuZXN0ZWQgc2NvcGU+YC4KKyAgICAgIFRoZSB1c2UtY2FzZXMgYWxzbyBwYXJhbGxlbCB0aG9zZSBmb3IgdGhlIGJ1aWx0aW4gOmZ1bmM6YHN1cGVyYCBmdW5jdGlvbi4KKyAgICAgIEEgcmVmZXJlbmNlIHRvICBgYGQucGFyZW50c2BgIGlzIGVxdWl2YWxlbnQgdG86IGBgQ2hhaW5NYXAoKmQubWFwc1sxOl0pYGAuCisKKyAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKyAgRXhhbXBsZSBvZiBzaW11bGF0aW5nIFB5dGhvbidzIGludGVybmFsIGxvb2t1cCBjaGFpbjo6CisKKyAgICAgaW1wb3J0IGJ1aWx0aW5zCisgICAgIHB5bG9va3VwID0gQ2hhaW5NYXAobG9jYWxzKCksIGdsb2JhbHMoKSwgdmFycyhidWlsdGlucykpCisKKyAgRXhhbXBsZSBvZiBsZXR0aW5nIHVzZXIgc3BlY2lmaWVkIHZhbHVlcyB0YWtlIHByZWNlZGVuY2Ugb3ZlciBlbnZpcm9ubWVudAorICB2YXJpYWJsZXMgd2hpY2ggaW4gdHVybiB0YWtlIHByZWNlZGVuY2Ugb3ZlciBkZWZhdWx0IHZhbHVlczo6CisKKyAgICAgaW1wb3J0IG9zLCBhcmdwYXJzZQorICAgICBkZWZhdWx0cyA9IHsnY29sb3InOiAncmVkJywgJ3VzZXInOiBndWVzdH0KKyAgICAgcGFyc2VyID0gYXJncGFyc2UuQXJndW1lbnRQYXJzZXIoKQorICAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctdScsICctLXVzZXInKQorICAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctYycsICctLWNvbG9yJykKKyAgICAgdXNlcl9zcGVjaWZpZWQgPSB2YXJzKHBhcnNlci5wYXJzZV9hcmdzKCkpCisgICAgIGNvbWJpbmVkID0gQ2hhaW5NYXAodXNlcl9zcGVjaWZpZWQsIG9zLmVudmlyb24sIGRlZmF1bHRzKQorCisgIEV4YW1wbGUgcGF0dGVybnMgZm9yIHVzaW5nIHRoZSA6Y2xhc3M6YENoYWluTWFwYCBjbGFzcyB0byBzaW11bGF0ZSBuZXN0ZWQKKyAgY29udGV4dHM6OgorCisgICAgYyA9IENoYWluTWFwKCkgICAgICAgICAgQ3JlYXRlIHJvb3QgY29udGV4dAorICAgIGQgPSBjLm5ld19jaGlsZCgpICAgICAgIENyZWF0ZSBuZXN0ZWQgY2hpbGQgY29udGV4dAorICAgIGUgPSBjLm5ld19jaGlsZCgpICAgICAgIENoaWxkIG9mIGMsIGluZGVwZW5kZW50IGZyb20gZAorICAgIGUubWFwc1swXSAgICAgICAgICAgICAgIEN1cnJlbnQgY29udGV4dCBkaWN0aW9uYXJ5IC0tIGxpa2UgUHl0aG9uJ3MgbG9jYWxzKCkKKyAgICBlLm1hcHNbLTFdICAgICAgICAgICAgICBSb290IGNvbnRleHQgLS0gbGlrZSBQeXRob24ncyBnbG9iYWxzKCkKKyAgICBlLnBhcmVudHMgICAgICAgICAgICAgICBFbmNsb3NpbmcgY29udGV4dCBjaGFpbiAtLSBsaWtlIFB5dGhvbidzIG5vbmxvY2FscworCisgICAgZFsneCddICAgICAgICAgICAgICAgICAgR2V0IGZpcnN0IGtleSBpbiB0aGUgY2hhaW4gb2YgY29udGV4dHMKKyAgICBkWyd4J10gPSAxICAgICAgICAgICAgICBTZXQgdmFsdWUgaW4gY3VycmVudCBjb250ZXh0CisgICAgZGVsWyd4J10gICAgICAgICAgICAgICAgRGVsZXRlIGZyb20gY3VycmVudCBjb250ZXh0CisgICAgbGlzdChkKSAgICAgICAgICAgICAgICAgQWxsIG5lc3RlZCB2YWx1ZXMKKyAgICBrIGluIGQgICAgICAgICAgICAgICAgICBDaGVjayBhbGwgbmVzdGVkIHZhbHVlcworICAgIGxlbihkKSAgICAgICAgICAgICAgICAgIE51bWJlciBvZiBuZXN0ZWQgdmFsdWVzCisgICAgZC5pdGVtcygpICAgICAgICAgICAgICAgQWxsIG5lc3RlZCBpdGVtcworICAgIGRpY3QoZCkgICAgICAgICAgICAgICAgIEZsYXR0ZW4gaW50byBhIHJlZ3VsYXIgZGljdGlvbmFyeQorCisgIC4uIHNlZWFsc286OgorCisgICAgICogVGhlIGBNdWx0aUNvbnRleHQgY2xhc3MKKyAgICAgICA8aHR0cDovL3N2bi5lbnRob3VnaHQuY29tL3N2bi9lbnRob3VnaHQvQ29kZVRvb2xzL3RydW5rL2VudGhvdWdodC9jb250ZXh0cy9tdWx0aV9jb250ZXh0LnB5PmBfCisgICAgICAgaW4gdGhlIEVudGhvdWdodCBgQ29kZVRvb2xzIHBhY2thZ2UKKyAgICAgICA8aHR0cHM6Ly9naXRodWIuY29tL2VudGhvdWdodC9jb2RldG9vbHM+YF8gaGFzIG9wdGlvbnMgdG8gc3VwcG9ydAorICAgICAgIHdyaXRpbmcgdG8gYW55IG1hcHBpbmcgaW4gdGhlIGNoYWluLgorCisgICAgICogRGphbmdvJ3MgYENvbnRleHQgY2xhc3MKKyAgICAgICA8aHR0cDovL2NvZGUuZGphbmdvcHJvamVjdC5jb20vYnJvd3Nlci9kamFuZ28vdHJ1bmsvZGphbmdvL3RlbXBsYXRlL2NvbnRleHQucHk+YF8KKyAgICAgICBmb3IgdGVtcGxhdGluZyBpcyBhIHJlYWQtb25seSBjaGFpbiBvZiBtYXBwaW5ncy4gIEl0IGFsc28gZmVhdHVyZXMKKyAgICAgICBwdXNoaW5nIGFuZCBwb3BwaW5nIG9mIGNvbnRleHRzIHNpbWlsYXIgdG8gdGhlCisgICAgICAgOm1ldGg6YH5jb2xsZWN0aW9ucy5DaGFpbk1hcC5uZXdfY2hpbGRgIG1ldGhvZCBhbmQgdGhlCisgICAgICAgOm1ldGg6YH5jb2xsZWN0aW9ucy5DaGFpbk1hcC5wYXJlbnRzYCBwcm9wZXJ0eS4KKworICAgICAqIFRoZSBgTmVzdGVkIENvbnRleHRzIHJlY2lwZQorICAgICAgIDxodHRwOi8vY29kZS5hY3RpdmVzdGF0ZS5jb20vcmVjaXBlcy81Nzc0MzQvPmBfIGhhcyBvcHRpb25zIHRvIGNvbnRyb2wKKyAgICAgICB3aGV0aGVyIHdyaXRlcyBhbmQgb3RoZXIgbXV0YXRpb25zIGFwcGx5IG9ubHkgdG8gdGhlIGZpcnN0IG1hcHBpbmcgb3IgdG8KKyAgICAgICBhbnkgbWFwcGluZyBpbiB0aGUgY2hhaW4uCisKKyAgICAgKiBBIGBncmVhdGx5IHNpbXBsaWZpZWQgcmVhZC1vbmx5IHZlcnNpb24gb2YgQ2hhaW5tYXAKKyAgICAgICA8aHR0cDovL2NvZGUuYWN0aXZlc3RhdGUuY29tL3JlY2lwZXMvMzA1MjY4Lz5gXy4KKwogOmNsYXNzOmBDb3VudGVyYCBvYmplY3RzCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIApAQCAtMTQ5LDcgKzI2Myw3IEBACiAgICAgYy5pdGVtcygpICAgICAgICAgICAgICAgICAgICAgICAjIGNvbnZlcnQgdG8gYSBsaXN0IG9mIChlbGVtLCBjbnQpIHBhaXJzCiAgICAgQ291bnRlcihkaWN0KGxpc3Rfb2ZfcGFpcnMpKSAgICAjIGNvbnZlcnQgZnJvbSBhIGxpc3Qgb2YgKGVsZW0sIGNudCkgcGFpcnMKICAgICBjLm1vc3RfY29tbW9uKClbOi1uOi0xXSAgICAgICAgICMgbiBsZWFzdCBjb21tb24gZWxlbWVudHMKLSAgICBjICs9IENvdW50ZXIoKSAgICAgICAgICAgICAgICAgICMgcmVtb3ZlIHplcm8gYW5kIG5lZ2F0aXZlIGNvdW50cworICAgICtjICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyByZW1vdmUgemVybyBhbmQgbmVnYXRpdmUgY291bnRzCiAKIFNldmVyYWwgbWF0aGVtYXRpY2FsIG9wZXJhdGlvbnMgYXJlIHByb3ZpZGVkIGZvciBjb21iaW5pbmcgOmNsYXNzOmBDb3VudGVyYAogb2JqZWN0cyB0byBwcm9kdWNlIG11bHRpc2V0cyAoY291bnRlcnMgdGhhdCBoYXZlIGNvdW50cyBncmVhdGVyIHRoYW4gemVybykuCkBAIC0xNjksNiArMjgzLDE4IEBACiAgICAgPj4+IGMgfCBkICAgICAgICAgICAgICAgICAgICAgICAjIHVuaW9uOiAgbWF4KGNbeF0sIGRbeF0pCiAgICAgQ291bnRlcih7J2EnOiAzLCAnYic6IDJ9KQogCitVbmFyeSBhZGRpdGlvbiBhbmQgc3Vic3RyYWN0aW9uIGFyZSBzaG9ydGN1dHMgZm9yIGFkZGluZyBhbiBlbXB0eSBjb3VudGVyCitvciBzdWJ0cmFjdGluZyBmcm9tIGFuIGVtcHR5IGNvdW50ZXIuCisKKyAgICA+Pj4gYyA9IENvdW50ZXIoYT0yLCBiPS00KQorICAgID4+PiArYworICAgIENvdW50ZXIoeydhJzogMn0pCisgICAgPj4+IC1jCisgICAgQ291bnRlcih7J2InOiA0fSkKKworLi4gdmVyc2lvbmFkZGVkOjogMy4zCisgICBBZGRlZCBzdXBwb3J0IGZvciB1bmFyeSBwbHVzLCB1bmFyeSBtaW51cywgYW5kIGluLXBsYWNlIG11bHRpc2V0IG9wZXJhdGlvbnMuCisKIC4uIG5vdGU6OgogCiAgICBDb3VudGVycyB3ZXJlIHByaW1hcmlseSBkZXNpZ25lZCB0byB3b3JrIHdpdGggcG9zaXRpdmUgaW50ZWdlcnMgdG8gcmVwcmVzZW50CkBAIC0zOTgsNyArNTI0LDggQEAKIAogICAgZGVmIHRhaWwoZmlsZW5hbWUsIG49MTApOgogICAgICAgICdSZXR1cm4gdGhlIGxhc3QgbiBsaW5lcyBvZiBhIGZpbGUnCi0gICAgICAgcmV0dXJuIGRlcXVlKG9wZW4oZmlsZW5hbWUpLCBuKQorICAgICAgIHdpdGggb3BlbihmaWxlbmFtZSkgYXMgZjoKKyAgICAgICAgICAgcmV0dXJuIGRlcXVlKGYsIG4pCiAKIEFub3RoZXIgYXBwcm9hY2ggdG8gdXNpbmcgZGVxdWVzIGlzIHRvIG1haW50YWluIGEgc2VxdWVuY2Ugb2YgcmVjZW50bHkKIGFkZGVkIGVsZW1lbnRzIGJ5IGFwcGVuZGluZyB0byB0aGUgcmlnaHQgYW5kIHBvcHBpbmcgdG8gdGhlIGxlZnQ6OgpAQCAtNTUwLDcgKzY3Nyw3IEBACiAgICAuLi4gICAgIGRba10uYWRkKHYpCiAgICAuLi4KICAgID4+PiBsaXN0KGQuaXRlbXMoKSkKLSAgIFsoJ2JsdWUnLCBzZXQoWzIsIDRdKSksICgncmVkJywgc2V0KFsxLCAzXSkpXQorICAgWygnYmx1ZScsIHsyLCA0fSksICgncmVkJywgezEsIDN9KV0KIAogCiA6ZnVuYzpgbmFtZWR0dXBsZWAgRmFjdG9yeSBGdW5jdGlvbiBmb3IgVHVwbGVzIHdpdGggTmFtZWQgRmllbGRzCkBAIC01ODMsNyArNzEwLDkgQEAKICAgIGNvbnZlcnRlZCB0byBgYFsnYWJjJywgJ18xJywgJ2doaScsICdfMyddYGAsIGVsaW1pbmF0aW5nIHRoZSBrZXl3b3JkCiAgICBgYGRlZmBgIGFuZCB0aGUgZHVwbGljYXRlIGZpZWxkbmFtZSBgYGFiY2BgLgogCi0gICBJZiAqdmVyYm9zZSogaXMgdHJ1ZSwgdGhlIGNsYXNzIGRlZmluaXRpb24gaXMgcHJpbnRlZCBqdXN0IGJlZm9yZSBiZWluZyBidWlsdC4KKyAgIElmICp2ZXJib3NlKiBpcyB0cnVlLCB0aGUgY2xhc3MgZGVmaW5pdGlvbiBpcyBwcmludGVkIGFmdGVyIGl0IGlzCisgICBidWlsdC4gIFRoaXMgb3B0aW9uIGlzIG91dGRhdGVkOyBpbnN0ZWFkLCBpdCBpcyBzaW1wbGVyIHRvIHByaW50IHRoZQorICAgOmF0dHI6YF9zb3VyY2VgIGF0dHJpYnV0ZS4KIAogICAgTmFtZWQgdHVwbGUgaW5zdGFuY2VzIGRvIG5vdCBoYXZlIHBlci1pbnN0YW5jZSBkaWN0aW9uYXJpZXMsIHNvIHRoZXkgYXJlCiAgICBsaWdodHdlaWdodCBhbmQgcmVxdWlyZSBubyBtb3JlIG1lbW9yeSB0aGFuIHJlZ3VsYXIgdHVwbGVzLgpAQCAtNTk3LDUzICs3MjYsNiBAQAogCiAgICA+Pj4gIyBCYXNpYyBleGFtcGxlCiAgICA+Pj4gUG9pbnQgPSBuYW1lZHR1cGxlKCdQb2ludCcsIFsneCcsICd5J10pCi0gICA+Pj4gcCA9IFBvaW50KHg9MTAsIHk9MTEpCi0KLSAgID4+PiAjIEV4YW1wbGUgdXNpbmcgdGhlIHZlcmJvc2Ugb3B0aW9uIHRvIHByaW50IHRoZSBjbGFzcyBkZWZpbml0aW9uCi0gICA+Pj4gUG9pbnQgPSBuYW1lZHR1cGxlKCdQb2ludCcsICd4IHknLCB2ZXJib3NlPVRydWUpCi0gICBjbGFzcyBQb2ludCh0dXBsZSk6Ci0gICAgICAgICAgICdQb2ludCh4LCB5KScKLSAgIDxCTEFOS0xJTkU+Ci0gICAgICAgICAgIF9fc2xvdHNfXyA9ICgpCi0gICA8QkxBTktMSU5FPgotICAgICAgICAgICBfZmllbGRzID0gKCd4JywgJ3knKQotICAgPEJMQU5LTElORT4KLSAgICAgICAgICAgZGVmIF9fbmV3X18oX2NscywgeCwgeSk6Ci0gICAgICAgICAgICAgICAnQ3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIFBvaW50KHgsIHkpJwotICAgICAgICAgICAgICAgcmV0dXJuIF90dXBsZS5fX25ld19fKF9jbHMsICh4LCB5KSkKLSAgIDxCTEFOS0xJTkU+Ci0gICAgICAgICAgIEBjbGFzc21ldGhvZAotICAgICAgICAgICBkZWYgX21ha2UoY2xzLCBpdGVyYWJsZSwgbmV3PXR1cGxlLl9fbmV3X18sIGxlbj1sZW4pOgotICAgICAgICAgICAgICAgJ01ha2UgYSBuZXcgUG9pbnQgb2JqZWN0IGZyb20gYSBzZXF1ZW5jZSBvciBpdGVyYWJsZScKLSAgICAgICAgICAgICAgIHJlc3VsdCA9IG5ldyhjbHMsIGl0ZXJhYmxlKQotICAgICAgICAgICAgICAgaWYgbGVuKHJlc3VsdCkgIT0gMjoKLSAgICAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoJ0V4cGVjdGVkIDIgYXJndW1lbnRzLCBnb3QgJWQnICUgbGVuKHJlc3VsdCkpCi0gICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0Ci0gICA8QkxBTktMSU5FPgotICAgICAgICAgICBkZWYgX19yZXByX18oc2VsZik6Ci0gICAgICAgICAgICAgICAnUmV0dXJuIGEgbmljZWx5IGZvcm1hdHRlZCByZXByZXNlbnRhdGlvbiBzdHJpbmcnCi0gICAgICAgICAgICAgICByZXR1cm4gc2VsZi5fX2NsYXNzX18uX19uYW1lX18gKyAnKHg9JXIsIHk9JXIpJyAlIHNlbGYKLSAgIDxCTEFOS0xJTkU+Ci0gICAgICAgICAgIGRlZiBfYXNkaWN0KHNlbGYpOgotICAgICAgICAgICAgICAgJ1JldHVybiBhIG5ldyBPcmRlcmVkRGljdCB3aGljaCBtYXBzIGZpZWxkIG5hbWVzIHRvIHRoZWlyIHZhbHVlcycKLSAgICAgICAgICAgICAgIHJldHVybiBPcmRlcmVkRGljdCh6aXAoc2VsZi5fZmllbGRzLCBzZWxmKSkKLSAgIDxCTEFOS0xJTkU+Ci0gICAgICAgICAgIF9fZGljdF9fID0gcHJvcGVydHkoX2FzZGljdCkKLSAgIDxCTEFOS0xJTkU+Ci0gICAgICAgICAgIGRlZiBfcmVwbGFjZShfc2VsZiwgKiprd2RzKToKLSAgICAgICAgICAgICAgICdSZXR1cm4gYSBuZXcgUG9pbnQgb2JqZWN0IHJlcGxhY2luZyBzcGVjaWZpZWQgZmllbGRzIHdpdGggbmV3IHZhbHVlcycKLSAgICAgICAgICAgICAgIHJlc3VsdCA9IF9zZWxmLl9tYWtlKG1hcChrd2RzLnBvcCwgKCd4JywgJ3knKSwgX3NlbGYpKQotICAgICAgICAgICAgICAgaWYga3dkczoKLSAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdHb3QgdW5leHBlY3RlZCBmaWVsZCBuYW1lczogJXInICUgbGlzdChrd2RzLmtleXMoKSkpCi0gICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0Ci0gICA8QkxBTktMSU5FPgotICAgICAgICAgICBkZWYgX19nZXRuZXdhcmdzX18oc2VsZik6Ci0gICAgICAgICAgICAgICAnUmV0dXJuIHNlbGYgYXMgYSBwbGFpbiB0dXBsZS4gICBVc2VkIGJ5IGNvcHkgYW5kIHBpY2tsZS4nCi0gICAgICAgICAgICAgICByZXR1cm4gdHVwbGUoc2VsZikKLSAgIDxCTEFOS0xJTkU+Ci0gICAgICAgICAgIHggPSBfcHJvcGVydHkoX2l0ZW1nZXR0ZXIoMCksIGRvYz0nQWxpYXMgZm9yIGZpZWxkIG51bWJlciAwJykKLSAgICAgICAgICAgeSA9IF9wcm9wZXJ0eShfaXRlbWdldHRlcigxKSwgZG9jPSdBbGlhcyBmb3IgZmllbGQgbnVtYmVyIDEnKQotCiAgICA+Pj4gcCA9IFBvaW50KDExLCB5PTIyKSAgICAgIyBpbnN0YW50aWF0ZSB3aXRoIHBvc2l0aW9uYWwgb3Iga2V5d29yZCBhcmd1bWVudHMKICAgID4+PiBwWzBdICsgcFsxXSAgICAgICAgICAgICAjIGluZGV4YWJsZSBsaWtlIHRoZSBwbGFpbiB0dXBsZSAoMTEsIDIyKQogICAgMzMKQEAgLTY3Miw3ICs3NTQsNyBAQAogICAgICAgIHByaW50KGVtcC5uYW1lLCBlbXAudGl0bGUpCiAKIEluIGFkZGl0aW9uIHRvIHRoZSBtZXRob2RzIGluaGVyaXRlZCBmcm9tIHR1cGxlcywgbmFtZWQgdHVwbGVzIHN1cHBvcnQKLXRocmVlIGFkZGl0aW9uYWwgbWV0aG9kcyBhbmQgb25lIGF0dHJpYnV0ZS4gIFRvIHByZXZlbnQgY29uZmxpY3RzIHdpdGgKK3RocmVlIGFkZGl0aW9uYWwgbWV0aG9kcyBhbmQgdHdvIGF0dHJpYnV0ZXMuICBUbyBwcmV2ZW50IGNvbmZsaWN0cyB3aXRoCiBmaWVsZCBuYW1lcywgdGhlIG1ldGhvZCBhbmQgYXR0cmlidXRlIG5hbWVzIHN0YXJ0IHdpdGggYW4gdW5kZXJzY29yZS4KIAogLi4gY2xhc3NtZXRob2Q6OiBzb21lbmFtZWR0dXBsZS5fbWFrZShpdGVyYWJsZSkKQEAgLTcxMCw2ICs3OTIsMTUgQEAKICAgICAgID4+PiBmb3IgcGFydG51bSwgcmVjb3JkIGluIGludmVudG9yeS5pdGVtcygpOgogICAgICAgLi4uICAgICBpbnZlbnRvcnlbcGFydG51bV0gPSByZWNvcmQuX3JlcGxhY2UocHJpY2U9bmV3cHJpY2VzW3BhcnRudW1dLCB0aW1lc3RhbXA9dGltZS5ub3coKSkKIAorLi4gYXR0cmlidXRlOjogc29tZW5hbWVkdHVwbGUuX3NvdXJjZQorCisgICBBIHN0cmluZyB3aXRoIHRoZSBwdXJlIFB5dGhvbiBzb3VyY2UgY29kZSB1c2VkIHRvIGNyZWF0ZSB0aGUgbmFtZWQKKyAgIHR1cGxlIGNsYXNzLiAgVGhlIHNvdXJjZSBtYWtlcyB0aGUgbmFtZWQgdHVwbGUgc2VsZi1kb2N1bWVudGluZy4KKyAgIEl0IGNhbiBiZSBwcmludGVkLCBleGVjdXRlZCB1c2luZyA6ZnVuYzpgZXhlY2AsIG9yIHNhdmVkIHRvIGEgZmlsZQorICAgYW5kIGltcG9ydGVkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogLi4gYXR0cmlidXRlOjogc29tZW5hbWVkdHVwbGUuX2ZpZWxkcwogCiAgICBUdXBsZSBvZiBzdHJpbmdzIGxpc3RpbmcgdGhlIGZpZWxkIG5hbWVzLiAgVXNlZnVsIGZvciBpbnRyb3NwZWN0aW9uCkBAIC03NTgsNyArODQ5LDYgQEAKIFRoZSBzdWJjbGFzcyBzaG93biBhYm92ZSBzZXRzIGBgX19zbG90c19fYGAgdG8gYW4gZW1wdHkgdHVwbGUuICBUaGlzIGhlbHBzCiBrZWVwIG1lbW9yeSByZXF1aXJlbWVudHMgbG93IGJ5IHByZXZlbnRpbmcgdGhlIGNyZWF0aW9uIG9mIGluc3RhbmNlIGRpY3Rpb25hcmllcy4KIAotCiBTdWJjbGFzc2luZyBpcyBub3QgdXNlZnVsIGZvciBhZGRpbmcgbmV3LCBzdG9yZWQgZmllbGRzLiAgSW5zdGVhZCwgc2ltcGx5CiBjcmVhdGUgYSBuZXcgbmFtZWQgdHVwbGUgdHlwZSBmcm9tIHRoZSA6YXR0cjpgX2ZpZWxkc2AgYXR0cmlidXRlOgogCkBAIC03NzAsNiArODYwLDcgQEAKICAgICA+Pj4gQWNjb3VudCA9IG5hbWVkdHVwbGUoJ0FjY291bnQnLCAnb3duZXIgYmFsYW5jZSB0cmFuc2FjdGlvbl9jb3VudCcpCiAgICAgPj4+IGRlZmF1bHRfYWNjb3VudCA9IEFjY291bnQoJzxvd25lciBuYW1lPicsIDAuMCwgMCkKICAgICA+Pj4gam9obnNfYWNjb3VudCA9IGRlZmF1bHRfYWNjb3VudC5fcmVwbGFjZShvd25lcj0nSm9obicpCisgICAgPj4+IGphbmVzX2FjY291bnQgPSBkZWZhdWx0X2FjY291bnQuX3JlcGxhY2Uob3duZXI9J0phbmUnKQogCiBFbnVtZXJhdGVkIGNvbnN0YW50cyBjYW4gYmUgaW1wbGVtZW50ZWQgd2l0aCBuYW1lZCB0dXBsZXMsIGJ1dCBpdCBpcyBzaW1wbGVyCiBhbmQgbW9yZSBlZmZpY2llbnQgdG8gdXNlIGEgc2ltcGxlIGNsYXNzIGRlY2xhcmF0aW9uOgpAQCAtOTg4LDE2MSArMTA3OSwzIEBACiAgICBiZSBhbiBpbnN0YW5jZSBvZiA6Y2xhc3M6YGJ5dGVzYCwgOmNsYXNzOmBzdHJgLCA6Y2xhc3M6YFVzZXJTdHJpbmdgIChvciBhCiAgICBzdWJjbGFzcykgb3IgYW4gYXJiaXRyYXJ5IHNlcXVlbmNlIHdoaWNoIGNhbiBiZSBjb252ZXJ0ZWQgaW50byBhIHN0cmluZyB1c2luZwogICAgdGhlIGJ1aWx0LWluIDpmdW5jOmBzdHJgIGZ1bmN0aW9uLgotCi0KLS4uIF9jb2xsZWN0aW9ucy1hYnN0cmFjdC1iYXNlLWNsYXNzZXM6Ci0KLUFCQ3MgLSBhYnN0cmFjdCBiYXNlIGNsYXNzZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotVGhlIGNvbGxlY3Rpb25zIG1vZHVsZSBvZmZlcnMgdGhlIGZvbGxvd2luZyA6dGVybTpgQUJDcyA8YWJzdHJhY3QgYmFzZSBjbGFzcz5gOgotCi09PT09PT09PT09PT09PT09PT09PT09PT09ICA9PT09PT09PT09PT09PT09PT09PT0gID09PT09PT09PT09PT09PT09PT09PT0gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLUFCQyAgICAgICAgICAgICAgICAgICAgICAgIEluaGVyaXRzIGZyb20gICAgICAgICAgQWJzdHJhY3QgTWV0aG9kcyAgICAgICAgTWl4aW4gTWV0aG9kcwotPT09PT09PT09PT09PT09PT09PT09PT09PSAgPT09PT09PT09PT09PT09PT09PT09ICA9PT09PT09PT09PT09PT09PT09PT09ICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci06Y2xhc3M6YENvbnRhaW5lcmAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgX19jb250YWluc19fYGAKLTpjbGFzczpgSGFzaGFibGVgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2hhc2hfX2BgCi06Y2xhc3M6YEl0ZXJhYmxlYCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgX19pdGVyX19gYAotOmNsYXNzOmBJdGVyYXRvcmAgICAgICAgICAgOmNsYXNzOmBJdGVyYWJsZWAgICAgICBgYF9fbmV4dF9fYGAgICAgICAgICAgICBgYF9faXRlcl9fYGAKLTpjbGFzczpgU2l6ZWRgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2xlbl9fYGAKLTpjbGFzczpgQ2FsbGFibGVgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2NhbGxfX2BgCi0KLTpjbGFzczpgU2VxdWVuY2VgICAgICAgICAgIDpjbGFzczpgU2l6ZWRgLCAgICAgICAgYGBfX2dldGl0ZW1fX2BgICAgICAgICAgYGBfX2NvbnRhaW5zX19gYCwgYGBfX2l0ZXJfX2BgLCBgYF9fcmV2ZXJzZWRfX2BgLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgOmNsYXNzOmBJdGVyYWJsZWAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYGluZGV4YGAsIGFuZCBgYGNvdW50YGAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIDpjbGFzczpgQ29udGFpbmVyYAotCi06Y2xhc3M6YE11dGFibGVTZXF1ZW5jZWAgICA6Y2xhc3M6YFNlcXVlbmNlYCAgICAgIGBgX19zZXRpdGVtX19gYCwgICAgICAgIEluaGVyaXRlZCA6Y2xhc3M6YFNlcXVlbmNlYCBtZXRob2RzIGFuZAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9fZGVsaXRlbV9fYGAsICAgICAgICBgYGFwcGVuZGBgLCBgYHJldmVyc2VgYCwgYGBleHRlbmRgYCwgYGBwb3BgYCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBpbnNlcnRgYCAgICAgICAgICAgICAgYGByZW1vdmVgYCwgYW5kIGBgX19pYWRkX19gYAotCi06Y2xhc3M6YFNldGAgICAgICAgICAgICAgICA6Y2xhc3M6YFNpemVkYCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgX19sZV9fYGAsIGBgX19sdF9fYGAsIGBgX19lcV9fYGAsIGBgX19uZV9fYGAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICA6Y2xhc3M6YEl0ZXJhYmxlYCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgX19ndF9fYGAsIGBgX19nZV9fYGAsIGBgX19hbmRfX2BgLCBgYF9fb3JfX2BgLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgOmNsYXNzOmBDb250YWluZXJgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9fc3ViX19gYCwgYGBfX3hvcl9fYGAsIGFuZCBgYGlzZGlzam9pbnRgYAotCi06Y2xhc3M6YE11dGFibGVTZXRgICAgICAgICA6Y2xhc3M6YFNldGAgICAgICAgICAgIGBgYWRkYGAsICAgICAgICAgICAgICAgIEluaGVyaXRlZCA6Y2xhc3M6YFNldGAgbWV0aG9kcyBhbmQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBkaXNjYXJkYGAgICAgICAgICAgICAgYGBjbGVhcmBgLCBgYHBvcGBgLCBgYHJlbW92ZWBgLCBgYF9faW9yX19gYCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2lhbmRfX2BgLCBgYF9faXhvcl9fYGAsIGFuZCBgYF9faXN1Yl9fYGAKLQotOmNsYXNzOmBNYXBwaW5nYCAgICAgICAgICAgOmNsYXNzOmBTaXplZGAsICAgICAgICBgYF9fZ2V0aXRlbV9fYGAgICAgICAgICBgYF9fY29udGFpbnNfX2BgLCBgYGtleXNgYCwgYGBpdGVtc2BgLCBgYHZhbHVlc2BgLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgOmNsYXNzOmBJdGVyYWJsZWAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYGdldGBgLCBgYF9fZXFfX2BgLCBhbmQgYGBfX25lX19gYAotICAgICAgICAgICAgICAgICAgICAgICAgICAgOmNsYXNzOmBDb250YWluZXJgCi0KLTpjbGFzczpgTXV0YWJsZU1hcHBpbmdgICAgIDpjbGFzczpgTWFwcGluZ2AgICAgICAgYGBfX3NldGl0ZW1fX2BgLCAgICAgICAgSW5oZXJpdGVkIDpjbGFzczpgTWFwcGluZ2AgbWV0aG9kcyBhbmQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2RlbGl0ZW1fX2BgICAgICAgICAgYGBwb3BgYCwgYGBwb3BpdGVtYGAsIGBgY2xlYXJgYCwgYGB1cGRhdGVgYCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5kIGBgc2V0ZGVmYXVsdGBgCi0KLQotOmNsYXNzOmBNYXBwaW5nVmlld2AgICAgICAgOmNsYXNzOmBTaXplZGAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9fbGVuX19gYAotOmNsYXNzOmBJdGVtc1ZpZXdgICAgICAgICAgOmNsYXNzOmBNYXBwaW5nVmlld2AsICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9fY29udGFpbnNfX2BgLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgOmNsYXNzOmBTZXRgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgYF9faXRlcl9fYGAKLTpjbGFzczpgS2V5c1ZpZXdgICAgICAgICAgIDpjbGFzczpgTWFwcGluZ1ZpZXdgLCAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2NvbnRhaW5zX19gYCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIDpjbGFzczpgU2V0YCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGBfX2l0ZXJfX2BgCi06Y2xhc3M6YFZhbHVlc1ZpZXdgICAgICAgICA6Y2xhc3M6YE1hcHBpbmdWaWV3YCAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgX19jb250YWluc19fYGAsIGBgX19pdGVyX19gYAotPT09PT09PT09PT09PT09PT09PT09PT09PSAgPT09PT09PT09PT09PT09PT09PT09ICA9PT09PT09PT09PT09PT09PT09PT09ICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLQotLi4gY2xhc3M6OiBDb250YWluZXIKLSAgICAgICAgICAgSGFzaGFibGUKLSAgICAgICAgICAgU2l6ZWQKLSAgICAgICAgICAgQ2FsbGFibGUKLQotICAgQUJDcyBmb3IgY2xhc3NlcyB0aGF0IHByb3ZpZGUgcmVzcGVjdGl2ZWx5IHRoZSBtZXRob2RzIDptZXRoOmBfX2NvbnRhaW5zX19gLAotICAgOm1ldGg6YF9faGFzaF9fYCwgOm1ldGg6YF9fbGVuX19gLCBhbmQgOm1ldGg6YF9fY2FsbF9fYC4KLQotLi4gY2xhc3M6OiBJdGVyYWJsZQotCi0gICBBQkMgZm9yIGNsYXNzZXMgdGhhdCBwcm92aWRlIHRoZSA6bWV0aDpgX19pdGVyX19gIG1ldGhvZC4KLSAgIFNlZSBhbHNvIHRoZSBkZWZpbml0aW9uIG9mIDp0ZXJtOmBpdGVyYWJsZWAuCi0KLS4uIGNsYXNzOjogSXRlcmF0b3IKLQotICAgQUJDIGZvciBjbGFzc2VzIHRoYXQgcHJvdmlkZSB0aGUgOm1ldGg6YF9faXRlcl9fYCBhbmQgOm1ldGg6YG5leHRgIG1ldGhvZHMuCi0gICBTZWUgYWxzbyB0aGUgZGVmaW5pdGlvbiBvZiA6dGVybTpgaXRlcmF0b3JgLgotCi0uLiBjbGFzczo6IFNlcXVlbmNlCi0gICAgICAgICAgIE11dGFibGVTZXF1ZW5jZQotCi0gICBBQkNzIGZvciByZWFkLW9ubHkgYW5kIG11dGFibGUgOnRlcm06YHNlcXVlbmNlcyA8c2VxdWVuY2U+YC4KLQotLi4gY2xhc3M6OiBTZXQKLSAgICAgICAgICAgTXV0YWJsZVNldAotCi0gICBBQkNzIGZvciByZWFkLW9ubHkgYW5kIG11dGFibGUgc2V0cy4KLQotLi4gY2xhc3M6OiBNYXBwaW5nCi0gICAgICAgICAgIE11dGFibGVNYXBwaW5nCi0KLSAgIEFCQ3MgZm9yIHJlYWQtb25seSBhbmQgbXV0YWJsZSA6dGVybTpgbWFwcGluZ3MgPG1hcHBpbmc+YC4KLQotLi4gY2xhc3M6OiBNYXBwaW5nVmlldwotICAgICAgICAgICBJdGVtc1ZpZXcKLSAgICAgICAgICAgS2V5c1ZpZXcKLSAgICAgICAgICAgVmFsdWVzVmlldwotCi0gICBBQkNzIGZvciBtYXBwaW5nLCBpdGVtcywga2V5cywgYW5kIHZhbHVlcyA6dGVybTpgdmlld3MgPHZpZXc+YC4KLQotCi1UaGVzZSBBQkNzIGFsbG93IHVzIHRvIGFzayBjbGFzc2VzIG9yIGluc3RhbmNlcyBpZiB0aGV5IHByb3ZpZGUKLXBhcnRpY3VsYXIgZnVuY3Rpb25hbGl0eSwgZm9yIGV4YW1wbGU6OgotCi0gICAgc2l6ZSA9IE5vbmUKLSAgICBpZiBpc2luc3RhbmNlKG15dmFyLCBjb2xsZWN0aW9ucy5TaXplZCk6Ci0gICAgICAgIHNpemUgPSBsZW4obXl2YXIpCi0KLVNldmVyYWwgb2YgdGhlIEFCQ3MgYXJlIGFsc28gdXNlZnVsIGFzIG1peGlucyB0aGF0IG1ha2UgaXQgZWFzaWVyIHRvIGRldmVsb3AKLWNsYXNzZXMgc3VwcG9ydGluZyBjb250YWluZXIgQVBJcy4gIEZvciBleGFtcGxlLCB0byB3cml0ZSBhIGNsYXNzIHN1cHBvcnRpbmcKLXRoZSBmdWxsIDpjbGFzczpgU2V0YCBBUEksIGl0IG9ubHkgbmVjZXNzYXJ5IHRvIHN1cHBseSB0aGUgdGhyZWUgdW5kZXJseWluZwotYWJzdHJhY3QgbWV0aG9kczogOm1ldGg6YF9fY29udGFpbnNfX2AsIDptZXRoOmBfX2l0ZXJfX2AsIGFuZCA6bWV0aDpgX19sZW5fX2AuCi1UaGUgQUJDIHN1cHBsaWVzIHRoZSByZW1haW5pbmcgbWV0aG9kcyBzdWNoIGFzIDptZXRoOmBfX2FuZF9fYCBhbmQKLTptZXRoOmBpc2Rpc2pvaW50YCA6OgotCi0gICAgY2xhc3MgTGlzdEJhc2VkU2V0KGNvbGxlY3Rpb25zLlNldCk6Ci0gICAgICAgICAnJycgQWx0ZXJuYXRlIHNldCBpbXBsZW1lbnRhdGlvbiBmYXZvcmluZyBzcGFjZSBvdmVyIHNwZWVkCi0gICAgICAgICAgICAgYW5kIG5vdCByZXF1aXJpbmcgdGhlIHNldCBlbGVtZW50cyB0byBiZSBoYXNoYWJsZS4gJycnCi0gICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgaXRlcmFibGUpOgotICAgICAgICAgICAgIHNlbGYuZWxlbWVudHMgPSBsc3QgPSBbXQotICAgICAgICAgICAgIGZvciB2YWx1ZSBpbiBpdGVyYWJsZToKLSAgICAgICAgICAgICAgICAgaWYgdmFsdWUgbm90IGluIGxzdDoKLSAgICAgICAgICAgICAgICAgICAgIGxzdC5hcHBlbmQodmFsdWUpCi0gICAgICAgICBkZWYgX19pdGVyX18oc2VsZik6Ci0gICAgICAgICAgICAgcmV0dXJuIGl0ZXIoc2VsZi5lbGVtZW50cykKLSAgICAgICAgIGRlZiBfX2NvbnRhaW5zX18oc2VsZiwgdmFsdWUpOgotICAgICAgICAgICAgIHJldHVybiB2YWx1ZSBpbiBzZWxmLmVsZW1lbnRzCi0gICAgICAgICBkZWYgX19sZW5fXyhzZWxmKToKLSAgICAgICAgICAgICByZXR1cm4gbGVuKHNlbGYuZWxlbWVudHMpCi0KLSAgICBzMSA9IExpc3RCYXNlZFNldCgnYWJjZGVmJykKLSAgICBzMiA9IExpc3RCYXNlZFNldCgnZGVmZ2hpJykKLSAgICBvdmVybGFwID0gczEgJiBzMiAgICAgICAgICAgICMgVGhlIF9fYW5kX18oKSBtZXRob2QgaXMgc3VwcG9ydGVkIGF1dG9tYXRpY2FsbHkKLQotTm90ZXMgb24gdXNpbmcgOmNsYXNzOmBTZXRgIGFuZCA6Y2xhc3M6YE11dGFibGVTZXRgIGFzIGEgbWl4aW46Ci0KLSgxKQotICAgU2luY2Ugc29tZSBzZXQgb3BlcmF0aW9ucyBjcmVhdGUgbmV3IHNldHMsIHRoZSBkZWZhdWx0IG1peGluIG1ldGhvZHMgbmVlZAotICAgYSB3YXkgdG8gY3JlYXRlIG5ldyBpbnN0YW5jZXMgZnJvbSBhbiBpdGVyYWJsZS4gVGhlIGNsYXNzIGNvbnN0cnVjdG9yIGlzCi0gICBhc3N1bWVkIHRvIGhhdmUgYSBzaWduYXR1cmUgaW4gdGhlIGZvcm0gYGBDbGFzc05hbWUoaXRlcmFibGUpYGAuCi0gICBUaGF0IGFzc3VtcHRpb24gaXMgZmFjdG9yZWQtb3V0IHRvIGFuIGludGVybmFsIGNsYXNzbWV0aG9kIGNhbGxlZAotICAgOm1ldGg6YF9mcm9tX2l0ZXJhYmxlYCB3aGljaCBjYWxscyBgYGNscyhpdGVyYWJsZSlgYCB0byBwcm9kdWNlIGEgbmV3IHNldC4KLSAgIElmIHRoZSA6Y2xhc3M6YFNldGAgbWl4aW4gaXMgYmVpbmcgdXNlZCBpbiBhIGNsYXNzIHdpdGggYSBkaWZmZXJlbnQKLSAgIGNvbnN0cnVjdG9yIHNpZ25hdHVyZSwgeW91IHdpbGwgbmVlZCB0byBvdmVycmlkZSA6bWV0aDpgX2Zyb21faXRlcmFibGVgCi0gICB3aXRoIGEgY2xhc3NtZXRob2QgdGhhdCBjYW4gY29uc3RydWN0IG5ldyBpbnN0YW5jZXMgZnJvbQotICAgYW4gaXRlcmFibGUgYXJndW1lbnQuCi0KLSgyKQotICAgVG8gb3ZlcnJpZGUgdGhlIGNvbXBhcmlzb25zIChwcmVzdW1hYmx5IGZvciBzcGVlZCwgYXMgdGhlCi0gICBzZW1hbnRpY3MgYXJlIGZpeGVkKSwgcmVkZWZpbmUgOm1ldGg6YF9fbGVfX2AgYW5kCi0gICB0aGVuIHRoZSBvdGhlciBvcGVyYXRpb25zIHdpbGwgYXV0b21hdGljYWxseSBmb2xsb3cgc3VpdC4KLQotKDMpCi0gICBUaGUgOmNsYXNzOmBTZXRgIG1peGluIHByb3ZpZGVzIGEgOm1ldGg6YF9oYXNoYCBtZXRob2QgdG8gY29tcHV0ZSBhIGhhc2ggdmFsdWUKLSAgIGZvciB0aGUgc2V0OyBob3dldmVyLCA6bWV0aDpgX19oYXNoX19gIGlzIG5vdCBkZWZpbmVkIGJlY2F1c2Ugbm90IGFsbCBzZXRzCi0gICBhcmUgaGFzaGFibGUgb3IgaW1tdXRhYmxlLiAgVG8gYWRkIHNldCBoYXNoYWJpbHR5IHVzaW5nIG1peGlucywKLSAgIGluaGVyaXQgZnJvbSBib3RoIDptZXRoOmBTZXRgIGFuZCA6bWV0aDpgSGFzaGFibGVgLCB0aGVuIGRlZmluZQotICAgYGBfX2hhc2hfXyA9IFNldC5faGFzaGBgLgotCi0uLiBzZWVhbHNvOjoKLQotICAgKiBgT3JkZXJlZFNldCByZWNpcGUgPGh0dHA6Ly9jb2RlLmFjdGl2ZXN0YXRlLmNvbS9yZWNpcGVzLzU3NjY5NC8+YF8gZm9yIGFuCi0gICAgIGV4YW1wbGUgYnVpbHQgb24gOmNsYXNzOmBNdXRhYmxlU2V0YC4KLQotICAgKiBGb3IgbW9yZSBhYm91dCBBQkNzLCBzZWUgdGhlIDptb2Q6YGFiY2AgbW9kdWxlIGFuZCA6cGVwOmAzMTE5YC4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2NvbmN1cnJlbnQuZnV0dXJlcy5yc3QgYi9Eb2MvbGlicmFyeS9jb25jdXJyZW50LmZ1dHVyZXMucnN0CmluZGV4IDI5ZmZjMGQuLmE4OGYxMGMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2NvbmN1cnJlbnQuZnV0dXJlcy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvY29uY3VycmVudC5mdXR1cmVzLnJzdApAQCAtMTY5LDYgKzE2OSwxMiBAQAogICAgb2YgYXQgbW9zdCAqbWF4X3dvcmtlcnMqIHByb2Nlc3Nlcy4gIElmICptYXhfd29ya2VycyogaXMgYGBOb25lYGAgb3Igbm90CiAgICBnaXZlbiwgaXQgd2lsbCBkZWZhdWx0IHRvIHRoZSBudW1iZXIgb2YgcHJvY2Vzc29ycyBvbiB0aGUgbWFjaGluZS4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFdoZW4gb25lIG9mIHRoZSB3b3JrZXIgcHJvY2Vzc2VzIHRlcm1pbmF0ZXMgYWJydXB0bHksIGEKKyAgICAgIDpleGM6YEJyb2tlblByb2Nlc3NQb29sYCBlcnJvciBpcyBub3cgcmFpc2VkLiAgUHJldmlvdXNseSwgYmVoYXZpb3VyCisgICAgICB3YXMgdW5kZWZpbmVkIGJ1dCBvcGVyYXRpb25zIG9uIHRoZSBleGVjdXRvciBvciBpdHMgZnV0dXJlcyB3b3VsZCBvZnRlbgorICAgICAgZnJlZXplIG9yIGRlYWRsb2NrLgorCiAKIC4uIF9wcm9jZXNzcG9vbGV4ZWN1dG9yLWV4YW1wbGU6CiAKQEAgLTM2OSwzICszNzUsMTYgQEAKICAgIDpwZXA6YDMxNDhgIC0tIGZ1dHVyZXMgLSBleGVjdXRlIGNvbXB1dGF0aW9ucyBhc3luY2hyb25vdXNseQogICAgICAgVGhlIHByb3Bvc2FsIHdoaWNoIGRlc2NyaWJlZCB0aGlzIGZlYXR1cmUgZm9yIGluY2x1c2lvbiBpbiB0aGUgUHl0aG9uCiAgICAgICBzdGFuZGFyZCBsaWJyYXJ5LgorCisKK0V4Y2VwdGlvbiBjbGFzc2VzCistLS0tLS0tLS0tLS0tLS0tLQorCisuLiBleGNlcHRpb246OiBCcm9rZW5Qcm9jZXNzUG9vbAorCisgICBEZXJpdmVkIGZyb20gOmV4YzpgUnVudGltZUVycm9yYCwgdGhpcyBleGNlcHRpb24gY2xhc3MgaXMgcmFpc2VkIHdoZW4KKyAgIG9uZSBvZiB0aGUgd29ya2VycyBvZiBhIDpjbGFzczpgUHJvY2Vzc1Bvb2xFeGVjdXRvcmAgaGFzIHRlcm1pbmF0ZWQKKyAgIGluIGEgbm9uLWNsZWFuIGZhc2hpb24gKGZvciBleGFtcGxlLCBpZiBpdCB3YXMga2lsbGVkIGZyb20gdGhlIG91dHNpZGUpLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvY3J5cHQucnN0IGIvRG9jL2xpYnJhcnkvY3J5cHQucnN0CmluZGV4IDBiZTU3MWUuLjFiYTJlZDMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2NyeXB0LnJzdAorKysgYi9Eb2MvbGlicmFyeS9jcnlwdC5yc3QKQEAgLTE1LDkgKzE1LDkgQEAKIAogVGhpcyBtb2R1bGUgaW1wbGVtZW50cyBhbiBpbnRlcmZhY2UgdG8gdGhlIDptYW5wYWdlOmBjcnlwdCgzKWAgcm91dGluZSwgd2hpY2ggaXMKIGEgb25lLXdheSBoYXNoIGZ1bmN0aW9uIGJhc2VkIHVwb24gYSBtb2RpZmllZCBERVMgYWxnb3JpdGhtOyBzZWUgdGhlIFVuaXggbWFuCi1wYWdlIGZvciBmdXJ0aGVyIGRldGFpbHMuICBQb3NzaWJsZSB1c2VzIGluY2x1ZGUgYWxsb3dpbmcgUHl0aG9uIHNjcmlwdHMgdG8KLWFjY2VwdCB0eXBlZCBwYXNzd29yZHMgZnJvbSB0aGUgdXNlciwgb3IgYXR0ZW1wdGluZyB0byBjcmFjayBVbml4IHBhc3N3b3JkcyB3aXRoCi1hIGRpY3Rpb25hcnkuCitwYWdlIGZvciBmdXJ0aGVyIGRldGFpbHMuICBQb3NzaWJsZSB1c2VzIGluY2x1ZGUgc3RvcmluZyBoYXNoZWQgcGFzc3dvcmRzCitzbyB5b3UgY2FuIGNoZWNrIHBhc3N3b3JkcyB3aXRob3V0IHN0b3JpbmcgdGhlIGFjdHVhbCBwYXNzd29yZCwgb3IgYXR0ZW1wdGluZwordG8gY3JhY2sgVW5peCBwYXNzd29yZHMgd2l0aCBhIGRpY3Rpb25hcnkuCiAKIC4uIGluZGV4Ojogc2luZ2xlOiBjcnlwdCgzKQogCkBAIC0yNiwxNSArMjYsNzQgQEAKIGV4dGVuc2lvbnMgYXZhaWxhYmxlIG9uIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIHdpbGwgYWxzbyAgYmUgYXZhaWxhYmxlIG9uCiB0aGlzIG1vZHVsZS4KIAorSGFzaGluZyBNZXRob2RzCistLS0tLS0tLS0tLS0tLS0KIAotLi4gZnVuY3Rpb246OiBjcnlwdCh3b3JkLCBzYWx0KQorLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKK1RoZSA6bW9kOmBjcnlwdGAgbW9kdWxlIGRlZmluZXMgdGhlIGxpc3Qgb2YgaGFzaGluZyBtZXRob2RzIChub3QgYWxsIG1ldGhvZHMKK2FyZSBhdmFpbGFibGUgb24gYWxsIHBsYXRmb3Jtcyk6CisKKy4uIGRhdGE6OiBNRVRIT0RfU0hBNTEyCisKKyAgIEEgTW9kdWxhciBDcnlwdCBGb3JtYXQgbWV0aG9kIHdpdGggMTYgY2hhcmFjdGVyIHNhbHQgYW5kIDg2IGNoYXJhY3RlcgorICAgaGFzaC4gIFRoaXMgaXMgdGhlIHN0cm9uZ2VzdCBtZXRob2QuCisKKy4uIGRhdGE6OiBNRVRIT0RfU0hBMjU2CisKKyAgIEFub3RoZXIgTW9kdWxhciBDcnlwdCBGb3JtYXQgbWV0aG9kIHdpdGggMTYgY2hhcmFjdGVyIHNhbHQgYW5kIDQzCisgICBjaGFyYWN0ZXIgaGFzaC4KKworLi4gZGF0YTo6IE1FVEhPRF9NRDUKKworICAgQW5vdGhlciBNb2R1bGFyIENyeXB0IEZvcm1hdCBtZXRob2Qgd2l0aCA4IGNoYXJhY3RlciBzYWx0IGFuZCAyMgorICAgY2hhcmFjdGVyIGhhc2guCisKKy4uIGRhdGE6OiBNRVRIT0RfQ1JZUFQKKworICAgVGhlIHRyYWRpdGlvbmFsIG1ldGhvZCB3aXRoIGEgMiBjaGFyYWN0ZXIgc2FsdCBhbmQgMTMgY2hhcmFjdGVycyBvZgorICAgaGFzaC4gIFRoaXMgaXMgdGhlIHdlYWtlc3QgbWV0aG9kLgorCisKK01vZHVsZSBBdHRyaWJ1dGVzCistLS0tLS0tLS0tLS0tLS0tLQorCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gYXR0cmlidXRlOjogbWV0aG9kcworCisgICBBIGxpc3Qgb2YgYXZhaWxhYmxlIHBhc3N3b3JkIGhhc2hpbmcgYWxnb3JpdGhtcywgYXMKKyAgIGBgY3J5cHQuTUVUSE9EXypgYCBvYmplY3RzLiAgVGhpcyBsaXN0IGlzIHNvcnRlZCBmcm9tIHN0cm9uZ2VzdCB0bworICAgd2Vha2VzdCwgYW5kIGlzIGd1YXJhbnRlZWQgdG8gaGF2ZSBhdCBsZWFzdCBgYGNyeXB0Lk1FVEhPRF9DUllQVGBgLgorCisKK01vZHVsZSBGdW5jdGlvbnMKKy0tLS0tLS0tLS0tLS0tLS0KKworVGhlIDptb2Q6YGNyeXB0YCBtb2R1bGUgZGVmaW5lcyB0aGUgZm9sbG93aW5nIGZ1bmN0aW9uczoKKworLi4gZnVuY3Rpb246OiBjcnlwdCh3b3JkLCBzYWx0PU5vbmUpCiAKICAgICp3b3JkKiB3aWxsIHVzdWFsbHkgYmUgYSB1c2VyJ3MgcGFzc3dvcmQgYXMgdHlwZWQgYXQgYSBwcm9tcHQgb3IgIGluIGEgZ3JhcGhpY2FsCi0gICBpbnRlcmZhY2UuICAqc2FsdCogaXMgdXN1YWxseSBhIHJhbmRvbSB0d28tY2hhcmFjdGVyIHN0cmluZyB3aGljaCB3aWxsIGJlIHVzZWQKLSAgIHRvIHBlcnR1cmIgdGhlIERFUyBhbGdvcml0aG0gaW4gb25lIG9mIDQwOTYgd2F5cy4gIFRoZSBjaGFyYWN0ZXJzIGluICpzYWx0KiBtdXN0Ci0gICBiZSBpbiB0aGUgc2V0IGBgWy4vYS16QS1aMC05XWBgLiAgUmV0dXJucyB0aGUgaGFzaGVkIHBhc3N3b3JkIGFzIGEgc3RyaW5nLCB3aGljaAotICAgd2lsbCBiZSBjb21wb3NlZCBvZiBjaGFyYWN0ZXJzIGZyb20gdGhlIHNhbWUgYWxwaGFiZXQgYXMgdGhlIHNhbHQgKHRoZSBmaXJzdCB0d28KLSAgIGNoYXJhY3RlcnMgcmVwcmVzZW50IHRoZSBzYWx0IGl0c2VsZikuCisgICBpbnRlcmZhY2UuICBUaGUgb3B0aW9uYWwgKnNhbHQqIGlzIGVpdGhlciBhIHN0cmluZyBhcyByZXR1cm5lZCBmcm9tCisgICA6ZnVuYzpgbWtzYWx0YCwgb25lIG9mIHRoZSBgYGNyeXB0Lk1FVEhPRF8qYGAgdmFsdWVzICh0aG91Z2ggbm90IGFsbAorICAgbWF5IGJlIGF2YWlsYWJsZSBvbiBhbGwgcGxhdGZvcm1zKSwgb3IgYSBmdWxsIGVuY3J5cHRlZCBwYXNzd29yZAorICAgaW5jbHVkaW5nIHNhbHQsIGFzIHJldHVybmVkIGJ5IHRoaXMgZnVuY3Rpb24uICBJZiAqc2FsdCogaXMgbm90CisgICBwcm92aWRlZCwgdGhlIHN0cm9uZ2VzdCBtZXRob2Qgd2lsbCBiZSB1c2VkIChhcyByZXR1cm5lZCBieQorICAgOmZ1bmM6YG1ldGhvZHNgLgorCisgICBDaGVja2luZyBhIHBhc3N3b3JkIGlzIHVzdWFsbHkgZG9uZSBieSBwYXNzaW5nIHRoZSBwbGFpbi10ZXh0IHBhc3N3b3JkCisgICBhcyAqd29yZCogYW5kIHRoZSBmdWxsIHJlc3VsdHMgb2YgYSBwcmV2aW91cyA6ZnVuYzpgY3J5cHRgIGNhbGwsCisgICB3aGljaCBzaG91bGQgYmUgdGhlIHNhbWUgYXMgdGhlIHJlc3VsdHMgb2YgdGhpcyBjYWxsLgorCisgICAqc2FsdCogKGVpdGhlciBhIHJhbmRvbSAyIG9yIDE2IGNoYXJhY3RlciBzdHJpbmcsIHBvc3NpYmx5IHByZWZpeGVkIHdpdGgKKyAgIGBgJGRpZ2l0JGBgIHRvIGluZGljYXRlIHRoZSBtZXRob2QpIHdoaWNoIHdpbGwgYmUgdXNlZCB0byBwZXJ0dXJiIHRoZQorICAgZW5jcnlwdGlvbiBhbGdvcml0aG0uICBUaGUgY2hhcmFjdGVycyBpbiAqc2FsdCogbXVzdCBiZSBpbiB0aGUgc2V0CisgICBgYFsuL2EtekEtWjAtOV1gYCwgd2l0aCB0aGUgZXhjZXB0aW9uIG9mIE1vZHVsYXIgQ3J5cHQgRm9ybWF0IHdoaWNoCisgICBwcmVmaXhlcyBhIGBgJGRpZ2l0JGBgLgorCisgICBSZXR1cm5zIHRoZSBoYXNoZWQgcGFzc3dvcmQgYXMgYSBzdHJpbmcsIHdoaWNoIHdpbGwgYmUgY29tcG9zZWQgb2YKKyAgIGNoYXJhY3RlcnMgZnJvbSB0aGUgc2FtZSBhbHBoYWJldCBhcyB0aGUgc2FsdC4KIAogICAgLi4gaW5kZXg6OiBzaW5nbGU6IGNyeXB0KDMpCiAKQEAgLTQyLDE4ICsxMDEsNDggQEAKICAgIGRpZmZlcmVudCBzaXplcyBpbiB0aGUgKnNhbHQqLCBpdCBpcyByZWNvbW1lbmRlZCB0byB1c2UgIHRoZSBmdWxsIGNyeXB0ZWQKICAgIHBhc3N3b3JkIGFzIHNhbHQgd2hlbiBjaGVja2luZyBmb3IgYSBwYXNzd29yZC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFjY2VwdCBgYGNyeXB0Lk1FVEhPRF8qYGAgdmFsdWVzIGluIGFkZGl0aW9uIHRvIHN0cmluZ3MgZm9yICpzYWx0Ki4KKworCisuLiBmdW5jdGlvbjo6IG1rc2FsdChtZXRob2Q9Tm9uZSkKKworICAgUmV0dXJuIGEgcmFuZG9tbHkgZ2VuZXJhdGVkIHNhbHQgb2YgdGhlIHNwZWNpZmllZCBtZXRob2QuICBJZiBubworICAgKm1ldGhvZCogaXMgZ2l2ZW4sIHRoZSBzdHJvbmdlc3QgbWV0aG9kIGF2YWlsYWJsZSBhcyByZXR1cm5lZCBieQorICAgOmZ1bmM6YG1ldGhvZHNgIGlzIHVzZWQuCisKKyAgIFRoZSByZXR1cm4gdmFsdWUgaXMgYSBzdHJpbmcgZWl0aGVyIG9mIDIgY2hhcmFjdGVycyBpbiBsZW5ndGggZm9yCisgICBgYGNyeXB0Lk1FVEhPRF9DUllQVGBgLCBvciAxOSBjaGFyYWN0ZXJzIHN0YXJ0aW5nIHdpdGggYGAkZGlnaXQkYGAgYW5kCisgICAxNiByYW5kb20gY2hhcmFjdGVycyBmcm9tIHRoZSBzZXQgYGBbLi9hLXpBLVowLTldYGAsIHN1aXRhYmxlIGZvcgorICAgcGFzc2luZyBhcyB0aGUgKnNhbHQqIGFyZ3VtZW50IHRvIDpmdW5jOmBjcnlwdGAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCitFeGFtcGxlcworLS0tLS0tLS0KKwogQSBzaW1wbGUgZXhhbXBsZSBpbGx1c3RyYXRpbmcgdHlwaWNhbCB1c2U6OgogCi0gICBpbXBvcnQgY3J5cHQsIGdldHBhc3MsIHB3ZAorICAgaW1wb3J0IHB3ZAorICAgaW1wb3J0IGNyeXB0CisgICBpbXBvcnQgZ2V0cGFzcwogCiAgICBkZWYgbG9naW4oKToKLSAgICAgICB1c2VybmFtZSA9IGlucHV0KCdQeXRob24gbG9naW46JykKKyAgICAgICB1c2VybmFtZSA9IGlucHV0KCdQeXRob24gbG9naW46ICcpCiAgICAgICAgY3J5cHRlZHBhc3N3ZCA9IHB3ZC5nZXRwd25hbSh1c2VybmFtZSlbMV0KICAgICAgICBpZiBjcnlwdGVkcGFzc3dkOgogICAgICAgICAgICBpZiBjcnlwdGVkcGFzc3dkID09ICd4JyBvciBjcnlwdGVkcGFzc3dkID09ICcqJzoKLSAgICAgICAgICAgICAgIHJhaXNlICJTb3JyeSwgY3VycmVudGx5IG5vIHN1cHBvcnQgZm9yIHNoYWRvdyBwYXNzd29yZHMiCisgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdubyBzdXBwb3J0IGZvciBzaGFkb3cgcGFzc3dvcmRzJykKICAgICAgICAgICAgY2xlYXJ0ZXh0ID0gZ2V0cGFzcy5nZXRwYXNzKCkKICAgICAgICAgICAgcmV0dXJuIGNyeXB0LmNyeXB0KGNsZWFydGV4dCwgY3J5cHRlZHBhc3N3ZCkgPT0gY3J5cHRlZHBhc3N3ZAogICAgICAgIGVsc2U6Ci0gICAgICAgICAgIHJldHVybiAxCisgICAgICAgICAgIHJldHVybiBUcnVlCiAKK1RvIGdlbmVyYXRlIGEgaGFzaCBvZiBhIHBhc3N3b3JkIHVzaW5nIHRoZSBzdHJvbmdlc3QgYXZhaWxhYmxlIG1ldGhvZCBhbmQKK2NoZWNrIGl0IGFnYWluc3QgdGhlIG9yaWdpbmFsOjoKKworICAgaW1wb3J0IGNyeXB0CisKKyAgIGhhc2hlZCA9IGNyeXB0LmNyeXB0KHBsYWludGV4dCkKKyAgIGlmIGhhc2hlZCAhPSBjcnlwdC5jcnlwdChwbGFpbnRleHQsIGhhc2hlZCk6CisgICAgICByYWlzZSBWYWx1ZUVycm9yKCJoYXNoZWQgdmVyc2lvbiBkb2Vzbid0IHZhbGlkYXRlIGFnYWluc3Qgb3JpZ2luYWwiKQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvY3N2LnJzdCBiL0RvYy9saWJyYXJ5L2Nzdi5yc3QKaW5kZXggZWRiZTcyNi4uZWMwZGZjYyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvY3N2LnJzdAorKysgYi9Eb2MvbGlicmFyeS9jc3YucnN0CkBAIC0xMSwxNSArMTEsMTUgQEAKICAgIHBhaXI6IGRhdGE7IHRhYnVsYXIKIAogVGhlIHNvLWNhbGxlZCBDU1YgKENvbW1hIFNlcGFyYXRlZCBWYWx1ZXMpIGZvcm1hdCBpcyB0aGUgbW9zdCBjb21tb24gaW1wb3J0IGFuZAotZXhwb3J0IGZvcm1hdCBmb3Igc3ByZWFkc2hlZXRzIGFuZCBkYXRhYmFzZXMuICBUaGVyZSBpcyBubyAiQ1NWIHN0YW5kYXJkIiwgc28KLXRoZSBmb3JtYXQgaXMgb3BlcmF0aW9uYWxseSBkZWZpbmVkIGJ5IHRoZSBtYW55IGFwcGxpY2F0aW9ucyB3aGljaCByZWFkIGFuZAotd3JpdGUgaXQuICBUaGUgbGFjayBvZiBhIHN0YW5kYXJkIG1lYW5zIHRoYXQgc3VidGxlIGRpZmZlcmVuY2VzIG9mdGVuIGV4aXN0IGluCi10aGUgZGF0YSBwcm9kdWNlZCBhbmQgY29uc3VtZWQgYnkgZGlmZmVyZW50IGFwcGxpY2F0aW9ucy4gIFRoZXNlIGRpZmZlcmVuY2VzIGNhbgotbWFrZSBpdCBhbm5veWluZyB0byBwcm9jZXNzIENTViBmaWxlcyBmcm9tIG11bHRpcGxlIHNvdXJjZXMuICBTdGlsbCwgd2hpbGUgdGhlCi1kZWxpbWl0ZXJzIGFuZCBxdW90aW5nIGNoYXJhY3RlcnMgdmFyeSwgdGhlIG92ZXJhbGwgZm9ybWF0IGlzIHNpbWlsYXIgZW5vdWdoCi10aGF0IGl0IGlzIHBvc3NpYmxlIHRvIHdyaXRlIGEgc2luZ2xlIG1vZHVsZSB3aGljaCBjYW4gZWZmaWNpZW50bHkgbWFuaXB1bGF0ZQotc3VjaCBkYXRhLCBoaWRpbmcgdGhlIGRldGFpbHMgb2YgcmVhZGluZyBhbmQgd3JpdGluZyB0aGUgZGF0YSBmcm9tIHRoZQotcHJvZ3JhbW1lci4KK2V4cG9ydCBmb3JtYXQgZm9yIHNwcmVhZHNoZWV0cyBhbmQgZGF0YWJhc2VzLiAgQ1NWIGZvcm1hdCB3YXMgdXNlZCBmb3IgbWFueQoreWVhcnMgcHJpb3IgdG8gYXR0ZW1wdHMgdG8gZGVzY3JpYmUgdGhlIGZvcm1hdCBpbiBhIHN0YW5kYXJkaXplZCB3YXkgaW4KKzpyZmM6YDQxODBgLiAgVGhlIGxhY2sgb2YgYSB3ZWxsLWRlZmluZWQgc3RhbmRhcmQgbWVhbnMgdGhhdCBzdWJ0bGUgZGlmZmVyZW5jZXMKK29mdGVuIGV4aXN0IGluIHRoZSBkYXRhIHByb2R1Y2VkIGFuZCBjb25zdW1lZCBieSBkaWZmZXJlbnQgYXBwbGljYXRpb25zLiAgVGhlc2UKK2RpZmZlcmVuY2VzIGNhbiBtYWtlIGl0IGFubm95aW5nIHRvIHByb2Nlc3MgQ1NWIGZpbGVzIGZyb20gbXVsdGlwbGUgc291cmNlcy4KK1N0aWxsLCB3aGlsZSB0aGUgZGVsaW1pdGVycyBhbmQgcXVvdGluZyBjaGFyYWN0ZXJzIHZhcnksIHRoZSBvdmVyYWxsIGZvcm1hdCBpcworc2ltaWxhciBlbm91Z2ggdGhhdCBpdCBpcyBwb3NzaWJsZSB0byB3cml0ZSBhIHNpbmdsZSBtb2R1bGUgd2hpY2ggY2FuCitlZmZpY2llbnRseSBtYW5pcHVsYXRlIHN1Y2ggZGF0YSwgaGlkaW5nIHRoZSBkZXRhaWxzIG9mIHJlYWRpbmcgYW5kIHdyaXRpbmcgdGhlCitkYXRhIGZyb20gdGhlIHByb2dyYW1tZXIuCiAKIFRoZSA6bW9kOmBjc3ZgIG1vZHVsZSBpbXBsZW1lbnRzIGNsYXNzZXMgdG8gcmVhZCBhbmQgd3JpdGUgdGFidWxhciBkYXRhIGluIENTVgogZm9ybWF0LiAgSXQgYWxsb3dzIHByb2dyYW1tZXJzIHRvIHNheSwgIndyaXRlIHRoaXMgZGF0YSBpbiB0aGUgZm9ybWF0IHByZWZlcnJlZApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvY3R5cGVzLnJzdCBiL0RvYy9saWJyYXJ5L2N0eXBlcy5yc3QKaW5kZXggZGYzOWMyOC4uNDRmOGMyMCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvY3R5cGVzLnJzdAorKysgYi9Eb2MvbGlicmFyeS9jdHlwZXMucnN0CkBAIC0zOSw5ICszOSwxNCBAQAogY29udmVudGlvbiwgd2hpbGUgKndpbmRsbCogbGlicmFyaWVzIGNhbGwgZnVuY3Rpb25zIHVzaW5nIHRoZSBgYHN0ZGNhbGxgYAogY2FsbGluZyBjb252ZW50aW9uLiAqb2xlZGxsKiBhbHNvIHVzZXMgdGhlIGBgc3RkY2FsbGBgIGNhbGxpbmcgY29udmVudGlvbiwgYW5kCiBhc3N1bWVzIHRoZSBmdW5jdGlvbnMgcmV0dXJuIGEgV2luZG93cyA6Yzp0eXBlOmBIUkVTVUxUYCBlcnJvciBjb2RlLiBUaGUgZXJyb3IKLWNvZGUgaXMgdXNlZCB0byBhdXRvbWF0aWNhbGx5IHJhaXNlIGEgOmNsYXNzOmBXaW5kb3dzRXJyb3JgIGV4Y2VwdGlvbiB3aGVuIHRoZQorY29kZSBpcyB1c2VkIHRvIGF1dG9tYXRpY2FsbHkgcmFpc2UgYSA6Y2xhc3M6YE9TRXJyb3JgIGV4Y2VwdGlvbiB3aGVuIHRoZQogZnVuY3Rpb24gY2FsbCBmYWlscy4KIAorLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgIFdpbmRvd3MgZXJyb3JzIHVzZWQgdG8gcmFpc2UgOmV4YzpgV2luZG93c0Vycm9yYCwgd2hpY2ggaXMgbm93IGFuIGFsaWFzCisgICBvZiA6ZXhjOmBPU0Vycm9yYC4KKworCiBIZXJlIGFyZSBzb21lIGV4YW1wbGVzIGZvciBXaW5kb3dzLiBOb3RlIHRoYXQgYGBtc3ZjcnRgYCBpcyB0aGUgTVMgc3RhbmRhcmQgQwogbGlicmFyeSBjb250YWluaW5nIG1vc3Qgc3RhbmRhcmQgQyBmdW5jdGlvbnMsIGFuZCB1c2VzIHRoZSBjZGVjbCBjYWxsaW5nCiBjb252ZW50aW9uOjoKQEAgLTE4OSw3ICsxOTQsNyBAQAogICAgPj4+IHdpbmRsbC5rZXJuZWwzMi5HZXRNb2R1bGVIYW5kbGVBKDMyKSAjIGRvY3Rlc3Q6ICtXSU5ET1dTCiAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgICAgIEZpbGUgIjxzdGRpbj4iLCBsaW5lIDEsIGluID8KLSAgIFdpbmRvd3NFcnJvcjogZXhjZXB0aW9uOiBhY2Nlc3MgdmlvbGF0aW9uIHJlYWRpbmcgMHgwMDAwMDAyMAorICAgT1NFcnJvcjogZXhjZXB0aW9uOiBhY2Nlc3MgdmlvbGF0aW9uIHJlYWRpbmcgMHgwMDAwMDAyMAogICAgPj4+CiAKIFRoZXJlIGFyZSwgaG93ZXZlciwgZW5vdWdoIHdheXMgdG8gY3Jhc2ggUHl0aG9uIHdpdGggOm1vZDpgY3R5cGVzYCwgc28geW91CkBAIC00OTEsNyArNDk2LDcgQEAKICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMSwgaW4gPwogICAgICBGaWxlICI8c3RkaW4+IiwgbGluZSAzLCBpbiBWYWxpZEhhbmRsZQotICAgV2luZG93c0Vycm9yOiBbRXJybm8gMTI2XSBUaGUgc3BlY2lmaWVkIG1vZHVsZSBjb3VsZCBub3QgYmUgZm91bmQuCisgICBPU0Vycm9yOiBbRXJybm8gMTI2XSBUaGUgc3BlY2lmaWVkIG1vZHVsZSBjb3VsZCBub3QgYmUgZm91bmQuCiAgICA+Pj4KIAogYGBXaW5FcnJvcmBgIGlzIGEgZnVuY3Rpb24gd2hpY2ggd2lsbCBjYWxsIFdpbmRvd3MgYGBGb3JtYXRNZXNzYWdlKClgYCBhcGkgdG8KQEAgLTEzNDUsNyArMTM1MCwxMCBAQAogICAgYXNzdW1lZCB0byByZXR1cm4gdGhlIHdpbmRvd3Mgc3BlY2lmaWMgOmNsYXNzOmBIUkVTVUxUYCBjb2RlLiAgOmNsYXNzOmBIUkVTVUxUYAogICAgdmFsdWVzIGNvbnRhaW4gaW5mb3JtYXRpb24gc3BlY2lmeWluZyB3aGV0aGVyIHRoZSBmdW5jdGlvbiBjYWxsIGZhaWxlZCBvcgogICAgc3VjY2VlZGVkLCB0b2dldGhlciB3aXRoIGFkZGl0aW9uYWwgZXJyb3IgY29kZS4gIElmIHRoZSByZXR1cm4gdmFsdWUgc2lnbmFscyBhCi0gICBmYWlsdXJlLCBhbiA6Y2xhc3M6YFdpbmRvd3NFcnJvcmAgaXMgYXV0b21hdGljYWxseSByYWlzZWQuCisgICBmYWlsdXJlLCBhbiA6Y2xhc3M6YE9TRXJyb3JgIGlzIGF1dG9tYXRpY2FsbHkgcmFpc2VkLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgOmV4YzpgV2luZG93c0Vycm9yYCB1c2VkIHRvIGJlIHJhaXNlZC4KIAogCiAuLiBjbGFzczo6IFdpbkRMTChuYW1lLCBtb2RlPURFRkFVTFRfTU9ERSwgaGFuZGxlPU5vbmUsIHVzZV9lcnJubz1GYWxzZSwgdXNlX2xhc3RfZXJyb3I9RmFsc2UpCkBAIC0xOTYyLDExICsxOTcwLDE0IEBACiAuLiBmdW5jdGlvbjo6IFdpbkVycm9yKGNvZGU9Tm9uZSwgZGVzY3I9Tm9uZSkKIAogICAgV2luZG93cyBvbmx5OiB0aGlzIGZ1bmN0aW9uIGlzIHByb2JhYmx5IHRoZSB3b3JzdC1uYW1lZCB0aGluZyBpbiBjdHlwZXMuIEl0Ci0gICBjcmVhdGVzIGFuIGluc3RhbmNlIG9mIFdpbmRvd3NFcnJvci4gIElmICpjb2RlKiBpcyBub3Qgc3BlY2lmaWVkLAorICAgY3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBPU0Vycm9yLiAgSWYgKmNvZGUqIGlzIG5vdCBzcGVjaWZpZWQsCiAgICBgYEdldExhc3RFcnJvcmBgIGlzIGNhbGxlZCB0byBkZXRlcm1pbmUgdGhlIGVycm9yIGNvZGUuIElmICpkZXNjciogaXMgbm90CiAgICBzcGVjaWZpZWQsIDpmdW5jOmBGb3JtYXRFcnJvcmAgaXMgY2FsbGVkIHRvIGdldCBhIHRleHR1YWwgZGVzY3JpcHRpb24gb2YgdGhlCiAgICBlcnJvci4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFuIGluc3RhbmNlIG9mIDpleGM6YFdpbmRvd3NFcnJvcmAgdXNlZCB0byBiZSBjcmVhdGVkLgorCiAKIC4uIGZ1bmN0aW9uOjogd3N0cmluZ19hdChhZGRyZXNzLCBzaXplPS0xKQogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9jdXJzZXMucnN0IGIvRG9jL2xpYnJhcnkvY3Vyc2VzLnJzdAppbmRleCBmMzFiOWM1Li5mZjNhNzkzIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9jdXJzZXMucnN0CisrKyBiL0RvYy9saWJyYXJ5L2N1cnNlcy5yc3QKQEAgLTU5OCw2ICs1OTgsMTcgQEAKICAgICAgIE9ubHkgb25lICpjaCogY2FuIGJlIHB1c2hlZCBiZWZvcmUgOm1ldGg6YGdldGNoYCBpcyBjYWxsZWQuCiAKIAorLi4gZnVuY3Rpb246OiB1bmdldF93Y2goY2gpCisKKyAgIFB1c2ggKmNoKiBzbyB0aGUgbmV4dCA6bWV0aDpgZ2V0X3djaGAgd2lsbCByZXR1cm4gaXQuCisKKyAgIC4uIG5vdGU6OgorCisgICAgICBPbmx5IG9uZSAqY2gqIGNhbiBiZSBwdXNoZWQgYmVmb3JlIDptZXRoOmBnZXRfd2NoYCBpcyBjYWxsZWQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogdW5nZXRtb3VzZShpZCwgeCwgeSwgeiwgYnN0YXRlKQogCiAgICBQdXNoIGEgOmNvbnN0OmBLRVlfTU9VU0VgIGV2ZW50IG9udG8gdGhlIGlucHV0IHF1ZXVlLCBhc3NvY2lhdGluZyB0aGUgZ2l2ZW4KQEAgLTY0Miw3ICs2NTMsNyBAQAogLS0tLS0tLS0tLS0tLS0KIAogV2luZG93IG9iamVjdHMsIGFzIHJldHVybmVkIGJ5IDpmdW5jOmBpbml0c2NyYCBhbmQgOmZ1bmM6YG5ld3dpbmAgYWJvdmUsIGhhdmUKLXRoZSBmb2xsb3dpbmcgbWV0aG9kczoKK3RoZSBmb2xsb3dpbmcgbWV0aG9kcyBhbmQgYXR0cmlidXRlczoKIAogCiAuLiBtZXRob2Q6OiB3aW5kb3cuYWRkY2goW3ksIHgsXSBjaFssIGF0dHJdKQpAQCAtODIzLDYgKzgzNCwxNiBAQAogICAgZXZlbnQuCiAKIAorLi4gYXR0cmlidXRlOjogd2luZG93LmVuY29kaW5nCisKKyAgIEVuY29kaW5nIHVzZWQgdG8gZW5jb2RlIG1ldGhvZCBhcmd1bWVudHMgKFVuaWNvZGUgc3RyaW5ncyBhbmQgY2hhcmFjdGVycykuCisgICBUaGUgZW5jb2RpbmcgYXR0cmlidXRlIGlzIGluaGVyaXRlZCBmcm9tIGJ5IHBhcmVudCB3aW5kb3cgd2hlbiBhIHN1YndpbmRvdworICAgaXMgY3JlYXRlZCwgZm9yIGV4YW1wbGUgd2l0aCA6bWV0aDpgd2luZG93LnN1YndpbmAuIEJ5IGRlZmF1bHQsIHRoZSBsb2NhbGUKKyAgIGVuY29kaW5nIGlzIHVzZWQgKHNlZSA6ZnVuYzpgbG9jYWxlLmdldHByZWZlcnJlZGVuY29kaW5nYCkuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIG1ldGhvZDo6IHdpbmRvdy5lcmFzZSgpCiAKICAgIENsZWFyIHRoZSB3aW5kb3cuCkBAIC04NDYsNiArODY3LDE0IEBACiAgICB1bnRpbCBhIGtleSBpcyBwcmVzc2VkLgogCiAKKy4uIG1ldGhvZDo6IHdpbmRvdy5nZXRfd2NoKFt5LCB4XSkKKworICAgR2V0IGEgd2lkZSBjaGFyYWN0ZXIuIExpa2UgOm1ldGg6YGdldGNoYCwgYnV0IHRoZSBpbnRlZ2VyIHJldHVybmVkIGlzIHRoZQorICAgVW5pY29kZSBjb2RlIHBvaW50IGZvciB0aGUga2V5IHByZXNzZWQsIHNvIGl0IGNhbiBiZSBwYXNzZWQgdG8gOmZ1bmM6YGNocmAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIG1ldGhvZDo6IHdpbmRvdy5nZXRrZXkoW3ksIHhdKQogCiAgICBHZXQgYSBjaGFyYWN0ZXIsIHJldHVybmluZyBhIHN0cmluZyBpbnN0ZWFkIG9mIGFuIGludGVnZXIsIGFzIDptZXRoOmBnZXRjaGAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2RhdGF0eXBlcy5yc3QgYi9Eb2MvbGlicmFyeS9kYXRhdHlwZXMucnN0CmluZGV4IDZiNGE3MWEuLjhlMzNjMWYgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2RhdGF0eXBlcy5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZGF0YXR5cGVzLnJzdApAQCAtMjEsNiArMjEsNyBAQAogICAgZGF0ZXRpbWUucnN0CiAgICBjYWxlbmRhci5yc3QKICAgIGNvbGxlY3Rpb25zLnJzdAorICAgY29sbGVjdGlvbnMuYWJjLnJzdAogICAgaGVhcHEucnN0CiAgICBiaXNlY3QucnN0CiAgICBhcnJheS5yc3QKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2RhdGV0aW1lLnJzdCBiL0RvYy9saWJyYXJ5L2RhdGV0aW1lLnJzdAppbmRleCAxZjRjZmJhLi5hNmMxOTk3IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9kYXRldGltZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZGF0ZXRpbWUucnN0CkBAIC03MjEsNiArNzIxLDIyIEBACiAgICBJdCdzIGNvbW1vbiBmb3IgdGhpcyB0byBiZSByZXN0cmljdGVkIHRvIHllYXJzIGluIDE5NzAgdGhyb3VnaCAyMDM4LiBTZWUgYWxzbwogICAgOm1ldGg6YGZyb210aW1lc3RhbXBgLgogCisgICBPbiB0aGUgUE9TSVggY29tcGxpYW50IHBsYXRmb3JtcywgYGB1dGNmcm9tdGltZXN0YW1wKHRpbWVzdGFtcClgYAorICAgaXMgZXF1aXZhbGVudCB0byB0aGUgZm9sbG93aW5nIGV4cHJlc3Npb246OgorCisgICAgIGRhdGV0aW1lKDE5NzAsIDEsIDEpICsgdGltZWRlbHRhKHNlY29uZHM9dGltZXN0YW1wKQorCisgICBUaGVyZSBpcyBubyBtZXRob2QgdG8gb2J0YWluIHRoZSB0aW1lc3RhbXAgZnJvbSBhIDpjbGFzczpgZGF0ZXRpbWVgCisgICBpbnN0YW5jZSwgYnV0IFBPU0lYIHRpbWVzdGFtcCBjb3JyZXNwb25kaW5nIHRvIGEgOmNsYXNzOmBkYXRldGltZWAKKyAgIGluc3RhbmNlIGBgZHRgYCBjYW4gYmUgZWFzaWx5IGNhbGN1bGF0ZWQgYXMgZm9sbG93cy4gIEZvciBhIG5haXZlCisgICBgYGR0YGA6OgorCisgICAgICB0aW1lc3RhbXAgPSAoZHQgLSBkYXRldGltZSgxOTcwLCAxLCAxKSkgLyB0aW1lZGVsdGEoc2Vjb25kcz0xKQorCisgICBBbmQgZm9yIGFuIGF3YXJlIGBgZHRgYDo6CisKKyAgICAgIHRpbWVzdGFtcCA9IChkdCAtIGRhdGV0aW1lKDE5NzAsIDEsIDEsIHR6aW5mbz10aW1lem9uZS51dGMpKSAvIHRpbWVkZWx0YShzZWNvbmRzPTEpCisKIAogLi4gY2xhc3NtZXRob2Q6OiBkYXRldGltZS5mcm9tb3JkaW5hbChvcmRpbmFsKQogCkBAIC0xNTY0LDExICsxNTgwLDEyIEBACiA6Y2xhc3M6YHRpbWV6b25lYCBPYmplY3RzCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1BIDpjbGFzczpgdGltZXpvbmVgIG9iamVjdCByZXByZXNlbnRzIGEgdGltZXpvbmUgdGhhdCBpcyBkZWZpbmVkIGJ5IGEKLWZpeGVkIG9mZnNldCBmcm9tIFVUQy4gIE5vdGUgdGhhdCBvYmplY3RzIG9mIHRoaXMgY2xhc3MgY2Fubm90IGJlIHVzZWQKLXRvIHJlcHJlc2VudCB0aW1lem9uZSBpbmZvcm1hdGlvbiBpbiB0aGUgbG9jYXRpb25zIHdoZXJlIGRpZmZlcmVudAotb2Zmc2V0cyBhcmUgdXNlZCBpbiBkaWZmZXJlbnQgZGF5cyBvZiB0aGUgeWVhciBvciB3aGVyZSBoaXN0b3JpY2FsCi1jaGFuZ2VzIGhhdmUgYmVlbiBtYWRlIHRvIGNpdmlsIHRpbWUuCitUaGUgOmNsYXNzOmB0aW1lem9uZWAgY2xhc3MgaXMgYSBzdWJjbGFzcyBvZiA6Y2xhc3M6YHR6aW5mb2AsIGVhY2gKK2luc3RhbmNlIG9mIHdoaWNoIHJlcHJlc2VudHMgYSB0aW1lem9uZSBkZWZpbmVkIGJ5IGEgZml4ZWQgb2Zmc2V0IGZyb20KK1VUQy4gIE5vdGUgdGhhdCBvYmplY3RzIG9mIHRoaXMgY2xhc3MgY2Fubm90IGJlIHVzZWQgdG8gcmVwcmVzZW50Cit0aW1lem9uZSBpbmZvcm1hdGlvbiBpbiB0aGUgbG9jYXRpb25zIHdoZXJlIGRpZmZlcmVudCBvZmZzZXRzIGFyZSB1c2VkCitpbiBkaWZmZXJlbnQgZGF5cyBvZiB0aGUgeWVhciBvciB3aGVyZSBoaXN0b3JpY2FsIGNoYW5nZXMgaGF2ZSBiZWVuCittYWRlIHRvIGNpdmlsIHRpbWUuCiAKIAogLi4gY2xhc3M6OiB0aW1lem9uZShvZmZzZXRbLCBuYW1lXSkKQEAgLTE3MzcsOCArMTc1NCw3IEBACiB8ICAgICAgICAgICB8IGRlY2ltYWwgbnVtYmVyIFswMCw5OV0uICAgICAgICB8ICAgICAgIHwKICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwogfCBgYCVZYGAgICAgfCBZZWFyIHdpdGggY2VudHVyeSBhcyBhIGRlY2ltYWwgfCBcKDUpICB8Ci18ICAgICAgICAgICB8IG51bWJlciBbMDAwMSw5OTk5XSAoc3RycHRpbWUpLCB8ICAgICAgIHwKLXwgICAgICAgICAgIHwgWzEwMDAsOTk5OV0gKHN0cmZ0aW1lKS4gICAgICAgIHwgICAgICAgfAorfCAgICAgICAgICAgfCBudW1iZXIgWzAwMDEsOTk5OV0uICAgICAgICAgICAgfCAgICAgICB8CiArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKIHwgYGAlemBgICAgIHwgVVRDIG9mZnNldCBpbiB0aGUgZm9ybSArSEhNTSAgIHwgXCg2KSAgfAogfCAgICAgICAgICAgfCBvciAtSEhNTSAoZW1wdHkgc3RyaW5nIGlmIHRoZSAgfCAgICAgICB8CkBAIC0xNzcyLDEwICsxNzg4LDcgQEAKICAgIGNhbGN1bGF0aW9ucyB3aGVuIHRoZSBkYXkgb2YgdGhlIHdlZWsgYW5kIHRoZSB5ZWFyIGFyZSBzcGVjaWZpZWQuCiAKICg1KQotICAgRm9yIHRlY2huaWNhbCByZWFzb25zLCA6bWV0aDpgc3RyZnRpbWVgIG1ldGhvZCBkb2VzIG5vdCBzdXBwb3J0Ci0gICBkYXRlcyBiZWZvcmUgeWVhciAxMDAwOiBgYHQuc3RyZnRpbWUoZm9ybWF0KWBgIHdpbGwgcmFpc2UgYQotICAgOmV4YzpgVmFsdWVFcnJvcmAgd2hlbiBgYHQueWVhciA8IDEwMDBgYCBldmVuIGlmIGBgZm9ybWF0YGAgZG9lcwotICAgbm90IGNvbnRhaW4gYGAlWWBgIGRpcmVjdGl2ZS4gIFRoZSA6bWV0aDpgc3RycHRpbWVgIG1ldGhvZCBjYW4KKyAgIFRoZSA6bWV0aDpgc3RycHRpbWVgIG1ldGhvZCBjYW4KICAgIHBhcnNlIHllYXJzIGluIHRoZSBmdWxsIFsxLCA5OTk5XSByYW5nZSwgYnV0IHllYXJzIDwgMTAwMCBtdXN0IGJlCiAgICB6ZXJvLWZpbGxlZCB0byA0LWRpZ2l0IHdpZHRoLgogCkBAIC0xNzgzLDYgKzE3OTYsMTAgQEAKICAgICAgIEluIHByZXZpb3VzIHZlcnNpb25zLCA6bWV0aDpgc3RyZnRpbWVgIG1ldGhvZCB3YXMgcmVzdHJpY3RlZCB0bwogICAgICAgeWVhcnMgPj0gMTkwMC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEluIHZlcnNpb24gMy4yLCA6bWV0aDpgc3RyZnRpbWVgIG1ldGhvZCB3YXMgcmVzdHJpY3RlZCB0bworICAgICAgeWVhcnMgPj0gMTAwMC4KKwogKDYpCiAgICBGb3IgZXhhbXBsZSwgaWYgOm1ldGg6YHV0Y29mZnNldGAgcmV0dXJucyBgYHRpbWVkZWx0YShob3Vycz0tMywgbWludXRlcz0tMzApYGAsCiAgICBgYCV6YGAgaXMgcmVwbGFjZWQgd2l0aCB0aGUgc3RyaW5nIGBgJy0wMzMwJ2BgLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZGVidWcucnN0IGIvRG9jL2xpYnJhcnkvZGVidWcucnN0CmluZGV4IGIyZWU0ZmEuLmM2OWZiMWMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2RlYnVnLnJzdAorKysgYi9Eb2MvbGlicmFyeS9kZWJ1Zy5yc3QKQEAgLTEwLDcgKzEwLDggQEAKIC4uIHRvY3RyZWU6OgogCiAgICBiZGIucnN0CisgICBmYXVsdGhhbmRsZXIucnN0CiAgICBwZGIucnN0CiAgICBwcm9maWxlLnJzdAogICAgdGltZWl0LnJzdAotICAgdHJhY2UucnN0ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorICAgdHJhY2UucnN0CmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9kZXBncmFwaC1vdXRwdXQucG5nIGIvRG9jL2xpYnJhcnkvZGVwZ3JhcGgtb3V0cHV0LnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NjBiYjFiCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvZGVwZ3JhcGgtb3V0cHV0LnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9kaWZmbGliLnJzdCBiL0RvYy9saWJyYXJ5L2RpZmZsaWIucnN0CmluZGV4IGJkYzM3YjMuLjgzNmUyNDAgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2RpZmZsaWIucnN0CisrKyBiL0RvYy9saWJyYXJ5L2RpZmZsaWIucnN0CkBAIC03NTIsOCArNzUyLDggQEAKICAgICAgICAjIHdlJ3JlIHBhc3NpbmcgdGhlc2UgYXMgYXJndW1lbnRzIHRvIHRoZSBkaWZmIGZ1bmN0aW9uCiAgICAgICAgZnJvbWRhdGUgPSB0aW1lLmN0aW1lKG9zLnN0YXQoZnJvbWZpbGUpLnN0X210aW1lKQogICAgICAgIHRvZGF0ZSA9IHRpbWUuY3RpbWUob3Muc3RhdCh0b2ZpbGUpLnN0X210aW1lKQotICAgICAgIGZyb21saW5lcyA9IG9wZW4oZnJvbWZpbGUsICdVJykucmVhZGxpbmVzKCkKLSAgICAgICB0b2xpbmVzID0gb3Blbih0b2ZpbGUsICdVJykucmVhZGxpbmVzKCkKKyAgICAgICB3aXRoIG9wZW4oZnJvbWxpbmVzKSBhcyBmcm9tZiwgb3Blbih0b2ZpbGUpIGFzIHRvZjoKKyAgICAgICAgICAgZnJvbWxpbmVzLCB0b2xpbmVzID0gbGlzdChmcm9tZiksIGxpc3QodG9mKQogCiAgICAgICAgaWYgb3B0aW9ucy51OgogICAgICAgICAgICBkaWZmID0gZGlmZmxpYi51bmlmaWVkX2RpZmYoZnJvbWxpbmVzLCB0b2xpbmVzLCBmcm9tZmlsZSwgdG9maWxlLApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZGlzLnJzdCBiL0RvYy9saWJyYXJ5L2Rpcy5yc3QKaW5kZXggNzljYzU4My4uNWJhNjZjYiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvZGlzLnJzdAorKysgYi9Eb2MvbGlicmFyeS9kaXMucnN0CkBAIC0xNzEsMTEgKzE3MSw2IEBACiAKICoqR2VuZXJhbCBpbnN0cnVjdGlvbnMqKgogCi0uLiBvcGNvZGU6OiBTVE9QX0NPREUKLQotICAgSW5kaWNhdGVzIGVuZC1vZi1jb2RlIHRvIHRoZSBjb21waWxlciwgbm90IHVzZWQgYnkgdGhlIGludGVycHJldGVyLgotCi0KIC4uIG9wY29kZTo6IE5PUAogCiAgICBEbyBub3RoaW5nIGNvZGUuICBVc2VkIGFzIGEgcGxhY2Vob2xkZXIgYnkgdGhlIGJ5dGVjb2RlIG9wdGltaXplci4KQEAgLTQzNiw2ICs0MzEsMTMgQEAKICAgIFBvcHMgYGBUT1NgYCBhbmQgeWllbGRzIGl0IGZyb20gYSA6dGVybTpgZ2VuZXJhdG9yYC4KIAogCisuLiBvcGNvZGU6OiBZSUVMRF9GUk9NCisKKyAgIFBvcHMgYGBUT1NgYCBhbmQgZGVsZWdhdGVzIHRvIGl0IGFzIGEgc3ViaXRlcmF0b3IgZnJvbSBhIDp0ZXJtOmBnZW5lcmF0b3JgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBvcGNvZGU6OiBJTVBPUlRfU1RBUgogCiAgICBMb2FkcyBhbGwgc3ltYm9scyBub3Qgc3RhcnRpbmcgd2l0aCBgYCdfJ2BgIGRpcmVjdGx5IGZyb20gdGhlIG1vZHVsZSBUT1MgdG8gdGhlCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9kaXN0dXRpbHMucnN0IGIvRG9jL2xpYnJhcnkvZGlzdHV0aWxzLnJzdAppbmRleCAyMzhiNzlkLi41M2E2OWFlIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9kaXN0dXRpbHMucnN0CisrKyBiL0RvYy9saWJyYXJ5L2Rpc3R1dGlscy5yc3QKQEAgLTEyLDE4ICsxMiwyNiBAQAogMTAwJS1wdXJlIFB5dGhvbiwgb3IgbWF5IGJlIGV4dGVuc2lvbiBtb2R1bGVzIHdyaXR0ZW4gaW4gQywgb3IgbWF5IGJlCiBjb2xsZWN0aW9ucyBvZiBQeXRob24gcGFja2FnZXMgd2hpY2ggaW5jbHVkZSBtb2R1bGVzIGNvZGVkIGluIGJvdGggUHl0aG9uIGFuZCBDLgogCi1UaGlzIHBhY2thZ2UgaXMgZGlzY3Vzc2VkIGluIHR3byBzZXBhcmF0ZSBjaGFwdGVyczoKKy4uIGRlcHJlY2F0ZWQ6OiAzLjMKKyAgIDptb2Q6YHBhY2thZ2luZ2AgcmVwbGFjZXMgRGlzdHV0aWxzLiAgU2VlIDpyZWY6YHBhY2thZ2luZy1pbmRleGAgYW5kCisgICA6cmVmOmBwYWNrYWdpbmctaW5zdGFsbC1pbmRleGAuCiAKIAorVXNlciBkb2N1bWVudGF0aW9uIGFuZCBBUEkgcmVmZXJlbmNlIGFyZSBwcm92aWRlZCBpbiBhbm90aGVyIGRvY3VtZW50OgorCiAuLiBzZWVhbHNvOjoKIAogICAgOnJlZjpgZGlzdHV0aWxzLWluZGV4YAogICAgICAgVGhlIG1hbnVhbCBmb3IgZGV2ZWxvcGVycyBhbmQgcGFja2FnZXJzIG9mIFB5dGhvbiBtb2R1bGVzLiAgVGhpcyBkZXNjcmliZXMKICAgICAgIGhvdyB0byBwcmVwYXJlIDptb2Q6YGRpc3R1dGlsc2BcIC1iYXNlZCBwYWNrYWdlcyBzbyB0aGF0IHRoZXkgbWF5IGJlCi0gICAgICBlYXNpbHkgaW5zdGFsbGVkIGludG8gYW4gZXhpc3RpbmcgUHl0aG9uIGluc3RhbGxhdGlvbi4KKyAgICAgIGVhc2lseSBpbnN0YWxsZWQgaW50byBhbiBleGlzdGluZyBQeXRob24gaW5zdGFsbGF0aW9uLiAgSWYgYWxzbyBjb250YWlucworICAgICAgaW5zdHJ1Y3Rpb25zIGZvciBlbmQtdXNlcnMgd2FudGluZyB0byBpbnN0YWxsIGEgZGlzdHV0aWxzLWJhc2VkIHBhY2thZ2UsCisgICAgICA6cmVmOmBpbnN0YWxsLWluZGV4YC4KIAotICAgOnJlZjpgaW5zdGFsbC1pbmRleGAKLSAgICAgIEFuICJhZG1pbmlzdHJhdG9ycyIgbWFudWFsIHdoaWNoIGluY2x1ZGVzIGluZm9ybWF0aW9uIG9uIGluc3RhbGxpbmcKLSAgICAgIG1vZHVsZXMgaW50byBhbiBleGlzdGluZyBQeXRob24gaW5zdGFsbGF0aW9uLiAgWW91IGRvIG5vdCBuZWVkIHRvIGJlIGEKLSAgICAgIFB5dGhvbiBwcm9ncmFtbWVyIHRvIHJlYWQgdGhpcyBtYW51YWwuCiAKKy4uIHRyaWNrIHRvIHNpbGVuY2UgYSBTcGhpbnggd2FybmluZworCisuLiB0b2N0cmVlOjoKKyAgIDpoaWRkZW46CisKKyAgIC4uL2Rpc3R1dGlscy9pbmRleApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZW1haWwuZ2VuZXJhdG9yLnJzdCBiL0RvYy9saWJyYXJ5L2VtYWlsLmdlbmVyYXRvci5yc3QKaW5kZXggODViMzJmZS4uODQ3ZDdlNCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvZW1haWwuZ2VuZXJhdG9yLnJzdAorKysgYi9Eb2MvbGlicmFyeS9lbWFpbC5nZW5lcmF0b3IucnN0CkBAIC0zMiw3ICszMiw4IEBACiA6bW9kOmBlbWFpbC5nZW5lcmF0b3JgIG1vZHVsZToKIAogCi0uLiBjbGFzczo6IEdlbmVyYXRvcihvdXRmcCwgbWFuZ2xlX2Zyb21fPVRydWUsIG1heGhlYWRlcmxlbj03OCkKKy4uIGNsYXNzOjogR2VuZXJhdG9yKG91dGZwLCBtYW5nbGVfZnJvbV89VHJ1ZSwgbWF4aGVhZGVybGVuPTc4LCAqLCBcCisgICAgICAgICAgICAgICAgICAgICBwb2xpY3k9cG9saWN5LmRlZmF1bHQpCiAKICAgIFRoZSBjb25zdHJ1Y3RvciBmb3IgdGhlIDpjbGFzczpgR2VuZXJhdG9yYCBjbGFzcyB0YWtlcyBhIDp0ZXJtOmBmaWxlLWxpa2Ugb2JqZWN0YAogICAgY2FsbGVkICpvdXRmcCogZm9yIGFuIGFyZ3VtZW50LiAgKm91dGZwKiBtdXN0IHN1cHBvcnQgdGhlIDptZXRoOmB3cml0ZWAgbWV0aG9kCkBAIC01MywxMCArNTQsMTYgQEAKICAgIDpjbGFzczpgfmVtYWlsLmhlYWRlci5IZWFkZXJgIGNsYXNzLiAgU2V0IHRvIHplcm8gdG8gZGlzYWJsZSBoZWFkZXIgd3JhcHBpbmcuCiAgICBUaGUgZGVmYXVsdCBpcyA3OCwgYXMgcmVjb21tZW5kZWQgKGJ1dCBub3QgcmVxdWlyZWQpIGJ5IDpyZmM6YDI4MjJgLgogCisgICBUaGUgKnBvbGljeSoga2V5d29yZCBzcGVjaWZpZXMgYSA6bW9kOmB+ZW1haWwucG9saWN5YCBvYmplY3QgdGhhdCBjb250cm9scyBhCisgICBudW1iZXIgb2YgYXNwZWN0cyBvZiB0aGUgZ2VuZXJhdG9yJ3Mgb3BlcmF0aW9uLiAgVGhlIGRlZmF1bHQgcG9saWN5CisgICBtYWludGFpbnMgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMgQWRkZWQgdGhlICpwb2xpY3kqIGtleXdvcmQuCisKICAgIFRoZSBvdGhlciBwdWJsaWMgOmNsYXNzOmBHZW5lcmF0b3JgIG1ldGhvZHMgYXJlOgogCiAKLSAgIC4uIG1ldGhvZDo6IGZsYXR0ZW4obXNnLCB1bml4ZnJvbT1GYWxzZSwgbGluZXNlcD0nXFxuJykKKyAgIC4uIG1ldGhvZDo6IGZsYXR0ZW4obXNnLCB1bml4ZnJvbT1GYWxzZSwgbGluZXNlcD1Ob25lKQogCiAgICAgICBQcmludCB0aGUgdGV4dHVhbCByZXByZXNlbnRhdGlvbiBvZiB0aGUgbWVzc2FnZSBvYmplY3Qgc3RydWN0dXJlIHJvb3RlZCBhdAogICAgICAgKm1zZyogdG8gdGhlIG91dHB1dCBmaWxlIHNwZWNpZmllZCB3aGVuIHRoZSA6Y2xhc3M6YEdlbmVyYXRvcmAgaW5zdGFuY2UKQEAgLTcyLDEyICs3OSwxMyBAQAogICAgICAgTm90ZSB0aGF0IGZvciBzdWJwYXJ0cywgbm8gZW52ZWxvcGUgaGVhZGVyIGlzIGV2ZXIgcHJpbnRlZC4KIAogICAgICAgT3B0aW9uYWwgKmxpbmVzZXAqIHNwZWNpZmllcyB0aGUgbGluZSBzZXBhcmF0b3IgY2hhcmFjdGVyIHVzZWQgdG8KLSAgICAgIHRlcm1pbmF0ZSBsaW5lcyBpbiB0aGUgb3V0cHV0LiAgSXQgZGVmYXVsdHMgdG8gYGBcbmBgIGJlY2F1c2UgdGhhdCBpcwotICAgICAgdGhlIG1vc3QgdXNlZnVsIHZhbHVlIGZvciBQeXRob24gYXBwbGljYXRpb24gY29kZSAob3RoZXIgbGlicmFyeSBwYWNrYWdlcwotICAgICAgZXhwZWN0IGBgXG5gYCBzZXBhcmF0ZWQgbGluZXMpLiAgYGBsaW5lc2VwPVxyXG5gYCBjYW4gYmUgdXNlZCB0bwotICAgICAgZ2VuZXJhdGUgb3V0cHV0IHdpdGggUkZDLWNvbXBsaWFudCBsaW5lIHNlcGFyYXRvcnMuCisgICAgICB0ZXJtaW5hdGUgbGluZXMgaW4gdGhlIG91dHB1dC4gIElmIHNwZWNpZmllZCBpdCBvdmVycmlkZXMgdGhlIHZhbHVlCisgICAgICBzcGVjaWZpZWQgYnkgdGhlIGBgR2VuZXJhdG9yYGBcJ3MgYGBwb2xpY3lgYC4KIAotICAgICAgTWVzc2FnZXMgcGFyc2VkIHdpdGggYSBCeXRlcyBwYXJzZXIgdGhhdCBoYXZlIGEKKyAgICAgIEJlY2F1c2Ugc3RyaW5ncyBjYW5ub3QgcmVwcmVzZW50IG5vbi1BU0NJSSBieXRlcywgYGBHZW5lcmF0b3JgYCBpZ25vcmVzCisgICAgICB0aGUgdmFsdWUgb2YgdGhlIDphdHRyOmB+ZW1haWwucG9saWN5LlBvbGljeS5tdXN0X2JlXzdiaXRgCisgICAgICA6bW9kOmB+ZW1haWwucG9saWN5YCBzZXR0aW5nIGFuZCBvcGVyYXRlcyBhcyBpZiBpdCB3ZXJlIHNldCBgYFRydWVgYC4KKyAgICAgIFRoaXMgbWVhbnMgdGhhdCBtZXNzYWdlcyBwYXJzZWQgd2l0aCBhIEJ5dGVzIHBhcnNlciB0aGF0IGhhdmUgYQogICAgICAgOm1haWxoZWFkZXI6YENvbnRlbnQtVHJhbnNmZXItRW5jb2RpbmdgIG9mIDhiaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYQogICAgICAgdXNlIGEgN2JpdCBDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nLiAgTm9uLUFTQ0lJIGJ5dGVzIGluIHRoZSBoZWFkZXJzCiAgICAgICB3aWxsIGJlIDpyZmM6YDIwNDdgIGVuY29kZWQgd2l0aCBhIGNoYXJzZXQgb2YgYHVua25vd24tOGJpdGAuCkBAIC0xMDMsNyArMTExLDggQEAKIGZvcm1hdHRlZCBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYSBtZXNzYWdlIG9iamVjdC4gIEZvciBtb3JlIGRldGFpbCwgc2VlCiA6bW9kOmBlbWFpbC5tZXNzYWdlYC4KIAotLi4gY2xhc3M6OiBCeXRlc0dlbmVyYXRvcihvdXRmcCwgbWFuZ2xlX2Zyb21fPVRydWUsIG1heGhlYWRlcmxlbj03OCkKKy4uIGNsYXNzOjogQnl0ZXNHZW5lcmF0b3Iob3V0ZnAsIG1hbmdsZV9mcm9tXz1UcnVlLCBtYXhoZWFkZXJsZW49NzgsICosIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgcG9saWN5PXBvbGljeS5kZWZhdWx0KQogCiAgICBUaGUgY29uc3RydWN0b3IgZm9yIHRoZSA6Y2xhc3M6YEJ5dGVzR2VuZXJhdG9yYCBjbGFzcyB0YWtlcyBhIGJpbmFyeQogICAgOnRlcm06YGZpbGUtbGlrZSBvYmplY3RgIGNhbGxlZCAqb3V0ZnAqIGZvciBhbiBhcmd1bWVudC4gICpvdXRmcCogbXVzdApAQCAtMTI1LDE5ICsxMzQsMzEgQEAKICAgIHdyYXBwaW5nLiAgVGhlIGRlZmF1bHQgaXMgNzgsIGFzIHJlY29tbWVuZGVkIChidXQgbm90IHJlcXVpcmVkKSBieQogICAgOnJmYzpgMjgyMmAuCiAKKyAgIFRoZSAqcG9saWN5KiBrZXl3b3JkIHNwZWNpZmllcyBhIDptb2Q6YH5lbWFpbC5wb2xpY3lgIG9iamVjdCB0aGF0IGNvbnRyb2xzIGEKKyAgIG51bWJlciBvZiBhc3BlY3RzIG9mIHRoZSBnZW5lcmF0b3IncyBvcGVyYXRpb24uICBUaGUgZGVmYXVsdCBwb2xpY3kKKyAgIG1haW50YWlucyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMyBBZGRlZCB0aGUgKnBvbGljeSoga2V5d29yZC4KKwogICAgVGhlIG90aGVyIHB1YmxpYyA6Y2xhc3M6YEJ5dGVzR2VuZXJhdG9yYCBtZXRob2RzIGFyZToKIAogCi0gICAuLiBtZXRob2Q6OiBmbGF0dGVuKG1zZywgdW5peGZyb209RmFsc2UsIGxpbmVzZXA9J1xuJykKKyAgIC4uIG1ldGhvZDo6IGZsYXR0ZW4obXNnLCB1bml4ZnJvbT1GYWxzZSwgbGluZXNlcD1Ob25lKQogCiAgICAgICBQcmludCB0aGUgdGV4dHVhbCByZXByZXNlbnRhdGlvbiBvZiB0aGUgbWVzc2FnZSBvYmplY3Qgc3RydWN0dXJlIHJvb3RlZAogICAgICAgYXQgKm1zZyogdG8gdGhlIG91dHB1dCBmaWxlIHNwZWNpZmllZCB3aGVuIHRoZSA6Y2xhc3M6YEJ5dGVzR2VuZXJhdG9yYAogICAgICAgaW5zdGFuY2Ugd2FzIGNyZWF0ZWQuICBTdWJwYXJ0cyBhcmUgdmlzaXRlZCBkZXB0aC1maXJzdCBhbmQgdGhlIHJlc3VsdGluZwotICAgICAgdGV4dCB3aWxsIGJlIHByb3Blcmx5IE1JTUUgZW5jb2RlZC4gIElmIHRoZSBpbnB1dCB0aGF0IGNyZWF0ZWQgdGhlICptc2cqCi0gICAgICBjb250YWluZWQgYnl0ZXMgd2l0aCB0aGUgaGlnaCBiaXQgc2V0IGFuZCB0aG9zZSBieXRlcyBoYXZlIG5vdCBiZWVuCi0gICAgICBtb2RpZmllZCwgdGhleSB3aWxsIGJlIGNvcGllZCBmYWl0aGZ1bGx5IHRvIHRoZSBvdXRwdXQsIGV2ZW4gaWYgZG9pbmcgc28KLSAgICAgIGlzIG5vdCBzdHJpY3RseSBSRkMgY29tcGxpYW50LiAgKFRvIHByb2R1Y2Ugc3RyaWN0bHkgUkZDIGNvbXBsaWFudAotICAgICAgb3V0cHV0LCB1c2UgdGhlIDpjbGFzczpgR2VuZXJhdG9yYCBjbGFzcy4pCisgICAgICB0ZXh0IHdpbGwgYmUgcHJvcGVybHkgTUlNRSBlbmNvZGVkLiAgSWYgdGhlIDptb2Q6YH5lbWFpbC5wb2xpY3lgIG9wdGlvbgorICAgICAgOmF0dHI6YH5lbWFpbC5wb2xpY3kuUG9saWN5Lm11c3RfYmVfN2JpdGAgaXMgYGBGYWxzZWBgICh0aGUgZGVmYXVsdCksCisgICAgICB0aGVuIGFueSBieXRlcyB3aXRoIHRoZSBoaWdoIGJpdCBzZXQgaW4gdGhlIG9yaWdpbmFsIHBhcnNlZCBtZXNzYWdlIHRoYXQKKyAgICAgIGhhdmUgbm90IGJlZW4gbW9kaWZpZWQgd2lsbCBiZSBjb3BpZWQgZmFpdGhmdWxseSB0byB0aGUgb3V0cHV0LiAgSWYKKyAgICAgIGBgbXVzdF9iZV83Yml0YGAgaXMgdHJ1ZSwgdGhlIGJ5dGVzIHdpbGwgYmUgY29udmVydGVkIGFzIG5lZWRlZCB1c2luZyBhbgorICAgICAgQVNDSUkgY29udGVudC10cmFuc2Zlci1lbmNvZGluZy4gIEluIHBhcnRpY3VsYXIsIFJGQy1pbnZhbGlkIG5vbi1BU0NJSQorICAgICAgYnl0ZXMgaW4gaGVhZGVycyB3aWxsIGJlIGVuY29kZWQgdXNpbmcgdGhlIE1JTUUgYGB1bmtub3duLThiaXRgYAorICAgICAgY2hhcmFjdGVyIHNldCwgdGh1cyByZW5kZXJpbmcgdGhlbSBSRkMtY29tcGxpYW50LgorCisgICAgICAuLiBYWFg6IFRoZXJlIHNob3VsZCBiZSBhIGNvbXBsZW1lbnRhcnkgb3B0aW9uIHRoYXQganVzdCBkb2VzIHRoZSBSRkMKKyAgICAgICAgIGNvbXBsaWFuY2UgdHJhbnNmb3JtYXRpb24gYnV0IGxlYXZlcyBDVEUgOGJpdCBwYXJ0cyBhbG9uZS4KIAogICAgICAgTWVzc2FnZXMgcGFyc2VkIHdpdGggYSBCeXRlcyBwYXJzZXIgdGhhdCBoYXZlIGEKICAgICAgIDptYWlsaGVhZGVyOmBDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nYCBvZiA4Yml0IHdpbGwgYmUgcmVjb25zdHJ1Y3RlZApAQCAtMTUyLDEwICsxNzMsOCBAQAogICAgICAgTm90ZSB0aGF0IGZvciBzdWJwYXJ0cywgbm8gZW52ZWxvcGUgaGVhZGVyIGlzIGV2ZXIgcHJpbnRlZC4KIAogICAgICAgT3B0aW9uYWwgKmxpbmVzZXAqIHNwZWNpZmllcyB0aGUgbGluZSBzZXBhcmF0b3IgY2hhcmFjdGVyIHVzZWQgdG8KLSAgICAgIHRlcm1pbmF0ZSBsaW5lcyBpbiB0aGUgb3V0cHV0LiAgSXQgZGVmYXVsdHMgdG8gYGBcbmBgIGJlY2F1c2UgdGhhdCBpcwotICAgICAgdGhlIG1vc3QgdXNlZnVsIHZhbHVlIGZvciBQeXRob24gYXBwbGljYXRpb24gY29kZSAob3RoZXIgbGlicmFyeSBwYWNrYWdlcwotICAgICAgZXhwZWN0IGBgXG5gYCBzZXBhcmF0ZWQgbGluZXMpLiAgYGBsaW5lc2VwPVxyXG5gYCBjYW4gYmUgdXNlZCB0bwotICAgICAgZ2VuZXJhdGUgb3V0cHV0IHdpdGggUkZDLWNvbXBsaWFudCBsaW5lIHNlcGFyYXRvcnMuCisgICAgICB0ZXJtaW5hdGUgbGluZXMgaW4gdGhlIG91dHB1dC4gIElmIHNwZWNpZmllZCBpdCBvdmVycmlkZXMgdGhlIHZhbHVlCisgICAgICBzcGVjaWZpZWQgYnkgdGhlIGBgR2VuZXJhdG9yYGBcICdzIGBgcG9saWN5YGAuCiAKICAgIC4uIG1ldGhvZDo6IGNsb25lKGZwKQogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9lbWFpbC5wYXJzZXIucnN0IGIvRG9jL2xpYnJhcnkvZW1haWwucGFyc2VyLnJzdAppbmRleCAzODRjNWM5Li5hMDMwM2E0IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9lbWFpbC5wYXJzZXIucnN0CisrKyBiL0RvYy9saWJyYXJ5L2VtYWlsLnBhcnNlci5yc3QKQEAgLTU4LDEyICs1OCwxOCBAQAogSGVyZSBpcyB0aGUgQVBJIGZvciB0aGUgOmNsYXNzOmBGZWVkUGFyc2VyYDoKIAogCi0uLiBjbGFzczo6IEZlZWRQYXJzZXIoX2ZhY3Rvcnk9ZW1haWwubWVzc2FnZS5NZXNzYWdlKQorLi4gY2xhc3M6OiBGZWVkUGFyc2VyKF9mYWN0b3J5PWVtYWlsLm1lc3NhZ2UuTWVzc2FnZSwgKiwgcG9saWN5PXBvbGljeS5kZWZhdWx0KQogCiAgICBDcmVhdGUgYSA6Y2xhc3M6YEZlZWRQYXJzZXJgIGluc3RhbmNlLiAgT3B0aW9uYWwgKl9mYWN0b3J5KiBpcyBhIG5vLWFyZ3VtZW50CiAgICBjYWxsYWJsZSB0aGF0IHdpbGwgYmUgY2FsbGVkIHdoZW5ldmVyIGEgbmV3IG1lc3NhZ2Ugb2JqZWN0IGlzIG5lZWRlZC4gIEl0CiAgICBkZWZhdWx0cyB0byB0aGUgOmNsYXNzOmBlbWFpbC5tZXNzYWdlLk1lc3NhZ2VgIGNsYXNzLgogCisgICBUaGUgKnBvbGljeSoga2V5d29yZCBzcGVjaWZpZXMgYSA6bW9kOmB+ZW1haWwucG9saWN5YCBvYmplY3QgdGhhdCBjb250cm9scyBhCisgICBudW1iZXIgb2YgYXNwZWN0cyBvZiB0aGUgcGFyc2VyJ3Mgb3BlcmF0aW9uLiAgVGhlIGRlZmF1bHQgcG9saWN5IG1haW50YWlucworICAgYmFja3dhcmQgY29tcGF0aWJpbGl0eS4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMgQWRkZWQgdGhlICpwb2xpY3kqIGtleXdvcmQuCisKICAgIC4uIG1ldGhvZDo6IGZlZWQoZGF0YSkKIAogICAgICAgRmVlZCB0aGUgOmNsYXNzOmBGZWVkUGFyc2VyYCBzb21lIG1vcmUgZGF0YS4gICpkYXRhKiBzaG91bGQgYmUgYSBzdHJpbmcKQEAgLTk0LDE1ICsxMDAsMTcgQEAKIFRoZSA6Y2xhc3M6YFBhcnNlcmAgY2xhc3MsIGltcG9ydGVkIGZyb20gdGhlIDptb2Q6YGVtYWlsLnBhcnNlcmAgbW9kdWxlLAogcHJvdmlkZXMgYW4gQVBJIHRoYXQgY2FuIGJlIHVzZWQgdG8gcGFyc2UgYSBtZXNzYWdlIHdoZW4gdGhlIGNvbXBsZXRlIGNvbnRlbnRzCiBvZiB0aGUgbWVzc2FnZSBhcmUgYXZhaWxhYmxlIGluIGEgc3RyaW5nIG9yIGZpbGUuICBUaGUgOm1vZDpgZW1haWwucGFyc2VyYAotbW9kdWxlIGFsc28gcHJvdmlkZXMgYSBzZWNvbmQgY2xhc3MsIGNhbGxlZCA6Y2xhc3M6YEhlYWRlclBhcnNlcmAgd2hpY2ggY2FuIGJlCi11c2VkIGlmIHlvdSdyZSBvbmx5IGludGVyZXN0ZWQgaW4gdGhlIGhlYWRlcnMgb2YgdGhlIG1lc3NhZ2UuCi06Y2xhc3M6YEhlYWRlclBhcnNlcmAgY2FuIGJlIG11Y2ggZmFzdGVyIGluIHRoZXNlIHNpdHVhdGlvbnMsIHNpbmNlIGl0IGRvZXMgbm90Ci1hdHRlbXB0IHRvIHBhcnNlIHRoZSBtZXNzYWdlIGJvZHksIGluc3RlYWQgc2V0dGluZyB0aGUgcGF5bG9hZCB0byB0aGUgcmF3IGJvZHkKLWFzIGEgc3RyaW5nLiA6Y2xhc3M6YEhlYWRlclBhcnNlcmAgaGFzIHRoZSBzYW1lIEFQSSBhcyB0aGUgOmNsYXNzOmBQYXJzZXJgCi1jbGFzcy4KK21vZHVsZSBhbHNvIHByb3ZpZGVzIGhlYWRlci1vbmx5IHBhcnNlcnMsIGNhbGxlZCA6Y2xhc3M6YEhlYWRlclBhcnNlcmAgYW5kCis6Y2xhc3M6YEJ5dGVzSGVhZGVyUGFyc2VyYCwgd2hpY2ggY2FuIGJlIHVzZWQgaWYgeW91J3JlIG9ubHkgaW50ZXJlc3RlZCBpbiB0aGUKK2hlYWRlcnMgb2YgdGhlIG1lc3NhZ2UuICA6Y2xhc3M6YEhlYWRlclBhcnNlcmAgYW5kIDpjbGFzczpgQnl0ZXNIZWFkZXJQYXJzZXJgCitjYW4gYmUgbXVjaCBmYXN0ZXIgaW4gdGhlc2Ugc2l0dWF0aW9ucywgc2luY2UgdGhleSBkbyBub3QgYXR0ZW1wdCB0byBwYXJzZSB0aGUKK21lc3NhZ2UgYm9keSwgaW5zdGVhZCBzZXR0aW5nIHRoZSBwYXlsb2FkIHRvIHRoZSByYXcgYm9keSBhcyBhIHN0cmluZy4gIFRoZXkKK2hhdmUgdGhlIHNhbWUgQVBJIGFzIHRoZSA6Y2xhc3M6YFBhcnNlcmAgYW5kIDpjbGFzczpgQnl0ZXNQYXJzZXJgIGNsYXNzZXMuCisKKy4uIHZlcnNpb25hZGRlZDo6IDMuMyBCeXRlc0hlYWRlclBhcnNlcgogCiAKLS4uIGNsYXNzOjogUGFyc2VyKF9jbGFzcz1lbWFpbC5tZXNzYWdlLk1lc3NhZ2UsIHN0cmljdD1Ob25lKQorLi4gY2xhc3M6OiBQYXJzZXIoX2NsYXNzPWVtYWlsLm1lc3NhZ2UuTWVzc2FnZSwgKiwgcG9saWN5PXBvbGljeS5kZWZhdWx0KQogCiAgICBUaGUgY29uc3RydWN0b3IgZm9yIHRoZSA6Y2xhc3M6YFBhcnNlcmAgY2xhc3MgdGFrZXMgYW4gb3B0aW9uYWwgYXJndW1lbnQKICAgICpfY2xhc3MqLiAgVGhpcyBtdXN0IGJlIGEgY2FsbGFibGUgZmFjdG9yeSAoc3VjaCBhcyBhIGZ1bmN0aW9uIG9yIGEgY2xhc3MpLCBhbmQKQEAgLTExMCwxMyArMTE4LDEzIEBACiAgICA6Y2xhc3M6YH5lbWFpbC5tZXNzYWdlLk1lc3NhZ2VgIChzZWUgOm1vZDpgZW1haWwubWVzc2FnZWApLiAgVGhlIGZhY3Rvcnkgd2lsbAogICAgYmUgY2FsbGVkIHdpdGhvdXQgYXJndW1lbnRzLgogCi0gICBUaGUgb3B0aW9uYWwgKnN0cmljdCogZmxhZyBpcyBpZ25vcmVkLgorICAgVGhlICpwb2xpY3kqIGtleXdvcmQgc3BlY2lmaWVzIGEgOm1vZDpgfmVtYWlsLnBvbGljeWAgb2JqZWN0IHRoYXQgY29udHJvbHMgYQorICAgbnVtYmVyIG9mIGFzcGVjdHMgb2YgdGhlIHBhcnNlcidzIG9wZXJhdGlvbi4gIFRoZSBkZWZhdWx0IHBvbGljeSBtYWludGFpbnMKKyAgIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCiAKLSAgIC4uIGRlcHJlY2F0ZWQ6OiAyLjQKLSAgICAgIEJlY2F1c2UgdGhlIDpjbGFzczpgUGFyc2VyYCBjbGFzcyBpcyBhIGJhY2t3YXJkIGNvbXBhdGlibGUgQVBJIHdyYXBwZXIKLSAgICAgIGFyb3VuZCB0aGUgbmV3LWluLVB5dGhvbiAyLjQgOmNsYXNzOmBGZWVkUGFyc2VyYCwgKmFsbCogcGFyc2luZyBpcwotICAgICAgZWZmZWN0aXZlbHkgbm9uLXN0cmljdC4gIFlvdSBzaG91bGQgc2ltcGx5IHN0b3AgcGFzc2luZyBhICpzdHJpY3QqIGZsYWcgdG8KLSAgICAgIHRoZSA6Y2xhc3M6YFBhcnNlcmAgY29uc3RydWN0b3IuCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgUmVtb3ZlZCB0aGUgKnN0cmljdCogYXJndW1lbnQgdGhhdCB3YXMgZGVwcmVjYXRlZCBpbiAyLjQuICBBZGRlZCB0aGUKKyAgICAgICpwb2xpY3kqIGtleXdvcmQuCiAKICAgIFRoZSBvdGhlciBwdWJsaWMgOmNsYXNzOmBQYXJzZXJgIG1ldGhvZHMgYXJlOgogCkBAIC0xNDcsMTIgKzE1NSwxOCBAQAogICAgICAgT3B0aW9uYWwgKmhlYWRlcnNvbmx5KiBpcyBhcyB3aXRoIHRoZSA6bWV0aDpgcGFyc2VgIG1ldGhvZC4KIAogCi0uLiBjbGFzczo6IEJ5dGVzUGFyc2VyKF9jbGFzcz1lbWFpbC5tZXNzYWdlLk1lc3NhZ2UsIHN0cmljdD1Ob25lKQorLi4gY2xhc3M6OiBCeXRlc1BhcnNlcihfY2xhc3M9ZW1haWwubWVzc2FnZS5NZXNzYWdlLCAqLCBwb2xpY3k9cG9saWN5LmRlZmF1bHQpCiAKICAgIFRoaXMgY2xhc3MgaXMgZXhhY3RseSBwYXJhbGxlbCB0byA6Y2xhc3M6YFBhcnNlcmAsIGJ1dCBoYW5kbGVzIGJ5dGVzIGlucHV0LgogICAgVGhlICpfY2xhc3MqIGFuZCAqc3RyaWN0KiBhcmd1bWVudHMgYXJlIGludGVycHJldGVkIGluIHRoZSBzYW1lIHdheSBhcyBmb3IKLSAgIHRoZSA6Y2xhc3M6YFBhcnNlcmAgY29uc3RydWN0b3IuICAqc3RyaWN0KiBpcyBzdXBwb3J0ZWQgb25seSB0byBtYWtlIHBvcnRpbmcKLSAgIGNvZGUgZWFzaWVyOyBpdCBpcyBkZXByZWNhdGVkLgorICAgdGhlIDpjbGFzczpgUGFyc2VyYCBjb25zdHJ1Y3Rvci4KKworICAgVGhlICpwb2xpY3kqIGtleXdvcmQgc3BlY2lmaWVzIGEgOm1vZDpgfmVtYWlsLnBvbGljeWAgb2JqZWN0IHRoYXQKKyAgIGNvbnRyb2xzIGEgbnVtYmVyIG9mIGFzcGVjdHMgb2YgdGhlIHBhcnNlcidzIG9wZXJhdGlvbi4gIFRoZSBkZWZhdWx0CisgICBwb2xpY3kgbWFpbnRhaW5zIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBSZW1vdmVkIHRoZSAqc3RyaWN0KiBhcmd1bWVudC4gIEFkZGVkIHRoZSAqcG9saWN5KiBrZXl3b3JkLgogCiAgICAuLiBtZXRob2Q6OiBwYXJzZShmcCwgaGVhZGVyb25seT1GYWxzZSkKIApAQCAtMTkwLDM0ICsyMDQsNDggQEAKIAogLi4gY3VycmVudG1vZHVsZTo6IGVtYWlsCiAKLS4uIGZ1bmN0aW9uOjogbWVzc2FnZV9mcm9tX3N0cmluZyhzLCBfY2xhc3M9ZW1haWwubWVzc2FnZS5NZXNzYWdlLCBzdHJpY3Q9Tm9uZSkKKy4uIGZ1bmN0aW9uOjogbWVzc2FnZV9mcm9tX3N0cmluZyhzLCBfY2xhc3M9ZW1haWwubWVzc2FnZS5NZXNzYWdlLCAqLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9saWN5PXBvbGljeS5kZWZhdWx0KQogCiAgICBSZXR1cm4gYSBtZXNzYWdlIG9iamVjdCBzdHJ1Y3R1cmUgZnJvbSBhIHN0cmluZy4gIFRoaXMgaXMgZXhhY3RseSBlcXVpdmFsZW50IHRvCi0gICBgYFBhcnNlcigpLnBhcnNlc3RyKHMpYGAuICBPcHRpb25hbCAqX2NsYXNzKiBhbmQgKnN0cmljdCogYXJlIGludGVycHJldGVkIGFzCisgICBgYFBhcnNlcigpLnBhcnNlc3RyKHMpYGAuICAqX2NsYXNzKiBhbmQgKnBvbGljeSogYXJlIGludGVycHJldGVkIGFzCiAgICB3aXRoIHRoZSA6Y2xhc3M6YFBhcnNlcmAgY2xhc3MgY29uc3RydWN0b3IuCiAKLS4uIGZ1bmN0aW9uOjogbWVzc2FnZV9mcm9tX2J5dGVzKHMsIF9jbGFzcz1lbWFpbC5tZXNzYWdlLk1lc3NhZ2UsIHN0cmljdD1Ob25lKQorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFJlbW92ZWQgdGhlICpzdHJpY3QqIGFyZ3VtZW50LiAgQWRkZWQgdGhlICpwb2xpY3kqIGtleXdvcmQuCisKKy4uIGZ1bmN0aW9uOjogbWVzc2FnZV9mcm9tX2J5dGVzKHMsIF9jbGFzcz1lbWFpbC5tZXNzYWdlLk1lc3NhZ2UsICosIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbGljeT1wb2xpY3kuZGVmYXVsdCkKIAogICAgUmV0dXJuIGEgbWVzc2FnZSBvYmplY3Qgc3RydWN0dXJlIGZyb20gYSBieXRlIHN0cmluZy4gIFRoaXMgaXMgZXhhY3RseQogICAgZXF1aXZhbGVudCB0byBgYEJ5dGVzUGFyc2VyKCkucGFyc2VieXRlcyhzKWBgLiAgT3B0aW9uYWwgKl9jbGFzcyogYW5kCiAgICAqc3RyaWN0KiBhcmUgaW50ZXJwcmV0ZWQgYXMgd2l0aCB0aGUgOmNsYXNzOmBQYXJzZXJgIGNsYXNzIGNvbnN0cnVjdG9yLgogCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBSZW1vdmVkIHRoZSAqc3RyaWN0KiBhcmd1bWVudC4gIEFkZGVkIHRoZSAqcG9saWN5KiBrZXl3b3JkLgogCi0uLiBmdW5jdGlvbjo6IG1lc3NhZ2VfZnJvbV9maWxlKGZwLCBfY2xhc3M9ZW1haWwubWVzc2FnZS5NZXNzYWdlLCBzdHJpY3Q9Tm9uZSkKKy4uIGZ1bmN0aW9uOjogbWVzc2FnZV9mcm9tX2ZpbGUoZnAsIF9jbGFzcz1lbWFpbC5tZXNzYWdlLk1lc3NhZ2UsICosIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9saWN5PXBvbGljeS5kZWZhdWx0KQogCiAgICBSZXR1cm4gYSBtZXNzYWdlIG9iamVjdCBzdHJ1Y3R1cmUgdHJlZSBmcm9tIGFuIG9wZW4gOnRlcm06YGZpbGUgb2JqZWN0YC4KLSAgIFRoaXMgaXMgZXhhY3RseSBlcXVpdmFsZW50IHRvIGBgUGFyc2VyKCkucGFyc2UoZnApYGAuICBPcHRpb25hbCAqX2NsYXNzKgotICAgYW5kICpzdHJpY3QqIGFyZSBpbnRlcnByZXRlZCBhcyB3aXRoIHRoZSA6Y2xhc3M6YFBhcnNlcmAgY2xhc3MgY29uc3RydWN0b3IuCisgICBUaGlzIGlzIGV4YWN0bHkgZXF1aXZhbGVudCB0byBgYFBhcnNlcigpLnBhcnNlKGZwKWBgLiAgKl9jbGFzcyoKKyAgIGFuZCAqcG9saWN5KiBhcmUgaW50ZXJwcmV0ZWQgYXMgd2l0aCB0aGUgOmNsYXNzOmBQYXJzZXJgIGNsYXNzIGNvbnN0cnVjdG9yLgogCi0uLiBmdW5jdGlvbjo6IG1lc3NhZ2VfZnJvbV9iaW5hcnlfZmlsZShmcCwgX2NsYXNzPWVtYWlsLm1lc3NhZ2UuTWVzc2FnZSwgc3RyaWN0PU5vbmUpCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6CisgICAgICBSZW1vdmVkIHRoZSAqc3RyaWN0KiBhcmd1bWVudC4gIEFkZGVkIHRoZSAqcG9saWN5KiBrZXl3b3JkLgorCisuLiBmdW5jdGlvbjo6IG1lc3NhZ2VfZnJvbV9iaW5hcnlfZmlsZShmcCwgX2NsYXNzPWVtYWlsLm1lc3NhZ2UuTWVzc2FnZSwgKiwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9saWN5PXBvbGljeS5kZWZhdWx0KQogCiAgICBSZXR1cm4gYSBtZXNzYWdlIG9iamVjdCBzdHJ1Y3R1cmUgdHJlZSBmcm9tIGFuIG9wZW4gYmluYXJ5IDp0ZXJtOmBmaWxlCiAgICBvYmplY3RgLiAgVGhpcyBpcyBleGFjdGx5IGVxdWl2YWxlbnQgdG8gYGBCeXRlc1BhcnNlcigpLnBhcnNlKGZwKWBgLgotICAgT3B0aW9uYWwgKl9jbGFzcyogYW5kICpzdHJpY3QqIGFyZSBpbnRlcnByZXRlZCBhcyB3aXRoIHRoZSA6Y2xhc3M6YFBhcnNlcmAKKyAgICpfY2xhc3MqIGFuZCAqcG9saWN5KiBhcmUgaW50ZXJwcmV0ZWQgYXMgd2l0aCB0aGUgOmNsYXNzOmBQYXJzZXJgCiAgICBjbGFzcyBjb25zdHJ1Y3Rvci4KIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgUmVtb3ZlZCB0aGUgKnN0cmljdCogYXJndW1lbnQuICBBZGRlZCB0aGUgKnBvbGljeSoga2V5d29yZC4KIAogSGVyZSdzIGFuIGV4YW1wbGUgb2YgaG93IHlvdSBtaWdodCB1c2UgdGhpcyBhdCBhbiBpbnRlcmFjdGl2ZSBQeXRob24gcHJvbXB0OjoKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZW1haWwucG9saWN5LnJzdCBiL0RvYy9saWJyYXJ5L2VtYWlsLnBvbGljeS5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDlhMjkyYwotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L2VtYWlsLnBvbGljeS5yc3QKQEAgLTAsMCArMSwxODQgQEAKKzptb2Q6YGVtYWlsYDogUG9saWN5IE9iamVjdHMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gbW9kdWxlOjogZW1haWwucG9saWN5CisgICA6c3lub3BzaXM6IENvbnRyb2xsaW5nIHRoZSBwYXJzaW5nIGFuZCBnZW5lcmF0aW5nIG9mIG1lc3NhZ2VzCisKKy4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKK1RoZSA6bW9kOmBlbWFpbGAgcGFja2FnZSdzIHByaW1lIGZvY3VzIGlzIHRoZSBoYW5kbGluZyBvZiBlbWFpbCBtZXNzYWdlcyBhcworZGVzY3JpYmVkIGJ5IHRoZSB2YXJpb3VzIGVtYWlsIGFuZCBNSU1FIFJGQ3MuICBIb3dldmVyLCB0aGUgZ2VuZXJhbCBmb3JtYXQgb2YKK2VtYWlsIG1lc3NhZ2VzIChhIGJsb2NrIG9mIGhlYWRlciBmaWVsZHMgZWFjaCBjb25zaXN0aW5nIG9mIGEgbmFtZSBmb2xsb3dlZCBieQorYSBjb2xvbiBmb2xsb3dlZCBieSBhIHZhbHVlLCB0aGUgd2hvbGUgYmxvY2sgZm9sbG93ZWQgYnkgYSBibGFuayBsaW5lIGFuZCBhbgorYXJiaXRyYXJ5ICdib2R5JyksIGlzIGEgZm9ybWF0IHRoYXQgaGFzIGZvdW5kIHV0aWxpdHkgb3V0c2lkZSBvZiB0aGUgcmVhbG0gb2YKK2VtYWlsLiAgU29tZSBvZiB0aGVzZSB1c2VzIGNvbmZvcm0gZmFpcmx5IGNsb3NlbHkgdG8gdGhlIG1haW4gUkZDcywgc29tZSBkbworbm90LiAgQW5kIGV2ZW4gd2hlbiB3b3JraW5nIHdpdGggZW1haWwsIHRoZXJlIGFyZSB0aW1lcyB3aGVuIGl0IGlzIGRlc2lyYWJsZSB0bworYnJlYWsgc3RyaWN0IGNvbXBsaWFuY2Ugd2l0aCB0aGUgUkZDcy4KKworUG9saWN5IG9iamVjdHMgZ2l2ZSB0aGUgZW1haWwgcGFja2FnZSB0aGUgZmxleGliaWxpdHkgdG8gaGFuZGxlIGFsbCB0aGVzZQorZGlzcGFyYXRlIHVzZSBjYXNlcy4KKworQSA6Y2xhc3M6YFBvbGljeWAgb2JqZWN0IGVuY2Fwc3VsYXRlcyBhIHNldCBvZiBhdHRyaWJ1dGVzIGFuZCBtZXRob2RzIHRoYXQKK2NvbnRyb2wgdGhlIGJlaGF2aW9yIG9mIHZhcmlvdXMgY29tcG9uZW50cyBvZiB0aGUgZW1haWwgcGFja2FnZSBkdXJpbmcgdXNlLgorOmNsYXNzOmBQb2xpY3lgIGluc3RhbmNlcyBjYW4gYmUgcGFzc2VkIHRvIHZhcmlvdXMgY2xhc3NlcyBhbmQgbWV0aG9kcyBpbiB0aGUKK2VtYWlsIHBhY2thZ2UgdG8gYWx0ZXIgdGhlIGRlZmF1bHQgYmVoYXZpb3IuICBUaGUgc2V0dGFibGUgdmFsdWVzIGFuZCB0aGVpcgorZGVmYXVsdHMgYXJlIGRlc2NyaWJlZCBiZWxvdy4gIFRoZSA6bW9kOmBwb2xpY3lgIG1vZHVsZSBhbHNvIHByb3ZpZGVzIHNvbWUKK3ByZS1jcmVhdGVkIDpjbGFzczpgUG9saWN5YCBpbnN0YW5jZXMuICBJbiBhZGRpdGlvbiB0byBhIDpjb25zdDpgZGVmYXVsdGAKK2luc3RhbmNlLCB0aGVyZSBhcmUgaW5zdGFuY2VzIHRhaWxvcmVkIGZvciBjZXJ0YWluIGFwcGxpY2F0aW9ucy4gIEZvciBleGFtcGxlCit0aGVyZSBpcyBhbiA6Y29uc3Q6YFNNVFBgIDpjbGFzczpgUG9saWN5YCB3aXRoIGRlZmF1bHRzIGFwcHJvcHJpYXRlIGZvcgorZ2VuZXJhdGluZyBvdXRwdXQgdG8gYmUgc2VudCB0byBhbiBTTVRQIHNlcnZlci4gIFRoZXNlIGFyZSBsaXN0ZWQgYGJlbG93Cis8UG9saWN5IEluc3RhbmNlcz5gLgorCitJbiBnZW5lcmFsIGFuIGFwcGxpY2F0aW9uIHdpbGwgb25seSBuZWVkIHRvIGRlYWwgd2l0aCBzZXR0aW5nIHRoZSBwb2xpY3kgYXQgdGhlCitpbnB1dCBhbmQgb3V0cHV0IGJvdW5kYXJpZXMuICBPbmNlIHBhcnNlZCwgYSBtZXNzYWdlIGlzIHJlcHJlc2VudGVkIGJ5IGEKKzpjbGFzczpgfmVtYWlsLm1lc3NhZ2UuTWVzc2FnZWAgb2JqZWN0LCB3aGljaCBpcyBkZXNpZ25lZCB0byBiZSBpbmRlcGVuZGVudCBvZgordGhlIGZvcm1hdCB0aGF0IHRoZSBtZXNzYWdlIGhhcyAib24gdGhlIHdpcmUiIHdoZW4gaXQgaXMgcmVjZWl2ZWQsIHRyYW5zbWl0dGVkLAorb3IgZGlzcGxheWVkLiAgVGh1cywgYSA6Y2xhc3M6YFBvbGljeWAgY2FuIGJlIHNwZWNpZmllZCB3aGVuIHBhcnNpbmcgYSBtZXNzYWdlCit0byBjcmVhdGUgYSA6Y2xhc3M6YH5lbWFpbC5tZXNzYWdlLk1lc3NhZ2VgLCBhbmQgYWdhaW4gd2hlbiB0dXJuaW5nIHRoZQorOmNsYXNzOmB+ZW1haWwubWVzc2FnZS5NZXNzYWdlYCBpbnRvIHNvbWUgb3RoZXIgcmVwcmVzZW50YXRpb24uICBXaGlsZSBvZnRlbiBhCitwcm9ncmFtIHdpbGwgdXNlIHRoZSBzYW1lIDpjbGFzczpgUG9saWN5YCBmb3IgYm90aCBpbnB1dCBhbmQgb3V0cHV0LCB0aGUgdHdvCitjYW4gYmUgZGlmZmVyZW50LgorCitBcyBhbiBleGFtcGxlLCB0aGUgZm9sbG93aW5nIGNvZGUgY291bGQgYmUgdXNlZCB0byByZWFkIGFuIGVtYWlsIG1lc3NhZ2UgZnJvbSBhCitmaWxlIG9uIGRpc2sgYW5kIHBhc3MgaXQgdG8gdGhlIHN5c3RlbSBgYHNlbmRtYWlsYGAgcHJvZ3JhbSBvbiBhIFVuaXggc3lzdGVtOjoKKworICAgPj4+IGZyb20gZW1haWwgaW1wb3J0IG1zZ19mcm9tX2JpbmFyeV9maWxlCisgICA+Pj4gZnJvbSBlbWFpbC5nZW5lcmF0b3IgaW1wb3J0IEJ5dGVzR2VuZXJhdG9yCisgICA+Pj4gaW1wb3J0IGVtYWlsLnBvbGljeQorICAgPj4+IGZyb20gc3VicHJvY2VzcyBpbXBvcnQgUG9wZW4sIFBJUEUKKyAgID4+PiB3aXRoIG9wZW4oJ215bXNnLnR4dCcsICdiJykgYXMgZjoKKyAgIC4uLiAgICAgbXNnID0gbXNnX2Zyb21fYmluYXJ5X2ZpbGUoZiwgcG9saWN5PWVtYWlsLnBvbGljeS5tYm94KQorICAgPj4+IHAgPSBQb3BlbihbJ3NlbmRtYWlsJywgbXNnWydUbyddWzBdLmFkZHJlc3NdLCBzdGRpbj1QSVBFKQorICAgPj4+IGcgPSBCeXRlc0dlbmVyYXRvcihwLnN0ZGluLCBwb2xpY3k9ZW1haWwucG9saWN5LlNNVFApCisgICA+Pj4gZy5mbGF0dGVuKG1zZykKKyAgID4+PiBwLnN0ZGluLmNsb3NlKCkKKyAgID4+PiByYyA9IHAud2FpdCgpCisKKy4uIFhYWCBlbWFpbC5wb2xpY3kubWJveC9NQk9YIGRvZXMgbm90IGV4aXN0IHlldAorCitTb21lIGVtYWlsIHBhY2thZ2UgbWV0aG9kcyBhY2NlcHQgYSAqcG9saWN5KiBrZXl3b3JkIGFyZ3VtZW50LCBhbGxvd2luZyB0aGUKK3BvbGljeSB0byBiZSBvdmVycmlkZGVuIGZvciB0aGF0IG1ldGhvZC4gIEZvciBleGFtcGxlLCB0aGUgZm9sbG93aW5nIGNvZGUgdXNlcwordGhlIDptZXRoOmB+ZW1haWwubWVzc2FnZS5NZXNzYWdlLmFzX3N0cmluZ2AgbWV0aG9kIG9mIHRoZSAqbXNnKiBvYmplY3QgZnJvbSB0aGUKK3ByZXZpb3VzIGV4YW1wbGUgYW5kIHJlLXdyaXRlIGl0IHRvIGEgZmlsZSB1c2luZyB0aGUgbmF0aXZlIGxpbmUgc2VwYXJhdG9ycyBmb3IKK3RoZSBwbGF0Zm9ybSBvbiB3aGljaCBpdCBpcyBydW5uaW5nOjoKKworICAgPj4+IGltcG9ydCBvcworICAgPj4+IG15cG9saWN5ID0gZW1haWwucG9saWN5LlBvbGljeShsaW5lc2VwPW9zLmxpbmVzZXApCisgICA+Pj4gd2l0aCBvcGVuKCdjb252ZXJ0ZWQudHh0JywgJ3diJykgYXMgZjoKKyAgIC4uLiAgICAgZi53cml0ZShtc2cuYXNfc3RyaW5nKHBvbGljeT1teXBvbGljeSkpCisKK1BvbGljeSBpbnN0YW5jZXMgYXJlIGltbXV0YWJsZSwgYnV0IHRoZXkgY2FuIGJlIGNsb25lZCwgYWNjZXB0aW5nIHRoZSBzYW1lCitrZXl3b3JkIGFyZ3VtZW50cyBhcyB0aGUgY2xhc3MgY29uc3RydWN0b3IgYW5kIHJldHVybmluZyBhIG5ldyA6Y2xhc3M6YFBvbGljeWAKK2luc3RhbmNlIHRoYXQgaXMgYSBjb3B5IG9mIHRoZSBvcmlnaW5hbCBidXQgd2l0aCB0aGUgc3BlY2lmaWVkIGF0dHJpYnV0ZXMKK3ZhbHVlcyBjaGFuZ2VkLiAgRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgY3JlYXRlcyBhbiBTTVRQIHBvbGljeSB0aGF0IHdpbGwKK3JhaXNlIGFueSBkZWZlY3RzIGRldGVjdGVkIGFzIGVycm9yczo6CisKKyAgID4+PiBzdHJpY3RfU01UUCA9IGVtYWlsLnBvbGljeS5TTVRQLmNsb25lKHJhaXNlX29uX2RlZmVjdD1UcnVlKQorCitQb2xpY3kgb2JqZWN0cyBjYW4gYWxzbyBiZSBjb21iaW5lZCB1c2luZyB0aGUgYWRkaXRpb24gb3BlcmF0b3IsIHByb2R1Y2luZyBhCitwb2xpY3kgb2JqZWN0IHdob3NlIHNldHRpbmdzIGFyZSBhIGNvbWJpbmF0aW9uIG9mIHRoZSBub24tZGVmYXVsdCB2YWx1ZXMgb2YgdGhlCitzdW1tZWQgb2JqZWN0czo6CisKKyAgID4+PiBzdHJpY3RfU01UUCA9IGVtYWlsLnBvbGljeS5TTVRQICsgZW1haWwucG9saWN5LnN0cmljdAorCitUaGlzIG9wZXJhdGlvbiBpcyBub3QgY29tbXV0YXRpdmU7IHRoYXQgaXMsIHRoZSBvcmRlciBpbiB3aGljaCB0aGUgb2JqZWN0cyBhcmUKK2FkZGVkIG1hdHRlcnMuICBUbyBpbGx1c3RyYXRlOjoKKworICAgPj4+IFBvbGljeSA9IGVtYWlsLnBvbGljeS5Qb2xpY3kKKyAgID4+PiBhcG9saWN5ID0gUG9saWN5KG1heF9saW5lX2xlbmd0aD0xMDApICsgUG9saWN5KG1heF9saW5lX2xlbmd0aD04MCkKKyAgID4+PiBhcG9saWN5Lm1heF9saW5lX2xlbmd0aAorICAgODAKKyAgID4+PiBhcG9saWN5ID0gUG9saWN5KG1heF9saW5lX2xlbmd0aD04MCkgKyBQb2xpY3kobWF4X2xpbmVfbGVuZ3RoPTEwMCkKKyAgID4+PiBhcG9saWN5Lm1heF9saW5lX2xlbmd0aAorICAgMTAwCisKKworLi4gY2xhc3M6OiBQb2xpY3koKiprdykKKworICAgVGhlIHZhbGlkIGNvbnN0cnVjdG9yIGtleXdvcmQgYXJndW1lbnRzIGFyZSBhbnkgb2YgdGhlIGF0dHJpYnV0ZXMgbGlzdGVkCisgICBiZWxvdy4KKworICAgLi4gYXR0cmlidXRlOjogbWF4X2xpbmVfbGVuZ3RoCisKKyAgICAgIFRoZSBtYXhpbXVtIGxlbmd0aCBvZiBhbnkgbGluZSBpbiB0aGUgc2VyaWFsaXplZCBvdXRwdXQsIG5vdCBjb3VudGluZyB0aGUKKyAgICAgIGVuZCBvZiBsaW5lIGNoYXJhY3RlcihzKS4gIERlZmF1bHQgaXMgNzgsIHBlciA6cmZjOmA1MzIyYC4gIEEgdmFsdWUgb2YKKyAgICAgIGBgMGBgIG9yIDpjb25zdDpgTm9uZWAgaW5kaWNhdGVzIHRoYXQgbm8gbGluZSB3cmFwcGluZyBzaG91bGQgYmUKKyAgICAgIGRvbmUgYXQgYWxsLgorCisgICAuLiBhdHRyaWJ1dGU6OiBsaW5lc2VwCisKKyAgICAgIFRoZSBzdHJpbmcgdG8gYmUgdXNlZCB0byB0ZXJtaW5hdGUgbGluZXMgaW4gc2VyaWFsaXplZCBvdXRwdXQuICBUaGUKKyAgICAgIGRlZmF1bHQgaXMgYGBcbmBgIGJlY2F1c2UgdGhhdCdzIHRoZSBpbnRlcm5hbCBlbmQtb2YtbGluZSBkaXNjaXBsaW5lIHVzZWQKKyAgICAgIGJ5IFB5dGhvbiwgdGhvdWdoIGBgXHJcbmBgIGlzIHJlcXVpcmVkIGJ5IHRoZSBSRkNzLiAgU2VlIGBQb2xpY3kKKyAgICAgIEluc3RhbmNlc2BfIGZvciBwb2xpY2llcyB0aGF0IHVzZSBhbiBSRkMgY29uZm9ybWFudCBsaW5lc2VwLiAgU2V0dGluZyBpdAorICAgICAgdG8gOmF0dHI6YG9zLmxpbmVzZXBgIG1heSBhbHNvIGJlIHVzZWZ1bC4KKworICAgLi4gYXR0cmlidXRlOjogbXVzdF9iZV83Yml0CisKKyAgICAgIElmIGBgVHJ1ZWBgLCBkYXRhIG91dHB1dCBieSBhIGJ5dGVzIGdlbmVyYXRvciBpcyBsaW1pdGVkIHRvIEFTQ0lJCisgICAgICBjaGFyYWN0ZXJzLiAgSWYgOmNvbnN0OmBGYWxzZWAgKHRoZSBkZWZhdWx0KSwgdGhlbiBieXRlcyB3aXRoIHRoZSBoaWdoCisgICAgICBiaXQgc2V0IGFyZSBwcmVzZXJ2ZWQgYW5kL29yIGFsbG93ZWQgaW4gY2VydGFpbiBjb250ZXh0cyAoZm9yIGV4YW1wbGUsCisgICAgICB3aGVyZSBwb3NzaWJsZSBhIGNvbnRlbnQgdHJhbnNmZXIgZW5jb2Rpbmcgb2YgYGA4Yml0YGAgd2lsbCBiZSB1c2VkKS4KKyAgICAgIFN0cmluZyBnZW5lcmF0b3JzIGFjdCBhcyBpZiBgYG11c3RfYmVfN2JpdGBgIGlzIGBgVHJ1ZWBgIHJlZ2FyZGxlc3Mgb2YKKyAgICAgIHRoZSBwb2xpY3kgaW4gZWZmZWN0LCBzaW5jZSBhIHN0cmluZyBjYW5ub3QgcmVwcmVzZW50IG5vbi1BU0NJSSBieXRlcy4KKworICAgLi4gYXR0cmlidXRlOjogcmFpc2Vfb25fZGVmZWN0CisKKyAgICAgIElmIDpjb25zdDpgVHJ1ZWAsIGFueSBkZWZlY3RzIGVuY291bnRlcmVkIHdpbGwgYmUgcmFpc2VkIGFzIGVycm9ycy4gIElmCisgICAgICA6Y29uc3Q6YEZhbHNlYCAodGhlIGRlZmF1bHQpLCBkZWZlY3RzIHdpbGwgYmUgcGFzc2VkIHRvIHRoZQorICAgICAgOm1ldGg6YHJlZ2lzdGVyX2RlZmVjdGAgbWV0aG9kLgorCisgICA6bW9kOmBQb2xpY3lgIG9iamVjdCBhbHNvIGhhdmUgdGhlIGZvbGxvd2luZyBtZXRob2RzOgorCisgICAuLiBtZXRob2Q6OiBoYW5kbGVfZGVmZWN0KG9iaiwgZGVmZWN0KQorCisgICAgICAqb2JqKiBpcyB0aGUgb2JqZWN0IG9uIHdoaWNoIHRvIHJlZ2lzdGVyIHRoZSBkZWZlY3QuICAqZGVmZWN0KiBzaG91bGQgYmUKKyAgICAgIGFuIGluc3RhbmNlIG9mIGEgIHN1YmNsYXNzIG9mIDpjbGFzczpgfmVtYWlsLmVycm9ycy5EZWZlY3RgLgorICAgICAgSWYgOmF0dHI6YHJhaXNlX29uX2RlZmVjdGAKKyAgICAgIGlzIGBgVHJ1ZWBgIHRoZSBkZWZlY3QgaXMgcmFpc2VkIGFzIGFuIGV4Y2VwdGlvbi4gIE90aGVyd2lzZSAqb2JqKiBhbmQKKyAgICAgICpkZWZlY3QqIGFyZSBwYXNzZWQgdG8gOm1ldGg6YHJlZ2lzdGVyX2RlZmVjdGAuICBUaGlzIG1ldGhvZCBpcyBpbnRlbmRlZAorICAgICAgdG8gYmUgY2FsbGVkIGJ5IHBhcnNlcnMgd2hlbiB0aGV5IGVuY291bnRlciBkZWZlY3RzLCBhbmQgd2lsbCBub3QgYmUKKyAgICAgIGNhbGxlZCBieSBjb2RlIHRoYXQgdXNlcyB0aGUgZW1haWwgbGlicmFyeSB1bmxlc3MgdGhhdCBjb2RlIGlzCisgICAgICBpbXBsZW1lbnRpbmcgYW4gYWx0ZXJuYXRlIHBhcnNlci4KKworICAgLi4gbWV0aG9kOjogcmVnaXN0ZXJfZGVmZWN0KG9iaiwgZGVmZWN0KQorCisgICAgICAqb2JqKiBpcyB0aGUgb2JqZWN0IG9uIHdoaWNoIHRvIHJlZ2lzdGVyIHRoZSBkZWZlY3QuICAqZGVmZWN0KiBzaG91bGQgYmUKKyAgICAgIGEgc3ViY2xhc3Mgb2YgOmNsYXNzOmB+ZW1haWwuZXJyb3JzLkRlZmVjdGAuICBUaGlzIG1ldGhvZCBpcyBwYXJ0IG9mIHRoZQorICAgICAgcHVibGljIEFQSSBzbyB0aGF0IGN1c3RvbSBgYFBvbGljeWBgIHN1YmNsYXNzZXMgY2FuIGltcGxlbWVudCBhbHRlcm5hdGUKKyAgICAgIGhhbmRsaW5nIG9mIGRlZmVjdHMuICBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBjYWxscyB0aGUgYGBhcHBlbmRgYAorICAgICAgbWV0aG9kIG9mIHRoZSBgYGRlZmVjdHNgYCBhdHRyaWJ1dGUgb2YgKm9iaiouCisKKyAgIC4uIG1ldGhvZDo6IGNsb25lKG9iaiwgKmt3KQorCisgICAgICBSZXR1cm4gYSBuZXcgOmNsYXNzOmBQb2xpY3lgIGluc3RhbmNlIHdob3NlIGF0dHJpYnV0ZXMgaGF2ZSB0aGUgc2FtZQorICAgICAgdmFsdWVzIGFzIHRoZSBjdXJyZW50IGluc3RhbmNlLCBleGNlcHQgd2hlcmUgdGhvc2UgYXR0cmlidXRlcyBhcmUKKyAgICAgIGdpdmVuIG5ldyB2YWx1ZXMgYnkgdGhlIGtleXdvcmQgYXJndW1lbnRzLgorCisKK1BvbGljeSBJbnN0YW5jZXMKK15eXl5eXl5eXl5eXl5eXl4KKworVGhlIGZvbGxvd2luZyBpbnN0YW5jZXMgb2YgOmNsYXNzOmBQb2xpY3lgIHByb3ZpZGUgZGVmYXVsdHMgc3VpdGFibGUgZm9yCitzcGVjaWZpYyBjb21tb24gYXBwbGljYXRpb24gZG9tYWlucy4KKworLi4gZGF0YTo6IGRlZmF1bHQKKworICAgQW4gaW5zdGFuY2Ugb2YgOmNsYXNzOmBQb2xpY3lgIHdpdGggYWxsIGRlZmF1bHRzIHVuY2hhbmdlZC4KKworLi4gZGF0YTo6IFNNVFAKKworICAgT3V0cHV0IHNlcmlhbGl6ZWQgZnJvbSBhIG1lc3NhZ2Ugd2lsbCBjb25mb3JtIHRvIHRoZSBlbWFpbCBhbmQgU01UUAorICAgUkZDcy4gIFRoZSBvbmx5IGNoYW5nZWQgYXR0cmlidXRlIGlzIDphdHRyOmBsaW5lc2VwYCwgd2hpY2ggaXMgc2V0IHRvCisgICBgYFxyXG5gYC4KKworLi4gZGF0YTo6IEhUVFAKKworICAgU3VpdGFibGUgZm9yIHVzZSB3aGVuIHNlcmlhbGl6aW5nIGhlYWRlcnMgZm9yIHVzZSBpbiBIVFRQIHRyYWZmaWMuCisgICA6YXR0cjpgbGluZXNlcGAgaXMgc2V0IHRvIGBgXHJcbmBgLCBhbmQgOmF0dHI6YG1heF9saW5lX2xlbmd0aGAgaXMgc2V0IHRvCisgICA6Y29uc3Q6YE5vbmVgICh1bmxpbWl0ZWQpLgorCisuLiBkYXRhOjogc3RyaWN0CisKKyAgIDphdHRyOmByYWlzZV9vbl9kZWZlY3RgIGlzIHNldCB0byA6Y29uc3Q6YFRydWVgLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZW1haWwucnN0IGIvRG9jL2xpYnJhcnkvZW1haWwucnN0CmluZGV4IDQ1MzBiOTUuLmZjMjA2ZjQgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2VtYWlsLnJzdAorKysgYi9Eb2MvbGlicmFyeS9lbWFpbC5yc3QKQEAgLTUxLDYgKzUxLDcgQEAKICAgIGVtYWlsLm1lc3NhZ2UucnN0CiAgICBlbWFpbC5wYXJzZXIucnN0CiAgICBlbWFpbC5nZW5lcmF0b3IucnN0CisgICBlbWFpbC5wb2xpY3kucnN0CiAgICBlbWFpbC5taW1lLnJzdAogICAgZW1haWwuaGVhZGVyLnJzdAogICAgZW1haWwuY2hhcnNldC5yc3QKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2VtYWlsLnV0aWwucnN0IGIvRG9jL2xpYnJhcnkvZW1haWwudXRpbC5yc3QKaW5kZXggZjdiNzc3YS4uMmY5ZWY4OSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvZW1haWwudXRpbC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZW1haWwudXRpbC5yc3QKQEAgLTI5LDEzICsyOSwyMCBAQAogICAgZmFpbHMsIGluIHdoaWNoIGNhc2UgYSAyLXR1cGxlIG9mIGBgKCcnLCAnJylgYCBpcyByZXR1cm5lZC4KIAogCi0uLiBmdW5jdGlvbjo6IGZvcm1hdGFkZHIocGFpcikKKy4uIGZ1bmN0aW9uOjogZm9ybWF0YWRkcihwYWlyLCBjaGFyc2V0PSd1dGYtOCcpCiAKICAgIFRoZSBpbnZlcnNlIG9mIDptZXRoOmBwYXJzZWFkZHJgLCB0aGlzIHRha2VzIGEgMi10dXBsZSBvZiB0aGUgZm9ybSBgYChyZWFsbmFtZSwKICAgIGVtYWlsX2FkZHJlc3MpYGAgYW5kIHJldHVybnMgdGhlIHN0cmluZyB2YWx1ZSBzdWl0YWJsZSBmb3IgYSA6bWFpbGhlYWRlcjpgVG9gIG9yCiAgICA6bWFpbGhlYWRlcjpgQ2NgIGhlYWRlci4gIElmIHRoZSBmaXJzdCBlbGVtZW50IG9mICpwYWlyKiBpcyBmYWxzZSwgdGhlbiB0aGUKICAgIHNlY29uZCBlbGVtZW50IGlzIHJldHVybmVkIHVubW9kaWZpZWQuCiAKKyAgIE9wdGlvbmFsICpjaGFyc2V0KiBpcyB0aGUgY2hhcmFjdGVyIHNldCB0aGF0IHdpbGwgYmUgdXNlZCBpbiB0aGUgOnJmYzpgMjA0N2AKKyAgIGVuY29kaW5nIG9mIHRoZSBgYHJlYWxuYW1lYGAgaWYgdGhlIGBgcmVhbG5hbWVgYCBjb250YWlucyBub24tQVNDSUkKKyAgIGNoYXJhY3RlcnMuICBDYW4gYmUgYW4gaW5zdGFuY2Ugb2YgOmNsYXNzOmBzdHJgIG9yIGEKKyAgIDpjbGFzczpgfmVtYWlsLmNoYXJzZXQuQ2hhcnNldGAuICBEZWZhdWx0cyB0byBgYHV0Zi04YGAuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOiAzLjMgYWRkZWQgdGhlICpjaGFyc2V0KiBvcHRpb24KKwogCiAuLiBmdW5jdGlvbjo6IGdldGFkZHJlc3NlcyhmaWVsZHZhbHVlcykKIApAQCAtNzQsNiArODEsMjAgQEAKICAgIGluZGV4ZXMgNiwgNywgYW5kIDggb2YgdGhlIHJlc3VsdCB0dXBsZSBhcmUgbm90IHVzYWJsZS4KIAogCisuLiBmdW5jdGlvbjo6IHBhcnNlZGF0ZV90b19kYXRldGltZShkYXRlKQorCisgICBUaGUgaW52ZXJzZSBvZiA6ZnVuYzpgZm9ybWF0X2RhdGV0aW1lYC4gIFBlcmZvcm1zIHRoZSBzYW1lIGZ1bmN0aW9uIGFzCisgICA6ZnVuYzpgcGFyc2VkYXRlYCwgYnV0IG9uIHN1Y2Nlc3MgcmV0dXJucyBhIDptb2Q6YH5kYXRldGltZS5kYXRldGltZWAuICBJZgorICAgdGhlIGlucHV0IGRhdGUgaGFzIGEgdGltZXpvbmUgb2YgYGAtMDAwMGBgLCB0aGUgYGBkYXRldGltZWBgIHdpbGwgYmUgYSBuYWl2ZQorICAgYGBkYXRldGltZWBgLCBhbmQgaWYgdGhlIGRhdGUgaXMgY29uZm9ybWluZyB0byB0aGUgUkZDcyBpdCB3aWxsIHJlcHJlc2VudCBhCisgICB0aW1lIGluIFVUQyBidXQgd2l0aCBubyBpbmRpY2F0aW9uIG9mIHRoZSBhY3R1YWwgc291cmNlIHRpbWV6b25lIG9mIHRoZQorICAgbWVzc2FnZSB0aGUgZGF0ZSBjb21lcyBmcm9tLiAgSWYgdGhlIGlucHV0IGRhdGUgaGFzIGFueSBvdGhlciB2YWxpZCB0aW1lem9uZQorICAgb2Zmc2V0LCB0aGUgYGBkYXRldGltZWBgIHdpbGwgYmUgYW4gYXdhcmUgYGBkYXRldGltZWBgIHdpdGggdGhlCisgICBjb3JyZXNwb25kaW5nIGEgOmNsYXNzOmB+ZGF0ZXRpbWUudGltZXpvbmVgIDpjbGFzczpgfmRhdGV0aW1lLnR6aW5mb2AuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogbWt0aW1lX3R6KHR1cGxlKQogCiAgICBUdXJuIGEgMTAtdHVwbGUgYXMgcmV0dXJuZWQgYnkgOmZ1bmM6YHBhcnNlZGF0ZV90emAgaW50byBhIFVUQyB0aW1lc3RhbXAuICBJdApAQCAtMTA1LDYgKzEyNiwyMCBAQAogICAgYGBGYWxzZWBgLiAgVGhlIGRlZmF1bHQgaXMgYGBGYWxzZWBgLgogCiAKKy4uIGZ1bmN0aW9uOjogZm9ybWF0X2RhdGV0aW1lKGR0LCB1c2VnbXQ9RmFsc2UpCisKKyAgIExpa2UgYGBmb3JtYXRkYXRlYGAsIGJ1dCB0aGUgaW5wdXQgaXMgYSA6bW9kOmBkYXRldGltZWAgaW5zdGFuY2UuICBJZiBpdCBpcworICAgYSBuYWl2ZSBkYXRldGltZSwgaXQgaXMgYXNzdW1lZCB0byBiZSAiVVRDIHdpdGggbm8gaW5mb3JtYXRpb24gYWJvdXQgdGhlCisgICBzb3VyY2UgdGltZXpvbmUiLCBhbmQgdGhlIGNvbnZlbnRpb25hbCBgYC0wMDAwYGAgaXMgdXNlZCBmb3IgdGhlIHRpbWV6b25lLgorICAgSWYgaXQgaXMgYW4gYXdhcmUgYGBkYXRldGltZWBgLCB0aGVuIHRoZSBudW1lcmljIHRpbWV6b25lIG9mZnNldCBpcyB1c2VkLgorICAgSWYgaXQgaXMgYW4gYXdhcmUgdGltZXpvbmUgd2l0aCBvZmZzZXQgemVybywgdGhlbiAqdXNlZ210KiBtYXkgYmUgc2V0IHRvCisgICBgYFRydWVgYCwgaW4gd2hpY2ggY2FzZSB0aGUgc3RyaW5nIGBgR01UYGAgaXMgdXNlZCBpbnN0ZWFkIG9mIHRoZSBudW1lcmljCisgICB0aW1lem9uZSBvZmZzZXQuICBUaGlzIHByb3ZpZGVzIGEgd2F5IHRvIGdlbmVyYXRlIHN0YW5kYXJkcyBjb25mb3JtYW50IEhUVFAKKyAgIGRhdGUgaGVhZGVycy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBtYWtlX21zZ2lkKGlkc3RyaW5nPU5vbmUsIGRvbWFpbj1Ob25lKQogCiAgICBSZXR1cm5zIGEgc3RyaW5nIHN1aXRhYmxlIGZvciBhbiA6cmZjOmAyODIyYFwgLWNvbXBsaWFudApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZXhjZXB0aW9ucy5yc3QgYi9Eb2MvbGlicmFyeS9leGNlcHRpb25zLnJzdAppbmRleCBjYTNhZDNlLi4zZjFhMzBkIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9leGNlcHRpb25zLnJzdAorKysgYi9Eb2MvbGlicmFyeS9leGNlcHRpb25zLnJzdApAQCAtMzQsNiArMzQsMTAgQEAKIGRlZmluaW5nIGV4Y2VwdGlvbnMgaXMgYXZhaWxhYmxlIGluIHRoZSBQeXRob24gVHV0b3JpYWwgdW5kZXIKIDpyZWY6YHR1dC11c2VyZXhjZXB0aW9uc2AuCiAKKworQmFzZSBjbGFzc2VzCistLS0tLS0tLS0tLS0KKwogVGhlIGZvbGxvd2luZyBleGNlcHRpb25zIGFyZSB1c2VkIG1vc3RseSBhcyBiYXNlIGNsYXNzZXMgZm9yIG90aGVyIGV4Y2VwdGlvbnMuCiAKIC4uIGV4Y2VwdGlvbjo6IEJhc2VFeGNlcHRpb24KQEAgLTkwLDI3ICs5NCw4IEBACiAgICBjYW4gYmUgcmFpc2VkIGRpcmVjdGx5IGJ5IDpmdW5jOmBjb2RlY3MubG9va3VwYC4KIAogCi0uLiBleGNlcHRpb246OiBFbnZpcm9ubWVudEVycm9yCi0KLSAgIFRoZSBiYXNlIGNsYXNzIGZvciBleGNlcHRpb25zIHRoYXQgY2FuIG9jY3VyIG91dHNpZGUgdGhlIFB5dGhvbiBzeXN0ZW06Ci0gICA6ZXhjOmBJT0Vycm9yYCwgOmV4YzpgT1NFcnJvcmAuICBXaGVuIGV4Y2VwdGlvbnMgb2YgdGhpcyB0eXBlIGFyZSBjcmVhdGVkIHdpdGggYQotICAgMi10dXBsZSwgdGhlIGZpcnN0IGl0ZW0gaXMgYXZhaWxhYmxlIG9uIHRoZSBpbnN0YW5jZSdzIDphdHRyOmBlcnJub2AgYXR0cmlidXRlCi0gICAoaXQgaXMgYXNzdW1lZCB0byBiZSBhbiBlcnJvciBudW1iZXIpLCBhbmQgdGhlIHNlY29uZCBpdGVtIGlzIGF2YWlsYWJsZSBvbiB0aGUKLSAgIDphdHRyOmBzdHJlcnJvcmAgYXR0cmlidXRlIChpdCBpcyB1c3VhbGx5IHRoZSBhc3NvY2lhdGVkIGVycm9yIG1lc3NhZ2UpLiAgVGhlCi0gICB0dXBsZSBpdHNlbGYgaXMgYWxzbyBhdmFpbGFibGUgb24gdGhlIDphdHRyOmBhcmdzYCBhdHRyaWJ1dGUuCi0KLSAgIFdoZW4gYW4gOmV4YzpgRW52aXJvbm1lbnRFcnJvcmAgZXhjZXB0aW9uIGlzIGluc3RhbnRpYXRlZCB3aXRoIGEgMy10dXBsZSwgdGhlCi0gICBmaXJzdCB0d28gaXRlbXMgYXJlIGF2YWlsYWJsZSBhcyBhYm92ZSwgd2hpbGUgdGhlIHRoaXJkIGl0ZW0gaXMgYXZhaWxhYmxlIG9uIHRoZQotICAgOmF0dHI6YGZpbGVuYW1lYCBhdHRyaWJ1dGUuICBIb3dldmVyLCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIHRoZQotICAgOmF0dHI6YGFyZ3NgIGF0dHJpYnV0ZSBjb250YWlucyBvbmx5IGEgMi10dXBsZSBvZiB0aGUgZmlyc3QgdHdvIGNvbnN0cnVjdG9yCi0gICBhcmd1bWVudHMuCi0KLSAgIFRoZSA6YXR0cjpgZmlsZW5hbWVgIGF0dHJpYnV0ZSBpcyBgYE5vbmVgYCB3aGVuIHRoaXMgZXhjZXB0aW9uIGlzIGNyZWF0ZWQgd2l0aAotICAgb3RoZXIgdGhhbiAzIGFyZ3VtZW50cy4gIFRoZSA6YXR0cjpgZXJybm9gIGFuZCA6YXR0cjpgc3RyZXJyb3JgIGF0dHJpYnV0ZXMgYXJlCi0gICBhbHNvIGBgTm9uZWBgIHdoZW4gdGhlIGluc3RhbmNlIHdhcyBjcmVhdGVkIHdpdGggb3RoZXIgdGhhbiAyIG9yIDMgYXJndW1lbnRzLgotICAgSW4gdGhpcyBsYXN0IGNhc2UsIDphdHRyOmBhcmdzYCBjb250YWlucyB0aGUgdmVyYmF0aW0gY29uc3RydWN0b3IgYXJndW1lbnRzIGFzIGEKLSAgIHR1cGxlLgotCitDb25jcmV0ZSBleGNlcHRpb25zCistLS0tLS0tLS0tLS0tLS0tLS0tCiAKIFRoZSBmb2xsb3dpbmcgZXhjZXB0aW9ucyBhcmUgdGhlIGV4Y2VwdGlvbnMgdGhhdCBhcmUgdXN1YWxseSByYWlzZWQuCiAKQEAgLTE1MSwxNiArMTM2LDYgQEAKICAgIGl0IGlzIHRlY2huaWNhbGx5IG5vdCBhbiBlcnJvci4KIAogCi0uLiBleGNlcHRpb246OiBJT0Vycm9yCi0KLSAgIFJhaXNlZCB3aGVuIGFuIEkvTyBvcGVyYXRpb24gKHN1Y2ggYXMgdGhlIGJ1aWx0LWluIDpmdW5jOmBwcmludGAgb3IKLSAgIDpmdW5jOmBvcGVuYCBmdW5jdGlvbnMgb3IgYSBtZXRob2Qgb2YgYSA6dGVybTpgZmlsZSBvYmplY3RgKSBmYWlscyBmb3IgYW4KLSAgIEkvTy1yZWxhdGVkIHJlYXNvbiwgZS5nLiwgImZpbGUgbm90IGZvdW5kIiBvciAiZGlzayBmdWxsIi4KLQotICAgVGhpcyBjbGFzcyBpcyBkZXJpdmVkIGZyb20gOmV4YzpgRW52aXJvbm1lbnRFcnJvcmAuICBTZWUgdGhlIGRpc2N1c3Npb24gYWJvdmUKLSAgIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGV4Y2VwdGlvbiBpbnN0YW5jZSBhdHRyaWJ1dGVzLgotCi0KIC4uIGV4Y2VwdGlvbjo6IEltcG9ydEVycm9yCiAKICAgIFJhaXNlZCB3aGVuIGFuIDprZXl3b3JkOmBpbXBvcnRgIHN0YXRlbWVudCBmYWlscyB0byBmaW5kIHRoZSBtb2R1bGUgZGVmaW5pdGlvbgpAQCAtMjIxLDE3ICsxOTYsMzAgQEAKIAogICAgLi4gaW5kZXg6OiBtb2R1bGU6IGVycm5vCiAKLSAgIFRoaXMgZXhjZXB0aW9uIGlzIGRlcml2ZWQgZnJvbSA6ZXhjOmBFbnZpcm9ubWVudEVycm9yYC4gIEl0IGlzIHJhaXNlZCB3aGVuIGEKLSAgIGZ1bmN0aW9uIHJldHVybnMgYSBzeXN0ZW0tcmVsYXRlZCBlcnJvciAobm90IGZvciBpbGxlZ2FsIGFyZ3VtZW50IHR5cGVzIG9yCi0gICBvdGhlciBpbmNpZGVudGFsIGVycm9ycykuICBUaGUgOmF0dHI6YGVycm5vYCBhdHRyaWJ1dGUgaXMgYSBudW1lcmljIGVycm9yCi0gICBjb2RlIGZyb20gOmM6ZGF0YTpgZXJybm9gLCBhbmQgdGhlIDphdHRyOmBzdHJlcnJvcmAgYXR0cmlidXRlIGlzIHRoZQotICAgY29ycmVzcG9uZGluZyBzdHJpbmcsIGFzIHdvdWxkIGJlIHByaW50ZWQgYnkgdGhlIEMgZnVuY3Rpb24gOmM6ZnVuYzpgcGVycm9yYC4KLSAgIFNlZSB0aGUgbW9kdWxlIDptb2Q6YGVycm5vYCwgd2hpY2ggY29udGFpbnMgbmFtZXMgZm9yIHRoZSBlcnJvciBjb2RlcyBkZWZpbmVkCi0gICBieSB0aGUgdW5kZXJseWluZyBvcGVyYXRpbmcgc3lzdGVtLgorICAgVGhpcyBleGNlcHRpb24gaXMgcmFpc2VkIHdoZW4gYSBzeXN0ZW0gZnVuY3Rpb24gcmV0dXJucyBhIHN5c3RlbS1yZWxhdGVkCisgICBlcnJvciwgaW5jbHVkaW5nIEkvTyBmYWlsdXJlcyBzdWNoIGFzICJmaWxlIG5vdCBmb3VuZCIgb3IgImRpc2sgZnVsbCIKKyAgIChub3QgZm9yIGlsbGVnYWwgYXJndW1lbnQgdHlwZXMgb3Igb3RoZXIgaW5jaWRlbnRhbCBlcnJvcnMpLiAgT2Z0ZW4gYQorICAgc3ViY2xhc3Mgb2YgOmV4YzpgT1NFcnJvcmAgd2lsbCBhY3R1YWxseSBiZSByYWlzZWQgYXMgZGVzY3JpYmVkIGluCisgICBgT1MgZXhjZXB0aW9uc2BfIGJlbG93LiAgVGhlIDphdHRyOmBlcnJub2AgYXR0cmlidXRlIGlzIGEgbnVtZXJpYyBlcnJvcgorICAgY29kZSBmcm9tIHRoZSBDIHZhcmlhYmxlIDpjOmRhdGE6YGVycm5vYC4KIAotICAgRm9yIGV4Y2VwdGlvbnMgdGhhdCBpbnZvbHZlIGEgZmlsZSBzeXN0ZW0gcGF0aCAoc3VjaCBhcyA6ZnVuYzpgY2hkaXJgIG9yCi0gICA6ZnVuYzpgdW5saW5rYCksIHRoZSBleGNlcHRpb24gaW5zdGFuY2Ugd2lsbCBjb250YWluIGEgdGhpcmQgYXR0cmlidXRlLAotICAgOmF0dHI6YGZpbGVuYW1lYCwgd2hpY2ggaXMgdGhlIGZpbGUgbmFtZSBwYXNzZWQgdG8gdGhlIGZ1bmN0aW9uLgorICAgVW5kZXIgV2luZG93cywgdGhlIDphdHRyOmB3aW5lcnJvcmAgYXR0cmlidXRlIGdpdmVzIHlvdSB0aGUgbmF0aXZlCisgICBXaW5kb3dzIGVycm9yIGNvZGUuICBUaGUgOmF0dHI6YGVycm5vYCBhdHRyaWJ1dGUgaXMgdGhlbiBhbiBhcHByb3hpbWF0ZQorICAgdHJhbnNsYXRpb24sIGluIFBPU0lYIHRlcm1zLCBvZiB0aGF0IG5hdGl2ZSBlcnJvciBjb2RlLgorCisgICBVbmRlciBhbGwgcGxhdGZvcm1zLCB0aGUgOmF0dHI6YHN0cmVycm9yYCBhdHRyaWJ1dGUgaXMgdGhlIGNvcnJlc3BvbmRpbmcKKyAgIGVycm9yIG1lc3NhZ2UgYXMgcHJvdmlkZWQgYnkgdGhlIG9wZXJhdGluZyBzeXN0ZW0gKGFzIGZvcm1hdHRlZCBieSB0aGUgQworICAgZnVuY3Rpb25zIDpjOmZ1bmM6YHBlcnJvcmAgdW5kZXIgUE9TSVgsIGFuZCA6YzpmdW5jOmBGb3JtYXRNZXNzYWdlYAorICAgV2luZG93cykuCisKKyAgIEZvciBleGNlcHRpb25zIHRoYXQgaW52b2x2ZSBhIGZpbGUgc3lzdGVtIHBhdGggKHN1Y2ggYXMgOmZ1bmM6YG9wZW5gIG9yCisgICA6ZnVuYzpgb3MudW5saW5rYCksIHRoZSBleGNlcHRpb24gaW5zdGFuY2Ugd2lsbCBjb250YWluIGFuIGFkZGl0aW9uYWwKKyAgIGF0dHJpYnV0ZSwgOmF0dHI6YGZpbGVuYW1lYCwgd2hpY2ggaXMgdGhlIGZpbGUgbmFtZSBwYXNzZWQgdG8gdGhlIGZ1bmN0aW9uLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgOmV4YzpgRW52aXJvbm1lbnRFcnJvcmAsIDpleGM6YElPRXJyb3JgLCA6ZXhjOmBXaW5kb3dzRXJyb3JgLAorICAgICAgOmV4YzpgVk1TRXJyb3JgLCA6ZXhjOmBzb2NrZXQuZXJyb3JgLCA6ZXhjOmBzZWxlY3QuZXJyb3JgIGFuZAorICAgICAgOmV4YzpgbW1hcC5lcnJvcmAgaGF2ZSBiZWVuIG1lcmdlZCBpbnRvIDpleGM6YE9TRXJyb3JgLgogCiAKIC4uIGV4Y2VwdGlvbjo6IE92ZXJmbG93RXJyb3IKQEAgLTI2Miw4ICsyNTAsMjAgQEAKIC4uIGV4Y2VwdGlvbjo6IFN0b3BJdGVyYXRpb24KIAogICAgUmFpc2VkIGJ5IGJ1aWx0LWluIGZ1bmN0aW9uIDpmdW5jOmBuZXh0YCBhbmQgYW4gOnRlcm06YGl0ZXJhdG9yYFwncwotICAgOm1ldGg6YF9fbmV4dF9fYCBtZXRob2QgdG8gc2lnbmFsIHRoYXQgdGhlcmUgYXJlIG5vIGZ1cnRoZXIgdmFsdWVzLgorICAgOm1ldGg6YF9fbmV4dF9fYCBtZXRob2QgdG8gc2lnbmFsIHRoYXQgdGhlcmUgYXJlIG5vIGZ1cnRoZXIgaXRlbXMgdG8gYmUKKyAgIHByb2R1Y2VkIGJ5IHRoZSBpdGVyYXRvci4KIAorICAgVGhlIGV4Y2VwdGlvbiBvYmplY3QgaGFzIGEgc2luZ2xlIGF0dHJpYnV0ZSA6YXR0cjpgdmFsdWVgLCB3aGljaCBpcworICAgZ2l2ZW4gYXMgYW4gYXJndW1lbnQgd2hlbiBjb25zdHJ1Y3RpbmcgdGhlIGV4Y2VwdGlvbiwgYW5kIGRlZmF1bHRzCisgICB0byA6Y29uc3Q6YE5vbmVgLgorCisgICBXaGVuIGEgZ2VuZXJhdG9yIGZ1bmN0aW9uIHJldHVybnMsIGEgbmV3IDpleGM6YFN0b3BJdGVyYXRpb25gIGluc3RhbmNlIGlzCisgICByYWlzZWQsIGFuZCB0aGUgdmFsdWUgcmV0dXJuZWQgYnkgdGhlIGZ1bmN0aW9uIGlzIHVzZWQgYXMgdGhlCisgICA6YXR0cjpgdmFsdWVgIHBhcmFtZXRlciB0byB0aGUgY29uc3RydWN0b3Igb2YgdGhlIGV4Y2VwdGlvbi4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZGVkIGBgdmFsdWVgYCBhdHRyaWJ1dGUgYW5kIHRoZSBhYmlsaXR5IGZvciBnZW5lcmF0b3IgZnVuY3Rpb25zIHRvCisgICAgICB1c2UgaXQgdG8gcmV0dXJuIGEgdmFsdWUuCiAKIC4uIGV4Y2VwdGlvbjo6IFN5bnRheEVycm9yCiAKQEAgLTM3MiwyMSArMzcyLDYgQEAKICAgIG1vcmUgcHJlY2lzZSBleGNlcHRpb24gc3VjaCBhcyA6ZXhjOmBJbmRleEVycm9yYC4KIAogCi0uLiBleGNlcHRpb246OiBWTVNFcnJvcgotCi0gICBPbmx5IGF2YWlsYWJsZSBvbiBWTVMuICBSYWlzZWQgd2hlbiBhIFZNUy1zcGVjaWZpYyBlcnJvciBvY2N1cnMuCi0KLQotLi4gZXhjZXB0aW9uOjogV2luZG93c0Vycm9yCi0KLSAgIFJhaXNlZCB3aGVuIGEgV2luZG93cy1zcGVjaWZpYyBlcnJvciBvY2N1cnMgb3Igd2hlbiB0aGUgZXJyb3IgbnVtYmVyIGRvZXMgbm90Ci0gICBjb3JyZXNwb25kIHRvIGFuIDpjOmRhdGE6YGVycm5vYCB2YWx1ZS4gIFRoZSA6YXR0cjpgd2luZXJyb3JgIGFuZAotICAgOmF0dHI6YHN0cmVycm9yYCB2YWx1ZXMgYXJlIGNyZWF0ZWQgZnJvbSB0aGUgcmV0dXJuIHZhbHVlcyBvZiB0aGUKLSAgIDpjOmZ1bmM6YEdldExhc3RFcnJvcmAgYW5kIDpjOmZ1bmM6YEZvcm1hdE1lc3NhZ2VgIGZ1bmN0aW9ucyBmcm9tIHRoZSBXaW5kb3dzCi0gICBQbGF0Zm9ybSBBUEkuIFRoZSA6YXR0cjpgZXJybm9gIHZhbHVlIG1hcHMgdGhlIDphdHRyOmB3aW5lcnJvcmAgdmFsdWUgdG8KLSAgIGNvcnJlc3BvbmRpbmcgYGBlcnJuby5oYGAgdmFsdWVzLiBUaGlzIGlzIGEgc3ViY2xhc3Mgb2YgOmV4YzpgT1NFcnJvcmAuCi0KLQogLi4gZXhjZXB0aW9uOjogWmVyb0RpdmlzaW9uRXJyb3IKIAogICAgUmFpc2VkIHdoZW4gdGhlIHNlY29uZCBhcmd1bWVudCBvZiBhIGRpdmlzaW9uIG9yIG1vZHVsbyBvcGVyYXRpb24gaXMgemVyby4gIFRoZQpAQCAtMzk0LDYgKzM3OSwxMzYgQEAKICAgIG9wZXJhdGlvbi4KIAogCitUaGUgZm9sbG93aW5nIGV4Y2VwdGlvbnMgYXJlIGtlcHQgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBwcmV2aW91cyB2ZXJzaW9uczsKK3N0YXJ0aW5nIGZyb20gUHl0aG9uIDMuMywgdGhleSBhcmUgYWxpYXNlcyBvZiA6ZXhjOmBPU0Vycm9yYC4KKworLi4gZXhjZXB0aW9uOjogRW52aXJvbm1lbnRFcnJvcgorCisuLiBleGNlcHRpb246OiBJT0Vycm9yCisKKy4uIGV4Y2VwdGlvbjo6IFZNU0Vycm9yCisKKyAgIE9ubHkgYXZhaWxhYmxlIG9uIFZNUy4KKworLi4gZXhjZXB0aW9uOjogV2luZG93c0Vycm9yCisKKyAgIE9ubHkgYXZhaWxhYmxlIG9uIFdpbmRvd3MuCisKKworT1MgZXhjZXB0aW9ucworXl5eXl5eXl5eXl5eXgorCitUaGUgZm9sbG93aW5nIGV4Y2VwdGlvbnMgYXJlIHN1YmNsYXNzZXMgb2YgOmV4YzpgT1NFcnJvcmAsIHRoZXkgZ2V0IHJhaXNlZAorZGVwZW5kaW5nIG9uIHRoZSBzeXN0ZW0gZXJyb3IgY29kZS4KKworLi4gZXhjZXB0aW9uOjogQmxvY2tpbmdJT0Vycm9yCisKKyAgIFJhaXNlZCB3aGVuIGFuIG9wZXJhdGlvbiB3b3VsZCBibG9jayBvbiBhbiBvYmplY3QgKGUuZy4gc29ja2V0KSBzZXQKKyAgIGZvciBub24tYmxvY2tpbmcgb3BlcmF0aW9uLgorICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRUFHQUlOYGAsIGBgRUFMUkVBRFlgYCwKKyAgIGBgRVdPVUxEQkxPQ0tgYCBhbmQgYGBFSU5QUk9HUkVTU2BgLgorCisgICBJbiBhZGRpdGlvbiB0byB0aG9zZSBvZiA6ZXhjOmBPU0Vycm9yYCwgOmV4YzpgQmxvY2tpbmdJT0Vycm9yYCBjYW4gaGF2ZQorICAgb25lIG1vcmUgYXR0cmlidXRlOgorCisgICAuLiBhdHRyaWJ1dGU6OiBjaGFyYWN0ZXJzX3dyaXR0ZW4KKworICAgICAgQW4gaW50ZWdlciBjb250YWluaW5nIHRoZSBudW1iZXIgb2YgY2hhcmFjdGVycyB3cml0dGVuIHRvIHRoZSBzdHJlYW0KKyAgICAgIGJlZm9yZSBpdCBibG9ja2VkLiAgVGhpcyBhdHRyaWJ1dGUgaXMgYXZhaWxhYmxlIHdoZW4gdXNpbmcgdGhlCisgICAgICBidWZmZXJlZCBJL08gY2xhc3NlcyBmcm9tIHRoZSA6bW9kOmBpb2AgbW9kdWxlLgorCisuLiBleGNlcHRpb246OiBDaGlsZFByb2Nlc3NFcnJvcgorCisgICBSYWlzZWQgd2hlbiBhbiBvcGVyYXRpb24gb24gYSBjaGlsZCBwcm9jZXNzIGZhaWxlZC4KKyAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVDSElMRGBgLgorCisuLiBleGNlcHRpb246OiBDb25uZWN0aW9uRXJyb3IKKworICAgQSBiYXNlIGNsYXNzIGZvciBjb25uZWN0aW9uLXJlbGF0ZWQgaXNzdWVzLiAgU3ViY2xhc3NlcyBhcmUKKyAgIDpleGM6YEJyb2tlblBpcGVFcnJvcmAsIDpleGM6YENvbm5lY3Rpb25BYm9ydGVkRXJyb3JgLAorICAgOmV4YzpgQ29ubmVjdGlvblJlZnVzZWRFcnJvcmAgYW5kIDpleGM6YENvbm5lY3Rpb25SZXNldEVycm9yYC4KKworICAgLi4gZXhjZXB0aW9uOjogQnJva2VuUGlwZUVycm9yCisKKyAgICAgIEEgc3ViY2xhc3Mgb2YgOmV4YzpgQ29ubmVjdGlvbkVycm9yYCwgcmFpc2VkIHdoZW4gdHJ5aW5nIHRvIHdyaXRlIG9uIGEKKyAgICAgIHBpcGUgd2hpbGUgdGhlIG90aGVyIGVuZCBoYXMgYmVlbiBjbG9zZWQsIG9yIHRyeWluZyB0byB3cml0ZSBvbiBhIHNvY2tldAorICAgICAgd2hpY2ggaGFzIGJlZW4gc2h1dGRvd24gZm9yIHdyaXRpbmcuCisgICAgICBDb3JyZXNwb25kcyB0byA6YzpkYXRhOmBlcnJub2AgYGBFUElQRWBgIGFuZCBgYEVTSFVURE9XTmBgLgorCisgICAuLiBleGNlcHRpb246OiBDb25uZWN0aW9uQWJvcnRlZEVycm9yCisKKyAgICAgIEEgc3ViY2xhc3Mgb2YgOmV4YzpgQ29ubmVjdGlvbkVycm9yYCwgcmFpc2VkIHdoZW4gYSBjb25uZWN0aW9uIGF0dGVtcHQKKyAgICAgIGlzIGFib3J0ZWQgYnkgdGhlIHBlZXIuCisgICAgICBDb3JyZXNwb25kcyB0byA6YzpkYXRhOmBlcnJub2AgYGBFQ09OTkFCT1JURURgYC4KKworICAgLi4gZXhjZXB0aW9uOjogQ29ubmVjdGlvblJlZnVzZWRFcnJvcgorCisgICAgICBBIHN1YmNsYXNzIG9mIDpleGM6YENvbm5lY3Rpb25FcnJvcmAsIHJhaXNlZCB3aGVuIGEgY29ubmVjdGlvbiBhdHRlbXB0CisgICAgICBpcyByZWZ1c2VkIGJ5IHRoZSBwZWVyLgorICAgICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRUNPTk5SRUZVU0VEYGAuCisKKyAgIC4uIGV4Y2VwdGlvbjo6IENvbm5lY3Rpb25SZXNldEVycm9yCisKKyAgICAgIEEgc3ViY2xhc3Mgb2YgOmV4YzpgQ29ubmVjdGlvbkVycm9yYCwgcmFpc2VkIHdoZW4gYSBjb25uZWN0aW9uIGlzCisgICAgICByZXNldCBieSB0aGUgcGVlci4KKyAgICAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVDT05OUkVTRVRgYC4KKworLi4gZXhjZXB0aW9uOjogRmlsZUV4aXN0c0Vycm9yCisKKyAgIFJhaXNlZCB3aGVuIHRyeWluZyB0byBjcmVhdGUgYSBmaWxlIG9yIGRpcmVjdG9yeSB3aGljaCBhbHJlYWR5IGV4aXN0cy4KKyAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVFWElTVGBgLgorCisuLiBleGNlcHRpb246OiBGaWxlTm90Rm91bmRFcnJvcgorCisgICBSYWlzZWQgd2hlbiBhIGZpbGUgb3IgZGlyZWN0b3J5IGlzIHJlcXVlc3RlZCBidXQgZG9lc24ndCBleGlzdC4KKyAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVOT0VOVGBgLgorCisuLiBleGNlcHRpb246OiBJbnRlcnJ1cHRlZEVycm9yCisKKyAgIFJhaXNlZCB3aGVuIGEgc3lzdGVtIGNhbGwgaXMgaW50ZXJydXB0ZWQgYnkgYW4gaW5jb21pbmcgc2lnbmFsLgorICAgQ29ycmVzcG9uZHMgdG8gOmM6ZGF0YTpgZXJybm9gIGBgRUVJTlRSYGAuCisKKy4uIGV4Y2VwdGlvbjo6IElzQURpcmVjdG9yeUVycm9yCisKKyAgIFJhaXNlZCB3aGVuIGEgZmlsZSBvcGVyYXRpb24gKHN1Y2ggYXMgOmZ1bmM6YG9zLnJlbW92ZWApIGlzIHJlcXVlc3RlZAorICAgb24gYSBkaXJlY3RvcnkuCisgICBDb3JyZXNwb25kcyB0byA6YzpkYXRhOmBlcnJub2AgYGBFSVNESVJgYC4KKworLi4gZXhjZXB0aW9uOjogTm90QURpcmVjdG9yeUVycm9yCisKKyAgIFJhaXNlZCB3aGVuIGEgZGlyZWN0b3J5IG9wZXJhdGlvbiAoc3VjaCBhcyA6ZnVuYzpgb3MubGlzdGRpcmApIGlzIHJlcXVlc3RlZAorICAgb24gc29tZXRoaW5nIHdoaWNoIGlzIG5vdCBhIGRpcmVjdG9yeS4KKyAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVOT1RESVJgYC4KKworLi4gZXhjZXB0aW9uOjogUGVybWlzc2lvbkVycm9yCisKKyAgIFJhaXNlZCB3aGVuIHRyeWluZyB0byBydW4gYW4gb3BlcmF0aW9uIHdpdGhvdXQgdGhlIGFkZXF1YXRlIGFjY2VzcworICAgcmlnaHRzIC0gZm9yIGV4YW1wbGUgZmlsZXN5c3RlbSBwZXJtaXNzaW9ucy4KKyAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVBQ0NFU2BgIGFuZCBgYEVQRVJNYGAuCisKKy4uIGV4Y2VwdGlvbjo6IFByb2Nlc3NMb29rdXBFcnJvcgorCisgICBSYWlzZWQgd2hlbiBhIGdpdmVuIHByb2Nlc3MgZG9lc24ndCBleGlzdC4KKyAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVTUkNIYGAuCisKKy4uIGV4Y2VwdGlvbjo6IFRpbWVvdXRFcnJvcgorCisgICBSYWlzZWQgd2hlbiBhIHN5c3RlbSBmdW5jdGlvbiB0aW1lZCBvdXQgYXQgdGhlIHN5c3RlbSBsZXZlbC4KKyAgIENvcnJlc3BvbmRzIHRvIDpjOmRhdGE6YGVycm5vYCBgYEVUSU1FRE9VVGBgLgorCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgIEFsbCB0aGUgYWJvdmUgOmV4YzpgT1NFcnJvcmAgc3ViY2xhc3NlcyB3ZXJlIGFkZGVkLgorCisKKy4uIHNlZWFsc286OgorCisgICA6cGVwOmAzMTUxYCAtIFJld29ya2luZyB0aGUgT1MgYW5kIElPIGV4Y2VwdGlvbiBoaWVyYXJjaHkKKyAgICAgIFBFUCB3cml0dGVuIGFuZCBpbXBsZW1lbnRlZCBieSBBbnRvaW5lIFBpdHJvdS4KKworCitXYXJuaW5ncworLS0tLS0tLS0KKwogVGhlIGZvbGxvd2luZyBleGNlcHRpb25zIGFyZSB1c2VkIGFzIHdhcm5pbmcgY2F0ZWdvcmllczsgc2VlIHRoZSA6bW9kOmB3YXJuaW5nc2AKIG1vZHVsZSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZmF1bHRoYW5kbGVyLnJzdCBiL0RvYy9saWJyYXJ5L2ZhdWx0aGFuZGxlci5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzliOTU0NgotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L2ZhdWx0aGFuZGxlci5yc3QKQEAgLTAsMCArMSwxMzYgQEAKKzptb2Q6YGZhdWx0aGFuZGxlcmAgLS0tIER1bXAgdGhlIFB5dGhvbiB0cmFjZWJhY2sKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogZmF1bHRoYW5kbGVyCisgICA6c3lub3BzaXM6IER1bXAgdGhlIFB5dGhvbiB0cmFjZWJhY2suCisKK1RoaXMgbW9kdWxlIGNvbnRhaW5zIGZ1bmN0aW9ucyB0byBkdW1wIFB5dGhvbiB0cmFjZWJhY2tzIGV4cGxpY2l0bHksIG9uIGEgZmF1bHQsCithZnRlciBhIHRpbWVvdXQsIG9yIG9uIGEgdXNlciBzaWduYWwuIENhbGwgOmZ1bmM6YGZhdWx0aGFuZGxlci5lbmFibGVgIHRvCitpbnN0YWxsIGZhdWx0IGhhbmRsZXJzIGZvciB0aGUgOmNvbnN0OmBTSUdTRUdWYCwgOmNvbnN0OmBTSUdGUEVgLAorOmNvbnN0OmBTSUdBQlJUYCwgOmNvbnN0OmBTSUdCVVNgLCBhbmQgOmNvbnN0OmBTSUdJTExgIHNpZ25hbHMuIFlvdSBjYW4gYWxzbworZW5hYmxlIHRoZW0gYXQgc3RhcnR1cCBieSBzZXR0aW5nIHRoZSA6ZW52dmFyOmBQWVRIT05GQVVMVEhBTkRMRVJgIGVudmlyb25tZW50Cit2YXJpYWJsZSBvciBieSB1c2luZyA6b3B0aW9uOmAtWGAgYGBmYXVsdGhhbmRsZXJgYCBjb21tYW5kIGxpbmUgb3B0aW9uLgorCitUaGUgZmF1bHQgaGFuZGxlciBpcyBjb21wYXRpYmxlIHdpdGggc3lzdGVtIGZhdWx0IGhhbmRsZXJzIGxpa2UgQXBwb3J0IG9yIHRoZQorV2luZG93cyBmYXVsdCBoYW5kbGVyLiBUaGUgbW9kdWxlIHVzZXMgYW4gYWx0ZXJuYXRpdmUgc3RhY2sgZm9yIHNpZ25hbCBoYW5kbGVycworaWYgdGhlIDpjOmZ1bmM6YHNpZ2FsdHN0YWNrYCBmdW5jdGlvbiBpcyBhdmFpbGFibGUuIFRoaXMgYWxsb3dzIGl0IHRvIGR1bXAgdGhlCit0cmFjZWJhY2sgZXZlbiBvbiBhIHN0YWNrIG92ZXJmbG93LgorCitUaGUgZmF1bHQgaGFuZGxlciBpcyBjYWxsZWQgb24gY2F0YXN0cm9waGljIGNhc2VzIGFuZCB0aGVyZWZvcmUgY2FuIG9ubHkgdXNlCitzaWduYWwtc2FmZSBmdW5jdGlvbnMgKGUuZy4gaXQgY2Fubm90IGFsbG9jYXRlIG1lbW9yeSBvbiB0aGUgaGVhcCkuIEJlY2F1c2Ugb2YKK3RoaXMgbGltaXRhdGlvbiB0cmFjZWJhY2sgZHVtcGluZyBpcyBtaW5pbWFsIGNvbXBhcmVkIHRvIG5vcm1hbCBQeXRob24KK3RyYWNlYmFja3M6CisKKyogT25seSBBU0NJSSBpcyBzdXBwb3J0ZWQuIFRoZSBgYGJhY2tzbGFzaHJlcGxhY2VgYCBlcnJvciBoYW5kbGVyIGlzIHVzZWQgb24KKyAgZW5jb2RpbmcuCisqIEVhY2ggc3RyaW5nIGlzIGxpbWl0ZWQgdG8gMTAwIGNoYXJhY3RlcnMuCisqIE9ubHkgdGhlIGZpbGVuYW1lLCB0aGUgZnVuY3Rpb24gbmFtZSBhbmQgdGhlIGxpbmUgbnVtYmVyIGFyZQorICBkaXNwbGF5ZWQuIChubyBzb3VyY2UgY29kZSkKKyogSXQgaXMgbGltaXRlZCB0byAxMDAgZnJhbWVzIGFuZCAxMDAgdGhyZWFkcy4KKworQnkgZGVmYXVsdCwgdGhlIFB5dGhvbiB0cmFjZWJhY2sgaXMgd3JpdHRlbiB0byA6ZGF0YTpgc3lzLnN0ZGVycmAuIFRvIHNlZQordHJhY2ViYWNrcywgYXBwbGljYXRpb25zIG11c3QgYmUgcnVuIGluIHRoZSB0ZXJtaW5hbC4gQSBsb2cgZmlsZSBjYW4KK2FsdGVybmF0aXZlbHkgYmUgcGFzc2VkIHRvIDpmdW5jOmBmYXVsdGhhbmRsZXIuZW5hYmxlYC4KKworVGhlIG1vZHVsZSBpcyBpbXBsZW1lbnRlZCBpbiBDLCBzbyB0cmFjZWJhY2tzIGNhbiBiZSBkdW1wZWQgb24gYSBjcmFzaCBvciB3aGVuCitQeXRob24gaXMgZGVhZGxvY2tlZC4KKworLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworRHVtcCB0aGUgdHJhY2ViYWNrCistLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gZnVuY3Rpb246OiBkdW1wX3RyYWNlYmFjayhmaWxlPXN5cy5zdGRlcnIsIGFsbF90aHJlYWRzPVRydWUpCisKKyAgIER1bXAgdGhlIHRyYWNlYmFja3Mgb2YgYWxsIHRocmVhZHMgaW50byAqZmlsZSouIElmICphbGxfdGhyZWFkcyogaXMKKyAgIGBgRmFsc2VgYCwgZHVtcCBvbmx5IHRoZSBjdXJyZW50IHRocmVhZC4KKworCitGYXVsdCBoYW5kbGVyIHN0YXRlCistLS0tLS0tLS0tLS0tLS0tLS0tCisKKy4uIGZ1bmN0aW9uOjogZW5hYmxlKGZpbGU9c3lzLnN0ZGVyciwgYWxsX3RocmVhZHM9VHJ1ZSkKKworICAgRW5hYmxlIHRoZSBmYXVsdCBoYW5kbGVyOiBpbnN0YWxsIGhhbmRsZXJzIGZvciB0aGUgOmNvbnN0OmBTSUdTRUdWYCwKKyAgIDpjb25zdDpgU0lHRlBFYCwgOmNvbnN0OmBTSUdBQlJUYCwgOmNvbnN0OmBTSUdCVVNgIGFuZCA6Y29uc3Q6YFNJR0lMTGAKKyAgIHNpZ25hbHMgdG8gZHVtcCB0aGUgUHl0aG9uIHRyYWNlYmFjay4gSWYgKmFsbF90aHJlYWRzKiBpcyBgYFRydWVgYCwKKyAgIHByb2R1Y2UgdHJhY2ViYWNrcyBmb3IgZXZlcnkgcnVubmluZyB0aHJlYWQuIE90aGVyd2lzZSwgZHVtcCBvbmx5IHRoZSBjdXJyZW50CisgICB0aHJlYWQuCisKKy4uIGZ1bmN0aW9uOjogZGlzYWJsZSgpCisKKyAgIERpc2FibGUgdGhlIGZhdWx0IGhhbmRsZXI6IHVuaW5zdGFsbCB0aGUgc2lnbmFsIGhhbmRsZXJzIGluc3RhbGxlZCBieQorICAgOmZ1bmM6YGVuYWJsZWAuCisKKy4uIGZ1bmN0aW9uOjogaXNfZW5hYmxlZCgpCisKKyAgIENoZWNrIGlmIHRoZSBmYXVsdCBoYW5kbGVyIGlzIGVuYWJsZWQuCisKKworRHVtcCB0aGUgdHJhY2ViYWNrcyBhZnRlciBhIHRpbWVvdXQKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy4uIGZ1bmN0aW9uOjogZHVtcF90cmFjZWJhY2tzX2xhdGVyKHRpbWVvdXQsIHJlcGVhdD1GYWxzZSwgZmlsZT1zeXMuc3RkZXJyLCBleGl0PUZhbHNlKQorCisgICBEdW1wIHRoZSB0cmFjZWJhY2tzIG9mIGFsbCB0aHJlYWRzLCBhZnRlciBhIHRpbWVvdXQgb2YgKnRpbWVvdXQqIHNlY29uZHMsIG9yCisgICBldmVyeSAqdGltZW91dCogc2Vjb25kcyBpZiAqcmVwZWF0KiBpcyBgYFRydWVgYC4gIElmICpleGl0KiBpcyBgYFRydWVgYCwgY2FsbAorICAgOmM6ZnVuYzpgX2V4aXRgIHdpdGggc3RhdHVzPTEgYWZ0ZXIgZHVtcGluZyB0aGUgdHJhY2ViYWNrcy4gIChOb3RlCisgICA6YzpmdW5jOmBfZXhpdGAgZXhpdHMgdGhlIHByb2Nlc3MgaW1tZWRpYXRlbHksIHdoaWNoIG1lYW5zIGl0IGRvZXNuJ3QgZG8gYW55CisgICBjbGVhbnVwIGxpa2UgZmx1c2hpbmcgZmlsZSBidWZmZXJzLikgSWYgdGhlIGZ1bmN0aW9uIGlzIGNhbGxlZCB0d2ljZSwgdGhlIG5ldworICAgY2FsbCByZXBsYWNlcyBwcmV2aW91cyBwYXJhbWV0ZXJzIGFuZCByZXNldHMgdGhlIHRpbWVvdXQuIFRoZSB0aW1lciBoYXMgYQorICAgc3ViLXNlY29uZCByZXNvbHV0aW9uLgorCisgICBUaGlzIGZ1bmN0aW9uIGlzIGltcGxlbWVudGVkIHVzaW5nIGEgd2F0Y2hkb2cgdGhyZWFkIGFuZCB0aGVyZWZvcmUgaXMgbm90CisgICBhdmFpbGFibGUgaWYgUHl0aG9uIGlzIGNvbXBpbGVkIHdpdGggdGhyZWFkcyBkaXNhYmxlZC4KKworLi4gZnVuY3Rpb246OiBjYW5jZWxfZHVtcF90cmFjZWJhY2tzX2xhdGVyKCkKKworICAgQ2FuY2VsIHRoZSBsYXN0IGNhbGwgdG8gOmZ1bmM6YGR1bXBfdHJhY2ViYWNrc19sYXRlcmAuCisKKworRHVtcCB0aGUgdHJhY2ViYWNrIG9uIGEgdXNlciBzaWduYWwKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy4uIGZ1bmN0aW9uOjogcmVnaXN0ZXIoc2lnbnVtLCBmaWxlPXN5cy5zdGRlcnIsIGFsbF90aHJlYWRzPVRydWUsIGNoYWluPUZhbHNlKQorCisgICBSZWdpc3RlciBhIHVzZXIgc2lnbmFsOiBpbnN0YWxsIGEgaGFuZGxlciBmb3IgdGhlICpzaWdudW0qIHNpZ25hbCB0byBkdW1wCisgICB0aGUgdHJhY2ViYWNrIG9mIGFsbCB0aHJlYWRzLCBvciBvZiB0aGUgY3VycmVudCB0aHJlYWQgaWYgKmFsbF90aHJlYWRzKiBpcworICAgYGBGYWxzZWBgLCBpbnRvICpmaWxlKi4gQ2FsbCB0aGUgcHJldmlvdXMgaGFuZGxlciBpZiBjaGFpbiBpcyBgYFRydWVgYC4KKworICAgTm90IGF2YWlsYWJsZSBvbiBXaW5kb3dzLgorCisuLiBmdW5jdGlvbjo6IHVucmVnaXN0ZXIoc2lnbnVtKQorCisgICBVbnJlZ2lzdGVyIGEgdXNlciBzaWduYWw6IHVuaW5zdGFsbCB0aGUgaGFuZGxlciBvZiB0aGUgKnNpZ251bSogc2lnbmFsCisgICBpbnN0YWxsZWQgYnkgOmZ1bmM6YHJlZ2lzdGVyYC4gUmV0dXJuIGBgVHJ1ZWBgIGlmIHRoZSBzaWduYWwgd2FzIHJlZ2lzdGVyZWQsCisgICBgYEZhbHNlYGAgb3RoZXJ3aXNlLgorCisgICBOb3QgYXZhaWxhYmxlIG9uIFdpbmRvd3MuCisKKworRmlsZSBkZXNjcmlwdG9yIGlzc3VlCistLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworOmZ1bmM6YGVuYWJsZWAsIDpmdW5jOmBkdW1wX3RyYWNlYmFja3NfbGF0ZXJgIGFuZCA6ZnVuYzpgcmVnaXN0ZXJgIGtlZXAgdGhlCitmaWxlIGRlc2NyaXB0b3Igb2YgdGhlaXIgKmZpbGUqIGFyZ3VtZW50LiBJZiB0aGUgZmlsZSBpcyBjbG9zZWQgYW5kIGl0cyBmaWxlCitkZXNjcmlwdG9yIGlzIHJldXNlZCBieSBhIG5ldyBmaWxlLCBvciBpZiA6ZnVuYzpgb3MuZHVwMmAgaXMgdXNlZCB0byByZXBsYWNlCit0aGUgZmlsZSBkZXNjcmlwdG9yLCB0aGUgdHJhY2ViYWNrIHdpbGwgYmUgd3JpdHRlbiBpbnRvIGEgZGlmZmVyZW50IGZpbGUuIENhbGwKK3RoZXNlIGZ1bmN0aW9ucyBhZ2FpbiBlYWNoIHRpbWUgdGhhdCB0aGUgZmlsZSBpcyByZXBsYWNlZC4KKworCitFeGFtcGxlCistLS0tLS0tCisKK0V4YW1wbGUgb2YgYSBzZWdtZW50YXRpb24gZmF1bHQgb24gTGludXg6IDo6CisKKyAgICAkIHB5dGhvbiAtcSAtWCBmYXVsdGhhbmRsZXIKKyAgICA+Pj4gaW1wb3J0IGN0eXBlcworICAgID4+PiBjdHlwZXMuc3RyaW5nX2F0KDApCisgICAgRmF0YWwgUHl0aG9uIGVycm9yOiBTZWdtZW50YXRpb24gZmF1bHQKKworICAgIEN1cnJlbnQgdGhyZWFkIDB4MDAwMDdmYjg5OWYzOTcwMDoKKyAgICAgIEZpbGUgIi9ob21lL3B5dGhvbi9jcHl0aG9uL0xpYi9jdHlwZXMvX19pbml0X18ucHkiLCBsaW5lIDQ4NiBpbiBzdHJpbmdfYXQKKyAgICAgIEZpbGUgIjxzdGRpbj4iLCBsaW5lIDEgaW4gPG1vZHVsZT4KKyAgICBTZWdtZW50YXRpb24gZmF1bHQKKwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZmNudGwucnN0IGIvRG9jL2xpYnJhcnkvZmNudGwucnN0CmluZGV4IDYxOTI0MDAuLjlhOWNkYzEgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2ZjbnRsLnJzdAorKysgYi9Eb2MvbGlicmFyeS9mY250bC5yc3QKQEAgLTE5LDYgKzE5LDExIEBACiBgYHN5cy5zdGRpbi5maWxlbm8oKWBgLCBvciBhIDpjbGFzczpgaW8uSU9CYXNlYCBvYmplY3QsIHN1Y2ggYXMgYGBzeXMuc3RkaW5gYAogaXRzZWxmLCB3aGljaCBwcm92aWRlcyBhIDptZXRoOmBmaWxlbm9gIHRoYXQgcmV0dXJucyBhIGdlbnVpbmUgZmlsZSBkZXNjcmlwdG9yLgogCisuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgT3BlcmF0aW9ucyBpbiB0aGlzIG1vZHVsZSB1c2VkIHRvIHJhaXNlIGEgOmV4YzpgSU9FcnJvcmAgd2hlcmUgdGhleSBub3cKKyAgIHJhaXNlIGEgOmV4YzpgT1NFcnJvcmAuCisKKwogVGhlIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zOgogCiAKQEAgLTQwLDcgKzQ1LDcgQEAKICAgIGxhcmdlciB0aGFuIDEwMjQgYnl0ZXMsIHRoaXMgaXMgbW9zdCBsaWtlbHkgdG8gcmVzdWx0IGluIGEgc2VnbWVudGF0aW9uCiAgICB2aW9sYXRpb24gb3IgYSBtb3JlIHN1YnRsZSBkYXRhIGNvcnJ1cHRpb24uCiAKLSAgIElmIHRoZSA6YzpmdW5jOmBmY250bGAgZmFpbHMsIGFuIDpleGM6YElPRXJyb3JgIGlzIHJhaXNlZC4KKyAgIElmIHRoZSA6YzpmdW5jOmBmY250bGAgZmFpbHMsIGFuIDpleGM6YE9TRXJyb3JgIGlzIHJhaXNlZC4KIAogCiAuLiBmdW5jdGlvbjo6IGlvY3RsKGZkLCBvcFssIGFyZ1ssIG11dGF0ZV9mbGFnXV0pCkBAIC0xMDcsNyArMTEyLDcgQEAKICAgIFdoZW4gKm9wZXJhdGlvbiogaXMgOmNvbnN0OmBMT0NLX1NIYCBvciA6Y29uc3Q6YExPQ0tfRVhgLCBpdCBjYW4gYWxzbyBiZQogICAgYml0d2lzZSBPUmVkIHdpdGggOmNvbnN0OmBMT0NLX05CYCB0byBhdm9pZCBibG9ja2luZyBvbiBsb2NrIGFjcXVpc2l0aW9uLgogICAgSWYgOmNvbnN0OmBMT0NLX05CYCBpcyB1c2VkIGFuZCB0aGUgbG9jayBjYW5ub3QgYmUgYWNxdWlyZWQsIGFuCi0gICA6ZXhjOmBJT0Vycm9yYCB3aWxsIGJlIHJhaXNlZCBhbmQgdGhlIGV4Y2VwdGlvbiB3aWxsIGhhdmUgYW4gKmVycm5vKgorICAgOmV4YzpgT1NFcnJvcmAgd2lsbCBiZSByYWlzZWQgYW5kIHRoZSBleGNlcHRpb24gd2lsbCBoYXZlIGFuICplcnJubyoKICAgIGF0dHJpYnV0ZSBzZXQgdG8gOmNvbnN0OmBFQUNDRVNgIG9yIDpjb25zdDpgRUFHQUlOYCAoZGVwZW5kaW5nIG9uIHRoZQogICAgb3BlcmF0aW5nIHN5c3RlbTsgZm9yIHBvcnRhYmlsaXR5LCBjaGVjayBmb3IgYm90aCB2YWx1ZXMpLiAgT24gYXQgbGVhc3Qgc29tZQogICAgc3lzdGVtcywgOmNvbnN0OmBMT0NLX0VYYCBjYW4gb25seSBiZSB1c2VkIGlmIHRoZSBmaWxlIGRlc2NyaXB0b3IgcmVmZXJzIHRvIGEKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2ZpbGVpbnB1dC5yc3QgYi9Eb2MvbGlicmFyeS9maWxlaW5wdXQucnN0CmluZGV4IGFjNDQzMTEuLmY4ZWM0MzYgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2ZpbGVpbnB1dC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvZmlsZWlucHV0LnJzdApAQCAtMjgsNyArMjgsMTAgQEAKIEFsbCBmaWxlcyBhcmUgb3BlbmVkIGluIHRleHQgbW9kZSBieSBkZWZhdWx0LCBidXQgeW91IGNhbiBvdmVycmlkZSB0aGlzIGJ5CiBzcGVjaWZ5aW5nIHRoZSAqbW9kZSogcGFyYW1ldGVyIGluIHRoZSBjYWxsIHRvIDpmdW5jOmAuaW5wdXRgIG9yCiA6Y2xhc3M6YEZpbGVJbnB1dGAuICBJZiBhbiBJL08gZXJyb3Igb2NjdXJzIGR1cmluZyBvcGVuaW5nIG9yIHJlYWRpbmcgYSBmaWxlLAotOmV4YzpgSU9FcnJvcmAgaXMgcmFpc2VkLgorOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkLgorCisuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgOmV4YzpgSU9FcnJvcmAgdXNlZCB0byBiZSByYWlzZWQ7IGl0IGlzIG5vdyBhbiBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAogSWYgYGBzeXMuc3RkaW5gYCBpcyB1c2VkIG1vcmUgdGhhbiBvbmNlLCB0aGUgc2Vjb25kIGFuZCBmdXJ0aGVyIHVzZSB3aWxsIHJldHVybgogbm8gbGluZXMsIGV4Y2VwdCBwZXJoYXBzIGZvciBpbnRlcmFjdGl2ZSB1c2UsIG9yIGlmIGl0IGhhcyBiZWVuIGV4cGxpY2l0bHkgcmVzZXQKQEAgLTE2OCwxMCArMTcxLDYgQEAKIGl0IGlzIGRlbGV0ZWQgd2hlbiB0aGUgb3V0cHV0IGZpbGUgaXMgY2xvc2VkLiAgSW4tcGxhY2UgZmlsdGVyaW5nIGlzIGRpc2FibGVkCiB3aGVuIHN0YW5kYXJkIGlucHV0IGlzIHJlYWQuCiAKLS4uIG5vdGU6OgotCi0gICBUaGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCB3b3JrIGZvciBNUy1ET1MgOCszIGZpbGVzeXN0ZW1zLgotCiAKIFRoZSB0d28gZm9sbG93aW5nIG9wZW5pbmcgaG9va3MgYXJlIHByb3ZpZGVkIGJ5IHRoaXMgbW9kdWxlOgogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9mdHBsaWIucnN0IGIvRG9jL2xpYnJhcnkvZnRwbGliLnJzdAppbmRleCA1YmJlZjRmLi4zY2MyOTVhIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9mdHBsaWIucnN0CisrKyBiL0RvYy9saWJyYXJ5L2Z0cGxpYi5yc3QKQEAgLTQwLDcgKzQwLDcgQEAKIAogVGhlIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgaXRlbXM6CiAKLS4uIGNsYXNzOjogRlRQKGhvc3Q9JycsIHVzZXI9JycsIHBhc3N3ZD0nJywgYWNjdD0nJ1ssIHRpbWVvdXRdKQorLi4gY2xhc3M6OiBGVFAoaG9zdD0nJywgdXNlcj0nJywgcGFzc3dkPScnLCBhY2N0PScnLCB0aW1lb3V0PU5vbmUsIHNvdXJjZV9hZGRyZXNzPU5vbmUpCiAKICAgIFJldHVybiBhIG5ldyBpbnN0YW5jZSBvZiB0aGUgOmNsYXNzOmBGVFBgIGNsYXNzLiAgV2hlbiAqaG9zdCogaXMgZ2l2ZW4sIHRoZQogICAgbWV0aG9kIGNhbGwgYGBjb25uZWN0KGhvc3QpYGAgaXMgbWFkZS4gIFdoZW4gKnVzZXIqIGlzIGdpdmVuLCBhZGRpdGlvbmFsbHkKQEAgLTQ4LDcgKzQ4LDggQEAKICAgICphY2N0KiBkZWZhdWx0IHRvIHRoZSBlbXB0eSBzdHJpbmcgd2hlbiBub3QgZ2l2ZW4pLiAgVGhlIG9wdGlvbmFsICp0aW1lb3V0KgogICAgcGFyYW1ldGVyIHNwZWNpZmllcyBhIHRpbWVvdXQgaW4gc2Vjb25kcyBmb3IgYmxvY2tpbmcgb3BlcmF0aW9ucyBsaWtlIHRoZQogICAgY29ubmVjdGlvbiBhdHRlbXB0IChpZiBpcyBub3Qgc3BlY2lmaWVkLCB0aGUgZ2xvYmFsIGRlZmF1bHQgdGltZW91dCBzZXR0aW5nCi0gICB3aWxsIGJlIHVzZWQpLgorICAgd2lsbCBiZSB1c2VkKS4gKnNvdXJjZV9hZGRyZXNzKiBpcyBhIDItdHVwbGUgYGAoaG9zdCwgcG9ydClgYCBmb3IgdGhlIHNvY2tldAorICAgdG8gYmluZCB0byBhcyBpdHMgc291cmNlIGFkZHJlc3MgYmVmb3JlIGNvbm5lY3RpbmcuCiAKICAgIDpjbGFzczpgRlRQYCBjbGFzcyBzdXBwb3J0cyB0aGUgOmtleXdvcmQ6YHdpdGhgIHN0YXRlbWVudC4gSGVyZSBpcyBhIHNhbXBsZQogICAgb24gaG93IHVzaW5nIGl0OgpAQCAtNjgsOCArNjksMTEgQEAKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yCiAgICAgICBTdXBwb3J0IGZvciB0aGUgOmtleXdvcmQ6YHdpdGhgIHN0YXRlbWVudCB3YXMgYWRkZWQuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqc291cmNlX2FkZHJlc3MqIHBhcmFtZXRlciB3YXMgYWRkZWQuCiAKLS4uIGNsYXNzOjogRlRQX1RMUyhob3N0PScnLCB1c2VyPScnLCBwYXNzd2Q9JycsIGFjY3Q9JycsIFtrZXlmaWxlWywgY2VydGZpbGVbLCBjb250ZXh0WywgdGltZW91dF1dXV0pCisKKy4uIGNsYXNzOjogRlRQX1RMUyhob3N0PScnLCB1c2VyPScnLCBwYXNzd2Q9JycsIGFjY3Q9JycsIGtleWZpbGU9Tm9uZSwgY2VydGZpbGU9Tm9uZSwgY29udGV4dD1Ob25lLCB0aW1lb3V0PU5vbmUsIHNvdXJjZV9hZGRyZXNzPU5vbmUpCiAKICAgIEEgOmNsYXNzOmBGVFBgIHN1YmNsYXNzIHdoaWNoIGFkZHMgVExTIHN1cHBvcnQgdG8gRlRQIGFzIGRlc2NyaWJlZCBpbgogICAgOnJmYzpgNDIxN2AuCkBAIC04MCwxMCArODQsMTUgQEAKICAgIHByaXZhdGUga2V5IGFuZCBjZXJ0aWZpY2F0ZSBjaGFpbiBmaWxlIG5hbWUgZm9yIHRoZSBTU0wgY29ubmVjdGlvbi4KICAgICpjb250ZXh0KiBwYXJhbWV0ZXIgaXMgYSA6Y2xhc3M6YHNzbC5TU0xDb250ZXh0YCBvYmplY3Qgd2hpY2ggYWxsb3dzCiAgICBidW5kbGluZyBTU0wgY29uZmlndXJhdGlvbiBvcHRpb25zLCBjZXJ0aWZpY2F0ZXMgYW5kIHByaXZhdGUga2V5cyBpbnRvIGEKLSAgIHNpbmdsZSAocG90ZW50aWFsbHkgbG9uZy1saXZlZCkgc3RydWN0dXJlLgorICAgc2luZ2xlIChwb3RlbnRpYWxseSBsb25nLWxpdmVkKSBzdHJ1Y3R1cmUuICpzb3VyY2VfYWRkcmVzcyogaXMgYSAyLXR1cGxlCisgICBgYChob3N0LCBwb3J0KWBgIGZvciB0aGUgc29ja2V0IHRvIGJpbmQgdG8gYXMgaXRzIHNvdXJjZSBhZGRyZXNzIGJlZm9yZQorICAgY29ubmVjdGluZy4KIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqc291cmNlX2FkZHJlc3MqIHBhcmFtZXRlciB3YXMgYWRkZWQuCisKICAgIEhlcmUncyBhIHNhbXBsZSBzZXNzaW9uIHVzaW5nIHRoZSA6Y2xhc3M6YEZUUF9UTFNgIGNsYXNzOgogCiAgICA+Pj4gZnJvbSBmdHBsaWIgaW1wb3J0IEZUUF9UTFMKQEAgLTEzNSw4ICsxNDQsNyBAQAogICAgVGhlIHNldCBvZiBhbGwgZXhjZXB0aW9ucyAoYXMgYSB0dXBsZSkgdGhhdCBtZXRob2RzIG9mIDpjbGFzczpgRlRQYAogICAgaW5zdGFuY2VzIG1heSByYWlzZSBhcyBhIHJlc3VsdCBvZiBwcm9ibGVtcyB3aXRoIHRoZSBGVFAgY29ubmVjdGlvbiAoYXMKICAgIG9wcG9zZWQgdG8gcHJvZ3JhbW1pbmcgZXJyb3JzIG1hZGUgYnkgdGhlIGNhbGxlcikuICBUaGlzIHNldCBpbmNsdWRlcyB0aGUKLSAgIGZvdXIgZXhjZXB0aW9ucyBsaXN0ZWQgYWJvdmUgYXMgd2VsbCBhcyA6ZXhjOmBzb2NrZXQuZXJyb3JgIGFuZAotICAgOmV4YzpgSU9FcnJvcmAuCisgICBmb3VyIGV4Y2VwdGlvbnMgbGlzdGVkIGFib3ZlIGFzIHdlbGwgYXMgOmV4YzpgT1NFcnJvcmAuCiAKIAogLi4gc2VlYWxzbzo6CkBAIC0xNzQsNyArMTgyLDcgQEAKICAgIGRlYnVnZ2luZyBvdXRwdXQsIGxvZ2dpbmcgZWFjaCBsaW5lIHNlbnQgYW5kIHJlY2VpdmVkIG9uIHRoZSBjb250cm9sIGNvbm5lY3Rpb24uCiAKIAotLi4gbWV0aG9kOjogRlRQLmNvbm5lY3QoaG9zdD0nJywgcG9ydD0wWywgdGltZW91dF0pCisuLiBtZXRob2Q6OiBGVFAuY29ubmVjdChob3N0PScnLCBwb3J0PTAsIHRpbWVvdXQ9Tm9uZSwgc291cmNlX2FkZHJlc3M9Tm9uZSkKIAogICAgQ29ubmVjdCB0byB0aGUgZ2l2ZW4gaG9zdCBhbmQgcG9ydC4gIFRoZSBkZWZhdWx0IHBvcnQgbnVtYmVyIGlzIGBgMjFgYCwgYXMKICAgIHNwZWNpZmllZCBieSB0aGUgRlRQIHByb3RvY29sIHNwZWNpZmljYXRpb24uICBJdCBpcyByYXJlbHkgbmVlZGVkIHRvIHNwZWNpZnkgYQpAQCAtMTgyLDEwICsxOTAsMTQgQEAKICAgIGluc3RhbmNlOyBpdCBzaG91bGQgbm90IGJlIGNhbGxlZCBhdCBhbGwgaWYgYSBob3N0IHdhcyBnaXZlbiB3aGVuIHRoZSBpbnN0YW5jZQogICAgd2FzIGNyZWF0ZWQuICBBbGwgb3RoZXIgbWV0aG9kcyBjYW4gb25seSBiZSB1c2VkIGFmdGVyIGEgY29ubmVjdGlvbiBoYXMgYmVlbgogICAgbWFkZS4KLQogICAgVGhlIG9wdGlvbmFsICp0aW1lb3V0KiBwYXJhbWV0ZXIgc3BlY2lmaWVzIGEgdGltZW91dCBpbiBzZWNvbmRzIGZvciB0aGUKICAgIGNvbm5lY3Rpb24gYXR0ZW1wdC4gSWYgbm8gKnRpbWVvdXQqIGlzIHBhc3NlZCwgdGhlIGdsb2JhbCBkZWZhdWx0IHRpbWVvdXQKICAgIHNldHRpbmcgd2lsbCBiZSB1c2VkLgorICAgKnNvdXJjZV9hZGRyZXNzKiBpcyBhIDItdHVwbGUgYGAoaG9zdCwgcG9ydClgYCBmb3IgdGhlIHNvY2tldCB0byBiaW5kIHRvIGFzCisgICBpdHMgc291cmNlIGFkZHJlc3MgYmVmb3JlIGNvbm5lY3RpbmcuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqc291cmNlX2FkZHJlc3MqIHBhcmFtZXRlciB3YXMgYWRkZWQuCiAKIAogLi4gbWV0aG9kOjogRlRQLmdldHdlbGNvbWUoKQpAQCAtMjQxLDEzICsyNTMsMTIgQEAKIAogICAgUmV0cmlldmUgYSBmaWxlIG9yIGRpcmVjdG9yeSBsaXN0aW5nIGluIEFTQ0lJIHRyYW5zZmVyIG1vZGUuICAqY21kKiBzaG91bGQgYmUKICAgIGFuIGFwcHJvcHJpYXRlIGBgUkVUUmBgIGNvbW1hbmQgKHNlZSA6bWV0aDpgcmV0cmJpbmFyeWApIG9yIGEgY29tbWFuZCBzdWNoIGFzCi0gICBgYExJU1RgYCwgYGBOTFNUYGAgb3IgYGBNTFNEYGAgKHVzdWFsbHkganVzdCB0aGUgc3RyaW5nIGBgJ0xJU1QnYGApLgorICAgYGBMSVNUYGAgb3IgYGBOTFNUYGAgKHVzdWFsbHkganVzdCB0aGUgc3RyaW5nIGBgJ0xJU1QnYGApLgogICAgYGBMSVNUYGAgcmV0cmlldmVzIGEgbGlzdCBvZiBmaWxlcyBhbmQgaW5mb3JtYXRpb24gYWJvdXQgdGhvc2UgZmlsZXMuCi0gICBgYE5MU1RgYCByZXRyaWV2ZXMgYSBsaXN0IG9mIGZpbGUgbmFtZXMuICBPbiBzb21lIHNlcnZlcnMsIGBgTUxTRGBgIHJldHJpZXZlcwotICAgYSBtYWNoaW5lIHJlYWRhYmxlIGxpc3Qgb2YgZmlsZXMgYW5kIGluZm9ybWF0aW9uIGFib3V0IHRob3NlIGZpbGVzLiAgVGhlCi0gICAqY2FsbGJhY2sqIGZ1bmN0aW9uIGlzIGNhbGxlZCBmb3IgZWFjaCBsaW5lIHdpdGggYSBzdHJpbmcgYXJndW1lbnQgY29udGFpbmluZwotICAgdGhlIGxpbmUgd2l0aCB0aGUgdHJhaWxpbmcgQ1JMRiBzdHJpcHBlZC4gIFRoZSBkZWZhdWx0ICpjYWxsYmFjayogcHJpbnRzIHRoZQotICAgbGluZSB0byBgYHN5cy5zdGRvdXRgYC4KKyAgIGBgTkxTVGBgIHJldHJpZXZlcyBhIGxpc3Qgb2YgZmlsZSBuYW1lcy4KKyAgIFRoZSAqY2FsbGJhY2sqIGZ1bmN0aW9uIGlzIGNhbGxlZCBmb3IgZWFjaCBsaW5lIHdpdGggYSBzdHJpbmcgYXJndW1lbnQKKyAgIGNvbnRhaW5pbmcgdGhlIGxpbmUgd2l0aCB0aGUgdHJhaWxpbmcgQ1JMRiBzdHJpcHBlZC4gIFRoZSBkZWZhdWx0ICpjYWxsYmFjayoKKyAgIHByaW50cyB0aGUgbGluZSB0byBgYHN5cy5zdGRvdXRgYC4KIAogCiAuLiBtZXRob2Q6OiBGVFAuc2V0X3Bhc3YoYm9vbGVhbikKQEAgLTMwNyw2ICszMTgsMjAgQEAKICAgIGluIDptZXRoOmB0cmFuc2ZlcmNtZGAuCiAKIAorLi4gbWV0aG9kOjogRlRQLm1sc2QocGF0aD0iIiwgZmFjdHM9W10pCisKKyAgIExpc3QgYSBkaXJlY3RvcnkgaW4gYSBzdGFuZGFyZGl6ZWQgZm9ybWF0IGJ5IHVzaW5nIE1MU0QgY29tbWFuZAorICAgKDpyZmM6YDM2NTlgKS4gIElmICpwYXRoKiBpcyBvbWl0dGVkIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBpcyBhc3N1bWVkLgorICAgKmZhY3RzKiBpcyBhIGxpc3Qgb2Ygc3RyaW5ncyByZXByZXNlbnRpbmcgdGhlIHR5cGUgb2YgaW5mb3JtYXRpb24gZGVzaXJlZAorICAgKGUuZy4gYGBbInR5cGUiLCAic2l6ZSIsICJwZXJtIl1gYCkuICBSZXR1cm4gYSBnZW5lcmF0b3Igb2JqZWN0IHlpZWxkaW5nIGEKKyAgIHR1cGxlIG9mIHR3byBlbGVtZW50cyBmb3IgZXZlcnkgZmlsZSBmb3VuZCBpbiBwYXRoLiAgRmlyc3QgZWxlbWVudCBpcyB0aGUKKyAgIGZpbGUgbmFtZSwgdGhlIHNlY29uZCBvbmUgaXMgYSBkaWN0aW9uYXJ5IGNvbnRhaW5pbmcgZmFjdHMgYWJvdXQgdGhlIGZpbGUKKyAgIG5hbWUuICBDb250ZW50IG9mIHRoaXMgZGljdGlvbmFyeSBtaWdodCBiZSBsaW1pdGVkIGJ5IHRoZSAqZmFjdHMqIGFyZ3VtZW50CisgICBidXQgc2VydmVyIGlzIG5vdCBndWFyYW50ZWVkIHRvIHJldHVybiBhbGwgcmVxdWVzdGVkIGZhY3RzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBtZXRob2Q6OiBGVFAubmxzdChhcmd1bWVudFssIC4uLl0pCiAKICAgIFJldHVybiBhIGxpc3Qgb2YgZmlsZSBuYW1lcyBhcyByZXR1cm5lZCBieSB0aGUgYGBOTFNUYGAgY29tbWFuZC4gIFRoZQpAQCAtMzE0LDYgKzMzOSw4IEBACiAgICBkaXJlY3RvcnkpLiAgTXVsdGlwbGUgYXJndW1lbnRzIGNhbiBiZSB1c2VkIHRvIHBhc3Mgbm9uLXN0YW5kYXJkIG9wdGlvbnMgdG8KICAgIHRoZSBgYE5MU1RgYCBjb21tYW5kLgogCisgICAuLiBkZXByZWNhdGVkOjogMy4zIHVzZSA6bWV0aDpgbWxzZGAgaW5zdGVhZC4KKwogCiAuLiBtZXRob2Q6OiBGVFAuZGlyKGFyZ3VtZW50WywgLi4uXSkKIApAQCAtMzI0LDYgKzM1MSw4IEBACiAgICBhcyBhICpjYWxsYmFjayogZnVuY3Rpb24gYXMgZm9yIDptZXRoOmByZXRybGluZXNgOyB0aGUgZGVmYXVsdCBwcmludHMgdG8KICAgIGBgc3lzLnN0ZG91dGBgLiAgVGhpcyBtZXRob2QgcmV0dXJucyBgYE5vbmVgYC4KIAorICAgLi4gZGVwcmVjYXRlZDo6IDMuMyB1c2UgOm1ldGg6YG1sc2RgIGluc3RlYWQuCisKIAogLi4gbWV0aG9kOjogRlRQLnJlbmFtZShmcm9tbmFtZSwgdG9uYW1lKQogCkBAIC0zOTYsNiArNDI1LDE0IEBACiAKICAgIFNldCB1cCBzZWN1cmUgY29udHJvbCBjb25uZWN0aW9uIGJ5IHVzaW5nIFRMUyBvciBTU0wsIGRlcGVuZGluZyBvbiB3aGF0IHNwZWNpZmllZCBpbiA6bWV0aDpgc3NsX3ZlcnNpb25gIGF0dHJpYnV0ZS4KIAorLi4gbWV0aG9kOjogRlRQX1RMUy5jY2MoKQorCisgICBSZXZlcnQgY29udHJvbCBjaGFubmVsIGJhY2sgdG8gcGxhaW50ZXh0LiAgVGhpcyBjYW4gYmUgdXNlZnVsIHRvIHRha2UKKyAgIGFkdmFudGFnZSBvZiBmaXJld2FsbHMgdGhhdCBrbm93IGhvdyB0byBoYW5kbGUgTkFUIHdpdGggbm9uLXNlY3VyZSBGVFAKKyAgIHdpdGhvdXQgb3BlbmluZyBmaXhlZCBwb3J0cy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIC4uIG1ldGhvZDo6IEZUUF9UTFMucHJvdF9wKCkKIAogICAgU2V0IHVwIHNlY3VyZSBkYXRhIGNvbm5lY3Rpb24uCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9mdW5jdGlvbnMucnN0IGIvRG9jL2xpYnJhcnkvZnVuY3Rpb25zLnJzdAppbmRleCBmODM1ZGNmLi5lNGIxNGI4IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9mdW5jdGlvbnMucnN0CisrKyBiL0RvYy9saWJyYXJ5L2Z1bmN0aW9ucy5yc3QKQEAgLTE1MiwxMCArMTUyLDYgQEAKICAgIDEsMTE0LDExMSAoMHgxMEZGRkYgaW4gYmFzZSAxNikuICA6ZXhjOmBWYWx1ZUVycm9yYCB3aWxsIGJlIHJhaXNlZCBpZiAqaSogaXMKICAgIG91dHNpZGUgdGhhdCByYW5nZS4KIAotICAgTm90ZSB0aGF0IG9uIG5hcnJvdyBVbmljb2RlIGJ1aWxkcywgdGhlIHJlc3VsdCBpcyBhIHN0cmluZyBvZgotICAgbGVuZ3RoIHR3byBmb3IgKmkqIGdyZWF0ZXIgdGhhbiA2NSw1MzUgKDB4RkZGRiBpbiBoZXhhZGVjaW1hbCkuCi0KLQogCiAuLiBmdW5jdGlvbjo6IGNsYXNzbWV0aG9kKGZ1bmN0aW9uKQogCkBAIC03ODAsMTAgKzc3NiwxMCBAQAogICAgOm1ldGg6YF9faW5kZXhfX2AgbWV0aG9kIHRoYXQgcmV0dXJucyBhbiBpbnRlZ2VyLgogCiAKLS4uIGZ1bmN0aW9uOjogb3BlbihmaWxlLCBtb2RlPSdyJywgYnVmZmVyaW5nPS0xLCBlbmNvZGluZz1Ob25lLCBlcnJvcnM9Tm9uZSwgbmV3bGluZT1Ob25lLCBjbG9zZWZkPVRydWUpCisuLiBmdW5jdGlvbjo6IG9wZW4oZmlsZSwgbW9kZT0ncicsIGJ1ZmZlcmluZz0tMSwgZW5jb2Rpbmc9Tm9uZSwgZXJyb3JzPU5vbmUsIG5ld2xpbmU9Tm9uZSwgY2xvc2VmZD1UcnVlLCBvcGVuZXI9Tm9uZSkKIAogICAgT3BlbiAqZmlsZSogYW5kIHJldHVybiBhIGNvcnJlc3BvbmRpbmcgc3RyZWFtLiAgSWYgdGhlIGZpbGUgY2Fubm90IGJlIG9wZW5lZCwKLSAgIGFuIDpleGM6YElPRXJyb3JgIGlzIHJhaXNlZC4KKyAgIGFuIDpleGM6YE9TRXJyb3JgIGlzIHJhaXNlZC4KIAogICAgKmZpbGUqIGlzIGVpdGhlciBhIHN0cmluZyBvciBieXRlcyBvYmplY3QgZ2l2aW5nIHRoZSBwYXRobmFtZSAoYWJzb2x1dGUgb3IKICAgIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5KSBvZiB0aGUgZmlsZSB0byBiZSBvcGVuZWQgb3IKQEAgLTg4Nyw2ICs4ODMsMTUgQEAKICAgIGNsb3NlZC4gIElmIGEgZmlsZW5hbWUgaXMgZ2l2ZW4gKmNsb3NlZmQqIGhhcyBubyBlZmZlY3QgYW5kIG11c3QgYmUgYGBUcnVlYGAKICAgICh0aGUgZGVmYXVsdCkuCiAKKyAgIEEgY3VzdG9tIG9wZW5lciBjYW4gYmUgdXNlZCBieSBwYXNzaW5nIGEgY2FsbGFibGUgYXMgKm9wZW5lciouIFRoZSB1bmRlcmx5aW5nCisgICBmaWxlIGRlc2NyaXB0b3IgZm9yIHRoZSBmaWxlIG9iamVjdCBpcyB0aGVuIG9idGFpbmVkIGJ5IGNhbGxpbmcgKm9wZW5lciogd2l0aAorICAgKCpmaWxlKiwgKmZsYWdzKikuICpvcGVuZXIqIG11c3QgcmV0dXJuIGFuIG9wZW4gZmlsZSBkZXNjcmlwdG9yIChwYXNzaW5nCisgICA6bW9kOmBvcy5vcGVuYCBhcyAqb3BlbmVyKiByZXN1bHRzIGluIGZ1bmN0aW9uYWxpdHkgc2ltaWxhciB0byBwYXNzaW5nCisgICBgYE5vbmVgYCkuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKm9wZW5lciogcGFyYW1ldGVyIHdhcyBhZGRlZC4KKwogICAgVGhlIHR5cGUgb2YgZmlsZSBvYmplY3QgcmV0dXJuZWQgYnkgdGhlIDpmdW5jOmBvcGVuYCBmdW5jdGlvbiBkZXBlbmRzIG9uIHRoZQogICAgbW9kZS4gIFdoZW4gOmZ1bmM6YG9wZW5gIGlzIHVzZWQgdG8gb3BlbiBhIGZpbGUgaW4gYSB0ZXh0IG1vZGUgKGBgJ3cnYGAsCiAgICBgYCdyJ2BgLCBgYCd3dCdgYCwgYGAncnQnYGAsIGV0Yy4pLCBpdCByZXR1cm5zIGEgc3ViY2xhc3Mgb2YKQEAgLTkxMiw2ICs5MTcsOSBAQAogICAgKHdoZXJlIDpmdW5jOmBvcGVuYCBpcyBkZWNsYXJlZCksIDptb2Q6YG9zYCwgOm1vZDpgb3MucGF0aGAsIDptb2Q6YHRlbXBmaWxlYCwKICAgIGFuZCA6bW9kOmBzaHV0aWxgLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgOmV4YzpgSU9FcnJvcmAgdXNlZCB0byBiZSByYWlzZWQsIGl0IGlzIG5vdyBhbiBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KKwogCiAuLiBYWFggd29ya3MgZm9yIGJ5dGVzIHRvbywgYnV0IHNob3VsZCBpdD8KIC4uIGZ1bmN0aW9uOjogb3JkKGMpCkBAIC05MjEsOSArOTI5LDYgQEAKICAgIHBvaW50IG9mIHRoYXQgY2hhcmFjdGVyLiAgRm9yIGV4YW1wbGUsIGBgb3JkKCdhJylgYCByZXR1cm5zIHRoZSBpbnRlZ2VyIGBgOTdgYAogICAgYW5kIGBgb3JkKCdcdTIwMjAnKWBgIHJldHVybnMgYGA4MjI0YGAuICBUaGlzIGlzIHRoZSBpbnZlcnNlIG9mIDpmdW5jOmBjaHJgLgogCi0gICBPbiB3aWRlIFVuaWNvZGUgYnVpbGRzLCBpZiB0aGUgYXJndW1lbnQgbGVuZ3RoIGlzIG5vdCBvbmUsIGEKLSAgIDpleGM6YFR5cGVFcnJvcmAgd2lsbCBiZSByYWlzZWQuICBPbiBuYXJyb3cgVW5pY29kZSBidWlsZHMsIHN0cmluZ3MKLSAgIG9mIGxlbmd0aCB0d28gYXJlIGFjY2VwdGVkIHdoZW4gdGhleSBmb3JtIGEgVVRGLTE2IHN1cnJvZ2F0ZSBwYWlyLgogCiAuLiBmdW5jdGlvbjo6IHBvdyh4LCB5Wywgel0pCiAKQEAgLTk0MSw3ICs5NDYsNyBAQAogICAgbXVzdCBiZSBvZiBpbnRlZ2VyIHR5cGVzLCBhbmQgKnkqIG11c3QgYmUgbm9uLW5lZ2F0aXZlLgogCiAKLS4uIGZ1bmN0aW9uOjogcHJpbnQoW29iamVjdCwgLi4uXSwgKiwgc2VwPScgJywgZW5kPSdcXG4nLCBmaWxlPXN5cy5zdGRvdXQpCisuLiBmdW5jdGlvbjo6IHByaW50KFtvYmplY3QsIC4uLl0sICosIHNlcD0nICcsIGVuZD0nXFxuJywgZmlsZT1zeXMuc3Rkb3V0LCBmbHVzaD1GYWxzZSkKIAogICAgUHJpbnQgKm9iamVjdCpcKHMpIHRvIHRoZSBzdHJlYW0gKmZpbGUqLCBzZXBhcmF0ZWQgYnkgKnNlcCogYW5kIGZvbGxvd2VkIGJ5CiAgICAqZW5kKi4gICpzZXAqLCAqZW5kKiBhbmQgKmZpbGUqLCBpZiBwcmVzZW50LCBtdXN0IGJlIGdpdmVuIGFzIGtleXdvcmQKQEAgLTk1NCw5ICs5NTksMTIgQEAKICAgICplbmQqLgogCiAgICBUaGUgKmZpbGUqIGFyZ3VtZW50IG11c3QgYmUgYW4gb2JqZWN0IHdpdGggYSBgYHdyaXRlKHN0cmluZylgYCBtZXRob2Q7IGlmIGl0Ci0gICBpcyBub3QgcHJlc2VudCBvciBgYE5vbmVgYCwgOmRhdGE6YHN5cy5zdGRvdXRgIHdpbGwgYmUgdXNlZC4gT3V0cHV0IGJ1ZmZlcmluZwotICAgaXMgZGV0ZXJtaW5lZCBieSAqZmlsZSouIFVzZSBgYGZpbGUuZmx1c2goKWBgIHRvIGVuc3VyZSwgZm9yIGluc3RhbmNlLAotICAgaW1tZWRpYXRlIGFwcGVhcmFuY2Ugb24gYSBzY3JlZW4uCisgICBpcyBub3QgcHJlc2VudCBvciBgYE5vbmVgYCwgOmRhdGE6YHN5cy5zdGRvdXRgIHdpbGwgYmUgdXNlZC4gIFdoZXRoZXIgb3V0cHV0CisgICBpcyBidWZmZXJlZCBpcyB1c3VhbGx5IGRldGVybWluZWQgYnkgKmZpbGUqLCBidXQgaWYgdGhlICAqZmx1c2gqIGtleXdvcmQKKyAgIGFyZ3VtZW50IGlzIHRydWUsIHRoZSBzdHJlYW0gaXMgZm9yY2libHkgZmx1c2hlZC4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZGVkIHRoZSAqZmx1c2gqIGtleXdvcmQgYXJndW1lbnQuCiAKIAogLi4gZnVuY3Rpb246OiBwcm9wZXJ0eShmZ2V0PU5vbmUsIGZzZXQ9Tm9uZSwgZmRlbD1Ob25lLCBkb2M9Tm9uZSkKQEAgLTEwMzksNyArMTA0Nyw5IEBACiAgICAuLi5dYGAuICBJZiAqc3RlcCogaXMgcG9zaXRpdmUsIHRoZSBsYXN0IGVsZW1lbnQgaXMgdGhlIGxhcmdlc3QgYGBzdGFydCArIGkgKgogICAgc3RlcGBgIGxlc3MgdGhhbiAqc3RvcCo7IGlmICpzdGVwKiBpcyBuZWdhdGl2ZSwgdGhlIGxhc3QgZWxlbWVudCBpcyB0aGUKICAgIHNtYWxsZXN0IGBgc3RhcnQgKyBpICogc3RlcGBgIGdyZWF0ZXIgdGhhbiAqc3RvcCouICAqc3RlcCogbXVzdCBub3QgYmUgemVybwotICAgKG9yIGVsc2UgOmV4YzpgVmFsdWVFcnJvcmAgaXMgcmFpc2VkKS4gIEV4YW1wbGU6CisgICAob3IgZWxzZSA6ZXhjOmBWYWx1ZUVycm9yYCBpcyByYWlzZWQpLiAgUmFuZ2Ugb2JqZWN0cyBoYXZlIHJlYWQtb25seSBkYXRhCisgICBhdHRyaWJ1dGVzIDphdHRyOmBzdGFydGAsIDphdHRyOmBzdG9wYCBhbmQgOmF0dHI6YHN0ZXBgIHdoaWNoIHJldHVybiB0aGUKKyAgIGFyZ3VtZW50IHZhbHVlcyAob3IgdGhlaXIgZGVmYXVsdCkuICBFeGFtcGxlOgogCiAgICAgICA+Pj4gbGlzdChyYW5nZSgxMCkpCiAgICAgICBbMCwgMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOV0KQEAgLTEwNzYsNiArMTA4NiwxMyBAQAogICAgICAgPj4+IHJbLTFdCiAgICAgICAxOAogCisgICBUZXN0aW5nIHJhbmdlIG9iamVjdHMgZm9yIGVxdWFsaXR5IHdpdGggYGA9PWBgIGFuZCBgYCE9YGAgY29tcGFyZXMKKyAgIHRoZW0gYXMgc2VxdWVuY2VzLiAgVGhhdCBpcywgdHdvIHJhbmdlIG9iamVjdHMgYXJlIGNvbnNpZGVyZWQgZXF1YWwgaWYKKyAgIHRoZXkgcmVwcmVzZW50IHRoZSBzYW1lIHNlcXVlbmNlIG9mIHZhbHVlcy4gIChOb3RlIHRoYXQgdHdvIHJhbmdlCisgICBvYmplY3RzIHRoYXQgY29tcGFyZSBlcXVhbCBtaWdodCBoYXZlIGRpZmZlcmVudCA6YXR0cjpgc3RhcnRgLAorICAgOmF0dHI6YHN0b3BgIGFuZCA6YXR0cjpgc3RlcGAgYXR0cmlidXRlcywgZm9yIGV4YW1wbGUgYGByYW5nZSgwKSA9PQorICAgcmFuZ2UoMiwgMSwgMylgYCBvciBgYHJhbmdlKDAsIDMsIDIpID09IHJhbmdlKDAsIDQsIDIpYGAuKQorCiAgICBSYW5nZXMgY29udGFpbmluZyBhYnNvbHV0ZSB2YWx1ZXMgbGFyZ2VyIHRoYW4gOmRhdGE6YHN5cy5tYXhzaXplYCBhcmUgcGVybWl0dGVkCiAgICBidXQgc29tZSBmZWF0dXJlcyAoc3VjaCBhcyA6ZnVuYzpgbGVuYCkgd2lsbCByYWlzZSA6ZXhjOmBPdmVyZmxvd0Vycm9yYC4KIApAQCAtMTA4NSw2ICsxMTAyLDE0IEBACiAgICAgICBUZXN0IGludGVnZXJzIGZvciBtZW1iZXJzaGlwIGluIGNvbnN0YW50IHRpbWUgaW5zdGVhZCBvZiBpdGVyYXRpbmcKICAgICAgIHRocm91Z2ggYWxsIGl0ZW1zLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgRGVmaW5lICc9PScgYW5kICchPScgdG8gY29tcGFyZSByYW5nZSBvYmplY3RzIGJhc2VkIG9uIHRoZQorICAgICAgc2VxdWVuY2Ugb2YgdmFsdWVzIHRoZXkgZGVmaW5lIChpbnN0ZWFkIG9mIGNvbXBhcmluZyBiYXNlZCBvbgorICAgICAgb2JqZWN0IGlkZW50aXR5KS4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisgICAgICBUaGUgOmF0dHI6YHN0YXJ0YCwgOmF0dHI6YHN0b3BgIGFuZCA6YXR0cjpgc3RlcGAgYXR0cmlidXRlcy4KKwogCiAuLiBmdW5jdGlvbjo6IHJlcHIob2JqZWN0KQogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9mdW5jdG9vbHMucnN0IGIvRG9jL2xpYnJhcnkvZnVuY3Rvb2xzLnJzdAppbmRleCAwNDc0M2QzLi4wNWY5N2IxIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9mdW5jdG9vbHMucnN0CisrKyBiL0RvYy9saWJyYXJ5L2Z1bmN0b29scy5yc3QKQEAgLTQwLDcgKzQwLDcgQEAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCiAKLS4uIGRlY29yYXRvcjo6IGxydV9jYWNoZShtYXhzaXplPTEwMCkKKy4uIGRlY29yYXRvcjo6IGxydV9jYWNoZShtYXhzaXplPTEwMCwgdHlwZWQ9RmFsc2UpCiAKICAgIERlY29yYXRvciB0byB3cmFwIGEgZnVuY3Rpb24gd2l0aCBhIG1lbW9pemluZyBjYWxsYWJsZSB0aGF0IHNhdmVzIHVwIHRvIHRoZQogICAgKm1heHNpemUqIG1vc3QgcmVjZW50IGNhbGxzLiAgSXQgY2FuIHNhdmUgdGltZSB3aGVuIGFuIGV4cGVuc2l2ZSBvciBJL08gYm91bmQKQEAgLTUyLDYgKzUyLDEwIEBACiAgICBJZiAqbWF4c2l6ZSogaXMgc2V0IHRvIE5vbmUsIHRoZSBMUlUgZmVhdHVyZSBpcyBkaXNhYmxlZCBhbmQgdGhlIGNhY2hlCiAgICBjYW4gZ3JvdyB3aXRob3V0IGJvdW5kLgogCisgICBJZiAqdHlwZWQqIGlzIHNldCB0byBUcnVlLCBmdW5jdGlvbiBhcmd1bWVudHMgb2YgZGlmZmVyZW50IHR5cGVzIHdpbGwgYmUKKyAgIGNhY2hlZCBzZXBhcmF0ZWx5LiAgRm9yIGV4YW1wbGUsIGBgZigzKWBgIGFuZCBgYGYoMy4wKWBgIHdpbGwgYmUgdHJlYXRlZAorICAgYXMgZGlzdGluY3QgY2FsbHMgd2l0aCBkaXN0aW5jdCByZXN1bHRzLgorCiAgICBUbyBoZWxwIG1lYXN1cmUgdGhlIGVmZmVjdGl2ZW5lc3Mgb2YgdGhlIGNhY2hlIGFuZCB0dW5lIHRoZSAqbWF4c2l6ZSoKICAgIHBhcmFtZXRlciwgdGhlIHdyYXBwZWQgZnVuY3Rpb24gaXMgaW5zdHJ1bWVudGVkIHdpdGggYSA6ZnVuYzpgY2FjaGVfaW5mb2AKICAgIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIDp0ZXJtOmBuYW1lZCB0dXBsZWAgc2hvd2luZyAqaGl0cyosICptaXNzZXMqLApAQCAtNjcsOCArNzEsOCBAQAogCiAgICBBbiBgTFJVIChsZWFzdCByZWNlbnRseSB1c2VkKSBjYWNoZQogICAgPGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ2FjaGVfYWxnb3JpdGhtcyNMZWFzdF9SZWNlbnRseV9Vc2VkPmBfIHdvcmtzCi0gICBiZXN0IHdoZW4gbW9yZSByZWNlbnQgY2FsbHMgYXJlIHRoZSBiZXN0IHByZWRpY3RvcnMgb2YgdXBjb21pbmcgY2FsbHMgKGZvcgotICAgZXhhbXBsZSwgdGhlIG1vc3QgcG9wdWxhciBhcnRpY2xlcyBvbiBhIG5ld3Mgc2VydmVyIHRlbmQgdG8gY2hhbmdlIGRhaWx5KS4KKyAgIGJlc3Qgd2hlbiB0aGUgbW9zdCByZWNlbnQgY2FsbHMgYXJlIHRoZSBiZXN0IHByZWRpY3RvcnMgb2YgdXBjb21pbmcgY2FsbHMgKGZvcgorICAgZXhhbXBsZSwgdGhlIG1vc3QgcG9wdWxhciBhcnRpY2xlcyBvbiBhIG5ld3Mgc2VydmVyIHRlbmQgdG8gY2hhbmdlIGVhY2ggZGF5KS4KICAgIFRoZSBjYWNoZSdzIHNpemUgbGltaXQgYXNzdXJlcyB0aGF0IHRoZSBjYWNoZSBkb2VzIG5vdCBncm93IHdpdGhvdXQgYm91bmQgb24KICAgIGxvbmctcnVubmluZyBwcm9jZXNzZXMgc3VjaCBhcyB3ZWIgc2VydmVycy4KIApAQCAtMTExLDYgKzExNSw5IEBACiAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQWRkZWQgdGhlICp0eXBlZCogb3B0aW9uLgorCiAuLiBkZWNvcmF0b3I6OiB0b3RhbF9vcmRlcmluZwogCiAgICBHaXZlbiBhIGNsYXNzIGRlZmluaW5nIG9uZSBvciBtb3JlIHJpY2ggY29tcGFyaXNvbiBvcmRlcmluZyBtZXRob2RzLCB0aGlzCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9nZXR0ZXh0LnJzdCBiL0RvYy9saWJyYXJ5L2dldHRleHQucnN0CmluZGV4IDBmYTAyMmMuLjgyNTMxMWIgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2dldHRleHQucnN0CisrKyBiL0RvYy9saWJyYXJ5L2dldHRleHQucnN0CkBAIC0xODUsMTAgKzE4NSwxMyBAQAogICAgdHJhbnNsYXRpb24gb2JqZWN0IGZyb20gdGhlIGNhY2hlOyB0aGUgYWN0dWFsIGluc3RhbmNlIGRhdGEgaXMgc3RpbGwgc2hhcmVkIHdpdGgKICAgIHRoZSBjYWNoZS4KIAotICAgSWYgbm8gOmZpbGU6YC5tb2AgZmlsZSBpcyBmb3VuZCwgdGhpcyBmdW5jdGlvbiByYWlzZXMgOmV4YzpgSU9FcnJvcmAgaWYKKyAgIElmIG5vIDpmaWxlOmAubW9gIGZpbGUgaXMgZm91bmQsIHRoaXMgZnVuY3Rpb24gcmFpc2VzIDpleGM6YE9TRXJyb3JgIGlmCiAgICAqZmFsbGJhY2sqIGlzIGZhbHNlICh3aGljaCBpcyB0aGUgZGVmYXVsdCksIGFuZCByZXR1cm5zIGEKICAgIDpjbGFzczpgTnVsbFRyYW5zbGF0aW9uc2AgaW5zdGFuY2UgaWYgKmZhbGxiYWNrKiBpcyB0cnVlLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgOmV4YzpgSU9FcnJvcmAgdXNlZCB0byBiZSByYWlzZWQgaW5zdGVhZCBvZiA6ZXhjOmBPU0Vycm9yYC4KKwogCiAuLiBmdW5jdGlvbjo6IGluc3RhbGwoZG9tYWluLCBsb2NhbGVkaXI9Tm9uZSwgY29kZXNldD1Ob25lLCBuYW1lcz1Ob25lKQogCkBAIC0zNDIsNyArMzQ1LDcgQEAKIAogSWYgdGhlIDpmaWxlOmAubW9gIGZpbGUncyBtYWdpYyBudW1iZXIgaXMgaW52YWxpZCwgb3IgaWYgb3RoZXIgcHJvYmxlbXMgb2NjdXIKIHdoaWxlIHJlYWRpbmcgdGhlIGZpbGUsIGluc3RhbnRpYXRpbmcgYSA6Y2xhc3M6YEdOVVRyYW5zbGF0aW9uc2AgY2xhc3MgY2FuIHJhaXNlCi06ZXhjOmBJT0Vycm9yYC4KKzpleGM6YE9TRXJyb3JgLgogCiBUaGUgZm9sbG93aW5nIG1ldGhvZHMgYXJlIG92ZXJyaWRkZW4gZnJvbSB0aGUgYmFzZSBjbGFzcyBpbXBsZW1lbnRhdGlvbjoKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvZ3ppcC5yc3QgYi9Eb2MvbGlicmFyeS9nemlwLnJzdAppbmRleCA0OGE4Njk0Li40NDkxYWNjIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9nemlwLnJzdAorKysgYi9Eb2MvbGlicmFyeS9nemlwLnJzdApAQCAtMjEsNyArMjEsNyBAQAogOnByb2dyYW06YGd6aXBgIGFuZCA6cHJvZ3JhbTpgZ3VuemlwYCBwcm9ncmFtcywgc3VjaCAgYXMgdGhvc2UgcHJvZHVjZWQgYnkKIDpwcm9ncmFtOmBjb21wcmVzc2AgYW5kIDpwcm9ncmFtOmBwYWNrYCwgYXJlIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBtb2R1bGUuCiAKLUZvciBvdGhlciBhcmNoaXZlIGZvcm1hdHMsIHNlZSB0aGUgOm1vZDpgYnoyYCwgOm1vZDpgemlwZmlsZWAsIGFuZAorRm9yIHJlbGF0ZWQgZmlsZSBmb3JtYXRzLCBzZWUgdGhlIDptb2Q6YGJ6MmAsIDptb2Q6YGx6bWFgLCA6bW9kOmB6aXBmaWxlYCwgYW5kCiA6bW9kOmB0YXJmaWxlYCBtb2R1bGVzLgogCiBUaGUgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBpdGVtczoKQEAgLTcyLDcgKzcyLDcgQEAKIAogICAgOmNsYXNzOmBHemlwRmlsZWAgc3VwcG9ydHMgdGhlIDpjbGFzczpgaW8uQnVmZmVyZWRJT0Jhc2VgIGludGVyZmFjZSwKICAgIGluY2x1ZGluZyBpdGVyYXRpb24gYW5kIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50LiAgT25seSB0aGUKLSAgIDptZXRoOmByZWFkMWAgYW5kIDptZXRoOmB0cnVuY2F0ZWAgbWV0aG9kcyBhcmVuJ3QgaW1wbGVtZW50ZWQuCisgICA6bWV0aDpgdHJ1bmNhdGVgIG1ldGhvZCBpc24ndCBpbXBsZW1lbnRlZC4KIAogICAgOmNsYXNzOmBHemlwRmlsZWAgYWxzbyBwcm92aWRlcyB0aGUgZm9sbG93aW5nIG1ldGhvZDoKIApAQCAtOTQsNiArOTQsOSBAQAogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIKICAgICAgIFN1cHBvcnQgZm9yIHVuc2Vla2FibGUgZmlsZXMgd2FzIGFkZGVkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhlIDptZXRoOmBpby5CdWZmZXJlZElPQmFzZS5yZWFkMWAgbWV0aG9kIGlzIG5vdyBpbXBsZW1lbnRlZC4KKwogCiAuLiBmdW5jdGlvbjo6IG9wZW4oZmlsZW5hbWUsIG1vZGU9J3JiJywgY29tcHJlc3NsZXZlbD05KQogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9odHRwLmNsaWVudC5yc3QgYi9Eb2MvbGlicmFyeS9odHRwLmNsaWVudC5yc3QKaW5kZXggNTJmYmU1Ny4uZjBkYThlZSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvaHR0cC5jbGllbnQucnN0CisrKyBiL0RvYy9saWJyYXJ5L2h0dHAuY2xpZW50LnJzdApAQCAtNTAyLDYgKzUwMiwxMiBAQAogCiAgICBSZWFkcyBhbmQgcmV0dXJucyB0aGUgcmVzcG9uc2UgYm9keSwgb3IgdXAgdG8gdGhlIG5leHQgKmFtdCogYnl0ZXMuCiAKKy4uIG1ldGhvZDo6IEhUVFBSZXNwb25zZS5yZWFkaW50byhiKQorCisgICBSZWFkcyB1cCB0byB0aGUgbmV4dCBsZW4oYikgYnl0ZXMgb2YgdGhlIHJlc3BvbnNlIGJvZHkgaW50byB0aGUgYnVmZmVyICpiKi4KKyAgIFJldHVybnMgdGhlIG51bWJlciBvZiBieXRlcyByZWFkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogLi4gbWV0aG9kOjogSFRUUFJlc3BvbnNlLmdldGhlYWRlcihuYW1lLCBkZWZhdWx0PU5vbmUpCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2h0dHAuY29va2llamFyLnJzdCBiL0RvYy9saWJyYXJ5L2h0dHAuY29va2llamFyLnJzdAppbmRleCA5NzcxNDk2Li4xZmU3NzVmIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9odHRwLmNvb2tpZWphci5yc3QKKysrIGIvRG9jL2xpYnJhcnkvaHR0cC5jb29raWVqYXIucnN0CkBAIC00MCw3ICs0MCwxMSBAQAogLi4gZXhjZXB0aW9uOjogTG9hZEVycm9yCiAKICAgIEluc3RhbmNlcyBvZiA6Y2xhc3M6YEZpbGVDb29raWVKYXJgIHJhaXNlIHRoaXMgZXhjZXB0aW9uIG9uIGZhaWx1cmUgdG8gbG9hZAotICAgY29va2llcyBmcm9tIGEgZmlsZS4gIDpleGM6YExvYWRFcnJvcmAgaXMgYSBzdWJjbGFzcyBvZiA6ZXhjOmBJT0Vycm9yYC4KKyAgIGNvb2tpZXMgZnJvbSBhIGZpbGUuICA6ZXhjOmBMb2FkRXJyb3JgIGlzIGEgc3ViY2xhc3Mgb2YgOmV4YzpgT1NFcnJvcmAuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBMb2FkRXJyb3Igd2FzIG1hZGUgYSBzdWJjbGFzcyBvZiA6ZXhjOmBPU0Vycm9yYCBpbnN0ZWFkIG9mCisgICAgICA6ZXhjOmBJT0Vycm9yYC4KIAogCiBUaGUgZm9sbG93aW5nIGNsYXNzZXMgYXJlIHByb3ZpZGVkOgpAQCAtMjU3LDkgKzI2MSwxMiBAQAogICAgQXJndW1lbnRzIGFyZSBhcyBmb3IgOm1ldGg6YHNhdmVgLgogCiAgICBUaGUgbmFtZWQgZmlsZSBtdXN0IGJlIGluIHRoZSBmb3JtYXQgdW5kZXJzdG9vZCBieSB0aGUgY2xhc3MsIG9yCi0gICA6ZXhjOmBMb2FkRXJyb3JgIHdpbGwgYmUgcmFpc2VkLiAgQWxzbywgOmV4YzpgSU9FcnJvcmAgbWF5IGJlIHJhaXNlZCwgZm9yCisgICA6ZXhjOmBMb2FkRXJyb3JgIHdpbGwgYmUgcmFpc2VkLiAgQWxzbywgOmV4YzpgT1NFcnJvcmAgbWF5IGJlIHJhaXNlZCwgZm9yCiAgICBleGFtcGxlIGlmIHRoZSBmaWxlIGRvZXMgbm90IGV4aXN0LgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgOmV4YzpgSU9FcnJvcmAgdXNlZCB0byBiZSByYWlzZWQsIGl0IGlzIG5vdyBhbiBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KKwogCiAuLiBtZXRob2Q6OiBGaWxlQ29va2llSmFyLnJldmVydChmaWxlbmFtZT1Ob25lLCBpZ25vcmVfZGlzY2FyZD1GYWxzZSwgaWdub3JlX2V4cGlyZXM9RmFsc2UpCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2h0dHAuc2VydmVyLnJzdCBiL0RvYy9saWJyYXJ5L2h0dHAuc2VydmVyLnJzdAppbmRleCBlM2EzYTEwLi5kOWFhYTcyIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9odHRwLnNlcnZlci5yc3QKKysrIGIvRG9jL2xpYnJhcnkvaHR0cC5zZXJ2ZXIucnN0CkBAIC0xNzksMTkgKzE3OSwyOSBAQAogCiAgICAuLiBtZXRob2Q6OiBzZW5kX3Jlc3BvbnNlKGNvZGUsIG1lc3NhZ2U9Tm9uZSkKIAotICAgICAgU2VuZHMgYSByZXNwb25zZSBoZWFkZXIgYW5kIGxvZ3MgdGhlIGFjY2VwdGVkIHJlcXVlc3QuIFRoZSBIVFRQIHJlc3BvbnNlCi0gICAgICBsaW5lIGlzIHNlbnQsIGZvbGxvd2VkIGJ5ICpTZXJ2ZXIqIGFuZCAqRGF0ZSogaGVhZGVycy4gVGhlIHZhbHVlcyBmb3IKLSAgICAgIHRoZXNlIHR3byBoZWFkZXJzIGFyZSBwaWNrZWQgdXAgZnJvbSB0aGUgOm1ldGg6YHZlcnNpb25fc3RyaW5nYCBhbmQKLSAgICAgIDptZXRoOmBkYXRlX3RpbWVfc3RyaW5nYCBtZXRob2RzLCByZXNwZWN0aXZlbHkuCisgICAgICBBZGRzIGEgcmVzcG9uc2UgaGVhZGVyIHRvIHRoZSBoZWFkZXJzIGJ1ZmZlciBhbmQgbG9ncyB0aGUgYWNjZXB0ZWQKKyAgICAgIHJlcXVlc3QuIFRoZSBIVFRQIHJlc3BvbnNlIGxpbmUgaXMgd3JpdHRlbiB0byB0aGUgaW50ZXJuYWwgYnVmZmVyLAorICAgICAgZm9sbG93ZWQgYnkgKlNlcnZlciogYW5kICpEYXRlKiBoZWFkZXJzLiBUaGUgdmFsdWVzIGZvciB0aGVzZSB0d28gaGVhZGVycworICAgICAgYXJlIHBpY2tlZCB1cCBmcm9tIHRoZSA6bWV0aDpgdmVyc2lvbl9zdHJpbmdgIGFuZAorICAgICAgOm1ldGg6YGRhdGVfdGltZV9zdHJpbmdgIG1ldGhvZHMsIHJlc3BlY3RpdmVseS4gSWYgdGhlIHNlcnZlciBkb2VzIG5vdAorICAgICAgaW50ZW5kIHRvIHNlbmQgYW55IG90aGVyIGhlYWRlcnMgdXNpbmcgdGhlIDptZXRoOmBzZW5kX2hlYWRlcmAgbWV0aG9kLAorICAgICAgdGhlbiA6bWV0aDpgc2VuZF9yZXNwb25zZWAgc2hvdWxkIGJlIGZvbGxvd2VkIGJ5IGEgOm1ldGg6YGVuZF9oZWFkZXJzYAorICAgICAgY2FsbC4KKworICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICAgIEhlYWRlcnMgYXJlIHN0b3JlZCB0byBhbiBpbnRlcm5hbCBidWZmZXIgYW5kIDptZXRoOmBlbmRfaGVhZGVyc2AKKyAgICAgICAgIG5lZWRzIHRvIGJlIGNhbGxlZCBleHBsaWNpdGx5LgorCiAKICAgIC4uIG1ldGhvZDo6IHNlbmRfaGVhZGVyKGtleXdvcmQsIHZhbHVlKQogCi0gICAgICBTdG9yZXMgdGhlIEhUVFAgaGVhZGVyIHRvIGFuIGludGVybmFsIGJ1ZmZlciB3aGljaCB3aWxsIGJlIHdyaXR0ZW4gdG8gdGhlCi0gICAgICBvdXRwdXQgc3RyZWFtIHdoZW4gOm1ldGg6YGVuZF9oZWFkZXJzYCBtZXRob2QgaXMgaW52b2tlZC4KLSAgICAgICprZXl3b3JkKiBzaG91bGQgc3BlY2lmeSB0aGUgaGVhZGVyIGtleXdvcmQsIHdpdGggKnZhbHVlKgotICAgICAgc3BlY2lmeWluZyBpdHMgdmFsdWUuCisgICAgICBBZGRzIHRoZSBIVFRQIGhlYWRlciB0byBhbiBpbnRlcm5hbCBidWZmZXIgd2hpY2ggd2lsbCBiZSB3cml0dGVuIHRvIHRoZQorICAgICAgb3V0cHV0IHN0cmVhbSB3aGVuIGVpdGhlciA6bWV0aDpgZW5kX2hlYWRlcnNgIG9yIDptZXRoOmBmbHVzaF9oZWFkZXJzYCBpcworICAgICAgaW52b2tlZC4gKmtleXdvcmQqIHNob3VsZCBzcGVjaWZ5IHRoZSBoZWFkZXIga2V5d29yZCwgd2l0aCAqdmFsdWUqCisgICAgICBzcGVjaWZ5aW5nIGl0cyB2YWx1ZS4gTm90ZSB0aGF0LCBhZnRlciB0aGUgc2VuZF9oZWFkZXIgY2FsbHMgYXJlIGRvbmUsCisgICAgICA6bWV0aDpgZW5kX2hlYWRlcnNgIE1VU1QgQkUgY2FsbGVkIGluIG9yZGVyIHRvIGNvbXBsZXRlIHRoZSBvcGVyYXRpb24uCiAKLSAgICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yIFN0b3JpbmcgdGhlIGhlYWRlcnMgaW4gYW4gaW50ZXJuYWwgYnVmZmVyCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMiBIZWFkZXJzIGFyZSBzdG9yZWQgaW4gYW4gaW50ZXJuYWwgYnVmZmVyLgogCiAKICAgIC4uIG1ldGhvZDo6IHNlbmRfcmVzcG9uc2Vfb25seShjb2RlLCBtZXNzYWdlPU5vbmUpCkBAIC0yMDUsMTAgKzIxNSwxOSBAQAogCiAgICAuLiBtZXRob2Q6OiBlbmRfaGVhZGVycygpCiAKLSAgICAgIFdyaXRlIHRoZSBidWZmZXJlZCBIVFRQIGhlYWRlcnMgdG8gdGhlIG91dHB1dCBzdHJlYW0gYW5kIHNlbmQgYSBibGFuawotICAgICAgbGluZSwgaW5kaWNhdGluZyB0aGUgZW5kIG9mIHRoZSBIVFRQIGhlYWRlcnMgaW4gdGhlIHJlc3BvbnNlLgorICAgICAgQWRkcyBhIGJsYW5rIGxpbmUKKyAgICAgIChpbmRpY2F0aW5nIHRoZSBlbmQgb2YgdGhlIEhUVFAgaGVhZGVycyBpbiB0aGUgcmVzcG9uc2UpCisgICAgICB0byB0aGUgaGVhZGVycyBidWZmZXIgYW5kIGNhbGxzIDptZXRoOmBmbHVzaF9oZWFkZXJzKClgLgogCi0gICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMiBXcml0aW5nIHRoZSBidWZmZXJlZCBoZWFkZXJzIHRvIHRoZSBvdXRwdXQgc3RyZWFtLgorICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIKKyAgICAgICAgIFRoZSBidWZmZXJlZCBoZWFkZXJzIGFyZSB3cml0dGVuIHRvIHRoZSBvdXRwdXQgc3RyZWFtLgorCisgICAuLiBtZXRob2Q6OiBmbHVzaF9oZWFkZXJzKCkKKworICAgICAgRmluYWxseSBzZW5kIHRoZSBoZWFkZXJzIHRvIHRoZSBvdXRwdXQgc3RyZWFtIGFuZCBmbHVzaCB0aGUgaW50ZXJuYWwKKyAgICAgIGhlYWRlcnMgYnVmZmVyLgorCisgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogICAgLi4gbWV0aG9kOjogbG9nX3JlcXVlc3QoY29kZT0nLScsIHNpemU9Jy0nKQogCkBAIC0yOTksNyArMzE4LDcgQEAKICAgICAgIHJlc3BvbnNlIGlmIHRoZSA6ZnVuYzpgbGlzdGRpcmAgZmFpbHMuCiAKICAgICAgIElmIHRoZSByZXF1ZXN0IHdhcyBtYXBwZWQgdG8gYSBmaWxlLCBpdCBpcyBvcGVuZWQgYW5kIHRoZSBjb250ZW50cyBhcmUKLSAgICAgIHJldHVybmVkLiAgQW55IDpleGM6YElPRXJyb3JgIGV4Y2VwdGlvbiBpbiBvcGVuaW5nIHRoZSByZXF1ZXN0ZWQgZmlsZSBpcworICAgICAgcmV0dXJuZWQuICBBbnkgOmV4YzpgT1NFcnJvcmAgZXhjZXB0aW9uIGluIG9wZW5pbmcgdGhlIHJlcXVlc3RlZCBmaWxlIGlzCiAgICAgICBtYXBwZWQgdG8gYSBgYDQwNGBgLCBgYCdGaWxlIG5vdCBmb3VuZCdgYCBlcnJvci4gT3RoZXJ3aXNlLCB0aGUgY29udGVudAogICAgICAgdHlwZSBpcyBndWVzc2VkIGJ5IGNhbGxpbmcgdGhlIDptZXRoOmBndWVzc190eXBlYCBtZXRob2QsIHdoaWNoIGluIHR1cm4KICAgICAgIHVzZXMgdGhlICpleHRlbnNpb25zX21hcCogdmFyaWFibGUuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9pbWFwbGliLnJzdCBiL0RvYy9saWJyYXJ5L2ltYXBsaWIucnN0CmluZGV4IDNmNDVjOTUuLjAzODM1NWMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2ltYXBsaWIucnN0CisrKyBiL0RvYy9saWJyYXJ5L2ltYXBsaWIucnN0CkBAIC02NCwxNCArNjQsMjEgQEAKIFRoZXJlJ3MgYWxzbyBhIHN1YmNsYXNzIGZvciBzZWN1cmUgY29ubmVjdGlvbnM6CiAKIAotLi4gY2xhc3M6OiBJTUFQNF9TU0woaG9zdD0nJywgcG9ydD1JTUFQNF9TU0xfUE9SVCwga2V5ZmlsZT1Ob25lLCBjZXJ0ZmlsZT1Ob25lKQorLi4gY2xhc3M6OiBJTUFQNF9TU0woaG9zdD0nJywgcG9ydD1JTUFQNF9TU0xfUE9SVCwga2V5ZmlsZT1Ob25lLCBjZXJ0ZmlsZT1Ob25lLCBzc2xfY29udGV4dD1Ob25lKQogCiAgICBUaGlzIGlzIGEgc3ViY2xhc3MgZGVyaXZlZCBmcm9tIDpjbGFzczpgSU1BUDRgIHRoYXQgY29ubmVjdHMgb3ZlciBhbiBTU0wKICAgIGVuY3J5cHRlZCBzb2NrZXQgKHRvIHVzZSB0aGlzIGNsYXNzIHlvdSBuZWVkIGEgc29ja2V0IG1vZHVsZSB0aGF0IHdhcyBjb21waWxlZAogICAgd2l0aCBTU0wgc3VwcG9ydCkuICBJZiAqaG9zdCogaXMgbm90IHNwZWNpZmllZCwgYGAnJ2BgICh0aGUgbG9jYWwgaG9zdCkgaXMgdXNlZC4KICAgIElmICpwb3J0KiBpcyBvbWl0dGVkLCB0aGUgc3RhbmRhcmQgSU1BUDQtb3Zlci1TU0wgcG9ydCAoOTkzKSBpcyB1c2VkLiAgKmtleWZpbGUqCiAgICBhbmQgKmNlcnRmaWxlKiBhcmUgYWxzbyBvcHRpb25hbCAtIHRoZXkgY2FuIGNvbnRhaW4gYSBQRU0gZm9ybWF0dGVkIHByaXZhdGUga2V5Ci0gICBhbmQgY2VydGlmaWNhdGUgY2hhaW4gZmlsZSBmb3IgdGhlIFNTTCBjb25uZWN0aW9uLgorICAgYW5kIGNlcnRpZmljYXRlIGNoYWluIGZpbGUgZm9yIHRoZSBTU0wgY29ubmVjdGlvbi4gKnNzbF9jb250ZXh0KiBwYXJhbWV0ZXIgaXMgYQorICAgOmNsYXNzOmBzc2wuU1NMQ29udGV4dGAgb2JqZWN0IHdoaWNoIGFsbG93cyBidW5kbGluZyBTU0wgY29uZmlndXJhdGlvbgorICAgb3B0aW9ucywgY2VydGlmaWNhdGVzIGFuZCBwcml2YXRlIGtleXMgaW50byBhIHNpbmdsZSAocG90ZW50aWFsbHkgbG9uZy1saXZlZCkKKyAgIHN0cnVjdHVyZS4gTm90ZSB0aGF0IHRoZSAqa2V5ZmlsZSovKmNlcnRmaWxlKiBwYXJhbWV0ZXJzIGFyZSBtdXR1YWxseSBleGNsdXNpdmUgd2l0aCAqc3NsX2NvbnRleHQqLAorICAgYSA6Y2xhc3M6YFZhbHVlRXJyb3JgIGlzIHRocm93biBpZiAqa2V5ZmlsZSovKmNlcnRmaWxlKiBpcyBwcm92aWRlZCBhbG9uZyB3aXRoICpzc2xfY29udGV4dCouCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqc3NsX2NvbnRleHQqIHBhcmFtZXRlciBhZGRlZC4KIAogCiBUaGUgc2Vjb25kIHN1YmNsYXNzIGFsbG93cyBmb3IgY29ubmVjdGlvbnMgY3JlYXRlZCBieSBhIGNoaWxkIHByb2Nlc3M6CmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9pbXBvcnRsaWIucnN0IGIvRG9jL2xpYnJhcnkvaW1wb3J0bGliLnJzdAppbmRleCBjOWY3NDJhLi42ZGQxM2NjIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9pbXBvcnRsaWIucnN0CisrKyBiL0RvYy9saWJyYXJ5L2ltcG9ydGxpYi5yc3QKQEAgLTIzOSwxMSArMjM5LDMwIEBACiAgICAgb3B0aW1pemF0aW9uIHRvIHNwZWVkIHVwIGxvYWRpbmcgYnkgcmVtb3ZpbmcgdGhlIHBhcnNpbmcgc3RlcCBvZiBQeXRob24ncwogICAgIGNvbXBpbGVyLCBhbmQgc28gbm8gYnl0ZWNvZGUtc3BlY2lmaWMgQVBJIGlzIGV4cG9zZWQuCiAKKyAgICAuLiBtZXRob2Q6OiBwYXRoX3N0YXRzKHNlbGYsIHBhdGgpCisKKyAgICAgICAgT3B0aW9uYWwgYWJzdHJhY3QgbWV0aG9kIHdoaWNoIHJldHVybnMgYSA6Y2xhc3M6YGRpY3RgIGNvbnRhaW5pbmcKKyAgICAgICAgbWV0YWRhdGEgYWJvdXQgdGhlIHNwZWNpZmVkIHBhdGguICBTdXBwb3J0ZWQgZGljdGlvbmFyeSBrZXlzIGFyZToKKworICAgICAgICAtIGBgJ210aW1lJ2BgIChtYW5kYXRvcnkpOiBhbiBpbnRlZ2VyIG9yIGZsb2F0aW5nLXBvaW50IG51bWJlcgorICAgICAgICAgIHJlcHJlc2VudGluZyB0aGUgbW9kaWZpY2F0aW9uIHRpbWUgb2YgdGhlIHNvdXJjZSBjb2RlOworICAgICAgICAtIGBgJ3NpemUnYGAgKG9wdGlvbmFsKTogdGhlIHNpemUgaW4gYnl0ZXMgb2YgdGhlIHNvdXJjZSBjb2RlLgorCisgICAgICAgIEFueSBvdGhlciBrZXlzIGluIHRoZSBkaWN0aW9uYXJ5IGFyZSBpZ25vcmVkLCB0byBhbGxvdyBmb3IgZnV0dXJlCisgICAgICAgIGV4dGVuc2lvbnMuCisKKyAgICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKICAgICAuLiBtZXRob2Q6OiBwYXRoX210aW1lKHNlbGYsIHBhdGgpCiAKICAgICAgICAgT3B0aW9uYWwgYWJzdHJhY3QgbWV0aG9kIHdoaWNoIHJldHVybnMgdGhlIG1vZGlmaWNhdGlvbiB0aW1lIGZvciB0aGUKICAgICAgICAgc3BlY2lmaWVkIHBhdGguCiAKKyAgICAgICAgLi4gZGVwcmVjYXRlZDo6IDMuMworICAgICAgICAgICBUaGlzIG1ldGhvZCBpcyBkZXByZWNhdGVkIGluIGZhdm91ciBvZiA6bWV0aDpgcGF0aF9zdGF0c2AuICBZb3UgZG9uJ3QKKyAgICAgICAgICAgaGF2ZSB0byBpbXBsZW1lbnQgaXQsIGJ1dCBpdCBpcyBzdGlsbCBhdmFpbGFibGUgZm9yIGNvbXBhdGliaWxpdHkKKyAgICAgICAgICAgcHVycG9zZXMuCisKICAgICAuLiBtZXRob2Q6OiBzZXRfZGF0YShzZWxmLCBwYXRoLCBkYXRhKQogCiAgICAgICAgIE9wdGlvbmFsIGFic3RyYWN0IG1ldGhvZCB3aGljaCB3cml0ZXMgdGhlIHNwZWNpZmllZCBieXRlcyB0byBhIGZpbGUKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L2luc3BlY3QucnN0IGIvRG9jL2xpYnJhcnkvaW5zcGVjdC5yc3QKaW5kZXggZDEyN2NlOC4uYWM2YWU5OSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvaW5zcGVjdC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvaW5zcGVjdC5yc3QKQEAgLTM1NSwxNyArMzU1LDI1IEBACiAgICBhcmd1bWVudCBtYXkgYmUgYSBtb2R1bGUsIGNsYXNzLCBtZXRob2QsIGZ1bmN0aW9uLCB0cmFjZWJhY2ssIGZyYW1lLCBvciBjb2RlCiAgICBvYmplY3QuICBUaGUgc291cmNlIGNvZGUgaXMgcmV0dXJuZWQgYXMgYSBsaXN0IG9mIHRoZSBsaW5lcyBjb3JyZXNwb25kaW5nIHRvIHRoZQogICAgb2JqZWN0IGFuZCB0aGUgbGluZSBudW1iZXIgaW5kaWNhdGVzIHdoZXJlIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSB0aGUgZmlyc3QKLSAgIGxpbmUgb2YgY29kZSB3YXMgZm91bmQuICBBbiA6ZXhjOmBJT0Vycm9yYCBpcyByYWlzZWQgaWYgdGhlIHNvdXJjZSBjb2RlIGNhbm5vdAorICAgbGluZSBvZiBjb2RlIHdhcyBmb3VuZC4gIEFuIDpleGM6YE9TRXJyb3JgIGlzIHJhaXNlZCBpZiB0aGUgc291cmNlIGNvZGUgY2Fubm90CiAgICBiZSByZXRyaWV2ZWQuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICA6ZXhjOmBPU0Vycm9yYCBpcyByYWlzZWQgaW5zdGVhZCBvZiA6ZXhjOmBJT0Vycm9yYCwgbm93IGFuIGFsaWFzIG9mIHRoZQorICAgICAgZm9ybWVyLgorCiAKIC4uIGZ1bmN0aW9uOjogZ2V0c291cmNlKG9iamVjdCkKIAogICAgUmV0dXJuIHRoZSB0ZXh0IG9mIHRoZSBzb3VyY2UgY29kZSBmb3IgYW4gb2JqZWN0LiBUaGUgYXJndW1lbnQgbWF5IGJlIGEgbW9kdWxlLAogICAgY2xhc3MsIG1ldGhvZCwgZnVuY3Rpb24sIHRyYWNlYmFjaywgZnJhbWUsIG9yIGNvZGUgb2JqZWN0LiAgVGhlIHNvdXJjZSBjb2RlIGlzCi0gICByZXR1cm5lZCBhcyBhIHNpbmdsZSBzdHJpbmcuICBBbiA6ZXhjOmBJT0Vycm9yYCBpcyByYWlzZWQgaWYgdGhlIHNvdXJjZSBjb2RlCisgICByZXR1cm5lZCBhcyBhIHNpbmdsZSBzdHJpbmcuICBBbiA6ZXhjOmBPU0Vycm9yYCBpcyByYWlzZWQgaWYgdGhlIHNvdXJjZSBjb2RlCiAgICBjYW5ub3QgYmUgcmV0cmlldmVkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkIGluc3RlYWQgb2YgOmV4YzpgSU9FcnJvcmAsIG5vdyBhbiBhbGlhcyBvZiB0aGUKKyAgICAgIGZvcm1lci4KKwogCiAuLiBmdW5jdGlvbjo6IGNsZWFuZG9jKGRvYykKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvaW8ucnN0IGIvRG9jL2xpYnJhcnkvaW8ucnN0CmluZGV4IGJlY2M0YTIuLjRkNTY0YmIgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2lvLnJzdAorKysgYi9Eb2MvbGlicmFyeS9pby5yc3QKQEAgLTMzLDYgKzMzLDEwIEBACiB3aWxsIHJhaXNlIGEgYGBUeXBlRXJyb3JgYC4gIFNvIHdpbGwgZ2l2aW5nIGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0IHRvIHRoZQogYGB3cml0ZSgpYGAgbWV0aG9kIG9mIGEgdGV4dCBzdHJlYW0uCiAKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICBPcGVyYXRpb25zIGRlZmluZWQgaW4gdGhpcyBtb2R1bGUgdXNlZCB0byByYWlzZSA6ZXhjOmBJT0Vycm9yYCwgd2hpY2ggaXMKKyAgIG5vdyBhbiBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KKwogCiBUZXh0IEkvTwogXl5eXl5eXl4KQEAgLTEwOSwyMSArMTEzLDEzIEBACiAKIC4uIGV4Y2VwdGlvbjo6IEJsb2NraW5nSU9FcnJvcgogCi0gICBFcnJvciByYWlzZWQgd2hlbiBibG9ja2luZyB3b3VsZCBvY2N1ciBvbiBhIG5vbi1ibG9ja2luZyBzdHJlYW0uICBJdCBpbmhlcml0cwotICAgOmV4YzpgSU9FcnJvcmAuCi0KLSAgIEluIGFkZGl0aW9uIHRvIHRob3NlIG9mIDpleGM6YElPRXJyb3JgLCA6ZXhjOmBCbG9ja2luZ0lPRXJyb3JgIGhhcyBvbmUKLSAgIGF0dHJpYnV0ZToKLQotICAgLi4gYXR0cmlidXRlOjogY2hhcmFjdGVyc193cml0dGVuCi0KLSAgICAgIEFuIGludGVnZXIgY29udGFpbmluZyB0aGUgbnVtYmVyIG9mIGNoYXJhY3RlcnMgd3JpdHRlbiB0byB0aGUgc3RyZWFtCi0gICAgICBiZWZvcmUgaXQgYmxvY2tlZC4KKyAgIFRoaXMgaXMgYSBjb21wYXRpYmlsaXR5IGFsaWFzIGZvciB0aGUgYnVpbHRpbiA6ZXhjOmBCbG9ja2luZ0lPRXJyb3JgCisgICBleGNlcHRpb24uCiAKIAogLi4gZXhjZXB0aW9uOjogVW5zdXBwb3J0ZWRPcGVyYXRpb24KIAotICAgQW4gZXhjZXB0aW9uIGluaGVyaXRpbmcgOmV4YzpgSU9FcnJvcmAgYW5kIDpleGM6YFZhbHVlRXJyb3JgIHRoYXQgaXMgcmFpc2VkCisgICBBbiBleGNlcHRpb24gaW5oZXJpdGluZyA6ZXhjOmBPU0Vycm9yYCBhbmQgOmV4YzpgVmFsdWVFcnJvcmAgdGhhdCBpcyByYWlzZWQKICAgIHdoZW4gYW4gdW5zdXBwb3J0ZWQgb3BlcmF0aW9uIGlzIGNhbGxlZCBvbiBhIHN0cmVhbS4KIAogCkBAIC0yMDIsOCArMTk4LDggQEAKICAgIEV2ZW4gdGhvdWdoIDpjbGFzczpgSU9CYXNlYCBkb2VzIG5vdCBkZWNsYXJlIDptZXRoOmByZWFkYCwgOm1ldGg6YHJlYWRpbnRvYCwKICAgIG9yIDptZXRoOmB3cml0ZWAgYmVjYXVzZSB0aGVpciBzaWduYXR1cmVzIHdpbGwgdmFyeSwgaW1wbGVtZW50YXRpb25zIGFuZAogICAgY2xpZW50cyBzaG91bGQgY29uc2lkZXIgdGhvc2UgbWV0aG9kcyBwYXJ0IG9mIHRoZSBpbnRlcmZhY2UuICBBbHNvLAotICAgaW1wbGVtZW50YXRpb25zIG1heSByYWlzZSBhIDpleGM6YElPRXJyb3JgIHdoZW4gb3BlcmF0aW9ucyB0aGV5IGRvIG5vdAotICAgc3VwcG9ydCBhcmUgY2FsbGVkLgorICAgaW1wbGVtZW50YXRpb25zIG1heSByYWlzZSBhIDpleGM6YFZhbHVlRXJyb3JgIChvciA6ZXhjOmBVbnN1cHBvcnRlZE9wZXJhdGlvbmApCisgICB3aGVuIG9wZXJhdGlvbnMgdGhleSBkbyBub3Qgc3VwcG9ydCBhcmUgY2FsbGVkLgogCiAgICBUaGUgYmFzaWMgdHlwZSB1c2VkIGZvciBiaW5hcnkgZGF0YSByZWFkIGZyb20gb3Igd3JpdHRlbiB0byBhIGZpbGUgaXMKICAgIDpjbGFzczpgYnl0ZXNgLiAgOmNsYXNzOmBieXRlYXJyYXlgXHMgYXJlIGFjY2VwdGVkIHRvbywgYW5kIGluIHNvbWUgY2FzZXMKQEAgLTIxMSw3ICsyMDcsNyBAQAogICAgOmNsYXNzOmBzdHJgIGRhdGEuCiAKICAgIE5vdGUgdGhhdCBjYWxsaW5nIGFueSBtZXRob2QgKGV2ZW4gaW5xdWlyaWVzKSBvbiBhIGNsb3NlZCBzdHJlYW0gaXMKLSAgIHVuZGVmaW5lZC4gIEltcGxlbWVudGF0aW9ucyBtYXkgcmFpc2UgOmV4YzpgSU9FcnJvcmAgaW4gdGhpcyBjYXNlLgorICAgdW5kZWZpbmVkLiAgSW1wbGVtZW50YXRpb25zIG1heSByYWlzZSA6ZXhjOmBWYWx1ZUVycm9yYCBpbiB0aGlzIGNhc2UuCiAKICAgIElPQmFzZSAoYW5kIGl0cyBzdWJjbGFzc2VzKSBzdXBwb3J0IHRoZSBpdGVyYXRvciBwcm90b2NvbCwgbWVhbmluZyB0aGF0IGFuCiAgICA6Y2xhc3M6YElPQmFzZWAgb2JqZWN0IGNhbiBiZSBpdGVyYXRlZCBvdmVyIHlpZWxkaW5nIHRoZSBsaW5lcyBpbiBhIHN0cmVhbS4KQEAgLTI0NCw3ICsyNDAsNyBAQAogICAgLi4gbWV0aG9kOjogZmlsZW5vKCkKIAogICAgICAgUmV0dXJuIHRoZSB1bmRlcmx5aW5nIGZpbGUgZGVzY3JpcHRvciAoYW4gaW50ZWdlcikgb2YgdGhlIHN0cmVhbSBpZiBpdAotICAgICAgZXhpc3RzLiAgQW4gOmV4YzpgSU9FcnJvcmAgaXMgcmFpc2VkIGlmIHRoZSBJTyBvYmplY3QgZG9lcyBub3QgdXNlIGEgZmlsZQorICAgICAgZXhpc3RzLiAgQW4gOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkIGlmIHRoZSBJTyBvYmplY3QgZG9lcyBub3QgdXNlIGEgZmlsZQogICAgICAgZGVzY3JpcHRvci4KIAogICAgLi4gbWV0aG9kOjogZmx1c2goKQpAQCAtMjYwLDcgKzI1Niw3IEBACiAgICAuLiBtZXRob2Q6OiByZWFkYWJsZSgpCiAKICAgICAgIFJldHVybiBgYFRydWVgYCBpZiB0aGUgc3RyZWFtIGNhbiBiZSByZWFkIGZyb20uICBJZiBGYWxzZSwgOm1ldGg6YHJlYWRgCi0gICAgICB3aWxsIHJhaXNlIDpleGM6YElPRXJyb3JgLgorICAgICAgd2lsbCByYWlzZSA6ZXhjOmBPU0Vycm9yYC4KIAogICAgLi4gbWV0aG9kOjogcmVhZGxpbmUobGltaXQ9LTEpCiAKQEAgLTI5OCw3ICsyOTQsNyBAQAogICAgLi4gbWV0aG9kOjogc2Vla2FibGUoKQogCiAgICAgICBSZXR1cm4gYGBUcnVlYGAgaWYgdGhlIHN0cmVhbSBzdXBwb3J0cyByYW5kb20gYWNjZXNzLiAgSWYgYGBGYWxzZWBgLAotICAgICAgOm1ldGg6YHNlZWtgLCA6bWV0aDpgdGVsbGAgYW5kIDptZXRoOmB0cnVuY2F0ZWAgd2lsbCByYWlzZSA6ZXhjOmBJT0Vycm9yYC4KKyAgICAgIDptZXRoOmBzZWVrYCwgOm1ldGg6YHRlbGxgIGFuZCA6bWV0aDpgdHJ1bmNhdGVgIHdpbGwgcmFpc2UgOmV4YzpgT1NFcnJvcmAuCiAKICAgIC4uIG1ldGhvZDo6IHRlbGwoKQogCkBAIC0zMTYsNyArMzEyLDcgQEAKICAgIC4uIG1ldGhvZDo6IHdyaXRhYmxlKCkKIAogICAgICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIHRoZSBzdHJlYW0gc3VwcG9ydHMgd3JpdGluZy4gIElmIGBgRmFsc2VgYCwKLSAgICAgIDptZXRoOmB3cml0ZWAgYW5kIDptZXRoOmB0cnVuY2F0ZWAgd2lsbCByYWlzZSA6ZXhjOmBJT0Vycm9yYC4KKyAgICAgIDptZXRoOmB3cml0ZWAgYW5kIDptZXRoOmB0cnVuY2F0ZWAgd2lsbCByYWlzZSA6ZXhjOmBPU0Vycm9yYC4KIAogICAgLi4gbWV0aG9kOjogd3JpdGVsaW5lcyhsaW5lcykKIApAQCAtNDUwLDcgKzQ0Niw3IEBACiAKICAgICAgIFdyaXRlIHRoZSBnaXZlbiBieXRlcyBvciBieXRlYXJyYXkgb2JqZWN0LCAqYiogYW5kIHJldHVybiB0aGUgbnVtYmVyCiAgICAgICBvZiBieXRlcyB3cml0dGVuIChuZXZlciBsZXNzIHRoYW4gYGBsZW4oYilgYCwgc2luY2UgaWYgdGhlIHdyaXRlIGZhaWxzCi0gICAgICBhbiA6ZXhjOmBJT0Vycm9yYCB3aWxsIGJlIHJhaXNlZCkuICBEZXBlbmRpbmcgb24gdGhlIGFjdHVhbAorICAgICAgYW4gOmV4YzpgT1NFcnJvcmAgd2lsbCBiZSByYWlzZWQpLiAgRGVwZW5kaW5nIG9uIHRoZSBhY3R1YWwKICAgICAgIGltcGxlbWVudGF0aW9uLCB0aGVzZSBieXRlcyBtYXkgYmUgcmVhZGlseSB3cml0dGVuIHRvIHRoZSB1bmRlcmx5aW5nCiAgICAgICBzdHJlYW0sIG9yIGhlbGQgaW4gYSBidWZmZXIgZm9yIHBlcmZvcm1hbmNlIGFuZCBsYXRlbmN5IHJlYXNvbnMuCiAKQEAgLTQ2Miw3ICs0NTgsNyBAQAogUmF3IEZpbGUgSS9PCiBeXl5eXl5eXl5eXl4KIAotLi4gY2xhc3M6OiBGaWxlSU8obmFtZSwgbW9kZT0ncicsIGNsb3NlZmQ9VHJ1ZSkKKy4uIGNsYXNzOjogRmlsZUlPKG5hbWUsIG1vZGU9J3InLCBjbG9zZWZkPVRydWUsIG9wZW5lcj1Ob25lKQogCiAgICA6Y2xhc3M6YEZpbGVJT2AgcmVwcmVzZW50cyBhbiBPUy1sZXZlbCBmaWxlIGNvbnRhaW5pbmcgYnl0ZXMgZGF0YS4KICAgIEl0IGltcGxlbWVudHMgdGhlIDpjbGFzczpgUmF3SU9CYXNlYCBpbnRlcmZhY2UgKGFuZCB0aGVyZWZvcmUgdGhlCkBAIC00NzUsMTQgKzQ3MSwyNyBAQAogICAgKiBhbiBpbnRlZ2VyIHJlcHJlc2VudGluZyB0aGUgbnVtYmVyIG9mIGFuIGV4aXN0aW5nIE9TLWxldmVsIGZpbGUgZGVzY3JpcHRvcgogICAgICB0byB3aGljaCB0aGUgcmVzdWx0aW5nIDpjbGFzczpgRmlsZUlPYCBvYmplY3Qgd2lsbCBnaXZlIGFjY2Vzcy4KIAotICAgVGhlICptb2RlKiBjYW4gYmUgYGAncidgYCwgYGAndydgYCBvciBgYCdhJ2BgIGZvciByZWFkaW5nIChkZWZhdWx0KSwgd3JpdGluZywKLSAgIG9yIGFwcGVuZGluZy4gIFRoZSBmaWxlIHdpbGwgYmUgY3JlYXRlZCBpZiBpdCBkb2Vzbid0IGV4aXN0IHdoZW4gb3BlbmVkIGZvcgotICAgd3JpdGluZyBvciBhcHBlbmRpbmc7IGl0IHdpbGwgYmUgdHJ1bmNhdGVkIHdoZW4gb3BlbmVkIGZvciB3cml0aW5nLiAgQWRkIGEKKyAgIFRoZSAqbW9kZSogY2FuIGJlIGBgJ3InYGAsIGBgJ3cnYGAsIGBgJ3gnYGAgb3IgYGAnYSdgYCBmb3IgcmVhZGluZworICAgKGRlZmF1bHQpLCB3cml0aW5nLCBleGNsdXNpdmUgY3JlYXRpb24gb3IgYXBwZW5kaW5nLiBUaGUgZmlsZSB3aWxsIGJlCisgICBjcmVhdGVkIGlmIGl0IGRvZXNuJ3QgZXhpc3Qgd2hlbiBvcGVuZWQgZm9yIHdyaXRpbmcgb3IgYXBwZW5kaW5nOyBpdCB3aWxsIGJlCisgICB0cnVuY2F0ZWQgd2hlbiBvcGVuZWQgZm9yIHdyaXRpbmcuIDpleGM6YEZpbGVFeGlzdHNFcnJvcmAgd2lsbCBiZSByYWlzZWQgaWYKKyAgIGl0IGFscmVhZHkgZXhpc3RzIHdoZW4gb3BlbmVkIGZvciBjcmVhdGluZy4gT3BlbmluZyBhIGZpbGUgZm9yIGNyZWF0aW5nCisgICBpbXBsaWVzIHdyaXRpbmcsIHNvIHRoaXMgbW9kZSBiZWhhdmVzIGluIGEgc2ltaWxhciB3YXkgdG8gYGAndydgYC4gQWRkIGEKICAgIGBgJysnYGAgdG8gdGhlIG1vZGUgdG8gYWxsb3cgc2ltdWx0YW5lb3VzIHJlYWRpbmcgYW5kIHdyaXRpbmcuCiAKICAgIFRoZSA6bWV0aDpgcmVhZGAgKHdoZW4gY2FsbGVkIHdpdGggYSBwb3NpdGl2ZSBhcmd1bWVudCksIDptZXRoOmByZWFkaW50b2AKICAgIGFuZCA6bWV0aDpgd3JpdGVgIG1ldGhvZHMgb24gdGhpcyBjbGFzcyB3aWxsIG9ubHkgbWFrZSBvbmUgc3lzdGVtIGNhbGwuCiAKKyAgIEEgY3VzdG9tIG9wZW5lciBjYW4gYmUgdXNlZCBieSBwYXNzaW5nIGEgY2FsbGFibGUgYXMgKm9wZW5lciouIFRoZSB1bmRlcmx5aW5nCisgICBmaWxlIGRlc2NyaXB0b3IgZm9yIHRoZSBmaWxlIG9iamVjdCBpcyB0aGVuIG9idGFpbmVkIGJ5IGNhbGxpbmcgKm9wZW5lciogd2l0aAorICAgKCpuYW1lKiwgKmZsYWdzKikuICpvcGVuZXIqIG11c3QgcmV0dXJuIGFuIG9wZW4gZmlsZSBkZXNjcmlwdG9yIChwYXNzaW5nCisgICA6bW9kOmBvcy5vcGVuYCBhcyAqb3BlbmVyKiByZXN1bHRzIGluIGZ1bmN0aW9uYWxpdHkgc2ltaWxhciB0byBwYXNzaW5nCisgICBgYE5vbmVgYCkuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKm9wZW5lciogcGFyYW1ldGVyIHdhcyBhZGRlZC4KKyAgICAgIFRoZSBgYCd4J2BgIG1vZGUgd2FzIGFkZGVkLgorCiAgICBJbiBhZGRpdGlvbiB0byB0aGUgYXR0cmlidXRlcyBhbmQgbWV0aG9kcyBmcm9tIDpjbGFzczpgSU9CYXNlYCBhbmQKICAgIDpjbGFzczpgUmF3SU9CYXNlYCwgOmNsYXNzOmBGaWxlSU9gIHByb3ZpZGVzIHRoZSBmb2xsb3dpbmcgZGF0YQogICAgYXR0cmlidXRlcyBhbmQgbWV0aG9kczoKQEAgLTczNiw3ICs3NDUsOCBAQAogICAgICAgd3JpdHRlbi4KIAogCi0uLiBjbGFzczo6IFRleHRJT1dyYXBwZXIoYnVmZmVyLCBlbmNvZGluZz1Ob25lLCBlcnJvcnM9Tm9uZSwgbmV3bGluZT1Ob25lLCBsaW5lX2J1ZmZlcmluZz1GYWxzZSkKKy4uIGNsYXNzOjogVGV4dElPV3JhcHBlcihidWZmZXIsIGVuY29kaW5nPU5vbmUsIGVycm9ycz1Ob25lLCBuZXdsaW5lPU5vbmUsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lX2J1ZmZlcmluZz1GYWxzZSwgd3JpdGVfdGhyb3VnaD1GYWxzZSkKIAogICAgQSBidWZmZXJlZCB0ZXh0IHN0cmVhbSBvdmVyIGEgOmNsYXNzOmBCdWZmZXJlZElPQmFzZWAgYmluYXJ5IHN0cmVhbS4KICAgIEl0IGluaGVyaXRzIDpjbGFzczpgVGV4dElPQmFzZWAuCkBAIC03NjcsNiArNzc3LDEzIEBACiAgICBJZiAqbGluZV9idWZmZXJpbmcqIGlzIGBgVHJ1ZWBgLCA6bWV0aDpgZmx1c2hgIGlzIGltcGxpZWQgd2hlbiBhIGNhbGwgdG8KICAgIHdyaXRlIGNvbnRhaW5zIGEgbmV3bGluZSBjaGFyYWN0ZXIuCiAKKyAgIElmICp3cml0ZV90aHJvdWdoKiBpcyBgYFRydWVgYCwgY2FsbHMgdG8gOm1ldGg6YHdyaXRlYCBhcmUgZ3VhcmFudGVlZAorICAgbm90IHRvIGJlIGJ1ZmZlcmVkOiBhbnkgZGF0YSB3cml0dGVuIG9uIHRoZSA6Y2xhc3M6YFRleHRJT1dyYXBwZXJgCisgICBvYmplY3QgaXMgaW1tZWRpYXRlbHkgaGFuZGxlZCB0byBpdHMgdW5kZXJseWluZyBiaW5hcnkgKmJ1ZmZlciouCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKndyaXRlX3Rocm91Z2gqIGFyZ3VtZW50IGhhcyBiZWVuIGFkZGVkLgorCiAgICA6Y2xhc3M6YFRleHRJT1dyYXBwZXJgIHByb3ZpZGVzIG9uZSBhdHRyaWJ1dGUgaW4gYWRkaXRpb24gdG8gdGhvc2Ugb2YKICAgIDpjbGFzczpgVGV4dElPQmFzZWAgYW5kIGl0cyBwYXJlbnRzOgogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9pdGVydG9vbHMucnN0IGIvRG9jL2xpYnJhcnkvaXRlcnRvb2xzLnJzdAppbmRleCBkMWQxMTg4Li45OTRhMjVhIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9pdGVydG9vbHMucnN0CisrKyBiL0RvYy9saWJyYXJ5L2l0ZXJ0b29scy5yc3QKQEAgLTQ2LDcgKzQ2LDcgQEAKID09PT09PT09PT09PT09PT09PT09ICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT0gICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIEl0ZXJhdG9yICAgICAgICAgICAgICAgIEFyZ3VtZW50cyAgICAgICAgICAgICAgICAgICAgICAgUmVzdWx0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEV4YW1wbGUKID09PT09PT09PT09PT09PT09PT09ICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT0gICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLTpmdW5jOmBhY2N1bXVsYXRlYCAgICAgIHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDAsIHAwK3AxLCBwMCtwMStwMiwgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgYWNjdW11bGF0ZShbMSwyLDMsNCw1XSkgLS0+IDEgMyA2IDEwIDE1YGAKKzpmdW5jOmBhY2N1bXVsYXRlYCAgICAgIHAgWyxmdW5jXSAgICAgICAgICAgICAgICAgICAgICAgcDAsIHAwK3AxLCBwMCtwMStwMiwgLi4uICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBgYWNjdW11bGF0ZShbMSwyLDMsNCw1XSkgLS0+IDEgMyA2IDEwIDE1YGAKIDpmdW5jOmBjaGFpbmAgICAgICAgICAgIHAsIHEsIC4uLiAgICAgICAgICAgICAgICAgICAgICAgcDAsIHAxLCAuLi4gcGxhc3QsIHEwLCBxMSwgLi4uICAgICAgICAgICAgICAgICAgICAgIGBgY2hhaW4oJ0FCQycsICdERUYnKSAtLT4gQSBCIEMgRCBFIEZgYAogOmZ1bmM6YGNvbXByZXNzYCAgICAgICAgZGF0YSwgc2VsZWN0b3JzICAgICAgICAgICAgICAgICAoZFswXSBpZiBzWzBdKSwgKGRbMV0gaWYgc1sxXSksIC4uLiAgICAgICAgICAgICAgICAgYGBjb21wcmVzcygnQUJDREVGJywgWzEsMCwxLDAsMSwxXSkgLS0+IEEgQyBFIEZgYAogOmZ1bmM6YGRyb3B3aGlsZWAgICAgICAgcHJlZCwgc2VxICAgICAgICAgICAgICAgICAgICAgICBzZXFbbl0sIHNlcVtuKzFdLCBzdGFydGluZyB3aGVuIHByZWQgZmFpbHMgICAgICAgICAgYGBkcm9wd2hpbGUobGFtYmRhIHg6IHg8NSwgWzEsNCw2LDQsMV0pIC0tPiA2IDQgMWBgCkBAIC04NCwyMyArODQsNjEgQEAKIHN0cmVhbXMgb2YgaW5maW5pdGUgbGVuZ3RoLCBzbyB0aGV5IHNob3VsZCBvbmx5IGJlIGFjY2Vzc2VkIGJ5IGZ1bmN0aW9ucyBvcgogbG9vcHMgdGhhdCB0cnVuY2F0ZSB0aGUgc3RyZWFtLgogCi0uLiBmdW5jdGlvbjo6IGFjY3VtdWxhdGUoaXRlcmFibGUpCisuLiBmdW5jdGlvbjo6IGFjY3VtdWxhdGUoaXRlcmFibGVbLCBmdW5jXSkKIAogICAgIE1ha2UgYW4gaXRlcmF0b3IgdGhhdCByZXR1cm5zIGFjY3VtdWxhdGVkIHN1bXMuIEVsZW1lbnRzIG1heSBiZSBhbnkgYWRkYWJsZQotICAgIHR5cGUgaW5jbHVkaW5nIDpjbGFzczpgRGVjaW1hbGAgb3IgOmNsYXNzOmBGcmFjdGlvbmAuICBFcXVpdmFsZW50IHRvOjoKKyAgICB0eXBlIGluY2x1ZGluZyA6Y2xhc3M6YERlY2ltYWxgIG9yIDpjbGFzczpgRnJhY3Rpb25gLiAgSWYgdGhlIG9wdGlvbmFsCisgICAgKmZ1bmMqIGFyZ3VtZW50IGlzIHN1cHBsaWVkLCBpdCBzaG91bGQgYmUgYSBmdW5jdGlvbiBvZiB0d28gYXJndW1lbnRzCisgICAgYW5kIGl0IHdpbGwgYmUgdXNlZCBpbnN0ZWFkIG9mIGFkZGl0aW9uLgogCi0gICAgICAgIGRlZiBhY2N1bXVsYXRlKGl0ZXJhYmxlKToKKyAgICBFcXVpdmFsZW50IHRvOjoKKworICAgICAgICBkZWYgYWNjdW11bGF0ZShpdGVyYWJsZSwgZnVuYz1vcGVyYXRvci5hZGQpOgogICAgICAgICAgICAgJ1JldHVybiBydW5uaW5nIHRvdGFscycKICAgICAgICAgICAgICMgYWNjdW11bGF0ZShbMSwyLDMsNCw1XSkgLS0+IDEgMyA2IDEwIDE1CisgICAgICAgICAgICAjIGFjY3VtdWxhdGUoWzEsMiwzLDQsNV0sIG9wZXJhdG9yLm11bCkgLS0+IDEgMiA2IDI0IDEyMAogICAgICAgICAgICAgaXQgPSBpdGVyKGl0ZXJhYmxlKQogICAgICAgICAgICAgdG90YWwgPSBuZXh0KGl0KQogICAgICAgICAgICAgeWllbGQgdG90YWwKICAgICAgICAgICAgIGZvciBlbGVtZW50IGluIGl0OgotICAgICAgICAgICAgICAgIHRvdGFsID0gdG90YWwgKyBlbGVtZW50CisgICAgICAgICAgICAgICAgdG90YWwgPSBmdW5jKHRvdGFsLCBlbGVtZW50KQogICAgICAgICAgICAgICAgIHlpZWxkIHRvdGFsCiAKKyAgICBUaGVyZSBhcmUgYSBudW1iZXIgb2YgdXNlcyBmb3IgdGhlICpmdW5jKiBhcmd1bWVudC4gIEl0IGNhbiBiZSBzZXQgdG8KKyAgICA6ZnVuYzpgbWluYCBmb3IgYSBydW5uaW5nIG1pbmltdW0sIDpmdW5jOmBtYXhgIGZvciBhIHJ1bm5pbmcgbWF4aW11bSwgb3IKKyAgICA6ZnVuYzpgb3BlcmF0b3IubXVsYCBmb3IgYSBydW5uaW5nIHByb2R1Y3QuICBBbW9ydGl6YXRpb24gdGFibGVzIGNhbiBiZQorICAgIGJ1aWx0IGJ5IGFjY3VtdWxhdGluZyBpbnRlcmVzdCBhbmQgYXBwbHlpbmcgcGF5bWVudHMuICBGaXJzdC1vcmRlcgorICAgIGByZWN1cnJlbmNlIHJlbGF0aW9ucyA8aHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9SZWN1cnJlbmNlX3JlbGF0aW9uPmBfCisgICAgY2FuIGJlIG1vZGVsZWQgYnkgc3VwcGx5aW5nIHRoZSBpbml0aWFsIHZhbHVlIGluIHRoZSBpdGVyYWJsZSBhbmQgdXNpbmcgb25seQorICAgIHRoZSBhY2N1bXVsYXRlZCB0b3RhbCBpbiAqZnVuYyogYXJndW1lbnQ6OgorCisgICAgICA+Pj4gZGF0YSA9IFszLCA0LCA2LCAyLCAxLCA5LCAwLCA3LCA1LCA4XQorICAgICAgPj4+IGxpc3QoYWNjdW11bGF0ZShkYXRhLCBvcGVyYXRvci5tdWwpKSAgICAgIyBydW5uaW5nIHByb2R1Y3QKKyAgICAgIFszLCAxMiwgNzIsIDE0NCwgMTQ0LCAxMjk2LCAwLCAwLCAwLCAwXQorICAgICAgPj4+IGxpc3QoYWNjdW11bGF0ZShkYXRhLCBtYXgpKSAgICAgICAgICAgICAgIyBydW5uaW5nIG1heGltdW0KKyAgICAgIFszLCA0LCA2LCA2LCA2LCA5LCA5LCA5LCA5LCA5XQorCisgICAgICAjIEFtb3J0aXplIGEgNSUgbG9hbiBvZiAxMDAwIHdpdGggNCBhbm51YWwgcGF5bWVudHMgb2YgOTAKKyAgICAgID4+PiBjYXNoZmxvd3MgPSBbMTAwMCwgLTkwLCAtOTAsIC05MCwgLTkwXQorICAgICAgPj4+IGxpc3QoYWNjdW11bGF0ZShjYXNoZmxvd3MsIGxhbWJkYSBiYWwsIHBtdDogYmFsKjEuMDUgKyBwbXQpKQorICAgICAgWzEwMDAsIDk2MC4wLCA5MTguMCwgODczLjkwMDAwMDAwMDAwMDEsIDgyNy41OTUwMDAwMDAwMDAxXQorCisgICAgICAjIENoYW90aWMgcmVjdXJyZW5jZSByZWxhdGlvbiBodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0xvZ2lzdGljX21hcAorICAgICAgPj4+IGxvZ2lzdGljX21hcCA9IGxhbWJkYSB4LCBfOiAgciAqIHggKiAoMSAtIHgpCisgICAgICA+Pj4gciA9IDMuOAorICAgICAgPj4+IHgwID0gMC40CisgICAgICA+Pj4gaW5wdXRzID0gcmVwZWF0KHgwLCAzNikgICAgICMgb25seSB0aGUgaW5pdGlhbCB2YWx1ZSBpcyB1c2VkCisgICAgICA+Pj4gW2Zvcm1hdCh4LCAnLjJmJykgZm9yIHggaW4gYWNjdW11bGF0ZShpbnB1dHMsIGxvZ2lzdGljX21hcCldCisgICAgICBbJzAuNDAnLCAnMC45MScsICcwLjMwJywgJzAuODEnLCAnMC42MCcsICcwLjkyJywgJzAuMjknLCAnMC43OScsICcwLjYzJywKKyAgICAgICAnMC44OCcgLCcwLjM5JywgJzAuOTAnLCAnMC4zMycsICcwLjg0JywgJzAuNTInLCAnMC45NScsICcwLjE4JywgJzAuNTcnLAorICAgICAgICcwLjkzJywgJzAuMjUnLCAnMC43MScsICcwLjc5JywgJzAuNjMnLCAnMC44OCcsICcwLjM5JywgJzAuOTEnLCAnMC4zMicsCisgICAgICAgJzAuODMnLCAnMC41NCcsICcwLjk1JywgJzAuMjAnLCAnMC42MCcsICcwLjkxJywgJzAuMzAnLCAnMC44MCcsICcwLjYwJ10KKwogICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCisgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICBBZGRlZCB0aGUgb3B0aW9uYWwgKmZ1bmMqIHBhcmFtZXRlci4KKwogLi4gZnVuY3Rpb246OiBjaGFpbigqaXRlcmFibGVzKQogCiAgICBNYWtlIGFuIGl0ZXJhdG9yIHRoYXQgcmV0dXJucyBlbGVtZW50cyBmcm9tIHRoZSBmaXJzdCBpdGVyYWJsZSB1bnRpbCBpdCBpcwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvbG9nZ2luZy5oYW5kbGVycy5yc3QgYi9Eb2MvbGlicmFyeS9sb2dnaW5nLmhhbmRsZXJzLnJzdAppbmRleCBjNGRkNDM4Li41MWU0NzZiIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9sb2dnaW5nLmhhbmRsZXJzLnJzdAorKysgYi9Eb2MvbGlicmFyeS9sb2dnaW5nLmhhbmRsZXJzLnJzdApAQCAtMTY0LDYgKzE2NCw4NyBAQAogICAgICAgY2hhbmdlZC4gIElmIGl0IGhhcywgdGhlIGV4aXN0aW5nIHN0cmVhbSBpcyBmbHVzaGVkIGFuZCBjbG9zZWQgYW5kIHRoZQogICAgICAgZmlsZSBvcGVuZWQgYWdhaW4sIGJlZm9yZSBvdXRwdXR0aW5nIHRoZSByZWNvcmQgdG8gdGhlIGZpbGUuCiAKKy4uIF9iYXNlLXJvdGF0aW5nLWhhbmRsZXI6CisKK0Jhc2VSb3RhdGluZ0hhbmRsZXIKK15eXl5eXl5eXl5eXl5eXl5eXl4KKworVGhlIDpjbGFzczpgQmFzZVJvdGF0aW5nSGFuZGxlcmAgY2xhc3MsIGxvY2F0ZWQgaW4gdGhlIDptb2Q6YGxvZ2dpbmcuaGFuZGxlcnNgCittb2R1bGUsIGlzIHRoZSBiYXNlIGNsYXNzIGZvciB0aGUgcm90YXRpbmcgZmlsZSBoYW5kbGVycywKKzpjbGFzczpgUm90YXRpbmdGaWxlSGFuZGxlcmAgYW5kIDpjbGFzczpgVGltZWRSb3RhdGluZ0ZpbGVIYW5kbGVyYC4gWW91IHNob3VsZAorbm90IG5lZWQgdG8gaW5zdGFudGlhdGUgdGhpcyBjbGFzcywgYnV0IGl0IGhhcyBhdHRyaWJ1dGVzIGFuZCBtZXRob2RzIHlvdSBtYXkKK25lZWQgdG8gb3ZlcnJpZGUuCisKKy4uIGNsYXNzOjogQmFzZVJvdGF0aW5nSGFuZGxlcihmaWxlbmFtZSwgbW9kZSwgZW5jb2Rpbmc9Tm9uZSwgZGVsYXk9RmFsc2UpCisKKyAgIFRoZSBwYXJhbWV0ZXJzIGFyZSBhcyBmb3IgOmNsYXNzOmBGaWxlSGFuZGxlcmAuIFRoZSBhdHRyaWJ1dGVzIGFyZToKKworICAgLi4gYXR0cmlidXRlOjogbmFtZXIKKworICAgICAgSWYgdGhpcyBhdHRyaWJ1dGUgaXMgc2V0IHRvIGEgY2FsbGFibGUsIHRoZSA6bWV0aDpgcm90YXRpb25fZmlsZW5hbWVgCisgICAgICBtZXRob2QgZGVsZWdhdGVzIHRvIHRoaXMgY2FsbGFibGUuIFRoZSBwYXJhbWV0ZXJzIHBhc3NlZCB0byB0aGUgY2FsbGFibGUKKyAgICAgIGFyZSB0aG9zZSBwYXNzZWQgdG8gOm1ldGg6YHJvdGF0aW9uX2ZpbGVuYW1lYC4KKworICAgICAgLi4gbm90ZTo6IFRoZSBuYW1lciBmdW5jdGlvbiBpcyBjYWxsZWQgcXVpdGUgYSBmZXcgdGltZXMgZHVyaW5nIHJvbGxvdmVyLAorICAgICAgICAgc28gaXQgc2hvdWxkIGJlIGFzIHNpbXBsZSBhbmQgYXMgZmFzdCBhcyBwb3NzaWJsZS4gSXQgc2hvdWxkIGFsc28KKyAgICAgICAgIHJldHVybiB0aGUgc2FtZSBvdXRwdXQgZXZlcnkgdGltZSBmb3IgYSBnaXZlbiBpbnB1dCwgb3RoZXJ3aXNlIHRoZQorICAgICAgICAgcm9sbG92ZXIgYmVoYXZpb3VyIG1heSBub3Qgd29yayBhcyBleHBlY3RlZC4KKworICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworICAgLi4gYXR0cmlidXRlOjogQmFzZVJvdGF0aW5nSGFuZGxlci5yb3RhdG9yCisKKyAgICAgIElmIHRoaXMgYXR0cmlidXRlIGlzIHNldCB0byBhIGNhbGxhYmxlLCB0aGUgOm1ldGg6YHJvdGF0ZWAgbWV0aG9kCisgICAgICBkZWxlZ2F0ZXMgdG8gdGhpcyBjYWxsYWJsZS4gIFRoZSBwYXJhbWV0ZXJzIHBhc3NlZCB0byB0aGUgY2FsbGFibGUgYXJlCisgICAgICB0aG9zZSBwYXNzZWQgdG8gOm1ldGg6YHJvdGF0ZWAuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisgICAuLiBtZXRob2Q6OiBCYXNlUm90YXRpbmdIYW5kbGVyLnJvdGF0aW9uX2ZpbGVuYW1lKGRlZmF1bHRfbmFtZSkKKworICAgICAgTW9kaWZ5IHRoZSBmaWxlbmFtZSBvZiBhIGxvZyBmaWxlIHdoZW4gcm90YXRpbmcuCisKKyAgICAgIFRoaXMgaXMgcHJvdmlkZWQgc28gdGhhdCBhIGN1c3RvbSBmaWxlbmFtZSBjYW4gYmUgcHJvdmlkZWQuCisKKyAgICAgIFRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uIGNhbGxzIHRoZSAnbmFtZXInIGF0dHJpYnV0ZSBvZiB0aGUgaGFuZGxlciwKKyAgICAgIGlmIGl0J3MgY2FsbGFibGUsIHBhc3NpbmcgdGhlIGRlZmF1bHQgbmFtZSB0byBpdC4gSWYgdGhlIGF0dHJpYnV0ZSBpc24ndAorICAgICAgY2FsbGFibGUgKHRoZSBkZWZhdWx0IGlzIGBgTm9uZWBgKSwgdGhlIG5hbWUgaXMgcmV0dXJuZWQgdW5jaGFuZ2VkLgorCisgICAgICA6cGFyYW0gZGVmYXVsdF9uYW1lOiBUaGUgZGVmYXVsdCBuYW1lIGZvciB0aGUgbG9nIGZpbGUuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKyAgIC4uIG1ldGhvZDo6IEJhc2VSb3RhdGluZ0hhbmRsZXIucm90YXRlKHNvdXJjZSwgZGVzdCkKKworICAgICAgV2hlbiByb3RhdGluZywgcm90YXRlIHRoZSBjdXJyZW50IGxvZy4KKworICAgICAgVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gY2FsbHMgdGhlICdyb3RhdG9yJyBhdHRyaWJ1dGUgb2YgdGhlIGhhbmRsZXIsCisgICAgICBpZiBpdCdzIGNhbGxhYmxlLCBwYXNzaW5nIHRoZSBzb3VyY2UgYW5kIGRlc3QgYXJndW1lbnRzIHRvIGl0LiBJZiB0aGUKKyAgICAgIGF0dHJpYnV0ZSBpc24ndCBjYWxsYWJsZSAodGhlIGRlZmF1bHQgaXMgYGBOb25lYGApLCB0aGUgc291cmNlIGlzIHNpbXBseQorICAgICAgcmVuYW1lZCB0byB0aGUgZGVzdGluYXRpb24uCisKKyAgICAgIDpwYXJhbSBzb3VyY2U6IFRoZSBzb3VyY2UgZmlsZW5hbWUuIFRoaXMgaXMgbm9ybWFsbHkgdGhlIGJhc2UKKyAgICAgICAgICAgICAgICAgICAgIGZpbGVuYW1lLCBlLmcuICd0ZXN0LmxvZycKKyAgICAgIDpwYXJhbSBkZXN0OiAgIFRoZSBkZXN0aW5hdGlvbiBmaWxlbmFtZS4gVGhpcyBpcyBub3JtYWxseQorICAgICAgICAgICAgICAgICAgICAgd2hhdCB0aGUgc291cmNlIGlzIHJvdGF0ZWQgdG8sIGUuZy4gJ3Rlc3QubG9nLjEnLgorCisgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworVGhlIHJlYXNvbiB0aGUgYXR0cmlidXRlcyBleGlzdCBpcyB0byBzYXZlIHlvdSBoYXZpbmcgdG8gc3ViY2xhc3MgLSB5b3UgY2FuIHVzZQordGhlIHNhbWUgY2FsbGFibGVzIGZvciBpbnN0YW5jZXMgb2YgOmNsYXNzOmBSb3RhdGluZ0ZpbGVIYW5kbGVyYCBhbmQKKzpjbGFzczpgVGltZWRSb3RhdGluZ0ZpbGVIYW5kbGVyYC4gSWYgZWl0aGVyIHRoZSBuYW1lciBvciByb3RhdG9yIGNhbGxhYmxlCityYWlzZXMgYW4gZXhjZXB0aW9uLCB0aGlzIHdpbGwgYmUgaGFuZGxlZCBpbiB0aGUgc2FtZSB3YXkgYXMgYW55IG90aGVyCitleGNlcHRpb24gZHVyaW5nIGFuIDptZXRoOmBlbWl0YCBjYWxsLCBpLmUuIHZpYSB0aGUgOm1ldGg6YGhhbmRsZUVycm9yYCBtZXRob2QKK29mIHRoZSBoYW5kbGVyLgorCitJZiB5b3UgbmVlZCB0byBtYWtlIG1vcmUgc2lnbmlmaWNhbnQgY2hhbmdlcyB0byByb3RhdGlvbiBwcm9jZXNzaW5nLCB5b3UgY2FuCitvdmVycmlkZSB0aGUgbWV0aG9kcy4KKworRm9yIGFuIGV4YW1wbGUsIHNlZSA6cmVmOmBjb29rYm9vay1yb3RhdG9yLW5hbWVyYC4KKworCiAuLiBfcm90YXRpbmctZmlsZS1oYW5kbGVyOgogCiBSb3RhdGluZ0ZpbGVIYW5kbGVyCkBAIC00NTIsNiArNTMzLDE1IEBACiAgICAgICAgICBiZWhhdmlvdXIpIGJ1dCBjYW4gYmUgc2V0IHRvIGBgRmFsc2VgYCBvbiBhIGBgU3lzTG9nSGFuZGxlcmBgIGluc3RhbmNlCiAgICAgICAgICBpbiBvcmRlciBmb3IgdGhhdCBpbnN0YW5jZSB0byAqbm90KiBhcHBlbmQgdGhlIE5VTCB0ZXJtaW5hdG9yLgogCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgICAgKFNlZTogOmlzc3VlOmAxMjQxOWAuKSBJbiBlYXJsaWVyIHZlcnNpb25zLCB0aGVyZSB3YXMgbm8gZmFjaWxpdHkgZm9yCisgICAgICAgICBhbiAiaWRlbnQiIG9yICJ0YWciIHByZWZpeCB0byBpZGVudGlmeSB0aGUgc291cmNlIG9mIHRoZSBtZXNzYWdlLiBUaGlzCisgICAgICAgICBjYW4gbm93IGJlIHNwZWNpZmllZCB1c2luZyBhIGNsYXNzLWxldmVsIGF0dHJpYnV0ZSwgZGVmYXVsdGluZyB0bworICAgICAgICAgYGAiImBgIHRvIHByZXNlcnZlIGV4aXN0aW5nIGJlaGF2aW91ciwgYnV0IHdoaWNoIGNhbiBiZSBvdmVycmlkZGVuIG9uCisgICAgICAgICBhIGBgU3lzTG9nSGFuZGxlcmBgIGluc3RhbmNlIGluIG9yZGVyIGZvciB0aGF0IGluc3RhbmNlIHRvIHByZXBlbmQKKyAgICAgICAgIHRoZSBpZGVudCB0byBldmVyeSBtZXNzYWdlIGhhbmRsZWQuIE5vdGUgdGhhdCB0aGUgcHJvdmlkZWQgaWRlbnQgbXVzdAorICAgICAgICAgYmUgdGV4dCwgbm90IGJ5dGVzLCBhbmQgaXMgcHJlcGVuZGVkIHRvIHRoZSBtZXNzYWdlIGV4YWN0bHkgYXMgaXMuCisKICAgIC4uIG1ldGhvZDo6IGVuY29kZVByaW9yaXR5KGZhY2lsaXR5LCBwcmlvcml0eSkKIAogICAgICAgRW5jb2RlcyB0aGUgZmFjaWxpdHkgYW5kIHByaW9yaXR5IGludG8gYW4gaW50ZWdlci4gWW91IGNhbiBwYXNzIGluIHN0cmluZ3MKQEAgLTY5MCw3ICs3ODAsNyBAQAogCiAgICAuLiBtZXRob2Q6OiBjbG9zZSgpCiAKLSAgICAgIENhbGxzIDptZXRoOmBmbHVzaGAsIHNldHMgdGhlIHRhcmdldCB0byA6Y29uc3Q6YE5vbmVgIGFuZCBjbGVhcnMgdGhlCisgICAgICBDYWxscyA6bWV0aDpgZmx1c2hgLCBzZXRzIHRoZSB0YXJnZXQgdG8gYGBOb25lYGAgYW5kIGNsZWFycyB0aGUKICAgICAgIGJ1ZmZlci4KIAogCkBAIC04NTksNiArOTQ5LDE1IEBACiAgICAgICBOb3RlIHRoYXQgaWYgeW91IGRvbid0IGNhbGwgdGhpcyBiZWZvcmUgeW91ciBhcHBsaWNhdGlvbiBleGl0cywgdGhlcmUKICAgICAgIG1heSBiZSBzb21lIHJlY29yZHMgc3RpbGwgbGVmdCBvbiB0aGUgcXVldWUsIHdoaWNoIHdvbid0IGJlIHByb2Nlc3NlZC4KIAorICAgLi4gbWV0aG9kOjogZW5xdWV1ZV9zZW50aW5lbCgpCisKKyAgICAgIFdyaXRlcyBhIHNlbnRpbmVsIHRvIHRoZSBxdWV1ZSB0byB0ZWxsIHRoZSBsaXN0ZW5lciB0byBxdWl0LiBUaGlzCisgICAgICBpbXBsZW1lbnRhdGlvbiB1c2VzIGBgcHV0X25vd2FpdCgpYGAuICBZb3UgbWF5IHdhbnQgdG8gb3ZlcnJpZGUgdGhpcworICAgICAgbWV0aG9kIGlmIHlvdSB3YW50IHRvIHVzZSB0aW1lb3V0cyBvciB3b3JrIHdpdGggY3VzdG9tIHF1ZXVlCisgICAgICBpbXBsZW1lbnRhdGlvbnMuCisKKyAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAKIC4uIHNlZWFsc286OgogCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9sb2dnaW5nLnJzdCBiL0RvYy9saWJyYXJ5L2xvZ2dpbmcucnN0CmluZGV4IDVhNDExNjAuLmIwNDg3ZGQgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L2xvZ2dpbmcucnN0CisrKyBiL0RvYy9saWJyYXJ5L2xvZ2dpbmcucnN0CkBAIC0yMDAsNiArMjAwLDkgQEAKICAgIExvZ3MgYSBtZXNzYWdlIHdpdGggbGV2ZWwgOmNvbnN0OmBXQVJOSU5HYCBvbiB0aGlzIGxvZ2dlci4gVGhlIGFyZ3VtZW50cyBhcmUKICAgIGludGVycHJldGVkIGFzIGZvciA6bWV0aDpgZGVidWdgLgogCisgICAuLiBub3RlOjogVGhlcmUgaXMgYW4gb2Jzb2xldGUgbWV0aG9kIGBgd2FybmBgIHdoaWNoIGlzIGZ1bmN0aW9uYWxseQorICAgICAgaWRlbnRpY2FsIHRvIGBgd2FybmluZ2BgLiBBcyBgYHdhcm5gYCBpcyBkZXByZWNhdGVkLCBwbGVhc2UgZG8gbm90IHVzZQorICAgICAgaXQgLSB1c2UgYGB3YXJuaW5nYGAgaW5zdGVhZC4KIAogLi4gbWV0aG9kOjogTG9nZ2VyLmVycm9yKG1zZywgKmFyZ3MsICoqa3dhcmdzKQogCkBAIC00NzcsNiArNDgwLDE5IEBACiAgICAgICB3YW50IGFsbCBsb2dnaW5nIHRpbWVzIHRvIGJlIHNob3duIGluIEdNVCwgc2V0IHRoZSBgYGNvbnZlcnRlcmBgCiAgICAgICBhdHRyaWJ1dGUgaW4gdGhlIGBgRm9ybWF0dGVyYGAgY2xhc3MuCiAKKyAgICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAgICBQcmV2aW91c2x5LCB0aGUgZGVmYXVsdCBJU08gODYwMSBmb3JtYXQgd2FzIGhhcmQtY29kZWQgYXMgaW4gdGhpcworICAgICAgICAgZXhhbXBsZTogYGAyMDEwLTA5LTA2IDIyOjM4OjE1LDI5MmBgIHdoZXJlIHRoZSBwYXJ0IGJlZm9yZSB0aGUgY29tbWEgaXMKKyAgICAgICAgIGhhbmRsZWQgYnkgYSBzdHJwdGltZSBmb3JtYXQgc3RyaW5nIChgYCclWS0lbS0lZCAlSDolTTolUydgYCksIGFuZCB0aGUKKyAgICAgICAgIHBhcnQgYWZ0ZXIgdGhlIGNvbW1hIGlzIGEgbWlsbGlzZWNvbmQgdmFsdWUuIEJlY2F1c2Ugc3RycHRpbWUgZG9lcyBub3QKKyAgICAgICAgIGhhdmUgYSBmb3JtYXQgcGxhY2Vob2xkZXIgZm9yIG1pbGxpc2Vjb25kcywgdGhlIG1pbGxpc2Vjb25kIHZhbHVlIGlzCisgICAgICAgICBhcHBlbmRlZCB1c2luZyBhbm90aGVyIGZvcm1hdCBzdHJpbmcsIGBgJyVzLCUwM2QnYGAg4oCTIGFuZCBib3RoIG9mIHRoZXNlCisgICAgICAgICBmb3JtYXQgc3RyaW5ncyBoYXZlIGJlZW4gaGFyZGNvZGVkIGludG8gdGhpcyBtZXRob2QuIFdpdGggdGhlIGNoYW5nZSwKKyAgICAgICAgIHRoZXNlIHN0cmluZ3MgYXJlIGRlZmluZWQgYXMgY2xhc3MtbGV2ZWwgYXR0cmlidXRlcyB3aGljaCBjYW4gYmUKKyAgICAgICAgIG92ZXJyaWRkZW4gYXQgdGhlIGluc3RhbmNlIGxldmVsIHdoZW4gZGVzaXJlZC4gVGhlIG5hbWVzIG9mIHRoZQorICAgICAgICAgYXR0cmlidXRlcyBhcmUgYGBkZWZhdWx0X3RpbWVfZm9ybWF0YGAgKGZvciB0aGUgc3RycHRpbWUgZm9ybWF0IHN0cmluZykKKyAgICAgICAgIGFuZCBgYGRlZmF1bHRfbXNlY19mb3JtYXRgYCAoZm9yIGFwcGVuZGluZyB0aGUgbWlsbGlzZWNvbmQgdmFsdWUpLgorCiAgICAuLiBtZXRob2Q6OiBmb3JtYXRFeGNlcHRpb24oZXhjX2luZm8pCiAKICAgICAgIEZvcm1hdHMgdGhlIHNwZWNpZmllZCBleGNlcHRpb24gaW5mb3JtYXRpb24gKGEgc3RhbmRhcmQgZXhjZXB0aW9uIHR1cGxlIGFzCkBAIC04ODMsOCArODk5LDEyIEBACiAKIC4uIGZ1bmN0aW9uOjogd2FybmluZyhtc2csICphcmdzLCAqKmt3YXJncykKIAotICAgTG9ncyBhIG1lc3NhZ2Ugd2l0aCBsZXZlbCA6Y29uc3Q6YFdBUk5JTkdgIG9uIHRoZSByb290IGxvZ2dlci4gVGhlIGFyZ3VtZW50cyBhcmUKLSAgIGludGVycHJldGVkIGFzIGZvciA6ZnVuYzpgZGVidWdgLgorICAgTG9ncyBhIG1lc3NhZ2Ugd2l0aCBsZXZlbCA6Y29uc3Q6YFdBUk5JTkdgIG9uIHRoZSByb290IGxvZ2dlci4gVGhlIGFyZ3VtZW50cworICAgYXJlIGludGVycHJldGVkIGFzIGZvciA6ZnVuYzpgZGVidWdgLgorCisgICAuLiBub3RlOjogVGhlcmUgaXMgYW4gb2Jzb2xldGUgZnVuY3Rpb24gYGB3YXJuYGAgd2hpY2ggaXMgZnVuY3Rpb25hbGx5CisgICAgICBpZGVudGljYWwgdG8gYGB3YXJuaW5nYGAuIEFzIGBgd2FybmBgIGlzIGRlcHJlY2F0ZWQsIHBsZWFzZSBkbyBub3QgdXNlCisgICAgICBpdCAtIHVzZSBgYHdhcm5pbmdgYCBpbnN0ZWFkLgogCiAKIC4uIGZ1bmN0aW9uOjogZXJyb3IobXNnLCAqYXJncywgKiprd2FyZ3MpCkBAIC0xMDA5LDEyICsxMDI5LDI3IEBACiAgICB8IGBgc3RyZWFtYGAgICB8IFVzZSB0aGUgc3BlY2lmaWVkIHN0cmVhbSB0byBpbml0aWFsaXplIHRoZSAgfAogICAgfCAgICAgICAgICAgICAgfCBTdHJlYW1IYW5kbGVyLiBOb3RlIHRoYXQgdGhpcyBhcmd1bWVudCBpcyAgIHwKICAgIHwgICAgICAgICAgICAgIHwgaW5jb21wYXRpYmxlIHdpdGggJ2ZpbGVuYW1lJyAtIGlmIGJvdGggYXJlICB8Ci0gICB8ICAgICAgICAgICAgICB8IHByZXNlbnQsICdzdHJlYW0nIGlzIGlnbm9yZWQuICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgfCBwcmVzZW50LCBhIGBgVmFsdWVFcnJvcmBgIGlzIHJhaXNlZC4gICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IGBgaGFuZGxlcnNgYCB8IElmIHNwZWNpZmllZCwgdGhpcyBzaG91bGQgYmUgYW4gaXRlcmFibGUgb2YgfAorICAgfCAgICAgICAgICAgICAgfCBhbHJlYWR5IGNyZWF0ZWQgaGFuZGxlcnMgdG8gYWRkIHRvIHRoZSByb290IHwKKyAgIHwgICAgICAgICAgICAgIHwgbG9nZ2VyLiBBbnkgaGFuZGxlcnMgd2hpY2ggZG9uJ3QgYWxyZWFkeSAgICB8CisgICB8ICAgICAgICAgICAgICB8IGhhdmUgYSBmb3JtYXR0ZXIgc2V0IHdpbGwgYmUgYXNzaWduZWQgdGhlICAgfAorICAgfCAgICAgICAgICAgICAgfCBkZWZhdWx0IGZvcm1hdHRlciBjcmVhdGVkIGluIHRoaXMgZnVuY3Rpb24uIHwKKyAgIHwgICAgICAgICAgICAgIHwgTm90ZSB0aGF0IHRoaXMgYXJndW1lbnQgaXMgaW5jb21wYXRpYmxlICAgICB8CisgICB8ICAgICAgICAgICAgICB8IHdpdGggJ2ZpbGVuYW1lJyBvciAnc3RyZWFtJyAtIGlmIGJvdGggYXJlICAgfAorICAgfCAgICAgICAgICAgICAgfCBwcmVzZW50LCBhIGBgVmFsdWVFcnJvcmBgIGlzIHJhaXNlZC4gICAgICAgIHwKICAgICstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yCiAgICAgICBUaGUgYGBzdHlsZWBgIGFyZ3VtZW50IHdhcyBhZGRlZC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSBgYGhhbmRsZXJzYGAgYXJndW1lbnQgd2FzIGFkZGVkLiBBZGRpdGlvbmFsIGNoZWNrcyB3ZXJlIGFkZGVkIHRvCisgICAgICBjYXRjaCBzaXR1YXRpb25zIHdoZXJlIGluY29tcGF0aWJsZSBhcmd1bWVudHMgYXJlIHNwZWNpZmllZCAoZS5nLgorICAgICAgYGBoYW5kbGVyc2BgIHRvZ2V0aGVyIHdpdGggYGBzdHJlYW1gYCBvciBgYGZpbGVuYW1lYGAsIG9yIGBgc3RyZWFtYGAKKyAgICAgIHRvZ2V0aGVyIHdpdGggYGBmaWxlbmFtZWBgKS4KKwogCiAuLiBmdW5jdGlvbjo6IHNodXRkb3duKCkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvbHptYS5yc3QgYi9Eb2MvbGlicmFyeS9sem1hLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zOTQxZWMxCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvbHptYS5yc3QKQEAgLTAsMCArMSwzNTIgQEAKKzptb2Q6YGx6bWFgIC0tLSBDb21wcmVzc2lvbiB1c2luZyB0aGUgTFpNQSBhbGdvcml0aG0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogbHptYQorICAgOnN5bm9wc2lzOiBBIFB5dGhvbiB3cmFwcGVyIGZvciB0aGUgbGlibHptYSBjb21wcmVzc2lvbiBsaWJyYXJ5LgorLi4gbW9kdWxlYXV0aG9yOjogTmFkZWVtIFZhd2RhIDxuYWRlZW0udmF3ZGFAZ21haWwuY29tPgorLi4gc2VjdGlvbmF1dGhvcjo6IE5hZGVlbSBWYXdkYSA8bmFkZWVtLnZhd2RhQGdtYWlsLmNvbT4KKworLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworVGhpcyBtb2R1bGUgcHJvdmlkZXMgY2xhc3NlcyBhbmQgY29udmVuaWVuY2UgZnVuY3Rpb25zIGZvciBjb21wcmVzc2luZyBhbmQKK2RlY29tcHJlc3NpbmcgZGF0YSB1c2luZyB0aGUgTFpNQSBjb21wcmVzc2lvbiBhbGdvcml0aG0uIEFsc28gaW5jbHVkZWQgaXMgYSBmaWxlCitpbnRlcmZhY2Ugc3VwcG9ydGluZyB0aGUgYGAueHpgYCBhbmQgbGVnYWN5IGBgLmx6bWFgYCBmaWxlIGZvcm1hdHMgdXNlZCBieSB0aGUKKzpwcm9ncmFtOmB4emAgdXRpbGl0eSwgYXMgd2VsbCBhcyByYXcgY29tcHJlc3NlZCBzdHJlYW1zLgorCitGb3IgcmVsYXRlZCBmaWxlIGZvcm1hdHMsIHNlZSB0aGUgOm1vZDpgYnoyYCwgOm1vZDpgZ3ppcGAsIDptb2Q6YHppcGZpbGVgLCBhbmQKKzptb2Q6YHRhcmZpbGVgIG1vZHVsZXMuCisKK1RoZSBpbnRlcmZhY2UgcHJvdmlkZWQgYnkgdGhpcyBtb2R1bGUgaXMgdmVyeSBzaW1pbGFyIHRvIHRoYXQgb2YgdGhlIDptb2Q6YGJ6MmAKK21vZHVsZS4gSG93ZXZlciwgbm90ZSB0aGF0IDpjbGFzczpgTFpNQUZpbGVgIGlzICpub3QqIHRocmVhZC1zYWZlLCB1bmxpa2UKKzpjbGFzczpgYnoyLkJaMkZpbGVgLCBzbyBpZiB5b3UgbmVlZCB0byB1c2UgYSBzaW5nbGUgOmNsYXNzOmBMWk1BRmlsZWAgaW5zdGFuY2UKK2Zyb20gbXVsdGlwbGUgdGhyZWFkcywgaXQgaXMgbmVjZXNzYXJ5IHRvIHByb3RlY3QgaXQgd2l0aCBhIGxvY2suCisKKworLi4gZXhjZXB0aW9uOjogTFpNQUVycm9yCisKKyAgIFRoaXMgZXhjZXB0aW9uIGlzIHJhaXNlZCB3aGVuIGFuIGVycm9yIG9jY3VycyBkdXJpbmcgY29tcHJlc3Npb24gb3IKKyAgIGRlY29tcHJlc3Npb24sIG9yIHdoaWxlIGluaXRpYWxpemluZyB0aGUgY29tcHJlc3Nvci9kZWNvbXByZXNzb3Igc3RhdGUuCisKKworUmVhZGluZyBhbmQgd3JpdGluZyBjb21wcmVzc2VkIGZpbGVzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gY2xhc3M6OiBMWk1BRmlsZShmaWxlbmFtZT1Ob25lLCBtb2RlPSJyIiwgZmlsZW9iaj1Ob25lLCBmb3JtYXQ9Tm9uZSwgY2hlY2s9LTEsIHByZXNldD1Ob25lLCBmaWx0ZXJzPU5vbmUpCisKKyAgIE9wZW4gYW4gTFpNQS1jb21wcmVzc2VkIGZpbGUuCisKKyAgIEFuIDpjbGFzczpgTFpNQUZpbGVgIGNhbiB3cmFwIGFuIGV4aXN0aW5nIDp0ZXJtOmBmaWxlIG9iamVjdGAgKGdpdmVuIGJ5CisgICAqZmlsZW9iaiopLCBvciBvcGVyYXRlIGRpcmVjdGx5IG9uIGEgbmFtZWQgZmlsZSAobmFtZWQgYnkgKmZpbGVuYW1lKikuCisgICBFeGFjdGx5IG9uZSBvZiB0aGVzZSB0d28gcGFyYW1ldGVycyBzaG91bGQgYmUgcHJvdmlkZWQuIElmICpmaWxlb2JqKiBpcworICAgcHJvdmlkZWQsIGl0IGlzIG5vdCBjbG9zZWQgd2hlbiB0aGUgOmNsYXNzOmBMWk1BRmlsZWAgaXMgY2xvc2VkLgorCisgICBUaGUgKm1vZGUqIGFyZ3VtZW50IGNhbiBiZSBlaXRoZXIgYGAiciJgYCBmb3IgcmVhZGluZyAoZGVmYXVsdCksIGBgInciYGAgZm9yCisgICBvdmVyd3JpdGluZywgb3IgYGAiYSJgYCBmb3IgYXBwZW5kaW5nLiBJZiAqZmlsZW9iaiogaXMgcHJvdmlkZWQsIGEgbW9kZSBvZgorICAgYGAidyJgYCBkb2VzIG5vdCB0cnVuY2F0ZSB0aGUgZmlsZSwgYW5kIGlzIGluc3RlYWQgZXF1aXZhbGVudCB0byBgYCJhImBgLgorCisgICBXaGVuIG9wZW5pbmcgYSBmaWxlIGZvciByZWFkaW5nLCB0aGUgaW5wdXQgZmlsZSBtYXkgYmUgdGhlIGNvbmNhdGVuYXRpb24gb2YKKyAgIG11bHRpcGxlIHNlcGFyYXRlIGNvbXByZXNzZWQgc3RyZWFtcy4gVGhlc2UgYXJlIHRyYW5zcGFyZW50bHkgZGVjb2RlZCBhcyBhCisgICBzaW5nbGUgbG9naWNhbCBzdHJlYW0uCisKKyAgIFdoZW4gb3BlbmluZyBhIGZpbGUgZm9yIHJlYWRpbmcsIHRoZSAqZm9ybWF0KiBhbmQgKmZpbHRlcnMqIGFyZ3VtZW50cyBoYXZlCisgICB0aGUgc2FtZSBtZWFuaW5ncyBhcyBmb3IgOmNsYXNzOmBMWk1BRGVjb21wcmVzc29yYC4gSW4gdGhpcyBjYXNlLCB0aGUgKmNoZWNrKgorICAgYW5kICpwcmVzZXQqIGFyZ3VtZW50cyBzaG91bGQgbm90IGJlIHVzZWQuCisKKyAgIFdoZW4gb3BlbmluZyBhIGZpbGUgZm9yIHdyaXRpbmcsIHRoZSAqZm9ybWF0KiwgKmNoZWNrKiwgKnByZXNldCogYW5kCisgICAqZmlsdGVycyogYXJndW1lbnRzIGhhdmUgdGhlIHNhbWUgbWVhbmluZ3MgYXMgZm9yIDpjbGFzczpgTFpNQUNvbXByZXNzb3JgLgorCisgICA6Y2xhc3M6YExaTUFGaWxlYCBzdXBwb3J0cyBhbGwgdGhlIG1lbWJlcnMgc3BlY2lmaWVkIGJ5CisgICA6Y2xhc3M6YGlvLkJ1ZmZlcmVkSU9CYXNlYCwgZXhjZXB0IGZvciA6bWV0aDpgZGV0YWNoYCBhbmQgOm1ldGg6YHRydW5jYXRlYC4KKyAgIEl0ZXJhdGlvbiBhbmQgdGhlIDprZXl3b3JkOmB3aXRoYCBzdGF0ZW1lbnQgYXJlIHN1cHBvcnRlZC4KKworICAgVGhlIGZvbGxvd2luZyBtZXRob2QgaXMgYWxzbyBwcm92aWRlZDoKKworICAgLi4gbWV0aG9kOjogcGVlayhzaXplPS0xKQorCisgICAgICBSZXR1cm4gYnVmZmVyZWQgZGF0YSB3aXRob3V0IGFkdmFuY2luZyB0aGUgZmlsZSBwb3NpdGlvbi4gQXQgbGVhc3Qgb25lCisgICAgICBieXRlIG9mIGRhdGEgd2lsbCBiZSByZXR1cm5lZCwgdW5sZXNzIEVPRiBoYXMgYmVlbiByZWFjaGVkLiBUaGUgZXhhY3QKKyAgICAgIG51bWJlciBvZiBieXRlcyByZXR1cm5lZCBpcyB1bnNwZWNpZmllZCAodGhlICpzaXplKiBhcmd1bWVudCBpcyBpZ25vcmVkKS4KKworCitDb21wcmVzc2luZyBhbmQgZGVjb21wcmVzc2luZyBkYXRhIGluIG1lbW9yeQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gY2xhc3M6OiBMWk1BQ29tcHJlc3Nvcihmb3JtYXQ9Rk9STUFUX1haLCBjaGVjaz0tMSwgcHJlc2V0PU5vbmUsIGZpbHRlcnM9Tm9uZSkKKworICAgQ3JlYXRlIGEgY29tcHJlc3NvciBvYmplY3QsIHdoaWNoIGNhbiBiZSB1c2VkIHRvIGNvbXByZXNzIGRhdGEgaW5jcmVtZW50YWxseS4KKworICAgRm9yIGEgbW9yZSBjb252ZW5pZW50IHdheSBvZiBjb21wcmVzc2luZyBhIHNpbmdsZSBjaHVuayBvZiBkYXRhLCBzZWUKKyAgIDpmdW5jOmBjb21wcmVzc2AuCisKKyAgIFRoZSAqZm9ybWF0KiBhcmd1bWVudCBzcGVjaWZpZXMgd2hhdCBjb250YWluZXIgZm9ybWF0IHNob3VsZCBiZSB1c2VkLgorICAgUG9zc2libGUgdmFsdWVzIGFyZToKKworICAgKiA6Y29uc3Q6YEZPUk1BVF9YWmA6IFRoZSBgYC54emBgIGNvbnRhaW5lciBmb3JtYXQuCisgICAgICBUaGlzIGlzIHRoZSBkZWZhdWx0IGZvcm1hdC4KKworICAgKiA6Y29uc3Q6YEZPUk1BVF9BTE9ORWA6IFRoZSBsZWdhY3kgYGAubHptYWBgIGNvbnRhaW5lciBmb3JtYXQuCisgICAgICBUaGlzIGZvcm1hdCBpcyBtb3JlIGxpbWl0ZWQgdGhhbiBgYC54emBgIC0tIGl0IGRvZXMgbm90IHN1cHBvcnQgaW50ZWdyaXR5CisgICAgICBjaGVja3Mgb3IgbXVsdGlwbGUgZmlsdGVycy4KKworICAgKiA6Y29uc3Q6YEZPUk1BVF9SQVdgOiBBIHJhdyBkYXRhIHN0cmVhbSwgbm90IHVzaW5nIGFueSBjb250YWluZXIgZm9ybWF0LgorICAgICAgVGhpcyBmb3JtYXQgc3BlY2lmaWVyIGRvZXMgbm90IHN1cHBvcnQgaW50ZWdyaXR5IGNoZWNrcywgYW5kIHJlcXVpcmVzIHRoYXQKKyAgICAgIHlvdSBhbHdheXMgc3BlY2lmeSBhIGN1c3RvbSBmaWx0ZXIgY2hhaW4gKGZvciBib3RoIGNvbXByZXNzaW9uIGFuZAorICAgICAgZGVjb21wcmVzc2lvbikuIEFkZGl0aW9uYWxseSwgZGF0YSBjb21wcmVzc2VkIGluIHRoaXMgbWFubmVyIGNhbm5vdCBiZQorICAgICAgZGVjb21wcmVzc2VkIHVzaW5nIDpjb25zdDpgRk9STUFUX0FVVE9gIChzZWUgOmNsYXNzOmBMWk1BRGVjb21wcmVzc29yYCkuCisKKyAgIFRoZSAqY2hlY2sqIGFyZ3VtZW50IHNwZWNpZmllcyB0aGUgdHlwZSBvZiBpbnRlZ3JpdHkgY2hlY2sgdG8gaW5jbHVkZSBpbiB0aGUKKyAgIGNvbXByZXNzZWQgZGF0YS4gVGhpcyBjaGVjayBpcyB1c2VkIHdoZW4gZGVjb21wcmVzc2luZywgdG8gZW5zdXJlIHRoYXQgdGhlCisgICBkYXRhIGhhcyBub3QgYmVlbiBjb3JydXB0ZWQuIFBvc3NpYmxlIHZhbHVlcyBhcmU6CisKKyAgICogOmNvbnN0OmBDSEVDS19OT05FYDogTm8gaW50ZWdyaXR5IGNoZWNrLgorICAgICBUaGlzIGlzIHRoZSBkZWZhdWx0IChhbmQgdGhlIG9ubHkgYWNjZXB0YWJsZSB2YWx1ZSkgZm9yCisgICAgIDpjb25zdDpgRk9STUFUX0FMT05FYCBhbmQgOmNvbnN0OmBGT1JNQVRfUkFXYC4KKworICAgKiA6Y29uc3Q6YENIRUNLX0NSQzMyYDogMzItYml0IEN5Y2xpYyBSZWR1bmRhbmN5IENoZWNrLgorCisgICAqIDpjb25zdDpgQ0hFQ0tfQ1JDNjRgOiA2NC1iaXQgQ3ljbGljIFJlZHVuZGFuY3kgQ2hlY2suCisgICAgIFRoaXMgaXMgdGhlIGRlZmF1bHQgZm9yIDpjb25zdDpgRk9STUFUX1haYC4KKworICAgKiA6Y29uc3Q6YENIRUNLX1NIQTI1NmA6IDI1Ni1iaXQgU2VjdXJlIEhhc2ggQWxnb3JpdGhtLgorCisgICBJZiB0aGUgc3BlY2lmaWVkIGNoZWNrIGlzIG5vdCBzdXBwb3J0ZWQsIGFuIDpjbGFzczpgTFpNQUVycm9yYCBpcyByYWlzZWQuCisKKyAgIFRoZSBjb21wcmVzc2lvbiBzZXR0aW5ncyBjYW4gYmUgc3BlY2lmaWVkIGVpdGhlciBhcyBhIHByZXNldCBjb21wcmVzc2lvbgorICAgbGV2ZWwgKHdpdGggdGhlICpwcmVzZXQqIGFyZ3VtZW50KSwgb3IgaW4gZGV0YWlsIGFzIGEgY3VzdG9tIGZpbHRlciBjaGFpbgorICAgKHdpdGggdGhlICpmaWx0ZXJzKiBhcmd1bWVudCkuCisKKyAgIFRoZSAqcHJlc2V0KiBhcmd1bWVudCAoaWYgcHJvdmlkZWQpIHNob3VsZCBiZSBhbiBpbnRlZ2VyIGJldHdlZW4gYGAwYGAgYW5kCisgICBgYDlgYCAoaW5jbHVzaXZlKSwgb3B0aW9uYWxseSBPUi1lZCB3aXRoIHRoZSBjb25zdGFudAorICAgOmNvbnN0OmBQUkVTRVRfRVhUUkVNRWAuIElmIG5laXRoZXIgKnByZXNldCogbm9yICpmaWx0ZXJzKiBhcmUgZ2l2ZW4sIHRoZQorICAgZGVmYXVsdCBiZWhhdmlvciBpcyB0byB1c2UgOmNvbnN0OmBQUkVTRVRfREVGQVVMVGAgKHByZXNldCBsZXZlbCBgYDZgYCkuCisgICBIaWdoZXIgcHJlc2V0cyBwcm9kdWNlIHNtYWxsZXIgb3V0cHV0LCBidXQgbWFrZSB0aGUgY29tcHJlc3Npb24gcHJvY2VzcworICAgc2xvd2VyLgorCisgICAuLiBub3RlOjoKKworICAgICAgSW4gYWRkaXRpb24gdG8gYmVpbmcgbW9yZSBDUFUtaW50ZW5zaXZlLCBjb21wcmVzc2lvbiB3aXRoIGhpZ2hlciBwcmVzZXRzCisgICAgICBhbHNvIHJlcXVpcmVzIG11Y2ggbW9yZSBtZW1vcnkgKGFuZCBwcm9kdWNlcyBvdXRwdXQgdGhhdCBuZWVkcyBtb3JlIG1lbW9yeQorICAgICAgdG8gZGVjb21wcmVzcykuIFdpdGggcHJlc2V0IGBgOWBgIGZvciBleGFtcGxlLCB0aGUgb3ZlcmhlYWQgZm9yIGFuCisgICAgICA6Y2xhc3M6YExaTUFDb21wcmVzc29yYCBvYmplY3QgY2FuIGJlIGFzIGhpZ2ggYXMgODAwTWlCLiBGb3IgdGhpcyByZWFzb24sCisgICAgICBpdCBpcyBnZW5lcmFsbHkgYmVzdCB0byBzdGljayB3aXRoIHRoZSBkZWZhdWx0IHByZXNldC4KKworICAgVGhlICpmaWx0ZXJzKiBhcmd1bWVudCAoaWYgcHJvdmlkZWQpIHNob3VsZCBiZSBhIGZpbHRlciBjaGFpbiBzcGVjaWZpZXIuCisgICBTZWUgOnJlZjpgZmlsdGVyLWNoYWluLXNwZWNzYCBmb3IgZGV0YWlscy4KKworICAgLi4gbWV0aG9kOjogY29tcHJlc3MoZGF0YSkKKworICAgICAgQ29tcHJlc3MgKmRhdGEqIChhIDpjbGFzczpgYnl0ZXNgIG9iamVjdCksIHJldHVybmluZyBhIDpjbGFzczpgYnl0ZXNgCisgICAgICBvYmplY3QgY29udGFpbmluZyBjb21wcmVzc2VkIGRhdGEgZm9yIGF0IGxlYXN0IHBhcnQgb2YgdGhlIGlucHV0LiBTb21lIG9mCisgICAgICAqZGF0YSogbWF5IGJlIGJ1ZmZlcmVkIGludGVybmFsbHksIGZvciB1c2UgaW4gbGF0ZXIgY2FsbHMgdG8KKyAgICAgIDptZXRoOmBjb21wcmVzc2AgYW5kIDptZXRoOmBmbHVzaGAuIFRoZSByZXR1cm5lZCBkYXRhIHNob3VsZCBiZQorICAgICAgY29uY2F0ZW5hdGVkIHdpdGggdGhlIG91dHB1dCBvZiBhbnkgcHJldmlvdXMgY2FsbHMgdG8gOm1ldGg6YGNvbXByZXNzYC4KKworICAgLi4gbWV0aG9kOjogZmx1c2goKQorCisgICAgICBGaW5pc2ggdGhlIGNvbXByZXNzaW9uIHByb2Nlc3MsIHJldHVybmluZyBhIDpjbGFzczpgYnl0ZXNgIG9iamVjdAorICAgICAgY29udGFpbmluZyBhbnkgZGF0YSBzdG9yZWQgaW4gdGhlIGNvbXByZXNzb3IncyBpbnRlcm5hbCBidWZmZXJzLgorCisgICAgICBUaGUgY29tcHJlc3NvciBjYW5ub3QgYmUgdXNlZCBhZnRlciB0aGlzIG1ldGhvZCBoYXMgYmVlbiBjYWxsZWQuCisKKworLi4gY2xhc3M6OiBMWk1BRGVjb21wcmVzc29yKGZvcm1hdD1GT1JNQVRfQVVUTywgbWVtbGltaXQ9Tm9uZSwgZmlsdGVycz1Ob25lKQorCisgICBDcmVhdGUgYSBkZWNvbXByZXNzb3Igb2JqZWN0LCB3aGljaCBjYW4gYmUgdXNlZCB0byBkZWNvbXByZXNzIGRhdGEKKyAgIGluY3JlbWVudGFsbHkuCisKKyAgIEZvciBhIG1vcmUgY29udmVuaWVudCB3YXkgb2YgZGVjb21wcmVzc2luZyBhbiBlbnRpcmUgY29tcHJlc3NlZCBzdHJlYW0gYXQKKyAgIG9uY2UsIHNlZSA6ZnVuYzpgZGVjb21wcmVzc2AuCisKKyAgIFRoZSAqZm9ybWF0KiBhcmd1bWVudCBzcGVjaWZpZXMgdGhlIGNvbnRhaW5lciBmb3JtYXQgdGhhdCBzaG91bGQgYmUgdXNlZC4gVGhlCisgICBkZWZhdWx0IGlzIDpjb25zdDpgRk9STUFUX0FVVE9gLCB3aGljaCBjYW4gZGVjb21wcmVzcyBib3RoIGBgLnh6YGAgYW5kCisgICBgYC5sem1hYGAgZmlsZXMuIE90aGVyIHBvc3NpYmxlIHZhbHVlcyBhcmUgOmNvbnN0OmBGT1JNQVRfWFpgLAorICAgOmNvbnN0OmBGT1JNQVRfQUxPTkVgLCBhbmQgOmNvbnN0OmBGT1JNQVRfUkFXYC4KKworICAgVGhlICptZW1saW1pdCogYXJndW1lbnQgc3BlY2lmaWVzIGEgbGltaXQgKGluIGJ5dGVzKSBvbiB0aGUgYW1vdW50IG9mIG1lbW9yeQorICAgdGhhdCB0aGUgZGVjb21wcmVzc29yIGNhbiB1c2UuIFdoZW4gdGhpcyBhcmd1bWVudCBpcyB1c2VkLCBkZWNvbXByZXNzaW9uIHdpbGwKKyAgIGZhaWwgd2l0aCBhbiA6Y2xhc3M6YExaTUFFcnJvcmAgaWYgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGRlY29tcHJlc3MgdGhlIGlucHV0CisgICB3aXRoaW4gdGhlIGdpdmVuIG1lbW9yeSBsaW1pdC4KKworICAgVGhlICpmaWx0ZXJzKiBhcmd1bWVudCBzcGVjaWZpZXMgdGhlIGZpbHRlciBjaGFpbiB0aGF0IHdhcyB1c2VkIHRvIGNyZWF0ZQorICAgdGhlIHN0cmVhbSBiZWluZyBkZWNvbXByZXNzZWQuIFRoaXMgYXJndW1lbnQgaXMgcmVxdWlyZWQgaWYgKmZvcm1hdCogaXMKKyAgIDpjb25zdDpgRk9STUFUX1JBV2AsIGJ1dCBzaG91bGQgbm90IGJlIHVzZWQgZm9yIG90aGVyIGZvcm1hdHMuCisgICBTZWUgOnJlZjpgZmlsdGVyLWNoYWluLXNwZWNzYCBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBmaWx0ZXIgY2hhaW5zLgorCisgICAuLiBub3RlOjoKKyAgICAgIFRoaXMgY2xhc3MgZG9lcyBub3QgdHJhbnNwYXJlbnRseSBoYW5kbGUgaW5wdXRzIGNvbnRhaW5pbmcgbXVsdGlwbGUKKyAgICAgIGNvbXByZXNzZWQgc3RyZWFtcywgdW5saWtlIDpmdW5jOmBkZWNvbXByZXNzYCBhbmQgOmNsYXNzOmBMWk1BRmlsZWAuIFRvCisgICAgICBkZWNvbXByZXNzIGEgbXVsdGktc3RyZWFtIGlucHV0IHdpdGggOmNsYXNzOmBMWk1BRGVjb21wcmVzc29yYCwgeW91IG11c3QKKyAgICAgIGNyZWF0ZSBhIG5ldyBkZWNvbXByZXNzb3IgZm9yIGVhY2ggc3RyZWFtLgorCisgICAuLiBtZXRob2Q6OiBkZWNvbXByZXNzKGRhdGEpCisKKyAgICAgIERlY29tcHJlc3MgKmRhdGEqIChhIDpjbGFzczpgYnl0ZXNgIG9iamVjdCksIHJldHVybmluZyBhIDpjbGFzczpgYnl0ZXNgCisgICAgICBvYmplY3QgY29udGFpbmluZyB0aGUgZGVjb21wcmVzc2VkIGRhdGEgZm9yIGF0IGxlYXN0IHBhcnQgb2YgdGhlIGlucHV0LgorICAgICAgU29tZSBvZiAqZGF0YSogbWF5IGJlIGJ1ZmZlcmVkIGludGVybmFsbHksIGZvciB1c2UgaW4gbGF0ZXIgY2FsbHMgdG8KKyAgICAgIDptZXRoOmBkZWNvbXByZXNzYC4gVGhlIHJldHVybmVkIGRhdGEgc2hvdWxkIGJlIGNvbmNhdGVuYXRlZCB3aXRoIHRoZQorICAgICAgb3V0cHV0IG9mIGFueSBwcmV2aW91cyBjYWxscyB0byA6bWV0aDpgZGVjb21wcmVzc2AuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IGNoZWNrCisKKyAgICAgIFRoZSBJRCBvZiB0aGUgaW50ZWdyaXR5IGNoZWNrIHVzZWQgYnkgdGhlIGlucHV0IHN0cmVhbS4gVGhpcyBtYXkgYmUKKyAgICAgIDpjb25zdDpgQ0hFQ0tfVU5LTk9XTmAgdW50aWwgZW5vdWdoIG9mIHRoZSBpbnB1dCBoYXMgYmVlbiBkZWNvZGVkIHRvCisgICAgICBkZXRlcm1pbmUgd2hhdCBpbnRlZ3JpdHkgY2hlY2sgaXQgdXNlcy4KKworICAgLi4gYXR0cmlidXRlOjogZW9mCisKKyAgICAgIFRydWUgaWYgdGhlIGVuZC1vZi1zdHJlYW0gbWFya2VyIGhhcyBiZWVuIHJlYWNoZWQuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IHVudXNlZF9kYXRhCisKKyAgICAgIERhdGEgZm91bmQgYWZ0ZXIgdGhlIGVuZCBvZiB0aGUgY29tcHJlc3NlZCBzdHJlYW0uCisKKyAgICAgIEJlZm9yZSB0aGUgZW5kIG9mIHRoZSBzdHJlYW0gaXMgcmVhY2hlZCwgdGhpcyB3aWxsIGJlIGBgYiIiYGAuCisKKworLi4gZnVuY3Rpb246OiBjb21wcmVzcyhkYXRhLCBmb3JtYXQ9Rk9STUFUX1haLCBjaGVjaz0tMSwgcHJlc2V0PU5vbmUsIGZpbHRlcnM9Tm9uZSkKKworICAgQ29tcHJlc3MgKmRhdGEqIChhIDpjbGFzczpgYnl0ZXNgIG9iamVjdCksIHJldHVybmluZyB0aGUgY29tcHJlc3NlZCBkYXRhIGFzIGEKKyAgIDpjbGFzczpgYnl0ZXNgIG9iamVjdC4KKworICAgU2VlIDpjbGFzczpgTFpNQUNvbXByZXNzb3JgIGFib3ZlIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZSAqZm9ybWF0KiwgKmNoZWNrKiwKKyAgICpwcmVzZXQqIGFuZCAqZmlsdGVycyogYXJndW1lbnRzLgorCisKKy4uIGZ1bmN0aW9uOjogZGVjb21wcmVzcyhkYXRhLCBmb3JtYXQ9Rk9STUFUX0FVVE8sIG1lbWxpbWl0PU5vbmUsIGZpbHRlcnM9Tm9uZSkKKworICAgRGVjb21wcmVzcyAqZGF0YSogKGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0KSwgcmV0dXJuaW5nIHRoZSB1bmNvbXByZXNzZWQgZGF0YQorICAgYXMgYSA6Y2xhc3M6YGJ5dGVzYCBvYmplY3QuCisKKyAgIElmICpkYXRhKiBpcyB0aGUgY29uY2F0ZW5hdGlvbiBvZiBtdWx0aXBsZSBkaXN0aW5jdCBjb21wcmVzc2VkIHN0cmVhbXMsCisgICBkZWNvbXByZXNzIGFsbCBvZiB0aGVzZSBzdHJlYW1zLCBhbmQgcmV0dXJuIHRoZSBjb25jYXRlbmF0aW9uIG9mIHRoZSByZXN1bHRzLgorCisgICBTZWUgOmNsYXNzOmBMWk1BRGVjb21wcmVzc29yYCBhYm92ZSBmb3IgYSBkZXNjcmlwdGlvbiBvZiB0aGUgKmZvcm1hdCosCisgICAqbWVtbGltaXQqIGFuZCAqZmlsdGVycyogYXJndW1lbnRzLgorCisKK01pc2NlbGxhbmVvdXMKKy0tLS0tLS0tLS0tLS0KKworLi4gZnVuY3Rpb246OiBjaGVja19pc19zdXBwb3J0ZWQoY2hlY2spCisKKyAgIFJldHVybnMgdHJ1ZSBpZiB0aGUgZ2l2ZW4gaW50ZWdyaXR5IGNoZWNrIGlzIHN1cHBvcnRlZCBvbiB0aGlzIHN5c3RlbS4KKworICAgOmNvbnN0OmBDSEVDS19OT05FYCBhbmQgOmNvbnN0OmBDSEVDS19DUkMzMmAgYXJlIGFsd2F5cyBzdXBwb3J0ZWQuCisgICA6Y29uc3Q6YENIRUNLX0NSQzY0YCBhbmQgOmNvbnN0OmBDSEVDS19TSEEyNTZgIG1heSBiZSB1bmF2YWlsYWJsZSBpZiB5b3UgYXJlCisgICB1c2luZyBhIHZlcnNpb24gb2YgOnByb2dyYW06YGxpYmx6bWFgIHRoYXQgd2FzIGNvbXBpbGVkIHdpdGggYSBsaW1pdGVkCisgICBmZWF0dXJlIHNldC4KKworCisuLiBfZmlsdGVyLWNoYWluLXNwZWNzOgorCitTcGVjaWZ5aW5nIGN1c3RvbSBmaWx0ZXIgY2hhaW5zCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0EgZmlsdGVyIGNoYWluIHNwZWNpZmllciBpcyBhIHNlcXVlbmNlIG9mIGRpY3Rpb25hcmllcywgd2hlcmUgZWFjaCBkaWN0aW9uYXJ5Citjb250YWlucyB0aGUgSUQgYW5kIG9wdGlvbnMgZm9yIGEgc2luZ2xlIGZpbHRlci4gRWFjaCBkaWN0aW9uYXJ5IG11c3QgY29udGFpbgordGhlIGtleSBgYCJpZCJgYCwgYW5kIG1heSBjb250YWluIGFkZGl0aW9uYWwga2V5cyB0byBzcGVjaWZ5IGZpbHRlci1kZXBlbmRlbnQKK29wdGlvbnMuIFZhbGlkIGZpbHRlciBJRHMgYXJlIGFzIGZvbGxvd3M6CisKKyogQ29tcHJlc3Npb24gZmlsdGVyczoKKyAgICogOmNvbnN0OmBGSUxURVJfTFpNQTFgIChmb3IgdXNlIHdpdGggOmNvbnN0OmBGT1JNQVRfQUxPTkVgKQorICAgKiA6Y29uc3Q6YEZJTFRFUl9MWk1BMmAgKGZvciB1c2Ugd2l0aCA6Y29uc3Q6YEZPUk1BVF9YWmAgYW5kIDpjb25zdDpgRk9STUFUX1JBV2ApCisKKyogRGVsdGEgZmlsdGVyOgorICAgKiA6Y29uc3Q6YEZJTFRFUl9ERUxUQWAKKworKiBCcmFuY2gtQ2FsbC1KdW1wIChCQ0opIGZpbHRlcnM6CisgICAqIDpjb25zdDpgRklMVEVSX1g4NmAKKyAgICogOmNvbnN0OmBGSUxURVJfSUE2NGAKKyAgICogOmNvbnN0OmBGSUxURVJfQVJNYAorICAgKiA6Y29uc3Q6YEZJTFRFUl9BUk1USFVNQmAKKyAgICogOmNvbnN0OmBGSUxURVJfUE9XRVJQQ2AKKyAgICogOmNvbnN0OmBGSUxURVJfU1BBUkNgCisKK0EgZmlsdGVyIGNoYWluIGNhbiBjb25zaXN0IG9mIHVwIHRvIDQgZmlsdGVycywgYW5kIGNhbm5vdCBiZSBlbXB0eS4gVGhlIGxhc3QKK2ZpbHRlciBpbiB0aGUgY2hhaW4gbXVzdCBiZSBhIGNvbXByZXNzaW9uIGZpbHRlciwgYW5kIGFueSBvdGhlciBmaWx0ZXJzIG11c3QgYmUKK2RlbHRhIG9yIEJDSiBmaWx0ZXJzLgorCitDb21wcmVzc2lvbiBmaWx0ZXJzIHN1cHBvcnQgdGhlIGZvbGxvd2luZyBvcHRpb25zIChzcGVjaWZpZWQgYXMgYWRkaXRpb25hbAorZW50cmllcyBpbiB0aGUgZGljdGlvbmFyeSByZXByZXNlbnRpbmcgdGhlIGZpbHRlcik6CisKKyAgICogYGBwcmVzZXRgYDogQSBjb21wcmVzc2lvbiBwcmVzZXQgdG8gdXNlIGFzIGEgc291cmNlIG9mIGRlZmF1bHQgdmFsdWVzIGZvcgorICAgICBvcHRpb25zIHRoYXQgYXJlIG5vdCBzcGVjaWZpZWQgZXhwbGljaXRseS4KKyAgICogYGBkaWN0X3NpemVgYDogRGljdGlvbmFyeSBzaXplIGluIGJ5dGVzLiBUaGlzIHNob3VsZCBiZSBiZXR3ZWVuIDRLaUIgYW5kCisgICAgIDEuNUdpQiAoaW5jbHVzaXZlKS4KKyAgICogYGBsY2BgOiBOdW1iZXIgb2YgbGl0ZXJhbCBjb250ZXh0IGJpdHMuCisgICAqIGBgbHBgYDogTnVtYmVyIG9mIGxpdGVyYWwgcG9zaXRpb24gYml0cy4gVGhlIHN1bSBgYGxjICsgbHBgYCBtdXN0IGJlIGF0CisgICAgIG1vc3QgNC4KKyAgICogYGBwYmBgOiBOdW1iZXIgb2YgcG9zaXRpb24gYml0czsgbXVzdCBiZSBhdCBtb3N0IDQuCisgICAqIGBgbW9kZWBgOiA6Y29uc3Q6YE1PREVfRkFTVGAgb3IgOmNvbnN0OmBNT0RFX05PUk1BTGAuCisgICAqIGBgbmljZV9sZW5gYDogV2hhdCBzaG91bGQgYmUgY29uc2lkZXJlZCBhICJuaWNlIGxlbmd0aCIgZm9yIGEgbWF0Y2guCisgICAgIFRoaXMgc2hvdWxkIGJlIDI3MyBvciBsZXNzLgorICAgKiBgYG1mYGA6IFdoYXQgbWF0Y2ggZmluZGVyIHRvIHVzZSAtLSA6Y29uc3Q6YE1GX0hDM2AsIDpjb25zdDpgTUZfSEM0YCwKKyAgICAgOmNvbnN0OmBNRl9CVDJgLCA6Y29uc3Q6YE1GX0JUM2AsIG9yIDpjb25zdDpgTUZfQlQ0YC4KKyAgICogYGBkZXB0aGBgOiBNYXhpbXVtIHNlYXJjaCBkZXB0aCB1c2VkIGJ5IG1hdGNoIGZpbmRlci4gMCAoZGVmYXVsdCkgbWVhbnMgdG8KKyAgICAgc2VsZWN0IGF1dG9tYXRpY2FsbHkgYmFzZWQgb24gb3RoZXIgZmlsdGVyIG9wdGlvbnMuCisKK1RoZSBkZWx0YSBmaWx0ZXIgc3RvcmVzIHRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIGJ5dGVzLCBwcm9kdWNpbmcgbW9yZSByZXBldGl0aXZlCitpbnB1dCBmb3IgdGhlIGNvbXByZXNzb3IgaW4gY2VydGFpbiBjaXJjdW1zdGFuY2VzLiBJdCBvbmx5IHN1cHBvcnRzIGEgc2luZ2xlCitUaGUgZGVsdGEgZmlsdGVyIHN1cHBvcnRzIG9ubHkgb25lIG9wdGlvbiwgYGBkaXN0YGAuIFRoaXMgaW5kaWNhdGVzIHRoZSBkaXN0YW5jZQorYmV0d2VlbiBieXRlcyB0byBiZSBzdWJ0cmFjdGVkLiBUaGUgZGVmYXVsdCBpcyAxLCBpLmUuIHRha2UgdGhlIGRpZmZlcmVuY2VzCitiZXR3ZWVuIGFkamFjZW50IGJ5dGVzLgorCitUaGUgQkNKIGZpbHRlcnMgYXJlIGludGVuZGVkIHRvIGJlIGFwcGxpZWQgdG8gbWFjaGluZSBjb2RlLiBUaGV5IGNvbnZlcnQKK3JlbGF0aXZlIGJyYW5jaGVzLCBjYWxscyBhbmQganVtcHMgaW4gdGhlIGNvZGUgdG8gdXNlIGFic29sdXRlIGFkZHJlc3NpbmcsIHdpdGgKK3RoZSBhaW0gb2YgaW5jcmVhc2luZyB0aGUgcmVkdW5kYW5jeSB0aGF0IGNhbiBiZSBleHBsb2l0ZWQgYnkgdGhlIGNvbXByZXNzb3IuCitUaGVzZSBmaWx0ZXJzIHN1cHBvcnQgb25lIG9wdGlvbiwgYGBzdGFydF9vZmZzZXRgYC4gVGhpcyBzcGVjaWZpZXMgdGhlIGFkZHJlc3MKK3RoYXQgc2hvdWxkIGJlIG1hcHBlZCB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBpbnB1dCBkYXRhLiBUaGUgZGVmYXVsdCBpcyAwLgorCisKK0V4YW1wbGVzCistLS0tLS0tLQorCitSZWFkaW5nIGluIGEgY29tcHJlc3NlZCBmaWxlOjoKKworICAgaW1wb3J0IGx6bWEKKyAgIHdpdGggbHptYS5MWk1BRmlsZSgiZmlsZS54eiIpIGFzIGY6CisgICAgICBmaWxlX2NvbnRlbnQgPSBmLnJlYWQoKQorCitDcmVhdGluZyBhIGNvbXByZXNzZWQgZmlsZTo6CisKKyAgIGltcG9ydCBsem1hCisgICBkYXRhID0gYiJJbnNlcnQgRGF0YSBIZXJlIgorICAgd2l0aCBsem1hLkxaTUFGaWxlKCJmaWxlLnh6IiwgInciKSBhcyBmOgorICAgICAgZi53cml0ZShkYXRhKQorCitDb21wcmVzc2luZyBkYXRhIGluIG1lbW9yeTo6CisKKyAgIGltcG9ydCBsem1hCisgICBkYXRhX2luID0gYiJJbnNlcnQgRGF0YSBIZXJlIgorICAgZGF0YV9vdXQgPSBsem1hLmNvbXByZXNzKGRhdGFfaW4pCisKK0luY3JlbWVudGFsIGNvbXByZXNzaW9uOjoKKworICAgaW1wb3J0IGx6bWEKKyAgIGx6YyA9IGx6bWEuTFpNQUNvbXByZXNzb3IoKQorICAgb3V0MSA9IGx6Yy5jb21wcmVzcyhiIlNvbWUgZGF0YVxuIikKKyAgIG91dDIgPSBsemMuY29tcHJlc3MoYiJBbm90aGVyIHBpZWNlIG9mIGRhdGFcbiIpCisgICBvdXQzID0gbHpjLmNvbXByZXNzKGIiRXZlbiBtb3JlIGRhdGFcbiIpCisgICBvdXQ0ID0gbHpjLmZsdXNoKCkKKyAgICMgQ29uY2F0ZW5hdGUgYWxsIHRoZSBwYXJ0aWFsIHJlc3VsdHM6CisgICByZXN1bHQgPSBiIiIuam9pbihbb3V0MSwgb3V0Miwgb3V0Mywgb3V0NF0pCisKK1dyaXRpbmcgY29tcHJlc3NlZCBkYXRhIHRvIGFuIGFscmVhZHktb3BlbiBmaWxlOjoKKworICAgaW1wb3J0IGx6bWEKKyAgIHdpdGggb3BlbigiZmlsZS54eiIsICJ3YiIpIGFzIGY6CisgICAgICAgZi53cml0ZShiIlRoaXMgZGF0YSB3aWxsIG5vdCBiZSBjb21wcmVzc2VkXG4iKQorICAgICAgIHdpdGggbHptYS5MWk1BRmlsZShmaWxlb2JqPWYsIG1vZGU9InciKSBhcyBsemY6CisgICAgICAgICAgIGx6Zi53cml0ZShiIlRoaXMgKndpbGwqIGJlIGNvbXByZXNzZWRcbiIpCisgICAgICAgZi53cml0ZShiIk5vdCBjb21wcmVzc2VkXG4iKQorCitDcmVhdGluZyBhIGNvbXByZXNzZWQgZmlsZSB1c2luZyBhIGN1c3RvbSBmaWx0ZXIgY2hhaW46OgorCisgICBpbXBvcnQgbHptYQorICAgbXlfZmlsdGVycyA9IFsKKyAgICAgICB7ImlkIjogbHptYS5GSUxURVJfREVMVEEsICJkaXN0IjogNX0sCisgICAgICAgeyJpZCI6IGx6bWEuRklMVEVSX0xaTUEyLCAicHJlc2V0IjogNyB8IGx6bWEuUFJFU0VUX0VYVFJFTUV9LAorICAgXQorICAgd2l0aCBsem1hLkxaTUFGaWxlKCJmaWxlLnh6IiwgInciLCBmaWx0ZXJzPW15X2ZpbHRlcnMpIGFzIGY6CisgICAgICAgZi53cml0ZShiImJsYWggYmxhaCBibGFoIikKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L21hdGgucnN0IGIvRG9jL2xpYnJhcnkvbWF0aC5yc3QKaW5kZXggOThjNWIzMy4uNjJjMGYzNCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvbWF0aC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvbWF0aC5yc3QKQEAgLTE4NCw2ICsxODQsMTkgQEAKICAgIHJlc3VsdCBpcyBjYWxjdWxhdGVkIGluIGEgd2F5IHdoaWNoIGlzIGFjY3VyYXRlIGZvciAqeCogbmVhciB6ZXJvLgogCiAKKy4uIGZ1bmN0aW9uOjogbG9nMih4KQorCisgICBSZXR1cm4gdGhlIGJhc2UtMiBsb2dhcml0aG0gb2YgKngqLiBUaGlzIGlzIHVzdWFsbHkgbW9yZSBhY2N1cmF0ZSB0aGFuCisgICBgYGxvZyh4LCAyKWBgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworICAgLi4gc2VlYWxzbzo6CisKKyAgICAgIDptZXRoOmBpbnQuYml0X2xlbmd0aGAgcmV0dXJucyB0aGUgbnVtYmVyIG9mIGJpdHMgbmVjZXNzYXJ5IHRvIHJlcHJlc2VudAorICAgICAgYW4gaW50ZWdlciBpbiBiaW5hcnksIGV4Y2x1ZGluZyB0aGUgc2lnbiBhbmQgbGVhZGluZyB6ZXJvcy4KKworCiAuLiBmdW5jdGlvbjo6IGxvZzEwKHgpCiAKICAgIFJldHVybiB0aGUgYmFzZS0xMCBsb2dhcml0aG0gb2YgKngqLiAgVGhpcyBpcyB1c3VhbGx5IG1vcmUgYWNjdXJhdGUKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L21tYXAucnN0IGIvRG9jL2xpYnJhcnkvbW1hcC5yc3QKaW5kZXggNWYwZjAwNC4uMWExOWE3ZSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvbW1hcC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvbW1hcC5yc3QKQEAgLTE5NiwxMiArMTk2LDE2IEBACiAgICAgICBtb3ZlIHdpbGwgcmFpc2UgYSA6ZXhjOmBUeXBlRXJyb3JgIGV4Y2VwdGlvbi4KIAogCi0gICAuLiBtZXRob2Q6OiByZWFkKG51bSkKKyAgIC4uIG1ldGhvZDo6IHJlYWQoW25dKQogCi0gICAgICBSZXR1cm4gYSA6Y2xhc3M6YGJ5dGVzYCBjb250YWluaW5nIHVwIHRvICpudW0qIGJ5dGVzIHN0YXJ0aW5nIGZyb20gdGhlCi0gICAgICBjdXJyZW50IGZpbGUgcG9zaXRpb247IHRoZSBmaWxlIHBvc2l0aW9uIGlzIHVwZGF0ZWQgdG8gcG9pbnQgYWZ0ZXIgdGhlCi0gICAgICBieXRlcyB0aGF0IHdlcmUgcmV0dXJuZWQuCisgICAgICBSZXR1cm4gYSA6Y2xhc3M6YGJ5dGVzYCBjb250YWluaW5nIHVwIHRvICpuKiBieXRlcyBzdGFydGluZyBmcm9tIHRoZQorICAgICAgY3VycmVudCBmaWxlIHBvc2l0aW9uLiBJZiB0aGUgYXJndW1lbnQgaXMgb21pdHRlZCwgKk5vbmUqIG9yIG5lZ2F0aXZlLAorICAgICAgcmV0dXJuIGFsbCBieXRlcyBmcm9tIHRoZSBjdXJyZW50IGZpbGUgcG9zaXRpb24gdG8gdGhlIGVuZCBvZiB0aGUKKyAgICAgIG1hcHBpbmcuIFRoZSBmaWxlIHBvc2l0aW9uIGlzIHVwZGF0ZWQgdG8gcG9pbnQgYWZ0ZXIgdGhlIGJ5dGVzIHRoYXQgd2VyZQorICAgICAgcmV0dXJuZWQuCiAKKyAgICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAgICBBcmd1bWVudCBjYW4gYmUgb21pdHRlZCBvciAqTm9uZSouCiAKICAgIC4uIG1ldGhvZDo6IHJlYWRfYnl0ZSgpCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L21zdmNydC5yc3QgYi9Eb2MvbGlicmFyeS9tc3ZjcnQucnN0CmluZGV4IDg4OWEwYzUuLjlkMjM3MjAgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L21zdmNydC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvbXN2Y3J0LnJzdApAQCAtMjAsNiArMjAsMTEgQEAKIGZvciBpbnRlcm5hdGlvbmFsaXplZCBhcHBsaWNhdGlvbnMuIFRoZSB3aWRlIGNoYXIgQVBJIHNob3VsZCBiZSB1c2VkIHdoZXJlCiBldmVyIHBvc3NpYmxlCiAKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICBPcGVyYXRpb25zIGluIHRoaXMgbW9kdWxlIG5vdyByYWlzZSA6ZXhjOmBPU0Vycm9yYCB3aGVyZSA6ZXhjOmBJT0Vycm9yYAorICAgd2FzIHJhaXNlZC4KKworCiAuLiBfbXN2Y3J0LWZpbGVzOgogCiBGaWxlIE9wZXJhdGlvbnMKQEAgLTI5LDcgKzM0LDcgQEAKIC4uIGZ1bmN0aW9uOjogbG9ja2luZyhmZCwgbW9kZSwgbmJ5dGVzKQogCiAgICBMb2NrIHBhcnQgb2YgYSBmaWxlIGJhc2VkIG9uIGZpbGUgZGVzY3JpcHRvciAqZmQqIGZyb20gdGhlIEMgcnVudGltZS4gIFJhaXNlcwotICAgOmV4YzpgSU9FcnJvcmAgb24gZmFpbHVyZS4gIFRoZSBsb2NrZWQgcmVnaW9uIG9mIHRoZSBmaWxlIGV4dGVuZHMgZnJvbSB0aGUKKyAgIDpleGM6YE9TRXJyb3JgIG9uIGZhaWx1cmUuICBUaGUgbG9ja2VkIHJlZ2lvbiBvZiB0aGUgZmlsZSBleHRlbmRzIGZyb20gdGhlCiAgICBjdXJyZW50IGZpbGUgcG9zaXRpb24gZm9yICpuYnl0ZXMqIGJ5dGVzLCBhbmQgbWF5IGNvbnRpbnVlIGJleW9uZCB0aGUgZW5kIG9mIHRoZQogICAgZmlsZS4gICptb2RlKiBtdXN0IGJlIG9uZSBvZiB0aGUgOmNvbnN0OmBMS19cKmAgY29uc3RhbnRzIGxpc3RlZCBiZWxvdy4gTXVsdGlwbGUKICAgIHJlZ2lvbnMgaW4gYSBmaWxlIG1heSBiZSBsb2NrZWQgYXQgdGhlIHNhbWUgdGltZSwgYnV0IG1heSBub3Qgb3ZlcmxhcC4gIEFkamFjZW50CkBAIC00MSwxMyArNDYsMTMgQEAKIAogICAgTG9ja3MgdGhlIHNwZWNpZmllZCBieXRlcy4gSWYgdGhlIGJ5dGVzIGNhbm5vdCBiZSBsb2NrZWQsIHRoZSBwcm9ncmFtCiAgICBpbW1lZGlhdGVseSB0cmllcyBhZ2FpbiBhZnRlciAxIHNlY29uZC4gIElmLCBhZnRlciAxMCBhdHRlbXB0cywgdGhlIGJ5dGVzIGNhbm5vdAotICAgYmUgbG9ja2VkLCA6ZXhjOmBJT0Vycm9yYCBpcyByYWlzZWQuCisgICBiZSBsb2NrZWQsIDpleGM6YE9TRXJyb3JgIGlzIHJhaXNlZC4KIAogCiAuLiBkYXRhOjogTEtfTkJMQ0sKICAgICAgICAgICBMS19OQlJMQ0sKIAotICAgTG9ja3MgdGhlIHNwZWNpZmllZCBieXRlcy4gSWYgdGhlIGJ5dGVzIGNhbm5vdCBiZSBsb2NrZWQsIDpleGM6YElPRXJyb3JgIGlzCisgICBMb2NrcyB0aGUgc3BlY2lmaWVkIGJ5dGVzLiBJZiB0aGUgYnl0ZXMgY2Fubm90IGJlIGxvY2tlZCwgOmV4YzpgT1NFcnJvcmAgaXMKICAgIHJhaXNlZC4KIAogCkBAIC03Myw3ICs3OCw3IEBACiAKIC4uIGZ1bmN0aW9uOjogZ2V0X29zZmhhbmRsZShmZCkKIAotICAgUmV0dXJuIHRoZSBmaWxlIGhhbmRsZSBmb3IgdGhlIGZpbGUgZGVzY3JpcHRvciAqZmQqLiAgUmFpc2VzIDpleGM6YElPRXJyb3JgIGlmCisgICBSZXR1cm4gdGhlIGZpbGUgaGFuZGxlIGZvciB0aGUgZmlsZSBkZXNjcmlwdG9yICpmZCouICBSYWlzZXMgOmV4YzpgT1NFcnJvcmAgaWYKICAgICpmZCogaXMgbm90IHJlY29nbml6ZWQuCiAKIApAQCAtMTQ0LDQgKzE0OSw0IEBACiAuLiBmdW5jdGlvbjo6IGhlYXBtaW4oKQogCiAgICBGb3JjZSB0aGUgOmM6ZnVuYzpgbWFsbG9jYCBoZWFwIHRvIGNsZWFuIGl0c2VsZiB1cCBhbmQgcmV0dXJuIHVudXNlZCBibG9ja3MgdG8KLSAgIHRoZSBvcGVyYXRpbmcgc3lzdGVtLiAgT24gZmFpbHVyZSwgdGhpcyByYWlzZXMgOmV4YzpgSU9FcnJvcmAuCisgICB0aGUgb3BlcmF0aW5nIHN5c3RlbS4gIE9uIGZhaWx1cmUsIHRoaXMgcmFpc2VzIDpleGM6YE9TRXJyb3JgLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLnJzdCBiL0RvYy9saWJyYXJ5L211bHRpcHJvY2Vzc2luZy5yc3QKaW5kZXggM2Q4MzExNC4uN2M5NDMwOSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvbXVsdGlwcm9jZXNzaW5nLnJzdAorKysgYi9Eb2MvbGlicmFyeS9tdWx0aXByb2Nlc3NpbmcucnN0CkBAIC0yOTcsNyArMjk3LDcgQEAKIDpjbGFzczpgUHJvY2Vzc2AgYW5kIGV4Y2VwdGlvbnMKIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KIAotLi4gY2xhc3M6OiBQcm9jZXNzKFtncm91cFssIHRhcmdldFssIG5hbWVbLCBhcmdzWywga3dhcmdzXV1dXV0pCisuLiBjbGFzczo6IFByb2Nlc3MoW2dyb3VwWywgdGFyZ2V0WywgbmFtZVssIGFyZ3NbLCBrd2FyZ3NdXV1dXSwgKiwgZGFlbW9uPU5vbmUpCiAKICAgIFByb2Nlc3Mgb2JqZWN0cyByZXByZXNlbnQgYWN0aXZpdHkgdGhhdCBpcyBydW4gaW4gYSBzZXBhcmF0ZSBwcm9jZXNzLiBUaGUKICAgIDpjbGFzczpgUHJvY2Vzc2AgY2xhc3MgaGFzIGVxdWl2YWxlbnRzIG9mIGFsbCB0aGUgbWV0aG9kcyBvZgpAQCAtMzEyLDEzICszMTIsMTkgQEAKICAgIDpzdWI6YDFgLE5cIDpzdWI6YDJgLC4uLixOXCA6c3ViOmBrYCBpcyBhIHNlcXVlbmNlIG9mIGludGVnZXJzIHdob3NlIGxlbmd0aAogICAgaXMgZGV0ZXJtaW5lZCBieSB0aGUgKmdlbmVyYXRpb24qIG9mIHRoZSBwcm9jZXNzLiAgKmFyZ3MqIGlzIHRoZSBhcmd1bWVudAogICAgdHVwbGUgZm9yIHRoZSB0YXJnZXQgaW52b2NhdGlvbi4gICprd2FyZ3MqIGlzIGEgZGljdGlvbmFyeSBvZiBrZXl3b3JkCi0gICBhcmd1bWVudHMgZm9yIHRoZSB0YXJnZXQgaW52b2NhdGlvbi4gIEJ5IGRlZmF1bHQsIG5vIGFyZ3VtZW50cyBhcmUgcGFzc2VkIHRvCi0gICAqdGFyZ2V0Ki4KKyAgIGFyZ3VtZW50cyBmb3IgdGhlIHRhcmdldCBpbnZvY2F0aW9uLiAgSWYgcHJvdmlkZWQsIHRoZSBrZXl3b3JkLW9ubHkgKmRhZW1vbiogYXJndW1lbnQKKyAgIHNldHMgdGhlIHByb2Nlc3MgOmF0dHI6YGRhZW1vbmAgZmxhZyB0byBgYFRydWVgYCBvciBgYEZhbHNlYGAuICBJZiBgYE5vbmVgYAorICAgKHRoZSBkZWZhdWx0KSwgdGhpcyBmbGFnIHdpbGwgYmUgaW5oZXJpdGVkIGZyb20gdGhlIGNyZWF0aW5nIHByb2Nlc3MuCisKKyAgIEJ5IGRlZmF1bHQsIG5vIGFyZ3VtZW50cyBhcmUgcGFzc2VkIHRvICp0YXJnZXQqLgogCiAgICBJZiBhIHN1YmNsYXNzIG92ZXJyaWRlcyB0aGUgY29uc3RydWN0b3IsIGl0IG11c3QgbWFrZSBzdXJlIGl0IGludm9rZXMgdGhlCiAgICBiYXNlIGNsYXNzIGNvbnN0cnVjdG9yICg6bWV0aDpgUHJvY2Vzcy5fX2luaXRfX2ApIGJlZm9yZSBkb2luZyBhbnl0aGluZyBlbHNlCiAgICB0byB0aGUgcHJvY2Vzcy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZGVkIHRoZSAqZGFlbW9uKiBhcmd1bWVudC4KKwogICAgLi4gbWV0aG9kOjogcnVuKCkKIAogICAgICAgTWV0aG9kIHJlcHJlc2VudGluZyB0aGUgcHJvY2VzcydzIGFjdGl2aXR5LgpAQCAtMzM3LDEwICszNDMsOSBAQAogCiAgICAuLiBtZXRob2Q6OiBqb2luKFt0aW1lb3V0XSkKIAotICAgICAgQmxvY2sgdGhlIGNhbGxpbmcgdGhyZWFkIHVudGlsIHRoZSBwcm9jZXNzIHdob3NlIDptZXRoOmBqb2luYCBtZXRob2QgaXMKLSAgICAgIGNhbGxlZCB0ZXJtaW5hdGVzIG9yIHVudGlsIHRoZSBvcHRpb25hbCB0aW1lb3V0IG9jY3Vycy4KLQotICAgICAgSWYgKnRpbWVvdXQqIGlzIGBgTm9uZWBgIHRoZW4gdGhlcmUgaXMgbm8gdGltZW91dC4KKyAgICAgIElmIHRoZSBvcHRpb25hbCBhcmd1bWVudCAqdGltZW91dCogaXMgYGBOb25lYGAgKHRoZSBkZWZhdWx0KSwgdGhlIG1ldGhvZAorICAgICAgYmxvY2tzIHVudGlsIHRoZSBwcm9jZXNzIHdob3NlIDptZXRoOmBqb2luYCBtZXRob2QgaXMgY2FsbGVkIHRlcm1pbmF0ZXMuCisgICAgICBJZiAqdGltZW91dCogaXMgYSBwb3NpdGl2ZSBudW1iZXIsIGl0IGJsb2NrcyBhdCBtb3N0ICp0aW1lb3V0KiBzZWNvbmRzLgogCiAgICAgICBBIHByb2Nlc3MgY2FuIGJlIGpvaW5lZCBtYW55IHRpbWVzLgogCkBAIC00MDUsNiArNDEwLDIwIEBACiAKICAgICAgIFNlZSA6cmVmOmBtdWx0aXByb2Nlc3NpbmctYXV0aC1rZXlzYC4KIAorICAgLi4gYXR0cmlidXRlOjogc2VudGluZWwKKworICAgICAgQSBudW1lcmljIGhhbmRsZSBvZiBhIHN5c3RlbSBvYmplY3Qgd2hpY2ggd2lsbCBiZWNvbWUgInJlYWR5IiB3aGVuCisgICAgICB0aGUgcHJvY2VzcyBlbmRzLgorCisgICAgICBPbiBXaW5kb3dzLCB0aGlzIGlzIGFuIE9TIGhhbmRsZSB1c2FibGUgd2l0aCB0aGUgYGBXYWl0Rm9yU2luZ2xlT2JqZWN0YGAKKyAgICAgIGFuZCBgYFdhaXRGb3JNdWx0aXBsZU9iamVjdHNgYCBmYW1pbHkgb2YgQVBJIGNhbGxzLiAgT24gVW5peCwgdGhpcyBpcworICAgICAgYSBmaWxlIGRlc2NyaXB0b3IgdXNhYmxlIHdpdGggcHJpbWl0aXZlcyBmcm9tIHRoZSA6bW9kOmBzZWxlY3RgIG1vZHVsZS4KKworICAgICAgWW91IGNhbiB1c2UgdGhpcyB2YWx1ZSBpZiB5b3Ugd2FudCB0byB3YWl0IG9uIHNldmVyYWwgZXZlbnRzIGF0IG9uY2UuCisgICAgICBPdGhlcndpc2UgY2FsbGluZyA6bWV0aDpgam9pbigpYCBpcyBzaW1wbGVyLgorCisgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogICAgLi4gbWV0aG9kOjogdGVybWluYXRlKCkKIAogICAgICAgVGVybWluYXRlIHRoZSBwcm9jZXNzLiAgT24gVW5peCB0aGlzIGlzIGRvbmUgdXNpbmcgdGhlIGBgU0lHVEVSTWBgIHNpZ25hbDsKQEAgLTc2Nyw5ICs3ODYsMTQgQEAKICAgICAgIHRvIHJlY2VpdmUgYW5kIHRoZSBvdGhlciBlbmQgaGFzIGNsb3NlZC4KIAogICAgICAgSWYgKm1heGxlbmd0aCogaXMgc3BlY2lmaWVkIGFuZCB0aGUgbWVzc2FnZSBpcyBsb25nZXIgdGhhbiAqbWF4bGVuZ3RoKgotICAgICAgdGhlbiA6ZXhjOmBJT0Vycm9yYCBpcyByYWlzZWQgYW5kIHRoZSBjb25uZWN0aW9uIHdpbGwgbm8gbG9uZ2VyIGJlCisgICAgICB0aGVuIDpleGM6YE9TRXJyb3JgIGlzIHJhaXNlZCBhbmQgdGhlIGNvbm5lY3Rpb24gd2lsbCBubyBsb25nZXIgYmUKICAgICAgIHJlYWRhYmxlLgogCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgICAgVGhpcyBmdW5jdGlvbiB1c2VkIHRvIHJhaXNlIGEgOmV4YzpgSU9FcnJvcmAsIHdoaWNoIGlzIG5vdyBhbgorICAgICAgICAgYWxpYXMgb2YgOmV4YzpgT1NFcnJvcmAuCisKKwogICAgLi4gbWV0aG9kOjogcmVjdl9ieXRlc19pbnRvKGJ1ZmZlclssIG9mZnNldF0pCiAKICAgICAgIFJlYWQgaW50byAqYnVmZmVyKiBhIGNvbXBsZXRlIG1lc3NhZ2Ugb2YgYnl0ZSBkYXRhIHNlbnQgZnJvbSB0aGUgb3RoZXIgZW5kCkBAIC0xNjQ4LDYgKzE2NzIsMjQgQEAKICAgICAgIHJldHVybmVkIGl0ZXJhdG9yIHNob3VsZCBiZSBjb25zaWRlcmVkIGFyYml0cmFyeS4gIChPbmx5IHdoZW4gdGhlcmUgaXMKICAgICAgIG9ubHkgb25lIHdvcmtlciBwcm9jZXNzIGlzIHRoZSBvcmRlciBndWFyYW50ZWVkIHRvIGJlICJjb3JyZWN0Ii4pCiAKKyAgIC4uIG1ldGhvZDo6IHN0YXJtYXAoZnVuYywgaXRlcmFibGVbLCBjaHVua3NpemVdKQorCisgICAgICBMaWtlIDptZXRoOmBtYXBgIGV4Y2VwdCB0aGF0IHRoZSBlbGVtZW50cyBvZiB0aGUgYGl0ZXJhYmxlYCBhcmUgZXhwZWN0ZWQKKyAgICAgIHRvIGJlIGl0ZXJhYmxlcyB0aGF0IGFyZSB1bnBhY2tlZCBhcyBhcmd1bWVudHMuCisKKyAgICAgIEhlbmNlIGFuIGBpdGVyYWJsZWAgb2YgYFsoMSwyKSwgKDMsIDQpXWAgcmVzdWx0cyBpbiBgW2Z1bmMoMSwyKSwKKyAgICAgIGZ1bmMoMyw0KV1gLgorCisgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworICAgLi4gbWV0aG9kOjogc3Rhcm1hcF9hc3luYyhmdW5jLCBpdGVyYWJsZVssIGNodW5rc2l6ZVssIGNhbGxiYWNrWywgZXJyb3JfYmFja11dXSkKKworICAgICAgQSBjb21iaW5hdGlvbiBvZiA6bWV0aDpgc3Rhcm1hcGAgYW5kIDptZXRoOmBtYXBfYXN5bmNgIHRoYXQgaXRlcmF0ZXMgb3ZlcgorICAgICAgYGl0ZXJhYmxlYCBvZiBpdGVyYWJsZXMgYW5kIGNhbGxzIGBmdW5jYCB3aXRoIHRoZSBpdGVyYWJsZXMgdW5wYWNrZWQuCisgICAgICBSZXR1cm5zIGEgcmVzdWx0IG9iamVjdC4KKworICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKICAgIC4uIG1ldGhvZDo6IGNsb3NlKCkKIAogICAgICAgUHJldmVudHMgYW55IG1vcmUgdGFza3MgZnJvbSBiZWluZyBzdWJtaXR0ZWQgdG8gdGhlIHBvb2wuICBPbmNlIGFsbCB0aGUKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L25udHBsaWIucnN0IGIvRG9jL2xpYnJhcnkvbm50cGxpYi5yc3QKaW5kZXggZWY1MDdlMS4uNjJkYTcyYyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvbm50cGxpYi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvbm50cGxpYi5yc3QKQEAgLTcwLDEwICs3MCwyMyBAQAogICAgY29ubmVjdGluZyB0byBhbiBOTlRQIHNlcnZlciBvbiB0aGUgbG9jYWwgbWFjaGluZSBhbmQgaW50ZW5kIHRvIGNhbGwKICAgIHJlYWRlci1zcGVjaWZpYyBjb21tYW5kcywgc3VjaCBhcyBgYGdyb3VwYGAuICBJZiB5b3UgZ2V0IHVuZXhwZWN0ZWQKICAgIDpleGM6YE5OVFBQZXJtYW5lbnRFcnJvcmBcIHMsIHlvdSBtaWdodCBuZWVkIHRvIHNldCAqcmVhZGVybW9kZSouCisgICA6Y2xhc3M6YE5OVFBgIGNsYXNzIHN1cHBvcnRzIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50IHRvCisgICB1bmNvbmRpdGlvbmFsbHkgY29uc3VtZSA6ZXhjOmBzb2NrZXQuZXJyb3JgIGV4Y2VwdGlvbnMgYW5kIHRvIGNsb3NlIHRoZSBOTlRQCisgICBjb25uZWN0aW9uIHdoZW4gZG9uZS4gSGVyZSBpcyBhIHNhbXBsZSBvbiBob3cgdXNpbmcgaXQ6CisKKyAgICA+Pj4gZnJvbSBubnRwbGliIGltcG9ydCBOTlRQCisgICAgPj4+IHdpdGggTk5UUCgnbmV3cy5nbWFuZS5vcmcnKSBhcyBuOgorICAgIC4uLiAgICAgbi5ncm91cCgnZ21hbmUuY29tcC5weXRob24uY29tbWl0dGVycycpCisgICAgLi4uCisgICAgKCcyMTEgMTc1NSAxIDE3NTUgZ21hbmUuY29tcC5weXRob24uY29tbWl0dGVycycsIDE3NTUsIDEsIDE3NTUsICdnbWFuZS5jb21wLnB5dGhvbi5jb21taXR0ZXJzJykKKyAgICA+Pj4KKwogCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgICAgKnVzZW5ldHJjKiBpcyBub3cgRmFsc2UgYnkgZGVmYXVsdC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFN1cHBvcnQgZm9yIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50IHdhcyBhZGRlZC4KIAogLi4gY2xhc3M6OiBOTlRQX1NTTChob3N0LCBwb3J0PTU2MywgdXNlcj1Ob25lLCBwYXNzd29yZD1Ob25lLCBzc2xfY29udGV4dD1Ob25lLCByZWFkZXJtb2RlPU5vbmUsIHVzZW5ldHJjPUZhbHNlLCBbdGltZW91dF0pCiAKQEAgLTUwNCw2ICs1MTcsOSBAQAogICAgYXJ0aWNsZSB3aXRoIG1lc3NhZ2UgSUQgKmlkKi4gIE1vc3Qgb2YgdGhlIHRpbWUsIHRoaXMgZXh0ZW5zaW9uIGlzIG5vdAogICAgZW5hYmxlZCBieSBOTlRQIHNlcnZlciBhZG1pbmlzdHJhdG9ycy4KIAorICAgLi4gZGVwcmVjYXRlZDo6IDMuMworICAgICAgVGhlIFhQQVRIIGV4dGVuc2lvbiBpcyBub3QgYWN0aXZlbHkgdXNlZC4KKwogCiAuLiBYWFggZGVwcmVjYXRlZDoKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvb3MucnN0IGIvRG9jL2xpYnJhcnkvb3MucnN0CmluZGV4IGJlMzIyYTAuLjYxN2YyNzYgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L29zLnJzdAorKysgYi9Eb2MvbGlicmFyeS9vcy5yc3QKQEAgLTIyMSw2ICsyMjEsMTcgQEAKICAgIEF2YWlsYWJpbGl0eTogVW5peC4KIAogCisuLiBmdW5jdGlvbjo6IGdldGdyb3VwbGlzdCh1c2VyLCBncm91cCkKKworICAgUmV0dXJuIGxpc3Qgb2YgZ3JvdXAgaWRzIHRoYXQgKnVzZXIqIGJlbG9uZ3MgdG8uIElmICpncm91cCogaXMgbm90IGluIHRoZQorICAgbGlzdCwgaXQgaXMgaW5jbHVkZWQ7IHR5cGljYWxseSwgKmdyb3VwKiBpcyBzcGVjaWZpZWQgYXMgdGhlIGdyb3VwIElECisgICBmaWVsZCBmcm9tIHRoZSBwYXNzd29yZCByZWNvcmQgZm9yICp1c2VyKi4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IGdldGdyb3VwcygpCiAKICAgIFJldHVybiBsaXN0IG9mIHN1cHBsZW1lbnRhbCBncm91cCBpZHMgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJyZW50IHByb2Nlc3MuCkBAIC0yODgsNiArMjk5LDIyIEBACiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgICAgQWRkZWQgc3VwcG9ydCBmb3IgV2luZG93cy4KIAorLi4gZnVuY3Rpb246OiBnZXRwcmlvcml0eSh3aGljaCwgd2hvKQorCisgICAuLiBpbmRleDo6IHNpbmdsZTogcHJvY2Vzczsgc2NoZWR1bGluZyBwcmlvcml0eQorCisgICBHZXQgcHJvZ3JhbSBzY2hlZHVsaW5nIHByaW9yaXR5LiBUaGUgdmFsdWUgKndoaWNoKiBpcyBvbmUgb2YKKyAgIDpjb25zdDpgUFJJT19QUk9DRVNTYCwgOmNvbnN0OmBQUklPX1BHUlBgLCBvciA6Y29uc3Q6YFBSSU9fVVNFUmAsIGFuZCAqd2hvKgorICAgaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gKndoaWNoKiAoYSBwcm9jZXNzIGlkZW50aWZpZXIgZm9yCisgICA6Y29uc3Q6YFBSSU9fUFJPQ0VTU2AsIHByb2Nlc3MgZ3JvdXAgaWRlbnRpZmllciBmb3IgOmNvbnN0OmBQUklPX1BHUlBgLCBhbmQgYQorICAgdXNlciBJRCBmb3IgOmNvbnN0OmBQUklPX1VTRVJgKS4gQSB6ZXJvIHZhbHVlIGZvciAqd2hvKiBkZW5vdGVzCisgICAocmVzcGVjdGl2ZWx5KSB0aGUgY2FsbGluZyBwcm9jZXNzLCB0aGUgcHJvY2VzcyBncm91cCBvZiB0aGUgY2FsbGluZyBwcm9jZXNzLAorICAgb3IgdGhlIHJlYWwgdXNlciBJRCBvZiB0aGUgY2FsbGluZyBwcm9jZXNzLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIC4uIGZ1bmN0aW9uOjogZ2V0cmVzdWlkKCkKIAogICAgUmV0dXJuIGEgdHVwbGUgKHJ1aWQsIGV1aWQsIHN1aWQpIGRlbm90aW5nIHRoZSBjdXJyZW50IHByb2Nlc3MncwpAQCAtMzM4LDYgKzM2NSwxNSBAQAogCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAorLi4gZGF0YTo6IFBSSU9fUFJPQ0VTUworICAgICAgICAgIFBSSU9fUEdSUAorICAgICAgICAgIFBSSU9fVVNFUgorCisgICBQYXJhbWV0ZXJzIGZvciA6ZnVuYzpgZ2V0cHJpb3JpdHlgIGFuZCA6ZnVuYzpgc2V0cHJpb3JpdHlgIGZ1bmN0aW9ucy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogLi4gZnVuY3Rpb246OiBwdXRlbnYoa2V5LCB2YWx1ZSkKIApAQCAtNDA3LDYgKzQ0MywyNSBAQAogICAgQXZhaWxhYmlsaXR5OiBVbml4LgogCiAKKy4uIGZ1bmN0aW9uOjogc2V0cHJpb3JpdHkod2hpY2gsIHdobywgcHJpb3JpdHkpCisKKyAgIC4uIGluZGV4Ojogc2luZ2xlOiBwcm9jZXNzOyBzY2hlZHVsaW5nIHByaW9yaXR5CisKKyAgIFNldCBwcm9ncmFtIHNjaGVkdWxpbmcgcHJpb3JpdHkuIFRoZSB2YWx1ZSAqd2hpY2gqIGlzIG9uZSBvZgorICAgOmNvbnN0OmBQUklPX1BST0NFU1NgLCA6Y29uc3Q6YFBSSU9fUEdSUGAsIG9yIDpjb25zdDpgUFJJT19VU0VSYCwgYW5kICp3aG8qCisgICBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byAqd2hpY2gqIChhIHByb2Nlc3MgaWRlbnRpZmllciBmb3IKKyAgIDpjb25zdDpgUFJJT19QUk9DRVNTYCwgcHJvY2VzcyBncm91cCBpZGVudGlmaWVyIGZvciA6Y29uc3Q6YFBSSU9fUEdSUGAsIGFuZCBhCisgICB1c2VyIElEIGZvciA6Y29uc3Q6YFBSSU9fVVNFUmApLiBBIHplcm8gdmFsdWUgZm9yICp3aG8qIGRlbm90ZXMKKyAgIChyZXNwZWN0aXZlbHkpIHRoZSBjYWxsaW5nIHByb2Nlc3MsIHRoZSBwcm9jZXNzIGdyb3VwIG9mIHRoZSBjYWxsaW5nIHByb2Nlc3MsCisgICBvciB0aGUgcmVhbCB1c2VyIElEIG9mIHRoZSBjYWxsaW5nIHByb2Nlc3MuCisgICAqcHJpb3JpdHkqIGlzIGEgdmFsdWUgaW4gdGhlIHJhbmdlIC0yMCB0byAxOS4gVGhlIGRlZmF1bHQgcHJpb3JpdHkgaXMgMDsKKyAgIGxvd2VyIHByaW9yaXRpZXMgY2F1c2UgbW9yZSBmYXZvcmFibGUgc2NoZWR1bGluZy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogc2V0cmVnaWQocmdpZCwgZWdpZCkKIAogICAgU2V0IHRoZSBjdXJyZW50IHByb2Nlc3MncyByZWFsIGFuZCBlZmZlY3RpdmUgZ3JvdXAgaWRzLgpAQCAtNTM2LDcgKzU5MSw4IEBACiAgICB0aGUgYnVpbHQtaW4gOmZ1bmM6YG9wZW5gIGZ1bmN0aW9uLgogCiAgICBXaGVuIHNwZWNpZmllZCwgdGhlICptb2RlKiBhcmd1bWVudCBtdXN0IHN0YXJ0IHdpdGggb25lIG9mIHRoZSBsZXR0ZXJzCi0gICBgYCdyJ2BgLCBgYCd3J2BgLCBvciBgYCdhJ2BgLCBvdGhlcndpc2UgYSA6ZXhjOmBWYWx1ZUVycm9yYCBpcyByYWlzZWQuCisgICBgYCdyJ2BgLCBgYCd3J2BgLCBgYCd4J2BgIG9yIGBgJ2EnYGAsIG90aGVyd2lzZSBhIDpleGM6YFZhbHVlRXJyb3JgIGlzCisgICByYWlzZWQuCiAKICAgIE9uIFVuaXgsIHdoZW4gdGhlICptb2RlKiBhcmd1bWVudCBzdGFydHMgd2l0aCBgYCdhJ2BgLCB0aGUgKk9fQVBQRU5EKiBmbGFnIGlzCiAgICBzZXQgb24gdGhlIGZpbGUgZGVzY3JpcHRvciAod2hpY2ggdGhlIDpjOmZ1bmM6YGZkb3BlbmAgaW1wbGVtZW50YXRpb24gYWxyZWFkeQpAQCAtNTQ0LDYgKzYwMCw4IEBACiAKICAgIEF2YWlsYWJpbGl0eTogVW5peCwgV2luZG93cy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSBgYCd4J2BgIG1vZGUgd2FzIGFkZGVkLgogCiAuLiBfb3MtZmQtb3BzOgogCkBAIC01NjQsNiArNjIyLDIxIEBACiBkZXNjcmlwdG9yIGRpcmVjdGx5IHdpbGwgYnlwYXNzIHRoZSBmaWxlIG9iamVjdCBtZXRob2RzLCBpZ25vcmluZyBhc3BlY3RzIHN1Y2gKIGFzIGludGVybmFsIGJ1ZmZlcmluZyBvZiBkYXRhLgogCisuLiBkYXRhOjogQVRfU1lNTElOS19OT0ZPTExPVworICAgICAgICAgIEFUX0VBQ0NFU1MKKyAgICAgICAgICBBVF9GRENXRAorICAgICAgICAgIEFUX1JFTU9WRURJUgorICAgICAgICAgIEFUX1NZTUxJTktfRk9MTE9XCisgICAgICAgICAgVVRJTUVfTk9XCisgICAgICAgICAgVVRJTUVfT01JVAorCisgICBUaGVzZSBwYXJhbWV0ZXJzIGFyZSB1c2VkIGFzIGZsYWdzIHRvIHRoZSBcKmF0IGZhbWlseSBvZiBmdW5jdGlvbnMuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBjbG9zZShmZCkKIAogICAgQ2xvc2UgZmlsZSBkZXNjcmlwdG9yICpmZCouCkBAIC02MTIsNiArNjg1LDE5IEBACiAgICBBdmFpbGFiaWxpdHk6IFVuaXgsIFdpbmRvd3MuCiAKIAorLi4gZnVuY3Rpb246OiBmYWNjZXNzYXQoZGlyZmQsIHBhdGgsIG1vZGUsIGZsYWdzPTApCisKKyAgIExpa2UgOmZ1bmM6YGFjY2Vzc2AgYnV0IGlmICpwYXRoKiBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gKmRpcmZkKi4KKyAgICpmbGFncyogaXMgb3B0aW9uYWwgYW5kIGNhbiBiZSBjb25zdHJ1Y3RlZCBieSBPUmluZyB0b2dldGhlciB6ZXJvIG9yIG1vcmUKKyAgIG9mIHRoZXNlIHZhbHVlczogOmRhdGE6YEFUX1NZTUxJTktfTk9GT0xMT1dgLCA6ZGF0YTpgQVRfRUFDQ0VTU2AuCisgICBJZiAqcGF0aCogaXMgcmVsYXRpdmUgYW5kICpkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbiAqcGF0aCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogZmNobW9kKGZkLCBtb2RlKQogCiAgICBDaGFuZ2UgdGhlIG1vZGUgb2YgdGhlIGZpbGUgZ2l2ZW4gYnkgKmZkKiB0byB0aGUgbnVtZXJpYyAqbW9kZSouICBTZWUgdGhlIGRvY3MKQEAgLTYyMCw2ICs3MDYsMTggQEAKICAgIEF2YWlsYWJpbGl0eTogVW5peC4KIAogCisuLiBmdW5jdGlvbjo6IGZjaG1vZGF0KGRpcmZkLCBwYXRoLCBtb2RlLCBmbGFncz0wKQorCisgICBMaWtlIDpmdW5jOmBjaG1vZGAgYnV0IGlmICpwYXRoKiBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gKmRpcmZkKi4KKyAgICpmbGFncyogaXMgb3B0aW9uYWwgYW5kIG1heSBiZSAwIG9yIDpkYXRhOmBBVF9TWU1MSU5LX05PRk9MTE9XYC4KKyAgIElmICpwYXRoKiBpcyByZWxhdGl2ZSBhbmQgKmRpcmZkKiBpcyB0aGUgc3BlY2lhbCB2YWx1ZSA6ZGF0YTpgQVRfRkRDV0RgLCB0aGVuICpwYXRoKgorICAgaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBmY2hvd24oZmQsIHVpZCwgZ2lkKQogCiAgICBDaGFuZ2UgdGhlIG93bmVyIGFuZCBncm91cCBpZCBvZiB0aGUgZmlsZSBnaXZlbiBieSAqZmQqIHRvIHRoZSBudW1lcmljICp1aWQqCkBAIC02MjgsNiArNzI2LDE4IEBACiAgICBBdmFpbGFiaWxpdHk6IFVuaXguCiAKIAorLi4gZnVuY3Rpb246OiBmY2hvd25hdChkaXJmZCwgcGF0aCwgdWlkLCBnaWQsIGZsYWdzPTApCisKKyAgIExpa2UgOmZ1bmM6YGNob3duYCBidXQgaWYgKnBhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqZGlyZmQqLgorICAgKmZsYWdzKiBpcyBvcHRpb25hbCBhbmQgbWF5IGJlIDAgb3IgOmRhdGE6YEFUX1NZTUxJTktfTk9GT0xMT1dgLgorICAgSWYgKnBhdGgqIGlzIHJlbGF0aXZlIGFuZCAqZGlyZmQqIGlzIHRoZSBzcGVjaWFsIHZhbHVlIDpkYXRhOmBBVF9GRENXRGAsIHRoZW4gKnBhdGgqCisgICBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IGZkYXRhc3luYyhmZCkKIAogICAgRm9yY2Ugd3JpdGUgb2YgZmlsZSB3aXRoIGZpbGVkZXNjcmlwdG9yICpmZCogdG8gZGlzay4gRG9lcyBub3QgZm9yY2UgdXBkYXRlIG9mCkBAIC02MzksNiArNzQ5LDQ3IEBACiAgICAgICBUaGlzIGZ1bmN0aW9uIGlzIG5vdCBhdmFpbGFibGUgb24gTWFjT1MuCiAKIAorLi4gZnVuY3Rpb246OiBmZ2V0eGF0dHIoZmQsIGF0dHIpCisKKyAgIFRoaXMgd29ya3MgZXhhY3RseSBsaWtlIDpmdW5jOmBnZXR4YXR0cmAgYnV0IG9wZXJhdGVzIG9uIGEgZmlsZSBkZXNjcmlwdG9yLAorICAgKmZkKiwgaW5zdGVhZCBvZiBhIHBhdGguCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBmbGlzdHhhdHRyKGZkKQorCisgICBUaGlzIGlzIGV4YWN0bHkgbGlrZSA6ZnVuYzpgbGlzdHhhdHRyYCBidXQgb3BlcmF0ZXMgb24gYSBmaWxlIGRlc2NyaXB0b3IsCisgICAqZmQqLCBpbnN0ZWFkIG9mIGEgcGF0aC4KKworICAgQXZhaWxhYmlsaXR5OiBMaW51eAorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IGZkbGlzdGRpcihmZCkKKworICAgTGlrZSA6ZnVuYzpgbGlzdGRpcmAsIGJ1dCB1c2VzIGEgZmlsZSBkZXNjcmlwdG9yIGluc3RlYWQgYW5kIGFsd2F5cyByZXR1cm5zCisgICBzdHJpbmdzLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogZmV4ZWN2ZShmZCwgYXJncywgZW52KQorCisgICBFeGVjdXRlIHRoZSBwcm9ncmFtIHNwZWNpZmllZCBieSBhIGZpbGUgZGVzY3JpcHRvciAqZmQqIHdpdGggYXJndW1lbnRzIGdpdmVuCisgICBieSAqYXJncyogYW5kIGVudmlyb25tZW50IGdpdmVuIGJ5ICplbnYqLCByZXBsYWNpbmcgdGhlIGN1cnJlbnQgcHJvY2Vzcy4KKyAgICphcmdzKiBhbmQgKmVudiogYXJlIGdpdmVuIGFzIGluIDpmdW5jOmBleGVjdmVgLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogZnBhdGhjb25mKGZkLCBuYW1lKQogCiAgICBSZXR1cm4gc3lzdGVtIGNvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24gcmVsZXZhbnQgdG8gYW4gb3BlbiBmaWxlLiAqbmFtZSoKQEAgLTY2Myw2ICs4MTQsMTcgQEAKIAogICAgQXZhaWxhYmlsaXR5OiBVbml4LCBXaW5kb3dzLgogCisuLiBmdW5jdGlvbjo6IGZzdGF0YXQoZGlyZmQsIHBhdGgsIGZsYWdzPTApCisKKyAgIExpa2UgOmZ1bmM6YHN0YXRgIGJ1dCBpZiAqcGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpkaXJmZCouCisgICAqZmxhZ3MqIGlzIG9wdGlvbmFsIGFuZCBtYXkgYmUgMCBvciA6ZGF0YTpgQVRfU1lNTElOS19OT0ZPTExPV2AuCisgICBJZiAqcGF0aCogaXMgcmVsYXRpdmUgYW5kICpkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbiAqcGF0aCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAKIC4uIGZ1bmN0aW9uOjogZnN0YXR2ZnMoZmQpCiAKQEAgLTY5Miw2ICs4NTQsODAgQEAKICAgIEF2YWlsYWJpbGl0eTogVW5peC4KIAogCisuLiBmdW5jdGlvbjo6IGZyZW1vdmV4YXR0cihmZCwgYXR0cikKKworICAgVGhpcyB3b3JrcyBleGFjdGx5IGxpa2UgOmZ1bmM6YHJlbW92ZXhhdHRyYCBidXQgb3BlcmF0ZXMgb24gYSBmaWxlCisgICBkZXNjcmlwdG9yLCAqZmQqLCBpbnN0ZWFkIG9mIGEgcGF0aC4KKworICAgQXZhaWxhYmlsaXR5OiBMaW51eAorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IGZzZXR4YXR0cihmZCwgYXR0ciwgdmFsdWUsIGZsYWdzPTApCisKKyAgIFRoaXMgd29ya3MgZXhhY3RseSBsaWtlIDpmdW5jOmBzZXR4YXR0cmAgYnV0IG9uIGEgZmlsZSBkZXNjcmlwdG9yLCAqZmQqLAorICAgaW5zdGVhZCBvZiBhIHBhdGguCisKKworICAgQXZhaWxhYmlsaXR5OiBMaW51eAorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IGZ1dGltZXNhdChkaXJmZCwgcGF0aFssIHRpbWVzXSkKKworICAgTGlrZSA6ZnVuYzpgdXRpbWVgIGJ1dCBpZiAqcGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpkaXJmZCouCisgICBJZiAqcGF0aCogaXMgcmVsYXRpdmUgYW5kICpkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbiAqcGF0aCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiAgKnRpbWVzKiBtdXN0IGJlIGEKKyAgIDItdHVwbGUgb2YgbnVtYmVycywgb2YgdGhlIGZvcm0gYGAoYXRpbWUsIG10aW1lKWBgLCBvciBOb25lLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogZnV0aW1lbnMoZmRbLCBhdGltZXMsIG10aW1lc10pCisKKyAgIFVwZGF0ZXMgdGhlIHRpbWVzdGFtcHMgb2YgYSBmaWxlIHNwZWNpZmllZCBieSB0aGUgZmlsZSBkZXNjcmlwdG9yICpmZCosIHdpdGgKKyAgIG5hbm9zZWNvbmQgcHJlY2lzaW9uLgorICAgSWYgbm8gc2Vjb25kIGFyZ3VtZW50IGlzIGdpdmVuLCBzZXQgKmF0aW1lKiBhbmQgKm10aW1lKiB0byB0aGUgY3VycmVudCB0aW1lLgorICAgKmF0aW1lcyogYW5kICptdGltZXMqIG11c3QgYmUgMi10dXBsZXMgb2YgbnVtYmVycywgb2YgdGhlIGZvcm0KKyAgIGBgKGF0aW1lX3NlYywgYXRpbWVfbnNlYylgYCBhbmQgYGAobXRpbWVfc2VjLCBtdGltZV9uc2VjKWBgIHJlc3BlY3RpdmVseSwKKyAgIG9yIGBgTm9uZWBgLgorICAgSWYgKmF0aW1lX25zZWMqIG9yICptdGltZV9uc2VjKiBpcyBzcGVjaWZpZWQgYXMgOmRhdGE6YFVUSU1FX05PV2AsIHRoZSBjb3JyZXNwb25kaW5nCisgICB0aW1lc3RhbXAgaXMgdXBkYXRlZCB0byB0aGUgY3VycmVudCB0aW1lLgorICAgSWYgKmF0aW1lX25zZWMqIG9yICptdGltZV9uc2VjKiBpcyBzcGVjaWZpZWQgYXMgOmRhdGE6YFVUSU1FX09NSVRgLCB0aGUgY29ycmVzcG9uZGluZworICAgdGltZXN0YW1wIGlzIG5vdCB1cGRhdGVkLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGRhdGE6OiBVVElNRV9OT1cKKyAgICAgICAgICBVVElNRV9PTUlUCisKKyAgIEZsYWdzIHVzZWQgd2l0aCA6ZnVuYzpgZnV0aW1lbnNgIHRvIHNwZWNpZnkgdGhhdCB0aGUgdGltZXN0YW1wIG11c3QgYmUKKyAgIHVwZGF0ZWQgZWl0aGVyIHRvIHRoZSBjdXJyZW50IHRpbWUgb3Igbm90IHVwZGF0ZWQgYXQgYWxsLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogZnV0aW1lcyhmZFssIHRpbWVzXSkKKworICAgU2V0IHRoZSBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWUgb2YgdGhlIGZpbGUgc3BlY2lmaWVkIGJ5IHRoZSBmaWxlCisgICBkZXNjcmlwdG9yICpmZCogdG8gdGhlIGdpdmVuIHZhbHVlcy4gICphdGltZXMqIG11c3QgYmUgYSAyLXR1cGxlIG9mIG51bWJlcnMsCisgICBvZiB0aGUgZm9ybSBgYChhdGltZSwgbXRpbWUpYGAsIG9yIE5vbmUuICBJZiBubyBzZWNvbmQgYXJndW1lbnQgaXMgdXNlZCwKKyAgIHNldCB0aGUgYWNjZXNzIGFuZCBtb2RpZmllZCB0aW1lcyB0byB0aGUgY3VycmVudCB0aW1lLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogaXNhdHR5KGZkKQogCiAgICBSZXR1cm4gYGBUcnVlYGAgaWYgdGhlIGZpbGUgZGVzY3JpcHRvciAqZmQqIGlzIG9wZW4gYW5kIGNvbm5lY3RlZCB0byBhCkBAIC03MDAsNiArOTM2LDQ0IEBACiAgICBBdmFpbGFiaWxpdHk6IFVuaXguCiAKIAorLi4gZnVuY3Rpb246OiBsaW5rYXQoc3JjZmQsIHNyY3BhdGgsIGRzdGZkLCBkc3RwYXRoLCBmbGFncz0wKQorCisgICBMaWtlIDpmdW5jOmBsaW5rYCBidXQgaWYgKnNyY3BhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqc3JjZmQqCisgICBhbmQgaWYgKmRzdHBhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqZHN0ZmQqLgorICAgKmZsYWdzKiBpcyBvcHRpb25hbCBhbmQgbWF5IGJlIDAgb3IgOmRhdGE6YEFUX1NZTUxJTktfRk9MTE9XYC4KKyAgIElmICpzcmNwYXRoKiBpcyByZWxhdGl2ZSBhbmQgKnNyY2ZkKiBpcyB0aGUgc3BlY2lhbCB2YWx1ZSA6ZGF0YTpgQVRfRkRDV0RgLCB0aGVuCisgICAqc3JjcGF0aCogaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIFRoaXMKKyAgIGFsc28gYXBwbGllcyBmb3IgKmRzdHBhdGgqLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogbG9ja2YoZmQsIGNtZCwgbGVuKQorCisgICBBcHBseSwgdGVzdCBvciByZW1vdmUgYSBQT1NJWCBsb2NrIG9uIGFuIG9wZW4gZmlsZSBkZXNjcmlwdG9yLgorICAgKmZkKiBpcyBhbiBvcGVuIGZpbGUgZGVzY3JpcHRvci4KKyAgICpjbWQqIHNwZWNpZmllcyB0aGUgY29tbWFuZCB0byB1c2UgLSBvbmUgb2YgOmRhdGE6YEZfTE9DS2AsIDpkYXRhOmBGX1RMT0NLYCwKKyAgIDpkYXRhOmBGX1VMT0NLYCBvciA6ZGF0YTpgRl9URVNUYC4KKyAgICpsZW4qIHNwZWNpZmllcyB0aGUgc2VjdGlvbiBvZiB0aGUgZmlsZSB0byBsb2NrLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGRhdGE6OiBGX0xPQ0sKKyAgICAgICAgICBGX1RMT0NLCisgICAgICAgICAgRl9VTE9DSworICAgICAgICAgIEZfVEVTVAorCisgICBGbGFncyB0aGF0IHNwZWNpZnkgd2hhdCBhY3Rpb24gOmZ1bmM6YGxvY2tmYCB3aWxsIHRha2UuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIC4uIGZ1bmN0aW9uOjogbHNlZWsoZmQsIHBvcywgaG93KQogCiAgICBTZXQgdGhlIGN1cnJlbnQgcG9zaXRpb24gb2YgZmlsZSBkZXNjcmlwdG9yICpmZCogdG8gcG9zaXRpb24gKnBvcyosIG1vZGlmaWVkCkBAIC03MTksNiArOTkzLDM5IEBACiAgICByZXNwZWN0aXZlbHkuIEF2YWlsYWJpbGl0eTogV2luZG93cywgVW5peC4KIAogCisuLiBmdW5jdGlvbjo6IG1rZGlyYXQoZGlyZmQsIHBhdGgsIG1vZGU9MG83NzcpCisKKyAgIExpa2UgOmZ1bmM6YG1rZGlyYCBidXQgaWYgKnBhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqZGlyZmQqLgorICAgSWYgKnBhdGgqIGlzIHJlbGF0aXZlIGFuZCAqZGlyZmQqIGlzIHRoZSBzcGVjaWFsIHZhbHVlIDpkYXRhOmBBVF9GRENXRGAsIHRoZW4gKnBhdGgqCisgICBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IG1rZmlmb2F0KGRpcmZkLCBwYXRoLCBtb2RlPTBvNjY2KQorCisgICBMaWtlIDpmdW5jOmBta2ZpZm9gIGJ1dCBpZiAqcGF0aCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpkaXJmZCouCisgICBJZiAqcGF0aCogaXMgcmVsYXRpdmUgYW5kICpkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbiAqcGF0aCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogbWtub2RhdChkaXJmZCwgcGF0aCwgbW9kZT0wbzYwMCwgZGV2aWNlPTApCisKKyAgIExpa2UgOmZ1bmM6YG1rbm9kYCBidXQgaWYgKnBhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqZGlyZmQqLgorICAgSWYgKnBhdGgqIGlzIHJlbGF0aXZlIGFuZCAqZGlyZmQqIGlzIHRoZSBzcGVjaWFsIHZhbHVlIDpkYXRhOmBBVF9GRENXRGAsIHRoZW4gKnBhdGgqCisgICBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IG9wZW4oZmlsZSwgZmxhZ3NbLCBtb2RlXSkKIAogICAgT3BlbiB0aGUgZmlsZSAqZmlsZSogYW5kIHNldCB2YXJpb3VzIGZsYWdzIGFjY29yZGluZyB0byAqZmxhZ3MqIGFuZCBwb3NzaWJseQpAQCAtNzQxLDYgKzEwNDgsMTcgQEAKICAgICAgIHdyYXAgYSBmaWxlIGRlc2NyaXB0b3IgaW4gYSBmaWxlIG9iamVjdCwgdXNlIDpmdW5jOmBmZG9wZW5gLgogCiAKKy4uIGZ1bmN0aW9uOjogb3BlbmF0KGRpcmZkLCBwYXRoLCBmbGFncywgbW9kZT0wbzc3NykKKworICAgTGlrZSA6ZnVuYzpgb3BlbmAgYnV0IGlmICpwYXRoKiBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gKmRpcmZkKi4KKyAgIElmICpwYXRoKiBpcyByZWxhdGl2ZSBhbmQgKmRpcmZkKiBpcyB0aGUgc3BlY2lhbCB2YWx1ZSA6ZGF0YTpgQVRfRkRDV0RgLCB0aGVuICpwYXRoKgorICAgaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBvcGVucHR5KCkKIAogICAgLi4gaW5kZXg6OiBtb2R1bGU6IHB0eQpAQCAtNzYwLDYgKzEwNzgsNzkgQEAKICAgIEF2YWlsYWJpbGl0eTogVW5peCwgV2luZG93cy4KIAogCisuLiBmdW5jdGlvbjo6IHBpcGUyKGZsYWdzKQorCisgICBDcmVhdGUgYSBwaXBlIHdpdGggKmZsYWdzKiBzZXQgYXRvbWljYWxseS4KKyAgICpmbGFncyogY2FuIGJlIGNvbnN0cnVjdGVkIGJ5IE9SaW5nIHRvZ2V0aGVyIG9uZSBvciBtb3JlIG9mIHRoZXNlIHZhbHVlczoKKyAgIDpkYXRhOmBPX05PTkJMT0NLYCwgOmRhdGE6YE9fQ0xPRVhFQ2AuCisgICBSZXR1cm4gYSBwYWlyIG9mIGZpbGUgZGVzY3JpcHRvcnMgYGAociwgdylgYCB1c2FibGUgZm9yIHJlYWRpbmcgYW5kIHdyaXRpbmcsCisgICByZXNwZWN0aXZlbHkuCisKKyAgIEF2YWlsYWJpbGl0eTogc29tZSBmbGF2b3JzIG9mIFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogcG9zaXhfZmFsbG9jYXRlKGZkLCBvZmZzZXQsIGxlbikKKworICAgRW5zdXJlcyB0aGF0IGVub3VnaCBkaXNrIHNwYWNlIGlzIGFsbG9jYXRlZCBmb3IgdGhlIGZpbGUgc3BlY2lmaWVkIGJ5ICpmZCoKKyAgIHN0YXJ0aW5nIGZyb20gKm9mZnNldCogYW5kIGNvbnRpbnVpbmcgZm9yICpsZW4qIGJ5dGVzLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogcG9zaXhfZmFkdmlzZShmZCwgb2Zmc2V0LCBsZW4sIGFkdmljZSkKKworICAgQW5ub3VuY2VzIGFuIGludGVudGlvbiB0byBhY2Nlc3MgZGF0YSBpbiBhIHNwZWNpZmljIHBhdHRlcm4gdGh1cyBhbGxvd2luZworICAgdGhlIGtlcm5lbCB0byBtYWtlIG9wdGltaXphdGlvbnMuCisgICBUaGUgYWR2aWNlIGFwcGxpZXMgdG8gdGhlIHJlZ2lvbiBvZiB0aGUgZmlsZSBzcGVjaWZpZWQgYnkgKmZkKiBzdGFydGluZyBhdAorICAgKm9mZnNldCogYW5kIGNvbnRpbnVpbmcgZm9yICpsZW4qIGJ5dGVzLgorICAgKmFkdmljZSogaXMgb25lIG9mIDpkYXRhOmBQT1NJWF9GQURWX05PUk1BTGAsIDpkYXRhOmBQT1NJWF9GQURWX1NFUVVFTlRJQUxgLAorICAgOmRhdGE6YFBPU0lYX0ZBRFZfUkFORE9NYCwgOmRhdGE6YFBPU0lYX0ZBRFZfTk9SRVVTRWAsCisgICA6ZGF0YTpgUE9TSVhfRkFEVl9XSUxMTkVFRGAgb3IgOmRhdGE6YFBPU0lYX0ZBRFZfRE9OVE5FRURgLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGRhdGE6OiBQT1NJWF9GQURWX05PUk1BTAorICAgICAgICAgIFBPU0lYX0ZBRFZfU0VRVUVOVElBTAorICAgICAgICAgIFBPU0lYX0ZBRFZfUkFORE9NCisgICAgICAgICAgUE9TSVhfRkFEVl9OT1JFVVNFCisgICAgICAgICAgUE9TSVhfRkFEVl9XSUxMTkVFRAorICAgICAgICAgIFBPU0lYX0ZBRFZfRE9OVE5FRUQKKworICAgRmxhZ3MgdGhhdCBjYW4gYmUgdXNlZCBpbiAqYWR2aWNlKiBpbiA6ZnVuYzpgcG9zaXhfZmFkdmlzZWAgdGhhdCBzcGVjaWZ5CisgICB0aGUgYWNjZXNzIHBhdHRlcm4gdGhhdCBpcyBsaWtlbHkgdG8gYmUgdXNlZC4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IHByZWFkKGZkLCBidWZmZXJzaXplLCBvZmZzZXQpCisKKyAgIFJlYWQgZnJvbSBhIGZpbGUgZGVzY3JpcHRvciwgKmZkKiwgYXQgYSBwb3NpdGlvbiBvZiAqb2Zmc2V0Ki4gSXQgd2lsbCByZWFkIHVwCisgICB0byAqYnVmZmVyc2l6ZSogbnVtYmVyIG9mIGJ5dGVzLiBUaGUgZmlsZSBvZmZzZXQgcmVtYWlucyB1bmNoYW5nZWQuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBwd3JpdGUoZmQsIHN0cmluZywgb2Zmc2V0KQorCisgICBXcml0ZSAqc3RyaW5nKiB0byBhIGZpbGUgZGVzY3JpcHRvciwgKmZkKiwgZnJvbSAqb2Zmc2V0KiwgbGVhdmluZyB0aGUgZmlsZQorICAgb2Zmc2V0IHVuY2hhbmdlZC4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IHJlYWQoZmQsIG4pCiAKICAgIFJlYWQgYXQgbW9zdCAqbiogYnl0ZXMgZnJvbSBmaWxlIGRlc2NyaXB0b3IgKmZkKi4gUmV0dXJuIGEgYnl0ZXN0cmluZyBjb250YWluaW5nIHRoZQpAQCAtNzc3LDYgKzExNjgsOTMgQEAKICAgICAgIDptZXRoOmB+ZmlsZS5yZWFkbGluZWAgbWV0aG9kcy4KIAogCisuLiBmdW5jdGlvbjo6IHNlbmRmaWxlKG91dCwgaW4sIG9mZnNldCwgbmJ5dGVzKQorICAgICAgICAgICAgICBzZW5kZmlsZShvdXQsIGluLCBvZmZzZXQsIG5ieXRlcywgaGVhZGVycz1Ob25lLCB0cmFpbGVycz1Ob25lLCBmbGFncz0wKQorCisgICBDb3B5ICpuYnl0ZXMqIGJ5dGVzIGZyb20gZmlsZSBkZXNjcmlwdG9yICppbiogdG8gZmlsZSBkZXNjcmlwdG9yICpvdXQqCisgICBzdGFydGluZyBhdCAqb2Zmc2V0Ki4KKyAgIFJldHVybiB0aGUgbnVtYmVyIG9mIGJ5dGVzIHNlbnQuIFdoZW4gRU9GIGlzIHJlYWNoZWQgcmV0dXJuIDAuCisKKyAgIFRoZSBmaXJzdCBmdW5jdGlvbiBub3RhdGlvbiBpcyBzdXBwb3J0ZWQgYnkgYWxsIHBsYXRmb3JtcyB0aGF0IGRlZmluZQorICAgOmZ1bmM6YHNlbmRmaWxlYC4KKworICAgT24gTGludXgsIGlmICpvZmZzZXQqIGlzIGdpdmVuIGFzIGBgTm9uZWBgLCB0aGUgYnl0ZXMgYXJlIHJlYWQgZnJvbSB0aGUKKyAgIGN1cnJlbnQgcG9zaXRpb24gb2YgKmluKiBhbmQgdGhlIHBvc2l0aW9uIG9mICppbiogaXMgdXBkYXRlZC4KKworICAgVGhlIHNlY29uZCBjYXNlIG1heSBiZSB1c2VkIG9uIE1hYyBPUyBYIGFuZCBGcmVlQlNEIHdoZXJlICpoZWFkZXJzKiBhbmQKKyAgICp0cmFpbGVycyogYXJlIGFyYml0cmFyeSBzZXF1ZW5jZXMgb2YgYnVmZmVycyB0aGF0IGFyZSB3cml0dGVuIGJlZm9yZSBhbmQKKyAgIGFmdGVyIHRoZSBkYXRhIGZyb20gKmluKiBpcyB3cml0dGVuLiBJdCByZXR1cm5zIHRoZSBzYW1lIGFzIHRoZSBmaXJzdCBjYXNlLgorCisgICBPbiBNYWMgT1MgWCBhbmQgRnJlZUJTRCwgYSB2YWx1ZSBvZiAwIGZvciAqbmJ5dGVzKiBzcGVjaWZpZXMgdG8gc2VuZCB1bnRpbAorICAgdGhlIGVuZCBvZiAqaW4qIGlzIHJlYWNoZWQuCisKKyAgIE9uIFNvbGFyaXMsICpvdXQqIG1heSBiZSB0aGUgZmlsZSBkZXNjcmlwdG9yIG9mIGEgcmVndWxhciBmaWxlIG9yIHRoZSBmaWxlCisgICBkZXNjcmlwdG9yIG9mIGEgc29ja2V0LiBPbiBhbGwgb3RoZXIgcGxhdGZvcm1zLCAqb3V0KiBtdXN0IGJlIHRoZSBmaWxlCisgICBkZXNjcmlwdG9yIG9mIGFuIG9wZW4gc29ja2V0LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGRhdGE6OiBTRl9OT0RJU0tJTworICAgICAgICAgIFNGX01OT1dBSVQKKyAgICAgICAgICBTRl9TWU5DCisKKyAgIFBhcmFtZXRlcnMgdG8gdGhlIDpmdW5jOmBzZW5kZmlsZWAgZnVuY3Rpb24sIGlmIHRoZSBpbXBsZW1lbnRhdGlvbiBzdXBwb3J0cworICAgdGhlbS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IHJlYWRsaW5rYXQoZGlyZmQsIHBhdGgpCisKKyAgIExpa2UgOmZ1bmM6YHJlYWRsaW5rYCBidXQgaWYgKnBhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqZGlyZmQqLgorICAgSWYgKnBhdGgqIGlzIHJlbGF0aXZlIGFuZCAqZGlyZmQqIGlzIHRoZSBzcGVjaWFsIHZhbHVlIDpkYXRhOmBBVF9GRENXRGAsIHRoZW4gKnBhdGgqCisgICBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IHJlbmFtZWF0KG9sZGRpcmZkLCBvbGRwYXRoLCBuZXdkaXJmZCwgbmV3cGF0aCkKKworICAgTGlrZSA6ZnVuYzpgcmVuYW1lYCBidXQgaWYgKm9sZHBhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0bworICAgKm9sZGRpcmZkKiBhbmQgaWYgKm5ld3BhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqbmV3ZGlyZmQqLgorICAgSWYgKm9sZHBhdGgqIGlzIHJlbGF0aXZlIGFuZCAqb2xkZGlyZmQqIGlzIHRoZSBzcGVjaWFsIHZhbHVlIDpkYXRhOmBBVF9GRENXRGAsIHRoZW4KKyAgICpvbGRwYXRoKiBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4gVGhpcworICAgYWxzbyBhcHBsaWVzIGZvciAqbmV3cGF0aCouCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBzeW1saW5rYXQoc3JjLCBkc3RmZCwgZHN0KQorCisgICBMaWtlIDpmdW5jOmBzeW1saW5rYCBidXQgaWYgKmRzdCogaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvICpkc3RmZCouCisgICBJZiAqZHN0KiBpcyByZWxhdGl2ZSBhbmQgKmRzdGZkKiBpcyB0aGUgc3BlY2lhbCB2YWx1ZSA6ZGF0YTpgQVRfRkRDV0RgLCB0aGVuICpkc3QqCisgICBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IHJlYWR2KGZkLCBidWZmZXJzKQorCisgICBSZWFkIGZyb20gYSBmaWxlIGRlc2NyaXB0b3IgaW50byBhIG51bWJlciBvZiB3cml0YWJsZSBidWZmZXJzLiAqYnVmZmVycyogaXMKKyAgIGFuIGFyYml0cmFyeSBzZXF1ZW5jZSBvZiB3cml0YWJsZSBidWZmZXJzLiBSZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMKKyAgIHJlYWQuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiB0Y2dldHBncnAoZmQpCiAKICAgIFJldHVybiB0aGUgcHJvY2VzcyBncm91cCBhc3NvY2lhdGVkIHdpdGggdGhlIHRlcm1pbmFsIGdpdmVuIGJ5ICpmZCogKGFuIG9wZW4KQEAgLTgwMiw2ICsxMjgwLDM4IEBACiAgICBBdmFpbGFiaWxpdHk6IFVuaXguCiAKIAorLi4gZnVuY3Rpb246OiB1bmxpbmthdChkaXJmZCwgcGF0aCwgZmxhZ3M9MCkKKworICAgTGlrZSA6ZnVuYzpgdW5saW5rYCBidXQgaWYgKnBhdGgqIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byAqZGlyZmQqLgorICAgKmZsYWdzKiBpcyBvcHRpb25hbCBhbmQgbWF5IGJlIDAgb3IgOmRhdGE6YEFUX1JFTU9WRURJUmAuIElmIDpkYXRhOmBBVF9SRU1PVkVESVJgIGlzCisgICBzcGVjaWZpZWQsIDpmdW5jOmB1bmxpbmthdGAgYmVoYXZlcyBsaWtlIDpmdW5jOmBybWRpcmAuCisgICBJZiAqcGF0aCogaXMgcmVsYXRpdmUgYW5kICpkaXJmZCogaXMgdGhlIHNwZWNpYWwgdmFsdWUgOmRhdGE6YEFUX0ZEQ1dEYCwgdGhlbiAqcGF0aCoKKyAgIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogdXRpbWVuc2F0KGRpcmZkLCBwYXRoWywgYXRpbWU9KGF0aW1lX3NlYywgYXRpbWVfbnNlYyksIG10aW1lPShtdGltZV9zZWMsIG10aW1lX25zZWMpLCBmbGFncz0wXSkKKworICAgVXBkYXRlcyB0aGUgdGltZXN0YW1wcyBvZiBhIGZpbGUgd2l0aCBuYW5vc2Vjb25kIHByZWNpc2lvbi4KKyAgIFRoZSAqYXRpbWUqIGFuZCAqbXRpbWUqIHR1cGxlcyBkZWZhdWx0IHRvIGBgTm9uZWBgLCB3aGljaCBzZXRzIHRob3NlCisgICB2YWx1ZXMgdG8gdGhlIGN1cnJlbnQgdGltZS4KKyAgIElmICphdGltZV9uc2VjKiBvciAqbXRpbWVfbnNlYyogaXMgc3BlY2lmaWVkIGFzIDpkYXRhOmBVVElNRV9OT1dgLCB0aGUgY29ycmVzcG9uZGluZworICAgdGltZXN0YW1wIGlzIHVwZGF0ZWQgdG8gdGhlIGN1cnJlbnQgdGltZS4KKyAgIElmICphdGltZV9uc2VjKiBvciAqbXRpbWVfbnNlYyogaXMgc3BlY2lmaWVkIGFzIDpkYXRhOmBVVElNRV9PTUlUYCwgdGhlIGNvcnJlc3BvbmRpbmcKKyAgIHRpbWVzdGFtcCBpcyBub3QgdXBkYXRlZC4KKyAgIElmICpwYXRoKiBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gKmRpcmZkKi4KKyAgICpmbGFncyogaXMgb3B0aW9uYWwgYW5kIG1heSBiZSAwICh0aGUgZGVmYXVsdCkgb3IgOmRhdGE6YEFUX1NZTUxJTktfTk9GT0xMT1dgLgorICAgSWYgKnBhdGgqIGlzIHJlbGF0aXZlIGFuZCAqZGlyZmQqIGlzIHRoZSBzcGVjaWFsIHZhbHVlIDpkYXRhOmBBVF9GRENXRGAsIHRoZW4gKnBhdGgqCisgICBpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IHdyaXRlKGZkLCBzdHIpCiAKICAgIFdyaXRlIHRoZSBieXRlc3RyaW5nIGluICpzdHIqIHRvIGZpbGUgZGVzY3JpcHRvciAqZmQqLiBSZXR1cm4gdGhlIG51bWJlciBvZgpAQCAtODE4LDYgKzEzMjgsMTcgQEAKICAgICAgIDptZXRoOmB+ZmlsZS53cml0ZWAgbWV0aG9kLgogCiAKKy4uIGZ1bmN0aW9uOjogd3JpdGV2KGZkLCBidWZmZXJzKQorCisgICBXcml0ZSB0aGUgY29udGVudHMgb2YgKmJ1ZmZlcnMqIHRvIGZpbGUgZGVzY3JpcHRvciAqZmQqLCB3aGVyZSAqYnVmZmVycyoKKyAgIGlzIGFuIGFyYml0cmFyeSBzZXF1ZW5jZSBvZiBidWZmZXJzLgorICAgUmV0dXJucyB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHdyaXR0ZW4uCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gX29wZW4tY29uc3RhbnRzOgogCiBgYG9wZW4oKWBgIGZsYWcgY29uc3RhbnRzCkBAIC04NDksOSArMTM3MCwxMiBAQAogICAgICAgICAgIE9fTk9DVFRZCiAgICAgICAgICAgT19TSExPQ0sKICAgICAgICAgICBPX0VYTE9DSworICAgICAgICAgIE9fQ0xPRVhFQwogCiAgICBUaGVzZSBjb25zdGFudHMgYXJlIG9ubHkgYXZhaWxhYmxlIG9uIFVuaXguCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBBZGQgOmRhdGE6YE9fQ0xPRVhFQ2AgY29uc3RhbnQuCiAKIC4uIGRhdGE6OiBPX0JJTkFSWQogICAgICAgICAgIE9fTk9JTkhFUklUCkBAIC04NzQsNiArMTM5OCwxOSBAQAogICAgdGhlIEMgbGlicmFyeS4KIAogCisuLiBkYXRhOjogUlRMRF9MQVpZCisgICAgICAgICAgUlRMRF9OT1cKKyAgICAgICAgICBSVExEX0dMT0JBTAorICAgICAgICAgIFJUTERfTE9DQUwKKyAgICAgICAgICBSVExEX05PREVMRVRFCisgICAgICAgICAgUlRMRF9OT0xPQUQKKyAgICAgICAgICBSVExEX0RFRVBCSU5ECisKKyAgIFNlZSB0aGUgVW5peCBtYW51YWwgcGFnZSA6bWFucGFnZTpgZGxvcGVuKDMpYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gX29zLWZpbGUtZGlyOgogCiBGaWxlcyBhbmQgRGlyZWN0b3JpZXMKQEAgLTkwOSwxMSArMTQ0Niw4IEBACiAKICAgICAgICAgIHRyeToKICAgICAgICAgICAgICBmcCA9IG9wZW4oIm15ZmlsZSIpCi0gICAgICAgICBleGNlcHQgSU9FcnJvciBhcyBlOgotICAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gZXJybm8uRUFDQ0VTOgotICAgICAgICAgICAgICAgICByZXR1cm4gInNvbWUgZGVmYXVsdCBkYXRhIgotICAgICAgICAgICAgICMgTm90IGEgcGVybWlzc2lvbiBlcnJvci4KLSAgICAgICAgICAgICByYWlzZQorICAgICAgICAgZXhjZXB0IFBlcm1pc3Npb25FcnJvcjoKKyAgICAgICAgICAgICByZXR1cm4gInNvbWUgZGVmYXVsdCBkYXRhIgogICAgICAgICAgZWxzZToKICAgICAgICAgICAgICB3aXRoIGZwOgogICAgICAgICAgICAgICAgICByZXR1cm4gZnAucmVhZCgpCkBAIC0xMDQ5LDkgKzE1ODMsMjMgQEAKICAgIENoYW5nZSB0aGUgb3duZXIgYW5kIGdyb3VwIGlkIG9mICpwYXRoKiB0byB0aGUgbnVtZXJpYyAqdWlkKiBhbmQgKmdpZCouIFRvIGxlYXZlCiAgICBvbmUgb2YgdGhlIGlkcyB1bmNoYW5nZWQsIHNldCBpdCB0byAtMS4KIAorICAgU2VlIDpmdW5jOmBzaHV0aWwuY2hvd25gIGZvciBhIGhpZ2hlci1sZXZlbCBmdW5jdGlvbiB0aGF0IGFjY2VwdHMgbmFtZXMgaW4KKyAgIGFkZGl0aW9uIHRvIG51bWVyaWMgaWRzLgorCiAgICBBdmFpbGFiaWxpdHk6IFVuaXguCiAKIAorLi4gZnVuY3Rpb246OiBnZXR4YXR0cihwYXRoLCBhdHRyKQorCisgICBSZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSBleHRlbmRlZCBmaWxlc3lzdGVtIGF0dHJpYnV0ZSAqYXR0ciogZm9yCisgICAqcGF0aCouICphdHRyKiBjYW4gYmUgYnl0ZXMgb3Igc3RyLiBJZiBpdCBpcyBzdHIsIGl0IGlzIGVuY29kZWQgd2l0aCB0aGUKKyAgIGZpbGVzeXN0ZW0gZW5jb2RpbmcuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBsY2hmbGFncyhwYXRoLCBmbGFncykKIAogICAgU2V0IHRoZSBmbGFncyBvZiAqcGF0aCogdG8gdGhlIG51bWVyaWMgKmZsYWdzKiwgbGlrZSA6ZnVuYzpgY2hmbGFnc2AsIGJ1dCBkbyBub3QKQEAgLTEwNzcsNiArMTYyNSwxNSBAQAogICAgQXZhaWxhYmlsaXR5OiBVbml4LgogCiAKKy4uIGZ1bmN0aW9uOjogbGdldHhhdHRyKHBhdGgsIGF0dHIpCisKKyAgIFRoaXMgd29ya3MgZXhhY3RseSBsaWtlIDpmdW5jOmBnZXR4YXR0cmAgYnV0IGRvZXNuJ3QgZm9sbG93IHN5bWxpbmtzLgorCisgICBBdmFpbGFiaWxpdHk6IExpbnV4CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogbGluayhzb3VyY2UsIGxpbmtfbmFtZSkKIAogICAgQ3JlYXRlIGEgaGFyZCBsaW5rIHBvaW50aW5nIHRvICpzb3VyY2UqIG5hbWVkICpsaW5rX25hbWUqLgpAQCAtMTEwMSw2ICsxNjU4LDQ0IEBACiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgICAgVGhlICpwYXRoKiBwYXJhbWV0ZXIgYmVjYW1lIG9wdGlvbmFsLgogCisKKy4uIGZ1bmN0aW9uOjogbGlzdHhhdHRyKHBhdGgpCisKKyAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIGV4dGVuZGVkIGZpbGVzeXN0ZW0gYXR0cmlidXRlcyBvbiAqcGF0aCouIEF0dHJpYnV0ZXMgYXJlCisgICByZXR1cm5lZCBhcyBzdHJpbmcgZGVjb2RlZCB3aXRoIHRoZSBmaWxlc3lzdGVtIGVuY29kaW5nLgorCisgICBBdmFpbGFiaWxpdHk6IExpbnV4CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogbGxpc3R4YXR0cihwYXRoKQorCisgICBUaGlzIHdvcmtzIGV4YWN0bHkgbGlrZSA6ZnVuYzpgbGlzdHhhdHRyYCBidXQgZG9lc24ndCBmb2xsb3cgc3ltbGlua3MuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBscmVtb3ZleGF0dHIocGF0aCwgYXR0cikKKworICAgVGhpcyB3b3JrcyBleGFjdGx5IGxpa2UgOmZ1bmM6YHJlbW92ZXhhdHRyYCBidXQgZG9lc24ndCBmb2xsb3cgc3ltbGlua3MuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBsc2V0eGF0dHIocGF0aCwgYXR0ciwgdmFsdWUsIGZsYWdzPTApCisKKyAgIFRoaXMgd29ya3MgZXhhY3RseSBsaWtlIDpmdW5jOmBzZXR4YXR0cmAgYnV0IGRvZXNuJ3QgZm9sbG93IHN5bWxpbmtzLgorCisgICBBdmFpbGFiaWxpdHk6IExpbnV4CisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIGZ1bmN0aW9uOjogbHN0YXQocGF0aCkKIAogICAgUGVyZm9ybSB0aGUgZXF1aXZhbGVudCBvZiBhbiA6YzpmdW5jOmBsc3RhdGAgc3lzdGVtIGNhbGwgb24gdGhlIGdpdmVuIHBhdGguCkBAIC0xMTEyLDYgKzE3MDcsMTggQEAKICAgICAgIEFkZGVkIHN1cHBvcnQgZm9yIFdpbmRvd3MgNi4wIChWaXN0YSkgc3ltYm9saWMgbGlua3MuCiAKIAorLi4gZnVuY3Rpb246OiBsdXRpbWVzKHBhdGhbLCB0aW1lc10pCisKKyAgIExpa2UgOmZ1bmM6YHV0aW1lYCwgYnV0IGlmICpwYXRoKiBpcyBhIHN5bWJvbGljIGxpbmssIGl0IGlzIG5vdAorICAgZGVyZWZlcmVuY2VkLiAgKnRpbWVzKiBtdXN0IGJlIGEgMi10dXBsZSBvZiBudW1iZXJzLCBvZiB0aGUgZm9ybQorICAgYGAoYXRpbWUsIG10aW1lKWBgLCBvciBOb25lLgorCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBta2ZpZm8ocGF0aFssIG1vZGVdKQogCiAgICBDcmVhdGUgYSBGSUZPIChhIG5hbWVkIHBpcGUpIG5hbWVkICpwYXRoKiB3aXRoIG51bWVyaWMgbW9kZSAqbW9kZSouICBUaGUKQEAgLTEyNjMsNiArMTg3MCwxNyBAQAogICAgc3VjY2Vzc2Z1bGx5IHJlbW92ZWQuCiAKIAorLi4gZnVuY3Rpb246OiByZW1vdmV4YXR0cihwYXRoLCBhdHRyKQorCisgICBSZW1vdmVzIHRoZSBleHRlbmRlZCBmaWxlc3lzdGVtIGF0dHJpYnV0ZSAqYXR0ciogZnJvbSAqcGF0aCouICphdHRyKiBzaG91bGQKKyAgIGJlIGJ5dGVzIG9yIHN0ci4gSWYgaXQgaXMgYSBzdHJpbmcsIGl0IGlzIGVuY29kZWQgd2l0aCB0aGUgZmlsZXN5c3RlbQorICAgZW5jb2RpbmcuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXgKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiByZW5hbWUoc3JjLCBkc3QpCiAKICAgIFJlbmFtZSB0aGUgZmlsZSBvciBkaXJlY3RvcnkgKnNyYyogdG8gKmRzdCouICBJZiAqZHN0KiBpcyBhIGRpcmVjdG9yeSwKQEAgLTEyNzEsOCArMTg4OSw5IEBACiAgICBVbml4IGZsYXZvcnMgaWYgKnNyYyogYW5kICpkc3QqIGFyZSBvbiBkaWZmZXJlbnQgZmlsZXN5c3RlbXMuICBJZiBzdWNjZXNzZnVsLAogICAgdGhlIHJlbmFtaW5nIHdpbGwgYmUgYW4gYXRvbWljIG9wZXJhdGlvbiAodGhpcyBpcyBhIFBPU0lYIHJlcXVpcmVtZW50KS4gIE9uCiAgICBXaW5kb3dzLCBpZiAqZHN0KiBhbHJlYWR5IGV4aXN0cywgOmV4YzpgT1NFcnJvcmAgd2lsbCBiZSByYWlzZWQgZXZlbiBpZiBpdCBpcyBhCi0gICBmaWxlOyB0aGVyZSBtYXkgYmUgbm8gd2F5IHRvIGltcGxlbWVudCBhbiBhdG9taWMgcmVuYW1lIHdoZW4gKmRzdCogbmFtZXMgYW4KLSAgIGV4aXN0aW5nIGZpbGUuCisgICBmaWxlLgorCisgICBJZiB5b3Ugd2FudCBjcm9zcy1wbGF0Zm9ybSBvdmVyd3JpdGluZyBvZiB0aGUgZGVzdGluYXRpb24sIHVzZSA6ZnVuYzpgcmVwbGFjZWAuCiAKICAgIEF2YWlsYWJpbGl0eTogVW5peCwgV2luZG93cy4KIApAQCAtMTI5MCw2ICsxOTA5LDE5IEBACiAgICAgICBwZXJtaXNzaW9ucyBuZWVkZWQgdG8gcmVtb3ZlIHRoZSBsZWFmIGRpcmVjdG9yeSBvciBmaWxlLgogCiAKKy4uIGZ1bmN0aW9uOjogcmVwbGFjZShzcmMsIGRzdCkKKworICAgUmVuYW1lIHRoZSBmaWxlIG9yIGRpcmVjdG9yeSAqc3JjKiB0byAqZHN0Ki4gIElmICpkc3QqIGlzIGEgZGlyZWN0b3J5LAorICAgOmV4YzpgT1NFcnJvcmAgd2lsbCBiZSByYWlzZWQuICBJZiAqZHN0KiBleGlzdHMgYW5kIGlzIGEgZmlsZSwgaXQgd2lsbAorICAgYmUgcmVwbGFjZWQgc2lsZW50bHkgaWYgdGhlIHVzZXIgaGFzIHBlcm1pc3Npb24uICBUaGUgb3BlcmF0aW9uIG1heSBmYWlsCisgICBpZiAqc3JjKiBhbmQgKmRzdCogYXJlIG9uIGRpZmZlcmVudCBmaWxlc3lzdGVtcy4gIElmIHN1Y2Nlc3NmdWwsCisgICB0aGUgcmVuYW1pbmcgd2lsbCBiZSBhbiBhdG9taWMgb3BlcmF0aW9uICh0aGlzIGlzIGEgUE9TSVggcmVxdWlyZW1lbnQpLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXgsIFdpbmRvd3MKKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBybWRpcihwYXRoKQogCiAgICBSZW1vdmUgKGRlbGV0ZSkgdGhlIGRpcmVjdG9yeSAqcGF0aCouICBPbmx5IHdvcmtzIHdoZW4gdGhlIGRpcmVjdG9yeSBpcwpAQCAtMTI5OSw2ICsxOTMxLDQ0IEBACiAgICBBdmFpbGFiaWxpdHk6IFVuaXgsIFdpbmRvd3MuCiAKIAorLi4gZGF0YTo6IFhBVFRSX1NJWkVfTUFYCisKKyAgIFRoZSBtYXhpbXVtIHNpemUgdGhlIHZhbHVlIG9mIGFuIGV4dGVuZGVkIGF0dHJpYnV0ZSBjYW4gYmUuIEN1cnJlbnRseSwgdGhpcworICAgaXMgNjQga2lsb2J5dGVzIG9uIExpbnV4LgorCisKKy4uIGRhdGE6OiBYQVRUUl9DUkVBVEUKKworICAgVGhpcyBpcyBhIHBvc3NpYmxlIHZhbHVlIGZvciB0aGUgZmxhZ3MgYXJndW1lbnQgaW4gOmZ1bmM6YHNldHhhdHRyYC4gSXQKKyAgIGluZGljYXRlcyB0aGUgb3BlcmF0aW9uIG11c3QgY3JlYXRlIGFuIGF0dHJpYnV0ZS4KKworCisuLiBkYXRhOjogWEFUVFJfUkVQTEFDRQorCisgICBUaGlzIGlzIGEgcG9zc2libGUgdmFsdWUgZm9yIHRoZSBmbGFncyBhcmd1bWVudCBpbiA6ZnVuYzpgc2V0eGF0dHJgLiBJdAorICAgaW5kaWNhdGVzIHRoZSBvcGVyYXRpb24gbXVzdCByZXBsYWNlIGFuIGV4aXN0aW5nIGF0dHJpYnV0ZS4KKworCisuLiBmdW5jdGlvbjo6IHNldHhhdHRyKHBhdGgsIGF0dHIsIHZhbHVlLCBmbGFncz0wKQorCisgICBTZXQgdGhlIGV4dGVuZGVkIGZpbGVzeXN0ZW0gYXR0cmlidXRlICphdHRyKiBvbiAqcGF0aCogdG8gKnZhbHVlKi4gKmF0dHIqCisgICBtdXN0IGJlIGEgYnl0ZXMgb3Igc3RyIHdpdGggbm8gZW1iZWRkZWQgTlVMcy4gSWYgaXQgaXMgc3RyLCBpdCBpcyBlbmNvZGVkCisgICB3aXRoIHRoZSBmaWxlc3lzdGVtIGVuY29kaW5nLiAqZmxhZ3MqIG1heSBiZSA6ZGF0YTpgWEFUVFJfUkVQTEFDRWAgb3IKKyAgIDpkYXRhOmBYQVRUUl9DUkVBVEVgLiBJZiA6ZGF0YTpgWEFUVFJfUkVQTEFDRWAgaXMgZ2l2ZW4gYW5kIHRoZSBhdHRyaWJ1dGUKKyAgIGRvZXMgbm90IGV4aXN0LCBgYEVFWElTVFNgYCB3aWxsIGJlIHJhaXNlZC4gSWYgOmRhdGE6YFhBVFRSX0NSRUFURWAgaXMgZ2l2ZW4KKyAgIGFuZCB0aGUgYXR0cmlidXRlIGFscmVhZHkgZXhpc3RzLCB0aGUgYXR0cmlidXRlIHdpbGwgbm90IGJlIGNyZWF0ZWQgYW5kCisgICBgYEVOT0RBVEFgYCB3aWxsIGJlIHJhaXNlZC4KKworICAgQXZhaWxhYmlsaXR5OiBMaW51eAorCisgICAuLiBub3RlOjoKKworICAgICAgQSBidWcgaW4gTGludXgga2VybmVsIHZlcnNpb25zIGxlc3MgdGhhbiAyLjYuMzkgY2F1c2VkIHRoZSBmbGFncyBhcmd1bWVudAorICAgICAgdG8gYmUgaWdub3JlZCBvbiBzb21lIGZpbGVzeXN0ZW1zLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IHN0YXQocGF0aCkKIAogICAgUGVyZm9ybSB0aGUgZXF1aXZhbGVudCBvZiBhIDpjOmZ1bmM6YHN0YXRgIHN5c3RlbSBjYWxsIG9uIHRoZSBnaXZlbiBwYXRoLgpAQCAtMTQ1Myw2ICsyMTIzLDI1IEBACiAgICAgICBBZGRlZCBzdXBwb3J0IGZvciBXaW5kb3dzIDYuMCAoVmlzdGEpIHN5bWJvbGljIGxpbmtzLgogCiAKKy4uIGZ1bmN0aW9uOjogc3luYygpCisKKyAgIEZvcmNlIHdyaXRlIG9mIGV2ZXJ5dGhpbmcgdG8gZGlzay4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IHRydW5jYXRlKHBhdGgsIGxlbmd0aCkKKworICAgVHJ1bmNhdGUgdGhlIGZpbGUgY29ycmVzcG9uZGluZyB0byAqcGF0aCosIHNvIHRoYXQgaXQgaXMgYXQgbW9zdAorICAgKmxlbmd0aCogYnl0ZXMgaW4gc2l6ZS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IHVubGluayhwYXRoKQogCiAgICBSZW1vdmUgKGRlbGV0ZSkgdGhlIGZpbGUgKnBhdGgqLiAgVGhpcyBpcyB0aGUgc2FtZSBmdW5jdGlvbiBhcwpAQCAtMTQ2MiwxOCArMjE1MSwxOSBAQAogICAgQXZhaWxhYmlsaXR5OiBVbml4LCBXaW5kb3dzLgogCiAKLS4uIGZ1bmN0aW9uOjogdXRpbWUocGF0aCwgdGltZXMpCisuLiBmdW5jdGlvbjo6IHV0aW1lKHBhdGhbLCB0aW1lc10pCiAKICAgIFNldCB0aGUgYWNjZXNzIGFuZCBtb2RpZmllZCB0aW1lcyBvZiB0aGUgZmlsZSBzcGVjaWZpZWQgYnkgKnBhdGgqLiBJZiAqdGltZXMqCi0gICBpcyBgYE5vbmVgYCwgdGhlbiB0aGUgZmlsZSdzIGFjY2VzcyBhbmQgbW9kaWZpZWQgdGltZXMgYXJlIHNldCB0byB0aGUgY3VycmVudAotICAgdGltZS4gKFRoZSBlZmZlY3QgaXMgc2ltaWxhciB0byBydW5uaW5nIHRoZSBVbml4IHByb2dyYW0gOnByb2dyYW06YHRvdWNoYCBvbgotICAgdGhlIHBhdGguKSAgT3RoZXJ3aXNlLCAqdGltZXMqIG11c3QgYmUgYSAyLXR1cGxlIG9mIG51bWJlcnMsIG9mIHRoZSBmb3JtCi0gICBgYChhdGltZSwgbXRpbWUpYGAgd2hpY2ggaXMgdXNlZCB0byBzZXQgdGhlIGFjY2VzcyBhbmQgbW9kaWZpZWQgdGltZXMsCi0gICByZXNwZWN0aXZlbHkuIFdoZXRoZXIgYSBkaXJlY3RvcnkgY2FuIGJlIGdpdmVuIGZvciAqcGF0aCogZGVwZW5kcyBvbiB3aGV0aGVyCi0gICB0aGUgb3BlcmF0aW5nIHN5c3RlbSBpbXBsZW1lbnRzIGRpcmVjdG9yaWVzIGFzIGZpbGVzIChmb3IgZXhhbXBsZSwgV2luZG93cwotICAgZG9lcyBub3QpLiAgTm90ZSB0aGF0IHRoZSBleGFjdCB0aW1lcyB5b3Ugc2V0IGhlcmUgbWF5IG5vdCBiZSByZXR1cm5lZCBieSBhCi0gICBzdWJzZXF1ZW50IDpmdW5jOmB+b3Muc3RhdGAgY2FsbCwgZGVwZW5kaW5nIG9uIHRoZSByZXNvbHV0aW9uIHdpdGggd2hpY2ggeW91cgotICAgb3BlcmF0aW5nIHN5c3RlbSByZWNvcmRzIGFjY2VzcyBhbmQgbW9kaWZpY2F0aW9uIHRpbWVzOyBzZWUgOmZ1bmM6YH5vcy5zdGF0YC4KKyAgIGlzIGBgTm9uZWBgIG9yIG5vdCBzcGVjaWZpZWQsIHRoZW4gdGhlIGZpbGUncyBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWVzIGFyZQorICAgc2V0IHRvIHRoZSBjdXJyZW50IHRpbWUuIChUaGUgZWZmZWN0IGlzIHNpbWlsYXIgdG8gcnVubmluZyB0aGUgVW5peCBwcm9ncmFtCisgICA6cHJvZ3JhbTpgdG91Y2hgIG9uIHRoZSBwYXRoLikgIE90aGVyd2lzZSwgKnRpbWVzKiBtdXN0IGJlIGEgMi10dXBsZSBvZgorICAgbnVtYmVycywgb2YgdGhlIGZvcm0gYGAoYXRpbWUsIG10aW1lKWBgIHdoaWNoIGlzIHVzZWQgdG8gc2V0IHRoZSBhY2Nlc3MgYW5kCisgICBtb2RpZmllZCB0aW1lcywgcmVzcGVjdGl2ZWx5LiBXaGV0aGVyIGEgZGlyZWN0b3J5IGNhbiBiZSBnaXZlbiBmb3IgKnBhdGgqCisgICBkZXBlbmRzIG9uIHdoZXRoZXIgdGhlIG9wZXJhdGluZyBzeXN0ZW0gaW1wbGVtZW50cyBkaXJlY3RvcmllcyBhcyBmaWxlcworICAgKGZvciBleGFtcGxlLCBXaW5kb3dzIGRvZXMgbm90KS4gIE5vdGUgdGhhdCB0aGUgZXhhY3QgdGltZXMgeW91IHNldCBoZXJlIG1heQorICAgbm90IGJlIHJldHVybmVkIGJ5IGEgc3Vic2VxdWVudCA6ZnVuYzpgfm9zLnN0YXRgIGNhbGwsIGRlcGVuZGluZyBvbiB0aGUKKyAgIHJlc29sdXRpb24gd2l0aCB3aGljaCB5b3VyIG9wZXJhdGluZyBzeXN0ZW0gcmVjb3JkcyBhY2Nlc3MgYW5kIG1vZGlmaWNhdGlvbgorICAgdGltZXM7IHNlZSA6ZnVuYzpgfm9zLnN0YXRgLgogCiAgICBBdmFpbGFiaWxpdHk6IFVuaXgsIFdpbmRvd3MuCiAKQEAgLTE4MjUsNiArMjUxNSw4IEBACiAgICB3aWxsIGJlIHNldCB0byAqc2lnKi4gVGhlIFdpbmRvd3MgdmVyc2lvbiBvZiA6ZnVuYzpga2lsbGAgYWRkaXRpb25hbGx5IHRha2VzCiAgICBwcm9jZXNzIGhhbmRsZXMgdG8gYmUga2lsbGVkLgogCisgICBTZWUgYWxzbyA6ZnVuYzpgc2lnbmFsLnB0aHJlYWRfa2lsbGAuCisKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogICAgICAgV2luZG93cyBzdXBwb3J0LgogCkBAIC0yMDM1LDYgKzI3MjcsNTggQEAKIAogICAgQXZhaWxhYmlsaXR5OiBVbml4LgogCisuLiBmdW5jdGlvbjo6IHdhaXRpZChpZHR5cGUsIGlkLCBvcHRpb25zKQorCisgICBXYWl0IGZvciB0aGUgY29tcGxldGlvbiBvZiBvbmUgb3IgbW9yZSBjaGlsZCBwcm9jZXNzZXMuCisgICAqaWR0eXBlKiBjYW4gYmUgOmRhdGE6YFBfUElEYCwgOmRhdGE6YFBfUEdJRGAgb3IgOmRhdGE6YFBfQUxMYC4KKyAgICppZCogc3BlY2lmaWVzIHRoZSBwaWQgdG8gd2FpdCBvbi4KKyAgICpvcHRpb25zKiBpcyBjb25zdHJ1Y3RlZCBmcm9tIHRoZSBPUmluZyBvZiBvbmUgb3IgbW9yZSBvZiA6ZGF0YTpgV0VYSVRFRGAsCisgICA6ZGF0YTpgV1NUT1BQRURgIG9yIDpkYXRhOmBXQ09OVElOVUVEYCBhbmQgYWRkaXRpb25hbGx5IG1heSBiZSBPUmVkIHdpdGgKKyAgIDpkYXRhOmBXTk9IQU5HYCBvciA6ZGF0YTpgV05PV0FJVGAuIFRoZSByZXR1cm4gdmFsdWUgaXMgYW4gb2JqZWN0CisgICByZXByZXNlbnRpbmcgdGhlIGRhdGEgY29udGFpbmVkIGluIHRoZSA6Yzp0eXBlOmBzaWdpbmZvX3RgIHN0cnVjdHVyZSwgbmFtZWx5OgorICAgOmF0dHI6YHNpX3BpZGAsIDphdHRyOmBzaV91aWRgLCA6YXR0cjpgc2lfc2lnbm9gLCA6YXR0cjpgc2lfc3RhdHVzYCwKKyAgIDphdHRyOmBzaV9jb2RlYCBvciBgYE5vbmVgYCBpZiA6ZGF0YTpgV05PSEFOR2AgaXMgc3BlY2lmaWVkIGFuZCB0aGVyZSBhcmUgbm8KKyAgIGNoaWxkcmVuIGluIGEgd2FpdGFibGUgc3RhdGUuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGRhdGE6OiBQX1BJRAorICAgICAgICAgIFBfUEdJRAorICAgICAgICAgIFBfQUxMCisKKyAgIFRoZXNlIGFyZSB0aGUgcG9zc2libGUgdmFsdWVzIGZvciAqaWR0eXBlKiBpbiA6ZnVuYzpgd2FpdGlkYC4gVGhleSBhZmZlY3QKKyAgIGhvdyAqaWQqIGlzIGludGVycHJldGVkLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBkYXRhOjogV0VYSVRFRAorICAgICAgICAgIFdTVE9QUEVECisgICAgICAgICAgV05PV0FJVAorCisgICBGbGFncyB0aGF0IGNhbiBiZSB1c2VkIGluICpvcHRpb25zKiBpbiA6ZnVuYzpgd2FpdGlkYCB0aGF0IHNwZWNpZnkgd2hhdAorICAgY2hpbGQgc2lnbmFsIHRvIHdhaXQgZm9yLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGRhdGE6OiBDTERfRVhJVEVECisgICAgICAgICAgQ0xEX0RVTVBFRAorICAgICAgICAgIENMRF9UUkFQUEVECisgICAgICAgICAgQ0xEX0NPTlRJTlVFRAorCisgICBUaGVzZSBhcmUgdGhlIHBvc3NpYmxlIHZhbHVlcyBmb3IgOmF0dHI6YHNpX2NvZGVgIGluIHRoZSByZXN1bHQgcmV0dXJuZWQgYnkKKyAgIDpmdW5jOmB3YWl0aWRgLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAKIC4uIGZ1bmN0aW9uOjogd2FpdHBpZChwaWQsIG9wdGlvbnMpCiAKQEAgLTIxNzYsNiArMjkyMCwxNTUgQEAKICAgIEF2YWlsYWJpbGl0eTogVW5peC4KIAogCitJbnRlcmZhY2UgdG8gdGhlIHNjaGVkdWxlcgorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlc2UgZnVuY3Rpb25zIGNvbnRyb2wgaG93IGEgcHJvY2VzcyBpcyBhbGxvY2F0ZWQgQ1BVIHRpbWUgYnkgdGhlIG9wZXJhdGluZworc3lzdGVtLiBUaGV5IGFyZSBvbmx5IGF2YWlsYWJsZSBvbiBzb21lIFVuaXggcGxhdGZvcm1zLiBGb3IgbW9yZSBkZXRhaWxlZAoraW5mb3JtYXRpb24sIGNvbnN1bHQgeW91ciBVbml4IG1hbnBhZ2VzLgorCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworVGhlIGZvbGxvd2luZyBzY2hlZHVsaW5nIHBvbGljaWVzIGFyZSBleHBvc2VkIGlmIHRoZXkgYXJlIGEgc3VwcG9ydGVkIGJ5IHRoZQorb3BlcmF0aW5nIHN5c3RlbS4KKworLi4gZGF0YTo6IFNDSEVEX09USEVSCisKKyAgIFRoZSBkZWZhdWx0IHNjaGVkdWxpbmcgcG9saWN5LgorCisuLiBkYXRhOjogU0NIRURfQkFUQ0gKKworICAgU2NoZWR1bGluZyBwb2xpY3kgZm9yIENQVS1pbnRlbnNpdmUgcHJvY2Vzc2VzIHRoYXQgdHJpZXMgdG8gcHJlc2VydmUKKyAgIGludGVyYWN0aXZpdHkgb24gdGhlIHJlc3Qgb2YgdGhlIGNvbXB1dGVyLgorCisuLiBkYXRhOjogU0NIRURfSURMRQorCisgICBTY2hlZHVsaW5nIHBvbGljeSBmb3IgZXh0cmVtZWx5IGxvdyBwcmlvcml0eSBiYWNrZ3JvdW5kIHRhc2tzLgorCisuLiBkYXRhOjogU0NIRURfU1BPUkFESUMKKworICAgU2NoZWR1bGluZyBwb2xpY3kgZm9yIHNwb3JhZGljIHNlcnZlciBwcm9ncmFtcy4KKworLi4gZGF0YTo6IFNDSEVEX0ZJRk8KKworICAgQSBGaXJzdCBJbiBGaXJzdCBPdXQgc2NoZWR1bGluZyBwb2xpY3kuCisKKy4uIGRhdGE6OiBTQ0hFRF9SUgorCisgICBBIHJvdW5kLXJvYmluIHNjaGVkdWxpbmcgcG9saWN5LgorCisuLiBkYXRhOjogU0NIRURfUkVTRVRfT05fRk9SSworCisgICBUaGlzIGZsYWcgY2FuIE9SJ2VkIHdpdGggYW55IG90aGVyIHNjaGVkdWxpbmcgcG9saWN5LiBXaGVuIGEgcHJvY2VzcyB3aXRoCisgICB0aGlzIGZsYWcgc2V0IGZvcmtzLCBpdHMgY2hpbGQncyBzY2hlZHVsaW5nIHBvbGljeSBhbmQgcHJpb3JpdHkgYXJlIHJlc2V0IHRvCisgICB0aGUgZGVmYXVsdC4KKworCisuLiBjbGFzczo6IHNjaGVkX3BhcmFtKHNjaGVkX3ByaW9yaXR5KQorCisgICBUaGlzIGNsYXNzIHJlcHJlc2VudHMgdHVuYWJsZSBzY2hlZHVsaW5nIHBhcmFtZXRlcnMgdXNlZCBpbgorICAgOmZ1bmM6YHNjaGVkX3NldHBhcmFtYCwgOmZ1bmM6YHNjaGVkX3NldHNjaGVkdWxlcmAsIGFuZAorICAgOmZ1bmM6YHNjaGVkX2dldHBhcmFtYC4gSXQgaXMgaW1tdXRhYmxlLgorCisgICBBdCB0aGUgbW9tZW50LCB0aGVyZSBpcyBvbmx5IG9uZSBwb3NzaWJsZSBwYXJhbWV0ZXI6CisKKyAgIC4uIGF0dHJpYnV0ZTo6IHNjaGVkX3ByaW9yaXR5CisKKyAgICAgIFRoZSBzY2hlZHVsaW5nIHByaW9yaXR5IGZvciBhIHNjaGVkdWxpbmcgcG9saWN5LgorCisKKy4uIGZ1bmN0aW9uOjogc2NoZWRfZ2V0X3ByaW9yaXR5X21pbihwb2xpY3kpCisKKyAgIEdldCB0aGUgbWluaW11bSBwcmlvcml0eSB2YWx1ZSBmb3IgKnBvbGljeSouICpwb2xpY3kqIGlzIG9uZSBvZiB0aGUKKyAgIHNjaGVkdWxpbmcgcG9saWN5IGNvbnN0YW50cyBhYm92ZS4KKworCisuLiBmdW5jdGlvbjo6IHNjaGVkX2dldF9wcmlvcml0eV9tYXgocG9saWN5KQorCisgICBHZXQgdGhlIG1heGltdW0gcHJpb3JpdHkgdmFsdWUgZm9yICpwb2xpY3kqLiAqcG9saWN5KiBpcyBvbmUgb2YgdGhlCisgICBzY2hlZHVsaW5nIHBvbGljeSBjb25zdGFudHMgYWJvdmUuCisKKworLi4gZnVuY3Rpb246OiBzY2hlZF9zZXRzY2hlZHVsZXIocGlkLCBwb2xpY3ksIHBhcmFtKQorCisgICBTZXQgdGhlIHNjaGVkdWxpbmcgcG9saWN5IGZvciB0aGUgcHJvY2VzcyB3aXRoIFBJRCAqcGlkKi4gQSAqcGlkKiBvZiAwIG1lYW5zCisgICB0aGUgY2FsbGluZyBwcm9jZXNzLiAqcG9saWN5KiBpcyBvbmUgb2YgdGhlIHNjaGVkdWxpbmcgcG9saWN5IGNvbnN0YW50cworICAgYWJvdmUuICpwYXJhbSogaXMgYSA6Y2xhc3M6YHNjaGVkX3BhcmFtYCBpbnN0YW5jZS4KKworCisuLiBmdW5jdGlvbjo6IHNjaGVkX2dldHNjaGVkdWxlcihwaWQpCisKKyAgIFJldHVybiB0aGUgc2NoZWR1bGluZyBwb2xpY3kgZm9yIHRoZSBwcm9jZXNzIHdpdGggUElEICpwaWQqLiBBICpwaWQqIG9mIDAKKyAgIG1lYW5zIHRoZSBjYWxsaW5nIHByb2Nlc3MuIFRoZSByZXN1bHQgaXMgb25lIG9mIHRoZSBzY2hlZHVsaW5nIHBvbGljeQorICAgY29uc3RhbnRzIGFib3ZlLgorCisKKy4uIGZ1bmN0aW9uOjogc2NoZWRfc2V0cGFyYW0ocGlkLCBwYXJhbSkKKworICAgU2V0IGEgc2NoZWR1bGluZyBwYXJhbWV0ZXJzIGZvciB0aGUgcHJvY2VzcyB3aXRoIFBJRCAqcGlkKi4gQSAqcGlkKiBvZiAwIG1lYW5zCisgICB0aGUgY2FsbGluZyBwcm9jZXNzLiAqcGFyYW0qIGlzIGEgOmNsYXNzOmBzY2hlZF9wYXJhbWAgaW5zdGFuY2UuCisKKworLi4gZnVuY3Rpb246OiBzY2hlZF9nZXRwYXJhbShwaWQpCisKKyAgIFJldHVybiB0aGUgc2NoZWR1bGluZyBwYXJhbWV0ZXJzIGFzIGEgOmNsYXNzOmBzY2hlZF9wYXJhbWAgaW5zdGFuY2UgZm9yIHRoZQorICAgcHJvY2VzcyB3aXRoIFBJRCAqcGlkKi4gQSAqcGlkKiBvZiAwIG1lYW5zIHRoZSBjYWxsaW5nIHByb2Nlc3MuCisKKworLi4gZnVuY3Rpb246OiBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwocGlkKQorCisgICBSZXR1cm4gdGhlIHJvdW5kLXJvYmluIHF1YW50dW0gaW4gc2Vjb25kcyBmb3IgdGhlIHByb2Nlc3Mgd2l0aCBQSUQgKnBpZCouIEEKKyAgICpwaWQqIG9mIDAgbWVhbnMgdGhlIGNhbGxpbmcgcHJvY2Vzcy4KKworCisuLiBmdW5jdGlvbjo6IHNjaGVkX3lpZWxkKCkKKworICAgVm9sdW50YXJpbHkgcmVsaW5xdWlzaCB0aGUgQ1BVLgorCisKKy4uIGNsYXNzOjogY3B1X3NldChuY3B1cykKKworICAgOmNsYXNzOmBjcHVfc2V0YCByZXByZXNlbnRzIGEgc2V0IG9mIENQVXMgb24gd2hpY2ggYSBwcm9jZXNzIGlzIGVsaWdpYmxlIHRvCisgICBydW4uICpuY3B1cyogaXMgdGhlIG51bWJlciBvZiBDUFVzIHRoZSBzZXQgc2hvdWxkIGRlc2NyaWJlLiBNZXRob2RzIG9uCisgICA6Y2xhc3M6YGNwdV9zZXRgIGFsbG93IENQVXMgdG8gYmUgYWRkIG9yIHJlbW92ZWQuCisKKyAgIDpjbGFzczpgY3B1X3NldGAgc3VwcG9ydHMgdGhlIEFORCwgT1IsIGFuZCBYT1IgYml0d2lzZSBvcGVyYXRpb25zLiBGb3IKKyAgIGV4YW1wbGUsIGdpdmVuIHR3byBjcHVfc2V0cywgYGBvbmVgYCBhbmQgYGB0d29gYCwgYGBvbmUgfCB0d29gYCByZXR1cm5zIGEKKyAgIDpjbGFzczpgY3B1X3NldGAgY29udGFpbmluZyB0aGUgY3B1cyBlbmFibGVkIGJvdGggaW4gYGBvbmVgYCBhbmQgYGB0d29gYC4KKworICAgLi4gbWV0aG9kOjogc2V0KGkpCisKKyAgICAgIEVuYWJsZSBDUFUgKmkqLgorCisgICAuLiBtZXRob2Q6OiBjbGVhcihpKQorCisgICAgICBSZW1vdmUgQ1BVICppKi4KKworICAgLi4gbWV0aG9kOjogaXNzZXQoaSkKKworICAgICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIENQVSAqaSogaXMgZW5hYmxlZCBpbiB0aGUgc2V0LgorCisgICAuLiBtZXRob2Q6OiBjb3VudCgpCisKKyAgICAgIFJldHVybiB0aGUgbnVtYmVyIG9mIGVuYWJsZWQgQ1BVcyBpbiB0aGUgc2V0LgorCisgICAuLiBtZXRob2Q6OiB6ZXJvKCkKKworICAgICAgQ2xlYXIgdGhlIHNldCBjb21wbGV0ZWx5LgorCisKKy4uIGZ1bmN0aW9uOjogc2NoZWRfc2V0YWZmaW5pdHkocGlkLCBtYXNrKQorCisgICBSZXN0cmljdCB0aGUgcHJvY2VzcyB3aXRoIFBJRCAqcGlkKiB0byBhIHNldCBvZiBDUFVzLiAqbWFzayogaXMgYQorICAgOmNsYXNzOmBjcHVfc2V0YCBpbnN0YW5jZS4KKworCisuLiBmdW5jdGlvbjo6IHNjaGVkX2dldGFmZmluaXR5KHBpZCwgc2l6ZSkKKworICAgUmV0dXJuIHRoZSA6Y2xhc3M6YGNwdV9zZXRgIHRoZSBwcm9jZXNzIHdpdGggUElEICpwaWQqIGlzIHJlc3RyaWN0ZWQgdG8uIFRoZQorICAgcmVzdWx0IHdpbGwgY29udGFpbiAqc2l6ZSogQ1BVcy4KKworCiAuLiBfb3MtcGF0aDoKIAogTWlzY2VsbGFuZW91cyBTeXN0ZW0gSW5mb3JtYXRpb24KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L29zc2F1ZGlvZGV2LnJzdCBiL0RvYy9saWJyYXJ5L29zc2F1ZGlvZGV2LnJzdAppbmRleCAwYTA4NDI4Li41MWM1ODU3IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9vc3NhdWRpb2Rldi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvb3NzYXVkaW9kZXYucnN0CkBAIC0zOCw2ICszOCwxMCBAQAogICAgVGhpcyBwcm9iYWJseSBhbGwgd2FycmFudHMgYSBmb290bm90ZSBvciB0d28sIGJ1dCBJIGRvbid0IHVuZGVyc3RhbmQKICAgIHRoaW5ncyB3ZWxsIGVub3VnaCByaWdodCBub3cgdG8gd3JpdGUgaXQhICAgLS1HUFcKIAorLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgIE9wZXJhdGlvbnMgaW4gdGhpcyBtb2R1bGUgbm93IHJhaXNlIDpleGM6YE9TRXJyb3JgIHdoZXJlIDpleGM6YElPRXJyb3JgCisgICB3YXMgcmFpc2VkLgorCiAKIC4uIHNlZWFsc286OgogCkBAIC01Niw3ICs2MCw3IEBACiAgICB3aGF0IHdlbnQgd3JvbmcuCiAKICAgIChJZiA6bW9kOmBvc3NhdWRpb2RldmAgcmVjZWl2ZXMgYW4gZXJyb3IgZnJvbSBhIHN5c3RlbSBjYWxsIHN1Y2ggYXMKLSAgIDpjOmZ1bmM6YG9wZW5gLCA6YzpmdW5jOmB3cml0ZWAsIG9yIDpjOmZ1bmM6YGlvY3RsYCwgaXQgcmFpc2VzIDpleGM6YElPRXJyb3JgLgorICAgOmM6ZnVuYzpgb3BlbmAsIDpjOmZ1bmM6YHdyaXRlYCwgb3IgOmM6ZnVuYzpgaW9jdGxgLCBpdCByYWlzZXMgOmV4YzpgT1NFcnJvcmAuCiAgICBFcnJvcnMgZGV0ZWN0ZWQgZGlyZWN0bHkgYnkgOm1vZDpgb3NzYXVkaW9kZXZgIHJlc3VsdCBpbiA6ZXhjOmBPU1NBdWRpb0Vycm9yYC4pCiAKICAgIChGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIHRoZSBleGNlcHRpb24gY2xhc3MgaXMgYWxzbyBhdmFpbGFibGUgYXMKQEAgLTE2OCw3ICsxNzIsNyBAQAogY29ycmVzcG9uZGVuY2UgaXMgb2J2aW91czogZm9yIGV4YW1wbGUsIDptZXRoOmBzZXRmbXRgIGNvcnJlc3BvbmRzIHRvIHRoZQogYGBTTkRDVExfRFNQX1NFVEZNVGBgIGlvY3RsLCBhbmQgOm1ldGg6YHN5bmNgIHRvIGBgU05EQ1RMX0RTUF9TWU5DYGAgKHRoaXMgY2FuCiBiZSB1c2VmdWwgd2hlbiBjb25zdWx0aW5nIHRoZSBPU1MgZG9jdW1lbnRhdGlvbikuICBJZiB0aGUgdW5kZXJseWluZwotOmZ1bmM6YGlvY3RsYCBmYWlscywgdGhleSBhbGwgcmFpc2UgOmV4YzpgSU9FcnJvcmAuCis6ZnVuYzpgaW9jdGxgIGZhaWxzLCB0aGV5IGFsbCByYWlzZSA6ZXhjOmBPU0Vycm9yYC4KIAogCiAuLiBtZXRob2Q6OiBvc3NfYXVkaW9fZGV2aWNlLm5vbmJsb2NrKCkKQEAgLTM0NCw3ICszNDgsNyBAQAogLi4gbWV0aG9kOjogb3NzX21peGVyX2RldmljZS5jbG9zZSgpCiAKICAgIFRoaXMgbWV0aG9kIGNsb3NlcyB0aGUgb3BlbiBtaXhlciBkZXZpY2UgZmlsZS4gIEFueSBmdXJ0aGVyIGF0dGVtcHRzIHRvIHVzZSB0aGUKLSAgIG1peGVyIGFmdGVyIHRoaXMgZmlsZSBpcyBjbG9zZWQgd2lsbCByYWlzZSBhbiA6ZXhjOmBJT0Vycm9yYC4KKyAgIG1peGVyIGFmdGVyIHRoaXMgZmlsZSBpcyBjbG9zZWQgd2lsbCByYWlzZSBhbiA6ZXhjOmBPU0Vycm9yYC4KIAogCiAuLiBtZXRob2Q6OiBvc3NfbWl4ZXJfZGV2aWNlLmZpbGVubygpCkBAIC00MDMsNyArNDA3LDcgQEAKICAgIHJldHVybmVkLCBidXQgYm90aCB2b2x1bWVzIGFyZSB0aGUgc2FtZS4KIAogICAgUmFpc2VzIDpleGM6YE9TU0F1ZGlvRXJyb3JgIGlmIGFuIGludmFsaWQgY29udHJvbCB3YXMgaXMgc3BlY2lmaWVkLCBvcgotICAgOmV4YzpgSU9FcnJvcmAgaWYgYW4gdW5zdXBwb3J0ZWQgY29udHJvbCBpcyBzcGVjaWZpZWQuCisgICA6ZXhjOmBPU0Vycm9yYCBpZiBhbiB1bnN1cHBvcnRlZCBjb250cm9sIGlzIHNwZWNpZmllZC4KIAogCiAuLiBtZXRob2Q6OiBvc3NfbWl4ZXJfZGV2aWNlLnNldChjb250cm9sLCAobGVmdCwgcmlnaHQpKQpAQCAtNDI3LDcgKzQzMSw3IEBACiAuLiBtZXRob2Q6OiBvc3NfbWl4ZXJfZGV2aWNlLnNldF9yZWNzcmMoYml0bWFzaykKIAogICAgQ2FsbCB0aGlzIGZ1bmN0aW9uIHRvIHNwZWNpZnkgYSByZWNvcmRpbmcgc291cmNlLiAgUmV0dXJucyBhIGJpdG1hc2sgaW5kaWNhdGluZwotICAgdGhlIG5ldyByZWNvcmRpbmcgc291cmNlIChvciBzb3VyY2VzKSBpZiBzdWNjZXNzZnVsOyByYWlzZXMgOmV4YzpgSU9FcnJvcmAgaWYgYW4KKyAgIHRoZSBuZXcgcmVjb3JkaW5nIHNvdXJjZSAob3Igc291cmNlcykgaWYgc3VjY2Vzc2Z1bDsgcmFpc2VzIDpleGM6YE9TRXJyb3JgIGlmIGFuCiAgICBpbnZhbGlkIHNvdXJjZSB3YXMgc3BlY2lmaWVkLiAgVG8gc2V0IHRoZSBjdXJyZW50IHJlY29yZGluZyBzb3VyY2UgdG8gdGhlCiAgICBtaWNyb3Bob25lIGlucHV0OjoKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLW1pc2MucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLW1pc2MucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlNTYyNDcKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmctbWlzYy5yc3QKQEAgLTAsMCArMSwyNyBAQAorLi4gdGVtcG9yYXJ5IGZpbGUgZm9yIG1vZHVsZXMgdGhhdCBkb24ndCBuZWVkIGEgZGVkaWNhdGVkIGZpbGUgeWV0CisKKzptb2Q6YHBhY2thZ2luZy5lcnJvcnNgIC0tLSBQYWNrYWdpbmcgZXhjZXB0aW9ucworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy5lcnJvcnMKKyAgIDpzeW5vcHNpczogUGFja2FnaW5nIGV4Y2VwdGlvbnMuCisKKworUHJvdmlkZXMgZXhjZXB0aW9ucyB1c2VkIGJ5IHRoZSBQYWNrYWdpbmcgbW9kdWxlcy4gIE5vdGUgdGhhdCBQYWNrYWdpbmcgbW9kdWxlcworbWF5IHJhaXNlIHN0YW5kYXJkIGV4Y2VwdGlvbnM7IGluIHBhcnRpY3VsYXIsIFN5c3RlbUV4aXQgaXMgdXN1YWxseSByYWlzZWQgZm9yCitlcnJvcnMgdGhhdCBhcmUgb2J2aW91c2x5IHRoZSBlbmQtdXNlcidzIGZhdWx0IChlLmcuIGJhZCBjb21tYW5kLWxpbmUgYXJndW1lbnRzKS4KKworVGhpcyBtb2R1bGUgaXMgc2FmZSB0byB1c2UgaW4gYGBmcm9tIC4uLiBpbXBvcnQgKmBgIG1vZGU7IGl0IG9ubHkgZXhwb3J0cworc3ltYm9scyB3aG9zZSBuYW1lcyBzdGFydCB3aXRoIGBgUGFja2FnaW5nYGAgYW5kIGVuZCB3aXRoIGBgRXJyb3JgYC4KKworCis6bW9kOmBwYWNrYWdpbmcubWFuaWZlc3RgIC0tLSBUaGUgTWFuaWZlc3QgY2xhc3MKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcubWFuaWZlc3QKKyAgIDpzeW5vcHNpczogVGhlIE1hbmlmZXN0IGNsYXNzLCB1c2VkIGZvciBwb2tpbmcgYWJvdXQgdGhlIGZpbGUgc3lzdGVtIGFuZAorICAgICAgICAgICAgICBidWlsZGluZyBsaXN0cyBvZiBmaWxlcy4KKworCitUaGlzIG1vZHVsZSBwcm92aWRlcyB0aGUgOmNsYXNzOmBNYW5pZmVzdGAgY2xhc3MsIHVzZWQgZm9yIHBva2luZyBhYm91dCB0aGUKK2ZpbGVzeXN0ZW0gYW5kIGJ1aWxkaW5nIGxpc3RzIG9mIGZpbGVzLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmNvbW1hbmQucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmNvbW1hbmQucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZhODUzNTEKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuY29tbWFuZC5yc3QKQEAgLTAsMCArMSwxMTEgQEAKKzptb2Q6YHBhY2thZ2luZy5jb21tYW5kYCAtLS0gU3RhbmRhcmQgUGFja2FnaW5nIGNvbW1hbmRzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcuY29tbWFuZAorICAgOnN5bm9wc2lzOiBTdGFuZGFyZCBwYWNrYWdpbmcgY29tbWFuZHMuCisKKworVGhpcyBzdWJwYWNrYWdlIGNvbnRhaW5zIG9uZSBtb2R1bGUgZm9yIGVhY2ggc3RhbmRhcmQgUGFja2FnaW5nIGNvbW1hbmQsIHN1Y2ggYXMKKzpjb21tYW5kOmBidWlsZGAgIG9yIDpjb21tYW5kOmB1cGxvYWRgLiAgRWFjaCBjb21tYW5kIGlzIGltcGxlbWVudGVkIGFzIGEKK3NlcGFyYXRlIG1vZHVsZSwgd2l0aCB0aGUgY29tbWFuZCBuYW1lIGFzIHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgYW5kIG9mIHRoZQorY2xhc3MgZGVmaW5lZCB0aGVyZWluLgorCisKKworOm1vZDpgcGFja2FnaW5nLmNvbW1hbmQuY21kYCAtLS0gQWJzdHJhY3QgYmFzZSBjbGFzcyBmb3IgUGFja2FnaW5nIGNvbW1hbmRzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLmNvbW1hbmQuY21kCisgICA6c3lub3BzaXM6IEFic3RyYWN0IGJhc2UgY2xhc3MgZm9yIGNvbW1hbmRzLgorCisKK1RoaXMgbW9kdWxlIHN1cHBsaWVzIHRoZSBhYnN0cmFjdCBiYXNlIGNsYXNzIDpjbGFzczpgQ29tbWFuZGAuICBUaGlzIGNsYXNzIGlzCitzdWJjbGFzc2VkIGJ5IHRoZSBtb2R1bGVzIGluIHRoZSBwYWNrYWdpbmcuY29tbWFuZCBzdWJwYWNrYWdlLgorCisKKy4uIGNsYXNzOjogQ29tbWFuZChkaXN0KQorCisgICBBYnN0cmFjdCBiYXNlIGNsYXNzIGZvciBkZWZpbmluZyBjb21tYW5kIGNsYXNzZXMsIHRoZSAid29ya2VyIGJlZXMiIG9mIHRoZQorICAgUGFja2FnaW5nLiAgQSB1c2VmdWwgYW5hbG9neSBmb3IgY29tbWFuZCBjbGFzc2VzIGlzIHRvIHRoaW5rIG9mIHRoZW0gYXMKKyAgIHN1YnJvdXRpbmVzIHdpdGggbG9jYWwgdmFyaWFibGVzIGNhbGxlZCAqb3B0aW9ucyouICBUaGUgb3B0aW9ucyBhcmUgZGVjbGFyZWQKKyAgIGluIDptZXRoOmBpbml0aWFsaXplX29wdGlvbnNgIGFuZCBkZWZpbmVkIChnaXZlbiB0aGVpciBmaW5hbCB2YWx1ZXMpIGluCisgICA6bWV0aDpgZmluYWxpemVfb3B0aW9uc2AsIGJvdGggb2Ygd2hpY2ggbXVzdCBiZSBkZWZpbmVkIGJ5IGV2ZXJ5IGNvbW1hbmQKKyAgIGNsYXNzLiAgVGhlIGRpc3RpbmN0aW9uIGJldHdlZW4gdGhlIHR3byBpcyBuZWNlc3NhcnkgYmVjYXVzZSBvcHRpb24gdmFsdWVzCisgICBtaWdodCBjb21lIGZyb20gdGhlIG91dHNpZGUgd29ybGQgKGNvbW1hbmQgbGluZSwgY29uZmlnIGZpbGUsIC4uLiksIGFuZCBhbnkKKyAgIG9wdGlvbnMgZGVwZW5kZW50IG9uIG90aGVyIG9wdGlvbnMgbXVzdCBiZSBjb21wdXRlZCBhZnRlciB0aGVzZSBvdXRzaWRlCisgICBpbmZsdWVuY2VzIGhhdmUgYmVlbiBwcm9jZXNzZWQgLS0tIGhlbmNlIDptZXRoOmBmaW5hbGl6ZV9vcHRpb25zYC4gIFRoZSBib2R5CisgICBvZiB0aGUgc3Vicm91dGluZSwgd2hlcmUgaXQgZG9lcyBhbGwgaXRzIHdvcmsgYmFzZWQgb24gdGhlIHZhbHVlcyBvZiBpdHMKKyAgIG9wdGlvbnMsIGlzIHRoZSA6bWV0aDpgcnVuYCBtZXRob2QsIHdoaWNoIG11c3QgYWxzbyBiZSBpbXBsZW1lbnRlZCBieSBldmVyeQorICAgY29tbWFuZCBjbGFzcy4KKworICAgVGhlIGNsYXNzIGNvbnN0cnVjdG9yIHRha2VzIGEgc2luZ2xlIGFyZ3VtZW50ICpkaXN0KiwgYQorICAgOmNsYXNzOmB+cGFja2FnaW5nLmRpc3QuRGlzdHJpYnV0aW9uYCBpbnN0YW5jZS4KKworCitDcmVhdGluZyBhIG5ldyBQYWNrYWdpbmcgY29tbWFuZAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhpcyBzZWN0aW9uIG91dGxpbmVzIHRoZSBzdGVwcyB0byBjcmVhdGUgYSBuZXcgUGFja2FnaW5nIGNvbW1hbmQuCisKKy4uIFhYWCB0aGUgZm9sbG93aW5nIHBhcmFncmFwaCBpcyBmb2N1c2VkIG9uIHRoZSBzdGRsaWI7IGV4cGFuZCBpdCB0byBkb2N1bWVudAorICAgaG93IHRvIHdyaXRlIGFuZCByZWdpc3RlciBhIGNvbW1hbmQgaW4gdGhpcmQtcGFydHkgcHJvamVjdHMKKworQSBuZXcgY29tbWFuZCBsaXZlcyBpbiBhIG1vZHVsZSBpbiB0aGUgOm1vZDpgcGFja2FnaW5nLmNvbW1hbmRgIHBhY2thZ2UuIFRoZXJlCitpcyBhIHNhbXBsZSB0ZW1wbGF0ZSBpbiB0aGF0IGRpcmVjdG9yeSBjYWxsZWQgOmZpbGU6YGNvbW1hbmRfdGVtcGxhdGVgLiAgQ29weQordGhpcyBmaWxlIHRvIGEgbmV3IG1vZHVsZSB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgdGhlIG5ldyBjb21tYW5kIHlvdSdyZQoraW1wbGVtZW50aW5nLiAgVGhpcyBtb2R1bGUgc2hvdWxkIGltcGxlbWVudCBhIGNsYXNzIHdpdGggdGhlIHNhbWUgbmFtZSBhcyB0aGUKK21vZHVsZSAoYW5kIHRoZSBjb21tYW5kKS4gIFNvLCBmb3IgaW5zdGFuY2UsIHRvIGNyZWF0ZSB0aGUgY29tbWFuZAorYGBwZWVsX2JhbmFuYWBgIChzbyB0aGF0IHVzZXJzIGNhbiBydW4gYGBzZXR1cC5weSBwZWVsX2JhbmFuYWBgKSwgeW91J2QgY29weQorOmZpbGU6YGNvbW1hbmRfdGVtcGxhdGVgIHRvIDpmaWxlOmBwYWNrYWdpbmcvY29tbWFuZC9wZWVsX2JhbmFuYS5weWAsIHRoZW4gZWRpdAoraXQgc28gdGhhdCBpdCdzIGltcGxlbWVudGluZyB0aGUgY2xhc3MgOmNsYXNzOmBwZWVsX2JhbmFuYWAsIGEgc3ViY2xhc3Mgb2YKKzpjbGFzczpgQ29tbWFuZGAuICBJdCBtdXN0IGRlZmluZSB0aGUgZm9sbG93aW5nIG1ldGhvZHM6CisKKy4uIG1ldGhvZDo6IENvbW1hbmQuaW5pdGlhbGl6ZV9vcHRpb25zKCkKKworICAgU2V0IGRlZmF1bHQgdmFsdWVzIGZvciBhbGwgdGhlIG9wdGlvbnMgdGhhdCB0aGlzIGNvbW1hbmQgc3VwcG9ydHMuICBOb3RlIHRoYXQKKyAgIHRoZXNlIGRlZmF1bHRzIG1heSBiZSBvdmVycmlkZGVuIGJ5IG90aGVyIGNvbW1hbmRzLCBieSB0aGUgc2V0dXAgc2NyaXB0LCBieQorICAgY29uZmlnIGZpbGVzLCBvciBieSB0aGUgY29tbWFuZCBsaW5lLiAgVGh1cywgdGhpcyBpcyBub3QgdGhlIHBsYWNlIHRvIGNvZGUKKyAgIGRlcGVuZGVuY2llcyBiZXR3ZWVuIG9wdGlvbnM7IGdlbmVyYWxseSwgOm1ldGg6YGluaXRpYWxpemVfb3B0aW9uc2AKKyAgIGltcGxlbWVudGF0aW9ucyBhcmUganVzdCBhIGJ1bmNoIG9mIGBgc2VsZi5mb28gPSBOb25lYGAgYXNzaWdubWVudHMuCisKKworLi4gbWV0aG9kOjogQ29tbWFuZC5maW5hbGl6ZV9vcHRpb25zKCkKKworICAgU2V0IGZpbmFsIHZhbHVlcyBmb3IgYWxsIHRoZSBvcHRpb25zIHRoYXQgdGhpcyBjb21tYW5kIHN1cHBvcnRzLiBUaGlzIGlzCisgICBhbHdheXMgY2FsbGVkIGFzIGxhdGUgYXMgcG9zc2libGUsIGkuZS4gYWZ0ZXIgYW55IG9wdGlvbiBhc3NpZ25tZW50cyBmcm9tIHRoZQorICAgY29tbWFuZCBsaW5lIG9yIGZyb20gb3RoZXIgY29tbWFuZHMgaGF2ZSBiZWVuIGRvbmUuICBUaHVzLCB0aGlzIGlzIHRoZSBwbGFjZQorICAgdG8gY29kZSBvcHRpb24gZGVwZW5kZW5jaWVzOiBpZiAqZm9vKiBkZXBlbmRzIG9uICpiYXIqLCB0aGVuIGl0IGlzIHNhZmUgdG8KKyAgIHNldCAqZm9vKiBmcm9tICpiYXIqIGFzIGxvbmcgYXMgKmZvbyogc3RpbGwgaGFzIHRoZSBzYW1lIHZhbHVlIGl0IHdhcworICAgYXNzaWduZWQgaW4gOm1ldGg6YGluaXRpYWxpemVfb3B0aW9uc2AuCisKKworLi4gbWV0aG9kOjogQ29tbWFuZC5ydW4oKQorCisgICBBIGNvbW1hbmQncyByYWlzb24gZCdldHJlOiBjYXJyeSBvdXQgdGhlIGFjdGlvbiBpdCBleGlzdHMgdG8gcGVyZm9ybSwKKyAgIGNvbnRyb2xsZWQgYnkgdGhlIG9wdGlvbnMgaW5pdGlhbGl6ZWQgaW4gOm1ldGg6YGluaXRpYWxpemVfb3B0aW9uc2AsCisgICBjdXN0b21pemVkIGJ5IG90aGVyIGNvbW1hbmRzLCB0aGUgc2V0dXAgc2NyaXB0LCB0aGUgY29tbWFuZCBsaW5lLCBhbmQgY29uZmlnCisgICBmaWxlcywgYW5kIGZpbmFsaXplZCBpbiA6bWV0aDpgZmluYWxpemVfb3B0aW9uc2AuICBBbGwgdGVybWluYWwgb3V0cHV0IGFuZAorICAgZmlsZXN5c3RlbSBpbnRlcmFjdGlvbiBzaG91bGQgYmUgZG9uZSBieSA6bWV0aDpgcnVuYC4KKworCitDb21tYW5kIGNsYXNzZXMgbWF5IGRlZmluZSB0aGlzIGF0dHJpYnV0ZToKKworCisuLiBhdHRyaWJ1dGU6OiBDb21tYW5kLnN1Yl9jb21tYW5kcworCisgICAqc3ViX2NvbW1hbmRzKiBmb3JtYWxpemVzIHRoZSBub3Rpb24gb2YgYSAiZmFtaWx5IiBvZiBjb21tYW5kcywKKyAgIGUuZy4gYGBpbnN0YWxsX2Rpc3RgYCBhcyB0aGUgcGFyZW50IHdpdGggc3ViLWNvbW1hbmRzIGBgaW5zdGFsbF9saWJgYCwKKyAgIGBgaW5zdGFsbF9oZWFkZXJzYGAsIGV0Yy4gIFRoZSBwYXJlbnQgb2YgYSBmYW1pbHkgb2YgY29tbWFuZHMgZGVmaW5lcworICAgKnN1Yl9jb21tYW5kcyogYXMgYSBjbGFzcyBhdHRyaWJ1dGU7IGl0J3MgYSBsaXN0IG9mIDItdHVwbGVzIGBgKGNvbW1hbmRfbmFtZSwKKyAgIHByZWRpY2F0ZSlgYCwgd2l0aCAqY29tbWFuZF9uYW1lKiBhIHN0cmluZyBhbmQgKnByZWRpY2F0ZSogYSBmdW5jdGlvbiwgYQorICAgc3RyaW5nIG9yIGBgTm9uZWBgLiAgKnByZWRpY2F0ZSogaXMgYSBtZXRob2Qgb2YgdGhlIHBhcmVudCBjb21tYW5kIHRoYXQKKyAgIGRldGVybWluZXMgd2hldGhlciB0aGUgY29ycmVzcG9uZGluZyBjb21tYW5kIGlzIGFwcGxpY2FibGUgaW4gdGhlIGN1cnJlbnQKKyAgIHNpdHVhdGlvbi4gIChFLmcuIGBgaW5zdGFsbF9oZWFkZXJzYGAgaXMgb25seSBhcHBsaWNhYmxlIGlmIHdlIGhhdmUgYW55IEMKKyAgIGhlYWRlciBmaWxlcyB0byBpbnN0YWxsLikgIElmICpwcmVkaWNhdGUqIGlzIGBgTm9uZWBgLCB0aGF0IGNvbW1hbmQgaXMgYWx3YXlzCisgICBhcHBsaWNhYmxlLgorCisgICAqc3ViX2NvbW1hbmRzKiBpcyB1c3VhbGx5IGRlZmluZWQgYXQgdGhlICplbmQqIG9mIGEgY2xhc3MsIGJlY2F1c2UKKyAgIHByZWRpY2F0ZXMgY2FuIGJlIG1ldGhvZHMgb2YgdGhlIGNsYXNzLCBzbyB0aGV5IG11c3QgYWxyZWFkeSBoYXZlIGJlZW4KKyAgIGRlZmluZWQuICBUaGUgY2Fub25pY2FsIGV4YW1wbGUgaXMgdGhlIDpjb21tYW5kOmBpbnN0YWxsX2Rpc3RgIGNvbW1hbmQuCisKKy4uIFhYWCBkb2N1bWVudCBob3cgdG8gYWRkIGEgY3VzdG9tIGNvbW1hbmQgdG8gYW5vdGhlciBvbmUncyBzdWJjb21tYW5kcwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmNvbXBpbGVyLnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5jb21waWxlci5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjIzYzU1MQotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5jb21waWxlci5yc3QKQEAgLTAsMCArMSw2ODEgQEAKKzptb2Q6YHBhY2thZ2luZy5jb21waWxlcmAgLS0tIENvbXBpbGVyIGNsYXNzZXMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLmNvbXBpbGVyCisgICA6c3lub3BzaXM6IENvbXBpbGVyIGNsYXNzZXMgdG8gYnVpbGQgQy9DKysgZXh0ZW5zaW9ucyBvciBsaWJyYXJpZXMuCisKKworVGhpcyBzdWJwYWNrYWdlIGNvbnRhaW5zIGFuIGFic3RyYWN0IGJhc2UgY2xhc3MgcmVwcmVzZW50aW5nIGEgY29tcGlsZXIgYW5kCitjb25jcmV0ZSBpbXBsZW1lbnRhdGlvbnMgZm9yIGNvbW1vbiBjb21waWxlcnMuICBUaGUgY29tcGlsZXIgY2xhc3NlcyBzaG91bGQgbm90CitiZSBpbnN0YW50aWF0ZWQgZGlyZWN0bHksIGJ1dCBjcmVhdGVkIHVzaW5nIHRoZSA6ZnVuYzpgbmV3X2NvbXBpbGVyYCBmYWN0b3J5CitmdW5jdGlvbi4gIENvbXBpbGVyIHR5cGVzIHByb3ZpZGVkIGJ5IFBhY2thZ2luZyBhcmUgbGlzdGVkIGluCis6cmVmOmBwYWNrYWdpbmctc3RhbmRhcmQtY29tcGlsZXJzYC4KKworCitQdWJsaWMgZnVuY3Rpb25zCistLS0tLS0tLS0tLS0tLS0tCisKKy4uIGZ1bmN0aW9uOjogbmV3X2NvbXBpbGVyKHBsYXQ9Tm9uZSwgY29tcGlsZXI9Tm9uZSwgZHJ5X3J1bj1GYWxzZSwgZm9yY2U9RmFsc2UpCisKKyAgIEZhY3RvcnkgZnVuY3Rpb24gdG8gZ2VuZXJhdGUgYW4gaW5zdGFuY2Ugb2Ygc29tZQorICAgOmNsYXNzOmB+LmNjb21waWxlci5DQ29tcGlsZXJgIHN1YmNsYXNzIGZvciB0aGUgcmVxdWVzdGVkIHBsYXRmb3JtIG9yCisgICBjb21waWxlciB0eXBlLgorCisgICBJZiBubyBhcmd1bWVudCBpcyBnaXZlbiBmb3IgKnBsYXQqIGFuZCAqY29tcGlsZXIqLCB0aGUgZGVmYXVsdCBjb21waWxlciB0eXBlCisgICBmb3IgdGhlIHBsYXRmb3JtICg6YXR0cjpgb3MubmFtZWApIHdpbGwgYmUgdXNlZDogYGAndW5peCdgYCBmb3IgVW5peCBhbmQKKyAgIE1hYyBPUyBYLCBgYCdtc3ZjJ2BgIGZvciBXaW5kb3dzLgorCisgICBJZiAqcGxhdCogaXMgZ2l2ZW4sIGl0IG11c3QgYmUgb25lIG9mIGBgJ3Bvc2l4J2BgLCBgYCdkYXJ3aW4nYGAgb3IgYGAnbnQnYGAuCisgICBBbiBpbnZhbGlkIHZhbHVlIHdpbGwgbm90IHJhaXNlIGFuIGV4Y2VwdGlvbiBidXQgdXNlIHRoZSBkZWZhdWx0IGNvbXBpbGVyCisgICB0eXBlIGZvciB0aGUgY3VycmVudCBwbGF0Zm9ybS4KKworICAgLi4gWFhYIGVycm9ycyBzaG91bGQgbmV2ZXIgcGFzcyBzaWxlbnRseTsgdGhpcyBiZWhhdmlvciBpcyBwYXJ0aWN1bGFybHkKKyAgICAgIGhhcm1mdWwgd2hlbiBhIGNvbXBpbGVyIHR5cGUgaXMgZ2l2ZW4gYXMgZmlyc3QgYXJndW1lbnQKKworICAgSWYgKmNvbXBpbGVyKiBpcyBnaXZlbiwgKnBsYXQqIHdpbGwgYmUgaWdub3JlZCwgYWxsb3dpbmcgeW91IHRvIGdldCBmb3IKKyAgIGV4YW1wbGUgYSBgYCd1bml4J2BgIGNvbXBpbGVyIG9iamVjdCB1bmRlciBXaW5kb3dzIG9yIGFuIGBgJ21zdmMnYGAgY29tcGlsZXIKKyAgIHVuZGVyIFVuaXguICBIb3dldmVyLCBub3QgYWxsIGNvbXBpbGVyIHR5cGVzIGNhbiBiZSBpbnN0YW50aWF0ZWQgb24gZXZlcnkKKyAgIHBsYXRmb3JtLgorCisKKy4uIGZ1bmN0aW9uOjogY3VzdG9taXplX2NvbXBpbGVyKGNvbXBpbGVyKQorCisgICBEbyBhbnkgcGxhdGZvcm0tc3BlY2lmaWMgY3VzdG9taXphdGlvbiBvZiBhIENDb21waWxlciBpbnN0YW5jZS4gIE1haW5seQorICAgbmVlZGVkIG9uIFVuaXggdG8gcGx1ZyBpbiB0aGUgaW5mb3JtYXRpb24gdGhhdCB2YXJpZXMgYWNyb3NzIFVuaWNlcyBhbmQgaXMKKyAgIHN0b3JlZCBpbiBDUHl0aG9uJ3MgTWFrZWZpbGUuCisKKworLi4gZnVuY3Rpb246OiBnZW5fbGliX29wdGlvbnMoY29tcGlsZXIsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMsIGxpYnJhcmllcykKKworICAgR2VuZXJhdGUgbGlua2VyIG9wdGlvbnMgZm9yIHNlYXJjaGluZyBsaWJyYXJ5IGRpcmVjdG9yaWVzIGFuZCBsaW5raW5nIHdpdGgKKyAgIHNwZWNpZmljIGxpYnJhcmllcy4gICpsaWJyYXJpZXMqIGFuZCAqbGlicmFyeV9kaXJzKiBhcmUsIHJlc3BlY3RpdmVseSwgbGlzdHMKKyAgIG9mIGxpYnJhcnkgbmFtZXMgKG5vdCBmaWxlbmFtZXMhKSBhbmQgc2VhcmNoIGRpcmVjdG9yaWVzLiAgUmV0dXJucyBhIGxpc3Qgb2YKKyAgIGNvbW1hbmQtbGluZSBvcHRpb25zIHN1aXRhYmxlIGZvciB1c2Ugd2l0aCBzb21lIGNvbXBpbGVyIChkZXBlbmRpbmcgb24gdGhlCisgICB0d28gZm9ybWF0IHN0cmluZ3MgcGFzc2VkIGluKS4KKworCisuLiBmdW5jdGlvbjo6IGdlbl9wcmVwcm9jZXNzX29wdGlvbnMobWFjcm9zLCBpbmNsdWRlX2RpcnMpCisKKyAgIEdlbmVyYXRlIEMgcHJlcHJvY2Vzc29yIG9wdGlvbnMgKDpvcHRpb246YC1EYCwgOm9wdGlvbjpgLVVgLCA6b3B0aW9uOmAtSWApIGFzCisgICB1c2VkIGJ5IGF0IGxlYXN0IHR3byB0eXBlcyBvZiBjb21waWxlcnM6IHRoZSB0eXBpY2FsIFVuaXggY29tcGlsZXIgYW5kIFZpc3VhbAorICAgQysrLiAqbWFjcm9zKiBpcyB0aGUgdXN1YWwgdGhpbmcsIGEgbGlzdCBvZiAxLSBvciAyLXR1cGxlcywgd2hlcmUgYGAobmFtZSwpYGAKKyAgIG1lYW5zIHVuZGVmaW5lICg6b3B0aW9uOmAtVWApIG1hY3JvICpuYW1lKiwgYW5kIGBgKG5hbWUsIHZhbHVlKWBgIG1lYW5zCisgICBkZWZpbmUgKDpvcHRpb246YC1EYCkgbWFjcm8gKm5hbWUqIHRvICp2YWx1ZSouICAqaW5jbHVkZV9kaXJzKiBpcyBqdXN0IGEgbGlzdAorICAgb2YgZGlyZWN0b3J5IG5hbWVzIHRvIGJlIGFkZGVkIHRvIHRoZSBoZWFkZXIgZmlsZSBzZWFyY2ggcGF0aCAoOm9wdGlvbjpgLUlgKS4KKyAgIFJldHVybnMgYSBsaXN0IG9mIGNvbW1hbmQtbGluZSBvcHRpb25zIHN1aXRhYmxlIGZvciBlaXRoZXIgVW5peCBjb21waWxlcnMgb3IKKyAgIFZpc3VhbCBDKysuCisKKworLi4gZnVuY3Rpb246OiBnZXRfZGVmYXVsdF9jb21waWxlcihvc25hbWUsIHBsYXRmb3JtKQorCisgICBEZXRlcm1pbmUgdGhlIGRlZmF1bHQgY29tcGlsZXIgdG8gdXNlIGZvciB0aGUgZ2l2ZW4gcGxhdGZvcm0uCisKKyAgICpvc25hbWUqIHNob3VsZCBiZSBvbmUgb2YgdGhlIHN0YW5kYXJkIFB5dGhvbiBPUyBuYW1lcyAoaS5lLiB0aGUgb25lcworICAgcmV0dXJuZWQgYnkgYGBvcy5uYW1lYGApIGFuZCAqcGxhdGZvcm0qIHRoZSBjb21tb24gdmFsdWUgcmV0dXJuZWQgYnkKKyAgIGBgc3lzLnBsYXRmb3JtYGAgZm9yIHRoZSBwbGF0Zm9ybSBpbiBxdWVzdGlvbi4KKworICAgVGhlIGRlZmF1bHQgdmFsdWVzIGFyZSBgYG9zLm5hbWVgYCBhbmQgYGBzeXMucGxhdGZvcm1gYC4KKworCisuLiBmdW5jdGlvbjo6IHNldF9jb21waWxlcihsb2NhdGlvbikKKworICAgQWRkIG9yIGNoYW5nZSBhIGNvbXBpbGVyCisKKworLi4gZnVuY3Rpb246OiBzaG93X2NvbXBpbGVycygpCisKKyAgIFByaW50IGxpc3Qgb2YgYXZhaWxhYmxlIGNvbXBpbGVycyAodXNlZCBieSB0aGUgOm9wdGlvbjpgLS1oZWxwLWNvbXBpbGVyYAorICAgb3B0aW9ucyB0byA6Y29tbWFuZDpgYnVpbGRgLCA6Y29tbWFuZDpgYnVpbGRfZXh0YCwgOmNvbW1hbmQ6YGJ1aWxkX2NsaWJgKS4KKworCisuLiBfcGFja2FnaW5nLXN0YW5kYXJkLWNvbXBpbGVyczoKKworU3RhbmRhcmQgY29tcGlsZXJzCistLS0tLS0tLS0tLS0tLS0tLS0KKworQ29uY3JldGUgc3ViY2xhc3NlcyBvZiA6Y2xhc3M6YH4uY2NvbXBpbGVyLkNDb21waWxlcmAgYXJlIHByb3ZpZGVkIGluIHN1Ym1vZHVsZXMKK29mIHRoZSA6bW9kOmBwYWNrYWdpbmcuY29tcGlsZXJgIHBhY2thZ2UuICBZb3UgZG8gbm90IG5lZWQgdG8gaW1wb3J0IHRoZW0sIHVzaW5nCis6ZnVuYzpgbmV3X2NvbXBpbGVyYCBpcyB0aGUgcHVibGljIEFQSSB0byB1c2UuICBUaGlzIHRhYmxlIGRvY3VtZW50cyB0aGUKK3N0YW5kYXJkIGNvbXBpbGVyczsgYmUgYXdhcmUgdGhhdCB0aGV5IGNhbiBiZSByZXBsYWNlZCBieSBvdGhlciBjbGFzc2VzIG9uIHlvdXIKK3BsYXRmb3JtLgorCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PQorbmFtZSAgICAgICAgICAgIGRlc2NyaXB0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdGVzCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PQorYGAndW5peCdgYCAgICAgIHR5cGljYWwgVW5peC1zdHlsZSBjb21tYW5kLWxpbmUgQyBjb21waWxlciAgICAgICAgICAgICAgIFsjXV8KK2BgJ21zdmMnYGAgICAgICBNaWNyb3NvZnQgY29tcGlsZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbI11fCitgYCdiY3BwJ2BgICAgICAgQm9ybGFuZCBDKysgY29tcGlsZXIKK2BgJ2N5Z3dpbidgYCAgICBDeWd3aW4gY29tcGlsZXIgKFdpbmRvd3MgcG9ydCBvZiBHQ0MpCitgYCdtaW5ndzMyJ2BgICAgTWluZ3czMiBwb3J0IG9mIEdDQyAoc2FtZSBhcyBDeWd3aW4gaW4gbm8tQ3lnd2luIG1vZGUpCis9PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PQorCisKKy4uIFsjXSBUaGUgVW5peCBjb21waWxlciBjbGFzcyBhc3N1bWVzIHRoaXMgYmVoYXZpb3I6CisKKyAgICAgICAqIG1hY3JvcyBkZWZpbmVkIHdpdGggOm9wdGlvbjpgLURuYW1lWz12YWx1ZV1gCisKKyAgICAgICAqIG1hY3JvcyB1bmRlZmluZWQgd2l0aCA6b3B0aW9uOmAtVW5hbWVgCisKKyAgICAgICAqIGluY2x1ZGUgc2VhcmNoIGRpcmVjdG9yaWVzIHNwZWNpZmllZCB3aXRoIDpvcHRpb246YC1JZGlyYAorCisgICAgICAgKiBsaWJyYXJpZXMgc3BlY2lmaWVkIHdpdGggOm9wdGlvbjpgLWxsaWJgCisKKyAgICAgICAqIGxpYnJhcnkgc2VhcmNoIGRpcmVjdG9yaWVzIHNwZWNpZmllZCB3aXRoIDpvcHRpb246YC1MZGlyYAorCisgICAgICAgKiBjb21waWxlIGhhbmRsZWQgYnkgOnByb2dyYW06YGNjYCAob3Igc2ltaWxhcikgZXhlY3V0YWJsZSB3aXRoCisgICAgICAgICA6b3B0aW9uOmAtY2Agb3B0aW9uOiBjb21waWxlcyA6ZmlsZTpgLmNgIHRvIDpmaWxlOmAub2AKKworICAgICAgICogbGluayBzdGF0aWMgbGlicmFyeSBoYW5kbGVkIGJ5IDpwcm9ncmFtOmBhcmAgY29tbWFuZCAocG9zc2libHkgd2l0aAorICAgICAgICAgOnByb2dyYW06YHJhbmxpYmApCisKKyAgICAgICAqIGxpbmsgc2hhcmVkIGxpYnJhcnkgaGFuZGxlZCBieSA6cHJvZ3JhbTpgY2NgIDpvcHRpb246YC1zaGFyZWRgCisKKworLi4gWyNdIE9uIFdpbmRvd3MsIGV4dGVuc2lvbiBtb2R1bGVzIHR5cGljYWxseSBuZWVkIHRvIGJlIGNvbXBpbGVkIHdpdGggdGhlIHNhbWUKKyAgICAgICBjb21waWxlciB0aGF0IHdhcyB1c2VkIHRvIGNvbXBpbGUgQ1B5dGhvbiAoZm9yIGV4YW1wbGUgTWljcm9zb2Z0IFZpc3VhbAorICAgICAgIFN0dWRpbyAuTkVUIDIwMDMgZm9yIENQeXRob24gMi40IGFuZCAyLjUpLiAgVGhlIEFNRDY0IGFuZCBJdGFuaXVtCisgICAgICAgYmluYXJpZXMgYXJlIGNyZWF0ZWQgdXNpbmcgdGhlIFBsYXRmb3JtIFNESy4KKworICAgICAgIFVuZGVyIHRoZSBob29kLCB0aGVyZSBhcmUgYWN0dWFsbHkgdHdvIGRpZmZlcmVudCBzdWJjbGFzc2VzIG9mCisgICAgICAgOmNsYXNzOmB+LmNjb21waWxlci5DQ29tcGlsZXJgIGRlZmluZWQ6IG9uZSBpcyBjb21wYXRpYmxlIHdpdGggTVNWQyAyMDA1CisgICAgICAgYW5kIDIwMDgsIHRoZSBvdGhlciB3b3JrcyB3aXRoIG9sZGVyIHZlcnNpb25zLiAgVGhpcyBzaG91bGQgbm90IGJlIGEKKyAgICAgICBjb25jZXJuIGZvciByZWd1bGFyIHVzZSBvZiB0aGUgZnVuY3Rpb25zIGluIHRoaXMgbW9kdWxlLgorCisgICAgICAgUGFja2FnaW5nIHdpbGwgbm9ybWFsbHkgY2hvb3NlIHRoZSByaWdodCBjb21waWxlciwgbGlua2VyIGV0Yy4gb24gaXRzCisgICAgICAgb3duLiAgVG8gb3ZlcnJpZGUgdGhpcyBjaG9pY2UsIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMKKyAgICAgICAqRElTVFVUSUxTX1VTRV9TREsqIGFuZCAqTVNTZGsqIG11c3QgYmUgYm90aCBzZXQuICAqTVNTZGsqIGluZGljYXRlcyB0aGF0CisgICAgICAgdGhlIGN1cnJlbnQgZW52aXJvbm1lbnQgaGFzIGJlZW4gc2V0dXAgYnkgdGhlIFNESydzIGBgU2V0RW52LkNtZGBgCisgICAgICAgc2NyaXB0LCBvciB0aGF0IHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgaGFkIGJlZW4gcmVnaXN0ZXJlZCB3aGVuIHRoZQorICAgICAgIFNESyB3YXMgaW5zdGFsbGVkOyAqRElTVFVUSUxTX1VTRV9TREsqIGluZGljYXRlcyB0aGF0IHRoZSB1c2VyIGhhcyBtYWRlCisgICAgICAgYW4gZXhwbGljaXQgY2hvaWNlIHRvIG92ZXJyaWRlIHRoZSBjb21waWxlciBzZWxlY3Rpb24gZG9uZSBieSBQYWNrYWdpbmcuCisKKyAgICAgICAuLiBUT0RPIGRvY3VtZW50IHRoZSBlbnZ2YXJzIGluIERvYy91c2luZyBhbmQgdGhlIG1hbiBwYWdlCisKKworOm1vZDpgcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlcmAgLS0tIENDb21waWxlciBiYXNlIGNsYXNzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlcgorICAgOnN5bm9wc2lzOiBBYnN0cmFjdCBDQ29tcGlsZXIgY2xhc3MuCisKKworVGhpcyBtb2R1bGUgcHJvdmlkZXMgdGhlIGFic3RyYWN0IGJhc2UgY2xhc3MgZm9yIHRoZSA6Y2xhc3M6YENDb21waWxlcmAKK2NsYXNzZXMuICBBIDpjbGFzczpgQ0NvbXBpbGVyYCBpbnN0YW5jZSBjYW4gYmUgdXNlZCBmb3IgYWxsIHRoZSBjb21waWxlIGFuZAorbGluayBzdGVwcyBuZWVkZWQgdG8gYnVpbGQgYSBzaW5nbGUgcHJvamVjdC4gTWV0aG9kcyBhcmUgcHJvdmlkZWQgdG8gc2V0CitvcHRpb25zIGZvciB0aGUgY29tcGlsZXIgLS0tIG1hY3JvIGRlZmluaXRpb25zLCBpbmNsdWRlIGRpcmVjdG9yaWVzLCBsaW5rIHBhdGgsCitsaWJyYXJpZXMgYW5kIHRoZSBsaWtlLgorCisuLiBjbGFzczo6IENDb21waWxlcihkcnlfcnVuPUZhbHNlLCBmb3JjZT1GYWxzZSkKKworICAgVGhlIGFic3RyYWN0IGJhc2UgY2xhc3MgOmNsYXNzOmBDQ29tcGlsZXJgIGRlZmluZXMgdGhlIGludGVyZmFjZSB0aGF0IG11c3QgYmUKKyAgIGltcGxlbWVudGVkIGJ5IHJlYWwgY29tcGlsZXIgY2xhc3Nlcy4gIFRoZSBjbGFzcyBhbHNvIGhhcyBzb21lIHV0aWxpdHkKKyAgIG1ldGhvZHMgdXNlZCBieSBzZXZlcmFsIGNvbXBpbGVyIGNsYXNzZXMuCisKKyAgIFRoZSBiYXNpYyBpZGVhIGJlaGluZCBhIGNvbXBpbGVyIGFic3RyYWN0aW9uIGNsYXNzIGlzIHRoYXQgZWFjaCBpbnN0YW5jZSBjYW4KKyAgIGJlIHVzZWQgZm9yIGFsbCB0aGUgY29tcGlsZS9saW5rIHN0ZXBzIGluIGJ1aWxkaW5nIGEgc2luZ2xlIHByb2plY3QuICBUaHVzLAorICAgYXR0cmlidXRlcyBjb21tb24gdG8gYWxsIG9mIHRob3NlIGNvbXBpbGUgYW5kIGxpbmsgc3RlcHMgLS0tIGluY2x1ZGUKKyAgIGRpcmVjdG9yaWVzLCBtYWNyb3MgdG8gZGVmaW5lLCBsaWJyYXJpZXMgdG8gbGluayBhZ2FpbnN0LCBldGMuIC0tLSBhcmUKKyAgIGF0dHJpYnV0ZXMgb2YgdGhlIGNvbXBpbGVyIGluc3RhbmNlLiAgVG8gYWxsb3cgZm9yIHZhcmlhYmlsaXR5IGluIGhvdworICAgaW5kaXZpZHVhbCBmaWxlcyBhcmUgdHJlYXRlZCwgbW9zdCBvZiB0aG9zZSBhdHRyaWJ1dGVzIG1heSBiZSB2YXJpZWQgb24gYQorICAgcGVyLWNvbXBpbGF0aW9uIG9yIHBlci1saW5rIGJhc2lzLgorCisgICBUaGUgY29uc3RydWN0b3IgZm9yIGVhY2ggc3ViY2xhc3MgY3JlYXRlcyBhbiBpbnN0YW5jZSBvZiB0aGUgQ29tcGlsZXIgb2JqZWN0LgorICAgRmxhZ3MgYXJlICpkcnlfcnVuKiAoZG9uJ3QgYWN0dWFsbHkgZXhlY3V0ZQorICAgdGhlIHN0ZXBzKSBhbmQgKmZvcmNlKiAocmVidWlsZCBldmVyeXRoaW5nLCByZWdhcmRsZXNzIG9mIGRlcGVuZGVuY2llcykuICBBbGwKKyAgIG9mIHRoZXNlIGZsYWdzIGRlZmF1bHQgdG8gYGBGYWxzZWBgIChvZmYpLiBOb3RlIHRoYXQgeW91IHByb2JhYmx5IGRvbid0IHdhbnQgdG8KKyAgIGluc3RhbnRpYXRlIDpjbGFzczpgQ0NvbXBpbGVyYCBvciBvbmUgb2YgaXRzIHN1YmNsYXNzZXMgZGlyZWN0bHkgLSB1c2UgdGhlCisgICA6ZnVuYzpgbmV3X2NvbXBpbGVyYCBmYWN0b3J5IGZ1bmN0aW9uIGluc3RlYWQuCisKKyAgIFRoZSBmb2xsb3dpbmcgbWV0aG9kcyBhbGxvdyB5b3UgdG8gbWFudWFsbHkgYWx0ZXIgY29tcGlsZXIgb3B0aW9ucyBmb3IgdGhlCisgICBpbnN0YW5jZSBvZiB0aGUgQ29tcGlsZXIgY2xhc3MuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmFkZF9pbmNsdWRlX2RpcihkaXIpCisKKyAgICAgIEFkZCAqZGlyKiB0byB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgc2VhcmNoZWQgZm9yIGhlYWRlcgorICAgICAgZmlsZXMuICBUaGUgY29tcGlsZXIgaXMgaW5zdHJ1Y3RlZCB0byBzZWFyY2ggZGlyZWN0b3JpZXMgaW4gdGhlIG9yZGVyIGluCisgICAgICB3aGljaCB0aGV5IGFyZSBzdXBwbGllZCBieSBzdWNjZXNzaXZlIGNhbGxzIHRvIDptZXRoOmBhZGRfaW5jbHVkZV9kaXJgLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5zZXRfaW5jbHVkZV9kaXJzKGRpcnMpCisKKyAgICAgIFNldCB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgc2VhcmNoZWQgdG8gKmRpcnMqIChhIGxpc3Qgb2YKKyAgICAgIHN0cmluZ3MpLiBPdmVycmlkZXMgYW55IHByZWNlZGluZyBjYWxscyB0byA6bWV0aDpgYWRkX2luY2x1ZGVfZGlyYDsKKyAgICAgIHN1YnNlcXVlbnQgY2FsbHMgdG8gOm1ldGg6YGFkZF9pbmNsdWRlX2RpcmAgYWRkIHRvIHRoZSBsaXN0IHBhc3NlZCB0bworICAgICAgOm1ldGg6YHNldF9pbmNsdWRlX2RpcnNgLiBUaGlzIGRvZXMgbm90IGFmZmVjdCBhbnkgbGlzdCBvZiBzdGFuZGFyZAorICAgICAgaW5jbHVkZSBkaXJlY3RvcmllcyB0aGF0IHRoZSBjb21waWxlciBtYXkgc2VhcmNoIGJ5IGRlZmF1bHQuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmFkZF9saWJyYXJ5KGxpYm5hbWUpCisKKyAgICAgIEFkZCAqbGlibmFtZSogdG8gdGhlIGxpc3Qgb2YgbGlicmFyaWVzIHRoYXQgd2lsbCBiZSBpbmNsdWRlZCBpbiBhbGwgbGlua3MKKyAgICAgIGRyaXZlbiBieSB0aGlzIGNvbXBpbGVyIG9iamVjdC4gIE5vdGUgdGhhdCAqbGlibmFtZSogc2hvdWxkICpub3QqIGJlIHRoZQorICAgICAgbmFtZSBvZiBhIGZpbGUgY29udGFpbmluZyBhIGxpYnJhcnksIGJ1dCB0aGUgbmFtZSBvZiB0aGUgbGlicmFyeSBpdHNlbGY6CisgICAgICB0aGUgYWN0dWFsIGZpbGVuYW1lIHdpbGwgYmUgaW5mZXJyZWQgYnkgdGhlIGxpbmtlciwgdGhlIGNvbXBpbGVyLCBvciB0aGUKKyAgICAgIGNvbXBpbGVyIGNsYXNzIChkZXBlbmRpbmcgb24gdGhlIHBsYXRmb3JtKS4KKworICAgICAgVGhlIGxpbmtlciB3aWxsIGJlIGluc3RydWN0ZWQgdG8gbGluayBhZ2FpbnN0IGxpYnJhcmllcyBpbiB0aGUgb3JkZXIgdGhleQorICAgICAgd2VyZSBzdXBwbGllZCB0byA6bWV0aDpgYWRkX2xpYnJhcnlgIGFuZC9vciA6bWV0aDpgc2V0X2xpYnJhcmllc2AuICBJdCBpcworICAgICAgcGVyZmVjdGx5IHZhbGlkIHRvIGR1cGxpY2F0ZSBsaWJyYXJ5IG5hbWVzOyB0aGUgbGlua2VyIHdpbGwgYmUgaW5zdHJ1Y3RlZAorICAgICAgdG8gbGluayBhZ2FpbnN0IGxpYnJhcmllcyBhcyBtYW55IHRpbWVzIGFzIHRoZXkgYXJlIG1lbnRpb25lZC4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuc2V0X2xpYnJhcmllcyhsaWJuYW1lcykKKworICAgICAgU2V0IHRoZSBsaXN0IG9mIGxpYnJhcmllcyB0byBiZSBpbmNsdWRlZCBpbiBhbGwgbGlua3MgZHJpdmVuIGJ5IHRoaXMKKyAgICAgIGNvbXBpbGVyIG9iamVjdCB0byAqbGlibmFtZXMqIChhIGxpc3Qgb2Ygc3RyaW5ncykuICBUaGlzIGRvZXMgbm90IGFmZmVjdAorICAgICAgYW55IHN0YW5kYXJkIHN5c3RlbSBsaWJyYXJpZXMgdGhhdCB0aGUgbGlua2VyIG1heSBpbmNsdWRlIGJ5IGRlZmF1bHQuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmFkZF9saWJyYXJ5X2RpcihkaXIpCisKKyAgICAgIEFkZCAqZGlyKiB0byB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgc2VhcmNoZWQgZm9yIGxpYnJhcmllcworICAgICAgc3BlY2lmaWVkIHRvIDptZXRoOmBhZGRfbGlicmFyeWAgYW5kIDptZXRoOmBzZXRfbGlicmFyaWVzYC4gIFRoZSBsaW5rZXIKKyAgICAgIHdpbGwgYmUgaW5zdHJ1Y3RlZCB0byBzZWFyY2ggZm9yIGxpYnJhcmllcyBpbiB0aGUgb3JkZXIgdGhleSBhcmUgc3VwcGxpZWQKKyAgICAgIHRvIDptZXRoOmBhZGRfbGlicmFyeV9kaXJgIGFuZC9vciA6bWV0aDpgc2V0X2xpYnJhcnlfZGlyc2AuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLnNldF9saWJyYXJ5X2RpcnMoZGlycykKKworICAgICAgU2V0IHRoZSBsaXN0IG9mIGxpYnJhcnkgc2VhcmNoIGRpcmVjdG9yaWVzIHRvICpkaXJzKiAoYSBsaXN0IG9mIHN0cmluZ3MpLgorICAgICAgVGhpcyBkb2VzIG5vdCBhZmZlY3QgYW55IHN0YW5kYXJkIGxpYnJhcnkgc2VhcmNoIHBhdGggdGhhdCB0aGUgbGlua2VyIG1heQorICAgICAgc2VhcmNoIGJ5IGRlZmF1bHQuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmFkZF9ydW50aW1lX2xpYnJhcnlfZGlyKGRpcikKKworICAgICAgQWRkICpkaXIqIHRvIHRoZSBsaXN0IG9mIGRpcmVjdG9yaWVzIHRoYXQgd2lsbCBiZSBzZWFyY2hlZCBmb3Igc2hhcmVkCisgICAgICBsaWJyYXJpZXMgYXQgcnVudGltZS4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuc2V0X3J1bnRpbWVfbGlicmFyeV9kaXJzKGRpcnMpCisKKyAgICAgIFNldCB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIHNoYXJlZCBsaWJyYXJpZXMgYXQgcnVudGltZSB0bworICAgICAgKmRpcnMqIChhIGxpc3Qgb2Ygc3RyaW5ncykuICBUaGlzIGRvZXMgbm90IGFmZmVjdCBhbnkgc3RhbmRhcmQgc2VhcmNoIHBhdGgKKyAgICAgIHRoYXQgdGhlIHJ1bnRpbWUgbGlua2VyIG1heSBzZWFyY2ggYnkgZGVmYXVsdC4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuZGVmaW5lX21hY3JvKG5hbWVbLCB2YWx1ZT1Ob25lXSkKKworICAgICAgRGVmaW5lIGEgcHJlcHJvY2Vzc29yIG1hY3JvIGZvciBhbGwgY29tcGlsYXRpb25zIGRyaXZlbiBieSB0aGlzIGNvbXBpbGVyCisgICAgICBvYmplY3QuIFRoZSBvcHRpb25hbCBwYXJhbWV0ZXIgKnZhbHVlKiBzaG91bGQgYmUgYSBzdHJpbmc7IGlmIGl0IGlzIG5vdAorICAgICAgc3VwcGxpZWQsIHRoZW4gdGhlIG1hY3JvIHdpbGwgYmUgZGVmaW5lZCB3aXRob3V0IGFuIGV4cGxpY2l0IHZhbHVlIGFuZCB0aGUKKyAgICAgIGV4YWN0IG91dGNvbWUgZGVwZW5kcyBvbiB0aGUgY29tcGlsZXIgdXNlZCAoWFhYIHRydWU/IGRvZXMgQU5TSSBzYXkKKyAgICAgIGFueXRoaW5nIGFib3V0IHRoaXM/KQorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci51bmRlZmluZV9tYWNybyhuYW1lKQorCisgICAgICBVbmRlZmluZSBhIHByZXByb2Nlc3NvciBtYWNybyBmb3IgYWxsIGNvbXBpbGF0aW9ucyBkcml2ZW4gYnkgdGhpcyBjb21waWxlcgorICAgICAgb2JqZWN0LiAgSWYgdGhlIHNhbWUgbWFjcm8gaXMgZGVmaW5lZCBieSA6bWV0aDpgZGVmaW5lX21hY3JvYCBhbmQKKyAgICAgIHVuZGVmaW5lZCBieSA6bWV0aDpgdW5kZWZpbmVfbWFjcm9gIHRoZSBsYXN0IGNhbGwgdGFrZXMgcHJlY2VkZW5jZQorICAgICAgKGluY2x1ZGluZyBtdWx0aXBsZSByZWRlZmluaXRpb25zIG9yIHVuZGVmaW5pdGlvbnMpLiAgSWYgdGhlIG1hY3JvIGlzCisgICAgICByZWRlZmluZWQvdW5kZWZpbmVkIG9uIGEgcGVyLWNvbXBpbGF0aW9uIGJhc2lzIChpLmUuIGluIHRoZSBjYWxsIHRvCisgICAgICA6bWV0aDpgY29tcGlsZWApLCB0aGVuIHRoYXQgdGFrZXMgcHJlY2VkZW5jZS4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuYWRkX2xpbmtfb2JqZWN0KG9iamVjdCkKKworICAgICAgQWRkICpvYmplY3QqIHRvIHRoZSBsaXN0IG9mIG9iamVjdCBmaWxlcyAob3IgYW5hbG9ndWVzLCBzdWNoIGFzIGV4cGxpY2l0bHkKKyAgICAgIG5hbWVkIGxpYnJhcnkgZmlsZXMgb3IgdGhlIG91dHB1dCBvZiAicmVzb3VyY2UgY29tcGlsZXJzIikgdG8gYmUgaW5jbHVkZWQKKyAgICAgIGluIGV2ZXJ5IGxpbmsgZHJpdmVuIGJ5IHRoaXMgY29tcGlsZXIgb2JqZWN0LgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5zZXRfbGlua19vYmplY3RzKG9iamVjdHMpCisKKyAgICAgIFNldCB0aGUgbGlzdCBvZiBvYmplY3QgZmlsZXMgKG9yIGFuYWxvZ3VlcykgdG8gYmUgaW5jbHVkZWQgaW4gZXZlcnkgbGluaworICAgICAgdG8gKm9iamVjdHMqLiAgVGhpcyBkb2VzIG5vdCBhZmZlY3QgYW55IHN0YW5kYXJkIG9iamVjdCBmaWxlcyB0aGF0IHRoZQorICAgICAgbGlua2VyIG1heSBpbmNsdWRlIGJ5IGRlZmF1bHQgKHN1Y2ggYXMgc3lzdGVtIGxpYnJhcmllcykuCisKKyAgIFRoZSBmb2xsb3dpbmcgbWV0aG9kcyBpbXBsZW1lbnQgbWV0aG9kcyBmb3IgYXV0b2RldGVjdGlvbiBvZiBjb21waWxlcgorICAgb3B0aW9ucywgcHJvdmlkaW5nIHNvbWUgZnVuY3Rpb25hbGl0eSBzaW1pbGFyIHRvIEdOVSA6cHJvZ3JhbTpgYXV0b2NvbmZgLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5kZXRlY3RfbGFuZ3VhZ2Uoc291cmNlcykKKworICAgICAgRGV0ZWN0IHRoZSBsYW5ndWFnZSBvZiBhIGdpdmVuIGZpbGUsIG9yIGxpc3Qgb2YgZmlsZXMuIFVzZXMgdGhlIGluc3RhbmNlCisgICAgICBhdHRyaWJ1dGVzIDphdHRyOmBsYW5ndWFnZV9tYXBgIChhIGRpY3Rpb25hcnkpLCBhbmQgOmF0dHI6YGxhbmd1YWdlX29yZGVyYAorICAgICAgKGEgbGlzdCkgdG8gZG8gdGhlIGpvYi4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuZmluZF9saWJyYXJ5X2ZpbGUoZGlycywgbGliWywgZGVidWc9MF0pCisKKyAgICAgIFNlYXJjaCB0aGUgc3BlY2lmaWVkIGxpc3Qgb2YgZGlyZWN0b3JpZXMgZm9yIGEgc3RhdGljIG9yIHNoYXJlZCBsaWJyYXJ5IGZpbGUKKyAgICAgICpsaWIqIGFuZCByZXR1cm4gdGhlIGZ1bGwgcGF0aCB0byB0aGF0IGZpbGUuICBJZiAqZGVidWcqIGlzIHRydWUsIGxvb2sgZm9yIGEKKyAgICAgIGRlYnVnZ2luZyB2ZXJzaW9uIChpZiB0aGF0IG1ha2VzIHNlbnNlIG9uIHRoZSBjdXJyZW50IHBsYXRmb3JtKS4gIFJldHVybgorICAgICAgYGBOb25lYGAgaWYgKmxpYiogd2Fzbid0IGZvdW5kIGluIGFueSBvZiB0aGUgc3BlY2lmaWVkIGRpcmVjdG9yaWVzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5oYXNfZnVuY3Rpb24oZnVuY25hbWUgWywgaW5jbHVkZXM9Tm9uZSwgaW5jbHVkZV9kaXJzPU5vbmUsIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZV0pCisKKyAgICAgIFJldHVybiBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyICpmdW5jbmFtZSogaXMgc3VwcG9ydGVkIG9uIHRoZSBjdXJyZW50CisgICAgICBwbGF0Zm9ybS4gIFRoZSBvcHRpb25hbCBhcmd1bWVudHMgY2FuIGJlIHVzZWQgdG8gYXVnbWVudCB0aGUgY29tcGlsYXRpb24KKyAgICAgIGVudmlyb25tZW50IGJ5IHByb3ZpZGluZyBhZGRpdGlvbmFsIGluY2x1ZGUgZmlsZXMgYW5kIHBhdGhzIGFuZCBsaWJyYXJpZXMgYW5kCisgICAgICBwYXRocy4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIubGlicmFyeV9kaXJfb3B0aW9uKGRpcikKKworICAgICAgUmV0dXJuIHRoZSBjb21waWxlciBvcHRpb24gdG8gYWRkICpkaXIqIHRvIHRoZSBsaXN0IG9mIGRpcmVjdG9yaWVzIHNlYXJjaGVkIGZvcgorICAgICAgbGlicmFyaWVzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5saWJyYXJ5X29wdGlvbihsaWIpCisKKyAgICAgIFJldHVybiB0aGUgY29tcGlsZXIgb3B0aW9uIHRvIGFkZCAqZGlyKiB0byB0aGUgbGlzdCBvZiBsaWJyYXJpZXMgbGlua2VkIGludG8gdGhlCisgICAgICBzaGFyZWQgbGlicmFyeSBvciBleGVjdXRhYmxlLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5ydW50aW1lX2xpYnJhcnlfZGlyX29wdGlvbihkaXIpCisKKyAgICAgIFJldHVybiB0aGUgY29tcGlsZXIgb3B0aW9uIHRvIGFkZCAqZGlyKiB0byB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyBzZWFyY2hlZCBmb3IKKyAgICAgIHJ1bnRpbWUgbGlicmFyaWVzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5zZXRfZXhlY3V0YWJsZXMoKiphcmdzKQorCisgICAgICBEZWZpbmUgdGhlIGV4ZWN1dGFibGVzIChhbmQgb3B0aW9ucyBmb3IgdGhlbSkgdGhhdCB3aWxsIGJlIHJ1biB0byBwZXJmb3JtIHRoZQorICAgICAgdmFyaW91cyBzdGFnZXMgb2YgY29tcGlsYXRpb24uICBUaGUgZXhhY3Qgc2V0IG9mIGV4ZWN1dGFibGVzIHRoYXQgbWF5IGJlCisgICAgICBzcGVjaWZpZWQgaGVyZSBkZXBlbmRzIG9uIHRoZSBjb21waWxlciBjbGFzcyAodmlhIHRoZSAnZXhlY3V0YWJsZXMnIGNsYXNzCisgICAgICBhdHRyaWJ1dGUpLCBidXQgbW9zdCB3aWxsIGhhdmU6CisKKyAgICAgICstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICB8IGF0dHJpYnV0ZSAgICB8IGRlc2NyaXB0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgICAgKz09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSsKKyAgICAgIHwgKmNvbXBpbGVyKiAgIHwgdGhlIEMvQysrIGNvbXBpbGVyICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgICArLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgfCAqbGlua2VyX3NvKiAgfCBsaW5rZXIgdXNlZCB0byBjcmVhdGUgc2hhcmVkIG9iamVjdHMgYW5kIHwKKyAgICAgIHwgICAgICAgICAgICAgIHwgbGlicmFyaWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgICArLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgICAgfCAqbGlua2VyX2V4ZSogfCBsaW5rZXIgdXNlZCB0byBjcmVhdGUgYmluYXJ5IGV4ZWN1dGFibGVzIHwKKyAgICAgICstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICAgICB8ICphcmNoaXZlciogICB8IHN0YXRpYyBsaWJyYXJ5IGNyZWF0b3IgICAgICAgICAgICAgICAgICAgfAorICAgICAgKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKworICAgICAgT24gcGxhdGZvcm1zIHdpdGggYSBjb21tYW5kIGxpbmUgKFVuaXgsIERPUy9XaW5kb3dzKSwgZWFjaCBvZiB0aGVzZSBpcyBhIHN0cmluZworICAgICAgdGhhdCB3aWxsIGJlIHNwbGl0IGludG8gZXhlY3V0YWJsZSBuYW1lIGFuZCAob3B0aW9uYWwpIGxpc3Qgb2YgYXJndW1lbnRzLgorICAgICAgKFNwbGl0dGluZyB0aGUgc3RyaW5nIGlzIGRvbmUgc2ltaWxhcmx5IHRvIGhvdyBVbml4IHNoZWxscyBvcGVyYXRlOiB3b3JkcyBhcmUKKyAgICAgIGRlbGltaXRlZCBieSBzcGFjZXMsIGJ1dCBxdW90ZXMgYW5kIGJhY2tzbGFzaGVzIGNhbiBvdmVycmlkZSB0aGlzLiAgU2VlCisgICAgICA6ZnVuYzpgcGFja2FnaW5nLnV0aWwuc3BsaXRfcXVvdGVkYC4pCisKKyAgIFRoZSBmb2xsb3dpbmcgbWV0aG9kcyBpbnZva2Ugc3RhZ2VzIGluIHRoZSBidWlsZCBwcm9jZXNzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5jb21waWxlKHNvdXJjZXNbLCBvdXRwdXRfZGlyPU5vbmUsIG1hY3Jvcz1Ob25lLCBpbmNsdWRlX2RpcnM9Tm9uZSwgZGVidWc9MCwgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLCBkZXBlbmRzPU5vbmVdKQorCisgICAgICBDb21waWxlIG9uZSBvciBtb3JlIHNvdXJjZSBmaWxlcy4gR2VuZXJhdGVzIG9iamVjdCBmaWxlcyAoZS5nLiB0cmFuc2Zvcm1zIGEKKyAgICAgIDpmaWxlOmAuY2AgZmlsZSB0byBhIDpmaWxlOmAub2AgZmlsZS4pCisKKyAgICAgICpzb3VyY2VzKiBtdXN0IGJlIGEgbGlzdCBvZiBmaWxlbmFtZXMsIG1vc3QgbGlrZWx5IEMvQysrIGZpbGVzLCBidXQgaW4gcmVhbGl0eQorICAgICAgYW55dGhpbmcgdGhhdCBjYW4gYmUgaGFuZGxlZCBieSBhIHBhcnRpY3VsYXIgY29tcGlsZXIgYW5kIGNvbXBpbGVyIGNsYXNzIChlLmcuCisgICAgICBhbiBgYCdtc3ZjJ2BgIGNvbXBpbGVyIGNhbiBoYW5kbGUgcmVzb3VyY2UgZmlsZXMgaW4gKnNvdXJjZXMqKS4gIFJldHVybiBhIGxpc3Qgb2YKKyAgICAgIG9iamVjdCBmaWxlbmFtZXMsIG9uZSBwZXIgc291cmNlIGZpbGVuYW1lIGluICpzb3VyY2VzKi4gIERlcGVuZGluZyBvbiB0aGUKKyAgICAgIGltcGxlbWVudGF0aW9uLCBub3QgYWxsIHNvdXJjZSBmaWxlcyB3aWxsIG5lY2Vzc2FyaWx5IGJlIGNvbXBpbGVkLCBidXQgYWxsCisgICAgICBjb3JyZXNwb25kaW5nIG9iamVjdCBmaWxlbmFtZXMgd2lsbCBiZSByZXR1cm5lZC4KKworICAgICAgSWYgKm91dHB1dF9kaXIqIGlzIGdpdmVuLCBvYmplY3QgZmlsZXMgd2lsbCBiZSBwdXQgdW5kZXIgaXQsIHdoaWxlIHJldGFpbmluZworICAgICAgdGhlaXIgb3JpZ2luYWwgcGF0aCBjb21wb25lbnQuICBUaGF0IGlzLCA6ZmlsZTpgZm9vL2Jhci5jYCBub3JtYWxseSBjb21waWxlcyB0bworICAgICAgOmZpbGU6YGZvby9iYXIub2AgKGZvciBhIFVuaXggaW1wbGVtZW50YXRpb24pOyBpZiAqb3V0cHV0X2RpciogaXMgKmJ1aWxkKiwgdGhlbgorICAgICAgaXQgd291bGQgY29tcGlsZSB0byA6ZmlsZTpgYnVpbGQvZm9vL2Jhci5vYC4KKworICAgICAgKm1hY3JvcyosIGlmIGdpdmVuLCBtdXN0IGJlIGEgbGlzdCBvZiBtYWNybyBkZWZpbml0aW9ucy4gIEEgbWFjcm8gZGVmaW5pdGlvbiBpcworICAgICAgZWl0aGVyIGEgYGAobmFtZSwgdmFsdWUpYGAgMi10dXBsZSBvciBhIGBgKG5hbWUsKWBgIDEtdHVwbGUuIFRoZSBmb3JtZXIgZGVmaW5lcworICAgICAgYSBtYWNybzsgaWYgdGhlIHZhbHVlIGlzIGBgTm9uZWBgLCB0aGUgbWFjcm8gaXMgZGVmaW5lZCB3aXRob3V0IGFuIGV4cGxpY2l0CisgICAgICB2YWx1ZS4gIFRoZSAxLXR1cGxlIGNhc2UgdW5kZWZpbmVzIGEgbWFjcm8uICBMYXRlcgorICAgICAgZGVmaW5pdGlvbnMvcmVkZWZpbml0aW9ucy91bmRlZmluaXRpb25zIHRha2UgcHJlY2VkZW5jZS4KKworICAgICAgKmluY2x1ZGVfZGlycyosIGlmIGdpdmVuLCBtdXN0IGJlIGEgbGlzdCBvZiBzdHJpbmdzLCB0aGUgZGlyZWN0b3JpZXMgdG8gYWRkIHRvCisgICAgICB0aGUgZGVmYXVsdCBpbmNsdWRlIGZpbGUgc2VhcmNoIHBhdGggZm9yIHRoaXMgY29tcGlsYXRpb24gb25seS4KKworICAgICAgKmRlYnVnKiBpcyBhIGJvb2xlYW47IGlmIHRydWUsIHRoZSBjb21waWxlciB3aWxsIGJlIGluc3RydWN0ZWQgdG8gb3V0cHV0IGRlYnVnCisgICAgICBzeW1ib2xzIGluIChvciBhbG9uZ3NpZGUpIHRoZSBvYmplY3QgZmlsZShzKS4KKworICAgICAgKmV4dHJhX3ByZWFyZ3MqIGFuZCAqZXh0cmFfcG9zdGFyZ3MqIGFyZSBpbXBsZW1lbnRhdGlvbi1kZXBlbmRlbnQuIE9uIHBsYXRmb3JtcworICAgICAgdGhhdCBoYXZlIHRoZSBub3Rpb24gb2YgYSBjb21tYW5kIGxpbmUgKGUuZy4gVW5peCwgRE9TL1dpbmRvd3MpLCB0aGV5IGFyZSBtb3N0CisgICAgICBsaWtlbHkgbGlzdHMgb2Ygc3RyaW5nczogZXh0cmEgY29tbWFuZC1saW5lIGFyZ3VtZW50cyB0byBwcmVwZW5kL2FwcGVuZCB0byB0aGUKKyAgICAgIGNvbXBpbGVyIGNvbW1hbmQgbGluZS4gIE9uIG90aGVyIHBsYXRmb3JtcywgY29uc3VsdCB0aGUgaW1wbGVtZW50YXRpb24gY2xhc3MKKyAgICAgIGRvY3VtZW50YXRpb24uICBJbiBhbnkgZXZlbnQsIHRoZXkgYXJlIGludGVuZGVkIGFzIGFuIGVzY2FwZSBoYXRjaCBmb3IgdGhvc2UKKyAgICAgIG9jY2FzaW9ucyB3aGVuIHRoZSBhYnN0cmFjdCBjb21waWxlciBmcmFtZXdvcmsgZG9lc24ndCBjdXQgdGhlIG11c3RhcmQuCisKKyAgICAgICpkZXBlbmRzKiwgaWYgZ2l2ZW4sIGlzIGEgbGlzdCBvZiBmaWxlbmFtZXMgdGhhdCBhbGwgdGFyZ2V0cyBkZXBlbmQgb24uICBJZiBhCisgICAgICBzb3VyY2UgZmlsZSBpcyBvbGRlciB0aGFuIGFueSBmaWxlIGluIGRlcGVuZHMsIHRoZW4gdGhlIHNvdXJjZSBmaWxlIHdpbGwgYmUKKyAgICAgIHJlY29tcGlsZWQuICBUaGlzIHN1cHBvcnRzIGRlcGVuZGVuY3kgdHJhY2tpbmcsIGJ1dCBvbmx5IGF0IGEgY29hcnNlCisgICAgICBncmFudWxhcml0eS4KKworICAgICAgUmFpc2VzIDpleGM6YENvbXBpbGVFcnJvcmAgb24gZmFpbHVyZS4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIuY3JlYXRlX3N0YXRpY19saWIob2JqZWN0cywgb3V0cHV0X2xpYm5hbWVbLCBvdXRwdXRfZGlyPU5vbmUsIGRlYnVnPTAsIHRhcmdldF9sYW5nPU5vbmVdKQorCisgICAgICBMaW5rIGEgYnVuY2ggb2Ygc3R1ZmYgdG9nZXRoZXIgdG8gY3JlYXRlIGEgc3RhdGljIGxpYnJhcnkgZmlsZS4gVGhlICJidW5jaCBvZgorICAgICAgc3R1ZmYiIGNvbnNpc3RzIG9mIHRoZSBsaXN0IG9mIG9iamVjdCBmaWxlcyBzdXBwbGllZCBhcyAqb2JqZWN0cyosIHRoZSBleHRyYQorICAgICAgb2JqZWN0IGZpbGVzIHN1cHBsaWVkIHRvIDptZXRoOmBhZGRfbGlua19vYmplY3RgIGFuZC9vcgorICAgICAgOm1ldGg6YHNldF9saW5rX29iamVjdHNgLCB0aGUgbGlicmFyaWVzIHN1cHBsaWVkIHRvIDptZXRoOmBhZGRfbGlicmFyeWAgYW5kL29yCisgICAgICA6bWV0aDpgc2V0X2xpYnJhcmllc2AsIGFuZCB0aGUgbGlicmFyaWVzIHN1cHBsaWVkIGFzICpsaWJyYXJpZXMqIChpZiBhbnkpLgorCisgICAgICAqb3V0cHV0X2xpYm5hbWUqIHNob3VsZCBiZSBhIGxpYnJhcnkgbmFtZSwgbm90IGEgZmlsZW5hbWU7IHRoZSBmaWxlbmFtZSB3aWxsIGJlCisgICAgICBpbmZlcnJlZCBmcm9tIHRoZSBsaWJyYXJ5IG5hbWUuICAqb3V0cHV0X2RpciogaXMgdGhlIGRpcmVjdG9yeSB3aGVyZSB0aGUgbGlicmFyeQorICAgICAgZmlsZSB3aWxsIGJlIHB1dC4gWFhYIGRlZmF1bHRzIHRvIHdoYXQ/CisKKyAgICAgICpkZWJ1ZyogaXMgYSBib29sZWFuOyBpZiB0cnVlLCBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24gd2lsbCBiZSBpbmNsdWRlZCBpbiB0aGUKKyAgICAgIGxpYnJhcnkgKG5vdGUgdGhhdCBvbiBtb3N0IHBsYXRmb3JtcywgaXQgaXMgdGhlIGNvbXBpbGUgc3RlcCB3aGVyZSB0aGlzIG1hdHRlcnM6CisgICAgICB0aGUgKmRlYnVnKiBmbGFnIGlzIGluY2x1ZGVkIGhlcmUganVzdCBmb3IgY29uc2lzdGVuY3kpLgorCisgICAgICAqdGFyZ2V0X2xhbmcqIGlzIHRoZSB0YXJnZXQgbGFuZ3VhZ2UgZm9yIHdoaWNoIHRoZSBnaXZlbiBvYmplY3RzIGFyZSBiZWluZworICAgICAgY29tcGlsZWQuIFRoaXMgYWxsb3dzIHNwZWNpZmljIGxpbmthZ2UgdGltZSB0cmVhdG1lbnQgb2YgY2VydGFpbiBsYW5ndWFnZXMuCisKKyAgICAgIFJhaXNlcyA6ZXhjOmBMaWJFcnJvcmAgb24gZmFpbHVyZS4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIubGluayh0YXJnZXRfZGVzYywgb2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lWywgb3V0cHV0X2Rpcj1Ob25lLCBsaWJyYXJpZXM9Tm9uZSwgbGlicmFyeV9kaXJzPU5vbmUsIHJ1bnRpbWVfbGlicmFyeV9kaXJzPU5vbmUsIGV4cG9ydF9zeW1ib2xzPU5vbmUsIGRlYnVnPTAsIGV4dHJhX3ByZWFyZ3M9Tm9uZSwgZXh0cmFfcG9zdGFyZ3M9Tm9uZSwgYnVpbGRfdGVtcD1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lXSkKKworICAgICAgTGluayBhIGJ1bmNoIG9mIHN0dWZmIHRvZ2V0aGVyIHRvIGNyZWF0ZSBhbiBleGVjdXRhYmxlIG9yIHNoYXJlZCBsaWJyYXJ5IGZpbGUuCisKKyAgICAgIFRoZSAiYnVuY2ggb2Ygc3R1ZmYiIGNvbnNpc3RzIG9mIHRoZSBsaXN0IG9mIG9iamVjdCBmaWxlcyBzdXBwbGllZCBhcyAqb2JqZWN0cyouCisgICAgICAqb3V0cHV0X2ZpbGVuYW1lKiBzaG91bGQgYmUgYSBmaWxlbmFtZS4gIElmICpvdXRwdXRfZGlyKiBpcyBzdXBwbGllZCwKKyAgICAgICpvdXRwdXRfZmlsZW5hbWUqIGlzIHJlbGF0aXZlIHRvIGl0IChpLmUuICpvdXRwdXRfZmlsZW5hbWUqIGNhbiBwcm92aWRlCisgICAgICBkaXJlY3RvcnkgY29tcG9uZW50cyBpZiBuZWVkZWQpLgorCisgICAgICAqbGlicmFyaWVzKiBpcyBhIGxpc3Qgb2YgbGlicmFyaWVzIHRvIGxpbmsgYWdhaW5zdC4gIFRoZXNlIGFyZSBsaWJyYXJ5IG5hbWVzLAorICAgICAgbm90IGZpbGVuYW1lcywgc2luY2UgdGhleSdyZSB0cmFuc2xhdGVkIGludG8gZmlsZW5hbWVzIGluIGEgcGxhdGZvcm0tc3BlY2lmaWMKKyAgICAgIHdheSAoZS5nLiAqZm9vKiBiZWNvbWVzIDpmaWxlOmBsaWJmb28uYWAgb24gVW5peCBhbmQgOmZpbGU6YGZvby5saWJgIG9uCisgICAgICBET1MvV2luZG93cykuICBIb3dldmVyLCB0aGV5IGNhbiBpbmNsdWRlIGEgZGlyZWN0b3J5IGNvbXBvbmVudCwgd2hpY2ggbWVhbnMgdGhlCisgICAgICBsaW5rZXIgd2lsbCBsb29rIGluIHRoYXQgc3BlY2lmaWMgZGlyZWN0b3J5IHJhdGhlciB0aGFuIHNlYXJjaGluZyBhbGwgdGhlIG5vcm1hbAorICAgICAgbG9jYXRpb25zLgorCisgICAgICAqbGlicmFyeV9kaXJzKiwgaWYgc3VwcGxpZWQsIHNob3VsZCBiZSBhIGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvcgorICAgICAgbGlicmFyaWVzIHRoYXQgd2VyZSBzcGVjaWZpZWQgYXMgYmFyZSBsaWJyYXJ5IG5hbWVzIChpLmUuIG5vIGRpcmVjdG9yeQorICAgICAgY29tcG9uZW50KS4gIFRoZXNlIGFyZSBvbiB0b3Agb2YgdGhlIHN5c3RlbSBkZWZhdWx0IGFuZCB0aG9zZSBzdXBwbGllZCB0bworICAgICAgOm1ldGg6YGFkZF9saWJyYXJ5X2RpcmAgYW5kL29yIDptZXRoOmBzZXRfbGlicmFyeV9kaXJzYC4gICpydW50aW1lX2xpYnJhcnlfZGlycyoKKyAgICAgIGlzIGEgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgZW1iZWRkZWQgaW50byB0aGUgc2hhcmVkIGxpYnJhcnkgYW5kIHVzZWQKKyAgICAgIHRvIHNlYXJjaCBmb3Igb3RoZXIgc2hhcmVkIGxpYnJhcmllcyB0aGF0IFwqaXRcKiBkZXBlbmRzIG9uIGF0IHJ1bi10aW1lLiAgKFRoaXMKKyAgICAgIG1heSBvbmx5IGJlIHJlbGV2YW50IG9uIFVuaXguKQorCisgICAgICAqZXhwb3J0X3N5bWJvbHMqIGlzIGEgbGlzdCBvZiBzeW1ib2xzIHRoYXQgdGhlIHNoYXJlZCBsaWJyYXJ5IHdpbGwgZXhwb3J0LgorICAgICAgKFRoaXMgYXBwZWFycyB0byBiZSByZWxldmFudCBvbmx5IG9uIFdpbmRvd3MuKQorCisgICAgICAqZGVidWcqIGlzIGFzIGZvciA6bWV0aDpgY29tcGlsZWAgYW5kIDptZXRoOmBjcmVhdGVfc3RhdGljX2xpYmAsIHdpdGggdGhlCisgICAgICBzbGlnaHQgZGlzdGluY3Rpb24gdGhhdCBpdCBhY3R1YWxseSBtYXR0ZXJzIG9uIG1vc3QgcGxhdGZvcm1zIChhcyBvcHBvc2VkIHRvCisgICAgICA6bWV0aDpgY3JlYXRlX3N0YXRpY19saWJgLCB3aGljaCBpbmNsdWRlcyBhICpkZWJ1ZyogZmxhZyBtb3N0bHkgZm9yIGZvcm0ncworICAgICAgc2FrZSkuCisKKyAgICAgICpleHRyYV9wcmVhcmdzKiBhbmQgKmV4dHJhX3Bvc3RhcmdzKiBhcmUgYXMgZm9yIDptZXRoOmBjb21waWxlYCAoZXhjZXB0IG9mCisgICAgICBjb3Vyc2UgdGhhdCB0aGV5IHN1cHBseSBjb21tYW5kLWxpbmUgYXJndW1lbnRzIGZvciB0aGUgcGFydGljdWxhciBsaW5rZXIgYmVpbmcKKyAgICAgIHVzZWQpLgorCisgICAgICAqdGFyZ2V0X2xhbmcqIGlzIHRoZSB0YXJnZXQgbGFuZ3VhZ2UgZm9yIHdoaWNoIHRoZSBnaXZlbiBvYmplY3RzIGFyZSBiZWluZworICAgICAgY29tcGlsZWQuIFRoaXMgYWxsb3dzIHNwZWNpZmljIGxpbmthZ2UgdGltZSB0cmVhdG1lbnQgb2YgY2VydGFpbiBsYW5ndWFnZXMuCisKKyAgICAgIFJhaXNlcyA6ZXhjOmBMaW5rRXJyb3JgIG9uIGZhaWx1cmUuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmxpbmtfZXhlY3V0YWJsZShvYmplY3RzLCBvdXRwdXRfcHJvZ25hbWVbLCBvdXRwdXRfZGlyPU5vbmUsIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwgZGVidWc9MCwgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lXSkKKworICAgICAgTGluayBhbiBleGVjdXRhYmxlLiAgKm91dHB1dF9wcm9nbmFtZSogaXMgdGhlIG5hbWUgb2YgdGhlIGZpbGUgZXhlY3V0YWJsZSwgd2hpbGUKKyAgICAgICpvYmplY3RzKiBhcmUgYSBsaXN0IG9mIG9iamVjdCBmaWxlbmFtZXMgdG8gbGluayBpbi4gT3RoZXIgYXJndW1lbnRzIGFyZSBhcyBmb3IKKyAgICAgIHRoZSA6bWV0aDpgbGlua2AgbWV0aG9kLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5saW5rX3NoYXJlZF9saWIob2JqZWN0cywgb3V0cHV0X2xpYm5hbWVbLCBvdXRwdXRfZGlyPU5vbmUsIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwgZXhwb3J0X3N5bWJvbHM9Tm9uZSwgZGVidWc9MCwgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLCBidWlsZF90ZW1wPU5vbmUsIHRhcmdldF9sYW5nPU5vbmVdKQorCisgICAgICBMaW5rIGEgc2hhcmVkIGxpYnJhcnkuICpvdXRwdXRfbGlibmFtZSogaXMgdGhlIG5hbWUgb2YgdGhlIG91dHB1dCBsaWJyYXJ5LAorICAgICAgd2hpbGUgKm9iamVjdHMqIGlzIGEgbGlzdCBvZiBvYmplY3QgZmlsZW5hbWVzIHRvIGxpbmsgaW4uIE90aGVyIGFyZ3VtZW50cyBhcmUKKyAgICAgIGFzIGZvciB0aGUgOm1ldGg6YGxpbmtgIG1ldGhvZC4KKworCisgICAuLiBtZXRob2Q6OiBDQ29tcGlsZXIubGlua19zaGFyZWRfb2JqZWN0KG9iamVjdHMsIG91dHB1dF9maWxlbmFtZVssIG91dHB1dF9kaXI9Tm9uZSwgbGlicmFyaWVzPU5vbmUsIGxpYnJhcnlfZGlycz1Ob25lLCBydW50aW1lX2xpYnJhcnlfZGlycz1Ob25lLCBleHBvcnRfc3ltYm9scz1Ob25lLCBkZWJ1Zz0wLCBleHRyYV9wcmVhcmdzPU5vbmUsIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGJ1aWxkX3RlbXA9Tm9uZSwgdGFyZ2V0X2xhbmc9Tm9uZV0pCisKKyAgICAgIExpbmsgYSBzaGFyZWQgb2JqZWN0LiAqb3V0cHV0X2ZpbGVuYW1lKiBpcyB0aGUgbmFtZSBvZiB0aGUgc2hhcmVkIG9iamVjdCB0aGF0CisgICAgICB3aWxsIGJlIGNyZWF0ZWQsIHdoaWxlICpvYmplY3RzKiBpcyBhIGxpc3Qgb2Ygb2JqZWN0IGZpbGVuYW1lcyB0byBsaW5rIGluLgorICAgICAgT3RoZXIgYXJndW1lbnRzIGFyZSBhcyBmb3IgdGhlIDptZXRoOmBsaW5rYCBtZXRob2QuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLnByZXByb2Nlc3Moc291cmNlWywgb3V0cHV0X2ZpbGU9Tm9uZSwgbWFjcm9zPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLCBleHRyYV9wcmVhcmdzPU5vbmUsIGV4dHJhX3Bvc3RhcmdzPU5vbmVdKQorCisgICAgICBQcmVwcm9jZXNzIGEgc2luZ2xlIEMvQysrIHNvdXJjZSBmaWxlLCBuYW1lZCBpbiAqc291cmNlKi4gT3V0cHV0IHdpbGwgYmUgd3JpdHRlbgorICAgICAgdG8gZmlsZSBuYW1lZCAqb3V0cHV0X2ZpbGUqLCBvciAqc3Rkb3V0KiBpZiAqb3V0cHV0X2ZpbGUqIG5vdCBzdXBwbGllZC4KKyAgICAgICptYWNyb3MqIGlzIGEgbGlzdCBvZiBtYWNybyBkZWZpbml0aW9ucyBhcyBmb3IgOm1ldGg6YGNvbXBpbGVgLCB3aGljaCB3aWxsCisgICAgICBhdWdtZW50IHRoZSBtYWNyb3Mgc2V0IHdpdGggOm1ldGg6YGRlZmluZV9tYWNyb2AgYW5kIDptZXRoOmB1bmRlZmluZV9tYWNyb2AuCisgICAgICAqaW5jbHVkZV9kaXJzKiBpcyBhIGxpc3Qgb2YgZGlyZWN0b3J5IG5hbWVzIHRoYXQgd2lsbCBiZSBhZGRlZCB0byB0aGUgZGVmYXVsdAorICAgICAgbGlzdCwgaW4gdGhlIHNhbWUgd2F5IGFzIDptZXRoOmBhZGRfaW5jbHVkZV9kaXJgLgorCisgICAgICBSYWlzZXMgOmV4YzpgUHJlcHJvY2Vzc0Vycm9yYCBvbiBmYWlsdXJlLgorCisgICBUaGUgZm9sbG93aW5nIHV0aWxpdHkgbWV0aG9kcyBhcmUgZGVmaW5lZCBieSB0aGUgOmNsYXNzOmBDQ29tcGlsZXJgIGNsYXNzLCBmb3IKKyAgIHVzZSBieSB0aGUgdmFyaW91cyBjb25jcmV0ZSBzdWJjbGFzc2VzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5leGVjdXRhYmxlX2ZpbGVuYW1lKGJhc2VuYW1lWywgc3RyaXBfZGlyPTAsIG91dHB1dF9kaXI9JyddKQorCisgICAgICBSZXR1cm5zIHRoZSBmaWxlbmFtZSBvZiB0aGUgZXhlY3V0YWJsZSBmb3IgdGhlIGdpdmVuICpiYXNlbmFtZSouICBUeXBpY2FsbHkgZm9yCisgICAgICBub24tV2luZG93cyBwbGF0Zm9ybXMgdGhpcyBpcyB0aGUgc2FtZSBhcyB0aGUgYmFzZW5hbWUsIHdoaWxlIFdpbmRvd3Mgd2lsbCBnZXQKKyAgICAgIGEgOmZpbGU6YC5leGVgIGFkZGVkLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5saWJyYXJ5X2ZpbGVuYW1lKGxpYm5hbWVbLCBsaWJfdHlwZT0nc3RhdGljJywgc3RyaXBfZGlyPTAsIG91dHB1dF9kaXI9JyddKQorCisgICAgICBSZXR1cm5zIHRoZSBmaWxlbmFtZSBmb3IgdGhlIGdpdmVuIGxpYnJhcnkgbmFtZSBvbiB0aGUgY3VycmVudCBwbGF0Zm9ybS4gT24gVW5peAorICAgICAgYSBsaWJyYXJ5IHdpdGggKmxpYl90eXBlKiBvZiBgYCdzdGF0aWMnYGAgd2lsbCB0eXBpY2FsbHkgYmUgb2YgdGhlIGZvcm0KKyAgICAgIDpmaWxlOmBsaWJsaWJuYW1lLmFgLCB3aGlsZSBhICpsaWJfdHlwZSogb2YgYGAnZHluYW1pYydgYCB3aWxsIGJlIG9mIHRoZSBmb3JtCisgICAgICA6ZmlsZTpgbGlibGlibmFtZS5zb2AuCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLm9iamVjdF9maWxlbmFtZXMoc291cmNlX2ZpbGVuYW1lc1ssIHN0cmlwX2Rpcj0wLCBvdXRwdXRfZGlyPScnXSkKKworICAgICAgUmV0dXJucyB0aGUgbmFtZSBvZiB0aGUgb2JqZWN0IGZpbGVzIGZvciB0aGUgZ2l2ZW4gc291cmNlIGZpbGVzLgorICAgICAgKnNvdXJjZV9maWxlbmFtZXMqIHNob3VsZCBiZSBhIGxpc3Qgb2YgZmlsZW5hbWVzLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5zaGFyZWRfb2JqZWN0X2ZpbGVuYW1lKGJhc2VuYW1lWywgc3RyaXBfZGlyPTAsIG91dHB1dF9kaXI9JyddKQorCisgICAgICBSZXR1cm5zIHRoZSBuYW1lIG9mIGEgc2hhcmVkIG9iamVjdCBmaWxlIGZvciB0aGUgZ2l2ZW4gZmlsZSBuYW1lICpiYXNlbmFtZSouCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLmV4ZWN1dGUoZnVuYywgYXJnc1ssIG1zZz1Ob25lLCBsZXZlbD0xXSkKKworICAgICAgSW52b2tlcyA6ZnVuYzpgcGFja2FnaW5nLnV0aWwuZXhlY3V0ZWAgVGhpcyBtZXRob2QgaW52b2tlcyBhIFB5dGhvbiBmdW5jdGlvbgorICAgICAgKmZ1bmMqIHdpdGggdGhlIGdpdmVuIGFyZ3VtZW50cyAqYXJncyosIGFmdGVyIGxvZ2dpbmcgYW5kIHRha2luZyBpbnRvIGFjY291bnQKKyAgICAgIHRoZSAqZHJ5X3J1biogZmxhZy4gWFhYIHNlZSBhbHNvLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5zcGF3bihjbWQpCisKKyAgICAgIEludm9rZXMgOmZ1bmM6YHBhY2thZ2luZy51dGlsLnNwYXduYC4gVGhpcyBpbnZva2VzIGFuIGV4dGVybmFsIHByb2Nlc3MgdG8gcnVuCisgICAgICB0aGUgZ2l2ZW4gY29tbWFuZC4gWFhYIHNlZSBhbHNvLgorCisKKyAgIC4uIG1ldGhvZDo6IENDb21waWxlci5ta3BhdGgobmFtZVssIG1vZGU9NTExXSkKKworICAgICAgSW52b2tlcyA6ZnVuYzpgcGFja2FnaW5nLmRpcl91dGlsLm1rcGF0aGAuIFRoaXMgY3JlYXRlcyBhIGRpcmVjdG9yeSBhbmQgYW55CisgICAgICBtaXNzaW5nIGFuY2VzdG9yIGRpcmVjdG9yaWVzLiBYWFggc2VlIGFsc28uCisKKworICAgLi4gbWV0aG9kOjogQ0NvbXBpbGVyLm1vdmVfZmlsZShzcmMsIGRzdCkKKworICAgICAgSW52b2tlcyA6bWV0aDpgcGFja2FnaW5nLmZpbGVfdXRpbC5tb3ZlX2ZpbGVgLiBSZW5hbWVzICpzcmMqIHRvICpkc3QqLiAgWFhYIHNlZQorICAgICAgYWxzby4KKworCis6bW9kOmBwYWNrYWdpbmcuY29tcGlsZXIuZXh0ZW5zaW9uYCAtLS0gVGhlIEV4dGVuc2lvbiBjbGFzcworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLmNvbXBpbGVyLmV4dGVuc2lvbgorICAgOnN5bm9wc2lzOiBDbGFzcyB1c2VkIHRvIHJlcHJlc2VudCBDL0MrKyBleHRlbnNpb24gbW9kdWxlcy4KKworCitUaGlzIG1vZHVsZSBwcm92aWRlcyB0aGUgOmNsYXNzOmBFeHRlbnNpb25gIGNsYXNzLCB1c2VkIHRvIHJlcHJlc2VudCBDL0MrKworZXh0ZW5zaW9uIG1vZHVsZXMuCisKKy4uIGNsYXNzOjogRXh0ZW5zaW9uCisKKyAgIFRoZSBFeHRlbnNpb24gY2xhc3MgZGVzY3JpYmVzIGEgc2luZ2xlIEMgb3IgQysrIGV4dGVuc2lvbiBtb2R1bGUuICBJdCBhY2NlcHRzCisgICB0aGUgZm9sbG93aW5nIGtleXdvcmQgYXJndW1lbnRzIGluIGl0cyBjb25zdHJ1Y3RvcjoKKworICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IGFyZ3VtZW50IG5hbWUgICAgICAgICAgfCB2YWx1ZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCB0eXBlICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICs9PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09KworICAgfCAqbmFtZSogICAgICAgICAgICAgICAgIHwgdGhlIGZ1bGwgbmFtZSBvZiB0aGUgICAgICAgICAgIHwgc3RyaW5nICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBleHRlbnNpb24sIGluY2x1ZGluZyBhbnkgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHBhY2thZ2VzIC0tLSBpLmUuICpub3QqIGEgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZmlsZW5hbWUgb3IgcGF0aG5hbWUsIGJ1dCAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBQeXRob24gZG90dGVkIG5hbWUgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqc291cmNlcyogICAgICAgICAgICAgIHwgbGlzdCBvZiBzb3VyY2UgZmlsZW5hbWVzLCAgICAgIHwgbGlzdCBvZiBzdHJpbmdzICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCByZWxhdGl2ZSB0byB0aGUgZGlzdHJpYnV0aW9uICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHJvb3QgKHdoZXJlIHRoZSBzZXR1cCBzY3JpcHQgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgbGl2ZXMpLCBpbiBVbml4IGZvcm0gKHNsYXNoLSAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBzZXBhcmF0ZWQpIGZvciBwb3J0YWJpbGl0eS4gICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IFNvdXJjZSBmaWxlcyBtYXkgYmUgQywgQysrLCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgU1dJRyAoLmkpLCBwbGF0Zm9ybS1zcGVjaWZpYyAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCByZXNvdXJjZSBmaWxlcywgb3Igd2hhdGV2ZXIgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGVsc2UgaXMgcmVjb2duaXplZCBieSB0aGUgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgOmNvbW1hbmQ6YGJ1aWxkX2V4dGAgY29tbWFuZCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBhcyBzb3VyY2UgZm9yIGEgUHl0aG9uICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGV4dGVuc2lvbi4gICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICppbmNsdWRlX2RpcnMqICAgICAgICAgfCBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIHNlYXJjaCAgfCBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGZvciBDL0MrKyBoZWFkZXIgZmlsZXMgKGluICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgVW5peCBmb3JtIGZvciBwb3J0YWJpbGl0eSkgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmRlZmluZV9tYWNyb3MqICAgICAgICB8IGxpc3Qgb2YgbWFjcm9zIHRvIGRlZmluZTsgZWFjaCB8IGxpc3Qgb2YgdHVwbGVzICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgbWFjcm8gaXMgZGVmaW5lZCB1c2luZyBhICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCAyLXR1cGxlIGBgKG5hbWUsIHZhbHVlKWBgLCAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHdoZXJlICp2YWx1ZSogaXMgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZWl0aGVyIHRoZSBzdHJpbmcgdG8gZGVmaW5lIGl0IHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCB0byBvciBgYE5vbmVgYCB0byBkZWZpbmUgaXQgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHdpdGhvdXQgYSBwYXJ0aWN1bGFyIHZhbHVlICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgKGVxdWl2YWxlbnQgb2YgYGAjZGVmaW5lIEZPT2BgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBpbiBzb3VyY2Ugb3IgOm9wdGlvbjpgLURGT09gICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IG9uIFVuaXggQyBjb21waWxlciBjb21tYW5kICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgbGluZSkgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKnVuZGVmX21hY3JvcyogICAgICAgICB8IGxpc3Qgb2YgbWFjcm9zIHRvIHVuZGVmaW5lICAgICB8IGxpc3Qgb2Ygc3RyaW5ncyAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZXhwbGljaXRseSAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmxpYnJhcnlfZGlycyogICAgICAgICB8IGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoICB8IGxpc3Qgb2Ygc3RyaW5ncyAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZm9yIEMvQysrIGxpYnJhcmllcyBhdCBsaW5rICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCB0aW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqbGlicmFyaWVzKiAgICAgICAgICAgIHwgbGlzdCBvZiBsaWJyYXJ5IG5hbWVzIChub3QgICAgIHwgbGlzdCBvZiBzdHJpbmdzICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBmaWxlbmFtZXMgb3IgcGF0aHMpIHRvIGxpbmsgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGFnYWluc3QgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpydW50aW1lX2xpYnJhcnlfZGlycyogfCBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIHNlYXJjaCAgfCBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGZvciBDL0MrKyBsaWJyYXJpZXMgYXQgcnVuICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgdGltZSAoZm9yIHNoYXJlZCBleHRlbnNpb25zLCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCB0aGlzIGlzIHdoZW4gdGhlIGV4dGVuc2lvbiBpcyAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGxvYWRlZCkgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpleHRyYV9vYmplY3RzKiAgICAgICAgfCBsaXN0IG9mIGV4dHJhIGZpbGVzIHRvIGxpbmsgICAgfCBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHdpdGggKGUuZy4gb2JqZWN0IGZpbGVzIG5vdCAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgaW1wbGllZCBieSAnc291cmNlcycsIHN0YXRpYyAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBsaWJyYXJ5IHRoYXQgbXVzdCBiZSAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGV4cGxpY2l0bHkgc3BlY2lmaWVkLCBiaW5hcnkgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgcmVzb3VyY2UgZmlsZXMsIGV0Yy4pICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmV4dHJhX2NvbXBpbGVfYXJncyogICB8IGFueSBleHRyYSBwbGF0Zm9ybS0gYW5kICAgICAgICB8IGxpc3Qgb2Ygc3RyaW5ncyAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgY29tcGlsZXItc3BlY2lmaWMgaW5mb3JtYXRpb24gIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCB0byB1c2Ugd2hlbiBjb21waWxpbmcgdGhlICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHNvdXJjZSBmaWxlcyBpbiAnc291cmNlcycuIEZvciB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgcGxhdGZvcm1zIGFuZCBjb21waWxlcnMgd2hlcmUgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBhIGNvbW1hbmQgbGluZSBtYWtlcyBzZW5zZSwgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IHRoaXMgaXMgdHlwaWNhbGx5IGEgbGlzdCBvZiAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgY29tbWFuZC1saW5lIGFyZ3VtZW50cywgYnV0ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBmb3Igb3RoZXIgcGxhdGZvcm1zIGl0IGNvdWxkICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGJlIGFueXRoaW5nLiAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpleHRyYV9saW5rX2FyZ3MqICAgICAgfCBhbnkgZXh0cmEgcGxhdGZvcm0tIGFuZCAgICAgICAgfCBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGNvbXBpbGVyLXNwZWNpZmljIGluZm9ybWF0aW9uICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgdG8gdXNlIHdoZW4gbGlua2luZyBvYmplY3QgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBmaWxlcyB0b2dldGhlciB0byBjcmVhdGUgdGhlICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGV4dGVuc2lvbiAob3IgdG8gY3JlYXRlIGEgbmV3ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgc3RhdGljIFB5dGhvbiBpbnRlcnByZXRlcikuICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBTaW1pbGFyIGludGVycHJldGF0aW9uIGFzIGZvciAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8ICdleHRyYV9jb21waWxlX2FyZ3MnLiAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpleHBvcnRfc3ltYm9scyogICAgICAgfCBsaXN0IG9mIHN5bWJvbHMgdG8gYmUgZXhwb3J0ZWQgfCBsaXN0IG9mIHN0cmluZ3MgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGZyb20gYSBzaGFyZWQgZXh0ZW5zaW9uLiBOb3QgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgdXNlZCBvbiBhbGwgcGxhdGZvcm1zLCBhbmQgbm90IHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBnZW5lcmFsbHkgbmVjZXNzYXJ5IGZvciBQeXRob24gfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGV4dGVuc2lvbnMsIHdoaWNoIHR5cGljYWxseSAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZXhwb3J0IGV4YWN0bHkgb25lIHN5bWJvbDogICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBgYGluaXRgYCArIGV4dGVuc2lvbl9uYW1lLiAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqZGVwZW5kcyogICAgICAgICAgICAgIHwgbGlzdCBvZiBmaWxlcyB0aGF0IHRoZSAgICAgICAgIHwgbGlzdCBvZiBzdHJpbmdzICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBleHRlbnNpb24gZGVwZW5kcyBvbiAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqbGFuZ3VhZ2UqICAgICAgICAgICAgIHwgZXh0ZW5zaW9uIGxhbmd1YWdlIChpLmUuICAgICAgIHwgc3RyaW5nICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBgYCdjJ2BgLCBgYCdjKysnYGAsICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGBgJ29iamMnYGApLiBXaWxsIGJlIGRldGVjdGVkICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgZnJvbSB0aGUgc291cmNlIGV4dGVuc2lvbnMgaWYgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBub3QgcHJvdmlkZWQuICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqb3B0aW9uYWwqICAgICAgICAgICAgIHwgc3BlY2lmaWVzIHRoYXQgYSBidWlsZCBmYWlsdXJlIHwgYm9vbGVhbiAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICAgICAgfCBpbiB0aGUgZXh0ZW5zaW9uIHNob3VsZCBub3QgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgICAgICB8IGFib3J0IHRoZSBidWlsZCBwcm9jZXNzLCBidXQgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgIHwgc2ltcGx5IHNraXAgdGhlIGV4dGVuc2lvbi4gICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKworVG8gZGlzdHJpYnV0ZSBleHRlbnNpb24gbW9kdWxlcyB0aGF0IGxpdmUgaW4gYSBwYWNrYWdlIChlLmcuIGBgcGFja2FnZS5leHRgYCksCit5b3UgbmVlZCB0byBjcmVhdGUgYSA6ZmlsZTpge3BhY2thZ2V9L19faW5pdF9fLnB5YCBmaWxlIHRvIGxldCBQeXRob24gcmVjb2duaXplCithbmQgaW1wb3J0IHlvdXIgbW9kdWxlLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmRhdGFiYXNlLnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5kYXRhYmFzZS5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFhMmNiOQotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5kYXRhYmFzZS5yc3QKQEAgLTAsMCArMSwzMjQgQEAKKzptb2Q6YHBhY2thZ2luZy5kYXRhYmFzZWAgLS0tIERhdGFiYXNlIG9mIGluc3RhbGxlZCBkaXN0cmlidXRpb25zCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcuZGF0YWJhc2UKKyAgIDpzeW5vcHNpczogRnVuY3Rpb25zIHRvIHF1ZXJ5IGFuZCBtYW5pcHVsYXRlIGluc3RhbGxlZCBkaXN0cmlidXRpb25zLgorCisKK1RoaXMgbW9kdWxlIHByb3ZpZGVzIGFuIGltcGxlbWVudGF0aW9uIG9mIDpQRVA6YDM3NmAuICBJdCB3YXMgb3JpZ2luYWxseQoraW50ZW5kZWQgdG8gbGFuZCBpbiA6bW9kOmBwa2d1dGlsYCwgYnV0IHdpdGggdGhlIGluY2x1c2lvbiBvZiBQYWNrYWdpbmcgaW4gdGhlCitzdGFuZGFyZCBsaWJyYXJ5LCBpdCB3YXMgdGhvdWdodCBiZXN0IHRvIGluY2x1ZGUgaXQgaW4gYSBzdWJtb2R1bGUgb2YKKzptb2Q6YHBhY2thZ2luZ2AsIGxlYXZpbmcgOm1vZDpgcGtndXRpbGAgdG8gZGVhbCB3aXRoIGltcG9ydHMuCisKK0luc3RhbGxlZCBQeXRob24gZGlzdHJpYnV0aW9ucyBhcmUgcmVwcmVzZW50ZWQgYnkgaW5zdGFuY2VzIG9mCis6Y2xhc3M6YERpc3RyaWJ1dGlvbmAsIG9yIDpjbGFzczpgRWdnSW5mb0Rpc3RyaWJ1dGlvbmAgZm9yIGxlZ2FjeSBlZ2cgZm9ybWF0cy4KK01vc3QgZnVuY3Rpb25zIGFsc28gcHJvdmlkZSBhbiBleHRyYSBhcmd1bWVudCBgYHVzZV9lZ2dfaW5mb2BgIHRvIHRha2UgbGVnYWN5CitkaXN0cmlidXRpb25zIGludG8gYWNjb3VudC4KKworCitDbGFzc2VzIHJlcHJlc2VudGluZyBpbnN0YWxsZWQgZGlzdHJpYnV0aW9ucworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gY2xhc3M6OiBEaXN0cmlidXRpb24ocGF0aCkKKworICAgQ2xhc3MgcmVwcmVzZW50aW5nIGFuIGluc3RhbGxlZCBkaXN0cmlidXRpb24uICBJdCBpcyBkaWZmZXJlbnQgZnJvbQorICAgOmNsYXNzOmBwYWNrYWdpbmcuZGlzdC5EaXN0cmlidXRpb25gIHdoaWNoIGhvbGRzIHRoZSBsaXN0IG9mIGZpbGVzLCB0aGUKKyAgIG1ldGFkYXRhIGFuZCBvcHRpb25zIGR1cmluZyB0aGUgcnVuIG9mIGEgUGFja2FnaW5nIGNvbW1hbmQuCisKKyAgIEluc3RhbnRpYXRlIHdpdGggdGhlICpwYXRoKiB0byBhIGBgLmRpc3QtaW5mb2BgIGRpcmVjdG9yeS4gIEluc3RhbmNlcyBjYW4gYmUKKyAgIGNvbXBhcmVkIGFuZCBzb3J0ZWQuICBPdGhlciBhdmFpbGFibGUgbWV0aG9kcyBhcmU6CisKKyAgIC4uIFhYWCBkZXNjcmliZSBob3cgY29tcGFyaXNvbiB3b3JrcworCisgICAuLiBtZXRob2Q6OiBnZXRfZGlzdGluZm9fZmlsZShwYXRoLCBiaW5hcnk9RmFsc2UpCisKKyAgICAgIFJldHVybiBhIHJlYWQtb25seSBmaWxlIG9iamVjdCBmb3IgYSBmaWxlIGxvY2F0ZWQgYXQKKyAgICAgIDpmaWxlOmB7cHJvamVjdH0te3ZlcnNpb259LmRpc3QtaW5mby97cGF0aH1gLiAgKnBhdGgqIHNob3VsZCBiZSBhCisgICAgICBgYCcvJ2BgLXNlcGFyYXRlZCBwYXRoIHJlbGF0aXZlIHRvIHRoZSBgYC5kaXN0LWluZm9gYCBkaXJlY3Rvcnkgb3IgYW4KKyAgICAgIGFic29sdXRlIHBhdGg7IGlmIGl0IGlzIGFuIGFic29sdXRlIHBhdGggYW5kIGRvZXNuJ3Qgc3RhcnQgd2l0aCB0aGUgcGF0aAorICAgICAgdG8gdGhlIDpmaWxlOmAuZGlzdC1pbmZvYCBkaXJlY3RvcnksIGEgOmNsYXNzOmBQYWNrYWdpbmdFcnJvcmAgaXMgcmFpc2VkLgorCisgICAgICBJZiAqYmluYXJ5KiBpcyBgYFRydWVgYCwgdGhlIGZpbGUgaXMgb3BlbmVkIGluIGJpbmFyeSBtb2RlLgorCisgICAuLiBtZXRob2Q6OiBnZXRfcmVzb3VyY2VfcGF0aChyZWxhdGl2ZV9wYXRoKQorCisgICAgICAuLiBUT0RPCisKKyAgIC4uIG1ldGhvZDo6IGxpc3RfZGlzdGluZm9fZmlsZXMobG9jYWw9RmFsc2UpCisKKyAgICAgIFJldHVybiBhbiBpdGVyYXRvciBvdmVyIGFsbCBmaWxlcyBsb2NhdGVkIGluIHRoZSA6ZmlsZTpgLmRpc3QtaW5mb2AKKyAgICAgIGRpcmVjdG9yeS4gIElmICpsb2NhbCogaXMgYGBUcnVlYGAsIGVhY2ggcmV0dXJuZWQgcGF0aCBpcyB0cmFuc2Zvcm1lZCBpbnRvCisgICAgICBhIGxvY2FsIGFic29sdXRlIHBhdGgsIG90aGVyd2lzZSB0aGUgcmF3IHZhbHVlIGZvdW5kIGluIHRoZSA6ZmlsZTpgUkVDT1JEYAorICAgICAgZmlsZSBpcyByZXR1cm5lZC4KKworICAgLi4gbWV0aG9kOjogIGxpc3RfaW5zdGFsbGVkX2ZpbGVzKGxvY2FsPUZhbHNlKQorCisgICAgICBJdGVyYXRlIG92ZXIgdGhlIGZpbGVzIGluc3RhbGxlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24gYW5kIHJlZ2lzdGVyZWQgaW4KKyAgICAgIHRoZSA6ZmlsZTpgUkVDT1JEYCBmaWxlIGFuZCB5aWVsZCBhIHR1cGxlIGBgKHBhdGgsIG1kNSwgc2l6ZSlgYCBmb3IgZWFjaAorICAgICAgbGluZS4gIElmICpsb2NhbCogaXMgYGBUcnVlYGAsIHRoZSByZXR1cm5lZCBwYXRoIGlzIHRyYW5zZm9ybWVkIGludG8gYQorICAgICAgbG9jYWwgYWJzb2x1dGUgcGF0aCwgb3RoZXJ3aXNlIHRoZSByYXcgdmFsdWUgaXMgcmV0dXJuZWQuCisKKyAgICAgIEEgbG9jYWwgYWJzb2x1dGUgcGF0aCBpcyBhbiBhYnNvbHV0ZSBwYXRoIGluIHdoaWNoIG9jY3VycmVuY2VzIG9mIGBgJy8nYGAKKyAgICAgIGhhdmUgYmVlbiByZXBsYWNlZCBieSA6ZGF0YTpgb3Muc2VwYC4KKworICAgLi4gbWV0aG9kOjogdXNlcyhwYXRoKQorCisgICAgICBDaGVjayB3aGV0aGVyICpwYXRoKiB3YXMgaW5zdGFsbGVkIGJ5IHRoaXMgZGlzdHJpYnV0aW9uIChpLmUuIGlmIHRoZSBwYXRoCisgICAgICBpcyBwcmVzZW50IGluIHRoZSA6ZmlsZTpgUkVDT1JEYCBmaWxlKS4gICpwYXRoKiBjYW4gYmUgYSBsb2NhbCBhYnNvbHV0ZQorICAgICAgcGF0aCBvciBhIHJlbGF0aXZlIGBgJy8nYGAtc2VwYXJhdGVkIHBhdGguICBSZXR1cm5zIGEgYm9vbGVhbi4KKworICAgQXZhaWxhYmxlIGF0dHJpYnV0ZXM6CisKKyAgIC4uIGF0dHJpYnV0ZTo6IG1ldGFkYXRhCisKKyAgICAgIEluc3RhbmNlIG9mIDpjbGFzczpgcGFja2FnaW5nLm1ldGFkYXRhLk1ldGFkYXRhYCBmaWxsZWQgd2l0aCB0aGUgY29udGVudHMKKyAgICAgIG9mIHRoZSA6ZmlsZTpge3Byb2plY3R9LXt2ZXJzaW9ufS5kaXN0LWluZm8vTUVUQURBVEFgIGZpbGUuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IG5hbWUKKworICAgICAgU2hvcnRjdXQgZm9yIGBgbWV0YWRhdGFbJ05hbWUnXWBgLgorCisgICAuLiBhdHRyaWJ1dGU6OiB2ZXJzaW9uCisKKyAgICAgIFNob3J0Y3V0IGZvciBgYG1ldGFkYXRhWydWZXJzaW9uJ11gYC4KKworICAgLi4gYXR0cmlidXRlOjogcmVxdWVzdGVkCisKKyAgICAgIEJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoaXMgZGlzdHJpYnV0aW9uIHdhcyByZXF1ZXN0ZWQgYnkgdGhlIHVzZXIgb2YKKyAgICAgIGF1dG9tYXRpY2FsbHkgaW5zdGFsbGVkIGFzIGEgZGVwZW5kZW5jeS4KKworCisuLiBjbGFzczo6IEVnZ0luZm9EaXN0cmlidXRpb24ocGF0aCkKKworICAgQ2xhc3MgcmVwcmVzZW50aW5nIGEgbGVnYWN5IGRpc3RyaWJ1dGlvbi4gIEl0IGlzIGNvbXBhdGlibGUgd2l0aCBkaXN0dXRpbHMnCisgICBhbmQgc2V0dXB0b29scycgOmZpbGU6YC5lZ2ctaW5mb2AgYW5kIDpmaWxlOmAuZWdnYCBmaWxlcyBhbmQgZGlyZWN0b3JpZXMuCisKKyAgIC4uIEZJWE1FIHNob3VsZCBiZSBuYW1lZCBFZ2dEaXN0cmlidXRpb24KKworICAgSW5zdGFudGlhdGUgd2l0aCB0aGUgKnBhdGgqIHRvIGFuIGVnZyBmaWxlIG9yIGRpcmVjdG9yeS4gIEluc3RhbmNlcyBjYW4gYmUKKyAgIGNvbXBhcmVkIGFuZCBzb3J0ZWQuICBPdGhlciBhdmFpbGFibGUgbWV0aG9kcyBhcmU6CisKKyAgIC4uIG1ldGhvZDo6IGxpc3RfaW5zdGFsbGVkX2ZpbGVzKGxvY2FsPUZhbHNlKQorCisgICAuLiBtZXRob2Q6OiB1c2VzKHBhdGgpCisKKyAgIEF2YWlsYWJsZSBhdHRyaWJ1dGVzOgorCisgICAuLiBhdHRyaWJ1dGU6OiBtZXRhZGF0YQorCisgICAgICBJbnN0YW5jZSBvZiA6Y2xhc3M6YHBhY2thZ2luZy5tZXRhZGF0YS5NZXRhZGF0YWAgZmlsbGVkIHdpdGggdGhlIGNvbnRlbnRzCisgICAgICBvZiB0aGUgOmZpbGU6YHtwcm9qZWN0LXZlcnNpb259LmVnZy1pbmZvL1BLRy1JTkZPYCBvcgorICAgICAgOmZpbGU6YHtwcm9qZWN0LXZlcnNpb259LmVnZ2AgZmlsZS4KKworICAgLi4gYXR0cmlidXRlOjogbmFtZQorCisgICAgICBTaG9ydGN1dCBmb3IgYGBtZXRhZGF0YVsnTmFtZSddYGAuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IHZlcnNpb24KKworICAgICAgU2hvcnRjdXQgZm9yIGBgbWV0YWRhdGFbJ1ZlcnNpb24nXWBgLgorCisKK0Z1bmN0aW9ucyB0byB3b3JrIHdpdGggdGhlIGRhdGFiYXNlCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisuLiBmdW5jdGlvbjo6IGdldF9kaXN0cmlidXRpb24obmFtZSwgdXNlX2VnZ19pbmZvPUZhbHNlLCBwYXRocz1Ob25lKQorCisgICBSZXR1cm4gYW4gaW5zdGFuY2Ugb2YgOmNsYXNzOmBEaXN0cmlidXRpb25gIG9yIDpjbGFzczpgRWdnSW5mb0Rpc3RyaWJ1dGlvbmAKKyAgIGZvciB0aGUgZmlyc3QgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbiBtYXRjaGluZyAqbmFtZSouICBFZ2cgZGlzdHJpYnV0aW9ucyBhcmUKKyAgIGNvbnNpZGVyZWQgb25seSBpZiAqdXNlX2VnZ19pbmZvKiBpcyB0cnVlOyBpZiBib3RoIGEgZGlzdC1pbmZvIGFuZCBhbiBlZ2cKKyAgIGZpbGUgYXJlIGZvdW5kLCB0aGUgZGlzdC1pbmZvIHByZXZhaWxzLiAgVGhlIGRpcmVjdG9yaWVzIHRvIGJlIHNlYXJjaGVkIGFyZQorICAgZ2l2ZW4gaW4gKnBhdGhzKiwgd2hpY2ggZGVmYXVsdHMgdG8gOmRhdGE6YHN5cy5wYXRoYC4gIFJldHVybiBgYE5vbmVgYCBpZiBubworICAgbWF0Y2hpbmcgZGlzdHJpYnV0aW9uIGlzIGZvdW5kLgorCisgICAuLiBGSVhNRSBwYXJhbSBzaG91bGQgYmUgbmFtZWQgdXNlX2VnZworCisKKy4uIGZ1bmN0aW9uOjogZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPUZhbHNlLCBwYXRocz1Ob25lKQorCisgICBSZXR1cm4gYW4gaXRlcmF0b3Igb2YgOmNsYXNzOmBEaXN0cmlidXRpb25gIGluc3RhbmNlcyBmb3IgYWxsIGluc3RhbGxlZAorICAgZGlzdHJpYnV0aW9ucyBmb3VuZCBpbiAqcGF0aHMqIChkZWZhdWx0cyB0byA6ZGF0YTpgc3lzLnBhdGhgKS4gIElmCisgICAqdXNlX2VnZ19pbmZvKiBpcyB0cnVlLCBhbHNvIHJldHVybiBpbnN0YW5jZXMgb2YgOmNsYXNzOmBFZ2dJbmZvRGlzdHJpYnV0aW9uYAorICAgZm9yIGxlZ2FjeSBkaXN0cmlidXRpb25zIGZvdW5kLgorCisKKy4uIGZ1bmN0aW9uOjogZ2V0X2ZpbGVfdXNlcnMocGF0aCkKKworICAgUmV0dXJuIGFuIGl0ZXJhdG9yIG92ZXIgYWxsIGRpc3RyaWJ1dGlvbnMgdXNpbmcgKnBhdGgqLCBhIGxvY2FsIGFic29sdXRlIHBhdGgKKyAgIG9yIGEgcmVsYXRpdmUgYGAnLydgYC1zZXBhcmF0ZWQgcGF0aC4KKworICAgLi4gWFhYIGRvZXMgdGhpcyB3b3JrIHdpdGggcHJlZml4ZXMgb3IgZnVsbCBmaWxlIHBhdGggb25seT8KKworCisuLiBmdW5jdGlvbjo6IG9ic29sZXRlc19kaXN0cmlidXRpb24obmFtZSwgdmVyc2lvbj1Ob25lLCB1c2VfZWdnX2luZm89RmFsc2UpCisKKyAgIFJldHVybiBhbiBpdGVyYXRvciBvdmVyIGFsbCBkaXN0cmlidXRpb25zIHRoYXQgZGVjbGFyZSB0aGV5IG9ic29sZXRlICpuYW1lKi4KKyAgICp2ZXJzaW9uKiBpcyBhbiBvcHRpb25hbCBhcmd1bWVudCB0byBtYXRjaCBvbmx5IHNwZWNpZmljIHJlbGVhc2VzIChzZWUKKyAgIDptb2Q6YHBhY2thZ2luZy52ZXJzaW9uYCkuICBJZiAqdXNlX2VnZ19pbmZvKiBpcyB0cnVlLCBsZWdhY3kgZWdnCisgICBkaXN0cmlidXRpb25zIHdpbGwgYmUgY29uc2lkZXJlZCBhcyB3ZWxsLgorCisKKy4uIGZ1bmN0aW9uOjogcHJvdmlkZXNfZGlzdHJpYnV0aW9uKG5hbWUsIHZlcnNpb249Tm9uZSwgdXNlX2VnZ19pbmZvPUZhbHNlKQorCisgICBSZXR1cm4gYW4gaXRlcmF0b3Igb3ZlciBhbGwgZGlzdHJpYnV0aW9ucyB0aGF0IGRlY2xhcmUgdGhleSBwcm92aWRlICpuYW1lKi4KKyAgICp2ZXJzaW9uKiBpcyBhbiBvcHRpb25hbCBhcmd1bWVudCB0byBtYXRjaCBvbmx5IHNwZWNpZmljIHJlbGVhc2VzIChzZWUKKyAgIDptb2Q6YHBhY2thZ2luZy52ZXJzaW9uYCkuICBJZiAqdXNlX2VnZ19pbmZvKiBpcyB0cnVlLCBsZWdhY3kgZWdnCisgICBkaXN0cmlidXRpb25zIHdpbGwgYmUgY29uc2lkZXJlZCBhcyB3ZWxsLgorCisKK1V0aWxpdHkgZnVuY3Rpb25zCistLS0tLS0tLS0tLS0tLS0tLQorCisuLiBmdW5jdGlvbjo6IGRpc3RpbmZvX2Rpcm5hbWUobmFtZSwgdmVyc2lvbikKKworICAgRXNjYXBlICpuYW1lKiBhbmQgKnZlcnNpb24qIGludG8gYSBmaWxlbmFtZS1zYWZlIGZvcm0gYW5kIHJldHVybiB0aGUKKyAgIGRpcmVjdG9yeSBuYW1lIGJ1aWx0IGZyb20gdGhlbSwgZm9yIGV4YW1wbGUKKyAgIDpmaWxlOmB7c2FmZW5hbWV9LXtzYWZldmVyc2lvbn0uZGlzdC1pbmZvLmAgIEluICpuYW1lKiwgcnVucyBvZgorICAgbm9uLWFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFyZSByZXBsYWNlZCB3aXRoIG9uZSBgYCdfJ2BgOyBpbiAqdmVyc2lvbiosCisgICBzcGFjZXMgYmVjb21lIGRvdHMsIGFuZCBydW5zIG9mIG90aGVyIG5vbi1hbHBoYW51bWVyaWMgY2hhcmFjdGVycyAoZXhjZXB0CisgICBkb3RzKSBhIHJlcGxhY2VkIGJ5IG9uZSBgYCctJ2BgLgorCisgICAuLiBYWFggd3RoIHNwYWNlcyBpbiB2ZXJzaW9uIG51bWJlcnM/CisKK0ZvciBwZXJmb3JtYW5jZSBwdXJwb3NlcywgdGhlIGxpc3Qgb2YgZGlzdHJpYnV0aW9ucyBpcyBiZWluZyBpbnRlcm5hbGx5CitjYWNoZWQuICAgQ2FjaGluZyBpcyBlbmFibGVkIGJ5IGRlZmF1bHQsIGJ1dCB5b3UgY2FuIGNvbnRyb2wgaXQgd2l0aCB0aGVzZQorZnVuY3Rpb25zOgorCisuLiBmdW5jdGlvbjo6IGNsZWFyX2NhY2hlKCkKKworICAgQ2xlYXIgdGhlIGNhY2hlLgorCisuLiBmdW5jdGlvbjo6IGRpc2FibGVfY2FjaGUoKQorCisgICBEaXNhYmxlIHRoZSBjYWNoZSwgd2l0aG91dCBjbGVhcmluZyBpdC4KKworLi4gZnVuY3Rpb246OiBlbmFibGVfY2FjaGUoKQorCisgICBFbmFibGUgdGhlIGludGVybmFsIGNhY2hlLCB3aXRob3V0IGNsZWFyaW5nIGl0LgorCisKK0V4YW1wbGVzCistLS0tLS0tLQorCitQcmludCBhbGwgaW5mb3JtYXRpb24gYWJvdXQgYSBkaXN0cmlidXRpb24KK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitHaXZlbiBhIHBhdGggdG8gYSBgYC5kaXN0LWluZm9gYCBkaXN0cmlidXRpb24sIHdlIHNoYWxsIHByaW50IG91dCBhbGwKK2luZm9ybWF0aW9uIHRoYXQgY2FuIGJlIG9idGFpbmVkIHVzaW5nIGZ1bmN0aW9ucyBwcm92aWRlZCBpbiB0aGlzIG1vZHVsZTo6CisKKyAgIGltcG9ydCBzeXMKKyAgIGltcG9ydCBwYWNrYWdpbmcuZGF0YWJhc2UKKworICAgcGF0aCA9IGlucHV0KCkKKyAgICMgZmlyc3QgY3JlYXRlIHRoZSBEaXN0cmlidXRpb24gaW5zdGFuY2UKKyAgIHRyeToKKyAgICAgICBkaXN0ID0gcGFja2FnaW5nLmRhdGFiYXNlLkRpc3RyaWJ1dGlvbihwYXRoKQorICAgZXhjZXB0IEZpbGVOb3RGb3VuZEVycm9yOgorICAgICAgIHN5cy5leGl0KCdObyBzdWNoIGRpc3RyaWJ1dGlvbicpCisKKyAgIHByaW50KCdJbmZvcm1hdGlvbiBhYm91dCAlcicgJSBkaXN0Lm5hbWUpCisgICBwcmludCgpCisKKyAgIHByaW50KCdGaWxlcycpCisgICBwcmludCgnPT09PT0nKQorICAgZm9yIHBhdGgsIG1kNSwgc2l6ZSBpbiBkaXN0Lmxpc3RfaW5zdGFsbGVkX2ZpbGVzKCk6CisgICAgICAgcHJpbnQoJyogUGF0aDogJXMnICUgcGF0aCkKKyAgICAgICBwcmludCgnICBIYXNoICVzLCBTaXplOiAlcyBieXRlcycgJSAobWQ1LCBzaXplKSkKKyAgIHByaW50KCkKKworICAgcHJpbnQoJ01ldGFkYXRhJykKKyAgIHByaW50KCc9PT09PT09PScpCisgICBmb3Iga2V5LCB2YWx1ZSBpbiBkaXN0Lm1ldGFkYXRhLml0ZW1zKCk6CisgICAgICAgcHJpbnQoJyUyMHM6ICVzJyAlIChrZXksIHZhbHVlKSkKKyAgIHByaW50KCkKKworICAgcHJpbnQoJ0V4dHJhJykKKyAgIHByaW50KCc9PT09PScpCisgICBpZiBkaXN0LnJlcXVlc3RlZDoKKyAgICAgICBwcmludCgnKiBJdCB3YXMgaW5zdGFsbGVkIGJ5IHVzZXIgcmVxdWVzdCcpCisgICBlbHNlOgorICAgICAgIHByaW50KCcqIEl0IHdhcyBpbnN0YWxsZWQgYXMgYSBkZXBlbmRlbmN5JykKKworSWYgd2Ugc2F2ZSB0aGUgc2NyaXB0IGFib3ZlIGFzIGBgcHJpbnRfaW5mby5weWBgLCB3ZSBjYW4gdXNlIGl0IHRvIGV4dHJhY3QKK2luZm9ybWF0aW9uIGZyb20gYSA6ZmlsZTpgLmRpc3QtaW5mb2AgZGlyZWN0b3J5LiAgQnkgdHlwaW5nIGluIHRoZSBjb25zb2xlOgorCisuLiBjb2RlLWJsb2NrOjogc2gKKworICAgJCBlY2hvIC90bXAvY2hveGllL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mbyB8IHB5dGhvbjMgcHJpbnRfaW5mby5weQorCit3ZSBnZXQgdGhlIGZvbGxvd2luZyBvdXRwdXQ6CisKKy4uIGNvZGUtYmxvY2s6OiBub25lCisKKyAgIEluZm9ybWF0aW9uIGFib3V0ICdjaG94aWUnCisKKyAgIEZpbGVzCisgICA9PT09PQorICAgKiBQYXRoOiAuLi90bXAvZGlzdHV0aWxzMi90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45L3RydWZmbGVzLnB5CisgICAgIEhhc2ggNWUwNTJkYjZhNDc4ZDA2YmFkOWFlMDMzZTZiYzA4YWYsIFNpemU6IDExMSBieXRlcworICAgKiBQYXRoOiAuLi90bXAvZGlzdHV0aWxzMi90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45L2Nob3hpZS9jaG9jb2xhdGUucHkKKyAgICAgSGFzaCBhYzU2YmY0OTZkOGQxZDI2Zjg2NjIzNWI5NWYzMTAzMCwgU2l6ZTogMjE0IGJ5dGVzCisgICAqIFBhdGg6IC4uL3RtcC9kaXN0dXRpbHMyL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkvY2hveGllL19faW5pdF9fLnB5CisgICAgIEhhc2ggNDE2YWFiMDhkZmE4NDZmNDczMTI5ZTg5YTc2MjViYmMsIFNpemU6IDI1IGJ5dGVzCisgICAqIFBhdGg6IC4uL3RtcC9kaXN0dXRpbHMyL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkuZGlzdC1pbmZvL0lOU1RBTExFUgorICAgICBIYXNoIGQ0MWQ4Y2Q5OGYwMGIyMDRlOTgwMDk5OGVjZjg0MjdlLCBTaXplOiAwIGJ5dGVzCisgICAqIFBhdGg6IC4uL3RtcC9kaXN0dXRpbHMyL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkuZGlzdC1pbmZvL01FVEFEQVRBCisgICAgIEhhc2ggNjk2YTIwOTk2N2ZlZjNjOGI4ZjVhN2JiMTAzODYzODUsIFNpemU6IDIyNSBieXRlcworICAgKiBQYXRoOiAuLi90bXAvZGlzdHV0aWxzMi90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9SRVFVRVNURUQKKyAgICAgSGFzaCBkNDFkOGNkOThmMDBiMjA0ZTk4MDA5OThlY2Y4NDI3ZSwgU2l6ZTogMCBieXRlcworICAgKiBQYXRoOiAuLi90bXAvZGlzdHV0aWxzMi90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9SRUNPUkQKKyAgICAgSGFzaCBOb25lLCBTaXplOiBOb25lIGJ5dGVzCisKKyAgIE1ldGFkYXRhCisgICA9PT09PT09PQorICAgICAgIE1ldGFkYXRhLVZlcnNpb246IDEuMgorICAgICAgICAgICAgICAgICAgIE5hbWU6IGNob3hpZQorICAgICAgICAgICAgICAgIFZlcnNpb246IDIuMC4wLjkKKyAgICAgICAgICAgICAgIFBsYXRmb3JtOiBbXQorICAgICBTdXBwb3J0ZWQtUGxhdGZvcm06IFVOS05PV04KKyAgICAgICAgICAgICAgICBTdW1tYXJ5OiBDaG9jb2xhdGUgd2l0aCBhIGtpY2shCisgICAgICAgICAgICBEZXNjcmlwdGlvbjogVU5LTk9XTgorICAgICAgICAgICAgICAgS2V5d29yZHM6IFtdCisgICAgICAgICAgICAgIEhvbWUtcGFnZTogVU5LTk9XTgorICAgICAgICAgICAgICAgICBBdXRob3I6IFVOS05PV04KKyAgICAgICAgICAgQXV0aG9yLWVtYWlsOiBVTktOT1dOCisgICAgICAgICAgICAgTWFpbnRhaW5lcjogVU5LTk9XTgorICAgICAgIE1haW50YWluZXItZW1haWw6IFVOS05PV04KKyAgICAgICAgICAgICAgICBMaWNlbnNlOiBVTktOT1dOCisgICAgICAgICAgICAgQ2xhc3NpZmllcjogW10KKyAgICAgICAgICAgRG93bmxvYWQtVVJMOiBVTktOT1dOCisgICAgICAgICBPYnNvbGV0ZXMtRGlzdDogWyd0cnVmZmxlcyAoPD0wLjgsPj0wLjUpJywgJ3RydWZmbGVzICg8PTAuOSw+PTAuNiknXQorICAgICAgICAgICAgUHJvamVjdC1VUkw6IFtdCisgICAgICAgICAgUHJvdmlkZXMtRGlzdDogWyd0cnVmZmxlcyAoMS4wKSddCisgICAgICAgICAgUmVxdWlyZXMtRGlzdDogWyd0b3dlbC1zdHVmZiAoMC4xKSddCisgICAgICAgIFJlcXVpcmVzLVB5dGhvbjogVU5LTk9XTgorICAgICAgUmVxdWlyZXMtRXh0ZXJuYWw6IFtdCisKKyAgRXh0cmEKKyAgPT09PT0KKyAgKiBJdCB3YXMgaW5zdGFsbGVkIGFzIGEgZGVwZW5kZW5jeQorCisKK0ZpbmQgb3V0IG9ic29sZXRlZCBkaXN0cmlidXRpb25zCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitOb3csIHdlIHRha2UgdGFja2xlIGEgZGlmZmVyZW50IHByb2JsZW0sIHdlIGFyZSBpbnRlcmVzdGVkIGluIGZpbmRpbmcgb3V0Cit3aGljaCBkaXN0cmlidXRpb25zIGhhdmUgYmVlbiBvYnNvbGV0ZWQuIFRoaXMgY2FuIGJlIGVhc2lseSBkb25lIGFzIGZvbGxvd3M6OgorCisgIGltcG9ydCBwYWNrYWdpbmcuZGF0YWJhc2UKKworICAjIGl0ZXJhdGUgb3ZlciBhbGwgZGlzdHJpYnV0aW9ucyBpbiB0aGUgc3lzdGVtCisgIGZvciBkaXN0IGluIHBhY2thZ2luZy5kYXRhYmFzZS5nZXRfZGlzdHJpYnV0aW9ucygpOgorICAgICAgbmFtZSwgdmVyc2lvbiA9IGRpc3QubmFtZSwgZGlzdC52ZXJzaW9uCisgICAgICAjIGZpbmQgb3V0IHdoaWNoIGRpc3RyaWJ1dGlvbnMgb2Jzb2xldGUgdGhpcyBuYW1lL3ZlcnNpb24gY29tYmluYXRpb24KKyAgICAgIHJlcGxhY2VtZW50cyA9IHBhY2thZ2luZy5kYXRhYmFzZS5vYnNvbGV0ZXNfZGlzdHJpYnV0aW9uKG5hbWUsIHZlcnNpb24pCisgICAgICBpZiByZXBsYWNlbWVudHM6CisgICAgICAgICAgcHJpbnQoJyVyICVzIGlzIG9ic29sZXRlZCBieScgJSAobmFtZSwgdmVyc2lvbiksCisgICAgICAgICAgICAgICAgJywgJy5qb2luKHJlcHIoci5uYW1lKSBmb3IgciBpbiByZXBsYWNlbWVudHMpKQorCitUaGlzIGlzIGhvdyB0aGUgb3V0cHV0IG1pZ2h0IGxvb2sgbGlrZToKKworLi4gY29kZS1ibG9jazo6IG5vbmUKKworICAnc3RyYXdiZXJyeScgMC42IGlzIG9ic29sZXRlZCBieSAnY2hveGllJworICAnZ3JhbW1hcicgMS4wYTQgaXMgb2Jzb2xldGVkIGJ5ICd0b3dlbC1zdHVmZicKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5kZXBncmFwaC5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuZGVwZ3JhcGgucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmMzODQ3ODgKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuZGVwZ3JhcGgucnN0CkBAIC0wLDAgKzEsMTk5IEBACis6bW9kOmBwYWNrYWdpbmcuZGVwZ3JhcGhgIC0tLSBEZXBlbmRlbmN5IGdyYXBoIGJ1aWxkZXIKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcuZGVwZ3JhcGgKKyAgIDpzeW5vcHNpczogR3JhcGggYnVpbGRlciBmb3IgZGVwZW5kZW5jaWVzIGJldHdlZW4gcmVsZWFzZXMuCisKKworVGhpcyBtb2R1bGUgcHJvdmlkZXMgdGhlIG1lYW5zIHRvIGFuYWx5c2UgdGhlIGRlcGVuZGVuY2llcyBiZXR3ZWVuIHZhcmlvdXMKK2Rpc3RyaWJ1dGlvbnMgYW5kIHRvIGNyZWF0ZSBhIGdyYXBoIHJlcHJlc2VudGluZyB0aGVzZSBkZXBlbmRlbmN5IHJlbGF0aW9uc2hpcHMuCitJbiB0aGlzIGRvY3VtZW50LCAiZGlzdHJpYnV0aW9uIiByZWZlcnMgdG8gYW4gaW5zdGFuY2Ugb2YKKzpjbGFzczpgcGFja2FnaW5nLmRhdGFiYXNlLkRpc3RyaWJ1dGlvbmAgb3IKKzpjbGFzczpgcGFja2FnaW5nLmRhdGFiYXNlLkVnZ0luZm9EaXN0cmlidXRpb25gLgorCisuLiBYWFggdGVybWlub2xvZ3kgcHJvYmxlbSB3aXRoIGRpc3QgdnMuIHJlbGVhc2U6IGRpc3RzIGFyZSBpbnN0YWxsZWQsIGJ1dCBkZXBzCisgICB1c2UgcmVsZWFzZXMKKworLi4gWFhYIGV4cGxhaW4gaG93IHRvIHVzZSBpdCB3aXRoIGRpc3RzIG5vdCBpbnN0YWxsZWQ6IERpc3RyaWJ1dGlvbiBjYW4gb25seSBiZQorICAgaW5zdGFudGlhdGVkIHdpdGggYSBwYXRoLCBidXQgdGhpcyBtb2R1bGUgaXMgdXNlZnVsIGZvciByZW1vdGUgZGlzdCB0b28KKworLi4gWFhYIGZ1bmN0aW9ucyBzaG91bGQgYWNjZXB0IGFuZCByZXR1cm4gaXRlcmF0b3JzLCBub3QgbGlzdHMKKworCitUaGUgOmNsYXNzOmBEZXBlbmRlbmN5R3JhcGhgIGNsYXNzCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy4uIGNsYXNzOjogRGVwZW5kZW5jeUdyYXBoCisKKyAgIFJlcHJlc2VudCBhIGRlcGVuZGVuY3kgZ3JhcGggYmV0d2VlbiByZWxlYXNlcy4gIFRoZSBub2RlcyBhcmUgZGlzdHJpYnV0aW9uCisgICBpbnN0YW5jZXM7IHRoZSBlZGdlIG1vZGVsIGRlcGVuZGVuY2llcy4gIEFuIGVkZ2UgZnJvbSBgYGFgYCB0byBgYGJgYCBtZWFucworICAgdGhhdCBgYGFgYCBkZXBlbmRzIG9uIGBgYmBgLgorCisgICAuLiBtZXRob2Q6OiBhZGRfZGlzdHJpYnV0aW9uKGRpc3RyaWJ1dGlvbikKKworICAgICAgQWRkICpkaXN0cmlidXRpb24qIHRvIHRoZSBncmFwaC4KKworICAgLi4gbWV0aG9kOjogYWRkX2VkZ2UoeCwgeSwgbGFiZWw9Tm9uZSkKKworICAgICAgQWRkIGFuIGVkZ2UgZnJvbSBkaXN0cmlidXRpb24gKngqIHRvIGRpc3RyaWJ1dGlvbiAqeSogd2l0aCB0aGUgZ2l2ZW4KKyAgICAgICpsYWJlbCogKHN0cmluZykuCisKKyAgIC4uIG1ldGhvZDo6IGFkZF9taXNzaW5nKGRpc3RyaWJ1dGlvbiwgcmVxdWlyZW1lbnQpCisKKyAgICAgIEFkZCBhIG1pc3NpbmcgKnJlcXVpcmVtZW50KiAoc3RyaW5nKSBmb3IgdGhlIGdpdmVuICpkaXN0cmlidXRpb24qLgorCisgICAuLiBtZXRob2Q6OiByZXByX25vZGUoZGlzdCwgbGV2ZWw9MSkKKworICAgICAgUHJpbnQgYSBzdWJncmFwaCBzdGFydGluZyBmcm9tICpkaXN0Ki4gICpsZXZlbCogZ2l2ZXMgdGhlIGRlcHRoIG9mIHRoZQorICAgICAgc3ViZ3JhcGguCisKKyAgIERpcmVjdCBhY2Nlc3MgdG8gdGhlIGdyYXBoIG5vZGVzIGFuZCBlZGdlcyBpcyBwcm92aWRlZCB0aHJvdWdoIHRoZXNlCisgICBhdHRyaWJ1dGVzOgorCisgICAuLiBhdHRyaWJ1dGU6OiBhZGphY2VuY3lfbGlzdAorCisgICAgICBEaWN0aW9uYXJ5IG1hcHBpbmcgZGlzdHJpYnV0aW9ucyB0byBhIGxpc3Qgb2YgYGAob3RoZXIsIGxhYmVsKWBgIHR1cGxlcworICAgICAgd2hlcmUgIGBgb3RoZXJgYCBpcyBhIGRpc3RyaWJ1dGlvbiBhbmQgdGhlIGVkZ2UgaXMgbGFiZWxlZCB3aXRoIGBgbGFiZWxgYAorICAgICAgKGkuZS4gdGhlIHZlcnNpb24gc3BlY2lmaWVyLCBpZiBzdWNoIHdhcyBwcm92aWRlZCkuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IHJldmVyc2VfbGlzdAorCisgICAgICBEaWN0aW9uYXJ5IG1hcHBpbmcgZGlzdHJpYnV0aW9ucyB0byBhIGxpc3Qgb2YgcHJlZGVjZXNzb3JzLiAgVGhpcyBhbGxvd3MKKyAgICAgIGVmZmljaWVudCB0cmF2ZXJzYWwuCisKKyAgIC4uIGF0dHJpYnV0ZTo6IG1pc3NpbmcKKworICAgICAgRGljdGlvbmFyeSBtYXBwaW5nIGRpc3RyaWJ1dGlvbnMgdG8gYSBsaXN0IG9mIHJlcXVpcmVtZW50cyB0aGF0IHdlcmUgbm90CisgICAgICBwcm92aWRlZCBieSBhbnkgZGlzdHJpYnV0aW9uLgorCisKK0F1eGlsaWFyeSBmdW5jdGlvbnMKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gZnVuY3Rpb246OiBkZXBlbmRlbnRfZGlzdHMoZGlzdHMsIGRpc3QpCisKKyAgIFJlY3Vyc2l2ZWx5IGdlbmVyYXRlIGEgbGlzdCBvZiBkaXN0cmlidXRpb25zIGZyb20gKmRpc3RzKiB0aGF0IGFyZSBkZXBlbmRlbnQKKyAgIG9uICpkaXN0Ki4KKworICAgLi4gWFhYIHdoYXQgZG9lcyBtZW1iZXIgbWVhbiBoZXJlOiAiZGlzdCBpcyBhIG1lbWJlciBvZiAqZGlzdHMqIGZvciB3aGljaCB3ZQorICAgICAgYXJlIGludGVyZXN0ZWQiCisKKy4uIGZ1bmN0aW9uOjogZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisKKyAgIEdlbmVyYXRlIGEgOmNsYXNzOmBEZXBlbmRlbmN5R3JhcGhgIGZyb20gdGhlIGdpdmVuIGxpc3Qgb2YgZGlzdHJpYnV0aW9ucy4KKworICAgLi4gWFhYIG1ha2UgdGhpcyBhbHRlcm5hdGUgY29uc3RydWN0b3IgYSBEZXBHcmFwaCBjbGFzc21ldGhvZCBvciByZW5hbWU7CisgICAgICAnZ2VuZXJhdGUnIGNhbiBzdWdnZXN0IGl0IGNyZWF0ZXMgYSBmaWxlIG9yIGFuIGltYWdlLCB1c2UgJ21ha2UnCisKKy4uIGZ1bmN0aW9uOjogZ3JhcGhfdG9fZG90KGdyYXBoLCBmLCBza2lwX2Rpc2Nvbm5lY3RlZD1UcnVlKQorCisgICBXcml0ZSBhIERPVCBvdXRwdXQgZm9yIHRoZSBncmFwaCB0byB0aGUgZmlsZS1saWtlIG9iamVjdCAqZiouCisKKyAgIElmICpza2lwX2Rpc2Nvbm5lY3RlZCogaXMgdHJ1ZSwgYWxsIGRpc3RyaWJ1dGlvbnMgdGhhdCBhcmUgbm90IGRlcGVuZGVudCBvbgorICAgYW55IG90aGVyIGRpc3RyaWJ1dGlvbiBhcmUgc2tpcHBlZC4KKworICAgLi4gWFhYIHdoeSBpcyB0aGlzIG5vdCBhIERlcEdyYXBoIG1ldGhvZD8KKworCitFeGFtcGxlIFVzYWdlCistLS0tLS0tLS0tLS0tCisKK0RlcGljdCBhbGwgZGVwZW5kZW5jaWVzcyBpbiB0aGUgc3lzdGVtCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitGaXJzdCwgd2Ugc2hhbGwgZ2VuZXJhdGUgYSBncmFwaCBvZiBhbGwgdGhlIGRpc3RyaWJ1dGlvbnMgb24gdGhlIHN5c3RlbQorYW5kIHRoZW4gY3JlYXRlIGFuIGltYWdlIG91dCBvZiBpdCB1c2luZyB0aGUgdG9vbHMgcHJvdmlkZWQgYnkKK2BHcmFwaHZpeiA8aHR0cDovL3d3dy5ncmFwaHZpei5vcmcvPmBfOjoKKworICAgZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0IGdldF9kaXN0cmlidXRpb25zCisgICBmcm9tIHBhY2thZ2luZy5kZXBncmFwaCBpbXBvcnQgZ2VuZXJhdGVfZ3JhcGgKKworICAgZGlzdHMgPSBsaXN0KGdldF9kaXN0cmlidXRpb25zKCkpCisgICBncmFwaCA9IGdlbmVyYXRlX2dyYXBoKGRpc3RzKQorCitJdCB3b3VsZCBiZSBpbnRlcmVzdGluZyB0byBwcmludCBvdXQgdGhlIG1pc3NpbmcgcmVxdWlyZW1lbnRzLiAgVGhpcyBjYW4gYmUgZG9uZQorYXMgZm9sbG93czo6CisKKyAgIGZvciBkaXN0LCByZXFzIGluIGdyYXBoLm1pc3NpbmcuaXRlbXMoKToKKyAgICAgICBpZiByZXFzOgorICAgICAgICAgICByZXFzID0gJyAsJy5qb2luKHJlcHIocmVxKSBmb3IgcmVxIGluIHJlcXMpCisgICAgICAgICAgIHByaW50KCdNaXNzaW5nIGRlcGVuZGVuY2llcyBmb3IgJXI6ICVzJyAlIChkaXN0Lm5hbWUsIHJlcXMpKQorCitFeGFtcGxlIG91dHB1dCBpczoKKworLi4gY29kZS1ibG9jazo6IG5vbmUKKworICAgTWlzc2luZyBkZXBlbmRlbmNpZXMgZm9yICdUdXJib0NoZWV0YWgnOiAnQ2hlZXRhaCcKKyAgIE1pc3NpbmcgZGVwZW5kZW5jaWVzIGZvciAnVHVyYm9HZWFycyc6ICdDb25maWdPYmonLCAnRGVjb3JhdG9yVG9vbHMnLCAnUnVsZURpc3BhdGNoJworICAgTWlzc2luZyBkZXBlbmRlbmNpZXMgZm9yICdqb2NrZXknOiAnUHlLREU0LmtkZWNvcmUnLCAnUHlLREU0LmtkZXVpJywgJ1B5UXQ0LlF0Q29yZScsICdQeVF0NC5RdEd1aScKKyAgIE1pc3NpbmcgZGVwZW5kZW5jaWVzIGZvciAnVHVyYm9LaWQnOiAna2lkJworICAgTWlzc2luZyBkZXBlbmRlbmNpZXMgZm9yICdUdXJib0pzb246ICdEZWNvcmF0b3JUb29scycsICdSdWxlRGlzcGF0Y2gnCisKK05vdywgd2UgcHJvY2VlZCB3aXRoIGdlbmVyYXRpbmcgYSBncmFwaGljYWwgcmVwcmVzZW50YXRpb24gb2YgdGhlIGdyYXBoLiBGaXJzdAord2Ugd3JpdGUgaXQgdG8gYSBmaWxlLCBhbmQgdGhlbiB3ZSBnZW5lcmF0ZSBhIFBORyBpbWFnZSB1c2luZyB0aGUKKzpwcm9ncmFtOmBkb3RgIGNvbW1hbmQtbGluZSB0b29sOjoKKworICAgZnJvbSBwYWNrYWdpbmcuZGVwZ3JhcGggaW1wb3J0IGdyYXBoX3RvX2RvdAorICAgd2l0aCBvcGVuKCdvdXRwdXQuZG90JywgJ3cnKSBhcyBmOgorICAgICAgIyBvbmx5IHNob3cgdGhlIGludGVyZXN0aW5nIGRpc3RyaWJ1dGlvbnMsIHNraXBwaW5nIHRoZSBkaXNjb25uZWN0ZWQgb25lcworICAgICAgZ3JhcGhfdG9fZG90KGdyYXBoLCBmLCBza2lwX2Rpc2Nvbm5lY3RlZD1UcnVlKQorCitXZSBjYW4gY3JlYXRlIHRoZSBmaW5hbCBwaWN0dXJlIHVzaW5nOgorCisuLiBjb2RlLWJsb2NrOjogc2gKKworICAgJCBkb3QgLVRwbmcgb3V0cHV0LmRvdCA+IG91dHB1dC5wbmcKKworQW4gZXhhbXBsZSByZXN1bHQgaXM6CisKKy4uIGZpZ3VyZTo6IGRlcGdyYXBoLW91dHB1dC5wbmcKKyAgIDphbHQ6IEV4YW1wbGUgUE5HIG91dHB1dCBmcm9tIHBhY2thZ2luZy5kZXBncmFwaCBhbmQgZG90CisKK0lmIHlvdSB3YW50IHRvIGluY2x1ZGUgZWdnIGRpc3RyaWJ1dGlvbnMgYXMgd2VsbCwgdGhlbiB0aGUgY29kZSByZXF1aXJlcyBvbmx5CitvbmUgY2hhbmdlLCBuYW1lbHkgdGhlIGxpbmU6OgorCisgICBkaXN0cyA9IGxpc3QocGFja2FnaW5nLmRhdGFiYXNlLmdldF9kaXN0cmlidXRpb25zKCkpCisKK2hhcyB0byBiZSByZXBsYWNlZCB3aXRoOjoKKworICAgZGlzdHMgPSBsaXN0KHBhY2thZ2luZy5kYXRhYmFzZS5nZXRfZGlzdHJpYnV0aW9ucyh1c2VfZWdnX2luZm89VHJ1ZSkpCisKK09uIG1hbnkgcGxhdGZvcm1zLCBhIHJpY2hlciBncmFwaCBpcyBvYnRhaW5lZCBiZWNhdXNlIGF0IHRoZSBtb21lbnQgbW9zdAorZGlzdHJpYnV0aW9ucyBhcmUgcHJvdmlkZWQgaW4gdGhlIGVnZyByYXRoZXIgdGhhbiB0aGUgbmV3IHN0YW5kYXJkCitgYC5kaXN0LWluZm9gYCBmb3JtYXQuCisKKy4uIFhYWCBtaXNzaW5nIGltYWdlCisKKyAgIEFuIGV4YW1wbGUgb2YgYSBtb3JlIGludm9sdmVkIGdyYXBoIGZvciBpbGx1c3RyYXRpdmUgcmVhc29ucyBjYW4gYmUgc2VlbgorICAgaGVyZToKKworICAgLi4gaW1hZ2U6OiBkZXBncmFwaF9iaWcucG5nCisKKworTGlzdCBhbGwgZGVwZW5kZW50IGRpc3RyaWJ1dGlvbnMKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK1dlIHdpbGwgbGlzdCBhbGwgZGlzdHJpYnV0aW9ucyB0aGF0IGFyZSBkZXBlbmRlbnQgb24gc29tZSBnaXZlbiBkaXN0aWJ1dGlvbi4KK1RoaXMgdGltZSwgZWdnIGRpc3RyaWJ1dGlvbnMgd2lsbCBiZSBjb25zaWRlcmVkIGFzIHdlbGw6OgorCisgICBpbXBvcnQgc3lzCisgICBmcm9tIHBhY2thZ2luZy5kYXRhYmFzZSBpbXBvcnQgZ2V0X2Rpc3RyaWJ1dGlvbiwgZ2V0X2Rpc3RyaWJ1dGlvbnMKKyAgIGZyb20gcGFja2FnaW5nLmRlcGdyYXBoIGltcG9ydCBkZXBlbmRlbnRfZGlzdHMKKworICAgZGlzdHMgPSBsaXN0KGdldF9kaXN0cmlidXRpb25zKHVzZV9lZ2dfaW5mbz1UcnVlKSkKKyAgIGRpc3QgPSBnZXRfZGlzdHJpYnV0aW9uKCdiYWNvbicsIHVzZV9lZ2dfaW5mbz1UcnVlKQorICAgaWYgZGlzdCBpcyBOb25lOgorICAgICAgIHN5cy5leGl0KCdObyBzdWNoIGRpc3RyaWJ1dGlvbiBpbiB0aGUgc3lzdGVtJykKKworICAgZGVwcyA9IGRlcGVuZGVudF9kaXN0cyhkaXN0cywgZGlzdCkKKyAgIGRlcHMgPSAnLCAnLmpvaW4ocmVwcih4Lm5hbWUpIGZvciB4IGluIGRlcHMpCisgICBwcmludCgnRGlzdHJpYnV0aW9ucyBkZXBlbmRpbmcgb24gJXI6ICVzJyAlIChkaXN0Lm5hbWUsIGRlcHMpKQorCitBbmQgdGhpcyBpcyBleGFtcGxlIG91dHB1dDoKKworLi4gd2l0aCB0aGUgZGVwZW5kZW5jeSByZWxhdGlvbnNoaXBzIGFzIGluIHRoZSBwcmV2aW91cyBzZWN0aW9uCisgICAoZGVwZ3JhcGhfYmlnKQorCisuLiBjb2RlLWJsb2NrOjogbm9uZQorCisgICBEaXN0cmlidXRpb25zIGRlcGVuZGluZyBvbiAnYmFjb24nOiAndG93ZWwtc3R1ZmYnLCAnY2hveGllJywgJ2dyYW1tYXInCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuZGlzdC5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuZGlzdC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjVjYjYyYgotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5kaXN0LnJzdApAQCAtMCwwICsxLDEwOCBAQAorOm1vZDpgcGFja2FnaW5nLmRpc3RgIC0tLSBUaGUgRGlzdHJpYnV0aW9uIGNsYXNzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLmRpc3QKKyAgIDpzeW5vcHNpczogQ29yZSBEaXN0cmlidXRpb24gY2xhc3MuCisKKworVGhpcyBtb2R1bGUgcHJvdmlkZXMgdGhlIDpjbGFzczpgRGlzdHJpYnV0aW9uYCBjbGFzcywgd2hpY2ggcmVwcmVzZW50cyB0aGUKK21vZHVsZSBkaXN0cmlidXRpb24gYmVpbmcgYnVpbHQvcGFja2FnZWQvZGlzdHJpYnV0ZWQvaW5zdGFsbGVkLgorCisuLiBjbGFzczo6IERpc3RyaWJ1dGlvbihhcmd1bWVudHMpCisKKyAgIEEgOmNsYXNzOmBEaXN0cmlidXRpb25gIGRlc2NyaWJlcyBob3cgdG8gYnVpbGQsIHBhY2thZ2UsIGRpc3RyaWJ1dGUgYW5kCisgICBpbnN0YWxsIGEgUHl0aG9uIHByb2plY3QuCisKKyAgIFRoZSBhcmd1bWVudHMgYWNjZXB0ZWQgYnkgdGhlIGNvbnN0cnVjdG9yIGFyZSBsYWlkIG91dCBpbiB0aGUgZm9sbG93aW5nCisgICB0YWJsZS4gIFNvbWUgb2YgdGhlbSB3aWxsIGVuZCB1cCBpbiBhIG1ldGFkYXRhIG9iamVjdCwgdGhlIHJlc3Qgd2lsbCBiZWNvbWUKKyAgIGRhdGEgYXR0cmlidXRlcyBvZiB0aGUgOmNsYXNzOmBEaXN0cmlidXRpb25gIGluc3RhbmNlLgorCisgICAuLiBUT0RPIGltcHJvdmUgY29uc3RydWN0b3IgdG8gdGFrZSBhIE1ldGFkYXRhIG9iamVjdCArIG5hbWVkIHBhcmFtcz8KKyAgICAgIChpLmUuIERpc3RyaWJ1dGlvbihtZXRhZGF0YSwgY21kY2xhc3MsIHB5X21vZHVsZXMsIGV0YykKKyAgIC4uIFRPRE8gYWxzbyByZW1vdmUgb2Jzb2xldGUoPykgc2NyaXB0X25hbWUsIGV0Yy4gcGFyYW1ldGVycz8gIHNlZSB3aGF0CisgICAgICBweTJleGUgYW5kIG90aGVyIHRvb2xzIG5lZWQKKworICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IGFyZ3VtZW50IG5hbWUgICAgICB8IHZhbHVlICAgICAgICAgICAgICAgICAgICAgICAgICB8IHR5cGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICs9PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KworICAgfCAqbmFtZSogICAgICAgICAgICAgfCBUaGUgbmFtZSBvZiB0aGUgcHJvamVjdCAgICAgICAgfCBhIHN0cmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKnZlcnNpb24qICAgICAgICAgIHwgVGhlIHZlcnNpb24gbnVtYmVyIG9mIHRoZSAgICAgIHwgYSBzdHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCByZWxlYXNlOyBzZWUgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IDptb2Q6YHBhY2thZ2luZy52ZXJzaW9uYCAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqc3VtbWFyeSogICAgICAgICAgfCBBIHNpbmdsZSBsaW5lIGRlc2NyaWJpbmcgdGhlICAgfCBhIHN0cmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHByb2plY3QgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqZGVzY3JpcHRpb24qICAgICAgfCBMb25nZXIgZGVzY3JpcHRpb24gb2YgdGhlICAgICAgfCBhIHN0cmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHByb2plY3QgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqYXV0aG9yKiAgICAgICAgICAgfCBUaGUgbmFtZSBvZiB0aGUgcHJvamVjdCBhdXRob3IgfCBhIHN0cmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKmF1dGhvcl9lbWFpbCogICAgIHwgVGhlIGVtYWlsIGFkZHJlc3Mgb2YgdGhlICAgICAgIHwgYSBzdHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0IGF1dGhvciAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgKm1haW50YWluZXIqICAgICAgIHwgVGhlIG5hbWUgb2YgdGhlIGN1cnJlbnQgICAgICAgIHwgYSBzdHJpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCBtYWludGFpbmVyLCBpZiBkaWZmZXJlbnQgZnJvbSAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHRoZSBhdXRob3IgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqbWFpbnRhaW5lcl9lbWFpbCogfCBUaGUgZW1haWwgYWRkcmVzcyBvZiB0aGUgICAgICAgfCBhIHN0cmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IGN1cnJlbnQgbWFpbnRhaW5lciwgaWYgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgZGlmZmVyZW50IGZyb20gdGhlIGF1dGhvciAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpob21lX3BhZ2UqICAgICAgICB8IEEgVVJMIGZvciB0aGUgcHJvZWpjdCAgICAgICAgICB8IGEgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgKGhvbWVwYWdlKSAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpkb3dubG9hZF91cmwqICAgICB8IEEgVVJMIHRvIGRvd25sb2FkIHRoZSBwcm9qZWN0ICB8IGEgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqcGFja2FnZXMqICAgICAgICAgfCBBIGxpc3Qgb2YgUHl0aG9uIHBhY2thZ2VzIHRoYXQgfCBhIGxpc3Qgb2Ygc3RyaW5ncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHBhY2thZ2luZyB3aWxsIG1hbmlwdWxhdGUgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqcHlfbW9kdWxlcyogICAgICAgfCBBIGxpc3Qgb2YgUHl0aG9uIG1vZHVsZXMgdGhhdCAgfCBhIGxpc3Qgb2Ygc3RyaW5ncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHBhY2thZ2luZyB3aWxsIG1hbmlwdWxhdGUgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqc2NyaXB0cyogICAgICAgICAgfCBBIGxpc3Qgb2Ygc3RhbmRhbG9uZSBzY3JpcHRzICAgfCBhIGxpc3Qgb2Ygc3RyaW5ncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHRvIGJlIGJ1aWx0IGFuZCBpbnN0YWxsZWQgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqZXh0X21vZHVsZXMqICAgICAgfCBBIGxpc3Qgb2YgUHl0aG9uIGV4dGVuc2lvbnMgdG8gfCBhIGxpc3Qgb2YgaW5zdGFuY2VzIG9mICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IGJlIGJ1aWx0ICAgICAgICAgICAgICAgICAgICAgICB8IDpjbGFzczpgcGFja2FnaW5nLmNvbXBpbGVyLmV4dGVuc2lvbi5FeHRlbnNpb25gICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqY2xhc3NpZmllcnMqICAgICAgfCBBIGxpc3Qgb2YgY2F0ZWdvcmllcyBmb3IgdGhlICAgfCBhIGxpc3Qgb2Ygc3RyaW5nczsgdmFsaWQgY2xhc3NpZmllcnMgYXJlIGxpc3RlZCBvbiBgUHlQaSAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IGRpc3RyaWJ1dGlvbiAgICAgICAgICAgICAgICAgICB8IDxodHRwOi8vcHlwaS5weXRob24ub3JnL3B5cGk/OmFjdGlvbj1saXN0X2NsYXNzaWZpZXJzPmBfLiAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqZGlzdGNsYXNzKiAgICAgICAgfCB0aGUgOmNsYXNzOmBEaXN0cmlidXRpb25gICAgICAgfCBhIHN1YmNsYXNzIG9mICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IGNsYXNzIHRvIHVzZSAgICAgICAgICAgICAgICAgICB8IDpjbGFzczpgcGFja2FnaW5nLmRpc3QuRGlzdHJpYnV0aW9uYCAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqc2NyaXB0X25hbWUqICAgICAgfCBUaGUgbmFtZSBvZiB0aGUgc2V0dXAucHkgICAgICAgfCBhIHN0cmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHNjcmlwdCAtIGRlZmF1bHRzIHRvICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgYGBzeXMuYXJndlswXWBgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpzY3JpcHRfYXJncyogICAgICB8IEFyZ3VtZW50cyB0byBzdXBwbHkgdG8gdGhlICAgICB8IGEgbGlzdCBvZiBzdHJpbmdzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgc2V0dXAgc2NyaXB0ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpvcHRpb25zKiAgICAgICAgICB8IGRlZmF1bHQgb3B0aW9ucyBmb3IgdGhlIHNldHVwICB8IGEgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgc2NyaXB0ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpsaWNlbnNlKiAgICAgICAgICB8IFRoZSBsaWNlbnNlIGZvciB0aGUgICAgICAgICAgICB8IGEgc3RyaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgZGlzdHJpYnV0aW9uOyBzaG91bGQgYmUgdXNlZCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCB3aGVuIHRoZXJlIGlzIG5vIHN1aXRhYmxlICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IExpY2Vuc2UgY2xhc3NpZmllciwgb3IgdG8gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgcmVmaW5lIGEgY2xhc3NpZmllciAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICprZXl3b3JkcyogICAgICAgICB8IERlc2NyaXB0aXZlIGtleXdvcmRzOyB1c2VkIGJ5ICB8IGEgbGlzdCBvZiBzdHJpbmdzIG9yIGEgY29tbWEtc2VwYXJhdGVkIHN0cmluZyAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgY2F0YWxvZ3Mgc3VjaCBhcyBQeVBJICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8ICpwbGF0Zm9ybXMqICAgICAgICB8IFBsYXRmb3JtcyBjb21wYXRpYmxlIHdpdGggdGhpcyB8IGEgbGlzdCBvZiBzdHJpbmdzIG9yIGEgY29tbWEtc2VwYXJhdGVkIHN0cmluZyAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICAgIHwgZGlzdHJpYnV0aW9uOyBzaG91bGQgYmUgdXNlZCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgfCB3aGVuIHRoZXJlIGlzIG5vIHN1aXRhYmxlICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IFBsYXRmb3JtIGNsYXNzaWZpZXIgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqY21kY2xhc3MqICAgICAgICAgfCBBIG1hcHBpbmcgb2YgY29tbWFuZCBuYW1lcyB0byAgfCBhIGRpY3Rpb25hcnkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IDpjbGFzczpgQ29tbWFuZGAgc3ViY2xhc3NlcyAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqZGF0YV9maWxlcyogICAgICAgfCBBIGxpc3Qgb2YgZGF0YSBmaWxlcyB0byAgICAgICAgfCBhIGxpc3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IGluc3RhbGwgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCAqcGFja2FnZV9kaXIqICAgICAgfCBBIG1hcHBpbmcgb2YgUHl0aG9uIHBhY2thZ2VzICAgfCBhIGRpY3Rpb25hcnkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgICB8IHRvIGRpcmVjdG9yeSBuYW1lcyAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmZhbmN5X2dldG9wdC5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuZmFuY3lfZ2V0b3B0LnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYzY5MzQxCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmZhbmN5X2dldG9wdC5yc3QKQEAgLTAsMCArMSw3NSBAQAorOm1vZDpgcGFja2FnaW5nLmZhbmN5X2dldG9wdGAgLS0tIFdyYXBwZXIgYXJvdW5kIHRoZSBnZXRvcHQgbW9kdWxlCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLmZhbmN5X2dldG9wdAorICAgOnN5bm9wc2lzOiBBZGRpdGlvbmFsIGdldG9wdCBmdW5jdGlvbmFsaXR5LgorCisKKy4uIHdhcm5pbmc6OgorICAgVGhpcyBtb2R1bGUgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZXBsYWNlZCB3aXRoIDptb2Q6YG9wdHBhcnNlYC4KKworVGhpcyBtb2R1bGUgcHJvdmlkZXMgYSB3cmFwcGVyIGFyb3VuZCB0aGUgc3RhbmRhcmQgOm1vZDpgZ2V0b3B0YCBtb2R1bGUgdGhhdAorcHJvdmlkZXMgdGhlIGZvbGxvd2luZyBhZGRpdGlvbmFsIGZlYXR1cmVzOgorCisqIHNob3J0IGFuZCBsb25nIG9wdGlvbnMgYXJlIHRpZWQgdG9nZXRoZXIKKworKiBvcHRpb25zIGhhdmUgaGVscCBzdHJpbmdzLCBzbyA6ZnVuYzpgZmFuY3lfZ2V0b3B0YCBjb3VsZCBwb3RlbnRpYWxseSBjcmVhdGUgYQorICBjb21wbGV0ZSB1c2FnZSBzdW1tYXJ5CisKKyogb3B0aW9ucyBzZXQgYXR0cmlidXRlcyBvZiBhIHBhc3NlZC1pbiBvYmplY3QKKworKiBib29sZWFuIG9wdGlvbnMgY2FuIGhhdmUgIm5lZ2F0aXZlIGFsaWFzZXMiIC0tLSBlLmcuIGlmIDpvcHRpb246YC0tcXVpZXRgIGlzCisgIHRoZSAibmVnYXRpdmUgYWxpYXMiIG9mIDpvcHRpb246YC0tdmVyYm9zZWAsIHRoZW4gOm9wdGlvbjpgLS1xdWlldGAgb24gdGhlCisgIGNvbW1hbmQgbGluZSBzZXRzICp2ZXJib3NlKiB0byBmYWxzZS4KKworLi4gZnVuY3Rpb246OiBmYW5jeV9nZXRvcHQob3B0aW9ucywgbmVnYXRpdmVfb3B0LCBvYmplY3QsIGFyZ3MpCisKKyAgIFdyYXBwZXIgZnVuY3Rpb24uICpvcHRpb25zKiBpcyBhIGxpc3Qgb2YgYGAobG9uZ19vcHRpb24sIHNob3J0X29wdGlvbiwKKyAgIGhlbHBfc3RyaW5nKWBgIDMtdHVwbGVzIGFzIGRlc2NyaWJlZCBpbiB0aGUgY29uc3RydWN0b3IgZm9yCisgICA6Y2xhc3M6YEZhbmN5R2V0b3B0YC4gKm5lZ2F0aXZlX29wdCogc2hvdWxkIGJlIGEgZGljdGlvbmFyeSBtYXBwaW5nIG9wdGlvbiBuYW1lcworICAgdG8gb3B0aW9uIG5hbWVzLCBib3RoIHRoZSBrZXkgYW5kIHZhbHVlIHNob3VsZCBiZSBpbiB0aGUgKm9wdGlvbnMqIGxpc3QuCisgICAqb2JqZWN0KiBpcyBhbiBvYmplY3Qgd2hpY2ggd2lsbCBiZSB1c2VkIHRvIHN0b3JlIHZhbHVlcyAoc2VlIHRoZSA6bWV0aDpgZ2V0b3B0YAorICAgbWV0aG9kIG9mIHRoZSA6Y2xhc3M6YEZhbmN5R2V0b3B0YCBjbGFzcykuICphcmdzKiBpcyB0aGUgYXJndW1lbnQgbGlzdC4gV2lsbCB1c2UKKyAgIGBgc3lzLmFyZ3ZbMTpdYGAgaWYgeW91IHBhc3MgYGBOb25lYGAgYXMgKmFyZ3MqLgorCisKKy4uIGNsYXNzOjogRmFuY3lHZXRvcHQoW29wdGlvbl90YWJsZT1Ob25lXSkKKworICAgVGhlIG9wdGlvbl90YWJsZSBpcyBhIGxpc3Qgb2YgMy10dXBsZXM6IGBgKGxvbmdfb3B0aW9uLCBzaG9ydF9vcHRpb24sCisgICBoZWxwX3N0cmluZylgYAorCisgICBJZiBhbiBvcHRpb24gdGFrZXMgYW4gYXJndW1lbnQsIGl0cyAqbG9uZ19vcHRpb24qIHNob3VsZCBoYXZlIGBgJz0nYGAgYXBwZW5kZWQ7CisgICAqc2hvcnRfb3B0aW9uKiBzaG91bGQganVzdCBiZSBhIHNpbmdsZSBjaGFyYWN0ZXIsIG5vIGBgJzonYGAgaW4gYW55IGNhc2UuCisgICAqc2hvcnRfb3B0aW9uKiBzaG91bGQgYmUgYGBOb25lYGAgaWYgYSAqbG9uZ19vcHRpb24qIGRvZXNuJ3QgaGF2ZSBhCisgICBjb3JyZXNwb25kaW5nICpzaG9ydF9vcHRpb24qLiBBbGwgb3B0aW9uIHR1cGxlcyBtdXN0IGhhdmUgbG9uZyBvcHRpb25zLgorCitUaGUgOmNsYXNzOmBGYW5jeUdldG9wdGAgY2xhc3MgcHJvdmlkZXMgdGhlIGZvbGxvd2luZyBtZXRob2RzOgorCisKKy4uIG1ldGhvZDo6IEZhbmN5R2V0b3B0LmdldG9wdChbYXJncz1Ob25lLCBvYmplY3Q9Tm9uZV0pCisKKyAgIFBhcnNlIGNvbW1hbmQtbGluZSBvcHRpb25zIGluIGFyZ3MuIFN0b3JlIGFzIGF0dHJpYnV0ZXMgb24gKm9iamVjdCouCisKKyAgIElmICphcmdzKiBpcyBgYE5vbmVgYCBvciBub3Qgc3VwcGxpZWQsIHVzZXMgYGBzeXMuYXJndlsxOl1gYC4gIElmICpvYmplY3QqIGlzCisgICBgYE5vbmVgYCBvciBub3Qgc3VwcGxpZWQsIGNyZWF0ZXMgYSBuZXcgOmNsYXNzOmBPcHRpb25EdW1teWAgaW5zdGFuY2UsIHN0b3JlcworICAgb3B0aW9uIHZhbHVlcyB0aGVyZSwgYW5kIHJldHVybnMgYSB0dXBsZSBgYChhcmdzLCBvYmplY3QpYGAuICBJZiAqb2JqZWN0KiBpcworICAgc3VwcGxpZWQsIGl0IGlzIG1vZGlmaWVkIGluIHBsYWNlIGFuZCA6ZnVuYzpgZ2V0b3B0YCBqdXN0IHJldHVybnMgKmFyZ3MqOyBpbgorICAgYm90aCBjYXNlcywgdGhlIHJldHVybmVkICphcmdzKiBpcyBhIG1vZGlmaWVkIGNvcHkgb2YgdGhlIHBhc3NlZC1pbiAqYXJncyogbGlzdCwKKyAgIHdoaWNoIGlzIGxlZnQgdW50b3VjaGVkLgorCisgICAuLiBUT0RPIGFuZCBhcmdzIHJldHVybmVkIGFyZT8KKworCisuLiBtZXRob2Q6OiBGYW5jeUdldG9wdC5nZXRfb3B0aW9uX29yZGVyKCkKKworICAgUmV0dXJucyB0aGUgbGlzdCBvZiBgYChvcHRpb24sIHZhbHVlKWBgIHR1cGxlcyBwcm9jZXNzZWQgYnkgdGhlIHByZXZpb3VzIHJ1biBvZgorICAgOm1ldGg6YGdldG9wdGAgIFJhaXNlcyA6ZXhjOmBSdW50aW1lRXJyb3JgIGlmIDptZXRoOmBnZXRvcHRgIGhhc24ndCBiZWVuIGNhbGxlZAorICAgeWV0LgorCisKKy4uIG1ldGhvZDo6IEZhbmN5R2V0b3B0LmdlbmVyYXRlX2hlbHAoW2hlYWRlcj1Ob25lXSkKKworICAgR2VuZXJhdGUgaGVscCB0ZXh0IChhIGxpc3Qgb2Ygc3RyaW5ncywgb25lIHBlciBzdWdnZXN0ZWQgbGluZSBvZiBvdXRwdXQpIGZyb20KKyAgIHRoZSBvcHRpb24gdGFibGUgZm9yIHRoaXMgOmNsYXNzOmBGYW5jeUdldG9wdGAgb2JqZWN0LgorCisgICBJZiBzdXBwbGllZCwgcHJpbnRzIHRoZSBzdXBwbGllZCAqaGVhZGVyKiBhdCB0aGUgdG9wIG9mIHRoZSBoZWxwLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmluc3RhbGwucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLmluc3RhbGwucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNlMDA3NTAKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcuaW5zdGFsbC5yc3QKQEAgLTAsMCArMSwxMTIgQEAKKzptb2Q6YHBhY2thZ2luZy5pbnN0YWxsYCAtLS0gSW5zdGFsbGF0aW9uIHRvb2xzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcuaW5zdGFsbAorICAgOnN5bm9wc2lzOiBEb3dubG9hZCBhbmQgaW5zdGFsbGF0aW9uIGJ1aWxkaW5nIGJsb2NrcworCisKK1BhY2thZ2luZyBwcm92aWRlcyBhIHNldCBvZiB0b29scyB0byBkZWFsIHdpdGggZG93bmxvYWRzIGFuZCBpbnN0YWxsYXRpb24gb2YKK2Rpc3RyaWJ1dGlvbnMuICBUaGVpciByb2xlIGlzIHRvIGRvd25sb2FkIHRoZSBkaXN0cmlidXRpb24gZnJvbSBpbmRleGVzLCByZXNvbHZlCit0aGUgZGVwZW5kZW5jaWVzLCBhbmQgcHJvdmlkZSBhIHNhZmUgd2F5IHRvIGluc3RhbGwgZGlzdHJpYnV0aW9ucy4gIEFuIG9wZXJhdGlvbgordGhhdCBmYWlscyB3aWxsIGNsZWFubHkgcm9sbCBiYWNrLCBub3QgbGVhdmUgaGFsZi1pbnN0YWxsZWQgZGlzdHJpYnV0aW9ucyBvbiB0aGUKK3N5c3RlbS4gIEhlcmUncyB0aGUgYmFzaWMgcHJvY2VzcyBmb2xsb3dlZDoKKworIy4gTW92ZSBhbGwgZGlzdHJpYnV0aW9ucyB0aGF0IHdpbGwgYmUgcmVtb3ZlZCB0byBhIHRlbXBvcmFyeSBsb2NhdGlvbi4KKworIy4gSW5zdGFsbCBhbGwgdGhlIGRpc3RyaWJ1dGlvbnMgdGhhdCB3aWxsIGJlIGluc3RhbGxlZCBpbiBhIHRlbXBvcmFyeSBsb2NhdGlvbi4KKworIy4gSWYgdGhlIGluc3RhbGxhdGlvbiBmYWlscywgbW92ZSB0aGUgc2F2ZWQgZGlzdHJpYnV0aW9ucyBiYWNrIHRvIHRoZWlyCisgICBsb2NhdGlvbiBhbmQgZGVsZXRlIHRoZSBpbnN0YWxsZWQgZGlzdHJpYnV0aW9ucy4KKworIy4gT3RoZXJ3aXNlLCBtb3ZlIHRoZSBpbnN0YWxsZWQgZGlzdHJpYnV0aW9ucyB0byB0aGUgcmlnaHQgbG9jYXRpb24gYW5kIGRlbGV0ZQorICAgdGhlIHRlbXBvcmFyeSBsb2NhdGlvbnMuCisKK1RoaXMgaXMgYSBoaWdoZXItbGV2ZWwgbW9kdWxlIGJ1aWx0IG9uIDptb2Q6YHBhY2thZ2luZy5kYXRhYmFzZWAgYW5kCis6bW9kOmBwYWNrYWdpbmcucHlwaWAuCisKKworUHVibGljIGZ1bmN0aW9ucworLS0tLS0tLS0tLS0tLS0tLQorCisuLiBmdW5jdGlvbjo6IGdldF9pbmZvcyhyZXF1aXJlbWVudHMsIGluZGV4PU5vbmUsIGluc3RhbGxlZD1Ob25lLCBcCisgICAgICAgICAgICAgICAgICAgICAgICBwcmVmZXJfZmluYWw9VHJ1ZSkKKworICAgUmV0dXJuIGluZm9ybWF0aW9uIGFib3V0IHdoYXQncyBnb2luZyB0byBiZSBpbnN0YWxsZWQgYW5kIHVwZ3JhZGVkLgorICAgKnJlcXVpcmVtZW50cyogaXMgYSBzdHJpbmcgY29udGFpbmluZyB0aGUgcmVxdWlyZW1lbnRzIGZvciB0aGlzCisgICBwcm9qZWN0LCBmb3IgZXhhbXBsZSBgYCdGb29CYXIgMS4xJ2BgIG9yIGBgJ0JhckJheiAoPDEuMiknYGAuCisKKyAgIC4uIFhYWCBhcmUgcmVxdWlyZW1lbnRzIGNvbW1hLXNlcGFyYXRlZD8KKworICAgSWYgeW91IHdhbnQgdG8gdXNlIGFub3RoZXIgaW5kZXggdGhhbiB0aGUgbWFpbiBQeVBJLCBnaXZlIGl0cyBVUkkgYXMgKmluZGV4KgorICAgYXJndW1lbnQuCisKKyAgICppbnN0YWxsZWQqIGlzIGEgbGlzdCBvZiBhbHJlYWR5IGluc3RhbGxlZCBkaXN0cmlidXRpb25zIHVzZWQgdG8gZmluZAorICAgc2F0aXNmaWVkIGRlcGVuZGVuY2llcywgb2Jzb2xldGVkIGRpc3RyaWJ1dGlvbnMgYW5kIGV2ZW50dWFsIGNvbmZsaWN0cy4KKworICAgQnkgZGVmYXVsdCwgYWxwaGEsIGJldGEgYW5kIGNhbmRpZGF0ZSB2ZXJzaW9ucyBhcmUgbm90IHBpY2tlZCB1cC4gIFNldAorICAgKnByZWZlcl9maW5hbCogdG8gZmFsc2UgdG8gYWNjZXB0IHRoZW0gdG9vLgorCisgICBUaGUgcmVzdWx0cyBhcmUgcmV0dXJuZWQgaW4gYSBkaWN0aW9uYXJ5IGNvbnRhaW5pbmcgYWxsIHRoZSBpbmZvcm1hdGlvbgorICAgbmVlZGVkIHRvIHBlcmZvcm0gaW5zdGFsbGF0aW9uIG9mIHRoZSByZXF1aXJlbWVudHMgd2l0aCB0aGUKKyAgIDpmdW5jOmBpbnN0YWxsX2Zyb21faW5mb3NgIGZ1bmN0aW9uOgorCisgICA+Pj4gZ2V0X2luc3RhbGxfaW5mbygiRm9vQmFyICg8PTEuMikiKQorICAgeydpbnN0YWxsJzogWzxGb29CYXIgMS4xPl0sICdyZW1vdmUnOiBbXSwgJ2NvbmZsaWN0JzogW119CisKKyAgIC4uIFRPRE8gc2hvdWxkIHJldHVybiB0dXBsZSBvciBuYW1lZCB0dXBsZSwgbm90IGRpY3QKKyAgIC4uIFRPRE8gdXNlICJwcmVkaWNhdGUiIG9yICJyZXF1aXJlbWVudCIgY29uc2lzdGVudGx5IGluIHZlcnNpb24gYW5kIGhlcmUKKyAgIC4uIEZJWE1FICJpbmZvIiBjYW5ub3QgYmUgcGx1cmFsIGluIEVuZ2xpc2gsIHMvaW5mb3MvaW5mby8KKworCisuLiBmdW5jdGlvbjo6IGluc3RhbGwocHJvamVjdCkKKworCisuLiBmdW5jdGlvbjo6IGluc3RhbGxfZGlzdHMoZGlzdHMsIHBhdGgsIHBhdGhzPU5vbmUpCisKKyAgIFNhZmVseSBpbnN0YWxsIGFsbCBkaXN0cmlidXRpb25zIHByb3ZpZGVkIGluICpkaXN0cyogaW50byAqcGF0aCouICAqcGF0aHMqIGlzCisgICBhIGxpc3Qgb2YgcGF0aHMgd2hlcmUgYWxyZWFkeS1pbnN0YWxsZWQgZGlzdHJpYnV0aW9ucyB3aWxsIGJlIGxvb2tlZCBmb3IgdG8KKyAgIGZpbmQgc2F0aXNmaWVkIGRlcGVuZGVuY2llcyBhbmQgY29uZmxpY3RzIChkZWZhdWx0OiA6ZGF0YTpgc3lzLnBhdGhgKS4KKyAgIFJldHVybnMgYSBsaXN0IG9mIGluc3RhbGxlZCBkaXN0cy4KKworICAgLi4gRklYTUUgZGlzdHMgYXJlIGluc3RhbmNlcyBvZiB3aGF0PworCisKKy4uIGZ1bmN0aW9uOjogaW5zdGFsbF9mcm9tX2luZm9zKGluc3RhbGxfcGF0aD1Ob25lLCBpbnN0YWxsPVtdLCByZW1vdmU9W10sIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZsaWN0cz1bXSwgcGF0aHM9Tm9uZSkKKworICAgU2FmZWx5IGluc3RhbGwgYW5kIHJlbW92ZSBnaXZlbiBkaXN0cmlidXRpb25zLiAgVGhpcyBmdW5jdGlvbiBpcyBkZXNpZ25lZCB0bworICAgd29yayB3aXRoIHRoZSByZXR1cm4gdmFsdWUgb2YgOmZ1bmM6YGdldF9pbmZvc2A6ICppbnN0YWxsKiwgKnJlbW92ZSogYW5kCisgICAqY29uZmxpY3RzKiBzaG91bGQgYmUgbGlzdCBvZiBkaXN0cmlidXRpb25zIHJldHVybmVkIGJ5IDpmdW5jOmBnZXRfaW5mb3NgLgorICAgSWYgKmluc3RhbGwqIGlzIG5vdCBlbXB0eSwgKmluc3RhbGxfcGF0aCogbXVzdCBiZSBnaXZlbiB0byBzcGVjaWZ5IHRoZSBwYXRoCisgICB3aGVyZSB0aGUgZGlzdHJpYnV0aW9ucyBzaG91bGQgYmUgaW5zdGFsbGVkLiAgKnBhdGhzKiBpcyBhIGxpc3Qgb2YgcGF0aHMKKyAgIHdoZXJlIGFscmVhZHktaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbnMgd2lsbCBiZSBsb29rZWQgZm9yIChkZWZhdWx0OgorICAgOmRhdGE6YHN5cy5wYXRoYCkuCisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgYSB2ZXJ5IGJhc2ljIGluc3RhbGxlcjsgaWYgKmNvbmZsaWN0cyogaXMgbm90IGVtcHR5LCB0aGUKKyAgIHN5c3RlbSB3aWxsIGJlIGluIGEgY29uZmxpY3Rpbmcgc3RhdGUgYWZ0ZXIgdGhlIGZ1bmN0aW9uIGNvbXBsZXRlcy4gIEl0IGlzIGEKKyAgIGJ1aWxkaW5nIGJsb2NrIGZvciBtb3JlIHNvcGhpc3RpY2F0ZWQgaW5zdGFsbGVycyB3aXRoIGNvbmZsaWN0IHJlc29sdXRpb24KKyAgIHN5c3RlbXMuCisKKyAgIC4uIFRPRE8gZG9jdW1lbnQgdHlwaWNhbCB2YWx1ZSBmb3IgaW5zdGFsbF9wYXRoCisgICAuLiBUT0RPIGRvY3VtZW50IGludGVncmF0aW9uIHdpdGggZGVmYXVsdCBzY2hlbWVzLCBlc3AuIHVzZXIgc2l0ZS1wYWNrYWdlcworCisKKy4uIGZ1bmN0aW9uOjogaW5zdGFsbF9sb2NhbF9wcm9qZWN0KHBhdGgpCisKKyAgIEluc3RhbGwgYSBkaXN0cmlidXRpb24gZnJvbSBhIHNvdXJjZSBkaXJlY3RvcnksIHdoaWNoIG11c3QgY29udGFpbiBlaXRoZXIgYQorICAgUGFja2FnaW5nLWNvbXBsaWFudCA6ZmlsZTpgc2V0dXAuY2ZnYCBmaWxlIG9yIGEgbGVnYWN5IERpc3R1dGlscworICAgOmZpbGU6YHNldHVwLnB5YCBzY3JpcHQgKGluIHdoaWNoIGNhc2UgRGlzdHV0aWxzIHdpbGwgYmUgdXNlZCB1bmRlciB0aGUgaG9vZAorICAgdG8gcGVyZm9ybSB0aGUgaW5zdGFsbGF0aW9uKS4KKworCisuLiBmdW5jdGlvbjo6ICByZW1vdmUocHJvamVjdF9uYW1lLCBwYXRocz1Ob25lLCBhdXRvX2NvbmZpcm09VHJ1ZSkKKworICAgUmVtb3ZlIG9uZSBkaXN0cmlidXRpb24gZnJvbSB0aGUgc3lzdGVtLgorCisgICAuLiBGSVhNRSB0aGlzIGlzIHRoZSBvbmx5IGZ1bmN0aW9uIHVzaW5nICJwcm9qZWN0IiBpbnN0ZWFkIG9mIGRpc3QvcmVsZWFzZQorCisuLgorICAgRXhhbXBsZSB1c2FnZQorICAgLS0tLS0tLS0tLS0tLS0KKworICAgR2V0IHRoZSBzY2hlbWUgb2Ygd2hhdCdzIGdvbm5hIGJlIGluc3RhbGxlZCBpZiB3ZSBpbnN0YWxsICJmb29iYXIiOgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLm1ldGFkYXRhLnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5tZXRhZGF0YS5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzMyZDY5ZAotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5tZXRhZGF0YS5yc3QKQEAgLTAsMCArMSwxMjIgQEAKKzptb2Q6YHBhY2thZ2luZy5tZXRhZGF0YWAgLS0tIE1ldGFkYXRhIGhhbmRsaW5nCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcubWV0YWRhdGEKKyAgIDpzeW5vcHNpczogQ2xhc3MgaG9sZGluZyB0aGUgbWV0YWRhdGEgb2YgYSByZWxlYXNlLgorCisKKy4uIFRPRE8gdXNlIHNwaGlueC1hdXRvZ2VuIHRvIGdlbmVyYXRlIGJhc2ljIGRvYyBmcm9tIHRoZSBkb2NzdHJpbmdzCisKKy4uIGNsYXNzOjogTWV0YWRhdGEKKworICAgVGhpcyBjbGFzcyBjYW4gcmVhZCBhbmQgd3JpdGUgbWV0YWRhdGEgZmlsZXMgY29tcGx5aW5nIHdpdGggYW55IG9mIHRoZQorICAgZGVmaW5lZCB2ZXJzaW9uczogMS4wICg6UEVQOmAyNDFgKSwgMS4xICg6UEVQOmAzMTRgKSBhbmQgMS4yICg6UEVQOmAzNDVgKS4gIEl0CisgICBpbXBsZW1lbnRzIG1ldGhvZHMgdG8gcGFyc2UgTWV0YWRhdGEgZmlsZXMgYW5kIHdyaXRlIHRoZW0sIGFuZCBhIG1hcHBpbmcKKyAgIGludGVyZmFjZSB0byBpdHMgY29udGVudHMuCisKKyAgIFRoZSA6UEVQOmAzNDVgIGltcGxlbWVudGF0aW9uIHN1cHBvcnRzIHRoZSBtaWNyby1sYW5ndWFnZSBmb3IgdGhlIGVudmlyb25tZW50CisgICBtYXJrZXJzLCBhbmQgZGlzcGxheXMgd2FybmluZ3Mgd2hlbiB2ZXJzaW9ucyB0aGF0IGFyZSBzdXBwb3NlZCB0byBiZQorICAgOlBFUDpgMzg2YC1jb21wbGlhbnQgYXJlIHZpb2xhdGluZyB0aGUgc3BlY2lmaWNhdGlvbi4KKworCitSZWFkaW5nIG1ldGFkYXRhCistLS0tLS0tLS0tLS0tLS0tCisKK1RoZSA6Y2xhc3M6YE1ldGFkYXRhYCBjbGFzcyBjYW4gYmUgaW5zdGFudGlhdGVkCit3aXRoIHRoZSBwYXRoIG9mIHRoZSBtZXRhZGF0YSBmaWxlLCBhbmQgcHJvdmlkZXMgYSBkaWN0LWxpa2UgaW50ZXJmYWNlIHRvIHRoZQordmFsdWVzOjoKKworICAgPj4+IGZyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YQorICAgPj4+IG1ldGFkYXRhID0gTWV0YWRhdGEoJ1BLRy1JTkZPJykKKyAgID4+PiBtZXRhZGF0YS5rZXlzKClbOjVdCisgICAoJ01ldGFkYXRhLVZlcnNpb24nLCAnTmFtZScsICdWZXJzaW9uJywgJ1BsYXRmb3JtJywgJ1N1cHBvcnRlZC1QbGF0Zm9ybScpCisgICA+Pj4gbWV0YWRhdGFbJ05hbWUnXQorICAgJ0NMVmF1bHQnCisgICA+Pj4gbWV0YWRhdGFbJ1ZlcnNpb24nXQorICAgJzAuNScKKyAgID4+PiBtZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddCisgICBbInB5d2luMzI7IHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInIiwgIlNwaGlueCJdCisKKworVGhlIGZpZWxkcyB0aGF0IHN1cHBvcnQgZW52aXJvbm1lbnQgbWFya2VycyBjYW4gYmUgYXV0b21hdGljYWxseSBpZ25vcmVkIGlmCit0aGUgb2JqZWN0IGlzIGluc3RhbnRpYXRlZCB1c2luZyB0aGUgYGBwbGF0Zm9ybV9kZXBlbmRlbnRgYCBvcHRpb24uCis6Y2xhc3M6YE1ldGFkYXRhYCB3aWxsIGludGVycHJldCBpbiB0aGlzIGNhc2UKK3RoZSBtYXJrZXJzIGFuZCB3aWxsIGF1dG9tYXRpY2FsbHkgcmVtb3ZlIHRoZSBmaWVsZHMgdGhhdCBhcmUgbm90IGNvbXBsaWFudAord2l0aCB0aGUgcnVubmluZyBlbnZpcm9ubWVudC4gSGVyZSdzIGFuIGV4YW1wbGUgdW5kZXIgTWFjIE9TIFguIFRoZSB3aW4zMgorZGVwZW5kZW5jeSB3ZSBzYXcgZWFybGllciBpcyBpZ25vcmVkOjoKKworICAgPj4+IGZyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YQorICAgPj4+IG1ldGFkYXRhID0gTWV0YWRhdGEoJ1BLRy1JTkZPJywgcGxhdGZvcm1fZGVwZW5kZW50PVRydWUpCisgICA+Pj4gbWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXQorICAgWydTcGhpbngnXQorCisKK0lmIHlvdSB3YW50IHRvIHByb3ZpZGUgeW91ciBvd24gZXhlY3V0aW9uIGNvbnRleHQsIGxldCdzIHNheSB0byB0ZXN0IHRoZQorbWV0YWRhdGEgdW5kZXIgYSBwYXJ0aWN1bGFyIGVudmlyb25tZW50IHRoYXQgaXMgbm90IHRoZSBjdXJyZW50IGVudmlyb25tZW50LAoreW91IGNhbiBwcm92aWRlIHlvdXIgb3duIHZhbHVlcyBpbiB0aGUgYGBleGVjdXRpb25fY29udGV4dGBgIG9wdGlvbiwgd2hpY2gKK2lzIHRoZSBkaWN0IHRoYXQgbWF5IGNvbnRhaW4gb25lIG9yIG1vcmUga2V5cyBvZiB0aGUgY29udGV4dCB0aGUgbWljcm8tbGFuZ3VhZ2UKK2V4cGVjdHMuCisKK0hlcmUncyBhbiBleGFtcGxlLCBzaW11bGF0aW5nIGEgd2luMzIgZW52aXJvbm1lbnQ6OgorCisgICA+Pj4gZnJvbSBwYWNrYWdpbmcubWV0YWRhdGEgaW1wb3J0IE1ldGFkYXRhCisgICA+Pj4gY29udGV4dCA9IHsnc3lzLnBsYXRmb3JtJzogJ3dpbjMyJ30KKyAgID4+PiBtZXRhZGF0YSA9IE1ldGFkYXRhKCdQS0ctSU5GTycsIHBsYXRmb3JtX2RlcGVuZGVudD1UcnVlLAorICAgLi4uICAgICAgICAgICAgICAgICAgICAgZXhlY3V0aW9uX2NvbnRleHQ9Y29udGV4dCkKKyAgIC4uLgorICAgPj4+IG1ldGFkYXRhWydSZXF1aXJlcy1EaXN0J10gPSBbInB5d2luMzI7IHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInIiwKKyAgIC4uLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTcGhpbngiXQorICAgLi4uCisgICA+Pj4gbWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXQorICAgWydweXdpbjMyJywgJ1NwaGlueCddCisKKworV3JpdGluZyBtZXRhZGF0YQorLS0tLS0tLS0tLS0tLS0tLQorCitXcml0aW5nIG1ldGFkYXRhIGNhbiBiZSBkb25lIHVzaW5nIHRoZSBgYHdyaXRlYGAgbWV0aG9kOjoKKworICAgPj4+IG1ldGFkYXRhLndyaXRlKCcvdG8vbXkvUEtHLUlORk8nKQorCitUaGUgY2xhc3Mgd2lsbCBwaWNrIHRoZSBiZXN0IHZlcnNpb24gZm9yIHRoZSBtZXRhZGF0YSwgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZXMKK3Byb3ZpZGVkLiBJZiBhbGwgdGhlIHZhbHVlcyBwcm92aWRlZCBleGlzdCBpbiBhbGwgdmVyc2lvbnMsIHRoZSBjbGFzcyB3aWxsCit1c2UgOmF0dHI6YFBLR19JTkZPX1BSRUZFUlJFRF9WRVJTSU9OYC4gIEl0IGlzIHNldCBieSBkZWZhdWx0IHRvIDEuMCwgdGhlIG1vc3QKK3dpZGVzcHJlYWQgdmVyc2lvbi4KKworCitDb25mbGljdCBjaGVja2luZyBhbmQgYmVzdCB2ZXJzaW9uCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1NvbWUgZmllbGRzIGluIDpQRVA6YDM0NWAgaGF2ZSB0byBjb21wbHkgd2l0aCB0aGUgdmVyc2lvbiBudW1iZXIgc3BlY2lmaWNhdGlvbgorZGVmaW5lZCBpbiA6UEVQOmAzODZgLiAgV2hlbiB0aGV5IGRvbid0IGNvbXBseSwgYSB3YXJuaW5nIGlzIGVtaXR0ZWQ6OgorCisgICA+Pj4gZnJvbSBwYWNrYWdpbmcubWV0YWRhdGEgaW1wb3J0IE1ldGFkYXRhCisgICA+Pj4gbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICA+Pj4gbWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSA9IFsnRnVua3kgKEdyb292aWUpJ10KKyAgICJGdW5reSAoR3Jvb3ZpZSkiIGlzIG5vdCBhIHZhbGlkIHByZWRpY2F0ZQorICAgPj4+IG1ldGFkYXRhWydSZXF1aXJlcy1EaXN0J10gPSBbJ0Z1bmt5ICgxLjIpJ10KKworU2VlIGFsc28gOm1vZDpgcGFja2FnaW5nLnZlcnNpb25gLgorCisKKy4uIFRPRE8gdGFsayBhYm91dCBjaGVjaygpCisKKworOm1vZDpgcGFja2FnaW5nLm1hcmtlcnNgIC0tLSBFbnZpcm9ubWVudCBtYXJrZXJzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLm1hcmtlcnMKKyAgIDpzeW5vcHNpczogTWljcm8tbGFuZ3VhZ2UgZm9yIGVudmlyb25tZW50IG1hcmtlcnMKKworCitUaGlzIGlzIGFuIGltcGxlbWVudGF0aW9uIG9mIGVudmlyb25tZW50IG1hcmtlcnMgYGFzIGRlZmluZWQgaW4gUEVQIDM0NQorPGh0dHA6Ly93d3cucHl0aG9uLm9yZy9kZXYvcGVwcy9wZXAtMDM0NS8jZW52aXJvbm1lbnQtbWFya2Vycz5gXy4gIEl0IGlzIHVzZWQKK2ZvciBzb21lIG1ldGFkYXRhIGZpZWxkcy4KKworLi4gZnVuY3Rpb246OiBpbnRlcnByZXQobWFya2VyLCBleGVjdXRpb25fY29udGV4dD1Ob25lKQorCisgICBJbnRlcnByZXQgYSBtYXJrZXIgYW5kIHJldHVybiBhIGJvb2xlYW4gcmVzdWx0IGRlcGVuZGluZyBvbiB0aGUgZW52aXJvbm1lbnQuCisgICBFeGFtcGxlOgorCisgICAgICA+Pj4gaW50ZXJwcmV0KCJweXRob25fdmVyc2lvbiA+ICcxLjAnIikKKyAgICAgIFRydWUKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5weXBpLmRpc3QucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnB5cGkuZGlzdC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFhYWFiNwotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5weXBpLmRpc3QucnN0CkBAIC0wLDAgKzEsMTE0IEBACis6bW9kOmBwYWNrYWdpbmcucHlwaS5kaXN0YCAtLS0gQ2xhc3NlcyByZXByZXNlbnRpbmcgcXVlcnkgcmVzdWx0cworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLnB5cGkuZGlzdAorICAgOnN5bm9wc2lzOiBDbGFzc2VzIHJlcHJlc2VudGluZyB0aGUgcmVzdWx0cyBvZiBxdWVyaWVzIHRvIGluZGV4ZXMuCisKKworSW5mb3JtYXRpb24gY29taW5nIGZyb20gdGhlIGluZGV4ZXMgaXMgaGVsZCBpbiBpbnN0YW5jZXMgb2YgdGhlIGNsYXNzZXMgZGVmaW5lZAoraW4gdGhpcyBtb2R1bGUuCisKK0tlZXAgaW4gbWluZCB0aGF0IGVhY2ggcHJvamVjdCAoZWcuIEZvb0JhcikgY2FuIGhhdmUgc2V2ZXJhbCByZWxlYXNlcworKGVnLiAxLjEsIDEuMiwgMS4zKSwgYW5kIGVhY2ggb2YgdGhlc2UgcmVsZWFzZXMgY2FuIGJlIHByb3ZpZGVkIGluIG11bHRpcGxlCitkaXN0cmlidXRpb25zIChlZy4gYSBzb3VyY2UgZGlzdHJpYnV0aW9uLCBhIGJpbmFyeSBvbmUsIGV0YykuCisKKworUmVsZWFzZUluZm8KKy0tLS0tLS0tLS0tCisKK0VhY2ggcmVsZWFzZSBoYXMgYSBwcm9qZWN0IG5hbWUsIHZlcnNpb24sIG1ldGFkYXRhLCBhbmQgcmVsYXRlZCBkaXN0cmlidXRpb25zLgorCitUaGlzIGluZm9ybWF0aW9uIGlzIHN0b3JlZCBpbiA6Y2xhc3M6YFJlbGVhc2VJbmZvYAorb2JqZWN0cy4KKworLi4gY2xhc3M6OiBSZWxlYXNlSW5mbworCisKK0Rpc3RJbmZvCistLS0tLS0tLS0KKworOmNsYXNzOmBEaXN0SW5mb2AgaXMgYSBzaW1wbGUgY2xhc3MgdGhhdCBjb250YWlucworaW5mb3JtYXRpb24gcmVsYXRlZCB0byBkaXN0cmlidXRpb25zOyBtYWlubHkgdGhlIFVSTHMgd2hlcmUgZGlzdHJpYnV0aW9ucworY2FuIGJlIGZvdW5kLgorCisuLiBjbGFzczo6IERpc3RJbmZvCisKKworUmVsZWFzZXNMaXN0CistLS0tLS0tLS0tLS0KKworVGhlIDptb2Q6YH5wYWNrYWdpbmcucHlwaS5kaXN0YCBtb2R1bGUgcHJvdmlkZXMgYSBjbGFzcyB3aGljaCB3b3Jrcword2l0aCBsaXN0cyBvZiA6Y2xhc3M6YFJlbGVhc2VJbmZvYCBjbGFzc2VzOwordXNlZCB0byBmaWx0ZXIgYW5kIG9yZGVyIHJlc3VsdHMuCisKKy4uIGNsYXNzOjogUmVsZWFzZXNMaXN0CisKKworRXhhbXBsZSB1c2FnZQorLS0tLS0tLS0tLS0tLQorCitCdWlsZCBhIGxpc3Qgb2YgcmVsZWFzZXMgYW5kIG9yZGVyIHRoZW0KK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitBc3N1bWluZyB3ZSBoYXZlIGEgbGlzdCBvZiByZWxlYXNlczo6CisKKyAgID4+PiBmcm9tIHBhY2thZ2luZy5weXBpLmRpc3QgaW1wb3J0IFJlbGVhc2VzTGlzdCwgUmVsZWFzZUluZm8KKyAgID4+PiBmYjEwID0gUmVsZWFzZUluZm8oIkZvb0JhciIsICIxLjAiKQorICAgPj4+IGZiMTEgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMSIpCisgICA+Pj4gZmIxMWEgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMWExIikKKyAgID4+PiBSZWxlYXNlc0xpc3QoIkZvb0JhciIsIFtmYjExLCBmYjExYSwgZmIxMF0pCisgICA+Pj4gcmVsZWFzZXMuc29ydF9yZWxlYXNlcygpCisgICA+Pj4gcmVsZWFzZXMuZ2V0X3ZlcnNpb25zKCkKKyAgIFsnMS4xJywgJzEuMWExJywgJzEuMCddCisgICA+Pj4gcmVsZWFzZXMuYWRkX3JlbGVhc2UoIjEuMmExIikKKyAgID4+PiByZWxlYXNlcy5nZXRfdmVyc2lvbnMoKQorICAgWycxLjEnLCAnMS4xYTEnLCAnMS4wJywgJzEuMmExJ10KKyAgID4+PiByZWxlYXNlcy5zb3J0X3JlbGVhc2VzKCkKKyAgIFsnMS4yYTEnLCAnMS4xJywgJzEuMWExJywgJzEuMCddCisgICA+Pj4gcmVsZWFzZXMuc29ydF9yZWxlYXNlcyhwcmVmZXJfZmluYWw9VHJ1ZSkKKyAgID4+PiByZWxlYXNlcy5nZXRfdmVyc2lvbnMoKQorICAgWycxLjEnLCAnMS4wJywgJzEuMmExJywgJzEuMWExJ10KKworCitBZGQgZGlzdHJpYnV0aW9uIHJlbGF0ZWQgaW5mb3JtYXRpb24gdG8gcmVsZWFzZXMKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitJdCdzIGVhc3kgdG8gYWRkIGRpc3RyaWJ1dGlvbiBpbmZvcm1hdGlvbiB0byByZWxlYXNlczo6CisKKyAgID4+PiBmcm9tIHBhY2thZ2luZy5weXBpLmRpc3QgaW1wb3J0IFJlbGVhc2VzTGlzdCwgUmVsZWFzZUluZm8KKyAgID4+PiByID0gUmVsZWFzZUluZm8oIkZvb0JhciIsICIxLjAiKQorICAgPj4+IHIuYWRkX2Rpc3RyaWJ1dGlvbigic2Rpc3QiLCB1cmw9Imh0dHA6Ly9leGFtcGxlLm9yZy9mb29iYXItMS4wLnRhci5neiIpCisgICA+Pj4gci5kaXN0cworICAgeydzZGlzdCc6IEZvb0JhciAxLjAgc2Rpc3R9CisgICA+Pj4gclsnc2Rpc3QnXS51cmwKKyAgIHsndXJsJzogJ2h0dHA6Ly9leGFtcGxlLm9yZy9mb29iYXItMS4wLnRhci5neicsICdoYXNobmFtZSc6IE5vbmUsICdoYXNodmFsJzoKKyAgIE5vbmUsICdpc19leHRlcm5hbCc6IFRydWV9CisKKworR2V0dGluZyBhdHRyaWJ1dGVzIGZyb20gdGhlIGRpc3Qgb2JqZWN0cworXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitUbyBhYnN0cmFjdCBxdWVyeWluZyBpbmZvcm1hdGlvbiByZXR1cm5lZCBmcm9tIHRoZSBpbmRleGVzLCBhdHRyaWJ1dGVzIGFuZAorcmVsZWFzZSBpbmZvcm1hdGlvbiBjYW4gYmUgcmV0cmlldmVkIGRpcmVjdGx5IGZyb20gZGlzdCBvYmplY3RzLgorCitGb3IgaW5zdGFuY2UsIGlmIHlvdSBoYXZlIGEgcmVsZWFzZSBpbnN0YW5jZSB0aGF0IGRvZXMgbm90IGNvbnRhaW4gdGhlIG1ldGFkYXRhCithdHRyaWJ1dGUsIGl0IGNhbiBiZSBmZXRjaGVkIGJ5IHVzaW5nIHRoZSAiZmV0Y2hfbWV0YWRhdGEiIG1ldGhvZDo6CisKKyAgID4+PiByID0gUmVsZWFzZSgiRm9vQmFyIiwgIjEuMSIpCisgICA+Pj4gcHJpbnQgci5tZXRhZGF0YQorICAgTm9uZSAjIG1ldGFkYXRhIGZpZWxkIGlzIGFjdHVhbGx5IHNldCB0byAiTm9uZSIKKyAgID4+PiByLmZldGNoX21ldGFkYXRhKCkKKyAgIDxNZXRhZGF0YSBmb3IgRm9vQmFyIDEuMT4KKworLi4gWFhYIGFkZCBwcm9wZXIgcm9sZXMgdG8gdGhlc2UgY29uc3RydWN0cworCisKK0l0J3MgcG9zc2libGUgdG8gcmV0cmlldmUgYSBwcm9qZWN0J3MgcmVsZWFzZXMgKGBmZXRjaF9yZWxlYXNlc2ApLAorbWV0YWRhdGEgKGBmZXRjaF9tZXRhZGF0YWApIGFuZCBkaXN0cmlidXRpb25zIChgZmV0Y2hfZGlzdHJpYnV0aW9uc2ApIHVzaW5nCithIHNpbWlsYXIgd29yayBmbG93LgorCisuLiBYWFggd2hhdCBpcyBwb3NzaWJsZT8KKworSW50ZXJuYWxseSwgdGhpcyBpcyBwb3NzaWJsZSBiZWNhdXNlIHdoaWxlIHJldHJpZXZpbmcgaW5mb3JtYXRpb24gYWJvdXQKK3Byb2plY3RzLCByZWxlYXNlcyBvciBkaXN0cmlidXRpb25zLCBhIHJlZmVyZW5jZSB0byB0aGUgY2xpZW50IHVzZWQgaXMKK3N0b3JlZCB3aGljaCBjYW4gYmUgYWNjZXNzZWQgdXNpbmcgdGhlIG9iamVjdHMgYF9pbmRleGAgYXR0cmlidXRlLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnB5cGkucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnB5cGkucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE0NjAyY2UKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucHlwaS5yc3QKQEAgLTAsMCArMSw3NCBAQAorOm1vZDpgcGFja2FnaW5nLnB5cGlgIC0tLSBJbnRlcmZhY2UgdG8gcHJvamVjdHMgaW5kZXhlcworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcucHlwaQorICAgOnN5bm9wc2lzOiBMb3ctbGV2ZWwgYW5kIGhpZ2gtbGV2ZWwgQVBJcyB0byBxdWVyeSBwcm9qZWN0cyBpbmRleGVzLgorCisKK1BhY2thZ2luZyBxdWVyaWVzIFB5UEkgdG8gZ2V0IGluZm9ybWF0aW9uIGFib3V0IHByb2plY3RzIG9yIGRvd25sb2FkIHRoZW0uICBUaGUKK2xvdy1sZXZlbCBmYWNpbGl0aWVzIHVzZWQgaW50ZXJuYWxseSBhcmUgYWxzbyBwYXJ0IG9mIHRoZSBwdWJsaWMgQVBJIGRlc2lnbmVkIHRvCitiZSB1c2VkIGJ5IG90aGVyIHRvb2xzLgorCitUaGUgOm1vZDpgcGFja2FnaW5nLnB5cGlgIHBhY2thZ2UgcHJvdmlkZXMgdGhvc2UgZmFjaWxpdGllcywgd2hpY2ggY2FuIGJlCit1c2VkIHRvIGFjY2VzcyBpbmZvcm1hdGlvbiBhYm91dCBQeXRob24gcHJvamVjdHMgcmVnaXN0ZXJlZCBhdCBpbmRleGVzLCB0aGUKK21haW4gb25lIGJlaW5nIFB5UEksIGxvY2F0ZWQgYWQgaHR0cDovL3B5cGkucHl0aG9uLm9yZy8uCisKK1RoZXJlIGlzIHR3byB3YXlzIHRvIHJldHJpZXZlIGRhdGEgZnJvbSB0aGVzZSBpbmRleGVzOiBhIHNjcmVlbi1zY3JhcGluZworaW50ZXJmYWNlIGNhbGxlZCB0aGUgInNpbXBsZSBBUEkiLCBhbmQgWE1MLVJQQy4gIFRoZSBmaXJzdCBvbmUgdXNlcyBIVE1MIHBhZ2VzCitsb2NhdGVkIHVuZGVyIGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvc2ltcGxlLywgdGhlIHNlY29uZCBvbmUgbWFrZXMgWE1MLVJQQworcmVxdWVzdHMgdG8gaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpLy4gIEFsbCBmdW5jdGlvbnMgYW5kIGNsYXNzZXMgYWxzbyB3b3JrCit3aXRoIG90aGVyIGluZGV4ZXMgc3VjaCBhcyBtaXJyb3JzLCB3aGljaCB0eXBpY2FsbHkgaW1wbGVtZW50IG9ubHkgdGhlIHNpbXBsZQoraW50ZXJmYWNlLgorCitQYWNrYWdpbmcgcHJvdmlkZXMgYSBjbGFzcyB0aGF0IHdyYXBzIGJvdGggQVBJcyB0byBwcm92aWRlIGZ1bGwgcXVlcnkgYW5kCitkb3dubG9hZCBmdW5jdGlvbmFsaXR5OiA6Y2xhc3M6YHBhY2thZ2luZy5weXBpLmNsaWVudC5DbGllbnRXcmFwcGVyYC4gIElmIHlvdQord2FudCBtb3JlIGNvbnRyb2wsIHlvdSBjYW4gdXNlIHRoZSB1bmRlcmx5aW5nIGNsYXNzZXMKKzpjbGFzczpgcGFja2FnaW5nLnB5cGkuc2ltcGxlLkNyYXdsZXJgIGFuZCA6Y2xhc3M6YHBhY2thZ2luZy5weXBpLnhtbHJwYy5DbGllbnRgCit0byBjb25uZWN0IHRvIG9uZSBzcGVjaWZpYyBpbnRlcmZhY2UuCisKKworOm1vZDpgcGFja2FnaW5nLnB5cGkuY2xpZW50YCAtLS0gSGlnaC1sZXZlbCBxdWVyeSBBUEkKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy5weXBpLmNsaWVudAorICAgOnN5bm9wc2lzOiBXcmFwcGVyIGFyb3VuZCA6bW9kO2BwYWNrYWdpbmcucHlwaS54bWxycGNgIGFuZAorICAgICAgICAgICAgICA6bW9kOmBwYWNrYWdpbmcucHlwaS5zaW1wbGVgIHRvIHF1ZXJ5IGluZGV4ZXMuCisKKworVGhpcyBtb2R1bGUgcHJvdmlkZXMgYSBoaWdoLWxldmVsIEFQSSB0byBxdWVyeSBpbmRleGVzIGFuZCBzZWFyY2gKK2ZvciByZWxlYXNlcyBhbmQgZGlzdHJpYnV0aW9ucy4gVGhlIGFpbSBvZiB0aGlzIG1vZHVsZSBpcyB0byBjaG9vc2UgdGhlIGJlc3QKK3dheSB0byBxdWVyeSB0aGUgQVBJIGF1dG9tYXRpY2FsbHksIGVpdGhlciB1c2luZyBYTUwtUlBDIG9yIHRoZSBzaW1wbGUgaW5kZXgsCit3aXRoIGEgcHJlZmVyZW5jZSB0b3dhcmQgdGhlIGxhdHRlci4KKworLi4gY2xhc3M6OiBDbGllbnRXcmFwcGVyCisKKyAgIEluc3RhbmNlcyBvZiB0aGlzIGNsYXNzIHdpbGwgdXNlIHRoZSBzaW1wbGUgaW50ZXJmYWNlIG9yIFhNTC1SUEMgcmVxdWVzdHMgdG8KKyAgIHF1ZXJ5IGluZGV4ZXMgYW5kIHJldHVybiA6Y2xhc3M6YHBhY2thZ2luZy5weXBpLmRpc3QuUmVsZWFzZUluZm9gIGFuZAorICAgOmNsYXNzOmBwYWNrYWdpbmcucHlwaS5kaXN0LlJlbGVhc2VzTGlzdGAgb2JqZWN0cy4KKworICAgLi4gbWV0aG9kOjogZmluZF9wcm9qZWN0cworCisgICAuLiBtZXRob2Q6OiBnZXRfcmVsZWFzZQorCisgICAuLiBtZXRob2Q6OiBnZXRfcmVsZWFzZXMKKworCis6bW9kOmBwYWNrYWdpbmcucHlwaS5iYXNlYCAtLS0gQmFzZSBjbGFzcyBmb3IgaW5kZXggY3Jhd2xlcnMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcucHlwaS5iYXNlCisgICA6c3lub3BzaXM6IEJhc2UgY2xhc3MgdXNlZCB0byBpbXBsZW1lbnQgY3Jhd2xlcnMuCisKKworLi4gY2xhc3M6OiBCYXNlQ2xpZW50KHByZWZlcl9maW5hbCwgcHJlZmVyX3NvdXJjZSkKKworICAgQmFzZSBjbGFzcyBjb250YWluaW5nIGNvbW1vbiBtZXRob2RzIGZvciB0aGUgaW5kZXggY3Jhd2xlcnMgb3IgY2xpZW50cy4gIE9uZQorICAgbWV0aG9kIGlzIGN1cnJlbnRseSBkZWZpbmVkOgorCisgICAuLiBtZXRob2Q6OiBkb3dubG9hZF9kaXN0cmlidXRpb24ocmVxdWlyZW1lbnRzLCB0ZW1wX3BhdGg9Tm9uZSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZlcl9zb3VyY2U9Tm9uZSwgcHJlZmVyX2ZpbmFsPU5vbmUpCisKKyAgICAgIERvd25sb2FkIGEgZGlzdHJpYnV0aW9uIGZyb20gdGhlIGxhc3QgcmVsZWFzZSBhY2NvcmRpbmcgdG8gdGhlCisgICAgICByZXF1aXJlbWVudHMuICBJZiAqdGVtcF9wYXRoKiBpcyBwcm92aWRlZCwgZG93bmxvYWQgdG8gdGhpcyBwYXRoLAorICAgICAgb3RoZXJ3aXNlLCBjcmVhdGUgYSB0ZW1wb3JhcnkgZGlyZWN0b3J5IGZvciB0aGUgZG93bmxvYWQuICBJZiBhIHJlbGVhc2UgaXMKKyAgICAgIGZvdW5kLCB0aGUgZnVsbCBwYXRoIHRvIHRoZSBkb3dubG9hZGVkIGZpbGUgaXMgcmV0dXJuZWQuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucHlwaS5zaW1wbGUucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnB5cGkuc2ltcGxlLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNTc5YjE4Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnB5cGkuc2ltcGxlLnJzdApAQCAtMCwwICsxLDIxOCBAQAorOm1vZDpgcGFja2FnaW5nLnB5cGkuc2ltcGxlYCAtLS0gQ3Jhd2xlciB1c2luZyB0aGUgUHlQSSAic2ltcGxlIiBpbnRlcmZhY2UKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy5weXBpLnNpbXBsZQorICAgOnN5bm9wc2lzOiBDcmF3bGVyIHVzaW5nIHRoZSBzY3JlZW4tc2NyYXBpbmcgInNpbXBsZSIgaW50ZXJmYWNlIHRvIGZldGNoIGluZm8KKyAgICAgICAgICAgICAgYW5kIGRpc3RyaWJ1dGlvbnMuCisKKworVGhlIGNsYXNzIHByb3ZpZGVkIGJ5IDptb2Q6YHBhY2thZ2luZy5weXBpLnNpbXBsZWAgY2FuIGFjY2VzcyBwcm9qZWN0IGluZGV4ZXMKK2FuZCBwcm92aWRlIHVzZWZ1bCBpbmZvcm1hdGlvbiBhYm91dCBkaXN0cmlidXRpb25zLiAgUHlQSSwgb3RoZXIgaW5kZXhlcyBhbmQKK2xvY2FsIGluZGV4ZXMgYXJlIHN1cHBvcnRlZC4KKworWW91IHNob3VsZCB1c2UgdGhpcyBtb2R1bGUgdG8gc2VhcmNoIGRpc3RyaWJ1dGlvbnMgYnkgbmFtZSBhbmQgdmVyc2lvbnMsIHByb2Nlc3MKK2luZGV4IGV4dGVybmFsIHBhZ2VzIGFuZCBkb3dubG9hZCBkaXN0cmlidXRpb25zLiAgSXQgaXMgbm90IHN1aXRlZCBmb3IgdGhpbmdzCit0aGF0IHdpbGwgZW5kIHVwIGluIHRvbyBsb25nIGluZGV4IHByb2Nlc3NpbmcgKGxpa2UgImZpbmRpbmcgYWxsIGRpc3RyaWJ1dGlvbnMKK3dpdGggYSBzcGVjaWZpYyB2ZXJzaW9uLCBubyBtYXR0ZXIgdGhlIG5hbWUiKTsgdXNlIDptb2Q6YHBhY2thZ2luZy5weXBpLnhtbHJwY2AKK2ZvciB0aGF0LgorCisKK0FQSQorLS0tCisKKy4uIGNsYXNzOjogQ3Jhd2xlcihpbmRleF91cmw9REVGQVVMVF9TSU1QTEVfSU5ERVhfVVJMLCBcCisgICAgICAgICAgICAgICAgICAgcHJlZmVyX2ZpbmFsPUZhbHNlLCBwcmVmZXJfc291cmNlPVRydWUsIFwKKyAgICAgICAgICAgICAgICAgICBob3N0cz0oJyonLCksIGZvbGxvd19leHRlcm5hbHM9RmFsc2UsIFwKKyAgICAgICAgICAgICAgICAgICBtaXJyb3JzX3VybD1Ob25lLCBtaXJyb3JzPU5vbmUsIHRpbWVvdXQ9MTUsIFwKKyAgICAgICAgICAgICAgICAgICBtaXJyb3JzX21heF90cmllcz0wKQorCisgICAgICAqaW5kZXhfdXJsKiBpcyB0aGUgYWRkcmVzcyBvZiB0aGUgaW5kZXggdG8gdXNlIGZvciByZXF1ZXN0cy4KKworICAgICAgVGhlIGZpcnN0IHR3byBwYXJhbWV0ZXJzIGNvbnRyb2wgdGhlIHF1ZXJ5IHJlc3VsdHMuICAqcHJlZmVyX2ZpbmFsKgorICAgICAgaW5kaWNhdGVzIHdoZXRoZXIgYSBmaW5hbCB2ZXJzaW9uIChub3QgYWxwaGEsIGJldGEgb3IgY2FuZGlkYXRlKSBpcyB0byBiZQorICAgICAgcHJlZmVycmVkIG92ZXIgYSBuZXdlciBidXQgbm9uLWZpbmFsIHZlcnNpb24gKGZvciBleGFtcGxlLCB3aGV0aGVyIHRvIHBpY2sKKyAgICAgIHVwIDEuMCBvdmVyIDIuMGEzKS4gIEl0IGlzIHVzZWQgb25seSBmb3IgcXVlcmllcyB0aGF0IGRvbid0IGdpdmUgYSB2ZXJzaW9uCisgICAgICBhcmd1bWVudC4gIExpa2V3aXNlLCAqcHJlZmVyX3NvdXJjZSogdGVsbHMgd2hldGhlciB0byBwcmVmZXIgYSBzb3VyY2UKKyAgICAgIGRpc3RyaWJ1dGlvbiBvdmVyIGEgYmluYXJ5IG9uZSwgaWYgbm8gZGlzdHJpYnV0aW9uIGFyZ3VtZW50IHdhcyBwcm9kaXZlZC4KKworICAgICAgT3RoZXIgcGFyYW1ldGVycyBhcmUgcmVsYXRlZCB0byBleHRlcm5hbCBsaW5rcyAodGhhdCBpcyBsaW5rcyB0aGF0IGdvCisgICAgICBvdXRzaWRlIHRoZSBzaW1wbGUgaW5kZXgpOiAqaG9zdHMqIGlzIGEgbGlzdCBvZiBob3N0cyBhbGxvd2VkIHRvIGJlCisgICAgICBwcm9jZXNzZWQgaWYgKmZvbGxvd19leHRlcm5hbHMqIGlzIHRydWUgKGRlZmF1bHQgYmVoYXZpb3IgaXMgdG8gZm9sbG93IGFsbAorICAgICAgaG9zdHMpLCAqZm9sbG93X2V4dGVybmFscyogZW5hYmxlcyBvciBkaXNhYmxlcyBmb2xsb3dpbmcgZXh0ZXJuYWwgbGlua3MKKyAgICAgIChkZWZhdWx0IGlzIGZhbHNlLCBtZWFuaW5nIGRpc2FibGVkKS4KKworICAgICAgVGhlIHJlbWFpbmluZyBwYXJhbWV0ZXJzIGFyZSByZWxhdGVkIHRvIHRoZSBtaXJyb3JpbmcgaW5mcmFzdHJ1Y3R1cmUKKyAgICAgIGRlZmluZWQgaW4gOlBFUDpgMzgxYC4gICptaXJyb3JzX3VybCogZ2l2ZXMgYSBVUkwgdG8gbG9vayBvbiBmb3IgRE5TCisgICAgICByZWNvcmRzIGdpdmluZyBtaXJyb3IgYWRyZXNzZXM7ICptaXJyb3JzKiBpcyBhIGxpc3Qgb2YgbWlycm9yIFVSTHMgKHNlZQorICAgICAgdGhlIFBFUCkuICBJZiBib3RoICptaXJyb3JzKiBhbmQgKm1pcnJvcnNfdXJsKiBhcmUgZ2l2ZW4sICptaXJyb3JzX3VybCoKKyAgICAgIHdpbGwgb25seSBiZSB1c2VkIGlmICptaXJyb3JzKiBpcyBzZXQgdG8gYGBOb25lYGAuICAqdGltZW91dCogaXMgdGhlIHRpbWUKKyAgICAgIChpbiBzZWNvbmRzKSB0byB3YWl0IGJlZm9yZSBjb25zaWRlcmluZyBhIFVSTCBoYXMgdGltZWQgb3V0OworICAgICAgKm1pcnJvcnNfbWF4X3RyaWVzIiogaXMgdGhlIG51bWJlciBvZiB0aW1lcyB0byB0cnkgcmVxdWVzdGluZyBpbmZvcm1hdGlvbnMKKyAgICAgIG9uIG1pcnJvcnMgYmVmb3JlIHN3aXRjaGluZy4KKworICAgICAgVGhlIGZvbGxvd2luZyBtZXRob2RzIGFyZSBkZWZpbmVkOgorCisgICAgICAuLiBtZXRob2Q6OiBnZXRfZGlzdHJpYnV0aW9ucyhwcm9qZWN0X25hbWUsIHZlcnNpb24pCisKKyAgICAgICAgIFJldHVybiB0aGUgZGlzdHJpYnV0aW9ucyBmb3VuZCBpbiB0aGUgaW5kZXggZm9yIHRoZSBnaXZlbiByZWxlYXNlLgorCisgICAgICAuLiBtZXRob2Q6OiBnZXRfbWV0YWRhdGEocHJvamVjdF9uYW1lLCB2ZXJzaW9uKQorCisgICAgICAgICBSZXR1cm4gdGhlIG1ldGFkYXRhIGZvdW5kIG9uIHRoZSBpbmRleCBmb3IgdGhpcyBwcm9qZWN0IG5hbWUgYW5kCisgICAgICAgICB2ZXJzaW9uLiAgQ3VycmVudGx5IGRvd25sb2FkcyBhbmQgdW5wYWNrcyBhIGRpc3RyaWJ1dGlvbiB0byByZWFkIHRoZQorICAgICAgICAgUEtHLUlORk8gZmlsZS4KKworICAgICAgLi4gbWV0aG9kOjogZ2V0X3JlbGVhc2UocmVxdWlyZW1lbnRzLCBwcmVmZXJfZmluYWw9Tm9uZSkKKworICAgICAgICAgUmV0dXJuIG9uZSByZWxlYXNlIHRoYXQgZnVsZmlsbHMgdGhlIGdpdmVuIHJlcXVpcmVtZW50cy4KKworICAgICAgLi4gbWV0aG9kOjogZ2V0X3JlbGVhc2VzKHJlcXVpcmVtZW50cywgcHJlZmVyX2ZpbmFsPU5vbmUsIGZvcmNlX3VwZGF0ZT1GYWxzZSkKKworICAgICAgICAgU2VhcmNoIGZvciByZWxlYXNlcyBhbmQgcmV0dXJuIGEKKyAgICAgICAgIDpjbGFzczpgfnBhY2thZ2luZy5weXBpLmRpc3QuUmVsZWFzZXNMaXN0YCBvYmplY3QgY29udGFpbmluZyB0aGUKKyAgICAgICAgIHJlc3VsdHMuCisKKyAgICAgIC4uIG1ldGhvZDo6IHNlYXJjaF9wcm9qZWN0cyhuYW1lPU5vbmUpCisKKyAgICAgICAgIFNlYXJjaCB0aGUgaW5kZXggZm9yIHByb2plY3RzIGNvbnRhaW5pbmcgdGhlIGdpdmVuIG5hbWUgYW5kIHJldHVybiBhCisgICAgICAgICBsaXN0IG9mIG1hdGNoaW5nIG5hbWVzLgorCisgICBTZWUgYWxzbyB0aGUgYmFzZSBjbGFzcyA6Y2xhc3M6YHBhY2thZ2luZy5weXBpLmJhc2UuQmFzZUNsaWVudGAgZm9yIGluaGVyaXRlZAorICAgbWV0aG9kcy4KKworCisuLiBkYXRhOjogREVGQVVMVF9TSU1QTEVfSU5ERVhfVVJMCisKKyAgIFRoZSBhZGRyZXNzIHVzZWQgYnkgZGVmYXVsdCBieSB0aGUgY3Jhd2xlciBjbGFzcy4gIEl0IGlzIGN1cnJlbnRseQorICAgYGAnaHR0cDovL2EucHlwaS5weXRob24ub3JnL3NpbXBsZS8nYGAsIHRoZSBtYWluIFB5UEkgaW5zdGFsbGF0aW9uLgorCisKKworCitVc2FnZSBFeGFtcGxlcworLS0tLS0tLS0tLS0tLS0tCisKK1RvIGhlbHAgeW91IHVuZGVyc3RhbmQgaG93IHVzaW5nIHRoZSBgQ3Jhd2xlcmAgY2xhc3MsIGhlcmUgYXJlIHNvbWUgYmFzaWMKK3VzYWdlcy4KKworUmVxdWVzdCB0aGUgc2ltcGxlIGluZGV4IHRvIGdldCBhIHNwZWNpZmljIGRpc3RyaWJ1dGlvbgorXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitTdXBwb3NpbmcgeW91IHdhbnQgdG8gc2NhbiBhbiBpbmRleCB0byBnZXQgYSBsaXN0IG9mIGRpc3RyaWJ1dGlvbnMgZm9yCit0aGUgImZvb2JhciIgcHJvamVjdC4gWW91IGNhbiB1c2UgdGhlICJnZXRfcmVsZWFzZXMiIG1ldGhvZCBmb3IgdGhhdC4KK1RoZSBnZXRfcmVsZWFzZXMgbWV0aG9kIHdpbGwgYnJvd3NlIHRoZSBwcm9qZWN0IHBhZ2UsIGFuZCByZXR1cm4KKzpjbGFzczpgUmVsZWFzZUluZm9gICBvYmplY3RzIGZvciBlYWNoIGZvdW5kIGxpbmsgdGhhdCByZWx5IG9uIGRvd25sb2Fkcy4gOjoKKworICAgPj4+IGZyb20gcGFja2FnaW5nLnB5cGkuc2ltcGxlIGltcG9ydCBDcmF3bGVyCisgICA+Pj4gY3Jhd2xlciA9IENyYXdsZXIoKQorICAgPj4+IGNyYXdsZXIuZ2V0X3JlbGVhc2VzKCJGb29CYXIiKQorICAgWzxSZWxlYXNlSW5mbyAiRm9vYmFyIDEuMSI+LCA8UmVsZWFzZUluZm8gIkZvb2JhciAxLjIiPl0KKworCitOb3RlIHRoYXQgeW91IGFsc28gY2FuIHJlcXVlc3QgdGhlIGNsaWVudCBhYm91dCBzcGVjaWZpYyB2ZXJzaW9ucywgdXNpbmcgdmVyc2lvbgorc3BlY2lmaWVycyAoZGVzY3JpYmVkIGluIGBQRVAgMzQ1Cis8aHR0cDovL3d3dy5weXRob24ub3JnL2Rldi9wZXBzL3BlcC0wMzQ1LyN2ZXJzaW9uLXNwZWNpZmllcnM+YF8pOjoKKworICAgPj4+IGNsaWVudC5nZXRfcmVsZWFzZXMoIkZvb0JhciA8IDEuMiIpCisgICBbPFJlbGVhc2VJbmZvICJGb29CYXIgMS4xIj4sIF0KKworCitgZ2V0X3JlbGVhc2VzYCByZXR1cm5zIGEgbGlzdCBvZiA6Y2xhc3M6YFJlbGVhc2VJbmZvYCwgYnV0IHlvdSBhbHNvIGNhbiBnZXQgdGhlCitiZXN0IGRpc3RyaWJ1dGlvbiB0aGF0IGZ1bGxmaWwgeW91ciByZXF1aXJlbWVudHMsIHVzaW5nICJnZXRfcmVsZWFzZSI6OgorCisgICA+Pj4gY2xpZW50LmdldF9yZWxlYXNlKCJGb29CYXIgPCAxLjIiKQorICAgPFJlbGVhc2VJbmZvICJGb29CYXIgMS4xIj4KKworCitEb3dubG9hZCBkaXN0cmlidXRpb25zCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eCisKK0FzIGl0IGNhbiBnZXQgdGhlIHVybHMgb2YgZGlzdHJpYnV0aW9ucyBwcm92aWRlZCBieSBQeVBJLCB0aGUgYENyYXdsZXJgCitjbGllbnQgYWxzbyBjYW4gZG93bmxvYWQgdGhlIGRpc3RyaWJ1dGlvbnMgYW5kIHB1dCBpdCBmb3IgeW91IGluIGEgdGVtcG9yYXJ5CitkZXN0aW5hdGlvbjo6CisKKyAgID4+PiBjbGllbnQuZG93bmxvYWQoImZvb2JhciIpCisgICAvdG1wL3RlbXBfZGlyL2Zvb2Jhci0xLjIudGFyLmd6CisKKworWW91IGFsc28gY2FuIHNwZWNpZnkgdGhlIGRpcmVjdG9yeSB5b3Ugd2FudCB0byBkb3dubG9hZCB0bzo6CisKKyAgID4+PiBjbGllbnQuZG93bmxvYWQoImZvb2JhciIsICIvcGF0aC90by9teS9kaXIiKQorICAgL3BhdGgvdG8vbXkvZGlyL2Zvb2Jhci0xLjIudGFyLmd6CisKKworV2hpbGUgZG93bmxvYWRpbmcsIHRoZSBtZDUgb2YgdGhlIGFyY2hpdmUgd2lsbCBiZSBjaGVja2VkLCBpZiBub3QgbWF0Y2hlcywgaXQKK3dpbGwgdHJ5IGFub3RoZXIgdGltZSwgdGhlbiBpZiBmYWlscyBhZ2FpbiwgcmFpc2UgYE1ENUhhc2hEb2VzTm90TWF0Y2hFcnJvcmAuCisKK0ludGVybmFsbHksIHRoYXQncyBub3QgdGhlIENyYXdsZXIgd2hpY2ggZG93bmxvYWQgdGhlIGRpc3RyaWJ1dGlvbnMsIGJ1dCB0aGUKK2BEaXN0cmlidXRpb25JbmZvYCBjbGFzcy4gUGxlYXNlIHJlZmVyIHRvIHRoaXMgZG9jdW1lbnRhdGlvbiBmb3IgbW9yZSBkZXRhaWxzLgorCisKK0ZvbGxvd2luZyBQeVBJIGV4dGVybmFsIGxpbmtzCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitUaGUgZGVmYXVsdCBiZWhhdmlvciBmb3IgcGFja2FnaW5nIGlzIHRvICpub3QqIGZvbGxvdyB0aGUgbGlua3MgcHJvdmlkZWQKK2J5IEhUTUwgcGFnZXMgaW4gdGhlICJzaW1wbGUgaW5kZXgiLCB0byBmaW5kIGRpc3RyaWJ1dGlvbnMgcmVsYXRlZAorZG93bmxvYWRzLgorCitJdCdzIHBvc3NpYmxlIHRvIHRlbGwgdGhlIFB5UElDbGllbnQgdG8gZm9sbG93IGV4dGVybmFsIGxpbmtzIGJ5IHNldHRpbmcgdGhlCitgZm9sbG93X2V4dGVybmFsc2AgYXR0cmlidXRlLCBvbiBpbnN0YW50aWF0aW9uIG9yIGFmdGVyOjoKKworICAgPj4+IGNsaWVudCA9IENyYXdsZXIoZm9sbG93X2V4dGVybmFscz1UcnVlKQorCitvciA6OgorCisgICA+Pj4gY2xpZW50ID0gQ3Jhd2xlcigpCisgICA+Pj4gY2xpZW50LmZvbGxvd19leHRlcm5hbHMgPSBUcnVlCisKKworV29ya2luZyB3aXRoIGV4dGVybmFsIGluZGV4ZXMsIGFuZCBtaXJyb3JzCiteXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KKworVGhlIGRlZmF1bHQgYENyYXdsZXJgIGJlaGF2aW9yIGlzIHRvIHJlbHkgb24gdGhlIFB5dGhvbiBQYWNrYWdlIGluZGV4IHN0b3JlZAorb24gUHlQSSAoaHR0cDovL3B5cGkucHl0aG9uLm9yZy9zaW1wbGUpLgorCitBcyB5b3UgY2FuIG5lZWQgdG8gd29yayB3aXRoIGEgbG9jYWwgaW5kZXgsIG9yIHByaXZhdGUgaW5kZXhlcywgeW91IGNhbiBzcGVjaWZ5CitpdCB1c2luZyB0aGUgaW5kZXhfdXJsIHBhcmFtZXRlcjo6CisKKyAgID4+PiBjbGllbnQgPSBDcmF3bGVyKGluZGV4X3VybD0iZmlsZTovL2ZpbGVzeXN0ZW0vcGF0aC8iKQorCitvciA6OgorCisgICA+Pj4gY2xpZW50ID0gQ3Jhd2xlcihpbmRleF91cmw9Imh0dHA6Ly9zb21lLnNwZWNpZmljLnVybC8iKQorCisKK1lvdSBhbHNvIGNhbiBzcGVjaWZ5IG1pcnJvcnMgdG8gZmFsbGJhY2sgb24gaW4gY2FzZSB0aGUgZmlyc3QgaW5kZXhfdXJsIHlvdQorcHJvdmlkZWQgZG9lc250IHJlc3BvbmQsIG9yIG5vdCBjb3JyZWN0bHkuIFRoZSBkZWZhdWx0IGJlaGF2aW9yIGZvcgorYENyYXdsZXJgIGlzIHRvIHVzZSB0aGUgbGlzdCBwcm92aWRlZCBieSBQeXRob24ub3JnIEROUyByZWNvcmRzLCBhcworZGVzY3JpYmVkIGluIHRoZSA6UEVQOmAzODFgIGFib3V0IG1pcnJvcmluZyBpbmZyYXN0cnVjdHVyZS4KKworSWYgeW91IGRvbid0IHdhbnQgdG8gcmVseSBvbiB0aGVzZSwgeW91IGNvdWxkIHNwZWNpZnkgdGhlIGxpc3Qgb2YgbWlycm9ycyB5b3UKK3dhbnQgdG8gdHJ5IGJ5IHNwZWNpZnlpbmcgdGhlIGBtaXJyb3JzYCBhdHRyaWJ1dGUuIEl0J3MgYSBzaW1wbGUgaXRlcmFibGU6OgorCisgICA+Pj4gbWlycm9ycyA9IFsiaHR0cDovL2ZpcnN0Lm1pcnJvciIsImh0dHA6Ly9zZWNvbmQubWlycm9yIl0KKyAgID4+PiBjbGllbnQgPSBDcmF3bGVyKG1pcnJvcnM9bWlycm9ycykKKworCitTZWFyY2hpbmcgaW4gdGhlIHNpbXBsZSBpbmRleAorXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KKworSXQncyBwb3NzaWJsZSB0byBzZWFyY2ggZm9yIHByb2plY3RzIHdpdGggc3BlY2lmaWMgbmFtZXMgaW4gdGhlIHBhY2thZ2UgaW5kZXguCitBc3N1bWluZyB5b3Ugd2FudCB0byBmaW5kIGFsbCBwcm9qZWN0cyBjb250YWluaW5nIHRoZSAiZGlzdHV0aWxzIiBrZXl3b3JkOjoKKworICAgPj4+IGMuc2VhcmNoX3Byb2plY3RzKCJkaXN0dXRpbHMiKQorICAgWzxQcm9qZWN0ICJjb2xsZWN0aXZlLnJlY2lwZS5kaXN0dXRpbHMiPiwgPFByb2plY3QgIkRpc3R1dGlscyI+LCA8UHJvamVjdAorICAgIlBhY2thZ2luZyI+LCA8UHJvamVjdCAiZGlzdHV0aWxzY3Jvc3MiPiwgPFByb2plY3QgImxwZGlzdHV0aWxzIj4sIDxQcm9qZWN0CisgICAidGFyYXMucmVjaXBlLmRpc3R1dGlscyI+LCA8UHJvamVjdCAiemVyb2tzcG90LnJlY2lwZS5kaXN0dXRpbHMiPl0KKworCitZb3UgY2FuIGFsc28gc2VhcmNoIHRoZSBwcm9qZWN0cyBzdGFydGluZyB3aXRoIGEgc3BlY2lmaWMgdGV4dCwgb3IgZW5kaW5nIHdpdGgKK3RoYXQgdGV4dCwgdXNpbmcgYSB3aWxkY2FyZDo6CisKKyAgID4+PiBjLnNlYXJjaF9wcm9qZWN0cygiZGlzdHV0aWxzKiIpCisgICBbPFByb2plY3QgIkRpc3R1dGlscyI+LCA8UHJvamVjdCAiUGFja2FnaW5nIj4sIDxQcm9qZWN0ICJkaXN0dXRpbHNjcm9zcyI+XQorCisgICA+Pj4gYy5zZWFyY2hfcHJvamVjdHMoIipkaXN0dXRpbHMiKQorICAgWzxQcm9qZWN0ICJjb2xsZWN0aXZlLnJlY2lwZS5kaXN0dXRpbHMiPiwgPFByb2plY3QgIkRpc3R1dGlscyI+LCA8UHJvamVjdAorICAgImxwZGlzdHV0aWxzIj4sIDxQcm9qZWN0ICJ0YXJhcy5yZWNpcGUuZGlzdHV0aWxzIj4sIDxQcm9qZWN0CisgICAiemVyb2tzcG90LnJlY2lwZS5kaXN0dXRpbHMiPl0KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BhY2thZ2luZy5weXBpLnhtbHJwYy5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucHlwaS54bWxycGMucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUyNDJlNGMKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucHlwaS54bWxycGMucnN0CkBAIC0wLDAgKzEsMTQzIEBACis6bW9kOmBwYWNrYWdpbmcucHlwaS54bWxycGNgIC0tLSBDcmF3bGVyIHVzaW5nIHRoZSBQeVBJIFhNTC1SUEMgaW50ZXJmYWNlCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIG1vZHVsZTo6IHBhY2thZ2luZy5weXBpLnhtbHJwYworICAgOnN5bm9wc2lzOiBDbGllbnQgdXNpbmcgWE1MLVJQQyByZXF1ZXN0cyB0byBmZXRjaCBpbmZvIGFuZCBkaXN0cmlidXRpb25zLgorCisKK0luZGV4ZXMgY2FuIGJlIHF1ZXJpZWQgdXNpbmcgWE1MLVJQQyBjYWxscywgYW5kIFBhY2thZ2luZyBwcm92aWRlcyBhIHNpbXBsZQord2F5IHRvIGludGVyZmFjZSB3aXRoIFhNTC1SUEMuCisKK1lvdSBzaG91bGQgKip1c2UqKiBYTUwtUlBDIHdoZW46CisKKyogU2VhcmNoaW5nIHRoZSBpbmRleCBmb3IgcHJvamVjdHMgKipvbiBvdGhlciBmaWVsZHMgdGhhbiBwcm9qZWN0CisgIG5hbWVzKiouIEZvciBpbnN0YW5jZSwgeW91IGNhbiBzZWFyY2ggZm9yIHByb2plY3RzIGJhc2VkIG9uIHRoZQorICBhdXRob3JfZW1haWwgZmllbGQuCisqIFNlYXJjaGluZyBhbGwgdGhlIHZlcnNpb25zIHRoYXQgaGF2ZSBleGlzdGVkIGZvciBhIHByb2plY3QuCisqIHlvdSB3YW50IHRvIHJldHJpZXZlIE1FVEFEQVRBcyBpbmZvcm1hdGlvbiBmcm9tIHJlbGVhc2VzIG9yCisgIGRpc3RyaWJ1dGlvbnMuCisKKworWW91IHNob3VsZCAqKmF2b2lkIHVzaW5nKiogWE1MLVJQQyBtZXRob2QgY2FsbHMgd2hlbjoKKworKiBSZXRyaWV2aW5nIHRoZSBsYXN0IHZlcnNpb24gb2YgYSBwcm9qZWN0CisqIEdldHRpbmcgdGhlIHByb2plY3RzIHdpdGggYSBzcGVjaWZpYyBuYW1lIGFuZCB2ZXJzaW9uLgorKiBUaGUgc2ltcGxlIGluZGV4IGNhbiBtYXRjaCB5b3VyIG5lZWRzCisKKworV2hlbiBkZWFsaW5nIHdpdGggaW5kZXhlcywga2VlcCBpbiBtaW5kIHRoYXQgdGhlIGluZGV4IHF1ZXJpZXMgd2lsbCBhbHdheXMKK3JldHVybiB5b3UgOmNsYXNzOmBwYWNrYWdpbmcucHlwaS5kaXN0LlJlbGVhc2VJbmZvYCBhbmQKKzpjbGFzczpgcGFja2FnaW5nLnB5cGkuZGlzdC5SZWxlYXNlc0xpc3RgIG9iamVjdHMuCisKK1NvbWUgbWV0aG9kcyBoZXJlIHNoYXJlIGNvbW1vbiBBUElzIHdpdGggdGhlIG9uZSB5b3UgY2FuIGZpbmQgb24KKzpjbGFzczpgcGFja2FnaW5nLnB5cGkuc2ltcGxlYCwgaW50ZXJuYWxseSwgOmNsYXNzOmBwYWNrYWdpbmcucHlwaS5jbGllbnRgCitpcyBpbmhlcml0ZWQgYnkgOmNsYXNzOmBDbGllbnRgCisKKworQVBJCistLS0KKworLi4gY2xhc3M6OiBDbGllbnQKKworCitVc2FnZSBleGFtcGxlcworLS0tLS0tLS0tLS0tLS0KKworVXNlIGNhc2UgZGVzY3JpYmVkIGhlcmUgYXJlIHVzZSBjYXNlIHRoYXQgYXJlIG5vdCBjb21tb24gdG8gdGhlIG90aGVyIGNsaWVudHMuCitJZiB5b3Ugd2FudCB0byBzZWUgYWxsIHRoZSBtZXRob2RzLCBwbGVhc2UgcmVmZXIgdG8gQVBJIG9yIHRvIHVzYWdlIGV4YW1wbGVzCitkZXNjcmliZWQgaW4gOmNsYXNzOmBwYWNrYWdpbmcucHlwaS5jbGllbnQuQ2xpZW50YAorCisKK0ZpbmRpbmcgcmVsZWFzZXMKK15eXl5eXl5eXl5eXl5eXl4KKworSXQncyBhIGNvbW1vbiB1c2UgY2FzZSB0byBzZWFyY2ggZm9yICJ0aGluZ3MiIHdpdGhpbiB0aGUgaW5kZXguIFdlIGNhbgorYmFzaWNhbGx5IHNlYXJjaCBmb3IgcHJvamVjdHMgYnkgdGhlaXIgbmFtZSwgd2hpY2ggaXMgdGhlIG1vc3QgdXNlZCB3YXkgZm9yCit1c2VycyAoZWcuICJnaXZlIG1lIHRoZSBsYXN0IHZlcnNpb24gb2YgdGhlIEZvb0JhciBwcm9qZWN0IikuCisKK1RoaXMgY2FuIGJlIGFjY29tcGxpc2hlZCB1c2luZyB0aGUgZm9sbG93aW5nIHN5bnRheDo6CisKKyAgID4+PiBjbGllbnQgPSB4bWxycGMuQ2xpZW50KCkKKyAgID4+PiBjbGllbnQuZ2V0X3JlbGVhc2UoIkZvb2JhciAoPD0gMS4zKSkKKyAgIDxGb29CYXIgMS4yLjE+CisgICA+Pj4gY2xpZW50LmdldF9yZWxlYXNlcygiRm9vQmFyICg8PSAxLjMpIikKKyAgIFtGb29CYXIgMS4xLCBGb29CYXIgMS4xLjEsIEZvb0JhciAxLjIsIEZvb0JhciAxLjIuMV0KKworCitBbmQgd2UgYWxzbyBjYW4gZmluZCBmb3Igc3BlY2lmaWMgZmllbGRzOjoKKworICAgPj4+IGNsaWVudC5zZWFyY2hfcHJvamVjdHMoZmllbGQ9dmFsdWUpCisKKworWW91IGNvdWxkIHNwZWNpZnkgdGhlIG9wZXJhdG9yIHRvIHVzZSwgZGVmYXVsdCBpcyAib3IiOjoKKworICAgPj4+IGNsaWVudC5zZWFyY2hfcHJvamVjdHMoZmllbGQ9dmFsdWUsIG9wZXJhdG9yPSJhbmQiKQorCisKK1RoZSBzcGVjaWZpYyBmaWVsZHMgeW91IGNhbiBzZWFyY2ggYXJlOgorCisqIG5hbWUKKyogdmVyc2lvbgorKiBhdXRob3IKKyogYXV0aG9yX2VtYWlsCisqIG1haW50YWluZXIKKyogbWFpbnRhaW5lcl9lbWFpbAorKiBob21lX3BhZ2UKKyogbGljZW5zZQorKiBzdW1tYXJ5CisqIGRlc2NyaXB0aW9uCisqIGtleXdvcmRzCisqIHBsYXRmb3JtCisqIGRvd25sb2FkX3VybAorCisKK0dldHRpbmcgbWV0YWRhdGEgaW5mb3JtYXRpb24KK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl4KKworWE1MLVJQQyBpcyBhIHByZWZlcnJlZCB3YXkgdG8gcmV0cmlldmUgbWV0YWRhdGEgaW5mb3JtYXRpb24gZnJvbSBpbmRleGVzLgorSXQncyByZWFsbHkgc2ltcGxlIHRvIGRvIHNvOjoKKworICAgPj4+IGNsaWVudCA9IHhtbHJwYy5DbGllbnQoKQorICAgPj4+IGNsaWVudC5nZXRfbWV0YWRhdGEoIkZvb0JhciIsICIxLjEiKQorICAgPFJlbGVhc2VJbmZvIEZvb0JhciAxLjE+CisKKworQXNzdW1pbmcgd2UgYWxyZWFkeSBoYXZlIGEgOmNsYXNzOmBwYWNrYWdpbmcucHlwaS5SZWxlYXNlSW5mb2Agb2JqZWN0IGRlZmluZWQsCitpdCdzIHBvc3NpYmxlIHRvIHBhc3MgaXQgdG8gdGhlIHhtbHJwYyBjbGllbnQgdG8gcmV0cmlldmUgYW5kIGNvbXBsZXRlIGl0cworbWV0YWRhdGE6OgorCisgICA+Pj4gZm9vYmFyMTEgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMSIpCisgICA+Pj4gY2xpZW50ID0geG1scnBjLkNsaWVudCgpCisgICA+Pj4gcmV0dXJuZWRfcmVsZWFzZSA9IGNsaWVudC5nZXRfbWV0YWRhdGEocmVsZWFzZT1mb29iYXIxMSkKKyAgID4+PiByZXR1cm5lZF9yZWxlYXNlCisgICA8UmVsZWFzZUluZm8gRm9vQmFyIDEuMT4KKworCitHZXQgYWxsIHRoZSByZWxlYXNlcyBvZiBhIHByb2plY3QKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitUbyByZXRyaWV2ZSBhbGwgdGhlIHJlbGVhc2VzIGZvciBhIHByb2plY3QsIHlvdSBjYW4gYnVpbGQgdGhlbSB1c2luZworYGdldF9yZWxlYXNlc2A6OgorCisgICA+Pj4gY2xpZW50ID0geG1scnBjLkNsaWVudCgpCisgICA+Pj4gY2xpZW50LmdldF9yZWxlYXNlcygiRm9vQmFyIikKKyAgIFs8UmVsZWFzZUluZm8gRm9vQmFyIDAuOT4sIDxSZWxlYXNlSW5mbyBGb29CYXIgMS4wPiwgPFJlbGVhc2VJbmZvIDEuMT5dCisKKworR2V0IGluZm9ybWF0aW9uIGFib3V0IGRpc3RyaWJ1dGlvbnMKK15eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eXgorCitJbmRleGVzIGhhdmUgaW5mb3JtYXRpb24gYWJvdXQgcHJvamVjdHMsIHJlbGVhc2VzICoqYW5kKiogZGlzdHJpYnV0aW9ucy4KK0lmIHlvdSdyZSBub3QgZmFtaWxpYXIgd2l0aCB0aG9zZSwgcGxlYXNlIHJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIG9mCis6bW9kOmBwYWNrYWdpbmcucHlwaS5kaXN0YC4KKworSXQncyBwb3NzaWJsZSB0byByZXRyaWV2ZSBpbmZvcm1hdGlvbiBhYm91dCBkaXN0cmlidXRpb25zLCBlLmcgIndoYXQgYXJlIHRoZQorZXhpc3RpbmcgZGlzdHJpYnV0aW9ucyBmb3IgdGhpcyByZWxlYXNlID8gSG93IHRvIHJldHJpZXZlIHRoZW0gPyI6OgorCisgICA+Pj4gY2xpZW50ID0geG1scnBjLkNsaWVudCgpCisgICA+Pj4gcmVsZWFzZSA9IGNsaWVudC5nZXRfZGlzdHJpYnV0aW9ucygiRm9vQmFyIiwgIjEuMSIpCisgICA+Pj4gcmVsZWFzZS5kaXN0cworICAgeydzZGlzdCc6IDxGb29CYXIgMS4xIHNkaXN0PiwgJ2JkaXN0JzogPEZvb0JhciAxLjEgYmRpc3Q+fQorCitBcyB5b3Ugc2VlLCB0aGlzIGRvZXMgbm90IHJldHVybiBhIGxpc3Qgb2YgZGlzdHJpYnV0aW9ucywgYnV0IGEgcmVsZWFzZSwKK2JlY2F1c2UgYSByZWxlYXNlIGNhbiBiZSB1c2VkIGxpa2UgYSBsaXN0IG9mIGRpc3RyaWJ1dGlvbnMuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9wYWNrYWdpbmcucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNmJmZjQ3Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnJzdApAQCAtMCwwICsxLDc1IEBACis6bW9kOmBwYWNrYWdpbmdgIC0tLSBQYWNrYWdpbmcgc3VwcG9ydAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nCisgICA6c3lub3BzaXM6IFBhY2thZ2luZyBzeXN0ZW0gYW5kIGJ1aWxkaW5nIGJsb2NrcyBmb3Igb3RoZXIgcGFja2FnaW5nIHN5c3RlbXMuCisuLiBzZWN0aW9uYXV0aG9yOjogRnJlZCBMLiBEcmFrZSwgSnIuIDxmZHJha2VAYWNtLm9yZz4sIGRpc3R1dGlscyBhbmQgcGFja2FnaW5nCisgICAgICAgICAgICAgICAgICAgY29udHJpYnV0b3JzCisKKworVGhlIDptb2Q6YHBhY2thZ2luZ2AgcGFja2FnZSBwcm92aWRlcyBzdXBwb3J0IGZvciBidWlsZGluZywgcGFja2FnaW5nLAorZGlzdHJpYnV0aW5nIGFuZCBpbnN0YWxsaW5nIGFkZGl0aW9uYWwgcHJvamVjdHMgaW50byBhIFB5dGhvbiBpbnN0YWxsYXRpb24uCitQcm9qZWN0cyBtYXkgaW5jbHVkZSBQeXRob24gbW9kdWxlcywgZXh0ZW5zaW9uIG1vZHVsZXMsIHBhY2thZ2VzIGFuZCBzY3JpcHRzLgorOm1vZDpgcGFja2FnaW5nYCBhbHNvIHByb3ZpZGVzIGJ1aWxkaW5nIGJsb2NrcyBmb3Igb3RoZXIgcGFja2FnaW5nIHN5c3RlbXMKK3RoYXQgYXJlIG5vdCB0aWVkIHRvIHRoZSBjb21tYW5kIHN5c3RlbS4KKworVGhpcyBtYW51YWwgaXMgdGhlIHJlZmVyZW5jZSBkb2N1bWVudGF0aW9uIGZvciB0aG9zZSBzdGFuZGFsb25lIGJ1aWxkaW5nCitibG9ja3MgYW5kIGZvciBleHRlbmRpbmcgUGFja2FnaW5nLiBJZiB5b3UncmUgbG9va2luZyBmb3IgdGhlIHVzZXItY2VudHJpYworZ3VpZGVzIHRvIGluc3RhbGwgYSBwcm9qZWN0IG9yIHBhY2thZ2UgeW91ciBvd24gY29kZSwgaGVhZCB0byBgU2VlIGFsc29gX18uCisKKworQnVpbGRpbmcgYmxvY2tzCistLS0tLS0tLS0tLS0tLS0KKworLi4gdG9jdHJlZTo6CisgICA6bWF4ZGVwdGg6IDIKKworICAgcGFja2FnaW5nLW1pc2MKKyAgIHBhY2thZ2luZy52ZXJzaW9uCisgICBwYWNrYWdpbmcubWV0YWRhdGEKKyAgIHBhY2thZ2luZy5kYXRhYmFzZQorICAgcGFja2FnaW5nLmRlcGdyYXBoCisgICBwYWNrYWdpbmcucHlwaQorICAgcGFja2FnaW5nLnB5cGkuZGlzdAorICAgcGFja2FnaW5nLnB5cGkuc2ltcGxlCisgICBwYWNrYWdpbmcucHlwaS54bWxycGMKKyAgIHBhY2thZ2luZy5pbnN0YWxsCisKKworVGhlIGNvbW1hbmQgbWFjaGluZXJ5CistLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gdG9jdHJlZTo6CisgICA6bWF4ZGVwdGg6IDIKKworICAgcGFja2FnaW5nLmRpc3QKKyAgIHBhY2thZ2luZy5jb21tYW5kCisgICBwYWNrYWdpbmcuY29tcGlsZXIKKyAgIHBhY2thZ2luZy5mYW5jeV9nZXRvcHQKKworCitPdGhlciB1dGlsaXRpZXMKKy0tLS0tLS0tLS0tLS0tLS0KKworLi4gdG9jdHJlZTo6CisgICA6bWF4ZGVwdGg6IDIKKworICAgcGFja2FnaW5nLnV0aWwKKyAgIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlcgorCisuLiBYWFggbWlzc2luZzogY29tcGF0IGNvbmZpZyBjcmVhdGUgKGRpcl91dGlsKSBydW4gcHlwaS57YmFzZSxtaXJyb3JzfQorCisKKy4uIF9fOgorCisuLiBzZWVhbHNvOjoKKworICAgOnJlZjpgcGFja2FnaW5nLWluZGV4YAorICAgICAgVGhlIG1hbnVhbCBmb3IgZGV2ZWxvcGVycyBvZiBQeXRob24gcHJvamVjdHMgd2hvIHdhbnQgdG8gcGFja2FnZSBhbmQKKyAgICAgIGRpc3RyaWJ1dGUgdGhlbS4gVGhpcyBkZXNjcmliZXMgaG93IHRvIHVzZSA6bW9kOmBwYWNrYWdpbmdgIHRvIG1ha2UKKyAgICAgIHByb2plY3RzIGVhc2lseSBmb3VuZCBhbmQgYWRkZWQgdG8gYW4gZXhpc3RpbmcgUHl0aG9uIGluc3RhbGxhdGlvbi4KKworICAgOnJlZjpgcGFja2FnaW5nLWluc3RhbGwtaW5kZXhgCisgICAgICBBIHVzZXItY2VudGVyZWQgbWFudWFsIHdoaWNoIGluY2x1ZGVzIGluZm9ybWF0aW9uIG9uIGFkZGluZyBwcm9qZWN0cworICAgICAgaW50byBhbiBleGlzdGluZyBQeXRob24gaW5zdGFsbGF0aW9uLiAgWW91IGRvIG5vdCBuZWVkIHRvIGJlIGEgUHl0aG9uCisgICAgICBwcm9ncmFtbWVyIHRvIHJlYWQgdGhpcyBtYW51YWwuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9wYWNrYWdpbmcudGVzdHMucHlwaV9zZXJ2ZXIucnN0IGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnRlc3RzLnB5cGlfc2VydmVyLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mM2I3NzIwCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnRlc3RzLnB5cGlfc2VydmVyLnJzdApAQCAtMCwwICsxLDEwNSBAQAorOm1vZDpgcGFja2FnaW5nLnRlc3RzLnB5cGlfc2VydmVyYCAtLS0gUHlQSSBtb2NrIHNlcnZlcgorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcudGVzdHMucHlwaV9zZXJ2ZXIKKyAgIDpzeW5vcHNpczogTW9jayBzZXJ2ZXIgdXNlZCB0byB0ZXN0IFB5UEktcmVsYXRlZCBtb2R1bGVzIGFuZCBjb21tYW5kcy4KKworCitXaGVuIHlvdSBhcmUgdGVzdGluZyBjb2RlIHRoYXQgd29ya3Mgd2l0aCBQYWNrYWdpbmcsIHlvdSBtaWdodCBmaW5kIHRoZXNlIHRvb2xzCit1c2VmdWwuCisKKworVGhlIG1vY2sgc2VydmVyCistLS0tLS0tLS0tLS0tLS0KKworLi4gY2xhc3M6OiBQeVBJU2VydmVyCisKKyAgIFB5UElTZXJ2ZXIgaXMgYSBjbGFzcyB0aGF0IGltcGxlbWVudHMgYW4gSFRUUCBzZXJ2ZXIgcnVubmluZyBpbiBhIHNlcGFyYXRlCisgICB0aHJlYWQuIEFsbCBpdCBkb2VzIGlzIHJlY29yZCB0aGUgcmVxdWVzdHMgZm9yIGZ1cnRoZXIgaW5zcGVjdGlvbi4gVGhlIHJlY29yZGVkCisgICBkYXRhIGlzIGF2YWlsYWJsZSB1bmRlciBgYHJlcXVlc3RzYGAgYXR0cmlidXRlLiBUaGUgZGVmYXVsdAorICAgSFRUUCByZXNwb25zZSBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIHRoZSBgYGRlZmF1bHRfcmVzcG9uc2Vfc3RhdHVzYGAsCisgICBgYGRlZmF1bHRfcmVzcG9uc2VfaGVhZGVyc2BgIGFuZCBgYGRlZmF1bHRfcmVzcG9uc2VfZGF0YWBgIGF0dHJpYnV0ZXMuCisKKyAgIEJ5IGRlZmF1bHQsIHdoZW4gYWNjZXNzaW5nIHRoZSBzZXJ2ZXIgd2l0aCB1cmxzIGJlZ2lubmluZyB3aXRoIGAvc2ltcGxlL2AsCisgICB0aGUgc2VydmVyIGFsc28gcmVjb3JkIHlvdXIgcmVxdWVzdHMsIGJ1dCB3aWxsIGxvb2sgZm9yIGZpbGVzIHVuZGVyCisgICB0aGUgYC90ZXN0cy9weXBpc2VydmVyL3NpbXBsZS9gIHBhdGguCisKKyAgIFlvdSBjYW4gdGVsbCB0aGUgc2V2ZXIgdG8gc2VydmUgc3RhdGljIGZpbGVzIGZvciBvdGhlciBwYXRocy4gVGhpcyBjb3VsZCBiZQorICAgYWNjb21wbGlzaGVkIGJ5IHVzaW5nIHRoZSBgc3RhdGljX3VyaV9wYXRoc2AgcGFyYW1ldGVyLCBhcyBiZWxvdzo6CisKKyAgICAgIHNlcnZlciA9IFB5UElTZXJ2ZXIoc3RhdGljX3VyaV9wYXRocz1bImZpcnN0X3BhdGgiLCAic2Vjb25kX3BhdGgiXSkKKworCisgICBZb3UgbmVlZCB0byBjcmVhdGUgdGhlIGNvbnRlbnQgdGhhdCB3aWxsIGJlIHNlcnZlZCB1bmRlciB0aGUKKyAgIGAvdGVzdHMvcHlwaXNlcnZlci9kZWZhdWx0YCBwYXRoLiBJZiB5b3Ugd2FudCB0byBzZXJ2ZSBjb250ZW50IGZyb20gYW5vdGhlcgorICAgcGxhY2UsIHlvdSBhbHNvIGNhbiBzcGVjaWZ5IGFub3RoZXIgZmlsZXN5c3RlbSBwYXRoICh3aGljaCBuZWVkcyB0byBiZSB1bmRlcgorICAgYHRlc3RzL3B5cGlzZXJ2ZXIvYC4gVGhpcyB3aWxsIHJlcGxhY2UgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIHNlcnZlciwgYW5kCisgICBpdCB3aWxsIG5vdCBzZXJ2ZSBjb250ZW50IGZyb20gdGhlIGBkZWZhdWx0YCBkaXIgOjoKKworICAgICAgc2VydmVyID0gUHlQSVNlcnZlcihzdGF0aWNfZmlsZXN5c3RlbV9wYXRocz1bInBhdGgvdG8veW91ci9kaXIiXSkKKworCisgICBJZiB5b3UganVzdCBuZWVkIHRvIGFkZCBzb21lIHBhdGhzIHRvIHRoZSBleGlzdGluZyBvbmVzLCB5b3UgY2FuIGRvIGFzIHNob3duLAorICAga2VlcGluZyBpbiBtaW5kIHRoYXQgdGhlIHNlcnZlciB3aWxsIGFsd2F5cyB0cnkgdG8gbG9hZCBwYXRocyBpbiByZXZlcnNlIG9yZGVyCisgICAoZS5nIGhlcmUsIHRyeSAiYW5vdGhlci9zdXBlci9wYXRoIiB0aGVuIHRoZSBkZWZhdWx0IG9uZSkgOjoKKworICAgICAgc2VydmVyID0gUHlQSVNlcnZlcih0ZXN0X3N0YXRpY19wYXRoPSJhbm90aGVyL3N1cGVyL3BhdGgiKQorICAgICAgc2VydmVyID0gUHlQSVNlcnZlcigiYW5vdGhlci9zdXBlci9wYXRoIikKKyAgICAgICMgb3IKKyAgICAgIHNlcnZlci5zdGF0aWNfZmlsZXN5c3RlbV9wYXRocy5hcHBlbmQoImFub3RoZXIvc3VwZXIvcGF0aCIpCisKKworICAgQXMgYSByZXN1bHQgb2Ygd2hhdCwgaW4geW91ciB0ZXN0cywgd2hpbGUgeW91IG5lZWQgdG8gdXNlIHRoZSBQeVBJU2VydmVyLCBpbgorICAgb3JkZXIgdG8gaXNvbGF0ZXMgdGhlIHRlc3QgY2FzZXMsIHRoZSBiZXN0IHByYWN0aWNlIGlzIHRvIHBsYWNlIHRoZSBjb21tb24gZmlsZXMKKyAgIGluIHRoZSBgZGVmYXVsdGAgZm9sZGVyLCBhbmQgdG8gY3JlYXRlIGEgZGlyZWN0b3J5IGZvciBlYWNoIHNwZWNpZmljIHRlc3QgY2FzZTo6CisKKyAgICAgIHNlcnZlciA9IFB5UElTZXJ2ZXIoc3RhdGljX2ZpbGVzeXN0ZW1fcGF0aHMgPSBbImRlZmF1bHQiLCAidGVzdF9weXBpX3NlcnZlciJdLAorICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNfdXJpX3BhdGhzPVsic2ltcGxlIiwgImV4dGVybmFsIl0pCisKKworQmFzZSBjbGFzcyBhbmQgZGVjb3JhdG9yIGZvciB0ZXN0cworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisuLiBjbGFzczo6IFB5UElTZXJ2ZXJUZXN0Q2FzZQorCisgICBgYFB5UElTZXJ2ZXJUZXN0Q2FzZWBgIGlzIGEgdGVzdCBjYXNlIGNsYXNzIHdpdGggc2V0VXAgYW5kIHRlYXJEb3duIG1ldGhvZHMgdGhhdAorICAgdGFrZSBjYXJlIG9mIGEgc2luZ2xlIFB5UElTZXJ2ZXIgaW5zdGFuY2UgYXR0YWNoZWQgYXMgYSBgYHB5cGlgYCBhdHRyaWJ1dGUgb24KKyAgIHRoZSB0ZXN0IGNsYXNzLiBVc2UgaXQgYXMgb25lIG9mIHRoZSBiYXNlIGNsYXNzZXMgaW4geW91ciB0ZXN0IGNhc2U6OgorCisKKyAgICAgIGNsYXNzIFVwbG9hZFRlc3RDYXNlKFB5UElTZXJ2ZXJUZXN0Q2FzZSk6CisKKyAgICAgICAgICBkZWYgdGVzdF9zb21ldGhpbmcoc2VsZik6CisgICAgICAgICAgICAgIGNtZCA9IHNlbGYucHJlcGFyZV9jb21tYW5kKCkKKyAgICAgICAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICAgICAgICBjbWQucmVwb3NpdG9yeSA9IHNlbGYucHlwaS5mdWxsX2FkZHJlc3MKKyAgICAgICAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgICAgICAgZW52aXJvbiwgcmVxdWVzdF9kYXRhID0gc2VsZi5weXBpLnJlcXVlc3RzWy0xXQorICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcXVlc3RfZGF0YSwgRVhQRUNURURfUkVRVUVTVF9EQVRBKQorCisKKy4uIGRlY29yYXRvcjo6IHVzZV9weXBpX3NlcnZlcgorCisgICBZb3UgYWxzbyBjYW4gdXNlIGEgZGVjb3JhdG9yIGZvciB5b3VyIHRlc3RzLCBpZiB5b3UgZG8gbm90IG5lZWQgdGhlIHNhbWUgc2VydmVyCisgICBpbnN0YW5jZSBhbG9uZyBhbGwgeW91IHRlc3QgY2FzZS4gU28sIHlvdSBjYW4gc3BlY2lmeSwgZm9yIGVhY2ggdGVzdCBtZXRob2QsCisgICBzb21lIGluaXRpYWxpc2F0aW9uIHBhcmFtZXRlcnMgZm9yIHRoZSBzZXJ2ZXIuCisKKyAgIEZvciB0aGlzLCB5b3UgbmVlZCB0byBhZGQgYSBgc2VydmVyYCBwYXJhbWV0ZXIgdG8geW91ciBtZXRob2QsIGxpa2UgdGhpczo6CisKKyAgICAgIGNsYXNzIFNhbXBsZVRlc3RDYXNlKFRlc3RDYXNlKToKKworICAgICAgICAgIEB1c2VfcHlwaV9zZXJ2ZXIoKQorICAgICAgICAgIGRlZiB0ZXN0X3NvbWV0aGluZyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICAgICAgICAuLi4KKworCisgICBUaGUgZGVjb3JhdG9yIHdpbGwgaW5zdGFudGlhdGUgdGhlIHNlcnZlciBmb3IgeW91LCBhbmQgcnVuIGFuZCBzdG9wIGl0IGp1c3QKKyAgIGJlZm9yZSBhbmQgYWZ0ZXIgeW91ciBtZXRob2QgY2FsbC4gWW91IGFsc28gY2FuIHBhc3MgdGhlIHNlcnZlciBpbml0aWFsaXplciwKKyAgIGp1c3QgbGlrZSB0aGlzOjoKKworICAgICAgY2xhc3MgU2FtcGxlVGVzdENhc2UoVGVzdENhc2UpOgorCisgICAgICAgICAgQHVzZV9weXBpX3NlcnZlcigidGVzdF9jYXNlX25hbWUiKQorICAgICAgICAgIGRlZiB0ZXN0X3NvbWV0aGluZyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICAgICAgICAuLi4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BhY2thZ2luZy51dGlsLnJzdCBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy51dGlsLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNjI4YzMyCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL2xpYnJhcnkvcGFja2FnaW5nLnV0aWwucnN0CkBAIC0wLDAgKzEsMTU1IEBACis6bW9kOmBwYWNrYWdpbmcudXRpbGAgLS0tIE1pc2NlbGxhbmVvdXMgdXRpbGl0eSBmdW5jdGlvbnMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisuLiBtb2R1bGU6OiBwYWNrYWdpbmcudXRpbAorICAgOnN5bm9wc2lzOiBNaXNjZWxsYW5lb3VzIHV0aWxpdHkgZnVuY3Rpb25zLgorCisKK1RoaXMgbW9kdWxlIGNvbnRhaW5zIHZhcmlvdXMgaGVscGVycyBmb3IgdGhlIG90aGVyIG1vZHVsZXMuCisKKy4uIFhYWCBhIG51bWJlciBvZiBmdW5jdGlvbnMgYXJlIG1pc3NpbmcsIGJ1dCB0aGUgbW9kdWxlIG1heSBiZSBzcGxpdCBmaXJzdAorICAgKGl0J3MgZ2lub3Jtb3VzIHJpZ2h0IG5vdywgc29tZSB0aGluZ3MgY291bGQgZ28gdG8gY29tcGF0IGZvciBleGFtcGxlKQorCisuLiBmdW5jdGlvbjo6IGdldF9wbGF0Zm9ybSgpCisKKyAgIFJldHVybiBhIHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIGN1cnJlbnQgcGxhdGZvcm0uICBUaGlzIGlzIHVzZWQgbWFpbmx5IHRvCisgICBkaXN0aW5ndWlzaCBwbGF0Zm9ybS1zcGVjaWZpYyBidWlsZCBkaXJlY3RvcmllcyBhbmQgcGxhdGZvcm0tc3BlY2lmaWMgYnVpbHQKKyAgIGRpc3RyaWJ1dGlvbnMuICBUeXBpY2FsbHkgaW5jbHVkZXMgdGhlIE9TIG5hbWUgYW5kIHZlcnNpb24gYW5kIHRoZQorICAgYXJjaGl0ZWN0dXJlIChhcyBzdXBwbGllZCBieSAnb3MudW5hbWUoKScpLCBhbHRob3VnaCB0aGUgZXhhY3QgaW5mb3JtYXRpb24KKyAgIGluY2x1ZGVkIGRlcGVuZHMgb24gdGhlIE9TOyBlLmcuIGZvciBJUklYIHRoZSBhcmNoaXRlY3R1cmUgaXNuJ3QgcGFydGljdWxhcmx5CisgICBpbXBvcnRhbnQgKElSSVggb25seSBydW5zIG9uIFNHSSBoYXJkd2FyZSksIGJ1dCBmb3IgTGludXggdGhlIGtlcm5lbCB2ZXJzaW9uCisgICBpc24ndCBwYXJ0aWN1bGFybHkgaW1wb3J0YW50LgorCisgICBFeGFtcGxlcyBvZiByZXR1cm5lZCB2YWx1ZXM6CisKKyAgICogYGBsaW51eC1pNTg2YGAKKyAgICogYGBsaW51eC1hbHBoYWBgCisgICAqIGBgc29sYXJpcy0yLjYtc3VuNHVgYAorICAgKiBgYGlyaXgtNS4zYGAKKyAgICogYGBpcml4NjQtNi4yYGAKKworICAgRm9yIG5vbi1QT1NJWCBwbGF0Zm9ybXMsIGN1cnJlbnRseSBqdXN0IHJldHVybnMgYGBzeXMucGxhdGZvcm1gYC4KKworICAgRm9yIE1hYyBPUyBYIHN5c3RlbXMgdGhlIE9TIHZlcnNpb24gcmVmbGVjdHMgdGhlIG1pbmltYWwgdmVyc2lvbiBvbiB3aGljaAorICAgYmluYXJpZXMgd2lsbCBydW4gKHRoYXQgaXMsIHRoZSB2YWx1ZSBvZiBgYE1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVGBgCisgICBkdXJpbmcgdGhlIGJ1aWxkIG9mIFB5dGhvbiksIG5vdCB0aGUgT1MgdmVyc2lvbiBvZiB0aGUgY3VycmVudCBzeXN0ZW0uCisKKyAgIEZvciB1bml2ZXJzYWwgYmluYXJ5IGJ1aWxkcyBvbiBNYWMgT1MgWCB0aGUgYXJjaGl0ZWN0dXJlIHZhbHVlIHJlZmxlY3RzCisgICB0aGUgdW5pdmVyYWwgYmluYXJ5IHN0YXR1cyBpbnN0ZWFkIG9mIHRoZSBhcmNoaXRlY3R1cmUgb2YgdGhlIGN1cnJlbnQKKyAgIHByb2Nlc3Nvci4gRm9yIDMyLWJpdCB1bml2ZXJzYWwgYmluYXJpZXMgdGhlIGFyY2hpdGVjdHVyZSBpcyBgYGZhdGBgLAorICAgZm9yIDY0LWJpdCB1bml2ZXJzYWwgYmluYXJpZXMgdGhlIGFyY2hpdGVjdHVyZSBpcyBgYGZhdDY0YGAsIGFuZAorICAgZm9yIDQtd2F5IHVuaXZlcnNhbCBiaW5hcmllcyB0aGUgYXJjaGl0ZWN0dXJlIGlzIGBgdW5pdmVyc2FsYGAuIFN0YXJ0aW5nCisgICBmcm9tIFB5dGhvbiAyLjcgYW5kIFB5dGhvbiAzLjIgdGhlIGFyY2hpdGVjdHVyZSBgYGZhdDNgYCBpcyB1c2VkIGZvcgorICAgYSAzLXdheSB1bml2ZXJzYWwgYnVpbGQgKHBwYywgaTM4NiwgeDg2XzY0KSBhbmQgYGBpbnRlbGBgIGlzIHVzZWQgZm9yCisgICBhIHVuaXZlcmFsIGJ1aWxkIHdpdGggdGhlIGkzODYgYW5kIHg4Nl82NCBhcmNoaXRlY3R1cmVzCisKKyAgIEV4YW1wbGVzIG9mIHJldHVybmVkIHZhbHVlcyBvbiBNYWMgT1MgWDoKKworICAgKiBgYG1hY29zeC0xMC4zLXBwY2BgCisKKyAgICogYGBtYWNvc3gtMTAuMy1mYXRgYAorCisgICAqIGBgbWFjb3N4LTEwLjUtdW5pdmVyc2FsYGAKKworICAgKiBgYG1hY29zeC0xMC42LWludGVsYGAKKworICAgLi4gWFhYIHJlaW52ZW50aW9uIG9mIHBsYXRmb3JtIG1vZHVsZT8KKworCisuLiBmdW5jdGlvbjo6IGNvbnZlcnRfcGF0aChwYXRobmFtZSkKKworICAgUmV0dXJuICdwYXRobmFtZScgYXMgYSBuYW1lIHRoYXQgd2lsbCB3b3JrIG9uIHRoZSBuYXRpdmUgZmlsZXN5c3RlbSwgaS5lLgorICAgc3BsaXQgaXQgb24gJy8nIGFuZCBwdXQgaXQgYmFjayB0b2dldGhlciBhZ2FpbiB1c2luZyB0aGUgY3VycmVudCBkaXJlY3RvcnkKKyAgIHNlcGFyYXRvci4gTmVlZGVkIGJlY2F1c2UgZmlsZW5hbWVzIGluIHRoZSBzZXR1cCBzY3JpcHQgYXJlIGFsd2F5cyBzdXBwbGllZAorICAgaW4gVW5peCBzdHlsZSwgYW5kIGhhdmUgdG8gYmUgY29udmVydGVkIHRvIHRoZSBsb2NhbCBjb252ZW50aW9uIGJlZm9yZSB3ZQorICAgY2FuIGFjdHVhbGx5IHVzZSB0aGVtIGluIHRoZSBmaWxlc3lzdGVtLiAgUmFpc2VzIDpleGM6YFZhbHVlRXJyb3JgIG9uCisgICBub24tVW5peC1pc2ggc3lzdGVtcyBpZiAqcGF0aG5hbWUqIGVpdGhlciBzdGFydHMgb3IgZW5kcyB3aXRoIGEgc2xhc2guCisKKworLi4gZnVuY3Rpb246OiBjaGFuZ2Vfcm9vdChuZXdfcm9vdCwgcGF0aG5hbWUpCisKKyAgIFJldHVybiAqcGF0aG5hbWUqIHdpdGggKm5ld19yb290KiBwcmVwZW5kZWQuICBJZiAqcGF0aG5hbWUqIGlzIHJlbGF0aXZlLCB0aGlzCisgICBpcyBlcXVpdmFsZW50IHRvIGBgb3MucGF0aC5qb2luKG5ld19yb290LHBhdGhuYW1lKWBgIE90aGVyd2lzZSwgaXQgcmVxdWlyZXMKKyAgIG1ha2luZyAqcGF0aG5hbWUqIHJlbGF0aXZlIGFuZCB0aGVuIGpvaW5pbmcgdGhlIHR3bywgd2hpY2ggaXMgdHJpY2t5IG9uCisgICBET1MvV2luZG93cy4KKworCisuLiBmdW5jdGlvbjo6IGNoZWNrX2Vudmlyb24oKQorCisgICBFbnN1cmUgdGhhdCAnb3MuZW52aXJvbicgaGFzIGFsbCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGVzIHdlIGd1YXJhbnRlZSB0aGF0CisgICB1c2VycyBjYW4gdXNlIGluIGNvbmZpZyBmaWxlcywgY29tbWFuZC1saW5lIG9wdGlvbnMsIGV0Yy4gIEN1cnJlbnRseSB0aGlzCisgICBpbmNsdWRlczoKKworICAgKiA6ZW52dmFyOmBIT01FYCAtIHVzZXIncyBob21lIGRpcmVjdG9yeSAoVW5peCBvbmx5KQorICAgKiA6ZW52dmFyOmBQTEFUYCAtIGRlc2NyaXB0aW9uIG9mIHRoZSBjdXJyZW50IHBsYXRmb3JtLCBpbmNsdWRpbmcgaGFyZHdhcmUKKyAgICAgYW5kIE9TIChzZWUgOmZ1bmM6YGdldF9wbGF0Zm9ybWApCisKKworLi4gZnVuY3Rpb246OiBmaW5kX2V4ZWN1dGFibGUoZXhlY3V0YWJsZSwgcGF0aD1Ob25lKQorCisgICBTZWFyY2ggdGhlIHBhdGggZm9yIGEgZ2l2ZW4gZXhlY3V0YWJsZSBuYW1lLgorCisKKy4uIGZ1bmN0aW9uOjogZXhlY3V0ZShmdW5jLCBhcmdzLCBtc2c9Tm9uZSwgZHJ5X3J1bj1GYWxzZSkKKworICAgUGVyZm9ybSBzb21lIGFjdGlvbiB0aGF0IGFmZmVjdHMgdGhlIG91dHNpZGUgd29ybGQgKGZvciBpbnN0YW5jZSwgd3JpdGluZyB0bworICAgdGhlIGZpbGVzeXN0ZW0pLiAgU3VjaCBhY3Rpb25zIGFyZSBzcGVjaWFsIGJlY2F1c2UgdGhleSBhcmUgZGlzYWJsZWQgYnkgdGhlCisgICAqZHJ5X3J1biogZmxhZy4gIFRoaXMgbWV0aG9kIHRha2VzIGNhcmUgb2YgYWxsIHRoYXQgYnVyZWF1Y3JhY3kgZm9yIHlvdTsKKyAgIGFsbCB5b3UgaGF2ZSB0byBkbyBpcyBzdXBwbHkgdGhlIGZ1bmN0aW9uIHRvIGNhbGwgYW5kIGFuIGFyZ3VtZW50IHR1cGxlIGZvcgorICAgaXQgKHRvIGVtYm9keSB0aGUgImV4dGVybmFsIGFjdGlvbiIgYmVpbmcgcGVyZm9ybWVkKSwgYW5kIGFuIG9wdGlvbmFsIG1lc3NhZ2UKKyAgIHRvIHByaW50LgorCisKKy4uIGZ1bmN0aW9uOjogbmV3ZXIoc291cmNlLCB0YXJnZXQpCisKKyAgIFJldHVybiB0cnVlIGlmICpzb3VyY2UqIGV4aXN0cyBhbmQgaXMgbW9yZSByZWNlbnRseSBtb2RpZmllZCB0aGFuICp0YXJnZXQqLAorICAgb3IgaWYgKnNvdXJjZSogZXhpc3RzIGFuZCAqdGFyZ2V0KiBkb2Vzbid0LiBSZXR1cm4gZmFsc2UgaWYgYm90aCBleGlzdCBhbmQKKyAgICp0YXJnZXQqIGlzIHRoZSBzYW1lIGFnZSBvciBuZXdlciB0aGFuICpzb3VyY2UqLiBSYWlzZQorICAgOmV4YzpgUGFja2FnaW5nRmlsZUVycm9yYCBpZiAqc291cmNlKiBkb2VzIG5vdCBleGlzdC4KKworCisuLiBmdW5jdGlvbjo6IHN0cnRvYm9vbCh2YWwpCisKKyAgIENvbnZlcnQgYSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdHJ1dGggdG8gdHJ1ZSAoMSkgb3IgZmFsc2UgKDApLgorCisgICBUcnVlIHZhbHVlcyBhcmUgYGB5YGAsIGBgeWVzYGAsIGBgdGBgLCBgYHRydWVgYCwgYGBvbmBgIGFuZCBgYDFgYDsgZmFsc2UKKyAgIHZhbHVlcyBhcmUgYGBuYGAsIGBgbm9gYCwgYGBmYGAsIGBgZmFsc2VgYCwgYGBvZmZgYCBhbmQgYGAwYGAuICBSYWlzZXMKKyAgIDpleGM6YFZhbHVlRXJyb3JgIGlmICp2YWwqIGlzIGFueXRoaW5nIGVsc2UuCisKKworLi4gZnVuY3Rpb246OiBieXRlX2NvbXBpbGUocHlfZmlsZXMsIG9wdGltaXplPTAsIGZvcmNlPTAsIHByZWZpeD1Ob25lLCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlX2Rpcj1Ob25lLCBkcnlfcnVuPTAsIGRpcmVjdD1Ob25lKQorCisgICBCeXRlLWNvbXBpbGUgYSBjb2xsZWN0aW9uIG9mIFB5dGhvbiBzb3VyY2UgZmlsZXMgdG8gZWl0aGVyIDpmaWxlOmAucHljYCBvcgorICAgOmZpbGU6YC5weW9gIGZpbGVzIGluIGEgOmZpbGU6YF9fcHljYWNoZV9fYCBzdWJkaXJlY3RvcnkgKHNlZSA6cGVwOmAzMTQ3YCksCisgICBvciB0byB0aGUgc2FtZSBkaXJlY3Rvcnkgd2hlbiB1c2luZyB0aGUgZGlzdHV0aWxzMiBiYWNrcG9ydCBvbiBQeXRob24KKyAgIHZlcnNpb25zIG9sZGVyIHRoYW4gMy4yLgorCisgICAqcHlfZmlsZXMqIGlzIGEgbGlzdCBvZiBmaWxlcyB0byBjb21waWxlOyBhbnkgZmlsZXMgdGhhdCBkb24ndCBlbmQgaW4KKyAgIDpmaWxlOmAucHlgIGFyZSBzaWxlbnRseSBza2lwcGVkLiAgKm9wdGltaXplKiBtdXN0IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nOgorCisgICAqIGBgMGBgIC0gZG9uJ3Qgb3B0aW1pemUgKGdlbmVyYXRlIDpmaWxlOmAucHljYCkKKyAgICogYGAxYGAgLSBub3JtYWwgb3B0aW1pemF0aW9uIChsaWtlIGBgcHl0aG9uIC1PYGApCisgICAqIGBgMmBgIC0gZXh0cmEgb3B0aW1pemF0aW9uIChsaWtlIGBgcHl0aG9uIC1PT2BgKQorCisgICBUaGlzIGZ1bmN0aW9uIGlzIGluZGVwZW5kZW50IGZyb20gdGhlIHJ1bm5pbmcgUHl0aG9uJ3MgOm9wdGlvbjpgLU9gIG9yCisgICA6b3B0aW9uOmAtQmAgb3B0aW9uczsgaXQgaXMgZnVsbHkgY29udHJvbGxlZCBieSB0aGUgcGFyYW1ldGVycyBwYXNzZWQgaW4uCisKKyAgIElmICpmb3JjZSogaXMgdHJ1ZSwgYWxsIGZpbGVzIGFyZSByZWNvbXBpbGVkIHJlZ2FyZGxlc3Mgb2YgdGltZXN0YW1wcy4KKworICAgVGhlIHNvdXJjZSBmaWxlbmFtZSBlbmNvZGVkIGluIGVhY2ggOnRlcm06YGJ5dGVjb2RlYCBmaWxlIGRlZmF1bHRzIHRvIHRoZSBmaWxlbmFtZXMKKyAgIGxpc3RlZCBpbiAqcHlfZmlsZXMqOyB5b3UgY2FuIG1vZGlmeSB0aGVzZSB3aXRoICpwcmVmaXgqIGFuZCAqYmFzZWRpciouCisgICAqcHJlZml4KiBpcyBhIHN0cmluZyB0aGF0IHdpbGwgYmUgc3RyaXBwZWQgb2ZmIG9mIGVhY2ggc291cmNlIGZpbGVuYW1lLCBhbmQKKyAgICpiYXNlX2RpciogaXMgYSBkaXJlY3RvcnkgbmFtZSB0aGF0IHdpbGwgYmUgcHJlcGVuZGVkIChhZnRlciAqcHJlZml4KiBpcworICAgc3RyaXBwZWQpLiAgWW91IGNhbiBzdXBwbHkgZWl0aGVyIG9yIGJvdGggKG9yIG5laXRoZXIpIG9mICpwcmVmaXgqIGFuZAorICAgKmJhc2VfZGlyKiwgYXMgeW91IHdpc2guCisKKyAgIElmICpkcnlfcnVuKiBpcyB0cnVlLCBkb2Vzbid0IGFjdHVhbGx5IGRvIGFueXRoaW5nIHRoYXQgd291bGQgYWZmZWN0IHRoZQorICAgZmlsZXN5c3RlbS4KKworICAgQnl0ZS1jb21waWxhdGlvbiBpcyBlaXRoZXIgZG9uZSBkaXJlY3RseSBpbiB0aGlzIGludGVycHJldGVyIHByb2Nlc3Mgd2l0aCB0aGUKKyAgIHN0YW5kYXJkIDptb2Q6YHB5X2NvbXBpbGVgIG1vZHVsZSwgb3IgaW5kaXJlY3RseSBieSB3cml0aW5nIGEgdGVtcG9yYXJ5CisgICBzY3JpcHQgYW5kIGV4ZWN1dGluZyBpdC4gIE5vcm1hbGx5LCB5b3Ugc2hvdWxkIGxldCA6ZnVuYzpgYnl0ZV9jb21waWxlYAorICAgZmlndXJlIG91dCB0byB1c2UgZGlyZWN0IGNvbXBpbGF0aW9uIG9yIG5vdCAoc2VlIHRoZSBzb3VyY2UgZm9yIGRldGFpbHMpLgorICAgVGhlICpkaXJlY3QqIGZsYWcgaXMgdXNlZCBieSB0aGUgc2NyaXB0IGdlbmVyYXRlZCBpbiBpbmRpcmVjdCBtb2RlOyB1bmxlc3MKKyAgIHlvdSBrbm93IHdoYXQgeW91J3JlIGRvaW5nLCBsZWF2ZSBpdCBzZXQgdG8gYGBOb25lYGAuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9wYWNrYWdpbmcudmVyc2lvbi5yc3QgYi9Eb2MvbGlicmFyeS9wYWNrYWdpbmcudmVyc2lvbi5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjM2Y2RhYgotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9saWJyYXJ5L3BhY2thZ2luZy52ZXJzaW9uLnJzdApAQCAtMCwwICsxLDEwNCBAQAorOm1vZDpgcGFja2FnaW5nLnZlcnNpb25gIC0tLSBWZXJzaW9uIG51bWJlciBjbGFzc2VzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gbW9kdWxlOjogcGFja2FnaW5nLnZlcnNpb24KKyAgIDpzeW5vcHNpczogQ2xhc3NlcyB0aGF0IHJlcHJlc2VudCBwcm9qZWN0IHZlcnNpb24gbnVtYmVycy4KKworCitUaGlzIG1vZHVsZSBjb250YWlucyBjbGFzc2VzIGFuZCBmdW5jdGlvbnMgdXNlZnVsIHRvIGRlYWwgd2l0aCB2ZXJzaW9uIG51bWJlcnMuCitJdCdzIGFuIGltcGxlbWVudGF0aW9uIG9mIHZlcnNpb24gc3BlY2lmaWVycyBgYXMgZGVmaW5lZCBpbiBQRVAgMzQ1Cis8aHR0cDovL3d3dy5weXRob24ub3JnL2Rldi9wZXBzL3BlcC0wMzQ1LyN2ZXJzaW9uLXNwZWNpZmllcnM+YF8uCisKKworVmVyc2lvbiBudW1iZXJzCistLS0tLS0tLS0tLS0tLS0KKworLi4gY2xhc3M6OiBOb3JtYWxpemVkVmVyc2lvbihzZWxmLCBzLCBlcnJvcl9vbl9odWdlX21ham9yX251bT1UcnVlKQorCisgICBBIHNwZWNpZmljIHZlcnNpb24gb2YgYSBkaXN0cmlidXRpb24sIGFzIGRlc2NyaWJlZCBpbiBQRVAgMzQ1LiAgKnMqIGlzIGEKKyAgIHN0cmluZyBvYmplY3QgY29udGFpbmluZyB0aGUgdmVyc2lvbiBudW1iZXIgKGZvciBleGFtcGxlIGBgJzEuMmIxJ2BgKSwKKyAgICplcnJvcl9vbl9odWdlX21ham9yX251bSogYSBib29sZWFuIHNwZWNpZnlpbmcgd2hldGhlciB0byBjb25zaWRlciBhbgorICAgYXBwYXJlbnQgdXNlIG9mIGEgeWVhciBvciBmdWxsIGRhdGUgYXMgdGhlIG1ham9yIHZlcnNpb24gbnVtYmVyIGFuIGVycm9yLgorCisgICBUaGUgcmF0aW9uYWxlIGZvciB0aGUgc2Vjb25kIGFyZ3VtZW50IGlzIHRoYXQgdGhlcmUgd2VyZSBwcm9qZWN0cyB1c2luZyB5ZWFycworICAgb3IgZnVsbCBkYXRlcyBhcyB2ZXJzaW9uIG51bWJlcnMsIHdoaWNoIGNvdWxkIGNhdXNlIHByb2JsZW1zIHdpdGggc29tZQorICAgcGFja2FnaW5nIHN5c3RlbXMgc29ydGluZy4KKworICAgSW5zdGFuY2VzIG9mIHRoaXMgY2xhc3MgY2FuIGJlIGNvbXBhcmVkIGFuZCBzb3J0ZWQ6OgorCisgICAgICA+Pj4gTm9ybWFsaXplZFZlcnNpb24oJzEuMmIxJykgPCBOb3JtYWxpemVkVmVyc2lvbignMS4yJykKKyAgICAgIFRydWUKKworICAgOmNsYXNzOmBOb3JtYWxpemVkVmVyc2lvbmAgaXMgdXNlZCBpbnRlcm5hbGx5IGJ5IDpjbGFzczpgVmVyc2lvblByZWRpY2F0ZWAgdG8KKyAgIGRvIGl0cyB3b3JrLgorCisKKy4uIGNsYXNzOjogSXJyYXRpb25hbFZlcnNpb25FcnJvcgorCisgICBFeGNlcHRpb24gcmFpc2VkIHdoZW4gYW4gaW52YWxpZCBzdHJpbmcgaXMgZ2l2ZW4gdG8KKyAgIDpjbGFzczpgTm9ybWFsaXplZFZlcnNpb25gLgorCisgICAgICA+Pj4gTm9ybWFsaXplZFZlcnNpb24oImlycmF0aW9uYWxfdmVyc2lvbl9udW1iZXIiKQorICAgICAgLi4uCisgICAgICBJcnJhdGlvbmFsVmVyc2lvbkVycm9yOiBpcnJhdGlvbmFsX3ZlcnNpb25fbnVtYmVyCisKKworLi4gZnVuY3Rpb246OiBzdWdnZXN0X25vcm1hbGl6ZWRfdmVyc2lvbihzKQorCisgICBCZWZvcmUgc3RhbmRhcmRpemF0aW9uIGluIFBFUCAzODYsIHZhcmlvdXMgc2NoZW1lcyB3ZXJlIGluIHVzZS4gIFBhY2thZ2luZworICAgcHJvdmlkZXMgYSBmdW5jdGlvbiB0byB0cnkgdG8gY29udmVydCBhbnkgc3RyaW5nIHRvIGEgdmFsaWQsIG5vcm1hbGl6ZWQKKyAgIHZlcnNpb246OgorCisgICAgICA+Pj4gc3VnZ2VzdF9ub3JtYWxpemVkX3ZlcnNpb24oJzIuMS1yYzEnKQorICAgICAgMi4xYzEKKworCisgICBJZiA6ZnVuYzpgc3VnZ2VzdF9ub3JtYWxpemVkX3ZlcnNpb25gIGNhbid0IG1ha2Ugc2Vuc2Ugb2YgdGhlIGdpdmVuIHN0cmluZywKKyAgIGl0IHdpbGwgcmV0dXJuIGBgTm9uZWBgOjoKKworICAgICAgPj4+IHByaW50KHN1Z2dlc3Rfbm9ybWFsaXplZF92ZXJzaW9uKCdub3QgYSB2ZXJzaW9uJykpCisgICAgICBOb25lCisKKworVmVyc2lvbiBwcmVkaWNhdGVzCistLS0tLS0tLS0tLS0tLS0tLS0KKworLi4gY2xhc3M6OiBWZXJzaW9uUHJlZGljYXRlKHByZWRpY2F0ZSkKKworICAgVGhpcyBjbGFzcyBkZWFscyB3aXRoIHRoZSBwYXJzaW5nIG9mIGZpZWxkIHZhbHVlcyBsaWtlCisgICBgYFByb2plY3ROYW1lICg+PXZlcnNpb24pYGAuCisKKyAgIC4uIG1ldGhvZDo6IG1hdGNoKHZlcnNpb24pCisKKyAgICAgIFRlc3QgaWYgYSB2ZXJzaW9uIG51bWJlciBtYXRjaGVzIHRoZSBwcmVkaWNhdGU6CisKKyAgICAgICAgID4+PiB2ZXJzaW9uID0gVmVyc2lvblByZWRpY2F0ZSgiUHJvamVjdE5hbWUgKDwxLjIsID4xLjApIikKKyAgICAgICAgID4+PiB2ZXJzaW9uLm1hdGNoKCIxLjIuMSIpCisgICAgICAgICBGYWxzZQorICAgICAgICAgPj4+IHZlcnNpb24ubWF0Y2goIjEuMS4xIikKKyAgICAgICAgIFRydWUKKworCitWYWxpZGF0aW9uIGhlbHBlcnMKKy0tLS0tLS0tLS0tLS0tLS0tLQorCitJZiB5b3Ugd2FudCB0byB1c2UgOnRlcm06YExCWUxgLXN0eWxlIGNoZWNrcyBpbnN0ZWFkIG9mIGluc3RhbnRpYXRpbmcgdGhlCitjbGFzc2VzIGFuZCBjYXRjaGluZyA6Y2xhc3M6YElycmF0aW9uYWxWZXJzaW9uRXJyb3JgIGFuZCA6Y2xhc3M6YFZhbHVlRXJyb3JgLAoreW91IGNhbiB1c2UgdGhlc2UgZnVuY3Rpb25zOgorCisuLiBmdW5jdGlvbjo6IGlzX3ZhbGlkX3ZlcnNpb24ocHJlZGljYXRlKQorCisgICBDaGVjayB3aGV0aGVyIHRoZSBnaXZlbiBzdHJpbmcgaXMgYSB2YWxpZCB2ZXJzaW9uIG51bWJlci4gIEV4YW1wbGUgb2YgdmFsaWQKKyAgIHN0cmluZ3M6IGBgJzEuMidgYCwgIGBgJzQuMi4wLmRldjQnYGAsIGBgJzIuNS40LnBvc3QyJ2BgLgorCisKKy4uIGZ1bmN0aW9uOjogaXNfdmFsaWRfdmVyc2lvbnMocHJlZGljYXRlKQorCisgICBDaGVjayB3aGV0aGVyIHRoZSBnaXZlbiBzdHJpbmcgaXMgYSB2YWxpZCB2YWx1ZSBmb3Igc3BlY2lmeWluZyBtdWx0aXBsZQorICAgdmVyc2lvbnMsIHN1Y2ggYXMgaW4gdGhlIFJlcXVpcmVzLVB5dGhvbiBmaWVsZC4gIEV4YW1wbGU6IGBgJzIuNywgPj0zLjInYGAuCisKKworLi4gZnVuY3Rpb246OiBpc192YWxpZF9wcmVkaWNhdGUocHJlZGljYXRlKQorCisgICBDaGVjayB3aGV0aGVyIHRoZSBnaXZlbiBzdHJpbmcgaXMgYSB2YWxpZCB2ZXJzaW9uIHByZWRpY2F0ZS4gIEV4YW1wbGVzOgorICAgYGAnc29tZS5wcm9qZWN0ID09IDQuNSwgPD0gNC43J2BgLCBgYCdzcGVjaWFsbGliICg+IDEuMCwgIT0gMS40LjIsIDwgMi4wKSdgYC4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3BsYXRmb3JtLnJzdCBiL0RvYy9saWJyYXJ5L3BsYXRmb3JtLnJzdAppbmRleCA4NWVjYTlhLi45MzhjMjcwIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9wbGF0Zm9ybS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvcGxhdGZvcm0ucnN0CkBAIC0yMTQsNiArMjE0LDEwIEBACiAgICBwcmVmZXJyaW5nIDpmdW5jOmB3aW4zMnBpcGUucG9wZW5gLiAgT24gV2luZG93cyBOVCwgOmZ1bmM6YHdpbjMycGlwZS5wb3BlbmAKICAgIHNob3VsZCB3b3JrOyBvbiBXaW5kb3dzIDl4IGl0IGhhbmdzIGR1ZSB0byBidWdzIGluIHRoZSBNUyBDIGxpYnJhcnkuCiAKKyAgIC4uIGRlcHJlY2F0ZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gaXMgb2Jzb2xldGUuICBVc2UgdGhlIDptb2Q6YHN1YnByb2Nlc3NgIG1vZHVsZS4gIENoZWNrCisgICAgICBlc3BlY2lhbGx5IHRoZSA6cmVmOmBzdWJwcm9jZXNzLXJlcGxhY2VtZW50c2Agc2VjdGlvbi4KKwogCiBNYWMgT1MgUGxhdGZvcm0KIC0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcHl0aG9uLnJzdCBiL0RvYy9saWJyYXJ5L3B5dGhvbi5yc3QKaW5kZXggYjY3ZmJmYy4uMDdlYWRiNCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvcHl0aG9uLnJzdAorKysgYi9Eb2MvbGlicmFyeS9weXRob24ucnN0CkBAIC0yNSw0ICsyNSw1IEBACiAgICBpbnNwZWN0LnJzdAogICAgc2l0ZS5yc3QKICAgIGZwZWN0bC5yc3QKKyAgIHBhY2thZ2luZy5yc3QKICAgIGRpc3R1dGlscy5yc3QKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3JhbmRvbS5yc3QgYi9Eb2MvbGlicmFyeS9yYW5kb20ucnN0CmluZGV4IDMxY2I5NDUuLjJiMTBlNmUgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3JhbmRvbS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvcmFuZG9tLnJzdApAQCAtNDMsNiArNDMsMTIgQEAKIHVzZXMgdGhlIHN5c3RlbSBmdW5jdGlvbiA6ZnVuYzpgb3MudXJhbmRvbWAgdG8gZ2VuZXJhdGUgcmFuZG9tIG51bWJlcnMKIGZyb20gc291cmNlcyBwcm92aWRlZCBieSB0aGUgb3BlcmF0aW5nIHN5c3RlbS4KIAorLi4gd2FybmluZzo6CisKKyAgIFRoZSBnZW5lcmF0b3JzIG9mIHRoZSA6bW9kOmByYW5kb21gIG1vZHVsZSBzaG91bGQgbm90IGJlIHVzZWQgZm9yIHNlY3VyaXR5CisgICBwdXJwb3Nlcy4gVXNlIDpmdW5jOmBzc2wuUkFORF9ieXRlc2AgaWYgeW91IHJlcXVpcmUgYSBjcnlwdG9ncmFwaGljYWxseQorICAgc2VjdXJlIHBzZXVkb3JhbmRvbSBudW1iZXIgZ2VuZXJhdG9yLgorCiAKIEJvb2trZWVwaW5nIGZ1bmN0aW9uczoKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvcmUucnN0IGIvRG9jL2xpYnJhcnkvcmUucnN0CmluZGV4IGIxOTZhMjguLmQzZDk3YzAgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3JlLnJzdAorKysgYi9Eb2MvbGlicmFyeS9yZS5yc3QKQEAgLTY5OSw5ICs2OTksMTIgQEAKIAogLi4gZnVuY3Rpb246OiBlc2NhcGUoc3RyaW5nKQogCi0gICBSZXR1cm4gKnN0cmluZyogd2l0aCBhbGwgbm9uLWFscGhhbnVtZXJpY3MgYmFja3NsYXNoZWQ7IHRoaXMgaXMgdXNlZnVsIGlmIHlvdQotICAgd2FudCB0byBtYXRjaCBhbiBhcmJpdHJhcnkgbGl0ZXJhbCBzdHJpbmcgdGhhdCBtYXkgaGF2ZSByZWd1bGFyIGV4cHJlc3Npb24KLSAgIG1ldGFjaGFyYWN0ZXJzIGluIGl0LgorICAgRXNjYXBlIGFsbCB0aGUgY2hhcmFjdGVycyBpbiBwYXR0ZXJuIGV4Y2VwdCBBU0NJSSBsZXR0ZXJzLCBudW1iZXJzIGFuZCBgYCdfJ2BgLgorICAgVGhpcyBpcyB1c2VmdWwgaWYgeW91IHdhbnQgdG8gbWF0Y2ggYW4gYXJiaXRyYXJ5IGxpdGVyYWwgc3RyaW5nIHRoYXQgbWF5CisgICBoYXZlIHJlZ3VsYXIgZXhwcmVzc2lvbiBtZXRhY2hhcmFjdGVycyBpbiBpdC4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoZSBgYCdfJ2BgIGNoYXJhY3RlciBpcyBubyBsb25nZXIgZXNjYXBlZC4KIAogCiAuLiBmdW5jdGlvbjo6IHB1cmdlKCkKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3JlYWRsaW5lLnJzdCBiL0RvYy9saWJyYXJ5L3JlYWRsaW5lLnJzdAppbmRleCBhYjU1MTk3Li4xMTM0NjE5IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9yZWFkbGluZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvcmVhZGxpbmUucnN0CkBAIC0xOTksNyArMTk5LDcgQEAKICAgIGhpc3RmaWxlID0gb3MucGF0aC5qb2luKG9zLnBhdGguZXhwYW5kdXNlcigifiIpLCAiLnB5aGlzdCIpCiAgICB0cnk6CiAgICAgICAgcmVhZGxpbmUucmVhZF9oaXN0b3J5X2ZpbGUoaGlzdGZpbGUpCi0gICBleGNlcHQgSU9FcnJvcjoKKyAgIGV4Y2VwdCBGaWxlTm90Rm91bmRFcnJvcjoKICAgICAgICBwYXNzCiAgICBpbXBvcnQgYXRleGl0CiAgICBhdGV4aXQucmVnaXN0ZXIocmVhZGxpbmUud3JpdGVfaGlzdG9yeV9maWxlLCBoaXN0ZmlsZSkKQEAgLTIyNCw3ICsyMjQsNyBAQAogICAgICAgICAgICBpZiBoYXNhdHRyKHJlYWRsaW5lLCAicmVhZF9oaXN0b3J5X2ZpbGUiKToKICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICByZWFkbGluZS5yZWFkX2hpc3RvcnlfZmlsZShoaXN0ZmlsZSkKLSAgICAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yOgorICAgICAgICAgICAgICAgZXhjZXB0IEZpbGVOb3RGb3VuZEVycm9yOgogICAgICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgICAgIGF0ZXhpdC5yZWdpc3RlcihzZWxmLnNhdmVfaGlzdG9yeSwgaGlzdGZpbGUpCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3Jlc291cmNlLnJzdCBiL0RvYy9saWJyYXJ5L3Jlc291cmNlLnJzdAppbmRleCBjMTZiMDEzLi4wM2E3Y2I1IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9yZXNvdXJjZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvcmVzb3VyY2UucnN0CkBAIC0xNCwxMyArMTQsMTUgQEAKIFN5bWJvbGljIGNvbnN0YW50cyBhcmUgdXNlZCB0byBzcGVjaWZ5IHBhcnRpY3VsYXIgc3lzdGVtIHJlc291cmNlcyBhbmQgdG8KIHJlcXVlc3QgdXNhZ2UgaW5mb3JtYXRpb24gYWJvdXQgZWl0aGVyIHRoZSBjdXJyZW50IHByb2Nlc3Mgb3IgaXRzIGNoaWxkcmVuLgogCi1BIHNpbmdsZSBleGNlcHRpb24gaXMgZGVmaW5lZCBmb3IgZXJyb3JzOgorQW4gOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkIG9uIHN5c2NhbGwgZmFpbHVyZS4KIAogCiAuLiBleGNlcHRpb246OiBlcnJvcgogCi0gICBUaGUgZnVuY3Rpb25zIGRlc2NyaWJlZCBiZWxvdyBtYXkgcmFpc2UgdGhpcyBlcnJvciBpZiB0aGUgdW5kZXJseWluZyBzeXN0ZW0gY2FsbAotICAgZmFpbHVyZXMgdW5leHBlY3RlZGx5LgorICAgQSBkZXByZWNhdGVkIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgRm9sbG93aW5nIDpwZXA6YDMxNTFgLCB0aGlzIGNsYXNzIHdhcyBtYWRlIGFuIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgogCiAKIFJlc291cmNlIExpbWl0cwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvc2NoZWQucnN0IGIvRG9jL2xpYnJhcnkvc2NoZWQucnN0CmluZGV4IDAwMGRiYTAuLjk1N2JkZDMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3NjaGVkLnJzdAorKysgYi9Eb2MvbGlicmFyeS9zY2hlZC5yc3QKQEAgLTE0LDcgKzE0LDcgQEAKIFRoZSA6bW9kOmBzY2hlZGAgbW9kdWxlIGRlZmluZXMgYSBjbGFzcyB3aGljaCBpbXBsZW1lbnRzIGEgZ2VuZXJhbCBwdXJwb3NlIGV2ZW50CiBzY2hlZHVsZXI6CiAKLS4uIGNsYXNzOjogc2NoZWR1bGVyKHRpbWVmdW5jLCBkZWxheWZ1bmMpCisuLiBjbGFzczo6IHNjaGVkdWxlcih0aW1lZnVuYz10aW1lLnRpbWUsIGRlbGF5ZnVuYz10aW1lLnNsZWVwKQogCiAgICBUaGUgOmNsYXNzOmBzY2hlZHVsZXJgIGNsYXNzIGRlZmluZXMgYSBnZW5lcmljIGludGVyZmFjZSB0byBzY2hlZHVsaW5nIGV2ZW50cy4KICAgIEl0IG5lZWRzIHR3byBmdW5jdGlvbnMgdG8gYWN0dWFsbHkgZGVhbCB3aXRoIHRoZSAib3V0c2lkZSB3b3JsZCIgLS0tICp0aW1lZnVuYyoKQEAgLTI1LDYgKzI1LDEyIEBACiAgICBldmVudCBpcyBydW4gdG8gYWxsb3cgb3RoZXIgdGhyZWFkcyBhbiBvcHBvcnR1bml0eSB0byBydW4gaW4gbXVsdGktdGhyZWFkZWQKICAgIGFwcGxpY2F0aW9ucy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICp0aW1lZnVuYyogYW5kICpkZWxheWZ1bmMqIHBhcmFtZXRlcnMgYXJlIG9wdGlvbmFsLgorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIDpjbGFzczpgc2NoZWR1bGVyYCBjbGFzcyBjYW4gYmUgc2FmZWx5IHVzZWQgaW4gbXVsdGktdGhyZWFkZWQKKyAgICAgIGVudmlyb25tZW50cy4KKwogRXhhbXBsZTo6CiAKICAgID4+PiBpbXBvcnQgc2NoZWQsIHRpbWUKQEAgLTQ0LDMzICs1MCw2IEBACiAgICBGcm9tIHByaW50X3RpbWUgOTMwMzQzNzAwLjI3MwogICAgOTMwMzQzNzAwLjI3NgogCi1JbiBtdWx0aS10aHJlYWRlZCBlbnZpcm9ubWVudHMsIHRoZSA6Y2xhc3M6YHNjaGVkdWxlcmAgY2xhc3MgaGFzIGxpbWl0YXRpb25zCi13aXRoIHJlc3BlY3QgdG8gdGhyZWFkLXNhZmV0eSwgaW5hYmlsaXR5IHRvIGluc2VydCBhIG5ldyB0YXNrIGJlZm9yZQotdGhlIG9uZSBjdXJyZW50bHkgcGVuZGluZyBpbiBhIHJ1bm5pbmcgc2NoZWR1bGVyLCBhbmQgaG9sZGluZyB1cCB0aGUgbWFpbgotdGhyZWFkIHVudGlsIHRoZSBldmVudCBxdWV1ZSBpcyBlbXB0eS4gIEluc3RlYWQsIHRoZSBwcmVmZXJyZWQgYXBwcm9hY2gKLWlzIHRvIHVzZSB0aGUgOmNsYXNzOmB0aHJlYWRpbmcuVGltZXJgIGNsYXNzIGluc3RlYWQuCi0KLUV4YW1wbGU6OgotCi0gICAgPj4+IGltcG9ydCB0aW1lCi0gICAgPj4+IGZyb20gdGhyZWFkaW5nIGltcG9ydCBUaW1lcgotICAgID4+PiBkZWYgcHJpbnRfdGltZSgpOgotICAgIC4uLiAgICAgcHJpbnQoIkZyb20gcHJpbnRfdGltZSIsIHRpbWUudGltZSgpKQotICAgIC4uLgotICAgID4+PiBkZWYgcHJpbnRfc29tZV90aW1lcygpOgotICAgIC4uLiAgICAgcHJpbnQodGltZS50aW1lKCkpCi0gICAgLi4uICAgICBUaW1lcig1LCBwcmludF90aW1lLCAoKSkuc3RhcnQoKQotICAgIC4uLiAgICAgVGltZXIoMTAsIHByaW50X3RpbWUsICgpKS5zdGFydCgpCi0gICAgLi4uICAgICB0aW1lLnNsZWVwKDExKSAgIyBzbGVlcCB3aGlsZSB0aW1lLWRlbGF5IGV2ZW50cyBleGVjdXRlCi0gICAgLi4uICAgICBwcmludCh0aW1lLnRpbWUoKSkKLSAgICAuLi4KLSAgICA+Pj4gcHJpbnRfc29tZV90aW1lcygpCi0gICAgOTMwMzQzNjkwLjI1NwotICAgIEZyb20gcHJpbnRfdGltZSA5MzAzNDM2OTUuMjc0Ci0gICAgRnJvbSBwcmludF90aW1lIDkzMDM0MzcwMC4yNzMKLSAgICA5MzAzNDM3MDEuMzAxCi0KLQogLi4gX3NjaGVkdWxlci1vYmplY3RzOgogCiBTY2hlZHVsZXIgT2JqZWN0cwpAQCAtNzksMjYgKzU4LDM4IEBACiA6Y2xhc3M6YHNjaGVkdWxlcmAgaW5zdGFuY2VzIGhhdmUgdGhlIGZvbGxvd2luZyBtZXRob2RzIGFuZCBhdHRyaWJ1dGVzOgogCiAKLS4uIG1ldGhvZDo6IHNjaGVkdWxlci5lbnRlcmFicyh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCkKKy4uIG1ldGhvZDo6IHNjaGVkdWxlci5lbnRlcmFicyh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudD1bXSwga3dhcmdzPXt9KQogCiAgICBTY2hlZHVsZSBhIG5ldyBldmVudC4gVGhlICp0aW1lKiBhcmd1bWVudCBzaG91bGQgYmUgYSBudW1lcmljIHR5cGUgY29tcGF0aWJsZQogICAgd2l0aCB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSAqdGltZWZ1bmMqIGZ1bmN0aW9uIHBhc3NlZCAgdG8gdGhlIGNvbnN0cnVjdG9yLgogICAgRXZlbnRzIHNjaGVkdWxlZCBmb3IgdGhlIHNhbWUgKnRpbWUqIHdpbGwgYmUgZXhlY3V0ZWQgaW4gdGhlIG9yZGVyIG9mIHRoZWlyCiAgICAqcHJpb3JpdHkqLgogCi0gICBFeGVjdXRpbmcgdGhlIGV2ZW50IG1lYW5zIGV4ZWN1dGluZyBgYGFjdGlvbigqYXJndW1lbnQpYGAuICAqYXJndW1lbnQqIG11c3QgYmUgYQotICAgc2VxdWVuY2UgaG9sZGluZyB0aGUgcGFyYW1ldGVycyBmb3IgKmFjdGlvbiouCisgICBFeGVjdXRpbmcgdGhlIGV2ZW50IG1lYW5zIGV4ZWN1dGluZyBgYGFjdGlvbigqYXJndW1lbnQsICoqa3dhcmdzKWBgLgorICAgKmFyZ3VtZW50KiBtdXN0IGJlIGEgc2VxdWVuY2UgaG9sZGluZyB0aGUgcGFyYW1ldGVycyBmb3IgKmFjdGlvbiouCisgICAqa3dhcmdzKiBtdXN0IGJlIGEgZGljdGlvbmFyeSBob2xkaW5nIHRoZSBrZXl3b3JkIHBhcmFtZXRlcnMgZm9yICphY3Rpb24qLgogCiAgICBSZXR1cm4gdmFsdWUgaXMgYW4gZXZlbnQgd2hpY2ggbWF5IGJlIHVzZWQgZm9yIGxhdGVyIGNhbmNlbGxhdGlvbiBvZiB0aGUgZXZlbnQKICAgIChzZWUgOm1ldGg6YGNhbmNlbGApLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgKmFyZ3VtZW50KiBwYXJhbWV0ZXIgaXMgb3B0aW9uYWwuCiAKLS4uIG1ldGhvZDo6IHNjaGVkdWxlci5lbnRlcihkZWxheSwgcHJpb3JpdHksIGFjdGlvbiwgYXJndW1lbnQpCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgICAgICprd2FyZ3MqIHBhcmFtZXRlciB3YXMgYWRkZWQuCisKKworLi4gbWV0aG9kOjogc2NoZWR1bGVyLmVudGVyKGRlbGF5LCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudD1bXSwga3dhcmdzPXt9KQogCiAgICBTY2hlZHVsZSBhbiBldmVudCBmb3IgKmRlbGF5KiBtb3JlIHRpbWUgdW5pdHMuIE90aGVyIHRoYW4gdGhlIHJlbGF0aXZlIHRpbWUsIHRoZQogICAgb3RoZXIgYXJndW1lbnRzLCB0aGUgZWZmZWN0IGFuZCB0aGUgcmV0dXJuIHZhbHVlIGFyZSB0aGUgc2FtZSBhcyB0aG9zZSBmb3IKICAgIDptZXRoOmBlbnRlcmFic2AuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqYXJndW1lbnQqIHBhcmFtZXRlciBpcyBvcHRpb25hbC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisgICAgICAqa3dhcmdzKiBwYXJhbWV0ZXIgd2FzIGFkZGVkLgogCiAuLiBtZXRob2Q6OiBzY2hlZHVsZXIuY2FuY2VsKGV2ZW50KQogCkBAIC0xMTEsMTIgKzEwMiwxNSBAQAogICAgUmV0dXJuIHRydWUgaWYgdGhlIGV2ZW50IHF1ZXVlIGlzIGVtcHR5LgogCiAKLS4uIG1ldGhvZDo6IHNjaGVkdWxlci5ydW4oKQorLi4gbWV0aG9kOjogc2NoZWR1bGVyLnJ1bihibG9ja2luZz1UcnVlKQogCi0gICBSdW4gYWxsIHNjaGVkdWxlZCBldmVudHMuIFRoaXMgZnVuY3Rpb24gd2lsbCB3YWl0ICAodXNpbmcgdGhlIDpmdW5jOmBkZWxheWZ1bmNgCisgICBSdW4gYWxsIHNjaGVkdWxlZCBldmVudHMuIFRoaXMgbWV0aG9kIHdpbGwgd2FpdCAgKHVzaW5nIHRoZSA6ZnVuYzpgZGVsYXlmdW5jYAogICAgZnVuY3Rpb24gcGFzc2VkIHRvIHRoZSBjb25zdHJ1Y3RvcikgZm9yIHRoZSBuZXh0IGV2ZW50LCB0aGVuIGV4ZWN1dGUgaXQgYW5kIHNvCiAgICBvbiB1bnRpbCB0aGVyZSBhcmUgbm8gbW9yZSBzY2hlZHVsZWQgZXZlbnRzLgogCisgICBJZiAqYmxvY2tpbmcqIGlzIEZhbHNlIGV4ZWN1dGVzIHRoZSBzY2hlZHVsZWQgZXZlbnRzIGR1ZSB0byBleHBpcmUgc29vbmVzdAorICAgKGlmIGFueSkgYW5kIHRoZW4gcmV0dXJuLgorCiAgICBFaXRoZXIgKmFjdGlvbiogb3IgKmRlbGF5ZnVuYyogY2FuIHJhaXNlIGFuIGV4Y2VwdGlvbi4gIEluIGVpdGhlciBjYXNlLCB0aGUKICAgIHNjaGVkdWxlciB3aWxsIG1haW50YWluIGEgY29uc2lzdGVudCBzdGF0ZSBhbmQgcHJvcGFnYXRlIHRoZSBleGNlcHRpb24uICBJZiBhbgogICAgZXhjZXB0aW9uIGlzIHJhaXNlZCBieSAqYWN0aW9uKiwgdGhlIGV2ZW50IHdpbGwgbm90IGJlIGF0dGVtcHRlZCBpbiBmdXR1cmUgY2FsbHMKQEAgLTEyNyw2ICsxMjEsOSBAQAogICAgdGhlIGNhbGxpbmcgY29kZSBpcyByZXNwb25zaWJsZSBmb3IgY2FuY2VsaW5nICBldmVudHMgd2hpY2ggYXJlIG5vIGxvbmdlcgogICAgcGVydGluZW50LgogCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgICAgICpibG9ja2luZyogcGFyYW1ldGVyIHdhcyBhZGRlZC4KKwogLi4gYXR0cmlidXRlOjogc2NoZWR1bGVyLnF1ZXVlCiAKICAgIFJlYWQtb25seSBhdHRyaWJ1dGUgcmV0dXJuaW5nIGEgbGlzdCBvZiB1cGNvbWluZyBldmVudHMgaW4gdGhlIG9yZGVyIHRoZXkKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NlbGVjdC5yc3QgYi9Eb2MvbGlicmFyeS9zZWxlY3QucnN0CmluZGV4IGYxZmQxMjYuLmQ5ZDgwMmIgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3NlbGVjdC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc2VsZWN0LnJzdApAQCAtNiw3ICs2LDggQEAKIAogCiBUaGlzIG1vZHVsZSBwcm92aWRlcyBhY2Nlc3MgdG8gdGhlIDpjOmZ1bmM6YHNlbGVjdGAgYW5kIDpjOmZ1bmM6YHBvbGxgIGZ1bmN0aW9ucwotYXZhaWxhYmxlIGluIG1vc3Qgb3BlcmF0aW5nIHN5c3RlbXMsIDpjOmZ1bmM6YGVwb2xsYCBhdmFpbGFibGUgb24gTGludXggMi41KyBhbmQKK2F2YWlsYWJsZSBpbiBtb3N0IG9wZXJhdGluZyBzeXN0ZW1zLCA6YzpmdW5jOmBkZXZwb2xsYCBhdmFpbGFibGUgb24KK1NvbGFyaXMgYW5kIGRlcml2YXRpdmVzLCA6YzpmdW5jOmBlcG9sbGAgYXZhaWxhYmxlIG9uIExpbnV4IDIuNSsgYW5kCiA6YzpmdW5jOmBrcXVldWVgIGF2YWlsYWJsZSBvbiBtb3N0IEJTRC4KIE5vdGUgdGhhdCBvbiBXaW5kb3dzLCBpdCBvbmx5IHdvcmtzIGZvciBzb2NrZXRzOyBvbiBvdGhlciBvcGVyYXRpbmcgc3lzdGVtcywKIGl0IGFsc28gd29ya3MgZm9yIG90aGVyIGZpbGUgdHlwZXMgKGluIHBhcnRpY3VsYXIsIG9uIFVuaXgsIGl0IHdvcmtzIG9uIHBpcGVzKS4KQEAgLTE4LDE3ICsxOSwzOSBAQAogCiAuLiBleGNlcHRpb246OiBlcnJvcgogCi0gICBUaGUgZXhjZXB0aW9uIHJhaXNlZCB3aGVuIGFuIGVycm9yIG9jY3Vycy4gIFRoZSBhY2NvbXBhbnlpbmcgdmFsdWUgaXMgYSBwYWlyCi0gICBjb250YWluaW5nIHRoZSBudW1lcmljIGVycm9yIGNvZGUgZnJvbSA6YzpkYXRhOmBlcnJub2AgYW5kIHRoZSBjb3JyZXNwb25kaW5nCi0gICBzdHJpbmcsIGFzIHdvdWxkIGJlIHByaW50ZWQgYnkgdGhlIEMgZnVuY3Rpb24gOmM6ZnVuYzpgcGVycm9yYC4KKyAgIEEgZGVwcmVjYXRlZCBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEZvbGxvd2luZyA6cGVwOmAzMTUxYCwgdGhpcyBjbGFzcyB3YXMgbWFkZSBhbiBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAogCi0uLiBmdW5jdGlvbjo6IGVwb2xsKHNpemVoaW50PS0xKQorLi4gZnVuY3Rpb246OiBkZXZwb2xsKCkKIAotICAgKE9ubHkgc3VwcG9ydGVkIG9uIExpbnV4IDIuNS40NCBhbmQgbmV3ZXIuKSAgUmV0dXJucyBhbiBlZGdlIHBvbGxpbmcgb2JqZWN0LAotICAgd2hpY2ggY2FuIGJlIHVzZWQgYXMgRWRnZSBvciBMZXZlbCBUcmlnZ2VyZWQgaW50ZXJmYWNlIGZvciBJL08gZXZlbnRzOyBzZWUKLSAgIHNlY3Rpb24gOnJlZjpgZXBvbGwtb2JqZWN0c2AgYmVsb3cgZm9yIHRoZSBtZXRob2RzIHN1cHBvcnRlZCBieSBlcG9sbGluZwotICAgb2JqZWN0cy4KKyAgIChPbmx5IHN1cHBvcnRlZCBvbiBTb2xhcmlzIGFuZCBkZXJpdmF0aXZlcy4pICBSZXR1cm5zIGEgYGAvZGV2L3BvbGxgYAorICAgcG9sbGluZyBvYmplY3Q7IHNlZSBzZWN0aW9uIDpyZWY6YGRldnBvbGwtb2JqZWN0c2AgYmVsb3cgZm9yIHRoZQorICAgbWV0aG9kcyBzdXBwb3J0ZWQgYnkgZGV2cG9sbCBvYmplY3RzLgorCisgICA6YzpmdW5jOmBkZXZwb2xsYCBvYmplY3RzIGFyZSBsaW5rZWQgdG8gdGhlIG51bWJlciBvZiBmaWxlCisgICBkZXNjcmlwdG9ycyBhbGxvd2VkIGF0IHRoZSB0aW1lIG9mIGluc3RhbnRpYXRpb24uIElmIHlvdXIgcHJvZ3JhbQorICAgcmVkdWNlcyB0aGlzIHZhbHVlLCA6YzpmdW5jOmBkZXZwb2xsYCB3aWxsIGZhaWwuIElmIHlvdXIgcHJvZ3JhbQorICAgaW5jcmVhc2VzIHRoaXMgdmFsdWUsIDpjOmZ1bmM6YGRldnBvbGxgIG1heSByZXR1cm4gYW4KKyAgIGluY29tcGxldGUgbGlzdCBvZiBhY3RpdmUgZmlsZSBkZXNjcmlwdG9ycy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGZ1bmN0aW9uOjogZXBvbGwoc2l6ZWhpbnQ9LTEsIGZsYWdzPTApCisKKyAgIChPbmx5IHN1cHBvcnRlZCBvbiBMaW51eCAyLjUuNDQgYW5kIG5ld2VyLikgUmV0dXJuIGFuIGVkZ2UgcG9sbGluZyBvYmplY3QsCisgICB3aGljaCBjYW4gYmUgdXNlZCBhcyBFZGdlIG9yIExldmVsIFRyaWdnZXJlZCBpbnRlcmZhY2UgZm9yIEkvTworICAgZXZlbnRzLiAqc2l6ZWhpbnQqIGlzIGRlcHJlY2F0ZWQgYW5kIGNvbXBsZXRlbHkgaWdub3JlZC4gKmZsYWdzKiBjYW4gYmUgc2V0CisgICB0byA6Y29uc3Q6YEVQT0xMX0NMT0VYRUNgLCB3aGljaCBjYXVzZXMgdGhlIGVwb2xsIGRlc2NyaXB0b3IgdG8gYmUgY2xvc2VkCisgICBhdXRvbWF0aWNhbGx5IHdoZW4gOmZ1bmM6YG9zLmV4ZWN2ZWAgaXMgY2FsbGVkLiBTZWUgc2VjdGlvbgorICAgOnJlZjpgZXBvbGwtb2JqZWN0c2AgYmVsb3cgZm9yIHRoZSBtZXRob2RzIHN1cHBvcnRlZCBieSBlcG9sbGluZyBvYmplY3RzLgorCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisKKyAgICAgIEFkZGVkIHRoZSAqZmxhZ3MqIHBhcmFtZXRlci4KIAogCiAuLiBmdW5jdGlvbjo6IHBvbGwoKQpAQCAtMTA2LDYgKzEyOSw3NCBAQAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKIAorLi4gX2RldnBvbGwtb2JqZWN0czoKKworYGAvZGV2L3BvbGxgYCBQb2xsaW5nIE9iamVjdHMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgaHR0cDovL2RldmVsb3BlcnMuc3VuLmNvbS9zb2xhcmlzL2FydGljbGVzL3VzaW5nX2RldnBvbGwuaHRtbAorICAgaHR0cDovL2RldmVsb3BlcnMuc3VuLmNvbS9zb2xhcmlzL2FydGljbGVzL3BvbGxpbmdfZWZmaWNpZW50Lmh0bWwKKworU29sYXJpcyBhbmQgZGVyaXZhdGl2ZXMgaGF2ZSBgYC9kZXYvcG9sbGBgLiBXaGlsZSA6YzpmdW5jOmBzZWxlY3RgIGlzCitPKGhpZ2hlc3QgZmlsZSBkZXNjcmlwdG9yKSBhbmQgOmM6ZnVuYzpgcG9sbGAgaXMgTyhudW1iZXIgb2YgZmlsZQorZGVzY3JpcHRvcnMpLCBgYC9kZXYvcG9sbGBgIGlzIE8oYWN0aXZlIGZpbGUgZGVzY3JpcHRvcnMpLgorCitgYC9kZXYvcG9sbGBgIGJlaGF2aW91ciBpcyB2ZXJ5IGNsb3NlIHRvIHRoZSBzdGFuZGFyZCA6YzpmdW5jOmBwb2xsYAorb2JqZWN0LgorCisKKy4uIG1ldGhvZDo6IGRldnBvbGwucmVnaXN0ZXIoZmRbLCBldmVudG1hc2tdKQorCisgICBSZWdpc3RlciBhIGZpbGUgZGVzY3JpcHRvciB3aXRoIHRoZSBwb2xsaW5nIG9iamVjdC4gIEZ1dHVyZSBjYWxscyB0byB0aGUKKyAgIDptZXRoOmBwb2xsYCBtZXRob2Qgd2lsbCB0aGVuIGNoZWNrIHdoZXRoZXIgdGhlIGZpbGUgZGVzY3JpcHRvciBoYXMgYW55IHBlbmRpbmcKKyAgIEkvTyBldmVudHMuICAqZmQqIGNhbiBiZSBlaXRoZXIgYW4gaW50ZWdlciwgb3IgYW4gb2JqZWN0IHdpdGggYSA6bWV0aDpgZmlsZW5vYAorICAgbWV0aG9kIHRoYXQgcmV0dXJucyBhbiBpbnRlZ2VyLiAgRmlsZSBvYmplY3RzIGltcGxlbWVudCA6bWV0aDpgZmlsZW5vYCwgc28gdGhleQorICAgY2FuIGFsc28gYmUgdXNlZCBhcyB0aGUgYXJndW1lbnQuCisKKyAgICpldmVudG1hc2sqIGlzIGFuIG9wdGlvbmFsIGJpdG1hc2sgZGVzY3JpYmluZyB0aGUgdHlwZSBvZiBldmVudHMgeW91IHdhbnQgdG8KKyAgIGNoZWNrIGZvci4gVGhlIGNvbnN0YW50cyBhcmUgdGhlIHNhbWUgdGhhdCB3aXRoIDpjOmZ1bmM6YHBvbGxgCisgICBvYmplY3QuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGEgY29tYmluYXRpb24gb2YgdGhlIGNvbnN0YW50cyA6Y29uc3Q6YFBPTExJTmAsCisgICA6Y29uc3Q6YFBPTExQUklgLCBhbmQgOmNvbnN0OmBQT0xMT1VUYC4KKworICAgLi4gd2FybmluZzo6CisKKyAgICAgIFJlZ2lzdGVyaW5nIGEgZmlsZSBkZXNjcmlwdG9yIHRoYXQncyBhbHJlYWR5IHJlZ2lzdGVyZWQgaXMgbm90IGFuCisgICAgICBlcnJvciwgYnV0IHRoZSByZXN1bHQgaXMgdW5kZWZpbmVkLiBUaGUgYXBwcm9waWF0ZSBhY3Rpb24gaXMgdG8KKyAgICAgIHVucmVnaXN0ZXIgb3IgbW9kaWZ5IGl0IGZpcnN0LiBUaGlzIGlzIGFuIGltcG9ydGFudCBkaWZmZXJlbmNlCisgICAgICBjb21wYXJlZCB3aXRoIDpjOmZ1bmM6YHBvbGxgLgorCisKKy4uIG1ldGhvZDo6IGRldnBvbGwubW9kaWZ5KGZkWywgZXZlbnRtYXNrXSkKKworICAgVGhpcyBtZXRob2QgZG9lcyBhbiA6bWV0aDpgdW5yZWdpc3RlcmAgZm9sbG93ZWQgYnkgYQorICAgOm1ldGg6YHJlZ2lzdGVyYC4gSXQgaXMgKGEgYml0KSBtb3JlIGVmZmljaWVudCB0aGF0IGRvaW5nIHRoZSBzYW1lCisgICBleHBsaWNpdGx5LgorCisKKy4uIG1ldGhvZDo6IGRldnBvbGwudW5yZWdpc3RlcihmZCkKKworICAgUmVtb3ZlIGEgZmlsZSBkZXNjcmlwdG9yIGJlaW5nIHRyYWNrZWQgYnkgYSBwb2xsaW5nIG9iamVjdC4gIEp1c3QgbGlrZSB0aGUKKyAgIDptZXRoOmByZWdpc3RlcmAgbWV0aG9kLCAqZmQqIGNhbiBiZSBhbiBpbnRlZ2VyIG9yIGFuIG9iamVjdCB3aXRoIGEKKyAgIDptZXRoOmBmaWxlbm9gIG1ldGhvZCB0aGF0IHJldHVybnMgYW4gaW50ZWdlci4KKworICAgQXR0ZW1wdGluZyB0byByZW1vdmUgYSBmaWxlIGRlc2NyaXB0b3IgdGhhdCB3YXMgbmV2ZXIgcmVnaXN0ZXJlZCBpcworICAgc2FmZWx5IGlnbm9yZWQuCisKKworLi4gbWV0aG9kOjogZGV2cG9sbC5wb2xsKFt0aW1lb3V0XSkKKworICAgUG9sbHMgdGhlIHNldCBvZiByZWdpc3RlcmVkIGZpbGUgZGVzY3JpcHRvcnMsIGFuZCByZXR1cm5zIGEgcG9zc2libHktZW1wdHkgbGlzdAorICAgY29udGFpbmluZyBgYChmZCwgZXZlbnQpYGAgMi10dXBsZXMgZm9yIHRoZSBkZXNjcmlwdG9ycyB0aGF0IGhhdmUgZXZlbnRzIG9yCisgICBlcnJvcnMgdG8gcmVwb3J0LiAqZmQqIGlzIHRoZSBmaWxlIGRlc2NyaXB0b3IsIGFuZCAqZXZlbnQqIGlzIGEgYml0bWFzayB3aXRoCisgICBiaXRzIHNldCBmb3IgdGhlIHJlcG9ydGVkIGV2ZW50cyBmb3IgdGhhdCBkZXNjcmlwdG9yIC0tLSA6Y29uc3Q6YFBPTExJTmAgZm9yCisgICB3YWl0aW5nIGlucHV0LCA6Y29uc3Q6YFBPTExPVVRgIHRvIGluZGljYXRlIHRoYXQgdGhlIGRlc2NyaXB0b3IgY2FuIGJlIHdyaXR0ZW4KKyAgIHRvLCBhbmQgc28gZm9ydGguIEFuIGVtcHR5IGxpc3QgaW5kaWNhdGVzIHRoYXQgdGhlIGNhbGwgdGltZWQgb3V0IGFuZCBubyBmaWxlCisgICBkZXNjcmlwdG9ycyBoYWQgYW55IGV2ZW50cyB0byByZXBvcnQuIElmICp0aW1lb3V0KiBpcyBnaXZlbiwgaXQgc3BlY2lmaWVzIHRoZQorICAgbGVuZ3RoIG9mIHRpbWUgaW4gbWlsbGlzZWNvbmRzIHdoaWNoIHRoZSBzeXN0ZW0gd2lsbCB3YWl0IGZvciBldmVudHMgYmVmb3JlCisgICByZXR1cm5pbmcuIElmICp0aW1lb3V0KiBpcyBvbWl0dGVkLCAtMSwgb3IgOmNvbnN0OmBOb25lYCwgdGhlIGNhbGwgd2lsbAorICAgYmxvY2sgdW50aWwgdGhlcmUgaXMgYW4gZXZlbnQgZm9yIHRoaXMgcG9sbCBvYmplY3QuCisKKwogLi4gX2Vwb2xsLW9iamVjdHM6CiAKIEVkZ2UgYW5kIExldmVsIFRyaWdnZXIgUG9sbGluZyAoZXBvbGwpIE9iamVjdHMKQEAgLTE2NSwxMSArMjU2LDYgQEAKIAogICAgUmVnaXN0ZXIgYSBmZCBkZXNjcmlwdG9yIHdpdGggdGhlIGVwb2xsIG9iamVjdC4KIAotICAgLi4gbm90ZTo6Ci0KLSAgICAgUmVnaXN0ZXJpbmcgYSBmaWxlIGRlc2NyaXB0b3IgdGhhdCdzIGFscmVhZHkgcmVnaXN0ZXJlZCByYWlzZXMgYW4KLSAgICAgSU9FcnJvciAtLSBjb250cmFyeSB0byA6cmVmOmBwb2xsLW9iamVjdHNgJ3MgcmVnaXN0ZXIuCi0KIAogLi4gbWV0aG9kOjogZXBvbGwubW9kaWZ5KGZkLCBldmVudG1hc2spCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NobGV4LnJzdCBiL0RvYy9saWJyYXJ5L3NobGV4LnJzdAppbmRleCAwMTEzZmI3Li45MDhmOTk2IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9zaGxleC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc2hsZXgucnN0CkBAIC0zNCw2ICszNCwzOSBAQAogICAgICAgcGFzc2luZyBgYE5vbmVgYCBmb3IgKnMqIHdpbGwgcmVhZCB0aGUgc3RyaW5nIHRvIHNwbGl0IGZyb20gc3RhbmRhcmQKICAgICAgIGlucHV0LgogCisKKy4uIGZ1bmN0aW9uOjogcXVvdGUocykKKworICAgUmV0dXJuIGEgc2hlbGwtZXNjYXBlZCB2ZXJzaW9uIG9mIHRoZSBzdHJpbmcgKnMqLiAgVGhlIHJldHVybmVkIHZhbHVlIGlzIGEKKyAgIHN0cmluZyB0aGF0IGNhbiBzYWZlbHkgYmUgdXNlZCBhcyBvbmUgdG9rZW4gaW4gYSBzaGVsbCBjb21tYW5kIGxpbmUsIGZvcgorICAgY2FzZXMgd2hlcmUgeW91IGNhbm5vdCB1c2UgYSBsaXN0LgorCisgICBUaGlzIGlkaW9tIHdvdWxkIGJlIHVuc2FmZTo6CisKKyAgICAgID4+PiBmaWxlbmFtZSA9ICdzb21lZmlsZTsgcm0gLXJmIH4nCisgICAgICA+Pj4gY29tbWFuZCA9ICdscyAtbCB7fScuZm9ybWF0KGZpbGVuYW1lKQorICAgICAgPj4+IHByaW50KGNvbW1hbmQpICAjIGV4ZWN1dGVkIGJ5IGEgc2hlbGw6IGJvb20hCisgICAgICBscyAtbCBzb21lZmlsZTsgcm0gLXJmIH4KKworICAgOmZ1bmM6YHF1b3RlYCBsZXRzIHlvdSBwbHVnIHRoZSBzZWN1cml0eSBob2xlOjoKKworICAgICAgPj4+IGNvbW1hbmQgPSAnbHMgLWwge30nLmZvcm1hdChxdW90ZShmaWxlbmFtZSkpCisgICAgICA+Pj4gcHJpbnQoY29tbWFuZCkKKyAgICAgIGxzIC1sICdzb21lZmlsZTsgcm0gLXJmIH4nCisgICAgICA+Pj4gcmVtb3RlX2NvbW1hbmQgPSAnc3NoIGhvbWUge30nLmZvcm1hdChxdW90ZShjb21tYW5kKSkKKyAgICAgID4+PiBwcmludChyZW1vdGVfY29tbWFuZCkKKyAgICAgIHNzaCBob21lICdscyAtbCAnIiciJ3NvbWVmaWxlOyBybSAtcmYgficiJyInJworCisgICBUaGUgcXVvdGluZyBpcyBjb21wYXRpYmxlIHdpdGggVU5JWCBzaGVsbHMgYW5kIHdpdGggOmZ1bmM6YHNwbGl0YDoKKworICAgICAgPj4+IHJlbW90ZV9jb21tYW5kID0gc3BsaXQocmVtb3RlX2NvbW1hbmQpCisgICAgICA+Pj4gcmVtb3RlX2NvbW1hbmQKKyAgICAgIFsnc3NoJywgJ2hvbWUnLCAibHMgLWwgJ3NvbWVmaWxlOyBybSAtcmYgficiXQorICAgICAgPj4+IGNvbW1hbmQgPSBzcGxpdChyZW1vdGVfY29tbWFuZFstMV0pCisgICAgICA+Pj4gY29tbWFuZAorICAgICAgWydscycsICctbCcsICdzb21lZmlsZTsgcm0gLXJmIH4nXQorCisKIFRoZSA6bW9kOmBzaGxleGAgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBjbGFzczoKIAogCkBAIC0yODIsNSArMzE1LDQgQEAKIAogKiBFT0YgaXMgc2lnbmFsZWQgd2l0aCBhIDpjb25zdDpgTm9uZWAgdmFsdWU7CiAKLSogUXVvdGVkIGVtcHR5IHN0cmluZ3MgKGBgJydgYCkgYXJlIGFsbG93ZWQ7Ci0KKyogUXVvdGVkIGVtcHR5IHN0cmluZ3MgKGBgJydgYCkgYXJlIGFsbG93ZWQuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9zaHV0aWwucnN0IGIvRG9jL2xpYnJhcnkvc2h1dGlsLnJzdAppbmRleCA4YjRhYWJiLi45ZTg3ODRiIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9zaHV0aWwucnN0CisrKyBiL0RvYy9saWJyYXJ5L3NodXRpbC5yc3QKQEAgLTQ1LDQ1ICs0NSw2NyBAQAogICAgYmUgY29waWVkLgogCiAKLS4uIGZ1bmN0aW9uOjogY29weWZpbGUoc3JjLCBkc3QpCisuLiBmdW5jdGlvbjo6IGNvcHlmaWxlKHNyYywgZHN0Wywgc3ltbGlua3M9RmFsc2VdKQogCiAgICBDb3B5IHRoZSBjb250ZW50cyAobm8gbWV0YWRhdGEpIG9mIHRoZSBmaWxlIG5hbWVkICpzcmMqIHRvIGEgZmlsZSBuYW1lZCAqZHN0Ki4KICAgICpkc3QqIG11c3QgYmUgdGhlIGNvbXBsZXRlIHRhcmdldCBmaWxlIG5hbWU7IGxvb2sgYXQgOmZ1bmM6YGNvcHlgIGZvciBhIGNvcHkgdGhhdAogICAgYWNjZXB0cyBhIHRhcmdldCBkaXJlY3RvcnkgcGF0aC4gIElmICpzcmMqIGFuZCAqZHN0KiBhcmUgdGhlIHNhbWUgZmlsZXMsCiAgICA6ZXhjOmBFcnJvcmAgaXMgcmFpc2VkLgotICAgVGhlIGRlc3RpbmF0aW9uIGxvY2F0aW9uIG11c3QgYmUgd3JpdGFibGU7IG90aGVyd2lzZSwgIGFuIDpleGM6YElPRXJyb3JgIGV4Y2VwdGlvbgorICAgVGhlIGRlc3RpbmF0aW9uIGxvY2F0aW9uIG11c3QgYmUgd3JpdGFibGU7IG90aGVyd2lzZSwgIGFuIDpleGM6YE9TRXJyb3JgIGV4Y2VwdGlvbgogICAgd2lsbCBiZSByYWlzZWQuIElmICpkc3QqIGFscmVhZHkgZXhpc3RzLCBpdCB3aWxsIGJlIHJlcGxhY2VkLiAgIFNwZWNpYWwgZmlsZXMKICAgIHN1Y2ggYXMgY2hhcmFjdGVyIG9yIGJsb2NrIGRldmljZXMgYW5kIHBpcGVzIGNhbm5vdCBiZSBjb3BpZWQgd2l0aCB0aGlzCiAgICBmdW5jdGlvbi4gICpzcmMqIGFuZCAqZHN0KiBhcmUgcGF0aCBuYW1lcyBnaXZlbiBhcyBzdHJpbmdzLgogCisgICBJZiAqc3ltbGlua3MqIGlzIHRydWUgYW5kICpzcmMqIGlzIGEgc3ltYm9saWMgbGluaywgYSBuZXcgc3ltYm9saWMgbGluayB3aWxsCisgICBiZSBjcmVhdGVkIGluc3RlYWQgb2YgY29weWluZyB0aGUgZmlsZSAqc3JjKiBwb2ludHMgdG8uCiAKLS4uIGZ1bmN0aW9uOjogY29weW1vZGUoc3JjLCBkc3QpCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgOmV4YzpgSU9FcnJvcmAgdXNlZCB0byBiZSByYWlzZWQgaW5zdGVhZCBvZiA6ZXhjOmBPU0Vycm9yYC4KKyAgICAgIEFkZGVkICpzeW1saW5rcyogYXJndW1lbnQuCisKKworLi4gZnVuY3Rpb246OiBjb3B5bW9kZShzcmMsIGRzdFssIHN5bWxpbmtzPUZhbHNlXSkKIAogICAgQ29weSB0aGUgcGVybWlzc2lvbiBiaXRzIGZyb20gKnNyYyogdG8gKmRzdCouICBUaGUgZmlsZSBjb250ZW50cywgb3duZXIsIGFuZAotICAgZ3JvdXAgYXJlIHVuYWZmZWN0ZWQuICAqc3JjKiBhbmQgKmRzdCogYXJlIHBhdGggbmFtZXMgZ2l2ZW4gYXMgc3RyaW5ncy4KKyAgIGdyb3VwIGFyZSB1bmFmZmVjdGVkLiAgKnNyYyogYW5kICpkc3QqIGFyZSBwYXRoIG5hbWVzIGdpdmVuIGFzIHN0cmluZ3MuICBJZgorICAgKnN5bWxpbmtzKiBpcyB0cnVlLCAqc3JjKiBhIHN5bWJvbGljIGxpbmsgYW5kIHRoZSBvcGVyYXRpbmcgc3lzdGVtIHN1cHBvcnRzCisgICBtb2RlcyBmb3Igc3ltYm9saWMgbGlua3MgKGZvciBleGFtcGxlIEJTRC1iYXNlZCBvbmVzKSwgdGhlIG1vZGUgb2YgdGhlIGxpbmsKKyAgIHdpbGwgYmUgY29waWVkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQWRkZWQgKnN5bWxpbmtzKiBhcmd1bWVudC4KIAotLi4gZnVuY3Rpb246OiBjb3B5c3RhdChzcmMsIGRzdCkKKy4uIGZ1bmN0aW9uOjogY29weXN0YXQoc3JjLCBkc3RbLCBzeW1saW5rcz1GYWxzZV0pCiAKICAgIENvcHkgdGhlIHBlcm1pc3Npb24gYml0cywgbGFzdCBhY2Nlc3MgdGltZSwgbGFzdCBtb2RpZmljYXRpb24gdGltZSwgYW5kIGZsYWdzCiAgICBmcm9tICpzcmMqIHRvICpkc3QqLiAgVGhlIGZpbGUgY29udGVudHMsIG93bmVyLCBhbmQgZ3JvdXAgYXJlIHVuYWZmZWN0ZWQuICAqc3JjKgotICAgYW5kICpkc3QqIGFyZSBwYXRoIG5hbWVzIGdpdmVuIGFzIHN0cmluZ3MuCisgICBhbmQgKmRzdCogYXJlIHBhdGggbmFtZXMgZ2l2ZW4gYXMgc3RyaW5ncy4gIElmICpzcmMqIGFuZCAqZHN0KiBhcmUgYm90aAorICAgc3ltYm9saWMgbGlua3MgYW5kICpzeW1saW5rcyogdHJ1ZSwgdGhlIHN0YXRzIG9mIHRoZSBsaW5rIHdpbGwgYmUgY29waWVkIGFzCisgICBmYXIgYXMgdGhlIHBsYXRmb3JtIGFsbG93cy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZGVkICpzeW1saW5rcyogYXJndW1lbnQuCiAKLS4uIGZ1bmN0aW9uOjogY29weShzcmMsIGRzdCkKKy4uIGZ1bmN0aW9uOjogY29weShzcmMsIGRzdFssIHN5bWxpbmtzPUZhbHNlXSkpCiAKICAgIENvcHkgdGhlIGZpbGUgKnNyYyogdG8gdGhlIGZpbGUgb3IgZGlyZWN0b3J5ICpkc3QqLiAgSWYgKmRzdCogaXMgYSBkaXJlY3RvcnksIGEKICAgIGZpbGUgd2l0aCB0aGUgc2FtZSBiYXNlbmFtZSBhcyAqc3JjKiAgaXMgY3JlYXRlZCAob3Igb3ZlcndyaXR0ZW4pIGluIHRoZQogICAgZGlyZWN0b3J5IHNwZWNpZmllZC4gIFBlcm1pc3Npb24gYml0cyBhcmUgY29waWVkLiAgKnNyYyogYW5kICpkc3QqIGFyZSBwYXRoCi0gICBuYW1lcyBnaXZlbiBhcyBzdHJpbmdzLgorICAgbmFtZXMgZ2l2ZW4gYXMgc3RyaW5ncy4gIElmICpzeW1saW5rcyogaXMgdHJ1ZSwgc3ltYm9saWMgbGlua3Mgd29uJ3QgYmUKKyAgIGZvbGxvd2VkIGJ1dCByZWNyZWF0ZWQgaW5zdGVhZCAtLSB0aGlzIHJlc2VtYmxlcyBHTlUncyA6cHJvZ3JhbTpgY3AgLVBgLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQWRkZWQgKnN5bWxpbmtzKiBhcmd1bWVudC4KIAotLi4gZnVuY3Rpb246OiBjb3B5MihzcmMsIGRzdCkKKy4uIGZ1bmN0aW9uOjogY29weTIoc3JjLCBkc3RbLCBzeW1saW5rcz1GYWxzZV0pCiAKICAgIFNpbWlsYXIgdG8gOmZ1bmM6YGNvcHlgLCBidXQgbWV0YWRhdGEgaXMgY29waWVkIGFzIHdlbGwgLS0gaW4gZmFjdCwgdGhpcyBpcyBqdXN0CiAgICA6ZnVuYzpgY29weWAgZm9sbG93ZWQgYnkgOmZ1bmM6YGNvcHlzdGF0YC4gIFRoaXMgaXMgc2ltaWxhciB0byB0aGUKLSAgIFVuaXggY29tbWFuZCA6cHJvZ3JhbTpgY3AgLXBgLgorICAgVW5peCBjb21tYW5kIDpwcm9ncmFtOmBjcCAtcGAuICBJZiAqc3ltbGlua3MqIGlzIHRydWUsIHN5bWJvbGljIGxpbmtzIHdvbid0CisgICBiZSBmb2xsb3dlZCBidXQgcmVjcmVhdGVkIGluc3RlYWQgLS0gdGhpcyByZXNlbWJsZXMgR05VJ3MgOnByb2dyYW06YGNwIC1QYC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZGVkICpzeW1saW5rcyogYXJndW1lbnQuCiAKIC4uIGZ1bmN0aW9uOjogaWdub3JlX3BhdHRlcm5zKFwqcGF0dGVybnMpCiAKQEAgLTEwMSw5ICsxMjMsOSBAQAogICAgOmZ1bmM6YGNvcHkyYC4KIAogICAgSWYgKnN5bWxpbmtzKiBpcyB0cnVlLCBzeW1ib2xpYyBsaW5rcyBpbiB0aGUgc291cmNlIHRyZWUgYXJlIHJlcHJlc2VudGVkIGFzCi0gICBzeW1ib2xpYyBsaW5rcyBpbiB0aGUgbmV3IHRyZWUsIGJ1dCB0aGUgbWV0YWRhdGEgb2YgdGhlIG9yaWdpbmFsIGxpbmtzIGlzIE5PVAotICAgY29waWVkOyBpZiBmYWxzZSBvciBvbWl0dGVkLCB0aGUgY29udGVudHMgYW5kIG1ldGFkYXRhIG9mIHRoZSBsaW5rZWQgZmlsZXMKLSAgIGFyZSBjb3BpZWQgdG8gdGhlIG5ldyB0cmVlLgorICAgc3ltYm9saWMgbGlua3MgaW4gdGhlIG5ldyB0cmVlIGFuZCB0aGUgbWV0YWRhdGEgb2YgdGhlIG9yaWdpbmFsIGxpbmtzIHdpbGwKKyAgIGJlIGNvcGllZCBhcyBmYXIgYXMgdGhlIHBsYXRmb3JtIGFsbG93czsgaWYgZmFsc2Ugb3Igb21pdHRlZCwgdGhlIGNvbnRlbnRzCisgICBhbmQgbWV0YWRhdGEgb2YgdGhlIGxpbmtlZCBmaWxlcyBhcmUgY29waWVkIHRvIHRoZSBuZXcgdHJlZS4KIAogICAgV2hlbiAqc3ltbGlua3MqIGlzIGZhbHNlLCBpZiB0aGUgZmlsZSBwb2ludGVkIGJ5IHRoZSBzeW1saW5rIGRvZXNuJ3QKICAgIGV4aXN0LCBhIGV4Y2VwdGlvbiB3aWxsIGJlIGFkZGVkIGluIHRoZSBsaXN0IG9mIGVycm9ycyByYWlzZWQgaW4KQEAgLTEzNyw2ICsxNTksOSBAQAogICAgICAgQWRkZWQgdGhlICppZ25vcmVfZGFuZ2xpbmdfc3ltbGlua3MqIGFyZ3VtZW50IHRvIHNpbGVudCBkYW5nbGluZyBzeW1saW5rcwogICAgICAgZXJyb3JzIHdoZW4gKnN5bWxpbmtzKiBpcyBmYWxzZS4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIENvcHkgbWV0YWRhdGEgd2hlbiAqc3ltbGlua3MqIGlzIGZhbHNlLgorCiAKIC4uIGZ1bmN0aW9uOjogcm10cmVlKHBhdGgsIGlnbm9yZV9lcnJvcnM9RmFsc2UsIG9uZXJyb3I9Tm9uZSkKIApAQCAtMTcxLDcgKzE5NiwzNSBAQAogCiAgICBJZiB0aGUgZGVzdGluYXRpb24gaXMgb24gdGhlIGN1cnJlbnQgZmlsZXN5c3RlbSwgdGhlbiA6ZnVuYzpgb3MucmVuYW1lYCBpcwogICAgdXNlZC4gIE90aGVyd2lzZSwgKnNyYyogaXMgY29waWVkICh1c2luZyA6ZnVuYzpgY29weTJgKSB0byAqZHN0KiBhbmQgdGhlbgotICAgcmVtb3ZlZC4KKyAgIHJlbW92ZWQuIEluIGNhc2Ugb2Ygc3ltbGlua3MsIGEgbmV3IHN5bWxpbmsgcG9pbnRpbmcgdG8gdGhlIHRhcmdldCBvZiAqc3JjKgorICAgd2lsbCBiZSBjcmVhdGVkIGluIG9yIGFzICpkc3QqIGFuZCAqc3JjKiB3aWxsIGJlIHJlbW92ZWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBBZGRlZCBleHBsaWNpdCBzeW1saW5rIGhhbmRsaW5nIGZvciBmb3JlaWduIGZpbGVzeXN0ZW1zLCB0aHVzIGFkYXB0aW5nCisgICAgICBpdCB0byB0aGUgYmVoYXZpb3Igb2YgR05VJ3MgOnByb2dyYW06YG12YC4KKworLi4gZnVuY3Rpb246OiBkaXNrX3VzYWdlKHBhdGgpCisKKyAgIFJldHVybiBkaXNrIHVzYWdlIHN0YXRpc3RpY3MgYWJvdXQgdGhlIGdpdmVuIHBhdGggYXMgYSA6dGVybTpgbmFtZWQgdHVwbGVgCisgICB3aXRoIHRoZSBhdHRyaWJ1dGVzICp0b3RhbCosICp1c2VkKiBhbmQgKmZyZWUqLCB3aGljaCBhcmUgdGhlIGFtb3VudCBvZgorICAgdG90YWwsIHVzZWQgYW5kIGZyZWUgc3BhY2UsIGluIGJ5dGVzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworICAgQXZhaWxhYmlsaXR5OiBVbml4LCBXaW5kb3dzLgorCisuLiBmdW5jdGlvbjo6IGNob3duKHBhdGgsIHVzZXI9Tm9uZSwgZ3JvdXA9Tm9uZSkKKworICAgQ2hhbmdlIG93bmVyICp1c2VyKiBhbmQvb3IgKmdyb3VwKiBvZiB0aGUgZ2l2ZW4gKnBhdGgqLgorCisgICAqdXNlciogY2FuIGJlIGEgc3lzdGVtIHVzZXIgbmFtZSBvciBhIHVpZDsgdGhlIHNhbWUgYXBwbGllcyB0byAqZ3JvdXAqLiBBdAorICAgbGVhc3Qgb25lIGFyZ3VtZW50IGlzIHJlcXVpcmVkLgorCisgICBTZWUgYWxzbyA6ZnVuYzpgb3MuY2hvd25gLCB0aGUgdW5kZXJseWluZyBmdW5jdGlvbi4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogCiAuLiBleGNlcHRpb246OiBFcnJvcgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvc2lnbmFsLnJzdCBiL0RvYy9saWJyYXJ5L3NpZ25hbC5yc3QKaW5kZXggNjk4YjFlNy4uNGZjM2ZkNiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvc2lnbmFsLnJzdAorKysgYi9Eb2MvbGlicmFyeS9zaWduYWwucnN0CkBAIC0xMyw5ICsxMyw2IEBACiAgIHVuZGVybHlpbmcgaW1wbGVtZW50YXRpb24pLCB3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIGhhbmRsZXIgZm9yCiAgIDpjb25zdDpgU0lHQ0hMRGAsIHdoaWNoIGZvbGxvd3MgdGhlIHVuZGVybHlpbmcgaW1wbGVtZW50YXRpb24uCiAKLSogVGhlcmUgaXMgbm8gd2F5IHRvICJibG9jayIgc2lnbmFscyB0ZW1wb3JhcmlseSBmcm9tIGNyaXRpY2FsIHNlY3Rpb25zIChzaW5jZQotICB0aGlzIGlzIG5vdCBzdXBwb3J0ZWQgYnkgYWxsIFVuaXggZmxhdm9ycykuCi0KICogQWx0aG91Z2ggUHl0aG9uIHNpZ25hbCBoYW5kbGVycyBhcmUgY2FsbGVkIGFzeW5jaHJvbm91c2x5IGFzIGZhciBhcyB0aGUgUHl0aG9uCiAgIHVzZXIgaXMgY29uY2VybmVkLCB0aGV5IGNhbiBvbmx5IG9jY3VyIGJldHdlZW4gdGhlICJhdG9taWMiIGluc3RydWN0aW9ucyBvZiB0aGUKICAgUHl0aG9uIGludGVycHJldGVyLiAgVGhpcyBtZWFucyB0aGF0IHNpZ25hbHMgYXJyaXZpbmcgZHVyaW5nIGxvbmcgY2FsY3VsYXRpb25zCkBAIC0xMTksNiArMTE2LDI4IEBACiAgICBpbiB1c2VyIGFuZCBrZXJuZWwgc3BhY2UuIFNJR1BST0YgaXMgZGVsaXZlcmVkIHVwb24gZXhwaXJhdGlvbi4KIAogCisuLiBkYXRhOjogU0lHX0JMT0NLCisKKyAgIEEgcG9zc2libGUgdmFsdWUgZm9yIHRoZSAqaG93KiBwYXJhbWV0ZXIgdG8gOmZ1bmM6YHB0aHJlYWRfc2lnbWFza2AKKyAgIGluZGljYXRpbmcgdGhhdCBzaWduYWxzIGFyZSB0byBiZSBibG9ja2VkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZGF0YTo6IFNJR19VTkJMT0NLCisKKyAgIEEgcG9zc2libGUgdmFsdWUgZm9yIHRoZSAqaG93KiBwYXJhbWV0ZXIgdG8gOmZ1bmM6YHB0aHJlYWRfc2lnbWFza2AKKyAgIGluZGljYXRpbmcgdGhhdCBzaWduYWxzIGFyZSB0byBiZSB1bmJsb2NrZWQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBkYXRhOjogU0lHX1NFVE1BU0sKKworICAgQSBwb3NzaWJsZSB2YWx1ZSBmb3IgdGhlICpob3cqIHBhcmFtZXRlciB0byA6ZnVuYzpgcHRocmVhZF9zaWdtYXNrYAorICAgaW5kaWNhdGluZyB0aGF0IHRoZSBzaWduYWwgbWFzayBpcyB0byBiZSByZXBsYWNlZC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogVGhlIDptb2Q6YHNpZ25hbGAgbW9kdWxlIGRlZmluZXMgb25lIGV4Y2VwdGlvbjoKIAogLi4gZXhjZXB0aW9uOjogSXRpbWVyRXJyb3IKQEAgLTEyNiw3ICsxNDUsMTEgQEAKICAgIFJhaXNlZCB0byBzaWduYWwgYW4gZXJyb3IgZnJvbSB0aGUgdW5kZXJseWluZyA6ZnVuYzpgc2V0aXRpbWVyYCBvcgogICAgOmZ1bmM6YGdldGl0aW1lcmAgaW1wbGVtZW50YXRpb24uIEV4cGVjdCB0aGlzIGVycm9yIGlmIGFuIGludmFsaWQKICAgIGludGVydmFsIHRpbWVyIG9yIGEgbmVnYXRpdmUgdGltZSBpcyBwYXNzZWQgdG8gOmZ1bmM6YHNldGl0aW1lcmAuCi0gICBUaGlzIGVycm9yIGlzIGEgc3VidHlwZSBvZiA6ZXhjOmBJT0Vycm9yYC4KKyAgIFRoaXMgZXJyb3IgaXMgYSBzdWJ0eXBlIG9mIDpleGM6YE9TRXJyb3JgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgICAgIFRoaXMgZXJyb3IgdXNlZCB0byBiZSBhIHN1YnR5cGUgb2YgOmV4YzpgSU9FcnJvcmAsIHdoaWNoIGlzIG5vdyBhbgorICAgICAgYWxpYXMgb2YgOmV4YzpgT1NFcnJvcmAuCiAKIAogVGhlIDptb2Q6YHNpZ25hbGAgbW9kdWxlIGRlZmluZXMgdGhlIGZvbGxvd2luZyBmdW5jdGlvbnM6CkBAIC0xNjAsNiArMTgzLDYwIEBACiAgICB3aWxsIHRoZW4gYmUgY2FsbGVkLiAgUmV0dXJucyBub3RoaW5nLiAgTm90IG9uIFdpbmRvd3MuIChTZWUgdGhlIFVuaXggbWFuIHBhZ2UKICAgIDptYW5wYWdlOmBzaWduYWwoMilgLikKIAorICAgU2VlIGFsc28gOmZ1bmM6YHNpZ3dhaXRgLCA6ZnVuYzpgc2lnd2FpdGluZm9gLCA6ZnVuYzpgc2lndGltZWR3YWl0YCBhbmQKKyAgIDpmdW5jOmBzaWdwZW5kaW5nYC4KKworCisuLiBmdW5jdGlvbjo6IHB0aHJlYWRfa2lsbCh0aHJlYWRfaWQsIHNpZ251bSkKKworICAgU2VuZCB0aGUgc2lnbmFsICpzaWdudW0qIHRvIHRoZSB0aHJlYWQgKnRocmVhZF9pZCosIGFub3RoZXIgdGhyZWFkIGluIHRoZSBzYW1lCisgICBwcm9jZXNzIGFzIHRoZSBjYWxsZXIuICBUaGUgc2lnbmFsIGlzIGFzeW5jaHJvbm91c2x5IGRpcmVjdGVkIHRvIHRocmVhZC4KKworICAgVXNlIDpmdW5jOmB0aHJlYWRpbmcuZ2V0X2lkZW50KClgIG9yIHRoZSA6YXR0cjpgfnRocmVhZGluZy5UaHJlYWQuaWRlbnRgCisgICBhdHRyaWJ1dGUgb2YgOmF0dHI6YHRocmVhZGluZy5UaHJlYWRgIHRvIGdldCBhICd0aHJlYWQgaWRlbnRpZmllcicgZm9yCisgICAqdGhyZWFkX2lkKi4KKworICAgSWYgKnNpZ251bSogaXMgMCwgdGhlbiBubyBzaWduYWwgaXMgc2VudCwgYnV0IGVycm9yIGNoZWNraW5nIGlzIHN0aWxsCisgICBwZXJmb3JtZWQ7IHRoaXMgY2FuIGJlIHVzZWQgdG8gY2hlY2sgaWYgYSB0aHJlYWQgaXMgc3RpbGwgcnVubmluZy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4IChzZWUgdGhlIG1hbiBwYWdlIDptYW5wYWdlOmBwdGhyZWFkX2tpbGwoMylgIGZvciBmdXJ0aGVyCisgICBpbmZvcm1hdGlvbikuCisKKyAgIFNlZSBhbHNvIDpmdW5jOmBvcy5raWxsYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBwdGhyZWFkX3NpZ21hc2soaG93LCBtYXNrKQorCisgICBGZXRjaCBhbmQvb3IgY2hhbmdlIHRoZSBzaWduYWwgbWFzayBvZiB0aGUgY2FsbGluZyB0aHJlYWQuICBUaGUgc2lnbmFsIG1hc2sKKyAgIGlzIHRoZSBzZXQgb2Ygc2lnbmFscyB3aG9zZSBkZWxpdmVyeSBpcyBjdXJyZW50bHkgYmxvY2tlZCBmb3IgdGhlIGNhbGxlci4KKyAgIFJldHVybiB0aGUgb2xkIHNpZ25hbCBtYXNrIGFzIGEgc2V0IG9mIHNpZ25hbHMuCisKKyAgIFRoZSBiZWhhdmlvciBvZiB0aGUgY2FsbCBpcyBkZXBlbmRlbnQgb24gdGhlIHZhbHVlIG9mICpob3cqLCBhcyBmb2xsb3dzLgorCisgICAgKiA6ZGF0YTpgU0lHX0JMT0NLYDogVGhlIHNldCBvZiBibG9ja2VkIHNpZ25hbHMgaXMgdGhlIHVuaW9uIG9mIHRoZSBjdXJyZW50CisgICAgICBzZXQgYW5kIHRoZSAqbWFzayogYXJndW1lbnQuCisgICAgKiA6ZGF0YTpgU0lHX1VOQkxPQ0tgOiBUaGUgc2lnbmFscyBpbiAqbWFzayogYXJlIHJlbW92ZWQgZnJvbSB0aGUgY3VycmVudAorICAgICAgc2V0IG9mIGJsb2NrZWQgc2lnbmFscy4gIEl0IGlzIHBlcm1pc3NpYmxlIHRvIGF0dGVtcHQgdG8gdW5ibG9jayBhCisgICAgICBzaWduYWwgd2hpY2ggaXMgbm90IGJsb2NrZWQuCisgICAgKiA6ZGF0YTpgU0lHX1NFVE1BU0tgOiBUaGUgc2V0IG9mIGJsb2NrZWQgc2lnbmFscyBpcyBzZXQgdG8gdGhlICptYXNrKgorICAgICAgYXJndW1lbnQuCisKKyAgICptYXNrKiBpcyBhIHNldCBvZiBzaWduYWwgbnVtYmVycyAoZS5nLiB7OmNvbnN0OmBzaWduYWwuU0lHSU5UYCwKKyAgIDpjb25zdDpgc2lnbmFsLlNJR1RFUk1gfSkuIFVzZSBgYHJhbmdlKDEsIHNpZ25hbC5OU0lHKWBgIGZvciBhIGZ1bGwgbWFzaworICAgaW5jbHVkaW5nIGFsbCBzaWduYWxzLgorCisgICBGb3IgZXhhbXBsZSwgYGBzaWduYWwucHRocmVhZF9zaWdtYXNrKHNpZ25hbC5TSUdfQkxPQ0ssIFtdKWBgIHJlYWRzIHRoZQorICAgc2lnbmFsIG1hc2sgb2YgdGhlIGNhbGxpbmcgdGhyZWFkLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguIFNlZSB0aGUgbWFuIHBhZ2UgOm1hbnBhZ2U6YHNpZ3Byb2NtYXNrKDMpYCBhbmQKKyAgIDptYW5wYWdlOmBwdGhyZWFkX3NpZ21hc2soMylgIGZvciBmdXJ0aGVyIGluZm9ybWF0aW9uLgorCisgICBTZWUgYWxzbyA6ZnVuYzpgcGF1c2VgLCA6ZnVuYzpgc2lncGVuZGluZ2AgYW5kIDpmdW5jOmBzaWd3YWl0YC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIAogLi4gZnVuY3Rpb246OiBzZXRpdGltZXIod2hpY2gsIHNlY29uZHNbLCBpbnRlcnZhbF0pCiAKQEAgLTE4OSwxMyArMjY2LDE3IEBACiAKIC4uIGZ1bmN0aW9uOjogc2V0X3dha2V1cF9mZChmZCkKIAotICAgU2V0IHRoZSB3YWtldXAgZmQgdG8gKmZkKi4gIFdoZW4gYSBzaWduYWwgaXMgcmVjZWl2ZWQsIGEgYGAnXDAnYGAgYnl0ZSBpcwotICAgd3JpdHRlbiB0byB0aGUgZmQuICBUaGlzIGNhbiBiZSB1c2VkIGJ5IGEgbGlicmFyeSB0byB3YWtldXAgYSBwb2xsIG9yIHNlbGVjdAotICAgY2FsbCwgYWxsb3dpbmcgdGhlIHNpZ25hbCB0byBiZSBmdWxseSBwcm9jZXNzZWQuCisgICBTZXQgdGhlIHdha2V1cCBmaWxlIGRlc2NyaXB0b3IgdG8gKmZkKi4gIFdoZW4gYSBzaWduYWwgaXMgcmVjZWl2ZWQsIHRoZQorICAgc2lnbmFsIG51bWJlciBpcyB3cml0dGVuIGFzIGEgc2luZ2xlIGJ5dGUgaW50byB0aGUgZmQuICBUaGlzIGNhbiBiZSB1c2VkIGJ5CisgICBhIGxpYnJhcnkgdG8gd2FrZXVwIGEgcG9sbCBvciBzZWxlY3QgY2FsbCwgYWxsb3dpbmcgdGhlIHNpZ25hbCB0byBiZSBmdWxseQorICAgcHJvY2Vzc2VkLgogCiAgICBUaGUgb2xkIHdha2V1cCBmZCBpcyByZXR1cm5lZC4gICpmZCogbXVzdCBiZSBub24tYmxvY2tpbmcuICBJdCBpcyB1cCB0byB0aGUKICAgIGxpYnJhcnkgdG8gcmVtb3ZlIGFueSBieXRlcyBiZWZvcmUgY2FsbGluZyBwb2xsIG9yIHNlbGVjdCBhZ2Fpbi4KIAorICAgVXNlIGZvciBleGFtcGxlIGBgc3RydWN0LnVucGFjaygnJXVCJyAlIGxlbihkYXRhKSwgZGF0YSlgYCB0byBkZWNvZGUgdGhlCisgICBzaWduYWwgbnVtYmVycyBsaXN0LgorCiAgICBXaGVuIHRocmVhZHMgYXJlIGVuYWJsZWQsIHRoaXMgZnVuY3Rpb24gY2FuIG9ubHkgYmUgY2FsbGVkIGZyb20gdGhlIG1haW4gdGhyZWFkOwogICAgYXR0ZW1wdGluZyB0byBjYWxsIGl0IGZyb20gb3RoZXIgdGhyZWFkcyB3aWxsIGNhdXNlIGEgOmV4YzpgVmFsdWVFcnJvcmAKICAgIGV4Y2VwdGlvbiB0byBiZSByYWlzZWQuCkBAIC0yMzUsNiArMzE2LDc0IEBACiAgICA6Y29uc3Q6YFNJR1RFUk1gLiBBIDpleGM6YFZhbHVlRXJyb3JgIHdpbGwgYmUgcmFpc2VkIGluIGFueSBvdGhlciBjYXNlLgogCiAKKy4uIGZ1bmN0aW9uOjogc2lncGVuZGluZygpCisKKyAgIEV4YW1pbmUgdGhlIHNldCBvZiBzaWduYWxzIHRoYXQgYXJlIHBlbmRpbmcgZm9yIGRlbGl2ZXJ5IHRvIHRoZSBjYWxsaW5nCisgICB0aHJlYWQgKGkuZS4sIHRoZSBzaWduYWxzIHdoaWNoIGhhdmUgYmVlbiByYWlzZWQgd2hpbGUgYmxvY2tlZCkuICBSZXR1cm4gdGhlCisgICBzZXQgb2YgdGhlIHBlbmRpbmcgc2lnbmFscy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4IChzZWUgdGhlIG1hbiBwYWdlIDptYW5wYWdlOmBzaWdwZW5kaW5nKDIpYCBmb3IgZnVydGhlcgorICAgaW5mb3JtYXRpb24pLgorCisgICBTZWUgYWxzbyA6ZnVuYzpgcGF1c2VgLCA6ZnVuYzpgcHRocmVhZF9zaWdtYXNrYCBhbmQgOmZ1bmM6YHNpZ3dhaXRgLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IHNpZ3dhaXQoc2lnc2V0KQorCisgICBTdXNwZW5kIGV4ZWN1dGlvbiBvZiB0aGUgY2FsbGluZyB0aHJlYWQgdW50aWwgdGhlIGRlbGl2ZXJ5IG9mIG9uZSBvZiB0aGUKKyAgIHNpZ25hbHMgc3BlY2lmaWVkIGluIHRoZSBzaWduYWwgc2V0ICpzaWdzZXQqLiAgVGhlIGZ1bmN0aW9uIGFjY2VwdHMgdGhlIHNpZ25hbAorICAgKHJlbW92ZXMgaXQgZnJvbSB0aGUgcGVuZGluZyBsaXN0IG9mIHNpZ25hbHMpLCBhbmQgcmV0dXJucyB0aGUgc2lnbmFsIG51bWJlci4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4IChzZWUgdGhlIG1hbiBwYWdlIDptYW5wYWdlOmBzaWd3YWl0KDMpYCBmb3IgZnVydGhlcgorICAgaW5mb3JtYXRpb24pLgorCisgICBTZWUgYWxzbyA6ZnVuYzpgcGF1c2VgLCA6ZnVuYzpgcHRocmVhZF9zaWdtYXNrYCwgOmZ1bmM6YHNpZ3BlbmRpbmdgLAorICAgOmZ1bmM6YHNpZ3dhaXRpbmZvYCBhbmQgOmZ1bmM6YHNpZ3RpbWVkd2FpdGAuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogc2lnd2FpdGluZm8oc2lnc2V0KQorCisgICBTdXNwZW5kIGV4ZWN1dGlvbiBvZiB0aGUgY2FsbGluZyB0aHJlYWQgdW50aWwgdGhlIGRlbGl2ZXJ5IG9mIG9uZSBvZiB0aGUKKyAgIHNpZ25hbHMgc3BlY2lmaWVkIGluIHRoZSBzaWduYWwgc2V0ICpzaWdzZXQqLiAgVGhlIGZ1bmN0aW9uIGFjY2VwdHMgdGhlCisgICBzaWduYWwgYW5kIHJlbW92ZXMgaXQgZnJvbSB0aGUgcGVuZGluZyBsaXN0IG9mIHNpZ25hbHMuIElmIG9uZSBvZiB0aGUKKyAgIHNpZ25hbHMgaW4gKnNpZ3NldCogaXMgYWxyZWFkeSBwZW5kaW5nIGZvciB0aGUgY2FsbGluZyB0aHJlYWQsIHRoZSBmdW5jdGlvbgorICAgd2lsbCByZXR1cm4gaW1tZWRpYXRlbHkgd2l0aCBpbmZvcm1hdGlvbiBhYm91dCB0aGF0IHNpZ25hbC4gVGhlIHNpZ25hbAorICAgaGFuZGxlciBpcyBub3QgY2FsbGVkIGZvciB0aGUgZGVsaXZlcmVkIHNpZ25hbC4gVGhlIGZ1bmN0aW9uIHJhaXNlcyBhbgorICAgOmV4YzpgSW50ZXJydXB0ZWRFcnJvcmAgaWYgaXQgaXMgaW50ZXJydXB0ZWQgYnkgYSBzaWduYWwgdGhhdCBpcyBub3QgaW4KKyAgICpzaWdzZXQqLgorCisgICBUaGUgcmV0dXJuIHZhbHVlIGlzIGFuIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIGRhdGEgY29udGFpbmVkIGluIHRoZQorICAgOmM6dHlwZTpgc2lnaW5mb190YCBzdHJ1Y3R1cmUsIG5hbWVseTogOmF0dHI6YHNpX3NpZ25vYCwgOmF0dHI6YHNpX2NvZGVgLAorICAgOmF0dHI6YHNpX2Vycm5vYCwgOmF0dHI6YHNpX3BpZGAsIDphdHRyOmBzaV91aWRgLCA6YXR0cjpgc2lfc3RhdHVzYCwKKyAgIDphdHRyOmBzaV9iYW5kYC4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4IChzZWUgdGhlIG1hbiBwYWdlIDptYW5wYWdlOmBzaWd3YWl0aW5mbygyKWAgZm9yIGZ1cnRoZXIKKyAgIGluZm9ybWF0aW9uKS4KKworICAgU2VlIGFsc28gOmZ1bmM6YHBhdXNlYCwgOmZ1bmM6YHNpZ3dhaXRgIGFuZCA6ZnVuYzpgc2lndGltZWR3YWl0YC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZnVuY3Rpb246OiBzaWd0aW1lZHdhaXQoc2lnc2V0LCAodGltZW91dF9zZWMsIHRpbWVvdXRfbnNlYykpCisKKyAgIExpa2UgOmZ1bmM6YHNpZ3RpbWVkd2FpdGAsIGJ1dCB0YWtlcyBhIHR1cGxlIG9mIGBgKHNlY29uZHMsIG5hbm9zZWNvbmRzKWBgCisgICBhcyBhbiBhZGRpdGlvbmFsIGFyZ3VtZW50IHNwZWNpZnlpbmcgYSB0aW1lb3V0LiBJZiBib3RoICp0aW1lb3V0X3NlYyogYW5kCisgICAqdGltZW91dF9uc2VjKiBhcmUgc3BlY2lmaWVkIGFzIDpjb25zdDpgMGAsIGEgcG9sbCBpcyBwZXJmb3JtZWQuIFJldHVybnMKKyAgIDpjb25zdDpgTm9uZWAgaWYgYSB0aW1lb3V0IG9jY3Vycy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4IChzZWUgdGhlIG1hbiBwYWdlIDptYW5wYWdlOmBzaWd0aW1lZHdhaXQoMilgIGZvciBmdXJ0aGVyCisgICBpbmZvcm1hdGlvbikuCisKKyAgIFNlZSBhbHNvIDpmdW5jOmBwYXVzZWAsIDpmdW5jOmBzaWd3YWl0YCBhbmQgOmZ1bmM6YHNpZ3dhaXRpbmZvYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gX3NpZ25hbC1leGFtcGxlOgogCiBFeGFtcGxlCkBAIC0yNTEsNyArNDAwLDcgQEAKIAogICAgZGVmIGhhbmRsZXIoc2lnbnVtLCBmcmFtZSk6CiAgICAgICAgcHJpbnQoJ1NpZ25hbCBoYW5kbGVyIGNhbGxlZCB3aXRoIHNpZ25hbCcsIHNpZ251bSkKLSAgICAgICByYWlzZSBJT0Vycm9yKCJDb3VsZG4ndCBvcGVuIGRldmljZSEiKQorICAgICAgIHJhaXNlIE9TRXJyb3IoIkNvdWxkbid0IG9wZW4gZGV2aWNlISIpCiAKICAgICMgU2V0IHRoZSBzaWduYWwgaGFuZGxlciBhbmQgYSA1LXNlY29uZCBhbGFybQogICAgc2lnbmFsLnNpZ25hbChzaWduYWwuU0lHQUxSTSwgaGFuZGxlcikKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NpdGUucnN0IGIvRG9jL2xpYnJhcnkvc2l0ZS5yc3QKaW5kZXggZGI5NmFkZC4uYjk4Nzg5NyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvc2l0ZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc2l0ZS5yc3QKQEAgLTE2LDcgKzE2LDE0IEBACiAuLiBpbmRleDo6IHRyaXBsZTogbW9kdWxlOyBzZWFyY2g7IHBhdGgKIAogSW1wb3J0aW5nIHRoaXMgbW9kdWxlIHdpbGwgYXBwZW5kIHNpdGUtc3BlY2lmaWMgcGF0aHMgdG8gdGhlIG1vZHVsZSBzZWFyY2ggcGF0aAotYW5kIGFkZCBhIGZldyBidWlsdGlucy4KK2FuZCBhZGQgYSBmZXcgYnVpbHRpbnMsIHVubGVzcyA6b3B0aW9uOmAtU2Agd2FzIHVzZWQuICBJbiB0aGF0IGNhc2UsIHRoaXMgbW9kdWxlCitjYW4gYmUgc2FmZWx5IGltcG9ydGVkIHdpdGggbm8gYXV0b21hdGljIG1vZGlmaWNhdGlvbnMgdG8gdGhlIG1vZHVsZSBzZWFyY2ggcGF0aAorb3IgYWRkaXRpb25zIHRvIHRoZSBidWlsdGlucy4gIFRvIGV4cGxpY2l0bHkgdHJpZ2dlciB0aGUgdXN1YWwgc2l0ZS1zcGVjaWZpYworYWRkaXRpb25zLCBjYWxsIHRoZSA6ZnVuYzpgc2l0ZS5tYWluYCBmdW5jdGlvbi4KKworLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgIEltcG9ydGluZyB0aGUgbW9kdWxlIHVzZWQgdG8gdHJpZ2dlciBwYXRocyBtYW5pcHVsYXRpb24gZXZlbiB3aGVuIHVzaW5nCisgICA6b3B0aW9uOmAtU2AuCiAKIC4uIGluZGV4OjoKICAgIHBhaXI6IHNpdGUtcHl0aG9uOyBkaXJlY3RvcnkKQEAgLTEyNywxMCArMTM0LDIxIEBACiAgICA6ZnVuYzpgZ2V0dXNlcmJhc2VgIGhhc24ndCBiZWVuIGNhbGxlZCB5ZXQuICBEZWZhdWx0IHZhbHVlIGlzCiAgICA6ZmlsZTpgfi8ubG9jYWxgIGZvciBVTklYIGFuZCBNYWMgT1MgWCBub24tZnJhbWV3b3JrIGJ1aWxkcywKICAgIDpmaWxlOmB+L0xpYnJhcnkvUHl0aG9uL3tYLll9YCBmb3IgTWFjIGZyYW1ld29yayBidWlsZHMsIGFuZAotICAgOmZpbGU6YHslQVBQREFUQSV9XFxQeXRob25gIGZvciBXaW5kb3dzLiAgVGhpcyB2YWx1ZSBpcyB1c2VkIGJ5IERpc3R1dGlscyB0bworICAgOmZpbGU6YHslQVBQREFUQSV9XFxQeXRob25gIGZvciBXaW5kb3dzLiAgVGhpcyB2YWx1ZSBpcyB1c2VkIGJ5IFBhY2thZ2luZyB0bwogICAgY29tcHV0ZSB0aGUgaW5zdGFsbGF0aW9uIGRpcmVjdG9yaWVzIGZvciBzY3JpcHRzLCBkYXRhIGZpbGVzLCBQeXRob24gbW9kdWxlcywKLSAgIGV0Yy4gZm9yIHRoZSA6cmVmOmB1c2VyIGluc3RhbGxhdGlvbiBzY2hlbWUgPGluc3QtYWx0LWluc3RhbGwtdXNlcj5gLiAgU2VlCi0gICBhbHNvIDplbnZ2YXI6YFBZVEhPTlVTRVJCQVNFYC4KKyAgIGV0Yy4gZm9yIHRoZSA6cmVmOmB1c2VyIGluc3RhbGxhdGlvbiBzY2hlbWUgPHBhY2thZ2luZy1hbHQtaW5zdGFsbC11c2VyPmAuCisgICBTZWUgYWxzbyA6ZW52dmFyOmBQWVRIT05VU0VSQkFTRWAuCisKKworLi4gZnVuY3Rpb246OiBtYWluKCkKKworICAgQWRkcyBhbGwgdGhlIHN0YW5kYXJkIHNpdGUtc3BlY2lmaWMgZGlyZWN0b3JpZXMgdG8gdGhlIG1vZHVsZSBzZWFyY2gKKyAgIHBhdGguICBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCBhdXRvbWF0aWNhbGx5IHdoZW4gdGhpcyBtb2R1bGUgaXMgaW1wb3J0ZWQsCisgICB1bmxlc3MgdGhlIDpwcm9ncmFtOmBweXRob25gIGludGVycHJldGVyIHdhcyBzdGFydGVkIHdpdGggdGhlIDpvcHRpb246YC1TYAorICAgZmxhZy4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gdXNlZCB0byBiZSBjYWxsZWQgdW5jb25kaXRpb25uYWxseS4KIAogCiAuLiBmdW5jdGlvbjo6IGFkZHNpdGVkaXIoc2l0ZWRpciwga25vd25fcGF0aHM9Tm9uZSkKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NtdHBsaWIucnN0IGIvRG9jL2xpYnJhcnkvc210cGxpYi5yc3QKaW5kZXggMzEwMWFiNy4uNDVjNWQ2ZCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvc210cGxpYi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc210cGxpYi5yc3QKQEAgLTIwLDcgKzIwLDcgQEAKIFByb3RvY29sKSBhbmQgOnJmYzpgMTg2OWAgKFNNVFAgU2VydmljZSBFeHRlbnNpb25zKS4KIAogCi0uLiBjbGFzczo6IFNNVFAoaG9zdD0nJywgcG9ydD0wLCBsb2NhbF9ob3N0bmFtZT1Ob25lWywgdGltZW91dF0pCisuLiBjbGFzczo6IFNNVFAoaG9zdD0nJywgcG9ydD0wLCBsb2NhbF9ob3N0bmFtZT1Ob25lWywgdGltZW91dF0sIHNvdXJjZV9hZGRyZXNzPU5vbmUpCiAKICAgIEEgOmNsYXNzOmBTTVRQYCBpbnN0YW5jZSBlbmNhcHN1bGF0ZXMgYW4gU01UUCBjb25uZWN0aW9uLiAgSXQgaGFzIG1ldGhvZHMKICAgIHRoYXQgc3VwcG9ydCBhIGZ1bGwgcmVwZXJ0b2lyZSBvZiBTTVRQIGFuZCBFU01UUCBvcGVyYXRpb25zLiBJZiB0aGUgb3B0aW9uYWwKQEAgLTI5LDEzICsyOSwzNCBAQAogICAgcmFpc2VkIGlmIHRoZSBzcGVjaWZpZWQgaG9zdCBkb2Vzbid0IHJlc3BvbmQgY29ycmVjdGx5LiBUaGUgb3B0aW9uYWwKICAgICp0aW1lb3V0KiBwYXJhbWV0ZXIgc3BlY2lmaWVzIGEgdGltZW91dCBpbiBzZWNvbmRzIGZvciBibG9ja2luZyBvcGVyYXRpb25zCiAgICBsaWtlIHRoZSBjb25uZWN0aW9uIGF0dGVtcHQgKGlmIG5vdCBzcGVjaWZpZWQsIHRoZSBnbG9iYWwgZGVmYXVsdCB0aW1lb3V0Ci0gICBzZXR0aW5nIHdpbGwgYmUgdXNlZCkuCisgICBzZXR0aW5nIHdpbGwgYmUgdXNlZCkuIFRoZSBvcHRpb25hbCBzb3VyY2VfYWRkcmVzcyBwYXJhbWV0ZXIgYWxsb3dzIHRvIGJpbmQgdG8gc29tZQorICAgc3BlY2lmaWMgc291cmNlIGFkZHJlc3MgaW4gYSBtYWNoaW5lIHdpdGggbXVsdGlwbGUgbmV0d29yayBpbnRlcmZhY2VzLAorICAgYW5kL29yIHRvIHNvbWUgc3BlY2lmaWMgc291cmNlIFRDUCBwb3J0LiBJdCB0YWtlcyBhIDItdHVwbGUgKGhvc3QsIHBvcnQpLAorICAgZm9yIHRoZSBzb2NrZXQgdG8gYmluZCB0byBhcyBpdHMgc291cmNlIGFkZHJlc3MgYmVmb3JlIGNvbm5lY3RpbmcuIElmCisgICBvbWl0dGVkIChvciBpZiBob3N0IG9yIHBvcnQgYXJlIGBgJydgYCBhbmQvb3IgMCByZXNwZWN0aXZlbHkpIHRoZSBPUyBkZWZhdWx0CisgICBiZWhhdmlvciB3aWxsIGJlIHVzZWQuCiAKICAgIEZvciBub3JtYWwgdXNlLCB5b3Ugc2hvdWxkIG9ubHkgcmVxdWlyZSB0aGUgaW5pdGlhbGl6YXRpb24vY29ubmVjdCwKICAgIDptZXRoOmBzZW5kbWFpbGAsIGFuZCA6bWV0aDpgcXVpdGAgbWV0aG9kcy4gIEFuIGV4YW1wbGUgaXMgaW5jbHVkZWQgYmVsb3cuCiAKKyAgIFRoZSA6Y2xhc3M6YFNNVFBgIGNsYXNzIHN1cHBvcnRzIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50LiAgV2hlbiB1c2VkCisgICBsaWtlIHRoaXMsIHRoZSBTTVRQIGBgUVVJVGBgIGNvbW1hbmQgaXMgaXNzdWVkIGF1dG9tYXRpY2FsbHkgd2hlbiB0aGUKKyAgIDprZXl3b3JkOmB3aXRoYCBzdGF0ZW1lbnQgZXhpdHMuICBFLmcuOjoKIAotLi4gY2xhc3M6OiBTTVRQX1NTTChob3N0PScnLCBwb3J0PTAsIGxvY2FsX2hvc3RuYW1lPU5vbmUsIGtleWZpbGU9Tm9uZSwgY2VydGZpbGU9Tm9uZVssIHRpbWVvdXRdKQorICAgID4+PiBmcm9tIHNtdHBsaWIgaW1wb3J0IFNNVFAKKyAgICA+Pj4gd2l0aCBTTVRQKCJkb21haW4ub3JnIikgYXMgc210cDoKKyAgICAuLi4gICAgIHNtdHAubm9vcCgpCisgICAgLi4uCisgICAgKDI1MCwgYidPaycpCisgICAgPj4+CisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBTdXBwb3J0IGZvciB0aGUgOmtleXdvcmQ6YHdpdGhgIHN0YXRlbWVudCB3YXMgYWRkZWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBzb3VyY2VfYWRkcmVzcyBhcmd1bWVudCB3YXMgYWRkZWQuCisKKy4uIGNsYXNzOjogU01UUF9TU0woaG9zdD0nJywgcG9ydD0wLCBsb2NhbF9ob3N0bmFtZT1Ob25lLCBrZXlmaWxlPU5vbmUsIGNlcnRmaWxlPU5vbmVbLCB0aW1lb3V0XSwgY29udGV4dD1Ob25lLCBzb3VyY2VfYWRkcmVzcz1Ob25lKQogCiAgICBBIDpjbGFzczpgU01UUF9TU0xgIGluc3RhbmNlIGJlaGF2ZXMgZXhhY3RseSB0aGUgc2FtZSBhcyBpbnN0YW5jZXMgb2YKICAgIDpjbGFzczpgU01UUGAuIDpjbGFzczpgU01UUF9TU0xgIHNob3VsZCBiZSB1c2VkIGZvciBzaXR1YXRpb25zIHdoZXJlIFNTTCBpcwpAQCAtNDMsMTggKzY0LDMzIEBACiAgICBub3QgYXBwcm9wcmlhdGUuIElmICpob3N0KiBpcyBub3Qgc3BlY2lmaWVkLCB0aGUgbG9jYWwgaG9zdCBpcyB1c2VkLiBJZgogICAgKnBvcnQqIGlzIHplcm8sIHRoZSBzdGFuZGFyZCBTTVRQLW92ZXItU1NMIHBvcnQgKDQ2NSkgaXMgdXNlZC4gKmtleWZpbGUqCiAgICBhbmQgKmNlcnRmaWxlKiBhcmUgYWxzbyBvcHRpb25hbCwgYW5kIGNhbiBjb250YWluIGEgUEVNIGZvcm1hdHRlZCBwcml2YXRlIGtleQotICAgYW5kIGNlcnRpZmljYXRlIGNoYWluIGZpbGUgZm9yIHRoZSBTU0wgY29ubmVjdGlvbi4gVGhlIG9wdGlvbmFsICp0aW1lb3V0KgorICAgYW5kIGNlcnRpZmljYXRlIGNoYWluIGZpbGUgZm9yIHRoZSBTU0wgY29ubmVjdGlvbi4gKmNvbnRleHQqIGFsc28gb3B0aW9uYWwsIGNhbiBjb250YWluCisgICBhIFNTTENvbnRleHQsIGFuZCBpcyBhbiBhbHRlcm5hdGl2ZSB0byBrZXlmaWxlIGFuZCBjZXJ0ZmlsZTsgSWYgaXQgaXMgc3BlY2lmaWVkIGJvdGgKKyAgIGtleWZpbGUgYW5kIGNlcnRmaWxlIG11c3QgYmUgTm9uZS4gIFRoZSBvcHRpb25hbCAqdGltZW91dCoKICAgIHBhcmFtZXRlciBzcGVjaWZpZXMgYSB0aW1lb3V0IGluIHNlY29uZHMgZm9yIGJsb2NraW5nIG9wZXJhdGlvbnMgbGlrZSB0aGUKICAgIGNvbm5lY3Rpb24gYXR0ZW1wdCAoaWYgbm90IHNwZWNpZmllZCwgdGhlIGdsb2JhbCBkZWZhdWx0IHRpbWVvdXQgc2V0dGluZwotICAgd2lsbCBiZSB1c2VkKS4KKyAgIHdpbGwgYmUgdXNlZCkuIFRoZSBvcHRpb25hbCBzb3VyY2VfYWRkcmVzcyBwYXJhbWV0ZXIgYWxsb3dzIHRvIGJpbmQgdG8gc29tZQorICAgc3BlY2lmaWMgc291cmNlIGFkZHJlc3MgaW4gYSBtYWNoaW5lIHdpdGggbXVsdGlwbGUgbmV0d29yayBpbnRlcmZhY2VzLAorICAgYW5kL29yIHRvIHNvbWUgc3BlY2lmaWMgc291cmNlIHRjcCBwb3J0LiBJdCB0YWtlcyBhIDItdHVwbGUgKGhvc3QsIHBvcnQpLAorICAgZm9yIHRoZSBzb2NrZXQgdG8gYmluZCB0byBhcyBpdHMgc291cmNlIGFkZHJlc3MgYmVmb3JlIGNvbm5lY3RpbmcuIElmCisgICBvbWl0dGVkIChvciBpZiBob3N0IG9yIHBvcnQgYXJlIGBgJydgYCBhbmQvb3IgMCByZXNwZWN0aXZlbHkpIHRoZSBPUyBkZWZhdWx0CisgICBiZWhhdmlvciB3aWxsIGJlIHVzZWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqY29udGV4dCogd2FzIGFkZGVkLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgc291cmNlX2FkZHJlc3MgYXJndW1lbnQgd2FzIGFkZGVkLgogCiAKLS4uIGNsYXNzOjogTE1UUChob3N0PScnLCBwb3J0PUxNVFBfUE9SVCwgbG9jYWxfaG9zdG5hbWU9Tm9uZSkKKy4uIGNsYXNzOjogTE1UUChob3N0PScnLCBwb3J0PUxNVFBfUE9SVCwgbG9jYWxfaG9zdG5hbWU9Tm9uZSwgc291cmNlX2FkZHJlc3M9Tm9uZSkKIAogICAgVGhlIExNVFAgcHJvdG9jb2wsIHdoaWNoIGlzIHZlcnkgc2ltaWxhciB0byBFU01UUCwgaXMgaGVhdmlseSBiYXNlZCBvbiB0aGUKLSAgIHN0YW5kYXJkIFNNVFAgY2xpZW50LiBJdCdzIGNvbW1vbiB0byB1c2UgVW5peCBzb2NrZXRzIGZvciBMTVRQLCBzbyBvdXIgOm1ldGg6YGNvbm5lY3RgCi0gICBtZXRob2QgbXVzdCBzdXBwb3J0IHRoYXQgYXMgd2VsbCBhcyBhIHJlZ3VsYXIgaG9zdDpwb3J0IHNlcnZlci4gVG8gc3BlY2lmeSBhCi0gICBVbml4IHNvY2tldCwgeW91IG11c3QgdXNlIGFuIGFic29sdXRlIHBhdGggZm9yICpob3N0Kiwgc3RhcnRpbmcgd2l0aCBhICcvJy4KKyAgIHN0YW5kYXJkIFNNVFAgY2xpZW50LiBJdCdzIGNvbW1vbiB0byB1c2UgVW5peCBzb2NrZXRzIGZvciBMTVRQLCBzbyBvdXIKKyAgIDptZXRoOmBjb25uZWN0YCBtZXRob2QgbXVzdCBzdXBwb3J0IHRoYXQgYXMgd2VsbCBhcyBhIHJlZ3VsYXIgaG9zdDpwb3J0CisgICBzZXJ2ZXIuIFRoZSBvcHRpb25hbCBhcmd1bWVudHMgbG9jYWxfaG9zdG5hbWUgYW5kIHNvdXJjZV9hZGRyZXNzIGhhdmUgdGhlCisgICBzYW1lIG1lYW5pbmcgYXMgdGhhdCBvZiBTTVRQIGNsaWVudC4gVG8gc3BlY2lmeSBhIFVuaXggc29ja2V0LCB5b3UgbXVzdCB1c2UKKyAgIGFuIGFic29sdXRlIHBhdGggZm9yICpob3N0Kiwgc3RhcnRpbmcgd2l0aCBhICcvJy4KIAogICAgQXV0aGVudGljYXRpb24gaXMgc3VwcG9ydGVkLCB1c2luZyB0aGUgcmVndWxhciBTTVRQIG1lY2hhbmlzbS4gV2hlbiB1c2luZyBhIFVuaXgKICAgIHNvY2tldCwgTE1UUCBnZW5lcmFsbHkgZG9uJ3Qgc3VwcG9ydCBvciByZXF1aXJlIGFueSBhdXRoZW50aWNhdGlvbiwgYnV0IHlvdXIKQEAgLTI0Miw3ICsyNzgsNyBAQAogICAgICAgTm8gc3VpdGFibGUgYXV0aGVudGljYXRpb24gbWV0aG9kIHdhcyBmb3VuZC4KIAogCi0uLiBtZXRob2Q6OiBTTVRQLnN0YXJ0dGxzKGtleWZpbGU9Tm9uZSwgY2VydGZpbGU9Tm9uZSkKKy4uIG1ldGhvZDo6IFNNVFAuc3RhcnR0bHMoa2V5ZmlsZT1Ob25lLCBjZXJ0ZmlsZT1Ob25lLCBjb250ZXh0PU5vbmUpCiAKICAgIFB1dCB0aGUgU01UUCBjb25uZWN0aW9uIGluIFRMUyAoVHJhbnNwb3J0IExheWVyIFNlY3VyaXR5KSBtb2RlLiAgQWxsIFNNVFAKICAgIGNvbW1hbmRzIHRoYXQgZm9sbG93IHdpbGwgYmUgZW5jcnlwdGVkLiAgWW91IHNob3VsZCB0aGVuIGNhbGwgOm1ldGg6YGVobG9gCkBAIC0yNTEsNiArMjg3LDkgQEAKICAgIElmICprZXlmaWxlKiBhbmQgKmNlcnRmaWxlKiBhcmUgcHJvdmlkZWQsIHRoZXNlIGFyZSBwYXNzZWQgdG8gdGhlIDptb2Q6YHNvY2tldGAKICAgIG1vZHVsZSdzIDpmdW5jOmBzc2xgIGZ1bmN0aW9uLgogCisgICBPcHRpb25hbCAqY29udGV4dCogcGFyYW1ldGVyIGlzIGEgOmNsYXNzOmBzc2wuU1NMQ29udGV4dGAgb2JqZWN0OyBUaGlzIGlzIGFuIGFsdGVybmF0aXZlIHRvCisgICB1c2luZyBhIGtleWZpbGUgYW5kIGEgY2VydGZpbGUgYW5kIGlmIHNwZWNpZmllZCBib3RoICprZXlmaWxlKiBhbmQgKmNlcnRmaWxlKiBzaG91bGQgYmUgTm9uZS4KKwogICAgSWYgdGhlcmUgaGFzIGJlZW4gbm8gcHJldmlvdXMgYGBFSExPYGAgb3IgYGBIRUxPYGAgY29tbWFuZCB0aGlzIHNlc3Npb24sCiAgICB0aGlzIG1ldGhvZCB0cmllcyBFU01UUCBgYEVITE9gYCBmaXJzdC4KIApAQCAtMjYzLDYgKzMwMiw5IEBACiAgICA6ZXhjOmBSdW50aW1lRXJyb3JgCiAgICAgIFNTTC9UTFMgc3VwcG9ydCBpcyBub3QgYXZhaWxhYmxlIHRvIHlvdXIgUHl0aG9uIGludGVycHJldGVyLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgKmNvbnRleHQqIHdhcyBhZGRlZC4KKwogCiAuLiBtZXRob2Q6OiBTTVRQLnNlbmRtYWlsKGZyb21fYWRkciwgdG9fYWRkcnMsIG1zZywgbWFpbF9vcHRpb25zPVtdLCByY3B0X29wdGlvbnM9W10pCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3NvY2tldC5yc3QgYi9Eb2MvbGlicmFyeS9zb2NrZXQucnN0CmluZGV4IGIzMWViOTIuLmNiMmFiMjMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3NvY2tldC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvc29ja2V0LnJzdApAQCAtNDAsOSArNDAsMjMgQEAKIERlcGVuZGluZyBvbiB0aGUgc3lzdGVtIGFuZCB0aGUgYnVpbGQgb3B0aW9ucywgdmFyaW91cyBzb2NrZXQgZmFtaWxpZXMKIGFyZSBzdXBwb3J0ZWQgYnkgdGhpcyBtb2R1bGUuCiAKLVNvY2tldCBhZGRyZXNzZXMgYXJlIHJlcHJlc2VudGVkIGFzIGZvbGxvd3M6CitUaGUgYWRkcmVzcyBmb3JtYXQgcmVxdWlyZWQgYnkgYSBwYXJ0aWN1bGFyIHNvY2tldCBvYmplY3QgaXMgYXV0b21hdGljYWxseQorc2VsZWN0ZWQgYmFzZWQgb24gdGhlIGFkZHJlc3MgZmFtaWx5IHNwZWNpZmllZCB3aGVuIHRoZSBzb2NrZXQgb2JqZWN0IHdhcworY3JlYXRlZC4gIFNvY2tldCBhZGRyZXNzZXMgYXJlIHJlcHJlc2VudGVkIGFzIGZvbGxvd3M6CiAKLS0gQSBzaW5nbGUgc3RyaW5nIGlzIHVzZWQgZm9yIHRoZSA6Y29uc3Q6YEFGX1VOSVhgIGFkZHJlc3MgZmFtaWx5LgorLSBUaGUgYWRkcmVzcyBvZiBhbiA6Y29uc3Q6YEFGX1VOSVhgIHNvY2tldCBib3VuZCB0byBhIGZpbGUgc3lzdGVtIG5vZGUKKyAgaXMgcmVwcmVzZW50ZWQgYXMgYSBzdHJpbmcsIHVzaW5nIHRoZSBmaWxlIHN5c3RlbSBlbmNvZGluZyBhbmQgdGhlCisgIGBgJ3N1cnJvZ2F0ZWVzY2FwZSdgYCBlcnJvciBoYW5kbGVyIChzZWUgOnBlcDpgMzgzYCkuICBBbiBhZGRyZXNzIGluCisgIExpbnV4J3MgYWJzdHJhY3QgbmFtZXNwYWNlIGlzIHJldHVybmVkIGFzIGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0IHdpdGgKKyAgYW4gaW5pdGlhbCBudWxsIGJ5dGU7IG5vdGUgdGhhdCBzb2NrZXRzIGluIHRoaXMgbmFtZXNwYWNlIGNhbgorICBjb21tdW5pY2F0ZSB3aXRoIG5vcm1hbCBmaWxlIHN5c3RlbSBzb2NrZXRzLCBzbyBwcm9ncmFtcyBpbnRlbmRlZCB0bworICBydW4gb24gTGludXggbWF5IG5lZWQgdG8gZGVhbCB3aXRoIGJvdGggdHlwZXMgb2YgYWRkcmVzcy4gIEEgc3RyaW5nIG9yCisgIDpjbGFzczpgYnl0ZXNgIG9iamVjdCBjYW4gYmUgdXNlZCBmb3IgZWl0aGVyIHR5cGUgb2YgYWRkcmVzcyB3aGVuCisgIHBhc3NpbmcgaXQgYXMgYW4gYXJndW1lbnQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBQcmV2aW91c2x5LCA6Y29uc3Q6YEFGX1VOSVhgIHNvY2tldCBwYXRocyB3ZXJlIGFzc3VtZWQgdG8gdXNlIFVURi04CisgICAgICBlbmNvZGluZy4KIAogLSBBIHBhaXIgYGAoaG9zdCwgcG9ydClgYCBpcyB1c2VkIGZvciB0aGUgOmNvbnN0OmBBRl9JTkVUYCBhZGRyZXNzIGZhbWlseSwKICAgd2hlcmUgKmhvc3QqIGlzIGEgc3RyaW5nIHJlcHJlc2VudGluZyBlaXRoZXIgYSBob3N0bmFtZSBpbiBJbnRlcm5ldCBkb21haW4KQEAgLTgwLDYgKzk0LDExIEBACiAgICAgSWYgKmFkZHJfdHlwZSogaXMgOmNvbnN0OmBUSVBDX0FERFJfSURgLCB0aGVuICp2MSogaXMgdGhlIG5vZGUsICp2MiogaXMgdGhlCiAgICAgcmVmZXJlbmNlLCBhbmQgKnYzKiBzaG91bGQgYmUgc2V0IHRvIDAuCiAKKy0gQSB0dXBsZSBgYChpbnRlcmZhY2UsIClgYCBpcyB1c2VkIGZvciB0aGUgOmNvbnN0OmBBRl9DQU5gIGFkZHJlc3MgZmFtaWx5LAorICB3aGVyZSAqaW50ZXJmYWNlKiBpcyBhIHN0cmluZyByZXByZXNlbnRpbmcgYSBuZXR3b3JrIGludGVyZmFjZSBuYW1lIGxpa2UKKyAgYGAnY2FuMCdgYC4gVGhlIG5ldHdvcmsgaW50ZXJmYWNlIG5hbWUgYGAnJ2BgIGNhbiBiZSB1c2VkIHRvIHJlY2VpdmUgcGFja2V0cworICBmcm9tIGFsbCBuZXR3b3JrIGludGVyZmFjZXMgb2YgdGhpcyBmYW1pbHkuCisKIC0gQ2VydGFpbiBvdGhlciBhZGRyZXNzIGZhbWlsaWVzICg6Y29uc3Q6YEFGX0JMVUVUT09USGAsIDpjb25zdDpgQUZfUEFDS0VUYCkKICAgc3VwcG9ydCBzcGVjaWZpYyByZXByZXNlbnRhdGlvbnMuCiAKQEAgLTk5LDggKzExOCw5IEBACiBudW1lcmljIGFkZHJlc3MgaW4gKmhvc3QqIHBvcnRpb24uCiAKIEFsbCBlcnJvcnMgcmFpc2UgZXhjZXB0aW9ucy4gIFRoZSBub3JtYWwgZXhjZXB0aW9ucyBmb3IgaW52YWxpZCBhcmd1bWVudCB0eXBlcwotYW5kIG91dC1vZi1tZW1vcnkgY29uZGl0aW9ucyBjYW4gYmUgcmFpc2VkOyBlcnJvcnMgcmVsYXRlZCB0byBzb2NrZXQgb3IgYWRkcmVzcwotc2VtYW50aWNzIHJhaXNlIDpleGM6YHNvY2tldC5lcnJvcmAgb3Igb25lIG9mIGl0cyBzdWJjbGFzc2VzLgorYW5kIG91dC1vZi1tZW1vcnkgY29uZGl0aW9ucyBjYW4gYmUgcmFpc2VkOyBzdGFydGluZyBmcm9tIFB5dGhvbiAzLjMsIGVycm9ycworcmVsYXRlZCB0byBzb2NrZXQgb3IgYWRkcmVzcyBzZW1hbnRpY3MgcmFpc2UgOmV4YzpgT1NFcnJvcmAgb3Igb25lIG9mIGl0cworc3ViY2xhc3NlcyAodGhleSB1c2VkIHRvIHJhaXNlIDpleGM6YHNvY2tldC5lcnJvcmApLgogCiBOb24tYmxvY2tpbmcgbW9kZSBpcyBzdXBwb3J0ZWQgdGhyb3VnaCA6bWV0aDpgfnNvY2tldC5zZXRibG9ja2luZ2AuICBBCiBnZW5lcmFsaXphdGlvbiBvZiB0aGlzIGJhc2VkIG9uIHRpbWVvdXRzIGlzIHN1cHBvcnRlZCB0aHJvdWdoCkBAIC0xMTUsMjAgKzEzNSwxNSBAQAogCiAuLiBleGNlcHRpb246OiBlcnJvcgogCi0gICAuLiBpbmRleDo6IG1vZHVsZTogZXJybm8KKyAgIEEgZGVwcmVjYXRlZCBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAotICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBJT0Vycm9yYCwgdGhpcyBleGNlcHRpb24gaXMgcmFpc2VkIGZvciBzb2NrZXQtcmVsYXRlZAotICAgZXJyb3JzLiAgSXQgaXMgcmVjb21tZW5kZWQgdGhhdCB5b3UgaW5zcGVjdCBpdHMgYGBlcnJub2BgIGF0dHJpYnV0ZSB0bwotICAgZGlzY3JpbWluYXRlIGJldHdlZW4gZGlmZmVyZW50IGtpbmRzIG9mIGVycm9ycy4KLQotICAgLi4gc2VlYWxzbzo6Ci0gICAgICBUaGUgOm1vZDpgZXJybm9gIG1vZHVsZSBjb250YWlucyBzeW1ib2xpYyBuYW1lcyBmb3IgdGhlIGVycm9yIGNvZGVzCi0gICAgICBkZWZpbmVkIGJ5IHRoZSB1bmRlcmx5aW5nIG9wZXJhdGluZyBzeXN0ZW0uCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgRm9sbG93aW5nIDpwZXA6YDMxNTFgLCB0aGlzIGNsYXNzIHdhcyBtYWRlIGFuIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgogCiAKIC4uIGV4Y2VwdGlvbjo6IGhlcnJvcgogCi0gICBBIHN1YmNsYXNzIG9mIDpleGM6YHNvY2tldC5lcnJvcmAsIHRoaXMgZXhjZXB0aW9uIGlzIHJhaXNlZCBmb3IKKyAgIEEgc3ViY2xhc3Mgb2YgOmV4YzpgT1NFcnJvcmAsIHRoaXMgZXhjZXB0aW9uIGlzIHJhaXNlZCBmb3IKICAgIGFkZHJlc3MtcmVsYXRlZCBlcnJvcnMsIGkuZS4gZm9yIGZ1bmN0aW9ucyB0aGF0IHVzZSAqaF9lcnJubyogaW4gdGhlIFBPU0lYCiAgICBDIEFQSSwgaW5jbHVkaW5nIDpmdW5jOmBnZXRob3N0YnluYW1lX2V4YCBhbmQgOmZ1bmM6YGdldGhvc3RieWFkZHJgLgogICAgVGhlIGFjY29tcGFueWluZyB2YWx1ZSBpcyBhIHBhaXIgYGAoaF9lcnJubywgc3RyaW5nKWBgIHJlcHJlc2VudGluZyBhbgpAQCAtMTM2LDEwICsxNTEsMTIgQEAKICAgICpzdHJpbmcqIHJlcHJlc2VudHMgdGhlIGRlc2NyaXB0aW9uIG9mICpoX2Vycm5vKiwgYXMgcmV0dXJuZWQgYnkgdGhlCiAgICA6YzpmdW5jOmBoc3RyZXJyb3JgIEMgZnVuY3Rpb24uCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIGNsYXNzIHdhcyBtYWRlIGEgc3ViY2xhc3Mgb2YgOmV4YzpgT1NFcnJvcmAuCiAKIC4uIGV4Y2VwdGlvbjo6IGdhaWVycm9yCiAKLSAgIEEgc3ViY2xhc3Mgb2YgOmV4Yzpgc29ja2V0LmVycm9yYCwgdGhpcyBleGNlcHRpb24gaXMgcmFpc2VkIGZvcgorICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBPU0Vycm9yYCwgdGhpcyBleGNlcHRpb24gaXMgcmFpc2VkIGZvcgogICAgYWRkcmVzcy1yZWxhdGVkIGVycm9ycyBieSA6ZnVuYzpgZ2V0YWRkcmluZm9gIGFuZCA6ZnVuYzpgZ2V0bmFtZWluZm9gLgogICAgVGhlIGFjY29tcGFueWluZyB2YWx1ZSBpcyBhIHBhaXIgYGAoZXJyb3IsIHN0cmluZylgYCByZXByZXNlbnRpbmcgYW4gZXJyb3IKICAgIHJldHVybmVkIGJ5IGEgbGlicmFyeSBjYWxsLiAgKnN0cmluZyogcmVwcmVzZW50cyB0aGUgZGVzY3JpcHRpb24gb2YKQEAgLTE0NywxNSArMTY0LDE5IEBACiAgICBudW1lcmljICplcnJvciogdmFsdWUgd2lsbCBtYXRjaCBvbmUgb2YgdGhlIDpjb25zdDpgRUFJX1wqYCBjb25zdGFudHMKICAgIGRlZmluZWQgaW4gdGhpcyBtb2R1bGUuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIGNsYXNzIHdhcyBtYWRlIGEgc3ViY2xhc3Mgb2YgOmV4YzpgT1NFcnJvcmAuCiAKIC4uIGV4Y2VwdGlvbjo6IHRpbWVvdXQKIAotICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBzb2NrZXQuZXJyb3JgLCB0aGlzIGV4Y2VwdGlvbiBpcyByYWlzZWQgd2hlbiBhIHRpbWVvdXQKKyAgIEEgc3ViY2xhc3Mgb2YgOmV4YzpgT1NFcnJvcmAsIHRoaXMgZXhjZXB0aW9uIGlzIHJhaXNlZCB3aGVuIGEgdGltZW91dAogICAgb2NjdXJzIG9uIGEgc29ja2V0IHdoaWNoIGhhcyBoYWQgdGltZW91dHMgZW5hYmxlZCB2aWEgYSBwcmlvciBjYWxsIHRvCiAgICA6bWV0aDpgfnNvY2tldC5zZXR0aW1lb3V0YCAob3IgaW1wbGljaXRseSB0aHJvdWdoCiAgICA6ZnVuYzpgfnNvY2tldC5zZXRkZWZhdWx0dGltZW91dGApLiAgVGhlIGFjY29tcGFueWluZyB2YWx1ZSBpcyBhIHN0cmluZwogICAgd2hvc2UgdmFsdWUgaXMgY3VycmVudGx5IGFsd2F5cyAidGltZWQgb3V0Ii4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgY2xhc3Mgd2FzIG1hZGUgYSBzdWJjbGFzcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAogLi4gZGF0YTo6IEFGX1VOSVgKICAgICAgICAgICBBRl9JTkVUCkBAIC0xOTgsNiArMjE5LDcgQEAKICAgICAgICAgICBTT01BWENPTk4KICAgICAgICAgICBNU0dfKgogICAgICAgICAgIFNPTF8qCisgICAgICAgICAgU0NNXyoKICAgICAgICAgICBJUFBST1RPXyoKICAgICAgICAgICBJUFBPUlRfKgogICAgICAgICAgIElOQUREUl8qCkBAIC0yMTUsNiArMjM3LDMyIEBACiAgICBpbiB0aGUgVW5peCBoZWFkZXIgZmlsZXMgYXJlIGRlZmluZWQ7IGZvciBhIGZldyBzeW1ib2xzLCBkZWZhdWx0IHZhbHVlcyBhcmUKICAgIHByb3ZpZGVkLgogCisuLiBkYXRhOjogQUZfQ0FOCisgICAgICAgICAgUEZfQ0FOCisgICAgICAgICAgU09MX0NBTl8qCisgICAgICAgICAgQ0FOXyoKKworICAgTWFueSBjb25zdGFudHMgb2YgdGhlc2UgZm9ybXMsIGRvY3VtZW50ZWQgaW4gdGhlIExpbnV4IGRvY3VtZW50YXRpb24sIGFyZQorICAgYWxzbyBkZWZpbmVkIGluIHRoZSBzb2NrZXQgbW9kdWxlLgorCisgICBBdmFpbGFiaWxpdHk6IExpbnV4ID49IDIuNi4yNS4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKworLi4gZGF0YTo6IEFGX1JEUworICAgICAgICAgIFBGX1JEUworICAgICAgICAgIFNPTF9SRFMKKyAgICAgICAgICBSRFNfKgorCisgICBNYW55IGNvbnN0YW50cyBvZiB0aGVzZSBmb3JtcywgZG9jdW1lbnRlZCBpbiB0aGUgTGludXggZG9jdW1lbnRhdGlvbiwgYXJlCisgICBhbHNvIGRlZmluZWQgaW4gdGhlIHNvY2tldCBtb2R1bGUuCisKKyAgIEF2YWlsYWJpbGl0eTogTGludXggPj0gMi42LjMwLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBkYXRhOjogU0lPXyoKICAgICAgICAgICBSQ1ZBTExfKgogCkBAIC0zOTMsMTAgKzQ0MSwxNSBAQAogCiAgICBDcmVhdGUgYSBuZXcgc29ja2V0IHVzaW5nIHRoZSBnaXZlbiBhZGRyZXNzIGZhbWlseSwgc29ja2V0IHR5cGUgYW5kIHByb3RvY29sCiAgICBudW1iZXIuICBUaGUgYWRkcmVzcyBmYW1pbHkgc2hvdWxkIGJlIDpjb25zdDpgQUZfSU5FVGAgKHRoZSBkZWZhdWx0KSwKLSAgIDpjb25zdDpgQUZfSU5FVDZgIG9yIDpjb25zdDpgQUZfVU5JWGAuICBUaGUgc29ja2V0IHR5cGUgc2hvdWxkIGJlCi0gICA6Y29uc3Q6YFNPQ0tfU1RSRUFNYCAodGhlIGRlZmF1bHQpLCA6Y29uc3Q6YFNPQ0tfREdSQU1gIG9yIHBlcmhhcHMgb25lIG9mIHRoZQotICAgb3RoZXIgYGBTT0NLX2BgIGNvbnN0YW50cy4gIFRoZSBwcm90b2NvbCBudW1iZXIgaXMgdXN1YWxseSB6ZXJvIGFuZCBtYXkgYmUKLSAgIG9taXR0ZWQgaW4gdGhhdCBjYXNlLgorICAgOmNvbnN0OmBBRl9JTkVUNmAsIDpjb25zdDpgQUZfVU5JWGAsIDpjb25zdDpgQUZfQ0FOYCBvciA6Y29uc3Q6YEFGX1JEU2AuIFRoZQorICAgc29ja2V0IHR5cGUgc2hvdWxkIGJlIDpjb25zdDpgU09DS19TVFJFQU1gICh0aGUgZGVmYXVsdCksCisgICA6Y29uc3Q6YFNPQ0tfREdSQU1gLCA6Y29uc3Q6YFNPQ0tfUkFXYCBvciBwZXJoYXBzIG9uZSBvZiB0aGUgb3RoZXIgYGBTT0NLX2BgCisgICBjb25zdGFudHMuIFRoZSBwcm90b2NvbCBudW1iZXIgaXMgdXN1YWxseSB6ZXJvIGFuZCBtYXkgYmUgb21pdHRlZCBpbiB0aGF0CisgICBjYXNlIG9yIDpjb25zdDpgQ0FOX1JBV2AgaW4gY2FzZSB0aGUgYWRkcmVzcyBmYW1pbHkgaXMgOmNvbnN0OmBBRl9DQU5gLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhlIEFGX0NBTiBmYW1pbHkgd2FzIGFkZGVkLgorICAgICAgVGhlIEFGX1JEUyBmYW1pbHkgd2FzIGFkZGVkLgogCiAKIC4uIGZ1bmN0aW9uOjogc29ja2V0cGFpcihbZmFtaWx5WywgdHlwZVssIHByb3RvXV1dKQpAQCAtNDY0LDcgKzUxNyw3IEBACiAgICBVbml4IG1hbnVhbCBwYWdlIDptYW5wYWdlOmBpbmV0KDMpYCBmb3IgZGV0YWlscy4KIAogICAgSWYgdGhlIElQdjQgYWRkcmVzcyBzdHJpbmcgcGFzc2VkIHRvIHRoaXMgZnVuY3Rpb24gaXMgaW52YWxpZCwKLSAgIDpleGM6YHNvY2tldC5lcnJvcmAgd2lsbCBiZSByYWlzZWQuIE5vdGUgdGhhdCBleGFjdGx5IHdoYXQgaXMgdmFsaWQgZGVwZW5kcyBvbgorICAgOmV4YzpgT1NFcnJvcmAgd2lsbCBiZSByYWlzZWQuIE5vdGUgdGhhdCBleGFjdGx5IHdoYXQgaXMgdmFsaWQgZGVwZW5kcyBvbgogICAgdGhlIHVuZGVybHlpbmcgQyBpbXBsZW1lbnRhdGlvbiBvZiA6YzpmdW5jOmBpbmV0X2F0b25gLgogCiAgICA6ZnVuYzpgaW5ldF9hdG9uYCBkb2VzIG5vdCBzdXBwb3J0IElQdjYsIGFuZCA6ZnVuYzpgaW5ldF9wdG9uYCBzaG91bGQgYmUgdXNlZApAQCAtNDgxLDcgKzUzNCw3IEBACiAgICBhcmd1bWVudC4KIAogICAgSWYgdGhlIGJ5dGUgc2VxdWVuY2UgcGFzc2VkIHRvIHRoaXMgZnVuY3Rpb24gaXMgbm90IGV4YWN0bHkgNCBieXRlcyBpbgotICAgbGVuZ3RoLCA6ZXhjOmBzb2NrZXQuZXJyb3JgIHdpbGwgYmUgcmFpc2VkLiA6ZnVuYzpgaW5ldF9udG9hYCBkb2VzIG5vdAorICAgbGVuZ3RoLCA6ZXhjOmBPU0Vycm9yYCB3aWxsIGJlIHJhaXNlZC4gOmZ1bmM6YGluZXRfbnRvYWAgZG9lcyBub3QKICAgIHN1cHBvcnQgSVB2NiwgYW5kIDpmdW5jOmBpbmV0X250b3BgIHNob3VsZCBiZSB1c2VkIGluc3RlYWQgZm9yIElQdjQvdjYgZHVhbAogICAgc3RhY2sgc3VwcG9ydC4KIApAQCAtNDk1LDcgKzU0OCw3IEBACiAKICAgIFN1cHBvcnRlZCB2YWx1ZXMgZm9yICphZGRyZXNzX2ZhbWlseSogYXJlIGN1cnJlbnRseSA6Y29uc3Q6YEFGX0lORVRgIGFuZAogICAgOmNvbnN0OmBBRl9JTkVUNmAuIElmIHRoZSBJUCBhZGRyZXNzIHN0cmluZyAqaXBfc3RyaW5nKiBpcyBpbnZhbGlkLAotICAgOmV4Yzpgc29ja2V0LmVycm9yYCB3aWxsIGJlIHJhaXNlZC4gTm90ZSB0aGF0IGV4YWN0bHkgd2hhdCBpcyB2YWxpZCBkZXBlbmRzIG9uCisgICA6ZXhjOmBPU0Vycm9yYCB3aWxsIGJlIHJhaXNlZC4gTm90ZSB0aGF0IGV4YWN0bHkgd2hhdCBpcyB2YWxpZCBkZXBlbmRzIG9uCiAgICBib3RoIHRoZSB2YWx1ZSBvZiAqYWRkcmVzc19mYW1pbHkqIGFuZCB0aGUgdW5kZXJseWluZyBpbXBsZW1lbnRhdGlvbiBvZgogICAgOmM6ZnVuYzpgaW5ldF9wdG9uYC4KIApAQCAtNTEzLDExICs1NjYsNTQgQEAKICAgIFN1cHBvcnRlZCB2YWx1ZXMgZm9yICphZGRyZXNzX2ZhbWlseSogYXJlIGN1cnJlbnRseSA6Y29uc3Q6YEFGX0lORVRgIGFuZAogICAgOmNvbnN0OmBBRl9JTkVUNmAuIElmIHRoZSBzdHJpbmcgKnBhY2tlZF9pcCogaXMgbm90IHRoZSBjb3JyZWN0IGxlbmd0aCBmb3IgdGhlCiAgICBzcGVjaWZpZWQgYWRkcmVzcyBmYW1pbHksIDpleGM6YFZhbHVlRXJyb3JgIHdpbGwgYmUgcmFpc2VkLiAgQQotICAgOmV4Yzpgc29ja2V0LmVycm9yYCBpcyByYWlzZWQgZm9yIGVycm9ycyBmcm9tIHRoZSBjYWxsIHRvIDpmdW5jOmBpbmV0X250b3BgLgorICAgOmV4YzpgT1NFcnJvcmAgaXMgcmFpc2VkIGZvciBlcnJvcnMgZnJvbSB0aGUgY2FsbCB0byA6ZnVuYzpgaW5ldF9udG9wYC4KIAogICAgQXZhaWxhYmlsaXR5OiBVbml4IChtYXliZSBub3QgYWxsIHBsYXRmb3JtcykuCiAKIAorLi4KKyAgIFhYWDogQXJlIHNlbmRtc2coKSwgcmVjdm1zZygpIGFuZCBDTVNHXyooKSBhdmFpbGFibGUgb24gYW55CisgICBub24tVW5peCBwbGF0Zm9ybXM/ICBUaGUgb2xkIChvYnNvbGV0ZT8pIDQuMkJTRCBmb3JtIG9mIHRoZQorICAgaW50ZXJmYWNlLCBpbiB3aGljaCBzdHJ1Y3QgbXNnaGRyIGhhcyBubyBtc2dfY29udHJvbCBvcgorICAgbXNnX2NvbnRyb2xsZW4gbWVtYmVycywgaXMgbm90IGN1cnJlbnRseSBzdXBwb3J0ZWQuCisKKy4uIGZ1bmN0aW9uOjogQ01TR19MRU4obGVuZ3RoKQorCisgICBSZXR1cm4gdGhlIHRvdGFsIGxlbmd0aCwgd2l0aG91dCB0cmFpbGluZyBwYWRkaW5nLCBvZiBhbiBhbmNpbGxhcnkKKyAgIGRhdGEgaXRlbSB3aXRoIGFzc29jaWF0ZWQgZGF0YSBvZiB0aGUgZ2l2ZW4gKmxlbmd0aCouICBUaGlzIHZhbHVlCisgICBjYW4gb2Z0ZW4gYmUgdXNlZCBhcyB0aGUgYnVmZmVyIHNpemUgZm9yIDptZXRoOmB+c29ja2V0LnJlY3Ztc2dgIHRvCisgICByZWNlaXZlIGEgc2luZ2xlIGl0ZW0gb2YgYW5jaWxsYXJ5IGRhdGEsIGJ1dCA6cmZjOmAzNTQyYCByZXF1aXJlcworICAgcG9ydGFibGUgYXBwbGljYXRpb25zIHRvIHVzZSA6ZnVuYzpgQ01TR19TUEFDRWAgYW5kIHRodXMgaW5jbHVkZQorICAgc3BhY2UgZm9yIHBhZGRpbmcsIGV2ZW4gd2hlbiB0aGUgaXRlbSB3aWxsIGJlIHRoZSBsYXN0IGluIHRoZQorICAgYnVmZmVyLiAgUmFpc2VzIDpleGM6YE92ZXJmbG93RXJyb3JgIGlmICpsZW5ndGgqIGlzIG91dHNpZGUgdGhlCisgICBwZXJtaXNzaWJsZSByYW5nZSBvZiB2YWx1ZXMuCisKKyAgIEF2YWlsYWJpbGl0eTogbW9zdCBVbml4IHBsYXRmb3JtcywgcG9zc2libHkgb3RoZXJzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IENNU0dfU1BBQ0UobGVuZ3RoKQorCisgICBSZXR1cm4gdGhlIGJ1ZmZlciBzaXplIG5lZWRlZCBmb3IgOm1ldGg6YH5zb2NrZXQucmVjdm1zZ2AgdG8KKyAgIHJlY2VpdmUgYW4gYW5jaWxsYXJ5IGRhdGEgaXRlbSB3aXRoIGFzc29jaWF0ZWQgZGF0YSBvZiB0aGUgZ2l2ZW4KKyAgICpsZW5ndGgqLCBhbG9uZyB3aXRoIGFueSB0cmFpbGluZyBwYWRkaW5nLiAgVGhlIGJ1ZmZlciBzcGFjZSBuZWVkZWQKKyAgIHRvIHJlY2VpdmUgbXVsdGlwbGUgaXRlbXMgaXMgdGhlIHN1bSBvZiB0aGUgOmZ1bmM6YENNU0dfU1BBQ0VgCisgICB2YWx1ZXMgZm9yIHRoZWlyIGFzc29jaWF0ZWQgZGF0YSBsZW5ndGhzLiAgUmFpc2VzCisgICA6ZXhjOmBPdmVyZmxvd0Vycm9yYCBpZiAqbGVuZ3RoKiBpcyBvdXRzaWRlIHRoZSBwZXJtaXNzaWJsZSByYW5nZQorICAgb2YgdmFsdWVzLgorCisgICBOb3RlIHRoYXQgc29tZSBzeXN0ZW1zIG1pZ2h0IHN1cHBvcnQgYW5jaWxsYXJ5IGRhdGEgd2l0aG91dAorICAgcHJvdmlkaW5nIHRoaXMgZnVuY3Rpb24uICBBbHNvIG5vdGUgdGhhdCBzZXR0aW5nIHRoZSBidWZmZXIgc2l6ZQorICAgdXNpbmcgdGhlIHJlc3VsdHMgb2YgdGhpcyBmdW5jdGlvbiBtYXkgbm90IHByZWNpc2VseSBsaW1pdCB0aGUKKyAgIGFtb3VudCBvZiBhbmNpbGxhcnkgZGF0YSB0aGF0IGNhbiBiZSByZWNlaXZlZCwgc2luY2UgYWRkaXRpb25hbAorICAgZGF0YSBtYXkgYmUgYWJsZSB0byBmaXQgaW50byB0aGUgcGFkZGluZyBhcmVhLgorCisgICBBdmFpbGFiaWxpdHk6IG1vc3QgVW5peCBwbGF0Zm9ybXMsIHBvc3NpYmx5IG90aGVycy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZnVuY3Rpb246OiBnZXRkZWZhdWx0dGltZW91dCgpCiAKICAgIFJldHVybiB0aGUgZGVmYXVsdCB0aW1lb3V0IGluIHNlY29uZHMgKGZsb2F0KSBmb3IgbmV3IHNvY2tldCBvYmplY3RzLiBBIHZhbHVlCkBAIC01MzMsNiArNjI5LDQ5IEBACiAgICBtZWFuaW5ncy4KIAogCisuLiBmdW5jdGlvbjo6IHNldGhvc3RuYW1lKG5hbWUpCisKKyAgIFNldCB0aGUgbWFjaGluZSdzIGhvc3RuYW1lIHRvICpuYW1lKi4gIFRoaXMgd2lsbCByYWlzZSBhCisgICA6ZXhjOmBPU0Vycm9yYCBpZiB5b3UgZG9uJ3QgaGF2ZSBlbm91Z2ggcmlnaHRzLgorCisgICBBdmFpbGFiaWxpdHk6IFVuaXguCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIGZ1bmN0aW9uOjogaWZfbmFtZWluZGV4KCkKKworICAgUmV0dXJuIGEgbGlzdCBvZiBuZXR3b3JrIGludGVyZmFjZSBpbmZvcm1hdGlvbgorICAgKGluZGV4IGludCwgbmFtZSBzdHJpbmcpIHR1cGxlcy4KKyAgIDpleGM6YE9TRXJyb3JgIGlmIHRoZSBzeXN0ZW0gY2FsbCBmYWlscy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IGlmX25hbWV0b2luZGV4KGlmX25hbWUpCisKKyAgIFJldHVybiBhIG5ldHdvcmsgaW50ZXJmYWNlIGluZGV4IG51bWJlciBjb3JyZXNwb25kaW5nIHRvIGFuCisgICBpbnRlcmZhY2UgbmFtZS4KKyAgIDpleGM6YE9TRXJyb3JgIGlmIG5vIGludGVyZmFjZSB3aXRoIHRoZSBnaXZlbiBuYW1lIGV4aXN0cy4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCisuLiBmdW5jdGlvbjo6IGlmX2luZGV4dG9uYW1lKGlmX2luZGV4KQorCisgICBSZXR1cm4gYSBuZXR3b3JrIGludGVyZmFjZSBuYW1lIGNvcnJlc3BvbmRpbmcgdG8gYQorICAgaW50ZXJmYWNlIGluZGV4IG51bWJlci4KKyAgIDpleGM6YE9TRXJyb3JgIGlmIG5vIGludGVyZmFjZSB3aXRoIHRoZSBnaXZlbiBpbmRleCBleGlzdHMuCisKKyAgIEF2YWlsYWJpbGl0eTogVW5peC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gZGF0YTo6IFNvY2tldFR5cGUKIAogICAgVGhpcyBpcyBhIFB5dGhvbiB0eXBlIG9iamVjdCB0aGF0IHJlcHJlc2VudHMgdGhlIHNvY2tldCBvYmplY3QgdHlwZS4gSXQgaXMgdGhlCkBAIC03MDYsNiArODQ1LDEwOSBAQAogICAgdG8gemVyby4gKFRoZSBmb3JtYXQgb2YgKmFkZHJlc3MqIGRlcGVuZHMgb24gdGhlIGFkZHJlc3MgZmFtaWx5IC0tLSBzZWUgYWJvdmUuKQogCiAKKy4uIG1ldGhvZDo6IHNvY2tldC5yZWN2bXNnKGJ1ZnNpemVbLCBhbmNidWZzaXplWywgZmxhZ3NdXSkKKworICAgUmVjZWl2ZSBub3JtYWwgZGF0YSAodXAgdG8gKmJ1ZnNpemUqIGJ5dGVzKSBhbmQgYW5jaWxsYXJ5IGRhdGEgZnJvbQorICAgdGhlIHNvY2tldC4gIFRoZSAqYW5jYnVmc2l6ZSogYXJndW1lbnQgc2V0cyB0aGUgc2l6ZSBpbiBieXRlcyBvZgorICAgdGhlIGludGVybmFsIGJ1ZmZlciB1c2VkIHRvIHJlY2VpdmUgdGhlIGFuY2lsbGFyeSBkYXRhOyBpdCBkZWZhdWx0cworICAgdG8gMCwgbWVhbmluZyB0aGF0IG5vIGFuY2lsbGFyeSBkYXRhIHdpbGwgYmUgcmVjZWl2ZWQuICBBcHByb3ByaWF0ZQorICAgYnVmZmVyIHNpemVzIGZvciBhbmNpbGxhcnkgZGF0YSBjYW4gYmUgY2FsY3VsYXRlZCB1c2luZworICAgOmZ1bmM6YENNU0dfU1BBQ0VgIG9yIDpmdW5jOmBDTVNHX0xFTmAsIGFuZCBpdGVtcyB3aGljaCBkbyBub3QgZml0CisgICBpbnRvIHRoZSBidWZmZXIgbWlnaHQgYmUgdHJ1bmNhdGVkIG9yIGRpc2NhcmRlZC4gIFRoZSAqZmxhZ3MqCisgICBhcmd1bWVudCBkZWZhdWx0cyB0byAwIGFuZCBoYXMgdGhlIHNhbWUgbWVhbmluZyBhcyBmb3IKKyAgIDptZXRoOmByZWN2YC4KKworICAgVGhlIHJldHVybiB2YWx1ZSBpcyBhIDQtdHVwbGU6IGBgKGRhdGEsIGFuY2RhdGEsIG1zZ19mbGFncywKKyAgIGFkZHJlc3MpYGAuICBUaGUgKmRhdGEqIGl0ZW0gaXMgYSA6Y2xhc3M6YGJ5dGVzYCBvYmplY3QgaG9sZGluZyB0aGUKKyAgIG5vbi1hbmNpbGxhcnkgZGF0YSByZWNlaXZlZC4gIFRoZSAqYW5jZGF0YSogaXRlbSBpcyBhIGxpc3Qgb2YgemVybworICAgb3IgbW9yZSB0dXBsZXMgYGAoY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEpYGAgcmVwcmVzZW50aW5nCisgICB0aGUgYW5jaWxsYXJ5IGRhdGEgKGNvbnRyb2wgbWVzc2FnZXMpIHJlY2VpdmVkOiAqY21zZ19sZXZlbCogYW5kCisgICAqY21zZ190eXBlKiBhcmUgaW50ZWdlcnMgc3BlY2lmeWluZyB0aGUgcHJvdG9jb2wgbGV2ZWwgYW5kCisgICBwcm90b2NvbC1zcGVjaWZpYyB0eXBlIHJlc3BlY3RpdmVseSwgYW5kICpjbXNnX2RhdGEqIGlzIGEKKyAgIDpjbGFzczpgYnl0ZXNgIG9iamVjdCBob2xkaW5nIHRoZSBhc3NvY2lhdGVkIGRhdGEuICBUaGUgKm1zZ19mbGFncyoKKyAgIGl0ZW0gaXMgdGhlIGJpdHdpc2UgT1Igb2YgdmFyaW91cyBmbGFncyBpbmRpY2F0aW5nIGNvbmRpdGlvbnMgb24KKyAgIHRoZSByZWNlaXZlZCBtZXNzYWdlOyBzZWUgeW91ciBzeXN0ZW0gZG9jdW1lbnRhdGlvbiBmb3IgZGV0YWlscy4KKyAgIElmIHRoZSByZWNlaXZpbmcgc29ja2V0IGlzIHVuY29ubmVjdGVkLCAqYWRkcmVzcyogaXMgdGhlIGFkZHJlc3Mgb2YKKyAgIHRoZSBzZW5kaW5nIHNvY2tldCwgaWYgYXZhaWxhYmxlOyBvdGhlcndpc2UsIGl0cyB2YWx1ZSBpcworICAgdW5zcGVjaWZpZWQuCisKKyAgIE9uIHNvbWUgc3lzdGVtcywgOm1ldGg6YHNlbmRtc2dgIGFuZCA6bWV0aDpgcmVjdm1zZ2AgY2FuIGJlIHVzZWQgdG8KKyAgIHBhc3MgZmlsZSBkZXNjcmlwdG9ycyBiZXR3ZWVuIHByb2Nlc3NlcyBvdmVyIGFuIDpjb25zdDpgQUZfVU5JWGAKKyAgIHNvY2tldC4gIFdoZW4gdGhpcyBmYWNpbGl0eSBpcyB1c2VkIChpdCBpcyBvZnRlbiByZXN0cmljdGVkIHRvCisgICA6Y29uc3Q6YFNPQ0tfU1RSRUFNYCBzb2NrZXRzKSwgOm1ldGg6YHJlY3Ztc2dgIHdpbGwgcmV0dXJuLCBpbiBpdHMKKyAgIGFuY2lsbGFyeSBkYXRhLCBpdGVtcyBvZiB0aGUgZm9ybSBgYChzb2NrZXQuU09MX1NPQ0tFVCwKKyAgIHNvY2tldC5TQ01fUklHSFRTLCBmZHMpYGAsIHdoZXJlICpmZHMqIGlzIGEgOmNsYXNzOmBieXRlc2Agb2JqZWN0CisgICByZXByZXNlbnRpbmcgdGhlIG5ldyBmaWxlIGRlc2NyaXB0b3JzIGFzIGEgYmluYXJ5IGFycmF5IG9mIHRoZQorICAgbmF0aXZlIEMgOmM6dHlwZTpgaW50YCB0eXBlLiAgSWYgOm1ldGg6YHJlY3Ztc2dgIHJhaXNlcyBhbgorICAgZXhjZXB0aW9uIGFmdGVyIHRoZSBzeXN0ZW0gY2FsbCByZXR1cm5zLCBpdCB3aWxsIGZpcnN0IGF0dGVtcHQgdG8KKyAgIGNsb3NlIGFueSBmaWxlIGRlc2NyaXB0b3JzIHJlY2VpdmVkIHZpYSB0aGlzIG1lY2hhbmlzbS4KKworICAgU29tZSBzeXN0ZW1zIGRvIG5vdCBpbmRpY2F0ZSB0aGUgdHJ1bmNhdGVkIGxlbmd0aCBvZiBhbmNpbGxhcnkgZGF0YQorICAgaXRlbXMgd2hpY2ggaGF2ZSBiZWVuIG9ubHkgcGFydGlhbGx5IHJlY2VpdmVkLiAgSWYgYW4gaXRlbSBhcHBlYXJzCisgICB0byBleHRlbmQgYmV5b25kIHRoZSBlbmQgb2YgdGhlIGJ1ZmZlciwgOm1ldGg6YHJlY3Ztc2dgIHdpbGwgaXNzdWUKKyAgIGEgOmV4YzpgUnVudGltZVdhcm5pbmdgLCBhbmQgd2lsbCByZXR1cm4gdGhlIHBhcnQgb2YgaXQgd2hpY2ggaXMKKyAgIGluc2lkZSB0aGUgYnVmZmVyIHByb3ZpZGVkIGl0IGhhcyBub3QgYmVlbiB0cnVuY2F0ZWQgYmVmb3JlIHRoZQorICAgc3RhcnQgb2YgaXRzIGFzc29jaWF0ZWQgZGF0YS4KKworICAgT24gc3lzdGVtcyB3aGljaCBzdXBwb3J0IHRoZSA6Y29uc3Q6YFNDTV9SSUdIVFNgIG1lY2hhbmlzbSwgdGhlCisgICBmb2xsb3dpbmcgZnVuY3Rpb24gd2lsbCByZWNlaXZlIHVwIHRvICptYXhmZHMqIGZpbGUgZGVzY3JpcHRvcnMsCisgICByZXR1cm5pbmcgdGhlIG1lc3NhZ2UgZGF0YSBhbmQgYSBsaXN0IGNvbnRhaW5pbmcgdGhlIGRlc2NyaXB0b3JzCisgICAod2hpbGUgaWdub3JpbmcgdW5leHBlY3RlZCBjb25kaXRpb25zIHN1Y2ggYXMgdW5yZWxhdGVkIGNvbnRyb2wKKyAgIG1lc3NhZ2VzIGJlaW5nIHJlY2VpdmVkKS4gIFNlZSBhbHNvIDptZXRoOmBzZW5kbXNnYC4gOjoKKworICAgICAgaW1wb3J0IHNvY2tldCwgYXJyYXkKKworICAgICAgZGVmIHJlY3ZfZmRzKHNvY2ssIG1zZ2xlbiwgbWF4ZmRzKToKKyAgICAgICAgICBmZHMgPSBhcnJheS5hcnJheSgiaSIpICAgIyBBcnJheSBvZiBpbnRzCisgICAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNvY2sucmVjdm1zZyhtc2dsZW4sIHNvY2tldC5DTVNHX0xFTihtYXhmZHMgKiBmZHMuaXRlbXNpemUpKQorICAgICAgICAgIGZvciBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSBpbiBhbmNkYXRhOgorICAgICAgICAgICAgICBpZiAoY21zZ19sZXZlbCA9PSBzb2NrZXQuU09MX1NPQ0tFVCBhbmQgY21zZ190eXBlID09IHNvY2tldC5TQ01fUklHSFRTKToKKyAgICAgICAgICAgICAgICAgICMgQXBwZW5kIGRhdGEsIGlnbm9yaW5nIGFueSB0cnVuY2F0ZWQgaW50ZWdlcnMgYXQgdGhlIGVuZC4KKyAgICAgICAgICAgICAgICAgIGZkcy5mcm9tc3RyaW5nKGNtc2dfZGF0YVs6bGVuKGNtc2dfZGF0YSkgLSAobGVuKGNtc2dfZGF0YSkgJSBmZHMuaXRlbXNpemUpXSkKKyAgICAgICAgICByZXR1cm4gbXNnLCBsaXN0KGZkcykKKworICAgQXZhaWxhYmlsaXR5OiBtb3N0IFVuaXggcGxhdGZvcm1zLCBwb3NzaWJseSBvdGhlcnMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKKy4uIG1ldGhvZDo6IHNvY2tldC5yZWN2bXNnX2ludG8oYnVmZmVyc1ssIGFuY2J1ZnNpemVbLCBmbGFnc11dKQorCisgICBSZWNlaXZlIG5vcm1hbCBkYXRhIGFuZCBhbmNpbGxhcnkgZGF0YSBmcm9tIHRoZSBzb2NrZXQsIGJlaGF2aW5nIGFzCisgICA6bWV0aDpgcmVjdm1zZ2Agd291bGQsIGJ1dCBzY2F0dGVyIHRoZSBub24tYW5jaWxsYXJ5IGRhdGEgaW50byBhCisgICBzZXJpZXMgb2YgYnVmZmVycyBpbnN0ZWFkIG9mIHJldHVybmluZyBhIG5ldyBieXRlcyBvYmplY3QuICBUaGUKKyAgICpidWZmZXJzKiBhcmd1bWVudCBtdXN0IGJlIGFuIGl0ZXJhYmxlIG9mIG9iamVjdHMgdGhhdCBleHBvcnQKKyAgIHdyaXRhYmxlIGJ1ZmZlcnMgKGUuZy4gOmNsYXNzOmBieXRlYXJyYXlgIG9iamVjdHMpOyB0aGVzZSB3aWxsIGJlCisgICBmaWxsZWQgd2l0aCBzdWNjZXNzaXZlIGNodW5rcyBvZiB0aGUgbm9uLWFuY2lsbGFyeSBkYXRhIHVudGlsIGl0CisgICBoYXMgYWxsIGJlZW4gd3JpdHRlbiBvciB0aGVyZSBhcmUgbm8gbW9yZSBidWZmZXJzLiAgVGhlIG9wZXJhdGluZworICAgc3lzdGVtIG1heSBzZXQgYSBsaW1pdCAoOmZ1bmM6YH5vcy5zeXNjb25mYCB2YWx1ZSBgYFNDX0lPVl9NQVhgYCkKKyAgIG9uIHRoZSBudW1iZXIgb2YgYnVmZmVycyB0aGF0IGNhbiBiZSB1c2VkLiAgVGhlICphbmNidWZzaXplKiBhbmQKKyAgICpmbGFncyogYXJndW1lbnRzIGhhdmUgdGhlIHNhbWUgbWVhbmluZyBhcyBmb3IgOm1ldGg6YHJlY3Ztc2dgLgorCisgICBUaGUgcmV0dXJuIHZhbHVlIGlzIGEgNC10dXBsZTogYGAobmJ5dGVzLCBhbmNkYXRhLCBtc2dfZmxhZ3MsCisgICBhZGRyZXNzKWBgLCB3aGVyZSAqbmJ5dGVzKiBpcyB0aGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIG9mCisgICBub24tYW5jaWxsYXJ5IGRhdGEgd3JpdHRlbiBpbnRvIHRoZSBidWZmZXJzLCBhbmQgKmFuY2RhdGEqLAorICAgKm1zZ19mbGFncyogYW5kICphZGRyZXNzKiBhcmUgdGhlIHNhbWUgYXMgZm9yIDptZXRoOmByZWN2bXNnYC4KKworICAgRXhhbXBsZTo6CisKKyAgICAgID4+PiBpbXBvcnQgc29ja2V0CisgICAgICA+Pj4gczEsIHMyID0gc29ja2V0LnNvY2tldHBhaXIoKQorICAgICAgPj4+IGIxID0gYnl0ZWFycmF5KGInLS0tLScpCisgICAgICA+Pj4gYjIgPSBieXRlYXJyYXkoYicwMTIzNDU2Nzg5JykKKyAgICAgID4+PiBiMyA9IGJ5dGVhcnJheShiJy0tLS0tLS0tLS0tLS0tJykKKyAgICAgID4+PiBzMS5zZW5kKGInTWFyeSBoYWQgYSBsaXR0bGUgbGFtYicpCisgICAgICAyMgorICAgICAgPj4+IHMyLnJlY3Ztc2dfaW50byhbYjEsIG1lbW9yeXZpZXcoYjIpWzI6OV0sIGIzXSkKKyAgICAgICgyMiwgW10sIDAsIE5vbmUpCisgICAgICA+Pj4gW2IxLCBiMiwgYjNdCisgICAgICBbYnl0ZWFycmF5KGInTWFyeScpLCBieXRlYXJyYXkoYicwMSBoYWQgYSA5JyksIGJ5dGVhcnJheShiJ2xpdHRsZSBsYW1iLS0tJyldCisKKyAgIEF2YWlsYWJpbGl0eTogbW9zdCBVbml4IHBsYXRmb3JtcywgcG9zc2libHkgb3RoZXJzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBtZXRob2Q6OiBzb2NrZXQucmVjdmZyb21faW50byhidWZmZXJbLCBuYnl0ZXNbLCBmbGFnc11dKQogCiAgICBSZWNlaXZlIGRhdGEgZnJvbSB0aGUgc29ja2V0LCB3cml0aW5nIGl0IGludG8gKmJ1ZmZlciogaW5zdGVhZCBvZiBjcmVhdGluZyBhCkBAIC03NTMsNiArOTk1LDQxIEBACiAgICBhYm92ZS4pCiAKIAorLi4gbWV0aG9kOjogc29ja2V0LnNlbmRtc2coYnVmZmVyc1ssIGFuY2RhdGFbLCBmbGFnc1ssIGFkZHJlc3NdXV0pCisKKyAgIFNlbmQgbm9ybWFsIGFuZCBhbmNpbGxhcnkgZGF0YSB0byB0aGUgc29ja2V0LCBnYXRoZXJpbmcgdGhlCisgICBub24tYW5jaWxsYXJ5IGRhdGEgZnJvbSBhIHNlcmllcyBvZiBidWZmZXJzIGFuZCBjb25jYXRlbmF0aW5nIGl0CisgICBpbnRvIGEgc2luZ2xlIG1lc3NhZ2UuICBUaGUgKmJ1ZmZlcnMqIGFyZ3VtZW50IHNwZWNpZmllcyB0aGUKKyAgIG5vbi1hbmNpbGxhcnkgZGF0YSBhcyBhbiBpdGVyYWJsZSBvZiBidWZmZXItY29tcGF0aWJsZSBvYmplY3RzCisgICAoZS5nLiA6Y2xhc3M6YGJ5dGVzYCBvYmplY3RzKTsgdGhlIG9wZXJhdGluZyBzeXN0ZW0gbWF5IHNldCBhIGxpbWl0CisgICAoOmZ1bmM6YH5vcy5zeXNjb25mYCB2YWx1ZSBgYFNDX0lPVl9NQVhgYCkgb24gdGhlIG51bWJlciBvZiBidWZmZXJzCisgICB0aGF0IGNhbiBiZSB1c2VkLiAgVGhlICphbmNkYXRhKiBhcmd1bWVudCBzcGVjaWZpZXMgdGhlIGFuY2lsbGFyeQorICAgZGF0YSAoY29udHJvbCBtZXNzYWdlcykgYXMgYW4gaXRlcmFibGUgb2YgemVybyBvciBtb3JlIHR1cGxlcworICAgYGAoY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEpYGAsIHdoZXJlICpjbXNnX2xldmVsKiBhbmQKKyAgICpjbXNnX3R5cGUqIGFyZSBpbnRlZ2VycyBzcGVjaWZ5aW5nIHRoZSBwcm90b2NvbCBsZXZlbCBhbmQKKyAgIHByb3RvY29sLXNwZWNpZmljIHR5cGUgcmVzcGVjdGl2ZWx5LCBhbmQgKmNtc2dfZGF0YSogaXMgYQorICAgYnVmZmVyLWNvbXBhdGlibGUgb2JqZWN0IGhvbGRpbmcgdGhlIGFzc29jaWF0ZWQgZGF0YS4gIE5vdGUgdGhhdAorICAgc29tZSBzeXN0ZW1zIChpbiBwYXJ0aWN1bGFyLCBzeXN0ZW1zIHdpdGhvdXQgOmZ1bmM6YENNU0dfU1BBQ0VgKQorICAgbWlnaHQgc3VwcG9ydCBzZW5kaW5nIG9ubHkgb25lIGNvbnRyb2wgbWVzc2FnZSBwZXIgY2FsbC4gIFRoZQorICAgKmZsYWdzKiBhcmd1bWVudCBkZWZhdWx0cyB0byAwIGFuZCBoYXMgdGhlIHNhbWUgbWVhbmluZyBhcyBmb3IKKyAgIDptZXRoOmBzZW5kYC4gIElmICphZGRyZXNzKiBpcyBzdXBwbGllZCBhbmQgbm90IGBgTm9uZWBgLCBpdCBzZXRzIGEKKyAgIGRlc3RpbmF0aW9uIGFkZHJlc3MgZm9yIHRoZSBtZXNzYWdlLiAgVGhlIHJldHVybiB2YWx1ZSBpcyB0aGUKKyAgIG51bWJlciBvZiBieXRlcyBvZiBub24tYW5jaWxsYXJ5IGRhdGEgc2VudC4KKworICAgVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBzZW5kcyB0aGUgbGlzdCBvZiBmaWxlIGRlc2NyaXB0b3JzICpmZHMqCisgICBvdmVyIGFuIDpjb25zdDpgQUZfVU5JWGAgc29ja2V0LCBvbiBzeXN0ZW1zIHdoaWNoIHN1cHBvcnQgdGhlCisgICA6Y29uc3Q6YFNDTV9SSUdIVFNgIG1lY2hhbmlzbS4gIFNlZSBhbHNvIDptZXRoOmByZWN2bXNnYC4gOjoKKworICAgICAgaW1wb3J0IHNvY2tldCwgYXJyYXkKKworICAgICAgZGVmIHNlbmRfZmRzKHNvY2ssIG1zZywgZmRzKToKKyAgICAgICAgICByZXR1cm4gc29jay5zZW5kbXNnKFttc2ddLCBbKHNvY2tldC5TT0xfU09DS0VULCBzb2NrZXQuU0NNX1JJR0hUUywgYXJyYXkuYXJyYXkoImkiLCBmZHMpKV0pCisKKyAgIEF2YWlsYWJpbGl0eTogbW9zdCBVbml4IHBsYXRmb3JtcywgcG9zc2libHkgb3RoZXJzLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBtZXRob2Q6OiBzb2NrZXQuc2V0YmxvY2tpbmcoZmxhZykKIAogICAgU2V0IGJsb2NraW5nIG9yIG5vbi1ibG9ja2luZyBtb2RlIG9mIHRoZSBzb2NrZXQ6IGlmICpmbGFnKiBpcyBmYWxzZSwgdGhlCkBAIC03OTQsOSArMTA3MSw3IEBACiAgICBTaHV0IGRvd24gb25lIG9yIGJvdGggaGFsdmVzIG9mIHRoZSBjb25uZWN0aW9uLiAgSWYgKmhvdyogaXMgOmNvbnN0OmBTSFVUX1JEYCwKICAgIGZ1cnRoZXIgcmVjZWl2ZXMgYXJlIGRpc2FsbG93ZWQuICBJZiAqaG93KiBpcyA6Y29uc3Q6YFNIVVRfV1JgLCBmdXJ0aGVyIHNlbmRzCiAgICBhcmUgZGlzYWxsb3dlZC4gIElmICpob3cqIGlzIDpjb25zdDpgU0hVVF9SRFdSYCwgZnVydGhlciBzZW5kcyBhbmQgcmVjZWl2ZXMgYXJlCi0gICBkaXNhbGxvd2VkLiAgRGVwZW5kaW5nIG9uIHRoZSBwbGF0Zm9ybSwgc2h1dHRpbmcgZG93biBvbmUgaGFsZiBvZiB0aGUgY29ubmVjdGlvbgotICAgY2FuIGFsc28gY2xvc2UgdGhlIG9wcG9zaXRlIGhhbGYgKGUuZy4gb24gTWFjIE9TIFgsIGBgc2h1dGRvd24oU0hVVF9XUilgYCBkb2VzCi0gICBub3QgYWxsb3cgZnVydGhlciByZWFkcyBvbiB0aGUgb3RoZXIgZW5kIG9mIHRoZSBjb25uZWN0aW9uKS4KKyAgIGRpc2FsbG93ZWQuCiAKIE5vdGUgdGhhdCB0aGVyZSBhcmUgbm8gbWV0aG9kcyA6bWV0aDpgcmVhZGAgb3IgOm1ldGg6YHdyaXRlYDsgdXNlCiA6bWV0aDpgfnNvY2tldC5yZWN2YCBhbmQgOm1ldGg6YH5zb2NrZXQuc2VuZGAgd2l0aG91dCAqZmxhZ3MqIGFyZ3VtZW50IGluc3RlYWQuCkBAIC05NDEsMTMgKzEyMTYsMTMgQEAKICAgICAgICBhZiwgc29ja3R5cGUsIHByb3RvLCBjYW5vbm5hbWUsIHNhID0gcmVzCiAgICAgICAgdHJ5OgogICAgICAgICAgICBzID0gc29ja2V0LnNvY2tldChhZiwgc29ja3R5cGUsIHByb3RvKQotICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3IgYXMgbXNnOgorICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIG1zZzoKICAgICAgICAgICAgcyA9IE5vbmUKICAgICAgICAgICAgY29udGludWUKICAgICAgICB0cnk6CiAgICAgICAgICAgIHMuYmluZChzYSkKICAgICAgICAgICAgcy5saXN0ZW4oMSkKLSAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIG1zZzoKKyAgICAgICBleGNlcHQgT1NFcnJvciBhcyBtc2c6CiAgICAgICAgICAgIHMuY2xvc2UoKQogICAgICAgICAgICBzID0gTm9uZQogICAgICAgICAgICBjb250aW51ZQpAQCAtOTc2LDEyICsxMjUxLDEyIEBACiAgICAgICAgYWYsIHNvY2t0eXBlLCBwcm90bywgY2Fub25uYW1lLCBzYSA9IHJlcwogICAgICAgIHRyeToKICAgICAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoYWYsIHNvY2t0eXBlLCBwcm90bykKLSAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIG1zZzoKKyAgICAgICBleGNlcHQgT1NFcnJvciBhcyBtc2c6CiAgICAgICAgICAgIHMgPSBOb25lCiAgICAgICAgICAgIGNvbnRpbnVlCiAgICAgICAgdHJ5OgogICAgICAgICAgICBzLmNvbm5lY3Qoc2EpCi0gICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBtc2c6CisgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgbXNnOgogICAgICAgICAgICBzLmNsb3NlKCkKICAgICAgICAgICAgcyA9IE5vbmUKICAgICAgICAgICAgY29udGludWUKQEAgLTk5NSw3ICsxMjcwLDcgQEAKICAgIHByaW50KCdSZWNlaXZlZCcsIHJlcHIoZGF0YSkpCiAKIAotVGhlIGxhc3QgZXhhbXBsZSBzaG93cyBob3cgdG8gd3JpdGUgYSB2ZXJ5IHNpbXBsZSBuZXR3b3JrIHNuaWZmZXIgd2l0aCByYXcKK1RoZSBuZXh0IGV4YW1wbGUgc2hvd3MgaG93IHRvIHdyaXRlIGEgdmVyeSBzaW1wbGUgbmV0d29yayBzbmlmZmVyIHdpdGggcmF3CiBzb2NrZXRzIG9uIFdpbmRvd3MuIFRoZSBleGFtcGxlIHJlcXVpcmVzIGFkbWluaXN0cmF0b3IgcHJpdmlsZWdlcyB0byBtb2RpZnkKIHRoZSBpbnRlcmZhY2U6OgogCkBAIC0xMDIwLDExICsxMjk1LDUxIEBACiAgICAjIGRpc2FibGVkIHByb21pc2N1b3VzIG1vZGUKICAgIHMuaW9jdGwoc29ja2V0LlNJT19SQ1ZBTEwsIHNvY2tldC5SQ1ZBTExfT0ZGKQogCitUaGUgbGFzdCBleGFtcGxlIHNob3dzIGhvdyB0byB1c2UgdGhlIHNvY2tldCBpbnRlcmZhY2UgdG8gY29tbXVuaWNhdGUgdG8gYSBDQU4KK25ldHdvcmsuIFRoaXMgZXhhbXBsZSBtaWdodCByZXF1aXJlIHNwZWNpYWwgcHJpdmlsZWRnZTo6CisKKyAgIGltcG9ydCBzb2NrZXQKKyAgIGltcG9ydCBzdHJ1Y3QKKworCisgICAjIENBTiBmcmFtZSBwYWNraW5nL3VucGFja2luZyAoc2VlIGBzdHJ1Y3QgY2FuX2ZyYW1lYCBpbiA8bGludXgvY2FuLmg+KQorCisgICBjYW5fZnJhbWVfZm10ID0gIj1JQjN4OHMiCisgICBjYW5fZnJhbWVfc2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZShjYW5fZnJhbWVfZm10KQorCisgICBkZWYgYnVpbGRfY2FuX2ZyYW1lKGNhbl9pZCwgZGF0YSk6CisgICAgICAgY2FuX2RsYyA9IGxlbihkYXRhKQorICAgICAgIGRhdGEgPSBkYXRhLmxqdXN0KDgsIGInXHgwMCcpCisgICAgICAgcmV0dXJuIHN0cnVjdC5wYWNrKGNhbl9mcmFtZV9mbXQsIGNhbl9pZCwgY2FuX2RsYywgZGF0YSkKKworICAgZGVmIGRpc3NlY3RfY2FuX2ZyYW1lKGZyYW1lKToKKyAgICAgICBjYW5faWQsIGNhbl9kbGMsIGRhdGEgPSBzdHJ1Y3QudW5wYWNrKGNhbl9mcmFtZV9mbXQsIGZyYW1lKQorICAgICAgIHJldHVybiAoY2FuX2lkLCBjYW5fZGxjLCBkYXRhWzpjYW5fZGxjXSkKKworCisgICAjIGNyZWF0ZSBhIHJhdyBzb2NrZXQgYW5kIGJpbmQgaXQgdG8gdGhlIGB2Y2FuMGAgaW50ZXJmYWNlCisgICBzID0gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfQ0FOLCBzb2NrZXQuU09DS19SQVcsIHNvY2tldC5DQU5fUkFXKQorICAgcy5iaW5kKCgndmNhbjAnLCkpCisKKyAgIHdoaWxlIFRydWU6CisgICAgICAgY2YsIGFkZHIgPSBzLnJlY3Zmcm9tKGNhbl9mcmFtZV9zaXplKQorCisgICAgICAgcHJpbnQoJ1JlY2VpdmVkOiBjYW5faWQ9JXgsIGNhbl9kbGM9JXgsIGRhdGE9JXMnICUgZGlzc2VjdF9jYW5fZnJhbWUoY2YpKQorCisgICAgICAgdHJ5OgorICAgICAgICAgICBzLnNlbmQoY2YpCisgICAgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgICAgIHByaW50KCdFcnJvciBzZW5kaW5nIENBTiBmcmFtZScpCisKKyAgICAgICB0cnk6CisgICAgICAgICAgIHMuc2VuZChidWlsZF9jYW5fZnJhbWUoMHgwMSwgYidceDAxXHgwMlx4MDMnKSkKKyAgICAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgICAgcHJpbnQoJ0Vycm9yIHNlbmRpbmcgQ0FOIGZyYW1lJykKIAogUnVubmluZyBhbiBleGFtcGxlIHNldmVyYWwgdGltZXMgd2l0aCB0b28gc21hbGwgZGVsYXkgYmV0d2VlbiBleGVjdXRpb25zLCBjb3VsZAogbGVhZCB0byB0aGlzIGVycm9yOjoKIAotICAgc29ja2V0LmVycm9yOiBbRXJybm8gOThdIEFkZHJlc3MgYWxyZWFkeSBpbiB1c2UKKyAgIE9TRXJyb3I6IFtFcnJubyA5OF0gQWRkcmVzcyBhbHJlYWR5IGluIHVzZQogCiBUaGlzIGlzIGJlY2F1c2UgdGhlIHByZXZpb3VzIGV4ZWN1dGlvbiBoYXMgbGVmdCB0aGUgc29ja2V0IGluIGEgYGBUSU1FX1dBSVRgYAogc3RhdGUsIGFuZCBjYW4ndCBiZSBpbW1lZGlhdGVseSByZXVzZWQuCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9zb2NrZXRzZXJ2ZXIucnN0IGIvRG9jL2xpYnJhcnkvc29ja2V0c2VydmVyLnJzdAppbmRleCAzNGJjY2UwLi5jN2JjMGQ1IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9zb2NrZXRzZXJ2ZXIucnN0CisrKyBiL0RvYy9saWJyYXJ5L3NvY2tldHNlcnZlci5yc3QKQEAgLTE1NCw5ICsxNTQsMjEgQEAKIC4uIG1ldGhvZDo6IEJhc2VTZXJ2ZXIuc2VydmVfZm9yZXZlcihwb2xsX2ludGVydmFsPTAuNSkKIAogICAgSGFuZGxlIHJlcXVlc3RzIHVudGlsIGFuIGV4cGxpY2l0IDptZXRoOmBzaHV0ZG93bmAgcmVxdWVzdC4KLSAgIFBvbGwgZm9yIHNodXRkb3duIGV2ZXJ5ICpwb2xsX2ludGVydmFsKiBzZWNvbmRzLiBJZ25vcmVzIDphdHRyOmBzZWxmLnRpbWVvdXRgLgotICAgSWYgeW91IG5lZWQgdG8gZG8gcGVyaW9kaWMgdGFza3MsIGRvIHRoZW0gaW4gYW5vdGhlciB0aHJlYWQuCisgICBQb2xsIGZvciBzaHV0ZG93biBldmVyeSAqcG9sbF9pbnRlcnZhbCogc2Vjb25kcy4gSWdub3JlcyA6YXR0cjpgc2VsZi50aW1lb3V0YC4gIEl0IGFsc28gY2FsbHMKKyAgIDptZXRoOmBzZXJ2aWNlX2FjdGlvbnNgIHdoaWNoIG1heSBiZSB1c2VkIGJ5IGEgc3ViY2xhc3Mgb3IgTWl4aW4gdG8gcHJvdmlkZQorICAgdmFyaW91cyBjbGVhbnVwIGFjdGlvbnMuICBGb3IgZS5nLiBGb3JraW5nTWl4aW4gY2xhc3MgdXNlcworICAgOm1ldGg6YHNlcnZpY2VfYWN0aW9uc2AgdG8gY2xlYW51cCB0aGUgem9tYmllIGNoaWxkIHByb2Nlc3Nlcy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICBBZGRlZCBzZXJ2aWNlX2FjdGlvbnMgY2FsbCB0byB0aGUgc2VydmVfZm9yZXZlciBtZXRob2QuCisKKworLi4gbWV0aG9kOjogQmFzZVNlcnZlci5zZXJ2aWNlX2FjdGlvbnMoKQorCisgICBUaGlzIGlzIGNhbGxlZCBieSB0aGUgc2VydmVfZm9yZXZlciBsb29wLiBUaGlzIG1ldGhvZCBpcyBjYW4gYmUgb3ZlcnJpZGRlbgorICAgYnkgTWl4aW4ncyB0byBhZGQgY2xlYW51cCBvciBzZXJ2aWNlIHNwZWNpZmljIGFjdGlvbnMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiAuLiBtZXRob2Q6OiBCYXNlU2VydmVyLnNodXRkb3duKCkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvc3FsaXRlMy5yc3QgYi9Eb2MvbGlicmFyeS9zcWxpdGUzLnJzdAppbmRleCA3ODZiYjA0Li5mM2FjZGM1IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9zcWxpdGUzLnJzdAorKysgYi9Eb2MvbGlicmFyeS9zcWxpdGUzLnJzdApAQCAtMzY5LDYgKzM2OSwyMiBAQAogICAgbWV0aG9kIHdpdGggOmNvbnN0OmBOb25lYCBmb3IgKmhhbmRsZXIqLgogCiAKKy4uIG1ldGhvZDo6IENvbm5lY3Rpb24uc2V0X3RyYWNlX2NhbGxiYWNrKHRyYWNlX2NhbGxiYWNrKQorCisgICBSZWdpc3RlcnMgKnRyYWNlX2NhbGxiYWNrKiB0byBiZSBjYWxsZWQgZm9yIGVhY2ggU1FMIHN0YXRlbWVudCB0aGF0IGlzCisgICBhY3R1YWxseSBleGVjdXRlZCBieSB0aGUgU1FMaXRlIGJhY2tlbmQuCisKKyAgIFRoZSBvbmx5IGFyZ3VtZW50IHBhc3NlZCB0byB0aGUgY2FsbGJhY2sgaXMgdGhlIHN0YXRlbWVudCAoYXMgc3RyaW5nKSB0aGF0CisgICBpcyBiZWluZyBleGVjdXRlZC4gVGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgY2FsbGJhY2sgaXMgaWdub3JlZC4gTm90ZSB0aGF0CisgICB0aGUgYmFja2VuZCBkb2VzIG5vdCBvbmx5IHJ1biBzdGF0ZW1lbnRzIHBhc3NlZCB0byB0aGUgOm1ldGg6YEN1cnNvci5leGVjdXRlYAorICAgbWV0aG9kcy4gIE90aGVyIHNvdXJjZXMgaW5jbHVkZSB0aGUgdHJhbnNhY3Rpb24gbWFuYWdlbWVudCBvZiB0aGUgUHl0aG9uCisgICBtb2R1bGUgYW5kIHRoZSBleGVjdXRpb24gb2YgdHJpZ2dlcnMgZGVmaW5lZCBpbiB0aGUgY3VycmVudCBkYXRhYmFzZS4KKworICAgUGFzc2luZyA6Y29uc3Q6YE5vbmVgIGFzICp0cmFjZV9jYWxsYmFjayogd2lsbCBkaXNhYmxlIHRoZSB0cmFjZSBjYWxsYmFjay4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gbWV0aG9kOjogQ29ubmVjdGlvbi5lbmFibGVfbG9hZF9leHRlbnNpb24oZW5hYmxlZCkKIAogICAgVGhpcyByb3V0aW5lIGFsbG93cy9kaXNhbGxvd3MgdGhlIFNRTGl0ZSBlbmdpbmUgdG8gbG9hZCBTUUxpdGUgZXh0ZW5zaW9ucwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvc3NsLnJzdCBiL0RvYy9saWJyYXJ5L3NzbC5yc3QKaW5kZXggOGNkMDdkNy4uNzY5MTk5NiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvc3NsLnJzdAorKysgYi9Eb2MvbGlicmFyeS9zc2wucnN0CkBAIC01Myw5ICs1Myw1MyBAQAogICAgKGN1cnJlbnRseSBwcm92aWRlZCBieSB0aGUgT3BlblNTTCBsaWJyYXJ5KS4gIFRoaXMgc2lnbmlmaWVzIHNvbWUKICAgIHByb2JsZW0gaW4gdGhlIGhpZ2hlci1sZXZlbCBlbmNyeXB0aW9uIGFuZCBhdXRoZW50aWNhdGlvbiBsYXllciB0aGF0J3MKICAgIHN1cGVyaW1wb3NlZCBvbiB0aGUgdW5kZXJseWluZyBuZXR3b3JrIGNvbm5lY3Rpb24uICBUaGlzIGVycm9yCi0gICBpcyBhIHN1YnR5cGUgb2YgOmV4Yzpgc29ja2V0LmVycm9yYCwgd2hpY2ggaW4gdHVybiBpcyBhIHN1YnR5cGUgb2YKLSAgIDpleGM6YElPRXJyb3JgLiAgVGhlIGVycm9yIGNvZGUgYW5kIG1lc3NhZ2Ugb2YgOmV4YzpgU1NMRXJyb3JgIGluc3RhbmNlcwotICAgYXJlIHByb3ZpZGVkIGJ5IHRoZSBPcGVuU1NMIGxpYnJhcnkuCisgICBpcyBhIHN1YnR5cGUgb2YgOmV4YzpgT1NFcnJvcmAuICBUaGUgZXJyb3IgY29kZSBhbmQgbWVzc2FnZSBvZgorICAgOmV4YzpgU1NMRXJyb3JgIGluc3RhbmNlcyBhcmUgcHJvdmlkZWQgYnkgdGhlIE9wZW5TU0wgbGlicmFyeS4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIDpleGM6YFNTTEVycm9yYCB1c2VkIHRvIGJlIGEgc3VidHlwZSBvZiA6ZXhjOmBzb2NrZXQuZXJyb3JgLgorCisuLiBleGNlcHRpb246OiBTU0xaZXJvUmV0dXJuRXJyb3IKKworICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBTU0xFcnJvcmAgcmFpc2VkIHdoZW4gdHJ5aW5nIHRvIHJlYWQgb3Igd3JpdGUgYW5kCisgICB0aGUgU1NMIGNvbm5lY3Rpb24gaGFzIGJlZW4gY2xvc2VkIGNsZWFubHkuICBOb3RlIHRoYXQgdGhpcyBkb2Vzbid0CisgICBtZWFuIHRoYXQgdGhlIHVuZGVybHlpbmcgdHJhbnNwb3J0IChyZWFkIFRDUCkgaGFzIGJlZW4gY2xvc2VkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZXhjZXB0aW9uOjogU1NMV2FudFJlYWRFcnJvcgorCisgICBBIHN1YmNsYXNzIG9mIDpleGM6YFNTTEVycm9yYCByYWlzZWQgYnkgYSA6cmVmOmBub24tYmxvY2tpbmcgU1NMIHNvY2tldAorICAgPHNzbC1ub25ibG9ja2luZz5gIHdoZW4gdHJ5aW5nIHRvIHJlYWQgb3Igd3JpdGUgZGF0YSwgYnV0IG1vcmUgZGF0YSBuZWVkcworICAgdG8gYmUgcmVjZWl2ZWQgb24gdGhlIHVuZGVybHlpbmcgVENQIHRyYW5zcG9ydCBiZWZvcmUgdGhlIHJlcXVlc3QgY2FuIGJlCisgICBmdWxmaWxsZWQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBleGNlcHRpb246OiBTU0xXYW50V3JpdGVFcnJvcgorCisgICBBIHN1YmNsYXNzIG9mIDpleGM6YFNTTEVycm9yYCByYWlzZWQgYnkgYSA6cmVmOmBub24tYmxvY2tpbmcgU1NMIHNvY2tldAorICAgPHNzbC1ub25ibG9ja2luZz5gIHdoZW4gdHJ5aW5nIHRvIHJlYWQgb3Igd3JpdGUgZGF0YSwgYnV0IG1vcmUgZGF0YSBuZWVkcworICAgdG8gYmUgc2VudCBvbiB0aGUgdW5kZXJseWluZyBUQ1AgdHJhbnNwb3J0IGJlZm9yZSB0aGUgcmVxdWVzdCBjYW4gYmUKKyAgIGZ1bGZpbGxlZC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGV4Y2VwdGlvbjo6IFNTTFN5c2NhbGxFcnJvcgorCisgICBBIHN1YmNsYXNzIG9mIDpleGM6YFNTTEVycm9yYCByYWlzZWQgd2hlbiBhIHN5c3RlbSBlcnJvciB3YXMgZW5jb3VudGVyZWQKKyAgIHdoaWxlIHRyeWluZyB0byBmdWxmaWxsIGFuIG9wZXJhdGlvbiBvbiBhIFNTTCBzb2NrZXQuICBVbmZvcnR1bmF0ZWx5LAorICAgdGhlcmUgaXMgbm8gZWFzeSB3YXkgdG8gaW5zcGVjdCB0aGUgb3JpZ2luYWwgZXJybm8gbnVtYmVyLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZXhjZXB0aW9uOjogU1NMRU9GRXJyb3IKKworICAgQSBzdWJjbGFzcyBvZiA6ZXhjOmBTU0xFcnJvcmAgcmFpc2VkIHdoZW4gdGhlIFNTTCBjb25uZWN0aW9uIGhhcyBiZWVuCisgICB0ZXJtaW5hdGVkIGFicnVwdGx5LiAgR2VuZXJhbGx5LCB5b3Ugc2hvdWxkbid0IHRyeSB0byByZXVzZSB0aGUgdW5kZXJseWluZworICAgdHJhbnNwb3J0IHdoZW4gdGhpcyBlcnJvciBpcyBlbmNvdW50ZXJlZC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCiAKIC4uIGV4Y2VwdGlvbjo6IENlcnRpZmljYXRlRXJyb3IKIApAQCAtMTYxLDYgKzIwNSwzNSBAQAogUmFuZG9tIGdlbmVyYXRpb24KIF5eXl5eXl5eXl5eXl5eXl5eCiAKKy4uIGZ1bmN0aW9uOjogUkFORF9ieXRlcyhudW0pCisKKyAgIFJldHVybnMgKm51bSogY3J5cHRvZ3JhcGhpY2FsbHkgc3Ryb25nIHBzZXVkby1yYW5kb20gYnl0ZXMuIFJhaXNlcyBhbgorICAgOmNsYXNzOmBTU0xFcnJvcmAgaWYgdGhlIFBSTkcgaGFzIG5vdCBiZWVuIHNlZWRlZCB3aXRoIGVub3VnaCBkYXRhIG9yIGlmIHRoZQorICAgb3BlcmF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhlIGN1cnJlbnQgUkFORCBtZXRob2QuIDpmdW5jOmBSQU5EX3N0YXR1c2AKKyAgIGNhbiBiZSB1c2VkIHRvIGNoZWNrIHRoZSBzdGF0dXMgb2YgdGhlIFBSTkcgYW5kIDpmdW5jOmBSQU5EX2FkZGAgY2FuIGJlIHVzZWQKKyAgIHRvIHNlZWQgdGhlIFBSTkcuCisKKyAgIFJlYWQgdGhlIFdpa2lwZWRpYSBhcnRpY2xlLCBgQ3J5cHRvZ3JhcGhpY2FsbHkgc2VjdXJlIHBzZXVkb3JhbmRvbSBudW1iZXIKKyAgIGdlbmVyYXRvciAoQ1NQUk5HKQorICAgPGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ3J5cHRvZ3JhcGhpY2FsbHlfc2VjdXJlX3BzZXVkb3JhbmRvbV9udW1iZXJfZ2VuZXJhdG9yPmBfLAorICAgdG8gZ2V0IHRoZSByZXF1aXJlbWVudHMgb2YgYSBjcnlwdG9ncmFwaGljYWxseSBnZW5lcmF0b3IuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBmdW5jdGlvbjo6IFJBTkRfcHNldWRvX2J5dGVzKG51bSkKKworICAgUmV0dXJucyAoYnl0ZXMsIGlzX2NyeXB0b2dyYXBoaWMpOiBieXRlcyBhcmUgKm51bSogcHNldWRvLXJhbmRvbSBieXRlcywKKyAgIGlzX2NyeXB0b2dyYXBoaWMgaXMgVHJ1ZSBpZiB0aGUgYnl0ZXMgZ2VuZXJhdGVkIGFyZSBjcnlwdG9ncmFwaGljYWxseQorICAgc3Ryb25nLiBSYWlzZXMgYW4gOmNsYXNzOmBTU0xFcnJvcmAgaWYgdGhlIG9wZXJhdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoZQorICAgY3VycmVudCBSQU5EIG1ldGhvZC4KKworICAgR2VuZXJhdGVkIHBzZXVkby1yYW5kb20gYnl0ZSBzZXF1ZW5jZXMgd2lsbCBiZSB1bmlxdWUgaWYgdGhleSBhcmUgb2YKKyAgIHN1ZmZpY2llbnQgbGVuZ3RoLCBidXQgYXJlIG5vdCBuZWNlc3NhcmlseSB1bnByZWRpY3RhYmxlLiBUaGV5IGNhbiBiZSB1c2VkCisgICBmb3Igbm9uLWNyeXB0b2dyYXBoaWMgcHVycG9zZXMgYW5kIGZvciBjZXJ0YWluIHB1cnBvc2VzIGluIGNyeXB0b2dyYXBoaWMKKyAgIHByb3RvY29scywgYnV0IHVzdWFsbHkgbm90IGZvciBrZXkgZ2VuZXJhdGlvbiBldGMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAuLiBmdW5jdGlvbjo6IFJBTkRfc3RhdHVzKCkKIAogICAgUmV0dXJucyBUcnVlIGlmIHRoZSBTU0wgcHNldWRvLXJhbmRvbSBudW1iZXIgZ2VuZXJhdG9yIGhhcyBiZWVuIHNlZWRlZCB3aXRoCkBAIC0xNzAsNyArMjQzLDcgQEAKIAogLi4gZnVuY3Rpb246OiBSQU5EX2VnZChwYXRoKQogCi0gICBJZiB5b3UgYXJlIHJ1bm5pbmcgYW4gZW50cm9weS1nYXRoZXJpbmcgZGFlbW9uIChFR0QpIHNvbWV3aGVyZSwgYW5kIGBgcGF0aGBgCisgICBJZiB5b3UgYXJlIHJ1bm5pbmcgYW4gZW50cm9weS1nYXRoZXJpbmcgZGFlbW9uIChFR0QpIHNvbWV3aGVyZSwgYW5kICpwYXRoKgogICAgaXMgdGhlIHBhdGhuYW1lIG9mIGEgc29ja2V0IGNvbm5lY3Rpb24gb3BlbiB0byBpdCwgdGhpcyB3aWxsIHJlYWQgMjU2IGJ5dGVzCiAgICBvZiByYW5kb21uZXNzIGZyb20gdGhlIHNvY2tldCwgYW5kIGFkZCBpdCB0byB0aGUgU1NMIHBzZXVkby1yYW5kb20gbnVtYmVyCiAgICBnZW5lcmF0b3IgdG8gaW5jcmVhc2UgdGhlIHNlY3VyaXR5IG9mIGdlbmVyYXRlZCBzZWNyZXQga2V5cy4gIFRoaXMgaXMKQEAgLTE4MSw4ICsyNTQsOCBAQAogCiAuLiBmdW5jdGlvbjo6IFJBTkRfYWRkKGJ5dGVzLCBlbnRyb3B5KQogCi0gICBNaXhlcyB0aGUgZ2l2ZW4gYGBieXRlc2BgIGludG8gdGhlIFNTTCBwc2V1ZG8tcmFuZG9tIG51bWJlciBnZW5lcmF0b3IuICBUaGUKLSAgIHBhcmFtZXRlciBgYGVudHJvcHlgYCAoYSBmbG9hdCkgaXMgYSBsb3dlciBib3VuZCBvbiB0aGUgZW50cm9weSBjb250YWluZWQgaW4KKyAgIE1peGVzIHRoZSBnaXZlbiAqYnl0ZXMqIGludG8gdGhlIFNTTCBwc2V1ZG8tcmFuZG9tIG51bWJlciBnZW5lcmF0b3IuICBUaGUKKyAgIHBhcmFtZXRlciAqZW50cm9weSogKGEgZmxvYXQpIGlzIGEgbG93ZXIgYm91bmQgb24gdGhlIGVudHJvcHkgY29udGFpbmVkIGluCiAgICBzdHJpbmcgKHNvIHlvdSBjYW4gYWx3YXlzIHVzZSA6Y29uc3Q6YDAuMGApLiAgU2VlIDpyZmM6YDE3NTBgIGZvciBtb3JlCiAgICBpbmZvcm1hdGlvbiBvbiBzb3VyY2VzIG9mIGVudHJvcHkuCiAKQEAgLTIzOCw2ICszMTEsOSBAQAogICAgd2lsbCBhdHRlbXB0IHRvIHZhbGlkYXRlIHRoZSBzZXJ2ZXIgY2VydGlmaWNhdGUgYWdhaW5zdCB0aGF0IHNldCBvZiByb290CiAgICBjZXJ0aWZpY2F0ZXMsIGFuZCB3aWxsIGZhaWwgaWYgdGhlIHZhbGlkYXRpb24gYXR0ZW1wdCBmYWlscy4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gaXMgbm93IElQdjYtY29tcGF0aWJsZS4KKwogLi4gZnVuY3Rpb246OiBERVJfY2VydF90b19QRU1fY2VydChERVJfY2VydF9ieXRlcykKIAogICAgR2l2ZW4gYSBjZXJ0aWZpY2F0ZSBhcyBhIERFUi1lbmNvZGVkIGJsb2Igb2YgYnl0ZXMsIHJldHVybnMgYSBQRU0tZW5jb2RlZApAQCAtMzQ1LDYgKzQyMSw0NiBAQAogCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAorLi4gZGF0YTo6IE9QX0NJUEhFUl9TRVJWRVJfUFJFRkVSRU5DRQorCisgICBVc2UgdGhlIHNlcnZlcidzIGNpcGhlciBvcmRlcmluZyBwcmVmZXJlbmNlLCByYXRoZXIgdGhhbiB0aGUgY2xpZW50J3MuCisgICBUaGlzIG9wdGlvbiBoYXMgbm8gZWZmZWN0IG9uIGNsaWVudCBzb2NrZXRzIGFuZCBTU0x2MiBzZXJ2ZXIgc29ja2V0cy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGRhdGE6OiBPUF9TSU5HTEVfREhfVVNFCisKKyAgIFByZXZlbnRzIHJlLXVzZSBvZiB0aGUgc2FtZSBESCBrZXkgZm9yIGRpc3RpbmN0IFNTTCBzZXNzaW9ucy4gIFRoaXMKKyAgIGltcHJvdmVzIGZvcndhcmQgc2VjcmVjeSBidXQgcmVxdWlyZXMgbW9yZSBjb21wdXRhdGlvbmFsIHJlc291cmNlcy4KKyAgIFRoaXMgb3B0aW9uIG9ubHkgYXBwbGllcyB0byBzZXJ2ZXIgc29ja2V0cy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGRhdGE6OiBPUF9TSU5HTEVfRUNESF9VU0UKKworICAgUHJldmVudHMgcmUtdXNlIG9mIHRoZSBzYW1lIEVDREgga2V5IGZvciBkaXN0aW5jdCBTU0wgc2Vzc2lvbnMuICBUaGlzCisgICBpbXByb3ZlcyBmb3J3YXJkIHNlY3JlY3kgYnV0IHJlcXVpcmVzIG1vcmUgY29tcHV0YXRpb25hbCByZXNvdXJjZXMuCisgICBUaGlzIG9wdGlvbiBvbmx5IGFwcGxpZXMgdG8gc2VydmVyIHNvY2tldHMuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBkYXRhOjogT1BfTk9fQ09NUFJFU1NJT04KKworICAgRGlzYWJsZSBjb21wcmVzc2lvbiBvbiB0aGUgU1NMIGNoYW5uZWwuICBUaGlzIGlzIHVzZWZ1bCBpZiB0aGUgYXBwbGljYXRpb24KKyAgIHByb3RvY29sIHN1cHBvcnRzIGl0cyBvd24gY29tcHJlc3Npb24gc2NoZW1lLgorCisgICBUaGlzIG9wdGlvbiBpcyBvbmx5IGF2YWlsYWJsZSB3aXRoIE9wZW5TU0wgMS4wLjAgYW5kIGxhdGVyLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZGF0YTo6IEhBU19FQ0RICisKKyAgIFdoZXRoZXIgdGhlIE9wZW5TU0wgbGlicmFyeSBoYXMgYnVpbHQtaW4gc3VwcG9ydCBmb3IgRWxsaXB0aWMgQ3VydmUtYmFzZWQKKyAgIERpZmZpZS1IZWxsbWFuIGtleSBleGNoYW5nZS4gIFRoaXMgc2hvdWxkIGJlIHRydWUgdW5sZXNzIHRoZSBmZWF0dXJlIHdhcworICAgZXhwbGljaXRseSBkaXNhYmxlZCBieSB0aGUgZGlzdHJpYnV0b3IuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAuLiBkYXRhOjogSEFTX1NOSQogCiAgICBXaGV0aGVyIHRoZSBPcGVuU1NMIGxpYnJhcnkgaGFzIGJ1aWx0LWluIHN1cHBvcnQgZm9yIHRoZSAqU2VydmVyIE5hbWUKQEAgLTM1NCw2ICs0NzAsMTMgQEAKIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKKy4uIGRhdGE6OiBDSEFOTkVMX0JJTkRJTkdfVFlQRVMKKworICAgTGlzdCBvZiBzdXBwb3J0ZWQgVExTIGNoYW5uZWwgYmluZGluZyB0eXBlcy4gIFN0cmluZ3MgaW4gdGhpcyBsaXN0CisgICBjYW4gYmUgdXNlZCBhcyBhcmd1bWVudHMgdG8gOm1ldGg6YFNTTFNvY2tldC5nZXRfY2hhbm5lbF9iaW5kaW5nYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIC4uIGRhdGE6OiBPUEVOU1NMX1ZFUlNJT04KIAogICAgVGhlIHZlcnNpb24gc3RyaW5nIG9mIHRoZSBPcGVuU1NMIGxpYnJhcnkgbG9hZGVkIGJ5IHRoZSBpbnRlcnByZXRlcjo6CkBAIC00NjMsNiArNTg2LDI4IEBACiAgICB2ZXJzaW9uIG9mIHRoZSBTU0wgcHJvdG9jb2wgdGhhdCBkZWZpbmVzIGl0cyB1c2UsIGFuZCB0aGUgbnVtYmVyIG9mIHNlY3JldAogICAgYml0cyBiZWluZyB1c2VkLiAgSWYgbm8gY29ubmVjdGlvbiBoYXMgYmVlbiBlc3RhYmxpc2hlZCwgcmV0dXJucyBgYE5vbmVgYC4KIAorLi4gbWV0aG9kOjogU1NMU29ja2V0LmNvbXByZXNzaW9uKCkKKworICAgUmV0dXJuIHRoZSBjb21wcmVzc2lvbiBhbGdvcml0aG0gYmVpbmcgdXNlZCBhcyBhIHN0cmluZywgb3IgYGBOb25lYGAKKyAgIGlmIHRoZSBjb25uZWN0aW9uIGlzbid0IGNvbXByZXNzZWQuCisKKyAgIElmIHRoZSBoaWdoZXItbGV2ZWwgcHJvdG9jb2wgc3VwcG9ydHMgaXRzIG93biBjb21wcmVzc2lvbiBtZWNoYW5pc20sCisgICB5b3UgY2FuIHVzZSA6ZGF0YTpgT1BfTk9fQ09NUFJFU1NJT05gIHRvIGRpc2FibGUgU1NMLWxldmVsIGNvbXByZXNzaW9uLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gbWV0aG9kOjogU1NMU29ja2V0LmdldF9jaGFubmVsX2JpbmRpbmcoY2JfdHlwZT0idGxzLXVuaXF1ZSIpCisKKyAgIEdldCBjaGFubmVsIGJpbmRpbmcgZGF0YSBmb3IgY3VycmVudCBjb25uZWN0aW9uLCBhcyBhIGJ5dGVzIG9iamVjdC4gIFJldHVybnMKKyAgIGBgTm9uZWBgIGlmIG5vdCBjb25uZWN0ZWQgb3IgdGhlIGhhbmRzaGFrZSBoYXMgbm90IGJlZW4gY29tcGxldGVkLgorCisgICBUaGUgKmNiX3R5cGUqIHBhcmFtZXRlciBhbGxvdyBzZWxlY3Rpb24gb2YgdGhlIGRlc2lyZWQgY2hhbm5lbCBiaW5kaW5nCisgICB0eXBlLiBWYWxpZCBjaGFubmVsIGJpbmRpbmcgdHlwZXMgYXJlIGxpc3RlZCBpbiB0aGUKKyAgIDpkYXRhOmBDSEFOTkVMX0JJTkRJTkdfVFlQRVNgIGxpc3QuICBDdXJyZW50bHkgb25seSB0aGUgJ3Rscy11bmlxdWUnIGNoYW5uZWwKKyAgIGJpbmRpbmcsIGRlZmluZWQgYnkgOnJmYzpgNTkyOWAsIGlzIHN1cHBvcnRlZC4gIDpleGM6YFZhbHVlRXJyb3JgIHdpbGwgYmUKKyAgIHJhaXNlZCBpZiBhbiB1bnN1cHBvcnRlZCBjaGFubmVsIGJpbmRpbmcgdHlwZSBpcyByZXF1ZXN0ZWQuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMwogCiAuLiBtZXRob2Q6OiBTU0xTb2NrZXQudW53cmFwKCkKIApAQCAtNTAyLDcgKzY0Nyw3IEBACiAKIDpjbGFzczpgU1NMQ29udGV4dGAgb2JqZWN0cyBoYXZlIHRoZSBmb2xsb3dpbmcgbWV0aG9kcyBhbmQgYXR0cmlidXRlczoKIAotLi4gbWV0aG9kOjogU1NMQ29udGV4dC5sb2FkX2NlcnRfY2hhaW4oY2VydGZpbGUsIGtleWZpbGU9Tm9uZSkKKy4uIG1ldGhvZDo6IFNTTENvbnRleHQubG9hZF9jZXJ0X2NoYWluKGNlcnRmaWxlLCBrZXlmaWxlPU5vbmUsIHBhc3N3b3JkPU5vbmUpCiAKICAgIExvYWQgYSBwcml2YXRlIGtleSBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgY2VydGlmaWNhdGUuICBUaGUgKmNlcnRmaWxlKgogICAgc3RyaW5nIG11c3QgYmUgdGhlIHBhdGggdG8gYSBzaW5nbGUgZmlsZSBpbiBQRU0gZm9ybWF0IGNvbnRhaW5pbmcgdGhlCkBAIC01MTMsOSArNjU4LDI1IEBACiAgICA6cmVmOmBzc2wtY2VydGlmaWNhdGVzYCBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiBob3cgdGhlIGNlcnRpZmljYXRlCiAgICBpcyBzdG9yZWQgaW4gdGhlICpjZXJ0ZmlsZSouCiAKKyAgIFRoZSAqcGFzc3dvcmQqIGFyZ3VtZW50IG1heSBiZSBhIGZ1bmN0aW9uIHRvIGNhbGwgdG8gZ2V0IHRoZSBwYXNzd29yZCBmb3IKKyAgIGRlY3J5cHRpbmcgdGhlIHByaXZhdGUga2V5LiAgSXQgd2lsbCBvbmx5IGJlIGNhbGxlZCBpZiB0aGUgcHJpdmF0ZSBrZXkgaXMKKyAgIGVuY3J5cHRlZCBhbmQgYSBwYXNzd29yZCBpcyBuZWNlc3NhcnkuICBJdCB3aWxsIGJlIGNhbGxlZCB3aXRoIG5vIGFyZ3VtZW50cywKKyAgIGFuZCBpdCBzaG91bGQgcmV0dXJuIGEgc3RyaW5nLCBieXRlcywgb3IgYnl0ZWFycmF5LiAgSWYgdGhlIHJldHVybiB2YWx1ZSBpcworICAgYSBzdHJpbmcgaXQgd2lsbCBiZSBlbmNvZGVkIGFzIFVURi04IGJlZm9yZSB1c2luZyBpdCB0byBkZWNyeXB0IHRoZSBrZXkuCisgICBBbHRlcm5hdGl2ZWx5IGEgc3RyaW5nLCBieXRlcywgb3IgYnl0ZWFycmF5IHZhbHVlIG1heSBiZSBzdXBwbGllZCBkaXJlY3RseQorICAgYXMgdGhlICpwYXNzd29yZCogYXJndW1lbnQuICBJdCB3aWxsIGJlIGlnbm9yZWQgaWYgdGhlIHByaXZhdGUga2V5IGlzIG5vdAorICAgZW5jcnlwdGVkIGFuZCBubyBwYXNzd29yZCBpcyBuZWVkZWQuCisKKyAgIElmIHRoZSAqcGFzc3dvcmQqIGFyZ3VtZW50IGlzIG5vdCBzcGVjaWZpZWQgYW5kIGEgcGFzc3dvcmQgaXMgcmVxdWlyZWQsCisgICBPcGVuU1NMJ3MgYnVpbHQtaW4gcGFzc3dvcmQgcHJvbXB0aW5nIG1lY2hhbmlzbSB3aWxsIGJlIHVzZWQgdG8KKyAgIGludGVyYWN0aXZlbHkgcHJvbXB0IHRoZSB1c2VyIGZvciBhIHBhc3N3b3JkLgorCiAgICBBbiA6Y2xhc3M6YFNTTEVycm9yYCBpcyByYWlzZWQgaWYgdGhlIHByaXZhdGUga2V5IGRvZXNuJ3QKICAgIG1hdGNoIHdpdGggdGhlIGNlcnRpZmljYXRlLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgTmV3IG9wdGlvbmFsIGFyZ3VtZW50ICpwYXNzd29yZCouCisKIC4uIG1ldGhvZDo6IFNTTENvbnRleHQubG9hZF92ZXJpZnlfbG9jYXRpb25zKGNhZmlsZT1Ob25lLCBjYXBhdGg9Tm9uZSkKIAogICAgTG9hZCBhIHNldCBvZiAiY2VydGlmaWNhdGlvbiBhdXRob3JpdHkiIChDQSkgY2VydGlmaWNhdGVzIHVzZWQgdG8gdmFsaWRhdGUKQEAgLTU1NCw2ICs3MTUsMzggQEAKICAgICAgIHdoZW4gY29ubmVjdGVkLCB0aGUgOm1ldGg6YFNTTFNvY2tldC5jaXBoZXJgIG1ldGhvZCBvZiBTU0wgc29ja2V0cyB3aWxsCiAgICAgICBnaXZlIHRoZSBjdXJyZW50bHkgc2VsZWN0ZWQgY2lwaGVyLgogCisuLiBtZXRob2Q6OiBTU0xDb250ZXh0LmxvYWRfZGhfcGFyYW1zKGRoZmlsZSkKKworICAgTG9hZCB0aGUga2V5IGdlbmVyYXRpb24gcGFyYW1ldGVycyBmb3IgRGlmZmllLUhlbG1hbiAoREgpIGtleSBleGNoYW5nZS4KKyAgIFVzaW5nIERIIGtleSBleGNoYW5nZSBpbXByb3ZlcyBmb3J3YXJkIHNlY3JlY3kgYXQgdGhlIGV4cGVuc2Ugb2YKKyAgIGNvbXB1dGF0aW9uYWwgcmVzb3VyY2VzIChib3RoIG9uIHRoZSBzZXJ2ZXIgYW5kIG9uIHRoZSBjbGllbnQpLgorICAgVGhlICpkaGZpbGUqIHBhcmFtZXRlciBzaG91bGQgYmUgdGhlIHBhdGggdG8gYSBmaWxlIGNvbnRhaW5pbmcgREgKKyAgIHBhcmFtZXRlcnMgaW4gUEVNIGZvcm1hdC4KKworICAgVGhpcyBzZXR0aW5nIGRvZXNuJ3QgYXBwbHkgdG8gY2xpZW50IHNvY2tldHMuICBZb3UgY2FuIGFsc28gdXNlIHRoZQorICAgOmRhdGE6YE9QX1NJTkdMRV9ESF9VU0VgIG9wdGlvbiB0byBmdXJ0aGVyIGltcHJvdmUgc2VjdXJpdHkuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBtZXRob2Q6OiBTU0xDb250ZXh0LnNldF9lY2RoX2N1cnZlKGN1cnZlX25hbWUpCisKKyAgIFNldCB0aGUgY3VydmUgbmFtZSBmb3IgRWxsaXB0aWMgQ3VydmUtYmFzZWQgRGlmZmllLUhlbGxtYW4gKEVDREgpIGtleQorICAgZXhjaGFuZ2UuICBFQ0RIIGlzIHNpZ25pZmljYW50bHkgZmFzdGVyIHRoYW4gcmVndWxhciBESCB3aGlsZSBhcmd1YWJseQorICAgYXMgc2VjdXJlLiAgVGhlICpjdXJ2ZV9uYW1lKiBwYXJhbWV0ZXIgc2hvdWxkIGJlIGEgc3RyaW5nIGRlc2NyaWJpbmcKKyAgIGEgd2VsbC1rbm93biBlbGxpcHRpYyBjdXJ2ZSwgZm9yIGV4YW1wbGUgYGBwcmltZTI1NnYxYGAgZm9yIGEgd2lkZWx5CisgICBzdXBwb3J0ZWQgY3VydmUuCisKKyAgIFRoaXMgc2V0dGluZyBkb2Vzbid0IGFwcGx5IHRvIGNsaWVudCBzb2NrZXRzLiAgWW91IGNhbiBhbHNvIHVzZSB0aGUKKyAgIDpkYXRhOmBPUF9TSU5HTEVfRUNESF9VU0VgIG9wdGlvbiB0byBmdXJ0aGVyIGltcHJvdmUgc2VjdXJpdHkuCisKKyAgIFRoaXMgbWV0aG9kIGlzIG5vdCBhdmFpbGFibGUgaWYgOmRhdGE6YEhBU19FQ0RIYCBpcyBGYWxzZS4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKyAgIC4uIHNlZWFsc286OgorICAgICAgYFNTTC9UTFMgJiBQZXJmZWN0IEZvcndhcmQgU2VjcmVjeSA8aHR0cDovL3ZpbmNlbnQuYmVybmF0LmltL2VuL2Jsb2cvMjAxMS1zc2wtcGVyZmVjdC1mb3J3YXJkLXNlY3JlY3kuaHRtbD5gXworICAgICAgICAgVmluY2VudCBCZXJuYXQuCisKIC4uIG1ldGhvZDo6IFNTTENvbnRleHQud3JhcF9zb2NrZXQoc29jaywgc2VydmVyX3NpZGU9RmFsc2UsIFwKICAgICAgIGRvX2hhbmRzaGFrZV9vbl9jb25uZWN0PVRydWUsIHN1cHByZXNzX3JhZ2dlZF9lb2ZzPVRydWUsIFwKICAgICAgIHNlcnZlcl9ob3N0bmFtZT1Ob25lKQpAQCAtOTY4LDEzICsxMTYxLDEwIEBACiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHNvY2suZG9faGFuZHNoYWtlKCkKICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgIGV4Y2VwdCBzc2wuU1NMRXJyb3IgYXMgZXJyOgotICAgICAgICAgICAgaWYgZXJyLmFyZ3NbMF0gPT0gc3NsLlNTTF9FUlJPUl9XQU5UX1JFQUQ6Ci0gICAgICAgICAgICAgICAgc2VsZWN0LnNlbGVjdChbc29ja10sIFtdLCBbXSkKLSAgICAgICAgICAgIGVsaWYgZXJyLmFyZ3NbMF0gPT0gc3NsLlNTTF9FUlJPUl9XQU5UX1dSSVRFOgotICAgICAgICAgICAgICAgIHNlbGVjdC5zZWxlY3QoW10sIFtzb2NrXSwgW10pCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgIGV4Y2VwdCBzc2wuU1NMV2FudFJlYWRFcnJvcjoKKyAgICAgICAgICAgIHNlbGVjdC5zZWxlY3QoW3NvY2tdLCBbXSwgW10pCisgICAgICAgIGV4Y2VwdCBzc2wuU1NMV2FudFdyaXRlRXJyb3I6CisgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KFtdLCBbc29ja10sIFtdKQogCiAKIC4uIF9zc2wtc2VjdXJpdHk6CmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9zdGR0eXBlcy5yc3QgYi9Eb2MvbGlicmFyeS9zdGR0eXBlcy5yc3QKaW5kZXggMjcxNDYzMy4uYTJlZTkzMiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvc3RkdHlwZXMucnN0CisrKyBiL0RvYy9saWJyYXJ5L3N0ZHR5cGVzLnJzdApAQCAtMTUsNiArMTUsMTAgQEAKIFRoZSBwcmluY2lwYWwgYnVpbHQtaW4gdHlwZXMgYXJlIG51bWVyaWNzLCBzZXF1ZW5jZXMsIG1hcHBpbmdzLCBjbGFzc2VzLAogaW5zdGFuY2VzIGFuZCBleGNlcHRpb25zLgogCitTb21lIGNvbGxlY3Rpb24gY2xhc3NlcyBhcmUgbXV0YWJsZS4gIFRoZSBtZXRob2RzIHRoYXQgYWRkLCBzdWJ0cmFjdCwgb3IKK3JlYXJyYW5nZSB0aGVpciBtZW1iZXJzIGluIHBsYWNlLCBhbmQgZG9uJ3QgcmV0dXJuIGEgc3BlY2lmaWMgaXRlbSwgbmV2ZXIgcmV0dXJuCit0aGUgY29sbGVjdGlvbiBpbnN0YW5jZSBpdHNlbGYgYnV0IGBgTm9uZWBgLgorCiBTb21lIG9wZXJhdGlvbnMgYXJlIHN1cHBvcnRlZCBieSBzZXZlcmFsIG9iamVjdCB0eXBlczsgaW4gcGFydGljdWxhciwKIHByYWN0aWNhbGx5IGFsbCBvYmplY3RzIGNhbiBiZSBjb21wYXJlZCwgdGVzdGVkIGZvciB0cnV0aCB2YWx1ZSwgYW5kIGNvbnZlcnRlZAogdG8gYSBzdHJpbmcgKHdpdGggdGhlIDpmdW5jOmByZXByYCBmdW5jdGlvbiBvciB0aGUgc2xpZ2h0bHkgZGlmZmVyZW50CkBAIC05OTgsNiArMTAwMiwyMyBAQAogICAgcmVzdCBsb3dlcmNhc2VkLgogCiAKKy4uIG1ldGhvZDo6IHN0ci5jYXNlZm9sZCgpCisKKyAgIFJldHVybiBhIGNhc2Vmb2xkZWQgY29weSBvZiB0aGUgc3RyaW5nLiBDYXNlZm9sZGVkIHN0cmluZ3MgbWF5IGJlIHVzZWQgZm9yCisgICBjYXNlbGVzcyBtYXRjaGluZy4KKworICAgQ2FzZWZvbGRpbmcgaXMgc2ltaWxhciB0byBsb3dlcmNhc2luZyBidXQgbW9yZSBhZ2dyZXNzaXZlIGJlY2F1c2UgaXQgaXMKKyAgIGludGVuZGVkIHRvIHJlbW92ZSBhbGwgY2FzZSBkaXN0aW5jdGlvbnMgaW4gYSBzdHJpbmcuIEZvciBleGFtcGxlLCB0aGUgR2VybWFuCisgICBsb3dlcmNhc2UgbGV0dGVyIGBgJ8OfJ2BgIGlzIGVxdWl2YWxlbnQgdG8gYGAic3MiYGAuIFNpbmNlIGl0IGlzIGFscmVhZHkKKyAgIGxvd2VyY2FzZSwgOm1ldGg6YGxvd2VyYCB3b3VsZCBkbyBub3RoaW5nIHRvIGBgJ8OfJ2BgOyA6bWV0aDpgY2FzZWZvbGRgCisgICBjb252ZXJ0cyBpdCB0byBgYCJzcyJgYC4KKworICAgVGhlIGNhc2Vmb2xkaW5nIGFsZ29yaXRobSBpcyBkZXNjcmliZWQgaW4gc2VjdGlvbiAzLjEzIG9mIHRoZSBVbmljb2RlCisgICBTdGFuZGFyZC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gbWV0aG9kOjogc3RyLmNlbnRlcih3aWR0aFssIGZpbGxjaGFyXSkKIAogICAgUmV0dXJuIGNlbnRlcmVkIGluIGEgc3RyaW5nIG9mIGxlbmd0aCAqd2lkdGgqLiBQYWRkaW5nIGlzIGRvbmUgdXNpbmcgdGhlCkBAIC0xMjA1LDYgKzEyMjYsOSBAQAogICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggYWxsIHRoZSBjYXNlZCBjaGFyYWN0ZXJzIFs0XV8gY29udmVydGVkIHRvCiAgICBsb3dlcmNhc2UuCiAKKyAgIFRoZSBsb3dlcmNhc2luZyBhbGdvcml0aG0gdXNlZCBpcyBkZXNjcmliZWQgaW4gc2VjdGlvbiAzLjEzIG9mIHRoZSBVbmljb2RlCisgICBTdGFuZGFyZC4KKwogCiAuLiBtZXRob2Q6OiBzdHIubHN0cmlwKFtjaGFyc10pCiAKQEAgLTEzNTYsNyArMTM4MCw4IEBACiAuLiBtZXRob2Q6OiBzdHIuc3dhcGNhc2UoKQogCiAgICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB1cHBlcmNhc2UgY2hhcmFjdGVycyBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlIGFuZAotICAgdmljZSB2ZXJzYS4KKyAgIHZpY2UgdmVyc2EuIE5vdGUgdGhhdCBpdCBpcyBub3QgbmVjZXNzYXJpbHkgdHJ1ZSB0aGF0CisgICBgYHMuc3dhcGNhc2UoKS5zd2FwY2FzZSgpID09IHNgYC4KIAogCiAuLiBtZXRob2Q6OiBzdHIudGl0bGUoKQpAQCAtMTQwNyw3ICsxNDMyLDExIEBACiAgICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCBhbGwgdGhlIGNhc2VkIGNoYXJhY3RlcnMgWzRdXyBjb252ZXJ0ZWQgdG8KICAgIHVwcGVyY2FzZS4gIE5vdGUgdGhhdCBgYHN0ci51cHBlcigpLmlzdXBwZXIoKWBgIG1pZ2h0IGJlIGBgRmFsc2VgYCBpZiBgYHNgYAogICAgY29udGFpbnMgdW5jYXNlZCBjaGFyYWN0ZXJzIG9yIGlmIHRoZSBVbmljb2RlIGNhdGVnb3J5IG9mIHRoZSByZXN1bHRpbmcKLSAgIGNoYXJhY3RlcihzKSBpcyBub3QgIkx1IiAoTGV0dGVyLCB1cHBlcmNhc2UpLCBidXQgZS5nLiAiTHQiIChMZXR0ZXIsIHRpdGxlY2FzZSkuCisgICBjaGFyYWN0ZXIocykgaXMgbm90ICJMdSIgKExldHRlciwgdXBwZXJjYXNlKSwgYnV0IGUuZy4gIkx0IiAoTGV0dGVyLAorICAgdGl0bGVjYXNlKS4KKworICAgVGhlIHVwcGVyY2FzaW5nIGFsZ29yaXRobSB1c2VkIGlzIGRlc2NyaWJlZCBpbiBzZWN0aW9uIDMuMTMgb2YgdGhlIFVuaWNvZGUKKyAgIFN0YW5kYXJkLgogCiAKIC4uIG1ldGhvZDo6IHN0ci56ZmlsbCh3aWR0aCkKQEAgLTE2NjcsNiArMTY5Niw4IEBACiAgICBzaW5nbGU6IGFwcGVuZCgpIChzZXF1ZW5jZSBtZXRob2QpCiAgICBzaW5nbGU6IGV4dGVuZCgpIChzZXF1ZW5jZSBtZXRob2QpCiAgICBzaW5nbGU6IGNvdW50KCkgKHNlcXVlbmNlIG1ldGhvZCkKKyAgIHNpbmdsZTogY2xlYXIoKSAoc2VxdWVuY2UgbWV0aG9kKQorICAgc2luZ2xlOiBjb3B5KCkgKHNlcXVlbmNlIG1ldGhvZCkKICAgIHNpbmdsZTogaW5kZXgoKSAoc2VxdWVuY2UgbWV0aG9kKQogICAgc2luZ2xlOiBpbnNlcnQoKSAoc2VxdWVuY2UgbWV0aG9kKQogICAgc2luZ2xlOiBwb3AoKSAoc2VxdWVuY2UgbWV0aG9kKQpAQCAtMTY5OCw2ICsxNzI5LDEyIEBACiB8IGBgcy5leHRlbmQoeClgYCAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tsZW4ocyk6bGVuKHMpXSA9ICAgfCBcKDIpICAgICAgICAgICAgICAgIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHhgYCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfAogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IGBgcy5jbGVhcigpYGAgICAgICAgICAgICAgICAgfCByZW1vdmUgYWxsIGl0ZW1zIGZyb20gYGBzYGAgICAgfCAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IGBgcy5jb3B5KClgYCAgICAgICAgICAgICAgICAgfCByZXR1cm4gYSBzaGFsbG93IGNvcHkgb2YgYGBzYGAgfCAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiB8IGBgcy5jb3VudCh4KWBgICAgICAgICAgICAgICAgfCByZXR1cm4gbnVtYmVyIG9mICppKidzIGZvciAgICAgfCAgICAgICAgICAgICAgICAgICAgIHwKIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHdoaWNoIGBgc1tpXSA9PSB4YGAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgfAogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0rCkBAIC0xNzc2LDYgKzE4MTMsOSBAQAogKDgpCiAgICA6bWV0aDpgc29ydGAgaXMgbm90IHN1cHBvcnRlZCBieSA6Y2xhc3M6YGJ5dGVhcnJheWAgb2JqZWN0cy4KIAorICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworICAgICAgIDptZXRoOmBjbGVhcmAgYW5kIDptZXRoOmAhY29weWAgbWV0aG9kcy4KKwogCiAuLiBfYnl0ZXMtbWV0aG9kczoKIApAQCAtMTc5Myw2ICsxODMzLDEyIEBACiBXaGVyZXZlciBvbmUgb2YgdGhlc2UgbWV0aG9kcyBuZWVkcyB0byBpbnRlcnByZXQgdGhlIGJ5dGVzIGFzIGNoYXJhY3RlcnMKIChlLmcuIHRoZSA6ZnVuYzpgaXMuLi5gIG1ldGhvZHMpLCB0aGUgQVNDSUkgY2hhcmFjdGVyIHNldCBpcyBhc3N1bWVkLgogCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgIFRoZSBmdW5jdGlvbnMgOmZ1bmM6YGNvdW50YCwgOmZ1bmM6YGZpbmRgLCA6ZnVuYzpgaW5kZXhgLAorICAgOmZ1bmM6YHJmaW5kYCBhbmQgOmZ1bmM6YHJpbmRleGAgaGF2ZSBhZGRpdGlvbmFsIHNlbWFudGljcyBjb21wYXJlZCB0bworICAgdGhlIGNvcnJlc3BvbmRpbmcgc3RyaW5nIGZ1bmN0aW9uczogVGhleSBhbHNvIGFjY2VwdCBhbiBpbnRlZ2VyIGluCisgICByYW5nZSAwIHRvIDI1NSAoYSBieXRlKSBhcyB0aGVpciBmaXJzdCBhcmd1bWVudC4KKwogLi4gbm90ZTo6CiAKICAgIFRoZSBtZXRob2RzIG9uIGJ5dGVzIGFuZCBieXRlYXJyYXkgb2JqZWN0cyBkb24ndCBhY2NlcHQgc3RyaW5ncyBhcyB0aGVpcgpAQCAtMjM4Myw2ICsyNDI5LDE5IEBACiAKICAgIE5vdGljZSBob3cgdGhlIHNpemUgb2YgdGhlIG1lbW9yeXZpZXcgb2JqZWN0IGNhbm5vdCBiZSBjaGFuZ2VkLgogCisgICBNZW1vcnl2aWV3cyBvZiBoYXNoYWJsZSAocmVhZC1vbmx5KSB0eXBlcyBhcmUgYWxzbyBoYXNoYWJsZSBhbmQgdGhlaXIKKyAgIGhhc2ggdmFsdWUgbWF0Y2hlcyB0aGUgY29ycmVzcG9uZGluZyBieXRlcyBvYmplY3Q6OgorCisgICAgICA+Pj4gdiA9IG1lbW9yeXZpZXcoYidhYmNlZmcnKQorICAgICAgPj4+IGhhc2godikgPT0gaGFzaChiJ2FiY2VmZycpCisgICAgICBUcnVlCisgICAgICA+Pj4gaGFzaCh2WzI6NF0pID09IGhhc2goYidjZScpCisgICAgICBUcnVlCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBNZW1vcnl2aWV3IG9iamVjdHMgYXJlIG5vdyBoYXNoYWJsZS4KKworCiAgICA6Y2xhc3M6YG1lbW9yeXZpZXdgIGhhcyBzZXZlcmFsIG1ldGhvZHM6CiAKICAgIC4uIG1ldGhvZDo6IHRvYnl0ZXMoKQpAQCAtMjY5OCw3ICsyNzU3LDcgQEAKIAogVGhpcyBvYmplY3QgaXMgcmV0dXJuZWQgYnkgZnVuY3Rpb25zIHRoYXQgZG9uJ3QgZXhwbGljaXRseSByZXR1cm4gYSB2YWx1ZS4gIEl0CiBzdXBwb3J0cyBubyBzcGVjaWFsIG9wZXJhdGlvbnMuICBUaGVyZSBpcyBleGFjdGx5IG9uZSBudWxsIG9iamVjdCwgbmFtZWQKLWBgTm9uZWBgIChhIGJ1aWx0LWluIG5hbWUpLgorYGBOb25lYGAgKGEgYnVpbHQtaW4gbmFtZSkuICBgYHR5cGUoTm9uZSkoKWBgIHByb2R1Y2VzIHRoZSBzYW1lIHNpbmdsZXRvbi4KIAogSXQgaXMgd3JpdHRlbiBhcyBgYE5vbmVgYC4KIApAQCAtMjcxMCw3ICsyNzY5LDggQEAKIAogVGhpcyBvYmplY3QgaXMgY29tbW9ubHkgdXNlZCBieSBzbGljaW5nIChzZWUgOnJlZjpgc2xpY2luZ3NgKS4gIEl0IHN1cHBvcnRzIG5vCiBzcGVjaWFsIG9wZXJhdGlvbnMuICBUaGVyZSBpcyBleGFjdGx5IG9uZSBlbGxpcHNpcyBvYmplY3QsIG5hbWVkCi06Y29uc3Q6YEVsbGlwc2lzYCAoYSBidWlsdC1pbiBuYW1lKS4KKzpjb25zdDpgRWxsaXBzaXNgIChhIGJ1aWx0LWluIG5hbWUpLiAgYGB0eXBlKEVsbGlwc2lzKSgpYGAgcHJvZHVjZXMgdGhlCis6Y29uc3Q6YEVsbGlwc2lzYCBzaW5nbGV0b24uCiAKIEl0IGlzIHdyaXR0ZW4gYXMgYGBFbGxpcHNpc2BgIG9yIGBgLi4uYGAuCiAKQEAgLTI3MjIsNyArMjc4Miw4IEBACiAKIFRoaXMgb2JqZWN0IGlzIHJldHVybmVkIGZyb20gY29tcGFyaXNvbnMgYW5kIGJpbmFyeSBvcGVyYXRpb25zIHdoZW4gdGhleSBhcmUKIGFza2VkIHRvIG9wZXJhdGUgb24gdHlwZXMgdGhleSBkb24ndCBzdXBwb3J0LiBTZWUgOnJlZjpgY29tcGFyaXNvbnNgIGZvciBtb3JlCi1pbmZvcm1hdGlvbi4KK2luZm9ybWF0aW9uLiAgVGhlcmUgaXMgZXhhY3RseSBvbmUgYGBOb3RJbXBsZW1lbnRlZGBgIG9iamVjdC4KK2BgdHlwZShOb3RJbXBsZW1lbnRlZCkoKWBgIHByb2R1Y2VzIHRoZSBzaW5nbGV0b24gaW5zdGFuY2UuCiAKIEl0IGlzIHdyaXR0ZW4gYXMgYGBOb3RJbXBsZW1lbnRlZGBgLgogCkBAIC0yNzg4LDYgKzI4NDksMTMgQEAKICAgIFRoZSBuYW1lIG9mIHRoZSBjbGFzcyBvciB0eXBlLgogCiAKKy4uIGF0dHJpYnV0ZTo6IGNsYXNzLl9fcXVhbG5hbWVfXworCisgICBUaGUgOnRlcm06YHF1YWxpZmllZCBuYW1lYCBvZiB0aGUgY2xhc3Mgb3IgdHlwZS4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKwogLi4gYXR0cmlidXRlOjogY2xhc3MuX19tcm9fXwogCiAgICBUaGlzIGF0dHJpYnV0ZSBpcyBhIHR1cGxlIG9mIGNsYXNzZXMgdGhhdCBhcmUgY29uc2lkZXJlZCB3aGVuIGxvb2tpbmcgZm9yCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9zdHJ1Y3QucnN0IGIvRG9jL2xpYnJhcnkvc3RydWN0LnJzdAppbmRleCAxMjgyMGUwLi45OTQ1MDZjIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS9zdHJ1Y3QucnN0CisrKyBiL0RvYy9saWJyYXJ5L3N0cnVjdC5yc3QKQEAgLTE4NywxNyArMTg3LDI0IEBACiB8IGBgUWBgICB8IDpjOnR5cGU6YHVuc2lnbmVkIGxvbmcgICB8IGludGVnZXIgICAgICAgICAgICB8IDggICAgICAgICAgICAgIHwgXCgyKSwgXCgzKSB8CiB8ICAgICAgICB8IGxvbmdgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwgICAgICAgICAgICB8CiArLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCi18IGBgZmBgICB8IDpjOnR5cGU6YGZsb2F0YCAgICAgICAgICB8IGZsb2F0ICAgICAgICAgICAgICB8IDQgICAgICAgICAgICAgIHwgXCg0KSAgICAgICB8Cit8IGBgbmBgICB8IDpjOnR5cGU6YHNzaXplX3RgICAgICAgICB8IGludGVnZXIgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwgXCg0KSAgICAgICB8CiArLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCi18IGBgZGBgICB8IDpjOnR5cGU6YGRvdWJsZWAgICAgICAgICB8IGZsb2F0ICAgICAgICAgICAgICB8IDggICAgICAgICAgICAgIHwgXCg0KSAgICAgICB8Cit8IGBgTmBgICB8IDpjOnR5cGU6YHNpemVfdGAgICAgICAgICB8IGludGVnZXIgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwgXCg0KSAgICAgICB8CisrLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCit8IGBgZmBgICB8IDpjOnR5cGU6YGZsb2F0YCAgICAgICAgICB8IGZsb2F0ICAgICAgICAgICAgICB8IDQgICAgICAgICAgICAgIHwgXCg1KSAgICAgICB8CisrLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCit8IGBgZGBgICB8IDpjOnR5cGU6YGRvdWJsZWAgICAgICAgICB8IGZsb2F0ICAgICAgICAgICAgICB8IDggICAgICAgICAgICAgIHwgXCg1KSAgICAgICB8CiArLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCiB8IGBgc2BgICB8IDpjOnR5cGU6YGNoYXJbXWAgICAgICAgICB8IGJ5dGVzICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwgICAgICAgICAgICB8CiArLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCiB8IGBgcGBgICB8IDpjOnR5cGU6YGNoYXJbXWAgICAgICAgICB8IGJ5dGVzICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwgICAgICAgICAgICB8CiArLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCi18IGBgUGBgICB8IDpjOnR5cGU6YHZvaWQgXCpgICAgICAgICB8IGludGVnZXIgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwgXCg1KSAgICAgICB8Cit8IGBgUGBgICB8IDpjOnR5cGU6YHZvaWQgXCpgICAgICAgICB8IGludGVnZXIgICAgICAgICAgICB8ICAgICAgICAgICAgICAgIHwgXCg2KSAgICAgICB8CiArLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rCiAKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICBBZGRlZCBzdXBwb3J0IGZvciB0aGUgYGAnbidgYCBhbmQgYGAnTidgYCBmb3JtYXRzLgorCiBOb3RlczoKIAogKDEpCkBAIC0yMTksMTEgKzIyNiwxNyBAQAogICAgICAgVXNlIG9mIHRoZSA6bWV0aDpgX19pbmRleF9fYCBtZXRob2QgZm9yIG5vbi1pbnRlZ2VycyBpcyBuZXcgaW4gMy4yLgogCiAoNCkKKyAgIFRoZSBgYCduJ2BgIGFuZCBgYCdOJ2BgIGNvbnZlcnNpb24gY29kZXMgYXJlIG9ubHkgYXZhaWxhYmxlIGZvciB0aGUgbmF0aXZlCisgICBzaXplIChzZWxlY3RlZCBhcyB0aGUgZGVmYXVsdCBvciB3aXRoIHRoZSBgYCdAJ2BgIGJ5dGUgb3JkZXIgY2hhcmFjdGVyKS4KKyAgIEZvciB0aGUgc3RhbmRhcmQgc2l6ZSwgeW91IGNhbiB1c2Ugd2hpY2hldmVyIG9mIHRoZSBvdGhlciBpbnRlZ2VyIGZvcm1hdHMKKyAgIGZpdHMgeW91ciBhcHBsaWNhdGlvbi4KKworKDUpCiAgICBGb3IgdGhlIGBgJ2YnYGAgYW5kIGBgJ2QnYGAgY29udmVyc2lvbiBjb2RlcywgdGhlIHBhY2tlZCByZXByZXNlbnRhdGlvbiB1c2VzCiAgICB0aGUgSUVFRSA3NTQgYmluYXJ5MzIgKGZvciBgYCdmJ2BgKSBvciBiaW5hcnk2NCAoZm9yIGBgJ2QnYGApIGZvcm1hdCwKICAgIHJlZ2FyZGxlc3Mgb2YgdGhlIGZsb2F0aW5nLXBvaW50IGZvcm1hdCB1c2VkIGJ5IHRoZSBwbGF0Zm9ybS4KIAotKDUpCisoNikKICAgIFRoZSBgYCdQJ2BgIGZvcm1hdCBjaGFyYWN0ZXIgaXMgb25seSBhdmFpbGFibGUgZm9yIHRoZSBuYXRpdmUgYnl0ZSBvcmRlcmluZwogICAgKHNlbGVjdGVkIGFzIHRoZSBkZWZhdWx0IG9yIHdpdGggdGhlIGBgJ0AnYGAgYnl0ZSBvcmRlciBjaGFyYWN0ZXIpLiBUaGUgYnl0ZQogICAgb3JkZXIgY2hhcmFjdGVyIGBgJz0nYGAgY2hvb3NlcyB0byB1c2UgbGl0dGxlLSBvciBiaWctZW5kaWFuIG9yZGVyaW5nIGJhc2VkCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS9zdWJwcm9jZXNzLnJzdCBiL0RvYy9saWJyYXJ5L3N1YnByb2Nlc3MucnN0CmluZGV4IDk3YzBlMDMuLjQyN2U0YTAgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3N1YnByb2Nlc3MucnN0CisrKyBiL0RvYy9saWJyYXJ5L3N1YnByb2Nlc3MucnN0CkBAIC0zMCwxNiArMzAsMjEgQEAKIHVzZSBjYXNlcywgdGhlIHVuZGVybHlpbmcgOmNsYXNzOmBQb3BlbmAgaW50ZXJmYWNlIGNhbiBiZSB1c2VkIGRpcmVjdGx5LgogCiAKLS4uIGZ1bmN0aW9uOjogY2FsbChhcmdzLCAqLCBzdGRpbj1Ob25lLCBzdGRvdXQ9Tm9uZSwgc3RkZXJyPU5vbmUsIHNoZWxsPUZhbHNlKQorLi4gZnVuY3Rpb246OiBjYWxsKGFyZ3MsICosIHN0ZGluPU5vbmUsIHN0ZG91dD1Ob25lLCBzdGRlcnI9Tm9uZSwgc2hlbGw9RmFsc2UsIHRpbWVvdXQ9Tm9uZSkKIAogICAgUnVuIHRoZSBjb21tYW5kIGRlc2NyaWJlZCBieSAqYXJncyouICBXYWl0IGZvciBjb21tYW5kIHRvIGNvbXBsZXRlLCB0aGVuCiAgICByZXR1cm4gdGhlIDphdHRyOmByZXR1cm5jb2RlYCBhdHRyaWJ1dGUuCiAKICAgIFRoZSBhcmd1bWVudHMgc2hvd24gYWJvdmUgYXJlIG1lcmVseSB0aGUgbW9zdCBjb21tb24gb25lcywgZGVzY3JpYmVkIGJlbG93Ci0gICBpbiA6cmVmOmBmcmVxdWVudGx5LXVzZWQtYXJndW1lbnRzYCAoaGVuY2UgdGhlIHNsaWdodGx5IG9kZCBub3RhdGlvbiBpbgotICAgdGhlIGFiYnJldmlhdGVkIHNpZ25hdHVyZSkuIFRoZSBmdWxsIGZ1bmN0aW9uIHNpZ25hdHVyZSBpcyB0aGUgc2FtZSBhcwotICAgdGhhdCBvZiB0aGUgOmNsYXNzOmBQb3BlbmAgY29uc3RydWN0b3IgLSB0aGlzIGZ1bmN0aW9ucyBwYXNzZXMgYWxsCi0gICBzdXBwbGllZCBhcmd1bWVudHMgZGlyZWN0bHkgdGhyb3VnaCB0byB0aGF0IGludGVyZmFjZS4KKyAgIGluIDpyZWY6YGZyZXF1ZW50bHktdXNlZC1hcmd1bWVudHNgIChoZW5jZSB0aGUgdXNlIG9mIGtleXdvcmQtb25seSBub3RhdGlvbgorICAgaW4gdGhlIGFiYnJldmlhdGVkIHNpZ25hdHVyZSkuIFRoZSBmdWxsIGZ1bmN0aW9uIHNpZ25hdHVyZSBpcyBsYXJnZWx5IHRoZQorICAgc2FtZSBhcyB0aGF0IG9mIHRoZSA6Y2xhc3M6YFBvcGVuYCBjb25zdHJ1Y3RvciAtIHRoaXMgZnVuY3Rpb24gcGFzc2VzIGFsbAorICAgc3VwcGxpZWQgYXJndW1lbnRzIG90aGVyIHRoYW4gKnRpbWVvdXQqIGRpcmVjdGx5IHRocm91Z2ggdG8gdGhhdCBpbnRlcmZhY2UuCisKKyAgIFRoZSAqdGltZW91dCogYXJndW1lbnQgaXMgcGFzc2VkIHRvIDptZXRoOmBQb3Blbi53YWl0YC4gSWYgdGhlIHRpbWVvdXQKKyAgIGV4cGlyZXMsIHRoZSBjaGlsZCBwcm9jZXNzIHdpbGwgYmUga2lsbGVkIGFuZCB0aGVuIHdhaXRlZCBmb3IgYWdhaW4uICBUaGUKKyAgIDpleGM6YFRpbWVvdXRFeHBpcmVkYCBleGNlcHRpb24gd2lsbCBiZSByZS1yYWlzZWQgYWZ0ZXIgdGhlIGNoaWxkIHByb2Nlc3MKKyAgIGhhcyB0ZXJtaW5hdGVkLgogCiAgICBFeGFtcGxlczo6CiAKQEAgLTYyLDggKzY3LDExIEBACiAgICAgICBwcm9jZXNzIG1heSBibG9jayBpZiBpdCBnZW5lcmF0ZXMgZW5vdWdoIG91dHB1dCB0byBhIHBpcGUgdG8gZmlsbCB1cAogICAgICAgdGhlIE9TIHBpcGUgYnVmZmVyLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgKnRpbWVvdXQqIHdhcyBhZGRlZC4KIAotLi4gZnVuY3Rpb246OiBjaGVja19jYWxsKGFyZ3MsICosIHN0ZGluPU5vbmUsIHN0ZG91dD1Ob25lLCBzdGRlcnI9Tm9uZSwgc2hlbGw9RmFsc2UpCisKKy4uIGZ1bmN0aW9uOjogY2hlY2tfY2FsbChhcmdzLCAqLCBzdGRpbj1Ob25lLCBzdGRvdXQ9Tm9uZSwgc3RkZXJyPU5vbmUsIHNoZWxsPUZhbHNlLCB0aW1lb3V0PU5vbmUpCiAKICAgIFJ1biBjb21tYW5kIHdpdGggYXJndW1lbnRzLiAgV2FpdCBmb3IgY29tbWFuZCB0byBjb21wbGV0ZS4gSWYgdGhlIHJldHVybgogICAgY29kZSB3YXMgemVybyB0aGVuIHJldHVybiwgb3RoZXJ3aXNlIHJhaXNlIDpleGM6YENhbGxlZFByb2Nlc3NFcnJvcmAuIFRoZQpAQCAtNzEsMTAgKzc5LDE1IEBACiAgICA6YXR0cjpgcmV0dXJuY29kZWAgYXR0cmlidXRlLgogCiAgICBUaGUgYXJndW1lbnRzIHNob3duIGFib3ZlIGFyZSBtZXJlbHkgdGhlIG1vc3QgY29tbW9uIG9uZXMsIGRlc2NyaWJlZCBiZWxvdwotICAgaW4gOnJlZjpgZnJlcXVlbnRseS11c2VkLWFyZ3VtZW50c2AgKGhlbmNlIHRoZSBzbGlnaHRseSBvZGQgbm90YXRpb24gaW4KLSAgIHRoZSBhYmJyZXZpYXRlZCBzaWduYXR1cmUpLiBUaGUgZnVsbCBmdW5jdGlvbiBzaWduYXR1cmUgaXMgdGhlIHNhbWUgYXMKLSAgIHRoYXQgb2YgdGhlIDpjbGFzczpgUG9wZW5gIGNvbnN0cnVjdG9yIC0gdGhpcyBmdW5jdGlvbnMgcGFzc2VzIGFsbAotICAgc3VwcGxpZWQgYXJndW1lbnRzIGRpcmVjdGx5IHRocm91Z2ggdG8gdGhhdCBpbnRlcmZhY2UuCisgICBpbiA6cmVmOmBmcmVxdWVudGx5LXVzZWQtYXJndW1lbnRzYCAoaGVuY2UgdGhlIHVzZSBvZiBrZXl3b3JkLW9ubHkgbm90YXRpb24KKyAgIGluIHRoZSBhYmJyZXZpYXRlZCBzaWduYXR1cmUpLiBUaGUgZnVsbCBmdW5jdGlvbiBzaWduYXR1cmUgaXMgbGFyZ2VseSB0aGUKKyAgIHNhbWUgYXMgdGhhdCBvZiB0aGUgOmNsYXNzOmBQb3BlbmAgY29uc3RydWN0b3IgLSB0aGlzIGZ1bmN0aW9uIHBhc3NlcyBhbGwKKyAgIHN1cHBsaWVkIGFyZ3VtZW50cyBvdGhlciB0aGFuICp0aW1lb3V0KiBkaXJlY3RseSB0aHJvdWdoIHRvIHRoYXQgaW50ZXJmYWNlLgorCisgICBUaGUgKnRpbWVvdXQqIGFyZ3VtZW50IGlzIHBhc3NlZCB0byA6bWV0aDpgUG9wZW4ud2FpdGAuIElmIHRoZSB0aW1lb3V0CisgICBleHBpcmVzLCB0aGUgY2hpbGQgcHJvY2VzcyB3aWxsIGJlIGtpbGxlZCBhbmQgdGhlbiB3YWl0ZWQgZm9yIGFnYWluLiAgVGhlCisgICA6ZXhjOmBUaW1lb3V0RXhwaXJlZGAgZXhjZXB0aW9uIHdpbGwgYmUgcmUtcmFpc2VkIGFmdGVyIHRoZSBjaGlsZCBwcm9jZXNzCisgICBoYXMgdGVybWluYXRlZC4KIAogICAgRXhhbXBsZXM6OgogCkBAIC04Niw4ICs5OSw2IEBACiAgICAgICAgICAuLi4KICAgICAgIHN1YnByb2Nlc3MuQ2FsbGVkUHJvY2Vzc0Vycm9yOiBDb21tYW5kICdleGl0IDEnIHJldHVybmVkIG5vbi16ZXJvIGV4aXQgc3RhdHVzIDEKIAotICAgLi4gdmVyc2lvbmFkZGVkOjogMi41Ci0KICAgIC4uIHdhcm5pbmc6OgogCiAgICAgICBJbnZva2luZyB0aGUgc3lzdGVtIHNoZWxsIHdpdGggYGBzaGVsbD1UcnVlYGAgY2FuIGJlIGEgc2VjdXJpdHkgaGF6YXJkCkBAIC0xMDEsOCArMTEyLDExIEBACiAgICAgICBwcm9jZXNzIG1heSBibG9jayBpZiBpdCBnZW5lcmF0ZXMgZW5vdWdoIG91dHB1dCB0byBhIHBpcGUgdG8gZmlsbCB1cAogICAgICAgdGhlIE9TIHBpcGUgYnVmZmVyLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgKnRpbWVvdXQqIHdhcyBhZGRlZC4KIAotLi4gZnVuY3Rpb246OiBjaGVja19vdXRwdXQoYXJncywgKiwgc3RkaW49Tm9uZSwgc3RkZXJyPU5vbmUsIHNoZWxsPUZhbHNlLCB1bml2ZXJzYWxfbmV3bGluZXM9RmFsc2UpCisKKy4uIGZ1bmN0aW9uOjogY2hlY2tfb3V0cHV0KGFyZ3MsICosIHN0ZGluPU5vbmUsIHN0ZGVycj1Ob25lLCBzaGVsbD1GYWxzZSwgdW5pdmVyc2FsX25ld2xpbmVzPUZhbHNlLCB0aW1lb3V0PU5vbmUpCiAKICAgIFJ1biBjb21tYW5kIHdpdGggYXJndW1lbnRzIGFuZCByZXR1cm4gaXRzIG91dHB1dCBhcyBhIGJ5dGUgc3RyaW5nLgogCkBAIC0xMTIsMTEgKzEyNiwxNyBAQAogICAgYXR0cmlidXRlLgogCiAgICBUaGUgYXJndW1lbnRzIHNob3duIGFib3ZlIGFyZSBtZXJlbHkgdGhlIG1vc3QgY29tbW9uIG9uZXMsIGRlc2NyaWJlZCBiZWxvdwotICAgaW4gOnJlZjpgZnJlcXVlbnRseS11c2VkLWFyZ3VtZW50c2AgKGhlbmNlIHRoZSBzbGlnaHRseSBvZGQgbm90YXRpb24gaW4KLSAgIHRoZSBhYmJyZXZpYXRlZCBzaWduYXR1cmUpLiBUaGUgZnVsbCBmdW5jdGlvbiBzaWduYXR1cmUgaXMgbGFyZ2VseSB0aGUKLSAgIHNhbWUgYXMgdGhhdCBvZiB0aGUgOmNsYXNzOmBQb3BlbmAgY29uc3RydWN0b3IsIGV4Y2VwdCB0aGF0ICpzdGRvdXQqIGlzCi0gICBub3QgcGVybWl0dGVkIGFzIGl0IGlzIHVzZWQgaW50ZXJuYWxseS4gQWxsIG90aGVyIHN1cHBsaWVkIGFyZ3VtZW50cyBhcmUKLSAgIHBhc3NlZCBkaXJlY3RseSB0aHJvdWdoIHRvIHRoZSA6Y2xhc3M6YFBvcGVuYCBjb25zdHJ1Y3Rvci4KKyAgIGluIDpyZWY6YGZyZXF1ZW50bHktdXNlZC1hcmd1bWVudHNgIChoZW5jZSB0aGUgdXNlIG9mIGtleXdvcmQtb25seSBub3RhdGlvbgorICAgaW4gdGhlIGFiYnJldmlhdGVkIHNpZ25hdHVyZSkuIFRoZSBmdWxsIGZ1bmN0aW9uIHNpZ25hdHVyZSBpcyBsYXJnZWx5IHRoZQorICAgc2FtZSBhcyB0aGF0IG9mIHRoZSA6Y2xhc3M6YFBvcGVuYCBjb25zdHJ1Y3RvciAtIHRoaXMgZnVuY3Rpb25zIHBhc3NlcyBhbGwKKyAgIHN1cHBsaWVkIGFyZ3VtZW50cyBvdGhlciB0aGFuICp0aW1lb3V0KiBkaXJlY3RseSB0aHJvdWdoIHRvIHRoYXQgaW50ZXJmYWNlLgorICAgSW4gYWRkaXRpb24sICpzdGRvdXQqIGlzIG5vdCBwZXJtaXR0ZWQgYXMgYW4gYXJndW1lbnQsIGFzIGl0IGlzIHVzZWQKKyAgIGludGVybmFsbHkgdG8gY29sbGVjdCB0aGUgb3V0cHV0IGZyb20gdGhlIHN1YnByb2Nlc3MuCisKKyAgIFRoZSAqdGltZW91dCogYXJndW1lbnQgaXMgcGFzc2VkIHRvIDptZXRoOmBQb3Blbi53YWl0YC4gSWYgdGhlIHRpbWVvdXQKKyAgIGV4cGlyZXMsIHRoZSBjaGlsZCBwcm9jZXNzIHdpbGwgYmUga2lsbGVkIGFuZCB0aGVuIHdhaXRlZCBmb3IgYWdhaW4uICBUaGUKKyAgIDpleGM6YFRpbWVvdXRFeHBpcmVkYCBleGNlcHRpb24gd2lsbCBiZSByZS1yYWlzZWQgYWZ0ZXIgdGhlIGNoaWxkIHByb2Nlc3MKKyAgIGhhcyB0ZXJtaW5hdGVkLgogCiAgICBFeGFtcGxlczo6CiAKQEAgLTE0Nyw3ICsxNjcsNyBAQAogICAgICAgLi4uICAgICBzaGVsbD1UcnVlKQogICAgICAgJ2xzOiBub25fZXhpc3RlbnRfZmlsZTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeVxuJwogCi0gICAuLiB2ZXJzaW9uYWRkZWQ6OiAyLjcKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMQogCiAgICAuLiB3YXJuaW5nOjoKIApAQCAtMTYxLDYgKzE4MSwxOCBAQAogICAgICAgcmVhZCBpbiB0aGUgY3VycmVudCBwcm9jZXNzLCB0aGUgY2hpbGQgcHJvY2VzcyBtYXkgYmxvY2sgaWYgaXQKICAgICAgIGdlbmVyYXRlcyBlbm91Z2ggb3V0cHV0IHRvIHRoZSBwaXBlIHRvIGZpbGwgdXAgdGhlIE9TIHBpcGUgYnVmZmVyLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgKnRpbWVvdXQqIHdhcyBhZGRlZC4KKworCisuLiBkYXRhOjogREVWTlVMTAorCisgICBTcGVjaWFsIHZhbHVlIHRoYXQgY2FuIGJlIHVzZWQgYXMgdGhlICpzdGRpbiosICpzdGRvdXQqIG9yICpzdGRlcnIqIGFyZ3VtZW50CisgICB0byA6Y2xhc3M6YFBvcGVuYCBhbmQgaW5kaWNhdGVzIHRoYXQgdGhlIHNwZWNpYWwgZmlsZSA6ZGF0YTpgb3MuZGV2bnVsbGAKKyAgIHdpbGwgYmUgdXNlZC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKIAogLi4gZGF0YTo6IFBJUEUKIApAQCAtMTk2LDEzICsyMjgsMTQgQEAKIAogICAgKnN0ZGluKiwgKnN0ZG91dCogYW5kICpzdGRlcnIqIHNwZWNpZnkgdGhlIGV4ZWN1dGVkIHByb2dyYW0ncyBzdGFuZGFyZCBpbnB1dCwKICAgIHN0YW5kYXJkIG91dHB1dCBhbmQgc3RhbmRhcmQgZXJyb3IgZmlsZSBoYW5kbGVzLCByZXNwZWN0aXZlbHkuICBWYWxpZCB2YWx1ZXMKLSAgIGFyZSA6ZGF0YTpgUElQRWAsIGFuIGV4aXN0aW5nIGZpbGUgZGVzY3JpcHRvciAoYSBwb3NpdGl2ZSBpbnRlZ2VyKSwgYW4KLSAgIGV4aXN0aW5nIGZpbGUgb2JqZWN0LCBhbmQgYGBOb25lYGAuICA6ZGF0YTpgUElQRWAgaW5kaWNhdGVzIHRoYXQgYSBuZXcgcGlwZQotICAgdG8gdGhlIGNoaWxkIHNob3VsZCBiZSBjcmVhdGVkLiAgV2l0aCB0aGUgZGVmYXVsdCBzZXR0aW5ncyBvZiBgYE5vbmVgYCwgbm8KLSAgIHJlZGlyZWN0aW9uIHdpbGwgb2NjdXI7IHRoZSBjaGlsZCdzIGZpbGUgaGFuZGxlcyB3aWxsIGJlIGluaGVyaXRlZCBmcm9tIHRoZQotICAgcGFyZW50LiAgQWRkaXRpb25hbGx5LCAqc3RkZXJyKiBjYW4gYmUgOmRhdGE6YFNURE9VVGAsIHdoaWNoIGluZGljYXRlcyB0aGF0Ci0gICB0aGUgc3RkZXJyIGRhdGEgZnJvbSB0aGUgY2hpbGQgcHJvY2VzcyBzaG91bGQgYmUgY2FwdHVyZWQgaW50byB0aGUgc2FtZSBmaWxlCi0gICBoYW5kbGUgYXMgZm9yIHN0ZG91dC4KKyAgIGFyZSA6ZGF0YTpgUElQRWAsIDpkYXRhOmBERVZOVUxMYCwgYW4gZXhpc3RpbmcgZmlsZSBkZXNjcmlwdG9yIChhIHBvc2l0aXZlCisgICBpbnRlZ2VyKSwgYW4gZXhpc3RpbmcgZmlsZSBvYmplY3QsIGFuZCBgYE5vbmVgYC4gIDpkYXRhOmBQSVBFYCBpbmRpY2F0ZXMKKyAgIHRoYXQgYSBuZXcgcGlwZSB0byB0aGUgY2hpbGQgc2hvdWxkIGJlIGNyZWF0ZWQuICA6ZGF0YTpgREVWTlVMTGAgaW5kaWNhdGVzCisgICB0aGF0IHRoZSBzcGVjaWFsIGZpbGUgOmRhdGE6YG9zLmRldm51bGxgIHdpbGwgYmUgdXNlZC4gIFdpdGggdGhlIGRlZmF1bHQKKyAgIHNldHRpbmdzIG9mIGBgTm9uZWBgLCBubyByZWRpcmVjdGlvbiB3aWxsIG9jY3VyOyB0aGUgY2hpbGQncyBmaWxlIGhhbmRsZXMKKyAgIHdpbGwgYmUgaW5oZXJpdGVkIGZyb20gdGhlIHBhcmVudC4gIEFkZGl0aW9uYWxseSwgKnN0ZGVyciogY2FuIGJlCisgICA6ZGF0YTpgU1RET1VUYCwgd2hpY2ggaW5kaWNhdGVzIHRoYXQgdGhlIHN0ZGVyciBkYXRhIGZyb20gdGhlIGNoaWxkCisgICBwcm9jZXNzIHNob3VsZCBiZSBjYXB0dXJlZCBpbnRvIHRoZSBzYW1lIGZpbGUgaGFuZGxlIGFzIGZvciAqc3Rkb3V0Ki4KIAogICAgV2hlbiAqc3Rkb3V0KiBvciAqc3RkZXJyKiBhcmUgcGlwZXMgYW5kICp1bml2ZXJzYWxfbmV3bGluZXMqIGlzCiAgICA6Y29uc3Q6YFRydWVgIHRoZW4gdGhlIG91dHB1dCBkYXRhIGlzIGFzc3VtZWQgdG8gYmUgZW5jb2RlZCBhcyBVVEYtOCBhbmQKQEAgLTMzMSwxMyArMzY0LDE0IEBACiAKICAgICpzdGRpbiosICpzdGRvdXQqIGFuZCAqc3RkZXJyKiBzcGVjaWZ5IHRoZSBleGVjdXRlZCBwcm9ncmFtJ3Mgc3RhbmRhcmQgaW5wdXQsCiAgICBzdGFuZGFyZCBvdXRwdXQgYW5kIHN0YW5kYXJkIGVycm9yIGZpbGUgaGFuZGxlcywgcmVzcGVjdGl2ZWx5LiAgVmFsaWQgdmFsdWVzCi0gICBhcmUgOmRhdGE6YFBJUEVgLCBhbiBleGlzdGluZyBmaWxlIGRlc2NyaXB0b3IgKGEgcG9zaXRpdmUgaW50ZWdlciksIGFuCi0gICBleGlzdGluZyA6dGVybTpgZmlsZSBvYmplY3RgLCBhbmQgYGBOb25lYGAuICA6ZGF0YTpgUElQRWAgaW5kaWNhdGVzIHRoYXQgYQotICAgbmV3IHBpcGUgdG8gdGhlIGNoaWxkIHNob3VsZCBiZSBjcmVhdGVkLiAgV2l0aCB0aGUgZGVmYXVsdCBzZXR0aW5ncyBvZgotICAgYGBOb25lYGAsIG5vIHJlZGlyZWN0aW9uIHdpbGwgb2NjdXI7IHRoZSBjaGlsZCdzIGZpbGUgaGFuZGxlcyB3aWxsIGJlCi0gICBpbmhlcml0ZWQgZnJvbSB0aGUgcGFyZW50LiAgQWRkaXRpb25hbGx5LCAqc3RkZXJyKiBjYW4gYmUgOmRhdGE6YFNURE9VVGAsCi0gICB3aGljaCBpbmRpY2F0ZXMgdGhhdCB0aGUgc3RkZXJyIGRhdGEgZnJvbSB0aGUgYXBwbGljYXRpb25zIHNob3VsZCBiZQotICAgY2FwdHVyZWQgaW50byB0aGUgc2FtZSBmaWxlIGhhbmRsZSBhcyBmb3Igc3Rkb3V0LgorICAgYXJlIDpkYXRhOmBQSVBFYCwgOmRhdGE6YERFVk5VTExgLCBhbiBleGlzdGluZyBmaWxlIGRlc2NyaXB0b3IgKGEgcG9zaXRpdmUKKyAgIGludGVnZXIpLCBhbiBleGlzdGluZyA6dGVybTpgZmlsZSBvYmplY3RgLCBhbmQgYGBOb25lYGAuICA6ZGF0YTpgUElQRWAKKyAgIGluZGljYXRlcyB0aGF0IGEgbmV3IHBpcGUgdG8gdGhlIGNoaWxkIHNob3VsZCBiZSBjcmVhdGVkLiAgOmRhdGE6YERFVk5VTExgCisgICBpbmRpY2F0ZXMgdGhhdCB0aGUgc3BlY2lhbCBmaWxlIDpkYXRhOmBvcy5kZXZudWxsYCB3aWxsIGJlIHVzZWQuIFdpdGggdGhlCisgICBkZWZhdWx0IHNldHRpbmdzIG9mIGBgTm9uZWBgLCBubyByZWRpcmVjdGlvbiB3aWxsIG9jY3VyOyB0aGUgY2hpbGQncyBmaWxlCisgICBoYW5kbGVzIHdpbGwgYmUgaW5oZXJpdGVkIGZyb20gdGhlIHBhcmVudC4gIEFkZGl0aW9uYWxseSwgKnN0ZGVyciogY2FuIGJlCisgICA6ZGF0YTpgU1RET1VUYCwgd2hpY2ggaW5kaWNhdGVzIHRoYXQgdGhlIHN0ZGVyciBkYXRhIGZyb20gdGhlIGFwcGxpY2F0aW9ucworICAgc2hvdWxkIGJlIGNhcHR1cmVkIGludG8gdGhlIHNhbWUgZmlsZSBoYW5kbGUgYXMgZm9yIHN0ZG91dC4KIAogICAgSWYgKnByZWV4ZWNfZm4qIGlzIHNldCB0byBhIGNhbGxhYmxlIG9iamVjdCwgdGhpcyBvYmplY3Qgd2lsbCBiZSBjYWxsZWQgaW4gdGhlCiAgICBjaGlsZCBwcm9jZXNzIGp1c3QgYmVmb3JlIHRoZSBjaGlsZCBpcyBleGVjdXRlZC4KQEAgLTQ1Niw2ICs0OTAsMTUgQEAKIDpleGM6YENhbGxlZFByb2Nlc3NFcnJvcmAgaWYgdGhlIGNhbGxlZCBwcm9jZXNzIHJldHVybnMgYSBub24temVybyByZXR1cm4KIGNvZGUuCiAKK0FsbCBvZiB0aGUgZnVuY3Rpb25zIGFuZCBtZXRob2RzIHRoYXQgYWNjZXB0IGEgKnRpbWVvdXQqIHBhcmFtZXRlciwgc3VjaCBhcworOmZ1bmM6YGNhbGxgIGFuZCA6bWV0aDpgUG9wZW4uY29tbXVuaWNhdGVgIHdpbGwgcmFpc2UgOmV4YzpgVGltZW91dEV4cGlyZWRgIGlmCit0aGUgdGltZW91dCBleHBpcmVzIGJlZm9yZSB0aGUgcHJvY2VzcyBleGl0cy4KKworRXhjZXB0aW9ucyBkZWZpbmVkIGluIHRoaXMgbW9kdWxlIGFsbCBpbmhlcml0IGZyb20gOmV4YzpgU3VicHJvY2Vzc0Vycm9yYC4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisgICAgICBUaGUgOmV4YzpgU3VicHJvY2Vzc0Vycm9yYCBiYXNlIGNsYXNzIHdhcyBhZGRlZC4KKwogCiBTZWN1cml0eQogXl5eXl5eXl4KQEAgLTQ3OSwxMSArNTIyLDE1IEBACiAgICBhdHRyaWJ1dGUuCiAKIAotLi4gbWV0aG9kOjogUG9wZW4ud2FpdCgpCisuLiBtZXRob2Q6OiBQb3Blbi53YWl0KHRpbWVvdXQ9Tm9uZSkKIAogICAgV2FpdCBmb3IgY2hpbGQgcHJvY2VzcyB0byB0ZXJtaW5hdGUuICBTZXQgYW5kIHJldHVybiA6YXR0cjpgcmV0dXJuY29kZWAKICAgIGF0dHJpYnV0ZS4KIAorICAgSWYgdGhlIHByb2Nlc3MgZG9lcyBub3QgdGVybWluYXRlIGFmdGVyICp0aW1lb3V0KiBzZWNvbmRzLCByYWlzZSBhCisgICA6ZXhjOmBUaW1lb3V0RXhwaXJlZGAgZXhjZXB0aW9uLiAgSXQgaXMgc2FmZSB0byBjYXRjaCB0aGlzIGV4Y2VwdGlvbiBhbmQKKyAgIHJldHJ5IHRoZSB3YWl0LgorCiAgICAuLiB3YXJuaW5nOjoKIAogICAgICAgVGhpcyB3aWxsIGRlYWRsb2NrIHdoZW4gdXNpbmcgYGBzdGRvdXQ9UElQRWBgIGFuZC9vcgpAQCAtNDkxLDEzICs1MzgsMTcgQEAKICAgICAgIGEgcGlwZSBzdWNoIHRoYXQgaXQgYmxvY2tzIHdhaXRpbmcgZm9yIHRoZSBPUyBwaXBlIGJ1ZmZlciB0bwogICAgICAgYWNjZXB0IG1vcmUgZGF0YS4gIFVzZSA6bWV0aDpgY29tbXVuaWNhdGVgIHRvIGF2b2lkIHRoYXQuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICAqdGltZW91dCogd2FzIGFkZGVkLgogCi0uLiBtZXRob2Q6OiBQb3Blbi5jb21tdW5pY2F0ZShpbnB1dD1Ob25lKQorCisuLiBtZXRob2Q6OiBQb3Blbi5jb21tdW5pY2F0ZShpbnB1dD1Ob25lLCB0aW1lb3V0PU5vbmUpCiAKICAgIEludGVyYWN0IHdpdGggcHJvY2VzczogU2VuZCBkYXRhIHRvIHN0ZGluLiAgUmVhZCBkYXRhIGZyb20gc3Rkb3V0IGFuZCBzdGRlcnIsCi0gICB1bnRpbCBlbmQtb2YtZmlsZSBpcyByZWFjaGVkLiAgV2FpdCBmb3IgcHJvY2VzcyB0byB0ZXJtaW5hdGUuIFRoZSBvcHRpb25hbAotICAgKmlucHV0KiBhcmd1bWVudCBzaG91bGQgYmUgYSBieXRlIHN0cmluZyB0byBiZSBzZW50IHRvIHRoZSBjaGlsZCBwcm9jZXNzLCBvcgotICAgYGBOb25lYGAsIGlmIG5vIGRhdGEgc2hvdWxkIGJlIHNlbnQgdG8gdGhlIGNoaWxkLgorICAgdW50aWwgZW5kLW9mLWZpbGUgaXMgcmVhY2hlZC4gIFdhaXQgZm9yIHByb2Nlc3MgdG8gdGVybWluYXRlLiAgVGhlIG9wdGlvbmFsCisgICAqaW5wdXQqIGFyZ3VtZW50IHNob3VsZCBiZSBkYXRhIHRvIGJlIHNlbnQgdG8gdGhlIGNoaWxkIHByb2Nlc3MsIG9yCisgICBgYE5vbmVgYCwgaWYgbm8gZGF0YSBzaG91bGQgYmUgc2VudCB0byB0aGUgY2hpbGQuICBUaGUgdHlwZSBvZiAqaW5wdXQqCisgICBtdXN0IGJlIGJ5dGVzIG9yLCBpZiAqdW5pdmVyc2FsX25ld2xpbmVzKiB3YXMgYGBUcnVlYGAsIGEgc3RyaW5nLgogCiAgICA6bWV0aDpgY29tbXVuaWNhdGVgIHJldHVybnMgYSB0dXBsZSBgYChzdGRvdXRkYXRhLCBzdGRlcnJkYXRhKWBgLgogCkBAIC01MDYsMTEgKzU1NywyOSBAQAogICAgYGBOb25lYGAgaW4gdGhlIHJlc3VsdCB0dXBsZSwgeW91IG5lZWQgdG8gZ2l2ZSBgYHN0ZG91dD1QSVBFYGAgYW5kL29yCiAgICBgYHN0ZGVycj1QSVBFYGAgdG9vLgogCisgICBJZiB0aGUgcHJvY2VzcyBkb2VzIG5vdCB0ZXJtaW5hdGUgYWZ0ZXIgKnRpbWVvdXQqIHNlY29uZHMsIGEKKyAgIDpleGM6YFRpbWVvdXRFeHBpcmVkYCBleGNlcHRpb24gd2lsbCBiZSByYWlzZWQuICBDYXRjaGluZyB0aGlzIGV4Y2VwdGlvbiBhbmQKKyAgIHJldHJ5aW5nIGNvbW11bmljYXRpb24gd2lsbCBub3QgbG9zZSBhbnkgb3V0cHV0LgorCisgICBUaGUgY2hpbGQgcHJvY2VzcyBpcyBub3Qga2lsbGVkIGlmIHRoZSB0aW1lb3V0IGV4cGlyZXMsIHNvIGluIG9yZGVyIHRvCisgICBjbGVhbnVwIHByb3Blcmx5IGEgd2VsbC1iZWhhdmVkIGFwcGxpY2F0aW9uIHNob3VsZCBraWxsIHRoZSBjaGlsZCBwcm9jZXNzIGFuZAorICAgZmluaXNoIGNvbW11bmljYXRpb246OgorCisgICAgICBwcm9jID0gc3VicHJvY2Vzcy5Qb3BlbiguLi4pCisgICAgICB0cnk6CisgICAgICAgICAgb3V0cywgZXJycyA9IHByb2MuY29tbXVuaWNhdGUodGltZW91dD0xNSkKKyAgICAgIGV4Y2VwdCBUaW1lb3V0RXhwaXJlZDoKKyAgICAgICAgICBwcm9jLmtpbGwoKQorICAgICAgICAgIG91dHMsIGVycnMgPSBwcm9jLmNvbW11bmljYXRlKCkKKwogICAgLi4gbm90ZTo6CiAKICAgICAgIFRoZSBkYXRhIHJlYWQgaXMgYnVmZmVyZWQgaW4gbWVtb3J5LCBzbyBkbyBub3QgdXNlIHRoaXMgbWV0aG9kIGlmIHRoZSBkYXRhCiAgICAgICBzaXplIGlzIGxhcmdlIG9yIHVubGltaXRlZC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICp0aW1lb3V0KiB3YXMgYWRkZWQuCisKIAogLi4gbWV0aG9kOjogUG9wZW4uc2VuZF9zaWduYWwoc2lnbmFsKQogCkBAIC05NTIsMyArMTAyMSw5IEBACiAgICBiYWNrc2xhc2guICBJZiB0aGUgbnVtYmVyIG9mIGJhY2tzbGFzaGVzIGlzIG9kZCwgdGhlIGxhc3QKICAgIGJhY2tzbGFzaCBlc2NhcGVzIHRoZSBuZXh0IGRvdWJsZSBxdW90YXRpb24gbWFyayBhcwogICAgZGVzY3JpYmVkIGluIHJ1bGUgMy4KKworCisuLiBzZWVhbHNvOjoKKworICAgOm1vZDpgc2hsZXhgCisgICAgICBNb2R1bGUgd2hpY2ggcHJvdmlkZXMgZnVuY3Rpb24gdG8gcGFyc2UgYW5kIGVzY2FwZSBjb21tYW5kIGxpbmVzLgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvc3lzLnJzdCBiL0RvYy9saWJyYXJ5L3N5cy5yc3QKaW5kZXggZDYxMWFjZi4uYzJiNzQyMyAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvc3lzLnJzdAorKysgYi9Eb2MvbGlicmFyeS9zeXMucnN0CkBAIC0yMzUsMTQgKzIzNSwxMyBAQAogCiAuLiBkYXRhOjogZmxhZ3MKIAotICAgVGhlIHN0cnVjdCBzZXF1ZW5jZSAqZmxhZ3MqIGV4cG9zZXMgdGhlIHN0YXR1cyBvZiBjb21tYW5kIGxpbmUgZmxhZ3MuIFRoZQotICAgYXR0cmlidXRlcyBhcmUgcmVhZCBvbmx5LgorICAgVGhlIDp0ZXJtOmBzdHJ1Y3Qgc2VxdWVuY2VgICpmbGFncyogZXhwb3NlcyB0aGUgc3RhdHVzIG9mIGNvbW1hbmQgbGluZQorICAgZmxhZ3MuIFRoZSBhdHRyaWJ1dGVzIGFyZSByZWFkIG9ubHkuCiAKICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICBhdHRyaWJ1dGUgICAgICAgICAgICAgICAgICAgICBmbGFnCiAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICAgOmNvbnN0OmBkZWJ1Z2AgICAgICAgICAgICAgICAgOm9wdGlvbjpgLWRgCi0gICA6Y29uc3Q6YGRpdmlzaW9uX3dhcm5pbmdgICAgICA6b3B0aW9uOmAtUWAKICAgIDpjb25zdDpgaW5zcGVjdGAgICAgICAgICAgICAgIDpvcHRpb246YC1pYAogICAgOmNvbnN0OmBpbnRlcmFjdGl2ZWAgICAgICAgICAgOm9wdGlvbjpgLWlgCiAgICA6Y29uc3Q6YG9wdGltaXplYCAgICAgICAgICAgICA6b3B0aW9uOmAtT2Agb3IgOm9wdGlvbjpgLU9PYApAQCAtMjU4LDE1ICsyNTcsMTggQEAKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yCiAgICAgICBBZGRlZCBgYHF1aWV0YGAgYXR0cmlidXRlIGZvciB0aGUgbmV3IDpvcHRpb246YC1xYCBmbGFnLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgUmVtb3ZlZCBvYnNvbGV0ZSBgYGRpdmlzaW9uX3dhcm5pbmdgYCBhdHRyaWJ1dGUuCisKIAogLi4gZGF0YTo6IGZsb2F0X2luZm8KIAotICAgQSBzdHJ1Y3RzZXEgaG9sZGluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZmxvYXQgdHlwZS4gSXQgY29udGFpbnMgbG93IGxldmVsCi0gICBpbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJlY2lzaW9uIGFuZCBpbnRlcm5hbCByZXByZXNlbnRhdGlvbi4gIFRoZSB2YWx1ZXMKLSAgIGNvcnJlc3BvbmQgdG8gdGhlIHZhcmlvdXMgZmxvYXRpbmctcG9pbnQgY29uc3RhbnRzIGRlZmluZWQgaW4gdGhlIHN0YW5kYXJkCi0gICBoZWFkZXIgZmlsZSA6ZmlsZTpgZmxvYXQuaGAgZm9yIHRoZSAnQycgcHJvZ3JhbW1pbmcgbGFuZ3VhZ2U7IHNlZSBzZWN0aW9uCi0gICA1LjIuNC4yLjIgb2YgdGhlIDE5OTkgSVNPL0lFQyBDIHN0YW5kYXJkIFtDOTldXywgJ0NoYXJhY3RlcmlzdGljcyBvZgotICAgZmxvYXRpbmcgdHlwZXMnLCBmb3IgZGV0YWlscy4KKyAgIEEgOnRlcm06YHN0cnVjdCBzZXF1ZW5jZWAgaG9sZGluZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZmxvYXQgdHlwZS4gSXQKKyAgIGNvbnRhaW5zIGxvdyBsZXZlbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJlY2lzaW9uIGFuZCBpbnRlcm5hbAorICAgcmVwcmVzZW50YXRpb24uICBUaGUgdmFsdWVzIGNvcnJlc3BvbmQgdG8gdGhlIHZhcmlvdXMgZmxvYXRpbmctcG9pbnQKKyAgIGNvbnN0YW50cyBkZWZpbmVkIGluIHRoZSBzdGFuZGFyZCBoZWFkZXIgZmlsZSA6ZmlsZTpgZmxvYXQuaGAgZm9yIHRoZSAnQycKKyAgIHByb2dyYW1taW5nIGxhbmd1YWdlOyBzZWUgc2VjdGlvbiA1LjIuNC4yLjIgb2YgdGhlIDE5OTkgSVNPL0lFQyBDIHN0YW5kYXJkCisgICBbQzk5XV8sICdDaGFyYWN0ZXJpc3RpY3Mgb2YgZmxvYXRpbmcgdHlwZXMnLCBmb3IgZGV0YWlscy4KIAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCBhdHRyaWJ1dGUgICAgICAgICAgIHwgZmxvYXQuaCBtYWNybyAgfCBleHBsYW5hdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfApAQCAtNTE2LDggKzUxOCw5IEBACiAKIC4uIGRhdGE6OiBoYXNoX2luZm8KIAotICAgQSBzdHJ1Y3RzZXEgZ2l2aW5nIHBhcmFtZXRlcnMgb2YgdGhlIG51bWVyaWMgaGFzaCBpbXBsZW1lbnRhdGlvbi4gIEZvcgotICAgbW9yZSBkZXRhaWxzIGFib3V0IGhhc2hpbmcgb2YgbnVtZXJpYyB0eXBlcywgc2VlIDpyZWY6YG51bWVyaWMtaGFzaGAuCisgICBBIDp0ZXJtOmBzdHJ1Y3Qgc2VxdWVuY2VgIGdpdmluZyBwYXJhbWV0ZXJzIG9mIHRoZSBudW1lcmljIGhhc2gKKyAgIGltcGxlbWVudGF0aW9uLiAgRm9yIG1vcmUgZGV0YWlscyBhYm91dCBoYXNoaW5nIG9mIG51bWVyaWMgdHlwZXMsIHNlZQorICAgOnJlZjpgbnVtZXJpYy1oYXNoYC4KIAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKICAgIHwgYXR0cmlidXRlICAgICAgICAgICB8IGV4cGxhbmF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CkBAIC01NTIsOCArNTU1LDggQEAKIAogICAgVGhpcyBpcyBjYWxsZWQgYGBoZXh2ZXJzaW9uYGAgc2luY2UgaXQgb25seSByZWFsbHkgbG9va3MgbWVhbmluZ2Z1bCB3aGVuIHZpZXdlZAogICAgYXMgdGhlIHJlc3VsdCBvZiBwYXNzaW5nIGl0IHRvIHRoZSBidWlsdC1pbiA6ZnVuYzpgaGV4YCBmdW5jdGlvbi4gIFRoZQotICAgc3RydWN0IHNlcXVlbmNlICA6ZGF0YTpgc3lzLnZlcnNpb25faW5mb2AgbWF5IGJlIHVzZWQgZm9yIGEgbW9yZSBodW1hbi1mcmllbmRseQotICAgZW5jb2Rpbmcgb2YgdGhlIHNhbWUgaW5mb3JtYXRpb24uCisgICA6dGVybTpgc3RydWN0IHNlcXVlbmNlYCAgOmRhdGE6YHN5cy52ZXJzaW9uX2luZm9gIG1heSBiZSB1c2VkIGZvciBhIG1vcmUKKyAgIGh1bWFuLWZyaWVuZGx5IGVuY29kaW5nIG9mIHRoZSBzYW1lIGluZm9ybWF0aW9uLgogCiAgICBUaGUgYGBoZXh2ZXJzaW9uYGAgaXMgYSAzMi1iaXQgbnVtYmVyIHdpdGggdGhlIGZvbGxvd2luZyBsYXlvdXQ6CiAKQEAgLTU4MSw4ICs1ODQsOCBAQAogCiAuLiBkYXRhOjogaW50X2luZm8KIAotICAgQSBzdHJ1Y3Qgc2VxdWVuY2UgdGhhdCBob2xkcyBpbmZvcm1hdGlvbiBhYm91dCBQeXRob24ncwotICAgaW50ZXJuYWwgcmVwcmVzZW50YXRpb24gb2YgaW50ZWdlcnMuICBUaGUgYXR0cmlidXRlcyBhcmUgcmVhZCBvbmx5LgorICAgQSA6dGVybTpgc3RydWN0IHNlcXVlbmNlYCB0aGF0IGhvbGRzIGluZm9ybWF0aW9uIGFib3V0IFB5dGhvbidzIGludGVybmFsCisgICByZXByZXNlbnRhdGlvbiBvZiBpbnRlZ2Vycy4gIFRoZSBhdHRyaWJ1dGVzIGFyZSByZWFkIG9ubHkuCiAKICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICB8IEF0dHJpYnV0ZSAgICAgICAgICAgICAgIHwgRXhwbGFuYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfApAQCAtNjM3LDkgKzY0MCwxMyBAQAogCiAuLiBkYXRhOjogbWF4dW5pY29kZQogCi0gICBBbiBpbnRlZ2VyIGdpdmluZyB0aGUgbGFyZ2VzdCBzdXBwb3J0ZWQgY29kZSBwb2ludCBmb3IgYSBVbmljb2RlIGNoYXJhY3Rlci4gIFRoZQotICAgdmFsdWUgb2YgdGhpcyBkZXBlbmRzIG9uIHRoZSBjb25maWd1cmF0aW9uIG9wdGlvbiB0aGF0IHNwZWNpZmllcyB3aGV0aGVyIFVuaWNvZGUKLSAgIGNoYXJhY3RlcnMgYXJlIHN0b3JlZCBhcyBVQ1MtMiBvciBVQ1MtNC4KKyAgIEFuIGludGVnZXIgZ2l2aW5nIHRoZSB2YWx1ZSBvZiB0aGUgbGFyZ2VzdCBVbmljb2RlIGNvZGUgcG9pbnQsCisgICBpLmUuIGBgMTExNDExMWBgIChgYDB4MTBGRkZGYGAgaW4gaGV4YWRlY2ltYWwpLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQmVmb3JlIDpwZXA6YDM5M2AsIGBgc3lzLm1heHVuaWNvZGVgYCB1c2VkIHRvIGJlIGVpdGhlciBgYDB4RkZGRmBgCisgICAgICBvciBgYDB4MTBGRkZGYGAsIGRlcGVuZGluZyBvbiB0aGUgY29uZmlndXJhdGlvbiBvcHRpb24gdGhhdCBzcGVjaWZpZWQKKyAgICAgIHdoZXRoZXIgVW5pY29kZSBjaGFyYWN0ZXJzIHdlcmUgc3RvcmVkIGFzIFVDUy0yIG9yIFVDUy00LgogCiAKIC4uIGRhdGE6OiBtZXRhX3BhdGgKQEAgLTcxNCwzNiArNzIxLDM1IEBACiAgICBUaGlzIHN0cmluZyBjb250YWlucyBhIHBsYXRmb3JtIGlkZW50aWZpZXIgdGhhdCBjYW4gYmUgdXNlZCB0byBhcHBlbmQKICAgIHBsYXRmb3JtLXNwZWNpZmljIGNvbXBvbmVudHMgdG8gOmRhdGE6YHN5cy5wYXRoYCwgZm9yIGluc3RhbmNlLgogCi0gICBGb3IgbW9zdCBVbml4IHN5c3RlbXMsIHRoaXMgaXMgdGhlIGxvd2VyY2FzZWQgT1MgbmFtZSBhcyByZXR1cm5lZCBieSBgYHVuYW1lCi0gICAtc2BgIHdpdGggdGhlIGZpcnN0IHBhcnQgb2YgdGhlIHZlcnNpb24gYXMgcmV0dXJuZWQgYnkgYGB1bmFtZSAtcmBgIGFwcGVuZGVkLAotICAgZS5nLiBgYCdzdW5vczUnYGAsICphdCB0aGUgdGltZSB3aGVuIFB5dGhvbiB3YXMgYnVpbHQqLiAgVW5sZXNzIHlvdSB3YW50IHRvCi0gICB0ZXN0IGZvciBhIHNwZWNpZmljIHN5c3RlbSB2ZXJzaW9uLCBpdCBpcyB0aGVyZWZvcmUgcmVjb21tZW5kZWQgdG8gdXNlIHRoZQotICAgZm9sbG93aW5nIGlkaW9tOjoKKyAgIEZvciBVbml4IHN5c3RlbXMsIGV4Y2VwdCBvbiBMaW51eCwgdGhpcyBpcyB0aGUgbG93ZXJjYXNlZCBPUyBuYW1lIGFzCisgICByZXR1cm5lZCBieSBgYHVuYW1lIC1zYGAgd2l0aCB0aGUgZmlyc3QgcGFydCBvZiB0aGUgdmVyc2lvbiBhcyByZXR1cm5lZCBieQorICAgYGB1bmFtZSAtcmBgIGFwcGVuZGVkLCBlLmcuIGBgJ3N1bm9zNSdgYCBvciBgYCdmcmVlYnNkOCdgYCwgKmF0IHRoZSB0aW1lCisgICB3aGVuIFB5dGhvbiB3YXMgYnVpbHQqLiAgVW5sZXNzIHlvdSB3YW50IHRvIHRlc3QgZm9yIGEgc3BlY2lmaWMgc3lzdGVtCisgICB2ZXJzaW9uLCBpdCBpcyB0aGVyZWZvcmUgcmVjb21tZW5kZWQgdG8gdXNlIHRoZSBmb2xsb3dpbmcgaWRpb206OgogCiAgICAgICBpZiBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnZnJlZWJzZCcpOgogICAgICAgICAgICMgRnJlZUJTRC1zcGVjaWZpYyBjb2RlIGhlcmUuLi4KICAgICAgIGVsaWYgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ2xpbnV4Jyk6CiAgICAgICAgICAgIyBMaW51eC1zcGVjaWZpYyBjb2RlIGhlcmUuLi4KIAotICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIuMgotICAgICAgU2luY2UgbG90cyBvZiBjb2RlIGNoZWNrIGZvciBgYHN5cy5wbGF0Zm9ybSA9PSAnbGludXgyJ2BgLCBhbmQgdGhlcmUgaXMKLSAgICAgIG5vIGVzc2VudGlhbCBjaGFuZ2UgYmV0d2VlbiBMaW51eCAyLnggYW5kIDMueCwgYGBzeXMucGxhdGZvcm1gYCBpcyBhbHdheXMKLSAgICAgIHNldCB0byBgYCdsaW51eDInYGAsIGV2ZW4gb24gTGludXggMy54LiAgSW4gUHl0aG9uIDMuMyBhbmQgbGF0ZXIsIHRoZQotICAgICAgdmFsdWUgd2lsbCBhbHdheXMgYmUgc2V0IHRvIGBgJ2xpbnV4J2BgLCBzbyBpdCBpcyByZWNvbW1lbmRlZCB0byBhbHdheXMKLSAgICAgIHVzZSB0aGUgYGBzdGFydHN3aXRoYGAgaWRpb20gcHJlc2VudGVkIGFib3ZlLgotCiAgICBGb3Igb3RoZXIgc3lzdGVtcywgdGhlIHZhbHVlcyBhcmU6CiAKLSAgID09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0gICBTeXN0ZW0gICAgICAgICAgICAgICAgIDpkYXRhOmBwbGF0Zm9ybWAgdmFsdWUKLSAgID09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0gICBMaW51eCAoMi54ICphbmQqIDMueCkgIGBgJ2xpbnV4MidgYAotICAgV2luZG93cyAgICAgICAgICAgICAgICBgYCd3aW4zMidgYAotICAgV2luZG93cy9DeWd3aW4gICAgICAgICBgYCdjeWd3aW4nYGAKLSAgIE1hYyBPUyBYICAgICAgICAgICAgICAgYGAnZGFyd2luJ2BgCi0gICBPUy8yICAgICAgICAgICAgICAgICAgIGBgJ29zMidgYAotICAgT1MvMiBFTVggICAgICAgICAgICAgICBgYCdvczJlbXgnYGAKLSAgID09PT09PT09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09CisgICA9PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PQorICAgU3lzdGVtICAgICAgICAgICA6ZGF0YTpgcGxhdGZvcm1gIHZhbHVlCisgICA9PT09PT09PT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PQorICAgTGludXggICAgICAgICAgICBgYCdsaW51eCdgYAorICAgV2luZG93cyAgICAgICAgICBgYCd3aW4zMidgYAorICAgV2luZG93cy9DeWd3aW4gICBgYCdjeWd3aW4nYGAKKyAgIE1hYyBPUyBYICAgICAgICAgYGAnZGFyd2luJ2BgCisgICBPUy8yICAgICAgICAgICAgIGBgJ29zMidgYAorICAgT1MvMiBFTVggICAgICAgICBgYCdvczJlbXgnYGAKKyAgID09PT09PT09PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBPbiBMaW51eCwgOmF0dHI6YHN5cy5wbGF0Zm9ybWAgZG9lc24ndCBjb250YWluIHRoZSBtYWpvciB2ZXJzaW9uIGFueW1vcmUuCisgICAgICBJdCBpcyBhbHdheXMgYGAnbGludXgnYGAsIGluc3RlYWQgb2YgYGAnbGludXgyJ2BgIG9yIGBgJ2xpbnV4MydgYC4gIFNpbmNlCisgICAgICBvbGRlciBQeXRob24gdmVyc2lvbnMgaW5jbHVkZSB0aGUgdmVyc2lvbiBudW1iZXIsIGl0IGlzIHJlY29tbWVuZGVkIHRvCisgICAgICBhbHdheXMgdXNlIHRoZSBgYHN0YXJ0c3dpdGhgYCBpZGlvbSBwcmVzZW50ZWQgYWJvdmUuCiAKICAgIC4uIHNlZWFsc286OgogICAgICAgOmF0dHI6YG9zLm5hbWVgIGhhcyBhIGNvYXJzZXIgZ3JhbnVsYXJpdHkuICA6ZnVuYzpgb3MudW5hbWVgIGdpdmVzCkBAIC03NTIsNiArNzU4LDcgQEAKICAgICAgIFRoZSA6bW9kOmBwbGF0Zm9ybWAgbW9kdWxlIHByb3ZpZGVzIGRldGFpbGVkIGNoZWNrcyBmb3IgdGhlCiAgICAgICBzeXN0ZW0ncyBpZGVudGl0eS4KIAorCiAuLiBkYXRhOjogcHJlZml4CiAKICAgIEEgc3RyaW5nIGdpdmluZyB0aGUgc2l0ZS1zcGVjaWZpYyBkaXJlY3RvcnkgcHJlZml4IHdoZXJlIHRoZSBwbGF0Zm9ybQpAQCAtODAwLDExICs4MDcsMTEgQEAKICAgIHRoZSBpbnRlcnByZXRlciBsb2FkcyBleHRlbnNpb24gbW9kdWxlcy4gIEFtb25nIG90aGVyIHRoaW5ncywgdGhpcyB3aWxsIGVuYWJsZSBhCiAgICBsYXp5IHJlc29sdmluZyBvZiBzeW1ib2xzIHdoZW4gaW1wb3J0aW5nIGEgbW9kdWxlLCBpZiBjYWxsZWQgYXMKICAgIGBgc3lzLnNldGRsb3BlbmZsYWdzKDApYGAuICBUbyBzaGFyZSBzeW1ib2xzIGFjcm9zcyBleHRlbnNpb24gbW9kdWxlcywgY2FsbCBhcwotICAgYGBzeXMuc2V0ZGxvcGVuZmxhZ3MoY3R5cGVzLlJUTERfR0xPQkFMKWBgLiAgU3ltYm9saWMgbmFtZXMgZm9yIHRoZQotICAgZmxhZyBtb2R1bGVzIGNhbiBiZSBlaXRoZXIgZm91bmQgaW4gdGhlIDptb2Q6YGN0eXBlc2AgbW9kdWxlLCBvciBpbiB0aGUgOm1vZDpgRExGQ05gCi0gICBtb2R1bGUuIElmIDptb2Q6YERMRkNOYCBpcyBub3QgYXZhaWxhYmxlLCBpdCBjYW4gYmUgZ2VuZXJhdGVkIGZyb20KLSAgIDpmaWxlOmAvdXNyL2luY2x1ZGUvZGxmY24uaGAgdXNpbmcgdGhlIDpwcm9ncmFtOmBoMnB5YCBzY3JpcHQuIEF2YWlsYWJpbGl0eToKLSAgIFVuaXguCisgICBgYHN5cy5zZXRkbG9wZW5mbGFncyhvcy5SVExEX0dMT0JBTClgYC4gIFN5bWJvbGljIG5hbWVzIGZvciB0aGUgZmxhZyBtb2R1bGVzCisgICBjYW4gYmUgZm91bmQgaW4gdGhlIDptb2Q6YG9zYCBtb2R1bGUgKGBgUlRMRF94eHhgYCBjb25zdGFudHMsIGUuZy4KKyAgIDpkYXRhOmBvcy5SVExEX0xBWllgKS4KKworICAgQXZhaWxhYmlsaXR5OiBVbml4LgogCiAuLiBmdW5jdGlvbjo6IHNldHByb2ZpbGUocHJvZmlsZWZ1bmMpCiAKQEAgLTk5NywyMiArMTAwNCwzMyBAQAogICAgICAgIHRvIGEgY29uc29sZSBhbmQgUHl0aG9uIGFwcHMgc3RhcnRlZCB3aXRoIDpwcm9ncmFtOmBweXRob253YC4KIAogCi0uLiBkYXRhOjogc3VidmVyc2lvbgorLi4gZGF0YTo6IHRocmVhZF9pbmZvCiAKLSAgIEEgdHJpcGxlIChyZXBvLCBicmFuY2gsIHZlcnNpb24pIHJlcHJlc2VudGluZyB0aGUgU3VidmVyc2lvbiBpbmZvcm1hdGlvbiBvZiB0aGUKLSAgIFB5dGhvbiBpbnRlcnByZXRlci4gKnJlcG8qIGlzIHRoZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5LCBgYCdDUHl0aG9uJ2BgLgotICAgKmJyYW5jaCogaXMgYSBzdHJpbmcgb2Ygb25lIG9mIHRoZSBmb3JtcyBgYCd0cnVuaydgYCwgYGAnYnJhbmNoZXMvbmFtZSdgYCBvcgotICAgYGAndGFncy9uYW1lJ2BgLiAqdmVyc2lvbiogaXMgdGhlIG91dHB1dCBvZiBgYHN2bnZlcnNpb25gYCwgaWYgdGhlIGludGVycHJldGVyCi0gICB3YXMgYnVpbHQgZnJvbSBhIFN1YnZlcnNpb24gY2hlY2tvdXQ7IGl0IGNvbnRhaW5zIHRoZSByZXZpc2lvbiBudW1iZXIgKHJhbmdlKQotICAgYW5kIHBvc3NpYmx5IGEgdHJhaWxpbmcgJ00nIGlmIHRoZXJlIHdlcmUgbG9jYWwgbW9kaWZpY2F0aW9ucy4gSWYgdGhlIHRyZWUgd2FzCi0gICBleHBvcnRlZCAob3Igc3ZudmVyc2lvbiB3YXMgbm90IGF2YWlsYWJsZSksIGl0IGlzIHRoZSByZXZpc2lvbiBvZgotICAgYGBJbmNsdWRlL3BhdGNobGV2ZWwuaGBgIGlmIHRoZSBicmFuY2ggaXMgYSB0YWcuIE90aGVyd2lzZSwgaXQgaXMgYGBOb25lYGAuCisgICBBIDp0ZXJtOmBzdHJ1Y3Qgc2VxdWVuY2VgIGhvbGRpbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRocmVhZAorICAgaW1wbGVtZW50YXRpb24uCiAKLSAgIC4uIGRlcHJlY2F0ZWQ6OiAzLjIuMQotICAgICAgUHl0aG9uIGlzIG5vdyBgZGV2ZWxvcGVkIDxodHRwOi8vZG9jcy5weXRob24ub3JnL2Rldmd1aWRlLz5gXyB1c2luZwotICAgICAgTWVyY3VyaWFsLiAgSW4gcmVjZW50IFB5dGhvbiAzLjIgYnVnZml4IHJlbGVhc2VzLCA6ZGF0YTpgc3VidmVyc2lvbmAKLSAgICAgIHRoZXJlZm9yZSBjb250YWlucyBwbGFjZWhvbGRlciBpbmZvcm1hdGlvbi4gIEl0IGlzIHJlbW92ZWQgaW4gUHl0aG9uCi0gICAgICAzLjMuCisgICArLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgQXR0cmlidXRlICAgICAgICB8IEV4cGxhbmF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKz09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rCisgICB8IDpjb25zdDpgbmFtZWAgICAgfCBOYW1lIG9mIHRoZSB0aHJlYWQgaW1wbGVtZW50YXRpb246ICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgIHwgICogYGAnbnQnYGA6IFdpbmRvd3MgdGhyZWFkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgfCAgKiBgYCdvczInYGA6IE9TLzIgdGhyZWFkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICB8ICAqIGBgJ3B0aHJlYWQnYGA6IFBPU0lYIHRocmVhZHMgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgIHwgICogYGAnc29sYXJpcydgYDogU29sYXJpcyB0aHJlYWRzICAgICAgICAgICAgICAgICAgICAgICB8CisgICArLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAgIHwgOmNvbnN0OmBsb2NrYCAgICB8IE5hbWUgb2YgdGhlIGxvY2sgaW1wbGVtZW50YXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgfCAgKiBgYCdzZW1hcGhvcmUnYGA6IGEgbG9jayB1c2VzIGEgc2VtYXBob3JlICAgICAgICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgICAgICB8ICAqIGBgJ211dGV4K2NvbmQnYGA6IGEgbG9jayB1c2VzIGEgbXV0ZXggICAgICAgICAgICAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgIHwgICAgYW5kIGEgY29uZGl0aW9uIHZhcmlhYmxlICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICB8ICAgICAgICAgICAgICAgICAgfCAgKiBgYE5vbmVgYCBpZiB0aGlzIGluZm9ybWF0aW9uIGlzIHVua25vd24gICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCA6Y29uc3Q6YHZlcnNpb25gIHwgTmFtZSBhbmQgdmVyc2lvbiBvZiB0aGUgdGhyZWFkIGxpYnJhcnkuIEl0IGlzIGEgc3RyaW5nLCB8CisgICB8ICAgICAgICAgICAgICAgICAgfCBvciBgYE5vbmVgYCBpZiB0aGVzZSBpbmZvcm1hdGlvbnMgYXJlIHVua25vd24uICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKIAogCiAuLiBkYXRhOjogdHJhY2ViYWNrbGltaXQKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3RhcmZpbGUucnN0IGIvRG9jL2xpYnJhcnkvdGFyZmlsZS5yc3QKaW5kZXggYjU2MDU4Yi4uNGE5ZGI4ZSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvdGFyZmlsZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvdGFyZmlsZS5yc3QKQEAgLTEzLDEyICsxMywxMiBAQAogLS0tLS0tLS0tLS0tLS0KIAogVGhlIDptb2Q6YHRhcmZpbGVgIG1vZHVsZSBtYWtlcyBpdCBwb3NzaWJsZSB0byByZWFkIGFuZCB3cml0ZSB0YXIKLWFyY2hpdmVzLCBpbmNsdWRpbmcgdGhvc2UgdXNpbmcgZ3ppcCBvciBiejIgY29tcHJlc3Npb24uCithcmNoaXZlcywgaW5jbHVkaW5nIHRob3NlIHVzaW5nIGd6aXAsIGJ6MiBhbmQgbHptYSBjb21wcmVzc2lvbi4KICg6ZmlsZTpgLnppcGAgZmlsZXMgY2FuIGJlIHJlYWQgYW5kIHdyaXR0ZW4gdXNpbmcgdGhlIDptb2Q6YHppcGZpbGVgIG1vZHVsZS4pCiAKIFNvbWUgZmFjdHMgYW5kIGZpZ3VyZXM6CiAKLSogcmVhZHMgYW5kIHdyaXRlcyA6bW9kOmBnemlwYCBhbmQgOm1vZDpgYnoyYCBjb21wcmVzc2VkIGFyY2hpdmVzLgorKiByZWFkcyBhbmQgd3JpdGVzIDptb2Q6YGd6aXBgLCA6bW9kOmBiejJgIGFuZCA6bW9kOmBsem1hYCBjb21wcmVzc2VkIGFyY2hpdmVzLgogCiAqIHJlYWQvd3JpdGUgc3VwcG9ydCBmb3IgdGhlIFBPU0lYLjEtMTk4OCAodXN0YXIpIGZvcm1hdC4KIApAQCAtMzIsNiArMzIsOSBAQAogICBjaGFyYWN0ZXIgZGV2aWNlcyBhbmQgYmxvY2sgZGV2aWNlcyBhbmQgaXMgYWJsZSB0byBhY3F1aXJlIGFuZCByZXN0b3JlIGZpbGUKICAgaW5mb3JtYXRpb24gbGlrZSB0aW1lc3RhbXAsIGFjY2VzcyBwZXJtaXNzaW9ucyBhbmQgb3duZXIuCiAKKy4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICBBZGRlZCBzdXBwb3J0IGZvciA6bW9kOmBsem1hYCBjb21wcmVzc2lvbi4KKwogCiAuLiBmdW5jdGlvbjo6IG9wZW4obmFtZT1Ob25lLCBtb2RlPSdyJywgZmlsZW9iaj1Ob25lLCBidWZzaXplPTEwMjQwLCBcKlwqa3dhcmdzKQogCkBAIC01NSw2ICs1OCw4IEBACiAgICArLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKICAgIHwgYGAncjpiejInYGAgICAgICB8IE9wZW4gZm9yIHJlYWRpbmcgd2l0aCBiemlwMiBjb21wcmVzc2lvbi4gICAgfAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IGBgJ3I6eHonYGAgICAgICAgfCBPcGVuIGZvciByZWFkaW5nIHdpdGggbHptYSBjb21wcmVzc2lvbi4gICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCBgYCdhJyBvciAnYTonYGAgIHwgT3BlbiBmb3IgYXBwZW5kaW5nIHdpdGggbm8gY29tcHJlc3Npb24uIFRoZSB8CiAgICB8ICAgICAgICAgICAgICAgICAgfCBmaWxlIGlzIGNyZWF0ZWQgaWYgaXQgZG9lcyBub3QgZXhpc3QuICAgICAgIHwKICAgICstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwpAQCAtNjQsMTEgKzY5LDEzIEBACiAgICArLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKICAgIHwgYGAndzpiejInYGAgICAgICB8IE9wZW4gZm9yIGJ6aXAyIGNvbXByZXNzZWQgd3JpdGluZy4gICAgICAgICAgfAogICAgKy0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IGBgJ3c6eHonYGAgICAgICAgfCBPcGVuIGZvciBsem1hIGNvbXByZXNzZWQgd3JpdGluZy4gICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogCi0gICBOb3RlIHRoYXQgYGAnYTpneidgYCBvciBgYCdhOmJ6MidgYCBpcyBub3QgcG9zc2libGUuIElmICptb2RlKiBpcyBub3Qgc3VpdGFibGUKLSAgIHRvIG9wZW4gYSBjZXJ0YWluIChjb21wcmVzc2VkKSBmaWxlIGZvciByZWFkaW5nLCA6ZXhjOmBSZWFkRXJyb3JgIGlzIHJhaXNlZC4gVXNlCi0gICAqbW9kZSogYGAncidgYCB0byBhdm9pZCB0aGlzLiAgSWYgYSBjb21wcmVzc2lvbiBtZXRob2QgaXMgbm90IHN1cHBvcnRlZCwKLSAgIDpleGM6YENvbXByZXNzaW9uRXJyb3JgIGlzIHJhaXNlZC4KKyAgIE5vdGUgdGhhdCBgYCdhOmd6J2BgLCBgYCdhOmJ6MidgYCBvciBgYCdhOnh6J2BgIGlzIG5vdCBwb3NzaWJsZS4gSWYgKm1vZGUqCisgICBpcyBub3Qgc3VpdGFibGUgdG8gb3BlbiBhIGNlcnRhaW4gKGNvbXByZXNzZWQpIGZpbGUgZm9yIHJlYWRpbmcsCisgICA6ZXhjOmBSZWFkRXJyb3JgIGlzIHJhaXNlZC4gVXNlICptb2RlKiBgYCdyJ2BgIHRvIGF2b2lkIHRoaXMuICBJZiBhCisgICBjb21wcmVzc2lvbiBtZXRob2QgaXMgbm90IHN1cHBvcnRlZCwgOmV4YzpgQ29tcHJlc3Npb25FcnJvcmAgaXMgcmFpc2VkLgogCiAgICBJZiAqZmlsZW9iaiogaXMgc3BlY2lmaWVkLCBpdCBpcyB1c2VkIGFzIGFuIGFsdGVybmF0aXZlIHRvIGEgOnRlcm06YGZpbGUgb2JqZWN0YAogICAgb3BlbmVkIGluIGJpbmFyeSBtb2RlIGZvciAqbmFtZSouIEl0IGlzIHN1cHBvc2VkIHRvIGJlIGF0IHBvc2l0aW9uIDAuCkBAIC05OSw2ICsxMDYsOSBAQAogICAgfCBgYCdyfGJ6MidgYCB8IE9wZW4gYSBiemlwMiBjb21wcmVzc2VkICpzdHJlYW0qIGZvciAgICAgICB8CiAgICB8ICAgICAgICAgICAgIHwgcmVhZGluZy4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICAgICstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICAgfCBgYCdyfHh6J2BgICB8IE9wZW4gYSBsem1hIGNvbXByZXNzZWQgKnN0cmVhbSogZm9yICAgICAgICB8CisgICB8ICAgICAgICAgICAgIHwgcmVhZGluZy4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgICstLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgfCBgYCd3fCdgYCAgICB8IE9wZW4gYW4gdW5jb21wcmVzc2VkICpzdHJlYW0qIGZvciB3cml0aW5nLiB8CiAgICArLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKICAgIHwgYGAnd3xneidgYCAgfCBPcGVuIGEgZ3ppcCBjb21wcmVzc2VkICpzdHJlYW0qIGZvciAgICAgICAgfApAQCAtMTA3LDYgKzExNyw5IEBACiAgICB8IGBgJ3d8YnoyJ2BgIHwgT3BlbiBhIGJ6aXAyIGNvbXByZXNzZWQgKnN0cmVhbSogZm9yICAgICAgIHwKICAgIHwgICAgICAgICAgICAgfCB3cml0aW5nLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAogICAgKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisgICB8IGBgJ3d8eHonYGAgIHwgT3BlbiBhbiBsem1hIGNvbXByZXNzZWQgKnN0cmVhbSogZm9yICAgICAgIHwKKyAgIHwgICAgICAgICAgICAgfCB3cml0aW5nLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICAgKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAKIAogLi4gY2xhc3M6OiBUYXJGaWxlCkBAIC0yNjIsOSArMjc1LDkgQEAKIAogICAgSWYgKmVycm9ybGV2ZWwqIGlzIGBgMGBgLCBhbGwgZXJyb3JzIGFyZSBpZ25vcmVkIHdoZW4gdXNpbmcgOm1ldGg6YFRhckZpbGUuZXh0cmFjdGAuCiAgICBOZXZlcnRoZWxlc3MsIHRoZXkgYXBwZWFyIGFzIGVycm9yIG1lc3NhZ2VzIGluIHRoZSBkZWJ1ZyBvdXRwdXQsIHdoZW4gZGVidWdnaW5nCi0gICBpcyBlbmFibGVkLiAgSWYgYGAxYGAsIGFsbCAqZmF0YWwqIGVycm9ycyBhcmUgcmFpc2VkIGFzIDpleGM6YE9TRXJyb3JgIG9yCi0gICA6ZXhjOmBJT0Vycm9yYCBleGNlcHRpb25zLiBJZiBgYDJgYCwgYWxsICpub24tZmF0YWwqIGVycm9ycyBhcmUgcmFpc2VkIGFzCi0gICA6ZXhjOmBUYXJFcnJvcmAgZXhjZXB0aW9ucyBhcyB3ZWxsLgorICAgaXMgZW5hYmxlZC4gIElmIGBgMWBgLCBhbGwgKmZhdGFsKiBlcnJvcnMgYXJlIHJhaXNlZCBhcyA6ZXhjOmBPU0Vycm9yYAorICAgZXhjZXB0aW9ucy4gSWYgYGAyYGAsIGFsbCAqbm9uLWZhdGFsKiBlcnJvcnMgYXJlIHJhaXNlZCBhcyA6ZXhjOmBUYXJFcnJvcmAKKyAgIGV4Y2VwdGlvbnMgYXMgd2VsbC4KIAogICAgVGhlICplbmNvZGluZyogYW5kICplcnJvcnMqIGFyZ3VtZW50cyBkZWZpbmUgdGhlIGNoYXJhY3RlciBlbmNvZGluZyB0byBiZQogICAgdXNlZCBmb3IgcmVhZGluZyBvciB3cml0aW5nIHRoZSBhcmNoaXZlIGFuZCBob3cgY29udmVyc2lvbiBlcnJvcnMgYXJlIGdvaW5nCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS90ZWxuZXRsaWIucnN0IGIvRG9jL2xpYnJhcnkvdGVsbmV0bGliLnJzdAppbmRleCA2NDY2MzRkLi45YmM3OWM1IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS90ZWxuZXRsaWIucnN0CisrKyBiL0RvYy9saWJyYXJ5L3RlbG5ldGxpYi5yc3QKQEAgLTE2Miw5ICsxNjIsMTMgQEAKIC4uIG1ldGhvZDo6IFRlbG5ldC53cml0ZShidWZmZXIpCiAKICAgIFdyaXRlIGEgYnl0ZSBzdHJpbmcgdG8gdGhlIHNvY2tldCwgZG91YmxpbmcgYW55IElBQyBjaGFyYWN0ZXJzLiBUaGlzIGNhbgotICAgYmxvY2sgaWYgdGhlIGNvbm5lY3Rpb24gaXMgYmxvY2tlZC4gIE1heSByYWlzZSA6ZXhjOmBzb2NrZXQuZXJyb3JgIGlmIHRoZQorICAgYmxvY2sgaWYgdGhlIGNvbm5lY3Rpb24gaXMgYmxvY2tlZC4gIE1heSByYWlzZSA6ZXhjOmBPU0Vycm9yYCBpZiB0aGUKICAgIGNvbm5lY3Rpb24gaXMgY2xvc2VkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhpcyBtZXRob2QgdXNlZCB0byByYWlzZSA6ZXhjOmBzb2NrZXQuZXJyb3JgLCB3aGljaCBpcyBub3cgYW4gYWxpYXMKKyAgICAgIG9mIDpleGM6YE9TRXJyb3JgLgorCiAKIC4uIG1ldGhvZDo6IFRlbG5ldC5pbnRlcmFjdCgpCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3RlbXBmaWxlLnJzdCBiL0RvYy9saWJyYXJ5L3RlbXBmaWxlLnJzdAppbmRleCBmZmY2YzRlLi5kZmViMjUwIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS90ZW1wZmlsZS5yc3QKKysrIGIvRG9jL2xpYnJhcnkvdGVtcGZpbGUucnN0CkBAIC0yNSw3ICsyNSw3IEBACiAKIEFsc28sIGFsbCB0aGUgdXNlci1jYWxsYWJsZSBmdW5jdGlvbnMgbm93IHRha2UgYWRkaXRpb25hbCBhcmd1bWVudHMgd2hpY2gKIGFsbG93IGRpcmVjdCBjb250cm9sIG92ZXIgdGhlIGxvY2F0aW9uIGFuZCBuYW1lIG9mIHRlbXBvcmFyeSBmaWxlcy4gIEl0IGlzCi1ubyBsb25nZXIgbmVjZXNzYXJ5IHRvIHVzZSB0aGUgZ2xvYmFsICp0ZW1wZGlyKiBhbmQgKnRlbXBsYXRlKiB2YXJpYWJsZXMuCitubyBsb25nZXIgbmVjZXNzYXJ5IHRvIHVzZSB0aGUgZ2xvYmFsICp0ZW1wZGlyKiB2YXJpYWJsZS4KIFRvIG1haW50YWluIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHRoZSBhcmd1bWVudCBvcmRlciBpcyBzb21ld2hhdCBvZGQ7IGl0CiBpcyByZWNvbW1lbmRlZCB0byB1c2Uga2V5d29yZCBhcmd1bWVudHMgZm9yIGNsYXJpdHkuCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3Rlc3QucnN0IGIvRG9jL2xpYnJhcnkvdGVzdC5yc3QKaW5kZXggYzI3ZWUwOC4uNWU0YTFjYiAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvdGVzdC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvdGVzdC5yc3QKQEAgLTIyMywxNCArMjIzLDE0IEBACiAKIC4uIGRhdGE6OiB2ZXJib3NlCiAKLSAgIDpjb25zdDpgVHJ1ZWAgd2hlbiB2ZXJib3NlIG91dHB1dCBpcyBlbmFibGVkLiBTaG91bGQgYmUgY2hlY2tlZCB3aGVuIG1vcmUKKyAgIGBgVHJ1ZWBgIHdoZW4gdmVyYm9zZSBvdXRwdXQgaXMgZW5hYmxlZC4gU2hvdWxkIGJlIGNoZWNrZWQgd2hlbiBtb3JlCiAgICBkZXRhaWxlZCBpbmZvcm1hdGlvbiBpcyBkZXNpcmVkIGFib3V0IGEgcnVubmluZyB0ZXN0LiAqdmVyYm9zZSogaXMgc2V0IGJ5CiAgICA6bW9kOmB0ZXN0LnJlZ3J0ZXN0YC4KIAogCiAuLiBkYXRhOjogaXNfanl0aG9uCiAKLSAgIDpjb25zdDpgVHJ1ZWAgaWYgdGhlIHJ1bm5pbmcgaW50ZXJwcmV0ZXIgaXMgSnl0aG9uLgorICAgYGBUcnVlYGAgaWYgdGhlIHJ1bm5pbmcgaW50ZXJwcmV0ZXIgaXMgSnl0aG9uLgogCiAKIC4uIGRhdGE6OiBURVNURk4KQEAgLTI0OSw3ICsyNDksNyBAQAogCiAuLiBmdW5jdGlvbjo6IGlzX3Jlc291cmNlX2VuYWJsZWQocmVzb3VyY2UpCiAKLSAgIFJldHVybiA6Y29uc3Q6YFRydWVgIGlmICpyZXNvdXJjZSogaXMgZW5hYmxlZCBhbmQgYXZhaWxhYmxlLiBUaGUgbGlzdCBvZgorICAgUmV0dXJuIGBgVHJ1ZWBgIGlmICpyZXNvdXJjZSogaXMgZW5hYmxlZCBhbmQgYXZhaWxhYmxlLiBUaGUgbGlzdCBvZgogICAgYXZhaWxhYmxlIHJlc291cmNlcyBpcyBvbmx5IHNldCB3aGVuIDptb2Q6YHRlc3QucmVncnRlc3RgIGlzIGV4ZWN1dGluZyB0aGUKICAgIHRlc3RzLgogCkBAIC0yNTgsNyArMjU4LDcgQEAKIAogICAgUmFpc2UgOmV4YzpgUmVzb3VyY2VEZW5pZWRgIGlmICpyZXNvdXJjZSogaXMgbm90IGF2YWlsYWJsZS4gKm1zZyogaXMgdGhlCiAgICBhcmd1bWVudCB0byA6ZXhjOmBSZXNvdXJjZURlbmllZGAgaWYgaXQgaXMgcmFpc2VkLiBBbHdheXMgcmV0dXJucwotICAgOmNvbnN0OmBUcnVlYCBpZiBjYWxsZWQgYnkgYSBmdW5jdGlvbiB3aG9zZSBgYF9fbmFtZV9fYGAgaXMgYGAnX19tYWluX18nYGAuCisgICBgYFRydWVgYCBpZiBjYWxsZWQgYnkgYSBmdW5jdGlvbiB3aG9zZSBgYF9fbmFtZV9fYGAgaXMgYGAnX19tYWluX18nYGAuCiAgICBVc2VkIHdoZW4gdGVzdHMgYXJlIGV4ZWN1dGVkIGJ5IDptb2Q6YHRlc3QucmVncnRlc3RgLgogCiAKQEAgLTI4Niw2ICsyODYsMTUgQEAKICAgIFRoaXMgd2lsbCBydW4gYWxsIHRlc3RzIGRlZmluZWQgaW4gdGhlIG5hbWVkIG1vZHVsZS4KIAogCisuLiBmdW5jdGlvbjo6IHJ1bl9kb2N0ZXN0KG1vZHVsZSwgdmVyYm9zaXR5PU5vbmUpCisKKyAgIFJ1biA6ZnVuYzpgZG9jdGVzdC50ZXN0bW9kYCBvbiB0aGUgZ2l2ZW4gKm1vZHVsZSouICBSZXR1cm4KKyAgIGBgKGZhaWx1cmVfY291bnQsIHRlc3RfY291bnQpYGAuCisKKyAgIElmICp2ZXJib3NpdHkqIGlzIGBgTm9uZWBgLCA6ZnVuYzpgZG9jdGVzdC50ZXN0bW9kYCBpcyBydW4gd2l0aCB2ZXJib3NpdHkKKyAgIHNldCB0byA6ZGF0YTpgdmVyYm9zZWAuICBPdGhlcndpc2UsIGl0IGlzIHJ1biB3aXRoIHZlcmJvc2l0eSBzZXQgdG8KKyAgIGBgTm9uZWBgLgorCiAuLiBmdW5jdGlvbjo6IGNoZWNrX3dhcm5pbmdzKFwqZmlsdGVycywgcXVpZXQ9VHJ1ZSkKIAogICAgQSBjb252ZW5pZW5jZSB3cmFwcGVyIGZvciA6ZnVuYzpgd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MoKWAgdGhhdCBtYWtlcyBpdApAQCAtMjk2LDEyICszMDUsMTIgQEAKIAogICAgYGBjaGVja193YXJuaW5nc2BgIGFjY2VwdHMgMi10dXBsZXMgb2YgdGhlIGZvcm0gYGAoIm1lc3NhZ2UgcmVnZXhwIiwKICAgIFdhcm5pbmdDYXRlZ29yeSlgYCBhcyBwb3NpdGlvbmFsIGFyZ3VtZW50cy4gSWYgb25lIG9yIG1vcmUgKmZpbHRlcnMqIGFyZQotICAgcHJvdmlkZWQsIG9yIGlmIHRoZSBvcHRpb25hbCBrZXl3b3JkIGFyZ3VtZW50ICpxdWlldCogaXMgOmNvbnN0OmBGYWxzZWAsCisgICBwcm92aWRlZCwgb3IgaWYgdGhlIG9wdGlvbmFsIGtleXdvcmQgYXJndW1lbnQgKnF1aWV0KiBpcyBgYEZhbHNlYGAsCiAgICBpdCBjaGVja3MgdG8gbWFrZSBzdXJlIHRoZSB3YXJuaW5ncyBhcmUgYXMgZXhwZWN0ZWQ6ICBlYWNoIHNwZWNpZmllZCBmaWx0ZXIKICAgIG11c3QgbWF0Y2ggYXQgbGVhc3Qgb25lIG9mIHRoZSB3YXJuaW5ncyByYWlzZWQgYnkgdGhlIGVuY2xvc2VkIGNvZGUgb3IgdGhlCiAgICB0ZXN0IGZhaWxzLCBhbmQgaWYgYW55IHdhcm5pbmdzIGFyZSByYWlzZWQgdGhhdCBkbyBub3QgbWF0Y2ggYW55IG9mIHRoZQogICAgc3BlY2lmaWVkIGZpbHRlcnMgdGhlIHRlc3QgZmFpbHMuICBUbyBkaXNhYmxlIHRoZSBmaXJzdCBvZiB0aGVzZSBjaGVja3MsCi0gICBzZXQgKnF1aWV0KiB0byA6Y29uc3Q6YFRydWVgLgorICAgc2V0ICpxdWlldCogdG8gYGBUcnVlYGAuCiAKICAgIElmIG5vIGFyZ3VtZW50cyBhcmUgc3BlY2lmaWVkLCBpdCBkZWZhdWx0cyB0bzo6CiAKQEAgLTMxNiw3ICszMjUsNyBAQAogICAgcmVwcmVzZW50aW5nIHRoZSBtb3N0IHJlY2VudCB3YXJuaW5nIGNhbiBhbHNvIGJlIGFjY2Vzc2VkIGRpcmVjdGx5IHRocm91Z2gKICAgIHRoZSByZWNvcmRlciBvYmplY3QgKHNlZSBleGFtcGxlIGJlbG93KS4gIElmIG5vIHdhcm5pbmcgaGFzIGJlZW4gcmFpc2VkLAogICAgdGhlbiBhbnkgb2YgdGhlIGF0dHJpYnV0ZXMgdGhhdCB3b3VsZCBvdGhlcndpc2UgYmUgZXhwZWN0ZWQgb24gYW4gb2JqZWN0Ci0gICByZXByZXNlbnRpbmcgYSB3YXJuaW5nIHdpbGwgcmV0dXJuIDpjb25zdDpgTm9uZWAuCisgICByZXByZXNlbnRpbmcgYSB3YXJuaW5nIHdpbGwgcmV0dXJuIGBgTm9uZWBgLgogCiAgICBUaGUgcmVjb3JkZXIgb2JqZWN0IGFsc28gaGFzIGEgOm1ldGg6YHJlc2V0YCBtZXRob2QsIHdoaWNoIGNsZWFycyB0aGUKICAgIHdhcm5pbmdzIGxpc3QuCkBAIC0zNTQsNyArMzYzLDcgQEAKIAogLi4gZnVuY3Rpb246OiBjYXB0dXJlZF9zdGRvdXQoKQogCi0gICBUaGlzIGlzIGEgY29udGV4dCBtYW5hZ2VyIHRoYXQgcnVucyB0aGUgOmtleXdvcmQ6YHdpdGhgIHN0YXRlbWVudCBib2R5IHVzaW5nCisgICBBIGNvbnRleHQgbWFuYWdlciB0aGF0IHJ1bnMgdGhlIDprZXl3b3JkOmB3aXRoYCBzdGF0ZW1lbnQgYm9keSB1c2luZwogICAgYSA6Y2xhc3M6YFN0cmluZ0lPLlN0cmluZ0lPYCBvYmplY3QgYXMgc3lzLnN0ZG91dC4gIFRoYXQgb2JqZWN0IGNhbiBiZQogICAgcmV0cmlldmVkIHVzaW5nIHRoZSBgYGFzYGAgY2xhdXNlIG9mIHRoZSA6a2V5d29yZDpgd2l0aGAgc3RhdGVtZW50LgogCkBAIC0zNjUsNiArMzc0LDU3IEBACiAgICAgICBhc3NlcnQgcy5nZXR2YWx1ZSgpID09ICJoZWxsbyIKIAogCisuLiBmdW5jdGlvbjo6IHRlbXBfY3dkKG5hbWU9J3RlbXBjd2QnLCBxdWlldD1GYWxzZSwgcGF0aD1Ob25lKQorCisgICBBIGNvbnRleHQgbWFuYWdlciB0aGF0IHRlbXBvcmFyaWx5IGNoYW5nZXMgdGhlIGN1cnJlbnQgd29ya2luZworICAgZGlyZWN0b3J5IChDV0QpLgorCisgICBBbiBleGlzdGluZyBwYXRoIG1heSBiZSBwcm92aWRlZCBhcyAqcGF0aCosIGluIHdoaWNoIGNhc2UgdGhpcyBmdW5jdGlvbgorICAgbWFrZXMgbm8gY2hhbmdlcyB0byB0aGUgZmlsZSBzeXN0ZW0uCisKKyAgIE90aGVyd2lzZSwgdGhlIG5ldyBDV0QgaXMgY3JlYXRlZCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgYW5kIGl0J3MgbmFtZWQKKyAgICpuYW1lKi4gIElmICpxdWlldCogaXMgYGBGYWxzZWBgIGFuZCBpdCdzIG5vdCBwb3NzaWJsZSB0byBjcmVhdGUgb3IKKyAgIGNoYW5nZSB0aGUgQ1dELCBhbiBlcnJvciBpcyByYWlzZWQuICBJZiBpdCdzIGBgVHJ1ZWBgLCBvbmx5IGEgd2FybmluZworICAgaXMgcmFpc2VkIGFuZCB0aGUgb3JpZ2luYWwgQ1dEIGlzIHVzZWQuCisKKworLi4gZnVuY3Rpb246OiB0ZW1wX3VtYXNrKHVtYXNrKQorCisgICBBIGNvbnRleHQgbWFuYWdlciB0aGF0IHRlbXBvcmFyaWx5IHNldHMgdGhlIHByb2Nlc3MgdW1hc2suCisKKworLi4gZnVuY3Rpb246OiBjYW5fc3ltbGluaygpCisKKyAgIFJldHVybiBgYFRydWVgYCBpZiB0aGUgT1Mgc3VwcG9ydHMgc3ltYm9saWMgbGlua3MsIGBgRmFsc2VgYAorICAgb3RoZXJ3aXNlLgorCisKKy4uIGRlY29yYXRvcjo6IHNraXBfdW5sZXNzX3N5bWxpbmsoKQorCisgICBBIGRlY29yYXRvciBmb3IgcnVubmluZyB0ZXN0cyB0aGF0IHJlcXVpcmUgc3VwcG9ydCBmb3Igc3ltYm9saWMgbGlua3MuCisKKworLi4gZGVjb3JhdG9yOjogYW50aWNpcGF0ZV9mYWlsdXJlKGNvbmRpdGlvbikKKworICAgQSBkZWNvcmF0b3IgdG8gY29uZGl0aW9uYWxseSBtYXJrIHRlc3RzIHdpdGgKKyAgIDpmdW5jOmB1bml0dGVzdC5leHBlY3RlZEZhaWx1cmVgLiBBbnkgdXNlIG9mIHRoaXMgZGVjb3JhdG9yIHNob3VsZAorICAgaGF2ZSBhbiBhc3NvY2lhdGVkIGNvbW1lbnQgaWRlbnRpZnlpbmcgdGhlIHJlbGV2YW50IHRyYWNrZXIgaXNzdWUuCisKKworLi4gZGVjb3JhdG9yOjogcnVuX3dpdGhfbG9jYWxlKGNhdHN0ciwgKmxvY2FsZXMpCisKKyAgIEEgZGVjb3JhdG9yIGZvciBydW5uaW5nIGEgZnVuY3Rpb24gaW4gYSBkaWZmZXJlbnQgbG9jYWxlLCBjb3JyZWN0bHkKKyAgIHJlc2V0dGluZyBpdCBhZnRlciBpdCBoYXMgZmluaXNoZWQuICAqY2F0c3RyKiBpcyB0aGUgbG9jYWxlIGNhdGVnb3J5IGFzCisgICBhIHN0cmluZyAoZm9yIGV4YW1wbGUgYGAiTENfQUxMImBgKS4gIFRoZSAqbG9jYWxlcyogcGFzc2VkIHdpbGwgYmUgdHJpZWQKKyAgIHNlcXVlbnRpYWxseSwgYW5kIHRoZSBmaXJzdCB2YWxpZCBsb2NhbGUgd2lsbCBiZSB1c2VkLgorCisKKy4uIGZ1bmN0aW9uOjogbWFrZV9iYWRfZmQoKQorCisgICBDcmVhdGUgYW4gaW52YWxpZCBmaWxlIGRlc2NyaXB0b3IgYnkgb3BlbmluZyBhbmQgY2xvc2luZyBhIHRlbXBvcmFyeSBmaWxlLAorICAgYW5kIHJldHVybmluZyBpdHMgZGVzY3JpcG9yLgorCisKIC4uIGZ1bmN0aW9uOjogaW1wb3J0X21vZHVsZShuYW1lLCBkZXByZWNhdGVkPUZhbHNlKQogCiAgICBUaGlzIGZ1bmN0aW9uIGltcG9ydHMgYW5kIHJldHVybnMgdGhlIG5hbWVkIG1vZHVsZS4gVW5saWtlIGEgbm9ybWFsCkBAIC0zNzIsNyArNDMyLDcgQEAKICAgIGNhbm5vdCBiZSBpbXBvcnRlZC4KIAogICAgTW9kdWxlIGFuZCBwYWNrYWdlIGRlcHJlY2F0aW9uIG1lc3NhZ2VzIGFyZSBzdXBwcmVzc2VkIGR1cmluZyB0aGlzIGltcG9ydAotICAgaWYgKmRlcHJlY2F0ZWQqIGlzIDpjb25zdDpgVHJ1ZWAuCisgICBpZiAqZGVwcmVjYXRlZCogaXMgYGBUcnVlYGAuCiAKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMQogCkBAIC0zOTYsOSArNDU2LDkgQEAKICAgIGBgc3lzLm1vZHVsZXNgYCB3aGVuIHRoZSBmcmVzaCBpbXBvcnQgaXMgY29tcGxldGUuCiAKICAgIE1vZHVsZSBhbmQgcGFja2FnZSBkZXByZWNhdGlvbiBtZXNzYWdlcyBhcmUgc3VwcHJlc3NlZCBkdXJpbmcgdGhpcyBpbXBvcnQKLSAgIGlmICpkZXByZWNhdGVkKiBpcyA6Y29uc3Q6YFRydWVgLgorICAgaWYgKmRlcHJlY2F0ZWQqIGlzIGBgVHJ1ZWBgLgogCi0gICBUaGlzIGZ1bmN0aW9uIHdpbGwgcmFpc2UgOmV4YzpgdW5pdHRlc3QuU2tpcFRlc3RgIGlzIHRoZSBuYW1lZCBtb2R1bGUKKyAgIFRoaXMgZnVuY3Rpb24gd2lsbCByYWlzZSA6ZXhjOmB1bml0dGVzdC5Ta2lwVGVzdGAgaWYgdGhlIG5hbWVkIG1vZHVsZQogICAgY2Fubm90IGJlIGltcG9ydGVkLgogCiAgICBFeGFtcGxlIHVzZTo6CkBAIC00MTMsNiArNDczLDQ4IEBACiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjEKIAogCisuLiBmdW5jdGlvbjo6IGJpbmRfcG9ydChzb2NrLCBob3N0PUhPU1QpCisKKyAgIEJpbmQgdGhlIHNvY2tldCB0byBhIGZyZWUgcG9ydCBhbmQgcmV0dXJuIHRoZSBwb3J0IG51bWJlci4gIFJlbGllcyBvbgorICAgZXBoZW1lcmFsIHBvcnRzIGluIG9yZGVyIHRvIGVuc3VyZSB3ZSBhcmUgdXNpbmcgYW4gdW5ib3VuZCBwb3J0LiAgVGhpcyBpcworICAgaW1wb3J0YW50IGFzIG1hbnkgdGVzdHMgbWF5IGJlIHJ1bm5pbmcgc2ltdWx0YW5lb3VzbHksIGVzcGVjaWFsbHkgaW4gYQorICAgYnVpbGRib3QgZW52aXJvbm1lbnQuICBUaGlzIG1ldGhvZCByYWlzZXMgYW4gZXhjZXB0aW9uIGlmIHRoZQorICAgYGBzb2NrLmZhbWlseWBgIGlzIDpjb25zdDpgfnNvY2tldC5BRl9JTkVUYCBhbmQgYGBzb2NrLnR5cGVgYCBpcworICAgOmNvbnN0OmB+c29ja2V0LlNPQ0tfU1RSRUFNYCwgYW5kIHRoZSBzb2NrZXQgaGFzCisgICA6Y29uc3Q6YH5zb2NrZXQuU09fUkVVU0VBRERSYCBvciA6Y29uc3Q6YH5zb2NrZXQuU09fUkVVU0VQT1JUYCBzZXQgb24gaXQuCisgICBUZXN0cyBzaG91bGQgbmV2ZXIgc2V0IHRoZXNlIHNvY2tldCBvcHRpb25zIGZvciBUQ1AvSVAgc29ja2V0cy4KKyAgIFRoZSBvbmx5IGNhc2UgZm9yIHNldHRpbmcgdGhlc2Ugb3B0aW9ucyBpcyB0ZXN0aW5nIG11bHRpY2FzdGluZyB2aWEKKyAgIG11bHRpcGxlIFVEUCBzb2NrZXRzLgorCisgICBBZGRpdGlvbmFsbHksIGlmIHRoZSA6Y29uc3Q6YH5zb2NrZXQuU09fRVhDTFVTSVZFQUREUlVTRWAgc29ja2V0IG9wdGlvbiBpcworICAgYXZhaWxhYmxlIChpLmUuIG9uIFdpbmRvd3MpLCBpdCB3aWxsIGJlIHNldCBvbiB0aGUgc29ja2V0LiAgVGhpcyB3aWxsCisgICBwcmV2ZW50IGFueW9uZSBlbHNlIGZyb20gYmluZGluZyB0byBvdXIgaG9zdC9wb3J0IGZvciB0aGUgZHVyYXRpb24gb2YgdGhlCisgICB0ZXN0LgorCisKKy4uIGZ1bmN0aW9uOjogZmluZF91bnVzZWRfcG9ydChmYW1pbHk9c29ja2V0LkFGX0lORVQsIHNvY2t0eXBlPXNvY2tldC5TT0NLX1NUUkVBTSkKKworICAgUmV0dXJucyBhbiB1bnVzZWQgcG9ydCB0aGF0IHNob3VsZCBiZSBzdWl0YWJsZSBmb3IgYmluZGluZy4gIFRoaXMgaXMKKyAgIGFjaGlldmVkIGJ5IGNyZWF0aW5nIGEgdGVtcG9yYXJ5IHNvY2tldCB3aXRoIHRoZSBzYW1lIGZhbWlseSBhbmQgdHlwZSBhcworICAgdGhlIGBgc29ja2BgIHBhcmFtZXRlciAoZGVmYXVsdCBpcyA6Y29uc3Q6YH5zb2NrZXQuQUZfSU5FVGAsCisgICA6Y29uc3Q6YH5zb2NrZXQuU09DS19TVFJFQU1gKSwKKyAgIGFuZCBiaW5kaW5nIGl0IHRvIHRoZSBzcGVjaWZpZWQgaG9zdCBhZGRyZXNzIChkZWZhdWx0cyB0byBgYDAuMC4wLjBgYCkKKyAgIHdpdGggdGhlIHBvcnQgc2V0IHRvIDAsIGVsaWNpdGluZyBhbiB1bnVzZWQgZXBoZW1lcmFsIHBvcnQgZnJvbSB0aGUgT1MuCisgICBUaGUgdGVtcG9yYXJ5IHNvY2tldCBpcyB0aGVuIGNsb3NlZCBhbmQgZGVsZXRlZCwgYW5kIHRoZSBlcGhlbWVyYWwgcG9ydCBpcworICAgcmV0dXJuZWQuCisKKyAgIEVpdGhlciB0aGlzIG1ldGhvZCBvciA6ZnVuYzpgYmluZF9wb3J0YCBzaG91bGQgYmUgdXNlZCBmb3IgYW55IHRlc3RzCisgICB3aGVyZSBhIHNlcnZlciBzb2NrZXQgbmVlZHMgdG8gYmUgYm91bmQgdG8gYSBwYXJ0aWN1bGFyIHBvcnQgZm9yIHRoZQorICAgZHVyYXRpb24gb2YgdGhlIHRlc3QuCisgICBXaGljaCBvbmUgdG8gdXNlIGRlcGVuZHMgb24gd2hldGhlciB0aGUgY2FsbGluZyBjb2RlIGlzIGNyZWF0aW5nIGEgcHl0aG9uCisgICBzb2NrZXQsIG9yIGlmIGFuIHVudXNlZCBwb3J0IG5lZWRzIHRvIGJlIHByb3ZpZGVkIGluIGEgY29uc3RydWN0b3IKKyAgIG9yIHBhc3NlZCB0byBhbiBleHRlcm5hbCBwcm9ncmFtIChpLmUuIHRoZSBgYC1hY2NlcHRgYCBhcmd1bWVudCB0bworICAgb3BlbnNzbCdzIHNfc2VydmVyIG1vZGUpLiAgQWx3YXlzIHByZWZlciA6ZnVuYzpgYmluZF9wb3J0YCBvdmVyCisgICA6ZnVuYzpgZmluZF91bnVzZWRfcG9ydGAgd2hlcmUgcG9zc2libGUuICBVc2luZyBhIGhhcmQgY29kZWQgcG9ydCBpcworICAgZGlzY291cmFnZWQgc2luY2UgaXQgY2FuIG1ha2VzIG11bHRpcGxlIGluc3RhbmNlcyBvZiB0aGUgdGVzdCBpbXBvc3NpYmxlIHRvCisgICBydW4gc2ltdWx0YW5lb3VzbHksIHdoaWNoIGlzIGEgcHJvYmxlbSBmb3IgYnVpbGRib3RzLgorCisKIFRoZSA6bW9kOmB0ZXN0LnN1cHBvcnRgIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgY2xhc3NlczoKIAogLi4gY2xhc3M6OiBUcmFuc2llbnRSZXNvdXJjZShleGMsICoqa3dhcmdzKQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvdGhyZWFkaW5nLnJzdCBiL0RvYy9saWJyYXJ5L3RocmVhZGluZy5yc3QKaW5kZXggOWIzYWZmZC4uMmI0M2VlNSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvdGhyZWFkaW5nLnJzdAorKysgYi9Eb2MvbGlicmFyeS90aHJlYWRpbmcucnN0CkBAIC0yMCwxNyArMjAsNiBAQAogICAgbWV0aG9kcyBhbmQgZnVuY3Rpb25zIGluIHRoaXMgbW9kdWxlIGluIHRoZSBQeXRob24gMi54IHNlcmllcyBhcmUgc3RpbGwKICAgIHN1cHBvcnRlZCBieSB0aGlzIG1vZHVsZS4KIAotLi4gaW1wbC1kZXRhaWw6OgotCi0gICBEdWUgdG8gdGhlIDp0ZXJtOmBHbG9iYWwgSW50ZXJwcmV0ZXIgTG9ja2AsIGluIENQeXRob24gb25seSBvbmUgdGhyZWFkCi0gICBjYW4gZXhlY3V0ZSBQeXRob24gY29kZSBhdCBvbmNlIChldmVuIHRob3VnaCBjZXJ0YWluIHBlcmZvcm1hbmNlLW9yaWVudGVkCi0gICBsaWJyYXJpZXMgbWlnaHQgb3ZlcmNvbWUgdGhpcyBsaW1pdGF0aW9uKS4KLSAgIElmIHlvdSB3YW50IHlvdXIgYXBwbGljYXRpb24gdG8gbWFrZSBiZXR0ZXIgb2YgdXNlIG9mIHRoZSBjb21wdXRhdGlvbmFsCi0gICByZXNvdXJjZXMgb2YgbXVsdGktY29yZSBtYWNoaW5lcywgeW91IGFyZSBhZHZpc2VkIHRvIHVzZQotICAgOm1vZDpgbXVsdGlwcm9jZXNzaW5nYCBvciA6Y2xhc3M6YGNvbmN1cnJlbnQuZnV0dXJlcy5Qcm9jZXNzUG9vbEV4ZWN1dG9yYC4KLSAgIEhvd2V2ZXIsIHRocmVhZGluZyBpcyBzdGlsbCBhbiBhcHByb3ByaWF0ZSBtb2RlbCBpZiB5b3Ugd2FudCB0byBydW4KLSAgIG11bHRpcGxlIEkvTy1ib3VuZCB0YXNrcyBzaW11bHRhbmVvdXNseS4KLQogCiBUaGlzIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zIGFuZCBvYmplY3RzOgogCkBAIC01OSw2ICs0OCwxNyBAQAogICAgcmV0dXJuZWQuCiAKIAorLi4gZnVuY3Rpb246OiBnZXRfaWRlbnQoKQorCisgICBSZXR1cm4gdGhlICd0aHJlYWQgaWRlbnRpZmllcicgb2YgdGhlIGN1cnJlbnQgdGhyZWFkLiAgVGhpcyBpcyBhIG5vbnplcm8KKyAgIGludGVnZXIuICBJdHMgdmFsdWUgaGFzIG5vIGRpcmVjdCBtZWFuaW5nOyBpdCBpcyBpbnRlbmRlZCBhcyBhIG1hZ2ljIGNvb2tpZQorICAgdG8gYmUgdXNlZCBlLmcuIHRvIGluZGV4IGEgZGljdGlvbmFyeSBvZiB0aHJlYWQtc3BlY2lmaWMgZGF0YS4gIFRocmVhZAorICAgaWRlbnRpZmllcnMgbWF5IGJlIHJlY3ljbGVkIHdoZW4gYSB0aHJlYWQgZXhpdHMgYW5kIGFub3RoZXIgdGhyZWFkIGlzCisgICBjcmVhdGVkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworCiAuLiBmdW5jdGlvbjo6IGVudW1lcmF0ZSgpCiAKICAgIFJldHVybiBhIGxpc3Qgb2YgYWxsIDpjbGFzczpgVGhyZWFkYCBvYmplY3RzIGN1cnJlbnRseSBhbGl2ZS4gIFRoZSBsaXN0CkBAIC0yNDEsNyArMjQxLDcgQEAKIEEgdGhyZWFkIGNhbiBiZSBmbGFnZ2VkIGFzIGEgImRhZW1vbiB0aHJlYWQiLiAgVGhlIHNpZ25pZmljYW5jZSBvZiB0aGlzIGZsYWcgaXMKIHRoYXQgdGhlIGVudGlyZSBQeXRob24gcHJvZ3JhbSBleGl0cyB3aGVuIG9ubHkgZGFlbW9uIHRocmVhZHMgYXJlIGxlZnQuICBUaGUKIGluaXRpYWwgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIGNyZWF0aW5nIHRocmVhZC4gIFRoZSBmbGFnIGNhbiBiZSBzZXQKLXRocm91Z2ggdGhlIDphdHRyOmBkYWVtb25gIHByb3BlcnR5LgordGhyb3VnaCB0aGUgOmF0dHI6YGRhZW1vbmAgcHJvcGVydHkgb3IgdGhlICpkYWVtb24qIGNvbnN0cnVjdG9yIGFyZ3VtZW50LgogCiBUaGVyZSBpcyBhICJtYWluIHRocmVhZCIgb2JqZWN0OyB0aGlzIGNvcnJlc3BvbmRzIHRvIHRoZSBpbml0aWFsIHRocmVhZCBvZgogY29udHJvbCBpbiB0aGUgUHl0aG9uIHByb2dyYW0uICBJdCBpcyBub3QgYSBkYWVtb24gdGhyZWFkLgpAQCAtMjU0LDcgKzI1NCw4IEBACiBpbXBvc3NpYmxlIHRvIGRldGVjdCB0aGUgdGVybWluYXRpb24gb2YgYWxpZW4gdGhyZWFkcy4KIAogCi0uLiBjbGFzczo6IFRocmVhZChncm91cD1Ob25lLCB0YXJnZXQ9Tm9uZSwgbmFtZT1Ob25lLCBhcmdzPSgpLCBrd2FyZ3M9e30pCisuLiBjbGFzczo6IFRocmVhZChncm91cD1Ob25lLCB0YXJnZXQ9Tm9uZSwgbmFtZT1Ob25lLCBhcmdzPSgpLCBrd2FyZ3M9e30sCisgICAgICAgICAgICAgICAgICB2ZXJib3NlPU5vbmUsICosIGRhZW1vbj1Ob25lKQogCiAgICBUaGlzIGNvbnN0cnVjdG9yIHNob3VsZCBhbHdheXMgYmUgY2FsbGVkIHdpdGgga2V5d29yZCBhcmd1bWVudHMuICBBcmd1bWVudHMKICAgIGFyZToKQEAgLTI3MywxMCArMjc0LDE5IEBACiAgICAqa3dhcmdzKiBpcyBhIGRpY3Rpb25hcnkgb2Yga2V5d29yZCBhcmd1bWVudHMgZm9yIHRoZSB0YXJnZXQgaW52b2NhdGlvbi4KICAgIERlZmF1bHRzIHRvIGBge31gYC4KIAorICAgKnZlcmJvc2UqIGlzIGEgZmxhZyB1c2VkIGZvciBkZWJ1Z2dpbmcgbWVzc2FnZXMuCisKKyAgIElmIG5vdCBgYE5vbmVgYCwgKmRhZW1vbiogZXhwbGljaXRseSBzZXRzIHdoZXRoZXIgdGhlIHRocmVhZCBpcyBkYWVtb25pYy4KKyAgIElmIGBgTm9uZWBgICh0aGUgZGVmYXVsdCksIHRoZSBkYWVtb25pYyBwcm9wZXJ0eSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUKKyAgIGN1cnJlbnQgdGhyZWFkLgorCiAgICBJZiB0aGUgc3ViY2xhc3Mgb3ZlcnJpZGVzIHRoZSBjb25zdHJ1Y3RvciwgaXQgbXVzdCBtYWtlIHN1cmUgdG8gaW52b2tlIHRoZQogICAgYmFzZSBjbGFzcyBjb25zdHJ1Y3RvciAoYGBUaHJlYWQuX19pbml0X18oKWBgKSBiZWZvcmUgZG9pbmcgYW55dGhpbmcgZWxzZSB0bwogICAgdGhlIHRocmVhZC4KIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIEFkZGVkIHRoZSAqZGFlbW9uKiBhcmd1bWVudC4KKwogICAgLi4gbWV0aG9kOjogc3RhcnQoKQogCiAgICAgICBTdGFydCB0aGUgdGhyZWFkJ3MgYWN0aXZpdHkuCkBAIC0zMzMsMTAgKzM0MywxMCBAQAogICAgLi4gYXR0cmlidXRlOjogaWRlbnQKIAogICAgICAgVGhlICd0aHJlYWQgaWRlbnRpZmllcicgb2YgdGhpcyB0aHJlYWQgb3IgYGBOb25lYGAgaWYgdGhlIHRocmVhZCBoYXMgbm90Ci0gICAgICBiZWVuIHN0YXJ0ZWQuICBUaGlzIGlzIGEgbm9uemVybyBpbnRlZ2VyLiAgU2VlIHRoZQotICAgICAgOmZ1bmM6YHRocmVhZC5nZXRfaWRlbnQoKWAgZnVuY3Rpb24uICBUaHJlYWQgaWRlbnRpZmllcnMgbWF5IGJlIHJlY3ljbGVkCi0gICAgICB3aGVuIGEgdGhyZWFkIGV4aXRzIGFuZCBhbm90aGVyIHRocmVhZCBpcyBjcmVhdGVkLiAgVGhlIGlkZW50aWZpZXIgaXMKLSAgICAgIGF2YWlsYWJsZSBldmVuIGFmdGVyIHRoZSB0aHJlYWQgaGFzIGV4aXRlZC4KKyAgICAgIGJlZW4gc3RhcnRlZC4gIFRoaXMgaXMgYSBub256ZXJvIGludGVnZXIuICBTZWUgdGhlIDpmdW5jOmBnZXRfaWRlbnQoKWAKKyAgICAgIGZ1bmN0aW9uLiAgVGhyZWFkIGlkZW50aWZpZXJzIG1heSBiZSByZWN5Y2xlZCB3aGVuIGEgdGhyZWFkIGV4aXRzIGFuZAorICAgICAgYW5vdGhlciB0aHJlYWQgaXMgY3JlYXRlZC4gIFRoZSBpZGVudGlmaWVyIGlzIGF2YWlsYWJsZSBldmVuIGFmdGVyIHRoZQorICAgICAgdGhyZWFkIGhhcyBleGl0ZWQuCiAKICAgIC4uIG1ldGhvZDo6IGlzX2FsaXZlKCkKIApAQCAtMzY0LDYgKzM3NCwxOCBAQAogICAgICAgcHJvcGVydHkgaW5zdGVhZC4KIAogCisuLiBpbXBsLWRldGFpbDo6CisKKyAgIER1ZSB0byB0aGUgOnRlcm06YEdsb2JhbCBJbnRlcnByZXRlciBMb2NrYCwgaW4gQ1B5dGhvbiBvbmx5IG9uZSB0aHJlYWQKKyAgIGNhbiBleGVjdXRlIFB5dGhvbiBjb2RlIGF0IG9uY2UgKGV2ZW4gdGhvdWdoIGNlcnRhaW4gcGVyZm9ybWFuY2Utb3JpZW50ZWQKKyAgIGxpYnJhcmllcyBtaWdodCBvdmVyY29tZSB0aGlzIGxpbWl0YXRpb24pLgorICAgSWYgeW91IHdhbnQgeW91ciBhcHBsaWNhdGlvbiB0byBtYWtlIGJldHRlciBvZiB1c2Ugb2YgdGhlIGNvbXB1dGF0aW9uYWwKKyAgIHJlc291cmNlcyBvZiBtdWx0aS1jb3JlIG1hY2hpbmVzLCB5b3UgYXJlIGFkdmlzZWQgdG8gdXNlCisgICA6bW9kOmBtdWx0aXByb2Nlc3NpbmdgIG9yIDpjbGFzczpgY29uY3VycmVudC5mdXR1cmVzLlByb2Nlc3NQb29sRXhlY3V0b3JgLgorICAgSG93ZXZlciwgdGhyZWFkaW5nIGlzIHN0aWxsIGFuIGFwcHJvcHJpYXRlIG1vZGVsIGlmIHlvdSB3YW50IHRvIHJ1bgorICAgbXVsdGlwbGUgSS9PLWJvdW5kIHRhc2tzIHNpbXVsdGFuZW91c2x5LgorCisKIC4uIF9sb2NrLW9iamVjdHM6CiAKIExvY2sgT2JqZWN0cwpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvdGltZS5yc3QgYi9Eb2MvbGlicmFyeS90aW1lLnJzdAppbmRleCA3YzQ2NGFjLi4yYmE3YzdiIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS90aW1lLnJzdAorKysgYi9Eb2MvbGlicmFyeS90aW1lLnJzdApAQCAtNDEsMjUgKzQxLDYgQEAKICAgcGFyc2VkLCB0aGV5IGFyZSBjb252ZXJ0ZWQgYWNjb3JkaW5nIHRvIHRoZSBQT1NJWCBhbmQgSVNPIEMgc3RhbmRhcmRzOiB2YWx1ZXMKICAgNjktLTk5IGFyZSBtYXBwZWQgdG8gMTk2OS0tMTk5OSwgYW5kIHZhbHVlcyAwLS02OCBhcmUgbWFwcGVkIHRvIDIwMDAtLTIwNjguCiAKLSAgRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHllYXJzIHdpdGggbGVzcyB0aGFuIDQgZGlnaXRzIGFyZSB0cmVhdGVkCi0gIHNwZWNpYWxseSBieSA6ZnVuYzpgYXNjdGltZWAsIDpmdW5jOmBta3RpbWVgLCBhbmQgOmZ1bmM6YHN0cmZ0aW1lYCBmdW5jdGlvbnMKLSAgdGhhdCBvcGVyYXRlIG9uIGEgOS10dXBsZSBvciA6Y2xhc3M6YHN0cnVjdF90aW1lYCB2YWx1ZXMuIElmIHllYXIgKHRoZSBmaXJzdAotICB2YWx1ZSBpbiB0aGUgOS10dXBsZSkgaXMgc3BlY2lmaWVkIHdpdGggbGVzcyB0aGFuIDQgZGlnaXRzLCBpdHMgaW50ZXJwcmV0YXRpb24KLSAgZGVwZW5kcyBvbiB0aGUgdmFsdWUgb2YgYGBhY2NlcHQyZHllYXJgYCB2YXJpYWJsZS4KLQotICBJZiBgYGFjY2VwdDJkeWVhcmBgIGlzIHRydWUgKGRlZmF1bHQpLCBhIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgYmVoYXZpb3IgaXMKLSAgaW52b2tlZCBhcyBmb2xsb3dzOgotCi0gICAgLSBmb3IgMi1kaWdpdCB5ZWFyLCBjZW50dXJ5IGlzIGd1ZXNzZWQgYWNjb3JkaW5nIHRvIFBPU0lYIHJ1bGVzIGZvcgotICAgICAgYGAleWBgIHN0cnB0aW1lIGZvcm1hdC4gIEEgZGVwcmVjYXRpb24gd2FybmluZyBpcyBpc3N1ZWQgd2hlbiBjZW50dXJ5Ci0gICAgICBpbmZvcm1hdGlvbiBpcyBndWVzc2VkIGluIHRoaXMgd2F5LgotCi0gICAgLSBmb3IgMy1kaWdpdCBvciBuZWdhdGl2ZSB5ZWFyLCBhIDpleGM6YFZhbHVlRXJyb3JgIGV4Y2VwdGlvbiBpcyByYWlzZWQuCi0KLSAgSWYgYGBhY2NlcHQyZHllYXJgYCBpcyBmYWxzZSAoc2V0IGJ5IHRoZSBwcm9ncmFtIG9yIGFzIGEgcmVzdWx0IG9mIGEKLSAgbm9uLWVtcHR5IHZhbHVlIGFzc2lnbmVkIHRvIGBgUFlUSE9OWTJLYGAgZW52aXJvbm1lbnQgdmFyaWFibGUpIGFsbCB5ZWFyCi0gIHZhbHVlcyBhcmUgaW50ZXJwcmV0ZWQgYXMgZ2l2ZW4uCi0KIC4uIGluZGV4OjoKICAgIHNpbmdsZTogVVRDCiAgICBzaW5nbGU6IENvb3JkaW5hdGVkIFVuaXZlcnNhbCBUaW1lCkBAIC0xMTcsMjQgKzk4LDYgQEAKIAogVGhlIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zIGFuZCBkYXRhIGl0ZW1zOgogCi0KLS4uIGRhdGE6OiBhY2NlcHQyZHllYXIKLQotICAgQm9vbGVhbiB2YWx1ZSBpbmRpY2F0aW5nIHdoZXRoZXIgdHdvLWRpZ2l0IHllYXIgdmFsdWVzIHdpbGwgYmUKLSAgIG1hcHBlZCB0byAxOTY5LS0yMDY4IHJhbmdlIGJ5IDpmdW5jOmBhc2N0aW1lYCwgOmZ1bmM6YG1rdGltZWAsIGFuZAotICAgOmZ1bmM6YHN0cmZ0aW1lYCBmdW5jdGlvbnMuICBUaGlzIGlzIHRydWUgYnkgZGVmYXVsdCwgYnV0IHdpbGwgYmUKLSAgIHNldCB0byBmYWxzZSBpZiB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgOmVudnZhcjpgUFlUSE9OWTJLYCBoYXMKLSAgIGJlZW4gc2V0IHRvIGEgbm9uLWVtcHR5IHN0cmluZy4gIEl0IG1heSBhbHNvIGJlIG1vZGlmaWVkIGF0IHJ1bgotICAgdGltZS4KLQotICAgLi4gZGVwcmVjYXRlZDo6IDMuMgotICAgICAgTWFwcGluZyBvZiAyLWRpZ2l0IHllYXIgdmFsdWVzIGJ5IDpmdW5jOmBhc2N0aW1lYCwKLSAgICAgIDpmdW5jOmBta3RpbWVgLCBhbmQgOmZ1bmM6YHN0cmZ0aW1lYCBmdW5jdGlvbnMgdG8gMTk2OS0tMjA2OAotICAgICAgcmFuZ2UgaXMgZGVwcmVjYXRlZC4gIFByb2dyYW1zIHRoYXQgbmVlZCB0byBwcm9jZXNzIDItZGlnaXQKLSAgICAgIHllYXJzIHNob3VsZCB1c2UgYGAleWBgIGNvZGUgYXZhaWxhYmxlIGluIDpmdW5jOmBzdHJwdGltZWAKLSAgICAgIGZ1bmN0aW9uIG9yIGNvbnZlcnQgMi1kaWdpdCB5ZWFyIHZhbHVlcyB0byA0LWRpZ2l0IHRoZW1zZWx2ZXMuCi0KLQogLi4gZGF0YTo6IGFsdHpvbmUKIAogICAgVGhlIG9mZnNldCBvZiB0aGUgbG9jYWwgRFNUIHRpbWV6b25lLCBpbiBzZWNvbmRzIHdlc3Qgb2YgVVRDLCBpZiBvbmUgaXMgZGVmaW5lZC4KQEAgLTE3Myw2ICsxMzYsNTMgQEAKICAgIG1pY3Jvc2Vjb25kLgogCiAKKy4uIGZ1bmN0aW9uOjogY2xvY2tfZ2V0cmVzKGNsa19pZCkKKworICAgUmV0dXJuIHRoZSByZXNvbHV0aW9uIChwcmVjaXNpb24pIG9mIHRoZSBzcGVjaWZpZWQgY2xvY2sgKmNsa19pZCouCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBmdW5jdGlvbjo6IGNsb2NrX2dldHRpbWUoY2xrX2lkKQorCisgICBSZXR1cm4gdGhlIHRpbWUgb2YgdGhlIHNwZWNpZmllZCBjbG9jayAqY2xrX2lkKi4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGRhdGE6OiBDTE9DS19SRUFMVElNRQorCisgICBTeXN0ZW0td2lkZSByZWFsLXRpbWUgY2xvY2suIFNldHRpbmcgdGhpcyBjbG9jayByZXF1aXJlcyBhcHByb3ByaWF0ZQorICAgcHJpdmlsZWdlcy4KKworICAgLi4gdmVyc2lvbmFkZGVkOjogMy4zCisKKy4uIGRhdGE6OiBDTE9DS19NT05PVE9OSUMKKworICAgQ2xvY2sgdGhhdCBjYW5ub3QgYmUgc2V0IGFuZCByZXByZXNlbnRzIG1vbm90b25pYyB0aW1lIHNpbmNlIHNvbWUKKyAgIHVuc3BlY2lmaWVkIHN0YXJ0aW5nIHBvaW50LgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworLi4gZGF0YTo6IENMT0NLX01PTk9UT05JQ19SQVcKKworICAgU2ltaWxhciB0byA6ZGF0YTpgQ0xPQ0tfTU9OT1RPTklDYCwgYnV0IHByb3ZpZGVzIGFjY2VzcyB0byBhIHJhdworICAgaGFyZHdhcmUtYmFzZWQgdGltZSB0aGF0IGlzIG5vdCBzdWJqZWN0IHRvIE5UUCBhZGp1c3RtZW50cy4KKworICAgQXZhaWxhYmlsaXR5OiBMaW51eCAyLjYuMjggb3IgbGF0ZXIuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBkYXRhOjogQ0xPQ0tfUFJPQ0VTU19DUFVUSU1FX0lECisKKyAgIEhpZ2gtcmVzb2x1dGlvbiBwZXItcHJvY2VzcyB0aW1lciBmcm9tIHRoZSBDUFUuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisuLiBkYXRhOjogQ0xPQ0tfVEhSRUFEX0NQVVRJTUVfSUQKKworICAgVGhyZWFkLXNwZWNpZmljIENQVS10aW1lIGNsb2NrLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKwogLi4gZnVuY3Rpb246OiBjdGltZShbc2Vjc10pCiAKICAgIENvbnZlcnQgYSB0aW1lIGV4cHJlc3NlZCBpbiBzZWNvbmRzIHNpbmNlIHRoZSBlcG9jaCB0byBhIHN0cmluZyByZXByZXNlbnRpbmcKQEAgLTMwOCw3ICszMTgsNyBAQAogICAgfCBgYCV5YGAgICAgfCBZZWFyIHdpdGhvdXQgY2VudHVyeSBhcyBhIGRlY2ltYWwgbnVtYmVyICAgICAgIHwgICAgICAgfAogICAgfCAgICAgICAgICAgfCBbMDAsOTldLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAogICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotICAgfCBgYCVZYGAgICAgfCBZZWFyIHdpdGggY2VudHVyeSBhcyBhIGRlY2ltYWwgbnVtYmVyLiAgICAgICAgIHwgXCg0KSAgfAorICAgfCBgYCVZYGAgICAgfCBZZWFyIHdpdGggY2VudHVyeSBhcyBhIGRlY2ltYWwgbnVtYmVyLiAgICAgICAgIHwgICAgICAgfAogICAgfCAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgfAogICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwogICAgfCBgYCVaYGAgICAgfCBUaW1lIHpvbmUgbmFtZSAobm8gY2hhcmFjdGVycyBpZiBubyB0aW1lIHpvbmUgIHwgICAgICAgfApAQCAtMzMyLDEyICszNDIsNiBAQAogICAgICAgV2hlbiB1c2VkIHdpdGggdGhlIDpmdW5jOmBzdHJwdGltZWAgZnVuY3Rpb24sIGBgJVVgYCBhbmQgYGAlV2BgIGFyZSBvbmx5IHVzZWQgaW4KICAgICAgIGNhbGN1bGF0aW9ucyB3aGVuIHRoZSBkYXkgb2YgdGhlIHdlZWsgYW5kIHRoZSB5ZWFyIGFyZSBzcGVjaWZpZWQuCiAKLSAgICg0KQotICAgICAgUHJvZHVjZXMgZGlmZmVyZW50IHJlc3VsdHMgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZSBvZgotICAgICAgYGB0aW1lLmFjY2VwdDJkeWVhcmBgIHZhcmlhYmxlLiAgU2VlIDpyZWY6YFllYXIgMjAwMCAoWTJLKQotICAgICAgaXNzdWVzIDx0aW1lLXkya2lzc3Vlcz5gIGZvciBkZXRhaWxzLgotCi0KICAgIEhlcmUgaXMgYW4gZXhhbXBsZSwgYSBmb3JtYXQgZm9yIGRhdGVzIGNvbXBhdGlibGUgd2l0aCB0aGF0IHNwZWNpZmllZCAgaW4gdGhlCiAgICA6cmZjOmAyODIyYCBJbnRlcm5ldCBlbWFpbCBzdGFuZGFyZC4gIFsjXV8gOjoKIApAQCAtNDE4LDggKzQyMiw3IEBACiAgICArLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKIAogICAgTm90ZSB0aGF0IHVubGlrZSB0aGUgQyBzdHJ1Y3R1cmUsIHRoZSBtb250aCB2YWx1ZSBpcyBhIHJhbmdlIG9mIFsxLCAxMl0sIG5vdAotICAgWzAsIDExXS4gIEEgeWVhciB2YWx1ZSB3aWxsIGJlIGhhbmRsZWQgYXMgZGVzY3JpYmVkIHVuZGVyIDpyZWY6YFllYXIgMjAwMAotICAgKFkySykgaXNzdWVzIDx0aW1lLXkya2lzc3Vlcz5gIGFib3ZlLiAgQSBgYC0xYGAgYXJndW1lbnQgYXMgdGhlIGRheWxpZ2h0CisgICBbMCwgMTFdLiAgQSBgYC0xYGAgYXJndW1lbnQgYXMgdGhlIGRheWxpZ2h0CiAgICBzYXZpbmdzIGZsYWcsIHBhc3NlZCB0byA6ZnVuYzpgbWt0aW1lYCB3aWxsIHVzdWFsbHkgcmVzdWx0IGluIHRoZSBjb3JyZWN0CiAgICBkYXlsaWdodCBzYXZpbmdzIHN0YXRlIHRvIGJlIGZpbGxlZCBpbi4KIApAQCAtNTM0LDYgKzUzNywyMCBAQAogICAgICAgKCdFRVQnLCAnRUVTVCcpCiAKIAorLi4gZnVuY3Rpb246OiB3YWxsY2xvY2soKQorCisgICAuLiBpbmRleDo6CisgICAgICBzaW5nbGU6IFdhbGxjbG9jaworICAgICAgc2luZ2xlOiBiZW5jaG1hcmtpbmcKKworICAgUmV0dXJuIHRoZSBjdXJyZW50IHRpbWUgaW4gZnJhY3Rpb25zIG9mIGEgc2Vjb25kIHRvIHRoZSBzeXN0ZW0ncyBiZXN0IGFiaWxpdHkuCisgICBVc2UgdGhpcyB3aGVuIHRoZSBtb3N0IGFjY3VyYXRlIHJlcHJlc2VudGF0aW9uIG9mIHdhbGwtY2xvY2sgaXMgcmVxdWlyZWQsIGkuZS4KKyAgIHdoZW4gInByb2Nlc3NvciB0aW1lIiBpcyBpbmFwcHJvcHJpYXRlLiAgVGhlIHJlZmVyZW5jZSBwb2ludCBvZiB0aGUgcmV0dXJuZWQKKyAgIHZhbHVlIGlzIHVuZGVmaW5lZCBzbyBvbmx5IHRoZSBkaWZmZXJlbmNlIG9mIGNvbnNlY3V0aXZlIGNhbGxzIGlzIHZhbGlkLgorCisgICAuLiB2ZXJzaW9uYWRkZWQ6IDMuMworCisKIC4uIHNlZWFsc286OgogCiAgICBNb2R1bGUgOm1vZDpgZGF0ZXRpbWVgCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS90b2tlbml6ZS5yc3QgYi9Eb2MvbGlicmFyeS90b2tlbml6ZS5yc3QKaW5kZXggNzA5MTljYS4uMzdkOWY0MSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvdG9rZW5pemUucnN0CisrKyBiL0RvYy9saWJyYXJ5L3Rva2VuaXplLnJzdApAQCAtMTcsOSArMTcsMTEgQEAKIAogVG8gc2ltcGxpZnkgdG9rZW4gc3RyZWFtIGhhbmRsaW5nLCBhbGwgOnJlZjpgb3BlcmF0b3JzYCBhbmQgOnJlZjpgZGVsaW1pdGVyc2AKIHRva2VucyBhcmUgcmV0dXJuZWQgdXNpbmcgdGhlIGdlbmVyaWMgOmRhdGE6YHRva2VuLk9QYCB0b2tlbiB0eXBlLiAgVGhlIGV4YWN0Ci10eXBlIGNhbiBiZSBkZXRlcm1pbmVkIGJ5IGNoZWNraW5nIHRoZSB0b2tlbiBgYHN0cmluZ2BgIGZpZWxkIG9uIHRoZQotOnRlcm06YG5hbWVkIHR1cGxlYCByZXR1cm5lZCBmcm9tIDpmdW5jOmB0b2tlbml6ZS50b2tlbml6ZWAgZm9yIHRoZSBjaGFyYWN0ZXIKLXNlcXVlbmNlIHRoYXQgaWRlbnRpZmllcyBhIHNwZWNpZmljIG9wZXJhdG9yIHRva2VuLgordHlwZSBjYW4gYmUgZGV0ZXJtaW5lZCBieSBjaGVja2luZyB0aGUgYGBleGFjdF90eXBlYGAgcHJvcGVydHkgb24gdGhlCis6dGVybTpgbmFtZWQgdHVwbGVgIHJldHVybmVkIGZyb20gOmZ1bmM6YHRva2VuaXplLnRva2VuaXplYC4KKworVG9rZW5pemluZyBJbnB1dAorLS0tLS0tLS0tLS0tLS0tLQogCiBUaGUgcHJpbWFyeSBlbnRyeSBwb2ludCBpcyBhIDp0ZXJtOmBnZW5lcmF0b3JgOgogCkBAIC0zOSw5ICs0MSwxNyBAQAogICAgcmV0dXJuZWQgYXMgYSA6dGVybTpgbmFtZWQgdHVwbGVgIHdpdGggdGhlIGZpZWxkIG5hbWVzOgogICAgYGB0eXBlIHN0cmluZyBzdGFydCBlbmQgbGluZWBgLgogCisgICBUaGUgcmV0dXJuZWQgOnRlcm06YG5hbWVkIHR1cGxlYCBoYXMgYSBhZGRpdGlvbmFsIHByb3BlcnR5IG5hbWVkCisgICBgYGV4YWN0X3R5cGVgYCB0aGF0IGNvbnRhaW5zIHRoZSBleGFjdCBvcGVyYXRvciB0eXBlIGZvcgorICAgOmRhdGE6YHRva2VuLk9QYCB0b2tlbnMuICBGb3IgYWxsIG90aGVyIHRva2VuIHR5cGVzIGBgZXhhY3RfdHlwZWBgCisgICBlcXVhbHMgdGhlIG5hbWVkIHR1cGxlIGBgdHlwZWBgIGZpZWxkLgorCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMQogICAgICAgQWRkZWQgc3VwcG9ydCBmb3IgbmFtZWQgdHVwbGVzLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgQWRkZWQgc3VwcG9ydCBmb3IgYGBleGFjdF90eXBlYGAuCisKICAgIDpmdW5jOmB0b2tlbml6ZWAgZGV0ZXJtaW5lcyB0aGUgc291cmNlIGVuY29kaW5nIG9mIHRoZSBmaWxlIGJ5IGxvb2tpbmcgZm9yIGEKICAgIFVURi04IEJPTSBvciBlbmNvZGluZyBjb29raWUsIGFjY29yZGluZyB0byA6cGVwOmAyNjNgLgogCkBAIC0xMjIsNiArMTMyLDM4IEBACiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAogCisuLiBfdG9rZW5pemUtY2xpOgorCitDb21tYW5kLUxpbmUgVXNhZ2UKKy0tLS0tLS0tLS0tLS0tLS0tLQorCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKworVGhlIDptb2Q6YHRva2VuaXplYCBtb2R1bGUgY2FuIGJlIGV4ZWN1dGVkIGFzIGEgc2NyaXB0IGZyb20gdGhlIGNvbW1hbmQgbGluZS4KK0l0IGlzIGFzIHNpbXBsZSBhczoKKworLi4gY29kZS1ibG9jazo6IHNoCisKKyAgIHB5dGhvbiAtbSB0b2tlbml6ZSBbLWVdIFtmaWxlbmFtZS5weV0KKworVGhlIGZvbGxvd2luZyBvcHRpb25zIGFyZSBhY2NlcHRlZDoKKworLi4gcHJvZ3JhbTo6IHRva2VuaXplCisKKy4uIGNtZG9wdGlvbjo6IC1oLCAtLWhlbHAKKworICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZSBhbmQgZXhpdAorCisuLiBjbWRvcHRpb246OiAtZSwgLS1leGFjdAorCisgICBkaXNwbGF5IHRva2VuIG5hbWVzIHVzaW5nIHRoZSBleGFjdCB0eXBlCisKK0lmIDpmaWxlOmBmaWxlbmFtZS5weWAgaXMgc3BlY2lmaWVkIGl0cyBjb250ZW50cyBhcmUgdG9rZW5pemVkIHRvIHN0ZG91dC4KK090aGVyd2lzZSwgdG9rZW5pemF0aW9uIGlzIHBlcmZvcm1lZCBvbiBzdGRpbi4KKworRXhhbXBsZXMKKy0tLS0tLS0tLS0tLS0tLS0tLQorCiBFeGFtcGxlIG9mIGEgc2NyaXB0IHJld3JpdGVyIHRoYXQgdHJhbnNmb3JtcyBmbG9hdCBsaXRlcmFscyBpbnRvIERlY2ltYWwKIG9iamVjdHM6OgogCkBAIC0xNjQsMyArMjA2LDYzIEBACiAgICAgICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCgodG9rbnVtLCB0b2t2YWwpKQogICAgICAgICByZXR1cm4gdW50b2tlbml6ZShyZXN1bHQpLmRlY29kZSgndXRmLTgnKQogCitFeGFtcGxlIG9mIHRva2VuaXppbmcgZnJvbSB0aGUgY29tbWFuZCBsaW5lLiAgVGhlIHNjcmlwdDo6CisKKyAgICBkZWYgc2F5X2hlbGxvKCk6CisgICAgICAgIHByaW50KCJIZWxsbywgV29ybGQhIikKKworICAgIHNheV9oZWxsbygpCisKK3dpbGwgYmUgdG9rZW5pemVkIHRvIHRoZSBmb2xsb3dpbmcgb3V0cHV0IHdoZXJlIHRoZSBmaXJzdCBjb2x1bW4gaXMgdGhlIHJhbmdlCitvZiB0aGUgbGluZS9jb2x1bW4gY29vcmRpbmF0ZXMgd2hlcmUgdGhlIHRva2VuIGlzIGZvdW5kLCB0aGUgc2Vjb25kIGNvbHVtbiBpcwordGhlIG5hbWUgb2YgdGhlIHRva2VuLCBhbmQgdGhlIGZpbmFsIGNvbHVtbiBpcyB0aGUgdmFsdWUgb2YgdGhlIHRva2VuIChpZiBhbnkpCisKKy4uIGNvZGUtYmxvY2s6OiBzaAorCisgICAgJCBweXRob24gLW0gdG9rZW5pemUgaGVsbG8ucHkKKyAgICAwLDAtMCwwOiAgICAgICAgICAgIEVOQ09ESU5HICAgICAgICd1dGYtOCcKKyAgICAxLDAtMSwzOiAgICAgICAgICAgIE5BTUUgICAgICAgICAgICdkZWYnCisgICAgMSw0LTEsMTM6ICAgICAgICAgICBOQU1FICAgICAgICAgICAnc2F5X2hlbGxvJworICAgIDEsMTMtMSwxNDogICAgICAgICAgT1AgICAgICAgICAgICAgJygnCisgICAgMSwxNC0xLDE1OiAgICAgICAgICBPUCAgICAgICAgICAgICAnKScKKyAgICAxLDE1LTEsMTY6ICAgICAgICAgIE9QICAgICAgICAgICAgICc6JworICAgIDEsMTYtMSwxNzogICAgICAgICAgTkVXTElORSAgICAgICAgJ1xuJworICAgIDIsMC0yLDQ6ICAgICAgICAgICAgSU5ERU5UICAgICAgICAgJyAgICAnCisgICAgMiw0LTIsOTogICAgICAgICAgICBOQU1FICAgICAgICAgICAncHJpbnQnCisgICAgMiw5LTIsMTA6ICAgICAgICAgICBPUCAgICAgICAgICAgICAnKCcKKyAgICAyLDEwLTIsMjU6ICAgICAgICAgIFNUUklORyAgICAgICAgICciSGVsbG8sIFdvcmxkISInCisgICAgMiwyNS0yLDI2OiAgICAgICAgICBPUCAgICAgICAgICAgICAnKScKKyAgICAyLDI2LTIsMjc6ICAgICAgICAgIE5FV0xJTkUgICAgICAgICdcbicKKyAgICAzLDAtMywxOiAgICAgICAgICAgIE5MICAgICAgICAgICAgICdcbicKKyAgICA0LDAtNCwwOiAgICAgICAgICAgIERFREVOVCAgICAgICAgICcnCisgICAgNCwwLTQsOTogICAgICAgICAgICBOQU1FICAgICAgICAgICAnc2F5X2hlbGxvJworICAgIDQsOS00LDEwOiAgICAgICAgICAgT1AgICAgICAgICAgICAgJygnCisgICAgNCwxMC00LDExOiAgICAgICAgICBPUCAgICAgICAgICAgICAnKScKKyAgICA0LDExLTQsMTI6ICAgICAgICAgIE5FV0xJTkUgICAgICAgICdcbicKKyAgICA1LDAtNSwwOiAgICAgICAgICAgIEVORE1BUktFUiAgICAgICcnCisKK1RoZSBleGFjdCB0b2tlbiB0eXBlIG5hbWVzIGNhbiBiZSBkaXNwbGF5ZWQgdXNpbmcgdGhlIGBgLWVgYCBvcHRpb246CisKKy4uIGNvZGUtYmxvY2s6OiBzaAorCisgICAgJCBweXRob24gLW0gdG9rZW5pemUgLWUgaGVsbG8ucHkKKyAgICAwLDAtMCwwOiAgICAgICAgICAgIEVOQ09ESU5HICAgICAgICd1dGYtOCcKKyAgICAxLDAtMSwzOiAgICAgICAgICAgIE5BTUUgICAgICAgICAgICdkZWYnCisgICAgMSw0LTEsMTM6ICAgICAgICAgICBOQU1FICAgICAgICAgICAnc2F5X2hlbGxvJworICAgIDEsMTMtMSwxNDogICAgICAgICAgTFBBUiAgICAgICAgICAgJygnCisgICAgMSwxNC0xLDE1OiAgICAgICAgICBSUEFSICAgICAgICAgICAnKScKKyAgICAxLDE1LTEsMTY6ICAgICAgICAgIENPTE9OICAgICAgICAgICc6JworICAgIDEsMTYtMSwxNzogICAgICAgICAgTkVXTElORSAgICAgICAgJ1xuJworICAgIDIsMC0yLDQ6ICAgICAgICAgICAgSU5ERU5UICAgICAgICAgJyAgICAnCisgICAgMiw0LTIsOTogICAgICAgICAgICBOQU1FICAgICAgICAgICAncHJpbnQnCisgICAgMiw5LTIsMTA6ICAgICAgICAgICBMUEFSICAgICAgICAgICAnKCcKKyAgICAyLDEwLTIsMjU6ICAgICAgICAgIFNUUklORyAgICAgICAgICciSGVsbG8sIFdvcmxkISInCisgICAgMiwyNS0yLDI2OiAgICAgICAgICBSUEFSICAgICAgICAgICAnKScKKyAgICAyLDI2LTIsMjc6ICAgICAgICAgIE5FV0xJTkUgICAgICAgICdcbicKKyAgICAzLDAtMywxOiAgICAgICAgICAgIE5MICAgICAgICAgICAgICdcbicKKyAgICA0LDAtNCwwOiAgICAgICAgICAgIERFREVOVCAgICAgICAgICcnCisgICAgNCwwLTQsOTogICAgICAgICAgICBOQU1FICAgICAgICAgICAnc2F5X2hlbGxvJworICAgIDQsOS00LDEwOiAgICAgICAgICAgTFBBUiAgICAgICAgICAgJygnCisgICAgNCwxMC00LDExOiAgICAgICAgICBSUEFSICAgICAgICAgICAnKScKKyAgICA0LDExLTQsMTI6ICAgICAgICAgIE5FV0xJTkUgICAgICAgICdcbicKKyAgICA1LDAtNSwwOiAgICAgICAgICAgIEVORE1BUktFUiAgICAgICcnCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS91bmljb2RlZGF0YS5yc3QgYi9Eb2MvbGlicmFyeS91bmljb2RlZGF0YS5yc3QKaW5kZXggNDI0MDBkZi4uZjkxMmZlOCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvdW5pY29kZWRhdGEucnN0CisrKyBiL0RvYy9saWJyYXJ5L3VuaWNvZGVkYXRhLnJzdApAQCAtMjksNiArMjksOSBAQAogICAgTG9vayB1cCBjaGFyYWN0ZXIgYnkgbmFtZS4gIElmIGEgY2hhcmFjdGVyIHdpdGggdGhlIGdpdmVuIG5hbWUgaXMgZm91bmQsIHJldHVybgogICAgdGhlIGNvcnJlc3BvbmRpbmcgY2hhcmFjdGVyLiAgSWYgbm90IGZvdW5kLCA6ZXhjOmBLZXlFcnJvcmAgaXMgcmFpc2VkLgogCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgU3VwcG9ydCBmb3IgbmFtZSBhbGlhc2VzIFsjXV8gYW5kIG5hbWVkIHNlcXVlbmNlcyBbI11fIGhhcyBiZWVuIGFkZGVkLgorCiAKIC4uIGZ1bmN0aW9uOjogbmFtZShjaHJbLCBkZWZhdWx0XSkKIApAQCAtMTYwLDMgKzE2Myw5IEBACiAgICA+Pj4gdW5pY29kZWRhdGEuYmlkaXJlY3Rpb25hbCgnXHUwNjYwJykgIyAnQSdyYWJpYywgJ04ndW1iZXIKICAgICdBTicKIAorCisuLiBydWJyaWM6OiBGb290bm90ZXMKKworLi4gWyNdIGh0dHA6Ly93d3cudW5pY29kZS5vcmcvUHVibGljLzYuMC4wL3VjZC9OYW1lQWxpYXNlcy50eHQKKworLi4gWyNdIGh0dHA6Ly93d3cudW5pY29kZS5vcmcvUHVibGljLzYuMC4wL3VjZC9OYW1lZFNlcXVlbmNlcy50eHQKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3VuaXR0ZXN0LnJzdCBiL0RvYy9saWJyYXJ5L3VuaXR0ZXN0LnJzdAppbmRleCBiZGYwN2E0Li44OTM4MzEyIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS91bml0dGVzdC5yc3QKKysrIGIvRG9jL2xpYnJhcnkvdW5pdHRlc3QucnN0CkBAIC03OTIsMTEgKzc5MiwxNCBAQAogICAgICAgUnVuIHRoZSB0ZXN0LCBjb2xsZWN0aW5nIHRoZSByZXN1bHQgaW50byB0aGUgdGVzdCByZXN1bHQgb2JqZWN0IHBhc3NlZCBhcwogICAgICAgKnJlc3VsdCouICBJZiAqcmVzdWx0KiBpcyBvbWl0dGVkIG9yIGBgTm9uZWBgLCBhIHRlbXBvcmFyeSByZXN1bHQKICAgICAgIG9iamVjdCBpcyBjcmVhdGVkIChieSBjYWxsaW5nIHRoZSA6bWV0aDpgZGVmYXVsdFRlc3RSZXN1bHRgIG1ldGhvZCkgYW5kCi0gICAgICB1c2VkLiBUaGUgcmVzdWx0IG9iamVjdCBpcyBub3QgcmV0dXJuZWQgdG8gOm1ldGg6YHJ1bmAncyBjYWxsZXIuCisgICAgICB1c2VkLiBUaGUgcmVzdWx0IG9iamVjdCBpcyByZXR1cm5lZCB0byA6bWV0aDpgcnVuYCdzIGNhbGxlci4KIAogICAgICAgVGhlIHNhbWUgZWZmZWN0IG1heSBiZSBoYWQgYnkgc2ltcGx5IGNhbGxpbmcgdGhlIDpjbGFzczpgVGVzdENhc2VgCiAgICAgICBpbnN0YW5jZS4KIAorICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICAgIFByZXZpb3VzIHZlcnNpb25zIG9mIGBgcnVuYGAgZGlkIG5vdCByZXR1cm4gdGhlIHJlc3VsdC4gTmVpdGhlciBkaWQKKyAgICAgICAgIGNhbGxpbmcgYW4gaW5zdGFuY2UuCiAKICAgIC4uIG1ldGhvZDo6IHNraXBUZXN0KHJlYXNvbikKIApAQCAtODU3LDEwICs4NjAsMTEgQEAKICAgIHwgPFRlc3RDYXNlLmFzc2VydE5vdElzSW5zdGFuY2U+YCAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICB8CiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tKwogCi0gICBBbGwgdGhlIGFzc2VydCBtZXRob2RzIChleGNlcHQgOm1ldGg6YGFzc2VydFJhaXNlc2AsCi0gICA6bWV0aDpgYXNzZXJ0UmFpc2VzUmVnZXhgLCA6bWV0aDpgYXNzZXJ0V2FybnNgLCA6bWV0aDpgYXNzZXJ0V2FybnNSZWdleGApCi0gICBhY2NlcHQgYSAqbXNnKiBhcmd1bWVudCB0aGF0LCBpZiBzcGVjaWZpZWQsIGlzIHVzZWQgYXMgdGhlIGVycm9yIG1lc3NhZ2Ugb24KLSAgIGZhaWx1cmUgKHNlZSBhbHNvIDpkYXRhOmBsb25nTWVzc2FnZWApLgorICAgQWxsIHRoZSBhc3NlcnQgbWV0aG9kcyBhY2NlcHQgYSAqbXNnKiBhcmd1bWVudCB0aGF0LCBpZiBzcGVjaWZpZWQsIGlzIHVzZWQKKyAgIGFzIHRoZSBlcnJvciBtZXNzYWdlIG9uIGZhaWx1cmUgKHNlZSBhbHNvIDpkYXRhOmBsb25nTWVzc2FnZWApLgorICAgTm90ZSB0aGF0IHRoZSAqbXNnKiBrZXl3b3JkIGFyZ3VtZW50IGNhbiBiZSBwYXNzZWQgdG8gOm1ldGg6YGFzc2VydFJhaXNlc2AsCisgICA6bWV0aDpgYXNzZXJ0UmFpc2VzUmVnZXhgLCA6bWV0aDpgYXNzZXJ0V2FybnNgLCA6bWV0aDpgYXNzZXJ0V2FybnNSZWdleGAKKyAgIG9ubHkgd2hlbiB0aGV5IGFyZSB1c2VkIGFzIGEgY29udGV4dCBtYW5hZ2VyLgogCiAgICAuLiBtZXRob2Q6OiBhc3NlcnRFcXVhbChmaXJzdCwgc2Vjb25kLCBtc2c9Tm9uZSkKIApAQCAtOTU1LDcgKzk1OSw3IEBACiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSsKIAogICAgLi4gbWV0aG9kOjogYXNzZXJ0UmFpc2VzKGV4Y2VwdGlvbiwgY2FsbGFibGUsICphcmdzLCAqKmt3ZHMpCi0gICAgICAgICAgICAgICBhc3NlcnRSYWlzZXMoZXhjZXB0aW9uKQorICAgICAgICAgICAgICAgYXNzZXJ0UmFpc2VzKGV4Y2VwdGlvbiwgbXNnPU5vbmUpCiAKICAgICAgIFRlc3QgdGhhdCBhbiBleGNlcHRpb24gaXMgcmFpc2VkIHdoZW4gKmNhbGxhYmxlKiBpcyBjYWxsZWQgd2l0aCBhbnkKICAgICAgIHBvc2l0aW9uYWwgb3Iga2V5d29yZCBhcmd1bWVudHMgdGhhdCBhcmUgYWxzbyBwYXNzZWQgdG8KQEAgLTk2NCwxMiArOTY4LDE2IEBACiAgICAgICBUbyBjYXRjaCBhbnkgb2YgYSBncm91cCBvZiBleGNlcHRpb25zLCBhIHR1cGxlIGNvbnRhaW5pbmcgdGhlIGV4Y2VwdGlvbgogICAgICAgY2xhc3NlcyBtYXkgYmUgcGFzc2VkIGFzICpleGNlcHRpb24qLgogCi0gICAgICBJZiBvbmx5IHRoZSAqZXhjZXB0aW9uKiBhcmd1bWVudCBpcyBnaXZlbiwgcmV0dXJucyBhIGNvbnRleHQgbWFuYWdlciBzbwotICAgICAgdGhhdCB0aGUgY29kZSB1bmRlciB0ZXN0IGNhbiBiZSB3cml0dGVuIGlubGluZSByYXRoZXIgdGhhbiBhcyBhIGZ1bmN0aW9uOjoKKyAgICAgIElmIG9ubHkgdGhlICpleGNlcHRpb24qIGFuZCBwb3NzaWJseSB0aGUgKm1zZyogYXJndW1lbnRzIGFyZSBnaXZlbiwKKyAgICAgIHJldHVybiBhIGNvbnRleHQgbWFuYWdlciBzbyB0aGF0IHRoZSBjb2RlIHVuZGVyIHRlc3QgY2FuIGJlIHdyaXR0ZW4KKyAgICAgIGlubGluZSByYXRoZXIgdGhhbiBhcyBhIGZ1bmN0aW9uOjoKIAogICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhTb21lRXhjZXB0aW9uKToKICAgICAgICAgICAgICBkb19zb21ldGhpbmcoKQogCisgICAgICBXaGVuIHVzZWQgYXMgYSBjb250ZXh0IG1hbmFnZXIsIDptZXRoOmBhc3NlcnRSYWlzZXNgIGFjY2VwdHMgdGhlCisgICAgICBhZGRpdGlvbmFsIGtleXdvcmQgYXJndW1lbnQgKm1zZyouCisKICAgICAgIFRoZSBjb250ZXh0IG1hbmFnZXIgd2lsbCBzdG9yZSB0aGUgY2F1Z2h0IGV4Y2VwdGlvbiBvYmplY3QgaW4gaXRzCiAgICAgICA6YXR0cjpgZXhjZXB0aW9uYCBhdHRyaWJ1dGUuICBUaGlzIGNhbiBiZSB1c2VmdWwgaWYgdGhlIGludGVudGlvbgogICAgICAgaXMgdG8gcGVyZm9ybSBhZGRpdGlvbmFsIGNoZWNrcyBvbiB0aGUgZXhjZXB0aW9uIHJhaXNlZDo6CkBAIC05ODYsOSArOTk0LDEyIEBACiAgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMgogICAgICAgICAgQWRkZWQgdGhlIDphdHRyOmBleGNlcHRpb25gIGF0dHJpYnV0ZS4KIAorICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICAgIEFkZGVkIHRoZSAqbXNnKiBrZXl3b3JkIGFyZ3VtZW50IHdoZW4gdXNlZCBhcyBhIGNvbnRleHQgbWFuYWdlci4KKwogCiAgICAuLiBtZXRob2Q6OiBhc3NlcnRSYWlzZXNSZWdleChleGNlcHRpb24sIHJlZ2V4LCBjYWxsYWJsZSwgKmFyZ3MsICoqa3dkcykKLSAgICAgICAgICAgICAgIGFzc2VydFJhaXNlc1JlZ2V4KGV4Y2VwdGlvbiwgcmVnZXgpCisgICAgICAgICAgICAgICBhc3NlcnRSYWlzZXNSZWdleChleGNlcHRpb24sIHJlZ2V4LCBtc2c9Tm9uZSkKIAogICAgICAgTGlrZSA6bWV0aDpgYXNzZXJ0UmFpc2VzYCBidXQgYWxzbyB0ZXN0cyB0aGF0ICpyZWdleCogbWF0Y2hlcwogICAgICAgb24gdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgcmFpc2VkIGV4Y2VwdGlvbi4gICpyZWdleCogbWF5IGJlCkBAIC0xMDA1LDEyICsxMDE2LDE2IEBACiAKICAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMQogICAgICAgICAgdW5kZXIgdGhlIG5hbWUgYGBhc3NlcnRSYWlzZXNSZWdleHBgYC4KKwogICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIKICAgICAgICAgIFJlbmFtZWQgdG8gOm1ldGg6YGFzc2VydFJhaXNlc1JlZ2V4YC4KIAorICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICAgIEFkZGVkIHRoZSAqbXNnKiBrZXl3b3JkIGFyZ3VtZW50IHdoZW4gdXNlZCBhcyBhIGNvbnRleHQgbWFuYWdlci4KKwogCiAgICAuLiBtZXRob2Q6OiBhc3NlcnRXYXJucyh3YXJuaW5nLCBjYWxsYWJsZSwgKmFyZ3MsICoqa3dkcykKLSAgICAgICAgICAgICAgIGFzc2VydFdhcm5zKHdhcm5pbmcpCisgICAgICAgICAgICAgICBhc3NlcnRXYXJucyh3YXJuaW5nLCBtc2c9Tm9uZSkKIAogICAgICAgVGVzdCB0aGF0IGEgd2FybmluZyBpcyB0cmlnZ2VyZWQgd2hlbiAqY2FsbGFibGUqIGlzIGNhbGxlZCB3aXRoIGFueQogICAgICAgcG9zaXRpb25hbCBvciBrZXl3b3JkIGFyZ3VtZW50cyB0aGF0IGFyZSBhbHNvIHBhc3NlZCB0bwpAQCAtMTAxOSwxMiArMTAzNCwxNiBAQAogICAgICAgVG8gY2F0Y2ggYW55IG9mIGEgZ3JvdXAgb2Ygd2FybmluZ3MsIGEgdHVwbGUgY29udGFpbmluZyB0aGUgd2FybmluZwogICAgICAgY2xhc3NlcyBtYXkgYmUgcGFzc2VkIGFzICp3YXJuaW5ncyouCiAKLSAgICAgIElmIG9ubHkgdGhlICp3YXJuaW5nKiBhcmd1bWVudCBpcyBnaXZlbiwgcmV0dXJucyBhIGNvbnRleHQgbWFuYWdlciBzbwotICAgICAgdGhhdCB0aGUgY29kZSB1bmRlciB0ZXN0IGNhbiBiZSB3cml0dGVuIGlubGluZSByYXRoZXIgdGhhbiBhcyBhIGZ1bmN0aW9uOjoKKyAgICAgIElmIG9ubHkgdGhlICp3YXJuaW5nKiBhbmQgcG9zc2libHkgdGhlICptc2cqIGFyZ3VtZW50cyBhcmUgZ2l2ZW4sCisgICAgICByZXR1cm5zIGEgY29udGV4dCBtYW5hZ2VyIHNvIHRoYXQgdGhlIGNvZGUgdW5kZXIgdGVzdCBjYW4gYmUgd3JpdHRlbgorICAgICAgaW5saW5lIHJhdGhlciB0aGFuIGFzIGEgZnVuY3Rpb246OgogCiAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0V2FybnMoU29tZVdhcm5pbmcpOgogICAgICAgICAgICAgIGRvX3NvbWV0aGluZygpCiAKKyAgICAgIFdoZW4gdXNlZCBhcyBhIGNvbnRleHQgbWFuYWdlciwgOm1ldGg6YGFzc2VydFJhaXNlc2AgYWNjZXB0cyB0aGUKKyAgICAgIGFkZGl0aW9uYWwga2V5d29yZCBhcmd1bWVudCAqbXNnKi4KKwogICAgICAgVGhlIGNvbnRleHQgbWFuYWdlciB3aWxsIHN0b3JlIHRoZSBjYXVnaHQgd2FybmluZyBvYmplY3QgaW4gaXRzCiAgICAgICA6YXR0cjpgd2FybmluZ2AgYXR0cmlidXRlLCBhbmQgdGhlIHNvdXJjZSBsaW5lIHdoaWNoIHRyaWdnZXJlZCB0aGUKICAgICAgIHdhcm5pbmdzIGluIHRoZSA6YXR0cjpgZmlsZW5hbWVgIGFuZCA6YXR0cjpgbGluZW5vYCBhdHRyaWJ1dGVzLgpAQCAtMTA0Miw5ICsxMDYxLDEyIEBACiAKICAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMgogCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgICAgQWRkZWQgdGhlICptc2cqIGtleXdvcmQgYXJndW1lbnQgd2hlbiB1c2VkIGFzIGEgY29udGV4dCBtYW5hZ2VyLgorCiAKICAgIC4uIG1ldGhvZDo6IGFzc2VydFdhcm5zUmVnZXgod2FybmluZywgcmVnZXgsIGNhbGxhYmxlLCAqYXJncywgKiprd2RzKQotICAgICAgICAgICAgICAgYXNzZXJ0V2FybnNSZWdleCh3YXJuaW5nLCByZWdleCkKKyAgICAgICAgICAgICAgIGFzc2VydFdhcm5zUmVnZXgod2FybmluZywgcmVnZXgsIG1zZz1Ob25lKQogCiAgICAgICBMaWtlIDptZXRoOmBhc3NlcnRXYXJuc2AgYnV0IGFsc28gdGVzdHMgdGhhdCAqcmVnZXgqIG1hdGNoZXMgb24gdGhlCiAgICAgICBtZXNzYWdlIG9mIHRoZSB0cmlnZ2VyZWQgd2FybmluZy4gICpyZWdleCogbWF5IGJlIGEgcmVndWxhciBleHByZXNzaW9uCkBAIC0xMDYyLDYgKzEwODQsOCBAQAogCiAgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAorICAgICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgICAgIEFkZGVkIHRoZSAqbXNnKiBrZXl3b3JkIGFyZ3VtZW50IHdoZW4gdXNlZCBhcyBhIGNvbnRleHQgbWFuYWdlci4KIAogCiAgICBUaGVyZSBhcmUgYWxzbyBvdGhlciBtZXRob2RzIHVzZWQgdG8gcGVyZm9ybSBtb3JlIHNwZWNpZmljIGNoZWNrcywgc3VjaCBhczoKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3VybGxpYi5lcnJvci5yc3QgYi9Eb2MvbGlicmFyeS91cmxsaWIuZXJyb3IucnN0CmluZGV4IDI4MjMyOWYuLmUyMGRiMjcgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3VybGxpYi5lcnJvci5yc3QKKysrIGIvRG9jL2xpYnJhcnkvdXJsbGliLmVycm9yLnJzdApAQCAtOCwyMSArOCwyMyBAQAogCiAKIFRoZSA6bW9kOmB1cmxsaWIuZXJyb3JgIG1vZHVsZSBkZWZpbmVzIHRoZSBleGNlcHRpb24gY2xhc3NlcyBmb3IgZXhjZXB0aW9ucwotcmFpc2VkIGJ5IDptb2Q6YHVybGxpYi5yZXF1ZXN0YC4gIFRoZSBiYXNlIGV4Y2VwdGlvbiBjbGFzcyBpcyA6ZXhjOmBVUkxFcnJvcmAsCi13aGljaCBpbmhlcml0cyBmcm9tIDpleGM6YElPRXJyb3JgLgorcmFpc2VkIGJ5IDptb2Q6YHVybGxpYi5yZXF1ZXN0YC4gIFRoZSBiYXNlIGV4Y2VwdGlvbiBjbGFzcyBpcyA6ZXhjOmBVUkxFcnJvcmAuCiAKIFRoZSBmb2xsb3dpbmcgZXhjZXB0aW9ucyBhcmUgcmFpc2VkIGJ5IDptb2Q6YHVybGxpYi5lcnJvcmAgYXMgYXBwcm9wcmlhdGU6CiAKIC4uIGV4Y2VwdGlvbjo6IFVSTEVycm9yCiAKICAgIFRoZSBoYW5kbGVycyByYWlzZSB0aGlzIGV4Y2VwdGlvbiAob3IgZGVyaXZlZCBleGNlcHRpb25zKSB3aGVuIHRoZXkgcnVuIGludG8KLSAgIGEgcHJvYmxlbS4gIEl0IGlzIGEgc3ViY2xhc3Mgb2YgOmV4YzpgSU9FcnJvcmAuCisgICBhIHByb2JsZW0uICBJdCBpcyBhIHN1YmNsYXNzIG9mIDpleGM6YE9TRXJyb3JgLgogCiAgICAuLiBhdHRyaWJ1dGU6OiByZWFzb24KIAogICAgICAgVGhlIHJlYXNvbiBmb3IgdGhpcyBlcnJvci4gIEl0IGNhbiBiZSBhIG1lc3NhZ2Ugc3RyaW5nIG9yIGFub3RoZXIKLSAgICAgIGV4Y2VwdGlvbiBpbnN0YW5jZSAoOmV4Yzpgc29ja2V0LmVycm9yYCBmb3IgcmVtb3RlIFVSTHMsIDpleGM6YE9TRXJyb3JgCi0gICAgICBmb3IgbG9jYWwgVVJMcykuCisgICAgICBleGNlcHRpb24gaW5zdGFuY2UuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICA6ZXhjOmBVUkxFcnJvcmAgaGFzIGJlZW4gbWFkZSBhIHN1YmNsYXNzIG9mIDpleGM6YE9TRXJyb3JgIGluc3RlYWQKKyAgICAgIG9mIDpleGM6YElPRXJyb3JgLgogCiAKIC4uIGV4Y2VwdGlvbjo6IEhUVFBFcnJvcgpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvdXJsbGliLnJlcXVlc3QucnN0IGIvRG9jL2xpYnJhcnkvdXJsbGliLnJlcXVlc3QucnN0CmluZGV4IGNjNzU5YTQuLjI5YTg0MTMgMTAwNjQ0Ci0tLSBhL0RvYy9saWJyYXJ5L3VybGxpYi5yZXF1ZXN0LnJzdAorKysgYi9Eb2MvbGlicmFyeS91cmxsaWIucmVxdWVzdC5yc3QKQEAgLTEzMiw3ICsxMzIsNyBAQAogCiBUaGUgZm9sbG93aW5nIGNsYXNzZXMgYXJlIHByb3ZpZGVkOgogCi0uLiBjbGFzczo6IFJlcXVlc3QodXJsLCBkYXRhPU5vbmUsIGhlYWRlcnM9e30sIG9yaWdpbl9yZXFfaG9zdD1Ob25lLCB1bnZlcmlmaWFibGU9RmFsc2UpCisuLiBjbGFzczo6IFJlcXVlc3QodXJsLCBkYXRhPU5vbmUsIGhlYWRlcnM9e30sIG9yaWdpbl9yZXFfaG9zdD1Ob25lLCB1bnZlcmlmaWFibGU9RmFsc2UsIG1ldGhvZD1Ob25lKQogCiAgICBUaGlzIGNsYXNzIGlzIGFuIGFic3RyYWN0aW9uIG9mIGEgVVJMIHJlcXVlc3QuCiAKQEAgLTE0MCw4ICsxNDAsOCBAQAogCiAgICAqZGF0YSogbWF5IGJlIGEgc3RyaW5nIHNwZWNpZnlpbmcgYWRkaXRpb25hbCBkYXRhIHRvIHNlbmQgdG8gdGhlCiAgICBzZXJ2ZXIsIG9yIGBgTm9uZWBgIGlmIG5vIHN1Y2ggZGF0YSBpcyBuZWVkZWQuICBDdXJyZW50bHkgSFRUUAotICAgcmVxdWVzdHMgYXJlIHRoZSBvbmx5IG9uZXMgdGhhdCB1c2UgKmRhdGEqOyB0aGUgSFRUUCByZXF1ZXN0IHdpbGwKLSAgIGJlIGEgUE9TVCBpbnN0ZWFkIG9mIGEgR0VUIHdoZW4gdGhlICpkYXRhKiBwYXJhbWV0ZXIgaXMgcHJvdmlkZWQuCisgICByZXF1ZXN0cyBhcmUgdGhlIG9ubHkgb25lcyB0aGF0IHVzZSAqZGF0YSosIGluIG9yZGVyIHRvIGNob29zZSBiZXR3ZWVuCisgICBgYCdHRVQnYGAgYW5kIGBgJ1BPU1QnYGAgd2hlbiAqbWV0aG9kKiBpcyBub3Qgc3BlY2lmaWVkLgogICAgKmRhdGEqIHNob3VsZCBiZSBhIGJ1ZmZlciBpbiB0aGUgc3RhbmRhcmQKICAgIDptaW1ldHlwZTpgYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkYCBmb3JtYXQuICBUaGUKICAgIDpmdW5jOmB1cmxsaWIucGFyc2UudXJsZW5jb2RlYCBmdW5jdGlvbiB0YWtlcyBhIG1hcHBpbmcgb3Igc2VxdWVuY2UKQEAgLTE1Nyw4ICsxNTcsOCBAQAogICAgOm1vZDpgdXJsbGliYCdzIGRlZmF1bHQgdXNlciBhZ2VudCBzdHJpbmcgaXMKICAgIGBgIlB5dGhvbi11cmxsaWIvMi42ImBgIChvbiBQeXRob24gMi42KS4KIAotICAgVGhlIGZpbmFsIHR3byBhcmd1bWVudHMgYXJlIG9ubHkgb2YgaW50ZXJlc3QgZm9yIGNvcnJlY3QgaGFuZGxpbmcKLSAgIG9mIHRoaXJkLXBhcnR5IEhUVFAgY29va2llczoKKyAgIFRoZSBmb2xsb3dpbmcgdHdvIGFyZ3VtZW50cywgKm9yaWdpbl9yZXFfaG9zdCogYW5kICp1bnZlcmlmaWFibGUqLAorICAgYXJlIG9ubHkgb2YgaW50ZXJlc3QgZm9yIGNvcnJlY3QgaGFuZGxpbmcgb2YgdGhpcmQtcGFydHkgSFRUUCBjb29raWVzOgogCiAgICAqb3JpZ2luX3JlcV9ob3N0KiBzaG91bGQgYmUgdGhlIHJlcXVlc3QtaG9zdCBvZiB0aGUgb3JpZ2luCiAgICB0cmFuc2FjdGlvbiwgYXMgZGVmaW5lZCBieSA6cmZjOmAyOTY1YC4gIEl0IGRlZmF1bHRzIHRvCkBAIC0xNzUsNiArMTc1LDEzIEBACiAgICBkb2N1bWVudCwgYW5kIHRoZSB1c2VyIGhhZCBubyBvcHRpb24gdG8gYXBwcm92ZSB0aGUgYXV0b21hdGljCiAgICBmZXRjaGluZyBvZiB0aGUgaW1hZ2UsIHRoaXMgc2hvdWxkIGJlIHRydWUuCiAKKyAgICptZXRob2QqIHNob3VsZCBiZSBhIHN0cmluZyB0aGF0IGluZGljYXRlcyB0aGUgSFRUUCByZXF1ZXN0IG1ldGhvZCB0aGF0CisgICB3aWxsIGJlIHVzZWQgKGUuZy4gYGAnSEVBRCdgYCkuICBJdHMgdmFsdWUgaXMgc3RvcmVkIGluIHRoZQorICAgOmF0dHI6YH5SZXF1ZXN0Lm1ldGhvZGAgYXR0cmlidXRlIGFuZCBpcyB1c2VkIGJ5IDptZXRoOmBnZXRfbWV0aG9kKClgLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgIDphdHRyOmBSZXF1ZXN0Lm1ldGhvZGAgYXJndW1lbnQgaXMgYWRkZWQgdG8gdGhlIFJlcXVlc3QgY2xhc3MuCisKIAogLi4gY2xhc3M6OiBPcGVuZXJEaXJlY3RvcigpCiAKQEAgLTI0MCwxMCArMjQ3LDExIEBACiAKIC4uIGNsYXNzOjogSFRUUEJhc2ljQXV0aEhhbmRsZXIocGFzc3dvcmRfbWdyPU5vbmUpCiAKLSAgIEhhbmRsZSBhdXRoZW50aWNhdGlvbiB3aXRoIHRoZSByZW1vdGUgaG9zdC4gKnBhc3N3b3JkX21nciosIGlmIGdpdmVuLCBzaG91bGQgYmUKLSAgIHNvbWV0aGluZyB0aGF0IGlzIGNvbXBhdGlibGUgd2l0aCA6Y2xhc3M6YEhUVFBQYXNzd29yZE1ncmA7IHJlZmVyIHRvIHNlY3Rpb24KLSAgIDpyZWY6YGh0dHAtcGFzc3dvcmQtbWdyYCBmb3IgaW5mb3JtYXRpb24gb24gdGhlIGludGVyZmFjZSB0aGF0IG11c3QgYmUKLSAgIHN1cHBvcnRlZC4KKyAgIEhhbmRsZSBhdXRoZW50aWNhdGlvbiB3aXRoIHRoZSByZW1vdGUgaG9zdC4gKnBhc3N3b3JkX21nciosIGlmIGdpdmVuLCBzaG91bGQKKyAgIGJlIHNvbWV0aGluZyB0aGF0IGlzIGNvbXBhdGlibGUgd2l0aCA6Y2xhc3M6YEhUVFBQYXNzd29yZE1ncmA7IHJlZmVyIHRvCisgICBzZWN0aW9uIDpyZWY6YGh0dHAtcGFzc3dvcmQtbWdyYCBmb3IgaW5mb3JtYXRpb24gb24gdGhlIGludGVyZmFjZSB0aGF0IG11c3QKKyAgIGJlIHN1cHBvcnRlZC4gSFRUUEJhc2ljQXV0aEhhbmRsZXIgd2lsbCByYWlzZSBhIDpleGM6YFZhbHVlRXJyb3JgIHdoZW4KKyAgIHByZXNlbnRlZCB3aXRoIGEgd3JvbmcgQXV0aGVudGljYXRpb24gc2NoZW1lLgogCiAKIC4uIGNsYXNzOjogUHJveHlCYXNpY0F1dGhIYW5kbGVyKHBhc3N3b3JkX21ncj1Ob25lKQpAQCAtMjY1LDEwICsyNzMsMTkgQEAKIAogLi4gY2xhc3M6OiBIVFRQRGlnZXN0QXV0aEhhbmRsZXIocGFzc3dvcmRfbWdyPU5vbmUpCiAKLSAgIEhhbmRsZSBhdXRoZW50aWNhdGlvbiB3aXRoIHRoZSByZW1vdGUgaG9zdC4gKnBhc3N3b3JkX21nciosIGlmIGdpdmVuLCBzaG91bGQgYmUKLSAgIHNvbWV0aGluZyB0aGF0IGlzIGNvbXBhdGlibGUgd2l0aCA6Y2xhc3M6YEhUVFBQYXNzd29yZE1ncmA7IHJlZmVyIHRvIHNlY3Rpb24KLSAgIDpyZWY6YGh0dHAtcGFzc3dvcmQtbWdyYCBmb3IgaW5mb3JtYXRpb24gb24gdGhlIGludGVyZmFjZSB0aGF0IG11c3QgYmUKLSAgIHN1cHBvcnRlZC4KKyAgIEhhbmRsZSBhdXRoZW50aWNhdGlvbiB3aXRoIHRoZSByZW1vdGUgaG9zdC4gKnBhc3N3b3JkX21nciosIGlmIGdpdmVuLCBzaG91bGQKKyAgIGJlIHNvbWV0aGluZyB0aGF0IGlzIGNvbXBhdGlibGUgd2l0aCA6Y2xhc3M6YEhUVFBQYXNzd29yZE1ncmA7IHJlZmVyIHRvCisgICBzZWN0aW9uIDpyZWY6YGh0dHAtcGFzc3dvcmQtbWdyYCBmb3IgaW5mb3JtYXRpb24gb24gdGhlIGludGVyZmFjZSB0aGF0IG11c3QKKyAgIGJlIHN1cHBvcnRlZC4gV2hlbiBib3RoIERpZ2VzdCBBdXRoZW50aWNhdGlvbiBIYW5kbGVyIGFuZCBCYXNpYworICAgQXV0aGVudGljYXRpb24gSGFuZGxlciBhcmUgYm90aCBhZGRlZCwgRGlnZXN0IEF1dGhlbnRpY2F0aW9uIGlzIGFsd2F5cyB0cmllZAorICAgZmlyc3QuIElmIHRoZSBEaWdlc3QgQXV0aGVudGljYXRpb24gcmV0dXJucyBhIDQweCByZXNwb25zZSBhZ2FpbiwgaXQgaXMgc2VudAorICAgdG8gQmFzaWMgQXV0aGVudGljYXRpb24gaGFuZGxlciB0byBIYW5kbGUuICBUaGlzIEhhbmRsZXIgbWV0aG9kIHdpbGwgcmFpc2UgYQorICAgOmV4YzpgVmFsdWVFcnJvcmAgd2hlbiBwcmVzZW50ZWQgd2l0aCBhbiBhdXRoZW50aWNhdGlvbiBzY2hlbWUgb3RoZXIgdGhhbgorICAgRGlnZXN0IG9yIEJhc2ljLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgUmFpc2UgOmV4YzpgVmFsdWVFcnJvcmAgb24gdW5zdXBwb3J0ZWQgQXV0aGVudGljYXRpb24gU2NoZW1lLgorCiAKIAogLi4gY2xhc3M6OiBQcm94eURpZ2VzdEF1dGhIYW5kbGVyKHBhc3N3b3JkX21ncj1Ob25lKQpAQCAtMzU5LDYgKzM3NiwxNSBAQAogICAgYm9vbGVhbiwgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIHJlcXVlc3QgaXMgdW52ZXJpZmlhYmxlIGFzIGRlZmluZWQKICAgIGJ5IFJGQyAyOTY1LgogCisuLiBhdHRyaWJ1dGU6OiBSZXF1ZXN0Lm1ldGhvZAorCisgICBUaGUgSFRUUCByZXF1ZXN0IG1ldGhvZCB0byB1c2UuICBUaGlzIHZhbHVlIGlzIHVzZWQgYnkKKyAgIDptZXRoOmB+UmVxdWVzdC5nZXRfbWV0aG9kYCB0byBvdmVycmlkZSB0aGUgY29tcHV0ZWQgSFRUUCByZXF1ZXN0CisgICBtZXRob2QgdGhhdCB3b3VsZCBvdGhlcndpc2UgYmUgcmV0dXJuZWQuICBUaGlzIGF0dHJpYnV0ZSBpcyBpbml0aWFsaXplZCB3aXRoCisgICB0aGUgdmFsdWUgb2YgdGhlICptZXRob2QqIGFyZ3VtZW50IHBhc3NlZCB0byB0aGUgY29uc3RydWN0b3IuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCiAuLiBtZXRob2Q6OiBSZXF1ZXN0LmFkZF9kYXRhKGRhdGEpCiAKICAgIFNldCB0aGUgOmNsYXNzOmBSZXF1ZXN0YCBkYXRhIHRvICpkYXRhKi4gIFRoaXMgaXMgaWdub3JlZCBieSBhbGwgaGFuZGxlcnMgZXhjZXB0CkBAIC0zNjgsOCArMzk0LDEzIEBACiAKIC4uIG1ldGhvZDo6IFJlcXVlc3QuZ2V0X21ldGhvZCgpCiAKLSAgIFJldHVybiBhIHN0cmluZyBpbmRpY2F0aW5nIHRoZSBIVFRQIHJlcXVlc3QgbWV0aG9kLiAgVGhpcyBpcyBvbmx5IG1lYW5pbmdmdWwgZm9yCi0gICBIVFRQIHJlcXVlc3RzLCBhbmQgY3VycmVudGx5IGFsd2F5cyByZXR1cm5zIGBgJ0dFVCdgYCBvciBgYCdQT1NUJ2BgLgorICAgUmV0dXJuIGEgc3RyaW5nIGluZGljYXRpbmcgdGhlIEhUVFAgcmVxdWVzdCBtZXRob2QuICBJZgorICAgOmF0dHI6YFJlcXVlc3QubWV0aG9kYCBpcyBub3QgYGBOb25lYGAsIHJldHVybiBpdHMgdmFsdWUsIG90aGVyd2lzZSByZXR1cm4KKyAgIGBgJ0dFVCdgYCBpZiA6YXR0cjpgUmVxdWVzdC5kYXRhYCBpcyBgYE5vbmVgYCwgb3IgYGAnUE9TVCdgYCBpZiBpdCdzIG5vdC4KKyAgIFRoaXMgaXMgb25seSBtZWFuaW5nZnVsIGZvciBIVFRQIHJlcXVlc3RzLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgZ2V0X21ldGhvZCBub3cgbG9va3MgYXQgdGhlIHZhbHVlIG9mIDphdHRyOmBSZXF1ZXN0Lm1ldGhvZGAuCiAKIAogLi4gbWV0aG9kOjogUmVxdWVzdC5oYXNfZGF0YSgpCkBAIC0xMTYyLDcgKzExOTMsNyBAQAogICAgKmtleV9maWxlKiBhbmQgKmNlcnRfZmlsZSogYXJlIHN1cHBvcnRlZCB0byBwcm92aWRlIGFuICBTU0wga2V5IGFuZCBjZXJ0aWZpY2F0ZTsKICAgIGJvdGggYXJlIG5lZWRlZCB0byBzdXBwb3J0IGNsaWVudCBhdXRoZW50aWNhdGlvbi4KIAotICAgOmNsYXNzOmBVUkxvcGVuZXJgIG9iamVjdHMgd2lsbCByYWlzZSBhbiA6ZXhjOmBJT0Vycm9yYCBleGNlcHRpb24gaWYgdGhlIHNlcnZlcgorICAgOmNsYXNzOmBVUkxvcGVuZXJgIG9iamVjdHMgd2lsbCByYWlzZSBhbiA6ZXhjOmBPU0Vycm9yYCBleGNlcHRpb24gaWYgdGhlIHNlcnZlcgogICAgcmV0dXJucyBhbiBlcnJvciBjb2RlLgogCiAgICAgLi4gbWV0aG9kOjogb3BlbihmdWxsdXJsLCBkYXRhPU5vbmUpCmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS93YXJuaW5ncy5yc3QgYi9Eb2MvbGlicmFyeS93YXJuaW5ncy5yc3QKaW5kZXggOGFmMTlhMi4uODM4N2Y1YSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvd2FybmluZ3MucnN0CisrKyBiL0RvYy9saWJyYXJ5L3dhcm5pbmdzLnJzdApAQCAtMzM5LDggKzMzOSw3IEBACiAgICBXcml0ZSBhIHdhcm5pbmcgdG8gYSBmaWxlLiAgVGhlIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gY2FsbHMKICAgIGBgZm9ybWF0d2FybmluZyhtZXNzYWdlLCBjYXRlZ29yeSwgZmlsZW5hbWUsIGxpbmVubywgbGluZSlgYCBhbmQgd3JpdGVzIHRoZQogICAgcmVzdWx0aW5nIHN0cmluZyB0byAqZmlsZSosIHdoaWNoIGRlZmF1bHRzIHRvIGBgc3lzLnN0ZGVycmBgLiAgWW91IG1heSByZXBsYWNlCi0gICB0aGlzIGZ1bmN0aW9uIHdpdGggYW4gYWx0ZXJuYXRpdmUgaW1wbGVtZW50YXRpb24gYnkgYXNzaWduaW5nIHRvCi0gICBgYHdhcm5pbmdzLnNob3d3YXJuaW5nYGAuCisgICB0aGlzIGZ1bmN0aW9uIHdpdGggYW55IGNhbGxhYmxlIGJ5IGFzc2lnbmluZyB0byBgYHdhcm5pbmdzLnNob3d3YXJuaW5nYGAuCiAgICAqbGluZSogaXMgYSBsaW5lIG9mIHNvdXJjZSBjb2RlIHRvIGJlIGluY2x1ZGVkIGluIHRoZSB3YXJuaW5nCiAgICBtZXNzYWdlOyBpZiAqbGluZSogaXMgbm90IHN1cHBsaWVkLCA6ZnVuYzpgc2hvd3dhcm5pbmdgIHdpbGwKICAgIHRyeSB0byByZWFkIHRoZSBsaW5lIHNwZWNpZmllZCBieSAqZmlsZW5hbWUqIGFuZCAqbGluZW5vKi4KZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3dlYmJyb3dzZXIucnN0IGIvRG9jL2xpYnJhcnkvd2ViYnJvd3Nlci5yc3QKaW5kZXggMjNiYTZjNS4uOWNmOGM1MCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvd2ViYnJvd3Nlci5yc3QKKysrIGIvRG9jL2xpYnJhcnkvd2ViYnJvd3Nlci5yc3QKQEAgLTk2LDQ3ICs5Niw1NSBAQAogbWF5IGJlIHBhc3NlZCB0byB0aGUgOmZ1bmM6YGdldGAgZnVuY3Rpb24gYW5kIHRoZSBjb3JyZXNwb25kaW5nIGluc3RhbnRpYXRpb25zCiBmb3IgdGhlIGNvbnRyb2xsZXIgY2xhc3NlcywgYWxsIGRlZmluZWQgaW4gdGhpcyBtb2R1bGUuCiAKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBUeXBlIE5hbWUgICAgICAgICAgICAgfCBDbGFzcyBOYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyB8Ci0rPT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKLXwgYGAnbW96aWxsYSdgYCAgICAgICAgIHwgOmNsYXNzOmBNb3ppbGxhKCdtb3ppbGxhJylgICAgICAgICAgICAgIHwgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ2ZpcmVmb3gnYGAgICAgICAgICB8IDpjbGFzczpgTW96aWxsYSgnbW96aWxsYScpYCAgICAgICAgICAgICB8ICAgICAgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCduZXRzY2FwZSdgYCAgICAgICAgfCA6Y2xhc3M6YE1vemlsbGEoJ25ldHNjYXBlJylgICAgICAgICAgICAgfCAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAnZ2FsZW9uJ2BgICAgICAgICAgIHwgOmNsYXNzOmBHYWxlb24oJ2dhbGVvbicpYCAgICAgICAgICAgICAgIHwgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ2VwaXBoYW55J2BgICAgICAgICB8IDpjbGFzczpgR2FsZW9uKCdlcGlwaGFueScpYCAgICAgICAgICAgICB8ICAgICAgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCdza2lwc3RvbmUnYGAgICAgICAgfCA6Y2xhc3M6YEJhY2tncm91bmRCcm93c2VyKCdza2lwc3RvbmUnKWAgfCAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAna2ZtY2xpZW50J2BgICAgICAgIHwgOmNsYXNzOmBLb25xdWVyb3IoKWAgICAgICAgICAgICAgICAgICAgIHwgXCgxKSAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ2tvbnF1ZXJvcidgYCAgICAgICB8IDpjbGFzczpgS29ucXVlcm9yKClgICAgICAgICAgICAgICAgICAgICB8IFwoMSkgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCdrZm0nYGAgICAgICAgICAgICAgfCA6Y2xhc3M6YEtvbnF1ZXJvcigpYCAgICAgICAgICAgICAgICAgICAgfCBcKDEpICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAnbW9zYWljJ2BgICAgICAgICAgIHwgOmNsYXNzOmBCYWNrZ3JvdW5kQnJvd3NlcignbW9zYWljJylgICAgIHwgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ29wZXJhJ2BgICAgICAgICAgICB8IDpjbGFzczpgT3BlcmEoKWAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCdncmFpbCdgYCAgICAgICAgICAgfCA6Y2xhc3M6YEdyYWlsKClgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAnbGlua3MnYGAgICAgICAgICAgIHwgOmNsYXNzOmBHZW5lcmljQnJvd3NlcignbGlua3MnKWAgICAgICAgIHwgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ2VsaW5rcydgYCAgICAgICAgICB8IDpjbGFzczpgRWxpbmtzKCdlbGlua3MnKWAgICAgICAgICAgICAgICB8ICAgICAgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCdseW54J2BgICAgICAgICAgICAgfCA6Y2xhc3M6YEdlbmVyaWNCcm93c2VyKCdseW54JylgICAgICAgICAgfCAgICAgICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAndzNtJ2BgICAgICAgICAgICAgIHwgOmNsYXNzOmBHZW5lcmljQnJvd3NlcigndzNtJylgICAgICAgICAgIHwgICAgICAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCi18IGBgJ3dpbmRvd3MtZGVmYXVsdCdgYCB8IDpjbGFzczpgV2luZG93c0RlZmF1bHRgICAgICAgICAgICAgICAgICB8IFwoMikgIHwKLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwotfCBgYCdpbnRlcm5ldC1jb25maWcnYGAgfCA6Y2xhc3M6YEludGVybmV0Q29uZmlnYCAgICAgICAgICAgICAgICAgfCBcKDMpICB8Ci0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGAnbWFjb3N4J2BgICAgICAgICAgIHwgOmNsYXNzOmBNYWNPU1goJ2RlZmF1bHQnKWAgICAgICAgICAgICAgIHwgXCg0KSAgfAotKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IFR5cGUgTmFtZSAgICAgICAgICAgICAgfCBDbGFzcyBOYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyB8CisrPT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT0rCit8IGBgJ21vemlsbGEnYGAgICAgICAgICAgfCA6Y2xhc3M6YE1vemlsbGEoJ21vemlsbGEnKWAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2ZpcmVmb3gnYGAgICAgICAgICAgfCA6Y2xhc3M6YE1vemlsbGEoJ21vemlsbGEnKWAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ25ldHNjYXBlJ2BgICAgICAgICAgfCA6Y2xhc3M6YE1vemlsbGEoJ25ldHNjYXBlJylgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2dhbGVvbidgYCAgICAgICAgICAgfCA6Y2xhc3M6YEdhbGVvbignZ2FsZW9uJylgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2VwaXBoYW55J2BgICAgICAgICAgfCA6Y2xhc3M6YEdhbGVvbignZXBpcGhhbnknKWAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ3NraXBzdG9uZSdgYCAgICAgICAgfCA6Y2xhc3M6YEJhY2tncm91bmRCcm93c2VyKCdza2lwc3RvbmUnKWAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2tmbWNsaWVudCdgYCAgICAgICAgfCA6Y2xhc3M6YEtvbnF1ZXJvcigpYCAgICAgICAgICAgICAgICAgICAgfCBcKDEpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2tvbnF1ZXJvcidgYCAgICAgICAgfCA6Y2xhc3M6YEtvbnF1ZXJvcigpYCAgICAgICAgICAgICAgICAgICAgfCBcKDEpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2tmbSdgYCAgICAgICAgICAgICAgfCA6Y2xhc3M6YEtvbnF1ZXJvcigpYCAgICAgICAgICAgICAgICAgICAgfCBcKDEpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ21vc2FpYydgYCAgICAgICAgICAgfCA6Y2xhc3M6YEJhY2tncm91bmRCcm93c2VyKCdtb3NhaWMnKWAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ29wZXJhJ2BgICAgICAgICAgICAgfCA6Y2xhc3M6YE9wZXJhKClgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2dyYWlsJ2BgICAgICAgICAgICAgfCA6Y2xhc3M6YEdyYWlsKClgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2xpbmtzJ2BgICAgICAgICAgICAgfCA6Y2xhc3M6YEdlbmVyaWNCcm93c2VyKCdsaW5rcycpYCAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2VsaW5rcydgYCAgICAgICAgICAgfCA6Y2xhc3M6YEVsaW5rcygnZWxpbmtzJylgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2x5bngnYGAgICAgICAgICAgICAgfCA6Y2xhc3M6YEdlbmVyaWNCcm93c2VyKCdseW54JylgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ3czbSdgYCAgICAgICAgICAgICAgfCA6Y2xhc3M6YEdlbmVyaWNCcm93c2VyKCd3M20nKWAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ3dpbmRvd3MtZGVmYXVsdCdgYCAgfCA6Y2xhc3M6YFdpbmRvd3NEZWZhdWx0YCAgICAgICAgICAgICAgICAgfCBcKDIpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2ludGVybmV0LWNvbmZpZydgYCAgfCA6Y2xhc3M6YEludGVybmV0Q29uZmlnYCAgICAgICAgICAgICAgICAgfCBcKDMpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ21hY29zeCdgYCAgICAgICAgICAgfCA6Y2xhc3M6YE1hY09TWCgnZGVmYXVsdCcpYCAgICAgICAgICAgICAgfCBcKDQpICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2dvb2dsZS1jaHJvbWUnYGAgICAgfCA6Y2xhc3M6YENocm9tZSgnZ29vZ2xlLWNocm9tZScpYCAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2Nocm9tZSdgYCAgICAgICAgICAgfCA6Y2xhc3M6YENocm9tZSgnY2hyb21lJylgICAgICAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2Nocm9taXVtJ2BgICAgICAgICAgfCA6Y2xhc3M6YENocm9taXVtKCdjaHJvbWl1bScpYCAgICAgICAgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCit8IGBgJ2Nocm9taXVtLWJyb3dzZXInYGAgfCA6Y2xhc3M6YENocm9taXVtKCdjaHJvbWl1bS1icm93c2VyJylgICAgfCAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCiAKIE5vdGVzOgogCkBAIC0xNTYsMTIgKzE2NCwxNSBAQAogKDQpCiAgICBPbmx5IG9uIE1hYyBPUyBYIHBsYXRmb3JtLgogCisuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMKKyAgIFN1cHBvcnQgZm9yIENocm9tZS9DaHJvbWl1bSBoYXMgYmVlbiBhZGRlZC4KKwogSGVyZSBhcmUgc29tZSBzaW1wbGUgZXhhbXBsZXM6OgogCi0gICB1cmwgPSAnaHR0cDovL3d3dy5weXRob24ub3JnLycKKyAgIHVybCA9ICdodHRwOi8vZG9jcy5weXRob24ub3JnLycKIAogICAgIyBPcGVuIFVSTCBpbiBhIG5ldyB0YWIsIGlmIGEgYnJvd3NlciB3aW5kb3cgaXMgYWxyZWFkeSBvcGVuLgotICAgd2ViYnJvd3Nlci5vcGVuX25ld190YWIodXJsICsgJ2RvYy8nKQorICAgd2ViYnJvd3Nlci5vcGVuX25ld190YWIodXJsKQogCiAgICAjIE9wZW4gVVJMIGluIG5ldyB3aW5kb3csIHJhaXNpbmcgdGhlIHdpbmRvdyBpZiBwb3NzaWJsZS4KICAgIHdlYmJyb3dzZXIub3Blbl9uZXcodXJsKQpkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvd2lucmVnLnJzdCBiL0RvYy9saWJyYXJ5L3dpbnJlZy5yc3QKaW5kZXggNWNmMzBlZS4uMzc2NzUyZSAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvd2lucmVnLnJzdAorKysgYi9Eb2MvbGlicmFyeS93aW5yZWcucnN0CkBAIC0zOCw3ICszOCwxMSBAQAogICAgKmtleSogaXMgdGhlIHByZWRlZmluZWQgaGFuZGxlIHRvIGNvbm5lY3QgdG8uCiAKICAgIFRoZSByZXR1cm4gdmFsdWUgaXMgdGhlIGhhbmRsZSBvZiB0aGUgb3BlbmVkIGtleS4gSWYgdGhlIGZ1bmN0aW9uIGZhaWxzLCBhCi0gICA6ZXhjOmBXaW5kb3dzRXJyb3JgIGV4Y2VwdGlvbiBpcyByYWlzZWQuCisgICA6ZXhjOmBPU0Vycm9yYCBleGNlcHRpb24gaXMgcmFpc2VkLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhpcyBmdW5jdGlvbiB1c2VkIHRvIHJhaXNlIGEgOmV4YzpgV2luZG93c0Vycm9yYCwgd2hpY2ggaXMgbm93IGFuCisgICAgICBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAogCiAuLiBmdW5jdGlvbjo6IENyZWF0ZUtleShrZXksIHN1Yl9rZXkpCkBAIC01Nyw3ICs2MSwxMSBAQAogICAgSWYgdGhlIGtleSBhbHJlYWR5IGV4aXN0cywgdGhpcyBmdW5jdGlvbiBvcGVucyB0aGUgZXhpc3Rpbmcga2V5LgogCiAgICBUaGUgcmV0dXJuIHZhbHVlIGlzIHRoZSBoYW5kbGUgb2YgdGhlIG9wZW5lZCBrZXkuIElmIHRoZSBmdW5jdGlvbiBmYWlscywgYQotICAgOmV4YzpgV2luZG93c0Vycm9yYCBleGNlcHRpb24gaXMgcmFpc2VkLgorICAgOmV4YzpgT1NFcnJvcmAgZXhjZXB0aW9uIGlzIHJhaXNlZC4KKworICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gdXNlZCB0byByYWlzZSBhIDpleGM6YFdpbmRvd3NFcnJvcmAsIHdoaWNoIGlzIG5vdyBhbgorICAgICAgYWxpYXMgb2YgOmV4YzpgT1NFcnJvcmAuCiAKIAogLi4gZnVuY3Rpb246OiBDcmVhdGVLZXlFeChrZXksIHN1Yl9rZXksIHJlc2VydmVkPTAsIGFjY2Vzcz1LRVlfQUxMX0FDQ0VTUykKQEAgLTgyLDEwICs5MCwxNCBAQAogICAgSWYgdGhlIGtleSBhbHJlYWR5IGV4aXN0cywgdGhpcyBmdW5jdGlvbiBvcGVucyB0aGUgZXhpc3Rpbmcga2V5LgogCiAgICBUaGUgcmV0dXJuIHZhbHVlIGlzIHRoZSBoYW5kbGUgb2YgdGhlIG9wZW5lZCBrZXkuIElmIHRoZSBmdW5jdGlvbiBmYWlscywgYQotICAgOmV4YzpgV2luZG93c0Vycm9yYCBleGNlcHRpb24gaXMgcmFpc2VkLgorICAgOmV4YzpgT1NFcnJvcmAgZXhjZXB0aW9uIGlzIHJhaXNlZC4KIAogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4yCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIGZ1bmN0aW9uIHVzZWQgdG8gcmFpc2UgYSA6ZXhjOmBXaW5kb3dzRXJyb3JgLCB3aGljaCBpcyBub3cgYW4KKyAgICAgIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgorCiAKIC4uIGZ1bmN0aW9uOjogRGVsZXRlS2V5KGtleSwgc3ViX2tleSkKIApAQCAtMTAwLDcgKzExMiwxMSBAQAogICAgKlRoaXMgbWV0aG9kIGNhbiBub3QgZGVsZXRlIGtleXMgd2l0aCBzdWJrZXlzLioKIAogICAgSWYgdGhlIG1ldGhvZCBzdWNjZWVkcywgdGhlIGVudGlyZSBrZXksIGluY2x1ZGluZyBhbGwgb2YgaXRzIHZhbHVlcywgaXMgcmVtb3ZlZC4KLSAgIElmIHRoZSBtZXRob2QgZmFpbHMsIGEgOmV4YzpgV2luZG93c0Vycm9yYCBleGNlcHRpb24gaXMgcmFpc2VkLgorICAgSWYgdGhlIG1ldGhvZCBmYWlscywgYSA6ZXhjOmBPU0Vycm9yYCBleGNlcHRpb24gaXMgcmFpc2VkLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhpcyBmdW5jdGlvbiB1c2VkIHRvIHJhaXNlIGEgOmV4YzpgV2luZG93c0Vycm9yYCwgd2hpY2ggaXMgbm93IGFuCisgICAgICBhbGlhcyBvZiA6ZXhjOmBPU0Vycm9yYC4KIAogCiAuLiBmdW5jdGlvbjo6IERlbGV0ZUtleUV4KGtleSwgc3ViX2tleSwgYWNjZXNzPUtFWV9BTExfQUNDRVNTLCByZXNlcnZlZD0wKQpAQCAtMTI5LDEyICsxNDUsMTYgQEAKICAgICpUaGlzIG1ldGhvZCBjYW4gbm90IGRlbGV0ZSBrZXlzIHdpdGggc3Via2V5cy4qCiAKICAgIElmIHRoZSBtZXRob2Qgc3VjY2VlZHMsIHRoZSBlbnRpcmUga2V5LCBpbmNsdWRpbmcgYWxsIG9mIGl0cyB2YWx1ZXMsIGlzCi0gICByZW1vdmVkLiBJZiB0aGUgbWV0aG9kIGZhaWxzLCBhIDpleGM6YFdpbmRvd3NFcnJvcmAgZXhjZXB0aW9uIGlzIHJhaXNlZC4KKyAgIHJlbW92ZWQuIElmIHRoZSBtZXRob2QgZmFpbHMsIGEgOmV4YzpgT1NFcnJvcmAgZXhjZXB0aW9uIGlzIHJhaXNlZC4KIAogICAgT24gdW5zdXBwb3J0ZWQgV2luZG93cyB2ZXJzaW9ucywgOmV4YzpgTm90SW1wbGVtZW50ZWRFcnJvcmAgaXMgcmFpc2VkLgogCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjIKIAorICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjMKKyAgICAgIFRoaXMgZnVuY3Rpb24gdXNlZCB0byByYWlzZSBhIDpleGM6YFdpbmRvd3NFcnJvcmAsIHdoaWNoIGlzIG5vdyBhbgorICAgICAgYWxpYXMgb2YgOmV4YzpgT1NFcnJvcmAuCisKIAogLi4gZnVuY3Rpb246OiBEZWxldGVWYWx1ZShrZXksIHZhbHVlKQogCkBAIC0xNTYsOSArMTc2LDEzIEBACiAgICAqaW5kZXgqIGlzIGFuIGludGVnZXIgdGhhdCBpZGVudGlmaWVzIHRoZSBpbmRleCBvZiB0aGUga2V5IHRvIHJldHJpZXZlLgogCiAgICBUaGUgZnVuY3Rpb24gcmV0cmlldmVzIHRoZSBuYW1lIG9mIG9uZSBzdWJrZXkgZWFjaCB0aW1lIGl0IGlzIGNhbGxlZC4gIEl0IGlzCi0gICB0eXBpY2FsbHkgY2FsbGVkIHJlcGVhdGVkbHkgdW50aWwgYSA6ZXhjOmBXaW5kb3dzRXJyb3JgIGV4Y2VwdGlvbiBpcworICAgdHlwaWNhbGx5IGNhbGxlZCByZXBlYXRlZGx5IHVudGlsIGEgOmV4YzpgT1NFcnJvcmAgZXhjZXB0aW9uIGlzCiAgICByYWlzZWQsIGluZGljYXRpbmcsIG5vIG1vcmUgdmFsdWVzIGFyZSBhdmFpbGFibGUuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIGZ1bmN0aW9uIHVzZWQgdG8gcmFpc2UgYSA6ZXhjOmBXaW5kb3dzRXJyb3JgLCB3aGljaCBpcyBub3cgYW4KKyAgICAgIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgorCiAKIC4uIGZ1bmN0aW9uOjogRW51bVZhbHVlKGtleSwgaW5kZXgpCiAKQEAgLTE3MCw3ICsxOTQsNyBAQAogICAgKmluZGV4KiBpcyBhbiBpbnRlZ2VyIHRoYXQgaWRlbnRpZmllcyB0aGUgaW5kZXggb2YgdGhlIHZhbHVlIHRvIHJldHJpZXZlLgogCiAgICBUaGUgZnVuY3Rpb24gcmV0cmlldmVzIHRoZSBuYW1lIG9mIG9uZSBzdWJrZXkgZWFjaCB0aW1lIGl0IGlzIGNhbGxlZC4gSXQgaXMKLSAgIHR5cGljYWxseSBjYWxsZWQgcmVwZWF0ZWRseSwgdW50aWwgYSA6ZXhjOmBXaW5kb3dzRXJyb3JgIGV4Y2VwdGlvbiBpcworICAgdHlwaWNhbGx5IGNhbGxlZCByZXBlYXRlZGx5LCB1bnRpbCBhIDpleGM6YE9TRXJyb3JgIGV4Y2VwdGlvbiBpcwogICAgcmFpc2VkLCBpbmRpY2F0aW5nIG5vIG1vcmUgdmFsdWVzLgogCiAgICBUaGUgcmVzdWx0IGlzIGEgdHVwbGUgb2YgMyBpdGVtczoKQEAgLTE4OSw2ICsyMTMsMTAgQEAKICAgIHwgICAgICAgfCA6bWV0aDpgU2V0VmFsdWVFeGApICAgICAgICAgICAgICAgICAgICAgICAgfAogICAgKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIGZ1bmN0aW9uIHVzZWQgdG8gcmFpc2UgYSA6ZXhjOmBXaW5kb3dzRXJyb3JgLCB3aGljaCBpcyBub3cgYW4KKyAgICAgIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgorCiAKIC4uIGZ1bmN0aW9uOjogRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzKHN0cikKIApAQCAtMjYwLDEwICsyODgsMTQgQEAKIAogICAgVGhlIHJlc3VsdCBpcyBhIG5ldyBoYW5kbGUgdG8gdGhlIHNwZWNpZmllZCBrZXkuCiAKLSAgIElmIHRoZSBmdW5jdGlvbiBmYWlscywgOmV4YzpgV2luZG93c0Vycm9yYCBpcyByYWlzZWQuCisgICBJZiB0aGUgZnVuY3Rpb24gZmFpbHMsIDpleGM6YE9TRXJyb3JgIGlzIHJhaXNlZC4KIAogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAzLjIgQWxsb3cgdGhlIHVzZSBvZiBuYW1lZCBhcmd1bWVudHMuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGlzIGZ1bmN0aW9uIHVzZWQgdG8gcmFpc2UgYSA6ZXhjOmBXaW5kb3dzRXJyb3JgLCB3aGljaCBpcyBub3cgYW4KKyAgICAgIGFsaWFzIG9mIDpleGM6YE9TRXJyb3JgLgorCiAKIC4uIGZ1bmN0aW9uOjogT3BlbktleUV4KCkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkveG1scnBjLmNsaWVudC5yc3QgYi9Eb2MvbGlicmFyeS94bWxycGMuY2xpZW50LnJzdAppbmRleCBlNzI3NzBhLi4xODcxYzk5IDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS94bWxycGMuY2xpZW50LnJzdAorKysgYi9Eb2MvbGlicmFyeS94bWxycGMuY2xpZW50LnJzdApAQCAtOCw3ICs4LDcgQEAKIAogCiAuLiBYWFggTm90IGV2ZXJ5dGhpbmcgaXMgZG9jdW1lbnRlZCB5ZXQuICBJdCBtaWdodCBiZSBnb29kIHRvIGRlc2NyaWJlCi0gICBNYXJzaGFsbGVyLCBVbm1hcnNoYWxsZXIsIGdldHBhcnNlciwgZHVtcHMsIGxvYWRzLCBhbmQgVHJhbnNwb3J0LgorICAgTWFyc2hhbGxlciwgVW5tYXJzaGFsbGVyLCBnZXRwYXJzZXIgYW5kIFRyYW5zcG9ydC4KIAogKipTb3VyY2UgY29kZToqKiA6c291cmNlOmBMaWIveG1scnBjL2NsaWVudC5weWAKIApAQCAtMjEsNyArMjEsMTIgQEAKIGJldHdlZW4gY29uZm9ybWFibGUgUHl0aG9uIG9iamVjdHMgYW5kIFhNTCBvbiB0aGUgd2lyZS4KIAogCi0uLiBjbGFzczo6IFNlcnZlclByb3h5KHVyaSwgdHJhbnNwb3J0PU5vbmUsIGVuY29kaW5nPU5vbmUsIHZlcmJvc2U9RmFsc2UsIGFsbG93X25vbmU9RmFsc2UsIHVzZV9kYXRldGltZT1GYWxzZSkKKy4uIGNsYXNzOjogU2VydmVyUHJveHkodXJpLCB0cmFuc3BvcnQ9Tm9uZSwgZW5jb2Rpbmc9Tm9uZSwgdmVyYm9zZT1GYWxzZSwgXAorICAgICAgICAgICAgICAgICAgICAgICBhbGxvd19ub25lPUZhbHNlLCB1c2VfZGF0ZXRpbWU9RmFsc2UsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKnVzZV9idWlsdGluX3R5cGVzKiBmbGFnIHdhcyBhZGRlZC4KIAogICAgQSA6Y2xhc3M6YFNlcnZlclByb3h5YCBpbnN0YW5jZSBpcyBhbiBvYmplY3QgdGhhdCBtYW5hZ2VzIGNvbW11bmljYXRpb24gd2l0aCBhCiAgICByZW1vdGUgWE1MLVJQQyBzZXJ2ZXIuICBUaGUgcmVxdWlyZWQgZmlyc3QgYXJndW1lbnQgaXMgYSBVUkkgKFVuaWZvcm0gUmVzb3VyY2UKQEAgLTM0LDkgKzM5LDEzIEBACiAgICBYTUw7IHRoZSBkZWZhdWx0IGJlaGF2aW91ciBpcyBmb3IgYGBOb25lYGAgdG8gcmFpc2UgYSA6ZXhjOmBUeXBlRXJyb3JgLiBUaGlzIGlzCiAgICBhIGNvbW1vbmx5LXVzZWQgZXh0ZW5zaW9uIHRvIHRoZSBYTUwtUlBDIHNwZWNpZmljYXRpb24sIGJ1dCBpc24ndCBzdXBwb3J0ZWQgYnkKICAgIGFsbCBjbGllbnRzIGFuZCBzZXJ2ZXJzOyBzZWUgaHR0cDovL29udG9zeXMuY29tL3htbC1ycGMvZXh0ZW5zaW9ucy5waHAgZm9yIGEKLSAgIGRlc2NyaXB0aW9uLiAgVGhlICp1c2VfZGF0ZXRpbWUqIGZsYWcgY2FuIGJlIHVzZWQgdG8gY2F1c2UgZGF0ZS90aW1lIHZhbHVlcyB0bwotICAgYmUgcHJlc2VudGVkIGFzIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdHM7IHRoaXMgaXMgZmFsc2UgYnkgZGVmYXVsdC4KLSAgIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdHMgbWF5IGJlIHBhc3NlZCB0byBjYWxscy4KKyAgIGRlc2NyaXB0aW9uLiAgVGhlICp1c2VfYnVpbHRpbl90eXBlcyogZmxhZyBjYW4gYmUgdXNlZCB0byBjYXVzZSBkYXRlL3RpbWUgdmFsdWVzCisgICB0byBiZSBwcmVzZW50ZWQgYXMgOmNsYXNzOmBkYXRldGltZS5kYXRldGltZWAgb2JqZWN0cyBhbmQgYmluYXJ5IGRhdGEgdG8gYmUKKyAgIHByZXNlbnRlZCBhcyA6Y2xhc3M6YGJ5dGVzYCBvYmplY3RzOyB0aGlzIGZsYWcgaXMgZmFsc2UgYnkgZGVmYXVsdC4KKyAgIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIGFuZCA6Y2xhc3M6YGJ5dGVzYCBvYmplY3RzIG1heSBiZSBwYXNzZWQgdG8gY2FsbHMuCisKKyAgIFRoZSBvYnNvbGV0ZSAqdXNlX2RhdGV0aW1lKiBmbGFnIGlzIHNpbWlsYXIgdG8gKnVzZV9idWlsdGluX3R5cGVzKiBidXQgaXQKKyAgIGFwcGxpZXMgb25seSB0byBkYXRlL3RpbWUgdmFsdWVzLgogCiAgICBCb3RoIHRoZSBIVFRQIGFuZCBIVFRQUyB0cmFuc3BvcnRzIHN1cHBvcnQgdGhlIFVSTCBzeW50YXggZXh0ZW5zaW9uIGZvciBIVFRQCiAgICBCYXNpYyBBdXRoZW50aWNhdGlvbjogYGBodHRwOi8vdXNlcjpwYXNzQGhvc3Q6cG9ydC9wYXRoYGAuICBUaGUgIGBgdXNlcjpwYXNzYGAKQEAgLTc4LDEyICs4NywxMiBAQAogICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb25seSB0aGVpciAqX19kaWN0X18qIGF0dHJpYnV0ZSBpcyAgICAgICAgICB8CiAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB0cmFuc21pdHRlZC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotICAgfCA6Y29uc3Q6YGRhdGVzYCAgICAgICAgICAgICAgICAgIHwgaW4gc2Vjb25kcyBzaW5jZSB0aGUgZXBvY2ggKHBhc3MgaW4gYW4gICAgICB8Ci0gICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBpbnN0YW5jZSBvZiB0aGUgOmNsYXNzOmBEYXRlVGltZWAgY2xhc3MpIG9yIHwKKyAgIHwgOmNvbnN0OmBkYXRlc2AgICAgICAgICAgICAgICAgICB8IEluIHNlY29uZHMgc2luY2UgdGhlIGVwb2NoLiAgUGFzcyBpbiBhbiAgICAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgaW5zdGFuY2Ugb2YgdGhlIDpjbGFzczpgRGF0ZVRpbWVgIGNsYXNzIG9yICB8CiAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIGluc3RhbmNlLiAgICAgIHwKICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwotICAgfCA6Y29uc3Q6YGJpbmFyeSBkYXRhYCAgICAgICAgICAgIHwgcGFzcyBpbiBhbiBpbnN0YW5jZSBvZiB0aGUgOmNsYXNzOmBCaW5hcnlgICB8Ci0gICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB3cmFwcGVyIGNsYXNzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAgIHwgOmNvbnN0OmBiaW5hcnkgZGF0YWAgICAgICAgICAgICB8IFBhc3MgaW4gYW4gaW5zdGFuY2Ugb2YgdGhlIDpjbGFzczpgQmluYXJ5YCAgfAorICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgd3JhcHBlciBjbGFzcyBvciBhIDpjbGFzczpgYnl0ZXNgIGluc3RhbmNlLiB8CiAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKIAogICAgVGhpcyBpcyB0aGUgZnVsbCBzZXQgb2YgZGF0YSB0eXBlcyBzdXBwb3J0ZWQgYnkgWE1MLVJQQy4gIE1ldGhvZCBjYWxscyBtYXkgYWxzbwpAQCAtOTgsOCArMTA3LDkgQEAKICAgIGVuc3VyZSB0aGF0IHRoZSBzdHJpbmcgaXMgZnJlZSBvZiBjaGFyYWN0ZXJzIHRoYXQgYXJlbid0IGFsbG93ZWQgaW4gWE1MLCBzdWNoIGFzCiAgICB0aGUgY29udHJvbCBjaGFyYWN0ZXJzIHdpdGggQVNDSUkgdmFsdWVzIGJldHdlZW4gMCBhbmQgMzEgKGV4Y2VwdCwgb2YgY291cnNlLAogICAgdGFiLCBuZXdsaW5lIGFuZCBjYXJyaWFnZSByZXR1cm4pOyBmYWlsaW5nIHRvIGRvIHRoaXMgd2lsbCByZXN1bHQgaW4gYW4gWE1MLVJQQwotICAgcmVxdWVzdCB0aGF0IGlzbid0IHdlbGwtZm9ybWVkIFhNTC4gIElmIHlvdSBoYXZlIHRvIHBhc3MgYXJiaXRyYXJ5IHN0cmluZ3MgdmlhCi0gICBYTUwtUlBDLCB1c2UgdGhlIDpjbGFzczpgQmluYXJ5YCB3cmFwcGVyIGNsYXNzIGRlc2NyaWJlZCBiZWxvdy4KKyAgIHJlcXVlc3QgdGhhdCBpc24ndCB3ZWxsLWZvcm1lZCBYTUwuICBJZiB5b3UgaGF2ZSB0byBwYXNzIGFyYml0cmFyeSBieXRlcworICAgdmlhIFhNTC1SUEMsIHVzZSB0aGUgOmNsYXNzOmBieXRlc2AgY2xhc3Mgb3IgdGhlIGNsYXNzOmBCaW5hcnlgIHdyYXBwZXIgY2xhc3MKKyAgIGRlc2NyaWJlZCBiZWxvdy4KIAogICAgOmNsYXNzOmBTZXJ2ZXJgIGlzIHJldGFpbmVkIGFzIGFuIGFsaWFzIGZvciA6Y2xhc3M6YFNlcnZlclByb3h5YCBmb3IgYmFja3dhcmRzCiAgICBjb21wYXRpYmlsaXR5LiAgTmV3IGNvZGUgc2hvdWxkIHVzZSA6Y2xhc3M6YFNlcnZlclByb3h5YC4KQEAgLTI0OSw3ICsyNTksNyBAQAogQmluYXJ5IE9iamVjdHMKIC0tLS0tLS0tLS0tLS0tCiAKLVRoaXMgY2xhc3MgbWF5IGJlIGluaXRpYWxpemVkIGZyb20gc3RyaW5nIGRhdGEgKHdoaWNoIG1heSBpbmNsdWRlIE5VTHMpLiBUaGUKK1RoaXMgY2xhc3MgbWF5IGJlIGluaXRpYWxpemVkIGZyb20gYnl0ZXMgZGF0YSAod2hpY2ggbWF5IGluY2x1ZGUgTlVMcykuIFRoZQogcHJpbWFyeSBhY2Nlc3MgdG8gdGhlIGNvbnRlbnQgb2YgYSA6Y2xhc3M6YEJpbmFyeWAgb2JqZWN0IGlzIHByb3ZpZGVkIGJ5IGFuCiBhdHRyaWJ1dGU6CiAKQEAgLTI1NywxNSArMjY3LDE1IEBACiAuLiBhdHRyaWJ1dGU6OiBCaW5hcnkuZGF0YQogCiAgICBUaGUgYmluYXJ5IGRhdGEgZW5jYXBzdWxhdGVkIGJ5IHRoZSA6Y2xhc3M6YEJpbmFyeWAgaW5zdGFuY2UuICBUaGUgZGF0YSBpcwotICAgcHJvdmlkZWQgYXMgYW4gOC1iaXQgc3RyaW5nLgorICAgcHJvdmlkZWQgYXMgYSA6Y2xhc3M6YGJ5dGVzYCBvYmplY3QuCiAKIDpjbGFzczpgQmluYXJ5YCBvYmplY3RzIGhhdmUgdGhlIGZvbGxvd2luZyBtZXRob2RzLCBzdXBwb3J0ZWQgbWFpbmx5IGZvcgogaW50ZXJuYWwgdXNlIGJ5IHRoZSBtYXJzaGFsbGluZy91bm1hcnNoYWxsaW5nIGNvZGU6CiAKIAotLi4gbWV0aG9kOjogQmluYXJ5LmRlY29kZShzdHJpbmcpCisuLiBtZXRob2Q6OiBCaW5hcnkuZGVjb2RlKGJ5dGVzKQogCi0gICBBY2NlcHQgYSBiYXNlNjQgc3RyaW5nIGFuZCBkZWNvZGUgaXQgYXMgdGhlIGluc3RhbmNlJ3MgbmV3IGRhdGEuCisgICBBY2NlcHQgYSBiYXNlNjQgOmNsYXNzOmBieXRlc2Agb2JqZWN0IGFuZCBkZWNvZGUgaXQgYXMgdGhlIGluc3RhbmNlJ3MgbmV3IGRhdGEuCiAKIAogLi4gbWV0aG9kOjogQmluYXJ5LmVuY29kZShvdXQpCkBAIC00NzEsMTQgKzQ4MSwyMSBAQAogICAgaXQgdmlhIGFuIGV4dGVuc2lvbiwgIHByb3ZpZGUgYSB0cnVlIHZhbHVlIGZvciAqYWxsb3dfbm9uZSouCiAKIAotLi4gZnVuY3Rpb246OiBsb2FkcyhkYXRhLCB1c2VfZGF0ZXRpbWU9RmFsc2UpCisuLiBmdW5jdGlvbjo6IGxvYWRzKGRhdGEsIHVzZV9kYXRldGltZT1GYWxzZSwgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpCiAKICAgIENvbnZlcnQgYW4gWE1MLVJQQyByZXF1ZXN0IG9yIHJlc3BvbnNlIGludG8gUHl0aG9uIG9iamVjdHMsIGEgYGAocGFyYW1zLAogICAgbWV0aG9kbmFtZSlgYC4gICpwYXJhbXMqIGlzIGEgdHVwbGUgb2YgYXJndW1lbnQ7ICptZXRob2RuYW1lKiBpcyBhIHN0cmluZywgb3IKICAgIGBgTm9uZWBgIGlmIG5vIG1ldGhvZCBuYW1lIGlzIHByZXNlbnQgaW4gdGhlIHBhY2tldC4gSWYgdGhlIFhNTC1SUEMgcGFja2V0CiAgICByZXByZXNlbnRzIGEgZmF1bHQgY29uZGl0aW9uLCB0aGlzIGZ1bmN0aW9uIHdpbGwgcmFpc2UgYSA6ZXhjOmBGYXVsdGAgZXhjZXB0aW9uLgotICAgVGhlICp1c2VfZGF0ZXRpbWUqIGZsYWcgY2FuIGJlIHVzZWQgdG8gY2F1c2UgZGF0ZS90aW1lIHZhbHVlcyB0byBiZSBwcmVzZW50ZWQgYXMKLSAgIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdHM7IHRoaXMgaXMgZmFsc2UgYnkgZGVmYXVsdC4KKyAgIFRoZSAqdXNlX2J1aWx0aW5fdHlwZXMqIGZsYWcgY2FuIGJlIHVzZWQgdG8gY2F1c2UgZGF0ZS90aW1lIHZhbHVlcyB0byBiZQorICAgcHJlc2VudGVkIGFzIDpjbGFzczpgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdHMgYW5kIGJpbmFyeSBkYXRhIHRvIGJlCisgICBwcmVzZW50ZWQgYXMgOmNsYXNzOmBieXRlc2Agb2JqZWN0czsgdGhpcyBmbGFnIGlzIGZhbHNlIGJ5IGRlZmF1bHQuCisKKyAgIFRoZSBvYnNvbGV0ZSAqdXNlX2RhdGV0aW1lKiBmbGFnIGlzIHNpbWlsYXIgdG8gKnVzZV9idWlsdGluX3R5cGVzKiBidXQgaXQKKyAgIGFwcGxpZXMgb25seSB0byBkYXRlL3RpbWUgdmFsdWVzLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhlICp1c2VfYnVpbHRpbl90eXBlcyogZmxhZyB3YXMgYWRkZWQuCiAKIAogLi4gX3htbHJwYy1jbGllbnQtZXhhbXBsZToKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3htbHJwYy5zZXJ2ZXIucnN0IGIvRG9jL2xpYnJhcnkveG1scnBjLnNlcnZlci5yc3QKaW5kZXggNjdmZWJhNi4uNjQ5M2ZkNCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkveG1scnBjLnNlcnZlci5yc3QKKysrIGIvRG9jL2xpYnJhcnkveG1scnBjLnNlcnZlci5yc3QKQEAgLTE2LDcgKzE2LDkgQEAKIDpjbGFzczpgQ0dJWE1MUlBDUmVxdWVzdEhhbmRsZXJgLgogCiAKLS4uIGNsYXNzOjogU2ltcGxlWE1MUlBDU2VydmVyKGFkZHIsIHJlcXVlc3RIYW5kbGVyPVNpbXBsZVhNTFJQQ1JlcXVlc3RIYW5kbGVyLCBsb2dSZXF1ZXN0cz1UcnVlLCBhbGxvd19ub25lPUZhbHNlLCBlbmNvZGluZz1Ob25lLCBiaW5kX2FuZF9hY3RpdmF0ZT1UcnVlKQorLi4gY2xhc3M6OiBTaW1wbGVYTUxSUENTZXJ2ZXIoYWRkciwgcmVxdWVzdEhhbmRsZXI9U2ltcGxlWE1MUlBDUmVxdWVzdEhhbmRsZXIsXAorICAgICAgICAgICAgICAgbG9nUmVxdWVzdHM9VHJ1ZSwgYWxsb3dfbm9uZT1GYWxzZSwgZW5jb2Rpbmc9Tm9uZSxcCisgICAgICAgICAgICAgICBiaW5kX2FuZF9hY3RpdmF0ZT1UcnVlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSkKIAogICAgQ3JlYXRlIGEgbmV3IHNlcnZlciBpbnN0YW5jZS4gIFRoaXMgY2xhc3MgcHJvdmlkZXMgbWV0aG9kcyBmb3IgcmVnaXN0cmF0aW9uIG9mCiAgICBmdW5jdGlvbnMgdGhhdCBjYW4gYmUgY2FsbGVkIGJ5IHRoZSBYTUwtUlBDIHByb3RvY29sLiAgVGhlICpyZXF1ZXN0SGFuZGxlcioKQEAgLTI1LDE4ICsyNywzMSBAQAogICAgYXJlIHBhc3NlZCB0byB0aGUgOmNsYXNzOmBzb2NrZXRzZXJ2ZXIuVENQU2VydmVyYCBjb25zdHJ1Y3Rvci4gIElmICpsb2dSZXF1ZXN0cyoKICAgIGlzIHRydWUgKHRoZSBkZWZhdWx0KSwgcmVxdWVzdHMgd2lsbCBiZSBsb2dnZWQ7IHNldHRpbmcgdGhpcyBwYXJhbWV0ZXIgdG8gZmFsc2UKICAgIHdpbGwgdHVybiBvZmYgbG9nZ2luZy4gICBUaGUgKmFsbG93X25vbmUqIGFuZCAqZW5jb2RpbmcqIHBhcmFtZXRlcnMgYXJlIHBhc3NlZAotICAgb24gdG8gIDptb2Q6YHhtbHJwYy5jbGllbnRgIGFuZCBjb250cm9sIHRoZSBYTUwtUlBDIHJlc3BvbnNlcyB0aGF0IHdpbGwgYmUgcmV0dXJuZWQKKyAgIG9uIHRvIDptb2Q6YHhtbHJwYy5jbGllbnRgIGFuZCBjb250cm9sIHRoZSBYTUwtUlBDIHJlc3BvbnNlcyB0aGF0IHdpbGwgYmUgcmV0dXJuZWQKICAgIGZyb20gdGhlIHNlcnZlci4gVGhlICpiaW5kX2FuZF9hY3RpdmF0ZSogcGFyYW1ldGVyIGNvbnRyb2xzIHdoZXRoZXIKICAgIDptZXRoOmBzZXJ2ZXJfYmluZGAgYW5kIDptZXRoOmBzZXJ2ZXJfYWN0aXZhdGVgIGFyZSBjYWxsZWQgaW1tZWRpYXRlbHkgYnkgdGhlCiAgICBjb25zdHJ1Y3RvcjsgaXQgZGVmYXVsdHMgdG8gdHJ1ZS4gU2V0dGluZyBpdCB0byBmYWxzZSBhbGxvd3MgY29kZSB0byBtYW5pcHVsYXRlCiAgICB0aGUgKmFsbG93X3JldXNlX2FkZHJlc3MqIGNsYXNzIHZhcmlhYmxlIGJlZm9yZSB0aGUgYWRkcmVzcyBpcyBib3VuZC4KKyAgIFRoZSAqdXNlX2J1aWx0aW5fdHlwZXMqIHBhcmFtZXRlciBpcyBwYXNzZWQgdG8gdGhlCisgICA6ZnVuYzpgfnhtbHJwYy5jbGllbnQubG9hZHNgIGZ1bmN0aW9uIGFuZCBjb250cm9scyB3aGljaCB0eXBlcyBhcmUgcHJvY2Vzc2VkCisgICB3aGVuIGRhdGUvdGltZXMgdmFsdWVzIG9yIGJpbmFyeSBkYXRhIGFyZSByZWNlaXZlZDsgaXQgZGVmYXVsdHMgdG8gZmFsc2UuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKnVzZV9idWlsdGluX3R5cGVzKiBmbGFnIHdhcyBhZGRlZC4KIAogCi0uLiBjbGFzczo6IENHSVhNTFJQQ1JlcXVlc3RIYW5kbGVyKGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUpCisuLiBjbGFzczo6IENHSVhNTFJQQ1JlcXVlc3RIYW5kbGVyKGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUsXAorICAgICAgICAgICAgICAgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpCiAKICAgIENyZWF0ZSBhIG5ldyBpbnN0YW5jZSB0byBoYW5kbGUgWE1MLVJQQyByZXF1ZXN0cyBpbiBhIENHSSBlbnZpcm9ubWVudC4gIFRoZQogICAgKmFsbG93X25vbmUqIGFuZCAqZW5jb2RpbmcqIHBhcmFtZXRlcnMgYXJlIHBhc3NlZCBvbiB0byA6bW9kOmB4bWxycGMuY2xpZW50YAogICAgYW5kIGNvbnRyb2wgdGhlIFhNTC1SUEMgcmVzcG9uc2VzIHRoYXQgd2lsbCBiZSByZXR1cm5lZCBmcm9tIHRoZSBzZXJ2ZXIuCisgICBUaGUgKnVzZV9idWlsdGluX3R5cGVzKiBwYXJhbWV0ZXIgaXMgcGFzc2VkIHRvIHRoZQorICAgOmZ1bmM6YH54bWxycGMuY2xpZW50LmxvYWRzYCBmdW5jdGlvbiBhbmQgY29udHJvbHMgd2hpY2ggdHlwZXMgYXJlIHByb2Nlc3NlZAorICAgd2hlbiBkYXRlL3RpbWVzIHZhbHVlcyBvciBiaW5hcnkgZGF0YSBhcmUgcmVjZWl2ZWQ7IGl0IGRlZmF1bHRzIHRvIGZhbHNlLgorCisgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgVGhlICp1c2VfYnVpbHRpbl90eXBlcyogZmxhZyB3YXMgYWRkZWQuCiAKIAogLi4gY2xhc3M6OiBTaW1wbGVYTUxSUENSZXF1ZXN0SGFuZGxlcigpCkBAIC0yMzMsMTIgKzI0OCwxNyBAQAogOmNsYXNzOmBEb2NDR0lYTUxSUENSZXF1ZXN0SGFuZGxlcmAuCiAKIAotLi4gY2xhc3M6OiBEb2NYTUxSUENTZXJ2ZXIoYWRkciwgcmVxdWVzdEhhbmRsZXI9RG9jWE1MUlBDUmVxdWVzdEhhbmRsZXIsIGxvZ1JlcXVlc3RzPVRydWUsIGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUsIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUpCisuLiBjbGFzczo6IERvY1hNTFJQQ1NlcnZlcihhZGRyLCByZXF1ZXN0SGFuZGxlcj1Eb2NYTUxSUENSZXF1ZXN0SGFuZGxlcixcCisgICAgICAgICAgICAgICBsb2dSZXF1ZXN0cz1UcnVlLCBhbGxvd19ub25lPUZhbHNlLCBlbmNvZGluZz1Ob25lLFwKKyAgICAgICAgICAgICAgIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUsIHVzZV9idWlsdGluX3R5cGVzPVRydWUpCiAKICAgIENyZWF0ZSBhIG5ldyBzZXJ2ZXIgaW5zdGFuY2UuIEFsbCBwYXJhbWV0ZXJzIGhhdmUgdGhlIHNhbWUgbWVhbmluZyBhcyBmb3IKICAgIDpjbGFzczpgU2ltcGxlWE1MUlBDU2VydmVyYDsgKnJlcXVlc3RIYW5kbGVyKiBkZWZhdWx0cyB0bwogICAgOmNsYXNzOmBEb2NYTUxSUENSZXF1ZXN0SGFuZGxlcmAuCiAKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBUaGUgKnVzZV9idWlsdGluX3R5cGVzKiBmbGFnIHdhcyBhZGRlZC4KKwogCiAuLiBjbGFzczo6IERvY0NHSVhNTFJQQ1JlcXVlc3RIYW5kbGVyKCkKIApkaWZmIC0tZ2l0IGEvRG9jL2xpYnJhcnkvemlwZmlsZS5yc3QgYi9Eb2MvbGlicmFyeS96aXBmaWxlLnJzdAppbmRleCA2Zjg0YmNjLi5jM2UxM2VkIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS96aXBmaWxlLnJzdAorKysgYi9Eb2MvbGlicmFyeS96aXBmaWxlLnJzdApAQCAtMjMsNyArMjMsNyBAQAogY3JlYXRlIGFuIGVuY3J5cHRlZCBmaWxlLiAgRGVjcnlwdGlvbiBpcyBleHRyZW1lbHkgc2xvdyBhcyBpdCBpcwogaW1wbGVtZW50ZWQgaW4gbmF0aXZlIFB5dGhvbiByYXRoZXIgdGhhbiBDLgogCi1Gb3Igb3RoZXIgYXJjaGl2ZSBmb3JtYXRzLCBzZWUgdGhlIDptb2Q6YGJ6MmAsIDptb2Q6YGd6aXBgLCBhbmQKK0ZvciByZWxhdGVkIGZpbGUgZm9ybWF0cywgc2VlIHRoZSA6bW9kOmBiejJgLCA6bW9kOmBnemlwYCwgOm1vZDpgbHptYWAsIGFuZAogOm1vZDpgdGFyZmlsZWAgbW9kdWxlcy4KIAogVGhlIG1vZHVsZSBkZWZpbmVzIHRoZSBmb2xsb3dpbmcgaXRlbXM6CmRpZmYgLS1naXQgYS9Eb2MvbGlicmFyeS96aXBpbXBvcnQucnN0IGIvRG9jL2xpYnJhcnkvemlwaW1wb3J0LnJzdAppbmRleCA0ZjE3MDkyLi5iNDdjMzViIDEwMDY0NAotLS0gYS9Eb2MvbGlicmFyeS96aXBpbXBvcnQucnN0CisrKyBiL0RvYy9saWJyYXJ5L3ppcGltcG9ydC5yc3QKQEAgLTg1LDkgKzg1LDEyIEBACiAKICAgIC4uIG1ldGhvZDo6IGdldF9kYXRhKHBhdGhuYW1lKQogCi0gICAgICBSZXR1cm4gdGhlIGRhdGEgYXNzb2NpYXRlZCB3aXRoICpwYXRobmFtZSouIFJhaXNlIDpleGM6YElPRXJyb3JgIGlmIHRoZQorICAgICAgUmV0dXJuIHRoZSBkYXRhIGFzc29jaWF0ZWQgd2l0aCAqcGF0aG5hbWUqLiBSYWlzZSA6ZXhjOmBPU0Vycm9yYCBpZiB0aGUKICAgICAgIGZpbGUgd2Fzbid0IGZvdW5kLgogCisgICAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgICAgOmV4YzpgSU9FcnJvcmAgdXNlZCB0byBiZSByYWlzZWQgaW5zdGVhZCBvZiA6ZXhjOmBPU0Vycm9yYC4KKwogCiAgICAuLiBtZXRob2Q6OiBnZXRfZmlsZW5hbWUoZnVsbG5hbWUpCiAKZGlmZiAtLWdpdCBhL0RvYy9saWJyYXJ5L3psaWIucnN0IGIvRG9jL2xpYnJhcnkvemxpYi5yc3QKaW5kZXggYTdiODM0My4uN2FkMzYyNCAxMDA2NDQKLS0tIGEvRG9jL2xpYnJhcnkvemxpYi5yc3QKKysrIGIvRG9jL2xpYnJhcnkvemxpYi5yc3QKQEAgLTE4LDggKzE4LDggQEAKIGNvbnN1bHQgdGhlIHpsaWIgbWFudWFsIGF0IGh0dHA6Ly93d3cuemxpYi5uZXQvbWFudWFsLmh0bWwgZm9yIGF1dGhvcml0YXRpdmUKIGluZm9ybWF0aW9uLgogCi1Gb3IgcmVhZGluZyBhbmQgd3JpdGluZyBgYC5nemBgIGZpbGVzIHNlZSB0aGUgOm1vZDpgZ3ppcGAgbW9kdWxlLiBGb3IKLW90aGVyIGFyY2hpdmUgZm9ybWF0cywgc2VlIHRoZSA6bW9kOmBiejJgLCA6bW9kOmB6aXBmaWxlYCwgYW5kCitGb3IgcmVhZGluZyBhbmQgd3JpdGluZyBgYC5nemBgIGZpbGVzIHNlZSB0aGUgOm1vZDpgZ3ppcGAgbW9kdWxlLiBGb3Igb3RoZXIKK3JlbGF0ZWQgZmlsZSBmb3JtYXRzLCBzZWUgdGhlIDptb2Q6YGJ6MmAsIDptb2Q6YGx6bWFgLCA6bW9kOmB6aXBmaWxlYCwgYW5kCiA6bW9kOmB0YXJmaWxlYCBtb2R1bGVzLgogCiBUaGUgYXZhaWxhYmxlIGV4Y2VwdGlvbiBhbmQgZnVuY3Rpb25zIGluIHRoaXMgbW9kdWxlIGFyZToKQEAgLTEyMiw2ICsxMjIsNyBAQAogICAgd29uJ3QgZml0IGludG8gbWVtb3J5IGF0IG9uY2UuICBUaGUgKndiaXRzKiBwYXJhbWV0ZXIgY29udHJvbHMgdGhlIHNpemUgb2YgdGhlCiAgICB3aW5kb3cgYnVmZmVyLgogCisKIENvbXByZXNzaW9uIG9iamVjdHMgc3VwcG9ydCB0aGUgZm9sbG93aW5nIG1ldGhvZHM6CiAKIApAQCAtMTUyLDcgKzE1Myw3IEBACiAgICBjb21wcmVzcyBhIHNldCBvZiBkYXRhIHRoYXQgc2hhcmUgYSBjb21tb24gaW5pdGlhbCBwcmVmaXguCiAKIAotRGVjb21wcmVzc2lvbiBvYmplY3RzIHN1cHBvcnQgdGhlIGZvbGxvd2luZyBtZXRob2RzLCBhbmQgdHdvIGF0dHJpYnV0ZXM6CitEZWNvbXByZXNzaW9uIG9iamVjdHMgc3VwcG9ydCB0aGUgZm9sbG93aW5nIG1ldGhvZHMgYW5kIGF0dHJpYnV0ZXM6CiAKIAogLi4gYXR0cmlidXRlOjogRGVjb21wcmVzcy51bnVzZWRfZGF0YQpAQCAtMTYyLDEzICsxNjMsNiBAQAogICAgYXZhaWxhYmxlLiAgSWYgdGhlIHdob2xlIGJ5dGVzdHJpbmcgdHVybmVkIG91dCB0byBjb250YWluIGNvbXByZXNzZWQgZGF0YSwgdGhpcyBpcwogICAgYGBiIiJgYCwgYW4gZW1wdHkgYnl0ZXMgb2JqZWN0LgogCi0gICBUaGUgb25seSB3YXkgdG8gZGV0ZXJtaW5lIHdoZXJlIGEgYnl0ZXN0cmluZyBvZiBjb21wcmVzc2VkIGRhdGEgZW5kcyBpcyBieSBhY3R1YWxseQotICAgZGVjb21wcmVzc2luZyBpdC4gIFRoaXMgbWVhbnMgdGhhdCB3aGVuIGNvbXByZXNzZWQgZGF0YSBpcyBjb250YWluZWQgcGFydCBvZiBhCi0gICBsYXJnZXIgZmlsZSwgeW91IGNhbiBvbmx5IGZpbmQgdGhlIGVuZCBvZiBpdCBieSByZWFkaW5nIGRhdGEgYW5kIGZlZWRpbmcgaXQKLSAgIGZvbGxvd2VkIGJ5IHNvbWUgbm9uLWVtcHR5IGJ5dGVzdHJpbmcgaW50byBhIGRlY29tcHJlc3Npb24gb2JqZWN0J3MKLSAgIDptZXRoOmBkZWNvbXByZXNzYCBtZXRob2QgdW50aWwgdGhlIDphdHRyOmB1bnVzZWRfZGF0YWAgYXR0cmlidXRlIGlzIG5vIGxvbmdlcgotICAgZW1wdHkuCi0KIAogLi4gYXR0cmlidXRlOjogRGVjb21wcmVzcy51bmNvbnN1bWVkX3RhaWwKIApAQCAtMTc5LDYgKzE3MywxNyBAQAogICAgOm1ldGg6YGRlY29tcHJlc3NgIG1ldGhvZCBjYWxsIGluIG9yZGVyIHRvIGdldCBjb3JyZWN0IG91dHB1dC4KIAogCisuLiBhdHRyaWJ1dGU6OiBEZWNvbXByZXNzLmVvZgorCisgICBBIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBlbmQgb2YgdGhlIGNvbXByZXNzZWQgZGF0YSBzdHJlYW0gaGFzIGJlZW4KKyAgIHJlYWNoZWQuCisKKyAgIFRoaXMgbWFrZXMgaXQgcG9zc2libGUgdG8gZGlzdGluZ3Vpc2ggYmV0d2VlbiBhIHByb3Blcmx5LWZvcm1lZCBjb21wcmVzc2VkCisgICBzdHJlYW0sIGFuZCBhbiBpbmNvbXBsZXRlIG9yIHRydW5jYXRlZCBvbmUuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIG1ldGhvZDo6IERlY29tcHJlc3MuZGVjb21wcmVzcyhkYXRhWywgbWF4X2xlbmd0aF0pCiAKICAgIERlY29tcHJlc3MgKmRhdGEqLCByZXR1cm5pbmcgYSBieXRlcyBvYmplY3QgY29udGFpbmluZyB0aGUgdW5jb21wcmVzc2VkIGRhdGEKQEAgLTIxMyw2ICsyMTgsMjQgQEAKICAgIHNlZWtzIGludG8gdGhlIHN0cmVhbSBhdCBhIGZ1dHVyZSBwb2ludC4KIAogCitJbmZvcm1hdGlvbiBhYm91dCB0aGUgdmVyc2lvbiBvZiB0aGUgemxpYiBsaWJyYXJ5IGluIHVzZSBpcyBhdmFpbGFibGUgdGhyb3VnaAordGhlIGZvbGxvd2luZyBjb25zdGFudHM6CisKKworLi4gZGF0YTo6IFpMSUJfVkVSU0lPTgorCisgICBUaGUgdmVyc2lvbiBzdHJpbmcgb2YgdGhlIHpsaWIgbGlicmFyeSB0aGF0IHdhcyB1c2VkIGZvciBidWlsZGluZyB0aGUgbW9kdWxlLgorICAgVGhpcyBtYXkgYmUgZGlmZmVyZW50IGZyb20gdGhlIHpsaWIgbGlicmFyeSBhY3R1YWxseSB1c2VkIGF0IHJ1bnRpbWUsIHdoaWNoCisgICBpcyBhdmFpbGFibGUgYXMgOmNvbnN0OmBaTElCX1JVTlRJTUVfVkVSU0lPTmAuCisKKworLi4gZGF0YTo6IFpMSUJfUlVOVElNRV9WRVJTSU9OCisKKyAgIFRoZSB2ZXJzaW9uIHN0cmluZyBvZiB0aGUgemxpYiBsaWJyYXJ5IGFjdHVhbGx5IGxvYWRlZCBieSB0aGUgaW50ZXJwcmV0ZXIuCisKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworCisKIC4uIHNlZWFsc286OgogCiAgICBNb2R1bGUgOm1vZDpgZ3ppcGAKZGlmZiAtLWdpdCBhL0RvYy9saWNlbnNlLnJzdCBiL0RvYy9saWNlbnNlLnJzdAppbmRleCA0MWFlMWZlLi42ZjYzZWQ0IDEwMDY0NAotLS0gYS9Eb2MvbGljZW5zZS5yc3QKKysrIGIvRG9jL2xpY2Vuc2UucnN0CkBAIC0xMTgsNiArMTE4LDggQEAKICstLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCiB8IDMuMi4yICAgICAgICAgIHwgMy4yLjEgICAgICAgIHwgMjAxMSAgICAgICB8IFBTRiAgICAgICAgfCB5ZXMgICAgICAgICAgICAgfAogKy0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKK3wgMy4zICAgICAgICAgICAgfCAzLjIgICAgICAgICAgfCAyMDEyICAgICAgIHwgUFNGICAgICAgICB8IHllcyAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwogCiAuLiBub3RlOjoKIApkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9idWlsdGRpc3QucnN0IGIvRG9jL3BhY2thZ2luZy9idWlsdGRpc3QucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFkOWEzNDkKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvcGFja2FnaW5nL2J1aWx0ZGlzdC5yc3QKQEAgLTAsMCArMSwzMDIgQEAKKy4uIF9wYWNrYWdpbmctYnVpbHQtZGlzdDoKKworKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQ3JlYXRpbmcgQnVpbHQgRGlzdHJpYnV0aW9ucworKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorCitBICJidWlsdCBkaXN0cmlidXRpb24iIGlzIHdoYXQgeW91J3JlIHByb2JhYmx5IHVzZWQgdG8gdGhpbmtpbmcgb2YgZWl0aGVyIGFzIGEKKyJiaW5hcnkgcGFja2FnZSIgb3IgYW4gImluc3RhbGxlciIgKGRlcGVuZGluZyBvbiB5b3VyIGJhY2tncm91bmQpLiAgSXQncyBub3QKK25lY2Vzc2FyaWx5IGJpbmFyeSwgdGhvdWdoLCBiZWNhdXNlIGl0IG1pZ2h0IGNvbnRhaW4gb25seSBQeXRob24gc291cmNlIGNvZGUKK2FuZC9vciBieXRlLWNvZGU7IGFuZCB3ZSBkb24ndCBjYWxsIGl0IGEgcGFja2FnZSwgYmVjYXVzZSB0aGF0IHdvcmQgaXMgYWxyZWFkeQorc3Bva2VuIGZvciBpbiBQeXRob24uICAoQW5kICJpbnN0YWxsZXIiIGlzIGEgdGVybSBzcGVjaWZpYyB0byB0aGUgd29ybGQgb2YKK21haW5zdHJlYW0gZGVza3RvcCBzeXN0ZW1zLikKKworQSBidWlsdCBkaXN0cmlidXRpb24gaXMgaG93IHlvdSBtYWtlIGxpZmUgYXMgZWFzeSBhcyBwb3NzaWJsZSBmb3IgaW5zdGFsbGVycyBvZgoreW91ciBtb2R1bGUgZGlzdHJpYnV0aW9uOiBmb3IgdXNlcnMgb2YgUlBNLWJhc2VkIExpbnV4IHN5c3RlbXMsIGl0J3MgYSBiaW5hcnkKK1JQTTsgZm9yIFdpbmRvd3MgdXNlcnMsIGl0J3MgYW4gZXhlY3V0YWJsZSBpbnN0YWxsZXI7IGZvciBEZWJpYW4tYmFzZWQgTGludXgKK3VzZXJzLCBpdCdzIGEgRGViaWFuIHBhY2thZ2U7IGFuZCBzbyBmb3J0aC4gIE9idmlvdXNseSwgbm8gb25lIHBlcnNvbiB3aWxsIGJlCithYmxlIHRvIGNyZWF0ZSBidWlsdCBkaXN0cmlidXRpb25zIGZvciBldmVyeSBwbGF0Zm9ybSB1bmRlciB0aGUgc3VuLCBzbyB0aGUKK0Rpc3R1dGlscyBhcmUgZGVzaWduZWQgdG8gZW5hYmxlIG1vZHVsZSBkZXZlbG9wZXJzIHRvIGNvbmNlbnRyYXRlIG9uIHRoZWlyCitzcGVjaWFsdHktLS13cml0aW5nIGNvZGUgYW5kIGNyZWF0aW5nIHNvdXJjZSBkaXN0cmlidXRpb25zLS0td2hpbGUgYW4KK2ludGVybWVkaWFyeSBzcGVjaWVzIGNhbGxlZCAqcGFja2FnZXJzKiBzcHJpbmdzIHVwIHRvIHR1cm4gc291cmNlIGRpc3RyaWJ1dGlvbnMKK2ludG8gYnVpbHQgZGlzdHJpYnV0aW9ucyBmb3IgYXMgbWFueSBwbGF0Zm9ybXMgYXMgdGhlcmUgYXJlIHBhY2thZ2Vycy4KKworT2YgY291cnNlLCB0aGUgbW9kdWxlIGRldmVsb3BlciBjb3VsZCBiZSBoaXMgb3duIHBhY2thZ2VyOyBvciB0aGUgcGFja2FnZXIgY291bGQKK2JlIGEgdm9sdW50ZWVyICJvdXQgdGhlcmUiIHNvbWV3aGVyZSB3aG8gaGFzIGFjY2VzcyB0byBhIHBsYXRmb3JtIHdoaWNoIHRoZQorb3JpZ2luYWwgZGV2ZWxvcGVyIGRvZXMgbm90OyBvciBpdCBjb3VsZCBiZSBzb2Z0d2FyZSBwZXJpb2RpY2FsbHkgZ3JhYmJpbmcgbmV3Citzb3VyY2UgZGlzdHJpYnV0aW9ucyBhbmQgdHVybmluZyB0aGVtIGludG8gYnVpbHQgZGlzdHJpYnV0aW9ucyBmb3IgYXMgbWFueQorcGxhdGZvcm1zIGFzIHRoZSBzb2Z0d2FyZSBoYXMgYWNjZXNzIHRvLiAgUmVnYXJkbGVzcyBvZiB3aG8gdGhleSBhcmUsIGEgcGFja2FnZXIKK3VzZXMgdGhlIHNldHVwIHNjcmlwdCBhbmQgdGhlIDpjb21tYW5kOmBiZGlzdGAgY29tbWFuZCBmYW1pbHkgdG8gZ2VuZXJhdGUgYnVpbHQKK2Rpc3RyaWJ1dGlvbnMuCisKK0FzIGEgc2ltcGxlIGV4YW1wbGUsIGlmIEkgcnVuIHRoZSBmb2xsb3dpbmcgY29tbWFuZCBpbiB0aGUgRGlzdHV0aWxzIHNvdXJjZQordHJlZTo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBiZGlzdAorCit0aGVuIHRoZSBEaXN0dXRpbHMgYnVpbGRzIG15IG1vZHVsZSBkaXN0cmlidXRpb24gKHRoZSBEaXN0dXRpbHMgaXRzZWxmIGluIHRoaXMKK2Nhc2UpLCBkb2VzIGEgImZha2UiIGluc3RhbGxhdGlvbiAoYWxzbyBpbiB0aGUgOmZpbGU6YGJ1aWxkYCBkaXJlY3RvcnkpLCBhbmQKK2NyZWF0ZXMgdGhlIGRlZmF1bHQgdHlwZSBvZiBidWlsdCBkaXN0cmlidXRpb24gZm9yIG15IHBsYXRmb3JtLiAgVGhlIGRlZmF1bHQKK2Zvcm1hdCBmb3IgYnVpbHQgZGlzdHJpYnV0aW9ucyBpcyBhICJkdW1iIiB0YXIgZmlsZSBvbiBVbml4LCBhbmQgYSBzaW1wbGUKK2V4ZWN1dGFibGUgaW5zdGFsbGVyIG9uIFdpbmRvd3MuICAoVGhhdCB0YXIgZmlsZSBpcyBjb25zaWRlcmVkICJkdW1iIiBiZWNhdXNlIGl0CitoYXMgdG8gYmUgdW5wYWNrZWQgaW4gYSBzcGVjaWZpYyBsb2NhdGlvbiB0byB3b3JrLikKKworVGh1cywgdGhlIGFib3ZlIGNvbW1hbmQgb24gYSBVbml4IHN5c3RlbSBjcmVhdGVzCis6ZmlsZTpgRGlzdHV0aWxzLTEuMC57cGxhdH0udGFyLmd6YDsgdW5wYWNraW5nIHRoaXMgdGFyYmFsbCBmcm9tIHRoZSByaWdodCBwbGFjZQoraW5zdGFsbHMgdGhlIERpc3R1dGlscyBqdXN0IGFzIHRob3VnaCB5b3UgaGFkIGRvd25sb2FkZWQgdGhlIHNvdXJjZSBkaXN0cmlidXRpb24KK2FuZCBydW4gYGBweXRob24gc2V0dXAucHkgaW5zdGFsbGBgLiAgKFRoZSAicmlnaHQgcGxhY2UiIGlzIGVpdGhlciB0aGUgcm9vdCBvZgordGhlIGZpbGVzeXN0ZW0gb3IgIFB5dGhvbidzIDpmaWxlOmB7cHJlZml4fWAgZGlyZWN0b3J5LCBkZXBlbmRpbmcgb24gdGhlIG9wdGlvbnMKK2dpdmVuIHRvIHRoZSA6Y29tbWFuZDpgYmRpc3RfZHVtYmAgY29tbWFuZDsgdGhlIGRlZmF1bHQgaXMgdG8gbWFrZSBkdW1iCitkaXN0cmlidXRpb25zIHJlbGF0aXZlIHRvIDpmaWxlOmB7cHJlZml4fWAuKQorCitPYnZpb3VzbHksIGZvciBwdXJlIFB5dGhvbiBkaXN0cmlidXRpb25zLCB0aGlzIGlzbid0IGFueSBzaW1wbGVyIHRoYW4ganVzdAorcnVubmluZyBgYHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsYGBcIC0tLWJ1dCBmb3Igbm9uLXB1cmUgZGlzdHJpYnV0aW9ucywgd2hpY2gKK2luY2x1ZGUgZXh0ZW5zaW9ucyB0aGF0IHdvdWxkIG5lZWQgdG8gYmUgY29tcGlsZWQsIGl0IGNhbiBtZWFuIHRoZSBkaWZmZXJlbmNlCitiZXR3ZWVuIHNvbWVvbmUgYmVpbmcgYWJsZSB0byB1c2UgeW91ciBleHRlbnNpb25zIG9yIG5vdC4gIEFuZCBjcmVhdGluZyAic21hcnQiCitidWlsdCBkaXN0cmlidXRpb25zLCBzdWNoIGFzIGFuIGV4ZWN1dGFibGUgaW5zdGFsbGVyIGZvcgorV2luZG93cywgaXMgZmFyIG1vcmUgY29udmVuaWVudCBmb3IgdXNlcnMgZXZlbiBpZiB5b3VyIGRpc3RyaWJ1dGlvbiBkb2Vzbid0CitpbmNsdWRlIGFueSBleHRlbnNpb25zLgorCitUaGUgOmNvbW1hbmQ6YGJkaXN0YCBjb21tYW5kIGhhcyBhIDpvcHRpb246YC0tZm9ybWF0c2Agb3B0aW9uLCBzaW1pbGFyIHRvIHRoZQorOmNvbW1hbmQ6YHNkaXN0YCBjb21tYW5kLCB3aGljaCB5b3UgY2FuIHVzZSB0byBzZWxlY3QgdGhlIHR5cGVzIG9mIGJ1aWx0CitkaXN0cmlidXRpb24gdG8gZ2VuZXJhdGU6IGZvciBleGFtcGxlLCA6OgorCisgICBweXRob24gc2V0dXAucHkgYmRpc3QgLS1mb3JtYXQ9emlwCisKK3dvdWxkLCB3aGVuIHJ1biBvbiBhIFVuaXggc3lzdGVtLCBjcmVhdGUgOmZpbGU6YERpc3R1dGlscy0xLjAue3BsYXR9LnppcGBcCistLS1hZ2FpbiwgdGhpcyBhcmNoaXZlIHdvdWxkIGJlIHVucGFja2VkIGZyb20gdGhlIHJvb3QgZGlyZWN0b3J5IHRvIGluc3RhbGwgdGhlCitEaXN0dXRpbHMuCisKK1RoZSBhdmFpbGFibGUgZm9ybWF0cyBmb3IgYnVpbHQgZGlzdHJpYnV0aW9ucyBhcmU6CisKKystLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IEZvcm1hdCAgICAgIHwgRGVzY3JpcHRpb24gICAgICAgICAgICAgICAgICB8IE5vdGVzICAgfAorKz09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PSsKK3wgYGBnenRhcmBgICAgfCBnemlwcGVkIHRhciBmaWxlICAgICAgICAgICAgIHwgKDEpLCgzKSB8Cit8ICAgICAgICAgICAgIHwgKDpmaWxlOmAudGFyLmd6YCkgICAgICAgICAgICB8ICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSsKK3wgYGB0YXJgYCAgICAgfCB0YXIgZmlsZSAoOmZpbGU6YC50YXJgKSAgICAgIHwgXCgzKSAgICB8CisrLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tKworfCBgYHppcGBgICAgICB8IHppcCBmaWxlICg6ZmlsZTpgLnppcGApICAgICAgfCAoMiksKDQpIHwKKystLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IGBgd2luaW5zdGBgIHwgc2VsZi1leHRyYWN0aW5nIFpJUCBmaWxlIGZvciB8IFwoNCkgICAgfAorfCAgICAgICAgICAgICB8IFdpbmRvd3MgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IGBgbXNpYGAgICAgIHwgTWljcm9zb2Z0IEluc3RhbGxlci4gICAgICAgICB8ICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLSsKKworCitOb3RlczoKKworKDEpCisgICBkZWZhdWx0IG9uIFVuaXgKKworKDIpCisgICBkZWZhdWx0IG9uIFdpbmRvd3MKKworKDMpCisgICByZXF1aXJlcyBleHRlcm5hbCB1dGlsaXRpZXM6IDpwcm9ncmFtOmB0YXJgIGFuZCBwb3NzaWJseSBvbmUgb2YgOnByb2dyYW06YGd6aXBgCisgICBvciA6cHJvZ3JhbTpgYnppcDJgCisKKyg0KQorICAgcmVxdWlyZXMgZWl0aGVyIGV4dGVybmFsIDpwcm9ncmFtOmB6aXBgIHV0aWxpdHkgb3IgOm1vZDpgemlwZmlsZWAgbW9kdWxlIChwYXJ0CisgICBvZiB0aGUgc3RhbmRhcmQgUHl0aG9uIGxpYnJhcnkgc2luY2UgUHl0aG9uIDEuNikKKworWW91IGRvbid0IGhhdmUgdG8gdXNlIHRoZSA6Y29tbWFuZDpgYmRpc3RgIGNvbW1hbmQgd2l0aCB0aGUgOm9wdGlvbjpgLS1mb3JtYXRzYAorb3B0aW9uOyB5b3UgY2FuIGFsc28gdXNlIHRoZSBjb21tYW5kIHRoYXQgZGlyZWN0bHkgaW1wbGVtZW50cyB0aGUgZm9ybWF0IHlvdSdyZQoraW50ZXJlc3RlZCBpbi4gIFNvbWUgb2YgdGhlc2UgOmNvbW1hbmQ6YGJkaXN0YCAic3ViLWNvbW1hbmRzIiBhY3R1YWxseSBnZW5lcmF0ZQorc2V2ZXJhbCBzaW1pbGFyIGZvcm1hdHM7IGZvciBpbnN0YW5jZSwgdGhlIDpjb21tYW5kOmBiZGlzdF9kdW1iYCBjb21tYW5kCitnZW5lcmF0ZXMgYWxsIHRoZSAiZHVtYiIgYXJjaGl2ZSBmb3JtYXRzIChgYHRhcmBgLCBgYGd6dGFyYGAsIGFuZAorYGB6aXBgYCkuICBUaGUgOmNvbW1hbmQ6YGJkaXN0YCBzdWItY29tbWFuZHMsIGFuZCB0aGUgZm9ybWF0cyBnZW5lcmF0ZWQgYnkKK2VhY2gsIGFyZToKKworKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBDb21tYW5kICAgICAgICAgICAgICAgICAgfCBGb3JtYXRzICAgICAgICAgICAgICAgfAorKz09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09KworfCA6Y29tbWFuZDpgYmRpc3RfZHVtYmAgICAgfCB0YXIsIGd6dGFyLCB6aXAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCA6Y29tbWFuZDpgYmRpc3Rfd2luaW5zdGAgfCB3aW5pbnN0ICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCA6Y29tbWFuZDpgYmRpc3RfbXNpYCAgICAgfCBtc2kgICAgICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCitUaGUgZm9sbG93aW5nIHNlY3Rpb25zIGdpdmUgZGV0YWlscyBvbiB0aGUgaW5kaXZpZHVhbCA6Y29tbWFuZDpgYmRpc3RfXCpgCitjb21tYW5kcy4KKworCisuLiBfcGFja2FnaW5nLWNyZWF0aW5nLWR1bWI6CisKK0NyZWF0aW5nIGR1bWIgYnVpbHQgZGlzdHJpYnV0aW9ucworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKy4uIFhYWCBOZWVkIHRvIGRvY3VtZW50IGFic29sdXRlIHZzLiBwcmVmaXgtcmVsYXRpdmUgcGFja2FnZXMgaGVyZSwgYnV0IGZpcnN0CisgICAgICAgSSBoYXZlIHRvIGltcGxlbWVudCBpdCEKKworCisuLiBfcGFja2FnaW5nLWNyZWF0aW5nLXdpbmluc3Q6CisKK0NyZWF0aW5nIFdpbmRvd3MgSW5zdGFsbGVycworPT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0V4ZWN1dGFibGUgaW5zdGFsbGVycyBhcmUgdGhlIG5hdHVyYWwgZm9ybWF0IGZvciBiaW5hcnkgZGlzdHJpYnV0aW9ucyBvbgorV2luZG93cy4gIFRoZXkgZGlzcGxheSBhIG5pY2UgZ3JhcGhpY2FsIHVzZXIgaW50ZXJmYWNlLCBkaXNwbGF5IHNvbWUgaW5mb3JtYXRpb24KK2Fib3V0IHRoZSBtb2R1bGUgZGlzdHJpYnV0aW9uIHRvIGJlIGluc3RhbGxlZCB0YWtlbiBmcm9tIHRoZSBtZXRhZGF0YSBpbiB0aGUKK3NldHVwIHNjcmlwdCwgbGV0IHRoZSB1c2VyIHNlbGVjdCBhIGZldyBvcHRpb25zLCBhbmQgc3RhcnQgb3IgY2FuY2VsIHRoZQoraW5zdGFsbGF0aW9uLgorCitTaW5jZSB0aGUgbWV0YWRhdGEgaXMgdGFrZW4gZnJvbSB0aGUgc2V0dXAgc2NyaXB0LCBjcmVhdGluZyBXaW5kb3dzIGluc3RhbGxlcnMKK2lzIHVzdWFsbHkgYXMgZWFzeSBhcyBydW5uaW5nOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJkaXN0X3dpbmluc3QKKworb3IgdGhlIDpjb21tYW5kOmBiZGlzdGAgY29tbWFuZCB3aXRoIHRoZSA6b3B0aW9uOmAtLWZvcm1hdHNgIG9wdGlvbjo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBiZGlzdCAtLWZvcm1hdHM9d2luaW5zdAorCitJZiB5b3UgaGF2ZSBhIHB1cmUgbW9kdWxlIGRpc3RyaWJ1dGlvbiAob25seSBjb250YWluaW5nIHB1cmUgUHl0aG9uIG1vZHVsZXMgYW5kCitwYWNrYWdlcyksIHRoZSByZXN1bHRpbmcgaW5zdGFsbGVyIHdpbGwgYmUgdmVyc2lvbiBpbmRlcGVuZGVudCBhbmQgaGF2ZSBhIG5hbWUKK2xpa2UgOmZpbGU6YGZvby0xLjAud2luMzIuZXhlYC4gIFRoZXNlIGluc3RhbGxlcnMgY2FuIGV2ZW4gYmUgY3JlYXRlZCBvbiBVbml4CitwbGF0Zm9ybXMgb3IgTWFjIE9TIFguCisKK0lmIHlvdSBoYXZlIGEgbm9uLXB1cmUgZGlzdHJpYnV0aW9uLCB0aGUgZXh0ZW5zaW9ucyBjYW4gb25seSBiZSBjcmVhdGVkIG9uIGEKK1dpbmRvd3MgcGxhdGZvcm0sIGFuZCB3aWxsIGJlIFB5dGhvbiB2ZXJzaW9uIGRlcGVuZGVudC4gVGhlIGluc3RhbGxlciBmaWxlbmFtZQord2lsbCByZWZsZWN0IHRoaXMgYW5kIG5vdyBoYXMgdGhlIGZvcm0gOmZpbGU6YGZvby0xLjAud2luMzItcHkyLjAuZXhlYC4gIFlvdQoraGF2ZSB0byBjcmVhdGUgYSBzZXBhcmF0ZSBpbnN0YWxsZXIgZm9yIGV2ZXJ5IFB5dGhvbiB2ZXJzaW9uIHlvdSB3YW50IHRvCitzdXBwb3J0LgorCitUaGUgaW5zdGFsbGVyIHdpbGwgdHJ5IHRvIGNvbXBpbGUgcHVyZSBtb2R1bGVzIGludG8gOnRlcm06YGJ5dGVjb2RlYCBhZnRlciBpbnN0YWxsYXRpb24KK29uIHRoZSB0YXJnZXQgc3lzdGVtIGluIG5vcm1hbCBhbmQgb3B0aW1pemluZyBtb2RlLiAgSWYgeW91IGRvbid0IHdhbnQgdGhpcyB0bworaGFwcGVuIGZvciBzb21lIHJlYXNvbiwgeW91IGNhbiBydW4gdGhlIDpjb21tYW5kOmBiZGlzdF93aW5pbnN0YCBjb21tYW5kIHdpdGgKK3RoZSA6b3B0aW9uOmAtLW5vLXRhcmdldC1jb21waWxlYCBhbmQvb3IgdGhlIDpvcHRpb246YC0tbm8tdGFyZ2V0LW9wdGltaXplYAorb3B0aW9uLgorCitCeSBkZWZhdWx0IHRoZSBpbnN0YWxsZXIgd2lsbCBkaXNwbGF5IHRoZSBjb29sICJQeXRob24gUG93ZXJlZCIgbG9nbyB3aGVuIGl0IGlzCitydW4sIGJ1dCB5b3UgY2FuIGFsc28gc3VwcGx5IHlvdXIgb3duIDE1MngyNjEgYml0bWFwIHdoaWNoIG11c3QgYmUgYSBXaW5kb3dzCis6ZmlsZTpgLmJtcGAgZmlsZSB3aXRoIHRoZSA6b3B0aW9uOmAtLWJpdG1hcGAgb3B0aW9uLgorCitUaGUgaW5zdGFsbGVyIHdpbGwgYWxzbyBkaXNwbGF5IGEgbGFyZ2UgdGl0bGUgb24gdGhlIGRlc2t0b3AgYmFja2dyb3VuZCB3aW5kb3cKK3doZW4gaXQgaXMgcnVuLCB3aGljaCBpcyBjb25zdHJ1Y3RlZCBmcm9tIHRoZSBuYW1lIG9mIHlvdXIgZGlzdHJpYnV0aW9uIGFuZCB0aGUKK3ZlcnNpb24gbnVtYmVyLiAgVGhpcyBjYW4gYmUgY2hhbmdlZCB0byBhbm90aGVyIHRleHQgYnkgdXNpbmcgdGhlCis6b3B0aW9uOmAtLXRpdGxlYCBvcHRpb24uCisKK1RoZSBpbnN0YWxsZXIgZmlsZSB3aWxsIGJlIHdyaXR0ZW4gdG8gdGhlICJkaXN0cmlidXRpb24gZGlyZWN0b3J5IiAtLS0gbm9ybWFsbHkKKzpmaWxlOmBkaXN0L2AsIGJ1dCBjdXN0b21pemFibGUgd2l0aCB0aGUgOm9wdGlvbjpgLS1kaXN0LWRpcmAgb3B0aW9uLgorCisuLiBfcGFja2FnaW5nLWNyb3NzLWNvbXBpbGUtd2luZG93czoKKworQ3Jvc3MtY29tcGlsaW5nIG9uIFdpbmRvd3MKKz09PT09PT09PT09PT09PT09PT09PT09PT09CisKK1N0YXJ0aW5nIHdpdGggUHl0aG9uIDIuNiwgcGFja2FnaW5nIGlzIGNhcGFibGUgb2YgY3Jvc3MtY29tcGlsaW5nIGJldHdlZW4KK1dpbmRvd3MgcGxhdGZvcm1zLiAgSW4gcHJhY3RpY2UsIHRoaXMgbWVhbnMgdGhhdCB3aXRoIHRoZSBjb3JyZWN0IHRvb2xzCitpbnN0YWxsZWQsIHlvdSBjYW4gdXNlIGEgMzJiaXQgdmVyc2lvbiBvZiBXaW5kb3dzIHRvIGNyZWF0ZSA2NGJpdCBleHRlbnNpb25zCithbmQgdmljZS12ZXJzYS4KKworVG8gYnVpbGQgZm9yIGFuIGFsdGVybmF0ZSBwbGF0Zm9ybSwgc3BlY2lmeSB0aGUgOm9wdGlvbjpgLS1wbGF0LW5hbWVgIG9wdGlvbgordG8gdGhlIGJ1aWxkIGNvbW1hbmQuICBWYWxpZCB2YWx1ZXMgYXJlIGN1cnJlbnRseSAnd2luMzInLCAnd2luLWFtZDY0JyBhbmQKKyd3aW4taWE2NCcuICBGb3IgZXhhbXBsZSwgb24gYSAzMmJpdCB2ZXJzaW9uIG9mIFdpbmRvd3MsIHlvdSBjb3VsZCBleGVjdXRlOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0tcGxhdC1uYW1lPXdpbi1hbWQ2NAorCit0byBidWlsZCBhIDY0Yml0IHZlcnNpb24gb2YgeW91ciBleHRlbnNpb24uICBUaGUgV2luZG93cyBJbnN0YWxsZXJzIGFsc28KK3N1cHBvcnQgdGhpcyBvcHRpb24sIHNvIHRoZSBjb21tYW5kOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkIC0tcGxhdC1uYW1lPXdpbi1hbWQ2NCBiZGlzdF93aW5pbnN0CisKK3dvdWxkIGNyZWF0ZSBhIDY0Yml0IGluc3RhbGxhdGlvbiBleGVjdXRhYmxlIG9uIHlvdXIgMzJiaXQgdmVyc2lvbiBvZiBXaW5kb3dzLgorCitUbyBjcm9zcy1jb21waWxlLCB5b3UgbXVzdCBkb3dubG9hZCB0aGUgUHl0aG9uIHNvdXJjZSBjb2RlIGFuZCBjcm9zcy1jb21waWxlCitQeXRob24gaXRzZWxmIGZvciB0aGUgcGxhdGZvcm0geW91IGFyZSB0YXJnZXR0aW5nIC0gaXQgaXMgbm90IHBvc3NpYmxlIGZyb20gYQorYmluYXJ5IGluc3RhbGx0aW9uIG9mIFB5dGhvbiAoYXMgdGhlIC5saWIgZXRjIGZpbGUgZm9yIG90aGVyIHBsYXRmb3JtcyBhcmUKK25vdCBpbmNsdWRlZC4pICBJbiBwcmFjdGljZSwgdGhpcyBtZWFucyB0aGUgdXNlciBvZiBhIDMyIGJpdCBvcGVyYXRpbmcKK3N5c3RlbSB3aWxsIG5lZWQgdG8gdXNlIFZpc3VhbCBTdHVkaW8gMjAwOCB0byBvcGVuIHRoZQorOmZpbGU6YFBDQnVpbGQvUENidWlsZC5zbG5gIHNvbHV0aW9uIGluIHRoZSBQeXRob24gc291cmNlIHRyZWUgYW5kIGJ1aWxkIHRoZQorIng2NCIgY29uZmlndXJhdGlvbiBvZiB0aGUgJ3B5dGhvbmNvcmUnIHByb2plY3QgYmVmb3JlIGNyb3NzLWNvbXBpbGluZworZXh0ZW5zaW9ucyBpcyBwb3NzaWJsZS4KKworTm90ZSB0aGF0IGJ5IGRlZmF1bHQsIFZpc3VhbCBTdHVkaW8gMjAwOCBkb2VzIG5vdCBpbnN0YWxsIDY0Yml0IGNvbXBpbGVycyBvcgordG9vbHMuICBZb3UgbWF5IG5lZWQgdG8gcmVleGVjdXRlIHRoZSBWaXN1YWwgU3R1ZGlvIHNldHVwIHByb2Nlc3MgYW5kIHNlbGVjdAordGhlc2UgdG9vbHMgKHVzaW5nIENvbnRyb2wgUGFuZWwtPltBZGQvUmVtb3ZlXSBQcm9ncmFtcyBpcyBhIGNvbnZlbmllbnQgd2F5IHRvCitjaGVjayBvciBtb2RpZnkgeW91ciBleGlzdGluZyBpbnN0YWxsLikKKworLi4gX3BhY2thZ2luZy1wb3N0aW5zdGFsbGF0aW9uLXNjcmlwdDoKKworVGhlIFBvc3RpbnN0YWxsYXRpb24gc2NyaXB0CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworU3RhcnRpbmcgd2l0aCBQeXRob24gMi4zLCBhIHBvc3RpbnN0YWxsYXRpb24gc2NyaXB0IGNhbiBiZSBzcGVjaWZpZWQgd2l0aCB0aGUKKzpvcHRpb246YC0taW5zdGFsbC1zY3JpcHRgIG9wdGlvbi4gIFRoZSBiYXNlbmFtZSBvZiB0aGUgc2NyaXB0IG11c3QgYmUKK3NwZWNpZmllZCwgYW5kIHRoZSBzY3JpcHQgZmlsZW5hbWUgbXVzdCBhbHNvIGJlIGxpc3RlZCBpbiB0aGUgc2NyaXB0cyBhcmd1bWVudAordG8gdGhlIHNldHVwIGZ1bmN0aW9uLgorCitUaGlzIHNjcmlwdCB3aWxsIGJlIHJ1biBhdCBpbnN0YWxsYXRpb24gdGltZSBvbiB0aGUgdGFyZ2V0IHN5c3RlbSBhZnRlciBhbGwgdGhlCitmaWxlcyBoYXZlIGJlZW4gY29waWVkLCB3aXRoIGBgYXJndlsxXWBgIHNldCB0byA6b3B0aW9uOmAtaW5zdGFsbGAsIGFuZCBhZ2FpbiBhdAordW5pbnN0YWxsYXRpb24gdGltZSBiZWZvcmUgdGhlIGZpbGVzIGFyZSByZW1vdmVkIHdpdGggYGBhcmd2WzFdYGAgc2V0IHRvCis6b3B0aW9uOmAtcmVtb3ZlYC4KKworVGhlIGluc3RhbGxhdGlvbiBzY3JpcHQgcnVucyBlbWJlZGRlZCBpbiB0aGUgd2luZG93cyBpbnN0YWxsZXIsIGV2ZXJ5IG91dHB1dAorKGBgc3lzLnN0ZG91dGBgLCBgYHN5cy5zdGRlcnJgYCkgaXMgcmVkaXJlY3RlZCBpbnRvIGEgYnVmZmVyIGFuZCB3aWxsIGJlCitkaXNwbGF5ZWQgaW4gdGhlIEdVSSBhZnRlciB0aGUgc2NyaXB0IGhhcyBmaW5pc2hlZC4KKworU29tZSBmdW5jdGlvbnMgZXNwZWNpYWxseSB1c2VmdWwgaW4gdGhpcyBjb250ZXh0IGFyZSBhdmFpbGFibGUgYXMgYWRkaXRpb25hbAorYnVpbHQtaW4gZnVuY3Rpb25zIGluIHRoZSBpbnN0YWxsYXRpb24gc2NyaXB0LgorCisuLiBjdXJyZW50bW9kdWxlOjogYmRpc3Rfd2luaW5zdC1wb3N0aW5zdC1zY3JpcHQKKworLi4gZnVuY3Rpb246OiBkaXJlY3RvcnlfY3JlYXRlZChwYXRoKQorICAgICAgICAgICAgICBmaWxlX2NyZWF0ZWQocGF0aCkKKworICAgVGhlc2UgZnVuY3Rpb25zIHNob3VsZCBiZSBjYWxsZWQgd2hlbiBhIGRpcmVjdG9yeSBvciBmaWxlIGlzIGNyZWF0ZWQgYnkgdGhlCisgICBwb3N0aW5zdGFsbCBzY3JpcHQgYXQgaW5zdGFsbGF0aW9uIHRpbWUuICBJdCB3aWxsIHJlZ2lzdGVyICpwYXRoKiB3aXRoIHRoZQorICAgdW5pbnN0YWxsZXIsIHNvIHRoYXQgaXQgd2lsbCBiZSByZW1vdmVkIHdoZW4gdGhlIGRpc3RyaWJ1dGlvbiBpcyB1bmluc3RhbGxlZC4KKyAgIFRvIGJlIHNhZmUsIGRpcmVjdG9yaWVzIGFyZSBvbmx5IHJlbW92ZWQgaWYgdGhleSBhcmUgZW1wdHkuCisKKworLi4gZnVuY3Rpb246OiBnZXRfc3BlY2lhbF9mb2xkZXJfcGF0aChjc2lkbF9zdHJpbmcpCisKKyAgIFRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gcmV0cmlldmUgc3BlY2lhbCBmb2xkZXIgbG9jYXRpb25zIG9uIFdpbmRvd3MgbGlrZQorICAgdGhlIFN0YXJ0IE1lbnUgb3IgdGhlIERlc2t0b3AuICBJdCByZXR1cm5zIHRoZSBmdWxsIHBhdGggdG8gdGhlIGZvbGRlci4KKyAgICpjc2lkbF9zdHJpbmcqIG11c3QgYmUgb25lIG9mIHRoZSBmb2xsb3dpbmcgc3RyaW5nczo6CisKKyAgICAgICJDU0lETF9BUFBEQVRBIgorCisgICAgICAiQ1NJRExfQ09NTU9OX1NUQVJUTUVOVSIKKyAgICAgICJDU0lETF9TVEFSVE1FTlUiCisKKyAgICAgICJDU0lETF9DT01NT05fREVTS1RPUERJUkVDVE9SWSIKKyAgICAgICJDU0lETF9ERVNLVE9QRElSRUNUT1JZIgorCisgICAgICAiQ1NJRExfQ09NTU9OX1NUQVJUVVAiCisgICAgICAiQ1NJRExfU1RBUlRVUCIKKworICAgICAgIkNTSURMX0NPTU1PTl9QUk9HUkFNUyIKKyAgICAgICJDU0lETF9QUk9HUkFNUyIKKworICAgICAgIkNTSURMX0ZPTlRTIgorCisgICBJZiB0aGUgZm9sZGVyIGNhbm5vdCBiZSByZXRyaWV2ZWQsIDpleGM6YE9TRXJyb3JgIGlzIHJhaXNlZC4KKworICAgV2hpY2ggZm9sZGVycyBhcmUgYXZhaWxhYmxlIGRlcGVuZHMgb24gdGhlIGV4YWN0IFdpbmRvd3MgdmVyc2lvbiwgYW5kIHByb2JhYmx5CisgICBhbHNvIHRoZSBjb25maWd1cmF0aW9uLiAgRm9yIGRldGFpbHMgcmVmZXIgdG8gTWljcm9zb2Z0J3MgZG9jdW1lbnRhdGlvbiBvZiB0aGUKKyAgIDpjOmZ1bmM6YFNIR2V0U3BlY2lhbEZvbGRlclBhdGhgIGZ1bmN0aW9uLgorCisKKy4uIGZ1bmN0aW9uOjogY3JlYXRlX3Nob3J0Y3V0KHRhcmdldCwgZGVzY3JpcHRpb24sIGZpbGVuYW1lWywgYXJndW1lbnRzWywgd29ya2RpclssIGljb25wYXRoWywgaWNvbmluZGV4XV1dXSkKKworICAgVGhpcyBmdW5jdGlvbiBjcmVhdGVzIGEgc2hvcnRjdXQuICp0YXJnZXQqIGlzIHRoZSBwYXRoIHRvIHRoZSBwcm9ncmFtIHRvIGJlCisgICBzdGFydGVkIGJ5IHRoZSBzaG9ydGN1dC4gKmRlc2NyaXB0aW9uKiBpcyB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIHNob3J0Y3V0LgorICAgKmZpbGVuYW1lKiBpcyB0aGUgdGl0bGUgb2YgdGhlIHNob3J0Y3V0IHRoYXQgdGhlIHVzZXIgd2lsbCBzZWUuICphcmd1bWVudHMqCisgICBzcGVjaWZpZXMgdGhlIGNvbW1hbmQtbGluZSBhcmd1bWVudHMsIGlmIGFueS4gKndvcmtkaXIqIGlzIHRoZSB3b3JraW5nIGRpcmVjdG9yeQorICAgZm9yIHRoZSBwcm9ncmFtLiAqaWNvbnBhdGgqIGlzIHRoZSBmaWxlIGNvbnRhaW5pbmcgdGhlIGljb24gZm9yIHRoZSBzaG9ydGN1dCwKKyAgIGFuZCAqaWNvbmluZGV4KiBpcyB0aGUgaW5kZXggb2YgdGhlIGljb24gaW4gdGhlIGZpbGUgKmljb25wYXRoKi4gIEFnYWluLCBmb3IKKyAgIGRldGFpbHMgY29uc3VsdCB0aGUgTWljcm9zb2Z0IGRvY3VtZW50YXRpb24gZm9yIHRoZSA6Y2xhc3M6YElTaGVsbExpbmtgCisgICBpbnRlcmZhY2UuCisKKworVmlzdGEgVXNlciBBY2Nlc3MgQ29udHJvbCAoVUFDKQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitTdGFydGluZyB3aXRoIFB5dGhvbiAyLjYsIGJkaXN0X3dpbmluc3Qgc3VwcG9ydHMgYSA6b3B0aW9uOmAtLXVzZXItYWNjZXNzLWNvbnRyb2xgCitvcHRpb24uICBUaGUgZGVmYXVsdCBpcyAnbm9uZScgKG1lYW5pbmcgbm8gVUFDIGhhbmRsaW5nIGlzIGRvbmUpLCBhbmQgb3RoZXIKK3ZhbGlkIHZhbHVlcyBhcmUgJ2F1dG8nIChtZWFuaW5nIHByb21wdCBmb3IgVUFDIGVsZXZhdGlvbiBpZiBQeXRob24gd2FzCitpbnN0YWxsZWQgZm9yIGFsbCB1c2VycykgYW5kICdmb3JjZScgKG1lYW5pbmcgYWx3YXlzIHByb21wdCBmb3IgZWxldmF0aW9uKS4KZGlmZiAtLWdpdCBhL0RvYy9wYWNrYWdpbmcvY29tbWFuZGhvb2tzLnJzdCBiL0RvYy9wYWNrYWdpbmcvY29tbWFuZGhvb2tzLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMjYxZDAwCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9jb21tYW5kaG9va3MucnN0CkBAIC0wLDAgKzEsNDcgQEAKKy4uIFRPRE8gaW50ZWdyYXRlIHRoaXMgaW4gY29tbWFuZHJlZiBhbmQgY29uZmlnZmlsZQorCisuLiBfcGFja2FnaW5nLWNvbW1hbmQtaG9va3M6CisKKz09PT09PT09PT09PT0KK0NvbW1hbmQgaG9va3MKKz09PT09PT09PT09PT0KKworUGFja2FnaW5nIHByb3ZpZGVzIGEgd2F5IG9mIGV4dGVuZGluZyBpdHMgY29tbWFuZHMgYnkgdGhlIHVzZSBvZiBwcmUtIGFuZAorcG9zdC1jb21tYW5kIGhvb2tzLiAgSG9va3MgYXJlIFB5dGhvbiBmdW5jdGlvbnMgKG9yIGFueSBjYWxsYWJsZSBvYmplY3QpIHRoYXQKK3Rha2UgYSBjb21tYW5kIG9iamVjdCBhcyBhcmd1bWVudC4gIFRoZXkncmUgc3BlY2lmaWVkIGluIDpyZWY6YGNvbmZpZyBmaWxlcworPHBhY2thZ2luZy1jb25maWctZmlsZW5hbWVzPmAgdXNpbmcgdGhlaXIgZnVsbHkgcXVhbGlmaWVkIG5hbWVzLiAgQWZ0ZXIgYQorY29tbWFuZCBpcyBmaW5hbGl6ZWQgKGl0cyBvcHRpb25zIGFyZSBwcm9jZXNzZWQpLCB0aGUgcHJlLWNvbW1hbmQgaG9va3MgYXJlCitleGVjdXRlZCwgdGhlbiB0aGUgY29tbWFuZCBpdHNlbGYgaXMgcnVuLCBhbmQgZmluYWxseSB0aGUgcG9zdC1jb21tYW5kIGhvb2tzIGFyZQorZXhlY3V0ZWQuCisKK1NlZSBhbHNvIGdsb2JhbCBzZXR1cCBob29rcyBpbiA6cmVmOmBzZXR1cGNmZy1zcGVjYC4KKworCisuLiBfcGFja2FnaW5nLWZpbmRpbmctaG9va3M6CisKK0ZpbmRpbmcgaG9va3MKKz09PT09PT09PT09PT0KKworQXMgYSBob29rIGlzIGNvbmZpZ3VyZWQgd2l0aCBhIFB5dGhvbiBkb3R0ZWQgbmFtZSwgaXQgbXVzdCBlaXRoZXIgYmUgZGVmaW5lZCBpbgorYSBtb2R1bGUgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sIG9yIGluIGEgbW9kdWxlIHByZXNlbnQgaW4gdGhlIHByb2plY3QKK2RpcmVjdG9yeSwgd2hlcmUgdGhlIDpmaWxlOmBzZXR1cC5jZmdgIGZpbGUgbGl2ZXM6OgorCisgICMgZmlsZTogX3NldHVwaG9va3MucHkKKworICBkZWYgaG9vayhpbnN0YWxsX2NtZCk6CisgICAgICBtZXRhZGF0YSA9IGluc3RhbGxfY21kLmRpc3QubWV0YWRhdGEKKyAgICAgIHByaW50KCdIb29rZWQgd2hpbGUgaW5zdGFsbGluZyAlciAlcyEnICUgKG1ldGFkYXRhWydOYW1lJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YVsnVmVyc2lvbiddKSkKKworVGhlbiB5b3UgbmVlZCB0byBjb25maWd1cmUgaXQgaW4gOmZpbGU6YHNldHVwLmNmZ2A6OgorCisgIFtpbnN0YWxsX2Rpc3RdCisgIHByZS1ob29rLmEgPSBfc2V0dXBob29rcy5ob29rCisKK1BhY2thZ2luZyB3aWxsIGFkZCB0aGUgcHJvamVjdCBkaXJlY3RvcnkgdG8gOmRhdGE6YHN5cy5wYXRoYCBhbmQgZmluZCB0aGUKK2BgX3NldHVwaG9va3NgYCBtb2R1bGUuCisKK0hvb2tzIGRlZmluZWQgaW4gZGlmZmVyZW50IGNvbmZpZyBmaWxlcyAoc3lzdGVtLXdpZGUsIHVzZXItd2lkZSBhbmQKK3Byb2plY3Qtd2lkZSkgZG8gbm90IG92ZXJyaWRlIGVhY2ggb3RoZXIgYXMgbG9uZyBhcyB0aGV5IGFyZSBzcGVjaWZpZWQgd2l0aAorZGlmZmVyZW50IGFsaWFzZXMgKGFkZGl0aW9uYWwgbmFtZXMgYWZ0ZXIgdGhlIGRvdCkuICBUaGUgYWxpYXMgaW4gdGhlIGV4YW1wbGUKK2Fib3ZlIGlzIGBgYWBgLgpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9jb21tYW5kcmVmLnJzdCBiL0RvYy9wYWNrYWdpbmcvY29tbWFuZHJlZi5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjE2NWI1NgotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9wYWNrYWdpbmcvY29tbWFuZHJlZi5yc3QKQEAgLTAsMCArMSwzNzQgQEAKKy4uIF9wYWNrYWdpbmctY29tbWFuZC1yZWZlcmVuY2U6CisKKyoqKioqKioqKioqKioqKioqCitDb21tYW5kIFJlZmVyZW5jZQorKioqKioqKioqKioqKioqKioKKworVGhpcyByZWZlcmVuY2UgYnJpZWZseSBkb2N1bWVudHMgYWxsIHN0YW5kYXJkIFBhY2thZ2luZyBjb21tYW5kcyBhbmQgc29tZSBvZgordGhlaXIgb3B0aW9ucy4KKworLi4gRklYTUUgZG9lcyBub3Qgd29yazogVXNlIHB5c2V0dXAgcnVuIC0taGVscC1jb21tYW5kcyB0byBsaXN0IGFsbAorICAgc3RhbmRhcmQgYW5kIGV4dHJhIGNvbW1hbmRzIGF2YWlsYXZibGUgb24geW91ciBzeXN0ZW0sIHdpdGggdGhlaXIKKyAgIGRlc2NyaXB0aW9uLiAgVXNlIHB5c2V0dXAgcnVuIDxjb21tYW5kPiAtLWhlbHAgdG8gZ2V0IGhlbHAgYWJvdXQgdGhlIG9wdGlvbnMKKyAgIG9mIG9uZSBjb21tYW5kLgorCisuLiBYWFggc2VjdGlvbnMgZnJvbSB0aGlzIGRvY3VtZW50IHNob3VsZCBiZSBtZXJnZWQgd2l0aCBvdGhlciBkb2NzIChlLmcuIGNoZWNrCisgICBhbmQgdXBsb2FkIHdpdGggdXBsb2FkaW5nLnJzdCwgaW5zdGFsbF8qIHdpdGggaW5zdGFsbC9pbnN0YWxsLnJzdCwgZXRjLik7CisgICB0aGVyZSBpcyBubyB2YWx1ZSBpbiBwYXJ0aWFsbHkgZHVwbGljYXRpbmcgaW5mb3JtYXRpb24uICB0aGlzIGZpbGUgY291bGQKKyAgIGhvd2V2ZXIgc2VydmUgYXMgYW4gaW5kZXgsIGkuZS4ganVzdCBhIGxpc3Qgb2YgYWxsIGNvbW1hbmRzIHdpdGggbGlua3MgdG8KKyAgIGV2ZXJ5IHNlY3Rpb24gdGhhdCBkZXNjcmliZXMgb3B0aW9ucyBvciB1c2FnZQorCisKK1ByZXBhcmluZyBkaXN0cmlidXRpb25zCis9PT09PT09PT09PT09PT09PT09PT09PQorCis6Y29tbWFuZDpgY2hlY2tgCistLS0tLS0tLS0tLS0tLS0tCisKK1BlcmZvcm0gc29tZSB0ZXN0cyBvbiB0aGUgbWV0YWRhdGEgb2YgYSBkaXN0cmlidXRpb24uCisKK0ZvciBleGFtcGxlLCBpdCB2ZXJpZmllcyB0aGF0IGFsbCByZXF1aXJlZCBtZXRhZGF0YSBmaWVsZHMgYXJlIHByb3ZpZGVkIGluIHRoZQorOmZpbGU6YHNldHVwLmNmZ2AgZmlsZS4KKworLi4gVE9ETyBkb2N1bWVudCByZVNUIGNoZWNrcworCisKKzpjb21tYW5kOmB0ZXN0YAorLS0tLS0tLS0tLS0tLS0tCisKK1J1biBhIHRlc3Qgc3VpdGUuCisKK1doZW4gZG9pbmcgdGVzdC1kcml2ZW4gZGV2ZWxvcG1lbnQsIG9yIHJ1bm5pbmcgYXV0b21hdGVkIGJ1aWxkcyB0aGF0IG5lZWQKK3Rlc3RpbmcgYmVmb3JlIHRoZXkgYXJlIGluc3RhbGxlZCBmb3IgZG93bmxvYWRpbmcgb3IgdXNlLCBpdCdzIG9mdGVuIHVzZWZ1bCB0bworYmUgYWJsZSB0byBydW4gYSBwcm9qZWN0J3MgdW5pdCB0ZXN0cyB3aXRob3V0IGFjdHVhbGx5IGluc3RhbGxpbmcgdGhlIHByb2plY3QKK2FueXdoZXJlLiAgVGhlIDpjb21tYW5kOmB0ZXN0YCBjb21tYW5kIHJ1bnMgcHJvamVjdCdzIHVuaXQgdGVzdHMgd2l0aG91dAorYWN0dWFsbHkgaW5zdGFsbGluZyBpdCwgYnkgdGVtcG9yYXJpbHkgcHV0dGluZyB0aGUgcHJvamVjdCdzIHNvdXJjZSBvbgorOmRhdGE6YHN5cy5wYXRoYCwgYWZ0ZXIgZmlyc3QgcnVubmluZyA6Y29tbWFuZDpgYnVpbGRfZXh0IC1pYCB0byBlbnN1cmUgdGhhdCBhbnkKK0MgZXh0ZW5zaW9ucyBhcmUgYnVpbHQuCisKK1lvdSBjYW4gdXNlIHRoaXMgY29tbWFuZCBpbiBvbmUgb2YgdHdvIHdheXM6IGVpdGhlciBieSBzcGVjaWZ5aW5nIGEKK3VuaXR0ZXN0LWNvbXBhdGlibGUgdGVzdCBzdWl0ZSBmb3IgeW91ciBwcm9qZWN0IChvciBhbnkgY2FsbGFibGUgdGhhdCByZXR1cm5zCitpdCkgb3IgYnkgcGFzc2luZyBhIHRlc3QgcnVubmVyIGZ1bmN0aW9uIHRoYXQgd2lsbCBydW4geW91ciB0ZXN0cyBhbmQgZGlzcGxheQorcmVzdWx0cyBpbiB0aGUgY29uc29sZS4gIEJvdGggb3B0aW9ucyB0YWtlIGEgUHl0aG9uIGRvdHRlZCBuYW1lIGluIHRoZSBmb3JtCitgYHBhY2thZ2UubW9kdWxlLmNhbGxhYmxlYGAgdG8gc3BlY2lmeSB0aGUgb2JqZWN0IHRvIHVzZS4KKworSWYgbm9uZSBvZiB0aGVzZSBvcHRpb25zIGFyZSBzcGVjaWZpZWQsIFBhY2thZ2luZyB3aWxsIHRyeSB0byBwZXJmb3JtIHRlc3QKK2Rpc2NvdmVyeSB1c2luZyBlaXRoZXIgdW5pdHRlc3QgKGZvciBQeXRob24gMy4yIGFuZCBoaWdoZXIpIG9yIHVuaXR0ZXN0MiAoZm9yCitvbGRlciB2ZXJzaW9ucywgaWYgaW5zdGFsbGVkKS4KKworLi4gdGhpcyBpcyBhIHBzZXVkby1jb21tYW5kIG5hbWUgdXNlZCB0byBkaXNhbWJpZ3VhdGUgdGhlIG9wdGlvbnMgaW4gaW5kZXhlcyBhbmQKKyAgIGxpbmtzCisuLiBwcm9ncmFtOjogcGFja2FnaW5nIHRlc3QKKworLi4gY21kb3B0aW9uOjogLS1zdWl0ZT1OQU1FLCAtcyBOQU1FCisKKyAgIFNwZWNpZnkgdGhlIHRlc3Qgc3VpdGUgKG9yIG1vZHVsZSwgY2xhc3MsIG9yIG1ldGhvZCkgdG8gYmUgcnVuLiAgVGhlIGRlZmF1bHQKKyAgIGZvciB0aGlzIG9wdGlvbiBjYW4gYmUgc2V0IGJ5IGluIHRoZSBwcm9qZWN0J3MgOmZpbGU6YHNldHVwLmNmZ2AgZmlsZToKKworICAgLi4gY29kZS1ibG9jazo6IGNmZworCisgICAgICBbdGVzdF0KKyAgICAgIHN1aXRlID0gbXlwYWNrYWdlLnRlc3RzLmdldF9hbGxfdGVzdHMKKworLi4gY21kb3B0aW9uOjogLS1ydW5uZXI9TkFNRSwgLXIgTkFNRQorCisgICBTcGVjaWZ5IHRoZSB0ZXN0IHJ1bm5lciB0byBiZSBjYWxsZWQuCisKKworOmNvbW1hbmQ6YGNvbmZpZ2AKKy0tLS0tLS0tLS0tLS0tLS0tCisKK1BlcmZvcm0gZGlzdHJpYnV0aW9uIGNvbmZpZ3VyYXRpb24uCisKKworVGhlIGJ1aWxkIHN0ZXAKKz09PT09PT09PT09PT09CisKK1RoaXMgc3RlcCBpcyBtYWlubHkgdXNlZnVsIHRvIGNvbXBpbGUgQy9DKysgbGlicmFyaWVzIG9yIGV4dGVuc2lvbiBtb2R1bGVzLiAgVGhlCitidWlsZCBjb21tYW5kcyBjYW4gYmUgcnVuIG1hbnVhbGx5IHRvIGNoZWNrIGZvciBzeW50YXggZXJyb3JzIG9yIHBhY2thZ2luZworaXNzdWVzIChmb3IgZXhhbXBsZSBpZiB0aGUgYWRkaXRpb24gb2YgYSBuZXcgc291cmNlIGZpbGUgd2FzIGZvcmdvdHRlbiBpbiB0aGUKKzpmaWxlOmBzZXR1cC5jZmdgIGZpbGUpLCBhbmQgaXMgYWxzbyBydW4gYXV0b21hdGljYWxseSBieSBjb21tYW5kcyB3aGljaCBuZWVkCitpdC4gIFBhY2thZ2luZyBjaGVja3MgdGhlIG10aW1lIG9mIHNvdXJjZSBhbmQgYnVpbHQgZmlsZXMgdG8gYXZvaWQgcmUtYnVpbGRpbmcKK2lmIGl0J3Mgbm90IG5lY2Vzc2FyeS4KKworCis6Y29tbWFuZDpgYnVpbGRgCistLS0tLS0tLS0tLS0tLS0tCisKK0J1aWxkIGFsbCBmaWxlcyBvZiBhIGRpc3RyaWJ1dGlvbiwgZGVsZWdhdGluZyB0byB0aGUgb3RoZXIgOmNvbW1hbmQ6YGJ1aWxkXypgCitjb21tYW5kcyB0byBkbyB0aGUgd29yay4KKworCis6Y29tbWFuZDpgYnVpbGRfY2xpYmAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitCdWlsZCBDIGxpYnJhcmllcy4KKworCis6Y29tbWFuZDpgYnVpbGRfZXh0YAorLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworQnVpbGQgQy9DKysgZXh0ZW5zaW9uIG1vZHVsZXMuCisKKworOmNvbW1hbmQ6YGJ1aWxkX3B5YAorLS0tLS0tLS0tLS0tLS0tLS0tLQorCitCdWlsZCB0aGUgUHl0aG9uIG1vZHVsZXMgKGp1c3QgY29weSB0aGVtIHRvIHRoZSBidWlsZCBkaXJlY3RvcnkpIGFuZAorOnRlcm06YGJ5dGUtY29tcGlsZSA8Ynl0ZWNvZGU+YCB0aGVtIHRvIDpmaWxlOmAucHljYCBhbmQvb3IgOmZpbGU6YC5weW9gIGZpbGVzLgorCitUaGUgYnl0ZSBjb21waWxhdGlvbiBpcyBjb250cm9sbGVkIGJ5IHR3byBzZXRzIG9mIG9wdGlvbnM6CisKKy0gYGAtLWNvbXBpbGVgYCBhbmQgYGAtLW5vLWNvbXBpbGVgYCBhcmUgdXNlZCB0byBjb250cm9sIHRoZSBjcmVhdGlvbiBvZgorICA6ZmlsZTpgLnB5Y2AgZmlsZXM7IHRoZSBkZWZhdWx0IGlzIGBgLS1uby1jb21waWxlYGAuCisKKy0gYGAtLW9wdGltaXplIE5gYCAob3IgYGAtT05gYCkgaXMgdXNlZCB0byBjb250cm9sIHRoZSBjcmVhdGlvbiBvZiA6ZmlsZTpgLnB5b2AKKyAgZmlsZXM6IGBgLU8xYGAgdHVybnMgb24gYmFzaWMgb3B0aW1pemF0aW9ucywgYGAtTzJgYCBhbHNvIGRpc2NhcmRzIGRvY3N0cmluZ3MsCisgIGBgLU8wYGAgZG9lcyBub3QgY3JlYXRlIDpmaWxlOmAucHlvYCBmaWxlczsgdGhlIGRlZmF1bHQgaXMgYGAtTzBgYC4KKworWW91IGNhbiBtaXggYW5kIG1hdGNoIHRoZXNlIG9wdGlvbnM6IGZvciBleGFtcGxlLCBgYC0tbm8tY29tcGlsZSAtLW9wdGltaXplIDJgYAord2lsbCBjcmVhdGUgOmZpbGU6YC5weW9gIGZpbGVzIGJ1dCBubyA6ZmlsZTpgLnB5Y2AgZmlsZXMuCisKKy4uIFhYWCB0aGVzZSBvcHRpb24gcm9sZXMgZG8gbm90IHdvcmsKKworQ2FsbGluZyBQeXRob24gd2l0aCA6b3B0aW9uOmAtT2Agb3IgOm9wdGlvbjpgLUJgIGRvZXMgbm90IGNvbnRyb2wgdGhlIGNyZWF0aW9uCitvZiBieXRlY29kZSBmaWxlcywgb25seSB0aGUgb3B0aW9ucyBkZXNjcmliZWQgYWJvdmUgZG8uCisKKworOmNvbW1hbmQ6YGJ1aWxkX3NjcmlwdHNgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0J1aWxkIHRoZSBzY3JpcHRzIChqdXN0IGNvcHkgdGhlbSB0byB0aGUgYnVpbGQgZGlyZWN0b3J5IGFuZCBhZGp1c3QgdGhlaXIKK3NoZWJhbmcgaWYgdGhleSdyZSBQeXRob24gc2NyaXB0cykuCisKKworOmNvbW1hbmQ6YGNsZWFuYAorLS0tLS0tLS0tLS0tLS0tLQorCitDbGVhbiB0aGUgYnVpbGQgdHJlZSBvZiB0aGUgcmVsZWFzZS4KKworLi4gcHJvZ3JhbTo6IHBhY2thZ2luZyBjbGVhbgorCisuLiBjbWRvcHRpb246OiAtLWFsbCwgLWEKKworICAgUmVtb3ZlIGJ1aWxkIGRpcmVjdG9yaWVzIGZvciBtb2R1bGVzLCBzY3JpcHRzLCBldGMuLCBub3Qgb25seSB0ZW1wb3JhcnkgYnVpbGQKKyAgIGJ5LXByb2R1Y3RzLgorCisKK0NyZWF0aW5nIHNvdXJjZSBhbmQgYnVpbHQgZGlzdHJpYnV0aW9ucworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKzpjb21tYW5kOmBzZGlzdGAKKy0tLS0tLS0tLS0tLS0tLS0KKworQnVpbGQgYSBzb3VyY2UgZGlzdHJpYnV0aW9uIGZvciBhIHJlbGVhc2UuCisKK0l0IGlzIHJlY29tbWVuZGVkIHRoYXQgeW91IGFsd2F5cyBidWlsZCBhbmQgdXBsb2FkIGEgc291cmNlIGRpc3RyaWJ1dGlvbi4gIFVzZXJzCitvZiBPU2VzIHdpdGggZWFzeSBhY2Nlc3MgdG8gY29tcGlsZXJzIGFuZCB1c2VycyBvZiBhZHZhbmNlZCBwYWNrYWdpbmcgdG9vbHMgd2lsbAorcHJlZmVyIHRvIGNvbXBpbGUgZnJvbSBzb3VyY2UgcmF0aGVyIHRoYW4gdXNpbmcgcHJlLWJ1aWx0IGRpc3RyaWJ1dGlvbnMuICBGb3IKK1dpbmRvd3MgdXNlcnMsIHByb3ZpZGluZyBhIGJpbmFyeSBpbnN0YWxsZXIgaXMgYWxzbyByZWNvbW1lbmRlZCBwcmFjdGljZS4KKworCis6Y29tbWFuZDpgYmRpc3RgCistLS0tLS0tLS0tLS0tLS0tCisKK0J1aWxkIGEgYmluYXJ5IGRpc3RyaWJ1dGlvbiBmb3IgYSByZWxlYXNlLgorCitUaGlzIGNvbW1hbmQgd2lsbCBjYWxsIG90aGVyIDpjb21tYW5kOmBiZGlzdF8qYCBjb21tYW5kcyB0byBjcmVhdGUgb25lIG9yIG1vcmUKK2Rpc3RyaWJ1dGlvbnMgZGVwZW5kaW5nIG9uIHRoZSBvcHRpb25zIGdpdmVuLiAgVGhlIGRlZmF1bHQgaXMgdG8gY3JlYXRlIGEKKy50YXIuZ3ogYXJjaGl2ZSBvbiBVbml4IGFuZCBhIHppcCBhcmNoaXZlIG9uIFdpbmRvd3Mgb3IgT1MvMi4KKworLi4gcHJvZ3JhbTo6IHBhY2thZ2luZyBiZGlzdAorCisuLiBjbWRvcHRpb246OiAtLWZvcm1hdHMKKworICAgQmluYXJ5IGZvcm1hdHMgdG8gYnVpbGQgKGNvbW1hLXNlcGFyYXRlZCBsaXN0KS4KKworLi4gY21kb3B0aW9uOjogLS1zaG93LWZvcm1hdHMKKworICAgRHVtcCBsaXN0IG9mIGF2YWlsYWJsZSBmb3JtYXRzLgorCisKKzpjb21tYW5kOmBiZGlzdF9kdW1iYAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0J1aWxkIGEgImR1bWIiIGluc3RhbGxlciwgYSBzaW1wbGUgYXJjaGl2ZSBvZiBmaWxlcyB0aGF0IGNvdWxkIGJlIHVucGFja2VkIHVuZGVyCitgYCRwcmVmaXhgYCBvciBgYCRleGVjX3ByZWZpeGBgLgorCisKKzpjb21tYW5kOmBiZGlzdF93aW5pbnN0YAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0J1aWxkIGEgV2luZG93cyBpbnN0YWxsZXIuCisKKworOmNvbW1hbmQ6YGJkaXN0X21zaWAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0J1aWxkIGEgYE1pY3Jvc29mdCBJbnN0YWxsZXJgXyAoLm1zaSkgZmlsZS4KKworLi4gX01pY3Jvc29mdCBJbnN0YWxsZXI6IGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMvbGlicmFyeS9jYzE4NTY4OChWUy44NSkuYXNweAorCitJbiBtb3N0IGNhc2VzLCB0aGUgOmNvbW1hbmQ6YGJkaXN0X21zaWAgaW5zdGFsbGVyIGlzIGEgYmV0dGVyIGNob2ljZSB0aGFuIHRoZQorOmNvbW1hbmQ6YGJkaXN0X3dpbmluc3RgIGluc3RhbGxlciwgYmVjYXVzZSBpdCBwcm92aWRlcyBiZXR0ZXIgc3VwcG9ydCBmb3IgV2luNjQKK3BsYXRmb3JtcywgYWxsb3dzIGFkbWluaXN0cmF0b3JzIHRvIHBlcmZvcm0gbm9uLWludGVyYWN0aXZlIGluc3RhbGxhdGlvbnMsIGFuZAorYWxsb3dzIGluc3RhbGxhdGlvbiB0aHJvdWdoIGdyb3VwIHBvbGljaWVzLgorCisKK1B1Ymxpc2hpbmcgZGlzdHJpYnV0aW9ucworPT09PT09PT09PT09PT09PT09PT09PT09CisKKzpjb21tYW5kOmByZWdpc3RlcmAKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhpcyBjb21tYW5kIHJlZ2lzdGVycyB0aGUgY3VycmVudCByZWxlYXNlIHdpdGggdGhlIFB5dGhvbiBQYWNrYWdlIEluZGV4LiAgVGhpcworaXMgZGVzY3JpYmVkIGluIG1vcmUgZGV0YWlsIGluIDpQRVA6YDMwMWAuCisKKy4uIFRPRE8gZXhwbGFpbiB1c2VyIGFuZCBwcm9qZWN0IHJlZ2lzdHJhdGlvbiB3aXRoIHRoZSB3ZWIgVUkKKworCis6Y29tbWFuZDpgdXBsb2FkYAorLS0tLS0tLS0tLS0tLS0tLS0KKworVXBsb2FkIHNvdXJjZSBhbmQvb3IgYmluYXJ5IGRpc3RyaWJ1dGlvbnMgdG8gUHlQSS4KKworVGhlIGRpc3RyaWJ1dGlvbnMgaGF2ZSB0byBiZSBidWlsdCBvbiB0aGUgc2FtZSBjb21tYW5kIGxpbmUgYXMgdGhlCis6Y29tbWFuZDpgdXBsb2FkYCBjb21tYW5kOyBzZWUgOnJlZjpgcGFja2FnaW5nLXBhY2thZ2UtdXBsb2FkYCBmb3IgbW9yZSBpbmZvLgorCisuLiBwcm9ncmFtOjogcGFja2FnaW5nIHVwbG9hZAorCisuLiBjbWRvcHRpb246OiAtLXNpZ24sIC1zCisKKyAgIFNpZ24gZWFjaCB1cGxvYWRlZCBmaWxlIHVzaW5nIEdQRyAoR05VIFByaXZhY3kgR3VhcmQpLiAgVGhlIGBgZ3BnYGAgcHJvZ3JhbQorICAgbXVzdCBiZSBhdmFpbGFibGUgZm9yIGV4ZWN1dGlvbiBvbiB0aGUgc3lzdGVtIGBgUEFUSGBgLgorCisuLiBjbWRvcHRpb246OiAtLWlkZW50aXR5PU5BTUUsIC1pIE5BTUUKKworICAgU3BlY2lmeSB0aGUgaWRlbnRpdHkgb3Iga2V5IG5hbWUgZm9yIEdQRyB0byB1c2Ugd2hlbiBzaWduaW5nLiAgVGhlIHZhbHVlIG9mCisgICB0aGlzIG9wdGlvbiB3aWxsIGJlIHBhc3NlZCB0aHJvdWdoIHRoZSBgYC0tbG9jYWwtdXNlcmBgIG9wdGlvbiBvZiB0aGUKKyAgIGBgZ3BnYGAgcHJvZ3JhbS4KKworLi4gY21kb3B0aW9uOjogLS1zaG93LXJlc3BvbnNlCisKKyAgIERpc3BsYXkgdGhlIGZ1bGwgcmVzcG9uc2UgdGV4dCBmcm9tIHNlcnZlcjsgdGhpcyBpcyB1c2VmdWwgZm9yIGRlYnVnZ2luZworICAgUHlQSSBwcm9ibGVtcy4KKworLi4gY21kb3B0aW9uOjogLS1yZXBvc2l0b3J5PVVSTCwgLXIgVVJMCisKKyAgIFRoZSBVUkwgb2YgdGhlIHJlcG9zaXRvcnkgdG8gdXBsb2FkIHRvLiAgRGVmYXVsdHMgdG8KKyAgIGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaSAoaS5lLiwgdGhlIG1haW4gUHlQSSBpbnN0YWxsYXRpb24pLgorCisuLiBjbWRvcHRpb246OiAtLXVwbG9hZC1kb2NzCisKKyAgIEFsc28gcnVuIDpjb21tYW5kOmB1cGxvYWRfZG9jc2AuICBNYWlubHkgdXNlZnVsIGFzIGEgZGVmYXVsdCB2YWx1ZSBpbgorICAgOmZpbGU6YHNldHVwLmNmZ2AgKG9uIHRoZSBjb21tYW5kIGxpbmUsIGl0J3Mgc2hvcnRlciB0byBqdXN0IHR5cGUgYm90aAorICAgY29tbWFuZHMpLgorCisKKzpjb21tYW5kOmB1cGxvYWRfZG9jc2AKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVXBsb2FkIEhUTUwgZG9jdW1lbnRhdGlvbiB0byBQeVBJLgorCitQeVBJIG5vdyBzdXBwb3J0cyBwdWJsaXNoaW5nIHByb2plY3QgZG9jdW1lbnRhdGlvbiBhdCBhIFVSSSBvZiB0aGUgZm9ybQorYGBodHRwOi8vcGFja2FnZXMucHl0aG9uLm9yZy88cHJvamVjdD5gYC4gIDpjb21tYW5kOmB1cGxvYWRfZG9jc2AgIHdpbGwgY3JlYXRlCit0aGUgbmVjZXNzYXJ5IHppcCBmaWxlIG91dCBvZiBhIGRvY3VtZW50YXRpb24gZGlyZWN0b3J5IGFuZCB3aWxsIHBvc3QgdG8gdGhlCityZXBvc2l0b3J5LgorCitOb3RlIHRoYXQgdG8gdXBsb2FkIHRoZSBkb2N1bWVudGF0aW9uIG9mIGEgcHJvamVjdCwgdGhlIGNvcnJlc3BvbmRpbmcgdmVyc2lvbgorbXVzdCBhbHJlYWR5IGJlIHJlZ2lzdGVyZWQgd2l0aCBQeVBJLCB1c2luZyB0aGUgOmNvbW1hbmQ6YHJlZ2lzdGVyYCBjb21tYW5kIC0tLQoranVzdCBsaWtlIHdpdGggOmNvbW1hbmQ6YHVwbG9hZGAuCisKK0Fzc3VtaW5nIHRoZXJlIGlzIGFuIGBgRXhhbXBsZWBgIHByb2plY3Qgd2l0aCBkb2N1bWVudGF0aW9uIGluIHRoZSBzdWJkaXJlY3RvcnkKKzpmaWxlOmBkb2NzYCwgZm9yIGV4YW1wbGU6OgorCisgICBFeGFtcGxlLworICAgICAgZXhhbXBsZS5weQorICAgICAgc2V0dXAuY2ZnCisgICAgICBkb2NzLworICAgICAgICAgYnVpbGQvCisgICAgICAgICAgICBodG1sLworICAgICAgICAgICAgICAgaW5kZXguaHRtbAorICAgICAgICAgICAgICAgdGlwc190cmlja3MuaHRtbAorICAgICAgICAgY29uZi5weQorICAgICAgICAgaW5kZXgudHh0CisgICAgICAgICB0aXBzX3RyaWNrcy50eHQKKworWW91IGNhbiBzaW1wbHkgc3BlY2lmeSB0aGUgZGlyZWN0b3J5IHdpdGggdGhlIEhUTUwgZmlsZXMgaW4geW91cgorOmZpbGU6YHNldHVwLmNmZ2AgZmlsZToKKworLi4gY29kZS1ibG9jazo6IGNmZworCisgICBbdXBsb2FkX2RvY3NdCisgICB1cGxvYWQtZGlyID0gZG9jcy9idWlsZC9odG1sCisKKworLi4gcHJvZ3JhbTo6IHBhY2thZ2luZyB1cGxvYWRfZG9jcworCisuLiBjbWRvcHRpb246OiAtLXVwbG9hZC1kaXIKKworICAgVGhlIGRpcmVjdG9yeSB0byBiZSB1cGxvYWRlZCB0byB0aGUgcmVwb3NpdG9yeS4gQnkgZGVmYXVsdCBkb2N1bWVudGF0aW9uCisgICBpcyBzZWFyY2hlZCBmb3IgaW4gYGBkb2NzYGAgKG9yIGBgZG9jYGApIGRpcmVjdG9yeSBpbiBwcm9qZWN0IHJvb3QuCisKKy4uIGNtZG9wdGlvbjo6IC0tc2hvdy1yZXNwb25zZQorCisgICBEaXNwbGF5IHRoZSBmdWxsIHJlc3BvbnNlIHRleHQgZnJvbSBzZXJ2ZXI7IHRoaXMgaXMgdXNlZnVsIGZvciBkZWJ1Z2dpbmcKKyAgIFB5UEkgcHJvYmxlbXMuCisKKy4uIGNtZG9wdGlvbjo6IC0tcmVwb3NpdG9yeT1VUkwsIC1yIFVSTAorCisgICBUaGUgVVJMIG9mIHRoZSByZXBvc2l0b3J5IHRvIHVwbG9hZCB0by4gIERlZmF1bHRzIHRvCisgICBodHRwOi8vcHlwaS5weXRob24ub3JnL3B5cGkgKGkuZS4sIHRoZSBtYWluIFB5UEkgaW5zdGFsbGF0aW9uKS4KKworCitUaGUgaW5zdGFsbCBzdGVwCis9PT09PT09PT09PT09PT09CisKK1RoZXNlIGNvbW1hbmRzIGFyZSB1c2VkIGJ5IGVuZC11c2VycyBvZiBhIHByb2plY3QgdXNpbmcgOnByb2dyYW06YHB5c2V0dXBgIG9yCithbm90aGVyIGNvbXBhdGlibGUgaW5zdGFsbGVyLiAgRWFjaCBjb21tYW5kIHdpbGwgcnVuIHRoZSBjb3JyZXNwb25kaW5nCis6Y29tbWFuZDpgYnVpbGRfKmAgY29tbWFuZCBhbmQgdGhlbiBtb3ZlIHRoZSBidWlsdCBmaWxlcyB0byB0aGVpciBkZXN0aW5hdGlvbiBvbgordGhlIHRhcmdldCBzeXN0ZW0uCisKKworOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0luc3RhbGwgYSBkaXN0cmlidXRpb24sIGRlbGVnYXRpbmcgdG8gdGhlIG90aGVyIDpjb21tYW5kOmBpbnN0YWxsXypgIGNvbW1hbmRzIHRvCitkbyB0aGUgd29yay4gIFNlZSA6cmVmOmBwYWNrYWdpbmctaG93LWluc3RhbGwtd29ya3NgIGZvciBjb21wbGV0ZSB1c2FnZQoraW5zdHJ1Y3Rpb25zLgorCisKKzpjb21tYW5kOmBpbnN0YWxsX2RhdGFgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitJbnN0YWxsIGRhdGEgZmlsZXMuCisKKworOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGluZm9gCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworSW5zdGFsbCBmaWxlcyByZWNvcmRpbmcgZGV0YWlscyBvZiB0aGUgaW5zdGFsbGF0aW9uIGFzIHNwZWNpZmllZCBpbiA6UEVQOmAzNzZgLgorCisKKzpjb21tYW5kOmBpbnN0YWxsX2hlYWRlcnNgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitJbnN0YWxsIEMvQysrIGhlYWRlciBmaWxlcy4KKworCis6Y29tbWFuZDpgaW5zdGFsbF9saWJgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0luc3RhbGwgYWxsIG1vZHVsZXMgKGV4dGVuc2lvbnMgYW5kIHB1cmUgUHl0aG9uKS4KKworLi4gWFhYIHdoYXQgYWJvdXQgQyBsaWJyYXJpZXMgY3JlYXRlZCB3aXRoIGJ1aWxkX2NsaWI/CisKK1NpbWlsYXJseSB0byBgYGJ1aWxkX3B5YGAsIHRoZXJlIGFyZSBvcHRpb25zIHRvIGNvbnRyb2wgdGhlIGNvbXBpbGF0aW9uIG9mCitQeXRob24gY29kZSB0byA6dGVybTpgYnl0ZWNvZGVgIGZpbGVzIChzZWUgYWJvdmUpLiAgQnkgZGVmYXVsdCwgOmZpbGU6YC5weWNgCitmaWxlcyB3aWxsIGJlIGNyZWF0ZWQgKGBgLS1jb21waWxlYGApIGFuZCA6ZmlsZTpgLnB5b2AgZmlsZXMgd2lsbCBub3QKKyhgYC0tb3B0aW1pemUgMGBgKS4KKworCis6Y29tbWFuZDpgaW5zdGFsbF9zY3JpcHRzYAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworSW5zdGFsbCBzY3JpcHRzLgpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9jb25maWdmaWxlLnJzdCBiL0RvYy9wYWNrYWdpbmcvY29uZmlnZmlsZS5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODI1YjVjYgotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9wYWNrYWdpbmcvY29uZmlnZmlsZS5yc3QKQEAgLTAsMCArMSwxMjUgQEAKKy4uIF9wYWNrYWdpbmctc2V0dXAtY29uZmlnOgorCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK1dyaXRpbmcgdGhlIFNldHVwIENvbmZpZ3VyYXRpb24gRmlsZQorKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisKK09mdGVuLCBpdCdzIG5vdCBwb3NzaWJsZSB0byB3cml0ZSBkb3duIGV2ZXJ5dGhpbmcgbmVlZGVkIHRvIGJ1aWxkIGEgZGlzdHJpYnV0aW9uCisqYSBwcmlvcmkqOiB5b3UgbWF5IG5lZWQgdG8gZ2V0IHNvbWUgaW5mb3JtYXRpb24gZnJvbSB0aGUgdXNlciwgb3IgZnJvbSB0aGUKK3VzZXIncyBzeXN0ZW0sIGluIG9yZGVyIHRvIHByb2NlZWQuICBBcyBsb25nIGFzIHRoYXQgaW5mb3JtYXRpb24gaXMgZmFpcmx5CitzaW1wbGUtLS1hIGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciBDIGhlYWRlciBmaWxlcyBvciBsaWJyYXJpZXMsIGZvcgorZXhhbXBsZS0tLXRoZW4gcHJvdmlkaW5nIGEgY29uZmlndXJhdGlvbiBmaWxlLCA6ZmlsZTpgc2V0dXAuY2ZnYCwgZm9yIHVzZXJzIHRvCitlZGl0IGlzIGEgY2hlYXAgYW5kIGVhc3kgd2F5IHRvIHNvbGljaXQgaXQuICBDb25maWd1cmF0aW9uIGZpbGVzIGFsc28gbGV0IHlvdQorcHJvdmlkZSBkZWZhdWx0IHZhbHVlcyBmb3IgYW55IGNvbW1hbmQgb3B0aW9uLCB3aGljaCB0aGUgaW5zdGFsbGVyIGNhbiB0aGVuCitvdmVycmlkZSBlaXRoZXIgb24gdGhlIGNvbW1hbmQgbGluZSBvciBieSBlZGl0aW5nIHRoZSBjb25maWcgZmlsZS4KKworVGhlIHNldHVwIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyBhIHVzZWZ1bCBtaWRkbGUtZ3JvdW5kIGJldHdlZW4gdGhlIHNldHVwIHNjcmlwdAorLS0td2hpY2gsIGlkZWFsbHksIHdvdWxkIGJlIG9wYXF1ZSB0byBpbnN0YWxsZXJzIFsjXV8tLS1hbmQgdGhlIGNvbW1hbmQgbGluZSB0bwordGhlIHNldHVwIHNjcmlwdCwgd2hpY2ggaXMgb3V0c2lkZSBvZiB5b3VyIGNvbnRyb2wgYW5kIGVudGlyZWx5IHVwIHRvIHRoZQoraW5zdGFsbGVyLiAgSW4gZmFjdCwgOmZpbGU6YHNldHVwLmNmZ2AgKGFuZCBhbnkgb3RoZXIgRGlzdHV0aWxzIGNvbmZpZ3VyYXRpb24KK2ZpbGVzIHByZXNlbnQgb24gdGhlIHRhcmdldCBzeXN0ZW0pIGFyZSBwcm9jZXNzZWQgYWZ0ZXIgdGhlIGNvbnRlbnRzIG9mIHRoZQorc2V0dXAgc2NyaXB0LCBidXQgYmVmb3JlIHRoZSBjb21tYW5kIGxpbmUuICBUaGlzIGhhcyAgc2V2ZXJhbCB1c2VmdWwKK2NvbnNlcXVlbmNlczoKKworLi4gSWYgeW91IGhhdmUgbW9yZSBhZHZhbmNlZCBuZWVkcywgc3VjaCBhcyBkZXRlcm1pbmluZyB3aGljaCBleHRlbnNpb25zIHRvCisgICBidWlsZCBiYXNlZCBvbiB3aGF0IGNhcGFiaWxpdGllcyBhcmUgcHJlc2VudCBvbiB0aGUgdGFyZ2V0IHN5c3RlbSwgdGhlbiB5b3UKKyAgIG5lZWQgdGhlIERpc3R1dGlscyBhdXRvLWNvbmZpZ3VyYXRpb24gZmFjaWxpdHkuICBUaGlzIHN0YXJ0ZWQgdG8gYXBwZWFyIGluCisgICBEaXN0dXRpbHMgMC45IGJ1dCwgYXMgb2YgdGhpcyB3cml0aW5nLCBpc24ndCBtYXR1cmUgb3Igc3RhYmxlIGVub3VnaCB5ZXQKKyAgIGZvciByZWFsLXdvcmxkIHVzZS4KKworKiBpbnN0YWxsZXJzIGNhbiBvdmVycmlkZSBzb21lIG9mIHdoYXQgeW91IHB1dCBpbiA6ZmlsZTpgc2V0dXAucHlgIGJ5IGVkaXRpbmcKKyAgOmZpbGU6YHNldHVwLmNmZ2AKKworKiB5b3UgY2FuIHByb3ZpZGUgbm9uLXN0YW5kYXJkIGRlZmF1bHRzIGZvciBvcHRpb25zIHRoYXQgYXJlIG5vdCBlYXNpbHkgc2V0IGluCisgIDpmaWxlOmBzZXR1cC5weWAKKworKiBpbnN0YWxsZXJzIGNhbiBvdmVycmlkZSBhbnl0aGluZyBpbiA6ZmlsZTpgc2V0dXAuY2ZnYCB1c2luZyB0aGUgY29tbWFuZC1saW5lCisgIG9wdGlvbnMgdG8gOmZpbGU6YHNldHVwLnB5YAorCitUaGUgYmFzaWMgc3ludGF4IG9mIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgaXMgc2ltcGxlOjoKKworICAgW2NvbW1hbmRdCisgICBvcHRpb24gPSB2YWx1ZQorICAgLi4uCisKK3doZXJlICpjb21tYW5kKiBpcyBvbmUgb2YgdGhlIERpc3R1dGlscyBjb21tYW5kcyAoZS5nLiA6Y29tbWFuZDpgYnVpbGRfcHlgLAorOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGApLCBhbmQgKm9wdGlvbiogaXMgb25lIG9mIHRoZSBvcHRpb25zIHRoYXQgY29tbWFuZCBzdXBwb3J0cy4KK0FueSBudW1iZXIgb2Ygb3B0aW9ucyBjYW4gYmUgc3VwcGxpZWQgZm9yIGVhY2ggY29tbWFuZCwgYW5kIGFueSBudW1iZXIgb2YKK2NvbW1hbmQgc2VjdGlvbnMgY2FuIGJlIGluY2x1ZGVkIGluIHRoZSBmaWxlLiAgQmxhbmsgbGluZXMgYXJlIGlnbm9yZWQsIGFzIGFyZQorY29tbWVudHMsIHdoaWNoIHJ1biBmcm9tIGEgYGAnIydgYCBjaGFyYWN0ZXIgdW50aWwgdGhlIGVuZCBvZiB0aGUgbGluZS4gIExvbmcKK29wdGlvbiB2YWx1ZXMgY2FuIGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBsaW5lcyBzaW1wbHkgYnkgaW5kZW50aW5nIHRoZQorY29udGludWF0aW9uIGxpbmVzLgorCitZb3UgY2FuIGZpbmQgb3V0IHRoZSBsaXN0IG9mIG9wdGlvbnMgc3VwcG9ydGVkIGJ5IGEgcGFydGljdWxhciBjb21tYW5kIHdpdGggdGhlCit1bml2ZXJzYWwgOm9wdGlvbjpgLS1oZWxwYCBvcHRpb24sIGUuZy4gOjoKKworICAgPiBweXRob24gc2V0dXAucHkgLS1oZWxwIGJ1aWxkX2V4dAorICAgWy4uLl0KKyAgIE9wdGlvbnMgZm9yICdidWlsZF9leHQnIGNvbW1hbmQ6CisgICAgIC0tYnVpbGQtbGliICgtYikgICAgIGRpcmVjdG9yeSBmb3IgY29tcGlsZWQgZXh0ZW5zaW9uIG1vZHVsZXMKKyAgICAgLS1idWlsZC10ZW1wICgtdCkgICAgZGlyZWN0b3J5IGZvciB0ZW1wb3JhcnkgZmlsZXMgKGJ1aWxkIGJ5LXByb2R1Y3RzKQorICAgICAtLWlucGxhY2UgKC1pKSAgICAgICBpZ25vcmUgYnVpbGQtbGliIGFuZCBwdXQgY29tcGlsZWQgZXh0ZW5zaW9ucyBpbnRvIHRoZQorICAgICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UgZGlyZWN0b3J5IGFsb25nc2lkZSB5b3VyIHB1cmUgUHl0aG9uIG1vZHVsZXMKKyAgICAgLS1pbmNsdWRlLWRpcnMgKC1JKSAgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIGhlYWRlciBmaWxlcworICAgICAtLWRlZmluZSAoLUQpICAgICAgICBDIHByZXByb2Nlc3NvciBtYWNyb3MgdG8gZGVmaW5lCisgICAgIC0tdW5kZWYgKC1VKSAgICAgICAgIEMgcHJlcHJvY2Vzc29yIG1hY3JvcyB0byB1bmRlZmluZQorICAgICAtLXN3aWctb3B0cyAgICAgICAgICBsaXN0IG9mIFNXSUcgY29tbWFuZC1saW5lIG9wdGlvbnMKKyAgIFsuLi5dCisKKy4uIFhYWCBkbyB3ZSB3YW50IHRvIHN1cHBvcnQgYGBzZXR1cC5weSAtLWhlbHAgbWV0YWRhdGFgYD8KKworTm90ZSB0aGF0IGFuIG9wdGlvbiBzcGVsbGVkIDpvcHRpb246YC0tZm9vLWJhcmAgb24gdGhlIGNvbW1hbmQgbGluZSAgaXMgc3BlbGxlZAorOm9wdGlvbjpgZm9vX2JhcmAgaW4gY29uZmlndXJhdGlvbiBmaWxlcy4KKworRm9yIGV4YW1wbGUsIHNheSB5b3Ugd2FudCB5b3VyIGV4dGVuc2lvbnMgdG8gYmUgYnVpbHQgImluLXBsYWNlIi0tLXRoYXQgaXMsIHlvdQoraGF2ZSBhbiBleHRlbnNpb24gOm1vZDpgcGtnLmV4dGAsIGFuZCB5b3Ugd2FudCB0aGUgY29tcGlsZWQgZXh0ZW5zaW9uIGZpbGUKKyg6ZmlsZTpgZXh0LnNvYCBvbiBVbml4LCBzYXkpIHRvIGJlIHB1dCBpbiB0aGUgc2FtZSBzb3VyY2UgZGlyZWN0b3J5IGFzIHlvdXIKK3B1cmUgUHl0aG9uIG1vZHVsZXMgOm1vZDpgcGtnLm1vZDFgIGFuZCA6bW9kOmBwa2cubW9kMmAuICBZb3UgY2FuIGFsd2F5cyB1c2UgdGhlCis6b3B0aW9uOmAtLWlucGxhY2VgIG9wdGlvbiBvbiB0aGUgY29tbWFuZCBsaW5lIHRvIGVuc3VyZSB0aGlzOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJ1aWxkX2V4dCAtLWlucGxhY2UKKworQnV0IHRoaXMgcmVxdWlyZXMgdGhhdCB5b3UgYWx3YXlzIHNwZWNpZnkgdGhlIDpjb21tYW5kOmBidWlsZF9leHRgIGNvbW1hbmQKK2V4cGxpY2l0bHksIGFuZCByZW1lbWJlciB0byBwcm92aWRlIDpvcHRpb246YC0taW5wbGFjZWAuIEFuIGVhc2llciB3YXkgaXMgdG8KKyJzZXQgYW5kIGZvcmdldCIgdGhpcyBvcHRpb24sIGJ5IGVuY29kaW5nIGl0IGluIDpmaWxlOmBzZXR1cC5jZmdgLCB0aGUKK2NvbmZpZ3VyYXRpb24gZmlsZSBmb3IgdGhpcyBkaXN0cmlidXRpb246OgorCisgICBbYnVpbGRfZXh0XQorICAgaW5wbGFjZSA9IDEKKworVGhpcyB3aWxsIGFmZmVjdCBhbGwgYnVpbGRzIG9mIHRoaXMgbW9kdWxlIGRpc3RyaWJ1dGlvbiwgd2hldGhlciBvciBub3QgeW91CitleHBsaWNpdGx5IHNwZWNpZnkgOmNvbW1hbmQ6YGJ1aWxkX2V4dGAuICBJZiB5b3UgaW5jbHVkZSA6ZmlsZTpgc2V0dXAuY2ZnYCBpbgoreW91ciBzb3VyY2UgZGlzdHJpYnV0aW9uLCBpdCB3aWxsIGFsc28gYWZmZWN0IGVuZC11c2VyIGJ1aWxkcy0tLXdoaWNoIGlzCitwcm9iYWJseSBhIGJhZCBpZGVhIGZvciB0aGlzIG9wdGlvbiwgc2luY2UgYWx3YXlzIGJ1aWxkaW5nIGV4dGVuc2lvbnMgaW4tcGxhY2UKK3dvdWxkIGJyZWFrIGluc3RhbGxhdGlvbiBvZiB0aGUgbW9kdWxlIGRpc3RyaWJ1dGlvbi4gIEluIGNlcnRhaW4gcGVjdWxpYXIgY2FzZXMsCit0aG91Z2gsIG1vZHVsZXMgYXJlIGJ1aWx0IHJpZ2h0IGluIHRoZWlyIGluc3RhbGxhdGlvbiBkaXJlY3RvcnksIHNvIHRoaXMgaXMKK2NvbmNlaXZhYmx5IGEgdXNlZnVsIGFiaWxpdHkuICAoRGlzdHJpYnV0aW5nIGV4dGVuc2lvbnMgdGhhdCBleHBlY3QgdG8gYmUgYnVpbHQKK2luIHRoZWlyIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkgaXMgYWxtb3N0IGFsd2F5cyBhIGJhZCBpZGVhLCB0aG91Z2guKQorCitBbm90aGVyIGV4YW1wbGU6IGNlcnRhaW4gY29tbWFuZHMgdGFrZSBvcHRpb25zIHRoYXQgdmFyeSBmcm9tIHByb2plY3QgdG8KK3Byb2plY3QgYnV0IG5vdCBkZXBlbmRpbmcgb24gdGhlIGluc3RhbGxhdGlvbiBzeXN0ZW0sIGZvciBleGFtcGxlLAorOmNvbW1hbmQ6YHRlc3RgIG5lZWRzIHRvIGtub3cgd2hlcmUgeW91ciB0ZXN0IHN1aXRlIGlzIGxvY2F0ZWQgYW5kIHdoYXQgdGVzdAorcnVubmVyIHRvIHVzZTsgbGlrZXdpc2UsIDpjb21tYW5kOmB1cGxvYWRfZG9jc2AgY2FuIGZpbmQgSFRNTCBkb2N1bWVudGF0aW9uIGluCithIDpmaWxlOmBkb2NgIG9yIDpmaWxlOmBkb2NzYCBkaXJlY3RvcnksIGJ1dCBuZWVkcyBhbiBvcHRpb24gdG8gZmluZCBmaWxlcyBpbgorOmZpbGU6YGRvY3MvYnVpbGQvaHRtbGAuICBJbnN0ZWFkIG9mIGhhdmluZyB0byB0eXBlIG91dCB0aGVzZSBvcHRpb25zIGVhY2gKK3RpbWUgeW91IHdhbnQgdG8gcnVuIHRoZSBjb21tYW5kLCB5b3UgY2FuIHB1dCB0aGVtIGluIHRoZSBwcm9qZWN0J3MKKzpmaWxlOmBzZXR1cC5jZmdgOjoKKworICAgW3Rlc3RdCisgICBzdWl0ZSA9IHBhY2thZ2luZy50ZXN0cworCisgICBbdXBsb2FkX2RvY3NdCisgICB1cGxvYWQtZGlyID0gZG9jcy9idWlsZC9odG1sCisKKworLi4gc2VlYWxzbzo6CisKKyAgIDpyZWY6YHBhY2thZ2luZy1jb25maWctc3ludGF4YCBpbiAiSW5zdGFsbGluZyBQeXRob24gUHJvamVjdHMiCisgICAgICBNb3JlIGluZm9ybWF0aW9uIG9uIHRoZSBjb25maWd1cmF0aW9uIGZpbGVzIGlzIGF2YWlsYWJsZSBpbiB0aGUgbWFudWFsIGZvcgorICAgICAgc3lzdGVtIGFkbWluaXN0cmF0b3JzLgorCisKKy4uIHJ1YnJpYzo6IEZvb3Rub3RlcworCisuLiBbI10gVGhpcyBpZGVhbCBwcm9iYWJseSB3b24ndCBiZSBhY2hpZXZlZCB1bnRpbCBhdXRvLWNvbmZpZ3VyYXRpb24gaXMgZnVsbHkKKyAgIHN1cHBvcnRlZCBieSB0aGUgRGlzdHV0aWxzLgpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9leGFtcGxlcy5yc3QgYi9Eb2MvcGFja2FnaW5nL2V4YW1wbGVzLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41OTRhZGUwCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9leGFtcGxlcy5yc3QKQEAgLTAsMCArMSwzMzQgQEAKKy4uIF9wYWNrYWdpbmctZXhhbXBsZXM6CisKKyoqKioqKioqCitFeGFtcGxlcworKioqKioqKioKKworVGhpcyBjaGFwdGVyIHByb3ZpZGVzIGEgbnVtYmVyIG9mIGJhc2ljIGV4YW1wbGVzIHRvIGhlbHAgZ2V0IHN0YXJ0ZWQgd2l0aAorUGFja2FnaW5nLgorCisKKy4uIF9wYWNrYWdpbmctcHVyZS1tb2Q6CisKK1B1cmUgUHl0aG9uIGRpc3RyaWJ1dGlvbiAoYnkgbW9kdWxlKQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0lmIHlvdSdyZSBqdXN0IGRpc3RyaWJ1dGluZyBhIGNvdXBsZSBvZiBtb2R1bGVzLCBlc3BlY2lhbGx5IGlmIHRoZXkgZG9uJ3QgbGl2ZQoraW4gYSBwYXJ0aWN1bGFyIHBhY2thZ2UsIHlvdSBjYW4gc3BlY2lmeSB0aGVtIGluZGl2aWR1YWxseSB1c2luZyB0aGUKKzpvcHRpb246YHB5X21vZHVsZXNgIG9wdGlvbiBpbiB0aGUgc2V0dXAgc2NyaXB0LgorCitJbiB0aGUgc2ltcGxlc3QgY2FzZSwgeW91J2xsIGhhdmUgdHdvIGZpbGVzIHRvIHdvcnJ5IGFib3V0OiBhIHNldHVwIHNjcmlwdCBhbmQKK3RoZSBzaW5nbGUgbW9kdWxlIHlvdSdyZSBkaXN0cmlidXRpbmcsIDpmaWxlOmBmb28ucHlgIGluIHRoaXMgZXhhbXBsZTo6CisKKyAgIDxyb290Pi8KKyAgICAgICAgICBzZXR1cC5weQorICAgICAgICAgIGZvby5weQorCisoSW4gYWxsIGRpYWdyYW1zIGluIHRoaXMgc2VjdGlvbiwgKjxyb290Piogd2lsbCByZWZlciB0byB0aGUgZGlzdHJpYnV0aW9uIHJvb3QKK2RpcmVjdG9yeS4pICBBIG1pbmltYWwgc2V0dXAgc2NyaXB0IHRvIGRlc2NyaWJlIHRoaXMgc2l0dWF0aW9uIHdvdWxkIGJlOjoKKworICAgZnJvbSBwYWNrYWdpbmcuY29yZSBpbXBvcnQgc2V0dXAKKyAgIHNldHVwKG5hbWU9J2ZvbycsCisgICAgICAgICB2ZXJzaW9uPScxLjAnLAorICAgICAgICAgcHlfbW9kdWxlcz1bJ2ZvbyddKQorCitOb3RlIHRoYXQgdGhlIG5hbWUgb2YgdGhlIGRpc3RyaWJ1dGlvbiBpcyBzcGVjaWZpZWQgaW5kZXBlbmRlbnRseSB3aXRoIHRoZQorOm9wdGlvbjpgbmFtZWAgb3B0aW9uLCBhbmQgdGhlcmUncyBubyBydWxlIHRoYXQgc2F5cyBpdCBoYXMgdG8gYmUgdGhlIHNhbWUgYXMKK3RoZSBuYW1lIG9mIHRoZSBzb2xlIG1vZHVsZSBpbiB0aGUgZGlzdHJpYnV0aW9uIChhbHRob3VnaCB0aGF0J3MgcHJvYmFibHkgYSBnb29kCitjb252ZW50aW9uIHRvIGZvbGxvdykuICBIb3dldmVyLCB0aGUgZGlzdHJpYnV0aW9uIG5hbWUgaXMgdXNlZCB0byBnZW5lcmF0ZQorZmlsZW5hbWVzLCBzbyB5b3Ugc2hvdWxkIHN0aWNrIHRvIGxldHRlcnMsIGRpZ2l0cywgdW5kZXJzY29yZXMsIGFuZCBoeXBoZW5zLgorCitTaW5jZSA6b3B0aW9uOmBweV9tb2R1bGVzYCBpcyBhIGxpc3QsIHlvdSBjYW4gb2YgY291cnNlIHNwZWNpZnkgbXVsdGlwbGUKK21vZHVsZXMsIGUuZy4gaWYgeW91J3JlIGRpc3RyaWJ1dGluZyBtb2R1bGVzIDptb2Q6YGZvb2AgYW5kIDptb2Q6YGJhcmAsIHlvdXIKK3NldHVwIG1pZ2h0IGxvb2sgbGlrZSB0aGlzOjoKKworICAgPHJvb3Q+LworICAgICAgICAgIHNldHVwLnB5CisgICAgICAgICAgZm9vLnB5CisgICAgICAgICAgYmFyLnB5CisKK2FuZCB0aGUgc2V0dXAgc2NyaXB0IG1pZ2h0IGJlICA6OgorCisgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgIHZlcnNpb249JzEuMCcsCisgICAgICAgICBweV9tb2R1bGVzPVsnZm9vJywgJ2JhciddKQorCitZb3UgY2FuIHB1dCBtb2R1bGUgc291cmNlIGZpbGVzIGludG8gYW5vdGhlciBkaXJlY3RvcnksIGJ1dCBpZiB5b3UgaGF2ZSBlbm91Z2gKK21vZHVsZXMgdG8gZG8gdGhhdCwgaXQncyBwcm9iYWJseSBlYXNpZXIgdG8gc3BlY2lmeSBtb2R1bGVzIGJ5IHBhY2thZ2UgcmF0aGVyCit0aGFuIGxpc3RpbmcgdGhlbSBpbmRpdmlkdWFsbHkuCisKKworLi4gX3BhY2thZ2luZy1wdXJlLXBrZzoKKworUHVyZSBQeXRob24gZGlzdHJpYnV0aW9uIChieSBwYWNrYWdlKQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitJZiB5b3UgaGF2ZSBtb3JlIHRoYW4gYSBjb3VwbGUgb2YgbW9kdWxlcyB0byBkaXN0cmlidXRlLCBlc3BlY2lhbGx5IGlmIHRoZXkgYXJlCitpbiBtdWx0aXBsZSBwYWNrYWdlcywgaXQncyBwcm9iYWJseSBlYXNpZXIgdG8gc3BlY2lmeSB3aG9sZSBwYWNrYWdlcyByYXRoZXIgdGhhbgoraW5kaXZpZHVhbCBtb2R1bGVzLiAgVGhpcyB3b3JrcyBldmVuIGlmIHlvdXIgbW9kdWxlcyBhcmUgbm90IGluIGEgcGFja2FnZTsgeW91CitjYW4ganVzdCB0ZWxsIHRoZSBEaXN0dXRpbHMgdG8gcHJvY2VzcyBtb2R1bGVzIGZyb20gdGhlIHJvb3QgcGFja2FnZSwgYW5kIHRoYXQKK3dvcmtzIHRoZSBzYW1lIGFzIGFueSBvdGhlciBwYWNrYWdlIChleGNlcHQgdGhhdCB5b3UgZG9uJ3QgaGF2ZSB0byBoYXZlIGFuCis6ZmlsZTpgX19pbml0X18ucHlgIGZpbGUpLgorCitUaGUgc2V0dXAgc2NyaXB0IGZyb20gdGhlIGxhc3QgZXhhbXBsZSBjb3VsZCBhbHNvIGJlIHdyaXR0ZW4gYXMgIDo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwCisgICBzZXR1cChuYW1lPSdmb29iYXInLAorICAgICAgICAgdmVyc2lvbj0nMS4wJywKKyAgICAgICAgIHBhY2thZ2VzPVsnJ10pCisKKyhUaGUgZW1wdHkgc3RyaW5nIHN0YW5kcyBmb3IgdGhlIHJvb3QgcGFja2FnZS4pCisKK0lmIHRob3NlIHR3byBmaWxlcyBhcmUgbW92ZWQgaW50byBhIHN1YmRpcmVjdG9yeSwgYnV0IHJlbWFpbiBpbiB0aGUgcm9vdAorcGFja2FnZSwgZS5nLjo6CisKKyAgIDxyb290Pi8KKyAgICAgICAgICBzZXR1cC5weQorICAgICAgICAgIHNyYy8KKyAgICAgICAgICAgICAgZm9vLnB5CisgICAgICAgICAgICAgIGJhci5weQorCit0aGVuIHlvdSB3b3VsZCBzdGlsbCBzcGVjaWZ5IHRoZSByb290IHBhY2thZ2UsIGJ1dCB5b3UgaGF2ZSB0byB0ZWxsIHRoZQorRGlzdHV0aWxzIHdoZXJlIHNvdXJjZSBmaWxlcyBpbiB0aGUgcm9vdCBwYWNrYWdlIGxpdmU6OgorCisgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgIHZlcnNpb249JzEuMCcsCisgICAgICAgICBwYWNrYWdlX2Rpcj17Jyc6ICdzcmMnfSwKKyAgICAgICAgIHBhY2thZ2VzPVsnJ10pCisKK01vcmUgdHlwaWNhbGx5LCB0aG91Z2gsIHlvdSB3aWxsIHdhbnQgdG8gZGlzdHJpYnV0ZSBtdWx0aXBsZSBtb2R1bGVzIGluIHRoZSBzYW1lCitwYWNrYWdlIChvciBpbiBzdWItcGFja2FnZXMpLiAgRm9yIGV4YW1wbGUsIGlmIHRoZSA6bW9kOmBmb29gICBhbmQgOm1vZDpgYmFyYAorbW9kdWxlcyBiZWxvbmcgaW4gcGFja2FnZSA6bW9kOmBmb29iYXJgLCBvbmUgd2F5IHRvIGxheSBvdXQgeW91ciBzb3VyY2UgdHJlZSBpcworCis6OgorCisgICA8cm9vdD4vCisgICAgICAgICAgc2V0dXAucHkKKyAgICAgICAgICBmb29iYXIvCisgICAgICAgICAgICAgICAgIF9faW5pdF9fLnB5CisgICAgICAgICAgICAgICAgIGZvby5weQorICAgICAgICAgICAgICAgICBiYXIucHkKKworVGhpcyBpcyBpbiBmYWN0IHRoZSBkZWZhdWx0IGxheW91dCBleHBlY3RlZCBieSB0aGUgRGlzdHV0aWxzLCBhbmQgdGhlIG9uZSB0aGF0CityZXF1aXJlcyB0aGUgbGVhc3Qgd29yayB0byBkZXNjcmliZSBpbiB5b3VyIHNldHVwIHNjcmlwdDo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwCisgICBzZXR1cChuYW1lPSdmb29iYXInLAorICAgICAgICAgdmVyc2lvbj0nMS4wJywKKyAgICAgICAgIHBhY2thZ2VzPVsnZm9vYmFyJ10pCisKK0lmIHlvdSB3YW50IHRvIHB1dCBtb2R1bGVzIGluIGRpcmVjdG9yaWVzIG5vdCBuYW1lZCBmb3IgdGhlaXIgcGFja2FnZSwgdGhlbiB5b3UKK25lZWQgdG8gdXNlIHRoZSA6b3B0aW9uOmBwYWNrYWdlX2RpcmAgb3B0aW9uIGFnYWluLiAgRm9yIGV4YW1wbGUsIGlmIHRoZQorOmZpbGU6YHNyY2AgZGlyZWN0b3J5IGhvbGRzIG1vZHVsZXMgaW4gdGhlIDptb2Q6YGZvb2JhcmAgcGFja2FnZTo6CisKKyAgIDxyb290Pi8KKyAgICAgICAgICBzZXR1cC5weQorICAgICAgICAgIHNyYy8KKyAgICAgICAgICAgICAgX19pbml0X18ucHkKKyAgICAgICAgICAgICAgZm9vLnB5CisgICAgICAgICAgICAgIGJhci5weQorCithbiBhcHByb3ByaWF0ZSBzZXR1cCBzY3JpcHQgd291bGQgYmUgIDo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwCisgICBzZXR1cChuYW1lPSdmb29iYXInLAorICAgICAgICAgdmVyc2lvbj0nMS4wJywKKyAgICAgICAgIHBhY2thZ2VfZGlyPXsnZm9vYmFyJzogJ3NyYyd9LAorICAgICAgICAgcGFja2FnZXM9Wydmb29iYXInXSkKKworT3IsIHlvdSBtaWdodCBwdXQgbW9kdWxlcyBmcm9tIHlvdXIgbWFpbiBwYWNrYWdlIHJpZ2h0IGluIHRoZSBkaXN0cmlidXRpb24KK3Jvb3Q6OgorCisgICA8cm9vdD4vCisgICAgICAgICAgc2V0dXAucHkKKyAgICAgICAgICBfX2luaXRfXy5weQorICAgICAgICAgIGZvby5weQorICAgICAgICAgIGJhci5weQorCitpbiB3aGljaCBjYXNlIHlvdXIgc2V0dXAgc2NyaXB0IHdvdWxkIGJlICA6OgorCisgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgIHZlcnNpb249JzEuMCcsCisgICAgICAgICBwYWNrYWdlX2Rpcj17J2Zvb2Jhcic6ICcnfSwKKyAgICAgICAgIHBhY2thZ2VzPVsnZm9vYmFyJ10pCisKKyhUaGUgZW1wdHkgc3RyaW5nIGFsc28gc3RhbmRzIGZvciB0aGUgY3VycmVudCBkaXJlY3RvcnkuKQorCitJZiB5b3UgaGF2ZSBzdWItcGFja2FnZXMsIHRoZXkgbXVzdCBiZSBleHBsaWNpdGx5IGxpc3RlZCBpbiA6b3B0aW9uOmBwYWNrYWdlc2AsCitidXQgYW55IGVudHJpZXMgaW4gOm9wdGlvbjpgcGFja2FnZV9kaXJgIGF1dG9tYXRpY2FsbHkgZXh0ZW5kIHRvIHN1Yi1wYWNrYWdlcy4KKyhJbiBvdGhlciB3b3JkcywgdGhlIERpc3R1dGlscyBkb2VzICpub3QqIHNjYW4geW91ciBzb3VyY2UgdHJlZSwgdHJ5aW5nIHRvCitmaWd1cmUgb3V0IHdoaWNoIGRpcmVjdG9yaWVzIGNvcnJlc3BvbmQgdG8gUHl0aG9uIHBhY2thZ2VzIGJ5IGxvb2tpbmcgZm9yCis6ZmlsZTpgX19pbml0X18ucHlgIGZpbGVzLikgIFRodXMsIGlmIHRoZSBkZWZhdWx0IGxheW91dCBncm93cyBhIHN1Yi1wYWNrYWdlOjoKKworICAgPHJvb3Q+LworICAgICAgICAgIHNldHVwLnB5CisgICAgICAgICAgZm9vYmFyLworICAgICAgICAgICAgICAgICBfX2luaXRfXy5weQorICAgICAgICAgICAgICAgICBmb28ucHkKKyAgICAgICAgICAgICAgICAgYmFyLnB5CisgICAgICAgICAgICAgICAgIHN1YmZvby8KKyAgICAgICAgICAgICAgICAgICAgICAgIF9faW5pdF9fLnB5CisgICAgICAgICAgICAgICAgICAgICAgICBibGFoLnB5CisKK3RoZW4gdGhlIGNvcnJlc3BvbmRpbmcgc2V0dXAgc2NyaXB0IHdvdWxkIGJlICA6OgorCisgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgIHZlcnNpb249JzEuMCcsCisgICAgICAgICBwYWNrYWdlcz1bJ2Zvb2JhcicsICdmb29iYXIuc3ViZm9vJ10pCisKKyhBZ2FpbiwgdGhlIGVtcHR5IHN0cmluZyBpbiA6b3B0aW9uOmBwYWNrYWdlX2RpcmAgc3RhbmRzIGZvciB0aGUgY3VycmVudAorZGlyZWN0b3J5LikKKworCisuLiBfcGFja2FnaW5nLXNpbmdsZS1leHQ6CisKK1NpbmdsZSBleHRlbnNpb24gbW9kdWxlCis9PT09PT09PT09PT09PT09PT09PT09PQorCitFeHRlbnNpb24gbW9kdWxlcyBhcmUgc3BlY2lmaWVkIHVzaW5nIHRoZSA6b3B0aW9uOmBleHRfbW9kdWxlc2Agb3B0aW9uLgorOm9wdGlvbjpgcGFja2FnZV9kaXJgIGhhcyBubyBlZmZlY3Qgb24gd2hlcmUgZXh0ZW5zaW9uIHNvdXJjZSBmaWxlcyBhcmUgZm91bmQ7CitpdCBvbmx5IGFmZmVjdHMgdGhlIHNvdXJjZSBmb3IgcHVyZSBQeXRob24gbW9kdWxlcy4gIFRoZSBzaW1wbGVzdCAgY2FzZSwgYQorc2luZ2xlIGV4dGVuc2lvbiBtb2R1bGUgaW4gYSBzaW5nbGUgQyBzb3VyY2UgZmlsZSwgaXM6OgorCisgICA8cm9vdD4vCisgICAgICAgICAgc2V0dXAucHkKKyAgICAgICAgICBmb28uYworCitJZiB0aGUgOm1vZDpgZm9vYCBleHRlbnNpb24gYmVsb25ncyBpbiB0aGUgcm9vdCBwYWNrYWdlLCB0aGUgc2V0dXAgc2NyaXB0IGZvcgordGhpcyBjb3VsZCBiZSAgOjoKKworICAgZnJvbSBwYWNrYWdpbmcuY29yZSBpbXBvcnQgc2V0dXAsIEV4dGVuc2lvbgorICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgIHZlcnNpb249JzEuMCcsCisgICAgICAgICBleHRfbW9kdWxlcz1bRXh0ZW5zaW9uKCdmb28nLCBbJ2Zvby5jJ10pXSkKKworSWYgdGhlIGV4dGVuc2lvbiBhY3R1YWxseSBiZWxvbmdzIGluIGEgcGFja2FnZSwgc2F5IDptb2Q6YGZvb3BrZ2AsIHRoZW4KKworV2l0aCBleGFjdGx5IHRoZSBzYW1lIHNvdXJjZSB0cmVlIGxheW91dCwgdGhpcyBleHRlbnNpb24gY2FuIGJlIHB1dCBpbiB0aGUKKzptb2Q6YGZvb3BrZ2AgcGFja2FnZSBzaW1wbHkgYnkgY2hhbmdpbmcgdGhlIG5hbWUgb2YgdGhlIGV4dGVuc2lvbjo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwLCBFeHRlbnNpb24KKyAgIHNldHVwKG5hbWU9J2Zvb2JhcicsCisgICAgICAgICB2ZXJzaW9uPScxLjAnLAorICAgICAgICAgcGFja2FnZXM9Wydmb29wa2cnXSwKKyAgICAgICAgIGV4dF9tb2R1bGVzPVtFeHRlbnNpb24oJ2Zvb3BrZy5mb28nLCBbJ2Zvby5jJ10pXSkKKworCitDaGVja2luZyBtZXRhZGF0YQorPT09PT09PT09PT09PT09PT0KKworVGhlIGBgY2hlY2tgYCBjb21tYW5kIGFsbG93cyB5b3UgdG8gdmVyaWZ5IGlmIHlvdXIgcHJvamVjdCdzIG1ldGFkYXRhCittZWV0cyB0aGUgbWluaW11bSByZXF1aXJlbWVudHMgdG8gYnVpbGQgYSBkaXN0cmlidXRpb24uCisKK1RvIHJ1biBpdCwganVzdCBjYWxsIGl0IHVzaW5nIHlvdXIgOmZpbGU6YHNldHVwLnB5YCBzY3JpcHQuIElmIHNvbWV0aGluZyBpcworbWlzc2luZywgYGBjaGVja2BgIHdpbGwgZGlzcGxheSBhIHdhcm5pbmcuCisKK0xldCdzIHRha2UgYW4gZXhhbXBsZSB3aXRoIGEgc2ltcGxlIHNjcmlwdDo6CisKKyAgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorCisgICAgc2V0dXAobmFtZT0nZm9vYmFyJykKKworLi4gVE9ETyBjb25maWd1cmUgbG9nZ2luZyBTdHJlYW1IYW5kbGVyIHRvIG1hdGNoIHRoaXMgb3V0cHV0CisKK1J1bm5pbmcgdGhlIGBgY2hlY2tgYCBjb21tYW5kIHdpbGwgZGlzcGxheSBzb21lIHdhcm5pbmdzOjoKKworICAgICQgcHl0aG9uIHNldHVwLnB5IGNoZWNrCisgICAgcnVubmluZyBjaGVjaworICAgIHdhcm5pbmc6IGNoZWNrOiBtaXNzaW5nIHJlcXVpcmVkIG1ldGFkYXRhOiB2ZXJzaW9uLCBob21lX3BhZ2UKKyAgICB3YXJuaW5nOiBjaGVjazogbWlzc2luZyBtZXRhZGF0YTogZWl0aGVyIChhdXRob3IgYW5kIGF1dGhvcl9lbWFpbCkgb3IKKyAgICAgICAgICAgICAobWFpbnRhaW5lciBhbmQgbWFpbnRhaW5lcl9lbWFpbCkgbXVzdCBiZSBzdXBwbGllZAorCisKK0lmIHlvdSB1c2UgdGhlIHJlU3RydWN0dXJlZFRleHQgc3ludGF4IGluIHRoZSBgYGxvbmdfZGVzY3JpcHRpb25gYCBmaWVsZCBhbmQKK2BEb2N1dGlscyA8aHR0cDovL2RvY3V0aWxzLnNvdXJjZWZvcmdlLm5ldC8+YF8gaXMgaW5zdGFsbGVkIHlvdSBjYW4gY2hlY2sgaWYKK3RoZSBzeW50YXggaXMgZmluZSB3aXRoIHRoZSBgYGNoZWNrYGAgY29tbWFuZCwgdXNpbmcgdGhlIGBgcmVzdHJ1Y3R1cmVkdGV4dGBgCitvcHRpb24uCisKK0ZvciBleGFtcGxlLCBpZiB0aGUgOmZpbGU6YHNldHVwLnB5YCBzY3JpcHQgaXMgY2hhbmdlZCBsaWtlIHRoaXM6OgorCisgICAgZnJvbSBwYWNrYWdpbmcuY29yZSBpbXBvcnQgc2V0dXAKKworICAgIGRlc2MgPSAiIiJcCisgICAgV2VsY29tZSB0byBmb29iYXIhCisgICAgPT09PT09PT09PT09PT09CisKKyAgICBUaGlzIGlzIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgYGBmb29iYXJgYCBwcm9qZWN0LgorICAgICIiIgorCisgICAgc2V0dXAobmFtZT0nZm9vYmFyJywKKyAgICAgICAgICB2ZXJzaW9uPScxLjAnLAorICAgICAgICAgIGF1dGhvcj11J1RhcmVrIFppYWTDqScsCisgICAgICAgICAgYXV0aG9yX2VtYWlsPSd0YXJla0B6aWFkZS5vcmcnLAorICAgICAgICAgIHN1bW1hcnk9J0Zvb2JhciB1dGlsaXRpZXMnCisgICAgICAgICAgZGVzY3JpcHRpb249ZGVzYywKKyAgICAgICAgICBob21lX3BhZ2U9J2h0dHA6Ly9leGFtcGxlLmNvbScpCisKK1doZXJlIHRoZSBsb25nIGRlc2NyaXB0aW9uIGlzIGJyb2tlbiwgYGBjaGVja2BgIHdpbGwgYmUgYWJsZSB0byBkZXRlY3QgaXQKK2J5IHVzaW5nIHRoZSA6bW9kOmBkb2N1dGlsc2AgcGFyc2VyOjoKKworICAgICQgcHl0aG9uIHNldHVwLnB5IGNoZWNrIC0tcmVzdHJ1Y3R1cmVkdGV4dAorICAgIHJ1bm5pbmcgY2hlY2sKKyAgICB3YXJuaW5nOiBjaGVjazogVGl0bGUgdW5kZXJsaW5lIHRvbyBzaG9ydC4gKGxpbmUgMikKKyAgICB3YXJuaW5nOiBjaGVjazogQ291bGQgbm90IGZpbmlzaCB0aGUgcGFyc2luZy4KKworCisuLiBfcGFja2FnaW5nLXJlYWRpbmctbWV0YWRhdGE6CisKK1JlYWRpbmcgdGhlIG1ldGFkYXRhCis9PT09PT09PT09PT09PT09PT09PQorCitUaGUgOmZ1bmM6YHBhY2thZ2luZy5jb3JlLnNldHVwYCBmdW5jdGlvbiBwcm92aWRlcyBhIGNvbW1hbmQtbGluZSBpbnRlcmZhY2UKK3RoYXQgYWxsb3dzIHlvdSB0byBxdWVyeSB0aGUgbWV0YWRhdGEgZmllbGRzIG9mIGEgcHJvamVjdCB0aHJvdWdoIHRoZQorOmZpbGU6YHNldHVwLnB5YCBzY3JpcHQgb2YgYSBnaXZlbiBwcm9qZWN0OjoKKworICAgICQgcHl0aG9uIHNldHVwLnB5IC0tbmFtZQorICAgIGZvb2JhcgorCitUaGlzIGNhbGwgcmVhZHMgdGhlIGBgbmFtZWBgIG1ldGFkYXRhIGJ5IHJ1bm5pbmcgdGhlCis6ZnVuYzpgcGFja2FnaW5nLmNvcmUuc2V0dXBgICBmdW5jdGlvbi4gV2hlbiBhIHNvdXJjZSBvciBiaW5hcnkKK2Rpc3RyaWJ1dGlvbiBpcyBjcmVhdGVkIHdpdGggRGlzdHV0aWxzLCB0aGUgbWV0YWRhdGEgZmllbGRzIGFyZSB3cml0dGVuCitpbiBhIHN0YXRpYyBmaWxlIGNhbGxlZCA6ZmlsZTpgUEtHLUlORk9gLiBXaGVuIGEgRGlzdHV0aWxzLWJhc2VkIHByb2plY3QgaXMKK2luc3RhbGxlZCBpbiBQeXRob24sIHRoZSA6ZmlsZTpgUEtHLUlORk9gIGZpbGUgaXMgY29waWVkIGFsb25nc2lkZSB0aGUgbW9kdWxlcworYW5kIHBhY2thZ2VzIG9mIHRoZSBkaXN0cmlidXRpb24gdW5kZXIgOmZpbGU6YE5BTUUtVkVSU0lPTi1weVguWC5lZ2ctaW5mb2AsCit3aGVyZSBgYE5BTUVgYCBpcyB0aGUgbmFtZSBvZiB0aGUgcHJvamVjdCwgYGBWRVJTSU9OYGAgaXRzIHZlcnNpb24gYXMgZGVmaW5lZAoraW4gdGhlIE1ldGFkYXRhLCBhbmQgYGBweVguWGBgIHRoZSBtYWpvciBhbmQgbWlub3IgdmVyc2lvbiBvZiBQeXRob24gbGlrZQorYGAyLjdgYCBvciBgYDMuMmBgLgorCitZb3UgY2FuIHJlYWQgYmFjayB0aGlzIHN0YXRpYyBmaWxlLCBieSB1c2luZyB0aGUKKzpjbGFzczpgcGFja2FnaW5nLmRpc3QuTWV0YWRhdGFgIGNsYXNzIGFuZCBpdHMKKzpmdW5jOmByZWFkX3BrZ19maWxlYCBtZXRob2Q6OgorCisgICAgPj4+IGZyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YQorICAgID4+PiBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICA+Pj4gbWV0YWRhdGEucmVhZF9wa2dfZmlsZShvcGVuKCdkaXN0cmlidXRlLTAuNi44LXB5Mi43LmVnZy1pbmZvJykpCisgICAgPj4+IG1ldGFkYXRhLm5hbWUKKyAgICAnZGlzdHJpYnV0ZScKKyAgICA+Pj4gbWV0YWRhdGEudmVyc2lvbgorICAgICcwLjYuOCcKKyAgICA+Pj4gbWV0YWRhdGEuZGVzY3JpcHRpb24KKyAgICAnRWFzaWx5IGRvd25sb2FkLCBidWlsZCwgaW5zdGFsbCwgdXBncmFkZSwgYW5kIHVuaW5zdGFsbCBQeXRob24gcGFja2FnZXMnCisKK05vdGljZSB0aGF0IHRoZSBjbGFzcyBjYW4gYWxzbyBiZSBpbnN0YW50aWF0ZWQgd2l0aCBhIG1ldGFkYXRhIGZpbGUgcGF0aCB0bworbG9hZHMgaXRzIHZhbHVlczo6CisKKyAgICA+Pj4gcGtnX2luZm9fcGF0aCA9ICdkaXN0cmlidXRlLTAuNi44LXB5Mi43LmVnZy1pbmZvJworICAgID4+PiBNZXRhZGF0YShwa2dfaW5mb19wYXRoKS5uYW1lCisgICAgJ2Rpc3RyaWJ1dGUnCisKKworLi4gWFhYIFRoZXNlIGNvbW1lbnRzIGhhdmUgYmVlbiBoZXJlIGZvciBhdCBsZWFzdCB0ZW4geWVhcnMuIFdyaXRlIHRoZQorICAgICAgIHNlY3Rpb25zIG9yIGRlbGV0ZSB0aGUgY29tbWVudHMgKHdlIGNhbiBtYXliZSBhc2sgR3JlZyBXYXJkIGFib3V0CisgICAgICAgdGhlIHBsYW5uZWQgY29udGVudHMpLiAoVW5pbmRlbnQgdG8gbWFrZSB0aGVtIHNlY3Rpb24gdGl0bGVzKQorCisgICAgLi4gbXVsdGlwbGUtZXh0OjoKKworICAgICAgIE11bHRpcGxlIGV4dGVuc2lvbiBtb2R1bGVzCisgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT0KKworICAgICAgIFB1dHRpbmcgaXQgYWxsIHRvZ2V0aGVyCisgICAgICAgPT09PT09PT09PT09PT09PT09PT09PT0KZGlmZiAtLWdpdCBhL0RvYy9wYWNrYWdpbmcvZXh0ZW5kaW5nLnJzdCBiL0RvYy9wYWNrYWdpbmcvZXh0ZW5kaW5nLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMmQzODYzCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9leHRlbmRpbmcucnN0CkBAIC0wLDAgKzEsOTUgQEAKKy4uIF9leHRlbmRpbmctcGFja2FnaW5nOgorCisqKioqKioqKioqKioqKioqKioqCitFeHRlbmRpbmcgRGlzdHV0aWxzCisqKioqKioqKioqKioqKioqKioqCisKK0Rpc3R1dGlscyBjYW4gYmUgZXh0ZW5kZWQgaW4gdmFyaW91cyB3YXlzLiAgTW9zdCBleHRlbnNpb25zIHRha2UgdGhlIGZvcm0gb2YgbmV3Citjb21tYW5kcyBvciByZXBsYWNlbWVudHMgZm9yIGV4aXN0aW5nIGNvbW1hbmRzLiAgTmV3IGNvbW1hbmRzIG1heSBiZSB3cml0dGVuIHRvCitzdXBwb3J0IG5ldyB0eXBlcyBvZiBwbGF0Zm9ybS1zcGVjaWZpYyBwYWNrYWdpbmcsIGZvciBleGFtcGxlLCB3aGlsZQorcmVwbGFjZW1lbnRzIGZvciBleGlzdGluZyBjb21tYW5kcyBtYXkgYmUgbWFkZSB0byBtb2RpZnkgZGV0YWlscyBvZiBob3cgdGhlCitjb21tYW5kIG9wZXJhdGVzIG9uIGEgcGFja2FnZS4KKworTW9zdCBleHRlbnNpb25zIG9mIHRoZSBwYWNrYWdpbmcgYXJlIG1hZGUgd2l0aGluIDpmaWxlOmBzZXR1cC5weWAgc2NyaXB0cyB0aGF0Cit3YW50IHRvIG1vZGlmeSBleGlzdGluZyBjb21tYW5kczsgbWFueSBzaW1wbHkgYWRkIGEgZmV3IGZpbGUgZXh0ZW5zaW9ucyB0aGF0CitzaG91bGQgYmUgY29waWVkIGludG8gcGFja2FnZXMgaW4gYWRkaXRpb24gdG8gOmZpbGU6YC5weWAgZmlsZXMgYXMgYQorY29udmVuaWVuY2UuCisKK01vc3QgcGFja2FnaW5nIGNvbW1hbmQgaW1wbGVtZW50YXRpb25zIGFyZSBzdWJjbGFzc2VzIG9mIHRoZQorOmNsYXNzOmBwYWNrYWdpbmcuY21kLkNvbW1hbmRgIGNsYXNzLiAgTmV3IGNvbW1hbmRzIG1heSBkaXJlY3RseSBpbmhlcml0IGZyb20KKzpjbGFzczpgQ29tbWFuZGAsIHdoaWxlIHJlcGxhY2VtZW50cyBvZnRlbiBkZXJpdmUgZnJvbSA6Y2xhc3M6YENvbW1hbmRgCitpbmRpcmVjdGx5LCBkaXJlY3RseSBzdWJjbGFzc2luZyB0aGUgY29tbWFuZCB0aGV5IGFyZSByZXBsYWNpbmcuICBDb21tYW5kcyBhcmUKK3JlcXVpcmVkIHRvIGRlcml2ZSBmcm9tIDpjbGFzczpgQ29tbWFuZGAuCisKKy4uIC4uIF9leHRlbmQtZXhpc3Rpbmc6CisgICAgICBFeHRlbmRpbmcgZXhpc3RpbmcgY29tbWFuZHMKKyAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisKKy4uIC4uIF9uZXctY29tbWFuZHM6CisgICAgICBXcml0aW5nIG5ldyBjb21tYW5kcworICAgICAgPT09PT09PT09PT09PT09PT09PT0KKworCitJbnRlZ3JhdGluZyBuZXcgY29tbWFuZHMKKz09PT09PT09PT09PT09PT09PT09PT09PQorCitUaGVyZSBhcmUgZGlmZmVyZW50IHdheXMgdG8gaW50ZWdyYXRlIG5ldyBjb21tYW5kIGltcGxlbWVudGF0aW9ucyBpbnRvCitwYWNrYWdpbmcuICBUaGUgbW9zdCBkaWZmaWN1bHQgaXMgdG8gbG9iYnkgZm9yIHRoZSBpbmNsdXNpb24gb2YgdGhlIG5ldyBmZWF0dXJlcworaW4gcGFja2FnaW5nIGl0c2VsZiwgYW5kIHdhaXQgZm9yIChhbmQgcmVxdWlyZSkgYSB2ZXJzaW9uIG9mIFB5dGhvbiB0aGF0Citwcm92aWRlcyB0aGF0IHN1cHBvcnQuICBUaGlzIGlzIHJlYWxseSBoYXJkIGZvciBtYW55IHJlYXNvbnMuCisKK1RoZSBtb3N0IGNvbW1vbiwgYW5kIHBvc3NpYmx5IHRoZSBtb3N0IHJlYXNvbmFibGUgZm9yIG1vc3QgbmVlZHMsIGlzIHRvIGluY2x1ZGUKK3RoZSBuZXcgaW1wbGVtZW50YXRpb25zIHdpdGggeW91ciA6ZmlsZTpgc2V0dXAucHlgIHNjcmlwdCwgYW5kIGNhdXNlIHRoZQorOmZ1bmM6YHBhY2thZ2luZy5jb3JlLnNldHVwYCBmdW5jdGlvbiB1c2UgdGhlbTo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwCisgICBmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJ1aWxkX3B5IGltcG9ydCBidWlsZF9weSBhcyBfYnVpbGRfcHkKKworICAgY2xhc3MgYnVpbGRfcHkoX2J1aWxkX3B5KToKKyAgICAgICAiIiJTcGVjaWFsaXplZCBQeXRob24gc291cmNlIGJ1aWxkZXIuIiIiCisKKyAgICAgICAjIGltcGxlbWVudCB3aGF0ZXZlciBuZWVkcyB0byBiZSBkaWZmZXJlbnQuLi4KKworICAgc2V0dXAoLi4uLCBjbWRjbGFzcz17J2J1aWxkX3B5JzogYnVpbGRfcHl9KQorCitUaGlzIGFwcHJvYWNoIGlzIG1vc3QgdmFsdWFibGUgaWYgdGhlIG5ldyBpbXBsZW1lbnRhdGlvbnMgbXVzdCBiZSB1c2VkIHRvIHVzZSBhCitwYXJ0aWN1bGFyIHBhY2thZ2UsIGFzIGV2ZXJ5b25lIGludGVyZXN0ZWQgaW4gdGhlIHBhY2thZ2Ugd2lsbCBuZWVkIHRvIGhhdmUgdGhlCituZXcgY29tbWFuZCBpbXBsZW1lbnRhdGlvbi4KKworQmVnaW5uaW5nIHdpdGggUHl0aG9uIDIuNCwgYSB0aGlyZCBvcHRpb24gaXMgYXZhaWxhYmxlLCBpbnRlbmRlZCB0byBhbGxvdyBuZXcKK2NvbW1hbmRzIHRvIGJlIGFkZGVkIHdoaWNoIGNhbiBzdXBwb3J0IGV4aXN0aW5nIDpmaWxlOmBzZXR1cC5weWAgc2NyaXB0cyB3aXRob3V0CityZXF1aXJpbmcgbW9kaWZpY2F0aW9ucyB0byB0aGUgUHl0aG9uIGluc3RhbGxhdGlvbi4gIFRoaXMgaXMgZXhwZWN0ZWQgdG8gYWxsb3cKK3RoaXJkLXBhcnR5IGV4dGVuc2lvbnMgdG8gcHJvdmlkZSBzdXBwb3J0IGZvciBhZGRpdGlvbmFsIHBhY2thZ2luZyBzeXN0ZW1zLCBidXQKK3RoZSBjb21tYW5kcyBjYW4gYmUgdXNlZCBmb3IgYW55dGhpbmcgcGFja2FnaW5nIGNvbW1hbmRzIGNhbiBiZSB1c2VkIGZvci4gIEEgbmV3Citjb25maWd1cmF0aW9uIG9wdGlvbiwgOm9wdGlvbjpgY29tbWFuZF9wYWNrYWdlc2AgKGNvbW1hbmQtbGluZSBvcHRpb24KKzpvcHRpb246YC0tY29tbWFuZC1wYWNrYWdlc2ApLCBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGFkZGl0aW9uYWwgcGFja2FnZXMgdG8gYmUKK3NlYXJjaGVkIGZvciBtb2R1bGVzIGltcGxlbWVudGluZyBjb21tYW5kcy4gIExpa2UgYWxsIHBhY2thZ2luZyBvcHRpb25zLCB0aGlzCitjYW4gYmUgc3BlY2lmaWVkIG9uIHRoZSBjb21tYW5kIGxpbmUgb3IgaW4gYSBjb25maWd1cmF0aW9uIGZpbGUuICBUaGlzIG9wdGlvbgorY2FuIG9ubHkgYmUgc2V0IGluIHRoZSBgYFtnbG9iYWxdYGAgc2VjdGlvbiBvZiBhIGNvbmZpZ3VyYXRpb24gZmlsZSwgb3IgYmVmb3JlCithbnkgY29tbWFuZHMgb24gdGhlIGNvbW1hbmQgbGluZS4gIElmIHNldCBpbiBhIGNvbmZpZ3VyYXRpb24gZmlsZSwgaXQgY2FuIGJlCitvdmVycmlkZGVuIGZyb20gdGhlIGNvbW1hbmQgbGluZTsgc2V0dGluZyBpdCB0byBhbiBlbXB0eSBzdHJpbmcgb24gdGhlIGNvbW1hbmQKK2xpbmUgY2F1c2VzIHRoZSBkZWZhdWx0IHRvIGJlIHVzZWQuICBUaGlzIHNob3VsZCBuZXZlciBiZSBzZXQgaW4gYSBjb25maWd1cmF0aW9uCitmaWxlIHByb3ZpZGVkIHdpdGggYSBwYWNrYWdlLgorCitUaGlzIG5ldyBvcHRpb24gY2FuIGJlIHVzZWQgdG8gYWRkIGFueSBudW1iZXIgb2YgcGFja2FnZXMgdG8gdGhlIGxpc3Qgb2YKK3BhY2thZ2VzIHNlYXJjaGVkIGZvciBjb21tYW5kIGltcGxlbWVudGF0aW9uczsgbXVsdGlwbGUgcGFja2FnZSBuYW1lcyBzaG91bGQgYmUKK3NlcGFyYXRlZCBieSBjb21tYXMuICBXaGVuIG5vdCBzcGVjaWZpZWQsIHRoZSBzZWFyY2ggaXMgb25seSBwZXJmb3JtZWQgaW4gdGhlCis6bW9kOmBwYWNrYWdpbmcuY29tbWFuZGAgcGFja2FnZS4gIFdoZW4gOmZpbGU6YHNldHVwLnB5YCBpcyBydW4gd2l0aCB0aGUgb3B0aW9uCis6b3B0aW9uOmAtLWNvbW1hbmQtcGFja2FnZXNgIDpvcHRpb246YGRpc3RjbWRzLGJ1aWxkY21kc2AsIGhvd2V2ZXIsIHRoZSBwYWNrYWdlcworOm1vZDpgcGFja2FnaW5nLmNvbW1hbmRgLCA6bW9kOmBkaXN0Y21kc2AsIGFuZCA6bW9kOmBidWlsZGNtZHNgIHdpbGwgYmUgc2VhcmNoZWQKK2luIHRoYXQgb3JkZXIuICBOZXcgY29tbWFuZHMgYXJlIGV4cGVjdGVkIHRvIGJlIGltcGxlbWVudGVkIGluIG1vZHVsZXMgb2YgdGhlCitzYW1lIG5hbWUgYXMgdGhlIGNvbW1hbmQgYnkgY2xhc3NlcyBzaGFyaW5nIHRoZSBzYW1lIG5hbWUuICBHaXZlbiB0aGUgZXhhbXBsZQorY29tbWFuZC1saW5lIG9wdGlvbiBhYm92ZSwgdGhlIGNvbW1hbmQgOmNvbW1hbmQ6YGJkaXN0X29wZW5wa2dgIGNvdWxkIGJlCitpbXBsZW1lbnRlZCBieSB0aGUgY2xhc3MgOmNsYXNzOmBkaXN0Y21kcy5iZGlzdF9vcGVucGtnLmJkaXN0X29wZW5wa2dgIG9yCis6Y2xhc3M6YGJ1aWxkY21kcy5iZGlzdF9vcGVucGtnLmJkaXN0X29wZW5wa2dgLgorCisKK0FkZGluZyBuZXcgZGlzdHJpYnV0aW9uIHR5cGVzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCitDb21tYW5kcyB0aGF0IGNyZWF0ZSBkaXN0cmlidXRpb25zIChmaWxlcyBpbiB0aGUgOmZpbGU6YGRpc3QvYCBkaXJlY3RvcnkpIG5lZWQKK3RvIGFkZCBgYChjb21tYW5kLCBmaWxlbmFtZSlgYCBwYWlycyB0byBgYHNlbGYuZGlzdHJpYnV0aW9uLmRpc3RfZmlsZXNgYCBzbyB0aGF0Cis6Y29tbWFuZDpgdXBsb2FkYCBjYW4gdXBsb2FkIGl0IHRvIFB5UEkuICBUaGUgKmZpbGVuYW1lKiBpbiB0aGUgcGFpciBjb250YWlucyBubworcGF0aCBpbmZvcm1hdGlvbiwgb25seSB0aGUgbmFtZSBvZiB0aGUgZmlsZSBpdHNlbGYuICBJbiBkcnktcnVuIG1vZGUsIHBhaXJzCitzaG91bGQgc3RpbGwgYmUgYWRkZWQgdG8gcmVwcmVzZW50IHdoYXQgd291bGQgaGF2ZSBiZWVuIGNyZWF0ZWQuCmRpZmYgLS1naXQgYS9Eb2MvcGFja2FnaW5nL2luZGV4LnJzdCBiL0RvYy9wYWNrYWdpbmcvaW5kZXgucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQzZDBkZWMKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvcGFja2FnaW5nL2luZGV4LnJzdApAQCAtMCwwICsxLDQ1IEBACisuLiBfcGFja2FnaW5nLWluZGV4OgorCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyBEaXN0cmlidXRpbmcgUHl0aG9uIFByb2plY3RzCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKworOkF1dGhvcnM6IFRoZSBGZWxsb3dzaGlwIG9mIHRoZSBQYWNrYWdpbmcKKzpFbWFpbDogZGlzdHV0aWxzLXNpZ0BweXRob24ub3JnCis6UmVsZWFzZTogfHZlcnNpb258Cis6RGF0ZTogfHRvZGF5fAorCitUaGlzIGRvY3VtZW50IGRlc2NyaWJlcyBQYWNrYWdpbmcgZm9yIFB5dGhvbiBhdXRob3JzLCBkZXNjcmliaW5nIGhvdyB0byB1c2UgdGhlCittb2R1bGUgdG8gbWFrZSBQeXRob24gYXBwbGljYXRpb25zLCBwYWNrYWdlcyBvciBtb2R1bGVzIGVhc2lseSBhdmFpbGFibGUgdG8gYQord2lkZXIgYXVkaWVuY2Ugd2l0aCB2ZXJ5IGxpdHRsZSBvdmVyaGVhZCBmb3IgYnVpbGQvcmVsZWFzZS9pbnN0YWxsIG1lY2hhbmljcy4KKworLi4gdG9jdHJlZTo6CisgICA6bWF4ZGVwdGg6IDIKKyAgIDpudW1iZXJlZDoKKworICAgdHV0b3JpYWwKKyAgIHNldHVwY2ZnCisgICBpbnRyb2R1Y3Rpb24KKyAgIHNldHVwc2NyaXB0CisgICBjb25maWdmaWxlCisgICBzb3VyY2VkaXN0CisgICBidWlsdGRpc3QKKyAgIHBhY2thZ2VpbmRleAorICAgdXBsb2FkaW5nCisgICBleGFtcGxlcworICAgZXh0ZW5kaW5nCisgICBjb21tYW5kaG9va3MKKyAgIGNvbW1hbmRyZWYKKworCisuLiBzZWVhbHNvOjoKKworICAgOnJlZjpgcGFja2FnaW5nLWluc3RhbGwtaW5kZXhgCisgICAgICBBIHVzZXItY2VudGVyZWQgbWFudWFsIHdoaWNoIGluY2x1ZGVzIGluZm9ybWF0aW9uIG9uIGFkZGluZyBwcm9qZWN0cworICAgICAgaW50byBhbiBleGlzdGluZyBQeXRob24gaW5zdGFsbGF0aW9uLiAgWW91IGRvIG5vdCBuZWVkIHRvIGJlIGEgUHl0aG9uCisgICAgICBwcm9ncmFtbWVyIHRvIHJlYWQgdGhpcyBtYW51YWwuCisKKyAgIDptb2Q6YHBhY2thZ2luZ2AKKyAgICAgIEEgbGlicmFyeSByZWZlcmVuY2UgZm9yIGRldmVsb3BlcnMgb2YgcGFja2FnaW5nIHRvb2xzIHdhbnRpbmcgdG8gdXNlCisgICAgICBzdGFuZGFsb25lIGJ1aWxkaW5nIGJsb2NrcyBsaWtlIDptb2Q6YH5wYWNrYWdpbmcudmVyc2lvbmAgb3IKKyAgICAgIDptb2Q6YH5wYWNrYWdpbmcubWV0YWRhdGFgLCBvciBleHRlbmQgUGFja2FnaW5nIGl0c2VsZi4KZGlmZiAtLWdpdCBhL0RvYy9wYWNrYWdpbmcvaW50cm9kdWN0aW9uLnJzdCBiL0RvYy9wYWNrYWdpbmcvaW50cm9kdWN0aW9uLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNzU3ZmZjCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9pbnRyb2R1Y3Rpb24ucnN0CkBAIC0wLDAgKzEsMTkzIEBACisuLiBfcGFja2FnaW5nLWludHJvOgorCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorQW4gSW50cm9kdWN0aW9uIHRvIFBhY2thZ2luZworKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKworVGhpcyBkb2N1bWVudCBjb3ZlcnMgdXNpbmcgUGFja2FnaW5nIHRvIGRpc3RyaWJ1dGUgeW91ciBQeXRob24gbW9kdWxlcywKK2NvbmNlbnRyYXRpbmcgb24gdGhlIHJvbGUgb2YgZGV2ZWxvcGVyL2Rpc3RyaWJ1dG9yLiAgSWYgeW91J3JlIGxvb2tpbmcgZm9yCitpbmZvcm1hdGlvbiBvbiBpbnN0YWxsaW5nIFB5dGhvbiBtb2R1bGVzIHlvdSBzaG91bGQgcmVmZXIgdG8gdGhlCis6cmVmOmBwYWNrYWdpbmctaW5zdGFsbC1pbmRleGAgY2hhcHRlci4KKworVGhyb3VnaG91dCB0aGlzIGRvY3VtZW50YXRpb24sIHRoZSB0ZXJtcyAiRGlzdHV0aWxzIiwgInRoZSBEaXN0dXRpbHMiIGFuZAorIlBhY2thZ2luZyIgd2lsbCBiZSB1c2VkIGludGVyY2hhbmdlYWJseS4KKworLi4gX3BhY2thZ2luZy1jb25jZXB0czoKKworQ29uY2VwdHMgJiBUZXJtaW5vbG9neQorPT09PT09PT09PT09PT09PT09PT09PQorCitVc2luZyBEaXN0dXRpbHMgaXMgcXVpdGUgc2ltcGxlIGJvdGggZm9yIG1vZHVsZSBkZXZlbG9wZXJzIGFuZCBmb3IKK3VzZXJzL2FkbWluaXN0cmF0b3JzIGluc3RhbGxpbmcgdGhpcmQtcGFydHkgbW9kdWxlcy4gIEFzIGEgZGV2ZWxvcGVyLCB5b3VyCityZXNwb25zaWJpbGl0aWVzIChhcGFydCBmcm9tIHdyaXRpbmcgc29saWQsIHdlbGwtZG9jdW1lbnRlZCBhbmQgd2VsbC10ZXN0ZWQKK2NvZGUsIG9mIGNvdXJzZSEpIGFyZToKKworKiB3cml0aW5nIGEgc2V0dXAgc2NyaXB0ICg6ZmlsZTpgc2V0dXAucHlgIGJ5IGNvbnZlbnRpb24pCisKKyogKG9wdGlvbmFsKSB3cml0aW5nIGEgc2V0dXAgY29uZmlndXJhdGlvbiBmaWxlCisKKyogY3JlYXRpbmcgYSBzb3VyY2UgZGlzdHJpYnV0aW9uCisKKyogKG9wdGlvbmFsKSBjcmVhdGluZyBvbmUgb3IgbW9yZSAiYnVpbHQiIChiaW5hcnkpIGRpc3RyaWJ1dGlvbnMgb2YgeW91cgorICBwcm9qZWN0CisKK0FsbCBvZiB0aGVzZSB0YXNrcyBhcmUgY292ZXJlZCBpbiB0aGlzIGRvY3VtZW50LgorCitOb3QgYWxsIG1vZHVsZSBkZXZlbG9wZXJzIGhhdmUgYWNjZXNzIHRvIG11bHRpcGxlIHBsYXRmb3Jtcywgc28gb25lIGNhbm5vdAorZXhwZWN0IHRoZW0gdG8gY3JlYXRlIGJ1aWxkdCBkaXN0cmlidXRpb25zIGZvciBldmVyeSBwbGF0Zm9ybS4gIFRvIHJlbWVkeQordGhpcywgaXQgaXMgaG9wZWQgdGhhdCBpbnRlcm1lZGlhcmllcyBjYWxsZWQgKnBhY2thZ2Vycyogd2lsbCBhcmlzZSB0byBhZGRyZXNzCit0aGlzIG5lZWQuICBQYWNrYWdlcnMgdGFrZSBzb3VyY2UgZGlzdHJpYnV0aW9ucyByZWxlYXNlZCBieSBtb2R1bGUgZGV2ZWxvcGVycywKK2J1aWxkIHRoZW0gb24gb25lIG9yIG1vcmUgcGxhdGZvcm1zIGFuZCByZWxlYXNlIHRoZSByZXN1bHRpbmcgYnVpbHQKK2Rpc3RyaWJ1dGlvbnMuICBUaHVzLCB1c2VycyBvbiBhIGdyZWF0ZXIgcmFuZ2Ugb2YgcGxhdGZvcm1zIHdpbGwgYmUgYWJsZSB0bworaW5zdGFsbCB0aGUgbW9zdCBwb3B1bGFyIFB5dGhvbiBtb2R1bGVzIGluIHRoZSBtb3N0IG5hdHVyYWwgd2F5IGZvciB0aGVpcgorcGxhdGZvcm0gd2l0aG91dCBoYXZpbmcgdG8gcnVuIGEgc2V0dXAgc2NyaXB0IG9yIGNvbXBpbGUgYSBzaW5nbGUgbGluZSBvZiBjb2RlLgorCisKKy4uIF9wYWNrYWdpbmctc2ltcGxlLWV4YW1wbGU6CisKK0EgU2ltcGxlIEV4YW1wbGUKKz09PT09PT09PT09PT09PT0KKworQSBzZXR1cCBzY3JpcHQgaXMgdXN1YWxseSBxdWl0ZSBzaW1wbGUsIGFsdGhvdWdoIHNpbmNlIGl0J3Mgd3JpdHRlbiBpbiBQeXRob24KK3RoZXJlIGFyZSBubyBhcmJpdHJhcnkgbGltaXRzIHRvIHdoYXQgeW91IGNhbiBkbyB3aXRoIGl0LCB0aG91Z2ggeW91IHNob3VsZCBiZQorY2FyZWZ1bCBhYm91dCBwdXR0aW5nIGV4cGVuc2l2ZSBvcGVyYXRpb25zIGluIHlvdXIgc2V0dXAgc2NyaXB0LgorVW5saWtlLCBzYXksIEF1dG9jb25mLXN0eWxlIGNvbmZpZ3VyZSBzY3JpcHRzIHRoZSBzZXR1cCBzY3JpcHQgbWF5IGJlIHJ1bgorbXVsdGlwbGUgdGltZXMgaW4gdGhlIGNvdXJzZSBvZiBidWlsZGluZyBhbmQgaW5zdGFsbGluZyBhIG1vZHVsZQorZGlzdHJpYnV0aW9uLgorCitJZiBhbGwgeW91IHdhbnQgdG8gZG8gaXMgZGlzdHJpYnV0ZSBhIG1vZHVsZSBjYWxsZWQgOm1vZDpgZm9vYCwgY29udGFpbmVkIGluIGEKK2ZpbGUgOmZpbGU6YGZvby5weWAsIHRoZW4geW91ciBzZXR1cCBzY3JpcHQgY2FuIGJlIGFzIHNpbXBsZSBhczo6CisKKyAgIGZyb20gcGFja2FnaW5nLmNvcmUgaW1wb3J0IHNldHVwCisgICBzZXR1cChuYW1lPSdmb28nLAorICAgICAgICAgdmVyc2lvbj0nMS4wJywKKyAgICAgICAgIHB5X21vZHVsZXM9Wydmb28nXSkKKworU29tZSBvYnNlcnZhdGlvbnM6CisKKyogbW9zdCBpbmZvcm1hdGlvbiB0aGF0IHlvdSBzdXBwbHkgdG8gdGhlIERpc3R1dGlscyBpcyBzdXBwbGllZCBhcyBrZXl3b3JkCisgIGFyZ3VtZW50cyB0byB0aGUgOmZ1bmM6YHNldHVwYCBmdW5jdGlvbgorCisqIHRob3NlIGtleXdvcmQgYXJndW1lbnRzIGZhbGwgaW50byB0d28gY2F0ZWdvcmllczogcGFja2FnZSBtZXRhZGF0YSAobmFtZSwKKyAgdmVyc2lvbiBudW1iZXIsIGV0Yy4pIGFuZCBpbmZvcm1hdGlvbiBhYm91dCB3aGF0J3MgaW4gdGhlIHBhY2thZ2UgKGEgbGlzdAorICBvZiBwdXJlIFB5dGhvbiBtb2R1bGVzIGluIHRoaXMgY2FzZSkKKworKiBtb2R1bGVzIGFyZSBzcGVjaWZpZWQgYnkgbW9kdWxlIG5hbWUsIG5vdCBmaWxlbmFtZSAodGhlIHNhbWUgd2lsbCBob2xkIHRydWUKKyAgZm9yIHBhY2thZ2VzIGFuZCBleHRlbnNpb25zKQorCisqIGl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3Ugc3VwcGx5IGEgbGl0dGxlIG1vcmUgbWV0YWRhdGEgdGhhbiB3ZSBoYXZlIGluIHRoZQorICBleGFtcGxlLiAgSW4gcGFydGljdWxhciB5b3VyIG5hbWUsIGVtYWlsIGFkZHJlc3MgYW5kIGEgVVJMIGZvciB0aGUKKyAgcHJvamVjdCBpZiBhcHByb3ByaWF0ZSAoc2VlIHNlY3Rpb24gOnJlZjpgcGFja2FnaW5nLXNldHVwLXNjcmlwdGAgZm9yIGFuIGV4YW1wbGUpCisKK1RvIGNyZWF0ZSBhIHNvdXJjZSBkaXN0cmlidXRpb24gZm9yIHRoaXMgbW9kdWxlIHlvdSB3b3VsZCBjcmVhdGUgYSBzZXR1cAorc2NyaXB0LCA6ZmlsZTpgc2V0dXAucHlgLCBjb250YWluaW5nIHRoZSBhYm92ZSBjb2RlIGFuZCBydW46OgorCisgICBweXRob24gc2V0dXAucHkgc2Rpc3QKKword2hpY2ggd2lsbCBjcmVhdGUgYW4gYXJjaGl2ZSBmaWxlIChlLmcuLCB0YXJiYWxsIG9uIFVuaXgsIFpJUCBmaWxlIG9uIFdpbmRvd3MpCitjb250YWluaW5nIHlvdXIgc2V0dXAgc2NyaXB0IDpmaWxlOmBzZXR1cC5weWAsIGFuZCB5b3VyIG1vZHVsZSA6ZmlsZTpgZm9vLnB5YC4KK1RoZSBhcmNoaXZlIGZpbGUgd2lsbCBiZSBuYW1lZCA6ZmlsZTpgZm9vLTEuMC50YXIuZ3pgIChvciA6ZmlsZTpgLnppcGApLCBhbmQKK3dpbGwgdW5wYWNrIGludG8gYSBkaXJlY3RvcnkgOmZpbGU6YGZvby0xLjBgLgorCitJZiBhbiBlbmQtdXNlciB3aXNoZXMgdG8gaW5zdGFsbCB5b3VyIDptb2Q6YGZvb2AgbW9kdWxlIGFsbCBoZSBoYXMgdG8gZG8gaXMKK2Rvd25sb2FkIDpmaWxlOmBmb28tMS4wLnRhci5nemAgKG9yIDpmaWxlOmAuemlwYCksIHVucGFjayBpdCwgYW5kIGZyb20gdGhlCis6ZmlsZTpgZm9vLTEuMGAgZGlyZWN0b3J5IHJ1biA6OgorCisgICBweXRob24gc2V0dXAucHkgaW5zdGFsbAorCit3aGljaCB3aWxsIGNvcHkgOmZpbGU6YGZvby5weWAgdG8gdGhlIGFwcHJvcHJpYXRlIGRpcmVjdG9yeSBmb3IKK3RoaXJkLXBhcnR5IG1vZHVsZXMgaW4gdGhlaXIgUHl0aG9uIGluc3RhbGxhdGlvbi4KKworVGhpcyBzaW1wbGUgZXhhbXBsZSBkZW1vbnN0cmF0ZXMgc29tZSBmdW5kYW1lbnRhbCBjb25jZXB0cyBvZiBEaXN0dXRpbHMuCitGaXJzdCwgYm90aCBkZXZlbG9wZXJzIGFuZCBpbnN0YWxsZXJzIGhhdmUgdGhlIHNhbWUgYmFzaWMgdXNlciBpbnRlcmZhY2UsIGkuZS4KK3RoZSBzZXR1cCBzY3JpcHQuICBUaGUgZGlmZmVyZW5jZSBpcyB3aGljaCBEaXN0dXRpbHMgKmNvbW1hbmRzKiB0aGV5IHVzZTogdGhlCis6Y29tbWFuZDpgc2Rpc3RgIGNvbW1hbmQgaXMgYWxtb3N0IGV4Y2x1c2l2ZWx5IGZvciBtb2R1bGUgZGV2ZWxvcGVycywgd2hpbGUKKzpjb21tYW5kOmBpbnN0YWxsYCBpcyBtb3JlIG9mdGVuIHVzZWQgYnkgaW5zdGFsbGVycyAoYWx0aG91Z2ggc29tZSBkZXZlbG9wZXJzCit3aWxsIHdhbnQgdG8gaW5zdGFsbCB0aGVpciBvd24gY29kZSBvY2Nhc2lvbmFsbHkpLgorCitJZiB5b3Ugd2FudCB0byBtYWtlIHRoaW5ncyByZWFsbHkgZWFzeSBmb3IgeW91ciB1c2VycywgeW91IGNhbiBjcmVhdGUgbW9yZQordGhhbiBvbmUgYnVpbHQgZGlzdHJpYnV0aW9ucyBmb3IgdGhlbS4gIEZvciBpbnN0YW5jZSwgaWYgeW91IGFyZSBydW5uaW5nIG9uIGEKK1dpbmRvd3MgbWFjaGluZSBhbmQgd2FudCB0byBtYWtlIHRoaW5ncyBlYXN5IGZvciBvdGhlciBXaW5kb3dzIHVzZXJzLCB5b3UgY2FuCitjcmVhdGUgYW4gZXhlY3V0YWJsZSBpbnN0YWxsZXIgKHRoZSBtb3N0IGFwcHJvcHJpYXRlIHR5cGUgb2YgYnVpbHQgZGlzdHJpYnV0aW9uCitmb3IgdGhpcyBwbGF0Zm9ybSkgd2l0aCB0aGUgOmNvbW1hbmQ6YGJkaXN0X3dpbmluc3RgIGNvbW1hbmQuICBGb3IgZXhhbXBsZTo6CisKKyAgIHB5dGhvbiBzZXR1cC5weSBiZGlzdF93aW5pbnN0CisKK3dpbGwgY3JlYXRlIGFuIGV4ZWN1dGFibGUgaW5zdGFsbGVyLCA6ZmlsZTpgZm9vLTEuMC53aW4zMi5leGVgLCBpbiB0aGUgY3VycmVudAorZGlyZWN0b3J5LiAgWW91IGNhbiBmaW5kIG91dCB3aGF0IGRpc3RyaWJ1dGlvbiBmb3JtYXRzIGFyZSBhdmFpbGFibGUgYXQgYW55IHRpbWUKK2J5IHJ1bm5pbmcgOjoKKworICAgcHl0aG9uIHNldHVwLnB5IGJkaXN0IC0taGVscC1mb3JtYXRzCisKKworLi4gX3BhY2thZ2luZy1weXRob24tdGVybXM6CisKK0dlbmVyYWwgUHl0aG9uIHRlcm1pbm9sb2d5Cis9PT09PT09PT09PT09PT09PT09PT09PT09PQorCitJZiB5b3UncmUgcmVhZGluZyB0aGlzIGRvY3VtZW50LCB5b3UgcHJvYmFibHkgaGF2ZSBhIGdvb2QgaWRlYSBvZiB3aGF0IFB5dGhvbgorbW9kdWxlcywgZXh0ZW5zaW9ucyBhbmQgc28gZm9ydGggYXJlLiAgTmV2ZXJ0aGVsZXNzLCBqdXN0IHRvIGJlIHN1cmUgdGhhdAorZXZlcnlvbmUgaXMgb24gdGhlIHNhbWUgcGFnZSwgaGVyZSdzIGEgcXVpY2sgb3ZlcnZpZXcgb2YgUHl0aG9uIHRlcm1zOgorCittb2R1bGUKKyAgIFRoZSBiYXNpYyB1bml0IG9mIGNvZGUgcmV1c2FiaWxpdHkgaW4gUHl0aG9uOiBhIGJsb2NrIG9mIGNvZGUgaW1wb3J0ZWQgYnkKKyAgIHNvbWUgb3RoZXIgY29kZS4gIFRocmVlIHR5cGVzIG9mIG1vZHVsZXMgYXJlIGltcG9ydGFudCB0byB1cyBoZXJlOiBwdXJlCisgICBQeXRob24gbW9kdWxlcywgZXh0ZW5zaW9uIG1vZHVsZXMgYW5kIHBhY2thZ2VzLgorCitwdXJlIFB5dGhvbiBtb2R1bGUKKyAgIEEgbW9kdWxlIHdyaXR0ZW4gaW4gUHl0aG9uIGFuZCBjb250YWluZWQgaW4gYSBzaW5nbGUgOmZpbGU6YC5weWAgZmlsZSAoYW5kCisgICBwb3NzaWJseSBhc3NvY2lhdGVkIDpmaWxlOmAucHljYCBhbmQvb3IgOmZpbGU6YC5weW9gIGZpbGVzKS4gIFNvbWV0aW1lcworICAgcmVmZXJyZWQgdG8gYXMgYSAicHVyZSBtb2R1bGUuIgorCitleHRlbnNpb24gbW9kdWxlCisgICBBIG1vZHVsZSB3cml0dGVuIGluIHRoZSBsb3ctbGV2ZWwgbGFuZ3VhZ2Ugb2YgdGhlIFB5dGhvbiBpbXBsZW1lbnRhdGlvbjogQy9DKysKKyAgIGZvciBQeXRob24sIEphdmEgZm9yIEp5dGhvbi4gIFR5cGljYWxseSBjb250YWluZWQgaW4gYSBzaW5nbGUgZHluYW1pY2FsbHkKKyAgIGxvYWRlZCBwcmUtY29tcGlsZWQgZmlsZSwgZS5nLiBhIHNoYXJlZCBvYmplY3QgKDpmaWxlOmAuc29gKSBmaWxlIGZvciBQeXRob24KKyAgIGV4dGVuc2lvbnMgb24gVW5peCwgYSBETEwgKGdpdmVuIHRoZSA6ZmlsZTpgLnB5ZGAgZXh0ZW5zaW9uKSBmb3IgUHl0aG9uCisgICBleHRlbnNpb25zIG9uIFdpbmRvd3MsIG9yIGEgSmF2YSBjbGFzcyBmaWxlIGZvciBKeXRob24gZXh0ZW5zaW9ucy4gIE5vdGUgdGhhdAorICAgY3VycmVudGx5IERpc3R1dGlscyBvbmx5IGhhbmRsZXMgQy9DKysgZXh0ZW5zaW9ucyBmb3IgUHl0aG9uLgorCitwYWNrYWdlCisgICBBIG1vZHVsZSB0aGF0IGNvbnRhaW5zIG90aGVyIG1vZHVsZXMsIHR5cGljYWxseSBjb250YWluZWQgaW4gYSBkaXJlY3Rvcnkgb2YKKyAgIHRoZSBmaWxlc3lzdGVtIGFuZCBkaXN0aW5ndWlzaGVkIGZyb20gb3RoZXIgZGlyZWN0b3JpZXMgYnkgdGhlIHByZXNlbmNlIG9mIGEKKyAgIGZpbGUgOmZpbGU6YF9faW5pdF9fLnB5YC4KKworcm9vdCBwYWNrYWdlCisgICBUaGUgcm9vdCBvZiB0aGUgaGllcmFyY2h5IG9mIHBhY2thZ2VzLiAgKFRoaXMgaXNuJ3QgcmVhbGx5IGEgcGFja2FnZSwKKyAgIHNpbmNlIGl0IGRvZXNuJ3QgaGF2ZSBhbiA6ZmlsZTpgX19pbml0X18ucHlgIGZpbGUuICBCdXQuLi4gd2UgaGF2ZSB0bworICAgY2FsbCBpdCBzb21ldGhpbmcsIHJpZ2h0PykgIFRoZSB2YXN0IG1ham9yaXR5IG9mIHRoZSBzdGFuZGFyZCBsaWJyYXJ5IGlzCisgICBpbiB0aGUgcm9vdCBwYWNrYWdlLCBhcyBhcmUgbWFueSBzbWFsbCBzdGFuZGFsb25lIHRoaXJkLXBhcnR5IG1vZHVsZXMgdGhhdAorICAgZG9uJ3QgYmVsb25nIHRvIGEgbGFyZ2VyIG1vZHVsZSBjb2xsZWN0aW9uLiAgVW5saWtlIHJlZ3VsYXIgcGFja2FnZXMsCisgICBtb2R1bGVzIGluIHRoZSByb290IHBhY2thZ2UgY2FuIGJlIGZvdW5kIGluIG1hbnkgZGlyZWN0b3JpZXM6IGluIGZhY3QsCisgICBldmVyeSBkaXJlY3RvcnkgbGlzdGVkIGluIGBgc3lzLnBhdGhgYCBjb250cmlidXRlcyBtb2R1bGVzIHRvIHRoZSByb290CisgICBwYWNrYWdlLgorCisKKy4uIF9wYWNrYWdpbmctdGVybToKKworRGlzdHV0aWxzLXNwZWNpZmljIHRlcm1pbm9sb2d5Cis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworVGhlIGZvbGxvd2luZyB0ZXJtcyBhcHBseSBtb3JlIHNwZWNpZmljYWxseSB0byB0aGUgZG9tYWluIG9mIGRpc3RyaWJ1dGluZyBQeXRob24KK21vZHVsZXMgdXNpbmcgRGlzdHV0aWxzOgorCittb2R1bGUgZGlzdHJpYnV0aW9uCisgICBBIGNvbGxlY3Rpb24gb2YgUHl0aG9uIG1vZHVsZXMgZGlzdHJpYnV0ZWQgdG9nZXRoZXIgYXMgYSBzaW5nbGUgZG93bmxvYWRhYmxlCisgICByZXNvdXJjZSBhbmQgbWVhbnQgdG8gYmUgaW5zdGFsbGVkIGFsbCBhcyBvbmUuICBFeGFtcGxlcyBvZiBzb21lIHdlbGwta25vd24KKyAgIG1vZHVsZSBkaXN0cmlidXRpb25zIGFyZSBOdW1QeSwgU2NpUHksIFBJTCAodGhlIFB5dGhvbiBJbWFnaW5nCisgICBMaWJyYXJ5KSBvciBteEJhc2UuICAoTW9kdWxlIGRpc3RyaWJ1dGlvbnMgd291bGQgYmUgY2FsbGVkIGEgKnBhY2thZ2UqLAorICAgZXhjZXB0IHRoYXQgdGVybSBpcyBhbHJlYWR5IHRha2VuIGluIHRoZSBQeXRob24gY29udGV4dDogYSBzaW5nbGUgbW9kdWxlCisgICBkaXN0cmlidXRpb24gbWF5IGNvbnRhaW4gemVybywgb25lLCBvciBtYW55IFB5dGhvbiBwYWNrYWdlcy4pCisKK3B1cmUgbW9kdWxlIGRpc3RyaWJ1dGlvbgorICAgQSBtb2R1bGUgZGlzdHJpYnV0aW9uIHRoYXQgY29udGFpbnMgb25seSBwdXJlIFB5dGhvbiBtb2R1bGVzIGFuZCBwYWNrYWdlcy4KKyAgIFNvbWV0aW1lcyByZWZlcnJlZCB0byBhcyBhICJwdXJlIGRpc3RyaWJ1dGlvbi4iCisKK25vbi1wdXJlIG1vZHVsZSBkaXN0cmlidXRpb24KKyAgIEEgbW9kdWxlIGRpc3RyaWJ1dGlvbiB0aGF0IGNvbnRhaW5zIGF0IGxlYXN0IG9uZSBleHRlbnNpb24gbW9kdWxlLiAgU29tZXRpbWVzCisgICByZWZlcnJlZCB0byBhcyBhICJub24tcHVyZSBkaXN0cmlidXRpb24uIgorCitkaXN0cmlidXRpb24gcm9vdAorICAgVGhlIHRvcC1sZXZlbCBkaXJlY3Rvcnkgb2YgeW91ciBzb3VyY2UgdHJlZSAob3IgIHNvdXJjZSBkaXN0cmlidXRpb24pLiAgVGhlCisgICBkaXJlY3Rvcnkgd2hlcmUgOmZpbGU6YHNldHVwLnB5YCBleGlzdHMuICBHZW5lcmFsbHkgIDpmaWxlOmBzZXR1cC5weWAgd2lsbAorICAgYmUgcnVuIGZyb20gdGhpcyBkaXJlY3RvcnkuCmRpZmYgLS1naXQgYS9Eb2MvcGFja2FnaW5nL3BhY2thZ2VpbmRleC5yc3QgYi9Eb2MvcGFja2FnaW5nL3BhY2thZ2VpbmRleC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2QxZDU5OAotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9wYWNrYWdpbmcvcGFja2FnZWluZGV4LnJzdApAQCAtMCwwICsxLDEwNCBAQAorLi4gX3BhY2thZ2luZy1wYWNrYWdlLWluZGV4OgorCisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitSZWdpc3RlcmluZyB3aXRoIHRoZSBQYWNrYWdlIEluZGV4CisqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisKK1RoZSBQeXRob24gUGFja2FnZSBJbmRleCAoUHlQSSkgaG9sZHMgbWV0YWRhdGEgZGVzY3JpYmluZyBkaXN0cmlidXRpb25zCitwYWNrYWdlZCB3aXRoIHBhY2thZ2luZy4gVGhlIHBhY2thZ2luZyBjb21tYW5kIDpjb21tYW5kOmByZWdpc3RlcmAgaXMgdXNlZCB0bworc3VibWl0IHlvdXIgZGlzdHJpYnV0aW9uJ3MgbWV0YWRhdGEgdG8gdGhlIGluZGV4LiBJdCBpcyBpbnZva2VkIGFzIGZvbGxvd3M6OgorCisgICAgcHl0aG9uIHNldHVwLnB5IHJlZ2lzdGVyCisKK0Rpc3R1dGlscyB3aWxsIHJlc3BvbmQgd2l0aCB0aGUgZm9sbG93aW5nIHByb21wdDo6CisKKyAgICBydW5uaW5nIHJlZ2lzdGVyCisgICAgV2UgbmVlZCB0byBrbm93IHdobyB5b3UgYXJlLCBzbyBwbGVhc2UgY2hvb3NlIGVpdGhlcjoKKyAgICAgICAgMS4gdXNlIHlvdXIgZXhpc3RpbmcgbG9naW4sCisgICAgICAgIDIuIHJlZ2lzdGVyIGFzIGEgbmV3IHVzZXIsCisgICAgICAgIDMuIGhhdmUgdGhlIHNlcnZlciBnZW5lcmF0ZSBhIG5ldyBwYXNzd29yZCBmb3IgeW91IChhbmQgZW1haWwgaXQgdG8geW91KSwgb3IKKyAgICAgICAgNC4gcXVpdAorICAgIFlvdXIgc2VsZWN0aW9uIFtkZWZhdWx0IDFdOgorCitOb3RlOiBpZiB5b3VyIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBhcmUgc2F2ZWQgbG9jYWxseSwgeW91IHdpbGwgbm90IHNlZSB0aGlzCittZW51LgorCitJZiB5b3UgaGF2ZSBub3QgcmVnaXN0ZXJlZCB3aXRoIFB5UEksIHRoZW4geW91IHdpbGwgbmVlZCB0byBkbyBzbyBub3cuIFlvdQorc2hvdWxkIGNob29zZSBvcHRpb24gMiwgYW5kIGVudGVyIHlvdXIgZGV0YWlscyBhcyByZXF1aXJlZC4gU29vbiBhZnRlcgorc3VibWl0dGluZyB5b3VyIGRldGFpbHMsIHlvdSB3aWxsIHJlY2VpdmUgYW4gZW1haWwgd2hpY2ggd2lsbCBiZSB1c2VkIHRvIGNvbmZpcm0KK3lvdXIgcmVnaXN0cmF0aW9uLgorCitPbmNlIHlvdSBhcmUgcmVnaXN0ZXJlZCwgeW91IG1heSBjaG9vc2Ugb3B0aW9uIDEgZnJvbSB0aGUgbWVudS4gWW91IHdpbGwgYmUKK3Byb21wdGVkIGZvciB5b3VyIFB5UEkgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCBhbmQgOmNvbW1hbmQ6YHJlZ2lzdGVyYCB3aWxsIHRoZW4KK3N1Ym1pdCB5b3VyIG1ldGFkYXRhIHRvIHRoZSBpbmRleC4KKworWW91IG1heSBzdWJtaXQgYW55IG51bWJlciBvZiB2ZXJzaW9ucyBvZiB5b3VyIGRpc3RyaWJ1dGlvbiB0byB0aGUgaW5kZXguIElmIHlvdQorYWx0ZXIgdGhlIG1ldGFkYXRhIGZvciBhIHBhcnRpY3VsYXIgdmVyc2lvbiwgeW91IG1heSBzdWJtaXQgaXQgYWdhaW4gYW5kIHRoZQoraW5kZXggd2lsbCBiZSB1cGRhdGVkLgorCitQeVBJIGhvbGRzIGEgcmVjb3JkIGZvciBlYWNoIChuYW1lLCB2ZXJzaW9uKSBjb21iaW5hdGlvbiBzdWJtaXR0ZWQuIFRoZSBmaXJzdAordXNlciB0byBzdWJtaXQgaW5mb3JtYXRpb24gZm9yIGEgZ2l2ZW4gbmFtZSBpcyBkZXNpZ25hdGVkIHRoZSBPd25lciBvZiB0aGF0CituYW1lLiBUaGV5IG1heSBzdWJtaXQgY2hhbmdlcyB0aHJvdWdoIHRoZSA6Y29tbWFuZDpgcmVnaXN0ZXJgIGNvbW1hbmQgb3IgdGhyb3VnaAordGhlIHdlYiBpbnRlcmZhY2UuIFRoZXkgbWF5IGFsc28gZGVzaWduYXRlIG90aGVyIHVzZXJzIGFzIE93bmVycyBvciBNYWludGFpbmVycy4KK01haW50YWluZXJzIG1heSBlZGl0IHRoZSBwYWNrYWdlIGluZm9ybWF0aW9uLCBidXQgbm90IGRlc2lnbmF0ZSBvdGhlciBPd25lcnMgb3IKK01haW50YWluZXJzLgorCitCeSBkZWZhdWx0IFB5UEkgd2lsbCBsaXN0IGFsbCB2ZXJzaW9ucyBvZiBhIGdpdmVuIHBhY2thZ2UuIFRvIGhpZGUgY2VydGFpbgordmVyc2lvbnMsIHRoZSBIaWRkZW4gcHJvcGVydHkgc2hvdWxkIGJlIHNldCB0byB5ZXMuIFRoaXMgbXVzdCBiZSBlZGl0ZWQgdGhyb3VnaAordGhlIHdlYiBpbnRlcmZhY2UuCisKKworLi4gX3BhY2thZ2luZy1weXBpcmM6CisKK1RoZSAucHlwaXJjIGZpbGUKKz09PT09PT09PT09PT09PT0KKworVGhlIGZvcm1hdCBvZiB0aGUgOmZpbGU6YC5weXBpcmNgIGZpbGUgaXMgYXMgZm9sbG93czo6CisKKyAgICBbcGFja2FnaW5nXQorICAgIGluZGV4LXNlcnZlcnMgPQorICAgICAgICBweXBpCisKKyAgICBbcHlwaV0KKyAgICByZXBvc2l0b3J5OiA8cmVwb3NpdG9yeS11cmw+CisgICAgdXNlcm5hbWU6IDx1c2VybmFtZT4KKyAgICBwYXNzd29yZDogPHBhc3N3b3JkPgorCitUaGUgKnBhY2thZ2luZyogc2VjdGlvbiBkZWZpbmVzIGEgKmluZGV4LXNlcnZlcnMqIHZhcmlhYmxlIHRoYXQgbGlzdHMgdGhlCituYW1lIG9mIGFsbCBzZWN0aW9ucyBkZXNjcmliaW5nIGEgcmVwb3NpdG9yeS4KKworRWFjaCBzZWN0aW9uIGRlc2NyaWJpbmcgYSByZXBvc2l0b3J5IGRlZmluZXMgdGhyZWUgdmFyaWFibGVzOgorCistICpyZXBvc2l0b3J5KiwgdGhhdCBkZWZpbmVzIHRoZSB1cmwgb2YgdGhlIFB5UEkgc2VydmVyLiBEZWZhdWx0cyB0bworICAgIGBgaHR0cDovL3d3dy5weXRob24ub3JnL3B5cGlgYC4KKy0gKnVzZXJuYW1lKiwgd2hpY2ggaXMgdGhlIHJlZ2lzdGVyZWQgdXNlcm5hbWUgb24gdGhlIFB5UEkgc2VydmVyLgorLSAqcGFzc3dvcmQqLCB0aGF0IHdpbGwgYmUgdXNlZCB0byBhdXRoZW50aWNhdGUuIElmIG9taXR0ZWQgdGhlIHVzZXIKKyAgICB3aWxsIGJlIHByb21wdCB0byB0eXBlIGl0IHdoZW4gbmVlZGVkLgorCitJZiB5b3Ugd2FudCB0byBkZWZpbmUgYW5vdGhlciBzZXJ2ZXIgYSBuZXcgc2VjdGlvbiBjYW4gYmUgY3JlYXRlZCBhbmQKK2xpc3RlZCBpbiB0aGUgKmluZGV4LXNlcnZlcnMqIHZhcmlhYmxlOjoKKworICAgIFtwYWNrYWdpbmddCisgICAgaW5kZXgtc2VydmVycyA9CisgICAgICAgIHB5cGkKKyAgICAgICAgb3RoZXIKKworICAgIFtweXBpXQorICAgIHJlcG9zaXRvcnk6IDxyZXBvc2l0b3J5LXVybD4KKyAgICB1c2VybmFtZTogPHVzZXJuYW1lPgorICAgIHBhc3N3b3JkOiA8cGFzc3dvcmQ+CisKKyAgICBbb3RoZXJdCisgICAgcmVwb3NpdG9yeTogaHR0cDovL2V4YW1wbGUuY29tL3B5cGkKKyAgICB1c2VybmFtZTogPHVzZXJuYW1lPgorICAgIHBhc3N3b3JkOiA8cGFzc3dvcmQ+CisKKzpjb21tYW5kOmByZWdpc3RlcmAgY2FuIHRoZW4gYmUgY2FsbGVkIHdpdGggdGhlIC1yIG9wdGlvbiB0byBwb2ludCB0aGUKK3JlcG9zaXRvcnkgdG8gd29yayB3aXRoOjoKKworICAgIHB5dGhvbiBzZXR1cC5weSByZWdpc3RlciAtciBodHRwOi8vZXhhbXBsZS5jb20vcHlwaQorCitGb3IgY29udmVuaWVuY2UsIHRoZSBuYW1lIG9mIHRoZSBzZWN0aW9uIHRoYXQgZGVzY3JpYmVzIHRoZSByZXBvc2l0b3J5CittYXkgYWxzbyBiZSB1c2VkOjoKKworICAgIHB5dGhvbiBzZXR1cC5weSByZWdpc3RlciAtciBvdGhlcgpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9zZXR1cGNmZy5yc3QgYi9Eb2MvcGFja2FnaW5nL3NldHVwY2ZnLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMzgxMDE3Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9zZXR1cGNmZy5yc3QKQEAgLTAsMCArMSw4OTAgQEAKKy4uIGhpZ2hsaWdodGxhbmc6OiBjZmcKKworLi4gX3NldHVwY2ZnLXNwZWM6CisKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKK1NwZWNpZmljYXRpb24gb2YgdGhlIDpmaWxlOmBzZXR1cC5jZmdgIGZpbGUKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKworOnZlcnNpb246IDAuOQorCitUaGlzIGRvY3VtZW50IGRlc2NyaWJlcyB0aGUgOmZpbGU6YHNldHVwLmNmZ2AsIGFuIGluaS1zdHlsZSBjb25maWd1cmF0aW9uIGZpbGUKK3VzZWQgYnkgUGFja2FnaW5nIHRvIHJlcGxhY2UgdGhlIDpmaWxlOmBzZXR1cC5weWAgZmlsZSB1c2VkIGJ5IERpc3R1dGlscy4KK1RoaXMgc3BlY2lmaWNhdGlvbiBpcyBsYW5ndWFnZS1hZ25vc3RpYywgYW5kIHdpbGwgdGhlcmVmb3JlIHJlcGVhdCBzb21lCitpbmZvcm1hdGlvbiB0aGF0J3MgYWxyZWFkeSBkb2N1bWVudGVkIGZvciBQeXRob24gaW4gdGhlCis6Y2xhc3M6YGNvbmZpZ3BhcnNlci5SYXdDb25maWdQYXJzZXJgIGRvY3VtZW50YXRpb24uCisKKy4uIGNvbnRlbnRzOjoKKyAgIDpkZXB0aDogMworICAgOmxvY2FsOgorCisKKy4uIF9zZXR1cGNmZy1zeW50YXg6CisKK1N5bnRheAorPT09PT09CisKK1RoZSBpbmktc3R5bGUgZm9ybWF0IHVzZWQgaW4gdGhlIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyBhIHNpbXBsZSBjb2xsZWN0aW9uIG9mCitzZWN0aW9ucyB0aGF0IGdyb3VwIHNldHMgb2Yga2V5LXZhbHVlIGZpZWxkcyBzZXBhcmF0ZWQgYnkgYGA9YGAgb3IgYGA6YGAgYW5kCitvcHRpb25hbCB3aGl0ZXNwYWNlLiAgTGluZXMgc3RhcnRpbmcgd2l0aCBgYCNgYCBvciBgYDtgYCBhcmUgY29tbWVudHMgYW5kIHdpbGwKK2JlIGlnbm9yZWQuICBFbXB0eSBsaW5lcyBhcmUgYWxzbyBpZ25vcmVkLiAgRXhhbXBsZTo6CisKKyAgIFtzZWN0aW9uMV0KKyAgICMgY29tbWVudAorICAgbmFtZSA9IHZhbHVlCisgICBuYW1lMiA9ICJvdGhlciB2YWx1ZSIKKworICAgW3NlY3Rpb24yXQorICAgZm9vID0gYmFyCisKKworUGFyc2luZyB2YWx1ZXMKKy0tLS0tLS0tLS0tLS0tLQorCitIZXJlIGFyZSBhIHNldCBvZiBydWxlcyB0byBwYXJzZSB2YWx1ZXM6CisKKy0gSWYgYSB2YWx1ZSBpcyBxdW90ZWQgd2l0aCBgYCJgYCBjaGFycywgaXQncyBhIHN0cmluZy4gIElmIGEgcXVvdGUgY2hhcmFjdGVyIGlzCisgIHByZXNlbnQgaW4gdGhlIHF1b3RlZCB2YWx1ZSwgaXQgY2FuIGJlIGVzY2FwZWQgYXMgYGBcImBgIG9yIGxlZnQgYXMtaXMuCisKKy0gSWYgdGhlIHZhbHVlIGlzIGBgdHJ1ZWBgLCBgYHRgYCwgYGB5ZXNgYCwgYGB5YGAgKGNhc2UtaW5zZW5zaXRpdmUpIG9yIGBgMWBgLAorICBpdCdzIGNvbnZlcnRlZCB0byB0aGUgbGFuZ3VhZ2UgZXF1aXZhbGVudCBvZiBhIGBgVHJ1ZWBgIHZhbHVlOyBpZiBpdCdzCisgIGBgZmFsc2VgYCwgYGBmYGAsIGBgbm9gYCwgYGBuYGAgKGNhc2UtaW5zZW5zaXRpdmUpIG9yIGBgMGBgLCBpdCdzIGNvbnZlcnRlZCB0bworICB0aGUgZXF1aXZhbGVudCBvZiBgYEZhbHNlYGAuCisKKy0gQSB2YWx1ZSBjYW4gY29udGFpbiBtdWx0aXBsZSBsaW5lcy4gIFdoZW4gcmVhZCwgbGluZXMgYXJlIGNvbnZlcnRlZCBpbnRvIGEKKyAgc2VxdWVuY2Ugb2YgdmFsdWVzLiAgRWFjaCBsaW5lIGFmdGVyIHRoZSBmaXJzdCBtdXN0IHN0YXJ0IHdpdGggYSBsZWFzdCBvbmUKKyAgc3BhY2Ugb3IgdGFiIGNoYXJhY3RlcjsgdGhpcyBsZWFkaW5nIGluZGVudGF0aW9uIHdpbGwgYmUgc3RyaXBwZWQuCisKKy0gQWxsIG90aGVyIHZhbHVlcyBhcmUgY29uc2lkZXJlZCBzdHJpbmdzLgorCitFeGFtcGxlczo6CisKKyAgIFtzZWN0aW9uXQorICAgZm9vID0gb25lCisgICAgICAgICB0d28KKyAgICAgICAgIHRocmVlCisKKyAgIGJhciA9IGZhbHNlCisgICBiYXogPSAxLjMKKyAgIGJvbyA9ICJvayIKKyAgIGJlZWUgPSAid3FkcXcgcG9qcGogd1wiZGRxIgorCisKK0V4dGVuZGluZyBmaWxlcworLS0tLS0tLS0tLS0tLS0tCisKK0EgY29uZmlndXJhdGlvbiBmaWxlIGNhbiBiZSBleHRlbmRlZCAoaS5lLiBpbmNsdWRlZCkgYnkgb3RoZXIgZmlsZXMuICBGb3IgdGhpcywKK2EgYGBERUZBVUxUYGAgc2VjdGlvbiBtdXN0IGNvbnRhaW4gYW4gYGBleHRlbmRzYGAga2V5IHdob3NlIHZhbHVlIHBvaW50cyB0byBvbmUKK29yIG1vcmUgZmlsZXMgd2hpY2ggd2lsbCBiZSBtZXJnZWQgaW50byB0aGUgY3VycmVudCBmaWxlcyBieSBhZGRpbmcgbmV3IHNlY3Rpb25zCithbmQgZmllbGRzLiAgSWYgYSBmaWxlIGxvYWRlZCBieSBgYGV4dGVuZHNgYCBjb250YWlucyBzZWN0aW9ucyBvciBrZXlzIHRoYXQKK2FscmVhZHkgZXhpc3QgaW4gdGhlIG9yaWdpbmFsIGZpbGUsIHRoZXkgd2lsbCBub3Qgb3ZlcnJpZGUgdGhlIHByZXZpb3VzIHZhbHVlcy4KKworQ29udGVudHMgb2YgOmZpbGU6YG9uZS5jZmdgOjoKKworICAgIFtzZWN0aW9uMV0KKyAgICBuYW1lID0gdmFsdWUKKworICAgIFtzZWN0aW9uMl0KKyAgICBmb28gPSBmb28gZnJvbSBvbmUuY2ZnCisKK0NvbnRlbnRzIG9mIDpmaWxlOmB0d28uY2ZnYDo6CisKKyAgICBbREVGQVVMVF0KKyAgICBleHRlbmRzID0gb25lLmNmZworCisgICAgW3NlY3Rpb24yXQorICAgIGZvbyA9IGZvbyBmcm9tIHR3by5jZmcKKyAgICBiYXogPSBiYXogZnJvbSB0d28uY2ZnCisKK1RoZSByZXN1bHQgb2YgcGFyc2luZyA6ZmlsZTpgdHdvLmNmZ2AgaXMgZXF1aXZhbGVudCB0byB0aGlzIGZpbGU6OgorCisgICAgW3NlY3Rpb24xXQorICAgIG5hbWUgPSB2YWx1ZQorCisgICAgW3NlY3Rpb24yXQorICAgIGZvbyA9IGZvbyBmcm9tIG9uZS5jZmcKKyAgICBiYXogPSBiYXogZnJvbSB0d28uY2ZnCisKK0V4YW1wbGUgdXNlIG9mIG11bHRpLWxpbmUgbm90YXRpb24gdG8gaW5jbHVkZSBtb3JlIHRoYW4gb25lIGZpbGU6OgorCisgICAgW0RFRkFVTFRdCisgICAgZXh0ZW5kcyA9IG9uZS5jZmcKKyAgICAgICAgICAgICAgdHdvLmNmZworCitXaGVuIHNldmVyYWwgZmlsZXMgYXJlIHByb3ZpZGVkLCB0aGV5IGFyZSBwcm9jZXNzZWQgc2VxdWVudGlhbGx5LCBmb2xsb3dpbmcgdGhlCitwcmVjZWRlbmNlIHJ1bGVzIGV4cGxhaW5lZCBhYm92ZS4gIFRoaXMgbWVhbnMgdGhhdCB0aGUgbGlzdCBvZiBmaWxlcyBzaG91bGQgZ28KK2Zyb20gbW9zdCBzcGVjaWFsaXplZCB0byBtb3N0IGNvbW1vbi4KKworKipUb29scyB3aWxsIG5lZWQgdG8gcHJvdmlkZSBhIHdheSB0byBwcm9kdWNlIGEgbWVyZ2VkIHZlcnNpb24gb2YgdGhlCitmaWxlKiouICBUaGlzIHdpbGwgYmUgdXNlZnVsIHRvIGxldCB1c2VycyBwdWJsaXNoIGEgc2luZ2xlIGZpbGUuCisKKworLi4gX3NldHVwY2ZnLXNlY3Rpb25zOgorCitEZXNjcmlwdGlvbiBvZiBzZWN0aW9ucyBhbmQgZmllbGRzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0VhY2ggc2VjdGlvbiBjb250YWlucyBhIGRlc2NyaXB0aW9uIG9mIGl0cyBvcHRpb25zLgorCistIE9wdGlvbnMgdGhhdCBhcmUgbWFya2VkICptdWx0aSogY2FuIGhhdmUgbXVsdGlwbGUgdmFsdWVzLCBvbmUgdmFsdWUgcGVyCisgIGxpbmUuCistIE9wdGlvbnMgdGhhdCBhcmUgbWFya2VkICpvcHRpb25hbCogY2FuIGJlIG9taXR0ZWQuCistIE9wdGlvbnMgdGhhdCBhcmUgbWFya2VkICplbnZpcm9uKiBjYW4gdXNlIGVudmlyb25tZW50IG1hcmtlcnMsIGFzIGRlc2NyaWJlZAorICBpbiA6UEVQOmAzNDVgLgorCisKK1RoZSBzZWN0aW9ucyBhcmU6CisKK2dsb2JhbAorICAgR2xvYmFsIG9wdGlvbnMgbm90IHJlbGF0ZWQgdG8gb25lIGNvbW1hbmQuCisKK21ldGFkYXRhCisgICBOYW1lLCB2ZXJzaW9uIGFuZCBvdGhlciBpbmZvcm1hdGlvbiBkZWZpbmVkIGJ5IDpQRVA6YDM0NWAuCisKK2ZpbGVzCisgICBNb2R1bGVzLCBzY3JpcHRzLCBkYXRhLCBkb2N1bWVudGF0aW9uIGFuZCBvdGhlciBmaWxlcyB0byBpbmNsdWRlIGluIHRoZQorICAgZGlzdHJpYnV0aW9uLgorCitleHRlbnNpb24gc2VjdGlvbnMKKyAgIE9wdGlvbnMgdXNlZCB0byBidWlsZCBleHRlbnNpb24gbW9kdWxlcy4KKworY29tbWFuZCBzZWN0aW9ucworICAgT3B0aW9ucyBnaXZlbiBmb3Igc3BlY2lmaWMgY29tbWFuZHMsIGlkZW50aWNhbCB0byB0aG9zZSB0aGF0IGNhbiBiZSBnaXZlbgorICAgb24gdGhlIGNvbW1hbmQgbGluZS4KKworCisuLiBfc2V0dXBjZmctc2VjdGlvbi1nbG9iYWw6CisKK0dsb2JhbCBvcHRpb25zCistLS0tLS0tLS0tLS0tLQorCitDb250YWlucyBnbG9iYWwgb3B0aW9ucyBmb3IgUGFja2FnaW5nLiBUaGlzIHNlY3Rpb24gaXMgc2hhcmVkIHdpdGggRGlzdHV0aWxzLgorCisKK2NvbW1hbmRzCisgICBEZWZpbmVkIFBhY2thZ2luZyBjb21tYW5kLiBBIGNvbW1hbmQgaXMgZGVmaW5lZCBieSBpdHMgZnVsbHkKKyAgIHF1YWxpZmllZCBuYW1lLiAqb3B0aW9uYWwqLCAqbXVsdGkqCisKKyAgIEV4YW1wbGVzOjoKKworICAgICAgW2dsb2JhbF0KKyAgICAgIGNvbW1hbmRzID0KKyAgICAgICAgICBwYWNrYWdlLnNldHVwLkN1c3RvbVNkaXN0Q29tbWFuZAorICAgICAgICAgIHBhY2thZ2Uuc2V0dXAuQmRpc3REZWIKKworY29tcGlsZXJzCisgICBEZWZpbmVkIFBhY2thZ2luZyBjb21waWxlci4gQSBjb21waWxlciBpcyBkZWZpbmVkIGJ5IGl0cyBmdWxseQorICAgcXVhbGlmaWVkIG5hbWUuICpvcHRpb25hbCosICptdWx0aSoKKworICAgRXhhbXBsZTo6CisKKyAgICAgIFtnbG9iYWxdCisgICAgICBjb21waWxlcnMgPQorICAgICAgICAgIGhvdGNvbXBpbGVyLlNtYXJ0Q0NvbXBpbGVyCisKK3NldHVwX2hvb2tzCisgICBEZWZpbmVzIGEgbGlzdCBvZiBjYWxsYWJsZXMgdG8gYmUgY2FsbGVkIHJpZ2h0IGFmdGVyIHRoZSA6ZmlsZTpgc2V0dXAuY2ZnYAorICAgZmlsZSBpcyByZWFkLCBiZWZvcmUgYW55IG90aGVyIHByb2Nlc3NpbmcuICBFYWNoIHZhbHVlIGlzIGEgUHl0aG9uIGRvdHRlZAorICAgbmFtZSB0byBhbiBvYmplY3QsIHdoaWNoIGhhcyB0byBiZSBkZWZpbmVkIGluIGEgbW9kdWxlIHByZXNlbnQgaW4gdGhlIHByb2plY3QKKyAgIGRpcmVjdG9yeSBhbG9uc2lkZSA6ZmlsZTpgc2V0dXAuY2ZnYCBvciBvbiBQeXRob24ncyA6ZGF0YTpgc3lzLnBhdGhgIChzZWUKKyAgIDpyZWY6YHBhY2thZ2luZy1maW5kaW5nLWhvb2tzYCkuICBUaGUgY2FsbGFibGVzIGFyZSBleGVjdXRlZCBpbiB0aGUKKyAgIG9yZGVyIHRoZXkncmUgZm91bmQgaW4gdGhlIGZpbGU7IGlmIG9uZSBvZiB0aGVtIGNhbm5vdCBiZSBmb3VuZCwgdG9vbHMgc2hvdWxkCisgICBub3Qgc3RvcCwgYnV0IGZvciBleGFtcGxlIHByb2R1Y2UgYSB3YXJuaW5nIGFuZCBjb250aW51ZSB3aXRoIHRoZSBuZXh0IGxpbmUuCisgICBFYWNoIGNhbGxhYmxlIHJlY2VpdmVzIHRoZSBjb25maWd1cmF0aW9uIGFzIGEgZGljdGlvbmFyeSAoa2V5cyBhcmUKKyAgIDpmaWxlOmBzZXR1cC5jZmdgIHNlY3Rpb25zLCB2YWx1ZXMgYXJlIGRpY3Rpb25hcmllcyBvZiBmaWVsZHMpIGFuZCBjYW4gbWFrZQorICAgYW55IGNoYW5nZSB0byBpdC4gICpvcHRpb25hbCosICptdWx0aSoKKworICAgRXhhbXBsZTo6CisKKyAgICAgIFtnbG9iYWxdCisgICAgICBzZXR1cF9ob29rcyA9IF9zZXR1cGhvb2tzLmN1c3RvbWl6ZV9jb25maWcKKworCisKKy4uIF9zZXR1cGNmZy1zZWN0aW9uLW1ldGFkYXRhOgorCitNZXRhZGF0YQorLS0tLS0tLS0KKworVGhlIG1ldGFkYXRhIHNlY3Rpb24gY29udGFpbnMgdGhlIG1ldGFkYXRhIGZvciB0aGUgcHJvamVjdCBhcyBkZXNjcmliZWQgaW4KKzpQRVA6YDM0NWAuICBGaWVsZCBuYW1lcyBhcmUgY2FzZS1pbnNlbnNpdGl2ZS4KKworRmllbGRzOgorCituYW1lCisgICBOYW1lIG9mIHRoZSBwcm9qZWN0LgorCit2ZXJzaW9uCisgICBWZXJzaW9uIG9mIHRoZSBwcm9qZWN0LiBNdXN0IGNvbXBseSB3aXRoIDpQRVA6YDM4NmAuCisKK3BsYXRmb3JtCisgICBQbGF0Zm9ybSBzcGVjaWZpY2F0aW9uIGRlc2NyaWJpbmcgYW4gb3BlcmF0aW5nIHN5c3RlbQorICAgc3VwcG9ydGVkIGJ5IHRoZSBkaXN0cmlidXRpb24gd2hpY2ggaXMgbm90IGxpc3RlZCBpbiB0aGUgIk9wZXJhdGluZyBTeXN0ZW0iCisgICBUcm92ZSBjbGFzc2lmaWVycyAoOlBFUDpgMzAxYCkuICAqb3B0aW9uYWwqLCAqbXVsdGkqCisKK3N1cHBvcnRlZC1wbGF0Zm9ybQorICAgQmluYXJ5IGRpc3RyaWJ1dGlvbnMgY29udGFpbmluZyBhIFBLRy1JTkZPIGZpbGUgd2lsbAorICAgdXNlIHRoZSBTdXBwb3J0ZWQtUGxhdGZvcm0gZmllbGQgaW4gdGhlaXIgbWV0YWRhdGEgdG8gc3BlY2lmeSB0aGUgT1MgYW5kCisgICBDUFUgZm9yIHdoaWNoIHRoZSBiaW5hcnkgZGlzdHJpYnV0aW9uIHdhcyBjb21waWxlZC4gIFRoZSBzZW1hbnRpY3Mgb2YKKyAgIHRoZSBTdXBwb3J0ZWQtUGxhdGZvcm0gZmllbGQgYXJlIGZyZWUgZm9ybS4gKm9wdGlvbmFsKiwgKm11bHRpKgorCitzdW1tYXJ5CisgICBBIG9uZS1saW5lIHN1bW1hcnkgb2Ygd2hhdCB0aGUgZGlzdHJpYnV0aW9uIGRvZXMuCisgICAoVXNlZCB0byBiZSBjYWxsZWQgKmRlc2NyaXB0aW9uKiBpbiBEaXN0dXRpbHMxLikKKworZGVzY3JpcHRpb24KKyAgIEEgbG9uZ2VyIGRlc2NyaXB0aW9uLiAoVXNlZCB0byBiZSBjYWxsZWQgKmxvbmdfZGVzY3JpcHRpb24qCisgICBpbiBEaXN0dXRpbHMxLikgQSBmaWxlIGNhbiBiZSBwcm92aWRlZCBpbiB0aGUgKmRlc2NyaXB0aW9uLWZpbGUqIGZpZWxkLgorICAgKm9wdGlvbmFsKgorCitrZXl3b3JkcworICAgQSBsaXN0IG9mIGFkZGl0aW9uYWwga2V5d29yZHMgdG8gYmUgdXNlZCB0byBhc3Npc3Qgc2VhcmNoaW5nCisgICBmb3IgdGhlIGRpc3RyaWJ1dGlvbiBpbiBhIGxhcmdlciBjYXRhbG9nLiBDb21tYSBvciBzcGFjZS1zZXBhcmF0ZWQuCisgICAqb3B0aW9uYWwqCisKK2hvbWUtcGFnZQorICAgVGhlIFVSTCBmb3IgdGhlIGRpc3RyaWJ1dGlvbidzIGhvbWUgcGFnZS4KKworZG93bmxvYWQtdXJsCisgICBUaGUgVVJMIGZyb20gd2hpY2ggdGhpcyB2ZXJzaW9uIG9mIHRoZSBkaXN0cmlidXRpb24KKyAgIGNhbiBiZSBkb3dubG9hZGVkLiAqb3B0aW9uYWwqCisKK2F1dGhvcgorICAgQXV0aG9yJ3MgbmFtZS4gKm9wdGlvbmFsKgorCithdXRob3ItZW1haWwKKyAgIEF1dGhvcidzIGUtbWFpbC4gKm9wdGlvbmFsKgorCittYWludGFpbmVyCisgICBNYWludGFpbmVyJ3MgbmFtZS4gKm9wdGlvbmFsKgorCittYWludGFpbmVyLWVtYWlsCisgICBNYWludGFpbmVyJ3MgZS1tYWlsLiAqb3B0aW9uYWwqCisKK2xpY2Vuc2UKKyAgIEEgdGV4dCBpbmRpY2F0aW5nIHRoZSB0ZXJtIG9mIHVzZXMsIHdoZW4gYSB0cm92ZSBjbGFzc2lmaWVyIGRvZXMKKyAgIG5vdCBtYXRjaC4gKm9wdGlvbmFsKi4KKworY2xhc3NpZmllcnMKKyAgIENsYXNzaWZpY2F0aW9uIGZvciB0aGUgZGlzdHJpYnV0aW9uLCBhcyBkZXNjcmliZWQgaW4gUEVQIDMwMS4KKyAgICpvcHRpb25hbCosICptdWx0aSosICplbnZpcm9uKgorCityZXF1aXJlcy1kaXN0CisgICBuYW1lIG9mIGFub3RoZXIgcGFja2FnaW5nIHByb2plY3QgcmVxdWlyZWQgYXMgYSBkZXBlbmRlbmN5LgorICAgVGhlIGZvcm1hdCBpcyAqbmFtZSAodmVyc2lvbikqIHdoZXJlIHZlcnNpb24gaXMgYW4gb3B0aW9uYWwKKyAgIHZlcnNpb24gZGVjbGFyYXRpb24sIGFzIGRlc2NyaWJlZCBpbiBQRVAgMzQ1LiAqb3B0aW9uYWwqLCAqbXVsdGkqLCAqZW52aXJvbioKKworcHJvdmlkZXMtZGlzdAorICAgbmFtZSBvZiBhbm90aGVyIHBhY2thZ2luZyBwcm9qZWN0IGNvbnRhaW5lZCB3aXRoaW4gdGhpcworICAgZGlzdHJpYnV0aW9uLiBTYW1lIGZvcm1hdCB0aGFuICpyZXF1aXJlcy1kaXN0Ki4gKm9wdGlvbmFsKiwgKm11bHRpKiwKKyAgICplbnZpcm9uKgorCitvYnNvbGV0ZXMtZGlzdAorICAgbmFtZSBvZiBhbm90aGVyIHBhY2thZ2luZyBwcm9qZWN0IHRoaXMgdmVyc2lvbiBvYnNvbGV0ZXMuCisgICBTYW1lIGZvcm1hdCB0aGFuICpyZXF1aXJlcy1kaXN0Ki4gKm9wdGlvbmFsKiwgKm11bHRpKiwgKmVudmlyb24qCisKK3JlcXVpcmVzLXB5dGhvbgorICAgU3BlY2lmaWVzIHRoZSBQeXRob24gdmVyc2lvbiB0aGUgZGlzdHJpYnV0aW9uIHJlcXVpcmVzLiAgVGhlIHZhbHVlIGlzIGEKKyAgIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHZlcnNpb24gcHJlZGljYXRlcywgYXMgZGVzY3JpYmVkIGluIFBFUCAzNDUuCisgICAqb3B0aW9uYWwqLCAqZW52aXJvbioKKworcmVxdWlyZXMtZXh0ZXJuYWxzCisgICBhIGRlcGVuZGVuY3kgaW4gdGhlIHN5c3RlbS4gVGhpcyBmaWVsZCBpcyBmcmVlLWZvcm0sCisgICBhbmQganVzdCBhIGhpbnQgZm9yIGRvd25zdHJlYW0gbWFpbnRhaW5lcnMuICpvcHRpb25hbCosICptdWx0aSosCisgICAqZW52aXJvbioKKworcHJvamVjdC11cmwKKyAgIEEgbGFiZWwsIGZvbGxvd2VkIGJ5IGEgYnJvd3NhYmxlIFVSTCBmb3IgdGhlIHByb2plY3QuCisgICAibGFiZWwsIHVybCIuIFRoZSBsYWJlbCBpcyBsaW1pdGVkIHRvIDMyIHNpZ25zLiAqb3B0aW9uYWwqLCAqbXVsdGkqCisKK09uZSBleHRyYSBmaWVsZCBub3QgcHJlc2VudCBpbiBQRVAgMzQ1IGlzIHN1cHBvcnRlZDoKKworZGVzY3JpcHRpb24tZmlsZQorICAgUGF0aCB0byBhIHRleHQgZmlsZSB0aGF0IHdpbGwgYmUgdXNlZCB0byBmaWxsIHRoZSBgYGRlc2NyaXB0aW9uYGAgZmllbGQuCisgICBNdWx0aXBsZSB2YWx1ZXMgYXJlIGFjY2VwdGVkOyB0aGV5IG11c3QgYmUgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuCisgICBgYGRlc2NyaXB0aW9uLWZpbGVgYCBhbmQgYGBkZXNjcmlwdGlvbmBgIGFyZSBtdXR1YWxseSBleGNsdXNpdmUuICAqb3B0aW9uYWwqCisKKworCitFeGFtcGxlOjoKKworICAgW21ldGFkYXRhXQorICAgbmFtZSA9IHB5cGkycnBtCisgICB2ZXJzaW9uID0gMC4xCisgICBhdXRob3IgPSBUYXJlayBaaWFkw6kKKyAgIGF1dGhvci1lbWFpbCA9IHRhcmVrQHppYWRlLm9yZworICAgc3VtbWFyeSA9IFNjcmlwdCB0aGF0IHRyYW5zZm9ybXMgYW4gc2Rpc3QgYXJjaGl2ZSBpbnRvIGEgUlBNIHBhY2thZ2UKKyAgIGRlc2NyaXB0aW9uLWZpbGUgPSBSRUFETUUKKyAgIGhvbWUtcGFnZSA9IGh0dHA6Ly9iaXRidWNrZXQub3JnL3RhcmVrL3B5cGkycnBtL3dpa2kvSG9tZQorICAgcHJvamVjdC11cmw6CisgICAgICAgUmVwb3NpdG9yeSwgaHR0cDovL2JpdGJ1Y2tldC5vcmcvdGFyZWsvcHlwaTJycG0vCisgICAgICAgUlNTIGZlZWQsIGh0dHBzOi8vYml0YnVja2V0Lm9yZy90YXJlay9weXBpMnJwbS9yc3MKKyAgIGNsYXNzaWZpZXIgPQorICAgICAgIERldmVsb3BtZW50IFN0YXR1cyA6OiAzIC0gQWxwaGEKKyAgICAgICBMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBNb3ppbGxhIFB1YmxpYyBMaWNlbnNlIDEuMSAoTVBMIDEuMSkKKworWW91IHNob3VsZCBub3QgZ2l2ZSBhbnkgZXhwbGljaXQgdmFsdWUgZm9yIG1ldGFkYXRhLXZlcnNpb246IGl0IHdpbGwgYmUgZ3Vlc3NlZAorZnJvbSB0aGUgZmllbGRzIHByZXNlbnQgaW4gdGhlIGZpbGUuCisKKworLi4gX3NldHVwY2ZnLXNlY3Rpb24tZmlsZXM6CisKK0ZpbGVzCistLS0tLQorCitUaGlzIHNlY3Rpb24gZGVzY3JpYmVzIHRoZSBmaWxlcyBpbmNsdWRlZCBpbiB0aGUgcHJvamVjdC4KKworcGFja2FnZXNfcm9vdAorICAgdGhlIHJvb3QgZGlyZWN0b3J5IGNvbnRhaW5pbmcgYWxsIHBhY2thZ2VzIGFuZCBtb2R1bGVzCisgICAoZGVmYXVsdDogY3VycmVudCBkaXJlY3RvcnksIGkuZS4gdGhlIHByb2plY3QncyB0b3AtbGV2ZWwKKyAgIGRpcmVjdG9yeSB3aGVyZSA6ZmlsZTpgc2V0dXAuY2ZnYCBsaXZlcykuICAqb3B0aW9uYWwqCisKK3BhY2thZ2VzCisgICBhIGxpc3Qgb2YgcGFja2FnZXMgdGhlIHByb2plY3QgaW5jbHVkZXMgKm9wdGlvbmFsKiwgKm11bHRpKgorCittb2R1bGVzCisgICBhIGxpc3Qgb2YgcGFja2FnZXMgdGhlIHByb2plY3QgaW5jbHVkZXMgKm9wdGlvbmFsKiwgKm11bHRpKgorCitzY3JpcHRzCisgICBhIGxpc3Qgb2Ygc2NyaXB0cyB0aGUgcHJvamVjdCBpbmNsdWRlcyAqb3B0aW9uYWwqLCAqbXVsdGkqCisKK2V4dHJhX2ZpbGVzCisgICBhIGxpc3Qgb2YgcGF0dGVybnMgZm9yIGFkZGl0aW9uYWwgZmlsZXMgdG8gaW5jbHVkZSBpbiBzb3VyY2UgZGlzdHJpYnV0aW9ucworICAgKHNlZSA6cmVmOmBwYWNrYWdpbmctbWFuaWZlc3RgKSAqb3B0aW9uYWwqLCAqbXVsdGkqCisKK0V4YW1wbGU6OgorCisgICBbZmlsZXNdCisgICBwYWNrYWdlc19yb290ID0gc3JjCisgICBwYWNrYWdlcyA9CisgICAgICAgcHlwaTJycG0KKyAgICAgICBweXBpMnJwbS5jb21tYW5kCisKKyAgIHNjcmlwdHMgPQorICAgICAgIHB5cGkycnBtL3B5cGkycnBtLnB5CisKKyAgIGV4dHJhX2ZpbGVzID0KKyAgICAgICBzZXR1cC5weQorICAgICAgIFJFQURNRQorCisKKy4uIE5vdGU6OgorICAgVGhlIDpmaWxlOmBzZXR1cC5jZmdgIGNvbmZpZ3VyYXRpb24gZmlsZSBpcyBpbmNsdWRlZCBieSBkZWZhdWx0LiAgQ29udHJhcnkgdG8KKyAgIERpc3R1dGlscywgOmZpbGU6YFJFQURNRWAgKG9yIDpmaWxlOmBSRUFETUUudHh0YCkgYW5kIDpmaWxlOmBzZXR1cC5weWAgYXJlCisgICBub3QgaW5jbHVkZWQgYnkgZGVmYXVsdC4KKworCitSZXNvdXJjZXMKK15eXl5eXl5eXgorCitUaGlzIHNlY3Rpb24gZGVzY3JpYmVzIHRoZSBmaWxlcyB1c2VkIGJ5IHRoZSBwcm9qZWN0IHdoaWNoIG11c3Qgbm90IGJlIGluc3RhbGxlZAoraW4gdGhlIHNhbWUgcGxhY2UgdGhhdCBweXRob24gbW9kdWxlcyBvciBsaWJyYXJpZXMsIHRoZXkgYXJlIGNhbGxlZAorKipyZXNvdXJjZXMqKi4gVGhleSBhcmUgZm9yIGV4YW1wbGUgZG9jdW1lbnRhdGlvbiBmaWxlcywgc2NyaXB0IGZpbGVzLAorZGF0YWJhc2VzLCBldGMuLi4KKworRm9yIGRlY2xhcmluZyByZXNvdXJjZXMsIHlvdSBtdXN0IHVzZSB0aGlzIG5vdGF0aW9uOjoKKworICAgc291cmNlID0gZGVzdGluYXRpb24KKworRGF0YS1maWxlcyBhcmUgZGVjbGFyZWQgaW4gdGhlICoqcmVzb3VyY2VzKiogZmllbGQgaW4gdGhlICoqZmlsZSoqIHNlY3Rpb24sIGZvcgorZXhhbXBsZTo6CisKKyAgIFtmaWxlc10KKyAgIHJlc291cmNlcyA9CisgICAgICAgc291cmNlMSA9IGRlc3RpbmF0aW9uMQorICAgICAgIHNvdXJjZTIgPSBkZXN0aW5hdGlvbjIKKworVGhlICoqc291cmNlKiogcGFydCBvZiB0aGUgZGVjbGFyYXRpb24gYXJlIHJlbGF0aXZlIHBhdGhzIG9mIHJlc291cmNlcyBmaWxlcworKHVzaW5nIHVuaXggcGF0aCBzZXBhcmF0b3IgKiovKiopLiBGb3IgZXhhbXBsZSwgaWYgeW91J3ZlIHRoaXMgc291cmNlIHRyZWU6OgorCisgICBmb28vCisgICAgICBkb2MvCisgICAgICAgICBkb2MubWFuCisgICAgICBzY3JpcHRzLworICAgICAgICAgZm9vLnNoCisKK1lvdXIgc2V0dXAuY2ZnIHdpbGwgbG9vayBsaWtlOjoKKworICAgW2ZpbGVzXQorICAgcmVzb3VyY2VzID0KKyAgICAgICBkb2MvZG9jLm1hbiA9IGRlc3RpbmF0aW9uX2RvYworICAgICAgIHNjcmlwdHMvZm9vLnNoID0gZGVzdGluYXRpb25fc2NyaXB0cworCitUaGUgZmluYWwgcGF0aHMgd2hlcmUgZmlsZXMgd2lsbCBiZSBwbGFjZWQgYXJlIGNvbXBvc2VkIGJ5IDogKipzb3VyY2UqKiArCisqKmRlc3RpbmF0aW9uKiouIEluIHRoZSBwcmV2aW91cyBleGFtcGxlLCAqKmRvYy9kb2MubWFuKiogd2lsbCBiZSBwbGFjZWQgaW4KKyoqZGVzdGluYXRpb25fZG9jL2RvYy9kb2MubWFuKiogYW5kICoqc2NyaXB0cy9mb28uc2gqKiB3aWxsIGJlIHBsYWNlZCBpbgorKipkZXN0aW5hdGlvbl9zY3JpcHRzL3NjcmlwdHMvZm9vLnNoKiouIChJZiB5b3Ugd2FudCBtb3JlIGNvbnRyb2wgb24gdGhlIGZpbmFsCitwYXRoLCB0YWtlIGEgbG9vayBhdCA6cmVmOmBzZXR1cGNmZy1yZXNvdXJjZXMtYmFzZS1wcmVmaXhgKS4KKworVGhlICoqZGVzdGluYXRpb24qKiBwYXJ0IG9mIHJlc291cmNlcyBkZWNsYXJhdGlvbiBhcmUgcGF0aHMgd2l0aCBjYXRlZ29yaWVzLgorSW5kZWVkLCBpdCdzIGdlbmVyYWxseSBhIGJhZCBpZGVhIHRvIGdpdmUgYWJzb2x1dGUgcGF0aCBhcyBpdCB3aWxsIGJlIGNyb3NzCitpbmNvbXBhdGlibGUuIFNvLCB5b3UgbXVzdCB1c2UgcmVzb3VyY2VzIGNhdGVnb3JpZXMgaW4geW91ciAqKmRlc3RpbmF0aW9uKioKK2RlY2xhcmF0aW9uLiBDYXRlZ29yaWVzIHdpbGwgYmUgcmVwbGFjZWQgYnkgdGhlaXIgcmVhbCBwYXRoIGF0IHRoZSBpbnN0YWxsYXRpb24KK3RpbWUuIFVzaW5nIGNhdGVnb3JpZXMgaXMgYWxsIGJlbmVmaXQsIHlvdXIgZGVjbGFyYXRpb24gd2lsbCBiZSBzaW1wbGVyLCBjcm9zcworcGxhdGZvcm0gYW5kIGl0IHdpbGwgYWxsb3cgcGFja2FnZXIgdG8gcGxhY2UgcmVzb3VyY2VzIGZpbGVzIHdoZXJlIHRoZXkgd2FudAord2l0aG91dCBicmVha2luZyB5b3VyIGNvZGUuCisKK0NhdGVnb3JpZXMgY2FuIGJlIHNwZWNpZmllZCBieSB1c2luZyB0aGlzIHN5bnRheDo6CisKKyAgIHtjYXRlZ29yeX0KKworRGVmYXVsdCBjYXRlZ29yaWVzIGFyZToKKworKiBjb25maWcKKyogYXBwZGF0YQorKiBhcHBkYXRhLmFyY2gKKyogYXBwZGF0YS5wZXJzaXN0ZW50CisqIGFwcGRhdGEuZGlzcG9zYWJsZQorKiBoZWxwCisqIGljb24KKyogc2NyaXB0cworKiBkb2MKKyogaW5mbworKiBtYW4KKworQSBzcGVjaWFsIGNhdGVnb3J5IGFsc28gZXhpc3RzICoqe2Rpc3RyaWJ1dGlvbi5uYW1lfSoqIHRoYXQgd2lsbCBiZSByZXBsYWNlZCBieQordGhlIG5hbWUgb2YgdGhlIGRpc3RyaWJ1dGlvbiwgYnV0IGFzIG1vc3Qgb2YgdGhlIGRlZmF1bHRzIGNhdGVnb3JpZXMgdXNlIHRoZW0sCitzbyBpdCdzIG5vdCBuZWNlc3NhcnkgdG8gYWRkICoqe2Rpc3RyaWJ1dGlvbi5uYW1lfSoqIGludG8geW91ciBkZXN0aW5hdGlvbi4KKworSWYgeW91IHVzZSBjYXRlZ29yaWVzIGluIHlvdXIgZGVjbGFyYXRpb25zLCBhbmQgeW91IGFyZSBlbmNvdXJhZ2VkIHRvIGRvLCBmaW5hbAorcGF0aCB3aWxsIGJlOjoKKworICAgc291cmNlICsgZGVzdGluYXRpb25fZXhwYW5kZWQKKworLi4gX2V4YW1wbGVfZmluYWxfcGF0aDoKKworRm9yIGV4YW1wbGUsIGlmIHlvdSBoYXZlIHRoaXMgc2V0dXAuY2ZnOjoKKworICAgW21ldGFkYXRhXQorICAgbmFtZSA9IGZvbworCisgICBbZmlsZXNdCisgICByZXNvdXJjZXMgPQorICAgICAgIGRvYy9kb2MubWFuID0ge2RvY30KKworQW5kIGlmICoqe2RvY30qKiBpcyByZXBsYWNlZCBieSAqKntkYXRhZGlyfS9kb2Mve2Rpc3RyaWJ1dGlvbi5uYW1lfSoqLCBmaW5hbAorcGF0aCB3aWxsIGJlOjoKKworICAge2RhdGFkaXJ9L2RvYy9mb28vZG9jL2RvYy5tYW4KKworV2hlcmUge2RhdGFmaXJ9IGNhdGVnb3J5IHdpbGwgYmUgcGxhdGZvcm0tZGVwZW5kZW50LgorCisKK01vcmUgY29udHJvbCBvbiBzb3VyY2UgcGFydAorIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiCisKK0dsb2Igc3ludGF4CisnJycnJycnJycnJworCitXaGVuIHlvdSBkZWNsYXJlIHNvdXJjZSBmaWxlLCB5b3UgY2FuIHVzZSBhIGdsb2ItbGlrZSBzeW50YXggdG8gbWF0Y2ggbXVsdGlwbGVzIGZpbGUsIGZvciBleGFtcGxlOjoKKworICAgc2NyaXB0cy8qID0ge3NjcmlwdH0KKworV2lsbCBtYXRjaCBhbGwgdGhlIGZpbGVzIGluIHRoZSBzY3JpcHRzIGRpcmVjdG9yeSBhbmQgcGxhY2VkIHRoZW0gaW4gdGhlIHNjcmlwdCBjYXRlZ29yeS4KKworR2xvYiB0b2tlbnMgYXJlOgorCisgKiBgYCpgYDogbWF0Y2ggYWxsIGZpbGVzLgorICogYGA/YGA6IG1hdGNoIGFueSBjaGFyYWN0ZXIuCisgKiBgYCoqYGA6IG1hdGNoIGFueSBsZXZlbCBvZiB0cmVlIHJlY3Vyc2lvbiAoZXZlbiAwKS4KKyAqIGBge31gYDogd2lsbCBtYXRjaCBhbnkgcGFydCBzZXBhcmF0ZWQgYnkgY29tbWEgKGV4YW1wbGU6IGBge3NoLGJhdH1gYCkuCisKKy4uIFRPRE8gQWRkIGV4YW1wbGVzCisKK09yZGVyIG9mIGRlY2xhcmF0aW9uCisnJycnJycnJycnJycnJycnJycnJworCitUaGUgb3JkZXIgb2YgZGVjbGFyYXRpb24gaXMgaW1wb3J0YW50IGlmIG9uZSBmaWxlIG1hdGNoIG11bHRpcGxlIHJ1bGVzLiBUaGUgbGFzdAorcnVsZXMgbWF0Y2hlZCBieSBmaWxlIGlzIHVzZWQsIHRoaXMgaXMgdXNlZnVsIGlmIHlvdSBoYXZlIHRoaXMgc291cmNlIHRyZWU6OgorCisgICBmb28vCisgICAgICBkb2MvCisgICAgICAgICBpbmRleC5yc3QKKyAgICAgICAgIHNldHVwLnJzdAorICAgICAgICAgZG9jdW1lbnRhdGlvbi50eHQKKyAgICAgICAgIGRvYy50ZXgKKyAgICAgICAgIFJFQURNRQorCitBbmQgeW91IHdhbnQgYWxsIHRoZSBmaWxlcyBpbiB0aGUgZG9jIGRpcmVjdG9yeSB0byBiZSBwbGFjZWQgaW4ge2RvY30gY2F0ZWdvcnksCitidXQgUkVBRE1FIG11c3QgYmUgcGxhY2VkIGluIHtoZWxwfSBjYXRlZ29yeSwgaW5zdGVhZCBvZiBsaXN0aW5nIGFsbCB0aGUgZmlsZXMKK29uZSBieSBvbmUsIHlvdSBjYW4gZGVjbGFyZSB0aGVtIGluIHRoaXMgd2F5OjoKKworICAgW2ZpbGVzXQorICAgcmVzb3VyY2VzID0KKyAgICAgICBkb2MvKiA9IHtkb2N9CisgICAgICAgZG9jL1JFQURNRSA9IHtoZWxwfQorCitFeGNsdWRlCisnJycnJycnCisKK1lvdSBjYW4gZXhjbHVkZSBzb21lIGZpbGVzIG9mIHJlc291cmNlcyBkZWNsYXJhdGlvbiBieSBnaXZpbmcgbm8gZGVzdGluYXRpb24sIGl0CitjYW4gYmUgdXNlZnVsIGlmIHlvdSBoYXZlIGEgbm9uLXJlc291cmNlcyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeSBvZgorcmVzb3VyY2VzIGZpbGVzOjoKKworICAgZm9vLworICAgICAgZG9jLworICAgICAgICAgUkVMRUFTRVMKKyAgICAgICAgIGRvYy50ZXgKKyAgICAgICAgIGRvY3VtZW50YXRpb24udHh0CisgICAgICAgICBkb2N1LnJzdAorCitZb3VyICoqZmlsZXMqKiBzZWN0aW9uIHdpbGwgYmU6OgorCisgICBbZmlsZXNdCisgICByZXNvdXJjZXMgPQorICAgICAgIGRvYy8qID0ge2RvY30KKyAgICAgICBkb2MvUkVMRUFTRVMgPQorCitNb3JlIGNvbnRyb2wgb24gZGVzdGluYXRpb24gcGFydAorIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKKworLi4gX3NldHVwY2ZnLXJlc291cmNlcy1iYXNlLXByZWZpeDoKKworRGVmaW5pbmcgYSBiYXNlIHByZWZpeAorJycnJycnJycnJycnJycnJycnJycnJworCitXaGVuIHlvdSBkZWZpbmUgeW91ciByZXNvdXJjZXMsIHlvdSBjYW4gaGF2ZSBtb3JlIGNvbnRyb2wgb2YgaG93IHRoZSBmaW5hbCBwYXRoCitpcyBjb21wdXRlZC4KKworQnkgZGVmYXVsdCwgdGhlIGZpbmFsIHBhdGggaXM6OgorCisgICBkZXN0aW5hdGlvbiArIHNvdXJjZQorCitUaGlzIGNhbiBnZW5lcmF0ZSBsb25nIHBhdGhzLCBmb3IgZXhhbXBsZSAoZXhhbXBsZV9maW5hbF9wYXRoXyk6OgorCisgICB7ZGF0YWRpcn0vZG9jL2Zvby9kb2MvZG9jLm1hbgorCitXaGVuIHlvdSBkZWNsYXJlIHlvdXIgc291cmNlLCB5b3UgY2FuIHVzZSB3aGl0ZXNwYWNlIHRvIHNwbGl0IHRoZSBzb3VyY2UgaW4KKyoqcHJlZml4KiogKipzdWZmaXgqKi4gIFNvLCBmb3IgZXhhbXBsZSwgaWYgeW91IGhhdmUgdGhpcyBzb3VyY2U6OgorCisgICBkb2NzLyBkb2MubWFuCisKK1RoZSAqKnByZWZpeCoqIGlzICJkb2NzLyIgYW5kIHRoZSAqKnN1ZmZpeCoqIGlzICJkb2MuaHRtbCIuCisKKy4uIG5vdGU6OgorCisgICBTZXBhcmF0b3IgY2FuIGJlIHBsYWNlZCBhZnRlciBhIHBhdGggc2VwYXJhdG9yIG9yIHJlcGxhY2UgaXQuIFNvIHRoZXNlIHR3bworICAgc291cmNlcyBhcmUgZXF1aXZhbGVudDo6CisKKyAgICAgIGRvY3MvIGRvYy5tYW4KKyAgICAgIGRvY3MgZG9jLm1hbgorCisuLiBub3RlOjoKKworICAgR2xvYiBzeW50YXggaXMgd29ya2luZyB0aGUgc2FtZSB3YXkgd2l0aCBzdGFuZGFyZCBzb3VyY2UgYW5kIHNwbGl0IHNvdXJjZS4KKyAgIFNvIHRoZXNlIHJ1bGVzOjoKKworICAgICAgZG9jcy8qCisgICAgICBkb2NzLyAqCisgICAgICBkb2NzICoKKworICAgV2lsbCBtYXRjaCBhbGwgdGhlIGZpbGVzIGluIHRoZSBkb2NzIGRpcmVjdG9yeS4KKworV2hlbiB5b3UgdXNlIHNwbGl0IHNvdXJjZSwgdGhlIGZpbmFsIHBhdGggaXMgY29tcHV0ZWQgdGhpcyB3YXk6OgorCisgICBkZXN0aW5hdGlvbiArIHByZWZpeAorCitTbyBmb3IgZXhhbXBsZSwgaWYgeW91IGhhdmUgdGhpcyBzZXR1cC5jZmc6OgorCisgICBbbWV0YWRhdGFdCisgICBuYW1lID0gZm9vCisKKyAgIFtmaWxlc10KKyAgIHJlc291cmNlcyA9CisgICAgICAgZG9jLyBkb2MubWFuID0ge2RvY30KKworQW5kIGlmICoqe2RvY30qKiBpcyByZXBsYWNlZCBieSAqKntkYXRhZGlyfS9kb2Mve2Rpc3RyaWJ1dGlvbi5uYW1lfSoqLCBmaW5hbAorcGF0aCB3aWxsIGJlOjoKKworICAge2RhdGFkaXJ9L2RvYy9mb28vZG9jLm1hbgorCisKK092ZXJ3cml0aW5nIHBhdGhzIGZvciBjYXRlZ29yaWVzCisiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIgorCitUaGlzIHBhcnQgaXMgaW50ZW5kZWQgZm9yIHN5c3RlbSBhZG1pbmlzdHJhdG9ycyBvciBkb3duc3RyZWFtIE9TIHBhY2thZ2Vycy4KKworVGhlIHJlYWwgcGF0aHMgb2YgY2F0ZWdvcmllcyBhcmUgcmVnaXN0ZXJlZCBpbiB0aGUgKnN5c2NvbmZpZy5jZmcqIGZpbGUKK2luc3RhbGxlZCBpbiB5b3VyIHB5dGhvbiBpbnN0YWxsYXRpb24uIFRoaXMgZmlsZSB1c2VzIGFuIGluaSBmb3JtYXQgdG9vLgorVGhlIGNvbnRlbnQgb2YgdGhlIGZpbGUgaXMgb3JnYW5pemVkIGludG8gc2V2ZXJhbCBzZWN0aW9uczoKKworKiBnbG9iYWxzOiBTdGFuZGFyZCBjYXRlZ29yaWVzJ3MgcGF0aHMuCisqIHBvc2l4X3ByZWZpeDogU3RhbmRhcmQgcGF0aHMgZm9yIGNhdGVnb3JpZXMgYW5kIGluc3RhbGxhdGlvbiBwYXRocyBmb3IgcG9zaXgKKyAgc3lzdGVtLgorKiBvdGhlciBvbmVzIFhYWAorCitTdGFuZGFyZCBjYXRlZ29yaWVzIHBhdGhzIGFyZSBwbGF0Zm9ybSBpbmRlcGVuZGVudCwgdGhleSBnZW5lcmFsbHkgcmVmZXJzIHRvCitvdGhlciBjYXRlZ29yaWVzLCB3aGljaCBhcmUgcGxhdGZvcm0gZGVwZW5kZW50LiA6bW9kOmBzeXNjb25maWdgIHdpbGwgY2hvb3NlCit0aGVzZSBjYXRlZ29yeSBmcm9tIHNlY3Rpb25zIG1hdGNoaW5nIG9zLm5hbWUuIEZvciBleGFtcGxlOjoKKworICAgZG9jID0ge2RhdGFkaXJ9L2RvYy97ZGlzdHJpYnV0aW9uLm5hbWV9CisKK0l0IHJlZmVycyB0byBkYXRhZGlyIGNhdGVnb3J5LCB3aGljaCBjYW4gYmUgZGlmZmVyZW50IGJldHdlZW4gcGxhdGZvcm1zLiBJbgorcG9zaXggc3lzdGVtLCBpdCBtYXkgYmU6OgorCisgICBkYXRhZGlyID0gL3Vzci9zaGFyZQorCitTbyB0aGUgZmluYWwgcGF0aCB3aWxsIGJlOjoKKworICAgZG9jID0gL3Vzci9zaGFyZS9kb2Mve2Rpc3RyaWJ1dGlvbi5uYW1lfQorCitUaGUgcGxhdGZvcm0tZGVwZW5kZW50IGNhdGVnb3JpZXMgYXJlOgorCisqIGNvbmZkaXIKKyogZGF0YWRpcgorKiBsaWJkaXIKKyogYmFzZQorCisKK0RlZmluaW5nIGV4dHJhIGNhdGVnb3JpZXMKKyIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIKKworLi4gVE9ETworCisKK0V4YW1wbGVzCisiIiIiIiIiIgorCitUaGVzZSBleGFtcGxlcyBhcmUgaW5jcmVtZW50YWwgYnV0IHdvcmsgdW5pdGFyaWx5LgorCitSZXNvdXJjZXMgaW4gcm9vdCBkaXIKKycnJycnJycnJycnJycnJycnJycnJworCitTb3VyY2UgdHJlZTo6CisKKyAgIGJhYmFyLTEuMC8KKyAgICAgIFJFQURNRQorICAgICAgYmFiYXIuc2gKKyAgICAgIGxhdW5jaC5zaAorICAgICAgYmFiYXIucHkKKworOmZpbGU6YHNldHVwLmNmZ2A6OgorCisgICBbZmlsZXNdCisgICByZXNvdXJjZXMgPQorICAgICAgIFJFQURNRSA9IHtkb2N9CisgICAgICAgKi5zaCA9IHtzY3JpcHRzfQorCitTbyBiYWJhci5zaCBhbmQgbGF1bmNoLnNoIHdpbGwgYmUgcGxhY2VkIGluIHtzY3JpcHRzfSBkaXJlY3RvcnkuCisKK05vdyBsZXQncyBtb3ZlIGFsbCB0aGUgc2NyaXB0cyBpbnRvIGEgc2NyaXB0cyBkaXJlY3RvcnkuCisKK1Jlc291cmNlcyBpbiBzdWItZGlyZWN0b3J5CisnJycnJycnJycnJycnJycnJycnJycnJycnJworCitTb3VyY2UgdHJlZTo6CisKKyAgIGJhYmFyLTEuMS8KKyAgICAgIFJFQURNRQorICAgICAgc2NyaXB0cy8KKyAgICAgICAgIGJhYmFyLnNoCisgICAgICAgICBsYXVuY2guc2gKKyAgICAgICAgIExBVU5DSAorICAgICAgYmFiYXIucHkKKworOmZpbGU6YHNldHVwLmNmZ2A6OgorCisgICBbZmlsZXNdCisgICByZXNvdXJjZXMgPQorICAgICAgIFJFQURNRSA9IHtkb2N9CisgICAgICAgc2NyaXB0cy8gTEFVTkNIID0ge2RvY30KKyAgICAgICBzY3JpcHRzLyAqLnNoID0ge3NjcmlwdHN9CisKK0l0J3MgaW1wb3J0YW50IHRvIHVzZSB0aGUgc2VwYXJhdG9yIGFmdGVyIHNjcmlwdHMvIHRvIGluc3RhbGwgYWxsIHRoZSBzaGVsbAorc2NyaXB0cyBpbnRvIHtzY3JpcHRzfSBpbnN0ZWFkIG9mIHtzY3JpcHRzfS9zY3JpcHRzLgorCitOb3cgbGV0J3MgYWRkIHNvbWUgZG9jcy4KKworUmVzb3VyY2VzIGluIG11bHRpcGxlIHN1Yi1kaXJlY3RvcmllcworJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJworCitTb3VyY2UgdHJlZTo6CisKKyAgIGJhYmFyLTEuMi8KKyAgICAgIFJFQURNRQorICAgICAgc2NyaXB0cy8KKyAgICAgICAgIGJhYmFyLnNoCisgICAgICAgICBsYXVuY2guc2gKKyAgICAgICAgIExBVU5DSAorICAgICAgZG9jcy8KKyAgICAgICAgIGFwaQorICAgICAgICAgbWFuCisgICAgICBiYWJhci5weQorCis6ZmlsZTpgc2V0dXAuY2ZnYDo6CisKKyAgIFtmaWxlc10KKyAgIHJlc291cmNlcyA9CisgICAgICAgIFJFQURNRSA9IHtkb2N9CisgICAgICAgIHNjcmlwdHMvIExBVU5DSCA9IHtkb2N9CisgICAgICAgIHNjcmlwdHMvICouc2ggPSB7c2NyaXB0c30KKyAgICAgICAgZG9jLyAqID0ge2RvY30KKyAgICAgICAgZG9jLyBtYW4gPSB7bWFufQorCitZb3Ugd2FudCB0byBwbGFjZSBhbGwgdGhlIGZpbGUgaW4gdGhlIGRvY3Mgc2NyaXB0IGludG8ge2RvY30gY2F0ZWdvcnksIGluc3RlYWQKK29mIG1hbiwgd2hpY2ggbXVzdCBiZSBwbGFjZWQgaW50byB7bWFufSBjYXRlZ29yeSwgd2Ugd2lsbCB1c2UgdGhlIG9yZGVyIG9mCitkZWNsYXJhdGlvbiBvZiBnbG9icyB0byBjaG9vc2UgdGhlIGRlc3RpbmF0aW9uLCB0aGUgbGFzdCBnbG9iIHRoYXQgbWF0Y2ggdGhlCitmaWxlIGlzIHVzZWQuCisKK05vdyBsZXQncyBhZGQgc29tZSBzY3JpcHRzIGZvciB3aW5kb3dzIHVzZXJzLgorCitDb21wbGV0ZSBleGFtcGxlCisnJycnJycnJycnJycnJycnCisKK1NvdXJjZSB0cmVlOjoKKworICAgYmFiYXItMS4zLworICAgICAgUkVBRE1FCisgICAgICBkb2MvCisgICAgICAgICBhcGkKKyAgICAgICAgIG1hbgorICAgICAgc2NyaXB0cy8KKyAgICAgICAgIGJhYmFyLnNoCisgICAgICAgICBsYXVuY2guc2gKKyAgICAgICAgIGJhYmFyLmJhdAorICAgICAgICAgbGF1bmNoLmJhdAorICAgICAgICAgTEFVTkNICisKKzpmaWxlOmBzZXR1cC5jZmdgOjoKKworICAgIFtmaWxlc10KKyAgICByZXNvdXJjZXMgPQorICAgICAgICBSRUFETUUgPSB7ZG9jfQorICAgICAgICBzY3JpcHRzLyBMQVVOQ0ggPSB7ZG9jfQorICAgICAgICBzY3JpcHRzLyAqLntzaCxiYXR9ID0ge3NjcmlwdHN9CisgICAgICAgIGRvYy8gKiA9IHtkb2N9CisgICAgICAgIGRvYy8gbWFuID0ge21hbn0KKworV2UgdXNlIGJyYWNlIGV4cGFuc2lvbiBzeW50YXggdG8gcGxhY2UgYWxsIHRoZSBzaGVsbCBhbmQgYmF0Y2ggc2NyaXB0cyBpbnRvCit7c2NyaXB0c30gY2F0ZWdvcnkuCisKKworLi4gX3NldHVwY2ZnLXNlY3Rpb24tZXh0ZW5zaW9uczoKKworRXh0ZW5zaW9uIG1vZHVsZXMgc2VjdGlvbnMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK0lmIGEgcHJvamVjdCBpbmNsdWRlcyBleHRlbnNpb24gbW9kdWxlcyB3cml0dGVuIGluIEMgb3IgQysrLCBlYWNoIG9uZSBvZiB0aGVtCituZWVkcyB0byBoYXZlIGl0cyBvcHRpb25zIGRlZmluZWQgaW4gYSBkZWRpY2F0ZWQgc2VjdGlvbi4gIEhlcmUncyBhbiBleGFtcGxlOjoKKworICAgW2ZpbGVzXQorICAgcGFja2FnZXMgPSBjb2NvbnV0CisKKyAgIFtleHRlbnNpb246IGNvY29udXQuX2Zhc3Rjb2NvbnV0XQorICAgbGFuZ3VhZ2UgPSBjeHgKKyAgIHNvdXJjZXMgPSBjeHhfc3JjL2Nvbm9udXRfdXRpbHMuY3h4CisgICAgICAgICAgICAgY3h4X3NyYy9weXRob25fbW9kdWxlLmN4eAorICAgaW5jbHVkZV9kaXJzID0gL3Vzci9pbmNsdWRlL2dlY29kZQorICAgICAgICAgICAgICAgICAgL3Vzci9pbmNsdWRlL2JsaXR6CisgICBleHRyYV9jb21waWxlX2FyZ3MgPQorICAgICAgIC1mUElDIC1PMgorICAgICAgIC1ER0VDT0RFX1ZFUlNJT049JCguL2dlY29kZV92ZXJzaW9uKSAtLSBzeXMucGxhdGZvcm0gIT0gJ3dpbjMyJworICAgICAgIC9ER0VDT0RFX1ZFUlNJT049d2luMzIgLS0gc3lzLnBsYXRmb3JtID09ICd3aW4zMicKKworVGhlIHNlY3Rpb24gbmFtZSBtdXN0IHN0YXJ0IHdpdGggYGBleHRlbnNpb246YGA7IHRoZSByaWdodC1oYW5kIHBhcnQgaXMgdXNlZCBhcwordGhlIGZ1bGwgbmFtZSAoaW5jbHVkaW5nIGEgcGFyZW50IHBhY2thZ2UsIGlmIGFueSkgb2YgdGhlIGV4dGVuc2lvbi4gIFdoaXRlc3BhY2UKK2Fyb3VuZCB0aGUgZXh0ZW5zaW9uIG5hbWUgaXMgYWxsb3dlZC4gIElmIHRoZSBleHRlbnNpb24gbW9kdWxlIGlzIG5vdCBzdGFuZGFsb25lCisoZS5nLiBgYF9iaXNlY3RgYCkgYnV0IHBhcnQgb2YgYSBwYWNrYWdlIChlLmcuIGBgdGhpbmcuX3NwZWVkdXBzYGApLCB0aGUgcGFyZW50CitwYWNrYWdlIG11c3QgYmUgbGlzdGVkIGluIHRoZSBgYHBhY2thZ2VzYGAgZmllbGQuCitWYWxpZCBmaWVsZHMgYW5kIHRoZWlyIHZhbHVlcyBhcmUgbGlzdGVkIGluIHRoZSBkb2N1bWVudGF0aW9uIG9mIHRoZQorOmNsYXNzOmBwYWNrYWdpbmcuY29tcGlsZXIuZXh0ZW5zaW9uLkV4dGVuc2lvbmAgY2xhc3M7IHZhbHVlcyBkb2N1bWVudGVkIGFzCitQeXRob24gbGlzdHMgdHJhbnNsYXRlIHRvIG11bHRpLWxpbmUgdmFsdWVzIGluIHRoZSBjb25maWd1cmF0aW9uIGZpbGUuICBJbgorYWRkaXRpb24sIG11bHRpLWxpbmUgdmFsdWVzIGFjY2VwdCBlbnZpcm9ubWVudCBtYXJrZXJzIG9uIGVhY2ggbGluZSwgYWZ0ZXIgYQorYGAtLWBgLgorCisKKy4uIF9zZXR1cGNmZy1zZWN0aW9uLWNvbW1hbmRzOgorCitDb21tYW5kcyBzZWN0aW9ucworLS0tLS0tLS0tLS0tLS0tLS0KKworVG8gcGFzcyBvcHRpb25zIHRvIGNvbW1hbmRzIHdpdGhvdXQgaGF2aW5nIHRvIHR5cGUgdGhlbSBvbiB0aGUgY29tbWFuZCBsaW5lCitmb3IgZWFjaCBpbnZvY2F0aW9uLCB5b3UgY2FuIHdyaXRlIHRoZW0gaW4gdGhlIDpmaWxlOmBzZXR1cC5jZmdgIGZpbGUsIGluIGEKK3NlY3Rpb24gbmFtZWQgYWZ0ZXIgdGhlIGNvbW1hbmQuICBFeGFtcGxlOjoKKworICAgW3NkaXN0XQorICAgIyBzcGVjaWFsIGZ1bmN0aW9uIHRvIGFkZCBjdXN0b20gZmlsZXMKKyAgIG1hbmlmZXN0LWJ1aWxkZXJzID0gcGFja2FnZS5zZXR1cC5saXN0X2V4dHJhX2ZpbGVzCisKKyAgIFtidWlsZF0KKyAgIHVzZS0ydG8zID0gVHJ1ZQorCisgICBbYnVpbGRfZXh0XQorICAgaW5wbGFjZSA9IG9uCisKKyAgIFtjaGVja10KKyAgIHN0cmljdCA9IG9uCisgICBhbGwgPSBvbgorCitPcHRpb24gdmFsdWVzIGdpdmVuIGluIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgY2FuIGJlIG92ZXJyaWRlbiBvbiB0aGUgY29tbWFuZAorbGluZS4gIFNlZSA6cmVmOmBwYWNrYWdpbmctc2V0dXAtY29uZmlnYCBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KKworVGhlc2Ugc2VjdGlvbnMgYXJlIGFsc28gdXNlZCB0byBkZWZpbmUgOnJlZjpgY29tbWFuZCBob29rcworPHBhY2thZ2luZy1jb21tYW5kLWhvb2tzPmAuCisKKworLi4gX3NldHVwY2ZnLWV4dGVuc2liaWxpdHk6CisKK0V4dGVuc2liaWxpdHkKKz09PT09PT09PT09PT0KKworRXZlcnkgc2VjdGlvbiBjYW4gaGF2ZSBmaWVsZHMgdGhhdCBhcmUgbm90IHBhcnQgb2YgdGhpcyBzcGVjaWZpY2F0aW9uLiAgVGhleSBhcmUKK2NhbGxlZCAqKmV4dGVuc2lvbnMqKi4KKworQW4gZXh0ZW5zaW9uIGZpZWxkIHN0YXJ0cyB3aXRoIGBgWC1gYC4gIEV4YW1wbGU6OgorCisgICBbbWV0YWRhdGFdCisgICBuYW1lID0gRGlzdHJpYnV0ZQorICAgWC1EZWJpYW4tTmFtZSA9IHB5dGhvbi1kaXN0cmlidXRlCisKKworLi4gX3NldHVwY2ZnLWNoYW5nZXM6CisKK0NoYW5nZXMgaW4gdGhlIHNwZWNpZmljYXRpb24KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworVGhlIHZlcnNpb25pbmcgc2NoZW1lIGZvciB0aGlzIHNwZWNpZmljYXRpb24gaXMgKipNQUpPUi5NSU5PUioqLiAgQ2hhbmdlcyBpbiB0aGUKK3NwZWNpZmljYXRpb24gd2lsbCBjYXVzZSB0aGUgdmVyc2lvbiBudW1iZXIgdG8gYmUgdXBkYXRlZC4KKworQ2hhbmdlcyB0byB0aGUgbWlub3IgbnVtYmVyIHJlZmxlY3QgYmFja3dhcmRzLWNvbXBhdGlibGUgY2hhbmdlczoKKworLSBOZXcgZmllbGRzIGFuZCBzZWN0aW9ucyAob3B0aW9uYWwgb3IgbWFuZGF0b3J5KSBjYW4gYmUgYWRkZWQuCistIE9wdGlvbmFsIGZpZWxkcyBjYW4gYmUgcmVtb3ZlZC4KKworVGhlIG1ham9yIG51bWJlciB3aWxsIGJlIGluY3JlbWVudGVkIGZvciBiYWNrd2FyZHMtaW5jb21wYXRpYmxlIGNoYW5nZXM6CisKKy0gTWFuZGF0b3J5IGZpZWxkcyBvciBzZWN0aW9ucyBhcmUgcmVtb3ZlZC4KKy0gRmllbGRzIGNoYW5nZSB0aGVpciBtZWFuaW5nLgorCitBcyBhIGNvbnNlcXVlbmNlLCBhIHRvb2wgd3JpdHRlbiB0byBjb25zdW1lIDEuNSBoYXMgdGhlc2UgcHJvcGVydGllczoKKworLSBDYW4gcmVhZCAxLjEsIDEuMiBhbmQgYWxsIHZlcnNpb25zIDwgMS41LCBzaW5jZSB0aGUgdG9vbCBrbm93cyB3aGF0CisgIG9wdGlvbmFsIGZpZWxkcyB3ZXJlbid0IHRoZXJlLgorCisgIC4uIFhYWCBjbGFyaWZ5CisKKy0gQ2FuIGFsc28gcmVhZCAxLjYgYW5kIG90aGVyIDEueCB2ZXJzaW9uczogVGhlIHRvb2wgd2lsbCBqdXN0IGlnbm9yZSBmaWVsZHMgaXQKKyAgZG9lc24ndCBrbm93IGFib3V0LCBldmVuIGlmIHRoZXkgYXJlIG1hbmRhdG9yeSBpbiB0aGUgbmV3IHZlcnNpb24uICBJZgorICBvcHRpb25hbCBmaWVsZHMgd2VyZSByZW1vdmVkLCB0aGUgdG9vbCB3aWxsIGp1c3QgY29uc2lkZXIgdGhlbSBhYnNlbnQuCisKKy0gQ2Fubm90IHJlYWQgMi54IGFuZCBzaG91bGQgcmVmdXNlIHRvIGludGVycHJldCBzdWNoIGZpbGVzLgorCitBIHRvb2wgd3JpdHRlbiB0byBwcm9kdWNlIDEueCBzaG91bGQgaGF2ZSB0aGVzZSBwcm9wZXJ0aWVzOgorCistIFdyaXRlcyBhbGwgbWFuZGF0b3J5IGZpZWxkcy4KKy0gTWF5IHdyaXRlIG9wdGlvbmFsIGZpZWxkcy4KKworCisuLiBfc2V0dXBjZmctYWNrczoKKworQWNrbm93bGVkZ21lbnRzCis9PT09PT09PT09PT09PT0KKworVGhpcyBzcGVjaWZpY2F0aW9uIGluY2x1ZGVzIHdvcmsgYW5kIGZlZWRiYWNrIGZyb20gdGhlc2UgcGVvcGxlOgorCistIFRhcmVrIFppYWTDqQorLSBKdWxpZW4gSmVoYW5uZXQKKy0gQm9yaXMgRmVsZAorLSDDiXJpYyBBcmF1am8KKworKElmIHlvdXIgbmFtZSBpcyBtaXNzaW5nLCBwbGVhc2UgOnJlZjpgbGV0IHVzIGtub3cgPHJlcG9ydGluZy1idWdzPmAuKQpkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy9zZXR1cHNjcmlwdC5yc3QgYi9Eb2MvcGFja2FnaW5nL3NldHVwc2NyaXB0LnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYWZkZTIwCi0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9zZXR1cHNjcmlwdC5yc3QKQEAgLTAsMCArMSw2OTMgQEAKKy4uIF9wYWNrYWdpbmctc2V0dXAtc2NyaXB0OgorCisqKioqKioqKioqKioqKioqKioqKioqKioKK1dyaXRpbmcgdGhlIFNldHVwIFNjcmlwdAorKioqKioqKioqKioqKioqKioqKioqKioqCisKK1RoZSBzZXR1cCBzY3JpcHQgaXMgdGhlIGNlbnRlciBvZiBhbGwgYWN0aXZpdHkgaW4gYnVpbGRpbmcsIGRpc3RyaWJ1dGluZywgYW5kCitpbnN0YWxsaW5nIG1vZHVsZXMgdXNpbmcgRGlzdHV0aWxzLiAgVGhlIG1haW4gcHVycG9zZSBvZiB0aGUgc2V0dXAgc2NyaXB0IGlzCit0byBkZXNjcmliZSB5b3VyIG1vZHVsZSBkaXN0cmlidXRpb24gdG8gRGlzdHV0aWxzLCBzbyB0aGF0IHRoZSB2YXJpb3VzCitjb21tYW5kcyB0aGF0IG9wZXJhdGUgb24geW91ciBtb2R1bGVzIGRvIHRoZSByaWdodCB0aGluZy4gIEFzIHdlIHNhdyBpbiBzZWN0aW9uCis6cmVmOmBwYWNrYWdpbmctc2ltcGxlLWV4YW1wbGVgLCB0aGUgc2V0dXAgc2NyaXB0IGNvbnNpc3RzIG1haW5seSBvZiBhCitjYWxsIHRvIDpmdW5jOmBzZXR1cGAgd2hlcmUgdGhlIG1vc3QgaW5mb3JtYXRpb24gaXMgc3VwcGxpZWQgYXMKK2tleXdvcmQgYXJndW1lbnRzIHRvIDpmdW5jOmBzZXR1cGAuCisKK0hlcmUncyBhIHNsaWdodGx5IG1vcmUgaW52b2x2ZWQgZXhhbXBsZSwgd2hpY2ggd2UnbGwgZm9sbG93IGZvciB0aGUgbmV4dCBjb3VwbGUKK29mIHNlY3Rpb25zOiBhIHNldHVwIHNjcmlwdCB0aGF0IGNvdWxkIGJlIHVzZWQgZm9yIFBhY2thZ2luZyBpdHNlbGY6OgorCisgICAgIyEvdXNyL2Jpbi9lbnYgcHl0aG9uCisKKyAgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cCwgZmluZF9wYWNrYWdlcworCisgICAgc2V0dXAobmFtZT0nUGFja2FnaW5nJywKKyAgICAgICAgICB2ZXJzaW9uPScxLjAnLAorICAgICAgICAgIHN1bW1hcnk9J1B5dGhvbiBEaXN0cmlidXRpb24gVXRpbGl0aWVzJywKKyAgICAgICAgICBrZXl3b3Jkcz1bJ3BhY2thZ2luZycsICdwYWNrYWdpbmcnXSwKKyAgICAgICAgICBhdXRob3I9dSdUYXJlayBaaWFkw6knLAorICAgICAgICAgIGF1dGhvcl9lbWFpbD0ndGFyZWtAemlhZGUub3JnJywKKyAgICAgICAgICBob21lX3BhZ2U9J2h0dHA6Ly9iaXRidWNrZXQub3JnL3RhcmVrL3BhY2thZ2luZy93aWtpL0hvbWUnLAorICAgICAgICAgIGxpY2Vuc2U9J1BTRicsCisgICAgICAgICAgcGFja2FnZXM9ZmluZF9wYWNrYWdlcygpKQorCisKK1RoZXJlIGFyZSBvbmx5IHR3byBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoaXMgYW5kIHRoZSB0cml2aWFsIG9uZS1maWxlCitkaXN0cmlidXRpb24gcHJlc2VudGVkIGluIHNlY3Rpb24gOnJlZjpgcGFja2FnaW5nLXNpbXBsZS1leGFtcGxlYDogbW9yZQorbWV0YWRhdGEgYW5kIHRoZSBzcGVjaWZpY2F0aW9uIG9mIHB1cmUgUHl0aG9uIG1vZHVsZXMgYnkgcGFja2FnZSByYXRoZXIgdGhhbgorYnkgbW9kdWxlLiAgVGhpcyBpcyBpbXBvcnRhbnQgc2luY2UgUmlzdHV0aWxzIGNvbnNpc3Qgb2YgYSBjb3VwbGUgb2YgZG96ZW4KK21vZHVsZXMgc3BsaXQgaW50byAoc28gZmFyKSB0d28gcGFja2FnZXM7IGFuIGV4cGxpY2l0IGxpc3Qgb2YgZXZlcnkgbW9kdWxlCit3b3VsZCBiZSB0ZWRpb3VzIHRvIGdlbmVyYXRlIGFuZCBkaWZmaWN1bHQgdG8gbWFpbnRhaW4uICBGb3IgbW9yZSBpbmZvcm1hdGlvbgorb24gdGhlIGFkZGl0aW9uYWwgbWV0YWRhdGEsIHNlZSBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1tZXRhZGF0YWAuCisKK05vdGUgdGhhdCBhbnkgcGF0aG5hbWVzIChmaWxlcyBvciBkaXJlY3Rvcmllcykgc3VwcGxpZWQgaW4gdGhlIHNldHVwIHNjcmlwdAorc2hvdWxkIGJlIHdyaXR0ZW4gdXNpbmcgdGhlIFVuaXggY29udmVudGlvbiwgaS5lLiBzbGFzaC1zZXBhcmF0ZWQuICBUaGUKK0Rpc3R1dGlscyB3aWxsIHRha2UgY2FyZSBvZiBjb252ZXJ0aW5nIHRoaXMgcGxhdGZvcm0tbmV1dHJhbCByZXByZXNlbnRhdGlvbiBpbnRvCit3aGF0ZXZlciBpcyBhcHByb3ByaWF0ZSBvbiB5b3VyIGN1cnJlbnQgcGxhdGZvcm0gYmVmb3JlIGFjdHVhbGx5IHVzaW5nIHRoZQorcGF0aG5hbWUuICBUaGlzIG1ha2VzIHlvdXIgc2V0dXAgc2NyaXB0IHBvcnRhYmxlIGFjcm9zcyBvcGVyYXRpbmcgc3lzdGVtcywgd2hpY2gKK29mIGNvdXJzZSBpcyBvbmUgb2YgdGhlIG1ham9yIGdvYWxzIG9mIHRoZSBEaXN0dXRpbHMuICBJbiB0aGlzIHNwaXJpdCwgYWxsCitwYXRobmFtZXMgaW4gdGhpcyBkb2N1bWVudCBhcmUgc2xhc2gtc2VwYXJhdGVkLgorCitUaGlzLCBvZiBjb3Vyc2UsIG9ubHkgYXBwbGllcyB0byBwYXRobmFtZXMgZ2l2ZW4gdG8gRGlzdHV0aWxzIGZ1bmN0aW9ucy4gIElmCit5b3UsIGZvciBleGFtcGxlLCB1c2Ugc3RhbmRhcmQgUHl0aG9uIGZ1bmN0aW9ucyBzdWNoIGFzIDpmdW5jOmBnbG9iLmdsb2JgIG9yCis6ZnVuYzpgb3MubGlzdGRpcmAgdG8gc3BlY2lmeSBmaWxlcywgeW91IHNob3VsZCBiZSBjYXJlZnVsIHRvIHdyaXRlIHBvcnRhYmxlCitjb2RlIGluc3RlYWQgb2YgaGFyZGNvZGluZyBwYXRoIHNlcGFyYXRvcnM6OgorCisgICAgZ2xvYi5nbG9iKG9zLnBhdGguam9pbignbXlkaXInLCAnc3ViZGlyJywgJyouaHRtbCcpKQorICAgIG9zLmxpc3RkaXIob3MucGF0aC5qb2luKCdteWRpcicsICdzdWJkaXInKSkKKworCisuLiBfcGFja2FnaW5nLWxpc3RpbmctcGFja2FnZXM6CisKK0xpc3Rpbmcgd2hvbGUgcGFja2FnZXMKKz09PT09PT09PT09PT09PT09PT09PT0KKworVGhlIDpvcHRpb246YHBhY2thZ2VzYCBvcHRpb24gdGVsbHMgdGhlIERpc3R1dGlscyB0byBwcm9jZXNzIChidWlsZCwgZGlzdHJpYnV0ZSwKK2luc3RhbGwsIGV0Yy4pIGFsbCBwdXJlIFB5dGhvbiBtb2R1bGVzIGZvdW5kIGluIGVhY2ggcGFja2FnZSBtZW50aW9uZWQgaW4gdGhlCis6b3B0aW9uOmBwYWNrYWdlc2AgbGlzdC4gIEluIG9yZGVyIHRvIGRvIHRoaXMsIG9mIGNvdXJzZSwgdGhlcmUgaGFzIHRvIGJlIGEKK2NvcnJlc3BvbmRlbmNlIGJldHdlZW4gcGFja2FnZSBuYW1lcyBhbmQgZGlyZWN0b3JpZXMgaW4gdGhlIGZpbGVzeXN0ZW0uICBUaGUKK2RlZmF1bHQgY29ycmVzcG9uZGVuY2UgaXMgdGhlIG1vc3Qgb2J2aW91cyBvbmUsIGkuZS4gcGFja2FnZSA6bW9kOmBwYWNrYWdpbmdgIGlzCitmb3VuZCBpbiB0aGUgZGlyZWN0b3J5IDpmaWxlOmBwYWNrYWdpbmdgIHJlbGF0aXZlIHRvIHRoZSBkaXN0cmlidXRpb24gcm9vdC4KK1RodXMsIHdoZW4geW91IHNheSBgYHBhY2thZ2VzID0gWydmb28nXWBgIGluIHlvdXIgc2V0dXAgc2NyaXB0LCB5b3UgYXJlCitwcm9taXNpbmcgdGhhdCB0aGUgRGlzdHV0aWxzIHdpbGwgZmluZCBhIGZpbGUgOmZpbGU6YGZvby9fX2luaXRfXy5weWAgKHdoaWNoCittaWdodCBiZSBzcGVsbGVkIGRpZmZlcmVudGx5IG9uIHlvdXIgc3lzdGVtLCBidXQgeW91IGdldCB0aGUgaWRlYSkgcmVsYXRpdmUgdG8KK3RoZSBkaXJlY3Rvcnkgd2hlcmUgeW91ciBzZXR1cCBzY3JpcHQgbGl2ZXMuICBJZiB5b3UgYnJlYWsgdGhpcyBwcm9taXNlLCB0aGUKK0Rpc3R1dGlscyB3aWxsIGlzc3VlIGEgd2FybmluZyBidXQgc3RpbGwgcHJvY2VzcyB0aGUgYnJva2VuIHBhY2thZ2UgYW55d2F5LgorCitJZiB5b3UgdXNlIGEgZGlmZmVyZW50IGNvbnZlbnRpb24gdG8gbGF5IG91dCB5b3VyIHNvdXJjZSBkaXJlY3RvcnksIHRoYXQncyBubworcHJvYmxlbTogeW91IGp1c3QgaGF2ZSB0byBzdXBwbHkgdGhlIDpvcHRpb246YHBhY2thZ2VfZGlyYCBvcHRpb24gdG8gdGVsbCB0aGUKK0Rpc3R1dGlscyBhYm91dCB5b3VyIGNvbnZlbnRpb24uICBGb3IgZXhhbXBsZSwgc2F5IHlvdSBrZWVwIGFsbCBQeXRob24gc291cmNlCit1bmRlciA6ZmlsZTpgbGliYCwgc28gdGhhdCBtb2R1bGVzIGluIHRoZSAicm9vdCBwYWNrYWdlIiAoaS5lLiwgbm90IGluIGFueQorcGFja2FnZSBhdCBhbGwpIGFyZSBpbiA6ZmlsZTpgbGliYCwgbW9kdWxlcyBpbiB0aGUgOm1vZDpgZm9vYCBwYWNrYWdlIGFyZSBpbgorOmZpbGU6YGxpYi9mb29gLCBhbmQgc28gZm9ydGguICBUaGVuIHlvdSB3b3VsZCBwdXQgOjoKKworICAgIHBhY2thZ2VfZGlyID0geycnOiAnbGliJ30KKworaW4geW91ciBzZXR1cCBzY3JpcHQuICBUaGUga2V5cyB0byB0aGlzIGRpY3Rpb25hcnkgYXJlIHBhY2thZ2UgbmFtZXMsIGFuZCBhbgorZW1wdHkgcGFja2FnZSBuYW1lIHN0YW5kcyBmb3IgdGhlIHJvb3QgcGFja2FnZS4gIFRoZSB2YWx1ZXMgYXJlIGRpcmVjdG9yeSBuYW1lcworcmVsYXRpdmUgdG8geW91ciBkaXN0cmlidXRpb24gcm9vdC4gIEluIHRoaXMgY2FzZSwgd2hlbiB5b3Ugc2F5IGBgcGFja2FnZXMgPQorWydmb28nXWBgLCB5b3UgYXJlIHByb21pc2luZyB0aGF0IHRoZSBmaWxlIDpmaWxlOmBsaWIvZm9vL19faW5pdF9fLnB5YCBleGlzdHMuCisKK0Fub3RoZXIgcG9zc2libGUgY29udmVudGlvbiBpcyB0byBwdXQgdGhlIDptb2Q6YGZvb2AgcGFja2FnZSByaWdodCBpbgorOmZpbGU6YGxpYmAsIHRoZSA6bW9kOmBmb28uYmFyYCBwYWNrYWdlIGluIDpmaWxlOmBsaWIvYmFyYCwgZXRjLiAgVGhpcyB3b3VsZCBiZQord3JpdHRlbiBpbiB0aGUgc2V0dXAgc2NyaXB0IGFzIDo6CisKKyAgICBwYWNrYWdlX2RpciA9IHsnZm9vJzogJ2xpYid9CisKK0EgYGBwYWNrYWdlOiBkaXJgYCBlbnRyeSBpbiB0aGUgOm9wdGlvbjpgcGFja2FnZV9kaXJgIGRpY3Rpb25hcnkgaW1wbGljaXRseQorYXBwbGllcyB0byBhbGwgcGFja2FnZXMgYmVsb3cgKnBhY2thZ2UqLCBzbyB0aGUgOm1vZDpgZm9vLmJhcmAgY2FzZSBpcworYXV0b21hdGljYWxseSBoYW5kbGVkIGhlcmUuICBJbiB0aGlzIGV4YW1wbGUsIGhhdmluZyBgYHBhY2thZ2VzID0gWydmb28nLAorJ2Zvby5iYXInXWBgIHRlbGxzIHRoZSBEaXN0dXRpbHMgdG8gbG9vayBmb3IgOmZpbGU6YGxpYi9fX2luaXRfXy5weWAgYW5kCis6ZmlsZTpgbGliL2Jhci9fX2luaXRfXy5weWAuICAoS2VlcCBpbiBtaW5kIHRoYXQgYWx0aG91Z2ggOm9wdGlvbjpgcGFja2FnZV9kaXJgCithcHBsaWVzIHJlY3Vyc2l2ZWx5LCB5b3UgbXVzdCBleHBsaWNpdGx5IGxpc3QgYWxsIHBhY2thZ2VzIGluCis6b3B0aW9uOmBwYWNrYWdlc2A6IHRoZSBEaXN0dXRpbHMgd2lsbCAqbm90KiByZWN1cnNpdmVseSBzY2FuIHlvdXIgc291cmNlIHRyZWUKK2xvb2tpbmcgZm9yIGFueSBkaXJlY3Rvcnkgd2l0aCBhbiA6ZmlsZTpgX19pbml0X18ucHlgIGZpbGUuKQorCisKKy4uIF9wYWNrYWdpbmctbGlzdGluZy1tb2R1bGVzOgorCitMaXN0aW5nIGluZGl2aWR1YWwgbW9kdWxlcworPT09PT09PT09PT09PT09PT09PT09PT09PT0KKworRm9yIGEgc21hbGwgbW9kdWxlIGRpc3RyaWJ1dGlvbiwgeW91IG1pZ2h0IHByZWZlciB0byBsaXN0IGFsbCBtb2R1bGVzIHJhdGhlcgordGhhbiBsaXN0aW5nIHBhY2thZ2VzLS0tZXNwZWNpYWxseSB0aGUgY2FzZSBvZiBhIHNpbmdsZSBtb2R1bGUgdGhhdCBnb2VzIGluIHRoZQorInJvb3QgcGFja2FnZSIgKGkuZS4sIG5vIHBhY2thZ2UgYXQgYWxsKS4gIFRoaXMgc2ltcGxlc3QgY2FzZSB3YXMgc2hvd24gaW4KK3NlY3Rpb24gOnJlZjpgcGFja2FnaW5nLXNpbXBsZS1leGFtcGxlYDsgaGVyZSBpcyBhIHNsaWdodGx5IG1vcmUgaW52b2x2ZWQKK2V4YW1wbGU6OgorCisgICAgcHlfbW9kdWxlcyA9IFsnbW9kMScsICdwa2cubW9kMiddCisKK1RoaXMgZGVzY3JpYmVzIHR3byBtb2R1bGVzLCBvbmUgb2YgdGhlbSBpbiB0aGUgInJvb3QiIHBhY2thZ2UsIHRoZSBvdGhlciBpbiB0aGUKKzptb2Q6YHBrZ2AgcGFja2FnZS4gIEFnYWluLCB0aGUgZGVmYXVsdCBwYWNrYWdlL2RpcmVjdG9yeSBsYXlvdXQgaW1wbGllcyB0aGF0Cit0aGVzZSB0d28gbW9kdWxlcyBjYW4gYmUgZm91bmQgaW4gOmZpbGU6YG1vZDEucHlgIGFuZCA6ZmlsZTpgcGtnL21vZDIucHlgLCBhbmQKK3RoYXQgOmZpbGU6YHBrZy9fX2luaXRfXy5weWAgZXhpc3RzIGFzIHdlbGwuIEFuZCBhZ2FpbiwgeW91IGNhbiBvdmVycmlkZSB0aGUKK3BhY2thZ2UvZGlyZWN0b3J5IGNvcnJlc3BvbmRlbmNlIHVzaW5nIHRoZSA6b3B0aW9uOmBwYWNrYWdlX2RpcmAgb3B0aW9uLgorCisKKy4uIF9wYWNrYWdpbmctZGVzY3JpYmluZy1leHRlbnNpb25zOgorCitEZXNjcmliaW5nIGV4dGVuc2lvbiBtb2R1bGVzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK0p1c3QgYXMgd3JpdGluZyBQeXRob24gZXh0ZW5zaW9uIG1vZHVsZXMgaXMgYSBiaXQgbW9yZSBjb21wbGljYXRlZCB0aGFuIHdyaXRpbmcKK3B1cmUgUHl0aG9uIG1vZHVsZXMsIGRlc2NyaWJpbmcgdGhlbSB0byB0aGUgRGlzdHV0aWxzIGlzIGEgYml0IG1vcmUgY29tcGxpY2F0ZWQuCitVbmxpa2UgcHVyZSBtb2R1bGVzLCBpdCdzIG5vdCBlbm91Z2gganVzdCB0byBsaXN0IG1vZHVsZXMgb3IgcGFja2FnZXMgYW5kIGV4cGVjdAordGhlIERpc3R1dGlscyB0byBnbyBvdXQgYW5kIGZpbmQgdGhlIHJpZ2h0IGZpbGVzOyB5b3UgaGF2ZSB0byBzcGVjaWZ5IHRoZQorZXh0ZW5zaW9uIG5hbWUsIHNvdXJjZSBmaWxlKHMpLCBhbmQgYW55IGNvbXBpbGUvbGluayByZXF1aXJlbWVudHMgKGluY2x1ZGUKK2RpcmVjdG9yaWVzLCBsaWJyYXJpZXMgdG8gbGluayB3aXRoLCBldGMuKS4KKworLi4gWFhYIHJlYWQgb3ZlciB0aGlzIHNlY3Rpb24KKworQWxsIG9mIHRoaXMgaXMgZG9uZSB0aHJvdWdoIGFub3RoZXIga2V5d29yZCBhcmd1bWVudCB0byA6ZnVuYzpgc2V0dXBgLCB0aGUKKzpvcHRpb246YGV4dF9tb2R1bGVzYCBvcHRpb24uICA6b3B0aW9uOmBleHRfbW9kdWxlc2AgaXMganVzdCBhIGxpc3Qgb2YKKzpjbGFzczpgRXh0ZW5zaW9uYCBpbnN0YW5jZXMsIGVhY2ggb2Ygd2hpY2ggZGVzY3JpYmVzIGEgc2luZ2xlIGV4dGVuc2lvbiBtb2R1bGUuCitTdXBwb3NlIHlvdXIgZGlzdHJpYnV0aW9uIGluY2x1ZGVzIGEgc2luZ2xlIGV4dGVuc2lvbiwgY2FsbGVkIDptb2Q6YGZvb2AgYW5kCitpbXBsZW1lbnRlZCBieSA6ZmlsZTpgZm9vLmNgLiAgSWYgbm8gYWRkaXRpb25hbCBpbnN0cnVjdGlvbnMgdG8gdGhlCitjb21waWxlci9saW5rZXIgYXJlIG5lZWRlZCwgZGVzY3JpYmluZyB0aGlzIGV4dGVuc2lvbiBpcyBxdWl0ZSBzaW1wbGU6OgorCisgICAgRXh0ZW5zaW9uKCdmb28nLCBbJ2Zvby5jJ10pCisKK1RoZSA6Y2xhc3M6YEV4dGVuc2lvbmAgY2xhc3MgY2FuIGJlIGltcG9ydGVkIGZyb20gOm1vZDpgcGFja2FnaW5nLmNvcmVgIGFsb25nCit3aXRoIDpmdW5jOmBzZXR1cGAuICBUaHVzLCB0aGUgc2V0dXAgc2NyaXB0IGZvciBhIG1vZHVsZSBkaXN0cmlidXRpb24gdGhhdAorY29udGFpbnMgb25seSB0aGlzIG9uZSBleHRlbnNpb24gYW5kIG5vdGhpbmcgZWxzZSBtaWdodCBiZTo6CisKKyAgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cCwgRXh0ZW5zaW9uCisgICAgc2V0dXAobmFtZT0nZm9vJywKKyAgICAgICAgICB2ZXJzaW9uPScxLjAnLAorICAgICAgICAgIGV4dF9tb2R1bGVzPVtFeHRlbnNpb24oJ2ZvbycsIFsnZm9vLmMnXSldKQorCitUaGUgOmNsYXNzOmBFeHRlbnNpb25gIGNsYXNzIChhY3R1YWxseSwgdGhlIHVuZGVybHlpbmcgZXh0ZW5zaW9uLWJ1aWxkaW5nCittYWNoaW5lcnkgaW1wbGVtZW50ZWQgYnkgdGhlIDpjb21tYW5kOmBidWlsZF9leHRgIGNvbW1hbmQpIHN1cHBvcnRzIGEgZ3JlYXQgZGVhbAorb2YgZmxleGliaWxpdHkgaW4gZGVzY3JpYmluZyBQeXRob24gZXh0ZW5zaW9ucywgd2hpY2ggaXMgZXhwbGFpbmVkIGluIHRoZQorZm9sbG93aW5nIHNlY3Rpb25zLgorCisKK0V4dGVuc2lvbiBuYW1lcyBhbmQgcGFja2FnZXMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworVGhlIGZpcnN0IGFyZ3VtZW50IHRvIHRoZSA6Y2xhc3M6YEV4dGVuc2lvbmAgY29uc3RydWN0b3IgaXMgYWx3YXlzIHRoZSBuYW1lIG9mCit0aGUgZXh0ZW5zaW9uLCBpbmNsdWRpbmcgYW55IHBhY2thZ2UgbmFtZXMuICBGb3IgZXhhbXBsZSwgOjoKKworICAgIEV4dGVuc2lvbignZm9vJywgWydzcmMvZm9vMS5jJywgJ3NyYy9mb28yLmMnXSkKKworZGVzY3JpYmVzIGFuIGV4dGVuc2lvbiB0aGF0IGxpdmVzIGluIHRoZSByb290IHBhY2thZ2UsIHdoaWxlIDo6CisKKyAgICBFeHRlbnNpb24oJ3BrZy5mb28nLCBbJ3NyYy9mb28xLmMnLCAnc3JjL2ZvbzIuYyddKQorCitkZXNjcmliZXMgdGhlIHNhbWUgZXh0ZW5zaW9uIGluIHRoZSA6bW9kOmBwa2dgIHBhY2thZ2UuICBUaGUgc291cmNlIGZpbGVzIGFuZAorcmVzdWx0aW5nIG9iamVjdCBjb2RlIGFyZSBpZGVudGljYWwgaW4gYm90aCBjYXNlczsgdGhlIG9ubHkgZGlmZmVyZW5jZSBpcyB3aGVyZQoraW4gdGhlIGZpbGVzeXN0ZW0gKGFuZCB0aGVyZWZvcmUgd2hlcmUgaW4gUHl0aG9uJ3MgbmFtZXNwYWNlIGhpZXJhcmNoeSkgdGhlCityZXN1bHRpbmcgZXh0ZW5zaW9uIGxpdmVzLgorCitJZiB5b3VyIGRpc3RyaWJ1dGlvbiBjb250YWlucyBvbmx5IG9uZSBvciBtb3JlIGV4dGVuc2lvbiBtb2R1bGVzIGluIGEgcGFja2FnZSwKK3lvdSBuZWVkIHRvIGNyZWF0ZSBhIDpmaWxlOmB7cGFja2FnZX0vX19pbml0X18ucHlgIGZpbGUgYW55d2F5LCBvdGhlcndpc2UgUHl0aG9uCit3b24ndCBiZSBhYmxlIHRvIGltcG9ydCBhbnl0aGluZy4KKworSWYgeW91IGhhdmUgYSBudW1iZXIgb2YgZXh0ZW5zaW9ucyBhbGwgaW4gdGhlIHNhbWUgcGFja2FnZSAob3IgYWxsIHVuZGVyIHRoZQorc2FtZSBiYXNlIHBhY2thZ2UpLCB1c2UgdGhlIDpvcHRpb246YGV4dF9wYWNrYWdlYCBrZXl3b3JkIGFyZ3VtZW50IHRvCis6ZnVuYzpgc2V0dXBgLiAgRm9yIGV4YW1wbGUsIDo6CisKKyAgICBzZXR1cCguLi4sCisgICAgICAgICAgZXh0X3BhY2thZ2U9J3BrZycsCisgICAgICAgICAgZXh0X21vZHVsZXM9W0V4dGVuc2lvbignZm9vJywgWydmb28uYyddKSwKKyAgICAgICAgICAgICAgICAgICAgICAgRXh0ZW5zaW9uKCdzdWJwa2cuYmFyJywgWydiYXIuYyddKV0pCisKK3dpbGwgY29tcGlsZSA6ZmlsZTpgZm9vLmNgIHRvIHRoZSBleHRlbnNpb24gOm1vZDpgcGtnLmZvb2AsIGFuZCA6ZmlsZTpgYmFyLmNgIHRvCis6bW9kOmBwa2cuc3VicGtnLmJhcmAuCisKKworRXh0ZW5zaW9uIHNvdXJjZSBmaWxlcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgc2Vjb25kIGFyZ3VtZW50IHRvIHRoZSA6Y2xhc3M6YEV4dGVuc2lvbmAgY29uc3RydWN0b3IgaXMgYSBsaXN0IG9mIHNvdXJjZQorZmlsZXMuICBTaW5jZSB0aGUgRGlzdHV0aWxzIGN1cnJlbnRseSBvbmx5IHN1cHBvcnQgQywgQysrLCBhbmQgT2JqZWN0aXZlLUMKK2V4dGVuc2lvbnMsIHRoZXNlIGFyZSBub3JtYWxseSBDL0MrKy9PYmplY3RpdmUtQyBzb3VyY2UgZmlsZXMuICAoQmUgc3VyZSB0byB1c2UKK2FwcHJvcHJpYXRlIGV4dGVuc2lvbnMgdG8gZGlzdGluZ3Vpc2ggQysrXCBzb3VyY2UgZmlsZXM6IDpmaWxlOmAuY2NgIGFuZAorOmZpbGU6YC5jcHBgIHNlZW0gdG8gYmUgcmVjb2duaXplZCBieSBib3RoIFVuaXggYW5kIFdpbmRvd3MgY29tcGlsZXJzLikKKworSG93ZXZlciwgeW91IGNhbiBhbHNvIGluY2x1ZGUgU1dJRyBpbnRlcmZhY2UgKDpmaWxlOmAuaWApIGZpbGVzIGluIHRoZSBsaXN0OyB0aGUKKzpjb21tYW5kOmBidWlsZF9leHRgIGNvbW1hbmQga25vd3MgaG93IHRvIGRlYWwgd2l0aCBTV0lHIGV4dGVuc2lvbnM6IGl0IHdpbGwgcnVuCitTV0lHIG9uIHRoZSBpbnRlcmZhY2UgZmlsZSBhbmQgY29tcGlsZSB0aGUgcmVzdWx0aW5nIEMvQysrIGZpbGUgaW50byB5b3VyCitleHRlbnNpb24uCisKKy4uIFhYWCBTV0lHIHN1cHBvcnQgaXMgcm91Z2ggYXJvdW5kIHRoZSBlZGdlcyBhbmQgbGFyZ2VseSB1bnRlc3RlZCEKKworVGhpcyB3YXJuaW5nIG5vdHdpdGhzdGFuZGluZywgb3B0aW9ucyB0byBTV0lHIGNhbiBiZSBjdXJyZW50bHkgcGFzc2VkIGxpa2UKK3RoaXM6OgorCisgICAgc2V0dXAoLi4uLAorICAgICAgICAgIGV4dF9tb2R1bGVzPVtFeHRlbnNpb24oJ19mb28nLCBbJ2Zvby5pJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2lnX29wdHM9WyctbW9kZXJuJywgJy1JLi4vaW5jbHVkZSddKV0sCisgICAgICAgICAgcHlfbW9kdWxlcz1bJ2ZvbyddKQorCitPciBvbiB0aGUgY29tbWFuZCBsaW5lIGxpa2UgdGhpczo6CisKKyAgICA+IHB5dGhvbiBzZXR1cC5weSBidWlsZF9leHQgLS1zd2lnLW9wdHM9Ii1tb2Rlcm4gLUkuLi9pbmNsdWRlIgorCitPbiBzb21lIHBsYXRmb3JtcywgeW91IGNhbiBpbmNsdWRlIG5vbi1zb3VyY2UgZmlsZXMgdGhhdCBhcmUgcHJvY2Vzc2VkIGJ5IHRoZQorY29tcGlsZXIgYW5kIGluY2x1ZGVkIGluIHlvdXIgZXh0ZW5zaW9uLiAgQ3VycmVudGx5LCB0aGlzIGp1c3QgbWVhbnMgV2luZG93cworbWVzc2FnZSB0ZXh0ICg6ZmlsZTpgLm1jYCkgZmlsZXMgYW5kIHJlc291cmNlIGRlZmluaXRpb24gKDpmaWxlOmAucmNgKSBmaWxlcyBmb3IKK1Zpc3VhbCBDKysuIFRoZXNlIHdpbGwgYmUgY29tcGlsZWQgdG8gYmluYXJ5IHJlc291cmNlICg6ZmlsZTpgLnJlc2ApIGZpbGVzIGFuZAorbGlua2VkIGludG8gdGhlIGV4ZWN1dGFibGUuCisKKworUHJlcHJvY2Vzc29yIG9wdGlvbnMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RocmVlIG9wdGlvbmFsIGFyZ3VtZW50cyB0byA6Y2xhc3M6YEV4dGVuc2lvbmAgd2lsbCBoZWxwIGlmIHlvdSBuZWVkIHRvIHNwZWNpZnkKK2luY2x1ZGUgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIG9yIHByZXByb2Nlc3NvciBtYWNyb3MgdG8gZGVmaW5lL3VuZGVmaW5lOgorYGBpbmNsdWRlX2RpcnNgYCwgYGBkZWZpbmVfbWFjcm9zYGAsIGFuZCBgYHVuZGVmX21hY3Jvc2BgLgorCitGb3IgZXhhbXBsZSwgaWYgeW91ciBleHRlbnNpb24gcmVxdWlyZXMgaGVhZGVyIGZpbGVzIGluIHRoZSA6ZmlsZTpgaW5jbHVkZWAKK2RpcmVjdG9yeSB1bmRlciB5b3VyIGRpc3RyaWJ1dGlvbiByb290LCB1c2UgdGhlIGBgaW5jbHVkZV9kaXJzYGAgb3B0aW9uOjoKKworICAgIEV4dGVuc2lvbignZm9vJywgWydmb28uYyddLCBpbmNsdWRlX2RpcnM9WydpbmNsdWRlJ10pCisKK1lvdSBjYW4gc3BlY2lmeSBhYnNvbHV0ZSBkaXJlY3RvcmllcyB0aGVyZTsgaWYgeW91IGtub3cgdGhhdCB5b3VyIGV4dGVuc2lvbiB3aWxsCitvbmx5IGJlIGJ1aWx0IG9uIFVuaXggc3lzdGVtcyB3aXRoIFgxMVI2IGluc3RhbGxlZCB0byA6ZmlsZTpgL3VzcmAsIHlvdSBjYW4gZ2V0Cithd2F5IHdpdGggOjoKKworICAgIEV4dGVuc2lvbignZm9vJywgWydmb28uYyddLCBpbmNsdWRlX2RpcnM9WycvdXNyL2luY2x1ZGUvWDExJ10pCisKK1lvdSBzaG91bGQgYXZvaWQgdGhpcyBzb3J0IG9mIG5vbi1wb3J0YWJsZSB1c2FnZSBpZiB5b3UgcGxhbiB0byBkaXN0cmlidXRlIHlvdXIKK2NvZGU6IGl0J3MgcHJvYmFibHkgYmV0dGVyIHRvIHdyaXRlIEMgY29kZSBsaWtlICA6OgorCisgICAgI2luY2x1ZGUgPFgxMS9YbGliLmg+CisKK0lmIHlvdSBuZWVkIHRvIGluY2x1ZGUgaGVhZGVyIGZpbGVzIGZyb20gc29tZSBvdGhlciBQeXRob24gZXh0ZW5zaW9uLCB5b3UgY2FuCit0YWtlIGFkdmFudGFnZSBvZiB0aGUgZmFjdCB0aGF0IGhlYWRlciBmaWxlcyBhcmUgaW5zdGFsbGVkIGluIGEgY29uc2lzdGVudCB3YXkKK2J5IHRoZSBEaXN0dXRpbHMgOmNvbW1hbmQ6YGluc3RhbGxfaGVhZGVyYCBjb21tYW5kLiAgRm9yIGV4YW1wbGUsIHRoZSBOdW1lcmljYWwKK1B5dGhvbiBoZWFkZXIgZmlsZXMgYXJlIGluc3RhbGxlZCAob24gYSBzdGFuZGFyZCBVbml4IGluc3RhbGxhdGlvbikgdG8KKzpmaWxlOmAvdXNyL2xvY2FsL2luY2x1ZGUvcHl0aG9uMS41L051bWVyaWNhbGAuIChUaGUgZXhhY3QgbG9jYXRpb24gd2lsbCBkaWZmZXIKK2FjY29yZGluZyB0byB5b3VyIHBsYXRmb3JtIGFuZCBQeXRob24gaW5zdGFsbGF0aW9uLikgIFNpbmNlIHRoZSBQeXRob24gaW5jbHVkZQorZGlyZWN0b3J5LS0tXCA6ZmlsZTpgL3Vzci9sb2NhbC9pbmNsdWRlL3B5dGhvbjEuNWAgaW4gdGhpcyBjYXNlLS0taXMgYWx3YXlzCitpbmNsdWRlZCBpbiB0aGUgc2VhcmNoIHBhdGggd2hlbiBidWlsZGluZyBQeXRob24gZXh0ZW5zaW9ucywgdGhlIGJlc3QgYXBwcm9hY2gKK2lzIHRvIHdyaXRlIEMgY29kZSBsaWtlICA6OgorCisgICAgI2luY2x1ZGUgPE51bWVyaWNhbC9hcnJheW9iamVjdC5oPgorCisuLiBUT0RPIGNoZWNrIGlmIGl0J3MgZDIuc3lzY29uZmlnIG9yIHRoZSBuZXcgc3lzY29uZmlnIG1vZHVsZSBub3cKKworSWYgeW91IG11c3QgcHV0IHRoZSA6ZmlsZTpgTnVtZXJpY2FsYCBpbmNsdWRlIGRpcmVjdG9yeSByaWdodCBpbnRvIHlvdXIgaGVhZGVyCitzZWFyY2ggcGF0aCwgdGhvdWdoLCB5b3UgY2FuIGZpbmQgdGhhdCBkaXJlY3RvcnkgdXNpbmcgdGhlIERpc3R1dGlscworOm1vZDpgcGFja2FnaW5nLnN5c2NvbmZpZ2AgbW9kdWxlOjoKKworICAgIGZyb20gcGFja2FnaW5nLnN5c2NvbmZpZyBpbXBvcnQgZ2V0X3B5dGhvbl9pbmMKKyAgICBpbmNkaXIgPSBvcy5wYXRoLmpvaW4oZ2V0X3B5dGhvbl9pbmMocGxhdF9zcGVjaWZpYz0xKSwgJ051bWVyaWNhbCcpCisgICAgc2V0dXAoLi4uLAorICAgICAgICAgIEV4dGVuc2lvbiguLi4sIGluY2x1ZGVfZGlycz1baW5jZGlyXSkpCisKK0V2ZW4gdGhvdWdoIHRoaXMgaXMgcXVpdGUgcG9ydGFibGUtLS1pdCB3aWxsIHdvcmsgb24gYW55IFB5dGhvbiBpbnN0YWxsYXRpb24sCityZWdhcmRsZXNzIG9mIHBsYXRmb3JtLS0taXQncyBwcm9iYWJseSBlYXNpZXIgdG8ganVzdCB3cml0ZSB5b3VyIEMgY29kZSBpbiB0aGUKK3NlbnNpYmxlIHdheS4KKworWW91IGNhbiBkZWZpbmUgYW5kIHVuZGVmaW5lIHByZXByb2Nlc3NvciBtYWNyb3Mgd2l0aCB0aGUgYGBkZWZpbmVfbWFjcm9zYGAgYW5kCitgYHVuZGVmX21hY3Jvc2BgIG9wdGlvbnMuIGBgZGVmaW5lX21hY3Jvc2BgIHRha2VzIGEgbGlzdCBvZiBgYChuYW1lLCB2YWx1ZSlgYAordHVwbGVzLCB3aGVyZSBgYG5hbWVgYCBpcyB0aGUgbmFtZSBvZiB0aGUgbWFjcm8gdG8gZGVmaW5lIChhIHN0cmluZykgYW5kCitgYHZhbHVlYGAgaXMgaXRzIHZhbHVlOiBlaXRoZXIgYSBzdHJpbmcgb3IgYGBOb25lYGAuICAoRGVmaW5pbmcgYSBtYWNybyBgYEZPT2BgCit0byBgYE5vbmVgYCBpcyB0aGUgZXF1aXZhbGVudCBvZiBhIGJhcmUgYGAjZGVmaW5lIEZPT2BgIGluIHlvdXIgQyBzb3VyY2U6IHdpdGgKK21vc3QgY29tcGlsZXJzLCB0aGlzIHNldHMgYGBGT09gYCB0byB0aGUgc3RyaW5nIGBgMWBgLikgIGBgdW5kZWZfbWFjcm9zYGAgaXMKK2p1c3QgYSBsaXN0IG9mIG1hY3JvcyB0byB1bmRlZmluZS4KKworRm9yIGV4YW1wbGU6OgorCisgICAgRXh0ZW5zaW9uKC4uLiwKKyAgICAgICAgICAgICAgZGVmaW5lX21hY3Jvcz1bKCdOREVCVUcnLCAnMScpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ0hBVkVfU1RSRlRJTUUnLCBOb25lKV0sCisgICAgICAgICAgICAgIHVuZGVmX21hY3Jvcz1bJ0hBVkVfRk9PJywgJ0hBVkVfQkFSJ10pCisKK2lzIHRoZSBlcXVpdmFsZW50IG9mIGhhdmluZyB0aGlzIGF0IHRoZSB0b3Agb2YgZXZlcnkgQyBzb3VyY2UgZmlsZTo6CisKKyAgICAjZGVmaW5lIE5ERUJVRyAxCisgICAgI2RlZmluZSBIQVZFX1NUUkZUSU1FCisgICAgI3VuZGVmIEhBVkVfRk9PCisgICAgI3VuZGVmIEhBVkVfQkFSCisKKworTGlicmFyeSBvcHRpb25zCistLS0tLS0tLS0tLS0tLS0KKworWW91IGNhbiBhbHNvIHNwZWNpZnkgdGhlIGxpYnJhcmllcyB0byBsaW5rIGFnYWluc3Qgd2hlbiBidWlsZGluZyB5b3VyIGV4dGVuc2lvbiwKK2FuZCB0aGUgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciB0aG9zZSBsaWJyYXJpZXMuICBUaGUgYGBsaWJyYXJpZXNgYCBvcHRpb24gaXMKK2EgbGlzdCBvZiBsaWJyYXJpZXMgdG8gbGluayBhZ2FpbnN0LCBgYGxpYnJhcnlfZGlyc2BgIGlzIGEgbGlzdCBvZiBkaXJlY3RvcmllcwordG8gc2VhcmNoIGZvciBsaWJyYXJpZXMgYXQgIGxpbmstdGltZSwgYW5kIGBgcnVudGltZV9saWJyYXJ5X2RpcnNgYCBpcyBhIGxpc3Qgb2YKK2RpcmVjdG9yaWVzIHRvICBzZWFyY2ggZm9yIHNoYXJlZCAoZHluYW1pY2FsbHkgbG9hZGVkKSBsaWJyYXJpZXMgYXQgcnVuLXRpbWUuCisKK0ZvciBleGFtcGxlLCBpZiB5b3UgbmVlZCB0byBsaW5rIGFnYWluc3QgbGlicmFyaWVzIGtub3duIHRvIGJlIGluIHRoZSBzdGFuZGFyZAorbGlicmFyeSBzZWFyY2ggcGF0aCBvbiB0YXJnZXQgc3lzdGVtcyA6OgorCisgICAgRXh0ZW5zaW9uKC4uLiwKKyAgICAgICAgICAgICAgbGlicmFyaWVzPVsnZ2RibScsICdyZWFkbGluZSddKQorCitJZiB5b3UgbmVlZCB0byBsaW5rIHdpdGggbGlicmFyaWVzIGluIGEgbm9uLXN0YW5kYXJkIGxvY2F0aW9uLCB5b3UnbGwgaGF2ZSB0bworaW5jbHVkZSB0aGUgbG9jYXRpb24gaW4gYGBsaWJyYXJ5X2RpcnNgYDo6CisKKyAgICBFeHRlbnNpb24oLi4uLAorICAgICAgICAgICAgICBsaWJyYXJ5X2RpcnM9WycvdXNyL1gxMVI2L2xpYiddLAorICAgICAgICAgICAgICBsaWJyYXJpZXM9WydYMTEnLCAnWHQnXSkKKworKEFnYWluLCB0aGlzIHNvcnQgb2Ygbm9uLXBvcnRhYmxlIGNvbnN0cnVjdCBzaG91bGQgYmUgYXZvaWRlZCBpZiB5b3UgaW50ZW5kIHRvCitkaXN0cmlidXRlIHlvdXIgY29kZS4pCisKKy4uIFhYWCBTaG91bGQgbWVudGlvbiBjbGliIGxpYnJhcmllcyBoZXJlIG9yIHNvbWV3aGVyZSBlbHNlIQorCisKK090aGVyIG9wdGlvbnMKKy0tLS0tLS0tLS0tLS0KKworVGhlcmUgYXJlIHN0aWxsIHNvbWUgb3RoZXIgb3B0aW9ucyB3aGljaCBjYW4gYmUgdXNlZCB0byBoYW5kbGUgc3BlY2lhbCBjYXNlcy4KKworVGhlIDpvcHRpb246YG9wdGlvbmFsYCBvcHRpb24gaXMgYSBib29sZWFuOyBpZiBpdCBpcyB0cnVlLAorYSBidWlsZCBmYWlsdXJlIGluIHRoZSBleHRlbnNpb24gd2lsbCBub3QgYWJvcnQgdGhlIGJ1aWxkIHByb2Nlc3MsIGJ1dAoraW5zdGVhZCBzaW1wbHkgbm90IGluc3RhbGwgdGhlIGZhaWxpbmcgZXh0ZW5zaW9uLgorCitUaGUgOm9wdGlvbjpgZXh0cmFfb2JqZWN0c2Agb3B0aW9uIGlzIGEgbGlzdCBvZiBvYmplY3QgZmlsZXMgdG8gYmUgcGFzc2VkIHRvIHRoZQorbGlua2VyLiBUaGVzZSBmaWxlcyBtdXN0IG5vdCBoYXZlIGV4dGVuc2lvbnMsIGFzIHRoZSBkZWZhdWx0IGV4dGVuc2lvbiBmb3IgdGhlCitjb21waWxlciBpcyB1c2VkLgorCis6b3B0aW9uOmBleHRyYV9jb21waWxlX2FyZ3NgIGFuZCA6b3B0aW9uOmBleHRyYV9saW5rX2FyZ3NgIGNhbiBiZSB1c2VkIHRvCitzcGVjaWZ5IGFkZGl0aW9uYWwgY29tbWFuZC1saW5lIG9wdGlvbnMgZm9yIHRoZSByZXNwZWN0aXZlIGNvbXBpbGVyIGFuZCBsaW5rZXIKK2NvbW1hbmQgbGluZXMuCisKKzpvcHRpb246YGV4cG9ydF9zeW1ib2xzYCBpcyBvbmx5IHVzZWZ1bCBvbiBXaW5kb3dzLiAgSXQgY2FuIGNvbnRhaW4gYSBsaXN0IG9mCitzeW1ib2xzIChmdW5jdGlvbnMgb3IgdmFyaWFibGVzKSB0byBiZSBleHBvcnRlZC4gVGhpcyBvcHRpb24gaXMgbm90IG5lZWRlZCB3aGVuCitidWlsZGluZyBjb21waWxlZCBleHRlbnNpb25zOiBEaXN0dXRpbHMgIHdpbGwgYXV0b21hdGljYWxseSBhZGQgYGBpbml0bW9kdWxlYGAKK3RvIHRoZSBsaXN0IG9mIGV4cG9ydGVkIHN5bWJvbHMuCisKK1RoZSA6b3B0aW9uOmBkZXBlbmRzYCBvcHRpb24gaXMgYSBsaXN0IG9mIGZpbGVzIHRoYXQgdGhlIGV4dGVuc2lvbiBkZXBlbmRzIG9uCisoZm9yIGV4YW1wbGUgaGVhZGVyIGZpbGVzKS4gVGhlIGJ1aWxkIGNvbW1hbmQgd2lsbCBjYWxsIHRoZSBjb21waWxlciBvbiB0aGUKK3NvdXJjZXMgdG8gcmVidWlsZCBleHRlbnNpb24gaWYgYW55IG9uIHRoaXMgZmlsZXMgaGFzIGJlZW4gbW9kaWZpZWQgc2luY2UgdGhlCitwcmV2aW91cyBidWlsZC4KKworUmVsYXRpb25zaGlwcyBiZXR3ZWVuIERpc3RyaWJ1dGlvbnMgYW5kIFBhY2thZ2VzCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworLi4gRklYTUUgcmV3cml0ZSB0byB1cGRhdGUgdG8gUEVQIDM0NSAoYnV0IHdpdGhvdXQgZGlzdC9yZWxlYXNlIGNvbmZ1c2lvbikKKworQSBkaXN0cmlidXRpb24gbWF5IHJlbGF0ZSB0byBwYWNrYWdlcyBpbiB0aHJlZSBzcGVjaWZpYyB3YXlzOgorCisjLiBJdCBjYW4gcmVxdWlyZSBwYWNrYWdlcyBvciBtb2R1bGVzLgorCisjLiBJdCBjYW4gcHJvdmlkZSBwYWNrYWdlcyBvciBtb2R1bGVzLgorCisjLiBJdCBjYW4gb2Jzb2xldGUgcGFja2FnZXMgb3IgbW9kdWxlcy4KKworVGhlc2UgcmVsYXRpb25zaGlwcyBjYW4gYmUgc3BlY2lmaWVkIHVzaW5nIGtleXdvcmQgYXJndW1lbnRzIHRvIHRoZQorOmZ1bmM6YHBhY2thZ2luZy5jb3JlLnNldHVwYCBmdW5jdGlvbi4KKworRGVwZW5kZW5jaWVzIG9uIG90aGVyIFB5dGhvbiBtb2R1bGVzIGFuZCBwYWNrYWdlcyBjYW4gYmUgc3BlY2lmaWVkIGJ5IHN1cHBseWluZwordGhlICpyZXF1aXJlcyoga2V5d29yZCBhcmd1bWVudCB0byA6ZnVuYzpgc2V0dXBgLiBUaGUgdmFsdWUgbXVzdCBiZSBhIGxpc3Qgb2YKK3N0cmluZ3MuICBFYWNoIHN0cmluZyBzcGVjaWZpZXMgYSBwYWNrYWdlIHRoYXQgaXMgcmVxdWlyZWQsIGFuZCBvcHRpb25hbGx5IHdoYXQKK3ZlcnNpb25zIGFyZSBzdWZmaWNpZW50LgorCitUbyBzcGVjaWZ5IHRoYXQgYW55IHZlcnNpb24gb2YgYSBtb2R1bGUgb3IgcGFja2FnZSBpcyByZXF1aXJlZCwgdGhlIHN0cmluZworc2hvdWxkIGNvbnNpc3QgZW50aXJlbHkgb2YgdGhlIG1vZHVsZSBvciBwYWNrYWdlIG5hbWUuIEV4YW1wbGVzIGluY2x1ZGUKK2BgJ215bW9kdWxlJ2BgIGFuZCBgYCd4bWwucGFyc2Vycy5leHBhdCdgYC4KKworSWYgc3BlY2lmaWMgdmVyc2lvbnMgYXJlIHJlcXVpcmVkLCBhIHNlcXVlbmNlIG9mIHF1YWxpZmllcnMgY2FuIGJlIHN1cHBsaWVkIGluCitwYXJlbnRoZXNlcy4gIEVhY2ggcXVhbGlmaWVyIG1heSBjb25zaXN0IG9mIGEgY29tcGFyaXNvbiBvcGVyYXRvciBhbmQgYSB2ZXJzaW9uCitudW1iZXIuICBUaGUgYWNjZXB0ZWQgY29tcGFyaXNvbiBvcGVyYXRvcnMgYXJlOjoKKworICAgIDwgICAgPiAgICA9PQorICAgIDw9ICAgPj0gICAhPQorCitUaGVzZSBjYW4gYmUgY29tYmluZWQgYnkgdXNpbmcgbXVsdGlwbGUgcXVhbGlmaWVycyBzZXBhcmF0ZWQgYnkgY29tbWFzIChhbmQKK29wdGlvbmFsIHdoaXRlc3BhY2UpLiAgSW4gdGhpcyBjYXNlLCBhbGwgb2YgdGhlIHF1YWxpZmllcnMgbXVzdCBiZSBtYXRjaGVkOyBhCitsb2dpY2FsIEFORCBpcyB1c2VkIHRvIGNvbWJpbmUgdGhlIGV2YWx1YXRpb25zLgorCitMZXQncyBsb29rIGF0IGEgYnVuY2ggb2YgZXhhbXBsZXM6CisKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IFJlcXVpcmVzIEV4cHJlc3Npb24gICAgIHwgRXhwbGFuYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKz09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSsKK3wgYGA9PTEuMGBgICAgICAgICAgICAgICAgfCBPbmx5IHZlcnNpb24gYGAxLjBgYCBpcyBjb21wYXRpYmxlICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBgYD4xLjAsICE9MS41LjEsIDwyLjBgYCB8IEFueSB2ZXJzaW9uIGFmdGVyIGBgMS4wYGAgYW5kIGJlZm9yZSBgYDIuMGBgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgICAgfCBpcyBjb21wYXRpYmxlLCBleGNlcHQgYGAxLjUuMWBgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCitOb3cgdGhhdCB3ZSBjYW4gc3BlY2lmeSBkZXBlbmRlbmNpZXMsIHdlIGFsc28gbmVlZCB0byBiZSBhYmxlIHRvIHNwZWNpZnkgd2hhdCB3ZQorcHJvdmlkZSB0aGF0IG90aGVyIGRpc3RyaWJ1dGlvbnMgY2FuIHJlcXVpcmUuICBUaGlzIGlzIGRvbmUgdXNpbmcgdGhlICpwcm92aWRlcyoKK2tleXdvcmQgYXJndW1lbnQgdG8gOmZ1bmM6YHNldHVwYC4gVGhlIHZhbHVlIGZvciB0aGlzIGtleXdvcmQgaXMgYSBsaXN0IG9mCitzdHJpbmdzLCBlYWNoIG9mIHdoaWNoIG5hbWVzIGEgUHl0aG9uIG1vZHVsZSBvciBwYWNrYWdlLCBhbmQgb3B0aW9uYWxseQoraWRlbnRpZmllcyB0aGUgdmVyc2lvbi4gIElmIHRoZSB2ZXJzaW9uIGlzIG5vdCBzcGVjaWZpZWQsIGl0IGlzIGFzc3VtZWQgdG8gbWF0Y2gKK3RoYXQgb2YgdGhlIGRpc3RyaWJ1dGlvbi4KKworU29tZSBleGFtcGxlczoKKworKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBQcm92aWRlcyBFeHByZXNzaW9uIHwgRXhwbGFuYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKz09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KworfCBgYG15cGtnYGAgICAgICAgICAgIHwgUHJvdmlkZSBgYG15cGtnYGAsIHVzaW5nIHRoZSBkaXN0cmlidXRpb24gICAgfAorfCAgICAgICAgICAgICAgICAgICAgIHwgdmVyc2lvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBgYG15cGtnICgxLjEpYGAgICAgIHwgUHJvdmlkZSBgYG15cGtnYGAgdmVyc2lvbiAxLjEsIHJlZ2FyZGxlc3Mgb2YgfAorfCAgICAgICAgICAgICAgICAgICAgIHwgdGhlIGRpc3RyaWJ1dGlvbiB2ZXJzaW9uICAgICAgICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCitBIHBhY2thZ2UgY2FuIGRlY2xhcmUgdGhhdCBpdCBvYnNvbGV0ZXMgb3RoZXIgcGFja2FnZXMgdXNpbmcgdGhlICpvYnNvbGV0ZXMqCitrZXl3b3JkIGFyZ3VtZW50LiAgVGhlIHZhbHVlIGZvciB0aGlzIGlzIHNpbWlsYXIgdG8gdGhhdCBvZiB0aGUgKnJlcXVpcmVzKgora2V5d29yZDogYSBsaXN0IG9mIHN0cmluZ3MgZ2l2aW5nIG1vZHVsZSBvciBwYWNrYWdlIHNwZWNpZmllcnMuICBFYWNoIHNwZWNpZmllcgorY29uc2lzdHMgb2YgYSBtb2R1bGUgb3IgcGFja2FnZSBuYW1lIG9wdGlvbmFsbHkgZm9sbG93ZWQgYnkgb25lIG9yIG1vcmUgdmVyc2lvbgorcXVhbGlmaWVycy4gIFZlcnNpb24gcXVhbGlmaWVycyBhcmUgZ2l2ZW4gaW4gcGFyZW50aGVzZXMgYWZ0ZXIgdGhlIG1vZHVsZSBvcgorcGFja2FnZSBuYW1lLgorCitUaGUgdmVyc2lvbnMgaWRlbnRpZmllZCBieSB0aGUgcXVhbGlmaWVycyBhcmUgdGhvc2UgdGhhdCBhcmUgb2Jzb2xldGVkIGJ5IHRoZQorZGlzdHJpYnV0aW9uIGJlaW5nIGRlc2NyaWJlZC4gIElmIG5vIHF1YWxpZmllcnMgYXJlIGdpdmVuLCBhbGwgdmVyc2lvbnMgb2YgdGhlCituYW1lZCBtb2R1bGUgb3IgcGFja2FnZSBhcmUgdW5kZXJzdG9vZCB0byBiZSBvYnNvbGV0ZWQuCisKKy4uIF9wYWNrYWdpbmctaW5zdGFsbGluZy1zY3JpcHRzOgorCitJbnN0YWxsaW5nIFNjcmlwdHMKKz09PT09PT09PT09PT09PT09PQorCitTbyBmYXIgd2UgaGF2ZSBiZWVuIGRlYWxpbmcgd2l0aCBwdXJlIGFuZCBub24tcHVyZSBQeXRob24gbW9kdWxlcywgd2hpY2ggYXJlCit1c3VhbGx5IG5vdCBydW4gYnkgdGhlbXNlbHZlcyBidXQgaW1wb3J0ZWQgYnkgc2NyaXB0cy4KKworU2NyaXB0cyBhcmUgZmlsZXMgY29udGFpbmluZyBQeXRob24gc291cmNlIGNvZGUsIGludGVuZGVkIHRvIGJlIHN0YXJ0ZWQgZnJvbSB0aGUKK2NvbW1hbmQgbGluZS4gIFNjcmlwdHMgZG9uJ3QgcmVxdWlyZSBEaXN0dXRpbHMgdG8gZG8gYW55dGhpbmcgdmVyeSBjb21wbGljYXRlZC4KK1RoZSBvbmx5IGNsZXZlciBmZWF0dXJlIGlzIHRoYXQgaWYgdGhlIGZpcnN0IGxpbmUgb2YgdGhlIHNjcmlwdCBzdGFydHMgd2l0aAorYGAjIWBgIGFuZCBjb250YWlucyB0aGUgd29yZCAicHl0aG9uIiwgdGhlIERpc3R1dGlscyB3aWxsIGFkanVzdCB0aGUgZmlyc3QgbGluZQordG8gcmVmZXIgdG8gdGhlIGN1cnJlbnQgaW50ZXJwcmV0ZXIgbG9jYXRpb24uIEJ5IGRlZmF1bHQsIGl0IGlzIHJlcGxhY2VkIHdpdGgKK3RoZSBjdXJyZW50IGludGVycHJldGVyIGxvY2F0aW9uLiAgVGhlIDpvcHRpb246YC0tZXhlY3V0YWJsZWAgKG9yIDpvcHRpb246YC1lYCkKK29wdGlvbiB3aWxsIGFsbG93IHRoZSBpbnRlcnByZXRlciBwYXRoIHRvIGJlIGV4cGxpY2l0bHkgb3ZlcnJpZGRlbi4KKworVGhlIDpvcHRpb246YHNjcmlwdHNgIG9wdGlvbiBzaW1wbHkgaXMgYSBsaXN0IG9mIGZpbGVzIHRvIGJlIGhhbmRsZWQgaW4gdGhpcword2F5LiAgRnJvbSB0aGUgUHlYTUwgc2V0dXAgc2NyaXB0OjoKKworICAgIHNldHVwKC4uLiwKKyAgICAgICAgICBzY3JpcHRzPVsnc2NyaXB0cy94bWxwcm9jX3BhcnNlJywgJ3NjcmlwdHMveG1scHJvY192YWwnXSkKKworQWxsIHRoZSBzY3JpcHRzIHdpbGwgYWxzbyBiZSBhZGRlZCB0byB0aGUgYGBNQU5JRkVTVGBgIGZpbGUgaWYgbm8gdGVtcGxhdGUgaXMKK3Byb3ZpZGVkLiBTZWUgOnJlZjpgcGFja2FnaW5nLW1hbmlmZXN0YC4KKworLi4gX3BhY2thZ2luZy1pbnN0YWxsaW5nLXBhY2thZ2UtZGF0YToKKworSW5zdGFsbGluZyBQYWNrYWdlIERhdGEKKz09PT09PT09PT09PT09PT09PT09PT09CisKK09mdGVuLCBhZGRpdGlvbmFsIGZpbGVzIG5lZWQgdG8gYmUgaW5zdGFsbGVkIGludG8gYSBwYWNrYWdlLiAgVGhlc2UgZmlsZXMgYXJlCitvZnRlbiBkYXRhIHRoYXQncyBjbG9zZWx5IHJlbGF0ZWQgdG8gdGhlIHBhY2thZ2UncyBpbXBsZW1lbnRhdGlvbiwgb3IgdGV4dCBmaWxlcworY29udGFpbmluZyBkb2N1bWVudGF0aW9uIHRoYXQgbWlnaHQgYmUgb2YgaW50ZXJlc3QgdG8gcHJvZ3JhbW1lcnMgdXNpbmcgdGhlCitwYWNrYWdlLiAgVGhlc2UgZmlsZXMgYXJlIGNhbGxlZCA6ZGZuOmBwYWNrYWdlIGRhdGFgLgorCitQYWNrYWdlIGRhdGEgY2FuIGJlIGFkZGVkIHRvIHBhY2thZ2VzIHVzaW5nIHRoZSBgYHBhY2thZ2VfZGF0YWBgIGtleXdvcmQKK2FyZ3VtZW50IHRvIHRoZSA6ZnVuYzpgc2V0dXBgIGZ1bmN0aW9uLiAgVGhlIHZhbHVlIG11c3QgYmUgYSBtYXBwaW5nIGZyb20KK3BhY2thZ2UgbmFtZSB0byBhIGxpc3Qgb2YgcmVsYXRpdmUgcGF0aCBuYW1lcyB0aGF0IHNob3VsZCBiZSBjb3BpZWQgaW50byB0aGUKK3BhY2thZ2UuICBUaGUgcGF0aHMgYXJlIGludGVycHJldGVkIGFzIHJlbGF0aXZlIHRvIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUKK3BhY2thZ2UgKGluZm9ybWF0aW9uIGZyb20gdGhlIGBgcGFja2FnZV9kaXJgYCBtYXBwaW5nIGlzIHVzZWQgaWYgYXBwcm9wcmlhdGUpOwordGhhdCBpcywgdGhlIGZpbGVzIGFyZSBleHBlY3RlZCB0byBiZSBwYXJ0IG9mIHRoZSBwYWNrYWdlIGluIHRoZSBzb3VyY2UKK2RpcmVjdG9yaWVzLiBUaGV5IG1heSBjb250YWluIGdsb2IgcGF0dGVybnMgYXMgd2VsbC4KKworVGhlIHBhdGggbmFtZXMgbWF5IGNvbnRhaW4gZGlyZWN0b3J5IHBvcnRpb25zOyBhbnkgbmVjZXNzYXJ5IGRpcmVjdG9yaWVzIHdpbGwgYmUKK2NyZWF0ZWQgaW4gdGhlIGluc3RhbGxhdGlvbi4KKworRm9yIGV4YW1wbGUsIGlmIGEgcGFja2FnZSBzaG91bGQgY29udGFpbiBhIHN1YmRpcmVjdG9yeSB3aXRoIHNldmVyYWwgZGF0YSBmaWxlcywKK3RoZSBmaWxlcyBjYW4gYmUgYXJyYW5nZWQgbGlrZSB0aGlzIGluIHRoZSBzb3VyY2UgdHJlZTo6CisKKyAgICBzZXR1cC5weQorICAgIHNyYy8KKyAgICAgICAgbXlwa2cvCisgICAgICAgICAgICAgIF9faW5pdF9fLnB5CisgICAgICAgICAgICAgIG1vZHVsZS5weQorICAgICAgICAgICAgICBkYXRhLworICAgICAgICAgICAgICAgICAgIHRhYmxlcy5kYXQKKyAgICAgICAgICAgICAgICAgICBzcG9vbnMuZGF0CisgICAgICAgICAgICAgICAgICAgZm9ya3MuZGF0CisKK1RoZSBjb3JyZXNwb25kaW5nIGNhbGwgdG8gOmZ1bmM6YHNldHVwYCBtaWdodCBiZTo6CisKKyAgICBzZXR1cCguLi4sCisgICAgICAgICAgcGFja2FnZXM9WydteXBrZyddLAorICAgICAgICAgIHBhY2thZ2VfZGlyPXsnbXlwa2cnOiAnc3JjL215cGtnJ30sCisgICAgICAgICAgcGFja2FnZV9kYXRhPXsnbXlwa2cnOiBbJ2RhdGEvKi5kYXQnXX0pCisKKworQWxsIHRoZSBmaWxlcyB0aGF0IG1hdGNoIGBgcGFja2FnZV9kYXRhYGAgd2lsbCBiZSBhZGRlZCB0byB0aGUgYGBNQU5JRkVTVGBgCitmaWxlIGlmIG5vIHRlbXBsYXRlIGlzIHByb3ZpZGVkLiBTZWUgOnJlZjpgcGFja2FnaW5nLW1hbmlmZXN0YC4KKworCisuLiBfcGFja2FnaW5nLWFkZGl0aW9uYWwtZmlsZXM6CisKK0luc3RhbGxpbmcgQWRkaXRpb25hbCBGaWxlcworPT09PT09PT09PT09PT09PT09PT09PT09PT09CisKK1RoZSA6b3B0aW9uOmBkYXRhX2ZpbGVzYCBvcHRpb24gY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBhZGRpdGlvbmFsIGZpbGVzIG5lZWRlZAorYnkgdGhlIG1vZHVsZSBkaXN0cmlidXRpb246IGNvbmZpZ3VyYXRpb24gZmlsZXMsIG1lc3NhZ2UgY2F0YWxvZ3MsIGRhdGEgZmlsZXMsCithbnl0aGluZyB3aGljaCBkb2Vzbid0IGZpdCBpbiB0aGUgcHJldmlvdXMgY2F0ZWdvcmllcy4KKworOm9wdGlvbjpgZGF0YV9maWxlc2Agc3BlY2lmaWVzIGEgc2VxdWVuY2Ugb2YgKCpkaXJlY3RvcnkqLCAqZmlsZXMqKSBwYWlycyBpbiB0aGUKK2ZvbGxvd2luZyB3YXk6OgorCisgICAgc2V0dXAoLi4uLAorICAgICAgICAgIGRhdGFfZmlsZXM9WygnYml0bWFwcycsIFsnYm0vYjEuZ2lmJywgJ2JtL2IyLmdpZiddKSwKKyAgICAgICAgICAgICAgICAgICAgICAoJ2NvbmZpZycsIFsnY2ZnL2RhdGEuY2ZnJ10pLAorICAgICAgICAgICAgICAgICAgICAgICgnL2V0Yy9pbml0LmQnLCBbJ2luaXQtc2NyaXB0J10pXSkKKworTm90ZSB0aGF0IHlvdSBjYW4gc3BlY2lmeSB0aGUgZGlyZWN0b3J5IG5hbWVzIHdoZXJlIHRoZSBkYXRhIGZpbGVzIHdpbGwgYmUKK2luc3RhbGxlZCwgYnV0IHlvdSBjYW5ub3QgcmVuYW1lIHRoZSBkYXRhIGZpbGVzIHRoZW1zZWx2ZXMuCisKK0VhY2ggKCpkaXJlY3RvcnkqLCAqZmlsZXMqKSBwYWlyIGluIHRoZSBzZXF1ZW5jZSBzcGVjaWZpZXMgdGhlIGluc3RhbGxhdGlvbgorZGlyZWN0b3J5IGFuZCB0aGUgZmlsZXMgdG8gaW5zdGFsbCB0aGVyZS4gIElmICpkaXJlY3RvcnkqIGlzIGEgcmVsYXRpdmUgcGF0aCwgaXQKK2lzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBpbnN0YWxsYXRpb24gcHJlZml4IChQeXRob24ncyBgYHN5cy5wcmVmaXhgYCBmb3IKK3B1cmUtUHl0aG9uIHBhY2thZ2VzLCBgYHN5cy5leGVjX3ByZWZpeGBgIGZvciBwYWNrYWdlcyB0aGF0IGNvbnRhaW4gZXh0ZW5zaW9uCittb2R1bGVzKS4gIEVhY2ggZmlsZSBuYW1lIGluICpmaWxlcyogaXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlCis6ZmlsZTpgc2V0dXAucHlgIHNjcmlwdCBhdCB0aGUgdG9wIG9mIHRoZSBwYWNrYWdlIHNvdXJjZSBkaXN0cmlidXRpb24uICBObworZGlyZWN0b3J5IGluZm9ybWF0aW9uIGZyb20gKmZpbGVzKiBpcyB1c2VkIHRvIGRldGVybWluZSB0aGUgZmluYWwgbG9jYXRpb24gb2YKK3RoZSBpbnN0YWxsZWQgZmlsZTsgb25seSB0aGUgbmFtZSBvZiB0aGUgZmlsZSBpcyB1c2VkLgorCitZb3UgY2FuIHNwZWNpZnkgdGhlIDpvcHRpb246YGRhdGFfZmlsZXNgIG9wdGlvbnMgYXMgYSBzaW1wbGUgc2VxdWVuY2Ugb2YgZmlsZXMKK3dpdGhvdXQgc3BlY2lmeWluZyBhIHRhcmdldCBkaXJlY3RvcnksIGJ1dCB0aGlzIGlzIG5vdCByZWNvbW1lbmRlZCwgYW5kIHRoZQorOmNvbW1hbmQ6YGluc3RhbGxfZGlzdGAgY29tbWFuZCB3aWxsIHByaW50IGEgd2FybmluZyBpbiB0aGlzIGNhc2UuIFRvIGluc3RhbGwgZGF0YQorZmlsZXMgZGlyZWN0bHkgaW4gdGhlIHRhcmdldCBkaXJlY3RvcnksIGFuIGVtcHR5IHN0cmluZyBzaG91bGQgYmUgZ2l2ZW4gYXMgdGhlCitkaXJlY3RvcnkuCisKK0FsbCB0aGUgZmlsZXMgdGhhdCBtYXRjaCBgYGRhdGFfZmlsZXNgYCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBgYE1BTklGRVNUYGAgZmlsZQoraWYgbm8gdGVtcGxhdGUgaXMgcHJvdmlkZWQuIFNlZSA6cmVmOmBwYWNrYWdpbmctbWFuaWZlc3RgLgorCisKKworLi4gX3BhY2thZ2luZy1tZXRhZGF0YToKKworTWV0YWRhdGEgcmVmZXJlbmNlCis9PT09PT09PT09PT09PT09PT0KKworVGhlIHNldHVwIHNjcmlwdCBtYXkgaW5jbHVkZSBhZGRpdGlvbmFsIG1ldGFkYXRhIGJleW9uZCB0aGUgbmFtZSBhbmQgdmVyc2lvbi4KK1RoaXMgdGFibGUgZGVzY3JpYmVzIHJlcXVpcmVkIGFuZCBhZGRpdGlvbmFsIGluZm9ybWF0aW9uOgorCisuLiBUT0RPIHN5bmNocm9uaXplIHdpdGggc2V0dXBjZmc7IGxpbmsgdG8gaXQgKGJ1dCBkb24ndCByZW1vdmUgaXQsIGl0J3MgYQorICAgdXNlZnVsIHN1bW1hcnkpCisKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgTWV0YS1EYXRhICAgICAgICAgICAgfCBEZXNjcmlwdGlvbiAgICAgICAgICAgICAgIHwgVmFsdWUgICAgICAgICAgIHwgTm90ZXMgIHwKKys9PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PSs9PT09PT09PSsKK3wgYGBuYW1lYGAgICAgICAgICAgICAgfCBuYW1lIG9mIHRoZSBwcm9qZWN0ICAgICAgIHwgc2hvcnQgc3RyaW5nICAgIHwgXCgxKSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGB2ZXJzaW9uYGAgICAgICAgICAgfCB2ZXJzaW9uIG9mIHRoaXMgcmVsZWFzZSAgIHwgc2hvcnQgc3RyaW5nICAgIHwgKDEpKDIpIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBhdXRob3JgYCAgICAgICAgICAgfCBwcm9qZWN0IGF1dGhvcidzIG5hbWUgICAgIHwgc2hvcnQgc3RyaW5nICAgIHwgXCgzKSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBhdXRob3JfZW1haWxgYCAgICAgfCBlbWFpbCBhZGRyZXNzIG9mIHRoZSAgICAgIHwgZW1haWwgYWRkcmVzcyAgIHwgXCgzKSAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0IGF1dGhvciAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBtYWludGFpbmVyYGAgICAgICAgfCBwcm9qZWN0IG1haW50YWluZXIncyBuYW1lIHwgc2hvcnQgc3RyaW5nICAgIHwgXCgzKSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBtYWludGFpbmVyX2VtYWlsYGAgfCBlbWFpbCBhZGRyZXNzIG9mIHRoZSAgICAgIHwgZW1haWwgYWRkcmVzcyAgIHwgXCgzKSAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0IG1haW50YWluZXIgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBob21lX3BhZ2VgYCAgICAgICAgfCBob21lIHBhZ2UgZm9yIHRoZSBwcm9qZWN0IHwgVVJMICAgICAgICAgICAgIHwgXCgxKSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBzdW1tYXJ5YGAgICAgICAgICAgfCBzaG9ydCBkZXNjcmlwdGlvbiBvZiB0aGUgIHwgc2hvcnQgc3RyaW5nICAgIHwgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBkZXNjcmlwdGlvbmBgICAgICAgfCBsb25nZXIgZGVzY3JpcHRpb24gb2YgdGhlIHwgbG9uZyBzdHJpbmcgICAgIHwgXCg1KSAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0ICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBkb3dubG9hZF91cmxgYCAgICAgfCBsb2NhdGlvbiB3aGVyZSB0aGUgICAgICAgIHwgVVJMICAgICAgICAgICAgIHwgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgfCBwcm9qZWN0IG1heSBiZSBkb3dubG9hZGVkIHwgICAgICAgICAgICAgICAgIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBjbGFzc2lmaWVyc2BgICAgICAgfCBhIGxpc3Qgb2YgY2xhc3NpZmllcnMgICAgIHwgbGlzdCBvZiBzdHJpbmdzIHwgXCg0KSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBwbGF0Zm9ybXNgYCAgICAgICAgfCBhIGxpc3Qgb2YgcGxhdGZvcm1zICAgICAgIHwgbGlzdCBvZiBzdHJpbmdzIHwgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKK3wgYGBsaWNlbnNlYGAgICAgICAgICAgfCBsaWNlbnNlIGZvciB0aGUgcmVsZWFzZSAgIHwgc2hvcnQgc3RyaW5nICAgIHwgXCg2KSAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLSsKKworTm90ZXM6CisKKygxKQorICAgIFRoZXNlIGZpZWxkcyBhcmUgcmVxdWlyZWQuCisKKygyKQorICAgIEl0IGlzIHJlY29tbWVuZGVkIHRoYXQgdmVyc2lvbnMgdGFrZSB0aGUgZm9ybSAqbWFqb3IubWlub3JbLnBhdGNoWy5zdWJdXSouCisKKygzKQorICAgIEVpdGhlciB0aGUgYXV0aG9yIG9yIHRoZSBtYWludGFpbmVyIG11c3QgYmUgaWRlbnRpZmllZC4KKworKDQpCisgICAgVGhlIGxpc3Qgb2YgY2xhc3NpZmllcnMgaXMgYXZhaWxhYmxlIGZyb20gdGhlIGBQeVBJIHdlYnNpdGUKKyAgICA8aHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpPmBfLiBTZWUgYWxzbyA6bW9kOmBwYWNrYWdpbmcuY3JlYXRlYC4KKworKDUpCisgICAgVGhlIGBgZGVzY3JpcHRpb25gYCBmaWVsZCBpcyB1c2VkIGJ5IFB5UEkgd2hlbiB5b3UgYXJlIHJlZ2lzdGVyaW5nIGEKKyAgICByZWxlYXNlLCB0byBidWlsZCBpdHMgUHlQSSBwYWdlLgorCisoNikKKyAgICBUaGUgYGBsaWNlbnNlYGAgZmllbGQgaXMgYSB0ZXh0IGluZGljYXRpbmcgdGhlIGxpY2Vuc2UgY292ZXJpbmcgdGhlCisgICAgZGlzdHJpYnV0aW9uIHdoZXJlIHRoZSBsaWNlbnNlIGlzIG5vdCBhIHNlbGVjdGlvbiBmcm9tIHRoZSAiTGljZW5zZSIgVHJvdmUKKyAgICBjbGFzc2lmaWVycy4gU2VlIHRoZSBgYENsYXNzaWZpZXJgYCBmaWVsZC4gTm90aWNlIHRoYXQKKyAgICB0aGVyZSdzIGEgYGBsaWNlbmNlYGAgZGlzdHJpYnV0aW9uIG9wdGlvbiB3aGljaCBpcyBkZXByZWNhdGVkIGJ1dCBzdGlsbAorICAgIGFjdHMgYXMgYW4gYWxpYXMgZm9yIGBgbGljZW5zZWBgLgorCisnc2hvcnQgc3RyaW5nJworICAgIEEgc2luZ2xlIGxpbmUgb2YgdGV4dCwgbm90IG1vcmUgdGhhbiAyMDAgY2hhcmFjdGVycy4KKworJ2xvbmcgc3RyaW5nJworICAgIE11bHRpcGxlIGxpbmVzIG9mIHBsYWluIHRleHQgaW4gcmVTdHJ1Y3R1cmVkVGV4dCBmb3JtYXQgKHNlZQorICAgIGh0dHA6Ly9kb2N1dGlscy5zZi5uZXQvKS4KKworJ2xpc3Qgb2Ygc3RyaW5ncycKKyAgICBTZWUgYmVsb3cuCisKK0luIFB5dGhvbiAyLngsICJzdHJpbmcgdmFsdWUiIG1lYW5zIGEgdW5pY29kZSBvYmplY3QuIElmIGEgYnl0ZSBzdHJpbmcgKHN0ciBvcgorYnl0ZXMpIGlzIGdpdmVuLCBpdCBoYXMgdG8gYmUgdmFsaWQgQVNDSUkuCisKKy4uIFRPRE8gbW92ZSB0aGlzIHNlY3Rpb24gdG8gdGhlIHZlcnNpb24gZG9jdW1lbnQsIGtlZXAgYSBzdW1tYXJ5LCBhZGQgYSBsaW5rCisKK0VuY29kaW5nIHRoZSB2ZXJzaW9uIGluZm9ybWF0aW9uIGlzIGFuIGFydCBpbiBpdHNlbGYuIFB5dGhvbiBwcm9qZWN0cyBnZW5lcmFsbHkKK2FkaGVyZSB0byB0aGUgdmVyc2lvbiBmb3JtYXQgKm1ham9yLm1pbm9yWy5wYXRjaF1bc3ViXSouIFRoZSBtYWpvciBudW1iZXIgaXMgMAorZm9yIGluaXRpYWwsIGV4cGVyaW1lbnRhbCByZWxlYXNlcyBvZiBzb2Z0d2FyZS4gSXQgaXMgaW5jcmVtZW50ZWQgZm9yIHJlbGVhc2VzCit0aGF0IHJlcHJlc2VudCBtYWpvciBtaWxlc3RvbmVzIGluIGEgcHJvamVjdC4gVGhlIG1pbm9yIG51bWJlciBpcyBpbmNyZW1lbnRlZAord2hlbiBpbXBvcnRhbnQgbmV3IGZlYXR1cmVzIGFyZSBhZGRlZCB0byB0aGUgcHJvamVjdC4gVGhlIHBhdGNoIG51bWJlcgoraW5jcmVtZW50cyB3aGVuIGJ1Zy1maXggcmVsZWFzZXMgYXJlIG1hZGUuIEFkZGl0aW9uYWwgdHJhaWxpbmcgdmVyc2lvbgoraW5mb3JtYXRpb24gaXMgc29tZXRpbWVzIHVzZWQgdG8gaW5kaWNhdGUgc3ViLXJlbGVhc2VzLiAgVGhlc2UgYXJlCisiYTEsYTIsLi4uLGFOIiAoZm9yIGFscGhhIHJlbGVhc2VzLCB3aGVyZSBmdW5jdGlvbmFsaXR5IGFuZCBBUEkgbWF5IGNoYW5nZSksCisiYjEsYjIsLi4uLGJOIiAoZm9yIGJldGEgcmVsZWFzZXMsIHdoaWNoIG9ubHkgZml4IGJ1Z3MpIGFuZCAicHIxLHByMiwuLi4scHJOIgorKGZvciBmaW5hbCBwcmUtcmVsZWFzZSByZWxlYXNlIHRlc3RpbmcpLiBTb21lIGV4YW1wbGVzOgorCiswLjEuMAorICAgIHRoZSBmaXJzdCwgZXhwZXJpbWVudGFsIHJlbGVhc2Ugb2YgYSBwcm9qZWN0CisKKzEuMC4xYTIKKyAgICB0aGUgc2Vjb25kIGFscGhhIHJlbGVhc2Ugb2YgdGhlIGZpcnN0IHBhdGNoIHZlcnNpb24gb2YgMS4wCisKKzpvcHRpb246YGNsYXNzaWZpZXJzYCBhcmUgc3BlY2lmaWVkIGluIGEgUHl0aG9uIGxpc3Q6OgorCisgICAgc2V0dXAoLi4uLAorICAgICAgICAgIGNsYXNzaWZpZXJzPVsKKyAgICAgICAgICAgICAgJ0RldmVsb3BtZW50IFN0YXR1cyA6OiA0IC0gQmV0YScsCisgICAgICAgICAgICAgICdFbnZpcm9ubWVudCA6OiBDb25zb2xlJywKKyAgICAgICAgICAgICAgJ0Vudmlyb25tZW50IDo6IFdlYiBFbnZpcm9ubWVudCcsCisgICAgICAgICAgICAgICdJbnRlbmRlZCBBdWRpZW5jZSA6OiBFbmQgVXNlcnMvRGVza3RvcCcsCisgICAgICAgICAgICAgICdJbnRlbmRlZCBBdWRpZW5jZSA6OiBEZXZlbG9wZXJzJywKKyAgICAgICAgICAgICAgJ0ludGVuZGVkIEF1ZGllbmNlIDo6IFN5c3RlbSBBZG1pbmlzdHJhdG9ycycsCisgICAgICAgICAgICAgICdMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBQeXRob24gU29mdHdhcmUgRm91bmRhdGlvbiBMaWNlbnNlJywKKyAgICAgICAgICAgICAgJ09wZXJhdGluZyBTeXN0ZW0gOjogTWFjT1MgOjogTWFjT1MgWCcsCisgICAgICAgICAgICAgICdPcGVyYXRpbmcgU3lzdGVtIDo6IE1pY3Jvc29mdCA6OiBXaW5kb3dzJywKKyAgICAgICAgICAgICAgJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVgnLAorICAgICAgICAgICAgICAnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uJywKKyAgICAgICAgICAgICAgJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IEVtYWlsJywKKyAgICAgICAgICAgICAgJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcycsCisgICAgICAgICAgICAgICdUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBCdWcgVHJhY2tpbmcnLAorICAgICAgICAgICAgICBdKQorCisKK0RlYnVnZ2luZyB0aGUgc2V0dXAgc2NyaXB0Cis9PT09PT09PT09PT09PT09PT09PT09PT09PQorCitTb21ldGltZXMgdGhpbmdzIGdvIHdyb25nLCBhbmQgdGhlIHNldHVwIHNjcmlwdCBkb2Vzbid0IGRvIHdoYXQgdGhlIGRldmVsb3Blcgord2FudHMuCisKK0Rpc3R1dGlscyBjYXRjaGVzIGFueSBleGNlcHRpb25zIHdoZW4gcnVubmluZyB0aGUgc2V0dXAgc2NyaXB0LCBhbmQgcHJpbnQgYQorc2ltcGxlIGVycm9yIG1lc3NhZ2UgYmVmb3JlIHRoZSBzY3JpcHQgaXMgdGVybWluYXRlZC4gIFRoZSBtb3RpdmF0aW9uIGZvciB0aGlzCitiZWhhdmlvdXIgaXMgdG8gbm90IGNvbmZ1c2UgYWRtaW5pc3RyYXRvcnMgd2hvIGRvbid0IGtub3cgbXVjaCBhYm91dCBQeXRob24gYW5kCithcmUgdHJ5aW5nIHRvIGluc3RhbGwgYSBwcm9qZWN0LiAgSWYgdGhleSBnZXQgYSBiaWcgbG9uZyB0cmFjZWJhY2sgZnJvbSBkZWVwCitpbnNpZGUgdGhlIGd1dHMgb2YgRGlzdHV0aWxzLCB0aGV5IG1heSB0aGluayB0aGUgcHJvamVjdCBvciB0aGUgUHl0aG9uCitpbnN0YWxsYXRpb24gaXMgYnJva2VuIGJlY2F1c2UgdGhleSBkb24ndCByZWFkIGFsbCB0aGUgd2F5IGRvd24gdG8gdGhlIGJvdHRvbQorYW5kIHNlZSB0aGF0IGl0J3MgYSBwZXJtaXNzaW9uIHByb2JsZW0uCisKKy4uIEZJWE1FIERJU1RVVElMU19ERUJVRyBpcyBkZWFkLCBkb2N1bWVudCBsb2dnaW5nL3dhcm5pbmdzIGhlcmUKKworT24gdGhlIG90aGVyIGhhbmQsIHRoaXMgZG9lc24ndCBoZWxwIHRoZSBkZXZlbG9wZXIgdG8gZmluZCB0aGUgY2F1c2Ugb2YgdGhlCitmYWlsdXJlLiBGb3IgdGhpcyBwdXJwb3NlLCB0aGUgRElTVFVUSUxTX0RFQlVHIGVudmlyb25tZW50IHZhcmlhYmxlIGNhbiBiZSBzZXQKK3RvIGFueXRoaW5nIGV4Y2VwdCBhbiBlbXB0eSBzdHJpbmcsIGFuZCBQYWNrYWdpbmcgd2lsbCBub3cgcHJpbnQgZGV0YWlsZWQKK2luZm9ybWF0aW9uIGFib3V0IHdoYXQgaXQgaXMgZG9pbmcsIGFuZCBwcmludHMgdGhlIGZ1bGwgdHJhY2ViYWNrIGluIGNhc2UgYW4KK2V4Y2VwdGlvbiBvY2N1cnMuCmRpZmYgLS1naXQgYS9Eb2MvcGFja2FnaW5nL3NvdXJjZWRpc3QucnN0IGIvRG9jL3BhY2thZ2luZy9zb3VyY2VkaXN0LnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yY2VkYzE1Ci0tLSAvZGV2L251bGwKKysrIGIvRG9jL3BhY2thZ2luZy9zb3VyY2VkaXN0LnJzdApAQCAtMCwwICsxLDI2NiBAQAorLi4gX3BhY2thZ2luZy1zb3VyY2UtZGlzdDoKKworKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitDcmVhdGluZyBhIFNvdXJjZSBEaXN0cmlidXRpb24KKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorCitBcyBzaG93biBpbiBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1zaW1wbGUtZXhhbXBsZWAsIHlvdSB1c2UgdGhlIDpjb21tYW5kOmBzZGlzdGAgY29tbWFuZAordG8gY3JlYXRlIGEgc291cmNlIGRpc3RyaWJ1dGlvbi4gIEluIHRoZSBzaW1wbGVzdCBjYXNlLCA6OgorCisgICBweXRob24gc2V0dXAucHkgc2Rpc3QKKworKGFzc3VtaW5nIHlvdSBoYXZlbid0IHNwZWNpZmllZCBhbnkgOmNvbW1hbmQ6YHNkaXN0YCBvcHRpb25zIGluIHRoZSBzZXR1cCBzY3JpcHQKK29yIGNvbmZpZyBmaWxlKSwgOmNvbW1hbmQ6YHNkaXN0YCBjcmVhdGVzIHRoZSBhcmNoaXZlIG9mIHRoZSBkZWZhdWx0IGZvcm1hdCBmb3IKK3RoZSBjdXJyZW50IHBsYXRmb3JtLiAgVGhlIGRlZmF1bHQgZm9ybWF0IGlzIGEgZ3ppcCdlZCB0YXIgZmlsZQorKDpmaWxlOmAudGFyLmd6YCkgb24gVW5peCwgYW5kIFpJUCBmaWxlIG9uIFdpbmRvd3MuCisKK1lvdSBjYW4gc3BlY2lmeSBhcyBtYW55IGZvcm1hdHMgYXMgeW91IGxpa2UgdXNpbmcgdGhlIDpvcHRpb246YC0tZm9ybWF0c2AKK29wdGlvbiwgZm9yIGV4YW1wbGU6OgorCisgICBweXRob24gc2V0dXAucHkgc2Rpc3QgLS1mb3JtYXRzPWd6dGFyLHppcAorCit0byBjcmVhdGUgYSBnemlwcGVkIHRhcmJhbGwgYW5kIGEgemlwIGZpbGUuICBUaGUgYXZhaWxhYmxlIGZvcm1hdHMgYXJlOgorCisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IEZvcm1hdCAgICB8IERlc2NyaXB0aW9uICAgICAgICAgICAgIHwgTm90ZXMgICB8CisrPT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT0rCit8IGBgemlwYGAgICB8IHppcCBmaWxlICg6ZmlsZTpgLnppcGApIHwgKDEpLCgzKSB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IGBgZ3p0YXJgYCB8IGd6aXAnZWQgdGFyIGZpbGUgICAgICAgIHwgXCgyKSAgICB8Cit8ICAgICAgICAgICB8ICg6ZmlsZTpgLnRhci5nemApICAgICAgIHwgICAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IGBgYnp0YXJgYCB8IGJ6aXAyJ2VkIHRhciBmaWxlICAgICAgIHwgICAgICAgICB8Cit8ICAgICAgICAgICB8ICg6ZmlsZTpgLnRhci5iejJgKSAgICAgIHwgICAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCit8IGBgdGFyYGAgICB8IHRhciBmaWxlICg6ZmlsZTpgLnRhcmApIHwgICAgICAgICB8CisrLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rCisKK05vdGVzOgorCisoMSkKKyAgIGRlZmF1bHQgb24gV2luZG93cworCisoMikKKyAgIGRlZmF1bHQgb24gVW5peAorCisoMykKKyAgIHJlcXVpcmVzIGVpdGhlciBleHRlcm5hbCA6cHJvZ3JhbTpgemlwYCB1dGlsaXR5IG9yIDptb2Q6YHppcGZpbGVgIG1vZHVsZSAocGFydAorICAgb2YgdGhlIHN0YW5kYXJkIFB5dGhvbiBsaWJyYXJ5IHNpbmNlIFB5dGhvbiAxLjYpCisKK1doZW4gdXNpbmcgYW55IGBgdGFyYGAgZm9ybWF0IChgYGd6dGFyYGAsIGBgYnp0YXJgYCBvcgorYGB0YXJgYCkgdW5kZXIgVW5peCwgeW91IGNhbiBzcGVjaWZ5IHRoZSBgYG93bmVyYGAgYW5kIGBgZ3JvdXBgYCBuYW1lcwordGhhdCB3aWxsIGJlIHNldCBmb3IgZWFjaCBtZW1iZXIgb2YgdGhlIGFyY2hpdmUuCisKK0ZvciBleGFtcGxlLCBpZiB5b3Ugd2FudCBhbGwgZmlsZXMgb2YgdGhlIGFyY2hpdmUgdG8gYmUgb3duZWQgYnkgcm9vdDo6CisKKyAgICBweXRob24gc2V0dXAucHkgc2Rpc3QgLS1vd25lcj1yb290IC0tZ3JvdXA9cm9vdAorCisKKy4uIF9wYWNrYWdpbmctbWFuaWZlc3Q6CisKK1NwZWNpZnlpbmcgdGhlIGZpbGVzIHRvIGRpc3RyaWJ1dGUKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworSWYgeW91IGRvbid0IHN1cHBseSBhbiBleHBsaWNpdCBsaXN0IG9mIGZpbGVzIChvciBpbnN0cnVjdGlvbnMgb24gaG93IHRvCitnZW5lcmF0ZSBvbmUpLCB0aGUgOmNvbW1hbmQ6YHNkaXN0YCBjb21tYW5kIHB1dHMgYSBtaW5pbWFsIGRlZmF1bHQgc2V0IGludG8gdGhlCitzb3VyY2UgZGlzdHJpYnV0aW9uOgorCisqIGFsbCBQeXRob24gc291cmNlIGZpbGVzIGltcGxpZWQgYnkgdGhlIDpvcHRpb246YHB5X21vZHVsZXNgIGFuZAorICA6b3B0aW9uOmBwYWNrYWdlc2Agb3B0aW9ucworCisqIGFsbCBDIHNvdXJjZSBmaWxlcyBtZW50aW9uZWQgaW4gdGhlIDpvcHRpb246YGV4dF9tb2R1bGVzYCBvcgorICA6b3B0aW9uOmBsaWJyYXJpZXNgIG9wdGlvbnMKKworKiBzY3JpcHRzIGlkZW50aWZpZWQgYnkgdGhlIDpvcHRpb246YHNjcmlwdHNgIG9wdGlvbgorICBTZWUgOnJlZjpgcGFja2FnaW5nLWluc3RhbGxpbmctc2NyaXB0c2AuCisKKyogYW55dGhpbmcgdGhhdCBsb29rcyBsaWtlIGEgdGVzdCBzY3JpcHQ6IDpmaWxlOmB0ZXN0L3Rlc3RcKi5weWAgKGN1cnJlbnRseSwgdGhlCisgIFBhY2thZ2luZyBkb24ndCBkbyBhbnl0aGluZyB3aXRoIHRlc3Qgc2NyaXB0cyBleGNlcHQgaW5jbHVkZSB0aGVtIGluIHNvdXJjZQorICBkaXN0cmlidXRpb25zLCBidXQgaW4gdGhlIGZ1dHVyZSB0aGVyZSB3aWxsIGJlIGEgc3RhbmRhcmQgZm9yIHRlc3RpbmcgUHl0aG9uCisgIG1vZHVsZSBkaXN0cmlidXRpb25zKQorCisqIHRoZSBjb25maWd1cmF0aW9uIGZpbGUgOmZpbGU6YHNldHVwLmNmZ2AKKworKiBhbGwgZmlsZXMgdGhhdCBtYXRjaGVzIHRoZSBgYHBhY2thZ2VfZGF0YWBgIG1ldGFkYXRhLgorICBTZWUgOnJlZjpgcGFja2FnaW5nLWluc3RhbGxpbmctcGFja2FnZS1kYXRhYC4KKworKiBhbGwgZmlsZXMgdGhhdCBtYXRjaGVzIHRoZSBgYGRhdGFfZmlsZXNgYCBtZXRhZGF0YS4KKyAgU2VlIDpyZWY6YHBhY2thZ2luZy1hZGRpdGlvbmFsLWZpbGVzYC4KKworQ29udHJhcnkgdG8gRGlzdHV0aWxzLCA6ZmlsZTpgUkVBRE1FYCAob3IgOmZpbGU6YFJFQURNRS50eHRgKSBhbmQKKzpmaWxlOmBzZXR1cC5weWAgYXJlIG5vdCBpbmNsdWRlZCBieSBkZWZhdWx0LgorCitTb21ldGltZXMgdGhpcyBpcyBlbm91Z2gsIGJ1dCB1c3VhbGx5IHlvdSB3aWxsIHdhbnQgdG8gc3BlY2lmeSBhZGRpdGlvbmFsIGZpbGVzCit0byBkaXN0cmlidXRlLiAgVGhlIHR5cGljYWwgd2F5IHRvIGRvIHRoaXMgaXMgdG8gd3JpdGUgYSAqbWFuaWZlc3QgdGVtcGxhdGUqLAorY2FsbGVkIDpmaWxlOmBNQU5JRkVTVC5pbmAgYnkgZGVmYXVsdC4gIFRoZSBtYW5pZmVzdCB0ZW1wbGF0ZSBpcyBqdXN0IGEgbGlzdCBvZgoraW5zdHJ1Y3Rpb25zIGZvciBob3cgdG8gZ2VuZXJhdGUgeW91ciBtYW5pZmVzdCBmaWxlLCA6ZmlsZTpgTUFOSUZFU1RgLCB3aGljaCBpcwordGhlIGV4YWN0IGxpc3Qgb2YgZmlsZXMgdG8gaW5jbHVkZSBpbiB5b3VyIHNvdXJjZSBkaXN0cmlidXRpb24uICBUaGUKKzpjb21tYW5kOmBzZGlzdGAgY29tbWFuZCBwcm9jZXNzZXMgdGhpcyB0ZW1wbGF0ZSBhbmQgZ2VuZXJhdGVzIGEgbWFuaWZlc3QgYmFzZWQKK29uIGl0cyBpbnN0cnVjdGlvbnMgYW5kIHdoYXQgaXQgZmluZHMgaW4gdGhlIGZpbGVzeXN0ZW0uCisKK0lmIHlvdSBwcmVmZXIgdG8gcm9sbCB5b3VyIG93biBtYW5pZmVzdCBmaWxlLCB0aGUgZm9ybWF0IGlzIHNpbXBsZTogb25lIGZpbGVuYW1lCitwZXIgbGluZSwgcmVndWxhciBmaWxlcyAob3Igc3ltbGlua3MgdG8gdGhlbSkgb25seS4gIElmIHlvdSBkbyBzdXBwbHkgeW91ciBvd24KKzpmaWxlOmBNQU5JRkVTVGAsIHlvdSBtdXN0IHNwZWNpZnkgZXZlcnl0aGluZzogdGhlIGRlZmF1bHQgc2V0IG9mIGZpbGVzCitkZXNjcmliZWQgYWJvdmUgZG9lcyBub3QgYXBwbHkgaW4gdGhpcyBjYXNlLgorCis6ZmlsZTpgTUFOSUZFU1RgIGZpbGVzIHN0YXJ0IHdpdGggYSBjb21tZW50IGluZGljYXRpbmcgdGhleSBhcmUgZ2VuZXJhdGVkLgorRmlsZXMgd2l0aG91dCB0aGlzIGNvbW1lbnQgYXJlIG5vdCBvdmVyd3JpdHRlbiBvciByZW1vdmVkLgorCitTZWUgOnJlZjpgcGFja2FnaW5nLW1hbmlmZXN0LXRlbXBsYXRlYCBzZWN0aW9uIGZvciBhIHN5bnRheCByZWZlcmVuY2UuCisKKworLi4gX3BhY2thZ2luZy1tYW5pZmVzdC1vcHRpb25zOgorCitNYW5pZmVzdC1yZWxhdGVkIG9wdGlvbnMKKz09PT09PT09PT09PT09PT09PT09PT09PQorCitUaGUgbm9ybWFsIGNvdXJzZSBvZiBvcGVyYXRpb25zIGZvciB0aGUgOmNvbW1hbmQ6YHNkaXN0YCBjb21tYW5kIGlzIGFzIGZvbGxvd3M6CisKKyogaWYgdGhlIG1hbmlmZXN0IGZpbGUsIDpmaWxlOmBNQU5JRkVTVGAgZG9lc24ndCBleGlzdCwgcmVhZCA6ZmlsZTpgTUFOSUZFU1QuaW5gCisgIGFuZCBjcmVhdGUgdGhlIG1hbmlmZXN0CisKKyogaWYgbmVpdGhlciA6ZmlsZTpgTUFOSUZFU1RgIG5vciA6ZmlsZTpgTUFOSUZFU1QuaW5gIGV4aXN0LCBjcmVhdGUgYSBtYW5pZmVzdAorICB3aXRoIGp1c3QgdGhlIGRlZmF1bHQgZmlsZSBzZXQKKworKiBpZiBlaXRoZXIgOmZpbGU6YE1BTklGRVNULmluYCBvciB0aGUgc2V0dXAgc2NyaXB0ICg6ZmlsZTpgc2V0dXAucHlgKSBhcmUgbW9yZQorICByZWNlbnQgdGhhbiA6ZmlsZTpgTUFOSUZFU1RgLCByZWNyZWF0ZSA6ZmlsZTpgTUFOSUZFU1RgIGJ5IHJlYWRpbmcKKyAgOmZpbGU6YE1BTklGRVNULmluYAorCisqIHVzZSB0aGUgbGlzdCBvZiBmaWxlcyBub3cgaW4gOmZpbGU6YE1BTklGRVNUYCAoZWl0aGVyIGp1c3QgZ2VuZXJhdGVkIG9yIHJlYWQKKyAgaW4pIHRvIGNyZWF0ZSB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBhcmNoaXZlKHMpCisKK1RoZXJlIGFyZSBhIGNvdXBsZSBvZiBvcHRpb25zIHRoYXQgbW9kaWZ5IHRoaXMgYmVoYXZpb3VyLiAgRmlyc3QsIHVzZSB0aGUKKzpvcHRpb246YC0tbm8tZGVmYXVsdHNgIGFuZCA6b3B0aW9uOmAtLW5vLXBydW5lYCB0byBkaXNhYmxlIHRoZSBzdGFuZGFyZAorImluY2x1ZGUiIGFuZCAiZXhjbHVkZSIgc2V0cy4KKworU2Vjb25kLCB5b3UgbWlnaHQganVzdCB3YW50IHRvIChyZSlnZW5lcmF0ZSB0aGUgbWFuaWZlc3QsIGJ1dCBub3QgY3JlYXRlIGEKK3NvdXJjZSBkaXN0cmlidXRpb246OgorCisgICBweXRob24gc2V0dXAucHkgc2Rpc3QgLS1tYW5pZmVzdC1vbmx5CisKKzpvcHRpb246YC1vYCBpcyBhIHNob3J0Y3V0IGZvciA6b3B0aW9uOmAtLW1hbmlmZXN0LW9ubHlgLgorCisKKy4uIF9wYWNrYWdpbmctbWFuaWZlc3QtdGVtcGxhdGU6CisKK1RoZSBNQU5JRkVTVC5pbiB0ZW1wbGF0ZQorPT09PT09PT09PT09PT09PT09PT09PT09CisKK0EgOmZpbGU6YE1BTklGRVNULmluYCBmaWxlIGNhbiBiZSBhZGRlZCBpbiBhIHByb2plY3QgdG8gZGVmaW5lIHRoZSBsaXN0IG9mCitmaWxlcyB0byBpbmNsdWRlIGluIHRoZSBkaXN0cmlidXRpb24gYnVpbHQgYnkgdGhlIDpjb21tYW5kOmBzZGlzdGAgY29tbWFuZC4KKworV2hlbiA6Y29tbWFuZDpgc2Rpc3RgIGlzIHJ1biwgaXQgd2lsbCBsb29rIGZvciB0aGUgOmZpbGU6YE1BTklGRVNULmluYCBmaWxlCithbmQgaW50ZXJwcmV0IGl0IHRvIGdlbmVyYXRlIHRoZSA6ZmlsZTpgTUFOSUZFU1RgIGZpbGUgdGhhdCBjb250YWlucyB0aGUKK2xpc3Qgb2YgZmlsZXMgdGhhdCB3aWxsIGJlIGluY2x1ZGVkIGluIHRoZSBwYWNrYWdlLgorCitUaGlzIG1lY2hhbmlzbSBjYW4gYmUgdXNlZCB3aGVuIHRoZSBkZWZhdWx0IGxpc3Qgb2YgZmlsZXMgaXMgbm90IGVub3VnaC4KKyhTZWUgOnJlZjpgcGFja2FnaW5nLW1hbmlmZXN0YCkuCisKK1ByaW5jaXBsZQorLS0tLS0tLS0tCisKK1RoZSBtYW5pZmVzdCB0ZW1wbGF0ZSBoYXMgb25lIGNvbW1hbmQgcGVyIGxpbmUsIHdoZXJlIGVhY2ggY29tbWFuZCBzcGVjaWZpZXMgYQorc2V0IG9mIGZpbGVzIHRvIGluY2x1ZGUgb3IgZXhjbHVkZSBmcm9tIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uLiAgRm9yIGFuCitleGFtcGxlLCBsZXQncyBsb29rIGF0IHRoZSBQYWNrYWdpbmcnIG93biBtYW5pZmVzdCB0ZW1wbGF0ZTo6CisKKyAgIGluY2x1ZGUgKi50eHQKKyAgIHJlY3Vyc2l2ZS1pbmNsdWRlIGV4YW1wbGVzICoudHh0ICoucHkKKyAgIHBydW5lIGV4YW1wbGVzL3NhbXBsZT8vYnVpbGQKKworVGhlIG1lYW5pbmdzIHNob3VsZCBiZSBmYWlybHkgY2xlYXI6IGluY2x1ZGUgYWxsIGZpbGVzIGluIHRoZSBkaXN0cmlidXRpb24gcm9vdAorbWF0Y2hpbmcgOmZpbGU6YFwqLnR4dGAsIGFsbCBmaWxlcyBhbnl3aGVyZSB1bmRlciB0aGUgOmZpbGU6YGV4YW1wbGVzYCBkaXJlY3RvcnkKK21hdGNoaW5nIDpmaWxlOmBcKi50eHRgIG9yIDpmaWxlOmBcKi5weWAsIGFuZCBleGNsdWRlIGFsbCBkaXJlY3RvcmllcyBtYXRjaGluZworOmZpbGU6YGV4YW1wbGVzL3NhbXBsZT8vYnVpbGRgLiAgQWxsIG9mIHRoaXMgaXMgZG9uZSAqYWZ0ZXIqIHRoZSBzdGFuZGFyZAoraW5jbHVkZSBzZXQsIHNvIHlvdSBjYW4gZXhjbHVkZSBmaWxlcyBmcm9tIHRoZSBzdGFuZGFyZCBzZXQgd2l0aCBleHBsaWNpdAoraW5zdHJ1Y3Rpb25zIGluIHRoZSBtYW5pZmVzdCB0ZW1wbGF0ZS4gIChPciwgeW91IGNhbiB1c2UgdGhlCis6b3B0aW9uOmAtLW5vLWRlZmF1bHRzYCBvcHRpb24gdG8gZGlzYWJsZSB0aGUgc3RhbmRhcmQgc2V0IGVudGlyZWx5LikKKworVGhlIG9yZGVyIG9mIGNvbW1hbmRzIGluIHRoZSBtYW5pZmVzdCB0ZW1wbGF0ZSBtYXR0ZXJzOiBpbml0aWFsbHksIHdlIGhhdmUgdGhlCitsaXN0IG9mIGRlZmF1bHQgZmlsZXMgYXMgZGVzY3JpYmVkIGFib3ZlLCBhbmQgZWFjaCBjb21tYW5kIGluIHRoZSB0ZW1wbGF0ZSBhZGRzCit0byBvciByZW1vdmVzIGZyb20gdGhhdCBsaXN0IG9mIGZpbGVzLiAgT25jZSB3ZSBoYXZlIGZ1bGx5IHByb2Nlc3NlZCB0aGUKK21hbmlmZXN0IHRlbXBsYXRlLCB3ZSByZW1vdmUgZmlsZXMgdGhhdCBzaG91bGQgbm90IGJlIGluY2x1ZGVkIGluIHRoZSBzb3VyY2UKK2Rpc3RyaWJ1dGlvbjoKKworKiBhbGwgZmlsZXMgaW4gdGhlIFBhY2thZ2luZyAiYnVpbGQiIHRyZWUgKGRlZmF1bHQgOmZpbGU6YGJ1aWxkL2ApCisKKyogYWxsIGZpbGVzIGluIGRpcmVjdG9yaWVzIG5hbWVkIDpmaWxlOmBSQ1NgLCA6ZmlsZTpgQ1ZTYCwgOmZpbGU6YC5zdm5gLAorICA6ZmlsZTpgLmhnYCwgOmZpbGU6YC5naXRgLCA6ZmlsZTpgLmJ6cmAgb3IgOmZpbGU6YF9kYXJjc2AKKworTm93IHdlIGhhdmUgb3VyIGNvbXBsZXRlIGxpc3Qgb2YgZmlsZXMsIHdoaWNoIGlzIHdyaXR0ZW4gdG8gdGhlIG1hbmlmZXN0IGZvcgorZnV0dXJlIHJlZmVyZW5jZSwgYW5kIHRoZW4gdXNlZCB0byBidWlsZCB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBhcmNoaXZlKHMpLgorCitZb3UgY2FuIGRpc2FibGUgdGhlIGRlZmF1bHQgc2V0IG9mIGluY2x1ZGVkIGZpbGVzIHdpdGggdGhlCis6b3B0aW9uOmAtLW5vLWRlZmF1bHRzYCBvcHRpb24sIGFuZCB5b3UgY2FuIGRpc2FibGUgdGhlIHN0YW5kYXJkIGV4Y2x1ZGUgc2V0Cit3aXRoIDpvcHRpb246YC0tbm8tcHJ1bmVgLgorCitGb2xsb3dpbmcgdGhlIFBhY2thZ2luZycgb3duIG1hbmlmZXN0IHRlbXBsYXRlLCBsZXQncyB0cmFjZSBob3cgdGhlCis6Y29tbWFuZDpgc2Rpc3RgIGNvbW1hbmQgYnVpbGRzIHRoZSBsaXN0IG9mIGZpbGVzIHRvIGluY2x1ZGUgaW4gdGhlIFBhY2thZ2luZworc291cmNlIGRpc3RyaWJ1dGlvbjoKKworIy4gaW5jbHVkZSBhbGwgUHl0aG9uIHNvdXJjZSBmaWxlcyBpbiB0aGUgOmZpbGU6YHBhY2thZ2luZ2AgYW5kCisgICA6ZmlsZTpgcGFja2FnaW5nL2NvbW1hbmRgIHN1YmRpcmVjdG9yaWVzIChiZWNhdXNlIHBhY2thZ2VzIGNvcnJlc3BvbmRpbmcgdG8KKyAgIHRob3NlIHR3byBkaXJlY3RvcmllcyB3ZXJlIG1lbnRpb25lZCBpbiB0aGUgOm9wdGlvbjpgcGFja2FnZXNgIG9wdGlvbiBpbiB0aGUKKyAgIHNldHVwIHNjcmlwdC0tLXNlZSBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1zZXR1cC1zY3JpcHRgKQorCisjLiBpbmNsdWRlIDpmaWxlOmBSRUFETUUudHh0YCwgOmZpbGU6YHNldHVwLnB5YCwgYW5kIDpmaWxlOmBzZXR1cC5jZmdgIChzdGFuZGFyZAorICAgZmlsZXMpCisKKyMuIGluY2x1ZGUgOmZpbGU6YHRlc3QvdGVzdFwqLnB5YCAoc3RhbmRhcmQgZmlsZXMpCisKKyMuIGluY2x1ZGUgOmZpbGU6YFwqLnR4dGAgaW4gdGhlIGRpc3RyaWJ1dGlvbiByb290ICh0aGlzIHdpbGwgZmluZAorICAgOmZpbGU6YFJFQURNRS50eHRgIGEgc2Vjb25kIHRpbWUsIGJ1dCBzdWNoIHJlZHVuZGFuY2llcyBhcmUgd2VlZGVkIG91dCBsYXRlcikKKworIy4gaW5jbHVkZSBhbnl0aGluZyBtYXRjaGluZyA6ZmlsZTpgXCoudHh0YCBvciA6ZmlsZTpgXCoucHlgIGluIHRoZSBzdWItdHJlZQorICAgdW5kZXIgOmZpbGU6YGV4YW1wbGVzYCwKKworIy4gZXhjbHVkZSBhbGwgZmlsZXMgaW4gdGhlIHN1Yi10cmVlcyBzdGFydGluZyBhdCBkaXJlY3RvcmllcyBtYXRjaGluZworICAgOmZpbGU6YGV4YW1wbGVzL3NhbXBsZT8vYnVpbGRgXCAtLS10aGlzIG1heSBleGNsdWRlIGZpbGVzIGluY2x1ZGVkIGJ5IHRoZQorICAgcHJldmlvdXMgdHdvIHN0ZXBzLCBzbyBpdCdzIGltcG9ydGFudCB0aGF0IHRoZSBgYHBydW5lYGAgY29tbWFuZCBpbiB0aGUgbWFuaWZlc3QKKyAgIHRlbXBsYXRlIGNvbWVzIGFmdGVyIHRoZSBgYHJlY3Vyc2l2ZS1pbmNsdWRlYGAgY29tbWFuZAorCisjLiBleGNsdWRlIHRoZSBlbnRpcmUgOmZpbGU6YGJ1aWxkYCB0cmVlLCBhbmQgYW55IDpmaWxlOmBSQ1NgLCA6ZmlsZTpgQ1ZTYCwKKyAgIDpmaWxlOmAuc3ZuYCwgOmZpbGU6YC5oZ2AsIDpmaWxlOmAuZ2l0YCwgOmZpbGU6YC5ienJgIGFuZCA6ZmlsZTpgX2RhcmNzYAorICAgZGlyZWN0b3JpZXMKKworSnVzdCBsaWtlIGluIHRoZSBzZXR1cCBzY3JpcHQsIGZpbGUgYW5kIGRpcmVjdG9yeSBuYW1lcyBpbiB0aGUgbWFuaWZlc3QgdGVtcGxhdGUKK3Nob3VsZCBhbHdheXMgYmUgc2xhc2gtc2VwYXJhdGVkOyB0aGUgUGFja2FnaW5nIHdpbGwgdGFrZSBjYXJlIG9mIGNvbnZlcnRpbmcKK3RoZW0gdG8gdGhlIHN0YW5kYXJkIHJlcHJlc2VudGF0aW9uIG9uIHlvdXIgcGxhdGZvcm0uIFRoYXQgd2F5LCB0aGUgbWFuaWZlc3QKK3RlbXBsYXRlIGlzIHBvcnRhYmxlIGFjcm9zcyBvcGVyYXRpbmcgc3lzdGVtcy4KKworQ29tbWFuZHMKKy0tLS0tLS0tCisKK1RoZSBtYW5pZmVzdCB0ZW1wbGF0ZSBjb21tYW5kcyBhcmU6CisKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworfCBDb21tYW5kICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IERlc2NyaXB0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSsKK3wgOmNvbW1hbmQ6YGluY2x1ZGUgcGF0MSBwYXQyIC4uLmAgICAgICAgICAgfCBpbmNsdWRlIGFsbCBmaWxlcyBtYXRjaGluZyBhbnkgb2YgdGhlIGxpc3RlZCAgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHBhdHRlcm5zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YGV4Y2x1ZGUgcGF0MSBwYXQyIC4uLmAgICAgICAgICAgfCBleGNsdWRlIGFsbCBmaWxlcyBtYXRjaGluZyBhbnkgb2YgdGhlIGxpc3RlZCAgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHBhdHRlcm5zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YHJlY3Vyc2l2ZS1pbmNsdWRlIGRpciBwYXQxIHBhdDIgfCBpbmNsdWRlIGFsbCBmaWxlcyB1bmRlciAqZGlyKiBtYXRjaGluZyBhbnkgb2YgfAorfCAuLi5gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHRoZSBsaXN0ZWQgcGF0dGVybnMgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YHJlY3Vyc2l2ZS1leGNsdWRlIGRpciBwYXQxIHBhdDIgfCBleGNsdWRlIGFsbCBmaWxlcyB1bmRlciAqZGlyKiBtYXRjaGluZyBhbnkgb2YgfAorfCAuLi5gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHRoZSBsaXN0ZWQgcGF0dGVybnMgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YGdsb2JhbC1pbmNsdWRlIHBhdDEgcGF0MiAuLi5gICAgfCBpbmNsdWRlIGFsbCBmaWxlcyBhbnl3aGVyZSBpbiB0aGUgc291cmNlIHRyZWUgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IG1hdGNoaW5nIC0tLSAmIGFueSBvZiB0aGUgbGlzdGVkIHBhdHRlcm5zICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YGdsb2JhbC1leGNsdWRlIHBhdDEgcGF0MiAuLi5gICAgfCBleGNsdWRlIGFsbCBmaWxlcyBhbnl3aGVyZSBpbiB0aGUgc291cmNlIHRyZWUgfAorfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IG1hdGNoaW5nIC0tLSAmIGFueSBvZiB0aGUgbGlzdGVkIHBhdHRlcm5zICAgICB8CisrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKK3wgOmNvbW1hbmQ6YHBydW5lIGRpcmAgICAgICAgICAgICAgICAgICAgICAgfCBleGNsdWRlIGFsbCBmaWxlcyB1bmRlciAqZGlyKiAgICAgICAgICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8IDpjb21tYW5kOmBncmFmdCBkaXJgICAgICAgICAgICAgICAgICAgICAgIHwgaW5jbHVkZSBhbGwgZmlsZXMgdW5kZXIgKmRpciogICAgICAgICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworCitUaGUgcGF0dGVybnMgaGVyZSBhcmUgVW5peC1zdHlsZSAiZ2xvYiIgcGF0dGVybnM6IGBgKmBgIG1hdGNoZXMgYW55IHNlcXVlbmNlIG9mCityZWd1bGFyIGZpbGVuYW1lIGNoYXJhY3RlcnMsIGBgP2BgIG1hdGNoZXMgYW55IHNpbmdsZSByZWd1bGFyIGZpbGVuYW1lCitjaGFyYWN0ZXIsIGFuZCBgYFtyYW5nZV1gYCBtYXRjaGVzIGFueSBvZiB0aGUgY2hhcmFjdGVycyBpbiAqcmFuZ2UqIChlLmcuLAorYGBhLXpgYCwgYGBhLXpBLVpgYCwgYGBhLWYwLTlfLmBgKS4gIFRoZSBkZWZpbml0aW9uIG9mICJyZWd1bGFyIGZpbGVuYW1lCitjaGFyYWN0ZXIiIGlzIHBsYXRmb3JtLXNwZWNpZmljOiBvbiBVbml4IGl0IGlzIGFueXRoaW5nIGV4Y2VwdCBzbGFzaDsgb24gV2luZG93cworYW55dGhpbmcgZXhjZXB0IGJhY2tzbGFzaCBvciBjb2xvbi4KZGlmZiAtLWdpdCBhL0RvYy9wYWNrYWdpbmcvdHV0b3JpYWwucnN0IGIvRG9jL3BhY2thZ2luZy90dXRvcmlhbC5yc3QKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDRmNDFlNQotLS0gL2Rldi9udWxsCisrKyBiL0RvYy9wYWNrYWdpbmcvdHV0b3JpYWwucnN0CkBAIC0wLDAgKzEsMTEyIEBACis9PT09PT09PT09PT09PT09PT0KK1BhY2thZ2luZyB0dXRvcmlhbAorPT09PT09PT09PT09PT09PT09CisKK1dlbGNvbWUgdG8gdGhlIFBhY2thZ2luZyB0dXRvcmlhbCEgV2Ugd2lsbCBsZWFybiBob3cgdG8gdXNlIFBhY2thZ2luZwordG8gcGFja2FnZSB5b3VyIHByb2plY3QuCisKKy4uIFRPRE8gbWVyZ2Ugd2l0aCBpbnRyb2R1Y3Rpb24ucnN0CisKKworR2V0dGluZyBzdGFydGVkCistLS0tLS0tLS0tLS0tLS0KKworUGFja2FnaW5nIHdvcmtzIHdpdGggdGhlICpzZXR1cC5jZmcqIGZpbGUuIEl0IGNvbnRhaW5zIGFsbCB0aGUgbWV0YWRhdGEgZm9yCit5b3VyIHByb2plY3QsIGFzIGRlZmluZWQgaW4gUEVQIDM0NSwgYnV0IGFsc28gZGVjbGFyZSB3aGF0IHlvdXIgcHJvamVjdAorY29udGFpbnMuCisKK0xldCdzIHNheSB5b3UgaGF2ZSBhIHByb2plY3QgY2FsbGVkICpDTFZhdWx0KiBjb250YWluaW5nIG9uZSBwYWNrYWdlIGNhbGxlZAorKmNsdmF1bHQqLCBhbmQgYSBmZXcgc2NyaXB0cyBpbnNpZGUuIFlvdSBjYW4gdXNlIHRoZSAqcHlzZXR1cCogc2NyaXB0IHRvIGNyZWF0ZQorYSAqc2V0dXAuY2ZnKiBmaWxlIGZvciB0aGUgcHJvamVjdC4gVGhlIHNjcmlwdCB3aWxsIGFzayB5b3UgYSBmZXcgcXVlc3Rpb25zOjoKKworICAgJCBta2RpciBDTFZhdWx0CisgICAkIGNkIENMVmF1bHQKKyAgICQgcHlzZXR1cCBjcmVhdGUKKyAgIFByb2plY3QgbmFtZSBbQ0xWYXVsdF06CisgICBDdXJyZW50IHZlcnNpb24gbnVtYmVyOiAwLjEKKyAgIFBhY2thZ2UgZGVzY3JpcHRpb246CisgICA+Q29tbWFuZC1saW5lIHV0aWxpdHkgdG8gc3RvcmUgYW5kIHJldHJpZXZlIHBhc3N3b3JkcworICAgQXV0aG9yIG5hbWU6IFRhcmVrIFppYWRlCisgICBBdXRob3IgZS1tYWlsIGFkZHJlc3M6IHRhcmVrQHppYWRlLm9yZworICAgUHJvamVjdCBIb21lIFBhZ2U6IGh0dHA6Ly9iaXRidWNrZXQub3JnL3RhcmVrL2NsdmF1bHQKKyAgIERvIHlvdSB3YW50IHRvIGFkZCBhIHBhY2thZ2UgPyAoeS9uKTogeQorICAgUGFja2FnZSBuYW1lOiBjbHZhdWx0CisgICBEbyB5b3Ugd2FudCB0byBhZGQgYSBwYWNrYWdlID8gKHkvbik6IG4KKyAgIERvIHlvdSB3YW50IHRvIHNldCBUcm92ZSBjbGFzc2lmaWVycz8gKHkvbik6IHkKKyAgIFBsZWFzZSBzZWxlY3QgdGhlIHByb2plY3Qgc3RhdHVzOgorCisgICAxIC0gUGxhbm5pbmcKKyAgIDIgLSBQcmUtQWxwaGEKKyAgIDMgLSBBbHBoYQorICAgNCAtIEJldGEKKyAgIDUgLSBQcm9kdWN0aW9uL1N0YWJsZQorICAgNiAtIE1hdHVyZQorICAgNyAtIEluYWN0aXZlCisKKyAgIFN0YXR1czogMworICAgV2hhdCBsaWNlbnNlIGRvIHlvdSB1c2U6IEdQTAorICAgTWF0Y2hpbmcgbGljZW5zZXM6CisKKyAgIDEpIExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChHUEwpCisgICAyKSBMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBHTlUgTGlicmFyeSBvciBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoTEdQTCkKKworICAgVHlwZSB0aGUgbnVtYmVyIG9mIHRoZSBsaWNlbnNlIHlvdSB3aXNoIHRvIHVzZSBvciA/IHRvIHRyeSBhZ2Fpbjo6IDEKKyAgIERvIHlvdSB3YW50IHRvIHNldCBvdGhlciB0cm92ZSBpZGVudGlmaWVycyAoeS9uKSBbbl06IG4KKyAgIFdyb3RlICJzZXR1cC5jZmciLgorCisKK0Egc2V0dXAuY2ZnIGZpbGUgaXMgY3JlYXRlZCwgY29udGFpbmluZyB0aGUgbWV0YWRhdGEgb2YgeW91ciBwcm9qZWN0IGFuZCB0aGUKK2xpc3Qgb2YgdGhlIHBhY2thZ2VzIGl0IGNvbnRhaW5zOjoKKworICAgJCBjYXQgc2V0dXAuY2ZnCisgICBbbWV0YWRhdGFdCisgICBuYW1lID0gQ0xWYXVsdAorICAgdmVyc2lvbiA9IDAuMQorICAgYXV0aG9yID0gVGFyZWsgWmlhZGUKKyAgIGF1dGhvcl9lbWFpbCA9IHRhcmVrQHppYWRlLm9yZworICAgZGVzY3JpcHRpb24gPSBDb21tYW5kLWxpbmUgdXRpbGl0eSB0byBzdG9yZSBhbmQgcmV0cmlldmUgcGFzc3dvcmRzCisgICBob21lX3BhZ2UgPSBodHRwOi8vYml0YnVja2V0Lm9yZy90YXJlay9jbHZhdWx0CisKKyAgIGNsYXNzaWZpZXIgPSBEZXZlbG9wbWVudCBTdGF0dXMgOjogMyAtIEFscGhhCisgICAgICAgTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKEdQTCkKKworICAgW2ZpbGVzXQorICAgcGFja2FnZXMgPSBjbHZhdWx0CisKKworT3VyIHByb2plY3Qgd2lsbCBkZXBlbmQgb24gdGhlICprZXlyaW5nKiBwcm9qZWN0LiBMZXQncyBhZGQgaXQgaW4gdGhlCitbbWV0YWRhdGFdIHNlY3Rpb246OgorCisgICBbbWV0YWRhdGFdCisgICAuLi4KKyAgIHJlcXVpcmVzX2Rpc3QgPQorICAgICAgIGtleXJpbmcKKworCitSdW5uaW5nIGNvbW1hbmRzCistLS0tLS0tLS0tLS0tLS0tCisKK1lvdSBjYW4gcnVuIHVzZWZ1bCBjb21tYW5kcyBvbiB5b3VyIHByb2plY3Qgb25jZSB0aGUgc2V0dXAuY2ZnIGZpbGUgaXMgcmVhZHk6CisKKy0gc2Rpc3Q6IGNyZWF0ZXMgYSBzb3VyY2UgZGlzdHJpYnV0aW9uCistIHJlZ2lzdGVyOiByZWdpc3RlciB5b3VyIHByb2plY3QgdG8gUHlQSQorLSB1cGxvYWQ6IHVwbG9hZCB0aGUgZGlzdHJpYnV0aW9uIHRvIFB5UEkKKy0gaW5zdGFsbF9kaXN0OiBpbnN0YWxsIGl0CisKK0FsbCBjb21tYW5kcyBhcmUgcnVuIHVzaW5nIHRoZSBydW4gc2NyaXB0OjoKKworICAgJCBweXNldHVwIHJ1biBpbnN0YWxsX2Rpc3QKKyAgICQgcHlzZXR1cCBydW4gc2Rpc3QKKyAgICQgcHlzZXR1cCBydW4gdXBsb2FkCisKK0lmIHlvdSB3YW50IHRvIHB1c2ggYSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9mIHlvdXIgcHJvamVjdCB0byBQeVBJLCBkbzo6CisKKyAgICQgcHlzZXR1cCBydW4gc2Rpc3QgcmVnaXN0ZXIgdXBsb2FkCisKKworSW5zdGFsbGluZyB0aGUgcHJvamVjdAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgcHJvamVjdCBjYW4gYmUgaW5zdGFsbGVkIGJ5IG1hbnVhbGx5IHJ1bm5pbmcgdGhlIHBhY2thZ2luZyBpbnN0YWxsIGNvbW1hbmQ6OgorCisgICAkIHB5c2V0dXAgcnVuIGluc3RhbGxfZGlzdApkaWZmIC0tZ2l0IGEvRG9jL3BhY2thZ2luZy91cGxvYWRpbmcucnN0IGIvRG9jL3BhY2thZ2luZy91cGxvYWRpbmcucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI5NzUxOGIKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2MvcGFja2FnaW5nL3VwbG9hZGluZy5yc3QKQEAgLTAsMCArMSw4MCBAQAorLi4gX3BhY2thZ2luZy1wYWNrYWdlLXVwbG9hZDoKKworKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCitVcGxvYWRpbmcgUGFja2FnZXMgdG8gdGhlIFBhY2thZ2UgSW5kZXgKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorCitUaGUgUHl0aG9uIFBhY2thZ2UgSW5kZXggKFB5UEkpIG5vdCBvbmx5IHN0b3JlcyB0aGUgcGFja2FnZSBpbmZvLCBidXQgYWxzbyB0aGUKK3BhY2thZ2UgZGF0YSBpZiB0aGUgYXV0aG9yIG9mIHRoZSBwYWNrYWdlIHdpc2hlcyB0by4gVGhlIHBhY2thZ2luZyBjb21tYW5kCis6Y29tbWFuZDpgdXBsb2FkYCBwdXNoZXMgdGhlIGRpc3RyaWJ1dGlvbiBmaWxlcyB0byBQeVBJLgorCitUaGUgY29tbWFuZCBpcyBpbnZva2VkIGltbWVkaWF0ZWx5IGFmdGVyIGJ1aWxkaW5nIG9uZSBvciBtb3JlIGRpc3RyaWJ1dGlvbgorZmlsZXMuICBGb3IgZXhhbXBsZSwgdGhlIGNvbW1hbmQgOjoKKworICAgIHB5dGhvbiBzZXR1cC5weSBzZGlzdCBiZGlzdF93aW5pbnN0IHVwbG9hZAorCit3aWxsIGNhdXNlIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIGFuZCB0aGUgV2luZG93cyBpbnN0YWxsZXIgdG8gYmUgdXBsb2FkZWQgdG8KK1B5UEkuICBOb3RlIHRoYXQgdGhlc2Ugd2lsbCBiZSB1cGxvYWRlZCBldmVuIGlmIHRoZXkgYXJlIGJ1aWx0IHVzaW5nIGFuIGVhcmxpZXIKK2ludm9jYXRpb24gb2YgOmZpbGU6YHNldHVwLnB5YCwgYnV0IHRoYXQgb25seSBkaXN0cmlidXRpb25zIG5hbWVkIG9uIHRoZSBjb21tYW5kCitsaW5lIGZvciB0aGUgaW52b2NhdGlvbiBpbmNsdWRpbmcgdGhlIDpjb21tYW5kOmB1cGxvYWRgIGNvbW1hbmQgYXJlIHVwbG9hZGVkLgorCitUaGUgOmNvbW1hbmQ6YHVwbG9hZGAgY29tbWFuZCB1c2VzIHRoZSB1c2VybmFtZSwgcGFzc3dvcmQsIGFuZCByZXBvc2l0b3J5IFVSTAorZnJvbSB0aGUgOmZpbGU6YCRIT01FLy5weXBpcmNgIGZpbGUgKHNlZSBzZWN0aW9uIDpyZWY6YHBhY2thZ2luZy1weXBpcmNgIGZvciBtb3JlIG9uIHRoaXMKK2ZpbGUpLiBJZiBhIDpjb21tYW5kOmByZWdpc3RlcmAgY29tbWFuZCB3YXMgcHJldmlvdXNseSBjYWxsZWQgaW4gdGhlIHNhbWUKK2NvbW1hbmQsIGFuZCBpZiB0aGUgcGFzc3dvcmQgd2FzIGVudGVyZWQgaW4gdGhlIHByb21wdCwgOmNvbW1hbmQ6YHVwbG9hZGAgd2lsbAorcmV1c2UgdGhlIGVudGVyZWQgcGFzc3dvcmQuIFRoaXMgaXMgdXNlZnVsIGlmIHlvdSBkbyBub3Qgd2FudCB0byBzdG9yZSBhIGNsZWFyCit0ZXh0IHBhc3N3b3JkIGluIHRoZSA6ZmlsZTpgJEhPTUUvLnB5cGlyY2AgZmlsZS4KKworWW91IGNhbiBzcGVjaWZ5IGFub3RoZXIgUHlQSSBzZXJ2ZXIgd2l0aCB0aGUgOm9wdGlvbjpgLS1yZXBvc2l0b3J5PSp1cmwqYAorb3B0aW9uOjoKKworICAgIHB5dGhvbiBzZXR1cC5weSBzZGlzdCBiZGlzdF93aW5pbnN0IHVwbG9hZCAtciBodHRwOi8vZXhhbXBsZS5jb20vcHlwaQorCitTZWUgc2VjdGlvbiA6cmVmOmBwYWNrYWdpbmctcHlwaXJjYCBmb3IgbW9yZSBvbiBkZWZpbmluZyBzZXZlcmFsIHNlcnZlcnMuCisKK1lvdSBjYW4gdXNlIHRoZSA6b3B0aW9uOmAtLXNpZ25gIG9wdGlvbiB0byB0ZWxsIDpjb21tYW5kOmB1cGxvYWRgIHRvIHNpZ24gZWFjaAordXBsb2FkZWQgZmlsZSB1c2luZyBHUEcgKEdOVSBQcml2YWN5IEd1YXJkKS4gIFRoZSA6cHJvZ3JhbTpgZ3BnYCBwcm9ncmFtIG11c3QKK2JlIGF2YWlsYWJsZSBmb3IgZXhlY3V0aW9uIG9uIHRoZSBzeXN0ZW0gOmVudnZhcjpgUEFUSGAuICBZb3UgY2FuIGFsc28gc3BlY2lmeQord2hpY2gga2V5IHRvIHVzZSBmb3Igc2lnbmluZyB1c2luZyB0aGUgOm9wdGlvbjpgLS1pZGVudGl0eT0qbmFtZSpgIG9wdGlvbi4KKworT3RoZXIgOmNvbW1hbmQ6YHVwbG9hZGAgb3B0aW9ucyBpbmNsdWRlIDpvcHRpb246YC0tcmVwb3NpdG9yeT08dXJsPmAgb3IKKzpvcHRpb246YC0tcmVwb3NpdG9yeT08c2VjdGlvbj5gIHdoZXJlICp1cmwqIGlzIHRoZSB1cmwgb2YgdGhlIHNlcnZlciBhbmQKKypzZWN0aW9uKiB0aGUgbmFtZSBvZiB0aGUgc2VjdGlvbiBpbiA6ZmlsZTpgJEhPTUUvLnB5cGlyY2AsIGFuZAorOm9wdGlvbjpgLS1zaG93LXJlc3BvbnNlYCAod2hpY2ggZGlzcGxheXMgdGhlIGZ1bGwgcmVzcG9uc2UgdGV4dCBmcm9tIHRoZSBQeVBJCitzZXJ2ZXIgZm9yIGhlbHAgaW4gZGVidWdnaW5nIHVwbG9hZCBwcm9ibGVtcykuCisKK1B5UEkgcGFja2FnZSBkaXNwbGF5Cis9PT09PT09PT09PT09PT09PT09PQorCitUaGUgYGBkZXNjcmlwdGlvbmBgIGZpZWxkIHBsYXlzIGEgc3BlY2lhbCByb2xlIGF0IFB5UEkuIEl0IGlzIHVzZWQgYnkKK3RoZSBzZXJ2ZXIgdG8gZGlzcGxheSBhIGhvbWUgcGFnZSBmb3IgdGhlIHJlZ2lzdGVyZWQgcGFja2FnZS4KKworSWYgeW91IHVzZSB0aGUgYHJlU3RydWN0dXJlZFRleHQgPGh0dHA6Ly9kb2N1dGlscy5zb3VyY2Vmb3JnZS5uZXQvcnN0Lmh0bWw+YF8KK3N5bnRheCBmb3IgdGhpcyBmaWVsZCwgUHlQSSB3aWxsIHBhcnNlIGl0IGFuZCBkaXNwbGF5IGFuIEhUTUwgb3V0cHV0IGZvcgordGhlIHBhY2thZ2UgaG9tZSBwYWdlLgorCitUaGUgYGBkZXNjcmlwdGlvbmBgIGZpZWxkIGNhbiBiZSBmaWxsZWQgZnJvbSBhIHRleHQgZmlsZSBsb2NhdGVkIGluIHRoZQorcHJvamVjdDo6CisKKyAgICBmcm9tIHBhY2thZ2luZy5jb3JlIGltcG9ydCBzZXR1cAorCisgICAgZnAgPSBvcGVuKCdSRUFETUUudHh0JykKKyAgICB0cnk6CisgICAgICAgIGRlc2NyaXB0aW9uID0gZnAucmVhZCgpCisgICAgZmluYWxseToKKyAgICAgICAgZnAuY2xvc2UoKQorCisgICAgc2V0dXAobmFtZT0nUGFja2FnaW5nJywKKyAgICAgICAgICBkZXNjcmlwdGlvbj1kZXNjcmlwdGlvbikKKworSW4gdGhhdCBjYXNlLCA6ZmlsZTpgUkVBRE1FLnR4dGAgaXMgYSByZWd1bGFyIHJlU3RydWN0dXJlZFRleHQgdGV4dCBmaWxlIGxvY2F0ZWQKK2luIHRoZSByb290IG9mIHRoZSBwYWNrYWdlIGJlc2lkZXMgOmZpbGU6YHNldHVwLnB5YC4KKworVG8gcHJldmVudCByZWdpc3RlcmluZyBicm9rZW4gcmVTdHJ1Y3R1cmVkVGV4dCBjb250ZW50LCB5b3UgY2FuIHVzZSB0aGUKKzpwcm9ncmFtOmByc3QyaHRtbGAgcHJvZ3JhbSB0aGF0IGlzIHByb3ZpZGVkIGJ5IHRoZSA6bW9kOmBkb2N1dGlsc2AgcGFja2FnZQorYW5kIGNoZWNrIHRoZSBgYGRlc2NyaXB0aW9uYGAgZnJvbSB0aGUgY29tbWFuZCBsaW5lOjoKKworICAgICQgcHl0aG9uIHNldHVwLnB5IC0tZGVzY3JpcHRpb24gfCByc3QyaHRtbC5weSA+IG91dHB1dC5odG1sCisKKzptb2Q6YGRvY3V0aWxzYCB3aWxsIGRpc3BsYXkgYSB3YXJuaW5nIGlmIHRoZXJlJ3Mgc29tZXRoaW5nIHdyb25nIHdpdGggeW91cgorc3ludGF4LgpkaWZmIC0tZ2l0IGEvRG9jL3JlZmVyZW5jZS9kYXRhbW9kZWwucnN0IGIvRG9jL3JlZmVyZW5jZS9kYXRhbW9kZWwucnN0CmluZGV4IGQwMWIxZjIuLjU1ZmQ3NmIgMTAwNjQ0Ci0tLSBhL0RvYy9yZWZlcmVuY2UvZGF0YW1vZGVsLnJzdAorKysgYi9Eb2MvcmVmZXJlbmNlL2RhdGFtb2RlbC5yc3QKQEAgLTI3NiwxNiArMjc2LDE2IEBACiAgICAgICAgICAgICBzaW5nbGU6IGludGVnZXIKICAgICAgICAgICAgIHNpbmdsZTogVW5pY29kZQogCi0gICAgICAgICBUaGUgaXRlbXMgb2YgYSBzdHJpbmcgb2JqZWN0IGFyZSBVbmljb2RlIGNvZGUgdW5pdHMuICBBIFVuaWNvZGUgY29kZQotICAgICAgICAgdW5pdCBpcyByZXByZXNlbnRlZCBieSBhIHN0cmluZyBvYmplY3Qgb2Ygb25lIGl0ZW0gYW5kIGNhbiBob2xkIGVpdGhlcgotICAgICAgICAgYSAxNi1iaXQgb3IgMzItYml0IHZhbHVlIHJlcHJlc2VudGluZyBhIFVuaWNvZGUgb3JkaW5hbCAodGhlIG1heGltdW0KLSAgICAgICAgIHZhbHVlIGZvciB0aGUgb3JkaW5hbCBpcyBnaXZlbiBpbiBgYHN5cy5tYXh1bmljb2RlYGAsIGFuZCBkZXBlbmRzIG9uCi0gICAgICAgICBob3cgUHl0aG9uIGlzIGNvbmZpZ3VyZWQgYXQgY29tcGlsZSB0aW1lKS4gIFN1cnJvZ2F0ZSBwYWlycyBtYXkgYmUKLSAgICAgICAgIHByZXNlbnQgaW4gdGhlIFVuaWNvZGUgb2JqZWN0LCBhbmQgd2lsbCBiZSByZXBvcnRlZCBhcyB0d28gc2VwYXJhdGUKLSAgICAgICAgIGl0ZW1zLiAgVGhlIGJ1aWx0LWluIGZ1bmN0aW9ucyA6ZnVuYzpgY2hyYCBhbmQgOmZ1bmM6YG9yZGAgY29udmVydAotICAgICAgICAgYmV0d2VlbiBjb2RlIHVuaXRzIGFuZCBub25uZWdhdGl2ZSBpbnRlZ2VycyByZXByZXNlbnRpbmcgdGhlIFVuaWNvZGUKLSAgICAgICAgIG9yZGluYWxzIGFzIGRlZmluZWQgaW4gdGhlIFVuaWNvZGUgU3RhbmRhcmQgMy4wLiBDb252ZXJzaW9uIGZyb20gYW5kIHRvCi0gICAgICAgICBvdGhlciBlbmNvZGluZ3MgYXJlIHBvc3NpYmxlIHRocm91Z2ggdGhlIHN0cmluZyBtZXRob2QgOm1ldGg6YGVuY29kZWAuCisgICAgICAgICBBIHN0cmluZyBpcyBhIHNlcXVlbmNlIG9mIHZhbHVlcyB0aGF0IHJlcHJlc2VudCBVbmljb2RlIGNvZGVwb2ludHMuCisgICAgICAgICBBbGwgdGhlIGNvZGVwb2ludHMgaW4gcmFuZ2UgYGBVKzAwMDAgLSBVKzEwRkZGRmBgIGNhbiBiZSByZXByZXNlbnRlZAorICAgICAgICAgaW4gYSBzdHJpbmcuICBQeXRob24gZG9lc24ndCBoYXZlIGEgOmM6dHlwZTpgY2hyYCB0eXBlLCBhbmQKKyAgICAgICAgIGV2ZXJ5IGNoYXJhY3RlciBpbiB0aGUgc3RyaW5nIGlzIHJlcHJlc2VudGVkIGFzIGEgc3RyaW5nIG9iamVjdAorICAgICAgICAgd2l0aCBsZW5ndGggYGAxYGAuICBUaGUgYnVpbHQtaW4gZnVuY3Rpb24gOmZ1bmM6YG9yZGAgY29udmVydHMgYQorICAgICAgICAgY2hhcmFjdGVyIHRvIGl0cyBjb2RlcG9pbnQgKGFzIGFuIGludGVnZXIpOyA6ZnVuYzpgY2hyYCBjb252ZXJ0cworICAgICAgICAgYW4gaW50ZWdlciBpbiByYW5nZSBgYDAgLSAxMEZGRkZgYCB0byB0aGUgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXIuCisgICAgICAgICA6bWV0aDpgc3RyLmVuY29kZWAgY2FuIGJlIHVzZWQgdG8gY29udmVydCBhIDpjbGFzczpgc3RyYCB0bworICAgICAgICAgOmNsYXNzOmBieXRlc2AgdXNpbmcgdGhlIGdpdmVuIGVuY29kaW5nLCBhbmQgOm1ldGg6YGJ5dGVzLmRlY29kZWAgY2FuCisgICAgICAgICBiZSB1c2VkIHRvIGFjaGlldmUgdGhlIG9wcG9zaXRlLgogCiAgICAgICBUdXBsZXMKICAgICAgICAgIC4uIGluZGV4OjoKQEAgLTQ0OCw2ICs0NDgsMTEgQEAKICAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rCiAgICAgICB8IDphdHRyOmBfX25hbWVfX2AgICAgICAgIHwgVGhlIGZ1bmN0aW9uJ3MgbmFtZSAgICAgICAgICAgfCBXcml0YWJsZSAgfAogICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSsKKyAgICAgIHwgOmF0dHI6YF9fcXVhbG5hbWVfX2AgICAgfCBUaGUgZnVuY3Rpb24ncyAgICAgICAgICAgICAgICB8IFdyaXRhYmxlICB8CisgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgOnRlcm06YHF1YWxpZmllZCBuYW1lYCAgICAgICAgfCAgICAgICAgICAgfAorICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgIHwKKyAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjMgICAgICAgICB8ICAgICAgICAgICB8CisgICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKwogICAgICAgfCA6YXR0cjpgX19tb2R1bGVfX2AgICAgICB8IFRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgdGhlICAgIHwgV3JpdGFibGUgIHwKICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgfCBmdW5jdGlvbiB3YXMgZGVmaW5lZCBpbiwgb3IgICB8ICAgICAgICAgICB8CiAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBOb25lYGAgaWYgdW5hdmFpbGFibGUuICAgICAgfCAgICAgICAgICAgfApAQCAtMTM1MSw3ICsxMzU2LDggQEAKIAogLi4gbWV0aG9kOjogb2JqZWN0Ll9fZGlyX18oc2VsZikKIAotICAgQ2FsbGVkIHdoZW4gOmZ1bmM6YGRpcmAgaXMgY2FsbGVkIG9uIHRoZSBvYmplY3QuICBBIGxpc3QgbXVzdCBiZSByZXR1cm5lZC4KKyAgIENhbGxlZCB3aGVuIDpmdW5jOmBkaXJgIGlzIGNhbGxlZCBvbiB0aGUgb2JqZWN0LiBBIHNlcXVlbmNlIG11c3QgYmUKKyAgIHJldHVybmVkLiA6ZnVuYzpgZGlyYCBjb252ZXJ0cyB0aGUgcmV0dXJuZWQgc2VxdWVuY2UgdG8gYSBsaXN0IGFuZCBzb3J0cyBpdC4KIAogCiAuLiBfZGVzY3JpcHRvcnM6CmRpZmYgLS1naXQgYS9Eb2MvcmVmZXJlbmNlL2V4cHJlc3Npb25zLnJzdCBiL0RvYy9yZWZlcmVuY2UvZXhwcmVzc2lvbnMucnN0CmluZGV4IDY1NWViZGUuLjk3NDYxNjIgMTAwNjQ0Ci0tLSBhL0RvYy9yZWZlcmVuY2UvZXhwcmVzc2lvbnMucnN0CisrKyBiL0RvYy9yZWZlcmVuY2UvZXhwcmVzc2lvbnMucnN0CkBAIC0zMTgsNyArMzE4LDcgQEAKIAogLi4gcHJvZHVjdGlvbmxpc3Q6OgogICAgeWllbGRfYXRvbTogIigiIGB5aWVsZF9leHByZXNzaW9uYCAiKSIKLSAgIHlpZWxkX2V4cHJlc3Npb246ICJ5aWVsZCIgW2BleHByZXNzaW9uX2xpc3RgXQorICAgeWllbGRfZXhwcmVzc2lvbjogInlpZWxkIiBbYGV4cHJlc3Npb25fbGlzdGAgfCAiZnJvbSIgYGV4cHJlc3Npb25gXQogCiBUaGUgOmtleXdvcmQ6YHlpZWxkYCBleHByZXNzaW9uIGlzIG9ubHkgdXNlZCB3aGVuIGRlZmluaW5nIGEgZ2VuZXJhdG9yIGZ1bmN0aW9uLAogYW5kIGNhbiBvbmx5IGJlIHVzZWQgaW4gdGhlIGJvZHkgb2YgYSBmdW5jdGlvbiBkZWZpbml0aW9uLiAgVXNpbmcgYQpAQCAtMzM2LDcgKzMzNiwxMCBAQAogdGhlIGdlbmVyYXRvcidzIG1ldGhvZHMsIHRoZSBmdW5jdGlvbiBjYW4gcHJvY2VlZCBleGFjdGx5IGFzIGlmIHRoZQogOmtleXdvcmQ6YHlpZWxkYCBleHByZXNzaW9uIHdhcyBqdXN0IGFub3RoZXIgZXh0ZXJuYWwgY2FsbC4gIFRoZSB2YWx1ZSBvZiB0aGUKIDprZXl3b3JkOmB5aWVsZGAgZXhwcmVzc2lvbiBhZnRlciByZXN1bWluZyBkZXBlbmRzIG9uIHRoZSBtZXRob2Qgd2hpY2ggcmVzdW1lZAotdGhlIGV4ZWN1dGlvbi4KK3RoZSBleGVjdXRpb24uIElmIDptZXRoOmBfX25leHRfX2AgaXMgdXNlZCAodHlwaWNhbGx5IHZpYSBlaXRoZXIgYQorOmtleXdvcmQ6YGZvcmAgb3IgdGhlIDpmdW5jOmBuZXh0YCBidWlsdGluKSB0aGVuIHRoZSByZXN1bHQgaXMgOmNvbnN0OmBOb25lYCwKK290aGVyd2lzZSwgaWYgOm1ldGg6YHNlbmRgIGlzIHVzZWQsIHRoZW4gdGhlIHJlc3VsdCB3aWxsIGJlIHRoZSB2YWx1ZSBwYXNzZWQKK2luIHRvIHRoYXQgbWV0aG9kLgogCiAuLiBpbmRleDo6IHNpbmdsZTogY29yb3V0aW5lCiAKQEAgLTM0NiwxMiArMzQ5LDMyIEBACiB3aGVyZSBzaG91bGQgdGhlIGV4ZWN1dGlvbiBjb250aW51ZSBhZnRlciBpdCB5aWVsZHM7IHRoZSBjb250cm9sIGlzIGFsd2F5cwogdHJhbnNmZXJyZWQgdG8gdGhlIGdlbmVyYXRvcidzIGNhbGxlci4KIAotVGhlIDprZXl3b3JkOmB5aWVsZGAgc3RhdGVtZW50IGlzIGFsbG93ZWQgaW4gdGhlIDprZXl3b3JkOmB0cnlgIGNsYXVzZSBvZiBhCis6a2V5d29yZDpgeWllbGRgIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIHRoZSA6a2V5d29yZDpgdHJ5YCBjbGF1c2Ugb2YgYQogOmtleXdvcmQ6YHRyeWAgLi4uICA6a2V5d29yZDpgZmluYWxseWAgY29uc3RydWN0LiAgSWYgdGhlIGdlbmVyYXRvciBpcyBub3QKIHJlc3VtZWQgYmVmb3JlIGl0IGlzIGZpbmFsaXplZCAoYnkgcmVhY2hpbmcgYSB6ZXJvIHJlZmVyZW5jZSBjb3VudCBvciBieSBiZWluZwogZ2FyYmFnZSBjb2xsZWN0ZWQpLCB0aGUgZ2VuZXJhdG9yLWl0ZXJhdG9yJ3MgOm1ldGg6YGNsb3NlYCBtZXRob2Qgd2lsbCBiZQogY2FsbGVkLCBhbGxvd2luZyBhbnkgcGVuZGluZyA6a2V5d29yZDpgZmluYWxseWAgY2xhdXNlcyB0byBleGVjdXRlLgogCitXaGVuIGBgeWllbGQgZnJvbSA8ZXhwcj5gYCBpcyB1c2VkLCBpdCB0cmVhdHMgdGhlIHN1cHBsaWVkIGV4cHJlc3Npb24gYXMKK2Egc3ViaXRlcmF0b3IuIEFsbCB2YWx1ZXMgcHJvZHVjZWQgYnkgdGhhdCBzdWJpdGVyYXRvciBhcmUgcGFzc2VkIGRpcmVjdGx5Cit0byB0aGUgY2FsbGVyIG9mIHRoZSBjdXJyZW50IGdlbmVyYXRvcidzIG1ldGhvZHMuIEFueSB2YWx1ZXMgcGFzc2VkIGluIHdpdGgKKzptZXRoOmBzZW5kYCBhbmQgYW55IGV4Y2VwdGlvbnMgcGFzc2VkIGluIHdpdGggOm1ldGg6YHRocm93YCBhcmUgcGFzc2VkIHRvCit0aGUgdW5kZXJseWluZyBpdGVyYXRvciBpZiBpdCBoYXMgdGhlIGFwcHJvcHJpYXRlIG1ldGhvZHMuIElmIHRoaXMgaXMgbm90IHRoZQorY2FzZSwgdGhlbiA6bWV0aDpgc2VuZGAgd2lsbCByYWlzZSA6ZXhjOmBBdHRyaWJ1dGVFcnJvcmAgb3IgOmV4YzpgVHlwZUVycm9yYCwKK3doaWxlIDptZXRoOmB0aHJvd2Agd2lsbCBqdXN0IHJhaXNlIHRoZSBwYXNzZWQgaW4gZXhjZXB0aW9uIGltbWVkaWF0ZWx5LgorCitXaGVuIHRoZSB1bmRlcmx5aW5nIGl0ZXJhdG9yIGlzIGNvbXBsZXRlLCB0aGUgOmF0dHI6YH5TdG9wSXRlcmF0aW9uLnZhbHVlYAorYXR0cmlidXRlIG9mIHRoZSByYWlzZWQgOmV4YzpgU3RvcEl0ZXJhdGlvbmAgaW5zdGFuY2UgYmVjb21lcyB0aGUgdmFsdWUgb2YKK3RoZSB5aWVsZCBleHByZXNzaW9uLiBJdCBjYW4gYmUgZWl0aGVyIHNldCBleHBsaWNpdGx5IHdoZW4gcmFpc2luZworOmV4YzpgU3RvcEl0ZXJhdGlvbmAsIG9yIGF1dG9tYXRpY2FsbHkgd2hlbiB0aGUgc3ViLWl0ZXJhdG9yIGlzIGEgZ2VuZXJhdG9yCisoYnkgcmV0dXJuaW5nIGEgdmFsdWUgZnJvbSB0aGUgc3ViLWdlbmVyYXRvcikuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBBZGRlZCBgYHlpZWxkIGZyb20gPGV4cHI+YGAgdG8gZGVsZWdhdGUgY29udHJvbCBmbG93IHRvIGEgc3ViaXRlcmF0b3IKKworVGhlIHBhcmVudGhlc2VzIGNhbiBiZSBvbWl0dGVkIHdoZW4gdGhlIDprZXl3b3JkOmB5aWVsZGAgZXhwcmVzc2lvbiBpcyB0aGUKK3NvbGUgZXhwcmVzc2lvbiBvbiB0aGUgcmlnaHQgaGFuZCBzaWRlIG9mIGFuIGFzc2lnbm1lbnQgc3RhdGVtZW50LgorCiAuLiBpbmRleDo6IG9iamVjdDogZ2VuZXJhdG9yCiAKIFRoZSBmb2xsb3dpbmcgZ2VuZXJhdG9yJ3MgbWV0aG9kcyBjYW4gYmUgdXNlZCB0byBjb250cm9sIHRoZSBleGVjdXRpb24gb2YgYQpAQCAtNDQ0LDYgKzQ2NywxMCBAQAogICAgICAgVGhlIHByb3Bvc2FsIHRvIGVuaGFuY2UgdGhlIEFQSSBhbmQgc3ludGF4IG9mIGdlbmVyYXRvcnMsIG1ha2luZyB0aGVtCiAgICAgICB1c2FibGUgYXMgc2ltcGxlIGNvcm91dGluZXMuCiAKKyAgIDpwZXA6YDAzODBgIC0gU3ludGF4IGZvciBEZWxlZ2F0aW5nIHRvIGEgU3ViZ2VuZXJhdG9yCisgICAgICBUaGUgcHJvcG9zYWwgdG8gaW50cm9kdWNlIHRoZSA6dG9rZW46YHlpZWxkX2Zyb21gIHN5bnRheCwgbWFraW5nIGRlbGVnYXRpb24KKyAgICAgIHRvIHN1Yi1nZW5lcmF0b3JzIGVhc3kuCisKIAogLi4gX3ByaW1hcmllczoKIApkaWZmIC0tZ2l0IGEvRG9jL3JlZmVyZW5jZS9sZXhpY2FsX2FuYWx5c2lzLnJzdCBiL0RvYy9yZWZlcmVuY2UvbGV4aWNhbF9hbmFseXNpcy5yc3QKaW5kZXggNGI0OTczOC4uYzIwYzQ3ZSAxMDA2NDQKLS0tIGEvRG9jL3JlZmVyZW5jZS9sZXhpY2FsX2FuYWx5c2lzLnJzdAorKysgYi9Eb2MvcmVmZXJlbmNlL2xleGljYWxfYW5hbHlzaXMucnN0CkBAIC00MTIsNyArNDEyLDcgQEAKIAogLi4gcHJvZHVjdGlvbmxpc3Q6OgogICAgYnl0ZXNsaXRlcmFsOiBgYnl0ZXNwcmVmaXhgKGBzaG9ydGJ5dGVzYCB8IGBsb25nYnl0ZXNgKQotICAgYnl0ZXNwcmVmaXg6ICJiIiB8ICJCIiB8ICJiciIgfCAiQnIiIHwgImJSIiB8ICJCUiIKKyAgIGJ5dGVzcHJlZml4OiAiYiIgfCAiQiIgfCAiYnIiIHwgIkJyIiB8ICJiUiIgfCAiQlIiIHwgInJiIiB8ICJyQiIgfCAiUmIiIHwgIlJCIgogICAgc2hvcnRieXRlczogIiciIGBzaG9ydGJ5dGVzaXRlbWAqICInIiB8ICciJyBgc2hvcnRieXRlc2l0ZW1gKiAnIicKICAgIGxvbmdieXRlczogIicnJyIgYGxvbmdieXRlc2l0ZW1gKiAiJycnIiB8ICciIiInIGBsb25nYnl0ZXNpdGVtYCogJyIiIicKICAgIHNob3J0Ynl0ZXNpdGVtOiBgc2hvcnRieXRlc2NoYXJgIHwgYGJ5dGVzZXNjYXBlc2VxYApAQCAtNDQ2LDYgKzQ0NiwxMCBAQAogbGl0ZXJhbCBjaGFyYWN0ZXJzLiAgQXMgYSByZXN1bHQsIGluIHN0cmluZyBsaXRlcmFscywgYGAnXFUnYGAgYW5kIGBgJ1x1J2BgCiBlc2NhcGVzIGluIHJhdyBzdHJpbmdzIGFyZSBub3QgdHJlYXRlZCBzcGVjaWFsbHkuCiAKKyAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMworICAgICAgVGhlIGBgJ3JiJ2BgIHByZWZpeCBvZiByYXcgYnl0ZXMgbGl0ZXJhbHMgaGFzIGJlZW4gYWRkZWQgYXMgYSBzeW5vbnltCisgICAgICBvZiBgYCdicidgYC4KKwogSW4gdHJpcGxlLXF1b3RlZCBzdHJpbmdzLCB1bmVzY2FwZWQgbmV3bGluZXMgYW5kIHF1b3RlcyBhcmUgYWxsb3dlZCAoYW5kIGFyZQogcmV0YWluZWQpLCBleGNlcHQgdGhhdCB0aHJlZSB1bmVzY2FwZWQgcXVvdGVzIGluIGEgcm93IHRlcm1pbmF0ZSB0aGUgc3RyaW5nLiAgKEEKICJxdW90ZSIgaXMgdGhlIGNoYXJhY3RlciB1c2VkIHRvIG9wZW4gdGhlIHN0cmluZywgaS5lLiBlaXRoZXIgYGAnYGAgb3IgYGAiYGAuKQpAQCAtNDkyLDEzICs0OTYsMTMgQEAKICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKIHwgRXNjYXBlIFNlcXVlbmNlIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzIHwKICs9PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PSsKLXwgYGBcTntuYW1lfWBgICAgIHwgQ2hhcmFjdGVyIG5hbWVkICpuYW1lKiBpbiB0aGUgICB8ICAgICAgIHwKK3wgYGBcTntuYW1lfWBgICAgIHwgQ2hhcmFjdGVyIG5hbWVkICpuYW1lKiBpbiB0aGUgICB8IFwoNCkgIHwKIHwgICAgICAgICAgICAgICAgIHwgVW5pY29kZSBkYXRhYmFzZSAgICAgICAgICAgICAgICB8ICAgICAgIHwKICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGBcdXh4eHhgYCAgICAgIHwgQ2hhcmFjdGVyIHdpdGggMTYtYml0IGhleCB2YWx1ZSB8IFwoNCkgIHwKK3wgYGBcdXh4eHhgYCAgICAgIHwgQ2hhcmFjdGVyIHdpdGggMTYtYml0IGhleCB2YWx1ZSB8IFwoNSkgIHwKIHwgICAgICAgICAgICAgICAgIHwgKnh4eHgqICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKLXwgYGBcVXh4eHh4eHh4YGAgIHwgQ2hhcmFjdGVyIHdpdGggMzItYml0IGhleCB2YWx1ZSB8IFwoNSkgIHwKK3wgYGBcVXh4eHh4eHh4YGAgIHwgQ2hhcmFjdGVyIHdpdGggMzItYml0IGhleCB2YWx1ZSB8IFwoNikgIHwKIHwgICAgICAgICAgICAgICAgIHwgKnh4eHh4eHh4KiAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgIHwKICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsKIApAQCAtNTE2LDEwICs1MjAsMTQgQEAKICAgIHdpdGggdGhlIGdpdmVuIHZhbHVlLgogCiAoNCkKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBTdXBwb3J0IGZvciBuYW1lIGFsaWFzZXMgWyNdXyBoYXMgYmVlbiBhZGRlZC4KKworKDUpCiAgICBJbmRpdmlkdWFsIGNvZGUgdW5pdHMgd2hpY2ggZm9ybSBwYXJ0cyBvZiBhIHN1cnJvZ2F0ZSBwYWlyIGNhbiBiZSBlbmNvZGVkIHVzaW5nCiAgICB0aGlzIGVzY2FwZSBzZXF1ZW5jZS4gIEV4YWN0bHkgZm91ciBoZXggZGlnaXRzIGFyZSByZXF1aXJlZC4KIAotKDUpCisoNikKICAgIEFueSBVbmljb2RlIGNoYXJhY3RlciBjYW4gYmUgZW5jb2RlZCB0aGlzIHdheSwgYnV0IGNoYXJhY3RlcnMgb3V0c2lkZSB0aGUgQmFzaWMKICAgIE11bHRpbGluZ3VhbCBQbGFuZSAoQk1QKSB3aWxsIGJlIGVuY29kZWQgdXNpbmcgYSBzdXJyb2dhdGUgcGFpciBpZiBQeXRob24gaXMKICAgIGNvbXBpbGVkIHRvIHVzZSAxNi1iaXQgY29kZSB1bml0cyAodGhlIGRlZmF1bHQpLiAgRXhhY3RseSBlaWdodCBoZXggZGlnaXRzCkBAIC03MDYsMyArNzE0LDggQEAKIG9jY3VycmVuY2Ugb3V0c2lkZSBzdHJpbmcgbGl0ZXJhbHMgYW5kIGNvbW1lbnRzIGlzIGFuIHVuY29uZGl0aW9uYWwgZXJyb3I6OgogCiAgICAkICAgICAgID8gICAgICAgYAorCisKKy4uIHJ1YnJpYzo6IEZvb3Rub3RlcworCisuLiBbI10gaHR0cDovL3d3dy51bmljb2RlLm9yZy9QdWJsaWMvNi4wLjAvdWNkL05hbWVBbGlhc2VzLnR4dApkaWZmIC0tZ2l0IGEvRG9jL3JlZmVyZW5jZS9zaW1wbGVfc3RtdHMucnN0IGIvRG9jL3JlZmVyZW5jZS9zaW1wbGVfc3RtdHMucnN0CmluZGV4IDM0ZWQ5MmYuLjNiZDA4OTQgMTAwNjQ0Ci0tLSBhL0RvYy9yZWZlcmVuY2Uvc2ltcGxlX3N0bXRzLnJzdAorKysgYi9Eb2MvcmVmZXJlbmNlL3NpbXBsZV9zdG10cy5yc3QKQEAgLTQyNSwxMCArNDI1LDEwIEBACiA6a2V5d29yZDpgZmluYWxseWAgY2xhdXNlLCB0aGF0IDprZXl3b3JkOmBmaW5hbGx5YCBjbGF1c2UgaXMgZXhlY3V0ZWQgYmVmb3JlCiByZWFsbHkgbGVhdmluZyB0aGUgZnVuY3Rpb24uCiAKLUluIGEgZ2VuZXJhdG9yIGZ1bmN0aW9uLCB0aGUgOmtleXdvcmQ6YHJldHVybmAgc3RhdGVtZW50IGlzIG5vdCBhbGxvd2VkIHRvCi1pbmNsdWRlIGFuIDp0b2tlbjpgZXhwcmVzc2lvbl9saXN0YC4gIEluIHRoYXQgY29udGV4dCwgYSBiYXJlIDprZXl3b3JkOmByZXR1cm5gCi1pbmRpY2F0ZXMgdGhhdCB0aGUgZ2VuZXJhdG9yIGlzIGRvbmUgYW5kIHdpbGwgY2F1c2UgOmV4YzpgU3RvcEl0ZXJhdGlvbmAgdG8gYmUKLXJhaXNlZC4KK0luIGEgZ2VuZXJhdG9yIGZ1bmN0aW9uLCB0aGUgOmtleXdvcmQ6YHJldHVybmAgc3RhdGVtZW50IGluZGljYXRlcyB0aGF0IHRoZQorZ2VuZXJhdG9yIGlzIGRvbmUgYW5kIHdpbGwgY2F1c2UgOmV4YzpgU3RvcEl0ZXJhdGlvbmAgdG8gYmUgcmFpc2VkLiBUaGUgcmV0dXJuZWQKK3ZhbHVlIChpZiBhbnkpIGlzIHVzZWQgYXMgYW4gYXJndW1lbnQgdG8gY29uc3RydWN0IDpleGM6YFN0b3BJdGVyYXRpb25gIGFuZAorYmVjb21lcyB0aGUgOmF0dHI6YFN0b3BJdGVyYXRpb24udmFsdWVgIGF0dHJpYnV0ZS4KIAogCiAuLiBfeWllbGQ6CkBAIC00NTAsNiArNDUwLDcgQEAKIGFuZCBpcyBvbmx5IHVzZWQgaW4gdGhlIGJvZHkgb2YgdGhlIGdlbmVyYXRvciBmdW5jdGlvbi4gVXNpbmcgYSA6a2V5d29yZDpgeWllbGRgCiBzdGF0ZW1lbnQgaW4gYSBmdW5jdGlvbiBkZWZpbml0aW9uIGlzIHN1ZmZpY2llbnQgdG8gY2F1c2UgdGhhdCBkZWZpbml0aW9uIHRvCiBjcmVhdGUgYSBnZW5lcmF0b3IgZnVuY3Rpb24gaW5zdGVhZCBvZiBhIG5vcm1hbCBmdW5jdGlvbi4KKwogV2hlbiBhIGdlbmVyYXRvciBmdW5jdGlvbiBpcyBjYWxsZWQsIGl0IHJldHVybnMgYW4gaXRlcmF0b3Iga25vd24gYXMgYSBnZW5lcmF0b3IKIGl0ZXJhdG9yLCBvciBtb3JlIGNvbW1vbmx5LCBhIGdlbmVyYXRvci4gIFRoZSBib2R5IG9mIHRoZSBnZW5lcmF0b3IgZnVuY3Rpb24gaXMKIGV4ZWN1dGVkIGJ5IGNhbGxpbmcgdGhlIDpmdW5jOmBuZXh0YCBmdW5jdGlvbiBvbiB0aGUgZ2VuZXJhdG9yIHJlcGVhdGVkbHkgdW50aWwKQEAgLTQ2OSwxNCArNDcwLDI4IEBACiBnYXJiYWdlIGNvbGxlY3RlZCksIHRoZSBnZW5lcmF0b3ItaXRlcmF0b3IncyA6bWV0aDpgY2xvc2VgIG1ldGhvZCB3aWxsIGJlCiBjYWxsZWQsIGFsbG93aW5nIGFueSBwZW5kaW5nIDprZXl3b3JkOmBmaW5hbGx5YCBjbGF1c2VzIHRvIGV4ZWN1dGUuCiAKK1doZW4gYGB5aWVsZCBmcm9tIDxleHByPmBgIGlzIHVzZWQsIGl0IHRyZWF0cyB0aGUgc3VwcGxpZWQgZXhwcmVzc2lvbiBhcworYSBzdWJpdGVyYXRvciwgcHJvZHVjaW5nIHZhbHVlcyBmcm9tIGl0IHVudGlsIHRoZSB1bmRlcmx5aW5nIGl0ZXJhdG9yIGlzCitleGhhdXN0ZWQuCisKKyAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4zCisgICAgICBBZGRlZCBgYHlpZWxkIGZyb20gPGV4cHI+YGAgdG8gZGVsZWdhdGUgY29udHJvbCBmbG93IHRvIGEgc3ViaXRlcmF0b3IKKworRm9yIGZ1bGwgZGV0YWlscyBvZiA6a2V5d29yZDpgeWllbGRgIHNlbWFudGljcywgcmVmZXIgdG8gdGhlIDpyZWY6YHlpZWxkZXhwcmAKK3NlY3Rpb24uCisKIC4uIHNlZWFsc286OgogCiAgICA6cGVwOmAwMjU1YCAtIFNpbXBsZSBHZW5lcmF0b3JzCiAgICAgICBUaGUgcHJvcG9zYWwgZm9yIGFkZGluZyBnZW5lcmF0b3JzIGFuZCB0aGUgOmtleXdvcmQ6YHlpZWxkYCBzdGF0ZW1lbnQgdG8gUHl0aG9uLgogCiAgICA6cGVwOmAwMzQyYCAtIENvcm91dGluZXMgdmlhIEVuaGFuY2VkIEdlbmVyYXRvcnMKLSAgICAgIFRoZSBwcm9wb3NhbCB0aGF0LCBhbW9uZyBvdGhlciBnZW5lcmF0b3IgZW5oYW5jZW1lbnRzLCBwcm9wb3NlZCBhbGxvd2luZwotICAgICAgOmtleXdvcmQ6YHlpZWxkYCB0byBhcHBlYXIgaW5zaWRlIGEgOmtleXdvcmQ6YHRyeWAgLi4uIDprZXl3b3JkOmBmaW5hbGx5YCBibG9jay4KKyAgICAgIFRoZSBwcm9wb3NhbCB0byBlbmhhbmNlIHRoZSBBUEkgYW5kIHN5bnRheCBvZiBnZW5lcmF0b3JzLCBtYWtpbmcgdGhlbQorICAgICAgdXNhYmxlIGFzIHNpbXBsZSBjb3JvdXRpbmVzLgorCisgICA6cGVwOmAwMzgwYCAtIFN5bnRheCBmb3IgRGVsZWdhdGluZyB0byBhIFN1YmdlbmVyYXRvcgorICAgICAgVGhlIHByb3Bvc2FsIHRvIGludHJvZHVjZSB0aGUgOnRva2VuOmB5aWVsZF9mcm9tYCBzeW50YXgsIG1ha2luZyBkZWxlZ2F0aW9uCisgICAgICB0byBzdWItZ2VuZXJhdG9ycyBlYXN5LgogCiAKIC4uIF9yYWlzZToKZGlmZiAtLWdpdCBhL0RvYy90b29scy9zcGhpbnhleHQvaW5kZXhjb250ZW50Lmh0bWwgYi9Eb2MvdG9vbHMvc3BoaW54ZXh0L2luZGV4Y29udGVudC5odG1sCmluZGV4IDdmODU0NzAuLmFiZTE3ZjMgMTAwNjQ0Ci0tLSBhL0RvYy90b29scy9zcGhpbnhleHQvaW5kZXhjb250ZW50Lmh0bWwKKysrIGIvRG9jL3Rvb2xzL3NwaGlueGV4dC9pbmRleGNvbnRlbnQuaHRtbApAQCAtMjAsMTAgKzIwLDEwIEBACiAgICAgICAgICA8c3BhbiBjbGFzcz0ibGlua2Rlc2NyIj50dXRvcmlhbCBmb3IgQy9DKysgcHJvZ3JhbW1lcnM8L3NwYW4+PC9wPgogICAgICAgPHAgY2xhc3M9ImJpZ2xpbmsiPjxhIGNsYXNzPSJiaWdsaW5rIiBocmVmPSJ7eyBwYXRodG8oImMtYXBpL2luZGV4IikgfX0iPlB5dGhvbi9DIEFQSTwvYT48YnIvPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImxpbmtkZXNjciI+cmVmZXJlbmNlIGZvciBDL0MrKyBwcm9ncmFtbWVyczwvc3Bhbj48L3A+Ci0gICAgICA8cCBjbGFzcz0iYmlnbGluayI+PGEgY2xhc3M9ImJpZ2xpbmsiIGhyZWY9Int7IHBhdGh0bygiaW5zdGFsbC9pbmRleCIpIH19Ij5JbnN0YWxsaW5nIFB5dGhvbiBNb2R1bGVzPC9hPjxici8+Ci0gICAgICAgICA8c3BhbiBjbGFzcz0ibGlua2Rlc2NyIj5pbmZvcm1hdGlvbiBmb3IgaW5zdGFsbGVycyAmYW1wOyBzeXMtYWRtaW5zPC9zcGFuPjwvcD4KLSAgICAgIDxwIGNsYXNzPSJiaWdsaW5rIj48YSBjbGFzcz0iYmlnbGluayIgaHJlZj0ie3sgcGF0aHRvKCJkaXN0dXRpbHMvaW5kZXgiKSB9fSI+RGlzdHJpYnV0aW5nIFB5dGhvbiBNb2R1bGVzPC9hPjxici8+Ci0gICAgICAgICA8c3BhbiBjbGFzcz0ibGlua2Rlc2NyIj5zaGFyaW5nIG1vZHVsZXMgd2l0aCBvdGhlcnM8L3NwYW4+PC9wPgorICAgICAgPHAgY2xhc3M9ImJpZ2xpbmsiPjxhIGNsYXNzPSJiaWdsaW5rIiBocmVmPSJ7eyBwYXRodG8oImluc3RhbGwvaW5kZXgiKSB9fSI+SW5zdGFsbGluZyBQeXRob24gUHJvamVjdHM8L2E+PGJyLz4KKyAgICAgICAgIDxzcGFuIGNsYXNzPSJsaW5rZGVzY3IiPmZpbmRpbmcgYW5kIGluc3RhbGxpbmcgbW9kdWxlcyBhbmQgYXBwbGljYXRpb25zPC9zcGFuPjwvcD4KKyAgICAgIDxwIGNsYXNzPSJiaWdsaW5rIj48YSBjbGFzcz0iYmlnbGluayIgaHJlZj0ie3sgcGF0aHRvKCJwYWNrYWdpbmcvaW5kZXgiKSB9fSI+RGlzdHJpYnV0aW5nIFB5dGhvbiBQcm9qZWN0czwvYT48YnIvPgorICAgICAgICAgPHNwYW4gY2xhc3M9ImxpbmtkZXNjciI+cGFja2FnaW5nIGFuZCBkaXN0cmlidXRpbmcgbW9kdWxlcyBhbmQgYXBwbGljYXRpb25zPC9zcGFuPjwvcD4KICAgICAgIDxwIGNsYXNzPSJiaWdsaW5rIj48YSBjbGFzcz0iYmlnbGluayIgaHJlZj0ie3sgcGF0aHRvKCJmYXEvaW5kZXgiKSB9fSI+RkFRczwvYT48YnIvPgogICAgICAgICAgPHNwYW4gY2xhc3M9ImxpbmtkZXNjciI+ZnJlcXVlbnRseSBhc2tlZCBxdWVzdGlvbnMgKHdpdGggYW5zd2VycyEpPC9zcGFuPjwvcD4KICAgICA8L3RkPjwvdHI+CmRpZmYgLS1naXQgYS9Eb2MvdG9vbHMvc3BoaW54ZXh0L2luZGV4c2lkZWJhci5odG1sIGIvRG9jL3Rvb2xzL3NwaGlueGV4dC9pbmRleHNpZGViYXIuaHRtbAppbmRleCA2NzI0OTJlLi4zYWQyNGY5IDEwMDY0NAotLS0gYS9Eb2MvdG9vbHMvc3BoaW54ZXh0L2luZGV4c2lkZWJhci5odG1sCisrKyBiL0RvYy90b29scy9zcGhpbnhleHQvaW5kZXhzaWRlYmFyLmh0bWwKQEAgLTMsNyArMyw3IEBACiAJICAgIDxoMz5Eb2NzIGZvciBvdGhlciB2ZXJzaW9uczwvaDM+CiAJICAgIDx1bD4KIAkgICAgICA8bGk+PGEgaHJlZj0iaHR0cDovL2RvY3MucHl0aG9uLm9yZy8yLjcvIj5QeXRob24gMi43IChzdGFibGUpPC9hPjwvbGk+Ci0JICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvMy4xLyI+UHl0aG9uIDMuMSAoc3RhYmxlKTwvYT48L2xpPgorCSAgICAgIDxsaT48YSBocmVmPSJodHRwOi8vZG9jcy5weXRob24ub3JnLzMuMi8iPlB5dGhvbiAzLjIgKHN0YWJsZSk8L2E+PC9saT4KICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cucHl0aG9uLm9yZy9kb2MvdmVyc2lvbnMvIj5PbGQgdmVyc2lvbnM8L2E+PC9saT4KICAgICAgICAgICAgIDwvdWw+CiAKZGlmZiAtLWdpdCBhL0RvYy90b29scy9zcGhpbnhleHQvcHlzcGVjaWZpYy5weSBiL0RvYy90b29scy9zcGhpbnhleHQvcHlzcGVjaWZpYy5weQppbmRleCA0MzI5MjgxLi5kOTI4Y2ZkIDEwMDY0NAotLS0gYS9Eb2MvdG9vbHMvc3BoaW54ZXh0L3B5c3BlY2lmaWMucHkKKysrIGIvRG9jL3Rvb2xzL3NwaGlueGV4dC9weXNwZWNpZmljLnB5CkBAIC0xMCw3ICsxMCw3IEBACiAiIiIKIAogSVNTVUVfVVJJID0gJ2h0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWUlcycKLVNPVVJDRV9VUkkgPSAnaHR0cDovL2hnLnB5dGhvbi5vcmcvY3B5dGhvbi9maWxlLzMuMi8lcycKK1NPVVJDRV9VUkkgPSAnaHR0cDovL2hnLnB5dGhvbi5vcmcvY3B5dGhvbi9maWxlL2RlZmF1bHQvJXMnCiAKIGZyb20gZG9jdXRpbHMgaW1wb3J0IG5vZGVzLCB1dGlscwogZnJvbSBzcGhpbngudXRpbC5ub2RlcyBpbXBvcnQgc3BsaXRfZXhwbGljaXRfdGl0bGUKZGlmZiAtLWdpdCBhL0RvYy90b29scy9zcGhpbnhleHQvc3VzcC1pZ25vcmVkLmNzdiBiL0RvYy90b29scy9zcGhpbnhleHQvc3VzcC1pZ25vcmVkLmNzdgppbmRleCA1MDc2YWVkLi4xOGExNmQ3IDEwMDY0NAotLS0gYS9Eb2MvdG9vbHMvc3BoaW54ZXh0L3N1c3AtaWdub3JlZC5jc3YKKysrIGIvRG9jL3Rvb2xzL3NwaGlueGV4dC9zdXNwLWlnbm9yZWQuY3N2CkBAIC00NSw4ICs0NSw4IEBACiBsaWJyYXJ5L2Z1bmN0aW9ucywsOnN0b3AsYVtzdGFydDpzdG9wOnN0ZXBdCiBsaWJyYXJ5L2hvdHNob3QsLDpsaW5lbm8sIm5jYWxscyAgdG90dGltZSAgcGVyY2FsbCAgY3VtdGltZSAgcGVyY2FsbCBmaWxlbmFtZTpsaW5lbm8oZnVuY3Rpb24pIgogbGlicmFyeS9odHRwbGliLCw6cG9ydCxob3N0OnBvcnQKLWxpYnJhcnkvaW1hcGxpYiwsOk1NLCIiIkRELU1tbS1ZWVlZIEhIOk1NOlNTICtISE1NIiIiCi1saWJyYXJ5L2ltYXBsaWIsLDpTUywiIiJERC1NbW0tWVlZWSBISDpNTTpTUyArSEhNTSIiIgorbGlicmFyeS9pbWFwbGliLCw6TU0sIiIiREQtTW1tLVlZWVkgSEg6TU06U1MiCitsaWJyYXJ5L2ltYXBsaWIsLDpTUywiIiJERC1NbW0tWVlZWSBISDpNTTpTUyIKIGxpYnJhcnkvaXRlcnRvb2xzLCw6c3RvcCxlbGVtZW50cyBmcm9tIHNlcVtzdGFydDpzdG9wOnN0ZXBdCiBsaWJyYXJ5L2l0ZXJ0b29scywsOnN0ZXAsZWxlbWVudHMgZnJvbSBzZXFbc3RhcnQ6c3RvcDpzdGVwXQogbGlicmFyeS9saW5lY2FjaGUsLDpzeXMsInN5czp4OjM6MzpzeXM6L2RldjovYmluL3NoIgpAQCAtMjczLDMgKzI3MywyNSBAQAogbGlicmFyeS9wcHJpbnQsMjA5LDo6LCInUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIDo6IDIuNycsIgogbGlicmFyeS9wcHJpbnQsMjA5LDo6LCInVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTGlicmFyaWVzJywiCiBsaWJyYXJ5L3BwcmludCwyMDksOjosIidUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBMaWJyYXJpZXMgOjogUHl0aG9uIE1vZHVsZXMnXSwiCitwYWNrYWdpbmcvZXhhbXBsZXMsLGAsVGhpcyBpcyB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIGBgZm9vYmFyYGAgcHJvamVjdC4KK3BhY2thZ2luZy9zZXR1cGNmZywsOjosRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDMgLSBBbHBoYQorcGFja2FnaW5nL3NldHVwY2ZnLCw6OixMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBNb3ppbGxhIFB1YmxpYyBMaWNlbnNlIDEuMSAoTVBMIDEuMSkKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidEZXZlbG9wbWVudCBTdGF0dXMgOjogNCAtIEJldGEnLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidFbnZpcm9ubWVudCA6OiBDb25zb2xlJywiCitwYWNrYWdpbmcvc2V0dXBzY3JpcHQsLDo6LCInRW52aXJvbm1lbnQgOjogV2ViIEVudmlyb25tZW50JywiCitwYWNrYWdpbmcvc2V0dXBzY3JpcHQsLDo6LCInSW50ZW5kZWQgQXVkaWVuY2UgOjogRW5kIFVzZXJzL0Rlc2t0b3AnLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidJbnRlbmRlZCBBdWRpZW5jZSA6OiBEZXZlbG9wZXJzJywiCitwYWNrYWdpbmcvc2V0dXBzY3JpcHQsLDo6LCInSW50ZW5kZWQgQXVkaWVuY2UgOjogU3lzdGVtIEFkbWluaXN0cmF0b3JzJywiCitwYWNrYWdpbmcvc2V0dXBzY3JpcHQsLDo6LCInTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogUHl0aG9uIFNvZnR3YXJlIEZvdW5kYXRpb24gTGljZW5zZScsIgorcGFja2FnaW5nL3NldHVwc2NyaXB0LCw6OiwiJ09wZXJhdGluZyBTeXN0ZW0gOjogTWFjT1MgOjogTWFjT1MgWCcsIgorcGFja2FnaW5nL3NldHVwc2NyaXB0LCw6OiwiJ09wZXJhdGluZyBTeXN0ZW0gOjogTWljcm9zb2Z0IDo6IFdpbmRvd3MnLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidPcGVyYXRpbmcgU3lzdGVtIDo6IFBPU0lYJywiCitwYWNrYWdpbmcvc2V0dXBzY3JpcHQsLDo6LCInUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uJywiCitwYWNrYWdpbmcvc2V0dXBzY3JpcHQsLDo6LCInVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRW1haWwnLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidUb3BpYyA6OiBPZmZpY2UvQnVzaW5lc3MnLCIKK3BhY2thZ2luZy9zZXR1cHNjcmlwdCwsOjosIidUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBCdWcgVHJhY2tpbmcnLCIKK3BhY2thZ2luZy90dXRvcmlhbCwsOjosMSkgTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKEdQTCkKK3BhY2thZ2luZy90dXRvcmlhbCwsOjosMikgTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogR05VIExpYnJhcnkgb3IgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgKExHUEwpCitwYWNrYWdpbmcvdHV0b3JpYWwsLDo6LFR5cGUgdGhlIG51bWJlciBvZiB0aGUgbGljZW5zZSB5b3Ugd2lzaCB0byB1c2Ugb3IgPyB0byB0cnkgYWdhaW46OiAxCitwYWNrYWdpbmcvdHV0b3JpYWwsLDo6LGNsYXNzaWZpZXIgPSBEZXZlbG9wbWVudCBTdGF0dXMgOjogMyAtIEFscGhhCitwYWNrYWdpbmcvdHV0b3JpYWwsLDo6LExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChHUEwpCmRpZmYgLS1naXQgYS9Eb2MvdHV0b3JpYWwvY2xhc3Nlcy5yc3QgYi9Eb2MvdHV0b3JpYWwvY2xhc3Nlcy5yc3QKaW5kZXggNjhjNGU1ZC4uMzMxNzFjZCAxMDA2NDQKLS0tIGEvRG9jL3R1dG9yaWFsL2NsYXNzZXMucnN0CisrKyBiL0RvYy90dXRvcmlhbC9jbGFzc2VzLnJzdApAQCAtNjk1LDkgKzY5NSw5IEBACiAgICBjbGFzcyBEKEMpOgogICAgICAgIHBhc3MKIAotICAgZm9yIGMgaW4gW0IsIEMsIERdOgorICAgZm9yIGNscyBpbiBbQiwgQywgRF06CiAgICAgICAgdHJ5OgotICAgICAgICAgICByYWlzZSBjKCkKKyAgICAgICAgICAgcmFpc2UgY2xzKCkKICAgICAgICBleGNlcHQgRDoKICAgICAgICAgICAgcHJpbnQoIkQiKQogICAgICAgIGV4Y2VwdCBDOgpkaWZmIC0tZ2l0IGEvRG9jL3R1dG9yaWFsL2RhdGFzdHJ1Y3R1cmVzLnJzdCBiL0RvYy90dXRvcmlhbC9kYXRhc3RydWN0dXJlcy5yc3QKaW5kZXggNWZiNzJmZC4uODNiMzAxMiAxMDA2NDQKLS0tIGEvRG9jL3R1dG9yaWFsL2RhdGFzdHJ1Y3R1cmVzLnJzdAorKysgYi9Eb2MvdHV0b3JpYWwvZGF0YXN0cnVjdHVyZXMucnN0CkBAIC0xOSwxMyArMTksMTMgQEAKIC4uIG1ldGhvZDo6IGxpc3QuYXBwZW5kKHgpCiAgICA6bm9pbmRleDoKIAotICAgQWRkIGFuIGl0ZW0gdG8gdGhlIGVuZCBvZiB0aGUgbGlzdDsgZXF1aXZhbGVudCB0byBgYGFbbGVuKGEpOl0gPSBbeF1gYC4KKyAgIEFkZCBhbiBpdGVtIHRvIHRoZSBlbmQgb2YgdGhlIGxpc3QuICBFcXVpdmFsZW50IHRvIGBgYVtsZW4oYSk6XSA9IFt4XWBgLgogCiAKIC4uIG1ldGhvZDo6IGxpc3QuZXh0ZW5kKEwpCiAgICA6bm9pbmRleDoKIAotICAgRXh0ZW5kIHRoZSBsaXN0IGJ5IGFwcGVuZGluZyBhbGwgdGhlIGl0ZW1zIGluIHRoZSBnaXZlbiBsaXN0OyBlcXVpdmFsZW50IHRvCisgICBFeHRlbmQgdGhlIGxpc3QgYnkgYXBwZW5kaW5nIGFsbCB0aGUgaXRlbXMgaW4gdGhlIGdpdmVuIGxpc3QuICBFcXVpdmFsZW50IHRvCiAgICBgYGFbbGVuKGEpOl0gPSBMYGAuCiAKIApAQCAtNDAsOCArNDAsOCBAQAogLi4gbWV0aG9kOjogbGlzdC5yZW1vdmUoeCkKICAgIDpub2luZGV4OgogCi0gICBSZW1vdmUgdGhlIGZpcnN0IGl0ZW0gZnJvbSB0aGUgbGlzdCB3aG9zZSB2YWx1ZSBpcyAqeCouIEl0IGlzIGFuIGVycm9yIGlmIHRoZXJlCi0gICBpcyBubyBzdWNoIGl0ZW0uCisgICBSZW1vdmUgdGhlIGZpcnN0IGl0ZW0gZnJvbSB0aGUgbGlzdCB3aG9zZSB2YWx1ZSBpcyAqeCouICBJdCBpcyBhbiBlcnJvciBpZgorICAgdGhlcmUgaXMgbm8gc3VjaCBpdGVtLgogCiAKIC4uIG1ldGhvZDo6IGxpc3QucG9wKFtpXSkKQEAgLTcwLDEzICs3MCwxNCBAQAogLi4gbWV0aG9kOjogbGlzdC5zb3J0KCkKICAgIDpub2luZGV4OgogCi0gICBTb3J0IHRoZSBpdGVtcyBvZiB0aGUgbGlzdCwgaW4gcGxhY2UuCisgICBTb3J0IHRoZSBpdGVtcyBvZiB0aGUgbGlzdCBpbiBwbGFjZS4KIAogCiAuLiBtZXRob2Q6OiBsaXN0LnJldmVyc2UoKQogICAgOm5vaW5kZXg6CiAKLSAgIFJldmVyc2UgdGhlIGVsZW1lbnRzIG9mIHRoZSBsaXN0LCBpbiBwbGFjZS4KKyAgIFJldmVyc2UgdGhlIGVsZW1lbnRzIG9mIHRoZSBsaXN0IGluIHBsYWNlLgorCiAKIEFuIGV4YW1wbGUgdGhhdCB1c2VzIG1vc3Qgb2YgdGhlIGxpc3QgbWV0aG9kczo6CiAKQEAgLTk5LDYgKzEwMCwxMCBAQAogICAgPj4+IGEKICAgIFstMSwgMSwgNjYuMjUsIDMzMywgMzMzLCAxMjM0LjVdCiAKK1lvdSBtaWdodCBoYXZlIG5vdGljZWQgdGhhdCBtZXRob2RzIGxpa2UgYGBpbnNlcnRgYCwgYGByZW1vdmVgYCBvciBgYHNvcnRgYCB0aGF0Cittb2RpZnkgdGhlIGxpc3QgaGF2ZSBubyByZXR1cm4gdmFsdWUgcHJpbnRlZCAtLSB0aGV5IHJldHVybiBgYE5vbmVgYC4gWzFdXyAgVGhpcworaXMgYSBkZXNpZ24gcHJpbmNpcGxlIGZvciBhbGwgbXV0YWJsZSBkYXRhIHN0cnVjdHVyZXMgaW4gUHl0aG9uLgorCiAKIC4uIF90dXQtbGlzdHMtYXMtc3RhY2tzOgogCkBAIC00NjgsNyArNDczLDcgQEAKIAogUGVyZm9ybWluZyBgYGxpc3QoZC5rZXlzKCkpYGAgb24gYSBkaWN0aW9uYXJ5IHJldHVybnMgYSBsaXN0IG9mIGFsbCB0aGUga2V5cwogdXNlZCBpbiB0aGUgZGljdGlvbmFyeSwgaW4gYXJiaXRyYXJ5IG9yZGVyIChpZiB5b3Ugd2FudCBpdCBzb3J0ZWQsIGp1c3QgdXNlCi1gYHNvcnRlZChkLmtleXMoKSlgYCBpbnN0ZWFkKS4gWzFdXyAgVG8gY2hlY2sgd2hldGhlciBhIHNpbmdsZSBrZXkgaXMgaW4gdGhlCitgYHNvcnRlZChkLmtleXMoKSlgYCBpbnN0ZWFkKS4gWzJdXyAgVG8gY2hlY2sgd2hldGhlciBhIHNpbmdsZSBrZXkgaXMgaW4gdGhlCiBkaWN0aW9uYXJ5LCB1c2UgdGhlIDprZXl3b3JkOmBpbmAga2V5d29yZC4KIAogSGVyZSBpcyBhIHNtYWxsIGV4YW1wbGUgdXNpbmcgYSBkaWN0aW9uYXJ5OjoKQEAgLTY1Miw2ICs2NTcsOSBAQAogCiAuLiBydWJyaWM6OiBGb290bm90ZXMKIAotLi4gWzFdIENhbGxpbmcgYGBkLmtleXMoKWBgIHdpbGwgcmV0dXJuIGEgOmRmbjpgZGljdGlvbmFyeSB2aWV3YCBvYmplY3QuICBJdAorLi4gWzFdIE90aGVyIGxhbmd1YWdlcyBtYXkgcmV0dXJuIHRoZSBtdXRhdGVkIG9iamVjdCwgd2hpY2ggYWxsb3dzIG1ldGhvZAorICAgICAgIGNoYWluaW5nLCBzdWNoIGFzIGBgZC0+aW5zZXJ0KCJhIiktPnJlbW92ZSgiYiIpLT5zb3J0KCk7YGAuCisKKy4uIFsyXSBDYWxsaW5nIGBgZC5rZXlzKClgYCB3aWxsIHJldHVybiBhIDpkZm46YGRpY3Rpb25hcnkgdmlld2Agb2JqZWN0LiAgSXQKICAgICAgICBzdXBwb3J0cyBvcGVyYXRpb25zIGxpa2UgbWVtYmVyc2hpcCB0ZXN0IGFuZCBpdGVyYXRpb24sIGJ1dCBpdHMgY29udGVudHMKICAgICAgICBhcmUgbm90IGluZGVwZW5kZW50IG9mIHRoZSBvcmlnaW5hbCBkaWN0aW9uYXJ5IC0tIGl0IGlzIG9ubHkgYSAqdmlldyouCmRpZmYgLS1naXQgYS9Eb2MvdHV0b3JpYWwvaW50ZXJwcmV0ZXIucnN0IGIvRG9jL3R1dG9yaWFsL2ludGVycHJldGVyLnJzdAppbmRleCAyMzM4NDY1Li44ZjA4Y2Q4IDEwMDY0NAotLS0gYS9Eb2MvdHV0b3JpYWwvaW50ZXJwcmV0ZXIucnN0CisrKyBiL0RvYy90dXRvcmlhbC9pbnRlcnByZXRlci5yc3QKQEAgLTEwLDExICsxMCwxMSBAQAogSW52b2tpbmcgdGhlIEludGVycHJldGVyCiA9PT09PT09PT09PT09PT09PT09PT09PT0KIAotVGhlIFB5dGhvbiBpbnRlcnByZXRlciBpcyB1c3VhbGx5IGluc3RhbGxlZCBhcyA6ZmlsZTpgL3Vzci9sb2NhbC9iaW4vcHl0aG9uMy4yYAorVGhlIFB5dGhvbiBpbnRlcnByZXRlciBpcyB1c3VhbGx5IGluc3RhbGxlZCBhcyA6ZmlsZTpgL3Vzci9sb2NhbC9iaW4vcHl0aG9uMy4zYAogb24gdGhvc2UgbWFjaGluZXMgd2hlcmUgaXQgaXMgYXZhaWxhYmxlOyBwdXR0aW5nIDpmaWxlOmAvdXNyL2xvY2FsL2JpbmAgaW4geW91cgogVW5peCBzaGVsbCdzIHNlYXJjaCBwYXRoIG1ha2VzIGl0IHBvc3NpYmxlIHRvIHN0YXJ0IGl0IGJ5IHR5cGluZyB0aGUgY29tbWFuZCA6OgogCi0gICBweXRob24zLjIKKyAgIHB5dGhvbjMuMwogCiB0byB0aGUgc2hlbGwuIFsjXV8gU2luY2UgdGhlIGNob2ljZSBvZiB0aGUgZGlyZWN0b3J5IHdoZXJlIHRoZSBpbnRlcnByZXRlciBsaXZlcwogaXMgYW4gaW5zdGFsbGF0aW9uIG9wdGlvbiwgb3RoZXIgcGxhY2VzIGFyZSBwb3NzaWJsZTsgY2hlY2sgd2l0aCB5b3VyIGxvY2FsCkBAIC0yMiwxMSArMjIsMTEgQEAKIHBvcHVsYXIgYWx0ZXJuYXRpdmUgbG9jYXRpb24uKQogCiBPbiBXaW5kb3dzIG1hY2hpbmVzLCB0aGUgUHl0aG9uIGluc3RhbGxhdGlvbiBpcyB1c3VhbGx5IHBsYWNlZCBpbgotOmZpbGU6YEM6XFxQeXRob24zMmAsIHRob3VnaCB5b3UgY2FuIGNoYW5nZSB0aGlzIHdoZW4geW91J3JlIHJ1bm5pbmcgdGhlCis6ZmlsZTpgQzpcXFB5dGhvbjMzYCwgdGhvdWdoIHlvdSBjYW4gY2hhbmdlIHRoaXMgd2hlbiB5b3UncmUgcnVubmluZyB0aGUKIGluc3RhbGxlci4gIFRvIGFkZCB0aGlzIGRpcmVjdG9yeSB0byB5b3VyIHBhdGgsICB5b3UgY2FuIHR5cGUgdGhlIGZvbGxvd2luZwogY29tbWFuZCBpbnRvIHRoZSBjb21tYW5kIHByb21wdCBpbiBhIERPUyBib3g6OgogCi0gICBzZXQgcGF0aD0lcGF0aCU7QzpccHl0aG9uMzIKKyAgIHNldCBwYXRoPSVwYXRoJTtDOlxweXRob24zMwogCiBUeXBpbmcgYW4gZW5kLW9mLWZpbGUgY2hhcmFjdGVyICg6a2JkOmBDb250cm9sLURgIG9uIFVuaXgsIDprYmQ6YENvbnRyb2wtWmAgb24KIFdpbmRvd3MpIGF0IHRoZSBwcmltYXJ5IHByb21wdCBjYXVzZXMgdGhlIGludGVycHJldGVyIHRvIGV4aXQgd2l0aCBhIHplcm8gZXhpdApAQCAtOTMsOCArOTMsOCBAQAogcHJpbnRzIGEgd2VsY29tZSBtZXNzYWdlIHN0YXRpbmcgaXRzIHZlcnNpb24gbnVtYmVyIGFuZCBhIGNvcHlyaWdodCBub3RpY2UKIGJlZm9yZSBwcmludGluZyB0aGUgZmlyc3QgcHJvbXB0OjoKIAotICAgJCBweXRob24zLjIKLSAgIFB5dGhvbiAzLjIgKHB5M2ssIFNlcCAxMiAyMDA3LCAxMjoyMTowMikKKyAgICQgcHl0aG9uMy4zCisgICBQeXRob24gMy4zIChweTNrLCBTZXAgMTIgMjAwNywgMTI6MjE6MDIpCiAgICBbR0NDIDMuNC42IDIwMDYwNDA0IChSZWQgSGF0IDMuNC42LTgpXSBvbiBsaW51eDIKICAgIFR5cGUgImhlbHAiLCAiY29weXJpZ2h0IiwgImNyZWRpdHMiIG9yICJsaWNlbnNlIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KICAgID4+PgpAQCAtMTQ3LDcgKzE0Nyw3IEBACiBPbiBCU0QnaXNoIFVuaXggc3lzdGVtcywgUHl0aG9uIHNjcmlwdHMgY2FuIGJlIG1hZGUgZGlyZWN0bHkgZXhlY3V0YWJsZSwgbGlrZQogc2hlbGwgc2NyaXB0cywgYnkgcHV0dGluZyB0aGUgbGluZSA6OgogCi0gICAjISAvdXNyL2Jpbi9lbnYgcHl0aG9uMy4yCisgICAjISAvdXNyL2Jpbi9lbnYgcHl0aG9uMy4zCiAKIChhc3N1bWluZyB0aGF0IHRoZSBpbnRlcnByZXRlciBpcyBvbiB0aGUgdXNlcidzIDplbnZ2YXI6YFBBVEhgKSBhdCB0aGUgYmVnaW5uaW5nCiBvZiB0aGUgc2NyaXB0IGFuZCBnaXZpbmcgdGhlIGZpbGUgYW4gZXhlY3V0YWJsZSBtb2RlLiAgVGhlIGBgIyFgYCBtdXN0IGJlIHRoZQpkaWZmIC0tZ2l0IGEvRG9jL3R1dG9yaWFsL3N0ZGxpYi5yc3QgYi9Eb2MvdHV0b3JpYWwvc3RkbGliLnJzdAppbmRleCA5NzI5NzQzLi41MDBjYTdmIDEwMDY0NAotLS0gYS9Eb2MvdHV0b3JpYWwvc3RkbGliLnJzdAorKysgYi9Eb2MvdHV0b3JpYWwvc3RkbGliLnJzdApAQCAtMTUsNyArMTUsNyBAQAogCiAgICA+Pj4gaW1wb3J0IG9zCiAgICA+Pj4gb3MuZ2V0Y3dkKCkgICAgICAjIFJldHVybiB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeQotICAgJ0M6XFxQeXRob24zMScKKyAgICdDOlxcUHl0aG9uMzMnCiAgICA+Pj4gb3MuY2hkaXIoJy9zZXJ2ZXIvYWNjZXNzbG9ncycpICAgIyBDaGFuZ2UgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeQogICAgPj4+IG9zLnN5c3RlbSgnbWtkaXIgdG9kYXknKSAgICMgUnVuIHRoZSBjb21tYW5kIG1rZGlyIGluIHRoZSBzeXN0ZW0gc2hlbGwKICAgIDAKZGlmZiAtLWdpdCBhL0RvYy90dXRvcmlhbC9zdGRsaWIyLnJzdCBiL0RvYy90dXRvcmlhbC9zdGRsaWIyLnJzdAppbmRleCBmZTdmMDI3Li44NWM4OGRjIDEwMDY0NAotLS0gYS9Eb2MvdHV0b3JpYWwvc3RkbGliMi5yc3QKKysrIGIvRG9jL3R1dG9yaWFsL3N0ZGxpYjIucnN0CkBAIC0xNDEsNyArMTQxLDkgQEAKIAogICAgaW1wb3J0IHN0cnVjdAogCi0gICBkYXRhID0gb3BlbignbXlmaWxlLnppcCcsICdyYicpLnJlYWQoKQorICAgd2l0aCBvcGVuKCdteWZpbGUuemlwJywgJ3JiJykgYXMgZjoKKyAgICAgICBkYXRhID0gZi5yZWFkKCkKKwogICAgc3RhcnQgPSAwCiAgICBmb3IgaSBpbiByYW5nZSgzKTogICAgICAgICAgICAgICAgICAgICAgIyBzaG93IHRoZSBmaXJzdCAzIGZpbGUgaGVhZGVycwogICAgICAgIHN0YXJ0ICs9IDE0CkBAIC0yNzEsNyArMjczLDcgQEAKICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMSwgaW4gPG1vZHVsZT4KICAgICAgICBkWydwcmltYXJ5J10gICAgICAgICAgICAgICAgIyBlbnRyeSB3YXMgYXV0b21hdGljYWxseSByZW1vdmVkCi0gICAgIEZpbGUgIkM6L3B5dGhvbjMxL2xpYi93ZWFrcmVmLnB5IiwgbGluZSA0NiwgaW4gX19nZXRpdGVtX18KKyAgICAgRmlsZSAiQzovcHl0aG9uMzMvbGliL3dlYWtyZWYucHkiLCBsaW5lIDQ2LCBpbiBfX2dldGl0ZW1fXwogICAgICAgIG8gPSBzZWxmLmRhdGFba2V5XSgpCiAgICBLZXlFcnJvcjogJ3ByaW1hcnknCiAKZGlmZiAtLWdpdCBhL0RvYy91c2luZy9jbWRsaW5lLnJzdCBiL0RvYy91c2luZy9jbWRsaW5lLnJzdAppbmRleCBjMzg2ZmI0Li44YTAyYjc2IDEwMDY0NAotLS0gYS9Eb2MvdXNpbmcvY21kbGluZS5yc3QKKysrIGIvRG9jL3VzaW5nL2NtZGxpbmUucnN0CkBAIC0yNDAsNyArMjQwLDkgQEAKIC4uIGNtZG9wdGlvbjo6IC1TCiAKICAgIERpc2FibGUgdGhlIGltcG9ydCBvZiB0aGUgbW9kdWxlIDptb2Q6YHNpdGVgIGFuZCB0aGUgc2l0ZS1kZXBlbmRlbnQKLSAgIG1hbmlwdWxhdGlvbnMgb2YgOmRhdGE6YHN5cy5wYXRoYCB0aGF0IGl0IGVudGFpbHMuCisgICBtYW5pcHVsYXRpb25zIG9mIDpkYXRhOmBzeXMucGF0aGAgdGhhdCBpdCBlbnRhaWxzLiAgQWxzbyBkaXNhYmxlIHRoZXNlCisgICBtYW5pcHVsYXRpb25zIGlmIDptb2Q6YHNpdGVgIGlzIGV4cGxpY2l0bHkgaW1wb3J0ZWQgbGF0ZXIgKGNhbGwKKyAgIDpmdW5jOmBzaXRlLm1haW5gIGlmIHlvdSB3YW50IHRoZW0gdG8gYmUgdHJpZ2dlcmVkKS4KIAogCiAuLiBjbWRvcHRpb246OiAtdQpAQCAtNDQ4LDcgKzQ1MCw3IEBACiAuLiBlbnZ2YXI6OiBQWVRIT05DQVNFT0sKIAogICAgSWYgdGhpcyBpcyBzZXQsIFB5dGhvbiBpZ25vcmVzIGNhc2UgaW4gOmtleXdvcmQ6YGltcG9ydGAgc3RhdGVtZW50cy4gIFRoaXMKLSAgIG9ubHkgd29ya3Mgb24gV2luZG93cywgT1MgWCwgYW5kIE9TLzIuCisgICBvbmx5IHdvcmtzIG9uIFdpbmRvd3MgYW5kIE9TIFguCiAKIAogLi4gZW52dmFyOjogUFlUSE9ORE9OVFdSSVRFQllURUNPREUKQEAgLTQ4Myw4ICs0ODUsOCBAQAogCiAgICBEZWZpbmVzIHRoZSA6ZGF0YTpgdXNlciBiYXNlIGRpcmVjdG9yeSA8c2l0ZS5VU0VSX0JBU0U+YCwgd2hpY2ggaXMgdXNlZCB0bwogICAgY29tcHV0ZSB0aGUgcGF0aCBvZiB0aGUgOmRhdGE6YHVzZXIgc2l0ZS1wYWNrYWdlcyBkaXJlY3RvcnkgPHNpdGUuVVNFUl9TSVRFPmAKLSAgIGFuZCA6cmVmOmBEaXN0dXRpbHMgaW5zdGFsbGF0aW9uIHBhdGhzIDxpbnN0LWFsdC1pbnN0YWxsLXVzZXI+YCBmb3IgYGBweXRob24KLSAgIHNldHVwLnB5IGluc3RhbGwgLS11c2VyYGAuCisgICBhbmQgOnJlZjpgUGFja2FnaW5nIGluc3RhbGxhdGlvbiBwYXRocyA8cGFja2FnaW5nLWFsdC1pbnN0YWxsLXVzZXI+YCBmb3IKKyAgIGBgcHlzZXR1cCBydW4gaW5zdGFsbF9kaXN0IC0tdXNlcmBgLgogCiAgICAuLiBzZWVhbHNvOjoKIApAQCAtNTAzLDYgKzUwNSwxNCBAQAogICAgc2VwYXJhdGVkIHN0cmluZywgaXQgaXMgZXF1aXZhbGVudCB0byBzcGVjaWZ5aW5nIDpvcHRpb246YC1XYCBtdWx0aXBsZQogICAgdGltZXMuCiAKKy4uIGVudnZhcjo6IFBZVEhPTkZBVUxUSEFORExFUgorCisgICBJZiB0aGlzIGVudmlyb25tZW50IHZhcmlhYmxlIGlzIHNldCwgOmZ1bmM6YGZhdWx0aGFuZGxlci5lbmFibGVgIGlzIGNhbGxlZAorICAgYXQgc3RhcnR1cDogaW5zdGFsbCBhIGhhbmRsZXIgZm9yIDpjb25zdDpgU0lHU0VHVmAsIDpjb25zdDpgU0lHRlBFYCwKKyAgIDpjb25zdDpgU0lHQUJSVGAsIDpjb25zdDpgU0lHQlVTYCBhbmQgOmNvbnN0OmBTSUdJTExgIHNpZ25hbHMgdG8gZHVtcCB0aGUKKyAgIFB5dGhvbiB0cmFjZWJhY2suICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gOm9wdGlvbjpgLVhgIGBgZmF1bHRoYW5kbGVyYGAKKyAgIG9wdGlvbi4KKwogCiBEZWJ1Zy1tb2RlIHZhcmlhYmxlcwogfn5+fn5+fn5+fn5+fn5+fn5+fn4KZGlmZiAtLWdpdCBhL0RvYy93aGF0c25ldy8zLjIucnN0IGIvRG9jL3doYXRzbmV3LzMuMi5yc3QKaW5kZXggMDU1M2VjMy4uOTk4MjdmZiAxMDA2NDQKLS0tIGEvRG9jL3doYXRzbmV3LzMuMi5yc3QKKysrIGIvRG9jL3doYXRzbmV3LzMuMi5yc3QKQEAgLTI3MCw3ICsyNzAsNyBAQAogICAgICAgZS5zdWJtaXQoc2h1dGlsLmNvcHksICdzcmMxLnR4dCcsICdkZXN0MS50eHQnKQogICAgICAgZS5zdWJtaXQoc2h1dGlsLmNvcHksICdzcmMyLnR4dCcsICdkZXN0Mi50eHQnKQogICAgICAgZS5zdWJtaXQoc2h1dGlsLmNvcHksICdzcmMzLnR4dCcsICdkZXN0My50eHQnKQotICAgICAgZS5zdWJtaXQoc2h1dGlsLmNvcHksICdzcmM0LnR4dCcsICdkZXN0NC50eHQnKQorICAgICAgZS5zdWJtaXQoc2h1dGlsLmNvcHksICdzcmMzLnR4dCcsICdkZXN0NC50eHQnKQogCiAuLiBzZWVhbHNvOjoKIApAQCAtMjM1NCw3ICsyMzU0LDcgQEAKICAgKENvbnRyaWJ1dGVkIGJ5IEFudG9pbmUgUGl0cm91OyA6aXNzdWU6YDMwMDFgLikKIAogKiBUaGUgZmFzdC1zZWFyY2ggYWxnb3JpdGhtIGluIHN0cmluZ2xpYiBpcyBub3cgdXNlZCBieSB0aGUgOm1ldGg6YHNwbGl0YCwKLSAgOm1ldGg6YHNwbGl0bGluZXNgIGFuZCA6bWV0aDpgcmVwbGFjZWAgbWV0aG9kcyBvbgorICA6bWV0aDpgcnNwbGl0YCwgOm1ldGg6YHNwbGl0bGluZXNgIGFuZCA6bWV0aDpgcmVwbGFjZWAgbWV0aG9kcyBvbgogICA6Y2xhc3M6YGJ5dGVzYCwgOmNsYXNzOmBieXRlYXJyYXlgIGFuZCA6Y2xhc3M6YHN0cmAgb2JqZWN0cy4gTGlrZXdpc2UsIHRoZQogICBhbGdvcml0aG0gaXMgYWxzbyB1c2VkIGJ5IDptZXRoOmByZmluZGAsIDptZXRoOmByaW5kZXhgLCA6bWV0aDpgcnNwbGl0YCBhbmQKICAgOm1ldGg6YHJwYXJ0aXRpb25gLgpAQCAtMjQ3MSwxNCArMjQ3MSwxNCBAQAogCiBJbiBhZGRpdGlvbiB0byB0aGUgZXhpc3RpbmcgU3VidmVyc2lvbiBjb2RlIHJlcG9zaXRvcnkgYXQgaHR0cDovL3N2bi5weXRob24ub3JnCiB0aGVyZSBpcyBub3cgYSBgTWVyY3VyaWFsIDxodHRwOi8vbWVyY3VyaWFsLnNlbGVuaWMuY29tLz5gXyByZXBvc2l0b3J5IGF0Ci1odHRwOi8vaGcucHl0aG9uLm9yZy9cLgoraHR0cDovL2hnLnB5dGhvbi5vcmcvIC4KIAogQWZ0ZXIgdGhlIDMuMiByZWxlYXNlLCB0aGVyZSBhcmUgcGxhbnMgdG8gc3dpdGNoIHRvIE1lcmN1cmlhbCBhcyB0aGUgcHJpbWFyeQogcmVwb3NpdG9yeS4gIFRoaXMgZGlzdHJpYnV0ZWQgdmVyc2lvbiBjb250cm9sIHN5c3RlbSBzaG91bGQgbWFrZSBpdCBlYXNpZXIgZm9yCiBtZW1iZXJzIG9mIHRoZSBjb21tdW5pdHkgdG8gY3JlYXRlIGFuZCBzaGFyZSBleHRlcm5hbCBjaGFuZ2VzZXRzLiAgU2VlCiA6cGVwOmAzODVgIGZvciBkZXRhaWxzLgogCi1UbyBsZWFybiB0aGUgbmV3IHZlcnNpb24gY29udHJvbCBzeXN0ZW0sIHNlZSB0aGUgYHR1dG9yaWFsIGJ5IEpvZWwKK1RvIGxlYXJuIHRvIHVzZSB0aGUgbmV3IHZlcnNpb24gY29udHJvbCBzeXN0ZW0sIHNlZSB0aGUgYHR1dG9yaWFsIGJ5IEpvZWwKIFNwb2xza3kgPGh0dHA6Ly9oZ2luaXQuY29tPmBfIG9yIHRoZSBgR3VpZGUgdG8gTWVyY3VyaWFsIFdvcmtmbG93cwogPGh0dHA6Ly9tZXJjdXJpYWwuc2VsZW5pYy5jb20vZ3VpZGUvPmBfLgogCmRpZmYgLS1naXQgYS9Eb2Mvd2hhdHNuZXcvMy4zLnJzdCBiL0RvYy93aGF0c25ldy8zLjMucnN0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQxZDk3ZjQKLS0tIC9kZXYvbnVsbAorKysgYi9Eb2Mvd2hhdHNuZXcvMy4zLnJzdApAQCAtMCwwICsxLDkyNCBAQAorKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICBXaGF0J3MgTmV3IEluIFB5dGhvbiAzLjMKKyoqKioqKioqKioqKioqKioqKioqKioqKioqKioKKworOkF1dGhvcjogUmF5bW9uZCBIZXR0aW5nZXIKKzpSZWxlYXNlOiB8cmVsZWFzZXwKKzpEYXRlOiB8dG9kYXl8CisKKy4uIFJ1bGVzIGZvciBtYWludGVuYW5jZToKKworICAgKiBBbnlvbmUgY2FuIGFkZCB0ZXh0IHRvIHRoaXMgZG9jdW1lbnQuICBEbyBub3Qgc3BlbmQgdmVyeSBtdWNoIHRpbWUKKyAgIG9uIHRoZSB3b3JkaW5nIG9mIHlvdXIgY2hhbmdlcywgYmVjYXVzZSB5b3VyIHRleHQgd2lsbCBwcm9iYWJseQorICAgZ2V0IHJld3JpdHRlbiB0byBzb21lIGRlZ3JlZS4KKworICAgKiBUaGUgbWFpbnRhaW5lciB3aWxsIGdvIHRocm91Z2ggTWlzYy9ORVdTIHBlcmlvZGljYWxseSBhbmQgYWRkCisgICBjaGFuZ2VzOyBpdCdzIHRoZXJlZm9yZSBtb3JlIGltcG9ydGFudCB0byBhZGQgeW91ciBjaGFuZ2VzIHRvCisgICBNaXNjL05FV1MgdGhhbiB0byB0aGlzIGZpbGUuCisKKyAgICogVGhpcyBpcyBub3QgYSBjb21wbGV0ZSBsaXN0IG9mIGV2ZXJ5IHNpbmdsZSBjaGFuZ2U7IGNvbXBsZXRlbmVzcworICAgaXMgdGhlIHB1cnBvc2Ugb2YgTWlzYy9ORVdTLiAgU29tZSBjaGFuZ2VzIEkgY29uc2lkZXIgdG9vIHNtYWxsCisgICBvciBlc290ZXJpYyB0byBpbmNsdWRlLiAgSWYgc3VjaCBhIGNoYW5nZSBpcyBhZGRlZCB0byB0aGUgdGV4dCwKKyAgIEknbGwganVzdCByZW1vdmUgaXQuICAoVGhpcyBpcyBhbm90aGVyIHJlYXNvbiB5b3Ugc2hvdWxkbid0IHNwZW5kCisgICB0b28gbXVjaCB0aW1lIG9uIHdyaXRpbmcgeW91ciBhZGRpdGlvbi4pCisKKyAgICogSWYgeW91IHdhbnQgdG8gZHJhdyB5b3VyIG5ldyB0ZXh0IHRvIHRoZSBhdHRlbnRpb24gb2YgdGhlCisgICBtYWludGFpbmVyLCBhZGQgJ1hYWCcgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUgcGFyYWdyYXBoIG9yCisgICBzZWN0aW9uLgorCisgICAqIEl0J3MgT0sgdG8ganVzdCBhZGQgYSBmcmFnbWVudGFyeSBub3RlIGFib3V0IGEgY2hhbmdlLiAgRm9yCisgICBleGFtcGxlOiAiWFhYIERlc2NyaWJlIHRoZSB0cmFuc21vZ3JpZnkoKSBmdW5jdGlvbiBhZGRlZCB0byB0aGUKKyAgIHNvY2tldCBtb2R1bGUuIiAgVGhlIG1haW50YWluZXIgd2lsbCByZXNlYXJjaCB0aGUgY2hhbmdlIGFuZAorICAgd3JpdGUgdGhlIG5lY2Vzc2FyeSB0ZXh0LgorCisgICAqIFlvdSBjYW4gY29tbWVudCBvdXQgeW91ciBhZGRpdGlvbnMgaWYgeW91IGxpa2UsIGJ1dCBpdCdzIG5vdAorICAgbmVjZXNzYXJ5IChlc3BlY2lhbGx5IHdoZW4gYSBmaW5hbCByZWxlYXNlIGlzIHNvbWUgbW9udGhzIGF3YXkpLgorCisgICAqIENyZWRpdCB0aGUgYXV0aG9yIG9mIGEgcGF0Y2ggb3IgYnVnZml4LiAgIEp1c3QgdGhlIG5hbWUgaXMKKyAgIHN1ZmZpY2llbnQ7IHRoZSBlLW1haWwgYWRkcmVzcyBpc24ndCBuZWNlc3NhcnkuCisKKyAgICogSXQncyBoZWxwZnVsIHRvIGFkZCB0aGUgYnVnL3BhdGNoIG51bWJlciBhcyBhIGNvbW1lbnQ6CisKKyAgIFhYWCBEZXNjcmliZSB0aGUgdHJhbnNtb2dyaWZ5KCkgZnVuY3Rpb24gYWRkZWQgdG8gdGhlIHNvY2tldAorICAgbW9kdWxlLgorICAgKENvbnRyaWJ1dGVkIGJ5IFAuWS4gRGV2ZWxvcGVyIGluIDppc3N1ZTpgMTIzNDVgLikKKworICAgVGhpcyBzYXZlcyB0aGUgbWFpbnRhaW5lciB0aGUgZWZmb3J0IG9mIGdvaW5nIHRocm91Z2ggdGhlIE1lcmN1cmlhbCBsb2cKKyAgIHdoZW4gcmVzZWFyY2hpbmcgYSBjaGFuZ2UuCisKK1RoaXMgYXJ0aWNsZSBleHBsYWlucyB0aGUgbmV3IGZlYXR1cmVzIGluIFB5dGhvbiAzLjMsIGNvbXBhcmVkIHRvIDMuMi4KKworCisuLiBfcGVwLTM5MzoKKworUEVQIDM5MzogRmxleGlibGUgU3RyaW5nIFJlcHJlc2VudGF0aW9uCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworVGhlIFVuaWNvZGUgc3RyaW5nIHR5cGUgaXMgY2hhbmdlZCB0byBzdXBwb3J0IG11bHRpcGxlIGludGVybmFsCityZXByZXNlbnRhdGlvbnMsIGRlcGVuZGluZyBvbiB0aGUgY2hhcmFjdGVyIHdpdGggdGhlIGxhcmdlc3QgVW5pY29kZSBvcmRpbmFsCisoMSwgMiwgb3IgNCBieXRlcykgaW4gdGhlIHJlcHJlc2VudGVkIHN0cmluZy4gIFRoaXMgYWxsb3dzIGEgc3BhY2UtZWZmaWNpZW50CityZXByZXNlbnRhdGlvbiBpbiBjb21tb24gY2FzZXMsIGJ1dCBnaXZlcyBhY2Nlc3MgdG8gZnVsbCBVQ1MtNCBvbiBhbGwKK3N5c3RlbXMuICBGb3IgY29tcGF0aWJpbGl0eSB3aXRoIGV4aXN0aW5nIEFQSXMsIHNldmVyYWwgcmVwcmVzZW50YXRpb25zIG1heQorZXhpc3QgaW4gcGFyYWxsZWw7IG92ZXIgdGltZSwgdGhpcyBjb21wYXRpYmlsaXR5IHNob3VsZCBiZSBwaGFzZWQgb3V0LgorCitPbiB0aGUgUHl0aG9uIHNpZGUsIHRoZXJlIHNob3VsZCBiZSBubyBkb3duc2lkZSB0byB0aGlzIGNoYW5nZS4KKworT24gdGhlIEMgQVBJIHNpZGUsIFBFUCAzOTMgaXMgZnVsbHkgYmFja3dhcmQgY29tcGF0aWJsZS4gIFRoZSBsZWdhY3kgQVBJCitzaG91bGQgcmVtYWluIGF2YWlsYWJsZSBhdCBsZWFzdCBmaXZlIHllYXJzLiAgQXBwbGljYXRpb25zIHVzaW5nIHRoZSBsZWdhY3kKK0FQSSB3aWxsIG5vdCBmdWxseSBiZW5lZml0IG9mIHRoZSBtZW1vcnkgcmVkdWN0aW9uLCBvciAtIHdvcnNlIC0gbWF5IHVzZQorYSBiaXQgbW9yZSBtZW1vcnksIGJlY2F1c2UgUHl0aG9uIG1heSBoYXZlIHRvIG1haW50YWluIHR3byB2ZXJzaW9ucyBvZiBlYWNoCitzdHJpbmcgKGluIHRoZSBsZWdhY3kgZm9ybWF0IGFuZCBpbiB0aGUgbmV3IGVmZmljaWVudCBzdG9yYWdlKS4KKworRnVuY3Rpb25hbGl0eQorLS0tLS0tLS0tLS0tLQorCitDaGFuZ2VzIGludHJvZHVjZWQgYnkgOnBlcDpgMzkzYCBhcmUgdGhlIGZvbGxvd2luZzoKKworKiBQeXRob24gbm93IGFsd2F5cyBzdXBwb3J0cyB0aGUgZnVsbCByYW5nZSBvZiBVbmljb2RlIGNvZGVwb2ludHMsIGluY2x1ZGluZworICBub24tQk1QIG9uZXMgKGkuZS4gZnJvbSBgYFUrMDAwMGBgIHRvIGBgVSsxMEZGRkZgYCkuICBUaGUgZGlzdGluY3Rpb24gYmV0d2VlbgorICBuYXJyb3cgYW5kIHdpZGUgYnVpbGRzIG5vIGxvbmdlciBleGlzdHMgYW5kIFB5dGhvbiBub3cgYmVoYXZlcyBsaWtlIGEgd2lkZQorICBidWlsZCwgZXZlbiB1bmRlciBXaW5kb3dzLgorCisqIFdpdGggdGhlIGRlYXRoIG9mIG5hcnJvdyBidWlsZHMsIHRoZSBwcm9ibGVtcyBzcGVjaWZpYyB0byBuYXJyb3cgYnVpbGRzIGhhdmUKKyAgYWxzbyBiZWVuIGZpeGVkLCBmb3IgZXhhbXBsZToKKworICAqIDpmdW5jOmBsZW5gIG5vdyBhbHdheXMgcmV0dXJucyAxIGZvciBub24tQk1QIGNoYXJhY3RlcnMsCisgICAgc28gYGBsZW4oJ1xVMDAxMEZGRkYnKSA9PSAxYGA7CisKKyAgKiBzdXJyb2dhdGUgcGFpcnMgYXJlIG5vdCByZWNvbWJpbmVkIGluIHN0cmluZyBsaXRlcmFscywKKyAgICBzbyBgYCdcdURCRkZcdURGRkYnICE9ICdcVTAwMTBGRkZGJ2BgOworCisgICogaW5kZXhpbmcgb3Igc2xpY2luZyBub24tQk1QIGNoYXJhY3RlcnMgcmV0dXJucyB0aGUgZXhwZWN0ZWQgdmFsdWUsCisgICAgc28gYGAnXFUwMDEwRkZGRidbMF1gYCBub3cgcmV0dXJucyBgYCdcVTAwMTBGRkZGJ2BgIGFuZCBub3QgYGAnXHVEQkZGJ2BgOworCisgICogYWxsIG90aGVyIGZ1bmN0aW9ucyBpbiB0aGUgc3RhbmRhcmQgbGlicmFyeSBub3cgY29ycmVjdGx5IGhhbmRsZQorICAgIG5vbi1CTVAgY29kZXBvaW50cy4KKworKiBUaGUgdmFsdWUgb2YgOmRhdGE6YHN5cy5tYXh1bmljb2RlYCBpcyBub3cgYWx3YXlzIGBgMTExNDExMWBgIChgYDB4MTBGRkZGYGAKKyAgaW4gaGV4YWRlY2ltYWwpLiAgVGhlIDpjOmZ1bmM6YFB5VW5pY29kZV9HZXRNYXhgIGZ1bmN0aW9uIHN0aWxsIHJldHVybnMKKyAgZWl0aGVyIGBgMHhGRkZGYGAgb3IgYGAweDEwRkZGRmBgIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCBhbmQgaXQgc2hvdWxkCisgIG5vdCBiZSB1c2VkIHdpdGggdGhlIG5ldyBVbmljb2RlIEFQSSAoc2VlIDppc3N1ZTpgMTMwNTRgKS4KKworKiBUaGUgOmZpbGU6YC4vY29uZmlndXJlYCBmbGFnIGBgLS13aXRoLXdpZGUtdW5pY29kZWBgIGhhcyBiZWVuIHJlbW92ZWQuCisKK1BlcmZvcm1hbmNlIGFuZCByZXNvdXJjZSB1c2FnZQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSBzdG9yYWdlIG9mIFVuaWNvZGUgc3RyaW5ncyBub3cgZGVwZW5kcyBvbiB0aGUgaGlnaGVzdCBjb2RlcG9pbnQgaW4gdGhlIHN0cmluZzoKKworKiBwdXJlIEFTQ0lJIGFuZCBMYXRpbjEgc3RyaW5ncyAoYGBVKzAwMDAtVSswMEZGYGApIHVzZSAxIGJ5dGUgcGVyIGNvZGVwb2ludDsKKworKiBCTVAgc3RyaW5ncyAoYGBVKzAwMDAtVStGRkZGYGApIHVzZSAyIGJ5dGVzIHBlciBjb2RlcG9pbnQ7CisKKyogbm9uLUJNUCBzdHJpbmdzIChgYFUrMTAwMDAtVSsxMEZGRkZgYCkgdXNlIDQgYnl0ZXMgcGVyIGNvZGVwb2ludC4KKworVGhlIG5ldCBlZmZlY3QgaXMgdGhhdCBmb3IgbW9zdCBhcHBsaWNhdGlvbnMsIG1lbW9yeSB1c2FnZSBvZiBzdHJpbmcgc3RvcmFnZQorc2hvdWxkIGRlY3JlYXNlIHNpZ25pZmljYW50bHkgLSBlc3BlY2lhbGx5IGNvbXBhcmVkIHRvIGZvcm1lciB3aWRlIHVuaWNvZGUKK2J1aWxkcyAtIGFzLCBpbiBtYW55IGNhc2VzLCBzdHJpbmdzIHdpbGwgYmUgcHVyZSBBU0NJSSBldmVuIGluIGludGVybmF0aW9uYWwKK2NvbnRleHRzIChiZWNhdXNlIG1hbnkgc3RyaW5ncyBzdG9yZSBub24taHVtYW4gbGFuZ3VhZ2UgZGF0YSwgc3VjaCBhcyBYTUwKK2ZyYWdtZW50cywgSFRUUCBoZWFkZXJzLCBKU09OLWVuY29kZWQgZGF0YSwgZXRjLikuICBXZSBhbHNvIGhvcGUgdGhhdCBpdAord2lsbCwgZm9yIHRoZSBzYW1lIHJlYXNvbnMsIGluY3JlYXNlIENQVSBjYWNoZSBlZmZpY2llbmN5IG9uIG5vbi10cml2aWFsCithcHBsaWNhdGlvbnMuCisKKy4uIFRoZSBtZW1vcnkgdXNhZ2Ugb2YgUHl0aG9uIDMuMyBpcyB0d28gdG8gdGhyZWUgdGltZXMgc21hbGxlciB0aGFuIFB5dGhvbiAzLjIsCisgICBhbmQgYSBsaXR0bGUgYml0IGJldHRlciB0aGFuIFB5dGhvbiAyLjcsIG9uIGEgYERqYW5nbyBiZW5jaG1hcmsKKyAgIDxodHRwOi8vbWFpbC5weXRob24ub3JnL3BpcGVybWFpbC9weXRob24tZGV2LzIwMTEtU2VwdGVtYmVyLzExMzcxNC5odG1sPmBfLgorICAgWFhYIFRoZSByZXN1bHQgc2hvdWxkIGJlIG1vdmVkIGluIHRoZSBQRVAgYW5kIGEgbGluayB0byB0aGUgUEVQIHNob3VsZAorICAgYmUgYWRkZWQgaGVyZS4KKworCitQRVAgMzE1MTogUmV3b3JraW5nIHRoZSBPUyBhbmQgSU8gZXhjZXB0aW9uIGhpZXJhcmNoeQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworOnBlcDpgMzE1MWAgLSBSZXdvcmtpbmcgdGhlIE9TIGFuZCBJTyBleGNlcHRpb24gaGllcmFyY2h5CisgUEVQIHdyaXR0ZW4gYW5kIGltcGxlbWVudGVkIGJ5IEFudG9pbmUgUGl0cm91LgorCitUaGUgaGllcmFyY2h5IG9mIGV4Y2VwdGlvbnMgcmFpc2VkIGJ5IG9wZXJhdGluZyBzeXN0ZW0gZXJyb3JzIGlzIG5vdyBib3RoCitzaW1wbGlmaWVkIGFuZCBmaW5lci1ncmFpbmVkLgorCitZb3UgZG9uJ3QgaGF2ZSB0byB3b3JyeSBhbnltb3JlIGFib3V0IGNob29zaW5nIHRoZSBhcHByb3ByaWF0ZSBleGNlcHRpb24KK3R5cGUgYmV0d2VlbiA6ZXhjOmBPU0Vycm9yYCwgOmV4YzpgSU9FcnJvcmAsIDpleGM6YEVudmlyb25tZW50RXJyb3JgLAorOmV4YzpgV2luZG93c0Vycm9yYCwgOmV4YzpgbW1hcC5lcnJvcmAsIDpleGM6YHNvY2tldC5lcnJvcmAgb3IKKzpleGM6YHNlbGVjdC5lcnJvcmAuICBBbGwgdGhlc2UgZXhjZXB0aW9uIHR5cGVzIGFyZSBub3cgb25seSBvbmU6Cis6ZXhjOmBPU0Vycm9yYC4gIFRoZSBvdGhlciBuYW1lcyBhcmUga2VwdCBhcyBhbGlhc2VzIGZvciBjb21wYXRpYmlsaXR5CityZWFzb25zLgorCitBbHNvLCBpdCBpcyBub3cgZWFzaWVyIHRvIGNhdGNoIGEgc3BlY2lmaWMgZXJyb3IgY29uZGl0aW9uLiAgSW5zdGVhZCBvZgoraW5zcGVjdGluZyB0aGUgYGBlcnJub2BgIGF0dHJpYnV0ZSAob3IgYGBhcmdzWzBdYGApIGZvciBhIHBhcnRpY3VsYXIKK2NvbnN0YW50IGZyb20gdGhlIDptb2Q6YGVycm5vYCBtb2R1bGUsIHlvdSBjYW4gY2F0Y2ggdGhlIGFkZXF1YXRlCis6ZXhjOmBPU0Vycm9yYCBzdWJjbGFzcy4gIFRoZSBhdmFpbGFibGUgc3ViY2xhc3NlcyBhcmUgdGhlIGZvbGxvd2luZzoKKworKiA6ZXhjOmBCbG9ja2luZ0lPRXJyb3JgCisqIDpleGM6YENoaWxkUHJvY2Vzc0Vycm9yYAorKiA6ZXhjOmBDb25uZWN0aW9uRXJyb3JgCisqIDpleGM6YEZpbGVFeGlzdHNFcnJvcmAKKyogOmV4YzpgRmlsZU5vdEZvdW5kRXJyb3JgCisqIDpleGM6YEludGVycnVwdGVkRXJyb3JgCisqIDpleGM6YElzQURpcmVjdG9yeUVycm9yYAorKiA6ZXhjOmBOb3RBRGlyZWN0b3J5RXJyb3JgCisqIDpleGM6YFBlcm1pc3Npb25FcnJvcmAKKyogOmV4YzpgUHJvY2Vzc0xvb2t1cEVycm9yYAorKiA6ZXhjOmBUaW1lb3V0RXJyb3JgCisKK0FuZCB0aGUgOmV4YzpgQ29ubmVjdGlvbkVycm9yYCBpdHNlbGYgaGFzIGZpbmVyLWdyYWluZWQgc3ViY2xhc3NlczoKKworKiA6ZXhjOmBCcm9rZW5QaXBlRXJyb3JgCisqIDpleGM6YENvbm5lY3Rpb25BYm9ydGVkRXJyb3JgCisqIDpleGM6YENvbm5lY3Rpb25SZWZ1c2VkRXJyb3JgCisqIDpleGM6YENvbm5lY3Rpb25SZXNldEVycm9yYAorCitUaGFua3MgdG8gdGhlIG5ldyBleGNlcHRpb25zLCBjb21tb24gdXNhZ2VzIG9mIHRoZSA6bW9kOmBlcnJub2AgY2FuIG5vdyBiZQorYXZvaWRlZC4gIEZvciBleGFtcGxlLCB0aGUgZm9sbG93aW5nIGNvZGUgd3JpdHRlbiBmb3IgUHl0aG9uIDMuMjo6CisKKyAgICBmcm9tIGVycm5vIGltcG9ydCBFTk9FTlQsIEVBQ0NFUywgRVBFUk0KKworICAgIHRyeToKKyAgICAgICAgd2l0aCBvcGVuKCJkb2N1bWVudC50eHQiKSBhcyBmOgorICAgICAgICAgICAgY29udGVudCA9IGYucmVhZCgpCisgICAgZXhjZXB0IElPRXJyb3IgYXMgZXJyOgorICAgICAgICBpZiBlcnIuZXJybm8gPT0gRU5PRU5UOgorICAgICAgICAgICAgcHJpbnQoImRvY3VtZW50LnR4dCBmaWxlIGlzIG1pc3NpbmciKQorICAgICAgICBlbGlmIGVyci5lcnJubyBpbiAoRUFDQ0VTLCBFUEVSTSk6CisgICAgICAgICAgICBwcmludCgiWW91IGFyZSBub3QgYWxsb3dlZCB0byByZWFkIGRvY3VtZW50LnR4dCIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZQorCitjYW4gbm93IGJlIHdyaXR0ZW4gd2l0aG91dCB0aGUgOm1vZDpgZXJybm9gIGltcG9ydCBhbmQgd2l0aG91dCBtYW51YWwKK2luc3BlY3Rpb24gb2YgZXhjZXB0aW9uIGF0dHJpYnV0ZXM6OgorCisgICAgdHJ5OgorICAgICAgICB3aXRoIG9wZW4oImRvY3VtZW50LnR4dCIpIGFzIGY6CisgICAgICAgICAgICBjb250ZW50ID0gZi5yZWFkKCkKKyAgICBleGNlcHQgRmlsZU5vdEZvdW5kRXJyb3I6CisgICAgICAgIHByaW50KCJkb2N1bWVudC50eHQgZmlsZSBpcyBtaXNzaW5nIikKKyAgICBleGNlcHQgUGVybWlzc2lvbkVycm9yOgorICAgICAgICBwcmludCgiWW91IGFyZSBub3QgYWxsb3dlZCB0byByZWFkIGRvY3VtZW50LnR4dCIpCisKKworUEVQIDM4MDogU3ludGF4IGZvciBEZWxlZ2F0aW5nIHRvIGEgU3ViZ2VuZXJhdG9yCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworUEVQIDM4MCBhZGRzIHRoZSBgYHlpZWxkIGZyb21gYCBleHByZXNzaW9uLCBhbGxvd2luZyBhIGdlbmVyYXRvciB0byBkZWxlZ2F0ZQorcGFydCBvZiBpdHMgb3BlcmF0aW9ucyB0byBhbm90aGVyIGdlbmVyYXRvci4gVGhpcyBhbGxvd3MgYSBzZWN0aW9uIG9mIGNvZGUKK2NvbnRhaW5pbmcgJ3lpZWxkJyB0byBiZSBmYWN0b3JlZCBvdXQgYW5kIHBsYWNlZCBpbiBhbm90aGVyIGdlbmVyYXRvci4KK0FkZGl0aW9uYWxseSwgdGhlIHN1YmdlbmVyYXRvciBpcyBhbGxvd2VkIHRvIHJldHVybiB3aXRoIGEgdmFsdWUsIGFuZCB0aGUKK3ZhbHVlIGlzIG1hZGUgYXZhaWxhYmxlIHRvIHRoZSBkZWxlZ2F0aW5nIGdlbmVyYXRvci4KK1doaWxlIGRlc2lnbmVkIHByaW1hcmlseSBmb3IgdXNlIGluIGRlbGVnYXRpbmcgdG8gYSBzdWJnZW5lcmF0b3IsIHRoZSBgYHlpZWxkCitmcm9tYGAgZXhwcmVzc2lvbiBhY3R1YWxseSBhbGxvd3MgZGVsZWdhdGlvbiB0byBhcmJpdHJhcnkgc3ViaXRlcmF0b3JzLgorCisoSW1wbGVtZW50YXRpb24gYnkgR3JlZyBFd2luZywgaW50ZWdyYXRlZCBpbnRvIDMuMyBieSBSZW5hdWQgQmxhbmNoLCBSeWFuCitLZWxseSBhbmQgTmljayBDb2dobGFuLCBkb2N1bWVudGF0aW9uIGJ5IFpiaWduaWV3IErEmWRyemVqZXdza2ktU3ptZWsgYW5kCitOaWNrIENvZ2hsYW4pCisKKworUEVQIDMxNTU6IFF1YWxpZmllZCBuYW1lIGZvciBjbGFzc2VzIGFuZCBmdW5jdGlvbnMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKzpwZXA6YDMxNTVgIC0gUXVhbGlmaWVkIG5hbWUgZm9yIGNsYXNzZXMgYW5kIGZ1bmN0aW9ucworIFBFUCB3cml0dGVuIGFuZCBpbXBsZW1lbnRlZCBieSBBbnRvaW5lIFBpdHJvdS4KKworRnVuY3Rpb25zIGFuZCBjbGFzcyBvYmplY3RzIGhhdmUgYSBuZXcgYGBfX3F1YWxuYW1lX19gYCBhdHRyaWJ1dGUgcmVwcmVzZW50aW5nCit0aGUgInBhdGgiIGZyb20gdGhlIG1vZHVsZSB0b3AtbGV2ZWwgdG8gdGhlaXIgZGVmaW5pdGlvbi4gIEZvciBnbG9iYWwgZnVuY3Rpb25zCithbmQgY2xhc3NlcywgdGhpcyBpcyB0aGUgc2FtZSBhcyBgYF9fbmFtZV9fYGAuICBGb3Igb3RoZXIgZnVuY3Rpb25zIGFuZCBjbGFzc2VzLAoraXQgcHJvdmlkZXMgYmV0dGVyIGluZm9ybWF0aW9uIGFib3V0IHdoZXJlIHRoZXkgd2VyZSBhY3R1YWxseSBkZWZpbmVkLCBhbmQKK2hvdyB0aGV5IG1pZ2h0IGJlIGFjY2Vzc2libGUgZnJvbSB0aGUgZ2xvYmFsIHNjb3BlLgorCitFeGFtcGxlIHdpdGggKG5vbi1ib3VuZCkgbWV0aG9kczo6CisKKyAgID4+PiBjbGFzcyBDOgorICAgLi4uICAgICBkZWYgbWV0aChzZWxmKToKKyAgIC4uLiAgICAgICAgIHBhc3MKKyAgID4+PiBDLm1ldGguX19uYW1lX18KKyAgICdtZXRoJworICAgPj4+IEMubWV0aC5fX3F1YWxuYW1lX18KKyAgICdDLm1ldGgnCisKK0V4YW1wbGUgd2l0aCBuZXN0ZWQgY2xhc3Nlczo6CisKKyAgID4+PiBjbGFzcyBDOgorICAgLi4uICAgICBjbGFzcyBEOgorICAgLi4uICAgICAgICAgZGVmIG1ldGgoc2VsZik6CisgICAuLi4gICAgICAgICAgICAgcGFzcworICAgLi4uCisgICA+Pj4gQy5ELl9fbmFtZV9fCisgICAnRCcKKyAgID4+PiBDLkQuX19xdWFsbmFtZV9fCisgICAnQy5EJworICAgPj4+IEMuRC5tZXRoLl9fbmFtZV9fCisgICAnbWV0aCcKKyAgID4+PiBDLkQubWV0aC5fX3F1YWxuYW1lX18KKyAgICdDLkQubWV0aCcKKworRXhhbXBsZSB3aXRoIG5lc3RlZCBmdW5jdGlvbnM6OgorCisgICA+Pj4gZGVmIG91dGVyKCk6CisgICAuLi4gICAgIGRlZiBpbm5lcigpOgorICAgLi4uICAgICAgICAgcGFzcworICAgLi4uICAgICByZXR1cm4gaW5uZXIKKyAgIC4uLgorICAgPj4+IG91dGVyKCkuX19uYW1lX18KKyAgICdpbm5lcicKKyAgID4+PiBvdXRlcigpLl9fcXVhbG5hbWVfXworICAgJ291dGVyLjxsb2NhbHM+LmlubmVyJworCitUaGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRob3NlIG9iamVjdHMgaXMgYWxzbyBjaGFuZ2VkIHRvIGluY2x1ZGUgdGhlCituZXcsIG1vcmUgcHJlY2lzZSBpbmZvcm1hdGlvbjo6CisKKyAgID4+PiBzdHIoQy5EKQorICAgIjxjbGFzcyAnX19tYWluX18uQy5EJz4iCisgICA+Pj4gc3RyKEMuRC5tZXRoKQorICAgJzxmdW5jdGlvbiBDLkQubWV0aCBhdCAweDdmNDZiOWZlMzFlMD4nCisKKworT3RoZXIgTGFuZ3VhZ2UgQ2hhbmdlcworPT09PT09PT09PT09PT09PT09PT09PQorCitTb21lIHNtYWxsZXIgY2hhbmdlcyBtYWRlIHRvIHRoZSBjb3JlIFB5dGhvbiBsYW5ndWFnZSBhcmU6CisKKyogQWRkZWQgc3VwcG9ydCBmb3IgVW5pY29kZSBuYW1lIGFsaWFzZXMgYW5kIG5hbWVkIHNlcXVlbmNlcy4KKyAgQm90aCA6ZnVuYzpgdW5pY29kZWRhdGEubG9va3VwKClgIGFuZCBgYCdcTnsuLi59J2BgIG5vdyByZXNvbHZlIG5hbWUgYWxpYXNlcywKKyAgYW5kIDpmdW5jOmB1bmljb2RlZGF0YS5sb29rdXAoKWAgcmVzb2x2ZXMgbmFtZWQgc2VxdWVuY2VzIHRvby4KKworICAoQ29udHJpYnV0ZWQgYnkgRXppbyBNZWxvdHRpIGluIDppc3N1ZTpgMTI3NTNgKQorCisqIEVxdWFsaXR5IGNvbXBhcmlzb25zIG9uIDpmdW5jOmByYW5nZWAgb2JqZWN0cyBub3cgcmV0dXJuIGEgcmVzdWx0IHJlZmxlY3RpbmcKKyAgdGhlIGVxdWFsaXR5IG9mIHRoZSB1bmRlcmx5aW5nIHNlcXVlbmNlcyBnZW5lcmF0ZWQgYnkgdGhvc2UgcmFuZ2Ugb2JqZWN0cy4KKworICAoOmlzc3VlOmAxMzIwMWApCisKKyogVGhlIGBgY291bnQoKWBgLCBgYGZpbmQoKWBgLCBgYHJmaW5kKClgYCwgYGBpbmRleCgpYGAgYW5kIGBgcmluZGV4KClgYAorICBtZXRob2RzIG9mIDpjbGFzczpgYnl0ZXNgIGFuZCA6Y2xhc3M6YGJ5dGVhcnJheWAgb2JqZWN0cyBub3cgYWNjZXB0IGFuCisgIGludGVnZXIgYmV0d2VlbiAwIGFuZCAyNTUgYXMgdGhlaXIgZmlyc3QgYXJndW1lbnQuCisKKyAgKDppc3N1ZTpgMTIxNzBgKQorCisqIE1lbW9yeXZpZXcgb2JqZWN0cyBhcmUgbm93IGhhc2hhYmxlIHdoZW4gdGhlIHVuZGVybHlpbmcgb2JqZWN0IGlzIGhhc2hhYmxlLgorCisgIChDb250cmlidXRlZCBieSBBbnRvaW5lIFBpdHJvdSBpbiA6aXNzdWU6YDEzNDExYCkKKworCitOZXcgYW5kIEltcHJvdmVkIE1vZHVsZXMKKz09PT09PT09PT09PT09PT09PT09PT09PQorCithcnJheQorLS0tLS0KKworVGhlIDptb2Q6YGFycmF5YCBtb2R1bGUgc3VwcG9ydHMgdGhlIDpjOnR5cGU6YGxvbmcgbG9uZ2AgdHlwZSB1c2luZyBgYHFgYCBhbmQKK2BgUWBgIHR5cGUgY29kZXMuCisKKyhDb250cmlidXRlZCBieSBPcmVuIFRpcm9zaCBhbmQgSGlyb2thenUgWWFtYW1vdG8gaW4gOmlzc3VlOmAxMTcyNzExYCkKKworCitjb2RlY3MKKy0tLS0tLQorCitUaGUgOm1vZDpgfmVuY29kaW5ncy5tYmNzYCBjb2RlYyBoYXMgYmUgcmV3cml0dGVuIHRvIGhhbmRsZSBjb3JyZWNsdHkKK2BgcmVwbGFjZWBgIGFuZCBgYGlnbm9yZWBgIGVycm9yIGhhbmRsZXJzIG9uIGFsbCBXaW5kb3dzIHZlcnNpb25zLiBUaGUKKzptb2Q6YH5lbmNvZGluZ3MubWJjc2AgY29kZWMgaXMgbm93IHN1cHBvcnRpbmcgYWxsIGVycm9yIGhhbmRsZXJzLCBpbnN0ZWFkIG9mCitvbmx5IGBgcmVwbGFjZWBgIHRvIGVuY29kZSBhbmQgYGBpZ25vcmVgYCB0byBkZWNvZGUuCisKK0EgbmV3IFdpbmRvd3Mtb25seSBjb2RlYyBoYXMgYmVlbiBhZGRlZDogYGBjcDY1MDAxYGAgKDppc3N1ZTpgMTMyMTZgKS4gSXQgaXMKK3RoZSBXaW5kb3dzIGNvZGUgcGFnZSA2NTAwMSAoV2luZG93cyBVVEYtOCwgYGBDUF9VVEY4YGApLiBGb3IgZXhhbXBsZSwgaXQgaXMKK3VzZWQgYnkgYGBzeXMuc3Rkb3V0YGAgaWYgdGhlIGNvbnNvbGUgb3V0cHV0IGNvZGUgcGFnZSBpcyBzZXQgdG8gY3A2NTAwMSAoZS5nLgordXNpbmcgYGBjaGNwIDY1MDAxYGAgY29tbWFuZCkuCisKK011bHRpYnl0ZSBDSksgZGVjb2RlcnMgbm93IHJlc3luY2hyb25pemUgZmFzdGVyLiBUaGV5IG9ubHkgaWdub3JlIHRoZSBmaXJzdAorYnl0ZSBvZiBhbiBpbnZhbGlkIGJ5dGUgc2VxdWVuY2UuIEZvciBleGFtcGxlLCBgYGInXHhmZlxuJy5kZWNvZGUoJ2diMjMxMicsCisncmVwbGFjZScpYGAgbm93IHJldHVybnMgYSBgYFxuYGAgYWZ0ZXIgdGhlIHJlcGxhY2VtZW50IGNoYXJhY3Rlci4KKworKDppc3N1ZTpgMTIwMTZgKQorCitEb24ndCByZXNldCBpbmNyZW1lbnRhbCBlbmNvZGVycyBvZiBDSksgY29kZWNzIGF0IGVhY2ggY2FsbCB0byB0aGVpciBlbmNvZGUoKQorbWV0aG9kIGFueW1vcmUuIEZvciBleGFtcGxlOjoKKworICAgICQgLi9weXRob24gLXEKKyAgICA+Pj4gaW1wb3J0IGNvZGVjcworICAgID4+PiBlbmNvZGVyID0gY29kZWNzLmdldGluY3JlbWVudGFsZW5jb2RlcignaHonKSgnc3RyaWN0JykKKyAgICA+Pj4gYicnLmpvaW4oZW5jb2Rlci5lbmNvZGUoeCkgZm9yIHggaW4gJ1x1NTJmZlx1NjViZFx1NjViY1x1NGViYVx1MzAwMiBCeWUuJykKKyAgICBiJ357TnBKKWw2SEshI359IEJ5ZS4nCisKK1RoaXMgZXhhbXBsZSBnaXZlcyBgYGInfntOcH59fntKKX59fntsNn59fntIS359fnshI359IEJ5ZS4nYGAgd2l0aCBvbGRlciBQeXRob24KK3ZlcnNpb25zLgorCisoOmlzc3VlOmAxMjEwMGApCisKK1RoZSBgYHVuaWNvZGVfaW50ZXJuYWxgYCBjb2RlYyBoYXMgYmVlbiBkZXByZWNhdGVkLgorCitjcnlwdAorLS0tLS0KKworQWRkaXRpb24gb2Ygc2FsdCBhbmQgbW9kdWxhciBjcnlwdCBmb3JtYXQgYW5kIHRoZSA6ZnVuYzpgfmNyeXB0Lm1rc2FsdGAKK2Z1bmN0aW9uIHRvIHRoZSA6bW9kOmBjcnlwdGAgbW9kdWxlLgorCisoOmlzc3VlOmAxMDkyNGApCisKK2N1cnNlcworLS0tLS0tCisKKyAqIElmIHRoZSA6bW9kOmBjdXJzZXNgIG1vZHVsZSBpcyBsaW5rZWQgdG8gdGhlIG5jdXJzZXN3IGxpYnJhcnksIHVzZSBVbmljb2RlCisgICBmdW5jdGlvbnMgd2hlbiBVbmljb2RlIHN0cmluZ3Mgb3IgY2hhcmFjdGVycyBhcmUgcGFzc2VkIChlLmcuCisgICA6YzpmdW5jOmB3YWRkd3N0cmApLCBhbmQgYnl0ZXMgZnVuY3Rpb25zIG90aGVyd2lzZSAoZS5nLiA6YzpmdW5jOmB3YWRkc3RyYCkuCisgKiBVc2UgdGhlIGxvY2FsZSBlbmNvZGluZyBpbnN0ZWFkIG9mIGBgdXRmLThgYCB0byBlbmNvZGUgVW5pY29kZSBzdHJpbmdzLgorICogOmNsYXNzOmBjdXJzZXMud2luZG93YCBoYXMgYSBuZXcgOmF0dHI6YGN1cnNlcy53aW5kb3cuZW5jb2RpbmdgIGF0dHJpYnV0ZS4KKyAqIFRoZSA6Y2xhc3M6YGN1cnNlcy53aW5kb3dgIGNsYXNzIGhhcyBhIG5ldyA6bWV0aDpgfmN1cnNlcy53aW5kb3cuZ2V0X3djaGAKKyAgIG1ldGhvZCB0byBnZXQgYSB3aWRlIGNoYXJhY3RlcgorICogVGhlIDptb2Q6YGN1cnNlc2AgbW9kdWxlIGhhcyBhIG5ldyA6bWV0aDpgfmN1cnNlcy51bmdldF93Y2hgIGZ1bmN0aW9uIHRvCisgICBwdXNoIGEgd2lkZSBjaGFyYWN0ZXIgc28gdGhlIG5leHQgOm1ldGg6YH5jdXJzZXMud2luZG93LmdldF93Y2hgIHdpbGwgcmV0dXJuCisgICBpdAorCisoQ29udHJpYnV0ZWQgYnkgScOxaWdvIFNlcm5hIGluIDppc3N1ZTpgNjc1NWApCisKK2FiYworLS0tCisKK0ltcHJvdmVkIHN1cHBvcnQgZm9yIGFic3RyYWN0IGJhc2UgY2xhc3NlcyBjb250YWluaW5nIGRlc2NyaXB0b3JzIGNvbXBvc2VkIHdpdGgKK2Fic3RyYWN0IG1ldGhvZHMuIFRoZSByZWNvbW1lbmRlZCBhcHByb2FjaCB0byBkZWNsYXJpbmcgYWJzdHJhY3QgZGVzY3JpcHRvcnMgaXMKK25vdyB0byBwcm92aWRlIDphdHRyOmBfX2lzYWJzdHJhY3RtZXRob2RfX2AgYXMgYSBkeW5hbWljYWxseSB1cGRhdGVkCitwcm9wZXJ0eS4gVGhlIGJ1aWx0LWluIGRlc2NyaXB0b3JzIGhhdmUgYmVlbiB1cGRhdGVkIGFjY29yZGluZ2x5LgorCisgICogOmNsYXNzOmBhYmMuYWJzdHJhY3Rwcm9wZXJ0eWAgaGFzIGJlZW4gZGVwcmVjYXRlZCwgdXNlIDpjbGFzczpgcHJvcGVydHlgCisgICAgd2l0aCA6ZnVuYzpgYWJjLmFic3RyYWN0bWV0aG9kYCBpbnN0ZWFkLgorICAqIDpjbGFzczpgYWJjLmFic3RyYWN0Y2xhc3NtZXRob2RgIGhhcyBiZWVuIGRlcHJlY2F0ZWQsIHVzZQorICAgIDpjbGFzczpgY2xhc3NtZXRob2RgIHdpdGggOmZ1bmM6YGFiYy5hYnN0cmFjdG1ldGhvZGAgaW5zdGVhZC4KKyAgKiA6Y2xhc3M6YGFiYy5hYnN0cmFjdHN0YXRpY21ldGhvZGAgaGFzIGJlZW4gZGVwcmVjYXRlZCwgdXNlCisgICAgOmNsYXNzOmBzdGF0aWNtZXRob2RgIHdpdGggOmZ1bmM6YGFiYy5hYnN0cmFjdG1ldGhvZGAgaW5zdGVhZC4KKworKENvbnRyaWJ1dGVkIGJ5IERhcnJlbiBEYWxlIGluIDppc3N1ZTpgMTE2MTBgKQorCitmYXVsdGhhbmRsZXIKKy0tLS0tLS0tLS0tLQorCitOZXcgbW9kdWxlOiA6bW9kOmBmYXVsdGhhbmRsZXJgLgorCisgKiA6ZW52dmFyOmBQWVRIT05GQVVMVEhBTkRMRVJgCisgKiA6b3B0aW9uOmAtWGAgYGBmYXVsdGhhbmRsZXJgYAorCit0aW1lCistLS0tCisKK1RoZSA6bW9kOmB0aW1lYCBtb2R1bGUgaGFzIG5ldyBmdW5jdGlvbnM6CisKKyogOmZ1bmM6YH50aW1lLmNsb2NrX2dldHJlc2AgYW5kIDpmdW5jOmB+dGltZS5jbG9ja19nZXR0aW1lYCBmdW5jdGlvbnMgYW5kCisgIGBgQ0xPQ0tfeHh4YGAgY29uc3RhbnRzLiAgOmZ1bmM6YH50aW1lLmNsb2NrX2dldHRpbWVgIGNhbiBiZSB1c2VkIHdpdGgKKyAgOmRhdGE6YHRpbWUuQ0xPQ0tfTU9OT1RPTklDYCB0byBnZXQgYSBtb25vdG9uaWMgY2xvY2suCisqIDpmdW5jOmB+dGltZS53YWxsY2xvY2tgOiBtb25vdG9uaWMgY2xvY2suCisKKyhDb250cmlidXRlZCBieSBWaWN0b3IgU3Rpbm5lciBpbiA6aXNzdWU6YDEwMjc4YCkKKworCitmdHBsaWIKKy0tLS0tLQorCitUaGUgOmNsYXNzOmB+ZnRwbGliLkZUUF9UTFNgIGNsYXNzIG5vdyBwcm92aWRlcyBhIG5ldworOmZ1bmM6YH5mdHBsaWIuRlRQX1RMUy5jY2NgIGZ1bmN0aW9uIHRvIHJldmVydCBjb250cm9sIGNoYW5uZWwgYmFjayB0bworcGxhaW50ZXh0LiAgVGhpcyBjYW4gYmUgdXNlZnVsIHRvIHRha2UgYWR2YW50YWdlIG9mIGZpcmV3YWxscyB0aGF0IGtub3cgaG93IHRvCitoYW5kbGUgTkFUIHdpdGggbm9uLXNlY3VyZSBGVFAgd2l0aG91dCBvcGVuaW5nIGZpeGVkIHBvcnRzLgorCisoQ29udHJpYnV0ZWQgYnkgR2lhbXBhb2xvIFJvZG9sw6AgaW4gOmlzc3VlOmAxMjEzOWApCisKKworaW1hcGxpYgorLS0tLS0tLQorCitUaGUgOmNsYXNzOmB+aW1hcGxpYi5JTUFQNF9TU0xgIGNvbnN0cnVjdG9yIG5vdyBhY2NlcHRzIGFuIFNTTENvbnRleHQKK3BhcmFtZXRlciB0byBjb250cm9sIHBhcmFtZXRlcnMgb2YgdGhlIHNlY3VyZSBjaGFubmVsLgorCisoQ29udHJpYnV0ZWQgYnkgU2lqaW4gSm9zZXBoIGluIDppc3N1ZTpgODgwOGApCisKKworaW8KKy0tCisKK1RoZSA6ZnVuYzpgfmlvLm9wZW5gIGZ1bmN0aW9uIGhhcyBhIG5ldyBgYCd4J2BgIG1vZGUgdGhhdCBjYW4gYmUgdXNlZCB0bworZXhjbHVzaXZlbHkgY3JlYXRlIGEgbmV3IGZpbGUsIGFuZCByYWlzZSBhIDpleGM6YEZpbGVFeGlzdHNFcnJvcmAgaWYgdGhlIGZpbGUKK2FscmVhZHkgZXhpc3RzLiBJdCBpcyBiYXNlZCBvbiB0aGUgQzExICd4JyBtb2RlIHRvIGZvcGVuKCkuCisKKyhDb250cmlidXRlZCBieSBEYXZpZCBUb3duc2hlbmQgaW4gOmlzc3VlOmAxMjc2MGApCisKKworbHptYQorLS0tLQorCitUaGUgbmV3bHktYWRkZWQgOm1vZDpgbHptYWAgbW9kdWxlIHByb3ZpZGVzIGRhdGEgY29tcHJlc3Npb24gYW5kIGRlY29tcHJlc3Npb24KK3VzaW5nIHRoZSBMWk1BIGFsZ29yaXRobSwgaW5jbHVkaW5nIHN1cHBvcnQgZm9yIHRoZSBgYC54emBgIGFuZCBgYC5sem1hYGAKK2ZpbGUgZm9ybWF0cy4KKworKENvbnRyaWJ1dGVkIGJ5IE5hZGVlbSBWYXdkYSBhbmQgUGVyIMOYeXZpbmQgS2FybHNlbiBpbiA6aXNzdWU6YDY3MTVgKQorCisKK21hdGgKKy0tLS0KKworVGhlIDptb2Q6YG1hdGhgIG1vZHVsZSBoYXMgYSBuZXcgZnVuY3Rpb246CisKKyAgKiA6ZnVuYzpgfm1hdGgubG9nMmA6IHJldHVybiB0aGUgYmFzZS0yIGxvZ2FyaXRobSBvZiAqeCoKKyAgICAoV3JpdHRlbiBieSBNYXJrIERpY2tpbnNvbiBpbiA6aXNzdWU6YDExODg4YCkuCisKKworbm50cGxpYgorLS0tLS0tLQorCitUaGUgOmNsYXNzOmBubnRwbGliLk5OVFBgIGNsYXNzIG5vdyBzdXBwb3J0cyB0aGUgY29udGV4dCBtYW5hZ2VyIHByb3RvY29sIHRvCit1bmNvbmRpdGlvbmFsbHkgY29uc3VtZSA6ZXhjOmBzb2NrZXQuZXJyb3JgIGV4Y2VwdGlvbnMgYW5kIHRvIGNsb3NlIHRoZSBOTlRQCitjb25uZWN0aW9uIHdoZW4gZG9uZTo6CisKKyAgPj4+IGZyb20gbm50cGxpYiBpbXBvcnQgTk5UUAorICA+Pj4gd2l0aCBOTlRQKCduZXdzLmdtYW5lLm9yZycpIGFzIG46CisgIC4uLiAgICAgbi5ncm91cCgnZ21hbmUuY29tcC5weXRob24uY29tbWl0dGVycycpCisgIC4uLgorICAoJzIxMSAxNzU1IDEgMTc1NSBnbWFuZS5jb21wLnB5dGhvbi5jb21taXR0ZXJzJywgMTc1NSwgMSwgMTc1NSwgJ2dtYW5lLmNvbXAucHl0aG9uLmNvbW1pdHRlcnMnKQorICA+Pj4KKworKENvbnRyaWJ1dGVkIGJ5IEdpYW1wYW9sbyBSb2RvbMOgIGluIDppc3N1ZTpgOTc5NWApCisKKworb3MKKy0tCisKKyogVGhlIDptb2Q6YG9zYCBtb2R1bGUgaGFzIGEgbmV3IDpmdW5jOmB+b3MucGlwZTJgIGZ1bmN0aW9uIHRoYXQgbWFrZXMgaXQKKyAgcG9zc2libGUgdG8gY3JlYXRlIGEgcGlwZSB3aXRoIDpkYXRhOmB+b3MuT19DTE9FWEVDYCBvcgorICA6ZGF0YTpgfm9zLk9fTk9OQkxPQ0tgIGZsYWdzIHNldCBhdG9taWNhbGx5LiBUaGlzIGlzIGVzcGVjaWFsbHkgdXNlZnVsIHRvCisgIGF2b2lkIHJhY2UgY29uZGl0aW9ucyBpbiBtdWx0aS10aHJlYWRlZCBwcm9ncmFtcy4KKworKiBUaGUgOm1vZDpgb3NgIG1vZHVsZSBoYXMgYSBuZXcgOmZ1bmM6YH5vcy5zZW5kZmlsZWAgZnVuY3Rpb24gd2hpY2ggcHJvdmlkZXMKKyAgYW4gZWZmaWNlbnQgInplcm8tY29weSIgd2F5IGZvciBjb3B5aW5nIGRhdGEgZnJvbSBvbmUgZmlsZSAob3Igc29ja2V0KQorICBkZXNjcmlwdG9yIHRvIGFub3RoZXIuIFRoZSBwaHJhc2UgInplcm8tY29weSIgcmVmZXJzIHRvIHRoZSBmYWN0IHRoYXQgYWxsIG9mCisgIHRoZSBjb3B5aW5nIG9mIGRhdGEgYmV0d2VlbiB0aGUgdHdvIGRlc2NyaXB0b3JzIGlzIGRvbmUgZW50aXJlbHkgYnkgdGhlCisgIGtlcm5lbCwgd2l0aCBubyBjb3B5aW5nIG9mIGRhdGEgaW50byB1c2Vyc3BhY2UgYnVmZmVycy4gOmZ1bmM6YH5vcy5zZW5kZmlsZWAKKyAgY2FuIGJlIHVzZWQgdG8gZWZmaWNpZW50bHkgY29weSBkYXRhIGZyb20gYSBmaWxlIG9uIGRpc2sgdG8gYSBuZXR3b3JrIHNvY2tldCwKKyAgZS5nLiBmb3IgZG93bmxvYWRpbmcgYSBmaWxlLgorCisgIChQYXRjaCBzdWJtaXR0ZWQgYnkgUm9zcyBMYWdlcndhbGwgYW5kIEdpYW1wYW9sbyBSb2RvbMOgIGluIDppc3N1ZTpgMTA4ODJgLikKKworKiBUaGUgOm1vZDpgb3NgIG1vZHVsZSBoYXMgdHdvIG5ldyBmdW5jdGlvbnM6IDpmdW5jOmB+b3MuZ2V0cHJpb3JpdHlgIGFuZAorICA6ZnVuYzpgfm9zLnNldHByaW9yaXR5YC4gVGhleSBjYW4gYmUgdXNlZCB0byBnZXQgb3Igc2V0IHByb2Nlc3MKKyAgbmljZW5lc3MvcHJpb3JpdHkgaW4gYSBmYXNoaW9uIHNpbWlsYXIgdG8gOmZ1bmM6YG9zLm5pY2VgIGJ1dCBleHRlbmRlZCB0byBhbGwKKyAgcHJvY2Vzc2VzIGluc3RlYWQgb2YganVzdCB0aGUgY3VycmVudCBvbmUuCisKKyAgKFBhdGNoIHN1Ym1pdHRlZCBieSBHaWFtcGFvbG8gUm9kb2zDoCBpbiA6aXNzdWU6YDEwNzg0YC4pCisKKyogImF0IiBmdW5jdGlvbnMgKDppc3N1ZTpgNDc2MWApOgorCisgICogOmZ1bmM6YH5vcy5mYWNjZXNzYXRgCisgICogOmZ1bmM6YH5vcy5mY2htb2RhdGAKKyAgKiA6ZnVuYzpgfm9zLmZjaG93bmF0YAorICAqIDpmdW5jOmB+b3MuZnN0YXRhdGAKKyAgKiA6ZnVuYzpgfm9zLmZ1dGltZXNhdGAKKyAgKiA6ZnVuYzpgfm9zLmZ1dGltZXNhdGAKKyAgKiA6ZnVuYzpgfm9zLmxpbmthdGAKKyAgKiA6ZnVuYzpgfm9zLm1rZGlyYXRgCisgICogOmZ1bmM6YH5vcy5ta2ZpZm9hdGAKKyAgKiA6ZnVuYzpgfm9zLm1rbm9kYXRgCisgICogOmZ1bmM6YH5vcy5vcGVuYXRgCisgICogOmZ1bmM6YH5vcy5yZWFkbGlua2F0YAorICAqIDpmdW5jOmB+b3MucmVuYW1lYXRgCisgICogOmZ1bmM6YH5vcy5zeW1saW5rYXRgCisgICogOmZ1bmM6YH5vcy51bmxpbmthdGAKKyAgKiA6ZnVuYzpgfm9zLnV0aW1lbnNhdGAKKyAgKiA6ZnVuYzpgfm9zLnV0aW1lbnNhdGAKKworKiBleHRlbmRlZCBhdHRyaWJ1dGVzICg6aXNzdWU6YDEyNzIwYCk6CisKKyAgKiA6ZnVuYzpgfm9zLmZnZXR4YXR0cmAKKyAgKiA6ZnVuYzpgfm9zLmZsaXN0eGF0dHJgCisgICogOmZ1bmM6YH5vcy5mcmVtb3ZleGF0dHJgCisgICogOmZ1bmM6YH5vcy5mc2V0eGF0dHJgCisgICogOmZ1bmM6YH5vcy5nZXR4YXR0cmAKKyAgKiA6ZnVuYzpgfm9zLmxnZXR4YXR0cmAKKyAgKiA6ZnVuYzpgfm9zLmxpc3R4YXR0cmAKKyAgKiA6ZnVuYzpgfm9zLmxsaXN0eGF0dHJgCisgICogOmZ1bmM6YH5vcy5scmVtb3ZleGF0dHJgCisgICogOmZ1bmM6YH5vcy5sc2V0eGF0dHJgCisgICogOmZ1bmM6YH5vcy5yZW1vdmV4YXR0cmAKKyAgKiA6ZnVuYzpgfm9zLnNldHhhdHRyYAorCisqIFNjaGVkdWxlciBmdW5jdGlvbnMgKDppc3N1ZTpgMTI2NTVgKToKKworICAqIDpmdW5jOmB+b3Muc2NoZWRfZ2V0X3ByaW9yaXR5X21heGAKKyAgKiA6ZnVuYzpgfm9zLnNjaGVkX2dldF9wcmlvcml0eV9taW5gCisgICogOmZ1bmM6YH5vcy5zY2hlZF9nZXRhZmZpbml0eWAKKyAgKiA6ZnVuYzpgfm9zLnNjaGVkX2dldHBhcmFtYAorICAqIDpmdW5jOmB+b3Muc2NoZWRfZ2V0c2NoZWR1bGVyYAorICAqIDpmdW5jOmB+b3Muc2NoZWRfcnJfZ2V0X2ludGVydmFsYAorICAqIDpmdW5jOmB+b3Muc2NoZWRfc2V0YWZmaW5pdHlgCisgICogOmZ1bmM6YH5vcy5zY2hlZF9zZXRwYXJhbWAKKyAgKiA6ZnVuYzpgfm9zLnNjaGVkX3NldHNjaGVkdWxlcmAKKyAgKiA6ZnVuYzpgfm9zLnNjaGVkX3lpZWxkYAorCisqIEFkZCBzb21lIGV4dHJhIHBvc2l4IGZ1bmN0aW9ucyB0byB0aGUgb3MgbW9kdWxlICg6aXNzdWU6YDEwODEyYCk6CisKKyAgKiA6ZnVuYzpgfm9zLmZleGVjdmVgCisgICogOmZ1bmM6YH5vcy5mdXRpbWVuc2AKKyAgKiA6ZnVuYzpgfm9zLmZ1dGltZW5zYAorICAqIDpmdW5jOmB+b3MuZnV0aW1lc2AKKyAgKiA6ZnVuYzpgfm9zLmZ1dGltZXNgCisgICogOmZ1bmM6YH5vcy5sb2NrZmAKKyAgKiA6ZnVuYzpgfm9zLmx1dGltZXNgCisgICogOmZ1bmM6YH5vcy5sdXRpbWVzYAorICAqIDpmdW5jOmB+b3MucG9zaXhfZmFkdmlzZWAKKyAgKiA6ZnVuYzpgfm9zLnBvc2l4X2ZhbGxvY2F0ZWAKKyAgKiA6ZnVuYzpgfm9zLnByZWFkYAorICAqIDpmdW5jOmB+b3MucHdyaXRlYAorICAqIDpmdW5jOmB+b3MucmVhZHZgCisgICogOmZ1bmM6YH5vcy5zeW5jYAorICAqIDpmdW5jOmB+b3MudHJ1bmNhdGVgCisgICogOmZ1bmM6YH5vcy53YWl0aWRgCisgICogOmZ1bmM6YH5vcy53cml0ZXZgCisKKyogT3RoZXIgbmV3IGZ1bmN0aW9uczoKKworICAqIDpmdW5jOmB+b3MuZmRsaXN0ZGlyYCAoOmlzc3VlOmAxMDc1NWApCisgICogOmZ1bmM6YH5vcy5nZXRncm91cGxpc3RgICg6aXNzdWU6YDkzNDRgKQorCisKK3BhY2thZ2luZworLS0tLS0tLS0tCisKKzptb2Q6YGRpc3R1dGlsc2AgaGFzIHVuZGVyZ29uZSBhZGRpdGlvbnMgYW5kIHJlZmFjdG9yaW5nIHVuZGVyIGEgbmV3IG5hbWUsCis6bW9kOmBwYWNrYWdpbmdgLCB0byBhbGxvdyBkZXZlbG9wZXJzIHRvIGJyZWFrIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCis6bW9kOmBkaXN0dXRpbHNgIGlzIHN0aWxsIHByb3ZpZGVkIGluIHRoZSBzdGFuZGFyZCBsaWJyYXJ5LCBidXQgdXNlcnMgYXJlCitlbmNvdXJhZ2VkIHRvIHRyYW5zaXRpb24gdG8gOm1vZDpgcGFja2FnaW5nYC4gIEZvciBvbGRlciB2ZXJzaW9ucyBvZiBQeXRob24sIGEKK2JhY2twb3J0IGNvbXBhdGlibGUgd2l0aCAyLjQrIGFuZCAzLjErIHdpbGwgYmUgbWFkZSBhdmFpbGFibGUgb24gUHlQSSB1bmRlciB0aGUKK25hbWUgOm1vZDpgZGlzdHV0aWxzMmAuCisKKy4uIFRPRE8gYWRkIGV4YW1wbGVzIGFuZCBob3d0byB0byB0aGUgcGFja2FnaW5nIGRvY3MgYW5kIGxpbmsgdG8gdGhlbQorCisKK3B5ZG9jCistLS0tLQorCitUaGUgVGsgR1VJIGFuZCB0aGUgOmZ1bmM6YH5weWRvYy5zZXJ2ZWAgZnVuY3Rpb24gaGF2ZSBiZWVuIHJlbW92ZWQgZnJvbSB0aGUKKzptb2Q6YHB5ZG9jYCBtb2R1bGU6IGBgcHlkb2MgLWdgYCBhbmQgOmZ1bmM6YH5weWRvYy5zZXJ2ZWAgaGF2ZSBiZWVuIGRlcHJlY2F0ZWQKK2luIFB5dGhvbiAzLjIuCisKKworc3lzCistLS0KKworKiBUaGUgOm1vZDpgc3lzYCBtb2R1bGUgaGFzIGEgbmV3IDpkYXRhOmB+c3lzLnRocmVhZF9pbmZvYCA6dGVybTpgc3RydWN0CisgIHNlcXVlbmNlYCBob2xkaW5nIGluZm9ybWF0aW9ucyBhYm91dCB0aGUgdGhyZWFkIGltcGxlbWVudGF0aW9uLgorCisgICg6aXNzdWU6YDExMjIzYCkKKworCitzaWduYWwKKy0tLS0tLQorCisqIFRoZSA6bW9kOmBzaWduYWxgIG1vZHVsZSBoYXMgbmV3IGZ1bmN0aW9uczoKKworICAqIDpmdW5jOmB+c2lnbmFsLnB0aHJlYWRfc2lnbWFza2A6IGZldGNoIGFuZC9vciBjaGFuZ2UgdGhlIHNpZ25hbCBtYXNrIG9mIHRoZQorICAgIGNhbGxpbmcgdGhyZWFkIChDb250cmlidXRlZCBieSBKZWFuLVBhdWwgQ2FsZGVyb25lIGluIDppc3N1ZTpgODQwN2ApIDsKKyAgKiA6ZnVuYzpgfnNpZ25hbC5wdGhyZWFkX2tpbGxgOiBzZW5kIGEgc2lnbmFsIHRvIGEgdGhyZWFkIDsKKyAgKiA6ZnVuYzpgfnNpZ25hbC5zaWdwZW5kaW5nYDogZXhhbWluZSBwZW5kaW5nIGZ1bmN0aW9ucyA7CisgICogOmZ1bmM6YH5zaWduYWwuc2lnd2FpdGA6IHdhaXQgYSBzaWduYWwuCisgICogOmZ1bmM6YH5zaWduYWwuc2lnd2FpdGluZm9gOiB3YWl0IGZvciBhIHNpZ25hbCwgcmV0dXJuaW5nIGRldGFpbGVkCisgICAgaW5mb3JtYXRpb24gYWJvdXQgaXQuCisgICogOmZ1bmM6YH5zaWduYWwuc2lndGltZWR3YWl0YDogbGlrZSA6ZnVuYzpgfnNpZ25hbC5zaWd3YWl0aW5mb2AgYnV0IHdpdGggYQorICAgIHRpbWVvdXQuCisKKyogVGhlIHNpZ25hbCBoYW5kbGVyIHdyaXRlcyB0aGUgc2lnbmFsIG51bWJlciBhcyBhIHNpbmdsZSBieXRlIGluc3RlYWQgb2YKKyAgYSBudWwgYnl0ZSBpbnRvIHRoZSB3YWtldXAgZmlsZSBkZXNjcmlwdG9yLiBTbyBpdCBpcyBwb3NzaWJsZSB0byB3YWl0IG1vcmUKKyAgdGhhbiBvbmUgc2lnbmFsIGFuZCBrbm93IHdoaWNoIHNpZ25hbHMgd2VyZSByYWlzZWQuCisKKyogOmZ1bmM6YHNpZ25hbC5zaWduYWxgIGFuZCA6ZnVuYzpgc2lnbmFsLnNpZ2ludGVycnVwdGAgcmFpc2UgYW4gT1NFcnJvciwKKyAgaW5zdGVhZCBvZiBhIFJ1bnRpbWVFcnJvcjogT1NFcnJvciBoYXMgYW4gZXJybm8gYXR0cmlidXRlLgorCitzb2NrZXQKKy0tLS0tLQorCisqIFRoZSA6Y2xhc3M6YH5zb2NrZXQuc29ja2V0YCBjbGFzcyBub3cgZXhwb3NlcyBhZGRpdGlvbmFsIG1ldGhvZHMgdG8gcHJvY2VzcworICBhbmNpbGxhcnkgZGF0YSB3aGVuIHN1cHBvcnRlZCBieSB0aGUgdW5kZXJseWluZyBwbGF0Zm9ybToKKworICAqIDpmdW5jOmB+c29ja2V0LnNvY2tldC5zZW5kbXNnYAorICAqIDpmdW5jOmB+c29ja2V0LnNvY2tldC5yZWN2bXNnYAorICAqIDpmdW5jOmB+c29ja2V0LnNvY2tldC5yZWN2bXNnX2ludG9gCisKKyAgKENvbnRyaWJ1dGVkIGJ5IERhdmlkIFdhdHNvbiBpbiA6aXNzdWU6YDY1NjBgLCBiYXNlZCBvbiBhbiBlYXJsaWVyIHBhdGNoIGJ5CisgIEhlaWtvIFd1bmRyYW0pCisKKyogVGhlIDpjbGFzczpgfnNvY2tldC5zb2NrZXRgIGNsYXNzIG5vdyBzdXBwb3J0cyB0aGUgUEZfQ0FOIHByb3RvY29sIGZhbWlseQorICAoaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Tb2NrZXRjYW4pLCBvbiBMaW51eAorICAoaHR0cDovL2x3bi5uZXQvQXJ0aWNsZXMvMjUzNDI1KS4KKworICAoQ29udHJpYnV0ZWQgYnkgTWF0dGhpYXMgRnVjaHMsIHVwZGF0ZWQgYnkgVGlhZ28gR29uw6dhbHZlcyBpbiA6aXNzdWU6YDEwMTQxYCkKKworKiBUaGUgOmNsYXNzOmB+c29ja2V0LnNvY2tldGAgY2xhc3Mgbm93IHN1cHBvcnRzIHRoZSBQRl9SRFMgcHJvdG9jb2wgZmFtaWx5CisgIChodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1JlbGlhYmxlX0RhdGFncmFtX1NvY2tldHMgYW5kCisgIGh0dHA6Ly9vc3Mub3JhY2xlLmNvbS9wcm9qZWN0cy9yZHMvKS4KKworc3NsCistLS0KKworKiBUaGUgOm1vZDpgc3NsYCBtb2R1bGUgaGFzIHR3byBuZXcgcmFuZG9tIGdlbmVyYXRpb24gZnVuY3Rpb25zOgorCisgICogOmZ1bmM6YH5zc2wuUkFORF9ieXRlc2A6IGdlbmVyYXRlIGNyeXB0b2dyYXBoaWNhbGx5IHN0cm9uZworICAgIHBzZXVkby1yYW5kb20gYnl0ZXMuCisgICogOmZ1bmM6YH5zc2wuUkFORF9wc2V1ZG9fYnl0ZXNgOiBnZW5lcmF0ZSBwc2V1ZG8tcmFuZG9tIGJ5dGVzLgorCisgIChDb250cmlidXRlZCBieSBWaWN0b3IgU3Rpbm5lciBpbiA6aXNzdWU6YDEyMDQ5YCkKKworKiBUaGUgOm1vZDpgc3NsYCBtb2R1bGUgbm93IGV4cG9zZXMgYSBmaW5lci1ncmFpbmVkIGV4Y2VwdGlvbiBoaWVyYXJjaHkKKyAgaW4gb3JkZXIgdG8gbWFrZSBpdCBlYXNpZXIgdG8gaW5zcGVjdCB0aGUgdmFyaW91cyBraW5kcyBvZiBlcnJvcnMuCisKKyAgKENvbnRyaWJ1dGVkIGJ5IEFudG9pbmUgUGl0cm91IGluIDppc3N1ZTpgMTExODNgKQorCisqIDptZXRoOmB+c3NsLlNTTENvbnRleHQubG9hZF9jZXJ0X2NoYWluYCBub3cgYWNjZXB0cyBhICpwYXNzd29yZCogYXJndW1lbnQKKyAgdG8gYmUgdXNlZCBpZiB0aGUgcHJpdmF0ZSBrZXkgaXMgZW5jcnlwdGVkLgorCisgIChDb250cmlidXRlZCBieSBBZGFtIFNpbXBraW5zIGluIDppc3N1ZTpgMTI4MDNgKQorCisqIERpZmZpZS1IZWxsbWFuIGtleSBleGNoYW5nZSwgYm90aCByZWd1bGFyIGFuZCBFbGxpcHRpYyBDdXJ2ZS1iYXNlZCwgaXMKKyAgbm93IHN1cHBvcnRlZCB0aHJvdWdoIHRoZSA6bWV0aDpgfnNzbC5TU0xDb250ZXh0LmxvYWRfZGhfcGFyYW1zYCBhbmQKKyAgOm1ldGg6YH5zc2wuU1NMQ29udGV4dC5zZXRfZWNkaF9jdXJ2ZWAgbWV0aG9kcy4KKworICAoQ29udHJpYnV0ZWQgYnkgQW50b2luZSBQaXRyb3UgaW4gOmlzc3VlOmAxMzYyNmAgYW5kIDppc3N1ZTpgMTM2MjdgKQorCisqIFNTTCBzb2NrZXRzIGhhdmUgYSBuZXcgOm1ldGg6YH5zc2wuU1NMU29ja2V0LmdldF9jaGFubmVsX2JpbmRpbmdgIG1ldGhvZAorICBhbGxvd2luZyB0aGUgaW1wbGVtZW50YXRpb24gb2YgY2VydGFpbiBhdXRoZW50aWNhdGlvbiBtZWNoYW5pc21zIHN1Y2ggYXMKKyAgU0NSQU0tU0hBLTEtUExVUy4KKworICAoQ29udHJpYnV0ZWQgYnkgSmFjZWsgS29uaWVjem55IGluIDppc3N1ZTpgMTI1NTFgKQorCisqIFlvdSBjYW4gcXVlcnkgdGhlIFNTTCBjb21wcmVzc2lvbiBhbGdvcml0aG0gdXNlZCBieSBhbiBTU0wgc29ja2V0LCB0aGFua3MKKyAgdG8gaXRzIG5ldyA6bWV0aDpgfnNzbC5TU0xTb2NrZXQuY29tcHJlc3Npb25gIG1ldGhvZC4KKworICAoQ29udHJpYnV0ZWQgYnkgQW50b2luZSBQaXRyb3UgaW4gOmlzc3VlOmAxMzYzNGApCisKKworc2h1dGlsCistLS0tLS0KKworKiBUaGUgOm1vZDpgc2h1dGlsYCBtb2R1bGUgaGFzIHRoZXNlIG5ldyBmdWN0aW9uczoKKworICAqIDpmdW5jOmB+c2h1dGlsLmRpc2tfdXNhZ2VgOiBwcm92aWRlcyB0b3RhbCwgdXNlZCBhbmQgZnJlZSBkaXNrIHNwYWNlCisgICAgc3RhdGlzdGljcy4gKENvbnRyaWJ1dGVkIGJ5IEdpYW1wYW9sbyBSb2RvbMOgIGluIDppc3N1ZTpgMTI0NDJgKQorICAqIDpmdW5jOmB+c2h1dGlsLmNob3duYDogYWxsb3dzIG9uZSB0byBjaGFuZ2UgdXNlciBhbmQvb3IgZ3JvdXAgb2YgdGhlIGdpdmVuCisgICAgcGF0aCBhbHNvIHNwZWNpZnlpbmcgdGhlIHVzZXIvZ3JvdXAgbmFtZXMgYW5kIG5vdCBvbmx5IHRoZWlyIG51bWVyaWMKKyAgICBpZHMuIChDb250cmlidXRlZCBieSBTYW5kcm8gVG9zaSBpbiA6aXNzdWU6YDEyMTkxYCkKKworc210cGxpYgorLS0tLS0tLQorCitUaGUgOmNsYXNzOmB+c210cGxpYi5TTVRQX1NTTGAgY29uc3RydWN0b3IgYW5kIHRoZSA6bWV0aDpgfnNtdHBsaWIuU01UUC5zdGFydHRsc2AKK21ldGhvZCBub3cgYWNjZXB0IGFuIFNTTENvbnRleHQgcGFyYW1ldGVyIHRvIGNvbnRyb2wgcGFyYW1ldGVycyBvZiB0aGUgc2VjdXJlCitjaGFubmVsLgorCisoQ29udHJpYnV0ZWQgYnkgS2FzdW4gSGVyYXRoIGluIDppc3N1ZTpgODgwOWApCisKK3VybGxpYgorLS0tLS0tCisKK1RoZSA6Y2xhc3M6YH51cmxsaWIucmVxdWVzdC5SZXF1ZXN0YCBjbGFzcywgbm93IGFjY2VwdHMgYSAqbWV0aG9kKiBhcmd1bWVudAordXNlZCBieSA6bWV0aDpgfnVybGxpYi5yZXF1ZXN0LlJlcXVlc3QuZ2V0X21ldGhvZGAgdG8gZGV0ZXJtaW5lIHdoYXQgSFRUUCBtZXRob2QKK3Nob3VsZCBiZSB1c2VkLiAgRm9yIGV4YW1wbGUsIHRoaXMgd2lsbCBzZW5kIGEgYGAnSEVBRCdgYCByZXF1ZXN0OjoKKworICAgPj4+IHVybG9wZW4oUmVxdWVzdCgnaHR0cDovL3d3dy5weXRob24ub3JnJywgbWV0aG9kPSdIRUFEJykpCisKKyg6aXNzdWU6YDE2NzMwMDdgKQorCitzY2hlZAorLS0tLS0KKworKiA6bWV0aDpgfnNjaGVkLnNjaGVkdWxlci5ydW5gIG5vdyBhY2NlcHRzIGEgKmJsb2NraW5nKiBwYXJhbWV0ZXIgd2hpY2ggd2hlbgorICBzZXQgdG8gRmFsc2UgbWFrZXMgdGhlIG1ldGhvZCBleGVjdXRlIHRoZSBzY2hlZHVsZWQgZXZlbnRzIGR1ZSB0byBleHBpcmUKKyAgc29vbmVzdCAoaWYgYW55KSBhbmQgdGhlbiByZXR1cm4gaW1tZWRpYXRlbHkuCisgIFRoaXMgaXMgdXNlZnVsIGluIGNhc2UgeW91IHdhbnQgdG8gdXNlIHRoZSA6Y2xhc3M6YH5zY2hlZC5zY2hlZHVsZXJgIGluCisgIG5vbi1ibG9ja2luZyBhcHBsaWNhdGlvbnMuICAoQ29udHJpYnV0ZWQgYnkgR2lhbXBhb2xvIFJvZG9sw6AgaW4gOmlzc3VlOmAxMzQ0OWApCisKKyogOmNsYXNzOmB+c2NoZWQuc2NoZWR1bGVyYCBjbGFzcyBjYW4gbm93IGJlIHNhZmVseSB1c2VkIGluIG11bHRpLXRocmVhZGVkCisgIGVudmlyb25tZW50cy4gIChDb250cmlidXRlZCBieSBKb3NpYWggQ2FybHNvbiBhbmQgR2lhbXBhb2xvIFJvZG9sw6AgaW4KKyAgOmlzc3VlOmA4Njg0YCkKKworKiAqdGltZWZ1bmMqIGFuZCAqZGVsYXlmdW5jdCogcGFyYW1ldGVycyBvZiA6Y2xhc3M6YH5zY2hlZC5zY2hlZHVsZXJgIGNsYXNzCisgIGNvbnN0cnVjdG9yIGFyZSBub3cgb3B0aW9uYWwgYW5kIGRlZmF1bHRzIHRvIDpmdW5jOmB0aW1lLnRpbWVgIGFuZAorICA6ZnVuYzpgdGltZS5zbGVlcGAgcmVzcGVjdGl2ZWx5LiAgKENvbnRyaWJ1dGVkIGJ5IENocmlzIENsYXJrIGluCisgIDppc3N1ZTpgMTMyNDVgKQorCisqIDptZXRoOmB+c2NoZWQuc2NoZWR1bGVyLmVudGVyYCBhbmQgOm1ldGg6YH5zY2hlZC5zY2hlZHVsZXIuZW50ZXJhYnNgCisgICphcmd1bWVudCogcGFyYW1ldGVyIGlzIG5vdyBvcHRpb25hbC4gIChDb250cmlidXRlZCBieSBDaHJpcyBDbGFyayBpbgorICA6aXNzdWU6YDEzMjQ1YCkKKworKiA6bWV0aDpgfnNjaGVkLnNjaGVkdWxlci5lbnRlcmAgYW5kIDptZXRoOmB+c2NoZWQuc2NoZWR1bGVyLmVudGVyYWJzYAorICBub3cgYWNjZXB0IGEgKmt3YXJncyogcGFyYW1ldGVyLiAgKENvbnRyaWJ1dGVkIGJ5IENocmlzIENsYXJrIGluCisgIDppc3N1ZTpgMTMyNDVgKQorCitPcHRpbWl6YXRpb25zCis9PT09PT09PT09PT09CisKK01ham9yIHBlcmZvcm1hbmNlIGVuaGFuY2VtZW50cyBoYXZlIGJlZW4gYWRkZWQ6CisKKyogVGhhbmtzIHRvIHRoZSA6cGVwOmAzOTNgLCBzb21lIG9wZXJhdGlvbnMgb24gVW5pY29kZSBzdHJpbmdzIGhhcyBiZWVuIG9wdGltaXplZDoKKworICAqIHRoZSBtZW1vcnkgZm9vdHByaW50IGlzIGRpdmlkZWQgYnkgMiB0byA0IGRlcGVuZGluZyBvbiB0aGUgdGV4dAorICAqIGVuY29kZSBhbiBBU0NJSSBzdHJpbmcgdG8gVVRGLTggZG9lc24ndCBuZWVkIHRvIGVuY29kZSBjaGFyYWN0ZXJzIGFueW1vcmUsCisgICAgdGhlIFVURi04IHJlcHJlc2VudGF0aW9uIGlzIHNoYXJlZCB3aXRoIHRoZSBBU0NJSSByZXByZXNlbnRhdGlvbgorICAqIHRoZSBVVEYtOCBlbmNvZGVyIGhhcyBiZWVuIG9wdGltaXplZAorICAqIHJlcGVhdGluZyBhIHNpbmdsZSBBU0NJSSBsZXR0ZXIgYW5kIGdldHRpbmcgYSBzdWJzdHJpbmcgb2YgYSBBU0NJSSBzdHJpbmdzCisgICAgaXMgNCB0aW1lcyBmYXN0ZXIKKworCitCdWlsZCBhbmQgQyBBUEkgQ2hhbmdlcworPT09PT09PT09PT09PT09PT09PT09PT0KKworQ2hhbmdlcyB0byBQeXRob24ncyBidWlsZCBwcm9jZXNzIGFuZCB0byB0aGUgQyBBUEkgaW5jbHVkZToKKworKiBUaGUgOnBlcDpgMzkzYCBhZGRlZCBuZXcgVW5pY29kZSB0eXBlcywgbWFjcm9zIGFuZCBmdW5jdGlvbnM6CisKKyAgKiBIaWdoLWxldmVsIEFQSToKKworICAgICogOmM6ZnVuYzpgUHlVbmljb2RlX0NvcHlDaGFyYWN0ZXJzYAorICAgICogOmM6ZnVuYzpgUHlVbmljb2RlX0ZpbmRDaGFyYAorICAgICogOmM6ZnVuYzpgUHlVbmljb2RlX0dldExlbmd0aGAsIDpjOm1hY3JvOmBQeVVuaWNvZGVfR0VUX0xFTkdUSGAKKyAgICAqIDpjOmZ1bmM6YFB5VW5pY29kZV9OZXdgCisgICAgKiA6YzpmdW5jOmBQeVVuaWNvZGVfU3Vic3RyaW5nYAorICAgICogOmM6ZnVuYzpgUHlVbmljb2RlX1JlYWRDaGFyYCwgOmM6ZnVuYzpgUHlVbmljb2RlX1dyaXRlQ2hhcmAKKworICAqIExvdy1sZXZlbCBBUEk6CisKKyAgICAqIDpjOnR5cGU6YFB5X1VDUzFgLCA6Yzp0eXBlOmBQeV9VQ1MyYCwgOmM6dHlwZTpgUHlfVUNTNGAgdHlwZXMKKyAgICAqIDpjOnR5cGU6YFB5QVNDSUlPYmplY3RgIGFuZCA6Yzp0eXBlOmBQeUNvbXBhY3RVbmljb2RlT2JqZWN0YCBzdHJ1Y3R1cmVzCisgICAgKiA6YzptYWNybzpgUHlVbmljb2RlX1JFQURZYAorICAgICogOmM6ZnVuYzpgUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YWAKKyAgICAqIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VDUzRgLCA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVQ1M0Q29weWAKKyAgICAqIDpjOm1hY3JvOmBQeVVuaWNvZGVfREFUQWAsIDpjOm1hY3JvOmBQeVVuaWNvZGVfMUJZVEVfREFUQWAsCisgICAgICA6YzptYWNybzpgUHlVbmljb2RlXzJCWVRFX0RBVEFgLCA6YzptYWNybzpgUHlVbmljb2RlXzRCWVRFX0RBVEFgCisgICAgKiA6YzptYWNybzpgUHlVbmljb2RlX0tJTkRgIHdpdGggOmM6dHlwZTpgUHlVbmljb2RlX0tpbmRgIGVudW06CisgICAgICA6YzpkYXRhOmBQeVVuaWNvZGVfV0NIQVJfS0lORGAsIDpjOmRhdGE6YFB5VW5pY29kZV8xQllURV9LSU5EYCwKKyAgICAgIDpjOmRhdGE6YFB5VW5pY29kZV8yQllURV9LSU5EYCwgOmM6ZGF0YTpgUHlVbmljb2RlXzRCWVRFX0tJTkRgCisgICAgKiA6YzptYWNybzpgUHlVbmljb2RlX1JFQURgLCA6YzptYWNybzpgUHlVbmljb2RlX1JFQURfQ0hBUmAsIDpjOm1hY3JvOmBQeVVuaWNvZGVfV1JJVEVgCisgICAgKiA6YzptYWNybzpgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFYAorCisKKworRGVwcmVjYXRlZAorPT09PT09PT09PQorCitVbnN1cHBvcnRlZCBPcGVyYXRpbmcgU3lzdGVtcworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworT1MvMiBhbmQgVk1TIGFyZSBubyBsb25nZXIgc3VwcG9ydGVkIGR1ZSB0byB0aGUgbGFjayBvZiBhIG1haW50YWluZXIuCisKK1dpbmRvd3MgMjAwMCBhbmQgV2luZG93cyBwbGF0Zm9ybXMgd2hpY2ggc2V0IGBgQ09NU1BFQ2BgIHRvIGBgY29tbWFuZC5jb21gYAorYXJlIG5vIGxvbmdlciBzdXBwb3J0ZWQgZHVlIHRvIG1haW50ZW5hbmNlIGJ1cmRlbi4KKworCitEZXByZWNhdGVkIFB5dGhvbiBtb2R1bGVzLCBmdW5jdGlvbnMgYW5kIG1ldGhvZHMKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisqIFRoZSA6bW9kOmBwYWNrYWdpbmdgIG1vZHVsZSByZXBsYWNlcyB0aGUgOm1vZDpgZGlzdHV0aWxzYCBtb2R1bGUKKyogVGhlIGBgdW5pY29kZV9pbnRlcm5hbGBgIGNvZGVjIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYmVjYXVzZSBvZiB0aGUKKyAgOnBlcDpgMzkzYCwgdXNlIFVURi04LCBVVEYtMTYgKGBgdXRmLTE2LWxlYGAgb3IgYGB1dGYtMTYtYmVgYCksIG9yIFVURi0zMgorICAoYGB1dGYtMzItbGVgYCBvciBgYHV0Zi0zMi1iZWBgKQorKiA6bWV0aDpgZnRwbGliLkZUUC5ubHN0YCBhbmQgOm1ldGg6YGZ0cGxpYi5GVFAuZGlyYDogdXNlCisgIDptZXRoOmBmdHBsaWIuRlRQLm1sc2RgCisqIDpmdW5jOmBwbGF0Zm9ybS5wb3BlbmA6IHVzZSB0aGUgOm1vZDpgc3VicHJvY2Vzc2AgbW9kdWxlLiBDaGVjayBlc3BlY2lhbGx5CisgIHRoZSA6cmVmOmBzdWJwcm9jZXNzLXJlcGxhY2VtZW50c2Agc2VjdGlvbi4KKyogOmlzc3VlOmAxMzM3NGA6IFRoZSBXaW5kb3dzIGJ5dGVzIEFQSSBoYXMgYmVlbiBkZXByZWNhdGVkIGluIHRoZSA6bW9kOmBvc2AKKyAgbW9kdWxlLiBVc2UgVW5pY29kZSBmaWxlbmFtZXMsIGluc3RlYWQgb2YgYnl0ZXMgZmlsZW5hbWVzLCB0byBub3QgZGVwZW5kIG9uCisgIHRoZSBBTlNJIGNvZGUgcGFnZSBhbnltb3JlIGFuZCB0byBzdXBwb3J0IGFueSBmaWxlbmFtZS4KKworCitEZXByZWNhdGVkIGZ1bmN0aW9ucyBhbmQgdHlwZXMgb2YgdGhlIEMgQVBJCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCBoYXMgYmVlbiBkZXByZWNhdGVkIGJ5IHRoZSA6cGVwOmAzOTNgIGFuZCB3aWxsIGJlCityZW1vdmVkIGluIFB5dGhvbiA0LiBBbGwgZnVuY3Rpb25zIHVzaW5nIHRoaXMgdHlwZSBhcmUgZGVwcmVjYXRlZDoKKworVW5pY29kZSBmdW5jdGlvbnMgYW5kIG1ldGhvZHMgdXNpbmcgOmM6dHlwZTpgUHlfVU5JQ09ERWAgYW5kCis6Yzp0eXBlOmBQeV9VTklDT0RFKmAgdHlwZXM6CisKKyAqIDpjOm1hY3JvOmBQeVVuaWNvZGVfRnJvbVVuaWNvZGVgOiB1c2UgOmM6ZnVuYzpgUHlVbmljb2RlX0Zyb21XaWRlQ2hhcmAgb3IKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGFgCisgKiA6YzptYWNybzpgUHlVbmljb2RlX0FTX1VOSUNPREVgLCA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVbmljb2RlYCwKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplYDogdXNlIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1dpZGVDaGFyU3RyaW5nYAorICogOmM6bWFjcm86YFB5VW5pY29kZV9BU19EQVRBYDogdXNlIDpjOm1hY3JvOmBQeVVuaWNvZGVfREFUQWAgd2l0aAorICAgOmM6bWFjcm86YFB5VW5pY29kZV9SRUFEYCBhbmQgOmM6bWFjcm86YFB5VW5pY29kZV9XUklURWAKKyAqIDpjOm1hY3JvOmBQeVVuaWNvZGVfR0VUX1NJWkVgLCA6YzpmdW5jOmBQeVVuaWNvZGVfR2V0U2l6ZWA6IHVzZQorICAgOmM6bWFjcm86YFB5VW5pY29kZV9HRVRfTEVOR1RIYCBvciA6YzpmdW5jOmBQeVVuaWNvZGVfR2V0TGVuZ3RoYAorICogOmM6bWFjcm86YFB5VW5pY29kZV9HRVRfREFUQV9TSVpFYDogdXNlCisgICBgYFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikgKiBQeVVuaWNvZGVfS0lORChzdHIpYGAgKG9ubHkgd29yayBvbiByZWFkeQorICAgc3RyaW5ncykKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VuaWNvZGVDb3B5YDogdXNlIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1VDUzRDb3B5YCBvcgorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0FzV2lkZUNoYXJTdHJpbmdgCisgKiA6YzpmdW5jOmBQeVVuaWNvZGVfR2V0TWF4YAorCisKK0Z1bmN0aW9ucyBhbmQgbWFjcm9zIG1hbmlwdWxhdGluZyBQeV9VTklDT0RFKiBzdHJpbmdzOgorCisgKiA6YzptYWNybzpgUHlfVU5JQ09ERV9zdHJsZW5gOiB1c2UgOmM6ZnVuYzpgUHlVbmljb2RlX0dldExlbmd0aGAgb3IKKyAgIDpjOm1hY3JvOmBQeVVuaWNvZGVfR0VUX0xFTkdUSGAKKyAqIDpjOm1hY3JvOmBQeV9VTklDT0RFX3N0cmNhdGA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnNgIG9yCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfRnJvbUZvcm1hdGAKKyAqIDpjOm1hY3JvOmBQeV9VTklDT0RFX3N0cmNweWAsIDpjOm1hY3JvOmBQeV9VTklDT0RFX3N0cm5jcHlgLAorICAgOmM6bWFjcm86YFB5X1VOSUNPREVfQ09QWWA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnNgIG9yCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfU3Vic3RyaW5nYAorICogOmM6bWFjcm86YFB5X1VOSUNPREVfc3RyY21wYDogdXNlIDpjOmZ1bmM6YFB5VW5pY29kZV9Db21wYXJlYAorICogOmM6bWFjcm86YFB5X1VOSUNPREVfc3RybmNtcGA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfVGFpbG1hdGNoYAorICogOmM6bWFjcm86YFB5X1VOSUNPREVfc3RyY2hyYCwgOmM6bWFjcm86YFB5X1VOSUNPREVfc3RycmNocmA6IHVzZQorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0ZpbmRDaGFyYAorICogOmM6bWFjcm86YFB5X1VOSUNPREVfRklMTGA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfRmlsbGAKKyAqIDpjOm1hY3JvOmBQeV9VTklDT0RFX01BVENIYAorCitFbmNvZGVyczoKKworICogOmM6ZnVuYzpgUHlVbmljb2RlX0VuY29kZWA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQXNFbmNvZGVkT2JqZWN0YAorICogOmM6ZnVuYzpgUHlVbmljb2RlX0VuY29kZVVURjdgCisgKiA6YzpmdW5jOmBQeVVuaWNvZGVfRW5jb2RlVVRGOGA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVVEY4YCBvcgorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0FzVVRGOFN0cmluZ2AKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVVVEYzMmAKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVVVEYxNmAKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVVbmljb2RlRXNjYXBlOmAgdXNlCisgICA6YzpmdW5jOmBQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nYAorICogOmM6ZnVuYzpgUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGU6YCB1c2UKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmdgCisgKiA6YzpmdW5jOmBQeVVuaWNvZGVfRW5jb2RlTGF0aW4xYDogdXNlIDpjOmZ1bmM6YFB5VW5pY29kZV9Bc0xhdGluMVN0cmluZ2AKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVBU0NJSWA6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQXNBU0NJSVN0cmluZ2AKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVDaGFybWFwYAorICogOmM6ZnVuYzpgUHlVbmljb2RlX1RyYW5zbGF0ZUNoYXJtYXBgCisgKiA6YzpmdW5jOmBQeVVuaWNvZGVfRW5jb2RlTUJDU2A6IHVzZSA6YzpmdW5jOmBQeVVuaWNvZGVfQXNNQkNTU3RyaW5nYCBvcgorICAgOmM6ZnVuYzpgUHlVbmljb2RlX0VuY29kZUNvZGVQYWdlYCAod2l0aCBgYENQX0FDUGBgIGNvZGVfcGFnZSkKKyAqIDpjOmZ1bmM6YFB5VW5pY29kZV9FbmNvZGVEZWNpbWFsYCwKKyAgIDpjOmZ1bmM6YFB5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsVG9BU0NJSWAKKworCitQb3J0aW5nIHRvIFB5dGhvbiAzLjMKKz09PT09PT09PT09PT09PT09PT09PQorCitUaGlzIHNlY3Rpb24gbGlzdHMgcHJldmlvdXNseSBkZXNjcmliZWQgY2hhbmdlcyBhbmQgb3RoZXIgYnVnZml4ZXMKK3RoYXQgbWF5IHJlcXVpcmUgY2hhbmdlcyB0byB5b3VyIGNvZGUuCisKK1BvcnRpbmcgUHl0aG9uIGNvZGUKKy0tLS0tLS0tLS0tLS0tLS0tLS0KKworKiA6aXNzdWU6YDEyMzI2YDogT24gTGludXgsIHN5cy5wbGF0Zm9ybSBkb2Vzbid0IGNvbnRhaW4gdGhlIG1ham9yIHZlcnNpb24KKyAgYW55bW9yZS4gSXQgaXMgbm93IGFsd2F5cyAnbGludXgnLCBpbnN0ZWFkIG9mICdsaW51eDInIG9yICdsaW51eDMnIGRlcGVuZGluZworICBvbiB0aGUgTGludXggdmVyc2lvbiB1c2VkIHRvIGJ1aWxkIFB5dGhvbi4gUmVwbGFjZSBzeXMucGxhdGZvcm0gPT0gJ2xpbnV4MicKKyAgd2l0aCBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnbGludXgnKSwgb3IgZGlyZWN0bHkgc3lzLnBsYXRmb3JtID09ICdsaW51eCcgaWYKKyAgeW91IGRvbid0IG5lZWQgdG8gc3VwcG9ydCBvbGRlciBQeXRob24gdmVyc2lvbnMuCisKK1BvcnRpbmcgQyBjb2RlCistLS0tLS0tLS0tLS0tLQorCisqIER1ZSB0byA6cmVmOmBQRVAgMzkzIDxwZXAtMzkzPmAsIHRoZSA6Yzp0eXBlOmBQeV9VTklDT0RFYCB0eXBlIGFuZCBhbGwKKyAgZnVuY3Rpb25zIHVzaW5nIHRoaXMgdHlwZSBhcmUgZGVwcmVjYXRlZCAoYnV0IHdpbGwgc3RheSBhdmFpbGFibGUgZm9yCisgIGF0IGxlYXN0IGZpdmUgeWVhcnMpLiAgSWYgeW91IHdlcmUgdXNpbmcgbG93LWxldmVsIFVuaWNvZGUgQVBJcyB0bworICBjb25zdHJ1Y3QgYW5kIGFjY2VzcyB1bmljb2RlIG9iamVjdHMgYW5kIHlvdSB3YW50IHRvIGJlbmVmaXQgb2YgdGhlCisgIG1lbW9yeSBmb290cHJpbnQgcmVkdWN0aW9uIHByb3ZpZGVkIGJ5IHRoZSBQRVAgMzkzLCB5b3UgaGF2ZSB0byBjb252ZXJ0CisgIHlvdXIgY29kZSB0byB0aGUgbmV3IDpkb2M6YFVuaWNvZGUgQVBJIDwuLi9jLWFwaS91bmljb2RlPmAuCisKKyAgSG93ZXZlciwgaWYgeW91IG9ubHkgaGF2ZSBiZWVuIHVzaW5nIGhpZ2gtbGV2ZWwgZnVuY3Rpb25zIHN1Y2ggYXMKKyAgOmM6ZnVuYzpgUHlVbmljb2RlX0NvbmNhdCgpYCwgOmM6ZnVuYzpgUHlVbmljb2RlX0pvaW5gIG9yCisgIDpjOmZ1bmM6YFB5VW5pY29kZV9Gcm9tRm9ybWF0KClgLCB5b3VyIGNvZGUgd2lsbCBhdXRvbWF0aWNhbGx5IHRha2UKKyAgYWR2YW50YWdlIG9mIHRoZSBuZXcgdW5pY29kZSByZXByZXNlbnRhdGlvbnMuCisKK090aGVyIGlzc3VlcworLS0tLS0tLS0tLS0tCisKKy4uIElzc3VlICMxMTU5MTogV2hlbiA6cHJvZ3JhbTpgcHl0aG9uYCB3YXMgc3RhcnRlZCB3aXRoIDpvcHRpb246YC1TYCwKKyAgIGBgaW1wb3J0IHNpdGVgYCB3aWxsIG5vdCBhZGQgc2l0ZS1zcGVjaWZpYyBwYXRocyB0byB0aGUgbW9kdWxlIHNlYXJjaAorICAgcGF0aHMuICBJbiBwcmV2aW91cyB2ZXJzaW9ucywgaXQgZGlkLiAgU2VlIGNoYW5nZXNldCBmb3IgZG9jIGNoYW5nZXMgaW4KKyAgIHZhcmlvdXMgZmlsZXMuICBDb250cmlidXRlZCBieSBDYXJsIE1leWVyIHdpdGggZWRpdGlvbnMgYnkgw4lyaWMgQXJhdWpvLgorCisuLiBJc3N1ZSAjMTA5OTg6IHRoZSAtUSBjb21tYW5kLWxpbmUgZmxhZyBhbmQgcmVsYXRlZCBhcnRpZmFjdHMgaGF2ZSBiZWVuCisgICByZW1vdmVkLiAgQ29kZSBjaGVja2luZyBzeXMuZmxhZ3MuZGl2aXNpb25fd2FybmluZyB3aWxsIG5lZWQgdXBkYXRpbmcuCisgICBDb250cmlidXRlZCBieSDDiXJpYyBBcmF1am8uCmRpZmYgLS1naXQgYS9Eb2Mvd2hhdHNuZXcvaW5kZXgucnN0IGIvRG9jL3doYXRzbmV3L2luZGV4LnJzdAppbmRleCA4MjIwYmQyLi5jNjA4MThhIDEwMDY0NAotLS0gYS9Eb2Mvd2hhdHNuZXcvaW5kZXgucnN0CisrKyBiL0RvYy93aGF0c25ldy9pbmRleC5yc3QKQEAgLTExLDYgKzExLDcgQEAKIC4uIHRvY3RyZWU6OgogICAgOm1heGRlcHRoOiAyCiAKKyAgIDMuMy5yc3QKICAgIDMuMi5yc3QKICAgIDMuMS5yc3QKICAgIDMuMC5yc3QKZGlmZiAtLWdpdCBhL0dyYW1tYXIvR3JhbW1hciBiL0dyYW1tYXIvR3JhbW1hcgppbmRleCBjZWE2OGRlLi5kN2FhZmZkIDEwMDY0NAotLS0gYS9HcmFtbWFyL0dyYW1tYXIKKysrIGIvR3JhbW1hci9HcmFtbWFyCkBAIC0xMyw3ICsxMyw3IEBACiAjIFN0YXJ0IHN5bWJvbHMgZm9yIHRoZSBncmFtbWFyOgogIyAgICAgICBzaW5nbGVfaW5wdXQgaXMgYSBzaW5nbGUgaW50ZXJhY3RpdmUgc3RhdGVtZW50OwogIyAgICAgICBmaWxlX2lucHV0IGlzIGEgbW9kdWxlIG9yIHNlcXVlbmNlIG9mIGNvbW1hbmRzIHJlYWQgZnJvbSBhbiBpbnB1dCBmaWxlOwotIyAgICAgICBldmFsX2lucHV0IGlzIHRoZSBpbnB1dCBmb3IgdGhlIGV2YWwoKSBhbmQgaW5wdXQoKSBmdW5jdGlvbnMuCisjICAgICAgIGV2YWxfaW5wdXQgaXMgdGhlIGlucHV0IGZvciB0aGUgZXZhbCgpIGZ1bmN0aW9ucy4KICMgTkI6IGNvbXBvdW5kX3N0bXQgaW4gc2luZ2xlX2lucHV0IGlzIGZvbGxvd2VkIGJ5IGV4dHJhIE5FV0xJTkUhCiBzaW5nbGVfaW5wdXQ6IE5FV0xJTkUgfCBzaW1wbGVfc3RtdCB8IGNvbXBvdW5kX3N0bXQgTkVXTElORQogZmlsZV9pbnB1dDogKE5FV0xJTkUgfCBzdG10KSogRU5ETUFSS0VSCkBAIC0xMjksNCArMTI5LDUgQEAKICMgbm90IHVzZWQgaW4gZ3JhbW1hciwgYnV0IG1heSBhcHBlYXIgaW4gIm5vZGUiIHBhc3NlZCBmcm9tIFBhcnNlciB0byBDb21waWxlcgogZW5jb2RpbmdfZGVjbDogTkFNRQogCi15aWVsZF9leHByOiAneWllbGQnIFt0ZXN0bGlzdF0KK3lpZWxkX2V4cHI6ICd5aWVsZCcgW3lpZWxkX2FyZ10KK3lpZWxkX2FyZzogJ2Zyb20nIHRlc3QgfCB0ZXN0bGlzdApkaWZmIC0tZ2l0IGEvSW5jbHVkZS9QeXRob24tYXN0LmggYi9JbmNsdWRlL1B5dGhvbi1hc3QuaAppbmRleCAwYWQ3ODhiLi43YWQ2Y2IzIDEwMDY0NAotLS0gYS9JbmNsdWRlL1B5dGhvbi1hc3QuaAorKysgYi9JbmNsdWRlL1B5dGhvbi1hc3QuaApAQCAtMzYsNiArMzYsOCBAQAogCiB0eXBlZGVmIHN0cnVjdCBfYWxpYXMgKmFsaWFzX3R5OwogCit0eXBlZGVmIHN0cnVjdCBfd2l0aGl0ZW0gKndpdGhpdGVtX3R5OworCiAKIGVudW0gX21vZF9raW5kIHtNb2R1bGVfa2luZD0xLCBJbnRlcmFjdGl2ZV9raW5kPTIsIEV4cHJlc3Npb25fa2luZD0zLAogICAgICAgICAgICAgICAgICBTdWl0ZV9raW5kPTR9OwpAQCAtNjQsMTAgKzY2LDkgQEAKIGVudW0gX3N0bXRfa2luZCB7RnVuY3Rpb25EZWZfa2luZD0xLCBDbGFzc0RlZl9raW5kPTIsIFJldHVybl9raW5kPTMsCiAgICAgICAgICAgICAgICAgICBEZWxldGVfa2luZD00LCBBc3NpZ25fa2luZD01LCBBdWdBc3NpZ25fa2luZD02LCBGb3Jfa2luZD03LAogICAgICAgICAgICAgICAgICAgV2hpbGVfa2luZD04LCBJZl9raW5kPTksIFdpdGhfa2luZD0xMCwgUmFpc2Vfa2luZD0xMSwKLSAgICAgICAgICAgICAgICAgIFRyeUV4Y2VwdF9raW5kPTEyLCBUcnlGaW5hbGx5X2tpbmQ9MTMsIEFzc2VydF9raW5kPTE0LAotICAgICAgICAgICAgICAgICAgSW1wb3J0X2tpbmQ9MTUsIEltcG9ydEZyb21fa2luZD0xNiwgR2xvYmFsX2tpbmQ9MTcsCi0gICAgICAgICAgICAgICAgICBOb25sb2NhbF9raW5kPTE4LCBFeHByX2tpbmQ9MTksIFBhc3Nfa2luZD0yMCwgQnJlYWtfa2luZD0yMSwKLSAgICAgICAgICAgICAgICAgIENvbnRpbnVlX2tpbmQ9MjJ9OworICAgICAgICAgICAgICAgICAgVHJ5X2tpbmQ9MTIsIEFzc2VydF9raW5kPTEzLCBJbXBvcnRfa2luZD0xNCwKKyAgICAgICAgICAgICAgICAgIEltcG9ydEZyb21fa2luZD0xNSwgR2xvYmFsX2tpbmQ9MTYsIE5vbmxvY2FsX2tpbmQ9MTcsCisgICAgICAgICAgICAgICAgICBFeHByX2tpbmQ9MTgsIFBhc3Nfa2luZD0xOSwgQnJlYWtfa2luZD0yMCwgQ29udGludWVfa2luZD0yMX07CiBzdHJ1Y3QgX3N0bXQgewogICAgICAgICBlbnVtIF9zdG10X2tpbmQga2luZDsKICAgICAgICAgdW5pb24gewpAQCAtMTI4LDggKzEyOSw3IEBACiAgICAgICAgICAgICAgICAgfSBJZjsKICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICBzdHJ1Y3QgewotICAgICAgICAgICAgICAgICAgICAgICAgZXhwcl90eSBjb250ZXh0X2V4cHI7Ci0gICAgICAgICAgICAgICAgICAgICAgICBleHByX3R5IG9wdGlvbmFsX3ZhcnM7CisgICAgICAgICAgICAgICAgICAgICAgICBhc2RsX3NlcSAqaXRlbXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBhc2RsX3NlcSAqYm9keTsKICAgICAgICAgICAgICAgICB9IFdpdGg7CiAgICAgICAgICAgICAgICAgCkBAIC0xNDIsMTIgKzE0Miw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBhc2RsX3NlcSAqYm9keTsKICAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxICpoYW5kbGVyczsKICAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxICpvcmVsc2U7Ci0gICAgICAgICAgICAgICAgfSBUcnlFeGNlcHQ7Ci0gICAgICAgICAgICAgICAgCi0gICAgICAgICAgICAgICAgc3RydWN0IHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxICpib2R5OwogICAgICAgICAgICAgICAgICAgICAgICAgYXNkbF9zZXEgKmZpbmFsYm9keTsKLSAgICAgICAgICAgICAgICB9IFRyeUZpbmFsbHk7CisgICAgICAgICAgICAgICAgfSBUcnk7CiAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgc3RydWN0IHsKICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJfdHkgdGVzdDsKQEAgLTE4NCwxMCArMTgwLDEwIEBACiBlbnVtIF9leHByX2tpbmQge0Jvb2xPcF9raW5kPTEsIEJpbk9wX2tpbmQ9MiwgVW5hcnlPcF9raW5kPTMsIExhbWJkYV9raW5kPTQsCiAgICAgICAgICAgICAgICAgICBJZkV4cF9raW5kPTUsIERpY3Rfa2luZD02LCBTZXRfa2luZD03LCBMaXN0Q29tcF9raW5kPTgsCiAgICAgICAgICAgICAgICAgICBTZXRDb21wX2tpbmQ9OSwgRGljdENvbXBfa2luZD0xMCwgR2VuZXJhdG9yRXhwX2tpbmQ9MTEsCi0gICAgICAgICAgICAgICAgICBZaWVsZF9raW5kPTEyLCBDb21wYXJlX2tpbmQ9MTMsIENhbGxfa2luZD0xNCwgTnVtX2tpbmQ9MTUsCi0gICAgICAgICAgICAgICAgICBTdHJfa2luZD0xNiwgQnl0ZXNfa2luZD0xNywgRWxsaXBzaXNfa2luZD0xOCwKLSAgICAgICAgICAgICAgICAgIEF0dHJpYnV0ZV9raW5kPTE5LCBTdWJzY3JpcHRfa2luZD0yMCwgU3RhcnJlZF9raW5kPTIxLAotICAgICAgICAgICAgICAgICAgTmFtZV9raW5kPTIyLCBMaXN0X2tpbmQ9MjMsIFR1cGxlX2tpbmQ9MjR9OworICAgICAgICAgICAgICAgICAgWWllbGRfa2luZD0xMiwgWWllbGRGcm9tX2tpbmQ9MTMsIENvbXBhcmVfa2luZD0xNCwKKyAgICAgICAgICAgICAgICAgIENhbGxfa2luZD0xNSwgTnVtX2tpbmQ9MTYsIFN0cl9raW5kPTE3LCBCeXRlc19raW5kPTE4LAorICAgICAgICAgICAgICAgICAgRWxsaXBzaXNfa2luZD0xOSwgQXR0cmlidXRlX2tpbmQ9MjAsIFN1YnNjcmlwdF9raW5kPTIxLAorICAgICAgICAgICAgICAgICAgU3RhcnJlZF9raW5kPTIyLCBOYW1lX2tpbmQ9MjMsIExpc3Rfa2luZD0yNCwgVHVwbGVfa2luZD0yNX07CiBzdHJ1Y3QgX2V4cHIgewogICAgICAgICBlbnVtIF9leHByX2tpbmQga2luZDsKICAgICAgICAgdW5pb24gewpAQCAtMjUzLDYgKzI0OSwxMCBAQAogICAgICAgICAgICAgICAgIH0gWWllbGQ7CiAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgc3RydWN0IHsKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJfdHkgdmFsdWU7CisgICAgICAgICAgICAgICAgfSBZaWVsZEZyb207CisgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgc3RydWN0IHsKICAgICAgICAgICAgICAgICAgICAgICAgIGV4cHJfdHkgbGVmdDsKICAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfaW50X3NlcSAqb3BzOwogICAgICAgICAgICAgICAgICAgICAgICAgYXNkbF9zZXEgKmNvbXBhcmF0b3JzOwpAQCAtMjc1LDcgKzI3NSw3IEBACiAgICAgICAgICAgICAgICAgfSBTdHI7CiAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgc3RydWN0IHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZyBzOworICAgICAgICAgICAgICAgICAgICAgICAgYnl0ZXMgczsKICAgICAgICAgICAgICAgICB9IEJ5dGVzOwogICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgIHN0cnVjdCB7CkBAIC0zODMsNiArMzgzLDExIEBACiAgICAgICAgIGlkZW50aWZpZXIgYXNuYW1lOwogfTsKIAorc3RydWN0IF93aXRoaXRlbSB7CisgICAgICAgIGV4cHJfdHkgY29udGV4dF9leHByOworICAgICAgICBleHByX3R5IG9wdGlvbmFsX3ZhcnM7Cit9OworCiAKICNkZWZpbmUgTW9kdWxlKGEwLCBhMSkgX1B5X01vZHVsZShhMCwgYTEpCiBtb2RfdHkgX1B5X01vZHVsZShhc2RsX3NlcSAqIGJvZHksIFB5QXJlbmEgKmFyZW5hKTsKQEAgLTQyMSwxOCArNDI2LDE2IEBACiAjZGVmaW5lIElmKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUpIF9QeV9JZihhMCwgYTEsIGEyLCBhMywgYTQsIGE1KQogc3RtdF90eSBfUHlfSWYoZXhwcl90eSB0ZXN0LCBhc2RsX3NlcSAqIGJvZHksIGFzZGxfc2VxICogb3JlbHNlLCBpbnQgbGluZW5vLAogICAgICAgICAgICAgICAgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKLSNkZWZpbmUgV2l0aChhMCwgYTEsIGEyLCBhMywgYTQsIGE1KSBfUHlfV2l0aChhMCwgYTEsIGEyLCBhMywgYTQsIGE1KQotc3RtdF90eSBfUHlfV2l0aChleHByX3R5IGNvbnRleHRfZXhwciwgZXhwcl90eSBvcHRpb25hbF92YXJzLCBhc2RsX3NlcSAqIGJvZHksCi0gICAgICAgICAgICAgICAgIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hICphcmVuYSk7CisjZGVmaW5lIFdpdGgoYTAsIGExLCBhMiwgYTMsIGE0KSBfUHlfV2l0aChhMCwgYTEsIGEyLCBhMywgYTQpCitzdG10X3R5IF9QeV9XaXRoKGFzZGxfc2VxICogaXRlbXMsIGFzZGxfc2VxICogYm9keSwgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsCisgICAgICAgICAgICAgICAgIFB5QXJlbmEgKmFyZW5hKTsKICNkZWZpbmUgUmFpc2UoYTAsIGExLCBhMiwgYTMsIGE0KSBfUHlfUmFpc2UoYTAsIGExLCBhMiwgYTMsIGE0KQogc3RtdF90eSBfUHlfUmFpc2UoZXhwcl90eSBleGMsIGV4cHJfdHkgY2F1c2UsIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LAogICAgICAgICAgICAgICAgICAgUHlBcmVuYSAqYXJlbmEpOwotI2RlZmluZSBUcnlFeGNlcHQoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSkgX1B5X1RyeUV4Y2VwdChhMCwgYTEsIGEyLCBhMywgYTQsIGE1KQotc3RtdF90eSBfUHlfVHJ5RXhjZXB0KGFzZGxfc2VxICogYm9keSwgYXNkbF9zZXEgKiBoYW5kbGVycywgYXNkbF9zZXEgKiBvcmVsc2UsCi0gICAgICAgICAgICAgICAgICAgICAgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKLSNkZWZpbmUgVHJ5RmluYWxseShhMCwgYTEsIGEyLCBhMywgYTQpIF9QeV9UcnlGaW5hbGx5KGEwLCBhMSwgYTIsIGEzLCBhNCkKLXN0bXRfdHkgX1B5X1RyeUZpbmFsbHkoYXNkbF9zZXEgKiBib2R5LCBhc2RsX3NlcSAqIGZpbmFsYm9keSwgaW50IGxpbmVubywgaW50Ci0gICAgICAgICAgICAgICAgICAgICAgIGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKKyNkZWZpbmUgVHJ5KGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2KSBfUHlfVHJ5KGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUsIGE2KQorc3RtdF90eSBfUHlfVHJ5KGFzZGxfc2VxICogYm9keSwgYXNkbF9zZXEgKiBoYW5kbGVycywgYXNkbF9zZXEgKiBvcmVsc2UsCisgICAgICAgICAgICAgICAgYXNkbF9zZXEgKiBmaW5hbGJvZHksIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hCisgICAgICAgICAgICAgICAgKmFyZW5hKTsKICNkZWZpbmUgQXNzZXJ0KGEwLCBhMSwgYTIsIGEzLCBhNCkgX1B5X0Fzc2VydChhMCwgYTEsIGEyLCBhMywgYTQpCiBzdG10X3R5IF9QeV9Bc3NlcnQoZXhwcl90eSB0ZXN0LCBleHByX3R5IG1zZywgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsCiAgICAgICAgICAgICAgICAgICAgUHlBcmVuYSAqYXJlbmEpOwpAQCAtNDkwLDYgKzQ5Myw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgY29sX29mZnNldCwgUHlBcmVuYSAqYXJlbmEpOwogI2RlZmluZSBZaWVsZChhMCwgYTEsIGEyLCBhMykgX1B5X1lpZWxkKGEwLCBhMSwgYTIsIGEzKQogZXhwcl90eSBfUHlfWWllbGQoZXhwcl90eSB2YWx1ZSwgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKKyNkZWZpbmUgWWllbGRGcm9tKGEwLCBhMSwgYTIsIGEzKSBfUHlfWWllbGRGcm9tKGEwLCBhMSwgYTIsIGEzKQorZXhwcl90eSBfUHlfWWllbGRGcm9tKGV4cHJfdHkgdmFsdWUsIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hCisgICAgICAgICAgICAgICAgICAgICAgKmFyZW5hKTsKICNkZWZpbmUgQ29tcGFyZShhMCwgYTEsIGEyLCBhMywgYTQsIGE1KSBfUHlfQ29tcGFyZShhMCwgYTEsIGEyLCBhMywgYTQsIGE1KQogZXhwcl90eSBfUHlfQ29tcGFyZShleHByX3R5IGxlZnQsIGFzZGxfaW50X3NlcSAqIG9wcywgYXNkbF9zZXEgKiBjb21wYXJhdG9ycywKICAgICAgICAgICAgICAgICAgICAgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKQEAgLTUwMiw3ICs1MDgsNyBAQAogI2RlZmluZSBTdHIoYTAsIGExLCBhMiwgYTMpIF9QeV9TdHIoYTAsIGExLCBhMiwgYTMpCiBleHByX3R5IF9QeV9TdHIoc3RyaW5nIHMsIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hICphcmVuYSk7CiAjZGVmaW5lIEJ5dGVzKGEwLCBhMSwgYTIsIGEzKSBfUHlfQnl0ZXMoYTAsIGExLCBhMiwgYTMpCi1leHByX3R5IF9QeV9CeXRlcyhzdHJpbmcgcywgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKK2V4cHJfdHkgX1B5X0J5dGVzKGJ5dGVzIHMsIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hICphcmVuYSk7CiAjZGVmaW5lIEVsbGlwc2lzKGEwLCBhMSwgYTIpIF9QeV9FbGxpcHNpcyhhMCwgYTEsIGEyKQogZXhwcl90eSBfUHlfRWxsaXBzaXMoaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKTsKICNkZWZpbmUgQXR0cmlidXRlKGEwLCBhMSwgYTIsIGEzLCBhNCwgYTUpIF9QeV9BdHRyaWJ1dGUoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSkKQEAgLTU0Nyw2ICs1NTMsOSBAQAoga2V5d29yZF90eSBfUHlfa2V5d29yZChpZGVudGlmaWVyIGFyZywgZXhwcl90eSB2YWx1ZSwgUHlBcmVuYSAqYXJlbmEpOwogI2RlZmluZSBhbGlhcyhhMCwgYTEsIGEyKSBfUHlfYWxpYXMoYTAsIGExLCBhMikKIGFsaWFzX3R5IF9QeV9hbGlhcyhpZGVudGlmaWVyIG5hbWUsIGlkZW50aWZpZXIgYXNuYW1lLCBQeUFyZW5hICphcmVuYSk7CisjZGVmaW5lIHdpdGhpdGVtKGEwLCBhMSwgYTIpIF9QeV93aXRoaXRlbShhMCwgYTEsIGEyKQord2l0aGl0ZW1fdHkgX1B5X3dpdGhpdGVtKGV4cHJfdHkgY29udGV4dF9leHByLCBleHByX3R5IG9wdGlvbmFsX3ZhcnMsIFB5QXJlbmEKKyAgICAgICAgICAgICAgICAgICAgICAgICAqYXJlbmEpOwogCiBQeU9iamVjdCogUHlBU1RfbW9kMm9iaihtb2RfdHkgdCk7CiBtb2RfdHkgUHlBU1Rfb2JqMm1vZChQeU9iamVjdCogYXN0LCBQeUFyZW5hKiBhcmVuYSwgaW50IG1vZGUpOwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9QeXRob24uaCBiL0luY2x1ZGUvUHl0aG9uLmgKaW5kZXggNTk3MmZmYS4uMDFiOThmOSAxMDA2NDQKLS0tIGEvSW5jbHVkZS9QeXRob24uaAorKysgYi9JbmNsdWRlL1B5dGhvbi5oCkBAIC00OCw2ICs0OCw3IEBACiAjaW5jbHVkZSA8YXNzZXJ0Lmg+CiAKICNpbmNsdWRlICJweXBvcnQuaCIKKyNpbmNsdWRlICJweW1hY3JvLmgiCiAKICNpbmNsdWRlICJweWF0b21pYy5oIgogCkBAIC0xMjYsNDMgKzEyNyw2IEBACiAjaW5jbHVkZSAicHlzdHJjbXAuaCIKICNpbmNsdWRlICJkdG9hLmgiCiAjaW5jbHVkZSAiZmlsZXV0aWxzLmgiCi0KLSNpZmRlZiBfX2NwbHVzcGx1cwotZXh0ZXJuICJDIiB7Ci0jZW5kaWYKLQotLyogX1B5X01hbmdsZSBpcyBkZWZpbmVkIGluIGNvbXBpbGUuYyAqLwotI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQotUHlBUElfRlVOQyhQeU9iamVjdCopIF9QeV9NYW5nbGUoUHlPYmplY3QgKnAsIFB5T2JqZWN0ICpuYW1lKTsKLSNlbmRpZgotCi0jaWZkZWYgX19jcGx1c3BsdXMKLX0KLSNlbmRpZgotCi0vKiBBcmd1bWVudCBtdXN0IGJlIGEgY2hhciBvciBhbiBpbnQgaW4gWy0xMjgsIDEyN10gb3IgWzAsIDI1NV0uICovCi0jZGVmaW5lIFB5X0NIQVJNQVNLKGMpICAgICAgICAgICgodW5zaWduZWQgY2hhcikoKGMpICYgMHhmZikpCi0KICNpbmNsdWRlICJweWZwZS5oIgogCi0vKiBUaGVzZSBkZWZpbml0aW9ucyBtdXN0IG1hdGNoIGNvcnJlc3BvbmRpbmcgZGVmaW5pdGlvbnMgaW4gZ3JhbWluaXQuaC4KLSAgIFRoZXJlJ3MgY29kZSBpbiBjb21waWxlLmMgdGhhdCBjaGVja3MgdGhhdCB0aGV5IGFyZSB0aGUgc2FtZS4gKi8KLSNkZWZpbmUgUHlfc2luZ2xlX2lucHV0IDI1NgotI2RlZmluZSBQeV9maWxlX2lucHV0IDI1NwotI2RlZmluZSBQeV9ldmFsX2lucHV0IDI1OAotCi0jaWZkZWYgSEFWRV9QVEgKLS8qIEdOVSBwdGggdXNlci1zcGFjZSB0aHJlYWQgc3VwcG9ydCAqLwotI2luY2x1ZGUgPHB0aC5oPgotI2VuZGlmCi0KLS8qIERlZmluZSBtYWNyb3MgZm9yIGlubGluZSBkb2N1bWVudGF0aW9uLiAqLwotI2RlZmluZSBQeURvY19WQVIobmFtZSkgc3RhdGljIGNoYXIgbmFtZVtdCi0jZGVmaW5lIFB5RG9jX1NUUlZBUihuYW1lLHN0cikgUHlEb2NfVkFSKG5hbWUpID0gUHlEb2NfU1RSKHN0cikKLSNpZmRlZiBXSVRIX0RPQ19TVFJJTkdTCi0jZGVmaW5lIFB5RG9jX1NUUihzdHIpIHN0cgotI2Vsc2UKLSNkZWZpbmUgUHlEb2NfU1RSKHN0cikgIiIKLSNlbmRpZgotCiAjZW5kaWYgLyogIVB5X1BZVEhPTl9IICovCmRpZmYgLS1naXQgYS9JbmNsdWRlL2Fic3RyYWN0LmggYi9JbmNsdWRlL2Fic3RyYWN0LmgKaW5kZXggMGZlMDk1Ni4uMzk0NmVjNSAxMDA2NDQKLS0tIGEvSW5jbHVkZS9hYnN0cmFjdC5oCisrKyBiL0luY2x1ZGUvYWJzdHJhY3QuaApAQCAtNyw2ICs3LDcgQEAKICNpZmRlZiBQWV9TU0laRV9UX0NMRUFOCiAjZGVmaW5lIFB5T2JqZWN0X0NhbGxGdW5jdGlvbiBfUHlPYmplY3RfQ2FsbEZ1bmN0aW9uX1NpemVUCiAjZGVmaW5lIFB5T2JqZWN0X0NhbGxNZXRob2QgX1B5T2JqZWN0X0NhbGxNZXRob2RfU2l6ZVQKKyNkZWZpbmUgX1B5T2JqZWN0X0NhbGxNZXRob2RJZCBfUHlPYmplY3RfQ2FsbE1ldGhvZElkX1NpemVUCiAjZW5kaWYKIAogLyogQWJzdHJhY3QgT2JqZWN0IEludGVyZmFjZSAobWFueSB0aGFua3MgdG8gSmltIEZ1bHRvbikgKi8KQEAgLTMwNywxMSArMzA4LDIyIEBACiAgICAgIFB5dGhvbiBleHByZXNzaW9uOiBvLm1ldGhvZChhcmdzKS4KICAgICAgICAqLwogCisgICAgIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5T2JqZWN0X0NhbGxNZXRob2RJZChQeU9iamVjdCAqbywgX1B5X0lkZW50aWZpZXIgKm1ldGhvZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqZm9ybWF0LCAuLi4pOworCisgICAgICAgLyoKKyAgICAgICAgIExpa2UgUHlPYmplY3RfQ2FsbE1ldGhvZCwgYnV0IGV4cGVjdCBhIF9QeV9JZGVudGlmaWVyKiBhcyB0aGUKKyAgICAgICAgIG1ldGhvZCBuYW1lLgorICAgICAgICovCisKICAgICAgUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlPYmplY3RfQ2FsbEZ1bmN0aW9uX1NpemVUKFB5T2JqZWN0ICpjYWxsYWJsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmZvcm1hdCwgLi4uKTsKICAgICAgUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlPYmplY3RfQ2FsbE1ldGhvZF9TaXplVChQeU9iamVjdCAqbywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyICpuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmZvcm1hdCwgLi4uKTsKKyAgICAgUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkX1NpemVUKFB5T2JqZWN0ICpvLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9QeV9JZGVudGlmaWVyICpuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmZvcm1hdCwgLi4uKTsKIAogICAgICBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MoUHlPYmplY3QgKmNhbGxhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uKTsKZGlmZiAtLWdpdCBhL0luY2x1ZGUvYXNkbC5oIGIvSW5jbHVkZS9hc2RsLmgKaW5kZXggOWJiMDY5Ny4uNDJiYmJmOCAxMDA2NDQKLS0tIGEvSW5jbHVkZS9hc2RsLmgKKysrIGIvSW5jbHVkZS9hc2RsLmgKQEAgLTMsNiArMyw3IEBACiAKIHR5cGVkZWYgUHlPYmplY3QgKiBpZGVudGlmaWVyOwogdHlwZWRlZiBQeU9iamVjdCAqIHN0cmluZzsKK3R5cGVkZWYgUHlPYmplY3QgKiBieXRlczsKIHR5cGVkZWYgUHlPYmplY3QgKiBvYmplY3Q7CiAKIC8qIEl0IHdvdWxkIGJlIG5pY2UgaWYgdGhlIGNvZGUgZ2VuZXJhdGVkIGJ5IGFzZGxfYy5weSB3YXMgY29tcGxldGVseQpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9hc3QuaCBiL0luY2x1ZGUvYXN0LmgKaW5kZXggYTAxNTMzNi4uMDU1ZThkYyAxMDA2NDQKLS0tIGEvSW5jbHVkZS9hc3QuaAorKysgYi9JbmNsdWRlL2FzdC5oCkBAIC00LDYgKzQsNyBAQAogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAorUHlBUElfRlVOQyhpbnQpIFB5QVNUX1ZhbGlkYXRlKG1vZF90eSk7CiBQeUFQSV9GVU5DKG1vZF90eSkgUHlBU1RfRnJvbU5vZGUoCiAgICAgY29uc3Qgbm9kZSAqbiwKICAgICBQeUNvbXBpbGVyRmxhZ3MgKmZsYWdzLApkaWZmIC0tZ2l0IGEvSW5jbHVkZS9jb2RlLmggYi9JbmNsdWRlL2NvZGUuaAppbmRleCBlNzczYjZhLi43YzdlNWJmIDEwMDY0NAotLS0gYS9JbmNsdWRlL2NvZGUuaAorKysgYi9JbmNsdWRlL2NvZGUuaApAQCAtMjIsNiArMjIsNyBAQAogICAgIFB5T2JqZWN0ICpjb19mcmVldmFyczsJLyogdHVwbGUgb2Ygc3RyaW5ncyAoZnJlZSB2YXJpYWJsZSBuYW1lcykgKi8KICAgICBQeU9iamVjdCAqY29fY2VsbHZhcnM7ICAgICAgLyogdHVwbGUgb2Ygc3RyaW5ncyAoY2VsbCB2YXJpYWJsZSBuYW1lcykgKi8KICAgICAvKiBUaGUgcmVzdCBkb2Vzbid0IGNvdW50IGZvciBoYXNoIG9yIGNvbXBhcmlzb25zICovCisgICAgdW5zaWduZWQgY2hhciAqY29fY2VsbDJhcmc7IC8qIE1hcHMgY2VsbCB2YXJzIHdoaWNoIGFyZSBhcmd1bWVudHMuICovCiAgICAgUHlPYmplY3QgKmNvX2ZpbGVuYW1lOwkvKiB1bmljb2RlICh3aGVyZSBpdCB3YXMgbG9hZGVkIGZyb20pICovCiAgICAgUHlPYmplY3QgKmNvX25hbWU7CQkvKiB1bmljb2RlIChuYW1lLCBmb3IgcmVmZXJlbmNlKSAqLwogICAgIGludCBjb19maXJzdGxpbmVubzsJCS8qIGZpcnN0IHNvdXJjZSBsaW5lIG51bWJlciAqLwpAQCAtNTcsNiArNTgsMTEgQEAKIAogI2RlZmluZSBDT19GVVRVUkVfQkFSUllfQVNfQkRGTCAgMHg0MDAwMAogCisvKiBUaGlzIHZhbHVlIGlzIGZvdW5kIGluIHRoZSBjb19jZWxsMmFyZyBhcnJheSB3aGVuIHRoZSBhc3NvY2lhdGVkIGNlbGwKKyAgIHZhcmlhYmxlIGRvZXMgbm90IGNvcnJlc3BvbmQgdG8gYW4gYXJndW1lbnQuIFRoZSBtYXhpbXVtIG51bWJlciBvZgorICAgYXJndW1lbnRzIGlzIDI1NSAoaW5kZXhlZCB1cCB0byAyNTQpLCBzbyAyNTUgd29yayBhcyBhIHNwZWNpYWwgZmxhZy4qLworI2RlZmluZSBDT19DRUxMX05PVF9BTl9BUkcgMjU1CisKIC8qIFRoaXMgc2hvdWxkIGJlIGRlZmluZWQgaWYgYSBmdXR1cmUgc3RhdGVtZW50IG1vZGlmaWVzIHRoZSBzeW50YXguCiAgICBGb3IgZXhhbXBsZSwgd2hlbiBhIGtleXdvcmQgaXMgYWRkZWQuCiAqLwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9jb2RlY3MuaCBiL0luY2x1ZGUvY29kZWNzLmgKaW5kZXggZGZmMDllNy4uMGQ5ZTliNCAxMDA2NDQKLS0tIGEvSW5jbHVkZS9jb2RlY3MuaAorKysgYi9JbmNsdWRlL2NvZGVjcy5oCkBAIC0xNzQsNiArMTc0LDggQEAKIC8qIHJlcGxhY2UgdGhlIHVuaWNvZGUgZW5jb2RlIGVycm9yIHdpdGggYmFja3NsYXNoIGVzY2FwZXMgKFx4LCBcdSBhbmQgXFUpICovCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5Q29kZWNfQmFja3NsYXNoUmVwbGFjZUVycm9ycyhQeU9iamVjdCAqZXhjKTsKIAorUHlBUElfREFUQShjb25zdCBjaGFyICopIFB5X2hleGRpZ2l0czsKKwogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL0luY2x1ZGUvY29tcGlsZS5oIGIvSW5jbHVkZS9jb21waWxlLmgKaW5kZXggYmM1M2IzOS4uYWMyNjM2ZCAxMDA2NDQKLS0tIGEvSW5jbHVkZS9jb21waWxlLmgKKysrIGIvSW5jbHVkZS9jb21waWxlLmgKQEAgLTEsNyArMSw3IEBACi0jaWZuZGVmIFB5X0xJTUlURURfQVBJCiAjaWZuZGVmIFB5X0NPTVBJTEVfSAogI2RlZmluZSBQeV9DT01QSUxFX0gKIAorI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQogI2luY2x1ZGUgImNvZGUuaCIKIAogI2lmZGVmIF9fY3BsdXNwbHVzCkBAIC0zOCw5ICszOCwxOSBAQAogICAgIFB5QXJlbmEgKmFyZW5hKTsKIFB5QVBJX0ZVTkMoUHlGdXR1cmVGZWF0dXJlcyAqKSBQeUZ1dHVyZV9Gcm9tQVNUKHN0cnVjdCBfbW9kICosIGNvbnN0IGNoYXIgKik7CiAKKy8qIF9QeV9NYW5nbGUgaXMgZGVmaW5lZCBpbiBjb21waWxlLmMgKi8KK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBfUHlfTWFuZ2xlKFB5T2JqZWN0ICpwLCBQeU9iamVjdCAqbmFtZSk7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCi0jZW5kaWYgLyogIVB5X0NPTVBJTEVfSCAqLworCiAjZW5kaWYgLyogIVB5X0xJTUlURURfQVBJICovCisKKy8qIFRoZXNlIGRlZmluaXRpb25zIG11c3QgbWF0Y2ggY29ycmVzcG9uZGluZyBkZWZpbml0aW9ucyBpbiBncmFtaW5pdC5oLgorICAgVGhlcmUncyBjb2RlIGluIGNvbXBpbGUuYyB0aGF0IGNoZWNrcyB0aGF0IHRoZXkgYXJlIHRoZSBzYW1lLiAqLworI2RlZmluZSBQeV9zaW5nbGVfaW5wdXQgMjU2CisjZGVmaW5lIFB5X2ZpbGVfaW5wdXQgMjU3CisjZGVmaW5lIFB5X2V2YWxfaW5wdXQgMjU4CisKKyNlbmRpZiAvKiAhUHlfQ09NUElMRV9IICovCmRpZmYgLS1naXQgYS9JbmNsdWRlL2NvbXBsZXhvYmplY3QuaCBiL0luY2x1ZGUvY29tcGxleG9iamVjdC5oCmluZGV4IGMzNzliMDguLjNlNGVjZmYgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvY29tcGxleG9iamVjdC5oCisrKyBiL0luY2x1ZGUvY29tcGxleG9iamVjdC5oCkBAIC02NCw4ICs2NCw5IEBACiAgICAoQWR2YW5jZWQgU3RyaW5nIEZvcm1hdHRpbmcpLiAqLwogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlDb21wbGV4X0Zvcm1hdEFkdmFuY2VkKFB5T2JqZWN0ICpvYmosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfVU5JQ09ERSAqZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBmb3JtYXRfc3BlY19sZW4pOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kKTsKICNlbmRpZgogCiAjaWZkZWYgX19jcGx1c3BsdXMKZGlmZiAtLWdpdCBhL0luY2x1ZGUvZGF0ZXRpbWUuaCBiL0luY2x1ZGUvZGF0ZXRpbWUuaAppbmRleCBkYjU3YTE4Li40MWUzYmNmIDEwMDY0NAotLS0gYS9JbmNsdWRlL2RhdGV0aW1lLmgKKysrIGIvSW5jbHVkZS9kYXRldGltZS5oCkBAIC0xMzUsNiArMTM1LDEyIEBACiAgICAgICgoKFB5RGF0ZVRpbWVfVGltZSopbyktPmRhdGFbNF0gPDwgOCkgIHwgICAgICAgICAgIFwKICAgICAgICgoUHlEYXRlVGltZV9UaW1lKilvKS0+ZGF0YVs1XSkKIAorLyogQXBwbHkgZm9yIHRpbWUgZGVsdGEgaW5zdGFuY2VzICovCisjZGVmaW5lIFB5RGF0ZVRpbWVfREVMVEFfR0VUX0RBWVMobykgICAgICAgICAoKChQeURhdGVUaW1lX0RlbHRhKilvKS0+ZGF5cykKKyNkZWZpbmUgUHlEYXRlVGltZV9ERUxUQV9HRVRfU0VDT05EUyhvKSAgICAgICgoKFB5RGF0ZVRpbWVfRGVsdGEqKW8pLT5zZWNvbmRzKQorI2RlZmluZSBQeURhdGVUaW1lX0RFTFRBX0dFVF9NSUNST1NFQ09ORFMobykgICAgICAgICAgICBcCisgICAgKCgoUHlEYXRlVGltZV9EZWx0YSopbyktPm1pY3Jvc2Vjb25kcykKKwogCiAvKiBEZWZpbmUgc3RydWN0dXJlIGZvciBDIEFQSS4gKi8KIHR5cGVkZWYgc3RydWN0IHsKZGlmZiAtLWdpdCBhL0luY2x1ZGUvZGVzY3JvYmplY3QuaCBiL0luY2x1ZGUvZGVzY3JvYmplY3QuaAppbmRleCA2NDZiM2NjLi5lMmJhOTdmIDEwMDY0NAotLS0gYS9JbmNsdWRlL2Rlc2Nyb2JqZWN0LmgKKysrIGIvSW5jbHVkZS9kZXNjcm9iamVjdC5oCkBAIC00Miw2ICs0Miw3IEBACiAgICAgUHlPYmplY3RfSEVBRAogICAgIFB5VHlwZU9iamVjdCAqZF90eXBlOwogICAgIFB5T2JqZWN0ICpkX25hbWU7CisgICAgUHlPYmplY3QgKmRfcXVhbG5hbWU7CiB9IFB5RGVzY3JPYmplY3Q7CiAKICNkZWZpbmUgUHlEZXNjcl9DT01NT04gUHlEZXNjck9iamVjdCBkX2NvbW1vbgpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9kaWN0b2JqZWN0LmggYi9JbmNsdWRlL2RpY3RvYmplY3QuaAppbmRleCBiMDI2Nzg1Li5lZDQ0ZTIwIDEwMDY0NAotLS0gYS9JbmNsdWRlL2RpY3RvYmplY3QuaAorKysgYi9JbmNsdWRlL2RpY3RvYmplY3QuaApAQCAtMTI5LDYgKzEyOSw4IEBACiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIF9QeURpY3RfTmV3UHJlc2l6ZWQoUHlfc3NpemVfdCBtaW51c2VkKTsKIFB5QVBJX0ZVTkModm9pZCkgX1B5RGljdF9NYXliZVVudHJhY2soUHlPYmplY3QgKm1wKTsKIFB5QVBJX0ZVTkMoaW50KSBfUHlEaWN0X0hhc09ubHlTdHJpbmdLZXlzKFB5T2JqZWN0ICptcCk7CisKK1B5QVBJX0ZVTkMoaW50KSBQeURpY3RfQ2xlYXJGcmVlTGlzdCh2b2lkKTsKICNlbmRpZgogCiAvKiBQeURpY3RfVXBkYXRlKG1wLCBvdGhlcikgaXMgZXF1aXZhbGVudCB0byBQeURpY3RfTWVyZ2UobXAsIG90aGVyLCAxKS4gKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvZXJyY29kZS5oIGIvSW5jbHVkZS9lcnJjb2RlLmgKaW5kZXggNmJiM2NjMS4uNTk0NjY4NiAxMDA2NDQKLS0tIGEvSW5jbHVkZS9lcnJjb2RlLmgKKysrIGIvSW5jbHVkZS9lcnJjb2RlLmgKQEAgLTMwLDYgKzMwLDcgQEAKICNkZWZpbmUgRV9FT0xTCQkyNAkvKiBFT0wgaW4gc2luZ2xlLXF1b3RlZCBzdHJpbmcgKi8KICNkZWZpbmUgRV9MSU5FQ09OVAkyNQkvKiBVbmV4cGVjdGVkIGNoYXJhY3RlcnMgYWZ0ZXIgYSBsaW5lIGNvbnRpbnVhdGlvbiAqLwogI2RlZmluZSBFX0lERU5USUZJRVIgICAgMjYgICAgICAvKiBJbnZhbGlkIGNoYXJhY3RlcnMgaW4gaWRlbnRpZmllciAqLworI2RlZmluZSBFX0JBRFNJTkdMRQkyNwkvKiBJbGwtZm9ybWVkIHNpbmdsZSBzdGF0ZW1lbnQgaW5wdXQgKi8KIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQgYS9JbmNsdWRlL2Zsb2F0b2JqZWN0LmggYi9JbmNsdWRlL2Zsb2F0b2JqZWN0LmgKaW5kZXggOTBmMGE0NS4uMGNhNDg4MSAxMDA2NDQKLS0tIGEvSW5jbHVkZS9mbG9hdG9iamVjdC5oCisrKyBiL0luY2x1ZGUvZmxvYXRvYmplY3QuaApAQCAtMjcsMTIgKzI3LDEyIEBACiAjZGVmaW5lIFB5X1JFVFVSTl9OQU4gcmV0dXJuIFB5RmxvYXRfRnJvbURvdWJsZShQeV9OQU4pCiAjZW5kaWYKIAotI2RlZmluZSBQeV9SRVRVUk5fSU5GKHNpZ24pIGRvCQkJCQlcCi0JaWYgKGNvcHlzaWduKDEuLCBzaWduKSA9PSAxLikgewkJCQlcCi0JCXJldHVybiBQeUZsb2F0X0Zyb21Eb3VibGUoUHlfSFVHRV9WQUwpOwlcCi0JfSBlbHNlIHsJCQkJCQlcCi0JCXJldHVybiBQeUZsb2F0X0Zyb21Eb3VibGUoLVB5X0hVR0VfVkFMKTsJXAotCX0gd2hpbGUoMCkKKyNkZWZpbmUgUHlfUkVUVVJOX0lORihzaWduKSBkbyAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBpZiAoY29weXNpZ24oMS4sIHNpZ24pID09IDEuKSB7ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgcmV0dXJuIFB5RmxvYXRfRnJvbURvdWJsZShQeV9IVUdFX1ZBTCk7ICAgIFwKKyAgICB9IGVsc2UgeyAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgcmV0dXJuIFB5RmxvYXRfRnJvbURvdWJsZSgtUHlfSFVHRV9WQUwpOyAgIFwKKyAgICB9IHdoaWxlKDApCiAKIFB5QVBJX0ZVTkMoZG91YmxlKSBQeUZsb2F0X0dldE1heCh2b2lkKTsKIFB5QVBJX0ZVTkMoZG91YmxlKSBQeUZsb2F0X0dldE1pbih2b2lkKTsKQEAgLTExMyw4ICsxMTMsOSBAQAogLyogRm9ybWF0IHRoZSBvYmplY3QgYmFzZWQgb24gdGhlIGZvcm1hdF9zcGVjLCBhcyBkZWZpbmVkIGluIFBFUCAzMTAxCiAgICAoQWR2YW5jZWQgU3RyaW5nIEZvcm1hdHRpbmcpLiAqLwogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBfUHlGbG9hdF9Gb3JtYXRBZHZhbmNlZChQeU9iamVjdCAqb2JqLAotCQkJCQkgICAgICAgUHlfVU5JQ09ERSAqZm9ybWF0X3NwZWMsCi0JCQkJCSAgICAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQpOwogI2VuZGlmIC8qIFB5X0xJTUlURURfQVBJICovCiAKICNpZmRlZiBfX2NwbHVzcGx1cwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9mcmFtZW9iamVjdC5oIGIvSW5jbHVkZS9mcmFtZW9iamVjdC5oCmluZGV4IDFmYjY0YmIuLjU1NDQ3YjcgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvZnJhbWVvYmplY3QuaAorKysgYi9JbmNsdWRlL2ZyYW1lb2JqZWN0LmgKQEAgLTksNDUgKzksNDYgQEAKICNlbmRpZgogCiB0eXBlZGVmIHN0cnVjdCB7Ci0gICAgaW50IGJfdHlwZTsJCQkvKiB3aGF0IGtpbmQgb2YgYmxvY2sgdGhpcyBpcyAqLwotICAgIGludCBiX2hhbmRsZXI7CQkvKiB3aGVyZSB0byBqdW1wIHRvIGZpbmQgaGFuZGxlciAqLwotICAgIGludCBiX2xldmVsOwkJLyogdmFsdWUgc3RhY2sgbGV2ZWwgdG8gcG9wIHRvICovCisgICAgaW50IGJfdHlwZTsgICAgICAgICAgICAgICAgIC8qIHdoYXQga2luZCBvZiBibG9jayB0aGlzIGlzICovCisgICAgaW50IGJfaGFuZGxlcjsgICAgICAgICAgICAgIC8qIHdoZXJlIHRvIGp1bXAgdG8gZmluZCBoYW5kbGVyICovCisgICAgaW50IGJfbGV2ZWw7ICAgICAgICAgICAgICAgIC8qIHZhbHVlIHN0YWNrIGxldmVsIHRvIHBvcCB0byAqLwogfSBQeVRyeUJsb2NrOwogCiB0eXBlZGVmIHN0cnVjdCBfZnJhbWUgewogICAgIFB5T2JqZWN0X1ZBUl9IRUFECi0gICAgc3RydWN0IF9mcmFtZSAqZl9iYWNrOwkvKiBwcmV2aW91cyBmcmFtZSwgb3IgTlVMTCAqLwotICAgIFB5Q29kZU9iamVjdCAqZl9jb2RlOwkvKiBjb2RlIHNlZ21lbnQgKi8KLSAgICBQeU9iamVjdCAqZl9idWlsdGluczsJLyogYnVpbHRpbiBzeW1ib2wgdGFibGUgKFB5RGljdE9iamVjdCkgKi8KLSAgICBQeU9iamVjdCAqZl9nbG9iYWxzOwkvKiBnbG9iYWwgc3ltYm9sIHRhYmxlIChQeURpY3RPYmplY3QpICovCi0gICAgUHlPYmplY3QgKmZfbG9jYWxzOwkJLyogbG9jYWwgc3ltYm9sIHRhYmxlIChhbnkgbWFwcGluZykgKi8KLSAgICBQeU9iamVjdCAqKmZfdmFsdWVzdGFjazsJLyogcG9pbnRzIGFmdGVyIHRoZSBsYXN0IGxvY2FsICovCisgICAgc3RydWN0IF9mcmFtZSAqZl9iYWNrOyAgICAgIC8qIHByZXZpb3VzIGZyYW1lLCBvciBOVUxMICovCisgICAgUHlDb2RlT2JqZWN0ICpmX2NvZGU7ICAgICAgIC8qIGNvZGUgc2VnbWVudCAqLworICAgIFB5T2JqZWN0ICpmX2J1aWx0aW5zOyAgICAgICAvKiBidWlsdGluIHN5bWJvbCB0YWJsZSAoUHlEaWN0T2JqZWN0KSAqLworICAgIFB5T2JqZWN0ICpmX2dsb2JhbHM7ICAgICAgICAvKiBnbG9iYWwgc3ltYm9sIHRhYmxlIChQeURpY3RPYmplY3QpICovCisgICAgUHlPYmplY3QgKmZfbG9jYWxzOyAgICAgICAgIC8qIGxvY2FsIHN5bWJvbCB0YWJsZSAoYW55IG1hcHBpbmcpICovCisgICAgUHlPYmplY3QgKipmX3ZhbHVlc3RhY2s7ICAgIC8qIHBvaW50cyBhZnRlciB0aGUgbGFzdCBsb2NhbCAqLwogICAgIC8qIE5leHQgZnJlZSBzbG90IGluIGZfdmFsdWVzdGFjay4gIEZyYW1lIGNyZWF0aW9uIHNldHMgdG8gZl92YWx1ZXN0YWNrLgogICAgICAgIEZyYW1lIGV2YWx1YXRpb24gdXN1YWxseSBOVUxMcyBpdCwgYnV0IGEgZnJhbWUgdGhhdCB5aWVsZHMgc2V0cyBpdAogICAgICAgIHRvIHRoZSBjdXJyZW50IHN0YWNrIHRvcC4gKi8KICAgICBQeU9iamVjdCAqKmZfc3RhY2t0b3A7Ci0gICAgUHlPYmplY3QgKmZfdHJhY2U7CQkvKiBUcmFjZSBmdW5jdGlvbiAqLworICAgIFB5T2JqZWN0ICpmX3RyYWNlOyAgICAgICAgICAvKiBUcmFjZSBmdW5jdGlvbiAqLworICAgIFB5T2JqZWN0ICpmX3lpZWxkZnJvbTsgICAgICAvKiBJdGVyYXRvciBiZWluZyBkZWxlZ2F0ZWQgdG8gYnkgeWllbGQgZnJvbSAqLwogCi0JLyogSW4gYSBnZW5lcmF0b3IsIHdlIG5lZWQgdG8gYmUgYWJsZSB0byBzd2FwIGJldHdlZW4gdGhlIGV4Y2VwdGlvbgotCSAgIHN0YXRlIGluc2lkZSB0aGUgZ2VuZXJhdG9yIGFuZCB0aGUgZXhjZXB0aW9uIHN0YXRlIG9mIHRoZSBjYWxsaW5nCi0JICAgZnJhbWUgKHdoaWNoIHNob3VsZG4ndCBiZSBpbXBhY3RlZCB3aGVuIHRoZSBnZW5lcmF0b3IgInlpZWxkcyIKLQkgICBmcm9tIGFuIGV4Y2VwdCBoYW5kbGVyKS4KLQkgICBUaGVzZSB0aHJlZSBmaWVsZHMgZXhpc3QgZXhhY3RseSBmb3IgdGhhdCwgYW5kIGFyZSB1bnVzZWQgZm9yCi0JICAgbm9uLWdlbmVyYXRvciBmcmFtZXMuIFNlZSB0aGUgU0FWRV9FWENfU1RBVEUgYW5kIFNXQVBfRVhDX1NUQVRFCi0JICAgbWFjcm9zIGluIGNldmFsLmMgZm9yIGRldGFpbHMgb2YgdGhlaXIgdXNlLiAqLworICAgICAgICAvKiBJbiBhIGdlbmVyYXRvciwgd2UgbmVlZCB0byBiZSBhYmxlIHRvIHN3YXAgYmV0d2VlbiB0aGUgZXhjZXB0aW9uCisgICAgICAgICAgIHN0YXRlIGluc2lkZSB0aGUgZ2VuZXJhdG9yIGFuZCB0aGUgZXhjZXB0aW9uIHN0YXRlIG9mIHRoZSBjYWxsaW5nCisgICAgICAgICAgIGZyYW1lICh3aGljaCBzaG91bGRuJ3QgYmUgaW1wYWN0ZWQgd2hlbiB0aGUgZ2VuZXJhdG9yICJ5aWVsZHMiCisgICAgICAgICAgIGZyb20gYW4gZXhjZXB0IGhhbmRsZXIpLgorICAgICAgICAgICBUaGVzZSB0aHJlZSBmaWVsZHMgZXhpc3QgZXhhY3RseSBmb3IgdGhhdCwgYW5kIGFyZSB1bnVzZWQgZm9yCisgICAgICAgICAgIG5vbi1nZW5lcmF0b3IgZnJhbWVzLiBTZWUgdGhlIFNBVkVfRVhDX1NUQVRFIGFuZCBTV0FQX0VYQ19TVEFURQorICAgICAgICAgICBtYWNyb3MgaW4gY2V2YWwuYyBmb3IgZGV0YWlscyBvZiB0aGVpciB1c2UuICovCiAgICAgUHlPYmplY3QgKmZfZXhjX3R5cGUsICpmX2V4Y192YWx1ZSwgKmZfZXhjX3RyYWNlYmFjazsKIAogICAgIFB5VGhyZWFkU3RhdGUgKmZfdHN0YXRlOwotICAgIGludCBmX2xhc3RpOwkJLyogTGFzdCBpbnN0cnVjdGlvbiBpZiBjYWxsZWQgKi8KKyAgICBpbnQgZl9sYXN0aTsgICAgICAgICAgICAgICAgLyogTGFzdCBpbnN0cnVjdGlvbiBpZiBjYWxsZWQgKi8KICAgICAvKiBDYWxsIFB5RnJhbWVfR2V0TGluZU51bWJlcigpIGluc3RlYWQgb2YgcmVhZGluZyB0aGlzIGZpZWxkCiAgICAgICAgZGlyZWN0bHkuICBBcyBvZiAyLjMgZl9saW5lbm8gaXMgb25seSB2YWxpZCB3aGVuIHRyYWNpbmcgaXMKICAgICAgICBhY3RpdmUgKGkuZS4gd2hlbiBmX3RyYWNlIGlzIHNldCkuICBBdCBvdGhlciB0aW1lcyB3ZSB1c2UKICAgICAgICBQeUNvZGVfQWRkcjJMaW5lIHRvIGNhbGN1bGF0ZSB0aGUgbGluZSBmcm9tIHRoZSBjdXJyZW50CiAgICAgICAgYnl0ZWNvZGUgaW5kZXguICovCi0gICAgaW50IGZfbGluZW5vOwkJLyogQ3VycmVudCBsaW5lIG51bWJlciAqLwotICAgIGludCBmX2libG9jazsJCS8qIGluZGV4IGluIGZfYmxvY2tzdGFjayAqLworICAgIGludCBmX2xpbmVubzsgICAgICAgICAgICAgICAvKiBDdXJyZW50IGxpbmUgbnVtYmVyICovCisgICAgaW50IGZfaWJsb2NrOyAgICAgICAgICAgICAgIC8qIGluZGV4IGluIGZfYmxvY2tzdGFjayAqLwogICAgIFB5VHJ5QmxvY2sgZl9ibG9ja3N0YWNrW0NPX01BWEJMT0NLU107IC8qIGZvciB0cnkgYW5kIGxvb3AgYmxvY2tzICovCi0gICAgUHlPYmplY3QgKmZfbG9jYWxzcGx1c1sxXTsJLyogbG9jYWxzK3N0YWNrLCBkeW5hbWljYWxseSBzaXplZCAqLworICAgIFB5T2JqZWN0ICpmX2xvY2Fsc3BsdXNbMV07ICAvKiBsb2NhbHMrc3RhY2ssIGR5bmFtaWNhbGx5IHNpemVkICovCiB9IFB5RnJhbWVPYmplY3Q7CiAKIApkaWZmIC0tZ2l0IGEvSW5jbHVkZS9mdW5jb2JqZWN0LmggYi9JbmNsdWRlL2Z1bmNvYmplY3QuaAppbmRleCA1MjFkODdiLi5jYzE0MjZjIDEwMDY0NAotLS0gYS9JbmNsdWRlL2Z1bmNvYmplY3QuaAorKysgYi9JbmNsdWRlL2Z1bmNvYmplY3QuaApAQCAtMzEsNiArMzEsNyBAQAogICAgIFB5T2JqZWN0ICpmdW5jX3dlYWtyZWZsaXN0OwkvKiBMaXN0IG9mIHdlYWsgcmVmZXJlbmNlcyAqLwogICAgIFB5T2JqZWN0ICpmdW5jX21vZHVsZTsJLyogVGhlIF9fbW9kdWxlX18gYXR0cmlidXRlLCBjYW4gYmUgYW55dGhpbmcgKi8KICAgICBQeU9iamVjdCAqZnVuY19hbm5vdGF0aW9uczsJLyogQW5ub3RhdGlvbnMsIGEgZGljdCBvciBOVUxMICovCisgICAgUHlPYmplY3QgKmZ1bmNfcXVhbG5hbWU7ICAgIC8qIFRoZSBxdWFsaWZpZWQgbmFtZSAqLwogCiAgICAgLyogSW52YXJpYW50OgogICAgICAqICAgICBmdW5jX2Nsb3N1cmUgY29udGFpbnMgdGhlIGJpbmRpbmdzIGZvciBmdW5jX2NvZGUtPmNvX2ZyZWV2YXJzLCBzbwpAQCAtNDQsNiArNDUsNyBAQAogI2RlZmluZSBQeUZ1bmN0aW9uX0NoZWNrKG9wKSAoUHlfVFlQRShvcCkgPT0gJlB5RnVuY3Rpb25fVHlwZSkKIAogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUZ1bmN0aW9uX05ldyhQeU9iamVjdCAqLCBQeU9iamVjdCAqKTsKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlGdW5jdGlvbl9OZXdXaXRoUXVhbE5hbWUoUHlPYmplY3QgKiwgUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5RnVuY3Rpb25fR2V0Q29kZShQeU9iamVjdCAqKTsKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlGdW5jdGlvbl9HZXRHbG9iYWxzKFB5T2JqZWN0ICopOwogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUZ1bmN0aW9uX0dldE1vZHVsZShQeU9iamVjdCAqKTsKZGlmZiAtLWdpdCBhL0luY2x1ZGUvZ2Vub2JqZWN0LmggYi9JbmNsdWRlL2dlbm9iamVjdC5oCmluZGV4IGQyOWZiMWUuLmU3YTFjMDEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvZ2Vub2JqZWN0LmgKKysrIGIvSW5jbHVkZS9nZW5vYmplY3QuaApAQCAtMTEsMjAgKzExLDIwIEBACiBzdHJ1Y3QgX2ZyYW1lOyAvKiBBdm9pZCBpbmNsdWRpbmcgZnJhbWVvYmplY3QuaCAqLwogCiB0eXBlZGVmIHN0cnVjdCB7Ci0JUHlPYmplY3RfSEVBRAotCS8qIFRoZSBnaV8gcHJlZml4IGlzIGludGVuZGVkIHRvIHJlbWluZCBvZiBnZW5lcmF0b3ItaXRlcmF0b3IuICovCisgICAgUHlPYmplY3RfSEVBRAorICAgIC8qIFRoZSBnaV8gcHJlZml4IGlzIGludGVuZGVkIHRvIHJlbWluZCBvZiBnZW5lcmF0b3ItaXRlcmF0b3IuICovCiAKLQkvKiBOb3RlOiBnaV9mcmFtZSBjYW4gYmUgTlVMTCBpZiB0aGUgZ2VuZXJhdG9yIGlzICJmaW5pc2hlZCIgKi8KLQlzdHJ1Y3QgX2ZyYW1lICpnaV9mcmFtZTsKKyAgICAvKiBOb3RlOiBnaV9mcmFtZSBjYW4gYmUgTlVMTCBpZiB0aGUgZ2VuZXJhdG9yIGlzICJmaW5pc2hlZCIgKi8KKyAgICBzdHJ1Y3QgX2ZyYW1lICpnaV9mcmFtZTsKIAotCS8qIFRydWUgaWYgZ2VuZXJhdG9yIGlzIGJlaW5nIGV4ZWN1dGVkLiAqLwotCWludCBnaV9ydW5uaW5nOworICAgIC8qIFRydWUgaWYgZ2VuZXJhdG9yIGlzIGJlaW5nIGV4ZWN1dGVkLiAqLworICAgIGludCBnaV9ydW5uaW5nOwogICAgIAotCS8qIFRoZSBjb2RlIG9iamVjdCBiYWNraW5nIHRoZSBnZW5lcmF0b3IgKi8KLQlQeU9iamVjdCAqZ2lfY29kZTsKKyAgICAvKiBUaGUgY29kZSBvYmplY3QgYmFja2luZyB0aGUgZ2VuZXJhdG9yICovCisgICAgUHlPYmplY3QgKmdpX2NvZGU7CiAKLQkvKiBMaXN0IG9mIHdlYWsgcmVmZXJlbmNlLiAqLwotCVB5T2JqZWN0ICpnaV93ZWFrcmVmbGlzdDsKKyAgICAvKiBMaXN0IG9mIHdlYWsgcmVmZXJlbmNlLiAqLworICAgIFB5T2JqZWN0ICpnaV93ZWFrcmVmbGlzdDsKIH0gUHlHZW5PYmplY3Q7CiAKIFB5QVBJX0RBVEEoUHlUeXBlT2JqZWN0KSBQeUdlbl9UeXBlOwpAQCAtMzQsNiArMzQsNyBAQAogCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5R2VuX05ldyhzdHJ1Y3QgX2ZyYW1lICopOwogUHlBUElfRlVOQyhpbnQpIFB5R2VuX05lZWRzRmluYWxpemluZyhQeUdlbk9iamVjdCAqKTsKK1B5QVBJX0ZVTkMoaW50KSBQeUdlbl9GZXRjaFN0b3BJdGVyYXRpb25WYWx1ZShQeU9iamVjdCAqKik7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9ncmFtaW5pdC5oIGIvSW5jbHVkZS9ncmFtaW5pdC5oCmluZGV4IGUwZTI3ZjkuLjNlYzk0OWEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvZ3JhbWluaXQuaAorKysgYi9JbmNsdWRlL2dyYW1pbml0LmgKQEAgLTgxLDMgKzgxLDQgQEAKICNkZWZpbmUgY29tcF9pZiAzMzQKICNkZWZpbmUgZW5jb2RpbmdfZGVjbCAzMzUKICNkZWZpbmUgeWllbGRfZXhwciAzMzYKKyNkZWZpbmUgeWllbGRfYXJnIDMzNwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9pbXBvcnQuaCBiL0luY2x1ZGUvaW1wb3J0LmgKaW5kZXggNDAwZTk3Yy4uNDU1NDQxMTEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvaW1wb3J0LmgKKysrIGIvSW5jbHVkZS9pbXBvcnQuaApAQCAtMjQsNyArMjQsMTYgQEAKICAgICBjaGFyICpwYXRobmFtZSwgICAgICAgICAgICAgLyogZGVjb2RlZCBmcm9tIHRoZSBmaWxlc3lzdGVtIGVuY29kaW5nICovCiAgICAgY2hhciAqY3BhdGhuYW1lICAgICAgICAgICAgIC8qIGRlY29kZWQgZnJvbSB0aGUgZmlsZXN5c3RlbSBlbmNvZGluZyAqLwogICAgICk7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlT2JqZWN0KAorICAgIFB5T2JqZWN0ICpuYW1lLAorICAgIFB5T2JqZWN0ICpjbywKKyAgICBQeU9iamVjdCAqcGF0aG5hbWUsCisgICAgUHlPYmplY3QgKmNwYXRobmFtZQorICAgICk7CiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5SW1wb3J0X0dldE1vZHVsZURpY3Qodm9pZCk7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5SW1wb3J0X0FkZE1vZHVsZU9iamVjdCgKKyAgICBQeU9iamVjdCAqbmFtZQorICAgICk7CiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5SW1wb3J0X0FkZE1vZHVsZSgKICAgICBjb25zdCBjaGFyICpuYW1lICAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KICAgICApOwpAQCAtMzUsNyArNDQsMTQgQEAKICAgICBjb25zdCBjaGFyICpuYW1lICAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KICAgICApOwogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbCgKLSAgICBjaGFyICpuYW1lLCAgICAgICAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KKyAgICBjb25zdCBjaGFyICpuYW1lLCAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KKyAgICBQeU9iamVjdCAqZ2xvYmFscywKKyAgICBQeU9iamVjdCAqbG9jYWxzLAorICAgIFB5T2JqZWN0ICpmcm9tbGlzdCwKKyAgICBpbnQgbGV2ZWwKKyAgICApOworUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbE9iamVjdCgKKyAgICBQeU9iamVjdCAqbmFtZSwKICAgICBQeU9iamVjdCAqZ2xvYmFscywKICAgICBQeU9iamVjdCAqbG9jYWxzLAogICAgIFB5T2JqZWN0ICpmcm9tbGlzdCwKQEAgLTQ5LDYgKzY1LDkgQEAKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlJbXBvcnRfSW1wb3J0KFB5T2JqZWN0ICpuYW1lKTsKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlJbXBvcnRfUmVsb2FkTW9kdWxlKFB5T2JqZWN0ICptKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlJbXBvcnRfQ2xlYW51cCh2b2lkKTsKK1B5QVBJX0ZVTkMoaW50KSBQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGVPYmplY3QoCisgICAgUHlPYmplY3QgKm5hbWUKKyAgICApOwogUHlBUElfRlVOQyhpbnQpIFB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZSgKICAgICBjaGFyICpuYW1lICAgICAgICAgICAgICAgICAgLyogVVRGLTggZW5jb2RlZCBzdHJpbmcgKi8KICAgICApOwpAQCAtNjUsMTcgKzg0LDE3IEBACiBQeUFQSV9GVU5DKHZvaWQpIF9QeUltcG9ydF9SZUluaXRMb2NrKHZvaWQpOwogCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopX1B5SW1wb3J0X0ZpbmRCdWlsdGluKAotICAgIGNoYXIgKm5hbWUgICAgICAgICAgICAgICAgICAvKiBVVEYtOCBlbmNvZGVkIHN0cmluZyAqLworICAgIGNvbnN0IGNoYXIgKm5hbWUgICAgICAgICAgICAvKiBVVEYtOCBlbmNvZGVkIHN0cmluZyAqLwogICAgICk7Ci1QeUFQSV9GVU5DKFB5T2JqZWN0ICopX1B5SW1wb3J0X0ZpbmRFeHRlbnNpb25Vbmljb2RlKGNoYXIgKiwgUHlPYmplY3QgKik7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopX1B5SW1wb3J0X0ZpbmRFeHRlbnNpb25PYmplY3QoUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CiBQeUFQSV9GVU5DKGludClfUHlJbXBvcnRfRml4dXBCdWlsdGluKAogICAgIFB5T2JqZWN0ICptb2QsCiAgICAgY2hhciAqbmFtZSAgICAgICAgICAgICAgICAgIC8qIFVURi04IGVuY29kZWQgc3RyaW5nICovCiAgICAgKTsKLVB5QVBJX0ZVTkMoaW50KV9QeUltcG9ydF9GaXh1cEV4dGVuc2lvblVuaWNvZGUoUHlPYmplY3QqLCBjaGFyICosIFB5T2JqZWN0ICopOworUHlBUElfRlVOQyhpbnQpX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uT2JqZWN0KFB5T2JqZWN0KiwgUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CiAKIHN0cnVjdCBfaW5pdHRhYiB7Ci0gICAgY2hhciAqbmFtZTsKKyAgICBjaGFyICpuYW1lOyAgICAgICAgICAgICAgICAgLyogQVNDSUkgZW5jb2RlZCBzdHJpbmcgKi8KICAgICBQeU9iamVjdCogKCppbml0ZnVuYykodm9pZCk7CiB9OwogUHlBUElfREFUQShzdHJ1Y3QgX2luaXR0YWIgKikgUHlJbXBvcnRfSW5pdHRhYjsKZGlmZiAtLWdpdCBhL0luY2x1ZGUvaW50cmNoZWNrLmggYi9JbmNsdWRlL2ludHJjaGVjay5oCmluZGV4IDNiNjdlZDAuLmY1M2ZlZTEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvaW50cmNoZWNrLmgKKysrIGIvSW5jbHVkZS9pbnRyY2hlY2suaApAQCAtOCw2ICs4LDEyIEBACiBQeUFQSV9GVU5DKGludCkgUHlPU19JbnRlcnJ1cHRPY2N1cnJlZCh2b2lkKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlPU19Jbml0SW50ZXJydXB0cyh2b2lkKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlPU19BZnRlckZvcmsodm9pZCk7CitQeUFQSV9GVU5DKGludCkgX1B5T1NfSXNNYWluVGhyZWFkKHZvaWQpOworCisjaWZkZWYgTVNfV0lORE9XUworLyogd2luZG93cy5oIGlzIG5vdCBpbmNsdWRlZCBieSBQeXRob24uaCBzbyB1c2Ugdm9pZCogaW5zdGVhZCBvZiBIQU5ETEUgKi8KK1B5QVBJX0ZVTkModm9pZCopIF9QeU9TX1NpZ2ludEV2ZW50KHZvaWQpOworI2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9saXN0b2JqZWN0LmggYi9JbmNsdWRlL2xpc3RvYmplY3QuaAppbmRleCA5NDliMWEzLi42ZmQzNzRiIDEwMDY0NAotLS0gYS9JbmNsdWRlL2xpc3RvYmplY3QuaAorKysgYi9JbmNsdWRlL2xpc3RvYmplY3QuaApAQCAtNjIsNiArNjIsOCBAQAogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUxpc3RfQXNUdXBsZShQeU9iamVjdCAqKTsKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5TGlzdF9FeHRlbmQoUHlMaXN0T2JqZWN0ICosIFB5T2JqZWN0ICopOworCitQeUFQSV9GVU5DKGludCkgUHlMaXN0X0NsZWFyRnJlZUxpc3Qodm9pZCk7CiAjZW5kaWYKIAogLyogTWFjcm8sIHRyYWRpbmcgc2FmZXR5IGZvciBzcGVlZCAqLwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9sb25nb2JqZWN0LmggYi9JbmNsdWRlL2xvbmdvYmplY3QuaAppbmRleCBjMDk1NjVhLi5jNThkZGY0IDEwMDY0NAotLS0gYS9JbmNsdWRlL2xvbmdvYmplY3QuaAorKysgYi9JbmNsdWRlL2xvbmdvYmplY3QuaApAQCAtMTIsNyArMTIsNyBAQAogUHlBUElfREFUQShQeVR5cGVPYmplY3QpIFB5TG9uZ19UeXBlOwogCiAjZGVmaW5lIFB5TG9uZ19DaGVjayhvcCkgXAotCQlQeVR5cGVfRmFzdFN1YmNsYXNzKFB5X1RZUEUob3ApLCBQeV9UUEZMQUdTX0xPTkdfU1VCQ0xBU1MpCisgICAgICAgIFB5VHlwZV9GYXN0U3ViY2xhc3MoUHlfVFlQRShvcCksIFB5X1RQRkxBR1NfTE9OR19TVUJDTEFTUykKICNkZWZpbmUgUHlMb25nX0NoZWNrRXhhY3Qob3ApIChQeV9UWVBFKG9wKSA9PSAmUHlMb25nX1R5cGUpCiAKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlMb25nX0Zyb21Mb25nKGxvbmcpOwpAQCAtODAsNiArODAsNyBAQAogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUxvbmdfRnJvbVN0cmluZyhjaGFyICosIGNoYXIgKiosIGludCk7CiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5TG9uZ19Gcm9tVW5pY29kZShQeV9VTklDT0RFKiwgUHlfc3NpemVfdCwgaW50KTsKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlMb25nX0Zyb21Vbmljb2RlT2JqZWN0KFB5T2JqZWN0ICp1LCBpbnQgYmFzZSk7CiAjZW5kaWYKIAogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQpAQCAtMTIxLDggKzEyMiw4IEBACiAgICAgIGVub3VnaCBtZW1vcnkgdG8gY3JlYXRlIHRoZSBQeXRob24gbG9uZy4KICovCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIF9QeUxvbmdfRnJvbUJ5dGVBcnJheSgKLQljb25zdCB1bnNpZ25lZCBjaGFyKiBieXRlcywgc2l6ZV90IG4sCi0JaW50IGxpdHRsZV9lbmRpYW4sIGludCBpc19zaWduZWQpOworICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIqIGJ5dGVzLCBzaXplX3QgbiwKKyAgICBpbnQgbGl0dGxlX2VuZGlhbiwgaW50IGlzX3NpZ25lZCk7CiAKIC8qIF9QeUxvbmdfQXNCeXRlQXJyYXk6IENvbnZlcnQgdGhlIGxlYXN0LXNpZ25pZmljYW50IDgqbiBiaXRzIG9mIGxvbmcKICAgIHYgdG8gYSBiYXNlLTI1NiBpbnRlZ2VyLCBzdG9yZWQgaW4gYXJyYXkgYnl0ZXMuICBOb3JtYWxseSByZXR1cm4gMCwKQEAgLTE0NCw4ICsxNDUsOCBAQAogICAgICBjYXNlLCBidXQgYnl0ZXMgaG9sZHMgdGhlIGxlYXN0LXNpZ25maWNhbnQgbiBieXRlcyBvZiB0aGUgdHJ1ZSB2YWx1ZS4KICovCiBQeUFQSV9GVU5DKGludCkgX1B5TG9uZ19Bc0J5dGVBcnJheShQeUxvbmdPYmplY3QqIHYsCi0JdW5zaWduZWQgY2hhciogYnl0ZXMsIHNpemVfdCBuLAotCWludCBsaXR0bGVfZW5kaWFuLCBpbnQgaXNfc2lnbmVkKTsKKyAgICB1bnNpZ25lZCBjaGFyKiBieXRlcywgc2l6ZV90IG4sCisgICAgaW50IGxpdHRsZV9lbmRpYW4sIGludCBpc19zaWduZWQpOwogCiAKIC8qIF9QeUxvbmdfRm9ybWF0OiBDb252ZXJ0IHRoZSBsb25nIHRvIGEgc3RyaW5nIG9iamVjdCB3aXRoIGdpdmVuIGJhc2UsCkBAIC0xNTUsOCArMTU2LDkgQEAKIC8qIEZvcm1hdCB0aGUgb2JqZWN0IGJhc2VkIG9uIHRoZSBmb3JtYXRfc3BlYywgYXMgZGVmaW5lZCBpbiBQRVAgMzEwMQogICAgKEFkdmFuY2VkIFN0cmluZyBGb3JtYXR0aW5nKS4gKi8KIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5TG9uZ19Gb3JtYXRBZHZhbmNlZChQeU9iamVjdCAqb2JqLAotCQkJCQkgICAgICBQeV9VTklDT0RFICpmb3JtYXRfc3BlYywKLQkJCQkJICAgICAgUHlfc3NpemVfdCBmb3JtYXRfc3BlY19sZW4pOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kKTsKICNlbmRpZiAvKiBQeV9MSU1JVEVEX0FQSSAqLwogCiAvKiBUaGVzZSBhcmVuJ3QgcmVhbGx5IHBhcnQgb2YgdGhlIGxvbmcgb2JqZWN0LCBidXQgdGhleSdyZSBoYW5keS4gVGhlCmRpZmYgLS1naXQgYS9JbmNsdWRlL21lbW9yeW9iamVjdC5oIGIvSW5jbHVkZS9tZW1vcnlvYmplY3QuaAppbmRleCA2MmVjYmQ2Li5hZmY1ZDk5IDEwMDY0NAotLS0gYS9JbmNsdWRlL21lbW9yeW9iamVjdC5oCisrKyBiL0luY2x1ZGUvbWVtb3J5b2JqZWN0LmgKQEAgLTY5LDYgKzY5LDcgQEAKIHR5cGVkZWYgc3RydWN0IHsKICAgICBQeU9iamVjdF9IRUFECiAgICAgUHlfYnVmZmVyIHZpZXc7CisgICAgUHlfaGFzaF90IGhhc2g7CiB9IFB5TWVtb3J5Vmlld09iamVjdDsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9JbmNsdWRlL21ldGhvZG9iamVjdC5oIGIvSW5jbHVkZS9tZXRob2RvYmplY3QuaAppbmRleCA3ZTY3YzBiLi5kNzk4ZDEzIDEwMDY0NAotLS0gYS9JbmNsdWRlL21ldGhvZG9iamVjdC5oCisrKyBiL0luY2x1ZGUvbWV0aG9kb2JqZWN0LmgKQEAgLTMwLDcgKzMwLDggQEAKICNkZWZpbmUgUHlDRnVuY3Rpb25fR0VUX0ZVTkNUSU9OKGZ1bmMpIFwKICAgICAgICAgKCgoUHlDRnVuY3Rpb25PYmplY3QgKilmdW5jKSAtPiBtX21sIC0+IG1sX21ldGgpCiAjZGVmaW5lIFB5Q0Z1bmN0aW9uX0dFVF9TRUxGKGZ1bmMpIFwKLQkoKChQeUNGdW5jdGlvbk9iamVjdCAqKWZ1bmMpIC0+IG1fc2VsZikKKyAgICAgICAgKCgoUHlDRnVuY3Rpb25PYmplY3QgKilmdW5jKSAtPiBtX21sIC0+IG1sX2ZsYWdzICYgTUVUSF9TVEFUSUMgPyBcCisgICAgICAgICBOVUxMIDogKChQeUNGdW5jdGlvbk9iamVjdCAqKWZ1bmMpIC0+IG1fc2VsZikKICNkZWZpbmUgUHlDRnVuY3Rpb25fR0VUX0ZMQUdTKGZ1bmMpIFwKIAkoKChQeUNGdW5jdGlvbk9iamVjdCAqKWZ1bmMpIC0+IG1fbWwgLT4gbWxfZmxhZ3MpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL0luY2x1ZGUvbW9kdWxlb2JqZWN0LmggYi9JbmNsdWRlL21vZHVsZW9iamVjdC5oCmluZGV4IDdiMmJmMWMuLjgwMTNkZDkgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvbW9kdWxlb2JqZWN0LmgKKysrIGIvSW5jbHVkZS9tb2R1bGVvYmplY3QuaApAQCAtMTIsMTAgKzEyLDE0IEBACiAjZGVmaW5lIFB5TW9kdWxlX0NoZWNrKG9wKSBQeU9iamVjdF9UeXBlQ2hlY2sob3AsICZQeU1vZHVsZV9UeXBlKQogI2RlZmluZSBQeU1vZHVsZV9DaGVja0V4YWN0KG9wKSAoUHlfVFlQRShvcCkgPT0gJlB5TW9kdWxlX1R5cGUpCiAKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlNb2R1bGVfTmV3T2JqZWN0KAorICAgIFB5T2JqZWN0ICpuYW1lCisgICAgKTsKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlNb2R1bGVfTmV3KAogICAgIGNvbnN0IGNoYXIgKm5hbWUgICAgICAgICAgICAvKiBVVEYtOCBlbmNvZGVkIHN0cmluZyAqLwogICAgICk7CiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5TW9kdWxlX0dldERpY3QoUHlPYmplY3QgKik7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopIFB5TW9kdWxlX0dldE5hbWVPYmplY3QoUHlPYmplY3QgKik7CiBQeUFQSV9GVU5DKGNvbnN0IGNoYXIgKikgUHlNb2R1bGVfR2V0TmFtZShQeU9iamVjdCAqKTsKIFB5QVBJX0ZVTkMoY29uc3QgY2hhciAqKSBQeU1vZHVsZV9HZXRGaWxlbmFtZShQeU9iamVjdCAqKTsKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlNb2R1bGVfR2V0RmlsZW5hbWVPYmplY3QoUHlPYmplY3QgKik7CmRpZmYgLS1naXQgYS9JbmNsdWRlL25vZGUuaCBiL0luY2x1ZGUvbm9kZS5oCmluZGV4IGUyM2U3MDkuLmQxNjExOTUgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvbm9kZS5oCisrKyBiL0luY2x1ZGUvbm9kZS5oCkBAIC0yOCw2ICsyOCw3IEBACiAjZGVmaW5lIFJDSElMRChuLCBpKQkoQ0hJTEQobiwgTkNIKG4pICsgaSkpCiAjZGVmaW5lIFRZUEUobikJCSgobiktPm5fdHlwZSkKICNkZWZpbmUgU1RSKG4pCQkoKG4pLT5uX3N0cikKKyNkZWZpbmUgTElORU5PKG4pICAgICAgICgobiktPm5fbGluZW5vKQogCiAvKiBBc3NlcnQgdGhhdCB0aGUgdHlwZSBvZiBhIG5vZGUgaXMgd2hhdCB3ZSBleHBlY3QgKi8KICNkZWZpbmUgUkVRKG4sIHR5cGUpIGFzc2VydChUWVBFKG4pID09ICh0eXBlKSkKZGlmZiAtLWdpdCBhL0luY2x1ZGUvb2JqZWN0LmggYi9JbmNsdWRlL29iamVjdC5oCmluZGV4IDI1Mjg4NDEuLjY5MDdhNDQgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvb2JqZWN0LmgKKysrIGIvSW5jbHVkZS9vYmplY3QuaApAQCAtMTE3LDYgKzExNywzNSBAQAogI2RlZmluZSBQeV9UWVBFKG9iKSAgICAgICAgICAgICAoKChQeU9iamVjdCopKG9iKSktPm9iX3R5cGUpCiAjZGVmaW5lIFB5X1NJWkUob2IpICAgICAgICAgICAgICgoKFB5VmFyT2JqZWN0Kikob2IpKS0+b2Jfc2l6ZSkKIAorLyoqKioqKioqKioqKioqKioqKioqKiBTdHJpbmcgTGl0ZXJhbHMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qIFRoaXMgc3RydWN0dXJlIGhlbHBzIG1hbmFnaW5nIHN0YXRpYyBzdHJpbmdzLiBUaGUgYmFzaWMgdXNhZ2UgZ29lcyBsaWtlIHRoaXM6CisgICBJbnN0ZWFkIG9mIGRvaW5nCisKKyAgICAgICByID0gUHlPYmplY3RfQ2FsbE1ldGhvZChvLCAiZm9vIiwgImFyZ3MiLCAuLi4pOworCisgICBkbworCisgICAgICAgX1B5X0lERU5USUZJRVIoZm9vKTsKKyAgICAgICAuLi4KKyAgICAgICByID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChvLCAmUHlJZF9mb28sICJhcmdzIiwgLi4uKTsKKworICAgUHlJZF9mb28gaXMgYSBzdGF0aWMgdmFyaWFibGUsIGVpdGhlciBvbiBibG9jayBsZXZlbCBvciBmaWxlIGxldmVsLiBPbiBmaXJzdAorICAgdXNhZ2UsIHRoZSBzdHJpbmcgImZvbyIgaXMgaW50ZXJuZWQsIGFuZCB0aGUgc3RydWN0dXJlcyBhcmUgbGlua2VkLiBPbiBpbnRlcnByZXRlcgorICAgc2h1dGRvd24sIGFsbCBzdHJpbmdzIGFyZSByZWxlYXNlZCAodGhyb3VnaCBfUHlVbmljb2RlX0NsZWFyU3RhdGljU3RyaW5ncykuCisKKyAgIEFsdGVybmF0aXZlbHksIF9QeV9zdGF0aWNfc3RyaW5nIGFsbG93cyB0byBjaG9vc2UgdGhlIHZhcmlhYmxlIG5hbWUuCisgICBfUHlVbmljb2RlX0Zyb21JZCByZXR1cm5zIGEgYm9ycm93ZWQgcmVmZXJlbmNlIHRvIHRoZSBpbnRlcm5lZCBzdHJpbmcuCisgICBfUHlPYmplY3Rfe0dldCxTZXQsSGFzfUF0dHJJZCBhcmUgX19nZXRhdHRyX18gdmVyc2lvbnMgdXNpbmcgX1B5X0lkZW50aWZpZXIqLgorKi8KK3R5cGVkZWYgc3RydWN0IF9QeV9JZGVudGlmaWVyIHsKKyAgICBzdHJ1Y3QgX1B5X0lkZW50aWZpZXIgKm5leHQ7CisgICAgY29uc3QgY2hhciogc3RyaW5nOworICAgIFB5T2JqZWN0ICpvYmplY3Q7Cit9IF9QeV9JZGVudGlmaWVyOworCisjZGVmaW5lIF9QeV9zdGF0aWNfc3RyaW5nKHZhcm5hbWUsIHZhbHVlKSAgc3RhdGljIF9QeV9JZGVudGlmaWVyIHZhcm5hbWUgPSB7IDAsIHZhbHVlLCAwIH0KKyNkZWZpbmUgX1B5X0lERU5USUZJRVIodmFybmFtZSkgX1B5X3N0YXRpY19zdHJpbmcoUHlJZF8jI3Zhcm5hbWUsICN2YXJuYW1lKQorCiAvKgogVHlwZSBvYmplY3RzIGNvbnRhaW4gYSBzdHJpbmcgY29udGFpbmluZyB0aGUgdHlwZSBuYW1lICh0byBoZWxwIHNvbWV3aGF0CiBpbiBkZWJ1Z2dpbmcpLCB0aGUgYWxsb2NhdGlvbiBwYXJhbWV0ZXJzIChzZWUgUHlPYmplY3RfTmV3KCkgYW5kCkBAIC00MTgsNyArNDQ3LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSBnaXZlbiBvcGVyYXRvciAoZS5nLiBfX2dldGl0ZW1fXykuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlZSBhZGRfb3BlcmF0b3JzKCkgaW4gdHlwZW9iamVjdC5jIC4gKi8KICAgICBQeUJ1ZmZlclByb2NzIGFzX2J1ZmZlcjsKLSAgICBQeU9iamVjdCAqaHRfbmFtZSwgKmh0X3Nsb3RzOworICAgIFB5T2JqZWN0ICpodF9uYW1lLCAqaHRfc2xvdHMsICpodF9xdWFsbmFtZTsKICAgICAvKiBoZXJlIGFyZSBvcHRpb25hbCB1c2VyIHNsb3RzLCBmb2xsb3dlZCBieSB0aGUgbWVtYmVycy4gKi8KIH0gUHlIZWFwVHlwZU9iamVjdDsKIApAQCAtNDQ4LDEzICs0NzcsMTQgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiBQeUFQSV9GVU5DKFB5T2JqZWN0ICopIF9QeVR5cGVfTG9va3VwKFB5VHlwZU9iamVjdCAqLCBQeU9iamVjdCAqKTsKLVB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoUHlPYmplY3QgKiwgY2hhciAqLCBQeU9iamVjdCAqKik7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopIF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKFB5T2JqZWN0ICosIF9QeV9JZGVudGlmaWVyICopOwogUHlBUElfRlVOQyhQeVR5cGVPYmplY3QgKikgX1B5VHlwZV9DYWxjdWxhdGVNZXRhY2xhc3MoUHlUeXBlT2JqZWN0ICosIFB5T2JqZWN0ICopOwogI2VuZGlmCiBQeUFQSV9GVU5DKHVuc2lnbmVkIGludCkgUHlUeXBlX0NsZWFyQ2FjaGUodm9pZCk7CiBQeUFQSV9GVU5DKHZvaWQpIFB5VHlwZV9Nb2RpZmllZChQeVR5cGVPYmplY3QgKik7CiAKIC8qIEdlbmVyaWMgb3BlcmF0aW9ucyBvbiBvYmplY3RzICovCitzdHJ1Y3QgX1B5X0lkZW50aWZpZXI7CiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiBQeUFQSV9GVU5DKGludCkgUHlPYmplY3RfUHJpbnQoUHlPYmplY3QgKiwgRklMRSAqLCBpbnQpOwogUHlBUElfRlVOQyh2b2lkKSBfUHlfQnJlYWtQb2ludCh2b2lkKTsKQEAgLTQ3Miw2ICs1MDIsMTAgQEAKIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlPYmplY3RfR2V0QXR0cihQeU9iamVjdCAqLCBQeU9iamVjdCAqKTsKIFB5QVBJX0ZVTkMoaW50KSBQeU9iamVjdF9TZXRBdHRyKFB5T2JqZWN0ICosIFB5T2JqZWN0ICosIFB5T2JqZWN0ICopOwogUHlBUElfRlVOQyhpbnQpIFB5T2JqZWN0X0hhc0F0dHIoUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CitQeUFQSV9GVU5DKGludCkgX1B5T2JqZWN0X0lzQWJzdHJhY3QoUHlPYmplY3QgKik7CitQeUFQSV9GVU5DKFB5T2JqZWN0ICopIF9QeU9iamVjdF9HZXRBdHRySWQoUHlPYmplY3QgKiwgc3RydWN0IF9QeV9JZGVudGlmaWVyICopOworUHlBUElfRlVOQyhpbnQpIF9QeU9iamVjdF9TZXRBdHRySWQoUHlPYmplY3QgKiwgc3RydWN0IF9QeV9JZGVudGlmaWVyICosIFB5T2JqZWN0ICopOworUHlBUElfRlVOQyhpbnQpIF9QeU9iamVjdF9IYXNBdHRySWQoUHlPYmplY3QgKiwgc3RydWN0IF9QeV9JZGVudGlmaWVyICopOwogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQogUHlBUElfRlVOQyhQeU9iamVjdCAqKikgX1B5T2JqZWN0X0dldERpY3RQdHIoUHlPYmplY3QgKik7CiAjZW5kaWYKQEAgLTUxNSw2ICs1NDksNyBAQAogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQogUHlBUElfRlVOQyhQeV9oYXNoX3QpIF9QeV9IYXNoRG91YmxlKGRvdWJsZSk7CiBQeUFQSV9GVU5DKFB5X2hhc2hfdCkgX1B5X0hhc2hQb2ludGVyKHZvaWQqKTsKK1B5QVBJX0ZVTkMoUHlfaGFzaF90KSBfUHlfSGFzaEJ5dGVzKHVuc2lnbmVkIGNoYXIqLCBQeV9zc2l6ZV90KTsKICNlbmRpZgogCiAvKiBIZWxwZXIgZm9yIHBhc3Npbmcgb2JqZWN0cyB0byBwcmludGYgYW5kIHRoZSBsaWtlICovCkBAIC03OTMsNiArODI4LDEwIEBACiBQeUFQSV9EQVRBKFB5T2JqZWN0KSBfUHlfTm90SW1wbGVtZW50ZWRTdHJ1Y3Q7IC8qIERvbid0IHVzZSB0aGlzIGRpcmVjdGx5ICovCiAjZGVmaW5lIFB5X05vdEltcGxlbWVudGVkICgmX1B5X05vdEltcGxlbWVudGVkU3RydWN0KQogCisvKiBNYWNybyBmb3IgcmV0dXJuaW5nIFB5X05vdEltcGxlbWVudGVkIGZyb20gYSBmdW5jdGlvbiAqLworI2RlZmluZSBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQgXAorICAgIHJldHVybiBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpLCBQeV9Ob3RJbXBsZW1lbnRlZAorCiAvKiBSaWNoIGNvbXBhcmlzb24gb3Bjb2RlcyAqLwogI2RlZmluZSBQeV9MVCAwCiAjZGVmaW5lIFB5X0xFIDEKZGlmZiAtLWdpdCBhL0luY2x1ZGUvb3Bjb2RlLmggYi9JbmNsdWRlL29wY29kZS5oCmluZGV4IDZiMTA5NDQuLmE5MDE4NGQgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvb3Bjb2RlLmgKKysrIGIvSW5jbHVkZS9vcGNvZGUuaApAQCAtNywxMTcgKzcsMTE3IEBACiAKIC8qIEluc3RydWN0aW9uIG9wY29kZXMgZm9yIGNvbXBpbGVkIGNvZGUgKi8KIAotI2RlZmluZSBTVE9QX0NPREUJMAotI2RlZmluZSBQT1BfVE9QCQkxCi0jZGVmaW5lIFJPVF9UV08JCTIKLSNkZWZpbmUgUk9UX1RIUkVFCTMKLSNkZWZpbmUgRFVQX1RPUAkJNAorI2RlZmluZSBQT1BfVE9QICAgICAgICAgMQorI2RlZmluZSBST1RfVFdPICAgICAgICAgMgorI2RlZmluZSBST1RfVEhSRUUgICAgICAgMworI2RlZmluZSBEVVBfVE9QICAgICAgICAgNAogI2RlZmluZSBEVVBfVE9QX1RXTyAgICAgNQotI2RlZmluZSBOT1AJCTkKKyNkZWZpbmUgTk9QICAgICAgICAgICAgIDkKIAotI2RlZmluZSBVTkFSWV9QT1NJVElWRQkxMAotI2RlZmluZSBVTkFSWV9ORUdBVElWRQkxMQotI2RlZmluZSBVTkFSWV9OT1QJMTIKKyNkZWZpbmUgVU5BUllfUE9TSVRJVkUgIDEwCisjZGVmaW5lIFVOQVJZX05FR0FUSVZFICAxMQorI2RlZmluZSBVTkFSWV9OT1QgICAgICAgMTIKIAotI2RlZmluZSBVTkFSWV9JTlZFUlQJMTUKKyNkZWZpbmUgVU5BUllfSU5WRVJUICAgIDE1CiAKLSNkZWZpbmUgQklOQVJZX1BPV0VSCTE5CisjZGVmaW5lIEJJTkFSWV9QT1dFUiAgICAxOQogCi0jZGVmaW5lIEJJTkFSWV9NVUxUSVBMWQkyMAorI2RlZmluZSBCSU5BUllfTVVMVElQTFkgMjAKIAotI2RlZmluZSBCSU5BUllfTU9EVUxPCTIyCi0jZGVmaW5lIEJJTkFSWV9BREQJMjMKLSNkZWZpbmUgQklOQVJZX1NVQlRSQUNUCTI0Ci0jZGVmaW5lIEJJTkFSWV9TVUJTQ1IJMjUKKyNkZWZpbmUgQklOQVJZX01PRFVMTyAgIDIyCisjZGVmaW5lIEJJTkFSWV9BREQgICAgICAyMworI2RlZmluZSBCSU5BUllfU1VCVFJBQ1QgMjQKKyNkZWZpbmUgQklOQVJZX1NVQlNDUiAgIDI1CiAjZGVmaW5lIEJJTkFSWV9GTE9PUl9ESVZJREUgMjYKICNkZWZpbmUgQklOQVJZX1RSVUVfRElWSURFIDI3CiAjZGVmaW5lIElOUExBQ0VfRkxPT1JfRElWSURFIDI4CiAjZGVmaW5lIElOUExBQ0VfVFJVRV9ESVZJREUgMjkKIAotI2RlZmluZSBTVE9SRV9NQVAJNTQKLSNkZWZpbmUgSU5QTEFDRV9BREQJNTUKLSNkZWZpbmUgSU5QTEFDRV9TVUJUUkFDVAk1NgotI2RlZmluZSBJTlBMQUNFX01VTFRJUExZCTU3CisjZGVmaW5lIFNUT1JFX01BUCAgICAgICA1NAorI2RlZmluZSBJTlBMQUNFX0FERCAgICAgNTUKKyNkZWZpbmUgSU5QTEFDRV9TVUJUUkFDVCAgICAgICAgNTYKKyNkZWZpbmUgSU5QTEFDRV9NVUxUSVBMWSAgICAgICAgNTcKIAotI2RlZmluZSBJTlBMQUNFX01PRFVMTwk1OQotI2RlZmluZSBTVE9SRV9TVUJTQ1IJNjAKLSNkZWZpbmUgREVMRVRFX1NVQlNDUgk2MQorI2RlZmluZSBJTlBMQUNFX01PRFVMTyAgNTkKKyNkZWZpbmUgU1RPUkVfU1VCU0NSICAgIDYwCisjZGVmaW5lIERFTEVURV9TVUJTQ1IgICA2MQogCi0jZGVmaW5lIEJJTkFSWV9MU0hJRlQJNjIKLSNkZWZpbmUgQklOQVJZX1JTSElGVAk2MwotI2RlZmluZSBCSU5BUllfQU5ECTY0Ci0jZGVmaW5lIEJJTkFSWV9YT1IJNjUKLSNkZWZpbmUgQklOQVJZX09SCTY2Ci0jZGVmaW5lIElOUExBQ0VfUE9XRVIJNjcKLSNkZWZpbmUgR0VUX0lURVIJNjgKLSNkZWZpbmUgU1RPUkVfTE9DQUxTCTY5Ci0jZGVmaW5lIFBSSU5UX0VYUFIJNzAKKyNkZWZpbmUgQklOQVJZX0xTSElGVCAgIDYyCisjZGVmaW5lIEJJTkFSWV9SU0hJRlQgICA2MworI2RlZmluZSBCSU5BUllfQU5EICAgICAgNjQKKyNkZWZpbmUgQklOQVJZX1hPUiAgICAgIDY1CisjZGVmaW5lIEJJTkFSWV9PUiAgICAgICA2NgorI2RlZmluZSBJTlBMQUNFX1BPV0VSICAgNjcKKyNkZWZpbmUgR0VUX0lURVIgICAgICAgIDY4CisjZGVmaW5lIFNUT1JFX0xPQ0FMUyAgICA2OQorI2RlZmluZSBQUklOVF9FWFBSICAgICAgNzAKICNkZWZpbmUgTE9BRF9CVUlMRF9DTEFTUyA3MQorI2RlZmluZSBZSUVMRF9GUk9NICAgICAgNzIKIAotI2RlZmluZSBJTlBMQUNFX0xTSElGVAk3NQotI2RlZmluZSBJTlBMQUNFX1JTSElGVAk3NgotI2RlZmluZSBJTlBMQUNFX0FORAk3NwotI2RlZmluZSBJTlBMQUNFX1hPUgk3OAotI2RlZmluZSBJTlBMQUNFX09SCTc5Ci0jZGVmaW5lIEJSRUFLX0xPT1AJODAKKyNkZWZpbmUgSU5QTEFDRV9MU0hJRlQgIDc1CisjZGVmaW5lIElOUExBQ0VfUlNISUZUICA3NgorI2RlZmluZSBJTlBMQUNFX0FORCAgICAgNzcKKyNkZWZpbmUgSU5QTEFDRV9YT1IgICAgIDc4CisjZGVmaW5lIElOUExBQ0VfT1IgICAgICA3OQorI2RlZmluZSBCUkVBS19MT09QICAgICAgODAKICNkZWZpbmUgV0lUSF9DTEVBTlVQICAgIDgxCiAKLSNkZWZpbmUgUkVUVVJOX1ZBTFVFCTgzCi0jZGVmaW5lIElNUE9SVF9TVEFSCTg0CisjZGVmaW5lIFJFVFVSTl9WQUxVRSAgICA4MworI2RlZmluZSBJTVBPUlRfU1RBUiAgICAgODQKIAotI2RlZmluZSBZSUVMRF9WQUxVRQk4NgotI2RlZmluZSBQT1BfQkxPQ0sJODcKLSNkZWZpbmUgRU5EX0ZJTkFMTFkJODgKLSNkZWZpbmUgUE9QX0VYQ0VQVAk4OQorI2RlZmluZSBZSUVMRF9WQUxVRSAgICAgODYKKyNkZWZpbmUgUE9QX0JMT0NLICAgICAgIDg3CisjZGVmaW5lIEVORF9GSU5BTExZICAgICA4OAorI2RlZmluZSBQT1BfRVhDRVBUICAgICAgODkKIAotI2RlZmluZSBIQVZFX0FSR1VNRU5UCTkwCS8qIE9wY29kZXMgZnJvbSBoZXJlIGhhdmUgYW4gYXJndW1lbnQ6ICovCisjZGVmaW5lIEhBVkVfQVJHVU1FTlQgICA5MCAgICAgIC8qIE9wY29kZXMgZnJvbSBoZXJlIGhhdmUgYW4gYXJndW1lbnQ6ICovCiAKLSNkZWZpbmUgU1RPUkVfTkFNRQk5MAkvKiBJbmRleCBpbiBuYW1lIGxpc3QgKi8KLSNkZWZpbmUgREVMRVRFX05BTUUJOTEJLyogIiIgKi8KLSNkZWZpbmUgVU5QQUNLX1NFUVVFTkNFCTkyCS8qIE51bWJlciBvZiBzZXF1ZW5jZSBpdGVtcyAqLwotI2RlZmluZSBGT1JfSVRFUgk5MworI2RlZmluZSBTVE9SRV9OQU1FICAgICAgOTAgICAgICAvKiBJbmRleCBpbiBuYW1lIGxpc3QgKi8KKyNkZWZpbmUgREVMRVRFX05BTUUgICAgIDkxICAgICAgLyogIiIgKi8KKyNkZWZpbmUgVU5QQUNLX1NFUVVFTkNFIDkyICAgICAgLyogTnVtYmVyIG9mIHNlcXVlbmNlIGl0ZW1zICovCisjZGVmaW5lIEZPUl9JVEVSICAgICAgICA5MwogI2RlZmluZSBVTlBBQ0tfRVggICAgICAgOTQgICAgICAvKiBOdW0gaXRlbXMgYmVmb3JlIHZhcmlhYmxlIHBhcnQgKwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoTnVtIGl0ZW1zIGFmdGVyIHZhcmlhYmxlIHBhcnQgPDwgOCkgKi8KIAotI2RlZmluZSBTVE9SRV9BVFRSCTk1CS8qIEluZGV4IGluIG5hbWUgbGlzdCAqLwotI2RlZmluZSBERUxFVEVfQVRUUgk5NgkvKiAiIiAqLwotI2RlZmluZSBTVE9SRV9HTE9CQUwJOTcJLyogIiIgKi8KLSNkZWZpbmUgREVMRVRFX0dMT0JBTAk5OAkvKiAiIiAqLworI2RlZmluZSBTVE9SRV9BVFRSICAgICAgOTUgICAgICAvKiBJbmRleCBpbiBuYW1lIGxpc3QgKi8KKyNkZWZpbmUgREVMRVRFX0FUVFIgICAgIDk2ICAgICAgLyogIiIgKi8KKyNkZWZpbmUgU1RPUkVfR0xPQkFMICAgIDk3ICAgICAgLyogIiIgKi8KKyNkZWZpbmUgREVMRVRFX0dMT0JBTCAgIDk4ICAgICAgLyogIiIgKi8KIAotI2RlZmluZSBMT0FEX0NPTlNUCTEwMAkvKiBJbmRleCBpbiBjb25zdCBsaXN0ICovCi0jZGVmaW5lIExPQURfTkFNRQkxMDEJLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCi0jZGVmaW5lIEJVSUxEX1RVUExFCTEwMgkvKiBOdW1iZXIgb2YgdHVwbGUgaXRlbXMgKi8KLSNkZWZpbmUgQlVJTERfTElTVAkxMDMJLyogTnVtYmVyIG9mIGxpc3QgaXRlbXMgKi8KLSNkZWZpbmUgQlVJTERfU0VUCTEwNCAgICAgLyogTnVtYmVyIG9mIHNldCBpdGVtcyAqLwotI2RlZmluZSBCVUlMRF9NQVAJMTA1CS8qIEFsd2F5cyB6ZXJvIGZvciBub3cgKi8KLSNkZWZpbmUgTE9BRF9BVFRSCTEwNgkvKiBJbmRleCBpbiBuYW1lIGxpc3QgKi8KLSNkZWZpbmUgQ09NUEFSRV9PUAkxMDcJLyogQ29tcGFyaXNvbiBvcGVyYXRvciAqLwotI2RlZmluZSBJTVBPUlRfTkFNRQkxMDgJLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCi0jZGVmaW5lIElNUE9SVF9GUk9NCTEwOQkvKiBJbmRleCBpbiBuYW1lIGxpc3QgKi8KKyNkZWZpbmUgTE9BRF9DT05TVCAgICAgIDEwMCAgICAgLyogSW5kZXggaW4gY29uc3QgbGlzdCAqLworI2RlZmluZSBMT0FEX05BTUUgICAgICAgMTAxICAgICAvKiBJbmRleCBpbiBuYW1lIGxpc3QgKi8KKyNkZWZpbmUgQlVJTERfVFVQTEUgICAgIDEwMiAgICAgLyogTnVtYmVyIG9mIHR1cGxlIGl0ZW1zICovCisjZGVmaW5lIEJVSUxEX0xJU1QgICAgICAxMDMgICAgIC8qIE51bWJlciBvZiBsaXN0IGl0ZW1zICovCisjZGVmaW5lIEJVSUxEX1NFVCAgICAgICAxMDQgICAgIC8qIE51bWJlciBvZiBzZXQgaXRlbXMgKi8KKyNkZWZpbmUgQlVJTERfTUFQICAgICAgIDEwNSAgICAgLyogQWx3YXlzIHplcm8gZm9yIG5vdyAqLworI2RlZmluZSBMT0FEX0FUVFIgICAgICAgMTA2ICAgICAvKiBJbmRleCBpbiBuYW1lIGxpc3QgKi8KKyNkZWZpbmUgQ09NUEFSRV9PUCAgICAgIDEwNyAgICAgLyogQ29tcGFyaXNvbiBvcGVyYXRvciAqLworI2RlZmluZSBJTVBPUlRfTkFNRSAgICAgMTA4ICAgICAvKiBJbmRleCBpbiBuYW1lIGxpc3QgKi8KKyNkZWZpbmUgSU1QT1JUX0ZST00gICAgIDEwOSAgICAgLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCiAKLSNkZWZpbmUgSlVNUF9GT1JXQVJECTExMAkvKiBOdW1iZXIgb2YgYnl0ZXMgdG8gc2tpcCAqLwotI2RlZmluZSBKVU1QX0lGX0ZBTFNFX09SX1BPUCAxMTEJLyogVGFyZ2V0IGJ5dGUgb2Zmc2V0IGZyb20gYmVnaW5uaW5nIG9mIGNvZGUgKi8KLSNkZWZpbmUgSlVNUF9JRl9UUlVFX09SX1BPUCAxMTIJLyogIiIgKi8KLSNkZWZpbmUgSlVNUF9BQlNPTFVURQkxMTMJLyogIiIgKi8KLSNkZWZpbmUgUE9QX0pVTVBfSUZfRkFMU0UgMTE0CS8qICIiICovCi0jZGVmaW5lIFBPUF9KVU1QX0lGX1RSVUUgMTE1CS8qICIiICovCisjZGVmaW5lIEpVTVBfRk9SV0FSRCAgICAxMTAgICAgIC8qIE51bWJlciBvZiBieXRlcyB0byBza2lwICovCisjZGVmaW5lIEpVTVBfSUZfRkFMU0VfT1JfUE9QIDExMSAgICAgICAgLyogVGFyZ2V0IGJ5dGUgb2Zmc2V0IGZyb20gYmVnaW5uaW5nIG9mIGNvZGUgKi8KKyNkZWZpbmUgSlVNUF9JRl9UUlVFX09SX1BPUCAxMTIgLyogIiIgKi8KKyNkZWZpbmUgSlVNUF9BQlNPTFVURSAgIDExMyAgICAgLyogIiIgKi8KKyNkZWZpbmUgUE9QX0pVTVBfSUZfRkFMU0UgMTE0ICAgLyogIiIgKi8KKyNkZWZpbmUgUE9QX0pVTVBfSUZfVFJVRSAxMTUgICAgLyogIiIgKi8KIAotI2RlZmluZSBMT0FEX0dMT0JBTAkxMTYJLyogSW5kZXggaW4gbmFtZSBsaXN0ICovCisjZGVmaW5lIExPQURfR0xPQkFMICAgICAxMTYgICAgIC8qIEluZGV4IGluIG5hbWUgbGlzdCAqLwogCi0jZGVmaW5lIENPTlRJTlVFX0xPT1AJMTE5CS8qIFN0YXJ0IG9mIGxvb3AgKGFic29sdXRlKSAqLwotI2RlZmluZSBTRVRVUF9MT09QCTEyMAkvKiBUYXJnZXQgYWRkcmVzcyAocmVsYXRpdmUpICovCi0jZGVmaW5lIFNFVFVQX0VYQ0VQVAkxMjEJLyogIiIgKi8KLSNkZWZpbmUgU0VUVVBfRklOQUxMWQkxMjIJLyogIiIgKi8KKyNkZWZpbmUgQ09OVElOVUVfTE9PUCAgIDExOSAgICAgLyogU3RhcnQgb2YgbG9vcCAoYWJzb2x1dGUpICovCisjZGVmaW5lIFNFVFVQX0xPT1AgICAgICAxMjAgICAgIC8qIFRhcmdldCBhZGRyZXNzIChyZWxhdGl2ZSkgKi8KKyNkZWZpbmUgU0VUVVBfRVhDRVBUICAgIDEyMSAgICAgLyogIiIgKi8KKyNkZWZpbmUgU0VUVVBfRklOQUxMWSAgIDEyMiAgICAgLyogIiIgKi8KIAotI2RlZmluZSBMT0FEX0ZBU1QJMTI0CS8qIExvY2FsIHZhcmlhYmxlIG51bWJlciAqLwotI2RlZmluZSBTVE9SRV9GQVNUCTEyNQkvKiBMb2NhbCB2YXJpYWJsZSBudW1iZXIgKi8KLSNkZWZpbmUgREVMRVRFX0ZBU1QJMTI2CS8qIExvY2FsIHZhcmlhYmxlIG51bWJlciAqLworI2RlZmluZSBMT0FEX0ZBU1QgICAgICAgMTI0ICAgICAvKiBMb2NhbCB2YXJpYWJsZSBudW1iZXIgKi8KKyNkZWZpbmUgU1RPUkVfRkFTVCAgICAgIDEyNSAgICAgLyogTG9jYWwgdmFyaWFibGUgbnVtYmVyICovCisjZGVmaW5lIERFTEVURV9GQVNUICAgICAxMjYgICAgIC8qIExvY2FsIHZhcmlhYmxlIG51bWJlciAqLwogCi0jZGVmaW5lIFJBSVNFX1ZBUkFSR1MJMTMwCS8qIE51bWJlciBvZiByYWlzZSBhcmd1bWVudHMgKDEsIDIgb3IgMykgKi8KKyNkZWZpbmUgUkFJU0VfVkFSQVJHUyAgIDEzMCAgICAgLyogTnVtYmVyIG9mIHJhaXNlIGFyZ3VtZW50cyAoMSwgMiBvciAzKSAqLwogLyogQ0FMTF9GVU5DVElPTl9YWFggb3Bjb2RlcyBkZWZpbmVkIGJlbG93IGRlcGVuZCBvbiB0aGlzIGRlZmluaXRpb24gKi8KLSNkZWZpbmUgQ0FMTF9GVU5DVElPTgkxMzEJLyogI2FyZ3MgKyAoI2t3YXJnczw8OCkgKi8KLSNkZWZpbmUgTUFLRV9GVU5DVElPTgkxMzIJLyogI2RlZmF1bHRzICsgI2t3ZGVmYXVsdHM8PDggKyAjYW5ub3RhdGlvbnM8PDE2ICovCi0jZGVmaW5lIEJVSUxEX1NMSUNFIAkxMzMJLyogTnVtYmVyIG9mIGl0ZW1zICovCisjZGVmaW5lIENBTExfRlVOQ1RJT04gICAxMzEgICAgIC8qICNhcmdzICsgKCNrd2FyZ3M8PDgpICovCisjZGVmaW5lIE1BS0VfRlVOQ1RJT04gICAxMzIgICAgIC8qICNkZWZhdWx0cyArICNrd2RlZmF1bHRzPDw4ICsgI2Fubm90YXRpb25zPDwxNiAqLworI2RlZmluZSBCVUlMRF9TTElDRSAgICAgMTMzICAgICAvKiBOdW1iZXIgb2YgaXRlbXMgKi8KIAogI2RlZmluZSBNQUtFX0NMT1NVUkUgICAgMTM0ICAgICAvKiBzYW1lIGFzIE1BS0VfRlVOQ1RJT04gKi8KICNkZWZpbmUgTE9BRF9DTE9TVVJFICAgIDEzNSAgICAgLyogTG9hZCBmcmVlIHZhcmlhYmxlIGZyb20gY2xvc3VyZSAqLwpAQCAtMTI3LDkgKzEyNyw5IEBACiAKIC8qIFRoZSBuZXh0IDMgb3Bjb2RlcyBtdXN0IGJlIGNvbnRpZ3VvdXMgYW5kIHNhdGlzZnkKICAgIChDQUxMX0ZVTkNUSU9OX1ZBUiAtIENBTExfRlVOQ1RJT04pICYgMyA9PSAxICAqLwotI2RlZmluZSBDQUxMX0ZVTkNUSU9OX1ZBUiAgICAgICAgICAxNDAJLyogI2FyZ3MgKyAoI2t3YXJnczw8OCkgKi8KLSNkZWZpbmUgQ0FMTF9GVU5DVElPTl9LVyAgICAgICAgICAgMTQxCS8qICNhcmdzICsgKCNrd2FyZ3M8PDgpICovCi0jZGVmaW5lIENBTExfRlVOQ1RJT05fVkFSX0tXICAgICAgIDE0MgkvKiAjYXJncyArICgja3dhcmdzPDw4KSAqLworI2RlZmluZSBDQUxMX0ZVTkNUSU9OX1ZBUiAgICAgICAgICAxNDAgIC8qICNhcmdzICsgKCNrd2FyZ3M8PDgpICovCisjZGVmaW5lIENBTExfRlVOQ1RJT05fS1cgICAgICAgICAgIDE0MSAgLyogI2FyZ3MgKyAoI2t3YXJnczw8OCkgKi8KKyNkZWZpbmUgQ0FMTF9GVU5DVElPTl9WQVJfS1cgICAgICAgMTQyICAvKiAjYXJncyArICgja3dhcmdzPDw4KSAqLwogCiAjZGVmaW5lIFNFVFVQX1dJVEggMTQzCiAKQEAgLTE0OSw3ICsxNDksNyBAQAogCiAKIGVudW0gY21wX29wIHtQeUNtcF9MVD1QeV9MVCwgUHlDbXBfTEU9UHlfTEUsIFB5Q21wX0VRPVB5X0VRLCBQeUNtcF9ORT1QeV9ORSwgUHlDbXBfR1Q9UHlfR1QsIFB5Q21wX0dFPVB5X0dFLAotCSAgICAgUHlDbXBfSU4sIFB5Q21wX05PVF9JTiwgUHlDbXBfSVMsIFB5Q21wX0lTX05PVCwgUHlDbXBfRVhDX01BVENILCBQeUNtcF9CQUR9OworICAgICAgICAgICAgIFB5Q21wX0lOLCBQeUNtcF9OT1RfSU4sIFB5Q21wX0lTLCBQeUNtcF9JU19OT1QsIFB5Q21wX0VYQ19NQVRDSCwgUHlDbXBfQkFEfTsKIAogI2RlZmluZSBIQVNfQVJHKG9wKSAoKG9wKSA+PSBIQVZFX0FSR1VNRU5UKQogCmRpZmYgLS1naXQgYS9JbmNsdWRlL3BhcnNldG9rLmggYi9JbmNsdWRlL3BhcnNldG9rLmgKaW5kZXggNGI3Njk0Zi4uOTExZGZjMSAxMDA2NDQKLS0tIGEvSW5jbHVkZS9wYXJzZXRvay5oCisrKyBiL0luY2x1ZGUvcGFyc2V0b2suaApAQCAtOSw3ICs5LDEwIEBACiAKIHR5cGVkZWYgc3RydWN0IHsKICAgICBpbnQgZXJyb3I7Ci0gICAgY29uc3QgY2hhciAqZmlsZW5hbWU7ICAgICAgIC8qIGRlY29kZWQgZnJvbSB0aGUgZmlsZXN5c3RlbSBlbmNvZGluZyAqLworI2lmbmRlZiBQR0VOCisgICAgLyogVGhlIGZpbGVuYW1lIGlzIHVzZWxlc3MgZm9yIHBnZW4sIHNlZSBjb21tZW50IGluIHRva19zdGF0ZSBzdHJ1Y3R1cmUgKi8KKyAgICBQeU9iamVjdCAqZmlsZW5hbWU7CisjZW5kaWYKICAgICBpbnQgbGluZW5vOwogICAgIGludCBvZmZzZXQ7CiAgICAgY2hhciAqdGV4dDsgICAgICAgICAgICAgICAgIC8qIFVURi04LWVuY29kZWQgc3RyaW5nICovCkBAIC02Niw4ICs2OSwxMCBAQAogICAgIHBlcnJkZXRhaWwgKmVycl9yZXQsCiAgICAgaW50ICpmbGFncyk7CiAKLS8qIE5vdGUgdGhhdCBoZSBmb2xsb3dpbmcgZnVuY3Rpb24gaXMgZGVmaW5lZCBpbiBweXRob25ydW4uYyBub3QgcGFyc2V0b2suYy4gKi8KKy8qIE5vdGUgdGhhdCB0aGUgZm9sbG93aW5nIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBweXRob25ydW4uYywKKyAgIG5vdCBpbiBwYXJzZXRvay5jICovCiBQeUFQSV9GVU5DKHZvaWQpIFB5UGFyc2VyX1NldEVycm9yKHBlcnJkZXRhaWwgKik7CitQeUFQSV9GVU5DKHZvaWQpIFB5UGFyc2VyX0NsZWFyRXJyb3IocGVycmRldGFpbCAqKTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQgYS9JbmNsdWRlL3BhdGNobGV2ZWwuaCBiL0luY2x1ZGUvcGF0Y2hsZXZlbC5oCmluZGV4IDFiOGU2ZDQuLjQ5OTZlOGUgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvcGF0Y2hsZXZlbC5oCisrKyBiL0luY2x1ZGUvcGF0Y2hsZXZlbC5oCkBAIC0xNywxOSArMTcsMTUgQEAKIC8qIFZlcnNpb24gcGFyc2VkIG91dCBpbnRvIG51bWVyaWMgdmFsdWVzICovCiAvKi0tc3RhcnQgY29uc3RhbnRzLS0qLwogI2RlZmluZSBQWV9NQUpPUl9WRVJTSU9OCTMKLSNkZWZpbmUgUFlfTUlOT1JfVkVSU0lPTgkyCi0jZGVmaW5lIFBZX01JQ1JPX1ZFUlNJT04JMgotI2RlZmluZSBQWV9SRUxFQVNFX0xFVkVMCVBZX1JFTEVBU0VfTEVWRUxfRklOQUwKKyNkZWZpbmUgUFlfTUlOT1JfVkVSU0lPTgkzCisjZGVmaW5lIFBZX01JQ1JPX1ZFUlNJT04JMAorI2RlZmluZSBQWV9SRUxFQVNFX0xFVkVMCVBZX1JFTEVBU0VfTEVWRUxfQUxQSEEKICNkZWZpbmUgUFlfUkVMRUFTRV9TRVJJQUwJMAogCiAvKiBWZXJzaW9uIGFzIGEgc3RyaW5nICovCi0jZGVmaW5lIFBZX1ZFUlNJT04gICAgICAJIjMuMi4yKyIKKyNkZWZpbmUgUFlfVkVSU0lPTiAgICAgIAkiMy4zLjBhMCIKIC8qLS1lbmQgY29uc3RhbnRzLS0qLwogCi0vKiBTdWJ2ZXJzaW9uIFJldmlzaW9uIG51bWJlciBvZiB0aGlzIGZpbGUgKG5vdCBvZiB0aGUgcmVwb3NpdG9yeSkuIEVtcHR5Ci0gICBzaW5jZSBNZXJjdXJpYWwgbWlncmF0aW9uLiAqLwotI2RlZmluZSBQWV9QQVRDSExFVkVMX1JFVklTSU9OICAiIgotCiAvKiBWZXJzaW9uIGFzIGEgc2luZ2xlIDQtYnl0ZSBoZXggbnVtYmVyLCBlLmcuIDB4MDEwNTAyQjIgPT0gMS41LjJiMi4KICAgIFVzZSB0aGlzIGZvciBudW1lcmljIGNvbXBhcmlzb25zLCBlLmcuICNpZiBQWV9WRVJTSU9OX0hFWCA+PSAuLi4gKi8KICNkZWZpbmUgUFlfVkVSU0lPTl9IRVggKChQWV9NQUpPUl9WRVJTSU9OIDw8IDI0KSB8IFwKZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHlfY3Vyc2VzLmggYi9JbmNsdWRlL3B5X2N1cnNlcy5oCmluZGV4IGE4OTFjNDIuLmYyYzA4ZjYgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvcHlfY3Vyc2VzLmgKKysrIGIvSW5jbHVkZS9weV9jdXJzZXMuaApAQCAtNzYsNiArNzYsNyBAQAogdHlwZWRlZiBzdHJ1Y3QgewogCVB5T2JqZWN0X0hFQUQKIAlXSU5ET1cgKndpbjsKKwljaGFyICplbmNvZGluZzsKIH0gUHlDdXJzZXNXaW5kb3dPYmplY3Q7CiAKICNkZWZpbmUgUHlDdXJzZXNXaW5kb3dfQ2hlY2sodikJIChQeV9UWVBFKHYpID09ICZQeUN1cnNlc1dpbmRvd19UeXBlKQpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9weWRlYnVnLmggYi9JbmNsdWRlL3B5ZGVidWcuaAppbmRleCA3MGM4OGY2Li43MTczZmUzIDEwMDY0NAotLS0gYS9JbmNsdWRlL3B5ZGVidWcuaAorKysgYi9JbmNsdWRlL3B5ZGVidWcuaApAQCAtMTYsNyArMTYsNiBAQAogUHlBUElfREFUQShpbnQpIFB5X1VzZUNsYXNzRXhjZXB0aW9uc0ZsYWc7CiBQeUFQSV9EQVRBKGludCkgUHlfRnJvemVuRmxhZzsKIFB5QVBJX0RBVEEoaW50KSBQeV9JZ25vcmVFbnZpcm9ubWVudEZsYWc7Ci1QeUFQSV9EQVRBKGludCkgUHlfRGl2aXNpb25XYXJuaW5nRmxhZzsKIFB5QVBJX0RBVEEoaW50KSBQeV9Eb250V3JpdGVCeXRlY29kZUZsYWc7CiBQeUFQSV9EQVRBKGludCkgUHlfTm9Vc2VyU2l0ZURpcmVjdG9yeTsKIFB5QVBJX0RBVEEoaW50KSBQeV9VbmJ1ZmZlcmVkU3RkaW9GbGFnOwpAQCAtMjYsOCArMjUsNiBAQAogICAgUFlUSE9OUEFUSCBhbmQgUFlUSE9OSE9NRSBmcm9tIHRoZSBlbnZpcm9ubWVudCAqLwogI2RlZmluZSBQeV9HRVRFTlYocykgKFB5X0lnbm9yZUVudmlyb25tZW50RmxhZyA/IE5VTEwgOiBnZXRlbnYocykpCiAKLVB5QVBJX0ZVTkModm9pZCkgUHlfRmF0YWxFcnJvcihjb25zdCBjaGFyICptZXNzYWdlKTsKLQogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHllcnJvcnMuaCBiL0luY2x1ZGUvcHllcnJvcnMuaAppbmRleCA0YmIzYzAxLi4xYmQwNDQyIDEwMDY0NAotLS0gYS9JbmNsdWRlL3B5ZXJyb3JzLmgKKysrIGIvSW5jbHVkZS9weWVycm9ycy5oCkBAIC00NSwxOCArNDUsMjMgQEAKICAgICBQeU9iamVjdCAqbXllcnJubzsKICAgICBQeU9iamVjdCAqc3RyZXJyb3I7CiAgICAgUHlPYmplY3QgKmZpbGVuYW1lOwotfSBQeUVudmlyb25tZW50RXJyb3JPYmplY3Q7Ci0KICNpZmRlZiBNU19XSU5ET1dTCisgICAgUHlPYmplY3QgKndpbmVycm9yOworI2VuZGlmCisgICAgUHlfc3NpemVfdCB3cml0dGVuOyAgIC8qIG9ubHkgZm9yIEJsb2NraW5nSU9FcnJvciwgLTEgb3RoZXJ3aXNlICovCit9IFB5T1NFcnJvck9iamVjdDsKKwogdHlwZWRlZiBzdHJ1Y3QgewogICAgIFB5RXhjZXB0aW9uX0hFQUQKLSAgICBQeU9iamVjdCAqbXllcnJubzsKLSAgICBQeU9iamVjdCAqc3RyZXJyb3I7Ci0gICAgUHlPYmplY3QgKmZpbGVuYW1lOwotICAgIFB5T2JqZWN0ICp3aW5lcnJvcjsKLX0gUHlXaW5kb3dzRXJyb3JPYmplY3Q7CisgICAgUHlPYmplY3QgKnZhbHVlOworfSBQeVN0b3BJdGVyYXRpb25PYmplY3Q7CisKKy8qIENvbXBhdGliaWxpdHkgdHlwZWRlZnMgKi8KK3R5cGVkZWYgUHlPU0Vycm9yT2JqZWN0IFB5RW52aXJvbm1lbnRFcnJvck9iamVjdDsKKyNpZmRlZiBNU19XSU5ET1dTCit0eXBlZGVmIFB5T1NFcnJvck9iamVjdCBQeVdpbmRvd3NFcnJvck9iamVjdDsKICNlbmRpZgotI2VuZGlmCisjZW5kaWYgLyogIVB5X0xJTUlURURfQVBJICovCiAKIC8qIEVycm9yIGhhbmRsaW5nIGRlZmluaXRpb25zICovCiAKQEAgLTcwLDcgKzc1LDE3IEBACiBQeUFQSV9GVU5DKHZvaWQpIFB5RXJyX0NsZWFyKHZvaWQpOwogUHlBUElfRlVOQyh2b2lkKSBQeUVycl9GZXRjaChQeU9iamVjdCAqKiwgUHlPYmplY3QgKiosIFB5T2JqZWN0ICoqKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlFcnJfUmVzdG9yZShQeU9iamVjdCAqLCBQeU9iamVjdCAqLCBQeU9iamVjdCAqKTsKLVB5QVBJX0ZVTkModm9pZCkgUHlfRmF0YWxFcnJvcihjb25zdCBjaGFyICptZXNzYWdlKTsKKworI2lmIGRlZmluZWQoX19jbGFuZ19fKSB8fCBcCisgICAgKGRlZmluZWQoX19HTlVDX18pICYmIFwKKyAgICAgKChfX0dOVUNfTUFKT1JfXyA+PSAzKSB8fCBcCisgICAgICAoX19HTlVDX01BSk9SX18gPT0gMikgJiYgKF9fR05VQ19NSU5PUl9fID49IDUpKSkKKyNkZWZpbmUgX1B5X05PX1JFVFVSTiBfX2F0dHJpYnV0ZV9fKChfX25vcmV0dXJuX18pKQorI2Vsc2UKKyNkZWZpbmUgX1B5X05PX1JFVFVSTgorI2VuZGlmCisKK1B5QVBJX0ZVTkModm9pZCkgUHlfRmF0YWxFcnJvcihjb25zdCBjaGFyICptZXNzYWdlKSBfUHlfTk9fUkVUVVJOOwogCiAjaWYgZGVmaW5lZChQeV9ERUJVRykgfHwgZGVmaW5lZChQeV9MSU1JVEVEX0FQSSkKICNkZWZpbmUgX1B5RXJyX09DQ1VSUkVEKCkgUHlFcnJfT2NjdXJyZWQoKQpAQCAtMTIyLDEwICsxMzcsOSBAQAogCiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0Fzc2VydGlvbkVycm9yOwogUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19BdHRyaWJ1dGVFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfQnVmZmVyRXJyb3I7CiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0VPRkVycm9yOwogUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19GbG9hdGluZ1BvaW50RXJyb3I7Ci1QeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0Vudmlyb25tZW50RXJyb3I7Ci1QeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0lPRXJyb3I7CiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX09TRXJyb3I7CiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0ltcG9ydEVycm9yOwogUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19JbmRleEVycm9yOwpAQCAtMTUwLDYgKzE2NCwyNyBAQAogUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19Vbmljb2RlVHJhbnNsYXRlRXJyb3I7CiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX1ZhbHVlRXJyb3I7CiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX1plcm9EaXZpc2lvbkVycm9yOworCitQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0Jsb2NraW5nSU9FcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfQnJva2VuUGlwZUVycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19DaGlsZFByb2Nlc3NFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfQ29ubmVjdGlvbkVycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19Db25uZWN0aW9uQWJvcnRlZEVycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19Db25uZWN0aW9uUmVmdXNlZEVycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19Db25uZWN0aW9uUmVzZXRFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfRmlsZUV4aXN0c0Vycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19GaWxlTm90Rm91bmRFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfSW50ZXJydXB0ZWRFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfSXNBRGlyZWN0b3J5RXJyb3I7CitQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX05vdEFEaXJlY3RvcnlFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfUGVybWlzc2lvbkVycm9yOworUHlBUElfREFUQShQeU9iamVjdCAqKSBQeUV4Y19Qcm9jZXNzTG9va3VwRXJyb3I7CitQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX1RpbWVvdXRFcnJvcjsKKworCisvKiBDb21wYXRpYmlsaXR5IGFsaWFzZXMgKi8KK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfRW52aXJvbm1lbnRFcnJvcjsKK1B5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfSU9FcnJvcjsKICNpZmRlZiBNU19XSU5ET1dTCiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX1dpbmRvd3NFcnJvcjsKICNlbmRpZgpAQCAtMTU3LDggKzE5Miw2IEBACiBQeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX1ZNU0Vycm9yOwogI2VuZGlmCiAKLVB5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfQnVmZmVyRXJyb3I7Ci0KIFB5QVBJX0RBVEEoUHlPYmplY3QgKikgUHlFeGNfUmVjdXJzaW9uRXJyb3JJbnN0OwogCiAvKiBQcmVkZWZpbmVkIHdhcm5pbmcgY2F0ZWdvcmllcyAqLwpAQCAtMTk4LDggKzIzMSw2IEBACiAgICAgKTsKIAogI2lmZGVmIE1TX1dJTkRPV1MKLVB5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnJXaXRoRmlsZW5hbWVPYmplY3QoCi0gICAgaW50LCBjb25zdCBjaGFyICopOwogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeUVycl9TZXRGcm9tV2luZG93c0VycldpdGhGaWxlbmFtZSgKICAgICBpbnQgaWVyciwKICAgICBjb25zdCBjaGFyICpmaWxlbmFtZSAgICAgICAgLyogZGVjb2RlZCBmcm9tIHRoZSBmaWxlc3lzdGVtIGVuY29kaW5nICovCkBAIC0yOTMsNiArMzI0LDEyIEBACiAgICAgUHlfc3NpemVfdCBlbmQsCiAgICAgY29uc3QgY2hhciAqcmVhc29uICAgICAgICAgIC8qIFVURi04IGVuY29kZWQgc3RyaW5nICovCiAgICAgKTsKK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0NyZWF0ZSgKKyAgICBQeU9iamVjdCAqb2JqZWN0LAorICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgUHlfc3NpemVfdCBlbmQsCisgICAgY29uc3QgY2hhciAqcmVhc29uICAgICAgICAgIC8qIFVURi04IGVuY29kZWQgc3RyaW5nICovCisgICAgKTsKICNlbmRpZgogCiAvKiBnZXQgdGhlIGVuY29kaW5nIGF0dHJpYnV0ZSAqLwpAQCAtMzQ4LDYgKzM4NSw4IEBACiAgICAgY29uc3QgY2hhciAqcmVhc29uICAgICAgICAgIC8qIFVURi04IGVuY29kZWQgc3RyaW5nICovCiAgICAgKTsKIAorLyogY3JlYXRlIGEgU3RvcEl0ZXJhdGlvbiBleGNlcHRpb24gd2l0aCB0aGUgZ2l2ZW4gdmFsdWUgKi8KK1B5QVBJX0ZVTkMoUHlPYmplY3QgKikgUHlTdG9wSXRlcmF0aW9uX0NyZWF0ZShQeU9iamVjdCAqKTsKIAogLyogVGhlc2UgQVBJcyBhcmVuJ3QgcmVhbGx5IHBhcnQgb2YgdGhlIGVycm9yIGltcGxlbWVudGF0aW9uLCBidXQKICAgIG9mdGVuIG5lZWRlZCB0byBmb3JtYXQgZXJyb3IgbWVzc2FnZXM7IHRoZSBuYXRpdmUgQyBsaWIgQVBJcyBhcmUKZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHltYWNyby5oIGIvSW5jbHVkZS9weW1hY3JvLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWRjMGM2MQotLS0gL2Rldi9udWxsCisrKyBiL0luY2x1ZGUvcHltYWNyby5oCkBAIC0wLDAgKzEsNTUgQEAKKyNpZm5kZWYgUHlfUFlNQUNST19ICisjZGVmaW5lIFB5X1BZTUFDUk9fSAorCisjZGVmaW5lIFB5X01JTih4LCB5KSAoKCh4KSA+ICh5KSkgPyAoeSkgOiAoeCkpCisjZGVmaW5lIFB5X01BWCh4LCB5KSAoKCh4KSA+ICh5KSkgPyAoeCkgOiAoeSkpCisKKy8qIEFyZ3VtZW50IG11c3QgYmUgYSBjaGFyIG9yIGFuIGludCBpbiBbLTEyOCwgMTI3XSBvciBbMCwgMjU1XS4gKi8KKyNkZWZpbmUgUHlfQ0hBUk1BU0soYykgKCh1bnNpZ25lZCBjaGFyKSgoYykgJiAweGZmKSkKKworCisvKiBBc3NlcnQgYSBidWlsZC10aW1lIGRlcGVuZGVuY3ksIGFzIGFuIGV4cHJlc3Npb24uCisKKyAgIFlvdXIgY29tcGlsZSB3aWxsIGZhaWwgaWYgdGhlIGNvbmRpdGlvbiBpc24ndCB0cnVlLCBvciBjYW4ndCBiZSBldmFsdWF0ZWQKKyAgIGJ5IHRoZSBjb21waWxlci4gVGhpcyBjYW4gYmUgdXNlZCBpbiBhbiBleHByZXNzaW9uOiBpdHMgdmFsdWUgaXMgMC4KKworICAgRXhhbXBsZToKKworICAgI2RlZmluZSBmb29fdG9fY2hhcihmb28pICBcCisgICAgICAgKChjaGFyICopKGZvbykgICAgICAgIFwKKyAgICAgICAgKyBQeV9CVUlMRF9BU1NFUlRfRVhQUihvZmZzZXRvZihzdHJ1Y3QgZm9vLCBzdHJpbmcpID09IDApKQorCisgICBXcml0dGVuIGJ5IFJ1c3R5IFJ1c3NlbGwsIHB1YmxpYyBkb21haW4sIGh0dHA6Ly9jY29kZWFyY2hpdmUubmV0LyAqLworI2RlZmluZSBQeV9CVUlMRF9BU1NFUlRfRVhQUihjb25kKSBcCisgICAgKHNpemVvZihjaGFyIFsxIC0gMiohKGNvbmQpXSkgLSAxKQorCisvKiBHZXQgdGhlIG51bWJlciBvZiBlbGVtZW50cyBpbiBhIHZpc2libGUgYXJyYXkKKworICAgVGhpcyBkb2VzIG5vdCB3b3JrIG9uIHBvaW50ZXJzLCBvciBhcnJheXMgZGVjbGFyZWQgYXMgW10sIG9yIGZ1bmN0aW9uCisgICBwYXJhbWV0ZXJzLiBXaXRoIGNvcnJlY3QgY29tcGlsZXIgc3VwcG9ydCwgc3VjaCB1c2FnZSB3aWxsIGNhdXNlIGEgYnVpbGQKKyAgIGVycm9yIChzZWUgUHlfQlVJTERfQVNTRVJUX0VYUFIpLgorCisgICBXcml0dGVuIGJ5IFJ1c3R5IFJ1c3NlbGwsIHB1YmxpYyBkb21haW4sIGh0dHA6Ly9jY29kZWFyY2hpdmUubmV0LyAqLworI2lmIGRlZmluZWQoX19HTlVDX18pCisvKiBUd28gZ2NjIGV4dGVuc2lvbnMuCisgICAmYVswXSBkZWdyYWRlcyB0byBhIHBvaW50ZXI6IGEgZGlmZmVyZW50IHR5cGUgZnJvbSBhbiBhcnJheSAqLworI2RlZmluZSBQeV9BUlJBWV9MRU5HVEgoYXJyYXkpIFwKKyAgICAoc2l6ZW9mKGFycmF5KSAvIHNpemVvZigoYXJyYXkpWzBdKSBcCisgICAgICsgUHlfQlVJTERfQVNTRVJUX0VYUFIoIV9fYnVpbHRpbl90eXBlc19jb21wYXRpYmxlX3AodHlwZW9mKGFycmF5KSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVvZigmKGFycmF5KVswXSkpKSkKKyNlbHNlCisjZGVmaW5lIFB5X0FSUkFZX0xFTkdUSChhcnJheSkgXAorICAgIChzaXplb2YoYXJyYXkpIC8gc2l6ZW9mKChhcnJheSlbMF0pKQorI2VuZGlmCisKKworLyogRGVmaW5lIG1hY3JvcyBmb3IgaW5saW5lIGRvY3VtZW50YXRpb24uICovCisjZGVmaW5lIFB5RG9jX1ZBUihuYW1lKSBzdGF0aWMgY2hhciBuYW1lW10KKyNkZWZpbmUgUHlEb2NfU1RSVkFSKG5hbWUsc3RyKSBQeURvY19WQVIobmFtZSkgPSBQeURvY19TVFIoc3RyKQorI2lmZGVmIFdJVEhfRE9DX1NUUklOR1MKKyNkZWZpbmUgUHlEb2NfU1RSKHN0cikgc3RyCisjZWxzZQorI2RlZmluZSBQeURvY19TVFIoc3RyKSAiIgorI2VuZGlmCisKKyNlbmRpZiAvKiBQeV9QWU1BQ1JPX0ggKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHltYXRoLmggYi9JbmNsdWRlL3B5bWF0aC5oCmluZGV4IGI0ZWRhNjYuLjYyYTZjNDIgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvcHltYXRoLmgKKysrIGIvSW5jbHVkZS9weW1hdGguaApAQCAtMzcsMTIgKzM3LDYgQEAKICNlbmRpZiAvKiBfX1NURENfXyAqLwogI2VuZGlmIC8qIF9NU0NfVkVSICovCiAKLSNpZmRlZiBfT1NGX1NPVVJDRQotLyogT1NGMSA1LjEgZG9lc24ndCBtYWtlIHRoZXNlIGF2YWlsYWJsZSB3aXRoIFhPUEVOX1NPVVJDRV9FWFRFTkRFRCBkZWZpbmVkICovCi1leHRlcm4gaW50IGZpbml0ZShkb3VibGUpOwotZXh0ZXJuIGRvdWJsZSBjb3B5c2lnbihkb3VibGUsIGRvdWJsZSk7Ci0jZW5kaWYKLQogLyogSGlnaCBwcmVjaXNpb24gZGVmaW50aW9uIG9mIHBpIGFuZCBlIChFdWxlcikKICAqIFRoZSB2YWx1ZXMgYXJlIHRha2VuIGZyb20gbGliYzYncyBtYXRoLmguCiAgKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHlwb3J0LmggYi9JbmNsdWRlL3B5cG9ydC5oCmluZGV4IDI2OWJhNjguLjFmZDRkY2MgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvcHlwb3J0LmgKKysrIGIvSW5jbHVkZS9weXBvcnQuaApAQCAtMTM1LDcgKzEzNSw3IEBACiAjZGVmaW5lIF9QeUhBU0hfTVVMVElQTElFUiAxMDAwMDAzICAvKiAweGY0MjQzICovCiAKIC8qIFBhcmFtZXRlcnMgdXNlZCBmb3IgdGhlIG51bWVyaWMgaGFzaCBpbXBsZW1lbnRhdGlvbi4gIFNlZSBub3RlcyBmb3IKLSAgIF9QeUhhc2hfRG91YmxlIGluIE9iamVjdHMvb2JqZWN0LmMuICBOdW1lcmljIGhhc2hlcyBhcmUgYmFzZWQgb24KKyAgIF9QeV9IYXNoRG91YmxlIGluIE9iamVjdHMvb2JqZWN0LmMuICBOdW1lcmljIGhhc2hlcyBhcmUgYmFzZWQgb24KICAgIHJlZHVjdGlvbiBtb2R1bG8gdGhlIHByaW1lIDIqKl9QeUhBU0hfQklUUyAtIDEuICovCiAKICNpZiBTSVpFT0ZfVk9JRF9QID49IDgKZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHlzdGF0ZS5oIGIvSW5jbHVkZS9weXN0YXRlLmgKaW5kZXggYjVmZTFhZC4uMWJiYjRlMiAxMDA2NDQKLS0tIGEvSW5jbHVkZS9weXN0YXRlLmgKKysrIGIvSW5jbHVkZS9weXN0YXRlLmgKQEAgLTc0LDkgKzc0LDkgQEAKICAgICBzdHJ1Y3QgX2ZyYW1lICpmcmFtZTsKICAgICBpbnQgcmVjdXJzaW9uX2RlcHRoOwogICAgIGNoYXIgb3ZlcmZsb3dlZDsgLyogVGhlIHN0YWNrIGhhcyBvdmVyZmxvd2VkLiBBbGxvdyA1MCBtb3JlIGNhbGxzCi0JCSAgICAgICAgdG8gaGFuZGxlIHRoZSBydW50aW1lIGVycm9yLiAqLwotICAgIGNoYXIgcmVjdXJzaW9uX2NyaXRpY2FsOyAvKiBUaGUgY3VycmVudCBjYWxscyBtdXN0IG5vdCBjYXVzZSAKLQkJCQlhIHN0YWNrIG92ZXJmbG93LiAqLworICAgICAgICAgICAgICAgICAgICAgICAgdG8gaGFuZGxlIHRoZSBydW50aW1lIGVycm9yLiAqLworICAgIGNoYXIgcmVjdXJzaW9uX2NyaXRpY2FsOyAvKiBUaGUgY3VycmVudCBjYWxscyBtdXN0IG5vdCBjYXVzZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHN0YWNrIG92ZXJmbG93LiAqLwogICAgIC8qICd0cmFjaW5nJyBrZWVwcyB0cmFjayBvZiB0aGUgZXhlY3V0aW9uIGRlcHRoIHdoZW4gdHJhY2luZy9wcm9maWxpbmcuCiAgICAgICAgVGhpcyBpcyB0byBwcmV2ZW50IHRoZSBhY3R1YWwgdHJhY2UvcHJvZmlsZSBjb2RlIGZyb20gYmVpbmcgcmVjb3JkZWQgaW4KICAgICAgICB0aGUgdHJhY2UvcHJvZmlsZS4gKi8KQEAgLTE2MCw2ICsxNjAsOCBAQAogICAgIGVudW0ge1B5R0lMU3RhdGVfTE9DS0VELCBQeUdJTFN0YXRlX1VOTE9DS0VEfQogICAgICAgICBQeUdJTFN0YXRlX1NUQVRFOwogCisjaWZkZWYgV0lUSF9USFJFQUQKKwogLyogRW5zdXJlIHRoYXQgdGhlIGN1cnJlbnQgdGhyZWFkIGlzIHJlYWR5IHRvIGNhbGwgdGhlIFB5dGhvbgogICAgQyBBUEksIHJlZ2FyZGxlc3Mgb2YgdGhlIGN1cnJlbnQgc3RhdGUgb2YgUHl0aG9uLCBvciBvZiBpdHMKICAgIHRocmVhZCBsb2NrLiAgVGhpcyBtYXkgYmUgY2FsbGVkIGFzIG1hbnkgdGltZXMgYXMgZGVzaXJlZApAQCAtMjAxLDYgKzIwMyw4IEBACiAqLwogUHlBUElfRlVOQyhQeVRocmVhZFN0YXRlICopIFB5R0lMU3RhdGVfR2V0VGhpc1RocmVhZFN0YXRlKHZvaWQpOwogCisjZW5kaWYgICAvKiAjaWZkZWYgV0lUSF9USFJFQUQgKi8KKwogLyogVGhlIGltcGxlbWVudGF0aW9uIG9mIHN5cy5fY3VycmVudF9mcmFtZXMoKSAgUmV0dXJucyBhIGRpY3QgbWFwcGluZwogICAgdGhyZWFkIGlkIHRvIHRoYXQgdGhyZWFkJ3MgY3VycmVudCBmcmFtZS4KICovCmRpZmYgLS1naXQgYS9JbmNsdWRlL3B5dGhvbnJ1bi5oIGIvSW5jbHVkZS9weXRob25ydW4uaAppbmRleCAwMGI0OTcyLi5mYzZjODU0IDEwMDY0NAotLS0gYS9JbmNsdWRlL3B5dGhvbnJ1bi5oCisrKyBiL0luY2x1ZGUvcHl0aG9ucnVuLmgKQEAgLTE3OSw5ICsxNzksNiBAQAogUHlBUElfRlVOQyhjb25zdCBjaGFyICopIFB5X0dldENvbXBpbGVyKHZvaWQpOwogUHlBUElfRlVOQyhjb25zdCBjaGFyICopIFB5X0dldEJ1aWxkSW5mbyh2b2lkKTsKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKLVB5QVBJX0ZVTkMoY29uc3QgY2hhciAqKSBfUHlfc3ZudmVyc2lvbih2b2lkKTsKLVB5QVBJX0ZVTkMoY29uc3QgY2hhciAqKSBQeV9TdWJ2ZXJzaW9uUmV2aXNpb24odm9pZCk7Ci1QeUFQSV9GVU5DKGNvbnN0IGNoYXIgKikgUHlfU3VidmVyc2lvblNob3J0QnJhbmNoKHZvaWQpOwogUHlBUElfRlVOQyhjb25zdCBjaGFyICopIF9QeV9oZ2lkZW50aWZpZXIodm9pZCk7CiBQeUFQSV9GVU5DKGNvbnN0IGNoYXIgKikgX1B5X2hndmVyc2lvbih2b2lkKTsKICNlbmRpZgpAQCAtMjE0LDYgKzIxMSw3IEBACiBQeUFQSV9GVU5DKHZvaWQpIFB5RmxvYXRfRmluaSh2b2lkKTsKIFB5QVBJX0ZVTkModm9pZCkgUHlPU19GaW5pSW50ZXJydXB0cyh2b2lkKTsKIFB5QVBJX0ZVTkModm9pZCkgX1B5R0NfRmluaSh2b2lkKTsKK1B5QVBJX0ZVTkModm9pZCkgUHlTbGljZV9GaW5pKHZvaWQpOwogCiBQeUFQSV9EQVRBKFB5VGhyZWFkU3RhdGUgKikgX1B5X0ZpbmFsaXppbmc7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL0luY2x1ZGUvcHl0aHJlYWQuaCBiL0luY2x1ZGUvcHl0aHJlYWQuaAppbmRleCA5ODA2YzYxLi42ZTlmMzAzIDEwMDY0NAotLS0gYS9JbmNsdWRlL3B5dGhyZWFkLmgKKysrIGIvSW5jbHVkZS9weXRocmVhZC5oCkBAIC0zMiw3ICszMiw3IEBACiAgICBvbiBhIGxvY2sgKHNlZSBQeVRocmVhZF9hY3F1aXJlX2xvY2tfdGltZWQoKSBiZWxvdykuCiAgICBQWV9USU1FT1VUX01BWCBpcyB0aGUgaGlnaGVzdCB1c2FibGUgdmFsdWUgKGluIG1pY3Jvc2Vjb25kcykgb2YgdGhhdAogICAgdHlwZSwgYW5kIGRlcGVuZHMgb24gdGhlIHN5c3RlbSB0aHJlYWRpbmcgQVBJLgotICAgCisKICAgIE5PVEU6IHRoaXMgaXNuJ3QgdGhlIHNhbWUgdmFsdWUgYXMgYF90aHJlYWQuVElNRU9VVF9NQVhgLiAgVGhlIF90aHJlYWQKICAgIG1vZHVsZSBleHBvc2VzIGEgaGlnaGVyLWxldmVsIEFQSSwgd2l0aCB0aW1lb3V0cyBleHByZXNzZWQgaW4gc2Vjb25kcwogICAgYW5kIGZsb2F0aW5nLXBvaW50IG51bWJlcnMgYWxsb3dlZC4KQEAgLTc0LDYgKzc0LDggQEAKIFB5QVBJX0ZVTkMoc2l6ZV90KSBQeVRocmVhZF9nZXRfc3RhY2tzaXplKHZvaWQpOwogUHlBUElfRlVOQyhpbnQpIFB5VGhyZWFkX3NldF9zdGFja3NpemUoc2l6ZV90KTsKIAorUHlBUElfRlVOQyhQeU9iamVjdCopIFB5VGhyZWFkX0dldEluZm8odm9pZCk7CisKIC8qIFRocmVhZCBMb2NhbCBTdG9yYWdlIChUTFMpIEFQSSAqLwogUHlBUElfRlVOQyhpbnQpIFB5VGhyZWFkX2NyZWF0ZV9rZXkodm9pZCk7CiBQeUFQSV9GVU5DKHZvaWQpIFB5VGhyZWFkX2RlbGV0ZV9rZXkoaW50KTsKZGlmZiAtLWdpdCBhL0luY2x1ZGUvc2V0b2JqZWN0LmggYi9JbmNsdWRlL3NldG9iamVjdC5oCmluZGV4IDYyMzQxMTEuLjAwZTUzNDQgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvc2V0b2JqZWN0LmgKKysrIGIvSW5jbHVkZS9zZXRvYmplY3QuaApAQCAtOTksNiArOTksOCBAQAogUHlBUElfRlVOQyhQeU9iamVjdCAqKSBQeVNldF9Qb3AoUHlPYmplY3QgKnNldCk7CiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCiBQeUFQSV9GVU5DKGludCkgX1B5U2V0X1VwZGF0ZShQeU9iamVjdCAqc2V0LCBQeU9iamVjdCAqaXRlcmFibGUpOworCitQeUFQSV9GVU5DKGludCkgUHlTZXRfQ2xlYXJGcmVlTGlzdCh2b2lkKTsKICNlbmRpZgogCiAjaWZkZWYgX19jcGx1c3BsdXMKZGlmZiAtLWdpdCBhL0luY2x1ZGUvc3ltdGFibGUuaCBiL0luY2x1ZGUvc3ltdGFibGUuaAppbmRleCBmZDdkZTA0Li44MmY2MjY5IDEwMDY0NAotLS0gYS9JbmNsdWRlL3N5bXRhYmxlLmgKKysrIGIvSW5jbHVkZS9zeW10YWJsZS5oCkBAIC0yMywxMCArMjMsMTMgQEAKICAgICBQeU9iamVjdCAqc3RfYmxvY2tzOyAgICAgICAgICAgIC8qIGRpY3Q6IG1hcCBBU1Qgbm9kZSBhZGRyZXNzZXMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqICAgICAgIHRvIHN5bWJvbCB0YWJsZSBlbnRyaWVzICovCiAgICAgUHlPYmplY3QgKnN0X3N0YWNrOyAgICAgICAgICAgICAvKiBsaXN0OiBzdGFjayBvZiBuYW1lc3BhY2UgaW5mbyAqLwotICAgIFB5T2JqZWN0ICpzdF9nbG9iYWw7ICAgICAgICAgICAgLyogYm9ycm93ZWQgcmVmIHRvIHN0X3RvcC0+c3Rfc3ltYm9scyAqLwotICAgIGludCBzdF9uYmxvY2tzOyAgICAgICAgICAgICAgICAgLyogbnVtYmVyIG9mIGJsb2NrcyB1c2VkICovCisgICAgUHlPYmplY3QgKnN0X2dsb2JhbDsgICAgICAgICAgICAvKiBib3Jyb3dlZCByZWYgdG8gc3RfdG9wLT5zdGVfc3ltYm9scyAqLworICAgIGludCBzdF9uYmxvY2tzOyAgICAgICAgICAgICAgICAgLyogbnVtYmVyIG9mIGJsb2NrcyB1c2VkLiBrZXB0IGZvcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc2lzdGVuY3kgd2l0aCB0aGUgY29ycmVzcG9uZGluZworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZXIgc3RydWN0dXJlICovCiAgICAgUHlPYmplY3QgKnN0X3ByaXZhdGU7ICAgICAgICAgICAvKiBuYW1lIG9mIGN1cnJlbnQgY2xhc3Mgb3IgTlVMTCAqLwotICAgIFB5RnV0dXJlRmVhdHVyZXMgKnN0X2Z1dHVyZTsgICAgLyogbW9kdWxlJ3MgZnV0dXJlIGZlYXR1cmVzICovCisgICAgUHlGdXR1cmVGZWF0dXJlcyAqc3RfZnV0dXJlOyAgICAvKiBtb2R1bGUncyBmdXR1cmUgZmVhdHVyZXMgdGhhdCBhZmZlY3QKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBzeW1ib2wgdGFibGUgKi8KIH07CiAKIHR5cGVkZWYgc3RydWN0IF9zeW10YWJsZV9lbnRyeSB7CkBAIC0zNCw3ICszNyw3IEBACiAgICAgUHlPYmplY3QgKnN0ZV9pZDsgICAgICAgIC8qIGludDoga2V5IGluIHN0ZV90YWJsZS0+c3RfYmxvY2tzICovCiAgICAgUHlPYmplY3QgKnN0ZV9zeW1ib2xzOyAgIC8qIGRpY3Q6IHZhcmlhYmxlIG5hbWVzIHRvIGZsYWdzICovCiAgICAgUHlPYmplY3QgKnN0ZV9uYW1lOyAgICAgIC8qIHN0cmluZzogbmFtZSBvZiBjdXJyZW50IGJsb2NrICovCi0gICAgUHlPYmplY3QgKnN0ZV92YXJuYW1lczsgIC8qIGxpc3Qgb2YgdmFyaWFibGUgbmFtZXMgKi8KKyAgICBQeU9iamVjdCAqc3RlX3Zhcm5hbWVzOyAgLyogbGlzdCBvZiBmdW5jdGlvbiBwYXJhbWV0ZXJzICovCiAgICAgUHlPYmplY3QgKnN0ZV9jaGlsZHJlbjsgIC8qIGxpc3Qgb2YgY2hpbGQgYmxvY2tzICovCiAgICAgX1B5X2Jsb2NrX3R5IHN0ZV90eXBlOyAgIC8qIG1vZHVsZSwgY2xhc3MsIG9yIGZ1bmN0aW9uICovCiAgICAgaW50IHN0ZV91bm9wdGltaXplZDsgICAgIC8qIGZhbHNlIGlmIG5hbWVzcGFjZSBpcyBvcHRpbWl6ZWQgKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvdHJhY2ViYWNrLmggYi9JbmNsdWRlL3RyYWNlYmFjay5oCmluZGV4IDY5ZTNkMDUuLjc3MzQ3MDcgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvdHJhY2ViYWNrLmgKKysrIGIvSW5jbHVkZS90cmFjZWJhY2suaApAQCAtNSw2ICs1LDggQEAKIGV4dGVybiAiQyIgewogI2VuZGlmCiAKKyNpbmNsdWRlICJweXN0YXRlLmgiCisKIHN0cnVjdCBfZnJhbWU7CiAKIC8qIFRyYWNlYmFjayBpbnRlcmZhY2UgKi8KQEAgLTI4LDYgKzMwLDQyIEBACiBQeUFQSV9EQVRBKFB5VHlwZU9iamVjdCkgUHlUcmFjZUJhY2tfVHlwZTsKICNkZWZpbmUgUHlUcmFjZUJhY2tfQ2hlY2sodikgKFB5X1RZUEUodikgPT0gJlB5VHJhY2VCYWNrX1R5cGUpCiAKKy8qIFdyaXRlIHRoZSBQeXRob24gdHJhY2ViYWNrIGludG8gdGhlIGZpbGUgJ2ZkJy4gRm9yIGV4YW1wbGU6CisKKyAgICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgZmlyc3QpOgorICAgICAgICAgRmlsZSAieHh4IiwgbGluZSB4eHggaW4gPHh4eD4KKyAgICAgICAgIEZpbGUgInh4eCIsIGxpbmUgeHh4IGluIDx4eHg+CisgICAgICAgICAuLi4KKyAgICAgICAgIEZpbGUgInh4eCIsIGxpbmUgeHh4IGluIDx4eHg+CisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgd3JpdHRlbiBmb3IgZGVidWcgcHVycG9zZSBvbmx5LCB0byBkdW1wIHRoZSB0cmFjZWJhY2sgaW4KKyAgIHRoZSB3b3JzdCBjYXNlOiBhZnRlciBhIHNlZ21lbnRhdGlvbiBmYXVsdCwgYXQgZmF0YWwgZXJyb3IsIGV0Yy4gVGhhdCdzIHdoeSwKKyAgIGl0IGlzIHZlcnkgbGltaXRlZC4gU3RyaW5ncyBhcmUgdHJ1bmNhdGVkIHRvIDEwMCBjaGFyYWN0ZXJzIGFuZCBlbmNvZGVkIHRvCisgICBBU0NJSSB3aXRoIGJhY2tzbGFzaHJlcGxhY2UuIEl0IGRvZXNuJ3Qgd3JpdGUgdGhlIHNvdXJjZSBjb2RlLCBvbmx5IHRoZQorICAgZnVuY3Rpb24gbmFtZSwgZmlsZW5hbWUgYW5kIGxpbmUgbnVtYmVyIG9mIGVhY2ggZnJhbWUuIFdyaXRlIG9ubHkgdGhlIGZpcnN0CisgICAxMDAgZnJhbWVzOiBpZiB0aGUgdHJhY2ViYWNrIGlzIHRydW5jYXRlZCwgd3JpdGUgdGhlIGxpbmUgIiAuLi4iLgorCisgICBUaGlzIGZ1bmN0aW9uIGlzIHNpZ25hbCBzYWZlLiAqLworCitQeUFQSV9EQVRBKHZvaWQpIF9QeV9EdW1wVHJhY2ViYWNrKAorICAgIGludCBmZCwKKyAgICBQeVRocmVhZFN0YXRlICp0c3RhdGUpOworCisvKiBXcml0ZSB0aGUgdHJhY2ViYWNrIG9mIGFsbCB0aHJlYWRzIGludG8gdGhlIGZpbGUgJ2ZkJy4gY3VycmVudF90aHJlYWQgY2FuIGJlCisgICBOVUxMLiBSZXR1cm4gTlVMTCBvbiBzdWNjZXNzLCBvciBhbiBlcnJvciBtZXNzYWdlIG9uIGVycm9yLgorCisgICBUaGlzIGZ1bmN0aW9uIGlzIHdyaXR0ZW4gZm9yIGRlYnVnIHB1cnBvc2Ugb25seS4gSXQgY2FsbHMKKyAgIF9QeV9EdW1wVHJhY2ViYWNrKCkgZm9yIGVhY2ggdGhyZWFkLCBhbmQgc28gaGFzIHRoZSBzYW1lIGxpbWl0YXRpb25zLiBJdAorICAgb25seSB3cml0ZSB0aGUgdHJhY2ViYWNrIG9mIHRoZSBmaXJzdCAxMDAgdGhyZWFkczogd3JpdGUgIi4uLiIgaWYgdGhlcmUgYXJlCisgICBtb3JlIHRocmVhZHMuCisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgc2lnbmFsIHNhZmUuICovCisKK1B5QVBJX0RBVEEoY29uc3QgY2hhciopIF9QeV9EdW1wVHJhY2ViYWNrVGhyZWFkcygKKyAgICBpbnQgZmQsIFB5SW50ZXJwcmV0ZXJTdGF0ZSAqaW50ZXJwLAorICAgIFB5VGhyZWFkU3RhdGUgKmN1cnJlbnRfdGhyZWFkKTsKKworCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvSW5jbHVkZS91Y25oYXNoLmggYi9JbmNsdWRlL3Vjbmhhc2guaAppbmRleCA3MGZkZjEzLi44ZGU5YmEwIDEwMDY0NAotLS0gYS9JbmNsdWRlL3Vjbmhhc2guaAorKysgYi9JbmNsdWRlL3Vjbmhhc2guaApAQCAtMTksMTEgKzE5LDEzIEBACiAgICAgICAgc3VjY2VzcywgemVybyBpZiBub3QuICBEb2VzIG5vdCBzZXQgUHl0aG9uIGV4Y2VwdGlvbnMuIAogICAgICAgIElmIHNlbGYgaXMgTlVMTCwgZGF0YSBjb21lIGZyb20gdGhlIGRlZmF1bHQgdmVyc2lvbiBvZiB0aGUgZGF0YWJhc2UuCiAgICAgICAgSWYgaXQgaXMgbm90IE5VTEwsIGl0IHNob3VsZCBiZSBhIHVuaWNvZGVkYXRhLnVjZF9YX1lfWiBvYmplY3QgKi8KLSAgICBpbnQgKCpnZXRuYW1lKShQeU9iamVjdCAqc2VsZiwgUHlfVUNTNCBjb2RlLCBjaGFyKiBidWZmZXIsIGludCBidWZsZW4pOworICAgIGludCAoKmdldG5hbWUpKFB5T2JqZWN0ICpzZWxmLCBQeV9VQ1M0IGNvZGUsIGNoYXIqIGJ1ZmZlciwgaW50IGJ1ZmxlbiwKKyAgICAgICAgICAgICAgICAgICBpbnQgd2l0aF9hbGlhc19hbmRfc2VxKTsKIAogICAgIC8qIEdldCBjaGFyYWN0ZXIgY29kZSBmb3IgYSBnaXZlbiBuYW1lLiAgU2FtZSBlcnJvciBoYW5kbGluZwogICAgICAgIGFzIGZvciBnZXRuYW1lLiAqLwotICAgIGludCAoKmdldGNvZGUpKFB5T2JqZWN0ICpzZWxmLCBjb25zdCBjaGFyKiBuYW1lLCBpbnQgbmFtZWxlbiwgUHlfVUNTNCogY29kZSk7CisgICAgaW50ICgqZ2V0Y29kZSkoUHlPYmplY3QgKnNlbGYsIGNvbnN0IGNoYXIqIG5hbWUsIGludCBuYW1lbGVuLCBQeV9VQ1M0KiBjb2RlLAorICAgICAgICAgICAgICAgICAgIGludCB3aXRoX25hbWVkX3NlcSk7CiAKIH0gX1B5VW5pY29kZV9OYW1lX0NBUEk7CiAKZGlmZiAtLWdpdCBhL0luY2x1ZGUvdW5pY29kZW9iamVjdC5oIGIvSW5jbHVkZS91bmljb2Rlb2JqZWN0LmgKaW5kZXggMzc5YTkwYy4uNmQ1ODBmNCAxMDA2NDQKLS0tIGEvSW5jbHVkZS91bmljb2Rlb2JqZWN0LmgKKysrIGIvSW5jbHVkZS91bmljb2Rlb2JqZWN0LmgKQEAgLTY0LDE2ICs2NCwxNSBAQAogLyogUHl0aG9uIDMueCByZXF1aXJlcyB1bmljb2RlICovCiAjZGVmaW5lIFB5X1VTSU5HX1VOSUNPREUKIAotLyogRklYTUU6IE12TCdzIG5ldyBpbXBsZW1lbnRhdGlvbiBhc3N1bWVzIHRoYXQgUHlfVU5JQ09ERV9TSVpFIGlzCi0gICBwcm9wZXJseSBzZXQsIGJ1dCB0aGUgZGVmYXVsdCBydWxlcyBiZWxvdyBkb2Vzbid0IHNldCBpdC4gIEknbGwKLSAgIHNvcnQgdGhpcyBvdXQgc29tZSBvdGhlciBkYXkgLS0gZnJlZHJpa0BweXRob253YXJlLmNvbSAqLwotCi0jaWZuZGVmIFB5X1VOSUNPREVfU0laRQotI2Vycm9yIE11c3QgZGVmaW5lIFB5X1VOSUNPREVfU0laRQorI2lmbmRlZiBTSVpFT0ZfV0NIQVJfVAorI2Vycm9yIE11c3QgZGVmaW5lIFNJWkVPRl9XQ0hBUl9UCiAjZW5kaWYKIAotLyogU2V0dGluZyBQeV9VTklDT0RFX1dJREUgZW5hYmxlcyBVQ1MtNCBzdG9yYWdlLiAgT3RoZXJ3aXNlLCBVbmljb2RlCi0gICBzdHJpbmdzIGFyZSBzdG9yZWQgYXMgVUNTLTIgKHdpdGggbGltaXRlZCBzdXBwb3J0IGZvciBVVEYtMTYpICovCisjZGVmaW5lIFB5X1VOSUNPREVfU0laRSBTSVpFT0ZfV0NIQVJfVAorCisvKiBJZiB3Y2hhcl90IGNhbiBiZSB1c2VkIGZvciBVQ1MtNCBzdG9yYWdlLCBzZXQgUHlfVU5JQ09ERV9XSURFLgorICAgT3RoZXJ3aXNlLCBVbmljb2RlIHN0cmluZ3MgYXJlIHN0b3JlZCBhcyBVQ1MtMiAod2l0aCBsaW1pdGVkIHN1cHBvcnQKKyAgIGZvciBVVEYtMTYpICovCiAKICNpZiBQeV9VTklDT0RFX1NJWkUgPj0gNAogI2RlZmluZSBQeV9VTklDT0RFX1dJREUKQEAgLTg0LDE5ICs4MywxNCBAQAogLyogI2RlZmluZSBIQVZFX1dDSEFSX0ggKi8KIC8qICNkZWZpbmUgSEFWRV9VU0FCTEVfV0NIQVJfVCAqLwogCi0vKiBEZWZhdWx0cyBmb3IgdmFyaW91cyBwbGF0Zm9ybXMgKi8KLSNpZm5kZWYgUFlfVU5JQ09ERV9UWVBFCisvKiBQeV9VTklDT0RFIHdhcyB0aGUgbmF0aXZlIFVuaWNvZGUgc3RvcmFnZSBmb3JtYXQgKGNvZGUgdW5pdCkgdXNlZCBieQorICAgUHl0aG9uIGFuZCByZXByZXNlbnRzIGEgc2luZ2xlIFVuaWNvZGUgZWxlbWVudCBpbiB0aGUgVW5pY29kZSB0eXBlLgorICAgV2l0aCBQRVAgMzkzLCBQeV9VTklDT0RFIGlzIGRlcHJlY2F0ZWQgYW5kIHJlcGxhY2VkIHdpdGggYQorICAgdHlwZWRlZiB0byB3Y2hhcl90LiAqLwogCi0vKiBXaW5kb3dzIGhhcyBhIHVzYWJsZSB3Y2hhcl90IHR5cGUgKHVubGVzcyB3ZSdyZSB1c2luZyBVQ1MtNCkgKi8KLSMgaWYgZGVmaW5lZChNU19XSU4zMikgJiYgUHlfVU5JQ09ERV9TSVpFID09IDIKLSMgIGRlZmluZSBIQVZFX1VTQUJMRV9XQ0hBUl9UCi0jICBkZWZpbmUgUFlfVU5JQ09ERV9UWVBFIHdjaGFyX3QKLSMgZW5kaWYKLQotIyBpZiBkZWZpbmVkKFB5X1VOSUNPREVfV0lERSkKLSMgIGRlZmluZSBQWV9VTklDT0RFX1RZUEUgUHlfVUNTNAotIyBlbmRpZgotCisjaWZuZGVmIFB5X0xJTUlURURfQVBJCisjZGVmaW5lIFBZX1VOSUNPREVfVFlQRSB3Y2hhcl90Cit0eXBlZGVmIHdjaGFyX3QgUHlfVU5JQ09ERTsKICNlbmRpZgogCiAvKiBJZiB0aGUgY29tcGlsZXIgcHJvdmlkZXMgYSB3Y2hhcl90IHR5cGUgd2UgdHJ5IHRvIHN1cHBvcnQgaXQKQEAgLTEwOSw2ICsxMDMsMTAgQEAKICMgZW5kaWYKICNlbmRpZgogCisjaWYgZGVmaW5lZChNU19XSU5ET1dTKQorIyAgZGVmaW5lIEhBVkVfTUJDUworI2VuZGlmCisKICNpZmRlZiBIQVZFX1dDSEFSX0gKIC8qIFdvcmsgYXJvdW5kIGEgY29zbWV0aWMgYnVnIGluIEJTREkgNC54IHdjaGFyLmg7IHRoYW5rcyB0byBUaG9tYXMgV291dGVycyAqLwogIyBpZmRlZiBfSEFWRV9CU0RJCkBAIC0xMTcsMjAxICsxMTUsMjQgQEAKICMgIGluY2x1ZGUgPHdjaGFyLmg+CiAjZW5kaWYKIAotLyoKLSAqIFVzZSB0aGlzIHR5cGVkZWYgd2hlbiB5b3UgbmVlZCB0byByZXByZXNlbnQgYSBVVEYtMTYgc3Vycm9nYXRlIHBhaXIKLSAqIGFzIHNpbmdsZSB1bnNpZ25lZCBpbnRlZ2VyLgotICovCi0jaWYgU0laRU9GX0lOVCA+PSA0CisvKiBQeV9VQ1M0IGFuZCBQeV9VQ1MyIGFyZSB0eXBlZGVmcyBmb3IgdGhlIHJlc3BlY3RpdmUKKyAgIHVuaWNvZGUgcmVwcmVzZW50YXRpb25zLiAqLworI2lmIFNJWkVPRl9JTlQgPT0gNAogdHlwZWRlZiB1bnNpZ25lZCBpbnQgUHlfVUNTNDsKLSNlbGlmIFNJWkVPRl9MT05HID49IDQKKyNlbGlmIFNJWkVPRl9MT05HID09IDQKIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBQeV9VQ1M0OwotI2VuZGlmCi0KLS8qIFB5X1VOSUNPREUgaXMgdGhlIG5hdGl2ZSBVbmljb2RlIHN0b3JhZ2UgZm9ybWF0IChjb2RlIHVuaXQpIHVzZWQgYnkKLSAgIFB5dGhvbiBhbmQgcmVwcmVzZW50cyBhIHNpbmdsZSBVbmljb2RlIGVsZW1lbnQgaW4gdGhlIFVuaWNvZGUKLSAgIHR5cGUuICovCi0KLSNpZm5kZWYgUHlfTElNSVRFRF9BUEkKLXR5cGVkZWYgUFlfVU5JQ09ERV9UWVBFIFB5X1VOSUNPREU7Ci0jZW5kaWYKLQotLyogLS0tIFVDUy0yL1VDUy00IE5hbWUgTWFuZ2xpbmcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCi0KLS8qIFVuaWNvZGUgQVBJIG5hbWVzIGFyZSBtYW5nbGVkIHRvIGFzc3VyZSB0aGF0IFVDUy0yIGFuZCBVQ1MtNCBidWlsZHMKLSAgIHByb2R1Y2UgZGlmZmVyZW50IGV4dGVybmFsIG5hbWVzIGFuZCB0aHVzIGNhdXNlIGltcG9ydCBlcnJvcnMgaW4KLSAgIGNhc2UgUHl0aG9uIGludGVycHJldGVycyBhbmQgZXh0ZW5zaW9ucyB3aXRoIG1peGVkIGNvbXBpbGVkIGluCi0gICBVbmljb2RlIHdpZHRoIGFzc3VtcHRpb25zIGFyZSBjb21iaW5lZC4gKi8KLQotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLQotIyBkZWZpbmUgUHlVbmljb2RlX0FzQVNDSUlTdHJpbmcgUHlVbmljb2RlVUNTMl9Bc0FTQ0lJU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNDaGFybWFwU3RyaW5nIFB5VW5pY29kZVVDUzJfQXNDaGFybWFwU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNEZWNvZGVkT2JqZWN0IFB5VW5pY29kZVVDUzJfQXNEZWNvZGVkT2JqZWN0Ci0jIGRlZmluZSBQeVVuaWNvZGVfQXNEZWNvZGVkVW5pY29kZSBQeVVuaWNvZGVVQ1MyX0FzRGVjb2RlZFVuaWNvZGUKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0VuY29kZWRPYmplY3QgUHlVbmljb2RlVUNTMl9Bc0VuY29kZWRPYmplY3QKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcgUHlVbmljb2RlVUNTMl9Bc0VuY29kZWRTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0VuY29kZWRVbmljb2RlIFB5VW5pY29kZVVDUzJfQXNFbmNvZGVkVW5pY29kZQotIyBkZWZpbmUgUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nIFB5VW5pY29kZVVDUzJfQXNMYXRpbjFTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmcgUHlVbmljb2RlVUNTMl9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1VURjMyU3RyaW5nIFB5VW5pY29kZVVDUzJfQXNVVEYzMlN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0FzVVRGMTZTdHJpbmcgUHlVbmljb2RlVUNTMl9Bc1VURjE2U3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNVVEY4U3RyaW5nIFB5VW5pY29kZVVDUzJfQXNVVEY4U3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNVbmljb2RlIFB5VW5pY29kZVVDUzJfQXNVbmljb2RlCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nIFB5VW5pY29kZVVDUzJfQXNVbmljb2RlRXNjYXBlU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNXaWRlQ2hhciBQeVVuaWNvZGVVQ1MyX0FzV2lkZUNoYXIKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1dpZGVDaGFyU3RyaW5nIFB5VW5pY29kZVVDUzJfQXNXaWRlQ2hhclN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0NsZWFyRnJlZUxpc3QgUHlVbmljb2RlVUNTMl9DbGVhckZyZWVsaXN0Ci0jIGRlZmluZSBQeVVuaWNvZGVfQ29tcGFyZSBQeVVuaWNvZGVVQ1MyX0NvbXBhcmUKLSMgZGVmaW5lIFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nIFB5VW5pY29kZVVDUzJfQ29tcGFyZVdpdGhBU0NJSVN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0NvbmNhdCBQeVVuaWNvZGVVQ1MyX0NvbmNhdAotIyBkZWZpbmUgUHlVbmljb2RlX0FwcGVuZCBQeVVuaWNvZGVVQ1MyX0FwcGVuZAotIyBkZWZpbmUgUHlVbmljb2RlX0FwcGVuZEFuZERlbCBQeVVuaWNvZGVVQ1MyX0FwcGVuZEFuZERlbAotIyBkZWZpbmUgUHlVbmljb2RlX0NvbnRhaW5zIFB5VW5pY29kZVVDUzJfQ29udGFpbnMKLSMgZGVmaW5lIFB5VW5pY29kZV9Db3VudCBQeVVuaWNvZGVVQ1MyX0NvdW50Ci0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlIFB5VW5pY29kZVVDUzJfRGVjb2RlCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlQVNDSUkgUHlVbmljb2RlVUNTMl9EZWNvZGVBU0NJSQotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZUNoYXJtYXAgUHlVbmljb2RlVUNTMl9EZWNvZGVDaGFybWFwCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlTGF0aW4xIFB5VW5pY29kZVVDUzJfRGVjb2RlTGF0aW4xCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0IFB5VW5pY29kZVVDUzJfRGVjb2RlRlNEZWZhdWx0Ci0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZSBQeVVuaWNvZGVVQ1MyX0RlY29kZUZTRGVmYXVsdEFuZFNpemUKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVSYXdVbmljb2RlRXNjYXBlIFB5VW5pY29kZVVDUzJfRGVjb2RlUmF3VW5pY29kZUVzY2FwZQotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVVURjMyIFB5VW5pY29kZVVDUzJfRGVjb2RlVVRGMzIKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVVVEYzMlN0YXRlZnVsIFB5VW5pY29kZVVDUzJfRGVjb2RlVVRGMzJTdGF0ZWZ1bAotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVVURjE2IFB5VW5pY29kZVVDUzJfRGVjb2RlVVRGMTYKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVVVEYxNlN0YXRlZnVsIFB5VW5pY29kZVVDUzJfRGVjb2RlVVRGMTZTdGF0ZWZ1bAotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVVURjggUHlVbmljb2RlVUNTMl9EZWNvZGVVVEY4Ci0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlVVRGOFN0YXRlZnVsIFB5VW5pY29kZVVDUzJfRGVjb2RlVVRGOFN0YXRlZnVsCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlVW5pY29kZUVzY2FwZSBQeVVuaWNvZGVVQ1MyX0RlY29kZVVuaWNvZGVFc2NhcGUKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGUgUHlVbmljb2RlVUNTMl9FbmNvZGUKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVBU0NJSSBQeVVuaWNvZGVVQ1MyX0VuY29kZUFTQ0lJCi0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlQ2hhcm1hcCBQeVVuaWNvZGVVQ1MyX0VuY29kZUNoYXJtYXAKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVEZWNpbWFsIFB5VW5pY29kZVVDUzJfRW5jb2RlRGVjaW1hbAotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZUxhdGluMSBQeVVuaWNvZGVVQ1MyX0VuY29kZUxhdGluMQotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGUgUHlVbmljb2RlVUNTMl9FbmNvZGVSYXdVbmljb2RlRXNjYXBlCi0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlVVRGMzIgUHlVbmljb2RlVUNTMl9FbmNvZGVVVEYzMgotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZVVURjE2IFB5VW5pY29kZVVDUzJfRW5jb2RlVVRGMTYKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVVVEY4IFB5VW5pY29kZVVDUzJfRW5jb2RlVVRGOAotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZVVuaWNvZGVFc2NhcGUgUHlVbmljb2RlVUNTMl9FbmNvZGVVbmljb2RlRXNjYXBlCi0jIGRlZmluZSBQeVVuaWNvZGVfRmluZCBQeVVuaWNvZGVVQ1MyX0ZpbmQKLSMgZGVmaW5lIFB5VW5pY29kZV9Gb3JtYXQgUHlVbmljb2RlVUNTMl9Gb3JtYXQKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tRW5jb2RlZE9iamVjdCBQeVVuaWNvZGVVQ1MyX0Zyb21FbmNvZGVkT2JqZWN0Ci0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbUZvcm1hdCBQeVVuaWNvZGVVQ1MyX0Zyb21Gb3JtYXQKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tRm9ybWF0ViBQeVVuaWNvZGVVQ1MyX0Zyb21Gb3JtYXRWCi0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbU9iamVjdCBQeVVuaWNvZGVVQ1MyX0Zyb21PYmplY3QKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tT3JkaW5hbCBQeVVuaWNvZGVVQ1MyX0Zyb21PcmRpbmFsCi0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbVN0cmluZyBQeVVuaWNvZGVVQ1MyX0Zyb21TdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZSBQeVVuaWNvZGVVQ1MyX0Zyb21TdHJpbmdBbmRTaXplCi0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUgUHlVbmljb2RlVUNTMl9Gcm9tVW5pY29kZQotIyBkZWZpbmUgUHlVbmljb2RlX0Zyb21XaWRlQ2hhciBQeVVuaWNvZGVVQ1MyX0Zyb21XaWRlQ2hhcgotIyBkZWZpbmUgUHlVbmljb2RlX0ZTQ29udmVydGVyIFB5VW5pY29kZVVDUzJfRlNDb252ZXJ0ZXIKLSMgZGVmaW5lIFB5VW5pY29kZV9GU0RlY29kZXIgUHlVbmljb2RlVUNTMl9GU0RlY29kZXIKLSMgZGVmaW5lIFB5VW5pY29kZV9HZXREZWZhdWx0RW5jb2RpbmcgUHlVbmljb2RlVUNTMl9HZXREZWZhdWx0RW5jb2RpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9HZXRNYXggUHlVbmljb2RlVUNTMl9HZXRNYXgKLSMgZGVmaW5lIFB5VW5pY29kZV9HZXRTaXplIFB5VW5pY29kZVVDUzJfR2V0U2l6ZQotIyBkZWZpbmUgUHlVbmljb2RlX0lzSWRlbnRpZmllciBQeVVuaWNvZGVVQ1MyX0lzSWRlbnRpZmllcgotIyBkZWZpbmUgUHlVbmljb2RlX0pvaW4gUHlVbmljb2RlVUNTMl9Kb2luCi0jIGRlZmluZSBQeVVuaWNvZGVfUGFydGl0aW9uIFB5VW5pY29kZVVDUzJfUGFydGl0aW9uCi0jIGRlZmluZSBQeVVuaWNvZGVfUlBhcnRpdGlvbiBQeVVuaWNvZGVVQ1MyX1JQYXJ0aXRpb24KLSMgZGVmaW5lIFB5VW5pY29kZV9SU3BsaXQgUHlVbmljb2RlVUNTMl9SU3BsaXQKLSMgZGVmaW5lIFB5VW5pY29kZV9SZXBsYWNlIFB5VW5pY29kZVVDUzJfUmVwbGFjZQotIyBkZWZpbmUgUHlVbmljb2RlX1Jlc2l6ZSBQeVVuaWNvZGVVQ1MyX1Jlc2l6ZQotIyBkZWZpbmUgUHlVbmljb2RlX1JpY2hDb21wYXJlIFB5VW5pY29kZVVDUzJfUmljaENvbXBhcmUKLSMgZGVmaW5lIFB5VW5pY29kZV9TcGxpdCBQeVVuaWNvZGVVQ1MyX1NwbGl0Ci0jIGRlZmluZSBQeVVuaWNvZGVfU3BsaXRsaW5lcyBQeVVuaWNvZGVVQ1MyX1NwbGl0bGluZXMKLSMgZGVmaW5lIFB5VW5pY29kZV9UYWlsbWF0Y2ggUHlVbmljb2RlVUNTMl9UYWlsbWF0Y2gKLSMgZGVmaW5lIFB5VW5pY29kZV9UcmFuc2xhdGUgUHlVbmljb2RlVUNTMl9UcmFuc2xhdGUKLSMgZGVmaW5lIFB5VW5pY29kZV9UcmFuc2xhdGVDaGFybWFwIFB5VW5pY29kZVVDUzJfVHJhbnNsYXRlQ2hhcm1hcAotIyBkZWZpbmUgX1B5VW5pY29kZV9Bc0RlZmF1bHRFbmNvZGVkU3RyaW5nIF9QeVVuaWNvZGVVQ1MyX0FzRGVmYXVsdEVuY29kZWRTdHJpbmcKLSMgZGVmaW5lIF9QeVVuaWNvZGVfRmluaSBfUHlVbmljb2RlVUNTMl9GaW5pCi0jIGRlZmluZSBfUHlVbmljb2RlX0luaXQgX1B5VW5pY29kZVVDUzJfSW5pdAotIyBkZWZpbmUgUHlVbmljb2RlX3N0cmR1cCBQeVVuaWNvZGVVQ1MyX3N0cmR1cAotCiAjZWxzZQotCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNBU0NJSVN0cmluZyBQeVVuaWNvZGVVQ1M0X0FzQVNDSUlTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0NoYXJtYXBTdHJpbmcgUHlVbmljb2RlVUNTNF9Bc0NoYXJtYXBTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0RlY29kZWRPYmplY3QgUHlVbmljb2RlVUNTNF9Bc0RlY29kZWRPYmplY3QKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc0RlY29kZWRVbmljb2RlIFB5VW5pY29kZVVDUzRfQXNEZWNvZGVkVW5pY29kZQotIyBkZWZpbmUgUHlVbmljb2RlX0FzRW5jb2RlZE9iamVjdCBQeVVuaWNvZGVVQ1M0X0FzRW5jb2RlZE9iamVjdAotIyBkZWZpbmUgUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZyBQeVVuaWNvZGVVQ1M0X0FzRW5jb2RlZFN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0FzRW5jb2RlZFVuaWNvZGUgUHlVbmljb2RlVUNTNF9Bc0VuY29kZWRVbmljb2RlCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNMYXRpbjFTdHJpbmcgUHlVbmljb2RlVUNTNF9Bc0xhdGluMVN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0FzUmF3VW5pY29kZUVzY2FwZVN0cmluZyBQeVVuaWNvZGVVQ1M0X0FzUmF3VW5pY29kZUVzY2FwZVN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0FzVVRGMzJTdHJpbmcgUHlVbmljb2RlVUNTNF9Bc1VURjMyU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQXNVVEYxNlN0cmluZyBQeVVuaWNvZGVVQ1M0X0FzVVRGMTZTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1VURjhTdHJpbmcgUHlVbmljb2RlVUNTNF9Bc1VURjhTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1VuaWNvZGUgUHlVbmljb2RlVUNTNF9Bc1VuaWNvZGUKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1VuaWNvZGVFc2NhcGVTdHJpbmcgUHlVbmljb2RlVUNTNF9Bc1VuaWNvZGVFc2NhcGVTdHJpbmcKLSMgZGVmaW5lIFB5VW5pY29kZV9Bc1dpZGVDaGFyIFB5VW5pY29kZVVDUzRfQXNXaWRlQ2hhcgotIyBkZWZpbmUgUHlVbmljb2RlX0FzV2lkZUNoYXJTdHJpbmcgUHlVbmljb2RlVUNTNF9Bc1dpZGVDaGFyU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQ2xlYXJGcmVlTGlzdCBQeVVuaWNvZGVVQ1M0X0NsZWFyRnJlZWxpc3QKLSMgZGVmaW5lIFB5VW5pY29kZV9Db21wYXJlIFB5VW5pY29kZVVDUzRfQ29tcGFyZQotIyBkZWZpbmUgUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcgUHlVbmljb2RlVUNTNF9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nCi0jIGRlZmluZSBQeVVuaWNvZGVfQ29uY2F0IFB5VW5pY29kZVVDUzRfQ29uY2F0Ci0jIGRlZmluZSBQeVVuaWNvZGVfQXBwZW5kIFB5VW5pY29kZVVDUzRfQXBwZW5kCi0jIGRlZmluZSBQeVVuaWNvZGVfQXBwZW5kQW5kRGVsIFB5VW5pY29kZVVDUzRfQXBwZW5kQW5kRGVsCi0jIGRlZmluZSBQeVVuaWNvZGVfQ29udGFpbnMgUHlVbmljb2RlVUNTNF9Db250YWlucwotIyBkZWZpbmUgUHlVbmljb2RlX0NvdW50IFB5VW5pY29kZVVDUzRfQ291bnQKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGUgUHlVbmljb2RlVUNTNF9EZWNvZGUKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVBU0NJSSBQeVVuaWNvZGVVQ1M0X0RlY29kZUFTQ0lJCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlQ2hhcm1hcCBQeVVuaWNvZGVVQ1M0X0RlY29kZUNoYXJtYXAKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVMYXRpbjEgUHlVbmljb2RlVUNTNF9EZWNvZGVMYXRpbjEKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQgUHlVbmljb2RlVUNTNF9EZWNvZGVGU0RlZmF1bHQKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHRBbmRTaXplIFB5VW5pY29kZVVDUzRfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZQotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVJhd1VuaWNvZGVFc2NhcGUgUHlVbmljb2RlVUNTNF9EZWNvZGVSYXdVbmljb2RlRXNjYXBlCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlVVRGMzIgUHlVbmljb2RlVUNTNF9EZWNvZGVVVEYzMgotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVVURjMyU3RhdGVmdWwgUHlVbmljb2RlVUNTNF9EZWNvZGVVVEYzMlN0YXRlZnVsCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlVVRGMTYgUHlVbmljb2RlVUNTNF9EZWNvZGVVVEYxNgotIyBkZWZpbmUgUHlVbmljb2RlX0RlY29kZVVURjE2U3RhdGVmdWwgUHlVbmljb2RlVUNTNF9EZWNvZGVVVEYxNlN0YXRlZnVsCi0jIGRlZmluZSBQeVVuaWNvZGVfRGVjb2RlVVRGOCBQeVVuaWNvZGVVQ1M0X0RlY29kZVVURjgKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWwgUHlVbmljb2RlVUNTNF9EZWNvZGVVVEY4U3RhdGVmdWwKLSMgZGVmaW5lIFB5VW5pY29kZV9EZWNvZGVVbmljb2RlRXNjYXBlIFB5VW5pY29kZVVDUzRfRGVjb2RlVW5pY29kZUVzY2FwZQotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZSBQeVVuaWNvZGVVQ1M0X0VuY29kZQotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZUFTQ0lJIFB5VW5pY29kZVVDUzRfRW5jb2RlQVNDSUkKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVDaGFybWFwIFB5VW5pY29kZVVDUzRfRW5jb2RlQ2hhcm1hcAotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZURlY2ltYWwgUHlVbmljb2RlVUNTNF9FbmNvZGVEZWNpbWFsCi0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlTGF0aW4xIFB5VW5pY29kZVVDUzRfRW5jb2RlTGF0aW4xCi0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlUmF3VW5pY29kZUVzY2FwZSBQeVVuaWNvZGVVQ1M0X0VuY29kZVJhd1VuaWNvZGVFc2NhcGUKLSMgZGVmaW5lIFB5VW5pY29kZV9FbmNvZGVVVEYzMiBQeVVuaWNvZGVVQ1M0X0VuY29kZVVURjMyCi0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlVVRGMTYgUHlVbmljb2RlVUNTNF9FbmNvZGVVVEYxNgotIyBkZWZpbmUgUHlVbmljb2RlX0VuY29kZVVURjggUHlVbmljb2RlVUNTNF9FbmNvZGVVVEY4Ci0jIGRlZmluZSBQeVVuaWNvZGVfRW5jb2RlVW5pY29kZUVzY2FwZSBQeVVuaWNvZGVVQ1M0X0VuY29kZVVuaWNvZGVFc2NhcGUKLSMgZGVmaW5lIFB5VW5pY29kZV9GaW5kIFB5VW5pY29kZVVDUzRfRmluZAotIyBkZWZpbmUgUHlVbmljb2RlX0Zvcm1hdCBQeVVuaWNvZGVVQ1M0X0Zvcm1hdAotIyBkZWZpbmUgUHlVbmljb2RlX0Zyb21FbmNvZGVkT2JqZWN0IFB5VW5pY29kZVVDUzRfRnJvbUVuY29kZWRPYmplY3QKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tRm9ybWF0IFB5VW5pY29kZVVDUzRfRnJvbUZvcm1hdAotIyBkZWZpbmUgUHlVbmljb2RlX0Zyb21Gb3JtYXRWIFB5VW5pY29kZVVDUzRfRnJvbUZvcm1hdFYKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tT2JqZWN0IFB5VW5pY29kZVVDUzRfRnJvbU9iamVjdAotIyBkZWZpbmUgUHlVbmljb2RlX0Zyb21PcmRpbmFsIFB5VW5pY29kZVVDUzRfRnJvbU9yZGluYWwKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tU3RyaW5nIFB5VW5pY29kZVVDUzRfRnJvbVN0cmluZwotIyBkZWZpbmUgUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplIFB5VW5pY29kZVVDUzRfRnJvbVN0cmluZ0FuZFNpemUKLSMgZGVmaW5lIFB5VW5pY29kZV9Gcm9tVW5pY29kZSBQeVVuaWNvZGVVQ1M0X0Zyb21Vbmljb2RlCi0jIGRlZmluZSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyIFB5VW5pY29kZVVDUzRfRnJvbVdpZGVDaGFyCi0jIGRlZmluZSBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIgUHlVbmljb2RlVUNTNF9GU0NvbnZlcnRlcgotIyBkZWZpbmUgUHlVbmljb2RlX0ZTRGVjb2RlciBQeVVuaWNvZGVVQ1M0X0ZTRGVjb2RlcgotIyBkZWZpbmUgUHlVbmljb2RlX0dldERlZmF1bHRFbmNvZGluZyBQeVVuaWNvZGVVQ1M0X0dldERlZmF1bHRFbmNvZGluZwotIyBkZWZpbmUgUHlVbmljb2RlX0dldE1heCBQeVVuaWNvZGVVQ1M0X0dldE1heAotIyBkZWZpbmUgUHlVbmljb2RlX0dldFNpemUgUHlVbmljb2RlVUNTNF9HZXRTaXplCi0jIGRlZmluZSBQeVVuaWNvZGVfSXNJZGVudGlmaWVyIFB5VW5pY29kZVVDUzRfSXNJZGVudGlmaWVyCi0jIGRlZmluZSBQeVVuaWNvZGVfSm9pbiBQeVVuaWNvZGVVQ1M0X0pvaW4KLSMgZGVmaW5lIFB5VW5pY29kZV9QYXJ0aXRpb24gUHlVbmljb2RlVUNTNF9QYXJ0aXRpb24KLSMgZGVmaW5lIFB5VW5pY29kZV9SUGFydGl0aW9uIFB5VW5pY29kZVVDUzRfUlBhcnRpdGlvbgotIyBkZWZpbmUgUHlVbmljb2RlX1JTcGxpdCBQeVVuaWNvZGVVQ1M0X1JTcGxpdAotIyBkZWZpbmUgUHlVbmljb2RlX1JlcGxhY2UgUHlVbmljb2RlVUNTNF9SZXBsYWNlCi0jIGRlZmluZSBQeVVuaWNvZGVfUmVzaXplIFB5VW5pY29kZVVDUzRfUmVzaXplCi0jIGRlZmluZSBQeVVuaWNvZGVfUmljaENvbXBhcmUgUHlVbmljb2RlVUNTNF9SaWNoQ29tcGFyZQotIyBkZWZpbmUgUHlVbmljb2RlX1NwbGl0IFB5VW5pY29kZVVDUzRfU3BsaXQKLSMgZGVmaW5lIFB5VW5pY29kZV9TcGxpdGxpbmVzIFB5VW5pY29kZVVDUzRfU3BsaXRsaW5lcwotIyBkZWZpbmUgUHlVbmljb2RlX1RhaWxtYXRjaCBQeVVuaWNvZGVVQ1M0X1RhaWxtYXRjaAotIyBkZWZpbmUgUHlVbmljb2RlX1RyYW5zbGF0ZSBQeVVuaWNvZGVVQ1M0X1RyYW5zbGF0ZQotIyBkZWZpbmUgUHlVbmljb2RlX1RyYW5zbGF0ZUNoYXJtYXAgUHlVbmljb2RlVUNTNF9UcmFuc2xhdGVDaGFybWFwCi0jIGRlZmluZSBfUHlVbmljb2RlX0FzRGVmYXVsdEVuY29kZWRTdHJpbmcgX1B5VW5pY29kZVVDUzRfQXNEZWZhdWx0RW5jb2RlZFN0cmluZwotIyBkZWZpbmUgX1B5VW5pY29kZV9GaW5pIF9QeVVuaWNvZGVVQ1M0X0ZpbmkKLSMgZGVmaW5lIF9QeVVuaWNvZGVfSW5pdCBfUHlVbmljb2RlVUNTNF9Jbml0Ci0jIGRlZmluZSBQeVVuaWNvZGVfc3RyZHVwIFB5VW5pY29kZVVDUzRfc3RyZHVwCi0KKyNlcnJvciAiQ291bGQgbm90IGZpbmQgYSBwcm9wZXIgdHlwZWRlZiBmb3IgUHlfVUNTNCIKICNlbmRpZgogCisjaWYgU0laRU9GX1NIT1JUID09IDIKK3R5cGVkZWYgdW5zaWduZWQgc2hvcnQgUHlfVUNTMjsKKyNlbHNlCisjZXJyb3IgIkNvdWxkIG5vdCBmaW5kIGEgcHJvcGVyIHR5cGVkZWYgZm9yIFB5X1VDUzIiCisjZW5kaWYKKwordHlwZWRlZiB1bnNpZ25lZCBjaGFyIFB5X1VDUzE7CisKIC8qIC0tLSBJbnRlcm5hbCBVbmljb2RlIE9wZXJhdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCiAvKiBTaW5jZSBzcGxpdHRpbmcgb24gd2hpdGVzcGFjZSBpcyBhbiBpbXBvcnRhbnQgdXNlIGNhc2UsIGFuZApAQCAtMzUwLDcgKzE3MSw3IEBACiAgICAgUHlfVU5JQ09ERV9JU0RJR0lUKGNoKSB8fCBcCiAgICAgUHlfVU5JQ09ERV9JU05VTUVSSUMoY2gpKQogCi0jZGVmaW5lIFB5X1VOSUNPREVfQ09QWSh0YXJnZXQsIHNvdXJjZSwgbGVuZ3RoKSAgICAgICAgICAgICAgICAgICAgICAgICBcCisjZGVmaW5lIFB5X1VOSUNPREVfQ09QWSh0YXJnZXQsIHNvdXJjZSwgbGVuZ3RoKSBcCiAgICAgUHlfTUVNQ1BZKCh0YXJnZXQpLCAoc291cmNlKSwgKGxlbmd0aCkqc2l6ZW9mKFB5X1VOSUNPREUpKQogCiAjZGVmaW5lIFB5X1VOSUNPREVfRklMTCh0YXJnZXQsIHZhbHVlLCBsZW5ndGgpIFwKQEAgLTM1OCwxMyArMTc5LDI3IEBACiAgICAgZm9yIChpXyA9IDA7IGlfIDwgKGxlbmd0aCk7IGlfKyspIHRfW2lfXSA9IHZfO1wKICAgICB9IHdoaWxlICgwKQogCisvKiBtYWNyb3MgdG8gd29yayB3aXRoIHN1cnJvZ2F0ZXMgKi8KKyNkZWZpbmUgUHlfVU5JQ09ERV9JU19TVVJST0dBVEUoY2gpICgweEQ4MDAgPD0gY2ggJiYgY2ggPD0gMHhERkZGKQorI2RlZmluZSBQeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFKGNoKSAoMHhEODAwIDw9IGNoICYmIGNoIDw9IDB4REJGRikKKyNkZWZpbmUgUHlfVU5JQ09ERV9JU19MT1dfU1VSUk9HQVRFKGNoKSAoMHhEQzAwIDw9IGNoICYmIGNoIDw9IDB4REZGRikKKy8qIEpvaW4gdHdvIHN1cnJvZ2F0ZSBjaGFyYWN0ZXJzIGFuZCByZXR1cm4gYSBzaW5nbGUgUHlfVUNTNCB2YWx1ZS4gKi8KKyNkZWZpbmUgUHlfVU5JQ09ERV9KT0lOX1NVUlJPR0FURVMoaGlnaCwgbG93KSAgXAorICAgICgoKCgoUHlfVUNTNCkoaGlnaCkgJiAweDAzRkYpIDw8IDEwKSB8ICAgICAgXAorICAgICAgKChQeV9VQ1M0KShsb3cpICYgMHgwM0ZGKSkgKyAweDEwMDAwKQorLyogaGlnaCBzdXJyb2dhdGUgPSB0b3AgMTAgYml0cyBhZGRlZCB0byBEODAwICovCisjZGVmaW5lIFB5X1VOSUNPREVfSElHSF9TVVJST0dBVEUoY2gpICgweEQ4MDAgfCAoKChjaCkgLSAweDEwMDAwKSA+PiAxMCkpCisvKiBsb3cgc3Vycm9nYXRlID0gYm90dG9tIDEwIGJpdHMgYWRkZWQgdG8gREMwMCAqLworI2RlZmluZSBQeV9VTklDT0RFX0xPV19TVVJST0dBVEUoY2gpICgweERDMDAgfCAoKChjaCkgLSAweDEwMDAwKSAmIDB4M0ZGKSkKKwogLyogQ2hlY2sgaWYgc3Vic3RyaW5nIG1hdGNoZXMgYXQgZ2l2ZW4gb2Zmc2V0LiAgVGhlIG9mZnNldCBtdXN0IGJlCiAgICB2YWxpZCwgYW5kIHRoZSBzdWJzdHJpbmcgbXVzdCBub3QgYmUgZW1wdHkuICovCiAKICNkZWZpbmUgUHlfVU5JQ09ERV9NQVRDSChzdHJpbmcsIG9mZnNldCwgc3Vic3RyaW5nKSBcCi0gICAgKCgqKChzdHJpbmcpLT5zdHIgKyAob2Zmc2V0KSkgPT0gKigoc3Vic3RyaW5nKS0+c3RyKSkgJiYgXAotICAgICgoKigoc3RyaW5nKS0+c3RyICsgKG9mZnNldCkgKyAoc3Vic3RyaW5nKS0+bGVuZ3RoLTEpID09ICooKHN1YnN0cmluZyktPnN0ciArIChzdWJzdHJpbmcpLT5sZW5ndGgtMSkpKSAmJiBcCi0gICAgICFtZW1jbXAoKHN0cmluZyktPnN0ciArIChvZmZzZXQpLCAoc3Vic3RyaW5nKS0+c3RyLCAoc3Vic3RyaW5nKS0+bGVuZ3RoKnNpemVvZihQeV9VTklDT0RFKSkpCisgICAgKCgqKChzdHJpbmcpLT53c3RyICsgKG9mZnNldCkpID09ICooKHN1YnN0cmluZyktPndzdHIpKSAmJiBcCisgICAgICgoKigoc3RyaW5nKS0+d3N0ciArIChvZmZzZXQpICsgKHN1YnN0cmluZyktPndzdHJfbGVuZ3RoLTEpID09ICooKHN1YnN0cmluZyktPndzdHIgKyAoc3Vic3RyaW5nKS0+d3N0cl9sZW5ndGgtMSkpKSAmJiBcCisgICAgICFtZW1jbXAoKHN0cmluZyktPndzdHIgKyAob2Zmc2V0KSwgKHN1YnN0cmluZyktPndzdHIsIChzdWJzdHJpbmcpLT53c3RyX2xlbmd0aCpzaXplb2YoUHlfVU5JQ09ERSkpKQorCiAjZW5kaWYgLyogUHlfTElNSVRFRF9BUEkgKi8KIAogI2lmZGVmIF9fY3BsdXNwbHVzCkBAIC0zNzQsNDEgKzIwOSwzNzcgQEAKIC8qIC0tLSBVbmljb2RlIFR5cGUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCisKKy8qIEFTQ0lJLW9ubHkgc3RyaW5ncyBjcmVhdGVkIHRocm91Z2ggUHlVbmljb2RlX05ldyB1c2UgdGhlIFB5QVNDSUlPYmplY3QKKyAgIHN0cnVjdHVyZS4gc3RhdGUuYXNjaWkgYW5kIHN0YXRlLmNvbXBhY3QgYXJlIHNldCwgYW5kIHRoZSBkYXRhCisgICBpbW1lZGlhdGVseSBmb2xsb3cgdGhlIHN0cnVjdHVyZS4gdXRmOF9sZW5ndGggYW5kIHdzdHJfbGVuZ3RoIGNhbiBiZSBmb3VuZAorICAgaW4gdGhlIGxlbmd0aCBmaWVsZDsgdGhlIHV0ZjggcG9pbnRlciBpcyBlcXVhbCB0byB0aGUgZGF0YSBwb2ludGVyLiAqLwogdHlwZWRlZiBzdHJ1Y3QgeworICAgIC8qIFRoZXJlIGFyZSA0IGZvcm1zIG9mIFVuaWNvZGUgc3RyaW5nczoKKworICAgICAgIC0gY29tcGFjdCBhc2NpaToKKworICAgICAgICAgKiBzdHJ1Y3R1cmUgPSBQeUFTQ0lJT2JqZWN0CisgICAgICAgICAqIHRlc3Q6IFB5VW5pY29kZV9JU19DT01QQUNUX0FTQ0lJKG9wKQorICAgICAgICAgKiBraW5kID0gUHlVbmljb2RlXzFCWVRFX0tJTkQKKyAgICAgICAgICogY29tcGFjdCA9IDEKKyAgICAgICAgICogYXNjaWkgPSAxCisgICAgICAgICAqIHJlYWR5ID0gMQorICAgICAgICAgKiAobGVuZ3RoIGlzIHRoZSBsZW5ndGggb2YgdGhlIHV0ZjggYW5kIHdzdHIgc3RyaW5ncykKKyAgICAgICAgICogKGRhdGEgc3RhcnRzIGp1c3QgYWZ0ZXIgdGhlIHN0cnVjdHVyZSkKKyAgICAgICAgICogKHNpbmNlIEFTQ0lJIGlzIGRlY29kZWQgZnJvbSBVVEYtOCwgdGhlIHV0Zjggc3RyaW5nIGFyZSB0aGUgZGF0YSkKKworICAgICAgIC0gY29tcGFjdDoKKworICAgICAgICAgKiBzdHJ1Y3R1cmUgPSBQeUNvbXBhY3RVbmljb2RlT2JqZWN0CisgICAgICAgICAqIHRlc3Q6IFB5VW5pY29kZV9JU19DT01QQUNUKG9wKSAmJiAhUHlVbmljb2RlX0lTX0FTQ0lJKG9wKQorICAgICAgICAgKiBraW5kID0gUHlVbmljb2RlXzFCWVRFX0tJTkQsIFB5VW5pY29kZV8yQllURV9LSU5EIG9yCisgICAgICAgICAgIFB5VW5pY29kZV80QllURV9LSU5ECisgICAgICAgICAqIGNvbXBhY3QgPSAxCisgICAgICAgICAqIHJlYWR5ID0gMQorICAgICAgICAgKiBhc2NpaSA9IDAKKyAgICAgICAgICogdXRmOCBpcyBub3Qgc2hhcmVkIHdpdGggZGF0YQorICAgICAgICAgKiB1dGY4X2xlbmd0aCA9IDAgaWYgdXRmOCBpcyBOVUxMCisgICAgICAgICAqIHdzdHIgaXMgc2hhcmVkIHdpdGggZGF0YSBhbmQgd3N0cl9sZW5ndGg9bGVuZ3RoCisgICAgICAgICAgIGlmIGtpbmQ9UHlVbmljb2RlXzJCWVRFX0tJTkQgYW5kIHNpemVvZih3Y2hhcl90KT0yCisgICAgICAgICAgIG9yIGlmIGtpbmQ9UHlVbmljb2RlXzRCWVRFX0tJTkQgYW5kIHNpemVvZih3Y2hhcl90KT00CisgICAgICAgICAqIHdzdHJfbGVuZ3RoID0gMCBpZiB3c3RyIGlzIE5VTEwKKyAgICAgICAgICogKGRhdGEgc3RhcnRzIGp1c3QgYWZ0ZXIgdGhlIHN0cnVjdHVyZSkKKworICAgICAgIC0gbGVnYWN5IHN0cmluZywgbm90IHJlYWR5OgorCisgICAgICAgICAqIHN0cnVjdHVyZSA9IFB5VW5pY29kZU9iamVjdAorICAgICAgICAgKiB0ZXN0OiBraW5kID09IFB5VW5pY29kZV9XQ0hBUl9LSU5ECisgICAgICAgICAqIGxlbmd0aCA9IDAgKHVzZSB3c3RyX2xlbmd0aCkKKyAgICAgICAgICogaGFzaCA9IC0xCisgICAgICAgICAqIGtpbmQgPSBQeVVuaWNvZGVfV0NIQVJfS0lORAorICAgICAgICAgKiBjb21wYWN0ID0gMAorICAgICAgICAgKiBhc2NpaSA9IDAKKyAgICAgICAgICogcmVhZHkgPSAwCisgICAgICAgICAqIGludGVybmVkID0gU1NUQVRFX05PVF9JTlRFUk5FRAorICAgICAgICAgKiB3c3RyIGlzIG5vdCBOVUxMCisgICAgICAgICAqIGRhdGEuYW55IGlzIE5VTEwKKyAgICAgICAgICogdXRmOCBpcyBOVUxMCisgICAgICAgICAqIHV0ZjhfbGVuZ3RoID0gMAorCisgICAgICAgLSBsZWdhY3kgc3RyaW5nLCByZWFkeToKKworICAgICAgICAgKiBzdHJ1Y3R1cmUgPSBQeVVuaWNvZGVPYmplY3Qgc3RydWN0dXJlCisgICAgICAgICAqIHRlc3Q6ICFQeVVuaWNvZGVfSVNfQ09NUEFDVChvcCkgJiYga2luZCAhPSBQeVVuaWNvZGVfV0NIQVJfS0lORAorICAgICAgICAgKiBraW5kID0gUHlVbmljb2RlXzFCWVRFX0tJTkQsIFB5VW5pY29kZV8yQllURV9LSU5EIG9yCisgICAgICAgICAgIFB5VW5pY29kZV80QllURV9LSU5ECisgICAgICAgICAqIGNvbXBhY3QgPSAwCisgICAgICAgICAqIHJlYWR5ID0gMQorICAgICAgICAgKiBkYXRhLmFueSBpcyBub3QgTlVMTAorICAgICAgICAgKiB1dGY4IGlzIHNoYXJlZCBhbmQgdXRmOF9sZW5ndGggPSBsZW5ndGggd2l0aCBkYXRhLmFueSBpZiBhc2NpaSA9IDEKKyAgICAgICAgICogdXRmOF9sZW5ndGggPSAwIGlmIHV0ZjggaXMgTlVMTAorICAgICAgICAgKiB3c3RyIGlzIHNoYXJlZCB3aXRoIGRhdGEuYW55IGFuZCB3c3RyX2xlbmd0aCA9IGxlbmd0aAorICAgICAgICAgICBpZiBraW5kPVB5VW5pY29kZV8yQllURV9LSU5EIGFuZCBzaXplb2Yod2NoYXJfdCk9MgorICAgICAgICAgICBvciBpZiBraW5kPVB5VW5pY29kZV80QllURV9LSU5EIGFuZCBzaXplb2Yod2NoYXJfNCk9NAorICAgICAgICAgKiB3c3RyX2xlbmd0aCA9IDAgaWYgd3N0ciBpcyBOVUxMCisKKyAgICAgICBDb21wYWN0IHN0cmluZ3MgdXNlIG9ubHkgb25lIG1lbW9yeSBibG9jayAoc3RydWN0dXJlICsgY2hhcmFjdGVycyksCisgICAgICAgd2hlcmVhcyBsZWdhY3kgc3RyaW5ncyB1c2Ugb25lIGJsb2NrIGZvciB0aGUgc3RydWN0dXJlIGFuZCBvbmUgYmxvY2sKKyAgICAgICBmb3IgY2hhcmFjdGVycy4KKworICAgICAgIExlZ2FjeSBzdHJpbmdzIGFyZSBjcmVhdGVkIGJ5IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgpIGFuZAorICAgICAgIFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBzaXplKSBmdW5jdGlvbnMuIFRoZXkgYmVjb21lIHJlYWR5CisgICAgICAgd2hlbiBQeVVuaWNvZGVfUkVBRFkoKSBpcyBjYWxsZWQuCisKKyAgICAgICBTZWUgYWxzbyBfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3koKS4KKyAgICAqLwogICAgIFB5T2JqZWN0X0hFQUQKLSAgICBQeV9zc2l6ZV90IGxlbmd0aDsgICAgICAgICAgLyogTGVuZ3RoIG9mIHJhdyBVbmljb2RlIGRhdGEgaW4gYnVmZmVyICovCi0gICAgUHlfVU5JQ09ERSAqc3RyOyAgICAgICAgICAgIC8qIFJhdyBVbmljb2RlIGJ1ZmZlciAqLworICAgIFB5X3NzaXplX3QgbGVuZ3RoOyAgICAgICAgICAvKiBOdW1iZXIgb2YgY29kZSBwb2ludHMgaW4gdGhlIHN0cmluZyAqLwogICAgIFB5X2hhc2hfdCBoYXNoOyAgICAgICAgICAgICAvKiBIYXNoIHZhbHVlOyAtMSBpZiBub3Qgc2V0ICovCi0gICAgaW50IHN0YXRlOyAgICAgICAgICAgICAgICAgIC8qICE9IDAgaWYgaW50ZXJuZWQuIEluIHRoaXMgY2FzZSB0aGUgdHdvCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqIHJlZmVyZW5jZXMgZnJvbSB0aGUgZGljdGlvbmFyeSB0byB0aGlzIG9iamVjdAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiBhcmUgKm5vdCogY291bnRlZCBpbiBvYl9yZWZjbnQuICovCi0gICAgUHlPYmplY3QgKmRlZmVuYzsgICAgICAgICAgIC8qIChEZWZhdWx0KSBFbmNvZGVkIHZlcnNpb24gYXMgUHl0aG9uCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZywgb3IgTlVMTDsgdGhpcyBpcyB1c2VkIGZvcgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbXBsZW1lbnRpbmcgdGhlIGJ1ZmZlciBwcm90b2NvbCAqLworICAgIHN0cnVjdCB7CisgICAgICAgIC8qCisgICAgICAgICAgIFNTVEFURV9OT1RfSU5URVJORUQgKDApCisgICAgICAgICAgIFNTVEFURV9JTlRFUk5FRF9NT1JUQUwgKDEpCisgICAgICAgICAgIFNTVEFURV9JTlRFUk5FRF9JTU1PUlRBTCAoMikKKworICAgICAgICAgICBJZiBpbnRlcm5lZCAhPSBTU1RBVEVfTk9UX0lOVEVSTkVELCB0aGUgdHdvIHJlZmVyZW5jZXMgZnJvbSB0aGUKKyAgICAgICAgICAgZGljdGlvbmFyeSB0byB0aGlzIG9iamVjdCBhcmUgKm5vdCogY291bnRlZCBpbiBvYl9yZWZjbnQuCisgICAgICAgICAqLworICAgICAgICB1bnNpZ25lZCBpbnQgaW50ZXJuZWQ6MjsKKyAgICAgICAgLyogQ2hhcmFjdGVyIHNpemU6CisKKyAgICAgICAgICAgLSBQeVVuaWNvZGVfV0NIQVJfS0lORCAoMCk6CisKKyAgICAgICAgICAgICAqIGNoYXJhY3RlciB0eXBlID0gd2NoYXJfdCAoMTYgb3IgMzIgYml0cywgZGVwZW5kaW5nIG9uIHRoZQorICAgICAgICAgICAgICAgcGxhdGZvcm0pCisKKyAgICAgICAgICAgLSBQeVVuaWNvZGVfMUJZVEVfS0lORCAoMSk6CisKKyAgICAgICAgICAgICAqIGNoYXJhY3RlciB0eXBlID0gUHlfVUNTMSAoOCBiaXRzLCB1bnNpZ25lZCkKKyAgICAgICAgICAgICAqIGFsbCBjaGFyYWN0ZXJzIGFyZSBpbiB0aGUgcmFuZ2UgVSswMDAwLVUrMDBGRiAobGF0aW4xKQorICAgICAgICAgICAgICogaWYgYXNjaWkgaXMgc2V0LCBhbGwgY2hhcmFjdGVycyBhcmUgaW4gdGhlIHJhbmdlIFUrMDAwMC1VKzAwN0YKKyAgICAgICAgICAgICAgIChBU0NJSSksIG90aGVyd2lzZSBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyIGlzIGluIHRoZSByYW5nZQorICAgICAgICAgICAgICAgVSswMDgwLVUrMDBGRgorCisgICAgICAgICAgIC0gUHlVbmljb2RlXzJCWVRFX0tJTkQgKDIpOgorCisgICAgICAgICAgICAgKiBjaGFyYWN0ZXIgdHlwZSA9IFB5X1VDUzIgKDE2IGJpdHMsIHVuc2lnbmVkKQorICAgICAgICAgICAgICogYWxsIGNoYXJhY3RlcnMgYXJlIGluIHRoZSByYW5nZSBVKzAwMDAtVStGRkZGIChCTVApCisgICAgICAgICAgICAgKiBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyIGlzIGluIHRoZSByYW5nZSBVKzAxMDAtVStGRkZGCisKKyAgICAgICAgICAgLSBQeVVuaWNvZGVfNEJZVEVfS0lORCAoNCk6CisKKyAgICAgICAgICAgICAqIGNoYXJhY3RlciB0eXBlID0gUHlfVUNTNCAoMzIgYml0cywgdW5zaWduZWQpCisgICAgICAgICAgICAgKiBhbGwgY2hhcmFjdGVycyBhcmUgaW4gdGhlIHJhbmdlIFUrMDAwMC1VKzEwRkZGRgorICAgICAgICAgICAgICogYXQgbGVhc3Qgb25lIGNoYXJhY3RlciBpcyBpbiB0aGUgcmFuZ2UgVSsxMDAwMC1VKzEwRkZGRgorICAgICAgICAgKi8KKyAgICAgICAgdW5zaWduZWQgaW50IGtpbmQ6MzsKKyAgICAgICAgLyogQ29tcGFjdCBpcyB3aXRoIHJlc3BlY3QgdG8gdGhlIGFsbG9jYXRpb24gc2NoZW1lLiBDb21wYWN0IHVuaWNvZGUKKyAgICAgICAgICAgb2JqZWN0cyBvbmx5IHJlcXVpcmUgb25lIG1lbW9yeSBibG9jayB3aGlsZSBub24tY29tcGFjdCBvYmplY3RzIHVzZQorICAgICAgICAgICBvbmUgYmxvY2sgZm9yIHRoZSBQeVVuaWNvZGVPYmplY3Qgc3RydWN0IGFuZCBhbm90aGVyIGZvciBpdHMgZGF0YQorICAgICAgICAgICBidWZmZXIuICovCisgICAgICAgIHVuc2lnbmVkIGludCBjb21wYWN0OjE7CisgICAgICAgIC8qIFRoZSBzdHJpbmcgb25seSBjb250YWlucyBjaGFyYWN0ZXJzIGluIHRoZSByYW5nZSBVKzAwMDAtVSswMDdGIChBU0NJSSkKKyAgICAgICAgICAgYW5kIHRoZSBraW5kIGlzIFB5VW5pY29kZV8xQllURV9LSU5ELiBJZiBhc2NpaSBpcyBzZXQgYW5kIGNvbXBhY3QgaXMKKyAgICAgICAgICAgc2V0LCB1c2UgdGhlIFB5QVNDSUlPYmplY3Qgc3RydWN0dXJlLiAqLworICAgICAgICB1bnNpZ25lZCBpbnQgYXNjaWk6MTsKKyAgICAgICAgLyogVGhlIHJlYWR5IGZsYWcgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIG9iamVjdCBsYXlvdXQgaXMgaW5pdGlhbGl6ZWQKKyAgICAgICAgICAgY29tcGxldGVseS4gVGhpcyBtZWFucyB0aGF0IHRoaXMgaXMgZWl0aGVyIGEgY29tcGFjdCBvYmplY3QsIG9yCisgICAgICAgICAgIHRoZSBkYXRhIHBvaW50ZXIgaXMgZmlsbGVkIG91dC4gVGhlIGJpdCBpcyByZWR1bmRhbnQsIGFuZCBoZWxwcworICAgICAgICAgICB0byBtaW5pbWl6ZSB0aGUgdGVzdCBpbiBQeVVuaWNvZGVfSVNfUkVBRFkoKS4gKi8KKyAgICAgICAgdW5zaWduZWQgaW50IHJlYWR5OjE7CisgICAgfSBzdGF0ZTsKKyAgICB3Y2hhcl90ICp3c3RyOyAgICAgICAgICAgICAgLyogd2NoYXJfdCByZXByZXNlbnRhdGlvbiAobnVsbC10ZXJtaW5hdGVkKSAqLworfSBQeUFTQ0lJT2JqZWN0OworCisvKiBOb24tQVNDSUkgc3RyaW5ncyBhbGxvY2F0ZWQgdGhyb3VnaCBQeVVuaWNvZGVfTmV3IHVzZSB0aGUKKyAgIFB5Q29tcGFjdFVuaWNvZGVPYmplY3Qgc3RydWN0dXJlLiBzdGF0ZS5jb21wYWN0IGlzIHNldCwgYW5kIHRoZSBkYXRhCisgICBpbW1lZGlhdGVseSBmb2xsb3cgdGhlIHN0cnVjdHVyZS4gKi8KK3R5cGVkZWYgc3RydWN0IHsKKyAgICBQeUFTQ0lJT2JqZWN0IF9iYXNlOworICAgIFB5X3NzaXplX3QgdXRmOF9sZW5ndGg7ICAgICAvKiBOdW1iZXIgb2YgYnl0ZXMgaW4gdXRmOCwgZXhjbHVkaW5nIHRoZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiB0ZXJtaW5hdGluZyBcMC4gKi8KKyAgICBjaGFyICp1dGY4OyAgICAgICAgICAgICAgICAgLyogVVRGLTggcmVwcmVzZW50YXRpb24gKG51bGwtdGVybWluYXRlZCkgKi8KKyAgICBQeV9zc2l6ZV90IHdzdHJfbGVuZ3RoOyAgICAgLyogTnVtYmVyIG9mIGNvZGUgcG9pbnRzIGluIHdzdHIsIHBvc3NpYmxlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqIHN1cnJvZ2F0ZXMgY291bnQgYXMgdHdvIGNvZGUgcG9pbnRzLiAqLworfSBQeUNvbXBhY3RVbmljb2RlT2JqZWN0OworCisvKiBTdHJpbmdzIGFsbG9jYXRlZCB0aHJvdWdoIFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBsZW4pIHVzZSB0aGUKKyAgIFB5VW5pY29kZU9iamVjdCBzdHJ1Y3R1cmUuIFRoZSBhY3R1YWwgc3RyaW5nIGRhdGEgaXMgaW5pdGlhbGx5IGluIHRoZSB3c3RyCisgICBibG9jaywgYW5kIGNvcGllZCBpbnRvIHRoZSBkYXRhIGJsb2NrIHVzaW5nIF9QeVVuaWNvZGVfUmVhZHkuICovCit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlDb21wYWN0VW5pY29kZU9iamVjdCBfYmFzZTsKKyAgICB1bmlvbiB7CisgICAgICAgIHZvaWQgKmFueTsKKyAgICAgICAgUHlfVUNTMSAqbGF0aW4xOworICAgICAgICBQeV9VQ1MyICp1Y3MyOworICAgICAgICBQeV9VQ1M0ICp1Y3M0OworICAgIH0gZGF0YTsgICAgICAgICAgICAgICAgICAgICAvKiBDYW5vbmljYWwsIHNtYWxsZXN0LWZvcm0gVW5pY29kZSBidWZmZXIgKi8KIH0gUHlVbmljb2RlT2JqZWN0OwogI2VuZGlmCiAKIFB5QVBJX0RBVEEoUHlUeXBlT2JqZWN0KSBQeVVuaWNvZGVfVHlwZTsKIFB5QVBJX0RBVEEoUHlUeXBlT2JqZWN0KSBQeVVuaWNvZGVJdGVyX1R5cGU7CiAKLSNkZWZpbmUgU1NUQVRFX05PVF9JTlRFUk5FRCAwCi0jZGVmaW5lIFNTVEFURV9JTlRFUk5FRF9NT1JUQUwgMQotI2RlZmluZSBTU1RBVEVfSU5URVJORURfSU1NT1JUQUwgMgotCiAjZGVmaW5lIFB5VW5pY29kZV9DaGVjayhvcCkgXAogICAgICAgICAgICAgICAgICBQeVR5cGVfRmFzdFN1YmNsYXNzKFB5X1RZUEUob3ApLCBQeV9UUEZMQUdTX1VOSUNPREVfU1VCQ0xBU1MpCiAjZGVmaW5lIFB5VW5pY29kZV9DaGVja0V4YWN0KG9wKSAoUHlfVFlQRShvcCkgPT0gJlB5VW5pY29kZV9UeXBlKQogCiAvKiBGYXN0IGFjY2VzcyBtYWNyb3MgKi8KICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKLSNkZWZpbmUgUHlVbmljb2RlX0dFVF9TSVpFKG9wKSBcCi0gICAgKGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKSwoKChQeVVuaWNvZGVPYmplY3QgKikob3ApKS0+bGVuZ3RoKSkKKworI2RlZmluZSBQeVVuaWNvZGVfV1NUUl9MRU5HVEgob3ApIFwKKyAgICAoUHlVbmljb2RlX0lTX0NPTVBBQ1RfQVNDSUkob3ApID8gICAgICAgICAgICAgICAgICBcCisgICAgICgoUHlBU0NJSU9iamVjdCopb3ApLT5sZW5ndGggOiAgICAgICAgICAgICAgICAgICAgXAorICAgICAoKFB5Q29tcGFjdFVuaWNvZGVPYmplY3QqKW9wKS0+d3N0cl9sZW5ndGgpCisKKy8qIFJldHVybnMgdGhlIGRlcHJlY2F0ZWQgUHlfVU5JQ09ERSByZXByZXNlbnRhdGlvbidzIHNpemUgaW4gY29kZSB1bml0cworICAgKHRoaXMgaW5jbHVkZXMgc3Vycm9nYXRlIHBhaXJzIGFzIDIgdW5pdHMpLgorICAgSWYgdGhlIFB5X1VOSUNPREUgcmVwcmVzZW50YXRpb24gaXMgbm90IGF2YWlsYWJsZSwgaXQgd2lsbCBiZSBjb21wdXRlZAorICAgb24gcmVxdWVzdC4gIFVzZSBQeVVuaWNvZGVfR0VUX0xFTkdUSCgpIGZvciB0aGUgbGVuZ3RoIGluIGNvZGUgcG9pbnRzLiAqLworCisjZGVmaW5lIFB5VW5pY29kZV9HRVRfU0laRShvcCkgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhvcCkpLCAgICAgICAgICAgICAgICAgICAgXAorICAgICAoKChQeUFTQ0lJT2JqZWN0ICopKG9wKSktPndzdHIpID8gICAgICAgICAgICAgICBcCisgICAgICBQeVVuaWNvZGVfV1NUUl9MRU5HVEgob3ApIDogICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICgodm9pZClQeVVuaWNvZGVfQXNVbmljb2RlKChQeU9iamVjdCAqKShvcCkpLCAgXAorICAgICAgIGFzc2VydCgoKFB5QVNDSUlPYmplY3QgKikob3ApKS0+d3N0ciksICAgICAgICBcCisgICAgICAgUHlVbmljb2RlX1dTVFJfTEVOR1RIKG9wKSkpCisKICNkZWZpbmUgUHlVbmljb2RlX0dFVF9EQVRBX1NJWkUob3ApIFwKLSAgICAoYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhvcCkpLCgoKFB5VW5pY29kZU9iamVjdCAqKShvcCkpLT5sZW5ndGggKiBzaXplb2YoUHlfVU5JQ09ERSkpKQorICAgIChQeVVuaWNvZGVfR0VUX1NJWkUob3ApICogUHlfVU5JQ09ERV9TSVpFKQorCisvKiBBbGlhcyBmb3IgUHlVbmljb2RlX0FzVW5pY29kZSgpLiAgVGhpcyB3aWxsIGNyZWF0ZSBhIHdjaGFyX3QvUHlfVU5JQ09ERQorICAgcmVwcmVzZW50YXRpb24gb24gZGVtYW5kLiAgVXNpbmcgdGhpcyBtYWNybyBpcyB2ZXJ5IGluZWZmaWNpZW50IG5vdywKKyAgIHRyeSB0byBwb3J0IHlvdXIgY29kZSB0byB1c2UgdGhlIG5ldyBQeVVuaWNvZGVfKkJZVEVfREFUQSgpIG1hY3JvcyBvcgorICAgdXNlIFB5VW5pY29kZV9XUklURSgpIGFuZCBQeVVuaWNvZGVfUkVBRCgpLiAqLworCiAjZGVmaW5lIFB5VW5pY29kZV9BU19VTklDT0RFKG9wKSBcCi0gICAgKGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKSwoKChQeVVuaWNvZGVPYmplY3QgKikob3ApKS0+c3RyKSkKKyAgICAoYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhvcCkpLCBcCisgICAgICgoKFB5QVNDSUlPYmplY3QgKikob3ApKS0+d3N0cikgPyAoKChQeUFTQ0lJT2JqZWN0ICopKG9wKSktPndzdHIpIDogXAorICAgICAgUHlVbmljb2RlX0FzVW5pY29kZSgoUHlPYmplY3QgKikob3ApKSkKKwogI2RlZmluZSBQeVVuaWNvZGVfQVNfREFUQShvcCkgXAotICAgIChhc3NlcnQoUHlVbmljb2RlX0NoZWNrKG9wKSksKChjb25zdCBjaGFyICopKChQeVVuaWNvZGVPYmplY3QgKikob3ApKS0+c3RyKSkKKyAgICAoKGNvbnN0IGNoYXIgKikoUHlVbmljb2RlX0FTX1VOSUNPREUob3ApKSkKKworCisvKiAtLS0gRmxleGlibGUgU3RyaW5nIFJlcHJlc2VudGF0aW9uIEhlbHBlciBNYWNyb3MgKFBFUCAzOTMpIC0tLS0tLS0tLS0tLS0tICovCisKKy8qIFZhbHVlcyBmb3IgUHlBU0NJSU9iamVjdC5zdGF0ZTogKi8KKworLyogSW50ZXJuaW5nIHN0YXRlLiAqLworI2RlZmluZSBTU1RBVEVfTk9UX0lOVEVSTkVEIDAKKyNkZWZpbmUgU1NUQVRFX0lOVEVSTkVEX01PUlRBTCAxCisjZGVmaW5lIFNTVEFURV9JTlRFUk5FRF9JTU1PUlRBTCAyCisKKy8qIFJldHVybiB0cnVlIGlmIHRoZSBzdHJpbmcgY29udGFpbnMgb25seSBBU0NJSSBjaGFyYWN0ZXJzLCBvciAwIGlmIG5vdC4gVGhlCisgICBzdHJpbmcgbWF5IGJlIGNvbXBhY3QgKFB5VW5pY29kZV9JU19DT01QQUNUX0FTQ0lJKSBvciBub3QsIGJ1dCBtdXN0IGJlCisgICByZWFkeS4gKi8KKyNkZWZpbmUgUHlVbmljb2RlX0lTX0FTQ0lJKG9wKSAgICAgICAgICAgICAgICAgICBcCisgICAgKGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKSwgICAgICAgICAgICAgICAgXAorICAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKG9wKSksICAgICAgICAgICAgIFwKKyAgICAgKChQeUFTQ0lJT2JqZWN0KilvcCktPnN0YXRlLmFzY2lpKQorCisvKiBSZXR1cm4gdHJ1ZSBpZiB0aGUgc3RyaW5nIGlzIGNvbXBhY3Qgb3IgMCBpZiBub3QuCisgICBObyB0eXBlIGNoZWNrcyBvciBSZWFkeSBjYWxscyBhcmUgcGVyZm9ybWVkLiAqLworI2RlZmluZSBQeVVuaWNvZGVfSVNfQ09NUEFDVChvcCkgXAorICAgICgoKFB5QVNDSUlPYmplY3QqKShvcCkpLT5zdGF0ZS5jb21wYWN0KQorCisvKiBSZXR1cm4gdHJ1ZSBpZiB0aGUgc3RyaW5nIGlzIGEgY29tcGFjdCBBU0NJSSBzdHJpbmcgKHVzZSBQeUFTQ0lJT2JqZWN0CisgICBzdHJ1Y3R1cmUpLCBvciAwIGlmIG5vdC4gIE5vIHR5cGUgY2hlY2tzIG9yIFJlYWR5IGNhbGxzIGFyZSBwZXJmb3JtZWQuICovCisjZGVmaW5lIFB5VW5pY29kZV9JU19DT01QQUNUX0FTQ0lJKG9wKSAgICAgICAgICAgICAgICAgXAorICAgICgoKFB5QVNDSUlPYmplY3QqKW9wKS0+c3RhdGUuYXNjaWkgJiYgUHlVbmljb2RlX0lTX0NPTVBBQ1Qob3ApKQorCitlbnVtIFB5VW5pY29kZV9LaW5kIHsKKy8qIFN0cmluZyBjb250YWlucyBvbmx5IHdzdHIgYnl0ZSBjaGFyYWN0ZXJzLiAgVGhpcyBpcyBvbmx5IHBvc3NpYmxlCisgICB3aGVuIHRoZSBzdHJpbmcgd2FzIGNyZWF0ZWQgd2l0aCBhIGxlZ2FjeSBBUEkgYW5kIF9QeVVuaWNvZGVfUmVhZHkoKQorICAgaGFzIG5vdCBiZWVuIGNhbGxlZCB5ZXQuICAqLworICAgIFB5VW5pY29kZV9XQ0hBUl9LSU5EID0gMCwKKy8qIFJldHVybiB2YWx1ZXMgb2YgdGhlIFB5VW5pY29kZV9LSU5EKCkgbWFjcm86ICovCisgICAgUHlVbmljb2RlXzFCWVRFX0tJTkQgPSAxLAorICAgIFB5VW5pY29kZV8yQllURV9LSU5EID0gMiwKKyAgICBQeVVuaWNvZGVfNEJZVEVfS0lORCA9IDQKK307CisKKy8qIFJldHVybiBwb2ludGVycyB0byB0aGUgY2Fub25pY2FsIHJlcHJlc2VudGF0aW9uIGNhc3QgdG8gdW5zaWduZWQgY2hhciwKKyAgIFB5X1VDUzIsIG9yIFB5X1VDUzQgZm9yIGRpcmVjdCBjaGFyYWN0ZXIgYWNjZXNzLgorICAgTm8gY2hlY2tzIGFyZSBwZXJmb3JtZWQsIHVzZSBQeVVuaWNvZGVfS0lORCgpIGJlZm9yZSB0byBlbnN1cmUKKyAgIHRoZXNlIHdpbGwgd29yayBjb3JyZWN0bHkuICovCisKKyNkZWZpbmUgUHlVbmljb2RlXzFCWVRFX0RBVEEob3ApICgoUHlfVUNTMSopUHlVbmljb2RlX0RBVEEob3ApKQorI2RlZmluZSBQeVVuaWNvZGVfMkJZVEVfREFUQShvcCkgKChQeV9VQ1MyKilQeVVuaWNvZGVfREFUQShvcCkpCisjZGVmaW5lIFB5VW5pY29kZV80QllURV9EQVRBKG9wKSAoKFB5X1VDUzQqKVB5VW5pY29kZV9EQVRBKG9wKSkKKworLyogUmV0dXJuIG9uZSBvZiB0aGUgUHlVbmljb2RlXypfS0lORCB2YWx1ZXMgZGVmaW5lZCBhYm92ZS4gKi8KKyNkZWZpbmUgUHlVbmljb2RlX0tJTkQob3ApIFwKKyAgICAoYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhvcCkpLCBcCisgICAgIGFzc2VydChQeVVuaWNvZGVfSVNfUkVBRFkob3ApKSwgICAgICAgICAgICBcCisgICAgICgoUHlBU0NJSU9iamVjdCAqKShvcCkpLT5zdGF0ZS5raW5kKQorCisvKiBSZXR1cm4gYSB2b2lkIHBvaW50ZXIgdG8gdGhlIHJhdyB1bmljb2RlIGJ1ZmZlci4gKi8KKyNkZWZpbmUgX1B5VW5pY29kZV9DT01QQUNUX0RBVEEob3ApICAgICAgICAgICAgICAgICAgICAgXAorICAgIChQeVVuaWNvZGVfSVNfQVNDSUkob3ApID8gICAgICAgICAgICAgICAgICAgXAorICAgICAoKHZvaWQqKSgoUHlBU0NJSU9iamVjdCopKG9wKSArIDEpKSA6ICAgICAgICAgICAgICBcCisgICAgICgodm9pZCopKChQeUNvbXBhY3RVbmljb2RlT2JqZWN0Kikob3ApICsgMSkpKQorCisjZGVmaW5lIF9QeVVuaWNvZGVfTk9OQ09NUEFDVF9EQVRBKG9wKSAgICAgICAgICAgICAgICAgIFwKKyAgICAoYXNzZXJ0KCgoUHlVbmljb2RlT2JqZWN0Kikob3ApKS0+ZGF0YS5hbnkpLCAgICAgICAgXAorICAgICAoKCgoUHlVbmljb2RlT2JqZWN0ICopKG9wKSktPmRhdGEuYW55KSkpCisKKyNkZWZpbmUgUHlVbmljb2RlX0RBVEEob3ApIFwKKyAgICAoYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhvcCkpLCBcCisgICAgIFB5VW5pY29kZV9JU19DT01QQUNUKG9wKSA/IF9QeVVuaWNvZGVfQ09NUEFDVF9EQVRBKG9wKSA6ICAgXAorICAgICBfUHlVbmljb2RlX05PTkNPTVBBQ1RfREFUQShvcCkpCisKKy8qIEluIHRoZSBhY2Nlc3MgbWFjcm9zIGJlbG93LCAia2luZCIgbWF5IGJlIGV2YWx1YXRlZCBtb3JlIHRoYW4gb25jZS4KKyAgIEFsbCBvdGhlciBtYWNybyBwYXJhbWV0ZXJzIGFyZSBldmFsdWF0ZWQgZXhhY3RseSBvbmNlLCBzbyBpdCBpcyBzYWZlCisgICB0byBwdXQgc2lkZSBlZmZlY3RzIGludG8gdGhlbSAoc3VjaCBhcyBpbmNyZWFzaW5nIHRoZSBpbmRleCkuICovCisKKy8qIFdyaXRlIGludG8gdGhlIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbiwgdGhpcyBtYWNybyBkb2VzIG5vdCBkbyBhbnkgc2FuaXR5CisgICBjaGVja3MgYW5kIGlzIGludGVuZGVkIGZvciB1c2FnZSBpbiBsb29wcy4gIFRoZSBjYWxsZXIgc2hvdWxkIGNhY2hlIHRoZQorICAga2luZCBhbmQgZGF0YSBwb2ludGVycyBvYnRhaW5lZCBmcm9tIG90aGVyIG1hY3JvIGNhbGxzLgorICAgaW5kZXggaXMgdGhlIGluZGV4IGluIHRoZSBzdHJpbmcgKHN0YXJ0cyBhdCAwKSBhbmQgdmFsdWUgaXMgdGhlIG5ldworICAgY29kZSBwb2ludCB2YWx1ZSB3aGljaCBzaG91bGQgYmUgd3JpdHRlbiB0byB0aGF0IGxvY2F0aW9uLiAqLworI2RlZmluZSBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgaW5kZXgsIHZhbHVlKSBcCisgICAgZG8geyBcCisgICAgICAgIHN3aXRjaCAoKGtpbmQpKSB7IFwKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDogeyBcCisgICAgICAgICAgICBhc3NlcnQodmFsdWUgPD0gMHhmZik7IFwKKyAgICAgICAgICAgICgoUHlfVUNTMSAqKShkYXRhKSlbKGluZGV4KV0gPSAoUHlfVUNTMSkodmFsdWUpOyBcCisgICAgICAgICAgICBicmVhazsgXAorICAgICAgICB9IFwKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDogeyBcCisgICAgICAgICAgICBhc3NlcnQodmFsdWUgPD0gMHhmZmZmKTsgXAorICAgICAgICAgICAgKChQeV9VQ1MyICopKGRhdGEpKVsoaW5kZXgpXSA9IChQeV9VQ1MyKSh2YWx1ZSk7IFwKKyAgICAgICAgICAgIGJyZWFrOyBcCisgICAgICAgIH0gXAorICAgICAgICBkZWZhdWx0OiB7IFwKKyAgICAgICAgICAgIGFzc2VydCh2YWx1ZSA8PSAweDEwZmZmZik7IFwKKyAgICAgICAgICAgIGFzc2VydCgoa2luZCkgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpOyBcCisgICAgICAgICAgICAoKFB5X1VDUzQgKikoZGF0YSkpWyhpbmRleCldID0gKFB5X1VDUzQpKHZhbHVlKTsgXAorICAgICAgICB9IFwKKyAgICAgICAgfSBcCisgICAgfSB3aGlsZSAoMCkKKworLyogUmVhZCBhIGNvZGUgcG9pbnQgZnJvbSB0aGUgc3RyaW5nJ3MgY2Fub25pY2FsIHJlcHJlc2VudGF0aW9uLiAgTm8gY2hlY2tzCisgICBvciByZWFkeSBjYWxscyBhcmUgcGVyZm9ybWVkLiAqLworI2RlZmluZSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpbmRleCkgXAorICAgICgoUHlfVUNTNCkgXAorICAgICgoa2luZCkgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQgPyBcCisgICAgICAgICgoY29uc3QgUHlfVUNTMSAqKShkYXRhKSlbKGluZGV4KV0gOiBcCisgICAgICAgICgoa2luZCkgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQgPyBcCisgICAgICAgICAgICAoKGNvbnN0IFB5X1VDUzIgKikoZGF0YSkpWyhpbmRleCldIDogXAorICAgICAgICAgICAgKChjb25zdCBQeV9VQ1M0ICopKGRhdGEpKVsoaW5kZXgpXSBcCisgICAgICAgICkgXAorICAgICkpCisKKy8qIFB5VW5pY29kZV9SRUFEX0NIQVIoKSBpcyBsZXNzIGVmZmljaWVudCB0aGFuIFB5VW5pY29kZV9SRUFEKCkgYmVjYXVzZSBpdAorICAgY2FsbHMgUHlVbmljb2RlX0tJTkQoKSBhbmQgbWlnaHQgY2FsbCBpdCB0d2ljZS4gIEZvciBzaW5nbGUgcmVhZHMsIHVzZQorICAgUHlVbmljb2RlX1JFQURfQ0hBUiwgZm9yIG11bHRpcGxlIGNvbnNlY3V0aXZlIHJlYWRzIGNhbGxlcnMgc2hvdWxkCisgICBjYWNoZSBraW5kIGFuZCB1c2UgUHlVbmljb2RlX1JFQUQgaW5zdGVhZC4gKi8KKyNkZWZpbmUgUHlVbmljb2RlX1JFQURfQ0hBUih1bmljb2RlLCBpbmRleCkgXAorICAgIChhc3NlcnQoUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSwgICAgICAgICAgXAorICAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKHVuaWNvZGUpKSwgICAgICAgXAorICAgICAoUHlfVUNTNCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAoUHlVbmljb2RlX0tJTkQoKHVuaWNvZGUpKSA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCA/IFwKKyAgICAgICAgICAgICgoY29uc3QgUHlfVUNTMSAqKShQeVVuaWNvZGVfREFUQSgodW5pY29kZSkpKSlbKGluZGV4KV0gOiBcCisgICAgICAgICAgICAoUHlVbmljb2RlX0tJTkQoKHVuaWNvZGUpKSA9PSBQeVVuaWNvZGVfMkJZVEVfS0lORCA/IFwKKyAgICAgICAgICAgICAgICAoKGNvbnN0IFB5X1VDUzIgKikoUHlVbmljb2RlX0RBVEEoKHVuaWNvZGUpKSkpWyhpbmRleCldIDogXAorICAgICAgICAgICAgICAgICgoY29uc3QgUHlfVUNTNCAqKShQeVVuaWNvZGVfREFUQSgodW5pY29kZSkpKSlbKGluZGV4KV0gXAorICAgICAgICAgICAgKSBcCisgICAgICAgICkpCisKKy8qIFJldHVybnMgdGhlIGxlbmd0aCBvZiB0aGUgdW5pY29kZSBzdHJpbmcuIFRoZSBjYWxsZXIgaGFzIHRvIG1ha2Ugc3VyZSB0aGF0CisgICB0aGUgc3RyaW5nIGhhcyBpdCdzIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbiBzZXQgYmVmb3JlIGNhbGxpbmcKKyAgIHRoaXMgbWFjcm8uICBDYWxsIFB5VW5pY29kZV8oRkFTVF8pUmVhZHkgdG8gZW5zdXJlIHRoYXQuICovCisjZGVmaW5lIFB5VW5pY29kZV9HRVRfTEVOR1RIKG9wKSAgICAgICAgICAgICAgICBcCisgICAgKGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKSwgICAgICAgICAgICAgICBcCisgICAgIGFzc2VydChQeVVuaWNvZGVfSVNfUkVBRFkob3ApKSwgICAgICAgICAgICBcCisgICAgICgoUHlBU0NJSU9iamVjdCAqKShvcCkpLT5sZW5ndGgpCisKKworLyogRmFzdCBjaGVjayB0byBkZXRlcm1pbmUgd2hldGhlciBhbiBvYmplY3QgaXMgcmVhZHkuIEVxdWl2YWxlbnQgdG8KKyAgIFB5VW5pY29kZV9JU19DT01QQUNUKG9wKSB8fCAoKFB5VW5pY29kZU9iamVjdCopKG9wKSktPmRhdGEuYW55KSAqLworCisjZGVmaW5lIFB5VW5pY29kZV9JU19SRUFEWShvcCkgKCgoUHlBU0NJSU9iamVjdCopb3ApLT5zdGF0ZS5yZWFkeSkKKworLyogUHlVbmljb2RlX1JFQURZKCkgZG9lcyBsZXNzIHdvcmsgdGhhbiBfUHlVbmljb2RlX1JlYWR5KCkgaW4gdGhlIGJlc3QKKyAgIGNhc2UuICBJZiB0aGUgY2Fub25pY2FsIHJlcHJlc2VudGF0aW9uIGlzIG5vdCB5ZXQgc2V0LCBpdCB3aWxsIHN0aWxsIGNhbGwKKyAgIF9QeVVuaWNvZGVfUmVhZHkoKS4KKyAgIFJldHVybnMgMCBvbiBzdWNjZXNzIGFuZCAtMSBvbiBlcnJvcnMuICovCisjZGVmaW5lIFB5VW5pY29kZV9SRUFEWShvcCkgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKSwgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKFB5VW5pY29kZV9JU19SRUFEWShvcCkgPyAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgMCA6IF9QeVVuaWNvZGVfUmVhZHkoKFB5T2JqZWN0ICopKG9wKSkpKQorCisvKiBSZXR1cm4gYSBtYXhpbXVtIGNoYXJhY3RlciB2YWx1ZSB3aGljaCBpcyBzdWl0YWJsZSBmb3IgY3JlYXRpbmcgYW5vdGhlcgorICAgc3RyaW5nIGJhc2VkIG9uIG9wLiAgVGhpcyBpcyBhbHdheXMgYW4gYXBwcm94aW1hdGlvbiBidXQgbW9yZSBlZmZpY2llbnQKKyAgIHRoYW4gaXRlcmF0aW5nIG92ZXIgdGhlIHN0cmluZy4gKi8KKyNkZWZpbmUgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKG9wKSBcCisgICAgKGFzc2VydChQeVVuaWNvZGVfSVNfUkVBRFkob3ApKSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIChQeVVuaWNvZGVfSVNfQVNDSUkob3ApID8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAoMHg3ZikgOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAoUHlVbmljb2RlX0tJTkQob3ApID09IFB5VW5pY29kZV8xQllURV9LSU5EID8gICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgKDB4ZmZVKSA6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgKFB5VW5pY29kZV9LSU5EKG9wKSA9PSBQeVVuaWNvZGVfMkJZVEVfS0lORCA/ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICgweGZmZmZVKSA6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICgweDEwZmZmZlUpKSkpKQorCiAjZW5kaWYKIAogLyogLS0tIENvbnN0YW50cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCkBAIC00MTgsMTIgKzU4OSw4NyBAQAogICAgVW5pY29kZSBjaGFyYWN0ZXIgVStGRkZEIGlzIHRoZSBvZmZpY2lhbCBSRVBMQUNFTUVOVCBDSEFSQUNURVIgaW4KICAgIFVuaWNvZGUgMy4wLiAqLwogCi0jZGVmaW5lIFB5X1VOSUNPREVfUkVQTEFDRU1FTlRfQ0hBUkFDVEVSICgoUHlfVU5JQ09ERSkgMHhGRkZEKQorI2RlZmluZSBQeV9VTklDT0RFX1JFUExBQ0VNRU5UX0NIQVJBQ1RFUiAoKFB5X1VDUzQpIDB4RkZGRCkKIAogLyogPT09IFB1YmxpYyBBUEkgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCiAKIC8qIC0tLSBQbGFpbiBQeV9VTklDT0RFIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCisvKiBXaXRoIFBFUCAzOTMsIHRoaXMgaXMgdGhlIHJlY29tbWVuZGVkIHdheSB0byBhbGxvY2F0ZSBhIG5ldyB1bmljb2RlIG9iamVjdC4KKyAgIFRoaXMgZnVuY3Rpb24gd2lsbCBhbGxvY2F0ZSB0aGUgb2JqZWN0IGFuZCBpdHMgYnVmZmVyIGluIGEgc2luZ2xlIG1lbW9yeQorICAgYmxvY2suICBPYmplY3RzIGNyZWF0ZWQgdXNpbmcgdGhpcyBmdW5jdGlvbiBhcmUgbm90IHJlc2l6YWJsZS4gKi8KKyNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBQeVVuaWNvZGVfTmV3KAorICAgIFB5X3NzaXplX3Qgc2l6ZSwgICAgICAgICAgICAvKiBOdW1iZXIgb2YgY29kZSBwb2ludHMgaW4gdGhlIG5ldyBzdHJpbmcgKi8KKyAgICBQeV9VQ1M0IG1heGNoYXIgICAgICAgICAgICAgLyogbWF4aW11bSBjb2RlIHBvaW50IHZhbHVlIGluIHRoZSBzdHJpbmcgKi8KKyAgICApOworI2VuZGlmCisKKy8qIEluaXRpYWxpemVzIHRoZSBjYW5vbmljYWwgc3RyaW5nIHJlcHJlc2VudGF0aW9uIGZyb20gYSB0aGUgZGVwcmVjYXRlZAorICAgd3N0ci9QeV9VTklDT0RFIHJlcHJlc2VudGF0aW9uLiBUaGlzIGZ1bmN0aW9uIGlzIHVzZWQgdG8gY29udmVydCBVbmljb2RlCisgICBvYmplY3RzIHdoaWNoIHdlcmUgY3JlYXRlZCB1c2luZyB0aGUgb2xkIEFQSSB0byB0aGUgbmV3IGZsZXhpYmxlIGZvcm1hdAorICAgaW50cm9kdWNlZCB3aXRoIFBFUCAzOTMuCisKKyAgIERvbid0IGNhbGwgdGhpcyBmdW5jdGlvbiBkaXJlY3RseSwgdXNlIHRoZSBwdWJsaWMgUHlVbmljb2RlX1JFQURZKCkgbWFjcm8KKyAgIGluc3RlYWQuICovCisjaWZuZGVmIFB5X0xJTUlURURfQVBJCitQeUFQSV9GVU5DKGludCkgX1B5VW5pY29kZV9SZWFkeSgKKyAgICBQeU9iamVjdCAqdW5pY29kZSAgICAgICAgICAgLyogVW5pY29kZSBvYmplY3QgKi8KKyAgICApOworI2VuZGlmCisKKy8qIEdldCBhIGNvcHkgb2YgYSBVbmljb2RlIHN0cmluZy4gKi8KKyNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBfUHlVbmljb2RlX0NvcHkoCisgICAgUHlPYmplY3QgKnVuaWNvZGUKKyAgICApOworI2VuZGlmCisKKy8qIENvcHkgY2hhcmFjdGVyIGZyb20gb25lIHVuaWNvZGUgb2JqZWN0IGludG8gYW5vdGhlciwgdGhpcyBmdW5jdGlvbiBwZXJmb3JtcworICAgY2hhcmFjdGVyIGNvbnZlcnNpb24gd2hlbiBuZWNlc3NhcnkgYW5kIGZhbGxzIGJhY2sgdG8gbWVtY3B5KCkgaWYgcG9zc2libGUuCisKKyAgIEZhaWwgaWYgdG8gaXMgdG9vIHNtYWxsIChzbWFsbGVyIHRoYW4gKmhvd19tYW55KiBvciBzbWFsbGVyIHRoYW4KKyAgIGxlbihmcm9tKS1mcm9tX3N0YXJ0KSwgb3IgaWYga2luZChmcm9tW2Zyb21fc3RhcnQ6ZnJvbV9zdGFydCtob3dfbWFueV0pID4KKyAgIGtpbmQodG8pLCBvciBpZiAqdG8qIGhhcyBtb3JlIHRoYW4gMSByZWZlcmVuY2UuCisKKyAgIFJldHVybiB0aGUgbnVtYmVyIG9mIHdyaXR0ZW4gY2hhcmFjdGVyLCBvciByZXR1cm4gLTEgYW5kIHJhaXNlIGFuIGV4Y2VwdGlvbgorICAgb24gZXJyb3IuCisKKyAgIFBzZXVkby1jb2RlOgorCisgICAgICAgaG93X21hbnkgPSBtaW4oaG93X21hbnksIGxlbihmcm9tKSAtIGZyb21fc3RhcnQpCisgICAgICAgdG9bdG9fc3RhcnQ6dG9fc3RhcnQraG93X21hbnldID0gZnJvbVtmcm9tX3N0YXJ0OmZyb21fc3RhcnQraG93X21hbnldCisgICAgICAgcmV0dXJuIGhvd19tYW55CisKKyAgIE5vdGU6IFRoZSBmdW5jdGlvbiBkb2Vzbid0IHdyaXRlIGEgdGVybWluYXRpbmcgbnVsbCBjaGFyYWN0ZXIuCisgICAqLworI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQorUHlBUElfRlVOQyhQeV9zc2l6ZV90KSBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMoCisgICAgUHlPYmplY3QgKnRvLAorICAgIFB5X3NzaXplX3QgdG9fc3RhcnQsCisgICAgUHlPYmplY3QgKmZyb20sCisgICAgUHlfc3NpemVfdCBmcm9tX3N0YXJ0LAorICAgIFB5X3NzaXplX3QgaG93X21hbnkKKyAgICApOworI2VuZGlmCisKKy8qIEZpbGwgYSBzdHJpbmcgd2l0aCBhIGNoYXJhY3Rlcjogd3JpdGUgZmlsbF9jaGFyIGludG8KKyAgIHVuaWNvZGVbc3RhcnQ6c3RhcnQrbGVuZ3RoXS4KKworICAgRmFpbCBpZiBmaWxsX2NoYXIgaXMgYmlnZ2VyIHRoYW4gdGhlIHN0cmluZyBtYXhpbXVtIGNoYXJhY3Rlciwgb3IgaWYgdGhlCisgICBzdHJpbmcgaGFzIG1vcmUgdGhhbiAxIHJlZmVyZW5jZS4KKworICAgUmV0dXJuIHRoZSBudW1iZXIgb2Ygd3JpdHRlbiBjaGFyYWN0ZXIsIG9yIHJldHVybiAtMSBhbmQgcmFpc2UgYW4gZXhjZXB0aW9uCisgICBvbiBlcnJvci4gKi8KKyNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0ZVTkMoUHlfc3NpemVfdCkgUHlVbmljb2RlX0ZpbGwoCisgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgUHlfc3NpemVfdCBzdGFydCwKKyAgICBQeV9zc2l6ZV90IGxlbmd0aCwKKyAgICBQeV9VQ1M0IGZpbGxfY2hhcgorICAgICk7CisjZW5kaWYKKwogLyogQ3JlYXRlIGEgVW5pY29kZSBPYmplY3QgZnJvbSB0aGUgUHlfVU5JQ09ERSBidWZmZXIgdSBvZiB0aGUgZ2l2ZW4KICAgIHNpemUuCiAKQEAgLTQ0OCwxMyArNjk0LDQ1IEBACiAgICAgKTsKIAogLyogU2ltaWxhciB0byBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoKSwgYnV0IHUgcG9pbnRzIHRvIG51bGwtdGVybWluYXRlZAotICAgVVRGLTggZW5jb2RlZCBieXRlcyAqLworICAgVVRGLTggZW5jb2RlZCBieXRlcy4gIFRoZSBzaXplIGlzIGRldGVybWluZWQgd2l0aCBzdHJsZW4oKS4gKi8KIFB5QVBJX0ZVTkMoUHlPYmplY3QqKSBQeVVuaWNvZGVfRnJvbVN0cmluZygKICAgICBjb25zdCBjaGFyICp1ICAgICAgICAgICAgICAvKiBVVEYtOCBlbmNvZGVkIHN0cmluZyAqLwogICAgICk7CiAKKy8qIENyZWF0ZSBhIG5ldyBzdHJpbmcgZnJvbSBhIGJ1ZmZlciBvZiBQeV9VQ1MxLCBQeV9VQ1MyIG9yIFB5X1VDUzQgY2hhcmFjdGVycy4KKyAgIFNjYW4gdGhlIHN0cmluZyB0byBmaW5kIHRoZSBtYXhpbXVtIGNoYXJhY3Rlci4gKi8KKyNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKAorICAgIGludCBraW5kLAorICAgIGNvbnN0IHZvaWQgKmJ1ZmZlciwKKyAgICBQeV9zc2l6ZV90IHNpemUpOworI2VuZGlmCisKK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBQeVVuaWNvZGVfU3Vic3RyaW5nKAorICAgIFB5T2JqZWN0ICpzdHIsCisgICAgUHlfc3NpemVfdCBzdGFydCwKKyAgICBQeV9zc2l6ZV90IGVuZCk7CisKKy8qIENvcHkgdGhlIHN0cmluZyBpbnRvIGEgVUNTNCBidWZmZXIgaW5jbHVkaW5nIHRoZSBudWxsIGNoYXJhY3RlciBpZiBjb3B5X251bGwKKyAgIGlzIHNldC4gUmV0dXJuIE5VTEwgYW5kIHJhaXNlIGFuIGV4Y2VwdGlvbiBvbiBlcnJvci4gUmFpc2UgYSBWYWx1ZUVycm9yIGlmCisgICB0aGUgYnVmZmVyIGlzIHNtYWxsZXIgdGhhbiB0aGUgc3RyaW5nLiBSZXR1cm4gYnVmZmVyIG9uIHN1Y2Nlc3MuCisKKyAgIGJ1ZmxlbiBpcyB0aGUgbGVuZ3RoIG9mIHRoZSBidWZmZXIgaW4gKFB5X1VDUzQpIGNoYXJhY3RlcnMuICovCitQeUFQSV9GVU5DKFB5X1VDUzQqKSBQeVVuaWNvZGVfQXNVQ1M0KAorICAgIFB5T2JqZWN0ICp1bmljb2RlLAorICAgIFB5X1VDUzQqIGJ1ZmZlciwKKyAgICBQeV9zc2l6ZV90IGJ1ZmxlbiwKKyAgICBpbnQgY29weV9udWxsKTsKKworLyogQ29weSB0aGUgc3RyaW5nIGludG8gYSBVQ1M0IGJ1ZmZlci4gQSBuZXcgYnVmZmVyIGlzIGFsbG9jYXRlZCB1c2luZworICogUHlNZW1fTWFsbG9jOyBpZiB0aGlzIGZhaWxzLCBOVUxMIGlzIHJldHVybmVkIHdpdGggYSBtZW1vcnkgZXJyb3IKKyAgIGV4Y2VwdGlvbiBzZXQuICovCitQeUFQSV9GVU5DKFB5X1VDUzQqKSBQeVVuaWNvZGVfQXNVQ1M0Q29weShQeU9iamVjdCAqdW5pY29kZSk7CisKIC8qIFJldHVybiBhIHJlYWQtb25seSBwb2ludGVyIHRvIHRoZSBVbmljb2RlIG9iamVjdCdzIGludGVybmFsCi0gICBQeV9VTklDT0RFIGJ1ZmZlci4gKi8KKyAgIFB5X1VOSUNPREUgYnVmZmVyLgorICAgSWYgdGhlIHdjaGFyX3QvUHlfVU5JQ09ERSByZXByZXNlbnRhdGlvbiBpcyBub3QgeWV0IGF2YWlsYWJsZSwgdGhpcworICAgZnVuY3Rpb24gd2lsbCBjYWxjdWxhdGUgaXQuICovCiAKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKIFB5QVBJX0ZVTkMoUHlfVU5JQ09ERSAqKSBQeVVuaWNvZGVfQXNVbmljb2RlKApAQCAtNDYyLDMwICs3NDAsNjkgQEAKICAgICApOwogI2VuZGlmCiAKKy8qIFJldHVybiBhIHJlYWQtb25seSBwb2ludGVyIHRvIHRoZSBVbmljb2RlIG9iamVjdCdzIGludGVybmFsCisgICBQeV9VTklDT0RFIGJ1ZmZlciBhbmQgc2F2ZSB0aGUgbGVuZ3RoIGF0IHNpemUuCisgICBJZiB0aGUgd2NoYXJfdC9QeV9VTklDT0RFIHJlcHJlc2VudGF0aW9uIGlzIG5vdCB5ZXQgYXZhaWxhYmxlLCB0aGlzCisgICBmdW5jdGlvbiB3aWxsIGNhbGN1bGF0ZSBpdC4gKi8KKworI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQorUHlBUElfRlVOQyhQeV9VTklDT0RFICopIFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKAorICAgIFB5T2JqZWN0ICp1bmljb2RlLCAgICAgICAgICAvKiBVbmljb2RlIG9iamVjdCAqLworICAgIFB5X3NzaXplX3QgKnNpemUgICAgICAgICAgICAvKiBsb2NhdGlvbiB3aGVyZSB0byBzYXZlIHRoZSBsZW5ndGggKi8KKyAgICApOworI2VuZGlmCisKIC8qIEdldCB0aGUgbGVuZ3RoIG9mIHRoZSBVbmljb2RlIG9iamVjdC4gKi8KIAorUHlBUElfRlVOQyhQeV9zc2l6ZV90KSBQeVVuaWNvZGVfR2V0TGVuZ3RoKAorICAgIFB5T2JqZWN0ICp1bmljb2RlCispOworCisvKiBHZXQgdGhlIG51bWJlciBvZiBQeV9VTklDT0RFIHVuaXRzIGluIHRoZQorICAgc3RyaW5nIHJlcHJlc2VudGF0aW9uLiAqLworCiBQeUFQSV9GVU5DKFB5X3NzaXplX3QpIFB5VW5pY29kZV9HZXRTaXplKAogICAgIFB5T2JqZWN0ICp1bmljb2RlICAgICAgICAgICAvKiBVbmljb2RlIG9iamVjdCAqLwogICAgICk7CiAKKy8qIFJlYWQgYSBjaGFyYWN0ZXIgZnJvbSB0aGUgc3RyaW5nLiAqLworCitQeUFQSV9GVU5DKFB5X1VDUzQpIFB5VW5pY29kZV9SZWFkQ2hhcigKKyAgICBQeU9iamVjdCAqdW5pY29kZSwKKyAgICBQeV9zc2l6ZV90IGluZGV4CisgICAgKTsKKworLyogV3JpdGUgYSBjaGFyYWN0ZXIgdG8gdGhlIHN0cmluZy4gVGhlIHN0cmluZyBtdXN0IGhhdmUgYmVlbiBjcmVhdGVkIHRocm91Z2gKKyAgIFB5VW5pY29kZV9OZXcsIG11c3Qgbm90IGJlIHNoYXJlZCwgYW5kIG11c3Qgbm90IGhhdmUgYmVlbiBoYXNoZWQgeWV0LgorCisgICBSZXR1cm4gMCBvbiBzdWNjZXNzLCAtMSBvbiBlcnJvci4gKi8KKworUHlBUElfRlVOQyhpbnQpIFB5VW5pY29kZV9Xcml0ZUNoYXIoCisgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgUHlfc3NpemVfdCBpbmRleCwKKyAgICBQeV9VQ1M0IGNoYXJhY3RlcgorICAgICk7CisKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKIC8qIEdldCB0aGUgbWF4aW11bSBvcmRpbmFsIGZvciBhIFVuaWNvZGUgY2hhcmFjdGVyLiAqLwogUHlBUElfRlVOQyhQeV9VTklDT0RFKSBQeVVuaWNvZGVfR2V0TWF4KHZvaWQpOwogI2VuZGlmCiAKLS8qIFJlc2l6ZSBhbiBhbHJlYWR5IGFsbG9jYXRlZCBVbmljb2RlIG9iamVjdCB0byB0aGUgbmV3IHNpemUgbGVuZ3RoLgorLyogUmVzaXplIGFuIFVuaWNvZGUgb2JqZWN0LiBUaGUgbGVuZ3RoIGlzIHRoZSBudW1iZXIgb2YgY2hhcmFjdGVycywgZXhjZXB0CisgICBpZiB0aGUga2luZCBvZiB0aGUgc3RyaW5nIGlzIFB5VW5pY29kZV9XQ0hBUl9LSU5EOiBpbiB0aGlzIGNhc2UsIHRoZSBsZW5ndGgKKyAgIGlzIHRoZSBudW1iZXIgb2YgUHlfVU5JQ09ERSBjaGFyYWN0ZXJzLgogCiAgICAqdW5pY29kZSBpcyBtb2RpZmllZCB0byBwb2ludCB0byB0aGUgbmV3IChyZXNpemVkKSBvYmplY3QgYW5kIDAKICAgIHJldHVybmVkIG9uIHN1Y2Nlc3MuCiAKLSAgIFRoaXMgQVBJIG1heSBvbmx5IGJlIGNhbGxlZCBieSB0aGUgZnVuY3Rpb24gd2hpY2ggYWxzbyBjYWxsZWQgdGhlCi0gICBVbmljb2RlIGNvbnN0cnVjdG9yLiBUaGUgcmVmY291bnQgb24gdGhlIG9iamVjdCBtdXN0IGJlIDEuIE90aGVyd2lzZSwKLSAgIGFuIGVycm9yIGlzIHJldHVybmVkLgorICAgVHJ5IHRvIHJlc2l6ZSB0aGUgc3RyaW5nIGluIHBsYWNlICh3aGljaCBpcyB1c3VhbGx5IGZhc3RlciB0aGFuIGFsbG9jYXRpbmcKKyAgIGEgbmV3IHN0cmluZyBhbmQgY29weSBjaGFyYWN0ZXJzKSwgb3IgY3JlYXRlIGEgbmV3IHN0cmluZy4KIAogICAgRXJyb3IgaGFuZGxpbmcgaXMgaW1wbGVtZW50ZWQgYXMgZm9sbG93czogYW4gZXhjZXB0aW9uIGlzIHNldCwgLTEKICAgIGlzIHJldHVybmVkIGFuZCAqdW5pY29kZSBsZWZ0IHVudG91Y2hlZC4KIAotKi8KKyAgIFdBUk5JTkc6IFRoZSBmdW5jdGlvbiBkb2Vzbid0IGNoZWNrIHN0cmluZyBjb250ZW50LCB0aGUgcmVzdWx0IG1heSBub3QgYmUgYQorICAgICAgICAgICAgc3RyaW5nIGluIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbi4gKi8KIAogUHlBUElfRlVOQyhpbnQpIFB5VW5pY29kZV9SZXNpemUoCiAgICAgUHlPYmplY3QgKip1bmljb2RlLCAgICAgICAgIC8qIFBvaW50ZXIgdG8gdGhlIFVuaWNvZGUgb2JqZWN0ICovCkBAIC01NDUsOCArODYyLDkgQEAKIC8qIEZvcm1hdCB0aGUgb2JqZWN0IGJhc2VkIG9uIHRoZSBmb3JtYXRfc3BlYywgYXMgZGVmaW5lZCBpbiBQRVAgMzEwMQogICAgKEFkdmFuY2VkIFN0cmluZyBGb3JtYXR0aW5nKS4gKi8KIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5VW5pY29kZV9Gb3JtYXRBZHZhbmNlZChQeU9iamVjdCAqb2JqLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgKmZvcm1hdF9zcGVjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZm9ybWF0X3NwZWNfbGVuKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZm9ybWF0X3NwZWMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGVuZCk7CiAjZW5kaWYKIAogUHlBUElfRlVOQyh2b2lkKSBQeVVuaWNvZGVfSW50ZXJuSW5QbGFjZShQeU9iamVjdCAqKik7CkBAIC01NTksNyArODc3LDggQEAKICNlbmRpZgogCiAvKiBVc2Ugb25seSBpZiB5b3Uga25vdyBpdCdzIGEgc3RyaW5nICovCi0jZGVmaW5lIFB5VW5pY29kZV9DSEVDS19JTlRFUk5FRChvcCkgKCgoUHlVbmljb2RlT2JqZWN0ICopKG9wKSktPnN0YXRlKQorI2RlZmluZSBQeVVuaWNvZGVfQ0hFQ0tfSU5URVJORUQob3ApIFwKKyAgICAoKChQeUFTQ0lJT2JqZWN0ICopKG9wKSktPnN0YXRlLmludGVybmVkKQogCiAvKiAtLS0gd2NoYXJfdCBzdXBwb3J0IGZvciBwbGF0Zm9ybXMgd2hpY2ggc3VwcG9ydCBpdCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIApAQCAtNjA2LDYgKzkyNSwxMCBAQAogICAgIFB5X3NzaXplX3QgKnNpemUgICAgICAgICAgICAvKiBudW1iZXIgb2YgY2hhcmFjdGVycyBvZiB0aGUgcmVzdWx0ICovCiAgICAgKTsKIAorI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQorUHlBUElfRlVOQyh2b2lkKikgX1B5VW5pY29kZV9Bc0tpbmQoUHlPYmplY3QgKnMsIHVuc2lnbmVkIGludCBraW5kKTsKKyNlbmRpZgorCiAjZW5kaWYKIAogLyogLS0tIFVuaWNvZGUgb3JkaW5hbHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCkBAIC02NTEsNTAgKzk3NCw0MiBAQAogCiAvKiAtLS0gTWFuYWdlIHRoZSBkZWZhdWx0IGVuY29kaW5nIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIAotLyogUmV0dXJuIGEgUHl0aG9uIHN0cmluZyBob2xkaW5nIHRoZSBkZWZhdWx0IGVuY29kZWQgdmFsdWUgb2YgdGhlCi0gICBVbmljb2RlIG9iamVjdC4KLQotICAgU2FtZSBhcyBQeVVuaWNvZGVfQXNVVEY4U3RyaW5nKCkgZXhjZXB0Ci0gICB0aGUgcmVzdWx0aW5nIHN0cmluZyBpcyBjYWNoZWQgaW4gdGhlIFVuaWNvZGUgb2JqZWN0IGZvciBzdWJzZXF1ZW50Ci0gICB1c2FnZSBieSB0aGlzIGZ1bmN0aW9uLiBUaGUgY2FjaGVkIHZlcnNpb24gaXMgbmVlZGVkIHRvIGltcGxlbWVudAotICAgdGhlIGNoYXJhY3RlciBidWZmZXIgaW50ZXJmYWNlIGFuZCB3aWxsIGxpdmUgKGF0IGxlYXN0KSBhcyBsb25nIGFzCi0gICB0aGUgVW5pY29kZSBvYmplY3QgaXRzZWxmLgotCi0gICBUaGUgcmVmY291bnQgb2YgdGhlIHN0cmluZyBpcyAqbm90KiBpbmNyZW1lbnRlZC4KLQotICAgKioqIEV4cG9ydGVkIGZvciBpbnRlcm5hbCB1c2UgYnkgdGhlIGludGVycHJldGVyIG9ubHkgISEhICoqKgotCi0qLwotCi0jaWZuZGVmIFB5X0xJTUlURURfQVBJCi1QeUFQSV9GVU5DKFB5T2JqZWN0ICopIF9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZygKLSAgICBQeU9iamVjdCAqdW5pY29kZSwKLSAgICBjb25zdCBjaGFyICplcnJvcnMpOwotI2VuZGlmCi0KIC8qIFJldHVybnMgYSBwb2ludGVyIHRvIHRoZSBkZWZhdWx0IGVuY29kaW5nIChVVEYtOCkgb2YgdGhlCiAgICBVbmljb2RlIG9iamVjdCB1bmljb2RlIGFuZCB0aGUgc2l6ZSBvZiB0aGUgZW5jb2RlZCByZXByZXNlbnRhdGlvbgogICAgaW4gYnl0ZXMgc3RvcmVkIGluICpzaXplLgogCiAgICBJbiBjYXNlIG9mIGFuIGVycm9yLCBubyAqc2l6ZSBpcyBzZXQuCiAKKyAgIFRoaXMgZnVuY3Rpb24gY2FjaGVzIHRoZSBVVEYtOCBlbmNvZGVkIHN0cmluZyBpbiB0aGUgdW5pY29kZW9iamVjdAorICAgYW5kIHN1YnNlcXVlbnQgY2FsbHMgd2lsbCByZXR1cm4gdGhlIHNhbWUgc3RyaW5nLiAgVGhlIG1lbW9yeSBpcyByZWxlYXNlZAorICAgd2hlbiB0aGUgdW5pY29kZW9iamVjdCBpcyBkZWFsbG9jYXRlZC4KKworICAgX1B5VW5pY29kZV9Bc1N0cmluZ0FuZFNpemUgaXMgYSAjZGVmaW5lIGZvciBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZSB0bworICAgc3VwcG9ydCB0aGUgcHJldmlvdXMgaW50ZXJuYWwgZnVuY3Rpb24gd2l0aCB0aGUgc2FtZSBiZWhhdmlvdXIuCisKICAgICoqKiBUaGlzIEFQSSBpcyBmb3IgaW50ZXJwcmV0ZXIgSU5URVJOQUwgVVNFIE9OTFkgYW5kIHdpbGwgbGlrZWx5CiAgICAqKiogYmUgcmVtb3ZlZCBvciBjaGFuZ2VkIGluIHRoZSBmdXR1cmUuCiAKICAgICoqKiBJZiB5b3UgbmVlZCB0byBhY2Nlc3MgdGhlIFVuaWNvZGUgb2JqZWN0IGFzIFVURi04IGJ5dGVzIHN0cmluZywKICAgICoqKiBwbGVhc2UgdXNlIFB5VW5pY29kZV9Bc1VURjhTdHJpbmcoKSBpbnN0ZWFkLgotCiAqLwogCiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCi1QeUFQSV9GVU5DKGNoYXIgKikgX1B5VW5pY29kZV9Bc1N0cmluZ0FuZFNpemUoCitQeUFQSV9GVU5DKGNoYXIgKikgUHlVbmljb2RlX0FzVVRGOEFuZFNpemUoCiAgICAgUHlPYmplY3QgKnVuaWNvZGUsCiAgICAgUHlfc3NpemVfdCAqc2l6ZSk7CisjZGVmaW5lIF9QeVVuaWNvZGVfQXNTdHJpbmdBbmRTaXplIFB5VW5pY29kZV9Bc1VURjhBbmRTaXplCiAjZW5kaWYKIAogLyogUmV0dXJucyBhIHBvaW50ZXIgdG8gdGhlIGRlZmF1bHQgZW5jb2RpbmcgKFVURi04KSBvZiB0aGUKICAgIFVuaWNvZGUgb2JqZWN0IHVuaWNvZGUuCiAKKyAgIExpa2UgUHlVbmljb2RlX0FzVVRGOEFuZFNpemUoKSwgdGhpcyBhbHNvIGNhY2hlcyB0aGUgVVRGLTggcmVwcmVzZW50YXRpb24KKyAgIGluIHRoZSB1bmljb2Rlb2JqZWN0LgorCisgICBfUHlVbmljb2RlX0FzU3RyaW5nIGlzIGEgI2RlZmluZSBmb3IgUHlVbmljb2RlX0FzVVRGOCB0bworICAgc3VwcG9ydCB0aGUgcHJldmlvdXMgaW50ZXJuYWwgZnVuY3Rpb24gd2l0aCB0aGUgc2FtZSBiZWhhdmlvdXIuCisKICAgIFVzZSBvZiB0aGlzIEFQSSBpcyBERVBSRUNBVEVEIHNpbmNlIG5vIHNpemUgaW5mb3JtYXRpb24gY2FuIGJlCiAgICBleHRyYWN0ZWQgZnJvbSB0aGUgcmV0dXJuZWQgZGF0YS4KIApAQCAtNzA3LDcgKzEwMjIsOCBAQAogKi8KIAogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQotUHlBUElfRlVOQyhjaGFyICopIF9QeVVuaWNvZGVfQXNTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpOworUHlBUElfRlVOQyhjaGFyICopIFB5VW5pY29kZV9Bc1VURjgoUHlPYmplY3QgKnVuaWNvZGUpOworI2RlZmluZSBfUHlVbmljb2RlX0FzU3RyaW5nIFB5VW5pY29kZV9Bc1VURjgKICNlbmRpZgogCiAvKiBSZXR1cm5zICJ1dGYtOCIuICAqLwpAQCAtODEyLDYgKzExMjgsMTIgQEAKICAgICBpbnQgYmFzZTY0V2hpdGVTcGFjZSwgICAgICAgLyogRW5jb2RlIHdoaXRlc3BhY2UgKHNwLCBodCwgbmwsIGNyKSBpbiBiYXNlNjQgKi8KICAgICBjb25zdCBjaGFyICplcnJvcnMgICAgICAgICAgLyogZXJyb3IgaGFuZGxpbmcgKi8KICAgICApOworUHlBUElfRlVOQyhQeU9iamVjdCopIF9QeVVuaWNvZGVfRW5jb2RlVVRGNygKKyAgICBQeU9iamVjdCAqdW5pY29kZSwgICAgICAgICAgLyogVW5pY29kZSBvYmplY3QgKi8KKyAgICBpbnQgYmFzZTY0U2V0TywgICAgICAgICAgICAgLyogRW5jb2RlIFJGQzIxNTIgU2V0IE8gY2hhcmFjdGVycyBpbiBiYXNlNjQgKi8KKyAgICBpbnQgYmFzZTY0V2hpdGVTcGFjZSwgICAgICAgLyogRW5jb2RlIHdoaXRlc3BhY2UgKHNwLCBodCwgbmwsIGNyKSBpbiBiYXNlNjQgKi8KKyAgICBjb25zdCBjaGFyICplcnJvcnMgICAgICAgICAgLyogZXJyb3IgaGFuZGxpbmcgKi8KKyAgICApOwogI2VuZGlmCiAKIC8qIC0tLSBVVEYtOCBDb2RlY3MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwpAQCAtODM0LDYgKzExNTYsMTAgQEAKICAgICApOwogCiAjaWZuZGVmIFB5X0xJTUlURURfQVBJCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgX1B5VW5pY29kZV9Bc1VURjhTdHJpbmcoCisgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgY29uc3QgY2hhciAqZXJyb3JzKTsKKwogUHlBUElfRlVOQyhQeU9iamVjdCopIFB5VW5pY29kZV9FbmNvZGVVVEY4KAogICAgIGNvbnN0IFB5X1VOSUNPREUgKmRhdGEsICAgICAvKiBVbmljb2RlIGNoYXIgYnVmZmVyICovCiAgICAgUHlfc3NpemVfdCBsZW5ndGgsICAgICAgICAgIC8qIG51bWJlciBvZiBQeV9VTklDT0RFIGNoYXJzIHRvIGVuY29kZSAqLwpAQCAtOTE1LDYgKzEyNDEsMTEgQEAKICAgICBjb25zdCBjaGFyICplcnJvcnMsICAgICAgICAgLyogZXJyb3IgaGFuZGxpbmcgKi8KICAgICBpbnQgYnl0ZW9yZGVyICAgICAgICAgICAgICAgLyogYnl0ZW9yZGVyIHRvIHVzZSAwPUJPTStuYXRpdmU7LTE9TEUsMT1CRSAqLwogICAgICk7CitQeUFQSV9GVU5DKFB5T2JqZWN0KikgX1B5VW5pY29kZV9FbmNvZGVVVEYzMigKKyAgICBQeU9iamVjdCAqb2JqZWN0LCAgICAgICAgICAgLyogVW5pY29kZSBvYmplY3QgKi8KKyAgICBjb25zdCBjaGFyICplcnJvcnMsICAgICAgICAgLyogZXJyb3IgaGFuZGxpbmcgKi8KKyAgICBpbnQgYnl0ZW9yZGVyICAgICAgICAgICAgICAgLyogYnl0ZW9yZGVyIHRvIHVzZSAwPUJPTStuYXRpdmU7LTE9TEUsMT1CRSAqLworICAgICk7CiAjZW5kaWYKIAogLyogLS0tIFVURi0xNiBDb2RlY3MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCkBAIC05OTUsNiArMTMyNiwxMSBAQAogICAgIGNvbnN0IGNoYXIgKmVycm9ycywgICAgICAgICAvKiBlcnJvciBoYW5kbGluZyAqLwogICAgIGludCBieXRlb3JkZXIgICAgICAgICAgICAgICAvKiBieXRlb3JkZXIgdG8gdXNlIDA9Qk9NK25hdGl2ZTstMT1MRSwxPUJFICovCiAgICAgKTsKK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBfUHlVbmljb2RlX0VuY29kZVVURjE2KAorICAgIFB5T2JqZWN0KiB1bmljb2RlLCAgICAgICAgICAvKiBVbmljb2RlIG9iamVjdCAqLworICAgIGNvbnN0IGNoYXIgKmVycm9ycywgICAgICAgICAvKiBlcnJvciBoYW5kbGluZyAqLworICAgIGludCBieXRlb3JkZXIgICAgICAgICAgICAgICAvKiBieXRlb3JkZXIgdG8gdXNlIDA9Qk9NK25hdGl2ZTstMT1MRSwxPUJFICovCisgICAgKTsKICNlbmRpZgogCiAvKiAtLS0gVW5pY29kZS1Fc2NhcGUgQ29kZWNzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KQEAgLTEwNjQsNiArMTQwMCwxMCBAQAogICAgICk7CiAKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBfUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKAorICAgIFB5T2JqZWN0KiB1bmljb2RlLAorICAgIGNvbnN0IGNoYXIqIGVycm9ycyk7CisKIFB5QVBJX0ZVTkMoUHlPYmplY3QqKSBQeVVuaWNvZGVfRW5jb2RlTGF0aW4xKAogICAgIGNvbnN0IFB5X1VOSUNPREUgKmRhdGEsICAgICAvKiBVbmljb2RlIGNoYXIgYnVmZmVyICovCiAgICAgUHlfc3NpemVfdCBsZW5ndGgsICAgICAgICAgIC8qIE51bWJlciBvZiBQeV9VTklDT0RFIGNoYXJzIHRvIGVuY29kZSAqLwpAQCAtMTA4OCw2ICsxNDI4LDEwIEBACiAgICAgKTsKIAogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQorUHlBUElfRlVOQyhQeU9iamVjdCopIF9QeVVuaWNvZGVfQXNBU0NJSVN0cmluZygKKyAgICBQeU9iamVjdCogdW5pY29kZSwKKyAgICBjb25zdCBjaGFyKiBlcnJvcnMpOworCiBQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX0VuY29kZUFTQ0lJKAogICAgIGNvbnN0IFB5X1VOSUNPREUgKmRhdGEsICAgICAvKiBVbmljb2RlIGNoYXIgYnVmZmVyICovCiAgICAgUHlfc3NpemVfdCBsZW5ndGgsICAgICAgICAgIC8qIE51bWJlciBvZiBQeV9VTklDT0RFIGNoYXJzIHRvIGVuY29kZSAqLwpAQCAtMTEzOSw2ICsxNDgzLDEyIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1bmljb2RlIG9yZGluYWwgLT4gY2hhciBvcmRpbmFsKSAqLwogICAgIGNvbnN0IGNoYXIgKmVycm9ycyAgICAgICAgICAvKiBlcnJvciBoYW5kbGluZyAqLwogICAgICk7CitQeUFQSV9GVU5DKFB5T2JqZWN0KikgX1B5VW5pY29kZV9FbmNvZGVDaGFybWFwKAorICAgIFB5T2JqZWN0ICp1bmljb2RlLCAgICAgICAgICAvKiBVbmljb2RlIG9iamVjdCAqLworICAgIFB5T2JqZWN0ICptYXBwaW5nLCAgICAgICAgICAvKiBjaGFyYWN0ZXIgbWFwcGluZworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodW5pY29kZSBvcmRpbmFsIC0+IGNoYXIgb3JkaW5hbCkgKi8KKyAgICBjb25zdCBjaGFyICplcnJvcnMgICAgICAgICAgLyogZXJyb3IgaGFuZGxpbmcgKi8KKyAgICApOwogI2VuZGlmCiAKIC8qIFRyYW5zbGF0ZSBhIFB5X1VOSUNPREUgYnVmZmVyIG9mIHRoZSBnaXZlbiBsZW5ndGggYnkgYXBwbHlpbmcgYQpAQCAtMTE2Myw3ICsxNTEzLDcgQEAKICAgICApOwogI2VuZGlmCiAKLSNpZmRlZiBNU19XSU4zMgorI2lmZGVmIEhBVkVfTUJDUwogCiAvKiAtLS0gTUJDUyBjb2RlY3MgZm9yIFdpbmRvd3MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIApAQCAtMTE4MCw2ICsxNTMwLDE0IEBACiAgICAgUHlfc3NpemVfdCAqY29uc3VtZWQgICAgICAgIC8qIGJ5dGVzIGNvbnN1bWVkICovCiAgICAgKTsKIAorUHlBUElfRlVOQyhQeU9iamVjdCopIFB5VW5pY29kZV9EZWNvZGVDb2RlUGFnZVN0YXRlZnVsKAorICAgIGludCBjb2RlX3BhZ2UsICAgICAgICAgICAgICAvKiBjb2RlIHBhZ2UgbnVtYmVyICovCisgICAgY29uc3QgY2hhciAqc3RyaW5nLCAgICAgICAgIC8qIGVuY29kZWQgc3RyaW5nICovCisgICAgUHlfc3NpemVfdCBsZW5ndGgsICAgICAgICAgIC8qIHNpemUgb2Ygc3RyaW5nICovCisgICAgY29uc3QgY2hhciAqZXJyb3JzLCAgICAgICAgIC8qIGVycm9yIGhhbmRsaW5nICovCisgICAgUHlfc3NpemVfdCAqY29uc3VtZWQgICAgICAgIC8qIGJ5dGVzIGNvbnN1bWVkICovCisgICAgKTsKKwogUHlBUElfRlVOQyhQeU9iamVjdCopIFB5VW5pY29kZV9Bc01CQ1NTdHJpbmcoCiAgICAgUHlPYmplY3QgKnVuaWNvZGUgICAgICAgICAgIC8qIFVuaWNvZGUgb2JqZWN0ICovCiAgICAgKTsKQEAgLTExODcsMTIgKzE1NDUsMTggQEAKICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKIFB5QVBJX0ZVTkMoUHlPYmplY3QqKSBQeVVuaWNvZGVfRW5jb2RlTUJDUygKICAgICBjb25zdCBQeV9VTklDT0RFICpkYXRhLCAgICAgLyogVW5pY29kZSBjaGFyIGJ1ZmZlciAqLwotICAgIFB5X3NzaXplX3QgbGVuZ3RoLCAgICAgICAgICAvKiBOdW1iZXIgb2YgUHlfVU5JQ09ERSBjaGFycyB0byBlbmNvZGUgKi8KKyAgICBQeV9zc2l6ZV90IGxlbmd0aCwgICAgICAgICAgLyogbnVtYmVyIG9mIFB5X1VOSUNPREUgY2hhcnMgdG8gZW5jb2RlICovCiAgICAgY29uc3QgY2hhciAqZXJyb3JzICAgICAgICAgIC8qIGVycm9yIGhhbmRsaW5nICovCiAgICAgKTsKICNlbmRpZgogCi0jZW5kaWYgLyogTVNfV0lOMzIgKi8KK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBQeVVuaWNvZGVfRW5jb2RlQ29kZVBhZ2UoCisgICAgaW50IGNvZGVfcGFnZSwgICAgICAgICAgICAgIC8qIGNvZGUgcGFnZSBudW1iZXIgKi8KKyAgICBQeU9iamVjdCAqdW5pY29kZSwgICAgICAgICAgLyogVW5pY29kZSBvYmplY3QgKi8KKyAgICBjb25zdCBjaGFyICplcnJvcnMgICAgICAgICAgLyogZXJyb3IgaGFuZGxpbmcgKi8KKyAgICApOworCisjZW5kaWYgLyogSEFWRV9NQkNTICovCiAKIC8qIC0tLSBEZWNpbWFsIEVuY29kZXIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCkBAIC0xMjQwLDYgKzE2MDQsNDkgQEAKICAgICApOwogI2VuZGlmCiAKKy8qIFNpbWlsYXIgdG8gUHlVbmljb2RlX1RyYW5zZm9ybURlY2ltYWxUb0FTQ0lJKCksIGJ1dCB0YWtlcyBhIFB5T2JqZWN0CisgICBhcyBhcmd1bWVudCBpbnN0ZWFkIG9mIGEgcmF3IGJ1ZmZlciBhbmQgbGVuZ3RoLiAgVGhpcyBmdW5jdGlvbiBhZGRpdGlvbmFsbHkKKyAgIHRyYW5zZm9ybXMgc3BhY2VzIHRvIEFTQ0lJIGJlY2F1c2UgdGhpcyBpcyB3aGF0IHRoZSBjYWxsZXJzIGluIGxvbmdvYmplY3QsCisgICBmbG9hdG9iamVjdCwgYW5kIGNvbXBsZXhvYmplY3QgZGlkIGFueXdheXMuICovCisKKyNpZm5kZWYgUHlfTElNSVRFRF9BUEkKK1B5QVBJX0ZVTkMoUHlPYmplY3QqKSBfUHlVbmljb2RlX1RyYW5zZm9ybURlY2ltYWxBbmRTcGFjZVRvQVNDSUkoCisgICAgUHlPYmplY3QgKnVuaWNvZGUgICAgICAgICAgIC8qIFVuaWNvZGUgb2JqZWN0ICovCisgICAgKTsKKyNlbmRpZgorCisvKiAtLS0gTG9jYWxlIGVuY29kaW5nIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLworCisvKiBEZWNvZGUgYSBzdHJpbmcgZnJvbSB0aGUgY3VycmVudCBsb2NhbGUgZW5jb2RpbmcuIFRoZSBkZWNvZGVyIGlzIHN0cmljdCBpZgorICAgKnN1cnJvZ2F0ZWVzY2FwZSogaXMgZXF1YWwgdG8gemVybywgb3RoZXJ3aXNlIGl0IHVzZXMgdGhlICdzdXJyb2dhdGVlc2NhcGUnCisgICBlcnJvciBoYW5kbGVyIChQRVAgMzgzKSB0byBlc2NhcGUgdW5kZWNvZGFibGUgYnl0ZXMuIElmIGEgYnl0ZSBzZXF1ZW5jZSBjYW4KKyAgIGJlIGRlY29kZWQgYXMgYSBzdXJyb2dhdGUgY2hhcmFjdGVyIGFuZCAqc3Vycm9nYXRlZXNjYXBlKiBpcyBub3QgZXF1YWwgdG8KKyAgIHplcm8sIHRoZSBieXRlIHNlcXVlbmNlIGlzIGVzY2FwZWQgdXNpbmcgdGhlICdzdXJyb2dhdGVlc2NhcGUnIGVycm9yIGhhbmRsZXIKKyAgIGluc3RlYWQgb2YgYmVpbmcgZGVjb2RlZC4gKnN0ciogbXVzdCBlbmQgd2l0aCBhIG51bGwgY2hhcmFjdGVyIGJ1dCBjYW5ub3QKKyAgIGNvbnRhaW4gZW1iZWRkZWQgbnVsbCBjaGFyYWN0ZXJzLiAqLworCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX0RlY29kZUxvY2FsZUFuZFNpemUoCisgICAgY29uc3QgY2hhciAqc3RyLAorICAgIFB5X3NzaXplX3QgbGVuLAorICAgIGNvbnN0IGNoYXIgKmVycm9ycyk7CisKKy8qIFNpbWlsYXIgdG8gUHlVbmljb2RlX0RlY29kZUxvY2FsZUFuZFNpemUoKSwgYnV0IGNvbXB1dGUgdGhlIHN0cmluZworICAgbGVuZ3RoIHVzaW5nIHN0cmxlbigpLiAqLworCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX0RlY29kZUxvY2FsZSgKKyAgICBjb25zdCBjaGFyICpzdHIsCisgICAgY29uc3QgY2hhciAqZXJyb3JzKTsKKworLyogRW5jb2RlIGEgVW5pY29kZSBvYmplY3QgdG8gdGhlIGN1cnJlbnQgbG9jYWxlIGVuY29kaW5nLiBUaGUgZW5jb2RlciBpcworICAgc3RyaWN0IGlzICpzdXJyb2dhdGVlc2NhcGUqIGlzIGVxdWFsIHRvIHplcm8sIG90aGVyd2lzZSB0aGUKKyAgICJzdXJyb2dhdGVlc2NhcGUiIGVycm9yIGhhbmRsZXIgaXMgdXNlZC4gUmV0dXJuIGEgYnl0ZXMgb2JqZWN0LiBUaGUgc3RyaW5nCisgICBjYW5ub3QgY29udGFpbiBlbWJlZGRlZCBudWxsIGNoYXJhY3RlcnMuLiAqLworCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgUHlVbmljb2RlX0VuY29kZUxvY2FsZSgKKyAgICBQeU9iamVjdCAqdW5pY29kZSwKKyAgICBjb25zdCBjaGFyICplcnJvcnMKKyAgICApOworCiAvKiAtLS0gRmlsZSBzeXN0ZW0gZW5jb2RpbmcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCiAvKiBQYXJzZVR1cGxlIGNvbnZlcnRlcjogZW5jb2RlIHN0ciBvYmplY3RzIHRvIGJ5dGVzIHVzaW5nCkBAIC0xMjkyLDcgKzE2OTksNyBAQAogCiAgICBUaGVzZSBhcmUgY2FwYWJsZSBvZiBoYW5kbGluZyBVbmljb2RlIG9iamVjdHMgYW5kIHN0cmluZ3Mgb24gaW5wdXQKICAgICh3ZSByZWZlciB0byB0aGVtIGFzIHN0cmluZ3MgaW4gdGhlIGRlc2NyaXB0aW9ucykgYW5kIHJldHVybgotICAgVW5pY29kZSBvYmplY3RzIG9yIGludGVnZXJzIGFzIGFwcG9ycHJpYXRlLiAqLworICAgVW5pY29kZSBvYmplY3RzIG9yIGludGVnZXJzIGFzIGFwcHJvcHJpYXRlLiAqLwogCiAvKiBDb25jYXQgdHdvIHN0cmluZ3MgZ2l2aW5nIGEgbmV3IFVuaWNvZGUgc3RyaW5nLiAqLwogCkBAIC0xNDI3LDYgKzE4MzQsMTUgQEAKICAgICBpbnQgZGlyZWN0aW9uICAgICAgICAgICAgICAgLyogRmluZCBkaXJlY3Rpb246ICsxIGZvcndhcmQsIC0xIGJhY2t3YXJkICovCiAgICAgKTsKIAorLyogTGlrZSBQeVVuaWNvZGVfRmluZCwgYnV0IHNlYXJjaCBmb3Igc2luZ2xlIGNoYXJhY3RlciBvbmx5LiAqLworUHlBUElfRlVOQyhQeV9zc2l6ZV90KSBQeVVuaWNvZGVfRmluZENoYXIoCisgICAgUHlPYmplY3QgKnN0ciwKKyAgICBQeV9VQ1M0IGNoLAorICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgUHlfc3NpemVfdCBlbmQsCisgICAgaW50IGRpcmVjdGlvbgorICAgICk7CisKIC8qIENvdW50IHRoZSBudW1iZXIgb2Ygb2NjdXJyZW5jZXMgb2Ygc3Vic3RyIGluIHN0cltzdGFydDplbmRdLiAqLwogCiBQeUFQSV9GVU5DKFB5X3NzaXplX3QpIFB5VW5pY29kZV9Db3VudCgKQEAgLTE0NjMsNyArMTg3OSw3IEBACiAvKiBSaWNoIGNvbXBhcmUgdHdvIHN0cmluZ3MgYW5kIHJldHVybiBvbmUgb2YgdGhlIGZvbGxvd2luZzoKIAogICAgLSBOVUxMIGluIGNhc2UgYW4gZXhjZXB0aW9uIHdhcyByYWlzZWQKLSAgIC0gUHlfVHJ1ZSBvciBQeV9GYWxzZSBmb3Igc3VjY2Vzc2Z1bHkgY29tcGFyaXNvbnMKKyAgIC0gUHlfVHJ1ZSBvciBQeV9GYWxzZSBmb3Igc3VjY2Vzc2Z1bGx5IGNvbXBhcmlzb25zCiAgICAtIFB5X05vdEltcGxlbWVudGVkIGluIGNhc2UgdGhlIHR5cGUgY29tYmluYXRpb24gaXMgdW5rbm93bgogCiAgICBOb3RlIHRoYXQgUHlfRVEgYW5kIFB5X05FIGNvbXBhcmlzb25zIGNhbiBjYXVzZSBhIFVuaWNvZGVXYXJuaW5nIGluCkBAIC0xNTE0LDcgKzE5MzAsNyBAQAogI2lmbmRlZiBQeV9MSU1JVEVEX0FQSQogLyogRXh0ZXJuYWxseSB2aXNpYmxlIGZvciBzdHIuc3RyaXAodW5pY29kZSkgKi8KIFB5QVBJX0ZVTkMoUHlPYmplY3QgKikgX1B5VW5pY29kZV9YU3RyaXAoCi0gICAgUHlVbmljb2RlT2JqZWN0ICpzZWxmLAorICAgIFB5T2JqZWN0ICpzZWxmLAogICAgIGludCBzdHJpcHR5cGUsCiAgICAgUHlPYmplY3QgKnNlcG9iagogICAgICk7CkBAIC0xNTM2LDEzICsxOTUyLDE2IEBACiAgICBpbnRvIHRoZSBzdHJpbmcgcG9pbnRlZCB0byBieSBidWZmZXIuICBGb3IgdGhlIGFyZ3VtZW50IGRlc2NyaXB0aW9ucywKICAgIHNlZSBPYmplY3RzL3N0cmluZ2xpYi9sb2NhbGV1dGlsLmggKi8KICNpZm5kZWYgUHlfTElNSVRFRF9BUEkKLVB5QVBJX0ZVTkMoUHlfc3NpemVfdCkgX1B5VW5pY29kZV9JbnNlcnRUaG91c2FuZHNHcm91cGluZyhQeV9VTklDT0RFICpidWZmZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG5fYnVmZmVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfVU5JQ09ERSAqZGlnaXRzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuX2RpZ2l0cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbWluX3dpZHRoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZ3JvdXBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp0aG91c2FuZHNfc2VwKTsKK1B5QVBJX0ZVTkMoUHlfc3NpemVfdCkgX1B5VW5pY29kZV9JbnNlcnRUaG91c2FuZHNHcm91cGluZygKKyAgICBQeU9iamVjdCAqdW5pY29kZSwKKyAgICBpbnQga2luZCwKKyAgICB2b2lkICpidWZmZXIsCisgICAgUHlfc3NpemVfdCBuX2J1ZmZlciwKKyAgICB2b2lkICpkaWdpdHMsCisgICAgUHlfc3NpemVfdCBuX2RpZ2l0cywKKyAgICBQeV9zc2l6ZV90IG1pbl93aWR0aCwKKyAgICBjb25zdCBjaGFyICpncm91cGluZywKKyAgICBjb25zdCBjaGFyICp0aG91c2FuZHNfc2VwKTsKICNlbmRpZgogLyogPT09IENoYXJhY3RlcnMgVHlwZSBBUElzID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCiAKQEAgLTE1OTgsNiArMjAxNywzNCBAQAogICAgIFB5X1VDUzQgY2ggICAgICAgLyogVW5pY29kZSBjaGFyYWN0ZXIgKi8KICAgICApOwogCitQeUFQSV9GVU5DKGludCkgX1B5VW5pY29kZV9Ub0xvd2VyRnVsbCgKKyAgICBQeV9VQ1M0IGNoLCAgICAgICAvKiBVbmljb2RlIGNoYXJhY3RlciAqLworICAgIFB5X1VDUzQgKnJlcworICAgICk7CisKK1B5QVBJX0ZVTkMoaW50KSBfUHlVbmljb2RlX1RvVGl0bGVGdWxsKAorICAgIFB5X1VDUzQgY2gsICAgICAgIC8qIFVuaWNvZGUgY2hhcmFjdGVyICovCisgICAgUHlfVUNTNCAqcmVzCisgICAgKTsKKworUHlBUElfRlVOQyhpbnQpIF9QeVVuaWNvZGVfVG9VcHBlckZ1bGwoCisgICAgUHlfVUNTNCBjaCwgICAgICAgLyogVW5pY29kZSBjaGFyYWN0ZXIgKi8KKyAgICBQeV9VQ1M0ICpyZXMKKyAgICApOworCitQeUFQSV9GVU5DKGludCkgX1B5VW5pY29kZV9Ub0ZvbGRlZEZ1bGwoCisgICAgUHlfVUNTNCBjaCwgICAgICAgLyogVW5pY29kZSBjaGFyYWN0ZXIgKi8KKyAgICBQeV9VQ1M0ICpyZXMKKyAgICApOworCitQeUFQSV9GVU5DKGludCkgX1B5VW5pY29kZV9Jc0Nhc2VJZ25vcmFibGUoCisgICAgUHlfVUNTNCBjaCAgICAgICAgIC8qIFVuaWNvZGUgY2hhcmFjdGVyICovCisgICAgKTsKKworUHlBUElfRlVOQyhpbnQpIF9QeVVuaWNvZGVfSXNDYXNlZCgKKyAgICBQeV9VQ1M0IGNoICAgICAgICAgLyogVW5pY29kZSBjaGFyYWN0ZXIgKi8KKyAgICApOworCiBQeUFQSV9GVU5DKGludCkgX1B5VW5pY29kZV9Ub0RlY2ltYWxEaWdpdCgKICAgICBQeV9VQ1M0IGNoICAgICAgIC8qIFVuaWNvZGUgY2hhcmFjdGVyICovCiAgICAgKTsKQEAgLTE2NzYsNiArMjEyMywxNyBAQAogICAgICk7CiAjZW5kaWYgLyogUHlfTElNSVRFRF9BUEkgKi8KIAorI2lmIGRlZmluZWQoUHlfREVCVUcpICYmICFkZWZpbmVkKFB5X0xJTUlURURfQVBJKQorUHlBUElfRlVOQyhpbnQpIF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSgKKyAgICBQeU9iamVjdCAqb3AsCisgICAgaW50IGNoZWNrX2NvbnRlbnQpOworI2VuZGlmCisKKy8qIFJldHVybiBhbiBpbnRlcm5lZCBVbmljb2RlIG9iamVjdCBmb3IgYW4gSWRlbnRpZmllcjsgbWF5IGZhaWwgaWYgdGhlcmUgaXMgbm8gbWVtb3J5LiovCitQeUFQSV9GVU5DKFB5T2JqZWN0KikgX1B5VW5pY29kZV9Gcm9tSWQoX1B5X0lkZW50aWZpZXIqKTsKKy8qIENsZWFyIGFsbCBzdGF0aWMgc3RyaW5ncy4gKi8KK1B5QVBJX0ZVTkModm9pZCkgX1B5VW5pY29kZV9DbGVhclN0YXRpY1N0cmluZ3Modm9pZCk7CisKICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9MSUNFTlNFIGIvTElDRU5TRQppbmRleCA4YjY3NjBkLi4zNDljYmJmIDEwMDY0NAotLS0gYS9MSUNFTlNFCisrKyBiL0xJQ0VOU0UKQEAgLTczLDYgKzczLDcgQEAKICAgICAzLjIgICAgICAgICAgICAgMy4xICAgICAgICAgMjAxMSAgICAgICAgUFNGICAgICAgICAgeWVzCiAgICAgMy4yLjEgICAgICAgICAgIDMuMiAgICAgICAgIDIwMTEgICAgICAgIFBTRiAgICAgICAgIHllcwogICAgIDMuMi4yICAgICAgICAgICAzLjIuMSAgICAgICAyMDExICAgICAgICBQU0YgICAgICAgICB5ZXMKKyAgICAzLjMgICAgICAgICAgICAgMy4yICAgICAgICAgMjAxMiAgICAgICAgUFNGICAgICAgICAgeWVzCiAKIEZvb3Rub3RlczoKIApkaWZmIC0tZ2l0IGEvTGliL19kdW1teV90aHJlYWQucHkgYi9MaWIvX2R1bW15X3RocmVhZC5weQppbmRleCBlZDUwNTIwLi4xM2IxZjI2IDEwMDY0NAotLS0gYS9MaWIvX2R1bW15X3RocmVhZC5weQorKysgYi9MaWIvX2R1bW15X3RocmVhZC5weQpAQCAtMjQsMTEgKzI0LDcgQEAKICMgaW1wb3J0cyBhcmUgZG9uZSB3aGVuIG5lZWRlZCBvbiBhIGZ1bmN0aW9uLWJ5LWZ1bmN0aW9uIGJhc2lzLiAgU2luY2UgdGhyZWFkcwogIyBhcmUgZGlzYWJsZWQsIHRoZSBpbXBvcnQgbG9jayBzaG91bGQgbm90IGJlIGFuIGlzc3VlIGFueXdheSAoPz8pLgogCi1jbGFzcyBlcnJvcihFeGNlcHRpb24pOgotICAgICIiIkR1bW15IGltcGxlbWVudGF0aW9uIG9mIF90aHJlYWQuZXJyb3IuIiIiCi0KLSAgICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MpOgotICAgICAgICBzZWxmLmFyZ3MgPSBhcmdzCitlcnJvciA9IFJ1bnRpbWVFcnJvcgogCiBkZWYgc3RhcnRfbmV3X3RocmVhZChmdW5jdGlvbiwgYXJncywga3dhcmdzPXt9KToKICAgICAiIiJEdW1teSBpbXBsZW1lbnRhdGlvbiBvZiBfdGhyZWFkLnN0YXJ0X25ld190aHJlYWQoKS4KZGlmZiAtLWdpdCBhL0xpYi9fcHlpby5weSBiL0xpYi9fcHlpby5weQppbmRleCBhMmZhZWIzLi5mNjYyOTBmIDEwMDY0NAotLS0gYS9MaWIvX3B5aW8ucHkKKysrIGIvTGliL19weWlvLnB5CkBAIC0xNSw3ICsxNSw2IEBACiAKIGltcG9ydCBpbwogZnJvbSBpbyBpbXBvcnQgKF9fYWxsX18sIFNFRUtfU0VULCBTRUVLX0NVUiwgU0VFS19FTkQpCi1mcm9tIGVycm5vIGltcG9ydCBFSU5UUgogCiAjIG9wZW4oKSB1c2VzIHN0X2Jsa3NpemUgd2hlbmV2ZXIgd2UgY2FuCiBERUZBVUxUX0JVRkZFUl9TSVpFID0gOCAqIDEwMjQgICMgYnl0ZXMKQEAgLTI0LDIwICsyMywxMiBAQAogIyBkZWZpbmVkIGluIGlvLnB5LiBXZSBkb24ndCB1c2UgcmVhbCBpbmhlcml0YW5jZSB0aG91Z2gsIGJlY2F1c2Ugd2UgZG9uJ3QKICMgd2FudCB0byBpbmhlcml0IHRoZSBDIGltcGxlbWVudGF0aW9ucy4KIAotCi1jbGFzcyBCbG9ja2luZ0lPRXJyb3IoSU9FcnJvcik6Ci0KLSAgICAiIiJFeGNlcHRpb24gcmFpc2VkIHdoZW4gSS9PIHdvdWxkIGJsb2NrIG9uIGEgbm9uLWJsb2NraW5nIEkvTyBzdHJlYW0uIiIiCi0KLSAgICBkZWYgX19pbml0X18oc2VsZiwgZXJybm8sIHN0cmVycm9yLCBjaGFyYWN0ZXJzX3dyaXR0ZW49MCk6Ci0gICAgICAgIHN1cGVyKCkuX19pbml0X18oZXJybm8sIHN0cmVycm9yKQotICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShjaGFyYWN0ZXJzX3dyaXR0ZW4sIGludCk6Ci0gICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoImNoYXJhY3RlcnNfd3JpdHRlbiBtdXN0IGJlIGEgaW50ZWdlciIpCi0gICAgICAgIHNlbGYuY2hhcmFjdGVyc193cml0dGVuID0gY2hhcmFjdGVyc193cml0dGVuCisjIFJlYmluZCBmb3IgY29tcGF0aWJpbGl0eQorQmxvY2tpbmdJT0Vycm9yID0gQmxvY2tpbmdJT0Vycm9yCiAKIAogZGVmIG9wZW4oZmlsZSwgbW9kZT0iciIsIGJ1ZmZlcmluZz0tMSwgZW5jb2Rpbmc9Tm9uZSwgZXJyb3JzPU5vbmUsCi0gICAgICAgICBuZXdsaW5lPU5vbmUsIGNsb3NlZmQ9VHJ1ZSk6CisgICAgICAgICBuZXdsaW5lPU5vbmUsIGNsb3NlZmQ9VHJ1ZSwgb3BlbmVyPU5vbmUpOgogCiAgICAgciIiIk9wZW4gZmlsZSBhbmQgcmV0dXJuIGEgc3RyZWFtLiAgUmFpc2UgSU9FcnJvciB1cG9uIGZhaWx1cmUuCiAKQEAgLTQ3LDIxICszOCwyMiBAQAogICAgIHdyYXBwZWQuIChJZiBhIGZpbGUgZGVzY3JpcHRvciBpcyBnaXZlbiwgaXQgaXMgY2xvc2VkIHdoZW4gdGhlCiAgICAgcmV0dXJuZWQgSS9PIG9iamVjdCBpcyBjbG9zZWQsIHVubGVzcyBjbG9zZWZkIGlzIHNldCB0byBGYWxzZS4pCiAKLSAgICBtb2RlIGlzIGFuIG9wdGlvbmFsIHN0cmluZyB0aGF0IHNwZWNpZmllcyB0aGUgbW9kZSBpbiB3aGljaCB0aGUgZmlsZQotICAgIGlzIG9wZW5lZC4gSXQgZGVmYXVsdHMgdG8gJ3InIHdoaWNoIG1lYW5zIG9wZW4gZm9yIHJlYWRpbmcgaW4gdGV4dAotICAgIG1vZGUuICBPdGhlciBjb21tb24gdmFsdWVzIGFyZSAndycgZm9yIHdyaXRpbmcgKHRydW5jYXRpbmcgdGhlIGZpbGUgaWYKLSAgICBpdCBhbHJlYWR5IGV4aXN0cyksIGFuZCAnYScgZm9yIGFwcGVuZGluZyAod2hpY2ggb24gc29tZSBVbml4IHN5c3RlbXMsCi0gICAgbWVhbnMgdGhhdCBhbGwgd3JpdGVzIGFwcGVuZCB0byB0aGUgZW5kIG9mIHRoZSBmaWxlIHJlZ2FyZGxlc3Mgb2YgdGhlCi0gICAgY3VycmVudCBzZWVrIHBvc2l0aW9uKS4gSW4gdGV4dCBtb2RlLCBpZiBlbmNvZGluZyBpcyBub3Qgc3BlY2lmaWVkIHRoZQotICAgIGVuY29kaW5nIHVzZWQgaXMgcGxhdGZvcm0gZGVwZW5kZW50LiAoRm9yIHJlYWRpbmcgYW5kIHdyaXRpbmcgcmF3Ci0gICAgYnl0ZXMgdXNlIGJpbmFyeSBtb2RlIGFuZCBsZWF2ZSBlbmNvZGluZyB1bnNwZWNpZmllZC4pIFRoZSBhdmFpbGFibGUKLSAgICBtb2RlcyBhcmU6CisgICAgbW9kZSBpcyBhbiBvcHRpb25hbCBzdHJpbmcgdGhhdCBzcGVjaWZpZXMgdGhlIG1vZGUgaW4gd2hpY2ggdGhlIGZpbGUgaXMKKyAgICBvcGVuZWQuIEl0IGRlZmF1bHRzIHRvICdyJyB3aGljaCBtZWFucyBvcGVuIGZvciByZWFkaW5nIGluIHRleHQgbW9kZS4gT3RoZXIKKyAgICBjb21tb24gdmFsdWVzIGFyZSAndycgZm9yIHdyaXRpbmcgKHRydW5jYXRpbmcgdGhlIGZpbGUgaWYgaXQgYWxyZWFkeQorICAgIGV4aXN0cyksICd4JyBmb3IgZXhjbHVzaXZlIGNyZWF0aW9uIG9mIGEgbmV3IGZpbGUsIGFuZCAnYScgZm9yIGFwcGVuZGluZworICAgICh3aGljaCBvbiBzb21lIFVuaXggc3lzdGVtcywgbWVhbnMgdGhhdCBhbGwgd3JpdGVzIGFwcGVuZCB0byB0aGUgZW5kIG9mIHRoZQorICAgIGZpbGUgcmVnYXJkbGVzcyBvZiB0aGUgY3VycmVudCBzZWVrIHBvc2l0aW9uKS4gSW4gdGV4dCBtb2RlLCBpZiBlbmNvZGluZyBpcworICAgIG5vdCBzcGVjaWZpZWQgdGhlIGVuY29kaW5nIHVzZWQgaXMgcGxhdGZvcm0gZGVwZW5kZW50LiAoRm9yIHJlYWRpbmcgYW5kCisgICAgd3JpdGluZyByYXcgYnl0ZXMgdXNlIGJpbmFyeSBtb2RlIGFuZCBsZWF2ZSBlbmNvZGluZyB1bnNwZWNpZmllZC4pIFRoZQorICAgIGF2YWlsYWJsZSBtb2RlcyBhcmU6CiAKICAgICA9PT09PT09PT0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAgQ2hhcmFjdGVyIE1lYW5pbmcKICAgICAtLS0tLS0tLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgJ3InICAgICAgIG9wZW4gZm9yIHJlYWRpbmcgKGRlZmF1bHQpCiAgICAgJ3cnICAgICAgIG9wZW4gZm9yIHdyaXRpbmcsIHRydW5jYXRpbmcgdGhlIGZpbGUgZmlyc3QKKyAgICAneCcgICAgICAgY3JlYXRlIGEgbmV3IGZpbGUgYW5kIG9wZW4gaXQgZm9yIHdyaXRpbmcKICAgICAnYScgICAgICAgb3BlbiBmb3Igd3JpdGluZywgYXBwZW5kaW5nIHRvIHRoZSBlbmQgb2YgdGhlIGZpbGUgaWYgaXQgZXhpc3RzCiAgICAgJ2InICAgICAgIGJpbmFyeSBtb2RlCiAgICAgJ3QnICAgICAgIHRleHQgbW9kZSAoZGVmYXVsdCkKQEAgLTcyLDcgKzY0LDggQEAKIAogICAgIFRoZSBkZWZhdWx0IG1vZGUgaXMgJ3J0JyAob3BlbiBmb3IgcmVhZGluZyB0ZXh0KS4gRm9yIGJpbmFyeSByYW5kb20KICAgICBhY2Nlc3MsIHRoZSBtb2RlICd3K2InIG9wZW5zIGFuZCB0cnVuY2F0ZXMgdGhlIGZpbGUgdG8gMCBieXRlcywgd2hpbGUKLSAgICAncitiJyBvcGVucyB0aGUgZmlsZSB3aXRob3V0IHRydW5jYXRpb24uCisgICAgJ3IrYicgb3BlbnMgdGhlIGZpbGUgd2l0aG91dCB0cnVuY2F0aW9uLiBUaGUgJ3gnIG1vZGUgaW1wbGllcyAndycgYW5kCisgICAgcmFpc2VzIGFuIGBGaWxlRXhpc3RzRXJyb3JgIGlmIHRoZSBmaWxlIGFscmVhZHkgZXhpc3RzLgogCiAgICAgUHl0aG9uIGRpc3Rpbmd1aXNoZXMgYmV0d2VlbiBmaWxlcyBvcGVuZWQgaW4gYmluYXJ5IGFuZCB0ZXh0IG1vZGVzLAogICAgIGV2ZW4gd2hlbiB0aGUgdW5kZXJseWluZyBvcGVyYXRpbmcgc3lzdGVtIGRvZXNuJ3QuIEZpbGVzIG9wZW5lZCBpbgpAQCAtMTMyLDYgKzEyNSwxMiBAQAogICAgIGJlIGtlcHQgb3BlbiB3aGVuIHRoZSBmaWxlIGlzIGNsb3NlZC4gVGhpcyBkb2VzIG5vdCB3b3JrIHdoZW4gYSBmaWxlIG5hbWUgaXMKICAgICBnaXZlbiBhbmQgbXVzdCBiZSBUcnVlIGluIHRoYXQgY2FzZS4KIAorICAgIEEgY3VzdG9tIG9wZW5lciBjYW4gYmUgdXNlZCBieSBwYXNzaW5nIGEgY2FsbGFibGUgYXMgKm9wZW5lciouIFRoZQorICAgIHVuZGVybHlpbmcgZmlsZSBkZXNjcmlwdG9yIGZvciB0aGUgZmlsZSBvYmplY3QgaXMgdGhlbiBvYnRhaW5lZCBieSBjYWxsaW5nCisgICAgKm9wZW5lciogd2l0aCAoKmZpbGUqLCAqZmxhZ3MqKS4gKm9wZW5lciogbXVzdCByZXR1cm4gYW4gb3BlbiBmaWxlCisgICAgZGVzY3JpcHRvciAocGFzc2luZyBvcy5vcGVuIGFzICpvcGVuZXIqIHJlc3VsdHMgaW4gZnVuY3Rpb25hbGl0eSBzaW1pbGFyIHRvCisgICAgcGFzc2luZyBOb25lKS4KKwogICAgIG9wZW4oKSByZXR1cm5zIGEgZmlsZSBvYmplY3Qgd2hvc2UgdHlwZSBkZXBlbmRzIG9uIHRoZSBtb2RlLCBhbmQKICAgICB0aHJvdWdoIHdoaWNoIHRoZSBzdGFuZGFyZCBmaWxlIG9wZXJhdGlvbnMgc3VjaCBhcyByZWFkaW5nIGFuZCB3cml0aW5nCiAgICAgYXJlIHBlcmZvcm1lZC4gV2hlbiBvcGVuKCkgaXMgdXNlZCB0byBvcGVuIGEgZmlsZSBpbiBhIHRleHQgbW9kZSAoJ3cnLApAQCAtMTU3LDggKzE1Niw5IEBACiAgICAgaWYgZXJyb3JzIGlzIG5vdCBOb25lIGFuZCBub3QgaXNpbnN0YW5jZShlcnJvcnMsIHN0cik6CiAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiaW52YWxpZCBlcnJvcnM6ICVyIiAlIGVycm9ycykKICAgICBtb2RlcyA9IHNldChtb2RlKQotICAgIGlmIG1vZGVzIC0gc2V0KCJhcndiK3RVIikgb3IgbGVuKG1vZGUpID4gbGVuKG1vZGVzKToKKyAgICBpZiBtb2RlcyAtIHNldCgiYXhyd2IrdFUiKSBvciBsZW4obW9kZSkgPiBsZW4obW9kZXMpOgogICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJpbnZhbGlkIG1vZGU6ICVyIiAlIG1vZGUpCisgICAgY3JlYXRpbmcgPSAieCIgaW4gbW9kZXMKICAgICByZWFkaW5nID0gInIiIGluIG1vZGVzCiAgICAgd3JpdGluZyA9ICJ3IiBpbiBtb2RlcwogICAgIGFwcGVuZGluZyA9ICJhIiBpbiBtb2RlcwpAQCAtMTY2LDE0ICsxNjYsMTQgQEAKICAgICB0ZXh0ID0gInQiIGluIG1vZGVzCiAgICAgYmluYXJ5ID0gImIiIGluIG1vZGVzCiAgICAgaWYgIlUiIGluIG1vZGVzOgotICAgICAgICBpZiB3cml0aW5nIG9yIGFwcGVuZGluZzoKKyAgICAgICAgaWYgY3JlYXRpbmcgb3Igd3JpdGluZyBvciBhcHBlbmRpbmc6CiAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJjYW4ndCB1c2UgVSBhbmQgd3JpdGluZyBtb2RlIGF0IG9uY2UiKQogICAgICAgICByZWFkaW5nID0gVHJ1ZQogICAgIGlmIHRleHQgYW5kIGJpbmFyeToKICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY2FuJ3QgaGF2ZSB0ZXh0IGFuZCBiaW5hcnkgbW9kZSBhdCBvbmNlIikKLSAgICBpZiByZWFkaW5nICsgd3JpdGluZyArIGFwcGVuZGluZyA+IDE6CisgICAgaWYgY3JlYXRpbmcgKyByZWFkaW5nICsgd3JpdGluZyArIGFwcGVuZGluZyA+IDE6CiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImNhbid0IGhhdmUgcmVhZC93cml0ZS9hcHBlbmQgbW9kZSBhdCBvbmNlIikKLSAgICBpZiBub3QgKHJlYWRpbmcgb3Igd3JpdGluZyBvciBhcHBlbmRpbmcpOgorICAgIGlmIG5vdCAoY3JlYXRpbmcgb3IgcmVhZGluZyBvciB3cml0aW5nIG9yIGFwcGVuZGluZyk6CiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIm11c3QgaGF2ZSBleGFjdGx5IG9uZSBvZiByZWFkL3dyaXRlL2FwcGVuZCBtb2RlIikKICAgICBpZiBiaW5hcnkgYW5kIGVuY29kaW5nIGlzIG5vdCBOb25lOgogICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJiaW5hcnkgbW9kZSBkb2Vzbid0IHRha2UgYW4gZW5jb2RpbmcgYXJndW1lbnQiKQpAQCAtMTgyLDExICsxODIsMTIgQEAKICAgICBpZiBiaW5hcnkgYW5kIG5ld2xpbmUgaXMgbm90IE5vbmU6CiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImJpbmFyeSBtb2RlIGRvZXNuJ3QgdGFrZSBhIG5ld2xpbmUgYXJndW1lbnQiKQogICAgIHJhdyA9IEZpbGVJTyhmaWxlLAorICAgICAgICAgICAgICAgICAoY3JlYXRpbmcgYW5kICJ4IiBvciAiIikgKwogICAgICAgICAgICAgICAgICAocmVhZGluZyBhbmQgInIiIG9yICIiKSArCiAgICAgICAgICAgICAgICAgICh3cml0aW5nIGFuZCAidyIgb3IgIiIpICsKICAgICAgICAgICAgICAgICAgKGFwcGVuZGluZyBhbmQgImEiIG9yICIiKSArCiAgICAgICAgICAgICAgICAgICh1cGRhdGluZyBhbmQgIisiIG9yICIiKSwKLSAgICAgICAgICAgICAgICAgY2xvc2VmZCkKKyAgICAgICAgICAgICAgICAgY2xvc2VmZCwgb3BlbmVyPW9wZW5lcikKICAgICBsaW5lX2J1ZmZlcmluZyA9IEZhbHNlCiAgICAgaWYgYnVmZmVyaW5nID09IDEgb3IgYnVmZmVyaW5nIDwgMCBhbmQgcmF3LmlzYXR0eSgpOgogICAgICAgICBidWZmZXJpbmcgPSAtMQpAQCAtMjA4LDcgKzIwOSw3IEBACiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImNhbid0IGhhdmUgdW5idWZmZXJlZCB0ZXh0IEkvTyIpCiAgICAgaWYgdXBkYXRpbmc6CiAgICAgICAgIGJ1ZmZlciA9IEJ1ZmZlcmVkUmFuZG9tKHJhdywgYnVmZmVyaW5nKQotICAgIGVsaWYgd3JpdGluZyBvciBhcHBlbmRpbmc6CisgICAgZWxpZiBjcmVhdGluZyBvciB3cml0aW5nIG9yIGFwcGVuZGluZzoKICAgICAgICAgYnVmZmVyID0gQnVmZmVyZWRXcml0ZXIocmF3LCBidWZmZXJpbmcpCiAgICAgZWxpZiByZWFkaW5nOgogICAgICAgICBidWZmZXIgPSBCdWZmZXJlZFJlYWRlcihyYXcsIGJ1ZmZlcmluZykKQEAgLTk0OCwxNSArOTQ5LDE5IEBACiAgICAgICAgICMgU3BlY2lhbCBjYXNlIGZvciB3aGVuIHRoZSBudW1iZXIgb2YgYnl0ZXMgdG8gcmVhZCBpcyB1bnNwZWNpZmllZC4KICAgICAgICAgaWYgbiBpcyBOb25lIG9yIG4gPT0gLTE6CiAgICAgICAgICAgICBzZWxmLl9yZXNldF9yZWFkX2J1ZigpCisgICAgICAgICAgICBpZiBoYXNhdHRyKHNlbGYucmF3LCAncmVhZGFsbCcpOgorICAgICAgICAgICAgICAgIGNodW5rID0gc2VsZi5yYXcucmVhZGFsbCgpCisgICAgICAgICAgICAgICAgaWYgY2h1bmsgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGJ1Zltwb3M6XSBvciBOb25lCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGJ1Zltwb3M6XSArIGNodW5rCiAgICAgICAgICAgICBjaHVua3MgPSBbYnVmW3BvczpdXSAgIyBTdHJpcCB0aGUgY29uc3VtZWQgYnl0ZXMuCiAgICAgICAgICAgICBjdXJyZW50X3NpemUgPSAwCiAgICAgICAgICAgICB3aGlsZSBUcnVlOgogICAgICAgICAgICAgICAgICMgUmVhZCB1bnRpbCBFT0Ygb3IgdW50aWwgcmVhZCgpIHdvdWxkIGJsb2NrLgogICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgY2h1bmsgPSBzZWxmLnJhdy5yZWFkKCkKLSAgICAgICAgICAgICAgICBleGNlcHQgSU9FcnJvciBhcyBlOgotICAgICAgICAgICAgICAgICAgICBpZiBlLmVycm5vICE9IEVJTlRSOgotICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgICAgICBpZiBjaHVuayBpbiBlbXB0eV92YWx1ZXM6CiAgICAgICAgICAgICAgICAgICAgIG5vZGF0YV92YWwgPSBjaHVuawpAQCAtOTc4LDkgKzk4Myw3IEBACiAgICAgICAgIHdoaWxlIGF2YWlsIDwgbjoKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBjaHVuayA9IHNlbGYucmF3LnJlYWQod2FudGVkKQotICAgICAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZToKLSAgICAgICAgICAgICAgICBpZiBlLmVycm5vICE9IEVJTlRSOgotICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgZXhjZXB0IEludGVycnVwdGVkRXJyb3I6CiAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgIGlmIGNodW5rIGluIGVtcHR5X3ZhbHVlczoKICAgICAgICAgICAgICAgICBub2RhdGFfdmFsID0gY2h1bmsKQEAgLTEwMTMsOSArMTAxNiw3IEBACiAgICAgICAgICAgICB3aGlsZSBUcnVlOgogICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgY3VycmVudCA9IHNlbGYucmF3LnJlYWQodG9fcmVhZCkKLSAgICAgICAgICAgICAgICBleGNlcHQgSU9FcnJvciBhcyBlOgotICAgICAgICAgICAgICAgICAgICBpZiBlLmVycm5vICE9IEVJTlRSOgotICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgaWYgY3VycmVudDoKQEAgLTExMjAsMTMgKzExMjEsMTEgQEAKICAgICAgICAgd2hpbGUgc2VsZi5fd3JpdGVfYnVmOgogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIG4gPSBzZWxmLnJhdy53cml0ZShzZWxmLl93cml0ZV9idWYpCisgICAgICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKKyAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgZXhjZXB0IEJsb2NraW5nSU9FcnJvcjoKICAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoInNlbGYucmF3IHNob3VsZCBpbXBsZW1lbnQgUmF3SU9CYXNlOiBpdCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaG91bGQgbm90IHJhaXNlIEJsb2NraW5nSU9FcnJvciIpCi0gICAgICAgICAgICBleGNlcHQgSU9FcnJvciBhcyBlOgotICAgICAgICAgICAgICAgIGlmIGUuZXJybm8gIT0gRUlOVFI6Ci0gICAgICAgICAgICAgICAgICAgIHJhaXNlCi0gICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgIGlmIG4gaXMgTm9uZToKICAgICAgICAgICAgICAgICByYWlzZSBCbG9ja2luZ0lPRXJyb3IoCiAgICAgICAgICAgICAgICAgICAgIGVycm5vLkVBR0FJTiwKQEAgLTE1MTUsNiArMTUxNCw3IEBACiAgICAgICAgIHNlbGYuX3NuYXBzaG90ID0gTm9uZSAgIyBpbmZvIGZvciByZWNvbnN0cnVjdGluZyBkZWNvZGVyIHN0YXRlCiAgICAgICAgIHNlbGYuX3NlZWthYmxlID0gc2VsZi5fdGVsbGluZyA9IHNlbGYuYnVmZmVyLnNlZWthYmxlKCkKICAgICAgICAgc2VsZi5faGFzX3JlYWQxID0gaGFzYXR0cihzZWxmLmJ1ZmZlciwgJ3JlYWQxJykKKyAgICAgICAgc2VsZi5fYjJjcmF0aW8gPSAwLjAKIAogICAgICAgICBpZiBzZWxmLl9zZWVrYWJsZSBhbmQgc2VsZi53cml0YWJsZSgpOgogICAgICAgICAgICAgcG9zaXRpb24gPSBzZWxmLmJ1ZmZlci50ZWxsKCkKQEAgLTE2ODUsNyArMTY4NSwxMiBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgaW5wdXRfY2h1bmsgPSBzZWxmLmJ1ZmZlci5yZWFkKHNlbGYuX0NIVU5LX1NJWkUpCiAgICAgICAgIGVvZiA9IG5vdCBpbnB1dF9jaHVuawotICAgICAgICBzZWxmLl9zZXRfZGVjb2RlZF9jaGFycyhzZWxmLl9kZWNvZGVyLmRlY29kZShpbnB1dF9jaHVuaywgZW9mKSkKKyAgICAgICAgZGVjb2RlZF9jaGFycyA9IHNlbGYuX2RlY29kZXIuZGVjb2RlKGlucHV0X2NodW5rLCBlb2YpCisgICAgICAgIHNlbGYuX3NldF9kZWNvZGVkX2NoYXJzKGRlY29kZWRfY2hhcnMpCisgICAgICAgIGlmIGRlY29kZWRfY2hhcnM6CisgICAgICAgICAgICBzZWxmLl9iMmNyYXRpbyA9IGxlbihpbnB1dF9jaHVuaykgLyBsZW4oc2VsZi5fZGVjb2RlZF9jaGFycykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuX2IyY3JhdGlvID0gMC4wCiAKICAgICAgICAgaWYgc2VsZi5fdGVsbGluZzoKICAgICAgICAgICAgICMgQXQgdGhlIHNuYXBzaG90IHBvaW50LCBsZW4oZGVjX2J1ZmZlcikgYnl0ZXMgYmVmb3JlIHRoZSByZWFkLApAQCAtMTczOSwyMCArMTc0NCw1NiBAQAogICAgICAgICAjIGZvcndhcmQgdW50aWwgaXQgZ2l2ZXMgdXMgZW5vdWdoIGRlY29kZWQgY2hhcmFjdGVycy4KICAgICAgICAgc2F2ZWRfc3RhdGUgPSBkZWNvZGVyLmdldHN0YXRlKCkKICAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBGYXN0IHNlYXJjaCBmb3IgYW4gYWNjZXB0YWJsZSBzdGFydCBwb2ludCwgY2xvc2UgdG8gb3VyCisgICAgICAgICAgICAjIGN1cnJlbnQgcG9zLgorICAgICAgICAgICAgIyBSYXRpb25hbGU6IGNhbGxpbmcgZGVjb2Rlci5kZWNvZGUoKSBoYXMgYSBsYXJnZSBvdmVyaGVhZAorICAgICAgICAgICAgIyByZWdhcmRsZXNzIG9mIGNodW5rIHNpemU7IHdlIHdhbnQgdGhlIG51bWJlciBvZiBzdWNoIGNhbGxzIHRvCisgICAgICAgICAgICAjIGJlIE8oMSkgaW4gbW9zdCBzaXR1YXRpb25zIChjb21tb24gZGVjb2RlcnMsIG5vbi1jcmF6eSBpbnB1dCkuCisgICAgICAgICAgICAjIEFjdHVhbGx5LCBpdCB3aWxsIGJlIGV4YWN0bHkgMSBmb3IgZml4ZWQtc2l6ZSBjb2RlY3MgKGFsbAorICAgICAgICAgICAgIyA4LWJpdCBjb2RlY3MsIGFsc28gVVRGLTE2IGFuZCBVVEYtMzIpLgorICAgICAgICAgICAgc2tpcF9ieXRlcyA9IGludChzZWxmLl9iMmNyYXRpbyAqIGNoYXJzX3RvX3NraXApCisgICAgICAgICAgICBza2lwX2JhY2sgPSAxCisgICAgICAgICAgICBhc3NlcnQgc2tpcF9ieXRlcyA8PSBsZW4obmV4dF9pbnB1dCkKKyAgICAgICAgICAgIHdoaWxlIHNraXBfYnl0ZXMgPiAwOgorICAgICAgICAgICAgICAgIGRlY29kZXIuc2V0c3RhdGUoKGInJywgZGVjX2ZsYWdzKSkKKyAgICAgICAgICAgICAgICAjIERlY29kZSB1cCB0byB0ZW1wdGF0aXZlIHN0YXJ0IHBvaW50CisgICAgICAgICAgICAgICAgbiA9IGxlbihkZWNvZGVyLmRlY29kZShuZXh0X2lucHV0Wzpza2lwX2J5dGVzXSkpCisgICAgICAgICAgICAgICAgaWYgbiA8PSBjaGFyc190b19za2lwOgorICAgICAgICAgICAgICAgICAgICBiLCBkID0gZGVjb2Rlci5nZXRzdGF0ZSgpCisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBiOgorICAgICAgICAgICAgICAgICAgICAgICAgIyBCZWZvcmUgcG9zIGFuZCBubyBieXRlcyBidWZmZXJlZCBpbiBkZWNvZGVyID0+IE9LCisgICAgICAgICAgICAgICAgICAgICAgICBkZWNfZmxhZ3MgPSBkCisgICAgICAgICAgICAgICAgICAgICAgICBjaGFyc190b19za2lwIC09IG4KKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgICMgU2tpcCBiYWNrIGJ5IGJ1ZmZlcmVkIGFtb3VudCBhbmQgcmVzZXQgaGV1cmlzdGljCisgICAgICAgICAgICAgICAgICAgIHNraXBfYnl0ZXMgLT0gbGVuKGIpCisgICAgICAgICAgICAgICAgICAgIHNraXBfYmFjayA9IDEKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAjIFdlJ3JlIHRvbyBmYXIgYWhlYWQsIHNraXAgYmFjayBhIGJpdAorICAgICAgICAgICAgICAgICAgICBza2lwX2J5dGVzIC09IHNraXBfYmFjaworICAgICAgICAgICAgICAgICAgICBza2lwX2JhY2sgPSBza2lwX2JhY2sgKiAyCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNraXBfYnl0ZXMgPSAwCisgICAgICAgICAgICAgICAgZGVjb2Rlci5zZXRzdGF0ZSgoYicnLCBkZWNfZmxhZ3MpKQorCiAgICAgICAgICAgICAjIE5vdGUgb3VyIGluaXRpYWwgc3RhcnQgcG9pbnQuCi0gICAgICAgICAgICBkZWNvZGVyLnNldHN0YXRlKChiJycsIGRlY19mbGFncykpCi0gICAgICAgICAgICBzdGFydF9wb3MgPSBwb3NpdGlvbgotICAgICAgICAgICAgc3RhcnRfZmxhZ3MsIGJ5dGVzX2ZlZCwgY2hhcnNfZGVjb2RlZCA9IGRlY19mbGFncywgMCwgMAotICAgICAgICAgICAgbmVlZF9lb2YgPSAwCisgICAgICAgICAgICBzdGFydF9wb3MgPSBwb3NpdGlvbiArIHNraXBfYnl0ZXMKKyAgICAgICAgICAgIHN0YXJ0X2ZsYWdzID0gZGVjX2ZsYWdzCisgICAgICAgICAgICBpZiBjaGFyc190b19za2lwID09IDA6CisgICAgICAgICAgICAgICAgIyBXZSBoYXZlbid0IG1vdmVkIGZyb20gdGhlIHN0YXJ0IHBvaW50LgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl9wYWNrX2Nvb2tpZShzdGFydF9wb3MsIHN0YXJ0X2ZsYWdzKQogCiAgICAgICAgICAgICAjIEZlZWQgdGhlIGRlY29kZXIgb25lIGJ5dGUgYXQgYSB0aW1lLiAgQXMgd2UgZ28sIG5vdGUgdGhlCiAgICAgICAgICAgICAjIG5lYXJlc3QgInNhZmUgc3RhcnQgcG9pbnQiIGJlZm9yZSB0aGUgY3VycmVudCBsb2NhdGlvbgogICAgICAgICAgICAgIyAoYSBwb2ludCB3aGVyZSB0aGUgZGVjb2RlciBoYXMgbm90aGluZyBidWZmZXJlZCwgc28gc2VlaygpCiAgICAgICAgICAgICAjIGNhbiBzYWZlbHkgc3RhcnQgZnJvbSB0aGVyZSBhbmQgYWR2YW5jZSB0byB0aGlzIGxvY2F0aW9uKS4KLSAgICAgICAgICAgIG5leHRfYnl0ZSA9IGJ5dGVhcnJheSgxKQotICAgICAgICAgICAgZm9yIG5leHRfYnl0ZVswXSBpbiBuZXh0X2lucHV0OgorICAgICAgICAgICAgYnl0ZXNfZmVkID0gMAorICAgICAgICAgICAgbmVlZF9lb2YgPSAwCisgICAgICAgICAgICAjIENoYXJzIGRlY29kZWQgc2luY2UgYHN0YXJ0X3Bvc2AKKyAgICAgICAgICAgIGNoYXJzX2RlY29kZWQgPSAwCisgICAgICAgICAgICBmb3IgaSBpbiByYW5nZShza2lwX2J5dGVzLCBsZW4obmV4dF9pbnB1dCkpOgogICAgICAgICAgICAgICAgIGJ5dGVzX2ZlZCArPSAxCi0gICAgICAgICAgICAgICAgY2hhcnNfZGVjb2RlZCArPSBsZW4oZGVjb2Rlci5kZWNvZGUobmV4dF9ieXRlKSkKKyAgICAgICAgICAgICAgICBjaGFyc19kZWNvZGVkICs9IGxlbihkZWNvZGVyLmRlY29kZShuZXh0X2lucHV0W2k6aSsxXSkpCiAgICAgICAgICAgICAgICAgZGVjX2J1ZmZlciwgZGVjX2ZsYWdzID0gZGVjb2Rlci5nZXRzdGF0ZSgpCiAgICAgICAgICAgICAgICAgaWYgbm90IGRlY19idWZmZXIgYW5kIGNoYXJzX2RlY29kZWQgPD0gY2hhcnNfdG9fc2tpcDoKICAgICAgICAgICAgICAgICAgICAgIyBEZWNvZGVyIGJ1ZmZlciBpcyBlbXB0eSwgc28gdGhpcyBpcyBhIHNhZmUgc3RhcnQgcG9pbnQuCmRpZmYgLS1naXQgYS9MaWIvYWJjLnB5IGIvTGliL2FiYy5weQppbmRleCBhNmMyZGM0Li4wOTc3OGU4IDEwMDY0NAotLS0gYS9MaWIvYWJjLnB5CisrKyBiL0xpYi9hYmMucHkKQEAgLTI2LDcgKzI2LDggQEAKIAogCiBjbGFzcyBhYnN0cmFjdGNsYXNzbWV0aG9kKGNsYXNzbWV0aG9kKToKLSAgICAiIiJBIGRlY29yYXRvciBpbmRpY2F0aW5nIGFic3RyYWN0IGNsYXNzbWV0aG9kcy4KKyAgICAiIiIKKyAgICBBIGRlY29yYXRvciBpbmRpY2F0aW5nIGFic3RyYWN0IGNsYXNzbWV0aG9kcy4KIAogICAgIFNpbWlsYXIgdG8gYWJzdHJhY3RtZXRob2QuCiAKQEAgLTM2LDYgKzM3LDkgQEAKICAgICAgICAgICAgIEBhYnN0cmFjdGNsYXNzbWV0aG9kCiAgICAgICAgICAgICBkZWYgbXlfYWJzdHJhY3RfY2xhc3NtZXRob2QoY2xzLCAuLi4pOgogICAgICAgICAgICAgICAgIC4uLgorCisgICAgJ2Fic3RyYWN0Y2xhc3NtZXRob2QnIGlzIGRlcHJlY2F0ZWQuIFVzZSAnY2xhc3NtZXRob2QnIHdpdGgKKyAgICAnYWJzdHJhY3RtZXRob2QnIGluc3RlYWQuCiAgICAgIiIiCiAKICAgICBfX2lzYWJzdHJhY3RtZXRob2RfXyA9IFRydWUKQEAgLTQ2LDcgKzUwLDggQEAKIAogCiBjbGFzcyBhYnN0cmFjdHN0YXRpY21ldGhvZChzdGF0aWNtZXRob2QpOgotICAgICIiIkEgZGVjb3JhdG9yIGluZGljYXRpbmcgYWJzdHJhY3Qgc3RhdGljbWV0aG9kcy4KKyAgICAiIiIKKyAgICBBIGRlY29yYXRvciBpbmRpY2F0aW5nIGFic3RyYWN0IHN0YXRpY21ldGhvZHMuCiAKICAgICBTaW1pbGFyIHRvIGFic3RyYWN0bWV0aG9kLgogCkBAIC01Niw2ICs2MSw5IEBACiAgICAgICAgICAgICBAYWJzdHJhY3RzdGF0aWNtZXRob2QKICAgICAgICAgICAgIGRlZiBteV9hYnN0cmFjdF9zdGF0aWNtZXRob2QoLi4uKToKICAgICAgICAgICAgICAgICAuLi4KKworICAgICdhYnN0cmFjdHN0YXRpY21ldGhvZCcgaXMgZGVwcmVjYXRlZC4gVXNlICdzdGF0aWNtZXRob2QnIHdpdGgKKyAgICAnYWJzdHJhY3RtZXRob2QnIGluc3RlYWQuCiAgICAgIiIiCiAKICAgICBfX2lzYWJzdHJhY3RtZXRob2RfXyA9IFRydWUKQEAgLTY2LDcgKzc0LDggQEAKIAogCiBjbGFzcyBhYnN0cmFjdHByb3BlcnR5KHByb3BlcnR5KToKLSAgICAiIiJBIGRlY29yYXRvciBpbmRpY2F0aW5nIGFic3RyYWN0IHByb3BlcnRpZXMuCisgICAgIiIiCisgICAgQSBkZWNvcmF0b3IgaW5kaWNhdGluZyBhYnN0cmFjdCBwcm9wZXJ0aWVzLgogCiAgICAgUmVxdWlyZXMgdGhhdCB0aGUgbWV0YWNsYXNzIGlzIEFCQ01ldGEgb3IgZGVyaXZlZCBmcm9tIGl0LiAgQQogICAgIGNsYXNzIHRoYXQgaGFzIGEgbWV0YWNsYXNzIGRlcml2ZWQgZnJvbSBBQkNNZXRhIGNhbm5vdCBiZQpAQCAtODgsNyArOTcsMTEgQEAKICAgICAgICAgICAgIGRlZiBnZXR4KHNlbGYpOiAuLi4KICAgICAgICAgICAgIGRlZiBzZXR4KHNlbGYsIHZhbHVlKTogLi4uCiAgICAgICAgICAgICB4ID0gYWJzdHJhY3Rwcm9wZXJ0eShnZXR4LCBzZXR4KQorCisgICAgJ2Fic3RyYWN0cHJvcGVydHknIGlzIGRlcHJlY2F0ZWQuIFVzZSAncHJvcGVydHknIHdpdGggJ2Fic3RyYWN0bWV0aG9kJworICAgIGluc3RlYWQuCiAgICAgIiIiCisKICAgICBfX2lzYWJzdHJhY3RtZXRob2RfXyA9IFRydWUKIAogCkBAIC0xMzMsMTEgKzE0NiwxNCBAQAogICAgICAgICByZXR1cm4gY2xzCiAKICAgICBkZWYgcmVnaXN0ZXIoY2xzLCBzdWJjbGFzcyk6Ci0gICAgICAgICIiIlJlZ2lzdGVyIGEgdmlydHVhbCBzdWJjbGFzcyBvZiBhbiBBQkMuIiIiCisgICAgICAgICIiIlJlZ2lzdGVyIGEgdmlydHVhbCBzdWJjbGFzcyBvZiBhbiBBQkMuCisKKyAgICAgICAgUmV0dXJucyB0aGUgc3ViY2xhc3MsIHRvIGFsbG93IHVzYWdlIGFzIGEgY2xhc3MgZGVjb3JhdG9yLgorICAgICAgICAiIiIKICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uoc3ViY2xhc3MsIHR5cGUpOgogICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJDYW4gb25seSByZWdpc3RlciBjbGFzc2VzIikKICAgICAgICAgaWYgaXNzdWJjbGFzcyhzdWJjbGFzcywgY2xzKToKLSAgICAgICAgICAgIHJldHVybiAgIyBBbHJlYWR5IGEgc3ViY2xhc3MKKyAgICAgICAgICAgIHJldHVybiBzdWJjbGFzcyAgIyBBbHJlYWR5IGEgc3ViY2xhc3MKICAgICAgICAgIyBTdWJ0bGU6IHRlc3QgZm9yIGN5Y2xlcyAqYWZ0ZXIqIHRlc3RpbmcgZm9yICJhbHJlYWR5IGEgc3ViY2xhc3MiOwogICAgICAgICAjIHRoaXMgbWVhbnMgd2UgYWxsb3cgWC5yZWdpc3RlcihYKSBhbmQgaW50ZXJwcmV0IGl0IGFzIGEgbm8tb3AuCiAgICAgICAgIGlmIGlzc3ViY2xhc3MoY2xzLCBzdWJjbGFzcyk6CkBAIC0xNDUsNiArMTYxLDcgQEAKICAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigiUmVmdXNpbmcgdG8gY3JlYXRlIGFuIGluaGVyaXRhbmNlIGN5Y2xlIikKICAgICAgICAgY2xzLl9hYmNfcmVnaXN0cnkuYWRkKHN1YmNsYXNzKQogICAgICAgICBBQkNNZXRhLl9hYmNfaW52YWxpZGF0aW9uX2NvdW50ZXIgKz0gMSAgIyBJbnZhbGlkYXRlIG5lZ2F0aXZlIGNhY2hlCisgICAgICAgIHJldHVybiBzdWJjbGFzcwogCiAgICAgZGVmIF9kdW1wX3JlZ2lzdHJ5KGNscywgZmlsZT1Ob25lKToKICAgICAgICAgIiIiRGVidWcgaGVscGVyIHRvIHByaW50IHRoZSBBQkMgcmVnaXN0cnkuIiIiCmRpZmYgLS1naXQgYS9MaWIvYXJncGFyc2UucHkgYi9MaWIvYXJncGFyc2UucHkKaW5kZXggMjIwMmI1Ny4uODdkMGNlZiAxMDA2NDQKLS0tIGEvTGliL2FyZ3BhcnNlLnB5CisrKyBiL0xpYi9hcmdwYXJzZS5weQpAQCAtNzEsNiArNzEsNyBAQAogICAgICdBcmd1bWVudERlZmF1bHRzSGVscEZvcm1hdHRlcicsCiAgICAgJ1Jhd0Rlc2NyaXB0aW9uSGVscEZvcm1hdHRlcicsCiAgICAgJ1Jhd1RleHRIZWxwRm9ybWF0dGVyJywKKyAgICAnTWV0YXZhclR5cGVIZWxwRm9ybWF0dGVyJywKICAgICAnTmFtZXNwYWNlJywKICAgICAnQWN0aW9uJywKICAgICAnT05FX09SX01PUkUnLApAQCAtNDE5LDcgKzQyMCw4IEBACiAKICAgICAgICAgICAgICMgcHJvZHVjZSBhbGwgYXJnIHN0cmluZ3MKICAgICAgICAgICAgIGVsaWYgbm90IGFjdGlvbi5vcHRpb25fc3RyaW5nczoKLSAgICAgICAgICAgICAgICBwYXJ0ID0gc2VsZi5fZm9ybWF0X2FyZ3MoYWN0aW9uLCBhY3Rpb24uZGVzdCkKKyAgICAgICAgICAgICAgICBkZWZhdWx0ID0gc2VsZi5fZ2V0X2RlZmF1bHRfbWV0YXZhcl9mb3JfcG9zaXRpb25hbChhY3Rpb24pCisgICAgICAgICAgICAgICAgcGFydCA9IHNlbGYuX2Zvcm1hdF9hcmdzKGFjdGlvbiwgZGVmYXVsdCkKIAogICAgICAgICAgICAgICAgICMgaWYgaXQncyBpbiBhIGdyb3VwLCBzdHJpcCB0aGUgb3V0ZXIgW10KICAgICAgICAgICAgICAgICBpZiBhY3Rpb24gaW4gZ3JvdXBfYWN0aW9uczoKQEAgLTQ0MSw3ICs0NDMsNyBAQAogICAgICAgICAgICAgICAgICMgaWYgdGhlIE9wdGlvbmFsIHRha2VzIGEgdmFsdWUsIGZvcm1hdCBpczoKICAgICAgICAgICAgICAgICAjICAgIC1zIEFSR1Mgb3IgLS1sb25nIEFSR1MKICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICBkZWZhdWx0ID0gYWN0aW9uLmRlc3QudXBwZXIoKQorICAgICAgICAgICAgICAgICAgICBkZWZhdWx0ID0gc2VsZi5fZ2V0X2RlZmF1bHRfbWV0YXZhcl9mb3Jfb3B0aW9uYWwoYWN0aW9uKQogICAgICAgICAgICAgICAgICAgICBhcmdzX3N0cmluZyA9IHNlbGYuX2Zvcm1hdF9hcmdzKGFjdGlvbiwgZGVmYXVsdCkKICAgICAgICAgICAgICAgICAgICAgcGFydCA9ICclcyAlcycgJSAob3B0aW9uX3N0cmluZywgYXJnc19zdHJpbmcpCiAKQEAgLTUyNyw3ICs1MjksOCBAQAogCiAgICAgZGVmIF9mb3JtYXRfYWN0aW9uX2ludm9jYXRpb24oc2VsZiwgYWN0aW9uKToKICAgICAgICAgaWYgbm90IGFjdGlvbi5vcHRpb25fc3RyaW5nczoKLSAgICAgICAgICAgIG1ldGF2YXIsID0gc2VsZi5fbWV0YXZhcl9mb3JtYXR0ZXIoYWN0aW9uLCBhY3Rpb24uZGVzdCkoMSkKKyAgICAgICAgICAgIGRlZmF1bHQgPSBzZWxmLl9nZXRfZGVmYXVsdF9tZXRhdmFyX2Zvcl9wb3NpdGlvbmFsKGFjdGlvbikKKyAgICAgICAgICAgIG1ldGF2YXIsID0gc2VsZi5fbWV0YXZhcl9mb3JtYXR0ZXIoYWN0aW9uLCBkZWZhdWx0KSgxKQogICAgICAgICAgICAgcmV0dXJuIG1ldGF2YXIKIAogICAgICAgICBlbHNlOgpAQCAtNTQxLDcgKzU0NCw3IEBACiAgICAgICAgICAgICAjIGlmIHRoZSBPcHRpb25hbCB0YWtlcyBhIHZhbHVlLCBmb3JtYXQgaXM6CiAgICAgICAgICAgICAjICAgIC1zIEFSR1MsIC0tbG9uZyBBUkdTCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGRlZmF1bHQgPSBhY3Rpb24uZGVzdC51cHBlcigpCisgICAgICAgICAgICAgICAgZGVmYXVsdCA9IHNlbGYuX2dldF9kZWZhdWx0X21ldGF2YXJfZm9yX29wdGlvbmFsKGFjdGlvbikKICAgICAgICAgICAgICAgICBhcmdzX3N0cmluZyA9IHNlbGYuX2Zvcm1hdF9hcmdzKGFjdGlvbiwgZGVmYXVsdCkKICAgICAgICAgICAgICAgICBmb3Igb3B0aW9uX3N0cmluZyBpbiBhY3Rpb24ub3B0aW9uX3N0cmluZ3M6CiAgICAgICAgICAgICAgICAgICAgIHBhcnRzLmFwcGVuZCgnJXMgJXMnICUgKG9wdGlvbl9zdHJpbmcsIGFyZ3Nfc3RyaW5nKSkKQEAgLTYxOSw2ICs2MjIsMTIgQEAKICAgICBkZWYgX2dldF9oZWxwX3N0cmluZyhzZWxmLCBhY3Rpb24pOgogICAgICAgICByZXR1cm4gYWN0aW9uLmhlbHAKIAorICAgIGRlZiBfZ2V0X2RlZmF1bHRfbWV0YXZhcl9mb3Jfb3B0aW9uYWwoc2VsZiwgYWN0aW9uKToKKyAgICAgICAgcmV0dXJuIGFjdGlvbi5kZXN0LnVwcGVyKCkKKworICAgIGRlZiBfZ2V0X2RlZmF1bHRfbWV0YXZhcl9mb3JfcG9zaXRpb25hbChzZWxmLCBhY3Rpb24pOgorICAgICAgICByZXR1cm4gYWN0aW9uLmRlc3QKKwogCiBjbGFzcyBSYXdEZXNjcmlwdGlvbkhlbHBGb3JtYXR0ZXIoSGVscEZvcm1hdHRlcik6CiAgICAgIiIiSGVscCBtZXNzYWdlIGZvcm1hdHRlciB3aGljaCByZXRhaW5zIGFueSBmb3JtYXR0aW5nIGluIGRlc2NyaXB0aW9ucy4KQEAgLTYyOCw3ICs2MzcsNyBAQAogICAgICIiIgogCiAgICAgZGVmIF9maWxsX3RleHQoc2VsZiwgdGV4dCwgd2lkdGgsIGluZGVudCk6Ci0gICAgICAgIHJldHVybiAnJy5qb2luKFtpbmRlbnQgKyBsaW5lIGZvciBsaW5lIGluIHRleHQuc3BsaXRsaW5lcyhUcnVlKV0pCisgICAgICAgIHJldHVybiAnJy5qb2luKGluZGVudCArIGxpbmUgZm9yIGxpbmUgaW4gdGV4dC5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpKQogCiAKIGNsYXNzIFJhd1RleHRIZWxwRm9ybWF0dGVyKFJhd0Rlc2NyaXB0aW9uSGVscEZvcm1hdHRlcik6CkBAIC02NTksNiArNjY4LDIyIEBACiAgICAgICAgIHJldHVybiBoZWxwCiAKIAorY2xhc3MgTWV0YXZhclR5cGVIZWxwRm9ybWF0dGVyKEhlbHBGb3JtYXR0ZXIpOgorICAgICIiIkhlbHAgbWVzc2FnZSBmb3JtYXR0ZXIgd2hpY2ggdXNlcyB0aGUgYXJndW1lbnQgJ3R5cGUnIGFzIHRoZSBkZWZhdWx0CisgICAgbWV0YXZhciB2YWx1ZSAoaW5zdGVhZCBvZiB0aGUgYXJndW1lbnQgJ2Rlc3QnKQorCisgICAgT25seSB0aGUgbmFtZSBvZiB0aGlzIGNsYXNzIGlzIGNvbnNpZGVyZWQgYSBwdWJsaWMgQVBJLiBBbGwgdGhlIG1ldGhvZHMKKyAgICBwcm92aWRlZCBieSB0aGUgY2xhc3MgYXJlIGNvbnNpZGVyZWQgYW4gaW1wbGVtZW50YXRpb24gZGV0YWlsLgorICAgICIiIgorCisgICAgZGVmIF9nZXRfZGVmYXVsdF9tZXRhdmFyX2Zvcl9vcHRpb25hbChzZWxmLCBhY3Rpb24pOgorICAgICAgICByZXR1cm4gYWN0aW9uLnR5cGUuX19uYW1lX18KKworICAgIGRlZiBfZ2V0X2RlZmF1bHRfbWV0YXZhcl9mb3JfcG9zaXRpb25hbChzZWxmLCBhY3Rpb24pOgorICAgICAgICByZXR1cm4gYWN0aW9uLnR5cGUuX19uYW1lX18KKworCisKICMgPT09PT09PT09PT09PT09PT09PT09CiAjIE9wdGlvbnMgYW5kIEFyZ3VtZW50cwogIyA9PT09PT09PT09PT09PT09PT09PT0KQEAgLTE5NDAsMTcgKzE5NjUsMTIgQEAKICAgICAgICAgIyBpZiB3ZSBkaWRuJ3QgY29uc3VtZSBhbGwgdGhlIGFyZ3VtZW50IHN0cmluZ3MsIHRoZXJlIHdlcmUgZXh0cmFzCiAgICAgICAgIGV4dHJhcy5leHRlbmQoYXJnX3N0cmluZ3Nbc3RvcF9pbmRleDpdKQogCi0gICAgICAgICMgaWYgd2UgZGlkbid0IHVzZSBhbGwgdGhlIFBvc2l0aW9uYWwgb2JqZWN0cywgdGhlcmUgd2VyZSB0b28gZmV3Ci0gICAgICAgICMgYXJnIHN0cmluZ3Mgc3VwcGxpZWQuCi0gICAgICAgIGlmIHBvc2l0aW9uYWxzOgotICAgICAgICAgICAgc2VsZi5lcnJvcihfKCd0b28gZmV3IGFyZ3VtZW50cycpKQotCiAgICAgICAgICMgbWFrZSBzdXJlIGFsbCByZXF1aXJlZCBhY3Rpb25zIHdlcmUgcHJlc2VudAotICAgICAgICBmb3IgYWN0aW9uIGluIHNlbGYuX2FjdGlvbnM6Ci0gICAgICAgICAgICBpZiBhY3Rpb24ucmVxdWlyZWQ6Ci0gICAgICAgICAgICAgICAgaWYgYWN0aW9uIG5vdCBpbiBzZWVuX2FjdGlvbnM6Ci0gICAgICAgICAgICAgICAgICAgIG5hbWUgPSBfZ2V0X2FjdGlvbl9uYW1lKGFjdGlvbikKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5lcnJvcihfKCdhcmd1bWVudCAlcyBpcyByZXF1aXJlZCcpICUgbmFtZSkKKyAgICAgICAgcmVxdWlyZWRfYWN0aW9ucyA9IFtfZ2V0X2FjdGlvbl9uYW1lKGFjdGlvbikgZm9yIGFjdGlvbiBpbiBzZWxmLl9hY3Rpb25zCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgYWN0aW9uLnJlcXVpcmVkIGFuZCBhY3Rpb24gbm90IGluIHNlZW5fYWN0aW9uc10KKyAgICAgICAgaWYgcmVxdWlyZWRfYWN0aW9uczoKKyAgICAgICAgICAgIHNlbGYuZXJyb3IoXygndGhlIGZvbGxvd2luZyBhcmd1bWVudHMgYXJlIHJlcXVpcmVkOiAlcycpICUKKyAgICAgICAgICAgICAgICAgICAgICAgJywgJy5qb2luKHJlcXVpcmVkX2FjdGlvbnMpKQogCiAgICAgICAgICMgbWFrZSBzdXJlIGFsbCByZXF1aXJlZCBncm91cHMgaGFkIG9uZSBvcHRpb24gcHJlc2VudAogICAgICAgICBmb3IgZ3JvdXAgaW4gc2VsZi5fbXV0dWFsbHlfZXhjbHVzaXZlX2dyb3VwczoKZGlmZiAtLWdpdCBhL0xpYi9hc3QucHkgYi9MaWIvYXN0LnB5CmluZGV4IGZiNWFkYWMuLjEzZjU5ZjkgMTAwNjQ0Ci0tLSBhL0xpYi9hc3QucHkKKysrIGIvTGliL2FzdC5weQpAQCAtMjUsNyArMjUsNiBAQAogICAgIDpsaWNlbnNlOiBQeXRob24gTGljZW5zZS4KICIiIgogZnJvbSBfYXN0IGltcG9ydCAqCi1mcm9tIF9hc3QgaW1wb3J0IF9fdmVyc2lvbl9fCiAKIAogZGVmIHBhcnNlKHNvdXJjZSwgZmlsZW5hbWU9Jzx1bmtub3duPicsIG1vZGU9J2V4ZWMnKToKZGlmZiAtLWdpdCBhL0xpYi9hc3luY2hhdC5weSBiL0xpYi9hc3luY2hhdC5weQppbmRleCA2NTU4NTEyLi4yMTk5ZDFiIDEwMDY0NAotLS0gYS9MaWIvYXN5bmNoYXQucHkKKysrIGIvTGliL2FzeW5jaGF0LnB5CkBAIC03NSw3ICs3NSw3IEBACiAgICAgIyBzaWduIG9mIGFuIGFwcGxpY2F0aW9uIGJ1ZyB0aGF0IHdlIGRvbid0IHdhbnQgdG8gcGFzcyBzaWxlbnRseQogCiAgICAgdXNlX2VuY29kaW5nICAgICAgICAgICAgPSAwCi0gICAgZW5jb2RpbmcgICAgICAgICAgICAgICAgPSAnbGF0aW4xJworICAgIGVuY29kaW5nICAgICAgICAgICAgICAgID0gJ2xhdGluLTEnCiAKICAgICBkZWYgX19pbml0X18gKHNlbGYsIHNvY2s9Tm9uZSwgbWFwPU5vbmUpOgogICAgICAgICAjIGZvciBzdHJpbmcgdGVybWluYXRvciBtYXRjaGluZwpkaWZmIC0tZ2l0IGEvTGliL2FzeW5jb3JlLnB5IGIvTGliL2FzeW5jb3JlLnB5CmluZGV4IDdmNDJkMzkuLjkyMDQ0NGQgMTAwNjQ0Ci0tLSBhL0xpYi9hc3luY29yZS5weQorKysgYi9MaWIvYXN5bmNvcmUucHkKQEAgLTU0LDcgKzU0LDcgQEAKIAogaW1wb3J0IG9zCiBmcm9tIGVycm5vIGltcG9ydCBFQUxSRUFEWSwgRUlOUFJPR1JFU1MsIEVXT1VMREJMT0NLLCBFQ09OTlJFU0VULCBFSU5WQUwsIFwKLSAgICAgRU5PVENPTk4sIEVTSFVURE9XTiwgRUlOVFIsIEVJU0NPTk4sIEVCQURGLCBFQ09OTkFCT1JURUQsIEVQSVBFLCBFQUdBSU4sIFwKKyAgICAgRU5PVENPTk4sIEVTSFVURE9XTiwgRUlTQ09OTiwgRUJBREYsIEVDT05OQUJPUlRFRCwgRVBJUEUsIEVBR0FJTiwgXAogICAgICBlcnJvcmNvZGUKIAogX0RJU0NPTk5FQ1RFRCA9IGZyb3plbnNldCgoRUNPTk5SRVNFVCwgRU5PVENPTk4sIEVTSFVURE9XTiwgRUNPTk5BQk9SVEVELCBFUElQRSwKQEAgLTE0MywxMSArMTQzLDggQEAKIAogICAgICAgICB0cnk6CiAgICAgICAgICAgICByLCB3LCBlID0gc2VsZWN0LnNlbGVjdChyLCB3LCBlLCB0aW1lb3V0KQotICAgICAgICBleGNlcHQgc2VsZWN0LmVycm9yIGFzIGVycjoKLSAgICAgICAgICAgIGlmIGVyci5hcmdzWzBdICE9IEVJTlRSOgotICAgICAgICAgICAgICAgIHJhaXNlCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKKyAgICAgICAgICAgIHJldHVybgogCiAgICAgICAgIGZvciBmZCBpbiByOgogICAgICAgICAgICAgb2JqID0gbWFwLmdldChmZCkKQEAgLTE4NCwxNSArMTgxLDEwIEBACiAgICAgICAgICAgICBpZiBvYmoud3JpdGFibGUoKSBhbmQgbm90IG9iai5hY2NlcHRpbmc6CiAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gc2VsZWN0LlBPTExPVVQKICAgICAgICAgICAgIGlmIGZsYWdzOgotICAgICAgICAgICAgICAgICMgT25seSBjaGVjayBmb3IgZXhjZXB0aW9ucyBpZiBvYmplY3Qgd2FzIGVpdGhlciByZWFkYWJsZQotICAgICAgICAgICAgICAgICMgb3Igd3JpdGFibGUuCi0gICAgICAgICAgICAgICAgZmxhZ3MgfD0gc2VsZWN0LlBPTExFUlIgfCBzZWxlY3QuUE9MTEhVUCB8IHNlbGVjdC5QT0xMTlZBTAogICAgICAgICAgICAgICAgIHBvbGxzdGVyLnJlZ2lzdGVyKGZkLCBmbGFncykKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgciA9IHBvbGxzdGVyLnBvbGwodGltZW91dCkKLSAgICAgICAgZXhjZXB0IHNlbGVjdC5lcnJvciBhcyBlcnI6Ci0gICAgICAgICAgICBpZiBlcnIuYXJnc1swXSAhPSBFSU5UUjoKLSAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKICAgICAgICAgICAgIHIgPSBbXQogICAgICAgICBmb3IgZmQsIGZsYWdzIGluIHI6CiAgICAgICAgICAgICBvYmogPSBtYXAuZ2V0KGZkKQpAQCAtMjkxLDcgKzI4Myw3IEBACiAgICAgICAgICAgICBkZWwgbWFwW2ZkXQogICAgICAgICBzZWxmLl9maWxlbm8gPSBOb25lCiAKLSAgICBkZWYgY3JlYXRlX3NvY2tldChzZWxmLCBmYW1pbHksIHR5cGUpOgorICAgIGRlZiBjcmVhdGVfc29ja2V0KHNlbGYsIGZhbWlseT1zb2NrZXQuQUZfSU5FVCwgdHlwZT1zb2NrZXQuU09DS19TVFJFQU0pOgogICAgICAgICBzZWxmLmZhbWlseV9hbmRfdHlwZSA9IGZhbWlseSwgdHlwZQogICAgICAgICBzb2NrID0gc29ja2V0LnNvY2tldChmYW1pbHksIHR5cGUpCiAgICAgICAgIHNvY2suc2V0YmxvY2tpbmcoMCkKZGlmZiAtLWdpdCBhL0xpYi9iaW5oZXgucHkgYi9MaWIvYmluaGV4LnB5CmluZGV4IDk5OWE2NzUuLjdiZjkyNzggMTAwNjQ0Ci0tLSBhL0xpYi9iaW5oZXgucHkKKysrIGIvTGliL2JpbmhleC5weQpAQCAtMjMsNyArMjMsNiBAQAogIwogaW1wb3J0IGlvCiBpbXBvcnQgb3MKLWltcG9ydCBzeXMKIGltcG9ydCBzdHJ1Y3QKIGltcG9ydCBiaW5hc2NpaQogCmRpZmYgLS1naXQgYS9MaWIvYnoyLnB5IGIvTGliL2J6Mi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNmU1NTU4Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL2J6Mi5weQpAQCAtMCwwICsxLDQxNyBAQAorIiIiSW50ZXJmYWNlIHRvIHRoZSBsaWJiemlwMiBjb21wcmVzc2lvbiBsaWJyYXJ5LgorCitUaGlzIG1vZHVsZSBwcm92aWRlcyBhIGZpbGUgaW50ZXJmYWNlLCBjbGFzc2VzIGZvciBpbmNyZW1lbnRhbAorKGRlKWNvbXByZXNzaW9uLCBhbmQgZnVuY3Rpb25zIGZvciBvbmUtc2hvdCAoZGUpY29tcHJlc3Npb24uCisiIiIKKworX19hbGxfXyA9IFsiQloyRmlsZSIsICJCWjJDb21wcmVzc29yIiwgIkJaMkRlY29tcHJlc3NvciIsICJjb21wcmVzcyIsCisgICAgICAgICAgICJkZWNvbXByZXNzIl0KKworX19hdXRob3JfXyA9ICJOYWRlZW0gVmF3ZGEgPG5hZGVlbS52YXdkYUBnbWFpbC5jb20+IgorCitpbXBvcnQgaW8KK2ltcG9ydCB3YXJuaW5ncworCit0cnk6CisgICAgZnJvbSB0aHJlYWRpbmcgaW1wb3J0IFJMb2NrCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgZnJvbSBkdW1teV90aHJlYWRpbmcgaW1wb3J0IFJMb2NrCisKK2Zyb20gX2J6MiBpbXBvcnQgQloyQ29tcHJlc3NvciwgQloyRGVjb21wcmVzc29yCisKKworX01PREVfQ0xPU0VEICAgPSAwCitfTU9ERV9SRUFEICAgICA9IDEKK19NT0RFX1JFQURfRU9GID0gMgorX01PREVfV1JJVEUgICAgPSAzCisKK19CVUZGRVJfU0laRSA9IDgxOTIKKworCitjbGFzcyBCWjJGaWxlKGlvLkJ1ZmZlcmVkSU9CYXNlKToKKworICAgICIiIkEgZmlsZSBvYmplY3QgcHJvdmlkaW5nIHRyYW5zcGFyZW50IGJ6aXAyIChkZSljb21wcmVzc2lvbi4KKworICAgIEEgQloyRmlsZSBjYW4gYWN0IGFzIGEgd3JhcHBlciBmb3IgYW4gZXhpc3RpbmcgZmlsZSBvYmplY3QsIG9yIHJlZmVyCisgICAgZGlyZWN0bHkgdG8gYSBuYW1lZCBmaWxlIG9uIGRpc2suCisKKyAgICBOb3RlIHRoYXQgQloyRmlsZSBwcm92aWRlcyBhICpiaW5hcnkqIGZpbGUgaW50ZXJmYWNlIC0gZGF0YSByZWFkIGlzCisgICAgcmV0dXJuZWQgYXMgYnl0ZXMsIGFuZCBkYXRhIHRvIGJlIHdyaXR0ZW4gc2hvdWxkIGJlIGdpdmVuIGFzIGJ5dGVzLgorICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZpbGVuYW1lPU5vbmUsIG1vZGU9InIiLCBidWZmZXJpbmc9Tm9uZSwKKyAgICAgICAgICAgICAgICAgY29tcHJlc3NsZXZlbD05LCBmaWxlb2JqPU5vbmUpOgorICAgICAgICAiIiJPcGVuIGEgYnppcDItY29tcHJlc3NlZCBmaWxlLgorCisgICAgICAgIElmIGZpbGVuYW1lIGlzIGdpdmVuLCBvcGVuIHRoZSBuYW1lZCBmaWxlLiBPdGhlcndpc2UsIG9wZXJhdGUgb24KKyAgICAgICAgdGhlIGZpbGUgb2JqZWN0IGdpdmVuIGJ5IGZpbGVvYmouIEV4YWN0bHkgb25lIG9mIHRoZXNlIHR3bworICAgICAgICBwYXJhbWV0ZXJzIHNob3VsZCBiZSBwcm92aWRlZC4KKworICAgICAgICBtb2RlIGNhbiBiZSAncicgZm9yIHJlYWRpbmcgKGRlZmF1bHQpLCBvciAndycgZm9yIHdyaXRpbmcuCisKKyAgICAgICAgYnVmZmVyaW5nIGlzIGlnbm9yZWQuIEl0cyB1c2UgaXMgZGVwcmVjYXRlZC4KKworICAgICAgICBJZiBtb2RlIGlzICd3JywgY29tcHJlc3NsZXZlbCBjYW4gYmUgYSBudW1iZXIgYmV0d2VlbiAxIGFuZCA5CisgICAgICAgIHNwZWNpZnlpbmcgdGhlIGxldmVsIG9mIGNvbXByZXNzaW9uOiAxIHByb2R1Y2VzIHRoZSBsZWFzdAorICAgICAgICBjb21wcmVzc2lvbiwgYW5kIDkgKGRlZmF1bHQpIHByb2R1Y2VzIHRoZSBtb3N0IGNvbXByZXNzaW9uLgorICAgICAgICAiIiIKKyAgICAgICAgIyBUaGlzIGxvY2sgbXVzdCBiZSByZWN1cnNpdmUsIHNvIHRoYXQgQnVmZmVyZWRJT0Jhc2UncworICAgICAgICAjIHJlYWRsaW5lKCksIHJlYWRsaW5lcygpIGFuZCB3cml0ZWxpbmVzKCkgZG9uJ3QgZGVhZGxvY2suCisgICAgICAgIHNlbGYuX2xvY2sgPSBSTG9jaygpCisgICAgICAgIHNlbGYuX2ZwID0gTm9uZQorICAgICAgICBzZWxmLl9jbG9zZWZwID0gRmFsc2UKKyAgICAgICAgc2VsZi5fbW9kZSA9IF9NT0RFX0NMT1NFRAorICAgICAgICBzZWxmLl9wb3MgPSAwCisgICAgICAgIHNlbGYuX3NpemUgPSAtMQorCisgICAgICAgIGlmIGJ1ZmZlcmluZyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHdhcm5pbmdzLndhcm4oIlVzZSBvZiAnYnVmZmVyaW5nJyBhcmd1bWVudCBpcyBkZXByZWNhdGVkIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgRGVwcmVjYXRpb25XYXJuaW5nKQorCisgICAgICAgIGlmIG5vdCAoMSA8PSBjb21wcmVzc2xldmVsIDw9IDkpOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY29tcHJlc3NsZXZlbCBtdXN0IGJlIGJldHdlZW4gMSBhbmQgOSIpCisKKyAgICAgICAgaWYgbW9kZSBpbiAoIiIsICJyIiwgInJiIik6CisgICAgICAgICAgICBtb2RlID0gInJiIgorICAgICAgICAgICAgbW9kZV9jb2RlID0gX01PREVfUkVBRAorICAgICAgICAgICAgc2VsZi5fZGVjb21wcmVzc29yID0gQloyRGVjb21wcmVzc29yKCkKKyAgICAgICAgICAgIHNlbGYuX2J1ZmZlciA9IE5vbmUKKyAgICAgICAgZWxpZiBtb2RlIGluICgidyIsICJ3YiIpOgorICAgICAgICAgICAgbW9kZSA9ICJ3YiIKKyAgICAgICAgICAgIG1vZGVfY29kZSA9IF9NT0RFX1dSSVRFCisgICAgICAgICAgICBzZWxmLl9jb21wcmVzc29yID0gQloyQ29tcHJlc3Nvcihjb21wcmVzc2xldmVsKQorICAgICAgICBlbGlmIG1vZGUgaW4gKCJhIiwgImFiIik6CisgICAgICAgICAgICBtb2RlID0gImFiIgorICAgICAgICAgICAgbW9kZV9jb2RlID0gX01PREVfV1JJVEUKKyAgICAgICAgICAgIHNlbGYuX2NvbXByZXNzb3IgPSBCWjJDb21wcmVzc29yKGNvbXByZXNzbGV2ZWwpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJJbnZhbGlkIG1vZGU6IHshcn0iLmZvcm1hdChtb2RlKSkKKworICAgICAgICBpZiBmaWxlbmFtZSBpcyBub3QgTm9uZSBhbmQgZmlsZW9iaiBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5fZnAgPSBvcGVuKGZpbGVuYW1lLCBtb2RlKQorICAgICAgICAgICAgc2VsZi5fY2xvc2VmcCA9IFRydWUKKyAgICAgICAgICAgIHNlbGYuX21vZGUgPSBtb2RlX2NvZGUKKyAgICAgICAgZWxpZiBmaWxlb2JqIGlzIG5vdCBOb25lIGFuZCBmaWxlbmFtZSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5fZnAgPSBmaWxlb2JqCisgICAgICAgICAgICBzZWxmLl9tb2RlID0gbW9kZV9jb2RlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJNdXN0IGdpdmUgZXhhY3RseSBvbmUgb2YgZmlsZW5hbWUgYW5kIGZpbGVvYmoiKQorCisgICAgZGVmIGNsb3NlKHNlbGYpOgorICAgICAgICAiIiJGbHVzaCBhbmQgY2xvc2UgdGhlIGZpbGUuCisKKyAgICAgICAgTWF5IGJlIGNhbGxlZCBtb3JlIHRoYW4gb25jZSB3aXRob3V0IGVycm9yLiBPbmNlIHRoZSBmaWxlIGlzCisgICAgICAgIGNsb3NlZCwgYW55IG90aGVyIG9wZXJhdGlvbiBvbiBpdCB3aWxsIHJhaXNlIGEgVmFsdWVFcnJvci4KKyAgICAgICAgIiIiCisgICAgICAgIHdpdGggc2VsZi5fbG9jazoKKyAgICAgICAgICAgIGlmIHNlbGYuX21vZGUgPT0gX01PREVfQ0xPU0VEOgorICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGlmIHNlbGYuX21vZGUgaW4gKF9NT0RFX1JFQUQsIF9NT0RFX1JFQURfRU9GKToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fZGVjb21wcmVzc29yID0gTm9uZQorICAgICAgICAgICAgICAgIGVsaWYgc2VsZi5fbW9kZSA9PSBfTU9ERV9XUklURToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fZnAud3JpdGUoc2VsZi5fY29tcHJlc3Nvci5mbHVzaCgpKQorICAgICAgICAgICAgICAgICAgICBzZWxmLl9jb21wcmVzc29yID0gTm9uZQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGlmIHNlbGYuX2Nsb3NlZnA6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9mcC5jbG9zZSgpCisgICAgICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fZnAgPSBOb25lCisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2Nsb3NlZnAgPSBGYWxzZQorICAgICAgICAgICAgICAgICAgICBzZWxmLl9tb2RlID0gX01PREVfQ0xPU0VECisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2J1ZmZlciA9IE5vbmUKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBjbG9zZWQoc2VsZik6CisgICAgICAgICIiIlRydWUgaWYgdGhpcyBmaWxlIGlzIGNsb3NlZC4iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX21vZGUgPT0gX01PREVfQ0xPU0VECisKKyAgICBkZWYgZmlsZW5vKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGZpbGUgZGVzY3JpcHRvciBmb3IgdGhlIHVuZGVybHlpbmcgZmlsZS4iIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfbm90X2Nsb3NlZCgpCisgICAgICAgIHJldHVybiBzZWxmLl9mcC5maWxlbm8oKQorCisgICAgZGVmIHNlZWthYmxlKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gd2hldGhlciB0aGUgZmlsZSBzdXBwb3J0cyBzZWVraW5nLiIiIgorICAgICAgICByZXR1cm4gc2VsZi5yZWFkYWJsZSgpCisKKyAgICBkZWYgcmVhZGFibGUoc2VsZik6CisgICAgICAgICIiIlJldHVybiB3aGV0aGVyIHRoZSBmaWxlIHdhcyBvcGVuZWQgZm9yIHJlYWRpbmcuIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX25vdF9jbG9zZWQoKQorICAgICAgICByZXR1cm4gc2VsZi5fbW9kZSBpbiAoX01PREVfUkVBRCwgX01PREVfUkVBRF9FT0YpCisKKyAgICBkZWYgd3JpdGFibGUoc2VsZik6CisgICAgICAgICIiIlJldHVybiB3aGV0aGVyIHRoZSBmaWxlIHdhcyBvcGVuZWQgZm9yIHdyaXRpbmcuIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX25vdF9jbG9zZWQoKQorICAgICAgICByZXR1cm4gc2VsZi5fbW9kZSA9PSBfTU9ERV9XUklURQorCisgICAgIyBNb2RlLWNoZWNraW5nIGhlbHBlciBmdW5jdGlvbnMuCisKKyAgICBkZWYgX2NoZWNrX25vdF9jbG9zZWQoc2VsZik6CisgICAgICAgIGlmIHNlbGYuY2xvc2VkOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiSS9PIG9wZXJhdGlvbiBvbiBjbG9zZWQgZmlsZSIpCisKKyAgICBkZWYgX2NoZWNrX2Nhbl9yZWFkKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5yZWFkYWJsZSgpOgorICAgICAgICAgICAgcmFpc2UgaW8uVW5zdXBwb3J0ZWRPcGVyYXRpb24oIkZpbGUgbm90IG9wZW4gZm9yIHJlYWRpbmciKQorCisgICAgZGVmIF9jaGVja19jYW5fd3JpdGUoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLndyaXRhYmxlKCk6CisgICAgICAgICAgICByYWlzZSBpby5VbnN1cHBvcnRlZE9wZXJhdGlvbigiRmlsZSBub3Qgb3BlbiBmb3Igd3JpdGluZyIpCisKKyAgICBkZWYgX2NoZWNrX2Nhbl9zZWVrKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5zZWVrYWJsZSgpOgorICAgICAgICAgICAgcmFpc2UgaW8uVW5zdXBwb3J0ZWRPcGVyYXRpb24oIlNlZWtpbmcgaXMgb25seSBzdXBwb3J0ZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9uIGZpbGVzIG9wZW4gZm9yIHJlYWRpbmciKQorCisgICAgIyBGaWxsIHRoZSByZWFkYWhlYWQgYnVmZmVyIGlmIGl0IGlzIGVtcHR5LiBSZXR1cm5zIEZhbHNlIG9uIEVPRi4KKyAgICBkZWYgX2ZpbGxfYnVmZmVyKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl9idWZmZXI6CisgICAgICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgICAgIGlmIHNlbGYuX2RlY29tcHJlc3Nvci51bnVzZWRfZGF0YToKKyAgICAgICAgICAgIHJhd2Jsb2NrID0gc2VsZi5fZGVjb21wcmVzc29yLnVudXNlZF9kYXRhCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYXdibG9jayA9IHNlbGYuX2ZwLnJlYWQoX0JVRkZFUl9TSVpFKQorCisgICAgICAgIGlmIG5vdCByYXdibG9jazoKKyAgICAgICAgICAgIGlmIHNlbGYuX2RlY29tcHJlc3Nvci5lb2Y6CisgICAgICAgICAgICAgICAgc2VsZi5fbW9kZSA9IF9NT0RFX1JFQURfRU9GCisgICAgICAgICAgICAgICAgc2VsZi5fc2l6ZSA9IHNlbGYuX3BvcworICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBFT0ZFcnJvcigiQ29tcHJlc3NlZCBmaWxlIGVuZGVkIGJlZm9yZSB0aGUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJlbmQtb2Ytc3RyZWFtIG1hcmtlciB3YXMgcmVhY2hlZCIpCisKKyAgICAgICAgIyBDb250aW51ZSB0byBuZXh0IHN0cmVhbS4KKyAgICAgICAgaWYgc2VsZi5fZGVjb21wcmVzc29yLmVvZjoKKyAgICAgICAgICAgIHNlbGYuX2RlY29tcHJlc3NvciA9IEJaMkRlY29tcHJlc3NvcigpCisKKyAgICAgICAgc2VsZi5fYnVmZmVyID0gc2VsZi5fZGVjb21wcmVzc29yLmRlY29tcHJlc3MocmF3YmxvY2spCisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICAjIFJlYWQgZGF0YSB1bnRpbCBFT0YuCisgICAgIyBJZiByZXR1cm5fZGF0YSBpcyBmYWxzZSwgY29uc3VtZSB0aGUgZGF0YSB3aXRob3V0IHJldHVybmluZyBpdC4KKyAgICBkZWYgX3JlYWRfYWxsKHNlbGYsIHJldHVybl9kYXRhPVRydWUpOgorICAgICAgICBibG9ja3MgPSBbXQorICAgICAgICB3aGlsZSBzZWxmLl9maWxsX2J1ZmZlcigpOgorICAgICAgICAgICAgaWYgcmV0dXJuX2RhdGE6CisgICAgICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChzZWxmLl9idWZmZXIpCisgICAgICAgICAgICBzZWxmLl9wb3MgKz0gbGVuKHNlbGYuX2J1ZmZlcikKKyAgICAgICAgICAgIHNlbGYuX2J1ZmZlciA9IE5vbmUKKyAgICAgICAgaWYgcmV0dXJuX2RhdGE6CisgICAgICAgICAgICByZXR1cm4gYiIiLmpvaW4oYmxvY2tzKQorCisgICAgIyBSZWFkIGEgYmxvY2sgb2YgdXAgdG8gbiBieXRlcy4KKyAgICAjIElmIHJldHVybl9kYXRhIGlzIGZhbHNlLCBjb25zdW1lIHRoZSBkYXRhIHdpdGhvdXQgcmV0dXJuaW5nIGl0LgorICAgIGRlZiBfcmVhZF9ibG9jayhzZWxmLCBuLCByZXR1cm5fZGF0YT1UcnVlKToKKyAgICAgICAgYmxvY2tzID0gW10KKyAgICAgICAgd2hpbGUgbiA+IDAgYW5kIHNlbGYuX2ZpbGxfYnVmZmVyKCk6CisgICAgICAgICAgICBpZiBuIDwgbGVuKHNlbGYuX2J1ZmZlcik6CisgICAgICAgICAgICAgICAgZGF0YSA9IHNlbGYuX2J1ZmZlcls6bl0KKyAgICAgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBzZWxmLl9idWZmZXJbbjpdCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGRhdGEgPSBzZWxmLl9idWZmZXIKKyAgICAgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBOb25lCisgICAgICAgICAgICBpZiByZXR1cm5fZGF0YToKKyAgICAgICAgICAgICAgICBibG9ja3MuYXBwZW5kKGRhdGEpCisgICAgICAgICAgICBzZWxmLl9wb3MgKz0gbGVuKGRhdGEpCisgICAgICAgICAgICBuIC09IGxlbihkYXRhKQorICAgICAgICBpZiByZXR1cm5fZGF0YToKKyAgICAgICAgICAgIHJldHVybiBiIiIuam9pbihibG9ja3MpCisKKyAgICBkZWYgcGVlayhzZWxmLCBuPTApOgorICAgICAgICAiIiJSZXR1cm4gYnVmZmVyZWQgZGF0YSB3aXRob3V0IGFkdmFuY2luZyB0aGUgZmlsZSBwb3NpdGlvbi4KKworICAgICAgICBBbHdheXMgcmV0dXJucyBhdCBsZWFzdCBvbmUgYnl0ZSBvZiBkYXRhLCB1bmxlc3MgYXQgRU9GLgorICAgICAgICBUaGUgZXhhY3QgbnVtYmVyIG9mIGJ5dGVzIHJldHVybmVkIGlzIHVuc3BlY2lmaWVkLgorICAgICAgICAiIiIKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgc2VsZi5fY2hlY2tfY2FuX3JlYWQoKQorICAgICAgICAgICAgaWYgc2VsZi5fbW9kZSA9PSBfTU9ERV9SRUFEX0VPRiBvciBub3Qgc2VsZi5fZmlsbF9idWZmZXIoKToKKyAgICAgICAgICAgICAgICByZXR1cm4gYiIiCisgICAgICAgICAgICByZXR1cm4gc2VsZi5fYnVmZmVyCisKKyAgICBkZWYgcmVhZChzZWxmLCBzaXplPS0xKToKKyAgICAgICAgIiIiUmVhZCB1cCB0byBzaXplIHVuY29tcHJlc3NlZCBieXRlcyBmcm9tIHRoZSBmaWxlLgorCisgICAgICAgIElmIHNpemUgaXMgbmVnYXRpdmUgb3Igb21pdHRlZCwgcmVhZCB1bnRpbCBFT0YgaXMgcmVhY2hlZC4KKyAgICAgICAgUmV0dXJucyBiJycgaWYgdGhlIGZpbGUgaXMgYWxyZWFkeSBhdCBFT0YuCisgICAgICAgICIiIgorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICBzZWxmLl9jaGVja19jYW5fcmVhZCgpCisgICAgICAgICAgICBpZiBzZWxmLl9tb2RlID09IF9NT0RFX1JFQURfRU9GIG9yIHNpemUgPT0gMDoKKyAgICAgICAgICAgICAgICByZXR1cm4gYiIiCisgICAgICAgICAgICBlbGlmIHNpemUgPCAwOgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl9yZWFkX2FsbCgpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl9yZWFkX2Jsb2NrKHNpemUpCisKKyAgICBkZWYgcmVhZDEoc2VsZiwgc2l6ZT0tMSk6CisgICAgICAgICIiIlJlYWQgdXAgdG8gc2l6ZSB1bmNvbXByZXNzZWQgYnl0ZXMgd2l0aCBhdCBtb3N0IG9uZSByZWFkCisgICAgICAgIGZyb20gdGhlIHVuZGVybHlpbmcgc3RyZWFtLgorCisgICAgICAgIFJldHVybnMgYicnIGlmIHRoZSBmaWxlIGlzIGF0IEVPRi4KKyAgICAgICAgIiIiCisgICAgICAgIHdpdGggc2VsZi5fbG9jazoKKyAgICAgICAgICAgIHNlbGYuX2NoZWNrX2Nhbl9yZWFkKCkKKyAgICAgICAgICAgIGlmIChzaXplID09IDAgb3Igc2VsZi5fbW9kZSA9PSBfTU9ERV9SRUFEX0VPRiBvcgorICAgICAgICAgICAgICAgIG5vdCBzZWxmLl9maWxsX2J1ZmZlcigpKToKKyAgICAgICAgICAgICAgICByZXR1cm4gYiIiCisgICAgICAgICAgICBpZiAwIDwgc2l6ZSA8IGxlbihzZWxmLl9idWZmZXIpOgorICAgICAgICAgICAgICAgIGRhdGEgPSBzZWxmLl9idWZmZXJbOnNpemVdCisgICAgICAgICAgICAgICAgc2VsZi5fYnVmZmVyID0gc2VsZi5fYnVmZmVyW3NpemU6XQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBkYXRhID0gc2VsZi5fYnVmZmVyCisgICAgICAgICAgICAgICAgc2VsZi5fYnVmZmVyID0gTm9uZQorICAgICAgICAgICAgc2VsZi5fcG9zICs9IGxlbihkYXRhKQorICAgICAgICAgICAgcmV0dXJuIGRhdGEKKworICAgIGRlZiByZWFkaW50byhzZWxmLCBiKToKKyAgICAgICAgIiIiUmVhZCB1cCB0byBsZW4oYikgYnl0ZXMgaW50byBiLgorCisgICAgICAgIFJldHVybnMgdGhlIG51bWJlciBvZiBieXRlcyByZWFkICgwIGZvciBFT0YpLgorICAgICAgICAiIiIKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgcmV0dXJuIGlvLkJ1ZmZlcmVkSU9CYXNlLnJlYWRpbnRvKHNlbGYsIGIpCisKKyAgICBkZWYgcmVhZGxpbmUoc2VsZiwgc2l6ZT0tMSk6CisgICAgICAgICIiIlJlYWQgYSBsaW5lIG9mIHVuY29tcHJlc3NlZCBieXRlcyBmcm9tIHRoZSBmaWxlLgorCisgICAgICAgIFRoZSB0ZXJtaW5hdGluZyBuZXdsaW5lIChpZiBwcmVzZW50KSBpcyByZXRhaW5lZC4gSWYgc2l6ZSBpcworICAgICAgICBub24tbmVnYXRpdmUsIG5vIG1vcmUgdGhhbiBzaXplIGJ5dGVzIHdpbGwgYmUgcmVhZCAoaW4gd2hpY2gKKyAgICAgICAgY2FzZSB0aGUgbGluZSBtYXkgYmUgaW5jb21wbGV0ZSkuIFJldHVybnMgYicnIGlmIGFscmVhZHkgYXQgRU9GLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgbm90IGhhc2F0dHIoc2l6ZSwgIl9faW5kZXhfXyIpOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJJbnRlZ2VyIGFyZ3VtZW50IGV4cGVjdGVkIikKKyAgICAgICAgc2l6ZSA9IHNpemUuX19pbmRleF9fKCkKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgcmV0dXJuIGlvLkJ1ZmZlcmVkSU9CYXNlLnJlYWRsaW5lKHNlbGYsIHNpemUpCisKKyAgICBkZWYgcmVhZGxpbmVzKHNlbGYsIHNpemU9LTEpOgorICAgICAgICAiIiJSZWFkIGEgbGlzdCBvZiBsaW5lcyBvZiB1bmNvbXByZXNzZWQgYnl0ZXMgZnJvbSB0aGUgZmlsZS4KKworICAgICAgICBzaXplIGNhbiBiZSBzcGVjaWZpZWQgdG8gY29udHJvbCB0aGUgbnVtYmVyIG9mIGxpbmVzIHJlYWQ6IG5vCisgICAgICAgIGZ1cnRoZXIgbGluZXMgd2lsbCBiZSByZWFkIG9uY2UgdGhlIHRvdGFsIHNpemUgb2YgdGhlIGxpbmVzIHJlYWQKKyAgICAgICAgc28gZmFyIGVxdWFscyBvciBleGNlZWRzIHNpemUuCisgICAgICAgICIiIgorICAgICAgICBpZiBub3QgaGFzYXR0cihzaXplLCAiX19pbmRleF9fIik6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIkludGVnZXIgYXJndW1lbnQgZXhwZWN0ZWQiKQorICAgICAgICBzaXplID0gc2l6ZS5fX2luZGV4X18oKQorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICByZXR1cm4gaW8uQnVmZmVyZWRJT0Jhc2UucmVhZGxpbmVzKHNlbGYsIHNpemUpCisKKyAgICBkZWYgd3JpdGUoc2VsZiwgZGF0YSk6CisgICAgICAgICIiIldyaXRlIGEgYnl0ZSBzdHJpbmcgdG8gdGhlIGZpbGUuCisKKyAgICAgICAgUmV0dXJucyB0aGUgbnVtYmVyIG9mIHVuY29tcHJlc3NlZCBieXRlcyB3cml0dGVuLCB3aGljaCBpcworICAgICAgICBhbHdheXMgbGVuKGRhdGEpLiBOb3RlIHRoYXQgZHVlIHRvIGJ1ZmZlcmluZywgdGhlIGZpbGUgb24gZGlzaworICAgICAgICBtYXkgbm90IHJlZmxlY3QgdGhlIGRhdGEgd3JpdHRlbiB1bnRpbCBjbG9zZSgpIGlzIGNhbGxlZC4KKyAgICAgICAgIiIiCisgICAgICAgIHdpdGggc2VsZi5fbG9jazoKKyAgICAgICAgICAgIHNlbGYuX2NoZWNrX2Nhbl93cml0ZSgpCisgICAgICAgICAgICBjb21wcmVzc2VkID0gc2VsZi5fY29tcHJlc3Nvci5jb21wcmVzcyhkYXRhKQorICAgICAgICAgICAgc2VsZi5fZnAud3JpdGUoY29tcHJlc3NlZCkKKyAgICAgICAgICAgIHNlbGYuX3BvcyArPSBsZW4oZGF0YSkKKyAgICAgICAgICAgIHJldHVybiBsZW4oZGF0YSkKKworICAgIGRlZiB3cml0ZWxpbmVzKHNlbGYsIHNlcSk6CisgICAgICAgICIiIldyaXRlIGEgc2VxdWVuY2Ugb2YgYnl0ZSBzdHJpbmdzIHRvIHRoZSBmaWxlLgorCisgICAgICAgIFJldHVybnMgdGhlIG51bWJlciBvZiB1bmNvbXByZXNzZWQgYnl0ZXMgd3JpdHRlbi4KKyAgICAgICAgc2VxIGNhbiBiZSBhbnkgaXRlcmFibGUgeWllbGRpbmcgYnl0ZSBzdHJpbmdzLgorCisgICAgICAgIExpbmUgc2VwYXJhdG9ycyBhcmUgbm90IGFkZGVkIGJldHdlZW4gdGhlIHdyaXR0ZW4gYnl0ZSBzdHJpbmdzLgorICAgICAgICAiIiIKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgcmV0dXJuIGlvLkJ1ZmZlcmVkSU9CYXNlLndyaXRlbGluZXMoc2VsZiwgc2VxKQorCisgICAgIyBSZXdpbmQgdGhlIGZpbGUgdG8gdGhlIGJlZ2lubmluZyBvZiB0aGUgZGF0YSBzdHJlYW0uCisgICAgZGVmIF9yZXdpbmQoc2VsZik6CisgICAgICAgIHNlbGYuX2ZwLnNlZWsoMCwgMCkKKyAgICAgICAgc2VsZi5fbW9kZSA9IF9NT0RFX1JFQUQKKyAgICAgICAgc2VsZi5fcG9zID0gMAorICAgICAgICBzZWxmLl9kZWNvbXByZXNzb3IgPSBCWjJEZWNvbXByZXNzb3IoKQorICAgICAgICBzZWxmLl9idWZmZXIgPSBOb25lCisKKyAgICBkZWYgc2VlayhzZWxmLCBvZmZzZXQsIHdoZW5jZT0wKToKKyAgICAgICAgIiIiQ2hhbmdlIHRoZSBmaWxlIHBvc2l0aW9uLgorCisgICAgICAgIFRoZSBuZXcgcG9zaXRpb24gaXMgc3BlY2lmaWVkIGJ5IG9mZnNldCwgcmVsYXRpdmUgdG8gdGhlCisgICAgICAgIHBvc2l0aW9uIGluZGljYXRlZCBieSB3aGVuY2UuIFZhbHVlcyBmb3Igd2hlbmNlIGFyZToKKworICAgICAgICAgICAgMDogc3RhcnQgb2Ygc3RyZWFtIChkZWZhdWx0KTsgb2Zmc2V0IG11c3Qgbm90IGJlIG5lZ2F0aXZlCisgICAgICAgICAgICAxOiBjdXJyZW50IHN0cmVhbSBwb3NpdGlvbgorICAgICAgICAgICAgMjogZW5kIG9mIHN0cmVhbTsgb2Zmc2V0IG11c3Qgbm90IGJlIHBvc2l0aXZlCisKKyAgICAgICAgUmV0dXJucyB0aGUgbmV3IGZpbGUgcG9zaXRpb24uCisKKyAgICAgICAgTm90ZSB0aGF0IHNlZWtpbmcgaXMgZW11bGF0ZWQsIHNvIGRlcGVuZGluZyBvbiB0aGUgcGFyYW1ldGVycywKKyAgICAgICAgdGhpcyBvcGVyYXRpb24gbWF5IGJlIGV4dHJlbWVseSBzbG93LgorICAgICAgICAiIiIKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgc2VsZi5fY2hlY2tfY2FuX3NlZWsoKQorCisgICAgICAgICAgICAjIFJlY2FsY3VsYXRlIG9mZnNldCBhcyBhbiBhYnNvbHV0ZSBmaWxlIHBvc2l0aW9uLgorICAgICAgICAgICAgaWYgd2hlbmNlID09IDA6CisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICAgICAgZWxpZiB3aGVuY2UgPT0gMToKKyAgICAgICAgICAgICAgICBvZmZzZXQgPSBzZWxmLl9wb3MgKyBvZmZzZXQKKyAgICAgICAgICAgIGVsaWYgd2hlbmNlID09IDI6CisgICAgICAgICAgICAgICAgIyBTZWVraW5nIHJlbGF0aXZlIHRvIEVPRiAtIHdlIG5lZWQgdG8ga25vdyB0aGUgZmlsZSdzIHNpemUuCisgICAgICAgICAgICAgICAgaWYgc2VsZi5fc2l6ZSA8IDA6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX3JlYWRfYWxsKHJldHVybl9kYXRhPUZhbHNlKQorICAgICAgICAgICAgICAgIG9mZnNldCA9IHNlbGYuX3NpemUgKyBvZmZzZXQKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiSW52YWxpZCB2YWx1ZSBmb3Igd2hlbmNlOiB7fSIuZm9ybWF0KHdoZW5jZSkpCisKKyAgICAgICAgICAgICMgTWFrZSBpdCBzbyB0aGF0IG9mZnNldCBpcyB0aGUgbnVtYmVyIG9mIGJ5dGVzIHRvIHNraXAgZm9yd2FyZC4KKyAgICAgICAgICAgIGlmIG9mZnNldCA8IHNlbGYuX3BvczoKKyAgICAgICAgICAgICAgICBzZWxmLl9yZXdpbmQoKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBvZmZzZXQgLT0gc2VsZi5fcG9zCisKKyAgICAgICAgICAgICMgUmVhZCBhbmQgZGlzY2FyZCBkYXRhIHVudGlsIHdlIHJlYWNoIHRoZSBkZXNpcmVkIHBvc2l0aW9uLgorICAgICAgICAgICAgaWYgc2VsZi5fbW9kZSAhPSBfTU9ERV9SRUFEX0VPRjoKKyAgICAgICAgICAgICAgICBzZWxmLl9yZWFkX2Jsb2NrKG9mZnNldCwgcmV0dXJuX2RhdGE9RmFsc2UpCisKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9wb3MKKworICAgIGRlZiB0ZWxsKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbi4iIiIKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgc2VsZi5fY2hlY2tfbm90X2Nsb3NlZCgpCisgICAgICAgICAgICByZXR1cm4gc2VsZi5fcG9zCisKKworZGVmIGNvbXByZXNzKGRhdGEsIGNvbXByZXNzbGV2ZWw9OSk6CisgICAgIiIiQ29tcHJlc3MgYSBibG9jayBvZiBkYXRhLgorCisgICAgY29tcHJlc3NsZXZlbCwgaWYgZ2l2ZW4sIG11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAxIGFuZCA5LgorCisgICAgRm9yIGluY3JlbWVudGFsIGNvbXByZXNzaW9uLCB1c2UgYSBCWjJDb21wcmVzc29yIG9iamVjdCBpbnN0ZWFkLgorICAgICIiIgorICAgIGNvbXAgPSBCWjJDb21wcmVzc29yKGNvbXByZXNzbGV2ZWwpCisgICAgcmV0dXJuIGNvbXAuY29tcHJlc3MoZGF0YSkgKyBjb21wLmZsdXNoKCkKKworCitkZWYgZGVjb21wcmVzcyhkYXRhKToKKyAgICAiIiJEZWNvbXByZXNzIGEgYmxvY2sgb2YgZGF0YS4KKworICAgIEZvciBpbmNyZW1lbnRhbCBkZWNvbXByZXNzaW9uLCB1c2UgYSBCWjJEZWNvbXByZXNzb3Igb2JqZWN0IGluc3RlYWQuCisgICAgIiIiCisgICAgaWYgbGVuKGRhdGEpID09IDA6CisgICAgICAgIHJldHVybiBiIiIKKworICAgIHJlc3VsdHMgPSBbXQorICAgIHdoaWxlIFRydWU6CisgICAgICAgIGRlY29tcCA9IEJaMkRlY29tcHJlc3NvcigpCisgICAgICAgIHJlc3VsdHMuYXBwZW5kKGRlY29tcC5kZWNvbXByZXNzKGRhdGEpKQorICAgICAgICBpZiBub3QgZGVjb21wLmVvZjoKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkNvbXByZXNzZWQgZGF0YSBlbmRlZCBiZWZvcmUgdGhlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImVuZC1vZi1zdHJlYW0gbWFya2VyIHdhcyByZWFjaGVkIikKKyAgICAgICAgaWYgbm90IGRlY29tcC51bnVzZWRfZGF0YToKKyAgICAgICAgICAgIHJldHVybiBiIiIuam9pbihyZXN1bHRzKQorICAgICAgICAjIFRoZXJlIGlzIHVudXNlZCBkYXRhIGxlZnQgb3Zlci4gUHJvY2VlZCB0byBuZXh0IHN0cmVhbS4KKyAgICAgICAgZGF0YSA9IGRlY29tcC51bnVzZWRfZGF0YQpkaWZmIC0tZ2l0IGEvTGliL2NnaS5weSBiL0xpYi9jZ2kucHkKaW5kZXggOTBhMzM0NS4uZTk2NGYwYyAxMDA3NTUKLS0tIGEvTGliL2NnaS5weQorKysgYi9MaWIvY2dpLnB5CkBAIC03Niw3ICs3Niw3IEBACiAgICAgc2VuZCBhbiBlcnJvciBtZXNzYWdlKS4KIAogICAgICIiIgotICAgIGdsb2JhbCBsb2dmcCwgbG9nCisgICAgZ2xvYmFsIGxvZywgbG9nZmlsZSwgbG9nZnAKICAgICBpZiBsb2dmaWxlIGFuZCBub3QgbG9nZnA6CiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGxvZ2ZwID0gb3Blbihsb2dmaWxlLCAiYSIpCkBAIC05Niw2ICs5NiwxNSBAQAogICAgICIiIkR1bW15IGZ1bmN0aW9uLCBhc3NpZ25lZCB0byBsb2cgd2hlbiBsb2dnaW5nIGlzIGRpc2FibGVkLiIiIgogICAgIHBhc3MKIAorZGVmIGNsb3NlbG9nKCk6CisgICAgIiIiQ2xvc2UgdGhlIGxvZyBmaWxlLiIiIgorICAgIGdsb2JhbCBsb2csIGxvZ2ZpbGUsIGxvZ2ZwCisgICAgbG9nZmlsZSA9ICcnCisgICAgaWYgbG9nZnA6CisgICAgICAgIGxvZ2ZwLmNsb3NlKCkKKyAgICAgICAgbG9nZnAgPSBOb25lCisgICAgbG9nID0gaW5pdGxvZworCiBsb2cgPSBpbml0bG9nICAgICAgICAgICAjIFRoZSBjdXJyZW50IGxvZ2dpbmcgZnVuY3Rpb24KIAogCkBAIC0xMDAzLDcgKzEwMTIsNyBAQAogZGVmIGVzY2FwZShzLCBxdW90ZT1Ob25lKToKICAgICAiIiJEZXByZWNhdGVkIEFQSS4iIiIKICAgICB3YXJuKCJjZ2kuZXNjYXBlIGlzIGRlcHJlY2F0ZWQsIHVzZSBodG1sLmVzY2FwZSBpbnN0ZWFkIiwKLSAgICAgICAgIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIHN0YWNrbGV2ZWw9MikKKyAgICAgICAgIERlcHJlY2F0aW9uV2FybmluZywgc3RhY2tsZXZlbD0yKQogICAgIHMgPSBzLnJlcGxhY2UoIiYiLCAiJmFtcDsiKSAjIE11c3QgYmUgZG9uZSBmaXJzdCEKICAgICBzID0gcy5yZXBsYWNlKCI8IiwgIiZsdDsiKQogICAgIHMgPSBzLnJlcGxhY2UoIj4iLCAiJmd0OyIpCmRpZmYgLS1naXQgYS9MaWIvY2dpdGIucHkgYi9MaWIvY2dpdGIucHkKaW5kZXggN2I1MmM4ZS4uZTNjZTJjYiAxMDA2NDQKLS0tIGEvTGliL2NnaXRiLnB5CisrKyBiL0xpYi9jZ2l0Yi5weQpAQCAtMzEsNyArMzEsNiBAQAogaW1wb3J0IHRpbWUKIGltcG9ydCB0b2tlbml6ZQogaW1wb3J0IHRyYWNlYmFjawotaW1wb3J0IHR5cGVzCiAKIGRlZiByZXNldCgpOgogICAgICIiIlJldHVybiBhIHN0cmluZyB0aGF0IHJlc2V0cyB0aGUgQ0dJIGFuZCBicm93c2VyIHRvIGEga25vd24gc3RhdGUuIiIiCmRpZmYgLS1naXQgYS9MaWIvY29kZWNzLnB5IGIvTGliL2NvZGVjcy5weQppbmRleCBiMTUwZDY0Li5lNjNhMGM2IDEwMDY0NAotLS0gYS9MaWIvY29kZWNzLnB5CisrKyBiL0xpYi9jb2RlY3MucHkKQEAgLTQ4NCw3ICs0ODQsNyBAQAogICAgICAgICAgICAgICAgIGlmIGZpcnN0bGluZToKICAgICAgICAgICAgICAgICAgICAgbmV3Y2hhcnMsIGRlY29kZWRieXRlcyA9IFwKICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZGVjb2RlKGRhdGFbOmV4Yy5zdGFydF0sIHNlbGYuZXJyb3JzKQotICAgICAgICAgICAgICAgICAgICBsaW5lcyA9IG5ld2NoYXJzLnNwbGl0bGluZXMoVHJ1ZSkKKyAgICAgICAgICAgICAgICAgICAgbGluZXMgPSBuZXdjaGFycy5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCiAgICAgICAgICAgICAgICAgICAgIGlmIGxlbihsaW5lcyk8PTE6CiAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZQogICAgICAgICAgICAgICAgIGVsc2U6CkBAIC01MjYsNyArNTI2LDcgQEAKICAgICAgICAgICAgICAgICBzZWxmLmNoYXJidWZmZXIgPSBzZWxmLmxpbmVidWZmZXJbMF0KICAgICAgICAgICAgICAgICBzZWxmLmxpbmVidWZmZXIgPSBOb25lCiAgICAgICAgICAgICBpZiBub3Qga2VlcGVuZHM6Ci0gICAgICAgICAgICAgICAgbGluZSA9IGxpbmUuc3BsaXRsaW5lcyhGYWxzZSlbMF0KKyAgICAgICAgICAgICAgICBsaW5lID0gbGluZS5zcGxpdGxpbmVzKGtlZXBlbmRzPUZhbHNlKVswXQogICAgICAgICAgICAgcmV0dXJuIGxpbmUKIAogICAgICAgICByZWFkc2l6ZSA9IHNpemUgb3IgNzIKQEAgLTU0Myw3ICs1NDMsNyBAQAogICAgICAgICAgICAgICAgICAgICBkYXRhICs9IHNlbGYucmVhZChzaXplPTEsIGNoYXJzPTEpCiAKICAgICAgICAgICAgIGxpbmUgKz0gZGF0YQotICAgICAgICAgICAgbGluZXMgPSBsaW5lLnNwbGl0bGluZXMoVHJ1ZSkKKyAgICAgICAgICAgIGxpbmVzID0gbGluZS5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCiAgICAgICAgICAgICBpZiBsaW5lczoKICAgICAgICAgICAgICAgICBpZiBsZW4obGluZXMpID4gMToKICAgICAgICAgICAgICAgICAgICAgIyBNb3JlIHRoYW4gb25lIGxpbmUgcmVzdWx0OyB0aGUgZmlyc3QgbGluZSBpcyBhIGZ1bGwgbGluZQpAQCAtNTU5LDEwICs1NTksMTAgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICMgb25seSBvbmUgcmVtYWluaW5nIGxpbmUsIHB1dCBpdCBiYWNrIGludG8gY2hhcmJ1ZmZlcgogICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5jaGFyYnVmZmVyID0gbGluZXNbMF0gKyBzZWxmLmNoYXJidWZmZXIKICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGtlZXBlbmRzOgotICAgICAgICAgICAgICAgICAgICAgICAgbGluZSA9IGxpbmUuc3BsaXRsaW5lcyhGYWxzZSlbMF0KKyAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lLnNwbGl0bGluZXMoa2VlcGVuZHM9RmFsc2UpWzBdCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICAgbGluZTB3aXRoZW5kID0gbGluZXNbMF0KLSAgICAgICAgICAgICAgICBsaW5lMHdpdGhvdXRlbmQgPSBsaW5lc1swXS5zcGxpdGxpbmVzKEZhbHNlKVswXQorICAgICAgICAgICAgICAgIGxpbmUwd2l0aG91dGVuZCA9IGxpbmVzWzBdLnNwbGl0bGluZXMoa2VlcGVuZHM9RmFsc2UpWzBdCiAgICAgICAgICAgICAgICAgaWYgbGluZTB3aXRoZW5kICE9IGxpbmUwd2l0aG91dGVuZDogIyBXZSByZWFsbHkgaGF2ZSBhIGxpbmUgZW5kCiAgICAgICAgICAgICAgICAgICAgICMgUHV0IHRoZSByZXN0IGJhY2sgdG9nZXRoZXIgYW5kIGtlZXAgaXQgdW50aWwgdGhlIG5leHQgY2FsbAogICAgICAgICAgICAgICAgICAgICBzZWxmLmNoYXJidWZmZXIgPSBzZWxmLl9lbXB0eV9jaGFyYnVmZmVyLmpvaW4obGluZXNbMTpdKSArIFwKQEAgLTU3NSw3ICs1NzUsNyBAQAogICAgICAgICAgICAgIyB3ZSBkaWRuJ3QgZ2V0IGFueXRoaW5nIG9yIHRoaXMgd2FzIG91ciBvbmx5IHRyeQogICAgICAgICAgICAgaWYgbm90IGRhdGEgb3Igc2l6ZSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICBpZiBsaW5lIGFuZCBub3Qga2VlcGVuZHM6Ci0gICAgICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lLnNwbGl0bGluZXMoRmFsc2UpWzBdCisgICAgICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lLnNwbGl0bGluZXMoa2VlcGVuZHM9RmFsc2UpWzBdCiAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgIGlmIHJlYWRzaXplIDwgODAwMDoKICAgICAgICAgICAgICAgICByZWFkc2l6ZSAqPSAyCkBAIC04MDMsNyArODAzLDcgQEAKIAogICAgICAgICBkYXRhID0gc2VsZi5yZWFkZXIucmVhZCgpCiAgICAgICAgIGRhdGEsIGJ5dGVzZW5jb2RlZCA9IHNlbGYuZW5jb2RlKGRhdGEsIHNlbGYuZXJyb3JzKQotICAgICAgICByZXR1cm4gZGF0YS5zcGxpdGxpbmVzKDEpCisgICAgICAgIHJldHVybiBkYXRhLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkKIAogICAgIGRlZiBfX25leHRfXyhzZWxmKToKIApkaWZmIC0tZ2l0IGEvTGliL2NvbGxlY3Rpb25zLnB5IGIvTGliL2NvbGxlY3Rpb25zL19faW5pdF9fLnB5CnNpbWlsYXJpdHkgaW5kZXggOTIlCnJlbmFtZSBmcm9tIExpYi9jb2xsZWN0aW9ucy5weQpyZW5hbWUgdG8gTGliL2NvbGxlY3Rpb25zL19faW5pdF9fLnB5CmluZGV4IGViMjAyNDMuLmIxYzgyYjQgMTAwNjQ0Ci0tLSBhL0xpYi9jb2xsZWN0aW9ucy5weQorKysgYi9MaWIvY29sbGVjdGlvbnMvX19pbml0X18ucHkKQEAgLTEsMTAgKzEsMTEgQEAKIF9fYWxsX18gPSBbJ2RlcXVlJywgJ2RlZmF1bHRkaWN0JywgJ25hbWVkdHVwbGUnLCAnVXNlckRpY3QnLCAnVXNlckxpc3QnLAotICAgICAgICAgICAgJ1VzZXJTdHJpbmcnLCAnQ291bnRlcicsICdPcmRlcmVkRGljdCddCi0jIEZvciBib290c3RyYXBwaW5nIHJlYXNvbnMsIHRoZSBjb2xsZWN0aW9uIEFCQ3MgYXJlIGRlZmluZWQgaW4gX2FiY29sbC5weS4KLSMgVGhleSBzaG91bGQgaG93ZXZlciBiZSBjb25zaWRlcmVkIGFuIGludGVncmFsIHBhcnQgb2YgY29sbGVjdGlvbnMucHkuCi1mcm9tIF9hYmNvbGwgaW1wb3J0ICoKLWltcG9ydCBfYWJjb2xsCi1fX2FsbF9fICs9IF9hYmNvbGwuX19hbGxfXworICAgICAgICAgICAgJ1VzZXJTdHJpbmcnLCAnQ291bnRlcicsICdPcmRlcmVkRGljdCcsICdDaGFpbk1hcCddCisKKyMgRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCBjb250aW51ZSB0byBtYWtlIHRoZSBjb2xsZWN0aW9ucyBBQkNzCisjIGF2YWlsYWJsZSB0aHJvdWdoIHRoZSBjb2xsZWN0aW9ucyBtb2R1bGUuCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgKgoraW1wb3J0IGNvbGxlY3Rpb25zLmFiYworX19hbGxfXyArPSBjb2xsZWN0aW9ucy5hYmMuX19hbGxfXwogCiBmcm9tIF9jb2xsZWN0aW9ucyBpbXBvcnQgZGVxdWUsIGRlZmF1bHRkaWN0CiBmcm9tIG9wZXJhdG9yIGltcG9ydCBpdGVtZ2V0dGVyIGFzIF9pdGVtZ2V0dGVyCkBAIC0zNjQsOCArMzY1LDkgQEAKICAgICBleGNlcHQgU3ludGF4RXJyb3IgYXMgZToKICAgICAgICAgcmFpc2UgU3ludGF4RXJyb3IoZS5tc2cgKyAnOlxuXG4nICsgY2xhc3NfZGVmaW5pdGlvbikKICAgICByZXN1bHQgPSBuYW1lc3BhY2VbdHlwZW5hbWVdCisgICAgcmVzdWx0Ll9zb3VyY2UgPSBjbGFzc19kZWZpbml0aW9uCiAgICAgaWYgdmVyYm9zZToKLSAgICAgICAgcHJpbnQoY2xhc3NfZGVmaW5pdGlvbikKKyAgICAgICAgcHJpbnQocmVzdWx0Ll9zb3VyY2UpCiAKICAgICAjIEZvciBwaWNrbGluZyB0byB3b3JrLCB0aGUgX19tb2R1bGVfXyB2YXJpYWJsZSBuZWVkcyB0byBiZSBzZXQgdG8gdGhlIGZyYW1lCiAgICAgIyB3aGVyZSB0aGUgbmFtZWQgdHVwbGUgaXMgY3JlYXRlZC4gIEJ5cGFzcyB0aGlzIHN0ZXAgaW4gZW52aXJvbWVudHMgd2hlcmUKQEAgLTY3NCwxMiArNjc2LDg2IEBACiAgICAgICAgICAgICAgICAgcmVzdWx0W2VsZW1dID0gbmV3Y291bnQKICAgICAgICAgcmV0dXJuIHJlc3VsdAogCisgICAgZGVmIF9fcG9zX18oc2VsZik6CisgICAgICAgICdBZGRzIGFuIGVtcHR5IGNvdW50ZXIsIGVmZmVjdGl2ZWx5IHN0cmlwcGluZyBuZWdhdGl2ZSBhbmQgemVybyBjb3VudHMnCisgICAgICAgIHJldHVybiBzZWxmICsgQ291bnRlcigpCisKKyAgICBkZWYgX19uZWdfXyhzZWxmKToKKyAgICAgICAgJycnU3VidHJhY3RzIGZyb20gYW4gZW1wdHkgY291bnRlci4gIFN0cmlwcyBwb3NpdGl2ZSBhbmQgemVybyBjb3VudHMsCisgICAgICAgIGFuZCBmbGlwcyB0aGUgc2lnbiBvbiBuZWdhdGl2ZSBjb3VudHMuCisKKyAgICAgICAgJycnCisgICAgICAgIHJldHVybiBDb3VudGVyKCkgLSBzZWxmCisKKyAgICBkZWYgX2tlZXBfcG9zaXRpdmUoc2VsZik6CisgICAgICAgICcnJ0ludGVybmFsIG1ldGhvZCB0byBzdHJpcCBlbGVtZW50cyB3aXRoIGEgbmVnYXRpdmUgb3IgemVybyBjb3VudCcnJworICAgICAgICBub25wb3NpdGl2ZSA9IFtlbGVtIGZvciBlbGVtLCBjb3VudCBpbiBzZWxmLml0ZW1zKCkgaWYgbm90IGNvdW50ID4gMF0KKyAgICAgICAgZm9yIGVsZW0gaW4gbm9ucG9zaXRpdmU6CisgICAgICAgICAgICBkZWwgc2VsZltlbGVtXQorICAgICAgICByZXR1cm4gc2VsZgorCisgICAgZGVmIF9faWFkZF9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgJycnSW5wbGFjZSBhZGQgZnJvbSBhbm90aGVyIGNvdW50ZXIsIGtlZXBpbmcgb25seSBwb3NpdGl2ZSBjb3VudHMuCisKKyAgICAgICAgPj4+IGMgPSBDb3VudGVyKCdhYmJiJykKKyAgICAgICAgPj4+IGMgKz0gQ291bnRlcignYmNjJykKKyAgICAgICAgPj4+IGMKKyAgICAgICAgQ291bnRlcih7J2InOiA0LCAnYyc6IDIsICdhJzogMX0pCisKKyAgICAgICAgJycnCisgICAgICAgIGZvciBlbGVtLCBjb3VudCBpbiBvdGhlci5pdGVtcygpOgorICAgICAgICAgICAgc2VsZltlbGVtXSArPSBjb3VudAorICAgICAgICByZXR1cm4gc2VsZi5fa2VlcF9wb3NpdGl2ZSgpCisKKyAgICBkZWYgX19pc3ViX18oc2VsZiwgb3RoZXIpOgorICAgICAgICAnJydJbnBsYWNlIHN1YnRyYWN0IGNvdW50ZXIsIGJ1dCBrZWVwIG9ubHkgcmVzdWx0cyB3aXRoIHBvc2l0aXZlIGNvdW50cy4KKworICAgICAgICA+Pj4gYyA9IENvdW50ZXIoJ2FiYmJjJykKKyAgICAgICAgPj4+IGMgLT0gQ291bnRlcignYmNjZCcpCisgICAgICAgID4+PiBjCisgICAgICAgIENvdW50ZXIoeydiJzogMiwgJ2EnOiAxfSkKKworICAgICAgICAnJycKKyAgICAgICAgZm9yIGVsZW0sIGNvdW50IGluIG90aGVyLml0ZW1zKCk6CisgICAgICAgICAgICBzZWxmW2VsZW1dIC09IGNvdW50CisgICAgICAgIHJldHVybiBzZWxmLl9rZWVwX3Bvc2l0aXZlKCkKKworICAgIGRlZiBfX2lvcl9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgJycnSW5wbGFjZSB1bmlvbiBpcyB0aGUgbWF4aW11bSBvZiB2YWx1ZSBmcm9tIGVpdGhlciBjb3VudGVyLgorCisgICAgICAgID4+PiBjID0gQ291bnRlcignYWJiYicpCisgICAgICAgID4+PiBjIHw9IENvdW50ZXIoJ2JjYycpCisgICAgICAgID4+PiBjCisgICAgICAgIENvdW50ZXIoeydiJzogMywgJ2MnOiAyLCAnYSc6IDF9KQorCisgICAgICAgICcnJworICAgICAgICBmb3IgZWxlbSwgb3RoZXJfY291bnQgaW4gb3RoZXIuaXRlbXMoKToKKyAgICAgICAgICAgIGNvdW50ID0gc2VsZltlbGVtXQorICAgICAgICAgICAgaWYgb3RoZXJfY291bnQgPiBjb3VudDoKKyAgICAgICAgICAgICAgICBzZWxmW2VsZW1dID0gb3RoZXJfY291bnQKKyAgICAgICAgcmV0dXJuIHNlbGYuX2tlZXBfcG9zaXRpdmUoKQorCisgICAgZGVmIF9faWFuZF9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgJycnSW5wbGFjZSBpbnRlcnNlY3Rpb24gaXMgdGhlIG1pbmltdW0gb2YgY29ycmVzcG9uZGluZyBjb3VudHMuCisKKyAgICAgICAgPj4+IGMgPSBDb3VudGVyKCdhYmJiJykKKyAgICAgICAgPj4+IGMgJj0gQ291bnRlcignYmNjJykKKyAgICAgICAgPj4+IGMKKyAgICAgICAgQ291bnRlcih7J2InOiAxfSkKKworICAgICAgICAnJycKKyAgICAgICAgZm9yIGVsZW0sIGNvdW50IGluIHNlbGYuaXRlbXMoKToKKyAgICAgICAgICAgIG90aGVyX2NvdW50ID0gb3RoZXJbZWxlbV0KKyAgICAgICAgICAgIGlmIG90aGVyX2NvdW50IDwgY291bnQ6CisgICAgICAgICAgICAgICAgc2VsZltlbGVtXSA9IG90aGVyX2NvdW50CisgICAgICAgIHJldHVybiBzZWxmLl9rZWVwX3Bvc2l0aXZlKCkKKwogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSMjIyAgQ2hhaW5NYXAgKGhlbHBlciBmb3IgY29uZmlncGFyc2VyKQorIyMjICBDaGFpbk1hcCAoaGVscGVyIGZvciBjb25maWdwYXJzZXIgYW5kIHN0cmluZy5UZW1wbGF0ZSkKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogCi1jbGFzcyBfQ2hhaW5NYXAoTXV0YWJsZU1hcHBpbmcpOgorY2xhc3MgQ2hhaW5NYXAoTXV0YWJsZU1hcHBpbmcpOgogICAgICcnJyBBIENoYWluTWFwIGdyb3VwcyBtdWx0aXBsZSBkaWN0cyAob3Igb3RoZXIgbWFwcGluZ3MpIHRvZ2V0aGVyCiAgICAgdG8gY3JlYXRlIGEgc2luZ2xlLCB1cGRhdGVhYmxlIHZpZXcuCiAKQEAgLTg5MCw2ICs5NjYsOCBAQAogICAgIGRlZiBpbnNlcnQoc2VsZiwgaSwgaXRlbSk6IHNlbGYuZGF0YS5pbnNlcnQoaSwgaXRlbSkKICAgICBkZWYgcG9wKHNlbGYsIGk9LTEpOiByZXR1cm4gc2VsZi5kYXRhLnBvcChpKQogICAgIGRlZiByZW1vdmUoc2VsZiwgaXRlbSk6IHNlbGYuZGF0YS5yZW1vdmUoaXRlbSkKKyAgICBkZWYgY2xlYXIoc2VsZik6IHNlbGYuZGF0YS5jbGVhcigpCisgICAgZGVmIGNvcHkoc2VsZik6IHJldHVybiBzZWxmLl9fY2xhc3NfXyhzZWxmKQogICAgIGRlZiBjb3VudChzZWxmLCBpdGVtKTogcmV0dXJuIHNlbGYuZGF0YS5jb3VudChpdGVtKQogICAgIGRlZiBpbmRleChzZWxmLCBpdGVtLCAqYXJncyk6IHJldHVybiBzZWxmLmRhdGEuaW5kZXgoaXRlbSwgKmFyZ3MpCiAgICAgZGVmIHJldmVyc2Uoc2VsZik6IHNlbGYuZGF0YS5yZXZlcnNlKCkKQEAgLTEwMzQsNyArMTExMiw3IEBACiAgICAgICAgIHJldHVybiBzZWxmLmRhdGEuc3BsaXQoc2VwLCBtYXhzcGxpdCkKICAgICBkZWYgcnNwbGl0KHNlbGYsIHNlcD1Ob25lLCBtYXhzcGxpdD0tMSk6CiAgICAgICAgIHJldHVybiBzZWxmLmRhdGEucnNwbGl0KHNlcCwgbWF4c3BsaXQpCi0gICAgZGVmIHNwbGl0bGluZXMoc2VsZiwga2VlcGVuZHM9MCk6IHJldHVybiBzZWxmLmRhdGEuc3BsaXRsaW5lcyhrZWVwZW5kcykKKyAgICBkZWYgc3BsaXRsaW5lcyhzZWxmLCBrZWVwZW5kcz1GYWxzZSk6IHJldHVybiBzZWxmLmRhdGEuc3BsaXRsaW5lcyhrZWVwZW5kcykKICAgICBkZWYgc3RhcnRzd2l0aChzZWxmLCBwcmVmaXgsIHN0YXJ0PTAsIGVuZD1fc3lzLm1heHNpemUpOgogICAgICAgICByZXR1cm4gc2VsZi5kYXRhLnN0YXJ0c3dpdGgocHJlZml4LCBzdGFydCwgZW5kKQogICAgIGRlZiBzdHJpcChzZWxmLCBjaGFycz1Ob25lKTogcmV0dXJuIHNlbGYuX19jbGFzc19fKHNlbGYuZGF0YS5zdHJpcChjaGFycykpCmRpZmYgLS1naXQgYS9MaWIvX2FiY29sbC5weSBiL0xpYi9jb2xsZWN0aW9ucy9hYmMucHkKc2ltaWxhcml0eSBpbmRleCA5NiUKcmVuYW1lIGZyb20gTGliL19hYmNvbGwucHkKcmVuYW1lIHRvIExpYi9jb2xsZWN0aW9ucy9hYmMucHkKaW5kZXggMjQxN2QxOC4uN2ZiZTg0ZCAxMDA2NDQKLS0tIGEvTGliL19hYmNvbGwucHkKKysrIGIvTGliL2NvbGxlY3Rpb25zL2FiYy5weQpAQCAtMyw5ICszLDcgQEAKIAogIiIiQWJzdHJhY3QgQmFzZSBDbGFzc2VzIChBQkNzKSBmb3IgY29sbGVjdGlvbnMsIGFjY29yZGluZyB0byBQRVAgMzExOS4KIAotRE9OJ1QgVVNFIFRISVMgTU9EVUxFIERJUkVDVExZISAgVGhlIGNsYXNzZXMgaGVyZSBzaG91bGQgYmUgaW1wb3J0ZWQKLXZpYSBjb2xsZWN0aW9uczsgdGhleSBhcmUgZGVmaW5lZCBoZXJlIG9ubHkgdG8gYWxsZXZpYXRlIGNlcnRhaW4KLWJvb3RzdHJhcHBpbmcgaXNzdWVzLiAgVW5pdCB0ZXN0cyBhcmUgaW4gdGVzdF9jb2xsZWN0aW9ucy4KK1VuaXQgdGVzdHMgYXJlIGluIHRlc3RfY29sbGVjdGlvbnMuCiAiIiIKIAogZnJvbSBhYmMgaW1wb3J0IEFCQ01ldGEsIGFic3RyYWN0bWV0aG9kCkBAIC00OCw2ICs0Niw4IEBACiAKIGNsYXNzIEhhc2hhYmxlKG1ldGFjbGFzcz1BQkNNZXRhKToKIAorICAgIF9fc2xvdHNfXyA9ICgpCisKICAgICBAYWJzdHJhY3RtZXRob2QKICAgICBkZWYgX19oYXNoX18oc2VsZik6CiAgICAgICAgIHJldHVybiAwCkBAIC02NSw2ICs2NSw4IEBACiAKIGNsYXNzIEl0ZXJhYmxlKG1ldGFjbGFzcz1BQkNNZXRhKToKIAorICAgIF9fc2xvdHNfXyA9ICgpCisKICAgICBAYWJzdHJhY3RtZXRob2QKICAgICBkZWYgX19pdGVyX18oc2VsZik6CiAgICAgICAgIHdoaWxlIEZhbHNlOgpAQCAtODAsNiArODIsOCBAQAogCiBjbGFzcyBJdGVyYXRvcihJdGVyYWJsZSk6CiAKKyAgICBfX3Nsb3RzX18gPSAoKQorCiAgICAgQGFic3RyYWN0bWV0aG9kCiAgICAgZGVmIF9fbmV4dF9fKHNlbGYpOgogICAgICAgICByYWlzZSBTdG9wSXRlcmF0aW9uCkBAIC0xMTEsNiArMTE1LDggQEAKIAogY2xhc3MgU2l6ZWQobWV0YWNsYXNzPUFCQ01ldGEpOgogCisgICAgX19zbG90c19fID0gKCkKKwogICAgIEBhYnN0cmFjdG1ldGhvZAogICAgIGRlZiBfX2xlbl9fKHNlbGYpOgogICAgICAgICByZXR1cm4gMApAQCAtMTI1LDYgKzEzMSw4IEBACiAKIGNsYXNzIENvbnRhaW5lcihtZXRhY2xhc3M9QUJDTWV0YSk6CiAKKyAgICBfX3Nsb3RzX18gPSAoKQorCiAgICAgQGFic3RyYWN0bWV0aG9kCiAgICAgZGVmIF9fY29udGFpbnNfXyhzZWxmLCB4KToKICAgICAgICAgcmV0dXJuIEZhbHNlCkBAIC0xMzksNiArMTQ3LDggQEAKIAogY2xhc3MgQ2FsbGFibGUobWV0YWNsYXNzPUFCQ01ldGEpOgogCisgICAgX19zbG90c19fID0gKCkKKwogICAgIEBhYnN0cmFjdG1ldGhvZAogICAgIGRlZiBfX2NhbGxfXyhzZWxmLCAqYXJncywgKiprd2RzKToKICAgICAgICAgcmV0dXJuIEZhbHNlCkBAIC0xNjYsNiArMTc2LDggQEAKICAgICB0aGVuIHRoZSBvdGhlciBvcGVyYXRpb25zIHdpbGwgYXV0b21hdGljYWxseSBmb2xsb3cgc3VpdC4KICAgICAiIiIKIAorICAgIF9fc2xvdHNfXyA9ICgpCisKICAgICBkZWYgX19sZV9fKHNlbGYsIG90aGVyKToKICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uob3RoZXIsIFNldCk6CiAgICAgICAgICAgICByZXR1cm4gTm90SW1wbGVtZW50ZWQKQEAgLTI3Nyw2ICsyODksOCBAQAogCiBjbGFzcyBNdXRhYmxlU2V0KFNldCk6CiAKKyAgICBfX3Nsb3RzX18gPSAoKQorCiAgICAgQGFic3RyYWN0bWV0aG9kCiAgICAgZGVmIGFkZChzZWxmLCB2YWx1ZSk6CiAgICAgICAgICIiIkFkZCBhbiBlbGVtZW50LiIiIgpAQCAtMzUwLDYgKzM2NCw4IEBACiAKIGNsYXNzIE1hcHBpbmcoU2l6ZWQsIEl0ZXJhYmxlLCBDb250YWluZXIpOgogCisgICAgX19zbG90c19fID0gKCkKKwogICAgIEBhYnN0cmFjdG1ldGhvZAogICAgIGRlZiBfX2dldGl0ZW1fXyhzZWxmLCBrZXkpOgogICAgICAgICByYWlzZSBLZXlFcnJvcgpAQCAtNDUzLDYgKzQ2OSw4IEBACiAKIGNsYXNzIE11dGFibGVNYXBwaW5nKE1hcHBpbmcpOgogCisgICAgX19zbG90c19fID0gKCkKKwogICAgIEBhYnN0cmFjdG1ldGhvZAogICAgIGRlZiBfX3NldGl0ZW1fXyhzZWxmLCBrZXksIHZhbHVlKToKICAgICAgICAgcmFpc2UgS2V5RXJyb3IKQEAgLTUzMiw2ICs1NTAsOCBAQAogICAgIF9fZ2V0aXRlbV9fLCBhbmQgX19sZW5fXy4KICAgICAiIiIKIAorICAgIF9fc2xvdHNfXyA9ICgpCisKICAgICBAYWJzdHJhY3RtZXRob2QKICAgICBkZWYgX19nZXRpdGVtX18oc2VsZiwgaW5kZXgpOgogICAgICAgICByYWlzZSBJbmRleEVycm9yCkBAIC01NzcsMTIgKzU5NywxNiBAQAogICAgIFhYWCBTaG91bGQgYWRkIGFsbCB0aGVpciBtZXRob2RzLgogICAgICIiIgogCisgICAgX19zbG90c19fID0gKCkKKwogQnl0ZVN0cmluZy5yZWdpc3RlcihieXRlcykKIEJ5dGVTdHJpbmcucmVnaXN0ZXIoYnl0ZWFycmF5KQogCiAKIGNsYXNzIE11dGFibGVTZXF1ZW5jZShTZXF1ZW5jZSk6CiAKKyAgICBfX3Nsb3RzX18gPSAoKQorCiAgICAgQGFic3RyYWN0bWV0aG9kCiAgICAgZGVmIF9fc2V0aXRlbV9fKHNlbGYsIGluZGV4LCB2YWx1ZSk6CiAgICAgICAgIHJhaXNlIEluZGV4RXJyb3IKQEAgLTU5OCw2ICs2MjIsMTMgQEAKICAgICBkZWYgYXBwZW5kKHNlbGYsIHZhbHVlKToKICAgICAgICAgc2VsZi5pbnNlcnQobGVuKHNlbGYpLCB2YWx1ZSkKIAorICAgIGRlZiBjbGVhcihzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICBzZWxmLnBvcCgpCisgICAgICAgIGV4Y2VwdCBJbmRleEVycm9yOgorICAgICAgICAgICAgcGFzcworCiAgICAgZGVmIHJldmVyc2Uoc2VsZik6CiAgICAgICAgIG4gPSBsZW4oc2VsZikKICAgICAgICAgZm9yIGkgaW4gcmFuZ2Uobi8vMik6CmRpZmYgLS1naXQgYS9MaWIvY29uY3VycmVudC9mdXR1cmVzL19iYXNlLnB5IGIvTGliL2NvbmN1cnJlbnQvZnV0dXJlcy9fYmFzZS5weQppbmRleCA3OWI5MWQ0Li4zYjA5N2I1IDEwMDY0NAotLS0gYS9MaWIvY29uY3VycmVudC9mdXR1cmVzL19iYXNlLnB5CisrKyBiL0xpYi9jb25jdXJyZW50L2Z1dHVyZXMvX2Jhc2UucHkKQEAgLTQsNyArNCw2IEBACiBfX2F1dGhvcl9fID0gJ0JyaWFuIFF1aW5sYW4gKGJyaWFuQHN3ZWV0YXBwLmNvbSknCiAKIGltcG9ydCBjb2xsZWN0aW9ucwotaW1wb3J0IGZ1bmN0b29scwogaW1wb3J0IGxvZ2dpbmcKIGltcG9ydCB0aHJlYWRpbmcKIGltcG9ydCB0aW1lCkBAIC01MzYsMTUgKzUzNSwxOSBAQAogCiAgICAgICAgIGZzID0gW3NlbGYuc3VibWl0KGZuLCAqYXJncykgZm9yIGFyZ3MgaW4gemlwKCppdGVyYWJsZXMpXQogCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIGZvciBmdXR1cmUgaW4gZnM6Ci0gICAgICAgICAgICAgICAgaWYgdGltZW91dCBpcyBOb25lOgotICAgICAgICAgICAgICAgICAgICB5aWVsZCBmdXR1cmUucmVzdWx0KCkKLSAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICB5aWVsZCBmdXR1cmUucmVzdWx0KGVuZF90aW1lIC0gdGltZS50aW1lKCkpCi0gICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICBmb3IgZnV0dXJlIGluIGZzOgotICAgICAgICAgICAgICAgIGZ1dHVyZS5jYW5jZWwoKQorICAgICAgICAjIFlpZWxkIG11c3QgYmUgaGlkZGVuIGluIGNsb3N1cmUgc28gdGhhdCB0aGUgZnV0dXJlcyBhcmUgc3VibWl0dGVkCisgICAgICAgICMgYmVmb3JlIHRoZSBmaXJzdCBpdGVyYXRvciB2YWx1ZSBpcyByZXF1aXJlZC4KKyAgICAgICAgZGVmIHJlc3VsdF9pdGVyYXRvcigpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGZvciBmdXR1cmUgaW4gZnM6CisgICAgICAgICAgICAgICAgICAgIGlmIHRpbWVvdXQgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgICAgIHlpZWxkIGZ1dHVyZS5yZXN1bHQoKQorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQgZnV0dXJlLnJlc3VsdChlbmRfdGltZSAtIHRpbWUudGltZSgpKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICBmb3IgZnV0dXJlIGluIGZzOgorICAgICAgICAgICAgICAgICAgICBmdXR1cmUuY2FuY2VsKCkKKyAgICAgICAgcmV0dXJuIHJlc3VsdF9pdGVyYXRvcigpCiAKICAgICBkZWYgc2h1dGRvd24oc2VsZiwgd2FpdD1UcnVlKToKICAgICAgICAgIiIiQ2xlYW4tdXAgdGhlIHJlc291cmNlcyBhc3NvY2lhdGVkIHdpdGggdGhlIEV4ZWN1dG9yLgpkaWZmIC0tZ2l0IGEvTGliL2NvbmN1cnJlbnQvZnV0dXJlcy9wcm9jZXNzLnB5IGIvTGliL2NvbmN1cnJlbnQvZnV0dXJlcy9wcm9jZXNzLnB5CmluZGV4IGQzYmJlMmMuLjdmMzFlYzIgMTAwNjQ0Ci0tLSBhL0xpYi9jb25jdXJyZW50L2Z1dHVyZXMvcHJvY2Vzcy5weQorKysgYi9MaWIvY29uY3VycmVudC9mdXR1cmVzL3Byb2Nlc3MucHkKQEAgLTQ2LDkgKzQ2LDExIEBACiBfX2F1dGhvcl9fID0gJ0JyaWFuIFF1aW5sYW4gKGJyaWFuQHN3ZWV0YXBwLmNvbSknCiAKIGltcG9ydCBhdGV4aXQKK2ltcG9ydCBvcwogZnJvbSBjb25jdXJyZW50LmZ1dHVyZXMgaW1wb3J0IF9iYXNlCiBpbXBvcnQgcXVldWUKIGltcG9ydCBtdWx0aXByb2Nlc3NpbmcKK2Zyb20gbXVsdGlwcm9jZXNzaW5nLnF1ZXVlcyBpbXBvcnQgU2ltcGxlUXVldWUsIFNlbnRpbmVsUmVhZHksIEZ1bGwKIGltcG9ydCB0aHJlYWRpbmcKIGltcG9ydCB3ZWFrcmVmCiAKQEAgLTEyMSw3ICsxMjMsNyBAQAogICAgICAgICBjYWxsX2l0ZW0gPSBjYWxsX3F1ZXVlLmdldChibG9jaz1UcnVlKQogICAgICAgICBpZiBjYWxsX2l0ZW0gaXMgTm9uZToKICAgICAgICAgICAgICMgV2FrZSB1cCBxdWV1ZSBtYW5hZ2VtZW50IHRocmVhZAotICAgICAgICAgICAgcmVzdWx0X3F1ZXVlLnB1dChOb25lKQorICAgICAgICAgICAgcmVzdWx0X3F1ZXVlLnB1dChvcy5nZXRwaWQoKSkKICAgICAgICAgICAgIHJldHVybgogICAgICAgICB0cnk6CiAgICAgICAgICAgICByID0gY2FsbF9pdGVtLmZuKCpjYWxsX2l0ZW0uYXJncywgKipjYWxsX2l0ZW0ua3dhcmdzKQpAQCAtMTkzLDQ2ICsxOTUsODkgQEAKICAgICAgICAgcmVzdWx0X3F1ZXVlOiBBIG11bHRpcHJvY2Vzc2luZy5RdWV1ZSBvZiBfUmVzdWx0SXRlbXMgZ2VuZXJhdGVkIGJ5IHRoZQogICAgICAgICAgICAgcHJvY2VzcyB3b3JrZXJzLgogICAgICIiIgotICAgIG5iX3NodXRkb3duX3Byb2Nlc3NlcyA9IDAKLSAgICBkZWYgc2h1dGRvd25fb25lX3Byb2Nlc3MoKToKLSAgICAgICAgIiIiVGVsbCBhIHdvcmtlciB0byB0ZXJtaW5hdGUsIHdoaWNoIHdpbGwgaW4gdHVybiB3YWtlIHVzIGFnYWluIiIiCi0gICAgICAgIG5vbmxvY2FsIG5iX3NodXRkb3duX3Byb2Nlc3NlcwotICAgICAgICBjYWxsX3F1ZXVlLnB1dChOb25lKQotICAgICAgICBuYl9zaHV0ZG93bl9wcm9jZXNzZXMgKz0gMQorICAgIGV4ZWN1dG9yID0gTm9uZQorCisgICAgZGVmIHNodXR0aW5nX2Rvd24oKToKKyAgICAgICAgcmV0dXJuIF9zaHV0ZG93biBvciBleGVjdXRvciBpcyBOb25lIG9yIGV4ZWN1dG9yLl9zaHV0ZG93bl90aHJlYWQKKworICAgIGRlZiBzaHV0ZG93bl93b3JrZXIoKToKKyAgICAgICAgIyBUaGlzIGlzIGFuIHVwcGVyIGJvdW5kCisgICAgICAgIG5iX2NoaWxkcmVuX2FsaXZlID0gc3VtKHAuaXNfYWxpdmUoKSBmb3IgcCBpbiBwcm9jZXNzZXMudmFsdWVzKCkpCisgICAgICAgIGZvciBpIGluIHJhbmdlKDAsIG5iX2NoaWxkcmVuX2FsaXZlKToKKyAgICAgICAgICAgIGNhbGxfcXVldWUucHV0X25vd2FpdChOb25lKQorICAgICAgICAjIFJlbGVhc2UgdGhlIHF1ZXVlJ3MgcmVzb3VyY2VzIGFzIHNvb24gYXMgcG9zc2libGUuCisgICAgICAgIGNhbGxfcXVldWUuY2xvc2UoKQorICAgICAgICAjIElmIC5qb2luKCkgaXMgbm90IGNhbGxlZCBvbiB0aGUgY3JlYXRlZCBwcm9jZXNzZXMgdGhlbgorICAgICAgICAjIHNvbWUgbXVsdGlwcm9jZXNzaW5nLlF1ZXVlIG1ldGhvZHMgbWF5IGRlYWRsb2NrIG9uIE1hYyBPUyBYLgorICAgICAgICBmb3IgcCBpbiBwcm9jZXNzZXMudmFsdWVzKCk6CisgICAgICAgICAgICBwLmpvaW4oKQorCiAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgX2FkZF9jYWxsX2l0ZW1fdG9fcXVldWUocGVuZGluZ193b3JrX2l0ZW1zLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3b3JrX2lkc19xdWV1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbF9xdWV1ZSkKIAotICAgICAgICByZXN1bHRfaXRlbSA9IHJlc3VsdF9xdWV1ZS5nZXQoYmxvY2s9VHJ1ZSkKLSAgICAgICAgaWYgcmVzdWx0X2l0ZW0gaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICB3b3JrX2l0ZW0gPSBwZW5kaW5nX3dvcmtfaXRlbXNbcmVzdWx0X2l0ZW0ud29ya19pZF0KLSAgICAgICAgICAgIGRlbCBwZW5kaW5nX3dvcmtfaXRlbXNbcmVzdWx0X2l0ZW0ud29ya19pZF0KLQotICAgICAgICAgICAgaWYgcmVzdWx0X2l0ZW0uZXhjZXB0aW9uOgotICAgICAgICAgICAgICAgIHdvcmtfaXRlbS5mdXR1cmUuc2V0X2V4Y2VwdGlvbihyZXN1bHRfaXRlbS5leGNlcHRpb24pCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHdvcmtfaXRlbS5mdXR1cmUuc2V0X3Jlc3VsdChyZXN1bHRfaXRlbS5yZXN1bHQpCisgICAgICAgIHNlbnRpbmVscyA9IFtwLnNlbnRpbmVsIGZvciBwIGluIHByb2Nlc3Nlcy52YWx1ZXMoKV0KKyAgICAgICAgYXNzZXJ0IHNlbnRpbmVscworICAgICAgICB0cnk6CisgICAgICAgICAgICByZXN1bHRfaXRlbSA9IHJlc3VsdF9xdWV1ZS5nZXQoc2VudGluZWxzPXNlbnRpbmVscykKKyAgICAgICAgZXhjZXB0IFNlbnRpbmVsUmVhZHk6CisgICAgICAgICAgICAjIE1hcmsgdGhlIHByb2Nlc3MgcG9vbCBicm9rZW4gc28gdGhhdCBzdWJtaXRzIGZhaWwgcmlnaHQgbm93LgorICAgICAgICAgICAgZXhlY3V0b3IgPSBleGVjdXRvcl9yZWZlcmVuY2UoKQorICAgICAgICAgICAgaWYgZXhlY3V0b3IgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgZXhlY3V0b3IuX2Jyb2tlbiA9IFRydWUKKyAgICAgICAgICAgICAgICBleGVjdXRvci5fc2h1dGRvd25fdGhyZWFkID0gVHJ1ZQorICAgICAgICAgICAgICAgIGV4ZWN1dG9yID0gTm9uZQorICAgICAgICAgICAgIyBBbGwgZnV0dXJlcyBpbiBmbGlnaHQgbXVzdCBiZSBtYXJrZWQgZmFpbGVkCisgICAgICAgICAgICBmb3Igd29ya19pZCwgd29ya19pdGVtIGluIHBlbmRpbmdfd29ya19pdGVtcy5pdGVtcygpOgorICAgICAgICAgICAgICAgIHdvcmtfaXRlbS5mdXR1cmUuc2V0X2V4Y2VwdGlvbigKKyAgICAgICAgICAgICAgICAgICAgQnJva2VuUHJvY2Vzc1Bvb2woCisgICAgICAgICAgICAgICAgICAgICAgICAiQSBwcm9jZXNzIGluIHRoZSBwcm9jZXNzIHBvb2wgd2FzICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJ0ZXJtaW5hdGVkIGFicnVwdGx5IHdoaWxlIHRoZSBmdXR1cmUgd2FzICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJydW5uaW5nIG9yIHBlbmRpbmcuIgorICAgICAgICAgICAgICAgICAgICApKQorICAgICAgICAgICAgcGVuZGluZ193b3JrX2l0ZW1zLmNsZWFyKCkKKyAgICAgICAgICAgICMgVGVybWluYXRlIHJlbWFpbmluZyB3b3JrZXJzIGZvcmNpYmx5OiB0aGUgcXVldWVzIG9yIHRoZWlyCisgICAgICAgICAgICAjIGxvY2tzIG1heSBiZSBpbiBhIGRpcnR5IHN0YXRlIGFuZCBibG9jayBmb3JldmVyLgorICAgICAgICAgICAgZm9yIHAgaW4gcHJvY2Vzc2VzLnZhbHVlcygpOgorICAgICAgICAgICAgICAgIHAudGVybWluYXRlKCkKKyAgICAgICAgICAgIHNodXRkb3duX3dvcmtlcigpCisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgaWYgaXNpbnN0YW5jZShyZXN1bHRfaXRlbSwgaW50KToKKyAgICAgICAgICAgICMgQ2xlYW4gc2h1dGRvd24gb2YgYSB3b3JrZXIgdXNpbmcgaXRzIFBJRAorICAgICAgICAgICAgIyAoYXZvaWRzIG1hcmtpbmcgdGhlIGV4ZWN1dG9yIGJyb2tlbikKKyAgICAgICAgICAgIGFzc2VydCBzaHV0dGluZ19kb3duKCkKKyAgICAgICAgICAgIHAgPSBwcm9jZXNzZXMucG9wKHJlc3VsdF9pdGVtKQorICAgICAgICAgICAgcC5qb2luKCkKKyAgICAgICAgICAgIGlmIG5vdCBwcm9jZXNzZXM6CisgICAgICAgICAgICAgICAgc2h1dGRvd25fd29ya2VyKCkKKyAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgZWxpZiByZXN1bHRfaXRlbSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHdvcmtfaXRlbSA9IHBlbmRpbmdfd29ya19pdGVtcy5wb3AocmVzdWx0X2l0ZW0ud29ya19pZCwgTm9uZSkKKyAgICAgICAgICAgICMgd29ya19pdGVtIGNhbiBiZSBOb25lIGlmIGFub3RoZXIgcHJvY2VzcyB0ZXJtaW5hdGVkIChzZWUgYWJvdmUpCisgICAgICAgICAgICBpZiB3b3JrX2l0ZW0gaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgaWYgcmVzdWx0X2l0ZW0uZXhjZXB0aW9uOgorICAgICAgICAgICAgICAgICAgICB3b3JrX2l0ZW0uZnV0dXJlLnNldF9leGNlcHRpb24ocmVzdWx0X2l0ZW0uZXhjZXB0aW9uKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHdvcmtfaXRlbS5mdXR1cmUuc2V0X3Jlc3VsdChyZXN1bHRfaXRlbS5yZXN1bHQpCiAgICAgICAgICMgQ2hlY2sgd2hldGhlciB3ZSBzaG91bGQgc3RhcnQgc2h1dHRpbmcgZG93bi4KICAgICAgICAgZXhlY3V0b3IgPSBleGVjdXRvcl9yZWZlcmVuY2UoKQogICAgICAgICAjIE5vIG1vcmUgd29yayBpdGVtcyBjYW4gYmUgYWRkZWQgaWY6CiAgICAgICAgICMgICAtIFRoZSBpbnRlcnByZXRlciBpcyBzaHV0dGluZyBkb3duIE9SCiAgICAgICAgICMgICAtIFRoZSBleGVjdXRvciB0aGF0IG93bnMgdGhpcyB3b3JrZXIgaGFzIGJlZW4gY29sbGVjdGVkIE9SCiAgICAgICAgICMgICAtIFRoZSBleGVjdXRvciB0aGF0IG93bnMgdGhpcyB3b3JrZXIgaGFzIGJlZW4gc2h1dGRvd24uCi0gICAgICAgIGlmIF9zaHV0ZG93biBvciBleGVjdXRvciBpcyBOb25lIG9yIGV4ZWN1dG9yLl9zaHV0ZG93bl90aHJlYWQ6Ci0gICAgICAgICAgICAjIFNpbmNlIG5vIG5ldyB3b3JrIGl0ZW1zIGNhbiBiZSBhZGRlZCwgaXQgaXMgc2FmZSB0byBzaHV0ZG93bgotICAgICAgICAgICAgIyB0aGlzIHRocmVhZCBpZiB0aGVyZSBhcmUgbm8gcGVuZGluZyB3b3JrIGl0ZW1zLgotICAgICAgICAgICAgaWYgbm90IHBlbmRpbmdfd29ya19pdGVtczoKLSAgICAgICAgICAgICAgICB3aGlsZSBuYl9zaHV0ZG93bl9wcm9jZXNzZXMgPCBsZW4ocHJvY2Vzc2VzKToKLSAgICAgICAgICAgICAgICAgICAgc2h1dGRvd25fb25lX3Byb2Nlc3MoKQotICAgICAgICAgICAgICAgICMgSWYgLmpvaW4oKSBpcyBub3QgY2FsbGVkIG9uIHRoZSBjcmVhdGVkIHByb2Nlc3NlcyB0aGVuCi0gICAgICAgICAgICAgICAgIyBzb21lIG11bHRpcHJvY2Vzc2luZy5RdWV1ZSBtZXRob2RzIG1heSBkZWFkbG9jayBvbiBNYWMgT1MKLSAgICAgICAgICAgICAgICAjIFguCi0gICAgICAgICAgICAgICAgZm9yIHAgaW4gcHJvY2Vzc2VzOgotICAgICAgICAgICAgICAgICAgICBwLmpvaW4oKQotICAgICAgICAgICAgICAgIGNhbGxfcXVldWUuY2xvc2UoKQotICAgICAgICAgICAgICAgIHJldHVybgotICAgICAgICBkZWwgZXhlY3V0b3IKKyAgICAgICAgaWYgc2h1dHRpbmdfZG93bigpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICMgU2luY2Ugbm8gbmV3IHdvcmsgaXRlbXMgY2FuIGJlIGFkZGVkLCBpdCBpcyBzYWZlIHRvIHNodXRkb3duCisgICAgICAgICAgICAgICAgIyB0aGlzIHRocmVhZCBpZiB0aGVyZSBhcmUgbm8gcGVuZGluZyB3b3JrIGl0ZW1zLgorICAgICAgICAgICAgICAgIGlmIG5vdCBwZW5kaW5nX3dvcmtfaXRlbXM6CisgICAgICAgICAgICAgICAgICAgIHNodXRkb3duX3dvcmtlcigpCisgICAgICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgZXhjZXB0IEZ1bGw6CisgICAgICAgICAgICAgICAgIyBUaGlzIGlzIG5vdCBhIHByb2JsZW06IHdlIHdpbGwgZXZlbnR1YWxseSBiZSB3b2tlbiB1cCAoaW4KKyAgICAgICAgICAgICAgICAjIHJlc3VsdF9xdWV1ZS5nZXQoKSkgYW5kIGJlIGFibGUgdG8gc2VuZCBhIHNlbnRpbmVsIGFnYWluLgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgZXhlY3V0b3IgPSBOb25lCiAKIF9zeXN0ZW1fbGltaXRzX2NoZWNrZWQgPSBGYWxzZQogX3N5c3RlbV9saW1pdGVkID0gTm9uZQpAQCAtMjQzLDcgKzI4OCw2IEBACiAgICAgICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yKF9zeXN0ZW1fbGltaXRlZCkKICAgICBfc3lzdGVtX2xpbWl0c19jaGVja2VkID0gVHJ1ZQogICAgIHRyeToKLSAgICAgICAgaW1wb3J0IG9zCiAgICAgICAgIG5zZW1zX21heCA9IG9zLnN5c2NvbmYoIlNDX1NFTV9OU0VNU19NQVgiKQogICAgIGV4Y2VwdCAoQXR0cmlidXRlRXJyb3IsIFZhbHVlRXJyb3IpOgogICAgICAgICAjIHN5c2NvbmYgbm90IGF2YWlsYWJsZSBvciBzZXR0aW5nIG5vdCBhdmFpbGFibGUKQEAgLTI1OSw2ICszMDMsMTQgQEAKICAgICBfc3lzdGVtX2xpbWl0ZWQgPSAic3lzdGVtIHByb3ZpZGVzIHRvbyBmZXcgc2VtYXBob3JlcyAoJWQgYXZhaWxhYmxlLCAyNTYgbmVjZXNzYXJ5KSIgJSBuc2Vtc19tYXgKICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yKF9zeXN0ZW1fbGltaXRlZCkKIAorCitjbGFzcyBCcm9rZW5Qcm9jZXNzUG9vbChSdW50aW1lRXJyb3IpOgorICAgICIiIgorICAgIFJhaXNlZCB3aGVuIGEgcHJvY2VzcyBpbiBhIFByb2Nlc3NQb29sRXhlY3V0b3IgdGVybWluYXRlZCBhYnJ1cHRseQorICAgIHdoaWxlIGEgZnV0dXJlIHdhcyBpbiB0aGUgcnVubmluZyBzdGF0ZS4KKyAgICAiIiIKKworCiBjbGFzcyBQcm9jZXNzUG9vbEV4ZWN1dG9yKF9iYXNlLkV4ZWN1dG9yKToKICAgICBkZWYgX19pbml0X18oc2VsZiwgbWF4X3dvcmtlcnM9Tm9uZSk6CiAgICAgICAgICIiIkluaXRpYWxpemVzIGEgbmV3IFByb2Nlc3NQb29sRXhlY3V0b3IgaW5zdGFuY2UuCkBAIC0yODAsMTQgKzMzMiwyMCBAQAogICAgICAgICAjIGJlY2F1c2UgZnV0dXJlcyBpbiB0aGUgY2FsbCBxdWV1ZSBjYW5ub3QgYmUgY2FuY2VsbGVkLgogICAgICAgICBzZWxmLl9jYWxsX3F1ZXVlID0gbXVsdGlwcm9jZXNzaW5nLlF1ZXVlKHNlbGYuX21heF93b3JrZXJzICsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFWFRSQV9RVUVVRURfQ0FMTFMpCi0gICAgICAgIHNlbGYuX3Jlc3VsdF9xdWV1ZSA9IG11bHRpcHJvY2Vzc2luZy5RdWV1ZSgpCisgICAgICAgICMgS2lsbGVkIHdvcmtlciBwcm9jZXNzZXMgY2FuIHByb2R1Y2Ugc3B1cmlvdXMgImJyb2tlbiBwaXBlIgorICAgICAgICAjIHRyYWNlYmFja3MgaW4gdGhlIHF1ZXVlJ3Mgb3duIHdvcmtlciB0aHJlYWQuIEJ1dCB3ZSBkZXRlY3Qga2lsbGVkCisgICAgICAgICMgcHJvY2Vzc2VzIGFueXdheSwgc28gc2lsZW5jZSB0aGUgdHJhY2ViYWNrcy4KKyAgICAgICAgc2VsZi5fY2FsbF9xdWV1ZS5faWdub3JlX2VwaXBlID0gVHJ1ZQorICAgICAgICBzZWxmLl9yZXN1bHRfcXVldWUgPSBTaW1wbGVRdWV1ZSgpCiAgICAgICAgIHNlbGYuX3dvcmtfaWRzID0gcXVldWUuUXVldWUoKQogICAgICAgICBzZWxmLl9xdWV1ZV9tYW5hZ2VtZW50X3RocmVhZCA9IE5vbmUKLSAgICAgICAgc2VsZi5fcHJvY2Vzc2VzID0gc2V0KCkKKyAgICAgICAgIyBNYXAgb2YgcGlkcyB0byBwcm9jZXNzZXMKKyAgICAgICAgc2VsZi5fcHJvY2Vzc2VzID0ge30KIAogICAgICAgICAjIFNodXRkb3duIGlzIGEgdHdvLXN0ZXAgcHJvY2Vzcy4KICAgICAgICAgc2VsZi5fc2h1dGRvd25fdGhyZWFkID0gRmFsc2UKICAgICAgICAgc2VsZi5fc2h1dGRvd25fbG9jayA9IHRocmVhZGluZy5Mb2NrKCkKKyAgICAgICAgc2VsZi5fYnJva2VuID0gRmFsc2UKICAgICAgICAgc2VsZi5fcXVldWVfY291bnQgPSAwCiAgICAgICAgIHNlbGYuX3BlbmRpbmdfd29ya19pdGVtcyA9IHt9CiAKQEAgLTI5Nyw2ICszNTUsOCBAQAogICAgICAgICBkZWYgd2Vha3JlZl9jYihfLCBxPXNlbGYuX3Jlc3VsdF9xdWV1ZSk6CiAgICAgICAgICAgICBxLnB1dChOb25lKQogICAgICAgICBpZiBzZWxmLl9xdWV1ZV9tYW5hZ2VtZW50X3RocmVhZCBpcyBOb25lOgorICAgICAgICAgICAgIyBTdGFydCB0aGUgcHJvY2Vzc2VzIHNvIHRoYXQgdGhlaXIgc2VudGluZWxzIGFyZSBrbm93bi4KKyAgICAgICAgICAgIHNlbGYuX2FkanVzdF9wcm9jZXNzX2NvdW50KCkKICAgICAgICAgICAgIHNlbGYuX3F1ZXVlX21hbmFnZW1lbnRfdGhyZWFkID0gdGhyZWFkaW5nLlRocmVhZCgKICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PV9xdWV1ZV9tYW5hZ2VtZW50X3dvcmtlciwKICAgICAgICAgICAgICAgICAgICAgYXJncz0od2Vha3JlZi5yZWYoc2VsZiwgd2Vha3JlZl9jYiksCkBAIC0zMTYsMTAgKzM3NiwxMyBAQAogICAgICAgICAgICAgICAgICAgICBhcmdzPShzZWxmLl9jYWxsX3F1ZXVlLAogICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9yZXN1bHRfcXVldWUpKQogICAgICAgICAgICAgcC5zdGFydCgpCi0gICAgICAgICAgICBzZWxmLl9wcm9jZXNzZXMuYWRkKHApCisgICAgICAgICAgICBzZWxmLl9wcm9jZXNzZXNbcC5waWRdID0gcAogCiAgICAgZGVmIHN1Ym1pdChzZWxmLCBmbiwgKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgd2l0aCBzZWxmLl9zaHV0ZG93bl9sb2NrOgorICAgICAgICAgICAgaWYgc2VsZi5fYnJva2VuOgorICAgICAgICAgICAgICAgIHJhaXNlIEJyb2tlblByb2Nlc3NQb29sKCdBIGNoaWxkIHByb2Nlc3MgdGVybWluYXRlZCAnCisgICAgICAgICAgICAgICAgICAgICdhYnJ1cHRseSwgdGhlIHByb2Nlc3MgcG9vbCBpcyBub3QgdXNhYmxlIGFueW1vcmUnKQogICAgICAgICAgICAgaWYgc2VsZi5fc2h1dGRvd25fdGhyZWFkOgogICAgICAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcignY2Fubm90IHNjaGVkdWxlIG5ldyBmdXR1cmVzIGFmdGVyIHNodXRkb3duJykKIApAQCAtMzMzLDcgKzM5Niw2IEBACiAgICAgICAgICAgICBzZWxmLl9yZXN1bHRfcXVldWUucHV0KE5vbmUpCiAKICAgICAgICAgICAgIHNlbGYuX3N0YXJ0X3F1ZXVlX21hbmFnZW1lbnRfdGhyZWFkKCkKLSAgICAgICAgICAgIHNlbGYuX2FkanVzdF9wcm9jZXNzX2NvdW50KCkKICAgICAgICAgICAgIHJldHVybiBmCiAgICAgc3VibWl0Ll9fZG9jX18gPSBfYmFzZS5FeGVjdXRvci5zdWJtaXQuX19kb2NfXwogCmRpZmYgLS1naXQgYS9MaWIvY29uY3VycmVudC9mdXR1cmVzL3RocmVhZC5weSBiL0xpYi9jb25jdXJyZW50L2Z1dHVyZXMvdGhyZWFkLnB5CmluZGV4IGZiYWMwODguLjk1YmI2ODIgMTAwNjQ0Ci0tLSBhL0xpYi9jb25jdXJyZW50L2Z1dHVyZXMvdGhyZWFkLnB5CisrKyBiL0xpYi9jb25jdXJyZW50L2Z1dHVyZXMvdGhyZWFkLnB5CkBAIC03NCw3ICs3NCw3IEBACiAgICAgICAgICAgICAgICAgd29ya19xdWV1ZS5wdXQoTm9uZSkKICAgICAgICAgICAgICAgICByZXR1cm4KICAgICAgICAgICAgIGRlbCBleGVjdXRvcgotICAgIGV4Y2VwdCBCYXNlRXhjZXB0aW9uIGFzIGU6CisgICAgZXhjZXB0IEJhc2VFeGNlcHRpb246CiAgICAgICAgIF9iYXNlLkxPR0dFUi5jcml0aWNhbCgnRXhjZXB0aW9uIGluIHdvcmtlcicsIGV4Y19pbmZvPVRydWUpCiAKIGNsYXNzIFRocmVhZFBvb2xFeGVjdXRvcihfYmFzZS5FeGVjdXRvcik6CmRpZmYgLS1naXQgYS9MaWIvY29uZmlncGFyc2VyLnB5IGIvTGliL2NvbmZpZ3BhcnNlci5weQppbmRleCBkMTQ4Yjg4Li43YmM0Mzk4IDEwMDY0NAotLS0gYS9MaWIvY29uZmlncGFyc2VyLnB5CisrKyBiL0xpYi9jb25maWdwYXJzZXIucHkKQEAgLTExOSw3ICsxMTksOCBAQAogICAgICAgICBiZXR3ZWVuIGtleXMgYW5kIHZhbHVlcyBhcmUgc3Vycm91bmRlZCBieSBzcGFjZXMuCiAiIiIKIAotZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgTXV0YWJsZU1hcHBpbmcsIE9yZGVyZWREaWN0IGFzIF9kZWZhdWx0X2RpY3QsIF9DaGFpbk1hcAorZnJvbSBjb2xsZWN0aW9ucy5hYmMgaW1wb3J0IE11dGFibGVNYXBwaW5nCitmcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBPcmRlcmVkRGljdCBhcyBfZGVmYXVsdF9kaWN0LCBDaGFpbk1hcCBhcyBfQ2hhaW5NYXAKIGltcG9ydCBmdW5jdG9vbHMKIGltcG9ydCBpbwogaW1wb3J0IGl0ZXJ0b29scwpkaWZmIC0tZ2l0IGEvTGliL2NvbnRleHRsaWIucHkgYi9MaWIvY29udGV4dGxpYi5weQppbmRleCA1ZWJiYmM2Li4yZjhmMDBkIDEwMDY0NAotLS0gYS9MaWIvY29udGV4dGxpYi5weQorKysgYi9MaWIvY29udGV4dGxpYi5weQpAQCAtMiw3ICsyLDYgQEAKIAogaW1wb3J0IHN5cwogZnJvbSBmdW5jdG9vbHMgaW1wb3J0IHdyYXBzCi1mcm9tIHdhcm5pbmdzIGltcG9ydCB3YXJuCiAKIF9fYWxsX18gPSBbImNvbnRleHRtYW5hZ2VyIiwgImNsb3NpbmciLCAiQ29udGV4dERlY29yYXRvciJdCiAKZGlmZiAtLWdpdCBhL0xpYi9jb3B5LnB5IGIvTGliL2NvcHkucHkKaW5kZXggMDg5ZDEwMS4uZDk2MjAxZSAxMDA2NDQKLS0tIGEvTGliL2NvcHkucHkKKysrIGIvTGliL2NvcHkucHkKQEAgLTE3Myw4ICsxNzMsMTAgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVuKGRlZXApY29weWFibGUgb2JqZWN0IG9mIHR5cGUgJXMiICUgY2xzKQogICAgICAgICAgICAgICAgIHkgPSBfcmVjb25zdHJ1Y3QoeCwgcnYsIDEsIG1lbW8pCiAKLSAgICBtZW1vW2RdID0geQotICAgIF9rZWVwX2FsaXZlKHgsIG1lbW8pICMgTWFrZSBzdXJlIHggbGl2ZXMgYXQgbGVhc3QgYXMgbG9uZyBhcyBkCisgICAgIyBJZiBpcyBpdHMgb3duIGNvcHksIGRvbid0IG1lbW9pemUuCisgICAgaWYgeSBpcyBub3QgeDoKKyAgICAgICAgbWVtb1tkXSA9IHkKKyAgICAgICAgX2tlZXBfYWxpdmUoeCwgbWVtbykgIyBNYWtlIHN1cmUgeCBsaXZlcyBhdCBsZWFzdCBhcyBsb25nIGFzIGQKICAgICByZXR1cm4geQogCiBfZGVlcGNvcHlfZGlzcGF0Y2ggPSBkID0ge30KQEAgLTIxNCw5ICsyMTYsMTAgQEAKICAgICB5ID0gW10KICAgICBmb3IgYSBpbiB4OgogICAgICAgICB5LmFwcGVuZChkZWVwY29weShhLCBtZW1vKSkKLSAgICBkID0gaWQoeCkKKyAgICAjIFdlJ3JlIG5vdCBnb2luZyB0byBwdXQgdGhlIHR1cGxlIGluIHRoZSBtZW1vLCBidXQgaXQncyBzdGlsbCBpbXBvcnRhbnQgd2UKKyAgICAjIGNoZWNrIGZvciBpdCwgaW4gY2FzZSB0aGUgdHVwbGUgY29udGFpbnMgcmVjdXJzaXZlIG11dGFibGUgc3RydWN0dXJlcy4KICAgICB0cnk6Ci0gICAgICAgIHJldHVybiBtZW1vW2RdCisgICAgICAgIHJldHVybiBtZW1vW2lkKHgpXQogICAgIGV4Y2VwdCBLZXlFcnJvcjoKICAgICAgICAgcGFzcwogICAgIGZvciBpIGluIHJhbmdlKGxlbih4KSk6CkBAIC0yMjUsNyArMjI4LDYgQEAKICAgICAgICAgICAgIGJyZWFrCiAgICAgZWxzZToKICAgICAgICAgeSA9IHgKLSAgICBtZW1vW2RdID0geQogICAgIHJldHVybiB5CiBkW3R1cGxlXSA9IF9kZWVwY29weV90dXBsZQogCkBAIC0zMjEsNjggKzMyMywzIEBACiAjIEhlbHBlciBmb3IgaW5zdGFuY2UgY3JlYXRpb24gd2l0aG91dCBjYWxsaW5nIF9faW5pdF9fCiBjbGFzcyBfRW1wdHlDbGFzczoKICAgICBwYXNzCi0KLWRlZiBfdGVzdCgpOgotICAgIGwgPSBbTm9uZSwgMSwgMiwgMy4xNCwgJ3h5enp5JywgKDEsIDIpLCBbMy4xNCwgJ2FiYyddLAotICAgICAgICAgeydhYmMnOiAnQUJDJ30sICgpLCBbXSwge31dCi0gICAgbDEgPSBjb3B5KGwpCi0gICAgcHJpbnQobDE9PWwpCi0gICAgbDEgPSBtYXAoY29weSwgbCkKLSAgICBwcmludChsMT09bCkKLSAgICBsMSA9IGRlZXBjb3B5KGwpCi0gICAgcHJpbnQobDE9PWwpCi0gICAgY2xhc3MgQzoKLSAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGFyZz1Ob25lKToKLSAgICAgICAgICAgIHNlbGYuYSA9IDEKLSAgICAgICAgICAgIHNlbGYuYXJnID0gYXJnCi0gICAgICAgICAgICBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgotICAgICAgICAgICAgICAgIGltcG9ydCBzeXMKLSAgICAgICAgICAgICAgICBmaWxlID0gc3lzLmFyZ3ZbMF0KLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgZmlsZSA9IF9fZmlsZV9fCi0gICAgICAgICAgICBzZWxmLmZwID0gb3BlbihmaWxlKQotICAgICAgICAgICAgc2VsZi5mcC5jbG9zZSgpCi0gICAgICAgIGRlZiBfX2dldHN0YXRlX18oc2VsZik6Ci0gICAgICAgICAgICByZXR1cm4geydhJzogc2VsZi5hLCAnYXJnJzogc2VsZi5hcmd9Ci0gICAgICAgIGRlZiBfX3NldHN0YXRlX18oc2VsZiwgc3RhdGUpOgotICAgICAgICAgICAgZm9yIGtleSwgdmFsdWUgaW4gc3RhdGUuaXRlbXMoKToKLSAgICAgICAgICAgICAgICBzZXRhdHRyKHNlbGYsIGtleSwgdmFsdWUpCi0gICAgICAgIGRlZiBfX2RlZXBjb3B5X18oc2VsZiwgbWVtbz1Ob25lKToKLSAgICAgICAgICAgIG5ldyA9IHNlbGYuX19jbGFzc19fKGRlZXBjb3B5KHNlbGYuYXJnLCBtZW1vKSkKLSAgICAgICAgICAgIG5ldy5hID0gc2VsZi5hCi0gICAgICAgICAgICByZXR1cm4gbmV3Ci0gICAgYyA9IEMoJ2FyZ3VtZW50IHNrZXRjaCcpCi0gICAgbC5hcHBlbmQoYykKLSAgICBsMiA9IGNvcHkobCkKLSAgICBwcmludChsID09IGwyKQotICAgIHByaW50KGwpCi0gICAgcHJpbnQobDIpCi0gICAgbDIgPSBkZWVwY29weShsKQotICAgIHByaW50KGwgPT0gbDIpCi0gICAgcHJpbnQobCkKLSAgICBwcmludChsMikKLSAgICBsLmFwcGVuZCh7bFsxXTogbCwgJ3h5eic6IGxbMl19KQotICAgIGwzID0gY29weShsKQotICAgIGltcG9ydCByZXBybGliCi0gICAgcHJpbnQobWFwKHJlcHJsaWIucmVwciwgbCkpCi0gICAgcHJpbnQobWFwKHJlcHJsaWIucmVwciwgbDEpKQotICAgIHByaW50KG1hcChyZXBybGliLnJlcHIsIGwyKSkKLSAgICBwcmludChtYXAocmVwcmxpYi5yZXByLCBsMykpCi0gICAgbDMgPSBkZWVwY29weShsKQotICAgIHByaW50KG1hcChyZXBybGliLnJlcHIsIGwpKQotICAgIHByaW50KG1hcChyZXBybGliLnJlcHIsIGwxKSkKLSAgICBwcmludChtYXAocmVwcmxpYi5yZXByLCBsMikpCi0gICAgcHJpbnQobWFwKHJlcHJsaWIucmVwciwgbDMpKQotICAgIGNsYXNzIG9kaWN0KGRpY3QpOgotICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgZCA9IHt9KToKLSAgICAgICAgICAgIHNlbGYuYSA9IDk5Ci0gICAgICAgICAgICBkaWN0Ll9faW5pdF9fKHNlbGYsIGQpCi0gICAgICAgIGRlZiBfX3NldGl0ZW1fXyhzZWxmLCBrLCBpKToKLSAgICAgICAgICAgIGRpY3QuX19zZXRpdGVtX18oc2VsZiwgaywgaSkKLSAgICAgICAgICAgIHNlbGYuYQotICAgIG8gPSBvZGljdCh7IkEiIDogIkIifSkKLSAgICB4ID0gZGVlcGNvcHkobykKLSAgICBwcmludChvLCB4KQotCi1pZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgotICAgIF90ZXN0KCkKZGlmZiAtLWdpdCBhL0xpYi9jcnlwdC5weSBiL0xpYi9jcnlwdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNjViMGNiCi0tLSAvZGV2L251bGwKKysrIGIvTGliL2NyeXB0LnB5CkBAIC0wLDAgKzEsNjIgQEAKKyIiIldyYXBwZXIgdG8gdGhlIFBPU0lYIGNyeXB0IGxpYnJhcnkgY2FsbCBhbmQgYXNzb2NpYXRlZCBmdW5jdGlvbmFsaXR5LiIiIgorCitpbXBvcnQgX2NyeXB0CitpbXBvcnQgc3RyaW5nCitmcm9tIHJhbmRvbSBpbXBvcnQgY2hvaWNlCitmcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBuYW1lZHR1cGxlCisKKworX3NhbHRjaGFycyA9IHN0cmluZy5hc2NpaV9sZXR0ZXJzICsgc3RyaW5nLmRpZ2l0cyArICcuLycKKworCitjbGFzcyBfTWV0aG9kKG5hbWVkdHVwbGUoJ19NZXRob2QnLCAnbmFtZSBpZGVudCBzYWx0X2NoYXJzIHRvdGFsX3NpemUnKSk6CisKKyAgICAiIiJDbGFzcyByZXByZXNlbnRpbmcgYSBzYWx0IG1ldGhvZCBwZXIgdGhlIE1vZHVsYXIgQ3J5cHQgRm9ybWF0IG9yIHRoZQorICAgIGxlZ2FjeSAyLWNoYXJhY3RlciBjcnlwdCBtZXRob2QuIiIiCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiAnPGNyeXB0Lk1FVEhPRF97fT4nLmZvcm1hdChzZWxmLm5hbWUpCisKKworCitkZWYgbWtzYWx0KG1ldGhvZD1Ob25lKToKKyAgICAiIiJHZW5lcmF0ZSBhIHNhbHQgZm9yIHRoZSBzcGVjaWZpZWQgbWV0aG9kLgorCisgICAgSWYgbm90IHNwZWNpZmllZCwgdGhlIHN0cm9uZ2VzdCBhdmFpbGFibGUgbWV0aG9kIHdpbGwgYmUgdXNlZC4KKworICAgICIiIgorICAgIGlmIG1ldGhvZCBpcyBOb25lOgorICAgICAgICBtZXRob2QgPSBtZXRob2RzWzBdCisgICAgcyA9ICcke30kJy5mb3JtYXQobWV0aG9kLmlkZW50KSBpZiBtZXRob2QuaWRlbnQgZWxzZSAnJworICAgIHMgKz0gJycuam9pbihjaG9pY2UoX3NhbHRjaGFycykgZm9yIF8gaW4gcmFuZ2UobWV0aG9kLnNhbHRfY2hhcnMpKQorICAgIHJldHVybiBzCisKKworZGVmIGNyeXB0KHdvcmQsIHNhbHQ9Tm9uZSk6CisgICAgIiIiUmV0dXJuIGEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgb25lLXdheSBoYXNoIG9mIGEgcGFzc3dvcmQsIHdpdGggYSBzYWx0CisgICAgcHJlcGVuZGVkLgorCisgICAgSWYgYGBzYWx0YGAgaXMgbm90IHNwZWNpZmllZCBvciBpcyBgYE5vbmVgYCwgdGhlIHN0cm9uZ2VzdAorICAgIGF2YWlsYWJsZSBtZXRob2Qgd2lsbCBiZSBzZWxlY3RlZCBhbmQgYSBzYWx0IGdlbmVyYXRlZC4gIE90aGVyd2lzZSwKKyAgICBgYHNhbHRgYCBtYXkgYmUgb25lIG9mIHRoZSBgYGNyeXB0Lk1FVEhPRF8qYGAgdmFsdWVzLCBvciBhIHN0cmluZyBhcworICAgIHJldHVybmVkIGJ5IGBgY3J5cHQubWtzYWx0KClgYC4KKworICAgICIiIgorICAgIGlmIHNhbHQgaXMgTm9uZSBvciBpc2luc3RhbmNlKHNhbHQsIF9NZXRob2QpOgorICAgICAgICBzYWx0ID0gbWtzYWx0KHNhbHQpCisgICAgcmV0dXJuIF9jcnlwdC5jcnlwdCh3b3JkLCBzYWx0KQorCisKKyMgIGF2YWlsYWJsZSBzYWx0aW5nL2NyeXB0byBtZXRob2RzCitNRVRIT0RfQ1JZUFQgPSBfTWV0aG9kKCdDUllQVCcsIE5vbmUsIDIsIDEzKQorTUVUSE9EX01ENSA9IF9NZXRob2QoJ01ENScsICcxJywgOCwgMzQpCitNRVRIT0RfU0hBMjU2ID0gX01ldGhvZCgnU0hBMjU2JywgJzUnLCAxNiwgNjMpCitNRVRIT0RfU0hBNTEyID0gX01ldGhvZCgnU0hBNTEyJywgJzYnLCAxNiwgMTA2KQorCittZXRob2RzID0gW10KK2ZvciBfbWV0aG9kIGluIChNRVRIT0RfU0hBNTEyLCBNRVRIT0RfU0hBMjU2LCBNRVRIT0RfTUQ1KToKKyAgICBfcmVzdWx0ID0gY3J5cHQoJycsIF9tZXRob2QpCisgICAgaWYgX3Jlc3VsdCBhbmQgbGVuKF9yZXN1bHQpID09IF9tZXRob2QudG90YWxfc2l6ZToKKyAgICAgICAgbWV0aG9kcy5hcHBlbmQoX21ldGhvZCkKK21ldGhvZHMuYXBwZW5kKE1FVEhPRF9DUllQVCkKK2RlbCBfcmVzdWx0LCBfbWV0aG9kCmRpZmYgLS1naXQgYS9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9jYWxsYmFja3MucHkgYi9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9jYWxsYmFja3MucHkKaW5kZXggYzcyMDdlYS4uNTYwMGI0MyAxMDA2NDQKLS0tIGEvTGliL2N0eXBlcy90ZXN0L3Rlc3RfY2FsbGJhY2tzLnB5CisrKyBiL0xpYi9jdHlwZXMvdGVzdC90ZXN0X2NhbGxiYWNrcy5weQpAQCAtMTQwLDcgKzE0MCw3IEBACiAgICAgICAgICAgICBkZWYgX19kZWxfXyhzZWxmKToKICAgICAgICAgICAgICAgICBnYy5jb2xsZWN0KCkKICAgICAgICAgQ0ZVTkNUWVBFKE5vbmUpKGxhbWJkYSB4PU5hc3R5KCk6IE5vbmUpCi0gICAgICAgIAorCiAKIHRyeToKICAgICBXSU5GVU5DVFlQRQpkaWZmIC0tZ2l0IGEvTGliL2N0eXBlcy90ZXN0L3Rlc3RfbWVtZnVuY3Rpb25zLnB5IGIvTGliL2N0eXBlcy90ZXN0L3Rlc3RfbWVtZnVuY3Rpb25zLnB5CmluZGV4IGFhMjExM2IuLmFlYzRhYWEgMTAwNjQ0Ci0tLSBhL0xpYi9jdHlwZXMvdGVzdC90ZXN0X21lbWZ1bmN0aW9ucy5weQorKysgYi9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9tZW1mdW5jdGlvbnMucHkKQEAgLTEsNCArMSw1IEBACiBpbXBvcnQgc3lzCitmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIGltcG9ydCB1bml0dGVzdAogZnJvbSBjdHlwZXMgaW1wb3J0ICoKIApAQCAtNDksNiArNTAsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNhc3QoYSwgUE9JTlRFUihjX2J5dGUpKVs6Nzo3XSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWzk3XSkKIAorICAgIEBzdXBwb3J0LnJlZmNvdW50X3Rlc3QKICAgICBkZWYgdGVzdF9zdHJpbmdfYXQoc2VsZik6CiAgICAgICAgIHMgPSBzdHJpbmdfYXQoYiJmb28gYmFyIikKICAgICAgICAgIyBYWFggVGhlIGZvbGxvd2luZyBtYXkgYmUgd3JvbmcsIGRlcGVuZGluZyBvbiBob3cgUHl0aG9uCmRpZmYgLS1naXQgYS9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9wYXJhbWV0ZXJzLnB5IGIvTGliL2N0eXBlcy90ZXN0L3Rlc3RfcGFyYW1ldGVycy5weQppbmRleCBlODNmZDlhLi45NzYyZmI5IDEwMDY0NAotLS0gYS9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9wYXJhbWV0ZXJzLnB5CisrKyBiL0xpYi9jdHlwZXMvdGVzdC90ZXN0X3BhcmFtZXRlcnMucHkKQEAgLTczLDEzICs3MywxMCBAQAogICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CiAjIyAgICAgICAgICAgIHByaW50ICIoTm8gY193Y2hhcl9wKSIKICAgICAgICAgICAgIHJldHVybgotICAgICAgICBzID0gIjEyMyIKLSAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICJ3aW4zMiI6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoY193Y2hhcl9wLmZyb21fcGFyYW0ocykuX29iaiBpcyBzKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjX3djaGFyX3AuZnJvbV9wYXJhbSwgNDIpCiAKLSAgICAgICAgICAgICMgbmV3IGluIDAuOS4xOiBjb252ZXJ0IChkZWNvZGUpIGFzY2lpIHRvIHVuaWNvZGUKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY193Y2hhcl9wLmZyb21fcGFyYW0oIjEyMyIpLl9vYmosICIxMjMiKQorICAgICAgICBjX3djaGFyX3AuZnJvbV9wYXJhbSgiMTIzIikKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGNfd2NoYXJfcC5mcm9tX3BhcmFtLCA0MikKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjX3djaGFyX3AuZnJvbV9wYXJhbSwgYiIxMjNcMzc3IikKIAogICAgICAgICBwYSA9IGNfd2NoYXJfcC5mcm9tX3BhcmFtKGNfd2NoYXJfcCgiMTIzIikpCmRpZmYgLS1naXQgYS9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9weXRob25fYXBpLnB5IGIvTGliL2N0eXBlcy90ZXN0L3Rlc3RfcHl0aG9uX2FwaS5weQppbmRleCAxZjRjNjAzLi45ZGUzOTgwIDEwMDY0NAotLS0gYS9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9weXRob25fYXBpLnB5CisrKyBiL0xpYi9jdHlwZXMvdGVzdC90ZXN0X3B5dGhvbl9hcGkucHkKQEAgLTEsNSArMSw2IEBACiBmcm9tIGN0eXBlcyBpbXBvcnQgKgogaW1wb3J0IHVuaXR0ZXN0LCBzeXMKK2Zyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogZnJvbSBjdHlwZXMudGVzdCBpbXBvcnQgaXNfcmVzb3VyY2VfZW5hYmxlZAogCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCkBAIC0yNSw2ICsyNiw3IEBACiAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKGIiYWJjZGVmZ2hpIiwgMyksIGIiYWJjIikKIAorICAgIEBzdXBwb3J0LnJlZmNvdW50X3Rlc3QKICAgICBkZWYgdGVzdF9QeVN0cmluZ19Gcm9tU3RyaW5nKHNlbGYpOgogICAgICAgICBweXRob25hcGkuUHlCeXRlc19Gcm9tU3RyaW5nLnJlc3R5cGUgPSBweV9vYmplY3QKICAgICAgICAgcHl0aG9uYXBpLlB5Qnl0ZXNfRnJvbVN0cmluZy5hcmd0eXBlcyA9IChjX2NoYXJfcCwpCkBAIC01Niw2ICs1OCw3IEBACiAgICAgICAgICAgICBkZWwgcmVzCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdyYyg0MiksIHJlZjQyKQogCisgICAgQHN1cHBvcnQucmVmY291bnRfdGVzdAogICAgIGRlZiB0ZXN0X1B5T2JqX0Zyb21QdHIoc2VsZik6CiAgICAgICAgIHMgPSAiYWJjIGRlZiBnaGkgamtsIgogICAgICAgICByZWYgPSBncmMocykKZGlmZiAtLWdpdCBhL0xpYi9jdHlwZXMvdGVzdC90ZXN0X3JlZmNvdW50cy5weSBiL0xpYi9jdHlwZXMvdGVzdC90ZXN0X3JlZmNvdW50cy5weQppbmRleCAzNWE4MWFhLi41NjEzZTdhIDEwMDY0NAotLS0gYS9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9yZWZjb3VudHMucHkKKysrIGIvTGliL2N0eXBlcy90ZXN0L3Rlc3RfcmVmY291bnRzLnB5CkBAIC0xLDQgKzEsNSBAQAogaW1wb3J0IHVuaXR0ZXN0Citmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIGltcG9ydCBjdHlwZXMKIGltcG9ydCBnYwogCkBAIC0xMCw2ICsxMSw3IEBACiAKIGNsYXNzIFJlZmNvdW50VGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgogCisgICAgQHN1cHBvcnQucmVmY291bnRfdGVzdAogICAgIGRlZiB0ZXN0XzEoc2VsZik6CiAgICAgICAgIGZyb20gc3lzIGltcG9ydCBnZXRyZWZjb3VudCBhcyBncmMKIApAQCAtMzQsNiArMzYsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdyYyhjYWxsYmFjayksIDIpCiAKIAorICAgIEBzdXBwb3J0LnJlZmNvdW50X3Rlc3QKICAgICBkZWYgdGVzdF9yZWZjb3VudChzZWxmKToKICAgICAgICAgZnJvbSBzeXMgaW1wb3J0IGdldHJlZmNvdW50IGFzIGdyYwogICAgICAgICBkZWYgZnVuYygqYXJncyk6CmRpZmYgLS1naXQgYS9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9zdHJpbmdwdHIucHkgYi9MaWIvY3R5cGVzL3Rlc3QvdGVzdF9zdHJpbmdwdHIucHkKaW5kZXggM2QyNWZhNS4uOTVjZDE2MSAxMDA2NDQKLS0tIGEvTGliL2N0eXBlcy90ZXN0L3Rlc3Rfc3RyaW5ncHRyLnB5CisrKyBiL0xpYi9jdHlwZXMvdGVzdC90ZXN0X3N0cmluZ3B0ci5weQpAQCAtMSw0ICsxLDUgQEAKIGltcG9ydCB1bml0dGVzdAorZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiBmcm9tIGN0eXBlcyBpbXBvcnQgKgogCiBpbXBvcnQgX2N0eXBlc190ZXN0CkBAIC03LDYgKzgsNyBAQAogCiBjbGFzcyBTdHJpbmdQdHJUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKKyAgICBAc3VwcG9ydC5yZWZjb3VudF90ZXN0CiAgICAgZGVmIHRlc3RfX1BPSU5URVJfY19jaGFyKHNlbGYpOgogICAgICAgICBjbGFzcyBYKFN0cnVjdHVyZSk6CiAgICAgICAgICAgICBfZmllbGRzXyA9IFsoInN0ciIsIFBPSU5URVIoY19jaGFyKSldCmRpZmYgLS1naXQgYS9MaWIvY3R5cGVzL3V0aWwucHkgYi9MaWIvY3R5cGVzL3V0aWwucHkKaW5kZXggMTg4MWU4OS4uOTdkMGMyZiAxMDA2NDQKLS0tIGEvTGliL2N0eXBlcy91dGlsLnB5CisrKyBiL0xpYi9jdHlwZXMvdXRpbC5weQpAQCAtMSw1ICsxLDYgQEAKIGltcG9ydCBzeXMsIG9zCiBpbXBvcnQgY29udGV4dGxpYgoraW1wb3J0IHN1YnByb2Nlc3MKIAogIyBmaW5kX2xpYnJhcnkobmFtZSkgcmV0dXJucyB0aGUgcGF0aG5hbWUgb2YgYSBsaWJyYXJ5LCBvciBOb25lLgogaWYgb3MubmFtZSA9PSAibnQiOgpAQCAtMTM2LDE2ICsxMzcsMTIgQEAKICAgICAgICAgICAgIHJ2ID0gZi5jbG9zZSgpCiAgICAgICAgICAgICBpZiBydiA9PSAxMDoKICAgICAgICAgICAgICAgICByYWlzZSBPU0Vycm9yKCdvYmpkdW1wIGNvbW1hbmQgbm90IGZvdW5kJykKLSAgICAgICAgICAgIHdpdGggY29udGV4dGxpYi5jbG9zaW5nKG9zLnBvcGVuKGNtZCkpIGFzIGY6Ci0gICAgICAgICAgICAgICAgZGF0YSA9IGYucmVhZCgpCi0gICAgICAgICAgICByZXMgPSByZS5zZWFyY2gocidcc1NPTkFNRVxzKyhbXlxzXSspJywgZGF0YSkKKyAgICAgICAgICAgIHJlcyA9IHJlLnNlYXJjaChyJ1xzU09OQU1FXHMrKFteXHNdKyknLCBkdW1wKQogICAgICAgICAgICAgaWYgbm90IHJlczoKICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQogICAgICAgICAgICAgcmV0dXJuIHJlcy5ncm91cCgxKQogCi0gICAgaWYgKHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCJmcmVlYnNkIikKLSAgICAgICAgb3Igc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoIm9wZW5ic2QiKQotICAgICAgICBvciBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgiZHJhZ29uZmx5IikpOgorICAgIGlmIHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCgiZnJlZWJzZCIsICJvcGVuYnNkIiwgImRyYWdvbmZseSIpKToKIAogICAgICAgICBkZWYgX251bV92ZXJzaW9uKGxpYm5hbWUpOgogICAgICAgICAgICAgIyAibGlieHl6LnNvLk1BSk9SLk1JTk9SIiA9PiBbIE1BSk9SLCBNSU5PUiBdCkBAIC0xNzEsMjIgKzE2OCw2IEBACiAKICAgICBlbHNlOgogCi0gICAgICAgIGRlZiBfZmluZExpYl9sZGNvbmZpZyhuYW1lKToKLSAgICAgICAgICAgICMgWFhYIGFzc3VtaW5nIEdMSUJDJ3MgbGRjb25maWcgKHdpdGggb3B0aW9uIC1wKQotICAgICAgICAgICAgZXhwciA9IHInL1teXChcKVxzXSpsaWIlc1wuW15cKFwpXHNdKicgJSByZS5lc2NhcGUobmFtZSkKLSAgICAgICAgICAgIHdpdGggY29udGV4dGxpYi5jbG9zaW5nKG9zLnBvcGVuKCcvc2Jpbi9sZGNvbmZpZyAtcCAyPi9kZXYvbnVsbCcpKSBhcyBmOgotICAgICAgICAgICAgICAgIGRhdGEgPSBmLnJlYWQoKQotICAgICAgICAgICAgcmVzID0gcmUuc2VhcmNoKGV4cHIsIGRhdGEpCi0gICAgICAgICAgICBpZiBub3QgcmVzOgotICAgICAgICAgICAgICAgICMgSG0sIHRoaXMgd29ya3Mgb25seSBmb3IgbGlicyBuZWVkZWQgYnkgdGhlIHB5dGhvbiBleGVjdXRhYmxlLgotICAgICAgICAgICAgICAgIGNtZCA9ICdsZGQgJXMgMj4vZGV2L251bGwnICUgc3lzLmV4ZWN1dGFibGUKLSAgICAgICAgICAgICAgICB3aXRoIGNvbnRleHRsaWIuY2xvc2luZyhvcy5wb3BlbihjbWQpKSBhcyBmOgotICAgICAgICAgICAgICAgICAgICBkYXRhID0gZi5yZWFkKCkKLSAgICAgICAgICAgICAgICByZXMgPSByZS5zZWFyY2goZXhwciwgZGF0YSkKLSAgICAgICAgICAgICAgICBpZiBub3QgcmVzOgotICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQotICAgICAgICAgICAgcmV0dXJuIHJlcy5ncm91cCgwKQotCiAgICAgICAgIGRlZiBfZmluZFNvbmFtZV9sZGNvbmZpZyhuYW1lKToKICAgICAgICAgICAgIGltcG9ydCBzdHJ1Y3QKICAgICAgICAgICAgIGlmIHN0cnVjdC5jYWxjc2l6ZSgnbCcpID09IDQ6CkBAIC0yMDMsMTQgKzE4NCwxOSBAQAogICAgICAgICAgICAgYWJpX3R5cGUgPSBtYWNoX21hcC5nZXQobWFjaGluZSwgJ2xpYmM2JykKIAogICAgICAgICAgICAgIyBYWFggYXNzdW1pbmcgR0xJQkMncyBsZGNvbmZpZyAod2l0aCBvcHRpb24gLXApCi0gICAgICAgICAgICBleHByID0gcicoXFMrKVxzK1woKCVzKD86LCBPUyBBQkk6W15cKV0qKT8pXClbXi9dKigvW15cKFwpXHNdKmxpYiVzXC5bXlwoXClcc10qKScgXAotICAgICAgICAgICAgICAgICAgICUgKGFiaV90eXBlLCByZS5lc2NhcGUobmFtZSkpCi0gICAgICAgICAgICB3aXRoIGNvbnRleHRsaWIuY2xvc2luZyhvcy5wb3BlbignTENfQUxMPUMgTEFORz1DIC9zYmluL2xkY29uZmlnIC1wIDI+L2Rldi9udWxsJykpIGFzIGY6Ci0gICAgICAgICAgICAgICAgZGF0YSA9IGYucmVhZCgpCi0gICAgICAgICAgICByZXMgPSByZS5zZWFyY2goZXhwciwgZGF0YSkKLSAgICAgICAgICAgIGlmIG5vdCByZXM6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKLSAgICAgICAgICAgIHJldHVybiByZXMuZ3JvdXAoMSkKKyAgICAgICAgICAgIHJlZ2V4ID0gb3MuZnNlbmNvZGUoCisgICAgICAgICAgICAgICAgJ1xzKyhsaWIlc1wuW15cc10rKVxzK1woJXMnICUgKHJlLmVzY2FwZShuYW1lKSwgYWJpX3R5cGUpKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHdpdGggc3VicHJvY2Vzcy5Qb3BlbihbJy9zYmluL2xkY29uZmlnJywgJy1wJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZGluPXN1YnByb2Nlc3MuREVWTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkZXJyPXN1YnByb2Nlc3MuREVWTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW52PXsnTENfQUxMJzogJ0MnLCAnTEFORyc6ICdDJ30pIGFzIHA6CisgICAgICAgICAgICAgICAgICAgIHJlcyA9IHJlLnNlYXJjaChyZWdleCwgcC5zdGRvdXQucmVhZCgpKQorICAgICAgICAgICAgICAgICAgICBpZiByZXM6CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gb3MuZnNkZWNvZGUocmVzLmdyb3VwKDEpKQorICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgICAgICAgICAgcGFzcwogCiAgICAgICAgIGRlZiBmaW5kX2xpYnJhcnkobmFtZSk6CiAgICAgICAgICAgICByZXR1cm4gX2ZpbmRTb25hbWVfbGRjb25maWcobmFtZSkgb3IgX2dldF9zb25hbWUoX2ZpbmRMaWJfZ2NjKG5hbWUpKQpkaWZmIC0tZ2l0IGEvTGliL2N1cnNlcy9fX2luaXRfXy5weSBiL0xpYi9jdXJzZXMvX19pbml0X18ucHkKaW5kZXggYTNlOWRlZi4uN2JmYTY2NyAxMDA2NDQKLS0tIGEvTGliL2N1cnNlcy9fX2luaXRfXy5weQorKysgYi9MaWIvY3Vyc2VzL19faW5pdF9fLnB5CkBAIC0xMSw3ICsxMSw2IEBACiAiIiIKIAogZnJvbSBfY3Vyc2VzIGltcG9ydCAqCi1mcm9tIGN1cnNlcy53cmFwcGVyIGltcG9ydCB3cmFwcGVyCiBpbXBvcnQgb3MgYXMgX29zCiBpbXBvcnQgc3lzIGFzIF9zeXMKIApAQCAtNTUsMyArNTQsNDggQEAKICAgICBoYXNfa2V5CiBleGNlcHQgTmFtZUVycm9yOgogICAgIGZyb20gLmhhc19rZXkgaW1wb3J0IGhhc19rZXkKKworIyBXcmFwcGVyIGZvciB0aGUgZW50aXJlIGN1cnNlcy1iYXNlZCBhcHBsaWNhdGlvbi4gIFJ1bnMgYSBmdW5jdGlvbiB3aGljaAorIyBzaG91bGQgYmUgdGhlIHJlc3Qgb2YgeW91ciBjdXJzZXMtYmFzZWQgYXBwbGljYXRpb24uICBJZiB0aGUgYXBwbGljYXRpb24KKyMgcmFpc2VzIGFuIGV4Y2VwdGlvbiwgd3JhcHBlcigpIHdpbGwgcmVzdG9yZSB0aGUgdGVybWluYWwgdG8gYSBzYW5lIHN0YXRlIHNvCisjIHlvdSBjYW4gcmVhZCB0aGUgcmVzdWx0aW5nIHRyYWNlYmFjay4KKworZGVmIHdyYXBwZXIoZnVuYywgKmFyZ3MsICoqa3dkcyk6CisgICAgIiIiV3JhcHBlciBmdW5jdGlvbiB0aGF0IGluaXRpYWxpemVzIGN1cnNlcyBhbmQgY2FsbHMgYW5vdGhlciBmdW5jdGlvbiwKKyAgICByZXN0b3Jpbmcgbm9ybWFsIGtleWJvYXJkL3NjcmVlbiBiZWhhdmlvciBvbiBlcnJvci4KKyAgICBUaGUgY2FsbGFibGUgb2JqZWN0ICdmdW5jJyBpcyB0aGVuIHBhc3NlZCB0aGUgbWFpbiB3aW5kb3cgJ3N0ZHNjcicKKyAgICBhcyBpdHMgZmlyc3QgYXJndW1lbnQsIGZvbGxvd2VkIGJ5IGFueSBvdGhlciBhcmd1bWVudHMgcGFzc2VkIHRvCisgICAgd3JhcHBlcigpLgorICAgICIiIgorCisgICAgdHJ5OgorICAgICAgICAjIEluaXRpYWxpemUgY3Vyc2VzCisgICAgICAgIHN0ZHNjciA9IGluaXRzY3IoKQorCisgICAgICAgICMgVHVybiBvZmYgZWNob2luZyBvZiBrZXlzLCBhbmQgZW50ZXIgY2JyZWFrIG1vZGUsCisgICAgICAgICMgd2hlcmUgbm8gYnVmZmVyaW5nIGlzIHBlcmZvcm1lZCBvbiBrZXlib2FyZCBpbnB1dAorICAgICAgICBub2VjaG8oKQorICAgICAgICBjYnJlYWsoKQorCisgICAgICAgICMgSW4ga2V5cGFkIG1vZGUsIGVzY2FwZSBzZXF1ZW5jZXMgZm9yIHNwZWNpYWwga2V5cworICAgICAgICAjIChsaWtlIHRoZSBjdXJzb3Iga2V5cykgd2lsbCBiZSBpbnRlcnByZXRlZCBhbmQKKyAgICAgICAgIyBhIHNwZWNpYWwgdmFsdWUgbGlrZSBjdXJzZXMuS0VZX0xFRlQgd2lsbCBiZSByZXR1cm5lZAorICAgICAgICBzdGRzY3Iua2V5cGFkKDEpCisKKyAgICAgICAgIyBTdGFydCBjb2xvciwgdG9vLiAgSGFybWxlc3MgaWYgdGhlIHRlcm1pbmFsIGRvZXNuJ3QgaGF2ZQorICAgICAgICAjIGNvbG9yOyB1c2VyIGNhbiB0ZXN0IHdpdGggaGFzX2NvbG9yKCkgbGF0ZXIgb24uICBUaGUgdHJ5L2NhdGNoCisgICAgICAgICMgd29ya3MgYXJvdW5kIGEgbWlub3IgYml0IG9mIG92ZXItY29uc2NpZW50aW91c25lc3MgaW4gdGhlIGN1cnNlcworICAgICAgICAjIG1vZHVsZSAtLSB0aGUgZXJyb3IgcmV0dXJuIGZyb20gQyBzdGFydF9jb2xvcigpIGlzIGlnbm9yYWJsZS4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc3RhcnRfY29sb3IoKQorICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBwYXNzCisKKyAgICAgICAgcmV0dXJuIGZ1bmMoc3Rkc2NyLCAqYXJncywgKiprd2RzKQorICAgIGZpbmFsbHk6CisgICAgICAgICMgU2V0IGV2ZXJ5dGhpbmcgYmFjayB0byBub3JtYWwKKyAgICAgICAgaWYgJ3N0ZHNjcicgaW4gbG9jYWxzKCk6CisgICAgICAgICAgICBzdGRzY3Iua2V5cGFkKDApCisgICAgICAgICAgICBlY2hvKCkKKyAgICAgICAgICAgIG5vY2JyZWFrKCkKKyAgICAgICAgICAgIGVuZHdpbigpCmRpZmYgLS1naXQgYS9MaWIvY3Vyc2VzL3dyYXBwZXIucHkgYi9MaWIvY3Vyc2VzL3dyYXBwZXIucHkKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxODNjZTcuLjAwMDAwMDAKLS0tIGEvTGliL2N1cnNlcy93cmFwcGVyLnB5CisrKyAvZGV2L251bGwKQEAgLTEsNTAgKzAsMCBAQAotIiIiY3Vyc2VzLndyYXBwZXIKLQotQ29udGFpbnMgb25lIGZ1bmN0aW9uLCB3cmFwcGVyKCksIHdoaWNoIHJ1bnMgYW5vdGhlciBmdW5jdGlvbiB3aGljaAotc2hvdWxkIGJlIHRoZSByZXN0IG9mIHlvdXIgY3Vyc2VzLWJhc2VkIGFwcGxpY2F0aW9uLiAgSWYgdGhlCi1hcHBsaWNhdGlvbiByYWlzZXMgYW4gZXhjZXB0aW9uLCB3cmFwcGVyKCkgd2lsbCByZXN0b3JlIHRoZSB0ZXJtaW5hbAotdG8gYSBzYW5lIHN0YXRlIHNvIHlvdSBjYW4gcmVhZCB0aGUgcmVzdWx0aW5nIHRyYWNlYmFjay4KLQotIiIiCi0KLWltcG9ydCBjdXJzZXMKLQotZGVmIHdyYXBwZXIoZnVuYywgKmFyZ3MsICoqa3dkcyk6Ci0gICAgIiIiV3JhcHBlciBmdW5jdGlvbiB0aGF0IGluaXRpYWxpemVzIGN1cnNlcyBhbmQgY2FsbHMgYW5vdGhlciBmdW5jdGlvbiwKLSAgICByZXN0b3Jpbmcgbm9ybWFsIGtleWJvYXJkL3NjcmVlbiBiZWhhdmlvciBvbiBlcnJvci4KLSAgICBUaGUgY2FsbGFibGUgb2JqZWN0ICdmdW5jJyBpcyB0aGVuIHBhc3NlZCB0aGUgbWFpbiB3aW5kb3cgJ3N0ZHNjcicKLSAgICBhcyBpdHMgZmlyc3QgYXJndW1lbnQsIGZvbGxvd2VkIGJ5IGFueSBvdGhlciBhcmd1bWVudHMgcGFzc2VkIHRvCi0gICAgd3JhcHBlcigpLgotICAgICIiIgotCi0gICAgdHJ5OgotICAgICAgICAjIEluaXRpYWxpemUgY3Vyc2VzCi0gICAgICAgIHN0ZHNjciA9IGN1cnNlcy5pbml0c2NyKCkKLQotICAgICAgICAjIFR1cm4gb2ZmIGVjaG9pbmcgb2Yga2V5cywgYW5kIGVudGVyIGNicmVhayBtb2RlLAotICAgICAgICAjIHdoZXJlIG5vIGJ1ZmZlcmluZyBpcyBwZXJmb3JtZWQgb24ga2V5Ym9hcmQgaW5wdXQKLSAgICAgICAgY3Vyc2VzLm5vZWNobygpCi0gICAgICAgIGN1cnNlcy5jYnJlYWsoKQotCi0gICAgICAgICMgSW4ga2V5cGFkIG1vZGUsIGVzY2FwZSBzZXF1ZW5jZXMgZm9yIHNwZWNpYWwga2V5cwotICAgICAgICAjIChsaWtlIHRoZSBjdXJzb3Iga2V5cykgd2lsbCBiZSBpbnRlcnByZXRlZCBhbmQKLSAgICAgICAgIyBhIHNwZWNpYWwgdmFsdWUgbGlrZSBjdXJzZXMuS0VZX0xFRlQgd2lsbCBiZSByZXR1cm5lZAotICAgICAgICBzdGRzY3Iua2V5cGFkKDEpCi0KLSAgICAgICAgIyBTdGFydCBjb2xvciwgdG9vLiAgSGFybWxlc3MgaWYgdGhlIHRlcm1pbmFsIGRvZXNuJ3QgaGF2ZQotICAgICAgICAjIGNvbG9yOyB1c2VyIGNhbiB0ZXN0IHdpdGggaGFzX2NvbG9yKCkgbGF0ZXIgb24uICBUaGUgdHJ5L2NhdGNoCi0gICAgICAgICMgd29ya3MgYXJvdW5kIGEgbWlub3IgYml0IG9mIG92ZXItY29uc2NpZW50aW91c25lc3MgaW4gdGhlIGN1cnNlcwotICAgICAgICAjIG1vZHVsZSAtLSB0aGUgZXJyb3IgcmV0dXJuIGZyb20gQyBzdGFydF9jb2xvcigpIGlzIGlnbm9yYWJsZS4KLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgY3Vyc2VzLnN0YXJ0X2NvbG9yKCkKLSAgICAgICAgZXhjZXB0OgotICAgICAgICAgICAgcGFzcwotCi0gICAgICAgIHJldHVybiBmdW5jKHN0ZHNjciwgKmFyZ3MsICoqa3dkcykKLSAgICBmaW5hbGx5OgotICAgICAgICAjIFNldCBldmVyeXRoaW5nIGJhY2sgdG8gbm9ybWFsCi0gICAgICAgIGlmICdzdGRzY3InIGluIGxvY2FscygpOgotICAgICAgICAgICAgc3Rkc2NyLmtleXBhZCgwKQotICAgICAgICAgICAgY3Vyc2VzLmVjaG8oKQotICAgICAgICAgICAgY3Vyc2VzLm5vY2JyZWFrKCkKLSAgICAgICAgICAgIGN1cnNlcy5lbmR3aW4oKQpkaWZmIC0tZ2l0IGEvTGliL2RhdGV0aW1lLnB5IGIvTGliL2RhdGV0aW1lLnB5CmluZGV4IDY1Zjk1ZDIuLmM1ZWVjYTQgMTAwNjQ0Ci0tLSBhL0xpYi9kYXRldGltZS5weQorKysgYi9MaWIvZGF0ZXRpbWUucHkKQEAgLTE3MiwxMCArMTcyLDYgQEAKIAogIyBDb3JyZWN0bHkgc3Vic3RpdHV0ZSBmb3IgJXogYW5kICVaIGVzY2FwZXMgaW4gc3RyZnRpbWUgZm9ybWF0cy4KIGRlZiBfd3JhcF9zdHJmdGltZShvYmplY3QsIGZvcm1hdCwgdGltZXR1cGxlKToKLSAgICB5ZWFyID0gdGltZXR1cGxlWzBdCi0gICAgaWYgeWVhciA8IDEwMDA6Ci0gICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoInllYXI9JWQgaXMgYmVmb3JlIDEwMDA7IHRoZSBkYXRldGltZSBzdHJmdGltZSgpICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAibWV0aG9kcyByZXF1aXJlIHllYXIgPj0gMTAwMCIgJSB5ZWFyKQogICAgICMgRG9uJ3QgY2FsbCB1dGNvZmZzZXQoKSBvciB0em5hbWUoKSB1bmxlc3MgYWN0dWFsbHkgbmVlZGVkLgogICAgIGZyZXBsYWNlID0gTm9uZSAjIHRoZSBzdHJpbmcgdG8gdXNlIGZvciAlZgogICAgIHpyZXBsYWNlID0gTm9uZSAjIHRoZSBzdHJpbmcgdG8gdXNlIGZvciAlegpkaWZmIC0tZ2l0IGEvTGliL2RlY2ltYWwucHkgYi9MaWIvZGVjaW1hbC5weQppbmRleCBmNTI3N2M1Li5lOTQ2MTgyIDEwMDY0NAotLS0gYS9MaWIvZGVjaW1hbC5weQorKysgYi9MaWIvZGVjaW1hbC5weQpAQCAtMTg3MSw2ICsxODcxLDcgQEAKICAgICAgICAgIiIiCiAKICAgICAgICAgb3RoZXIgPSBfY29udmVydF9vdGhlcihvdGhlciwgcmFpc2VpdD1UcnVlKQorICAgICAgICB0aGlyZCA9IF9jb252ZXJ0X290aGVyKHRoaXJkLCByYWlzZWl0PVRydWUpCiAKICAgICAgICAgIyBjb21wdXRlIHByb2R1Y3Q7IHJhaXNlIEludmFsaWRPcGVyYXRpb24gaWYgZWl0aGVyIG9wZXJhbmQgaXMKICAgICAgICAgIyBhIHNpZ25hbGluZyBOYU4gb3IgaWYgdGhlIHByb2R1Y3QgaXMgemVybyB0aW1lcyBpbmZpbml0eS4KQEAgLTE5MDAsNyArMTkwMSw2IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIoaW50KHNlbGYuX2ludCkgKiBpbnQob3RoZXIuX2ludCkpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fZXhwICsgb3RoZXIuX2V4cCkKIAotICAgICAgICB0aGlyZCA9IF9jb252ZXJ0X290aGVyKHRoaXJkLCByYWlzZWl0PVRydWUpCiAgICAgICAgIHJldHVybiBwcm9kdWN0Ll9fYWRkX18odGhpcmQsIGNvbnRleHQpCiAKICAgICBkZWYgX3Bvd2VyX21vZHVsbyhzZWxmLCBvdGhlciwgbW9kdWxvLCBjb250ZXh0PU5vbmUpOgpAQCAtMjAwMSw5ICsyMDAxLDkgQEAKICAgICAgICAgbm9uemVyby4gIEZvciBlZmZpY2llbmN5LCBvdGhlci5fZXhwIHNob3VsZCBub3QgYmUgdG9vIGxhcmdlLAogICAgICAgICBzbyB0aGF0IDEwKiphYnMob3RoZXIuX2V4cCkgaXMgYSBmZWFzaWJsZSBjYWxjdWxhdGlvbi4iIiIKIAotICAgICAgICAjIEluIHRoZSBjb21tZW50cyBiZWxvdywgd2Ugd3JpdGUgeCBmb3IgdGhlIHZhbHVlIG9mIHNlbGYgYW5kCi0gICAgICAgICMgeSBmb3IgdGhlIHZhbHVlIG9mIG90aGVyLiAgV3JpdGUgeCA9IHhjKjEwKip4ZSBhbmQgeSA9Ci0gICAgICAgICMgeWMqMTAqKnllLgorICAgICAgICAjIEluIHRoZSBjb21tZW50cyBiZWxvdywgd2Ugd3JpdGUgeCBmb3IgdGhlIHZhbHVlIG9mIHNlbGYgYW5kIHkgZm9yIHRoZQorICAgICAgICAjIHZhbHVlIG9mIG90aGVyLiAgV3JpdGUgeCA9IHhjKjEwKip4ZSBhbmQgYWJzKHkpID0geWMqMTAqKnllLCB3aXRoIHhjCisgICAgICAgICMgYW5kIHljIHBvc2l0aXZlIGludGVnZXJzIG5vdCBkaXZpc2libGUgYnkgMTAuCiAKICAgICAgICAgIyBUaGUgbWFpbiBwdXJwb3NlIG9mIHRoaXMgbWV0aG9kIGlzIHRvIGlkZW50aWZ5IHRoZSAqZmFpbHVyZSoKICAgICAgICAgIyBvZiB4Kip5IHRvIGJlIGV4YWN0bHkgcmVwcmVzZW50YWJsZSB3aXRoIGFzIGxpdHRsZSBlZmZvcnQgYXMKQEAgLTIwMTEsMTMgKzIwMTEsMTIgQEAKICAgICAgICAgIyBlbGltaW5hdGUgdGhlIHBvc3NpYmlsaXR5IG9mIHgqKnkgYmVpbmcgZXhhY3QuICBPbmx5IGlmIGFsbAogICAgICAgICAjIHRoZXNlIHRlc3RzIGFyZSBwYXNzZWQgZG8gd2UgZ28gb24gdG8gYWN0dWFsbHkgY29tcHV0ZSB4Kip5LgogCi0gICAgICAgICMgSGVyZSdzIHRoZSBtYWluIGlkZWEuICBGaXJzdCBub3JtYWxpemUgYm90aCB4IGFuZCB5LiAgV2UKLSAgICAgICAgIyBleHByZXNzIHkgYXMgYSByYXRpb25hbCBtL24sIHdpdGggbSBhbmQgbiByZWxhdGl2ZWx5IHByaW1lCi0gICAgICAgICMgYW5kIG4+MC4gIFRoZW4gZm9yIHgqKnkgdG8gYmUgZXhhY3RseSByZXByZXNlbnRhYmxlIChhdAotICAgICAgICAjICphbnkqIHByZWNpc2lvbiksIHhjIG11c3QgYmUgdGhlIG50aCBwb3dlciBvZiBhIHBvc2l0aXZlCi0gICAgICAgICMgaW50ZWdlciBhbmQgeGUgbXVzdCBiZSBkaXZpc2libGUgYnkgbi4gIElmIG0gaXMgbmVnYXRpdmUKLSAgICAgICAgIyB0aGVuIGFkZGl0aW9uYWxseSB4YyBtdXN0IGJlIGEgcG93ZXIgb2YgZWl0aGVyIDIgb3IgNSwgaGVuY2UKLSAgICAgICAgIyBhIHBvd2VyIG9mIDIqKm4gb3IgNSoqbi4KKyAgICAgICAgIyBIZXJlJ3MgdGhlIG1haW4gaWRlYS4gIEV4cHJlc3MgeSBhcyBhIHJhdGlvbmFsIG51bWJlciBtL24sIHdpdGggbSBhbmQKKyAgICAgICAgIyBuIHJlbGF0aXZlbHkgcHJpbWUgYW5kIG4+MC4gIFRoZW4gZm9yIHgqKnkgdG8gYmUgZXhhY3RseQorICAgICAgICAjIHJlcHJlc2VudGFibGUgKGF0ICphbnkqIHByZWNpc2lvbiksIHhjIG11c3QgYmUgdGhlIG50aCBwb3dlciBvZiBhCisgICAgICAgICMgcG9zaXRpdmUgaW50ZWdlciBhbmQgeGUgbXVzdCBiZSBkaXZpc2libGUgYnkgbi4gIElmIHkgaXMgbmVnYXRpdmUKKyAgICAgICAgIyB0aGVuIGFkZGl0aW9uYWxseSB4YyBtdXN0IGJlIGEgcG93ZXIgb2YgZWl0aGVyIDIgb3IgNSwgaGVuY2UgYSBwb3dlcgorICAgICAgICAjIG9mIDIqKm4gb3IgNSoqbi4KICAgICAgICAgIwogICAgICAgICAjIFRoZXJlJ3MgYSBsaW1pdCB0byBob3cgc21hbGwgfHl8IGNhbiBiZTogaWYgeT1tL24gYXMgYWJvdmUKICAgICAgICAgIyB0aGVuOgpAQCAtMjA4OSwyMSArMjA4OCw0MyBAQAogICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQogICAgICAgICAgICAgICAgICMgbm93IHhjIGlzIGEgcG93ZXIgb2YgMjsgZSBpcyBpdHMgZXhwb25lbnQKICAgICAgICAgICAgICAgICBlID0gX25iaXRzKHhjKS0xCi0gICAgICAgICAgICAgICAgIyBmaW5kIGUqeSBhbmQgeGUqeTsgYm90aCBtdXN0IGJlIGludGVnZXJzCi0gICAgICAgICAgICAgICAgaWYgeWUgPj0gMDoKLSAgICAgICAgICAgICAgICAgICAgeV9hc19pbnQgPSB5YyoxMCoqeWUKLSAgICAgICAgICAgICAgICAgICAgZSA9IGUqeV9hc19pbnQKLSAgICAgICAgICAgICAgICAgICAgeGUgPSB4ZSp5X2FzX2ludAotICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgIHRlbl9wb3cgPSAxMCoqLXllCi0gICAgICAgICAgICAgICAgICAgIGUsIHJlbWFpbmRlciA9IGRpdm1vZChlKnljLCB0ZW5fcG93KQotICAgICAgICAgICAgICAgICAgICBpZiByZW1haW5kZXI6Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQotICAgICAgICAgICAgICAgICAgICB4ZSwgcmVtYWluZGVyID0gZGl2bW9kKHhlKnljLCB0ZW5fcG93KQotICAgICAgICAgICAgICAgICAgICBpZiByZW1haW5kZXI6Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQogCi0gICAgICAgICAgICAgICAgaWYgZSo2NSA+PSBwKjkzOiAjIDkzLzY1ID4gbG9nKDEwKS9sb2coNSkKKyAgICAgICAgICAgICAgICAjIFdlIG5vdyBoYXZlOgorICAgICAgICAgICAgICAgICMKKyAgICAgICAgICAgICAgICAjICAgeCA9IDIqKmUgKiAxMCoqeGUsIGUgPiAwLCBhbmQgeSA8IDAuCisgICAgICAgICAgICAgICAgIworICAgICAgICAgICAgICAgICMgVGhlIGV4YWN0IHJlc3VsdCBpczoKKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyAgIHgqKnkgPSA1KiooLWUqeSkgKiAxMCoqKGUqeSArIHhlKnkpCisgICAgICAgICAgICAgICAgIworICAgICAgICAgICAgICAgICMgcHJvdmlkZWQgdGhhdCBib3RoIGUqeSBhbmQgeGUqeSBhcmUgaW50ZWdlcnMuICBOb3RlIHRoYXQgaWYKKyAgICAgICAgICAgICAgICAjIDUqKigtZSp5KSA+PSAxMCoqcCwgdGhlbiB0aGUgcmVzdWx0IGNhbid0IGJlIGV4cHJlc3NlZAorICAgICAgICAgICAgICAgICMgZXhhY3RseSB3aXRoIHAgZGlnaXRzIG9mIHByZWNpc2lvbi4KKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyBVc2luZyB0aGUgYWJvdmUsIHdlIGNhbiBndWFyZCBhZ2FpbnN0IGxhcmdlIHZhbHVlcyBvZiB5ZS4KKyAgICAgICAgICAgICAgICAjIDkzLzY1IGlzIGFuIHVwcGVyIGJvdW5kIGZvciBsb2coMTApL2xvZyg1KSwgc28gaWYKKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyAgIHllID49IGxlbihzdHIoOTMqcC8vNjUpKQorICAgICAgICAgICAgICAgICMKKyAgICAgICAgICAgICAgICAjIHRoZW4KKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyAgIC1lKnkgPj0gLXkgPj0gMTAqKnllID4gOTMqcC82NSA+IHAqbG9nKDEwKS9sb2coNSksCisgICAgICAgICAgICAgICAgIworICAgICAgICAgICAgICAgICMgc28gNSoqKC1lKnkpID49IDEwKipwLCBhbmQgdGhlIGNvZWZmaWNpZW50IG9mIHRoZSByZXN1bHQKKyAgICAgICAgICAgICAgICAjIGNhbid0IGJlIGV4cHJlc3NlZCBpbiBwIGRpZ2l0cy4KKworICAgICAgICAgICAgICAgICMgZW1heCA+PSBsYXJnZXN0IGUgc3VjaCB0aGF0IDUqKmUgPCAxMCoqcC4KKyAgICAgICAgICAgICAgICBlbWF4ID0gcCo5My8vNjUKKyAgICAgICAgICAgICAgICBpZiB5ZSA+PSBsZW4oc3RyKGVtYXgpKToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKKworICAgICAgICAgICAgICAgICMgRmluZCAtZSp5IGFuZCAteGUqeTsgYm90aCBtdXN0IGJlIGludGVnZXJzCisgICAgICAgICAgICAgICAgZSA9IF9kZWNpbWFsX2xzaGlmdF9leGFjdChlICogeWMsIHllKQorICAgICAgICAgICAgICAgIHhlID0gX2RlY2ltYWxfbHNoaWZ0X2V4YWN0KHhlICogeWMsIHllKQorICAgICAgICAgICAgICAgIGlmIGUgaXMgTm9uZSBvciB4ZSBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQorCisgICAgICAgICAgICAgICAgaWYgZSA+IGVtYXg6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb25lCiAgICAgICAgICAgICAgICAgeGMgPSA1KiplCiAKQEAgLTIxMTcsMTkgKzIxMzgsMjAgQEAKICAgICAgICAgICAgICAgICB3aGlsZSB4YyAlIDUgPT0gMDoKICAgICAgICAgICAgICAgICAgICAgeGMgLy89IDUKICAgICAgICAgICAgICAgICAgICAgZSAtPSAxCi0gICAgICAgICAgICAgICAgaWYgeWUgPj0gMDoKLSAgICAgICAgICAgICAgICAgICAgeV9hc19pbnRlZ2VyID0geWMqMTAqKnllCi0gICAgICAgICAgICAgICAgICAgIGUgPSBlKnlfYXNfaW50ZWdlcgotICAgICAgICAgICAgICAgICAgICB4ZSA9IHhlKnlfYXNfaW50ZWdlcgotICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgIHRlbl9wb3cgPSAxMCoqLXllCi0gICAgICAgICAgICAgICAgICAgIGUsIHJlbWFpbmRlciA9IGRpdm1vZChlKnljLCB0ZW5fcG93KQotICAgICAgICAgICAgICAgICAgICBpZiByZW1haW5kZXI6Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQotICAgICAgICAgICAgICAgICAgICB4ZSwgcmVtYWluZGVyID0gZGl2bW9kKHhlKnljLCB0ZW5fcG93KQotICAgICAgICAgICAgICAgICAgICBpZiByZW1haW5kZXI6Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQotICAgICAgICAgICAgICAgIGlmIGUqMyA+PSBwKjEwOiAjIDEwLzMgPiBsb2coMTApL2xvZygyKQorCisgICAgICAgICAgICAgICAgIyBHdWFyZCBhZ2FpbnN0IGxhcmdlIHZhbHVlcyBvZiB5ZSwgdXNpbmcgdGhlIHNhbWUgbG9naWMgYXMgaW4KKyAgICAgICAgICAgICAgICAjIHRoZSAneGMgaXMgYSBwb3dlciBvZiAyJyBicmFuY2guICAxMC8zIGlzIGFuIHVwcGVyIGJvdW5kIGZvcgorICAgICAgICAgICAgICAgICMgbG9nKDEwKS9sb2coMikuCisgICAgICAgICAgICAgICAgZW1heCA9IHAqMTAvLzMKKyAgICAgICAgICAgICAgICBpZiB5ZSA+PSBsZW4oc3RyKGVtYXgpKToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKKworICAgICAgICAgICAgICAgIGUgPSBfZGVjaW1hbF9sc2hpZnRfZXhhY3QoZSAqIHljLCB5ZSkKKyAgICAgICAgICAgICAgICB4ZSA9IF9kZWNpbWFsX2xzaGlmdF9leGFjdCh4ZSAqIHljLCB5ZSkKKyAgICAgICAgICAgICAgICBpZiBlIGlzIE5vbmUgb3IgeGUgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUKKworICAgICAgICAgICAgICAgIGlmIGUgPiBlbWF4OgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQogICAgICAgICAgICAgICAgIHhjID0gMioqZQogICAgICAgICAgICAgZWxzZToKQEAgLTM4ODEsMjggKzM5MDMsNiBAQAogICAgICAgICByZXR1cm4gbmMKICAgICBfX2NvcHlfXyA9IGNvcHkKIAotICAgICMgX2NsYW1wIGlzIHByb3ZpZGVkIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIHRoaXJkLXBhcnR5Ci0gICAgIyBjb2RlLiAgTWF5IGJlIHJlbW92ZWQgaW4gUHl0aG9uID49IDMuMy4KLSAgICBkZWYgX2dldF9jbGFtcChzZWxmKToKLSAgICAgICAgIl9jbGFtcCBtaXJyb3JzIHRoZSBjbGFtcCBhdHRyaWJ1dGUuICBJdHMgdXNlIGlzIGRlcHJlY2F0ZWQuIgotICAgICAgICBpbXBvcnQgd2FybmluZ3MKLSAgICAgICAgd2FybmluZ3Mud2FybignVXNlIG9mIHRoZSBfY2xhbXAgYXR0cmlidXRlIGlzIGRlcHJlY2F0ZWQuICcKLSAgICAgICAgICAgICAgICAgICAgICAnUGxlYXNlIHVzZSBjbGFtcCBpbnN0ZWFkLicsCi0gICAgICAgICAgICAgICAgICAgICAgRGVwcmVjYXRpb25XYXJuaW5nKQotICAgICAgICByZXR1cm4gc2VsZi5jbGFtcAotCi0gICAgZGVmIF9zZXRfY2xhbXAoc2VsZiwgY2xhbXApOgotICAgICAgICAiX2NsYW1wIG1pcnJvcnMgdGhlIGNsYW1wIGF0dHJpYnV0ZS4gIEl0cyB1c2UgaXMgZGVwcmVjYXRlZC4iCi0gICAgICAgIGltcG9ydCB3YXJuaW5ncwotICAgICAgICB3YXJuaW5ncy53YXJuKCdVc2Ugb2YgdGhlIF9jbGFtcCBhdHRyaWJ1dGUgaXMgZGVwcmVjYXRlZC4gJwotICAgICAgICAgICAgICAgICAgICAgICdQbGVhc2UgdXNlIGNsYW1wIGluc3RlYWQuJywKLSAgICAgICAgICAgICAgICAgICAgICBEZXByZWNhdGlvbldhcm5pbmcpCi0gICAgICAgIHNlbGYuY2xhbXAgPSBjbGFtcAotCi0gICAgIyBkb24ndCBib3RoZXIgd2l0aCBfZGVsX2NsYW1wOyAgbm8gc2FuZSAzcmQgcGFydHkgY29kZSBzaG91bGQKLSAgICAjIGJlIGRlbGV0aW5nIHRoZSBfY2xhbXAgYXR0cmlidXRlCi0gICAgX2NsYW1wID0gcHJvcGVydHkoX2dldF9jbGFtcCwgX3NldF9jbGFtcCkKLQogICAgIGRlZiBfcmFpc2VfZXJyb3Ioc2VsZiwgY29uZGl0aW9uLCBleHBsYW5hdGlvbiA9IE5vbmUsICphcmdzKToKICAgICAgICAgIiIiSGFuZGxlcyBhbiBlcnJvcgogCkBAIC01NTI5LDYgKzU1MjksMjcgQEAKIAogX25iaXRzID0gaW50LmJpdF9sZW5ndGgKIAorZGVmIF9kZWNpbWFsX2xzaGlmdF9leGFjdChuLCBlKToKKyAgICAiIiIgR2l2ZW4gaW50ZWdlcnMgbiBhbmQgZSwgcmV0dXJuIG4gKiAxMCoqZSBpZiBpdCdzIGFuIGludGVnZXIsIGVsc2UgTm9uZS4KKworICAgIFRoZSBjb21wdXRhdGlvbiBpcyBkZXNpZ25lZCB0byBhdm9pZCBjb21wdXRpbmcgbGFyZ2UgcG93ZXJzIG9mIDEwCisgICAgdW5uZWNlc3NhcmlseS4KKworICAgID4+PiBfZGVjaW1hbF9sc2hpZnRfZXhhY3QoMywgNCkKKyAgICAzMDAwMAorICAgID4+PiBfZGVjaW1hbF9sc2hpZnRfZXhhY3QoMzAwLCAtOTk5OTk5OTk5KSAgIyByZXR1cm5zIE5vbmUKKworICAgICIiIgorICAgIGlmIG4gPT0gMDoKKyAgICAgICAgcmV0dXJuIDAKKyAgICBlbGlmIGUgPj0gMDoKKyAgICAgICAgcmV0dXJuIG4gKiAxMCoqZQorICAgIGVsc2U6CisgICAgICAgICMgdmFsX24gPSBsYXJnZXN0IHBvd2VyIG9mIDEwIGRpdmlkaW5nIG4uCisgICAgICAgIHN0cl9uID0gc3RyKGFicyhuKSkKKyAgICAgICAgdmFsX24gPSBsZW4oc3RyX24pIC0gbGVuKHN0cl9uLnJzdHJpcCgnMCcpKQorICAgICAgICByZXR1cm4gTm9uZSBpZiB2YWxfbiA8IC1lIGVsc2UgbiAvLyAxMCoqLWUKKwogZGVmIF9zcXJ0X25lYXJlc3QobiwgYSk6CiAgICAgIiIiQ2xvc2VzdCBpbnRlZ2VyIHRvIHRoZSBzcXVhcmUgcm9vdCBvZiB0aGUgcG9zaXRpdmUgaW50ZWdlciBuLiAgYSBpcwogICAgIGFuIGluaXRpYWwgYXBwcm94aW1hdGlvbiB0byB0aGUgc3F1YXJlIHJvb3QuICBBbnkgcG9zaXRpdmUgaW50ZWdlcgpkaWZmIC0tZ2l0IGEvTGliL2RpZmZsaWIucHkgYi9MaWIvZGlmZmxpYi5weQppbmRleCBlNmNjNmVlLi5hZTM3N2Q3IDEwMDY0NAotLS0gYS9MaWIvZGlmZmxpYi5weQorKysgYi9MaWIvZGlmZmxpYi5weQpAQCAtMjA0LDcgKzIwNCw3IEBACiAgICAgICAgICMgICAgICByZXR1cm5pbmcgdHJ1ZSBpZmYgdGhlIGVsZW1lbnQgaXMgImp1bmsiIC0tIHRoaXMgaGFzCiAgICAgICAgICMgICAgICBzdWJ0bGUgYnV0IGhlbHBmdWwgZWZmZWN0cyBvbiB0aGUgYWxnb3JpdGhtLCB3aGljaCBJJ2xsCiAgICAgICAgICMgICAgICBnZXQgYXJvdW5kIHRvIHdyaXRpbmcgdXAgc29tZWRheSA8MC45IHdpbms+LgotICAgICAgICAjICAgICAgRE9OJ1QgVVNFISAgT25seSBfX2NoYWluX2IgdXNlcyB0aGlzLiAgVXNlIGlzYmp1bmsuCisgICAgICAgICMgICAgICBET04nVCBVU0UhICBPbmx5IF9fY2hhaW5fYiB1c2VzIHRoaXMuICBVc2UgImluIHNlbGYuYmp1bmsiLgogICAgICAgICAjIGJqdW5rCiAgICAgICAgICMgICAgICB0aGUgaXRlbXMgaW4gYiBmb3Igd2hpY2ggaXNqdW5rIGlzIFRydWUuCiAgICAgICAgICMgYnBvcHVsYXIKQEAgLTI4Nyw3ICsyODcsNiBAQAogICAgICMgd2hlbiBzZWxmLmlzanVuayBpcyBkZWZpbmVkLCBqdW5rIGVsZW1lbnRzIGRvbid0IHNob3cgdXAgaW4gdGhpcwogICAgICMgbWFwIGF0IGFsbCwgd2hpY2ggc3RvcHMgdGhlIGNlbnRyYWwgZmluZF9sb25nZXN0X21hdGNoIG1ldGhvZAogICAgICMgZnJvbSBzdGFydGluZyBhbnkgbWF0Y2hpbmcgYmxvY2sgYXQgYSBqdW5rIGVsZW1lbnQgLi4uCi0gICAgIyBhbHNvIGNyZWF0ZXMgdGhlIGZhc3QgaXNianVuayBmdW5jdGlvbiAuLi4KICAgICAjIGIyaiBhbHNvIGRvZXMgbm90IGNvbnRhaW4gZW50cmllcyBmb3IgInBvcHVsYXIiIGVsZW1lbnRzLCBtZWFuaW5nCiAgICAgIyBlbGVtZW50cyB0aGF0IGFjY291bnQgZm9yIG1vcmUgdGhhbiAxICsgMSUgb2YgdGhlIHRvdGFsIGVsZW1lbnRzLCBhbmQKICAgICAjIHdoZW4gdGhlIHNlcXVlbmNlIGlzIHJlYXNvbmFibHkgbGFyZ2UgKD49IDIwMCBlbGVtZW50cyk7IHRoaXMgY2FuCkBAIC04MDAsNyArNzk5LDcgQEAKICAgICAuLi4gICAyLiBFeHBsaWNpdCBpcyBiZXR0ZXIgdGhhbiBpbXBsaWNpdC4KICAgICAuLi4gICAzLiBTaW1wbGUgaXMgYmV0dGVyIHRoYW4gY29tcGxleC4KICAgICAuLi4gICA0LiBDb21wbGV4IGlzIGJldHRlciB0aGFuIGNvbXBsaWNhdGVkLgotICAgIC4uLiAnJycuc3BsaXRsaW5lcygxKQorICAgIC4uLiAnJycuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKQogICAgID4+PiBsZW4odGV4dDEpCiAgICAgNAogICAgID4+PiB0ZXh0MVswXVstMV0KQEAgLTgwOSw3ICs4MDgsNyBAQAogICAgIC4uLiAgIDMuICAgU2ltcGxlIGlzIGJldHRlciB0aGFuIGNvbXBsZXguCiAgICAgLi4uICAgNC4gQ29tcGxpY2F0ZWQgaXMgYmV0dGVyIHRoYW4gY29tcGxleC4KICAgICAuLi4gICA1LiBGbGF0IGlzIGJldHRlciB0aGFuIG5lc3RlZC4KLSAgICAuLi4gJycnLnNwbGl0bGluZXMoMSkKKyAgICAuLi4gJycnLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkKIAogICAgIE5leHQgd2UgaW5zdGFudGlhdGUgYSBEaWZmZXIgb2JqZWN0OgogCkBAIC04OTYsOCArODk1LDggQEAKIAogICAgICAgICBFeGFtcGxlOgogCi0gICAgICAgID4+PiBwcmludCgnJy5qb2luKERpZmZlcigpLmNvbXBhcmUoJ29uZVxudHdvXG50aHJlZVxuJy5zcGxpdGxpbmVzKDEpLAotICAgICAgICAuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcmVcbnRyZWVcbmVtdVxuJy5zcGxpdGxpbmVzKDEpKSksCisgICAgICAgID4+PiBwcmludCgnJy5qb2luKERpZmZlcigpLmNvbXBhcmUoJ29uZVxudHdvXG50aHJlZVxuJy5zcGxpdGxpbmVzKFRydWUpLAorICAgICAgICAuLi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcmVcbnRyZWVcbmVtdVxuJy5zcGxpdGxpbmVzKFRydWUpKSksCiAgICAgICAgIC4uLiAgICAgICBlbmQ9IiIpCiAgICAgICAgIC0gb25lCiAgICAgICAgID8gIF4KQEAgLTEyNjksOCArMTI2OCw4IEBACiAKICAgICBFeGFtcGxlOgogCi0gICAgPj4+IHByaW50KCcnLmpvaW4oY29udGV4dF9kaWZmKCdvbmVcbnR3b1xudGhyZWVcbmZvdXJcbicuc3BsaXRsaW5lcygxKSwKLSAgICAuLi4gICAgICAgJ3plcm9cbm9uZVxudHJlZVxuZm91clxuJy5zcGxpdGxpbmVzKDEpLCAnT3JpZ2luYWwnLCAnQ3VycmVudCcpKSwKKyAgICA+Pj4gcHJpbnQoJycuam9pbihjb250ZXh0X2RpZmYoJ29uZVxudHdvXG50aHJlZVxuZm91clxuJy5zcGxpdGxpbmVzKFRydWUpLAorICAgIC4uLiAgICAgICAnemVyb1xub25lXG50cmVlXG5mb3VyXG4nLnNwbGl0bGluZXMoVHJ1ZSksICdPcmlnaW5hbCcsICdDdXJyZW50JykpLAogICAgIC4uLiAgICAgICBlbmQ9IiIpCiAgICAgKioqIE9yaWdpbmFsCiAgICAgLS0tIEN1cnJlbnQKQEAgLTEzMzksOCArMTMzOCw4IEBACiAKICAgICBFeGFtcGxlOgogCi0gICAgPj4+IGRpZmYgPSBuZGlmZignb25lXG50d29cbnRocmVlXG4nLnNwbGl0bGluZXMoMSksCi0gICAgLi4uICAgICAgICAgICAgICAnb3JlXG50cmVlXG5lbXVcbicuc3BsaXRsaW5lcygxKSkKKyAgICA+Pj4gZGlmZiA9IG5kaWZmKCdvbmVcbnR3b1xudGhyZWVcbicuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKSwKKyAgICAuLi4gICAgICAgICAgICAgICdvcmVcbnRyZWVcbmVtdVxuJy5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpKQogICAgID4+PiBwcmludCgnJy5qb2luKGRpZmYpLCBlbmQ9IiIpCiAgICAgLSBvbmUKICAgICA/ICBeCkBAIC0yMDM0LDggKzIwMzMsOCBAQAogCiAgICAgRXhhbXBsZXM6CiAKLSAgICA+Pj4gZGlmZiA9IG5kaWZmKCdvbmVcbnR3b1xudGhyZWVcbicuc3BsaXRsaW5lcygxKSwKLSAgICAuLi4gICAgICAgICAgICAgICdvcmVcbnRyZWVcbmVtdVxuJy5zcGxpdGxpbmVzKDEpKQorICAgID4+PiBkaWZmID0gbmRpZmYoJ29uZVxudHdvXG50aHJlZVxuJy5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpLAorICAgIC4uLiAgICAgICAgICAgICAgJ29yZVxudHJlZVxuZW11XG4nLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkpCiAgICAgPj4+IGRpZmYgPSBsaXN0KGRpZmYpCiAgICAgPj4+IHByaW50KCcnLmpvaW4ocmVzdG9yZShkaWZmLCAxKSksIGVuZD0iIikKICAgICBvbmUKZGlmZiAtLWdpdCBhL0xpYi9kaXN0dXRpbHMvX19pbml0X18ucHkgYi9MaWIvZGlzdHV0aWxzL19faW5pdF9fLnB5CmluZGV4IDllYzYxNjUuLmY4ODM5MTYgMTAwNjQ0Ci0tLSBhL0xpYi9kaXN0dXRpbHMvX19pbml0X18ucHkKKysrIGIvTGliL2Rpc3R1dGlscy9fX2luaXRfXy5weQpAQCAtMTMsNSArMTMsNSBAQAogIyBVcGRhdGVkIGF1dG9tYXRpY2FsbHkgYnkgdGhlIFB5dGhvbiByZWxlYXNlIHByb2Nlc3MuCiAjCiAjLS1zdGFydCBjb25zdGFudHMtLQotX192ZXJzaW9uX18gPSAiMy4yLjIiCitfX3ZlcnNpb25fXyA9ICIzLjNhMCIKICMtLWVuZCBjb25zdGFudHMtLQpkaWZmIC0tZ2l0IGEvTGliL2Rpc3R1dGlscy9jb21tYW5kL2JkaXN0X3dpbmluc3QucHkgYi9MaWIvZGlzdHV0aWxzL2NvbW1hbmQvYmRpc3Rfd2luaW5zdC5weQppbmRleCBlM2VkM2FkLi45NTlhOGJmIDEwMDY0NAotLS0gYS9MaWIvZGlzdHV0aWxzL2NvbW1hbmQvYmRpc3Rfd2luaW5zdC5weQorKysgYi9MaWIvZGlzdHV0aWxzL2NvbW1hbmQvYmRpc3Rfd2luaW5zdC5weQpAQCAtMjY1LDExICsyNjUsMTEgQEAKICAgICAgICAgY2ZnZGF0YSA9IGNmZ2RhdGEgKyBiIlwwIgogICAgICAgICBpZiBzZWxmLnByZV9pbnN0YWxsX3NjcmlwdDoKICAgICAgICAgICAgICMgV2UgbmVlZCB0byBub3JtYWxpemUgbmV3bGluZXMsIHNvIHdlIG9wZW4gaW4gdGV4dCBtb2RlIGFuZAotICAgICAgICAgICAgIyBjb252ZXJ0IGJhY2sgdG8gYnl0ZXMuICJsYXRpbjEiIHNpbXBseSBhdm9pZHMgYW55IHBvc3NpYmxlCisgICAgICAgICAgICAjIGNvbnZlcnQgYmFjayB0byBieXRlcy4gImxhdGluLTEiIHNpbXBseSBhdm9pZHMgYW55IHBvc3NpYmxlCiAgICAgICAgICAgICAjIGZhaWx1cmVzLgogICAgICAgICAgICAgd2l0aCBvcGVuKHNlbGYucHJlX2luc3RhbGxfc2NyaXB0LCAiciIsCi0gICAgICAgICAgICAgICAgZW5jb2Rpbmc9ImxhdGluMSIpIGFzIHNjcmlwdDoKLSAgICAgICAgICAgICAgICBzY3JpcHRfZGF0YSA9IHNjcmlwdC5yZWFkKCkuZW5jb2RlKCJsYXRpbjEiKQorICAgICAgICAgICAgICAgIGVuY29kaW5nPSJsYXRpbi0xIikgYXMgc2NyaXB0OgorICAgICAgICAgICAgICAgIHNjcmlwdF9kYXRhID0gc2NyaXB0LnJlYWQoKS5lbmNvZGUoImxhdGluLTEiKQogICAgICAgICAgICAgY2ZnZGF0YSA9IGNmZ2RhdGEgKyBzY3JpcHRfZGF0YSArIGIiXG5cMCIKICAgICAgICAgZWxzZToKICAgICAgICAgICAgICMgZW1wdHkgcHJlLWluc3RhbGwgc2NyaXB0CmRpZmYgLS1naXQgYS9MaWIvZGlzdHV0aWxzL2NvbW1hbmQvYnVpbGRfZXh0LnB5IGIvTGliL2Rpc3R1dGlscy9jb21tYW5kL2J1aWxkX2V4dC5weQppbmRleCA4ZDg0M2Q2Li44YmFmNTM4IDEwMDY0NAotLS0gYS9MaWIvZGlzdHV0aWxzL2NvbW1hbmQvYnVpbGRfZXh0LnB5CisrKyBiL0xpYi9kaXN0dXRpbHMvY29tbWFuZC9idWlsZF9leHQucHkKQEAgLTI0MCw4ICsyNDAsNyBAQAogICAgICAgICAjIGZvciBleHRlbnNpb25zIHVuZGVyIExpbnV4IG9yIFNvbGFyaXMgd2l0aCBhIHNoYXJlZCBQeXRob24gbGlicmFyeSwKICAgICAgICAgIyBQeXRob24ncyBsaWJyYXJ5IGRpcmVjdG9yeSBtdXN0IGJlIGFwcGVuZGVkIHRvIGxpYnJhcnlfZGlycwogICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ1B5X0VOQUJMRV9TSEFSRUQnKQotICAgICAgICBpZiAoKHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdsaW51eCcpIG9yIHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdnbnUnKQotICAgICAgICAgICAgIG9yIHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdzdW5vcycpKQorICAgICAgICBpZiAoc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoKCdsaW51eCcsICdnbnUnLCAnc3Vub3MnKSkKICAgICAgICAgICAgIGFuZCBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ1B5X0VOQUJMRV9TSEFSRUQnKSk6CiAgICAgICAgICAgICBpZiBzeXMuZXhlY3V0YWJsZS5zdGFydHN3aXRoKG9zLnBhdGguam9pbihzeXMuZXhlY19wcmVmaXgsICJiaW4iKSk6CiAgICAgICAgICAgICAgICAgIyBidWlsZGluZyB0aGlyZCBwYXJ0eSBleHRlbnNpb25zCmRpZmYgLS1naXQgYS9MaWIvZGlzdHV0aWxzL2NvbW1hbmQvYnVpbGRfc2NyaXB0cy5weSBiL0xpYi9kaXN0dXRpbHMvY29tbWFuZC9idWlsZF9zY3JpcHRzLnB5CmluZGV4IGVjNDM0NzcuLjRiNWIyMmUgMTAwNjQ0Ci0tLSBhL0xpYi9kaXN0dXRpbHMvY29tbWFuZC9idWlsZF9zY3JpcHRzLnB5CisrKyBiL0xpYi9kaXN0dXRpbHMvY29tbWFuZC9idWlsZF9zY3JpcHRzLnB5CkBAIC0xMjYsMTAgKzEyNiw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlRoZSBzaGViYW5nICh7IXJ9KSBpcyBub3QgZGVjb2RhYmxlICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnJvbSB0aGUgc2NyaXB0IGVuY29kaW5nICh7fSkiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvcm1hdChzaGViYW5nLCBlbmNvZGluZykpCi0gICAgICAgICAgICAgICAgICAgIG91dGYgPSBvcGVuKG91dGZpbGUsICJ3YiIpCi0gICAgICAgICAgICAgICAgICAgIG91dGYud3JpdGUoc2hlYmFuZykKLSAgICAgICAgICAgICAgICAgICAgb3V0Zi53cml0ZWxpbmVzKGYucmVhZGxpbmVzKCkpCi0gICAgICAgICAgICAgICAgICAgIG91dGYuY2xvc2UoKQorICAgICAgICAgICAgICAgICAgICB3aXRoIG9wZW4ob3V0ZmlsZSwgIndiIikgYXMgb3V0ZjoKKyAgICAgICAgICAgICAgICAgICAgICAgIG91dGYud3JpdGUoc2hlYmFuZykKKyAgICAgICAgICAgICAgICAgICAgICAgIG91dGYud3JpdGVsaW5lcyhmLnJlYWRsaW5lcygpKQogICAgICAgICAgICAgICAgIGlmIGY6CiAgICAgICAgICAgICAgICAgICAgIGYuY2xvc2UoKQogICAgICAgICAgICAgZWxzZToKZGlmZiAtLWdpdCBhL0xpYi9kaXN0dXRpbHMvdGVzdHMvdGVzdF9hcmNoaXZlX3V0aWwucHkgYi9MaWIvZGlzdHV0aWxzL3Rlc3RzL3Rlc3RfYXJjaGl2ZV91dGlsLnB5CmluZGV4IDhlZGZhYjQuLjFhZmRkNDYgMTAwNjQ0Ci0tLSBhL0xpYi9kaXN0dXRpbHMvdGVzdHMvdGVzdF9hcmNoaXZlX3V0aWwucHkKKysrIGIvTGliL2Rpc3R1dGlscy90ZXN0cy90ZXN0X2FyY2hpdmVfdXRpbC5weQpAQCAtMSw2ICsxLDggQEAKKyMgLSotIGNvZGluZzogdXRmLTggLSotCiAiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmFyY2hpdmVfdXRpbC4iIiIKIGltcG9ydCB1bml0dGVzdAogaW1wb3J0IG9zCitpbXBvcnQgc3lzCiBpbXBvcnQgdGFyZmlsZQogZnJvbSBvcy5wYXRoIGltcG9ydCBzcGxpdGRyaXZlCiBpbXBvcnQgd2FybmluZ3MKQEAgLTI1LDYgKzI3LDE4IEBACiBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgWkxJQl9TVVBQT1JUID0gRmFsc2UKIAorZGVmIGNhbl9mc19lbmNvZGUoZmlsZW5hbWUpOgorICAgICIiIgorICAgIFJldHVybiBUcnVlIGlmIHRoZSBmaWxlbmFtZSBjYW4gYmUgc2F2ZWQgaW4gdGhlIGZpbGUgc3lzdGVtLgorICAgICIiIgorICAgIGlmIG9zLnBhdGguc3VwcG9ydHNfdW5pY29kZV9maWxlbmFtZXM6CisgICAgICAgIHJldHVybiBUcnVlCisgICAgdHJ5OgorICAgICAgICBmaWxlbmFtZS5lbmNvZGUoc3lzLmdldGZpbGVzeXN0ZW1lbmNvZGluZygpKQorICAgIGV4Y2VwdCBVbmljb2RlRW5jb2RlRXJyb3I6CisgICAgICAgIHJldHVybiBGYWxzZQorICAgIHJldHVybiBUcnVlCisKIAogY2xhc3MgQXJjaGl2ZVV0aWxUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAogICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdTaWxlbmNlciwKQEAgLTMyLDYgKzQ2LDI4IEBACiAKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhaTElCX1NVUFBPUlQsICdOZWVkIHpsaWIgc3VwcG9ydCB0byBydW4nKQogICAgIGRlZiB0ZXN0X21ha2VfdGFyYmFsbChzZWxmKToKKyAgICAgICAgc2VsZi5fbWFrZV90YXJiYWxsKCdhcmNoaXZlJykKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKFpMSUJfU1VQUE9SVCwgJ05lZWQgemxpYiBzdXBwb3J0IHRvIHJ1bicpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoY2FuX2ZzX2VuY29kZSgnw6VyY2hpdicpLAorICAgICAgICAnRmlsZSBzeXN0ZW0gY2Fubm90IGhhbmRsZSB0aGlzIGZpbGVuYW1lJykKKyAgICBkZWYgdGVzdF9tYWtlX3RhcmJhbGxfbGF0aW4xKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgTWlycm9yIHRlc3RfbWFrZV90YXJiYWxsLCBleGNlcHQgZmlsZW5hbWUgY29udGFpbnMgbGF0aW4gY2hhcmFjdGVycy4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuX21ha2VfdGFyYmFsbCgnw6VyY2hpdicpICMgbm90ZSB0aGlzIGlzbid0IGEgcmVhbCB3b3JkCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhaTElCX1NVUFBPUlQsICdOZWVkIHpsaWIgc3VwcG9ydCB0byBydW4nKQorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGNhbl9mc19lbmNvZGUoJ+OBruOCouODvOOCq+OCpOODlicpLAorICAgICAgICAnRmlsZSBzeXN0ZW0gY2Fubm90IGhhbmRsZSB0aGlzIGZpbGVuYW1lJykKKyAgICBkZWYgdGVzdF9tYWtlX3RhcmJhbGxfZXh0ZW5kZWQoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBNaXJyb3IgdGVzdF9tYWtlX3RhcmJhbGwsIGV4Y2VwdCBmaWxlbmFtZSBjb250YWlucyBleHRlbmRlZAorICAgICAgICBjaGFyYWN0ZXJzIG91dHNpZGUgdGhlIGxhdGluIGNoYXJzZXQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLl9tYWtlX3RhcmJhbGwoJ+OBruOCouODvOOCq+OCpOODlicpICMgamFwYW5lc2UgZm9yIGFyY2hpdmUKKworICAgIGRlZiBfbWFrZV90YXJiYWxsKHNlbGYsIHRhcmdldF9uYW1lKToKICAgICAgICAgIyBjcmVhdGluZyBzb21ldGhpbmcgdG8gdGFyCiAgICAgICAgIHRtcGRpciA9IHNlbGYubWtkdGVtcCgpCiAgICAgICAgIHNlbGYud3JpdGVfZmlsZShbdG1wZGlyLCAnZmlsZTEnXSwgJ3h4eCcpCkBAIC00Myw3ICs3OSw3IEBACiAgICAgICAgIHVuaXR0ZXN0LnNraXBVbmxlc3Moc3BsaXRkcml2ZSh0bXBkaXIpWzBdID09IHNwbGl0ZHJpdmUodG1wZGlyMilbMF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlNvdXJjZSBhbmQgdGFyZ2V0IHNob3VsZCBiZSBvbiBzYW1lIGRyaXZlIikKIAotICAgICAgICBiYXNlX25hbWUgPSBvcy5wYXRoLmpvaW4odG1wZGlyMiwgJ2FyY2hpdmUnKQorICAgICAgICBiYXNlX25hbWUgPSBvcy5wYXRoLmpvaW4odG1wZGlyMiwgdGFyZ2V0X25hbWUpCiAKICAgICAgICAgIyB3b3JraW5nIHdpdGggcmVsYXRpdmUgcGF0aHMgdG8gYXZvaWQgdGFyIHdhcm5pbmdzCiAgICAgICAgIG9sZF9kaXIgPSBvcy5nZXRjd2QoKQpAQCAtNTgsNyArOTQsNyBAQAogICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHModGFyYmFsbCkpCiAKICAgICAgICAgIyB0cnlpbmcgYW4gdW5jb21wcmVzc2VkIG9uZQotICAgICAgICBiYXNlX25hbWUgPSBvcy5wYXRoLmpvaW4odG1wZGlyMiwgJ2FyY2hpdmUnKQorICAgICAgICBiYXNlX25hbWUgPSBvcy5wYXRoLmpvaW4odG1wZGlyMiwgdGFyZ2V0X25hbWUpCiAgICAgICAgIG9sZF9kaXIgPSBvcy5nZXRjd2QoKQogICAgICAgICBvcy5jaGRpcih0bXBkaXIpCiAgICAgICAgIHRyeToKZGlmZiAtLWdpdCBhL0xpYi9kaXN0dXRpbHMvdGVzdHMvdGVzdF9iZGlzdF9ycG0ucHkgYi9MaWIvZGlzdHV0aWxzL3Rlc3RzL3Rlc3RfYmRpc3RfcnBtLnB5CmluZGV4IDgwNGZiMTMuLjliMDYzOWEgMTAwNjQ0Ci0tLSBhL0xpYi9kaXN0dXRpbHMvdGVzdHMvdGVzdF9iZGlzdF9ycG0ucHkKKysrIGIvTGliL2Rpc3R1dGlscy90ZXN0cy90ZXN0X2JkaXN0X3JwbS5weQpAQCAtMjgsNiArMjgsMTEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBzeXMuZXhlY3V0YWJsZS5lbmNvZGUoIlVURi04IikKKyAgICAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKKyAgICAgICAgICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJzeXMuZXhlY3V0YWJsZSBpcyBub3QgZW5jb2RhYmxlIHRvIFVURi04IikKKwogICAgICAgICBzdXBlcihCdWlsZFJwbVRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCiAgICAgICAgIHNlbGYub2xkX2xvY2F0aW9uID0gb3MuZ2V0Y3dkKCkKICAgICAgICAgc2VsZi5vbGRfc3lzX2FyZ3YgPSBzeXMuYXJndiwgc3lzLmFyZ3ZbOl0KQEAgLTQyLDcgKzQ3LDcgQEAKIAogICAgICAgICAjIFhYWCBJIGFtIHVuYWJsZSB5ZXQgdG8gbWFrZSB0aGlzIHRlc3Qgd29yayB3aXRob3V0CiAgICAgICAgICMgc3B1cmlvdXMgc2R0b3V0L3N0ZGVyciBvdXRwdXQgdW5kZXIgTWFjIE9TIFgKLSAgICAgICAgaWYgc3lzLnBsYXRmb3JtICE9ICdsaW51eDInOgorICAgICAgICBpZiBub3Qgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ2xpbnV4Jyk6CiAgICAgICAgICAgICByZXR1cm4KIAogICAgICAgICAjIHRoaXMgdGVzdCB3aWxsIHJ1biBvbmx5IGlmIHRoZSBycG0gY29tbWFuZHMgYXJlIGZvdW5kCkBAIC04Miw3ICs4Nyw3IEBACiAKICAgICAgICAgIyBYWFggSSBhbSB1bmFibGUgeWV0IHRvIG1ha2UgdGhpcyB0ZXN0IHdvcmsgd2l0aG91dAogICAgICAgICAjIHNwdXJpb3VzIHNkdG91dC9zdGRlcnIgb3V0cHV0IHVuZGVyIE1hYyBPUyBYCi0gICAgICAgIGlmIHN5cy5wbGF0Zm9ybSAhPSAnbGludXgyJzoKKyAgICAgICAgaWYgbm90IHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdsaW51eCcpOgogICAgICAgICAgICAgcmV0dXJuCiAKICAgICAgICAgIyBodHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlMTUzMzE2NApkaWZmIC0tZ2l0IGEvTGliL2RvY3Rlc3QucHkgYi9MaWIvZG9jdGVzdC5weQppbmRleCAyMzQ3MzNlLi5hYmE5OGRjIDEwMDY0NAotLS0gYS9MaWIvZG9jdGVzdC5weQorKysgYi9MaWIvZG9jdGVzdC5weQpAQCAtNDU4LDcgKzQ1OCw2IEBACiAgICAgICAgIHJldHVybiBoYXNoKChzZWxmLnNvdXJjZSwgc2VsZi53YW50LCBzZWxmLmxpbmVubywgc2VsZi5pbmRlbnQsCiAgICAgICAgICAgICAgICAgICAgICBzZWxmLmV4Y19tc2cpKQogCi0KIGNsYXNzIERvY1Rlc3Q6CiAgICAgIiIiCiAgICAgQSBjb2xsZWN0aW9uIG9mIGRvY3Rlc3QgZXhhbXBsZXMgdGhhdCBzaG91bGQgYmUgcnVuIGluIGEgc2luZ2xlCkBAIC0xMzY3LDcgKzEzNjYsNyBAQAogICAgICAgICBtID0gc2VsZi5fX0xJTkVDQUNIRV9GSUxFTkFNRV9SRS5tYXRjaChmaWxlbmFtZSkKICAgICAgICAgaWYgbSBhbmQgbS5ncm91cCgnbmFtZScpID09IHNlbGYudGVzdC5uYW1lOgogICAgICAgICAgICAgZXhhbXBsZSA9IHNlbGYudGVzdC5leGFtcGxlc1tpbnQobS5ncm91cCgnZXhhbXBsZW51bScpKV0KLSAgICAgICAgICAgIHJldHVybiBleGFtcGxlLnNvdXJjZS5zcGxpdGxpbmVzKFRydWUpCisgICAgICAgICAgICByZXR1cm4gZXhhbXBsZS5zb3VyY2Uuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmV0dXJuIHNlbGYuc2F2ZV9saW5lY2FjaGVfZ2V0bGluZXMoZmlsZW5hbWUsIG1vZHVsZV9nbG9iYWxzKQogCkBAIC0xNDEzLDYgKzE0MTIsNyBAQAogICAgICAgICAjIE5vdGUgdGhhdCB0aGUgaW50ZXJhY3RpdmUgb3V0cHV0IHdpbGwgZ28gdG8gKm91cioKICAgICAgICAgIyBzYXZlX3N0ZG91dCwgZXZlbiBpZiB0aGF0J3Mgbm90IHRoZSByZWFsIHN5cy5zdGRvdXQ7IHRoaXMKICAgICAgICAgIyBhbGxvd3MgdXMgdG8gd3JpdGUgdGVzdCBjYXNlcyBmb3IgdGhlIHNldF90cmFjZSBiZWhhdmlvci4KKyAgICAgICAgc2F2ZV90cmFjZSA9IHN5cy5nZXR0cmFjZSgpCiAgICAgICAgIHNhdmVfc2V0X3RyYWNlID0gcGRiLnNldF90cmFjZQogICAgICAgICBzZWxmLmRlYnVnZ2VyID0gX091dHB1dFJlZGlyZWN0aW5nUGRiKHNhdmVfc3Rkb3V0KQogICAgICAgICBzZWxmLmRlYnVnZ2VyLnJlc2V0KCkKQEAgLTE0MzIsNiArMTQzMiw3IEBACiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICBzeXMuc3Rkb3V0ID0gc2F2ZV9zdGRvdXQKICAgICAgICAgICAgIHBkYi5zZXRfdHJhY2UgPSBzYXZlX3NldF90cmFjZQorICAgICAgICAgICAgc3lzLnNldHRyYWNlKHNhdmVfdHJhY2UpCiAgICAgICAgICAgICBsaW5lY2FjaGUuZ2V0bGluZXMgPSBzZWxmLnNhdmVfbGluZWNhY2hlX2dldGxpbmVzCiAgICAgICAgICAgICBzeXMuZGlzcGxheWhvb2sgPSBzYXZlX2Rpc3BsYXlob29rCiAgICAgICAgICAgICBpZiBjbGVhcl9nbG9iczoKQEAgLTE2MjgsOCArMTYyOSw4IEBACiAgICAgICAgICMgQ2hlY2sgaWYgd2Ugc2hvdWxkIHVzZSBkaWZmLgogICAgICAgICBpZiBzZWxmLl9kb19hX2ZhbmN5X2RpZmYod2FudCwgZ290LCBvcHRpb25mbGFncyk6CiAgICAgICAgICAgICAjIFNwbGl0IHdhbnQgJiBnb3QgaW50byBsaW5lcy4KLSAgICAgICAgICAgIHdhbnRfbGluZXMgPSB3YW50LnNwbGl0bGluZXMoVHJ1ZSkgICMgVHJ1ZSA9PSBrZWVwIGxpbmUgZW5kcwotICAgICAgICAgICAgZ290X2xpbmVzID0gZ290LnNwbGl0bGluZXMoVHJ1ZSkKKyAgICAgICAgICAgIHdhbnRfbGluZXMgPSB3YW50LnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkKKyAgICAgICAgICAgIGdvdF9saW5lcyA9IGdvdC5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCiAgICAgICAgICAgICAjIFVzZSBkaWZmbGliIHRvIGZpbmQgdGhlaXIgZGlmZmVyZW5jZXMuCiAgICAgICAgICAgICBpZiBvcHRpb25mbGFncyAmIFJFUE9SVF9VRElGRjoKICAgICAgICAgICAgICAgICBkaWZmID0gZGlmZmxpYi51bmlmaWVkX2RpZmYod2FudF9saW5lcywgZ290X2xpbmVzLCBuPTIpCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvX3BhcnNlYWRkci5weSBiL0xpYi9lbWFpbC9fcGFyc2VhZGRyLnB5CmluZGV4IGEyOTU3NTcuLjAzNDI0NjkgMTAwNjQ0Ci0tLSBhL0xpYi9lbWFpbC9fcGFyc2VhZGRyLnB5CisrKyBiL0xpYi9lbWFpbC9fcGFyc2VhZGRyLnB5CkBAIC00Nyw2ICs0NywyMSBAQAogCiAgICAgQWNjb3VudHMgZm9yIG1pbGl0YXJ5IHRpbWV6b25lcy4KICAgICAiIiIKKyAgICByZXMgPSBfcGFyc2VkYXRlX3R6KGRhdGEpCisgICAgaWYgcmVzWzldIGlzIE5vbmU6CisgICAgICAgIHJlc1s5XSA9IDAKKyAgICByZXR1cm4gdHVwbGUocmVzKQorCitkZWYgX3BhcnNlZGF0ZV90eihkYXRhKToKKyAgICAiIiJDb252ZXJ0IGRhdGUgdG8gZXh0ZW5kZWQgdGltZSB0dXBsZS4KKworICAgIFRoZSBsYXN0IChhZGRpdGlvbmFsKSBlbGVtZW50IGlzIHRoZSB0aW1lIHpvbmUgb2Zmc2V0IGluIHNlY29uZHMsIGV4Y2VwdCBpZgorICAgIHRoZSB0aW1lem9uZSB3YXMgc3BlY2lmaWVkIGFzIC0wMDAwLiAgSW4gdGhhdCBjYXNlIHRoZSBsYXN0IGVsZW1lbnQgaXMKKyAgICBOb25lLiAgVGhpcyBpbmRpY2F0ZXMgYSBVVEMgdGltZXN0YW1wIHRoYXQgZXhwbGljaXRseSBkZWNsYWltcyBrbm93bGVkZ2Ugb2YKKyAgICB0aGUgc291cmNlIHRpbWV6b25lLCBhcyBvcHBvc2VkIHRvIGEgKzAwMDAgdGltZXN0YW1wIHRoYXQgaW5kaWNhdGVzIHRoZQorICAgIHNvdXJjZSB0aW1lem9uZSByZWFsbHkgd2FzIFVUQy4KKworICAgICIiIgogICAgIGRhdGEgPSBkYXRhLnNwbGl0KCkKICAgICAjIFRoZSBGV1MgYWZ0ZXIgdGhlIGNvbW1hIGFmdGVyIHRoZSBkYXktb2Ytd2VlayBpcyBvcHRpb25hbCwgc28gc2VhcmNoIGFuZAogICAgICMgYWRqdXN0IGZvciB0aGlzLgpAQCAtOTksNiArMTE0LDE0IEBACiAgICAgICAgIHRzcyA9ICcwJwogICAgIGVsaWYgbGVuKHRtKSA9PSAzOgogICAgICAgICBbdGhoLCB0bW0sIHRzc10gPSB0bQorICAgIGVsaWYgbGVuKHRtKSA9PSAxIGFuZCAnLicgaW4gdG1bMF06CisgICAgICAgICMgU29tZSBub24tY29tcGxpYW50IE1VQXMgdXNlICcuJyB0byBzZXBhcmF0ZSB0aW1lIGVsZW1lbnRzLgorICAgICAgICB0bSA9IHRtWzBdLnNwbGl0KCcuJykKKyAgICAgICAgaWYgbGVuKHRtKSA9PSAyOgorICAgICAgICAgICAgW3RoaCwgdG1tXSA9IHRtCisgICAgICAgICAgICB0c3MgPSAwCisgICAgICAgIGVsaWYgbGVuKHRtKSA9PSAzOgorICAgICAgICAgICAgW3RoaCwgdG1tLCB0c3NdID0gdG0KICAgICBlbHNlOgogICAgICAgICByZXR1cm4gTm9uZQogICAgIHRyeToKQEAgLTEzMCw2ICsxNTMsOCBAQAogICAgICAgICAgICAgdHpvZmZzZXQgPSBpbnQodHopCiAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgogICAgICAgICAgICAgcGFzcworICAgICAgICBpZiB0em9mZnNldD09MCBhbmQgdHouc3RhcnRzd2l0aCgnLScpOgorICAgICAgICAgICAgdHpvZmZzZXQgPSBOb25lCiAgICAgIyBDb252ZXJ0IGEgdGltZXpvbmUgb2Zmc2V0IGludG8gc2Vjb25kcyA7IC0wNTAwIC0+IC0xODAwMAogICAgIGlmIHR6b2Zmc2V0OgogICAgICAgICBpZiB0em9mZnNldCA8IDA6CkBAIC0xMzksNyArMTY0LDcgQEAKICAgICAgICAgICAgIHR6c2lnbiA9IDEKICAgICAgICAgdHpvZmZzZXQgPSB0enNpZ24gKiAoICh0em9mZnNldC8vMTAwKSozNjAwICsgKHR6b2Zmc2V0ICUgMTAwKSo2MCkKICAgICAjIERheWxpZ2h0IFNhdmluZyBUaW1lIGZsYWcgaXMgc2V0IHRvIC0xLCBzaW5jZSBEU1QgaXMgdW5rbm93bi4KLSAgICByZXR1cm4geXksIG1tLCBkZCwgdGhoLCB0bW0sIHRzcywgMCwgMSwgLTEsIHR6b2Zmc2V0CisgICAgcmV0dXJuIFt5eSwgbW0sIGRkLCB0aGgsIHRtbSwgdHNzLCAwLCAxLCAtMSwgdHpvZmZzZXRdCiAKIAogZGVmIHBhcnNlZGF0ZShkYXRhKToKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC9lcnJvcnMucHkgYi9MaWIvZW1haWwvZXJyb3JzLnB5CmluZGV4IGQ1MmE2MjQuLmMwNGRlYjQgMTAwNjQ0Ci0tLSBhL0xpYi9lbWFpbC9lcnJvcnMucHkKKysrIGIvTGliL2VtYWlsL2Vycm9ycy5weQpAQCAtMzIsNyArMzIsNyBAQAogCiAMCiAjIFRoZXNlIGFyZSBwYXJzaW5nIGRlZmVjdHMgd2hpY2ggdGhlIHBhcnNlciB3YXMgYWJsZSB0byB3b3JrIGFyb3VuZC4KLWNsYXNzIE1lc3NhZ2VEZWZlY3Q6CitjbGFzcyBNZXNzYWdlRGVmZWN0KEV4Y2VwdGlvbik6CiAgICAgIiIiQmFzZSBjbGFzcyBmb3IgYSBtZXNzYWdlIGRlZmVjdC4iIiIKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBsaW5lPU5vbmUpOgpAQCAtNTUsMyArNTUsNiBAQAogCiBjbGFzcyBNdWx0aXBhcnRJbnZhcmlhbnRWaW9sYXRpb25EZWZlY3QoTWVzc2FnZURlZmVjdCk6CiAgICAgIiIiQSBtZXNzYWdlIGNsYWltZWQgdG8gYmUgYSBtdWx0aXBhcnQgYnV0IG5vIHN1YnBhcnRzIHdlcmUgZm91bmQuIiIiCisKK2NsYXNzIEludmFsaWRNdWx0aXBhcnRDb250ZW50VHJhbnNmZXJFbmNvZGluZ0RlZmVjdChNZXNzYWdlRGVmZWN0KToKKyAgICAiIiJBbiBpbnZhbGlkIGNvbnRlbnQgdHJhbnNmZXIgZW5jb2Rpbmcgd2FzIHNldCBvbiB0aGUgbXVsdGlwYXJ0IGl0c2VsZi4iIiIKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC9mZWVkcGFyc2VyLnB5IGIvTGliL2VtYWlsL2ZlZWRwYXJzZXIucHkKaW5kZXggNjBhODMyNS4uZTc1NGQ4OSAxMDA2NDQKLS0tIGEvTGliL2VtYWlsL2ZlZWRwYXJzZXIucHkKKysrIGIvTGliL2VtYWlsL2ZlZWRwYXJzZXIucHkKQEAgLTI1LDYgKzI1LDcgQEAKIAogZnJvbSBlbWFpbCBpbXBvcnQgZXJyb3JzCiBmcm9tIGVtYWlsIGltcG9ydCBtZXNzYWdlCitmcm9tIGVtYWlsIGltcG9ydCBwb2xpY3kKIAogTkxDUkUgPSByZS5jb21waWxlKCdcclxufFxyfFxuJykKIE5MQ1JFX2JvbCA9IHJlLmNvbXBpbGUoJyhcclxufFxyfFxuKScpCkBAIC0xMjAsOSArMTIxLDYgQEAKICAgICAgICAgIyBSZXZlcnNlIGFuZCBpbnNlcnQgYXQgdGhlIGZyb250IG9mIHRoZSBsaW5lcy4KICAgICAgICAgc2VsZi5fbGluZXNbOjBdID0gbGluZXNbOjotMV0KIAotICAgIGRlZiBpc19jbG9zZWQoc2VsZik6Ci0gICAgICAgIHJldHVybiBzZWxmLl9jbG9zZWQKLQogICAgIGRlZiBfX2l0ZXJfXyhzZWxmKToKICAgICAgICAgcmV0dXJuIHNlbGYKIApAQCAtMTM3LDkgKzEzNSwxNiBAQAogY2xhc3MgRmVlZFBhcnNlcjoKICAgICAiIiJBIGZlZWQtc3R5bGUgcGFyc2VyIG9mIGVtYWlsLiIiIgogCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIF9mYWN0b3J5PW1lc3NhZ2UuTWVzc2FnZSk6Ci0gICAgICAgICIiIl9mYWN0b3J5IGlzIGNhbGxlZCB3aXRoIG5vIGFyZ3VtZW50cyB0byBjcmVhdGUgYSBuZXcgbWVzc2FnZSBvYmoiIiIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgX2ZhY3Rvcnk9bWVzc2FnZS5NZXNzYWdlLCAqLCBwb2xpY3k9cG9saWN5LmRlZmF1bHQpOgorICAgICAgICAiIiJfZmFjdG9yeSBpcyBjYWxsZWQgd2l0aCBubyBhcmd1bWVudHMgdG8gY3JlYXRlIGEgbmV3IG1lc3NhZ2Ugb2JqCisKKyAgICAgICAgVGhlIHBvbGljeSBrZXl3b3JkIHNwZWNpZmllcyBhIHBvbGljeSBvYmplY3QgdGhhdCBjb250cm9scyBhIG51bWJlciBvZgorICAgICAgICBhc3BlY3RzIG9mIHRoZSBwYXJzZXIncyBvcGVyYXRpb24uICBUaGUgZGVmYXVsdCBwb2xpY3kgbWFpbnRhaW5zCisgICAgICAgIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCisKKyAgICAgICAgIiIiCiAgICAgICAgIHNlbGYuX2ZhY3RvcnkgPSBfZmFjdG9yeQorICAgICAgICBzZWxmLnBvbGljeSA9IHBvbGljeQogICAgICAgICBzZWxmLl9pbnB1dCA9IEJ1ZmZlcmVkU3ViRmlsZSgpCiAgICAgICAgIHNlbGYuX21zZ3N0YWNrID0gW10KICAgICAgICAgc2VsZi5fcGFyc2UgPSBzZWxmLl9wYXJzZWdlbigpLl9fbmV4dF9fCkBAIC0xNzEsNyArMTc2LDggQEAKICAgICAgICAgIyBMb29rIGZvciBmaW5hbCBzZXQgb2YgZGVmZWN0cwogICAgICAgICBpZiByb290LmdldF9jb250ZW50X21haW50eXBlKCkgPT0gJ211bHRpcGFydCcgXAogICAgICAgICAgICAgICAgYW5kIG5vdCByb290LmlzX211bHRpcGFydCgpOgotICAgICAgICAgICAgcm9vdC5kZWZlY3RzLmFwcGVuZChlcnJvcnMuTXVsdGlwYXJ0SW52YXJpYW50VmlvbGF0aW9uRGVmZWN0KCkpCisgICAgICAgICAgICBkZWZlY3QgPSBlcnJvcnMuTXVsdGlwYXJ0SW52YXJpYW50VmlvbGF0aW9uRGVmZWN0KCkKKyAgICAgICAgICAgIHNlbGYucG9saWN5LmhhbmRsZV9kZWZlY3Qocm9vdCwgZGVmZWN0KQogICAgICAgICByZXR1cm4gcm9vdAogCiAgICAgZGVmIF9uZXdfbWVzc2FnZShzZWxmKToKQEAgLTI4NCw3ICsyOTAsOCBAQAogICAgICAgICAgICAgICAgICMgZGVmaW5lZCBhIGJvdW5kYXJ5LiAgVGhhdCdzIGEgcHJvYmxlbSB3aGljaCB3ZSdsbCBoYW5kbGUgYnkKICAgICAgICAgICAgICAgICAjIHJlYWRpbmcgZXZlcnl0aGluZyB1bnRpbCB0aGUgRU9GIGFuZCBtYXJraW5nIHRoZSBtZXNzYWdlIGFzCiAgICAgICAgICAgICAgICAgIyBkZWZlY3RpdmUuCi0gICAgICAgICAgICAgICAgc2VsZi5fY3VyLmRlZmVjdHMuYXBwZW5kKGVycm9ycy5Ob0JvdW5kYXJ5SW5NdWx0aXBhcnREZWZlY3QoKSkKKyAgICAgICAgICAgICAgICBkZWZlY3QgPSBlcnJvcnMuTm9Cb3VuZGFyeUluTXVsdGlwYXJ0RGVmZWN0KCkKKyAgICAgICAgICAgICAgICBzZWxmLnBvbGljeS5oYW5kbGVfZGVmZWN0KHNlbGYuX2N1ciwgZGVmZWN0KQogICAgICAgICAgICAgICAgIGxpbmVzID0gW10KICAgICAgICAgICAgICAgICBmb3IgbGluZSBpbiBzZWxmLl9pbnB1dDoKICAgICAgICAgICAgICAgICAgICAgaWYgbGluZSBpcyBOZWVkTW9yZURhdGE6CkBAIC0yOTMsNiArMzAwLDExIEBACiAgICAgICAgICAgICAgICAgICAgIGxpbmVzLmFwcGVuZChsaW5lKQogICAgICAgICAgICAgICAgIHNlbGYuX2N1ci5zZXRfcGF5bG9hZChFTVBUWVNUUklORy5qb2luKGxpbmVzKSkKICAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgICAgICMgTWFrZSBzdXJlIGEgdmFsaWQgY29udGVudCB0eXBlIHdhcyBzcGVjaWZpZWQgcGVyIFJGQyAyMDQ1OjYuNC4KKyAgICAgICAgICAgIGlmIChzZWxmLl9jdXIuZ2V0KCdjb250ZW50LXRyYW5zZmVyLWVuY29kaW5nJywgJzhiaXQnKS5sb3dlcigpCisgICAgICAgICAgICAgICAgICAgIG5vdCBpbiAoJzdiaXQnLCAnOGJpdCcsICdiaW5hcnknKSk6CisgICAgICAgICAgICAgICAgZGVmZWN0ID0gZXJyb3JzLkludmFsaWRNdWx0aXBhcnRDb250ZW50VHJhbnNmZXJFbmNvZGluZ0RlZmVjdCgpCisgICAgICAgICAgICAgICAgc2VsZi5wb2xpY3kuaGFuZGxlX2RlZmVjdChzZWxmLl9jdXIsIGRlZmVjdCkKICAgICAgICAgICAgICMgQ3JlYXRlIGEgbGluZSBtYXRjaCBwcmVkaWNhdGUgd2hpY2ggbWF0Y2hlcyB0aGUgaW50ZXItcGFydAogICAgICAgICAgICAgIyBib3VuZGFyeSBhcyB3ZWxsIGFzIHRoZSBlbmQtb2YtbXVsdGlwYXJ0IGJvdW5kYXJ5LiAgRG9uJ3QgcHVzaAogICAgICAgICAgICAgIyB0aGlzIG9udG8gdGhlIGlucHV0IHN0cmVhbSB1bnRpbCB3ZSd2ZSBzY2FubmVkIHBhc3QgdGhlCkBAIC0zODgsNyArNDAwLDggQEAKICAgICAgICAgICAgICMgdGhhdCBhcyBhIGRlZmVjdCBhbmQgc3RvcmUgdGhlIGNhcHR1cmVkIHRleHQgYXMgdGhlIHBheWxvYWQuCiAgICAgICAgICAgICAjIEV2ZXJ5dGhpbmcgZnJvbSBoZXJlIHRvIHRoZSBFT0YgaXMgZXBpbG9ndWUuCiAgICAgICAgICAgICBpZiBjYXB0dXJpbmdfcHJlYW1ibGU6Ci0gICAgICAgICAgICAgICAgc2VsZi5fY3VyLmRlZmVjdHMuYXBwZW5kKGVycm9ycy5TdGFydEJvdW5kYXJ5Tm90Rm91bmREZWZlY3QoKSkKKyAgICAgICAgICAgICAgICBkZWZlY3QgPSBlcnJvcnMuU3RhcnRCb3VuZGFyeU5vdEZvdW5kRGVmZWN0KCkKKyAgICAgICAgICAgICAgICBzZWxmLnBvbGljeS5oYW5kbGVfZGVmZWN0KHNlbGYuX2N1ciwgZGVmZWN0KQogICAgICAgICAgICAgICAgIHNlbGYuX2N1ci5zZXRfcGF5bG9hZChFTVBUWVNUUklORy5qb2luKHByZWFtYmxlKSkKICAgICAgICAgICAgICAgICBlcGlsb2d1ZSA9IFtdCiAgICAgICAgICAgICAgICAgZm9yIGxpbmUgaW4gc2VsZi5faW5wdXQ6CkBAIC00NDAsNyArNDUzLDcgQEAKICAgICAgICAgICAgICAgICAgICAgIyBpcyBpbGxlZ2FsLCBzbyBsZXQncyBub3RlIHRoZSBkZWZlY3QsIHN0b3JlIHRoZSBpbGxlZ2FsCiAgICAgICAgICAgICAgICAgICAgICMgbGluZSwgYW5kIGlnbm9yZSBpdCBmb3IgcHVycG9zZXMgb2YgaGVhZGVycy4KICAgICAgICAgICAgICAgICAgICAgZGVmZWN0ID0gZXJyb3JzLkZpcnN0SGVhZGVyTGluZUlzQ29udGludWF0aW9uRGVmZWN0KGxpbmUpCi0gICAgICAgICAgICAgICAgICAgIHNlbGYuX2N1ci5kZWZlY3RzLmFwcGVuZChkZWZlY3QpCisgICAgICAgICAgICAgICAgICAgIHNlbGYucG9saWN5LmhhbmRsZV9kZWZlY3Qoc2VsZi5fY3VyLCBkZWZlY3QpCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgbGFzdHZhbHVlLmFwcGVuZChsaW5lKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvZ2VuZXJhdG9yLnB5IGIvTGliL2VtYWlsL2dlbmVyYXRvci5weQppbmRleCBmMGU3YTk1Li5kOGI4ZmE5IDEwMDY0NAotLS0gYS9MaWIvZW1haWwvZ2VuZXJhdG9yLnB5CisrKyBiL0xpYi9lbWFpbC9nZW5lcmF0b3IucHkKQEAgLTEzLDggKzEzLDEwIEBACiBpbXBvcnQgd2FybmluZ3MKIAogZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8sIEJ5dGVzSU8KK2Zyb20gZW1haWwgaW1wb3J0IHBvbGljeQogZnJvbSBlbWFpbC5oZWFkZXIgaW1wb3J0IEhlYWRlcgogZnJvbSBlbWFpbC5tZXNzYWdlIGltcG9ydCBfaGFzX3N1cnJvZ2F0ZXMKK2ltcG9ydCBlbWFpbC5jaGFyc2V0IGFzIF9jaGFyc2V0CiAKIFVOREVSU0NPUkUgPSAnXycKIE5MID0gJ1xuJyAgIyBYWFg6IG5vIGxvbmdlciB1c2VkIGJ5IHRoZSBjb2RlIGJlbG93LgpAQCAtMzMsNyArMzUsOCBAQAogICAgICMgUHVibGljIGludGVyZmFjZQogICAgICMKIAotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBvdXRmcCwgbWFuZ2xlX2Zyb21fPVRydWUsIG1heGhlYWRlcmxlbj03OCk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG91dGZwLCBtYW5nbGVfZnJvbV89VHJ1ZSwgbWF4aGVhZGVybGVuPU5vbmUsICosCisgICAgICAgICAgICAgICAgIHBvbGljeT1wb2xpY3kuZGVmYXVsdCk6CiAgICAgICAgICIiIkNyZWF0ZSB0aGUgZ2VuZXJhdG9yIGZvciBtZXNzYWdlIGZsYXR0ZW5pbmcuCiAKICAgICAgICAgb3V0ZnAgaXMgdGhlIG91dHB1dCBmaWxlLWxpa2Ugb2JqZWN0IGZvciB3cml0aW5nIHRoZSBtZXNzYWdlIHRvLiAgSXQKQEAgLTQ5LDE2ICs1MiwyMyBAQAogICAgICAgICBkZWZpbmVkIGluIHRoZSBIZWFkZXIgY2xhc3MuICBTZXQgbWF4aGVhZGVybGVuIHRvIHplcm8gdG8gZGlzYWJsZQogICAgICAgICBoZWFkZXIgd3JhcHBpbmcuICBUaGUgZGVmYXVsdCBpcyA3OCwgYXMgcmVjb21tZW5kZWQgKGJ1dCBub3QgcmVxdWlyZWQpCiAgICAgICAgIGJ5IFJGQyAyODIyLgorCisgICAgICAgIFRoZSBwb2xpY3kga2V5d29yZCBzcGVjaWZpZXMgYSBwb2xpY3kgb2JqZWN0IHRoYXQgY29udHJvbHMgYSBudW1iZXIgb2YKKyAgICAgICAgYXNwZWN0cyBvZiB0aGUgZ2VuZXJhdG9yJ3Mgb3BlcmF0aW9uLiAgVGhlIGRlZmF1bHQgcG9saWN5IG1haW50YWlucworICAgICAgICBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgorCiAgICAgICAgICIiIgogICAgICAgICBzZWxmLl9mcCA9IG91dGZwCiAgICAgICAgIHNlbGYuX21hbmdsZV9mcm9tXyA9IG1hbmdsZV9mcm9tXwotICAgICAgICBzZWxmLl9tYXhoZWFkZXJsZW4gPSBtYXhoZWFkZXJsZW4KKyAgICAgICAgc2VsZi5fbWF4aGVhZGVybGVuID0gKG1heGhlYWRlcmxlbiBpZiBtYXhoZWFkZXJsZW4gaXMgbm90IE5vbmUgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9saWN5Lm1heF9saW5lX2xlbmd0aCkKKyAgICAgICAgc2VsZi5wb2xpY3kgPSBwb2xpY3kKIAogICAgIGRlZiB3cml0ZShzZWxmLCBzKToKICAgICAgICAgIyBKdXN0IGRlbGVnYXRlIHRvIHRoZSBmaWxlIG9iamVjdAogICAgICAgICBzZWxmLl9mcC53cml0ZShzKQogCi0gICAgZGVmIGZsYXR0ZW4oc2VsZiwgbXNnLCB1bml4ZnJvbT1GYWxzZSwgbGluZXNlcD0nXG4nKToKKyAgICBkZWYgZmxhdHRlbihzZWxmLCBtc2csIHVuaXhmcm9tPUZhbHNlLCBsaW5lc2VwPU5vbmUpOgogICAgICAgICByIiIiUHJpbnQgdGhlIG1lc3NhZ2Ugb2JqZWN0IHRyZWUgcm9vdGVkIGF0IG1zZyB0byB0aGUgb3V0cHV0IGZpbGUKICAgICAgICAgc3BlY2lmaWVkIHdoZW4gdGhlIEdlbmVyYXRvciBpbnN0YW5jZSB3YXMgY3JlYXRlZC4KIApAQCAtNzAsMTcgKzgwLDE1IEBACiAgICAgICAgIE5vdGUgdGhhdCBmb3Igc3Vib2JqZWN0cywgbm8gRnJvbV8gbGluZSBpcyBwcmludGVkLgogCiAgICAgICAgIGxpbmVzZXAgc3BlY2lmaWVzIHRoZSBjaGFyYWN0ZXJzIHVzZWQgdG8gaW5kaWNhdGUgYSBuZXcgbGluZSBpbgotICAgICAgICB0aGUgb3V0cHV0LiAgVGhlIGRlZmF1bHQgdmFsdWUgaXMgdGhlIG1vc3QgdXNlZnVsIGZvciB0eXBpY2FsCi0gICAgICAgIFB5dGhvbiBhcHBsaWNhdGlvbnMsIGJ1dCBpdCBjYW4gYmUgc2V0IHRvIFxyXG4gdG8gcHJvZHVjZSBSRkMtY29tcGxpYW50Ci0gICAgICAgIGxpbmUgc2VwYXJhdG9ycyB3aGVuIG5lZWRlZC4KKyAgICAgICAgdGhlIG91dHB1dC4gIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGRldGVybWluZWQgYnkgdGhlIHBvbGljeS4KIAogICAgICAgICAiIiIKICAgICAgICAgIyBXZSB1c2UgdGhlIF9YWFggY29uc3RhbnRzIGZvciBvcGVyYXRpbmcgb24gZGF0YSB0aGF0IGNvbWVzIGRpcmVjdGx5CiAgICAgICAgICMgZnJvbSB0aGUgbXNnLCBhbmQgX2VuY29kZWRfWFhYIGNvbnN0YW50cyBmb3Igb3BlcmF0aW5nIG9uIGRhdGEgdGhhdAogICAgICAgICAjIGhhcyBhbHJlYWR5IGJlZW4gY29udmVydGVkICh0byBieXRlcyBpbiB0aGUgQnl0ZXNHZW5lcmF0b3IpIGFuZAogICAgICAgICAjIGluc2VydGVkIGludG8gYSB0ZW1wb3JhcnkgYnVmZmVyLgotICAgICAgICBzZWxmLl9OTCA9IGxpbmVzZXAKLSAgICAgICAgc2VsZi5fZW5jb2RlZF9OTCA9IHNlbGYuX2VuY29kZShsaW5lc2VwKQorICAgICAgICBzZWxmLl9OTCA9IGxpbmVzZXAgaWYgbGluZXNlcCBpcyBub3QgTm9uZSBlbHNlIHNlbGYucG9saWN5LmxpbmVzZXAKKyAgICAgICAgc2VsZi5fZW5jb2RlZF9OTCA9IHNlbGYuX2VuY29kZShzZWxmLl9OTCkKICAgICAgICAgc2VsZi5fRU1QVFkgPSAnJwogICAgICAgICBzZWxmLl9lbmNvZGVkX0VNVFBZID0gc2VsZi5fZW5jb2RlKCcnKQogICAgICAgICBpZiB1bml4ZnJvbToKQEAgLTI5NywxMCArMzA1LDEyIEBACiAgICAgICAgICMgbWVzc2FnZS9yZmM4MjIuICBTdWNoIG1lc3NhZ2VzIGFyZSBnZW5lcmF0ZWQgYnksIGZvciBleGFtcGxlLAogICAgICAgICAjIEdyb3Vwd2lzZSB3aGVuIGZvcndhcmRpbmcgdW5hZG9ybmVkIG1lc3NhZ2VzLiAgKElzc3VlIDc5NzAuKSAgU28KICAgICAgICAgIyBpbiB0aGF0IGNhc2Ugd2UganVzdCBlbWl0IHRoZSBzdHJpbmcgYm9keS4KLSAgICAgICAgcGF5bG9hZCA9IG1zZy5nZXRfcGF5bG9hZCgpCisgICAgICAgIHBheWxvYWQgPSBtc2cuX3BheWxvYWQKICAgICAgICAgaWYgaXNpbnN0YW5jZShwYXlsb2FkLCBsaXN0KToKICAgICAgICAgICAgIGcuZmxhdHRlbihtc2cuZ2V0X3BheWxvYWQoMCksIHVuaXhmcm9tPUZhbHNlLCBsaW5lc2VwPXNlbGYuX05MKQogICAgICAgICAgICAgcGF5bG9hZCA9IHMuZ2V0dmFsdWUoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcGF5bG9hZCA9IHNlbGYuX2VuY29kZShwYXlsb2FkKQogICAgICAgICBzZWxmLl9mcC53cml0ZShwYXlsb2FkKQogCiAgICAgIyBUaGlzIHVzZWQgdG8gYmUgYSBtb2R1bGUgbGV2ZWwgZnVuY3Rpb247IHdlIHVzZSBhIGNsYXNzbWV0aG9kIGZvciB0aGlzCkBAIC0zMzYsNyArMzQ2LDEwIEBACiAKICAgICBGdW5jdGlvbmFsbHkgaWRlbnRpY2FsIHRvIHRoZSBiYXNlIEdlbmVyYXRvciBleGNlcHQgdGhhdCB0aGUgb3V0cHV0IGlzCiAgICAgYnl0ZXMgYW5kIG5vdCBzdHJpbmcuICBXaGVuIHN1cnJvZ2F0ZXMgd2VyZSB1c2VkIGluIHRoZSBpbnB1dCB0byBlbmNvZGUKLSAgICBieXRlcywgdGhlc2UgYXJlIGRlY29kZWQgYmFjayB0byBieXRlcyBmb3Igb3V0cHV0LgorICAgIGJ5dGVzLCB0aGVzZSBhcmUgZGVjb2RlZCBiYWNrIHRvIGJ5dGVzIGZvciBvdXRwdXQuICBJZiB0aGUgcG9saWN5IGhhcworICAgIG11c3RfYmVfN2JpdCBzZXQgdHJ1ZSwgdGhlbiB0aGUgbWVzc2FnZSBpcyB0cmFuc2Zvcm1lZCBzdWNoIHRoYXQgdGhlCisgICAgbm9uLUFTQ0lJIGJ5dGVzIGFyZSBwcm9wZXJseSBjb250ZW50IHRyYW5zZmVyIGVuY29kZWQsIHVzaW5nIHRoZQorICAgIGNoYXJzZXQgdW5rbm93bi04Yml0LgogCiAgICAgVGhlIG91dGZwIG9iamVjdCBtdXN0IGFjY2VwdCBieXRlcyBpbiBpdHMgd3JpdGUgbWV0aG9kLgogICAgICIiIgpAQCAtMzU5LDIxICszNzIsMjIgQEAKICAgICAgICAgIyBzdHJpbmdzIHdpdGggOGJpdCBieXRlcy4KICAgICAgICAgZm9yIGgsIHYgaW4gbXNnLl9oZWFkZXJzOgogICAgICAgICAgICAgc2VsZi53cml0ZSgnJXM6ICcgJSBoKQotICAgICAgICAgICAgaWYgaXNpbnN0YW5jZSh2LCBIZWFkZXIpOgotICAgICAgICAgICAgICAgIHNlbGYud3JpdGUodi5lbmNvZGUobWF4bGluZWxlbj1zZWxmLl9tYXhoZWFkZXJsZW4pK05MKQotICAgICAgICAgICAgZWxpZiBfaGFzX3N1cnJvZ2F0ZXModik6Ci0gICAgICAgICAgICAgICAgIyBJZiB3ZSBoYXZlIHJhdyA4Yml0IGRhdGEgaW4gYSBieXRlIHN0cmluZywgd2UgaGF2ZSBubyBpZGVhCi0gICAgICAgICAgICAgICAgIyB3aGF0IHRoZSBlbmNvZGluZyBpcy4gIFRoZXJlIGlzIG5vIHNhZmUgd2F5IHRvIHNwbGl0IHRoaXMKLSAgICAgICAgICAgICAgICAjIHN0cmluZy4gIElmIGl0J3MgYXNjaWktc3Vic2V0LCB0aGVuIHdlIGNvdWxkIGRvIGEgbm9ybWFsCi0gICAgICAgICAgICAgICAgIyBhc2NpaSBzcGxpdCwgYnV0IGlmIGl0J3MgbXVsdGlieXRlIHRoZW4gd2UgY291bGQgYnJlYWsgdGhlCi0gICAgICAgICAgICAgICAgIyBzdHJpbmcuICBUaGVyZSdzIG5vIHdheSB0byBrbm93IHNvIHRoZSBsZWFzdCBoYXJtIHNlZW1zIHRvCi0gICAgICAgICAgICAgICAgIyBiZSB0byBub3Qgc3BsaXQgdGhlIHN0cmluZyBhbmQgcmlzayBpdCBiZWluZyB0b28gbG9uZy4KLSAgICAgICAgICAgICAgICBzZWxmLndyaXRlKHYrTkwpCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICMgSGVhZGVyJ3MgZ290IGxvdHMgb2Ygc21hcnRzIGFuZCB0aGlzIHN0cmluZyBpcyBzYWZlLi4uCi0gICAgICAgICAgICAgICAgaGVhZGVyID0gSGVhZGVyKHYsIG1heGxpbmVsZW49c2VsZi5fbWF4aGVhZGVybGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJfbmFtZT1oKQotICAgICAgICAgICAgICAgIHNlbGYud3JpdGUoaGVhZGVyLmVuY29kZShsaW5lc2VwPXNlbGYuX05MKStzZWxmLl9OTCkKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2Uodiwgc3RyKToKKyAgICAgICAgICAgICAgICBpZiBfaGFzX3N1cnJvZ2F0ZXModik6CisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBzZWxmLnBvbGljeS5tdXN0X2JlXzdiaXQ6CisgICAgICAgICAgICAgICAgICAgICAgICAjIElmIHdlIGhhdmUgcmF3IDhiaXQgZGF0YSBpbiBhIGJ5dGUgc3RyaW5nLCB3ZSBoYXZlIG5vIGlkZWEKKyAgICAgICAgICAgICAgICAgICAgICAgICMgd2hhdCB0aGUgZW5jb2RpbmcgaXMuICBUaGVyZSBpcyBubyBzYWZlIHdheSB0byBzcGxpdCB0aGlzCisgICAgICAgICAgICAgICAgICAgICAgICAjIHN0cmluZy4gIElmIGl0J3MgYXNjaWktc3Vic2V0LCB0aGVuIHdlIGNvdWxkIGRvIGEgbm9ybWFsCisgICAgICAgICAgICAgICAgICAgICAgICAjIGFzY2lpIHNwbGl0LCBidXQgaWYgaXQncyBtdWx0aWJ5dGUgdGhlbiB3ZSBjb3VsZCBicmVhayB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgICMgc3RyaW5nLiAgVGhlcmUncyBubyB3YXkgdG8ga25vdyBzbyB0aGUgbGVhc3QgaGFybSBzZWVtcyB0bworICAgICAgICAgICAgICAgICAgICAgICAgIyBiZSB0byBub3Qgc3BsaXQgdGhlIHN0cmluZyBhbmQgcmlzayBpdCBiZWluZyB0b28gbG9uZy4KKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYud3JpdGUoditOTCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgICAgIGggPSBIZWFkZXIodiwgY2hhcnNldD1fY2hhcnNldC5VTktOT1dOOEJJVCwgaGVhZGVyX25hbWU9aCkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBoID0gSGVhZGVyKHYsIGhlYWRlcl9uYW1lPWgpCisgICAgICAgICAgICBzZWxmLndyaXRlKGguZW5jb2RlKGxpbmVzZXA9c2VsZi5fTkwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGxpbmVsZW49c2VsZi5fbWF4aGVhZGVybGVuKStzZWxmLl9OTCkKICAgICAgICAgIyBBIGJsYW5rIGxpbmUgYWx3YXlzIHNlcGFyYXRlcyBoZWFkZXJzIGZyb20gYm9keQogICAgICAgICBzZWxmLndyaXRlKHNlbGYuX05MKQogCkBAIC0zODIsNyArMzk2LDcgQEAKICAgICAgICAgIyBqdXN0IHdyaXRlIGl0IGJhY2sgb3V0LgogICAgICAgICBpZiBtc2cuX3BheWxvYWQgaXMgTm9uZToKICAgICAgICAgICAgIHJldHVybgotICAgICAgICBpZiBfaGFzX3N1cnJvZ2F0ZXMobXNnLl9wYXlsb2FkKToKKyAgICAgICAgaWYgX2hhc19zdXJyb2dhdGVzKG1zZy5fcGF5bG9hZCkgYW5kIG5vdCBzZWxmLnBvbGljeS5tdXN0X2JlXzdiaXQ6CiAgICAgICAgICAgICBzZWxmLndyaXRlKG1zZy5fcGF5bG9hZCkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHN1cGVyKEJ5dGVzR2VuZXJhdG9yLHNlbGYpLl9oYW5kbGVfdGV4dChtc2cpCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvcGFyc2VyLnB5IGIvTGliL2VtYWlsL3BhcnNlci5weQppbmRleCA2Y2FhZmY1Li4wZjkyMTYwIDEwMDY0NAotLS0gYS9MaWIvZW1haWwvcGFyc2VyLnB5CisrKyBiL0xpYi9lbWFpbC9wYXJzZXIucHkKQEAgLTQsMTggKzQsMTkgQEAKIAogIiIiQSBwYXJzZXIgb2YgUkZDIDI4MjIgYW5kIE1JTUUgZW1haWwgbWVzc2FnZXMuIiIiCiAKLV9fYWxsX18gPSBbJ1BhcnNlcicsICdIZWFkZXJQYXJzZXInXQorX19hbGxfXyA9IFsnUGFyc2VyJywgJ0hlYWRlclBhcnNlcicsICdCeXRlc1BhcnNlcicsICdCeXRlc0hlYWRlclBhcnNlciddCiAKIGltcG9ydCB3YXJuaW5ncwogZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8sIFRleHRJT1dyYXBwZXIKIAogZnJvbSBlbWFpbC5mZWVkcGFyc2VyIGltcG9ydCBGZWVkUGFyc2VyCiBmcm9tIGVtYWlsLm1lc3NhZ2UgaW1wb3J0IE1lc3NhZ2UKK2Zyb20gZW1haWwgaW1wb3J0IHBvbGljeQogCiAKIAwKIGNsYXNzIFBhcnNlcjoKLSAgICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3dzKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgX2NsYXNzPU1lc3NhZ2UsICosIHBvbGljeT1wb2xpY3kuZGVmYXVsdCk6CiAgICAgICAgICIiIlBhcnNlciBvZiBSRkMgMjgyMiBhbmQgTUlNRSBlbWFpbCBtZXNzYWdlcy4KIAogICAgICAgICBDcmVhdGVzIGFuIGluLW1lbW9yeSBvYmplY3QgdHJlZSByZXByZXNlbnRpbmcgdGhlIGVtYWlsIG1lc3NhZ2UsIHdoaWNoCkBAIC0zMCwyOCArMzEsMTQgQEAKICAgICAgICAgX2NsYXNzIGlzIHRoZSBjbGFzcyB0byBpbnN0YW50aWF0ZSBmb3IgbmV3IG1lc3NhZ2Ugb2JqZWN0cyB3aGVuIHRoZXkKICAgICAgICAgbXVzdCBiZSBjcmVhdGVkLiAgVGhpcyBjbGFzcyBtdXN0IGhhdmUgYSBjb25zdHJ1Y3RvciB0aGF0IGNhbiB0YWtlCiAgICAgICAgIHplcm8gYXJndW1lbnRzLiAgRGVmYXVsdCBpcyBNZXNzYWdlLk1lc3NhZ2UuCisKKyAgICAgICAgVGhlIHBvbGljeSBrZXl3b3JkIHNwZWNpZmllcyBhIHBvbGljeSBvYmplY3QgdGhhdCBjb250cm9scyBhIG51bWJlciBvZgorICAgICAgICBhc3BlY3RzIG9mIHRoZSBwYXJzZXIncyBvcGVyYXRpb24uICBUaGUgZGVmYXVsdCBwb2xpY3kgbWFpbnRhaW5zCisgICAgICAgIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCisKICAgICAgICAgIiIiCi0gICAgICAgIGlmIGxlbihhcmdzKSA+PSAxOgotICAgICAgICAgICAgaWYgJ19jbGFzcycgaW4ga3dzOgotICAgICAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiTXVsdGlwbGUgdmFsdWVzIGZvciBrZXl3b3JkIGFyZyAnX2NsYXNzJyIpCi0gICAgICAgICAgICBrd3NbJ19jbGFzcyddID0gYXJnc1swXQotICAgICAgICBpZiBsZW4oYXJncykgPT0gMjoKLSAgICAgICAgICAgIGlmICdzdHJpY3QnIGluIGt3czoKLSAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIk11bHRpcGxlIHZhbHVlcyBmb3Iga2V5d29yZCBhcmcgJ3N0cmljdCciKQotICAgICAgICAgICAga3dzWydzdHJpY3QnXSA9IGFyZ3NbMV0KLSAgICAgICAgaWYgbGVuKGFyZ3MpID4gMjoKLSAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcignVG9vIG1hbnkgYXJndW1lbnRzJykKLSAgICAgICAgaWYgJ19jbGFzcycgaW4ga3dzOgotICAgICAgICAgICAgc2VsZi5fY2xhc3MgPSBrd3NbJ19jbGFzcyddCi0gICAgICAgICAgICBkZWwga3dzWydfY2xhc3MnXQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgc2VsZi5fY2xhc3MgPSBNZXNzYWdlCi0gICAgICAgIGlmICdzdHJpY3QnIGluIGt3czoKLSAgICAgICAgICAgIHdhcm5pbmdzLndhcm4oIidzdHJpY3QnIGFyZ3VtZW50IGlzIGRlcHJlY2F0ZWQgKGFuZCBpZ25vcmVkKSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIERlcHJlY2F0aW9uV2FybmluZywgMikKLSAgICAgICAgICAgIGRlbCBrd3NbJ3N0cmljdCddCi0gICAgICAgIGlmIGt3czoKLSAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcignVW5leHBlY3RlZCBrZXl3b3JkIGFyZ3VtZW50cycpCisgICAgICAgIHNlbGYuX2NsYXNzID0gX2NsYXNzCisgICAgICAgIHNlbGYucG9saWN5ID0gcG9saWN5CiAKICAgICBkZWYgcGFyc2Uoc2VsZiwgZnAsIGhlYWRlcnNvbmx5PUZhbHNlKToKICAgICAgICAgIiIiQ3JlYXRlIGEgbWVzc2FnZSBzdHJ1Y3R1cmUgZnJvbSB0aGUgZGF0YSBpbiBhIGZpbGUuCkBAIC02MSw3ICs0OCw3IEBACiAgICAgICAgIHBhcnNpbmcgYWZ0ZXIgcmVhZGluZyB0aGUgaGVhZGVycyBvciBub3QuICBUaGUgZGVmYXVsdCBpcyBGYWxzZSwKICAgICAgICAgbWVhbmluZyBpdCBwYXJzZXMgdGhlIGVudGlyZSBjb250ZW50cyBvZiB0aGUgZmlsZS4KICAgICAgICAgIiIiCi0gICAgICAgIGZlZWRwYXJzZXIgPSBGZWVkUGFyc2VyKHNlbGYuX2NsYXNzKQorICAgICAgICBmZWVkcGFyc2VyID0gRmVlZFBhcnNlcihzZWxmLl9jbGFzcywgcG9saWN5PXNlbGYucG9saWN5KQogICAgICAgICBpZiBoZWFkZXJzb25seToKICAgICAgICAgICAgIGZlZWRwYXJzZXIuX3NldF9oZWFkZXJzb25seSgpCiAgICAgICAgIHdoaWxlIFRydWU6CkBAIC0xMzQsMyArMTIxLDExIEBACiAgICAgICAgICIiIgogICAgICAgICB0ZXh0ID0gdGV4dC5kZWNvZGUoJ0FTQ0lJJywgZXJyb3JzPSdzdXJyb2dhdGVlc2NhcGUnKQogICAgICAgICByZXR1cm4gc2VsZi5wYXJzZXIucGFyc2VzdHIodGV4dCwgaGVhZGVyc29ubHkpCisKKworY2xhc3MgQnl0ZXNIZWFkZXJQYXJzZXIoQnl0ZXNQYXJzZXIpOgorICAgIGRlZiBwYXJzZShzZWxmLCBmcCwgaGVhZGVyc29ubHk9VHJ1ZSk6CisgICAgICAgIHJldHVybiBCeXRlc1BhcnNlci5wYXJzZShzZWxmLCBmcCwgaGVhZGVyc29ubHk9VHJ1ZSkKKworICAgIGRlZiBwYXJzZWJ5dGVzKHNlbGYsIHRleHQsIGhlYWRlcnNvbmx5PVRydWUpOgorICAgICAgICByZXR1cm4gQnl0ZXNQYXJzZXIucGFyc2VieXRlcyhzZWxmLCB0ZXh0LCBoZWFkZXJzb25seT1UcnVlKQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3BvbGljeS5weSBiL0xpYi9lbWFpbC9wb2xpY3kucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODg4NzdhMgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9lbWFpbC9wb2xpY3kucHkKQEAgLTAsMCArMSwxNzQgQEAKKyIiIlBvbGljeSBmcmFtZXdvcmsgZm9yIHRoZSBlbWFpbCBwYWNrYWdlLgorCitBbGxvd3MgZmluZSBncmFpbmVkIGZlYXR1cmUgY29udHJvbCBvZiBob3cgdGhlIHBhY2thZ2UgcGFyc2VzIGFuZCBlbWl0cyBkYXRhLgorIiIiCisKK19fYWxsX18gPSBbCisgICAgJ1BvbGljeScsCisgICAgJ2RlZmF1bHQnLAorICAgICdzdHJpY3QnLAorICAgICdTTVRQJywKKyAgICAnSFRUUCcsCisgICAgXQorCisKK2NsYXNzIF9Qb2xpY3lCYXNlOgorCisgICAgIiIiUG9saWN5IE9iamVjdCBiYXNpYyBmcmFtZXdvcmsuCisKKyAgICBUaGlzIGNsYXNzIGlzIHVzZWxlc3MgdW5sZXNzIHN1YmNsYXNzZWQuICBBIHN1YmNsYXNzIHNob3VsZCBkZWZpbmUKKyAgICBjbGFzcyBhdHRyaWJ1dGVzIHdpdGggZGVmYXVsdHMgZm9yIGFueSB2YWx1ZXMgdGhhdCBhcmUgdG8gYmUKKyAgICBtYW5hZ2VkIGJ5IHRoZSBQb2xpY3kgb2JqZWN0LiAgVGhlIGNvbnN0cnVjdG9yIHdpbGwgdGhlbiBhbGxvdworICAgIG5vbi1kZWZhdWx0IHZhbHVlcyB0byBiZSBzZXQgZm9yIHRoZXNlIGF0dHJpYnV0ZXMgYXQgaW5zdGFuY2UKKyAgICBjcmVhdGlvbiB0aW1lLiAgVGhlIGluc3RhbmNlIHdpbGwgYmUgY2FsbGFibGUsIHRha2luZyB0aGVzZSBzYW1lCisgICAgYXR0cmlidXRlcyBrZXl3b3JkIGFyZ3VtZW50cywgYW5kIHJldHVybmluZyBhIG5ldyBpbnN0YW5jZQorICAgIGlkZW50aWNhbCB0byB0aGUgY2FsbGVkIGluc3RhbmNlIGV4Y2VwdCBmb3IgdGhvc2UgdmFsdWVzIGNoYW5nZWQKKyAgICBieSB0aGUga2V5d29yZCBhcmd1bWVudHMuICBJbnN0YW5jZXMgbWF5IGJlIGFkZGVkLCB5aWVsZGluZyBuZXcKKyAgICBpbnN0YW5jZXMgd2l0aCBhbnkgbm9uLWRlZmF1bHQgdmFsdWVzIGZyb20gdGhlIHJpZ2h0IGhhbmQKKyAgICBvcGVyYW5kIG92ZXJyaWRpbmcgdGhvc2UgaW4gdGhlIGxlZnQgaGFuZCBvcGVyYW5kLiAgVGhhdCBpcywKKworICAgICAgICBBICsgQiA9PSBBKDxub24tZGVmYXVsdCB2YWx1ZXMgb2YgQj4pCisKKyAgICBUaGUgcmVwciBvZiBhbiBpbnN0YW5jZSBjYW4gYmUgdXNlZCB0byByZWNvbnN0cnVjdCB0aGUgb2JqZWN0CisgICAgaWYgYW5kIG9ubHkgaWYgdGhlIHJlcHIgb2YgdGhlIHZhbHVlcyBjYW4gYmUgdXNlZCB0byByZWNvbnN0cnVjdAorICAgIHRob3NlIHZhbHVlcy4KKworICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsICoqa3cpOgorICAgICAgICAiIiJDcmVhdGUgbmV3IFBvbGljeSwgcG9zc2libHkgb3ZlcnJpZGluZyBzb21lIGRlZmF1bHRzLgorCisgICAgICAgIFNlZSBjbGFzcyBkb2NzdHJpbmcgZm9yIGEgbGlzdCBvZiBvdmVycmlkYWJsZSBhdHRyaWJ1dGVzLgorCisgICAgICAgICIiIgorICAgICAgICBmb3IgbmFtZSwgdmFsdWUgaW4ga3cuaXRlbXMoKToKKyAgICAgICAgICAgIGlmIGhhc2F0dHIoc2VsZiwgbmFtZSk6CisgICAgICAgICAgICAgICAgc3VwZXIoX1BvbGljeUJhc2Usc2VsZikuX19zZXRhdHRyX18obmFtZSwgdmFsdWUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgInshcn0gaXMgYW4gaW52YWxpZCBrZXl3b3JkIGFyZ3VtZW50IGZvciB7fSIuZm9ybWF0KAorICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSwgc2VsZi5fX2NsYXNzX18uX19uYW1lX18pKQorCisgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgorICAgICAgICBhcmdzID0gWyAie309eyFyfSIuZm9ybWF0KG5hbWUsIHZhbHVlKQorICAgICAgICAgICAgICAgICBmb3IgbmFtZSwgdmFsdWUgaW4gc2VsZi5fX2RpY3RfXy5pdGVtcygpIF0KKyAgICAgICAgcmV0dXJuICJ7fSh7fSkiLmZvcm1hdChzZWxmLl9fY2xhc3NfXy5fX25hbWVfXywgYXJncyBpZiBhcmdzIGVsc2UgJycpCisKKyAgICBkZWYgY2xvbmUoc2VsZiwgKiprdyk6CisgICAgICAgICIiIlJldHVybiBhIG5ldyBpbnN0YW5jZSB3aXRoIHNwZWNpZmllZCBhdHRyaWJ1dGVzIGNoYW5nZWQuCisKKyAgICAgICAgVGhlIG5ldyBpbnN0YW5jZSBoYXMgdGhlIHNhbWUgYXR0cmlidXRlIHZhbHVlcyBhcyB0aGUgY3VycmVudCBvYmplY3QsCisgICAgICAgIGV4Y2VwdCBmb3IgdGhlIGNoYW5nZXMgcGFzc2VkIGluIGFzIGtleXdvcmQgYXJndW1lbnRzLgorCisgICAgICAgICIiIgorICAgICAgICBmb3IgYXR0ciwgdmFsdWUgaW4gc2VsZi5fX2RpY3RfXy5pdGVtcygpOgorICAgICAgICAgICAgaWYgYXR0ciBub3QgaW4ga3c6CisgICAgICAgICAgICAgICAga3dbYXR0cl0gPSB2YWx1ZQorICAgICAgICByZXR1cm4gc2VsZi5fX2NsYXNzX18oKiprdykKKworICAgIGRlZiBfX3NldGF0dHJfXyhzZWxmLCBuYW1lLCB2YWx1ZSk6CisgICAgICAgIGlmIGhhc2F0dHIoc2VsZiwgbmFtZSk6CisgICAgICAgICAgICBtc2cgPSAieyFyfSBvYmplY3QgYXR0cmlidXRlIHshcn0gaXMgcmVhZC1vbmx5IgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbXNnID0gInshcn0gb2JqZWN0IGhhcyBubyBhdHRyaWJ1dGUgeyFyfSIKKyAgICAgICAgcmFpc2UgQXR0cmlidXRlRXJyb3IobXNnLmZvcm1hdChzZWxmLl9fY2xhc3NfXy5fX25hbWVfXywgbmFtZSkpCisKKyAgICBkZWYgX19hZGRfXyhzZWxmLCBvdGhlcik6CisgICAgICAgICIiIk5vbi1kZWZhdWx0IHZhbHVlcyBmcm9tIHJpZ2h0IG9wZXJhbmQgb3ZlcnJpZGUgdGhvc2UgZnJvbSBsZWZ0LgorCisgICAgICAgIFRoZSBvYmplY3QgcmV0dXJuZWQgaXMgYSBuZXcgaW5zdGFuY2Ugb2YgdGhlIHN1YmNsYXNzLgorCisgICAgICAgICIiIgorICAgICAgICByZXR1cm4gc2VsZi5jbG9uZSgqKm90aGVyLl9fZGljdF9fKQorCisKK2NsYXNzIFBvbGljeShfUG9saWN5QmFzZSk6CisKKyAgICAiIiJDb250cm9scyBmb3IgaG93IG1lc3NhZ2VzIGFyZSBpbnRlcnByZXRlZCBhbmQgZm9ybWF0dGVkLgorCisgICAgTW9zdCBvZiB0aGUgY2xhc3NlcyBhbmQgbWFueSBvZiB0aGUgbWV0aG9kcyBpbiB0aGUgZW1haWwgcGFja2FnZQorICAgIGFjY2VwdCBQb2xpY3kgb2JqZWN0cyBhcyBwYXJhbWV0ZXJzLiAgQSBQb2xpY3kgb2JqZWN0IGNvbnRhaW5zIGEgc2V0CisgICAgb2YgdmFsdWVzIGFuZCBmdW5jdGlvbnMgdGhhdCBjb250cm9sIGhvdyBpbnB1dCBpcyBpbnRlcnByZXRlZCBhbmQgaG93CisgICAgb3V0cHV0IGlzIHJlbmRlcmVkLiAgRm9yIGV4YW1wbGUsIHRoZSBwYXJhbWV0ZXIgJ3JhaXNlX29uX2RlZmVjdCcKKyAgICBjb250cm9scyB3aGV0aGVyIG9yIG5vdCBhbiBSRkMgdmlvbGF0aW9uIHRocm93cyBhbiBlcnJvciBvciBub3QsCisgICAgd2hpbGUgJ21heF9saW5lX2xlbmd0aCcgY29udHJvbHMgdGhlIG1heGltdW0gbGVuZ3RoIG9mIG91dHB1dCBsaW5lcworICAgIHdoZW4gYSBNZXNzYWdlIGlzIHNlcmlhbGl6ZWQuCisKKyAgICBBbnkgdmFsaWQgYXR0cmlidXRlIG1heSBiZSBvdmVycmlkZGVuIHdoZW4gYSBQb2xpY3kgaXMgY3JlYXRlZCBieQorICAgIHBhc3NpbmcgaXQgYXMgYSBrZXl3b3JkIGFyZ3VtZW50IHRvIHRoZSBjb25zdHJ1Y3Rvci4gIFBvbGljeQorICAgIG9iamVjdHMgYXJlIGltbXV0YWJsZSwgYnV0IGEgbmV3IFBvbGljeSBvYmplY3QgY2FuIGJlIGNyZWF0ZWQKKyAgICB3aXRoIG9ubHkgY2VydGFpbiB2YWx1ZXMgY2hhbmdlZCBieSBjYWxsaW5nIHRoZSBQb2xpY3kgaW5zdGFuY2UKKyAgICB3aXRoIGtleXdvcmQgYXJndW1lbnRzLiAgUG9saWN5IG9iamVjdHMgY2FuIGFsc28gYmUgYWRkZWQsCisgICAgcHJvZHVjaW5nIGEgbmV3IFBvbGljeSBvYmplY3QgaW4gd2hpY2ggdGhlIG5vbi1kZWZhdWx0IGF0dHJpYnV0ZXMKKyAgICBzZXQgaW4gdGhlIHJpZ2h0IGhhbmQgb3BlcmFuZCBvdmVyd3JpdGUgdGhvc2Ugc3BlY2lmaWVkIGluIHRoZQorICAgIGxlZnQgb3BlcmFuZC4KKworICAgIFNldHRhYmxlIGF0dHJpYnV0ZXM6CisKKyAgICByYWlzZV9vbl9kZWZlY3QgICAgIC0tIElmIHRydWUsIHRoZW4gZGVmZWN0cyBzaG91bGQgYmUgcmFpc2VkCisgICAgICAgICAgICAgICAgICAgICAgICAgICBhcyBlcnJvcnMuICBEZWZhdWx0IEZhbHNlLgorCisgICAgbGluZXNlcCAgICAgICAgICAgICAtLSBzdHJpbmcgY29udGFpbmluZyB0aGUgdmFsdWUgdG8gdXNlIGFzCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXBhcmF0aW9uIGJldHdlZW4gb3V0cHV0IGxpbmVzLiAgRGVmYXVsdCAnXG4nLgorCisgICAgbXVzdF9iZV83Yml0ICAgICAgICAtLSBvdXRwdXQgbXVzdCBjb250YWluIG9ubHkgN2JpdCBjbGVhbiBkYXRhLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVmYXVsdCBGYWxzZS4KKworICAgIG1heF9saW5lX2xlbmd0aCAgICAgLS0gbWF4aW11bSBsZW5ndGggb2YgbGluZXMsIGV4Y2x1ZGluZyAnbGluZXNlcCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBkdXJpbmcgc2VyaWFsaXphdGlvbi4gIE5vbmUgbWVhbnMgbm8gbGluZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgd3JhcHBpbmcgaXMgZG9uZS4gIERlZmF1bHQgaXMgNzguCisKKyAgICBNZXRob2RzOgorCisgICAgcmVnaXN0ZXJfZGVmZWN0KG9iaiwgZGVmZWN0KQorICAgICAgICBkZWZlY3QgaXMgYSBEZWZlY3QgaW5zdGFuY2UuICBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBhcHBlbmRzIGRlZmVjdAorICAgICAgICB0byB0aGUgb2JqcyAnZGVmZWN0cycgYXR0cmlidXRlLgorCisgICAgaGFuZGxlX2RlZmVjdChvYmosIGRlZmVjdCkKKyAgICAgICAgaW50ZW5kZWQgdG8gYmUgY2FsbGVkIGJ5IHBhcnNlciBjb2RlIHRoYXQgZmluZHMgYSBkZWZlY3QuICBJZgorICAgICAgICByYWlzZV9vbl9kZWZlY3QgaXMgVHJ1ZSwgZGVmZWN0IGlzIHJhaXNlZCBhcyBhbiBlcnJvciwgb3RoZXJ3aXNlCisgICAgICAgIHJlZ2lzdGVyX2RlZmVjdCBpcyBjYWxsZWQuCisKKyAgICAiIiIKKworICAgIHJhaXNlX29uX2RlZmVjdCA9IEZhbHNlCisgICAgbGluZXNlcCA9ICdcbicKKyAgICBtdXN0X2JlXzdiaXQgPSBGYWxzZQorICAgIG1heF9saW5lX2xlbmd0aCA9IDc4CisKKyAgICBkZWYgaGFuZGxlX2RlZmVjdChzZWxmLCBvYmosIGRlZmVjdCk6CisgICAgICAgICIiIkJhc2VkIG9uIHBvbGljeSwgZWl0aGVyIHJhaXNlIGRlZmVjdCBvciBjYWxsIHJlZ2lzdGVyX2RlZmVjdC4KKworICAgICAgICAgICAgaGFuZGxlX2RlZmVjdChvYmosIGRlZmVjdCkKKworICAgICAgICBkZWZlY3Qgc2hvdWxkIGJlIGEgRGVmZWN0IHN1YmNsYXNzLCBidXQgaW4gYW55IGNhc2UgbXVzdCBiZSBhbgorICAgICAgICBFeGNlcHRpb24gc3ViY2xhc3MuICBvYmogaXMgdGhlIG9iamVjdCBvbiB3aGljaCB0aGUgZGVmZWN0IHNob3VsZCBiZQorICAgICAgICByZWdpc3RlcmVkIGlmIGl0IGlzIG5vdCByYWlzZWQuICBJZiB0aGUgcmFpc2Vfb25fZGVmZWN0IGlzIFRydWUsIHRoZQorICAgICAgICBkZWZlY3QgaXMgcmFpc2VkIGFzIGFuIGVycm9yLCBvdGhlcndpc2UgdGhlIG9iamVjdCBhbmQgdGhlIGRlZmVjdCBhcmUKKyAgICAgICAgcGFzc2VkIHRvIHJlZ2lzdGVyX2RlZmVjdC4KKworICAgICAgICBUaGlzIGNsYXNzIGlzIGludGVuZGVkIHRvIGJlIGNhbGxlZCBieSBwYXJzZXJzIHRoYXQgZGlzY292ZXIgZGVmZWN0cywKKyAgICAgICAgYW5kIHdpbGwgbm90IGJlIGNhbGxlZCBmcm9tIGNvZGUgdXNpbmcgdGhlIGxpYnJhcnkgdW5sZXNzIHRoYXQgY29kZSBpcworICAgICAgICBpbXBsZW1lbnRpbmcgYW4gYWx0ZXJuYXRlIHBhcnNlci4KKworICAgICAgICAiIiIKKyAgICAgICAgaWYgc2VsZi5yYWlzZV9vbl9kZWZlY3Q6CisgICAgICAgICAgICByYWlzZSBkZWZlY3QKKyAgICAgICAgc2VsZi5yZWdpc3Rlcl9kZWZlY3Qob2JqLCBkZWZlY3QpCisKKyAgICBkZWYgcmVnaXN0ZXJfZGVmZWN0KHNlbGYsIG9iaiwgZGVmZWN0KToKKyAgICAgICAgIiIiUmVjb3JkICdkZWZlY3QnIG9uICdvYmonLgorCisgICAgICAgIENhbGxlZCBieSBoYW5kbGVfZGVmZWN0IGlmIHJhaXNlX29uX2RlZmVjdCBpcyBGYWxzZS4gIFRoaXMgbWV0aG9kIGlzCisgICAgICAgIHBhcnQgb2YgdGhlIFBvbGljeSBBUEkgc28gdGhhdCBQb2xpY3kgc3ViY2xhc3NlcyBjYW4gaW1wbGVtZW50IGN1c3RvbQorICAgICAgICBkZWZlY3QgaGFuZGxpbmcuICBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBjYWxscyB0aGUgYXBwZW5kIG1ldGhvZAorICAgICAgICBvZiB0aGUgZGVmZWN0cyBhdHRyaWJ1dGUgb2Ygb2JqLgorCisgICAgICAgICIiIgorICAgICAgICBvYmouZGVmZWN0cy5hcHBlbmQoZGVmZWN0KQorCisKK2RlZmF1bHQgPSBQb2xpY3koKQorc3RyaWN0ID0gZGVmYXVsdC5jbG9uZShyYWlzZV9vbl9kZWZlY3Q9VHJ1ZSkKK1NNVFAgPSBkZWZhdWx0LmNsb25lKGxpbmVzZXA9J1xyXG4nKQorSFRUUCA9IGRlZmF1bHQuY2xvbmUobGluZXNlcD0nXHJcbicsIG1heF9saW5lX2xlbmd0aD1Ob25lKQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3V0aWxzLnB5IGIvTGliL2VtYWlsL3V0aWxzLnB5CmluZGV4IGFjNGRhMzcuLmFlY2VhNjUgMTAwNjQ0Ci0tLSBhL0xpYi9lbWFpbC91dGlscy5weQorKysgYi9MaWIvZW1haWwvdXRpbHMucHkKQEAgLTExLDEyICsxMSwxNCBAQAogICAgICdlbmNvZGVfcmZjMjIzMScsCiAgICAgJ2Zvcm1hdGFkZHInLAogICAgICdmb3JtYXRkYXRlJywKKyAgICAnZm9ybWF0X2RhdGV0aW1lJywKICAgICAnZ2V0YWRkcmVzc2VzJywKICAgICAnbWFrZV9tc2dpZCcsCiAgICAgJ21rdGltZV90eicsCiAgICAgJ3BhcnNlYWRkcicsCiAgICAgJ3BhcnNlZGF0ZScsCiAgICAgJ3BhcnNlZGF0ZV90eicsCisgICAgJ3BhcnNlZGF0ZV90b19kYXRldGltZScsCiAgICAgJ3VucXVvdGUnLAogICAgIF0KIApAQCAtMjYsNiArMjgsNyBAQAogaW1wb3J0IGJhc2U2NAogaW1wb3J0IHJhbmRvbQogaW1wb3J0IHNvY2tldAoraW1wb3J0IGRhdGV0aW1lCiBpbXBvcnQgdXJsbGliLnBhcnNlCiBpbXBvcnQgd2FybmluZ3MKIGZyb20gaW8gaW1wb3J0IFN0cmluZ0lPCkBAIC0zNywxMSArNDAsMTMgQEAKICMgV2UgbmVlZCB3b3JtYXJvdW5kcyBmb3IgYnVncyBpbiB0aGVzZSBtZXRob2RzIGluIG9sZGVyIFB5dGhvbnMgKHNlZSBiZWxvdykKIGZyb20gZW1haWwuX3BhcnNlYWRkciBpbXBvcnQgcGFyc2VkYXRlIGFzIF9wYXJzZWRhdGUKIGZyb20gZW1haWwuX3BhcnNlYWRkciBpbXBvcnQgcGFyc2VkYXRlX3R6IGFzIF9wYXJzZWRhdGVfdHoKK2Zyb20gZW1haWwuX3BhcnNlYWRkciBpbXBvcnQgX3BhcnNlZGF0ZV90eiBhcyBfX3BhcnNlZGF0ZV90egogCiBmcm9tIHF1b3ByaSBpbXBvcnQgZGVjb2Rlc3RyaW5nIGFzIF9xZGVjb2RlCiAKICMgSW50cmFwYWNrYWdlIGltcG9ydHMKIGZyb20gZW1haWwuZW5jb2RlcnMgaW1wb3J0IF9iZW5jb2RlLCBfcWVuY29kZQorZnJvbSBlbWFpbC5jaGFyc2V0IGltcG9ydCBDaGFyc2V0CiAKIENPTU1BU1BBQ0UgPSAnLCAnCiBFTVBUWVNUUklORyA9ICcnCkBAIC01NiwyMSArNjEsMzYgQEAKIAogIyBIZWxwZXJzCiAKLWRlZiBmb3JtYXRhZGRyKHBhaXIpOgorZGVmIGZvcm1hdGFkZHIocGFpciwgY2hhcnNldD0ndXRmLTgnKToKICAgICAiIiJUaGUgaW52ZXJzZSBvZiBwYXJzZWFkZHIoKSwgdGhpcyB0YWtlcyBhIDItdHVwbGUgb2YgdGhlIGZvcm0KICAgICAocmVhbG5hbWUsIGVtYWlsX2FkZHJlc3MpIGFuZCByZXR1cm5zIHRoZSBzdHJpbmcgdmFsdWUgc3VpdGFibGUKICAgICBmb3IgYW4gUkZDIDI4MjIgRnJvbSwgVG8gb3IgQ2MgaGVhZGVyLgogCiAgICAgSWYgdGhlIGZpcnN0IGVsZW1lbnQgb2YgcGFpciBpcyBmYWxzZSwgdGhlbiB0aGUgc2Vjb25kIGVsZW1lbnQgaXMKICAgICByZXR1cm5lZCB1bm1vZGlmaWVkLgorCisgICAgT3B0aW9uYWwgY2hhcnNldCBpZiBnaXZlbiBpcyB0aGUgY2hhcmFjdGVyIHNldCB0aGF0IGlzIHVzZWQgdG8gZW5jb2RlCisgICAgcmVhbG5hbWUgaW4gY2FzZSByZWFsbmFtZSBpcyBub3QgQVNDSUkgc2FmZS4gIENhbiBiZSBhbiBpbnN0YW5jZSBvZiBzdHIgb3IKKyAgICBhIENoYXJzZXQtbGlrZSBvYmplY3Qgd2hpY2ggaGFzIGEgaGVhZGVyX2VuY29kZSBtZXRob2QuICBEZWZhdWx0IGlzCisgICAgJ3V0Zi04Jy4KICAgICAiIiIKICAgICBuYW1lLCBhZGRyZXNzID0gcGFpcgorICAgICMgVGhlIGFkZHJlc3MgTVVTVCAocGVyIFJGQykgYmUgYXNjaWksIHNvIHRocm93IGEgVW5pY29kZUVycm9yIGlmIGl0IGlzbid0LgorICAgIGFkZHJlc3MuZW5jb2RlKCdhc2NpaScpCiAgICAgaWYgbmFtZToKLSAgICAgICAgcXVvdGVzID0gJycKLSAgICAgICAgaWYgc3BlY2lhbHNyZS5zZWFyY2gobmFtZSk6Ci0gICAgICAgICAgICBxdW90ZXMgPSAnIicKLSAgICAgICAgbmFtZSA9IGVzY2FwZXNyZS5zdWIocidcXFxnPDA+JywgbmFtZSkKLSAgICAgICAgcmV0dXJuICclcyVzJXMgPCVzPicgJSAocXVvdGVzLCBuYW1lLCBxdW90ZXMsIGFkZHJlc3MpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG5hbWUuZW5jb2RlKCdhc2NpaScpCisgICAgICAgIGV4Y2VwdCBVbmljb2RlRW5jb2RlRXJyb3I6CisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGNoYXJzZXQsIHN0cik6CisgICAgICAgICAgICAgICAgY2hhcnNldCA9IENoYXJzZXQoY2hhcnNldCkKKyAgICAgICAgICAgIGVuY29kZWRfbmFtZSA9IGNoYXJzZXQuaGVhZGVyX2VuY29kZShuYW1lKQorICAgICAgICAgICAgcmV0dXJuICIlcyA8JXM+IiAlIChlbmNvZGVkX25hbWUsIGFkZHJlc3MpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBxdW90ZXMgPSAnJworICAgICAgICAgICAgaWYgc3BlY2lhbHNyZS5zZWFyY2gobmFtZSk6CisgICAgICAgICAgICAgICAgcXVvdGVzID0gJyInCisgICAgICAgICAgICBuYW1lID0gZXNjYXBlc3JlLnN1YihyJ1xcXGc8MD4nLCBuYW1lKQorICAgICAgICAgICAgcmV0dXJuICclcyVzJXMgPCVzPicgJSAocXVvdGVzLCBuYW1lLCBxdW90ZXMsIGFkZHJlc3MpCiAgICAgcmV0dXJuIGFkZHJlc3MKIAogCkBAIC05NCw2ICsxMTQsMTQgQEAKICAgJycnLCByZS5WRVJCT1NFIHwgcmUuSUdOT1JFQ0FTRSkKIAogCitkZWYgX2Zvcm1hdF90aW1ldHVwbGVfYW5kX3pvbmUodGltZXR1cGxlLCB6b25lKToKKyAgICByZXR1cm4gJyVzLCAlMDJkICVzICUwNGQgJTAyZDolMDJkOiUwMmQgJXMnICUgKAorICAgICAgICBbJ01vbicsICdUdWUnLCAnV2VkJywgJ1RodScsICdGcmknLCAnU2F0JywgJ1N1biddW3RpbWV0dXBsZVs2XV0sCisgICAgICAgIHRpbWV0dXBsZVsyXSwKKyAgICAgICAgWydKYW4nLCAnRmViJywgJ01hcicsICdBcHInLCAnTWF5JywgJ0p1bicsCisgICAgICAgICAnSnVsJywgJ0F1ZycsICdTZXAnLCAnT2N0JywgJ05vdicsICdEZWMnXVt0aW1ldHVwbGVbMV0gLSAxXSwKKyAgICAgICAgdGltZXR1cGxlWzBdLCB0aW1ldHVwbGVbM10sIHRpbWV0dXBsZVs0XSwgdGltZXR1cGxlWzVdLAorICAgICAgICB6b25lKQogCiBkZWYgZm9ybWF0ZGF0ZSh0aW1ldmFsPU5vbmUsIGxvY2FsdGltZT1GYWxzZSwgdXNlZ210PUZhbHNlKToKICAgICAiIiJSZXR1cm5zIGEgZGF0ZSBzdHJpbmcgYXMgc3BlY2lmaWVkIGJ5IFJGQyAyODIyLCBlLmcuOgpAQCAtMTM4LDE0ICsxNjYsMjUgQEAKICAgICAgICAgICAgIHpvbmUgPSAnR01UJwogICAgICAgICBlbHNlOgogICAgICAgICAgICAgem9uZSA9ICctMDAwMCcKLSAgICByZXR1cm4gJyVzLCAlMDJkICVzICUwNGQgJTAyZDolMDJkOiUwMmQgJXMnICUgKAotICAgICAgICBbJ01vbicsICdUdWUnLCAnV2VkJywgJ1RodScsICdGcmknLCAnU2F0JywgJ1N1biddW25vd1s2XV0sCi0gICAgICAgIG5vd1syXSwKLSAgICAgICAgWydKYW4nLCAnRmViJywgJ01hcicsICdBcHInLCAnTWF5JywgJ0p1bicsCi0gICAgICAgICAnSnVsJywgJ0F1ZycsICdTZXAnLCAnT2N0JywgJ05vdicsICdEZWMnXVtub3dbMV0gLSAxXSwKLSAgICAgICAgbm93WzBdLCBub3dbM10sIG5vd1s0XSwgbm93WzVdLAotICAgICAgICB6b25lKQorICAgIHJldHVybiBfZm9ybWF0X3RpbWV0dXBsZV9hbmRfem9uZShub3csIHpvbmUpCiAKK2RlZiBmb3JtYXRfZGF0ZXRpbWUoZHQsIHVzZWdtdD1GYWxzZSk6CisgICAgIiIiVHVybiBhIGRhdGV0aW1lIGludG8gYSBkYXRlIHN0cmluZyBhcyBzcGVjaWZpZWQgaW4gUkZDIDI4MjIuCisKKyAgICBJZiB1c2VnbXQgaXMgVHJ1ZSwgZHQgbXVzdCBiZSBhbiBhd2FyZSBkYXRldGltZSB3aXRoIGFuIG9mZnNldCBvZiB6ZXJvLiAgSW4KKyAgICB0aGlzIGNhc2UgJ0dNVCcgd2lsbCBiZSByZW5kZXJlZCBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgKzAwMDAgcmVxdWlyZWQgYnkKKyAgICBSRkMyODIyLiAgVGhpcyBpcyB0byBzdXBwb3J0IEhUVFAgaGVhZGVycyBpbnZvbHZpbmcgZGF0ZSBzdGFtcHMuCisgICAgIiIiCisgICAgbm93ID0gZHQudGltZXR1cGxlKCkKKyAgICBpZiB1c2VnbXQ6CisgICAgICAgIGlmIGR0LnR6aW5mbyBpcyBOb25lIG9yIGR0LnR6aW5mbyAhPSBkYXRldGltZS50aW1lem9uZS51dGM6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJ1c2VnbXQgb3B0aW9uIHJlcXVpcmVzIGEgVVRDIGRhdGV0aW1lIikKKyAgICAgICAgem9uZSA9ICdHTVQnCisgICAgZWxpZiBkdC50emluZm8gaXMgTm9uZToKKyAgICAgICAgem9uZSA9ICctMDAwMCcKKyAgICBlbHNlOgorICAgICAgICB6b25lID0gZHQuc3RyZnRpbWUoIiV6IikKKyAgICByZXR1cm4gX2Zvcm1hdF90aW1ldHVwbGVfYW5kX3pvbmUobm93LCB6b25lKQogCiAKIGRlZiBtYWtlX21zZ2lkKGlkc3RyaW5nPU5vbmUsIGRvbWFpbj1Ob25lKToKQEAgLTE4Nyw2ICsyMjYsMTUgQEAKICAgICAgICAgcmV0dXJuIE5vbmUKICAgICByZXR1cm4gX3BhcnNlZGF0ZV90eihkYXRhKQogCitkZWYgcGFyc2VkYXRlX3RvX2RhdGV0aW1lKGRhdGEpOgorICAgIGlmIG5vdCBkYXRhOgorICAgICAgICByZXR1cm4gTm9uZQorICAgICpkdHVwbGUsIHR6ID0gX19wYXJzZWRhdGVfdHooZGF0YSkKKyAgICBpZiB0eiBpcyBOb25lOgorICAgICAgICByZXR1cm4gZGF0ZXRpbWUuZGF0ZXRpbWUoKmR0dXBsZVs6Nl0pCisgICAgcmV0dXJuIGRhdGV0aW1lLmRhdGV0aW1lKCpkdHVwbGVbOjZdLAorICAgICAgICAgICAgdHppbmZvPWRhdGV0aW1lLnRpbWV6b25lKGRhdGV0aW1lLnRpbWVkZWx0YShzZWNvbmRzPXR6KSkpCisKIAogZGVmIHBhcnNlYWRkcihhZGRyKToKICAgICBhZGRycyA9IF9BZGRyZXNzTGlzdChhZGRyKS5hZGRyZXNzbGlzdApkaWZmIC0tZ2l0IGEvTGliL2VuY29kaW5ncy9jcDY1MDAxLnB5IGIvTGliL2VuY29kaW5ncy9jcDY1MDAxLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI4N2ViODcKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvZW5jb2RpbmdzL2NwNjUwMDEucHkKQEAgLTAsMCArMSw0MCBAQAorIiIiCitDb2RlIHBhZ2UgNjUwMDE6IFdpbmRvd3MgVVRGLTggKENQX1VURjgpLgorIiIiCisKK2ltcG9ydCBjb2RlY3MKK2ltcG9ydCBmdW5jdG9vbHMKKworaWYgbm90IGhhc2F0dHIoY29kZWNzLCAnY29kZV9wYWdlX2VuY29kZScpOgorICAgIHJhaXNlIExvb2t1cEVycm9yKCJjcDY1MDAxIGVuY29kaW5nIGlzIG9ubHkgYXZhaWxhYmxlIG9uIFdpbmRvd3MiKQorCisjIyMgQ29kZWMgQVBJcworCitlbmNvZGUgPSBmdW5jdG9vbHMucGFydGlhbChjb2RlY3MuY29kZV9wYWdlX2VuY29kZSwgNjUwMDEpCitkZWNvZGUgPSBmdW5jdG9vbHMucGFydGlhbChjb2RlY3MuY29kZV9wYWdlX2RlY29kZSwgNjUwMDEpCisKK2NsYXNzIEluY3JlbWVudGFsRW5jb2Rlcihjb2RlY3MuSW5jcmVtZW50YWxFbmNvZGVyKToKKyAgICBkZWYgZW5jb2RlKHNlbGYsIGlucHV0LCBmaW5hbD1GYWxzZSk6CisgICAgICAgIHJldHVybiBlbmNvZGUoaW5wdXQsIHNlbGYuZXJyb3JzKVswXQorCitjbGFzcyBJbmNyZW1lbnRhbERlY29kZXIoY29kZWNzLkJ1ZmZlcmVkSW5jcmVtZW50YWxEZWNvZGVyKToKKyAgICBfYnVmZmVyX2RlY29kZSA9IGRlY29kZQorCitjbGFzcyBTdHJlYW1Xcml0ZXIoY29kZWNzLlN0cmVhbVdyaXRlcik6CisgICAgZW5jb2RlID0gZW5jb2RlCisKK2NsYXNzIFN0cmVhbVJlYWRlcihjb2RlY3MuU3RyZWFtUmVhZGVyKToKKyAgICBkZWNvZGUgPSBkZWNvZGUKKworIyMjIGVuY29kaW5ncyBtb2R1bGUgQVBJCisKK2RlZiBnZXRyZWdlbnRyeSgpOgorICAgIHJldHVybiBjb2RlY3MuQ29kZWNJbmZvKAorICAgICAgICBuYW1lPSdjcDY1MDAxJywKKyAgICAgICAgZW5jb2RlPWVuY29kZSwKKyAgICAgICAgZGVjb2RlPWRlY29kZSwKKyAgICAgICAgaW5jcmVtZW50YWxlbmNvZGVyPUluY3JlbWVudGFsRW5jb2RlciwKKyAgICAgICAgaW5jcmVtZW50YWxkZWNvZGVyPUluY3JlbWVudGFsRGVjb2RlciwKKyAgICAgICAgc3RyZWFtcmVhZGVyPVN0cmVhbVJlYWRlciwKKyAgICAgICAgc3RyZWFtd3JpdGVyPVN0cmVhbVdyaXRlciwKKyAgICApCmRpZmYgLS1naXQgYS9MaWIvZW5jb2RpbmdzL2lkbmEucHkgYi9MaWIvZW5jb2RpbmdzL2lkbmEucHkKaW5kZXggNTgzYmRmMS4uZWE0MDU4NSAxMDA2NDQKLS0tIGEvTGliL2VuY29kaW5ncy9pZG5hLnB5CisrKyBiL0xpYi9lbmNvZGluZ3MvaWRuYS5weQpAQCAtMTUzLDYgKzE1MywyMCBAQAogICAgICAgICBpZiBub3QgaW5wdXQ6CiAgICAgICAgICAgICByZXR1cm4gYicnLCAwCiAKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmVzdWx0ID0gaW5wdXQuZW5jb2RlKCdhc2NpaScpCisgICAgICAgIGV4Y2VwdCBVbmljb2RlRW5jb2RlRXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIEFTQ0lJIG5hbWU6IGZhc3QgcGF0aAorICAgICAgICAgICAgbGFiZWxzID0gcmVzdWx0LnNwbGl0KGInLicpCisgICAgICAgICAgICBmb3IgbGFiZWwgaW4gbGFiZWxzWzotMV06CisgICAgICAgICAgICAgICAgaWYgbm90ICgwIDwgbGVuKGxhYmVsKSA8IDY0KToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgVW5pY29kZUVycm9yKCJsYWJlbCBlbXB0eSBvciB0b28gbG9uZyIpCisgICAgICAgICAgICBpZiBsZW4obGFiZWxzWy0xXSkgPj0gNjQ6CisgICAgICAgICAgICAgICAgcmFpc2UgVW5pY29kZUVycm9yKCJsYWJlbCB0b28gbG9uZyIpCisgICAgICAgICAgICByZXR1cm4gcmVzdWx0LCBsZW4oaW5wdXQpCisKICAgICAgICAgcmVzdWx0ID0gYnl0ZWFycmF5KCkKICAgICAgICAgbGFiZWxzID0gZG90cy5zcGxpdChpbnB1dCkKICAgICAgICAgaWYgbGFiZWxzIGFuZCBub3QgbGFiZWxzWy0xXToKQEAgLTE3OSw2ICsxOTMsMTQgQEAKICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoaW5wdXQsIGJ5dGVzKToKICAgICAgICAgICAgICMgWFhYIG9idmlvdXNseSB3cm9uZywgc2VlICMzMjMyCiAgICAgICAgICAgICBpbnB1dCA9IGJ5dGVzKGlucHV0KQorCisgICAgICAgIGlmIGFjZV9wcmVmaXggbm90IGluIGlucHV0OgorICAgICAgICAgICAgIyBGYXN0IHBhdGgKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICByZXR1cm4gaW5wdXQuZGVjb2RlKCdhc2NpaScpLCBsZW4oaW5wdXQpCisgICAgICAgICAgICBleGNlcHQgVW5pY29kZURlY29kZUVycm9yOgorICAgICAgICAgICAgICAgIHBhc3MKKwogICAgICAgICBsYWJlbHMgPSBpbnB1dC5zcGxpdChiIi4iKQogCiAgICAgICAgIGlmIGxhYmVscyBhbmQgbGVuKGxhYmVsc1stMV0pID09IDA6CmRpZmYgLS1naXQgYS9MaWIvZmlsZWlucHV0LnB5IGIvTGliL2ZpbGVpbnB1dC5weQppbmRleCA1NTRiZWIyLi5kYmJiYjIxIDEwMDY0NAotLS0gYS9MaWIvZmlsZWlucHV0LnB5CisrKyBiL0xpYi9maWxlaW5wdXQucHkKQEAgLTM5OCw5ICszOTgsOCBAQAogCiAKIGRlZiBob29rX2VuY29kZWQoZW5jb2RpbmcpOgotICAgIGltcG9ydCBjb2RlY3MKICAgICBkZWYgb3Blbmhvb2soZmlsZW5hbWUsIG1vZGUpOgotICAgICAgICByZXR1cm4gY29kZWNzLm9wZW4oZmlsZW5hbWUsIG1vZGUsIGVuY29kaW5nKQorICAgICAgICByZXR1cm4gb3BlbihmaWxlbmFtZSwgbW9kZSwgZW5jb2Rpbmc9ZW5jb2RpbmcpCiAgICAgcmV0dXJuIG9wZW5ob29rCiAKIApkaWZmIC0tZ2l0IGEvTGliL2ZubWF0Y2gucHkgYi9MaWIvZm5tYXRjaC5weQppbmRleCA3MjZmYmU1Li5mNDQ2NzY5IDEwMDY0NAotLS0gYS9MaWIvZm5tYXRjaC5weQorKysgYi9MaWIvZm5tYXRjaC5weQpAQCAtMzUsOSArMzUsOSBAQAogICAgIHBhdCA9IG9zLnBhdGgubm9ybWNhc2UocGF0KQogICAgIHJldHVybiBmbm1hdGNoY2FzZShuYW1lLCBwYXQpCiAKLUBmdW5jdG9vbHMubHJ1X2NhY2hlKG1heHNpemU9MjUwKQotZGVmIF9jb21waWxlX3BhdHRlcm4ocGF0LCBpc19ieXRlcz1GYWxzZSk6Ci0gICAgaWYgaXNfYnl0ZXM6CitAZnVuY3Rvb2xzLmxydV9jYWNoZShtYXhzaXplPTI1MCwgdHlwZWQ9VHJ1ZSkKK2RlZiBfY29tcGlsZV9wYXR0ZXJuKHBhdCk6CisgICAgaWYgaXNpbnN0YW5jZShwYXQsIGJ5dGVzKToKICAgICAgICAgcGF0X3N0ciA9IHN0cihwYXQsICdJU08tODg1OS0xJykKICAgICAgICAgcmVzX3N0ciA9IHRyYW5zbGF0ZShwYXRfc3RyKQogICAgICAgICByZXMgPSBieXRlcyhyZXNfc3RyLCAnSVNPLTg4NTktMScpCkBAIC00OSw3ICs0OSw3IEBACiAgICAgIiIiUmV0dXJuIHRoZSBzdWJzZXQgb2YgdGhlIGxpc3QgTkFNRVMgdGhhdCBtYXRjaCBQQVQuIiIiCiAgICAgcmVzdWx0ID0gW10KICAgICBwYXQgPSBvcy5wYXRoLm5vcm1jYXNlKHBhdCkKLSAgICBtYXRjaCA9IF9jb21waWxlX3BhdHRlcm4ocGF0LCBpc2luc3RhbmNlKHBhdCwgYnl0ZXMpKQorICAgIG1hdGNoID0gX2NvbXBpbGVfcGF0dGVybihwYXQpCiAgICAgaWYgb3MucGF0aCBpcyBwb3NpeHBhdGg6CiAgICAgICAgICMgbm9ybWNhc2Ugb24gcG9zaXggaXMgTk9QLiBPcHRpbWl6ZSBpdCBhd2F5IGZyb20gdGhlIGxvb3AuCiAgICAgICAgIGZvciBuYW1lIGluIG5hbWVzOgpAQCAtNjcsNyArNjcsNyBAQAogICAgIFRoaXMgaXMgYSB2ZXJzaW9uIG9mIGZubWF0Y2goKSB3aGljaCBkb2Vzbid0IGNhc2Utbm9ybWFsaXplCiAgICAgaXRzIGFyZ3VtZW50cy4KICAgICAiIiIKLSAgICBtYXRjaCA9IF9jb21waWxlX3BhdHRlcm4ocGF0LCBpc2luc3RhbmNlKHBhdCwgYnl0ZXMpKQorICAgIG1hdGNoID0gX2NvbXBpbGVfcGF0dGVybihwYXQpCiAgICAgcmV0dXJuIG1hdGNoKG5hbWUpIGlzIG5vdCBOb25lCiAKIApkaWZmIC0tZ2l0IGEvTGliL2Z0cGxpYi5weSBiL0xpYi9mdHBsaWIucHkKaW5kZXggOGU1MzAyMy4uMTg4ODdhNiAxMDA2NDQKLS0tIGEvTGliL2Z0cGxpYi5weQorKysgYi9MaWIvZnRwbGliLnB5CkBAIC0xMDAsMTQgKzEwMCwxNSBAQAogICAgIGZpbGUgPSBOb25lCiAgICAgd2VsY29tZSA9IE5vbmUKICAgICBwYXNzaXZlc2VydmVyID0gMQotICAgIGVuY29kaW5nID0gImxhdGluMSIKKyAgICBlbmNvZGluZyA9ICJsYXRpbi0xIgogCiAgICAgIyBJbml0aWFsaXphdGlvbiBtZXRob2QgKGNhbGxlZCBieSBjbGFzcyBpbnN0YW50aWF0aW9uKS4KICAgICAjIEluaXRpYWxpemUgaG9zdCB0byBsb2NhbGhvc3QsIHBvcnQgdG8gc3RhbmRhcmQgZnRwIHBvcnQKICAgICAjIE9wdGlvbmFsIGFyZ3VtZW50cyBhcmUgaG9zdCAoZm9yIGNvbm5lY3QoKSksCiAgICAgIyBhbmQgdXNlciwgcGFzc3dkLCBhY2N0IChmb3IgbG9naW4oKSkKICAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdD0nJywgdXNlcj0nJywgcGFzc3dkPScnLCBhY2N0PScnLAotICAgICAgICAgICAgICAgICB0aW1lb3V0PV9HTE9CQUxfREVGQVVMVF9USU1FT1VUKToKKyAgICAgICAgICAgICAgICAgdGltZW91dD1fR0xPQkFMX0RFRkFVTFRfVElNRU9VVCwgc291cmNlX2FkZHJlc3M9Tm9uZSk6CisgICAgICAgIHNlbGYuc291cmNlX2FkZHJlc3MgPSBzb3VyY2VfYWRkcmVzcwogICAgICAgICBzZWxmLnRpbWVvdXQgPSB0aW1lb3V0CiAgICAgICAgIGlmIGhvc3Q6CiAgICAgICAgICAgICBzZWxmLmNvbm5lY3QoaG9zdCkKQEAgLTEyOCwxMCArMTI5LDEyIEBACiAgICAgICAgICAgICAgICAgaWYgc2VsZi5zb2NrIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgICAgICAgICBzZWxmLmNsb3NlKCkKIAotICAgIGRlZiBjb25uZWN0KHNlbGYsIGhvc3Q9JycsIHBvcnQ9MCwgdGltZW91dD0tOTk5KToKKyAgICBkZWYgY29ubmVjdChzZWxmLCBob3N0PScnLCBwb3J0PTAsIHRpbWVvdXQ9LTk5OSwgc291cmNlX2FkZHJlc3M9Tm9uZSk6CiAgICAgICAgICcnJ0Nvbm5lY3QgdG8gaG9zdC4gIEFyZ3VtZW50cyBhcmU6CiAgICAgICAgICAtIGhvc3Q6IGhvc3RuYW1lIHRvIGNvbm5lY3QgdG8gKHN0cmluZywgZGVmYXVsdCBwcmV2aW91cyBob3N0KQogICAgICAgICAgLSBwb3J0OiBwb3J0IHRvIGNvbm5lY3QgdG8gKGludGVnZXIsIGRlZmF1bHQgcHJldmlvdXMgcG9ydCkKKyAgICAgICAgIC0gc291cmNlX2FkZHJlc3M6IGEgMi10dXBsZSAoaG9zdCwgcG9ydCkgZm9yIHRoZSBzb2NrZXQgdG8gYmluZAorICAgICAgICAgICB0byBhcyBpdHMgc291cmNlIGFkZHJlc3MgYmVmb3JlIGNvbm5lY3RpbmcuCiAgICAgICAgICcnJwogICAgICAgICBpZiBob3N0ICE9ICcnOgogICAgICAgICAgICAgc2VsZi5ob3N0ID0gaG9zdApAQCAtMTM5LDcgKzE0MiwxMCBAQAogICAgICAgICAgICAgc2VsZi5wb3J0ID0gcG9ydAogICAgICAgICBpZiB0aW1lb3V0ICE9IC05OTk6CiAgICAgICAgICAgICBzZWxmLnRpbWVvdXQgPSB0aW1lb3V0Ci0gICAgICAgIHNlbGYuc29jayA9IHNvY2tldC5jcmVhdGVfY29ubmVjdGlvbigoc2VsZi5ob3N0LCBzZWxmLnBvcnQpLCBzZWxmLnRpbWVvdXQpCisgICAgICAgIGlmIHNvdXJjZV9hZGRyZXNzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5zb3VyY2VfYWRkcmVzcyA9IHNvdXJjZV9hZGRyZXNzCisgICAgICAgIHNlbGYuc29jayA9IHNvY2tldC5jcmVhdGVfY29ubmVjdGlvbigoc2VsZi5ob3N0LCBzZWxmLnBvcnQpLCBzZWxmLnRpbWVvdXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2VfYWRkcmVzcz1zZWxmLnNvdXJjZV9hZGRyZXNzKQogICAgICAgICBzZWxmLmFmID0gc2VsZi5zb2NrLmZhbWlseQogICAgICAgICBzZWxmLmZpbGUgPSBzZWxmLnNvY2subWFrZWZpbGUoJ3InLCBlbmNvZGluZz1zZWxmLmVuY29kaW5nKQogICAgICAgICBzZWxmLndlbGNvbWUgPSBzZWxmLmdldHJlc3AoKQpAQCAtMTY5LDEwICsxNzUsOCBAQAogCiAgICAgIyBJbnRlcm5hbDogInNhbml0aXplIiBhIHN0cmluZyBmb3IgcHJpbnRpbmcKICAgICBkZWYgc2FuaXRpemUoc2VsZiwgcyk6Ci0gICAgICAgIGlmIHNbOjVdID09ICdwYXNzICcgb3Igc1s6NV0gPT0gJ1BBU1MgJzoKLSAgICAgICAgICAgIGkgPSBsZW4ocykKLSAgICAgICAgICAgIHdoaWxlIGkgPiA1IGFuZCBzW2ktMV0gaW4geydccicsICdcbid9OgotICAgICAgICAgICAgICAgIGkgPSBpLTEKKyAgICAgICAgaWYgc1s6NV0gaW4geydwYXNzICcsICdQQVNTICd9OgorICAgICAgICAgICAgaSA9IGxlbihzLnJzdHJpcCgnXHJcbicpKQogICAgICAgICAgICAgcyA9IHNbOjVdICsgJyonKihpLTUpICsgc1tpOl0KICAgICAgICAgcmV0dXJuIHJlcHIocykKIApAQCAtMzM1LDcgKzMzOSw4IEBACiAgICAgICAgIHNpemUgPSBOb25lCiAgICAgICAgIGlmIHNlbGYucGFzc2l2ZXNlcnZlcjoKICAgICAgICAgICAgIGhvc3QsIHBvcnQgPSBzZWxmLm1ha2VwYXN2KCkKLSAgICAgICAgICAgIGNvbm4gPSBzb2NrZXQuY3JlYXRlX2Nvbm5lY3Rpb24oKGhvc3QsIHBvcnQpLCBzZWxmLnRpbWVvdXQpCisgICAgICAgICAgICBjb25uID0gc29ja2V0LmNyZWF0ZV9jb25uZWN0aW9uKChob3N0LCBwb3J0KSwgc2VsZi50aW1lb3V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2VfYWRkcmVzcz1zZWxmLnNvdXJjZV9hZGRyZXNzKQogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIGlmIHJlc3QgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2VuZGNtZCgiUkVTVCAlcyIgJSByZXN0KQpAQCAtMzU0LDggKzM1OSw3IEBACiAgICAgICAgICAgICAgICAgY29ubi5jbG9zZSgpCiAgICAgICAgICAgICAgICAgcmFpc2UKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNvY2sgPSBzZWxmLm1ha2Vwb3J0KCkKLSAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggc2VsZi5tYWtlcG9ydCgpIGFzIHNvY2s6CiAgICAgICAgICAgICAgICAgaWYgcmVzdCBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICAgICAgc2VsZi5zZW5kY21kKCJSRVNUICVzIiAlIHJlc3QpCiAgICAgICAgICAgICAgICAgcmVzcCA9IHNlbGYuc2VuZGNtZChjbWQpCkBAIC0zNjcsOCArMzcxLDYgQEAKICAgICAgICAgICAgICAgICBjb25uLCBzb2NrYWRkciA9IHNvY2suYWNjZXB0KCkKICAgICAgICAgICAgICAgICBpZiBzZWxmLnRpbWVvdXQgaXMgbm90IF9HTE9CQUxfREVGQVVMVF9USU1FT1VUOgogICAgICAgICAgICAgICAgICAgICBjb25uLnNldHRpbWVvdXQoc2VsZi50aW1lb3V0KQotICAgICAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgICAgICBzb2NrLmNsb3NlKCkKICAgICAgICAgaWYgcmVzcFs6M10gPT0gJzE1MCc6CiAgICAgICAgICAgICAjIHRoaXMgaXMgY29uZGl0aW9uYWwgaW4gY2FzZSB3ZSByZWNlaXZlZCBhIDEyNQogICAgICAgICAgICAgc2l6ZSA9IHBhcnNlMTUwKHJlc3ApCkBAIC00MjYsNyArNDI4LDcgQEAKICAgICAgICAgIiIiUmV0cmlldmUgZGF0YSBpbiBsaW5lIG1vZGUuICBBIG5ldyBwb3J0IGlzIGNyZWF0ZWQgZm9yIHlvdS4KIAogICAgICAgICBBcmdzOgotICAgICAgICAgIGNtZDogQSBSRVRSLCBMSVNULCBOTFNULCBvciBNTFNEIGNvbW1hbmQuCisgICAgICAgICAgY21kOiBBIFJFVFIsIExJU1QsIG9yIE5MU1QgY29tbWFuZC4KICAgICAgICAgICBjYWxsYmFjazogQW4gb3B0aW9uYWwgc2luZ2xlIHBhcmFtZXRlciBjYWxsYWJsZSB0aGF0IGlzIGNhbGxlZAogICAgICAgICAgICAgICAgICAgICBmb3IgZWFjaCBsaW5lIHdpdGggdGhlIHRyYWlsaW5nIENSTEYgc3RyaXBwZWQuCiAgICAgICAgICAgICAgICAgICAgIFtkZWZhdWx0OiBwcmludF9saW5lKCldCkBAIC01MjcsNiArNTI5LDM0IEBACiAgICAgICAgICAgICAgICAgY21kID0gY21kICsgKCcgJyArIGFyZykKICAgICAgICAgc2VsZi5yZXRybGluZXMoY21kLCBmdW5jKQogCisgICAgZGVmIG1sc2Qoc2VsZiwgcGF0aD0iIiwgZmFjdHM9W10pOgorICAgICAgICAnJydMaXN0IGEgZGlyZWN0b3J5IGluIGEgc3RhbmRhcmRpemVkIGZvcm1hdCBieSB1c2luZyBNTFNECisgICAgICAgIGNvbW1hbmQgKFJGQy0zNjU5KS4gSWYgcGF0aCBpcyBvbWl0dGVkIHRoZSBjdXJyZW50IGRpcmVjdG9yeQorICAgICAgICBpcyBhc3N1bWVkLiAiZmFjdHMiIGlzIGEgbGlzdCBvZiBzdHJpbmdzIHJlcHJlc2VudGluZyB0aGUgdHlwZQorICAgICAgICBvZiBpbmZvcm1hdGlvbiBkZXNpcmVkIChlLmcuIFsidHlwZSIsICJzaXplIiwgInBlcm0iXSkuCisKKyAgICAgICAgUmV0dXJuIGEgZ2VuZXJhdG9yIG9iamVjdCB5aWVsZGluZyBhIHR1cGxlIG9mIHR3byBlbGVtZW50cworICAgICAgICBmb3IgZXZlcnkgZmlsZSBmb3VuZCBpbiBwYXRoLgorICAgICAgICBGaXJzdCBlbGVtZW50IGlzIHRoZSBmaWxlIG5hbWUsIHRoZSBzZWNvbmQgb25lIGlzIGEgZGljdGlvbmFyeQorICAgICAgICBpbmNsdWRpbmcgYSB2YXJpYWJsZSBudW1iZXIgb2YgImZhY3RzIiBkZXBlbmRpbmcgb24gdGhlIHNlcnZlcgorICAgICAgICBhbmQgd2hldGhlciAiZmFjdHMiIGFyZ3VtZW50IGhhcyBiZWVuIHByb3ZpZGVkLgorICAgICAgICAnJycKKyAgICAgICAgaWYgZmFjdHM6CisgICAgICAgICAgICBzZWxmLnNlbmRjbWQoIk9QVFMgTUxTVCAiICsgIjsiLmpvaW4oZmFjdHMpICsgIjsiKQorICAgICAgICBpZiBwYXRoOgorICAgICAgICAgICAgY21kID0gIk1MU0QgJXMiICUgcGF0aAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgY21kID0gIk1MU0QiCisgICAgICAgIGxpbmVzID0gW10KKyAgICAgICAgc2VsZi5yZXRybGluZXMoY21kLCBsaW5lcy5hcHBlbmQpCisgICAgICAgIGZvciBsaW5lIGluIGxpbmVzOgorICAgICAgICAgICAgZmFjdHNfZm91bmQsIF8sIG5hbWUgPSBsaW5lLnJzdHJpcChDUkxGKS5wYXJ0aXRpb24oJyAnKQorICAgICAgICAgICAgZW50cnkgPSB7fQorICAgICAgICAgICAgZm9yIGZhY3QgaW4gZmFjdHNfZm91bmRbOi0xXS5zcGxpdCgiOyIpOgorICAgICAgICAgICAgICAgIGtleSwgXywgdmFsdWUgPSBmYWN0LnBhcnRpdGlvbigiPSIpCisgICAgICAgICAgICAgICAgZW50cnlba2V5Lmxvd2VyKCldID0gdmFsdWUKKyAgICAgICAgICAgIHlpZWxkIChuYW1lLCBlbnRyeSkKKwogICAgIGRlZiByZW5hbWUoc2VsZiwgZnJvbW5hbWUsIHRvbmFtZSk6CiAgICAgICAgICcnJ1JlbmFtZSBhIGZpbGUuJycnCiAgICAgICAgIHJlc3AgPSBzZWxmLnNlbmRjbWQoJ1JORlIgJyArIGZyb21uYW1lKQpAQCAtNTYxLDEwICs1OTEsNyBAQAogICAgICAgICByZXNwID0gc2VsZi5zZW5kY21kKCdTSVpFICcgKyBmaWxlbmFtZSkKICAgICAgICAgaWYgcmVzcFs6M10gPT0gJzIxMyc6CiAgICAgICAgICAgICBzID0gcmVzcFszOl0uc3RyaXAoKQotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHJldHVybiBpbnQocykKLSAgICAgICAgICAgIGV4Y2VwdCAoT3ZlcmZsb3dFcnJvciwgVmFsdWVFcnJvcik6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGludChzKQorICAgICAgICAgICAgcmV0dXJuIGludChzKQogCiAgICAgZGVmIG1rZChzZWxmLCBkaXJuYW1lKToKICAgICAgICAgJycnTWFrZSBhIGRpcmVjdG9yeSwgcmV0dXJuIGl0cyBmdWxsIHBhdGhuYW1lLicnJwpAQCAtNTk2LDExICs2MjMsMTEgQEAKIAogICAgIGRlZiBjbG9zZShzZWxmKToKICAgICAgICAgJycnQ2xvc2UgdGhlIGNvbm5lY3Rpb24gd2l0aG91dCBhc3N1bWluZyBhbnl0aGluZyBhYm91dCBpdC4nJycKLSAgICAgICAgaWYgc2VsZi5maWxlOgorICAgICAgICBpZiBzZWxmLmZpbGUgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICBzZWxmLmZpbGUuY2xvc2UoKQorICAgICAgICBpZiBzZWxmLnNvY2sgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICBzZWxmLnNvY2suY2xvc2UoKQotICAgICAgICAgICAgc2VsZi5maWxlID0gc2VsZi5zb2NrID0gTm9uZQotCisgICAgICAgIHNlbGYuZmlsZSA9IHNlbGYuc29jayA9IE5vbmUKIAogdHJ5OgogICAgIGltcG9ydCBzc2wKQEAgLTY0NCw3ICs2NzEsNyBAQAogCiAgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBob3N0PScnLCB1c2VyPScnLCBwYXNzd2Q9JycsIGFjY3Q9JycsIGtleWZpbGU9Tm9uZSwKICAgICAgICAgICAgICAgICAgICAgIGNlcnRmaWxlPU5vbmUsIGNvbnRleHQ9Tm9uZSwKLSAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9X0dMT0JBTF9ERUZBVUxUX1RJTUVPVVQpOgorICAgICAgICAgICAgICAgICAgICAgdGltZW91dD1fR0xPQkFMX0RFRkFVTFRfVElNRU9VVCwgc291cmNlX2FkZHJlc3M9Tm9uZSk6CiAgICAgICAgICAgICBpZiBjb250ZXh0IGlzIG5vdCBOb25lIGFuZCBrZXlmaWxlIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImNvbnRleHQgYW5kIGtleWZpbGUgYXJndW1lbnRzIGFyZSBtdXR1YWxseSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhjbHVzaXZlIikKQEAgLTY1NSw3ICs2ODIsNyBAQAogICAgICAgICAgICAgc2VsZi5jZXJ0ZmlsZSA9IGNlcnRmaWxlCiAgICAgICAgICAgICBzZWxmLmNvbnRleHQgPSBjb250ZXh0CiAgICAgICAgICAgICBzZWxmLl9wcm90X3AgPSBGYWxzZQotICAgICAgICAgICAgRlRQLl9faW5pdF9fKHNlbGYsIGhvc3QsIHVzZXIsIHBhc3N3ZCwgYWNjdCwgdGltZW91dCkKKyAgICAgICAgICAgIEZUUC5fX2luaXRfXyhzZWxmLCBob3N0LCB1c2VyLCBwYXNzd2QsIGFjY3QsIHRpbWVvdXQsIHNvdXJjZV9hZGRyZXNzKQogCiAgICAgICAgIGRlZiBsb2dpbihzZWxmLCB1c2VyPScnLCBwYXNzd2Q9JycsIGFjY3Q9JycsIHNlY3VyZT1UcnVlKToKICAgICAgICAgICAgIGlmIHNlY3VyZSBhbmQgbm90IGlzaW5zdGFuY2Uoc2VsZi5zb2NrLCBzc2wuU1NMU29ja2V0KToKQEAgLTY3OSw2ICs3MDYsMTQgQEAKICAgICAgICAgICAgIHNlbGYuZmlsZSA9IHNlbGYuc29jay5tYWtlZmlsZShtb2RlPSdyJywgZW5jb2Rpbmc9c2VsZi5lbmNvZGluZykKICAgICAgICAgICAgIHJldHVybiByZXNwCiAKKyAgICAgICAgZGVmIGNjYyhzZWxmKToKKyAgICAgICAgICAgICcnJ1N3aXRjaCBiYWNrIHRvIGEgY2xlYXItdGV4dCBjb250cm9sIGNvbm5lY3Rpb24uJycnCisgICAgICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShzZWxmLnNvY2ssIHNzbC5TU0xTb2NrZXQpOgorICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIm5vdCB1c2luZyBUTFMiKQorICAgICAgICAgICAgcmVzcCA9IHNlbGYudm9pZGNtZCgnQ0NDJykKKyAgICAgICAgICAgIHNlbGYuc29jayA9IHNlbGYuc29jay51bndyYXAoKQorICAgICAgICAgICAgcmV0dXJuIHJlc3AKKwogICAgICAgICBkZWYgcHJvdF9wKHNlbGYpOgogICAgICAgICAgICAgJycnU2V0IHVwIHNlY3VyZSBkYXRhIGNvbm5lY3Rpb24uJycnCiAgICAgICAgICAgICAjIFBST1QgZGVmaW5lcyB3aGV0aGVyIG9yIG5vdCB0aGUgZGF0YSBjaGFubmVsIGlzIHRvIGJlIHByb3RlY3RlZC4KQEAgLTcxNSw4ICs3NTAsNyBAQAogCiAgICAgICAgIGRlZiByZXRyYmluYXJ5KHNlbGYsIGNtZCwgY2FsbGJhY2ssIGJsb2Nrc2l6ZT04MTkyLCByZXN0PU5vbmUpOgogICAgICAgICAgICAgc2VsZi52b2lkY21kKCdUWVBFIEknKQotICAgICAgICAgICAgY29ubiA9IHNlbGYudHJhbnNmZXJjbWQoY21kLCByZXN0KQotICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgd2l0aCBzZWxmLnRyYW5zZmVyY21kKGNtZCwgcmVzdCkgYXMgY29ubjoKICAgICAgICAgICAgICAgICB3aGlsZSAxOgogICAgICAgICAgICAgICAgICAgICBkYXRhID0gY29ubi5yZWN2KGJsb2Nrc2l6ZSkKICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGRhdGE6CkBAIC03MjUsOCArNzU5LDYgQEAKICAgICAgICAgICAgICAgICAjIHNodXRkb3duIHNzbCBsYXllcgogICAgICAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UoY29ubiwgc3NsLlNTTFNvY2tldCk6CiAgICAgICAgICAgICAgICAgICAgIGNvbm4udW53cmFwKCkKLSAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgY29ubi5jbG9zZSgpCiAgICAgICAgICAgICByZXR1cm4gc2VsZi52b2lkcmVzcCgpCiAKICAgICAgICAgZGVmIHJldHJsaW5lcyhzZWxmLCBjbWQsIGNhbGxiYWNrID0gTm9uZSk6CkBAIC03MzQsNyArNzY2LDcgQEAKICAgICAgICAgICAgIHJlc3AgPSBzZWxmLnNlbmRjbWQoJ1RZUEUgQScpCiAgICAgICAgICAgICBjb25uID0gc2VsZi50cmFuc2ZlcmNtZChjbWQpCiAgICAgICAgICAgICBmcCA9IGNvbm4ubWFrZWZpbGUoJ3InLCBlbmNvZGluZz1zZWxmLmVuY29kaW5nKQotICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgd2l0aCBmcCwgY29ubjoKICAgICAgICAgICAgICAgICB3aGlsZSAxOgogICAgICAgICAgICAgICAgICAgICBsaW5lID0gZnAucmVhZGxpbmUoKQogICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLmRlYnVnZ2luZyA+IDI6IHByaW50KCcqcmV0cionLCByZXByKGxpbmUpKQpAQCAtNzQ4LDE1ICs3ODAsMTEgQEAKICAgICAgICAgICAgICAgICAjIHNodXRkb3duIHNzbCBsYXllcgogICAgICAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UoY29ubiwgc3NsLlNTTFNvY2tldCk6CiAgICAgICAgICAgICAgICAgICAgIGNvbm4udW53cmFwKCkKLSAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgZnAuY2xvc2UoKQotICAgICAgICAgICAgICAgIGNvbm4uY2xvc2UoKQogICAgICAgICAgICAgcmV0dXJuIHNlbGYudm9pZHJlc3AoKQogCiAgICAgICAgIGRlZiBzdG9yYmluYXJ5KHNlbGYsIGNtZCwgZnAsIGJsb2Nrc2l6ZT04MTkyLCBjYWxsYmFjaz1Ob25lLCByZXN0PU5vbmUpOgogICAgICAgICAgICAgc2VsZi52b2lkY21kKCdUWVBFIEknKQotICAgICAgICAgICAgY29ubiA9IHNlbGYudHJhbnNmZXJjbWQoY21kLCByZXN0KQotICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgd2l0aCBzZWxmLnRyYW5zZmVyY21kKGNtZCwgcmVzdCkgYXMgY29ubjoKICAgICAgICAgICAgICAgICB3aGlsZSAxOgogICAgICAgICAgICAgICAgICAgICBidWYgPSBmcC5yZWFkKGJsb2Nrc2l6ZSkKICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGJ1ZjogYnJlYWsKQEAgLTc2NSwxNCArNzkzLDExIEBACiAgICAgICAgICAgICAgICAgIyBzaHV0ZG93biBzc2wgbGF5ZXIKICAgICAgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGNvbm4sIHNzbC5TU0xTb2NrZXQpOgogICAgICAgICAgICAgICAgICAgICBjb25uLnVud3JhcCgpCi0gICAgICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgICAgIGNvbm4uY2xvc2UoKQogICAgICAgICAgICAgcmV0dXJuIHNlbGYudm9pZHJlc3AoKQogCiAgICAgICAgIGRlZiBzdG9ybGluZXMoc2VsZiwgY21kLCBmcCwgY2FsbGJhY2s9Tm9uZSk6CiAgICAgICAgICAgICBzZWxmLnZvaWRjbWQoJ1RZUEUgQScpCi0gICAgICAgICAgICBjb25uID0gc2VsZi50cmFuc2ZlcmNtZChjbWQpCi0gICAgICAgICAgICB0cnk6CisgICAgICAgICAgICB3aXRoIHNlbGYudHJhbnNmZXJjbWQoY21kKSBhcyBjb25uOgogICAgICAgICAgICAgICAgIHdoaWxlIDE6CiAgICAgICAgICAgICAgICAgICAgIGJ1ZiA9IGZwLnJlYWRsaW5lKCkKICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGJ1ZjogYnJlYWsKQEAgLTc4NCw4ICs4MDksNiBAQAogICAgICAgICAgICAgICAgICMgc2h1dGRvd24gc3NsIGxheWVyCiAgICAgICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShjb25uLCBzc2wuU1NMU29ja2V0KToKICAgICAgICAgICAgICAgICAgICAgY29ubi51bndyYXAoKQotICAgICAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgICAgICBjb25uLmNsb3NlKCkKICAgICAgICAgICAgIHJldHVybiBzZWxmLnZvaWRyZXNwKCkKIAogICAgICAgICBkZWYgYWJvcnQoc2VsZik6CkBAIC04MTgsMTEgKzg0MSw3IEBACiAgICAgbSA9IF8xNTBfcmUubWF0Y2gocmVzcCkKICAgICBpZiBub3QgbToKICAgICAgICAgcmV0dXJuIE5vbmUKLSAgICBzID0gbS5ncm91cCgxKQotICAgIHRyeToKLSAgICAgICAgcmV0dXJuIGludChzKQotICAgIGV4Y2VwdCAoT3ZlcmZsb3dFcnJvciwgVmFsdWVFcnJvcik6Ci0gICAgICAgIHJldHVybiBpbnQocykKKyAgICByZXR1cm4gaW50KG0uZ3JvdXAoMSkpCiAKIAogXzIyN19yZSA9IE5vbmUKZGlmZiAtLWdpdCBhL0xpYi9mdW5jdG9vbHMucHkgYi9MaWIvZnVuY3Rvb2xzLnB5CmluZGV4IDg1ZWEyNTcuLjA5MmIxYWIgMTAwNjQ0Ci0tLSBhL0xpYi9mdW5jdG9vbHMucHkKKysrIGIvTGliL2Z1bmN0b29scy5weQpAQCAtMjEsNyArMjEsOCBAQAogIyB1cGRhdGVfd3JhcHBlcigpIGFuZCB3cmFwcygpIGFyZSB0b29scyB0byBoZWxwIHdyaXRlCiAjIHdyYXBwZXIgZnVuY3Rpb25zIHRoYXQgY2FuIGhhbmRsZSBuYWl2ZSBpbnRyb3NwZWN0aW9uCiAKLVdSQVBQRVJfQVNTSUdOTUVOVFMgPSAoJ19fbW9kdWxlX18nLCAnX19uYW1lX18nLCAnX19kb2NfXycsICdfX2Fubm90YXRpb25zX18nKQorV1JBUFBFUl9BU1NJR05NRU5UUyA9ICgnX19tb2R1bGVfXycsICdfX25hbWVfXycsICdfX3F1YWxuYW1lX18nLCAnX19kb2NfXycsCisgICAgICAgICAgICAgICAgICAgICAgICdfX2Fubm90YXRpb25zX18nKQogV1JBUFBFUl9VUERBVEVTID0gKCdfX2RpY3RfXycsKQogZGVmIHVwZGF0ZV93cmFwcGVyKHdyYXBwZXIsCiAgICAgICAgICAgICAgICAgICAgd3JhcHBlZCwKQEAgLTExNCwxNCArMTE1LDIzIEBACiAgICAgICAgIF9faGFzaF9fID0gTm9uZQogICAgIHJldHVybiBLCiAKK3RyeToKKyAgICBmcm9tIF9mdW5jdG9vbHMgaW1wb3J0IGNtcF90b19rZXkKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBwYXNzCisKIF9DYWNoZUluZm8gPSBuYW1lZHR1cGxlKCJDYWNoZUluZm8iLCAiaGl0cyBtaXNzZXMgbWF4c2l6ZSBjdXJyc2l6ZSIpCiAKLWRlZiBscnVfY2FjaGUobWF4c2l6ZT0xMDApOgorZGVmIGxydV9jYWNoZShtYXhzaXplPTEwMCwgdHlwZWQ9RmFsc2UpOgogICAgICIiIkxlYXN0LXJlY2VudGx5LXVzZWQgY2FjaGUgZGVjb3JhdG9yLgogCiAgICAgSWYgKm1heHNpemUqIGlzIHNldCB0byBOb25lLCB0aGUgTFJVIGZlYXR1cmVzIGFyZSBkaXNhYmxlZCBhbmQgdGhlIGNhY2hlCiAgICAgY2FuIGdyb3cgd2l0aG91dCBib3VuZC4KIAorICAgIElmICp0eXBlZCogaXMgVHJ1ZSwgYXJndW1lbnRzIG9mIGRpZmZlcmVudCB0eXBlcyB3aWxsIGJlIGNhY2hlZCBzZXBhcmF0ZWx5LgorICAgIEZvciBleGFtcGxlLCBmKDMuMCkgYW5kIGYoMykgd2lsbCBiZSB0cmVhdGVkIGFzIGRpc3RpbmN0IGNhbGxzIHdpdGgKKyAgICBkaXN0aW5jdCByZXN1bHRzLgorCiAgICAgQXJndW1lbnRzIHRvIHRoZSBjYWNoZWQgZnVuY3Rpb24gbXVzdCBiZSBoYXNoYWJsZS4KIAogICAgIFZpZXcgdGhlIGNhY2hlIHN0YXRpc3RpY3MgbmFtZWQgdHVwbGUgKGhpdHMsIG1pc3NlcywgbWF4c2l6ZSwgY3VycnNpemUpIHdpdGgKQEAgLTEzNyw3ICsxNDcsNyBAQAogICAgICMgdG8gYWxsb3cgdGhlIGltcGxlbWVudGF0aW9uIHRvIGNoYW5nZSAoaW5jbHVkaW5nIGEgcG9zc2libGUgQyB2ZXJzaW9uKS4KIAogICAgIGRlZiBkZWNvcmF0aW5nX2Z1bmN0aW9uKHVzZXJfZnVuY3Rpb24sCi0gICAgICAgICAgICAgICAgdHVwbGU9dHVwbGUsIHNvcnRlZD1zb3J0ZWQsIGxlbj1sZW4sIEtleUVycm9yPUtleUVycm9yKToKKyAgICAgICAgICAgICosIHR1cGxlPXR1cGxlLCBzb3J0ZWQ9c29ydGVkLCBtYXA9bWFwLCBsZW49bGVuLCB0eXBlPXR5cGUsIEtleUVycm9yPUtleUVycm9yKToKIAogICAgICAgICBoaXRzID0gbWlzc2VzID0gMAogICAgICAgICBrd2RfbWFyayA9IChvYmplY3QoKSwpICAgICAgICAgICMgc2VwYXJhdGVzIHBvc2l0aW9uYWwgYW5kIGtleXdvcmQgYXJncwpAQCAtMTUxLDcgKzE2MSwxMiBAQAogICAgICAgICAgICAgICAgIG5vbmxvY2FsIGhpdHMsIG1pc3NlcwogICAgICAgICAgICAgICAgIGtleSA9IGFyZ3MKICAgICAgICAgICAgICAgICBpZiBrd2RzOgotICAgICAgICAgICAgICAgICAgICBrZXkgKz0ga3dkX21hcmsgKyB0dXBsZShzb3J0ZWQoa3dkcy5pdGVtcygpKSkKKyAgICAgICAgICAgICAgICAgICAgc29ydGVkX2l0ZW1zID0gdHVwbGUoc29ydGVkKGt3ZHMuaXRlbXMoKSkpCisgICAgICAgICAgICAgICAgICAgIGtleSArPSBrd2RfbWFyayArIHNvcnRlZF9pdGVtcworICAgICAgICAgICAgICAgIGlmIHR5cGVkOgorICAgICAgICAgICAgICAgICAgICBrZXkgKz0gdHVwbGUobWFwKHR5cGUsIGFyZ3MpKQorICAgICAgICAgICAgICAgICAgICBpZiBrd2RzOgorICAgICAgICAgICAgICAgICAgICAgICAga2V5ICs9IHR1cGxlKHR5cGUodikgZm9yIGssIHYgaW4gc29ydGVkX2l0ZW1zKQogICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gY2FjaGVba2V5XQogICAgICAgICAgICAgICAgICAgICBoaXRzICs9IDEKQEAgLTE3Miw3ICsxODcsMTIgQEAKICAgICAgICAgICAgICAgICBub25sb2NhbCBoaXRzLCBtaXNzZXMKICAgICAgICAgICAgICAgICBrZXkgPSBhcmdzCiAgICAgICAgICAgICAgICAgaWYga3dkczoKLSAgICAgICAgICAgICAgICAgICAga2V5ICs9IGt3ZF9tYXJrICsgdHVwbGUoc29ydGVkKGt3ZHMuaXRlbXMoKSkpCisgICAgICAgICAgICAgICAgICAgIHNvcnRlZF9pdGVtcyA9IHR1cGxlKHNvcnRlZChrd2RzLml0ZW1zKCkpKQorICAgICAgICAgICAgICAgICAgICBrZXkgKz0ga3dkX21hcmsgKyBzb3J0ZWRfaXRlbXMKKyAgICAgICAgICAgICAgICBpZiB0eXBlZDoKKyAgICAgICAgICAgICAgICAgICAga2V5ICs9IHR1cGxlKG1hcCh0eXBlLCBhcmdzKSkKKyAgICAgICAgICAgICAgICAgICAgaWYga3dkczoKKyAgICAgICAgICAgICAgICAgICAgICAgIGtleSArPSB0dXBsZSh0eXBlKHYpIGZvciBrLCB2IGluIHNvcnRlZF9pdGVtcykKICAgICAgICAgICAgICAgICB3aXRoIGxvY2s6CiAgICAgICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGNhY2hlW2tleV0KZGlmZiAtLWdpdCBhL0xpYi9nZXRvcHQucHkgYi9MaWIvZ2V0b3B0LnB5CmluZGV4IDk4MDg2MWQuLjNkNmVjYmQgMTAwNjQ0Ci0tLSBhL0xpYi9nZXRvcHQucHkKKysrIGIvTGliL2dldG9wdC5weQpAQCAtMTksNyArMTksNyBAQAogIyBHZXJyaXQgSG9sbCA8Z2Vycml0QG5sLmxpbnV4Lm9yZz4gbW92ZWQgdGhlIHN0cmluZy1iYXNlZCBleGNlcHRpb25zCiAjIHRvIGNsYXNzLWJhc2VkIGV4Y2VwdGlvbnMuCiAjCi0jIFBldGVyIMODwoVzdHJhbmQgPGFzdHJhbmRAbHlzYXRvci5saXUuc2U+IGFkZGVkIGdudV9nZXRvcHQoKS4KKyMgUGV0ZXIgw4VzdHJhbmQgPGFzdHJhbmRAbHlzYXRvci5saXUuc2U+IGFkZGVkIGdudV9nZXRvcHQoKS4KICMKICMgVE9ETyBmb3IgZ251X2dldG9wdCgpOgogIwpAQCAtMzQsNiArMzQsMTEgQEAKIF9fYWxsX18gPSBbIkdldG9wdEVycm9yIiwiZXJyb3IiLCJnZXRvcHQiLCJnbnVfZ2V0b3B0Il0KIAogaW1wb3J0IG9zCit0cnk6CisgICAgZnJvbSBnZXR0ZXh0IGltcG9ydCBnZXR0ZXh0IGFzIF8KK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICAjIEJvb3RzdHJhcHBpbmcgUHl0aG9uOiBnZXR0ZXh0J3MgZGVwZW5kZW5jaWVzIG5vdCBidWlsdCB5ZXQKKyAgICBkZWYgXyhzKTogcmV0dXJuIHMKIAogY2xhc3MgR2V0b3B0RXJyb3IoRXhjZXB0aW9uKToKICAgICBvcHQgPSAnJwpAQCAtMTUzLDEwICsxNTgsMTAgQEAKICAgICBpZiBoYXNfYXJnOgogICAgICAgICBpZiBvcHRhcmcgaXMgTm9uZToKICAgICAgICAgICAgIGlmIG5vdCBhcmdzOgotICAgICAgICAgICAgICAgIHJhaXNlIEdldG9wdEVycm9yKCdvcHRpb24gLS0lcyByZXF1aXJlcyBhcmd1bWVudCcgJSBvcHQsIG9wdCkKKyAgICAgICAgICAgICAgICByYWlzZSBHZXRvcHRFcnJvcihfKCdvcHRpb24gLS0lcyByZXF1aXJlcyBhcmd1bWVudCcpICUgb3B0LCBvcHQpCiAgICAgICAgICAgICBvcHRhcmcsIGFyZ3MgPSBhcmdzWzBdLCBhcmdzWzE6XQogICAgIGVsaWYgb3B0YXJnIGlzIG5vdCBOb25lOgotICAgICAgICByYWlzZSBHZXRvcHRFcnJvcignb3B0aW9uIC0tJXMgbXVzdCBub3QgaGF2ZSBhbiBhcmd1bWVudCcgJSBvcHQsIG9wdCkKKyAgICAgICAgcmFpc2UgR2V0b3B0RXJyb3IoXygnb3B0aW9uIC0tJXMgbXVzdCBub3QgaGF2ZSBhbiBhcmd1bWVudCcpICUgb3B0LCBvcHQpCiAgICAgb3B0cy5hcHBlbmQoKCctLScgKyBvcHQsIG9wdGFyZyBvciAnJykpCiAgICAgcmV0dXJuIG9wdHMsIGFyZ3MKIApAQCAtMTY2LDcgKzE3MSw3IEBACiBkZWYgbG9uZ19oYXNfYXJncyhvcHQsIGxvbmdvcHRzKToKICAgICBwb3NzaWJpbGl0aWVzID0gW28gZm9yIG8gaW4gbG9uZ29wdHMgaWYgby5zdGFydHN3aXRoKG9wdCldCiAgICAgaWYgbm90IHBvc3NpYmlsaXRpZXM6Ci0gICAgICAgIHJhaXNlIEdldG9wdEVycm9yKCdvcHRpb24gLS0lcyBub3QgcmVjb2duaXplZCcgJSBvcHQsIG9wdCkKKyAgICAgICAgcmFpc2UgR2V0b3B0RXJyb3IoXygnb3B0aW9uIC0tJXMgbm90IHJlY29nbml6ZWQnKSAlIG9wdCwgb3B0KQogICAgICMgSXMgdGhlcmUgYW4gZXhhY3QgbWF0Y2g/CiAgICAgaWYgb3B0IGluIHBvc3NpYmlsaXRpZXM6CiAgICAgICAgIHJldHVybiBGYWxzZSwgb3B0CkBAIC0xNzYsNyArMTgxLDcgQEAKICAgICBpZiBsZW4ocG9zc2liaWxpdGllcykgPiAxOgogICAgICAgICAjIFhYWCBzaW5jZSBwb3NzaWJpbGl0aWVzIGNvbnRhaW5zIGFsbCB2YWxpZCBjb250aW51YXRpb25zLCBtaWdodCBiZQogICAgICAgICAjIG5pY2UgdG8gd29yayB0aGVtIGludG8gdGhlIGVycm9yIG1zZwotICAgICAgICByYWlzZSBHZXRvcHRFcnJvcignb3B0aW9uIC0tJXMgbm90IGEgdW5pcXVlIHByZWZpeCcgJSBvcHQsIG9wdCkKKyAgICAgICAgcmFpc2UgR2V0b3B0RXJyb3IoXygnb3B0aW9uIC0tJXMgbm90IGEgdW5pcXVlIHByZWZpeCcpICUgb3B0LCBvcHQpCiAgICAgYXNzZXJ0IGxlbihwb3NzaWJpbGl0aWVzKSA9PSAxCiAgICAgdW5pcXVlX21hdGNoID0gcG9zc2liaWxpdGllc1swXQogICAgIGhhc19hcmcgPSB1bmlxdWVfbWF0Y2guZW5kc3dpdGgoJz0nKQpAQCAtMTkwLDcgKzE5NSw3IEBACiAgICAgICAgIGlmIHNob3J0X2hhc19hcmcob3B0LCBzaG9ydG9wdHMpOgogICAgICAgICAgICAgaWYgb3B0c3RyaW5nID09ICcnOgogICAgICAgICAgICAgICAgIGlmIG5vdCBhcmdzOgotICAgICAgICAgICAgICAgICAgICByYWlzZSBHZXRvcHRFcnJvcignb3B0aW9uIC0lcyByZXF1aXJlcyBhcmd1bWVudCcgJSBvcHQsCisgICAgICAgICAgICAgICAgICAgIHJhaXNlIEdldG9wdEVycm9yKF8oJ29wdGlvbiAtJXMgcmVxdWlyZXMgYXJndW1lbnQnKSAlIG9wdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0KQogICAgICAgICAgICAgICAgIG9wdHN0cmluZywgYXJncyA9IGFyZ3NbMF0sIGFyZ3NbMTpdCiAgICAgICAgICAgICBvcHRhcmcsIG9wdHN0cmluZyA9IG9wdHN0cmluZywgJycKQEAgLTIwMyw3ICsyMDgsNyBAQAogICAgIGZvciBpIGluIHJhbmdlKGxlbihzaG9ydG9wdHMpKToKICAgICAgICAgaWYgb3B0ID09IHNob3J0b3B0c1tpXSAhPSAnOic6CiAgICAgICAgICAgICByZXR1cm4gc2hvcnRvcHRzLnN0YXJ0c3dpdGgoJzonLCBpKzEpCi0gICAgcmFpc2UgR2V0b3B0RXJyb3IoJ29wdGlvbiAtJXMgbm90IHJlY29nbml6ZWQnICUgb3B0LCBvcHQpCisgICAgcmFpc2UgR2V0b3B0RXJyb3IoXygnb3B0aW9uIC0lcyBub3QgcmVjb2duaXplZCcpICUgb3B0LCBvcHQpCiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CiAgICAgaW1wb3J0IHN5cwpkaWZmIC0tZ2l0IGEvTGliL2dldHBhc3MucHkgYi9MaWIvZ2V0cGFzcy5weQppbmRleCBkYzAyYmQxLi4wMDQ0NzQyIDEwMDY0NAotLS0gYS9MaWIvZ2V0cGFzcy5weQorKysgYi9MaWIvZ2V0cGFzcy5weQpAQCAtNzIsNyArNzIsNyBAQAogICAgICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgICAgICB0ZXJtaW9zLnRjc2V0YXR0cihmZCwgdGNzZXRhdHRyX2ZsYWdzLCBvbGQpCiAgICAgICAgICAgICAgICAgc3RyZWFtLmZsdXNoKCkgICMgaXNzdWU3MjA4Ci0gICAgICAgIGV4Y2VwdCB0ZXJtaW9zLmVycm9yIGFzIGU6CisgICAgICAgIGV4Y2VwdCB0ZXJtaW9zLmVycm9yOgogICAgICAgICAgICAgaWYgcGFzc3dkIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgICAgICMgX3Jhd19pbnB1dCBzdWNjZWVkZWQuICBUaGUgZmluYWwgdGNzZXRhdHRyIGZhaWxlZC4gIFJlcmFpc2UKICAgICAgICAgICAgICAgICAjIGluc3RlYWQgb2YgbGVhdmluZyB0aGUgdGVybWluYWwgaW4gYW4gdW5rbm93biBzdGF0ZS4KQEAgLTE0NSw4ICsxNDUsNiBAQAogCiAgICAgIiIiCiAKLSAgICBpbXBvcnQgb3MKLQogICAgIGZvciBuYW1lIGluICgnTE9HTkFNRScsICdVU0VSJywgJ0xOQU1FJywgJ1VTRVJOQU1FJyk6CiAgICAgICAgIHVzZXIgPSBvcy5lbnZpcm9uLmdldChuYW1lKQogICAgICAgICBpZiB1c2VyOgpkaWZmIC0tZ2l0IGEvTGliL2d6aXAucHkgYi9MaWIvZ3ppcC5weQppbmRleCA0NDYyMTg3Li45M2RkYTRlIDEwMDY0NAotLS0gYS9MaWIvZ3ppcC5weQorKysgYi9MaWIvZ3ppcC5weQpAQCAtMTYsMTggKzE2LDYgQEAKIAogUkVBRCwgV1JJVEUgPSAxLCAyCiAKLWRlZiBVMzIoaSk6Ci0gICAgIiIiUmV0dXJuIGkgYXMgYW4gdW5zaWduZWQgaW50ZWdlciwgYXNzdW1pbmcgaXQgZml0cyBpbiAzMiBiaXRzLgotICAgIElmIGl0J3MgPj0gMkdCIHdoZW4gdmlld2VkIGFzIGEgMzItYml0IHVuc2lnbmVkIGludCwgcmV0dXJuIGEgbG9uZy4KLSAgICAiIiIKLSAgICBpZiBpIDwgMDoKLSAgICAgICAgaSArPSAxIDw8IDMyCi0gICAgcmV0dXJuIGkKLQotZGVmIExPV1UzMihpKToKLSAgICAiIiJSZXR1cm4gdGhlIGxvdy1vcmRlciAzMiBiaXRzLCBhcyBhIG5vbi1uZWdhdGl2ZSBpbnQiIiIKLSAgICByZXR1cm4gaSAmIDB4RkZGRkZGRkYKLQogZGVmIHdyaXRlMzJ1KG91dHB1dCwgdmFsdWUpOgogICAgICMgVGhlIEwgZm9ybWF0IHdyaXRlcyB0aGUgYml0IHBhdHRlcm4gY29ycmVjdGx5IHdoZXRoZXIgc2lnbmVkCiAgICAgIyBvciB1bnNpZ25lZC4KQEAgLTM1MCw2ICszMzgsMjggQEAKICAgICAgICAgc2VsZi5vZmZzZXQgKz0gc2l6ZQogICAgICAgICByZXR1cm4gY2h1bmsKIAorICAgIGRlZiByZWFkMShzZWxmLCBzaXplPS0xKToKKyAgICAgICAgc2VsZi5fY2hlY2tfY2xvc2VkKCkKKyAgICAgICAgaWYgc2VsZi5tb2RlICE9IFJFQUQ6CisgICAgICAgICAgICBpbXBvcnQgZXJybm8KKyAgICAgICAgICAgIHJhaXNlIElPRXJyb3IoZXJybm8uRUJBREYsICJyZWFkMSgpIG9uIHdyaXRlLW9ubHkgR3ppcEZpbGUgb2JqZWN0IikKKworICAgICAgICBpZiBzZWxmLmV4dHJhc2l6ZSA8PSAwIGFuZCBzZWxmLmZpbGVvYmogaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybiBiJycKKworICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLl9yZWFkKCkKKyAgICAgICAgZXhjZXB0IEVPRkVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBpZiBzaXplIDwgMCBvciBzaXplID4gc2VsZi5leHRyYXNpemU6CisgICAgICAgICAgICBzaXplID0gc2VsZi5leHRyYXNpemUKKworICAgICAgICBvZmZzZXQgPSBzZWxmLm9mZnNldCAtIHNlbGYuZXh0cmFzdGFydAorICAgICAgICBjaHVuayA9IHNlbGYuZXh0cmFidWZbb2Zmc2V0OiBvZmZzZXQgKyBzaXplXQorICAgICAgICBzZWxmLmV4dHJhc2l6ZSAtPSBzaXplCisgICAgICAgIHNlbGYub2Zmc2V0ICs9IHNpemUKKyAgICAgICAgcmV0dXJuIGNodW5rCisKICAgICBkZWYgcGVlayhzZWxmLCBuKToKICAgICAgICAgaWYgc2VsZi5tb2RlICE9IFJFQUQ6CiAgICAgICAgICAgICBpbXBvcnQgZXJybm8KZGlmZiAtLWdpdCBhL0xpYi9odHRwL2NsaWVudC5weSBiL0xpYi9odHRwL2NsaWVudC5weQppbmRleCA3NDViOTk5Li4wMDAyMDcyIDEwMDY0NAotLS0gYS9MaWIvaHR0cC9jbGllbnQucHkKKysrIGIvTGliL2h0dHAvY2xpZW50LnB5CkBAIC00ODUsMTEgKzQ4NSwxNyBAQAogICAgICAgICAgICAgc2VsZi5jbG9zZSgpCiAgICAgICAgICAgICByZXR1cm4gYiIiCiAKLSAgICAgICAgaWYgc2VsZi5jaHVua2VkOgotICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3JlYWRfY2h1bmtlZChhbXQpCisgICAgICAgIGlmIGFtdCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICMgQW1vdW50IGlzIGdpdmVuLCBzbyBjYWxsIGJhc2UgY2xhc3MgdmVyc2lvbgorICAgICAgICAgICAgIyAod2hpY2ggaXMgaW1wbGVtZW50ZWQgaW4gdGVybXMgb2Ygc2VsZi5yZWFkaW50bykKKyAgICAgICAgICAgIHJldHVybiBzdXBlcihIVFRQUmVzcG9uc2UsIHNlbGYpLnJlYWQoYW10KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBBbW91bnQgaXMgbm90IGdpdmVuICh1bmJvdW5kZWQgcmVhZCkgc28gd2UgbXVzdCBjaGVjayBzZWxmLmxlbmd0aAorICAgICAgICAgICAgIyBhbmQgc2VsZi5jaHVua2VkCiAKLSAgICAgICAgaWYgYW10IGlzIE5vbmU6Ci0gICAgICAgICAgICAjIHVuYm91bmRlZCByZWFkCisgICAgICAgICAgICBpZiBzZWxmLmNodW5rZWQ6CisgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3JlYWRhbGxfY2h1bmtlZCgpCisKICAgICAgICAgICAgIGlmIHNlbGYubGVuZ3RoIGlzIE5vbmU6CiAgICAgICAgICAgICAgICAgcyA9IHNlbGYuZnAucmVhZCgpCiAgICAgICAgICAgICBlbHNlOgpAQCAtNDk4LDYxICs1MDQsNDkgQEAKICAgICAgICAgICAgIHNlbGYuY2xvc2UoKSAgICAgICAgIyB3ZSByZWFkIGV2ZXJ5dGhpbmcKICAgICAgICAgICAgIHJldHVybiBzCiAKKyAgICBkZWYgcmVhZGludG8oc2VsZiwgYik6CisgICAgICAgIGlmIHNlbGYuZnAgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybiAwCisKKyAgICAgICAgaWYgc2VsZi5fbWV0aG9kID09ICJIRUFEIjoKKyAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorICAgICAgICAgICAgcmV0dXJuIDAKKworICAgICAgICBpZiBzZWxmLmNodW5rZWQ6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fcmVhZGludG9fY2h1bmtlZChiKQorCiAgICAgICAgIGlmIHNlbGYubGVuZ3RoIGlzIG5vdCBOb25lOgotICAgICAgICAgICAgaWYgYW10ID4gc2VsZi5sZW5ndGg6CisgICAgICAgICAgICBpZiBsZW4oYikgPiBzZWxmLmxlbmd0aDoKICAgICAgICAgICAgICAgICAjIGNsaXAgdGhlIHJlYWQgdG8gdGhlICJlbmQgb2YgcmVzcG9uc2UiCi0gICAgICAgICAgICAgICAgYW10ID0gc2VsZi5sZW5ndGgKKyAgICAgICAgICAgICAgICBiID0gbWVtb3J5dmlldyhiKVswOnNlbGYubGVuZ3RoXQogCiAgICAgICAgICMgd2UgZG8gbm90IHVzZSBfc2FmZV9yZWFkKCkgaGVyZSBiZWNhdXNlIHRoaXMgbWF5IGJlIGEgLndpbGxfY2xvc2UKICAgICAgICAgIyBjb25uZWN0aW9uLCBhbmQgdGhlIHVzZXIgaXMgcmVhZGluZyBtb3JlIGJ5dGVzIHRoYW4gd2lsbCBiZSBwcm92aWRlZAogICAgICAgICAjIChmb3IgZXhhbXBsZSwgcmVhZGluZyBpbiAxayBjaHVua3MpCi0gICAgICAgIHMgPSBzZWxmLmZwLnJlYWQoYW10KQorICAgICAgICBuID0gc2VsZi5mcC5yZWFkaW50byhiKQogICAgICAgICBpZiBzZWxmLmxlbmd0aCBpcyBub3QgTm9uZToKLSAgICAgICAgICAgIHNlbGYubGVuZ3RoIC09IGxlbihzKQorICAgICAgICAgICAgc2VsZi5sZW5ndGggLT0gbgogICAgICAgICAgICAgaWYgbm90IHNlbGYubGVuZ3RoOgogICAgICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQotICAgICAgICByZXR1cm4gcworICAgICAgICByZXR1cm4gbgogCi0gICAgZGVmIF9yZWFkX2NodW5rZWQoc2VsZiwgYW10KToKLSAgICAgICAgYXNzZXJ0IHNlbGYuY2h1bmtlZCAhPSBfVU5LTk9XTgotICAgICAgICBjaHVua19sZWZ0ID0gc2VsZi5jaHVua19sZWZ0Ci0gICAgICAgIHZhbHVlID0gW10KLSAgICAgICAgd2hpbGUgVHJ1ZToKLSAgICAgICAgICAgIGlmIGNodW5rX2xlZnQgaXMgTm9uZToKLSAgICAgICAgICAgICAgICBsaW5lID0gc2VsZi5mcC5yZWFkbGluZShfTUFYTElORSArIDEpCi0gICAgICAgICAgICAgICAgaWYgbGVuKGxpbmUpID4gX01BWExJTkU6Ci0gICAgICAgICAgICAgICAgICAgIHJhaXNlIExpbmVUb29Mb25nKCJjaHVuayBzaXplIikKLSAgICAgICAgICAgICAgICBpID0gbGluZS5maW5kKGIiOyIpCi0gICAgICAgICAgICAgICAgaWYgaSA+PSAwOgotICAgICAgICAgICAgICAgICAgICBsaW5lID0gbGluZVs6aV0gIyBzdHJpcCBjaHVuay1leHRlbnNpb25zCi0gICAgICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICAgICBjaHVua19sZWZ0ID0gaW50KGxpbmUsIDE2KQotICAgICAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgotICAgICAgICAgICAgICAgICAgICAjIGNsb3NlIHRoZSBjb25uZWN0aW9uIGFzIHByb3RvY29sIHN5bmNocm9uaXNhdGlvbiBpcwotICAgICAgICAgICAgICAgICAgICAjIHByb2JhYmx5IGxvc3QKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5jbG9zZSgpCi0gICAgICAgICAgICAgICAgICAgIHJhaXNlIEluY29tcGxldGVSZWFkKGInJy5qb2luKHZhbHVlKSkKLSAgICAgICAgICAgICAgICBpZiBjaHVua19sZWZ0ID09IDA6Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICBpZiBhbXQgaXMgTm9uZToKLSAgICAgICAgICAgICAgICB2YWx1ZS5hcHBlbmQoc2VsZi5fc2FmZV9yZWFkKGNodW5rX2xlZnQpKQotICAgICAgICAgICAgZWxpZiBhbXQgPCBjaHVua19sZWZ0OgotICAgICAgICAgICAgICAgIHZhbHVlLmFwcGVuZChzZWxmLl9zYWZlX3JlYWQoYW10KSkKLSAgICAgICAgICAgICAgICBzZWxmLmNodW5rX2xlZnQgPSBjaHVua19sZWZ0IC0gYW10Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGInJy5qb2luKHZhbHVlKQotICAgICAgICAgICAgZWxpZiBhbXQgPT0gY2h1bmtfbGVmdDoKLSAgICAgICAgICAgICAgICB2YWx1ZS5hcHBlbmQoc2VsZi5fc2FmZV9yZWFkKGFtdCkpCi0gICAgICAgICAgICAgICAgc2VsZi5fc2FmZV9yZWFkKDIpICAjIHRvc3MgdGhlIENSTEYgYXQgdGhlIGVuZCBvZiB0aGUgY2h1bmsKLSAgICAgICAgICAgICAgICBzZWxmLmNodW5rX2xlZnQgPSBOb25lCi0gICAgICAgICAgICAgICAgcmV0dXJuIGInJy5qb2luKHZhbHVlKQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICB2YWx1ZS5hcHBlbmQoc2VsZi5fc2FmZV9yZWFkKGNodW5rX2xlZnQpKQotICAgICAgICAgICAgICAgIGFtdCAtPSBjaHVua19sZWZ0CisgICAgZGVmIF9yZWFkX25leHRfY2h1bmtfc2l6ZShzZWxmKToKKyAgICAgICAgIyBSZWFkIHRoZSBuZXh0IGNodW5rIHNpemUgZnJvbSB0aGUgZmlsZQorICAgICAgICBsaW5lID0gc2VsZi5mcC5yZWFkbGluZShfTUFYTElORSArIDEpCisgICAgICAgIGlmIGxlbihsaW5lKSA+IF9NQVhMSU5FOgorICAgICAgICAgICAgcmFpc2UgTGluZVRvb0xvbmcoImNodW5rIHNpemUiKQorICAgICAgICBpID0gbGluZS5maW5kKGIiOyIpCisgICAgICAgIGlmIGkgPj0gMDoKKyAgICAgICAgICAgIGxpbmUgPSBsaW5lWzppXSAjIHN0cmlwIGNodW5rLWV4dGVuc2lvbnMKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmV0dXJuIGludChsaW5lLCAxNikKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CisgICAgICAgICAgICAjIGNsb3NlIHRoZSBjb25uZWN0aW9uIGFzIHByb3RvY29sIHN5bmNocm9uaXNhdGlvbiBpcworICAgICAgICAgICAgIyBwcm9iYWJseSBsb3N0CisgICAgICAgICAgICBzZWxmLmNsb3NlKCkKKyAgICAgICAgICAgIHJhaXNlCiAKLSAgICAgICAgICAgICMgd2UgcmVhZCB0aGUgd2hvbGUgY2h1bmssIGdldCBhbm90aGVyCi0gICAgICAgICAgICBzZWxmLl9zYWZlX3JlYWQoMikgICAgICAjIHRvc3MgdGhlIENSTEYgYXQgdGhlIGVuZCBvZiB0aGUgY2h1bmsKLSAgICAgICAgICAgIGNodW5rX2xlZnQgPSBOb25lCi0KKyAgICBkZWYgX3JlYWRfYW5kX2Rpc2NhcmRfdHJhaWxlcihzZWxmKToKICAgICAgICAgIyByZWFkIGFuZCBkaXNjYXJkIHRyYWlsZXIgdXAgdG8gdGhlIENSTEYgdGVybWluYXRvcgogICAgICAgICAjIyMgbm90ZTogd2Ugc2hvdWxkbid0IGhhdmUgYW55IHRyYWlsZXJzIQogICAgICAgICB3aGlsZSBUcnVlOgpAQCAtNTY2LDExICs1NjAsNzIgQEAKICAgICAgICAgICAgIGlmIGxpbmUgPT0gYiJcclxuIjoKICAgICAgICAgICAgICAgICBicmVhawogCisgICAgZGVmIF9yZWFkYWxsX2NodW5rZWQoc2VsZik6CisgICAgICAgIGFzc2VydCBzZWxmLmNodW5rZWQgIT0gX1VOS05PV04KKyAgICAgICAgY2h1bmtfbGVmdCA9IHNlbGYuY2h1bmtfbGVmdAorICAgICAgICB2YWx1ZSA9IFtdCisgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICBpZiBjaHVua19sZWZ0IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBjaHVua19sZWZ0ID0gc2VsZi5fcmVhZF9uZXh0X2NodW5rX3NpemUoKQorICAgICAgICAgICAgICAgICAgICBpZiBjaHVua19sZWZ0ID09IDA6CisgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBJbmNvbXBsZXRlUmVhZChiJycuam9pbih2YWx1ZSkpCisgICAgICAgICAgICB2YWx1ZS5hcHBlbmQoc2VsZi5fc2FmZV9yZWFkKGNodW5rX2xlZnQpKQorCisgICAgICAgICAgICAjIHdlIHJlYWQgdGhlIHdob2xlIGNodW5rLCBnZXQgYW5vdGhlcgorICAgICAgICAgICAgc2VsZi5fc2FmZV9yZWFkKDIpICAgICAgIyB0b3NzIHRoZSBDUkxGIGF0IHRoZSBlbmQgb2YgdGhlIGNodW5rCisgICAgICAgICAgICBjaHVua19sZWZ0ID0gTm9uZQorCisgICAgICAgIHNlbGYuX3JlYWRfYW5kX2Rpc2NhcmRfdHJhaWxlcigpCisKICAgICAgICAgIyB3ZSByZWFkIGV2ZXJ5dGhpbmc7IGNsb3NlIHRoZSAiZmlsZSIKICAgICAgICAgc2VsZi5jbG9zZSgpCiAKICAgICAgICAgcmV0dXJuIGInJy5qb2luKHZhbHVlKQogCisgICAgZGVmIF9yZWFkaW50b19jaHVua2VkKHNlbGYsIGIpOgorICAgICAgICBhc3NlcnQgc2VsZi5jaHVua2VkICE9IF9VTktOT1dOCisgICAgICAgIGNodW5rX2xlZnQgPSBzZWxmLmNodW5rX2xlZnQKKworICAgICAgICB0b3RhbF9ieXRlcyA9IDAKKyAgICAgICAgbXZiID0gbWVtb3J5dmlldyhiKQorICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgaWYgY2h1bmtfbGVmdCBpcyBOb25lOgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgY2h1bmtfbGVmdCA9IHNlbGYuX3JlYWRfbmV4dF9jaHVua19zaXplKCkKKyAgICAgICAgICAgICAgICAgICAgaWYgY2h1bmtfbGVmdCA9PSAwOgorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgSW5jb21wbGV0ZVJlYWQoYnl0ZXMoYlswOnRvdGFsX2J5dGVzXSkpCisKKyAgICAgICAgICAgIGlmIGxlbihtdmIpIDwgY2h1bmtfbGVmdDoKKyAgICAgICAgICAgICAgICBuID0gc2VsZi5fc2FmZV9yZWFkaW50byhtdmIpCisgICAgICAgICAgICAgICAgc2VsZi5jaHVua19sZWZ0ID0gY2h1bmtfbGVmdCAtIG4KKyAgICAgICAgICAgICAgICByZXR1cm4gdG90YWxfYnl0ZXMgKyBuCisgICAgICAgICAgICBlbGlmIGxlbihtdmIpID09IGNodW5rX2xlZnQ6CisgICAgICAgICAgICAgICAgbiA9IHNlbGYuX3NhZmVfcmVhZGludG8obXZiKQorICAgICAgICAgICAgICAgIHNlbGYuX3NhZmVfcmVhZCgyKSAgIyB0b3NzIHRoZSBDUkxGIGF0IHRoZSBlbmQgb2YgdGhlIGNodW5rCisgICAgICAgICAgICAgICAgc2VsZi5jaHVua19sZWZ0ID0gTm9uZQorICAgICAgICAgICAgICAgIHJldHVybiB0b3RhbF9ieXRlcyArIG4KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgdGVtcF9tdmIgPSBtdmJbMDpjaHVua19sZWZ0XQorICAgICAgICAgICAgICAgIG4gPSBzZWxmLl9zYWZlX3JlYWRpbnRvKHRlbXBfbXZiKQorICAgICAgICAgICAgICAgIG12YiA9IG12YltuOl0KKyAgICAgICAgICAgICAgICB0b3RhbF9ieXRlcyArPSBuCisKKyAgICAgICAgICAgICMgd2UgcmVhZCB0aGUgd2hvbGUgY2h1bmssIGdldCBhbm90aGVyCisgICAgICAgICAgICBzZWxmLl9zYWZlX3JlYWQoMikgICAgICAjIHRvc3MgdGhlIENSTEYgYXQgdGhlIGVuZCBvZiB0aGUgY2h1bmsKKyAgICAgICAgICAgIGNodW5rX2xlZnQgPSBOb25lCisKKyAgICAgICAgc2VsZi5fcmVhZF9hbmRfZGlzY2FyZF90cmFpbGVyKCkKKworICAgICAgICAjIHdlIHJlYWQgZXZlcnl0aGluZzsgY2xvc2UgdGhlICJmaWxlIgorICAgICAgICBzZWxmLmNsb3NlKCkKKworICAgICAgICByZXR1cm4gdG90YWxfYnl0ZXMKKwogICAgIGRlZiBfc2FmZV9yZWFkKHNlbGYsIGFtdCk6CiAgICAgICAgICIiIlJlYWQgdGhlIG51bWJlciBvZiBieXRlcyByZXF1ZXN0ZWQsIGNvbXBlbnNhdGluZyBmb3IgcGFydGlhbCByZWFkcy4KIApAQCAtNTk0LDYgKzY0OSwyMiBAQAogICAgICAgICAgICAgYW10IC09IGxlbihjaHVuaykKICAgICAgICAgcmV0dXJuIGIiIi5qb2luKHMpCiAKKyAgICBkZWYgX3NhZmVfcmVhZGludG8oc2VsZiwgYik6CisgICAgICAgICIiIlNhbWUgYXMgX3NhZmVfcmVhZCwgYnV0IGZvciByZWFkaW5nIGludG8gYSBidWZmZXIuIiIiCisgICAgICAgIHRvdGFsX2J5dGVzID0gMAorICAgICAgICBtdmIgPSBtZW1vcnl2aWV3KGIpCisgICAgICAgIHdoaWxlIHRvdGFsX2J5dGVzIDwgbGVuKGIpOgorICAgICAgICAgICAgaWYgTUFYQU1PVU5UIDwgbGVuKG12Yik6CisgICAgICAgICAgICAgICAgdGVtcF9tdmIgPSBtdmJbMDpNQVhBTU9VTlRdCisgICAgICAgICAgICAgICAgbiA9IHNlbGYuZnAucmVhZGludG8odGVtcF9tdmIpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG4gPSBzZWxmLmZwLnJlYWRpbnRvKG12YikKKyAgICAgICAgICAgIGlmIG5vdCBuOgorICAgICAgICAgICAgICAgIHJhaXNlIEluY29tcGxldGVSZWFkKGJ5dGVzKG12YlswOnRvdGFsX2J5dGVzXSksIGxlbihiKSkKKyAgICAgICAgICAgIG12YiA9IG12YltuOl0KKyAgICAgICAgICAgIHRvdGFsX2J5dGVzICs9IG4KKyAgICAgICAgcmV0dXJuIHRvdGFsX2J5dGVzCisKICAgICBkZWYgZmlsZW5vKHNlbGYpOgogICAgICAgICByZXR1cm4gc2VsZi5mcC5maWxlbm8oKQogCkBAIC03MDAsNyArNzcxLDcgQEAKICAgICAgICAgc2VsZi5zZW5kKGNvbm5lY3RfYnl0ZXMpCiAgICAgICAgIGZvciBoZWFkZXIsIHZhbHVlIGluIHNlbGYuX3R1bm5lbF9oZWFkZXJzLml0ZW1zKCk6CiAgICAgICAgICAgICBoZWFkZXJfc3RyID0gIiVzOiAlc1xyXG4iICUgKGhlYWRlciwgdmFsdWUpCi0gICAgICAgICAgICBoZWFkZXJfYnl0ZXMgPSBoZWFkZXJfc3RyLmVuY29kZSgibGF0aW4xIikKKyAgICAgICAgICAgIGhlYWRlcl9ieXRlcyA9IGhlYWRlcl9zdHIuZW5jb2RlKCJsYXRpbi0xIikKICAgICAgICAgICAgIHNlbGYuc2VuZChoZWFkZXJfYnl0ZXMpCiAgICAgICAgIHNlbGYuc2VuZChiJ1xyXG4nKQogCkBAIC05NDAsNyArMTAxMSw3IEBACiAgICAgICAgIHZhbHVlcyA9IGxpc3QodmFsdWVzKQogICAgICAgICBmb3IgaSwgb25lX3ZhbHVlIGluIGVudW1lcmF0ZSh2YWx1ZXMpOgogICAgICAgICAgICAgaWYgaGFzYXR0cihvbmVfdmFsdWUsICdlbmNvZGUnKToKLSAgICAgICAgICAgICAgICB2YWx1ZXNbaV0gPSBvbmVfdmFsdWUuZW5jb2RlKCdsYXRpbjEnKQorICAgICAgICAgICAgICAgIHZhbHVlc1tpXSA9IG9uZV92YWx1ZS5lbmNvZGUoJ2xhdGluLTEnKQogICAgICAgICAgICAgZWxpZiBpc2luc3RhbmNlKG9uZV92YWx1ZSwgaW50KToKICAgICAgICAgICAgICAgICB2YWx1ZXNbaV0gPSBzdHIob25lX3ZhbHVlKS5lbmNvZGUoJ2FzY2lpJykKICAgICAgICAgdmFsdWUgPSBiJ1xyXG5cdCcuam9pbih2YWx1ZXMpCmRpZmYgLS1naXQgYS9MaWIvaHR0cC9zZXJ2ZXIucHkgYi9MaWIvaHR0cC9zZXJ2ZXIucHkKaW5kZXggNjY0MjcyOS4uNzhmYmNkYSAxMDA2NDQKLS0tIGEvTGliL2h0dHAvc2VydmVyLnB5CisrKyBiL0xpYi9odHRwL3NlcnZlci5weQpAQCAtMTA1LDYgKzEwNSw3IEBACiBERUZBVUxUX0VSUk9SX01FU1NBR0UgPSAiIiJcCiA8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMS8vRU4iCiAgICAgICAgICJodHRwOi8vd3d3LnczLm9yZy9UUi9odG1sNC9zdHJpY3QuZHRkIj4KKzxodG1sPgogICAgIDxoZWFkPgogICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PXV0Zi04Ij4KICAgICAgICAgPHRpdGxlPkVycm9yIHJlc3BvbnNlPC90aXRsZT4KQEAgLTM1Miw2ICszNTMsNyBAQAogCiAgICAgICAgICIiIgogICAgICAgICBzZWxmLnNlbmRfcmVzcG9uc2Vfb25seSgxMDApCisgICAgICAgIHNlbGYuZmx1c2hfaGVhZGVycygpCiAgICAgICAgIHJldHVybiBUcnVlCiAKICAgICBkZWYgaGFuZGxlX29uZV9yZXF1ZXN0KHNlbGYpOgpAQCAtNDI5LDcgKzQzMSw4IEBACiAgICAgICAgICAgICBzZWxmLndmaWxlLndyaXRlKGNvbnRlbnQuZW5jb2RlKCdVVEYtOCcsICdyZXBsYWNlJykpCiAKICAgICBkZWYgc2VuZF9yZXNwb25zZShzZWxmLCBjb2RlLCBtZXNzYWdlPU5vbmUpOgotICAgICAgICAiIiJTZW5kIHRoZSByZXNwb25zZSBoZWFkZXIgYW5kIGxvZyB0aGUgcmVzcG9uc2UgY29kZS4KKyAgICAgICAgIiIiQWRkIHRoZSByZXNwb25zZSBoZWFkZXIgdG8gdGhlIGhlYWRlcnMgYnVmZmVyIGFuZCBsb2cgdGhlCisgICAgICAgIHJlc3BvbnNlIGNvZGUuCiAKICAgICAgICAgQWxzbyBzZW5kIHR3byBzdGFuZGFyZCBoZWFkZXJzIHdpdGggdGhlIHNlcnZlciBzb2Z0d2FyZQogICAgICAgICB2ZXJzaW9uIGFuZCB0aGUgY3VycmVudCBkYXRlLgpAQCAtNDQ4LDE2ICs0NTEsMTkgQEAKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgbWVzc2FnZSA9ICcnCiAgICAgICAgIGlmIHNlbGYucmVxdWVzdF92ZXJzaW9uICE9ICdIVFRQLzAuOSc6Ci0gICAgICAgICAgICBzZWxmLndmaWxlLndyaXRlKCgiJXMgJWQgJXNcclxuIiAlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2VsZi5wcm90b2NvbF92ZXJzaW9uLCBjb2RlLCBtZXNzYWdlKSkuZW5jb2RlKCdsYXRpbjEnLCAnc3RyaWN0JykpCisgICAgICAgICAgICBpZiBub3QgaGFzYXR0cihzZWxmLCAnX2hlYWRlcnNfYnVmZmVyJyk6CisgICAgICAgICAgICAgICAgc2VsZi5faGVhZGVyc19idWZmZXIgPSBbXQorICAgICAgICAgICAgc2VsZi5faGVhZGVyc19idWZmZXIuYXBwZW5kKCgiJXMgJWQgJXNcclxuIiAlCisgICAgICAgICAgICAgICAgICAgIChzZWxmLnByb3RvY29sX3ZlcnNpb24sIGNvZGUsIG1lc3NhZ2UpKS5lbmNvZGUoCisgICAgICAgICAgICAgICAgICAgICAgICAnbGF0aW4tMScsICdzdHJpY3QnKSkKIAogICAgIGRlZiBzZW5kX2hlYWRlcihzZWxmLCBrZXl3b3JkLCB2YWx1ZSk6Ci0gICAgICAgICIiIlNlbmQgYSBNSU1FIGhlYWRlci4iIiIKKyAgICAgICAgIiIiU2VuZCBhIE1JTUUgaGVhZGVyIHRvIHRoZSBoZWFkZXJzIGJ1ZmZlci4iIiIKICAgICAgICAgaWYgc2VsZi5yZXF1ZXN0X3ZlcnNpb24gIT0gJ0hUVFAvMC45JzoKICAgICAgICAgICAgIGlmIG5vdCBoYXNhdHRyKHNlbGYsICdfaGVhZGVyc19idWZmZXInKToKICAgICAgICAgICAgICAgICBzZWxmLl9oZWFkZXJzX2J1ZmZlciA9IFtdCiAgICAgICAgICAgICBzZWxmLl9oZWFkZXJzX2J1ZmZlci5hcHBlbmQoCi0gICAgICAgICAgICAgICAgKCIlczogJXNcclxuIiAlIChrZXl3b3JkLCB2YWx1ZSkpLmVuY29kZSgnbGF0aW4xJywgJ3N0cmljdCcpKQorICAgICAgICAgICAgICAgICgiJXM6ICVzXHJcbiIgJSAoa2V5d29yZCwgdmFsdWUpKS5lbmNvZGUoJ2xhdGluLTEnLCAnc3RyaWN0JykpCiAKICAgICAgICAgaWYga2V5d29yZC5sb3dlcigpID09ICdjb25uZWN0aW9uJzoKICAgICAgICAgICAgIGlmIHZhbHVlLmxvd2VyKCkgPT0gJ2Nsb3NlJzoKQEAgLTQ2OSw2ICs0NzUsMTAgQEAKICAgICAgICAgIiIiU2VuZCB0aGUgYmxhbmsgbGluZSBlbmRpbmcgdGhlIE1JTUUgaGVhZGVycy4iIiIKICAgICAgICAgaWYgc2VsZi5yZXF1ZXN0X3ZlcnNpb24gIT0gJ0hUVFAvMC45JzoKICAgICAgICAgICAgIHNlbGYuX2hlYWRlcnNfYnVmZmVyLmFwcGVuZChiIlxyXG4iKQorICAgICAgICAgICAgc2VsZi5mbHVzaF9oZWFkZXJzKCkKKworICAgIGRlZiBmbHVzaF9oZWFkZXJzKHNlbGYpOgorICAgICAgICBpZiBoYXNhdHRyKHNlbGYsICdfaGVhZGVyc19idWZmZXInKToKICAgICAgICAgICAgIHNlbGYud2ZpbGUud3JpdGUoYiIiLmpvaW4oc2VsZi5faGVhZGVyc19idWZmZXIpKQogICAgICAgICAgICAgc2VsZi5faGVhZGVyc19idWZmZXIgPSBbXQogCkBAIC03MjIsMTAgKzczMiwxNiBAQAogICAgICAgICBsaXN0LnNvcnQoa2V5PWxhbWJkYSBhOiBhLmxvd2VyKCkpCiAgICAgICAgIHIgPSBbXQogICAgICAgICBkaXNwbGF5cGF0aCA9IGh0bWwuZXNjYXBlKHVybGxpYi5wYXJzZS51bnF1b3RlKHNlbGYucGF0aCkpCi0gICAgICAgIHIuYXBwZW5kKCc8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgMy4yIEZpbmFsLy9FTiI+JykKLSAgICAgICAgci5hcHBlbmQoIjxodG1sPlxuPHRpdGxlPkRpcmVjdG9yeSBsaXN0aW5nIGZvciAlczwvdGl0bGU+XG4iICUgZGlzcGxheXBhdGgpCi0gICAgICAgIHIuYXBwZW5kKCI8Ym9keT5cbjxoMj5EaXJlY3RvcnkgbGlzdGluZyBmb3IgJXM8L2gyPlxuIiAlIGRpc3BsYXlwYXRoKQotICAgICAgICByLmFwcGVuZCgiPGhyPlxuPHVsPlxuIikKKyAgICAgICAgZW5jID0gc3lzLmdldGZpbGVzeXN0ZW1lbmNvZGluZygpCisgICAgICAgIHRpdGxlID0gJ0RpcmVjdG9yeSBsaXN0aW5nIGZvciAlcycgJSBkaXNwbGF5cGF0aAorICAgICAgICByLmFwcGVuZCgnPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEvL0VOIiAnCisgICAgICAgICAgICAgICAgICciaHR0cDovL3d3dy53My5vcmcvVFIvaHRtbDQvc3RyaWN0LmR0ZCI+JykKKyAgICAgICAgci5hcHBlbmQoJzxodG1sPlxuPGhlYWQ+JykKKyAgICAgICAgci5hcHBlbmQoJzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgJworICAgICAgICAgICAgICAgICAnY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PSVzIj4nICUgZW5jKQorICAgICAgICByLmFwcGVuZCgnPHRpdGxlPiVzPC90aXRsZT5cbjwvaGVhZD4nICUgdGl0bGUpCisgICAgICAgIHIuYXBwZW5kKCc8Ym9keT5cbjxoMT4lczwvaDE+JyAlIHRpdGxlKQorICAgICAgICByLmFwcGVuZCgnPGhyPlxuPHVsPicpCiAgICAgICAgIGZvciBuYW1lIGluIGxpc3Q6CiAgICAgICAgICAgICBmdWxsbmFtZSA9IG9zLnBhdGguam9pbihwYXRoLCBuYW1lKQogICAgICAgICAgICAgZGlzcGxheW5hbWUgPSBsaW5rbmFtZSA9IG5hbWUKQEAgLTczNiwxMSArNzUyLDEwIEBACiAgICAgICAgICAgICBpZiBvcy5wYXRoLmlzbGluayhmdWxsbmFtZSk6CiAgICAgICAgICAgICAgICAgZGlzcGxheW5hbWUgPSBuYW1lICsgIkAiCiAgICAgICAgICAgICAgICAgIyBOb3RlOiBhIGxpbmsgdG8gYSBkaXJlY3RvcnkgZGlzcGxheXMgd2l0aCBAIGFuZCBsaW5rcyB3aXRoIC8KLSAgICAgICAgICAgIHIuYXBwZW5kKCc8bGk+PGEgaHJlZj0iJXMiPiVzPC9hPlxuJworICAgICAgICAgICAgci5hcHBlbmQoJzxsaT48YSBocmVmPSIlcyI+JXM8L2E+PC9saT4nCiAgICAgICAgICAgICAgICAgICAgICUgKHVybGxpYi5wYXJzZS5xdW90ZShsaW5rbmFtZSksIGh0bWwuZXNjYXBlKGRpc3BsYXluYW1lKSkpCi0gICAgICAgIHIuYXBwZW5kKCI8L3VsPlxuPGhyPlxuPC9ib2R5PlxuPC9odG1sPlxuIikKLSAgICAgICAgZW5jID0gc3lzLmdldGZpbGVzeXN0ZW1lbmNvZGluZygpCi0gICAgICAgIGVuY29kZWQgPSAnJy5qb2luKHIpLmVuY29kZShlbmMpCisgICAgICAgIHIuYXBwZW5kKCc8L3VsPlxuPGhyPlxuPC9ib2R5PlxuPC9odG1sPlxuJykKKyAgICAgICAgZW5jb2RlZCA9ICdcbicuam9pbihyKS5lbmNvZGUoZW5jKQogICAgICAgICBmID0gaW8uQnl0ZXNJTygpCiAgICAgICAgIGYud3JpdGUoZW5jb2RlZCkKICAgICAgICAgZi5zZWVrKDApCkBAIC04ODUsMTEgKzkwMCw3IEBACiAKIGRlZiBleGVjdXRhYmxlKHBhdGgpOgogICAgICIiIlRlc3QgZm9yIGV4ZWN1dGFibGUgZmlsZS4iIiIKLSAgICB0cnk6Ci0gICAgICAgIHN0ID0gb3Muc3RhdChwYXRoKQotICAgIGV4Y2VwdCBvcy5lcnJvcjoKLSAgICAgICAgcmV0dXJuIEZhbHNlCi0gICAgcmV0dXJuIHN0LnN0X21vZGUgJiAwbzExMSAhPSAwCisgICAgcmV0dXJuIG9zLmFjY2VzcyhwYXRoLCBvcy5YX09LKQogCiAKIGNsYXNzIENHSUhUVFBSZXF1ZXN0SGFuZGxlcihTaW1wbGVIVFRQUmVxdWVzdEhhbmRsZXIpOgpAQCAtMTAwMyw3ICsxMDE0LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JpcHRuYW1lKQogICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgIGlzcHkgPSBzZWxmLmlzX3B5dGhvbihzY3JpcHRuYW1lKQotICAgICAgICBpZiBub3QgaXNweToKKyAgICAgICAgaWYgc2VsZi5oYXZlX2Zvcmsgb3Igbm90IGlzcHk6CiAgICAgICAgICAgICBpZiBub3Qgc2VsZi5pc19leGVjdXRhYmxlKHNjcmlwdGZpbGUpOgogICAgICAgICAgICAgICAgIHNlbGYuc2VuZF9lcnJvcig0MDMsICJDR0kgc2NyaXB0IGlzIG5vdCBleGVjdXRhYmxlICglcikiICUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NyaXB0bmFtZSkKQEAgLTEwNzgsNiArMTA4OSw3IEBACiAgICAgICAgICAgICBlbnYuc2V0ZGVmYXVsdChrLCAiIikKIAogICAgICAgICBzZWxmLnNlbmRfcmVzcG9uc2UoMjAwLCAiU2NyaXB0IG91dHB1dCBmb2xsb3dzIikKKyAgICAgICAgc2VsZi5mbHVzaF9oZWFkZXJzKCkKIAogICAgICAgICBkZWNvZGVkX3F1ZXJ5ID0gcXVlcnkucmVwbGFjZSgnKycsICcgJykKIApkaWZmIC0tZ2l0IGEvTGliL2lkbGVsaWIvUHlTaGVsbC5weSBiL0xpYi9pZGxlbGliL1B5U2hlbGwucHkKaW5kZXggNmJmMGE4Yy4uZjg4NGIyOCAxMDA2NDQKLS0tIGEvTGliL2lkbGVsaWIvUHlTaGVsbC5weQorKysgYi9MaWIvaWRsZWxpYi9QeVNoZWxsLnB5CkBAIC00NjgsNiArNDY4LDEwIEBACiAKICAgICBkZWYga2lsbF9zdWJwcm9jZXNzKHNlbGYpOgogICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLnJwY2NsdC5saXN0ZW5pbmdfc29jay5jbG9zZSgpCisgICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjogICMgbm8gc29ja2V0CisgICAgICAgICAgICBwYXNzCisgICAgICAgIHRyeToKICAgICAgICAgICAgIHNlbGYucnBjY2x0LmNsb3NlKCkKICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOiAgIyBubyBzb2NrZXQKICAgICAgICAgICAgIHBhc3MKZGlmZiAtLWdpdCBhL0xpYi9pZGxlbGliL2NvbmZpZ0hhbmRsZXIucHkgYi9MaWIvaWRsZWxpYi9jb25maWdIYW5kbGVyLnB5CmluZGV4IDczYjhkYjUuLjc5MzE1ZWYgMTAwNjQ0Ci0tLSBhL0xpYi9pZGxlbGliL2NvbmZpZ0hhbmRsZXIucHkKKysrIGIvTGliL2lkbGVsaWIvY29uZmlnSGFuZGxlci5weQpAQCAtMTQ1LDcgKzE0NSw4IEBACiAgICAgICAgICAgICBleGNlcHQgSU9FcnJvcjoKICAgICAgICAgICAgICAgICBvcy51bmxpbmsoZm5hbWUpCiAgICAgICAgICAgICAgICAgY2ZnRmlsZSA9IG9wZW4oZm5hbWUsICd3JykKLSAgICAgICAgICAgIHNlbGYud3JpdGUoY2ZnRmlsZSkKKyAgICAgICAgICAgIHdpdGggY2ZnRmlsZToKKyAgICAgICAgICAgICAgICBzZWxmLndyaXRlKGNmZ0ZpbGUpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBzZWxmLlJlbW92ZUZpbGUoKQogCmRpZmYgLS1naXQgYS9MaWIvaWRsZWxpYi9pZGxldmVyLnB5IGIvTGliL2lkbGVsaWIvaWRsZXZlci5weQppbmRleCA5N2JmODdiLi41ZTlhZmIxIDEwMDY0NAotLS0gYS9MaWIvaWRsZWxpYi9pZGxldmVyLnB5CisrKyBiL0xpYi9pZGxlbGliL2lkbGV2ZXIucHkKQEAgLTEgKzEgQEAKLUlETEVfVkVSU0lPTiA9ICIzLjIuMiIKK0lETEVfVkVSU0lPTiA9ICIzLjNhMCIKZGlmZiAtLWdpdCBhL0xpYi9pbWFwbGliLnB5IGIvTGliL2ltYXBsaWIucHkKaW5kZXggMWZjYmEyMS4uYmRhMmFlOSAxMDA2NDQKLS0tIGEvTGliL2ltYXBsaWIucHkKKysrIGIvTGliL2ltYXBsaWIucHkKQEAgLTI0OSwxNSArMjQ5LDcgQEAKIAogICAgIGRlZiByZWFkKHNlbGYsIHNpemUpOgogICAgICAgICAiIiJSZWFkICdzaXplJyBieXRlcyBmcm9tIHJlbW90ZS4iIiIKLSAgICAgICAgY2h1bmtzID0gW10KLSAgICAgICAgcmVhZCA9IDAKLSAgICAgICAgd2hpbGUgcmVhZCA8IHNpemU6Ci0gICAgICAgICAgICBkYXRhID0gc2VsZi5maWxlLnJlYWQobWluKHNpemUtcmVhZCwgNDA5NikpCi0gICAgICAgICAgICBpZiBub3QgZGF0YToKLSAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgcmVhZCArPSBsZW4oZGF0YSkKLSAgICAgICAgICAgIGNodW5rcy5hcHBlbmQoZGF0YSkKLSAgICAgICAgcmV0dXJuIGInJy5qb2luKGNodW5rcykKKyAgICAgICAgcmV0dXJuIHNlbGYuZmlsZS5yZWFkKHNpemUpCiAKIAogICAgIGRlZiByZWFkbGluZShzZWxmKToKQEAgLTExNzcsMjUgKzExNjksNDAgQEAKIAogICAgICAgICAiIiJJTUFQNCBjbGllbnQgY2xhc3Mgb3ZlciBTU0wgY29ubmVjdGlvbgogCi0gICAgICAgIEluc3RhbnRpYXRlIHdpdGg6IElNQVA0X1NTTChbaG9zdFssIHBvcnRbLCBrZXlmaWxlWywgY2VydGZpbGVdXV1dKQorICAgICAgICBJbnN0YW50aWF0ZSB3aXRoOiBJTUFQNF9TU0woW2hvc3RbLCBwb3J0Wywga2V5ZmlsZVssIGNlcnRmaWxlWywgc3NsX2NvbnRleHRdXV1dXSkKIAogICAgICAgICAgICAgICAgIGhvc3QgLSBob3N0J3MgbmFtZSAoZGVmYXVsdDogbG9jYWxob3N0KTsKLSAgICAgICAgICAgICAgICBwb3J0IC0gcG9ydCBudW1iZXIgKGRlZmF1bHQ6IHN0YW5kYXJkIElNQVA0IFNTTCBwb3J0KS4KKyAgICAgICAgICAgICAgICBwb3J0IC0gcG9ydCBudW1iZXIgKGRlZmF1bHQ6IHN0YW5kYXJkIElNQVA0IFNTTCBwb3J0KTsKICAgICAgICAgICAgICAgICBrZXlmaWxlIC0gUEVNIGZvcm1hdHRlZCBmaWxlIHRoYXQgY29udGFpbnMgeW91ciBwcml2YXRlIGtleSAoZGVmYXVsdDogTm9uZSk7CiAgICAgICAgICAgICAgICAgY2VydGZpbGUgLSBQRU0gZm9ybWF0dGVkIGNlcnRpZmljYXRlIGNoYWluIGZpbGUgKGRlZmF1bHQ6IE5vbmUpOworICAgICAgICAgICAgICAgIHNzbF9jb250ZXh0IC0gYSBTU0xDb250ZXh0IG9iamVjdCB0aGF0IGNvbnRhaW5zIHlvdXIgY2VydGlmaWNhdGUgY2hhaW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBwcml2YXRlIGtleSAoZGVmYXVsdDogTm9uZSkKKyAgICAgICAgICAgICAgICBOb3RlOiBpZiBzc2xfY29udGV4dCBpcyBwcm92aWRlZCwgdGhlbiBwYXJhbWV0ZXJzIGtleWZpbGUgb3IKKyAgICAgICAgICAgICAgICBjZXJ0ZmlsZSBzaG91bGQgbm90IGJlIHNldCBvdGhlcndpc2UgVmFsdWVFcnJvciBpcyB0aHJvd24uCiAKICAgICAgICAgZm9yIG1vcmUgZG9jdW1lbnRhdGlvbiBzZWUgdGhlIGRvY3N0cmluZyBvZiB0aGUgcGFyZW50IGNsYXNzIElNQVA0LgogICAgICAgICAiIiIKIAogCi0gICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBob3N0ID0gJycsIHBvcnQgPSBJTUFQNF9TU0xfUE9SVCwga2V5ZmlsZSA9IE5vbmUsIGNlcnRmaWxlID0gTm9uZSk6CisgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBob3N0PScnLCBwb3J0PUlNQVA0X1NTTF9QT1JULCBrZXlmaWxlPU5vbmUsIGNlcnRmaWxlPU5vbmUsIHNzbF9jb250ZXh0PU5vbmUpOgorICAgICAgICAgICAgaWYgc3NsX2NvbnRleHQgaXMgbm90IE5vbmUgYW5kIGtleWZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigic3NsX2NvbnRleHQgYW5kIGtleWZpbGUgYXJndW1lbnRzIGFyZSBtdXR1YWxseSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhjbHVzaXZlIikKKyAgICAgICAgICAgIGlmIHNzbF9jb250ZXh0IGlzIG5vdCBOb25lIGFuZCBjZXJ0ZmlsZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJzc2xfY29udGV4dCBhbmQgY2VydGZpbGUgYXJndW1lbnRzIGFyZSBtdXR1YWxseSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhjbHVzaXZlIikKKwogICAgICAgICAgICAgc2VsZi5rZXlmaWxlID0ga2V5ZmlsZQogICAgICAgICAgICAgc2VsZi5jZXJ0ZmlsZSA9IGNlcnRmaWxlCisgICAgICAgICAgICBzZWxmLnNzbF9jb250ZXh0ID0gc3NsX2NvbnRleHQKICAgICAgICAgICAgIElNQVA0Ll9faW5pdF9fKHNlbGYsIGhvc3QsIHBvcnQpCiAKICAgICAgICAgZGVmIF9jcmVhdGVfc29ja2V0KHNlbGYpOgogICAgICAgICAgICAgc29jayA9IElNQVA0Ll9jcmVhdGVfc29ja2V0KHNlbGYpCi0gICAgICAgICAgICByZXR1cm4gc3NsLndyYXBfc29ja2V0KHNvY2ssIHNlbGYua2V5ZmlsZSwgc2VsZi5jZXJ0ZmlsZSkKKyAgICAgICAgICAgIGlmIHNlbGYuc3NsX2NvbnRleHQ6CisgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYuc3NsX2NvbnRleHQud3JhcF9zb2NrZXQoc29jaykKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmV0dXJuIHNzbC53cmFwX3NvY2tldChzb2NrLCBzZWxmLmtleWZpbGUsIHNlbGYuY2VydGZpbGUpCiAKICAgICAgICAgZGVmIG9wZW4oc2VsZiwgaG9zdD0nJywgcG9ydD1JTUFQNF9TU0xfUE9SVCk6CiAgICAgICAgICAgICAiIiJTZXR1cCBjb25uZWN0aW9uIHRvIHJlbW90ZSBzZXJ2ZXIgb24gImhvc3Q6cG9ydCIuCmRpZmYgLS1naXQgYS9MaWIvaW1wb3J0bGliL19faW5pdF9fLnB5IGIvTGliL2ltcG9ydGxpYi9fX2luaXRfXy5weQppbmRleCAyYmFhZjkzLi5lYzZhOTY1IDEwMDY0NAotLS0gYS9MaWIvaW1wb3J0bGliL19faW5pdF9fLnB5CisrKyBiL0xpYi9pbXBvcnRsaWIvX19pbml0X18ucHkKQEAgLTI2LDQ5ICsyNiwxMyBAQAogaW1wb3J0IHJlCiBpbXBvcnQgdG9rZW5pemUKIAorIyBUbyBzaW1wbGlmeSBpbXBvcnRzIGluIHRlc3QgY29kZQorX3dfbG9uZyA9IF9ib290c3RyYXAuX3dfbG9uZworX3JfbG9uZyA9IF9ib290c3RyYXAuX3JfbG9uZworCisKICMgQm9vdHN0cmFwIGhlbHAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAotZGVmIF9jYXNlX29rKGRpcmVjdG9yeSwgY2hlY2spOgotICAgICIiIkNoZWNrIGlmIHRoZSBkaXJlY3RvcnkgY29udGFpbnMgc29tZXRoaW5nIG1hdGNoaW5nICdjaGVjaycuCi0KLSAgICBObyBjaGVjayBpcyBkb25lIGlmIHRoZSBmaWxlL2RpcmVjdG9yeSBleGlzdHMgb3Igbm90LgotCi0gICAgIiIiCi0gICAgaWYgJ1BZVEhPTkNBU0VPSycgaW4gb3MuZW52aXJvbjoKLSAgICAgICAgcmV0dXJuIFRydWUKLSAgICBlbGlmIGNoZWNrIGluIG9zLmxpc3RkaXIoZGlyZWN0b3J5IGlmIGRpcmVjdG9yeSBlbHNlIG9zLmdldGN3ZCgpKToKLSAgICAgICAgcmV0dXJuIFRydWUKLSAgICByZXR1cm4gRmFsc2UKLQotCi1kZWYgX3dfbG9uZyh4KToKLSAgICAiIiJDb252ZXJ0IGEgMzItYml0IGludGVnZXIgdG8gbGl0dGxlLWVuZGlhbi4KLQotICAgIFhYWCBUZW1wb3JhcnkgdW50aWwgbWFyc2hhbCdzIGxvbmcgZnVuY3Rpb25zIGFyZSBleHBvc2VkLgotCi0gICAgIiIiCi0gICAgeCA9IGludCh4KQotICAgIGludF9ieXRlcyA9IFtdCi0gICAgaW50X2J5dGVzLmFwcGVuZCh4ICYgMHhGRikKLSAgICBpbnRfYnl0ZXMuYXBwZW5kKCh4ID4+IDgpICYgMHhGRikKLSAgICBpbnRfYnl0ZXMuYXBwZW5kKCh4ID4+IDE2KSAmIDB4RkYpCi0gICAgaW50X2J5dGVzLmFwcGVuZCgoeCA+PiAyNCkgJiAweEZGKQotICAgIHJldHVybiBieXRlYXJyYXkoaW50X2J5dGVzKQotCi0KLWRlZiBfcl9sb25nKGludF9ieXRlcyk6Ci0gICAgIiIiQ29udmVydCA0IGJ5dGVzIGluIGxpdHRsZS1lbmRpYW4gdG8gYW4gaW50ZWdlci4KLQotICAgIFhYWCBUZW1wb3JhcnkgdW50aWwgbWFyc2hhbCdzIGxvbmcgZnVuY3Rpb24gYXJlIGV4cG9zZWQuCi0KLSAgICAiIiIKLSAgICB4ID0gaW50X2J5dGVzWzBdCi0gICAgeCB8PSBpbnRfYnl0ZXNbMV0gPDwgOAotICAgIHggfD0gaW50X2J5dGVzWzJdIDw8IDE2Ci0gICAgeCB8PSBpbnRfYnl0ZXNbM10gPDwgMjQKLSAgICByZXR1cm4geAotCi0KICMgUmVxdWlyZWQgYnVpbHQtaW4gbW9kdWxlcy4KIHRyeToKICAgICBpbXBvcnQgcG9zaXggYXMgX29zCkBAIC04MSwxMSArNDUsMTAgQEAKICAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgogICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IoJ3Bvc2l4LCBudCwgb3Igb3MyIG1vZHVsZSByZXF1aXJlZCBmb3IgaW1wb3J0bGliJykKIF9ib290c3RyYXAuX29zID0gX29zCi1pbXBvcnQgaW1wLCBzeXMsIG1hcnNoYWwsIGVycm5vLCBfaW8KK2ltcG9ydCBpbXAsIHN5cywgbWFyc2hhbCwgX2lvCiBfYm9vdHN0cmFwLmltcCA9IGltcAogX2Jvb3RzdHJhcC5zeXMgPSBzeXMKIF9ib290c3RyYXAubWFyc2hhbCA9IG1hcnNoYWwKLV9ib290c3RyYXAuZXJybm8gPSBlcnJubwogX2Jvb3RzdHJhcC5faW8gPSBfaW8KIGltcG9ydCBfd2FybmluZ3MKIF9ib290c3RyYXAuX3dhcm5pbmdzID0gX3dhcm5pbmdzCkBAIC05NSwxMCArNTgsNiBAQAogIyBGb3Igb3MucGF0aC5qb2luIHJlcGxhY2VtZW50OyBwdWxsIGZyb20gSW5jbHVkZS9vc2RlZnMuaDpTRVAgLgogX2Jvb3RzdHJhcC5wYXRoX3NlcCA9IHNlcAogCi1fYm9vdHN0cmFwLl9jYXNlX29rID0gX2Nhc2Vfb2sKLW1hcnNoYWwuX3dfbG9uZyA9IF93X2xvbmcKLW1hcnNoYWwuX3JfbG9uZyA9IF9yX2xvbmcKLQogCiAjIFB1YmxpYyBBUEkgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvX2Jvb3RzdHJhcC5weSBiL0xpYi9pbXBvcnRsaWIvX2Jvb3RzdHJhcC5weQppbmRleCA5MGViMWE3Li5mMGRlNzdiIDEwMDY0NAotLS0gYS9MaWIvaW1wb3J0bGliL19ib290c3RyYXAucHkKKysrIGIvTGliL2ltcG9ydGxpYi9fYm9vdHN0cmFwLnB5CkBAIC03LDcgKzcsNyBAQAogCiAiIiIKIAotIyBJbmplY3RlZCBtb2R1bGVzIGFyZSAnX3dhcm5pbmdzJywgJ2ltcCcsICdzeXMnLCAnbWFyc2hhbCcsICdlcnJubycsICdfaW8nLAorIyBJbmplY3RlZCBtb2R1bGVzIGFyZSAnX3dhcm5pbmdzJywgJ2ltcCcsICdzeXMnLCAnbWFyc2hhbCcsICdfaW8nLAogIyBhbmQgJ19vcycgKGEuay5hLiAncG9zaXgnLCAnbnQnIG9yICdvczInKS4KICMgSW5qZWN0ZWQgYXR0cmlidXRlIGlzIHBhdGhfc2VwLgogIwpAQCAtMTgsNiArMTgsNjQgQEAKIAogIyBCb290c3RyYXAtcmVsYXRlZCBjb2RlICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogCisjIFRPRE86IHdoZW4gbm90IG9uIGFueSBvZiB0aGVzZSBwbGF0Zm9ybXMsIHJlcGxhY2UgX2Nhc2Vfb2soKSB3LworIyAgICAgICBgYGxhbWJkYSB4LHk6IFRydWVgYC4KK0NBU0VfT0tfUExBVEZPUk1TID0gJ3dpbicsICdjeWd3aW4nLCAnZGFyd2luJworCitkZWYgX2Nhc2Vfb2soZGlyZWN0b3J5LCBjaGVjayk6CisgICAgIiIiQ2hlY2sgaWYgdGhlIGRpcmVjdG9yeSBjb250YWlucyBzb21ldGhpbmcgbWF0Y2hpbmcgJ2NoZWNrJworICAgIGNhc2Utc2Vuc2l0aXZlbHkgd2hlbiBydW5uaW5nIG9uIFdpbmRvd3Mgb3IgT1MgWC4KKworICAgIElmIHJ1bm5pbmcgb24gV2luZG93IG9yIE9TIFggYW5kIFBZVEhPTkNBU0VPSyBpcyBhIGRlZmluZWQgZW52aXJvbm1lbnQKKyAgICB2YXJpYWJsZSB0aGVuIG5vIGNhc2Utc2Vuc2l0aXZlIGNoZWNrIGlzIHBlcmZvcm1lZC4gTm8gY2hlY2sgaXMgZG9uZSB0byBzZWUKKyAgICBpZiB3aGF0IGlzIGJlaW5nIGNoZWNrZWQgZm9yIGV4aXN0cywgc28gaWYgdGhlIHBsYXRmb3JtIGlzIG5vdCBXaW5kb3dzIG9yCisgICAgT1MgWCB0aGVuIGFzc3VtZSB0aGUgY2FzZSBpcyBmaW5lLgorCisgICAgIiIiCisgICAgaWYgKGFueShtYXAoc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgsIENBU0VfT0tfUExBVEZPUk1TKSkgYW5kCisgICAgICAgICAgICBiJ1BZVEhPTkNBU0VPSycgbm90IGluIF9vcy5lbnZpcm9uKToKKyAgICAgICAgaWYgbm90IGRpcmVjdG9yeToKKyAgICAgICAgICAgIGRpcmVjdG9yeSA9ICcuJworICAgICAgICBpZiBjaGVjayBpbiBfb3MubGlzdGRpcihkaXJlY3RvcnkpOgorICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgIGVsc2U6CisgICAgICAgIHJldHVybiBUcnVlCisKKworCisjIFRPRE86IEV4cG9zZSBmcm9tIG1hcnNoYWwKK2RlZiBfd19sb25nKHgpOgorICAgICIiIkNvbnZlcnQgYSAzMi1iaXQgaW50ZWdlciB0byBsaXR0bGUtZW5kaWFuLgorCisgICAgWFhYIFRlbXBvcmFyeSB1bnRpbCBtYXJzaGFsJ3MgbG9uZyBmdW5jdGlvbnMgYXJlIGV4cG9zZWQuCisKKyAgICAiIiIKKyAgICB4ID0gaW50KHgpCisgICAgaW50X2J5dGVzID0gW10KKyAgICBpbnRfYnl0ZXMuYXBwZW5kKHggJiAweEZGKQorICAgIGludF9ieXRlcy5hcHBlbmQoKHggPj4gOCkgJiAweEZGKQorICAgIGludF9ieXRlcy5hcHBlbmQoKHggPj4gMTYpICYgMHhGRikKKyAgICBpbnRfYnl0ZXMuYXBwZW5kKCh4ID4+IDI0KSAmIDB4RkYpCisgICAgcmV0dXJuIGJ5dGVhcnJheShpbnRfYnl0ZXMpCisKKworIyBUT0RPOiBFeHBvc2UgZnJvbSBtYXJzaGFsCitkZWYgX3JfbG9uZyhpbnRfYnl0ZXMpOgorICAgICIiIkNvbnZlcnQgNCBieXRlcyBpbiBsaXR0bGUtZW5kaWFuIHRvIGFuIGludGVnZXIuCisKKyAgICBYWFggVGVtcG9yYXJ5IHVudGlsIG1hcnNoYWwncyBsb25nIGZ1bmN0aW9uIGFyZSBleHBvc2VkLgorCisgICAgIiIiCisgICAgeCA9IGludF9ieXRlc1swXQorICAgIHggfD0gaW50X2J5dGVzWzFdIDw8IDgKKyAgICB4IHw9IGludF9ieXRlc1syXSA8PCAxNgorICAgIHggfD0gaW50X2J5dGVzWzNdIDw8IDI0CisgICAgcmV0dXJuIHgKKworCisKICMgWFhYIENvdWxkIGFsc28gZXhwb3NlIE1vZHVsZXMvZ2V0cGF0aC5jOmpvaW5wYXRoKCkKIGRlZiBfcGF0aF9qb2luKCphcmdzKToKICAgICAiIiJSZXBsYWNlbWVudCBmb3Igb3MucGF0aC5qb2luLiIiIgpAQCAtODAsOSArMTM4LDM4IEBACiAgICAgICAgICAgICByZXR1cm4gX3BhdGhfam9pbihfb3MuZ2V0Y3dkKCksIHBhdGgpCiAKIAorZGVmIF93cml0ZV9hdG9taWMocGF0aCwgZGF0YSk6CisgICAgIiIiQmVzdC1lZmZvcnQgZnVuY3Rpb24gdG8gd3JpdGUgZGF0YSB0byBhIHBhdGggYXRvbWljYWxseS4KKyAgICBCZSBwcmVwYXJlZCB0byBoYW5kbGUgYSBGaWxlRXhpc3RzRXJyb3IgaWYgY29uY3VycmVudCB3cml0aW5nIG9mIHRoZQorICAgIHRlbXBvcmFyeSBmaWxlIGlzIGF0dGVtcHRlZC4iIiIKKyAgICAjIFJlbmFtaW5nIHNob3VsZCBiZSBhdG9taWMgb24gbW9zdCBwbGF0Zm9ybXMgKGluY2x1ZGluZyBXaW5kb3dzKS4KKyAgICAjIFVuZGVyIFdpbmRvd3MsIHRoZSBsaW1pdGF0aW9uIGlzIHRoYXQgd2UgY2FuJ3QgcmVuYW1lKCkgdG8gYW4gZXhpc3RpbmcKKyAgICAjIHBhdGgsIHdoaWxlIFBPU0lYIHdpbGwgb3ZlcndyaXRlIGl0LiBCdXQgaGVyZSB3ZSBkb24ndCByZWFsbHkgY2FyZQorICAgICMgaWYgdGhlcmUgaXMgYSBnbGltcHNlIG9mIHRpbWUgZHVyaW5nIHdoaWNoIHRoZSBmaW5hbCBweWMgZmlsZSBkb2Vzbid0CisgICAgIyBleGlzdC4KKyAgICAjIGlkKCkgaXMgdXNlZCB0byBnZW5lcmF0ZSBhIHBzZXVkby1yYW5kb20gZmlsZW5hbWUuCisgICAgcGF0aF90bXAgPSAne30ue30nLmZvcm1hdChwYXRoLCBpZChwYXRoKSkKKyAgICBmZCA9IF9vcy5vcGVuKHBhdGhfdG1wLCBfb3MuT19FWENMIHwgX29zLk9fQ1JFQVQgfCBfb3MuT19XUk9OTFksIDBvNjY2KQorICAgIHRyeToKKyAgICAgICAgd2l0aCBfaW8uRmlsZUlPKGZkLCAnd2InKSBhcyBmaWxlOgorICAgICAgICAgICAgZmlsZS53cml0ZShkYXRhKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBfb3MucmVuYW1lKHBhdGhfdG1wLCBwYXRoKQorICAgICAgICBleGNlcHQgRmlsZUV4aXN0c0Vycm9yOgorICAgICAgICAgICAgIyBXaW5kb3dzIChpZiB3ZSBoYWQgYWNjZXNzIHRvIE1vdmVGaWxlRXgsIHdlIGNvdWxkIG92ZXJ3cml0ZSkKKyAgICAgICAgICAgIF9vcy51bmxpbmsocGF0aCkKKyAgICAgICAgICAgIF9vcy5yZW5hbWUocGF0aF90bXAsIHBhdGgpCisgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIF9vcy51bmxpbmsocGF0aF90bXApCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICByYWlzZQorCisKIGRlZiBfd3JhcChuZXcsIG9sZCk6CiAgICAgIiIiU2ltcGxlIHN1YnN0aXR1dGUgZm9yIGZ1bmN0b29scy53cmFwcy4iIiIKLSAgICBmb3IgcmVwbGFjZSBpbiBbJ19fbW9kdWxlX18nLCAnX19uYW1lX18nLCAnX19kb2NfXyddOgorICAgIGZvciByZXBsYWNlIGluIFsnX19tb2R1bGVfXycsICdfX25hbWVfXycsICdfX3F1YWxuYW1lX18nLCAnX19kb2NfXyddOgogICAgICAgICBzZXRhdHRyKG5ldywgcmVwbGFjZSwgZ2V0YXR0cihvbGQsIHJlcGxhY2UpKQogICAgIG5ldy5fX2RpY3RfXy51cGRhdGUob2xkLl9fZGljdF9fKQogCkBAIC05MywyNiArMTgwLDI2IEBACiAKIGRlZiBzZXRfcGFja2FnZShmeG4pOgogICAgICIiIlNldCBfX3BhY2thZ2VfXyBvbiB0aGUgcmV0dXJuZWQgbW9kdWxlLiIiIgotICAgIGRlZiB3cmFwcGVyKCphcmdzLCAqKmt3YXJncyk6CisgICAgZGVmIHNldF9wYWNrYWdlX3dyYXBwZXIoKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgbW9kdWxlID0gZnhuKCphcmdzLCAqKmt3YXJncykKICAgICAgICAgaWYgbm90IGhhc2F0dHIobW9kdWxlLCAnX19wYWNrYWdlX18nKSBvciBtb2R1bGUuX19wYWNrYWdlX18gaXMgTm9uZToKICAgICAgICAgICAgIG1vZHVsZS5fX3BhY2thZ2VfXyA9IG1vZHVsZS5fX25hbWVfXwogICAgICAgICAgICAgaWYgbm90IGhhc2F0dHIobW9kdWxlLCAnX19wYXRoX18nKToKICAgICAgICAgICAgICAgICBtb2R1bGUuX19wYWNrYWdlX18gPSBtb2R1bGUuX19wYWNrYWdlX18ucnBhcnRpdGlvbignLicpWzBdCiAgICAgICAgIHJldHVybiBtb2R1bGUKLSAgICBfd3JhcCh3cmFwcGVyLCBmeG4pCi0gICAgcmV0dXJuIHdyYXBwZXIKKyAgICBfd3JhcChzZXRfcGFja2FnZV93cmFwcGVyLCBmeG4pCisgICAgcmV0dXJuIHNldF9wYWNrYWdlX3dyYXBwZXIKIAogCiBkZWYgc2V0X2xvYWRlcihmeG4pOgogICAgICIiIlNldCBfX2xvYWRlcl9fIG9uIHRoZSByZXR1cm5lZCBtb2R1bGUuIiIiCi0gICAgZGVmIHdyYXBwZXIoc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICBkZWYgc2V0X2xvYWRlcl93cmFwcGVyKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgIG1vZHVsZSA9IGZ4bihzZWxmLCAqYXJncywgKiprd2FyZ3MpCiAgICAgICAgIGlmIG5vdCBoYXNhdHRyKG1vZHVsZSwgJ19fbG9hZGVyX18nKToKICAgICAgICAgICAgIG1vZHVsZS5fX2xvYWRlcl9fID0gc2VsZgogICAgICAgICByZXR1cm4gbW9kdWxlCi0gICAgX3dyYXAod3JhcHBlciwgZnhuKQotICAgIHJldHVybiB3cmFwcGVyCisgICAgX3dyYXAoc2V0X2xvYWRlcl93cmFwcGVyLCBmeG4pCisgICAgcmV0dXJuIHNldF9sb2FkZXJfd3JhcHBlcgogCiAKIGRlZiBtb2R1bGVfZm9yX2xvYWRlcihmeG4pOgpAQCAtMTI4LDcgKzIxNSw3IEBACiAgICAgdGhlIHNlY29uZCBhcmd1bWVudC4KIAogICAgICIiIgotICAgIGRlZiBkZWNvcmF0ZWQoc2VsZiwgZnVsbG5hbWUsICphcmdzLCAqKmt3YXJncyk6CisgICAgZGVmIG1vZHVsZV9mb3JfbG9hZGVyX3dyYXBwZXIoc2VsZiwgZnVsbG5hbWUsICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgIG1vZHVsZSA9IHN5cy5tb2R1bGVzLmdldChmdWxsbmFtZSkKICAgICAgICAgaXNfcmVsb2FkID0gYm9vbChtb2R1bGUpCiAgICAgICAgIGlmIG5vdCBpc19yZWxvYWQ6CkBAIC0xNDMsOCArMjMwLDggQEAKICAgICAgICAgICAgIGlmIG5vdCBpc19yZWxvYWQ6CiAgICAgICAgICAgICAgICAgZGVsIHN5cy5tb2R1bGVzW2Z1bGxuYW1lXQogICAgICAgICAgICAgcmFpc2UKLSAgICBfd3JhcChkZWNvcmF0ZWQsIGZ4bikKLSAgICByZXR1cm4gZGVjb3JhdGVkCisgICAgX3dyYXAobW9kdWxlX2Zvcl9sb2FkZXJfd3JhcHBlciwgZnhuKQorICAgIHJldHVybiBtb2R1bGVfZm9yX2xvYWRlcl93cmFwcGVyCiAKIAogZGVmIF9jaGVja19uYW1lKG1ldGhvZCk6CkBAIC0xNTUsMzIgKzI0MiwzMiBAQAogICAgIGNvbXBhcmVkIGFnYWluc3QuIElmIHRoZSBjb21wYXJpc29uIGZhaWxzIHRoZW4gSW1wb3J0RXJyb3IgaXMgcmFpc2VkLgogCiAgICAgIiIiCi0gICAgZGVmIGlubmVyKHNlbGYsIG5hbWUsICphcmdzLCAqKmt3YXJncyk6CisgICAgZGVmIF9jaGVja19uYW1lX3dyYXBwZXIoc2VsZiwgbmFtZSwgKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgaWYgc2VsZi5fbmFtZSAhPSBuYW1lOgogICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IoImxvYWRlciBjYW5ub3QgaGFuZGxlICVzIiAlIG5hbWUpCiAgICAgICAgIHJldHVybiBtZXRob2Qoc2VsZiwgbmFtZSwgKmFyZ3MsICoqa3dhcmdzKQotICAgIF93cmFwKGlubmVyLCBtZXRob2QpCi0gICAgcmV0dXJuIGlubmVyCisgICAgX3dyYXAoX2NoZWNrX25hbWVfd3JhcHBlciwgbWV0aG9kKQorICAgIHJldHVybiBfY2hlY2tfbmFtZV93cmFwcGVyCiAKIAogZGVmIF9yZXF1aXJlc19idWlsdGluKGZ4bik6CiAgICAgIiIiRGVjb3JhdG9yIHRvIHZlcmlmeSB0aGUgbmFtZWQgbW9kdWxlIGlzIGJ1aWx0LWluLiIiIgotICAgIGRlZiB3cmFwcGVyKHNlbGYsIGZ1bGxuYW1lKToKKyAgICBkZWYgX3JlcXVpcmVzX2J1aWx0aW5fd3JhcHBlcihzZWxmLCBmdWxsbmFtZSk6CiAgICAgICAgIGlmIGZ1bGxuYW1lIG5vdCBpbiBzeXMuYnVpbHRpbl9tb2R1bGVfbmFtZXM6CiAgICAgICAgICAgICByYWlzZSBJbXBvcnRFcnJvcigiezB9IGlzIG5vdCBhIGJ1aWx0LWluIG1vZHVsZSIuZm9ybWF0KGZ1bGxuYW1lKSkKICAgICAgICAgcmV0dXJuIGZ4bihzZWxmLCBmdWxsbmFtZSkKLSAgICBfd3JhcCh3cmFwcGVyLCBmeG4pCi0gICAgcmV0dXJuIHdyYXBwZXIKKyAgICBfd3JhcChfcmVxdWlyZXNfYnVpbHRpbl93cmFwcGVyLCBmeG4pCisgICAgcmV0dXJuIF9yZXF1aXJlc19idWlsdGluX3dyYXBwZXIKIAogCiBkZWYgX3JlcXVpcmVzX2Zyb3plbihmeG4pOgogICAgICIiIkRlY29yYXRvciB0byB2ZXJpZnkgdGhlIG5hbWVkIG1vZHVsZSBpcyBmcm96ZW4uIiIiCi0gICAgZGVmIHdyYXBwZXIoc2VsZiwgZnVsbG5hbWUpOgorICAgIGRlZiBfcmVxdWlyZXNfZnJvemVuX3dyYXBwZXIoc2VsZiwgZnVsbG5hbWUpOgogICAgICAgICBpZiBub3QgaW1wLmlzX2Zyb3plbihmdWxsbmFtZSk6CiAgICAgICAgICAgICByYWlzZSBJbXBvcnRFcnJvcigiezB9IGlzIG5vdCBhIGZyb3plbiBtb2R1bGUiLmZvcm1hdChmdWxsbmFtZSkpCiAgICAgICAgIHJldHVybiBmeG4oc2VsZiwgZnVsbG5hbWUpCi0gICAgX3dyYXAod3JhcHBlciwgZnhuKQotICAgIHJldHVybiB3cmFwcGVyCisgICAgX3dyYXAoX3JlcXVpcmVzX2Zyb3plbl93cmFwcGVyLCBmeG4pCisgICAgcmV0dXJuIF9yZXF1aXJlc19mcm96ZW5fd3JhcHBlcgogCiAKIGRlZiBfc3VmZml4X2xpc3Qoc3VmZml4X3R5cGUpOgpAQCAtMjQwLDcgKzMyNyw3IEBACiAgICAgQGNsYXNzbWV0aG9kCiAgICAgQF9yZXF1aXJlc19idWlsdGluCiAgICAgZGVmIGlzX3BhY2thZ2UoY2xzLCBmdWxsbmFtZSk6Ci0gICAgICAgICIiIlJldHVybiBOb25lIGFzIGJ1aWx0LWluIG1vZHVsZSBhcmUgbmV2ZXIgcGFja2FnZXMuIiIiCisgICAgICAgICIiIlJldHVybiBOb25lIGFzIGJ1aWx0LWluIG1vZHVsZXMgYXJlIG5ldmVyIHBhY2thZ2VzLiIiIgogICAgICAgICByZXR1cm4gRmFsc2UKIAogCkBAIC0zMDIsMjUgKzM4OSw0MCBAQAogICAgICAgICBmaWxlbmFtZSA9IHNlbGYuZ2V0X2ZpbGVuYW1lKGZ1bGxuYW1lKS5ycGFydGl0aW9uKHBhdGhfc2VwKVsyXQogICAgICAgICByZXR1cm4gZmlsZW5hbWUucnNwbGl0KCcuJywgMSlbMF0gPT0gJ19faW5pdF9fJwogCi0gICAgZGVmIF9ieXRlc19mcm9tX2J5dGVjb2RlKHNlbGYsIGZ1bGxuYW1lLCBkYXRhLCBzb3VyY2VfbXRpbWUpOgorICAgIGRlZiBfYnl0ZXNfZnJvbV9ieXRlY29kZShzZWxmLCBmdWxsbmFtZSwgZGF0YSwgc291cmNlX3N0YXRzKToKICAgICAgICAgIiIiUmV0dXJuIHRoZSBtYXJzaGFsbGVkIGJ5dGVzIGZyb20gYnl0ZWNvZGUsIHZlcmlmeWluZyB0aGUgbWFnaWMKLSAgICAgICAgbnVtYmVyIGFuZCB0aW1lc3RhbXAgYWxvbmcgdGhlIHdheS4KKyAgICAgICAgbnVtYmVyLCB0aW1lc3RhbXAgYW5kIHNvdXJjZSBzaXplIGFsb25nIHRoZSB3YXkuCiAKLSAgICAgICAgSWYgc291cmNlX210aW1lIGlzIE5vbmUgdGhlbiBza2lwIHRoZSB0aW1lc3RhbXAgY2hlY2suCisgICAgICAgIElmIHNvdXJjZV9zdGF0cyBpcyBOb25lIHRoZW4gc2tpcCB0aGUgdGltZXN0YW1wIGNoZWNrLgogCiAgICAgICAgICIiIgogICAgICAgICBtYWdpYyA9IGRhdGFbOjRdCiAgICAgICAgIHJhd190aW1lc3RhbXAgPSBkYXRhWzQ6OF0KKyAgICAgICAgcmF3X3NpemUgPSBkYXRhWzg6MTJdCiAgICAgICAgIGlmIGxlbihtYWdpYykgIT0gNCBvciBtYWdpYyAhPSBpbXAuZ2V0X21hZ2ljKCk6CiAgICAgICAgICAgICByYWlzZSBJbXBvcnRFcnJvcigiYmFkIG1hZ2ljIG51bWJlciBpbiB7fSIuZm9ybWF0KGZ1bGxuYW1lKSkKICAgICAgICAgZWxpZiBsZW4ocmF3X3RpbWVzdGFtcCkgIT0gNDoKICAgICAgICAgICAgIHJhaXNlIEVPRkVycm9yKCJiYWQgdGltZXN0YW1wIGluIHt9Ii5mb3JtYXQoZnVsbG5hbWUpKQotICAgICAgICBlbGlmIHNvdXJjZV9tdGltZSBpcyBub3QgTm9uZToKLSAgICAgICAgICAgIGlmIG1hcnNoYWwuX3JfbG9uZyhyYXdfdGltZXN0YW1wKSAhPSBzb3VyY2VfbXRpbWU6Ci0gICAgICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IoImJ5dGVjb2RlIGlzIHN0YWxlIGZvciB7fSIuZm9ybWF0KGZ1bGxuYW1lKSkKKyAgICAgICAgZWxpZiBsZW4ocmF3X3NpemUpICE9IDQ6CisgICAgICAgICAgICByYWlzZSBFT0ZFcnJvcigiYmFkIHNpemUgaW4ge30iLmZvcm1hdChmdWxsbmFtZSkpCisgICAgICAgIGlmIHNvdXJjZV9zdGF0cyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzb3VyY2VfbXRpbWUgPSBpbnQoc291cmNlX3N0YXRzWydtdGltZSddKQorICAgICAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaWYgX3JfbG9uZyhyYXdfdGltZXN0YW1wKSAhPSBzb3VyY2VfbXRpbWU6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIEltcG9ydEVycm9yKCJieXRlY29kZSBpcyBzdGFsZSBmb3Ige30iLmZvcm1hdChmdWxsbmFtZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc291cmNlX3NpemUgPSBzb3VyY2Vfc3RhdHNbJ3NpemUnXSAmIDB4RkZGRkZGRkYKKyAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGlmIF9yX2xvbmcocmF3X3NpemUpICE9IHNvdXJjZV9zaXplOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBJbXBvcnRFcnJvcigiYnl0ZWNvZGUgaXMgc3RhbGUgZm9yIHt9Ii5mb3JtYXQoZnVsbG5hbWUpKQogICAgICAgICAjIENhbid0IHJldHVybiB0aGUgY29kZSBvYmplY3QgYXMgZXJyb3JzIGZyb20gbWFyc2hhbCBsb2FkaW5nIG5lZWQgdG8KICAgICAgICAgIyBwcm9wYWdhdGUgZXZlbiB3aGVuIHNvdXJjZSBpcyBhdmFpbGFibGUuCi0gICAgICAgIHJldHVybiBkYXRhWzg6XQorICAgICAgICByZXR1cm4gZGF0YVsxMjpdCiAKICAgICBAbW9kdWxlX2Zvcl9sb2FkZXIKICAgICBkZWYgX2xvYWRfbW9kdWxlKHNlbGYsIG1vZHVsZSwgKiwgc291cmNlbGVzcz1GYWxzZSk6CkBAIC0zNDgsMTIgKzQ1MCwyMSBAQAogICAgIGRlZiBwYXRoX210aW1lKHNlbGYsIHBhdGgpOgogICAgICAgICAiIiJPcHRpb25hbCBtZXRob2QgdGhhdCByZXR1cm5zIHRoZSBtb2RpZmljYXRpb24gdGltZSAoYW4gaW50KSBmb3IgdGhlCiAgICAgICAgIHNwZWNpZmllZCBwYXRoLCB3aGVyZSBwYXRoIGlzIGEgc3RyLgotCi0gICAgICAgIEltcGxlbWVudGluZyB0aGlzIG1ldGhvZCBhbGxvd3MgdGhlIGxvYWRlciB0byByZWFkIGJ5dGVjb2RlIGZpbGVzLgotCiAgICAgICAgICIiIgogICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCiAKKyAgICBkZWYgcGF0aF9zdGF0cyhzZWxmLCBwYXRoKToKKyAgICAgICAgIiIiT3B0aW9uYWwgbWV0aG9kIHJldHVybmluZyBhIG1ldGFkYXRhIGRpY3QgZm9yIHRoZSBzcGVjaWZpZWQgcGF0aAorICAgICAgICB0byBieSB0aGUgcGF0aCAoc3RyKS4KKyAgICAgICAgUG9zc2libGUga2V5czoKKyAgICAgICAgLSAnbXRpbWUnIChtYW5kYXRvcnkpIGlzIHRoZSBudW1lcmljIHRpbWVzdGFtcCBvZiBsYXN0IHNvdXJjZQorICAgICAgICAgIGNvZGUgbW9kaWZpY2F0aW9uOworICAgICAgICAtICdzaXplJyAob3B0aW9uYWwpIGlzIHRoZSBzaXplIGluIGJ5dGVzIG9mIHRoZSBzb3VyY2UgY29kZS4KKworICAgICAgICBJbXBsZW1lbnRpbmcgdGhpcyBtZXRob2QgYWxsb3dzIHRoZSBsb2FkZXIgdG8gcmVhZCBieXRlY29kZSBmaWxlcy4KKyAgICAgICAgIiIiCisgICAgICAgIHJldHVybiB7J210aW1lJzogc2VsZi5wYXRoX210aW1lKHBhdGgpfQorCiAgICAgZGVmIHNldF9kYXRhKHNlbGYsIHBhdGgsIGRhdGEpOgogICAgICAgICAiIiJPcHRpb25hbCBtZXRob2Qgd2hpY2ggd3JpdGVzIGRhdGEgKGJ5dGVzKSB0byBhIGZpbGUgcGF0aCAoYSBzdHIpLgogCkBAIC0zNzgsNyArNDg5LDcgQEAKICAgICBkZWYgZ2V0X2NvZGUoc2VsZiwgZnVsbG5hbWUpOgogICAgICAgICAiIiJDb25jcmV0ZSBpbXBsZW1lbnRhdGlvbiBvZiBJbnNwZWN0TG9hZGVyLmdldF9jb2RlLgogCi0gICAgICAgIFJlYWRpbmcgb2YgYnl0ZWNvZGUgcmVxdWlyZXMgcGF0aF9tdGltZSB0byBiZSBpbXBsZW1lbnRlZC4gVG8gd3JpdGUKKyAgICAgICAgUmVhZGluZyBvZiBieXRlY29kZSByZXF1aXJlcyBwYXRoX3N0YXRzIHRvIGJlIGltcGxlbWVudGVkLiBUbyB3cml0ZQogICAgICAgICBieXRlY29kZSwgc2V0X2RhdGEgbXVzdCBhbHNvIGJlIGltcGxlbWVudGVkLgogCiAgICAgICAgICIiIgpAQCAtMzg3LDEwICs0OTgsMTEgQEAKICAgICAgICAgc291cmNlX210aW1lID0gTm9uZQogICAgICAgICBpZiBieXRlY29kZV9wYXRoIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHNvdXJjZV9tdGltZSA9IHNlbGYucGF0aF9tdGltZShzb3VyY2VfcGF0aCkKKyAgICAgICAgICAgICAgICBzdCA9IHNlbGYucGF0aF9zdGF0cyhzb3VyY2VfcGF0aCkKICAgICAgICAgICAgIGV4Y2VwdCBOb3RJbXBsZW1lbnRlZEVycm9yOgogICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc291cmNlX210aW1lID0gaW50KHN0WydtdGltZSddKQogICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgZGF0YSA9IHNlbGYuZ2V0X2RhdGEoYnl0ZWNvZGVfcGF0aCkKICAgICAgICAgICAgICAgICBleGNlcHQgSU9FcnJvcjoKQEAgLTM5OCwxMiArNTEwLDEzIEBACiAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICAgICAgYnl0ZXNfZGF0YSA9IHNlbGYuX2J5dGVzX2Zyb21fYnl0ZWNvZGUoZnVsbG5hbWUsIGRhdGEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2VfbXRpbWUpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdCkKICAgICAgICAgICAgICAgICAgICAgZXhjZXB0IChJbXBvcnRFcnJvciwgRU9GRXJyb3IpOgogICAgICAgICAgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICAgICAgZm91bmQgPSBtYXJzaGFsLmxvYWRzKGJ5dGVzX2RhdGEpCiAgICAgICAgICAgICAgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGZvdW5kLCBjb2RlX3R5cGUpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltcC5fZml4X2NvX2ZpbGVuYW1lKGZvdW5kLCBzb3VyY2VfcGF0aCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZm91bmQKICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnID0gIk5vbi1jb2RlIG9iamVjdCBpbiB7fSIKQEAgLTQxNyw3ICs1MzAsOCBAQAogICAgICAgICAgICAgIyB0aGVpciBvd24gY2FjaGVkIGZpbGUgZm9ybWF0LCB0aGlzIGJsb2NrIG9mIGNvZGUgd2lsbCBtb3N0IGxpa2VseQogICAgICAgICAgICAgIyB0aHJvdyBhbiBleGNlcHRpb24uCiAgICAgICAgICAgICBkYXRhID0gYnl0ZWFycmF5KGltcC5nZXRfbWFnaWMoKSkKLSAgICAgICAgICAgIGRhdGEuZXh0ZW5kKG1hcnNoYWwuX3dfbG9uZyhzb3VyY2VfbXRpbWUpKQorICAgICAgICAgICAgZGF0YS5leHRlbmQoX3dfbG9uZyhzb3VyY2VfbXRpbWUpKQorICAgICAgICAgICAgZGF0YS5leHRlbmQoX3dfbG9uZyhsZW4oc291cmNlX2J5dGVzKSkpCiAgICAgICAgICAgICBkYXRhLmV4dGVuZChtYXJzaGFsLmR1bXBzKGNvZGVfb2JqZWN0KSkKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBzZWxmLnNldF9kYXRhKGJ5dGVjb2RlX3BhdGgsIGRhdGEpCkBAIC00NjIsOSArNTc2LDEwIEBACiAKICAgICAiIiJDb25jcmV0ZSBpbXBsZW1lbnRhdGlvbiBvZiBTb3VyY2VMb2FkZXIgdXNpbmcgdGhlIGZpbGUgc3lzdGVtLiIiIgogCi0gICAgZGVmIHBhdGhfbXRpbWUoc2VsZiwgcGF0aCk6Ci0gICAgICAgICIiIlJldHVybiB0aGUgbW9kaWZpY2F0aW9uIHRpbWUgZm9yIHRoZSBwYXRoLiIiIgotICAgICAgICByZXR1cm4gaW50KF9vcy5zdGF0KHBhdGgpLnN0X210aW1lKQorICAgIGRlZiBwYXRoX3N0YXRzKHNlbGYsIHBhdGgpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIG1ldGFkYXQgZm9yIHRoZSBwYXRoLiIiIgorICAgICAgICBzdCA9IF9vcy5zdGF0KHBhdGgpCisgICAgICAgIHJldHVybiB7J210aW1lJzogc3Quc3RfbXRpbWUsICdzaXplJzogc3Quc3Rfc2l6ZX0KIAogICAgIGRlZiBzZXRfZGF0YShzZWxmLCBwYXRoLCBkYXRhKToKICAgICAgICAgIiIiV3JpdGUgYnl0ZXMgZGF0YSB0byBhIGZpbGUuIiIiCkBAIC00NzksMjggKzU5NCwxOSBAQAogICAgICAgICAgICAgcGFyZW50ID0gX3BhdGhfam9pbihwYXJlbnQsIHBhcnQpCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgX29zLm1rZGlyKHBhcmVudCkKLSAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGV4YzoKKyAgICAgICAgICAgIGV4Y2VwdCBGaWxlRXhpc3RzRXJyb3I6CiAgICAgICAgICAgICAgICAgIyBQcm9iYWJseSBhbm90aGVyIFB5dGhvbiBwcm9jZXNzIGFscmVhZHkgY3JlYXRlZCB0aGUgZGlyLgotICAgICAgICAgICAgICAgIGlmIGV4Yy5lcnJubyA9PSBlcnJuby5FRVhJU1Q6Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgcmFpc2UKLSAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yIGFzIGV4YzoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgZXhjZXB0IFBlcm1pc3Npb25FcnJvcjoKICAgICAgICAgICAgICAgICAjIElmIGNhbid0IGdldCBwcm9wZXIgYWNjZXNzLCB0aGVuIGp1c3QgZm9yZ2V0IGFib3V0IHdyaXRpbmcKICAgICAgICAgICAgICAgICAjIHRoZSBkYXRhLgotICAgICAgICAgICAgICAgIGlmIGV4Yy5lcnJubyA9PSBlcnJuby5FQUNDRVM6Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybgotICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgIHJhaXNlCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHdpdGggX2lvLkZpbGVJTyhwYXRoLCAnd2InKSBhcyBmaWxlOgotICAgICAgICAgICAgICAgIGZpbGUud3JpdGUoZGF0YSkKLSAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZXhjOgotICAgICAgICAgICAgIyBEb24ndCB3b3JyeSBpZiB5b3UgY2FuJ3Qgd3JpdGUgYnl0ZWNvZGUuCi0gICAgICAgICAgICBpZiBleGMuZXJybm8gPT0gZXJybm8uRUFDQ0VTOgogICAgICAgICAgICAgICAgIHJldHVybgotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICB0cnk6CisgICAgICAgICAgICBfd3JpdGVfYXRvbWljKHBhdGgsIGRhdGEpCisgICAgICAgIGV4Y2VwdCAoUGVybWlzc2lvbkVycm9yLCBGaWxlRXhpc3RzRXJyb3IpOgorICAgICAgICAgICAgIyBEb24ndCB3b3JyeSBpZiB5b3UgY2FuJ3Qgd3JpdGUgYnl0ZWNvZGUgb3Igc29tZW9uZSBpcyB3cml0aW5nCisgICAgICAgICAgICAjIGl0IGF0IHRoZSBzYW1lIHRpbWUuCisgICAgICAgICAgICBwYXNzCiAKIAogY2xhc3MgX1NvdXJjZWxlc3NGaWxlTG9hZGVyKF9GaWxlTG9hZGVyLCBfTG9hZGVyQmFzaWNzKToKQEAgLTc1OCwxNCArODY0LDE0IEBACiAKIF9JTVBMSUNJVF9NRVRBX1BBVEggPSBbQnVpbHRpbkltcG9ydGVyLCBGcm96ZW5JbXBvcnRlciwgX0RlZmF1bHRQYXRoRmluZGVyXQogCi1fRVJSX01TRyA9ICdObyBtb2R1bGUgbmFtZWQge30nCitfRVJSX01TRyA9ICdObyBtb2R1bGUgbmFtZWQgeyFyfScKIAogZGVmIF9nY2RfaW1wb3J0KG5hbWUsIHBhY2thZ2U9Tm9uZSwgbGV2ZWw9MCk6CiAgICAgIiIiSW1wb3J0IGFuZCByZXR1cm4gdGhlIG1vZHVsZSBiYXNlZCBvbiBpdHMgbmFtZSwgdGhlIHBhY2thZ2UgdGhlIGNhbGwgaXMKICAgICBiZWluZyBtYWRlIGZyb20sIGFuZCB0aGUgbGV2ZWwgYWRqdXN0bWVudC4KIAogICAgIFRoaXMgZnVuY3Rpb24gcmVwcmVzZW50cyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRlbm9taW5hdG9yIG9mIGZ1bmN0aW9uYWxpdHkKLSAgICBiZXR3ZWVuIGltcG9ydF9tb2R1bGUgYW5kIF9faW1wb3J0X18uIFRoaXMgaW5jbHVkZXMgc2V0dHRpbmcgX19wYWNrYWdlX18gaWYKKyAgICBiZXR3ZWVuIGltcG9ydF9tb2R1bGUgYW5kIF9faW1wb3J0X18uIFRoaXMgaW5jbHVkZXMgc2V0dGluZyBfX3BhY2thZ2VfXyBpZgogICAgIHRoZSBsb2FkZXIgZGlkIG5vdC4KIAogICAgICIiIgpAQCAtODU3LDcgKzk2Myw3IEBACiAgICAgICAgIG1vZHVsZSA9IF9nY2RfaW1wb3J0KG5hbWUpCiAgICAgZWxzZToKICAgICAgICAgIyBfX3BhY2thZ2VfXyBpcyBub3QgZ3VhcmFudGVlZCB0byBiZSBkZWZpbmVkIG9yIGNvdWxkIGJlIHNldCB0byBOb25lCi0gICAgICAgICMgdG8gcmVwcmVzZW50IHRoYXQgaXQncyBwcm9wZXIgdmFsdWUgaXMgdW5rbm93bgorICAgICAgICAjIHRvIHJlcHJlc2VudCB0aGF0IGl0cyBwcm9wZXIgdmFsdWUgaXMgdW5rbm93bgogICAgICAgICBwYWNrYWdlID0gZ2xvYmFscy5nZXQoJ19fcGFja2FnZV9fJykKICAgICAgICAgaWYgcGFja2FnZSBpcyBOb25lOgogICAgICAgICAgICAgcGFja2FnZSA9IGdsb2JhbHNbJ19fbmFtZV9fJ10KZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvYWJjLnB5IGIvTGliL2ltcG9ydGxpYi9hYmMucHkKaW5kZXggZmEzNDNmOC4uYzRiNzE4NyAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi9hYmMucHkKKysrIGIvTGliL2ltcG9ydGxpYi9hYmMucHkKQEAgLTEyMyw3ICsxMjMsMjAgQEAKIAogICAgIGRlZiBwYXRoX210aW1lKHNlbGYsIHBhdGgpOgogICAgICAgICAiIiJSZXR1cm4gdGhlIChpbnQpIG1vZGlmaWNhdGlvbiB0aW1lIGZvciB0aGUgcGF0aCAoc3RyKS4iIiIKLSAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcgorICAgICAgICBpZiBzZWxmLnBhdGhfc3RhdHMuX19mdW5jX18gaXMgU291cmNlTG9hZGVyLnBhdGhfc3RhdHM6CisgICAgICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCisgICAgICAgIHJldHVybiBpbnQoc2VsZi5wYXRoX3N0YXRzKHBhdGgpWydtdGltZSddKQorCisgICAgZGVmIHBhdGhfc3RhdHMoc2VsZiwgcGF0aCk6CisgICAgICAgICIiIlJldHVybiBhIG1ldGFkYXRhIGRpY3QgZm9yIHRoZSBzb3VyY2UgcG9pbnRlZCB0byBieSB0aGUgcGF0aCAoc3RyKS4KKyAgICAgICAgUG9zc2libGUga2V5czoKKyAgICAgICAgLSAnbXRpbWUnIChtYW5kYXRvcnkpIGlzIHRoZSBudW1lcmljIHRpbWVzdGFtcCBvZiBsYXN0IHNvdXJjZQorICAgICAgICAgIGNvZGUgbW9kaWZpY2F0aW9uOworICAgICAgICAtICdzaXplJyAob3B0aW9uYWwpIGlzIHRoZSBzaXplIGluIGJ5dGVzIG9mIHRoZSBzb3VyY2UgY29kZS4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIHNlbGYucGF0aF9tdGltZS5fX2Z1bmNfXyBpcyBTb3VyY2VMb2FkZXIucGF0aF9tdGltZToKKyAgICAgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IKKyAgICAgICAgcmV0dXJuIHsnbXRpbWUnOiBzZWxmLnBhdGhfbXRpbWUocGF0aCl9CiAKICAgICBkZWYgc2V0X2RhdGEoc2VsZiwgcGF0aCwgZGF0YSk6CiAgICAgICAgICIiIldyaXRlIHRoZSBieXRlcyB0byB0aGUgcGF0aCAoaWYgcG9zc2libGUpLgpAQCAtMTk1LDcgKzIwOCw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVzZSBTb3VyY2VMb2FkZXIgaW5zdGVhZC4gIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTZWUgdGhlIGltcG9ydGxpYiBkb2N1bWVudGF0aW9uIG9uIGhvdyB0byBiZSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbXBhdGlibGUgd2l0aCBQeXRob24gMy4xIG9ud2FyZHMuIiwKLSAgICAgICAgICAgICAgICAgICAgICAgIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICAgICAgICAgICAgICBEZXByZWNhdGlvbldhcm5pbmcpCiAgICAgICAgIHBhdGggPSBzZWxmLnNvdXJjZV9wYXRoKGZ1bGxuYW1lKQogICAgICAgICBpZiBwYXRoIGlzIE5vbmU6CiAgICAgICAgICAgICByYWlzZSBJbXBvcnRFcnJvcgpAQCAtMjM0LDcgKzI0Nyw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlbW92YWwgaW4gUHl0aG9uIDMuNDsgdXNlIFNvdXJjZUxvYWRlciBpbnN0ZWFkLiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIklmIFB5dGhvbiAzLjEgY29tcGF0aWJpbGl0eSBpcyByZXF1aXJlZCwgc2VlIHRoZSAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxhdGVzdCBkb2N1bWVudGF0aW9uIGZvciBQeUxvYWRlci4iLAotICAgICAgICAgICAgICAgICAgICAgICAgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgICAgICAgICAgICAgIERlcHJlY2F0aW9uV2FybmluZykKICAgICAgICAgc291cmNlX3RpbWVzdGFtcCA9IHNlbGYuc291cmNlX210aW1lKGZ1bGxuYW1lKQogICAgICAgICAjIFRyeSB0byB1c2UgYnl0ZWNvZGUgaWYgaXQgaXMgYXZhaWxhYmxlLgogICAgICAgICBieXRlY29kZV9wYXRoID0gc2VsZi5ieXRlY29kZV9wYXRoKGZ1bGxuYW1lKQpAQCAtMjQ3LDcgKzI2MCw3IEBACiAgICAgICAgICAgICAgICAgcmF3X3RpbWVzdGFtcCA9IGRhdGFbNDo4XQogICAgICAgICAgICAgICAgIGlmIGxlbihyYXdfdGltZXN0YW1wKSA8IDQ6CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlIEVPRkVycm9yKCJiYWQgdGltZXN0YW1wIGluIHt9Ii5mb3JtYXQoZnVsbG5hbWUpKQotICAgICAgICAgICAgICAgIHB5Y190aW1lc3RhbXAgPSBtYXJzaGFsLl9yX2xvbmcocmF3X3RpbWVzdGFtcCkKKyAgICAgICAgICAgICAgICBweWNfdGltZXN0YW1wID0gX2Jvb3RzdHJhcC5fcl9sb25nKHJhd190aW1lc3RhbXApCiAgICAgICAgICAgICAgICAgYnl0ZWNvZGUgPSBkYXRhWzg6XQogICAgICAgICAgICAgICAgICMgVmVyaWZ5IHRoYXQgdGhlIG1hZ2ljIG51bWJlciBpcyB2YWxpZC4KICAgICAgICAgICAgICAgICBpZiBpbXAuZ2V0X21hZ2ljKCkgIT0gbWFnaWM6CkBAIC0yNzksNyArMjkyLDcgQEAKICAgICAgICAgIyBHZW5lcmF0ZSBieXRlY29kZSBhbmQgd3JpdGUgaXQgb3V0LgogICAgICAgICBpZiBub3Qgc3lzLmRvbnRfd3JpdGVfYnl0ZWNvZGU6CiAgICAgICAgICAgICBkYXRhID0gYnl0ZWFycmF5KGltcC5nZXRfbWFnaWMoKSkKLSAgICAgICAgICAgIGRhdGEuZXh0ZW5kKG1hcnNoYWwuX3dfbG9uZyhzb3VyY2VfdGltZXN0YW1wKSkKKyAgICAgICAgICAgIGRhdGEuZXh0ZW5kKF9ib290c3RyYXAuX3dfbG9uZyhzb3VyY2VfdGltZXN0YW1wKSkKICAgICAgICAgICAgIGRhdGEuZXh0ZW5kKG1hcnNoYWwuZHVtcHMoY29kZV9vYmplY3QpKQogICAgICAgICAgICAgc2VsZi53cml0ZV9ieXRlY29kZShmdWxsbmFtZSwgZGF0YSkKICAgICAgICAgcmV0dXJuIGNvZGVfb2JqZWN0CmRpZmYgLS1naXQgYS9MaWIvaW1wb3J0bGliL3Rlc3QvX19tYWluX18ucHkgYi9MaWIvaW1wb3J0bGliL3Rlc3QvX19tYWluX18ucHkKaW5kZXggZGVjYzUzZC4uYTE5OTBiMSAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi90ZXN0L19fbWFpbl9fLnB5CisrKyBiL0xpYi9pbXBvcnRsaWIvdGVzdC9fX21haW5fXy5weQpAQCAtNCw3ICs0LDYgQEAKIGJ1aWx0aW5zLl9faW1wb3J0X18gaW5zdGVhZCBvZiBpbXBvcnRsaWIuX19pbXBvcnRfXy4KIAogIiIiCi1pbXBvcnQgaW1wb3J0bGliCiBmcm9tIGltcG9ydGxpYi50ZXN0LmltcG9ydF8gaW1wb3J0IHV0aWwKIGltcG9ydCBvcy5wYXRoCiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgcnVuX3VuaXR0ZXN0CkBAIC0xMywxMSArMTIsNyBAQAogCiAKIGRlZiB0ZXN0X21haW4oKToKLSAgICBpZiAnX19weWNhY2hlX18nIGluIF9fZmlsZV9fOgotICAgICAgICBwYXJ0cyA9IF9fZmlsZV9fLnNwbGl0KG9zLnBhdGguc2VwKQotICAgICAgICBzdGFydF9kaXIgPSBzZXAuam9pbihwYXJ0c1s6LTJdKQotICAgIGVsc2U6Ci0gICAgICAgIHN0YXJ0X2RpciA9IG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykKKyAgICBzdGFydF9kaXIgPSBvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pCiAgICAgdG9wX2RpciA9IG9zLnBhdGguZGlybmFtZShvcy5wYXRoLmRpcm5hbWUoc3RhcnRfZGlyKSkKICAgICB0ZXN0X2xvYWRlciA9IHVuaXR0ZXN0LlRlc3RMb2FkZXIoKQogICAgIGlmICctLWJ1aWx0aW4nIGluIHN5cy5hcmd2OgpkaWZmIC0tZ2l0IGEvTGliL2ltcG9ydGxpYi90ZXN0L2JlbmNobWFyay5weSBiL0xpYi9pbXBvcnRsaWIvdGVzdC9iZW5jaG1hcmsucHkKaW5kZXggYjVkZTZjNi4uNmMwMDExMWMgMTAwNjQ0Ci0tLSBhL0xpYi9pbXBvcnRsaWIvdGVzdC9iZW5jaG1hcmsucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L2JlbmNobWFyay5weQpAQCAtOSw2ICs5LDcgQEAKIGltcG9ydCBkZWNpbWFsCiBpbXBvcnQgaW1wCiBpbXBvcnQgaW1wb3J0bGliCitpbXBvcnQganNvbgogaW1wb3J0IG9zCiBpbXBvcnQgcHlfY29tcGlsZQogaW1wb3J0IHN5cwpAQCAtMTMyLDE4ICsxMzMsMzQgQEAKICAgICAgICAgeWllbGQgcmVzdWx0CiAKIAotZGVmIG1haW4oaW1wb3J0Xyk6CitkZWYgbWFpbihpbXBvcnRfLCBmaWxlbmFtZT1Ob25lLCBiZW5jaG1hcms9Tm9uZSk6CisgICAgaWYgZmlsZW5hbWUgYW5kIG9zLnBhdGguZXhpc3RzKGZpbGVuYW1lKToKKyAgICAgICAgd2l0aCBvcGVuKGZpbGVuYW1lLCAncicpIGFzIGZpbGU6CisgICAgICAgICAgICBwcmV2X3Jlc3VsdHMgPSBqc29uLmxvYWQoZmlsZSkKKyAgICBlbHNlOgorICAgICAgICBwcmV2X3Jlc3VsdHMgPSB7fQogICAgIF9fYnVpbHRpbnNfXy5fX2ltcG9ydF9fID0gaW1wb3J0XwogICAgIGJlbmNobWFya3MgPSAoZnJvbV9jYWNoZSwgYnVpbHRpbl9tb2QsCiAgICAgICAgICAgICAgICAgICBzb3VyY2VfdXNpbmdfYnl0ZWNvZGUsIHNvdXJjZV93b19ieXRlY29kZSwKICAgICAgICAgICAgICAgICAgIHNvdXJjZV93cml0aW5nX2J5dGVjb2RlLAogICAgICAgICAgICAgICAgICAgZGVjaW1hbF91c2luZ19ieXRlY29kZSwgZGVjaW1hbF93cml0aW5nX2J5dGVjb2RlLAogICAgICAgICAgICAgICAgICAgZGVjaW1hbF93b19ieXRlY29kZSwpCisgICAgaWYgYmVuY2htYXJrOgorICAgICAgICBmb3IgYiBpbiBiZW5jaG1hcmtzOgorICAgICAgICAgICAgaWYgYi5fX2RvY19fID09IGJlbmNobWFyazoKKyAgICAgICAgICAgICAgICBiZW5jaG1hcmtzID0gW2JdCisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHByaW50KCdVbmtub3duIGJlbmNobWFyazogeyFyfScuZm9ybWF0KGJlbmNobWFyaywgZmlsZT1zeXMuc3RkZXJyKSkKKyAgICAgICAgICAgIHN5cy5leGl0KDEpCiAgICAgc2Vjb25kcyA9IDEKICAgICBzZWNvbmRzX3BsdXJhbCA9ICdzJyBpZiBzZWNvbmRzID4gMSBlbHNlICcnCiAgICAgcmVwZWF0ID0gMwotICAgIGhlYWRlciA9ICJNZWFzdXJpbmcgaW1wb3J0cy9zZWNvbmQgb3ZlciB7fSBzZWNvbmR7fSwgYmVzdCBvdXQgb2Yge31cbiIKLSAgICBwcmludChoZWFkZXIuZm9ybWF0KHNlY29uZHMsIHNlY29uZHNfcGx1cmFsLCByZXBlYXQpKQorICAgIGhlYWRlciA9ICgnTWVhc3VyaW5nIGltcG9ydHMvc2Vjb25kIG92ZXIge30gc2Vjb25ke30sIGJlc3Qgb3V0IG9mIHt9XG4nCisgICAgICAgICAgICAgICdFbnRpcmUgYmVuY2htYXJrIHJ1biBzaG91bGQgdGFrZSBhYm91dCB7fSBzZWNvbmRzXG4nKQorICAgIHByaW50KGhlYWRlci5mb3JtYXQoc2Vjb25kcywgc2Vjb25kc19wbHVyYWwsIHJlcGVhdCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGxlbihiZW5jaG1hcmtzKSAqIHNlY29uZHMgKiByZXBlYXQpKQorICAgIG5ld19yZXN1bHRzID0ge30KICAgICBmb3IgYmVuY2htYXJrIGluIGJlbmNobWFya3M6CiAgICAgICAgIHByaW50KGJlbmNobWFyay5fX2RvY19fLCAiWyIsIGVuZD0nICcpCiAgICAgICAgIHN5cy5zdGRvdXQuZmx1c2goKQpAQCAtMTU0LDE5ICsxNzEsNDMgQEAKICAgICAgICAgICAgIHN5cy5zdGRvdXQuZmx1c2goKQogICAgICAgICBhc3NlcnQgbm90IHN5cy5kb250X3dyaXRlX2J5dGVjb2RlCiAgICAgICAgIHByaW50KCJdIiwgImJlc3QgaXMiLCBmb3JtYXQobWF4KHJlc3VsdHMpLCAnLGQnKSkKKyAgICAgICAgbmV3X3Jlc3VsdHNbYmVuY2htYXJrLl9fZG9jX19dID0gcmVzdWx0cworICAgIHByZXZfcmVzdWx0c1tpbXBvcnRfLl9fbW9kdWxlX19dID0gbmV3X3Jlc3VsdHMKKyAgICBpZiAnaW1wb3J0bGliLl9ib290c3RyYXAnIGluIHByZXZfcmVzdWx0cyBhbmQgJ2J1aWx0aW5zJyBpbiBwcmV2X3Jlc3VsdHM6CisgICAgICAgIHByaW50KCdcblxuQ29tcGFyaW5nIGltcG9ydGxpYiB2cy4gX19pbXBvcnRfX1xuJykKKyAgICAgICAgaW1wb3J0bGliX3Jlc3VsdHMgPSBwcmV2X3Jlc3VsdHNbJ2ltcG9ydGxpYi5fYm9vdHN0cmFwJ10KKyAgICAgICAgYnVpbHRpbnNfcmVzdWx0cyA9IHByZXZfcmVzdWx0c1snYnVpbHRpbnMnXQorICAgICAgICBmb3IgYmVuY2htYXJrIGluIGJlbmNobWFya3M6CisgICAgICAgICAgICBiZW5jaG1hcmtfbmFtZSA9IGJlbmNobWFyay5fX2RvY19fCisgICAgICAgICAgICBpbXBvcnRsaWJfcmVzdWx0ID0gbWF4KGltcG9ydGxpYl9yZXN1bHRzW2JlbmNobWFya19uYW1lXSkKKyAgICAgICAgICAgIGJ1aWx0aW5zX3Jlc3VsdCA9IG1heChidWlsdGluc19yZXN1bHRzW2JlbmNobWFya19uYW1lXSkKKyAgICAgICAgICAgIHJlc3VsdCA9ICd7OixkfSB2cy4gezosZH0gKHs6JX0pJy5mb3JtYXQoaW1wb3J0bGliX3Jlc3VsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVpbHRpbnNfcmVzdWx0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltcG9ydGxpYl9yZXN1bHQvYnVpbHRpbnNfcmVzdWx0KQorICAgICAgICAgICAgcHJpbnQoYmVuY2htYXJrX25hbWUsICc6JywgcmVzdWx0KQorICAgIGlmIGZpbGVuYW1lOgorICAgICAgICB3aXRoIG9wZW4oZmlsZW5hbWUsICd3JykgYXMgZmlsZToKKyAgICAgICAgICAgIGpzb24uZHVtcChwcmV2X3Jlc3VsdHMsIGZpbGUsIGluZGVudD0yKQogCiAKIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6Ci0gICAgaW1wb3J0IG9wdHBhcnNlCisgICAgaW1wb3J0IGFyZ3BhcnNlCiAKLSAgICBwYXJzZXIgPSBvcHRwYXJzZS5PcHRpb25QYXJzZXIoKQotICAgIHBhcnNlci5hZGRfb3B0aW9uKCctYicsICctLWJ1aWx0aW4nLCBkZXN0PSdidWlsdGluJywgYWN0aW9uPSdzdG9yZV90cnVlJywKKyAgICBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcigpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLWInLCAnLS1idWlsdGluJywgZGVzdD0nYnVpbHRpbicsIGFjdGlvbj0nc3RvcmVfdHJ1ZScsCiAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0PUZhbHNlLCBoZWxwPSJ1c2UgdGhlIGJ1aWx0LWluIF9faW1wb3J0X18iKQotICAgIG9wdGlvbnMsIGFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCi0gICAgaWYgYXJnczoKLSAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJ1bnJlY29nbml6ZWQgYXJnczoge30iLmZvcm1hdChhcmdzKSkKKyAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctZicsICctLWZpbGUnLCBkZXN0PSdmaWxlbmFtZScsIGRlZmF1bHQ9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGhlbHA9J2ZpbGUgdG8gcmVhZC93cml0ZSByZXN1bHRzIGZyb20vdG8nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcoaW5jb21wYXRpYmxlIHcvIC0tYmVuY2htYXJrKScpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1iZW5jaG1hcmsnLCBkZXN0PSdiZW5jaG1hcmsnLAorICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0nc3BlY2lmaWMgYmVuY2htYXJrIHRvIHJ1biAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcoaW5jb21wYXRpYmxlIHcvIC0tZmlsZSknKQorICAgIG9wdGlvbnMgPSBwYXJzZXIucGFyc2VfYXJncygpCisgICAgaWYgb3B0aW9ucy5maWxlbmFtZSBhbmQgb3B0aW9ucy5iZW5jaG1hcms6CisgICAgICAgIHByaW50KCdDYW5ub3Qgc3BlY2lmeSBhIGJlbmNobWFyayAqYW5kKiByZWFkL3dyaXRlIHJlc3VsdHMnKQorICAgICAgICBzeXMuZXhpdCgxKQogICAgIGltcG9ydF8gPSBfX2ltcG9ydF9fCiAgICAgaWYgbm90IG9wdGlvbnMuYnVpbHRpbjoKICAgICAgICAgaW1wb3J0XyA9IGltcG9ydGxpYi5fX2ltcG9ydF9fCiAKLSAgICBtYWluKGltcG9ydF8pCisgICAgbWFpbihpbXBvcnRfLCBvcHRpb25zLmZpbGVuYW1lLCBvcHRpb25zLmJlbmNobWFyaykKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9leHRlbnNpb24vdGVzdF9jYXNlX3NlbnNpdGl2aXR5LnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L2V4dGVuc2lvbi90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKaW5kZXggZTA2MmZiNi4uYWRkODMwZCAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi90ZXN0L2V4dGVuc2lvbi90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L2V4dGVuc2lvbi90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKQEAgLTIwLDEyICsyMCwxOCBAQAogICAgIGRlZiB0ZXN0X2Nhc2Vfc2Vuc2l0aXZlKHNlbGYpOgogICAgICAgICB3aXRoIHN1cHBvcnQuRW52aXJvbm1lbnRWYXJHdWFyZCgpIGFzIGVudjoKICAgICAgICAgICAgIGVudi51bnNldCgnUFlUSE9OQ0FTRU9LJykKKyAgICAgICAgICAgIGlmIGInUFlUSE9OQ0FTRU9LJyBpbiBfYm9vdHN0cmFwLl9vcy5lbnZpcm9uOgorICAgICAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoJ29zLmVudmlyb24gY2hhbmdlcyBub3QgcmVmbGVjdGVkIGluICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdfb3MuZW52aXJvbicpCiAgICAgICAgICAgICBsb2FkZXIgPSBzZWxmLmZpbmRfbW9kdWxlKCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGxvYWRlcikKIAogICAgIGRlZiB0ZXN0X2Nhc2VfaW5zZW5zaXRpdml0eShzZWxmKToKICAgICAgICAgd2l0aCBzdXBwb3J0LkVudmlyb25tZW50VmFyR3VhcmQoKSBhcyBlbnY6CiAgICAgICAgICAgICBlbnYuc2V0KCdQWVRIT05DQVNFT0snLCAnMScpCisgICAgICAgICAgICBpZiBiJ1BZVEhPTkNBU0VPSycgbm90IGluIF9ib290c3RyYXAuX29zLmVudmlyb246CisgICAgICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgnb3MuZW52aXJvbiBjaGFuZ2VzIG5vdCByZWZsZWN0ZWQgaW4gJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ19vcy5lbnZpcm9uJykKICAgICAgICAgICAgIGxvYWRlciA9IHNlbGYuZmluZF9tb2R1bGUoKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhc2F0dHIobG9hZGVyLCAnbG9hZF9tb2R1bGUnKSkKIApkaWZmIC0tZ2l0IGEvTGliL2ltcG9ydGxpYi90ZXN0L3JlZ3J0ZXN0LnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L3JlZ3J0ZXN0LnB5CmluZGV4IGIxMDNhZTcuLmRjMGViOTcgMTAwNjQ0Ci0tLSBhL0xpYi9pbXBvcnRsaWIvdGVzdC9yZWdydGVzdC5weQorKysgYi9MaWIvaW1wb3J0bGliL3Rlc3QvcmVncnRlc3QucHkKQEAgLTUsMTMgKzUsNiBAQAogT3RoZXJ3aXNlIGFsbCBjb21tYW5kLWxpbmUgb3B0aW9ucyB2YWxpZCBmb3IgdGVzdC5yZWdydGVzdCBhcmUgYWxzbyB2YWxpZCBmb3IKIHRoaXMgc2NyaXB0LgogCi1YWFggRkFJTElORwotICAqIHRlc3RfaW1wb3J0Ci0gICAgLSB0ZXN0X2luY29ycmVjdF9jb2RlX25hbWUKLSAgICAgICAgZmlsZSBuYW1lIGRpZmZlcmluZyBiZXR3ZWVuIF9fZmlsZV9fIGFuZCBjb19maWxlbmFtZSAocjY4MzYwIG9uIHRydW5rKQotICAgIC0gdGVzdF9pbXBvcnRfYnlfZmlsZW5hbWUKLSAgICAgICAgZXhjZXB0aW9uIGZvciB0cnlpbmcgdG8gaW1wb3J0IGJ5IGZpbGUgbmFtZSBkb2VzIG5vdCBtYXRjaAotCiAiIiIKIGltcG9ydCBpbXBvcnRsaWIKIGltcG9ydCBzeXMKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9zb3VyY2UvdGVzdF9hYmNfbG9hZGVyLnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2FiY19sb2FkZXIucHkKaW5kZXggMzI0NTkwNy4uMDFhY2RhNCAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2FiY19sb2FkZXIucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2FiY19sb2FkZXIucHkKQEAgLTQwLDggKzQwLDEwIEBACiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHBhdGgsIG1hZ2ljPWltcC5nZXRfbWFnaWMoKSk6CiAgICAgICAgIHN1cGVyKCkuX19pbml0X18ocGF0aCkKICAgICAgICAgc2VsZi5ieXRlY29kZV9wYXRoID0gaW1wLmNhY2hlX2Zyb21fc291cmNlKHNlbGYucGF0aCkKKyAgICAgICAgc2VsZi5zb3VyY2Vfc2l6ZSA9IGxlbihzZWxmLnNvdXJjZSkKICAgICAgICAgZGF0YSA9IGJ5dGVhcnJheShtYWdpYykKLSAgICAgICAgZGF0YS5leHRlbmQobWFyc2hhbC5fd19sb25nKHNlbGYuc291cmNlX210aW1lKSkKKyAgICAgICAgZGF0YS5leHRlbmQoaW1wb3J0bGliLl93X2xvbmcoc2VsZi5zb3VyY2VfbXRpbWUpKQorICAgICAgICBkYXRhLmV4dGVuZChpbXBvcnRsaWIuX3dfbG9uZyhzZWxmLnNvdXJjZV9zaXplKSkKICAgICAgICAgY29kZV9vYmplY3QgPSBjb21waWxlKHNlbGYuc291cmNlLCBzZWxmLnBhdGgsICdleGVjJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9udF9pbmhlcml0PVRydWUpCiAgICAgICAgIGRhdGEuZXh0ZW5kKG1hcnNoYWwuZHVtcHMoY29kZV9vYmplY3QpKQpAQCAtNTYsOSArNTgsOSBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmFpc2UgSU9FcnJvcgogCi0gICAgZGVmIHBhdGhfbXRpbWUoc2VsZiwgcGF0aCk6CisgICAgZGVmIHBhdGhfc3RhdHMoc2VsZiwgcGF0aCk6CiAgICAgICAgIGFzc2VydCBwYXRoID09IHNlbGYucGF0aAotICAgICAgICByZXR1cm4gc2VsZi5zb3VyY2VfbXRpbWUKKyAgICAgICAgcmV0dXJuIHsnbXRpbWUnOiBzZWxmLnNvdXJjZV9tdGltZSwgJ3NpemUnOiBzZWxmLnNvdXJjZV9zaXplfQogCiAgICAgZGVmIHNldF9kYXRhKHNlbGYsIHBhdGgsIGRhdGEpOgogICAgICAgICBzZWxmLndyaXR0ZW5bcGF0aF0gPSBieXRlcyhkYXRhKQpAQCAtMTAyLDcgKzEwNCw3IEBACiAgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImFsd2F5cyIpCiAgICAgICAgICAgICBwYXRoID0gc3VwZXIoKS5nZXRfZmlsZW5hbWUobmFtZSkKICAgICAgICAgICAgIGFzc2VydCBsZW4odykgPT0gMQotICAgICAgICAgICAgYXNzZXJ0IGlzc3ViY2xhc3Mod1swXS5jYXRlZ29yeSwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIGFzc2VydCBpc3N1YmNsYXNzKHdbMF0uY2F0ZWdvcnksIERlcHJlY2F0aW9uV2FybmluZykKICAgICAgICAgICAgIHJldHVybiBwYXRoCiAKIApAQCAtMTk4LDcgKzIwMCw3IEBACiAgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImFsd2F5cyIpCiAgICAgICAgICAgICBjb2RlX29iamVjdCA9IHN1cGVyKCkuZ2V0X2NvZGUobmFtZSkKICAgICAgICAgICAgIGFzc2VydCBsZW4odykgPT0gMQotICAgICAgICAgICAgYXNzZXJ0IGlzc3ViY2xhc3Mod1swXS5jYXRlZ29yeSwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIGFzc2VydCBpc3N1YmNsYXNzKHdbMF0uY2F0ZWdvcnksIERlcHJlY2F0aW9uV2FybmluZykKICAgICAgICAgICAgIHJldHVybiBjb2RlX29iamVjdAogCiBjbGFzcyBQeUxvYWRlclRlc3RzKHRlc3RpbmdfYWJjLkxvYWRlclRlc3RzKToKQEAgLTY1Niw3ICs2NTgsOCBAQAogICAgICAgICBpZiBieXRlY29kZV93cml0dGVuOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihzZWxmLmNhY2hlZCwgc2VsZi5sb2FkZXIud3JpdHRlbikKICAgICAgICAgICAgIGRhdGEgPSBieXRlYXJyYXkoaW1wLmdldF9tYWdpYygpKQotICAgICAgICAgICAgZGF0YS5leHRlbmQobWFyc2hhbC5fd19sb25nKHNlbGYubG9hZGVyLnNvdXJjZV9tdGltZSkpCisgICAgICAgICAgICBkYXRhLmV4dGVuZChpbXBvcnRsaWIuX3dfbG9uZyhzZWxmLmxvYWRlci5zb3VyY2VfbXRpbWUpKQorICAgICAgICAgICAgZGF0YS5leHRlbmQoaW1wb3J0bGliLl93X2xvbmcoc2VsZi5sb2FkZXIuc291cmNlX3NpemUpKQogICAgICAgICAgICAgZGF0YS5leHRlbmQobWFyc2hhbC5kdW1wcyhjb2RlX29iamVjdCkpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYubG9hZGVyLndyaXR0ZW5bc2VsZi5jYWNoZWRdLCBieXRlcyhkYXRhKSkKIApAQCAtODQ3LDcgKzg1MCw3IEBACiAgICAgICAgICMgUmVxdWlyZWQgYWJzdHJhY3RtZXRob2RzLgogICAgICAgICBzZWxmLnJhaXNlc19Ob3RJbXBsZW1lbnRlZEVycm9yKGlucywgJ2dldF9maWxlbmFtZScsICdnZXRfZGF0YScpCiAgICAgICAgICMgT3B0aW9uYWwgYWJzdHJhY3RtZXRob2RzLgotICAgICAgICBzZWxmLnJhaXNlc19Ob3RJbXBsZW1lbnRlZEVycm9yKGlucywncGF0aF9tdGltZScsICdzZXRfZGF0YScpCisgICAgICAgIHNlbGYucmFpc2VzX05vdEltcGxlbWVudGVkRXJyb3IoaW5zLCdwYXRoX3N0YXRzJywgJ3NldF9kYXRhJykKIAogICAgIGRlZiB0ZXN0X1B5TG9hZGVyKHNlbGYpOgogICAgICAgICBzZWxmLnJhaXNlc19Ob3RJbXBsZW1lbnRlZEVycm9yKHNlbGYuUHlMb2FkZXIoKSwgJ3NvdXJjZV9wYXRoJywKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9zb3VyY2UvdGVzdF9jYXNlX3NlbnNpdGl2aXR5LnB5IGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKaW5kZXggNzM3NzdkZS4uNTY5ZjUxNiAxMDA2NDQKLS0tIGEvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2Nhc2Vfc2Vuc2l0aXZpdHkucHkKQEAgLTM3LDYgKzM3LDkgQEAKICAgICBkZWYgdGVzdF9zZW5zaXRpdmUoc2VsZik6CiAgICAgICAgIHdpdGggdGVzdF9zdXBwb3J0LkVudmlyb25tZW50VmFyR3VhcmQoKSBhcyBlbnY6CiAgICAgICAgICAgICBlbnYudW5zZXQoJ1BZVEhPTkNBU0VPSycpCisgICAgICAgICAgICBpZiBiJ1BZVEhPTkNBU0VPSycgaW4gX2Jvb3RzdHJhcC5fb3MuZW52aXJvbjoKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCdvcy5lbnZpcm9uIGNoYW5nZXMgbm90IHJlZmxlY3RlZCBpbiAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX29zLmVudmlyb24nKQogICAgICAgICAgICAgc2Vuc2l0aXZlLCBpbnNlbnNpdGl2ZSA9IHNlbGYuc2Vuc2l0aXZpdHlfdGVzdCgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaGFzYXR0cihzZW5zaXRpdmUsICdsb2FkX21vZHVsZScpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihzZWxmLm5hbWUsIHNlbnNpdGl2ZS5nZXRfZmlsZW5hbWUoc2VsZi5uYW1lKSkKQEAgLTQ1LDYgKzQ4LDkgQEAKICAgICBkZWYgdGVzdF9pbnNlbnNpdGl2ZShzZWxmKToKICAgICAgICAgd2l0aCB0ZXN0X3N1cHBvcnQuRW52aXJvbm1lbnRWYXJHdWFyZCgpIGFzIGVudjoKICAgICAgICAgICAgIGVudi5zZXQoJ1BZVEhPTkNBU0VPSycsICcxJykKKyAgICAgICAgICAgIGlmIGInUFlUSE9OQ0FTRU9LJyBub3QgaW4gX2Jvb3RzdHJhcC5fb3MuZW52aXJvbjoKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCdvcy5lbnZpcm9uIGNoYW5nZXMgbm90IHJlZmxlY3RlZCBpbiAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX29zLmVudmlyb24nKQogICAgICAgICAgICAgc2Vuc2l0aXZlLCBpbnNlbnNpdGl2ZSA9IHNlbGYuc2Vuc2l0aXZpdHlfdGVzdCgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaGFzYXR0cihzZW5zaXRpdmUsICdsb2FkX21vZHVsZScpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihzZWxmLm5hbWUsIHNlbnNpdGl2ZS5nZXRfZmlsZW5hbWUoc2VsZi5uYW1lKSkKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC9zb3VyY2UvdGVzdF9maWxlX2xvYWRlci5weSBiL0xpYi9pbXBvcnRsaWIvdGVzdC9zb3VyY2UvdGVzdF9maWxlX2xvYWRlci5weQppbmRleCBjN2E3ZDhmLi4yMWU3MThmIDEwMDY0NAotLS0gYS9MaWIvaW1wb3J0bGliL3Rlc3Qvc291cmNlL3Rlc3RfZmlsZV9sb2FkZXIucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L3NvdXJjZS90ZXN0X2ZpbGVfbG9hZGVyLnB5CkBAIC03MSwxMSArNzEsNiBAQAogICAgICAgICAgICAgbW9kdWxlX2RpY3RfaWQgPSBpZChtb2R1bGUuX19kaWN0X18pCiAgICAgICAgICAgICB3aXRoIG9wZW4obWFwcGluZ1snX3RlbXAnXSwgJ3cnKSBhcyBmaWxlOgogICAgICAgICAgICAgICAgIGZpbGUud3JpdGUoInRlc3RpbmdfdmFyID0gNDJcbiIpCi0gICAgICAgICAgICAjIEZvciBmaWxlc3lzdGVtcyB3aGVyZSB0aGUgbXRpbWUgaXMgb25seSB0byBhIHNlY29uZCBncmFudWxhcml0eSwKLSAgICAgICAgICAgICMgZXZlcnl0aGluZyB0aGF0IGhhcyBoYXBwZW5lZCBhYm92ZSBjYW4gYmUgdG9vIGZhc3Q7Ci0gICAgICAgICAgICAjIGZvcmNlIGFuIG10aW1lIG9uIHRoZSBzb3VyY2UgdGhhdCBpcyBndWFyYW50ZWVkIHRvIGJlIGRpZmZlcmVudAotICAgICAgICAgICAgIyB0aGFuIHRoZSBvcmlnaW5hbCBtdGltZS4KLSAgICAgICAgICAgIGxvYWRlci5wYXRoX210aW1lID0gc2VsZi5mYWtlX210aW1lKGxvYWRlci5wYXRoX210aW1lKQogICAgICAgICAgICAgbW9kdWxlID0gbG9hZGVyLmxvYWRfbW9kdWxlKCdfdGVtcCcpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoJ3Rlc3RpbmdfdmFyJyBpbiBtb2R1bGUuX19kaWN0X18sCiAgICAgICAgICAgICAgICAgICAgICAgICAgIid0ZXN0aW5nX3Zhcicgbm90IGluICIKQEAgLTIxNSwxMCArMjEwLDE3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxfc291cmNlPWRlbF9zb3VyY2UpCiAgICAgICAgICAgICB0ZXN0KCdfdGVtcCcsIG1hcHBpbmcsIGJjX3BhdGgpCiAKKyAgICBkZWYgX3Rlc3RfcGFydGlhbF9zaXplKHNlbGYsIHRlc3QsICosIGRlbF9zb3VyY2U9RmFsc2UpOgorICAgICAgICB3aXRoIHNvdXJjZV91dGlsLmNyZWF0ZV9tb2R1bGVzKCdfdGVtcCcpIGFzIG1hcHBpbmc6CisgICAgICAgICAgICBiY19wYXRoID0gc2VsZi5tYW5pcHVsYXRlX2J5dGVjb2RlKCdfdGVtcCcsIG1hcHBpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGEgYmM6IGJjWzoxMV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxfc291cmNlPWRlbF9zb3VyY2UpCisgICAgICAgICAgICB0ZXN0KCdfdGVtcCcsIG1hcHBpbmcsIGJjX3BhdGgpCisKICAgICBkZWYgX3Rlc3Rfbm9fbWFyc2hhbChzZWxmLCAqLCBkZWxfc291cmNlPUZhbHNlKToKICAgICAgICAgd2l0aCBzb3VyY2VfdXRpbC5jcmVhdGVfbW9kdWxlcygnX3RlbXAnKSBhcyBtYXBwaW5nOgogICAgICAgICAgICAgYmNfcGF0aCA9IHNlbGYubWFuaXB1bGF0ZV9ieXRlY29kZSgnX3RlbXAnLCBtYXBwaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIGJjOiBiY1s6OF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGEgYmM6IGJjWzoxMl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxfc291cmNlPWRlbF9zb3VyY2UpCiAgICAgICAgICAgICBmaWxlX3BhdGggPSBtYXBwaW5nWydfdGVtcCddIGlmIG5vdCBkZWxfc291cmNlIGVsc2UgYmNfcGF0aAogICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhFT0ZFcnJvcik6CkBAIC0yMjcsNyArMjI5LDcgQEAKICAgICBkZWYgX3Rlc3Rfbm9uX2NvZGVfbWFyc2hhbChzZWxmLCAqLCBkZWxfc291cmNlPUZhbHNlKToKICAgICAgICAgd2l0aCBzb3VyY2VfdXRpbC5jcmVhdGVfbW9kdWxlcygnX3RlbXAnKSBhcyBtYXBwaW5nOgogICAgICAgICAgICAgYnl0ZWNvZGVfcGF0aCA9IHNlbGYubWFuaXB1bGF0ZV9ieXRlY29kZSgnX3RlbXAnLCBtYXBwaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIGJjOiBiY1s6OF0gKyBtYXJzaGFsLmR1bXBzKGInYWJjZCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIGJjOiBiY1s6MTJdICsgbWFyc2hhbC5kdW1wcyhiJ2FiY2QnKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbF9zb3VyY2U9ZGVsX3NvdXJjZSkKICAgICAgICAgICAgIGZpbGVfcGF0aCA9IG1hcHBpbmdbJ190ZW1wJ10gaWYgbm90IGRlbF9zb3VyY2UgZWxzZSBieXRlY29kZV9wYXRoCiAgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEltcG9ydEVycm9yKToKQEAgLTIzNiw3ICsyMzgsNyBAQAogICAgIGRlZiBfdGVzdF9iYWRfbWFyc2hhbChzZWxmLCAqLCBkZWxfc291cmNlPUZhbHNlKToKICAgICAgICAgd2l0aCBzb3VyY2VfdXRpbC5jcmVhdGVfbW9kdWxlcygnX3RlbXAnKSBhcyBtYXBwaW5nOgogICAgICAgICAgICAgYnl0ZWNvZGVfcGF0aCA9IHNlbGYubWFuaXB1bGF0ZV9ieXRlY29kZSgnX3RlbXAnLCBtYXBwaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIGJjOiBiY1s6OF0gKyBiJzx0ZXN0PicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGEgYmM6IGJjWzoxMl0gKyBiJzx0ZXN0PicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxfc291cmNlPWRlbF9zb3VyY2UpCiAgICAgICAgICAgICBmaWxlX3BhdGggPSBtYXBwaW5nWydfdGVtcCddIGlmIG5vdCBkZWxfc291cmNlIGVsc2UgYnl0ZWNvZGVfcGF0aAogICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhFT0ZFcnJvcik6CkBAIC0yNjAsNyArMjYyLDcgQEAKICAgICAgICAgZGVmIHRlc3QobmFtZSwgbWFwcGluZywgYnl0ZWNvZGVfcGF0aCk6CiAgICAgICAgICAgICBzZWxmLmltcG9ydF8obWFwcGluZ1tuYW1lXSwgbmFtZSkKICAgICAgICAgICAgIHdpdGggb3BlbihieXRlY29kZV9wYXRoLCAncmInKSBhcyBmaWxlOgotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihsZW4oZmlsZS5yZWFkKCkpLCA4KQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihsZW4oZmlsZS5yZWFkKCkpLCAxMikKIAogICAgICAgICBzZWxmLl90ZXN0X2VtcHR5X2ZpbGUodGVzdCkKIApAQCAtMjY4LDcgKzI3MCw3IEBACiAgICAgICAgIGRlZiB0ZXN0KG5hbWUsIG1hcHBpbmcsIGJ5dGVjb2RlX3BhdGgpOgogICAgICAgICAgICAgc2VsZi5pbXBvcnRfKG1hcHBpbmdbbmFtZV0sIG5hbWUpCiAgICAgICAgICAgICB3aXRoIG9wZW4oYnl0ZWNvZGVfcGF0aCwgJ3JiJykgYXMgZmlsZToKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIobGVuKGZpbGUucmVhZCgpKSwgOCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIobGVuKGZpbGUucmVhZCgpKSwgMTIpCiAKICAgICAgICAgc2VsZi5fdGVzdF9wYXJ0aWFsX21hZ2ljKHRlc3QpCiAKQEAgLTI3OSw3ICsyODEsNyBAQAogICAgICAgICBkZWYgdGVzdChuYW1lLCBtYXBwaW5nLCBieXRlY29kZV9wYXRoKToKICAgICAgICAgICAgIHNlbGYuaW1wb3J0XyhtYXBwaW5nW25hbWVdLCBuYW1lKQogICAgICAgICAgICAgd2l0aCBvcGVuKGJ5dGVjb2RlX3BhdGgsICdyYicpIGFzIGZpbGU6Ci0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGxlbihmaWxlLnJlYWQoKSksIDgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGxlbihmaWxlLnJlYWQoKSksIDEyKQogCiAgICAgICAgIHNlbGYuX3Rlc3RfbWFnaWNfb25seSh0ZXN0KQogCkBAIC0zMDEsMTEgKzMwMywyMiBAQAogICAgICAgICBkZWYgdGVzdChuYW1lLCBtYXBwaW5nLCBiY19wYXRoKToKICAgICAgICAgICAgIHNlbGYuaW1wb3J0XyhtYXBwaW5nW25hbWVdLCBuYW1lKQogICAgICAgICAgICAgd2l0aCBvcGVuKGJjX3BhdGgsICdyYicpIGFzIGZpbGU6Ci0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGxlbihmaWxlLnJlYWQoKSksIDgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGxlbihmaWxlLnJlYWQoKSksIDEyKQogCiAgICAgICAgIHNlbGYuX3Rlc3RfcGFydGlhbF90aW1lc3RhbXAodGVzdCkKIAogICAgIEBzb3VyY2VfdXRpbC53cml0ZXNfYnl0ZWNvZGVfZmlsZXMKKyAgICBkZWYgdGVzdF9wYXJ0aWFsX3NpemUoc2VsZik6CisgICAgICAgICMgV2hlbiB0aGUgc2l6ZSBpcyBwYXJ0aWFsLCByZWdlbmVyYXRlIHRoZSAucHljLCBlbHNlCisgICAgICAgICMgcmFpc2UgRU9GRXJyb3IuCisgICAgICAgIGRlZiB0ZXN0KG5hbWUsIG1hcHBpbmcsIGJjX3BhdGgpOgorICAgICAgICAgICAgc2VsZi5pbXBvcnRfKG1hcHBpbmdbbmFtZV0sIG5hbWUpCisgICAgICAgICAgICB3aXRoIG9wZW4oYmNfcGF0aCwgJ3JiJykgYXMgZmlsZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIobGVuKGZpbGUucmVhZCgpKSwgMTIpCisKKyAgICAgICAgc2VsZi5fdGVzdF9wYXJ0aWFsX3NpemUodGVzdCkKKworICAgIEBzb3VyY2VfdXRpbC53cml0ZXNfYnl0ZWNvZGVfZmlsZXMKICAgICBkZWYgdGVzdF9ub19tYXJzaGFsKHNlbGYpOgogICAgICAgICAjIFdoZW4gdGhlcmUgaXMgb25seSB0aGUgbWFnaWMgbnVtYmVyIGFuZCB0aW1lc3RhbXAsIHJhaXNlIEVPRkVycm9yLgogICAgICAgICBzZWxmLl90ZXN0X25vX21hcnNoYWwoKQpAQCAtNDAwLDYgKzQxMywxMyBAQAogCiAgICAgICAgIHNlbGYuX3Rlc3RfcGFydGlhbF90aW1lc3RhbXAodGVzdCwgZGVsX3NvdXJjZT1UcnVlKQogCisgICAgZGVmIHRlc3RfcGFydGlhbF9zaXplKHNlbGYpOgorICAgICAgICBkZWYgdGVzdChuYW1lLCBtYXBwaW5nLCBieXRlY29kZV9wYXRoKToKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoRU9GRXJyb3IpOgorICAgICAgICAgICAgICAgIHNlbGYuaW1wb3J0XyhieXRlY29kZV9wYXRoLCBuYW1lKQorCisgICAgICAgIHNlbGYuX3Rlc3RfcGFydGlhbF9zaXplKHRlc3QsIGRlbF9zb3VyY2U9VHJ1ZSkKKwogICAgIGRlZiB0ZXN0X25vX21hcnNoYWwoc2VsZik6CiAgICAgICAgIHNlbGYuX3Rlc3Rfbm9fbWFyc2hhbChkZWxfc291cmNlPVRydWUpCiAKZGlmZiAtLWdpdCBhL0xpYi9pbXBvcnRsaWIvdGVzdC90ZXN0X3V0aWwucHkgYi9MaWIvaW1wb3J0bGliL3Rlc3QvdGVzdF91dGlsLnB5CmluZGV4IDYwMjQ0N2YuLmM3Y2RhZDEgMTAwNjQ0Ci0tLSBhL0xpYi9pbXBvcnRsaWIvdGVzdC90ZXN0X3V0aWwucHkKKysrIGIvTGliL2ltcG9ydGxpYi90ZXN0L3Rlc3RfdXRpbC5weQpAQCAtNTksNiArNTksMTEgQEAKICAgICAgICAgICAgIHNlbGYucmFpc2VfZXhjZXB0aW9uKG5hbWUpCiAgICAgICAgICAgICBzZWxmLmFzc2VydElzKG1vZHVsZSwgc3lzLm1vZHVsZXNbbmFtZV0pCiAKKyAgICBkZWYgdGVzdF9kZWNvcmF0b3JfYXR0cnMoc2VsZik6CisgICAgICAgIGRlZiBmeG4oc2VsZiwgbW9kdWxlKTogcGFzcworICAgICAgICB3cmFwcGVkID0gdXRpbC5tb2R1bGVfZm9yX2xvYWRlcihmeG4pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlZC5fX25hbWVfXywgZnhuLl9fbmFtZV9fKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZWQuX19xdWFsbmFtZV9fLCBmeG4uX19xdWFsbmFtZV9fKQogCiBjbGFzcyBTZXRQYWNrYWdlVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgogCkBAIC0xMDgsNiArMTEzLDExIEBACiAgICAgICAgICAgICBtb2R1bGUuX19wYWNrYWdlX18gPSB2YWx1ZQogICAgICAgICAgICAgc2VsZi52ZXJpZnkobW9kdWxlLCB2YWx1ZSkKIAorICAgIGRlZiB0ZXN0X2RlY29yYXRvcl9hdHRycyhzZWxmKToKKyAgICAgICAgZGVmIGZ4bihtb2R1bGUpOiBwYXNzCisgICAgICAgIHdyYXBwZWQgPSB1dGlsLnNldF9wYWNrYWdlKGZ4bikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVkLl9fbmFtZV9fLCBmeG4uX19uYW1lX18pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlZC5fX3F1YWxuYW1lX18sIGZ4bi5fX3F1YWxuYW1lX18pCiAKIGRlZiB0ZXN0X21haW4oKToKICAgICBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKZGlmZiAtLWdpdCBhL0xpYi9pbnNwZWN0LnB5IGIvTGliL2luc3BlY3QucHkKaW5kZXggMjAzMTc1NS4uZmM5ZjYxMiAxMDA2NDQKLS0tIGEvTGliL2luc3BlY3QucHkKKysrIGIvTGliL2luc3BlY3QucHkKQEAgLTMzLDcgKzMzLDYgQEAKIGltcG9ydCBvcwogaW1wb3J0IHR5cGVzCiBpbXBvcnQgaXRlcnRvb2xzCi1pbXBvcnQgc3RyaW5nCiBpbXBvcnQgcmUKIGltcG9ydCBpbXAKIGltcG9ydCB0b2tlbml6ZQpAQCAtOTMxLDYgKzkzMCw0MyBAQAogICAgICAgICBzcGVjcy5hcHBlbmQoZm9ybWF0dmFya3codmFya3cpICsgZm9ybWF0dmFsdWUobG9jYWxzW3Zhcmt3XSkpCiAgICAgcmV0dXJuICcoJyArICcsICcuam9pbihzcGVjcykgKyAnKScKIAorZGVmIF9taXNzaW5nX2FyZ3VtZW50cyhmX25hbWUsIGFyZ25hbWVzLCBwb3MsIHZhbHVlcyk6CisgICAgbmFtZXMgPSBbcmVwcihuYW1lKSBmb3IgbmFtZSBpbiBhcmduYW1lcyBpZiBuYW1lIG5vdCBpbiB2YWx1ZXNdCisgICAgbWlzc2luZyA9IGxlbihuYW1lcykKKyAgICBpZiBtaXNzaW5nID09IDE6CisgICAgICAgIHMgPSBuYW1lc1swXQorICAgIGVsaWYgbWlzc2luZyA9PSAyOgorICAgICAgICBzID0gInt9IGFuZCB7fSIuZm9ybWF0KCpuYW1lcykKKyAgICBlbHNlOgorICAgICAgICB0YWlsID0gIiwge30gYW5kIHt9Ii5mb3JtYXQobmFtZXNbLTI6XSkKKyAgICAgICAgZGVsIG5hbWVzWy0yOl0KKyAgICAgICAgcyA9ICIsICIuam9pbihuYW1lcykgKyB0YWlsCisgICAgcmFpc2UgVHlwZUVycm9yKCIlcygpIG1pc3NpbmcgJWkgcmVxdWlyZWQgJXMgYXJndW1lbnQlczogJXMiICUKKyAgICAgICAgICAgICAgICAgICAgKGZfbmFtZSwgbWlzc2luZywKKyAgICAgICAgICAgICAgICAgICAgICAicG9zaXRpb25hbCIgaWYgcG9zIGVsc2UgImtleXdvcmQtb25seSIsCisgICAgICAgICAgICAgICAgICAgICAgIiIgaWYgbWlzc2luZyA9PSAxIGVsc2UgInMiLCBzKSkKKworZGVmIF90b29fbWFueShmX25hbWUsIGFyZ3MsIGt3b25seSwgdmFyYXJncywgZGVmY291bnQsIGdpdmVuLCB2YWx1ZXMpOgorICAgIGF0bGVhc3QgPSBsZW4oYXJncykgLSBkZWZjb3VudAorICAgIGt3b25seV9naXZlbiA9IGxlbihbYXJnIGZvciBhcmcgaW4ga3dvbmx5IGlmIGFyZyBpbiB2YWx1ZXNdKQorICAgIGlmIHZhcmFyZ3M6CisgICAgICAgIHBsdXJhbCA9IGF0bGVhc3QgIT0gMQorICAgICAgICBzaWcgPSAiYXQgbGVhc3QgJWQiICUgKGF0bGVhc3QsKQorICAgIGVsaWYgZGVmY291bnQ6CisgICAgICAgIHBsdXJhbCA9IFRydWUKKyAgICAgICAgc2lnID0gImZyb20gJWQgdG8gJWQiICUgKGF0bGVhc3QsIGxlbihhcmdzKSkKKyAgICBlbHNlOgorICAgICAgICBwbHVyYWwgPSBsZW4oYXJncykgIT0gMQorICAgICAgICBzaWcgPSBzdHIobGVuKGFyZ3MpKQorICAgIGt3b25seV9zaWcgPSAiIgorICAgIGlmIGt3b25seV9naXZlbjoKKyAgICAgICAgbXNnID0gIiBwb3NpdGlvbmFsIGFyZ3VtZW50JXMgKGFuZCAlZCBrZXl3b3JkLW9ubHkgYXJndW1lbnQlcykiCisgICAgICAgIGt3b25seV9zaWcgPSAobXNnICUgKCJzIiBpZiBnaXZlbiAhPSAxIGVsc2UgIiIsIGt3b25seV9naXZlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiIGlmIGt3b25seV9naXZlbiAhPSAxIGVsc2UgIiIpKQorICAgIHJhaXNlIFR5cGVFcnJvcigiJXMoKSB0YWtlcyAlcyBwb3NpdGlvbmFsIGFyZ3VtZW50JXMgYnV0ICVkJXMgJXMgZ2l2ZW4iICUKKyAgICAgICAgICAgIChmX25hbWUsIHNpZywgInMiIGlmIHBsdXJhbCBlbHNlICIiLCBnaXZlbiwga3dvbmx5X3NpZywKKyAgICAgICAgICAgICAid2FzIiBpZiBnaXZlbiA9PSAxIGFuZCBub3Qga3dvbmx5X2dpdmVuIGVsc2UgIndlcmUiKSkKKwogZGVmIGdldGNhbGxhcmdzKGZ1bmMsICpwb3NpdGlvbmFsLCAqKm5hbWVkKToKICAgICAiIiJHZXQgdGhlIG1hcHBpbmcgb2YgYXJndW1lbnRzIHRvIHZhbHVlcy4KIApAQCAtOTQyLDY0ICs5NzgsNTMgQEAKICAgICBmX25hbWUgPSBmdW5jLl9fbmFtZV9fCiAgICAgYXJnMnZhbHVlID0ge30KIAorCiAgICAgaWYgaXNtZXRob2QoZnVuYykgYW5kIGZ1bmMuX19zZWxmX18gaXMgbm90IE5vbmU6CiAgICAgICAgICMgaW1wbGljaXQgJ3NlbGYnIChvciAnY2xzJyBmb3IgY2xhc3NtZXRob2RzKSBhcmd1bWVudAogICAgICAgICBwb3NpdGlvbmFsID0gKGZ1bmMuX19zZWxmX18sKSArIHBvc2l0aW9uYWwKICAgICBudW1fcG9zID0gbGVuKHBvc2l0aW9uYWwpCi0gICAgbnVtX3RvdGFsID0gbnVtX3BvcyArIGxlbihuYW1lZCkKICAgICBudW1fYXJncyA9IGxlbihhcmdzKQogICAgIG51bV9kZWZhdWx0cyA9IGxlbihkZWZhdWx0cykgaWYgZGVmYXVsdHMgZWxzZSAwCi0gICAgZm9yIGFyZywgdmFsdWUgaW4gemlwKGFyZ3MsIHBvc2l0aW9uYWwpOgotICAgICAgICBhcmcydmFsdWVbYXJnXSA9IHZhbHVlCi0gICAgaWYgdmFyYXJnczoKLSAgICAgICAgaWYgbnVtX3BvcyA+IG51bV9hcmdzOgotICAgICAgICAgICAgYXJnMnZhbHVlW3ZhcmFyZ3NdID0gcG9zaXRpb25hbFstKG51bV9wb3MtbnVtX2FyZ3MpOl0KLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGFyZzJ2YWx1ZVt2YXJhcmdzXSA9ICgpCi0gICAgZWxpZiAwIDwgbnVtX2FyZ3MgPCBudW1fcG9zOgotICAgICAgICByYWlzZSBUeXBlRXJyb3IoJyVzKCkgdGFrZXMgJXMgJWQgcG9zaXRpb25hbCAlcyAoJWQgZ2l2ZW4pJyAlICgKLSAgICAgICAgICAgIGZfbmFtZSwgJ2F0IG1vc3QnIGlmIGRlZmF1bHRzIGVsc2UgJ2V4YWN0bHknLCBudW1fYXJncywKLSAgICAgICAgICAgICdhcmd1bWVudHMnIGlmIG51bV9hcmdzID4gMSBlbHNlICdhcmd1bWVudCcsIG51bV90b3RhbCkpCi0gICAgZWxpZiBudW1fYXJncyA9PSAwIGFuZCBudW1fdG90YWw6Ci0gICAgICAgIGlmIHZhcmt3IG9yIGt3b25seWFyZ3M6Ci0gICAgICAgICAgICBpZiBudW1fcG9zOgotICAgICAgICAgICAgICAgICMgWFhYOiBXZSBzaG91bGQgdXNlIG51bV9wb3MsIGJ1dCBQeXRob24gYWxzbyB1c2VzIG51bV90b3RhbDoKLSAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoJyVzKCkgdGFrZXMgZXhhY3RseSAwIHBvc2l0aW9uYWwgYXJndW1lbnRzICcKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyglZCBnaXZlbiknICUgKGZfbmFtZSwgbnVtX3RvdGFsKSkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcignJXMoKSB0YWtlcyBubyBhcmd1bWVudHMgKCVkIGdpdmVuKScgJQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmX25hbWUsIG51bV90b3RhbCkpCiAKLSAgICBmb3IgYXJnIGluIGl0ZXJ0b29scy5jaGFpbihhcmdzLCBrd29ubHlhcmdzKToKLSAgICAgICAgaWYgYXJnIGluIG5hbWVkOgotICAgICAgICAgICAgaWYgYXJnIGluIGFyZzJ2YWx1ZToKLSAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIiVzKCkgZ290IG11bHRpcGxlIHZhbHVlcyBmb3Iga2V5d29yZCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCAnJXMnIiAlIChmX25hbWUsIGFyZykpCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGFyZzJ2YWx1ZVthcmddID0gbmFtZWQucG9wKGFyZykKLSAgICBmb3Iga3dvbmx5YXJnIGluIGt3b25seWFyZ3M6Ci0gICAgICAgIGlmIGt3b25seWFyZyBub3QgaW4gYXJnMnZhbHVlOgotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIGFyZzJ2YWx1ZVtrd29ubHlhcmddID0ga3dvbmx5ZGVmYXVsdHNba3dvbmx5YXJnXQotICAgICAgICAgICAgZXhjZXB0IEtleUVycm9yOgotICAgICAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiJXMoKSBuZWVkcyBrZXl3b3JkLW9ubHkgYXJndW1lbnQgJXMiICUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZfbmFtZSwga3dvbmx5YXJnKSkKLSAgICBpZiBkZWZhdWx0czogICAgIyBmaWxsIGluIGFueSBtaXNzaW5nIHZhbHVlcyB3aXRoIHRoZSBkZWZhdWx0cwotICAgICAgICBmb3IgYXJnLCB2YWx1ZSBpbiB6aXAoYXJnc1stbnVtX2RlZmF1bHRzOl0sIGRlZmF1bHRzKToKLSAgICAgICAgICAgIGlmIGFyZyBub3QgaW4gYXJnMnZhbHVlOgotICAgICAgICAgICAgICAgIGFyZzJ2YWx1ZVthcmddID0gdmFsdWUKKyAgICBuID0gbWluKG51bV9wb3MsIG51bV9hcmdzKQorICAgIGZvciBpIGluIHJhbmdlKG4pOgorICAgICAgICBhcmcydmFsdWVbYXJnc1tpXV0gPSBwb3NpdGlvbmFsW2ldCisgICAgaWYgdmFyYXJnczoKKyAgICAgICAgYXJnMnZhbHVlW3ZhcmFyZ3NdID0gdHVwbGUocG9zaXRpb25hbFtuOl0pCisgICAgcG9zc2libGVfa3dhcmdzID0gc2V0KGFyZ3MgKyBrd29ubHlhcmdzKQogICAgIGlmIHZhcmt3OgotICAgICAgICBhcmcydmFsdWVbdmFya3ddID0gbmFtZWQKLSAgICBlbGlmIG5hbWVkOgotICAgICAgICB1bmV4cGVjdGVkID0gbmV4dChpdGVyKG5hbWVkKSkKLSAgICAgICAgcmFpc2UgVHlwZUVycm9yKCIlcygpIGdvdCBhbiB1bmV4cGVjdGVkIGtleXdvcmQgYXJndW1lbnQgJyVzJyIgJQotICAgICAgICAgICAgICAgICAgICAgICAgKGZfbmFtZSwgdW5leHBlY3RlZCkpCi0gICAgdW5hc3NpZ25lZCA9IG51bV9hcmdzIC0gbGVuKFthcmcgZm9yIGFyZyBpbiBhcmdzIGlmIGFyZyBpbiBhcmcydmFsdWVdKQotICAgIGlmIHVuYXNzaWduZWQ6Ci0gICAgICAgIG51bV9yZXF1aXJlZCA9IG51bV9hcmdzIC0gbnVtX2RlZmF1bHRzCi0gICAgICAgIHJhaXNlIFR5cGVFcnJvcignJXMoKSB0YWtlcyAlcyAlZCAlcyAoJWQgZ2l2ZW4pJyAlICgKLSAgICAgICAgICAgIGZfbmFtZSwgJ2F0IGxlYXN0JyBpZiBkZWZhdWx0cyBlbHNlICdleGFjdGx5JywgbnVtX3JlcXVpcmVkLAotICAgICAgICAgICAgJ2FyZ3VtZW50cycgaWYgbnVtX3JlcXVpcmVkID4gMSBlbHNlICdhcmd1bWVudCcsIG51bV90b3RhbCkpCisgICAgICAgIGFyZzJ2YWx1ZVt2YXJrd10gPSB7fQorICAgIGZvciBrdywgdmFsdWUgaW4gbmFtZWQuaXRlbXMoKToKKyAgICAgICAgaWYga3cgbm90IGluIHBvc3NpYmxlX2t3YXJnczoKKyAgICAgICAgICAgIGlmIG5vdCB2YXJrdzoKKyAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIiVzKCkgZ290IGFuIHVuZXhwZWN0ZWQga2V5d29yZCBhcmd1bWVudCAlciIgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZl9uYW1lLCBrdykpCisgICAgICAgICAgICBhcmcydmFsdWVbdmFya3ddW2t3XSA9IHZhbHVlCisgICAgICAgICAgICBjb250aW51ZQorICAgICAgICBpZiBrdyBpbiBhcmcydmFsdWU6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIiVzKCkgZ290IG11bHRpcGxlIHZhbHVlcyBmb3IgYXJndW1lbnQgJXIiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZl9uYW1lLCBrdykpCisgICAgICAgIGFyZzJ2YWx1ZVtrd10gPSB2YWx1ZQorICAgIGlmIG51bV9wb3MgPiBudW1fYXJncyBhbmQgbm90IHZhcmFyZ3M6CisgICAgICAgIF90b29fbWFueShmX25hbWUsIGFyZ3MsIGt3b25seWFyZ3MsIHZhcmFyZ3MsIG51bV9kZWZhdWx0cywKKyAgICAgICAgICAgICAgICAgICBudW1fcG9zLCBhcmcydmFsdWUpCisgICAgaWYgbnVtX3BvcyA8IG51bV9hcmdzOgorICAgICAgICByZXEgPSBhcmdzWzpudW1fYXJncyAtIG51bV9kZWZhdWx0c10KKyAgICAgICAgZm9yIGFyZyBpbiByZXE6CisgICAgICAgICAgICBpZiBhcmcgbm90IGluIGFyZzJ2YWx1ZToKKyAgICAgICAgICAgICAgICBfbWlzc2luZ19hcmd1bWVudHMoZl9uYW1lLCByZXEsIFRydWUsIGFyZzJ2YWx1ZSkKKyAgICAgICAgZm9yIGksIGFyZyBpbiBlbnVtZXJhdGUoYXJnc1tudW1fYXJncyAtIG51bV9kZWZhdWx0czpdKToKKyAgICAgICAgICAgIGlmIGFyZyBub3QgaW4gYXJnMnZhbHVlOgorICAgICAgICAgICAgICAgIGFyZzJ2YWx1ZVthcmddID0gZGVmYXVsdHNbaV0KKyAgICBtaXNzaW5nID0gMAorICAgIGZvciBrd2FyZyBpbiBrd29ubHlhcmdzOgorICAgICAgICBpZiBrd2FyZyBub3QgaW4gYXJnMnZhbHVlOgorICAgICAgICAgICAgaWYga3dhcmcgaW4ga3dvbmx5ZGVmYXVsdHM6CisgICAgICAgICAgICAgICAgYXJnMnZhbHVlW2t3YXJnXSA9IGt3b25seWRlZmF1bHRzW2t3YXJnXQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBtaXNzaW5nICs9IDEKKyAgICBpZiBtaXNzaW5nOgorICAgICAgICBfbWlzc2luZ19hcmd1bWVudHMoZl9uYW1lLCBrd29ubHlhcmdzLCBGYWxzZSwgYXJnMnZhbHVlKQogICAgIHJldHVybiBhcmcydmFsdWUKIAogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBzdGFjayBmcmFtZSBleHRyYWN0aW9uCmRpZmYgLS1naXQgYS9MaWIvanNvbi9kZWNvZGVyLnB5IGIvTGliL2pzb24vZGVjb2Rlci5weQppbmRleCAzMTc0ZTMxLi5lN2MwNTM5IDEwMDY0NAotLS0gYS9MaWIvanNvbi9kZWNvZGVyLnB5CisrKyBiL0xpYi9qc29uL2RlY29kZXIucHkKQEAgLTEyMSw4ICsxMjEsNyBAQAogICAgICAgICAgICAgICAgIG1zZyA9ICJJbnZhbGlkIFxcdVhYWFggZXNjYXBlIgogICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoZXJybXNnKG1zZywgcywgZW5kKSkKICAgICAgICAgICAgIHVuaSA9IGludChlc2MsIDE2KQotICAgICAgICAgICAgIyBDaGVjayBmb3Igc3Vycm9nYXRlIHBhaXIgb24gVUNTLTQgc3lzdGVtcwotICAgICAgICAgICAgaWYgMHhkODAwIDw9IHVuaSA8PSAweGRiZmYgYW5kIHN5cy5tYXh1bmljb2RlID4gNjU1MzU6CisgICAgICAgICAgICBpZiAweGQ4MDAgPD0gdW5pIDw9IDB4ZGJmZjoKICAgICAgICAgICAgICAgICBtc2cgPSAiSW52YWxpZCBcXHVYWFhYXFx1WFhYWCBzdXJyb2dhdGUgcGFpciIKICAgICAgICAgICAgICAgICBpZiBub3Qgc1tlbmQgKyA1OmVuZCArIDddID09ICdcXHUnOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKGVycm1zZyhtc2csIHMsIGVuZCkpCmRpZmYgLS1naXQgYS9MaWIvbGliMnRvMy9fX21haW5fXy5weSBiL0xpYi9saWIydG8zL19fbWFpbl9fLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgwNjg4YmEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvbGliMnRvMy9fX21haW5fXy5weQpAQCAtMCwwICsxLDQgQEAKK2ltcG9ydCBzeXMKK2Zyb20gLm1haW4gaW1wb3J0IG1haW4KKworc3lzLmV4aXQobWFpbigibGliMnRvMy5maXhlcyIpKQpkaWZmIC0tZ2l0IGEvTGliL2xpYjJ0bzMvZml4ZXJfYmFzZS5weSBiL0xpYi9saWIydG8zL2ZpeGVyX2Jhc2UucHkKaW5kZXggYWZjMDQ2Ny4uYjE3NjA1NiAxMDA2NDQKLS0tIGEvTGliL2xpYjJ0bzMvZml4ZXJfYmFzZS5weQorKysgYi9MaWIvbGliMnRvMy9maXhlcl9iYXNlLnB5CkBAIC0yNyw3ICsyNyw2IEBACiAgICAgcGF0dGVybl90cmVlID0gTm9uZSAjIFRyZWUgcmVwcmVzZW50YXRpb24gb2YgdGhlIHBhdHRlcm4KICAgICBvcHRpb25zID0gTm9uZSAgIyBPcHRpb25zIG9iamVjdCBwYXNzZWQgdG8gaW5pdGlhbGl6ZXIKICAgICBmaWxlbmFtZSA9IE5vbmUgIyBUaGUgZmlsZW5hbWUgKHNldCBieSBzZXRfZmlsZW5hbWUpCi0gICAgbG9nZ2VyID0gTm9uZSAgICMgQSBsb2dnZXIgKHNldCBieSBzZXRfZmlsZW5hbWUpCiAgICAgbnVtYmVycyA9IGl0ZXJ0b29scy5jb3VudCgxKSAjIEZvciBuZXdfbmFtZSgpCiAgICAgdXNlZF9uYW1lcyA9IHNldCgpICMgQSBzZXQgb2YgYWxsIHVzZWQgTkFNRXMKICAgICBvcmRlciA9ICJwb3N0IiAjIERvZXMgdGhlIGZpeGVyIHByZWZlciBwcmUtIG9yIHBvc3Qtb3JkZXIgdHJhdmVyc2FsCkBAIC03MCwxMiArNjksMTEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aF90cmVlPVRydWUpCiAKICAgICBkZWYgc2V0X2ZpbGVuYW1lKHNlbGYsIGZpbGVuYW1lKToKLSAgICAgICAgIiIiU2V0IHRoZSBmaWxlbmFtZSwgYW5kIGEgbG9nZ2VyIGRlcml2ZWQgZnJvbSBpdC4KKyAgICAgICAgIiIiU2V0IHRoZSBmaWxlbmFtZS4KIAogICAgICAgICBUaGUgbWFpbiByZWZhY3RvcmluZyB0b29sIHNob3VsZCBjYWxsIHRoaXMuCiAgICAgICAgICIiIgogICAgICAgICBzZWxmLmZpbGVuYW1lID0gZmlsZW5hbWUKLSAgICAgICAgc2VsZi5sb2dnZXIgPSBsb2dnaW5nLmdldExvZ2dlcihmaWxlbmFtZSkKIAogICAgIGRlZiBtYXRjaChzZWxmLCBub2RlKToKICAgICAgICAgIiIiUmV0dXJucyBtYXRjaCBmb3IgYSBnaXZlbiBwYXJzZSB0cmVlIG5vZGUuCmRpZmYgLS1naXQgYS9MaWIvbGliMnRvMy9yZWZhY3Rvci5weSBiL0xpYi9saWIydG8zL3JlZmFjdG9yLnB5CmluZGV4IGFlNWU0MGYuLjNjMDY0MDUgMTAwNjQ0Ci0tLSBhL0xpYi9saWIydG8zL3JlZmFjdG9yLnB5CisrKyBiL0xpYi9saWIydG8zL3JlZmFjdG9yLnB5CkBAIC01NjAsNyArNTYwLDcgQEAKICAgICAgICAgYmxvY2tfbGluZW5vID0gTm9uZQogICAgICAgICBpbmRlbnQgPSBOb25lCiAgICAgICAgIGxpbmVubyA9IDAKLSAgICAgICAgZm9yIGxpbmUgaW4gaW5wdXQuc3BsaXRsaW5lcyhUcnVlKToKKyAgICAgICAgZm9yIGxpbmUgaW4gaW5wdXQuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKToKICAgICAgICAgICAgIGxpbmVubyArPSAxCiAgICAgICAgICAgICBpZiBsaW5lLmxzdHJpcCgpLnN0YXJ0c3dpdGgoc2VsZi5QUzEpOgogICAgICAgICAgICAgICAgIGlmIGJsb2NrIGlzIG5vdCBOb25lOgpAQCAtNjA0LDcgKzYwNCw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZSwgbGluZW5vLCBlcnIuX19jbGFzc19fLl9fbmFtZV9fLCBlcnIpCiAgICAgICAgICAgICByZXR1cm4gYmxvY2sKICAgICAgICAgaWYgc2VsZi5yZWZhY3Rvcl90cmVlKHRyZWUsIGZpbGVuYW1lKToKLSAgICAgICAgICAgIG5ldyA9IHN0cih0cmVlKS5zcGxpdGxpbmVzKFRydWUpCisgICAgICAgICAgICBuZXcgPSBzdHIodHJlZSkuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKQogICAgICAgICAgICAgIyBVbmRvIHRoZSBhZGp1c3RtZW50IG9mIHRoZSBsaW5lIG51bWJlcnMgaW4gd3JhcF90b2tzKCkgYmVsb3cuCiAgICAgICAgICAgICBjbGlwcGVkLCBuZXcgPSBuZXdbOmxpbmVuby0xXSwgbmV3W2xpbmVuby0xOl0KICAgICAgICAgICAgIGFzc2VydCBjbGlwcGVkID09IFsiXG4iXSAqIChsaW5lbm8tMSksIGNsaXBwZWQKZGlmZiAtLWdpdCBhL0xpYi9sb2dnaW5nL19faW5pdF9fLnB5IGIvTGliL2xvZ2dpbmcvX19pbml0X18ucHkKaW5kZXggM2ZhYWQ0Zi4uOGZlNWJkOSAxMDA2NDQKLS0tIGEvTGliL2xvZ2dpbmcvX19pbml0X18ucHkKKysrIGIvTGliL2xvZ2dpbmcvX19pbml0X18ucHkKQEAgLTEsNCArMSw0IEBACi0jIENvcHlyaWdodCAyMDAxLTIwMTAgYnkgVmluYXkgU2FqaXAuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisjIENvcHlyaWdodCAyMDAxLTIwMTIgYnkgVmluYXkgU2FqaXAuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAjCiAjIFBlcm1pc3Npb24gdG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMgc29mdHdhcmUgYW5kIGl0cwogIyBkb2N1bWVudGF0aW9uIGZvciBhbnkgcHVycG9zZSBhbmQgd2l0aG91dCBmZWUgaXMgaGVyZWJ5IGdyYW50ZWQsCkBAIC0zNiwxNSArMzYsOSBAQAogICAgICAgICAgICAnZ2V0TG9nUmVjb3JkRmFjdG9yeScsICdzZXRMb2dSZWNvcmRGYWN0b3J5JywgJ2xhc3RSZXNvcnQnXQogCiB0cnk6Ci0gICAgaW1wb3J0IGNvZGVjcwotZXhjZXB0IEltcG9ydEVycm9yOgotICAgIGNvZGVjcyA9IE5vbmUKLQotdHJ5OgotICAgIGltcG9ydCBfdGhyZWFkIGFzIHRocmVhZAogICAgIGltcG9ydCB0aHJlYWRpbmcKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICB0aHJlYWQgPSBOb25lCitleGNlcHQgSW1wb3J0RXJyb3I6ICNwcmFnbWE6IG5vIGNvdmVyCisgICAgdGhyZWFkaW5nID0gTm9uZQogCiBfX2F1dGhvcl9fICA9ICJWaW5heSBTYWppcCA8dmluYXlfc2FqaXBAcmVkLWRvdmUuY29tPiIKIF9fc3RhdHVzX18gID0gInByb2R1Y3Rpb24iCkBAIC02NSwxNiArNTksMTYgQEAKICAgICBfc3JjZmlsZSA9IF9fZmlsZV9fCiBfc3JjZmlsZSA9IG9zLnBhdGgubm9ybWNhc2UoX3NyY2ZpbGUpCiAKLSMgbmV4dCBiaXQgZmlsY2hlZCBmcm9tIDEuNS4yJ3MgaW5zcGVjdC5weQotZGVmIGN1cnJlbnRmcmFtZSgpOgotICAgICIiIlJldHVybiB0aGUgZnJhbWUgb2JqZWN0IGZvciB0aGUgY2FsbGVyJ3Mgc3RhY2sgZnJhbWUuIiIiCi0gICAgdHJ5OgotICAgICAgICByYWlzZSBFeGNlcHRpb24KLSAgICBleGNlcHQ6Ci0gICAgICAgIHJldHVybiBzeXMuZXhjX2luZm8oKVsyXS50Yl9mcmFtZS5mX2JhY2sKIAotaWYgaGFzYXR0cihzeXMsICdfZ2V0ZnJhbWUnKTogY3VycmVudGZyYW1lID0gbGFtYmRhOiBzeXMuX2dldGZyYW1lKDMpCi0jIGRvbmUgZmlsY2hpbmcKK2lmIGhhc2F0dHIoc3lzLCAnX2dldGZyYW1lJyk6CisgICAgY3VycmVudGZyYW1lID0gbGFtYmRhOiBzeXMuX2dldGZyYW1lKDMpCitlbHNlOiAjcHJhZ21hOiBubyBjb3ZlcgorICAgIGRlZiBjdXJyZW50ZnJhbWUoKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBmcmFtZSBvYmplY3QgZm9yIHRoZSBjYWxsZXIncyBzdGFjayBmcmFtZS4iIiIKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uCisgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgIHJldHVybiBzeXMuZXhjX2luZm8oKVsyXS50Yl9mcmFtZS5mX2JhY2sKIAogIyBfc3JjZmlsZSBpcyBvbmx5IHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBzeXMuX2dldGZyYW1lKCkuCiAjIFRvIHByb3ZpZGUgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIHZlcnNpb25zIG9mIFB5dGhvbiwgc2V0IF9zcmNmaWxlCkBAIC05MiwyMiArODYsMjIgQEAKICNyYWlzZUV4Y2VwdGlvbnMgaXMgdXNlZCB0byBzZWUgaWYgZXhjZXB0aW9ucyBkdXJpbmcgaGFuZGxpbmcgc2hvdWxkIGJlCiAjcHJvcGFnYXRlZAogIwotcmFpc2VFeGNlcHRpb25zID0gMQorcmFpc2VFeGNlcHRpb25zID0gVHJ1ZQogCiAjCiAjIElmIHlvdSBkb24ndCB3YW50IHRocmVhZGluZyBpbmZvcm1hdGlvbiBpbiB0aGUgbG9nLCBzZXQgdGhpcyB0byB6ZXJvCiAjCi1sb2dUaHJlYWRzID0gMQorbG9nVGhyZWFkcyA9IFRydWUKIAogIwogIyBJZiB5b3UgZG9uJ3Qgd2FudCBtdWx0aXByb2Nlc3NpbmcgaW5mb3JtYXRpb24gaW4gdGhlIGxvZywgc2V0IHRoaXMgdG8gemVybwogIwotbG9nTXVsdGlwcm9jZXNzaW5nID0gMQorbG9nTXVsdGlwcm9jZXNzaW5nID0gVHJ1ZQogCiAjCiAjIElmIHlvdSBkb24ndCB3YW50IHByb2Nlc3MgaW5mb3JtYXRpb24gaW4gdGhlIGxvZywgc2V0IHRoaXMgdG8gemVybwogIwotbG9nUHJvY2Vzc2VzID0gMQorbG9nUHJvY2Vzc2VzID0gVHJ1ZQogCiAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAjICAgTGV2ZWwgcmVsYXRlZCBzdHVmZgpAQCAtMTk3LDkgKzE5MSw5IEBACiAjdGhlIGxvY2sgd291bGQgYWxyZWFkeSBoYXZlIGJlZW4gYWNxdWlyZWQgLSBzbyB3ZSBuZWVkIGFuIFJMb2NrLgogI1RoZSBzYW1lIGFyZ3VtZW50IGFwcGxpZXMgdG8gTG9nZ2VycyBhbmQgTWFuYWdlci5sb2dnZXJEaWN0LgogIwotaWYgdGhyZWFkOgoraWYgdGhyZWFkaW5nOgogICAgIF9sb2NrID0gdGhyZWFkaW5nLlJMb2NrKCkKLWVsc2U6CitlbHNlOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgIF9sb2NrID0gTm9uZQogCiAKQEAgLTI1Miw3ICsyNDYsNyBAQAogICAgICAgICAjIGR1cmluZyBmb3JtYXR0aW5nLCB3ZSB0ZXN0IHRvIHNlZSBpZiB0aGUgYXJnIGlzIHByZXNlbnQgdXNpbmcKICAgICAgICAgIyAnaWYgc2VsZi5hcmdzOicuIElmIHRoZSBldmVudCBiZWluZyBsb2dnZWQgaXMgZS5nLiAnVmFsdWUgaXMgJWQnCiAgICAgICAgICMgYW5kIGlmIHRoZSBwYXNzZWQgYXJnIGZhaWxzICdpZiBzZWxmLmFyZ3M6JyB0aGVuIG5vIGZvcm1hdHRpbmcKLSAgICAgICAgIyBpcyBkb25lLiBGb3IgZXhhbXBsZSwgbG9nZ2VyLndhcm4oJ1ZhbHVlIGlzICVkJywgMCkgd291bGQgbG9nCisgICAgICAgICMgaXMgZG9uZS4gRm9yIGV4YW1wbGUsIGxvZ2dlci53YXJuaW5nKCdWYWx1ZSBpcyAlZCcsIDApIHdvdWxkIGxvZwogICAgICAgICAjICdWYWx1ZSBpcyAlZCcgaW5zdGVhZCBvZiAnVmFsdWUgaXMgMCcuCiAgICAgICAgICMgRm9yIHRoZSB1c2UgY2FzZSBvZiBwYXNzaW5nIGEgZGljdGlvbmFyeSwgdGhpcyBzaG91bGQgbm90IGJlIGEKICAgICAgICAgIyBwcm9ibGVtLgpAQCAtMjc2LDEzICsyNzAsMTMgQEAKICAgICAgICAgc2VsZi5jcmVhdGVkID0gY3QKICAgICAgICAgc2VsZi5tc2VjcyA9IChjdCAtIGludChjdCkpICogMTAwMAogICAgICAgICBzZWxmLnJlbGF0aXZlQ3JlYXRlZCA9IChzZWxmLmNyZWF0ZWQgLSBfc3RhcnRUaW1lKSAqIDEwMDAKLSAgICAgICAgaWYgbG9nVGhyZWFkcyBhbmQgdGhyZWFkOgotICAgICAgICAgICAgc2VsZi50aHJlYWQgPSB0aHJlYWQuZ2V0X2lkZW50KCkKKyAgICAgICAgaWYgbG9nVGhyZWFkcyBhbmQgdGhyZWFkaW5nOgorICAgICAgICAgICAgc2VsZi50aHJlYWQgPSB0aHJlYWRpbmcuZ2V0X2lkZW50KCkKICAgICAgICAgICAgIHNlbGYudGhyZWFkTmFtZSA9IHRocmVhZGluZy5jdXJyZW50X3RocmVhZCgpLm5hbWUKLSAgICAgICAgZWxzZToKKyAgICAgICAgZWxzZTogIyBwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICBzZWxmLnRocmVhZCA9IE5vbmUKICAgICAgICAgICAgIHNlbGYudGhyZWFkTmFtZSA9IE5vbmUKLSAgICAgICAgaWYgbm90IGxvZ011bHRpcHJvY2Vzc2luZzoKKyAgICAgICAgaWYgbm90IGxvZ011bHRpcHJvY2Vzc2luZzogIyBwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICBzZWxmLnByb2Nlc3NOYW1lID0gTm9uZQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgc2VsZi5wcm9jZXNzTmFtZSA9ICdNYWluUHJvY2VzcycKQEAgLTI5NCw3ICsyODgsNyBAQAogICAgICAgICAgICAgICAgICMgZm9yIGFuIGV4YW1wbGUKICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYucHJvY2Vzc05hbWUgPSBtcC5jdXJyZW50X3Byb2Nlc3MoKS5uYW1lCi0gICAgICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbjoKKyAgICAgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgICAgICAgICBwYXNzCiAgICAgICAgIGlmIGxvZ1Byb2Nlc3NlcyBhbmQgaGFzYXR0cihvcywgJ2dldHBpZCcpOgogICAgICAgICAgICAgc2VsZi5wcm9jZXNzID0gb3MuZ2V0cGlkKCkKQEAgLTQ2Niw2ICs0NjAsOSBAQAogICAgICAgICBzZWxmLl9mbXQgPSBzZWxmLl9zdHlsZS5fZm10CiAgICAgICAgIHNlbGYuZGF0ZWZtdCA9IGRhdGVmbXQKIAorICAgIGRlZmF1bHRfdGltZV9mb3JtYXQgPSAnJVktJW0tJWQgJUg6JU06JVMnCisgICAgZGVmYXVsdF9tc2VjX2Zvcm1hdCA9ICclcywlMDNkJworCiAgICAgZGVmIGZvcm1hdFRpbWUoc2VsZiwgcmVjb3JkLCBkYXRlZm10PU5vbmUpOgogICAgICAgICAiIiIKICAgICAgICAgUmV0dXJuIHRoZSBjcmVhdGlvbiB0aW1lIG9mIHRoZSBzcGVjaWZpZWQgTG9nUmVjb3JkIGFzIGZvcm1hdHRlZCB0ZXh0LgpAQCAtNDg4LDggKzQ4NSw4IEBACiAgICAgICAgIGlmIGRhdGVmbXQ6CiAgICAgICAgICAgICBzID0gdGltZS5zdHJmdGltZShkYXRlZm10LCBjdCkKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHQgPSB0aW1lLnN0cmZ0aW1lKCIlWS0lbS0lZCAlSDolTTolUyIsIGN0KQotICAgICAgICAgICAgcyA9ICIlcywlMDNkIiAlICh0LCByZWNvcmQubXNlY3MpICMgdGhlIHVzZSBvZiAlIGhlcmUgaXMgaW50ZXJuYWwKKyAgICAgICAgICAgIHQgPSB0aW1lLnN0cmZ0aW1lKHNlbGYuZGVmYXVsdF90aW1lX2Zvcm1hdCwgY3QpCisgICAgICAgICAgICBzID0gc2VsZi5kZWZhdWx0X21zZWNfZm9ybWF0ICUgKHQsIHJlY29yZC5tc2VjcykKICAgICAgICAgcmV0dXJuIHMKIAogICAgIGRlZiBmb3JtYXRFeGNlcHRpb24oc2VsZiwgZWkpOgpAQCAtNjQyLDExICs2MzksMTEgQEAKICAgICAgICAgeWVzLiBJZiBkZWVtZWQgYXBwcm9wcmlhdGUsIHRoZSByZWNvcmQgbWF5IGJlIG1vZGlmaWVkIGluLXBsYWNlLgogICAgICAgICAiIiIKICAgICAgICAgaWYgc2VsZi5ubGVuID09IDA6Ci0gICAgICAgICAgICByZXR1cm4gMQorICAgICAgICAgICAgcmV0dXJuIFRydWUKICAgICAgICAgZWxpZiBzZWxmLm5hbWUgPT0gcmVjb3JkLm5hbWU6Ci0gICAgICAgICAgICByZXR1cm4gMQorICAgICAgICAgICAgcmV0dXJuIFRydWUKICAgICAgICAgZWxpZiByZWNvcmQubmFtZS5maW5kKHNlbGYubmFtZSwgMCwgc2VsZi5ubGVuKSAhPSAwOgotICAgICAgICAgICAgcmV0dXJuIDAKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICByZXR1cm4gKHJlY29yZC5uYW1lW3NlbGYubmxlbl0gPT0gIi4iKQogCiBjbGFzcyBGaWx0ZXJlcihvYmplY3QpOgpAQCAtNjg2LDE0ICs2ODMsMTQgQEAKIAogICAgICAgICAgICBBbGxvdyBmaWx0ZXJzIHRvIGJlIGp1c3QgY2FsbGFibGVzLgogICAgICAgICAiIiIKLSAgICAgICAgcnYgPSAxCisgICAgICAgIHJ2ID0gVHJ1ZQogICAgICAgICBmb3IgZiBpbiBzZWxmLmZpbHRlcnM6CiAgICAgICAgICAgICBpZiBoYXNhdHRyKGYsICdmaWx0ZXInKToKICAgICAgICAgICAgICAgICByZXN1bHQgPSBmLmZpbHRlcihyZWNvcmQpCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHJlc3VsdCA9IGYocmVjb3JkKSAjIGFzc3VtZSBjYWxsYWJsZSAtIHdpbGwgcmFpc2UgaWYgbm90CiAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgotICAgICAgICAgICAgICAgIHJ2ID0gMAorICAgICAgICAgICAgICAgIHJ2ID0gRmFsc2UKICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICByZXR1cm4gcnYKIApAQCAtNzcxLDkgKzc2OCw5IEBACiAgICAgICAgICIiIgogICAgICAgICBBY3F1aXJlIGEgdGhyZWFkIGxvY2sgZm9yIHNlcmlhbGl6aW5nIGFjY2VzcyB0byB0aGUgdW5kZXJseWluZyBJL08uCiAgICAgICAgICIiIgotICAgICAgICBpZiB0aHJlYWQ6CisgICAgICAgIGlmIHRocmVhZGluZzoKICAgICAgICAgICAgIHNlbGYubG9jayA9IHRocmVhZGluZy5STG9jaygpCi0gICAgICAgIGVsc2U6CisgICAgICAgIGVsc2U6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICBzZWxmLmxvY2sgPSBOb25lCiAKICAgICBkZWYgYWNxdWlyZShzZWxmKToKQEAgLTc5Miw3ICs3ODksNyBAQAogCiAgICAgZGVmIHNldExldmVsKHNlbGYsIGxldmVsKToKICAgICAgICAgIiIiCi0gICAgICAgIFNldCB0aGUgbG9nZ2luZyBsZXZlbCBvZiB0aGlzIGhhbmRsZXIuCisgICAgICAgIFNldCB0aGUgbG9nZ2luZyBsZXZlbCBvZiB0aGlzIGhhbmRsZXIuICBsZXZlbCBtdXN0IGJlIGFuIGludCBvciBhIHN0ci4KICAgICAgICAgIiIiCiAgICAgICAgIHNlbGYubGV2ZWwgPSBfY2hlY2tMZXZlbChsZXZlbCkKIApAQCAtODg4LDcgKzg4NSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOb25lLCBzeXMuc3RkZXJyKQogICAgICAgICAgICAgICAgIHN5cy5zdGRlcnIud3JpdGUoJ0xvZ2dlZCBmcm9tIGZpbGUgJXMsIGxpbmUgJXNcbicgJSAoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWNvcmQuZmlsZW5hbWUsIHJlY29yZC5saW5lbm8pKQotICAgICAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICBleGNlcHQgSU9FcnJvcjogI3ByYWdtYTogbm8gY292ZXIKICAgICAgICAgICAgICAgICBwYXNzICAgICMgc2VlIGlzc3VlIDU5NzEKICAgICAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICAgICAgZGVsIGVpCkBAIC05MzcsNyArOTM0LDcgQEAKICAgICAgICAgICAgIHN0cmVhbS53cml0ZShtc2cpCiAgICAgICAgICAgICBzdHJlYW0ud3JpdGUoc2VsZi50ZXJtaW5hdG9yKQogICAgICAgICAgICAgc2VsZi5mbHVzaCgpCi0gICAgICAgIGV4Y2VwdCAoS2V5Ym9hcmRJbnRlcnJ1cHQsIFN5c3RlbUV4aXQpOgorICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KTogI3ByYWdtYTogbm8gY292ZXIKICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgIGV4Y2VwdDoKICAgICAgICAgICAgIHNlbGYuaGFuZGxlRXJyb3IocmVjb3JkKQpAQCAtOTQ2LDE0ICs5NDMsMTIgQEAKICAgICAiIiIKICAgICBBIGhhbmRsZXIgY2xhc3Mgd2hpY2ggd3JpdGVzIGZvcm1hdHRlZCBsb2dnaW5nIHJlY29yZHMgdG8gZGlzayBmaWxlcy4KICAgICAiIiIKLSAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBlbmNvZGluZz1Ob25lLCBkZWxheT0wKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBlbmNvZGluZz1Ob25lLCBkZWxheT1GYWxzZSk6CiAgICAgICAgICIiIgogICAgICAgICBPcGVuIHRoZSBzcGVjaWZpZWQgZmlsZSBhbmQgdXNlIGl0IGFzIHRoZSBzdHJlYW0gZm9yIGxvZ2dpbmcuCiAgICAgICAgICIiIgogICAgICAgICAja2VlcCB0aGUgYWJzb2x1dGUgcGF0aCwgb3RoZXJ3aXNlIGRlcml2ZWQgY2xhc3NlcyB3aGljaCB1c2UgdGhpcwogICAgICAgICAjbWF5IGNvbWUgYSBjcm9wcGVyIHdoZW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5IGNoYW5nZXMKLSAgICAgICAgaWYgY29kZWNzIGlzIE5vbmU6Ci0gICAgICAgICAgICBlbmNvZGluZyA9IE5vbmUKICAgICAgICAgc2VsZi5iYXNlRmlsZW5hbWUgPSBvcy5wYXRoLmFic3BhdGgoZmlsZW5hbWUpCiAgICAgICAgIHNlbGYubW9kZSA9IG1vZGUKICAgICAgICAgc2VsZi5lbmNvZGluZyA9IGVuY29kaW5nCkBAIC05ODEsMTEgKzk3Niw3IEBACiAgICAgICAgIE9wZW4gdGhlIGN1cnJlbnQgYmFzZSBmaWxlIHdpdGggdGhlIChvcmlnaW5hbCkgbW9kZSBhbmQgZW5jb2RpbmcuCiAgICAgICAgIFJldHVybiB0aGUgcmVzdWx0aW5nIHN0cmVhbS4KICAgICAgICAgIiIiCi0gICAgICAgIGlmIHNlbGYuZW5jb2RpbmcgaXMgTm9uZToKLSAgICAgICAgICAgIHN0cmVhbSA9IG9wZW4oc2VsZi5iYXNlRmlsZW5hbWUsIHNlbGYubW9kZSkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHN0cmVhbSA9IGNvZGVjcy5vcGVuKHNlbGYuYmFzZUZpbGVuYW1lLCBzZWxmLm1vZGUsIHNlbGYuZW5jb2RpbmcpCi0gICAgICAgIHJldHVybiBzdHJlYW0KKyAgICAgICAgcmV0dXJuIG9wZW4oc2VsZi5iYXNlRmlsZW5hbWUsIHNlbGYubW9kZSwgZW5jb2Rpbmc9c2VsZi5lbmNvZGluZykKIAogICAgIGRlZiBlbWl0KHNlbGYsIHJlY29yZCk6CiAgICAgICAgICIiIgpAQCAtMTE5NywxMyArMTE4OCwxMyBAQAogICAgICAgICBzZWxmLm5hbWUgPSBuYW1lCiAgICAgICAgIHNlbGYubGV2ZWwgPSBfY2hlY2tMZXZlbChsZXZlbCkKICAgICAgICAgc2VsZi5wYXJlbnQgPSBOb25lCi0gICAgICAgIHNlbGYucHJvcGFnYXRlID0gMQorICAgICAgICBzZWxmLnByb3BhZ2F0ZSA9IFRydWUKICAgICAgICAgc2VsZi5oYW5kbGVycyA9IFtdCi0gICAgICAgIHNlbGYuZGlzYWJsZWQgPSAwCisgICAgICAgIHNlbGYuZGlzYWJsZWQgPSBGYWxzZQogCiAgICAgZGVmIHNldExldmVsKHNlbGYsIGxldmVsKToKICAgICAgICAgIiIiCi0gICAgICAgIFNldCB0aGUgbG9nZ2luZyBsZXZlbCBvZiB0aGlzIGxvZ2dlci4KKyAgICAgICAgU2V0IHRoZSBsb2dnaW5nIGxldmVsIG9mIHRoaXMgbG9nZ2VyLiAgbGV2ZWwgbXVzdCBiZSBhbiBpbnQgb3IgYSBzdHIuCiAgICAgICAgICIiIgogICAgICAgICBzZWxmLmxldmVsID0gX2NoZWNrTGV2ZWwobGV2ZWwpCiAKQEAgLTEyNDMsNyArMTIzNCwxMCBAQAogICAgICAgICBpZiBzZWxmLmlzRW5hYmxlZEZvcihXQVJOSU5HKToKICAgICAgICAgICAgIHNlbGYuX2xvZyhXQVJOSU5HLCBtc2csIGFyZ3MsICoqa3dhcmdzKQogCi0gICAgd2FybiA9IHdhcm5pbmcKKyAgICBkZWYgd2FybihzZWxmLCBtc2csICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHdhcm5pbmdzLndhcm4oIlRoZSAnd2FybicgbWV0aG9kIGlzIGRlcHJlY2F0ZWQsICIKKyAgICAgICAgICAgICJ1c2UgJ3dhcm5pbmcnIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgIHNlbGYud2FybmluZyhtc2csICphcmdzLCAqKmt3YXJncykKIAogICAgIGRlZiBlcnJvcihzZWxmLCBtc2csICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgICIiIgpAQCAtMTM1Miw5ICsxMzQ2LDkgQEAKICAgICAgICAgICAgICNJcm9uUHl0aG9uIGNhbiB1c2UgbG9nZ2luZy4KICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBmbiwgbG5vLCBmdW5jLCBzaW5mbyA9IHNlbGYuZmluZENhbGxlcihzdGFja19pbmZvKQotICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjogIyBwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICAgICAgZm4sIGxubywgZnVuYyA9ICIodW5rbm93biBmaWxlKSIsIDAsICIodW5rbm93biBmdW5jdGlvbikiCi0gICAgICAgIGVsc2U6CisgICAgICAgIGVsc2U6ICMgcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgZm4sIGxubywgZnVuYyA9ICIodW5rbm93biBmaWxlKSIsIDAsICIodW5rbm93biBmdW5jdGlvbikiCiAgICAgICAgIGlmIGV4Y19pbmZvOgogICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoZXhjX2luZm8sIHR1cGxlKToKQEAgLTE0NjYsNyArMTQ2MCw3IEBACiAgICAgICAgIElzIHRoaXMgbG9nZ2VyIGVuYWJsZWQgZm9yIGxldmVsICdsZXZlbCc/CiAgICAgICAgICIiIgogICAgICAgICBpZiBzZWxmLm1hbmFnZXIuZGlzYWJsZSA+PSBsZXZlbDoKLSAgICAgICAgICAgIHJldHVybiAwCisgICAgICAgICAgICByZXR1cm4gRmFsc2UKICAgICAgICAgcmV0dXJuIGxldmVsID49IHNlbGYuZ2V0RWZmZWN0aXZlTGV2ZWwoKQogCiAgICAgZGVmIGdldENoaWxkKHNlbGYsIHN1ZmZpeCk6CkBAIC0xNTU2LDcgKzE1NTAsMTAgQEAKICAgICAgICAgIiIiCiAgICAgICAgIHNlbGYubG9nKFdBUk5JTkcsIG1zZywgKmFyZ3MsICoqa3dhcmdzKQogCi0gICAgd2FybiA9IHdhcm5pbmcKKyAgICBkZWYgd2FybihzZWxmLCBtc2csICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHdhcm5pbmdzLndhcm4oIlRoZSAnd2FybicgbWV0aG9kIGlzIGRlcHJlY2F0ZWQsICIKKyAgICAgICAgICAgICJ1c2UgJ3dhcm5pbmcnIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgIHNlbGYud2FybmluZyhtc2csICphcmdzLCAqKmt3YXJncykKIAogICAgIGRlZiBlcnJvcihzZWxmLCBtc2csICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgICIiIgpAQCAtMTU2OCw3ICsxNTY1LDcgQEAKICAgICAgICAgIiIiCiAgICAgICAgIERlbGVnYXRlIGFuIGV4Y2VwdGlvbiBjYWxsIHRvIHRoZSB1bmRlcmx5aW5nIGxvZ2dlci4KICAgICAgICAgIiIiCi0gICAgICAgIGt3YXJnc1siZXhjX2luZm8iXSA9IDEKKyAgICAgICAga3dhcmdzWyJleGNfaW5mbyJdID0gVHJ1ZQogICAgICAgICBzZWxmLmxvZyhFUlJPUiwgbXNnLCAqYXJncywgKiprd2FyZ3MpCiAKICAgICBkZWYgY3JpdGljYWwoc2VsZiwgbXNnLCAqYXJncywgKiprd2FyZ3MpOgpAQCAtMTY1MSw2ICsxNjQ4LDEwIEBACiAgICAgc3RyZWFtICAgIFVzZSB0aGUgc3BlY2lmaWVkIHN0cmVhbSB0byBpbml0aWFsaXplIHRoZSBTdHJlYW1IYW5kbGVyLiBOb3RlCiAgICAgICAgICAgICAgIHRoYXQgdGhpcyBhcmd1bWVudCBpcyBpbmNvbXBhdGlibGUgd2l0aCAnZmlsZW5hbWUnIC0gaWYgYm90aAogICAgICAgICAgICAgICBhcmUgcHJlc2VudCwgJ3N0cmVhbScgaXMgaWdub3JlZC4KKyAgICBoYW5kbGVycyAgSWYgc3BlY2lmaWVkLCB0aGlzIHNob3VsZCBiZSBhbiBpdGVyYWJsZSBvZiBhbHJlYWR5IGNyZWF0ZWQKKyAgICAgICAgICAgICAgaGFuZGxlcnMsIHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIHJvb3QgaGFuZGxlci4gQW55IGhhbmRsZXIKKyAgICAgICAgICAgICAgaW4gdGhlIGxpc3Qgd2hpY2ggZG9lcyBub3QgaGF2ZSBhIGZvcm1hdHRlciBhc3NpZ25lZCB3aWxsIGJlCisgICAgICAgICAgICAgIGFzc2lnbmVkIHRoZSBmb3JtYXR0ZXIgY3JlYXRlZCBpbiB0aGlzIGZ1bmN0aW9uLgogCiAgICAgTm90ZSB0aGF0IHlvdSBjb3VsZCBzcGVjaWZ5IGEgc3RyZWFtIGNyZWF0ZWQgdXNpbmcgb3BlbihmaWxlbmFtZSwgbW9kZSkKICAgICByYXRoZXIgdGhhbiBwYXNzaW5nIHRoZSBmaWxlbmFtZSBhbmQgbW9kZSBpbi4gSG93ZXZlciwgaXQgc2hvdWxkIGJlCkBAIC0xNjU4LDI3ICsxNjU5LDQ3IEBACiAgICAgdXNpbmcgc3lzLnN0ZG91dCBvciBzeXMuc3RkZXJyKSwgd2hlcmVhcyBGaWxlSGFuZGxlciBjbG9zZXMgaXRzIHN0cmVhbQogICAgIHdoZW4gdGhlIGhhbmRsZXIgaXMgY2xvc2VkLgogCi0gICAgLi4gdmVyc2lvbmNoYW5nZWQ6IDMuMgorICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMy4yCiAgICAgICAgQWRkZWQgdGhlIGBgc3R5bGVgYCBwYXJhbWV0ZXIuCisKKyAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDMuMworICAgICAgIEFkZGVkIHRoZSBgYGhhbmRsZXJzYGAgcGFyYW1ldGVyLiBBIGBgVmFsdWVFcnJvcmBgIGlzIG5vdyB0aHJvd24gZm9yCisgICAgICAgaW5jb21wYXRpYmxlIGFyZ3VtZW50cyAoZS5nLiBgYGhhbmRsZXJzYGAgc3BlY2lmaWVkIHRvZ2V0aGVyIHdpdGgKKyAgICAgICBgYGZpbGVuYW1lYGAvYGBmaWxlbW9kZWBgLCBvciBgYGZpbGVuYW1lYGAvYGBmaWxlbW9kZWBgIHNwZWNpZmllZAorICAgICAgIHRvZ2V0aGVyIHdpdGggYGBzdHJlYW1gYCwgb3IgYGBoYW5kbGVyc2BgIHNwZWNpZmllZCB0b2dldGhlciB3aXRoCisgICAgICAgYGBzdHJlYW1gYC4KICAgICAiIiIKICAgICAjIEFkZCB0aHJlYWQgc2FmZXR5IGluIGNhc2Ugc29tZW9uZSBtaXN0YWtlbmx5IGNhbGxzCiAgICAgIyBiYXNpY0NvbmZpZygpIGZyb20gbXVsdGlwbGUgdGhyZWFkcwogICAgIF9hY3F1aXJlTG9jaygpCiAgICAgdHJ5OgogICAgICAgICBpZiBsZW4ocm9vdC5oYW5kbGVycykgPT0gMDoKLSAgICAgICAgICAgIGZpbGVuYW1lID0ga3dhcmdzLmdldCgiZmlsZW5hbWUiKQotICAgICAgICAgICAgaWYgZmlsZW5hbWU6Ci0gICAgICAgICAgICAgICAgbW9kZSA9IGt3YXJncy5nZXQoImZpbGVtb2RlIiwgJ2EnKQotICAgICAgICAgICAgICAgIGhkbHIgPSBGaWxlSGFuZGxlcihmaWxlbmFtZSwgbW9kZSkKKyAgICAgICAgICAgIGhhbmRsZXJzID0ga3dhcmdzLmdldCgiaGFuZGxlcnMiKQorICAgICAgICAgICAgaWYgaGFuZGxlcnMgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBpZiAic3RyZWFtIiBpbiBrd2FyZ3MgYW5kICJmaWxlbmFtZSIgaW4ga3dhcmdzOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCInc3RyZWFtJyBhbmQgJ2ZpbGVuYW1lJyBzaG91bGQgbm90IGJlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BlY2lmaWVkIHRvZ2V0aGVyIikKICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgc3RyZWFtID0ga3dhcmdzLmdldCgic3RyZWFtIikKLSAgICAgICAgICAgICAgICBoZGxyID0gU3RyZWFtSGFuZGxlcihzdHJlYW0pCisgICAgICAgICAgICAgICAgaWYgInN0cmVhbSIgaW4ga3dhcmdzIG9yICJmaWxlbmFtZSIgaW4ga3dhcmdzOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCInc3RyZWFtJyBvciAnZmlsZW5hbWUnIHNob3VsZCBub3QgYmUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZWQgdG9nZXRoZXIgd2l0aCAnaGFuZGxlcnMnIikKKyAgICAgICAgICAgIGlmIGhhbmRsZXJzIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgZmlsZW5hbWUgPSBrd2FyZ3MuZ2V0KCJmaWxlbmFtZSIpCisgICAgICAgICAgICAgICAgaWYgZmlsZW5hbWU6CisgICAgICAgICAgICAgICAgICAgIG1vZGUgPSBrd2FyZ3MuZ2V0KCJmaWxlbW9kZSIsICdhJykKKyAgICAgICAgICAgICAgICAgICAgaCA9IEZpbGVIYW5kbGVyKGZpbGVuYW1lLCBtb2RlKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHN0cmVhbSA9IGt3YXJncy5nZXQoInN0cmVhbSIpCisgICAgICAgICAgICAgICAgICAgIGggPSBTdHJlYW1IYW5kbGVyKHN0cmVhbSkKKyAgICAgICAgICAgICAgICBoYW5kbGVycyA9IFtoXQogICAgICAgICAgICAgZnMgPSBrd2FyZ3MuZ2V0KCJmb3JtYXQiLCBCQVNJQ19GT1JNQVQpCiAgICAgICAgICAgICBkZnMgPSBrd2FyZ3MuZ2V0KCJkYXRlZm10IiwgTm9uZSkKICAgICAgICAgICAgIHN0eWxlID0ga3dhcmdzLmdldCgic3R5bGUiLCAnJScpCiAgICAgICAgICAgICBmbXQgPSBGb3JtYXR0ZXIoZnMsIGRmcywgc3R5bGUpCi0gICAgICAgICAgICBoZGxyLnNldEZvcm1hdHRlcihmbXQpCi0gICAgICAgICAgICByb290LmFkZEhhbmRsZXIoaGRscikKKyAgICAgICAgICAgIGZvciBoIGluIGhhbmRsZXJzOgorICAgICAgICAgICAgICAgIGlmIGguZm9ybWF0dGVyIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgICAgIGguc2V0Rm9ybWF0dGVyKGZtdCkKKyAgICAgICAgICAgICAgICByb290LmFkZEhhbmRsZXIoaCkKICAgICAgICAgICAgIGxldmVsID0ga3dhcmdzLmdldCgibGV2ZWwiKQogICAgICAgICAgICAgaWYgbGV2ZWwgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICAgICAgcm9vdC5zZXRMZXZlbChsZXZlbCkKQEAgLTE3NDIsNyArMTc2MywxMCBAQAogICAgICAgICBiYXNpY0NvbmZpZygpCiAgICAgcm9vdC53YXJuaW5nKG1zZywgKmFyZ3MsICoqa3dhcmdzKQogCi13YXJuID0gd2FybmluZworZGVmIHdhcm4obXNnLCAqYXJncywgKiprd2FyZ3MpOgorICAgIHdhcm5pbmdzLndhcm4oIlRoZSAnd2FybicgZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCwgIgorICAgICAgICAidXNlICd3YXJuaW5nJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgIHdhcm5pbmcobXNnLCAqYXJncywgKiprd2FyZ3MpCiAKIGRlZiBpbmZvKG1zZywgKmFyZ3MsICoqa3dhcmdzKToKICAgICAiIiIKQEAgLTE4MjcsMTAgKzE4NTEsMTAgQEAKICAgICBwYWNrYWdlLgogICAgICIiIgogICAgIGRlZiBoYW5kbGUoc2VsZiwgcmVjb3JkKToKLSAgICAgICAgcGFzcworICAgICAgICAiIiJTdHViLiIiIgogCiAgICAgZGVmIGVtaXQoc2VsZiwgcmVjb3JkKToKLSAgICAgICAgcGFzcworICAgICAgICAiIiJTdHViLiIiIgogCiAgICAgZGVmIGNyZWF0ZUxvY2soc2VsZik6CiAgICAgICAgIHNlbGYubG9jayA9IE5vbmUKZGlmZiAtLWdpdCBhL0xpYi9sb2dnaW5nL2NvbmZpZy5weSBiL0xpYi9sb2dnaW5nL2NvbmZpZy5weQppbmRleCAzNzNkYTJiLi41ZWY1YzkxIDEwMDY0NAotLS0gYS9MaWIvbG9nZ2luZy9jb25maWcucHkKKysrIGIvTGliL2xvZ2dpbmcvY29uZmlnLnB5CkBAIC0yNCwxMyArMjQsMTMgQEAKIFRvIHVzZSwgc2ltcGx5ICdpbXBvcnQgbG9nZ2luZycgYW5kIGxvZyBhd2F5IQogIiIiCiAKLWltcG9ydCBzeXMsIGxvZ2dpbmcsIGxvZ2dpbmcuaGFuZGxlcnMsIHNvY2tldCwgc3RydWN0LCBvcywgdHJhY2ViYWNrLCByZQotaW1wb3J0IHR5cGVzLCBpbworaW1wb3J0IHN5cywgbG9nZ2luZywgbG9nZ2luZy5oYW5kbGVycywgc29ja2V0LCBzdHJ1Y3QsIHRyYWNlYmFjaywgcmUKK2ltcG9ydCBpbwogCiB0cnk6CiAgICAgaW1wb3J0IF90aHJlYWQgYXMgdGhyZWFkCiAgICAgaW1wb3J0IHRocmVhZGluZwotZXhjZXB0IEltcG9ydEVycm9yOgorZXhjZXB0IEltcG9ydEVycm9yOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgIHRocmVhZCA9IE5vbmUKIAogZnJvbSBzb2NrZXRzZXJ2ZXIgaW1wb3J0IFRocmVhZGluZ1RDUFNlcnZlciwgU3RyZWFtUmVxdWVzdEhhbmRsZXIKQEAgLTk4LDkgKzk4LDYgQEAKIGRlZiBfc3RyaXBfc3BhY2VzKGFsaXN0KToKICAgICByZXR1cm4gbWFwKGxhbWJkYSB4OiB4LnN0cmlwKCksIGFsaXN0KQogCi1kZWYgX2VuY29kZWQocyk6Ci0gICAgcmV0dXJuIHMgaWYgaXNpbnN0YW5jZShzLCBzdHIpIGVsc2Ugcy5lbmNvZGUoJ3V0Zi04JykKLQogZGVmIF9jcmVhdGVfZm9ybWF0dGVycyhjcCk6CiAgICAgIiIiQ3JlYXRlIGFuZCByZXR1cm4gZm9ybWF0dGVycyIiIgogICAgIGZsaXN0ID0gY3BbImZvcm1hdHRlcnMiXVsia2V5cyJdCkBAIC0yMTUsNyArMjEyLDcgQEAKICAgICAjYXZvaWQgZGlzYWJsaW5nIGNoaWxkIGxvZ2dlcnMgb2YgZXhwbGljaXRseQogICAgICNuYW1lZCBsb2dnZXJzLiBXaXRoIGEgc29ydGVkIGxpc3QgaXQgaXMgZWFzaWVyCiAgICAgI3RvIGZpbmQgdGhlIGNoaWxkIGxvZ2dlcnMuCi0gICAgZXhpc3Rpbmcuc29ydChrZXk9X2VuY29kZWQpCisgICAgZXhpc3Rpbmcuc29ydCgpCiAgICAgI1dlJ2xsIGtlZXAgdGhlIGxpc3Qgb2YgZXhpc3RpbmcgbG9nZ2VycwogICAgICN3aGljaCBhcmUgY2hpbGRyZW4gb2YgbmFtZWQgbG9nZ2VycyBoZXJlLi4uCiAgICAgY2hpbGRfbG9nZ2VycyA9IFtdCkBAIC01ODgsNyArNTg1LDcgQEAKICAgICAgICAgICAgICAgICAjYXZvaWQgZGlzYWJsaW5nIGNoaWxkIGxvZ2dlcnMgb2YgZXhwbGljaXRseQogICAgICAgICAgICAgICAgICNuYW1lZCBsb2dnZXJzLiBXaXRoIGEgc29ydGVkIGxpc3QgaXQgaXMgZWFzaWVyCiAgICAgICAgICAgICAgICAgI3RvIGZpbmQgdGhlIGNoaWxkIGxvZ2dlcnMuCi0gICAgICAgICAgICAgICAgZXhpc3Rpbmcuc29ydChrZXk9X2VuY29kZWQpCisgICAgICAgICAgICAgICAgZXhpc3Rpbmcuc29ydCgpCiAgICAgICAgICAgICAgICAgI1dlJ2xsIGtlZXAgdGhlIGxpc3Qgb2YgZXhpc3RpbmcgbG9nZ2VycwogICAgICAgICAgICAgICAgICN3aGljaCBhcmUgY2hpbGRyZW4gb2YgbmFtZWQgbG9nZ2VycyBoZXJlLi4uCiAgICAgICAgICAgICAgICAgY2hpbGRfbG9nZ2VycyA9IFtdCkBAIC03ODYsNyArNzgzLDcgQEAKICAgICBhbmQgd2hpY2ggeW91IGNhbiBqb2luKCkgd2hlbiBhcHByb3ByaWF0ZS4gVG8gc3RvcCB0aGUgc2VydmVyLCBjYWxsCiAgICAgc3RvcExpc3RlbmluZygpLgogICAgICIiIgotICAgIGlmIG5vdCB0aHJlYWQ6CisgICAgaWYgbm90IHRocmVhZDogI3ByYWdtYTogbm8gY292ZXIKICAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcigibGlzdGVuKCkgbmVlZHMgdGhyZWFkaW5nIHRvIHdvcmsiKQogCiAgICAgY2xhc3MgQ29uZmlnU3RyZWFtSGFuZGxlcihTdHJlYW1SZXF1ZXN0SGFuZGxlcik6CkBAIC04MDQsNyArODAxLDYgQEAKICAgICAgICAgICAgIHN0cnVjdC5wYWNrKCI+TCIsIG4pLCBmb2xsb3dlZCBieSB0aGUgY29uZmlnIGZpbGUuCiAgICAgICAgICAgICBVc2VzIGZpbGVDb25maWcoKSB0byBkbyB0aGUgZ3J1bnQgd29yay4KICAgICAgICAgICAgICIiIgotICAgICAgICAgICAgaW1wb3J0IHRlbXBmaWxlCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgY29ubiA9IHNlbGYuY29ubmVjdGlvbgogICAgICAgICAgICAgICAgIGNodW5rID0gY29ubi5yZWN2KDQpCkBAIC04MjUsNyArODIxLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGUgPSBpby5TdHJpbmdJTyhjaHVuaykKICAgICAgICAgICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlQ29uZmlnKGZpbGUpCi0gICAgICAgICAgICAgICAgICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCAoS2V5Ym9hcmRJbnRlcnJ1cHQsIFN5c3RlbUV4aXQpOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgICAgICAgICAgICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhY2ViYWNrLnByaW50X2V4YygpCmRpZmYgLS1naXQgYS9MaWIvbG9nZ2luZy9oYW5kbGVycy5weSBiL0xpYi9sb2dnaW5nL2hhbmRsZXJzLnB5CmluZGV4IDRhNmI5NTkuLjgyMmI0ZWYgMTAwNjQ0Ci0tLSBhL0xpYi9sb2dnaW5nL2hhbmRsZXJzLnB5CisrKyBiL0xpYi9sb2dnaW5nL2hhbmRsZXJzLnB5CkBAIC0yNSwxOCArMjUsMTQgQEAKICIiIgogCiBpbXBvcnQgbG9nZ2luZywgc29ja2V0LCBvcywgcGlja2xlLCBzdHJ1Y3QsIHRpbWUsIHJlCitmcm9tIGNvZGVjcyBpbXBvcnQgQk9NX1VURjgKIGZyb20gc3RhdCBpbXBvcnQgU1RfREVWLCBTVF9JTk8sIFNUX01USU1FCiBpbXBvcnQgcXVldWUKIHRyeToKICAgICBpbXBvcnQgdGhyZWFkaW5nCi1leGNlcHQgSW1wb3J0RXJyb3I6CitleGNlcHQgSW1wb3J0RXJyb3I6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgdGhyZWFkaW5nID0gTm9uZQogCi10cnk6Ci0gICAgaW1wb3J0IGNvZGVjcwotZXhjZXB0IEltcG9ydEVycm9yOgotICAgIGNvZGVjcyA9IE5vbmUKLQogIwogIyBTb21lIGNvbnN0YW50cy4uLgogIwpAQCAtNTYsMTUgKzUyLDE1IEBACiAgICAgTm90IG1lYW50IHRvIGJlIGluc3RhbnRpYXRlZCBkaXJlY3RseS4gIEluc3RlYWQsIHVzZSBSb3RhdGluZ0ZpbGVIYW5kbGVyCiAgICAgb3IgVGltZWRSb3RhdGluZ0ZpbGVIYW5kbGVyLgogICAgICIiIgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBmaWxlbmFtZSwgbW9kZSwgZW5jb2Rpbmc9Tm9uZSwgZGVsYXk9MCk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZpbGVuYW1lLCBtb2RlLCBlbmNvZGluZz1Ob25lLCBkZWxheT1GYWxzZSk6CiAgICAgICAgICIiIgogICAgICAgICBVc2UgdGhlIHNwZWNpZmllZCBmaWxlbmFtZSBmb3Igc3RyZWFtZWQgbG9nZ2luZwogICAgICAgICAiIiIKLSAgICAgICAgaWYgY29kZWNzIGlzIE5vbmU6Ci0gICAgICAgICAgICBlbmNvZGluZyA9IE5vbmUKICAgICAgICAgbG9nZ2luZy5GaWxlSGFuZGxlci5fX2luaXRfXyhzZWxmLCBmaWxlbmFtZSwgbW9kZSwgZW5jb2RpbmcsIGRlbGF5KQogICAgICAgICBzZWxmLm1vZGUgPSBtb2RlCiAgICAgICAgIHNlbGYuZW5jb2RpbmcgPSBlbmNvZGluZworICAgICAgICBzZWxmLm5hbWVyID0gTm9uZQorICAgICAgICBzZWxmLnJvdGF0b3IgPSBOb25lCiAKICAgICBkZWYgZW1pdChzZWxmLCByZWNvcmQpOgogICAgICAgICAiIiIKQEAgLTc3LDE3ICs3Myw1NSBAQAogICAgICAgICAgICAgaWYgc2VsZi5zaG91bGRSb2xsb3ZlcihyZWNvcmQpOgogICAgICAgICAgICAgICAgIHNlbGYuZG9Sb2xsb3ZlcigpCiAgICAgICAgICAgICBsb2dnaW5nLkZpbGVIYW5kbGVyLmVtaXQoc2VsZiwgcmVjb3JkKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICBzZWxmLmhhbmRsZUVycm9yKHJlY29yZCkKIAorICAgIGRlZiByb3RhdGlvbl9maWxlbmFtZShzZWxmLCBkZWZhdWx0X25hbWUpOgorICAgICAgICAiIiIKKyAgICAgICAgTW9kaWZ5IHRoZSBmaWxlbmFtZSBvZiBhIGxvZyBmaWxlIHdoZW4gcm90YXRpbmcuCisKKyAgICAgICAgVGhpcyBpcyBwcm92aWRlZCBzbyB0aGF0IGEgY3VzdG9tIGZpbGVuYW1lIGNhbiBiZSBwcm92aWRlZC4KKworICAgICAgICBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBjYWxscyB0aGUgJ25hbWVyJyBhdHRyaWJ1dGUgb2YgdGhlCisgICAgICAgIGhhbmRsZXIsIGlmIGl0J3MgY2FsbGFibGUsIHBhc3NpbmcgdGhlIGRlZmF1bHQgbmFtZSB0bworICAgICAgICBpdC4gSWYgdGhlIGF0dHJpYnV0ZSBpc24ndCBjYWxsYWJsZSAodGhlIGRlZmF1bHQgaXMgTm9uZSksIHRoZSBuYW1lCisgICAgICAgIGlzIHJldHVybmVkIHVuY2hhbmdlZC4KKworICAgICAgICA6cGFyYW0gZGVmYXVsdF9uYW1lOiBUaGUgZGVmYXVsdCBuYW1lIGZvciB0aGUgbG9nIGZpbGUuCisgICAgICAgICIiIgorICAgICAgICBpZiBub3QgY2FsbGFibGUoc2VsZi5uYW1lcik6CisgICAgICAgICAgICByZXN1bHQgPSBkZWZhdWx0X25hbWUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJlc3VsdCA9IHNlbGYubmFtZXIoZGVmYXVsdF9uYW1lKQorICAgICAgICByZXR1cm4gcmVzdWx0CisKKyAgICBkZWYgcm90YXRlKHNlbGYsIHNvdXJjZSwgZGVzdCk6CisgICAgICAgICIiIgorICAgICAgICBXaGVuIHJvdGF0aW5nLCByb3RhdGUgdGhlIGN1cnJlbnQgbG9nLgorCisgICAgICAgIFRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uIGNhbGxzIHRoZSAncm90YXRvcicgYXR0cmlidXRlIG9mIHRoZQorICAgICAgICBoYW5kbGVyLCBpZiBpdCdzIGNhbGxhYmxlLCBwYXNzaW5nIHRoZSBzb3VyY2UgYW5kIGRlc3QgYXJndW1lbnRzIHRvCisgICAgICAgIGl0LiBJZiB0aGUgYXR0cmlidXRlIGlzbid0IGNhbGxhYmxlICh0aGUgZGVmYXVsdCBpcyBOb25lKSwgdGhlIHNvdXJjZQorICAgICAgICBpcyBzaW1wbHkgcmVuYW1lZCB0byB0aGUgZGVzdGluYXRpb24uCisKKyAgICAgICAgOnBhcmFtIHNvdXJjZTogVGhlIHNvdXJjZSBmaWxlbmFtZS4gVGhpcyBpcyBub3JtYWxseSB0aGUgYmFzZQorICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZSwgZS5nLiAndGVzdC5sb2cnCisgICAgICAgIDpwYXJhbSBkZXN0OiAgIFRoZSBkZXN0aW5hdGlvbiBmaWxlbmFtZS4gVGhpcyBpcyBub3JtYWxseQorICAgICAgICAgICAgICAgICAgICAgICB3aGF0IHRoZSBzb3VyY2UgaXMgcm90YXRlZCB0bywgZS5nLiAndGVzdC5sb2cuMScuCisgICAgICAgICIiIgorICAgICAgICBpZiBub3QgY2FsbGFibGUoc2VsZi5yb3RhdG9yKToKKyAgICAgICAgICAgIG9zLnJlbmFtZShzb3VyY2UsIGRlc3QpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLnJvdGF0b3Ioc291cmNlLCBkZXN0KQorCiBjbGFzcyBSb3RhdGluZ0ZpbGVIYW5kbGVyKEJhc2VSb3RhdGluZ0hhbmRsZXIpOgogICAgICIiIgogICAgIEhhbmRsZXIgZm9yIGxvZ2dpbmcgdG8gYSBzZXQgb2YgZmlsZXMsIHdoaWNoIHN3aXRjaGVzIGZyb20gb25lIGZpbGUKICAgICB0byB0aGUgbmV4dCB3aGVuIHRoZSBjdXJyZW50IGZpbGUgcmVhY2hlcyBhIGNlcnRhaW4gc2l6ZS4KICAgICAiIiIKLSAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBtYXhCeXRlcz0wLCBiYWNrdXBDb3VudD0wLCBlbmNvZGluZz1Ob25lLCBkZWxheT0wKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBtYXhCeXRlcz0wLCBiYWNrdXBDb3VudD0wLCBlbmNvZGluZz1Ob25lLCBkZWxheT1GYWxzZSk6CiAgICAgICAgICIiIgogICAgICAgICBPcGVuIHRoZSBzcGVjaWZpZWQgZmlsZSBhbmQgdXNlIGl0IGFzIHRoZSBzdHJlYW0gZm9yIGxvZ2dpbmcuCiAKQEAgLTEyOCwxNiArMTYyLDE3IEBACiAgICAgICAgICAgICBzZWxmLnN0cmVhbSA9IE5vbmUKICAgICAgICAgaWYgc2VsZi5iYWNrdXBDb3VudCA+IDA6CiAgICAgICAgICAgICBmb3IgaSBpbiByYW5nZShzZWxmLmJhY2t1cENvdW50IC0gMSwgMCwgLTEpOgotICAgICAgICAgICAgICAgIHNmbiA9ICIlcy4lZCIgJSAoc2VsZi5iYXNlRmlsZW5hbWUsIGkpCi0gICAgICAgICAgICAgICAgZGZuID0gIiVzLiVkIiAlIChzZWxmLmJhc2VGaWxlbmFtZSwgaSArIDEpCisgICAgICAgICAgICAgICAgc2ZuID0gc2VsZi5yb3RhdGlvbl9maWxlbmFtZSgiJXMuJWQiICUgKHNlbGYuYmFzZUZpbGVuYW1lLCBpKSkKKyAgICAgICAgICAgICAgICBkZm4gPSBzZWxmLnJvdGF0aW9uX2ZpbGVuYW1lKCIlcy4lZCIgJSAoc2VsZi5iYXNlRmlsZW5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgKyAxKSkKICAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhzZm4pOgogICAgICAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhkZm4pOgogICAgICAgICAgICAgICAgICAgICAgICAgb3MucmVtb3ZlKGRmbikKICAgICAgICAgICAgICAgICAgICAgb3MucmVuYW1lKHNmbiwgZGZuKQotICAgICAgICAgICAgZGZuID0gc2VsZi5iYXNlRmlsZW5hbWUgKyAiLjEiCisgICAgICAgICAgICBkZm4gPSBzZWxmLnJvdGF0aW9uX2ZpbGVuYW1lKHNlbGYuYmFzZUZpbGVuYW1lICsgIi4xIikKICAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGRmbik6CiAgICAgICAgICAgICAgICAgb3MucmVtb3ZlKGRmbikKLSAgICAgICAgICAgIG9zLnJlbmFtZShzZWxmLmJhc2VGaWxlbmFtZSwgZGZuKQorICAgICAgICAgICAgc2VsZi5yb3RhdGUoc2VsZi5iYXNlRmlsZW5hbWUsIGRmbikKICAgICAgICAgc2VsZi5tb2RlID0gJ3cnCiAgICAgICAgIHNlbGYuc3RyZWFtID0gc2VsZi5fb3BlbigpCiAKQEAgLTE4NSwxOSArMjIwLDE5IEBACiAgICAgICAgIGlmIHNlbGYud2hlbiA9PSAnUyc6CiAgICAgICAgICAgICBzZWxmLmludGVydmFsID0gMSAjIG9uZSBzZWNvbmQKICAgICAgICAgICAgIHNlbGYuc3VmZml4ID0gIiVZLSVtLSVkXyVILSVNLSVTIgotICAgICAgICAgICAgc2VsZi5leHRNYXRjaCA9IHIiXlxkezR9LVxkezJ9LVxkezJ9X1xkezJ9LVxkezJ9LVxkezJ9JCIKKyAgICAgICAgICAgIHNlbGYuZXh0TWF0Y2ggPSByIl5cZHs0fS1cZHsyfS1cZHsyfV9cZHsyfS1cZHsyfS1cZHsyfShcLlx3Kyk/JCIKICAgICAgICAgZWxpZiBzZWxmLndoZW4gPT0gJ00nOgogICAgICAgICAgICAgc2VsZi5pbnRlcnZhbCA9IDYwICMgb25lIG1pbnV0ZQogICAgICAgICAgICAgc2VsZi5zdWZmaXggPSAiJVktJW0tJWRfJUgtJU0iCi0gICAgICAgICAgICBzZWxmLmV4dE1hdGNoID0gciJeXGR7NH0tXGR7Mn0tXGR7Mn1fXGR7Mn0tXGR7Mn0kIgorICAgICAgICAgICAgc2VsZi5leHRNYXRjaCA9IHIiXlxkezR9LVxkezJ9LVxkezJ9X1xkezJ9LVxkezJ9KFwuXHcrKT8kIgogICAgICAgICBlbGlmIHNlbGYud2hlbiA9PSAnSCc6CiAgICAgICAgICAgICBzZWxmLmludGVydmFsID0gNjAgKiA2MCAjIG9uZSBob3VyCiAgICAgICAgICAgICBzZWxmLnN1ZmZpeCA9ICIlWS0lbS0lZF8lSCIKLSAgICAgICAgICAgIHNlbGYuZXh0TWF0Y2ggPSByIl5cZHs0fS1cZHsyfS1cZHsyfV9cZHsyfSQiCisgICAgICAgICAgICBzZWxmLmV4dE1hdGNoID0gciJeXGR7NH0tXGR7Mn0tXGR7Mn1fXGR7Mn0oXC5cdyspPyQiCiAgICAgICAgIGVsaWYgc2VsZi53aGVuID09ICdEJyBvciBzZWxmLndoZW4gPT0gJ01JRE5JR0hUJzoKICAgICAgICAgICAgIHNlbGYuaW50ZXJ2YWwgPSA2MCAqIDYwICogMjQgIyBvbmUgZGF5CiAgICAgICAgICAgICBzZWxmLnN1ZmZpeCA9ICIlWS0lbS0lZCIKLSAgICAgICAgICAgIHNlbGYuZXh0TWF0Y2ggPSByIl5cZHs0fS1cZHsyfS1cZHsyfSQiCisgICAgICAgICAgICBzZWxmLmV4dE1hdGNoID0gciJeXGR7NH0tXGR7Mn0tXGR7Mn0oXC5cdyspPyQiCiAgICAgICAgIGVsaWYgc2VsZi53aGVuLnN0YXJ0c3dpdGgoJ1cnKToKICAgICAgICAgICAgIHNlbGYuaW50ZXJ2YWwgPSA2MCAqIDYwICogMjQgKiA3ICMgb25lIHdlZWsKICAgICAgICAgICAgIGlmIGxlbihzZWxmLndoZW4pICE9IDI6CkBAIC0yMDYsNyArMjQxLDcgQEAKICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJJbnZhbGlkIGRheSBzcGVjaWZpZWQgZm9yIHdlZWtseSByb2xsb3ZlcjogJXMiICUgc2VsZi53aGVuKQogICAgICAgICAgICAgc2VsZi5kYXlPZldlZWsgPSBpbnQoc2VsZi53aGVuWzFdKQogICAgICAgICAgICAgc2VsZi5zdWZmaXggPSAiJVktJW0tJWQiCi0gICAgICAgICAgICBzZWxmLmV4dE1hdGNoID0gciJeXGR7NH0tXGR7Mn0tXGR7Mn0kIgorICAgICAgICAgICAgc2VsZi5leHRNYXRjaCA9IHIiXlxkezR9LVxkezJ9LVxkezJ9KFwuXHcrKT8kIgogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiSW52YWxpZCByb2xsb3ZlciBpbnRlcnZhbCBzcGVjaWZpZWQ6ICVzIiAlIHNlbGYud2hlbikKIApAQCAtMzI5LDEwICszNjQsMTEgQEAKICAgICAgICAgICAgIHRpbWVUdXBsZSA9IHRpbWUuZ210aW1lKHQpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICB0aW1lVHVwbGUgPSB0aW1lLmxvY2FsdGltZSh0KQotICAgICAgICBkZm4gPSBzZWxmLmJhc2VGaWxlbmFtZSArICIuIiArIHRpbWUuc3RyZnRpbWUoc2VsZi5zdWZmaXgsIHRpbWVUdXBsZSkKKyAgICAgICAgZGZuID0gc2VsZi5yb3RhdGlvbl9maWxlbmFtZShzZWxmLmJhc2VGaWxlbmFtZSArICIuIiArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZS5zdHJmdGltZShzZWxmLnN1ZmZpeCwgdGltZVR1cGxlKSkKICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZGZuKToKICAgICAgICAgICAgIG9zLnJlbW92ZShkZm4pCi0gICAgICAgIG9zLnJlbmFtZShzZWxmLmJhc2VGaWxlbmFtZSwgZGZuKQorICAgICAgICBzZWxmLnJvdGF0ZShzZWxmLmJhc2VGaWxlbmFtZSwgZGZuKQogICAgICAgICBpZiBzZWxmLmJhY2t1cENvdW50ID4gMDoKICAgICAgICAgICAgIGZvciBzIGluIHNlbGYuZ2V0RmlsZXNUb0RlbGV0ZSgpOgogICAgICAgICAgICAgICAgIG9zLnJlbW92ZShzKQpAQCAtMzczLDcgKzQwOSw3IEBACiAgICAgVGhpcyBoYW5kbGVyIGlzIGJhc2VkIG9uIGEgc3VnZ2VzdGlvbiBhbmQgcGF0Y2ggYnkgQ2hhZCBKLgogICAgIFNjaHJvZWRlci4KICAgICAiIiIKLSAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBlbmNvZGluZz1Ob25lLCBkZWxheT0wKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGU9J2EnLCBlbmNvZGluZz1Ob25lLCBkZWxheT1GYWxzZSk6CiAgICAgICAgIGxvZ2dpbmcuRmlsZUhhbmRsZXIuX19pbml0X18oc2VsZiwgZmlsZW5hbWUsIG1vZGUsIGVuY29kaW5nLCBkZWxheSkKICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHNlbGYuYmFzZUZpbGVuYW1lKToKICAgICAgICAgICAgIHNlbGYuZGV2LCBzZWxmLmlubyA9IC0xLCAtMQpAQCAtMzkxLDcgKzQyNyw3IEBACiAgICAgICAgICIiIgogICAgICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMoc2VsZi5iYXNlRmlsZW5hbWUpOgogICAgICAgICAgICAgc3RhdCA9IE5vbmUKLSAgICAgICAgICAgIGNoYW5nZWQgPSAxCisgICAgICAgICAgICBjaGFuZ2VkID0gVHJ1ZQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgc3RhdCA9IG9zLnN0YXQoc2VsZi5iYXNlRmlsZW5hbWUpCiAgICAgICAgICAgICBjaGFuZ2VkID0gKHN0YXRbU1RfREVWXSAhPSBzZWxmLmRldikgb3IgKHN0YXRbU1RfSU5PXSAhPSBzZWxmLmlubykKQEAgLTQyMSwxNSArNDU3LDE1IEBACiAgICAgICAgICIiIgogICAgICAgICBJbml0aWFsaXplcyB0aGUgaGFuZGxlciB3aXRoIGEgc3BlY2lmaWMgaG9zdCBhZGRyZXNzIGFuZCBwb3J0LgogCi0gICAgICAgIFRoZSBhdHRyaWJ1dGUgJ2Nsb3NlT25FcnJvcicgaXMgc2V0IHRvIDEgLSB3aGljaCBtZWFucyB0aGF0IGlmCi0gICAgICAgIGEgc29ja2V0IGVycm9yIG9jY3VycywgdGhlIHNvY2tldCBpcyBzaWxlbnRseSBjbG9zZWQgYW5kIHRoZW4KLSAgICAgICAgcmVvcGVuZWQgb24gdGhlIG5leHQgbG9nZ2luZyBjYWxsLgorICAgICAgICBXaGVuIHRoZSBhdHRyaWJ1dGUgKmNsb3NlT25FcnJvciogaXMgc2V0IHRvIFRydWUgLSBpZiBhIHNvY2tldCBlcnJvcgorICAgICAgICBvY2N1cnMsIHRoZSBzb2NrZXQgaXMgc2lsZW50bHkgY2xvc2VkIGFuZCB0aGVuIHJlb3BlbmVkIG9uIHRoZSBuZXh0CisgICAgICAgIGxvZ2dpbmcgY2FsbC4KICAgICAgICAgIiIiCiAgICAgICAgIGxvZ2dpbmcuSGFuZGxlci5fX2luaXRfXyhzZWxmKQogICAgICAgICBzZWxmLmhvc3QgPSBob3N0CiAgICAgICAgIHNlbGYucG9ydCA9IHBvcnQKICAgICAgICAgc2VsZi5zb2NrID0gTm9uZQotICAgICAgICBzZWxmLmNsb3NlT25FcnJvciA9IDAKKyAgICAgICAgc2VsZi5jbG9zZU9uRXJyb3IgPSBGYWxzZQogICAgICAgICBzZWxmLnJldHJ5VGltZSA9IE5vbmUKICAgICAgICAgIwogICAgICAgICAjIEV4cG9uZW50aWFsIGJhY2tvZmYgcGFyYW1ldGVycy4KQEAgLTQ0Niw4ICs0ODIsMTIgQEAKICAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKICAgICAgICAgaWYgaGFzYXR0cihzLCAnc2V0dGltZW91dCcpOgogICAgICAgICAgICAgcy5zZXR0aW1lb3V0KHRpbWVvdXQpCi0gICAgICAgIHMuY29ubmVjdCgoc2VsZi5ob3N0LCBzZWxmLnBvcnQpKQotICAgICAgICByZXR1cm4gcworICAgICAgICB0cnk6CisgICAgICAgICAgICBzLmNvbm5lY3QoKHNlbGYuaG9zdCwgc2VsZi5wb3J0KSkKKyAgICAgICAgICAgIHJldHVybiBzCisgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6CisgICAgICAgICAgICBzLmNsb3NlKCkKKyAgICAgICAgICAgIHJhaXNlCiAKICAgICBkZWYgY3JlYXRlU29ja2V0KHNlbGYpOgogICAgICAgICAiIiIKQEAgLTQ2MCw3ICs1MDAsNyBAQAogICAgICAgICAjIGlzIHRoZSBmaXJzdCB0aW1lIGJhY2sgYWZ0ZXIgYSBkaXNjb25uZWN0LCBvcgogICAgICAgICAjIHdlJ3ZlIHdhaXRlZCBsb25nIGVub3VnaC4KICAgICAgICAgaWYgc2VsZi5yZXRyeVRpbWUgaXMgTm9uZToKLSAgICAgICAgICAgIGF0dGVtcHQgPSAxCisgICAgICAgICAgICBhdHRlbXB0ID0gVHJ1ZQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgYXR0ZW1wdCA9IChub3cgPj0gc2VsZi5yZXRyeVRpbWUpCiAgICAgICAgIGlmIGF0dGVtcHQ6CkBAIC00OTMsMTQgKzUzMywxNCBAQAogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIoc2VsZi5zb2NrLCAic2VuZGFsbCIpOgogICAgICAgICAgICAgICAgICAgICBzZWxmLnNvY2suc2VuZGFsbChzKQotICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZWxzZTogI3ByYWdtYTogbm8gY292ZXIKICAgICAgICAgICAgICAgICAgICAgc2VudHNvZmFyID0gMAogICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gbGVuKHMpCiAgICAgICAgICAgICAgICAgICAgIHdoaWxlIGxlZnQgPiAwOgogICAgICAgICAgICAgICAgICAgICAgICAgc2VudCA9IHNlbGYuc29jay5zZW5kKHNbc2VudHNvZmFyOl0pCiAgICAgICAgICAgICAgICAgICAgICAgICBzZW50c29mYXIgPSBzZW50c29mYXIgKyBzZW50CiAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0ID0gbGVmdCAtIHNlbnQKLSAgICAgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6CisgICAgICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgICAgIHNlbGYuc29jay5jbG9zZSgpCiAgICAgICAgICAgICAgICAgc2VsZi5zb2NrID0gTm9uZSAgIyBzbyB3ZSBjYW4gY2FsbCBjcmVhdGVTb2NrZXQgbmV4dCB0aW1lCiAKQEAgLTU0NSw3ICs1ODUsNyBAQAogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzID0gc2VsZi5tYWtlUGlja2xlKHJlY29yZCkKICAgICAgICAgICAgIHNlbGYuc2VuZChzKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICBzZWxmLmhhbmRsZUVycm9yKHJlY29yZCkKQEAgLTU3NSw3ICs2MTUsNyBAQAogICAgICAgICBJbml0aWFsaXplcyB0aGUgaGFuZGxlciB3aXRoIGEgc3BlY2lmaWMgaG9zdCBhZGRyZXNzIGFuZCBwb3J0LgogICAgICAgICAiIiIKICAgICAgICAgU29ja2V0SGFuZGxlci5fX2luaXRfXyhzZWxmLCBob3N0LCBwb3J0KQotICAgICAgICBzZWxmLmNsb3NlT25FcnJvciA9IDAKKyAgICAgICAgc2VsZi5jbG9zZU9uRXJyb3IgPSBGYWxzZQogCiAgICAgZGVmIG1ha2VTb2NrZXQoc2VsZik6CiAgICAgICAgICIiIgpAQCAtNzE2LDEwICs3NTYsMTAgQEAKICAgICAgICAgc2VsZi5zb2NrdHlwZSA9IHNvY2t0eXBlCiAKICAgICAgICAgaWYgaXNpbnN0YW5jZShhZGRyZXNzLCBzdHIpOgotICAgICAgICAgICAgc2VsZi51bml4c29ja2V0ID0gMQorICAgICAgICAgICAgc2VsZi51bml4c29ja2V0ID0gVHJ1ZQogICAgICAgICAgICAgc2VsZi5fY29ubmVjdF91bml4c29ja2V0KGFkZHJlc3MpCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLnVuaXhzb2NrZXQgPSAwCisgICAgICAgICAgICBzZWxmLnVuaXhzb2NrZXQgPSBGYWxzZQogICAgICAgICAgICAgc2VsZi5zb2NrZXQgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrdHlwZSkKICAgICAgICAgICAgIGlmIHNvY2t0eXBlID09IHNvY2tldC5TT0NLX1NUUkVBTToKICAgICAgICAgICAgICAgICBzZWxmLnNvY2tldC5jb25uZWN0KGFkZHJlc3MpCkBAIC03NTIsOCArNzkyLDcgQEAKICAgICAgICAgIiIiCiAgICAgICAgIENsb3NlcyB0aGUgc29ja2V0LgogICAgICAgICAiIiIKLSAgICAgICAgaWYgc2VsZi51bml4c29ja2V0OgotICAgICAgICAgICAgc2VsZi5zb2NrZXQuY2xvc2UoKQorICAgICAgICBzZWxmLnNvY2tldC5jbG9zZSgpCiAgICAgICAgIGxvZ2dpbmcuSGFuZGxlci5jbG9zZShzZWxmKQogCiAgICAgZGVmIG1hcFByaW9yaXR5KHNlbGYsIGxldmVsTmFtZSk6CkBAIC03NjYsNiArODA1LDcgQEAKICAgICAgICAgIiIiCiAgICAgICAgIHJldHVybiBzZWxmLnByaW9yaXR5X21hcC5nZXQobGV2ZWxOYW1lLCAid2FybmluZyIpCiAKKyAgICBpZGVudCA9ICcnICAgICAgICAgICMgcHJlcGVuZGVkIHRvIGFsbCBtZXNzYWdlcwogICAgIGFwcGVuZF9udWwgPSBUcnVlICAgIyBzb21lIG9sZCBzeXNsb2cgZGFlbW9ucyBleHBlY3QgYSBOVUwgdGVybWluYXRvcgogCiAgICAgZGVmIGVtaXQoc2VsZiwgcmVjb3JkKToKQEAgLTc3Niw2ICs4MTYsOCBAQAogICAgICAgICBleGNlcHRpb24gaW5mb3JtYXRpb24gaXMgcHJlc2VudCwgaXQgaXMgTk9UIHNlbnQgdG8gdGhlIHNlcnZlci4KICAgICAgICAgIiIiCiAgICAgICAgIG1zZyA9IHNlbGYuZm9ybWF0KHJlY29yZCkKKyAgICAgICAgaWYgc2VsZi5pZGVudDoKKyAgICAgICAgICAgIG1zZyA9IHNlbGYuaWRlbnQgKyBtc2cKICAgICAgICAgaWYgc2VsZi5hcHBlbmRfbnVsOgogICAgICAgICAgICAgbXNnICs9ICdcMDAwJwogICAgICAgICAiIiIKQEAgLTc4Nyw5ICs4MjksNyBAQAogICAgICAgICBwcmlvID0gcHJpby5lbmNvZGUoJ3V0Zi04JykKICAgICAgICAgIyBNZXNzYWdlIGlzIGEgc3RyaW5nLiBDb252ZXJ0IHRvIGJ5dGVzIGFzIHJlcXVpcmVkIGJ5IFJGQyA1NDI0CiAgICAgICAgIG1zZyA9IG1zZy5lbmNvZGUoJ3V0Zi04JykKLSAgICAgICAgaWYgY29kZWNzOgotICAgICAgICAgICAgbXNnID0gY29kZWNzLkJPTV9VVEY4ICsgbXNnCi0gICAgICAgIG1zZyA9IHByaW8gKyBtc2cKKyAgICAgICAgbXNnID0gcHJpbyArIEJPTV9VVEY4ICsgbXNnCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGlmIHNlbGYudW5peHNvY2tldDoKICAgICAgICAgICAgICAgICB0cnk6CkBAIC04MDEsNyArODQxLDcgQEAKICAgICAgICAgICAgICAgICBzZWxmLnNvY2tldC5zZW5kdG8obXNnLCBzZWxmLmFkZHJlc3MpCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHNlbGYuc29ja2V0LnNlbmRhbGwobXNnKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICBzZWxmLmhhbmRsZUVycm9yKHJlY29yZCkKQEAgLTg3OCw3ICs5MTgsNyBAQAogICAgICAgICAgICAgICAgIHNtdHAubG9naW4oc2VsZi51c2VybmFtZSwgc2VsZi5wYXNzd29yZCkKICAgICAgICAgICAgIHNtdHAuc2VuZG1haWwoc2VsZi5mcm9tYWRkciwgc2VsZi50b2FkZHJzLCBtc2cpCiAgICAgICAgICAgICBzbXRwLnF1aXQoKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICBzZWxmLmhhbmRsZUVycm9yKHJlY29yZCkKQEAgLTk2NSw3ICsxMDA1LDcgQEAKICAgICAgICAgICAgICAgICB0eXBlID0gc2VsZi5nZXRFdmVudFR5cGUocmVjb3JkKQogICAgICAgICAgICAgICAgIG1zZyA9IHNlbGYuZm9ybWF0KHJlY29yZCkKICAgICAgICAgICAgICAgICBzZWxmLl93ZWx1LlJlcG9ydEV2ZW50KHNlbGYuYXBwbmFtZSwgaWQsIGNhdCwgdHlwZSwgW21zZ10pCi0gICAgICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgICAgIGV4Y2VwdCAoS2V5Ym9hcmRJbnRlcnJ1cHQsIFN5c3RlbUV4aXQpOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgICAgIHJhaXNlCiAgICAgICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICAgICAgc2VsZi5oYW5kbGVFcnJvcihyZWNvcmQpCkBAIC0xMDQ4LDkgKzEwODgsMTEgQEAKICAgICAgICAgICAgICAgICBzID0gKCd1JXM6JXMnICUgc2VsZi5jcmVkZW50aWFscykuZW5jb2RlKCd1dGYtOCcpCiAgICAgICAgICAgICAgICAgcyA9ICdCYXNpYyAnICsgYmFzZTY0LmI2NGVuY29kZShzKS5zdHJpcCgpCiAgICAgICAgICAgICAgICAgaC5wdXRoZWFkZXIoJ0F1dGhvcml6YXRpb24nLCBzKQotICAgICAgICAgICAgaC5lbmRoZWFkZXJzKGRhdGEgaWYgc2VsZi5tZXRob2QgPT0gIlBPU1QiIGVsc2UgTm9uZSkKKyAgICAgICAgICAgIGguZW5kaGVhZGVycygpCisgICAgICAgICAgICBpZiBzZWxmLm1ldGhvZCA9PSAiUE9TVCI6CisgICAgICAgICAgICAgICAgaC5zZW5kKGRhdGEuZW5jb2RlKCd1dGYtOCcpKQogICAgICAgICAgICAgaC5nZXRyZXNwb25zZSgpICAgICNjYW4ndCBkbyBhbnl0aGluZyB3aXRoIHRoZSByZXN1bHQKLSAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6CisgICAgICAgIGV4Y2VwdCAoS2V5Ym9hcmRJbnRlcnJ1cHQsIFN5c3RlbUV4aXQpOiAjcHJhZ21hOiBubyBjb3ZlcgogICAgICAgICAgICAgcmFpc2UKICAgICAgICAgZXhjZXB0OgogICAgICAgICAgICAgc2VsZi5oYW5kbGVFcnJvcihyZWNvcmQpCkBAIC0xMjIwLDcgKzEyNjIsNyBAQAogICAgICAgICAiIiIKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgc2VsZi5lbnF1ZXVlKHNlbGYucHJlcGFyZShyZWNvcmQpKQotICAgICAgICBleGNlcHQgKEtleWJvYXJkSW50ZXJydXB0LCBTeXN0ZW1FeGl0KToKKyAgICAgICAgZXhjZXB0IChLZXlib2FyZEludGVycnVwdCwgU3lzdGVtRXhpdCk6ICNwcmFnbWE6IG5vIGNvdmVyCiAgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQ6CiAgICAgICAgICAgICBzZWxmLmhhbmRsZUVycm9yKHJlY29yZCkKQEAgLTEzMTcsNiArMTM1OSwxNiBAQAogICAgICAgICAgICAgICAgIGV4Y2VwdCBxdWV1ZS5FbXB0eToKICAgICAgICAgICAgICAgICAgICAgYnJlYWsKIAorICAgICAgICBkZWYgZW5xdWV1ZV9zZW50aW5lbChzZWxmKToKKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgVGhpcyBpcyB1c2VkIHRvIGVucXVldWUgdGhlIHNlbnRpbmVsIHJlY29yZC4KKworICAgICAgICAgICAgVGhlIGJhc2UgaW1wbGVtZW50YXRpb24gdXNlcyBwdXRfbm93YWl0LiBZb3UgbWF5IHdhbnQgdG8gb3ZlcnJpZGUgdGhpcworICAgICAgICAgICAgbWV0aG9kIGlmIHlvdSB3YW50IHRvIHVzZSB0aW1lb3V0cyBvciB3b3JrIHdpdGggY3VzdG9tIHF1ZXVlCisgICAgICAgICAgICBpbXBsZW1lbnRhdGlvbnMuCisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIHNlbGYucXVldWUucHV0X25vd2FpdChzZWxmLl9zZW50aW5lbCkKKwogICAgICAgICBkZWYgc3RvcChzZWxmKToKICAgICAgICAgICAgICIiIgogICAgICAgICAgICAgU3RvcCB0aGUgbGlzdGVuZXIuCkBAIC0xMzI2LDYgKzEzNzgsNiBAQAogICAgICAgICAgICAgbWF5IGJlIHNvbWUgcmVjb3JkcyBzdGlsbCBsZWZ0IG9uIHRoZSBxdWV1ZSwgd2hpY2ggd29uJ3QgYmUgcHJvY2Vzc2VkLgogICAgICAgICAgICAgIiIiCiAgICAgICAgICAgICBzZWxmLl9zdG9wLnNldCgpCi0gICAgICAgICAgICBzZWxmLnF1ZXVlLnB1dF9ub3dhaXQoc2VsZi5fc2VudGluZWwpCisgICAgICAgICAgICBzZWxmLmVucXVldWVfc2VudGluZWwoKQogICAgICAgICAgICAgc2VsZi5fdGhyZWFkLmpvaW4oKQogICAgICAgICAgICAgc2VsZi5fdGhyZWFkID0gTm9uZQpkaWZmIC0tZ2l0IGEvTGliL2x6bWEucHkgYi9MaWIvbHptYS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ODBjNjY2Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL2x6bWEucHkKQEAgLTAsMCArMSwzOTggQEAKKyIiIkludGVyZmFjZSB0byB0aGUgbGlibHptYSBjb21wcmVzc2lvbiBsaWJyYXJ5LgorCitUaGlzIG1vZHVsZSBwcm92aWRlcyBhIGNsYXNzIGZvciByZWFkaW5nIGFuZCB3cml0aW5nIGNvbXByZXNzZWQgZmlsZXMsCitjbGFzc2VzIGZvciBpbmNyZW1lbnRhbCAoZGUpY29tcHJlc3Npb24sIGFuZCBjb252ZW5pZW5jZSBmdW5jdGlvbnMgZm9yCitvbmUtc2hvdCAoZGUpY29tcHJlc3Npb24uCisKK1RoZXNlIGNsYXNzZXMgYW5kIGZ1bmN0aW9ucyBzdXBwb3J0IGJvdGggdGhlIFhaIGFuZCBsZWdhY3kgTFpNQQorY29udGFpbmVyIGZvcm1hdHMsIGFzIHdlbGwgYXMgcmF3IGNvbXByZXNzZWQgZGF0YSBzdHJlYW1zLgorIiIiCisKK19fYWxsX18gPSBbCisgICAgIkNIRUNLX05PTkUiLCAiQ0hFQ0tfQ1JDMzIiLCAiQ0hFQ0tfQ1JDNjQiLCAiQ0hFQ0tfU0hBMjU2IiwKKyAgICAiQ0hFQ0tfSURfTUFYIiwgIkNIRUNLX1VOS05PV04iLAorICAgICJGSUxURVJfTFpNQTEiLCAiRklMVEVSX0xaTUEyIiwgIkZJTFRFUl9ERUxUQSIsICJGSUxURVJfWDg2IiwgIkZJTFRFUl9JQTY0IiwKKyAgICAiRklMVEVSX0FSTSIsICJGSUxURVJfQVJNVEhVTUIiLCAiRklMVEVSX1BPV0VSUEMiLCAiRklMVEVSX1NQQVJDIiwKKyAgICAiRk9STUFUX0FVVE8iLCAiRk9STUFUX1haIiwgIkZPUk1BVF9BTE9ORSIsICJGT1JNQVRfUkFXIiwKKyAgICAiTUZfSEMzIiwgIk1GX0hDNCIsICJNRl9CVDIiLCAiTUZfQlQzIiwgIk1GX0JUNCIsCisgICAgIk1PREVfRkFTVCIsICJNT0RFX05PUk1BTCIsICJQUkVTRVRfREVGQVVMVCIsICJQUkVTRVRfRVhUUkVNRSIsCisKKyAgICAiTFpNQUNvbXByZXNzb3IiLCAiTFpNQURlY29tcHJlc3NvciIsICJMWk1BRmlsZSIsICJMWk1BRXJyb3IiLAorICAgICJjb21wcmVzcyIsICJkZWNvbXByZXNzIiwgImNoZWNrX2lzX3N1cHBvcnRlZCIsCitdCisKK2ltcG9ydCBpbworZnJvbSBfbHptYSBpbXBvcnQgKgorCisKK19NT0RFX0NMT1NFRCAgID0gMAorX01PREVfUkVBRCAgICAgPSAxCitfTU9ERV9SRUFEX0VPRiA9IDIKK19NT0RFX1dSSVRFICAgID0gMworCitfQlVGRkVSX1NJWkUgPSA4MTkyCisKKworY2xhc3MgTFpNQUZpbGUoaW8uQnVmZmVyZWRJT0Jhc2UpOgorCisgICAgIiIiQSBmaWxlIG9iamVjdCBwcm92aWRpbmcgdHJhbnNwYXJlbnQgTFpNQSAoZGUpY29tcHJlc3Npb24uCisKKyAgICBBbiBMWk1BRmlsZSBjYW4gYWN0IGFzIGEgd3JhcHBlciBmb3IgYW4gZXhpc3RpbmcgZmlsZSBvYmplY3QsIG9yCisgICAgcmVmZXIgZGlyZWN0bHkgdG8gYSBuYW1lZCBmaWxlIG9uIGRpc2suCisKKyAgICBOb3RlIHRoYXQgTFpNQUZpbGUgcHJvdmlkZXMgYSAqYmluYXJ5KiBmaWxlIGludGVyZmFjZSAtIGRhdGEgcmVhZAorICAgIGlzIHJldHVybmVkIGFzIGJ5dGVzLCBhbmQgZGF0YSB0byBiZSB3cml0dGVuIG11c3QgYmUgZ2l2ZW4gYXMgYnl0ZXMuCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZW5hbWU9Tm9uZSwgbW9kZT0iciIsICosCisgICAgICAgICAgICAgICAgIGZpbGVvYmo9Tm9uZSwgZm9ybWF0PU5vbmUsIGNoZWNrPS0xLAorICAgICAgICAgICAgICAgICBwcmVzZXQ9Tm9uZSwgZmlsdGVycz1Ob25lKToKKyAgICAgICAgIiIiT3BlbiBhbiBMWk1BLWNvbXByZXNzZWQgZmlsZS4KKworICAgICAgICBJZiBmaWxlbmFtZSBpcyBnaXZlbiwgb3BlbiB0aGUgbmFtZWQgZmlsZS4gT3RoZXJ3aXNlLCBvcGVyYXRlIG9uCisgICAgICAgIHRoZSBmaWxlIG9iamVjdCBnaXZlbiBieSBmaWxlb2JqLiBFeGFjdGx5IG9uZSBvZiB0aGVzZSB0d28KKyAgICAgICAgcGFyYW1ldGVycyBzaG91bGQgYmUgcHJvdmlkZWQuCisKKyAgICAgICAgbW9kZSBjYW4gYmUgInIiIGZvciByZWFkaW5nIChkZWZhdWx0KSwgInciIGZvciAob3Zlcil3cml0aW5nLCBvcgorICAgICAgICAiYSIgZm9yIGFwcGVuZGluZy4KKworICAgICAgICBmb3JtYXQgc3BlY2lmaWVzIHRoZSBjb250YWluZXIgZm9ybWF0IHRvIHVzZSBmb3IgdGhlIGZpbGUuCisgICAgICAgIElmIG1vZGUgaXMgInIiLCB0aGlzIGRlZmF1bHRzIHRvIEZPUk1BVF9BVVRPLiBPdGhlcndpc2UsIHRoZQorICAgICAgICBkZWZhdWx0IGlzIEZPUk1BVF9YWi4KKworICAgICAgICBjaGVjayBzcGVjaWZpZXMgdGhlIGludGVncml0eSBjaGVjayB0byB1c2UuIFRoaXMgYXJndW1lbnQgY2FuCisgICAgICAgIG9ubHkgYmUgdXNlZCB3aGVuIG9wZW5pbmcgYSBmaWxlIGZvciB3cml0aW5nLiBGb3IgRk9STUFUX1haLAorICAgICAgICB0aGUgZGVmYXVsdCBpcyBDSEVDS19DUkM2NC4gRk9STUFUX0FMT05FIGFuZCBGT1JNQVRfUkFXIGRvIG5vdAorICAgICAgICBzdXBwb3J0IGludGVncml0eSBjaGVja3MgLSBmb3IgdGhlc2UgZm9ybWF0cywgY2hlY2sgbXVzdCBiZQorICAgICAgICBvbWl0dGVkLCBvciBiZSBDSEVDS19OT05FLgorCisgICAgICAgIFdoZW4gb3BlbmluZyBhIGZpbGUgZm9yIHJlYWRpbmcsIHRoZSAqcHJlc2V0KiBhcmd1bWVudCBpcyBub3QKKyAgICAgICAgbWVhbmluZ2Z1bCwgYW5kIHNob3VsZCBiZSBvbWl0dGVkLiBUaGUgKmZpbHRlcnMqIGFyZ3VtZW50IHNob3VsZAorICAgICAgICBhbHNvIGJlIG9taXR0ZWQsIGV4Y2VwdCB3aGVuIGZvcm1hdCBpcyBGT1JNQVRfUkFXIChpbiB3aGljaCBjYXNlCisgICAgICAgIGl0IGlzIHJlcXVpcmVkKS4KKworICAgICAgICBXaGVuIG9wZW5pbmcgYSBmaWxlIGZvciB3cml0aW5nLCB0aGUgc2V0dGluZ3MgdXNlZCBieSB0aGUKKyAgICAgICAgY29tcHJlc3NvciBjYW4gYmUgc3BlY2lmaWVkIGVpdGhlciBhcyBhIHByZXNldCBjb21wcmVzc2lvbgorICAgICAgICBsZXZlbCAod2l0aCB0aGUgKnByZXNldCogYXJndW1lbnQpLCBvciBpbiBkZXRhaWwgYXMgYSBjdXN0b20KKyAgICAgICAgZmlsdGVyIGNoYWluICh3aXRoIHRoZSAqZmlsdGVycyogYXJndW1lbnQpLiBGb3IgRk9STUFUX1haIGFuZAorICAgICAgICBGT1JNQVRfQUxPTkUsIHRoZSBkZWZhdWx0IGlzIHRvIHVzZSB0aGUgUFJFU0VUX0RFRkFVTFQgcHJlc2V0CisgICAgICAgIGxldmVsLiBGb3IgRk9STUFUX1JBVywgdGhlIGNhbGxlciBtdXN0IGFsd2F5cyBzcGVjaWZ5IGEgZmlsdGVyCisgICAgICAgIGNoYWluOyB0aGUgcmF3IGNvbXByZXNzb3IgZG9lcyBub3Qgc3VwcG9ydCBwcmVzZXQgY29tcHJlc3Npb24KKyAgICAgICAgbGV2ZWxzLgorCisgICAgICAgIHByZXNldCAoaWYgcHJvdmlkZWQpIHNob3VsZCBiZSBhbiBpbnRlZ2VyIGluIHRoZSByYW5nZSAwLTksCisgICAgICAgIG9wdGlvbmFsbHkgT1ItZWQgd2l0aCB0aGUgY29uc3RhbnQgUFJFU0VUX0VYVFJFTUUuCisKKyAgICAgICAgZmlsdGVycyAoaWYgcHJvdmlkZWQpIHNob3VsZCBiZSBhIHNlcXVlbmNlIG9mIGRpY3RzLiBFYWNoIGRpY3QKKyAgICAgICAgc2hvdWxkIGhhdmUgYW4gZW50cnkgZm9yICJpZCIgaW5kaWNhdGluZyBJRCBvZiB0aGUgZmlsdGVyLCBwbHVzCisgICAgICAgIGFkZGl0aW9uYWwgZW50cmllcyBmb3Igb3B0aW9ucyB0byB0aGUgZmlsdGVyLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fZnAgPSBOb25lCisgICAgICAgIHNlbGYuX2Nsb3NlZnAgPSBGYWxzZQorICAgICAgICBzZWxmLl9tb2RlID0gX01PREVfQ0xPU0VECisgICAgICAgIHNlbGYuX3BvcyA9IDAKKyAgICAgICAgc2VsZi5fc2l6ZSA9IC0xCisKKyAgICAgICAgaWYgbW9kZSA9PSAiciI6CisgICAgICAgICAgICBpZiBjaGVjayAhPSAtMToKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJDYW5ub3Qgc3BlY2lmeSBhbiBpbnRlZ3JpdHkgY2hlY2sgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIndoZW4gb3BlbmluZyBhIGZpbGUgZm9yIHJlYWRpbmciKQorICAgICAgICAgICAgaWYgcHJlc2V0IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkNhbm5vdCBzcGVjaWZ5IGEgcHJlc2V0IGNvbXByZXNzaW9uICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsZXZlbCB3aGVuIG9wZW5pbmcgYSBmaWxlIGZvciByZWFkaW5nIikKKyAgICAgICAgICAgIGlmIGZvcm1hdCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGZvcm1hdCA9IEZPUk1BVF9BVVRPCisgICAgICAgICAgICBtb2RlX2NvZGUgPSBfTU9ERV9SRUFECisgICAgICAgICAgICAjIFNhdmUgdGhlIGFyZ3MgdG8gcGFzcyB0byB0aGUgTFpNQURlY29tcHJlc3NvciBpbml0aWFsaXplci4KKyAgICAgICAgICAgICMgSWYgdGhlIGZpbGUgY29udGFpbnMgbXVsdGlwbGUgY29tcHJlc3NlZCBzdHJlYW1zLCBlYWNoCisgICAgICAgICAgICAjIHN0cmVhbSB3aWxsIG5lZWQgYSBzZXBhcmF0ZSBkZWNvbXByZXNzb3Igb2JqZWN0LgorICAgICAgICAgICAgc2VsZi5faW5pdF9hcmdzID0geyJmb3JtYXQiOmZvcm1hdCwgImZpbHRlcnMiOmZpbHRlcnN9CisgICAgICAgICAgICBzZWxmLl9kZWNvbXByZXNzb3IgPSBMWk1BRGVjb21wcmVzc29yKCoqc2VsZi5faW5pdF9hcmdzKQorICAgICAgICAgICAgc2VsZi5fYnVmZmVyID0gTm9uZQorICAgICAgICBlbGlmIG1vZGUgaW4gKCJ3IiwgImEiKToKKyAgICAgICAgICAgIGlmIGZvcm1hdCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGZvcm1hdCA9IEZPUk1BVF9YWgorICAgICAgICAgICAgbW9kZV9jb2RlID0gX01PREVfV1JJVEUKKyAgICAgICAgICAgIHNlbGYuX2NvbXByZXNzb3IgPSBMWk1BQ29tcHJlc3Nvcihmb3JtYXQ9Zm9ybWF0LCBjaGVjaz1jaGVjaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVzZXQ9cHJlc2V0LCBmaWx0ZXJzPWZpbHRlcnMpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJJbnZhbGlkIG1vZGU6IHshcn0iLmZvcm1hdChtb2RlKSkKKworICAgICAgICBpZiBmaWxlbmFtZSBpcyBub3QgTm9uZSBhbmQgZmlsZW9iaiBpcyBOb25lOgorICAgICAgICAgICAgbW9kZSArPSAiYiIKKyAgICAgICAgICAgIHNlbGYuX2ZwID0gb3BlbihmaWxlbmFtZSwgbW9kZSkKKyAgICAgICAgICAgIHNlbGYuX2Nsb3NlZnAgPSBUcnVlCisgICAgICAgICAgICBzZWxmLl9tb2RlID0gbW9kZV9jb2RlCisgICAgICAgIGVsaWYgZmlsZW9iaiBpcyBub3QgTm9uZSBhbmQgZmlsZW5hbWUgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2ZwID0gZmlsZW9iagorICAgICAgICAgICAgc2VsZi5fbW9kZSA9IG1vZGVfY29kZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiTXVzdCBnaXZlIGV4YWN0bHkgb25lIG9mIGZpbGVuYW1lIGFuZCBmaWxlb2JqIikKKworICAgIGRlZiBjbG9zZShzZWxmKToKKyAgICAgICAgIiIiRmx1c2ggYW5kIGNsb3NlIHRoZSBmaWxlLgorCisgICAgICAgIE1heSBiZSBjYWxsZWQgbW9yZSB0aGFuIG9uY2Ugd2l0aG91dCBlcnJvci4gT25jZSB0aGUgZmlsZSBpcworICAgICAgICBjbG9zZWQsIGFueSBvdGhlciBvcGVyYXRpb24gb24gaXQgd2lsbCByYWlzZSBhIFZhbHVlRXJyb3IuCisgICAgICAgICIiIgorICAgICAgICBpZiBzZWxmLl9tb2RlID09IF9NT0RFX0NMT1NFRDoKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICB0cnk6CisgICAgICAgICAgICBpZiBzZWxmLl9tb2RlIGluIChfTU9ERV9SRUFELCBfTU9ERV9SRUFEX0VPRik6CisgICAgICAgICAgICAgICAgc2VsZi5fZGVjb21wcmVzc29yID0gTm9uZQorICAgICAgICAgICAgICAgIHNlbGYuX2J1ZmZlciA9IE5vbmUKKyAgICAgICAgICAgIGVsaWYgc2VsZi5fbW9kZSA9PSBfTU9ERV9XUklURToKKyAgICAgICAgICAgICAgICBzZWxmLl9mcC53cml0ZShzZWxmLl9jb21wcmVzc29yLmZsdXNoKCkpCisgICAgICAgICAgICAgICAgc2VsZi5fY29tcHJlc3NvciA9IE5vbmUKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBpZiBzZWxmLl9jbG9zZWZwOgorICAgICAgICAgICAgICAgICAgICBzZWxmLl9mcC5jbG9zZSgpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHNlbGYuX2ZwID0gTm9uZQorICAgICAgICAgICAgICAgIHNlbGYuX2Nsb3NlZnAgPSBGYWxzZQorICAgICAgICAgICAgICAgIHNlbGYuX21vZGUgPSBfTU9ERV9DTE9TRUQKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBjbG9zZWQoc2VsZik6CisgICAgICAgICIiIlRydWUgaWYgdGhpcyBmaWxlIGlzIGNsb3NlZC4iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX21vZGUgPT0gX01PREVfQ0xPU0VECisKKyAgICBkZWYgZmlsZW5vKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGZpbGUgZGVzY3JpcHRvciBmb3IgdGhlIHVuZGVybHlpbmcgZmlsZS4iIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfbm90X2Nsb3NlZCgpCisgICAgICAgIHJldHVybiBzZWxmLl9mcC5maWxlbm8oKQorCisgICAgZGVmIHNlZWthYmxlKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gd2hldGhlciB0aGUgZmlsZSBzdXBwb3J0cyBzZWVraW5nLiIiIgorICAgICAgICByZXR1cm4gc2VsZi5yZWFkYWJsZSgpCisKKyAgICBkZWYgcmVhZGFibGUoc2VsZik6CisgICAgICAgICIiIlJldHVybiB3aGV0aGVyIHRoZSBmaWxlIHdhcyBvcGVuZWQgZm9yIHJlYWRpbmcuIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX25vdF9jbG9zZWQoKQorICAgICAgICByZXR1cm4gc2VsZi5fbW9kZSBpbiAoX01PREVfUkVBRCwgX01PREVfUkVBRF9FT0YpCisKKyAgICBkZWYgd3JpdGFibGUoc2VsZik6CisgICAgICAgICIiIlJldHVybiB3aGV0aGVyIHRoZSBmaWxlIHdhcyBvcGVuZWQgZm9yIHdyaXRpbmcuIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX25vdF9jbG9zZWQoKQorICAgICAgICByZXR1cm4gc2VsZi5fbW9kZSA9PSBfTU9ERV9XUklURQorCisgICAgIyBNb2RlLWNoZWNraW5nIGhlbHBlciBmdW5jdGlvbnMuCisKKyAgICBkZWYgX2NoZWNrX25vdF9jbG9zZWQoc2VsZik6CisgICAgICAgIGlmIHNlbGYuY2xvc2VkOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiSS9PIG9wZXJhdGlvbiBvbiBjbG9zZWQgZmlsZSIpCisKKyAgICBkZWYgX2NoZWNrX2Nhbl9yZWFkKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5yZWFkYWJsZSgpOgorICAgICAgICAgICAgcmFpc2UgaW8uVW5zdXBwb3J0ZWRPcGVyYXRpb24oIkZpbGUgbm90IG9wZW4gZm9yIHJlYWRpbmciKQorCisgICAgZGVmIF9jaGVja19jYW5fd3JpdGUoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLndyaXRhYmxlKCk6CisgICAgICAgICAgICByYWlzZSBpby5VbnN1cHBvcnRlZE9wZXJhdGlvbigiRmlsZSBub3Qgb3BlbiBmb3Igd3JpdGluZyIpCisKKyAgICBkZWYgX2NoZWNrX2Nhbl9zZWVrKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5zZWVrYWJsZSgpOgorICAgICAgICAgICAgcmFpc2UgaW8uVW5zdXBwb3J0ZWRPcGVyYXRpb24oIlNlZWtpbmcgaXMgb25seSBzdXBwb3J0ZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9uIGZpbGVzIG9wZW4gZm9yIHJlYWRpbmciKQorCisgICAgIyBGaWxsIHRoZSByZWFkYWhlYWQgYnVmZmVyIGlmIGl0IGlzIGVtcHR5LiBSZXR1cm5zIEZhbHNlIG9uIEVPRi4KKyAgICBkZWYgX2ZpbGxfYnVmZmVyKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl9idWZmZXI6CisgICAgICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgICAgIGlmIHNlbGYuX2RlY29tcHJlc3Nvci51bnVzZWRfZGF0YToKKyAgICAgICAgICAgIHJhd2Jsb2NrID0gc2VsZi5fZGVjb21wcmVzc29yLnVudXNlZF9kYXRhCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYXdibG9jayA9IHNlbGYuX2ZwLnJlYWQoX0JVRkZFUl9TSVpFKQorCisgICAgICAgIGlmIG5vdCByYXdibG9jazoKKyAgICAgICAgICAgIGlmIHNlbGYuX2RlY29tcHJlc3Nvci5lb2Y6CisgICAgICAgICAgICAgICAgc2VsZi5fbW9kZSA9IF9NT0RFX1JFQURfRU9GCisgICAgICAgICAgICAgICAgc2VsZi5fc2l6ZSA9IHNlbGYuX3BvcworICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBFT0ZFcnJvcigiQ29tcHJlc3NlZCBmaWxlIGVuZGVkIGJlZm9yZSB0aGUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJlbmQtb2Ytc3RyZWFtIG1hcmtlciB3YXMgcmVhY2hlZCIpCisKKyAgICAgICAgIyBDb250aW51ZSB0byBuZXh0IHN0cmVhbS4KKyAgICAgICAgaWYgc2VsZi5fZGVjb21wcmVzc29yLmVvZjoKKyAgICAgICAgICAgIHNlbGYuX2RlY29tcHJlc3NvciA9IExaTUFEZWNvbXByZXNzb3IoKipzZWxmLl9pbml0X2FyZ3MpCisKKyAgICAgICAgc2VsZi5fYnVmZmVyID0gc2VsZi5fZGVjb21wcmVzc29yLmRlY29tcHJlc3MocmF3YmxvY2spCisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICAjIFJlYWQgZGF0YSB1bnRpbCBFT0YuCisgICAgIyBJZiByZXR1cm5fZGF0YSBpcyBmYWxzZSwgY29uc3VtZSB0aGUgZGF0YSB3aXRob3V0IHJldHVybmluZyBpdC4KKyAgICBkZWYgX3JlYWRfYWxsKHNlbGYsIHJldHVybl9kYXRhPVRydWUpOgorICAgICAgICBibG9ja3MgPSBbXQorICAgICAgICB3aGlsZSBzZWxmLl9maWxsX2J1ZmZlcigpOgorICAgICAgICAgICAgaWYgcmV0dXJuX2RhdGE6CisgICAgICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChzZWxmLl9idWZmZXIpCisgICAgICAgICAgICBzZWxmLl9wb3MgKz0gbGVuKHNlbGYuX2J1ZmZlcikKKyAgICAgICAgICAgIHNlbGYuX2J1ZmZlciA9IE5vbmUKKyAgICAgICAgaWYgcmV0dXJuX2RhdGE6CisgICAgICAgICAgICByZXR1cm4gYiIiLmpvaW4oYmxvY2tzKQorCisgICAgIyBSZWFkIGEgYmxvY2sgb2YgdXAgdG8gbiBieXRlcy4KKyAgICAjIElmIHJldHVybl9kYXRhIGlzIGZhbHNlLCBjb25zdW1lIHRoZSBkYXRhIHdpdGhvdXQgcmV0dXJuaW5nIGl0LgorICAgIGRlZiBfcmVhZF9ibG9jayhzZWxmLCBuLCByZXR1cm5fZGF0YT1UcnVlKToKKyAgICAgICAgYmxvY2tzID0gW10KKyAgICAgICAgd2hpbGUgbiA+IDAgYW5kIHNlbGYuX2ZpbGxfYnVmZmVyKCk6CisgICAgICAgICAgICBpZiBuIDwgbGVuKHNlbGYuX2J1ZmZlcik6CisgICAgICAgICAgICAgICAgZGF0YSA9IHNlbGYuX2J1ZmZlcls6bl0KKyAgICAgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBzZWxmLl9idWZmZXJbbjpdCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGRhdGEgPSBzZWxmLl9idWZmZXIKKyAgICAgICAgICAgICAgICBzZWxmLl9idWZmZXIgPSBOb25lCisgICAgICAgICAgICBpZiByZXR1cm5fZGF0YToKKyAgICAgICAgICAgICAgICBibG9ja3MuYXBwZW5kKGRhdGEpCisgICAgICAgICAgICBzZWxmLl9wb3MgKz0gbGVuKGRhdGEpCisgICAgICAgICAgICBuIC09IGxlbihkYXRhKQorICAgICAgICBpZiByZXR1cm5fZGF0YToKKyAgICAgICAgICAgIHJldHVybiBiIiIuam9pbihibG9ja3MpCisKKyAgICBkZWYgcGVlayhzZWxmLCBzaXplPS0xKToKKyAgICAgICAgIiIiUmV0dXJuIGJ1ZmZlcmVkIGRhdGEgd2l0aG91dCBhZHZhbmNpbmcgdGhlIGZpbGUgcG9zaXRpb24uCisKKyAgICAgICAgQWx3YXlzIHJldHVybnMgYXQgbGVhc3Qgb25lIGJ5dGUgb2YgZGF0YSwgdW5sZXNzIGF0IEVPRi4KKyAgICAgICAgVGhlIGV4YWN0IG51bWJlciBvZiBieXRlcyByZXR1cm5lZCBpcyB1bnNwZWNpZmllZC4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2Nhbl9yZWFkKCkKKyAgICAgICAgaWYgc2VsZi5fbW9kZSA9PSBfTU9ERV9SRUFEX0VPRiBvciBub3Qgc2VsZi5fZmlsbF9idWZmZXIoKToKKyAgICAgICAgICAgIHJldHVybiBiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX2J1ZmZlcgorCisgICAgZGVmIHJlYWQoc2VsZiwgc2l6ZT0tMSk6CisgICAgICAgICIiIlJlYWQgdXAgdG8gc2l6ZSB1bmNvbXByZXNzZWQgYnl0ZXMgZnJvbSB0aGUgZmlsZS4KKworICAgICAgICBJZiBzaXplIGlzIG5lZ2F0aXZlIG9yIG9taXR0ZWQsIHJlYWQgdW50aWwgRU9GIGlzIHJlYWNoZWQuCisgICAgICAgIFJldHVybnMgYiIiIGlmIHRoZSBmaWxlIGlzIGFscmVhZHkgYXQgRU9GLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY2FuX3JlYWQoKQorICAgICAgICBpZiBzZWxmLl9tb2RlID09IF9NT0RFX1JFQURfRU9GIG9yIHNpemUgPT0gMDoKKyAgICAgICAgICAgIHJldHVybiBiIiIKKyAgICAgICAgZWxpZiBzaXplIDwgMDoKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9yZWFkX2FsbCgpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fcmVhZF9ibG9jayhzaXplKQorCisgICAgZGVmIHJlYWQxKHNlbGYsIHNpemU9LTEpOgorICAgICAgICAiIiJSZWFkIHVwIHRvIHNpemUgdW5jb21wcmVzc2VkIGJ5dGVzIHdpdGggYXQgbW9zdCBvbmUgcmVhZAorICAgICAgICBmcm9tIHRoZSB1bmRlcmx5aW5nIHN0cmVhbS4KKworICAgICAgICBSZXR1cm5zIGIiIiBpZiB0aGUgZmlsZSBpcyBhdCBFT0YuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLl9jaGVja19jYW5fcmVhZCgpCisgICAgICAgIGlmIChzaXplID09IDAgb3Igc2VsZi5fbW9kZSA9PSBfTU9ERV9SRUFEX0VPRiBvcgorICAgICAgICAgICAgbm90IHNlbGYuX2ZpbGxfYnVmZmVyKCkpOgorICAgICAgICAgICAgcmV0dXJuIGIiIgorICAgICAgICBpZiAwIDwgc2l6ZSA8IGxlbihzZWxmLl9idWZmZXIpOgorICAgICAgICAgICAgZGF0YSA9IHNlbGYuX2J1ZmZlcls6c2l6ZV0KKyAgICAgICAgICAgIHNlbGYuX2J1ZmZlciA9IHNlbGYuX2J1ZmZlcltzaXplOl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGRhdGEgPSBzZWxmLl9idWZmZXIKKyAgICAgICAgICAgIHNlbGYuX2J1ZmZlciA9IE5vbmUKKyAgICAgICAgc2VsZi5fcG9zICs9IGxlbihkYXRhKQorICAgICAgICByZXR1cm4gZGF0YQorCisgICAgZGVmIHdyaXRlKHNlbGYsIGRhdGEpOgorICAgICAgICAiIiJXcml0ZSBhIGJ5dGVzIG9iamVjdCB0byB0aGUgZmlsZS4KKworICAgICAgICBSZXR1cm5zIHRoZSBudW1iZXIgb2YgdW5jb21wcmVzc2VkIGJ5dGVzIHdyaXR0ZW4sIHdoaWNoIGlzCisgICAgICAgIGFsd2F5cyBsZW4oZGF0YSkuIE5vdGUgdGhhdCBkdWUgdG8gYnVmZmVyaW5nLCB0aGUgZmlsZSBvbiBkaXNrCisgICAgICAgIG1heSBub3QgcmVmbGVjdCB0aGUgZGF0YSB3cml0dGVuIHVudGlsIGNsb3NlKCkgaXMgY2FsbGVkLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY2FuX3dyaXRlKCkKKyAgICAgICAgY29tcHJlc3NlZCA9IHNlbGYuX2NvbXByZXNzb3IuY29tcHJlc3MoZGF0YSkKKyAgICAgICAgc2VsZi5fZnAud3JpdGUoY29tcHJlc3NlZCkKKyAgICAgICAgc2VsZi5fcG9zICs9IGxlbihkYXRhKQorICAgICAgICByZXR1cm4gbGVuKGRhdGEpCisKKyAgICAjIFJld2luZCB0aGUgZmlsZSB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBkYXRhIHN0cmVhbS4KKyAgICBkZWYgX3Jld2luZChzZWxmKToKKyAgICAgICAgc2VsZi5fZnAuc2VlaygwLCAwKQorICAgICAgICBzZWxmLl9tb2RlID0gX01PREVfUkVBRAorICAgICAgICBzZWxmLl9wb3MgPSAwCisgICAgICAgIHNlbGYuX2RlY29tcHJlc3NvciA9IExaTUFEZWNvbXByZXNzb3IoKipzZWxmLl9pbml0X2FyZ3MpCisgICAgICAgIHNlbGYuX2J1ZmZlciA9IE5vbmUKKworICAgIGRlZiBzZWVrKHNlbGYsIG9mZnNldCwgd2hlbmNlPTApOgorICAgICAgICAiIiJDaGFuZ2UgdGhlIGZpbGUgcG9zaXRpb24uCisKKyAgICAgICAgVGhlIG5ldyBwb3NpdGlvbiBpcyBzcGVjaWZpZWQgYnkgb2Zmc2V0LCByZWxhdGl2ZSB0byB0aGUKKyAgICAgICAgcG9zaXRpb24gaW5kaWNhdGVkIGJ5IHdoZW5jZS4gUG9zc2libGUgdmFsdWVzIGZvciB3aGVuY2UgYXJlOgorCisgICAgICAgICAgICAwOiBzdGFydCBvZiBzdHJlYW0gKGRlZmF1bHQpOiBvZmZzZXQgbXVzdCBub3QgYmUgbmVnYXRpdmUKKyAgICAgICAgICAgIDE6IGN1cnJlbnQgc3RyZWFtIHBvc2l0aW9uCisgICAgICAgICAgICAyOiBlbmQgb2Ygc3RyZWFtOyBvZmZzZXQgbXVzdCBub3QgYmUgcG9zaXRpdmUKKworICAgICAgICBSZXR1cm5zIHRoZSBuZXcgZmlsZSBwb3NpdGlvbi4KKworICAgICAgICBOb3RlIHRoYXQgc2Vla2luZyBpcyBlbXVsYXRlZCwgc3AgZGVwZW5kaW5nIG9uIHRoZSBwYXJhbWV0ZXJzLAorICAgICAgICB0aGlzIG9wZXJhdGlvbiBtYXkgYmUgZXh0cmVtZWx5IHNsb3cuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLl9jaGVja19jYW5fc2VlaygpCisKKyAgICAgICAgIyBSZWNhbGN1bGF0ZSBvZmZzZXQgYXMgYW4gYWJzb2x1dGUgZmlsZSBwb3NpdGlvbi4KKyAgICAgICAgaWYgd2hlbmNlID09IDA6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsaWYgd2hlbmNlID09IDE6CisgICAgICAgICAgICBvZmZzZXQgPSBzZWxmLl9wb3MgKyBvZmZzZXQKKyAgICAgICAgZWxpZiB3aGVuY2UgPT0gMjoKKyAgICAgICAgICAgICMgU2Vla2luZyByZWxhdGl2ZSB0byBFT0YgLSB3ZSBuZWVkIHRvIGtub3cgdGhlIGZpbGUncyBzaXplLgorICAgICAgICAgICAgaWYgc2VsZi5fc2l6ZSA8IDA6CisgICAgICAgICAgICAgICAgc2VsZi5fcmVhZF9hbGwocmV0dXJuX2RhdGE9RmFsc2UpCisgICAgICAgICAgICBvZmZzZXQgPSBzZWxmLl9zaXplICsgb2Zmc2V0CisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJJbnZhbGlkIHZhbHVlIGZvciB3aGVuY2U6IHt9Ii5mb3JtYXQod2hlbmNlKSkKKworICAgICAgICAjIE1ha2UgaXQgc28gdGhhdCBvZmZzZXQgaXMgdGhlIG51bWJlciBvZiBieXRlcyB0byBza2lwIGZvcndhcmQuCisgICAgICAgIGlmIG9mZnNldCA8IHNlbGYuX3BvczoKKyAgICAgICAgICAgIHNlbGYuX3Jld2luZCgpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBvZmZzZXQgLT0gc2VsZi5fcG9zCisKKyAgICAgICAgIyBSZWFkIGFuZCBkaXNjYXJkIGRhdGEgdW50aWwgd2UgcmVhY2ggdGhlIGRlc2lyZWQgcG9zaXRpb24uCisgICAgICAgIGlmIHNlbGYuX21vZGUgIT0gX01PREVfUkVBRF9FT0Y6CisgICAgICAgICAgICBzZWxmLl9yZWFkX2Jsb2NrKG9mZnNldCwgcmV0dXJuX2RhdGE9RmFsc2UpCisKKyAgICAgICAgcmV0dXJuIHNlbGYuX3BvcworCisgICAgZGVmIHRlbGwoc2VsZik6CisgICAgICAgICIiIlJldHVybiB0aGUgY3VycmVudCBmaWxlIHBvc2l0aW9uLiIiIgorICAgICAgICBzZWxmLl9jaGVja19ub3RfY2xvc2VkKCkKKyAgICAgICAgcmV0dXJuIHNlbGYuX3BvcworCisKK2RlZiBjb21wcmVzcyhkYXRhLCBmb3JtYXQ9Rk9STUFUX1haLCBjaGVjaz0tMSwgcHJlc2V0PU5vbmUsIGZpbHRlcnM9Tm9uZSk6CisgICAgIiIiQ29tcHJlc3MgYSBibG9jayBvZiBkYXRhLgorCisgICAgUmVmZXIgdG8gTFpNQUNvbXByZXNzb3IncyBkb2NzdHJpbmcgZm9yIGEgZGVzY3JpcHRpb24gb2YgdGhlCisgICAgb3B0aW9uYWwgYXJndW1lbnRzICpmb3JtYXQqLCAqY2hlY2sqLCAqcHJlc2V0KiBhbmQgKmZpbHRlcnMqLgorCisgICAgRm9yIGluY3JlbWVudGFsIGNvbXByZXNzaW9uLCB1c2UgYW4gTFpNQUNvbXByZXNzb3Igb2JqZWN0IGluc3RlYWQuCisgICAgIiIiCisgICAgY29tcCA9IExaTUFDb21wcmVzc29yKGZvcm1hdCwgY2hlY2ssIHByZXNldCwgZmlsdGVycykKKyAgICByZXR1cm4gY29tcC5jb21wcmVzcyhkYXRhKSArIGNvbXAuZmx1c2goKQorCisKK2RlZiBkZWNvbXByZXNzKGRhdGEsIGZvcm1hdD1GT1JNQVRfQVVUTywgbWVtbGltaXQ9Tm9uZSwgZmlsdGVycz1Ob25lKToKKyAgICAiIiJEZWNvbXByZXNzIGEgYmxvY2sgb2YgZGF0YS4KKworICAgIFJlZmVyIHRvIExaTUFEZWNvbXByZXNzb3IncyBkb2NzdHJpbmcgZm9yIGEgZGVzY3JpcHRpb24gb2YgdGhlCisgICAgb3B0aW9uYWwgYXJndW1lbnRzICpmb3JtYXQqLCAqY2hlY2sqIGFuZCAqZmlsdGVycyouCisKKyAgICBGb3IgaW5jcmVtZW50YWwgZGVjb21wcmVzc2lvbiwgdXNlIGEgTFpNQURlY29tcHJlc3NvciBvYmplY3QgaW5zdGVhZC4KKyAgICAiIiIKKyAgICByZXN1bHRzID0gW10KKyAgICB3aGlsZSBUcnVlOgorICAgICAgICBkZWNvbXAgPSBMWk1BRGVjb21wcmVzc29yKGZvcm1hdCwgbWVtbGltaXQsIGZpbHRlcnMpCisgICAgICAgIHJlc3VsdHMuYXBwZW5kKGRlY29tcC5kZWNvbXByZXNzKGRhdGEpKQorICAgICAgICBpZiBub3QgZGVjb21wLmVvZjoKKyAgICAgICAgICAgIHJhaXNlIExaTUFFcnJvcigiQ29tcHJlc3NlZCBkYXRhIGVuZGVkIGJlZm9yZSB0aGUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJlbmQtb2Ytc3RyZWFtIG1hcmtlciB3YXMgcmVhY2hlZCIpCisgICAgICAgIGlmIG5vdCBkZWNvbXAudW51c2VkX2RhdGE6CisgICAgICAgICAgICByZXR1cm4gYiIiLmpvaW4ocmVzdWx0cykKKyAgICAgICAgIyBUaGVyZSBpcyB1bnVzZWQgZGF0YSBsZWZ0IG92ZXIuIFByb2NlZWQgdG8gbmV4dCBzdHJlYW0uCisgICAgICAgIGRhdGEgPSBkZWNvbXAudW51c2VkX2RhdGEKZGlmZiAtLWdpdCBhL0xpYi9tYWlsYm94LnB5IGIvTGliL21haWxib3gucHkKaW5kZXggYTY3NzcyOS4uMzI1YjljOSAxMDA2NDQKLS0tIGEvTGliL21haWxib3gucHkKKysrIGIvTGliL21haWxib3gucHkKQEAgLTExMDYsOCArMTEwNiw3IEBACiAgICAgZGVmIGdldF9zZXF1ZW5jZXMoc2VsZik6CiAgICAgICAgICIiIlJldHVybiBhIG5hbWUtdG8ta2V5LWxpc3QgZGljdGlvbmFyeSB0byBkZWZpbmUgZWFjaCBzZXF1ZW5jZS4iIiIKICAgICAgICAgcmVzdWx0cyA9IHt9Ci0gICAgICAgIGYgPSBvcGVuKG9zLnBhdGguam9pbihzZWxmLl9wYXRoLCAnLm1oX3NlcXVlbmNlcycpLCAncicpCi0gICAgICAgIHRyeToKKyAgICAgICAgd2l0aCBvcGVuKG9zLnBhdGguam9pbihzZWxmLl9wYXRoLCAnLm1oX3NlcXVlbmNlcycpLCAncicsIGVuY29kaW5nPSdBU0NJSScpIGFzIGY6CiAgICAgICAgICAgICBhbGxfa2V5cyA9IHNldChzZWxmLmtleXMoKSkKICAgICAgICAgICAgIGZvciBsaW5lIGluIGY6CiAgICAgICAgICAgICAgICAgdHJ5OgpAQCAtMTEyNiwxMyArMTEyNSwxMSBAQAogICAgICAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBGb3JtYXRFcnJvcignSW52YWxpZCBzZXF1ZW5jZSBzcGVjaWZpY2F0aW9uOiAlcycgJQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLnJzdHJpcCgpKQotICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgZi5jbG9zZSgpCiAgICAgICAgIHJldHVybiByZXN1bHRzCiAKICAgICBkZWYgc2V0X3NlcXVlbmNlcyhzZWxmLCBzZXF1ZW5jZXMpOgogICAgICAgICAiIiJTZXQgc2VxdWVuY2VzIHVzaW5nIHRoZSBnaXZlbiBuYW1lLXRvLWtleS1saXN0IGRpY3Rpb25hcnkuIiIiCi0gICAgICAgIGYgPSBvcGVuKG9zLnBhdGguam9pbihzZWxmLl9wYXRoLCAnLm1oX3NlcXVlbmNlcycpLCAncisnKQorICAgICAgICBmID0gb3Blbihvcy5wYXRoLmpvaW4oc2VsZi5fcGF0aCwgJy5taF9zZXF1ZW5jZXMnKSwgJ3IrJywgZW5jb2Rpbmc9J0FTQ0lJJykKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgb3MuY2xvc2Uob3Mub3BlbihmLm5hbWUsIG9zLk9fV1JPTkxZIHwgb3MuT19UUlVOQykpCiAgICAgICAgICAgICBmb3IgbmFtZSwga2V5cyBpbiBzZXF1ZW5jZXMuaXRlbXMoKToKZGlmZiAtLWdpdCBhL0xpYi9tYWlsY2FwLnB5IGIvTGliL21haWxjYXAucHkKaW5kZXggNGFlMTNkNy4uOTlmNDk1OCAxMDA2NDQKLS0tIGEvTGliL21haWxjYXAucHkKKysrIGIvTGliL21haWxjYXAucHkKQEAgLTMzLDEwICszMywxMCBAQAogCiBkZWYgbGlzdG1haWxjYXBmaWxlcygpOgogICAgICIiIlJldHVybiBhIGxpc3Qgb2YgYWxsIG1haWxjYXAgZmlsZXMgZm91bmQgb24gdGhlIHN5c3RlbS4iIiIKLSAgICAjIFhYWCBBY3R1YWxseSwgdGhpcyBpcyBVbml4LXNwZWNpZmljCisgICAgIyBUaGlzIGlzIG1vc3RseSBhIFVuaXggdGhpbmcsIGJ1dCB3ZSB1c2UgdGhlIE9TIHBhdGggc2VwYXJhdG9yIGFueXdheQogICAgIGlmICdNQUlMQ0FQUycgaW4gb3MuZW52aXJvbjoKLSAgICAgICAgc3RyID0gb3MuZW52aXJvblsnTUFJTENBUFMnXQotICAgICAgICBtYWlsY2FwcyA9IHN0ci5zcGxpdCgnOicpCisgICAgICAgIHBhdGhzdHIgPSBvcy5lbnZpcm9uWydNQUlMQ0FQUyddCisgICAgICAgIG1haWxjYXBzID0gcGF0aHN0ci5zcGxpdChvcy5wYXRoc2VwKQogICAgIGVsc2U6CiAgICAgICAgIGlmICdIT01FJyBpbiBvcy5lbnZpcm9uOgogICAgICAgICAgICAgaG9tZSA9IG9zLmVudmlyb25bJ0hPTUUnXQpkaWZmIC0tZ2l0IGEvTGliL21pbWV0eXBlcy5weSBiL0xpYi9taW1ldHlwZXMucHkKaW5kZXggNGIxZTJmOS4uZmE2MjMyNiAxMDA2NDQKLS0tIGEvTGliL21pbWV0eXBlcy5weQorKysgYi9MaWIvbWltZXR5cGVzLnB5CkBAIC0yNDksNyArMjQ5LDYgQEAKICAgICAgICAgICAgICAgICAgICAgeWllbGQgY3R5cGUKICAgICAgICAgICAgICAgICBpICs9IDEKIAotICAgICAgICBkZWZhdWx0X2VuY29kaW5nID0gc3lzLmdldGRlZmF1bHRlbmNvZGluZygpCiAgICAgICAgIHdpdGggX3dpbnJlZy5PcGVuS2V5KF93aW5yZWcuSEtFWV9DTEFTU0VTX1JPT1QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHInTUlNRVxEYXRhYmFzZVxDb250ZW50IFR5cGUnKSBhcyBtaW1lZGI6CiAgICAgICAgICAgICBmb3IgY3R5cGUgaW4gZW51bV90eXBlcyhtaW1lZGIpOgpAQCAtNDM0LDYgKzQzMyw4IEBACiAgICAgICAgICcua3NoJyAgICA6ICd0ZXh0L3BsYWluJywKICAgICAgICAgJy5sYXRleCcgIDogJ2FwcGxpY2F0aW9uL3gtbGF0ZXgnLAogICAgICAgICAnLm0xdicgICAgOiAndmlkZW8vbXBlZycsCisgICAgICAgICcubTN1JyAgICA6ICdhcHBsaWNhdGlvbi92bmQuYXBwbGUubXBlZ3VybCcsCisgICAgICAgICcubTN1OCcgICA6ICdhcHBsaWNhdGlvbi92bmQuYXBwbGUubXBlZ3VybCcsCiAgICAgICAgICcubWFuJyAgICA6ICdhcHBsaWNhdGlvbi94LXRyb2ZmLW1hbicsCiAgICAgICAgICcubWUnICAgICA6ICdhcHBsaWNhdGlvbi94LXRyb2ZmLW1lJywKICAgICAgICAgJy5taHQnICAgIDogJ21lc3NhZ2UvcmZjODIyJywKZGlmZiAtLWdpdCBhL0xpYi9tb2R1bGVmaW5kZXIucHkgYi9MaWIvbW9kdWxlZmluZGVyLnB5CmluZGV4IGYwMzNiYTkuLmMwOTEwYWEgMTAwNjQ0Ci0tLSBhL0xpYi9tb2R1bGVmaW5kZXIucHkKKysrIGIvTGliL21vZHVsZWZpbmRlci5weQpAQCAtMSw2ICsxLDUgQEAKICIiIkZpbmQgbW9kdWxlcyB1c2VkIGJ5IGEgc2NyaXB0LCB1c2luZyBpbnRyb3NwZWN0aW9uLiIiIgogCi1mcm9tIF9fZnV0dXJlX18gaW1wb3J0IGdlbmVyYXRvcnMKIGltcG9ydCBkaXMKIGltcG9ydCBpbXAKIGltcG9ydCBtYXJzaGFsCkBAIC05LDggKzgsNiBAQAogaW1wb3J0IHR5cGVzCiBpbXBvcnQgc3RydWN0CiAKLVJFQURfTU9ERSA9ICJyVSIKLQogIyBYWFggQ2xlYW4gdXAgb25jZSBzdHI4J3MgY3N0b3IgbWF0Y2hlcyBieXRlcy4KIExPQURfQ09OU1QgPSBieXRlcyhbZGlzLm9wbmFtZS5pbmRleCgnTE9BRF9DT05TVCcpXSkKIElNUE9SVF9OQU1FID0gYnl0ZXMoW2Rpcy5vcG5hbWUuaW5kZXgoJ0lNUE9SVF9OQU1FJyldKQpAQCAtMjksOSArMjYsNyBAQAogCiAjIEEgUHVibGljIGludGVyZmFjZQogZGVmIEFkZFBhY2thZ2VQYXRoKHBhY2thZ2VuYW1lLCBwYXRoKToKLSAgICBwYXRocyA9IHBhY2thZ2VQYXRoTWFwLmdldChwYWNrYWdlbmFtZSwgW10pCi0gICAgcGF0aHMuYXBwZW5kKHBhdGgpCi0gICAgcGFja2FnZVBhdGhNYXBbcGFja2FnZW5hbWVdID0gcGF0aHMKKyAgICBwYWNrYWdlUGF0aE1hcC5zZXRkZWZhdWx0KHBhY2thZ2VuYW1lLCBbXSkuYXBwZW5kKHBhdGgpCiAKIHJlcGxhY2VQYWNrYWdlTWFwID0ge30KIApAQCAtMTA2LDE0ICsxMDEsMTQgQEAKIAogICAgIGRlZiBydW5fc2NyaXB0KHNlbGYsIHBhdGhuYW1lKToKICAgICAgICAgc2VsZi5tc2coMiwgInJ1bl9zY3JpcHQiLCBwYXRobmFtZSkKLSAgICAgICAgd2l0aCBvcGVuKHBhdGhuYW1lLCBSRUFEX01PREUpIGFzIGZwOgorICAgICAgICB3aXRoIG9wZW4ocGF0aG5hbWUpIGFzIGZwOgogICAgICAgICAgICAgc3R1ZmYgPSAoIiIsICJyIiwgaW1wLlBZX1NPVVJDRSkKICAgICAgICAgICAgIHNlbGYubG9hZF9tb2R1bGUoJ19fbWFpbl9fJywgZnAsIHBhdGhuYW1lLCBzdHVmZikKIAogICAgIGRlZiBsb2FkX2ZpbGUoc2VsZiwgcGF0aG5hbWUpOgogICAgICAgICBkaXIsIG5hbWUgPSBvcy5wYXRoLnNwbGl0KHBhdGhuYW1lKQogICAgICAgICBuYW1lLCBleHQgPSBvcy5wYXRoLnNwbGl0ZXh0KG5hbWUpCi0gICAgICAgIHdpdGggb3BlbihwYXRobmFtZSwgUkVBRF9NT0RFKSBhcyBmcDoKKyAgICAgICAgd2l0aCBvcGVuKHBhdGhuYW1lKSBhcyBmcDoKICAgICAgICAgICAgIHN0dWZmID0gKGV4dCwgInIiLCBpbXAuUFlfU09VUkNFKQogICAgICAgICAgICAgc2VsZi5sb2FkX21vZHVsZShuYW1lLCBmcCwgcGF0aG5hbWUsIHN0dWZmKQogCkBAIC0yNzAsNyArMjY1LDggQEAKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgbSA9IHNlbGYubG9hZF9tb2R1bGUoZnFuYW1lLCBmcCwgcGF0aG5hbWUsIHN0dWZmKQogICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgaWYgZnA6IGZwLmNsb3NlKCkKKyAgICAgICAgICAgIGlmIGZwOgorICAgICAgICAgICAgICAgIGZwLmNsb3NlKCkKICAgICAgICAgaWYgcGFyZW50OgogICAgICAgICAgICAgc2V0YXR0cihwYXJlbnQsIHBhcnRuYW1lLCBtKQogICAgICAgICBzZWxmLm1zZ291dCgzLCAiaW1wb3J0X21vZHVsZSAtPiIsIG0pCkBAIC02NjIsNCArNjU4LDQgQEAKICAgICB0cnk6CiAgICAgICAgIG1mID0gdGVzdCgpCiAgICAgZXhjZXB0IEtleWJvYXJkSW50ZXJydXB0OgotICAgICAgICBwcmludCgiXG5baW50ZXJydXB0XSIpCisgICAgICAgIHByaW50KCJcbltpbnRlcnJ1cHRlZF0iKQpkaWZmIC0tZ2l0IGEvTGliL211bHRpcHJvY2Vzc2luZy9jb25uZWN0aW9uLnB5IGIvTGliL211bHRpcHJvY2Vzc2luZy9jb25uZWN0aW9uLnB5CmluZGV4IGQ2YzIzZmIuLmM2YzYxMTMgMTAwNjQ0Ci0tLSBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvY29ubmVjdGlvbi5weQorKysgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL2Nvbm5lY3Rpb24ucHkKQEAgLTM0LDE5ICszNCwzMSBAQAogCiBfX2FsbF9fID0gWyAnQ2xpZW50JywgJ0xpc3RlbmVyJywgJ1BpcGUnIF0KIAoraW1wb3J0IGlvCiBpbXBvcnQgb3MKIGltcG9ydCBzeXMKK2ltcG9ydCBwaWNrbGUKK2ltcG9ydCBzZWxlY3QKIGltcG9ydCBzb2NrZXQKK2ltcG9ydCBzdHJ1Y3QKIGltcG9ydCBlcnJubwogaW1wb3J0IHRpbWUKIGltcG9ydCB0ZW1wZmlsZQogaW1wb3J0IGl0ZXJ0b29scwogCiBpbXBvcnQgX211bHRpcHJvY2Vzc2luZwotZnJvbSBtdWx0aXByb2Nlc3NpbmcgaW1wb3J0IGN1cnJlbnRfcHJvY2VzcywgQXV0aGVudGljYXRpb25FcnJvcgotZnJvbSBtdWx0aXByb2Nlc3NpbmcudXRpbCBpbXBvcnQgZ2V0X3RlbXBfZGlyLCBGaW5hbGl6ZSwgc3ViX2RlYnVnLCBkZWJ1ZwotZnJvbSBtdWx0aXByb2Nlc3NpbmcuZm9ya2luZyBpbXBvcnQgZHVwbGljYXRlLCBjbG9zZQorZnJvbSBtdWx0aXByb2Nlc3NpbmcgaW1wb3J0IGN1cnJlbnRfcHJvY2VzcywgQXV0aGVudGljYXRpb25FcnJvciwgQnVmZmVyVG9vU2hvcnQKK2Zyb20gbXVsdGlwcm9jZXNzaW5nLnV0aWwgaW1wb3J0ICgKKyAgICBnZXRfdGVtcF9kaXIsIEZpbmFsaXplLCBzdWJfZGVidWcsIGRlYnVnLCBfZWludHJfcmV0cnkpCit0cnk6CisgICAgZnJvbSBfbXVsdGlwcm9jZXNzaW5nIGltcG9ydCB3aW4zMgorICAgIGZyb20gX3N1YnByb2Nlc3MgaW1wb3J0IFdBSVRfT0JKRUNUXzAsIFdBSVRfVElNRU9VVCwgSU5GSU5JVEUKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzoKKyAgICAgICAgcmFpc2UKKyAgICB3aW4zMiA9IE5vbmUKIAorX3NlbGVjdCA9IF9laW50cl9yZXRyeShzZWxlY3Quc2VsZWN0KQogCiAjCiAjCkBAIC0xMTAsNiArMTIyLDMyNiBAQAogICAgIGVsc2U6CiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ2FkZHJlc3MgdHlwZSBvZiAlciB1bnJlY29nbml6ZWQnICUgYWRkcmVzcykKIAorCitjbGFzcyBTZW50aW5lbFJlYWR5KEV4Y2VwdGlvbik6CisgICAgIiIiCisgICAgUmFpc2VkIHdoZW4gYSBzZW50aW5lbCBpcyByZWFkeSB3aGVuIHBvbGxpbmcuCisgICAgIiIiCisgICAgZGVmIF9faW5pdF9fKHNlbGYsICphcmdzKToKKyAgICAgICAgRXhjZXB0aW9uLl9faW5pdF9fKHNlbGYsICphcmdzKQorICAgICAgICBzZWxmLnNlbnRpbmVscyA9IGFyZ3NbMF0KKworIworIyBDb25uZWN0aW9uIGNsYXNzZXMKKyMKKworY2xhc3MgX0Nvbm5lY3Rpb25CYXNlOgorICAgIF9oYW5kbGUgPSBOb25lCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgaGFuZGxlLCByZWFkYWJsZT1UcnVlLCB3cml0YWJsZT1UcnVlKToKKyAgICAgICAgaGFuZGxlID0gaGFuZGxlLl9faW5kZXhfXygpCisgICAgICAgIGlmIGhhbmRsZSA8IDA6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJpbnZhbGlkIGhhbmRsZSIpCisgICAgICAgIGlmIG5vdCByZWFkYWJsZSBhbmQgbm90IHdyaXRhYmxlOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigKKyAgICAgICAgICAgICAgICAiYXQgbGVhc3Qgb25lIG9mIGByZWFkYWJsZWAgYW5kIGB3cml0YWJsZWAgbXVzdCBiZSBUcnVlIikKKyAgICAgICAgc2VsZi5faGFuZGxlID0gaGFuZGxlCisgICAgICAgIHNlbGYuX3JlYWRhYmxlID0gcmVhZGFibGUKKyAgICAgICAgc2VsZi5fd3JpdGFibGUgPSB3cml0YWJsZQorCisgICAgIyBYWFggc2hvdWxkIHdlIHVzZSB1dGlsLkZpbmFsaXplIGluc3RlYWQgb2YgYSBfX2RlbF9fPworCisgICAgZGVmIF9fZGVsX18oc2VsZik6CisgICAgICAgIGlmIHNlbGYuX2hhbmRsZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2Nsb3NlKCkKKworICAgIGRlZiBfY2hlY2tfY2xvc2VkKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl9oYW5kbGUgaXMgTm9uZToKKyAgICAgICAgICAgIHJhaXNlIElPRXJyb3IoImhhbmRsZSBpcyBjbG9zZWQiKQorCisgICAgZGVmIF9jaGVja19yZWFkYWJsZShzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuX3JlYWRhYmxlOgorICAgICAgICAgICAgcmFpc2UgSU9FcnJvcigiY29ubmVjdGlvbiBpcyB3cml0ZS1vbmx5IikKKworICAgIGRlZiBfY2hlY2tfd3JpdGFibGUoc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLl93cml0YWJsZToKKyAgICAgICAgICAgIHJhaXNlIElPRXJyb3IoImNvbm5lY3Rpb24gaXMgcmVhZC1vbmx5IikKKworICAgIGRlZiBfYmFkX21lc3NhZ2VfbGVuZ3RoKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl93cml0YWJsZToKKyAgICAgICAgICAgIHNlbGYuX3JlYWRhYmxlID0gRmFsc2UKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorICAgICAgICByYWlzZSBJT0Vycm9yKCJiYWQgbWVzc2FnZSBsZW5ndGgiKQorCisgICAgQHByb3BlcnR5CisgICAgZGVmIGNsb3NlZChzZWxmKToKKyAgICAgICAgIiIiVHJ1ZSBpZiB0aGUgY29ubmVjdGlvbiBpcyBjbG9zZWQiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX2hhbmRsZSBpcyBOb25lCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgcmVhZGFibGUoc2VsZik6CisgICAgICAgICIiIlRydWUgaWYgdGhlIGNvbm5lY3Rpb24gaXMgcmVhZGFibGUiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX3JlYWRhYmxlCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgd3JpdGFibGUoc2VsZik6CisgICAgICAgICIiIlRydWUgaWYgdGhlIGNvbm5lY3Rpb24gaXMgd3JpdGFibGUiIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuX3dyaXRhYmxlCisKKyAgICBkZWYgZmlsZW5vKHNlbGYpOgorICAgICAgICAiIiJGaWxlIGRlc2NyaXB0b3Igb3IgaGFuZGxlIG9mIHRoZSBjb25uZWN0aW9uIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2Nsb3NlZCgpCisgICAgICAgIHJldHVybiBzZWxmLl9oYW5kbGUKKworICAgIGRlZiBjbG9zZShzZWxmKToKKyAgICAgICAgIiIiQ2xvc2UgdGhlIGNvbm5lY3Rpb24iIiIKKyAgICAgICAgaWYgc2VsZi5faGFuZGxlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuX2Nsb3NlKCkKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgc2VsZi5faGFuZGxlID0gTm9uZQorCisgICAgZGVmIHNlbmRfYnl0ZXMoc2VsZiwgYnVmLCBvZmZzZXQ9MCwgc2l6ZT1Ob25lKToKKyAgICAgICAgIiIiU2VuZCB0aGUgYnl0ZXMgZGF0YSBmcm9tIGEgYnl0ZXMtbGlrZSBvYmplY3QiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY2xvc2VkKCkKKyAgICAgICAgc2VsZi5fY2hlY2tfd3JpdGFibGUoKQorICAgICAgICBtID0gbWVtb3J5dmlldyhidWYpCisgICAgICAgICMgSEFDSyBmb3IgYnl0ZS1pbmRleGluZyBvZiBub24tYnl0ZXdpc2UgYnVmZmVycyAoZS5nLiBhcnJheS5hcnJheSkKKyAgICAgICAgaWYgbS5pdGVtc2l6ZSA+IDE6CisgICAgICAgICAgICBtID0gbWVtb3J5dmlldyhieXRlcyhtKSkKKyAgICAgICAgbiA9IGxlbihtKQorICAgICAgICBpZiBvZmZzZXQgPCAwOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigib2Zmc2V0IGlzIG5lZ2F0aXZlIikKKyAgICAgICAgaWYgbiA8IG9mZnNldDoKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImJ1ZmZlciBsZW5ndGggPCBvZmZzZXQiKQorICAgICAgICBpZiBzaXplIGlzIE5vbmU6CisgICAgICAgICAgICBzaXplID0gbiAtIG9mZnNldAorICAgICAgICBlbGlmIHNpemUgPCAwOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigic2l6ZSBpcyBuZWdhdGl2ZSIpCisgICAgICAgIGVsaWYgb2Zmc2V0ICsgc2l6ZSA+IG46CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJidWZmZXIgbGVuZ3RoIDwgb2Zmc2V0ICsgc2l6ZSIpCisgICAgICAgIHNlbGYuX3NlbmRfYnl0ZXMobVtvZmZzZXQ6b2Zmc2V0ICsgc2l6ZV0pCisKKyAgICBkZWYgc2VuZChzZWxmLCBvYmopOgorICAgICAgICAiIiJTZW5kIGEgKHBpY2tsYWJsZSkgb2JqZWN0IiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2Nsb3NlZCgpCisgICAgICAgIHNlbGYuX2NoZWNrX3dyaXRhYmxlKCkKKyAgICAgICAgYnVmID0gcGlja2xlLmR1bXBzKG9iaiwgcHJvdG9jb2w9cGlja2xlLkhJR0hFU1RfUFJPVE9DT0wpCisgICAgICAgIHNlbGYuX3NlbmRfYnl0ZXMobWVtb3J5dmlldyhidWYpKQorCisgICAgZGVmIHJlY3ZfYnl0ZXMoc2VsZiwgbWF4bGVuZ3RoPU5vbmUpOgorICAgICAgICAiIiIKKyAgICAgICAgUmVjZWl2ZSBieXRlcyBkYXRhIGFzIGEgYnl0ZXMgb2JqZWN0LgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY2xvc2VkKCkKKyAgICAgICAgc2VsZi5fY2hlY2tfcmVhZGFibGUoKQorICAgICAgICBpZiBtYXhsZW5ndGggaXMgbm90IE5vbmUgYW5kIG1heGxlbmd0aCA8IDA6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJuZWdhdGl2ZSBtYXhsZW5ndGgiKQorICAgICAgICBidWYgPSBzZWxmLl9yZWN2X2J5dGVzKG1heGxlbmd0aCkKKyAgICAgICAgaWYgYnVmIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLl9iYWRfbWVzc2FnZV9sZW5ndGgoKQorICAgICAgICByZXR1cm4gYnVmLmdldHZhbHVlKCkKKworICAgIGRlZiByZWN2X2J5dGVzX2ludG8oc2VsZiwgYnVmLCBvZmZzZXQ9MCk6CisgICAgICAgICIiIgorICAgICAgICBSZWNlaXZlIGJ5dGVzIGRhdGEgaW50byBhIHdyaXRlYWJsZSBidWZmZXItbGlrZSBvYmplY3QuCisgICAgICAgIFJldHVybiB0aGUgbnVtYmVyIG9mIGJ5dGVzIHJlYWQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLl9jaGVja19jbG9zZWQoKQorICAgICAgICBzZWxmLl9jaGVja19yZWFkYWJsZSgpCisgICAgICAgIHdpdGggbWVtb3J5dmlldyhidWYpIGFzIG06CisgICAgICAgICAgICAjIEdldCBieXRlc2l6ZSBvZiBhcmJpdHJhcnkgYnVmZmVyCisgICAgICAgICAgICBpdGVtc2l6ZSA9IG0uaXRlbXNpemUKKyAgICAgICAgICAgIGJ5dGVzaXplID0gaXRlbXNpemUgKiBsZW4obSkKKyAgICAgICAgICAgIGlmIG9mZnNldCA8IDA6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigibmVnYXRpdmUgb2Zmc2V0IikKKyAgICAgICAgICAgIGVsaWYgb2Zmc2V0ID4gYnl0ZXNpemU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigib2Zmc2V0IHRvbyBsYXJnZSIpCisgICAgICAgICAgICByZXN1bHQgPSBzZWxmLl9yZWN2X2J5dGVzKCkKKyAgICAgICAgICAgIHNpemUgPSByZXN1bHQudGVsbCgpCisgICAgICAgICAgICBpZiBieXRlc2l6ZSA8IG9mZnNldCArIHNpemU6CisgICAgICAgICAgICAgICAgcmFpc2UgQnVmZmVyVG9vU2hvcnQocmVzdWx0LmdldHZhbHVlKCkpCisgICAgICAgICAgICAjIE1lc3NhZ2UgY2FuIGZpdCBpbiBkZXN0CisgICAgICAgICAgICByZXN1bHQuc2VlaygwKQorICAgICAgICAgICAgcmVzdWx0LnJlYWRpbnRvKG1bb2Zmc2V0IC8vIGl0ZW1zaXplIDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvZmZzZXQgKyBzaXplKSAvLyBpdGVtc2l6ZV0pCisgICAgICAgICAgICByZXR1cm4gc2l6ZQorCisgICAgZGVmIHJlY3Yoc2VsZiwgc2VudGluZWxzPU5vbmUpOgorICAgICAgICAiIiJSZWNlaXZlIGEgKHBpY2tsYWJsZSkgb2JqZWN0IiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2Nsb3NlZCgpCisgICAgICAgIHNlbGYuX2NoZWNrX3JlYWRhYmxlKCkKKyAgICAgICAgYnVmID0gc2VsZi5fcmVjdl9ieXRlcyhzZW50aW5lbHM9c2VudGluZWxzKQorICAgICAgICByZXR1cm4gcGlja2xlLmxvYWRzKGJ1Zi5nZXRidWZmZXIoKSkKKworICAgIGRlZiBwb2xsKHNlbGYsIHRpbWVvdXQ9MC4wKToKKyAgICAgICAgIiIiV2hldGhlciB0aGVyZSBpcyBhbnkgaW5wdXQgYXZhaWxhYmxlIHRvIGJlIHJlYWQiIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfY2xvc2VkKCkKKyAgICAgICAgc2VsZi5fY2hlY2tfcmVhZGFibGUoKQorICAgICAgICByZXR1cm4gc2VsZi5fcG9sbCh0aW1lb3V0KQorCisKK2lmIHdpbjMyOgorCisgICAgY2xhc3MgUGlwZUNvbm5lY3Rpb24oX0Nvbm5lY3Rpb25CYXNlKToKKyAgICAgICAgIiIiCisgICAgICAgIENvbm5lY3Rpb24gY2xhc3MgYmFzZWQgb24gYSBXaW5kb3dzIG5hbWVkIHBpcGUuCisgICAgICAgIE92ZXJsYXBwZWQgSS9PIGlzIHVzZWQsIHNvIHRoZSBoYW5kbGVzIG11c3QgaGF2ZSBiZWVuIGNyZWF0ZWQKKyAgICAgICAgd2l0aCBGSUxFX0ZMQUdfT1ZFUkxBUFBFRC4KKyAgICAgICAgIiIiCisgICAgICAgIF9idWZmZXJlZCA9IGInJworCisgICAgICAgIGRlZiBfY2xvc2Uoc2VsZiwgX0Nsb3NlSGFuZGxlPXdpbjMyLkNsb3NlSGFuZGxlKToKKyAgICAgICAgICAgIF9DbG9zZUhhbmRsZShzZWxmLl9oYW5kbGUpCisKKyAgICAgICAgZGVmIF9zZW5kX2J5dGVzKHNlbGYsIGJ1Zik6CisgICAgICAgICAgICBvdmVybGFwcGVkID0gd2luMzIuV3JpdGVGaWxlKHNlbGYuX2hhbmRsZSwgYnVmLCBvdmVybGFwcGVkPVRydWUpCisgICAgICAgICAgICBud3JpdHRlbiwgY29tcGxldGUgPSBvdmVybGFwcGVkLkdldE92ZXJsYXBwZWRSZXN1bHQoVHJ1ZSkKKyAgICAgICAgICAgIGFzc2VydCBjb21wbGV0ZQorICAgICAgICAgICAgYXNzZXJ0IG53cml0dGVuID09IGxlbihidWYpCisKKyAgICAgICAgZGVmIF9yZWN2X2J5dGVzKHNlbGYsIG1heHNpemU9Tm9uZSwgc2VudGluZWxzPSgpKToKKyAgICAgICAgICAgIGlmIHNlbnRpbmVsczoKKyAgICAgICAgICAgICAgICBzZWxmLl9wb2xsKC0xLjAsIHNlbnRpbmVscykKKyAgICAgICAgICAgIGJ1ZiA9IGlvLkJ5dGVzSU8oKQorICAgICAgICAgICAgZmlyc3RjaHVuayA9IHNlbGYuX2J1ZmZlcmVkCisgICAgICAgICAgICBpZiBmaXJzdGNodW5rOgorICAgICAgICAgICAgICAgIGxlbmZpcnN0Y2h1bmsgPSBsZW4oZmlyc3RjaHVuaykKKyAgICAgICAgICAgICAgICBidWYud3JpdGUoZmlyc3RjaHVuaykKKyAgICAgICAgICAgICAgICBzZWxmLl9idWZmZXJlZCA9IGInJworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAjIEEgcmVhc29uYWJsZSBzaXplIGZvciB0aGUgZmlyc3QgY2h1bmsgdHJhbnNmZXIKKyAgICAgICAgICAgICAgICBidWZzaXplID0gMTI4CisgICAgICAgICAgICAgICAgaWYgbWF4c2l6ZSBpcyBub3QgTm9uZSBhbmQgbWF4c2l6ZSA8IGJ1ZnNpemU6CisgICAgICAgICAgICAgICAgICAgIGJ1ZnNpemUgPSBtYXhzaXplCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBvdmVybGFwcGVkID0gd2luMzIuUmVhZEZpbGUoc2VsZi5faGFuZGxlLCBidWZzaXplLCBvdmVybGFwcGVkPVRydWUpCisgICAgICAgICAgICAgICAgICAgIGxlbmZpcnN0Y2h1bmssIGNvbXBsZXRlID0gb3ZlcmxhcHBlZC5HZXRPdmVybGFwcGVkUmVzdWx0KFRydWUpCisgICAgICAgICAgICAgICAgICAgIGZpcnN0Y2h1bmsgPSBvdmVybGFwcGVkLmdldGJ1ZmZlcigpCisgICAgICAgICAgICAgICAgICAgIGFzc2VydCBsZW5maXJzdGNodW5rID09IGxlbihmaXJzdGNodW5rKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yIGFzIGU6CisgICAgICAgICAgICAgICAgICAgIGlmIGUud2luZXJyb3IgPT0gd2luMzIuRVJST1JfQlJPS0VOX1BJUEU6CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBFT0ZFcnJvcgorICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgICAgIGJ1Zi53cml0ZShmaXJzdGNodW5rKQorICAgICAgICAgICAgICAgIGlmIGNvbXBsZXRlOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gYnVmCisgICAgICAgICAgICBuYXZhaWwsIG5sZWZ0ID0gd2luMzIuUGVla05hbWVkUGlwZShzZWxmLl9oYW5kbGUpCisgICAgICAgICAgICBpZiBtYXhzaXplIGlzIG5vdCBOb25lIGFuZCBsZW5maXJzdGNodW5rICsgbmxlZnQgPiBtYXhzaXplOgorICAgICAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgICAgICBpZiBubGVmdCA+IDA6CisgICAgICAgICAgICAgICAgb3ZlcmxhcHBlZCA9IHdpbjMyLlJlYWRGaWxlKHNlbGYuX2hhbmRsZSwgbmxlZnQsIG92ZXJsYXBwZWQ9VHJ1ZSkKKyAgICAgICAgICAgICAgICByZXMsIGNvbXBsZXRlID0gb3ZlcmxhcHBlZC5HZXRPdmVybGFwcGVkUmVzdWx0KFRydWUpCisgICAgICAgICAgICAgICAgYXNzZXJ0IHJlcyA9PSBubGVmdAorICAgICAgICAgICAgICAgIGFzc2VydCBjb21wbGV0ZQorICAgICAgICAgICAgICAgIGJ1Zi53cml0ZShvdmVybGFwcGVkLmdldGJ1ZmZlcigpKQorICAgICAgICAgICAgcmV0dXJuIGJ1ZgorCisgICAgICAgIGRlZiBfcG9sbChzZWxmLCB0aW1lb3V0LCBzZW50aW5lbHM9KCkpOgorICAgICAgICAgICAgIyBGYXN0IG5vbi1ibG9ja2luZyBwYXRoCisgICAgICAgICAgICBuYXZhaWwsIG5sZWZ0ID0gd2luMzIuUGVla05hbWVkUGlwZShzZWxmLl9oYW5kbGUpCisgICAgICAgICAgICBpZiBuYXZhaWwgPiAwOgorICAgICAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgICAgICBlbGlmIHRpbWVvdXQgPT0gMC4wOgorICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgICAgICAgICAgIyBCbG9ja2luZzogdXNlIG92ZXJsYXBwZWQgSS9PCisgICAgICAgICAgICBpZiB0aW1lb3V0IDwgMC4wOgorICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBJTkZJTklURQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICB0aW1lb3V0ID0gaW50KHRpbWVvdXQgKiAxMDAwICsgMC41KQorICAgICAgICAgICAgb3ZlcmxhcHBlZCA9IHdpbjMyLlJlYWRGaWxlKHNlbGYuX2hhbmRsZSwgMSwgb3ZlcmxhcHBlZD1UcnVlKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGhhbmRsZXMgPSBbb3ZlcmxhcHBlZC5ldmVudF0KKyAgICAgICAgICAgICAgICBoYW5kbGVzICs9IHNlbnRpbmVscworICAgICAgICAgICAgICAgIHJlcyA9IHdpbjMyLldhaXRGb3JNdWx0aXBsZU9iamVjdHMoaGFuZGxlcywgRmFsc2UsIHRpbWVvdXQpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgICMgQWx3YXlzIGNhbmNlbCBvdmVybGFwcGVkIEkvTyBpbiB0aGUgc2FtZSB0aHJlYWQKKyAgICAgICAgICAgICAgICAjIChiZWNhdXNlIENhbmNlbElvRXgoKSBhcHBlYXJzIG9ubHkgaW4gVmlzdGEpCisgICAgICAgICAgICAgICAgb3ZlcmxhcHBlZC5jYW5jZWwoKQorICAgICAgICAgICAgaWYgcmVzID09IFdBSVRfVElNRU9VVDoKKyAgICAgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAgICAgICAgIGlkeCA9IHJlcyAtIFdBSVRfT0JKRUNUXzAKKyAgICAgICAgICAgIGlmIGlkeCA9PSAwOgorICAgICAgICAgICAgICAgICMgSS9PIHdhcyBzdWNjZXNzZnVsLCBzdG9yZSByZWNlaXZlZCBkYXRhCisgICAgICAgICAgICAgICAgb3ZlcmxhcHBlZC5HZXRPdmVybGFwcGVkUmVzdWx0KFRydWUpCisgICAgICAgICAgICAgICAgc2VsZi5fYnVmZmVyZWQgKz0gb3ZlcmxhcHBlZC5nZXRidWZmZXIoKQorICAgICAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgICAgICBhc3NlcnQgMCA8IGlkeCA8IGxlbihoYW5kbGVzKQorICAgICAgICAgICAgcmFpc2UgU2VudGluZWxSZWFkeShbaGFuZGxlc1tpZHhdXSkKKworCitjbGFzcyBDb25uZWN0aW9uKF9Db25uZWN0aW9uQmFzZSk6CisgICAgIiIiCisgICAgQ29ubmVjdGlvbiBjbGFzcyBiYXNlZCBvbiBhbiBhcmJpdHJhcnkgZmlsZSBkZXNjcmlwdG9yIChVbml4IG9ubHkpLCBvcgorICAgIGEgc29ja2V0IGhhbmRsZSAoV2luZG93cykuCisgICAgIiIiCisKKyAgICBpZiB3aW4zMjoKKyAgICAgICAgZGVmIF9jbG9zZShzZWxmLCBfY2xvc2U9d2luMzIuY2xvc2Vzb2NrZXQpOgorICAgICAgICAgICAgX2Nsb3NlKHNlbGYuX2hhbmRsZSkKKyAgICAgICAgX3dyaXRlID0gd2luMzIuc2VuZAorICAgICAgICBfcmVhZCA9IHdpbjMyLnJlY3YKKyAgICBlbHNlOgorICAgICAgICBkZWYgX2Nsb3NlKHNlbGYsIF9jbG9zZT1vcy5jbG9zZSk6CisgICAgICAgICAgICBfY2xvc2Uoc2VsZi5faGFuZGxlKQorICAgICAgICBfd3JpdGUgPSBvcy53cml0ZQorICAgICAgICBfcmVhZCA9IG9zLnJlYWQKKworICAgIGRlZiBfc2VuZChzZWxmLCBidWYsIHdyaXRlPV93cml0ZSk6CisgICAgICAgIHJlbWFpbmluZyA9IGxlbihidWYpCisgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICBuID0gd3JpdGUoc2VsZi5faGFuZGxlLCBidWYpCisgICAgICAgICAgICByZW1haW5pbmcgLT0gbgorICAgICAgICAgICAgaWYgcmVtYWluaW5nID09IDA6CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIGJ1ZiA9IGJ1ZltuOl0KKworICAgIGRlZiBfcmVjdihzZWxmLCBzaXplLCBzZW50aW5lbHM9KCksIHJlYWQ9X3JlYWQpOgorICAgICAgICBidWYgPSBpby5CeXRlc0lPKCkKKyAgICAgICAgaGFuZGxlID0gc2VsZi5faGFuZGxlCisgICAgICAgIGlmIHNlbnRpbmVsczoKKyAgICAgICAgICAgIGhhbmRsZXMgPSBbaGFuZGxlXSArIHNlbnRpbmVscworICAgICAgICByZW1haW5pbmcgPSBzaXplCisgICAgICAgIHdoaWxlIHJlbWFpbmluZyA+IDA6CisgICAgICAgICAgICBpZiBzZW50aW5lbHM6CisgICAgICAgICAgICAgICAgciA9IF9zZWxlY3QoaGFuZGxlcywgW10sIFtdKVswXQorICAgICAgICAgICAgICAgIGlmIGhhbmRsZSBub3QgaW4gcjoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgU2VudGluZWxSZWFkeShyKQorICAgICAgICAgICAgY2h1bmsgPSByZWFkKGhhbmRsZSwgcmVtYWluaW5nKQorICAgICAgICAgICAgbiA9IGxlbihjaHVuaykKKyAgICAgICAgICAgIGlmIG4gPT0gMDoKKyAgICAgICAgICAgICAgICBpZiByZW1haW5pbmcgPT0gc2l6ZToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgRU9GRXJyb3IKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBJT0Vycm9yKCJnb3QgZW5kIG9mIGZpbGUgZHVyaW5nIG1lc3NhZ2UiKQorICAgICAgICAgICAgYnVmLndyaXRlKGNodW5rKQorICAgICAgICAgICAgcmVtYWluaW5nIC09IG4KKyAgICAgICAgcmV0dXJuIGJ1ZgorCisgICAgZGVmIF9zZW5kX2J5dGVzKHNlbGYsIGJ1Zik6CisgICAgICAgICMgRm9yIHdpcmUgY29tcGF0aWJpbGl0eSB3aXRoIDMuMiBhbmQgbG93ZXIKKyAgICAgICAgbiA9IGxlbihidWYpCisgICAgICAgIHNlbGYuX3NlbmQoc3RydWN0LnBhY2soIiFpIiwgbikpCisgICAgICAgICMgVGhlIGNvbmRpdGlvbiBpcyBuZWNlc3NhcnkgdG8gYXZvaWQgImJyb2tlbiBwaXBlIiBlcnJvcnMKKyAgICAgICAgIyB3aGVuIHNlbmRpbmcgYSAwLWxlbmd0aCBidWZmZXIgaWYgdGhlIG90aGVyIGVuZCBjbG9zZWQgdGhlIHBpcGUuCisgICAgICAgIGlmIG4gPiAwOgorICAgICAgICAgICAgc2VsZi5fc2VuZChidWYpCisKKyAgICBkZWYgX3JlY3ZfYnl0ZXMoc2VsZiwgbWF4c2l6ZT1Ob25lLCBzZW50aW5lbHM9KCkpOgorICAgICAgICBidWYgPSBzZWxmLl9yZWN2KDQsIHNlbnRpbmVscykKKyAgICAgICAgc2l6ZSwgPSBzdHJ1Y3QudW5wYWNrKCIhaSIsIGJ1Zi5nZXR2YWx1ZSgpKQorICAgICAgICBpZiBtYXhzaXplIGlzIG5vdCBOb25lIGFuZCBzaXplID4gbWF4c2l6ZToKKyAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgIHJldHVybiBzZWxmLl9yZWN2KHNpemUsIHNlbnRpbmVscykKKworICAgIGRlZiBfcG9sbChzZWxmLCB0aW1lb3V0KToKKyAgICAgICAgaWYgdGltZW91dCA8IDAuMDoKKyAgICAgICAgICAgIHRpbWVvdXQgPSBOb25lCisgICAgICAgIHIgPSBfc2VsZWN0KFtzZWxmLl9oYW5kbGVdLCBbXSwgW10sIHRpbWVvdXQpWzBdCisgICAgICAgIHJldHVybiBib29sKHIpCisKKwogIwogIyBQdWJsaWMgZnVuY3Rpb25zCiAjCkBAIC0xODYsMjEgKzUxOCwxNyBAQAogICAgICAgICAnJycKICAgICAgICAgaWYgZHVwbGV4OgogICAgICAgICAgICAgczEsIHMyID0gc29ja2V0LnNvY2tldHBhaXIoKQotICAgICAgICAgICAgYzEgPSBfbXVsdGlwcm9jZXNzaW5nLkNvbm5lY3Rpb24ob3MuZHVwKHMxLmZpbGVubygpKSkKLSAgICAgICAgICAgIGMyID0gX211bHRpcHJvY2Vzc2luZy5Db25uZWN0aW9uKG9zLmR1cChzMi5maWxlbm8oKSkpCi0gICAgICAgICAgICBzMS5jbG9zZSgpCi0gICAgICAgICAgICBzMi5jbG9zZSgpCisgICAgICAgICAgICBjMSA9IENvbm5lY3Rpb24oczEuZGV0YWNoKCkpCisgICAgICAgICAgICBjMiA9IENvbm5lY3Rpb24oczIuZGV0YWNoKCkpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBmZDEsIGZkMiA9IG9zLnBpcGUoKQotICAgICAgICAgICAgYzEgPSBfbXVsdGlwcm9jZXNzaW5nLkNvbm5lY3Rpb24oZmQxLCB3cml0YWJsZT1GYWxzZSkKLSAgICAgICAgICAgIGMyID0gX211bHRpcHJvY2Vzc2luZy5Db25uZWN0aW9uKGZkMiwgcmVhZGFibGU9RmFsc2UpCisgICAgICAgICAgICBjMSA9IENvbm5lY3Rpb24oZmQxLCB3cml0YWJsZT1GYWxzZSkKKyAgICAgICAgICAgIGMyID0gQ29ubmVjdGlvbihmZDIsIHJlYWRhYmxlPUZhbHNlKQogCiAgICAgICAgIHJldHVybiBjMSwgYzIKIAogZWxzZToKIAotICAgIGZyb20gX211bHRpcHJvY2Vzc2luZyBpbXBvcnQgd2luMzIKLQogICAgIGRlZiBQaXBlKGR1cGxleD1UcnVlKToKICAgICAgICAgJycnCiAgICAgICAgIFJldHVybnMgcGFpciBvZiBjb25uZWN0aW9uIG9iamVjdHMgYXQgZWl0aGVyIGVuZCBvZiBhIHBpcGUKQEAgLTIxNiwyNiArNTQ0LDI0IEBACiAgICAgICAgICAgICBvYnNpemUsIGlic2l6ZSA9IDAsIEJVRlNJWkUKIAogICAgICAgICBoMSA9IHdpbjMyLkNyZWF0ZU5hbWVkUGlwZSgKLSAgICAgICAgICAgIGFkZHJlc3MsIG9wZW5tb2RlLAorICAgICAgICAgICAgYWRkcmVzcywgb3Blbm1vZGUgfCB3aW4zMi5GSUxFX0ZMQUdfT1ZFUkxBUFBFRCwKICAgICAgICAgICAgIHdpbjMyLlBJUEVfVFlQRV9NRVNTQUdFIHwgd2luMzIuUElQRV9SRUFETU9ERV9NRVNTQUdFIHwKICAgICAgICAgICAgIHdpbjMyLlBJUEVfV0FJVCwKICAgICAgICAgICAgIDEsIG9ic2l6ZSwgaWJzaXplLCB3aW4zMi5OTVBXQUlUX1dBSVRfRk9SRVZFUiwgd2luMzIuTlVMTAogICAgICAgICAgICAgKQogICAgICAgICBoMiA9IHdpbjMyLkNyZWF0ZUZpbGUoCi0gICAgICAgICAgICBhZGRyZXNzLCBhY2Nlc3MsIDAsIHdpbjMyLk5VTEwsIHdpbjMyLk9QRU5fRVhJU1RJTkcsIDAsIHdpbjMyLk5VTEwKKyAgICAgICAgICAgIGFkZHJlc3MsIGFjY2VzcywgMCwgd2luMzIuTlVMTCwgd2luMzIuT1BFTl9FWElTVElORywKKyAgICAgICAgICAgIHdpbjMyLkZJTEVfRkxBR19PVkVSTEFQUEVELCB3aW4zMi5OVUxMCiAgICAgICAgICAgICApCiAgICAgICAgIHdpbjMyLlNldE5hbWVkUGlwZUhhbmRsZVN0YXRlKAogICAgICAgICAgICAgaDIsIHdpbjMyLlBJUEVfUkVBRE1PREVfTUVTU0FHRSwgTm9uZSwgTm9uZQogICAgICAgICAgICAgKQogCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHdpbjMyLkNvbm5lY3ROYW1lZFBpcGUoaDEsIHdpbjMyLk5VTEwpCi0gICAgICAgIGV4Y2VwdCBXaW5kb3dzRXJyb3IgYXMgZToKLSAgICAgICAgICAgIGlmIGUuYXJnc1swXSAhPSB3aW4zMi5FUlJPUl9QSVBFX0NPTk5FQ1RFRDoKLSAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICBvdmVybGFwcGVkID0gd2luMzIuQ29ubmVjdE5hbWVkUGlwZShoMSwgb3ZlcmxhcHBlZD1UcnVlKQorICAgICAgICBvdmVybGFwcGVkLkdldE92ZXJsYXBwZWRSZXN1bHQoVHJ1ZSkKIAotICAgICAgICBjMSA9IF9tdWx0aXByb2Nlc3NpbmcuUGlwZUNvbm5lY3Rpb24oaDEsIHdyaXRhYmxlPWR1cGxleCkKLSAgICAgICAgYzIgPSBfbXVsdGlwcm9jZXNzaW5nLlBpcGVDb25uZWN0aW9uKGgyLCByZWFkYWJsZT1kdXBsZXgpCisgICAgICAgIGMxID0gUGlwZUNvbm5lY3Rpb24oaDEsIHdyaXRhYmxlPWR1cGxleCkKKyAgICAgICAgYzIgPSBQaXBlQ29ubmVjdGlvbihoMiwgcmVhZGFibGU9ZHVwbGV4KQogCiAgICAgICAgIHJldHVybiBjMSwgYzIKIApAQCAtMjY2LDcgKzU5Miw3IEBACiAgICAgZGVmIGFjY2VwdChzZWxmKToKICAgICAgICAgcywgc2VsZi5fbGFzdF9hY2NlcHRlZCA9IHNlbGYuX3NvY2tldC5hY2NlcHQoKQogICAgICAgICBmZCA9IGR1cGxpY2F0ZShzLmZpbGVubygpKQotICAgICAgICBjb25uID0gX211bHRpcHJvY2Vzc2luZy5Db25uZWN0aW9uKGZkKQorICAgICAgICBjb25uID0gQ29ubmVjdGlvbihmZCkKICAgICAgICAgcy5jbG9zZSgpCiAgICAgICAgIHJldHVybiBjb25uCiAKQEAgLTI4MiwyMyArNjA4LDkgQEAKICAgICAnJycKICAgICBmYW1pbHkgPSBhZGRyZXNzX3R5cGUoYWRkcmVzcykKICAgICB3aXRoIHNvY2tldC5zb2NrZXQoIGdldGF0dHIoc29ja2V0LCBmYW1pbHkpICkgYXMgczoKLSAgICAgICAgdCA9IF9pbml0X3RpbWVvdXQoKQotCi0gICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgcy5jb25uZWN0KGFkZHJlc3MpCi0gICAgICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIGU6Ci0gICAgICAgICAgICAgICAgaWYgZS5hcmdzWzBdICE9IGVycm5vLkVDT05OUkVGVVNFRCBvciBfY2hlY2tfdGltZW91dCh0KToKLSAgICAgICAgICAgICAgICAgICAgZGVidWcoJ2ZhaWxlZCB0byBjb25uZWN0IHRvIGFkZHJlc3MgJXMnLCBhZGRyZXNzKQotICAgICAgICAgICAgICAgICAgICByYWlzZQotICAgICAgICAgICAgICAgIHRpbWUuc2xlZXAoMC4wMSkKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHJhaXNlCi0KKyAgICAgICAgcy5jb25uZWN0KGFkZHJlc3MpCiAgICAgICAgIGZkID0gZHVwbGljYXRlKHMuZmlsZW5vKCkpCi0gICAgY29ubiA9IF9tdWx0aXByb2Nlc3NpbmcuQ29ubmVjdGlvbihmZCkKKyAgICBjb25uID0gQ29ubmVjdGlvbihmZCkKICAgICByZXR1cm4gY29ubgogCiAjCkBAIC0zNDMsOSArNjU1LDkgQEAKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICB3aW4zMi5Db25uZWN0TmFtZWRQaXBlKGhhbmRsZSwgd2luMzIuTlVMTCkKICAgICAgICAgICAgIGV4Y2VwdCBXaW5kb3dzRXJyb3IgYXMgZToKLSAgICAgICAgICAgICAgICBpZiBlLmFyZ3NbMF0gIT0gd2luMzIuRVJST1JfUElQRV9DT05ORUNURUQ6CisgICAgICAgICAgICAgICAgaWYgZS53aW5lcnJvciAhPSB3aW4zMi5FUlJPUl9QSVBFX0NPTk5FQ1RFRDoKICAgICAgICAgICAgICAgICAgICAgcmFpc2UKLSAgICAgICAgICAgIHJldHVybiBfbXVsdGlwcm9jZXNzaW5nLlBpcGVDb25uZWN0aW9uKGhhbmRsZSkKKyAgICAgICAgICAgIHJldHVybiBQaXBlQ29ubmVjdGlvbihoYW5kbGUpCiAKICAgICAgICAgQHN0YXRpY21ldGhvZAogICAgICAgICBkZWYgX2ZpbmFsaXplX3BpcGVfbGlzdGVuZXIocXVldWUsIGFkZHJlc3MpOgpAQCAtMzY2LDggKzY3OCw4IEBACiAgICAgICAgICAgICAgICAgICAgIDAsIHdpbjMyLk5VTEwsIHdpbjMyLk9QRU5fRVhJU1RJTkcsIDAsIHdpbjMyLk5VTEwKICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgZXhjZXB0IFdpbmRvd3NFcnJvciBhcyBlOgotICAgICAgICAgICAgICAgIGlmIGUuYXJnc1swXSBub3QgaW4gKHdpbjMyLkVSUk9SX1NFTV9USU1FT1VULAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbjMyLkVSUk9SX1BJUEVfQlVTWSkgb3IgX2NoZWNrX3RpbWVvdXQodCk6CisgICAgICAgICAgICAgICAgaWYgZS53aW5lcnJvciBub3QgaW4gKHdpbjMyLkVSUk9SX1NFTV9USU1FT1VULAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW4zMi5FUlJPUl9QSVBFX0JVU1kpIG9yIF9jaGVja190aW1lb3V0KHQpOgogICAgICAgICAgICAgICAgICAgICByYWlzZQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBicmVhawpAQCAtMzc3LDcgKzY4OSw3IEBACiAgICAgICAgIHdpbjMyLlNldE5hbWVkUGlwZUhhbmRsZVN0YXRlKAogICAgICAgICAgICAgaCwgd2luMzIuUElQRV9SRUFETU9ERV9NRVNTQUdFLCBOb25lLCBOb25lCiAgICAgICAgICAgICApCi0gICAgICAgIHJldHVybiBfbXVsdGlwcm9jZXNzaW5nLlBpcGVDb25uZWN0aW9uKGgpCisgICAgICAgIHJldHVybiBQaXBlQ29ubmVjdGlvbihoKQogCiAjCiAjIEF1dGhlbnRpY2F0aW9uIHN0dWZmCkBAIC00MzQsMTAgKzc0NiwxMCBAQAogICAgICAgICByZXR1cm4gc2VsZi5fbG9hZHMocykKIAogZGVmIF94bWxfZHVtcHMob2JqKToKLSAgICByZXR1cm4geG1scnBjbGliLmR1bXBzKChvYmosKSwgTm9uZSwgTm9uZSwgTm9uZSwgMSkuZW5jb2RlKCd1dGY4JykKKyAgICByZXR1cm4geG1scnBjbGliLmR1bXBzKChvYmosKSwgTm9uZSwgTm9uZSwgTm9uZSwgMSkuZW5jb2RlKCd1dGYtOCcpCiAKIGRlZiBfeG1sX2xvYWRzKHMpOgotICAgIChvYmosKSwgbWV0aG9kID0geG1scnBjbGliLmxvYWRzKHMuZGVjb2RlKCd1dGY4JykpCisgICAgKG9iaiwpLCBtZXRob2QgPSB4bWxycGNsaWIubG9hZHMocy5kZWNvZGUoJ3V0Zi04JykpCiAgICAgcmV0dXJuIG9iagogCiBjbGFzcyBYbWxMaXN0ZW5lcihMaXN0ZW5lcik6CkBAIC00NTEsMyArNzYzLDcgQEAKICAgICBnbG9iYWwgeG1scnBjbGliCiAgICAgaW1wb3J0IHhtbHJwYy5jbGllbnQgYXMgeG1scnBjbGliCiAgICAgcmV0dXJuIENvbm5lY3Rpb25XcmFwcGVyKENsaWVudCgqYXJncywgKiprd2RzKSwgX3htbF9kdW1wcywgX3htbF9sb2FkcykKKworCisjIExhdGUgaW1wb3J0IGJlY2F1c2Ugb2YgY2lyY3VsYXIgaW1wb3J0Citmcm9tIG11bHRpcHJvY2Vzc2luZy5mb3JraW5nIGltcG9ydCBkdXBsaWNhdGUsIGNsb3NlCmRpZmYgLS1naXQgYS9MaWIvbXVsdGlwcm9jZXNzaW5nL2R1bW15L19faW5pdF9fLnB5IGIvTGliL211bHRpcHJvY2Vzc2luZy9kdW1teS9fX2luaXRfXy5weQppbmRleCBjNDkzM2Q5Li4wNTZhY2ZjIDEwMDY0NAotLS0gYS9MaWIvbXVsdGlwcm9jZXNzaW5nL2R1bW15L19faW5pdF9fLnB5CisrKyBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvZHVtbXkvX19pbml0X18ucHkKQEAgLTQ2LDEyICs0NiwxMCBAQAogaW1wb3J0IHN5cwogaW1wb3J0IHdlYWtyZWYKIGltcG9ydCBhcnJheQotaW1wb3J0IGl0ZXJ0b29scwogCi1mcm9tIG11bHRpcHJvY2Vzc2luZyBpbXBvcnQgVGltZW91dEVycm9yLCBjcHVfY291bnQKIGZyb20gbXVsdGlwcm9jZXNzaW5nLmR1bW15LmNvbm5lY3Rpb24gaW1wb3J0IFBpcGUKIGZyb20gdGhyZWFkaW5nIGltcG9ydCBMb2NrLCBSTG9jaywgU2VtYXBob3JlLCBCb3VuZGVkU2VtYXBob3JlCi1mcm9tIHRocmVhZGluZyBpbXBvcnQgRXZlbnQKK2Zyb20gdGhyZWFkaW5nIGltcG9ydCBFdmVudCwgQ29uZGl0aW9uCiBmcm9tIHF1ZXVlIGltcG9ydCBRdWV1ZQogCiAjCkBAIC04NCwxNyArODIsNiBAQAogIwogIwogCi1jbGFzcyBDb25kaXRpb24odGhyZWFkaW5nLl9Db25kaXRpb24pOgotICAgICMgWFhYCi0gICAgaWYgc3lzLnZlcnNpb25faW5mbyA8ICgzLCAwKToKLSAgICAgICAgbm90aWZ5X2FsbCA9IHRocmVhZGluZy5fQ29uZGl0aW9uLm5vdGlmeV9hbGwuX19mdW5jX18KLSAgICBlbHNlOgotICAgICAgICBub3RpZnlfYWxsID0gdGhyZWFkaW5nLl9Db25kaXRpb24ubm90aWZ5X2FsbAotCi0jCi0jCi0jCi0KIFByb2Nlc3MgPSBEdW1teVByb2Nlc3MKIGN1cnJlbnRfcHJvY2VzcyA9IHRocmVhZGluZy5jdXJyZW50X3RocmVhZAogY3VycmVudF9wcm9jZXNzKCkuX2NoaWxkcmVuID0gd2Vha3JlZi5XZWFrS2V5RGljdGlvbmFyeSgpCmRpZmYgLS1naXQgYS9MaWIvbXVsdGlwcm9jZXNzaW5nL2ZvcmtpbmcucHkgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL2ZvcmtpbmcucHkKaW5kZXggNGUyNGQ2YS4uYjdkZTU2NyAxMDA2NDQKLS0tIGEvTGliL211bHRpcHJvY2Vzc2luZy9mb3JraW5nLnB5CisrKyBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvZm9ya2luZy5weQpAQCAtMTAwLDExICsxMDAsMTIgQEAKICMKIAogaWYgc3lzLnBsYXRmb3JtICE9ICd3aW4zMic6Ci0gICAgaW1wb3J0IHRpbWUKKyAgICBpbXBvcnQgc2VsZWN0CiAKICAgICBleGl0ID0gb3MuX2V4aXQKICAgICBkdXBsaWNhdGUgPSBvcy5kdXAKICAgICBjbG9zZSA9IG9zLmNsb3NlCisgICAgX3NlbGVjdCA9IHV0aWwuX2VpbnRyX3JldHJ5KHNlbGVjdC5zZWxlY3QpCiAKICAgICAjCiAgICAgIyBXZSBkZWZpbmUgYSBQb3BlbiBjbGFzcyBzaW1pbGFyIHRvIHRoZSBvbmUgZnJvbSBzdWJwcm9jZXNzLCBidXQKQEAgLTExOCwxNCArMTE5LDIzIEBACiAgICAgICAgICAgICBzeXMuc3RkZXJyLmZsdXNoKCkKICAgICAgICAgICAgIHNlbGYucmV0dXJuY29kZSA9IE5vbmUKIAorICAgICAgICAgICAgciwgdyA9IG9zLnBpcGUoKQorICAgICAgICAgICAgc2VsZi5zZW50aW5lbCA9IHIKKwogICAgICAgICAgICAgc2VsZi5waWQgPSBvcy5mb3JrKCkKICAgICAgICAgICAgIGlmIHNlbGYucGlkID09IDA6CisgICAgICAgICAgICAgICAgb3MuY2xvc2UocikKICAgICAgICAgICAgICAgICBpZiAncmFuZG9tJyBpbiBzeXMubW9kdWxlczoKICAgICAgICAgICAgICAgICAgICAgaW1wb3J0IHJhbmRvbQogICAgICAgICAgICAgICAgICAgICByYW5kb20uc2VlZCgpCiAgICAgICAgICAgICAgICAgY29kZSA9IHByb2Nlc3Nfb2JqLl9ib290c3RyYXAoKQogICAgICAgICAgICAgICAgIG9zLl9leGl0KGNvZGUpCiAKKyAgICAgICAgICAgICMgYHdgIHdpbGwgYmUgY2xvc2VkIHdoZW4gdGhlIGNoaWxkIGV4aXRzLCBhdCB3aGljaCBwb2ludCBgcmAKKyAgICAgICAgICAgICMgd2lsbCBiZWNvbWUgcmVhZHkgZm9yIHJlYWRpbmcgKHVzaW5nIGUuZy4gc2VsZWN0KCkpLgorICAgICAgICAgICAgb3MuY2xvc2UodykKKyAgICAgICAgICAgIHV0aWwuRmluYWxpemUoc2VsZiwgb3MuY2xvc2UsIChyLCkpCisKICAgICAgICAgZGVmIHBvbGwoc2VsZiwgZmxhZz1vcy5XTk9IQU5HKToKICAgICAgICAgICAgIGlmIHNlbGYucmV0dXJuY29kZSBpcyBOb25lOgogICAgICAgICAgICAgICAgIHRyeToKQEAgLTE0MywyNiArMTUzLDIwIEBACiAgICAgICAgICAgICByZXR1cm4gc2VsZi5yZXR1cm5jb2RlCiAKICAgICAgICAgZGVmIHdhaXQoc2VsZiwgdGltZW91dD1Ob25lKToKLSAgICAgICAgICAgIGlmIHRpbWVvdXQgaXMgTm9uZToKLSAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5wb2xsKDApCi0gICAgICAgICAgICBkZWFkbGluZSA9IHRpbWUudGltZSgpICsgdGltZW91dAotICAgICAgICAgICAgZGVsYXkgPSAwLjAwMDUKLSAgICAgICAgICAgIHdoaWxlIDE6Ci0gICAgICAgICAgICAgICAgcmVzID0gc2VsZi5wb2xsKCkKLSAgICAgICAgICAgICAgICBpZiByZXMgaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgcmVtYWluaW5nID0gZGVhZGxpbmUgLSB0aW1lLnRpbWUoKQotICAgICAgICAgICAgICAgIGlmIHJlbWFpbmluZyA8PSAwOgotICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgIGRlbGF5ID0gbWluKGRlbGF5ICogMiwgcmVtYWluaW5nLCAwLjA1KQotICAgICAgICAgICAgICAgIHRpbWUuc2xlZXAoZGVsYXkpCi0gICAgICAgICAgICByZXR1cm4gcmVzCisgICAgICAgICAgICBpZiBzZWxmLnJldHVybmNvZGUgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBpZiB0aW1lb3V0IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgICAgICByID0gX3NlbGVjdChbc2VsZi5zZW50aW5lbF0sIFtdLCBbXSwgdGltZW91dClbMF0KKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IHI6CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICAgICAgICAgICMgVGhpcyBzaG91bGRuJ3QgYmxvY2sgaWYgc2VsZWN0KCkgcmV0dXJuZWQgc3VjY2Vzc2Z1bGx5LgorICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLnBvbGwob3MuV05PSEFORyBpZiB0aW1lb3V0ID09IDAuMCBlbHNlIDApCisgICAgICAgICAgICByZXR1cm4gc2VsZi5yZXR1cm5jb2RlCiAKICAgICAgICAgZGVmIHRlcm1pbmF0ZShzZWxmKToKICAgICAgICAgICAgIGlmIHNlbGYucmV0dXJuY29kZSBpcyBOb25lOgogICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgb3Mua2lsbChzZWxmLnBpZCwgc2lnbmFsLlNJR1RFUk0pCi0gICAgICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKKyAgICAgICAgICAgICAgICBleGNlcHQgT1NFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi53YWl0KHRpbWVvdXQ9MC4xKSBpcyBOb25lOgogICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKIApAQCAtMTc4LDExICsxODIsOSBAQAogICAgIGltcG9ydCBfdGhyZWFkCiAgICAgaW1wb3J0IG1zdmNydAogICAgIGltcG9ydCBfc3VicHJvY2VzcwotICAgIGltcG9ydCB0aW1lCiAKLSAgICBmcm9tIHBpY2tsZSBpbXBvcnQgZHVtcCwgbG9hZCwgSElHSEVTVF9QUk9UT0NPTAotICAgIGZyb20gX211bHRpcHJvY2Vzc2luZyBpbXBvcnQgd2luMzIsIENvbm5lY3Rpb24sIFBpcGVDb25uZWN0aW9uCi0gICAgZnJvbSAudXRpbCBpbXBvcnQgRmluYWxpemUKKyAgICBmcm9tIHBpY2tsZSBpbXBvcnQgbG9hZCwgSElHSEVTVF9QUk9UT0NPTAorICAgIGZyb20gX211bHRpcHJvY2Vzc2luZyBpbXBvcnQgd2luMzIKIAogICAgIGRlZiBkdW1wKG9iaiwgZmlsZSwgcHJvdG9jb2w9Tm9uZSk6CiAgICAgICAgIEZvcmtpbmdQaWNrbGVyKGZpbGUsIHByb3RvY29sKS5kdW1wKG9iaikKQEAgLTI1Niw2ICsyNTgsNyBAQAogICAgICAgICAgICAgc2VsZi5waWQgPSBwaWQKICAgICAgICAgICAgIHNlbGYucmV0dXJuY29kZSA9IE5vbmUKICAgICAgICAgICAgIHNlbGYuX2hhbmRsZSA9IGhwCisgICAgICAgICAgICBzZWxmLnNlbnRpbmVsID0gaW50KGhwKQogCiAgICAgICAgICAgICAjIHNlbmQgaW5mb3JtYXRpb24gdG8gY2hpbGQKICAgICAgICAgICAgIHByZXBfZGF0YSA9IGdldF9wcmVwYXJhdGlvbl9kYXRhKHByb2Nlc3Nfb2JqLl9uYW1lKQpAQCAtNDA5LDYgKzQxMiw5IEBACiAgICAgIyBNYWtlIChQaXBlKUNvbm5lY3Rpb24gcGlja2xhYmxlCiAgICAgIwogCisgICAgIyBMYXRlIGltcG9ydCBiZWNhdXNlIG9mIGNpcmN1bGFyIGltcG9ydAorICAgIGZyb20gLmNvbm5lY3Rpb24gaW1wb3J0IENvbm5lY3Rpb24sIFBpcGVDb25uZWN0aW9uCisKICAgICBkZWYgcmVkdWNlX2Nvbm5lY3Rpb24oY29ubik6CiAgICAgICAgIGlmIG5vdCBQb3Blbi50aHJlYWRfaXNfc3Bhd25pbmcoKToKICAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigKZGlmZiAtLWdpdCBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvaGVhcC5weSBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvaGVhcC5weQppbmRleCAwYTI1ZWYwLi43MzY2YmQyIDEwMDY0NAotLS0gYS9MaWIvbXVsdGlwcm9jZXNzaW5nL2hlYXAucHkKKysrIGIvTGliL211bHRpcHJvY2Vzc2luZy9oZWFwLnB5CkBAIC0zNCw3ICszNCw2IEBACiAKIGltcG9ydCBiaXNlY3QKIGltcG9ydCBtbWFwCi1pbXBvcnQgdGVtcGZpbGUKIGltcG9ydCBvcwogaW1wb3J0IHN5cwogaW1wb3J0IHRocmVhZGluZwpkaWZmIC0tZ2l0IGEvTGliL211bHRpcHJvY2Vzc2luZy9tYW5hZ2Vycy5weSBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvbWFuYWdlcnMucHkKaW5kZXggNTU4OGVhZC4uZWFmOTEyYyAxMDA2NDQKLS0tIGEvTGliL211bHRpcHJvY2Vzc2luZy9tYW5hZ2Vycy5weQorKysgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL21hbmFnZXJzLnB5CkBAIC0zOSwxOSArMzksMTUgQEAKICMgSW1wb3J0cwogIwogCi1pbXBvcnQgb3MKIGltcG9ydCBzeXMKLWltcG9ydCB3ZWFrcmVmCiBpbXBvcnQgdGhyZWFkaW5nCiBpbXBvcnQgYXJyYXkKIGltcG9ydCBxdWV1ZQogCiBmcm9tIHRyYWNlYmFjayBpbXBvcnQgZm9ybWF0X2V4YwotZnJvbSBwaWNrbGUgaW1wb3J0IFBpY2tsaW5nRXJyb3IKIGZyb20gbXVsdGlwcm9jZXNzaW5nIGltcG9ydCBQcm9jZXNzLCBjdXJyZW50X3Byb2Nlc3MsIGFjdGl2ZV9jaGlsZHJlbiwgUG9vbCwgdXRpbCwgY29ubmVjdGlvbgogZnJvbSBtdWx0aXByb2Nlc3NpbmcucHJvY2VzcyBpbXBvcnQgQXV0aGVudGljYXRpb25TdHJpbmcKLWZyb20gbXVsdGlwcm9jZXNzaW5nLmZvcmtpbmcgaW1wb3J0IGV4aXQsIFBvcGVuLCBhc3NlcnRfc3Bhd25pbmcsIEZvcmtpbmdQaWNrbGVyCi1mcm9tIG11bHRpcHJvY2Vzc2luZy51dGlsIGltcG9ydCBGaW5hbGl6ZSwgaW5mbworZnJvbSBtdWx0aXByb2Nlc3NpbmcuZm9ya2luZyBpbXBvcnQgZXhpdCwgUG9wZW4sIEZvcmtpbmdQaWNrbGVyCiAKICMKICMgUmVnaXN0ZXIgc29tZSB0aGluZ3MgZm9yIHBpY2tsaW5nCkBAIC0xMDcwLDExICsxMDY2LDEyIEBACiAKIFBvb2xQcm94eSA9IE1ha2VQcm94eVR5cGUoJ1Bvb2xQcm94eScsICgKICAgICAnYXBwbHknLCAnYXBwbHlfYXN5bmMnLCAnY2xvc2UnLCAnaW1hcCcsICdpbWFwX3Vub3JkZXJlZCcsICdqb2luJywKLSAgICAnbWFwJywgJ21hcF9hc3luYycsICd0ZXJtaW5hdGUnCisgICAgJ21hcCcsICdtYXBfYXN5bmMnLCAnc3Rhcm1hcCcsICdzdGFybWFwX2FzeW5jJywgJ3Rlcm1pbmF0ZScKICAgICApKQogUG9vbFByb3h5Ll9tZXRob2RfdG9fdHlwZWlkXyA9IHsKICAgICAnYXBwbHlfYXN5bmMnOiAnQXN5bmNSZXN1bHQnLAogICAgICdtYXBfYXN5bmMnOiAnQXN5bmNSZXN1bHQnLAorICAgICdzdGFybWFwX2FzeW5jJzogJ0FzeW5jUmVzdWx0JywKICAgICAnaW1hcCc6ICdJdGVyYXRvcicsCiAgICAgJ2ltYXBfdW5vcmRlcmVkJzogJ0l0ZXJhdG9yJwogICAgIH0KZGlmZiAtLWdpdCBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvcG9vbC5weSBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvcG9vbC5weQppbmRleCAwYzI5ZTY0Li43MDM5ZDE2IDEwMDY0NAotLS0gYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3Bvb2wucHkKKysrIGIvTGliL211bHRpcHJvY2Vzc2luZy9wb29sLnB5CkBAIC02NCw2ICs2NCw5IEBACiBkZWYgbWFwc3RhcihhcmdzKToKICAgICByZXR1cm4gbGlzdChtYXAoKmFyZ3MpKQogCitkZWYgc3Rhcm1hcHN0YXIoYXJncyk6CisgICAgcmV0dXJuIGxpc3QoaXRlcnRvb2xzLnN0YXJtYXAoYXJnc1swXSwgYXJnc1sxXSkpCisKICMKICMgQ29kZSBydW4gYnkgd29ya2VyIHByb2Nlc3NlcwogIwpAQCAtMjQ4LDcgKzI1MSwyNSBAQAogICAgICAgICBpbiBhIGxpc3QgdGhhdCBpcyByZXR1cm5lZC4KICAgICAgICAgJycnCiAgICAgICAgIGFzc2VydCBzZWxmLl9zdGF0ZSA9PSBSVU4KLSAgICAgICAgcmV0dXJuIHNlbGYubWFwX2FzeW5jKGZ1bmMsIGl0ZXJhYmxlLCBjaHVua3NpemUpLmdldCgpCisgICAgICAgIHJldHVybiBzZWxmLl9tYXBfYXN5bmMoZnVuYywgaXRlcmFibGUsIG1hcHN0YXIsIGNodW5rc2l6ZSkuZ2V0KCkKKworICAgIGRlZiBzdGFybWFwKHNlbGYsIGZ1bmMsIGl0ZXJhYmxlLCBjaHVua3NpemU9Tm9uZSk6CisgICAgICAgICcnJworICAgICAgICBMaWtlIGBtYXAoKWAgbWV0aG9kIGJ1dCB0aGUgZWxlbWVudHMgb2YgdGhlIGBpdGVyYWJsZWAgYXJlIGV4cGVjdGVkIHRvCisgICAgICAgIGJlIGl0ZXJhYmxlcyBhcyB3ZWxsIGFuZCB3aWxsIGJlIHVucGFja2VkIGFzIGFyZ3VtZW50cy4gSGVuY2UKKyAgICAgICAgYGZ1bmNgIGFuZCAoYSwgYikgYmVjb21lcyBmdW5jKGEsIGIpLgorICAgICAgICAnJycKKyAgICAgICAgYXNzZXJ0IHNlbGYuX3N0YXRlID09IFJVTgorICAgICAgICByZXR1cm4gc2VsZi5fbWFwX2FzeW5jKGZ1bmMsIGl0ZXJhYmxlLCBzdGFybWFwc3RhciwgY2h1bmtzaXplKS5nZXQoKQorCisgICAgZGVmIHN0YXJtYXBfYXN5bmMoc2VsZiwgZnVuYywgaXRlcmFibGUsIGNodW5rc2l6ZT1Ob25lLCBjYWxsYmFjaz1Ob25lLAorICAgICAgICAgICAgZXJyb3JfY2FsbGJhY2s9Tm9uZSk6CisgICAgICAgICcnJworICAgICAgICBBc3luY2hyb25vdXMgdmVyc2lvbiBvZiBgc3Rhcm1hcCgpYCBtZXRob2QuCisgICAgICAgICcnJworICAgICAgICBhc3NlcnQgc2VsZi5fc3RhdGUgPT0gUlVOCisgICAgICAgIHJldHVybiBzZWxmLl9tYXBfYXN5bmMoZnVuYywgaXRlcmFibGUsIHN0YXJtYXBzdGFyLCBjaHVua3NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2ssIGVycm9yX2NhbGxiYWNrKQogCiAgICAgZGVmIGltYXAoc2VsZiwgZnVuYywgaXRlcmFibGUsIGNodW5rc2l6ZT0xKToKICAgICAgICAgJycnCkBAIC0zMDIsNiArMzIzLDEzIEBACiAgICAgICAgIEFzeW5jaHJvbm91cyB2ZXJzaW9uIG9mIGBtYXAoKWAgbWV0aG9kLgogICAgICAgICAnJycKICAgICAgICAgYXNzZXJ0IHNlbGYuX3N0YXRlID09IFJVTgorICAgICAgICByZXR1cm4gc2VsZi5fbWFwX2FzeW5jKGZ1bmMsIGl0ZXJhYmxlLCBtYXBzdGFyLCBjaHVua3NpemUpCisKKyAgICBkZWYgX21hcF9hc3luYyhzZWxmLCBmdW5jLCBpdGVyYWJsZSwgbWFwcGVyLCBjaHVua3NpemU9Tm9uZSwgY2FsbGJhY2s9Tm9uZSwKKyAgICAgICAgICAgIGVycm9yX2NhbGxiYWNrPU5vbmUpOgorICAgICAgICAnJycKKyAgICAgICAgSGVscGVyIGZ1bmN0aW9uIHRvIGltcGxlbWVudCBtYXAsIHN0YXJtYXAgYW5kIHRoZWlyIGFzeW5jIGNvdW50ZXJwYXJ0cy4KKyAgICAgICAgJycnCiAgICAgICAgIGlmIG5vdCBoYXNhdHRyKGl0ZXJhYmxlLCAnX19sZW5fXycpOgogICAgICAgICAgICAgaXRlcmFibGUgPSBsaXN0KGl0ZXJhYmxlKQogCkBAIC0zMTUsNyArMzQzLDcgQEAKICAgICAgICAgdGFza19iYXRjaGVzID0gUG9vbC5fZ2V0X3Rhc2tzKGZ1bmMsIGl0ZXJhYmxlLCBjaHVua3NpemUpCiAgICAgICAgIHJlc3VsdCA9IE1hcFJlc3VsdChzZWxmLl9jYWNoZSwgY2h1bmtzaXplLCBsZW4oaXRlcmFibGUpLCBjYWxsYmFjaywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yX2NhbGxiYWNrPWVycm9yX2NhbGxiYWNrKQotICAgICAgICBzZWxmLl90YXNrcXVldWUucHV0KCgoKHJlc3VsdC5fam9iLCBpLCBtYXBzdGFyLCAoeCwpLCB7fSkKKyAgICAgICAgc2VsZi5fdGFza3F1ZXVlLnB1dCgoKChyZXN1bHQuX2pvYiwgaSwgbWFwcGVyLCAoeCwpLCB7fSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBpLCB4IGluIGVudW1lcmF0ZSh0YXNrX2JhdGNoZXMpKSwgTm9uZSkpCiAgICAgICAgIHJldHVybiByZXN1bHQKIApkaWZmIC0tZ2l0IGEvTGliL211bHRpcHJvY2Vzc2luZy9wcm9jZXNzLnB5IGIvTGliL211bHRpcHJvY2Vzc2luZy9wcm9jZXNzLnB5CmluZGV4IDJiNjFlZTkuLmI1OTlmMTEgMTAwNjQ0Ci0tLSBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvcHJvY2Vzcy5weQorKysgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL3Byb2Nlc3MucHkKQEAgLTkyLDEyICs5MiwxNiBAQAogICAgICcnJwogICAgIF9Qb3BlbiA9IE5vbmUKIAotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBncm91cD1Ob25lLCB0YXJnZXQ9Tm9uZSwgbmFtZT1Ob25lLCBhcmdzPSgpLCBrd2FyZ3M9e30pOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBncm91cD1Ob25lLCB0YXJnZXQ9Tm9uZSwgbmFtZT1Ob25lLCBhcmdzPSgpLCBrd2FyZ3M9e30sCisgICAgICAgICAgICAgICAgICosIGRhZW1vbj1Ob25lKToKICAgICAgICAgYXNzZXJ0IGdyb3VwIGlzIE5vbmUsICdncm91cCBhcmd1bWVudCBtdXN0IGJlIE5vbmUgZm9yIG5vdycKICAgICAgICAgY291bnQgPSBuZXh0KF9jdXJyZW50X3Byb2Nlc3MuX2NvdW50ZXIpCiAgICAgICAgIHNlbGYuX2lkZW50aXR5ID0gX2N1cnJlbnRfcHJvY2Vzcy5faWRlbnRpdHkgKyAoY291bnQsKQogICAgICAgICBzZWxmLl9hdXRoa2V5ID0gX2N1cnJlbnRfcHJvY2Vzcy5fYXV0aGtleQotICAgICAgICBzZWxmLl9kYWVtb25pYyA9IF9jdXJyZW50X3Byb2Nlc3MuX2RhZW1vbmljCisgICAgICAgIGlmIGRhZW1vbiBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2RhZW1vbmljID0gZGFlbW9uCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLl9kYWVtb25pYyA9IF9jdXJyZW50X3Byb2Nlc3MuX2RhZW1vbmljCiAgICAgICAgIHNlbGYuX3RlbXBkaXIgPSBfY3VycmVudF9wcm9jZXNzLl90ZW1wZGlyCiAgICAgICAgIHNlbGYuX3BhcmVudF9waWQgPSBvcy5nZXRwaWQoKQogICAgICAgICBzZWxmLl9wb3BlbiA9IE5vbmUKQEAgLTEzMCw2ICsxMzQsNyBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgZnJvbSAuZm9ya2luZyBpbXBvcnQgUG9wZW4KICAgICAgICAgc2VsZi5fcG9wZW4gPSBQb3BlbihzZWxmKQorICAgICAgICBzZWxmLl9zZW50aW5lbCA9IHNlbGYuX3BvcGVuLnNlbnRpbmVsCiAgICAgICAgIF9jdXJyZW50X3Byb2Nlc3MuX2NoaWxkcmVuLmFkZChzZWxmKQogCiAgICAgZGVmIHRlcm1pbmF0ZShzZWxmKToKQEAgLTIxNiw2ICsyMjEsMTcgQEAKIAogICAgIHBpZCA9IGlkZW50CiAKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgc2VudGluZWwoc2VsZik6CisgICAgICAgICcnJworICAgICAgICBSZXR1cm4gYSBmaWxlIGRlc2NyaXB0b3IgKFVuaXgpIG9yIGhhbmRsZSAoV2luZG93cykgc3VpdGFibGUgZm9yCisgICAgICAgIHdhaXRpbmcgZm9yIHByb2Nlc3MgdGVybWluYXRpb24uCisgICAgICAgICcnJworICAgICAgICB0cnk6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fc2VudGluZWwKKyAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigicHJvY2VzcyBub3Qgc3RhcnRlZCIpCisKICAgICBkZWYgX19yZXByX18oc2VsZik6CiAgICAgICAgIGlmIHNlbGYgaXMgX2N1cnJlbnRfcHJvY2VzczoKICAgICAgICAgICAgIHN0YXR1cyA9ICdzdGFydGVkJwpkaWZmIC0tZ2l0IGEvTGliL211bHRpcHJvY2Vzc2luZy9xdWV1ZXMucHkgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL3F1ZXVlcy5weQppbmRleCA1MWQ5OTEyLi5jNGY5Y2RhIDEwMDY0NAotLS0gYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3F1ZXVlcy5weQorKysgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL3F1ZXVlcy5weQpAQCAtMzksMTIgKzM5LDEyIEBACiBpbXBvcnQgdGhyZWFkaW5nCiBpbXBvcnQgY29sbGVjdGlvbnMKIGltcG9ydCB0aW1lCi1pbXBvcnQgYXRleGl0CiBpbXBvcnQgd2Vha3JlZgoraW1wb3J0IGVycm5vCiAKIGZyb20gcXVldWUgaW1wb3J0IEVtcHR5LCBGdWxsCiBpbXBvcnQgX211bHRpcHJvY2Vzc2luZwotZnJvbSBtdWx0aXByb2Nlc3NpbmcgaW1wb3J0IFBpcGUKK2Zyb20gbXVsdGlwcm9jZXNzaW5nLmNvbm5lY3Rpb24gaW1wb3J0IFBpcGUsIFNlbnRpbmVsUmVhZHkKIGZyb20gbXVsdGlwcm9jZXNzaW5nLnN5bmNocm9uaXplIGltcG9ydCBMb2NrLCBCb3VuZGVkU2VtYXBob3JlLCBTZW1hcGhvcmUsIENvbmRpdGlvbgogZnJvbSBtdWx0aXByb2Nlc3NpbmcudXRpbCBpbXBvcnQgZGVidWcsIGluZm8sIEZpbmFsaXplLCByZWdpc3Rlcl9hZnRlcl9mb3JrCiBmcm9tIG11bHRpcHJvY2Vzc2luZy5mb3JraW5nIGltcG9ydCBhc3NlcnRfc3Bhd25pbmcKQEAgLTY3LDYgKzY3LDggQEAKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHNlbGYuX3dsb2NrID0gTG9jaygpCiAgICAgICAgIHNlbGYuX3NlbSA9IEJvdW5kZWRTZW1hcGhvcmUobWF4c2l6ZSkKKyAgICAgICAgIyBGb3IgdXNlIGJ5IGNvbmN1cnJlbnQuZnV0dXJlcworICAgICAgICBzZWxmLl9pZ25vcmVfZXBpcGUgPSBGYWxzZQogCiAgICAgICAgIHNlbGYuX2FmdGVyX2ZvcmsoKQogCkBAIC03NSwxMSArNzcsMTEgQEAKIAogICAgIGRlZiBfX2dldHN0YXRlX18oc2VsZik6CiAgICAgICAgIGFzc2VydF9zcGF3bmluZyhzZWxmKQotICAgICAgICByZXR1cm4gKHNlbGYuX21heHNpemUsIHNlbGYuX3JlYWRlciwgc2VsZi5fd3JpdGVyLAorICAgICAgICByZXR1cm4gKHNlbGYuX2lnbm9yZV9lcGlwZSwgc2VsZi5fbWF4c2l6ZSwgc2VsZi5fcmVhZGVyLCBzZWxmLl93cml0ZXIsCiAgICAgICAgICAgICAgICAgc2VsZi5fcmxvY2ssIHNlbGYuX3dsb2NrLCBzZWxmLl9zZW0sIHNlbGYuX29waWQpCiAKICAgICBkZWYgX19zZXRzdGF0ZV9fKHNlbGYsIHN0YXRlKToKLSAgICAgICAgKHNlbGYuX21heHNpemUsIHNlbGYuX3JlYWRlciwgc2VsZi5fd3JpdGVyLAorICAgICAgICAoc2VsZi5faWdub3JlX2VwaXBlLCBzZWxmLl9tYXhzaXplLCBzZWxmLl9yZWFkZXIsIHNlbGYuX3dyaXRlciwKICAgICAgICAgIHNlbGYuX3Jsb2NrLCBzZWxmLl93bG9jaywgc2VsZi5fc2VtLCBzZWxmLl9vcGlkKSA9IHN0YXRlCiAgICAgICAgIHNlbGYuX2FmdGVyX2ZvcmsoKQogCkBAIC0xODIsNyArMTg0LDcgQEAKICAgICAgICAgc2VsZi5fdGhyZWFkID0gdGhyZWFkaW5nLlRocmVhZCgKICAgICAgICAgICAgIHRhcmdldD1RdWV1ZS5fZmVlZCwKICAgICAgICAgICAgIGFyZ3M9KHNlbGYuX2J1ZmZlciwgc2VsZi5fbm90ZW1wdHksIHNlbGYuX3NlbmQsCi0gICAgICAgICAgICAgICAgICBzZWxmLl93bG9jaywgc2VsZi5fd3JpdGVyLmNsb3NlKSwKKyAgICAgICAgICAgICAgICAgIHNlbGYuX3dsb2NrLCBzZWxmLl93cml0ZXIuY2xvc2UsIHNlbGYuX2lnbm9yZV9lcGlwZSksCiAgICAgICAgICAgICBuYW1lPSdRdWV1ZUZlZWRlclRocmVhZCcKICAgICAgICAgICAgICkKICAgICAgICAgc2VsZi5fdGhyZWFkLmRhZW1vbiA9IFRydWUKQEAgLTIzMyw3ICsyMzUsNyBAQAogICAgICAgICAgICAgbm90ZW1wdHkucmVsZWFzZSgpCiAKICAgICBAc3RhdGljbWV0aG9kCi0gICAgZGVmIF9mZWVkKGJ1ZmZlciwgbm90ZW1wdHksIHNlbmQsIHdyaXRlbG9jaywgY2xvc2UpOgorICAgIGRlZiBfZmVlZChidWZmZXIsIG5vdGVtcHR5LCBzZW5kLCB3cml0ZWxvY2ssIGNsb3NlLCBpZ25vcmVfZXBpcGUpOgogICAgICAgICBkZWJ1Zygnc3RhcnRpbmcgdGhyZWFkIHRvIGZlZWQgZGF0YSB0byBwaXBlJykKICAgICAgICAgZnJvbSAudXRpbCBpbXBvcnQgaXNfZXhpdGluZwogCkBAIC0yNzUsNiArMjc3LDggQEAKICAgICAgICAgICAgICAgICBleGNlcHQgSW5kZXhFcnJvcjoKICAgICAgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CisgICAgICAgICAgICBpZiBpZ25vcmVfZXBpcGUgYW5kIGdldGF0dHIoZSwgJ2Vycm5vJywgMCkgPT0gZXJybm8uRVBJUEU6CisgICAgICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgICAgICAjIFNpbmNlIHRoaXMgcnVucyBpbiBhIGRhZW1vbiB0aHJlYWQgdGhlIHJlc291cmNlcyBpdCB1c2VzCiAgICAgICAgICAgICAjIG1heSBiZSBiZWNvbWUgdW51c2FibGUgd2hpbGUgdGhlIHByb2Nlc3MgaXMgY2xlYW5pbmcgdXAuCiAgICAgICAgICAgICAjIFdlIGlnbm9yZSBlcnJvcnMgd2hpY2ggaGFwcGVuIGFmdGVyIHRoZSBwcm9jZXNzIGhhcwpAQCAtMzc2LDEwICszODAsMTAgQEAKICAgICBkZWYgX21ha2VfbWV0aG9kcyhzZWxmKToKICAgICAgICAgcmVjdiA9IHNlbGYuX3JlYWRlci5yZWN2CiAgICAgICAgIHJhY3F1aXJlLCBycmVsZWFzZSA9IHNlbGYuX3Jsb2NrLmFjcXVpcmUsIHNlbGYuX3Jsb2NrLnJlbGVhc2UKLSAgICAgICAgZGVmIGdldCgpOgorICAgICAgICBkZWYgZ2V0KCosIHNlbnRpbmVscz1Ob25lKToKICAgICAgICAgICAgIHJhY3F1aXJlKCkKICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICByZXR1cm4gcmVjdigpCisgICAgICAgICAgICAgICAgcmV0dXJuIHJlY3Yoc2VudGluZWxzKQogICAgICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgICAgICBycmVsZWFzZSgpCiAgICAgICAgIHNlbGYuZ2V0ID0gZ2V0CmRpZmYgLS1naXQgYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3JlZHVjdGlvbi5weSBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvcmVkdWN0aW9uLnB5CmluZGV4IDZlNWU1YmMuLmRkYTRhNDEgMTAwNjQ0Ci0tLSBhL0xpYi9tdWx0aXByb2Nlc3NpbmcvcmVkdWN0aW9uLnB5CisrKyBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvcmVkdWN0aW9uLnB5CkBAIC0zOSwxOSArMzksMjAgQEAKIGltcG9ydCBzeXMKIGltcG9ydCBzb2NrZXQKIGltcG9ydCB0aHJlYWRpbmcKK2ltcG9ydCBzdHJ1Y3QKIAotaW1wb3J0IF9tdWx0aXByb2Nlc3NpbmcKIGZyb20gbXVsdGlwcm9jZXNzaW5nIGltcG9ydCBjdXJyZW50X3Byb2Nlc3MKIGZyb20gbXVsdGlwcm9jZXNzaW5nLmZvcmtpbmcgaW1wb3J0IFBvcGVuLCBkdXBsaWNhdGUsIGNsb3NlLCBGb3JraW5nUGlja2xlcgogZnJvbSBtdWx0aXByb2Nlc3NpbmcudXRpbCBpbXBvcnQgcmVnaXN0ZXJfYWZ0ZXJfZm9yaywgZGVidWcsIHN1Yl9kZWJ1ZwotZnJvbSBtdWx0aXByb2Nlc3NpbmcuY29ubmVjdGlvbiBpbXBvcnQgQ2xpZW50LCBMaXN0ZW5lcgorZnJvbSBtdWx0aXByb2Nlc3NpbmcuY29ubmVjdGlvbiBpbXBvcnQgQ2xpZW50LCBMaXN0ZW5lciwgQ29ubmVjdGlvbgogCiAKICMKICMKICMKIAotaWYgbm90KHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInIG9yIGhhc2F0dHIoX211bHRpcHJvY2Vzc2luZywgJ3JlY3ZmZCcpKToKK2lmIG5vdChzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJyBvciAoaGFzYXR0cihzb2NrZXQsICdDTVNHX0xFTicpIGFuZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNhdHRyKHNvY2tldCwgJ1NDTV9SSUdIVFMnKSkpOgogICAgIHJhaXNlIEltcG9ydEVycm9yKCdwaWNrbGluZyBvZiBjb25uZWN0aW9ucyBub3Qgc3VwcG9ydGVkJykKIAogIwpAQCAtNTksNyArNjAsNiBAQAogIwogCiBpZiBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzoKLSAgICBpbXBvcnQgX3N1YnByb2Nlc3MKICAgICBmcm9tIF9tdWx0aXByb2Nlc3NpbmcgaW1wb3J0IHdpbjMyCiAKICAgICBkZWYgc2VuZF9oYW5kbGUoY29ubiwgaGFuZGxlLCBkZXN0aW5hdGlvbl9waWQpOgpAQCAtNzcsMTAgKzc3LDIzIEBACiAKIGVsc2U6CiAgICAgZGVmIHNlbmRfaGFuZGxlKGNvbm4sIGhhbmRsZSwgZGVzdGluYXRpb25fcGlkKToKLSAgICAgICAgX211bHRpcHJvY2Vzc2luZy5zZW5kZmQoY29ubi5maWxlbm8oKSwgaGFuZGxlKQorICAgICAgICB3aXRoIHNvY2tldC5mcm9tZmQoY29ubi5maWxlbm8oKSwgc29ja2V0LkFGX1VOSVgsIHNvY2tldC5TT0NLX1NUUkVBTSkgYXMgczoKKyAgICAgICAgICAgIHMuc2VuZG1zZyhbYid4J10sIFsoc29ja2V0LlNPTF9TT0NLRVQsIHNvY2tldC5TQ01fUklHSFRTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QucGFjaygiQGkiLCBoYW5kbGUpKV0pCiAKICAgICBkZWYgcmVjdl9oYW5kbGUoY29ubik6Ci0gICAgICAgIHJldHVybiBfbXVsdGlwcm9jZXNzaW5nLnJlY3ZmZChjb25uLmZpbGVubygpKQorICAgICAgICBzaXplID0gc3RydWN0LmNhbGNzaXplKCJAaSIpCisgICAgICAgIHdpdGggc29ja2V0LmZyb21mZChjb25uLmZpbGVubygpLCBzb2NrZXQuQUZfVU5JWCwgc29ja2V0LlNPQ0tfU1RSRUFNKSBhcyBzOgorICAgICAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHMucmVjdm1zZygxLCBzb2NrZXQuQ01TR19MRU4oc2l6ZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEgPSBhbmNkYXRhWzBdCisgICAgICAgICAgICAgICAgaWYgKGNtc2dfbGV2ZWwgPT0gc29ja2V0LlNPTF9TT0NLRVQgYW5kCisgICAgICAgICAgICAgICAgICAgIGNtc2dfdHlwZSA9PSBzb2NrZXQuU0NNX1JJR0hUUyk6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBzdHJ1Y3QudW5wYWNrKCJAaSIsIGNtc2dfZGF0YVs6c2l6ZV0pWzBdCisgICAgICAgICAgICBleGNlcHQgKFZhbHVlRXJyb3IsIEluZGV4RXJyb3IsIHN0cnVjdC5lcnJvcik6CisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCdJbnZhbGlkIGRhdGEgcmVjZWl2ZWQnKQorCiAKICMKICMgU3VwcG9ydCBmb3IgYSBwZXItcHJvY2VzcyBzZXJ2ZXIgdGhyZWFkIHdoaWNoIGNhY2hlcyBwaWNrbGVkIGhhbmRsZXMKQEAgLTE1OSw3ICsxNzIsNyBAQAogICAgIHJldHVybiBuZXdfaGFuZGxlCiAKICMKLSMgUmVnaXN0ZXIgYF9tdWx0aXByb2Nlc3NpbmcuQ29ubmVjdGlvbmAgd2l0aCBgRm9ya2luZ1BpY2tsZXJgCisjIFJlZ2lzdGVyIGBDb25uZWN0aW9uYCB3aXRoIGBGb3JraW5nUGlja2xlcmAKICMKIAogZGVmIHJlZHVjZV9jb25uZWN0aW9uKGNvbm4pOgpAQCAtMTY4LDExICsxODEsMTEgQEAKIAogZGVmIHJlYnVpbGRfY29ubmVjdGlvbihyZWR1Y2VkX2hhbmRsZSwgcmVhZGFibGUsIHdyaXRhYmxlKToKICAgICBoYW5kbGUgPSByZWJ1aWxkX2hhbmRsZShyZWR1Y2VkX2hhbmRsZSkKLSAgICByZXR1cm4gX211bHRpcHJvY2Vzc2luZy5Db25uZWN0aW9uKAorICAgIHJldHVybiBDb25uZWN0aW9uKAogICAgICAgICBoYW5kbGUsIHJlYWRhYmxlPXJlYWRhYmxlLCB3cml0YWJsZT13cml0YWJsZQogICAgICAgICApCiAKLUZvcmtpbmdQaWNrbGVyLnJlZ2lzdGVyKF9tdWx0aXByb2Nlc3NpbmcuQ29ubmVjdGlvbiwgcmVkdWNlX2Nvbm5lY3Rpb24pCitGb3JraW5nUGlja2xlci5yZWdpc3RlcihDb25uZWN0aW9uLCByZWR1Y2VfY29ubmVjdGlvbikKIAogIwogIyBSZWdpc3RlciBgc29ja2V0LnNvY2tldGAgd2l0aCBgRm9ya2luZ1BpY2tsZXJgCkBAIC0yMDEsNiArMjE0LDcgQEAKICMKIAogaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CisgICAgZnJvbSBtdWx0aXByb2Nlc3NpbmcuY29ubmVjdGlvbiBpbXBvcnQgUGlwZUNvbm5lY3Rpb24KIAogICAgIGRlZiByZWR1Y2VfcGlwZV9jb25uZWN0aW9uKGNvbm4pOgogICAgICAgICByaCA9IHJlZHVjZV9oYW5kbGUoY29ubi5maWxlbm8oKSkKQEAgLTIwOCw4ICsyMjIsOCBAQAogCiAgICAgZGVmIHJlYnVpbGRfcGlwZV9jb25uZWN0aW9uKHJlZHVjZWRfaGFuZGxlLCByZWFkYWJsZSwgd3JpdGFibGUpOgogICAgICAgICBoYW5kbGUgPSByZWJ1aWxkX2hhbmRsZShyZWR1Y2VkX2hhbmRsZSkKLSAgICAgICAgcmV0dXJuIF9tdWx0aXByb2Nlc3NpbmcuUGlwZUNvbm5lY3Rpb24oCisgICAgICAgIHJldHVybiBQaXBlQ29ubmVjdGlvbigKICAgICAgICAgICAgIGhhbmRsZSwgcmVhZGFibGU9cmVhZGFibGUsIHdyaXRhYmxlPXdyaXRhYmxlCiAgICAgICAgICAgICApCiAKLSAgICBGb3JraW5nUGlja2xlci5yZWdpc3RlcihfbXVsdGlwcm9jZXNzaW5nLlBpcGVDb25uZWN0aW9uLCByZWR1Y2VfcGlwZV9jb25uZWN0aW9uKQorICAgIEZvcmtpbmdQaWNrbGVyLnJlZ2lzdGVyKFBpcGVDb25uZWN0aW9uLCByZWR1Y2VfcGlwZV9jb25uZWN0aW9uKQpkaWZmIC0tZ2l0IGEvTGliL211bHRpcHJvY2Vzc2luZy9zaGFyZWRjdHlwZXMucHkgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL3NoYXJlZGN0eXBlcy5weQppbmRleCAxZTY5NGRhLi41ODI2Mzc5IDEwMDY0NAotLS0gYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3NoYXJlZGN0eXBlcy5weQorKysgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL3NoYXJlZGN0eXBlcy5weQpAQCAtMzIsNyArMzIsNiBAQAogIyBTVUNIIERBTUFHRS4KICMKIAotaW1wb3J0IHN5cwogaW1wb3J0IGN0eXBlcwogaW1wb3J0IHdlYWtyZWYKIApkaWZmIC0tZ2l0IGEvTGliL211bHRpcHJvY2Vzc2luZy9zeW5jaHJvbml6ZS5weSBiL0xpYi9tdWx0aXByb2Nlc3Npbmcvc3luY2hyb25pemUucHkKaW5kZXggNzBhZTgyNS4uZTM1YmJmZiAxMDA2NDQKLS0tIGEvTGliL211bHRpcHJvY2Vzc2luZy9zeW5jaHJvbml6ZS5weQorKysgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL3N5bmNocm9uaXplLnB5CkBAIC0zNywxNCArMzcsMTEgQEAKICAgICBdCiAKIGltcG9ydCB0aHJlYWRpbmcKLWltcG9ydCBvcwogaW1wb3J0IHN5cwogCi1mcm9tIHRpbWUgaW1wb3J0IHRpbWUgYXMgX3RpbWUsIHNsZWVwIGFzIF9zbGVlcAotCiBpbXBvcnQgX211bHRpcHJvY2Vzc2luZwogZnJvbSBtdWx0aXByb2Nlc3NpbmcucHJvY2VzcyBpbXBvcnQgY3VycmVudF9wcm9jZXNzCi1mcm9tIG11bHRpcHJvY2Vzc2luZy51dGlsIGltcG9ydCBGaW5hbGl6ZSwgcmVnaXN0ZXJfYWZ0ZXJfZm9yaywgZGVidWcKK2Zyb20gbXVsdGlwcm9jZXNzaW5nLnV0aWwgaW1wb3J0IHJlZ2lzdGVyX2FmdGVyX2ZvcmssIGRlYnVnCiBmcm9tIG11bHRpcHJvY2Vzc2luZy5mb3JraW5nIGltcG9ydCBhc3NlcnRfc3Bhd25pbmcsIFBvcGVuCiAKICMgVHJ5IHRvIGltcG9ydCB0aGUgbXAuc3luY2hyb25pemUgbW9kdWxlIGNsZWFubHksIGlmIGl0IGZhaWxzCmRpZmYgLS1naXQgYS9MaWIvbXVsdGlwcm9jZXNzaW5nL3V0aWwucHkgYi9MaWIvbXVsdGlwcm9jZXNzaW5nL3V0aWwucHkKaW5kZXggMzBiN2E4NS4uMGJiYjg3ZSAxMDA2NDQKLS0tIGEvTGliL211bHRpcHJvY2Vzc2luZy91dGlsLnB5CisrKyBiL0xpYi9tdWx0aXByb2Nlc3NpbmcvdXRpbC5weQpAQCAtMzIsNiArMzIsNyBAQAogIyBTVUNIIERBTUFHRS4KICMKIAoraW1wb3J0IGZ1bmN0b29scwogaW1wb3J0IGl0ZXJ0b29scwogaW1wb3J0IHdlYWtyZWYKIGltcG9ydCBhdGV4aXQKQEAgLTg0LDcgKzg1LDcgQEAKICAgICBSZXR1cm5zIGxvZ2dlciB1c2VkIGJ5IG11bHRpcHJvY2Vzc2luZwogICAgICcnJwogICAgIGdsb2JhbCBfbG9nZ2VyCi0gICAgaW1wb3J0IGxvZ2dpbmcsIGF0ZXhpdAorICAgIGltcG9ydCBsb2dnaW5nCiAKICAgICBsb2dnaW5nLl9hY3F1aXJlTG9jaygpCiAgICAgdHJ5OgpAQCAtMTg2LDcgKzE4NywxMSBAQAogCiAgICAgICAgIF9maW5hbGl6ZXJfcmVnaXN0cnlbc2VsZi5fa2V5XSA9IHNlbGYKIAotICAgIGRlZiBfX2NhbGxfXyhzZWxmLCB3cj1Ob25lKToKKyAgICBkZWYgX19jYWxsX18oc2VsZiwgd3I9Tm9uZSwKKyAgICAgICAgICAgICAgICAgIyBOZWVkIHRvIGJpbmQgdGhlc2UgbG9jYWxseSBiZWNhdXNlIHRoZSBnbG9iYWxzIGNhbiBoYXZlCisgICAgICAgICAgICAgICAgICMgYmVlbiBjbGVhcmVkIGF0IHNodXRkb3duCisgICAgICAgICAgICAgICAgIF9maW5hbGl6ZXJfcmVnaXN0cnk9X2ZpbmFsaXplcl9yZWdpc3RyeSwKKyAgICAgICAgICAgICAgICAgc3ViX2RlYnVnPXN1Yl9kZWJ1Zyk6CiAgICAgICAgICcnJwogICAgICAgICBSdW4gdGhlIGNhbGxiYWNrIHVubGVzcyBpdCBoYXMgYWxyZWFkeSBiZWVuIGNhbGxlZCBvciBjYW5jZWxsZWQKICAgICAgICAgJycnCkBAIC0zMTUsMyArMzIwLDE4IEBACiAgICAgICAgIHJlZ2lzdGVyX2FmdGVyX2Zvcmsoc2VsZiwgbGFtYmRhIG9iaiA6IG9iai5fX2RpY3RfXy5jbGVhcigpKQogICAgIGRlZiBfX3JlZHVjZV9fKHNlbGYpOgogICAgICAgICByZXR1cm4gdHlwZShzZWxmKSwgKCkKKworCisjCisjIEF1dG9tYXRpYyByZXRyeSBhZnRlciBFSU5UUgorIworCitkZWYgX2VpbnRyX3JldHJ5KGZ1bmMpOgorICAgIEBmdW5jdG9vbHMud3JhcHMoZnVuYykKKyAgICBkZWYgd3JhcHBlZCgqYXJncywgKiprd2FyZ3MpOgorICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHJldHVybiBmdW5jKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgICAgIGV4Y2VwdCBJbnRlcnJ1cHRlZEVycm9yOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgcmV0dXJuIHdyYXBwZWQKZGlmZiAtLWdpdCBhL0xpYi9ubnRwbGliLnB5IGIvTGliL25udHBsaWIucHkKaW5kZXggYmY2NjczNC4uMTlhNDYyZCAxMDA2NDQKLS0tIGEvTGliL25udHBsaWIucHkKKysrIGIvTGliL25udHBsaWIucHkKQEAgLTM0Niw2ICszNDYsMjAgQEAKICAgICAgICAgIyBMb2cgaW4gYW5kIGVuY3J5cHRpb24gc2V0dXAgb3JkZXIgaXMgbGVmdCB0byBzdWJjbGFzc2VzLgogICAgICAgICBzZWxmLmF1dGhlbnRpY2F0ZWQgPSBGYWxzZQogCisgICAgZGVmIF9fZW50ZXJfXyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYKKworICAgIGRlZiBfX2V4aXRfXyhzZWxmLCAqYXJncyk6CisgICAgICAgIGlzX2Nvbm5lY3RlZCA9IGxhbWJkYTogaGFzYXR0cihzZWxmLCAiZmlsZSIpCisgICAgICAgIGlmIGlzX2Nvbm5lY3RlZCgpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYucXVpdCgpCisgICAgICAgICAgICBleGNlcHQgKHNvY2tldC5lcnJvciwgRU9GRXJyb3IpOgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgaWYgaXNfY29ubmVjdGVkKCk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2Nsb3NlKCkKKwogICAgIGRlZiBnZXR3ZWxjb21lKHNlbGYpOgogICAgICAgICAiIiJHZXQgdGhlIHdlbGNvbWUgbWVzc2FnZSBmcm9tIHRoZSBzZXJ2ZXIKICAgICAgICAgKHRoaXMgaXMgcmVhZCBhbmQgc3F1aXJyZWxlZCBhd2F5IGJ5IF9faW5pdF9fKCkpLgpAQCAtODE0LDcgKzgyOCw3IEBACiAgICAgICAgIC0gbGlzdDogbGlzdCBvZiAobmFtZSx0aXRsZSkgc3RyaW5ncyIiIgogICAgICAgICB3YXJuaW5ncy53YXJuKCJUaGUgWEdUSVRMRSBleHRlbnNpb24gaXMgbm90IGFjdGl2ZWx5IHVzZWQsICIKICAgICAgICAgICAgICAgICAgICAgICAidXNlIGRlc2NyaXB0aW9ucygpIGluc3RlYWQiLAotICAgICAgICAgICAgICAgICAgICAgIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAgICAgICAgICAgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICBsaW5lX3BhdCA9IHJlLmNvbXBpbGUoJ14oW14gXHRdKylbIFx0XSsoLiopJCcpCiAgICAgICAgIHJlc3AsIHJhd19saW5lcyA9IHNlbGYuX2xvbmdjbWRzdHJpbmcoJ1hHVElUTEUgJyArIGdyb3VwLCBmaWxlKQogICAgICAgICBsaW5lcyA9IFtdCkBAIC04MzIsNyArODQ2LDcgQEAKICAgICAgICAgcGF0aDogZGlyZWN0b3J5IHBhdGggdG8gYXJ0aWNsZQogICAgICAgICAiIiIKICAgICAgICAgd2FybmluZ3Mud2FybigiVGhlIFhQQVRIIGV4dGVuc2lvbiBpcyBub3QgYWN0aXZlbHkgdXNlZCIsCi0gICAgICAgICAgICAgICAgICAgICAgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICAgICAgICAgICBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAKICAgICAgICAgcmVzcCA9IHNlbGYuX3Nob3J0Y21kKCdYUEFUSCB7MH0nLmZvcm1hdChpZCkpCiAgICAgICAgIGlmIG5vdCByZXNwLnN0YXJ0c3dpdGgoJzIyMycpOgpkaWZmIC0tZ2l0IGEvTGliL251bWJlcnMucHkgYi9MaWIvbnVtYmVycy5weQppbmRleCBlY2ZhZDdjLi5iMjA2NDU3IDEwMDY0NAotLS0gYS9MaWIvbnVtYmVycy5weQorKysgYi9MaWIvbnVtYmVycy5weQpAQCAtNSw3ICs1LDcgQEAKIAogVE9ETzogRmlsbCBvdXQgbW9yZSBkZXRhaWxlZCBkb2N1bWVudGF0aW9uIG9uIHRoZSBvcGVyYXRvcnMuIiIiCiAKLWZyb20gYWJjIGltcG9ydCBBQkNNZXRhLCBhYnN0cmFjdG1ldGhvZCwgYWJzdHJhY3Rwcm9wZXJ0eQorZnJvbSBhYmMgaW1wb3J0IEFCQ01ldGEsIGFic3RyYWN0bWV0aG9kCiAKIF9fYWxsX18gPSBbIk51bWJlciIsICJDb21wbGV4IiwgIlJlYWwiLCAiUmF0aW9uYWwiLCAiSW50ZWdyYWwiXQogCkBAIC01MCw3ICs1MCw4IEBACiAgICAgICAgICIiIlRydWUgaWYgc2VsZiAhPSAwLiBDYWxsZWQgZm9yIGJvb2woc2VsZikuIiIiCiAgICAgICAgIHJldHVybiBzZWxmICE9IDAKIAotICAgIEBhYnN0cmFjdHByb3BlcnR5CisgICAgQHByb3BlcnR5CisgICAgQGFic3RyYWN0bWV0aG9kCiAgICAgZGVmIHJlYWwoc2VsZik6CiAgICAgICAgICIiIlJldHJpZXZlIHRoZSByZWFsIGNvbXBvbmVudCBvZiB0aGlzIG51bWJlci4KIApAQCAtNTgsNyArNTksOCBAQAogICAgICAgICAiIiIKICAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcgogCi0gICAgQGFic3RyYWN0cHJvcGVydHkKKyAgICBAcHJvcGVydHkKKyAgICBAYWJzdHJhY3RtZXRob2QKICAgICBkZWYgaW1hZyhzZWxmKToKICAgICAgICAgIiIiUmV0cmlldmUgdGhlIGltYWdpbmFyeSBjb21wb25lbnQgb2YgdGhpcyBudW1iZXIuCiAKQEAgLTI3MiwxMSArMjc0LDEzIEBACiAKICAgICBfX3Nsb3RzX18gPSAoKQogCi0gICAgQGFic3RyYWN0cHJvcGVydHkKKyAgICBAcHJvcGVydHkKKyAgICBAYWJzdHJhY3RtZXRob2QKICAgICBkZWYgbnVtZXJhdG9yKHNlbGYpOgogICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCiAKLSAgICBAYWJzdHJhY3Rwcm9wZXJ0eQorICAgIEBwcm9wZXJ0eQorICAgIEBhYnN0cmFjdG1ldGhvZAogICAgIGRlZiBkZW5vbWluYXRvcihzZWxmKToKICAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcgogCmRpZmYgLS1naXQgYS9MaWIvb3Bjb2RlLnB5IGIvTGliL29wY29kZS5weQppbmRleCA4ZTE1ZDEzLi42ZmUyMGM3IDEwMDY0NAotLS0gYS9MaWIvb3Bjb2RlLnB5CisrKyBiL0xpYi9vcGNvZGUucHkKQEAgLTQzLDcgKzQzLDYgQEAKICMgSW5zdHJ1Y3Rpb24gb3Bjb2RlcyBmb3IgY29tcGlsZWQgY29kZQogIyBCbGFuayBsaW5lcyBjb3JyZXNwb25kIHRvIGF2YWlsYWJsZSBvcGNvZGVzCiAKLWRlZl9vcCgnU1RPUF9DT0RFJywgMCkKIGRlZl9vcCgnUE9QX1RPUCcsIDEpCiBkZWZfb3AoJ1JPVF9UV08nLCAyKQogZGVmX29wKCdST1RfVEhSRUUnLCAzKQpAQCAtODgsNiArODcsNyBAQAogCiBkZWZfb3AoJ1BSSU5UX0VYUFInLCA3MCkKIGRlZl9vcCgnTE9BRF9CVUlMRF9DTEFTUycsIDcxKQorZGVmX29wKCdZSUVMRF9GUk9NJywgNzIpCiAKIGRlZl9vcCgnSU5QTEFDRV9MU0hJRlQnLCA3NSkKIGRlZl9vcCgnSU5QTEFDRV9SU0hJRlQnLCA3NikKZGlmZiAtLWdpdCBhL0xpYi9vcHRwYXJzZS5weSBiL0xpYi9vcHRwYXJzZS5weQppbmRleCBkOTdhMWY3Li4zNzc2NGQzIDEwMDY0NAotLS0gYS9MaWIvb3B0cGFyc2UucHkKKysrIGIvTGliL29wdHBhcnNlLnB5CkBAIC04NiwxMCArODYsMTYgQEAKICMgICBJZDogZXJyb3JzLnB5IDUwOSAyMDA2LTA0LTIwIDAwOjU4OjI0WiBnd2FyZAogCiB0cnk6Ci0gICAgZnJvbSBnZXR0ZXh0IGltcG9ydCBnZXR0ZXh0CisgICAgZnJvbSBnZXR0ZXh0IGltcG9ydCBnZXR0ZXh0LCBuZ2V0dGV4dAogZXhjZXB0IEltcG9ydEVycm9yOgogICAgIGRlZiBnZXR0ZXh0KG1lc3NhZ2UpOgogICAgICAgICByZXR1cm4gbWVzc2FnZQorCisgICAgZGVmIG5nZXR0ZXh0KHNpbmd1bGFyLCBwbHVyYWwsIG4pOgorICAgICAgICBpZiBuID09IDE6CisgICAgICAgICAgICByZXR1cm4gc2luZ3VsYXIKKyAgICAgICAgcmV0dXJuIHBsdXJhbAorCiBfID0gZ2V0dGV4dAogCiAKQEAgLTQxMSwxMSArNDE3LDggQEAKIGRlZiBfcGFyc2VfaW50KHZhbCk6CiAgICAgcmV0dXJuIF9wYXJzZV9udW0odmFsLCBpbnQpCiAKLWRlZiBfcGFyc2VfbG9uZyh2YWwpOgotICAgIHJldHVybiBfcGFyc2VfbnVtKHZhbCwgaW50KQotCiBfYnVpbHRpbl9jdnQgPSB7ICJpbnQiIDogKF9wYXJzZV9pbnQsIF8oImludGVnZXIiKSksCi0gICAgICAgICAgICAgICAgICJsb25nIiA6IChfcGFyc2VfbG9uZywgXygibG9uZyBpbnRlZ2VyIikpLAorICAgICAgICAgICAgICAgICAibG9uZyIgOiAoX3BhcnNlX2ludCwgXygiaW50ZWdlciIpKSwKICAgICAgICAgICAgICAgICAgImZsb2F0IiA6IChmbG9hdCwgXygiZmxvYXRpbmctcG9pbnQiKSksCiAgICAgICAgICAgICAgICAgICJjb21wbGV4IiA6IChjb21wbGV4LCBfKCJjb21wbGV4IikpIH0KIApAQCAtMTQ4MywxMSArMTQ4NiwxMCBAQAogICAgICAgICBpZiBvcHRpb24udGFrZXNfdmFsdWUoKToKICAgICAgICAgICAgIG5hcmdzID0gb3B0aW9uLm5hcmdzCiAgICAgICAgICAgICBpZiBsZW4ocmFyZ3MpIDwgbmFyZ3M6Ci0gICAgICAgICAgICAgICAgaWYgbmFyZ3MgPT0gMToKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5lcnJvcihfKCIlcyBvcHRpb24gcmVxdWlyZXMgYW4gYXJndW1lbnQiKSAlIG9wdCkKLSAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICBzZWxmLmVycm9yKF8oIiVzIG9wdGlvbiByZXF1aXJlcyAlZCBhcmd1bWVudHMiKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgKG9wdCwgbmFyZ3MpKQorICAgICAgICAgICAgICAgIHNlbGYuZXJyb3IobmdldHRleHQoCisgICAgICAgICAgICAgICAgICAgICIlKG9wdGlvbilzIG9wdGlvbiByZXF1aXJlcyAlKG51bWJlcilkIGFyZ3VtZW50IiwKKyAgICAgICAgICAgICAgICAgICAgIiUob3B0aW9uKXMgb3B0aW9uIHJlcXVpcmVzICUobnVtYmVyKWQgYXJndW1lbnRzIiwKKyAgICAgICAgICAgICAgICAgICAgbmFyZ3MpICUgeyJvcHRpb24iOiBvcHQsICJudW1iZXIiOiBuYXJnc30pCiAgICAgICAgICAgICBlbGlmIG5hcmdzID09IDE6CiAgICAgICAgICAgICAgICAgdmFsdWUgPSByYXJncy5wb3AoMCkKICAgICAgICAgICAgIGVsc2U6CkBAIC0xNTIyLDExICsxNTI0LDEwIEBACiAKICAgICAgICAgICAgICAgICBuYXJncyA9IG9wdGlvbi5uYXJncwogICAgICAgICAgICAgICAgIGlmIGxlbihyYXJncykgPCBuYXJnczoKLSAgICAgICAgICAgICAgICAgICAgaWYgbmFyZ3MgPT0gMToKLSAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZXJyb3IoXygiJXMgb3B0aW9uIHJlcXVpcmVzIGFuIGFyZ3VtZW50IikgJSBvcHQpCi0gICAgICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmVycm9yKF8oIiVzIG9wdGlvbiByZXF1aXJlcyAlZCBhcmd1bWVudHMiKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIChvcHQsIG5hcmdzKSkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5lcnJvcihuZ2V0dGV4dCgKKyAgICAgICAgICAgICAgICAgICAgICAgICIlKG9wdGlvbilzIG9wdGlvbiByZXF1aXJlcyAlKG51bWJlcilkIGFyZ3VtZW50IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICIlKG9wdGlvbilzIG9wdGlvbiByZXF1aXJlcyAlKG51bWJlcilkIGFyZ3VtZW50cyIsCisgICAgICAgICAgICAgICAgICAgICAgICBuYXJncykgJSB7Im9wdGlvbiI6IG9wdCwgIm51bWJlciI6IG5hcmdzfSkKICAgICAgICAgICAgICAgICBlbGlmIG5hcmdzID09IDE6CiAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gcmFyZ3MucG9wKDApCiAgICAgICAgICAgICAgICAgZWxzZToKZGlmZiAtLWdpdCBhL0xpYi9vcy5weSBiL0xpYi9vcy5weQppbmRleCBhODk0ZWUwLi4yODk3OWJmIDEwMDY0NAotLS0gYS9MaWIvb3MucHkKKysrIGIvTGliL29zLnB5CkBAIC00MzQsNyArNDM0LDcgQEAKIAogCiAjIENoYW5nZSBlbnZpcm9uIHRvIGF1dG9tYXRpY2FsbHkgY2FsbCBwdXRlbnYoKSwgdW5zZXRlbnYgaWYgdGhleSBleGlzdC4KLWZyb20gX2FiY29sbCBpbXBvcnQgTXV0YWJsZU1hcHBpbmcgICMgQ2FuJ3QgdXNlIGNvbGxlY3Rpb25zIChib290c3RyYXApCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgTXV0YWJsZU1hcHBpbmcKIAogY2xhc3MgX0Vudmlyb24oTXV0YWJsZU1hcHBpbmcpOgogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkYXRhLCBlbmNvZGVrZXksIGRlY29kZWtleSwgZW5jb2RldmFsdWUsIGRlY29kZXZhbHVlLCBwdXRlbnYsIHVuc2V0ZW52KToKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL19faW5pdF9fLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkzYjYxMTcKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL19faW5pdF9fLnB5CkBAIC0wLDAgKzEsMTcgQEAKKyIiIlN1cHBvcnQgZm9yIHBhY2thZ2luZywgZGlzdHJpYnV0aW9uIGFuZCBpbnN0YWxsYXRpb24gb2YgUHl0aG9uIHByb2plY3RzLgorCitUaGlyZC1wYXJ0eSB0b29scyBjYW4gdXNlIHBhcnRzIG9mIHBhY2thZ2luZyBhcyBidWlsZGluZyBibG9ja3MKK3dpdGhvdXQgY2F1c2luZyB0aGUgb3RoZXIgbW9kdWxlcyB0byBiZSBpbXBvcnRlZDoKKworICAgIGltcG9ydCBwYWNrYWdpbmcudmVyc2lvbgorICAgIGltcG9ydCBwYWNrYWdpbmcubWV0YWRhdGEKKyAgICBpbXBvcnQgcGFja2FnaW5nLnB5cGkuc2ltcGxlCisgICAgaW1wb3J0IHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlcgorIiIiCisKK2Zyb20gbG9nZ2luZyBpbXBvcnQgZ2V0TG9nZ2VyCisKK19fYWxsX18gPSBbJ19fdmVyc2lvbl9fJywgJ2xvZ2dlciddCisKK19fdmVyc2lvbl9fID0gIjEuMGEzIgorbG9nZ2VyID0gZ2V0TG9nZ2VyKCdwYWNrYWdpbmcnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9fdHJvdmUucHkgYi9MaWIvcGFja2FnaW5nL190cm92ZS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNTI3YmM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9fdHJvdmUucHkKQEAgLTAsMCArMSw1NzEgQEAKKyIiIlRlbXBvcmFyeSBoZWxwZXIgZm9yIGNyZWF0ZS4iIiIKKworIyBYWFggZ2V0IHRoZSBsaXN0IGZyb20gUHlQSSBhbmQgY2FjaGUgaXQgaW5zdGVhZCBvZiBoYXJkY29kaW5nCisKKyMgWFhYIHNlZSBpZiBpdCB3b3VsZCBiZSBtb3JlIHVzZWZ1bCB0byBzdG9yZSBpdCBhcyBhbm90aGVyIHN0cnVjdHVyZQorIyB0aGFuIGEgbGlzdCBvZiBzdHJpbmdzCisKK2FsbF9jbGFzc2lmaWVycyA9IFsKKydEZXZlbG9wbWVudCBTdGF0dXMgOjogMSAtIFBsYW5uaW5nJywKKydEZXZlbG9wbWVudCBTdGF0dXMgOjogMiAtIFByZS1BbHBoYScsCisnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDMgLSBBbHBoYScsCisnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDQgLSBCZXRhJywKKydEZXZlbG9wbWVudCBTdGF0dXMgOjogNSAtIFByb2R1Y3Rpb24vU3RhYmxlJywKKydEZXZlbG9wbWVudCBTdGF0dXMgOjogNiAtIE1hdHVyZScsCisnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDcgLSBJbmFjdGl2ZScsCisnRW52aXJvbm1lbnQgOjogQ29uc29sZScsCisnRW52aXJvbm1lbnQgOjogQ29uc29sZSA6OiBDdXJzZXMnLAorJ0Vudmlyb25tZW50IDo6IENvbnNvbGUgOjogRnJhbWVidWZmZXInLAorJ0Vudmlyb25tZW50IDo6IENvbnNvbGUgOjogTmV3dCcsCisnRW52aXJvbm1lbnQgOjogQ29uc29sZSA6OiBzdmdhbGliJywKKyJFbnZpcm9ubWVudCA6OiBIYW5kaGVsZHMvUERBJ3MiLAorJ0Vudmlyb25tZW50IDo6IE1hY09TIFgnLAorJ0Vudmlyb25tZW50IDo6IE1hY09TIFggOjogQXF1YScsCisnRW52aXJvbm1lbnQgOjogTWFjT1MgWCA6OiBDYXJib24nLAorJ0Vudmlyb25tZW50IDo6IE1hY09TIFggOjogQ29jb2EnLAorJ0Vudmlyb25tZW50IDo6IE5vIElucHV0L091dHB1dCAoRGFlbW9uKScsCisnRW52aXJvbm1lbnQgOjogT3RoZXIgRW52aXJvbm1lbnQnLAorJ0Vudmlyb25tZW50IDo6IFBsdWdpbnMnLAorJ0Vudmlyb25tZW50IDo6IFdlYiBFbnZpcm9ubWVudCcsCisnRW52aXJvbm1lbnQgOjogV2ViIEVudmlyb25tZW50IDo6IEJ1ZmZldCcsCisnRW52aXJvbm1lbnQgOjogV2ViIEVudmlyb25tZW50IDo6IE1vemlsbGEnLAorJ0Vudmlyb25tZW50IDo6IFdlYiBFbnZpcm9ubWVudCA6OiBUb3NjYVdpZGdldHMnLAorJ0Vudmlyb25tZW50IDo6IFdpbjMyIChNUyBXaW5kb3dzKScsCisnRW52aXJvbm1lbnQgOjogWDExIEFwcGxpY2F0aW9ucycsCisnRW52aXJvbm1lbnQgOjogWDExIEFwcGxpY2F0aW9ucyA6OiBHbm9tZScsCisnRW52aXJvbm1lbnQgOjogWDExIEFwcGxpY2F0aW9ucyA6OiBHVEsnLAorJ0Vudmlyb25tZW50IDo6IFgxMSBBcHBsaWNhdGlvbnMgOjogS0RFJywKKydFbnZpcm9ubWVudCA6OiBYMTEgQXBwbGljYXRpb25zIDo6IFF0JywKKydGcmFtZXdvcmsgOjogQkZHJywKKydGcmFtZXdvcmsgOjogQnVpbGRvdXQnLAorJ0ZyYW1ld29yayA6OiBCdWlsZG91dCA6OiBFeHRlbnNpb24nLAorJ0ZyYW1ld29yayA6OiBCdWlsZG91dCA6OiBSZWNpcGUnLAorJ0ZyYW1ld29yayA6OiBDaGFuZGxlcicsCisnRnJhbWV3b3JrIDo6IENoZXJyeVB5JywKKydGcmFtZXdvcmsgOjogQ3ViaWNXZWInLAorJ0ZyYW1ld29yayA6OiBEamFuZ28nLAorJ0ZyYW1ld29yayA6OiBJRExFJywKKydGcmFtZXdvcmsgOjogUGFzdGUnLAorJ0ZyYW1ld29yayA6OiBQbG9uZScsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDMuMicsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDMuMycsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDQuMCcsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDQuMScsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDQuMicsCisnRnJhbWV3b3JrIDo6IFBsb25lIDo6IDQuMycsCisnRnJhbWV3b3JrIDo6IFB5bG9ucycsCisnRnJhbWV3b3JrIDo6IFNldHVwdG9vbHMgUGx1Z2luJywKKydGcmFtZXdvcmsgOjogVHJhYycsCisnRnJhbWV3b3JrIDo6IFRyeXRvbicsCisnRnJhbWV3b3JrIDo6IFR1cmJvR2VhcnMnLAorJ0ZyYW1ld29yayA6OiBUdXJib0dlYXJzIDo6IEFwcGxpY2F0aW9ucycsCisnRnJhbWV3b3JrIDo6IFR1cmJvR2VhcnMgOjogV2lkZ2V0cycsCisnRnJhbWV3b3JrIDo6IFR3aXN0ZWQnLAorJ0ZyYW1ld29yayA6OiBaT0RCJywKKydGcmFtZXdvcmsgOjogWm9wZTInLAorJ0ZyYW1ld29yayA6OiBab3BlMycsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogQ3VzdG9tZXIgU2VydmljZScsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogRGV2ZWxvcGVycycsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogRWR1Y2F0aW9uJywKKydJbnRlbmRlZCBBdWRpZW5jZSA6OiBFbmQgVXNlcnMvRGVza3RvcCcsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogRmluYW5jaWFsIGFuZCBJbnN1cmFuY2UgSW5kdXN0cnknLAorJ0ludGVuZGVkIEF1ZGllbmNlIDo6IEhlYWx0aGNhcmUgSW5kdXN0cnknLAorJ0ludGVuZGVkIEF1ZGllbmNlIDo6IEluZm9ybWF0aW9uIFRlY2hub2xvZ3knLAorJ0ludGVuZGVkIEF1ZGllbmNlIDo6IExlZ2FsIEluZHVzdHJ5JywKKydJbnRlbmRlZCBBdWRpZW5jZSA6OiBNYW51ZmFjdHVyaW5nJywKKydJbnRlbmRlZCBBdWRpZW5jZSA6OiBPdGhlciBBdWRpZW5jZScsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogUmVsaWdpb24nLAorJ0ludGVuZGVkIEF1ZGllbmNlIDo6IFNjaWVuY2UvUmVzZWFyY2gnLAorJ0ludGVuZGVkIEF1ZGllbmNlIDo6IFN5c3RlbSBBZG1pbmlzdHJhdG9ycycsCisnSW50ZW5kZWQgQXVkaWVuY2UgOjogVGVsZWNvbW11bmljYXRpb25zIEluZHVzdHJ5JywKKydMaWNlbnNlIDo6IEFsYWRkaW4gRnJlZSBQdWJsaWMgTGljZW5zZSAoQUZQTCknLAorJ0xpY2Vuc2UgOjogQ0MwIDEuMCBVbml2ZXJzYWwgKENDMCAxLjApIFB1YmxpYyBEb21haW4gRGVkaWNhdGlvbicsCisnTGljZW5zZSA6OiBERlNHIGFwcHJvdmVkJywKKydMaWNlbnNlIDo6IEVpZmZlbCBGb3J1bSBMaWNlbnNlIChFRkwpJywKKydMaWNlbnNlIDo6IEZyZWUgRm9yIEVkdWNhdGlvbmFsIFVzZScsCisnTGljZW5zZSA6OiBGcmVlIEZvciBIb21lIFVzZScsCisnTGljZW5zZSA6OiBGcmVlIGZvciBub24tY29tbWVyY2lhbCB1c2UnLAorJ0xpY2Vuc2UgOjogRnJlZWx5IERpc3RyaWJ1dGFibGUnLAorJ0xpY2Vuc2UgOjogRnJlZSBUbyBVc2UgQnV0IFJlc3RyaWN0ZWQnLAorJ0xpY2Vuc2UgOjogRnJlZXdhcmUnLAorJ0xpY2Vuc2UgOjogTmV0c2NhcGUgUHVibGljIExpY2Vuc2UgKE5QTCknLAorJ0xpY2Vuc2UgOjogTm9raWEgT3BlbiBTb3VyY2UgTGljZW5zZSAoTk9LT1MpJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCcsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogQWNhZGVtaWMgRnJlZSBMaWNlbnNlIChBRkwpJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBBcGFjaGUgU29mdHdhcmUgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogQXBwbGUgUHVibGljIFNvdXJjZSBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBBcnRpc3RpYyBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBBdHRyaWJ1dGlvbiBBc3N1cmFuY2UgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogQlNEIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IENvbW1vbiBQdWJsaWMgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogRWlmZmVsIEZvcnVtIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IEV1cm9wZWFuIFVuaW9uIFB1YmxpYyBMaWNlbmNlIDEuMCAoRVVQTCAxLjApJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBFdXJvcGVhbiBVbmlvbiBQdWJsaWMgTGljZW5jZSAxLjEgKEVVUEwgMS4xKScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYzJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBHTlUgRnJlZSBEb2N1bWVudGF0aW9uIExpY2Vuc2UgKEZETCknLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIChHUEwpJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBHTlUgTGlicmFyeSBvciBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSAoTEdQTCknLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IElCTSBQdWJsaWMgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogSW50ZWwgT3BlbiBTb3VyY2UgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogSVNDIExpY2Vuc2UgKElTQ0wpJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBKYWJiZXIgT3BlbiBTb3VyY2UgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogTUlUIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IE1JVFJFIENvbGxhYm9yYXRpdmUgVmlydHVhbCBXb3Jrc3BhY2UgTGljZW5zZSAoQ1ZXKScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogTW90b3NvdG8gTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogTW96aWxsYSBQdWJsaWMgTGljZW5zZSAxLjAgKE1QTCknLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IE1vemlsbGEgUHVibGljIExpY2Vuc2UgMS4xIChNUEwgMS4xKScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogTmV0aGFjayBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBOb2tpYSBPcGVuIFNvdXJjZSBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBPcGVuIEdyb3VwIFRlc3QgU3VpdGUgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogUHl0aG9uIExpY2Vuc2UgKENOUkkgUHl0aG9uIExpY2Vuc2UpJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBQeXRob24gU29mdHdhcmUgRm91bmRhdGlvbiBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBRdCBQdWJsaWMgTGljZW5zZSAoUVBMKScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogUmljb2ggU291cmNlIENvZGUgUHVibGljIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFNsZWVweWNhdCBMaWNlbnNlJywKKydMaWNlbnNlIDo6IE9TSSBBcHByb3ZlZCA6OiBTdW4gSW5kdXN0cnkgU3RhbmRhcmRzIFNvdXJjZSBMaWNlbnNlIChTSVNTTCknLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFN1biBQdWJsaWMgTGljZW5zZScsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogVW5pdmVyc2l0eSBvZiBJbGxpbm9pcy9OQ1NBIE9wZW4gU291cmNlIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFZvdmlkYSBTb2Z0d2FyZSBMaWNlbnNlIDEuMCcsCisnTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogVzNDIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFguTmV0IExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IHpsaWIvbGlicG5nIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFpvcGUgUHVibGljIExpY2Vuc2UnLAorJ0xpY2Vuc2UgOjogT3RoZXIvUHJvcHJpZXRhcnkgTGljZW5zZScsCisnTGljZW5zZSA6OiBQdWJsaWMgRG9tYWluJywKKydMaWNlbnNlIDo6IFJlcG96ZSBQdWJsaWMgTGljZW5zZScsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBBZnJpa2FhbnMnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogQXJhYmljJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEJlbmdhbGknLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogQm9zbmlhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBCdWxnYXJpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogQ2F0YWxhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBDaGluZXNlIChTaW1wbGlmaWVkKScsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBDaGluZXNlIChUcmFkaXRpb25hbCknLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogQ3JvYXRpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogQ3plY2gnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogRGFuaXNoJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IER1dGNoJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEVuZ2xpc2gnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogRXNwZXJhbnRvJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEZpbm5pc2gnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogRnJlbmNoJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEdlcm1hbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBHcmVlaycsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBIZWJyZXcnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogSGluZGknLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogSHVuZ2FyaWFuJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEljZWxhbmRpYycsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBJbmRvbmVzaWFuJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IEl0YWxpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogSmFwYW5lc2UnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogSmF2YW5lc2UnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogS29yZWFuJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IExhdGluJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IExhdHZpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogTWFjZWRvbmlhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBNYWxheScsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBNYXJhdGhpJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IE5vcndlZ2lhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBQYW5qYWJpJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFBlcnNpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogUG9saXNoJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFBvcnR1Z3Vlc2UnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogUG9ydHVndWVzZSAoQnJhemlsaWFuKScsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBSb21hbmlhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBSdXNzaWFuJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFNlcmJpYW4nLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogU2xvdmFrJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFNsb3ZlbmlhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBTcGFuaXNoJywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFN3ZWRpc2gnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogVGFtaWwnLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogVGVsdWd1JywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFRoYWknLAorJ05hdHVyYWwgTGFuZ3VhZ2UgOjogVHVya2lzaCcsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBVa3JhbmlhbicsCisnTmF0dXJhbCBMYW5ndWFnZSA6OiBVcmR1JywKKydOYXR1cmFsIExhbmd1YWdlIDo6IFZpZXRuYW1lc2UnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogQmVPUycsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBNYWNPUycsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBNYWNPUyA6OiBNYWNPUyA5JywKKydPcGVyYXRpbmcgU3lzdGVtIDo6IE1hY09TIDo6IE1hY09TIFgnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogTWljcm9zb2Z0JywKKydPcGVyYXRpbmcgU3lzdGVtIDo6IE1pY3Jvc29mdCA6OiBNUy1ET1MnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogTWljcm9zb2Z0IDo6IFdpbmRvd3MnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogTWljcm9zb2Z0IDo6IFdpbmRvd3MgOjogV2luZG93cyAzLjEgb3IgRWFybGllcicsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBNaWNyb3NvZnQgOjogV2luZG93cyA6OiBXaW5kb3dzIDk1Lzk4LzIwMDAnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogTWljcm9zb2Z0IDo6IFdpbmRvd3MgOjogV2luZG93cyBDRScsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBNaWNyb3NvZnQgOjogV2luZG93cyA6OiBXaW5kb3dzIE5ULzIwMDAnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogT1MvMicsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBPUyBJbmRlcGVuZGVudCcsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBPdGhlciBPUycsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBQYWxtT1MnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUERBIFN5c3RlbXMnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVgnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogQUlYJywKKydPcGVyYXRpbmcgU3lzdGVtIDo6IFBPU0lYIDo6IEJTRCcsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBQT1NJWCA6OiBCU0QgOjogQlNEL09TJywKKydPcGVyYXRpbmcgU3lzdGVtIDo6IFBPU0lYIDo6IEJTRCA6OiBGcmVlQlNEJywKKydPcGVyYXRpbmcgU3lzdGVtIDo6IFBPU0lYIDo6IEJTRCA6OiBOZXRCU0QnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogQlNEIDo6IE9wZW5CU0QnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogR05VIEh1cmQnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogSFAtVVgnLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogSVJJWCcsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBQT1NJWCA6OiBMaW51eCcsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBQT1NJWCA6OiBPdGhlcicsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBQT1NJWCA6OiBTQ08nLAorJ09wZXJhdGluZyBTeXN0ZW0gOjogUE9TSVggOjogU3VuT1MvU29sYXJpcycsCisnT3BlcmF0aW5nIFN5c3RlbSA6OiBVbml4JywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBBZGEnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEFQTCcsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogQVNQJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBBc3NlbWJseScsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogQXdrJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBCYXNpYycsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogQycsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogQyMnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEMrKycsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogQ29sZCBGdXNpb24nLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEN5dGhvbicsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogRGVscGhpL0t5bGl4JywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBEeWxhbicsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogRWlmZmVsJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBFbWFjcy1MaXNwJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBFcmxhbmcnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEV1bGVyJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBFdXBob3JpYScsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogRm9ydGgnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEZvcnRyYW4nLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEhhc2tlbGwnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEphdmEnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IEphdmFTY3JpcHQnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IExpc3AnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IExvZ28nLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IE1MJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBNb2R1bGEnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IE9iamVjdGl2ZSBDJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBPYmplY3QgUGFzY2FsJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBPQ2FtbCcsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogT3RoZXInLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IE90aGVyIFNjcmlwdGluZyBFbmdpbmVzJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQYXNjYWwnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFBlcmwnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFBIUCcsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUGlrZScsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUGxpYW50JywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQTC9TUUwnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFBST0dSRVNTJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQcm9sb2cnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbicsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIDo6IDInLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjMnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjQnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjUnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjYnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyLjcnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAzJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMy4wJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMy4xJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMy4yJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogSW1wbGVtZW50YXRpb24nLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiBJbXBsZW1lbnRhdGlvbiA6OiBDUHl0aG9uJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogSW1wbGVtZW50YXRpb24gOjogSXJvblB5dGhvbicsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIDo6IEltcGxlbWVudGF0aW9uIDo6IEp5dGhvbicsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uIDo6IEltcGxlbWVudGF0aW9uIDo6IFB5UHknLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiBJbXBsZW1lbnRhdGlvbiA6OiBTdGFja2xlc3MnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFJFQk9MJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBSZXh4JywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBSdWJ5JywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBTY2hlbWUnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFNpbXVsYScsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogU21hbGx0YWxrJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBTUUwnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFRjbCcsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogVW5peCBTaGVsbCcsCisnUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogVmlzdWFsIEJhc2ljJywKKydQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBYQmFzaWMnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFlBQ0MnLAorJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFpvcGUnLAorJ1RvcGljIDo6IEFkYXB0aXZlIFRlY2hub2xvZ2llcycsCisnVG9waWMgOjogQXJ0aXN0aWMgU29mdHdhcmUnLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBCQlMnLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IENoYXQnLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IENoYXQgOjogQU9MIEluc3RhbnQgTWVzc2VuZ2VyJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBDaGF0IDo6IElDUScsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogQ2hhdCA6OiBJbnRlcm5ldCBSZWxheSBDaGF0JywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBDaGF0IDo6IFVuaXggVGFsaycsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogQ29uZmVyZW5jaW5nJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCcsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRW1haWwgOjogQWRkcmVzcyBCb29rJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCA6OiBFbWFpbCBDbGllbnRzIChNVUEpJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCA6OiBGaWx0ZXJzJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCA6OiBNYWlsaW5nIExpc3QgU2VydmVycycsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRW1haWwgOjogTWFpbCBUcmFuc3BvcnQgQWdlbnRzJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBFbWFpbCA6OiBQb3N0LU9mZmljZScsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRW1haWwgOjogUG9zdC1PZmZpY2UgOjogSU1BUCcsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRW1haWwgOjogUG9zdC1PZmZpY2UgOjogUE9QMycsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRmF4JywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBGSURPJywKKydUb3BpYyA6OiBDb21tdW5pY2F0aW9ucyA6OiBGaWxlIFNoYXJpbmcnLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IEZpbGUgU2hhcmluZyA6OiBHbnV0ZWxsYScsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogRmlsZSBTaGFyaW5nIDo6IE5hcHN0ZXInLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IEhhbSBSYWRpbycsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogSW50ZXJuZXQgUGhvbmUnLAorJ1RvcGljIDo6IENvbW11bmljYXRpb25zIDo6IFRlbGVwaG9ueScsCisnVG9waWMgOjogQ29tbXVuaWNhdGlvbnMgOjogVXNlbmV0IE5ld3MnLAorJ1RvcGljIDo6IERhdGFiYXNlJywKKydUb3BpYyA6OiBEYXRhYmFzZSA6OiBEYXRhYmFzZSBFbmdpbmVzL1NlcnZlcnMnLAorJ1RvcGljIDo6IERhdGFiYXNlIDo6IEZyb250LUVuZHMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogRmlsZSBNYW5hZ2VycycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBHbm9tZScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBHTlVzdGVwJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IEsgRGVza3RvcCBFbnZpcm9ubWVudCAoS0RFKScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBLIERlc2t0b3AgRW52aXJvbm1lbnQgKEtERSkgOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFBpY29HVUknLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogUGljb0dVSSA6OiBBcHBsaWNhdGlvbnMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogUGljb0dVSSA6OiBUaGVtZXMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogU2NyZWVuIFNhdmVycycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEFmdGVyc3RlcCcsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogQWZ0ZXJzdGVwIDo6IFRoZW1lcycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogQXBwbGV0cycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogQmxhY2tib3gnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEJsYWNrYm94IDo6IFRoZW1lcycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogQ1RXTScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogQ1RXTSA6OiBUaGVtZXMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEVubGlnaHRlbm1lbnQnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEVubGlnaHRlbm1lbnQgOjogRXBwbGV0cycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogRW5saWdodGVubWVudCA6OiBUaGVtZXMgRFIxNScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogRW5saWdodGVubWVudCA6OiBUaGVtZXMgRFIxNicsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogRW5saWdodGVubWVudCA6OiBUaGVtZXMgRFIxNycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogRmx1eGJveCcsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogRmx1eGJveCA6OiBUaGVtZXMnLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEZWV00nLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IEZWV00gOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBJY2VXTScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogSWNlV00gOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBNZXRhQ2l0eScsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogTWV0YUNpdHkgOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBPcm9ib3J1cycsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogT3JvYm9ydXMgOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBTYXdmaXNoJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBTYXdmaXNoIDo6IFRoZW1lcyAwLjMwJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBTYXdmaXNoIDo6IFRoZW1lcyBwcmUtMC4zMCcsCisnVG9waWMgOjogRGVza3RvcCBFbnZpcm9ubWVudCA6OiBXaW5kb3cgTWFuYWdlcnMgOjogV2FpbWVhJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBXYWltZWEgOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBXaW5kb3cgTWFrZXInLAorJ1RvcGljIDo6IERlc2t0b3AgRW52aXJvbm1lbnQgOjogV2luZG93IE1hbmFnZXJzIDo6IFdpbmRvdyBNYWtlciA6OiBBcHBsZXRzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBXaW5kb3cgTWFrZXIgOjogVGhlbWVzJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBYRkNFJywKKydUb3BpYyA6OiBEZXNrdG9wIEVudmlyb25tZW50IDo6IFdpbmRvdyBNYW5hZ2VycyA6OiBYRkNFIDo6IFRoZW1lcycsCisnVG9waWMgOjogRG9jdW1lbnRhdGlvbicsCisnVG9waWMgOjogRWR1Y2F0aW9uJywKKydUb3BpYyA6OiBFZHVjYXRpb24gOjogQ29tcHV0ZXIgQWlkZWQgSW5zdHJ1Y3Rpb24gKENBSSknLAorJ1RvcGljIDo6IEVkdWNhdGlvbiA6OiBUZXN0aW5nJywKKydUb3BpYyA6OiBHYW1lcy9FbnRlcnRhaW5tZW50JywKKydUb3BpYyA6OiBHYW1lcy9FbnRlcnRhaW5tZW50IDo6IEFyY2FkZScsCisnVG9waWMgOjogR2FtZXMvRW50ZXJ0YWlubWVudCA6OiBCb2FyZCBHYW1lcycsCisnVG9waWMgOjogR2FtZXMvRW50ZXJ0YWlubWVudCA6OiBGaXJzdCBQZXJzb24gU2hvb3RlcnMnLAorJ1RvcGljIDo6IEdhbWVzL0VudGVydGFpbm1lbnQgOjogRm9ydHVuZSBDb29raWVzJywKKydUb3BpYyA6OiBHYW1lcy9FbnRlcnRhaW5tZW50IDo6IE11bHRpLVVzZXIgRHVuZ2VvbnMgKE1VRCknLAorJ1RvcGljIDo6IEdhbWVzL0VudGVydGFpbm1lbnQgOjogUHV6emxlIEdhbWVzJywKKydUb3BpYyA6OiBHYW1lcy9FbnRlcnRhaW5tZW50IDo6IFJlYWwgVGltZSBTdHJhdGVneScsCisnVG9waWMgOjogR2FtZXMvRW50ZXJ0YWlubWVudCA6OiBSb2xlLVBsYXlpbmcnLAorJ1RvcGljIDo6IEdhbWVzL0VudGVydGFpbm1lbnQgOjogU2lkZS1TY3JvbGxpbmcvQXJjYWRlIEdhbWVzJywKKydUb3BpYyA6OiBHYW1lcy9FbnRlcnRhaW5tZW50IDo6IFNpbXVsYXRpb24nLAorJ1RvcGljIDo6IEdhbWVzL0VudGVydGFpbm1lbnQgOjogVHVybiBCYXNlZCBTdHJhdGVneScsCisnVG9waWMgOjogSG9tZSBBdXRvbWF0aW9uJywKKydUb3BpYyA6OiBJbnRlcm5ldCcsCisnVG9waWMgOjogSW50ZXJuZXQgOjogRmlsZSBUcmFuc2ZlciBQcm90b2NvbCAoRlRQKScsCisnVG9waWMgOjogSW50ZXJuZXQgOjogRmluZ2VyJywKKydUb3BpYyA6OiBJbnRlcm5ldCA6OiBMb2cgQW5hbHlzaXMnLAorJ1RvcGljIDo6IEludGVybmV0IDo6IE5hbWUgU2VydmljZSAoRE5TKScsCisnVG9waWMgOjogSW50ZXJuZXQgOjogUHJveHkgU2VydmVycycsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV0FQJywKKydUb3BpYyA6OiBJbnRlcm5ldCA6OiBXV1cvSFRUUCcsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogQnJvd3NlcnMnLAorJ1RvcGljIDo6IEludGVybmV0IDo6IFdXVy9IVFRQIDo6IER5bmFtaWMgQ29udGVudCcsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogRHluYW1pYyBDb250ZW50IDo6IENHSSBUb29scy9MaWJyYXJpZXMnLAorJ1RvcGljIDo6IEludGVybmV0IDo6IFdXVy9IVFRQIDo6IER5bmFtaWMgQ29udGVudCA6OiBNZXNzYWdlIEJvYXJkcycsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogRHluYW1pYyBDb250ZW50IDo6IE5ld3MvRGlhcnknLAorJ1RvcGljIDo6IEludGVybmV0IDo6IFdXVy9IVFRQIDo6IER5bmFtaWMgQ29udGVudCA6OiBQYWdlIENvdW50ZXJzJywKKydUb3BpYyA6OiBJbnRlcm5ldCA6OiBXV1cvSFRUUCA6OiBIVFRQIFNlcnZlcnMnLAorJ1RvcGljIDo6IEludGVybmV0IDo6IFdXVy9IVFRQIDo6IEluZGV4aW5nL1NlYXJjaCcsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogU2Vzc2lvbicsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogU2l0ZSBNYW5hZ2VtZW50JywKKydUb3BpYyA6OiBJbnRlcm5ldCA6OiBXV1cvSFRUUCA6OiBTaXRlIE1hbmFnZW1lbnQgOjogTGluayBDaGVja2luZycsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogV1NHSScsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogV1NHSSA6OiBBcHBsaWNhdGlvbicsCisnVG9waWMgOjogSW50ZXJuZXQgOjogV1dXL0hUVFAgOjogV1NHSSA6OiBNaWRkbGV3YXJlJywKKydUb3BpYyA6OiBJbnRlcm5ldCA6OiBXV1cvSFRUUCA6OiBXU0dJIDo6IFNlcnZlcicsCisnVG9waWMgOjogSW50ZXJuZXQgOjogWjM5LjUwJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IEdyYXBoaWNzJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IEdyYXBoaWNzIDo6IDNEIE1vZGVsaW5nJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IEdyYXBoaWNzIDo6IDNEIFJlbmRlcmluZycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBHcmFwaGljcyA6OiBDYXB0dXJlJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IEdyYXBoaWNzIDo6IENhcHR1cmUgOjogRGlnaXRhbCBDYW1lcmEnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogR3JhcGhpY3MgOjogQ2FwdHVyZSA6OiBTY2FubmVycycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBHcmFwaGljcyA6OiBDYXB0dXJlIDo6IFNjcmVlbiBDYXB0dXJlJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IEdyYXBoaWNzIDo6IEVkaXRvcnMnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogR3JhcGhpY3MgOjogRWRpdG9ycyA6OiBSYXN0ZXItQmFzZWQnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogR3JhcGhpY3MgOjogRWRpdG9ycyA6OiBWZWN0b3ItQmFzZWQnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogR3JhcGhpY3MgOjogR3JhcGhpY3MgQ29udmVyc2lvbicsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBHcmFwaGljcyA6OiBQcmVzZW50YXRpb24nLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogR3JhcGhpY3MgOjogVmlld2VycycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBBbmFseXNpcycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBDYXB0dXJlL1JlY29yZGluZycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBDRCBBdWRpbycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBDRCBBdWRpbyA6OiBDRCBQbGF5aW5nJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IFNvdW5kL0F1ZGlvIDo6IENEIEF1ZGlvIDo6IENEIFJpcHBpbmcnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogU291bmQvQXVkaW8gOjogQ0QgQXVkaW8gOjogQ0QgV3JpdGluZycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBDb252ZXJzaW9uJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IFNvdW5kL0F1ZGlvIDo6IEVkaXRvcnMnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogU291bmQvQXVkaW8gOjogTUlESScsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBNaXhlcnMnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogU291bmQvQXVkaW8gOjogUGxheWVycycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBQbGF5ZXJzIDo6IE1QMycsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBTb3VuZC9BdWRpbyA6OiBTb3VuZCBTeW50aGVzaXMnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogU291bmQvQXVkaW8gOjogU3BlZWNoJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IFZpZGVvJywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IFZpZGVvIDo6IENhcHR1cmUnLAorJ1RvcGljIDo6IE11bHRpbWVkaWEgOjogVmlkZW8gOjogQ29udmVyc2lvbicsCisnVG9waWMgOjogTXVsdGltZWRpYSA6OiBWaWRlbyA6OiBEaXNwbGF5JywKKydUb3BpYyA6OiBNdWx0aW1lZGlhIDo6IFZpZGVvIDo6IE5vbi1MaW5lYXIgRWRpdG9yJywKKydUb3BpYyA6OiBPZmZpY2UvQnVzaW5lc3MnLAorJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcyA6OiBGaW5hbmNpYWwnLAorJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcyA6OiBGaW5hbmNpYWwgOjogQWNjb3VudGluZycsCisnVG9waWMgOjogT2ZmaWNlL0J1c2luZXNzIDo6IEZpbmFuY2lhbCA6OiBJbnZlc3RtZW50JywKKydUb3BpYyA6OiBPZmZpY2UvQnVzaW5lc3MgOjogRmluYW5jaWFsIDo6IFBvaW50LU9mLVNhbGUnLAorJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcyA6OiBGaW5hbmNpYWwgOjogU3ByZWFkc2hlZXQnLAorJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcyA6OiBHcm91cHdhcmUnLAorJ1RvcGljIDo6IE9mZmljZS9CdXNpbmVzcyA6OiBOZXdzL0RpYXJ5JywKKydUb3BpYyA6OiBPZmZpY2UvQnVzaW5lc3MgOjogT2ZmaWNlIFN1aXRlcycsCisnVG9waWMgOjogT2ZmaWNlL0J1c2luZXNzIDo6IFNjaGVkdWxpbmcnLAorJ1RvcGljIDo6IE90aGVyL05vbmxpc3RlZCBUb3BpYycsCisnVG9waWMgOjogUHJpbnRpbmcnLAorJ1RvcGljIDo6IFJlbGlnaW9uJywKKydUb3BpYyA6OiBTY2llbnRpZmljL0VuZ2luZWVyaW5nJywKKydUb3BpYyA6OiBTY2llbnRpZmljL0VuZ2luZWVyaW5nIDo6IEFydGlmaWNpYWwgTGlmZScsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBBcnRpZmljaWFsIEludGVsbGlnZW5jZScsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBBc3Ryb25vbXknLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogQXRtb3NwaGVyaWMgU2NpZW5jZScsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBCaW8tSW5mb3JtYXRpY3MnLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogQ2hlbWlzdHJ5JywKKydUb3BpYyA6OiBTY2llbnRpZmljL0VuZ2luZWVyaW5nIDo6IEVsZWN0cm9uaWMgRGVzaWduIEF1dG9tYXRpb24gKEVEQSknLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogR0lTJywKKydUb3BpYyA6OiBTY2llbnRpZmljL0VuZ2luZWVyaW5nIDo6IEh1bWFuIE1hY2hpbmUgSW50ZXJmYWNlcycsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBJbWFnZSBSZWNvZ25pdGlvbicsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBJbmZvcm1hdGlvbiBBbmFseXNpcycsCisnVG9waWMgOjogU2NpZW50aWZpYy9FbmdpbmVlcmluZyA6OiBJbnRlcmZhY2UgRW5naW5lL1Byb3RvY29sIFRyYW5zbGF0b3InLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogTWF0aGVtYXRpY3MnLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogTWVkaWNhbCBTY2llbmNlIEFwcHMuJywKKydUb3BpYyA6OiBTY2llbnRpZmljL0VuZ2luZWVyaW5nIDo6IFBoeXNpY3MnLAorJ1RvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogVmlzdWFsaXphdGlvbicsCisnVG9waWMgOjogU2VjdXJpdHknLAorJ1RvcGljIDo6IFNlY3VyaXR5IDo6IENyeXB0b2dyYXBoeScsCisnVG9waWMgOjogU29jaW9sb2d5JywKKydUb3BpYyA6OiBTb2Npb2xvZ3kgOjogR2VuZWFsb2d5JywKKydUb3BpYyA6OiBTb2Npb2xvZ3kgOjogSGlzdG9yeScsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IEFzc2VtYmxlcnMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IEJ1ZyBUcmFja2luZycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogQnVpbGQgVG9vbHMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IENvZGUgR2VuZXJhdG9ycycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogQ29tcGlsZXJzJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBEZWJ1Z2dlcnMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IERpc2Fzc2VtYmxlcnMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IERvY3VtZW50YXRpb24nLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IEVtYmVkZGVkIFN5c3RlbXMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IEludGVybmF0aW9uYWxpemF0aW9uJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBJbnRlcnByZXRlcnMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IExpYnJhcmllcycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTGlicmFyaWVzIDo6IEFwcGxpY2F0aW9uIEZyYW1ld29ya3MnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IExpYnJhcmllcyA6OiBKYXZhIExpYnJhcmllcycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTGlicmFyaWVzIDo6IFBlcmwgTW9kdWxlcycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTGlicmFyaWVzIDo6IFBIUCBDbGFzc2VzJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBMaWJyYXJpZXMgOjogUGlrZSBNb2R1bGVzJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBMaWJyYXJpZXMgOjogcHlnYW1lJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBMaWJyYXJpZXMgOjogUHl0aG9uIE1vZHVsZXMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IExpYnJhcmllcyA6OiBSdWJ5IE1vZHVsZXMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IExpYnJhcmllcyA6OiBUY2wgRXh0ZW5zaW9ucycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTG9jYWxpemF0aW9uJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBPYmplY3QgQnJva2VyaW5nJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBPYmplY3QgQnJva2VyaW5nIDo6IENPUkJBJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBQcmUtcHJvY2Vzc29ycycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogUXVhbGl0eSBBc3N1cmFuY2UnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IFRlc3RpbmcnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IFRlc3RpbmcgOjogVHJhZmZpYyBHZW5lcmF0aW9uJywKKydUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBVc2VyIEludGVyZmFjZXMnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IFZlcnNpb24gQ29udHJvbCcsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogVmVyc2lvbiBDb250cm9sIDo6IENWUycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogVmVyc2lvbiBDb250cm9sIDo6IFJDUycsCisnVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogVmVyc2lvbiBDb250cm9sIDo6IFNDQ1MnLAorJ1RvcGljIDo6IFNvZnR3YXJlIERldmVsb3BtZW50IDo6IFdpZGdldCBTZXRzJywKKydUb3BpYyA6OiBTeXN0ZW0nLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBBcmNoaXZpbmcnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBBcmNoaXZpbmcgOjogQmFja3VwJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogQXJjaGl2aW5nIDo6IENvbXByZXNzaW9uJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogQXJjaGl2aW5nIDo6IE1pcnJvcmluZycsCisnVG9waWMgOjogU3lzdGVtIDo6IEFyY2hpdmluZyA6OiBQYWNrYWdpbmcnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBCZW5jaG1hcmsnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBCb290JywKKydUb3BpYyA6OiBTeXN0ZW0gOjogQm9vdCA6OiBJbml0JywKKydUb3BpYyA6OiBTeXN0ZW0gOjogQ2x1c3RlcmluZycsCisnVG9waWMgOjogU3lzdGVtIDo6IENvbnNvbGUgRm9udHMnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBEaXN0cmlidXRlZCBDb21wdXRpbmcnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBFbXVsYXRvcnMnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBGaWxlc3lzdGVtcycsCisnVG9waWMgOjogU3lzdGVtIDo6IEhhcmR3YXJlJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogSGFyZHdhcmUgOjogSGFyZHdhcmUgRHJpdmVycycsCisnVG9waWMgOjogU3lzdGVtIDo6IEhhcmR3YXJlIDo6IE1haW5mcmFtZXMnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBIYXJkd2FyZSA6OiBTeW1tZXRyaWMgTXVsdGktcHJvY2Vzc2luZycsCisnVG9waWMgOjogU3lzdGVtIDo6IEluc3RhbGxhdGlvbi9TZXR1cCcsCisnVG9waWMgOjogU3lzdGVtIDo6IExvZ2dpbmcnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBNb25pdG9yaW5nJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogTmV0d29ya2luZycsCisnVG9waWMgOjogU3lzdGVtIDo6IE5ldHdvcmtpbmcgOjogRmlyZXdhbGxzJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogTmV0d29ya2luZyA6OiBNb25pdG9yaW5nJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogTmV0d29ya2luZyA6OiBNb25pdG9yaW5nIDo6IEhhcmR3YXJlIFdhdGNoZG9nJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogTmV0d29ya2luZyA6OiBUaW1lIFN5bmNocm9uaXphdGlvbicsCisnVG9waWMgOjogU3lzdGVtIDo6IE9wZXJhdGluZyBTeXN0ZW0nLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBPcGVyYXRpbmcgU3lzdGVtIEtlcm5lbHMnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBPcGVyYXRpbmcgU3lzdGVtIEtlcm5lbHMgOjogQlNEJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogT3BlcmF0aW5nIFN5c3RlbSBLZXJuZWxzIDo6IEdOVSBIdXJkJywKKydUb3BpYyA6OiBTeXN0ZW0gOjogT3BlcmF0aW5nIFN5c3RlbSBLZXJuZWxzIDo6IExpbnV4JywKKydUb3BpYyA6OiBTeXN0ZW0gOjogUG93ZXIgKFVQUyknLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBSZWNvdmVyeSBUb29scycsCisnVG9waWMgOjogU3lzdGVtIDo6IFNoZWxscycsCisnVG9waWMgOjogU3lzdGVtIDo6IFNvZnR3YXJlIERpc3RyaWJ1dGlvbicsCisnVG9waWMgOjogU3lzdGVtIDo6IFN5c3RlbXMgQWRtaW5pc3RyYXRpb24nLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBTeXN0ZW1zIEFkbWluaXN0cmF0aW9uIDo6IEF1dGhlbnRpY2F0aW9uL0RpcmVjdG9yeScsCisnVG9waWMgOjogU3lzdGVtIDo6IFN5c3RlbXMgQWRtaW5pc3RyYXRpb24gOjogQXV0aGVudGljYXRpb24vRGlyZWN0b3J5IDo6IExEQVAnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBTeXN0ZW1zIEFkbWluaXN0cmF0aW9uIDo6IEF1dGhlbnRpY2F0aW9uL0RpcmVjdG9yeSA6OiBOSVMnLAorJ1RvcGljIDo6IFN5c3RlbSA6OiBTeXN0ZW0gU2hlbGxzJywKKydUb3BpYyA6OiBUZXJtaW5hbHMnLAorJ1RvcGljIDo6IFRlcm1pbmFscyA6OiBTZXJpYWwnLAorJ1RvcGljIDo6IFRlcm1pbmFscyA6OiBUZWxuZXQnLAorJ1RvcGljIDo6IFRlcm1pbmFscyA6OiBUZXJtaW5hbCBFbXVsYXRvcnMvWCBUZXJtaW5hbHMnLAorJ1RvcGljIDo6IFRleHQgRWRpdG9ycycsCisnVG9waWMgOjogVGV4dCBFZGl0b3JzIDo6IERvY3VtZW50YXRpb24nLAorJ1RvcGljIDo6IFRleHQgRWRpdG9ycyA6OiBFbWFjcycsCisnVG9waWMgOjogVGV4dCBFZGl0b3JzIDo6IEludGVncmF0ZWQgRGV2ZWxvcG1lbnQgRW52aXJvbm1lbnRzIChJREUpJywKKydUb3BpYyA6OiBUZXh0IEVkaXRvcnMgOjogVGV4dCBQcm9jZXNzaW5nJywKKydUb3BpYyA6OiBUZXh0IEVkaXRvcnMgOjogV29yZCBQcm9jZXNzb3JzJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcnLAorJ1RvcGljIDo6IFRleHQgUHJvY2Vzc2luZyA6OiBGaWx0ZXJzJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcgOjogRm9udHMnLAorJ1RvcGljIDo6IFRleHQgUHJvY2Vzc2luZyA6OiBHZW5lcmFsJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcgOjogSW5kZXhpbmcnLAorJ1RvcGljIDo6IFRleHQgUHJvY2Vzc2luZyA6OiBMaW5ndWlzdGljJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcgOjogTWFya3VwJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcgOjogTWFya3VwIDo6IEhUTUwnLAorJ1RvcGljIDo6IFRleHQgUHJvY2Vzc2luZyA6OiBNYXJrdXAgOjogTGFUZVgnLAorJ1RvcGljIDo6IFRleHQgUHJvY2Vzc2luZyA6OiBNYXJrdXAgOjogU0dNTCcsCisnVG9waWMgOjogVGV4dCBQcm9jZXNzaW5nIDo6IE1hcmt1cCA6OiBWUk1MJywKKydUb3BpYyA6OiBUZXh0IFByb2Nlc3NpbmcgOjogTWFya3VwIDo6IFhNTCcsCisnVG9waWMgOjogVXRpbGl0aWVzJywKK10KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9fX2luaXRfXy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZDM0ZmM4Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL19faW5pdF9fLnB5CkBAIC0wLDAgKzEsNjMgQEAKKyIiIlN1YnBhY2thZ2UgY29udGFpbmluZyBhbGwgc3RhbmRhcmQgY29tbWFuZHMuIiIiCitpbXBvcnQgb3MKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nTW9kdWxlRXJyb3IKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHJlc29sdmVfbmFtZQorCitfX2FsbF9fID0gWydnZXRfY29tbWFuZF9uYW1lcycsICdzZXRfY29tbWFuZCcsICdnZXRfY29tbWFuZF9jbGFzcycsCisgICAgICAgICAgICdTVEFOREFSRF9DT01NQU5EUyddCisKK19DT01NQU5EUyA9IHsKKyAgICAnY2hlY2snOiAncGFja2FnaW5nLmNvbW1hbmQuY2hlY2suY2hlY2snLAorICAgICd0ZXN0JzogJ3BhY2thZ2luZy5jb21tYW5kLnRlc3QudGVzdCcsCisgICAgJ2J1aWxkJzogJ3BhY2thZ2luZy5jb21tYW5kLmJ1aWxkLmJ1aWxkJywKKyAgICAnYnVpbGRfcHknOiAncGFja2FnaW5nLmNvbW1hbmQuYnVpbGRfcHkuYnVpbGRfcHknLAorICAgICdidWlsZF9leHQnOiAncGFja2FnaW5nLmNvbW1hbmQuYnVpbGRfZXh0LmJ1aWxkX2V4dCcsCisgICAgJ2J1aWxkX2NsaWInOiAncGFja2FnaW5nLmNvbW1hbmQuYnVpbGRfY2xpYi5idWlsZF9jbGliJywKKyAgICAnYnVpbGRfc2NyaXB0cyc6ICdwYWNrYWdpbmcuY29tbWFuZC5idWlsZF9zY3JpcHRzLmJ1aWxkX3NjcmlwdHMnLAorICAgICdjbGVhbic6ICdwYWNrYWdpbmcuY29tbWFuZC5jbGVhbi5jbGVhbicsCisgICAgJ2luc3RhbGxfZGlzdCc6ICdwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsX2Rpc3QuaW5zdGFsbF9kaXN0JywKKyAgICAnaW5zdGFsbF9saWInOiAncGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9saWIuaW5zdGFsbF9saWInLAorICAgICdpbnN0YWxsX2hlYWRlcnMnOiAncGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9oZWFkZXJzLmluc3RhbGxfaGVhZGVycycsCisgICAgJ2luc3RhbGxfc2NyaXB0cyc6ICdwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsX3NjcmlwdHMuaW5zdGFsbF9zY3JpcHRzJywKKyAgICAnaW5zdGFsbF9kYXRhJzogJ3BhY2thZ2luZy5jb21tYW5kLmluc3RhbGxfZGF0YS5pbnN0YWxsX2RhdGEnLAorICAgICdpbnN0YWxsX2Rpc3RpbmZvJzoKKyAgICAgICAgJ3BhY2thZ2luZy5jb21tYW5kLmluc3RhbGxfZGlzdGluZm8uaW5zdGFsbF9kaXN0aW5mbycsCisgICAgJ3NkaXN0JzogJ3BhY2thZ2luZy5jb21tYW5kLnNkaXN0LnNkaXN0JywKKyAgICAnYmRpc3QnOiAncGFja2FnaW5nLmNvbW1hbmQuYmRpc3QuYmRpc3QnLAorICAgICdiZGlzdF9kdW1iJzogJ3BhY2thZ2luZy5jb21tYW5kLmJkaXN0X2R1bWIuYmRpc3RfZHVtYicsCisgICAgJ2JkaXN0X3dpbmluc3QnOiAncGFja2FnaW5nLmNvbW1hbmQuYmRpc3Rfd2luaW5zdC5iZGlzdF93aW5pbnN0JywKKyAgICAncmVnaXN0ZXInOiAncGFja2FnaW5nLmNvbW1hbmQucmVnaXN0ZXIucmVnaXN0ZXInLAorICAgICd1cGxvYWQnOiAncGFja2FnaW5nLmNvbW1hbmQudXBsb2FkLnVwbG9hZCcsCisgICAgJ3VwbG9hZF9kb2NzJzogJ3BhY2thZ2luZy5jb21tYW5kLnVwbG9hZF9kb2NzLnVwbG9hZF9kb2NzJywKK30KKworIyBYWFggdGhpcyBpcyBjcmFwcHkKK2lmIG9zLm5hbWUgPT0gJ250JzoKKyAgICBfQ09NTUFORFNbJ2JkaXN0X21zaSddID0gJ3BhY2thZ2luZy5jb21tYW5kLmJkaXN0X21zaS5iZGlzdF9tc2knCisKKyMgWFhYIHVzZSBPcmRlcmVkRGljdCB0byBwcmVzZXJ2ZSB0aGUgZ3JvdXBpbmcgKGJ1aWxkLXJlbGF0ZWQsIGluc3RhbGwtcmVsYXRlZCwKKyMgZGlzdHJpYnV0aW9uLXJlbGF0ZWQpCitTVEFOREFSRF9DT01NQU5EUyA9IHNldChfQ09NTUFORFMpCisKKworZGVmIGdldF9jb21tYW5kX25hbWVzKCk6CisgICAgIiIiUmV0dXJuIHJlZ2lzdGVyZWQgY29tbWFuZHMiIiIKKyAgICByZXR1cm4gc29ydGVkKF9DT01NQU5EUykKKworCitkZWYgc2V0X2NvbW1hbmQobG9jYXRpb24pOgorICAgIGNscyA9IHJlc29sdmVfbmFtZShsb2NhdGlvbikKKyAgICAjIFhYWCB3ZSB3YW50IHRvIGRvIHRoZSBkdWNrLXR5cGUgY2hlY2tpbmcgaGVyZQorICAgIF9DT01NQU5EU1tjbHMuZ2V0X2NvbW1hbmRfbmFtZSgpXSA9IGNscworCisKK2RlZiBnZXRfY29tbWFuZF9jbGFzcyhuYW1lKToKKyAgICAiIiJSZXR1cm4gdGhlIHJlZ2lzdGVyZWQgY29tbWFuZCIiIgorICAgIHRyeToKKyAgICAgICAgY2xzID0gX0NPTU1BTkRTW25hbWVdCisgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICByYWlzZSBQYWNrYWdpbmdNb2R1bGVFcnJvcigiSW52YWxpZCBjb21tYW5kICVzIiAlIG5hbWUpCisgICAgaWYgaXNpbnN0YW5jZShjbHMsIHN0cik6CisgICAgICAgIGNscyA9IHJlc29sdmVfbmFtZShjbHMpCisgICAgICAgIF9DT01NQU5EU1tuYW1lXSA9IGNscworICAgIHJldHVybiBjbHMKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9iZGlzdC5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9iZGlzdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMzkwY2RjCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2JkaXN0LnB5CkBAIC0wLDAgKzEsMTQxIEBACisiIiJDcmVhdGUgYSBidWlsdCAoYmluYXJ5KSBkaXN0cmlidXRpb24uCisKK0lmIGEgLS1mb3JtYXRzIG9wdGlvbiB3YXMgZ2l2ZW4gb24gdGhlIGNvbW1hbmQgbGluZSwgdGhpcyBjb21tYW5kIHdpbGwKK2NhbGwgdGhlIGNvcnJlc3BvbmRpbmcgYmRpc3RfKiBjb21tYW5kczsgaWYgdGhlIG9wdGlvbiB3YXMgYWJzZW50LCBhCitiZGlzdF8qIGNvbW1hbmQgZGVwZW5kaW5nIG9uIHRoZSBjdXJyZW50IHBsYXRmb3JtIHdpbGwgYmUgY2FsbGVkLgorIiIiCisKK2ltcG9ydCBvcworCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgdXRpbAorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nUGxhdGZvcm1FcnJvciwgUGFja2FnaW5nT3B0aW9uRXJyb3IKKworCitkZWYgc2hvd19mb3JtYXRzKCk6CisgICAgIiIiUHJpbnQgbGlzdCBvZiBhdmFpbGFibGUgZm9ybWF0cyAoYXJndW1lbnRzIHRvICItLWZvcm1hdCIgb3B0aW9uKS4KKyAgICAiIiIKKyAgICBmcm9tIHBhY2thZ2luZy5mYW5jeV9nZXRvcHQgaW1wb3J0IEZhbmN5R2V0b3B0CisgICAgZm9ybWF0cyA9IFtdCisgICAgZm9yIGZvcm1hdCBpbiBiZGlzdC5mb3JtYXRfY29tbWFuZHM6CisgICAgICAgIGZvcm1hdHMuYXBwZW5kKCgiZm9ybWF0cz0iICsgZm9ybWF0LCBOb25lLAorICAgICAgICAgICAgICAgICAgICAgICAgYmRpc3QuZm9ybWF0X2NvbW1hbmRbZm9ybWF0XVsxXSkpCisgICAgcHJldHR5X3ByaW50ZXIgPSBGYW5jeUdldG9wdChmb3JtYXRzKQorICAgIHByZXR0eV9wcmludGVyLnByaW50X2hlbHAoIkxpc3Qgb2YgYXZhaWxhYmxlIGRpc3RyaWJ1dGlvbiBmb3JtYXRzOiIpCisKKworY2xhc3MgYmRpc3QoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJjcmVhdGUgYSBidWlsdCAoYmluYXJ5KSBkaXN0cmlidXRpb24iCisKKyAgICB1c2VyX29wdGlvbnMgPSBbKCdiZGlzdC1iYXNlPScsICdiJywKKyAgICAgICAgICAgICAgICAgICAgICJ0ZW1wb3JhcnkgZGlyZWN0b3J5IGZvciBjcmVhdGluZyBidWlsdCBkaXN0cmlidXRpb25zIiksCisgICAgICAgICAgICAgICAgICAgICgncGxhdC1uYW1lPScsICdwJywKKyAgICAgICAgICAgICAgICAgICAgICJwbGF0Zm9ybSBuYW1lIHRvIGVtYmVkIGluIGdlbmVyYXRlZCBmaWxlbmFtZXMgIgorICAgICAgICAgICAgICAgICAgICAgIihkZWZhdWx0OiAlcykiICUgdXRpbC5nZXRfcGxhdGZvcm0oKSksCisgICAgICAgICAgICAgICAgICAgICgnZm9ybWF0cz0nLCBOb25lLAorICAgICAgICAgICAgICAgICAgICAgImZvcm1hdHMgZm9yIGRpc3RyaWJ1dGlvbiAoY29tbWEtc2VwYXJhdGVkIGxpc3QpIiksCisgICAgICAgICAgICAgICAgICAgICgnZGlzdC1kaXI9JywgJ2QnLAorICAgICAgICAgICAgICAgICAgICAgImRpcmVjdG9yeSB0byBwdXQgZmluYWwgYnVpbHQgZGlzdHJpYnV0aW9ucyBpbiAiCisgICAgICAgICAgICAgICAgICAgICAiW2RlZmF1bHQ6IGRpc3RdIiksCisgICAgICAgICAgICAgICAgICAgICgnc2tpcC1idWlsZCcsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAic2tpcCByZWJ1aWxkaW5nIGV2ZXJ5dGhpbmcgKGZvciB0ZXN0aW5nL2RlYnVnZ2luZykiKSwKKyAgICAgICAgICAgICAgICAgICAgKCdvd25lcj0nLCAndScsCisgICAgICAgICAgICAgICAgICAgICAiT3duZXIgbmFtZSB1c2VkIHdoZW4gY3JlYXRpbmcgYSB0YXIgZmlsZSIKKyAgICAgICAgICAgICAgICAgICAgICIgW2RlZmF1bHQ6IGN1cnJlbnQgdXNlcl0iKSwKKyAgICAgICAgICAgICAgICAgICAgKCdncm91cD0nLCAnZycsCisgICAgICAgICAgICAgICAgICAgICAiR3JvdXAgbmFtZSB1c2VkIHdoZW4gY3JlYXRpbmcgYSB0YXIgZmlsZSIKKyAgICAgICAgICAgICAgICAgICAgICIgW2RlZmF1bHQ6IGN1cnJlbnQgZ3JvdXBdIiksCisgICAgICAgICAgICAgICAgICAgXQorCisgICAgYm9vbGVhbl9vcHRpb25zID0gWydza2lwLWJ1aWxkJ10KKworICAgIGhlbHBfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdoZWxwLWZvcm1hdHMnLCBOb25lLAorICAgICAgICAgImxpc3RzIGF2YWlsYWJsZSBkaXN0cmlidXRpb24gZm9ybWF0cyIsIHNob3dfZm9ybWF0cyksCisgICAgICAgIF0KKworICAgICMgVGhpcyBpcyBvZiBjb3Vyc2UgdmVyeSBzaW1wbGlzdGljLiAgVGhlIHZhcmlvdXMgVU5JWCBmYW1pbHkgb3BlcmF0aW5nCisgICAgIyBzeXN0ZW1zIGhhdmUgdGhlaXIgc3BlY2lmaWMgZm9ybWF0cywgYnV0IHRoZXkgYXJlIG91dCBvZiBzY29wZSBmb3IgdXM7CisgICAgIyBiZGlzdF9kdW1iIGlzLCB3ZWxsLCBkdW1iOyBpdCdzIG1vcmUgYSBidWlsZGluZyBibG9jayBmb3Igb3RoZXIKKyAgICAjIHBhY2thZ2luZyB0b29scyB0aGFuIGEgcmVhbCBlbmQtdXNlciBiaW5hcnkgZm9ybWF0LgorICAgIGRlZmF1bHRfZm9ybWF0ID0geydwb3NpeCc6ICdnenRhcicsCisgICAgICAgICAgICAgICAgICAgICAgJ250JzogJ3ppcCcsCisgICAgICAgICAgICAgICAgICAgICAgJ29zMic6ICd6aXAnfQorCisgICAgIyBFc3RhYmxpc2ggdGhlIHByZWZlcnJlZCBvcmRlciAoZm9yIHRoZSAtLWhlbHAtZm9ybWF0cyBvcHRpb24pLgorICAgIGZvcm1hdF9jb21tYW5kcyA9IFsnZ3p0YXInLCAnYnp0YXInLCAndGFyJywKKyAgICAgICAgICAgICAgICAgICAgICAgJ3dpbmluc3QnLCAnemlwJywgJ21zaSddCisKKyAgICAjIEFuZCB0aGUgcmVhbCBpbmZvcm1hdGlvbi4KKyAgICBmb3JtYXRfY29tbWFuZCA9IHsnZ3p0YXInOiAoJ2JkaXN0X2R1bWInLCAiZ3ppcCdlZCB0YXIgZmlsZSIpLAorICAgICAgICAgICAgICAgICAgICAgICdienRhcic6ICgnYmRpc3RfZHVtYicsICJiemlwMidlZCB0YXIgZmlsZSIpLAorICAgICAgICAgICAgICAgICAgICAgICd0YXInOiAgICgnYmRpc3RfZHVtYicsICJ0YXIgZmlsZSIpLAorICAgICAgICAgICAgICAgICAgICAgICd3aW5pbnN0JzogKCdiZGlzdF93aW5pbnN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiV2luZG93cyBleGVjdXRhYmxlIGluc3RhbGxlciIpLAorICAgICAgICAgICAgICAgICAgICAgICd6aXAnOiAgICgnYmRpc3RfZHVtYicsICJaSVAgZmlsZSIpLAorICAgICAgICAgICAgICAgICAgICAgICdtc2knOiAgICgnYmRpc3RfbXNpJywgICJNaWNyb3NvZnQgSW5zdGFsbGVyIiksCisgICAgICAgICAgICAgICAgICAgICB9CisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLmJkaXN0X2Jhc2UgPSBOb25lCisgICAgICAgIHNlbGYucGxhdF9uYW1lID0gTm9uZQorICAgICAgICBzZWxmLmZvcm1hdHMgPSBOb25lCisgICAgICAgIHNlbGYuZGlzdF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYuc2tpcF9idWlsZCA9IEZhbHNlCisgICAgICAgIHNlbGYuZ3JvdXAgPSBOb25lCisgICAgICAgIHNlbGYub3duZXIgPSBOb25lCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIyBoYXZlIHRvIGZpbmFsaXplICdwbGF0X25hbWUnIGJlZm9yZSAnYmRpc3RfYmFzZScKKyAgICAgICAgaWYgc2VsZi5wbGF0X25hbWUgaXMgTm9uZToKKyAgICAgICAgICAgIGlmIHNlbGYuc2tpcF9idWlsZDoKKyAgICAgICAgICAgICAgICBzZWxmLnBsYXRfbmFtZSA9IHV0aWwuZ2V0X3BsYXRmb3JtKCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5wbGF0X25hbWUgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYnVpbGQnKS5wbGF0X25hbWUKKworICAgICAgICAjICdiZGlzdF9iYXNlJyAtLSBwYXJlbnQgb2YgcGVyLWJ1aWx0LWRpc3RyaWJ1dGlvbi1mb3JtYXQKKyAgICAgICAgIyB0ZW1wb3JhcnkgZGlyZWN0b3JpZXMgKGVnLiB3ZSdsbCBwcm9iYWJseSBoYXZlCisgICAgICAgICMgImJ1aWxkL2JkaXN0LjxwbGF0Pi9kdW1iIiwgZXRjLikKKyAgICAgICAgaWYgc2VsZi5iZGlzdF9iYXNlIGlzIE5vbmU6CisgICAgICAgICAgICBidWlsZF9iYXNlID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2J1aWxkJykuYnVpbGRfYmFzZQorICAgICAgICAgICAgc2VsZi5iZGlzdF9iYXNlID0gb3MucGF0aC5qb2luKGJ1aWxkX2Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JkaXN0LicgKyBzZWxmLnBsYXRfbmFtZSkKKworICAgICAgICBzZWxmLmVuc3VyZV9zdHJpbmdfbGlzdCgnZm9ybWF0cycpCisgICAgICAgIGlmIHNlbGYuZm9ybWF0cyBpcyBOb25lOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuZm9ybWF0cyA9IFtzZWxmLmRlZmF1bHRfZm9ybWF0W29zLm5hbWVdXQorICAgICAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICJkb24ndCBrbm93IGhvdyB0byBjcmVhdGUgYnVpbHQgZGlzdHJpYnV0aW9ucyAiCisgICAgICAgICAgICAgICAgICAgICJvbiBwbGF0Zm9ybSAlcyIgJSBvcy5uYW1lKQorCisgICAgICAgIGlmIHNlbGYuZGlzdF9kaXIgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuZGlzdF9kaXIgPSAiZGlzdCIKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgICMgRmlndXJlIG91dCB3aGljaCBzdWItY29tbWFuZHMgd2UgbmVlZCB0byBydW4uCisgICAgICAgIGNvbW1hbmRzID0gW10KKyAgICAgICAgZm9yIGZvcm1hdCBpbiBzZWxmLmZvcm1hdHM6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgY29tbWFuZHMuYXBwZW5kKHNlbGYuZm9ybWF0X2NvbW1hbmRbZm9ybWF0XVswXSkKKyAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigiaW52YWxpZCBmb3JtYXQgJyVzJyIgJSBmb3JtYXQpCisKKyAgICAgICAgIyBSZWluaXRpYWxpemUgYW5kIHJ1biBlYWNoIGNvbW1hbmQuCisgICAgICAgIGZvciBpIGluIHJhbmdlKGxlbihzZWxmLmZvcm1hdHMpKToKKyAgICAgICAgICAgIGNtZF9uYW1lID0gY29tbWFuZHNbaV0KKyAgICAgICAgICAgIHN1Yl9jbWQgPSBzZWxmLnJlaW5pdGlhbGl6ZV9jb21tYW5kKGNtZF9uYW1lKQorICAgICAgICAgICAgc3ViX2NtZC5mb3JtYXQgPSBzZWxmLmZvcm1hdHNbaV0KKworICAgICAgICAgICAgIyBwYXNzaW5nIHRoZSBvd25lciBhbmQgZ3JvdXAgbmFtZXMgZm9yIHRhciBhcmNoaXZpbmcKKyAgICAgICAgICAgIGlmIGNtZF9uYW1lID09ICdiZGlzdF9kdW1iJzoKKyAgICAgICAgICAgICAgICBzdWJfY21kLm93bmVyID0gc2VsZi5vd25lcgorICAgICAgICAgICAgICAgIHN1Yl9jbWQuZ3JvdXAgPSBzZWxmLmdyb3VwCisKKyAgICAgICAgICAgICMgSWYgd2UncmUgZ29pbmcgdG8gbmVlZCB0byBydW4gdGhpcyBjb21tYW5kIGFnYWluLCB0ZWxsIGl0IHRvCisgICAgICAgICAgICAjIGtlZXAgaXRzIHRlbXBvcmFyeSBmaWxlcyBhcm91bmQgc28gc3Vic2VxdWVudCBydW5zIGdvIGZhc3Rlci4KKyAgICAgICAgICAgIGlmIGNtZF9uYW1lIGluIGNvbW1hbmRzW2krMTpdOgorICAgICAgICAgICAgICAgIHN1Yl9jbWQua2VlcF90ZW1wID0gVHJ1ZQorICAgICAgICAgICAgc2VsZi5ydW5fY29tbWFuZChjbWRfbmFtZSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9iZGlzdF9kdW1iLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2JkaXN0X2R1bWIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTQ4ZTNjNAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9iZGlzdF9kdW1iLnB5CkBAIC0wLDAgKzEsMTM5IEBACisiIiJDcmVhdGUgYSAiZHVtYiIgYnVpbHQgZGlzdHJpYnV0aW9uLgorCitBIGR1bWIgZGlzdHJpYnV0aW9uIGlzIGp1c3QgYW4gYXJjaGl2ZSBtZWFudCB0byBiZSB1bnBhY2tlZCB1bmRlcgorc3lzLnByZWZpeCBvciBzeXMuZXhlY19wcmVmaXguCisiIiIKKworaW1wb3J0IG9zCitmcm9tIHNodXRpbCBpbXBvcnQgcm10cmVlCitmcm9tIHN5c2NvbmZpZyBpbXBvcnQgZ2V0X3B5dGhvbl92ZXJzaW9uCisKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IGdldF9wbGF0Zm9ybQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nUGxhdGZvcm1FcnJvcgorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorCisKK2NsYXNzIGJkaXN0X2R1bWIoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICdjcmVhdGUgYSAiZHVtYiIgYnVpbHQgZGlzdHJpYnV0aW9uJworCisgICAgdXNlcl9vcHRpb25zID0gWygnYmRpc3QtZGlyPScsICdkJywKKyAgICAgICAgICAgICAgICAgICAgICJ0ZW1wb3JhcnkgZGlyZWN0b3J5IGZvciBjcmVhdGluZyB0aGUgZGlzdHJpYnV0aW9uIiksCisgICAgICAgICAgICAgICAgICAgICgncGxhdC1uYW1lPScsICdwJywKKyAgICAgICAgICAgICAgICAgICAgICJwbGF0Zm9ybSBuYW1lIHRvIGVtYmVkIGluIGdlbmVyYXRlZCBmaWxlbmFtZXMgIgorICAgICAgICAgICAgICAgICAgICAgIihkZWZhdWx0OiAlcykiICUgZ2V0X3BsYXRmb3JtKCkpLAorICAgICAgICAgICAgICAgICAgICAoJ2Zvcm1hdD0nLCAnZicsCisgICAgICAgICAgICAgICAgICAgICAiYXJjaGl2ZSBmb3JtYXQgdG8gY3JlYXRlICh0YXIsIGd6dGFyLCBienRhciwgemlwKSIpLAorICAgICAgICAgICAgICAgICAgICAoJ2tlZXAtdGVtcCcsICdrJywKKyAgICAgICAgICAgICAgICAgICAgICJrZWVwIHRoZSBwc2V1ZG8taW5zdGFsbGF0aW9uIHRyZWUgYXJvdW5kIGFmdGVyICIgKworICAgICAgICAgICAgICAgICAgICAgImNyZWF0aW5nIHRoZSBkaXN0cmlidXRpb24gYXJjaGl2ZSIpLAorICAgICAgICAgICAgICAgICAgICAoJ2Rpc3QtZGlyPScsICdkJywKKyAgICAgICAgICAgICAgICAgICAgICJkaXJlY3RvcnkgdG8gcHV0IGZpbmFsIGJ1aWx0IGRpc3RyaWJ1dGlvbnMgaW4iKSwKKyAgICAgICAgICAgICAgICAgICAgKCdza2lwLWJ1aWxkJywgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICJza2lwIHJlYnVpbGRpbmcgZXZlcnl0aGluZyAoZm9yIHRlc3RpbmcvZGVidWdnaW5nKSIpLAorICAgICAgICAgICAgICAgICAgICAoJ3JlbGF0aXZlJywgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICJidWlsZCB0aGUgYXJjaGl2ZSB1c2luZyByZWxhdGl2ZSBwYXRocyIKKyAgICAgICAgICAgICAgICAgICAgICIoZGVmYXVsdDogZmFsc2UpIiksCisgICAgICAgICAgICAgICAgICAgICgnb3duZXI9JywgJ3UnLAorICAgICAgICAgICAgICAgICAgICAgIk93bmVyIG5hbWUgdXNlZCB3aGVuIGNyZWF0aW5nIGEgdGFyIGZpbGUiCisgICAgICAgICAgICAgICAgICAgICAiIFtkZWZhdWx0OiBjdXJyZW50IHVzZXJdIiksCisgICAgICAgICAgICAgICAgICAgICgnZ3JvdXA9JywgJ2cnLAorICAgICAgICAgICAgICAgICAgICAgIkdyb3VwIG5hbWUgdXNlZCB3aGVuIGNyZWF0aW5nIGEgdGFyIGZpbGUiCisgICAgICAgICAgICAgICAgICAgICAiIFtkZWZhdWx0OiBjdXJyZW50IGdyb3VwXSIpLAorICAgICAgICAgICAgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsna2VlcC10ZW1wJywgJ3NraXAtYnVpbGQnLCAncmVsYXRpdmUnXQorCisgICAgZGVmYXVsdF9mb3JtYXQgPSB7J3Bvc2l4JzogJ2d6dGFyJywKKyAgICAgICAgICAgICAgICAgICAgICAnbnQnOiAnemlwJywKKyAgICAgICAgICAgICAgICAgICAgICAnb3MyJzogJ3ppcCd9CisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLmJkaXN0X2RpciA9IE5vbmUKKyAgICAgICAgc2VsZi5wbGF0X25hbWUgPSBOb25lCisgICAgICAgIHNlbGYuZm9ybWF0ID0gTm9uZQorICAgICAgICBzZWxmLmtlZXBfdGVtcCA9IEZhbHNlCisgICAgICAgIHNlbGYuZGlzdF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYuc2tpcF9idWlsZCA9IE5vbmUKKyAgICAgICAgc2VsZi5yZWxhdGl2ZSA9IEZhbHNlCisgICAgICAgIHNlbGYub3duZXIgPSBOb25lCisgICAgICAgIHNlbGYuZ3JvdXAgPSBOb25lCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgaWYgc2VsZi5iZGlzdF9kaXIgaXMgTm9uZToKKyAgICAgICAgICAgIGJkaXN0X2Jhc2UgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYmRpc3QnKS5iZGlzdF9iYXNlCisgICAgICAgICAgICBzZWxmLmJkaXN0X2RpciA9IG9zLnBhdGguam9pbihiZGlzdF9iYXNlLCAnZHVtYicpCisKKyAgICAgICAgaWYgc2VsZi5mb3JtYXQgaXMgTm9uZToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLmZvcm1hdCA9IHNlbGYuZGVmYXVsdF9mb3JtYXRbb3MubmFtZV0KKyAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKAorICAgICAgICAgICAgICAgICAgICAiZG9uJ3Qga25vdyBob3cgdG8gY3JlYXRlIGR1bWIgYnVpbHQgZGlzdHJpYnV0aW9ucyAiCisgICAgICAgICAgICAgICAgICAgICJvbiBwbGF0Zm9ybSAlcyIgJSBvcy5uYW1lKQorCisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdiZGlzdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkaXN0X2RpcicsICdwbGF0X25hbWUnLCAnc2tpcF9idWlsZCcpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5za2lwX2J1aWxkOgorICAgICAgICAgICAgc2VsZi5ydW5fY29tbWFuZCgnYnVpbGQnKQorCisgICAgICAgIGluc3RhbGwgPSBzZWxmLnJlaW5pdGlhbGl6ZV9jb21tYW5kKCdpbnN0YWxsX2Rpc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWluaXRfc3ViY29tbWFuZHM9VHJ1ZSkKKyAgICAgICAgaW5zdGFsbC5yb290ID0gc2VsZi5iZGlzdF9kaXIKKyAgICAgICAgaW5zdGFsbC5za2lwX2J1aWxkID0gc2VsZi5za2lwX2J1aWxkCisgICAgICAgIGluc3RhbGwud2Fybl9kaXIgPSBGYWxzZQorCisgICAgICAgIGxvZ2dlci5pbmZvKCJpbnN0YWxsaW5nIHRvICVzIiwgc2VsZi5iZGlzdF9kaXIpCisgICAgICAgIHNlbGYucnVuX2NvbW1hbmQoJ2luc3RhbGxfZGlzdCcpCisKKyAgICAgICAgIyBBbmQgbWFrZSBhbiBhcmNoaXZlIHJlbGF0aXZlIHRvIHRoZSByb290IG9mIHRoZQorICAgICAgICAjIHBzZXVkby1pbnN0YWxsYXRpb24gdHJlZS4KKyAgICAgICAgYXJjaGl2ZV9iYXNlbmFtZSA9ICIlcy4lcyIgJSAoc2VsZi5kaXN0cmlidXRpb24uZ2V0X2Z1bGxuYW1lKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYucGxhdF9uYW1lKQorCisgICAgICAgICMgT1MvMiBvYmplY3RzIHRvIGFueSAiOiIgY2hhcmFjdGVycyBpbiBhIGZpbGVuYW1lIChzdWNoIGFzIHdoZW4KKyAgICAgICAgIyBhIHRpbWVzdGFtcCBpcyB1c2VkIGluIGEgdmVyc2lvbikgc28gY2hhbmdlIHRoZW0gdG8gaHlwaGVucy4KKyAgICAgICAgaWYgb3MubmFtZSA9PSAib3MyIjoKKyAgICAgICAgICAgIGFyY2hpdmVfYmFzZW5hbWUgPSBhcmNoaXZlX2Jhc2VuYW1lLnJlcGxhY2UoIjoiLCAiLSIpCisKKyAgICAgICAgcHNldWRvaW5zdGFsbF9yb290ID0gb3MucGF0aC5qb2luKHNlbGYuZGlzdF9kaXIsIGFyY2hpdmVfYmFzZW5hbWUpCisgICAgICAgIGlmIG5vdCBzZWxmLnJlbGF0aXZlOgorICAgICAgICAgICAgYXJjaGl2ZV9yb290ID0gc2VsZi5iZGlzdF9kaXIKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIChzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKSBhbmQKKyAgICAgICAgICAgICAgICAoaW5zdGFsbC5pbnN0YWxsX2Jhc2UgIT0gaW5zdGFsbC5pbnN0YWxsX3BsYXRiYXNlKSk6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigKKyAgICAgICAgICAgICAgICAgICAgImNhbid0IG1ha2UgYSBkdW1iIGJ1aWx0IGRpc3RyaWJ1dGlvbiB3aGVyZSBiYXNlIGFuZCAiCisgICAgICAgICAgICAgICAgICAgICJwbGF0YmFzZSBhcmUgZGlmZmVyZW50ICglciwgJXIpIiAlCisgICAgICAgICAgICAgICAgICAgIChpbnN0YWxsLmluc3RhbGxfYmFzZSwgaW5zdGFsbC5pbnN0YWxsX3BsYXRiYXNlKSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgYXJjaGl2ZV9yb290ID0gb3MucGF0aC5qb2luKAorICAgICAgICAgICAgICAgICAgICBzZWxmLmJkaXN0X2RpciwKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fZW5zdXJlX3JlbGF0aXZlKGluc3RhbGwuaW5zdGFsbF9iYXNlKSkKKworICAgICAgICAjIE1ha2UgdGhlIGFyY2hpdmUKKyAgICAgICAgZmlsZW5hbWUgPSBzZWxmLm1ha2VfYXJjaGl2ZShwc2V1ZG9pbnN0YWxsX3Jvb3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5mb3JtYXQsIHJvb3RfZGlyPWFyY2hpdmVfcm9vdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvd25lcj1zZWxmLm93bmVyLCBncm91cD1zZWxmLmdyb3VwKQorICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKToKKyAgICAgICAgICAgIHB5dmVyc2lvbiA9IGdldF9weXRob25fdmVyc2lvbigpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBweXZlcnNpb24gPSAnYW55JworICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbi5kaXN0X2ZpbGVzLmFwcGVuZCgoJ2JkaXN0X2R1bWInLCBweXZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZSkpCisKKyAgICAgICAgaWYgbm90IHNlbGYua2VlcF90ZW1wOgorICAgICAgICAgICAgaWYgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgIGxvZ2dlci5pbmZvKCdyZW1vdmluZyAlcycsIHNlbGYuYmRpc3RfZGlyKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBybXRyZWUoc2VsZi5iZGlzdF9kaXIpCisKKyAgICBkZWYgX2Vuc3VyZV9yZWxhdGl2ZShzZWxmLCBwYXRoKToKKyAgICAgICAgIyBjb3BpZWQgZnJvbSBkaXJfdXRpbCwgZGVsZXRlZAorICAgICAgICBkcml2ZSwgcGF0aCA9IG9zLnBhdGguc3BsaXRkcml2ZShwYXRoKQorICAgICAgICBpZiBwYXRoWzA6MV0gPT0gb3Muc2VwOgorICAgICAgICAgICAgcGF0aCA9IGRyaXZlICsgcGF0aFsxOl0KKyAgICAgICAgcmV0dXJuIHBhdGgKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9iZGlzdF9tc2kucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYmRpc3RfbXNpLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmOGVjYTYKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYmRpc3RfbXNpLnB5CkBAIC0wLDAgKzEsNzQ0IEBACisiIiJDcmVhdGUgYSBNaWNyb3NvZnQgSW5zdGFsbGVyICgubXNpKSBiaW5hcnkgZGlzdHJpYnV0aW9uLiIiIgorCisjIENvcHlyaWdodCAoQykgMjAwNSwgMjAwNiBNYXJ0aW4gdm9uIEzDtndpcworIyBMaWNlbnNlZCB0byBQU0YgdW5kZXIgYSBDb250cmlidXRvciBBZ3JlZW1lbnQuCisKK2ltcG9ydCBzeXMKK2ltcG9ydCBvcworaW1wb3J0IG1zaWxpYgorCisKK2Zyb20gc3lzY29uZmlnIGltcG9ydCBnZXRfcHl0aG9uX3ZlcnNpb24KK2Zyb20gc2h1dGlsIGltcG9ydCBybXRyZWUKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBOb3JtYWxpemVkVmVyc2lvbgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvcgorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlciBhcyBsb2cKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IGdldF9wbGF0Zm9ybQorZnJvbSBtc2lsaWIgaW1wb3J0IHNjaGVtYSwgc2VxdWVuY2UsIHRleHQKK2Zyb20gbXNpbGliIGltcG9ydCBEaXJlY3RvcnksIEZlYXR1cmUsIERpYWxvZywgYWRkX2RhdGEKKworY2xhc3MgTVNJVmVyc2lvbihOb3JtYWxpemVkVmVyc2lvbik6CisgICAgIiIiCisgICAgTVNJIFByb2R1Y3RWZXJzaW9uIG11c3QgYmUgc3RyaWN0bHkgbnVtZXJpYy4KKyAgICBNU0lWZXJzaW9uIGRpc2FsbG93cyBwcmVyZWxlYXNlIGFuZCBwb3N0cmVsZWFzZSB2ZXJzaW9ucy4KKyAgICAiIiIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgc3VwZXIoTVNJVmVyc2lvbiwgc2VsZikuX19pbml0X18oKmFyZ3MsICoqa3dhcmdzKQorICAgICAgICBpZiBub3Qgc2VsZi5pc19maW5hbDoKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIlByb2R1Y3RWZXJzaW9uIG11c3QgYmUgc3RyaWN0bHkgbnVtZXJpYyIpCisKK2NsYXNzIFB5RGlhbG9nKERpYWxvZyk6CisgICAgIiIiRGlhbG9nIGNsYXNzIHdpdGggYSBmaXhlZCBsYXlvdXQ6IGNvbnRyb2xzIGF0IHRoZSB0b3AsIHRoZW4gYSBydWxlciwKKyAgICB0aGVuIGEgbGlzdCBvZiBidXR0b25zOiBiYWNrLCBuZXh0LCBjYW5jZWwuIE9wdGlvbmFsbHkgYSBiaXRtYXAgYXQgdGhlCisgICAgbGVmdC4iIiIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3cpOgorICAgICAgICAiIiJEaWFsb2coZGF0YWJhc2UsIG5hbWUsIHgsIHksIHcsIGgsIGF0dHJpYnV0ZXMsIHRpdGxlLCBmaXJzdCwKKyAgICAgICAgZGVmYXVsdCwgY2FuY2VsLCBiaXRtYXA9dHJ1ZSkiIiIKKyAgICAgICAgc3VwZXIoUHlEaWFsb2csIHNlbGYpLl9faW5pdF9fKCphcmdzKQorICAgICAgICBydWxlciA9IHNlbGYuaCAtIDM2CisgICAgICAgICNpZiBrdy5nZXQoImJpdG1hcCIsIFRydWUpOgorICAgICAgICAjICAgIHNlbGYuYml0bWFwKCJCaXRtYXAiLCAwLCAwLCBibXdpZHRoLCBydWxlciwgIlB5dGhvbldpbiIpCisgICAgICAgIHNlbGYubGluZSgiQm90dG9tTGluZSIsIDAsIHJ1bGVyLCBzZWxmLncsIDApCisKKyAgICBkZWYgdGl0bGUoc2VsZiwgdGl0bGUpOgorICAgICAgICAiU2V0IHRoZSB0aXRsZSB0ZXh0IG9mIHRoZSBkaWFsb2cgYXQgdGhlIHRvcC4iCisgICAgICAgICMgbmFtZSwgeCwgeSwgdywgaCwgZmxhZ3M9VmlzaWJsZXxFbmFibGVkfFRyYW5zcGFyZW50fE5vUHJlZml4LAorICAgICAgICAjIHRleHQsIGluIFZlcmRhbmFCb2xkMTAKKyAgICAgICAgc2VsZi50ZXh0KCJUaXRsZSIsIDE1LCAxMCwgMzIwLCA2MCwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICAgIHIie1xWZXJkYW5hQm9sZDEwfSVzIiAlIHRpdGxlKQorCisgICAgZGVmIGJhY2soc2VsZiwgdGl0bGUsIG5leHQsIG5hbWUgPSAiQmFjayIsIGFjdGl2ZSA9IDEpOgorICAgICAgICAiIiJBZGQgYSBiYWNrIGJ1dHRvbiB3aXRoIGEgZ2l2ZW4gdGl0bGUsIHRoZSB0YWItbmV4dCBidXR0b24sCisgICAgICAgIGl0cyBuYW1lIGluIHRoZSBDb250cm9sIHRhYmxlLCBwb3NzaWJseSBpbml0aWFsbHkgZGlzYWJsZWQuCisKKyAgICAgICAgUmV0dXJuIHRoZSBidXR0b24sIHNvIHRoYXQgZXZlbnRzIGNhbiBiZSBhc3NvY2lhdGVkIiIiCisgICAgICAgIGlmIGFjdGl2ZToKKyAgICAgICAgICAgIGZsYWdzID0gMyAjIFZpc2libGV8RW5hYmxlZAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZmxhZ3MgPSAxICMgVmlzaWJsZQorICAgICAgICByZXR1cm4gc2VsZi5wdXNoYnV0dG9uKG5hbWUsIDE4MCwgc2VsZi5oLTI3ICwgNTYsIDE3LCBmbGFncywgdGl0bGUsIG5leHQpCisKKyAgICBkZWYgY2FuY2VsKHNlbGYsIHRpdGxlLCBuZXh0LCBuYW1lID0gIkNhbmNlbCIsIGFjdGl2ZSA9IDEpOgorICAgICAgICAiIiJBZGQgYSBjYW5jZWwgYnV0dG9uIHdpdGggYSBnaXZlbiB0aXRsZSwgdGhlIHRhYi1uZXh0IGJ1dHRvbiwKKyAgICAgICAgaXRzIG5hbWUgaW4gdGhlIENvbnRyb2wgdGFibGUsIHBvc3NpYmx5IGluaXRpYWxseSBkaXNhYmxlZC4KKworICAgICAgICBSZXR1cm4gdGhlIGJ1dHRvbiwgc28gdGhhdCBldmVudHMgY2FuIGJlIGFzc29jaWF0ZWQiIiIKKyAgICAgICAgaWYgYWN0aXZlOgorICAgICAgICAgICAgZmxhZ3MgPSAzICMgVmlzaWJsZXxFbmFibGVkCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBmbGFncyA9IDEgIyBWaXNpYmxlCisgICAgICAgIHJldHVybiBzZWxmLnB1c2hidXR0b24obmFtZSwgMzA0LCBzZWxmLmgtMjcsIDU2LCAxNywgZmxhZ3MsIHRpdGxlLCBuZXh0KQorCisgICAgZGVmIG5leHQoc2VsZiwgdGl0bGUsIG5leHQsIG5hbWUgPSAiTmV4dCIsIGFjdGl2ZSA9IDEpOgorICAgICAgICAiIiJBZGQgYSBOZXh0IGJ1dHRvbiB3aXRoIGEgZ2l2ZW4gdGl0bGUsIHRoZSB0YWItbmV4dCBidXR0b24sCisgICAgICAgIGl0cyBuYW1lIGluIHRoZSBDb250cm9sIHRhYmxlLCBwb3NzaWJseSBpbml0aWFsbHkgZGlzYWJsZWQuCisKKyAgICAgICAgUmV0dXJuIHRoZSBidXR0b24sIHNvIHRoYXQgZXZlbnRzIGNhbiBiZSBhc3NvY2lhdGVkIiIiCisgICAgICAgIGlmIGFjdGl2ZToKKyAgICAgICAgICAgIGZsYWdzID0gMyAjIFZpc2libGV8RW5hYmxlZAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZmxhZ3MgPSAxICMgVmlzaWJsZQorICAgICAgICByZXR1cm4gc2VsZi5wdXNoYnV0dG9uKG5hbWUsIDIzNiwgc2VsZi5oLTI3LCA1NiwgMTcsIGZsYWdzLCB0aXRsZSwgbmV4dCkKKworICAgIGRlZiB4YnV0dG9uKHNlbGYsIG5hbWUsIHRpdGxlLCBuZXh0LCB4cG9zKToKKyAgICAgICAgIiIiQWRkIGEgYnV0dG9uIHdpdGggYSBnaXZlbiB0aXRsZSwgdGhlIHRhYi1uZXh0IGJ1dHRvbiwKKyAgICAgICAgaXRzIG5hbWUgaW4gdGhlIENvbnRyb2wgdGFibGUsIGdpdmluZyBpdHMgeCBwb3NpdGlvbjsgdGhlCisgICAgICAgIHktcG9zaXRpb24gaXMgYWxpZ25lZCB3aXRoIHRoZSBvdGhlciBidXR0b25zLgorCisgICAgICAgIFJldHVybiB0aGUgYnV0dG9uLCBzbyB0aGF0IGV2ZW50cyBjYW4gYmUgYXNzb2NpYXRlZCIiIgorICAgICAgICByZXR1cm4gc2VsZi5wdXNoYnV0dG9uKG5hbWUsIGludChzZWxmLncqeHBvcyAtIDI4KSwgc2VsZi5oLTI3LCA1NiwgMTcsIDMsIHRpdGxlLCBuZXh0KQorCitjbGFzcyBiZGlzdF9tc2koQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJjcmVhdGUgYSBNaWNyb3NvZnQgSW5zdGFsbGVyICgubXNpKSBiaW5hcnkgZGlzdHJpYnV0aW9uIgorCisgICAgdXNlcl9vcHRpb25zID0gWygnYmRpc3QtZGlyPScsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAidGVtcG9yYXJ5IGRpcmVjdG9yeSBmb3IgY3JlYXRpbmcgdGhlIGRpc3RyaWJ1dGlvbiIpLAorICAgICAgICAgICAgICAgICAgICAoJ3BsYXQtbmFtZT0nLCAncCcsCisgICAgICAgICAgICAgICAgICAgICAicGxhdGZvcm0gbmFtZSB0byBlbWJlZCBpbiBnZW5lcmF0ZWQgZmlsZW5hbWVzICIKKyAgICAgICAgICAgICAgICAgICAgICIoZGVmYXVsdDogJXMpIiAlIGdldF9wbGF0Zm9ybSgpKSwKKyAgICAgICAgICAgICAgICAgICAgKCdrZWVwLXRlbXAnLCAnaycsCisgICAgICAgICAgICAgICAgICAgICAia2VlcCB0aGUgcHNldWRvLWluc3RhbGxhdGlvbiB0cmVlIGFyb3VuZCBhZnRlciAiICsKKyAgICAgICAgICAgICAgICAgICAgICJjcmVhdGluZyB0aGUgZGlzdHJpYnV0aW9uIGFyY2hpdmUiKSwKKyAgICAgICAgICAgICAgICAgICAgKCd0YXJnZXQtdmVyc2lvbj0nLCBOb25lLAorICAgICAgICAgICAgICAgICAgICAgInJlcXVpcmUgYSBzcGVjaWZpYyBweXRob24gdmVyc2lvbiIgKworICAgICAgICAgICAgICAgICAgICAgIiBvbiB0aGUgdGFyZ2V0IHN5c3RlbSIpLAorICAgICAgICAgICAgICAgICAgICAoJ25vLXRhcmdldC1jb21waWxlJywgJ2MnLAorICAgICAgICAgICAgICAgICAgICAgImRvIG5vdCBjb21waWxlIC5weSB0byAucHljIG9uIHRoZSB0YXJnZXQgc3lzdGVtIiksCisgICAgICAgICAgICAgICAgICAgICgnbm8tdGFyZ2V0LW9wdGltaXplJywgJ28nLAorICAgICAgICAgICAgICAgICAgICAgImRvIG5vdCBjb21waWxlIC5weSB0byAucHlvIChvcHRpbWl6ZWQpIgorICAgICAgICAgICAgICAgICAgICAgIm9uIHRoZSB0YXJnZXQgc3lzdGVtIiksCisgICAgICAgICAgICAgICAgICAgICgnZGlzdC1kaXI9JywgJ2QnLAorICAgICAgICAgICAgICAgICAgICAgImRpcmVjdG9yeSB0byBwdXQgZmluYWwgYnVpbHQgZGlzdHJpYnV0aW9ucyBpbiIpLAorICAgICAgICAgICAgICAgICAgICAoJ3NraXAtYnVpbGQnLCBOb25lLAorICAgICAgICAgICAgICAgICAgICAgInNraXAgcmVidWlsZGluZyBldmVyeXRoaW5nIChmb3IgdGVzdGluZy9kZWJ1Z2dpbmcpIiksCisgICAgICAgICAgICAgICAgICAgICgnaW5zdGFsbC1zY3JpcHQ9JywgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICJiYXNlbmFtZSBvZiBpbnN0YWxsYXRpb24gc2NyaXB0IHRvIGJlIHJ1biBhZnRlciIKKyAgICAgICAgICAgICAgICAgICAgICJpbnN0YWxsYXRpb24gb3IgYmVmb3JlIGRlaW5zdGFsbGF0aW9uIiksCisgICAgICAgICAgICAgICAgICAgICgncHJlLWluc3RhbGwtc2NyaXB0PScsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAiRnVsbHkgcXVhbGlmaWVkIGZpbGVuYW1lIG9mIGEgc2NyaXB0IHRvIGJlIHJ1biBiZWZvcmUgIgorICAgICAgICAgICAgICAgICAgICAgImFueSBmaWxlcyBhcmUgaW5zdGFsbGVkLiAgVGhpcyBzY3JpcHQgbmVlZCBub3QgYmUgaW4gdGhlICIKKyAgICAgICAgICAgICAgICAgICAgICJkaXN0cmlidXRpb24iKSwKKyAgICAgICAgICAgICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2tlZXAtdGVtcCcsICduby10YXJnZXQtY29tcGlsZScsICduby10YXJnZXQtb3B0aW1pemUnLAorICAgICAgICAgICAgICAgICAgICAgICAnc2tpcC1idWlsZCddCisKKyAgICBhbGxfdmVyc2lvbnMgPSBbJzIuMCcsICcyLjEnLCAnMi4yJywgJzIuMycsICcyLjQnLAorICAgICAgICAgICAgICAgICAgICAnMi41JywgJzIuNicsICcyLjcnLCAnMi44JywgJzIuOScsCisgICAgICAgICAgICAgICAgICAgICczLjAnLCAnMy4xJywgJzMuMicsICczLjMnLCAnMy40JywKKyAgICAgICAgICAgICAgICAgICAgJzMuNScsICczLjYnLCAnMy43JywgJzMuOCcsICczLjknXQorICAgIG90aGVyX3ZlcnNpb24gPSAnWCcKKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuYmRpc3RfZGlyID0gTm9uZQorICAgICAgICBzZWxmLnBsYXRfbmFtZSA9IE5vbmUKKyAgICAgICAgc2VsZi5rZWVwX3RlbXAgPSBGYWxzZQorICAgICAgICBzZWxmLm5vX3RhcmdldF9jb21waWxlID0gRmFsc2UKKyAgICAgICAgc2VsZi5ub190YXJnZXRfb3B0aW1pemUgPSBGYWxzZQorICAgICAgICBzZWxmLnRhcmdldF92ZXJzaW9uID0gTm9uZQorICAgICAgICBzZWxmLmRpc3RfZGlyID0gTm9uZQorICAgICAgICBzZWxmLnNraXBfYnVpbGQgPSBOb25lCisgICAgICAgIHNlbGYuaW5zdGFsbF9zY3JpcHQgPSBOb25lCisgICAgICAgIHNlbGYucHJlX2luc3RhbGxfc2NyaXB0ID0gTm9uZQorICAgICAgICBzZWxmLnZlcnNpb25zID0gTm9uZQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdiZGlzdCcsICdza2lwX2J1aWxkJykKKworICAgICAgICBpZiBzZWxmLmJkaXN0X2RpciBpcyBOb25lOgorICAgICAgICAgICAgYmRpc3RfYmFzZSA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdiZGlzdCcpLmJkaXN0X2Jhc2UKKyAgICAgICAgICAgIHNlbGYuYmRpc3RfZGlyID0gb3MucGF0aC5qb2luKGJkaXN0X2Jhc2UsICdtc2knKQorCisgICAgICAgIHNob3J0X3ZlcnNpb24gPSBnZXRfcHl0aG9uX3ZlcnNpb24oKQorICAgICAgICBpZiAobm90IHNlbGYudGFyZ2V0X3ZlcnNpb24pIGFuZCBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKToKKyAgICAgICAgICAgIHNlbGYudGFyZ2V0X3ZlcnNpb24gPSBzaG9ydF92ZXJzaW9uCisKKyAgICAgICAgaWYgc2VsZi50YXJnZXRfdmVyc2lvbjoKKyAgICAgICAgICAgIHNlbGYudmVyc2lvbnMgPSBbc2VsZi50YXJnZXRfdmVyc2lvbl0KKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLnNraXBfYnVpbGQgYW5kIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19leHRfbW9kdWxlcygpXAorICAgICAgICAgICAgICAgYW5kIHNlbGYudGFyZ2V0X3ZlcnNpb24gIT0gc2hvcnRfdmVyc2lvbjoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigidGFyZ2V0IHZlcnNpb24gY2FuIG9ubHkgYmUgJXMsIG9yIHRoZSAnLS1za2lwLWJ1aWxkJyIgXAorICAgICAgICAgICAgICAgICAgICAgICIgb3B0aW9uIG11c3QgYmUgc3BlY2lmaWVkIiAlIChzaG9ydF92ZXJzaW9uLCkpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLnZlcnNpb25zID0gbGlzdChzZWxmLmFsbF92ZXJzaW9ucykKKworICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnYmRpc3QnLCAnZGlzdF9kaXInLCAncGxhdF9uYW1lJykKKworICAgICAgICBpZiBzZWxmLnByZV9pbnN0YWxsX3NjcmlwdDoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKCJ0aGUgcHJlLWluc3RhbGwtc2NyaXB0IGZlYXR1cmUgaXMgbm90IHlldCBpbXBsZW1lbnRlZCIpCisKKyAgICAgICAgaWYgc2VsZi5pbnN0YWxsX3NjcmlwdDoKKyAgICAgICAgICAgIGZvciBzY3JpcHQgaW4gc2VsZi5kaXN0cmlidXRpb24uc2NyaXB0czoKKyAgICAgICAgICAgICAgICBpZiBzZWxmLmluc3RhbGxfc2NyaXB0ID09IG9zLnBhdGguYmFzZW5hbWUoc2NyaXB0KToKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoImluc3RhbGxfc2NyaXB0ICclcycgbm90IGZvdW5kIGluIHNjcmlwdHMiICUgXAorICAgICAgICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9zY3JpcHQpCisgICAgICAgIHNlbGYuaW5zdGFsbF9zY3JpcHRfa2V5ID0gTm9uZQorCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5za2lwX2J1aWxkOgorICAgICAgICAgICAgc2VsZi5ydW5fY29tbWFuZCgnYnVpbGQnKQorCisgICAgICAgIGluc3RhbGwgPSBzZWxmLnJlaW5pdGlhbGl6ZV9jb21tYW5kKCdpbnN0YWxsX2Rpc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWluaXRfc3ViY29tbWFuZHM9VHJ1ZSkKKyAgICAgICAgaW5zdGFsbC5wcmVmaXggPSBzZWxmLmJkaXN0X2RpcgorICAgICAgICBpbnN0YWxsLnNraXBfYnVpbGQgPSBzZWxmLnNraXBfYnVpbGQKKyAgICAgICAgaW5zdGFsbC53YXJuX2RpciA9IEZhbHNlCisKKyAgICAgICAgaW5zdGFsbF9saWIgPSBzZWxmLnJlaW5pdGlhbGl6ZV9jb21tYW5kKCdpbnN0YWxsX2xpYicpCisgICAgICAgICMgd2UgZG8gbm90IHdhbnQgdG8gaW5jbHVkZSBweWMgb3IgcHlvIGZpbGVzCisgICAgICAgIGluc3RhbGxfbGliLmNvbXBpbGUgPSBGYWxzZQorICAgICAgICBpbnN0YWxsX2xpYi5vcHRpbWl6ZSA9IDAKKworICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKToKKyAgICAgICAgICAgICMgSWYgd2UgYXJlIGJ1aWxkaW5nIGFuIGluc3RhbGxlciBmb3IgYSBQeXRob24gdmVyc2lvbiBvdGhlcgorICAgICAgICAgICAgIyB0aGFuIHRoZSBvbmUgd2UgYXJlIGN1cnJlbnRseSBydW5uaW5nLCB0aGVuIHdlIG5lZWQgdG8gZW5zdXJlCisgICAgICAgICAgICAjIG91ciBidWlsZF9saWIgcmVmbGVjdHMgdGhlIG90aGVyIFB5dGhvbiB2ZXJzaW9uIHJhdGhlciB0aGFuIG91cnMuCisgICAgICAgICAgICAjIE5vdGUgdGhhdCBmb3IgdGFyZ2V0X3ZlcnNpb24hPXN5cy52ZXJzaW9uLCB3ZSBtdXN0IGhhdmUgc2tpcHBlZCB0aGUKKyAgICAgICAgICAgICMgYnVpbGQgc3RlcCwgc28gdGhlcmUgaXMgbm8gaXNzdWUgd2l0aCBlbmZvcmNpbmcgdGhlIGJ1aWxkIG9mIHRoaXMKKyAgICAgICAgICAgICMgdmVyc2lvbi4KKyAgICAgICAgICAgIHRhcmdldF92ZXJzaW9uID0gc2VsZi50YXJnZXRfdmVyc2lvbgorICAgICAgICAgICAgaWYgbm90IHRhcmdldF92ZXJzaW9uOgorICAgICAgICAgICAgICAgIGFzc2VydCBzZWxmLnNraXBfYnVpbGQsICJTaG91bGQgaGF2ZSBhbHJlYWR5IGNoZWNrZWQgdGhpcyIKKyAgICAgICAgICAgICAgICB0YXJnZXRfdmVyc2lvbiA9IHN5cy52ZXJzaW9uWzA6M10KKyAgICAgICAgICAgIHBsYXRfc3BlY2lmaWVyID0gIi4lcy0lcyIgJSAoc2VsZi5wbGF0X25hbWUsIHRhcmdldF92ZXJzaW9uKQorICAgICAgICAgICAgYnVpbGQgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYnVpbGQnKQorICAgICAgICAgICAgYnVpbGQuYnVpbGRfbGliID0gb3MucGF0aC5qb2luKGJ1aWxkLmJ1aWxkX2Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xpYicgKyBwbGF0X3NwZWNpZmllcikKKworICAgICAgICBsb2cuaW5mbygiaW5zdGFsbGluZyB0byAlcyIsIHNlbGYuYmRpc3RfZGlyKQorICAgICAgICBpbnN0YWxsLmVuc3VyZV9maW5hbGl6ZWQoKQorCisgICAgICAgICMgYXZvaWQgd2FybmluZyBvZiAnaW5zdGFsbF9saWInIGFib3V0IGluc3RhbGxpbmcKKyAgICAgICAgIyBpbnRvIGEgZGlyZWN0b3J5IG5vdCBpbiBzeXMucGF0aAorICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgb3MucGF0aC5qb2luKHNlbGYuYmRpc3RfZGlyLCAnUFVSRUxJQicpKQorCisgICAgICAgIGluc3RhbGwucnVuKCkKKworICAgICAgICBkZWwgc3lzLnBhdGhbMF0KKworICAgICAgICBzZWxmLm1rcGF0aChzZWxmLmRpc3RfZGlyKQorICAgICAgICBmdWxsbmFtZSA9IHNlbGYuZGlzdHJpYnV0aW9uLmdldF9mdWxsbmFtZSgpCisgICAgICAgIGluc3RhbGxlcl9uYW1lID0gc2VsZi5nZXRfaW5zdGFsbGVyX2ZpbGVuYW1lKGZ1bGxuYW1lKQorICAgICAgICBpbnN0YWxsZXJfbmFtZSA9IG9zLnBhdGguYWJzcGF0aChpbnN0YWxsZXJfbmFtZSkKKyAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoaW5zdGFsbGVyX25hbWUpOiBvcy51bmxpbmsoaW5zdGFsbGVyX25hbWUpCisKKyAgICAgICAgbWV0YWRhdGEgPSBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YQorICAgICAgICBhdXRob3IgPSBtZXRhZGF0YS5hdXRob3IKKyAgICAgICAgaWYgbm90IGF1dGhvcjoKKyAgICAgICAgICAgIGF1dGhvciA9IG1ldGFkYXRhLm1haW50YWluZXIKKyAgICAgICAgaWYgbm90IGF1dGhvcjoKKyAgICAgICAgICAgIGF1dGhvciA9ICJVTktOT1dOIgorICAgICAgICB2ZXJzaW9uID0gTVNJVmVyc2lvbihtZXRhZGF0YS5nZXRfdmVyc2lvbigpKQorICAgICAgICAjIFByZWZpeCBQcm9kdWN0TmFtZSB3aXRoIFB5dGhvbiB4LnksIHNvIHRoYXQKKyAgICAgICAgIyBpdCBzb3J0cyB0b2dldGhlciB3aXRoIHRoZSBvdGhlciBQeXRob24gcGFja2FnZXMKKyAgICAgICAgIyBpbiBBZGQtUmVtb3ZlLVByb2dyYW1zIChBUFIpCisgICAgICAgIGZ1bGxuYW1lID0gc2VsZi5kaXN0cmlidXRpb24uZ2V0X2Z1bGxuYW1lKCkKKyAgICAgICAgaWYgc2VsZi50YXJnZXRfdmVyc2lvbjoKKyAgICAgICAgICAgIHByb2R1Y3RfbmFtZSA9ICJQeXRob24gJXMgJXMiICUgKHNlbGYudGFyZ2V0X3ZlcnNpb24sIGZ1bGxuYW1lKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcHJvZHVjdF9uYW1lID0gIlB5dGhvbiAlcyIgJSAoZnVsbG5hbWUpCisgICAgICAgIHNlbGYuZGIgPSBtc2lsaWIuaW5pdF9kYXRhYmFzZShpbnN0YWxsZXJfbmFtZSwgc2NoZW1hLAorICAgICAgICAgICAgICAgIHByb2R1Y3RfbmFtZSwgbXNpbGliLmdlbl91dWlkKCksCisgICAgICAgICAgICAgICAgc3RyKHZlcnNpb24pLCBhdXRob3IpCisgICAgICAgIG1zaWxpYi5hZGRfdGFibGVzKHNlbGYuZGIsIHNlcXVlbmNlKQorICAgICAgICBwcm9wcyA9IFsoJ0Rpc3RWZXJzaW9uJywgdmVyc2lvbildCisgICAgICAgIGVtYWlsID0gbWV0YWRhdGEuYXV0aG9yX2VtYWlsIG9yIG1ldGFkYXRhLm1haW50YWluZXJfZW1haWwKKyAgICAgICAgaWYgZW1haWw6CisgICAgICAgICAgICBwcm9wcy5hcHBlbmQoKCJBUlBDT05UQUNUIiwgZW1haWwpKQorICAgICAgICBpZiBtZXRhZGF0YS51cmw6CisgICAgICAgICAgICBwcm9wcy5hcHBlbmQoKCJBUlBVUkxJTkZPQUJPVVQiLCBtZXRhZGF0YS51cmwpKQorICAgICAgICBpZiBwcm9wczoKKyAgICAgICAgICAgIGFkZF9kYXRhKHNlbGYuZGIsICdQcm9wZXJ0eScsIHByb3BzKQorCisgICAgICAgIHNlbGYuYWRkX2ZpbmRfcHl0aG9uKCkKKyAgICAgICAgc2VsZi5hZGRfZmlsZXMoKQorICAgICAgICBzZWxmLmFkZF9zY3JpcHRzKCkKKyAgICAgICAgc2VsZi5hZGRfdWkoKQorICAgICAgICBzZWxmLmRiLkNvbW1pdCgpCisKKyAgICAgICAgaWYgaGFzYXR0cihzZWxmLmRpc3RyaWJ1dGlvbiwgJ2Rpc3RfZmlsZXMnKToKKyAgICAgICAgICAgIHR1cCA9ICdiZGlzdF9tc2knLCBzZWxmLnRhcmdldF92ZXJzaW9uIG9yICdhbnknLCBmdWxsbmFtZQorICAgICAgICAgICAgc2VsZi5kaXN0cmlidXRpb24uZGlzdF9maWxlcy5hcHBlbmQodHVwKQorCisgICAgICAgIGlmIG5vdCBzZWxmLmtlZXBfdGVtcDoKKyAgICAgICAgICAgIGxvZy5pbmZvKCJyZW1vdmluZyB0ZW1wb3JhcnkgYnVpbGQgZGlyZWN0b3J5ICVzIiwgc2VsZi5iZGlzdF9kaXIpCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgIHJtdHJlZShzZWxmLmJkaXN0X2RpcikKKworICAgIGRlZiBhZGRfZmlsZXMoc2VsZik6CisgICAgICAgIGRiID0gc2VsZi5kYgorICAgICAgICBjYWIgPSBtc2lsaWIuQ0FCKCJkaXN0ZmlsZXMiKQorICAgICAgICByb290ZGlyID0gb3MucGF0aC5hYnNwYXRoKHNlbGYuYmRpc3RfZGlyKQorCisgICAgICAgIHJvb3QgPSBEaXJlY3RvcnkoZGIsIGNhYiwgTm9uZSwgcm9vdGRpciwgIlRBUkdFVERJUiIsICJTb3VyY2VEaXIiKQorICAgICAgICBmID0gRmVhdHVyZShkYiwgIlB5dGhvbiIsICJQeXRob24iLCAiRXZlcnl0aGluZyIsCisgICAgICAgICAgICAgICAgICAgIDAsIDEsIGRpcmVjdG9yeT0iVEFSR0VURElSIikKKworICAgICAgICBpdGVtcyA9IFsoZiwgcm9vdCwgJycpXQorICAgICAgICBmb3IgdmVyc2lvbiBpbiBzZWxmLnZlcnNpb25zICsgW3NlbGYub3RoZXJfdmVyc2lvbl06CisgICAgICAgICAgICB0YXJnZXQgPSAiVEFSR0VURElSIiArIHZlcnNpb24KKyAgICAgICAgICAgIG5hbWUgPSBkZWZhdWx0ID0gIlB5dGhvbiIgKyB2ZXJzaW9uCisgICAgICAgICAgICBkZXNjID0gIkV2ZXJ5dGhpbmciCisgICAgICAgICAgICBpZiB2ZXJzaW9uIGlzIHNlbGYub3RoZXJfdmVyc2lvbjoKKyAgICAgICAgICAgICAgICB0aXRsZSA9ICJQeXRob24gZnJvbSBhbm90aGVyIGxvY2F0aW9uIgorICAgICAgICAgICAgICAgIGxldmVsID0gMgorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICB0aXRsZSA9ICJQeXRob24gJXMgZnJvbSByZWdpc3RyeSIgJSB2ZXJzaW9uCisgICAgICAgICAgICAgICAgbGV2ZWwgPSAxCisgICAgICAgICAgICBmID0gRmVhdHVyZShkYiwgbmFtZSwgdGl0bGUsIGRlc2MsIDEsIGxldmVsLCBkaXJlY3Rvcnk9dGFyZ2V0KQorICAgICAgICAgICAgZGlyID0gRGlyZWN0b3J5KGRiLCBjYWIsIHJvb3QsIHJvb3RkaXIsIHRhcmdldCwgZGVmYXVsdCkKKyAgICAgICAgICAgIGl0ZW1zLmFwcGVuZCgoZiwgZGlyLCB2ZXJzaW9uKSkKKyAgICAgICAgZGIuQ29tbWl0KCkKKworICAgICAgICBzZWVuID0ge30KKyAgICAgICAgZm9yIGZlYXR1cmUsIGRpciwgdmVyc2lvbiBpbiBpdGVtczoKKyAgICAgICAgICAgIHRvZG8gPSBbZGlyXQorICAgICAgICAgICAgd2hpbGUgdG9kbzoKKyAgICAgICAgICAgICAgICBkaXIgPSB0b2RvLnBvcCgpCisgICAgICAgICAgICAgICAgZm9yIGZpbGUgaW4gb3MubGlzdGRpcihkaXIuYWJzb2x1dGUpOgorICAgICAgICAgICAgICAgICAgICBhZmlsZSA9IG9zLnBhdGguam9pbihkaXIuYWJzb2x1dGUsIGZpbGUpCisgICAgICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguaXNkaXIoYWZpbGUpOgorICAgICAgICAgICAgICAgICAgICAgICAgc2hvcnQgPSAiJXN8JXMiICUgKGRpci5tYWtlX3Nob3J0KGZpbGUpLCBmaWxlKQorICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdCA9IGZpbGUgKyB2ZXJzaW9uCisgICAgICAgICAgICAgICAgICAgICAgICBuZXdkaXIgPSBEaXJlY3RvcnkoZGIsIGNhYiwgZGlyLCBmaWxlLCBkZWZhdWx0LCBzaG9ydCkKKyAgICAgICAgICAgICAgICAgICAgICAgIHRvZG8uYXBwZW5kKG5ld2RpcikKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBkaXIuY29tcG9uZW50OgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpci5zdGFydF9jb21wb25lbnQoZGlyLmxvZ2ljYWwsIGZlYXR1cmUsIDApCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBhZmlsZSBub3QgaW4gc2VlbjoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXkgPSBzZWVuW2FmaWxlXSA9IGRpci5hZGRfZmlsZShmaWxlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGZpbGU9PXNlbGYuaW5zdGFsbF9zY3JpcHQ6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHNlbGYuaW5zdGFsbF9zY3JpcHRfa2V5OgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTXVsdGlwbGUgZmlsZXMgd2l0aCBuYW1lICVzIiAlIGZpbGUpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9zY3JpcHRfa2V5ID0gJ1sjJXNdJyAlIGtleQorICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXkgPSBzZWVuW2FmaWxlXQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZF9kYXRhKHNlbGYuZGIsICJEdXBsaWNhdGVGaWxlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhrZXkgKyB2ZXJzaW9uLCBkaXIuY29tcG9uZW50LCBrZXksIE5vbmUsIGRpci5sb2dpY2FsKV0pCisgICAgICAgICAgICBkYi5Db21taXQoKQorICAgICAgICBjYWIuY29tbWl0KGRiKQorCisgICAgZGVmIGFkZF9maW5kX3B5dGhvbihzZWxmKToKKyAgICAgICAgIiIiQWRkcyBjb2RlIHRvIHRoZSBpbnN0YWxsZXIgdG8gY29tcHV0ZSB0aGUgbG9jYXRpb24gb2YgUHl0aG9uLgorCisgICAgICAgIFByb3BlcnRpZXMgUFlUSE9OLk1BQ0hJTkUuWC5ZIGFuZCBQWVRIT04uVVNFUi5YLlkgd2lsbCBiZSBzZXQgZnJvbSB0aGUKKyAgICAgICAgcmVnaXN0cnkgZm9yIGVhY2ggdmVyc2lvbiBvZiBQeXRob24uCisKKyAgICAgICAgUHJvcGVydGllcyBUQVJHRVRESVJYLlkgd2lsbCBiZSBzZXQgZnJvbSBQWVRIT04uVVNFUi5YLlkgaWYgZGVmaW5lZCwKKyAgICAgICAgZWxzZSBmcm9tIFBZVEhPTi5NQUNISU5FLlguWS4KKworICAgICAgICBQcm9wZXJ0aWVzIFBZVEhPTlguWSB3aWxsIGJlIHNldCB0byBUQVJHRVRESVJYLllcXHB5dGhvbi5leGUiIiIKKworICAgICAgICBzdGFydCA9IDQwMgorICAgICAgICBmb3IgdmVyIGluIHNlbGYudmVyc2lvbnM6CisgICAgICAgICAgICBpbnN0YWxsX3BhdGggPSByIlNPRlRXQVJFXFB5dGhvblxQeXRob25Db3JlXCVzXEluc3RhbGxQYXRoIiAlIHZlcgorICAgICAgICAgICAgbWFjaGluZV9yZWcgPSAicHl0aG9uLm1hY2hpbmUuIiArIHZlcgorICAgICAgICAgICAgdXNlcl9yZWcgPSAicHl0aG9uLnVzZXIuIiArIHZlcgorICAgICAgICAgICAgbWFjaGluZV9wcm9wID0gIlBZVEhPTi5NQUNISU5FLiIgKyB2ZXIKKyAgICAgICAgICAgIHVzZXJfcHJvcCA9ICJQWVRIT04uVVNFUi4iICsgdmVyCisgICAgICAgICAgICBtYWNoaW5lX2FjdGlvbiA9ICJQeXRob25Gcm9tTWFjaGluZSIgKyB2ZXIKKyAgICAgICAgICAgIHVzZXJfYWN0aW9uID0gIlB5dGhvbkZyb21Vc2VyIiArIHZlcgorICAgICAgICAgICAgZXhlX2FjdGlvbiA9ICJQeXRob25FeGUiICsgdmVyCisgICAgICAgICAgICB0YXJnZXRfZGlyX3Byb3AgPSAiVEFSR0VURElSIiArIHZlcgorICAgICAgICAgICAgZXhlX3Byb3AgPSAiUFlUSE9OIiArIHZlcgorICAgICAgICAgICAgaWYgbXNpbGliLldpbjY0OgorICAgICAgICAgICAgICAgICMgdHlwZTogbXNpZGJMb2NhdG9yVHlwZVJhd1ZhbHVlICsgbXNpZGJMb2NhdG9yVHlwZTY0Yml0CisgICAgICAgICAgICAgICAgVHlwZSA9IDIrMTYKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgVHlwZSA9IDIKKyAgICAgICAgICAgIGFkZF9kYXRhKHNlbGYuZGIsICJSZWdMb2NhdG9yIiwKKyAgICAgICAgICAgICAgICAgICAgWyhtYWNoaW5lX3JlZywgMiwgaW5zdGFsbF9wYXRoLCBOb25lLCBUeXBlKSwKKyAgICAgICAgICAgICAgICAgICAgICh1c2VyX3JlZywgMSwgaW5zdGFsbF9wYXRoLCBOb25lLCBUeXBlKV0pCisgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAiQXBwU2VhcmNoIiwKKyAgICAgICAgICAgICAgICAgICAgWyhtYWNoaW5lX3Byb3AsIG1hY2hpbmVfcmVnKSwKKyAgICAgICAgICAgICAgICAgICAgICh1c2VyX3Byb3AsIHVzZXJfcmVnKV0pCisgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAiQ3VzdG9tQWN0aW9uIiwKKyAgICAgICAgICAgICAgICAgICAgWyhtYWNoaW5lX2FjdGlvbiwgNTErMjU2LCB0YXJnZXRfZGlyX3Byb3AsICJbIiArIG1hY2hpbmVfcHJvcCArICJdIiksCisgICAgICAgICAgICAgICAgICAgICAodXNlcl9hY3Rpb24sIDUxKzI1NiwgdGFyZ2V0X2Rpcl9wcm9wLCAiWyIgKyB1c2VyX3Byb3AgKyAiXSIpLAorICAgICAgICAgICAgICAgICAgICAgKGV4ZV9hY3Rpb24sIDUxKzI1NiwgZXhlX3Byb3AsICJbIiArIHRhcmdldF9kaXJfcHJvcCArICJdXFxweXRob24uZXhlIiksCisgICAgICAgICAgICAgICAgICAgIF0pCisgICAgICAgICAgICBhZGRfZGF0YShzZWxmLmRiLCAiSW5zdGFsbEV4ZWN1dGVTZXF1ZW5jZSIsCisgICAgICAgICAgICAgICAgICAgIFsobWFjaGluZV9hY3Rpb24sIG1hY2hpbmVfcHJvcCwgc3RhcnQpLAorICAgICAgICAgICAgICAgICAgICAgKHVzZXJfYWN0aW9uLCB1c2VyX3Byb3AsIHN0YXJ0ICsgMSksCisgICAgICAgICAgICAgICAgICAgICAoZXhlX2FjdGlvbiwgTm9uZSwgc3RhcnQgKyAyKSwKKyAgICAgICAgICAgICAgICAgICAgXSkKKyAgICAgICAgICAgIGFkZF9kYXRhKHNlbGYuZGIsICJJbnN0YWxsVUlTZXF1ZW5jZSIsCisgICAgICAgICAgICAgICAgICAgIFsobWFjaGluZV9hY3Rpb24sIG1hY2hpbmVfcHJvcCwgc3RhcnQpLAorICAgICAgICAgICAgICAgICAgICAgKHVzZXJfYWN0aW9uLCB1c2VyX3Byb3AsIHN0YXJ0ICsgMSksCisgICAgICAgICAgICAgICAgICAgICAoZXhlX2FjdGlvbiwgTm9uZSwgc3RhcnQgKyAyKSwKKyAgICAgICAgICAgICAgICAgICAgXSkKKyAgICAgICAgICAgIGFkZF9kYXRhKHNlbGYuZGIsICJDb25kaXRpb24iLAorICAgICAgICAgICAgICAgICAgICBbKCJQeXRob24iICsgdmVyLCAwLCAiTk9UIFRBUkdFVERJUiIgKyB2ZXIpXSkKKyAgICAgICAgICAgIHN0YXJ0ICs9IDQKKyAgICAgICAgICAgIGFzc2VydCBzdGFydCA8IDUwMAorCisgICAgZGVmIGFkZF9zY3JpcHRzKHNlbGYpOgorICAgICAgICBpZiBzZWxmLmluc3RhbGxfc2NyaXB0OgorICAgICAgICAgICAgc3RhcnQgPSA2ODAwCisgICAgICAgICAgICBmb3IgdmVyIGluIHNlbGYudmVyc2lvbnMgKyBbc2VsZi5vdGhlcl92ZXJzaW9uXToKKyAgICAgICAgICAgICAgICBpbnN0YWxsX2FjdGlvbiA9ICJpbnN0YWxsX3NjcmlwdC4iICsgdmVyCisgICAgICAgICAgICAgICAgZXhlX3Byb3AgPSAiUFlUSE9OIiArIHZlcgorICAgICAgICAgICAgICAgIGFkZF9kYXRhKHNlbGYuZGIsICJDdXN0b21BY3Rpb24iLAorICAgICAgICAgICAgICAgICAgICAgICAgWyhpbnN0YWxsX2FjdGlvbiwgNTAsIGV4ZV9wcm9wLCBzZWxmLmluc3RhbGxfc2NyaXB0X2tleSldKQorICAgICAgICAgICAgICAgIGFkZF9kYXRhKHNlbGYuZGIsICJJbnN0YWxsRXhlY3V0ZVNlcXVlbmNlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIFsoaW5zdGFsbF9hY3Rpb24sICImUHl0aG9uJXM9MyIgJSB2ZXIsIHN0YXJ0KV0pCisgICAgICAgICAgICAgICAgc3RhcnQgKz0gMQorICAgICAgICAjIFhYWCBwcmUtaW5zdGFsbCBzY3JpcHRzIGFyZSBjdXJyZW50bHkgcmVmdXNlZCBpbiBmaW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgIyAgICAgYnV0IGlmIHRoaXMgZmVhdHVyZSBpcyBjb21wbGV0ZWQsIGl0IHdpbGwgYWxzbyBuZWVkIHRvIGFkZAorICAgICAgICAjICAgICBlbnRyaWVzIGZvciBlYWNoIHZlcnNpb24gYXMgdGhlIGFib3ZlIGNvZGUgZG9lcworICAgICAgICBpZiBzZWxmLnByZV9pbnN0YWxsX3NjcmlwdDoKKyAgICAgICAgICAgIHNjcmlwdGZuID0gb3MucGF0aC5qb2luKHNlbGYuYmRpc3RfZGlyLCAicHJlaW5zdGFsbC5iYXQiKQorICAgICAgICAgICAgd2l0aCBvcGVuKHNjcmlwdGZuLCAidyIpIGFzIGY6CisgICAgICAgICAgICAgICAgIyBUaGUgYmF0Y2ggZmlsZSB3aWxsIGJlIGV4ZWN1dGVkIHdpdGggW1BZVEhPTl0sIHNvIHRoYXQgJTEKKyAgICAgICAgICAgICAgICAjIGlzIHRoZSBwYXRoIHRvIHRoZSBQeXRob24gaW50ZXJwcmV0ZXI7ICUwIHdpbGwgYmUgdGhlIHBhdGgKKyAgICAgICAgICAgICAgICAjIG9mIHRoZSBiYXRjaCBmaWxlLgorICAgICAgICAgICAgICAgICMgcmVtID0iIiIKKyAgICAgICAgICAgICAgICAjICUxICUwCisgICAgICAgICAgICAgICAgIyBleGl0CisgICAgICAgICAgICAgICAgIyAiIiIKKyAgICAgICAgICAgICAgICAjIDxhY3R1YWwgc2NyaXB0PgorICAgICAgICAgICAgICAgIGYud3JpdGUoJ3JlbSA9IiIiXG4lMSAlMFxuZXhpdFxuIiIiXG4nKQorICAgICAgICAgICAgICAgIHdpdGggb3BlbihzZWxmLnByZV9pbnN0YWxsX3NjcmlwdCkgYXMgZnA6CisgICAgICAgICAgICAgICAgICAgIGYud3JpdGUoZnAucmVhZCgpKQorICAgICAgICAgICAgYWRkX2RhdGEoc2VsZi5kYiwgIkJpbmFyeSIsCisgICAgICAgICAgICAgICAgICAgICBbKCJQcmVJbnN0YWxsIiwgbXNpbGliLkJpbmFyeShzY3JpcHRmbikpLAorICAgICAgICAgICAgICAgICAgICAgXSkKKyAgICAgICAgICAgIGFkZF9kYXRhKHNlbGYuZGIsICJDdXN0b21BY3Rpb24iLAorICAgICAgICAgICAgICAgICAgICAgWygiUHJlSW5zdGFsbCIsIDIsICJQcmVJbnN0YWxsIiwgTm9uZSksCisgICAgICAgICAgICAgICAgICAgICBdKQorICAgICAgICAgICAgYWRkX2RhdGEoc2VsZi5kYiwgIkluc3RhbGxFeGVjdXRlU2VxdWVuY2UiLAorICAgICAgICAgICAgICAgICAgICAgWygiUHJlSW5zdGFsbCIsICJOT1QgSW5zdGFsbGVkIiwgNDUwKSwKKyAgICAgICAgICAgICAgICAgICAgIF0pCisKKyAgICBkZWYgYWRkX3VpKHNlbGYpOgorICAgICAgICBkYiA9IHNlbGYuZGIKKyAgICAgICAgeCA9IHkgPSA1MAorICAgICAgICB3ID0gMzcwCisgICAgICAgIGggPSAzMDAKKyAgICAgICAgdGl0bGUgPSAiW1Byb2R1Y3ROYW1lXSBTZXR1cCIKKworICAgICAgICAjIHNlZSAiRGlhbG9nIFN0eWxlIEJpdHMiCisgICAgICAgIG1vZGFsID0gMyAgICAgICMgdmlzaWJsZSB8IG1vZGFsCisgICAgICAgIG1vZGVsZXNzID0gMSAgICMgdmlzaWJsZQorCisgICAgICAgICMgVUkgY3VzdG9taXphdGlvbiBwcm9wZXJ0aWVzCisgICAgICAgIGFkZF9kYXRhKGRiLCAiUHJvcGVydHkiLAorICAgICAgICAgICAgICAgICAjIFNlZSAiRGVmYXVsdFVJRm9udCBQcm9wZXJ0eSIKKyAgICAgICAgICAgICAgICAgWygiRGVmYXVsdFVJRm9udCIsICJEbGdGb250OCIpLAorICAgICAgICAgICAgICAgICAgIyBTZWUgIkVycm9yRGlhbG9nIFN0eWxlIEJpdCIKKyAgICAgICAgICAgICAgICAgICgiRXJyb3JEaWFsb2ciLCAiRXJyb3JEbGciKSwKKyAgICAgICAgICAgICAgICAgICgiUHJvZ3Jlc3MxIiwgIkluc3RhbGwiKSwgICAjIG1vZGlmaWVkIGluIG1haW50ZW5hbmNlIHR5cGUgZGxnCisgICAgICAgICAgICAgICAgICAoIlByb2dyZXNzMiIsICJpbnN0YWxscyIpLAorICAgICAgICAgICAgICAgICAgKCJNYWludGVuYW5jZUZvcm1fQWN0aW9uIiwgIlJlcGFpciIpLAorICAgICAgICAgICAgICAgICAgIyBwb3NzaWJsZSB2YWx1ZXM6IEFMTCwgSlVTVE1FCisgICAgICAgICAgICAgICAgICAoIldoaWNoVXNlcnMiLCAiQUxMIikKKyAgICAgICAgICAgICAgICAgXSkKKworICAgICAgICAjIEZvbnRzLCBzZWUgIlRleHRTdHlsZSBUYWJsZSIKKyAgICAgICAgYWRkX2RhdGEoZGIsICJUZXh0U3R5bGUiLAorICAgICAgICAgICAgICAgICBbKCJEbGdGb250OCIsICJUYWhvbWEiLCA5LCBOb25lLCAwKSwKKyAgICAgICAgICAgICAgICAgICgiRGxnRm9udEJvbGQ4IiwgIlRhaG9tYSIsIDgsIE5vbmUsIDEpLCAjYm9sZAorICAgICAgICAgICAgICAgICAgKCJWZXJkYW5hQm9sZDEwIiwgIlZlcmRhbmEiLCAxMCwgTm9uZSwgMSksCisgICAgICAgICAgICAgICAgICAoIlZlcmRhbmFSZWQ5IiwgIlZlcmRhbmEiLCA5LCAyNTUsIDApLAorICAgICAgICAgICAgICAgICBdKQorCisgICAgICAgICMgVUkgU2VxdWVuY2VzLCBzZWUgIkluc3RhbGxVSVNlcXVlbmNlIFRhYmxlIiwgIlVzaW5nIGEgU2VxdWVuY2UgVGFibGUiCisgICAgICAgICMgTnVtYmVycyBpbmRpY2F0ZSBzZXF1ZW5jZTsgc2VlIHNlcXVlbmNlLnB5IGZvciBob3cgdGhlc2UgYWN0aW9uIGludGVncmF0ZQorICAgICAgICBhZGRfZGF0YShkYiwgIkluc3RhbGxVSVNlcXVlbmNlIiwKKyAgICAgICAgICAgICAgICAgWygiUHJlcGFyZURsZyIsICJOb3QgUHJpdmlsZWdlZCBvciBXaW5kb3dzOXggb3IgSW5zdGFsbGVkIiwgMTQwKSwKKyAgICAgICAgICAgICAgICAgICgiV2hpY2hVc2Vyc0RsZyIsICJQcml2aWxlZ2VkIGFuZCBub3QgV2luZG93czl4IGFuZCBub3QgSW5zdGFsbGVkIiwgMTQxKSwKKyAgICAgICAgICAgICAgICAgICMgSW4gdGhlIHVzZXIgaW50ZXJmYWNlLCBhc3N1bWUgYWxsLXVzZXJzIGluc3RhbGxhdGlvbiBpZiBwcml2aWxlZ2VkLgorICAgICAgICAgICAgICAgICAgKCJTZWxlY3RGZWF0dXJlc0RsZyIsICJOb3QgSW5zdGFsbGVkIiwgMTIzMCksCisgICAgICAgICAgICAgICAgICAjIFhYWCBubyBzdXBwb3J0IGZvciByZXN1bWUgaW5zdGFsbGF0aW9ucyB5ZXQKKyAgICAgICAgICAgICAgICAgICMoIlJlc3VtZURsZyIsICJJbnN0YWxsZWQgQU5EIChSRVNVTUUgT1IgUHJlc2VsZWN0ZWQpIiwgMTI0MCksCisgICAgICAgICAgICAgICAgICAoIk1haW50ZW5hbmNlVHlwZURsZyIsICJJbnN0YWxsZWQgQU5EIE5PVCBSRVNVTUUgQU5EIE5PVCBQcmVzZWxlY3RlZCIsIDEyNTApLAorICAgICAgICAgICAgICAgICAgKCJQcm9ncmVzc0RsZyIsIE5vbmUsIDEyODApXSkKKworICAgICAgICBhZGRfZGF0YShkYiwgJ0FjdGlvblRleHQnLCB0ZXh0LkFjdGlvblRleHQpCisgICAgICAgIGFkZF9kYXRhKGRiLCAnVUlUZXh0JywgdGV4dC5VSVRleHQpCisgICAgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworICAgICAgICAjIFN0YW5kYXJkIGRpYWxvZ3M6IEZhdGFsRXJyb3IsIFVzZXJFeGl0LCBFeGl0RGlhbG9nCisgICAgICAgIGZhdGFsPVB5RGlhbG9nKGRiLCAiRmF0YWxFcnJvciIsIHgsIHksIHcsIGgsIG1vZGFsLCB0aXRsZSwKKyAgICAgICAgICAgICAgICAgICAgICJGaW5pc2giLCAiRmluaXNoIiwgIkZpbmlzaCIpCisgICAgICAgIGZhdGFsLnRpdGxlKCJbUHJvZHVjdE5hbWVdIEluc3RhbGxlciBlbmRlZCBwcmVtYXR1cmVseSIpCisgICAgICAgIGZhdGFsLmJhY2soIjwgQmFjayIsICJGaW5pc2giLCBhY3RpdmUgPSAwKQorICAgICAgICBmYXRhbC5jYW5jZWwoIkNhbmNlbCIsICJCYWNrIiwgYWN0aXZlID0gMCkKKyAgICAgICAgZmF0YWwudGV4dCgiRGVzY3JpcHRpb24xIiwgMTUsIDcwLCAzMjAsIDgwLCAweDMwMDAzLAorICAgICAgICAgICAgICAgICAgICJbUHJvZHVjdE5hbWVdIHNldHVwIGVuZGVkIHByZW1hdHVyZWx5IGJlY2F1c2Ugb2YgYW4gZXJyb3IuICBZb3VyIHN5c3RlbSBoYXMgbm90IGJlZW4gbW9kaWZpZWQuICBUbyBpbnN0YWxsIHRoaXMgcHJvZ3JhbSBhdCBhIGxhdGVyIHRpbWUsIHBsZWFzZSBydW4gdGhlIGluc3RhbGxhdGlvbiBhZ2Fpbi4iKQorICAgICAgICBmYXRhbC50ZXh0KCJEZXNjcmlwdGlvbjIiLCAxNSwgMTU1LCAzMjAsIDIwLCAweDMwMDAzLAorICAgICAgICAgICAgICAgICAgICJDbGljayB0aGUgRmluaXNoIGJ1dHRvbiB0byBleGl0IHRoZSBJbnN0YWxsZXIuIikKKyAgICAgICAgYz1mYXRhbC5uZXh0KCJGaW5pc2giLCAiQ2FuY2VsIiwgbmFtZT0iRmluaXNoIikKKyAgICAgICAgYy5ldmVudCgiRW5kRGlhbG9nIiwgIkV4aXQiKQorCisgICAgICAgIHVzZXJfZXhpdD1QeURpYWxvZyhkYiwgIlVzZXJFeGl0IiwgeCwgeSwgdywgaCwgbW9kYWwsIHRpdGxlLAorICAgICAgICAgICAgICAgICAgICAgIkZpbmlzaCIsICJGaW5pc2giLCAiRmluaXNoIikKKyAgICAgICAgdXNlcl9leGl0LnRpdGxlKCJbUHJvZHVjdE5hbWVdIEluc3RhbGxlciB3YXMgaW50ZXJydXB0ZWQiKQorICAgICAgICB1c2VyX2V4aXQuYmFjaygiPCBCYWNrIiwgIkZpbmlzaCIsIGFjdGl2ZSA9IDApCisgICAgICAgIHVzZXJfZXhpdC5jYW5jZWwoIkNhbmNlbCIsICJCYWNrIiwgYWN0aXZlID0gMCkKKyAgICAgICAgdXNlcl9leGl0LnRleHQoIkRlc2NyaXB0aW9uMSIsIDE1LCA3MCwgMzIwLCA4MCwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICAgICAiW1Byb2R1Y3ROYW1lXSBzZXR1cCB3YXMgaW50ZXJydXB0ZWQuICBZb3VyIHN5c3RlbSBoYXMgbm90IGJlZW4gbW9kaWZpZWQuICAiCisgICAgICAgICAgICAgICAgICAgIlRvIGluc3RhbGwgdGhpcyBwcm9ncmFtIGF0IGEgbGF0ZXIgdGltZSwgcGxlYXNlIHJ1biB0aGUgaW5zdGFsbGF0aW9uIGFnYWluLiIpCisgICAgICAgIHVzZXJfZXhpdC50ZXh0KCJEZXNjcmlwdGlvbjIiLCAxNSwgMTU1LCAzMjAsIDIwLCAweDMwMDAzLAorICAgICAgICAgICAgICAgICAgICJDbGljayB0aGUgRmluaXNoIGJ1dHRvbiB0byBleGl0IHRoZSBJbnN0YWxsZXIuIikKKyAgICAgICAgYyA9IHVzZXJfZXhpdC5uZXh0KCJGaW5pc2giLCAiQ2FuY2VsIiwgbmFtZT0iRmluaXNoIikKKyAgICAgICAgYy5ldmVudCgiRW5kRGlhbG9nIiwgIkV4aXQiKQorCisgICAgICAgIGV4aXRfZGlhbG9nID0gUHlEaWFsb2coZGIsICJFeGl0RGlhbG9nIiwgeCwgeSwgdywgaCwgbW9kYWwsIHRpdGxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRmluaXNoIiwgIkZpbmlzaCIsICJGaW5pc2giKQorICAgICAgICBleGl0X2RpYWxvZy50aXRsZSgiQ29tcGxldGluZyB0aGUgW1Byb2R1Y3ROYW1lXSBJbnN0YWxsZXIiKQorICAgICAgICBleGl0X2RpYWxvZy5iYWNrKCI8IEJhY2siLCAiRmluaXNoIiwgYWN0aXZlID0gMCkKKyAgICAgICAgZXhpdF9kaWFsb2cuY2FuY2VsKCJDYW5jZWwiLCAiQmFjayIsIGFjdGl2ZSA9IDApCisgICAgICAgIGV4aXRfZGlhbG9nLnRleHQoIkRlc2NyaXB0aW9uIiwgMTUsIDIzNSwgMzIwLCAyMCwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICAgICAiQ2xpY2sgdGhlIEZpbmlzaCBidXR0b24gdG8gZXhpdCB0aGUgSW5zdGFsbGVyLiIpCisgICAgICAgIGMgPSBleGl0X2RpYWxvZy5uZXh0KCJGaW5pc2giLCAiQ2FuY2VsIiwgbmFtZT0iRmluaXNoIikKKyAgICAgICAgYy5ldmVudCgiRW5kRGlhbG9nIiwgIlJldHVybiIpCisKKyAgICAgICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisgICAgICAgICMgUmVxdWlyZWQgZGlhbG9nOiBGaWxlc0luVXNlLCBFcnJvckRsZworICAgICAgICBpbnVzZSA9IFB5RGlhbG9nKGRiLCAiRmlsZXNJblVzZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgeCwgeSwgdywgaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAxOSwgICAgICAgICAgICAgICAgIyBLZWVwTW9kZWxlc3N8TW9kYWx8VmlzaWJsZQorICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICJSZXRyeSIsICJSZXRyeSIsICJSZXRyeSIsIGJpdG1hcD1GYWxzZSkKKyAgICAgICAgaW51c2UudGV4dCgiVGl0bGUiLCAxNSwgNiwgMjAwLCAxNSwgMHgzMDAwMywKKyAgICAgICAgICAgICAgICAgICByIntcRGxnRm9udEJvbGQ4fUZpbGVzIGluIFVzZSIpCisgICAgICAgIGludXNlLnRleHQoIkRlc2NyaXB0aW9uIiwgMjAsIDIzLCAyODAsIDIwLCAweDMwMDAzLAorICAgICAgICAgICAgICAgIlNvbWUgZmlsZXMgdGhhdCBuZWVkIHRvIGJlIHVwZGF0ZWQgYXJlIGN1cnJlbnRseSBpbiB1c2UuIikKKyAgICAgICAgaW51c2UudGV4dCgiVGV4dCIsIDIwLCA1NSwgMzMwLCA1MCwgMywKKyAgICAgICAgICAgICAgICAgICAiVGhlIGZvbGxvd2luZyBhcHBsaWNhdGlvbnMgYXJlIHVzaW5nIGZpbGVzIHRoYXQgbmVlZCB0byBiZSB1cGRhdGVkIGJ5IHRoaXMgc2V0dXAuIENsb3NlIHRoZXNlIGFwcGxpY2F0aW9ucyBhbmQgdGhlbiBjbGljayBSZXRyeSB0byBjb250aW51ZSB0aGUgaW5zdGFsbGF0aW9uIG9yIENhbmNlbCB0byBleGl0IGl0LiIpCisgICAgICAgIGludXNlLmNvbnRyb2woIkxpc3QiLCAiTGlzdEJveCIsIDIwLCAxMDcsIDMzMCwgMTMwLCA3LCAiRmlsZUluVXNlUHJvY2VzcyIsCisgICAgICAgICAgICAgICAgICAgICAgTm9uZSwgTm9uZSwgTm9uZSkKKyAgICAgICAgYz1pbnVzZS5iYWNrKCJFeGl0IiwgIklnbm9yZSIsIG5hbWU9IkV4aXQiKQorICAgICAgICBjLmV2ZW50KCJFbmREaWFsb2ciLCAiRXhpdCIpCisgICAgICAgIGM9aW51c2UubmV4dCgiSWdub3JlIiwgIlJldHJ5IiwgbmFtZT0iSWdub3JlIikKKyAgICAgICAgYy5ldmVudCgiRW5kRGlhbG9nIiwgIklnbm9yZSIpCisgICAgICAgIGM9aW51c2UuY2FuY2VsKCJSZXRyeSIsICJFeGl0IiwgbmFtZT0iUmV0cnkiKQorICAgICAgICBjLmV2ZW50KCJFbmREaWFsb2ciLCJSZXRyeSIpCisKKyAgICAgICAgIyBTZWUgIkVycm9yIERpYWxvZyIuIFNlZSAiSUNFMjAiIGZvciB0aGUgcmVxdWlyZWQgbmFtZXMgb2YgdGhlIGNvbnRyb2xzLgorICAgICAgICBlcnJvciA9IERpYWxvZyhkYiwgIkVycm9yRGxnIiwKKyAgICAgICAgICAgICAgICAgICAgICAgNTAsIDEwLCAzMzAsIDEwMSwKKyAgICAgICAgICAgICAgICAgICAgICAgNjU1NDMsICAgICAgICMgRXJyb3J8TWluaW1pemV8TW9kYWx8VmlzaWJsZQorICAgICAgICAgICAgICAgICAgICAgICB0aXRsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIkVycm9yVGV4dCIsIE5vbmUsIE5vbmUpCisgICAgICAgIGVycm9yLnRleHQoIkVycm9yVGV4dCIsIDUwLDksMjgwLDQ4LDMsICIiKQorICAgICAgICAjZXJyb3IuY29udHJvbCgiRXJyb3JJY29uIiwgIkljb24iLCAxNSwgOSwgMjQsIDI0LCA1MjQyODgxLCBOb25lLCAicHkuaWNvIiwgTm9uZSwgTm9uZSkKKyAgICAgICAgZXJyb3IucHVzaGJ1dHRvbigiTiIsMTIwLDcyLDgxLDIxLDMsIk5vIixOb25lKS5ldmVudCgiRW5kRGlhbG9nIiwiRXJyb3JObyIpCisgICAgICAgIGVycm9yLnB1c2hidXR0b24oIlkiLDI0MCw3Miw4MSwyMSwzLCJZZXMiLE5vbmUpLmV2ZW50KCJFbmREaWFsb2ciLCJFcnJvclllcyIpCisgICAgICAgIGVycm9yLnB1c2hidXR0b24oIkEiLDAsNzIsODEsMjEsMywiQWJvcnQiLE5vbmUpLmV2ZW50KCJFbmREaWFsb2ciLCJFcnJvckFib3J0IikKKyAgICAgICAgZXJyb3IucHVzaGJ1dHRvbigiQyIsNDIsNzIsODEsMjEsMywiQ2FuY2VsIixOb25lKS5ldmVudCgiRW5kRGlhbG9nIiwiRXJyb3JDYW5jZWwiKQorICAgICAgICBlcnJvci5wdXNoYnV0dG9uKCJJIiw4MSw3Miw4MSwyMSwzLCJJZ25vcmUiLE5vbmUpLmV2ZW50KCJFbmREaWFsb2ciLCJFcnJvcklnbm9yZSIpCisgICAgICAgIGVycm9yLnB1c2hidXR0b24oIk8iLDE1OSw3Miw4MSwyMSwzLCJPayIsTm9uZSkuZXZlbnQoIkVuZERpYWxvZyIsIkVycm9yT2siKQorICAgICAgICBlcnJvci5wdXNoYnV0dG9uKCJSIiwxOTgsNzIsODEsMjEsMywiUmV0cnkiLE5vbmUpLmV2ZW50KCJFbmREaWFsb2ciLCJFcnJvclJldHJ5IikKKworICAgICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAgICAgICAgIyBHbG9iYWwgIlF1ZXJ5IENhbmNlbCIgZGlhbG9nCisgICAgICAgIGNhbmNlbCA9IERpYWxvZyhkYiwgIkNhbmNlbERsZyIsIDUwLCAxMCwgMjYwLCA4NSwgMywgdGl0bGUsCisgICAgICAgICAgICAgICAgICAgICAgICAiTm8iLCAiTm8iLCAiTm8iKQorICAgICAgICBjYW5jZWwudGV4dCgiVGV4dCIsIDQ4LCAxNSwgMTk0LCAzMCwgMywKKyAgICAgICAgICAgICAgICAgICAgIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjYW5jZWwgW1Byb2R1Y3ROYW1lXSBpbnN0YWxsYXRpb24/IikKKyAgICAgICAgI2NhbmNlbC5jb250cm9sKCJJY29uIiwgIkljb24iLCAxNSwgMTUsIDI0LCAyNCwgNTI0Mjg4MSwgTm9uZSwKKyAgICAgICAgIyAgICAgICAgICAgICAgICJweS5pY28iLCBOb25lLCBOb25lKQorICAgICAgICBjPWNhbmNlbC5wdXNoYnV0dG9uKCJZZXMiLCA3MiwgNTcsIDU2LCAxNywgMywgIlllcyIsICJObyIpCisgICAgICAgIGMuZXZlbnQoIkVuZERpYWxvZyIsICJFeGl0IikKKworICAgICAgICBjPWNhbmNlbC5wdXNoYnV0dG9uKCJObyIsIDEzMiwgNTcsIDU2LCAxNywgMywgIk5vIiwgIlllcyIpCisgICAgICAgIGMuZXZlbnQoIkVuZERpYWxvZyIsICJSZXR1cm4iKQorCisgICAgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworICAgICAgICAjIEdsb2JhbCAiV2FpdCBmb3IgY29zdGluZyIgZGlhbG9nCisgICAgICAgIGNvc3RpbmcgPSBEaWFsb2coZGIsICJXYWl0Rm9yQ29zdGluZ0RsZyIsIDUwLCAxMCwgMjYwLCA4NSwgbW9kYWwsIHRpdGxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICJSZXR1cm4iLCAiUmV0dXJuIiwgIlJldHVybiIpCisgICAgICAgIGNvc3RpbmcudGV4dCgiVGV4dCIsIDQ4LCAxNSwgMTk0LCAzMCwgMywKKyAgICAgICAgICAgICAgICAgICAgICJQbGVhc2Ugd2FpdCB3aGlsZSB0aGUgaW5zdGFsbGVyIGZpbmlzaGVzIGRldGVybWluaW5nIHlvdXIgZGlzayBzcGFjZSByZXF1aXJlbWVudHMuIikKKyAgICAgICAgYyA9IGNvc3RpbmcucHVzaGJ1dHRvbigiUmV0dXJuIiwgMTAyLCA1NywgNTYsIDE3LCAzLCAiUmV0dXJuIiwgTm9uZSkKKyAgICAgICAgYy5ldmVudCgiRW5kRGlhbG9nIiwgIkV4aXQiKQorCisgICAgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworICAgICAgICAjIFByZXBhcmF0aW9uIGRpYWxvZzogbm8gdXNlciBpbnB1dCBleGNlcHQgY2FuY2VsbGF0aW9uCisgICAgICAgIHByZXAgPSBQeURpYWxvZyhkYiwgIlByZXBhcmVEbGciLCB4LCB5LCB3LCBoLCBtb2RlbGVzcywgdGl0bGUsCisgICAgICAgICAgICAgICAgICAgICAgICAiQ2FuY2VsIiwgIkNhbmNlbCIsICJDYW5jZWwiKQorICAgICAgICBwcmVwLnRleHQoIkRlc2NyaXB0aW9uIiwgMTUsIDcwLCAzMjAsIDQwLCAweDMwMDAzLAorICAgICAgICAgICAgICAgICAgIlBsZWFzZSB3YWl0IHdoaWxlIHRoZSBJbnN0YWxsZXIgcHJlcGFyZXMgdG8gZ3VpZGUgeW91IHRocm91Z2ggdGhlIGluc3RhbGxhdGlvbi4iKQorICAgICAgICBwcmVwLnRpdGxlKCJXZWxjb21lIHRvIHRoZSBbUHJvZHVjdE5hbWVdIEluc3RhbGxlciIpCisgICAgICAgIGM9cHJlcC50ZXh0KCJBY3Rpb25UZXh0IiwgMTUsIDExMCwgMzIwLCAyMCwgMHgzMDAwMywgIlBvbmRlcmluZy4uLiIpCisgICAgICAgIGMubWFwcGluZygiQWN0aW9uVGV4dCIsICJUZXh0IikKKyAgICAgICAgYz1wcmVwLnRleHQoIkFjdGlvbkRhdGEiLCAxNSwgMTM1LCAzMjAsIDMwLCAweDMwMDAzLCBOb25lKQorICAgICAgICBjLm1hcHBpbmcoIkFjdGlvbkRhdGEiLCAiVGV4dCIpCisgICAgICAgIHByZXAuYmFjaygiQmFjayIsIE5vbmUsIGFjdGl2ZT0wKQorICAgICAgICBwcmVwLm5leHQoIk5leHQiLCBOb25lLCBhY3RpdmU9MCkKKyAgICAgICAgYz1wcmVwLmNhbmNlbCgiQ2FuY2VsIiwgTm9uZSkKKyAgICAgICAgYy5ldmVudCgiU3Bhd25EaWFsb2ciLCAiQ2FuY2VsRGxnIikKKworICAgICAgICAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAgICAgICAgIyBGZWF0dXJlIChQeXRob24gZGlyZWN0b3J5KSBzZWxlY3Rpb24KKyAgICAgICAgc2VsZGxnID0gUHlEaWFsb2coZGIsICJTZWxlY3RGZWF0dXJlc0RsZyIsIHgsIHksIHcsIGgsIG1vZGFsLCB0aXRsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJOZXh0IiwgIk5leHQiLCAiQ2FuY2VsIikKKyAgICAgICAgc2VsZGxnLnRpdGxlKCJTZWxlY3QgUHl0aG9uIEluc3RhbGxhdGlvbnMiKQorCisgICAgICAgIHNlbGRsZy50ZXh0KCJIaW50IiwgMTUsIDMwLCAzMDAsIDIwLCAzLAorICAgICAgICAgICAgICAgICAgICAiU2VsZWN0IHRoZSBQeXRob24gbG9jYXRpb25zIHdoZXJlICVzIHNob3VsZCBiZSBpbnN0YWxsZWQuIgorICAgICAgICAgICAgICAgICAgICAlIHNlbGYuZGlzdHJpYnV0aW9uLmdldF9mdWxsbmFtZSgpKQorCisgICAgICAgIHNlbGRsZy5iYWNrKCI8IEJhY2siLCBOb25lLCBhY3RpdmU9MCkKKyAgICAgICAgYyA9IHNlbGRsZy5uZXh0KCJOZXh0ID4iLCAiQ2FuY2VsIikKKyAgICAgICAgb3JkZXIgPSAxCisgICAgICAgIGMuZXZlbnQoIltUQVJHRVRESVJdIiwgIltTb3VyY2VEaXJdIiwgb3JkZXJpbmc9b3JkZXIpCisgICAgICAgIGZvciB2ZXJzaW9uIGluIHNlbGYudmVyc2lvbnMgKyBbc2VsZi5vdGhlcl92ZXJzaW9uXToKKyAgICAgICAgICAgIG9yZGVyICs9IDEKKyAgICAgICAgICAgIGMuZXZlbnQoIltUQVJHRVRESVJdIiwgIltUQVJHRVRESVIlc10iICUgdmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgIkZFQVRVUkVfU0VMRUNURUQgQU5EICZQeXRob24lcz0zIiAlIHZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgIG9yZGVyaW5nPW9yZGVyKQorICAgICAgICBjLmV2ZW50KCJTcGF3bldhaXREaWFsb2ciLCAiV2FpdEZvckNvc3RpbmdEbGciLCBvcmRlcmluZz1vcmRlciArIDEpCisgICAgICAgIGMuZXZlbnQoIkVuZERpYWxvZyIsICJSZXR1cm4iLCBvcmRlcmluZz1vcmRlciArIDIpCisgICAgICAgIGMgPSBzZWxkbGcuY2FuY2VsKCJDYW5jZWwiLCAiRmVhdHVyZXMiKQorICAgICAgICBjLmV2ZW50KCJTcGF3bkRpYWxvZyIsICJDYW5jZWxEbGciKQorCisgICAgICAgIGMgPSBzZWxkbGcuY29udHJvbCgiRmVhdHVyZXMiLCAiU2VsZWN0aW9uVHJlZSIsIDE1LCA2MCwgMzAwLCAxMjAsIDMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiRkVBVFVSRSIsIE5vbmUsICJQYXRoRWRpdCIsIE5vbmUpCisgICAgICAgIGMuZXZlbnQoIltGRUFUVVJFX1NFTEVDVEVEXSIsICIxIikKKyAgICAgICAgdmVyID0gc2VsZi5vdGhlcl92ZXJzaW9uCisgICAgICAgIGluc3RhbGxfb3RoZXJfY29uZCA9ICJGRUFUVVJFX1NFTEVDVEVEIEFORCAmUHl0aG9uJXM9MyIgJSB2ZXIKKyAgICAgICAgZG9udF9pbnN0YWxsX290aGVyX2NvbmQgPSAiRkVBVFVSRV9TRUxFQ1RFRCBBTkQgJlB5dGhvbiVzPD4zIiAlIHZlcgorCisgICAgICAgIGMgPSBzZWxkbGcudGV4dCgiT3RoZXIiLCAxNSwgMjAwLCAzMDAsIDE1LCAzLAorICAgICAgICAgICAgICAgICAgICAgICAgIlByb3ZpZGUgYW4gYWx0ZXJuYXRlIFB5dGhvbiBsb2NhdGlvbiIpCisgICAgICAgIGMuY29uZGl0aW9uKCJFbmFibGUiLCBpbnN0YWxsX290aGVyX2NvbmQpCisgICAgICAgIGMuY29uZGl0aW9uKCJTaG93IiwgaW5zdGFsbF9vdGhlcl9jb25kKQorICAgICAgICBjLmNvbmRpdGlvbigiRGlzYWJsZSIsIGRvbnRfaW5zdGFsbF9vdGhlcl9jb25kKQorICAgICAgICBjLmNvbmRpdGlvbigiSGlkZSIsIGRvbnRfaW5zdGFsbF9vdGhlcl9jb25kKQorCisgICAgICAgIGMgPSBzZWxkbGcuY29udHJvbCgiUGF0aEVkaXQiLCAiUGF0aEVkaXQiLCAxNSwgMjE1LCAzMDAsIDE2LCAxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIlRBUkdFVERJUiIgKyB2ZXIsIE5vbmUsICJOZXh0IiwgTm9uZSkKKyAgICAgICAgYy5jb25kaXRpb24oIkVuYWJsZSIsIGluc3RhbGxfb3RoZXJfY29uZCkKKyAgICAgICAgYy5jb25kaXRpb24oIlNob3ciLCBpbnN0YWxsX290aGVyX2NvbmQpCisgICAgICAgIGMuY29uZGl0aW9uKCJEaXNhYmxlIiwgZG9udF9pbnN0YWxsX290aGVyX2NvbmQpCisgICAgICAgIGMuY29uZGl0aW9uKCJIaWRlIiwgZG9udF9pbnN0YWxsX290aGVyX2NvbmQpCisKKyAgICAgICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisgICAgICAgICMgRGlzayBjb3N0CisgICAgICAgIGNvc3QgPSBQeURpYWxvZyhkYiwgIkRpc2tDb3N0RGxnIiwgeCwgeSwgdywgaCwgbW9kYWwsIHRpdGxlLAorICAgICAgICAgICAgICAgICAgICAgICAgIk9LIiwgIk9LIiwgIk9LIiwgYml0bWFwPUZhbHNlKQorICAgICAgICBjb3N0LnRleHQoIlRpdGxlIiwgMTUsIDYsIDIwMCwgMTUsIDB4MzAwMDMsCisgICAgICAgICAgICAgICAgICAie1xEbGdGb250Qm9sZDh9RGlzayBTcGFjZSBSZXF1aXJlbWVudHMiKQorICAgICAgICBjb3N0LnRleHQoIkRlc2NyaXB0aW9uIiwgMjAsIDIwLCAyODAsIDIwLCAweDMwMDAzLAorICAgICAgICAgICAgICAgICAgIlRoZSBkaXNrIHNwYWNlIHJlcXVpcmVkIGZvciB0aGUgaW5zdGFsbGF0aW9uIG9mIHRoZSBzZWxlY3RlZCBmZWF0dXJlcy4iKQorICAgICAgICBjb3N0LnRleHQoIlRleHQiLCAyMCwgNTMsIDMzMCwgNjAsIDMsCisgICAgICAgICAgICAgICAgICAiVGhlIGhpZ2hsaWdodGVkIHZvbHVtZXMgKGlmIGFueSkgZG8gbm90IGhhdmUgZW5vdWdoIGRpc2sgc3BhY2UgIgorICAgICAgICAgICAgICAiYXZhaWxhYmxlIGZvciB0aGUgY3VycmVudGx5IHNlbGVjdGVkIGZlYXR1cmVzLiAgWW91IGNhbiBlaXRoZXIgIgorICAgICAgICAgICAgICAicmVtb3ZlIHNvbWUgZmlsZXMgZnJvbSB0aGUgaGlnaGxpZ2h0ZWQgdm9sdW1lcywgb3IgY2hvb3NlIHRvICIKKyAgICAgICAgICAgICAgImluc3RhbGwgbGVzcyBmZWF0dXJlcyBvbnRvIGxvY2FsIGRyaXZlKHMpLCBvciBzZWxlY3QgZGlmZmVyZW50ICIKKyAgICAgICAgICAgICAgImRlc3RpbmF0aW9uIGRyaXZlKHMpLiIpCisgICAgICAgIGNvc3QuY29udHJvbCgiVm9sdW1lTGlzdCIsICJWb2x1bWVDb3N0TGlzdCIsIDIwLCAxMDAsIDMzMCwgMTUwLCAzOTMyMjMsCisgICAgICAgICAgICAgICAgICAgICBOb25lLCAiezEyMH17NzB9ezcwfXs3MH17NzB9IiwgTm9uZSwgTm9uZSkKKyAgICAgICAgY29zdC54YnV0dG9uKCJPSyIsICJPayIsIE5vbmUsIDAuNSkuZXZlbnQoIkVuZERpYWxvZyIsICJSZXR1cm4iKQorCisgICAgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworICAgICAgICAjIFdoaWNoVXNlcnMgRGlhbG9nLiBPbmx5IGF2YWlsYWJsZSBvbiBOVCwgYW5kIGZvciBwcml2aWxlZ2VkIHVzZXJzLgorICAgICAgICAjIFRoaXMgbXVzdCBiZSBydW4gYmVmb3JlIEZpbmRSZWxhdGVkUHJvZHVjdHMsIGJlY2F1c2UgdGhhdCB3aWxsCisgICAgICAgICMgdGFrZSBpbnRvIGFjY291bnQgd2hldGhlciB0aGUgcHJldmlvdXMgaW5zdGFsbGF0aW9uIHdhcyBwZXItdXNlcgorICAgICAgICAjIG9yIHBlci1tYWNoaW5lLiBXZSBjdXJyZW50bHkgZG9uJ3Qgc3VwcG9ydCBnb2luZyBiYWNrIHRvIHRoaXMKKyAgICAgICAgIyBkaWFsb2cgYWZ0ZXIgIk5leHQiIHdhcyBzZWxlY3RlZDsgdG8gc3VwcG9ydCB0aGlzLCB3ZSB3b3VsZCBuZWVkIHRvCisgICAgICAgICMgZmluZCBob3cgdG8gcmVzZXQgdGhlIEFMTFVTRVJTIHByb3BlcnR5LCBhbmQgaG93IHRvIHJlLXJ1bgorICAgICAgICAjIEZpbmRSZWxhdGVkUHJvZHVjdHMuCisgICAgICAgICMgT24gV2luZG93czl4LCB0aGUgQUxMVVNFUlMgcHJvcGVydHkgaXMgaWdub3JlZCBvbiB0aGUgY29tbWFuZCBsaW5lCisgICAgICAgICMgYW5kIGluIHRoZSBQcm9wZXJ0eSB0YWJsZSwgYnV0IGluc3RhbGxlciBmYWlscyBhY2NvcmRpbmcgdG8gdGhlIGRvY3VtZW50YXRpb24KKyAgICAgICAgIyBpZiBhIGRpYWxvZyBhdHRlbXB0cyB0byBzZXQgQUxMVVNFUlMuCisgICAgICAgIHdoaWNodXNlcnMgPSBQeURpYWxvZyhkYiwgIldoaWNoVXNlcnNEbGciLCB4LCB5LCB3LCBoLCBtb2RhbCwgdGl0bGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkFkbWluSW5zdGFsbCIsICJOZXh0IiwgIkNhbmNlbCIpCisgICAgICAgIHdoaWNodXNlcnMudGl0bGUoIlNlbGVjdCB3aGV0aGVyIHRvIGluc3RhbGwgW1Byb2R1Y3ROYW1lXSBmb3IgYWxsIHVzZXJzIG9mIHRoaXMgY29tcHV0ZXIuIikKKyAgICAgICAgIyBBIHJhZGlvIGdyb3VwIHdpdGggdHdvIG9wdGlvbnM6IGFsbHVzZXJzLCBqdXN0bWUKKyAgICAgICAgZyA9IHdoaWNodXNlcnMucmFkaW9ncm91cCgiQWRtaW5JbnN0YWxsIiwgMTUsIDYwLCAyNjAsIDUwLCAzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJXaGljaFVzZXJzIiwgIiIsICJOZXh0IikKKyAgICAgICAgZy5hZGQoIkFMTCIsIDAsIDUsIDE1MCwgMjAsICJJbnN0YWxsIGZvciBhbGwgdXNlcnMiKQorICAgICAgICBnLmFkZCgiSlVTVE1FIiwgMCwgMjUsIDE1MCwgMjAsICJJbnN0YWxsIGp1c3QgZm9yIG1lIikKKworICAgICAgICB3aGljaHVzZXJzLmJhY2soIkJhY2siLCBOb25lLCBhY3RpdmU9MCkKKworICAgICAgICBjID0gd2hpY2h1c2Vycy5uZXh0KCJOZXh0ID4iLCAiQ2FuY2VsIikKKyAgICAgICAgYy5ldmVudCgiW0FMTFVTRVJTXSIsICIxIiwgJ1doaWNoVXNlcnM9IkFMTCInLCAxKQorICAgICAgICBjLmV2ZW50KCJFbmREaWFsb2ciLCAiUmV0dXJuIiwgb3JkZXJpbmcgPSAyKQorCisgICAgICAgIGMgPSB3aGljaHVzZXJzLmNhbmNlbCgiQ2FuY2VsIiwgIkFkbWluSW5zdGFsbCIpCisgICAgICAgIGMuZXZlbnQoIlNwYXduRGlhbG9nIiwgIkNhbmNlbERsZyIpCisKKyAgICAgICAgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisgICAgICAgICMgSW5zdGFsbGF0aW9uIFByb2dyZXNzIGRpYWxvZyAobW9kZWxlc3MpCisgICAgICAgIHByb2dyZXNzID0gUHlEaWFsb2coZGIsICJQcm9ncmVzc0RsZyIsIHgsIHksIHcsIGgsIG1vZGVsZXNzLCB0aXRsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ2FuY2VsIiwgIkNhbmNlbCIsICJDYW5jZWwiLCBiaXRtYXA9RmFsc2UpCisgICAgICAgIHByb2dyZXNzLnRleHQoIlRpdGxlIiwgMjAsIDE1LCAyMDAsIDE1LCAweDMwMDAzLAorICAgICAgICAgICAgICAgICAgICAgICJ7XERsZ0ZvbnRCb2xkOH1bUHJvZ3Jlc3MxXSBbUHJvZHVjdE5hbWVdIikKKyAgICAgICAgcHJvZ3Jlc3MudGV4dCgiVGV4dCIsIDM1LCA2NSwgMzAwLCAzMCwgMywKKyAgICAgICAgICAgICAgICAgICAgICAiUGxlYXNlIHdhaXQgd2hpbGUgdGhlIEluc3RhbGxlciBbUHJvZ3Jlc3MyXSBbUHJvZHVjdE5hbWVdLiAiCisgICAgICAgICAgICAgICAgICAgICAgIlRoaXMgbWF5IHRha2Ugc2V2ZXJhbCBtaW51dGVzLiIpCisgICAgICAgIHByb2dyZXNzLnRleHQoIlN0YXR1c0xhYmVsIiwgMzUsIDEwMCwgMzUsIDIwLCAzLCAiU3RhdHVzOiIpCisKKyAgICAgICAgYz1wcm9ncmVzcy50ZXh0KCJBY3Rpb25UZXh0IiwgNzAsIDEwMCwgdy03MCwgMjAsIDMsICJQb25kZXJpbmcuLi4iKQorICAgICAgICBjLm1hcHBpbmcoIkFjdGlvblRleHQiLCAiVGV4dCIpCisKKyAgICAgICAgI2M9cHJvZ3Jlc3MudGV4dCgiQWN0aW9uRGF0YSIsIDM1LCAxNDAsIDMwMCwgMjAsIDMsIE5vbmUpCisgICAgICAgICNjLm1hcHBpbmcoIkFjdGlvbkRhdGEiLCAiVGV4dCIpCisKKyAgICAgICAgYz1wcm9ncmVzcy5jb250cm9sKCJQcm9ncmVzc0JhciIsICJQcm9ncmVzc0JhciIsIDM1LCAxMjAsIDMwMCwgMTAsIDY1NTM3LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgTm9uZSwgIlByb2dyZXNzIGRvbmUiLCBOb25lLCBOb25lKQorICAgICAgICBjLm1hcHBpbmcoIlNldFByb2dyZXNzIiwgIlByb2dyZXNzIikKKworICAgICAgICBwcm9ncmVzcy5iYWNrKCI8IEJhY2siLCAiTmV4dCIsIGFjdGl2ZT1GYWxzZSkKKyAgICAgICAgcHJvZ3Jlc3MubmV4dCgiTmV4dCA+IiwgIkNhbmNlbCIsIGFjdGl2ZT1GYWxzZSkKKyAgICAgICAgcHJvZ3Jlc3MuY2FuY2VsKCJDYW5jZWwiLCAiQmFjayIpLmV2ZW50KCJTcGF3bkRpYWxvZyIsICJDYW5jZWxEbGciKQorCisgICAgICAgICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAgICAgICAgIyBNYWludGVuYW5jZSB0eXBlOiByZXBhaXIvdW5pbnN0YWxsCisgICAgICAgIG1haW50ID0gUHlEaWFsb2coZGIsICJNYWludGVuYW5jZVR5cGVEbGciLCB4LCB5LCB3LCBoLCBtb2RhbCwgdGl0bGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIk5leHQiLCAiTmV4dCIsICJDYW5jZWwiKQorICAgICAgICBtYWludC50aXRsZSgiV2VsY29tZSB0byB0aGUgW1Byb2R1Y3ROYW1lXSBTZXR1cCBXaXphcmQiKQorICAgICAgICBtYWludC50ZXh0KCJCb2R5VGV4dCIsIDE1LCA2MywgMzMwLCA0MiwgMywKKyAgICAgICAgICAgICAgICAgICAiU2VsZWN0IHdoZXRoZXIgeW91IHdhbnQgdG8gcmVwYWlyIG9yIHJlbW92ZSBbUHJvZHVjdE5hbWVdLiIpCisgICAgICAgIGc9bWFpbnQucmFkaW9ncm91cCgiUmVwYWlyUmFkaW9Hcm91cCIsIDE1LCAxMDgsIDMzMCwgNjAsIDMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1haW50ZW5hbmNlRm9ybV9BY3Rpb24iLCAiIiwgIk5leHQiKQorICAgICAgICAjZy5hZGQoIkNoYW5nZSIsIDAsIDAsIDIwMCwgMTcsICImQ2hhbmdlIFtQcm9kdWN0TmFtZV0iKQorICAgICAgICBnLmFkZCgiUmVwYWlyIiwgMCwgMTgsIDIwMCwgMTcsICImUmVwYWlyIFtQcm9kdWN0TmFtZV0iKQorICAgICAgICBnLmFkZCgiUmVtb3ZlIiwgMCwgMzYsIDIwMCwgMTcsICJSZSZtb3ZlIFtQcm9kdWN0TmFtZV0iKQorCisgICAgICAgIG1haW50LmJhY2soIjwgQmFjayIsIE5vbmUsIGFjdGl2ZT1GYWxzZSkKKyAgICAgICAgYz1tYWludC5uZXh0KCJGaW5pc2giLCAiQ2FuY2VsIikKKyAgICAgICAgIyBDaGFuZ2UgaW5zdGFsbGF0aW9uOiBDaGFuZ2UgcHJvZ3Jlc3MgZGlhbG9nIHRvICJDaGFuZ2UiLCB0aGVuIGFzaworICAgICAgICAjIGZvciBmZWF0dXJlIHNlbGVjdGlvbgorICAgICAgICAjYy5ldmVudCgiW1Byb2dyZXNzMV0iLCAiQ2hhbmdlIiwgJ01haW50ZW5hbmNlRm9ybV9BY3Rpb249IkNoYW5nZSInLCAxKQorICAgICAgICAjYy5ldmVudCgiW1Byb2dyZXNzMl0iLCAiY2hhbmdlcyIsICdNYWludGVuYW5jZUZvcm1fQWN0aW9uPSJDaGFuZ2UiJywgMikKKworICAgICAgICAjIFJlaW5zdGFsbDogQ2hhbmdlIHByb2dyZXNzIGRpYWxvZyB0byAiUmVwYWlyIiwgdGhlbiBpbnZva2UgcmVpbnN0YWxsCisgICAgICAgICMgQWxzbyBzZXQgbGlzdCBvZiByZWluc3RhbGxlZCBmZWF0dXJlcyB0byAiQUxMIgorICAgICAgICBjLmV2ZW50KCJbUkVJTlNUQUxMXSIsICJBTEwiLCAnTWFpbnRlbmFuY2VGb3JtX0FjdGlvbj0iUmVwYWlyIicsIDUpCisgICAgICAgIGMuZXZlbnQoIltQcm9ncmVzczFdIiwgIlJlcGFpcmluZyIsICdNYWludGVuYW5jZUZvcm1fQWN0aW9uPSJSZXBhaXIiJywgNikKKyAgICAgICAgYy5ldmVudCgiW1Byb2dyZXNzMl0iLCAicmVwYWlycyIsICdNYWludGVuYW5jZUZvcm1fQWN0aW9uPSJSZXBhaXIiJywgNykKKyAgICAgICAgYy5ldmVudCgiUmVpbnN0YWxsIiwgIkFMTCIsICdNYWludGVuYW5jZUZvcm1fQWN0aW9uPSJSZXBhaXIiJywgOCkKKworICAgICAgICAjIFVuaW5zdGFsbDogQ2hhbmdlIHByb2dyZXNzIHRvICJSZW1vdmUiLCB0aGVuIGludm9rZSB1bmluc3RhbGwKKyAgICAgICAgIyBBbHNvIHNldCBsaXN0IG9mIHJlbW92ZWQgZmVhdHVyZXMgdG8gIkFMTCIKKyAgICAgICAgYy5ldmVudCgiW1JFTU9WRV0iLCAiQUxMIiwgJ01haW50ZW5hbmNlRm9ybV9BY3Rpb249IlJlbW92ZSInLCAxMSkKKyAgICAgICAgYy5ldmVudCgiW1Byb2dyZXNzMV0iLCAiUmVtb3ZpbmciLCAnTWFpbnRlbmFuY2VGb3JtX0FjdGlvbj0iUmVtb3ZlIicsIDEyKQorICAgICAgICBjLmV2ZW50KCJbUHJvZ3Jlc3MyXSIsICJyZW1vdmVzIiwgJ01haW50ZW5hbmNlRm9ybV9BY3Rpb249IlJlbW92ZSInLCAxMykKKyAgICAgICAgYy5ldmVudCgiUmVtb3ZlIiwgIkFMTCIsICdNYWludGVuYW5jZUZvcm1fQWN0aW9uPSJSZW1vdmUiJywgMTQpCisKKyAgICAgICAgIyBDbG9zZSBkaWFsb2cgd2hlbiBtYWludGVuYW5jZSBhY3Rpb24gc2NoZWR1bGVkCisgICAgICAgIGMuZXZlbnQoIkVuZERpYWxvZyIsICJSZXR1cm4iLCAnTWFpbnRlbmFuY2VGb3JtX0FjdGlvbjw+IkNoYW5nZSInLCAyMCkKKyAgICAgICAgI2MuZXZlbnQoIk5ld0RpYWxvZyIsICJTZWxlY3RGZWF0dXJlc0RsZyIsICdNYWludGVuYW5jZUZvcm1fQWN0aW9uPSJDaGFuZ2UiJywgMjEpCisKKyAgICAgICAgbWFpbnQuY2FuY2VsKCJDYW5jZWwiLCAiUmVwYWlyUmFkaW9Hcm91cCIpLmV2ZW50KCJTcGF3bkRpYWxvZyIsICJDYW5jZWxEbGciKQorCisgICAgZGVmIGdldF9pbnN0YWxsZXJfZmlsZW5hbWUoc2VsZiwgZnVsbG5hbWUpOgorICAgICAgICAjIEZhY3RvcmVkIG91dCB0byBhbGxvdyBvdmVycmlkaW5nIGluIHN1YmNsYXNzZXMKKyAgICAgICAgaWYgc2VsZi50YXJnZXRfdmVyc2lvbjoKKyAgICAgICAgICAgIGJhc2VfbmFtZSA9ICIlcy4lcy1weSVzLm1zaSIgJSAoZnVsbG5hbWUsIHNlbGYucGxhdF9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnRhcmdldF92ZXJzaW9uKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgYmFzZV9uYW1lID0gIiVzLiVzLm1zaSIgJSAoZnVsbG5hbWUsIHNlbGYucGxhdF9uYW1lKQorICAgICAgICBpbnN0YWxsZXJfbmFtZSA9IG9zLnBhdGguam9pbihzZWxmLmRpc3RfZGlyLCBiYXNlX25hbWUpCisgICAgICAgIHJldHVybiBpbnN0YWxsZXJfbmFtZQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2JkaXN0X3dpbmluc3QucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYmRpc3Rfd2luaW5zdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZTZiNzllCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2JkaXN0X3dpbmluc3QucHkKQEAgLTAsMCArMSwzNDUgQEAKKyIiIkNyZWF0ZSBhbiBleGVjdXRhYmxlIGluc3RhbGxlciBmb3IgV2luZG93cy4iIiIKKworaW1wb3J0IHN5cworaW1wb3J0IG9zCisKK2Zyb20gc2h1dGlsIGltcG9ydCBybXRyZWUKK2Zyb20gc3lzY29uZmlnIGltcG9ydCBnZXRfcHl0aG9uX3ZlcnNpb24KK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yLCBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBnZXRfcGxhdGZvcm0KKworCitjbGFzcyBiZGlzdF93aW5pbnN0KENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAiY3JlYXRlIGFuIGV4ZWN1dGFibGUgaW5zdGFsbGVyIGZvciBXaW5kb3dzIgorCisgICAgdXNlcl9vcHRpb25zID0gWygnYmRpc3QtZGlyPScsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAidGVtcG9yYXJ5IGRpcmVjdG9yeSBmb3IgY3JlYXRpbmcgdGhlIGRpc3RyaWJ1dGlvbiIpLAorICAgICAgICAgICAgICAgICAgICAoJ3BsYXQtbmFtZT0nLCAncCcsCisgICAgICAgICAgICAgICAgICAgICAicGxhdGZvcm0gbmFtZSB0byBlbWJlZCBpbiBnZW5lcmF0ZWQgZmlsZW5hbWVzICIKKyAgICAgICAgICAgICAgICAgICAgICIoZGVmYXVsdDogJXMpIiAlIGdldF9wbGF0Zm9ybSgpKSwKKyAgICAgICAgICAgICAgICAgICAgKCdrZWVwLXRlbXAnLCAnaycsCisgICAgICAgICAgICAgICAgICAgICAia2VlcCB0aGUgcHNldWRvLWluc3RhbGxhdGlvbiB0cmVlIGFyb3VuZCBhZnRlciAiICsKKyAgICAgICAgICAgICAgICAgICAgICJjcmVhdGluZyB0aGUgZGlzdHJpYnV0aW9uIGFyY2hpdmUiKSwKKyAgICAgICAgICAgICAgICAgICAgKCd0YXJnZXQtdmVyc2lvbj0nLCBOb25lLAorICAgICAgICAgICAgICAgICAgICAgInJlcXVpcmUgYSBzcGVjaWZpYyBweXRob24gdmVyc2lvbiIgKworICAgICAgICAgICAgICAgICAgICAgIiBvbiB0aGUgdGFyZ2V0IHN5c3RlbSIpLAorICAgICAgICAgICAgICAgICAgICAoJ25vLXRhcmdldC1jb21waWxlJywgJ2MnLAorICAgICAgICAgICAgICAgICAgICAgImRvIG5vdCBjb21waWxlIC5weSB0byAucHljIG9uIHRoZSB0YXJnZXQgc3lzdGVtIiksCisgICAgICAgICAgICAgICAgICAgICgnbm8tdGFyZ2V0LW9wdGltaXplJywgJ28nLAorICAgICAgICAgICAgICAgICAgICAgImRvIG5vdCBjb21waWxlIC5weSB0byAucHlvIChvcHRpbWl6ZWQpIgorICAgICAgICAgICAgICAgICAgICAgIm9uIHRoZSB0YXJnZXQgc3lzdGVtIiksCisgICAgICAgICAgICAgICAgICAgICgnZGlzdC1kaXI9JywgJ2QnLAorICAgICAgICAgICAgICAgICAgICAgImRpcmVjdG9yeSB0byBwdXQgZmluYWwgYnVpbHQgZGlzdHJpYnV0aW9ucyBpbiIpLAorICAgICAgICAgICAgICAgICAgICAoJ2JpdG1hcD0nLCAnYicsCisgICAgICAgICAgICAgICAgICAgICAiYml0bWFwIHRvIHVzZSBmb3IgdGhlIGluc3RhbGxlciBpbnN0ZWFkIG9mIHB5dGhvbi1wb3dlcmVkIGxvZ28iKSwKKyAgICAgICAgICAgICAgICAgICAgKCd0aXRsZT0nLCAndCcsCisgICAgICAgICAgICAgICAgICAgICAidGl0bGUgdG8gZGlzcGxheSBvbiB0aGUgaW5zdGFsbGVyIGJhY2tncm91bmQgaW5zdGVhZCBvZiBkZWZhdWx0IiksCisgICAgICAgICAgICAgICAgICAgICgnc2tpcC1idWlsZCcsIE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAic2tpcCByZWJ1aWxkaW5nIGV2ZXJ5dGhpbmcgKGZvciB0ZXN0aW5nL2RlYnVnZ2luZykiKSwKKyAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsLXNjcmlwdD0nLCBOb25lLAorICAgICAgICAgICAgICAgICAgICAgImJhc2VuYW1lIG9mIGluc3RhbGxhdGlvbiBzY3JpcHQgdG8gYmUgcnVuIGFmdGVyIgorICAgICAgICAgICAgICAgICAgICAgImluc3RhbGxhdGlvbiBvciBiZWZvcmUgZGVpbnN0YWxsYXRpb24iKSwKKyAgICAgICAgICAgICAgICAgICAgKCdwcmUtaW5zdGFsbC1zY3JpcHQ9JywgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICJGdWxseSBxdWFsaWZpZWQgZmlsZW5hbWUgb2YgYSBzY3JpcHQgdG8gYmUgcnVuIGJlZm9yZSAiCisgICAgICAgICAgICAgICAgICAgICAiYW55IGZpbGVzIGFyZSBpbnN0YWxsZWQuICBUaGlzIHNjcmlwdCBuZWVkIG5vdCBiZSBpbiB0aGUgIgorICAgICAgICAgICAgICAgICAgICAgImRpc3RyaWJ1dGlvbiIpLAorICAgICAgICAgICAgICAgICAgICAoJ3VzZXItYWNjZXNzLWNvbnRyb2w9JywgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZ5IFZpc3RhJ3MgVUFDIGhhbmRsaW5nIC0gJ25vbmUnL2RlZmF1bHQ9bm8gIgorICAgICAgICAgICAgICAgICAgICAgImhhbmRsaW5nLCAnYXV0byc9dXNlIFVBQyBpZiB0YXJnZXQgUHl0aG9uIGluc3RhbGxlZCBmb3IgIgorICAgICAgICAgICAgICAgICAgICAgImFsbCB1c2VycywgJ2ZvcmNlJz1hbHdheXMgdXNlIFVBQyIpLAorICAgICAgICAgICAgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsna2VlcC10ZW1wJywgJ25vLXRhcmdldC1jb21waWxlJywgJ25vLXRhcmdldC1vcHRpbWl6ZScsCisgICAgICAgICAgICAgICAgICAgICAgICdza2lwLWJ1aWxkJ10KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuYmRpc3RfZGlyID0gTm9uZQorICAgICAgICBzZWxmLnBsYXRfbmFtZSA9IE5vbmUKKyAgICAgICAgc2VsZi5rZWVwX3RlbXAgPSBGYWxzZQorICAgICAgICBzZWxmLm5vX3RhcmdldF9jb21waWxlID0gRmFsc2UKKyAgICAgICAgc2VsZi5ub190YXJnZXRfb3B0aW1pemUgPSBGYWxzZQorICAgICAgICBzZWxmLnRhcmdldF92ZXJzaW9uID0gTm9uZQorICAgICAgICBzZWxmLmRpc3RfZGlyID0gTm9uZQorICAgICAgICBzZWxmLmJpdG1hcCA9IE5vbmUKKyAgICAgICAgc2VsZi50aXRsZSA9IE5vbmUKKyAgICAgICAgc2VsZi5za2lwX2J1aWxkID0gTm9uZQorICAgICAgICBzZWxmLmluc3RhbGxfc2NyaXB0ID0gTm9uZQorICAgICAgICBzZWxmLnByZV9pbnN0YWxsX3NjcmlwdCA9IE5vbmUKKyAgICAgICAgc2VsZi51c2VyX2FjY2Vzc19jb250cm9sID0gTm9uZQorCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2JkaXN0JywgJ3NraXBfYnVpbGQnKQorCisgICAgICAgIGlmIHNlbGYuYmRpc3RfZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBpZiBzZWxmLnNraXBfYnVpbGQgYW5kIHNlbGYucGxhdF9uYW1lOgorICAgICAgICAgICAgICAgICMgSWYgYnVpbGQgaXMgc2tpcHBlZCBhbmQgcGxhdF9uYW1lIGlzIG92ZXJyaWRkZW4sIGJkaXN0IHdpbGwKKyAgICAgICAgICAgICAgICAjIG5vdCBzZWUgdGhlIGNvcnJlY3QgJ3BsYXRfbmFtZScgLSBzbyBzZXQgdGhhdCB1cCBtYW51YWxseS4KKyAgICAgICAgICAgICAgICBiZGlzdCA9IHNlbGYuZGlzdHJpYnV0aW9uLmdldF9jb21tYW5kX29iaignYmRpc3QnKQorICAgICAgICAgICAgICAgIGJkaXN0LnBsYXRfbmFtZSA9IHNlbGYucGxhdF9uYW1lCisgICAgICAgICAgICAgICAgIyBuZXh0IHRoZSBjb21tYW5kIHdpbGwgYmUgaW5pdGlhbGl6ZWQgdXNpbmcgdGhhdCBuYW1lCisgICAgICAgICAgICBiZGlzdF9iYXNlID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2JkaXN0JykuYmRpc3RfYmFzZQorICAgICAgICAgICAgc2VsZi5iZGlzdF9kaXIgPSBvcy5wYXRoLmpvaW4oYmRpc3RfYmFzZSwgJ3dpbmluc3QnKQorCisgICAgICAgIGlmIG5vdCBzZWxmLnRhcmdldF92ZXJzaW9uOgorICAgICAgICAgICAgc2VsZi50YXJnZXRfdmVyc2lvbiA9ICIiCisKKyAgICAgICAgaWYgbm90IHNlbGYuc2tpcF9idWlsZCBhbmQgc2VsZi5kaXN0cmlidXRpb24uaGFzX2V4dF9tb2R1bGVzKCk6CisgICAgICAgICAgICBzaG9ydF92ZXJzaW9uID0gZ2V0X3B5dGhvbl92ZXJzaW9uKCkKKyAgICAgICAgICAgIGlmIHNlbGYudGFyZ2V0X3ZlcnNpb24gYW5kIHNlbGYudGFyZ2V0X3ZlcnNpb24gIT0gc2hvcnRfdmVyc2lvbjoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigidGFyZ2V0IHZlcnNpb24gY2FuIG9ubHkgYmUgJXMsIG9yIHRoZSAnLS1za2lwLWJ1aWxkJyIgXAorICAgICAgICAgICAgICAgICAgICAgICIgb3B0aW9uIG11c3QgYmUgc3BlY2lmaWVkIiAlIChzaG9ydF92ZXJzaW9uLCkpCisgICAgICAgICAgICBzZWxmLnRhcmdldF92ZXJzaW9uID0gc2hvcnRfdmVyc2lvbgorCisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdiZGlzdCcsICdkaXN0X2RpcicsICdwbGF0X25hbWUnKQorCisgICAgICAgIGlmIHNlbGYuaW5zdGFsbF9zY3JpcHQ6CisgICAgICAgICAgICBmb3Igc2NyaXB0IGluIHNlbGYuZGlzdHJpYnV0aW9uLnNjcmlwdHM6CisgICAgICAgICAgICAgICAgaWYgc2VsZi5pbnN0YWxsX3NjcmlwdCA9PSBvcy5wYXRoLmJhc2VuYW1lKHNjcmlwdCk6CisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKCJpbnN0YWxsX3NjcmlwdCAnJXMnIG5vdCBmb3VuZCBpbiBzY3JpcHRzIiAlIFwKKyAgICAgICAgICAgICAgICAgICAgICBzZWxmLmluc3RhbGxfc2NyaXB0KQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgaWYgKHN5cy5wbGF0Zm9ybSAhPSAid2luMzIiIGFuZAorICAgICAgICAgICAgKHNlbGYuZGlzdHJpYnV0aW9uLmhhc19leHRfbW9kdWxlcygpIG9yCisgICAgICAgICAgICAgc2VsZi5kaXN0cmlidXRpb24uaGFzX2NfbGlicmFyaWVzKCkpKToKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IgXAorICAgICAgICAgICAgICAgICAgKCJkaXN0cmlidXRpb24gY29udGFpbnMgZXh0ZW5zaW9ucyBhbmQvb3IgQyBsaWJyYXJpZXM7ICIKKyAgICAgICAgICAgICAgICAgICAibXVzdCBiZSBjb21waWxlZCBvbiBhIFdpbmRvd3MgMzIgcGxhdGZvcm0iKQorCisgICAgICAgIGlmIG5vdCBzZWxmLnNraXBfYnVpbGQ6CisgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKCdidWlsZCcpCisKKyAgICAgICAgaW5zdGFsbCA9IHNlbGYucmVpbml0aWFsaXplX2NvbW1hbmQoJ2luc3RhbGwnLCByZWluaXRfc3ViY29tbWFuZHM9VHJ1ZSkKKyAgICAgICAgaW5zdGFsbC5yb290ID0gc2VsZi5iZGlzdF9kaXIKKyAgICAgICAgaW5zdGFsbC5za2lwX2J1aWxkID0gc2VsZi5za2lwX2J1aWxkCisgICAgICAgIGluc3RhbGwud2Fybl9kaXIgPSBGYWxzZQorICAgICAgICBpbnN0YWxsLnBsYXRfbmFtZSA9IHNlbGYucGxhdF9uYW1lCisKKyAgICAgICAgaW5zdGFsbF9saWIgPSBzZWxmLnJlaW5pdGlhbGl6ZV9jb21tYW5kKCdpbnN0YWxsX2xpYicpCisgICAgICAgICMgd2UgZG8gbm90IHdhbnQgdG8gaW5jbHVkZSBweWMgb3IgcHlvIGZpbGVzCisgICAgICAgIGluc3RhbGxfbGliLmNvbXBpbGUgPSBGYWxzZQorICAgICAgICBpbnN0YWxsX2xpYi5vcHRpbWl6ZSA9IDAKKworICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKToKKyAgICAgICAgICAgICMgSWYgd2UgYXJlIGJ1aWxkaW5nIGFuIGluc3RhbGxlciBmb3IgYSBQeXRob24gdmVyc2lvbiBvdGhlcgorICAgICAgICAgICAgIyB0aGFuIHRoZSBvbmUgd2UgYXJlIGN1cnJlbnRseSBydW5uaW5nLCB0aGVuIHdlIG5lZWQgdG8gZW5zdXJlCisgICAgICAgICAgICAjIG91ciBidWlsZF9saWIgcmVmbGVjdHMgdGhlIG90aGVyIFB5dGhvbiB2ZXJzaW9uIHJhdGhlciB0aGFuIG91cnMuCisgICAgICAgICAgICAjIE5vdGUgdGhhdCBmb3IgdGFyZ2V0X3ZlcnNpb24hPXN5cy52ZXJzaW9uLCB3ZSBtdXN0IGhhdmUgc2tpcHBlZCB0aGUKKyAgICAgICAgICAgICMgYnVpbGQgc3RlcCwgc28gdGhlcmUgaXMgbm8gaXNzdWUgd2l0aCBlbmZvcmNpbmcgdGhlIGJ1aWxkIG9mIHRoaXMKKyAgICAgICAgICAgICMgdmVyc2lvbi4KKyAgICAgICAgICAgIHRhcmdldF92ZXJzaW9uID0gc2VsZi50YXJnZXRfdmVyc2lvbgorICAgICAgICAgICAgaWYgbm90IHRhcmdldF92ZXJzaW9uOgorICAgICAgICAgICAgICAgIGFzc2VydCBzZWxmLnNraXBfYnVpbGQsICJTaG91bGQgaGF2ZSBhbHJlYWR5IGNoZWNrZWQgdGhpcyIKKyAgICAgICAgICAgICAgICB0YXJnZXRfdmVyc2lvbiA9IHN5cy52ZXJzaW9uWzA6M10KKyAgICAgICAgICAgIHBsYXRfc3BlY2lmaWVyID0gIi4lcy0lcyIgJSAoc2VsZi5wbGF0X25hbWUsIHRhcmdldF92ZXJzaW9uKQorICAgICAgICAgICAgYnVpbGQgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYnVpbGQnKQorICAgICAgICAgICAgYnVpbGQuYnVpbGRfbGliID0gb3MucGF0aC5qb2luKGJ1aWxkLmJ1aWxkX2Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xpYicgKyBwbGF0X3NwZWNpZmllcikKKworICAgICAgICAjIFVzZSBhIGN1c3RvbSBzY2hlbWUgZm9yIHRoZSB6aXAtZmlsZSwgYmVjYXVzZSB3ZSBoYXZlIHRvIGRlY2lkZQorICAgICAgICAjIGF0IGluc3RhbGxhdGlvbiB0aW1lIHdoaWNoIHNjaGVtZSB0byB1c2UuCisgICAgICAgIGZvciBrZXkgaW4gKCdwdXJlbGliJywgJ3BsYXRsaWInLCAnaGVhZGVycycsICdzY3JpcHRzJywgJ2RhdGEnKToKKyAgICAgICAgICAgIHZhbHVlID0ga2V5LnVwcGVyKCkKKyAgICAgICAgICAgIGlmIGtleSA9PSAnaGVhZGVycyc6CisgICAgICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZSArICcvSW5jbHVkZS8kZGlzdF9uYW1lJworICAgICAgICAgICAgc2V0YXR0cihpbnN0YWxsLAorICAgICAgICAgICAgICAgICAgICAnaW5zdGFsbF8nICsga2V5LAorICAgICAgICAgICAgICAgICAgICB2YWx1ZSkKKworICAgICAgICBsb2dnZXIuaW5mbygiaW5zdGFsbGluZyB0byAlcyIsIHNlbGYuYmRpc3RfZGlyKQorICAgICAgICBpbnN0YWxsLmVuc3VyZV9maW5hbGl6ZWQoKQorCisgICAgICAgICMgYXZvaWQgd2FybmluZyBvZiAnaW5zdGFsbF9saWInIGFib3V0IGluc3RhbGxpbmcKKyAgICAgICAgIyBpbnRvIGEgZGlyZWN0b3J5IG5vdCBpbiBzeXMucGF0aAorICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgb3MucGF0aC5qb2luKHNlbGYuYmRpc3RfZGlyLCAnUFVSRUxJQicpKQorCisgICAgICAgIGluc3RhbGwucnVuKCkKKworICAgICAgICBkZWwgc3lzLnBhdGhbMF0KKworICAgICAgICAjIEFuZCBtYWtlIGFuIGFyY2hpdmUgcmVsYXRpdmUgdG8gdGhlIHJvb3Qgb2YgdGhlCisgICAgICAgICMgcHNldWRvLWluc3RhbGxhdGlvbiB0cmVlLgorICAgICAgICBmcm9tIHRlbXBmaWxlIGltcG9ydCBOYW1lZFRlbXBvcmFyeUZpbGUKKyAgICAgICAgYXJjaGl2ZV9iYXNlbmFtZSA9IE5hbWVkVGVtcG9yYXJ5RmlsZSgpLm5hbWUKKyAgICAgICAgZnVsbG5hbWUgPSBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfZnVsbG5hbWUoKQorICAgICAgICBhcmNuYW1lID0gc2VsZi5tYWtlX2FyY2hpdmUoYXJjaGl2ZV9iYXNlbmFtZSwgInppcCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb290X2Rpcj1zZWxmLmJkaXN0X2RpcikKKyAgICAgICAgIyBjcmVhdGUgYW4gZXhlIGNvbnRhaW5pbmcgdGhlIHppcC1maWxlCisgICAgICAgIHNlbGYuY3JlYXRlX2V4ZShhcmNuYW1lLCBmdWxsbmFtZSwgc2VsZi5iaXRtYXApCisgICAgICAgIGlmIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19leHRfbW9kdWxlcygpOgorICAgICAgICAgICAgcHl2ZXJzaW9uID0gZ2V0X3B5dGhvbl92ZXJzaW9uKCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHB5dmVyc2lvbiA9ICdhbnknCisgICAgICAgIHNlbGYuZGlzdHJpYnV0aW9uLmRpc3RfZmlsZXMuYXBwZW5kKCgnYmRpc3Rfd2luaW5zdCcsIHB5dmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZ2V0X2luc3RhbGxlcl9maWxlbmFtZShmdWxsbmFtZSkpKQorICAgICAgICAjIHJlbW92ZSB0aGUgemlwLWZpbGUgYWdhaW4KKyAgICAgICAgbG9nZ2VyLmRlYnVnKCJyZW1vdmluZyB0ZW1wb3JhcnkgZmlsZSAnJXMnIiwgYXJjbmFtZSkKKyAgICAgICAgb3MucmVtb3ZlKGFyY25hbWUpCisKKyAgICAgICAgaWYgbm90IHNlbGYua2VlcF90ZW1wOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ3JlbW92aW5nICVzJywgc2VsZi5iZGlzdF9kaXIpCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgIHJtdHJlZShzZWxmLmJkaXN0X2RpcikKKworICAgIGRlZiBnZXRfaW5pZGF0YShzZWxmKToKKyAgICAgICAgIyBSZXR1cm4gZGF0YSBkZXNjcmliaW5nIHRoZSBpbnN0YWxsYXRpb24uCisKKyAgICAgICAgbGluZXMgPSBbXQorICAgICAgICBtZXRhZGF0YSA9IHNlbGYuZGlzdHJpYnV0aW9uLm1ldGFkYXRhCisKKyAgICAgICAgIyBXcml0ZSB0aGUgW21ldGFkYXRhXSBzZWN0aW9uLgorICAgICAgICBsaW5lcy5hcHBlbmQoIlttZXRhZGF0YV0iKQorCisgICAgICAgICMgJ2luZm8nIHdpbGwgYmUgZGlzcGxheWVkIGluIHRoZSBpbnN0YWxsZXIncyBkaWFsb2cgYm94LAorICAgICAgICAjIGRlc2NyaWJpbmcgdGhlIGl0ZW1zIHRvIGJlIGluc3RhbGxlZC4KKyAgICAgICAgaW5mbyA9IChtZXRhZGF0YS5sb25nX2Rlc2NyaXB0aW9uIG9yICcnKSArICdcbicKKworICAgICAgICAjIEVzY2FwZSBuZXdsaW5lIGNoYXJhY3RlcnMKKyAgICAgICAgZGVmIGVzY2FwZShzKToKKyAgICAgICAgICAgIHJldHVybiBzLnJlcGxhY2UoIlxuIiwgIlxcbiIpCisKKyAgICAgICAgZm9yIG5hbWUgaW4gWyJhdXRob3IiLCAiYXV0aG9yX2VtYWlsIiwgImRlc2NyaXB0aW9uIiwgIm1haW50YWluZXIiLAorICAgICAgICAgICAgICAgICAgICAgIm1haW50YWluZXJfZW1haWwiLCAibmFtZSIsICJ1cmwiLCAidmVyc2lvbiJdOgorICAgICAgICAgICAgZGF0YSA9IGdldGF0dHIobWV0YWRhdGEsIG5hbWUsICIiKQorICAgICAgICAgICAgaWYgZGF0YToKKyAgICAgICAgICAgICAgICBpbmZvID0gaW5mbyArICgiXG4gICAgJXM6ICVzIiAlIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobmFtZS5jYXBpdGFsaXplKCksIGVzY2FwZShkYXRhKSkpCisgICAgICAgICAgICAgICAgbGluZXMuYXBwZW5kKCIlcz0lcyIgJSAobmFtZSwgZXNjYXBlKGRhdGEpKSkKKworICAgICAgICAjIFRoZSBbc2V0dXBdIHNlY3Rpb24gY29udGFpbnMgZW50cmllcyBjb250cm9sbGluZworICAgICAgICAjIHRoZSBpbnN0YWxsZXIgcnVudGltZS4KKyAgICAgICAgbGluZXMuYXBwZW5kKCJcbltTZXR1cF0iKQorICAgICAgICBpZiBzZWxmLmluc3RhbGxfc2NyaXB0OgorICAgICAgICAgICAgbGluZXMuYXBwZW5kKCJpbnN0YWxsX3NjcmlwdD0lcyIgJSBzZWxmLmluc3RhbGxfc2NyaXB0KQorICAgICAgICBsaW5lcy5hcHBlbmQoImluZm89JXMiICUgZXNjYXBlKGluZm8pKQorICAgICAgICBsaW5lcy5hcHBlbmQoInRhcmdldF9jb21waWxlPSVkIiAlIChub3Qgc2VsZi5ub190YXJnZXRfY29tcGlsZSkpCisgICAgICAgIGxpbmVzLmFwcGVuZCgidGFyZ2V0X29wdGltaXplPSVkIiAlIChub3Qgc2VsZi5ub190YXJnZXRfb3B0aW1pemUpKQorICAgICAgICBpZiBzZWxmLnRhcmdldF92ZXJzaW9uOgorICAgICAgICAgICAgbGluZXMuYXBwZW5kKCJ0YXJnZXRfdmVyc2lvbj0lcyIgJSBzZWxmLnRhcmdldF92ZXJzaW9uKQorICAgICAgICBpZiBzZWxmLnVzZXJfYWNjZXNzX2NvbnRyb2w6CisgICAgICAgICAgICBsaW5lcy5hcHBlbmQoInVzZXJfYWNjZXNzX2NvbnRyb2w9JXMiICUgc2VsZi51c2VyX2FjY2Vzc19jb250cm9sKQorCisgICAgICAgIHRpdGxlID0gc2VsZi50aXRsZSBvciBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfZnVsbG5hbWUoKQorICAgICAgICBsaW5lcy5hcHBlbmQoInRpdGxlPSVzIiAlIGVzY2FwZSh0aXRsZSkpCisgICAgICAgIGltcG9ydCB0aW1lCisgICAgICAgIGltcG9ydCBwYWNrYWdpbmcKKyAgICAgICAgYnVpbGRfaW5mbyA9ICJCdWlsdCAlcyB3aXRoIHBhY2thZ2luZy0lcyIgJSBcCisgICAgICAgICAgICAgICAgICAgICAodGltZS5jdGltZSh0aW1lLnRpbWUoKSksIHBhY2thZ2luZy5fX3ZlcnNpb25fXykKKyAgICAgICAgbGluZXMuYXBwZW5kKCJidWlsZF9pbmZvPSVzIiAlIGJ1aWxkX2luZm8pCisgICAgICAgIHJldHVybiAiXG4iLmpvaW4obGluZXMpCisKKyAgICBkZWYgY3JlYXRlX2V4ZShzZWxmLCBhcmNuYW1lLCBmdWxsbmFtZSwgYml0bWFwPU5vbmUpOgorICAgICAgICBpbXBvcnQgc3RydWN0CisKKyAgICAgICAgc2VsZi5ta3BhdGgoc2VsZi5kaXN0X2RpcikKKworICAgICAgICBjZmdkYXRhID0gc2VsZi5nZXRfaW5pZGF0YSgpCisKKyAgICAgICAgaW5zdGFsbGVyX25hbWUgPSBzZWxmLmdldF9pbnN0YWxsZXJfZmlsZW5hbWUoZnVsbG5hbWUpCisgICAgICAgIGxvZ2dlci5pbmZvKCJjcmVhdGluZyAlcyIsIGluc3RhbGxlcl9uYW1lKQorCisgICAgICAgIGlmIGJpdG1hcDoKKyAgICAgICAgICAgIHdpdGggb3BlbihiaXRtYXAsICJyYiIpIGFzIGZwOgorICAgICAgICAgICAgICAgIGJpdG1hcGRhdGEgPSBmcC5yZWFkKCkKKyAgICAgICAgICAgIGJpdG1hcGxlbiA9IGxlbihiaXRtYXBkYXRhKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgYml0bWFwbGVuID0gMAorCisgICAgICAgIHdpdGggb3BlbihpbnN0YWxsZXJfbmFtZSwgIndiIikgYXMgZmlsZToKKyAgICAgICAgICAgIGZpbGUud3JpdGUoc2VsZi5nZXRfZXhlX2J5dGVzKCkpCisgICAgICAgICAgICBpZiBiaXRtYXA6CisgICAgICAgICAgICAgICAgZmlsZS53cml0ZShiaXRtYXBkYXRhKQorCisgICAgICAgICAgICAjIENvbnZlcnQgY2ZnZGF0YSBmcm9tIHVuaWNvZGUgdG8gYXNjaWksIG1iY3MgZW5jb2RlZAorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShjZmdkYXRhLCBzdHIpOgorICAgICAgICAgICAgICAgIGNmZ2RhdGEgPSBjZmdkYXRhLmVuY29kZSgibWJjcyIpCisKKyAgICAgICAgICAgICMgQXBwZW5kIHRoZSBwcmUtaW5zdGFsbCBzY3JpcHQKKyAgICAgICAgICAgIGNmZ2RhdGEgPSBjZmdkYXRhICsgYiJcMCIKKyAgICAgICAgICAgIGlmIHNlbGYucHJlX2luc3RhbGxfc2NyaXB0OgorICAgICAgICAgICAgICAgICMgV2UgbmVlZCB0byBub3JtYWxpemUgbmV3bGluZXMsIHNvIHdlIG9wZW4gaW4gdGV4dCBtb2RlIGFuZAorICAgICAgICAgICAgICAgICMgY29udmVydCBiYWNrIHRvIGJ5dGVzLiAibGF0aW4tMSIgc2ltcGx5IGF2b2lkcyBhbnkgcG9zc2libGUKKyAgICAgICAgICAgICAgICAjIGZhaWx1cmVzLgorICAgICAgICAgICAgICAgIHdpdGggb3BlbihzZWxmLnByZV9pbnN0YWxsX3NjcmlwdCwgZW5jb2Rpbmc9ImxhdGluLTEiKSBhcyBmcDoKKyAgICAgICAgICAgICAgICAgICAgc2NyaXB0X2RhdGEgPSBmcC5yZWFkKCkuZW5jb2RlKCJsYXRpbi0xIikKKyAgICAgICAgICAgICAgICBjZmdkYXRhID0gY2ZnZGF0YSArIHNjcmlwdF9kYXRhICsgYiJcblwwIgorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAjIGVtcHR5IHByZS1pbnN0YWxsIHNjcmlwdAorICAgICAgICAgICAgICAgIGNmZ2RhdGEgPSBjZmdkYXRhICsgYiJcMCIKKyAgICAgICAgICAgIGZpbGUud3JpdGUoY2ZnZGF0YSkKKworICAgICAgICAgICAgIyBUaGUgJ21hZ2ljIG51bWJlcicgMHgxMjM0NTY3QiBpcyB1c2VkIHRvIG1ha2Ugc3VyZSB0aGF0IHRoZQorICAgICAgICAgICAgIyBiaW5hcnkgbGF5b3V0IG9mICdjZmdkYXRhJyBpcyB3aGF0IHRoZSB3aW5pbnN0LmV4ZSBiaW5hcnkKKyAgICAgICAgICAgICMgZXhwZWN0cy4gIElmIHRoZSBsYXlvdXQgY2hhbmdlcywgaW5jcmVtZW50IHRoYXQgbnVtYmVyLCBtYWtlCisgICAgICAgICAgICAjIHRoZSBjb3JyZXNwb25kaW5nIGNoYW5nZXMgdG8gdGhlIHdpbmluc3QuZXhlIHNvdXJjZXMsIGFuZAorICAgICAgICAgICAgIyByZWNvbXBpbGUgdGhlbS4KKyAgICAgICAgICAgIGhlYWRlciA9IHN0cnVjdC5wYWNrKCI8aWlpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTIzNDU2N0IsICAgICAgICMgdGFnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oY2ZnZGF0YSksICAgICAjIGxlbmd0aAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYml0bWFwbGVuLCAgICAgICAgIyBudW1iZXIgb2YgYnl0ZXMgaW4gYml0bWFwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCisgICAgICAgICAgICBmaWxlLndyaXRlKGhlYWRlcikKKyAgICAgICAgICAgIHdpdGggb3BlbihhcmNuYW1lLCAicmIiKSBhcyBmcDoKKyAgICAgICAgICAgICAgICBmaWxlLndyaXRlKGZwLnJlYWQoKSkKKworICAgIGRlZiBnZXRfaW5zdGFsbGVyX2ZpbGVuYW1lKHNlbGYsIGZ1bGxuYW1lKToKKyAgICAgICAgIyBGYWN0b3JlZCBvdXQgdG8gYWxsb3cgb3ZlcnJpZGluZyBpbiBzdWJjbGFzc2VzCisgICAgICAgIGlmIHNlbGYudGFyZ2V0X3ZlcnNpb246CisgICAgICAgICAgICAjIGlmIHdlIGNyZWF0ZSBhbiBpbnN0YWxsZXIgZm9yIGEgc3BlY2lmaWMgcHl0aG9uIHZlcnNpb24sCisgICAgICAgICAgICAjIGl0J3MgYmV0dGVyIHRvIGluY2x1ZGUgdGhpcyBpbiB0aGUgbmFtZQorICAgICAgICAgICAgaW5zdGFsbGVyX25hbWUgPSBvcy5wYXRoLmpvaW4oc2VsZi5kaXN0X2RpciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlcy4lcy1weSVzLmV4ZSIgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdWxsbmFtZSwgc2VsZi5wbGF0X25hbWUsIHNlbGYudGFyZ2V0X3ZlcnNpb24pKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgaW5zdGFsbGVyX25hbWUgPSBvcy5wYXRoLmpvaW4oc2VsZi5kaXN0X2RpciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlcy4lcy5leGUiICUgKGZ1bGxuYW1lLCBzZWxmLnBsYXRfbmFtZSkpCisgICAgICAgIHJldHVybiBpbnN0YWxsZXJfbmFtZQorCisgICAgZGVmIGdldF9leGVfYnl0ZXMoc2VsZik6CisgICAgICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLm1zdmNjb21waWxlciBpbXBvcnQgZ2V0X2J1aWxkX3ZlcnNpb24KKyAgICAgICAgIyBJZiBhIHRhcmdldC12ZXJzaW9uIG90aGVyIHRoYW4gdGhlIGN1cnJlbnQgdmVyc2lvbiBoYXMgYmVlbgorICAgICAgICAjIHNwZWNpZmllZCwgdGhlbiB1c2luZyB0aGUgTVNWQyB2ZXJzaW9uIGZyb20gKnRoaXMqIGJ1aWxkIGlzIG5vIGdvb2QuCisgICAgICAgICMgV2l0aG91dCBhY3R1YWxseSBmaW5kaW5nIGFuZCBleGVjdXRpbmcgdGhlIHRhcmdldCB2ZXJzaW9uIGFuZCBwYXJzaW5nCisgICAgICAgICMgaXRzIHN5cy52ZXJzaW9uLCB3ZSBqdXN0IGhhcmQtY29kZSBvdXIga25vd2xlZGdlIG9mIG9sZCB2ZXJzaW9ucy4KKyAgICAgICAgIyBOT1RFOiBQb3NzaWJsZSBhbHRlcm5hdGl2ZSBpcyB0byBhbGxvdyAiLS10YXJnZXQtdmVyc2lvbiIgdG8KKyAgICAgICAgIyBzcGVjaWZ5IGEgUHl0aG9uIGV4ZWN1dGFibGUgcmF0aGVyIHRoYW4gYSBzaW1wbGUgdmVyc2lvbiBzdHJpbmcuCisgICAgICAgICMgV2UgY2FuIHRoZW4gZXhlY3V0ZSB0aGlzIHByb2dyYW0gdG8gb2J0YWluIGFueSBpbmZvIHdlIG5lZWQsIHN1Y2gKKyAgICAgICAgIyBhcyB0aGUgcmVhbCBzeXMudmVyc2lvbiBzdHJpbmcgZm9yIHRoZSBidWlsZC4KKyAgICAgICAgY3VyX3ZlcnNpb24gPSBnZXRfcHl0aG9uX3ZlcnNpb24oKQorICAgICAgICBpZiBzZWxmLnRhcmdldF92ZXJzaW9uIGFuZCBzZWxmLnRhcmdldF92ZXJzaW9uICE9IGN1cl92ZXJzaW9uOgorICAgICAgICAgICAgIyBJZiB0aGUgdGFyZ2V0IHZlcnNpb24gaXMgKmxhdGVyKiB0aGFuIHVzLCB0aGVuIHdlIGFzc3VtZSB0aGV5CisgICAgICAgICAgICAjIHVzZSB3aGF0IHdlIHVzZQorICAgICAgICAgICAgIyBzdHJpbmcgY29tcGFyZXMgc2VlbSB3cm9uZywgYnV0IGFyZSB3aGF0IHN5c2NvbmZpZy5weSBpdHNlbGYgdXNlcworICAgICAgICAgICAgaWYgc2VsZi50YXJnZXRfdmVyc2lvbiA+IGN1cl92ZXJzaW9uOgorICAgICAgICAgICAgICAgIGJ2ID0gZ2V0X2J1aWxkX3ZlcnNpb24oKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnRhcmdldF92ZXJzaW9uIDwgIjIuNCI6CisgICAgICAgICAgICAgICAgICAgIGJ2ID0gNi4wCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgYnYgPSA3LjEKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgICMgZm9yIGN1cnJlbnQgdmVyc2lvbiAtIHVzZSBhdXRob3JpdGF0aXZlIGNoZWNrLgorICAgICAgICAgICAgYnYgPSBnZXRfYnVpbGRfdmVyc2lvbigpCisKKyAgICAgICAgIyB3aW5pbnN0LXgueS5leGUgaXMgaW4gdGhlIHNhbWUgZGlyZWN0b3J5IGFzIHRoaXMgZmlsZQorICAgICAgICBkaXJlY3RvcnkgPSBvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pCisgICAgICAgICMgd2UgbXVzdCB1c2UgYSB3aW5pbnN0LXgueS5leGUgYnVpbHQgd2l0aCB0aGUgc2FtZSBDIGNvbXBpbGVyCisgICAgICAgICMgdXNlZCBmb3IgcHl0aG9uLiAgWFhYIFdoYXQgYWJvdXQgbWluZ3csIGJvcmxhbmQsIGFuZCBzbyBvbj8KKworICAgICAgICAjIGlmIHBsYXRfbmFtZSBzdGFydHMgd2l0aCAid2luIiBidXQgaXMgbm90ICJ3aW4zMiIKKyAgICAgICAgIyB3ZSB3YW50IHRvIHN0cmlwICJ3aW4iIGFuZCBsZWF2ZSB0aGUgcmVzdCAoZS5nLiAtYW1kNjQpCisgICAgICAgICMgZm9yIGFsbCBvdGhlciBjYXNlcywgd2UgZG9uJ3Qgd2FudCBhbnkgc3VmZml4CisgICAgICAgIGlmIHNlbGYucGxhdF9uYW1lICE9ICd3aW4zMicgYW5kIHNlbGYucGxhdF9uYW1lWzozXSA9PSAnd2luJzoKKyAgICAgICAgICAgIHNmaXggPSBzZWxmLnBsYXRfbmFtZVszOl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNmaXggPSAnJworCisgICAgICAgIGZpbGVuYW1lID0gb3MucGF0aC5qb2luKGRpcmVjdG9yeSwgIndpbmluc3QtJS4xZiVzLmV4ZSIgJSAoYnYsIHNmaXgpKQorICAgICAgICB3aXRoIG9wZW4oZmlsZW5hbWUsICJyYiIpIGFzIGZwOgorICAgICAgICAgICAgcmV0dXJuIGZwLnJlYWQoKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJlNWViOGIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYnVpbGQucHkKQEAgLTAsMCArMSwxNTEgQEAKKyIiIk1haW4gYnVpbGQgY29tbWFuZCwgd2hpY2ggY2FsbHMgdGhlIG90aGVyIGJ1aWxkXyogY29tbWFuZHMuIiIiCisKK2ltcG9ydCBzeXMKK2ltcG9ydCBvcworCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBnZXRfcGxhdGZvcm0KK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yCitmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgc2hvd19jb21waWxlcnMKKworCitjbGFzcyBidWlsZChDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gImJ1aWxkIGV2ZXJ5dGhpbmcgbmVlZGVkIHRvIGluc3RhbGwiCisKKyAgICB1c2VyX29wdGlvbnMgPSBbCisgICAgICAgICgnYnVpbGQtYmFzZT0nLCAnYicsCisgICAgICAgICAiYmFzZSBkaXJlY3RvcnkgZm9yIGJ1aWxkIGxpYnJhcnkiKSwKKyAgICAgICAgKCdidWlsZC1wdXJlbGliPScsIE5vbmUsCisgICAgICAgICAiYnVpbGQgZGlyZWN0b3J5IGZvciBwbGF0Zm9ybS1uZXV0cmFsIGRpc3RyaWJ1dGlvbnMiKSwKKyAgICAgICAgKCdidWlsZC1wbGF0bGliPScsIE5vbmUsCisgICAgICAgICAiYnVpbGQgZGlyZWN0b3J5IGZvciBwbGF0Zm9ybS1zcGVjaWZpYyBkaXN0cmlidXRpb25zIiksCisgICAgICAgICgnYnVpbGQtbGliPScsIE5vbmUsCisgICAgICAgICAiYnVpbGQgZGlyZWN0b3J5IGZvciBhbGwgZGlzdHJpYnV0aW9uIChkZWZhdWx0cyB0byBlaXRoZXIgIiArCisgICAgICAgICAiYnVpbGQtcHVyZWxpYiBvciBidWlsZC1wbGF0bGliIiksCisgICAgICAgICgnYnVpbGQtc2NyaXB0cz0nLCBOb25lLAorICAgICAgICAgImJ1aWxkIGRpcmVjdG9yeSBmb3Igc2NyaXB0cyIpLAorICAgICAgICAoJ2J1aWxkLXRlbXA9JywgJ3QnLAorICAgICAgICAgInRlbXBvcmFyeSBidWlsZCBkaXJlY3RvcnkiKSwKKyAgICAgICAgKCdwbGF0LW5hbWU9JywgJ3AnLAorICAgICAgICAgInBsYXRmb3JtIG5hbWUgdG8gYnVpbGQgZm9yLCBpZiBzdXBwb3J0ZWQgIgorICAgICAgICAgIihkZWZhdWx0OiAlcykiICUgZ2V0X3BsYXRmb3JtKCkpLAorICAgICAgICAoJ2NvbXBpbGVyPScsICdjJywKKyAgICAgICAgICJzcGVjaWZ5IHRoZSBjb21waWxlciB0eXBlIiksCisgICAgICAgICgnZGVidWcnLCAnZycsCisgICAgICAgICAiY29tcGlsZSBleHRlbnNpb25zIGFuZCBsaWJyYXJpZXMgd2l0aCBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24iKSwKKyAgICAgICAgKCdmb3JjZScsICdmJywKKyAgICAgICAgICJmb3JjaWJseSBidWlsZCBldmVyeXRoaW5nIChpZ25vcmUgZmlsZSB0aW1lc3RhbXBzKSIpLAorICAgICAgICAoJ2V4ZWN1dGFibGU9JywgJ2UnLAorICAgICAgICAgInNwZWNpZnkgZmluYWwgZGVzdGluYXRpb24gaW50ZXJwcmV0ZXIgcGF0aCAoYnVpbGQucHkpIiksCisgICAgICAgICgndXNlLTJ0bzMnLCBOb25lLAorICAgICAgICAgInVzZSAydG8zIHRvIG1ha2Ugc291cmNlIHB5dGhvbiAzLnggY29tcGF0aWJsZSIpLAorICAgICAgICAoJ2NvbnZlcnQtMnRvMy1kb2N0ZXN0cycsIE5vbmUsCisgICAgICAgICAidXNlIDJ0bzMgdG8gY29udmVydCBkb2N0ZXN0cyBpbiBzZXBhcmF0ZSB0ZXh0IGZpbGVzIiksCisgICAgICAgICgndXNlLTJ0bzMtZml4ZXJzJywgTm9uZSwKKyAgICAgICAgICJsaXN0IGFkZGl0aW9uYWwgZml4ZXJzIG9wdGVkIGZvciBkdXJpbmcgMnRvMyBjb252ZXJzaW9uIiksCisgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsnZGVidWcnLCAnZm9yY2UnXQorCisgICAgaGVscF9vcHRpb25zID0gWworICAgICAgICAoJ2hlbHAtY29tcGlsZXInLCBOb25lLAorICAgICAgICAgImxpc3QgYXZhaWxhYmxlIGNvbXBpbGVycyIsIHNob3dfY29tcGlsZXJzKSwKKyAgICAgICAgXQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5idWlsZF9iYXNlID0gJ2J1aWxkJworICAgICAgICAjIHRoZXNlIGFyZSBkZWNpZGVkIG9ubHkgYWZ0ZXIgJ2J1aWxkX2Jhc2UnIGhhcyBpdHMgZmluYWwgdmFsdWUKKyAgICAgICAgIyAodW5sZXNzIG92ZXJyaWRkZW4gYnkgdGhlIHVzZXIgb3IgY2xpZW50KQorICAgICAgICBzZWxmLmJ1aWxkX3B1cmVsaWIgPSBOb25lCisgICAgICAgIHNlbGYuYnVpbGRfcGxhdGxpYiA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF9saWIgPSBOb25lCisgICAgICAgIHNlbGYuYnVpbGRfdGVtcCA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF9zY3JpcHRzID0gTm9uZQorICAgICAgICBzZWxmLmNvbXBpbGVyID0gTm9uZQorICAgICAgICBzZWxmLnBsYXRfbmFtZSA9IE5vbmUKKyAgICAgICAgc2VsZi5kZWJ1ZyA9IE5vbmUKKyAgICAgICAgc2VsZi5mb3JjZSA9IEZhbHNlCisgICAgICAgIHNlbGYuZXhlY3V0YWJsZSA9IE5vbmUKKyAgICAgICAgc2VsZi51c2VfMnRvMyA9IEZhbHNlCisgICAgICAgIHNlbGYuY29udmVydF8ydG8zX2RvY3Rlc3RzID0gTm9uZQorICAgICAgICBzZWxmLnVzZV8ydG8zX2ZpeGVycyA9IE5vbmUKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBpZiBzZWxmLnBsYXRfbmFtZSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5wbGF0X25hbWUgPSBnZXRfcGxhdGZvcm0oKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBwbGF0LW5hbWUgb25seSBzdXBwb3J0ZWQgZm9yIHdpbmRvd3MgKG90aGVyIHBsYXRmb3JtcyBhcmUKKyAgICAgICAgICAgICMgc3VwcG9ydGVkIHZpYSAuL2NvbmZpZ3VyZSBmbGFncywgaWYgYXQgYWxsKS4gIEF2b2lkIG1pc2xlYWRpbmcKKyAgICAgICAgICAgICMgb3RoZXIgcGxhdGZvcm1zLgorICAgICAgICAgICAgaWYgb3MubmFtZSAhPSAnbnQnOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICItLXBsYXQtbmFtZSBvbmx5IHN1cHBvcnRlZCBvbiBXaW5kb3dzICh0cnkgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2luZyAnLi9jb25maWd1cmUgLS1oZWxwJyBvbiB5b3VyIHBsYXRmb3JtKSIpCisKKyAgICAgICAgcGxhdF9zcGVjaWZpZXIgPSAiLiVzLSVzIiAlIChzZWxmLnBsYXRfbmFtZSwgc3lzLnZlcnNpb25bMDozXSkKKworICAgICAgICAjIE1ha2UgaXQgc28gUHl0aG9uIDIueCBhbmQgUHl0aG9uIDIueCB3aXRoIC0td2l0aC1weWRlYnVnIGRvbid0CisgICAgICAgICMgc2hhcmUgdGhlIHNhbWUgYnVpbGQgZGlyZWN0b3JpZXMuIERvaW5nIHNvIGNvbmZ1c2VzIHRoZSBidWlsZAorICAgICAgICAjIHByb2Nlc3MgZm9yIEMgbW9kdWxlcworICAgICAgICBpZiBoYXNhdHRyKHN5cywgJ2dldHRvdGFscmVmY291bnQnKToKKyAgICAgICAgICAgIHBsYXRfc3BlY2lmaWVyICs9ICctcHlkZWJ1ZycKKworICAgICAgICAjICdidWlsZF9wdXJlbGliJyBhbmQgJ2J1aWxkX3BsYXRsaWInIGp1c3QgZGVmYXVsdCB0byAnbGliJyBhbmQKKyAgICAgICAgIyAnbGliLjxwbGF0PicgdW5kZXIgdGhlIGJhc2UgYnVpbGQgZGlyZWN0b3J5LiAgV2Ugb25seSB1c2Ugb25lIG9mCisgICAgICAgICMgdGhlbSBmb3IgYSBnaXZlbiBkaXN0cmlidXRpb24sIHRob3VnaCAtLQorICAgICAgICBpZiBzZWxmLmJ1aWxkX3B1cmVsaWIgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuYnVpbGRfcHVyZWxpYiA9IG9zLnBhdGguam9pbihzZWxmLmJ1aWxkX2Jhc2UsICdsaWInKQorICAgICAgICBpZiBzZWxmLmJ1aWxkX3BsYXRsaWIgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuYnVpbGRfcGxhdGxpYiA9IG9zLnBhdGguam9pbihzZWxmLmJ1aWxkX2Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xpYicgKyBwbGF0X3NwZWNpZmllcikKKworICAgICAgICAjICdidWlsZF9saWInIGlzIHRoZSBhY3R1YWwgZGlyZWN0b3J5IHRoYXQgd2Ugd2lsbCB1c2UgZm9yIHRoaXMKKyAgICAgICAgIyBwYXJ0aWN1bGFyIG1vZHVsZSBkaXN0cmlidXRpb24gLS0gaWYgdXNlciBkaWRuJ3Qgc3VwcGx5IGl0LCBwaWNrCisgICAgICAgICMgb25lIG9mICdidWlsZF9wdXJlbGliJyBvciAnYnVpbGRfcGxhdGxpYicuCisgICAgICAgIGlmIHNlbGYuYnVpbGRfbGliIGlzIE5vbmU6CisgICAgICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5leHRfbW9kdWxlczoKKyAgICAgICAgICAgICAgICBzZWxmLmJ1aWxkX2xpYiA9IHNlbGYuYnVpbGRfcGxhdGxpYgorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmJ1aWxkX2xpYiA9IHNlbGYuYnVpbGRfcHVyZWxpYgorCisgICAgICAgICMgJ2J1aWxkX3RlbXAnIC0tIHRlbXBvcmFyeSBkaXJlY3RvcnkgZm9yIGNvbXBpbGVyIHR1cmRzLAorICAgICAgICAjICJidWlsZC90ZW1wLjxwbGF0PiIKKyAgICAgICAgaWYgc2VsZi5idWlsZF90ZW1wIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmJ1aWxkX3RlbXAgPSBvcy5wYXRoLmpvaW4oc2VsZi5idWlsZF9iYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0ZW1wJyArIHBsYXRfc3BlY2lmaWVyKQorICAgICAgICBpZiBzZWxmLmJ1aWxkX3NjcmlwdHMgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuYnVpbGRfc2NyaXB0cyA9IG9zLnBhdGguam9pbihzZWxmLmJ1aWxkX2Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NjcmlwdHMtJyArIHN5cy52ZXJzaW9uWzA6M10pCisKKyAgICAgICAgaWYgc2VsZi5leGVjdXRhYmxlIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmV4ZWN1dGFibGUgPSBvcy5wYXRoLm5vcm1wYXRoKHN5cy5leGVjdXRhYmxlKQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgIyBSdW4gYWxsIHJlbGV2YW50IHN1Yi1jb21tYW5kcy4gIFRoaXMgd2lsbCBiZSBzb21lIHN1YnNldCBvZjoKKyAgICAgICAgIyAgLSBidWlsZF9weSAgICAgIC0gcHVyZSBQeXRob24gbW9kdWxlcworICAgICAgICAjICAtIGJ1aWxkX2NsaWIgICAgLSBzdGFuZGFsb25lIEMgbGlicmFyaWVzCisgICAgICAgICMgIC0gYnVpbGRfZXh0ICAgICAtIFB5dGhvbiBleHRlbnNpb24gbW9kdWxlcworICAgICAgICAjICAtIGJ1aWxkX3NjcmlwdHMgLSBQeXRob24gc2NyaXB0cworICAgICAgICBmb3IgY21kX25hbWUgaW4gc2VsZi5nZXRfc3ViX2NvbW1hbmRzKCk6CisgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKGNtZF9uYW1lKQorCisgICAgIyAtLSBQcmVkaWNhdGVzIGZvciB0aGUgc3ViLWNvbW1hbmQgbGlzdCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBoYXNfcHVyZV9tb2R1bGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0cmlidXRpb24uaGFzX3B1cmVfbW9kdWxlcygpCisKKyAgICBkZWYgaGFzX2NfbGlicmFyaWVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0cmlidXRpb24uaGFzX2NfbGlicmFyaWVzKCkKKworICAgIGRlZiBoYXNfZXh0X21vZHVsZXMoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKQorCisgICAgZGVmIGhhc19zY3JpcHRzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0cmlidXRpb24uaGFzX3NjcmlwdHMoKQorCisgICAgc3ViX2NvbW1hbmRzID0gWygnYnVpbGRfcHknLCBoYXNfcHVyZV9tb2R1bGVzKSwKKyAgICAgICAgICAgICAgICAgICAgKCdidWlsZF9jbGliJywgaGFzX2NfbGlicmFyaWVzKSwKKyAgICAgICAgICAgICAgICAgICAgKCdidWlsZF9leHQnLCBoYXNfZXh0X21vZHVsZXMpLAorICAgICAgICAgICAgICAgICAgICAoJ2J1aWxkX3NjcmlwdHMnLCBoYXNfc2NyaXB0cyksCisgICAgICAgICAgICAgICAgICAgXQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX2NsaWIucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYnVpbGRfY2xpYi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41Mzg4Y2NkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX2NsaWIucHkKQEAgLTAsMCArMSwxOTcgQEAKKyIiIkJ1aWxkIEMvQysrIGxpYnJhcmllcy4KKworVGhpcyBjb21tYW5kIGlzIHVzZWZ1bCB0byBidWlsZCBsaWJyYXJpZXMgdGhhdCBhcmUgaW5jbHVkZWQgaW4gdGhlCitkaXN0cmlidXRpb24gYW5kIG5lZWRlZCBieSBleHRlbnNpb24gbW9kdWxlcy4KKyIiIgorCisjIFhYWCB0aGlzIG1vZHVsZSBoYXMgKmxvdHMqIG9mIGNvZGUgcmlwcGVkLW9mZiBxdWl0ZSB0cmFuc3BhcmVudGx5IGZyb20KKyMgYnVpbGRfZXh0LnB5IC0tIG5vdCBzdXJwcmlzaW5nbHkgcmVhbGx5LCBhcyB0aGUgd29yayByZXF1aXJlZCB0byBidWlsZAorIyBhIHN0YXRpYyBsaWJyYXJ5IGZyb20gYSBjb2xsZWN0aW9uIG9mIEMgc291cmNlIGZpbGVzIGlzIG5vdCByZWFsbHkgYWxsCisjIHRoYXQgZGlmZmVyZW50IGZyb20gd2hhdCdzIHJlcXVpcmVkIHRvIGJ1aWxkIGEgc2hhcmVkIG9iamVjdCBmaWxlIGZyb20KKyMgYSBjb2xsZWN0aW9uIG9mIEMgc291cmNlIGZpbGVzLiAgTmV2ZXJ0aGVsZXNzLCBJIGhhdmVuJ3QgZG9uZSB0aGUKKyMgbmVjZXNzYXJ5IHJlZmFjdG9yaW5nIHRvIGFjY291bnQgZm9yIHRoZSBvdmVybGFwIGluIGNvZGUgYmV0d2VlbiB0aGUKKyMgdHdvIG1vZHVsZXMsIG1haW5seSBiZWNhdXNlIGEgbnVtYmVyIG9mIHN1YnRsZSBkZXRhaWxzIGNoYW5nZWQgaW4gdGhlCisjIGN1dCAnbiBwYXN0ZS4gIFNpZ2guCisKK2ltcG9ydCBvcworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nU2V0dXBFcnJvcgorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IGN1c3RvbWl6ZV9jb21waWxlciwgbmV3X2NvbXBpbGVyCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCisKKworZGVmIHNob3dfY29tcGlsZXJzKCk6CisgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IHNob3dfY29tcGlsZXJzCisgICAgc2hvd19jb21waWxlcnMoKQorCisKK2NsYXNzIGJ1aWxkX2NsaWIoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJidWlsZCBDL0MrKyBsaWJyYXJpZXMgdXNlZCBieSBleHRlbnNpb24gbW9kdWxlcyIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdidWlsZC1jbGliPScsICdiJywKKyAgICAgICAgICJkaXJlY3RvcnkgdG8gYnVpbGQgQy9DKysgbGlicmFyaWVzIHRvIiksCisgICAgICAgICgnYnVpbGQtdGVtcD0nLCAndCcsCisgICAgICAgICAiZGlyZWN0b3J5IHRvIHB1dCB0ZW1wb3JhcnkgYnVpbGQgYnktcHJvZHVjdHMiKSwKKyAgICAgICAgKCdkZWJ1ZycsICdnJywKKyAgICAgICAgICJjb21waWxlIHdpdGggZGVidWdnaW5nIGluZm9ybWF0aW9uIiksCisgICAgICAgICgnZm9yY2UnLCAnZicsCisgICAgICAgICAiZm9yY2libHkgYnVpbGQgZXZlcnl0aGluZyAoaWdub3JlIGZpbGUgdGltZXN0YW1wcykiKSwKKyAgICAgICAgKCdjb21waWxlcj0nLCAnYycsCisgICAgICAgICAic3BlY2lmeSB0aGUgY29tcGlsZXIgdHlwZSIpLAorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2RlYnVnJywgJ2ZvcmNlJ10KKworICAgIGhlbHBfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdoZWxwLWNvbXBpbGVyJywgTm9uZSwKKyAgICAgICAgICJsaXN0IGF2YWlsYWJsZSBjb21waWxlcnMiLCBzaG93X2NvbXBpbGVycyksCisgICAgICAgIF0KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuYnVpbGRfY2xpYiA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF90ZW1wID0gTm9uZQorCisgICAgICAgICMgTGlzdCBvZiBsaWJyYXJpZXMgdG8gYnVpbGQKKyAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBOb25lCisKKyAgICAgICAgIyBDb21waWxhdGlvbiBvcHRpb25zIGZvciBhbGwgbGlicmFyaWVzCisgICAgICAgIHNlbGYuaW5jbHVkZV9kaXJzID0gTm9uZQorICAgICAgICBzZWxmLmRlZmluZSA9IE5vbmUKKyAgICAgICAgc2VsZi51bmRlZiA9IE5vbmUKKyAgICAgICAgc2VsZi5kZWJ1ZyA9IE5vbmUKKyAgICAgICAgc2VsZi5mb3JjZSA9IEZhbHNlCisgICAgICAgIHNlbGYuY29tcGlsZXIgPSBOb25lCisKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICAjIFRoaXMgbWlnaHQgYmUgY29uZnVzaW5nOiBib3RoIGJ1aWxkLWNsaWIgYW5kIGJ1aWxkLXRlbXAgZGVmYXVsdAorICAgICAgICAjIHRvIGJ1aWxkLXRlbXAgYXMgZGVmaW5lZCBieSB0aGUgImJ1aWxkIiBjb21tYW5kLiAgVGhpcyBpcyBiZWNhdXNlCisgICAgICAgICMgSSB0aGluayB0aGF0IEMgbGlicmFyaWVzIGFyZSByZWFsbHkganVzdCB0ZW1wb3JhcnkgYnVpbGQKKyAgICAgICAgIyBieS1wcm9kdWN0cywgYXQgbGVhc3QgZnJvbSB0aGUgcG9pbnQgb2YgdmlldyBvZiBidWlsZGluZyBQeXRob24KKyAgICAgICAgIyBleHRlbnNpb25zIC0tIGJ1dCBJIHdhbnQgdG8ga2VlcCBteSBvcHRpb25zIG9wZW4uCisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdidWlsZCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnYnVpbGRfdGVtcCcsICdidWlsZF9jbGliJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnYnVpbGRfdGVtcCcsICdidWlsZF90ZW1wJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjb21waWxlcicsICdkZWJ1ZycsICdmb3JjZScpCisKKyAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5saWJyYXJpZXMKKyAgICAgICAgaWYgc2VsZi5saWJyYXJpZXM6CisgICAgICAgICAgICBzZWxmLmNoZWNrX2xpYnJhcnlfbGlzdChzZWxmLmxpYnJhcmllcykKKworICAgICAgICBpZiBzZWxmLmluY2x1ZGVfZGlycyBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5pbmNsdWRlX2RpcnMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5pbmNsdWRlX2RpcnMgb3IgW10KKyAgICAgICAgaWYgaXNpbnN0YW5jZShzZWxmLmluY2x1ZGVfZGlycywgc3RyKToKKyAgICAgICAgICAgIHNlbGYuaW5jbHVkZV9kaXJzID0gc2VsZi5pbmNsdWRlX2RpcnMuc3BsaXQob3MucGF0aHNlcCkKKworICAgICAgICAjIFhYWCBzYW1lIGFzIGZvciBidWlsZF9leHQgLS0gd2hhdCBhYm91dCAnc2VsZi5kZWZpbmUnIGFuZAorICAgICAgICAjICdzZWxmLnVuZGVmJyA/CisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5saWJyYXJpZXM6CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICAjIFllY2ggLS0gdGhpcyBpcyBjdXQgJ24gcGFzdGVkIGZyb20gYnVpbGRfZXh0LnB5IQorICAgICAgICBzZWxmLmNvbXBpbGVyID0gbmV3X2NvbXBpbGVyKGNvbXBpbGVyPXNlbGYuY29tcGlsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJ5X3J1bj1zZWxmLmRyeV9ydW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2U9c2VsZi5mb3JjZSkKKyAgICAgICAgY3VzdG9taXplX2NvbXBpbGVyKHNlbGYuY29tcGlsZXIpCisKKyAgICAgICAgaWYgc2VsZi5pbmNsdWRlX2RpcnMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVyLnNldF9pbmNsdWRlX2RpcnMoc2VsZi5pbmNsdWRlX2RpcnMpCisgICAgICAgIGlmIHNlbGYuZGVmaW5lIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgIyAnZGVmaW5lJyBvcHRpb24gaXMgYSBsaXN0IG9mIChuYW1lLHZhbHVlKSB0dXBsZXMKKyAgICAgICAgICAgIGZvciBuYW1lLCB2YWx1ZSBpbiBzZWxmLmRlZmluZToKKyAgICAgICAgICAgICAgICBzZWxmLmNvbXBpbGVyLmRlZmluZV9tYWNybyhuYW1lLCB2YWx1ZSkKKyAgICAgICAgaWYgc2VsZi51bmRlZiBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIGZvciBtYWNybyBpbiBzZWxmLnVuZGVmOgorICAgICAgICAgICAgICAgIHNlbGYuY29tcGlsZXIudW5kZWZpbmVfbWFjcm8obWFjcm8pCisKKyAgICAgICAgc2VsZi5idWlsZF9saWJyYXJpZXMoc2VsZi5saWJyYXJpZXMpCisKKworICAgIGRlZiBjaGVja19saWJyYXJ5X2xpc3Qoc2VsZiwgbGlicmFyaWVzKToKKyAgICAgICAgIiIiRW5zdXJlIHRoYXQgdGhlIGxpc3Qgb2YgbGlicmFyaWVzIGlzIHZhbGlkLgorCisgICAgICAgIGBsaWJyYXJ5YCBpcyBwcmVzdW1hYmx5IHByb3ZpZGVkIGFzIGEgY29tbWFuZCBvcHRpb24gJ2xpYnJhcmllcycuCisgICAgICAgIFRoaXMgbWV0aG9kIGNoZWNrcyB0aGF0IGl0IGlzIGEgbGlzdCBvZiAyLXR1cGxlcywgd2hlcmUgdGhlIHR1cGxlcworICAgICAgICBhcmUgKGxpYnJhcnlfbmFtZSwgYnVpbGRfaW5mb19kaWN0KS4KKworICAgICAgICBSYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yIGlmIHRoZSBzdHJ1Y3R1cmUgaXMgaW52YWxpZCBhbnl3aGVyZTsKKyAgICAgICAganVzdCByZXR1cm5zIG90aGVyd2lzZS4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKGxpYnJhcmllcywgbGlzdCk6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yKCInbGlicmFyaWVzJyBvcHRpb24gbXVzdCBiZSBhIGxpc3Qgb2YgdHVwbGVzIikKKworICAgICAgICBmb3IgbGliIGluIGxpYnJhcmllczoKKyAgICAgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKGxpYiwgdHVwbGUpIGFuZCBsZW4obGliKSAhPSAyOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1NldHVwRXJyb3IoImVhY2ggZWxlbWVudCBvZiAnbGlicmFyaWVzJyBtdXN0IGEgMi10dXBsZSIpCisKKyAgICAgICAgICAgIG5hbWUsIGJ1aWxkX2luZm8gPSBsaWIKKworICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UobmFtZSwgc3RyKToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yKCJmaXJzdCBlbGVtZW50IG9mIGVhY2ggdHVwbGUgaW4gJ2xpYnJhcmllcycgIiArIFwKKyAgICAgICAgICAgICAgICAgICAgICAibXVzdCBiZSBhIHN0cmluZyAodGhlIGxpYnJhcnkgbmFtZSkiKQorICAgICAgICAgICAgaWYgJy8nIGluIG5hbWUgb3IgKG9zLnNlcCAhPSAnLycgYW5kIG9zLnNlcCBpbiBuYW1lKToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yKCgiYmFkIGxpYnJhcnkgbmFtZSAnJXMnOiAiICsKKyAgICAgICAgICAgICAgICAgICAgICAgIm1heSBub3QgY29udGFpbiBkaXJlY3Rvcnkgc2VwYXJhdG9ycyIpICUgXAorICAgICAgICAgICAgICAgICAgICAgIGxpYlswXSkKKworICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoYnVpbGRfaW5mbywgZGljdCk6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nU2V0dXBFcnJvcigic2Vjb25kIGVsZW1lbnQgb2YgZWFjaCB0dXBsZSBpbiAnbGlicmFyaWVzJyAiICsgXAorICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIGEgZGljdGlvbmFyeSAoYnVpbGQgaW5mbykiKQorCisgICAgZGVmIGdldF9saWJyYXJ5X25hbWVzKHNlbGYpOgorICAgICAgICAjIEFzc3VtZSB0aGUgbGlicmFyeSBsaXN0IGlzIHZhbGlkIC0tICdjaGVja19saWJyYXJ5X2xpc3QoKScgaXMKKyAgICAgICAgIyBjYWxsZWQgZnJvbSAnZmluYWxpemVfb3B0aW9ucygpJywgc28gaXQgc2hvdWxkIGJlIQorICAgICAgICBpZiBub3Qgc2VsZi5saWJyYXJpZXM6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorCisgICAgICAgIGxpYl9uYW1lcyA9IFtdCisgICAgICAgIGZvciBsaWJfbmFtZSwgYnVpbGRfaW5mbyBpbiBzZWxmLmxpYnJhcmllczoKKyAgICAgICAgICAgIGxpYl9uYW1lcy5hcHBlbmQobGliX25hbWUpCisgICAgICAgIHJldHVybiBsaWJfbmFtZXMKKworCisgICAgZGVmIGdldF9zb3VyY2VfZmlsZXMoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfbGlicmFyeV9saXN0KHNlbGYubGlicmFyaWVzKQorICAgICAgICBmaWxlbmFtZXMgPSBbXQorICAgICAgICBmb3IgbGliX25hbWUsIGJ1aWxkX2luZm8gaW4gc2VsZi5saWJyYXJpZXM6CisgICAgICAgICAgICBzb3VyY2VzID0gYnVpbGRfaW5mby5nZXQoJ3NvdXJjZXMnKQorICAgICAgICAgICAgaWYgc291cmNlcyBpcyBOb25lIG9yIG5vdCBpc2luc3RhbmNlKHNvdXJjZXMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1NldHVwRXJyb3IoKCJpbiAnbGlicmFyaWVzJyBvcHRpb24gKGxpYnJhcnkgJyVzJyksICIKKyAgICAgICAgICAgICAgICAgICAgICAgIidzb3VyY2VzJyBtdXN0IGJlIHByZXNlbnQgYW5kIG11c3QgYmUgIgorICAgICAgICAgICAgICAgICAgICAgICAiYSBsaXN0IG9mIHNvdXJjZSBmaWxlbmFtZXMiKSAlIGxpYl9uYW1lKQorCisgICAgICAgICAgICBmaWxlbmFtZXMuZXh0ZW5kKHNvdXJjZXMpCisgICAgICAgIHJldHVybiBmaWxlbmFtZXMKKworICAgIGRlZiBidWlsZF9saWJyYXJpZXMoc2VsZiwgbGlicmFyaWVzKToKKyAgICAgICAgZm9yIGxpYl9uYW1lLCBidWlsZF9pbmZvIGluIGxpYnJhcmllczoKKyAgICAgICAgICAgIHNvdXJjZXMgPSBidWlsZF9pbmZvLmdldCgnc291cmNlcycpCisgICAgICAgICAgICBpZiBzb3VyY2VzIGlzIE5vbmUgb3Igbm90IGlzaW5zdGFuY2Uoc291cmNlcywgKGxpc3QsIHR1cGxlKSk6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nU2V0dXBFcnJvcigoImluICdsaWJyYXJpZXMnIG9wdGlvbiAobGlicmFyeSAnJXMnKSwgIiArCisgICAgICAgICAgICAgICAgICAgICAgICInc291cmNlcycgbXVzdCBiZSBwcmVzZW50IGFuZCBtdXN0IGJlICIgKworICAgICAgICAgICAgICAgICAgICAgICAiYSBsaXN0IG9mIHNvdXJjZSBmaWxlbmFtZXMiKSAlIGxpYl9uYW1lKQorICAgICAgICAgICAgc291cmNlcyA9IGxpc3Qoc291cmNlcykKKworICAgICAgICAgICAgbG9nZ2VyLmluZm8oImJ1aWxkaW5nICclcycgbGlicmFyeSIsIGxpYl9uYW1lKQorCisgICAgICAgICAgICAjIEZpcnN0LCBjb21waWxlIHRoZSBzb3VyY2UgY29kZSB0byBvYmplY3QgZmlsZXMgaW4gdGhlIGxpYnJhcnkKKyAgICAgICAgICAgICMgZGlyZWN0b3J5LiAgKFRoaXMgc2hvdWxkIHByb2JhYmx5IGNoYW5nZSB0byBwdXR0aW5nIG9iamVjdAorICAgICAgICAgICAgIyBmaWxlcyBpbiBhIHRlbXBvcmFyeSBidWlsZCBkaXJlY3RvcnkuKQorICAgICAgICAgICAgbWFjcm9zID0gYnVpbGRfaW5mby5nZXQoJ21hY3JvcycpCisgICAgICAgICAgICBpbmNsdWRlX2RpcnMgPSBidWlsZF9pbmZvLmdldCgnaW5jbHVkZV9kaXJzJykKKyAgICAgICAgICAgIG9iamVjdHMgPSBzZWxmLmNvbXBpbGVyLmNvbXBpbGUoc291cmNlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2Rpcj1zZWxmLmJ1aWxkX3RlbXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hY3Jvcz1tYWNyb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVfZGlycz1pbmNsdWRlX2RpcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnPXNlbGYuZGVidWcpCisKKyAgICAgICAgICAgICMgTm93ICJsaW5rIiB0aGUgb2JqZWN0IGZpbGVzIHRvZ2V0aGVyIGludG8gYSBzdGF0aWMgbGlicmFyeS4KKyAgICAgICAgICAgICMgKE9uIFVuaXggYXQgbGVhc3QsIHRoaXMgaXNuJ3QgcmVhbGx5IGxpbmtpbmcgLS0gaXQganVzdAorICAgICAgICAgICAgIyBidWlsZHMgYW4gYXJjaGl2ZS4gIFdoYXRldmVyLikKKyAgICAgICAgICAgIHNlbGYuY29tcGlsZXIuY3JlYXRlX3N0YXRpY19saWIob2JqZWN0cywgbGliX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dF9kaXI9c2VsZi5idWlsZF9jbGliLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zz1zZWxmLmRlYnVnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX2V4dC5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9idWlsZF9leHQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGYzNzViNgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9idWlsZF9leHQucHkKQEAgLTAsMCArMSw2NDIgQEAKKyIiIkJ1aWxkIGV4dGVuc2lvbiBtb2R1bGVzLiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHN5cworaW1wb3J0IHNpdGUKK2ltcG9ydCBzeXNjb25maWcKKworZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgZ2V0X3BsYXRmb3JtCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCAoQ0NvbXBpbGVyRXJyb3IsIENvbXBpbGVFcnJvciwgUGFja2FnaW5nRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFja2FnaW5nUGxhdGZvcm1FcnJvciwgUGFja2FnaW5nU2V0dXBFcnJvcikKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCBjdXN0b21pemVfY29tcGlsZXIsIHNob3dfY29tcGlsZXJzCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBuZXdlcl9ncm91cAorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIuZXh0ZW5zaW9uIGltcG9ydCBFeHRlbnNpb24KK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKKworaWYgb3MubmFtZSA9PSAnbnQnOgorICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLm1zdmNjb21waWxlciBpbXBvcnQgZ2V0X2J1aWxkX3ZlcnNpb24KKyAgICBNU1ZDX1ZFUlNJT04gPSBpbnQoZ2V0X2J1aWxkX3ZlcnNpb24oKSkKKworIyBBbiBleHRlbnNpb24gbmFtZSBpcyBqdXN0IGEgZG90LXNlcGFyYXRlZCBsaXN0IG9mIFB5dGhvbiBOQU1FcyAoaWUuCisjIHRoZSBzYW1lIGFzIGEgZnVsbHktcXVhbGlmaWVkIG1vZHVsZSBuYW1lKS4KK2V4dGVuc2lvbl9uYW1lX3JlID0gcmUuY29tcGlsZSBcCisgICAgKHInXlthLXpBLVpfXVthLXpBLVpfMC05XSooXC5bYS16QS1aX11bYS16QS1aXzAtOV0qKSokJykKKworCitjbGFzcyBidWlsZF9leHQoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJidWlsZCBDL0MrKyBleHRlbnNpb24gbW9kdWxlcyAoY29tcGlsZS9saW5rIHRvIGJ1aWxkIGRpcmVjdG9yeSkiCisKKyAgICAjIFhYWCB0aG91Z2h0cyBvbiBob3cgdG8gZGVhbCB3aXRoIGNvbXBsZXggY29tbWFuZC1saW5lIG9wdGlvbnMgbGlrZQorICAgICMgdGhlc2UsIGkuZS4gaG93IHRvIG1ha2UgaXQgc28gZmFuY3lfZ2V0b3B0IGNhbiBzdWNrIHRoZW0gb2ZmIHRoZQorICAgICMgY29tbWFuZCBsaW5lIGFuZCB0dXJuIHRoZW0gaW50byB0aGUgYXBwcm9wcmlhdGUKKyAgICAjIGxpc3RzIG9mIHR1cGxlcyBvZiB3aGF0LWhhdmUteW91LgorICAgICMgICAtIGVhY2ggY29tbWFuZCBuZWVkcyBhIGNhbGxiYWNrIHRvIHByb2Nlc3MgaXRzIGNvbW1hbmQtbGluZSBvcHRpb25zCisgICAgIyAgIC0gQ29tbWFuZC5fX2luaXRfXygpIG5lZWRzIGFjY2VzcyB0byBpdHMgc2hhcmUgb2YgdGhlIHdob2xlCisgICAgIyAgICAgY29tbWFuZCBsaW5lIChtdXN0IHVsdGltYXRlbHkgY29tZSBmcm9tCisgICAgIyAgICAgRGlzdHJpYnV0aW9uLnBhcnNlX2NvbW1hbmRfbGluZSgpKQorICAgICMgICAtIGl0IHRoZW4gY2FsbHMgdGhlIGN1cnJlbnQgY29tbWFuZCBjbGFzcycgb3B0aW9uLXBhcnNpbmcKKyAgICAjICAgICBjYWxsYmFjayB0byBkZWFsIHdpdGggd2VpcmQgb3B0aW9ucyBsaWtlIC1ELCB3aGljaCBoYXZlIHRvCisgICAgIyAgICAgcGFyc2UgdGhlIG9wdGlvbiB0ZXh0IGFuZCBjaHVybiBvdXQgc29tZSBjdXN0b20gZGF0YQorICAgICMgICAgIHN0cnVjdHVyZQorICAgICMgICAtIHRoYXQgZGF0YSBzdHJ1Y3R1cmUgKGluIHRoaXMgY2FzZSwgYSBsaXN0IG9mIDItdHVwbGVzKQorICAgICMgICAgIHdpbGwgdGhlbiBiZSBwcmVzZW50IGluIHRoZSBjb21tYW5kIG9iamVjdCBieSB0aGUgdGltZQorICAgICMgICAgIHdlIGdldCB0byBmaW5hbGl6ZV9vcHRpb25zKCkgKGkuZS4gdGhlIGNvbnN0cnVjdG9yCisgICAgIyAgICAgdGFrZXMgY2FyZSBvZiBib3RoIGNvbW1hbmQtbGluZSBhbmQgY2xpZW50IG9wdGlvbnMKKyAgICAjICAgICBpbiBiZXR3ZWVuIGluaXRpYWxpemVfb3B0aW9ucygpIGFuZCBmaW5hbGl6ZV9vcHRpb25zKCkpCisKKyAgICBzZXBfYnkgPSAiIChzZXBhcmF0ZWQgYnkgJyVzJykiICUgb3MucGF0aHNlcAorICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdidWlsZC1saWI9JywgJ2InLAorICAgICAgICAgImRpcmVjdG9yeSBmb3IgY29tcGlsZWQgZXh0ZW5zaW9uIG1vZHVsZXMiKSwKKyAgICAgICAgKCdidWlsZC10ZW1wPScsICd0JywKKyAgICAgICAgICJkaXJlY3RvcnkgZm9yIHRlbXBvcmFyeSBmaWxlcyAoYnVpbGQgYnktcHJvZHVjdHMpIiksCisgICAgICAgICgncGxhdC1uYW1lPScsICdwJywKKyAgICAgICAgICJwbGF0Zm9ybSBuYW1lIHRvIGNyb3NzLWNvbXBpbGUgZm9yLCBpZiBzdXBwb3J0ZWQgIgorICAgICAgICAgIihkZWZhdWx0OiAlcykiICUgZ2V0X3BsYXRmb3JtKCkpLAorICAgICAgICAoJ2lucGxhY2UnLCAnaScsCisgICAgICAgICAiaWdub3JlIGJ1aWxkLWxpYiBhbmQgcHV0IGNvbXBpbGVkIGV4dGVuc2lvbnMgaW50byB0aGUgc291cmNlICIgKworICAgICAgICAgImRpcmVjdG9yeSBhbG9uZ3NpZGUgeW91ciBwdXJlIFB5dGhvbiBtb2R1bGVzIiksCisgICAgICAgICgndXNlcicsIE5vbmUsCisgICAgICAgICAiYWRkIHVzZXIgaW5jbHVkZSwgbGlicmFyeSBhbmQgcnBhdGgiKSwKKyAgICAgICAgKCdpbmNsdWRlLWRpcnM9JywgJ0knLAorICAgICAgICAgImxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciBoZWFkZXIgZmlsZXMiICsgc2VwX2J5KSwKKyAgICAgICAgKCdkZWZpbmU9JywgJ0QnLAorICAgICAgICAgIkMgcHJlcHJvY2Vzc29yIG1hY3JvcyB0byBkZWZpbmUiKSwKKyAgICAgICAgKCd1bmRlZj0nLCAnVScsCisgICAgICAgICAiQyBwcmVwcm9jZXNzb3IgbWFjcm9zIHRvIHVuZGVmaW5lIiksCisgICAgICAgICgnbGlicmFyaWVzPScsICdsJywKKyAgICAgICAgICJleHRlcm5hbCBDIGxpYnJhcmllcyB0byBsaW5rIHdpdGgiKSwKKyAgICAgICAgKCdsaWJyYXJ5LWRpcnM9JywgJ0wnLAorICAgICAgICAgImRpcmVjdG9yaWVzIHRvIHNlYXJjaCBmb3IgZXh0ZXJuYWwgQyBsaWJyYXJpZXMiICsgc2VwX2J5KSwKKyAgICAgICAgKCdycGF0aD0nLCAnUicsCisgICAgICAgICAiZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciBzaGFyZWQgQyBsaWJyYXJpZXMgYXQgcnVudGltZSIpLAorICAgICAgICAoJ2xpbmstb2JqZWN0cz0nLCAnTycsCisgICAgICAgICAiZXh0cmEgZXhwbGljaXQgbGluayBvYmplY3RzIHRvIGluY2x1ZGUgaW4gdGhlIGxpbmsiKSwKKyAgICAgICAgKCdkZWJ1ZycsICdnJywKKyAgICAgICAgICJjb21waWxlL2xpbmsgd2l0aCBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24iKSwKKyAgICAgICAgKCdmb3JjZScsICdmJywKKyAgICAgICAgICJmb3JjaWJseSBidWlsZCBldmVyeXRoaW5nIChpZ25vcmUgZmlsZSB0aW1lc3RhbXBzKSIpLAorICAgICAgICAoJ2NvbXBpbGVyPScsICdjJywKKyAgICAgICAgICJzcGVjaWZ5IHRoZSBjb21waWxlciB0eXBlIiksCisgICAgICAgICgnc3dpZy1vcHRzPScsIE5vbmUsCisgICAgICAgICAibGlzdCBvZiBTV0lHIGNvbW1hbmQtbGluZSBvcHRpb25zIiksCisgICAgICAgICgnc3dpZz0nLCBOb25lLAorICAgICAgICAgInBhdGggdG8gdGhlIFNXSUcgZXhlY3V0YWJsZSIpLAorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2lucGxhY2UnLCAnZGVidWcnLCAnZm9yY2UnLCAndXNlciddCisKKworICAgIGhlbHBfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdoZWxwLWNvbXBpbGVyJywgTm9uZSwKKyAgICAgICAgICJsaXN0IGF2YWlsYWJsZSBjb21waWxlcnMiLCBzaG93X2NvbXBpbGVycyksCisgICAgICAgIF0KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuZXh0ZW5zaW9ucyA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF9saWIgPSBOb25lCisgICAgICAgIHNlbGYucGxhdF9uYW1lID0gTm9uZQorICAgICAgICBzZWxmLmJ1aWxkX3RlbXAgPSBOb25lCisgICAgICAgIHNlbGYuaW5wbGFjZSA9IEZhbHNlCisgICAgICAgIHNlbGYucGFja2FnZSA9IE5vbmUKKworICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IE5vbmUKKyAgICAgICAgc2VsZi5kZWZpbmUgPSBOb25lCisgICAgICAgIHNlbGYudW5kZWYgPSBOb25lCisgICAgICAgIHNlbGYubGlicmFyaWVzID0gTm9uZQorICAgICAgICBzZWxmLmxpYnJhcnlfZGlycyA9IE5vbmUKKyAgICAgICAgc2VsZi5ycGF0aCA9IE5vbmUKKyAgICAgICAgc2VsZi5saW5rX29iamVjdHMgPSBOb25lCisgICAgICAgIHNlbGYuZGVidWcgPSBOb25lCisgICAgICAgIHNlbGYuZm9yY2UgPSBOb25lCisgICAgICAgIHNlbGYuY29tcGlsZXIgPSBOb25lCisgICAgICAgIHNlbGYuc3dpZyA9IE5vbmUKKyAgICAgICAgc2VsZi5zd2lnX29wdHMgPSBOb25lCisgICAgICAgIHNlbGYudXNlciA9IE5vbmUKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnYnVpbGQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYnVpbGRfbGliJywgJ2J1aWxkX3RlbXAnLCAnY29tcGlsZXInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVidWcnLCAnZm9yY2UnLCAncGxhdF9uYW1lJykKKworICAgICAgICBpZiBzZWxmLnBhY2thZ2UgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYucGFja2FnZSA9IHNlbGYuZGlzdHJpYnV0aW9uLmV4dF9wYWNrYWdlCisKKyAgICAgICAgIyBFbnN1cmUgdGhhdCB0aGUgbGlzdCBvZiBleHRlbnNpb25zIGlzIHZhbGlkLCBpLmUuIGl0IGlzIGEgbGlzdCBvZgorICAgICAgICAjIEV4dGVuc2lvbiBvYmplY3RzLgorICAgICAgICBzZWxmLmV4dGVuc2lvbnMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5leHRfbW9kdWxlcworICAgICAgICBpZiBzZWxmLmV4dGVuc2lvbnM6CisgICAgICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShzZWxmLmV4dGVuc2lvbnMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgICAgIHR5cGVfbmFtZSA9IChzZWxmLmV4dGVuc2lvbnMgaXMgTm9uZSBhbmQgJ05vbmUnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgdHlwZShzZWxmLmV4dGVuc2lvbnMpLl9fbmFtZV9fKQorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1NldHVwRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICInZXh0X21vZHVsZXMnIG11c3QgYmUgYSBzZXF1ZW5jZSBvZiBFeHRlbnNpb24gaW5zdGFuY2VzLCIKKyAgICAgICAgICAgICAgICAgICAgIiBub3QgJXMiICUgKHR5cGVfbmFtZSwpKQorICAgICAgICAgICAgZm9yIGksIGV4dCBpbiBlbnVtZXJhdGUoc2VsZi5leHRlbnNpb25zKToKKyAgICAgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGV4dCwgRXh0ZW5zaW9uKToKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUgICAgICAgICAgICAgICAgIyBPSyEgKGFzc3VtZSB0eXBlLWNoZWNraW5nIGRvbmUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBieSBFeHRlbnNpb24gY29uc3RydWN0b3IpCisgICAgICAgICAgICAgICAgdHlwZV9uYW1lID0gKGV4dCBpcyBOb25lIGFuZCAnTm9uZScgb3IgdHlwZShleHQpLl9fbmFtZV9fKQorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1NldHVwRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICInZXh0X21vZHVsZXMnIGl0ZW0gJWQgbXVzdCBiZSBhbiBFeHRlbnNpb24gaW5zdGFuY2UsIgorICAgICAgICAgICAgICAgICAgICAiIG5vdCAlcyIgJSAoaSwgdHlwZV9uYW1lKSkKKworICAgICAgICAjIE1ha2Ugc3VyZSBQeXRob24ncyBpbmNsdWRlIGRpcmVjdG9yaWVzIChmb3IgUHl0aG9uLmgsIHB5Y29uZmlnLmgsCisgICAgICAgICMgZXRjLikgYXJlIGluIHRoZSBpbmNsdWRlIHNlYXJjaCBwYXRoLgorICAgICAgICBweV9pbmNsdWRlID0gc3lzY29uZmlnLmdldF9wYXRoKCdpbmNsdWRlJykKKyAgICAgICAgcGxhdF9weV9pbmNsdWRlID0gc3lzY29uZmlnLmdldF9wYXRoKCdwbGF0aW5jbHVkZScpCisgICAgICAgIGlmIHNlbGYuaW5jbHVkZV9kaXJzIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IHNlbGYuZGlzdHJpYnV0aW9uLmluY2x1ZGVfZGlycyBvciBbXQorICAgICAgICBpZiBpc2luc3RhbmNlKHNlbGYuaW5jbHVkZV9kaXJzLCBzdHIpOgorICAgICAgICAgICAgc2VsZi5pbmNsdWRlX2RpcnMgPSBzZWxmLmluY2x1ZGVfZGlycy5zcGxpdChvcy5wYXRoc2VwKQorCisgICAgICAgICMgUHV0IHRoZSBQeXRob24gInN5c3RlbSIgaW5jbHVkZSBkaXIgYXQgdGhlIGVuZCwgc28gdGhhdAorICAgICAgICAjIGFueSBsb2NhbCBpbmNsdWRlIGRpcnMgdGFrZSBwcmVjZWRlbmNlLgorICAgICAgICBzZWxmLmluY2x1ZGVfZGlycy5hcHBlbmQocHlfaW5jbHVkZSkKKyAgICAgICAgaWYgcGxhdF9weV9pbmNsdWRlICE9IHB5X2luY2x1ZGU6CisgICAgICAgICAgICBzZWxmLmluY2x1ZGVfZGlycy5hcHBlbmQocGxhdF9weV9pbmNsdWRlKQorCisgICAgICAgIGlmIGlzaW5zdGFuY2Uoc2VsZi5saWJyYXJpZXMsIHN0cik6CisgICAgICAgICAgICBzZWxmLmxpYnJhcmllcyA9IFtzZWxmLmxpYnJhcmllc10KKworICAgICAgICAjIExpZmUgaXMgZWFzaWVyIGlmIHdlJ3JlIG5vdCBmb3JldmVyIGNoZWNraW5nIGZvciBOb25lLCBzbworICAgICAgICAjIHNpbXBsaWZ5IHRoZXNlIG9wdGlvbnMgdG8gZW1wdHkgbGlzdHMgaWYgdW5zZXQKKyAgICAgICAgaWYgc2VsZi5saWJyYXJpZXMgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYubGlicmFyaWVzID0gW10KKyAgICAgICAgaWYgc2VsZi5saWJyYXJ5X2RpcnMgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzID0gW10KKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKHNlbGYubGlicmFyeV9kaXJzLCBzdHIpOgorICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMgPSBzZWxmLmxpYnJhcnlfZGlycy5zcGxpdChvcy5wYXRoc2VwKQorCisgICAgICAgIGlmIHNlbGYucnBhdGggaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYucnBhdGggPSBbXQorICAgICAgICBlbGlmIGlzaW5zdGFuY2Uoc2VsZi5ycGF0aCwgc3RyKToKKyAgICAgICAgICAgIHNlbGYucnBhdGggPSBzZWxmLnJwYXRoLnNwbGl0KG9zLnBhdGhzZXApCisKKyAgICAgICAgIyBmb3IgZXh0ZW5zaW9ucyB1bmRlciB3aW5kb3dzIHVzZSBkaWZmZXJlbnQgZGlyZWN0b3JpZXMKKyAgICAgICAgIyBmb3IgUmVsZWFzZSBhbmQgRGVidWcgYnVpbGRzLgorICAgICAgICAjIGFsc28gUHl0aG9uJ3MgbGlicmFyeSBkaXJlY3RvcnkgbXVzdCBiZSBhcHBlbmRlZCB0byBsaWJyYXJ5X2RpcnMKKyAgICAgICAgaWYgb3MubmFtZSA9PSAnbnQnOgorICAgICAgICAgICAgIyB0aGUgJ2xpYnMnIGRpcmVjdG9yeSBpcyBmb3IgYmluYXJ5IGluc3RhbGxzIC0gd2UgYXNzdW1lIHRoYXQKKyAgICAgICAgICAgICMgbXVzdCBiZSB0aGUgKm5hdGl2ZSogcGxhdGZvcm0uICBCdXQgd2UgZG9uJ3QgcmVhbGx5IHN1cHBvcnQKKyAgICAgICAgICAgICMgY3Jvc3MtY29tcGlsaW5nIHZpYSBhIGJpbmFyeSBpbnN0YWxsIGFueXdheSwgc28gd2UgbGV0IGl0IGdvLgorICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMuYXBwZW5kKG9zLnBhdGguam9pbihzeXMuZXhlY19wcmVmaXgsICdsaWJzJykpCisgICAgICAgICAgICBpZiBzZWxmLmRlYnVnOgorICAgICAgICAgICAgICAgIHNlbGYuYnVpbGRfdGVtcCA9IG9zLnBhdGguam9pbihzZWxmLmJ1aWxkX3RlbXAsICJEZWJ1ZyIpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuYnVpbGRfdGVtcCA9IG9zLnBhdGguam9pbihzZWxmLmJ1aWxkX3RlbXAsICJSZWxlYXNlIikKKworICAgICAgICAgICAgIyBBcHBlbmQgdGhlIHNvdXJjZSBkaXN0cmlidXRpb24gaW5jbHVkZSBhbmQgbGlicmFyeSBkaXJlY3RvcmllcywKKyAgICAgICAgICAgICMgdGhpcyBhbGxvd3MgZGlzdHV0aWxzIG9uIHdpbmRvd3MgdG8gd29yayBpbiB0aGUgc291cmNlIHRyZWUKKyAgICAgICAgICAgIHNlbGYuaW5jbHVkZV9kaXJzLmFwcGVuZChvcy5wYXRoLmpvaW4oc3lzLmV4ZWNfcHJlZml4LCAnUEMnKSkKKyAgICAgICAgICAgIGlmIE1TVkNfVkVSU0lPTiA9PSA5OgorICAgICAgICAgICAgICAgICMgVXNlIHRoZSAubGliIGZpbGVzIGZvciB0aGUgY29ycmVjdCBhcmNoaXRlY3R1cmUKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnBsYXRfbmFtZSA9PSAnd2luMzInOgorICAgICAgICAgICAgICAgICAgICBzdWZmaXggPSAnJworICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICMgd2luLWFtZDY0IG9yIHdpbi1pYTY0CisgICAgICAgICAgICAgICAgICAgIHN1ZmZpeCA9IHNlbGYucGxhdF9uYW1lWzQ6XQorICAgICAgICAgICAgICAgIG5ld19saWIgPSBvcy5wYXRoLmpvaW4oc3lzLmV4ZWNfcHJlZml4LCAnUENidWlsZCcpCisgICAgICAgICAgICAgICAgaWYgc3VmZml4OgorICAgICAgICAgICAgICAgICAgICBuZXdfbGliID0gb3MucGF0aC5qb2luKG5ld19saWIsIHN1ZmZpeCkKKyAgICAgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycy5hcHBlbmQobmV3X2xpYikKKworICAgICAgICAgICAgZWxpZiBNU1ZDX1ZFUlNJT04gPT0gODoKKyAgICAgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycy5hcHBlbmQob3MucGF0aC5qb2luKHN5cy5leGVjX3ByZWZpeCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1BDJywgJ1ZTOC4wJykpCisgICAgICAgICAgICBlbGlmIE1TVkNfVkVSU0lPTiA9PSA3OgorICAgICAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzLmFwcGVuZChvcy5wYXRoLmpvaW4oc3lzLmV4ZWNfcHJlZml4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnUEMnLCAnVlM3LjEnKSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMuYXBwZW5kKG9zLnBhdGguam9pbihzeXMuZXhlY19wcmVmaXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdQQycsICdWQzYnKSkKKworICAgICAgICAjIE9TLzIgKEVNWCkgZG9lc24ndCBzdXBwb3J0IERlYnVnIHZzIFJlbGVhc2UgYnVpbGRzLCBidXQgaGFzIHRoZQorICAgICAgICAjIGltcG9ydCBsaWJyYXJpZXMgaW4gaXRzICJDb25maWciIHN1YmRpcmVjdG9yeQorICAgICAgICBpZiBvcy5uYW1lID09ICdvczInOgorICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMuYXBwZW5kKG9zLnBhdGguam9pbihzeXMuZXhlY19wcmVmaXgsICdDb25maWcnKSkKKworICAgICAgICAjIGZvciBleHRlbnNpb25zIHVuZGVyIEN5Z3dpbiBhbmQgQXRoZU9TIFB5dGhvbidzIGxpYnJhcnkgZGlyZWN0b3J5IG11c3QgYmUKKyAgICAgICAgIyBhcHBlbmRlZCB0byBsaWJyYXJ5X2RpcnMKKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtWzo2XSA9PSAnY3lnd2luJyBvciBzeXMucGxhdGZvcm1bOjZdID09ICdhdGhlb3MnOgorICAgICAgICAgICAgaWYgc3lzLmV4ZWN1dGFibGUuc3RhcnRzd2l0aChvcy5wYXRoLmpvaW4oc3lzLmV4ZWNfcHJlZml4LCAiYmluIikpOgorICAgICAgICAgICAgICAgICMgYnVpbGRpbmcgdGhpcmQgcGFydHkgZXh0ZW5zaW9ucworICAgICAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzLmFwcGVuZChvcy5wYXRoLmpvaW4oc3lzLnByZWZpeCwgImxpYiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInB5dGhvbiIgKyBzeXNjb25maWcuZ2V0X3B5dGhvbl92ZXJzaW9uKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29uZmlnIikpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICMgYnVpbGRpbmcgcHl0aG9uIHN0YW5kYXJkIGV4dGVuc2lvbnMKKyAgICAgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycy5hcHBlbmQob3MuY3VyZGlyKQorCisgICAgICAgICMgZm9yIGV4dGVuc2lvbnMgdW5kZXIgTGludXggb3IgU29sYXJpcyB3aXRoIGEgc2hhcmVkIFB5dGhvbiBsaWJyYXJ5LAorICAgICAgICAjIFB5dGhvbidzIGxpYnJhcnkgZGlyZWN0b3J5IG11c3QgYmUgYXBwZW5kZWQgdG8gbGlicmFyeV9kaXJzCisgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignUHlfRU5BQkxFX1NIQVJFRCcpCisgICAgICAgIGlmIChzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgoJ2xpbnV4JywgJ2dudScsICdzdW5vcycpKQorICAgICAgICAgICAgYW5kIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignUHlfRU5BQkxFX1NIQVJFRCcpKToKKyAgICAgICAgICAgIGlmIHN5cy5leGVjdXRhYmxlLnN0YXJ0c3dpdGgob3MucGF0aC5qb2luKHN5cy5leGVjX3ByZWZpeCwgImJpbiIpKToKKyAgICAgICAgICAgICAgICAjIGJ1aWxkaW5nIHRoaXJkIHBhcnR5IGV4dGVuc2lvbnMKKyAgICAgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycy5hcHBlbmQoc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdMSUJESVInKSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBidWlsZGluZyBweXRob24gc3RhbmRhcmQgZXh0ZW5zaW9ucworICAgICAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzLmFwcGVuZChvcy5jdXJkaXIpCisKKyAgICAgICAgIyBUaGUgYXJndW1lbnQgcGFyc2luZyB3aWxsIHJlc3VsdCBpbiBzZWxmLmRlZmluZSBiZWluZyBhIHN0cmluZywgYnV0CisgICAgICAgICMgaXQgaGFzIHRvIGJlIGEgbGlzdCBvZiAyLXR1cGxlcy4gIEFsbCB0aGUgcHJlcHJvY2Vzc29yIHN5bWJvbHMKKyAgICAgICAgIyBzcGVjaWZpZWQgYnkgdGhlICdkZWZpbmUnIG9wdGlvbiB3aWxsIGJlIHNldCB0byAnMScuICBNdWx0aXBsZQorICAgICAgICAjIHN5bWJvbHMgY2FuIGJlIHNlcGFyYXRlZCB3aXRoIGNvbW1hcy4KKworICAgICAgICBpZiBzZWxmLmRlZmluZToKKyAgICAgICAgICAgIGRlZmluZXMgPSBzZWxmLmRlZmluZS5zcGxpdCgnLCcpCisgICAgICAgICAgICBzZWxmLmRlZmluZSA9IFsoc3ltYm9sLCAnMScpIGZvciBzeW1ib2wgaW4gZGVmaW5lc10KKworICAgICAgICAjIFRoZSBvcHRpb24gZm9yIG1hY3JvcyB0byB1bmRlZmluZSBpcyBhbHNvIGEgc3RyaW5nIGZyb20gdGhlCisgICAgICAgICMgb3B0aW9uIHBhcnNpbmcsIGJ1dCBoYXMgdG8gYmUgYSBsaXN0LiAgTXVsdGlwbGUgc3ltYm9scyBjYW4gYWxzbworICAgICAgICAjIGJlIHNlcGFyYXRlZCB3aXRoIGNvbW1hcyBoZXJlLgorICAgICAgICBpZiBzZWxmLnVuZGVmOgorICAgICAgICAgICAgc2VsZi51bmRlZiA9IHNlbGYudW5kZWYuc3BsaXQoJywnKQorCisgICAgICAgIGlmIHNlbGYuc3dpZ19vcHRzIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLnN3aWdfb3B0cyA9IFtdCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLnN3aWdfb3B0cyA9IHNlbGYuc3dpZ19vcHRzLnNwbGl0KCcgJykKKworICAgICAgICAjIEZpbmFsbHkgYWRkIHRoZSB1c2VyIGluY2x1ZGUgYW5kIGxpYnJhcnkgZGlyZWN0b3JpZXMgaWYgcmVxdWVzdGVkCisgICAgICAgIGlmIHNlbGYudXNlcjoKKyAgICAgICAgICAgIHVzZXJfaW5jbHVkZSA9IG9zLnBhdGguam9pbihzaXRlLlVTRVJfQkFTRSwgImluY2x1ZGUiKQorICAgICAgICAgICAgdXNlcl9saWIgPSBvcy5wYXRoLmpvaW4oc2l0ZS5VU0VSX0JBU0UsICJsaWIiKQorICAgICAgICAgICAgaWYgb3MucGF0aC5pc2Rpcih1c2VyX2luY2x1ZGUpOgorICAgICAgICAgICAgICAgIHNlbGYuaW5jbHVkZV9kaXJzLmFwcGVuZCh1c2VyX2luY2x1ZGUpCisgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKHVzZXJfbGliKToKKyAgICAgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycy5hcHBlbmQodXNlcl9saWIpCisgICAgICAgICAgICAgICAgc2VsZi5ycGF0aC5hcHBlbmQodXNlcl9saWIpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgbmV3X2NvbXBpbGVyCisKKyAgICAgICAgaWYgbm90IHNlbGYuZXh0ZW5zaW9uczoKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgICMgSWYgd2Ugd2VyZSBhc2tlZCB0byBidWlsZCBhbnkgQy9DKysgbGlicmFyaWVzLCBtYWtlIHN1cmUgdGhhdCB0aGUKKyAgICAgICAgIyBkaXJlY3Rvcnkgd2hlcmUgd2UgcHV0IHRoZW0gaXMgaW4gdGhlIGxpYnJhcnkgc2VhcmNoIHBhdGggZm9yCisgICAgICAgICMgbGlua2luZyBleHRlbnNpb25zLgorICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfY19saWJyYXJpZXMoKToKKyAgICAgICAgICAgIGJ1aWxkX2NsaWIgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYnVpbGRfY2xpYicpCisgICAgICAgICAgICBzZWxmLmxpYnJhcmllcy5leHRlbmQoYnVpbGRfY2xpYi5nZXRfbGlicmFyeV9uYW1lcygpIG9yIFtdKQorICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMuYXBwZW5kKGJ1aWxkX2NsaWIuYnVpbGRfY2xpYikKKworICAgICAgICAjIFNldHVwIHRoZSBDQ29tcGlsZXIgb2JqZWN0IHRoYXQgd2UnbGwgdXNlIHRvIGRvIGFsbCB0aGUKKyAgICAgICAgIyBjb21waWxpbmcgYW5kIGxpbmtpbmcKKyAgICAgICAgc2VsZi5jb21waWxlcl9vYmogPSBuZXdfY29tcGlsZXIoY29tcGlsZXI9c2VsZi5jb21waWxlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJ5X3J1bj1zZWxmLmRyeV9ydW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmNlPXNlbGYuZm9yY2UpCisKKyAgICAgICAgY3VzdG9taXplX2NvbXBpbGVyKHNlbGYuY29tcGlsZXJfb2JqKQorICAgICAgICAjIElmIHdlIGFyZSBjcm9zcy1jb21waWxpbmcsIGluaXQgdGhlIGNvbXBpbGVyIG5vdyAoaWYgd2UgYXJlIG5vdAorICAgICAgICAjIGNyb3NzLWNvbXBpbGluZywgaW5pdCB3b3VsZCBub3QgaHVydCwgYnV0IHBlb3BsZSBtYXkgcmVseSBvbgorICAgICAgICAjIGxhdGUgaW5pdGlhbGl6YXRpb24gb2YgY29tcGlsZXIgZXZlbiBpZiB0aGV5IHNob3VsZG4ndC4uLikKKyAgICAgICAgaWYgb3MubmFtZSA9PSAnbnQnIGFuZCBzZWxmLnBsYXRfbmFtZSAhPSBnZXRfcGxhdGZvcm0oKToKKyAgICAgICAgICAgIHNlbGYuY29tcGlsZXJfb2JqLmluaXRpYWxpemUoc2VsZi5wbGF0X25hbWUpCisKKyAgICAgICAgIyBBbmQgbWFrZSBzdXJlIHRoYXQgYW55IGNvbXBpbGUvbGluay1yZWxhdGVkIG9wdGlvbnMgKHdoaWNoIG1pZ2h0CisgICAgICAgICMgY29tZSBmcm9tIHRoZSBjb21tYW5kIGxpbmUgb3IgZnJvbSB0aGUgc2V0dXAgc2NyaXB0KSBhcmUgc2V0IGluCisgICAgICAgICMgdGhhdCBDQ29tcGlsZXIgb2JqZWN0IC0tIHRoYXQgd2F5LCB0aGV5IGF1dG9tYXRpY2FsbHkgYXBwbHkgdG8KKyAgICAgICAgIyBhbGwgY29tcGlsaW5nIGFuZCBsaW5raW5nIGRvbmUgaGVyZS4KKyAgICAgICAgaWYgc2VsZi5pbmNsdWRlX2RpcnMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVyX29iai5zZXRfaW5jbHVkZV9kaXJzKHNlbGYuaW5jbHVkZV9kaXJzKQorICAgICAgICBpZiBzZWxmLmRlZmluZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICMgJ2RlZmluZScgb3B0aW9uIGlzIGEgbGlzdCBvZiAobmFtZSx2YWx1ZSkgdHVwbGVzCisgICAgICAgICAgICBmb3IgbmFtZSwgdmFsdWUgaW4gc2VsZi5kZWZpbmU6CisgICAgICAgICAgICAgICAgc2VsZi5jb21waWxlcl9vYmouZGVmaW5lX21hY3JvKG5hbWUsIHZhbHVlKQorICAgICAgICBpZiBzZWxmLnVuZGVmIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgZm9yIG1hY3JvIGluIHNlbGYudW5kZWY6CisgICAgICAgICAgICAgICAgc2VsZi5jb21waWxlcl9vYmoudW5kZWZpbmVfbWFjcm8obWFjcm8pCisgICAgICAgIGlmIHNlbGYubGlicmFyaWVzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5jb21waWxlcl9vYmouc2V0X2xpYnJhcmllcyhzZWxmLmxpYnJhcmllcykKKyAgICAgICAgaWYgc2VsZi5saWJyYXJ5X2RpcnMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVyX29iai5zZXRfbGlicmFyeV9kaXJzKHNlbGYubGlicmFyeV9kaXJzKQorICAgICAgICBpZiBzZWxmLnJwYXRoIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5jb21waWxlcl9vYmouc2V0X3J1bnRpbWVfbGlicmFyeV9kaXJzKHNlbGYucnBhdGgpCisgICAgICAgIGlmIHNlbGYubGlua19vYmplY3RzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5jb21waWxlcl9vYmouc2V0X2xpbmtfb2JqZWN0cyhzZWxmLmxpbmtfb2JqZWN0cykKKworICAgICAgICAjIE5vdyBhY3R1YWxseSBjb21waWxlIGFuZCBsaW5rIGV2ZXJ5dGhpbmcuCisgICAgICAgIHNlbGYuYnVpbGRfZXh0ZW5zaW9ucygpCisKKyAgICBkZWYgZ2V0X3NvdXJjZV9maWxlcyhzZWxmKToKKyAgICAgICAgZmlsZW5hbWVzID0gW10KKworICAgICAgICAjIFdvdWxkbid0IGl0IGJlIG5lYXQgaWYgd2Uga25ldyB0aGUgbmFtZXMgb2YgaGVhZGVyIGZpbGVzIHRvby4uLgorICAgICAgICBmb3IgZXh0IGluIHNlbGYuZXh0ZW5zaW9uczoKKyAgICAgICAgICAgIGZpbGVuYW1lcy5leHRlbmQoZXh0LnNvdXJjZXMpCisKKyAgICAgICAgcmV0dXJuIGZpbGVuYW1lcworCisgICAgZGVmIGdldF9vdXRwdXRzKHNlbGYpOgorICAgICAgICAjIEFuZCBidWlsZCB0aGUgbGlzdCBvZiBvdXRwdXQgKGJ1aWx0KSBmaWxlbmFtZXMuICBOb3RlIHRoYXQgdGhpcworICAgICAgICAjIGlnbm9yZXMgdGhlICdpbnBsYWNlJyBmbGFnLCBhbmQgYXNzdW1lcyBldmVyeXRoaW5nIGdvZXMgaW4gdGhlCisgICAgICAgICMgImJ1aWxkIiB0cmVlLgorICAgICAgICBvdXRwdXRzID0gW10KKyAgICAgICAgZm9yIGV4dCBpbiBzZWxmLmV4dGVuc2lvbnM6CisgICAgICAgICAgICBvdXRwdXRzLmFwcGVuZChzZWxmLmdldF9leHRfZnVsbHBhdGgoZXh0Lm5hbWUpKQorICAgICAgICByZXR1cm4gb3V0cHV0cworCisgICAgZGVmIGJ1aWxkX2V4dGVuc2lvbnMoc2VsZik6CisgICAgICAgIGZvciBleHQgaW4gc2VsZi5leHRlbnNpb25zOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuYnVpbGRfZXh0ZW5zaW9uKGV4dCkKKyAgICAgICAgICAgIGV4Y2VwdCAoQ0NvbXBpbGVyRXJyb3IsIFBhY2thZ2luZ0Vycm9yLCBDb21waWxlRXJyb3IpIGFzIGU6CisgICAgICAgICAgICAgICAgaWYgbm90IGV4dC5vcHRpb25hbDoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygnJXM6IGJ1aWxkaW5nIGV4dGVuc2lvbiAlciBmYWlsZWQ6ICVzJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmdldF9jb21tYW5kX25hbWUoKSwgZXh0Lm5hbWUsIGUpCisKKyAgICBkZWYgYnVpbGRfZXh0ZW5zaW9uKHNlbGYsIGV4dCk6CisgICAgICAgIHNvdXJjZXMgPSBleHQuc291cmNlcworICAgICAgICBpZiBzb3VyY2VzIGlzIE5vbmUgb3Igbm90IGlzaW5zdGFuY2Uoc291cmNlcywgKGxpc3QsIHR1cGxlKSk6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yKCgiaW4gJ2V4dF9tb2R1bGVzJyBvcHRpb24gKGV4dGVuc2lvbiAnJXMnKSwgIiArCisgICAgICAgICAgICAgICAgICAgIidzb3VyY2VzJyBtdXN0IGJlIHByZXNlbnQgYW5kIG11c3QgYmUgIiArCisgICAgICAgICAgICAgICAgICAgImEgbGlzdCBvZiBzb3VyY2UgZmlsZW5hbWVzIikgJSBleHQubmFtZSkKKyAgICAgICAgc291cmNlcyA9IGxpc3Qoc291cmNlcykKKworICAgICAgICBleHRfcGF0aCA9IHNlbGYuZ2V0X2V4dF9mdWxscGF0aChleHQubmFtZSkKKyAgICAgICAgZGVwZW5kcyA9IHNvdXJjZXMgKyBleHQuZGVwZW5kcworICAgICAgICBpZiBub3QgKHNlbGYuZm9yY2Ugb3IgbmV3ZXJfZ3JvdXAoZGVwZW5kcywgZXh0X3BhdGgsICduZXdlcicpKToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1Zygic2tpcHBpbmcgJyVzJyBleHRlbnNpb24gKHVwLXRvLWRhdGUpIiwgZXh0Lm5hbWUpCisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJidWlsZGluZyAnJXMnIGV4dGVuc2lvbiIsIGV4dC5uYW1lKQorCisgICAgICAgICMgRmlyc3QsIHNjYW4gdGhlIHNvdXJjZXMgZm9yIFNXSUcgZGVmaW5pdGlvbiBmaWxlcyAoLmkpLCBydW4KKyAgICAgICAgIyBTV0lHIG9uICdlbSB0byBjcmVhdGUgLmMgZmlsZXMsIGFuZCBtb2RpZnkgdGhlIHNvdXJjZXMgbGlzdAorICAgICAgICAjIGFjY29yZGluZ2x5LgorICAgICAgICBzb3VyY2VzID0gc2VsZi5zd2lnX3NvdXJjZXMoc291cmNlcywgZXh0KQorCisgICAgICAgICMgTmV4dCwgY29tcGlsZSB0aGUgc291cmNlIGNvZGUgdG8gb2JqZWN0IGZpbGVzLgorCisgICAgICAgICMgWFhYIG5vdCBob25vdXJpbmcgJ2RlZmluZV9tYWNyb3MnIG9yICd1bmRlZl9tYWNyb3MnIC0tIHRoZQorICAgICAgICAjIENDb21waWxlciBBUEkgbmVlZHMgdG8gY2hhbmdlIHRvIGFjY29tbW9kYXRlIHRoaXMsIGFuZCBJCisgICAgICAgICMgd2FudCB0byBkbyBvbmUgdGhpbmcgYXQgYSB0aW1lIQorCisgICAgICAgICMgVHdvIHBvc3NpYmxlIHNvdXJjZXMgZm9yIGV4dHJhIGNvbXBpbGVyIGFyZ3VtZW50czoKKyAgICAgICAgIyAgIC0gJ2V4dHJhX2NvbXBpbGVfYXJncycgaW4gRXh0ZW5zaW9uIG9iamVjdAorICAgICAgICAjICAgLSBDRkxBR1MgZW52aXJvbm1lbnQgdmFyaWFibGUgKG5vdCBwYXJ0aWN1bGFybHkKKyAgICAgICAgIyAgICAgZWxlZ2FudCwgYnV0IHBlb3BsZSBzZWVtIHRvIGV4cGVjdCBpdCBhbmQgSQorICAgICAgICAjICAgICBndWVzcyBpdCdzIHVzZWZ1bCkKKyAgICAgICAgIyBUaGUgZW52aXJvbm1lbnQgdmFyaWFibGUgc2hvdWxkIHRha2UgcHJlY2VkZW5jZSwgYW5kCisgICAgICAgICMgYW55IHNlbnNpYmxlIGNvbXBpbGVyIHdpbGwgZ2l2ZSBwcmVjZWRlbmNlIHRvIGxhdGVyCisgICAgICAgICMgY29tbWFuZC1saW5lIGFyZ3MuICBIZW5jZSB3ZSBjb21iaW5lIHRoZW0gaW4gb3JkZXI6CisgICAgICAgIGV4dHJhX2FyZ3MgPSBleHQuZXh0cmFfY29tcGlsZV9hcmdzIG9yIFtdCisKKyAgICAgICAgbWFjcm9zID0gZXh0LmRlZmluZV9tYWNyb3NbOl0KKyAgICAgICAgZm9yIHVuZGVmIGluIGV4dC51bmRlZl9tYWNyb3M6CisgICAgICAgICAgICBtYWNyb3MuYXBwZW5kKCh1bmRlZiwpKQorCisgICAgICAgIG9iamVjdHMgPSBzZWxmLmNvbXBpbGVyX29iai5jb21waWxlKHNvdXJjZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dF9kaXI9c2VsZi5idWlsZF90ZW1wLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWNyb3M9bWFjcm9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlX2RpcnM9ZXh0LmluY2x1ZGVfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVidWc9c2VsZi5kZWJ1ZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3M9ZXh0cmFfYXJncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kcz1leHQuZGVwZW5kcykKKworICAgICAgICAjIFhYWCAtLSB0aGlzIGlzIGEgVmlsZSBIQUNLIQorICAgICAgICAjCisgICAgICAgICMgVGhlIHNldHVwLnB5IHNjcmlwdCBmb3IgUHl0aG9uIG9uIFVuaXggbmVlZHMgdG8gYmUgYWJsZSB0bworICAgICAgICAjIGdldCB0aGlzIGxpc3Qgc28gaXQgY2FuIHBlcmZvcm0gYWxsIHRoZSBjbGVhbiB1cCBuZWVkZWQgdG8KKyAgICAgICAgIyBhdm9pZCBrZWVwaW5nIG9iamVjdCBmaWxlcyBhcm91bmQgd2hlbiBjbGVhbmluZyBvdXQgYSBmYWlsZWQKKyAgICAgICAgIyBidWlsZCBvZiBhbiBleHRlbnNpb24gbW9kdWxlLiAgU2luY2UgUGFja2FnaW5nIGRvZXMgbm90CisgICAgICAgICMgdHJhY2sgZGVwZW5kZW5jaWVzLCB3ZSBoYXZlIHRvIGdldCByaWQgb2YgaW50ZXJtZWRpYXRlcyB0bworICAgICAgICAjIGVuc3VyZSBhbGwgdGhlIGludGVybWVkaWF0ZXMgd2lsbCBiZSBwcm9wZXJseSByZS1idWlsdC4KKyAgICAgICAgIworICAgICAgICBzZWxmLl9idWlsdF9vYmplY3RzID0gb2JqZWN0c1s6XQorCisgICAgICAgICMgTm93IGxpbmsgdGhlIG9iamVjdCBmaWxlcyB0b2dldGhlciBpbnRvIGEgInNoYXJlZCBvYmplY3QiIC0tCisgICAgICAgICMgb2YgY291cnNlLCBmaXJzdCB3ZSBoYXZlIHRvIGZpZ3VyZSBvdXQgYWxsIHRoZSBvdGhlciB0aGluZ3MKKyAgICAgICAgIyB0aGF0IGdvIGludG8gdGhlIG1peC4KKyAgICAgICAgaWYgZXh0LmV4dHJhX29iamVjdHM6CisgICAgICAgICAgICBvYmplY3RzLmV4dGVuZChleHQuZXh0cmFfb2JqZWN0cykKKyAgICAgICAgZXh0cmFfYXJncyA9IGV4dC5leHRyYV9saW5rX2FyZ3Mgb3IgW10KKworICAgICAgICAjIERldGVjdCB0YXJnZXQgbGFuZ3VhZ2UsIGlmIG5vdCBwcm92aWRlZAorICAgICAgICBsYW5ndWFnZSA9IGV4dC5sYW5ndWFnZSBvciBzZWxmLmNvbXBpbGVyX29iai5kZXRlY3RfbGFuZ3VhZ2Uoc291cmNlcykKKworICAgICAgICBzZWxmLmNvbXBpbGVyX29iai5saW5rX3NoYXJlZF9vYmplY3QoCisgICAgICAgICAgICBvYmplY3RzLCBleHRfcGF0aCwKKyAgICAgICAgICAgIGxpYnJhcmllcz1zZWxmLmdldF9saWJyYXJpZXMoZXh0KSwKKyAgICAgICAgICAgIGxpYnJhcnlfZGlycz1leHQubGlicmFyeV9kaXJzLAorICAgICAgICAgICAgcnVudGltZV9saWJyYXJ5X2RpcnM9ZXh0LnJ1bnRpbWVfbGlicmFyeV9kaXJzLAorICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3M9ZXh0cmFfYXJncywKKyAgICAgICAgICAgIGV4cG9ydF9zeW1ib2xzPXNlbGYuZ2V0X2V4cG9ydF9zeW1ib2xzKGV4dCksCisgICAgICAgICAgICBkZWJ1Zz1zZWxmLmRlYnVnLAorICAgICAgICAgICAgYnVpbGRfdGVtcD1zZWxmLmJ1aWxkX3RlbXAsCisgICAgICAgICAgICB0YXJnZXRfbGFuZz1sYW5ndWFnZSkKKworCisgICAgZGVmIHN3aWdfc291cmNlcyhzZWxmLCBzb3VyY2VzLCBleHRlbnNpb24pOgorICAgICAgICAiIiJXYWxrIHRoZSBsaXN0IG9mIHNvdXJjZSBmaWxlcyBpbiAnc291cmNlcycsIGxvb2tpbmcgZm9yIFNXSUcKKyAgICAgICAgaW50ZXJmYWNlICguaSkgZmlsZXMuICBSdW4gU1dJRyBvbiBhbGwgdGhhdCBhcmUgZm91bmQsIGFuZAorICAgICAgICByZXR1cm4gYSBtb2RpZmllZCAnc291cmNlcycgbGlzdCB3aXRoIFNXSUcgc291cmNlIGZpbGVzIHJlcGxhY2VkCisgICAgICAgIGJ5IHRoZSBnZW5lcmF0ZWQgQyAob3IgQysrKSBmaWxlcy4KKyAgICAgICAgIiIiCisgICAgICAgIG5ld19zb3VyY2VzID0gW10KKyAgICAgICAgc3dpZ19zb3VyY2VzID0gW10KKyAgICAgICAgc3dpZ190YXJnZXRzID0ge30KKworICAgICAgICAjIFhYWCB0aGlzIGRyb3BzIGdlbmVyYXRlZCBDL0MrKyBmaWxlcyBpbnRvIHRoZSBzb3VyY2UgdHJlZSwgd2hpY2gKKyAgICAgICAgIyBpcyBmaW5lIGZvciBkZXZlbG9wZXJzIHdobyB3YW50IHRvIGRpc3RyaWJ1dGUgdGhlIGdlbmVyYXRlZAorICAgICAgICAjIHNvdXJjZSAtLSBidXQgdGhlcmUgc2hvdWxkIGJlIGFuIG9wdGlvbiB0byBwdXQgU1dJRyBvdXRwdXQgaW4KKyAgICAgICAgIyB0aGUgdGVtcCBkaXIuCisKKyAgICAgICAgaWYgKCctYysrJyBpbiBzZWxmLnN3aWdfb3B0cyBvciAnLWMrKycgaW4gZXh0ZW5zaW9uLnN3aWdfb3B0cyk6CisgICAgICAgICAgICB0YXJnZXRfZXh0ID0gJy5jcHAnCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB0YXJnZXRfZXh0ID0gJy5jJworCisgICAgICAgIGZvciBzb3VyY2UgaW4gc291cmNlczoKKyAgICAgICAgICAgIGJhc2UsIGV4dCA9IG9zLnBhdGguc3BsaXRleHQoc291cmNlKQorICAgICAgICAgICAgaWYgZXh0ID09ICIuaSI6ICAgICAgICAgICAgICMgU1dJRyBpbnRlcmZhY2UgZmlsZQorICAgICAgICAgICAgICAgIG5ld19zb3VyY2VzLmFwcGVuZChiYXNlICsgJ193cmFwJyArIHRhcmdldF9leHQpCisgICAgICAgICAgICAgICAgc3dpZ19zb3VyY2VzLmFwcGVuZChzb3VyY2UpCisgICAgICAgICAgICAgICAgc3dpZ190YXJnZXRzW3NvdXJjZV0gPSBuZXdfc291cmNlc1stMV0KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbmV3X3NvdXJjZXMuYXBwZW5kKHNvdXJjZSkKKworICAgICAgICBpZiBub3Qgc3dpZ19zb3VyY2VzOgorICAgICAgICAgICAgcmV0dXJuIG5ld19zb3VyY2VzCisKKyAgICAgICAgc3dpZyA9IHNlbGYuc3dpZyBvciBzZWxmLmZpbmRfc3dpZygpCisgICAgICAgIHN3aWdfY21kID0gW3N3aWcsICItcHl0aG9uIl0KKyAgICAgICAgc3dpZ19jbWQuZXh0ZW5kKHNlbGYuc3dpZ19vcHRzKQorCisgICAgICAgICMgRG8gbm90IG92ZXJyaWRlIGNvbW1hbmRsaW5lIGFyZ3VtZW50cworICAgICAgICBpZiBub3Qgc2VsZi5zd2lnX29wdHM6CisgICAgICAgICAgICBmb3IgbyBpbiBleHRlbnNpb24uc3dpZ19vcHRzOgorICAgICAgICAgICAgICAgIHN3aWdfY21kLmFwcGVuZChvKQorCisgICAgICAgIGZvciBzb3VyY2UgaW4gc3dpZ19zb3VyY2VzOgorICAgICAgICAgICAgdGFyZ2V0ID0gc3dpZ190YXJnZXRzW3NvdXJjZV0KKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJzd2lnZ2luZyAlcyB0byAlcyIsIHNvdXJjZSwgdGFyZ2V0KQorICAgICAgICAgICAgc2VsZi5zcGF3bihzd2lnX2NtZCArIFsiLW8iLCB0YXJnZXQsIHNvdXJjZV0pCisKKyAgICAgICAgcmV0dXJuIG5ld19zb3VyY2VzCisKKyAgICBkZWYgZmluZF9zd2lnKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIG5hbWUgb2YgdGhlIFNXSUcgZXhlY3V0YWJsZS4gIE9uIFVuaXgsIHRoaXMgaXMKKyAgICAgICAganVzdCAic3dpZyIgLS0gaXQgc2hvdWxkIGJlIGluIHRoZSBQQVRILiAgVHJpZXMgYSBiaXQgaGFyZGVyIG9uCisgICAgICAgIFdpbmRvd3MuCisgICAgICAgICIiIgorCisgICAgICAgIGlmIG9zLm5hbWUgPT0gInBvc2l4IjoKKyAgICAgICAgICAgIHJldHVybiAic3dpZyIKKyAgICAgICAgZWxpZiBvcy5uYW1lID09ICJudCI6CisKKyAgICAgICAgICAgICMgTG9vayBmb3IgU1dJRyBpbiBpdHMgc3RhbmRhcmQgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBvbgorICAgICAgICAgICAgIyBXaW5kb3dzIChvciBzbyBJIHByZXN1bWUhKS4gIElmIHdlIGZpbmQgaXQgdGhlcmUsIGdyZWF0OworICAgICAgICAgICAgIyBpZiBub3QsIGFjdCBsaWtlIFVuaXggYW5kIGFzc3VtZSBpdCdzIGluIHRoZSBQQVRILgorICAgICAgICAgICAgZm9yIHZlcnMgaW4gKCIxLjMiLCAiMS4yIiwgIjEuMSIpOgorICAgICAgICAgICAgICAgIGZuID0gb3MucGF0aC5qb2luKCJjOlxcc3dpZyVzIiAlIHZlcnMsICJzd2lnLmV4ZSIpCisgICAgICAgICAgICAgICAgaWYgb3MucGF0aC5pc2ZpbGUoZm4pOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gZm4KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmV0dXJuICJzd2lnLmV4ZSIKKworICAgICAgICBlbGlmIG9zLm5hbWUgPT0gIm9zMiI6CisgICAgICAgICAgICAjIGFzc3VtZSBzd2lnIGF2YWlsYWJsZSBpbiB0aGUgUEFUSC4KKyAgICAgICAgICAgIHJldHVybiAic3dpZy5leGUiCisKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoKCJJIGRvbid0IGtub3cgaG93IHRvIGZpbmQgKG11Y2ggbGVzcyBydW4pIFNXSUcgIgorICAgICAgICAgICAgICAgICAgICJvbiBwbGF0Zm9ybSAnJXMnIikgJSBvcy5uYW1lKQorCisgICAgIyAtLSBOYW1lIGdlbmVyYXRvcnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIChleHRlbnNpb24gbmFtZXMsIGZpbGVuYW1lcywgd2hhdGV2ZXIpCisgICAgZGVmIGdldF9leHRfZnVsbHBhdGgoc2VsZiwgZXh0X25hbWUpOgorICAgICAgICAiIiJSZXR1cm5zIHRoZSBwYXRoIG9mIHRoZSBmaWxlbmFtZSBmb3IgYSBnaXZlbiBleHRlbnNpb24uCisKKyAgICAgICAgVGhlIGZpbGUgaXMgbG9jYXRlZCBpbiBgYnVpbGRfbGliYCBvciBkaXJlY3RseSBpbiB0aGUgcGFja2FnZQorICAgICAgICAoaW5wbGFjZSBvcHRpb24pLgorICAgICAgICAiIiIKKyAgICAgICAgZnVsbG5hbWUgPSBzZWxmLmdldF9leHRfZnVsbG5hbWUoZXh0X25hbWUpCisgICAgICAgIG1vZHBhdGggPSBmdWxsbmFtZS5zcGxpdCgnLicpCisgICAgICAgIGZpbGVuYW1lID0gc2VsZi5nZXRfZXh0X2ZpbGVuYW1lKG1vZHBhdGhbLTFdKQorCisgICAgICAgIGlmIG5vdCBzZWxmLmlucGxhY2U6CisgICAgICAgICAgICAjIG5vIGZ1cnRoZXIgd29yayBuZWVkZWQKKyAgICAgICAgICAgICMgcmV0dXJuaW5nIDoKKyAgICAgICAgICAgICMgICBidWlsZF9kaXIvcGFja2FnZS9wYXRoL2ZpbGVuYW1lCisgICAgICAgICAgICBmaWxlbmFtZSA9IG9zLnBhdGguam9pbigqbW9kcGF0aFs6LTFdK1tmaWxlbmFtZV0pCisgICAgICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKHNlbGYuYnVpbGRfbGliLCBmaWxlbmFtZSkKKworICAgICAgICAjIHRoZSBpbnBsYWNlIG9wdGlvbiByZXF1aXJlcyB0byBmaW5kIHRoZSBwYWNrYWdlIGRpcmVjdG9yeQorICAgICAgICAjIHVzaW5nIHRoZSBidWlsZF9weSBjb21tYW5kIGZvciB0aGF0CisgICAgICAgIHBhY2thZ2UgPSAnLicuam9pbihtb2RwYXRoWzA6LTFdKQorICAgICAgICBidWlsZF9weSA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdidWlsZF9weScpCisgICAgICAgIHBhY2thZ2VfZGlyID0gb3MucGF0aC5hYnNwYXRoKGJ1aWxkX3B5LmdldF9wYWNrYWdlX2RpcihwYWNrYWdlKSkKKworICAgICAgICAjIHJldHVybmluZworICAgICAgICAjICAgcGFja2FnZV9kaXIvZmlsZW5hbWUKKyAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbihwYWNrYWdlX2RpciwgZmlsZW5hbWUpCisKKyAgICBkZWYgZ2V0X2V4dF9mdWxsbmFtZShzZWxmLCBleHRfbmFtZSk6CisgICAgICAgICIiIlJldHVybnMgdGhlIGZ1bGxuYW1lIG9mIGEgZ2l2ZW4gZXh0ZW5zaW9uIG5hbWUuCisKKyAgICAgICAgQWRkcyB0aGUgYHBhY2thZ2UuYCBwcmVmaXgiIiIKKyAgICAgICAgaWYgc2VsZi5wYWNrYWdlIGlzIE5vbmU6CisgICAgICAgICAgICByZXR1cm4gZXh0X25hbWUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiBzZWxmLnBhY2thZ2UgKyAnLicgKyBleHRfbmFtZQorCisgICAgZGVmIGdldF9leHRfZmlsZW5hbWUoc2VsZiwgZXh0X25hbWUpOgorICAgICAgICByIiIiQ29udmVydCB0aGUgbmFtZSBvZiBhbiBleHRlbnNpb24gKGVnLiAiZm9vLmJhciIpIGludG8gdGhlIG5hbWUKKyAgICAgICAgb2YgdGhlIGZpbGUgZnJvbSB3aGljaCBpdCB3aWxsIGJlIGxvYWRlZCAoZWcuICJmb28vYmFyLnNvIiwgb3IKKyAgICAgICAgImZvb1xiYXIucHlkIikuCisgICAgICAgICIiIgorICAgICAgICBleHRfcGF0aCA9IGV4dF9uYW1lLnNwbGl0KCcuJykKKyAgICAgICAgIyBPUy8yIGhhcyBhbiA4IGNoYXJhY3RlciBtb2R1bGUgKGV4dGVuc2lvbikgbGltaXQgOi0oCisgICAgICAgIGlmIG9zLm5hbWUgPT0gIm9zMiI6CisgICAgICAgICAgICBleHRfcGF0aFtsZW4oZXh0X3BhdGgpIC0gMV0gPSBleHRfcGF0aFtsZW4oZXh0X3BhdGgpIC0gMV1bOjhdCisgICAgICAgICMgZXh0ZW5zaW9ucyBpbiBkZWJ1Z19tb2RlIGFyZSBuYW1lZCAnbW9kdWxlX2QucHlkJyB1bmRlciB3aW5kb3dzCisgICAgICAgIHNvX2V4dCA9IHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignU08nKQorICAgICAgICBpZiBvcy5uYW1lID09ICdudCcgYW5kIHNlbGYuZGVidWc6CisgICAgICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKCpleHRfcGF0aCkgKyAnX2QnICsgc29fZXh0CisgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4oKmV4dF9wYXRoKSArIHNvX2V4dAorCisgICAgZGVmIGdldF9leHBvcnRfc3ltYm9scyhzZWxmLCBleHQpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGxpc3Qgb2Ygc3ltYm9scyB0aGF0IGEgc2hhcmVkIGV4dGVuc2lvbiBoYXMgdG8KKyAgICAgICAgZXhwb3J0LiAgVGhpcyBlaXRoZXIgdXNlcyAnZXh0LmV4cG9ydF9zeW1ib2xzJyBvciwgaWYgaXQncyBub3QKKyAgICAgICAgcHJvdmlkZWQsICJpbml0IiArIG1vZHVsZV9uYW1lLiAgT25seSByZWxldmFudCBvbiBXaW5kb3dzLCB3aGVyZQorICAgICAgICB0aGUgLnB5ZCBmaWxlIChETEwpIG11c3QgZXhwb3J0IHRoZSBtb2R1bGUgImluaXQiIGZ1bmN0aW9uLgorICAgICAgICAiIiIKKyAgICAgICAgaW5pdGZ1bmNfbmFtZSA9ICJQeUluaXRfIiArIGV4dC5uYW1lLnNwbGl0KCcuJylbLTFdCisgICAgICAgIGlmIGluaXRmdW5jX25hbWUgbm90IGluIGV4dC5leHBvcnRfc3ltYm9sczoKKyAgICAgICAgICAgIGV4dC5leHBvcnRfc3ltYm9scy5hcHBlbmQoaW5pdGZ1bmNfbmFtZSkKKyAgICAgICAgcmV0dXJuIGV4dC5leHBvcnRfc3ltYm9scworCisgICAgZGVmIGdldF9saWJyYXJpZXMoc2VsZiwgZXh0KToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBsaXN0IG9mIGxpYnJhcmllcyB0byBsaW5rIGFnYWluc3Qgd2hlbiBidWlsZGluZyBhCisgICAgICAgIHNoYXJlZCBleHRlbnNpb24uICBPbiBtb3N0IHBsYXRmb3JtcywgdGhpcyBpcyBqdXN0ICdleHQubGlicmFyaWVzJzsKKyAgICAgICAgb24gV2luZG93cyBhbmQgT1MvMiwgd2UgYWRkIHRoZSBQeXRob24gbGlicmFyeSAoZWcuIHB5dGhvbjIwLmRsbCkuCisgICAgICAgICIiIgorICAgICAgICAjIFRoZSBweXRob24gbGlicmFyeSBpcyBhbHdheXMgbmVlZGVkIG9uIFdpbmRvd3MuICBGb3IgTVNWQywgdGhpcworICAgICAgICAjIGlzIHJlZHVuZGFudCwgc2luY2UgdGhlIGxpYnJhcnkgaXMgbWVudGlvbmVkIGluIGEgcHJhZ21hIGluCisgICAgICAgICMgcHljb25maWcuaCB0aGF0IE1TVkMgZ3Jva3MuICBUaGUgb3RoZXIgV2luZG93cyBjb21waWxlcnMgYWxsIHNlZW0KKyAgICAgICAgIyB0byBuZWVkIGl0IG1lbnRpb25lZCBleHBsaWNpdGx5LCB0aG91Z2gsIHNvIHRoYXQncyB3aGF0IHdlIGRvLgorICAgICAgICAjIEFwcGVuZCAnX2QnIHRvIHRoZSBweXRob24gaW1wb3J0IGxpYnJhcnkgb24gZGVidWcgYnVpbGRzLgorICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gIndpbjMyIjoKKyAgICAgICAgICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLm1zdmNjb21waWxlciBpbXBvcnQgTVNWQ0NvbXBpbGVyCisgICAgICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShzZWxmLmNvbXBpbGVyX29iaiwgTVNWQ0NvbXBpbGVyKToKKyAgICAgICAgICAgICAgICB0ZW1wbGF0ZSA9ICJweXRob24lZCVkIgorICAgICAgICAgICAgICAgIGlmIHNlbGYuZGVidWc6CisgICAgICAgICAgICAgICAgICAgIHRlbXBsYXRlID0gdGVtcGxhdGUgKyAnX2QnCisgICAgICAgICAgICAgICAgcHl0aG9ubGliID0gdGVtcGxhdGUgJSBzeXMudmVyc2lvbl9pbmZvWzoyXQorICAgICAgICAgICAgICAgICMgZG9uJ3QgZXh0ZW5kIGV4dC5saWJyYXJpZXMsIGl0IG1heSBiZSBzaGFyZWQgd2l0aCBvdGhlcgorICAgICAgICAgICAgICAgICMgZXh0ZW5zaW9ucywgaXQgaXMgYSByZWZlcmVuY2UgdG8gdGhlIG9yaWdpbmFsIGxpc3QKKyAgICAgICAgICAgICAgICByZXR1cm4gZXh0LmxpYnJhcmllcyArIFtweXRob25saWJdCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJldHVybiBleHQubGlicmFyaWVzCisgICAgICAgIGVsaWYgc3lzLnBsYXRmb3JtID09ICJvczJlbXgiOgorICAgICAgICAgICAgIyBFTVgvR0NDIHJlcXVpcmVzIHRoZSBweXRob24gbGlicmFyeSBleHBsaWNpdGx5LCBhbmQgSQorICAgICAgICAgICAgIyBiZWxpZXZlIFZBQ1BQIGRvZXMgYXMgd2VsbCAodGhvdWdoIG5vdCBjb25maXJtZWQpIC0gQUlNIEFwcjAxCisgICAgICAgICAgICB0ZW1wbGF0ZSA9ICJweXRob24lZCVkIgorICAgICAgICAgICAgIyBkZWJ1ZyB2ZXJzaW9ucyBvZiB0aGUgbWFpbiBETEwgYXJlbid0IHN1cHBvcnRlZCwgYXQgbGVhc3QKKyAgICAgICAgICAgICMgbm90IGF0IHRoaXMgdGltZSAtIEFJTSBBcHIwMQorICAgICAgICAgICAgI2lmIHNlbGYuZGVidWc6CisgICAgICAgICAgICAjICAgIHRlbXBsYXRlID0gdGVtcGxhdGUgKyAnX2QnCisgICAgICAgICAgICBweXRob25saWIgPSB0ZW1wbGF0ZSAlIHN5cy52ZXJzaW9uX2luZm9bOjJdCisgICAgICAgICAgICAjIGRvbid0IGV4dGVuZCBleHQubGlicmFyaWVzLCBpdCBtYXkgYmUgc2hhcmVkIHdpdGggb3RoZXIKKyAgICAgICAgICAgICMgZXh0ZW5zaW9ucywgaXQgaXMgYSByZWZlcmVuY2UgdG8gdGhlIG9yaWdpbmFsIGxpc3QKKyAgICAgICAgICAgIHJldHVybiBleHQubGlicmFyaWVzICsgW3B5dGhvbmxpYl0KKyAgICAgICAgZWxpZiBzeXMucGxhdGZvcm1bOjZdID09ICJjeWd3aW4iOgorICAgICAgICAgICAgdGVtcGxhdGUgPSAicHl0aG9uJWQuJWQiCisgICAgICAgICAgICBweXRob25saWIgPSB0ZW1wbGF0ZSAlIHN5cy52ZXJzaW9uX2luZm9bOjJdCisgICAgICAgICAgICAjIGRvbid0IGV4dGVuZCBleHQubGlicmFyaWVzLCBpdCBtYXkgYmUgc2hhcmVkIHdpdGggb3RoZXIKKyAgICAgICAgICAgICMgZXh0ZW5zaW9ucywgaXQgaXMgYSByZWZlcmVuY2UgdG8gdGhlIG9yaWdpbmFsIGxpc3QKKyAgICAgICAgICAgIHJldHVybiBleHQubGlicmFyaWVzICsgW3B5dGhvbmxpYl0KKyAgICAgICAgZWxpZiBzeXMucGxhdGZvcm1bOjZdID09ICJhdGhlb3MiOgorICAgICAgICAgICAgdGVtcGxhdGUgPSAicHl0aG9uJWQuJWQiCisgICAgICAgICAgICBweXRob25saWIgPSB0ZW1wbGF0ZSAlIHN5cy52ZXJzaW9uX2luZm9bOjJdCisgICAgICAgICAgICAjIEdldCBTSExJQlMgZnJvbSBNYWtlZmlsZQorICAgICAgICAgICAgZXh0cmEgPSBbXQorICAgICAgICAgICAgZm9yIGxpYiBpbiBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ1NITElCUycpLnNwbGl0KCk6CisgICAgICAgICAgICAgICAgaWYgbGliLnN0YXJ0c3dpdGgoJy1sJyk6CisgICAgICAgICAgICAgICAgICAgIGV4dHJhLmFwcGVuZChsaWJbMjpdKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGV4dHJhLmFwcGVuZChsaWIpCisgICAgICAgICAgICAjIGRvbid0IGV4dGVuZCBleHQubGlicmFyaWVzLCBpdCBtYXkgYmUgc2hhcmVkIHdpdGggb3RoZXIKKyAgICAgICAgICAgICMgZXh0ZW5zaW9ucywgaXQgaXMgYSByZWZlcmVuY2UgdG8gdGhlIG9yaWdpbmFsIGxpc3QKKyAgICAgICAgICAgIHJldHVybiBleHQubGlicmFyaWVzICsgW3B5dGhvbmxpYiwgIm0iXSArIGV4dHJhCisKKyAgICAgICAgZWxpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6CisgICAgICAgICAgICAjIERvbid0IHVzZSB0aGUgZGVmYXVsdCBjb2RlIGJlbG93CisgICAgICAgICAgICByZXR1cm4gZXh0LmxpYnJhcmllcworCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ1B5X0VOQUJMRV9TSEFSRUQnKToKKyAgICAgICAgICAgICAgICB0ZW1wbGF0ZSA9ICdweXRob24lZC4lZCcgKyBzeXMuYWJpZmxhZ3MKKyAgICAgICAgICAgICAgICBweXRob25saWIgPSB0ZW1wbGF0ZSAlIHN5cy52ZXJzaW9uX2luZm9bOjJdCisgICAgICAgICAgICAgICAgcmV0dXJuIGV4dC5saWJyYXJpZXMgKyBbcHl0aG9ubGliXQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByZXR1cm4gZXh0LmxpYnJhcmllcwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX3B5LnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX3B5LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAwNjIxNDAKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvYnVpbGRfcHkucHkKQEAgLTAsMCArMSwzOTIgQEAKKyIiIkJ1aWxkIHB1cmUgUHl0aG9uIG1vZHVsZXMgKGp1c3QgY29weSB0byBidWlsZCBkaXJlY3RvcnkpLiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBpbXAKK2Zyb20gZ2xvYiBpbXBvcnQgZ2xvYgorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvciwgUGFja2FnaW5nRmlsZUVycm9yCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBjb252ZXJ0X3BhdGgKK2Zyb20gcGFja2FnaW5nLmNvbXBhdCBpbXBvcnQgTWl4aW4ydG8zCisKKyMgbWFya2luZyBwdWJsaWMgQVBJcworX19hbGxfXyA9IFsnYnVpbGRfcHknXQorCisKK2NsYXNzIGJ1aWxkX3B5KENvbW1hbmQsIE1peGluMnRvMyk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJidWlsZCBwdXJlIFB5dGhvbiBtb2R1bGVzIChjb3B5IHRvIGJ1aWxkIGRpcmVjdG9yeSkiCisKKyAgICAjIFRoZSBvcHRpb25zIGZvciBjb250cm9sbGluZyBieXRlIGNvbXBpbGF0aW9uIGFyZSB0d28gaW5kZXBlbmRlbnQgc2V0czsKKyAgICAjIG1vcmUgaW5mbyBpbiBpbnN0YWxsX2xpYiBvciB0aGUgcmVTVCBkb2NzCisKKyAgICB1c2VyX29wdGlvbnMgPSBbCisgICAgICAgICgnYnVpbGQtbGliPScsICdkJywgImRpcmVjdG9yeSB0byBidWlsZCAoY29weSkgdG8iKSwKKyAgICAgICAgKCdjb21waWxlJywgJ2MnLCAiY29tcGlsZSAucHkgdG8gLnB5YyIpLAorICAgICAgICAoJ25vLWNvbXBpbGUnLCBOb25lLCAiZG9uJ3QgY29tcGlsZSAucHkgZmlsZXMgW2RlZmF1bHRdIiksCisgICAgICAgICgnb3B0aW1pemU9JywgJ08nLAorICAgICAgICAgImFsc28gY29tcGlsZSB3aXRoIG9wdGltaXphdGlvbjogLU8xIGZvciBcInB5dGhvbiAtT1wiLCAiCisgICAgICAgICAiLU8yIGZvciBcInB5dGhvbiAtT09cIiwgYW5kIC1PMCB0byBkaXNhYmxlIFtkZWZhdWx0OiAtTzBdIiksCisgICAgICAgICgnZm9yY2UnLCAnZicsICJmb3JjaWJseSBidWlsZCBldmVyeXRoaW5nIChpZ25vcmUgZmlsZSB0aW1lc3RhbXBzKSIpLAorICAgICAgICAoJ3VzZS0ydG8zJywgTm9uZSwKKyAgICAgICAgICJ1c2UgMnRvMyB0byBtYWtlIHNvdXJjZSBweXRob24gMy54IGNvbXBhdGlibGUiKSwKKyAgICAgICAgKCdjb252ZXJ0LTJ0bzMtZG9jdGVzdHMnLCBOb25lLAorICAgICAgICAgInVzZSAydG8zIHRvIGNvbnZlcnQgZG9jdGVzdHMgaW4gc2VwYXJhdGUgdGV4dCBmaWxlcyIpLAorICAgICAgICAoJ3VzZS0ydG8zLWZpeGVycycsIE5vbmUsCisgICAgICAgICAibGlzdCBhZGRpdGlvbmFsIGZpeGVycyBvcHRlZCBmb3IgZHVyaW5nIDJ0bzMgY29udmVyc2lvbiIpLAorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2NvbXBpbGUnLCAnZm9yY2UnXQorCisgICAgbmVnYXRpdmVfb3B0ID0geyduby1jb21waWxlJzogJ2NvbXBpbGUnfQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5idWlsZF9saWIgPSBOb25lCisgICAgICAgIHNlbGYucHlfbW9kdWxlcyA9IE5vbmUKKyAgICAgICAgc2VsZi5wYWNrYWdlID0gTm9uZQorICAgICAgICBzZWxmLnBhY2thZ2VfZGF0YSA9IE5vbmUKKyAgICAgICAgc2VsZi5wYWNrYWdlX2RpciA9IE5vbmUKKyAgICAgICAgc2VsZi5jb21waWxlID0gRmFsc2UKKyAgICAgICAgc2VsZi5vcHRpbWl6ZSA9IDAKKyAgICAgICAgc2VsZi5mb3JjZSA9IE5vbmUKKyAgICAgICAgc2VsZi5fdXBkYXRlZF9maWxlcyA9IFtdCisgICAgICAgIHNlbGYuX2RvY3Rlc3RzXzJ0bzMgPSBbXQorICAgICAgICBzZWxmLnVzZV8ydG8zID0gRmFsc2UKKyAgICAgICAgc2VsZi5jb252ZXJ0XzJ0bzNfZG9jdGVzdHMgPSBOb25lCisgICAgICAgIHNlbGYudXNlXzJ0bzNfZml4ZXJzID0gTm9uZQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdidWlsZCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd1c2VfMnRvMycsICd1c2VfMnRvM19maXhlcnMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY29udmVydF8ydG8zX2RvY3Rlc3RzJywgJ2J1aWxkX2xpYicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb3JjZScpCisKKyAgICAgICAgIyBHZXQgdGhlIGRpc3RyaWJ1dGlvbiBvcHRpb25zIHRoYXQgYXJlIGFsaWFzZXMgZm9yIGJ1aWxkX3B5CisgICAgICAgICMgb3B0aW9ucyAtLSBsaXN0IG9mIHBhY2thZ2VzIGFuZCBsaXN0IG9mIG1vZHVsZXMuCisgICAgICAgIHNlbGYucGFja2FnZXMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5wYWNrYWdlcworICAgICAgICBzZWxmLnB5X21vZHVsZXMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5weV9tb2R1bGVzCisgICAgICAgIHNlbGYucGFja2FnZV9kYXRhID0gc2VsZi5kaXN0cmlidXRpb24ucGFja2FnZV9kYXRhCisgICAgICAgIHNlbGYucGFja2FnZV9kaXIgPSBOb25lCisgICAgICAgIGlmIHNlbGYuZGlzdHJpYnV0aW9uLnBhY2thZ2VfZGlyIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5wYWNrYWdlX2RpciA9IGNvbnZlcnRfcGF0aChzZWxmLmRpc3RyaWJ1dGlvbi5wYWNrYWdlX2RpcikKKyAgICAgICAgc2VsZi5kYXRhX2ZpbGVzID0gc2VsZi5nZXRfZGF0YV9maWxlcygpCisKKyAgICAgICAgIyBJY2ssIGNvcGllZCBzdHJhaWdodCBmcm9tIGluc3RhbGxfbGliLnB5IChmYW5jeV9nZXRvcHQgbmVlZHMgYQorICAgICAgICAjIHR5cGUgc3lzdGVtISAgSGVsbCwgKmV2ZXJ5dGhpbmcqIG5lZWRzIGEgdHlwZSBzeXN0ZW0hISEpCisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKHNlbGYub3B0aW1pemUsIGludCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5vcHRpbWl6ZSA9IGludChzZWxmLm9wdGltaXplKQorICAgICAgICAgICAgICAgIGFzc2VydCAwIDw9IHNlbGYub3B0aW1pemUgPD0gMgorICAgICAgICAgICAgZXhjZXB0IChWYWx1ZUVycm9yLCBBc3NlcnRpb25FcnJvcik6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoIm9wdGltaXplIG11c3QgYmUgMCwgMSwgb3IgMiIpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICAjIFhYWCBjb3B5X2ZpbGUgYnkgZGVmYXVsdCBwcmVzZXJ2ZXMgYXRpbWUgYW5kIG10aW1lLiAgSU1ITyB0aGlzIGlzCisgICAgICAgICMgdGhlIHJpZ2h0IHRoaW5nIHRvIGRvLCBidXQgcGVyaGFwcyBpdCBzaG91bGQgYmUgYW4gb3B0aW9uIC0tIGluCisgICAgICAgICMgcGFydGljdWxhciwgYSBzaXRlIGFkbWluaXN0cmF0b3IgbWlnaHQgd2FudCBpbnN0YWxsZWQgZmlsZXMgdG8KKyAgICAgICAgIyByZWZsZWN0IHRoZSB0aW1lIG9mIGluc3RhbGxhdGlvbiByYXRoZXIgdGhhbiB0aGUgbGFzdAorICAgICAgICAjIG1vZGlmaWNhdGlvbiB0aW1lIGJlZm9yZSB0aGUgaW5zdGFsbGVkIHJlbGVhc2UuCisKKyAgICAgICAgIyBYWFggY29weV9maWxlIGJ5IGRlZmF1bHQgcHJlc2VydmVzIG1vZGUsIHdoaWNoIGFwcGVhcnMgdG8gYmUgdGhlCisgICAgICAgICMgd3JvbmcgdGhpbmcgdG8gZG86IGlmIGEgZmlsZSBpcyByZWFkLW9ubHkgaW4gdGhlIHdvcmtpbmcKKyAgICAgICAgIyBkaXJlY3RvcnksIHdlIHdhbnQgaXQgdG8gYmUgaW5zdGFsbGVkIHJlYWQvd3JpdGUgc28gdGhhdCB0aGUgbmV4dAorICAgICAgICAjIGluc3RhbGxhdGlvbiBvZiB0aGUgc2FtZSBtb2R1bGUgZGlzdHJpYnV0aW9uIGNhbiBvdmVyd3JpdGUgaXQKKyAgICAgICAgIyB3aXRob3V0IHByb2JsZW1zLiAgKFRoaXMgbWlnaHQgYmUgYSBVbml4LXNwZWNpZmljIGlzc3VlLikgIFRodXMKKyAgICAgICAgIyB3ZSB0dXJuIG9mZiAncHJlc2VydmVfbW9kZScgd2hlbiBjb3B5aW5nIHRvIHRoZSBidWlsZCBkaXJlY3RvcnksCisgICAgICAgICMgc2luY2UgdGhlIGJ1aWxkIGRpcmVjdG9yeSBpcyBzdXBwb3NlZCB0byBiZSBleGFjdGx5IHdoYXQgdGhlCisgICAgICAgICMgaW5zdGFsbGF0aW9uIHdpbGwgbG9vayBsaWtlIChpZS4gd2UgcHJlc2VydmUgbW9kZSB3aGVuCisgICAgICAgICMgaW5zdGFsbGluZykuCisKKyAgICAgICAgIyBUd28gb3B0aW9ucyBjb250cm9sIHdoaWNoIG1vZHVsZXMgd2lsbCBiZSBpbnN0YWxsZWQ6ICdwYWNrYWdlcycKKyAgICAgICAgIyBhbmQgJ3B5X21vZHVsZXMnLiAgVGhlIGZvcm1lciBsZXRzIHVzIHdvcmsgd2l0aCB3aG9sZSBwYWNrYWdlcywgbm90CisgICAgICAgICMgc3BlY2lmeWluZyBpbmRpdmlkdWFsIG1vZHVsZXMgYXQgYWxsOyB0aGUgbGF0dGVyIGlzIGZvcgorICAgICAgICAjIHNwZWNpZnlpbmcgbW9kdWxlcyBvbmUtYXQtYS10aW1lLgorCisgICAgICAgIGlmIHNlbGYucHlfbW9kdWxlczoKKyAgICAgICAgICAgIHNlbGYuYnVpbGRfbW9kdWxlcygpCisgICAgICAgIGlmIHNlbGYucGFja2FnZXM6CisgICAgICAgICAgICBzZWxmLmJ1aWxkX3BhY2thZ2VzKCkKKyAgICAgICAgICAgIHNlbGYuYnVpbGRfcGFja2FnZV9kYXRhKCkKKworICAgICAgICBpZiBzZWxmLnVzZV8ydG8zIGFuZCBzZWxmLl91cGRhdGVkX2ZpbGVzOgorICAgICAgICAgICAgc2VsZi5ydW5fMnRvMyhzZWxmLl91cGRhdGVkX2ZpbGVzLCBzZWxmLl9kb2N0ZXN0c18ydG8zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnVzZV8ydG8zX2ZpeGVycykKKworICAgICAgICBzZWxmLmJ5dGVfY29tcGlsZShzZWxmLmdldF9vdXRwdXRzKGluY2x1ZGVfYnl0ZWNvZGU9RmFsc2UpLAorICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVmaXg9c2VsZi5idWlsZF9saWIpCisKKyAgICAjIC0tIFRvcC1sZXZlbCB3b3JrZXIgZnVuY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgZGVmIGdldF9kYXRhX2ZpbGVzKHNlbGYpOgorICAgICAgICAiIiJHZW5lcmF0ZSBsaXN0IG9mICcocGFja2FnZSxzcmNfZGlyLGJ1aWxkX2RpcixmaWxlbmFtZXMpJyB0dXBsZXMuCisKKyAgICAgICAgSGVscGVyIGZ1bmN0aW9uIGZvciBmaW5hbGl6ZV9vcHRpb25zLgorICAgICAgICAiIiIKKyAgICAgICAgZGF0YSA9IFtdCisgICAgICAgIGlmIG5vdCBzZWxmLnBhY2thZ2VzOgorICAgICAgICAgICAgcmV0dXJuIGRhdGEKKyAgICAgICAgZm9yIHBhY2thZ2UgaW4gc2VsZi5wYWNrYWdlczoKKyAgICAgICAgICAgICMgTG9jYXRlIHBhY2thZ2Ugc291cmNlIGRpcmVjdG9yeQorICAgICAgICAgICAgc3JjX2RpciA9IHNlbGYuZ2V0X3BhY2thZ2VfZGlyKHBhY2thZ2UpCisKKyAgICAgICAgICAgICMgQ29tcHV0ZSBwYWNrYWdlIGJ1aWxkIGRpcmVjdG9yeQorICAgICAgICAgICAgYnVpbGRfZGlyID0gb3MucGF0aC5qb2luKCooW3NlbGYuYnVpbGRfbGliXSArIHBhY2thZ2Uuc3BsaXQoJy4nKSkpCisKKyAgICAgICAgICAgICMgTGVuZ3RoIG9mIHBhdGggdG8gc3RyaXAgZnJvbSBmb3VuZCBmaWxlcworICAgICAgICAgICAgcGxlbiA9IDAKKyAgICAgICAgICAgIGlmIHNyY19kaXI6CisgICAgICAgICAgICAgICAgcGxlbiA9IGxlbihzcmNfZGlyKSArIDEKKworICAgICAgICAgICAgIyBTdHJpcCBkaXJlY3RvcnkgZnJvbSBnbG9iYmVkIGZpbGVuYW1lcworICAgICAgICAgICAgZmlsZW5hbWVzID0gWworICAgICAgICAgICAgICAgIGZpbGVbcGxlbjpdIGZvciBmaWxlIGluIHNlbGYuZmluZF9kYXRhX2ZpbGVzKHBhY2thZ2UsIHNyY19kaXIpCisgICAgICAgICAgICAgICAgXQorICAgICAgICAgICAgZGF0YS5hcHBlbmQoKHBhY2thZ2UsIHNyY19kaXIsIGJ1aWxkX2RpciwgZmlsZW5hbWVzKSkKKyAgICAgICAgcmV0dXJuIGRhdGEKKworICAgIGRlZiBmaW5kX2RhdGFfZmlsZXMoc2VsZiwgcGFja2FnZSwgc3JjX2Rpcik6CisgICAgICAgICIiIlJldHVybiBmaWxlbmFtZXMgZm9yIHBhY2thZ2UncyBkYXRhIGZpbGVzIGluICdzcmNfZGlyJy4KKworICAgICAgICBIZWxwZXIgZnVuY3Rpb24gZm9yIGdldF9kYXRhX2ZpbGVzLgorICAgICAgICAiIiIKKyAgICAgICAgZ2xvYnMgPSAoc2VsZi5wYWNrYWdlX2RhdGEuZ2V0KCcnLCBbXSkKKyAgICAgICAgICAgICAgICAgKyBzZWxmLnBhY2thZ2VfZGF0YS5nZXQocGFja2FnZSwgW10pKQorICAgICAgICBmaWxlcyA9IFtdCisgICAgICAgIGZvciBwYXR0ZXJuIGluIGdsb2JzOgorICAgICAgICAgICAgIyBFYWNoIHBhdHRlcm4gaGFzIHRvIGJlIGNvbnZlcnRlZCB0byBhIHBsYXRmb3JtLXNwZWNpZmljIHBhdGgKKyAgICAgICAgICAgIGZpbGVsaXN0ID0gZ2xvYihvcy5wYXRoLmpvaW4oc3JjX2RpciwgY29udmVydF9wYXRoKHBhdHRlcm4pKSkKKyAgICAgICAgICAgICMgRmlsZXMgdGhhdCBtYXRjaCBtb3JlIHRoYW4gb25lIHBhdHRlcm4gYXJlIG9ubHkgYWRkZWQgb25jZQorICAgICAgICAgICAgZmlsZXMuZXh0ZW5kKGZuIGZvciBmbiBpbiBmaWxlbGlzdCBpZiBmbiBub3QgaW4gZmlsZXMpCisgICAgICAgIHJldHVybiBmaWxlcworCisgICAgZGVmIGJ1aWxkX3BhY2thZ2VfZGF0YShzZWxmKToKKyAgICAgICAgIiIiQ29weSBkYXRhIGZpbGVzIGludG8gYnVpbGQgZGlyZWN0b3J5LgorCisgICAgICAgIEhlbHBlciBmdW5jdGlvbiBmb3IgcnVuLgorICAgICAgICAiIiIKKyAgICAgICAgIyBGSVhNRSBhZGQgdGVzdHMgZm9yIHRoaXMgbWV0aG9kCisgICAgICAgIGZvciBwYWNrYWdlLCBzcmNfZGlyLCBidWlsZF9kaXIsIGZpbGVuYW1lcyBpbiBzZWxmLmRhdGFfZmlsZXM6CisgICAgICAgICAgICBmb3IgZmlsZW5hbWUgaW4gZmlsZW5hbWVzOgorICAgICAgICAgICAgICAgIHRhcmdldCA9IG9zLnBhdGguam9pbihidWlsZF9kaXIsIGZpbGVuYW1lKQorICAgICAgICAgICAgICAgIHNyY2ZpbGUgPSBvcy5wYXRoLmpvaW4oc3JjX2RpciwgZmlsZW5hbWUpCisgICAgICAgICAgICAgICAgc2VsZi5ta3BhdGgob3MucGF0aC5kaXJuYW1lKHRhcmdldCkpCisgICAgICAgICAgICAgICAgb3V0ZiwgY29waWVkID0gc2VsZi5jb3B5X2ZpbGUoc3JjZmlsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXQsIHByZXNlcnZlX21vZGU9RmFsc2UpCisgICAgICAgICAgICAgICAgZG9jdGVzdHMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5jb252ZXJ0XzJ0bzNfZG9jdGVzdHMKKyAgICAgICAgICAgICAgICBpZiBjb3BpZWQgYW5kIHNyY2ZpbGUgaW4gZG9jdGVzdHM6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2RvY3Rlc3RzXzJ0bzMuYXBwZW5kKG91dGYpCisKKyAgICAjIFhYWCAtIHRoaXMgc2hvdWxkIGJlIG1vdmVkIHRvIHRoZSBEaXN0cmlidXRpb24gY2xhc3MgYXMgaXQgaXMgbm90CisgICAgIyBvbmx5IG5lZWRlZCBmb3IgYnVpbGRfcHkuIEl0IGFsc28gaGFzIG5vIGRlcGVuZGVuY2llcyBvbiB0aGlzIGNsYXNzLgorICAgIGRlZiBnZXRfcGFja2FnZV9kaXIoc2VsZiwgcGFja2FnZSk6CisgICAgICAgICIiIlJldHVybiB0aGUgZGlyZWN0b3J5LCByZWxhdGl2ZSB0byB0aGUgdG9wIG9mIHRoZSBzb3VyY2UKKyAgICAgICAgZGlzdHJpYnV0aW9uLCB3aGVyZSBwYWNrYWdlICdwYWNrYWdlJyBzaG91bGQgYmUgZm91bmQKKyAgICAgICAgKGF0IGxlYXN0IGFjY29yZGluZyB0byB0aGUgJ3BhY2thZ2VfZGlyJyBvcHRpb24sIGlmIGFueSkuCisgICAgICAgICIiIgorICAgICAgICBwYXRoID0gcGFja2FnZS5zcGxpdCgnLicpCisgICAgICAgIGlmIHNlbGYucGFja2FnZV9kaXIgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBwYXRoLmluc2VydCgwLCBzZWxmLnBhY2thZ2VfZGlyKQorCisgICAgICAgIGlmIGxlbihwYXRoKSA+IDA6CisgICAgICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKCpwYXRoKQorCisgICAgICAgIHJldHVybiAnJworCisgICAgZGVmIGNoZWNrX3BhY2thZ2Uoc2VsZiwgcGFja2FnZSwgcGFja2FnZV9kaXIpOgorICAgICAgICAiIiJIZWxwZXIgZnVuY3Rpb24gZm9yIGZpbmRfcGFja2FnZV9tb2R1bGVzIGFuZCBmaW5kX21vZHVsZXMuIiIiCisgICAgICAgICMgRW1wdHkgZGlyIG5hbWUgbWVhbnMgY3VycmVudCBkaXJlY3RvcnksIHdoaWNoIHdlIGNhbiBwcm9iYWJseQorICAgICAgICAjIGFzc3VtZSBleGlzdHMuICBBbHNvLCBvcy5wYXRoLmV4aXN0cyBhbmQgaXNkaXIgZG9uJ3Qga25vdyBhYm91dAorICAgICAgICAjIG15ICJlbXB0eSBzdHJpbmcgbWVhbnMgY3VycmVudCBkaXIiIGNvbnZlbnRpb24sIHNvIHdlIGhhdmUgdG8KKyAgICAgICAgIyBjaXJjdW12ZW50IHRoZW0uCisgICAgICAgIGlmIHBhY2thZ2VfZGlyICE9ICIiOgorICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHBhY2thZ2VfZGlyKToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdGaWxlRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgInBhY2thZ2UgZGlyZWN0b3J5ICclcycgZG9lcyBub3QgZXhpc3QiICUgcGFja2FnZV9kaXIpCisgICAgICAgICAgICBpZiBub3Qgb3MucGF0aC5pc2RpcihwYWNrYWdlX2Rpcik6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nRmlsZUVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAic3VwcG9zZWQgcGFja2FnZSBkaXJlY3RvcnkgJyVzJyBleGlzdHMsICIKKyAgICAgICAgICAgICAgICAgICAgICAgImJ1dCBpcyBub3QgYSBkaXJlY3RvcnkiICUgcGFja2FnZV9kaXIpCisKKyAgICAgICAgIyBSZXF1aXJlIF9faW5pdF9fLnB5IGZvciBhbGwgYnV0IHRoZSAicm9vdCBwYWNrYWdlIgorICAgICAgICBpZiBwYWNrYWdlOgorICAgICAgICAgICAgaW5pdF9weSA9IG9zLnBhdGguam9pbihwYWNrYWdlX2RpciwgIl9faW5pdF9fLnB5IikKKyAgICAgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKGluaXRfcHkpOgorICAgICAgICAgICAgICAgIHJldHVybiBpbml0X3B5CisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJwYWNrYWdlIGluaXQgZmlsZSAlciBub3QgZm91bmQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIob3Igbm90IGEgcmVndWxhciBmaWxlKSIsIGluaXRfcHkpCisKKyAgICAgICAgIyBFaXRoZXIgbm90IGluIGEgcGFja2FnZSBhdCBhbGwgKF9faW5pdF9fLnB5IG5vdCBleHBlY3RlZCksIG9yCisgICAgICAgICMgX19pbml0X18ucHkgZG9lc24ndCBleGlzdCAtLSBzbyBkb24ndCByZXR1cm4gdGhlIGZpbGVuYW1lLgorICAgICAgICByZXR1cm4gTm9uZQorCisgICAgZGVmIGNoZWNrX21vZHVsZShzZWxmLCBtb2R1bGUsIG1vZHVsZV9maWxlKToKKyAgICAgICAgaWYgbm90IG9zLnBhdGguaXNmaWxlKG1vZHVsZV9maWxlKToKKyAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJmaWxlICVyIChmb3IgbW9kdWxlICVyKSBub3QgZm91bmQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX2ZpbGUsIG1vZHVsZSkKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIFRydWUKKworICAgIGRlZiBmaW5kX3BhY2thZ2VfbW9kdWxlcyhzZWxmLCBwYWNrYWdlLCBwYWNrYWdlX2Rpcik6CisgICAgICAgIHNlbGYuY2hlY2tfcGFja2FnZShwYWNrYWdlLCBwYWNrYWdlX2RpcikKKyAgICAgICAgbW9kdWxlX2ZpbGVzID0gZ2xvYihvcy5wYXRoLmpvaW4ocGFja2FnZV9kaXIsICIqLnB5IikpCisgICAgICAgIG1vZHVsZXMgPSBbXQorICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5zY3JpcHRfbmFtZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNldHVwX3NjcmlwdCA9IG9zLnBhdGguYWJzcGF0aChzZWxmLmRpc3RyaWJ1dGlvbi5zY3JpcHRfbmFtZSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNldHVwX3NjcmlwdCA9IE5vbmUKKworICAgICAgICBmb3IgZiBpbiBtb2R1bGVfZmlsZXM6CisgICAgICAgICAgICBhYnNfZiA9IG9zLnBhdGguYWJzcGF0aChmKQorICAgICAgICAgICAgaWYgYWJzX2YgIT0gc2V0dXBfc2NyaXB0OgorICAgICAgICAgICAgICAgIG1vZHVsZSA9IG9zLnBhdGguc3BsaXRleHQob3MucGF0aC5iYXNlbmFtZShmKSlbMF0KKyAgICAgICAgICAgICAgICBtb2R1bGVzLmFwcGVuZCgocGFja2FnZSwgbW9kdWxlLCBmKSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCJleGNsdWRpbmcgJXIiLCBzZXR1cF9zY3JpcHQpCisgICAgICAgIHJldHVybiBtb2R1bGVzCisKKyAgICBkZWYgZmluZF9tb2R1bGVzKHNlbGYpOgorICAgICAgICAiIiJGaW5kcyBpbmRpdmlkdWFsbHktc3BlY2lmaWVkIFB5dGhvbiBtb2R1bGVzLCBpZS4gdGhvc2UgbGlzdGVkIGJ5CisgICAgICAgIG1vZHVsZSBuYW1lIGluICdzZWxmLnB5X21vZHVsZXMnLiAgUmV0dXJucyBhIGxpc3Qgb2YgdHVwbGVzIChwYWNrYWdlLAorICAgICAgICBtb2R1bGVfYmFzZSwgZmlsZW5hbWUpOiAncGFja2FnZScgaXMgYSB0dXBsZSBvZiB0aGUgcGF0aCB0aHJvdWdoCisgICAgICAgIHBhY2thZ2Utc3BhY2UgdG8gdGhlIG1vZHVsZTsgJ21vZHVsZV9iYXNlJyBpcyB0aGUgYmFyZSAobm8KKyAgICAgICAgcGFja2FnZXMsIG5vIGRvdHMpIG1vZHVsZSBuYW1lLCBhbmQgJ2ZpbGVuYW1lJyBpcyB0aGUgcGF0aCB0byB0aGUKKyAgICAgICAgIi5weSIgZmlsZSAocmVsYXRpdmUgdG8gdGhlIGRpc3RyaWJ1dGlvbiByb290KSB0aGF0IGltcGxlbWVudHMgdGhlCisgICAgICAgIG1vZHVsZS4KKyAgICAgICAgIiIiCisgICAgICAgICMgTWFwIHBhY2thZ2UgbmFtZXMgdG8gdHVwbGVzIG9mIHVzZWZ1bCBpbmZvIGFib3V0IHRoZSBwYWNrYWdlOgorICAgICAgICAjICAgIChwYWNrYWdlX2RpciwgY2hlY2tlZCkKKyAgICAgICAgIyBwYWNrYWdlX2RpciAtIHRoZSBkaXJlY3Rvcnkgd2hlcmUgd2UnbGwgZmluZCBzb3VyY2UgZmlsZXMgZm9yCisgICAgICAgICMgICB0aGlzIHBhY2thZ2UKKyAgICAgICAgIyBjaGVja2VkIC0gdHJ1ZSBpZiB3ZSBoYXZlIGNoZWNrZWQgdGhhdCB0aGUgcGFja2FnZSBkaXJlY3RvcnkKKyAgICAgICAgIyAgIGlzIHZhbGlkIChleGlzdHMsIGNvbnRhaW5zIF9faW5pdF9fLnB5LCAuLi4gPykKKyAgICAgICAgcGFja2FnZXMgPSB7fQorCisgICAgICAgICMgTGlzdCBvZiAocGFja2FnZSwgbW9kdWxlLCBmaWxlbmFtZSkgdHVwbGVzIHRvIHJldHVybgorICAgICAgICBtb2R1bGVzID0gW10KKworICAgICAgICAjIFdlIHRyZWF0IG1vZHVsZXMtaW4tcGFja2FnZXMgYWxtb3N0IHRoZSBzYW1lIGFzIHRvcGxldmVsIG1vZHVsZXMsCisgICAgICAgICMganVzdCB0aGUgInBhY2thZ2UiIGZvciBhIHRvcGxldmVsIGlzIGVtcHR5IChlaXRoZXIgYW4gZW1wdHkKKyAgICAgICAgIyBzdHJpbmcgb3IgZW1wdHkgbGlzdCwgZGVwZW5kaW5nIG9uIGNvbnRleHQpLiAgRGlmZmVyZW5jZXM6CisgICAgICAgICMgICAtIGRvbid0IGNoZWNrIGZvciBfX2luaXRfXy5weSBpbiBkaXJlY3RvcnkgZm9yIGVtcHR5IHBhY2thZ2UKKyAgICAgICAgZm9yIG1vZHVsZSBpbiBzZWxmLnB5X21vZHVsZXM6CisgICAgICAgICAgICBwYXRoID0gbW9kdWxlLnNwbGl0KCcuJykKKyAgICAgICAgICAgIHBhY2thZ2UgPSAnLicuam9pbihwYXRoWzA6LTFdKQorICAgICAgICAgICAgbW9kdWxlX2Jhc2UgPSBwYXRoWy0xXQorCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgcGFja2FnZV9kaXIsIGNoZWNrZWQgPSBwYWNrYWdlc1twYWNrYWdlXQorICAgICAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgICAgIHBhY2thZ2VfZGlyID0gc2VsZi5nZXRfcGFja2FnZV9kaXIocGFja2FnZSkKKyAgICAgICAgICAgICAgICBjaGVja2VkID0gRmFsc2UKKworICAgICAgICAgICAgaWYgbm90IGNoZWNrZWQ6CisgICAgICAgICAgICAgICAgaW5pdF9weSA9IHNlbGYuY2hlY2tfcGFja2FnZShwYWNrYWdlLCBwYWNrYWdlX2RpcikKKyAgICAgICAgICAgICAgICBwYWNrYWdlc1twYWNrYWdlXSA9IChwYWNrYWdlX2RpciwgMSkKKyAgICAgICAgICAgICAgICBpZiBpbml0X3B5OgorICAgICAgICAgICAgICAgICAgICBtb2R1bGVzLmFwcGVuZCgocGFja2FnZSwgIl9faW5pdF9fIiwgaW5pdF9weSkpCisKKyAgICAgICAgICAgICMgWFhYIHBlcmhhcHMgd2Ugc2hvdWxkIGFsc28gY2hlY2sgZm9yIGp1c3QgLnB5YyBmaWxlcworICAgICAgICAgICAgIyAoc28gZ3JlZWR5IGNsb3NlZC1zb3VyY2UgYmFzdGFyZHMgY2FuIGRpc3RyaWJ1dGUgUHl0aG9uCisgICAgICAgICAgICAjIG1vZHVsZXMgdG9vKQorICAgICAgICAgICAgbW9kdWxlX2ZpbGUgPSBvcy5wYXRoLmpvaW4ocGFja2FnZV9kaXIsIG1vZHVsZV9iYXNlICsgIi5weSIpCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5jaGVja19tb2R1bGUobW9kdWxlLCBtb2R1bGVfZmlsZSk6CisgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgbW9kdWxlcy5hcHBlbmQoKHBhY2thZ2UsIG1vZHVsZV9iYXNlLCBtb2R1bGVfZmlsZSkpCisKKyAgICAgICAgcmV0dXJuIG1vZHVsZXMKKworICAgIGRlZiBmaW5kX2FsbF9tb2R1bGVzKHNlbGYpOgorICAgICAgICAiIiJDb21wdXRlIHRoZSBsaXN0IG9mIGFsbCBtb2R1bGVzIHRoYXQgd2lsbCBiZSBidWlsdCwgd2hldGhlcgorICAgICAgICB0aGV5IGFyZSBzcGVjaWZpZWQgb25lLW1vZHVsZS1hdC1hLXRpbWUgKCdzZWxmLnB5X21vZHVsZXMnKSBvcgorICAgICAgICBieSB3aG9sZSBwYWNrYWdlcyAoJ3NlbGYucGFja2FnZXMnKS4gIFJldHVybiBhIGxpc3Qgb2YgdHVwbGVzCisgICAgICAgIChwYWNrYWdlLCBtb2R1bGUsIG1vZHVsZV9maWxlKSwganVzdCBsaWtlICdmaW5kX21vZHVsZXMoKScgYW5kCisgICAgICAgICdmaW5kX3BhY2thZ2VfbW9kdWxlcygpJyBkby4iIiIKKyAgICAgICAgbW9kdWxlcyA9IFtdCisgICAgICAgIGlmIHNlbGYucHlfbW9kdWxlczoKKyAgICAgICAgICAgIG1vZHVsZXMuZXh0ZW5kKHNlbGYuZmluZF9tb2R1bGVzKCkpCisgICAgICAgIGlmIHNlbGYucGFja2FnZXM6CisgICAgICAgICAgICBmb3IgcGFja2FnZSBpbiBzZWxmLnBhY2thZ2VzOgorICAgICAgICAgICAgICAgIHBhY2thZ2VfZGlyID0gc2VsZi5nZXRfcGFja2FnZV9kaXIocGFja2FnZSkKKyAgICAgICAgICAgICAgICBtID0gc2VsZi5maW5kX3BhY2thZ2VfbW9kdWxlcyhwYWNrYWdlLCBwYWNrYWdlX2RpcikKKyAgICAgICAgICAgICAgICBtb2R1bGVzLmV4dGVuZChtKQorICAgICAgICByZXR1cm4gbW9kdWxlcworCisgICAgZGVmIGdldF9zb3VyY2VfZmlsZXMoc2VsZik6CisgICAgICAgIHNvdXJjZXMgPSBbbW9kdWxlWy0xXSBmb3IgbW9kdWxlIGluIHNlbGYuZmluZF9hbGxfbW9kdWxlcygpXQorICAgICAgICBzb3VyY2VzICs9IFsKKyAgICAgICAgICAgIG9zLnBhdGguam9pbihzcmNfZGlyLCBmaWxlbmFtZSkKKyAgICAgICAgICAgIGZvciBwYWNrYWdlLCBzcmNfZGlyLCBidWlsZF9kaXIsIGZpbGVuYW1lcyBpbiBzZWxmLmRhdGFfZmlsZXMKKyAgICAgICAgICAgIGZvciBmaWxlbmFtZSBpbiBmaWxlbmFtZXNdCisgICAgICAgIHJldHVybiBzb3VyY2VzCisKKyAgICBkZWYgZ2V0X21vZHVsZV9vdXRmaWxlKHNlbGYsIGJ1aWxkX2RpciwgcGFja2FnZSwgbW9kdWxlKToKKyAgICAgICAgb3V0ZmlsZV9wYXRoID0gW2J1aWxkX2Rpcl0gKyBsaXN0KHBhY2thZ2UpICsgW21vZHVsZSArICIucHkiXQorICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKCpvdXRmaWxlX3BhdGgpCisKKyAgICBkZWYgZ2V0X291dHB1dHMoc2VsZiwgaW5jbHVkZV9ieXRlY29kZT1UcnVlKToKKyAgICAgICAgbW9kdWxlcyA9IHNlbGYuZmluZF9hbGxfbW9kdWxlcygpCisgICAgICAgIG91dHB1dHMgPSBbXQorICAgICAgICBmb3IgcGFja2FnZSwgbW9kdWxlLCBtb2R1bGVfZmlsZSBpbiBtb2R1bGVzOgorICAgICAgICAgICAgcGFja2FnZSA9IHBhY2thZ2Uuc3BsaXQoJy4nKQorICAgICAgICAgICAgZmlsZW5hbWUgPSBzZWxmLmdldF9tb2R1bGVfb3V0ZmlsZShzZWxmLmJ1aWxkX2xpYiwgcGFja2FnZSwgbW9kdWxlKQorICAgICAgICAgICAgb3V0cHV0cy5hcHBlbmQoZmlsZW5hbWUpCisgICAgICAgICAgICBpZiBpbmNsdWRlX2J5dGVjb2RlOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuY29tcGlsZToKKyAgICAgICAgICAgICAgICAgICAgb3V0cHV0cy5hcHBlbmQoaW1wLmNhY2hlX2Zyb21fc291cmNlKGZpbGVuYW1lLCBUcnVlKSkKKyAgICAgICAgICAgICAgICBpZiBzZWxmLm9wdGltaXplOgorICAgICAgICAgICAgICAgICAgICBvdXRwdXRzLmFwcGVuZChpbXAuY2FjaGVfZnJvbV9zb3VyY2UoZmlsZW5hbWUsIEZhbHNlKSkKKworICAgICAgICBvdXRwdXRzICs9IFsKKyAgICAgICAgICAgIG9zLnBhdGguam9pbihidWlsZF9kaXIsIGZpbGVuYW1lKQorICAgICAgICAgICAgZm9yIHBhY2thZ2UsIHNyY19kaXIsIGJ1aWxkX2RpciwgZmlsZW5hbWVzIGluIHNlbGYuZGF0YV9maWxlcworICAgICAgICAgICAgZm9yIGZpbGVuYW1lIGluIGZpbGVuYW1lc10KKworICAgICAgICByZXR1cm4gb3V0cHV0cworCisgICAgZGVmIGJ1aWxkX21vZHVsZShzZWxmLCBtb2R1bGUsIG1vZHVsZV9maWxlLCBwYWNrYWdlKToKKyAgICAgICAgaWYgaXNpbnN0YW5jZShwYWNrYWdlLCBzdHIpOgorICAgICAgICAgICAgcGFja2FnZSA9IHBhY2thZ2Uuc3BsaXQoJy4nKQorICAgICAgICBlbGlmIG5vdCBpc2luc3RhbmNlKHBhY2thZ2UsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKAorICAgICAgICAgICAgICAgICAgIidwYWNrYWdlJyBtdXN0IGJlIGEgc3RyaW5nIChkb3Qtc2VwYXJhdGVkKSwgbGlzdCwgb3IgdHVwbGUiKQorCisgICAgICAgICMgTm93IHB1dCB0aGUgbW9kdWxlIHNvdXJjZSBmaWxlIGludG8gdGhlICJidWlsZCIgYXJlYSAtLSB0aGlzIGlzCisgICAgICAgICMgZWFzeSwgd2UganVzdCBjb3B5IGl0IHNvbWV3aGVyZSB1bmRlciBzZWxmLmJ1aWxkX2xpYiAodGhlIGJ1aWxkCisgICAgICAgICMgZGlyZWN0b3J5IGZvciBQeXRob24gc291cmNlKS4KKyAgICAgICAgb3V0ZmlsZSA9IHNlbGYuZ2V0X21vZHVsZV9vdXRmaWxlKHNlbGYuYnVpbGRfbGliLCBwYWNrYWdlLCBtb2R1bGUpCisgICAgICAgIGRpciA9IG9zLnBhdGguZGlybmFtZShvdXRmaWxlKQorICAgICAgICBzZWxmLm1rcGF0aChkaXIpCisgICAgICAgIHJldHVybiBzZWxmLmNvcHlfZmlsZShtb2R1bGVfZmlsZSwgb3V0ZmlsZSwgcHJlc2VydmVfbW9kZT1GYWxzZSkKKworICAgIGRlZiBidWlsZF9tb2R1bGVzKHNlbGYpOgorICAgICAgICBtb2R1bGVzID0gc2VsZi5maW5kX21vZHVsZXMoKQorICAgICAgICBmb3IgcGFja2FnZSwgbW9kdWxlLCBtb2R1bGVfZmlsZSBpbiBtb2R1bGVzOgorICAgICAgICAgICAgIyBOb3cgImJ1aWxkIiB0aGUgbW9kdWxlIC0tIGllLiBjb3B5IHRoZSBzb3VyY2UgZmlsZSB0bworICAgICAgICAgICAgIyBzZWxmLmJ1aWxkX2xpYiAodGhlIGJ1aWxkIGRpcmVjdG9yeSBmb3IgUHl0aG9uIHNvdXJjZSkuCisgICAgICAgICAgICAjIChBY3R1YWxseSwgaXQgZ2V0cyBjb3BpZWQgdG8gdGhlIGRpcmVjdG9yeSBmb3IgdGhpcyBwYWNrYWdlCisgICAgICAgICAgICAjIHVuZGVyIHNlbGYuYnVpbGRfbGliLikKKyAgICAgICAgICAgIHNlbGYuYnVpbGRfbW9kdWxlKG1vZHVsZSwgbW9kdWxlX2ZpbGUsIHBhY2thZ2UpCisKKyAgICBkZWYgYnVpbGRfcGFja2FnZXMoc2VsZik6CisgICAgICAgIGZvciBwYWNrYWdlIGluIHNlbGYucGFja2FnZXM6CisgICAgICAgICAgICAjIEdldCBsaXN0IG9mIChwYWNrYWdlLCBtb2R1bGUsIG1vZHVsZV9maWxlKSB0dXBsZXMgYmFzZWQgb24KKyAgICAgICAgICAgICMgc2Nhbm5pbmcgdGhlIHBhY2thZ2UgZGlyZWN0b3J5LiAgJ3BhY2thZ2UnIGlzIG9ubHkgaW5jbHVkZWQKKyAgICAgICAgICAgICMgaW4gdGhlIHR1cGxlIHNvIHRoYXQgJ2ZpbmRfbW9kdWxlcygpJyBhbmQKKyAgICAgICAgICAgICMgJ2ZpbmRfcGFja2FnZV90dXBsZXMoKScgaGF2ZSBhIGNvbnNpc3RlbnQgaW50ZXJmYWNlOyBpdCdzCisgICAgICAgICAgICAjIGlnbm9yZWQgaGVyZSAoYXBhcnQgZnJvbSBhIHNhbml0eSBjaGVjaykuICBBbHNvLCAnbW9kdWxlJyBpcworICAgICAgICAgICAgIyB0aGUgKnVucXVhbGlmaWVkKiBtb2R1bGUgbmFtZSAoaWUuIG5vIGRvdHMsIG5vIHBhY2thZ2UgLS0gd2UKKyAgICAgICAgICAgICMgYWxyZWFkeSBrbm93IGl0cyBwYWNrYWdlISksIGFuZCAnbW9kdWxlX2ZpbGUnIGlzIHRoZSBwYXRoIHRvCisgICAgICAgICAgICAjIHRoZSAucHkgZmlsZSwgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgZGlyZWN0b3J5CisgICAgICAgICAgICAjIChpZS4gaW5jbHVkaW5nICdwYWNrYWdlX2RpcicpLgorICAgICAgICAgICAgcGFja2FnZV9kaXIgPSBzZWxmLmdldF9wYWNrYWdlX2RpcihwYWNrYWdlKQorICAgICAgICAgICAgbW9kdWxlcyA9IHNlbGYuZmluZF9wYWNrYWdlX21vZHVsZXMocGFja2FnZSwgcGFja2FnZV9kaXIpCisKKyAgICAgICAgICAgICMgTm93IGxvb3Agb3ZlciB0aGUgbW9kdWxlcyB3ZSBmb3VuZCwgImJ1aWxkaW5nIiBlYWNoIG9uZSAoanVzdAorICAgICAgICAgICAgIyBjb3B5IGl0IHRvIHNlbGYuYnVpbGRfbGliKS4KKyAgICAgICAgICAgIGZvciBwYWNrYWdlXywgbW9kdWxlLCBtb2R1bGVfZmlsZSBpbiBtb2R1bGVzOgorICAgICAgICAgICAgICAgIGFzc2VydCBwYWNrYWdlID09IHBhY2thZ2VfCisgICAgICAgICAgICAgICAgc2VsZi5idWlsZF9tb2R1bGUobW9kdWxlLCBtb2R1bGVfZmlsZSwgcGFja2FnZSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9idWlsZF9zY3JpcHRzLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2J1aWxkX3NjcmlwdHMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDY1MWFlMAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9idWlsZF9zY3JpcHRzLnB5CkBAIC0wLDAgKzEsMTU0IEBACisiIiJCdWlsZCBzY3JpcHRzIChjb3B5IHRvIGJ1aWxkIGRpciBhbmQgZml4IHVwIHNoZWJhbmcgbGluZSkuIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHJlCitpbXBvcnQgc3lzY29uZmlnCitmcm9tIHRva2VuaXplIGltcG9ydCBkZXRlY3RfZW5jb2RpbmcKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IGNvbnZlcnRfcGF0aCwgbmV3ZXIKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmNvbXBhdCBpbXBvcnQgTWl4aW4ydG8zCisKKworIyBjaGVjayBpZiBQeXRob24gaXMgY2FsbGVkIG9uIHRoZSBmaXJzdCBsaW5lIHdpdGggdGhpcyBleHByZXNzaW9uCitmaXJzdF9saW5lX3JlID0gcmUuY29tcGlsZShiJ14jIS4qcHl0aG9uWzAtOS5dKihbIFx0XS4qKT8kJykKKworY2xhc3MgYnVpbGRfc2NyaXB0cyhDb21tYW5kLCBNaXhpbjJ0bzMpOgorCisgICAgZGVzY3JpcHRpb24gPSAiYnVpbGQgc2NyaXB0cyAoY29weSBhbmQgZml4IHVwIHNoZWJhbmcgbGluZSkiCisKKyAgICB1c2VyX29wdGlvbnMgPSBbCisgICAgICAgICgnYnVpbGQtZGlyPScsICdkJywgImRpcmVjdG9yeSB0byBidWlsZCAoY29weSkgdG8iKSwKKyAgICAgICAgKCdmb3JjZScsICdmJywgImZvcmNpYmx5IGJ1aWxkIGV2ZXJ5dGhpbmcgKGlnbm9yZSBmaWxlIHRpbWVzdGFtcHMiKSwKKyAgICAgICAgKCdleGVjdXRhYmxlPScsICdlJywgInNwZWNpZnkgZmluYWwgZGVzdGluYXRpb24gaW50ZXJwcmV0ZXIgcGF0aCIpLAorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2ZvcmNlJ10KKworCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5idWlsZF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYuc2NyaXB0cyA9IE5vbmUKKyAgICAgICAgc2VsZi5mb3JjZSA9IE5vbmUKKyAgICAgICAgc2VsZi5leGVjdXRhYmxlID0gTm9uZQorICAgICAgICBzZWxmLm91dGZpbGVzID0gTm9uZQorICAgICAgICBzZWxmLnVzZV8ydG8zID0gRmFsc2UKKyAgICAgICAgc2VsZi5jb252ZXJ0XzJ0bzNfZG9jdGVzdHMgPSBOb25lCisgICAgICAgIHNlbGYudXNlXzJ0bzNfZml4ZXJzID0gTm9uZQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdidWlsZCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnYnVpbGRfc2NyaXB0cycsICdidWlsZF9kaXInKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3VzZV8ydG8zJywgJ3VzZV8ydG8zX2ZpeGVycycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjb252ZXJ0XzJ0bzNfZG9jdGVzdHMnLCAnZm9yY2UnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZXhlY3V0YWJsZScpCisgICAgICAgIHNlbGYuc2NyaXB0cyA9IHNlbGYuZGlzdHJpYnV0aW9uLnNjcmlwdHMKKworICAgIGRlZiBnZXRfc291cmNlX2ZpbGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5zY3JpcHRzCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5zY3JpcHRzOgorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGNvcGllZF9maWxlcyA9IHNlbGYuY29weV9zY3JpcHRzKCkKKyAgICAgICAgaWYgc2VsZi51c2VfMnRvMyBhbmQgY29waWVkX2ZpbGVzOgorICAgICAgICAgICAgc2VsZi5fcnVuXzJ0bzMoY29waWVkX2ZpbGVzLCBmaXhlcnM9c2VsZi51c2VfMnRvM19maXhlcnMpCisKKyAgICBkZWYgY29weV9zY3JpcHRzKHNlbGYpOgorICAgICAgICAiIiJDb3B5IGVhY2ggc2NyaXB0IGxpc3RlZCBpbiAnc2VsZi5zY3JpcHRzJzsgaWYgaXQncyBtYXJrZWQgYXMgYQorICAgICAgICBQeXRob24gc2NyaXB0IGluIHRoZSBVbml4IHdheSAoZmlyc3QgbGluZSBtYXRjaGVzICdmaXJzdF9saW5lX3JlJywKKyAgICAgICAgaWUuIHN0YXJ0cyB3aXRoICJcIyEiIGFuZCBjb250YWlucyAicHl0aG9uIiksIHRoZW4gYWRqdXN0IHRoZSBmaXJzdAorICAgICAgICBsaW5lIHRvIHJlZmVyIHRvIHRoZSBjdXJyZW50IFB5dGhvbiBpbnRlcnByZXRlciBhcyB3ZSBjb3B5LgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5ta3BhdGgoc2VsZi5idWlsZF9kaXIpCisgICAgICAgIG91dGZpbGVzID0gW10KKyAgICAgICAgZm9yIHNjcmlwdCBpbiBzZWxmLnNjcmlwdHM6CisgICAgICAgICAgICBhZGp1c3QgPSBGYWxzZQorICAgICAgICAgICAgc2NyaXB0ID0gY29udmVydF9wYXRoKHNjcmlwdCkKKyAgICAgICAgICAgIG91dGZpbGUgPSBvcy5wYXRoLmpvaW4oc2VsZi5idWlsZF9kaXIsIG9zLnBhdGguYmFzZW5hbWUoc2NyaXB0KSkKKyAgICAgICAgICAgIG91dGZpbGVzLmFwcGVuZChvdXRmaWxlKQorCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5mb3JjZSBhbmQgbm90IG5ld2VyKHNjcmlwdCwgb3V0ZmlsZSk6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCJub3QgY29weWluZyAlcyAodXAtdG8tZGF0ZSkiLCBzY3JpcHQpCisgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgIyBBbHdheXMgb3BlbiB0aGUgZmlsZSwgYnV0IGlnbm9yZSBmYWlsdXJlcyBpbiBkcnktcnVuIG1vZGUgLS0KKyAgICAgICAgICAgICMgdGhhdCB3YXksIHdlJ2xsIGdldCBhY2N1cmF0ZSBmZWVkYmFjayBpZiB3ZSBjYW4gcmVhZCB0aGUKKyAgICAgICAgICAgICMgc2NyaXB0LgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGYgPSBvcGVuKHNjcmlwdCwgInJiIikKKyAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yOgorICAgICAgICAgICAgICAgIGlmIG5vdCBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICAgICAgZiA9IE5vbmUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZW5jb2RpbmcsIGxpbmVzID0gZGV0ZWN0X2VuY29kaW5nKGYucmVhZGxpbmUpCisgICAgICAgICAgICAgICAgZi5zZWVrKDApCisgICAgICAgICAgICAgICAgZmlyc3RfbGluZSA9IGYucmVhZGxpbmUoKQorICAgICAgICAgICAgICAgIGlmIG5vdCBmaXJzdF9saW5lOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygnJXM6ICVzIGlzIGFuIGVtcHR5IGZpbGUgKHNraXBwaW5nKScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZ2V0X2NvbW1hbmRfbmFtZSgpLCAgc2NyaXB0KQorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICAgICAgbWF0Y2ggPSBmaXJzdF9saW5lX3JlLm1hdGNoKGZpcnN0X2xpbmUpCisgICAgICAgICAgICAgICAgaWYgbWF0Y2g6CisgICAgICAgICAgICAgICAgICAgIGFkanVzdCA9IFRydWUKKyAgICAgICAgICAgICAgICAgICAgcG9zdF9pbnRlcnAgPSBtYXRjaC5ncm91cCgxKSBvciBiJycKKworICAgICAgICAgICAgaWYgYWRqdXN0OgorICAgICAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJjb3B5aW5nIGFuZCBhZGp1c3RpbmcgJXMgLT4gJXMiLCBzY3JpcHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5idWlsZF9kaXIpCisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IHN5c2NvbmZpZy5pc19weXRob25fYnVpbGQoKToKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4ZWN1dGFibGUgPSBzZWxmLmV4ZWN1dGFibGUKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4ZWN1dGFibGUgPSBvcy5wYXRoLmpvaW4oCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCJCSU5ESVIiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICJweXRob24lcyVzIiAlIChzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoIlZFUlNJT04iKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoIkVYRSIpKSkKKyAgICAgICAgICAgICAgICAgICAgZXhlY3V0YWJsZSA9IG9zLmZzZW5jb2RlKGV4ZWN1dGFibGUpCisgICAgICAgICAgICAgICAgICAgIHNoZWJhbmcgPSBiIiMhIiArIGV4ZWN1dGFibGUgKyBwb3N0X2ludGVycCArIGIiXG4iCisgICAgICAgICAgICAgICAgICAgICMgUHl0aG9uIHBhcnNlciBzdGFydHMgdG8gcmVhZCBhIHNjcmlwdCB1c2luZyBVVEYtOCB1bnRpbAorICAgICAgICAgICAgICAgICAgICAjIGl0IGdldHMgYSAjY29kaW5nOnh4eCBjb29raWUuIFRoZSBzaGViYW5nIGhhcyB0byBiZSB0aGUKKyAgICAgICAgICAgICAgICAgICAgIyBmaXJzdCBsaW5lIG9mIGEgZmlsZSwgdGhlICNjb2Rpbmc6eHh4IGNvb2tpZSBjYW5ub3QgYmUKKyAgICAgICAgICAgICAgICAgICAgIyB3cml0dGVuIGJlZm9yZS4gU28gdGhlIHNoZWJhbmcgaGFzIHRvIGJlIGRlY29kYWJsZSBmcm9tCisgICAgICAgICAgICAgICAgICAgICMgVVRGLTguCisgICAgICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNoZWJhbmcuZGVjb2RlKCd1dGYtOCcpCisgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBVbmljb2RlRGVjb2RlRXJyb3I6CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJUaGUgc2hlYmFuZyAoeyFyfSkgaXMgbm90IGRlY29kYWJsZSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZyb20gdXRmLTgiLmZvcm1hdChzaGViYW5nKSkKKyAgICAgICAgICAgICAgICAgICAgIyBJZiB0aGUgc2NyaXB0IGlzIGVuY29kZWQgdG8gYSBjdXN0b20gZW5jb2RpbmcgKHVzZSBhCisgICAgICAgICAgICAgICAgICAgICMgI2NvZGluZzp4eHggY29va2llKSwgdGhlIHNoZWJhbmcgaGFzIHRvIGJlIGRlY29kYWJsZSBmcm9tCisgICAgICAgICAgICAgICAgICAgICMgdGhlIHNjcmlwdCBlbmNvZGluZyB0b28uCisgICAgICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNoZWJhbmcuZGVjb2RlKGVuY29kaW5nKQorICAgICAgICAgICAgICAgICAgICBleGNlcHQgVW5pY29kZURlY29kZUVycm9yOgorICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVGhlIHNoZWJhbmcgKHshcn0pIGlzIG5vdCBkZWNvZGFibGUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmcm9tIHRoZSBzY3JpcHQgZW5jb2RpbmcgKHt9KSIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybWF0KHNoZWJhbmcsIGVuY29kaW5nKSkKKyAgICAgICAgICAgICAgICAgICAgd2l0aCBvcGVuKG91dGZpbGUsICJ3YiIpIGFzIG91dGY6CisgICAgICAgICAgICAgICAgICAgICAgICBvdXRmLndyaXRlKHNoZWJhbmcpCisgICAgICAgICAgICAgICAgICAgICAgICBvdXRmLndyaXRlbGluZXMoZi5yZWFkbGluZXMoKSkKKyAgICAgICAgICAgICAgICBpZiBmOgorICAgICAgICAgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaWYgZjoKKyAgICAgICAgICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgICAgICAgICAgc2VsZi5jb3B5X2ZpbGUoc2NyaXB0LCBvdXRmaWxlKQorCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKKyAgICAgICAgICAgIGZvciBmaWxlIGluIG91dGZpbGVzOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oImNoYW5naW5nIG1vZGUgb2YgJXMiLCBmaWxlKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIG9sZG1vZGUgPSBvcy5zdGF0KGZpbGUpLnN0X21vZGUgJiAwbzc3NzcKKyAgICAgICAgICAgICAgICAgICAgbmV3bW9kZSA9IChvbGRtb2RlIHwgMG81NTUpICYgMG83Nzc3CisgICAgICAgICAgICAgICAgICAgIGlmIG5ld21vZGUgIT0gb2xkbW9kZToKKyAgICAgICAgICAgICAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJjaGFuZ2luZyBtb2RlIG9mICVzIGZyb20gJW8gdG8gJW8iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZSwgb2xkbW9kZSwgbmV3bW9kZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIG9zLmNobW9kKGZpbGUsIG5ld21vZGUpCisgICAgICAgIHJldHVybiBvdXRmaWxlcwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2NoZWNrLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2NoZWNrLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY3MTVkYjkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY2hlY2sucHkKQEAgLTAsMCArMSw4OCBAQAorIiIiQ2hlY2sgUEVQIGNvbXBsaWFuY2Ugb2YgbWV0YWRhdGEuIiIiCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ1NldHVwRXJyb3IKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHJlc29sdmVfbmFtZQorCitjbGFzcyBjaGVjayhDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gImNoZWNrIFBFUCBjb21wbGlhbmNlIG9mIG1ldGFkYXRhIgorCisgICAgdXNlcl9vcHRpb25zID0gWygnbWV0YWRhdGEnLCAnbScsICdWZXJpZnkgbWV0YWRhdGEnKSwKKyAgICAgICAgICAgICAgICAgICAgKCdhbGwnLCAnYScsCisgICAgICAgICAgICAgICAgICAgICAoJ3J1bnMgZXh0ZW5kZWQgc2V0IG9mIGNoZWNrcycpKSwKKyAgICAgICAgICAgICAgICAgICAgKCdzdHJpY3QnLCAncycsCisgICAgICAgICAgICAgICAgICAgICAnV2lsbCBleGl0IHdpdGggYW4gZXJyb3IgaWYgYSBjaGVjayBmYWlscycpXQorCisgICAgYm9vbGVhbl9vcHRpb25zID0gWydtZXRhZGF0YScsICdhbGwnLCAnc3RyaWN0J10KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgICIiIlNldHMgZGVmYXVsdCB2YWx1ZXMgZm9yIG9wdGlvbnMuIiIiCisgICAgICAgIHNlbGYuYWxsID0gRmFsc2UKKyAgICAgICAgc2VsZi5tZXRhZGF0YSA9IFRydWUKKyAgICAgICAgc2VsZi5zdHJpY3QgPSBGYWxzZQorICAgICAgICBzZWxmLl93YXJuaW5ncyA9IFtdCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgcGFzcworCisgICAgZGVmIHdhcm4oc2VsZiwgbXNnLCAqYXJncyk6CisgICAgICAgICIiIldyYXBwZXIgYXJvdW5kIGxvZ2dpbmcgdGhhdCBhbHNvIHJlbWVtYmVycyBtZXNzYWdlcy4iIiIKKyAgICAgICAgIyBYWFggd2UgY291bGQgdXNlIGEgc3BlY2lhbCBoYW5kbGVyIGZvciB0aGlzLCBidXQgd291bGQgbmVlZCB0byB0ZXN0CisgICAgICAgICMgaWYgaXQgd29ya3MgZXZlbiBpZiB0aGUgbG9nZ2VyIGhhcyBhIHRvbyBoaWdoIGxldmVsCisgICAgICAgIHNlbGYuX3dhcm5pbmdzLmFwcGVuZCgobXNnLCBhcmdzKSkKKyAgICAgICAgcmV0dXJuIGxvZ2dlci53YXJuaW5nKCclczogJXMnICUgKHNlbGYuZ2V0X2NvbW1hbmRfbmFtZSgpLCBtc2cpLCAqYXJncykKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgICIiIlJ1bnMgdGhlIGNvbW1hbmQuIiIiCisgICAgICAgICMgcGVyZm9ybSB0aGUgdmFyaW91cyB0ZXN0cworICAgICAgICBpZiBzZWxmLm1ldGFkYXRhOgorICAgICAgICAgICAgc2VsZi5jaGVja19tZXRhZGF0YSgpCisgICAgICAgIGlmIHNlbGYuYWxsOgorICAgICAgICAgICAgc2VsZi5jaGVja19yZXN0cnVjdHVyZWR0ZXh0KCkKKyAgICAgICAgICAgIHNlbGYuY2hlY2tfaG9va3NfcmVzb2x2YWJsZSgpCisKKyAgICAgICAgIyBsZXQncyByYWlzZSBhbiBlcnJvciBpbiBzdHJpY3QgbW9kZSwgaWYgd2UgaGF2ZSBhdCBsZWFzdAorICAgICAgICAjIG9uZSB3YXJuaW5nCisgICAgICAgIGlmIHNlbGYuc3RyaWN0IGFuZCBsZW4oc2VsZi5fd2FybmluZ3MpID4gMDoKKyAgICAgICAgICAgIG1zZyA9ICdcbicuam9pbihtc2cgJSBhcmdzIGZvciBtc2csIGFyZ3MgaW4gc2VsZi5fd2FybmluZ3MpCisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdTZXR1cEVycm9yKG1zZykKKworICAgIGRlZiBjaGVja19tZXRhZGF0YShzZWxmKToKKyAgICAgICAgIiIiRW5zdXJlcyB0aGF0IGFsbCByZXF1aXJlZCBlbGVtZW50cyBvZiBtZXRhZGF0YSBhcmUgc3VwcGxpZWQuCisKKyAgICAgICAgbmFtZSwgdmVyc2lvbiwgVVJMLCBhdXRob3IKKworICAgICAgICBXYXJucyBpZiBhbnkgYXJlIG1pc3NpbmcuCisgICAgICAgICIiIgorICAgICAgICBtaXNzaW5nLCB3YXJuaW5ncyA9IHNlbGYuZGlzdHJpYnV0aW9uLm1ldGFkYXRhLmNoZWNrKHN0cmljdD1UcnVlKQorICAgICAgICBpZiBtaXNzaW5nICE9IFtdOgorICAgICAgICAgICAgc2VsZi53YXJuKCdtaXNzaW5nIHJlcXVpcmVkIG1ldGFkYXRhOiAlcycsICcsICcuam9pbihtaXNzaW5nKSkKKyAgICAgICAgZm9yIHdhcm5pbmcgaW4gd2FybmluZ3M6CisgICAgICAgICAgICBzZWxmLndhcm4od2FybmluZykKKworICAgIGRlZiBjaGVja19yZXN0cnVjdHVyZWR0ZXh0KHNlbGYpOgorICAgICAgICAiIiJDaGVja3MgaWYgdGhlIGxvbmcgc3RyaW5nIGZpZWxkcyBhcmUgcmVTVC1jb21wbGlhbnQuIiIiCisgICAgICAgIG1pc3NpbmcsIHdhcm5pbmdzID0gc2VsZi5kaXN0cmlidXRpb24ubWV0YWRhdGEuY2hlY2socmVzdHJ1Y3R1cmVkdGV4dD1UcnVlKQorICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YS5kb2N1dGlsc19zdXBwb3J0OgorICAgICAgICAgICAgZm9yIHdhcm5pbmcgaW4gd2FybmluZ3M6CisgICAgICAgICAgICAgICAgbGluZSA9IHdhcm5pbmdbLTFdLmdldCgnbGluZScpCisgICAgICAgICAgICAgICAgaWYgbGluZSBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICB3YXJuaW5nID0gd2FybmluZ1sxXQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHdhcm5pbmcgPSAnJXMgKGxpbmUgJXMpJyAlICh3YXJuaW5nWzFdLCBsaW5lKQorICAgICAgICAgICAgICAgIHNlbGYud2Fybih3YXJuaW5nKQorICAgICAgICBlbGlmIHNlbGYuc3RyaWN0OgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nU2V0dXBFcnJvcignVGhlIGRvY3V0aWxzIHBhY2thZ2UgaXMgbmVlZGVkLicpCisKKyAgICBkZWYgY2hlY2tfaG9va3NfcmVzb2x2YWJsZShzZWxmKToKKyAgICAgICAgZm9yIG9wdGlvbnMgaW4gc2VsZi5kaXN0cmlidXRpb24uY29tbWFuZF9vcHRpb25zLnZhbHVlcygpOgorICAgICAgICAgICAgZm9yIGhvb2tfa2luZCBpbiAoInByZV9ob29rIiwgInBvc3RfaG9vayIpOgorICAgICAgICAgICAgICAgIGlmIGhvb2tfa2luZCBub3QgaW4gb3B0aW9uczoKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICBmb3IgaG9va19uYW1lIGluIG9wdGlvbnNbaG9va19raW5kXVsxXS52YWx1ZXMoKToKKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZV9uYW1lKGhvb2tfbmFtZSkKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi53YXJuKCduYW1lICVyIGNhbm5vdCBiZSByZXNvbHZlZCcsIGhvb2tfbmFtZSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9jbGVhbi5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9jbGVhbi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZjYwZjRlCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2NsZWFuLnB5CkBAIC0wLDAgKzEsNzYgQEAKKyIiIkNsZWFuIHVwIHRlbXBvcmFyeSBmaWxlcyBjcmVhdGVkIGJ5IHRoZSBidWlsZCBjb21tYW5kLiIiIgorCisjIENvbnRyaWJ1dGVkIGJ5IEJhc3RpYW4gS2xlaW5laWRhbSA8Y2FsdmluQGNzLnVuaS1zYi5kZT4KKworaW1wb3J0IG9zCitmcm9tIHNodXRpbCBpbXBvcnQgcm10cmVlCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorCitjbGFzcyBjbGVhbihDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gImNsZWFuIHVwIHRlbXBvcmFyeSBmaWxlcyBmcm9tICdidWlsZCcgY29tbWFuZCIKKyAgICB1c2VyX29wdGlvbnMgPSBbCisgICAgICAgICgnYnVpbGQtYmFzZT0nLCAnYicsCisgICAgICAgICAiYmFzZSBidWlsZCBkaXJlY3RvcnkgKGRlZmF1bHQ6ICdidWlsZC5idWlsZC1iYXNlJykiKSwKKyAgICAgICAgKCdidWlsZC1saWI9JywgTm9uZSwKKyAgICAgICAgICJidWlsZCBkaXJlY3RvcnkgZm9yIGFsbCBtb2R1bGVzIChkZWZhdWx0OiAnYnVpbGQuYnVpbGQtbGliJykiKSwKKyAgICAgICAgKCdidWlsZC10ZW1wPScsICd0JywKKyAgICAgICAgICJ0ZW1wb3JhcnkgYnVpbGQgZGlyZWN0b3J5IChkZWZhdWx0OiAnYnVpbGQuYnVpbGQtdGVtcCcpIiksCisgICAgICAgICgnYnVpbGQtc2NyaXB0cz0nLCBOb25lLAorICAgICAgICAgImJ1aWxkIGRpcmVjdG9yeSBmb3Igc2NyaXB0cyAoZGVmYXVsdDogJ2J1aWxkLmJ1aWxkLXNjcmlwdHMnKSIpLAorICAgICAgICAoJ2JkaXN0LWJhc2U9JywgTm9uZSwKKyAgICAgICAgICJ0ZW1wb3JhcnkgZGlyZWN0b3J5IGZvciBidWlsdCBkaXN0cmlidXRpb25zIiksCisgICAgICAgICgnYWxsJywgJ2EnLAorICAgICAgICAgInJlbW92ZSBhbGwgYnVpbGQgb3V0cHV0LCBub3QganVzdCB0ZW1wb3JhcnkgYnktcHJvZHVjdHMiKQorICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsnYWxsJ10KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuYnVpbGRfYmFzZSA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF9saWIgPSBOb25lCisgICAgICAgIHNlbGYuYnVpbGRfdGVtcCA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF9zY3JpcHRzID0gTm9uZQorICAgICAgICBzZWxmLmJkaXN0X2Jhc2UgPSBOb25lCisgICAgICAgIHNlbGYuYWxsID0gTm9uZQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdidWlsZCcsICdidWlsZF9iYXNlJywgJ2J1aWxkX2xpYicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdidWlsZF9zY3JpcHRzJywgJ2J1aWxkX3RlbXAnKQorICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnYmRpc3QnLCAnYmRpc3RfYmFzZScpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICAjIHJlbW92ZSB0aGUgYnVpbGQvdGVtcC48cGxhdD4gZGlyZWN0b3J5ICh1bmxlc3MgaXQncyBhbHJlYWR5CisgICAgICAgICMgZ29uZSkKKyAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoc2VsZi5idWlsZF90ZW1wKToKKyAgICAgICAgICAgIGlmIHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygncmVtb3ZpbmcgJXMnLCBzZWxmLmJ1aWxkX3RlbXApCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJtdHJlZShzZWxmLmJ1aWxkX3RlbXApCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoIiclcycgZG9lcyBub3QgZXhpc3QgLS0gY2FuJ3QgY2xlYW4gaXQiLAorICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYnVpbGRfdGVtcCkKKworICAgICAgICBpZiBzZWxmLmFsbDoKKyAgICAgICAgICAgICMgcmVtb3ZlIGJ1aWxkIGRpcmVjdG9yaWVzCisgICAgICAgICAgICBmb3IgZGlyZWN0b3J5IGluIChzZWxmLmJ1aWxkX2xpYiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYmRpc3RfYmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuYnVpbGRfc2NyaXB0cyk6CisgICAgICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZGlyZWN0b3J5KToKKyAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ3JlbW92aW5nICVzJywgZGlyZWN0b3J5KQorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgcm10cmVlKGRpcmVjdG9yeSkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygiJyVzJyBkb2VzIG5vdCBleGlzdCAtLSBjYW4ndCBjbGVhbiBpdCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdG9yeSkKKworICAgICAgICAjIGp1c3QgZm9yIHRoZSBoZWNrIG9mIGl0LCB0cnkgdG8gcmVtb3ZlIHRoZSBiYXNlIGJ1aWxkIGRpcmVjdG9yeToKKyAgICAgICAgIyB3ZSBtaWdodCBoYXZlIGVtcHRpZWQgaXQgcmlnaHQgbm93LCBidXQgaWYgbm90IHdlIGRvbid0IGNhcmUKKyAgICAgICAgaWYgbm90IHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBvcy5ybWRpcihzZWxmLmJ1aWxkX2Jhc2UpCisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oInJlbW92aW5nICclcyciLCBzZWxmLmJ1aWxkX2Jhc2UpCisgICAgICAgICAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY21kLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2NtZC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNWU2YTcyCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2NtZC5weQpAQCAtMCwwICsxLDQ2MSBAQAorIiIiQmFzZSBjbGFzcyBmb3IgY29tbWFuZHMuIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHJlCitmcm9tIHNodXRpbCBpbXBvcnQgY29weWZpbGUsIG1vdmUsIG1ha2VfYXJjaGl2ZQorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IHV0aWwKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nT3B0aW9uRXJyb3IKKworCitjbGFzcyBDb21tYW5kOgorICAgICIiIkFic3RyYWN0IGJhc2UgY2xhc3MgZm9yIGRlZmluaW5nIGNvbW1hbmQgY2xhc3NlcywgdGhlICJ3b3JrZXIgYmVlcyIKKyAgICBvZiBQYWNrYWdpbmcuICBBIHVzZWZ1bCBhbmFsb2d5IGZvciBjb21tYW5kIGNsYXNzZXMgaXMgdG8gdGhpbmsgb2YKKyAgICB0aGVtIGFzIHN1YnJvdXRpbmVzIHdpdGggbG9jYWwgdmFyaWFibGVzIGNhbGxlZCAib3B0aW9ucyIuICBUaGUgb3B0aW9ucworICAgIGFyZSAiZGVjbGFyZWQiIGluICdpbml0aWFsaXplX29wdGlvbnMoKScgYW5kICJkZWZpbmVkIiAoZ2l2ZW4gdGhlaXIKKyAgICBmaW5hbCB2YWx1ZXMsIGFrYSAiZmluYWxpemVkIikgaW4gJ2ZpbmFsaXplX29wdGlvbnMoKScsIGJvdGggb2Ygd2hpY2gKKyAgICBtdXN0IGJlIGRlZmluZWQgYnkgZXZlcnkgY29tbWFuZCBjbGFzcy4gIFRoZSBkaXN0aW5jdGlvbiBiZXR3ZWVuIHRoZQorICAgIHR3byBpcyBuZWNlc3NhcnkgYmVjYXVzZSBvcHRpb24gdmFsdWVzIG1pZ2h0IGNvbWUgZnJvbSB0aGUgb3V0c2lkZQorICAgIHdvcmxkIChjb21tYW5kIGxpbmUsIGNvbmZpZyBmaWxlLCAuLi4pLCBhbmQgYW55IG9wdGlvbnMgZGVwZW5kZW50IG9uCisgICAgb3RoZXIgb3B0aW9ucyBtdXN0IGJlIGNvbXB1dGVkICphZnRlciogdGhlc2Ugb3V0c2lkZSBpbmZsdWVuY2VzIGhhdmUKKyAgICBiZWVuIHByb2Nlc3NlZCAtLSBoZW5jZSAnZmluYWxpemVfb3B0aW9ucygpJy4gIFRoZSAiYm9keSIgb2YgdGhlCisgICAgc3Vicm91dGluZSwgd2hlcmUgaXQgZG9lcyBhbGwgaXRzIHdvcmsgYmFzZWQgb24gdGhlIHZhbHVlcyBvZiBpdHMKKyAgICBvcHRpb25zLCBpcyB0aGUgJ3J1bigpJyBtZXRob2QsIHdoaWNoIG11c3QgYWxzbyBiZSBpbXBsZW1lbnRlZCBieSBldmVyeQorICAgIGNvbW1hbmQgY2xhc3MuCisgICAgIiIiCisKKyAgICAjICdzdWJfY29tbWFuZHMnIGZvcm1hbGl6ZXMgdGhlIG5vdGlvbiBvZiBhICJmYW1pbHkiIG9mIGNvbW1hbmRzLAorICAgICMgZWcuICJpbnN0YWxsX2Rpc3QiIGFzIHRoZSBwYXJlbnQgd2l0aCBzdWItY29tbWFuZHMgImluc3RhbGxfbGliIiwKKyAgICAjICJpbnN0YWxsX2hlYWRlcnMiLCBldGMuICBUaGUgcGFyZW50IG9mIGEgZmFtaWx5IG9mIGNvbW1hbmRzCisgICAgIyBkZWZpbmVzICdzdWJfY29tbWFuZHMnIGFzIGEgY2xhc3MgYXR0cmlidXRlOyBpdCdzIGEgbGlzdCBvZgorICAgICMgICAgKGNvbW1hbmRfbmFtZSA6IHN0cmluZywgcHJlZGljYXRlIDogdW5ib3VuZF9tZXRob2QgfCBzdHJpbmcgfCBOb25lKQorICAgICMgdHVwbGVzLCB3aGVyZSAncHJlZGljYXRlJyBpcyBhIG1ldGhvZCBvZiB0aGUgcGFyZW50IGNvbW1hbmQgdGhhdAorICAgICMgZGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBjb3JyZXNwb25kaW5nIGNvbW1hbmQgaXMgYXBwbGljYWJsZSBpbiB0aGUKKyAgICAjIGN1cnJlbnQgc2l0dWF0aW9uLiAgKEVnLiB3ZSAiaW5zdGFsbF9oZWFkZXJzIiBpcyBvbmx5IGFwcGxpY2FibGUgaWYKKyAgICAjIHdlIGhhdmUgYW55IEMgaGVhZGVyIGZpbGVzIHRvIGluc3RhbGwuKSAgSWYgJ3ByZWRpY2F0ZScgaXMgTm9uZSwKKyAgICAjIHRoYXQgY29tbWFuZCBpcyBhbHdheXMgYXBwbGljYWJsZS4KKyAgICAjCisgICAgIyAnc3ViX2NvbW1hbmRzJyBpcyB1c3VhbGx5IGRlZmluZWQgYXQgdGhlICplbmQqIG9mIGEgY2xhc3MsIGJlY2F1c2UKKyAgICAjIHByZWRpY2F0ZXMgY2FuIGJlIHVuYm91bmQgbWV0aG9kcywgc28gdGhleSBtdXN0IGFscmVhZHkgaGF2ZSBiZWVuCisgICAgIyBkZWZpbmVkLiAgVGhlIGNhbm9uaWNhbCBleGFtcGxlIGlzIHRoZSAiaW5zdGFsbF9kaXN0IiBjb21tYW5kLgorICAgIHN1Yl9jb21tYW5kcyA9IFtdCisKKyAgICAjIFByZSBhbmQgcG9zdCBjb21tYW5kIGhvb2tzIGFyZSBydW4ganVzdCBiZWZvcmUgb3IganVzdCBhZnRlciB0aGUgY29tbWFuZAorICAgICMgaXRzZWxmLiBUaGV5IGFyZSBzaW1wbGUgZnVuY3Rpb25zIHRoYXQgcmVjZWl2ZSB0aGUgY29tbWFuZCBpbnN0YW5jZS4gVGhleQorICAgICMgYXJlIHNwZWNpZmllZCBhcyBjYWxsYWJsZSBvYmplY3RzIG9yIGRvdHRlZCBzdHJpbmdzIChmb3IgbGF6eSBsb2FkaW5nKS4KKyAgICBwcmVfaG9vayA9IE5vbmUKKyAgICBwb3N0X2hvb2sgPSBOb25lCisKKyAgICAjIC0tIENyZWF0aW9uL2luaXRpYWxpemF0aW9uIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRpc3QpOgorICAgICAgICAiIiJDcmVhdGUgYW5kIGluaXRpYWxpemUgYSBuZXcgQ29tbWFuZCBvYmplY3QuICBNb3N0IGltcG9ydGFudGx5LAorICAgICAgICBpbnZva2VzIHRoZSAnaW5pdGlhbGl6ZV9vcHRpb25zKCknIG1ldGhvZCwgd2hpY2ggaXMgdGhlIHJlYWwKKyAgICAgICAgaW5pdGlhbGl6ZXIgYW5kIGRlcGVuZHMgb24gdGhlIGFjdHVhbCBjb21tYW5kIGJlaW5nIGluc3RhbnRpYXRlZC4KKyAgICAgICAgIiIiCisgICAgICAgICMgbGF0ZSBpbXBvcnQgYmVjYXVzZSBvZiBtdXR1YWwgZGVwZW5kZW5jZSBiZXR3ZWVuIHRoZXNlIGNsYXNzZXMKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCisKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoZGlzdCwgRGlzdHJpYnV0aW9uKToKKyAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiZGlzdCBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIERpc3RyaWJ1dGlvbiwgbm90ICVyIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgdHlwZShkaXN0KSkKKyAgICAgICAgaWYgc2VsZi5fX2NsYXNzX18gaXMgQ29tbWFuZDoKKyAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigiQ29tbWFuZCBpcyBhbiBhYnN0cmFjdCBjbGFzcyIpCisKKyAgICAgICAgc2VsZi5kaXN0cmlidXRpb24gPSBkaXN0CisgICAgICAgIHNlbGYuaW5pdGlhbGl6ZV9vcHRpb25zKCkKKworICAgICAgICAjIFBlci1jb21tYW5kIHZlcnNpb25zIG9mIHRoZSBnbG9iYWwgZmxhZ3MsIHNvIHRoYXQgdGhlIHVzZXIgY2FuCisgICAgICAgICMgY3VzdG9taXplIFBhY2thZ2luZycgYmVoYXZpb3VyIGNvbW1hbmQtYnktY29tbWFuZCBhbmQgbGV0IHNvbWUKKyAgICAgICAgIyBjb21tYW5kcyBmYWxsIGJhY2sgb24gdGhlIERpc3RyaWJ1dGlvbidzIGJlaGF2aW91ci4gIE5vbmUgbWVhbnMKKyAgICAgICAgIyAibm90IGRlZmluZWQsIGNoZWNrIHNlbGYuZGlzdHJpYnV0aW9uJ3MgY29weSIsIHdoaWxlIDAgb3IgMSBtZWFuCisgICAgICAgICMgZmFsc2UgYW5kIHRydWUgKGR1aCkuICBOb3RlIHRoYXQgdGhpcyBtZWFucyBmaWd1cmluZyBvdXQgdGhlIHJlYWwKKyAgICAgICAgIyB2YWx1ZSBvZiBlYWNoIGZsYWcgaXMgYSB0b3VjaCBjb21wbGljYXRlZCAtLSBoZW5jZSAic2VsZi5fZHJ5X3J1biIKKyAgICAgICAgIyB3aWxsIGJlIGhhbmRsZWQgYnkgYSBwcm9wZXJ0eSwgYmVsb3cuCisgICAgICAgICMgWFhYIFRoaXMgbmVlZHMgdG8gYmUgZml4ZWQuIFtJIGNoYW5nZWQgaXQgdG8gYSBwcm9wZXJ0eS0tZG9lcyB0aGF0CisgICAgICAgICMgICAgICJmaXgiIGl0P10KKyAgICAgICAgc2VsZi5fZHJ5X3J1biA9IE5vbmUKKworICAgICAgICAjIFNvbWUgY29tbWFuZHMgZGVmaW5lIGEgJ3NlbGYuZm9yY2UnIG9wdGlvbiB0byBpZ25vcmUgZmlsZQorICAgICAgICAjIHRpbWVzdGFtcHMsIGJ1dCBtZXRob2RzIGRlZmluZWQgKmhlcmUqIGFzc3VtZSB0aGF0CisgICAgICAgICMgJ3NlbGYuZm9yY2UnIGV4aXN0cyBmb3IgYWxsIGNvbW1hbmRzLiAgU28gZGVmaW5lIGl0IGhlcmUKKyAgICAgICAgIyBqdXN0IHRvIGJlIHNhZmUuCisgICAgICAgIHNlbGYuZm9yY2UgPSBOb25lCisKKyAgICAgICAgIyBUaGUgJ2hlbHAnIGZsYWcgaXMganVzdCB1c2VkIGZvciBjb21tYW5kIGxpbmUgcGFyc2luZywgc28KKyAgICAgICAgIyBub25lIG9mIHRoYXQgY29tcGxpY2F0ZWQgYnVyZWF1Y3JhY3kgaXMgbmVlZGVkLgorICAgICAgICBzZWxmLmhlbHAgPSBGYWxzZQorCisgICAgICAgICMgJ2ZpbmFsaXplZCcgcmVjb3JkcyB3aGV0aGVyIG9yIG5vdCAnZmluYWxpemVfb3B0aW9ucygpJyBoYXMgYmVlbgorICAgICAgICAjIGNhbGxlZC4gICdmaW5hbGl6ZV9vcHRpb25zKCknIGl0c2VsZiBzaG91bGQgbm90IHBheSBhdHRlbnRpb24gdG8KKyAgICAgICAgIyB0aGlzIGZsYWc6IGl0IGlzIHRoZSBidXNpbmVzcyBvZiAnZW5zdXJlX2ZpbmFsaXplZCgpJywgd2hpY2gKKyAgICAgICAgIyBhbHdheXMgY2FsbHMgJ2ZpbmFsaXplX29wdGlvbnMoKScsIHRvIHJlc3BlY3QvdXBkYXRlIGl0LgorICAgICAgICBzZWxmLmZpbmFsaXplZCA9IEZhbHNlCisKKyAgICAjIFhYWCBBIG1vcmUgZXhwbGljaXQgd2F5IHRvIGN1c3RvbWl6ZSBkcnlfcnVuIHdvdWxkIGJlIGJldHRlci4KKyAgICBAcHJvcGVydHkKKyAgICBkZWYgZHJ5X3J1bihzZWxmKToKKyAgICAgICAgaWYgc2VsZi5fZHJ5X3J1biBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuIGdldGF0dHIoc2VsZi5kaXN0cmlidXRpb24sICdkcnlfcnVuJykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9kcnlfcnVuCisKKyAgICBkZWYgZW5zdXJlX2ZpbmFsaXplZChzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuZmluYWxpemVkOgorICAgICAgICAgICAgc2VsZi5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgc2VsZi5maW5hbGl6ZWQgPSBUcnVlCisKKyAgICAjIFN1YmNsYXNzZXMgbXVzdCBkZWZpbmU6CisgICAgIyAgIGluaXRpYWxpemVfb3B0aW9ucygpCisgICAgIyAgICAgcHJvdmlkZSBkZWZhdWx0IHZhbHVlcyBmb3IgYWxsIG9wdGlvbnM7IG1heSBiZSBjdXN0b21pemVkIGJ5CisgICAgIyAgICAgc2V0dXAgc2NyaXB0LCBieSBvcHRpb25zIGZyb20gY29uZmlnIGZpbGUocyksIG9yIGJ5IGNvbW1hbmQtbGluZQorICAgICMgICAgIG9wdGlvbnMKKyAgICAjICAgZmluYWxpemVfb3B0aW9ucygpCisgICAgIyAgICAgZGVjaWRlIG9uIHRoZSBmaW5hbCB2YWx1ZXMgZm9yIGFsbCBvcHRpb25zOyB0aGlzIGlzIGNhbGxlZAorICAgICMgICAgIGFmdGVyIGFsbCBwb3NzaWJsZSBpbnRlcnZlbnRpb24gZnJvbSB0aGUgb3V0c2lkZSB3b3JsZAorICAgICMgICAgIChjb21tYW5kIGxpbmUsIG9wdGlvbiBmaWxlLCBldGMuKSBoYXMgYmVlbiBwcm9jZXNzZWQKKyAgICAjICAgcnVuKCkKKyAgICAjICAgICBydW4gdGhlIGNvbW1hbmQ6IGRvIHdoYXRldmVyIGl0IGlzIHdlJ3JlIGhlcmUgdG8gZG8sCisgICAgIyAgICAgY29udHJvbGxlZCBieSB0aGUgY29tbWFuZCdzIHZhcmlvdXMgb3B0aW9uIHZhbHVlcworCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIiIiU2V0IGRlZmF1bHQgdmFsdWVzIGZvciBhbGwgdGhlIG9wdGlvbnMgdGhhdCB0aGlzIGNvbW1hbmQKKyAgICAgICAgc3VwcG9ydHMuICBOb3RlIHRoYXQgdGhlc2UgZGVmYXVsdHMgbWF5IGJlIG92ZXJyaWRkZW4gYnkgb3RoZXIKKyAgICAgICAgY29tbWFuZHMsIGJ5IHRoZSBzZXR1cCBzY3JpcHQsIGJ5IGNvbmZpZyBmaWxlcywgb3IgYnkgdGhlCisgICAgICAgIGNvbW1hbmQgbGluZS4gIFRodXMsIHRoaXMgaXMgbm90IHRoZSBwbGFjZSB0byBjb2RlIGRlcGVuZGVuY2llcworICAgICAgICBiZXR3ZWVuIG9wdGlvbnM7IGdlbmVyYWxseSwgJ2luaXRpYWxpemVfb3B0aW9ucygpJyBpbXBsZW1lbnRhdGlvbnMKKyAgICAgICAgYXJlIGp1c3QgYSBidW5jaCBvZiAic2VsZi5mb28gPSBOb25lIiBhc3NpZ25tZW50cy4KKworICAgICAgICBUaGlzIG1ldGhvZCBtdXN0IGJlIGltcGxlbWVudGVkIGJ5IGFsbCBjb21tYW5kIGNsYXNzZXMuCisgICAgICAgICIiIgorICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoCisgICAgICAgICAgICAiYWJzdHJhY3QgbWV0aG9kIC0tIHN1YmNsYXNzICVzIG11c3Qgb3ZlcnJpZGUiICUgc2VsZi5fX2NsYXNzX18pCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIiIiU2V0IGZpbmFsIHZhbHVlcyBmb3IgYWxsIHRoZSBvcHRpb25zIHRoYXQgdGhpcyBjb21tYW5kIHN1cHBvcnRzLgorICAgICAgICBUaGlzIGlzIGFsd2F5cyBjYWxsZWQgYXMgbGF0ZSBhcyBwb3NzaWJsZSwgaWUuICBhZnRlciBhbnkgb3B0aW9uCisgICAgICAgIGFzc2lnbm1lbnRzIGZyb20gdGhlIGNvbW1hbmQgbGluZSBvciBmcm9tIG90aGVyIGNvbW1hbmRzIGhhdmUgYmVlbgorICAgICAgICBkb25lLiAgVGh1cywgdGhpcyBpcyB0aGUgcGxhY2UgdG8gY29kZSBvcHRpb24gZGVwZW5kZW5jaWVzOiBpZgorICAgICAgICAnZm9vJyBkZXBlbmRzIG9uICdiYXInLCB0aGVuIGl0IGlzIHNhZmUgdG8gc2V0ICdmb28nIGZyb20gJ2JhcicgYXMKKyAgICAgICAgbG9uZyBhcyAnZm9vJyBzdGlsbCBoYXMgdGhlIHNhbWUgdmFsdWUgaXQgd2FzIGFzc2lnbmVkIGluCisgICAgICAgICdpbml0aWFsaXplX29wdGlvbnMoKScuCisKKyAgICAgICAgVGhpcyBtZXRob2QgbXVzdCBiZSBpbXBsZW1lbnRlZCBieSBhbGwgY29tbWFuZCBjbGFzc2VzLgorICAgICAgICAiIiIKKyAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKAorICAgICAgICAgICAgImFic3RyYWN0IG1ldGhvZCAtLSBzdWJjbGFzcyAlcyBtdXN0IG92ZXJyaWRlIiAlIHNlbGYuX19jbGFzc19fKQorCisgICAgZGVmIGR1bXBfb3B0aW9ucyhzZWxmLCBoZWFkZXI9Tm9uZSwgaW5kZW50PSIiKToKKyAgICAgICAgaWYgaGVhZGVyIGlzIE5vbmU6CisgICAgICAgICAgICBoZWFkZXIgPSAiY29tbWFuZCBvcHRpb25zIGZvciAnJXMnOiIgJSBzZWxmLmdldF9jb21tYW5kX25hbWUoKQorICAgICAgICBsb2dnZXIuaW5mbyhpbmRlbnQgKyBoZWFkZXIpCisgICAgICAgIGluZGVudCA9IGluZGVudCArICIgICIKKyAgICAgICAgbmVnYXRpdmVfb3B0ID0gZ2V0YXR0cihzZWxmLCAnbmVnYXRpdmVfb3B0JywgKCkpCisgICAgICAgIGZvciBvcHRpb24sIF8sIF8gaW4gc2VsZi51c2VyX29wdGlvbnM6CisgICAgICAgICAgICBpZiBvcHRpb24gaW4gbmVnYXRpdmVfb3B0OgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBvcHRpb24gPSBvcHRpb24ucmVwbGFjZSgnLScsICdfJykKKyAgICAgICAgICAgIGlmIG9wdGlvblstMV0gPT0gIj0iOgorICAgICAgICAgICAgICAgIG9wdGlvbiA9IG9wdGlvbls6LTFdCisgICAgICAgICAgICB2YWx1ZSA9IGdldGF0dHIoc2VsZiwgb3B0aW9uKQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oaW5kZW50ICsgIiVzID0gJXMiLCBvcHRpb24sIHZhbHVlKQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgIiIiQSBjb21tYW5kJ3MgcmFpc29uIGQnZXRyZTogY2Fycnkgb3V0IHRoZSBhY3Rpb24gaXQgZXhpc3RzIHRvCisgICAgICAgIHBlcmZvcm0sIGNvbnRyb2xsZWQgYnkgdGhlIG9wdGlvbnMgaW5pdGlhbGl6ZWQgaW4KKyAgICAgICAgJ2luaXRpYWxpemVfb3B0aW9ucygpJywgY3VzdG9taXplZCBieSBvdGhlciBjb21tYW5kcywgdGhlIHNldHVwCisgICAgICAgIHNjcmlwdCwgdGhlIGNvbW1hbmQgbGluZSBhbmQgY29uZmlnIGZpbGVzLCBhbmQgZmluYWxpemVkIGluCisgICAgICAgICdmaW5hbGl6ZV9vcHRpb25zKCknLiAgQWxsIHRlcm1pbmFsIG91dHB1dCBhbmQgZmlsZXN5c3RlbQorICAgICAgICBpbnRlcmFjdGlvbiBzaG91bGQgYmUgZG9uZSBieSAncnVuKCknLgorCisgICAgICAgIFRoaXMgbWV0aG9kIG11c3QgYmUgaW1wbGVtZW50ZWQgYnkgYWxsIGNvbW1hbmQgY2xhc3Nlcy4KKyAgICAgICAgIiIiCisgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigKKyAgICAgICAgICAgICJhYnN0cmFjdCBtZXRob2QgLS0gc3ViY2xhc3MgJXMgbXVzdCBvdmVycmlkZSIgJSBzZWxmLl9fY2xhc3NfXykKKworICAgICMgLS0gRXh0ZXJuYWwgaW50ZXJmYWNlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgIyAoY2FsbGVkIGJ5IG91dHNpZGVycykKKworICAgIGRlZiBnZXRfc291cmNlX2ZpbGVzKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGxpc3Qgb2YgZmlsZXMgdGhhdCBhcmUgdXNlZCBhcyBpbnB1dHMgdG8gdGhpcyBjb21tYW5kLAorICAgICAgICBpLmUuIHRoZSBmaWxlcyB1c2VkIHRvIGdlbmVyYXRlIHRoZSBvdXRwdXQgZmlsZXMuICBUaGUgcmVzdWx0IGlzIHVzZWQKKyAgICAgICAgYnkgdGhlIGBzZGlzdGAgY29tbWFuZCBpbiBkZXRlcm1pbmluZyB0aGUgc2V0IG9mIGRlZmF1bHQgZmlsZXMuCisKKyAgICAgICAgQ29tbWFuZCBjbGFzc2VzIHNob3VsZCBpbXBsZW1lbnQgdGhpcyBtZXRob2QgaWYgdGhleSBvcGVyYXRlIG9uIGZpbGVzCisgICAgICAgIGZyb20gdGhlIHNvdXJjZSB0cmVlLgorICAgICAgICAiIiIKKyAgICAgICAgcmV0dXJuIFtdCisKKyAgICBkZWYgZ2V0X291dHB1dHMoc2VsZik6CisgICAgICAgICIiIlJldHVybiB0aGUgbGlzdCBvZiBmaWxlcyB0aGF0IHdvdWxkIGJlIHByb2R1Y2VkIGlmIHRoaXMgY29tbWFuZAorICAgICAgICB3ZXJlIGFjdHVhbGx5IHJ1bi4gIE5vdCBhZmZlY3RlZCBieSB0aGUgImRyeS1ydW4iIGZsYWcgb3Igd2hldGhlcgorICAgICAgICBhbnkgb3RoZXIgY29tbWFuZHMgaGF2ZSBiZWVuIHJ1bi4KKworICAgICAgICBDb21tYW5kIGNsYXNzZXMgc2hvdWxkIGltcGxlbWVudCB0aGlzIG1ldGhvZCBpZiB0aGV5IHByb2R1Y2UgYW55CisgICAgICAgIG91dHB1dCBmaWxlcyB0aGF0IGdldCBjb25zdW1lZCBieSBhbm90aGVyIGNvbW1hbmQuICBlLmcuLCBgYnVpbGRfZXh0YAorICAgICAgICByZXR1cm5zIHRoZSBsaXN0IG9mIGJ1aWx0IGV4dGVuc2lvbiBtb2R1bGVzLCBidXQgbm90IGFueSB0ZW1wb3JhcnkKKyAgICAgICAgZmlsZXMgdXNlZCBpbiB0aGUgY29tcGlsYXRpb24gcHJvY2Vzcy4KKyAgICAgICAgIiIiCisgICAgICAgIHJldHVybiBbXQorCisgICAgIyAtLSBPcHRpb24gdmFsaWRhdGlvbiBtZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjICh0aGVzZSBhcmUgdmVyeSBoYW5keSBpbiB3cml0aW5nIHRoZSAnZmluYWxpemVfb3B0aW9ucygpJyBtZXRob2QpCisgICAgIworICAgICMgTkIuIHRoZSBnZW5lcmFsIHBoaWxvc29waHkgaGVyZSBpcyB0byBlbnN1cmUgdGhhdCBhIHBhcnRpY3VsYXIgb3B0aW9uCisgICAgIyB2YWx1ZSBtZWV0cyBjZXJ0YWluIHR5cGUgYW5kIHZhbHVlIGNvbnN0cmFpbnRzLiAgSWYgbm90LCB3ZSB0cnkgdG8KKyAgICAjIGZvcmNlIGl0IGludG8gY29uZm9ybWFuY2UgKGVnLiBpZiB3ZSBleHBlY3QgYSBsaXN0IGJ1dCBoYXZlIGEgc3RyaW5nLAorICAgICMgc3BsaXQgdGhlIHN0cmluZyBvbiBjb21tYSBhbmQvb3Igd2hpdGVzcGFjZSkuICBJZiB3ZSBjYW4ndCBmb3JjZSB0aGUKKyAgICAjIG9wdGlvbiBpbnRvIGNvbmZvcm1hbmNlLCByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvci4gIFRodXMsIGNvbW1hbmQKKyAgICAjIGNsYXNzZXMgbmVlZCBkbyBub3RoaW5nIG1vcmUgdGhhbiAoZWcuKQorICAgICMgICBzZWxmLmVuc3VyZV9zdHJpbmdfbGlzdCgnZm9vJykKKyAgICAjIGFuZCB0aGV5IGNhbiBiZSBndWFyYW50ZWVkIHRoYXQgdGhlcmVhZnRlciwgc2VsZi5mb28gd2lsbCBiZQorICAgICMgYSBsaXN0IG9mIHN0cmluZ3MuCisKKyAgICBkZWYgX2Vuc3VyZV9zdHJpbmdsaWtlKHNlbGYsIG9wdGlvbiwgd2hhdCwgZGVmYXVsdD1Ob25lKToKKyAgICAgICAgdmFsID0gZ2V0YXR0cihzZWxmLCBvcHRpb24pCisgICAgICAgIGlmIHZhbCBpcyBOb25lOgorICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBvcHRpb24sIGRlZmF1bHQpCisgICAgICAgICAgICByZXR1cm4gZGVmYXVsdAorICAgICAgICBlbGlmIG5vdCBpc2luc3RhbmNlKHZhbCwgc3RyKToKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKCInJXMnIG11c3QgYmUgYSAlcyAoZ290IGAlc2ApIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob3B0aW9uLCB3aGF0LCB2YWwpKQorICAgICAgICByZXR1cm4gdmFsCisKKyAgICBkZWYgZW5zdXJlX3N0cmluZyhzZWxmLCBvcHRpb24sIGRlZmF1bHQ9Tm9uZSk6CisgICAgICAgICIiIkVuc3VyZSB0aGF0ICdvcHRpb24nIGlzIGEgc3RyaW5nOyBpZiBub3QgZGVmaW5lZCwgc2V0IGl0IHRvCisgICAgICAgICdkZWZhdWx0Jy4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuX2Vuc3VyZV9zdHJpbmdsaWtlKG9wdGlvbiwgInN0cmluZyIsIGRlZmF1bHQpCisKKyAgICBkZWYgZW5zdXJlX3N0cmluZ19saXN0KHNlbGYsIG9wdGlvbik6CisgICAgICAgIHIiIiJFbnN1cmUgdGhhdCAnb3B0aW9uJyBpcyBhIGxpc3Qgb2Ygc3RyaW5ncy4gIElmICdvcHRpb24nIGlzCisgICAgICAgIGN1cnJlbnRseSBhIHN0cmluZywgd2Ugc3BsaXQgaXQgZWl0aGVyIG9uIC8sXHMqLyBvciAvXHMrLywgc28KKyAgICAgICAgImZvbyBiYXIgYmF6IiwgImZvbyxiYXIsYmF6IiwgYW5kICJmb28sICAgYmFyIGJheiIgYWxsIGJlY29tZQorICAgICAgICBbImZvbyIsICJiYXIiLCAiYmF6Il0uCisgICAgICAgICIiIgorICAgICAgICB2YWwgPSBnZXRhdHRyKHNlbGYsIG9wdGlvbikKKyAgICAgICAgaWYgdmFsIGlzIE5vbmU6CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKHZhbCwgc3RyKToKKyAgICAgICAgICAgIHNldGF0dHIoc2VsZiwgb3B0aW9uLCByZS5zcGxpdChyJyxccyp8XHMrJywgdmFsKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UodmFsLCBsaXN0KToKKyAgICAgICAgICAgICAgICAjIGNoZWNrcyBpZiBhbGwgZWxlbWVudHMgYXJlIHN0cgorICAgICAgICAgICAgICAgIG9rID0gVHJ1ZQorICAgICAgICAgICAgICAgIGZvciBlbGVtZW50IGluIHZhbDoKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoZWxlbWVudCwgc3RyKToKKyAgICAgICAgICAgICAgICAgICAgICAgIG9rID0gRmFsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG9rID0gRmFsc2UKKworICAgICAgICAgICAgaWYgbm90IG9rOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICAgICAiJyVzJyBtdXN0IGJlIGEgbGlzdCBvZiBzdHJpbmdzIChnb3QgJXIpIiAlIChvcHRpb24sIHZhbCkpCisKKyAgICBkZWYgX2Vuc3VyZV90ZXN0ZWRfc3RyaW5nKHNlbGYsIG9wdGlvbiwgdGVzdGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hhdCwgZXJyb3JfZm10LCBkZWZhdWx0PU5vbmUpOgorICAgICAgICB2YWwgPSBzZWxmLl9lbnN1cmVfc3RyaW5nbGlrZShvcHRpb24sIHdoYXQsIGRlZmF1bHQpCisgICAgICAgIGlmIHZhbCBpcyBub3QgTm9uZSBhbmQgbm90IHRlc3Rlcih2YWwpOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgKCJlcnJvciBpbiAnJXMnIG9wdGlvbjogIiArIGVycm9yX2ZtdCkgJSAob3B0aW9uLCB2YWwpKQorCisgICAgZGVmIGVuc3VyZV9maWxlbmFtZShzZWxmLCBvcHRpb24pOgorICAgICAgICAiIiJFbnN1cmUgdGhhdCAnb3B0aW9uJyBpcyB0aGUgbmFtZSBvZiBhbiBleGlzdGluZyBmaWxlLiIiIgorICAgICAgICBzZWxmLl9lbnN1cmVfdGVzdGVkX3N0cmluZyhvcHRpb24sIG9zLnBhdGguaXNmaWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZmlsZW5hbWUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJyVzJyBkb2VzIG5vdCBleGlzdCBvciBpcyBub3QgYSBmaWxlIikKKworICAgIGRlZiBlbnN1cmVfZGlybmFtZShzZWxmLCBvcHRpb24pOgorICAgICAgICBzZWxmLl9lbnN1cmVfdGVzdGVkX3N0cmluZyhvcHRpb24sIG9zLnBhdGguaXNkaXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXJlY3RvcnkgbmFtZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICInJXMnIGRvZXMgbm90IGV4aXN0IG9yIGlzIG5vdCBhIGRpcmVjdG9yeSIpCisKKyAgICAjIC0tIENvbnZlbmllbmNlIG1ldGhvZHMgZm9yIGNvbW1hbmRzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgQGNsYXNzbWV0aG9kCisgICAgZGVmIGdldF9jb21tYW5kX25hbWUoY2xzKToKKyAgICAgICAgaWYgaGFzYXR0cihjbHMsICdjb21tYW5kX25hbWUnKToKKyAgICAgICAgICAgIHJldHVybiBjbHMuY29tbWFuZF9uYW1lCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gY2xzLl9fbmFtZV9fCisKKyAgICBkZWYgc2V0X3VuZGVmaW5lZF9vcHRpb25zKHNlbGYsIHNyY19jbWQsICpvcHRpb25zKToKKyAgICAgICAgIiIiU2V0IHZhbHVlcyBvZiB1bmRlZmluZWQgb3B0aW9ucyBmcm9tIGFub3RoZXIgY29tbWFuZC4KKworICAgICAgICBVbmRlZmluZWQgb3B0aW9ucyBhcmUgb3B0aW9ucyBzZXQgdG8gTm9uZSwgd2hpY2ggaXMgdGhlIGNvbnZlbnRpb24KKyAgICAgICAgdXNlZCB0byBpbmRpY2F0ZSB0aGF0IGFuIG9wdGlvbiBoYXMgbm90IGJlZW4gY2hhbmdlZCBiZXR3ZWVuCisgICAgICAgICdpbml0aWFsaXplX29wdGlvbnMoKScgYW5kICdmaW5hbGl6ZV9vcHRpb25zKCknLiAgVGhpcyBtZXRob2QgaXMKKyAgICAgICAgdXN1YWxseSBjYWxsZWQgZnJvbSAnZmluYWxpemVfb3B0aW9ucygpJyBmb3Igb3B0aW9ucyB0aGF0IGRlcGVuZCBvbgorICAgICAgICBzb21lIG90aGVyIGNvbW1hbmQgcmF0aGVyIHRoYW4gYW5vdGhlciBvcHRpb24gb2YgdGhlIHNhbWUgY29tbWFuZCwKKyAgICAgICAgdHlwaWNhbGx5IHN1YmNvbW1hbmRzLgorCisgICAgICAgIFRoZSAnc3JjX2NtZCcgYXJndW1lbnQgaXMgdGhlIG90aGVyIGNvbW1hbmQgZnJvbSB3aGljaCBvcHRpb24gdmFsdWVzCisgICAgICAgIHdpbGwgYmUgdGFrZW4gKGEgY29tbWFuZCBvYmplY3Qgd2lsbCBiZSBjcmVhdGVkIGZvciBpdCBpZiBuZWNlc3NhcnkpOworICAgICAgICB0aGUgcmVtYWluaW5nIHBvc2l0aW9uYWwgYXJndW1lbnRzIGFyZSBzdHJpbmdzIHRoYXQgZ2l2ZSB0aGUgbmFtZSBvZgorICAgICAgICB0aGUgb3B0aW9uIHRvIHNldC4gSWYgdGhlIG5hbWUgaXMgZGlmZmVyZW50IG9uIHRoZSBzb3VyY2UgYW5kIHRhcmdldAorICAgICAgICBjb21tYW5kLCB5b3UgY2FuIHBhc3MgYSB0dXBsZSB3aXRoICcobmFtZV9vbl9zb3VyY2UsIG5hbWVfb25fZGVzdCknIHNvCisgICAgICAgIHRoYXQgJ3NlbGYubmFtZV9vbl9kZXN0JyB3aWxsIGJlIHNldCBmcm9tICdzcmNfY21kLm5hbWVfb25fc291cmNlJy4KKyAgICAgICAgIiIiCisgICAgICAgIHNyY19jbWRfb2JqID0gc2VsZi5kaXN0cmlidXRpb24uZ2V0X2NvbW1hbmRfb2JqKHNyY19jbWQpCisgICAgICAgIHNyY19jbWRfb2JqLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBmb3Igb2JqIGluIG9wdGlvbnM6CisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKG9iaiwgdHVwbGUpOgorICAgICAgICAgICAgICAgIHNyY19vcHRpb24sIGRzdF9vcHRpb24gPSBvYmoKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc3JjX29wdGlvbiwgZHN0X29wdGlvbiA9IG9iaiwgb2JqCisgICAgICAgICAgICBpZiBnZXRhdHRyKHNlbGYsIGRzdF9vcHRpb24pIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBkc3Rfb3B0aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgZ2V0YXR0cihzcmNfY21kX29iaiwgc3JjX29wdGlvbikpCisKKyAgICBkZWYgZ2V0X2ZpbmFsaXplZF9jb21tYW5kKHNlbGYsIGNvbW1hbmQsIGNyZWF0ZT1UcnVlKToKKyAgICAgICAgIiIiV3JhcHBlciBhcm91bmQgRGlzdHJpYnV0aW9uJ3MgJ2dldF9jb21tYW5kX29iaigpJyBtZXRob2Q6IGZpbmQKKyAgICAgICAgKGNyZWF0ZSBpZiBuZWNlc3NhcnkgYW5kICdjcmVhdGUnIGlzIHRydWUpIHRoZSBjb21tYW5kIG9iamVjdCBmb3IKKyAgICAgICAgJ2NvbW1hbmQnLCBjYWxsIGl0cyAnZW5zdXJlX2ZpbmFsaXplZCgpJyBtZXRob2QsIGFuZCByZXR1cm4gdGhlCisgICAgICAgIGZpbmFsaXplZCBjb21tYW5kIG9iamVjdC4KKyAgICAgICAgIiIiCisgICAgICAgIGNtZF9vYmogPSBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfY29tbWFuZF9vYmooY29tbWFuZCwgY3JlYXRlKQorICAgICAgICBjbWRfb2JqLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICByZXR1cm4gY21kX29iagorCisgICAgZGVmIHJlaW5pdGlhbGl6ZV9jb21tYW5kKHNlbGYsIGNvbW1hbmQsIHJlaW5pdF9zdWJjb21tYW5kcz1GYWxzZSk6CisgICAgICAgIHJldHVybiBzZWxmLmRpc3RyaWJ1dGlvbi5yZWluaXRpYWxpemVfY29tbWFuZCgKKyAgICAgICAgICAgIGNvbW1hbmQsIHJlaW5pdF9zdWJjb21tYW5kcykKKworICAgIGRlZiBydW5fY29tbWFuZChzZWxmLCBjb21tYW5kKToKKyAgICAgICAgIiIiUnVuIHNvbWUgb3RoZXIgY29tbWFuZDogdXNlcyB0aGUgJ3J1bl9jb21tYW5kKCknIG1ldGhvZCBvZgorICAgICAgICBEaXN0cmlidXRpb24sIHdoaWNoIGNyZWF0ZXMgYW5kIGZpbmFsaXplcyB0aGUgY29tbWFuZCBvYmplY3QgaWYKKyAgICAgICAgbmVjZXNzYXJ5IGFuZCB0aGVuIGludm9rZXMgaXRzICdydW4oKScgbWV0aG9kLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5kaXN0cmlidXRpb24ucnVuX2NvbW1hbmQoY29tbWFuZCkKKworICAgIGRlZiBnZXRfc3ViX2NvbW1hbmRzKHNlbGYpOgorICAgICAgICAiIiJEZXRlcm1pbmUgdGhlIHN1Yi1jb21tYW5kcyB0aGF0IGFyZSByZWxldmFudCBpbiB0aGUgY3VycmVudAorICAgICAgICBkaXN0cmlidXRpb24gKGllLiwgdGhhdCBuZWVkIHRvIGJlIHJ1bikuICBUaGlzIGlzIGJhc2VkIG9uIHRoZQorICAgICAgICAnc3ViX2NvbW1hbmRzJyBjbGFzcyBhdHRyaWJ1dGU6IGVhY2ggdHVwbGUgaW4gdGhhdCBsaXN0IG1heSBpbmNsdWRlCisgICAgICAgIGEgbWV0aG9kIHRoYXQgd2UgY2FsbCB0byBkZXRlcm1pbmUgaWYgdGhlIHN1YmNvbW1hbmQgbmVlZHMgdG8gYmUKKyAgICAgICAgcnVuIGZvciB0aGUgY3VycmVudCBkaXN0cmlidXRpb24uICBSZXR1cm4gYSBsaXN0IG9mIGNvbW1hbmQgbmFtZXMuCisgICAgICAgICIiIgorICAgICAgICBjb21tYW5kcyA9IFtdCisgICAgICAgIGZvciBzdWJfY29tbWFuZCBpbiBzZWxmLnN1Yl9jb21tYW5kczoKKyAgICAgICAgICAgIGlmIGxlbihzdWJfY29tbWFuZCkgPT0gMjoKKyAgICAgICAgICAgICAgICBjbWRfbmFtZSwgbWV0aG9kID0gc3ViX2NvbW1hbmQKKyAgICAgICAgICAgICAgICBpZiBtZXRob2QgaXMgTm9uZSBvciBtZXRob2Qoc2VsZik6CisgICAgICAgICAgICAgICAgICAgIGNvbW1hbmRzLmFwcGVuZChjbWRfbmFtZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgY29tbWFuZHMuYXBwZW5kKHN1Yl9jb21tYW5kKQorICAgICAgICByZXR1cm4gY29tbWFuZHMKKworICAgICMgLS0gRXh0ZXJuYWwgd29ybGQgbWFuaXB1bGF0aW9uIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgZXhlY3V0ZShzZWxmLCBmdW5jLCBhcmdzLCBtc2c9Tm9uZSwgbGV2ZWw9MSk6CisgICAgICAgIHV0aWwuZXhlY3V0ZShmdW5jLCBhcmdzLCBtc2csIGRyeV9ydW49c2VsZi5kcnlfcnVuKQorCisgICAgZGVmIG1rcGF0aChzZWxmLCBuYW1lLCBtb2RlPTBvNzc3LCBkcnlfcnVuPU5vbmUpOgorICAgICAgICBpZiBkcnlfcnVuIGlzIE5vbmU6CisgICAgICAgICAgICBkcnlfcnVuID0gc2VsZi5kcnlfcnVuCisgICAgICAgIG5hbWUgPSBvcy5wYXRoLm5vcm1wYXRoKG5hbWUpCisgICAgICAgIGlmIG9zLnBhdGguaXNkaXIobmFtZSkgb3IgbmFtZSA9PSAnJzoKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBpZiBkcnlfcnVuOgorICAgICAgICAgICAgaGVhZCA9ICcnCisgICAgICAgICAgICBmb3IgcGFydCBpbiBuYW1lLnNwbGl0KG9zLnNlcCk6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oImNyZWF0ZWQgZGlyZWN0b3J5ICVzJXMiLCBoZWFkLCBwYXJ0KQorICAgICAgICAgICAgICAgIGhlYWQgKz0gcGFydCArIG9zLnNlcAorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIG9zLm1ha2VkaXJzKG5hbWUsIG1vZGUpCisKKyAgICBkZWYgY29weV9maWxlKHNlbGYsIGluZmlsZSwgb3V0ZmlsZSwKKyAgICAgICAgICAgICAgICAgIHByZXNlcnZlX21vZGU9VHJ1ZSwgcHJlc2VydmVfdGltZXM9VHJ1ZSwgbGluaz1Ob25lLCBsZXZlbD0xKToKKyAgICAgICAgIiIiQ29weSBhIGZpbGUgcmVzcGVjdGluZyBkcnktcnVuIGFuZCBmb3JjZSBmbGFncy4KKworICAgICAgICAoZHJ5LXJ1biBkZWZhdWx0cyB0byB3aGF0ZXZlciBpcyBpbiB0aGUgRGlzdHJpYnV0aW9uIG9iamVjdCwgYW5kCisgICAgICAgIGZvcmNlIHRvIGZhbHNlIGZvciBjb21tYW5kcyB0aGF0IGRvbid0IGRlZmluZSBpdC4pCisgICAgICAgICIiIgorICAgICAgICBpZiBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICAjIFhYWCBhZGQgYSBjb21tZW50CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgaWYgb3MucGF0aC5pc2RpcihvdXRmaWxlKToKKyAgICAgICAgICAgIG91dGZpbGUgPSBvcy5wYXRoLmpvaW4ob3V0ZmlsZSwgb3MucGF0aC5zcGxpdChpbmZpbGUpWy0xXSkKKyAgICAgICAgY29weWZpbGUoaW5maWxlLCBvdXRmaWxlKQorICAgICAgICByZXR1cm4gb3V0ZmlsZSwgTm9uZSAgIyBYWFgKKworICAgIGRlZiBjb3B5X3RyZWUoc2VsZiwgaW5maWxlLCBvdXRmaWxlLCBwcmVzZXJ2ZV9tb2RlPVRydWUsCisgICAgICAgICAgICAgICAgICBwcmVzZXJ2ZV90aW1lcz1UcnVlLCBwcmVzZXJ2ZV9zeW1saW5rcz1GYWxzZSwgbGV2ZWw9MSk6CisgICAgICAgICIiIkNvcHkgYW4gZW50aXJlIGRpcmVjdG9yeSB0cmVlIHJlc3BlY3RpbmcgZHJ5LXJ1bgorICAgICAgICBhbmQgZm9yY2UgZmxhZ3MuCisgICAgICAgICIiIgorICAgICAgICBpZiBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICAjIFhYWCBzaG91bGQgbm90IHJldHVybiBidXQgbGV0IGNvcHlfdHJlZSBsb2cgYW5kIGRlY2lkZSB0byBleGVjdXRlCisgICAgICAgICAgICAjIG9yIG5vdCBiYXNlZCBvbiBpdHMgZHJ5X3J1biBhcmd1bWVudAorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgcmV0dXJuIHV0aWwuY29weV90cmVlKGluZmlsZSwgb3V0ZmlsZSwgcHJlc2VydmVfbW9kZSwgcHJlc2VydmVfdGltZXMsCisgICAgICAgICAgICBwcmVzZXJ2ZV9zeW1saW5rcywgbm90IHNlbGYuZm9yY2UsIGRyeV9ydW49c2VsZi5kcnlfcnVuKQorCisgICAgZGVmIG1vdmVfZmlsZShzZWxmLCBzcmMsIGRzdCwgbGV2ZWw9MSk6CisgICAgICAgICIiIk1vdmUgYSBmaWxlIHJlc3BlY3RpbmcgdGhlIGRyeS1ydW4gZmxhZy4iIiIKKyAgICAgICAgaWYgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgcmV0dXJuICAjIFhYWCBzYW1lIHRoaW5nCisgICAgICAgIHJldHVybiBtb3ZlKHNyYywgZHN0KQorCisgICAgZGVmIHNwYXduKHNlbGYsIGNtZCwgc2VhcmNoX3BhdGg9VHJ1ZSwgbGV2ZWw9MSk6CisgICAgICAgICIiIlNwYXduIGFuIGV4dGVybmFsIGNvbW1hbmQgcmVzcGVjdGluZyBkcnktcnVuIGZsYWcuIiIiCisgICAgICAgIGZyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHNwYXduCisgICAgICAgIHNwYXduKGNtZCwgc2VhcmNoX3BhdGgsIGRyeV9ydW49c2VsZi5kcnlfcnVuKQorCisgICAgZGVmIG1ha2VfYXJjaGl2ZShzZWxmLCBiYXNlX25hbWUsIGZvcm1hdCwgcm9vdF9kaXI9Tm9uZSwgYmFzZV9kaXI9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgIG93bmVyPU5vbmUsIGdyb3VwPU5vbmUpOgorICAgICAgICByZXR1cm4gbWFrZV9hcmNoaXZlKGJhc2VfbmFtZSwgZm9ybWF0LCByb290X2RpciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlX2RpciwgZHJ5X3J1bj1zZWxmLmRyeV9ydW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3duZXI9b3duZXIsIGdyb3VwPWdyb3VwKQorCisgICAgZGVmIG1ha2VfZmlsZShzZWxmLCBpbmZpbGVzLCBvdXRmaWxlLCBmdW5jLCBhcmdzLAorICAgICAgICAgICAgICAgICAgZXhlY19tc2c9Tm9uZSwgc2tpcF9tc2c9Tm9uZSwgbGV2ZWw9MSk6CisgICAgICAgICIiIlNwZWNpYWwgY2FzZSBvZiAnZXhlY3V0ZSgpJyBmb3Igb3BlcmF0aW9ucyB0aGF0IHByb2Nlc3Mgb25lIG9yCisgICAgICAgIG1vcmUgaW5wdXQgZmlsZXMgYW5kIGdlbmVyYXRlIG9uZSBvdXRwdXQgZmlsZS4gIFdvcmtzIGp1c3QgbGlrZQorICAgICAgICAnZXhlY3V0ZSgpJywgZXhjZXB0IHRoZSBvcGVyYXRpb24gaXMgc2tpcHBlZCBhbmQgYSBkaWZmZXJlbnQKKyAgICAgICAgbWVzc2FnZSBwcmludGVkIGlmICdvdXRmaWxlJyBhbHJlYWR5IGV4aXN0cyBhbmQgaXMgbmV3ZXIgdGhhbiBhbGwKKyAgICAgICAgZmlsZXMgbGlzdGVkIGluICdpbmZpbGVzJy4gIElmIHRoZSBjb21tYW5kIGRlZmluZWQgJ3NlbGYuZm9yY2UnLAorICAgICAgICBhbmQgaXQgaXMgdHJ1ZSwgdGhlbiB0aGUgY29tbWFuZCBpcyB1bmNvbmRpdGlvbmFsbHkgcnVuIC0tIGRvZXMgbm8KKyAgICAgICAgdGltZXN0YW1wIGNoZWNrcy4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIHNraXBfbXNnIGlzIE5vbmU6CisgICAgICAgICAgICBza2lwX21zZyA9ICJza2lwcGluZyAlcyAoaW5wdXRzIHVuY2hhbmdlZCkiICUgb3V0ZmlsZQorCisgICAgICAgICMgQWxsb3cgJ2luZmlsZXMnIHRvIGJlIGEgc2luZ2xlIHN0cmluZworICAgICAgICBpZiBpc2luc3RhbmNlKGluZmlsZXMsIHN0cik6CisgICAgICAgICAgICBpbmZpbGVzID0gKGluZmlsZXMsKQorICAgICAgICBlbGlmIG5vdCBpc2luc3RhbmNlKGluZmlsZXMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKAorICAgICAgICAgICAgICAgICInaW5maWxlcycgbXVzdCBiZSBhIHN0cmluZywgb3IgYSBsaXN0IG9yIHR1cGxlIG9mIHN0cmluZ3MiKQorCisgICAgICAgIGlmIGV4ZWNfbXNnIGlzIE5vbmU6CisgICAgICAgICAgICBleGVjX21zZyA9ICJnZW5lcmF0aW5nICVzIGZyb20gJXMiICUgKG91dGZpbGUsICcsICcuam9pbihpbmZpbGVzKSkKKworICAgICAgICAjIElmICdvdXRmaWxlJyBtdXN0IGJlIHJlZ2VuZXJhdGVkIChlaXRoZXIgYmVjYXVzZSBpdCBkb2Vzbid0CisgICAgICAgICMgZXhpc3QsIGlzIG91dC1vZi1kYXRlLCBvciB0aGUgJ2ZvcmNlJyBmbGFnIGlzIHRydWUpIHRoZW4KKyAgICAgICAgIyBwZXJmb3JtIHRoZSBhY3Rpb24gdGhhdCBwcmVzdW1hYmx5IHJlZ2VuZXJhdGVzIGl0CisgICAgICAgIGlmIHNlbGYuZm9yY2Ugb3IgdXRpbC5uZXdlcl9ncm91cChpbmZpbGVzLCBvdXRmaWxlKToKKyAgICAgICAgICAgIHNlbGYuZXhlY3V0ZShmdW5jLCBhcmdzLCBleGVjX21zZywgbGV2ZWwpCisKKyAgICAgICAgIyBPdGhlcndpc2UsIHByaW50IHRoZSAic2tpcCIgbWVzc2FnZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKHNraXBfbXNnKQorCisgICAgZGVmIGJ5dGVfY29tcGlsZShzZWxmLCBmaWxlcywgcHJlZml4PU5vbmUpOgorICAgICAgICAiIiJCeXRlLWNvbXBpbGUgZmlsZXMgdG8gcHljIGFuZC9vciBweW8gZmlsZXMuCisKKyAgICAgICAgVGhpcyBtZXRob2QgcmVxdWlyZXMgdGhhdCB0aGUgY2FsbGluZyBjbGFzcyBkZWZpbmUgY29tcGlsZSBhbmQKKyAgICAgICAgb3B0aW1pemUgb3B0aW9ucywgbGlrZSBidWlsZF9weSBhbmQgaW5zdGFsbF9saWIuICBJdCBhbHNvCisgICAgICAgIGF1dG9tYXRpY2FsbHkgcmVzcGVjdHMgdGhlIGZvcmNlIGFuZCBkcnktcnVuIG9wdGlvbnMuCisKKyAgICAgICAgcHJlZml4LCBpZiBnaXZlbiwgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIHN0cmlwcGVkIG9mZiB0aGUKKyAgICAgICAgZmlsZW5hbWVzIGVuY29kZWQgaW4gYnl0ZWNvZGUgZmlsZXMuCisgICAgICAgICIiIgorICAgICAgICBpZiBzZWxmLmNvbXBpbGU6CisgICAgICAgICAgICB1dGlsLmJ5dGVfY29tcGlsZShmaWxlcywgb3B0aW1pemU9RmFsc2UsIHByZWZpeD1wcmVmaXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JjZT1zZWxmLmZvcmNlLCBkcnlfcnVuPXNlbGYuZHJ5X3J1bikKKyAgICAgICAgaWYgc2VsZi5vcHRpbWl6ZToKKyAgICAgICAgICAgIHV0aWwuYnl0ZV9jb21waWxlKGZpbGVzLCBvcHRpbWl6ZT1zZWxmLm9wdGltaXplLCBwcmVmaXg9cHJlZml4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yY2U9c2VsZi5mb3JjZSwgZHJ5X3J1bj1zZWxmLmRyeV9ydW4pCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY29tbWFuZF90ZW1wbGF0ZSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9jb21tYW5kX3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExMmQzMmIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY29tbWFuZF90ZW1wbGF0ZQpAQCAtMCwwICsxLDM1IEBACisiIiJEbyBYIGFuZCBZLiIiIgorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorCisKK2NsYXNzIHgoQ29tbWFuZCk6CisKKyAgICAjIEJyaWVmICg0MC01MCBjaGFyYWN0ZXJzKSBkZXNjcmlwdGlvbiBvZiB0aGUgY29tbWFuZAorICAgIGRlc2NyaXB0aW9uID0gIiIKKworICAgICMgTGlzdCBvZiBvcHRpb24gdHVwbGVzOiBsb25nIG5hbWUsIHNob3J0IG5hbWUgKE5vbmUgaWYgbm8gc2hvcnQKKyAgICAjIG5hbWUpLCBhbmQgaGVscCBzdHJpbmcuCisgICAgdXNlcl9vcHRpb25zID0gWworICAgICAgICAoJycsICcnLCAgIyBsb25nIG9wdGlvbiwgc2hvcnQgb3B0aW9uIChvbmUgbGV0dGVyKSBvciBOb25lCisgICAgICAgICAiIiksICAjIGhlbHAgdGV4dAorICAgICAgICBdCisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLiA9IE5vbmUKKyAgICAgICAgc2VsZi4gPSBOb25lCisgICAgICAgIHNlbGYuID0gTm9uZQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGlmIHNlbGYueCBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi54ID0gLi4uCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICAuLi4KKyAgICAgICAgbG9nZ2VyLmluZm8oLi4uKQorCisgICAgICAgIGlmIG5vdCBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICAuLi4KKworICAgICAgICBzZWxmLmV4ZWN1dGUoLi4uLCBkcnlfcnVuPXNlbGYuZHJ5X3J1bikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9jb25maWcucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY29uZmlnLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI2NGMxMzkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvY29uZmlnLnB5CkBAIC0wLDAgKzEsMzQ5IEBACisiIiJQcmVwYXJlIHRoZSBidWlsZC4KKworVGhpcyBtb2R1bGUgcHJvdmlkZXMgY29uZmlnLCBhIChtb3N0bHkpIGVtcHR5IGNvbW1hbmQgY2xhc3MKK3RoYXQgZXhpc3RzIG1haW5seSB0byBiZSBzdWItY2xhc3NlZCBieSBzcGVjaWZpYyBtb2R1bGUgZGlzdHJpYnV0aW9ucyBhbmQKK2FwcGxpY2F0aW9ucy4gIFRoZSBpZGVhIGlzIHRoYXQgd2hpbGUgZXZlcnkgImNvbmZpZyIgY29tbWFuZCBpcyBkaWZmZXJlbnQsCithdCBsZWFzdCB0aGV5J3JlIGFsbCBuYW1lZCB0aGUgc2FtZSwgYW5kIHVzZXJzIGFsd2F5cyBzZWUgImNvbmZpZyIgaW4gdGhlCitsaXN0IG9mIHN0YW5kYXJkIGNvbW1hbmRzLiAgQWxzbywgdGhpcyBpcyBhIGdvb2QgcGxhY2UgdG8gcHV0IGNvbW1vbgorY29uZmlndXJlLWxpa2UgdGFza3M6ICJ0cnkgdG8gY29tcGlsZSB0aGlzIEMgY29kZSIsIG9yICJmaWd1cmUgb3V0IHdoZXJlCit0aGlzIGhlYWRlciBmaWxlIGxpdmVzIi4KKyIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCByZQorCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdFeGVjRXJyb3IKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCBjdXN0b21pemVfY29tcGlsZXIKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKKworTEFOR19FWFQgPSB7J2MnOiAnLmMnLCAnYysrJzogJy5jeHgnfQorCitjbGFzcyBjb25maWcoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJwcmVwYXJlIHRoZSBidWlsZCIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdjb21waWxlcj0nLCBOb25lLAorICAgICAgICAgInNwZWNpZnkgdGhlIGNvbXBpbGVyIHR5cGUiKSwKKyAgICAgICAgKCdjYz0nLCBOb25lLAorICAgICAgICAgInNwZWNpZnkgdGhlIGNvbXBpbGVyIGV4ZWN1dGFibGUiKSwKKyAgICAgICAgKCdpbmNsdWRlLWRpcnM9JywgJ0knLAorICAgICAgICAgImxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciBoZWFkZXIgZmlsZXMiKSwKKyAgICAgICAgKCdkZWZpbmU9JywgJ0QnLAorICAgICAgICAgIkMgcHJlcHJvY2Vzc29yIG1hY3JvcyB0byBkZWZpbmUiKSwKKyAgICAgICAgKCd1bmRlZj0nLCAnVScsCisgICAgICAgICAiQyBwcmVwcm9jZXNzb3IgbWFjcm9zIHRvIHVuZGVmaW5lIiksCisgICAgICAgICgnbGlicmFyaWVzPScsICdsJywKKyAgICAgICAgICJleHRlcm5hbCBDIGxpYnJhcmllcyB0byBsaW5rIHdpdGgiKSwKKyAgICAgICAgKCdsaWJyYXJ5LWRpcnM9JywgJ0wnLAorICAgICAgICAgImRpcmVjdG9yaWVzIHRvIHNlYXJjaCBmb3IgZXh0ZXJuYWwgQyBsaWJyYXJpZXMiKSwKKworICAgICAgICAoJ25vaXN5JywgTm9uZSwKKyAgICAgICAgICJzaG93IGV2ZXJ5IGFjdGlvbiAoY29tcGlsZSwgbGluaywgcnVuLCAuLi4pIHRha2VuIiksCisgICAgICAgICgnZHVtcC1zb3VyY2UnLCBOb25lLAorICAgICAgICAgImR1bXAgZ2VuZXJhdGVkIHNvdXJjZSBmaWxlcyBiZWZvcmUgYXR0ZW1wdGluZyB0byBjb21waWxlIHRoZW0iKSwKKyAgICAgICAgXQorCisKKyAgICAjIFRoZSB0aHJlZSBzdGFuZGFyZCBjb21tYW5kIG1ldGhvZHM6IHNpbmNlIHRoZSAiY29uZmlnIiBjb21tYW5kCisgICAgIyBkb2VzIG5vdGhpbmcgYnkgZGVmYXVsdCwgdGhlc2UgYXJlIGVtcHR5LgorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5jb21waWxlciA9IE5vbmUKKyAgICAgICAgc2VsZi5jYyA9IE5vbmUKKyAgICAgICAgc2VsZi5pbmNsdWRlX2RpcnMgPSBOb25lCisgICAgICAgIHNlbGYubGlicmFyaWVzID0gTm9uZQorICAgICAgICBzZWxmLmxpYnJhcnlfZGlycyA9IE5vbmUKKworICAgICAgICAjIG1heGltYWwgb3V0cHV0IGZvciBub3cKKyAgICAgICAgc2VsZi5ub2lzeSA9IFRydWUKKyAgICAgICAgc2VsZi5kdW1wX3NvdXJjZSA9IFRydWUKKworICAgICAgICAjIGxpc3Qgb2YgdGVtcG9yYXJ5IGZpbGVzIGdlbmVyYXRlZCBhbG9uZy10aGUtd2F5IHRoYXQgd2UgaGF2ZQorICAgICAgICAjIHRvIGNsZWFuIGF0IHNvbWUgcG9pbnQKKyAgICAgICAgc2VsZi50ZW1wX2ZpbGVzID0gW10KKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBpZiBzZWxmLmluY2x1ZGVfZGlycyBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5pbmNsdWRlX2RpcnMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5pbmNsdWRlX2RpcnMgb3IgW10KKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKHNlbGYuaW5jbHVkZV9kaXJzLCBzdHIpOgorICAgICAgICAgICAgc2VsZi5pbmNsdWRlX2RpcnMgPSBzZWxmLmluY2x1ZGVfZGlycy5zcGxpdChvcy5wYXRoc2VwKQorCisgICAgICAgIGlmIHNlbGYubGlicmFyaWVzIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmxpYnJhcmllcyA9IFtdCisgICAgICAgIGVsaWYgaXNpbnN0YW5jZShzZWxmLmxpYnJhcmllcywgc3RyKToKKyAgICAgICAgICAgIHNlbGYubGlicmFyaWVzID0gW3NlbGYubGlicmFyaWVzXQorCisgICAgICAgIGlmIHNlbGYubGlicmFyeV9kaXJzIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZGlycyA9IFtdCisgICAgICAgIGVsaWYgaXNpbnN0YW5jZShzZWxmLmxpYnJhcnlfZGlycywgc3RyKToKKyAgICAgICAgICAgIHNlbGYubGlicmFyeV9kaXJzID0gc2VsZi5saWJyYXJ5X2RpcnMuc3BsaXQob3MucGF0aHNlcCkKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIHBhc3MKKworCisgICAgIyBVdGlsaXR5IG1ldGhvZHMgZm9yIGFjdHVhbCAiY29uZmlnIiBjb21tYW5kcy4gIFRoZSBpbnRlcmZhY2VzIGFyZQorICAgICMgbG9vc2VseSBiYXNlZCBvbiBBdXRvY29uZiBtYWNyb3Mgb2Ygc2ltaWxhciBuYW1lcy4gIFN1Yi1jbGFzc2VzCisgICAgIyBtYXkgdXNlIHRoZXNlIGZyZWVseS4KKworICAgIGRlZiBfY2hlY2tfY29tcGlsZXIoc2VsZik6CisgICAgICAgICIiIkNoZWNrIHRoYXQgJ3NlbGYuY29tcGlsZXInIHJlYWxseSBpcyBhIENDb21waWxlciBvYmplY3Q7CisgICAgICAgIGlmIG5vdCwgbWFrZSBpdCBvbmUuCisgICAgICAgICIiIgorICAgICAgICAjIFdlIGRvIHRoaXMgbGF0ZSwgYW5kIG9ubHkgb24tZGVtYW5kLCBiZWNhdXNlIHRoaXMgaXMgYW4gZXhwZW5zaXZlCisgICAgICAgICMgaW1wb3J0LgorICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlci5jY29tcGlsZXIgaW1wb3J0IENDb21waWxlcgorICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgbmV3X2NvbXBpbGVyCisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKHNlbGYuY29tcGlsZXIsIENDb21waWxlcik6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVyID0gbmV3X2NvbXBpbGVyKGNvbXBpbGVyPXNlbGYuY29tcGlsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRyeV9ydW49c2VsZi5kcnlfcnVuLCBmb3JjZT1UcnVlKQorICAgICAgICAgICAgY3VzdG9taXplX2NvbXBpbGVyKHNlbGYuY29tcGlsZXIpCisgICAgICAgICAgICBpZiBzZWxmLmluY2x1ZGVfZGlyczoKKyAgICAgICAgICAgICAgICBzZWxmLmNvbXBpbGVyLnNldF9pbmNsdWRlX2RpcnMoc2VsZi5pbmNsdWRlX2RpcnMpCisgICAgICAgICAgICBpZiBzZWxmLmxpYnJhcmllczoKKyAgICAgICAgICAgICAgICBzZWxmLmNvbXBpbGVyLnNldF9saWJyYXJpZXMoc2VsZi5saWJyYXJpZXMpCisgICAgICAgICAgICBpZiBzZWxmLmxpYnJhcnlfZGlyczoKKyAgICAgICAgICAgICAgICBzZWxmLmNvbXBpbGVyLnNldF9saWJyYXJ5X2RpcnMoc2VsZi5saWJyYXJ5X2RpcnMpCisKKworICAgIGRlZiBfZ2VuX3RlbXBfc291cmNlZmlsZShzZWxmLCBib2R5LCBoZWFkZXJzLCBsYW5nKToKKyAgICAgICAgZmlsZW5hbWUgPSAiX2NvbmZpZ3Rlc3QiICsgTEFOR19FWFRbbGFuZ10KKyAgICAgICAgd2l0aCBvcGVuKGZpbGVuYW1lLCAidyIpIGFzIGZpbGU6CisgICAgICAgICAgICBpZiBoZWFkZXJzOgorICAgICAgICAgICAgICAgIGZvciBoZWFkZXIgaW4gaGVhZGVyczoKKyAgICAgICAgICAgICAgICAgICAgZmlsZS53cml0ZSgiI2luY2x1ZGUgPCVzPlxuIiAlIGhlYWRlcikKKyAgICAgICAgICAgICAgICBmaWxlLndyaXRlKCJcbiIpCisgICAgICAgICAgICBmaWxlLndyaXRlKGJvZHkpCisgICAgICAgICAgICBpZiBib2R5Wy0xXSAhPSAiXG4iOgorICAgICAgICAgICAgICAgIGZpbGUud3JpdGUoIlxuIikKKyAgICAgICAgcmV0dXJuIGZpbGVuYW1lCisKKyAgICBkZWYgX3ByZXByb2Nlc3Moc2VsZiwgYm9keSwgaGVhZGVycywgaW5jbHVkZV9kaXJzLCBsYW5nKToKKyAgICAgICAgc3JjID0gc2VsZi5fZ2VuX3RlbXBfc291cmNlZmlsZShib2R5LCBoZWFkZXJzLCBsYW5nKQorICAgICAgICBvdXQgPSAiX2NvbmZpZ3Rlc3QuaSIKKyAgICAgICAgc2VsZi50ZW1wX2ZpbGVzLmV4dGVuZCgoc3JjLCBvdXQpKQorICAgICAgICBzZWxmLmNvbXBpbGVyLnByZXByb2Nlc3Moc3JjLCBvdXQsIGluY2x1ZGVfZGlycz1pbmNsdWRlX2RpcnMpCisgICAgICAgIHJldHVybiBzcmMsIG91dAorCisgICAgZGVmIF9jb21waWxlKHNlbGYsIGJvZHksIGhlYWRlcnMsIGluY2x1ZGVfZGlycywgbGFuZyk6CisgICAgICAgIHNyYyA9IHNlbGYuX2dlbl90ZW1wX3NvdXJjZWZpbGUoYm9keSwgaGVhZGVycywgbGFuZykKKyAgICAgICAgaWYgc2VsZi5kdW1wX3NvdXJjZToKKyAgICAgICAgICAgIGR1bXBfZmlsZShzcmMsICJjb21waWxpbmcgJyVzJzoiICUgc3JjKQorICAgICAgICBvYmogPSBzZWxmLmNvbXBpbGVyLm9iamVjdF9maWxlbmFtZXMoW3NyY10pWzBdCisgICAgICAgIHNlbGYudGVtcF9maWxlcy5leHRlbmQoKHNyYywgb2JqKSkKKyAgICAgICAgc2VsZi5jb21waWxlci5jb21waWxlKFtzcmNdLCBpbmNsdWRlX2RpcnM9aW5jbHVkZV9kaXJzKQorICAgICAgICByZXR1cm4gc3JjLCBvYmoKKworICAgIGRlZiBfbGluayhzZWxmLCBib2R5LCBoZWFkZXJzLCBpbmNsdWRlX2RpcnMsIGxpYnJhcmllcywgbGlicmFyeV9kaXJzLAorICAgICAgICAgICAgICBsYW5nKToKKyAgICAgICAgc3JjLCBvYmogPSBzZWxmLl9jb21waWxlKGJvZHksIGhlYWRlcnMsIGluY2x1ZGVfZGlycywgbGFuZykKKyAgICAgICAgcHJvZyA9IG9zLnBhdGguc3BsaXRleHQob3MucGF0aC5iYXNlbmFtZShzcmMpKVswXQorICAgICAgICBzZWxmLmNvbXBpbGVyLmxpbmtfZXhlY3V0YWJsZShbb2JqXSwgcHJvZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzPWxpYnJhcmllcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyeV9kaXJzPWxpYnJhcnlfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2xhbmc9bGFuZykKKworICAgICAgICBpZiBzZWxmLmNvbXBpbGVyLmV4ZV9leHRlbnNpb24gaXMgbm90IE5vbmU6CisgICAgICAgICAgICBwcm9nID0gcHJvZyArIHNlbGYuY29tcGlsZXIuZXhlX2V4dGVuc2lvbgorICAgICAgICBzZWxmLnRlbXBfZmlsZXMuYXBwZW5kKHByb2cpCisKKyAgICAgICAgcmV0dXJuIHNyYywgb2JqLCBwcm9nCisKKyAgICBkZWYgX2NsZWFuKHNlbGYsICpmaWxlbmFtZXMpOgorICAgICAgICBpZiBub3QgZmlsZW5hbWVzOgorICAgICAgICAgICAgZmlsZW5hbWVzID0gc2VsZi50ZW1wX2ZpbGVzCisgICAgICAgICAgICBzZWxmLnRlbXBfZmlsZXMgPSBbXQorICAgICAgICBsb2dnZXIuaW5mbygicmVtb3Zpbmc6ICVzIiwgJyAnLmpvaW4oZmlsZW5hbWVzKSkKKyAgICAgICAgZm9yIGZpbGVuYW1lIGluIGZpbGVuYW1lczoKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBvcy5yZW1vdmUoZmlsZW5hbWUpCisgICAgICAgICAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCisKKworICAgICMgWFhYIHRoZXNlIGlnbm9yZSB0aGUgZHJ5LXJ1biBmbGFnOiB3aGF0IHRvIGRvLCB3aGF0IHRvIGRvPyBldmVuIGlmCisgICAgIyB5b3Ugd2FudCBhIGRyeS1ydW4gYnVpbGQsIHlvdSBzdGlsbCBuZWVkIHNvbWUgc29ydCBvZiBjb25maWd1cmF0aW9uCisgICAgIyBpbmZvLiAgTXkgaW5jbGluYXRpb24gaXMgdG8gbWFrZSBpdCB1cCB0byB0aGUgcmVhbCBjb25maWcgY29tbWFuZCB0bworICAgICMgY29uc3VsdCAnZHJ5X3J1bicsIGFuZCBhc3N1bWUgYSBkZWZhdWx0IChtaW5pbWFsKSBjb25maWd1cmF0aW9uIGlmCisgICAgIyB0cnVlLiAgVGhlIHByb2JsZW0gd2l0aCB0cnlpbmcgdG8gZG8gaXQgaGVyZSBpcyB0aGF0IHlvdSdkIGhhdmUgdG8KKyAgICAjIHJldHVybiBlaXRoZXIgdHJ1ZSBvciBmYWxzZSBmcm9tIGFsbCB0aGUgJ3RyeScgbWV0aG9kcywgbmVpdGhlciBvZgorICAgICMgd2hpY2ggaXMgY29ycmVjdC4KKworICAgICMgWFhYIG5lZWQgYWNjZXNzIHRvIHRoZSBoZWFkZXIgc2VhcmNoIHBhdGggYW5kIG1heWJlIGRlZmF1bHQgbWFjcm9zLgorCisgICAgZGVmIHRyeV9jcHAoc2VsZiwgYm9keT1Ob25lLCBoZWFkZXJzPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLCBsYW5nPSJjIik6CisgICAgICAgICIiIkNvbnN0cnVjdCBhIHNvdXJjZSBmaWxlIGZyb20gJ2JvZHknIChhIHN0cmluZyBjb250YWluaW5nIGxpbmVzCisgICAgICAgIG9mIEMvQysrIGNvZGUpIGFuZCAnaGVhZGVycycgKGEgbGlzdCBvZiBoZWFkZXIgZmlsZXMgdG8gaW5jbHVkZSkKKyAgICAgICAgYW5kIHJ1biBpdCB0aHJvdWdoIHRoZSBwcmVwcm9jZXNzb3IuICBSZXR1cm4gdHJ1ZSBpZiB0aGUKKyAgICAgICAgcHJlcHJvY2Vzc29yIHN1Y2NlZWRlZCwgZmFsc2UgaWYgdGhlcmUgd2VyZSBhbnkgZXJyb3JzLgorICAgICAgICAoJ2JvZHknIHByb2JhYmx5IGlzbid0IG9mIG11Y2ggdXNlLCBidXQgd2hhdCB0aGUgaGVjay4pCisgICAgICAgICIiIgorICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlci5jY29tcGlsZXIgaW1wb3J0IENvbXBpbGVFcnJvcgorICAgICAgICBzZWxmLl9jaGVja19jb21waWxlcigpCisgICAgICAgIG9rID0gVHJ1ZQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLl9wcmVwcm9jZXNzKGJvZHksIGhlYWRlcnMsIGluY2x1ZGVfZGlycywgbGFuZykKKyAgICAgICAgZXhjZXB0IENvbXBpbGVFcnJvcjoKKyAgICAgICAgICAgIG9rID0gRmFsc2UKKworICAgICAgICBzZWxmLl9jbGVhbigpCisgICAgICAgIHJldHVybiBvaworCisgICAgZGVmIHNlYXJjaF9jcHAoc2VsZiwgcGF0dGVybiwgYm9keT1Ob25lLCBoZWFkZXJzPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLAorICAgICAgICAgICAgICAgICAgIGxhbmc9ImMiKToKKyAgICAgICAgIiIiQ29uc3RydWN0IGEgc291cmNlIGZpbGUgKGp1c3QgbGlrZSAndHJ5X2NwcCgpJyksIHJ1biBpdCB0aHJvdWdoCisgICAgICAgIHRoZSBwcmVwcm9jZXNzb3IsIGFuZCByZXR1cm4gdHJ1ZSBpZiBhbnkgbGluZSBvZiB0aGUgb3V0cHV0IG1hdGNoZXMKKyAgICAgICAgJ3BhdHRlcm4nLiAgJ3BhdHRlcm4nIHNob3VsZCBlaXRoZXIgYmUgYSBjb21waWxlZCByZWdleCBvYmplY3Qgb3IgYQorICAgICAgICBzdHJpbmcgY29udGFpbmluZyBhIHJlZ2V4LiAgSWYgYm90aCAnYm9keScgYW5kICdoZWFkZXJzJyBhcmUgTm9uZSwKKyAgICAgICAgcHJlcHJvY2Vzc2VzIGFuIGVtcHR5IGZpbGUgLS0gd2hpY2ggY2FuIGJlIHVzZWZ1bCB0byBkZXRlcm1pbmUgdGhlCisgICAgICAgIHN5bWJvbHMgdGhlIHByZXByb2Nlc3NvciBhbmQgY29tcGlsZXIgc2V0IGJ5IGRlZmF1bHQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLl9jaGVja19jb21waWxlcigpCisgICAgICAgIHNyYywgb3V0ID0gc2VsZi5fcHJlcHJvY2Vzcyhib2R5LCBoZWFkZXJzLCBpbmNsdWRlX2RpcnMsIGxhbmcpCisKKyAgICAgICAgaWYgaXNpbnN0YW5jZShwYXR0ZXJuLCBzdHIpOgorICAgICAgICAgICAgcGF0dGVybiA9IHJlLmNvbXBpbGUocGF0dGVybikKKworICAgICAgICB3aXRoIG9wZW4ob3V0KSBhcyBmaWxlOgorICAgICAgICAgICAgbWF0Y2ggPSBGYWxzZQorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICBsaW5lID0gZmlsZS5yZWFkbGluZSgpCisgICAgICAgICAgICAgICAgaWYgbGluZSA9PSAnJzoKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICBpZiBwYXR0ZXJuLnNlYXJjaChsaW5lKToKKyAgICAgICAgICAgICAgICAgICAgbWF0Y2ggPSBUcnVlCisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisKKyAgICAgICAgc2VsZi5fY2xlYW4oKQorICAgICAgICByZXR1cm4gbWF0Y2gKKworICAgIGRlZiB0cnlfY29tcGlsZShzZWxmLCBib2R5LCBoZWFkZXJzPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLCBsYW5nPSJjIik6CisgICAgICAgICIiIlRyeSB0byBjb21waWxlIGEgc291cmNlIGZpbGUgYnVpbHQgZnJvbSAnYm9keScgYW5kICdoZWFkZXJzJy4KKyAgICAgICAgUmV0dXJuIHRydWUgb24gc3VjY2VzcywgZmFsc2Ugb3RoZXJ3aXNlLgorICAgICAgICAiIiIKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIuY2NvbXBpbGVyIGltcG9ydCBDb21waWxlRXJyb3IKKyAgICAgICAgc2VsZi5fY2hlY2tfY29tcGlsZXIoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLl9jb21waWxlKGJvZHksIGhlYWRlcnMsIGluY2x1ZGVfZGlycywgbGFuZykKKyAgICAgICAgICAgIG9rID0gVHJ1ZQorICAgICAgICBleGNlcHQgQ29tcGlsZUVycm9yOgorICAgICAgICAgICAgb2sgPSBGYWxzZQorCisgICAgICAgIGxvZ2dlci5pbmZvKG9rIGFuZCAic3VjY2VzcyEiIG9yICJmYWlsdXJlLiIpCisgICAgICAgIHNlbGYuX2NsZWFuKCkKKyAgICAgICAgcmV0dXJuIG9rCisKKyAgICBkZWYgdHJ5X2xpbmsoc2VsZiwgYm9keSwgaGVhZGVycz1Ob25lLCBpbmNsdWRlX2RpcnM9Tm9uZSwgbGlicmFyaWVzPU5vbmUsCisgICAgICAgICAgICAgICAgIGxpYnJhcnlfZGlycz1Ob25lLCBsYW5nPSJjIik6CisgICAgICAgICIiIlRyeSB0byBjb21waWxlIGFuZCBsaW5rIGEgc291cmNlIGZpbGUsIGJ1aWx0IGZyb20gJ2JvZHknIGFuZAorICAgICAgICAnaGVhZGVycycsIHRvIGV4ZWN1dGFibGUgZm9ybS4gIFJldHVybiB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlCisgICAgICAgIG90aGVyd2lzZS4KKyAgICAgICAgIiIiCisgICAgICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlciBpbXBvcnQgQ29tcGlsZUVycm9yLCBMaW5rRXJyb3IKKyAgICAgICAgc2VsZi5fY2hlY2tfY29tcGlsZXIoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLl9saW5rKGJvZHksIGhlYWRlcnMsIGluY2x1ZGVfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsIGxhbmcpCisgICAgICAgICAgICBvayA9IFRydWUKKyAgICAgICAgZXhjZXB0IChDb21waWxlRXJyb3IsIExpbmtFcnJvcik6CisgICAgICAgICAgICBvayA9IEZhbHNlCisKKyAgICAgICAgbG9nZ2VyLmluZm8ob2sgYW5kICJzdWNjZXNzISIgb3IgImZhaWx1cmUuIikKKyAgICAgICAgc2VsZi5fY2xlYW4oKQorICAgICAgICByZXR1cm4gb2sKKworICAgIGRlZiB0cnlfcnVuKHNlbGYsIGJvZHksIGhlYWRlcnM9Tm9uZSwgaW5jbHVkZV9kaXJzPU5vbmUsIGxpYnJhcmllcz1Ob25lLAorICAgICAgICAgICAgICAgIGxpYnJhcnlfZGlycz1Ob25lLCBsYW5nPSJjIik6CisgICAgICAgICIiIlRyeSB0byBjb21waWxlLCBsaW5rIHRvIGFuIGV4ZWN1dGFibGUsIGFuZCBydW4gYSBwcm9ncmFtCisgICAgICAgIGJ1aWx0IGZyb20gJ2JvZHknIGFuZCAnaGVhZGVycycuICBSZXR1cm4gdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZQorICAgICAgICBvdGhlcndpc2UuCisgICAgICAgICIiIgorICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlci5jY29tcGlsZXIgaW1wb3J0IENvbXBpbGVFcnJvciwgTGlua0Vycm9yCisgICAgICAgIHNlbGYuX2NoZWNrX2NvbXBpbGVyKCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc3JjLCBvYmosIGV4ZSA9IHNlbGYuX2xpbmsoYm9keSwgaGVhZGVycywgaW5jbHVkZV9kaXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsIGxhbmcpCisgICAgICAgICAgICBzZWxmLnNwYXduKFtleGVdKQorICAgICAgICAgICAgb2sgPSBUcnVlCisgICAgICAgIGV4Y2VwdCAoQ29tcGlsZUVycm9yLCBMaW5rRXJyb3IsIFBhY2thZ2luZ0V4ZWNFcnJvcik6CisgICAgICAgICAgICBvayA9IEZhbHNlCisKKyAgICAgICAgbG9nZ2VyLmluZm8ob2sgYW5kICJzdWNjZXNzISIgb3IgImZhaWx1cmUuIikKKyAgICAgICAgc2VsZi5fY2xlYW4oKQorICAgICAgICByZXR1cm4gb2sKKworCisgICAgIyAtLSBIaWdoLWxldmVsIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjICh0aGVzZSBhcmUgdGhlIG9uZXMgdGhhdCBhcmUgYWN0dWFsbHkgbGlrZWx5IHRvIGJlIHVzZWZ1bAorICAgICMgd2hlbiBpbXBsZW1lbnRpbmcgYSByZWFsLXdvcmxkIGNvbmZpZyBjb21tYW5kISkKKworICAgIGRlZiBjaGVja19mdW5jKHNlbGYsIGZ1bmMsIGhlYWRlcnM9Tm9uZSwgaW5jbHVkZV9kaXJzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzPU5vbmUsIGxpYnJhcnlfZGlycz1Ob25lLCBkZWNsPUZhbHNlLCBjYWxsPUZhbHNlKToKKworICAgICAgICAiIiJEZXRlcm1pbmUgaWYgZnVuY3Rpb24gJ2Z1bmMnIGlzIGF2YWlsYWJsZSBieSBjb25zdHJ1Y3RpbmcgYQorICAgICAgICBzb3VyY2UgZmlsZSB0aGF0IHJlZmVycyB0byAnZnVuYycsIGFuZCBjb21waWxlcyBhbmQgbGlua3MgaXQuCisgICAgICAgIElmIGV2ZXJ5dGhpbmcgc3VjY2VlZHMsIHJldHVybnMgdHJ1ZTsgb3RoZXJ3aXNlIHJldHVybnMgZmFsc2UuCisKKyAgICAgICAgVGhlIGNvbnN0cnVjdGVkIHNvdXJjZSBmaWxlIHN0YXJ0cyBvdXQgYnkgaW5jbHVkaW5nIHRoZSBoZWFkZXIKKyAgICAgICAgZmlsZXMgbGlzdGVkIGluICdoZWFkZXJzJy4gIElmICdkZWNsJyBpcyB0cnVlLCBpdCB0aGVuIGRlY2xhcmVzCisgICAgICAgICdmdW5jJyAoYXMgImludCBmdW5jKCkiKTsgeW91IHByb2JhYmx5IHNob3VsZG4ndCBzdXBwbHkgJ2hlYWRlcnMnCisgICAgICAgIGFuZCBzZXQgJ2RlY2wnIHRydWUgaW4gdGhlIHNhbWUgY2FsbCwgb3IgeW91IG1pZ2h0IGdldCBlcnJvcnMgYWJvdXQKKyAgICAgICAgYSBjb25mbGljdGluZyBkZWNsYXJhdGlvbnMgZm9yICdmdW5jJy4gIEZpbmFsbHksIHRoZSBjb25zdHJ1Y3RlZAorICAgICAgICAnbWFpbigpJyBmdW5jdGlvbiBlaXRoZXIgcmVmZXJlbmNlcyAnZnVuYycgb3IgKGlmICdjYWxsJyBpcyB0cnVlKQorICAgICAgICBjYWxscyBpdC4gICdsaWJyYXJpZXMnIGFuZCAnbGlicmFyeV9kaXJzJyBhcmUgdXNlZCB3aGVuCisgICAgICAgIGxpbmtpbmcuCisgICAgICAgICIiIgorCisgICAgICAgIHNlbGYuX2NoZWNrX2NvbXBpbGVyKCkKKyAgICAgICAgYm9keSA9IFtdCisgICAgICAgIGlmIGRlY2w6CisgICAgICAgICAgICBib2R5LmFwcGVuZCgiaW50ICVzICgpOyIgJSBmdW5jKQorICAgICAgICBib2R5LmFwcGVuZCgiaW50IG1haW4gKCkgeyIpCisgICAgICAgIGlmIGNhbGw6CisgICAgICAgICAgICBib2R5LmFwcGVuZCgiICAlcygpOyIgJSBmdW5jKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgYm9keS5hcHBlbmQoIiAgJXM7IiAlIGZ1bmMpCisgICAgICAgIGJvZHkuYXBwZW5kKCJ9IikKKyAgICAgICAgYm9keSA9ICJcbiIuam9pbihib2R5KSArICJcbiIKKworICAgICAgICByZXR1cm4gc2VsZi50cnlfbGluayhib2R5LCBoZWFkZXJzLCBpbmNsdWRlX2RpcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcywgbGlicmFyeV9kaXJzKQorCisgICAgZGVmIGNoZWNrX2xpYihzZWxmLCBsaWJyYXJ5LCBsaWJyYXJ5X2RpcnM9Tm9uZSwgaGVhZGVycz1Ob25lLAorICAgICAgICAgICAgICAgICAgaW5jbHVkZV9kaXJzPU5vbmUsIG90aGVyX2xpYnJhcmllcz1bXSk6CisgICAgICAgICIiIkRldGVybWluZSBpZiAnbGlicmFyeScgaXMgYXZhaWxhYmxlIHRvIGJlIGxpbmtlZCBhZ2FpbnN0LAorICAgICAgICB3aXRob3V0IGFjdHVhbGx5IGNoZWNraW5nIHRoYXQgYW55IHBhcnRpY3VsYXIgc3ltYm9scyBhcmUgcHJvdmlkZWQKKyAgICAgICAgYnkgaXQuICAnaGVhZGVycycgd2lsbCBiZSB1c2VkIGluIGNvbnN0cnVjdGluZyB0aGUgc291cmNlIGZpbGUgdG8KKyAgICAgICAgYmUgY29tcGlsZWQsIGJ1dCB0aGUgb25seSBlZmZlY3Qgb2YgdGhpcyBpcyB0byBjaGVjayBpZiBhbGwgdGhlCisgICAgICAgIGhlYWRlciBmaWxlcyBsaXN0ZWQgYXJlIGF2YWlsYWJsZS4gIEFueSBsaWJyYXJpZXMgbGlzdGVkIGluCisgICAgICAgICdvdGhlcl9saWJyYXJpZXMnIHdpbGwgYmUgaW5jbHVkZWQgaW4gdGhlIGxpbmssIGluIGNhc2UgJ2xpYnJhcnknCisgICAgICAgIGhhcyBzeW1ib2xzIHRoYXQgZGVwZW5kIG9uIG90aGVyIGxpYnJhcmllcy4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuX2NoZWNrX2NvbXBpbGVyKCkKKyAgICAgICAgcmV0dXJuIHNlbGYudHJ5X2xpbmsoImludCBtYWluICh2b2lkKSB7IH0iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzLCBpbmNsdWRlX2RpcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsaWJyYXJ5XStvdGhlcl9saWJyYXJpZXMsIGxpYnJhcnlfZGlycykKKworICAgIGRlZiBjaGVja19oZWFkZXIoc2VsZiwgaGVhZGVyLCBpbmNsdWRlX2RpcnM9Tm9uZSwgbGlicmFyeV9kaXJzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICBsYW5nPSJjIik6CisgICAgICAgICIiIkRldGVybWluZSBpZiB0aGUgc3lzdGVtIGhlYWRlciBmaWxlIG5hbWVkIGJ5ICdoZWFkZXJfZmlsZScKKyAgICAgICAgZXhpc3RzIGFuZCBjYW4gYmUgZm91bmQgYnkgdGhlIHByZXByb2Nlc3NvcjsgcmV0dXJuIHRydWUgaWYgc28sCisgICAgICAgIGZhbHNlIG90aGVyd2lzZS4KKyAgICAgICAgIiIiCisgICAgICAgIHJldHVybiBzZWxmLnRyeV9jcHAoYm9keT0iLyogTm8gYm9keSAqLyIsIGhlYWRlcnM9W2hlYWRlcl0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZV9kaXJzPWluY2x1ZGVfZGlycykKKworCitkZWYgZHVtcF9maWxlKGZpbGVuYW1lLCBoZWFkPU5vbmUpOgorICAgICIiIkR1bXBzIGEgZmlsZSBjb250ZW50IGludG8gbG9nLmluZm8uCisKKyAgICBJZiBoZWFkIGlzIG5vdCBOb25lLCB3aWxsIGJlIGR1bXBlZCBiZWZvcmUgdGhlIGZpbGUgY29udGVudC4KKyAgICAiIiIKKyAgICBpZiBoZWFkIGlzIE5vbmU6CisgICAgICAgIGxvZ2dlci5pbmZvKGZpbGVuYW1lKQorICAgIGVsc2U6CisgICAgICAgIGxvZ2dlci5pbmZvKGhlYWQpCisgICAgd2l0aCBvcGVuKGZpbGVuYW1lKSBhcyBmaWxlOgorICAgICAgICBsb2dnZXIuaW5mbyhmaWxlLnJlYWQoKSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9pbnN0YWxsX2RhdGEucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9kYXRhLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjljYTYyNzkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9kYXRhLnB5CkBAIC0wLDAgKzEsNzkgQEAKKyIiIkluc3RhbGwgcGxhdGZvcm0taW5kZXBlbmRlbnQgZGF0YSBmaWxlcy4iIiIKKworIyBDb250cmlidXRlZCBieSBCYXN0aWFuIEtsZWluZWlkYW0KKworaW1wb3J0IG9zCitmcm9tIHNodXRpbCBpbXBvcnQgRXJyb3IKK2Zyb20gc3lzY29uZmlnIGltcG9ydCBnZXRfcGF0aHMsIGZvcm1hdF92YWx1ZQorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgY29udmVydF9wYXRoCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorCisKK2NsYXNzIGluc3RhbGxfZGF0YShDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gImluc3RhbGwgcGxhdGZvcm0taW5kZXBlbmRlbnQgZGF0YSBmaWxlcyIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdpbnN0YWxsLWRpcj0nLCAnZCcsCisgICAgICAgICAiYmFzZSBkaXJlY3RvcnkgZm9yIGluc3RhbGxpbmcgZGF0YSBmaWxlcyAiCisgICAgICAgICAiKGRlZmF1bHQ6IGluc3RhbGxhdGlvbiBiYXNlIGRpcikiKSwKKyAgICAgICAgKCdyb290PScsIE5vbmUsCisgICAgICAgICAiaW5zdGFsbCBldmVyeXRoaW5nIHJlbGF0aXZlIHRvIHRoaXMgYWx0ZXJuYXRlIHJvb3QgZGlyZWN0b3J5IiksCisgICAgICAgICgnZm9yY2UnLCAnZicsICJmb3JjZSBpbnN0YWxsYXRpb24gKG92ZXJ3cml0ZSBleGlzdGluZyBmaWxlcykiKSwKKyAgICAgICAgXQorCisgICAgYm9vbGVhbl9vcHRpb25zID0gWydmb3JjZSddCisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLmluc3RhbGxfZGlyID0gTm9uZQorICAgICAgICBzZWxmLm91dGZpbGVzID0gW10KKyAgICAgICAgc2VsZi5kYXRhX2ZpbGVzX291dCA9IFtdCisgICAgICAgIHNlbGYucm9vdCA9IE5vbmUKKyAgICAgICAgc2VsZi5mb3JjZSA9IEZhbHNlCisgICAgICAgIHNlbGYuZGF0YV9maWxlcyA9IHNlbGYuZGlzdHJpYnV0aW9uLmRhdGFfZmlsZXMKKyAgICAgICAgc2VsZi53YXJuX2RpciA9IFRydWUKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnaW5zdGFsbF9kaXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsX2RhdGEnLCAnaW5zdGFsbF9kaXInKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Jvb3QnLCAnZm9yY2UnKQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgc2VsZi5ta3BhdGgoc2VsZi5pbnN0YWxsX2RpcikKKyAgICAgICAgZm9yIF9maWxlIGluIHNlbGYuZGF0YV9maWxlcy5pdGVtcygpOgorICAgICAgICAgICAgZGVzdGluYXRpb24gPSBjb252ZXJ0X3BhdGgoc2VsZi5leHBhbmRfY2F0ZWdvcmllcyhfZmlsZVsxXSkpCisgICAgICAgICAgICBkaXJfZGVzdCA9IG9zLnBhdGguYWJzcGF0aChvcy5wYXRoLmRpcm5hbWUoZGVzdGluYXRpb24pKQorCisgICAgICAgICAgICBzZWxmLm1rcGF0aChkaXJfZGVzdCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBvdXQgPSBzZWxmLmNvcHlfZmlsZShfZmlsZVswXSwgZGlyX2Rlc3QpWzBdCisgICAgICAgICAgICBleGNlcHQgRXJyb3IgYXMgZToKKyAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygnJXM6ICVzJywgc2VsZi5nZXRfY29tbWFuZF9uYW1lKCksIGUpCisgICAgICAgICAgICAgICAgb3V0ID0gZGVzdGluYXRpb24KKworICAgICAgICAgICAgc2VsZi5vdXRmaWxlcy5hcHBlbmQob3V0KQorICAgICAgICAgICAgc2VsZi5kYXRhX2ZpbGVzX291dC5hcHBlbmQoKF9maWxlWzBdLCBkZXN0aW5hdGlvbikpCisKKyAgICBkZWYgZXhwYW5kX2NhdGVnb3JpZXMoc2VsZiwgcGF0aF93aXRoX2NhdGVnb3JpZXMpOgorICAgICAgICBsb2NhbF92YXJzID0gZ2V0X3BhdGhzKCkKKyAgICAgICAgbG9jYWxfdmFyc1snZGlzdHJpYnV0aW9uLm5hbWUnXSA9IHNlbGYuZGlzdHJpYnV0aW9uLm1ldGFkYXRhWydOYW1lJ10KKyAgICAgICAgZXhwYW5kZWRfcGF0aCA9IGZvcm1hdF92YWx1ZShwYXRoX3dpdGhfY2F0ZWdvcmllcywgbG9jYWxfdmFycykKKyAgICAgICAgZXhwYW5kZWRfcGF0aCA9IGZvcm1hdF92YWx1ZShleHBhbmRlZF9wYXRoLCBsb2NhbF92YXJzKQorICAgICAgICBpZiAneycgaW4gZXhwYW5kZWRfcGF0aCBhbmQgJ30nIGluIGV4cGFuZGVkX3BhdGg6CisgICAgICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICAgICAnJXM6IHVuYWJsZSB0byBleHBhbmQgJXMsIHNvbWUgY2F0ZWdvcmllcyBtYXkgYmUgbWlzc2luZycsCisgICAgICAgICAgICAgICAgc2VsZi5nZXRfY29tbWFuZF9uYW1lKCksIHBhdGhfd2l0aF9jYXRlZ29yaWVzKQorICAgICAgICByZXR1cm4gZXhwYW5kZWRfcGF0aAorCisgICAgZGVmIGdldF9zb3VyY2VfZmlsZXMoc2VsZik6CisgICAgICAgIHJldHVybiBsaXN0KHNlbGYuZGF0YV9maWxlcykKKworICAgIGRlZiBnZXRfaW5wdXRzKHNlbGYpOgorICAgICAgICByZXR1cm4gbGlzdChzZWxmLmRhdGFfZmlsZXMpCisKKyAgICBkZWYgZ2V0X291dHB1dHMoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLm91dGZpbGVzCisKKyAgICBkZWYgZ2V0X3Jlc291cmNlc19vdXQoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLmRhdGFfZmlsZXNfb3V0CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9kaXN0LnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2luc3RhbGxfZGlzdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNTRkYTZmCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL2luc3RhbGxfZGlzdC5weQpAQCAtMCwwICsxLDYwNSBAQAorIiIiTWFpbiBpbnN0YWxsIGNvbW1hbmQsIHdoaWNoIGNhbGxzIHRoZSBvdGhlciBpbnN0YWxsXyogY29tbWFuZHMuIiIiCisKK2ltcG9ydCBzeXMKK2ltcG9ydCBvcworCitpbXBvcnQgc3lzY29uZmlnCitmcm9tIHN5c2NvbmZpZyBpbXBvcnQgZ2V0X2NvbmZpZ192YXJzLCBnZXRfcGF0aHMsIGdldF9wYXRoLCBnZXRfY29uZmlnX3ZhcgorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCB3cml0ZV9maWxlCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBjb252ZXJ0X3BhdGgsIGNoYW5nZV9yb290LCBnZXRfcGxhdGZvcm0KK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nT3B0aW9uRXJyb3IKKworCitjbGFzcyBpbnN0YWxsX2Rpc3QoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJpbnN0YWxsIGV2ZXJ5dGhpbmcgZnJvbSBidWlsZCBkaXJlY3RvcnkiCisKKyAgICB1c2VyX29wdGlvbnMgPSBbCisgICAgICAgICMgU2VsZWN0IGluc3RhbGxhdGlvbiBzY2hlbWUgYW5kIHNldCBiYXNlIGRpcmVjdG9yKHl8aWVzKQorICAgICAgICAoJ3ByZWZpeD0nLCBOb25lLAorICAgICAgICAgImluc3RhbGxhdGlvbiBwcmVmaXgiKSwKKyAgICAgICAgKCdleGVjLXByZWZpeD0nLCBOb25lLAorICAgICAgICAgIihVbml4IG9ubHkpIHByZWZpeCBmb3IgcGxhdGZvcm0tc3BlY2lmaWMgZmlsZXMiKSwKKyAgICAgICAgKCd1c2VyJywgTm9uZSwKKyAgICAgICAgICJpbnN0YWxsIGluIHVzZXIgc2l0ZS1wYWNrYWdlcyBkaXJlY3RvcnkgWyVzXSIgJQorICAgICAgICAgZ2V0X3BhdGgoJ3B1cmVsaWInLCAnJXNfdXNlcicgJSBvcy5uYW1lKSksCisgICAgICAgICgnaG9tZT0nLCBOb25lLAorICAgICAgICAgIihVbml4IG9ubHkpIGhvbWUgZGlyZWN0b3J5IHRvIGluc3RhbGwgdW5kZXIiKSwKKworICAgICAgICAjIE9yIGp1c3Qgc2V0IHRoZSBiYXNlIGRpcmVjdG9yKHl8aWVzKQorICAgICAgICAoJ2luc3RhbGwtYmFzZT0nLCBOb25lLAorICAgICAgICAgImJhc2UgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSAoaW5zdGVhZCBvZiAtLXByZWZpeCBvciAtLWhvbWUpIiksCisgICAgICAgICgnaW5zdGFsbC1wbGF0YmFzZT0nLCBOb25lLAorICAgICAgICAgImJhc2UgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBmb3IgcGxhdGZvcm0tc3BlY2lmaWMgZmlsZXMgIiArCisgICAgICAgICAiKGluc3RlYWQgb2YgLS1leGVjLXByZWZpeCBvciAtLWhvbWUpIiksCisgICAgICAgICgncm9vdD0nLCBOb25lLAorICAgICAgICAgImluc3RhbGwgZXZlcnl0aGluZyByZWxhdGl2ZSB0byB0aGlzIGFsdGVybmF0ZSByb290IGRpcmVjdG9yeSIpLAorCisgICAgICAgICMgT3IgZXhwbGljaXRseSBzZXQgdGhlIGluc3RhbGxhdGlvbiBzY2hlbWUKKyAgICAgICAgKCdpbnN0YWxsLXB1cmVsaWI9JywgTm9uZSwKKyAgICAgICAgICJpbnN0YWxsYXRpb24gZGlyZWN0b3J5IGZvciBwdXJlIFB5dGhvbiBtb2R1bGUgZGlzdHJpYnV0aW9ucyIpLAorICAgICAgICAoJ2luc3RhbGwtcGxhdGxpYj0nLCBOb25lLAorICAgICAgICAgImluc3RhbGxhdGlvbiBkaXJlY3RvcnkgZm9yIG5vbi1wdXJlIG1vZHVsZSBkaXN0cmlidXRpb25zIiksCisgICAgICAgICgnaW5zdGFsbC1saWI9JywgTm9uZSwKKyAgICAgICAgICJpbnN0YWxsYXRpb24gZGlyZWN0b3J5IGZvciBhbGwgbW9kdWxlIGRpc3RyaWJ1dGlvbnMgIiArCisgICAgICAgICAiKG92ZXJyaWRlcyAtLWluc3RhbGwtcHVyZWxpYiBhbmQgLS1pbnN0YWxsLXBsYXRsaWIpIiksCisKKyAgICAgICAgKCdpbnN0YWxsLWhlYWRlcnM9JywgTm9uZSwKKyAgICAgICAgICJpbnN0YWxsYXRpb24gZGlyZWN0b3J5IGZvciBDL0MrKyBoZWFkZXJzIiksCisgICAgICAgICgnaW5zdGFsbC1zY3JpcHRzPScsIE5vbmUsCisgICAgICAgICAiaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSBmb3IgUHl0aG9uIHNjcmlwdHMiKSwKKyAgICAgICAgKCdpbnN0YWxsLWRhdGE9JywgTm9uZSwKKyAgICAgICAgICJpbnN0YWxsYXRpb24gZGlyZWN0b3J5IGZvciBkYXRhIGZpbGVzIiksCisKKyAgICAgICAgIyBCeXRlLWNvbXBpbGF0aW9uIG9wdGlvbnMgLS0gc2VlIGluc3RhbGxfbGliIGZvciBkZXRhaWxzCisgICAgICAgICgnY29tcGlsZScsICdjJywgImNvbXBpbGUgLnB5IHRvIC5weWMgW2RlZmF1bHRdIiksCisgICAgICAgICgnbm8tY29tcGlsZScsIE5vbmUsICJkb24ndCBjb21waWxlIC5weSBmaWxlcyIpLAorICAgICAgICAoJ29wdGltaXplPScsICdPJywKKyAgICAgICAgICdhbHNvIGNvbXBpbGUgd2l0aCBvcHRpbWl6YXRpb246IC1PMSBmb3IgInB5dGhvbiAtTyIsICcKKyAgICAgICAgICctTzIgZm9yICJweXRob24gLU9PIiwgYW5kIC1PMCB0byBkaXNhYmxlIFtkZWZhdWx0OiAtTzBdJyksCisKKyAgICAgICAgIyBNaXNjZWxsYW5lb3VzIGNvbnRyb2wgb3B0aW9ucworICAgICAgICAoJ2ZvcmNlJywgJ2YnLAorICAgICAgICAgImZvcmNlIGluc3RhbGxhdGlvbiAob3ZlcndyaXRlIGFueSBleGlzdGluZyBmaWxlcykiKSwKKyAgICAgICAgKCdza2lwLWJ1aWxkJywgTm9uZSwKKyAgICAgICAgICJza2lwIHJlYnVpbGRpbmcgZXZlcnl0aGluZyAoZm9yIHRlc3RpbmcvZGVidWdnaW5nKSIpLAorCisgICAgICAgICMgV2hlcmUgdG8gaW5zdGFsbCBkb2N1bWVudGF0aW9uIChldmVudHVhbGx5ISkKKyAgICAgICAgIygnZG9jLWZvcm1hdD0nLCBOb25lLCAiZm9ybWF0IG9mIGRvY3VtZW50YXRpb24gdG8gZ2VuZXJhdGUiKSwKKyAgICAgICAgIygnaW5zdGFsbC1tYW49JywgTm9uZSwgImRpcmVjdG9yeSBmb3IgVW5peCBtYW4gcGFnZXMiKSwKKyAgICAgICAgIygnaW5zdGFsbC1odG1sPScsIE5vbmUsICJkaXJlY3RvcnkgZm9yIEhUTUwgZG9jdW1lbnRhdGlvbiIpLAorICAgICAgICAjKCdpbnN0YWxsLWluZm89JywgTm9uZSwgImRpcmVjdG9yeSBmb3IgR05VIGluZm8gZmlsZXMiKSwKKworICAgICAgICAjIFhYWCB1c2UgYSBuYW1lIHRoYXQgbWFrZXMgY2xlYXIgdGhpcyBpcyB0aGUgb2xkIGZvcm1hdAorICAgICAgICAoJ3JlY29yZD0nLCBOb25lLAorICAgICAgICAgImZpbGVuYW1lIGluIHdoaWNoIHRvIHJlY29yZCBhIGxpc3Qgb2YgaW5zdGFsbGVkIGZpbGVzICIKKyAgICAgICAgICIobm90IFBFUCAzNzYtY29tcGxpYW50KSIpLAorICAgICAgICAoJ3Jlc291cmNlcz0nLCBOb25lLAorICAgICAgICAgImRhdGEgZmlsZXMgbWFwcGluZyIpLAorCisgICAgICAgICMgLmRpc3QtaW5mbyByZWxhdGVkIGFyZ3VtZW50cywgcmVhZCBieSBpbnN0YWxsX2Rpc3RfaW5mbworICAgICAgICAoJ25vLWRpc3RpbmZvJywgTm9uZSwKKyAgICAgICAgICJkbyBub3QgY3JlYXRlIGEgLmRpc3QtaW5mbyBkaXJlY3RvcnkiKSwKKyAgICAgICAgKCdpbnN0YWxsZXI9JywgTm9uZSwKKyAgICAgICAgICJ0aGUgbmFtZSBvZiB0aGUgaW5zdGFsbGVyIiksCisgICAgICAgICgncmVxdWVzdGVkJywgTm9uZSwKKyAgICAgICAgICJnZW5lcmF0ZSBhIFJFUVVFU1RFRCBmaWxlIChpLmUuIiksCisgICAgICAgICgnbm8tcmVxdWVzdGVkJywgTm9uZSwKKyAgICAgICAgICJkbyBub3QgZ2VuZXJhdGUgYSBSRVFVRVNURUQgZmlsZSIpLAorICAgICAgICAoJ25vLXJlY29yZCcsIE5vbmUsCisgICAgICAgICAiZG8gbm90IGdlbmVyYXRlIGEgUkVDT1JEIGZpbGUiKSwKKyAgICAgICAgXQorCisgICAgYm9vbGVhbl9vcHRpb25zID0gWydjb21waWxlJywgJ2ZvcmNlJywgJ3NraXAtYnVpbGQnLCAnbm8tZGlzdGluZm8nLAorICAgICAgICAgICAgICAgICAgICAgICAncmVxdWVzdGVkJywgJ25vLXJlY29yZCcsICd1c2VyJ10KKworICAgIG5lZ2F0aXZlX29wdCA9IHsnbm8tY29tcGlsZSc6ICdjb21waWxlJywgJ25vLXJlcXVlc3RlZCc6ICdyZXF1ZXN0ZWQnfQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIyBIaWdoLWxldmVsIG9wdGlvbnM6IHRoZXNlIHNlbGVjdCBib3RoIGFuIGluc3RhbGxhdGlvbiBiYXNlCisgICAgICAgICMgYW5kIHNjaGVtZS4KKyAgICAgICAgc2VsZi5wcmVmaXggPSBOb25lCisgICAgICAgIHNlbGYuZXhlY19wcmVmaXggPSBOb25lCisgICAgICAgIHNlbGYuaG9tZSA9IE5vbmUKKyAgICAgICAgc2VsZi51c2VyID0gRmFsc2UKKworICAgICAgICAjIFRoZXNlIHNlbGVjdCBvbmx5IHRoZSBpbnN0YWxsYXRpb24gYmFzZTsgaXQncyB1cCB0byB0aGUgdXNlciB0bworICAgICAgICAjIHNwZWNpZnkgdGhlIGluc3RhbGxhdGlvbiBzY2hlbWUgKGN1cnJlbnRseSwgdGhhdCBtZWFucyBzdXBwbHlpbmcKKyAgICAgICAgIyB0aGUgLS1pbnN0YWxsLXtwbGF0bGliLHB1cmVsaWIsc2NyaXB0cyxkYXRhfSBvcHRpb25zKS4KKyAgICAgICAgc2VsZi5pbnN0YWxsX2Jhc2UgPSBOb25lCisgICAgICAgIHNlbGYuaW5zdGFsbF9wbGF0YmFzZSA9IE5vbmUKKyAgICAgICAgc2VsZi5yb290ID0gTm9uZQorCisgICAgICAgICMgVGhlc2Ugb3B0aW9ucyBhcmUgdGhlIGFjdHVhbCBpbnN0YWxsYXRpb24gZGlyZWN0b3JpZXM7IGlmIG5vdAorICAgICAgICAjIHN1cHBsaWVkIGJ5IHRoZSB1c2VyLCB0aGV5IGFyZSBmaWxsZWQgaW4gdXNpbmcgdGhlIGluc3RhbGxhdGlvbgorICAgICAgICAjIHNjaGVtZSBpbXBsaWVkIGJ5IHByZWZpeC9leGVjLXByZWZpeC9ob21lIGFuZCB0aGUgY29udGVudHMgb2YKKyAgICAgICAgIyB0aGF0IGluc3RhbGxhdGlvbiBzY2hlbWUuCisgICAgICAgIHNlbGYuaW5zdGFsbF9wdXJlbGliID0gTm9uZSAgICAgIyBmb3IgcHVyZSBtb2R1bGUgZGlzdHJpYnV0aW9ucworICAgICAgICBzZWxmLmluc3RhbGxfcGxhdGxpYiA9IE5vbmUgICAgICMgbm9uLXB1cmUgKGRpc3RzIHcvIGV4dGVuc2lvbnMpCisgICAgICAgIHNlbGYuaW5zdGFsbF9oZWFkZXJzID0gTm9uZSAgICAgIyBmb3IgQy9DKysgaGVhZGVycworICAgICAgICBzZWxmLmluc3RhbGxfbGliID0gTm9uZSAgICAgICAgICMgc2V0IHRvIGVpdGhlciBwdXJlbGliIG9yIHBsYXRsaWIKKyAgICAgICAgc2VsZi5pbnN0YWxsX3NjcmlwdHMgPSBOb25lCisgICAgICAgIHNlbGYuaW5zdGFsbF9kYXRhID0gTm9uZQorICAgICAgICBzZWxmLmluc3RhbGxfdXNlcmJhc2UgPSBnZXRfY29uZmlnX3ZhcigndXNlcmJhc2UnKQorICAgICAgICBzZWxmLmluc3RhbGxfdXNlcnNpdGUgPSBnZXRfcGF0aCgncHVyZWxpYicsICclc191c2VyJyAlIG9zLm5hbWUpCisKKyAgICAgICAgc2VsZi5jb21waWxlID0gTm9uZQorICAgICAgICBzZWxmLm9wdGltaXplID0gTm9uZQorCisgICAgICAgICMgVGhlc2UgdHdvIGFyZSBmb3IgcHV0dGluZyBub24tcGFja2FnaXplZCBkaXN0cmlidXRpb25zIGludG8gdGhlaXIKKyAgICAgICAgIyBvd24gZGlyZWN0b3J5IGFuZCBjcmVhdGluZyBhIC5wdGggZmlsZSBpZiBpdCBtYWtlcyBzZW5zZS4KKyAgICAgICAgIyAnZXh0cmFfcGF0aCcgY29tZXMgZnJvbSB0aGUgc2V0dXAgZmlsZTsgJ2luc3RhbGxfcGF0aF9maWxlJyBjYW4KKyAgICAgICAgIyBiZSB0dXJuZWQgb2ZmIGlmIGl0IG1ha2VzIG5vIHNlbnNlIHRvIGluc3RhbGwgYSAucHRoIGZpbGUuICAoQnV0CisgICAgICAgICMgYmV0dGVyIHRvIGluc3RhbGwgaXQgdXNlbGVzc2x5IHRoYW4gdG8gZ3Vlc3Mgd3JvbmcgYW5kIG5vdAorICAgICAgICAjIGluc3RhbGwgaXQgd2hlbiBpdCdzIG5lY2Vzc2FyeSBhbmQgd291bGQgYmUgdXNlZCEpICBDdXJyZW50bHksCisgICAgICAgICMgJ2luc3RhbGxfcGF0aF9maWxlJyBpcyBhbHdheXMgdHJ1ZSB1bmxlc3Mgc29tZSBvdXRzaWRlciBtZWRkbGVzCisgICAgICAgICMgd2l0aCBpdC4KKyAgICAgICAgc2VsZi5leHRyYV9wYXRoID0gTm9uZQorICAgICAgICBzZWxmLmluc3RhbGxfcGF0aF9maWxlID0gVHJ1ZQorCisgICAgICAgICMgJ2ZvcmNlJyBmb3JjZXMgaW5zdGFsbGF0aW9uLCBldmVuIGlmIHRhcmdldCBmaWxlcyBhcmUgbm90CisgICAgICAgICMgb3V0LW9mLWRhdGUuICAnc2tpcF9idWlsZCcgc2tpcHMgcnVubmluZyB0aGUgImJ1aWxkIiBjb21tYW5kLAorICAgICAgICAjIGhhbmR5IGlmIHlvdSBrbm93IGl0J3Mgbm90IG5lY2Vzc2FyeS4gICd3YXJuX2RpcicgKHdoaWNoIGlzICpub3QqCisgICAgICAgICMgYSB1c2VyIG9wdGlvbiwgaXQncyBqdXN0IHRoZXJlIHNvIHRoZSBiZGlzdF8qIGNvbW1hbmRzIGNhbiB0dXJuCisgICAgICAgICMgaXQgb2ZmKSBkZXRlcm1pbmVzIHdoZXRoZXIgd2Ugd2FybiBhYm91dCBpbnN0YWxsaW5nIHRvIGEKKyAgICAgICAgIyBkaXJlY3Rvcnkgbm90IGluIHN5cy5wYXRoLgorICAgICAgICBzZWxmLmZvcmNlID0gRmFsc2UKKyAgICAgICAgc2VsZi5za2lwX2J1aWxkID0gRmFsc2UKKyAgICAgICAgc2VsZi53YXJuX2RpciA9IFRydWUKKworICAgICAgICAjIFRoZXNlIGFyZSBvbmx5IGhlcmUgYXMgYSBjb25kdWl0IGZyb20gdGhlICdidWlsZCcgY29tbWFuZCB0byB0aGUKKyAgICAgICAgIyAnaW5zdGFsbF8qJyBjb21tYW5kcyB0aGF0IGRvIHRoZSByZWFsIHdvcmsuICAoJ2J1aWxkX2Jhc2UnIGlzbid0CisgICAgICAgICMgYWN0dWFsbHkgdXNlZCBhbnl3aGVyZSwgYnV0IGl0IG1pZ2h0IGJlIHVzZWZ1bCBpbiBmdXR1cmUuKSAgVGhleQorICAgICAgICAjIGFyZSBub3QgdXNlciBvcHRpb25zLCBiZWNhdXNlIGlmIHRoZSB1c2VyIHRvbGQgdGhlIGluc3RhbGwKKyAgICAgICAgIyBjb21tYW5kIHdoZXJlIHRoZSBidWlsZCBkaXJlY3RvcnkgaXMsIHRoYXQgd291bGRuJ3QgYWZmZWN0IHRoZQorICAgICAgICAjIGJ1aWxkIGNvbW1hbmQuCisgICAgICAgIHNlbGYuYnVpbGRfYmFzZSA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF9saWIgPSBOb25lCisKKyAgICAgICAgIyBOb3QgZGVmaW5lZCB5ZXQgYmVjYXVzZSB3ZSBkb24ndCBrbm93IGFueXRoaW5nIGFib3V0CisgICAgICAgICMgZG9jdW1lbnRhdGlvbiB5ZXQuCisgICAgICAgICNzZWxmLmluc3RhbGxfbWFuID0gTm9uZQorICAgICAgICAjc2VsZi5pbnN0YWxsX2h0bWwgPSBOb25lCisgICAgICAgICNzZWxmLmluc3RhbGxfaW5mbyA9IE5vbmUKKworICAgICAgICBzZWxmLnJlY29yZCA9IE5vbmUKKyAgICAgICAgc2VsZi5yZXNvdXJjZXMgPSBOb25lCisKKyAgICAgICAgIyAuZGlzdC1pbmZvIHJlbGF0ZWQgb3B0aW9ucworICAgICAgICBzZWxmLm5vX2Rpc3RpbmZvID0gTm9uZQorICAgICAgICBzZWxmLmluc3RhbGxlciA9IE5vbmUKKyAgICAgICAgc2VsZi5yZXF1ZXN0ZWQgPSBOb25lCisgICAgICAgIHNlbGYubm9fcmVjb3JkID0gTm9uZQorCisgICAgIyAtLSBPcHRpb24gZmluYWxpemluZyBtZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIChUaGlzIGlzIHJhdGhlciBtb3JlIGludm9sdmVkIHRoYW4gZm9yIG1vc3QgY29tbWFuZHMsCisgICAgIyBiZWNhdXNlIHRoaXMgaXMgd2hlcmUgdGhlIHBvbGljeSBmb3IgaW5zdGFsbGluZyB0aGlyZC0KKyAgICAjIHBhcnR5IFB5dGhvbiBtb2R1bGVzIG9uIHZhcmlvdXMgcGxhdGZvcm1zIGdpdmVuIGEgd2lkZQorICAgICMgYXJyYXkgb2YgdXNlciBpbnB1dCBpcyBkZWNpZGVkLiAgWWVzLCBpdCdzIHF1aXRlIGNvbXBsZXghKQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgICMgVGhpcyBtZXRob2QgKGFuZCBpdHMgcGxpYW50IHNsYXZlcywgbGlrZSAnZmluYWxpemVfdW5peCgpJywKKyAgICAgICAgIyAnZmluYWxpemVfb3RoZXIoKScsIGFuZCAnc2VsZWN0X3NjaGVtZSgpJykgaXMgd2hlcmUgdGhlIGRlZmF1bHQKKyAgICAgICAgIyBpbnN0YWxsYXRpb24gZGlyZWN0b3JpZXMgZm9yIG1vZHVsZXMsIGV4dGVuc2lvbiBtb2R1bGVzLCBhbmQKKyAgICAgICAgIyBhbnl0aGluZyBlbHNlIHdlIGNhcmUgdG8gaW5zdGFsbCBmcm9tIGEgUHl0aG9uIG1vZHVsZQorICAgICAgICAjIGRpc3RyaWJ1dGlvbi4gIFRodXMsIHRoaXMgY29kZSBtYWtlcyBhIHByZXR0eSBpbXBvcnRhbnQgcG9saWN5CisgICAgICAgICMgc3RhdGVtZW50IGFib3V0IGhvdyB0aGlyZC1wYXJ0eSBzdHVmZiBpcyBhZGRlZCB0byBhIFB5dGhvbgorICAgICAgICAjIGluc3RhbGxhdGlvbiEgIE5vdGUgdGhhdCB0aGUgYWN0dWFsIHdvcmsgb2YgaW5zdGFsbGF0aW9uIGlzIGRvbmUKKyAgICAgICAgIyBieSB0aGUgcmVsYXRpdmVseSBzaW1wbGUgJ2luc3RhbGxfKicgY29tbWFuZHM7IHRoZXkganVzdCB0YWtlCisgICAgICAgICMgdGhlaXIgb3JkZXJzIGZyb20gdGhlIGluc3RhbGxhdGlvbiBkaXJlY3Rvcnkgb3B0aW9ucyBkZXRlcm1pbmVkCisgICAgICAgICMgaGVyZS4KKworICAgICAgICAjIENoZWNrIGZvciBlcnJvcnMvaW5jb25zaXN0ZW5jaWVzIGluIHRoZSBvcHRpb25zOyBmaXJzdCwgc3R1ZmYKKyAgICAgICAgIyB0aGF0J3Mgd3Jvbmcgb24gYW55IHBsYXRmb3JtLgorCisgICAgICAgIGlmICgoc2VsZi5wcmVmaXggb3Igc2VsZi5leGVjX3ByZWZpeCBvciBzZWxmLmhvbWUpIGFuZAorICAgICAgICAgICAgKHNlbGYuaW5zdGFsbF9iYXNlIG9yIHNlbGYuaW5zdGFsbF9wbGF0YmFzZSkpOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgIm11c3Qgc3VwcGx5IGVpdGhlciBwcmVmaXgvZXhlYy1wcmVmaXgvaG9tZSBvciAiCisgICAgICAgICAgICAgICAgImluc3RhbGwtYmFzZS9pbnN0YWxsLXBsYXRiYXNlIC0tIG5vdCBib3RoIikKKworICAgICAgICBpZiBzZWxmLmhvbWUgYW5kIChzZWxmLnByZWZpeCBvciBzZWxmLmV4ZWNfcHJlZml4KToKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICJtdXN0IHN1cHBseSBlaXRoZXIgaG9tZSBvciBwcmVmaXgvZXhlYy1wcmVmaXggLS0gbm90IGJvdGgiKQorCisgICAgICAgIGlmIHNlbGYudXNlciBhbmQgKHNlbGYucHJlZml4IG9yIHNlbGYuZXhlY19wcmVmaXggb3Igc2VsZi5ob21lIG9yCisgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9iYXNlIG9yIHNlbGYuaW5zdGFsbF9wbGF0YmFzZSk6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigKKyAgICAgICAgICAgICAgICAiY2FuJ3QgY29tYmluZSB1c2VyIHdpdGggcHJlZml4L2V4ZWNfcHJlZml4L2hvbWUgb3IgIgorICAgICAgICAgICAgICAgICJpbnN0YWxsX2Jhc2UvaW5zdGFsbF9wbGF0YmFzZSIpCisKKyAgICAgICAgIyBOZXh0LCBzdHVmZiB0aGF0J3Mgd3JvbmcgKG9yIGR1YmlvdXMpIG9ubHkgb24gY2VydGFpbiBwbGF0Zm9ybXMuCisgICAgICAgIGlmIG9zLm5hbWUgIT0gInBvc2l4IjoKKyAgICAgICAgICAgIGlmIHNlbGYuZXhlY19wcmVmaXg6CisgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoCisgICAgICAgICAgICAgICAgICAgICclczogZXhlYy1wcmVmaXggb3B0aW9uIGlnbm9yZWQgb24gdGhpcyBwbGF0Zm9ybScsCisgICAgICAgICAgICAgICAgICAgIHNlbGYuZ2V0X2NvbW1hbmRfbmFtZSgpKQorICAgICAgICAgICAgICAgIHNlbGYuZXhlY19wcmVmaXggPSBOb25lCisKKyAgICAgICAgIyBOb3cgdGhlIGludGVyZXN0aW5nIGxvZ2ljIC0tIHNvIGludGVyZXN0aW5nIHRoYXQgd2UgZmFybSBpdCBvdXQKKyAgICAgICAgIyB0byBvdGhlciBtZXRob2RzLiAgVGhlIGdvYWwgb2YgdGhlc2UgbWV0aG9kcyBpcyB0byBzZXQgdGhlIGZpbmFsCisgICAgICAgICMgdmFsdWVzIGZvciB0aGUgaW5zdGFsbF97bGliLHNjcmlwdHMsZGF0YSwuLi59ICBvcHRpb25zLCB1c2luZyBhcworICAgICAgICAjIGlucHV0IGEgaGVhZHkgYnJldyBvZiBwcmVmaXgsIGV4ZWNfcHJlZml4LCBob21lLCBpbnN0YWxsX2Jhc2UsCisgICAgICAgICMgaW5zdGFsbF9wbGF0YmFzZSwgdXNlci1zdXBwbGllZCB2ZXJzaW9ucyBvZgorICAgICAgICAjIGluc3RhbGxfe3B1cmVsaWIscGxhdGxpYixsaWIsc2NyaXB0cyxkYXRhLC4uLn0sIGFuZCB0aGUKKyAgICAgICAgIyBJTlNUQUxMX1NDSEVNRSBkaWN0aW9uYXJ5IGFib3ZlLiAgUGhldyEKKworICAgICAgICBzZWxmLmR1bXBfZGlycygicHJlLWZpbmFsaXplX3t1bml4LG90aGVyfSIpCisKKyAgICAgICAgaWYgb3MubmFtZSA9PSAncG9zaXgnOgorICAgICAgICAgICAgc2VsZi5maW5hbGl6ZV91bml4KCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuZmluYWxpemVfb3RoZXIoKQorCisgICAgICAgIHNlbGYuZHVtcF9kaXJzKCJwb3N0LWZpbmFsaXplX3t1bml4LG90aGVyfSgpIikKKworICAgICAgICAjIEV4cGFuZCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcywgdGlsZGUsIGV0Yy4gaW4gc2VsZi5pbnN0YWxsX2Jhc2UKKyAgICAgICAgIyBhbmQgc2VsZi5pbnN0YWxsX3BsYXRiYXNlIC0tIHRoYXQgd2F5LCB3ZSBjYW4gdXNlICRiYXNlIG9yCisgICAgICAgICMgJHBsYXRiYXNlIGluIHRoZSBvdGhlciBpbnN0YWxsYXRpb24gZGlyZWN0b3JpZXMgYW5kIG5vdCB3b3JyeQorICAgICAgICAjIGFib3V0IG5lZWRpbmcgcmVjdXJzaXZlIHZhcmlhYmxlIGV4cGFuc2lvbiAoc2h1ZGRlcikuCisKKyAgICAgICAgcHlfdmVyc2lvbiA9IHN5cy52ZXJzaW9uLnNwbGl0KClbMF0KKyAgICAgICAgcHJlZml4LCBleGVjX3ByZWZpeCwgc3JjZGlyLCBwcm9qZWN0YmFzZSA9IGdldF9jb25maWdfdmFycygKKyAgICAgICAgICAgICdwcmVmaXgnLCAnZXhlY19wcmVmaXgnLCAnc3JjZGlyJywgJ3Byb2plY3RiYXNlJykKKworICAgICAgICBtZXRhZGF0YSA9IHNlbGYuZGlzdHJpYnV0aW9uLm1ldGFkYXRhCisgICAgICAgIHNlbGYuY29uZmlnX3ZhcnMgPSB7CisgICAgICAgICAgICAnZGlzdF9uYW1lJzogbWV0YWRhdGFbJ05hbWUnXSwKKyAgICAgICAgICAgICdkaXN0X3ZlcnNpb24nOiBtZXRhZGF0YVsnVmVyc2lvbiddLAorICAgICAgICAgICAgJ2Rpc3RfZnVsbG5hbWUnOiBtZXRhZGF0YS5nZXRfZnVsbG5hbWUoKSwKKyAgICAgICAgICAgICdweV92ZXJzaW9uJzogcHlfdmVyc2lvbiwKKyAgICAgICAgICAgICdweV92ZXJzaW9uX3Nob3J0JzogcHlfdmVyc2lvbls6M10sCisgICAgICAgICAgICAncHlfdmVyc2lvbl9ub2RvdCc6IHB5X3ZlcnNpb25bOjM6Ml0sCisgICAgICAgICAgICAnc3lzX3ByZWZpeCc6IHByZWZpeCwKKyAgICAgICAgICAgICdwcmVmaXgnOiBwcmVmaXgsCisgICAgICAgICAgICAnc3lzX2V4ZWNfcHJlZml4JzogZXhlY19wcmVmaXgsCisgICAgICAgICAgICAnZXhlY19wcmVmaXgnOiBleGVjX3ByZWZpeCwKKyAgICAgICAgICAgICdzcmNkaXInOiBzcmNkaXIsCisgICAgICAgICAgICAncHJvamVjdGJhc2UnOiBwcm9qZWN0YmFzZSwKKyAgICAgICAgICAgICd1c2VyYmFzZSc6IHNlbGYuaW5zdGFsbF91c2VyYmFzZSwKKyAgICAgICAgICAgICd1c2Vyc2l0ZSc6IHNlbGYuaW5zdGFsbF91c2Vyc2l0ZSwKKyAgICAgICAgfQorCisgICAgICAgIHNlbGYuZXhwYW5kX2Jhc2VkaXJzKCkKKworICAgICAgICBzZWxmLmR1bXBfZGlycygicG9zdC1leHBhbmRfYmFzZWRpcnMoKSIpCisKKyAgICAgICAgIyBOb3cgZGVmaW5lIGNvbmZpZyB2YXJzIGZvciB0aGUgYmFzZSBkaXJlY3RvcmllcyBzbyB3ZSBjYW4gZXhwYW5kCisgICAgICAgICMgZXZlcnl0aGluZyBlbHNlLgorICAgICAgICBzZWxmLmNvbmZpZ192YXJzWydiYXNlJ10gPSBzZWxmLmluc3RhbGxfYmFzZQorICAgICAgICBzZWxmLmNvbmZpZ192YXJzWydwbGF0YmFzZSddID0gc2VsZi5pbnN0YWxsX3BsYXRiYXNlCisKKyAgICAgICAgIyBFeHBhbmQgIn4iIGFuZCBjb25maWd1cmF0aW9uIHZhcmlhYmxlcyBpbiB0aGUgaW5zdGFsbGF0aW9uCisgICAgICAgICMgZGlyZWN0b3JpZXMuCisgICAgICAgIHNlbGYuZXhwYW5kX2RpcnMoKQorCisgICAgICAgIHNlbGYuZHVtcF9kaXJzKCJwb3N0LWV4cGFuZF9kaXJzKCkiKQorCisgICAgICAgICMgQ3JlYXRlIGRpcmVjdG9yaWVzIHVuZGVyIFVTRVJCQVNFCisgICAgICAgIGlmIHNlbGYudXNlcjoKKyAgICAgICAgICAgIHNlbGYuY3JlYXRlX3VzZXJfZGlycygpCisKKyAgICAgICAgIyBQaWNrIHRoZSBhY3R1YWwgZGlyZWN0b3J5IHRvIGluc3RhbGwgYWxsIG1vZHVsZXMgdG86IGVpdGhlcgorICAgICAgICAjIGluc3RhbGxfcHVyZWxpYiBvciBpbnN0YWxsX3BsYXRsaWIsIGRlcGVuZGluZyBvbiB3aGV0aGVyIHRoaXMKKyAgICAgICAgIyBtb2R1bGUgZGlzdHJpYnV0aW9uIGlzIHB1cmUgb3Igbm90LiAgT2YgY291cnNlLCBpZiB0aGUgdXNlcgorICAgICAgICAjIGFscmVhZHkgc3BlY2lmaWVkIGluc3RhbGxfbGliLCB1c2UgdGhlaXIgc2VsZWN0aW9uLgorICAgICAgICBpZiBzZWxmLmluc3RhbGxfbGliIGlzIE5vbmU6CisgICAgICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5leHRfbW9kdWxlczogICMgaGFzIGV4dGVuc2lvbnM6IG5vbi1wdXJlCisgICAgICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2xpYiA9IHNlbGYuaW5zdGFsbF9wbGF0bGliCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9saWIgPSBzZWxmLmluc3RhbGxfcHVyZWxpYgorCisgICAgICAgICMgQ29udmVydCBkaXJlY3RvcmllcyBmcm9tIFVuaXggLy1zZXBhcmF0ZWQgc3ludGF4IHRvIHRoZSBsb2NhbAorICAgICAgICAjIGNvbnZlbnRpb24uCisgICAgICAgIHNlbGYuY29udmVydF9wYXRocygnbGliJywgJ3B1cmVsaWInLCAncGxhdGxpYicsICdzY3JpcHRzJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICdkYXRhJywgJ2hlYWRlcnMnLCAndXNlcmJhc2UnLCAndXNlcnNpdGUnKQorCisgICAgICAgICMgV2VsbCwgd2UncmUgbm90IGFjdHVhbGx5IGZ1bGx5IGNvbXBsZXRlbHkgZmluYWxpemVkIHlldDogd2Ugc3RpbGwKKyAgICAgICAgIyBoYXZlIHRvIGRlYWwgd2l0aCAnZXh0cmFfcGF0aCcsIHdoaWNoIGlzIHRoZSBoYWNrIGZvciBhbGxvd2luZworICAgICAgICAjIG5vbi1wYWNrYWdpemVkIG1vZHVsZSBkaXN0cmlidXRpb25zIChoZWxsbywgTnVtZXJpY2FsIFB5dGhvbiEpIHRvCisgICAgICAgICMgZ2V0IHRoZWlyIG93biBkaXJlY3Rvcmllcy4KKyAgICAgICAgc2VsZi5oYW5kbGVfZXh0cmFfcGF0aCgpCisgICAgICAgIHNlbGYuaW5zdGFsbF9saWJiYXNlID0gc2VsZi5pbnN0YWxsX2xpYiAgIyBuZWVkZWQgZm9yIC5wdGggZmlsZQorICAgICAgICBzZWxmLmluc3RhbGxfbGliID0gb3MucGF0aC5qb2luKHNlbGYuaW5zdGFsbF9saWIsIHNlbGYuZXh0cmFfZGlycykKKworICAgICAgICAjIElmIGEgbmV3IHJvb3QgZGlyZWN0b3J5IHdhcyBzdXBwbGllZCwgbWFrZSBhbGwgdGhlIGluc3RhbGxhdGlvbgorICAgICAgICAjIGRpcnMgcmVsYXRpdmUgdG8gaXQuCisgICAgICAgIGlmIHNlbGYucm9vdCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuY2hhbmdlX3Jvb3RzKCdsaWJiYXNlJywgJ2xpYicsICdwdXJlbGliJywgJ3BsYXRsaWInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NjcmlwdHMnLCAnZGF0YScsICdoZWFkZXJzJykKKworICAgICAgICBzZWxmLmR1bXBfZGlycygiYWZ0ZXIgcHJlcGVuZGluZyByb290IikKKworICAgICAgICAjIEZpbmQgb3V0IHRoZSBidWlsZCBkaXJlY3RvcmllcywgaWUuIHdoZXJlIHRvIGluc3RhbGwgZnJvbS4KKyAgICAgICAgc2VsZi5zZXRfdW5kZWZpbmVkX29wdGlvbnMoJ2J1aWxkJywgJ2J1aWxkX2Jhc2UnLCAnYnVpbGRfbGliJykKKworICAgICAgICAjIFB1bnQgb24gZG9jIGRpcmVjdG9yaWVzIGZvciBub3cgLS0gYWZ0ZXIgYWxsLCB3ZSdyZSBwdW50aW5nIG9uCisgICAgICAgICMgZG9jdW1lbnRhdGlvbiBjb21wbGV0ZWx5IQorCisgICAgICAgIGlmIHNlbGYubm9fZGlzdGluZm8gaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYubm9fZGlzdGluZm8gPSBGYWxzZQorCisgICAgZGVmIGZpbmFsaXplX3VuaXgoc2VsZik6CisgICAgICAgICIiIkZpbmFsaXplIG9wdGlvbnMgZm9yIHBvc2l4IHBsYXRmb3Jtcy4iIiIKKyAgICAgICAgaWYgc2VsZi5pbnN0YWxsX2Jhc2UgaXMgbm90IE5vbmUgb3Igc2VsZi5pbnN0YWxsX3BsYXRiYXNlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgaWYgKChzZWxmLmluc3RhbGxfbGliIGlzIE5vbmUgYW5kCisgICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9wdXJlbGliIGlzIE5vbmUgYW5kCisgICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9wbGF0bGliIGlzIE5vbmUpIG9yCisgICAgICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2hlYWRlcnMgaXMgTm9uZSBvcgorICAgICAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9zY3JpcHRzIGlzIE5vbmUgb3IKKyAgICAgICAgICAgICAgICBzZWxmLmluc3RhbGxfZGF0YSBpcyBOb25lKToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcigKKyAgICAgICAgICAgICAgICAgICAgImluc3RhbGwtYmFzZSBvciBpbnN0YWxsLXBsYXRiYXNlIHN1cHBsaWVkLCBidXQgIgorICAgICAgICAgICAgICAgICAgICAiaW5zdGFsbGF0aW9uIHNjaGVtZSBpcyBpbmNvbXBsZXRlIikKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGlmIHNlbGYudXNlcjoKKyAgICAgICAgICAgIGlmIHNlbGYuaW5zdGFsbF91c2VyYmFzZSBpcyBOb25lOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICJ1c2VyIGJhc2UgZGlyZWN0b3J5IGlzIG5vdCBzcGVjaWZpZWQiKQorICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2Jhc2UgPSBzZWxmLmluc3RhbGxfcGxhdGJhc2UgPSBzZWxmLmluc3RhbGxfdXNlcmJhc2UKKyAgICAgICAgICAgIHNlbGYuc2VsZWN0X3NjaGVtZSgicG9zaXhfdXNlciIpCisgICAgICAgIGVsaWYgc2VsZi5ob21lIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2Jhc2UgPSBzZWxmLmluc3RhbGxfcGxhdGJhc2UgPSBzZWxmLmhvbWUKKyAgICAgICAgICAgIHNlbGYuc2VsZWN0X3NjaGVtZSgicG9zaXhfaG9tZSIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBzZWxmLnByZWZpeCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuZXhlY19wcmVmaXggaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgIm11c3Qgbm90IHN1cHBseSBleGVjLXByZWZpeCB3aXRob3V0IHByZWZpeCIpCisKKyAgICAgICAgICAgICAgICBzZWxmLnByZWZpeCA9IG9zLnBhdGgubm9ybXBhdGgoc3lzLnByZWZpeCkKKyAgICAgICAgICAgICAgICBzZWxmLmV4ZWNfcHJlZml4ID0gb3MucGF0aC5ub3JtcGF0aChzeXMuZXhlY19wcmVmaXgpCisKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaWYgc2VsZi5leGVjX3ByZWZpeCBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICBzZWxmLmV4ZWNfcHJlZml4ID0gc2VsZi5wcmVmaXgKKworICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2Jhc2UgPSBzZWxmLnByZWZpeAorICAgICAgICAgICAgc2VsZi5pbnN0YWxsX3BsYXRiYXNlID0gc2VsZi5leGVjX3ByZWZpeAorICAgICAgICAgICAgc2VsZi5zZWxlY3Rfc2NoZW1lKCJwb3NpeF9wcmVmaXgiKQorCisgICAgZGVmIGZpbmFsaXplX290aGVyKHNlbGYpOgorICAgICAgICAiIiJGaW5hbGl6ZSBvcHRpb25zIGZvciBub24tcG9zaXggcGxhdGZvcm1zIiIiCisgICAgICAgIGlmIHNlbGYudXNlcjoKKyAgICAgICAgICAgIGlmIHNlbGYuaW5zdGFsbF91c2VyYmFzZSBpcyBOb25lOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICJ1c2VyIGJhc2UgZGlyZWN0b3J5IGlzIG5vdCBzcGVjaWZpZWQiKQorICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2Jhc2UgPSBzZWxmLmluc3RhbGxfcGxhdGJhc2UgPSBzZWxmLmluc3RhbGxfdXNlcmJhc2UKKyAgICAgICAgICAgIHNlbGYuc2VsZWN0X3NjaGVtZShvcy5uYW1lICsgIl91c2VyIikKKyAgICAgICAgZWxpZiBzZWxmLmhvbWUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLmluc3RhbGxfYmFzZSA9IHNlbGYuaW5zdGFsbF9wbGF0YmFzZSA9IHNlbGYuaG9tZQorICAgICAgICAgICAgc2VsZi5zZWxlY3Rfc2NoZW1lKCJwb3NpeF9ob21lIikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIHNlbGYucHJlZml4IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5wcmVmaXggPSBvcy5wYXRoLm5vcm1wYXRoKHN5cy5wcmVmaXgpCisKKyAgICAgICAgICAgIHNlbGYuaW5zdGFsbF9iYXNlID0gc2VsZi5pbnN0YWxsX3BsYXRiYXNlID0gc2VsZi5wcmVmaXgKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLnNlbGVjdF9zY2hlbWUob3MubmFtZSkKKyAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKAorICAgICAgICAgICAgICAgICAgICAibm8gc3VwcG9ydCBmb3IgaW5zdGFsbGF0aW9uIG9uICclcyciICUgb3MubmFtZSkKKworICAgIGRlZiBkdW1wX2RpcnMoc2VsZiwgbXNnKToKKyAgICAgICAgIiIiRHVtcCB0aGUgbGlzdCBvZiB1c2VyIG9wdGlvbnMuIiIiCisgICAgICAgIGxvZ2dlci5kZWJ1Zyhtc2cgKyAiOiIpCisgICAgICAgIGZvciBvcHQgaW4gc2VsZi51c2VyX29wdGlvbnM6CisgICAgICAgICAgICBvcHRfbmFtZSA9IG9wdFswXQorICAgICAgICAgICAgaWYgb3B0X25hbWVbLTFdID09ICI9IjoKKyAgICAgICAgICAgICAgICBvcHRfbmFtZSA9IG9wdF9uYW1lWzA6LTFdCisgICAgICAgICAgICBpZiBvcHRfbmFtZSBpbiBzZWxmLm5lZ2F0aXZlX29wdDoKKyAgICAgICAgICAgICAgICBvcHRfbmFtZSA9IHNlbGYubmVnYXRpdmVfb3B0W29wdF9uYW1lXQorICAgICAgICAgICAgICAgIG9wdF9uYW1lID0gb3B0X25hbWUucmVwbGFjZSgnLScsICdfJykKKyAgICAgICAgICAgICAgICB2YWwgPSBub3QgZ2V0YXR0cihzZWxmLCBvcHRfbmFtZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgb3B0X25hbWUgPSBvcHRfbmFtZS5yZXBsYWNlKCctJywgJ18nKQorICAgICAgICAgICAgICAgIHZhbCA9IGdldGF0dHIoc2VsZiwgb3B0X25hbWUpCisgICAgICAgICAgICBsb2dnZXIuZGVidWcoIiAgJXM6ICVzIiwgb3B0X25hbWUsIHZhbCkKKworICAgIGRlZiBzZWxlY3Rfc2NoZW1lKHNlbGYsIG5hbWUpOgorICAgICAgICAiIiJTZXQgdGhlIGluc3RhbGwgZGlyZWN0b3JpZXMgYnkgYXBwbHlpbmcgdGhlIGluc3RhbGwgc2NoZW1lcy4iIiIKKyAgICAgICAgIyBpdCdzIHRoZSBjYWxsZXIncyBwcm9ibGVtIGlmIHRoZXkgc3VwcGx5IGEgYmFkIG5hbWUhCisgICAgICAgIHNjaGVtZSA9IGdldF9wYXRocyhuYW1lLCBleHBhbmQ9RmFsc2UpCisgICAgICAgIGZvciBrZXksIHZhbHVlIGluIHNjaGVtZS5pdGVtcygpOgorICAgICAgICAgICAgaWYga2V5ID09ICdwbGF0aW5jbHVkZSc6CisgICAgICAgICAgICAgICAga2V5ID0gJ2hlYWRlcnMnCisgICAgICAgICAgICAgICAgdmFsdWUgPSBvcy5wYXRoLmpvaW4odmFsdWUsIHNlbGYuZGlzdHJpYnV0aW9uLm1ldGFkYXRhWydOYW1lJ10pCisgICAgICAgICAgICBhdHRybmFtZSA9ICdpbnN0YWxsXycgKyBrZXkKKyAgICAgICAgICAgIGlmIGhhc2F0dHIoc2VsZiwgYXR0cm5hbWUpOgorICAgICAgICAgICAgICAgIGlmIGdldGF0dHIoc2VsZiwgYXR0cm5hbWUpIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgICAgIHNldGF0dHIoc2VsZiwgYXR0cm5hbWUsIHZhbHVlKQorCisgICAgZGVmIF9leHBhbmRfYXR0cnMoc2VsZiwgYXR0cnMpOgorICAgICAgICBmb3IgYXR0ciBpbiBhdHRyczoKKyAgICAgICAgICAgIHZhbCA9IGdldGF0dHIoc2VsZiwgYXR0cikKKyAgICAgICAgICAgIGlmIHZhbCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBpZiBvcy5uYW1lID09ICdwb3NpeCcgb3Igb3MubmFtZSA9PSAnbnQnOgorICAgICAgICAgICAgICAgICAgICB2YWwgPSBvcy5wYXRoLmV4cGFuZHVzZXIodmFsKQorICAgICAgICAgICAgICAgICMgc2VlIGlmIHdlIHdhbnQgdG8gcHVzaCB0aGlzIHdvcmsgaW4gc3lzY29uZmlnIFhYWAorICAgICAgICAgICAgICAgIHZhbCA9IHN5c2NvbmZpZy5fc3Vic3RfdmFycyh2YWwsIHNlbGYuY29uZmlnX3ZhcnMpCisgICAgICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBhdHRyLCB2YWwpCisKKyAgICBkZWYgZXhwYW5kX2Jhc2VkaXJzKHNlbGYpOgorICAgICAgICAiIiJDYWxsIGBvcy5wYXRoLmV4cGFuZHVzZXJgIG9uIGluc3RhbGxfe2Jhc2UscGxhdGJhc2V9IGFuZCByb290LiIiIgorICAgICAgICBzZWxmLl9leHBhbmRfYXR0cnMoWydpbnN0YWxsX2Jhc2UnLCAnaW5zdGFsbF9wbGF0YmFzZScsICdyb290J10pCisKKyAgICBkZWYgZXhwYW5kX2RpcnMoc2VsZik6CisgICAgICAgICIiIkNhbGwgYG9zLnBhdGguZXhwYW5kdXNlcmAgb24gaW5zdGFsbCBkaXJzLiIiIgorICAgICAgICBzZWxmLl9leHBhbmRfYXR0cnMoWydpbnN0YWxsX3B1cmVsaWInLCAnaW5zdGFsbF9wbGF0bGliJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaW5zdGFsbF9saWInLCAnaW5zdGFsbF9oZWFkZXJzJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaW5zdGFsbF9zY3JpcHRzJywgJ2luc3RhbGxfZGF0YSddKQorCisgICAgZGVmIGNvbnZlcnRfcGF0aHMoc2VsZiwgKm5hbWVzKToKKyAgICAgICAgIiIiQ2FsbCBgY29udmVydF9wYXRoYCBvdmVyIGBuYW1lc2AuIiIiCisgICAgICAgIGZvciBuYW1lIGluIG5hbWVzOgorICAgICAgICAgICAgYXR0ciA9ICJpbnN0YWxsXyIgKyBuYW1lCisgICAgICAgICAgICBzZXRhdHRyKHNlbGYsIGF0dHIsIGNvbnZlcnRfcGF0aChnZXRhdHRyKHNlbGYsIGF0dHIpKSkKKworICAgIGRlZiBoYW5kbGVfZXh0cmFfcGF0aChzZWxmKToKKyAgICAgICAgIiIiU2V0IGBwYXRoX2ZpbGVgIGFuZCBgZXh0cmFfZGlyc2AgdXNpbmcgYGV4dHJhX3BhdGhgLiIiIgorICAgICAgICBpZiBzZWxmLmV4dHJhX3BhdGggaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuZXh0cmFfcGF0aCA9IHNlbGYuZGlzdHJpYnV0aW9uLmV4dHJhX3BhdGgKKworICAgICAgICBpZiBzZWxmLmV4dHJhX3BhdGggaXMgbm90IE5vbmU6CisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHNlbGYuZXh0cmFfcGF0aCwgc3RyKToKKyAgICAgICAgICAgICAgICBzZWxmLmV4dHJhX3BhdGggPSBzZWxmLmV4dHJhX3BhdGguc3BsaXQoJywnKQorCisgICAgICAgICAgICBpZiBsZW4oc2VsZi5leHRyYV9wYXRoKSA9PSAxOgorICAgICAgICAgICAgICAgIHBhdGhfZmlsZSA9IGV4dHJhX2RpcnMgPSBzZWxmLmV4dHJhX3BhdGhbMF0KKyAgICAgICAgICAgIGVsaWYgbGVuKHNlbGYuZXh0cmFfcGF0aCkgPT0gMjoKKyAgICAgICAgICAgICAgICBwYXRoX2ZpbGUsIGV4dHJhX2RpcnMgPSBzZWxmLmV4dHJhX3BhdGgKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICInZXh0cmFfcGF0aCcgb3B0aW9uIG11c3QgYmUgYSBsaXN0LCB0dXBsZSwgb3IgIgorICAgICAgICAgICAgICAgICAgICAiY29tbWEtc2VwYXJhdGVkIHN0cmluZyB3aXRoIDEgb3IgMiBlbGVtZW50cyIpCisKKyAgICAgICAgICAgICMgY29udmVydCB0byBsb2NhbCBmb3JtIGluIGNhc2UgVW5peCBub3RhdGlvbiB1c2VkIChhcyBpdAorICAgICAgICAgICAgIyBzaG91bGQgYmUgaW4gc2V0dXAgc2NyaXB0cykKKyAgICAgICAgICAgIGV4dHJhX2RpcnMgPSBjb252ZXJ0X3BhdGgoZXh0cmFfZGlycykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHBhdGhfZmlsZSA9IE5vbmUKKyAgICAgICAgICAgIGV4dHJhX2RpcnMgPSAnJworCisgICAgICAgICMgWFhYIHNob3VsZCB3ZSB3YXJuIGlmIHBhdGhfZmlsZSBhbmQgbm90IGV4dHJhX2RpcnM/IChpbiB3aGljaAorICAgICAgICAjIGNhc2UgdGhlIHBhdGggZmlsZSB3b3VsZCBiZSBoYXJtbGVzcyBidXQgcG9pbnRsZXNzKQorICAgICAgICBzZWxmLnBhdGhfZmlsZSA9IHBhdGhfZmlsZQorICAgICAgICBzZWxmLmV4dHJhX2RpcnMgPSBleHRyYV9kaXJzCisKKyAgICBkZWYgY2hhbmdlX3Jvb3RzKHNlbGYsICpuYW1lcyk6CisgICAgICAgICIiIkNoYW5nZSB0aGUgaW5zdGFsbCBkaXJlY29yaWVzIHBvaW50ZWQgYnkgbmFtZSB1c2luZyByb290LiIiIgorICAgICAgICBmb3IgbmFtZSBpbiBuYW1lczoKKyAgICAgICAgICAgIGF0dHIgPSAiaW5zdGFsbF8iICsgbmFtZQorICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBhdHRyLCBjaGFuZ2Vfcm9vdChzZWxmLnJvb3QsIGdldGF0dHIoc2VsZiwgYXR0cikpKQorCisgICAgZGVmIGNyZWF0ZV91c2VyX2RpcnMoc2VsZik6CisgICAgICAgICIiIkNyZWF0ZSBkaXJlY3RvcmllcyB1bmRlciBVU0VSQkFTRSBhcyBuZWVkZWQuIiIiCisgICAgICAgIGhvbWUgPSBjb252ZXJ0X3BhdGgob3MucGF0aC5leHBhbmR1c2VyKCJ+IikpCisgICAgICAgIGZvciBuYW1lLCBwYXRoIGluIHNlbGYuY29uZmlnX3ZhcnMuaXRlbXMoKToKKyAgICAgICAgICAgIGlmIHBhdGguc3RhcnRzd2l0aChob21lKSBhbmQgbm90IG9zLnBhdGguaXNkaXIocGF0aCk6CisgICAgICAgICAgICAgICAgb3MubWFrZWRpcnMocGF0aCwgMG83MDApCisKKyAgICAjIC0tIENvbW1hbmQgZXhlY3V0aW9uIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgIiIiUnVucyB0aGUgY29tbWFuZC4iIiIKKyAgICAgICAgIyBPYnZpb3VzbHkgaGF2ZSB0byBidWlsZCBiZWZvcmUgd2UgY2FuIGluc3RhbGwKKyAgICAgICAgaWYgbm90IHNlbGYuc2tpcF9idWlsZDoKKyAgICAgICAgICAgIHNlbGYucnVuX2NvbW1hbmQoJ2J1aWxkJykKKyAgICAgICAgICAgICMgSWYgd2UgYnVpbHQgZm9yIGFueSBvdGhlciBwbGF0Zm9ybSwgd2UgY2FuJ3QgaW5zdGFsbC4KKyAgICAgICAgICAgIGJ1aWxkX3BsYXQgPSBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfY29tbWFuZF9vYmooJ2J1aWxkJykucGxhdF9uYW1lCisgICAgICAgICAgICAjIGNoZWNrIHdhcm5fZGlyIC0gaXQgaXMgYSBjbHVlIHRoYXQgdGhlICdpbnN0YWxsX2Rpc3QnIGlzIGhhcHBlbmluZworICAgICAgICAgICAgIyBpbnRlcm5hbGx5LCBhbmQgbm90IHRvIHN5cy5wYXRoLCBzbyB3ZSBkb24ndCBjaGVjayB0aGUgcGxhdGZvcm0KKyAgICAgICAgICAgICMgbWF0Y2hlcyB3aGF0IHdlIGFyZSBydW5uaW5nLgorICAgICAgICAgICAgaWYgc2VsZi53YXJuX2RpciBhbmQgYnVpbGRfcGxhdCAhPSBnZXRfcGxhdGZvcm0oKToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKCJDYW4ndCBpbnN0YWxsIHdoZW4gIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImNyb3NzLWNvbXBpbGluZyIpCisKKyAgICAgICAgIyBSdW4gYWxsIHN1Yi1jb21tYW5kcyAoYXQgbGVhc3QgdGhvc2UgdGhhdCBuZWVkIHRvIGJlIHJ1bikKKyAgICAgICAgZm9yIGNtZF9uYW1lIGluIHNlbGYuZ2V0X3N1Yl9jb21tYW5kcygpOgorICAgICAgICAgICAgc2VsZi5ydW5fY29tbWFuZChjbWRfbmFtZSkKKworICAgICAgICBpZiBzZWxmLnBhdGhfZmlsZToKKyAgICAgICAgICAgIHNlbGYuY3JlYXRlX3BhdGhfZmlsZSgpCisKKyAgICAgICAgIyB3cml0ZSBsaXN0IG9mIGluc3RhbGxlZCBmaWxlcywgaWYgcmVxdWVzdGVkLgorICAgICAgICBpZiBzZWxmLnJlY29yZDoKKyAgICAgICAgICAgIG91dHB1dHMgPSBzZWxmLmdldF9vdXRwdXRzKCkKKyAgICAgICAgICAgIGlmIHNlbGYucm9vdDogICAgICAgICAgICAgICAjIHN0cmlwIGFueSBwYWNrYWdlIHByZWZpeAorICAgICAgICAgICAgICAgIHJvb3RfbGVuID0gbGVuKHNlbGYucm9vdCkKKyAgICAgICAgICAgICAgICBmb3IgY291bnRlciBpbiByYW5nZShsZW4ob3V0cHV0cykpOgorICAgICAgICAgICAgICAgICAgICBvdXRwdXRzW2NvdW50ZXJdID0gb3V0cHV0c1tjb3VudGVyXVtyb290X2xlbjpdCisgICAgICAgICAgICBzZWxmLmV4ZWN1dGUod3JpdGVfZmlsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAoc2VsZi5yZWNvcmQsIG91dHB1dHMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJ3cml0aW5nIGxpc3Qgb2YgaW5zdGFsbGVkIGZpbGVzIHRvICclcyciICUKKyAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnJlY29yZCkKKworICAgICAgICBub3JtcGF0aCwgbm9ybWNhc2UgPSBvcy5wYXRoLm5vcm1wYXRoLCBvcy5wYXRoLm5vcm1jYXNlCisgICAgICAgIHN5c19wYXRoID0gW25vcm1jYXNlKG5vcm1wYXRoKHApKSBmb3IgcCBpbiBzeXMucGF0aF0KKyAgICAgICAgaW5zdGFsbF9saWIgPSBub3JtY2FzZShub3JtcGF0aChzZWxmLmluc3RhbGxfbGliKSkKKyAgICAgICAgaWYgKHNlbGYud2Fybl9kaXIgYW5kCisgICAgICAgICAgICBub3QgKHNlbGYucGF0aF9maWxlIGFuZCBzZWxmLmluc3RhbGxfcGF0aF9maWxlKSBhbmQKKyAgICAgICAgICAgIGluc3RhbGxfbGliIG5vdCBpbiBzeXNfcGF0aCk6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoKCJtb2R1bGVzIGluc3RhbGxlZCB0byAnJXMnLCB3aGljaCBpcyBub3QgaW4gIgorICAgICAgICAgICAgICAgICAgICAgICAiUHl0aG9uJ3MgbW9kdWxlIHNlYXJjaCBwYXRoIChzeXMucGF0aCkgLS0gIgorICAgICAgICAgICAgICAgICAgICAgICAieW91J2xsIGhhdmUgdG8gY2hhbmdlIHRoZSBzZWFyY2ggcGF0aCB5b3Vyc2VsZiIpLAorICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmluc3RhbGxfbGliKQorCisgICAgZGVmIGNyZWF0ZV9wYXRoX2ZpbGUoc2VsZik6CisgICAgICAgICIiIkNyZWF0ZXMgdGhlIC5wdGggZmlsZSIiIgorICAgICAgICBmaWxlbmFtZSA9IG9zLnBhdGguam9pbihzZWxmLmluc3RhbGxfbGliYmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5wYXRoX2ZpbGUgKyAiLnB0aCIpCisgICAgICAgIGlmIHNlbGYuaW5zdGFsbF9wYXRoX2ZpbGU6CisgICAgICAgICAgICBzZWxmLmV4ZWN1dGUod3JpdGVfZmlsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAoZmlsZW5hbWUsIFtzZWxmLmV4dHJhX2RpcnNdKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiY3JlYXRpbmcgJXMiICUgZmlsZW5hbWUpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIud2FybmluZygnJXM6IHBhdGggZmlsZSAlciBub3QgY3JlYXRlZCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmdldF9jb21tYW5kX25hbWUoKSwgIGZpbGVuYW1lKQorCisgICAgIyAtLSBSZXBvcnRpbmcgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBnZXRfb3V0cHV0cyhzZWxmKToKKyAgICAgICAgIiIiQXNzZW1ibGVzIHRoZSBvdXRwdXRzIG9mIGFsbCB0aGUgc3ViLWNvbW1hbmRzLiIiIgorICAgICAgICBvdXRwdXRzID0gW10KKyAgICAgICAgZm9yIGNtZF9uYW1lIGluIHNlbGYuZ2V0X3N1Yl9jb21tYW5kcygpOgorICAgICAgICAgICAgY21kID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoY21kX25hbWUpCisgICAgICAgICAgICAjIEFkZCB0aGUgY29udGVudHMgb2YgY21kLmdldF9vdXRwdXRzKCksIGVuc3VyaW5nCisgICAgICAgICAgICAjIHRoYXQgb3V0cHV0cyBkb2Vzbid0IGNvbnRhaW4gZHVwbGljYXRlIGVudHJpZXMKKyAgICAgICAgICAgIGZvciBmaWxlbmFtZSBpbiBjbWQuZ2V0X291dHB1dHMoKToKKyAgICAgICAgICAgICAgICBpZiBmaWxlbmFtZSBub3QgaW4gb3V0cHV0czoKKyAgICAgICAgICAgICAgICAgICAgb3V0cHV0cy5hcHBlbmQoZmlsZW5hbWUpCisKKyAgICAgICAgaWYgc2VsZi5wYXRoX2ZpbGUgYW5kIHNlbGYuaW5zdGFsbF9wYXRoX2ZpbGU6CisgICAgICAgICAgICBvdXRwdXRzLmFwcGVuZChvcy5wYXRoLmpvaW4oc2VsZi5pbnN0YWxsX2xpYmJhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5wYXRoX2ZpbGUgKyAiLnB0aCIpKQorCisgICAgICAgIHJldHVybiBvdXRwdXRzCisKKyAgICBkZWYgZ2V0X2lucHV0cyhzZWxmKToKKyAgICAgICAgIiIiUmV0dXJucyB0aGUgaW5wdXRzIG9mIGFsbCB0aGUgc3ViLWNvbW1hbmRzIiIiCisgICAgICAgICMgWFhYIGdlZSwgdGhpcyBsb29rcyBmYW1pbGlhciA7LSgKKyAgICAgICAgaW5wdXRzID0gW10KKyAgICAgICAgZm9yIGNtZF9uYW1lIGluIHNlbGYuZ2V0X3N1Yl9jb21tYW5kcygpOgorICAgICAgICAgICAgY21kID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoY21kX25hbWUpCisgICAgICAgICAgICBpbnB1dHMuZXh0ZW5kKGNtZC5nZXRfaW5wdXRzKCkpCisKKyAgICAgICAgcmV0dXJuIGlucHV0cworCisgICAgIyAtLSBQcmVkaWNhdGVzIGZvciBzdWItY29tbWFuZCBsaXN0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBoYXNfbGliKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm5zIHRydWUgaWYgdGhlIGN1cnJlbnQgZGlzdHJpYnV0aW9uIGhhcyBhbnkgUHl0aG9uCisgICAgICAgIG1vZHVsZXMgdG8gaW5zdGFsbC4iIiIKKyAgICAgICAgcmV0dXJuIChzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfcHVyZV9tb2R1bGVzKCkgb3IKKyAgICAgICAgICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKSkKKworICAgIGRlZiBoYXNfaGVhZGVycyhzZWxmKToKKyAgICAgICAgIiIiUmV0dXJucyB0cnVlIGlmIHRoZSBjdXJyZW50IGRpc3RyaWJ1dGlvbiBoYXMgYW55IGhlYWRlcnMgdG8KKyAgICAgICAgaW5zdGFsbC4iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19oZWFkZXJzKCkKKworICAgIGRlZiBoYXNfc2NyaXB0cyhzZWxmKToKKyAgICAgICAgIiIiUmV0dXJucyB0cnVlIGlmIHRoZSBjdXJyZW50IGRpc3RyaWJ1dGlvbiBoYXMgYW55IHNjcmlwdHMgdG8uCisgICAgICAgIGluc3RhbGwuIiIiCisgICAgICAgIHJldHVybiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfc2NyaXB0cygpCisKKyAgICBkZWYgaGFzX2RhdGEoc2VsZik6CisgICAgICAgICIiIlJldHVybnMgdHJ1ZSBpZiB0aGUgY3VycmVudCBkaXN0cmlidXRpb24gaGFzIGFueSBkYXRhIHRvLgorICAgICAgICBpbnN0YWxsLiIiIgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0cmlidXRpb24uaGFzX2RhdGFfZmlsZXMoKQorCisgICAgIyAnc3ViX2NvbW1hbmRzJzogYSBsaXN0IG9mIGNvbW1hbmRzIHRoaXMgY29tbWFuZCBtaWdodCBoYXZlIHRvIHJ1biB0bworICAgICMgZ2V0IGl0cyB3b3JrIGRvbmUuICBTZWUgY21kLnB5IGZvciBtb3JlIGluZm8uCisgICAgc3ViX2NvbW1hbmRzID0gWygnaW5zdGFsbF9saWInLCBoYXNfbGliKSwKKyAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsX2hlYWRlcnMnLCBoYXNfaGVhZGVycyksCisgICAgICAgICAgICAgICAgICAgICgnaW5zdGFsbF9zY3JpcHRzJywgaGFzX3NjcmlwdHMpLAorICAgICAgICAgICAgICAgICAgICAoJ2luc3RhbGxfZGF0YScsIGhhc19kYXRhKSwKKyAgICAgICAgICAgICAgICAgICAgIyBrZWVwIGluc3RhbGxfZGlzdGluZm8gbGFzdCwgYXMgaXQgbmVlZHMgdGhlIHJlY29yZAorICAgICAgICAgICAgICAgICAgICAjIHdpdGggZmlsZXMgdG8gYmUgY29tcGxldGVseSBnZW5lcmF0ZWQKKyAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsX2Rpc3RpbmZvJywgbGFtYmRhIHNlbGY6IG5vdCBzZWxmLm5vX2Rpc3RpbmZvKSwKKyAgICAgICAgICAgICAgICAgICBdCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9kaXN0aW5mby5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9pbnN0YWxsX2Rpc3RpbmZvLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0OTcyOWYKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9kaXN0aW5mby5weQpAQCAtMCwwICsxLDE0MyBAQAorIiIiQ3JlYXRlIHRoZSBQRVAgMzc2LWNvbXBsaWFudCAuZGlzdC1pbmZvIGRpcmVjdG9yeS4iIiIKKworIyBGb3JrZWQgZnJvbSB0aGUgZm9ybWVyIGluc3RhbGxfZWdnX2luZm8gY29tbWFuZCBieSBKb3NpcCBEam9sb25nYQorCitpbXBvcnQgb3MKK2ltcG9ydCBjc3YKK2ltcG9ydCBoYXNobGliCitmcm9tIHNodXRpbCBpbXBvcnQgcm10cmVlCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCisKKworY2xhc3MgaW5zdGFsbF9kaXN0aW5mbyhDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gJ2NyZWF0ZSBhIC5kaXN0LWluZm8gZGlyZWN0b3J5IGZvciB0aGUgZGlzdHJpYnV0aW9uJworCisgICAgdXNlcl9vcHRpb25zID0gWworICAgICAgICAoJ2luc3RhbGwtZGlyPScsIE5vbmUsCisgICAgICAgICAiZGlyZWN0b3J5IHdoZXJlIHRoZSB0aGUgLmRpc3QtaW5mbyBkaXJlY3Rvcnkgd2lsbCBiZSBjcmVhdGVkIiksCisgICAgICAgICgnaW5zdGFsbGVyPScsIE5vbmUsCisgICAgICAgICAidGhlIG5hbWUgb2YgdGhlIGluc3RhbGxlciIpLAorICAgICAgICAoJ3JlcXVlc3RlZCcsIE5vbmUsCisgICAgICAgICAiZ2VuZXJhdGUgYSBSRVFVRVNURUQgZmlsZSIpLAorICAgICAgICAoJ25vLXJlcXVlc3RlZCcsIE5vbmUsCisgICAgICAgICAiZG8gbm90IGdlbmVyYXRlIGEgUkVRVUVTVEVEIGZpbGUiKSwKKyAgICAgICAgKCduby1yZWNvcmQnLCBOb25lLAorICAgICAgICAgImRvIG5vdCBnZW5lcmF0ZSBhIFJFQ09SRCBmaWxlIiksCisgICAgICAgICgnbm8tcmVzb3VyY2VzJywgTm9uZSwKKyAgICAgICAgICJkbyBub3QgZ2VuZXJhdGUgYSBSRVNPVVJDRVMgZmlsZSIpLAorICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsncmVxdWVzdGVkJywgJ25vLXJlY29yZCcsICduby1yZXNvdXJjZXMnXQorCisgICAgbmVnYXRpdmVfb3B0ID0geyduby1yZXF1ZXN0ZWQnOiAncmVxdWVzdGVkJ30KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuaW5zdGFsbF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYuaW5zdGFsbGVyID0gTm9uZQorICAgICAgICBzZWxmLnJlcXVlc3RlZCA9IE5vbmUKKyAgICAgICAgc2VsZi5ub19yZWNvcmQgPSBOb25lCisgICAgICAgIHNlbGYubm9fcmVzb3VyY2VzID0gTm9uZQorICAgICAgICBzZWxmLm91dGZpbGVzID0gW10KKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnaW5zdGFsbF9kaXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2luc3RhbGxlcicsICdyZXF1ZXN0ZWQnLCAnbm9fcmVjb3JkJykKKworICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnaW5zdGFsbF9saWInLCAnaW5zdGFsbF9kaXInKQorCisgICAgICAgIGlmIHNlbGYuaW5zdGFsbGVyIGlzIE5vbmU6CisgICAgICAgICAgICAjIEZJWE1FIGRpc3R1dGlscyBvciBwYWNrYWdpbmc/CisgICAgICAgICAgICAjICsgZG9jdW1lbnQgZGVmYXVsdCBpbiB0aGUgb3B0aW9uIGhlbHAgdGV4dCBhYm92ZSBhbmQgaW4gaW5zdGFsbAorICAgICAgICAgICAgc2VsZi5pbnN0YWxsZXIgPSAnZGlzdHV0aWxzJworICAgICAgICBpZiBzZWxmLnJlcXVlc3RlZCBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5yZXF1ZXN0ZWQgPSBUcnVlCisgICAgICAgIGlmIHNlbGYubm9fcmVjb3JkIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLm5vX3JlY29yZCA9IEZhbHNlCisgICAgICAgIGlmIHNlbGYubm9fcmVzb3VyY2VzIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLm5vX3Jlc291cmNlcyA9IEZhbHNlCisKKyAgICAgICAgbWV0YWRhdGEgPSBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YQorCisgICAgICAgIGJhc2VuYW1lID0gbWV0YWRhdGEuZ2V0X2Z1bGxuYW1lKGZpbGVzYWZlPVRydWUpICsgIi5kaXN0LWluZm8iCisKKyAgICAgICAgc2VsZi5pbnN0YWxsX2RpciA9IG9zLnBhdGguam9pbihzZWxmLmluc3RhbGxfZGlyLCBiYXNlbmFtZSkKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIHRhcmdldCA9IHNlbGYuaW5zdGFsbF9kaXIKKworICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKHRhcmdldCkgYW5kIG5vdCBvcy5wYXRoLmlzbGluayh0YXJnZXQpOgorICAgICAgICAgICAgaWYgbm90IHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICBybXRyZWUodGFyZ2V0KQorICAgICAgICBlbGlmIG9zLnBhdGguZXhpc3RzKHRhcmdldCk6CisgICAgICAgICAgICBzZWxmLmV4ZWN1dGUob3MudW5saW5rLCAoc2VsZi5pbnN0YWxsX2RpciwpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJyZW1vdmluZyAiICsgdGFyZ2V0KQorCisgICAgICAgIHNlbGYuZXhlY3V0ZShvcy5tYWtlZGlycywgKHRhcmdldCwpLCAiY3JlYXRpbmcgIiArIHRhcmdldCkKKworICAgICAgICBtZXRhZGF0YV9wYXRoID0gb3MucGF0aC5qb2luKHNlbGYuaW5zdGFsbF9kaXIsICdNRVRBREFUQScpCisgICAgICAgIHNlbGYuZXhlY3V0ZShzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YS53cml0ZSwgKG1ldGFkYXRhX3BhdGgsKSwKKyAgICAgICAgICAgICAgICAgICAgICJjcmVhdGluZyAiICsgbWV0YWRhdGFfcGF0aCkKKyAgICAgICAgc2VsZi5vdXRmaWxlcy5hcHBlbmQobWV0YWRhdGFfcGF0aCkKKworICAgICAgICBpbnN0YWxsZXJfcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLmluc3RhbGxfZGlyLCAnSU5TVEFMTEVSJykKKyAgICAgICAgbG9nZ2VyLmluZm8oJ2NyZWF0aW5nICVzJywgaW5zdGFsbGVyX3BhdGgpCisgICAgICAgIGlmIG5vdCBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICB3aXRoIG9wZW4oaW5zdGFsbGVyX3BhdGgsICd3JykgYXMgZjoKKyAgICAgICAgICAgICAgICBmLndyaXRlKHNlbGYuaW5zdGFsbGVyKQorICAgICAgICBzZWxmLm91dGZpbGVzLmFwcGVuZChpbnN0YWxsZXJfcGF0aCkKKworICAgICAgICBpZiBzZWxmLnJlcXVlc3RlZDoKKyAgICAgICAgICAgIHJlcXVlc3RlZF9wYXRoID0gb3MucGF0aC5qb2luKHNlbGYuaW5zdGFsbF9kaXIsICdSRVFVRVNURUQnKQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ2NyZWF0aW5nICVzJywgcmVxdWVzdGVkX3BhdGgpCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgIG9wZW4ocmVxdWVzdGVkX3BhdGgsICd3YicpLmNsb3NlKCkKKyAgICAgICAgICAgIHNlbGYub3V0ZmlsZXMuYXBwZW5kKHJlcXVlc3RlZF9wYXRoKQorCisgICAgICAgIGlmIG5vdCBzZWxmLm5vX3Jlc291cmNlczoKKyAgICAgICAgICAgIGluc3RhbGxfZGF0YSA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdpbnN0YWxsX2RhdGEnKQorICAgICAgICAgICAgaWYgaW5zdGFsbF9kYXRhLmdldF9yZXNvdXJjZXNfb3V0KCkgIT0gW106CisgICAgICAgICAgICAgICAgcmVzb3VyY2VzX3BhdGggPSBvcy5wYXRoLmpvaW4oc2VsZi5pbnN0YWxsX2RpciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnUkVTT1VSQ0VTJykKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygnY3JlYXRpbmcgJXMnLCByZXNvdXJjZXNfcGF0aCkKKyAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgICAgICB3aXRoIG9wZW4ocmVzb3VyY2VzX3BhdGgsICd3JykgYXMgZjoKKyAgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlciA9IGNzdi53cml0ZXIoZiwgZGVsaW1pdGVyPScsJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZXRlcm1pbmF0b3I9J1xuJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcXVvdGVjaGFyPSciJykKKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciByb3cgaW4gaW5zdGFsbF9kYXRhLmdldF9yZXNvdXJjZXNfb3V0KCk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgd3JpdGVyLndyaXRlcm93KHJvdykKKworICAgICAgICAgICAgICAgIHNlbGYub3V0ZmlsZXMuYXBwZW5kKHJlc291cmNlc19wYXRoKQorCisgICAgICAgIGlmIG5vdCBzZWxmLm5vX3JlY29yZDoKKyAgICAgICAgICAgIHJlY29yZF9wYXRoID0gb3MucGF0aC5qb2luKHNlbGYuaW5zdGFsbF9kaXIsICdSRUNPUkQnKQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ2NyZWF0aW5nICVzJywgcmVjb3JkX3BhdGgpCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgICAgIHdpdGggb3BlbihyZWNvcmRfcGF0aCwgJ3cnLCBlbmNvZGluZz0ndXRmLTgnKSBhcyBmOgorICAgICAgICAgICAgICAgICAgICB3cml0ZXIgPSBjc3Yud3JpdGVyKGYsIGRlbGltaXRlcj0nLCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZXRlcm1pbmF0b3I9J1xuJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdW90ZWNoYXI9JyInKQorCisgICAgICAgICAgICAgICAgICAgIGluc3RhbGwgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnaW5zdGFsbF9kaXN0JykKKworICAgICAgICAgICAgICAgICAgICBmb3IgZnBhdGggaW4gaW5zdGFsbC5nZXRfb3V0cHV0cygpOgorICAgICAgICAgICAgICAgICAgICAgICAgaWYgZnBhdGguZW5kc3dpdGgoJy5weWMnKSBvciBmcGF0aC5lbmRzd2l0aCgnLnB5bycpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgZG8gbm90IHB1dCBzaXplIGFuZCBtZDUgaGFzaCwgYXMgaW4gUEVQLTM3NgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdyaXRlci53cml0ZXJvdygoZnBhdGgsICcnLCAnJykpCisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemUgPSBvcy5wYXRoLmdldHNpemUoZnBhdGgpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aCBvcGVuKGZwYXRoLCAncmInKSBhcyBmcDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzaCA9IGhhc2hsaWIubWQ1KCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzaC51cGRhdGUoZnAucmVhZCgpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1kNXN1bSA9IGhhc2guaGV4ZGlnZXN0KCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB3cml0ZXIud3JpdGVyb3coKGZwYXRoLCBtZDVzdW0sIHNpemUpKQorCisgICAgICAgICAgICAgICAgICAgICMgYWRkIHRoZSBSRUNPUkQgZmlsZSBpdHNlbGYKKyAgICAgICAgICAgICAgICAgICAgd3JpdGVyLndyaXRlcm93KChyZWNvcmRfcGF0aCwgJycsICcnKSkKKyAgICAgICAgICAgIHNlbGYub3V0ZmlsZXMuYXBwZW5kKHJlY29yZF9wYXRoKQorCisgICAgZGVmIGdldF9vdXRwdXRzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5vdXRmaWxlcwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL2luc3RhbGxfaGVhZGVycy5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9pbnN0YWxsX2hlYWRlcnMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTA0M2Q2YgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9pbnN0YWxsX2hlYWRlcnMucHkKQEAgLTAsMCArMSw0MyBAQAorIiIiSW5zdGFsbCBDL0MrKyBoZWFkZXIgZmlsZXMgdG8gdGhlIFB5dGhvbiBpbmNsdWRlIGRpcmVjdG9yeS4iIiIKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKKworCisjIFhYWCBmb3JjZSBpcyBuZXZlciB1c2VkCitjbGFzcyBpbnN0YWxsX2hlYWRlcnMoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJpbnN0YWxsIEMvQysrIGhlYWRlciBmaWxlcyIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsoJ2luc3RhbGwtZGlyPScsICdkJywKKyAgICAgICAgICAgICAgICAgICAgICJkaXJlY3RvcnkgdG8gaW5zdGFsbCBoZWFkZXIgZmlsZXMgdG8iKSwKKyAgICAgICAgICAgICAgICAgICAgKCdmb3JjZScsICdmJywKKyAgICAgICAgICAgICAgICAgICAgICJmb3JjZSBpbnN0YWxsYXRpb24gKG92ZXJ3cml0ZSBleGlzdGluZyBmaWxlcykiKSwKKyAgICAgICAgICAgICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2ZvcmNlJ10KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYuaW5zdGFsbF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYuZm9yY2UgPSBGYWxzZQorICAgICAgICBzZWxmLm91dGZpbGVzID0gW10KKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnaW5zdGFsbF9kaXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCdpbnN0YWxsX2hlYWRlcnMnLCAnaW5zdGFsbF9kaXInKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvcmNlJykKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIGhlYWRlcnMgPSBzZWxmLmRpc3RyaWJ1dGlvbi5oZWFkZXJzCisgICAgICAgIGlmIG5vdCBoZWFkZXJzOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgc2VsZi5ta3BhdGgoc2VsZi5pbnN0YWxsX2RpcikKKyAgICAgICAgZm9yIGhlYWRlciBpbiBoZWFkZXJzOgorICAgICAgICAgICAgb3V0ID0gc2VsZi5jb3B5X2ZpbGUoaGVhZGVyLCBzZWxmLmluc3RhbGxfZGlyKVswXQorICAgICAgICAgICAgc2VsZi5vdXRmaWxlcy5hcHBlbmQob3V0KQorCisgICAgZGVmIGdldF9pbnB1dHMoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLmRpc3RyaWJ1dGlvbi5oZWFkZXJzIG9yIFtdCisKKyAgICBkZWYgZ2V0X291dHB1dHMoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLm91dGZpbGVzCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9saWIucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9saWIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmZjNWQ0NQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9pbnN0YWxsX2xpYi5weQpAQCAtMCwwICsxLDE4OCBAQAorIiIiSW5zdGFsbCBhbGwgbW9kdWxlcyAoZXh0ZW5zaW9ucyBhbmQgcHVyZSBQeXRob24pLiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBpbXAKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nT3B0aW9uRXJyb3IKKworCisjIEV4dGVuc2lvbiBmb3IgUHl0aG9uIHNvdXJjZSBmaWxlcy4KKyMgWFhYIGRlYWQgY29kZT8gIG1vc3Qgb2YgdGhlIGNvZGViYXNlIGNoZWNrcyBmb3IgbGl0ZXJhbCAnLnB5JworaWYgaGFzYXR0cihvcywgJ2V4dHNlcCcpOgorICAgIFBZVEhPTl9TT1VSQ0VfRVhURU5TSU9OID0gb3MuZXh0c2VwICsgInB5IgorZWxzZToKKyAgICBQWVRIT05fU09VUkNFX0VYVEVOU0lPTiA9ICIucHkiCisKKworY2xhc3MgaW5zdGFsbF9saWIoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJpbnN0YWxsIGFsbCBtb2R1bGVzIChleHRlbnNpb25zIGFuZCBwdXJlIFB5dGhvbikiCisKKyAgICAjIFRoZSBvcHRpb25zIGZvciBjb250cm9sbGluZyBieXRlIGNvbXBpbGF0aW9uIGFyZSB0d28gaW5kZXBlbmRlbnQgc2V0czoKKyAgICAjICdjb21waWxlJyBpcyBzdHJpY3RseSBib29sZWFuLCBhbmQgb25seSBkZWNpZGVzIHdoZXRoZXIgdG8KKyAgICAjIGdlbmVyYXRlIC5weWMgZmlsZXMuICAnb3B0aW1pemUnIGlzIHRocmVlLXdheSAoMCwgMSwgb3IgMiksIGFuZAorICAgICMgZGVjaWRlcyBib3RoIHdoZXRoZXIgdG8gZ2VuZXJhdGUgLnB5byBmaWxlcyBhbmQgd2hhdCBsZXZlbCBvZgorICAgICMgb3B0aW1pemF0aW9uIHRvIHVzZS4KKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdpbnN0YWxsLWRpcj0nLCAnZCcsICJkaXJlY3RvcnkgdG8gaW5zdGFsbCB0byIpLAorICAgICAgICAoJ2J1aWxkLWRpcj0nLCAnYicsICJidWlsZCBkaXJlY3RvcnkgKHdoZXJlIHRvIGluc3RhbGwgZnJvbSkiKSwKKyAgICAgICAgKCdmb3JjZScsICdmJywgImZvcmNlIGluc3RhbGxhdGlvbiAob3ZlcndyaXRlIGV4aXN0aW5nIGZpbGVzKSIpLAorICAgICAgICAoJ2NvbXBpbGUnLCAnYycsICJjb21waWxlIC5weSB0byAucHljIFtkZWZhdWx0XSIpLAorICAgICAgICAoJ25vLWNvbXBpbGUnLCBOb25lLCAiZG9uJ3QgY29tcGlsZSAucHkgZmlsZXMiKSwKKyAgICAgICAgKCdvcHRpbWl6ZT0nLCAnTycsCisgICAgICAgICAiYWxzbyBjb21waWxlIHdpdGggb3B0aW1pemF0aW9uOiAtTzEgZm9yIFwicHl0aG9uIC1PXCIsICIKKyAgICAgICAgICItTzIgZm9yIFwicHl0aG9uIC1PT1wiLCBhbmQgLU8wIHRvIGRpc2FibGUgW2RlZmF1bHQ6IC1PMF0iKSwKKyAgICAgICAgKCdza2lwLWJ1aWxkJywgTm9uZSwgInNraXAgdGhlIGJ1aWxkIHN0ZXBzIiksCisgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsnZm9yY2UnLCAnY29tcGlsZScsICdza2lwLWJ1aWxkJ10KKworICAgIG5lZ2F0aXZlX29wdCA9IHsnbm8tY29tcGlsZSc6ICdjb21waWxlJ30KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgICMgbGV0IHRoZSAnaW5zdGFsbF9kaXN0JyBjb21tYW5kIGRpY3RhdGUgb3VyIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkKKyAgICAgICAgc2VsZi5pbnN0YWxsX2RpciA9IE5vbmUKKyAgICAgICAgc2VsZi5idWlsZF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYuZm9yY2UgPSBGYWxzZQorICAgICAgICBzZWxmLmNvbXBpbGUgPSBOb25lCisgICAgICAgIHNlbGYub3B0aW1pemUgPSBOb25lCisgICAgICAgIHNlbGYuc2tpcF9idWlsZCA9IE5vbmUKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICAjIEdldCBhbGwgdGhlIGluZm9ybWF0aW9uIHdlIG5lZWQgdG8gaW5zdGFsbCBwdXJlIFB5dGhvbiBtb2R1bGVzCisgICAgICAgICMgZnJvbSB0aGUgdW1icmVsbGEgJ2luc3RhbGxfZGlzdCcgY29tbWFuZCAtLSBidWlsZCAoc291cmNlKSBkaXJlY3RvcnksCisgICAgICAgICMgaW5zdGFsbCAodGFyZ2V0KSBkaXJlY3RvcnksIGFuZCB3aGV0aGVyIHRvIGNvbXBpbGUgLnB5IGZpbGVzLgorICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnaW5zdGFsbF9kaXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCdidWlsZF9saWInLCAnYnVpbGRfZGlyJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnaW5zdGFsbF9saWInLCAnaW5zdGFsbF9kaXInKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvcmNlJywgJ2NvbXBpbGUnLCAnb3B0aW1pemUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2tpcF9idWlsZCcpCisKKyAgICAgICAgaWYgc2VsZi5jb21waWxlIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGUgPSBUcnVlCisgICAgICAgIGlmIHNlbGYub3B0aW1pemUgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYub3B0aW1pemUgPSAwCisKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uoc2VsZi5vcHRpbWl6ZSwgaW50KToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLm9wdGltaXplID0gaW50KHNlbGYub3B0aW1pemUpCisgICAgICAgICAgICAgICAgaWYgc2VsZi5vcHRpbWl6ZSBub3QgaW4gKDAsIDEsIDIpOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBBc3NlcnRpb25FcnJvcgorICAgICAgICAgICAgZXhjZXB0IChWYWx1ZUVycm9yLCBBc3NlcnRpb25FcnJvcik6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoIm9wdGltaXplIG11c3QgYmUgMCwgMSwgb3IgMiIpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICAjIE1ha2Ugc3VyZSB3ZSBoYXZlIGJ1aWx0IGV2ZXJ5dGhpbmcgd2UgbmVlZCBmaXJzdAorICAgICAgICBzZWxmLmJ1aWxkKCkKKworICAgICAgICAjIEluc3RhbGwgZXZlcnl0aGluZzogc2ltcGx5IGR1bXAgdGhlIGVudGlyZSBjb250ZW50cyBvZiB0aGUgYnVpbGQKKyAgICAgICAgIyBkaXJlY3RvcnkgdG8gdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkgKHRoYXQncyB0aGUgYmVhdXR5IG9mCisgICAgICAgICMgaGF2aW5nIGEgYnVpbGQgZGlyZWN0b3J5ISkKKyAgICAgICAgb3V0ZmlsZXMgPSBzZWxmLmluc3RhbGwoKQorCisgICAgICAgICMgKE9wdGlvbmFsbHkpIGNvbXBpbGUgLnB5IHRvIC5weWMgYW5kL29yIC5weW8KKyAgICAgICAgaWYgb3V0ZmlsZXMgaXMgbm90IE5vbmUgYW5kIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19wdXJlX21vZHVsZXMoKToKKyAgICAgICAgICAgICMgWFhYIGNvbW1lbnQgZnJvbSBkaXN0dXRpbHM6ICJUaGlzIFtwcmVmaXggc3RyaXBwaW5nXSBpcyBmYXIgZnJvbQorICAgICAgICAgICAgIyBjb21wbGV0ZSwgYnV0IGl0IHNob3VsZCBhdCBsZWFzdCBnZW5lcmF0ZSB1c2FibGUgYnl0ZWNvZGUgaW4gUlBNCisgICAgICAgICAgICAjIGRpc3RyaWJ1dGlvbnMuIiAtPiBuZWVkIHRvIGZpbmQgZXhhY3QgcmVxdWlyZW1lbnRzIGZvcgorICAgICAgICAgICAgIyBieXRlLWNvbXBpbGVkIGZpbGVzIGFuZCBmaXggaXQKKyAgICAgICAgICAgIGluc3RhbGxfcm9vdCA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdpbnN0YWxsX2Rpc3QnKS5yb290CisgICAgICAgICAgICBzZWxmLmJ5dGVfY29tcGlsZShvdXRmaWxlcywgcHJlZml4PWluc3RhbGxfcm9vdCkKKworICAgICMgLS0gVG9wLWxldmVsIHdvcmtlciBmdW5jdGlvbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgIyAoY2FsbGVkIGZyb20gJ3J1bigpJykKKworICAgIGRlZiBidWlsZChzZWxmKToKKyAgICAgICAgaWYgbm90IHNlbGYuc2tpcF9idWlsZDoKKyAgICAgICAgICAgIGlmIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19wdXJlX21vZHVsZXMoKToKKyAgICAgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKCdidWlsZF9weScpCisgICAgICAgICAgICBpZiBzZWxmLmRpc3RyaWJ1dGlvbi5oYXNfZXh0X21vZHVsZXMoKToKKyAgICAgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKCdidWlsZF9leHQnKQorCisgICAgZGVmIGluc3RhbGwoc2VsZik6CisgICAgICAgIGlmIG9zLnBhdGguaXNkaXIoc2VsZi5idWlsZF9kaXIpOgorICAgICAgICAgICAgb3V0ZmlsZXMgPSBzZWxmLmNvcHlfdHJlZShzZWxmLmJ1aWxkX2Rpciwgc2VsZi5pbnN0YWxsX2RpcikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKAorICAgICAgICAgICAgICAgICclczogJXIgZG9lcyBub3QgZXhpc3QgLS0gbm8gUHl0aG9uIG1vZHVsZXMgdG8gaW5zdGFsbCcsCisgICAgICAgICAgICAgICAgc2VsZi5nZXRfY29tbWFuZF9uYW1lKCksIHNlbGYuYnVpbGRfZGlyKQorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIHJldHVybiBvdXRmaWxlcworCisgICAgIyAtLSBVdGlsaXR5IG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBfbXV0YXRlX291dHB1dHMoc2VsZiwgaGFzX2FueSwgYnVpbGRfY21kLCBjbWRfb3B0aW9uLCBvdXRwdXRfZGlyKToKKyAgICAgICAgaWYgbm90IGhhc19hbnk6CisgICAgICAgICAgICByZXR1cm4gW10KKworICAgICAgICBidWlsZF9jbWQgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZChidWlsZF9jbWQpCisgICAgICAgIGJ1aWxkX2ZpbGVzID0gYnVpbGRfY21kLmdldF9vdXRwdXRzKCkKKyAgICAgICAgYnVpbGRfZGlyID0gZ2V0YXR0cihidWlsZF9jbWQsIGNtZF9vcHRpb24pCisKKyAgICAgICAgcHJlZml4X2xlbiA9IGxlbihidWlsZF9kaXIpICsgbGVuKG9zLnNlcCkKKyAgICAgICAgb3V0cHV0cyA9IFtdCisgICAgICAgIGZvciBmaWxlIGluIGJ1aWxkX2ZpbGVzOgorICAgICAgICAgICAgb3V0cHV0cy5hcHBlbmQob3MucGF0aC5qb2luKG91dHB1dF9kaXIsIGZpbGVbcHJlZml4X2xlbjpdKSkKKworICAgICAgICByZXR1cm4gb3V0cHV0cworCisgICAgZGVmIF9ieXRlY29kZV9maWxlbmFtZXMoc2VsZiwgcHlfZmlsZW5hbWVzKToKKyAgICAgICAgYnl0ZWNvZGVfZmlsZXMgPSBbXQorICAgICAgICBmb3IgcHlfZmlsZSBpbiBweV9maWxlbmFtZXM6CisgICAgICAgICAgICAjIFNpbmNlIGJ1aWxkX3B5IGhhbmRsZXMgcGFja2FnZSBkYXRhIGluc3RhbGxhdGlvbiwgdGhlCisgICAgICAgICAgICAjIGxpc3Qgb2Ygb3V0cHV0cyBjYW4gY29udGFpbiBtb3JlIHRoYW4ganVzdCAucHkgZmlsZXMuCisgICAgICAgICAgICAjIE1ha2Ugc3VyZSB3ZSBvbmx5IHJlcG9ydCBieXRlY29kZSBmb3IgdGhlIC5weSBmaWxlcy4KKyAgICAgICAgICAgIGV4dCA9IG9zLnBhdGguc3BsaXRleHQob3MucGF0aC5ub3JtY2FzZShweV9maWxlKSlbMV0KKyAgICAgICAgICAgIGlmIGV4dCAhPSBQWVRIT05fU09VUkNFX0VYVEVOU0lPTjoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgaWYgc2VsZi5jb21waWxlOgorICAgICAgICAgICAgICAgIGJ5dGVjb2RlX2ZpbGVzLmFwcGVuZChpbXAuY2FjaGVfZnJvbV9zb3VyY2UocHlfZmlsZSwgVHJ1ZSkpCisgICAgICAgICAgICBpZiBzZWxmLm9wdGltaXplOgorICAgICAgICAgICAgICAgIGJ5dGVjb2RlX2ZpbGVzLmFwcGVuZChpbXAuY2FjaGVfZnJvbV9zb3VyY2UocHlfZmlsZSwgRmFsc2UpKQorCisgICAgICAgIHJldHVybiBieXRlY29kZV9maWxlcworCisgICAgIyAtLSBFeHRlcm5hbCBpbnRlcmZhY2UgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIChjYWxsZWQgYnkgb3V0c2lkZXJzKQorCisgICAgZGVmIGdldF9vdXRwdXRzKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGxpc3Qgb2YgZmlsZXMgdGhhdCB3b3VsZCBiZSBpbnN0YWxsZWQgaWYgdGhpcyBjb21tYW5kCisgICAgICAgIHdlcmUgYWN0dWFsbHkgcnVuLiAgTm90IGFmZmVjdGVkIGJ5IHRoZSAiZHJ5LXJ1biIgZmxhZyBvciB3aGV0aGVyCisgICAgICAgIG1vZHVsZXMgaGF2ZSBhY3R1YWxseSBiZWVuIGJ1aWx0IHlldC4KKyAgICAgICAgIiIiCisgICAgICAgIHB1cmVfb3V0cHV0cyA9IFwKKyAgICAgICAgICAgIHNlbGYuX211dGF0ZV9vdXRwdXRzKHNlbGYuZGlzdHJpYnV0aW9uLmhhc19wdXJlX21vZHVsZXMoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdidWlsZF9weScsICdidWlsZF9saWInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2RpcikKKyAgICAgICAgaWYgc2VsZi5jb21waWxlOgorICAgICAgICAgICAgYnl0ZWNvZGVfb3V0cHV0cyA9IHNlbGYuX2J5dGVjb2RlX2ZpbGVuYW1lcyhwdXJlX291dHB1dHMpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBieXRlY29kZV9vdXRwdXRzID0gW10KKworICAgICAgICBleHRfb3V0cHV0cyA9IFwKKyAgICAgICAgICAgIHNlbGYuX211dGF0ZV9vdXRwdXRzKHNlbGYuZGlzdHJpYnV0aW9uLmhhc19leHRfbW9kdWxlcygpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2J1aWxkX2V4dCcsICdidWlsZF9saWInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbnN0YWxsX2RpcikKKworICAgICAgICByZXR1cm4gcHVyZV9vdXRwdXRzICsgYnl0ZWNvZGVfb3V0cHV0cyArIGV4dF9vdXRwdXRzCisKKyAgICBkZWYgZ2V0X2lucHV0cyhzZWxmKToKKyAgICAgICAgIiIiR2V0IHRoZSBsaXN0IG9mIGZpbGVzIHRoYXQgYXJlIGlucHV0IHRvIHRoaXMgY29tbWFuZCwgaWUuIHRoZQorICAgICAgICBmaWxlcyB0aGF0IGdldCBpbnN0YWxsZWQgYXMgdGhleSBhcmUgbmFtZWQgaW4gdGhlIGJ1aWxkIHRyZWUuCisgICAgICAgIFRoZSBmaWxlcyBpbiB0aGlzIGxpc3QgY29ycmVzcG9uZCBvbmUtdG8tb25lIHRvIHRoZSBvdXRwdXQKKyAgICAgICAgZmlsZW5hbWVzIHJldHVybmVkIGJ5ICdnZXRfb3V0cHV0cygpJy4KKyAgICAgICAgIiIiCisgICAgICAgIGlucHV0cyA9IFtdCisKKyAgICAgICAgaWYgc2VsZi5kaXN0cmlidXRpb24uaGFzX3B1cmVfbW9kdWxlcygpOgorICAgICAgICAgICAgYnVpbGRfcHkgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYnVpbGRfcHknKQorICAgICAgICAgICAgaW5wdXRzLmV4dGVuZChidWlsZF9weS5nZXRfb3V0cHV0cygpKQorCisgICAgICAgIGlmIHNlbGYuZGlzdHJpYnV0aW9uLmhhc19leHRfbW9kdWxlcygpOgorICAgICAgICAgICAgYnVpbGRfZXh0ID0gc2VsZi5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2J1aWxkX2V4dCcpCisgICAgICAgICAgICBpbnB1dHMuZXh0ZW5kKGJ1aWxkX2V4dC5nZXRfb3V0cHV0cygpKQorCisgICAgICAgIHJldHVybiBpbnB1dHMKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9pbnN0YWxsX3NjcmlwdHMucHkgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9zY3JpcHRzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNmYWNiZTIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvaW5zdGFsbF9zY3JpcHRzLnB5CkBAIC0wLDAgKzEsNTkgQEAKKyIiIkluc3RhbGwgc2NyaXB0cy4iIiIKKworIyBDb250cmlidXRlZCBieSBCYXN0aWFuIEtsZWluZWlkYW0KKworaW1wb3J0IG9zCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorCitjbGFzcyBpbnN0YWxsX3NjcmlwdHMoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJpbnN0YWxsIHNjcmlwdHMgKFB5dGhvbiBvciBvdGhlcndpc2UpIgorCisgICAgdXNlcl9vcHRpb25zID0gWworICAgICAgICAoJ2luc3RhbGwtZGlyPScsICdkJywgImRpcmVjdG9yeSB0byBpbnN0YWxsIHNjcmlwdHMgdG8iKSwKKyAgICAgICAgKCdidWlsZC1kaXI9JywnYicsICJidWlsZCBkaXJlY3RvcnkgKHdoZXJlIHRvIGluc3RhbGwgZnJvbSkiKSwKKyAgICAgICAgKCdmb3JjZScsICdmJywgImZvcmNlIGluc3RhbGxhdGlvbiAob3ZlcndyaXRlIGV4aXN0aW5nIGZpbGVzKSIpLAorICAgICAgICAoJ3NraXAtYnVpbGQnLCBOb25lLCAic2tpcCB0aGUgYnVpbGQgc3RlcHMiKSwKKyAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ2ZvcmNlJywgJ3NraXAtYnVpbGQnXQorCisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLmluc3RhbGxfZGlyID0gTm9uZQorICAgICAgICBzZWxmLmZvcmNlID0gRmFsc2UKKyAgICAgICAgc2VsZi5idWlsZF9kaXIgPSBOb25lCisgICAgICAgIHNlbGYuc2tpcF9idWlsZCA9IE5vbmUKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLnNldF91bmRlZmluZWRfb3B0aW9ucygnYnVpbGQnLCAoJ2J1aWxkX3NjcmlwdHMnLCAnYnVpbGRfZGlyJykpCisgICAgICAgIHNlbGYuc2V0X3VuZGVmaW5lZF9vcHRpb25zKCdpbnN0YWxsX2Rpc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ2luc3RhbGxfc2NyaXB0cycsICdpbnN0YWxsX2RpcicpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZm9yY2UnLCAnc2tpcF9idWlsZCcpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5za2lwX2J1aWxkOgorICAgICAgICAgICAgc2VsZi5ydW5fY29tbWFuZCgnYnVpbGRfc2NyaXB0cycpCisKKyAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHNlbGYuYnVpbGRfZGlyKToKKyAgICAgICAgICAgIHNlbGYub3V0ZmlsZXMgPSBbXQorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgc2VsZi5vdXRmaWxlcyA9IHNlbGYuY29weV90cmVlKHNlbGYuYnVpbGRfZGlyLCBzZWxmLmluc3RhbGxfZGlyKQorICAgICAgICBpZiBvcy5uYW1lID09ICdwb3NpeCc6CisgICAgICAgICAgICAjIFNldCB0aGUgZXhlY3V0YWJsZSBiaXRzIChvd25lciwgZ3JvdXAsIGFuZCB3b3JsZCkgb24KKyAgICAgICAgICAgICMgYWxsIHRoZSBzY3JpcHRzIHdlIGp1c3QgaW5zdGFsbGVkLgorICAgICAgICAgICAgZm9yIGZpbGUgaW4gc2VsZi5nZXRfb3V0cHV0cygpOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oImNoYW5naW5nIG1vZGUgb2YgJXMiLCBmaWxlKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIG1vZGUgPSAob3Muc3RhdChmaWxlKS5zdF9tb2RlIHwgMG81NTUpICYgMG83Nzc3CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJjaGFuZ2luZyBtb2RlIG9mICVzIHRvICVvIiwgZmlsZSwgbW9kZSkKKyAgICAgICAgICAgICAgICAgICAgb3MuY2htb2QoZmlsZSwgbW9kZSkKKworICAgIGRlZiBnZXRfaW5wdXRzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0cmlidXRpb24uc2NyaXB0cyBvciBbXQorCisgICAgZGVmIGdldF9vdXRwdXRzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5vdXRmaWxlcyBvciBbXQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL3JlZ2lzdGVyLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3JlZ2lzdGVyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU5ODA1ZjcKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvcmVnaXN0ZXIucHkKQEAgLTAsMCArMSwyNjMgQEAKKyIiIlJlZ2lzdGVyIGEgcmVsZWFzZSB3aXRoIGEgcHJvamVjdCBpbmRleC4iIiIKKworIyBDb250cmlidXRlZCBieSBSaWNoYXJkIEpvbmVzCisKK2ltcG9ydCBnZXRwYXNzCitpbXBvcnQgdXJsbGliLmVycm9yCitpbXBvcnQgdXJsbGliLnBhcnNlCitpbXBvcnQgdXJsbGliLnJlcXVlc3QKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgKHJlYWRfcHlwaXJjLCBnZW5lcmF0ZV9weXBpcmMsIERFRkFVTFRfUkVQT1NJVE9SWSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBERUZBVUxUX1JFQUxNLCBnZXRfcHlwaXJjX3BhdGgsIGVuY29kZV9tdWx0aXBhcnQpCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorCitjbGFzcyByZWdpc3RlcihDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gInJlZ2lzdGVyIGEgcmVsZWFzZSB3aXRoIFB5UEkiCisgICAgdXNlcl9vcHRpb25zID0gWworICAgICAgICAoJ3JlcG9zaXRvcnk9JywgJ3InLAorICAgICAgICAgInJlcG9zaXRvcnkgVVJMIFtkZWZhdWx0OiAlc10iICUgREVGQVVMVF9SRVBPU0lUT1JZKSwKKyAgICAgICAgKCdzaG93LXJlc3BvbnNlJywgTm9uZSwKKyAgICAgICAgICJkaXNwbGF5IGZ1bGwgcmVzcG9uc2UgdGV4dCBmcm9tIHNlcnZlciIpLAorICAgICAgICAoJ2xpc3QtY2xhc3NpZmllcnMnLCBOb25lLAorICAgICAgICAgImxpc3QgdmFsaWQgVHJvdmUgY2xhc3NpZmllcnMiKSwKKyAgICAgICAgKCdzdHJpY3QnLCBOb25lICwKKyAgICAgICAgICJzdG9wIHRoZSByZWdpc3RyYXRpb24gaWYgdGhlIG1ldGFkYXRhIGlzIG5vdCBmdWxseSBjb21wbGlhbnQiKQorICAgICAgICBdCisKKyAgICBib29sZWFuX29wdGlvbnMgPSBbJ3Nob3ctcmVzcG9uc2UnLCAnbGlzdC1jbGFzc2lmaWVycycsICdzdHJpY3QnXQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5yZXBvc2l0b3J5ID0gTm9uZQorICAgICAgICBzZWxmLnJlYWxtID0gTm9uZQorICAgICAgICBzZWxmLnNob3dfcmVzcG9uc2UgPSBGYWxzZQorICAgICAgICBzZWxmLmxpc3RfY2xhc3NpZmllcnMgPSBGYWxzZQorICAgICAgICBzZWxmLnN0cmljdCA9IEZhbHNlCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgaWYgc2VsZi5yZXBvc2l0b3J5IGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLnJlcG9zaXRvcnkgPSBERUZBVUxUX1JFUE9TSVRPUlkKKyAgICAgICAgaWYgc2VsZi5yZWFsbSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5yZWFsbSA9IERFRkFVTFRfUkVBTE0KKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIHNlbGYuX3NldF9jb25maWcoKQorCisgICAgICAgICMgQ2hlY2sgdGhlIHBhY2thZ2UgbWV0YWRhdGEKKyAgICAgICAgY2hlY2sgPSBzZWxmLmRpc3RyaWJ1dGlvbi5nZXRfY29tbWFuZF9vYmooJ2NoZWNrJykKKyAgICAgICAgaWYgY2hlY2suc3RyaWN0ICE9IHNlbGYuc3RyaWN0IGFuZCBub3QgY2hlY2suYWxsOgorICAgICAgICAgICAgIyBJZiBjaGVjayB3YXMgYWxyZWFkeSBydW4gYnV0IHdpdGggZGlmZmVyZW50IG9wdGlvbnMsCisgICAgICAgICAgICAjIHJlLXJ1biBpdAorICAgICAgICAgICAgY2hlY2suc3RyaWN0ID0gc2VsZi5zdHJpY3QKKyAgICAgICAgICAgIGNoZWNrLmFsbCA9IFRydWUKKyAgICAgICAgICAgIHNlbGYuZGlzdHJpYnV0aW9uLmhhdmVfcnVuLnBvcCgnY2hlY2snLCBOb25lKQorICAgICAgICAgICAgc2VsZi5ydW5fY29tbWFuZCgnY2hlY2snKQorCisgICAgICAgIGlmIHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgIHNlbGYudmVyaWZ5X21ldGFkYXRhKCkKKyAgICAgICAgZWxpZiBzZWxmLmxpc3RfY2xhc3NpZmllcnM6CisgICAgICAgICAgICBzZWxmLmNsYXNzaWZpZXJzKCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuc2VuZF9tZXRhZGF0YSgpCisKKyAgICBkZWYgX3NldF9jb25maWcoc2VsZik6CisgICAgICAgICcnJyBSZWFkcyB0aGUgY29uZmlndXJhdGlvbiBmaWxlIGFuZCBzZXQgYXR0cmlidXRlcy4KKyAgICAgICAgJycnCisgICAgICAgIGNvbmZpZyA9IHJlYWRfcHlwaXJjKHNlbGYucmVwb3NpdG9yeSwgc2VsZi5yZWFsbSkKKyAgICAgICAgaWYgY29uZmlnICE9IHt9OgorICAgICAgICAgICAgc2VsZi51c2VybmFtZSA9IGNvbmZpZ1sndXNlcm5hbWUnXQorICAgICAgICAgICAgc2VsZi5wYXNzd29yZCA9IGNvbmZpZ1sncGFzc3dvcmQnXQorICAgICAgICAgICAgc2VsZi5yZXBvc2l0b3J5ID0gY29uZmlnWydyZXBvc2l0b3J5J10KKyAgICAgICAgICAgIHNlbGYucmVhbG0gPSBjb25maWdbJ3JlYWxtJ10KKyAgICAgICAgICAgIHNlbGYuaGFzX2NvbmZpZyA9IFRydWUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIHNlbGYucmVwb3NpdG9yeSBub3QgaW4gKCdweXBpJywgREVGQVVMVF9SRVBPU0lUT1JZKToKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCclcyBub3QgZm91bmQgaW4gLnB5cGlyYycgJSBzZWxmLnJlcG9zaXRvcnkpCisgICAgICAgICAgICBpZiBzZWxmLnJlcG9zaXRvcnkgPT0gJ3B5cGknOgorICAgICAgICAgICAgICAgIHNlbGYucmVwb3NpdG9yeSA9IERFRkFVTFRfUkVQT1NJVE9SWQorICAgICAgICAgICAgc2VsZi5oYXNfY29uZmlnID0gRmFsc2UKKworICAgIGRlZiBjbGFzc2lmaWVycyhzZWxmKToKKyAgICAgICAgJycnIEZldGNoIHRoZSBsaXN0IG9mIGNsYXNzaWZpZXJzIGZyb20gdGhlIHNlcnZlci4KKyAgICAgICAgJycnCisgICAgICAgIHJlc3BvbnNlID0gdXJsbGliLnJlcXVlc3QudXJsb3BlbihzZWxmLnJlcG9zaXRvcnkrJz86YWN0aW9uPWxpc3RfY2xhc3NpZmllcnMnKQorICAgICAgICBsb2dnZXIuaW5mbyhyZXNwb25zZS5yZWFkKCkpCisKKyAgICBkZWYgdmVyaWZ5X21ldGFkYXRhKHNlbGYpOgorICAgICAgICAnJycgU2VuZCB0aGUgbWV0YWRhdGEgdG8gdGhlIHBhY2thZ2UgaW5kZXggc2VydmVyIHRvIGJlIGNoZWNrZWQuCisgICAgICAgICcnJworICAgICAgICAjIHNlbmQgdGhlIGluZm8gdG8gdGhlIHNlcnZlciBhbmQgcmVwb3J0IHRoZSByZXN1bHQKKyAgICAgICAgY29kZSwgcmVzdWx0ID0gc2VsZi5wb3N0X3RvX3NlcnZlcihzZWxmLmJ1aWxkX3Bvc3RfZGF0YSgndmVyaWZ5JykpCisgICAgICAgIGxvZ2dlci5pbmZvKCdzZXJ2ZXIgcmVzcG9uc2UgKCVzKTogJXMnLCBjb2RlLCByZXN1bHQpCisKKworICAgIGRlZiBzZW5kX21ldGFkYXRhKHNlbGYpOgorICAgICAgICAnJycgU2VuZCB0aGUgbWV0YWRhdGEgdG8gdGhlIHBhY2thZ2UgaW5kZXggc2VydmVyLgorCisgICAgICAgICAgICBXZWxsLCBkbyB0aGUgZm9sbG93aW5nOgorICAgICAgICAgICAgMS4gZmlndXJlIHdobyB0aGUgdXNlciBpcywgYW5kIHRoZW4KKyAgICAgICAgICAgIDIuIHNlbmQgdGhlIGRhdGEgYXMgYSBCYXNpYyBhdXRoJ2VkIFBPU1QuCisKKyAgICAgICAgICAgIEZpcnN0IHdlIHRyeSB0byByZWFkIHRoZSB1c2VybmFtZS9wYXNzd29yZCBmcm9tICRIT01FLy5weXBpcmMsCisgICAgICAgICAgICB3aGljaCBpcyBhIENvbmZpZ1BhcnNlci1mb3JtYXR0ZWQgZmlsZSB3aXRoIGEgc2VjdGlvbgorICAgICAgICAgICAgW2Rpc3R1dGlsc10gY29udGFpbmluZyB1c2VybmFtZSBhbmQgcGFzc3dvcmQgZW50cmllcyAoYm90aAorICAgICAgICAgICAgaW4gY2xlYXIgdGV4dCkuIEVnOgorCisgICAgICAgICAgICAgICAgW2Rpc3R1dGlsc10KKyAgICAgICAgICAgICAgICBpbmRleC1zZXJ2ZXJzID0KKyAgICAgICAgICAgICAgICAgICAgcHlwaQorCisgICAgICAgICAgICAgICAgW3B5cGldCisgICAgICAgICAgICAgICAgdXNlcm5hbWU6IGZyZWQKKyAgICAgICAgICAgICAgICBwYXNzd29yZDogc2Vrcml0CisKKyAgICAgICAgICAgIE90aGVyd2lzZSwgdG8gZmlndXJlIHdobyB0aGUgdXNlciBpcywgd2Ugb2ZmZXIgdGhlIHVzZXIgdGhyZWUKKyAgICAgICAgICAgIGNob2ljZXM6CisKKyAgICAgICAgICAgICAxLiB1c2UgZXhpc3RpbmcgbG9naW4sCisgICAgICAgICAgICAgMi4gcmVnaXN0ZXIgYXMgYSBuZXcgdXNlciwgb3IKKyAgICAgICAgICAgICAzLiBzZXQgdGhlIHBhc3N3b3JkIHRvIGEgcmFuZG9tIHN0cmluZyBhbmQgZW1haWwgdGhlIHVzZXIuCisKKyAgICAgICAgJycnCisgICAgICAgICMgVE9ETyBmYWN0b3IgcmVnaXN0cmF0aW9uIG91dCBpbnRvIGFub3RoZXIgbWV0aG9kCisgICAgICAgICMgVE9ETyB1c2UgcHJpbnQgdG8gcHJpbnQsIG5vdCBsb2dnaW5nCisKKyAgICAgICAgIyBzZWUgaWYgd2UgY2FuIHNob3J0LWN1dCBhbmQgZ2V0IHRoZSB1c2VybmFtZS9wYXNzd29yZCBmcm9tIHRoZQorICAgICAgICAjIGNvbmZpZworICAgICAgICBpZiBzZWxmLmhhc19jb25maWc6CisgICAgICAgICAgICBjaG9pY2UgPSAnMScKKyAgICAgICAgICAgIHVzZXJuYW1lID0gc2VsZi51c2VybmFtZQorICAgICAgICAgICAgcGFzc3dvcmQgPSBzZWxmLnBhc3N3b3JkCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBjaG9pY2UgPSAneCcKKyAgICAgICAgICAgIHVzZXJuYW1lID0gcGFzc3dvcmQgPSAnJworCisgICAgICAgICMgZ2V0IHRoZSB1c2VyJ3MgbG9naW4gaW5mbworICAgICAgICBjaG9pY2VzID0gJzEgMiAzIDQnLnNwbGl0KCkKKyAgICAgICAgd2hpbGUgY2hvaWNlIG5vdCBpbiBjaG9pY2VzOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJycnXAorV2UgbmVlZCB0byBrbm93IHdobyB5b3UgYXJlLCBzbyBwbGVhc2UgY2hvb3NlIGVpdGhlcjoKKyAxLiB1c2UgeW91ciBleGlzdGluZyBsb2dpbiwKKyAyLiByZWdpc3RlciBhcyBhIG5ldyB1c2VyLAorIDMuIGhhdmUgdGhlIHNlcnZlciBnZW5lcmF0ZSBhIG5ldyBwYXNzd29yZCBmb3IgeW91IChhbmQgZW1haWwgaXQgdG8geW91KSwgb3IKKyA0LiBxdWl0CitZb3VyIHNlbGVjdGlvbiBbZGVmYXVsdCAxXTogJycnKQorCisgICAgICAgICAgICBjaG9pY2UgPSBpbnB1dCgpCisgICAgICAgICAgICBpZiBub3QgY2hvaWNlOgorICAgICAgICAgICAgICAgIGNob2ljZSA9ICcxJworICAgICAgICAgICAgZWxpZiBjaG9pY2Ugbm90IGluIGNob2ljZXM6CisgICAgICAgICAgICAgICAgcHJpbnQoJ1BsZWFzZSBjaG9vc2Ugb25lIG9mIHRoZSBmb3VyIG9wdGlvbnMhJykKKworICAgICAgICBpZiBjaG9pY2UgPT0gJzEnOgorICAgICAgICAgICAgIyBnZXQgdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZAorICAgICAgICAgICAgd2hpbGUgbm90IHVzZXJuYW1lOgorICAgICAgICAgICAgICAgIHVzZXJuYW1lID0gaW5wdXQoJ1VzZXJuYW1lOiAnKQorICAgICAgICAgICAgd2hpbGUgbm90IHBhc3N3b3JkOgorICAgICAgICAgICAgICAgIHBhc3N3b3JkID0gZ2V0cGFzcy5nZXRwYXNzKCdQYXNzd29yZDogJykKKworICAgICAgICAgICAgIyBzZXQgdXAgdGhlIGF1dGhlbnRpY2F0aW9uCisgICAgICAgICAgICBhdXRoID0gdXJsbGliLnJlcXVlc3QuSFRUUFBhc3N3b3JkTWdyKCkKKyAgICAgICAgICAgIGhvc3QgPSB1cmxsaWIucGFyc2UudXJscGFyc2Uoc2VsZi5yZXBvc2l0b3J5KVsxXQorICAgICAgICAgICAgYXV0aC5hZGRfcGFzc3dvcmQoc2VsZi5yZWFsbSwgaG9zdCwgdXNlcm5hbWUsIHBhc3N3b3JkKQorICAgICAgICAgICAgIyBzZW5kIHRoZSBpbmZvIHRvIHRoZSBzZXJ2ZXIgYW5kIHJlcG9ydCB0aGUgcmVzdWx0CisgICAgICAgICAgICBjb2RlLCByZXN1bHQgPSBzZWxmLnBvc3RfdG9fc2VydmVyKHNlbGYuYnVpbGRfcG9zdF9kYXRhKCdzdWJtaXQnKSwKKyAgICAgICAgICAgICAgICBhdXRoKQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ1NlcnZlciByZXNwb25zZSAoJXMpOiAlcycsIGNvZGUsIHJlc3VsdCkKKworICAgICAgICAgICAgIyBwb3NzaWJseSBzYXZlIHRoZSBsb2dpbgorICAgICAgICAgICAgaWYgY29kZSA9PSAyMDA6CisgICAgICAgICAgICAgICAgaWYgc2VsZi5oYXNfY29uZmlnOgorICAgICAgICAgICAgICAgICAgICAjIHNoYXJpbmcgdGhlIHBhc3N3b3JkIGluIHRoZSBkaXN0cmlidXRpb24gaW5zdGFuY2UKKyAgICAgICAgICAgICAgICAgICAgIyBzbyB0aGUgdXBsb2FkIGNvbW1hbmQgY2FuIHJldXNlIGl0CisgICAgICAgICAgICAgICAgICAgIHNlbGYuZGlzdHJpYnV0aW9uLnBhc3N3b3JkID0gcGFzc3dvcmQKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygKKyAgICAgICAgICAgICAgICAgICAgICAgICdJIGNhbiBzdG9yZSB5b3VyIFB5UEkgbG9naW4gc28gZnV0dXJlIHN1Ym1pc3Npb25zICcKKyAgICAgICAgICAgICAgICAgICAgICAgICd3aWxsIGJlIGZhc3Rlci5cbih0aGUgbG9naW4gd2lsbCBiZSBzdG9yZWQgaW4gJXMpJywKKyAgICAgICAgICAgICAgICAgICAgICAgIGdldF9weXBpcmNfcGF0aCgpKQorICAgICAgICAgICAgICAgICAgICBjaG9pY2UgPSAnWCcKKyAgICAgICAgICAgICAgICAgICAgd2hpbGUgY2hvaWNlLmxvd2VyKCkgbm90IGluICgneScsICduJyk6CisgICAgICAgICAgICAgICAgICAgICAgICBjaG9pY2UgPSBpbnB1dCgnU2F2ZSB5b3VyIGxvZ2luICh5L04pPycpCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBub3QgY2hvaWNlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNob2ljZSA9ICduJworICAgICAgICAgICAgICAgICAgICBpZiBjaG9pY2UubG93ZXIoKSA9PSAneSc6CisgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0ZV9weXBpcmModXNlcm5hbWUsIHBhc3N3b3JkKQorCisgICAgICAgIGVsaWYgY2hvaWNlID09ICcyJzoKKyAgICAgICAgICAgIGRhdGEgPSB7JzphY3Rpb24nOiAndXNlcid9CisgICAgICAgICAgICBkYXRhWyduYW1lJ10gPSBkYXRhWydwYXNzd29yZCddID0gZGF0YVsnZW1haWwnXSA9ICcnCisgICAgICAgICAgICBkYXRhWydjb25maXJtJ10gPSBOb25lCisgICAgICAgICAgICB3aGlsZSBub3QgZGF0YVsnbmFtZSddOgorICAgICAgICAgICAgICAgIGRhdGFbJ25hbWUnXSA9IGlucHV0KCdVc2VybmFtZTogJykKKyAgICAgICAgICAgIHdoaWxlIGRhdGFbJ3Bhc3N3b3JkJ10gIT0gZGF0YVsnY29uZmlybSddOgorICAgICAgICAgICAgICAgIHdoaWxlIG5vdCBkYXRhWydwYXNzd29yZCddOgorICAgICAgICAgICAgICAgICAgICBkYXRhWydwYXNzd29yZCddID0gZ2V0cGFzcy5nZXRwYXNzKCdQYXNzd29yZDogJykKKyAgICAgICAgICAgICAgICB3aGlsZSBub3QgZGF0YVsnY29uZmlybSddOgorICAgICAgICAgICAgICAgICAgICBkYXRhWydjb25maXJtJ10gPSBnZXRwYXNzLmdldHBhc3MoJyBDb25maXJtOiAnKQorICAgICAgICAgICAgICAgIGlmIGRhdGFbJ3Bhc3N3b3JkJ10gIT0gZGF0YVsnY29uZmlybSddOgorICAgICAgICAgICAgICAgICAgICBkYXRhWydwYXNzd29yZCddID0gJycKKyAgICAgICAgICAgICAgICAgICAgZGF0YVsnY29uZmlybSddID0gTm9uZQorICAgICAgICAgICAgICAgICAgICBwcmludCgiUGFzc3dvcmQgYW5kIGNvbmZpcm0gZG9uJ3QgbWF0Y2ghIikKKyAgICAgICAgICAgIHdoaWxlIG5vdCBkYXRhWydlbWFpbCddOgorICAgICAgICAgICAgICAgIGRhdGFbJ2VtYWlsJ10gPSBpbnB1dCgnICAgRU1haWw6ICcpCisgICAgICAgICAgICBjb2RlLCByZXN1bHQgPSBzZWxmLnBvc3RfdG9fc2VydmVyKGRhdGEpCisgICAgICAgICAgICBpZiBjb2RlICE9IDIwMDoKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygnc2VydmVyIHJlc3BvbnNlICglcyk6ICVzJywgY29kZSwgcmVzdWx0KQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygneW91IHdpbGwgcmVjZWl2ZSBhbiBlbWFpbCBzaG9ydGx5OyBmb2xsb3cgdGhlICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaW5zdHJ1Y3Rpb25zIGluIGl0IHRvIGNvbXBsZXRlIHJlZ2lzdHJhdGlvbi4nKQorICAgICAgICBlbGlmIGNob2ljZSA9PSAnMyc6CisgICAgICAgICAgICBkYXRhID0geyc6YWN0aW9uJzogJ3Bhc3N3b3JkX3Jlc2V0J30KKyAgICAgICAgICAgIGRhdGFbJ2VtYWlsJ10gPSAnJworICAgICAgICAgICAgd2hpbGUgbm90IGRhdGFbJ2VtYWlsJ106CisgICAgICAgICAgICAgICAgZGF0YVsnZW1haWwnXSA9IGlucHV0KCdZb3VyIGVtYWlsIGFkZHJlc3M6ICcpCisgICAgICAgICAgICBjb2RlLCByZXN1bHQgPSBzZWxmLnBvc3RfdG9fc2VydmVyKGRhdGEpCisgICAgICAgICAgICBsb2dnZXIuaW5mbygnc2VydmVyIHJlc3BvbnNlICglcyk6ICVzJywgY29kZSwgcmVzdWx0KQorCisgICAgZGVmIGJ1aWxkX3Bvc3RfZGF0YShzZWxmLCBhY3Rpb24pOgorICAgICAgICAjIGZpZ3VyZSB0aGUgZGF0YSB0byBzZW5kIC0gdGhlIG1ldGFkYXRhIHBsdXMgc29tZSBhZGRpdGlvbmFsCisgICAgICAgICMgaW5mb3JtYXRpb24gdXNlZCBieSB0aGUgcGFja2FnZSBzZXJ2ZXIKKyAgICAgICAgZGF0YSA9IHNlbGYuZGlzdHJpYnV0aW9uLm1ldGFkYXRhLnRvZGljdCgpCisgICAgICAgIGRhdGFbJzphY3Rpb24nXSA9IGFjdGlvbgorICAgICAgICByZXR1cm4gZGF0YQorCisgICAgIyBYWFggdG8gYmUgcmVmYWN0b3JlZCB3aXRoIHVwbG9hZC51cGxvYWRfZmlsZQorICAgIGRlZiBwb3N0X3RvX3NlcnZlcihzZWxmLCBkYXRhLCBhdXRoPU5vbmUpOgorICAgICAgICAnJycgUG9zdCBhIHF1ZXJ5IHRvIHRoZSBzZXJ2ZXIsIGFuZCByZXR1cm4gYSBzdHJpbmcgcmVzcG9uc2UuCisgICAgICAgICcnJworICAgICAgICBpZiAnbmFtZScgaW4gZGF0YToKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCdSZWdpc3RlcmluZyAlcyB0byAlcycsIGRhdGFbJ25hbWUnXSwgc2VsZi5yZXBvc2l0b3J5KQorICAgICAgICAjIEJ1aWxkIHVwIHRoZSBNSU1FIHBheWxvYWQgZm9yIHRoZSB1cmxsaWIyIFBPU1QgZGF0YQorICAgICAgICBjb250ZW50X3R5cGUsIGJvZHkgPSBlbmNvZGVfbXVsdGlwYXJ0KGRhdGEuaXRlbXMoKSwgW10pCisKKyAgICAgICAgIyBidWlsZCB0aGUgUmVxdWVzdAorICAgICAgICBoZWFkZXJzID0geworICAgICAgICAgICAgJ0NvbnRlbnQtdHlwZSc6IGNvbnRlbnRfdHlwZSwKKyAgICAgICAgICAgICdDb250ZW50LWxlbmd0aCc6IHN0cihsZW4oYm9keSkpCisgICAgICAgIH0KKyAgICAgICAgcmVxID0gdXJsbGliLnJlcXVlc3QuUmVxdWVzdChzZWxmLnJlcG9zaXRvcnksIGJvZHksIGhlYWRlcnMpCisKKyAgICAgICAgIyBoYW5kbGUgSFRUUCBhbmQgaW5jbHVkZSB0aGUgQmFzaWMgQXV0aCBoYW5kbGVyCisgICAgICAgIG9wZW5lciA9IHVybGxpYi5yZXF1ZXN0LmJ1aWxkX29wZW5lcigKKyAgICAgICAgICAgIHVybGxpYi5yZXF1ZXN0LkhUVFBCYXNpY0F1dGhIYW5kbGVyKHBhc3N3b3JkX21ncj1hdXRoKQorICAgICAgICApCisgICAgICAgIGRhdGEgPSAnJworICAgICAgICB0cnk6CisgICAgICAgICAgICByZXN1bHQgPSBvcGVuZXIub3BlbihyZXEpCisgICAgICAgIGV4Y2VwdCB1cmxsaWIuZXJyb3IuSFRUUEVycm9yIGFzIGU6CisgICAgICAgICAgICBpZiBzZWxmLnNob3dfcmVzcG9uc2U6CisgICAgICAgICAgICAgICAgZGF0YSA9IGUuZnAucmVhZCgpCisgICAgICAgICAgICByZXN1bHQgPSBlLmNvZGUsIGUubXNnCisgICAgICAgIGV4Y2VwdCB1cmxsaWIuZXJyb3IuVVJMRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHJlc3VsdCA9IDUwMCwgc3RyKGUpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBzZWxmLnNob3dfcmVzcG9uc2U6CisgICAgICAgICAgICAgICAgZGF0YSA9IHJlc3VsdC5yZWFkKCkKKyAgICAgICAgICAgIHJlc3VsdCA9IDIwMCwgJ09LJworICAgICAgICBpZiBzZWxmLnNob3dfcmVzcG9uc2U6CisgICAgICAgICAgICBkYXNoZXMgPSAnLScgKiA3NQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJyVzJXMlcycsIGRhc2hlcywgZGF0YSwgZGFzaGVzKQorCisgICAgICAgIHJldHVybiByZXN1bHQKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9zZGlzdC5weSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC9zZGlzdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMzk5OTgxCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3NkaXN0LnB5CkBAIC0wLDAgKzEsMzQ3IEBACisiIiJDcmVhdGUgYSBzb3VyY2UgZGlzdHJpYnV0aW9uLiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHN5cworZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KK2Zyb20gc2h1dGlsIGltcG9ydCBnZXRfYXJjaGl2ZV9mb3JtYXRzLCBybXRyZWUKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgcmVzb2x2ZV9uYW1lCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChQYWNrYWdpbmdQbGF0Zm9ybUVycm9yLCBQYWNrYWdpbmdPcHRpb25FcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2luZ01vZHVsZUVycm9yLCBQYWNrYWdpbmdGaWxlRXJyb3IpCitmcm9tIHBhY2thZ2luZy5jb21tYW5kIGltcG9ydCBnZXRfY29tbWFuZF9uYW1lcworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLm1hbmlmZXN0IGltcG9ydCBNYW5pZmVzdAorCisKK2RlZiBzaG93X2Zvcm1hdHMoKToKKyAgICAiIiJQcmludCBhbGwgcG9zc2libGUgdmFsdWVzIGZvciB0aGUgJ2Zvcm1hdHMnIG9wdGlvbiAodXNlZCBieQorICAgIHRoZSAiLS1oZWxwLWZvcm1hdHMiIGNvbW1hbmQtbGluZSBvcHRpb24pLgorICAgICIiIgorICAgIGZyb20gcGFja2FnaW5nLmZhbmN5X2dldG9wdCBpbXBvcnQgRmFuY3lHZXRvcHQKKyAgICBmb3JtYXRzID0gc29ydGVkKCgnZm9ybWF0cz0nICsgbmFtZSwgTm9uZSwgZGVzYykKKyAgICAgICAgICAgICAgICAgICAgIGZvciBuYW1lLCBkZXNjIGluIGdldF9hcmNoaXZlX2Zvcm1hdHMoKSkKKyAgICBGYW5jeUdldG9wdChmb3JtYXRzKS5wcmludF9oZWxwKAorICAgICAgICAiTGlzdCBvZiBhdmFpbGFibGUgc291cmNlIGRpc3RyaWJ1dGlvbiBmb3JtYXRzOiIpCisKKyMgYSBcIGZvbGxvd2VkIGJ5IHNvbWUgc3BhY2VzICsgRU9MCitfQ09MTEFQU0VfUEFUVEVSTiA9IHJlLmNvbXBpbGUoJ1xcXHdcbicsIHJlLk0pCitfQ09NTUVOVEVEX0xJTkUgPSByZS5jb21waWxlKCdeIy4qXG4kfF5cdypcbiQnLCByZS5NKQorCisKK2NsYXNzIHNkaXN0KENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAiY3JlYXRlIGEgc291cmNlIGRpc3RyaWJ1dGlvbiAodGFyYmFsbCwgemlwIGZpbGUsIGV0Yy4pIgorCisgICAgdXNlcl9vcHRpb25zID0gWworICAgICAgICAoJ21hbmlmZXN0PScsICdtJywKKyAgICAgICAgICJuYW1lIG9mIG1hbmlmZXN0IGZpbGUgW2RlZmF1bHQ6IE1BTklGRVNUXSIpLAorICAgICAgICAoJ3VzZS1kZWZhdWx0cycsIE5vbmUsCisgICAgICAgICAiaW5jbHVkZSB0aGUgZGVmYXVsdCBmaWxlIHNldCBpbiB0aGUgbWFuaWZlc3QgIgorICAgICAgICAgIltkZWZhdWx0OyBkaXNhYmxlIHdpdGggLS1uby1kZWZhdWx0c10iKSwKKyAgICAgICAgKCduby1kZWZhdWx0cycsIE5vbmUsCisgICAgICAgICAiZG9uJ3QgaW5jbHVkZSB0aGUgZGVmYXVsdCBmaWxlIHNldCIpLAorICAgICAgICAoJ3BydW5lJywgTm9uZSwKKyAgICAgICAgICJzcGVjaWZpY2FsbHkgZXhjbHVkZSBmaWxlcy9kaXJlY3RvcmllcyB0aGF0IHNob3VsZCBub3QgYmUgIgorICAgICAgICAgImRpc3RyaWJ1dGVkIChidWlsZCB0cmVlLCBSQ1MvQ1ZTIGRpcnMsIGV0Yy4pICIKKyAgICAgICAgICJbZGVmYXVsdDsgZGlzYWJsZSB3aXRoIC0tbm8tcHJ1bmVdIiksCisgICAgICAgICgnbm8tcHJ1bmUnLCBOb25lLAorICAgICAgICAgImRvbid0IGF1dG9tYXRpY2FsbHkgZXhjbHVkZSBhbnl0aGluZyIpLAorICAgICAgICAoJ21hbmlmZXN0LW9ubHknLCAnbycsCisgICAgICAgICAianVzdCByZWdlbmVyYXRlIHRoZSBtYW5pZmVzdCBhbmQgdGhlbiBzdG9wICIpLAorICAgICAgICAoJ2Zvcm1hdHM9JywgTm9uZSwKKyAgICAgICAgICJmb3JtYXRzIGZvciBzb3VyY2UgZGlzdHJpYnV0aW9uIChjb21tYS1zZXBhcmF0ZWQgbGlzdCkiKSwKKyAgICAgICAgKCdrZWVwLXRlbXAnLCAnaycsCisgICAgICAgICAia2VlcCB0aGUgZGlzdHJpYnV0aW9uIHRyZWUgYXJvdW5kIGFmdGVyIGNyZWF0aW5nICIgKworICAgICAgICAgImFyY2hpdmUgZmlsZShzKSIpLAorICAgICAgICAoJ2Rpc3QtZGlyPScsICdkJywKKyAgICAgICAgICJkaXJlY3RvcnkgdG8gcHV0IHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIGFyY2hpdmUocykgaW4gIgorICAgICAgICAgIltkZWZhdWx0OiBkaXN0XSIpLAorICAgICAgICAoJ2NoZWNrLW1ldGFkYXRhJywgTm9uZSwKKyAgICAgICAgICJFbnN1cmUgdGhhdCBhbGwgcmVxdWlyZWQgZWxlbWVudHMgb2YgbWV0YWRhdGEgIgorICAgICAgICAgImFyZSBzdXBwbGllZC4gV2FybiBpZiBhbnkgbWlzc2luZy4gW2RlZmF1bHRdIiksCisgICAgICAgICgnb3duZXI9JywgJ3UnLAorICAgICAgICAgIk93bmVyIG5hbWUgdXNlZCB3aGVuIGNyZWF0aW5nIGEgdGFyIGZpbGUgW2RlZmF1bHQ6IGN1cnJlbnQgdXNlcl0iKSwKKyAgICAgICAgKCdncm91cD0nLCAnZycsCisgICAgICAgICAiR3JvdXAgbmFtZSB1c2VkIHdoZW4gY3JlYXRpbmcgYSB0YXIgZmlsZSBbZGVmYXVsdDogY3VycmVudCBncm91cF0iKSwKKyAgICAgICAgKCdtYW5pZmVzdC1idWlsZGVycz0nLCBOb25lLAorICAgICAgICAgIm1hbmlmZXN0IGJ1aWxkZXJzIChjb21tYS1zZXBhcmF0ZWQgbGlzdCkiKSwKKyAgICAgICAgXQorCisgICAgYm9vbGVhbl9vcHRpb25zID0gWyd1c2UtZGVmYXVsdHMnLCAncHJ1bmUnLAorICAgICAgICAgICAgICAgICAgICAgICAnbWFuaWZlc3Qtb25seScsICdrZWVwLXRlbXAnLCAnY2hlY2stbWV0YWRhdGEnXQorCisgICAgaGVscF9vcHRpb25zID0gWworICAgICAgICAoJ2hlbHAtZm9ybWF0cycsIE5vbmUsCisgICAgICAgICAibGlzdCBhdmFpbGFibGUgZGlzdHJpYnV0aW9uIGZvcm1hdHMiLCBzaG93X2Zvcm1hdHMpLAorICAgICAgICBdCisKKyAgICBuZWdhdGl2ZV9vcHQgPSB7J25vLWRlZmF1bHRzJzogJ3VzZS1kZWZhdWx0cycsCisgICAgICAgICAgICAgICAgICAgICduby1wcnVuZSc6ICdwcnVuZSd9CisKKyAgICBkZWZhdWx0X2Zvcm1hdCA9IHsncG9zaXgnOiAnZ3p0YXInLAorICAgICAgICAgICAgICAgICAgICAgICdudCc6ICd6aXAnfQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5tYW5pZmVzdCA9IE5vbmUKKyAgICAgICAgIyAndXNlX2RlZmF1bHRzJzogaWYgdHJ1ZSwgd2Ugd2lsbCBpbmNsdWRlIHRoZSBkZWZhdWx0IGZpbGUgc2V0CisgICAgICAgICMgaW4gdGhlIG1hbmlmZXN0CisgICAgICAgIHNlbGYudXNlX2RlZmF1bHRzID0gVHJ1ZQorICAgICAgICBzZWxmLnBydW5lID0gVHJ1ZQorICAgICAgICBzZWxmLm1hbmlmZXN0X29ubHkgPSBGYWxzZQorICAgICAgICBzZWxmLmZvcm1hdHMgPSBOb25lCisgICAgICAgIHNlbGYua2VlcF90ZW1wID0gRmFsc2UKKyAgICAgICAgc2VsZi5kaXN0X2RpciA9IE5vbmUKKworICAgICAgICBzZWxmLmFyY2hpdmVfZmlsZXMgPSBOb25lCisgICAgICAgIHNlbGYubWV0YWRhdGFfY2hlY2sgPSBUcnVlCisgICAgICAgIHNlbGYub3duZXIgPSBOb25lCisgICAgICAgIHNlbGYuZ3JvdXAgPSBOb25lCisgICAgICAgIHNlbGYuZmlsZWxpc3QgPSBOb25lCisgICAgICAgIHNlbGYubWFuaWZlc3RfYnVpbGRlcnMgPSBOb25lCisKKyAgICBkZWYgX2NoZWNrX2FyY2hpdmVfZm9ybWF0cyhzZWxmLCBmb3JtYXRzKToKKyAgICAgICAgc3VwcG9ydGVkX2Zvcm1hdHMgPSBbbmFtZSBmb3IgbmFtZSwgZGVzYyBpbiBnZXRfYXJjaGl2ZV9mb3JtYXRzKCldCisgICAgICAgIGZvciBmb3JtYXQgaW4gZm9ybWF0czoKKyAgICAgICAgICAgIGlmIGZvcm1hdCBub3QgaW4gc3VwcG9ydGVkX2Zvcm1hdHM6CisgICAgICAgICAgICAgICAgcmV0dXJuIGZvcm1hdAorICAgICAgICByZXR1cm4gTm9uZQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGlmIHNlbGYubWFuaWZlc3QgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYubWFuaWZlc3QgPSAiTUFOSUZFU1QiCisKKyAgICAgICAgc2VsZi5lbnN1cmVfc3RyaW5nX2xpc3QoJ2Zvcm1hdHMnKQorICAgICAgICBpZiBzZWxmLmZvcm1hdHMgaXMgTm9uZToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLmZvcm1hdHMgPSBbc2VsZi5kZWZhdWx0X2Zvcm1hdFtvcy5uYW1lXV0KKyAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKCJkb24ndCBrbm93IGhvdyB0byBjcmVhdGUgc291cmNlICIKKyAgICAgICAgICAgICAgICAgICAgICAgImRpc3RyaWJ1dGlvbnMgb24gcGxhdGZvcm0gJXMiICUgb3MubmFtZSkKKworICAgICAgICBiYWRfZm9ybWF0ID0gc2VsZi5fY2hlY2tfYXJjaGl2ZV9mb3JtYXRzKHNlbGYuZm9ybWF0cykKKyAgICAgICAgaWYgYmFkX2Zvcm1hdDoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKCJ1bmtub3duIGFyY2hpdmUgZm9ybWF0ICclcyciIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICUgYmFkX2Zvcm1hdCkKKworICAgICAgICBpZiBzZWxmLmRpc3RfZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmRpc3RfZGlyID0gImRpc3QiCisKKyAgICAgICAgaWYgc2VsZi5maWxlbGlzdCBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5maWxlbGlzdCA9IE1hbmlmZXN0KCkKKworICAgICAgICBpZiBzZWxmLm1hbmlmZXN0X2J1aWxkZXJzIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLm1hbmlmZXN0X2J1aWxkZXJzID0gW10KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2Uoc2VsZi5tYW5pZmVzdF9idWlsZGVycywgc3RyKToKKyAgICAgICAgICAgICAgICBzZWxmLm1hbmlmZXN0X2J1aWxkZXJzID0gc2VsZi5tYW5pZmVzdF9idWlsZGVycy5zcGxpdCgnLCcpCisgICAgICAgICAgICBidWlsZGVycyA9IFtdCisgICAgICAgICAgICBmb3IgYnVpbGRlciBpbiBzZWxmLm1hbmlmZXN0X2J1aWxkZXJzOgorICAgICAgICAgICAgICAgIGJ1aWxkZXIgPSBidWlsZGVyLnN0cmlwKCkKKyAgICAgICAgICAgICAgICBpZiBidWlsZGVyID09ICcnOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgYnVpbGRlciA9IHJlc29sdmVfbmFtZShidWlsZGVyKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvciBhcyBlOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdNb2R1bGVFcnJvcihlKQorCisgICAgICAgICAgICAgICAgYnVpbGRlcnMuYXBwZW5kKGJ1aWxkZXIpCisKKyAgICAgICAgICAgIHNlbGYubWFuaWZlc3RfYnVpbGRlcnMgPSBidWlsZGVycworCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgIyAnZmlsZWxpc3QnIGNvbnRhaW5zIHRoZSBsaXN0IG9mIGZpbGVzIHRoYXQgd2lsbCBtYWtlIHVwIHRoZQorICAgICAgICAjIG1hbmlmZXN0CisgICAgICAgIHNlbGYuZmlsZWxpc3QuY2xlYXIoKQorCisgICAgICAgICMgQ2hlY2sgdGhlIHBhY2thZ2UgbWV0YWRhdGEKKyAgICAgICAgaWYgc2VsZi5tZXRhZGF0YV9jaGVjazoKKyAgICAgICAgICAgIHNlbGYucnVuX2NvbW1hbmQoJ2NoZWNrJykKKworICAgICAgICAjIERvIHdoYXRldmVyIGl0IHRha2VzIHRvIGdldCB0aGUgbGlzdCBvZiBmaWxlcyB0byBwcm9jZXNzCisgICAgICAgICMgKHByb2Nlc3MgdGhlIG1hbmlmZXN0IHRlbXBsYXRlLCByZWFkIGFuIGV4aXN0aW5nIG1hbmlmZXN0LAorICAgICAgICAjIHdoYXRldmVyKS4gIEZpbGUgbGlzdCBpcyBhY2N1bXVsYXRlZCBpbiAnc2VsZi5maWxlbGlzdCcuCisgICAgICAgIHNlbGYuZ2V0X2ZpbGVfbGlzdCgpCisKKyAgICAgICAgIyBJZiB1c2VyIGp1c3Qgd2FudGVkIHVzIHRvIHJlZ2VuZXJhdGUgdGhlIG1hbmlmZXN0LCBzdG9wIG5vdy4KKyAgICAgICAgaWYgc2VsZi5tYW5pZmVzdF9vbmx5OgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyBPdGhlcndpc2UsIGdvIGFoZWFkIGFuZCBjcmVhdGUgdGhlIHNvdXJjZSBkaXN0cmlidXRpb24gdGFyYmFsbCwKKyAgICAgICAgIyBvciB6aXBmaWxlLCBvciB3aGF0ZXZlci4KKyAgICAgICAgc2VsZi5tYWtlX2Rpc3RyaWJ1dGlvbigpCisKKyAgICBkZWYgZ2V0X2ZpbGVfbGlzdChzZWxmKToKKyAgICAgICAgIiIiRmlndXJlIG91dCB0aGUgbGlzdCBvZiBmaWxlcyB0byBpbmNsdWRlIGluIHRoZSBzb3VyY2UKKyAgICAgICAgZGlzdHJpYnV0aW9uLCBhbmQgcHV0IGl0IGluICdzZWxmLmZpbGVsaXN0Jy4gIFRoaXMgbWlnaHQgaW52b2x2ZQorICAgICAgICByZWFkaW5nIHRoZSBtYW5pZmVzdCB0ZW1wbGF0ZSAoYW5kIHdyaXRpbmcgdGhlIG1hbmlmZXN0KSwgb3IganVzdAorICAgICAgICByZWFkaW5nIHRoZSBtYW5pZmVzdCwgb3IganVzdCB1c2luZyB0aGUgZGVmYXVsdCBmaWxlIHNldCAtLSBpdCBhbGwKKyAgICAgICAgZGVwZW5kcyBvbiB0aGUgdXNlcidzIG9wdGlvbnMuCisgICAgICAgICIiIgorICAgICAgICB0ZW1wbGF0ZV9leGlzdHMgPSBsZW4oc2VsZi5kaXN0cmlidXRpb24uZXh0cmFfZmlsZXMpID4gMAorICAgICAgICBpZiBub3QgdGVtcGxhdGVfZXhpc3RzOgorICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoJyVzOiB1c2luZyBkZWZhdWx0IGZpbGUgbGlzdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmdldF9jb21tYW5kX25hbWUoKSkKKyAgICAgICAgc2VsZi5maWxlbGlzdC5maW5kYWxsKCkKKworICAgICAgICBpZiBzZWxmLnVzZV9kZWZhdWx0czoKKyAgICAgICAgICAgIHNlbGYuYWRkX2RlZmF1bHRzKCkKKyAgICAgICAgaWYgdGVtcGxhdGVfZXhpc3RzOgorICAgICAgICAgICAgdGVtcGxhdGUgPSAnXG4nLmpvaW4oc2VsZi5kaXN0cmlidXRpb24uZXh0cmFfZmlsZXMpCisgICAgICAgICAgICBzZWxmLmZpbGVsaXN0LnJlYWRfdGVtcGxhdGUoU3RyaW5nSU8odGVtcGxhdGUpKQorCisgICAgICAgICMgY2FsbCBtYW5pZmVzdCBidWlsZGVycywgaWYgYW55LgorICAgICAgICBmb3IgYnVpbGRlciBpbiBzZWxmLm1hbmlmZXN0X2J1aWxkZXJzOgorICAgICAgICAgICAgYnVpbGRlcihzZWxmLmRpc3RyaWJ1dGlvbiwgc2VsZi5maWxlbGlzdCkKKworICAgICAgICBpZiBzZWxmLnBydW5lOgorICAgICAgICAgICAgc2VsZi5wcnVuZV9maWxlX2xpc3QoKQorCisgICAgICAgIHNlbGYuZmlsZWxpc3Qud3JpdGUoc2VsZi5tYW5pZmVzdCkKKworICAgIGRlZiBhZGRfZGVmYXVsdHMoc2VsZik6CisgICAgICAgICIiIkFkZCBhbGwgZGVmYXVsdCBmaWxlcyB0byBzZWxmLmZpbGVsaXN0LgorCisgICAgICAgIEluIGFkZGl0aW9uIHRvIHRoZSBzZXR1cC5jZmcgZmlsZSwgdGhpcyB3aWxsIGluY2x1ZGUgYWxsIGZpbGVzIHJldHVybmVkCisgICAgICAgIGJ5IHRoZSBnZXRfc291cmNlX2ZpbGVzIG9mIGV2ZXJ5IHJlZ2lzdGVyZWQgY29tbWFuZC4gIFRoaXMgd2lsbCBmaW5kCisgICAgICAgIFB5dGhvbiBtb2R1bGVzIGFuZCBwYWNrYWdlcywgZGF0YSBmaWxlcyBsaXN0ZWQgaW4gcGFja2FnZV9kYXRhXywKKyAgICAgICAgZGF0YV9maWxlcyBhbmQgZXh0cmFfZmlsZXMsIHNjcmlwdHMsIEMgc291cmNlcyBvZiBleHRlbnNpb24gbW9kdWxlcyBvcgorICAgICAgICBDIGxpYnJhcmllcyAoaGVhZGVycyBhcmUgbWlzc2luZykuCisgICAgICAgICIiIgorICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cygnc2V0dXAuY2ZnJyk6CisgICAgICAgICAgICBzZWxmLmZpbGVsaXN0LmFwcGVuZCgnc2V0dXAuY2ZnJykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCIlczogc3RhbmRhcmQgJ3NldHVwLmNmZycgZmlsZSBub3QgZm91bmQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5nZXRfY29tbWFuZF9uYW1lKCkpCisKKyAgICAgICAgZm9yIGNtZF9uYW1lIGluIGdldF9jb21tYW5kX25hbWVzKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgY21kX29iaiA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKGNtZF9uYW1lKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ09wdGlvbkVycm9yOgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5maWxlbGlzdC5leHRlbmQoY21kX29iai5nZXRfc291cmNlX2ZpbGVzKCkpCisKKyAgICBkZWYgcHJ1bmVfZmlsZV9saXN0KHNlbGYpOgorICAgICAgICAiIiJQcnVuZSBvZmYgYnJhbmNoZXMgdGhhdCBtaWdodCBzbGlwIGludG8gdGhlIGZpbGUgbGlzdCBhcyBjcmVhdGVkCisgICAgICAgIGJ5ICdyZWFkX3RlbXBsYXRlKCknLCBidXQgcmVhbGx5IGRvbid0IGJlbG9uZyB0aGVyZToKKyAgICAgICAgICAqIHRoZSBidWlsZCB0cmVlICh0eXBpY2FsbHkgImJ1aWxkIikKKyAgICAgICAgICAqIHRoZSByZWxlYXNlIHRyZWUgaXRzZWxmIChvbmx5IGFuIGlzc3VlIGlmIHdlIHJhbiAic2Rpc3QiCisgICAgICAgICAgICBwcmV2aW91c2x5IHdpdGggLS1rZWVwLXRlbXAsIG9yIGl0IGFib3J0ZWQpCisgICAgICAgICAgKiBhbnkgUkNTLCBDVlMsIC5zdm4sIC5oZywgLmdpdCwgLmJ6ciwgX2RhcmNzIGRpcmVjdG9yaWVzCisgICAgICAgICIiIgorICAgICAgICBidWlsZCA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdidWlsZCcpCisgICAgICAgIGJhc2VfZGlyID0gc2VsZi5kaXN0cmlidXRpb24uZ2V0X2Z1bGxuYW1lKCkKKworICAgICAgICBzZWxmLmZpbGVsaXN0LmV4Y2x1ZGVfcGF0dGVybihOb25lLCBwcmVmaXg9YnVpbGQuYnVpbGRfYmFzZSkKKyAgICAgICAgc2VsZi5maWxlbGlzdC5leGNsdWRlX3BhdHRlcm4oTm9uZSwgcHJlZml4PWJhc2VfZGlyKQorCisgICAgICAgICMgcHJ1bmluZyBvdXQgdmNzIGRpcmVjdG9yaWVzCisgICAgICAgICMgYm90aCBzZXBhcmF0b3JzIGFyZSB1c2VkIHVuZGVyIHdpbjMyCisgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInOgorICAgICAgICAgICAgc2VwcyA9IHInL3xcXCcKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlcHMgPSAnLycKKworICAgICAgICB2Y3NfZGlycyA9IFsnUkNTJywgJ0NWUycsIHInXC5zdm4nLCByJ1wuaGcnLCByJ1wuZ2l0JywgcidcLmJ6cicsCisgICAgICAgICAgICAgICAgICAgICdfZGFyY3MnXQorICAgICAgICB2Y3NfcHRybiA9IHInKF58JXMpKCVzKSglcykuKicgJSAoc2VwcywgJ3wnLmpvaW4odmNzX2RpcnMpLCBzZXBzKQorICAgICAgICBzZWxmLmZpbGVsaXN0LmV4Y2x1ZGVfcGF0dGVybih2Y3NfcHRybiwgaXNfcmVnZXg9VHJ1ZSkKKworICAgIGRlZiBtYWtlX3JlbGVhc2VfdHJlZShzZWxmLCBiYXNlX2RpciwgZmlsZXMpOgorICAgICAgICAiIiJDcmVhdGUgdGhlIGRpcmVjdG9yeSB0cmVlIHRoYXQgd2lsbCBiZWNvbWUgdGhlIHNvdXJjZQorICAgICAgICBkaXN0cmlidXRpb24gYXJjaGl2ZS4gIEFsbCBkaXJlY3RvcmllcyBpbXBsaWVkIGJ5IHRoZSBmaWxlbmFtZXMgaW4KKyAgICAgICAgJ2ZpbGVzJyBhcmUgY3JlYXRlZCB1bmRlciAnYmFzZV9kaXInLCBhbmQgdGhlbiB3ZSBoYXJkIGxpbmsgb3IgY29weQorICAgICAgICAoaWYgaGFyZCBsaW5raW5nIGlzIHVuYXZhaWxhYmxlKSB0aG9zZSBmaWxlcyBpbnRvIHBsYWNlLgorICAgICAgICBFc3NlbnRpYWxseSwgdGhpcyBkdXBsaWNhdGVzIHRoZSBkZXZlbG9wZXIncyBzb3VyY2UgdHJlZSwgYnV0IGluIGEKKyAgICAgICAgZGlyZWN0b3J5IG5hbWVkIGFmdGVyIHRoZSBkaXN0cmlidXRpb24sIGNvbnRhaW5pbmcgb25seSB0aGUgZmlsZXMKKyAgICAgICAgdG8gYmUgZGlzdHJpYnV0ZWQuCisgICAgICAgICIiIgorICAgICAgICAjIENyZWF0ZSBhbGwgdGhlIGRpcmVjdG9yaWVzIHVuZGVyICdiYXNlX2RpcicgbmVjZXNzYXJ5IHRvCisgICAgICAgICMgcHV0ICdmaWxlcycgdGhlcmU7IHRoZSAnbWtwYXRoKCknIGlzIGp1c3Qgc28gd2UgZG9uJ3QgZGllCisgICAgICAgICMgaWYgdGhlIG1hbmlmZXN0IGhhcHBlbnMgdG8gYmUgZW1wdHkuCisgICAgICAgIHNlbGYubWtwYXRoKGJhc2VfZGlyKQorICAgICAgICBzZWxmLmNyZWF0ZV90cmVlKGJhc2VfZGlyLCBmaWxlcywgZHJ5X3J1bj1zZWxmLmRyeV9ydW4pCisKKyAgICAgICAgIyBBbmQgd2FsayBvdmVyIHRoZSBsaXN0IG9mIGZpbGVzLCBlaXRoZXIgbWFraW5nIGEgaGFyZCBsaW5rIChpZgorICAgICAgICAjIG9zLmxpbmsgZXhpc3RzKSB0byBlYWNoIG9uZSB0aGF0IGRvZXNuJ3QgYWxyZWFkeSBleGlzdCBpbiBpdHMKKyAgICAgICAgIyBjb3JyZXNwb25kaW5nIGxvY2F0aW9uIHVuZGVyICdiYXNlX2RpcicsIG9yIGNvcHlpbmcgZWFjaCBmaWxlCisgICAgICAgICMgdGhhdCdzIG91dC1vZi1kYXRlIGluICdiYXNlX2RpcicuICAoVXN1YWxseSwgYWxsIGZpbGVzIHdpbGwgYmUKKyAgICAgICAgIyBvdXQtb2YtZGF0ZSwgYmVjYXVzZSBieSBkZWZhdWx0IHdlIGJsb3cgYXdheSAnYmFzZV9kaXInIHdoZW4KKyAgICAgICAgIyB3ZSdyZSBkb25lIG1ha2luZyB0aGUgZGlzdHJpYnV0aW9uIGFyY2hpdmVzLikKKworICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGluaycpOiAgICAgICAgIyBjYW4gbWFrZSBoYXJkIGxpbmtzIG9uIHRoaXMgc3lzdGVtCisgICAgICAgICAgICBsaW5rID0gJ2hhcmQnCisgICAgICAgICAgICBtc2cgPSAibWFraW5nIGhhcmQgbGlua3MgaW4gJXMuLi4iICUgYmFzZV9kaXIKKyAgICAgICAgZWxzZTogICAgICAgICAgICAgICAgICAgICAgICAgICAjIG5vcGUsIGhhdmUgdG8gY29weQorICAgICAgICAgICAgbGluayA9IE5vbmUKKyAgICAgICAgICAgIG1zZyA9ICJjb3B5aW5nIGZpbGVzIHRvICVzLi4uIiAlIGJhc2VfZGlyCisKKyAgICAgICAgaWYgbm90IGZpbGVzOgorICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoIm5vIGZpbGVzIHRvIGRpc3RyaWJ1dGUgLS0gZW1wdHkgbWFuaWZlc3Q/IikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKG1zZykKKworICAgICAgICBmb3IgZmlsZSBpbiBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YS5yZXF1aXJlc19maWxlczoKKyAgICAgICAgICAgIGlmIGZpbGUgbm90IGluIGZpbGVzOgorICAgICAgICAgICAgICAgIG1zZyA9ICInJXMnIG11c3QgYmUgaW5jbHVkZWQgZXhwbGljaXRseSBpbiAnZXh0cmFfZmlsZXMnIiBcCisgICAgICAgICAgICAgICAgICAgICAgICAlIGZpbGUKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdGaWxlRXJyb3IobXNnKQorCisgICAgICAgIGZvciBmaWxlIGluIGZpbGVzOgorICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguaXNmaWxlKGZpbGUpOgorICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCInJXMnIG5vdCBhIHJlZ3VsYXIgZmlsZSAtLSBza2lwcGluZyIsIGZpbGUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGRlc3QgPSBvcy5wYXRoLmpvaW4oYmFzZV9kaXIsIGZpbGUpCisgICAgICAgICAgICAgICAgc2VsZi5jb3B5X2ZpbGUoZmlsZSwgZGVzdCwgbGluaz1saW5rKQorCisgICAgICAgIHNlbGYuZGlzdHJpYnV0aW9uLm1ldGFkYXRhLndyaXRlKG9zLnBhdGguam9pbihiYXNlX2RpciwgJ1BLRy1JTkZPJykpCisKKyAgICBkZWYgbWFrZV9kaXN0cmlidXRpb24oc2VsZik6CisgICAgICAgICIiIkNyZWF0ZSB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbihzKS4gIEZpcnN0LCB3ZSBjcmVhdGUgdGhlIHJlbGVhc2UKKyAgICAgICAgdHJlZSB3aXRoICdtYWtlX3JlbGVhc2VfdHJlZSgpJzsgdGhlbiwgd2UgY3JlYXRlIGFsbCByZXF1aXJlZAorICAgICAgICBhcmNoaXZlIGZpbGVzIChhY2NvcmRpbmcgdG8gJ3NlbGYuZm9ybWF0cycpIGZyb20gdGhlIHJlbGVhc2UgdHJlZS4KKyAgICAgICAgRmluYWxseSwgd2UgY2xlYW4gdXAgYnkgYmxvd2luZyBhd2F5IHRoZSByZWxlYXNlIHRyZWUgKHVubGVzcworICAgICAgICAnc2VsZi5rZWVwX3RlbXAnIGlzIHRydWUpLiAgVGhlIGxpc3Qgb2YgYXJjaGl2ZSBmaWxlcyBjcmVhdGVkIGlzCisgICAgICAgIHN0b3JlZCBzbyBpdCBjYW4gYmUgcmV0cmlldmVkIGxhdGVyIGJ5ICdnZXRfYXJjaGl2ZV9maWxlcygpJy4KKyAgICAgICAgIiIiCisgICAgICAgICMgRG9uJ3Qgd2FybiBhYm91dCBtaXNzaW5nIG1ldGFkYXRhIGhlcmUgLS0gc2hvdWxkIGJlIChhbmQgaXMhKQorICAgICAgICAjIGRvbmUgZWxzZXdoZXJlLgorICAgICAgICBiYXNlX2RpciA9IHNlbGYuZGlzdHJpYnV0aW9uLmdldF9mdWxsbmFtZSgpCisgICAgICAgIGJhc2VfbmFtZSA9IG9zLnBhdGguam9pbihzZWxmLmRpc3RfZGlyLCBiYXNlX2RpcikKKworICAgICAgICBzZWxmLm1ha2VfcmVsZWFzZV90cmVlKGJhc2VfZGlyLCBzZWxmLmZpbGVsaXN0LmZpbGVzKQorICAgICAgICBhcmNoaXZlX2ZpbGVzID0gW10gICAgICAgICAgICAgICMgcmVtZW1iZXIgbmFtZXMgb2YgZmlsZXMgd2UgY3JlYXRlCisgICAgICAgICMgdGFyIGFyY2hpdmUgbXVzdCBiZSBjcmVhdGVkIGxhc3QgdG8gYXZvaWQgb3ZlcndyaXRlIGFuZCByZW1vdmUKKyAgICAgICAgaWYgJ3RhcicgaW4gc2VsZi5mb3JtYXRzOgorICAgICAgICAgICAgc2VsZi5mb3JtYXRzLmFwcGVuZChzZWxmLmZvcm1hdHMucG9wKHNlbGYuZm9ybWF0cy5pbmRleCgndGFyJykpKQorCisgICAgICAgIGZvciBmbXQgaW4gc2VsZi5mb3JtYXRzOgorICAgICAgICAgICAgZmlsZSA9IHNlbGYubWFrZV9hcmNoaXZlKGJhc2VfbmFtZSwgZm10LCBiYXNlX2Rpcj1iYXNlX2RpciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvd25lcj1zZWxmLm93bmVyLCBncm91cD1zZWxmLmdyb3VwKQorICAgICAgICAgICAgYXJjaGl2ZV9maWxlcy5hcHBlbmQoZmlsZSkKKyAgICAgICAgICAgIHNlbGYuZGlzdHJpYnV0aW9uLmRpc3RfZmlsZXMuYXBwZW5kKCgnc2Rpc3QnLCAnJywgZmlsZSkpCisKKyAgICAgICAgc2VsZi5hcmNoaXZlX2ZpbGVzID0gYXJjaGl2ZV9maWxlcworCisgICAgICAgIGlmIG5vdCBzZWxmLmtlZXBfdGVtcDoKKyAgICAgICAgICAgIGlmIHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygncmVtb3ZpbmcgJXMnLCBiYXNlX2RpcikKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcm10cmVlKGJhc2VfZGlyKQorCisgICAgZGVmIGdldF9hcmNoaXZlX2ZpbGVzKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGxpc3Qgb2YgYXJjaGl2ZSBmaWxlcyBjcmVhdGVkIHdoZW4gdGhlIGNvbW1hbmQKKyAgICAgICAgd2FzIHJ1biwgb3IgTm9uZSBpZiB0aGUgY29tbWFuZCBoYXNuJ3QgcnVuIHlldC4KKyAgICAgICAgIiIiCisgICAgICAgIHJldHVybiBzZWxmLmFyY2hpdmVfZmlsZXMKKworICAgIGRlZiBjcmVhdGVfdHJlZShzZWxmLCBiYXNlX2RpciwgZmlsZXMsIG1vZGU9MG83NzcsIGRyeV9ydW49RmFsc2UpOgorICAgICAgICBuZWVkX2RpciA9IHNldCgpCisgICAgICAgIGZvciBmaWxlIGluIGZpbGVzOgorICAgICAgICAgICAgbmVlZF9kaXIuYWRkKG9zLnBhdGguam9pbihiYXNlX2Rpciwgb3MucGF0aC5kaXJuYW1lKGZpbGUpKSkKKworICAgICAgICAjIE5vdyBjcmVhdGUgdGhlbQorICAgICAgICBmb3IgZGlyIGluIHNvcnRlZChuZWVkX2Rpcik6CisgICAgICAgICAgICBzZWxmLm1rcGF0aChkaXIsIG1vZGUsIGRyeV9ydW49ZHJ5X3J1bikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tbWFuZC90ZXN0LnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3Rlc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGQ1MzQ4ZgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC90ZXN0LnB5CkBAIC0wLDAgKzEsODAgQEAKKyIiIlJ1biB0aGUgcHJvamVjdCdzIHRlc3Qgc3VpdGUuIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCB1bml0dGVzdAorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0IGdldF9kaXN0cmlidXRpb24KK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nT3B0aW9uRXJyb3IKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHJlc29sdmVfbmFtZQorCisKK2NsYXNzIHRlc3QoQ29tbWFuZCk6CisKKyAgICBkZXNjcmlwdGlvbiA9ICJydW4gdGhlIHByb2plY3QncyB0ZXN0IHN1aXRlIgorCisgICAgdXNlcl9vcHRpb25zID0gWworICAgICAgICAoJ3N1aXRlPScsICdzJywKKyAgICAgICAgICJ0ZXN0IHN1aXRlIHRvIHJ1biAoZm9yIGV4YW1wbGU6ICdzb21lX21vZHVsZS50ZXN0X3N1aXRlJykiKSwKKyAgICAgICAgKCdydW5uZXI9JywgTm9uZSwKKyAgICAgICAgICJ0ZXN0IHJ1bm5lciB0byBiZSBjYWxsZWQuIiksCisgICAgICAgICgndGVzdHMtcmVxdWlyZT0nLCBOb25lLAorICAgICAgICAgImxpc3Qgb2YgZGlzdHJpYnV0aW9ucyByZXF1aXJlZCB0byBydW4gdGhlIHRlc3Qgc3VpdGUuIiksCisgICAgXQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zdWl0ZSA9IE5vbmUKKyAgICAgICAgc2VsZi5ydW5uZXIgPSBOb25lCisgICAgICAgIHNlbGYudGVzdHNfcmVxdWlyZSA9IFtdCisKKyAgICBkZWYgZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5idWlsZF9saWIgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgiYnVpbGQiKS5idWlsZF9saWIKKyAgICAgICAgZm9yIHJlcXVpcmVtZW50IGluIHNlbGYudGVzdHNfcmVxdWlyZToKKyAgICAgICAgICAgIGlmIGdldF9kaXN0cmlidXRpb24ocmVxdWlyZW1lbnQpIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoInRlc3QgZGVwZW5kZW5jeSAlcyBpcyBub3QgaW5zdGFsbGVkLCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRlc3RzIG1heSBmYWlsIiwgcmVxdWlyZW1lbnQpCisgICAgICAgIGlmIChub3Qgc2VsZi5zdWl0ZSBhbmQgbm90IHNlbGYucnVubmVyIGFuZAorICAgICAgICAgICAgc2VsZi5nZXRfdXRfd2l0aF9kaXNjb3ZlcnkoKSBpcyBOb25lKToKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgICAgICJubyB0ZXN0IGRpc2NvdmVyeSBhdmFpbGFibGUsIHBsZWFzZSBnaXZlIGEgJ3N1aXRlJyBvciAiCisgICAgICAgICAgICAgICAgIidydW5uZXInIG9wdGlvbiBvciBpbnN0YWxsIHVuaXR0ZXN0MiIpCisKKyAgICBkZWYgZ2V0X3V0X3dpdGhfZGlzY292ZXJ5KHNlbGYpOgorICAgICAgICBpZiBoYXNhdHRyKHVuaXR0ZXN0LlRlc3RMb2FkZXIsICJkaXNjb3ZlciIpOgorICAgICAgICAgICAgcmV0dXJuIHVuaXR0ZXN0CisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgaW1wb3J0IHVuaXR0ZXN0MgorICAgICAgICAgICAgICAgIHJldHVybiB1bml0dGVzdDIKKyAgICAgICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgcHJldl9zeXNwYXRoID0gc3lzLnBhdGhbOl0KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBidWlsZCByZWxlYXNlCisgICAgICAgICAgICBidWlsZCA9IHNlbGYucmVpbml0aWFsaXplX2NvbW1hbmQoJ2J1aWxkJykKKyAgICAgICAgICAgIHNlbGYucnVuX2NvbW1hbmQoJ2J1aWxkJykKKyAgICAgICAgICAgIHN5cy5wYXRoLmluc2VydCgwLCBidWlsZC5idWlsZF9saWIpCisKKyAgICAgICAgICAgICMgWFhYIG1heWJlIHdlIGNvdWxkIHBhc3MgdGhlIHZlcmJvc2UgYXJndW1lbnQgb2YgcHlzZXR1cCBoZXJlCisgICAgICAgICAgICBsb2dnZXIgPSBsb2dnaW5nLmdldExvZ2dlcigncGFja2FnaW5nJykKKyAgICAgICAgICAgIHZlcmJvc2UgPSBsb2dnZXIuZ2V0RWZmZWN0aXZlTGV2ZWwoKSA+PSBsb2dnaW5nLkRFQlVHCisgICAgICAgICAgICB2ZXJib3NpdHkgPSB2ZXJib3NlICsgMQorCisgICAgICAgICAgICAjIHJ1biB0aGUgdGVzdHMKKyAgICAgICAgICAgIGlmIHNlbGYucnVubmVyOgorICAgICAgICAgICAgICAgIHJlc29sdmVfbmFtZShzZWxmLnJ1bm5lcikoKQorICAgICAgICAgICAgZWxpZiBzZWxmLnN1aXRlOgorICAgICAgICAgICAgICAgIHJ1bm5lciA9IHVuaXR0ZXN0LlRleHRUZXN0UnVubmVyKHZlcmJvc2l0eT12ZXJib3NpdHkpCisgICAgICAgICAgICAgICAgcnVubmVyLnJ1bihyZXNvbHZlX25hbWUoc2VsZi5zdWl0ZSkoKSkKKyAgICAgICAgICAgIGVsaWYgc2VsZi5nZXRfdXRfd2l0aF9kaXNjb3ZlcnkoKToKKyAgICAgICAgICAgICAgICB1dCA9IHNlbGYuZ2V0X3V0X3dpdGhfZGlzY292ZXJ5KCkKKyAgICAgICAgICAgICAgICB0ZXN0X3N1aXRlID0gdXQuVGVzdExvYWRlcigpLmRpc2NvdmVyKG9zLmN1cmRpcikKKyAgICAgICAgICAgICAgICBydW5uZXIgPSB1dC5UZXh0VGVzdFJ1bm5lcih2ZXJib3NpdHk9dmVyYm9zaXR5KQorICAgICAgICAgICAgICAgIHJ1bm5lci5ydW4odGVzdF9zdWl0ZSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHN5cy5wYXRoWzpdID0gcHJldl9zeXNwYXRoCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvdXBsb2FkLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3VwbG9hZC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNTZkMmM2Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3VwbG9hZC5weQpAQCAtMCwwICsxLDE2OCBAQAorIiIiVXBsb2FkIGEgZGlzdHJpYnV0aW9uIHRvIGEgcHJvamVjdCBpbmRleC4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgc29ja2V0CitpbXBvcnQgbG9nZ2luZworaW1wb3J0IHBsYXRmb3JtCitpbXBvcnQgdXJsbGliLnBhcnNlCitmcm9tIGJhc2U2NCBpbXBvcnQgc3RhbmRhcmRfYjY0ZW5jb2RlCitmcm9tIGhhc2hsaWIgaW1wb3J0IG1kNQorZnJvbSB1cmxsaWIuZXJyb3IgaW1wb3J0IEhUVFBFcnJvcgorZnJvbSB1cmxsaWIucmVxdWVzdCBpbXBvcnQgdXJsb3BlbiwgUmVxdWVzdAorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCAoc3Bhd24sIHJlYWRfcHlwaXJjLCBERUZBVUxUX1JFUE9TSVRPUlksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgREVGQVVMVF9SRUFMTSwgZW5jb2RlX211bHRpcGFydCkKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY21kIGltcG9ydCBDb21tYW5kCisKKworY2xhc3MgdXBsb2FkKENvbW1hbmQpOgorCisgICAgZGVzY3JpcHRpb24gPSAidXBsb2FkIGRpc3RyaWJ1dGlvbiB0byBQeVBJIgorCisgICAgdXNlcl9vcHRpb25zID0gWworICAgICAgICAoJ3JlcG9zaXRvcnk9JywgJ3InLAorICAgICAgICAgInJlcG9zaXRvcnkgVVJMIFtkZWZhdWx0OiAlc10iICUgREVGQVVMVF9SRVBPU0lUT1JZKSwKKyAgICAgICAgKCdzaG93LXJlc3BvbnNlJywgTm9uZSwKKyAgICAgICAgICJkaXNwbGF5IGZ1bGwgcmVzcG9uc2UgdGV4dCBmcm9tIHNlcnZlciIpLAorICAgICAgICAoJ3NpZ24nLCAncycsCisgICAgICAgICAic2lnbiBmaWxlcyB0byB1cGxvYWQgdXNpbmcgZ3BnIiksCisgICAgICAgICgnaWRlbnRpdHk9JywgJ2knLAorICAgICAgICAgIkdQRyBpZGVudGl0eSB1c2VkIHRvIHNpZ24gZmlsZXMiKSwKKyAgICAgICAgKCd1cGxvYWQtZG9jcycsIE5vbmUsCisgICAgICAgICAidXBsb2FkIGRvY3VtZW50YXRpb24gdG9vIiksCisgICAgICAgIF0KKworICAgIGJvb2xlYW5fb3B0aW9ucyA9IFsnc2hvdy1yZXNwb25zZScsICdzaWduJ10KKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHNlbGYucmVwb3NpdG9yeSA9IE5vbmUKKyAgICAgICAgc2VsZi5yZWFsbSA9IE5vbmUKKyAgICAgICAgc2VsZi5zaG93X3Jlc3BvbnNlID0gRmFsc2UKKyAgICAgICAgc2VsZi51c2VybmFtZSA9ICcnCisgICAgICAgIHNlbGYucGFzc3dvcmQgPSAnJworICAgICAgICBzZWxmLnNob3dfcmVzcG9uc2UgPSBGYWxzZQorICAgICAgICBzZWxmLnNpZ24gPSBGYWxzZQorICAgICAgICBzZWxmLmlkZW50aXR5ID0gTm9uZQorICAgICAgICBzZWxmLnVwbG9hZF9kb2NzID0gRmFsc2UKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBpZiBzZWxmLnJlcG9zaXRvcnkgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYucmVwb3NpdG9yeSA9IERFRkFVTFRfUkVQT1NJVE9SWQorICAgICAgICBpZiBzZWxmLnJlYWxtIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLnJlYWxtID0gREVGQVVMVF9SRUFMTQorICAgICAgICBpZiBzZWxmLmlkZW50aXR5IGFuZCBub3Qgc2VsZi5zaWduOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgIk11c3QgdXNlIC0tc2lnbiBmb3IgLS1pZGVudGl0eSB0byBoYXZlIG1lYW5pbmciKQorICAgICAgICBjb25maWcgPSByZWFkX3B5cGlyYyhzZWxmLnJlcG9zaXRvcnksIHNlbGYucmVhbG0pCisgICAgICAgIGlmIGNvbmZpZyAhPSB7fToKKyAgICAgICAgICAgIHNlbGYudXNlcm5hbWUgPSBjb25maWdbJ3VzZXJuYW1lJ10KKyAgICAgICAgICAgIHNlbGYucGFzc3dvcmQgPSBjb25maWdbJ3Bhc3N3b3JkJ10KKyAgICAgICAgICAgIHNlbGYucmVwb3NpdG9yeSA9IGNvbmZpZ1sncmVwb3NpdG9yeSddCisgICAgICAgICAgICBzZWxmLnJlYWxtID0gY29uZmlnWydyZWFsbSddCisKKyAgICAgICAgIyBnZXR0aW5nIHRoZSBwYXNzd29yZCBmcm9tIHRoZSBkaXN0cmlidXRpb24KKyAgICAgICAgIyBpZiBwcmV2aW91c2x5IHNldCBieSB0aGUgcmVnaXN0ZXIgY29tbWFuZAorICAgICAgICBpZiBub3Qgc2VsZi5wYXNzd29yZCBhbmQgc2VsZi5kaXN0cmlidXRpb24ucGFzc3dvcmQ6CisgICAgICAgICAgICBzZWxmLnBhc3N3b3JkID0gc2VsZi5kaXN0cmlidXRpb24ucGFzc3dvcmQKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIGlmIG5vdCBzZWxmLmRpc3RyaWJ1dGlvbi5kaXN0X2ZpbGVzOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgIk5vIGRpc3QgZmlsZSBjcmVhdGVkIGluIGVhcmxpZXIgY29tbWFuZCIpCisgICAgICAgIGZvciBjb21tYW5kLCBweXZlcnNpb24sIGZpbGVuYW1lIGluIHNlbGYuZGlzdHJpYnV0aW9uLmRpc3RfZmlsZXM6CisgICAgICAgICAgICBzZWxmLnVwbG9hZF9maWxlKGNvbW1hbmQsIHB5dmVyc2lvbiwgZmlsZW5hbWUpCisgICAgICAgIGlmIHNlbGYudXBsb2FkX2RvY3M6CisgICAgICAgICAgICB1cGxvYWRfZG9jcyA9IHNlbGYuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCJ1cGxvYWRfZG9jcyIpCisgICAgICAgICAgICB1cGxvYWRfZG9jcy5yZXBvc2l0b3J5ID0gc2VsZi5yZXBvc2l0b3J5CisgICAgICAgICAgICB1cGxvYWRfZG9jcy51c2VybmFtZSA9IHNlbGYudXNlcm5hbWUKKyAgICAgICAgICAgIHVwbG9hZF9kb2NzLnBhc3N3b3JkID0gc2VsZi5wYXNzd29yZAorICAgICAgICAgICAgdXBsb2FkX2RvY3MucnVuKCkKKworICAgICMgWFhYIHRvIGJlIHJlZmFjdG9yZWQgd2l0aCByZWdpc3Rlci5wb3N0X3RvX3NlcnZlcgorICAgIGRlZiB1cGxvYWRfZmlsZShzZWxmLCBjb21tYW5kLCBweXZlcnNpb24sIGZpbGVuYW1lKToKKyAgICAgICAgIyBNYWtlcyBzdXJlIHRoZSByZXBvc2l0b3J5IFVSTCBpcyBjb21wbGlhbnQKKyAgICAgICAgc2NoZW1lLCBuZXRsb2MsIHVybCwgcGFyYW1zLCBxdWVyeSwgZnJhZ21lbnRzID0gXAorICAgICAgICAgICAgdXJsbGliLnBhcnNlLnVybHBhcnNlKHNlbGYucmVwb3NpdG9yeSkKKyAgICAgICAgaWYgcGFyYW1zIG9yIHF1ZXJ5IG9yIGZyYWdtZW50czoKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCJJbmNvbXBhdGlibGUgdXJsICVzIiAlIHNlbGYucmVwb3NpdG9yeSkKKworICAgICAgICBpZiBzY2hlbWUgbm90IGluICgnaHR0cCcsICdodHRwcycpOgorICAgICAgICAgICAgcmFpc2UgQXNzZXJ0aW9uRXJyb3IoInVuc3VwcG9ydGVkIHNjaGVtZSAiICsgc2NoZW1lKQorCisgICAgICAgICMgU2lnbiBpZiByZXF1ZXN0ZWQKKyAgICAgICAgaWYgc2VsZi5zaWduOgorICAgICAgICAgICAgZ3BnX2FyZ3MgPSBbImdwZyIsICItLWRldGFjaC1zaWduIiwgIi1hIiwgZmlsZW5hbWVdCisgICAgICAgICAgICBpZiBzZWxmLmlkZW50aXR5OgorICAgICAgICAgICAgICAgIGdwZ19hcmdzWzI6Ml0gPSBbIi0tbG9jYWwtdXNlciIsIHNlbGYuaWRlbnRpdHldCisgICAgICAgICAgICBzcGF3bihncGdfYXJncywKKyAgICAgICAgICAgICAgICAgIGRyeV9ydW49c2VsZi5kcnlfcnVuKQorCisgICAgICAgICMgRmlsbCBpbiB0aGUgZGF0YSAtIHNlbmQgYWxsIHRoZSBtZXRhZGF0YSBpbiBjYXNlIHdlIG5lZWQgdG8KKyAgICAgICAgIyByZWdpc3RlciBhIG5ldyByZWxlYXNlCisgICAgICAgIHdpdGggb3BlbihmaWxlbmFtZSwgJ3JiJykgYXMgZjoKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmLnJlYWQoKQorCisgICAgICAgIGRhdGEgPSBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YS50b2RpY3QoKQorCisgICAgICAgICMgZXh0cmEgdXBsb2FkIGluZm9zCisgICAgICAgIGRhdGFbJzphY3Rpb24nXSA9ICdmaWxlX3VwbG9hZCcKKyAgICAgICAgZGF0YVsncHJvdGNvbF92ZXJzaW9uJ10gPSAnMScKKyAgICAgICAgZGF0YVsnY29udGVudCddID0gKG9zLnBhdGguYmFzZW5hbWUoZmlsZW5hbWUpLCBjb250ZW50KQorICAgICAgICBkYXRhWydmaWxldHlwZSddID0gY29tbWFuZAorICAgICAgICBkYXRhWydweXZlcnNpb24nXSA9IHB5dmVyc2lvbgorICAgICAgICBkYXRhWydtZDVfZGlnZXN0J10gPSBtZDUoY29udGVudCkuaGV4ZGlnZXN0KCkKKworICAgICAgICBpZiBjb21tYW5kID09ICdiZGlzdF9kdW1iJzoKKyAgICAgICAgICAgIGRhdGFbJ2NvbW1lbnQnXSA9ICdidWlsdCBmb3IgJXMnICUgcGxhdGZvcm0ucGxhdGZvcm0odGVyc2U9VHJ1ZSkKKworICAgICAgICBpZiBzZWxmLnNpZ246CisgICAgICAgICAgICB3aXRoIG9wZW4oZmlsZW5hbWUgKyAnLmFzYycpIGFzIGZwOgorICAgICAgICAgICAgICAgIHNpZyA9IGZwLnJlYWQoKQorICAgICAgICAgICAgZGF0YVsnZ3BnX3NpZ25hdHVyZSddID0gWworICAgICAgICAgICAgICAgIChvcy5wYXRoLmJhc2VuYW1lKGZpbGVuYW1lKSArICIuYXNjIiwgc2lnKV0KKworICAgICAgICAjIHNldCB1cCB0aGUgYXV0aGVudGljYXRpb24KKyAgICAgICAgIyBUaGUgZXhhY3QgZW5jb2Rpbmcgb2YgdGhlIGF1dGhlbnRpY2F0aW9uIHN0cmluZyBpcyBkZWJhdGVkLgorICAgICAgICAjIEFueXdheSBQeVBJIG9ubHkgYWNjZXB0cyBhc2NpaSBmb3IgYm90aCB1c2VybmFtZSBvciBwYXNzd29yZC4KKyAgICAgICAgdXNlcl9wYXNzID0gKHNlbGYudXNlcm5hbWUgKyAiOiIgKyBzZWxmLnBhc3N3b3JkKS5lbmNvZGUoJ2FzY2lpJykKKyAgICAgICAgYXV0aCA9IGIiQmFzaWMgIiArIHN0YW5kYXJkX2I2NGVuY29kZSh1c2VyX3Bhc3MpCisKKyAgICAgICAgIyBCdWlsZCB1cCB0aGUgTUlNRSBwYXlsb2FkIGZvciB0aGUgUE9TVCBkYXRhCisgICAgICAgIGZpbGVzID0gW10KKyAgICAgICAgZm9yIGtleSBpbiAoJ2NvbnRlbnQnLCAnZ3BnX3NpZ25hdHVyZScpOgorICAgICAgICAgICAgaWYga2V5IGluIGRhdGE6CisgICAgICAgICAgICAgICAgZmlsZW5hbWVfLCB2YWx1ZSA9IGRhdGEucG9wKGtleSkKKyAgICAgICAgICAgICAgICBmaWxlcy5hcHBlbmQoKGtleSwgZmlsZW5hbWVfLCB2YWx1ZSkpCisKKyAgICAgICAgY29udGVudF90eXBlLCBib2R5ID0gZW5jb2RlX211bHRpcGFydChkYXRhLml0ZW1zKCksIGZpbGVzKQorCisgICAgICAgIGxvZ2dlci5pbmZvKCJTdWJtaXR0aW5nICVzIHRvICVzIiwgZmlsZW5hbWUsIHNlbGYucmVwb3NpdG9yeSkKKworICAgICAgICAjIGJ1aWxkIHRoZSBSZXF1ZXN0CisgICAgICAgIGhlYWRlcnMgPSB7J0NvbnRlbnQtdHlwZSc6IGNvbnRlbnRfdHlwZSwKKyAgICAgICAgICAgICAgICAgICAnQ29udGVudC1sZW5ndGgnOiBzdHIobGVuKGJvZHkpKSwKKyAgICAgICAgICAgICAgICAgICAnQXV0aG9yaXphdGlvbic6IGF1dGh9CisKKyAgICAgICAgcmVxdWVzdCA9IFJlcXVlc3Qoc2VsZi5yZXBvc2l0b3J5LCBib2R5LCBoZWFkZXJzKQorICAgICAgICAjIHNlbmQgdGhlIGRhdGEKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmVzdWx0ID0gdXJsb3BlbihyZXF1ZXN0KQorICAgICAgICAgICAgc3RhdHVzID0gcmVzdWx0LmNvZGUKKyAgICAgICAgICAgIHJlYXNvbiA9IHJlc3VsdC5tc2cKKyAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBlOgorICAgICAgICAgICAgbG9nZ2VyLmVycm9yKGUpCisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgZXhjZXB0IEhUVFBFcnJvciBhcyBlOgorICAgICAgICAgICAgc3RhdHVzID0gZS5jb2RlCisgICAgICAgICAgICByZWFzb24gPSBlLm1zZworCisgICAgICAgIGlmIHN0YXR1cyA9PSAyMDA6CisgICAgICAgICAgICBsb2dnZXIuaW5mbygnU2VydmVyIHJlc3BvbnNlICglcyk6ICVzJywgc3RhdHVzLCByZWFzb24pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuZXJyb3IoJ1VwbG9hZCBmYWlsZWQgKCVzKTogJXMnLCBzdGF0dXMsIHJlYXNvbikKKworICAgICAgICBpZiBzZWxmLnNob3dfcmVzcG9uc2UgYW5kIGxvZ2dlci5pc0VuYWJsZWRGb3IobG9nZ2luZy5JTkZPKToKKyAgICAgICAgICAgIHNlcCA9ICctJyAqIDc1CisgICAgICAgICAgICBsb2dnZXIuaW5mbygnJXNcbiVzXG4lcycsIHNlcCwgcmVzdWx0LnJlYWQoKS5kZWNvZGUoKSwgc2VwKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21tYW5kL3VwbG9hZF9kb2NzLnB5IGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3VwbG9hZF9kb2NzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMwZTM3YjUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvdXBsb2FkX2RvY3MucHkKQEAgLTAsMCArMSwxMzEgQEAKKyIiIlVwbG9hZCBIVE1MIGRvY3VtZW50YXRpb24gdG8gYSBwcm9qZWN0IGluZGV4LiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBiYXNlNjQKK2ltcG9ydCBzb2NrZXQKK2ltcG9ydCB6aXBmaWxlCitpbXBvcnQgbG9nZ2luZworaW1wb3J0IGh0dHAuY2xpZW50CitpbXBvcnQgdXJsbGliLnBhcnNlCitmcm9tIGlvIGltcG9ydCBCeXRlc0lPCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IChyZWFkX3B5cGlyYywgREVGQVVMVF9SRVBPU0lUT1JZLCBERUZBVUxUX1JFQUxNLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kZV9tdWx0aXBhcnQpCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0ZpbGVFcnJvcgorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKKworCitkZWYgemlwX2RpcihkaXJlY3RvcnkpOgorICAgICIiIkNvbXByZXNzZXMgcmVjdXJzaXZlbHkgY29udGVudHMgb2YgZGlyZWN0b3J5IGludG8gYSBCeXRlc0lPIG9iamVjdCIiIgorICAgIGRlc3RpbmF0aW9uID0gQnl0ZXNJTygpCisgICAgd2l0aCB6aXBmaWxlLlppcEZpbGUoZGVzdGluYXRpb24sICJ3IikgYXMgemlwX2ZpbGU6CisgICAgICAgIGZvciByb290LCBkaXJzLCBmaWxlcyBpbiBvcy53YWxrKGRpcmVjdG9yeSk6CisgICAgICAgICAgICBmb3IgbmFtZSBpbiBmaWxlczoKKyAgICAgICAgICAgICAgICBmdWxsID0gb3MucGF0aC5qb2luKHJvb3QsIG5hbWUpCisgICAgICAgICAgICAgICAgcmVsYXRpdmUgPSByb290W2xlbihkaXJlY3RvcnkpOl0ubHN0cmlwKG9zLnBhdGguc2VwKQorICAgICAgICAgICAgICAgIGRlc3QgPSBvcy5wYXRoLmpvaW4ocmVsYXRpdmUsIG5hbWUpCisgICAgICAgICAgICAgICAgemlwX2ZpbGUud3JpdGUoZnVsbCwgZGVzdCkKKyAgICByZXR1cm4gZGVzdGluYXRpb24KKworCitjbGFzcyB1cGxvYWRfZG9jcyhDb21tYW5kKToKKworICAgIGRlc2NyaXB0aW9uID0gInVwbG9hZCBIVE1MIGRvY3VtZW50YXRpb24gdG8gUHlQSSIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdyZXBvc2l0b3J5PScsICdyJywKKyAgICAgICAgICJyZXBvc2l0b3J5IFVSTCBbZGVmYXVsdDogJXNdIiAlIERFRkFVTFRfUkVQT1NJVE9SWSksCisgICAgICAgICgnc2hvdy1yZXNwb25zZScsIE5vbmUsCisgICAgICAgICAiZGlzcGxheSBmdWxsIHJlc3BvbnNlIHRleHQgZnJvbSBzZXJ2ZXIiKSwKKyAgICAgICAgKCd1cGxvYWQtZGlyPScsIE5vbmUsCisgICAgICAgICAiZGlyZWN0b3J5IHRvIHVwbG9hZCIpLAorICAgICAgICBdCisKKyAgICBkZWYgaW5pdGlhbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBzZWxmLnJlcG9zaXRvcnkgPSBOb25lCisgICAgICAgIHNlbGYucmVhbG0gPSBOb25lCisgICAgICAgIHNlbGYuc2hvd19yZXNwb25zZSA9IEZhbHNlCisgICAgICAgIHNlbGYudXBsb2FkX2RpciA9IE5vbmUKKyAgICAgICAgc2VsZi51c2VybmFtZSA9ICcnCisgICAgICAgIHNlbGYucGFzc3dvcmQgPSAnJworCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGlmIHNlbGYucmVwb3NpdG9yeSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5yZXBvc2l0b3J5ID0gREVGQVVMVF9SRVBPU0lUT1JZCisgICAgICAgIGlmIHNlbGYucmVhbG0gaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYucmVhbG0gPSBERUZBVUxUX1JFQUxNCisgICAgICAgIGlmIHNlbGYudXBsb2FkX2RpciBpcyBOb25lOgorICAgICAgICAgICAgYnVpbGQgPSBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYnVpbGQnKQorICAgICAgICAgICAgc2VsZi51cGxvYWRfZGlyID0gb3MucGF0aC5qb2luKGJ1aWxkLmJ1aWxkX2Jhc2UsICJkb2NzIikKKyAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmlzZGlyKHNlbGYudXBsb2FkX2Rpcik6CisgICAgICAgICAgICAgICAgc2VsZi51cGxvYWRfZGlyID0gb3MucGF0aC5qb2luKGJ1aWxkLmJ1aWxkX2Jhc2UsICJkb2MiKQorICAgICAgICBsb2dnZXIuaW5mbygnVXNpbmcgdXBsb2FkIGRpcmVjdG9yeSAlcycsIHNlbGYudXBsb2FkX2RpcikKKyAgICAgICAgc2VsZi52ZXJpZnlfdXBsb2FkX2RpcihzZWxmLnVwbG9hZF9kaXIpCisgICAgICAgIGNvbmZpZyA9IHJlYWRfcHlwaXJjKHNlbGYucmVwb3NpdG9yeSwgc2VsZi5yZWFsbSkKKyAgICAgICAgaWYgY29uZmlnICE9IHt9OgorICAgICAgICAgICAgc2VsZi51c2VybmFtZSA9IGNvbmZpZ1sndXNlcm5hbWUnXQorICAgICAgICAgICAgc2VsZi5wYXNzd29yZCA9IGNvbmZpZ1sncGFzc3dvcmQnXQorICAgICAgICAgICAgc2VsZi5yZXBvc2l0b3J5ID0gY29uZmlnWydyZXBvc2l0b3J5J10KKyAgICAgICAgICAgIHNlbGYucmVhbG0gPSBjb25maWdbJ3JlYWxtJ10KKworICAgIGRlZiB2ZXJpZnlfdXBsb2FkX2RpcihzZWxmLCB1cGxvYWRfZGlyKToKKyAgICAgICAgc2VsZi5lbnN1cmVfZGlybmFtZSgndXBsb2FkX2RpcicpCisgICAgICAgIGluZGV4X2xvY2F0aW9uID0gb3MucGF0aC5qb2luKHVwbG9hZF9kaXIsICJpbmRleC5odG1sIikKKyAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKGluZGV4X2xvY2F0aW9uKToKKyAgICAgICAgICAgIG1lc2cgPSAiTm8gJ2luZGV4Lmh0bWwgZm91bmQgaW4gZG9jcyBkaXJlY3RvcnkgKCVzKSIKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0ZpbGVFcnJvcihtZXNnICUgdXBsb2FkX2RpcikKKworICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgIG5hbWUgPSBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YVsnTmFtZSddCisgICAgICAgIHZlcnNpb24gPSBzZWxmLmRpc3RyaWJ1dGlvbi5tZXRhZGF0YVsnVmVyc2lvbiddCisgICAgICAgIHppcF9maWxlID0gemlwX2RpcihzZWxmLnVwbG9hZF9kaXIpCisKKyAgICAgICAgZmllbGRzID0gWygnOmFjdGlvbicsICdkb2NfdXBsb2FkJyksCisgICAgICAgICAgICAgICAgICAoJ25hbWUnLCBuYW1lKSwgKCd2ZXJzaW9uJywgdmVyc2lvbildCisgICAgICAgIGZpbGVzID0gWygnY29udGVudCcsIG5hbWUsIHppcF9maWxlLmdldHZhbHVlKCkpXQorICAgICAgICBjb250ZW50X3R5cGUsIGJvZHkgPSBlbmNvZGVfbXVsdGlwYXJ0KGZpZWxkcywgZmlsZXMpCisKKyAgICAgICAgY3JlZGVudGlhbHMgPSBzZWxmLnVzZXJuYW1lICsgJzonICsgc2VsZi5wYXNzd29yZAorICAgICAgICAjIEZJWE1FIHNob3VsZCB1c2UgZXhwbGljaXQgZW5jb2RpbmcKKyAgICAgICAgYXV0aCA9IGIiQmFzaWMgIiArIGJhc2U2NC5lbmNvZGVieXRlcyhjcmVkZW50aWFscy5lbmNvZGUoKSkuc3RyaXAoKQorCisgICAgICAgIGxvZ2dlci5pbmZvKCJTdWJtaXR0aW5nIGRvY3VtZW50YXRpb24gdG8gJXMiLCBzZWxmLnJlcG9zaXRvcnkpCisKKyAgICAgICAgc2NoZW1lLCBuZXRsb2MsIHVybCwgcGFyYW1zLCBxdWVyeSwgZnJhZ21lbnRzID0gdXJsbGliLnBhcnNlLnVybHBhcnNlKAorICAgICAgICAgICAgc2VsZi5yZXBvc2l0b3J5KQorICAgICAgICBpZiBzY2hlbWUgPT0gImh0dHAiOgorICAgICAgICAgICAgY29ubiA9IGh0dHAuY2xpZW50LkhUVFBDb25uZWN0aW9uKG5ldGxvYykKKyAgICAgICAgZWxpZiBzY2hlbWUgPT0gImh0dHBzIjoKKyAgICAgICAgICAgIGNvbm4gPSBodHRwLmNsaWVudC5IVFRQU0Nvbm5lY3Rpb24obmV0bG9jKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgQXNzZXJ0aW9uRXJyb3IoInVuc3VwcG9ydGVkIHNjaGVtZSAlciIgJSBzY2hlbWUpCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY29ubi5jb25uZWN0KCkKKyAgICAgICAgICAgIGNvbm4ucHV0cmVxdWVzdCgiUE9TVCIsIHVybCkKKyAgICAgICAgICAgIGNvbm4ucHV0aGVhZGVyKCdDb250ZW50LXR5cGUnLCBjb250ZW50X3R5cGUpCisgICAgICAgICAgICBjb25uLnB1dGhlYWRlcignQ29udGVudC1sZW5ndGgnLCBzdHIobGVuKGJvZHkpKSkKKyAgICAgICAgICAgIGNvbm4ucHV0aGVhZGVyKCdBdXRob3JpemF0aW9uJywgYXV0aCkKKyAgICAgICAgICAgIGNvbm4uZW5kaGVhZGVycygpCisgICAgICAgICAgICBjb25uLnNlbmQoYm9keSkKKworICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIGU6CisgICAgICAgICAgICBsb2dnZXIuZXJyb3IoZSkKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHIgPSBjb25uLmdldHJlc3BvbnNlKCkKKworICAgICAgICBpZiByLnN0YXR1cyA9PSAyMDA6CisgICAgICAgICAgICBsb2dnZXIuaW5mbygnU2VydmVyIHJlc3BvbnNlICglcyk6ICVzJywgci5zdGF0dXMsIHIucmVhc29uKQorICAgICAgICBlbGlmIHIuc3RhdHVzID09IDMwMToKKyAgICAgICAgICAgIGxvY2F0aW9uID0gci5nZXRoZWFkZXIoJ0xvY2F0aW9uJykKKyAgICAgICAgICAgIGlmIGxvY2F0aW9uIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgbG9jYXRpb24gPSAnaHR0cDovL3BhY2thZ2VzLnB5dGhvbi5vcmcvJXMvJyAlIG5hbWUKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCdVcGxvYWQgc3VjY2Vzc2Z1bC4gVmlzaXQgJXMnLCBsb2NhdGlvbikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5lcnJvcignVXBsb2FkIGZhaWxlZCAoJXMpOiAlcycsIHIuc3RhdHVzLCByLnJlYXNvbikKKworICAgICAgICBpZiBzZWxmLnNob3dfcmVzcG9uc2UgYW5kIGxvZ2dlci5pc0VuYWJsZWRGb3IobG9nZ2luZy5JTkZPKToKKyAgICAgICAgICAgIHNlcCA9ICctJyAqIDc1CisgICAgICAgICAgICBsb2dnZXIuaW5mbygnJXNcbiVzXG4lcycsIHNlcCwgci5yZWFkKCkuZGVjb2RlKCd1dGYtOCcpLCBzZXApCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC0xMC4wLWFtZDY0LmV4ZSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTEwLjAtYW1kNjQuZXhlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjExZjk4Y2QKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC0xMC4wLWFtZDY0LmV4ZQpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC0xMC4wLmV4ZSBiL0xpYi9wYWNrYWdpbmcvY29tbWFuZC93aW5pbnN0LTEwLjAuZXhlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhhYzZlMTkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC0xMC4wLmV4ZQpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC02LjAuZXhlIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtNi4wLmV4ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNTdjODU1Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtNi4wLmV4ZQpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC03LjEuZXhlIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtNy4xLmV4ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNDMzYmMxCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtNy4xLmV4ZQpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC04LjAuZXhlIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtOC4wLmV4ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NDAzYmZhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtOC4wLmV4ZQpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC05LjAtYW1kNjQuZXhlIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtOS4wLWFtZDY0LmV4ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMWQ4MDExCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtOS4wLWFtZDY0LmV4ZQpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbW1hbmQvd2luaW5zdC05LjAuZXhlIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtOS4wLmV4ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYWRiMzFkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21tYW5kL3dpbmluc3QtOS4wLmV4ZQpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbXBhdC5weSBiL0xpYi9wYWNrYWdpbmcvY29tcGF0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRjYjU4ZjUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbXBhdC5weQpAQCAtMCwwICsxLDUxIEBACisiIiJDb21wYXRpYmlsaXR5IGhlbHBlcnMuIiIiCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKKworCisjIFhYWCBIYXZpbmcgdHdvIGNsYXNzZXMgd2l0aCB0aGUgc2FtZSBuYW1lIGlzIG5vdCBhIGdvb2QgdGhpbmcuCisjIFhYWCAydG8zLXJlbGF0ZWQgY29kZSBzaG91bGQgbW92ZSBmcm9tIHV0aWwgdG8gdGhpcyBtb2R1bGUKKwordHJ5OgorICAgIGZyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IE1peGluMnRvMyBhcyBfTWl4aW4ydG8zCisgICAgX0NPTlZFUlQgPSBUcnVlCisgICAgX0tMQVNTID0gX01peGluMnRvMworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIF9DT05WRVJUID0gRmFsc2UKKyAgICBfS0xBU1MgPSBvYmplY3QKKworX19hbGxfXyA9IFsnTWl4aW4ydG8zJ10KKworCitjbGFzcyBNaXhpbjJ0bzMoX0tMQVNTKToKKyAgICAiIiIgVGhlIGJhc2UgY2xhc3Mgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIHJlZmFjdG9yaW5nLiBXaGVuIHJ1biB1bmRlcgorICAgIFB5dGhvbiAzLjAsIHRoZSBydW5fMnRvMyBtZXRob2QgcHJvdmlkZWQgYnkgTWl4aW4ydG8zIGlzIG92ZXJyaWRkZW4uCisgICAgV2hlbiBydW4gb24gUHl0aG9uIDIueCwgaXQgbWVyZWx5IGNyZWF0ZXMgYSBjbGFzcyB3aGljaCBvdmVycmlkZXMgcnVuXzJ0bzMsCisgICAgeWV0IGRvZXMgbm90aGluZyBpbiBwYXJ0aWN1bGFyIHdpdGggaXQuCisgICAgIiIiCisgICAgaWYgX0NPTlZFUlQ6CisKKyAgICAgICAgZGVmIF9ydW5fMnRvMyhzZWxmLCBmaWxlcywgZG9jdGVzdHM9W10sIGZpeGVycz1bXSk6CisgICAgICAgICAgICAiIiIgVGFrZXMgYSBsaXN0IG9mIGZpbGVzIGFuZCBkb2N0ZXN0cywgYW5kIHBlcmZvcm1zIGNvbnZlcnNpb24KKyAgICAgICAgICAgIG9uIHRob3NlLgorICAgICAgICAgICAgICAtIEZpcnN0LCB0aGUgZmlsZXMgd2hpY2ggY29udGFpbiB0aGUgY29kZShgZmlsZXNgKSBhcmUgY29udmVydGVkLgorICAgICAgICAgICAgICAtIFNlY29uZCwgdGhlIGRvY3Rlc3RzIGluIGBmaWxlc2AgYXJlIGNvbnZlcnRlZC4KKyAgICAgICAgICAgICAgLSBUaGlyZGx5LCB0aGUgZG9jdGVzdHMgaW4gYGRvY3Rlc3RzYCBhcmUgY29udmVydGVkLgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBpZiBmaXhlcnM6CisgICAgICAgICAgICAgICAgc2VsZi5maXhlcl9uYW1lcyA9IGZpeGVycworCisgICAgICAgICAgICBsb2dnZXIuaW5mbygnY29udmVydGluZyBQeXRob24gY29kZScpCisgICAgICAgICAgICBfS0xBU1MucnVuXzJ0bzMoc2VsZiwgZmlsZXMpCisKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCdjb252ZXJ0aW5nIGRvY3Rlc3RzIGluIFB5dGhvbiBmaWxlcycpCisgICAgICAgICAgICBfS0xBU1MucnVuXzJ0bzMoc2VsZiwgZmlsZXMsIGRvY3Rlc3RzX29ubHk9VHJ1ZSkKKworICAgICAgICAgICAgaWYgZG9jdGVzdHMgIT0gW106CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ2NvbnZlcnRpbmcgZG9jdGVzdCBpbiB0ZXh0IGZpbGVzJykKKyAgICAgICAgICAgICAgICBfS0xBU1MucnVuXzJ0bzMoc2VsZiwgZG9jdGVzdHMsIGRvY3Rlc3RzX29ubHk9VHJ1ZSkKKyAgICBlbHNlOgorICAgICAgICAjIElmIHJ1biBvbiBQeXRob24gMi54LCB0aGVyZSBpcyBub3RoaW5nIHRvIGRvLgorCisgICAgICAgIGRlZiBfcnVuXzJ0bzMoc2VsZiwgZmlsZXMsIGRvY3Rlc3RzPVtdLCBmaXhlcnM9W10pOgorICAgICAgICAgICAgcGFzcwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb21waWxlci9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvX19pbml0X18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDhlMDJjZQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvX19pbml0X18ucHkKQEAgLTAsMCArMSwyNzQgQEAKKyIiIkNvbXBpbGVyIGFic3RyYWN0aW9uIG1vZGVsIHVzZWQgYnkgcGFja2FnaW5nLgorCitBbiBhYnN0cmFjdCBiYXNlIGNsYXNzIGlzIGRlZmluZWQgaW4gdGhlIGNjb21waWxlciBzdWJtb2R1bGUsIGFuZAorY29uY3JldGUgaW1wbGVtZW50YXRpb25zIHN1aXRhYmxlIGZvciB2YXJpb3VzIHBsYXRmb3JtcyBhcmUgZGVmaW5lZCBpbgordGhlIG90aGVyIHN1Ym1vZHVsZXMuICBUaGUgZXh0ZW5zaW9uIG1vZHVsZSBpcyBhbHNvIHBsYWNlZCBpbiB0aGlzCitwYWNrYWdlLgorCitJbiBnZW5lcmFsLCBjb2RlIHNob3VsZCBub3QgaW5zdGFudGlhdGUgY29tcGlsZXIgY2xhc3NlcyBkaXJlY3RseSBidXQKK3VzZSB0aGUgbmV3X2NvbXBpbGVyIGFuZCBjdXN0b21pemVfY29tcGlsZXIgZnVuY3Rpb25zIHByb3ZpZGVkIGluIHRoaXMKK21vZHVsZS4KKworVGhlIGNvbXBpbGVyIHN5c3RlbSBoYXMgYSByZWdpc3RyYXRpb24gQVBJOiBnZXRfZGVmYXVsdF9jb21waWxlciwKK3NldF9jb21waWxlciwgc2hvd19jb21waWxlcnMuCisiIiIKKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgcmUKK2ltcG9ydCBzeXNjb25maWcKKworZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgcmVzb2x2ZV9uYW1lCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKKworZGVmIGN1c3RvbWl6ZV9jb21waWxlcihjb21waWxlcik6CisgICAgIiIiRG8gYW55IHBsYXRmb3JtLXNwZWNpZmljIGN1c3RvbWl6YXRpb24gb2YgYSBDQ29tcGlsZXIgaW5zdGFuY2UuCisKKyAgICBNYWlubHkgbmVlZGVkIG9uIFVuaXgsIHNvIHdlIGNhbiBwbHVnIGluIHRoZSBpbmZvcm1hdGlvbiB0aGF0CisgICAgdmFyaWVzIGFjcm9zcyBVbmljZXMgYW5kIGlzIHN0b3JlZCBpbiBQeXRob24ncyBNYWtlZmlsZS4KKyAgICAiIiIKKyAgICBpZiBjb21waWxlci5uYW1lID09ICJ1bml4IjoKKyAgICAgICAgY2MsIGN4eCwgb3B0LCBjZmxhZ3MsIGNjc2hhcmVkLCBsZHNoYXJlZCwgc29fZXh0LCBhciwgYXJfZmxhZ3MgPSAoCisgICAgICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXJzKCdDQycsICdDWFgnLCAnT1BUJywgJ0NGTEFHUycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdDQ1NIQVJFRCcsICdMRFNIQVJFRCcsICdTTycsICdBUicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdBUkZMQUdTJykpCisKKyAgICAgICAgaWYgJ0NDJyBpbiBvcy5lbnZpcm9uOgorICAgICAgICAgICAgY2MgPSBvcy5lbnZpcm9uWydDQyddCisgICAgICAgIGlmICdDWFgnIGluIG9zLmVudmlyb246CisgICAgICAgICAgICBjeHggPSBvcy5lbnZpcm9uWydDWFgnXQorICAgICAgICBpZiAnTERTSEFSRUQnIGluIG9zLmVudmlyb246CisgICAgICAgICAgICBsZHNoYXJlZCA9IG9zLmVudmlyb25bJ0xEU0hBUkVEJ10KKyAgICAgICAgaWYgJ0NQUCcgaW4gb3MuZW52aXJvbjoKKyAgICAgICAgICAgIGNwcCA9IG9zLmVudmlyb25bJ0NQUCddCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBjcHAgPSBjYyArICIgLUUiICAgICAgICAgICAjIG5vdCBhbHdheXMKKyAgICAgICAgaWYgJ0xERkxBR1MnIGluIG9zLmVudmlyb246CisgICAgICAgICAgICBsZHNoYXJlZCA9IGxkc2hhcmVkICsgJyAnICsgb3MuZW52aXJvblsnTERGTEFHUyddCisgICAgICAgIGlmICdDRkxBR1MnIGluIG9zLmVudmlyb246CisgICAgICAgICAgICBjZmxhZ3MgPSBvcHQgKyAnICcgKyBvcy5lbnZpcm9uWydDRkxBR1MnXQorICAgICAgICAgICAgbGRzaGFyZWQgPSBsZHNoYXJlZCArICcgJyArIG9zLmVudmlyb25bJ0NGTEFHUyddCisgICAgICAgIGlmICdDUFBGTEFHUycgaW4gb3MuZW52aXJvbjoKKyAgICAgICAgICAgIGNwcCA9IGNwcCArICcgJyArIG9zLmVudmlyb25bJ0NQUEZMQUdTJ10KKyAgICAgICAgICAgIGNmbGFncyA9IGNmbGFncyArICcgJyArIG9zLmVudmlyb25bJ0NQUEZMQUdTJ10KKyAgICAgICAgICAgIGxkc2hhcmVkID0gbGRzaGFyZWQgKyAnICcgKyBvcy5lbnZpcm9uWydDUFBGTEFHUyddCisgICAgICAgIGlmICdBUicgaW4gb3MuZW52aXJvbjoKKyAgICAgICAgICAgIGFyID0gb3MuZW52aXJvblsnQVInXQorICAgICAgICBpZiAnQVJGTEFHUycgaW4gb3MuZW52aXJvbjoKKyAgICAgICAgICAgIGFyY2hpdmVyID0gYXIgKyAnICcgKyBvcy5lbnZpcm9uWydBUkZMQUdTJ10KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIGFyX2ZsYWdzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGFyY2hpdmVyID0gYXIgKyAnICcgKyBhcl9mbGFncworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAjIHNlZSBpZiBpdHMgdGhlIHByb3BlciBkZWZhdWx0IHZhbHVlCisgICAgICAgICAgICAgICAgIyBtbW0gSSBkb24ndCB3YW50IHRvIGJhY2twb3J0IHRoZSBtYWtlZmlsZQorICAgICAgICAgICAgICAgIGFyY2hpdmVyID0gYXIgKyAnIHJjJworCisgICAgICAgIGNjX2NtZCA9IGNjICsgJyAnICsgY2ZsYWdzCisgICAgICAgIGNvbXBpbGVyLnNldF9leGVjdXRhYmxlcygKKyAgICAgICAgICAgIHByZXByb2Nlc3Nvcj1jcHAsCisgICAgICAgICAgICBjb21waWxlcj1jY19jbWQsCisgICAgICAgICAgICBjb21waWxlcl9zbz1jY19jbWQgKyAnICcgKyBjY3NoYXJlZCwKKyAgICAgICAgICAgIGNvbXBpbGVyX2N4eD1jeHgsCisgICAgICAgICAgICBsaW5rZXJfc289bGRzaGFyZWQsCisgICAgICAgICAgICBsaW5rZXJfZXhlPWNjLAorICAgICAgICAgICAgYXJjaGl2ZXI9YXJjaGl2ZXIpCisKKyAgICAgICAgY29tcGlsZXIuc2hhcmVkX2xpYl9leHRlbnNpb24gPSBzb19leHQKKworCisjIE1hcCBhIHN5cy5wbGF0Zm9ybS9vcy5uYW1lICgncG9zaXgnLCAnbnQnKSB0byB0aGUgZGVmYXVsdCBjb21waWxlcgorIyB0eXBlIGZvciB0aGF0IHBsYXRmb3JtLiBLZXlzIGFyZSBpbnRlcnByZXRlZCBhcyByZSBtYXRjaAorIyBwYXR0ZXJucy4gT3JkZXIgaXMgaW1wb3J0YW50OyBwbGF0Zm9ybSBtYXBwaW5ncyBhcmUgcHJlZmVycmVkIG92ZXIKKyMgT1MgbmFtZXMuCitfZGVmYXVsdF9jb21waWxlcnMgPSAoCisgICAgIyBQbGF0Zm9ybSBzdHJpbmcgbWFwcGluZ3MKKworICAgICMgb24gYSBjeWd3aW4gYnVpbHQgcHl0aG9uIHdlIGNhbiB1c2UgZ2NjIGxpa2UgYW4gb3JkaW5hcnkgVU5JWGlzaAorICAgICMgY29tcGlsZXIKKyAgICAoJ2N5Z3dpbi4qJywgJ3VuaXgnKSwKKworICAgICMgT1MgbmFtZSBtYXBwaW5ncworICAgICgncG9zaXgnLCAndW5peCcpLAorICAgICgnbnQnLCAnbXN2YycpLAorKQorCitkZWYgZ2V0X2RlZmF1bHRfY29tcGlsZXIob3NuYW1lPU5vbmUsIHBsYXRmb3JtPU5vbmUpOgorICAgICIiIiBEZXRlcm1pbmUgdGhlIGRlZmF1bHQgY29tcGlsZXIgdG8gdXNlIGZvciB0aGUgZ2l2ZW4gcGxhdGZvcm0uCisKKyAgICAgICAgb3NuYW1lIHNob3VsZCBiZSBvbmUgb2YgdGhlIHN0YW5kYXJkIFB5dGhvbiBPUyBuYW1lcyAoaS5lLiB0aGUKKyAgICAgICAgb25lcyByZXR1cm5lZCBieSBvcy5uYW1lKSBhbmQgcGxhdGZvcm0gdGhlIGNvbW1vbiB2YWx1ZQorICAgICAgICByZXR1cm5lZCBieSBzeXMucGxhdGZvcm0gZm9yIHRoZSBwbGF0Zm9ybSBpbiBxdWVzdGlvbi4KKworICAgICAgICBUaGUgZGVmYXVsdCB2YWx1ZXMgYXJlIG9zLm5hbWUgYW5kIHN5cy5wbGF0Zm9ybSBpbiBjYXNlIHRoZQorICAgICAgICBwYXJhbWV0ZXJzIGFyZSBub3QgZ2l2ZW4uCisKKyAgICAiIiIKKyAgICBpZiBvc25hbWUgaXMgTm9uZToKKyAgICAgICAgb3NuYW1lID0gb3MubmFtZQorICAgIGlmIHBsYXRmb3JtIGlzIE5vbmU6CisgICAgICAgIHBsYXRmb3JtID0gc3lzLnBsYXRmb3JtCisgICAgZm9yIHBhdHRlcm4sIGNvbXBpbGVyIGluIF9kZWZhdWx0X2NvbXBpbGVyczoKKyAgICAgICAgaWYgcmUubWF0Y2gocGF0dGVybiwgcGxhdGZvcm0pIGlzIG5vdCBOb25lIG9yIFwKKyAgICAgICAgICAgcmUubWF0Y2gocGF0dGVybiwgb3NuYW1lKSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHJldHVybiBjb21waWxlcgorICAgICMgRGVmYXVsdHMgdG8gVW5peCBjb21waWxlcgorICAgIHJldHVybiAndW5peCcKKworCisjIGNvbXBpbGVyIG1hcHBpbmcKKyMgWFhYIHVzZWZ1bCB0byBleHBvc2UgdGhlbT8gKGkuZS4gZ2V0X2NvbXBpbGVyX25hbWVzKQorX0NPTVBJTEVSUyA9IHsKKyAgICAndW5peCc6ICdwYWNrYWdpbmcuY29tcGlsZXIudW5peGNjb21waWxlci5Vbml4Q0NvbXBpbGVyJywKKyAgICAnbXN2Yyc6ICdwYWNrYWdpbmcuY29tcGlsZXIubXN2Y2NvbXBpbGVyLk1TVkNDb21waWxlcicsCisgICAgJ2N5Z3dpbic6ICdwYWNrYWdpbmcuY29tcGlsZXIuY3lnd2luY2NvbXBpbGVyLkN5Z3dpbkNDb21waWxlcicsCisgICAgJ21pbmd3MzInOiAncGFja2FnaW5nLmNvbXBpbGVyLmN5Z3dpbmNjb21waWxlci5NaW5ndzMyQ0NvbXBpbGVyJywKKyAgICAnYmNwcCc6ICdwYWNrYWdpbmcuY29tcGlsZXIuYmNwcGNvbXBpbGVyLkJDUFBDb21waWxlcicsCit9CisKK2RlZiBzZXRfY29tcGlsZXIobG9jYXRpb24pOgorICAgICIiIkFkZCBvciBjaGFuZ2UgYSBjb21waWxlciIiIgorICAgIGNscyA9IHJlc29sdmVfbmFtZShsb2NhdGlvbikKKyAgICAjIFhYWCB3ZSB3YW50IHRvIGNoZWNrIHRoZSBjbGFzcyBoZXJlCisgICAgX0NPTVBJTEVSU1tjbHMubmFtZV0gPSBjbHMKKworCitkZWYgc2hvd19jb21waWxlcnMoKToKKyAgICAiIiJQcmludCBsaXN0IG9mIGF2YWlsYWJsZSBjb21waWxlcnMgKHVzZWQgYnkgdGhlICItLWhlbHAtY29tcGlsZXIiCisgICAgb3B0aW9ucyB0byAiYnVpbGQiLCAiYnVpbGRfZXh0IiwgImJ1aWxkX2NsaWIiKS4KKyAgICAiIiIKKyAgICBmcm9tIHBhY2thZ2luZy5mYW5jeV9nZXRvcHQgaW1wb3J0IEZhbmN5R2V0b3B0CisgICAgY29tcGlsZXJzID0gW10KKworICAgIGZvciBuYW1lLCBjbHMgaW4gX0NPTVBJTEVSUy5pdGVtcygpOgorICAgICAgICBpZiBpc2luc3RhbmNlKGNscywgc3RyKToKKyAgICAgICAgICAgIGNscyA9IHJlc29sdmVfbmFtZShjbHMpCisgICAgICAgICAgICBfQ09NUElMRVJTW25hbWVdID0gY2xzCisKKyAgICAgICAgY29tcGlsZXJzLmFwcGVuZCgoImNvbXBpbGVyPSIgKyBuYW1lLCBOb25lLCBjbHMuZGVzY3JpcHRpb24pKQorCisgICAgY29tcGlsZXJzLnNvcnQoKQorICAgIHByZXR0eV9wcmludGVyID0gRmFuY3lHZXRvcHQoY29tcGlsZXJzKQorICAgIHByZXR0eV9wcmludGVyLnByaW50X2hlbHAoIkxpc3Qgb2YgYXZhaWxhYmxlIGNvbXBpbGVyczoiKQorCisKK2RlZiBuZXdfY29tcGlsZXIocGxhdD1Ob25lLCBjb21waWxlcj1Ob25lLCBkcnlfcnVuPUZhbHNlLCBmb3JjZT1GYWxzZSk6CisgICAgIiIiR2VuZXJhdGUgYW4gaW5zdGFuY2Ugb2Ygc29tZSBDQ29tcGlsZXIgc3ViY2xhc3MgZm9yIHRoZSBzdXBwbGllZAorICAgIHBsYXRmb3JtL2NvbXBpbGVyIGNvbWJpbmF0aW9uLiAgJ3BsYXQnIGRlZmF1bHRzIHRvICdvcy5uYW1lJworICAgIChlZy4gJ3Bvc2l4JywgJ250JyksIGFuZCAnY29tcGlsZXInIGRlZmF1bHRzIHRvIHRoZSBkZWZhdWx0IGNvbXBpbGVyCisgICAgZm9yIHRoYXQgcGxhdGZvcm0uICBDdXJyZW50bHkgb25seSAncG9zaXgnIGFuZCAnbnQnIGFyZSBzdXBwb3J0ZWQsIGFuZAorICAgIHRoZSBkZWZhdWx0IGNvbXBpbGVycyBhcmUgInRyYWRpdGlvbmFsIFVuaXggaW50ZXJmYWNlIiAoVW5peENDb21waWxlcgorICAgIGNsYXNzKSBhbmQgVmlzdWFsIEMrKyAoTVNWQ0NvbXBpbGVyIGNsYXNzKS4gIE5vdGUgdGhhdCBpdCdzIHBlcmZlY3RseQorICAgIHBvc3NpYmxlIHRvIGFzayBmb3IgYSBVbml4IGNvbXBpbGVyIG9iamVjdCB1bmRlciBXaW5kb3dzLCBhbmQgYQorICAgIE1pY3Jvc29mdCBjb21waWxlciBvYmplY3QgdW5kZXIgVW5peCAtLSBpZiB5b3Ugc3VwcGx5IGEgdmFsdWUgZm9yCisgICAgJ2NvbXBpbGVyJywgJ3BsYXQnIGlzIGlnbm9yZWQuCisgICAgIiIiCisgICAgaWYgcGxhdCBpcyBOb25lOgorICAgICAgICBwbGF0ID0gb3MubmFtZQorCisgICAgdHJ5OgorICAgICAgICBpZiBjb21waWxlciBpcyBOb25lOgorICAgICAgICAgICAgY29tcGlsZXIgPSBnZXRfZGVmYXVsdF9jb21waWxlcihwbGF0KQorCisgICAgICAgIGNscyA9IF9DT01QSUxFUlNbY29tcGlsZXJdCisgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICBtc2cgPSAiZG9uJ3Qga25vdyBob3cgdG8gY29tcGlsZSBDL0MrKyBjb2RlIG9uIHBsYXRmb3JtICclcyciICUgcGxhdAorICAgICAgICBpZiBjb21waWxlciBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIG1zZyA9IG1zZyArICIgd2l0aCAnJXMnIGNvbXBpbGVyIiAlIGNvbXBpbGVyCisgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IobXNnKQorCisgICAgaWYgaXNpbnN0YW5jZShjbHMsIHN0cik6CisgICAgICAgIGNscyA9IHJlc29sdmVfbmFtZShjbHMpCisgICAgICAgIF9DT01QSUxFUlNbY29tcGlsZXJdID0gY2xzCisKKyAgICByZXR1cm4gY2xzKGRyeV9ydW4sIGZvcmNlKQorCisKK2RlZiBnZW5fcHJlcHJvY2Vzc19vcHRpb25zKG1hY3JvcywgaW5jbHVkZV9kaXJzKToKKyAgICAiIiJHZW5lcmF0ZSBDIHByZS1wcm9jZXNzb3Igb3B0aW9ucyAoLUQsIC1VLCAtSSkgYXMgdXNlZCBieSBhdCBsZWFzdAorICAgIHR3byB0eXBlcyBvZiBjb21waWxlcnM6IHRoZSB0eXBpY2FsIFVuaXggY29tcGlsZXIgYW5kIFZpc3VhbCBDKysuCisgICAgJ21hY3JvcycgaXMgdGhlIHVzdWFsIHRoaW5nLCBhIGxpc3Qgb2YgMS0gb3IgMi10dXBsZXMsIHdoZXJlIChuYW1lLCkKKyAgICBtZWFucyB1bmRlZmluZSAoLVUpIG1hY3JvICduYW1lJywgYW5kIChuYW1lLHZhbHVlKSBtZWFucyBkZWZpbmUgKC1EKQorICAgIG1hY3JvICduYW1lJyB0byAndmFsdWUnLiAgJ2luY2x1ZGVfZGlycycgaXMganVzdCBhIGxpc3Qgb2YgZGlyZWN0b3J5CisgICAgbmFtZXMgdG8gYmUgYWRkZWQgdG8gdGhlIGhlYWRlciBmaWxlIHNlYXJjaCBwYXRoICgtSSkuICBSZXR1cm5zIGEgbGlzdAorICAgIG9mIGNvbW1hbmQtbGluZSBvcHRpb25zIHN1aXRhYmxlIGZvciBlaXRoZXIgVW5peCBjb21waWxlcnMgb3IgVmlzdWFsCisgICAgQysrLgorICAgICIiIgorICAgICMgWFhYIGl0IHdvdWxkIGJlIG5pY2UgKG1haW5seSBhZXN0aGV0aWMsIGFuZCBzbyB3ZSBkb24ndCBnZW5lcmF0ZQorICAgICMgc3R1cGlkLWxvb2tpbmcgY29tbWFuZCBsaW5lcykgdG8gZ28gb3ZlciAnbWFjcm9zJyBhbmQgZWxpbWluYXRlCisgICAgIyByZWR1bmRhbnQgZGVmaW5pdGlvbnMvdW5kZWZpbml0aW9ucyAoaWUuIGVuc3VyZSB0aGF0IG9ubHkgdGhlCisgICAgIyBsYXRlc3QgbWVudGlvbiBvZiBhIHBhcnRpY3VsYXIgbWFjcm8gd2luZHMgdXAgb24gdGhlIGNvbW1hbmQKKyAgICAjIGxpbmUpLiAgSSBkb24ndCB0aGluayBpdCdzIGVzc2VudGlhbCwgdGhvdWdoLCBzaW5jZSBtb3N0IChhbGw/KQorICAgICMgVW5peCBDIGNvbXBpbGVycyBvbmx5IHBheSBhdHRlbnRpb24gdG8gdGhlIGxhdGVzdCAtRCBvciAtVQorICAgICMgbWVudGlvbiBvZiBhIG1hY3JvIG9uIHRoZWlyIGNvbW1hbmQgbGluZS4gIFNpbWlsYXIgc2l0dWF0aW9uIGZvcgorICAgICMgJ2luY2x1ZGVfZGlycycuICBJJ20gcHVudGluZyBvbiBib3RoIGZvciBub3cuICBBbnl3YXlzLCB3ZWVkaW5nIG91dAorICAgICMgcmVkdW5kYW5jaWVzIGxpa2UgdGhpcyBzaG91bGQgcHJvYmFibHkgYmUgdGhlIHByb3ZpbmNlIG9mCisgICAgIyBDQ29tcGlsZXIsIHNpbmNlIHRoZSBkYXRhIHN0cnVjdHVyZXMgdXNlZCBhcmUgaW5oZXJpdGVkIGZyb20gaXQKKyAgICAjIGFuZCB0aGVyZWZvcmUgY29tbW9uIHRvIGFsbCBDQ29tcGlsZXIgY2xhc3Nlcy4KKworICAgIHBwX29wdHMgPSBbXQorICAgIGZvciBtYWNybyBpbiBtYWNyb3M6CisKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UobWFjcm8sIHR1cGxlKSBhbmQgMSA8PSBsZW4obWFjcm8pIDw9IDI6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoCisgICAgICAgICAgICAgICAgImJhZCBtYWNybyBkZWZpbml0aW9uICclcyc6IGVhY2ggZWxlbWVudCBvZiAnbWFjcm9zJyIKKyAgICAgICAgICAgICAgICAibGlzdCBtdXN0IGJlIGEgMS0gb3IgMi10dXBsZSIgJSBtYWNybykKKworICAgICAgICBpZiBsZW4obWFjcm8pID09IDE6ICAgICAgICAjIHVuZGVmaW5lIHRoaXMgbWFjcm8KKyAgICAgICAgICAgIHBwX29wdHMuYXBwZW5kKCItVSVzIiAlIG1hY3JvWzBdKQorICAgICAgICBlbGlmIGxlbihtYWNybykgPT0gMjoKKyAgICAgICAgICAgIGlmIG1hY3JvWzFdIGlzIE5vbmU6ICAgICMgZGVmaW5lIHdpdGggbm8gZXhwbGljaXQgdmFsdWUKKyAgICAgICAgICAgICAgICBwcF9vcHRzLmFwcGVuZCgiLUQlcyIgJSBtYWNyb1swXSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBYWFggKmRvbid0KiBuZWVkIHRvIGJlIGNsZXZlciBhYm91dCBxdW90aW5nIHRoZQorICAgICAgICAgICAgICAgICMgbWFjcm8gdmFsdWUgaGVyZSwgYmVjYXVzZSB3ZSdyZSBnb2luZyB0byBhdm9pZCB0aGUKKyAgICAgICAgICAgICAgICAjIHNoZWxsIGF0IGFsbCBjb3N0cyB3aGVuIHdlIHNwYXduIHRoZSBjb21tYW5kIQorICAgICAgICAgICAgICAgIHBwX29wdHMuYXBwZW5kKCItRCVzPSVzIiAlIG1hY3JvKQorCisgICAgZm9yIGRpciBpbiBpbmNsdWRlX2RpcnM6CisgICAgICAgIHBwX29wdHMuYXBwZW5kKCItSSVzIiAlIGRpcikKKworICAgIHJldHVybiBwcF9vcHRzCisKKworZGVmIGdlbl9saWJfb3B0aW9ucyhjb21waWxlciwgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycywgbGlicmFyaWVzKToKKyAgICAiIiJHZW5lcmF0ZSBsaW5rZXIgb3B0aW9ucyBmb3Igc2VhcmNoaW5nIGxpYnJhcnkgZGlyZWN0b3JpZXMgYW5kCisgICAgbGlua2luZyB3aXRoIHNwZWNpZmljIGxpYnJhcmllcy4KKworICAgICdsaWJyYXJpZXMnIGFuZCAnbGlicmFyeV9kaXJzJyBhcmUsIHJlc3BlY3RpdmVseSwgbGlzdHMgb2YgbGlicmFyeSBuYW1lcworICAgIChub3QgZmlsZW5hbWVzISkgYW5kIHNlYXJjaCBkaXJlY3Rvcmllcy4gIFJldHVybnMgYSBsaXN0IG9mIGNvbW1hbmQtbGluZQorICAgIG9wdGlvbnMgc3VpdGFibGUgZm9yIHVzZSB3aXRoIHNvbWUgY29tcGlsZXIgKGRlcGVuZGluZyBvbiB0aGUgdHdvIGZvcm1hdAorICAgIHN0cmluZ3MgcGFzc2VkIGluKS4KKyAgICAiIiIKKyAgICBsaWJfb3B0cyA9IFtdCisKKyAgICBmb3IgZGlyIGluIGxpYnJhcnlfZGlyczoKKyAgICAgICAgbGliX29wdHMuYXBwZW5kKGNvbXBpbGVyLmxpYnJhcnlfZGlyX29wdGlvbihkaXIpKQorCisgICAgZm9yIGRpciBpbiBydW50aW1lX2xpYnJhcnlfZGlyczoKKyAgICAgICAgb3B0ID0gY29tcGlsZXIucnVudGltZV9saWJyYXJ5X2Rpcl9vcHRpb24oZGlyKQorICAgICAgICBpZiBpc2luc3RhbmNlKG9wdCwgbGlzdCk6CisgICAgICAgICAgICBsaWJfb3B0cy5leHRlbmQob3B0KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbGliX29wdHMuYXBwZW5kKG9wdCkKKworICAgICMgWFhYIGl0J3MgaW1wb3J0YW50IHRoYXQgd2UgKm5vdCogcmVtb3ZlIHJlZHVuZGFudCBsaWJyYXJ5IG1lbnRpb25zIQorICAgICMgc29tZXRpbWVzIHlvdSByZWFsbHkgZG8gaGF2ZSB0byBzYXkgIi1sZm9vIC1sYmFyIC1sZm9vIiBpbiBvcmRlciB0bworICAgICMgcmVzb2x2ZSBhbGwgc3ltYm9scy4gIEkganVzdCBob3BlIHdlIG5ldmVyIGhhdmUgdG8gc2F5ICItbGZvbyBvYmoubworICAgICMgLWxiYXIiIHRvIGdldCB0aGluZ3MgdG8gd29yayAtLSB0aGF0J3MgY2VydGFpbmx5IGEgcG9zc2liaWxpdHksIGJ1dCBhCisgICAgIyBwcmV0dHkgbmFzdHkgd2F5IHRvIGFycmFuZ2UgeW91ciBDIGNvZGUuCisKKyAgICBmb3IgbGliIGluIGxpYnJhcmllczoKKyAgICAgICAgbGliX2RpciwgbGliX25hbWUgPSBvcy5wYXRoLnNwbGl0KGxpYikKKyAgICAgICAgaWYgbGliX2RpciAhPSAnJzoKKyAgICAgICAgICAgIGxpYl9maWxlID0gY29tcGlsZXIuZmluZF9saWJyYXJ5X2ZpbGUoW2xpYl9kaXJdLCBsaWJfbmFtZSkKKyAgICAgICAgICAgIGlmIGxpYl9maWxlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGxpYl9vcHRzLmFwcGVuZChsaWJfZmlsZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoIm5vIGxpYnJhcnkgZmlsZSBjb3JyZXNwb25kaW5nIHRvICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICInJXMnIGZvdW5kIChza2lwcGluZykiICUgbGliKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbGliX29wdHMuYXBwZW5kKGNvbXBpbGVyLmxpYnJhcnlfb3B0aW9uKGxpYikpCisKKyAgICByZXR1cm4gbGliX29wdHMKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvYmNwcGNvbXBpbGVyLnB5IGIvTGliL3BhY2thZ2luZy9jb21waWxlci9iY3BwY29tcGlsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDZjNzU4YwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvYmNwcGNvbXBpbGVyLnB5CkBAIC0wLDAgKzEsMzU1IEBACisiIiJDQ29tcGlsZXIgaW1wbGVtZW50YXRpb24gZm9yIHRoZSBCb3JsYW5kIEMrKyBjb21waWxlci4iIiIKKworIyBUaGlzIGltcGxlbWVudGF0aW9uIGJ5IEx5bGUgSm9obnNvbiwgYmFzZWQgb24gdGhlIG9yaWdpbmFsIG1zdmNjb21waWxlci5weQorIyBtb2R1bGUgYW5kIHVzaW5nIHRoZSBkaXJlY3Rpb25zIG9yaWdpbmFsbHkgcHVibGlzaGVkIGJ5IEdvcmRvbiBXaWxsaWFtcy4KKworIyBYWFggbG9va3MgbGlrZSB0aGVyZSdzIGEgTE9UIG9mIG92ZXJsYXAgYmV0d2VlbiB0aGVzZSB0d28gY2xhc3NlczoKKyMgc29tZW9uZSBzaG91bGQgc2l0IGRvd24gYW5kIGZhY3RvciBvdXQgdGhlIGNvbW1vbiBjb2RlIGFzCisjIFdpbmRvd3NDQ29tcGlsZXIhICAtLUdQVworCitpbXBvcnQgb3MKKworZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCAoUGFja2FnaW5nRXhlY0Vycm9yLCBDb21waWxlRXJyb3IsIExpYkVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTGlua0Vycm9yLCBVbmtub3duRmlsZUVycm9yKQorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIuY2NvbXBpbGVyIGltcG9ydCBDQ29tcGlsZXIKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCBnZW5fcHJlcHJvY2Vzc19vcHRpb25zCitmcm9tIHBhY2thZ2luZy5maWxlX3V0aWwgaW1wb3J0IHdyaXRlX2ZpbGUKK2Zyb20gcGFja2FnaW5nLmRlcF91dGlsIGltcG9ydCBuZXdlcgorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorCisKK2NsYXNzIEJDUFBDb21waWxlcihDQ29tcGlsZXIpIDoKKyAgICAiIiJDb25jcmV0ZSBjbGFzcyB0aGF0IGltcGxlbWVudHMgYW4gaW50ZXJmYWNlIHRvIHRoZSBCb3JsYW5kIEMvQysrCisgICAgY29tcGlsZXIsIGFzIGRlZmluZWQgYnkgdGhlIENDb21waWxlciBhYnN0cmFjdCBjbGFzcy4KKyAgICAiIiIKKworICAgIG5hbWUgPSAnYmNwcCcKKyAgICBkZXNjcmlwdGlvbiA9ICdCb3JsYW5kIEMrKyBDb21waWxlcicKKworICAgICMgSnVzdCBzZXQgdGhpcyBzbyBDQ29tcGlsZXIncyBjb25zdHJ1Y3RvciBkb2Vzbid0IGJhcmYuICBXZSBjdXJyZW50bHkKKyAgICAjIGRvbid0IHVzZSB0aGUgJ3NldF9leGVjdXRhYmxlcygpJyBidXJlYXVjcmFjeSBwcm92aWRlZCBieSBDQ29tcGlsZXIsCisgICAgIyBhcyBpdCByZWFsbHkgaXNuJ3QgbmVjZXNzYXJ5IGZvciB0aGlzIHNvcnQgb2Ygc2luZ2xlLWNvbXBpbGVyIGNsYXNzLgorICAgICMgV291bGQgYmUgbmljZSB0byBoYXZlIGEgY29uc2lzdGVudCBpbnRlcmZhY2Ugd2l0aCBVbml4Q0NvbXBpbGVyLAorICAgICMgdGhvdWdoLCBzbyBpdCdzIHdvcnRoIHRoaW5raW5nIGFib3V0LgorICAgIGV4ZWN1dGFibGVzID0ge30KKworICAgICMgUHJpdmF0ZSBjbGFzcyBkYXRhIChuZWVkIHRvIGRpc3Rpbmd1aXNoIEMgZnJvbSBDKysgc291cmNlIGZvciBjb21waWxlcikKKyAgICBfY19leHRlbnNpb25zID0gWycuYyddCisgICAgX2NwcF9leHRlbnNpb25zID0gWycuY2MnLCAnLmNwcCcsICcuY3h4J10KKworICAgICMgTmVlZGVkIGZvciB0aGUgZmlsZW5hbWUgZ2VuZXJhdGlvbiBtZXRob2RzIHByb3ZpZGVkIGJ5IHRoZQorICAgICMgYmFzZSBjbGFzcywgQ0NvbXBpbGVyLgorICAgIHNyY19leHRlbnNpb25zID0gX2NfZXh0ZW5zaW9ucyArIF9jcHBfZXh0ZW5zaW9ucworICAgIG9ial9leHRlbnNpb24gPSAnLm9iaicKKyAgICBzdGF0aWNfbGliX2V4dGVuc2lvbiA9ICcubGliJworICAgIHNoYXJlZF9saWJfZXh0ZW5zaW9uID0gJy5kbGwnCisgICAgc3RhdGljX2xpYl9mb3JtYXQgPSBzaGFyZWRfbGliX2Zvcm1hdCA9ICclcyVzJworICAgIGV4ZV9leHRlbnNpb24gPSAnLmV4ZScKKworCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRyeV9ydW49RmFsc2UsIGZvcmNlPUZhbHNlKToKKyAgICAgICAgc3VwZXIoQkNQUENvbXBpbGVyLCBzZWxmKS5fX2luaXRfXyhkcnlfcnVuLCBmb3JjZSkKKworICAgICAgICAjIFRoZXNlIGV4ZWN1dGFibGVzIGFyZSBhc3N1bWVkIHRvIGFsbCBiZSBpbiB0aGUgcGF0aC4KKyAgICAgICAgIyBCb3JsYW5kIGRvZXNuJ3Qgc2VlbSB0byB1c2UgYW55IHNwZWNpYWwgcmVnaXN0cnkgc2V0dGluZ3MgdG8KKyAgICAgICAgIyBpbmRpY2F0ZSB0aGVpciBpbnN0YWxsYXRpb24gbG9jYXRpb25zLgorCisgICAgICAgIHNlbGYuY2MgPSAiYmNjMzIuZXhlIgorICAgICAgICBzZWxmLmxpbmtlciA9ICJpbGluazMyLmV4ZSIKKyAgICAgICAgc2VsZi5saWIgPSAidGxpYi5leGUiCisKKyAgICAgICAgc2VsZi5wcmVwcm9jZXNzX29wdGlvbnMgPSBOb25lCisgICAgICAgIHNlbGYuY29tcGlsZV9vcHRpb25zID0gWycvdFdNJywgJy9PMicsICcvcScsICcvZzAnXQorICAgICAgICBzZWxmLmNvbXBpbGVfb3B0aW9uc19kZWJ1ZyA9IFsnL3RXTScsICcvT2QnLCAnL3EnLCAnL2cwJ10KKworICAgICAgICBzZWxmLmxkZmxhZ3Nfc2hhcmVkID0gWycvVHBkJywgJy9HbicsICcvcScsICcveCddCisgICAgICAgIHNlbGYubGRmbGFnc19zaGFyZWRfZGVidWcgPSBbJy9UcGQnLCAnL0duJywgJy9xJywgJy94J10KKyAgICAgICAgc2VsZi5sZGZsYWdzX3N0YXRpYyA9IFtdCisgICAgICAgIHNlbGYubGRmbGFnc19leGUgPSBbJy9HbicsICcvcScsICcveCddCisgICAgICAgIHNlbGYubGRmbGFnc19leGVfZGVidWcgPSBbJy9HbicsICcvcScsICcveCcsJy9yJ10KKworCisgICAgIyAtLSBXb3JrZXIgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBjb21waWxlKHNlbGYsIHNvdXJjZXMsCisgICAgICAgICAgICAgICAgb3V0cHV0X2Rpcj1Ob25lLCBtYWNyb3M9Tm9uZSwgaW5jbHVkZV9kaXJzPU5vbmUsIGRlYnVnPUZhbHNlLAorICAgICAgICAgICAgICAgIGV4dHJhX3ByZWFyZ3M9Tm9uZSwgZXh0cmFfcG9zdGFyZ3M9Tm9uZSwgZGVwZW5kcz1Ob25lKToKKworICAgICAgICBtYWNyb3MsIG9iamVjdHMsIGV4dHJhX3Bvc3RhcmdzLCBwcF9vcHRzLCBidWlsZCA9IFwKKyAgICAgICAgICAgICAgICBzZWxmLl9zZXR1cF9jb21waWxlKG91dHB1dF9kaXIsIG1hY3JvcywgaW5jbHVkZV9kaXJzLCBzb3VyY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kcywgZXh0cmFfcG9zdGFyZ3MpCisgICAgICAgIGNvbXBpbGVfb3B0cyA9IGV4dHJhX3ByZWFyZ3Mgb3IgW10KKyAgICAgICAgY29tcGlsZV9vcHRzLmFwcGVuZCgnLWMnKQorICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgIGNvbXBpbGVfb3B0cy5leHRlbmQoc2VsZi5jb21waWxlX29wdGlvbnNfZGVidWcpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBjb21waWxlX29wdHMuZXh0ZW5kKHNlbGYuY29tcGlsZV9vcHRpb25zKQorCisgICAgICAgIGZvciBvYmogaW4gb2JqZWN0czoKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzcmMsIGV4dCA9IGJ1aWxkW29ial0KKyAgICAgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgIyBYWFggd2h5IGRvIHRoZSBub3JtcGF0aCBoZXJlPworICAgICAgICAgICAgc3JjID0gb3MucGF0aC5ub3JtcGF0aChzcmMpCisgICAgICAgICAgICBvYmogPSBvcy5wYXRoLm5vcm1wYXRoKG9iaikKKyAgICAgICAgICAgICMgWFhYIF9zZXR1cF9jb21waWxlKCkgZGlkIGEgbWtwYXRoKCkgdG9vIGJ1dCBiZWZvcmUgdGhlIG5vcm1wYXRoLgorICAgICAgICAgICAgIyBJcyBpdCBwb3NzaWJsZSB0byBza2lwIHRoZSBub3JtcGF0aD8KKyAgICAgICAgICAgIHNlbGYubWtwYXRoKG9zLnBhdGguZGlybmFtZShvYmopKQorCisgICAgICAgICAgICBpZiBleHQgPT0gJy5yZXMnOgorICAgICAgICAgICAgICAgICMgVGhpcyBpcyBhbHJlYWR5IGEgYmluYXJ5IGZpbGUgLS0gc2tpcCBpdC4KKyAgICAgICAgICAgICAgICBjb250aW51ZSAjIHRoZSAnZm9yJyBsb29wCisgICAgICAgICAgICBpZiBleHQgPT0gJy5yYyc6CisgICAgICAgICAgICAgICAgIyBUaGlzIG5lZWRzIHRvIGJlIGNvbXBpbGVkIHRvIGEgLnJlcyBmaWxlIC0tIGRvIGl0IG5vdy4KKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oWyJicmNjMzIiLCAiLWZvIiwgb2JqLCBzcmNdKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBDb21waWxlRXJyb3IobXNnKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlICMgdGhlICdmb3InIGxvb3AKKworICAgICAgICAgICAgIyBUaGUgbmV4dCB0d28gYXJlIGJvdGggZm9yIHRoZSByZWFsIGNvbXBpbGVyLgorICAgICAgICAgICAgaWYgZXh0IGluIHNlbGYuX2NfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICBpbnB1dF9vcHQgPSAiIgorICAgICAgICAgICAgZWxpZiBleHQgaW4gc2VsZi5fY3BwX2V4dGVuc2lvbnM6CisgICAgICAgICAgICAgICAgaW5wdXRfb3B0ID0gIi1QIgorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAjIFVua25vd24gZmlsZSB0eXBlIC0tIG5vIGV4dHJhIG9wdGlvbnMuICBUaGUgY29tcGlsZXIKKyAgICAgICAgICAgICAgICAjIHdpbGwgcHJvYmFibHkgZmFpbCwgYnV0IGxldCBpdCBqdXN0IGluIGNhc2UgdGhpcyBpcyBhCisgICAgICAgICAgICAgICAgIyBmaWxlIHRoZSBjb21waWxlciByZWNvZ25pemVzIGV2ZW4gaWYgd2UgZG9uJ3QuCisgICAgICAgICAgICAgICAgaW5wdXRfb3B0ID0gIiIKKworICAgICAgICAgICAgb3V0cHV0X29wdCA9ICItbyIgKyBvYmoKKworICAgICAgICAgICAgIyBDb21waWxlciBjb21tYW5kIGxpbmUgc3ludGF4IGlzOiAiYmNjMzIgW29wdGlvbnNdIGZpbGUocykiLgorICAgICAgICAgICAgIyBOb3RlIHRoYXQgdGhlIHNvdXJjZSBmaWxlIG5hbWVzIG11c3QgYXBwZWFyIGF0IHRoZSBlbmQgb2YKKyAgICAgICAgICAgICMgdGhlIGNvbW1hbmQgbGluZS4KKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLnNwYXduKFtzZWxmLmNjXSArIGNvbXBpbGVfb3B0cyArIHBwX29wdHMgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lucHV0X29wdCwgb3V0cHV0X29wdF0gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3MgKyBbc3JjXSkKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisKKyAgICAgICAgcmV0dXJuIG9iamVjdHMKKworCisgICAgZGVmIGNyZWF0ZV9zdGF0aWNfbGliKHNlbGYsIG9iamVjdHMsIG91dHB1dF9saWJuYW1lLCBvdXRwdXRfZGlyPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnPUZhbHNlLCB0YXJnZXRfbGFuZz1Ob25lKToKKyAgICAgICAgb2JqZWN0cywgb3V0cHV0X2RpciA9IHNlbGYuX2ZpeF9vYmplY3RfYXJncyhvYmplY3RzLCBvdXRwdXRfZGlyKQorICAgICAgICBvdXRwdXRfZmlsZW5hbWUgPSBcCisgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZmlsZW5hbWUob3V0cHV0X2xpYm5hbWUsIG91dHB1dF9kaXI9b3V0cHV0X2RpcikKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKyAgICAgICAgICAgIGxpYl9hcmdzID0gW291dHB1dF9maWxlbmFtZSwgJy91J10gKyBvYmplY3RzCisgICAgICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgICAgICBwYXNzICAgICAgICAgICAgICAgICAgICAjIFhYWCB3aGF0IGdvZXMgaGVyZT8KKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLnNwYXduKFtzZWxmLmxpYl0gKyBsaWJfYXJncykKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIExpYkVycm9yKG1zZykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1Zygic2tpcHBpbmcgJXMgKHVwLXRvLWRhdGUpIiwgb3V0cHV0X2ZpbGVuYW1lKQorCisKKyAgICBkZWYgbGluayhzZWxmLCB0YXJnZXRfZGVzYywgb2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZGlyPU5vbmUsCisgICAgICAgICAgICAgbGlicmFyaWVzPU5vbmUsIGxpYnJhcnlfZGlycz1Ob25lLCBydW50aW1lX2xpYnJhcnlfZGlycz1Ob25lLAorICAgICAgICAgICAgIGV4cG9ydF9zeW1ib2xzPU5vbmUsIGRlYnVnPUZhbHNlLCBleHRyYV9wcmVhcmdzPU5vbmUsCisgICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3M9Tm9uZSwgYnVpbGRfdGVtcD1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lKToKKworICAgICAgICAjIFhYWCB0aGlzIGlnbm9yZXMgJ2J1aWxkX3RlbXAnISAgc2hvdWxkIGZvbGxvdyB0aGUgbGVhZCBvZgorICAgICAgICAjIG1zdmNjb21waWxlci5weQorCisgICAgICAgIG9iamVjdHMsIG91dHB1dF9kaXIgPSBzZWxmLl9maXhfb2JqZWN0X2FyZ3Mob2JqZWN0cywgb3V0cHV0X2RpcikKKyAgICAgICAgbGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsIHJ1bnRpbWVfbGlicmFyeV9kaXJzID0gXAorICAgICAgICAgICAgc2VsZi5fZml4X2xpYl9hcmdzKGxpYnJhcmllcywgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycykKKworICAgICAgICBpZiBydW50aW1lX2xpYnJhcnlfZGlyczoKKyAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJkb24ndCBrbm93IHdoYXQgdG8gZG8gd2l0aCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiJ3J1bnRpbWVfbGlicmFyeV9kaXJzJzogJXIiLCBydW50aW1lX2xpYnJhcnlfZGlycykKKworICAgICAgICBpZiBvdXRwdXRfZGlyIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2ZpbGVuYW1lID0gb3MucGF0aC5qb2luKG91dHB1dF9kaXIsIG91dHB1dF9maWxlbmFtZSkKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKworICAgICAgICAgICAgIyBGaWd1cmUgb3V0IGxpbmtlciBhcmdzIGJhc2VkIG9uIHR5cGUgb2YgdGFyZ2V0LgorICAgICAgICAgICAgaWYgdGFyZ2V0X2Rlc2MgPT0gQ0NvbXBpbGVyLkVYRUNVVEFCTEU6CisgICAgICAgICAgICAgICAgc3RhcnR1cF9vYmogPSAnYzB3MzInCisgICAgICAgICAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICAgICAgICAgIGxkX2FyZ3MgPSBzZWxmLmxkZmxhZ3NfZXhlX2RlYnVnWzpdCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgbGRfYXJncyA9IHNlbGYubGRmbGFnc19leGVbOl0KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc3RhcnR1cF9vYmogPSAnYzBkMzInCisgICAgICAgICAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICAgICAgICAgIGxkX2FyZ3MgPSBzZWxmLmxkZmxhZ3Nfc2hhcmVkX2RlYnVnWzpdCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgbGRfYXJncyA9IHNlbGYubGRmbGFnc19zaGFyZWRbOl0KKworCisgICAgICAgICAgICAjIENyZWF0ZSBhIHRlbXBvcmFyeSBleHBvcnRzIGZpbGUgZm9yIHVzZSBieSB0aGUgbGlua2VyCisgICAgICAgICAgICBpZiBleHBvcnRfc3ltYm9scyBpcyBOb25lOgorICAgICAgICAgICAgICAgIGRlZl9maWxlID0gJycKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaGVhZCwgdGFpbCA9IG9zLnBhdGguc3BsaXQob3V0cHV0X2ZpbGVuYW1lKQorICAgICAgICAgICAgICAgIG1vZG5hbWUsIGV4dCA9IG9zLnBhdGguc3BsaXRleHQodGFpbCkKKyAgICAgICAgICAgICAgICB0ZW1wX2RpciA9IG9zLnBhdGguZGlybmFtZShvYmplY3RzWzBdKSAjIHByZXNlcnZlIHRyZWUgc3RydWN0dXJlCisgICAgICAgICAgICAgICAgZGVmX2ZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcF9kaXIsICclcy5kZWYnICUgbW9kbmFtZSkKKyAgICAgICAgICAgICAgICBjb250ZW50cyA9IFsnRVhQT1JUUyddCisgICAgICAgICAgICAgICAgZm9yIHN5bSBpbiAoZXhwb3J0X3N5bWJvbHMgb3IgW10pOgorICAgICAgICAgICAgICAgICAgICBjb250ZW50cy5hcHBlbmQoJyAgJXM9XyVzJyAlIChzeW0sIHN5bSkpCisgICAgICAgICAgICAgICAgc2VsZi5leGVjdXRlKHdyaXRlX2ZpbGUsIChkZWZfZmlsZSwgY29udGVudHMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid3JpdGluZyAlcyIgJSBkZWZfZmlsZSkKKworICAgICAgICAgICAgIyBCb3JsYW5kIEMrKyBoYXMgcHJvYmxlbXMgd2l0aCAnLycgaW4gcGF0aHMKKyAgICAgICAgICAgIG9iamVjdHMyID0gW29zLnBhdGgubm9ybXBhdGgobykgZm9yIG8gaW4gb2JqZWN0c10KKyAgICAgICAgICAgICMgc3BsaXQgb2JqZWN0cyBpbiAub2JqIGFuZCAucmVzIGZpbGVzCisgICAgICAgICAgICAjIEJvcmxhbmQgQysrIG5lZWRzIHRoZW0gYXQgZGlmZmVyZW50IHBvc2l0aW9ucyBpbiB0aGUgY29tbWFuZCBsaW5lCisgICAgICAgICAgICBvYmplY3RzID0gW3N0YXJ0dXBfb2JqXQorICAgICAgICAgICAgcmVzb3VyY2VzID0gW10KKyAgICAgICAgICAgIGZvciBmaWxlIGluIG9iamVjdHMyOgorICAgICAgICAgICAgICAgIGJhc2UsIGV4dCA9IG9zLnBhdGguc3BsaXRleHQob3MucGF0aC5ub3JtY2FzZShmaWxlKSkKKyAgICAgICAgICAgICAgICBpZiBleHQgPT0gJy5yZXMnOgorICAgICAgICAgICAgICAgICAgICByZXNvdXJjZXMuYXBwZW5kKGZpbGUpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgb2JqZWN0cy5hcHBlbmQoZmlsZSkKKworCisgICAgICAgICAgICBmb3IgbCBpbiBsaWJyYXJ5X2RpcnM6CisgICAgICAgICAgICAgICAgbGRfYXJncy5hcHBlbmQoIi9MJXMiICUgb3MucGF0aC5ub3JtcGF0aChsKSkKKyAgICAgICAgICAgIGxkX2FyZ3MuYXBwZW5kKCIvTC4iKSAjIHdlIHNvbWV0aW1lcyB1c2UgcmVsYXRpdmUgcGF0aHMKKworICAgICAgICAgICAgIyBsaXN0IG9mIG9iamVjdCBmaWxlcworICAgICAgICAgICAgbGRfYXJncy5leHRlbmQob2JqZWN0cykKKworICAgICAgICAgICAgIyBYWFggdGhlIGNvbW1hbmQgbGluZSBzeW50YXggZm9yIEJvcmxhbmQgQysrIGlzIGEgYml0IHdvbmt5OworICAgICAgICAgICAgIyBjZXJ0YWluIGZpbGVuYW1lcyBhcmUgamFtbWVkIHRvZ2V0aGVyIGluIG9uZSBiaWcgc3RyaW5nLCBidXQKKyAgICAgICAgICAgICMgY29tbWEtZGVsaW1pdGVkLiAgVGhpcyBkb2Vzbid0IG1lc2ggdG9vIHdlbGwgd2l0aCB0aGUKKyAgICAgICAgICAgICMgVW5peC1jZW50cmljIGF0dGl0dWRlICh3aXRoIGEgRE9TL1dpbmRvd3MgcXVvdGluZyBoYWNrKSBvZgorICAgICAgICAgICAgIyAnc3Bhd24oKScsIHNvIGNvbnN0cnVjdGluZyB0aGUgYXJndW1lbnQgbGlzdCBpcyBhIGJpdAorICAgICAgICAgICAgIyBhd2t3YXJkLiAgTm90ZSB0aGF0IGRvaW5nIHRoZSBvYnZpb3VzIHRoaW5nIGFuZCBqYW1taW5nIGFsbAorICAgICAgICAgICAgIyB0aGUgZmlsZW5hbWVzIGFuZCBjb21tYXMgaW50byBvbmUgYXJndW1lbnQgd291bGQgYmUgd3JvbmcsCisgICAgICAgICAgICAjIGJlY2F1c2UgJ3NwYXduKCknIHdvdWxkIHF1b3RlIGFueSBmaWxlbmFtZXMgd2l0aCBzcGFjZXMgaW4KKyAgICAgICAgICAgICMgdGhlbS4gIEFyZ2hnaGghLiAgQXBwYXJlbnRseSBpdCB3b3JrcyBmaW5lIGFzIGNvZGVkLi4uCisKKyAgICAgICAgICAgICMgbmFtZSBvZiBkbGwvZXhlIGZpbGUKKyAgICAgICAgICAgIGxkX2FyZ3MuZXh0ZW5kKCgnLCcsb3V0cHV0X2ZpbGVuYW1lKSkKKyAgICAgICAgICAgICMgbm8gbWFwIGZpbGUgYW5kIHN0YXJ0IGxpYnJhcmllcworICAgICAgICAgICAgbGRfYXJncy5hcHBlbmQoJywsJykKKworICAgICAgICAgICAgZm9yIGxpYiBpbiBsaWJyYXJpZXM6CisgICAgICAgICAgICAgICAgIyBzZWUgaWYgd2UgZmluZCBpdCBhbmQgaWYgdGhlcmUgaXMgYSBiY3BwIHNwZWNpZmljIGxpYgorICAgICAgICAgICAgICAgICMgKHh4eF9iY3BwLmxpYikKKyAgICAgICAgICAgICAgICBsaWJmaWxlID0gc2VsZi5maW5kX2xpYnJhcnlfZmlsZShsaWJyYXJ5X2RpcnMsIGxpYiwgZGVidWcpCisgICAgICAgICAgICAgICAgaWYgbGliZmlsZSBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICBsZF9hcmdzLmFwcGVuZChsaWIpCisgICAgICAgICAgICAgICAgICAgICMgcHJvYmFibHkgYSBCQ1BQIGludGVybmFsIGxpYnJhcnkgLS0gZG9uJ3Qgd2FybgorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICMgZnVsbCBuYW1lIHdoaWNoIHByZWZlcnMgYmNwcF94eHgubGliIG92ZXIgeHh4LmxpYgorICAgICAgICAgICAgICAgICAgICBsZF9hcmdzLmFwcGVuZChsaWJmaWxlKQorCisgICAgICAgICAgICAjIHNvbWUgZGVmYXVsdCBsaWJyYXJpZXMKKyAgICAgICAgICAgIGxkX2FyZ3MuYXBwZW5kKCdpbXBvcnQzMicpCisgICAgICAgICAgICBsZF9hcmdzLmFwcGVuZCgnY3czMm10JykKKworICAgICAgICAgICAgIyBkZWYgZmlsZSBmb3IgZXhwb3J0IHN5bWJvbHMKKyAgICAgICAgICAgIGxkX2FyZ3MuZXh0ZW5kKCgnLCcsZGVmX2ZpbGUpKQorICAgICAgICAgICAgIyBhZGQgcmVzb3VyY2UgZmlsZXMKKyAgICAgICAgICAgIGxkX2FyZ3MuYXBwZW5kKCcsJykKKyAgICAgICAgICAgIGxkX2FyZ3MuZXh0ZW5kKHJlc291cmNlcykKKworCisgICAgICAgICAgICBpZiBleHRyYV9wcmVhcmdzOgorICAgICAgICAgICAgICAgIGxkX2FyZ3NbOjBdID0gZXh0cmFfcHJlYXJncworICAgICAgICAgICAgaWYgZXh0cmFfcG9zdGFyZ3M6CisgICAgICAgICAgICAgICAgbGRfYXJncy5leHRlbmQoZXh0cmFfcG9zdGFyZ3MpCisKKyAgICAgICAgICAgIHNlbGYubWtwYXRoKG9zLnBhdGguZGlybmFtZShvdXRwdXRfZmlsZW5hbWUpKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYubGlua2VyXSArIGxkX2FyZ3MpCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBMaW5rRXJyb3IobXNnKQorCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoInNraXBwaW5nICVzICh1cC10by1kYXRlKSIsIG91dHB1dF9maWxlbmFtZSkKKworICAgICMgLS0gTWlzY2VsbGFuZW91cyBtZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKworICAgIGRlZiBmaW5kX2xpYnJhcnlfZmlsZShzZWxmLCBkaXJzLCBsaWIsIGRlYnVnPUZhbHNlKToKKyAgICAgICAgIyBMaXN0IG9mIGVmZmVjdGl2ZSBsaWJyYXJ5IG5hbWVzIHRvIHRyeSwgaW4gb3JkZXIgb2YgcHJlZmVyZW5jZToKKyAgICAgICAgIyB4eHhfYmNwcC5saWIgaXMgYmV0dGVyIHRoYW4geHh4LmxpYgorICAgICAgICAjIGFuZCB4eHhfZC5saWIgaXMgYmV0dGVyIHRoYW4geHh4LmxpYiBpZiBkZWJ1ZyBpcyBzZXQKKyAgICAgICAgIworICAgICAgICAjIFRoZSAiX2JjcHAiIHN1ZmZpeCBpcyB0byBoYW5kbGUgYSBQeXRob24gaW5zdGFsbGF0aW9uIGZvciBwZW9wbGUKKyAgICAgICAgIyB3aXRoIG11bHRpcGxlIGNvbXBpbGVycyAocHJpbWFyaWx5IFBhY2thZ2luZyBoYWNrZXJzLCBJIHN1c3BlY3QKKyAgICAgICAgIyA7LSkuICBUaGUgaWRlYSBpcyB0aGV5J2QgaGF2ZSBvbmUgc3RhdGljIGxpYnJhcnkgZm9yIGVhY2gKKyAgICAgICAgIyBjb21waWxlciB0aGV5IGNhcmUgYWJvdXQsIHNpbmNlIChhbG1vc3Q/KSBldmVyeSBXaW5kb3dzIGNvbXBpbGVyCisgICAgICAgICMgc2VlbXMgdG8gaGF2ZSBhIGRpZmZlcmVudCBmb3JtYXQgZm9yIHN0YXRpYyBsaWJyYXJpZXMuCisgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgZGxpYiA9IChsaWIgKyAiX2QiKQorICAgICAgICAgICAgdHJ5X25hbWVzID0gKGRsaWIgKyAiX2JjcHAiLCBsaWIgKyAiX2JjcHAiLCBkbGliLCBsaWIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB0cnlfbmFtZXMgPSAobGliICsgIl9iY3BwIiwgbGliKQorCisgICAgICAgIGZvciBkaXIgaW4gZGlyczoKKyAgICAgICAgICAgIGZvciBuYW1lIGluIHRyeV9uYW1lczoKKyAgICAgICAgICAgICAgICBsaWJmaWxlID0gb3MucGF0aC5qb2luKGRpciwgc2VsZi5saWJyYXJ5X2ZpbGVuYW1lKG5hbWUpKQorICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGxpYmZpbGUpOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gbGliZmlsZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBPb3BzLCBkaWRuJ3QgZmluZCBpdCBpbiAqYW55KiBvZiAnZGlycycKKyAgICAgICAgICAgIHJldHVybiBOb25lCisKKyAgICAjIG92ZXJ3cml0ZSB0aGUgb25lIGZyb20gQ0NvbXBpbGVyIHRvIHN1cHBvcnQgcmMgYW5kIHJlcy1maWxlcworICAgIGRlZiBvYmplY3RfZmlsZW5hbWVzKHNlbGYsIHNvdXJjZV9maWxlbmFtZXMsIHN0cmlwX2Rpcj1GYWxzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXRfZGlyPScnKToKKyAgICAgICAgaWYgb3V0cHV0X2RpciBpcyBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2RpciA9ICcnCisgICAgICAgIG9ial9uYW1lcyA9IFtdCisgICAgICAgIGZvciBzcmNfbmFtZSBpbiBzb3VyY2VfZmlsZW5hbWVzOgorICAgICAgICAgICAgIyB1c2Ugbm9ybWNhc2UgdG8gbWFrZSBzdXJlICcucmMnIGlzIHJlYWxseSAnLnJjJyBhbmQgbm90ICcuUkMnCisgICAgICAgICAgICBiYXNlLCBleHQgPSBvcy5wYXRoLnNwbGl0ZXh0KG9zLnBhdGgubm9ybWNhc2Uoc3JjX25hbWUpKQorICAgICAgICAgICAgaWYgZXh0IG5vdCBpbiAoc2VsZi5zcmNfZXh0ZW5zaW9ucyArIFsnLnJjJywnLnJlcyddKToKKyAgICAgICAgICAgICAgICByYWlzZSBVbmtub3duRmlsZUVycm9yKCJ1bmtub3duIGZpbGUgdHlwZSAnJXMnIChmcm9tICclcycpIiAlIFwKKyAgICAgICAgICAgICAgICAgICAgICAoZXh0LCBzcmNfbmFtZSkpCisgICAgICAgICAgICBpZiBzdHJpcF9kaXI6CisgICAgICAgICAgICAgICAgYmFzZSA9IG9zLnBhdGguYmFzZW5hbWUoYmFzZSkKKyAgICAgICAgICAgIGlmIGV4dCA9PSAnLnJlcyc6CisgICAgICAgICAgICAgICAgIyB0aGVzZSBjYW4gZ28gdW5jaGFuZ2VkCisgICAgICAgICAgICAgICAgb2JqX25hbWVzLmFwcGVuZChvcy5wYXRoLmpvaW4ob3V0cHV0X2RpciwgYmFzZSArIGV4dCkpCisgICAgICAgICAgICBlbGlmIGV4dCA9PSAnLnJjJzoKKyAgICAgICAgICAgICAgICAjIHRoZXNlIG5lZWQgdG8gYmUgY29tcGlsZWQgdG8gLnJlcy1maWxlcworICAgICAgICAgICAgICAgIG9ial9uYW1lcy5hcHBlbmQob3MucGF0aC5qb2luKG91dHB1dF9kaXIsIGJhc2UgKyAnLnJlcycpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBzZWxmLm9ial9leHRlbnNpb24pKQorICAgICAgICByZXR1cm4gb2JqX25hbWVzCisKKworICAgIGRlZiBwcmVwcm9jZXNzKHNlbGYsIHNvdXJjZSwgb3V0cHV0X2ZpbGU9Tm9uZSwgbWFjcm9zPU5vbmUsCisgICAgICAgICAgICAgICAgICAgaW5jbHVkZV9kaXJzPU5vbmUsIGV4dHJhX3ByZWFyZ3M9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICBleHRyYV9wb3N0YXJncz1Ob25lKToKKyAgICAgICAgXywgbWFjcm9zLCBpbmNsdWRlX2RpcnMgPSBcCisgICAgICAgICAgICBzZWxmLl9maXhfY29tcGlsZV9hcmdzKE5vbmUsIG1hY3JvcywgaW5jbHVkZV9kaXJzKQorICAgICAgICBwcF9vcHRzID0gZ2VuX3ByZXByb2Nlc3Nfb3B0aW9ucyhtYWNyb3MsIGluY2x1ZGVfZGlycykKKyAgICAgICAgcHBfYXJncyA9IFsnY3BwMzIuZXhlJ10gKyBwcF9vcHRzCisgICAgICAgIGlmIG91dHB1dF9maWxlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgcHBfYXJncy5hcHBlbmQoJy1vJyArIG91dHB1dF9maWxlKQorICAgICAgICBpZiBleHRyYV9wcmVhcmdzOgorICAgICAgICAgICAgcHBfYXJnc1s6MF0gPSBleHRyYV9wcmVhcmdzCisgICAgICAgIGlmIGV4dHJhX3Bvc3RhcmdzOgorICAgICAgICAgICAgcHBfYXJncy5leHRlbmQoZXh0cmFfcG9zdGFyZ3MpCisgICAgICAgIHBwX2FyZ3MuYXBwZW5kKHNvdXJjZSkKKworICAgICAgICAjIFdlIG5lZWQgdG8gcHJlcHJvY2VzczogZWl0aGVyIHdlJ3JlIGJlaW5nIGZvcmNlZCB0bywgb3IgdGhlCisgICAgICAgICMgc291cmNlIGZpbGUgaXMgbmV3ZXIgdGhhbiB0aGUgdGFyZ2V0IChvciB0aGUgdGFyZ2V0IGRvZXNuJ3QKKyAgICAgICAgIyBleGlzdCkuCisgICAgICAgIGlmIHNlbGYuZm9yY2Ugb3Igb3V0cHV0X2ZpbGUgaXMgTm9uZSBvciBuZXdlcihzb3VyY2UsIG91dHB1dF9maWxlKToKKyAgICAgICAgICAgIGlmIG91dHB1dF9maWxlOgorICAgICAgICAgICAgICAgIHNlbGYubWtwYXRoKG9zLnBhdGguZGlybmFtZShvdXRwdXRfZmlsZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihwcF9hcmdzKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKG1zZykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvY2NvbXBpbGVyLnB5IGIvTGliL3BhY2thZ2luZy9jb21waWxlci9jY29tcGlsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOThjNGI2OAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvY2NvbXBpbGVyLnB5CkBAIC0wLDAgKzEsODYzIEBACisiIiJBYnN0cmFjdCBiYXNlIGNsYXNzIGZvciBjb21waWxlcnMuCisKK1RoaXMgbW9kdWxlcyBjb250YWlucyBDQ29tcGlsZXIsIGFuIGFic3RyYWN0IGJhc2UgY2xhc3MgdGhhdCBkZWZpbmVzIHRoZQoraW50ZXJmYWNlIGZvciB0aGUgY29tcGlsZXIgYWJzdHJhY3Rpb24gbW9kZWwgdXNlZCBieSBwYWNrYWdpbmcuCisiIiIKKworaW1wb3J0IG9zCitmcm9tIHNodXRpbCBpbXBvcnQgbW92ZQorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgc3BsaXRfcXVvdGVkLCBleGVjdXRlLCBuZXdlcl9ncm91cCwgc3Bhd24KK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKENvbXBpbGVFcnJvciwgTGlua0Vycm9yLCBVbmtub3duRmlsZUVycm9yKQorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IGdlbl9wcmVwcm9jZXNzX29wdGlvbnMKKworCitjbGFzcyBDQ29tcGlsZXI6CisgICAgIiIiQWJzdHJhY3QgYmFzZSBjbGFzcyB0byBkZWZpbmUgdGhlIGludGVyZmFjZSB0aGF0IG11c3QgYmUgaW1wbGVtZW50ZWQKKyAgICBieSByZWFsIGNvbXBpbGVyIGNsYXNzZXMuICBBbHNvIGhhcyBzb21lIHV0aWxpdHkgbWV0aG9kcyB1c2VkIGJ5CisgICAgc2V2ZXJhbCBjb21waWxlciBjbGFzc2VzLgorCisgICAgVGhlIGJhc2ljIGlkZWEgYmVoaW5kIGEgY29tcGlsZXIgYWJzdHJhY3Rpb24gY2xhc3MgaXMgdGhhdCBlYWNoCisgICAgaW5zdGFuY2UgY2FuIGJlIHVzZWQgZm9yIGFsbCB0aGUgY29tcGlsZS9saW5rIHN0ZXBzIGluIGJ1aWxkaW5nIGEKKyAgICBzaW5nbGUgcHJvamVjdC4gIFRodXMsIGF0dHJpYnV0ZXMgY29tbW9uIHRvIGFsbCBvZiB0aG9zZSBjb21waWxlIGFuZAorICAgIGxpbmsgc3RlcHMgLS0gaW5jbHVkZSBkaXJlY3RvcmllcywgbWFjcm9zIHRvIGRlZmluZSwgbGlicmFyaWVzIHRvIGxpbmsKKyAgICBhZ2FpbnN0LCBldGMuIC0tIGFyZSBhdHRyaWJ1dGVzIG9mIHRoZSBjb21waWxlciBpbnN0YW5jZS4gIFRvIGFsbG93IGZvcgorICAgIHZhcmlhYmlsaXR5IGluIGhvdyBpbmRpdmlkdWFsIGZpbGVzIGFyZSB0cmVhdGVkLCBtb3N0IG9mIHRob3NlCisgICAgYXR0cmlidXRlcyBtYXkgYmUgdmFyaWVkIG9uIGEgcGVyLWNvbXBpbGF0aW9uIG9yIHBlci1saW5rIGJhc2lzLgorICAgICIiIgorCisgICAgIyAnbmFtZScgaXMgYSBjbGFzcyBhdHRyaWJ1dGUgdGhhdCBpZGVudGlmaWVzIHRoaXMgY2xhc3MuICBJdAorICAgICMga2VlcHMgY29kZSB0aGF0IHdhbnRzIHRvIGtub3cgd2hhdCBraW5kIG9mIGNvbXBpbGVyIGl0J3MgZGVhbGluZyB3aXRoCisgICAgIyBmcm9tIGhhdmluZyB0byBpbXBvcnQgYWxsIHBvc3NpYmxlIGNvbXBpbGVyIGNsYXNzZXMganVzdCB0byBkbyBhbgorICAgICMgJ2lzaW5zdGFuY2UnLgorICAgIG5hbWUgPSBOb25lCisgICAgZGVzY3JpcHRpb24gPSBOb25lCisKKyAgICAjIFhYWCB0aGluZ3Mgbm90IGhhbmRsZWQgYnkgdGhpcyBjb21waWxlciBhYnN0cmFjdGlvbiBtb2RlbDoKKyAgICAjICAgKiBjbGllbnQgY2FuJ3QgcHJvdmlkZSBhZGRpdGlvbmFsIG9wdGlvbnMgZm9yIGEgY29tcGlsZXIsCisgICAgIyAgICAgZS5nLiB3YXJuaW5nLCBvcHRpbWl6YXRpb24sIGRlYnVnZ2luZyBmbGFncy4gIFBlcmhhcHMgdGhpcworICAgICMgICAgIHNob3VsZCBiZSB0aGUgZG9tYWluIG9mIGNvbmNyZXRlIGNvbXBpbGVyIGFic3RyYWN0aW9uIGNsYXNzZXMKKyAgICAjICAgICAoVW5peENDb21waWxlciwgTVNWQ0NvbXBpbGVyLCBldGMuKSAtLSBvciBwZXJoYXBzIHRoZSBiYXNlCisgICAgIyAgICAgY2xhc3Mgc2hvdWxkIGhhdmUgbWV0aG9kcyBmb3IgdGhlIGNvbW1vbiBvbmVzLgorICAgICMgICAqIGNhbid0IGNvbXBsZXRlbHkgb3ZlcnJpZGUgdGhlIGluY2x1ZGUgb3IgbGlicmFyeSBzZWFyY2hnCisgICAgIyAgICAgcGF0aCwgaWUuIG5vICJjYyAtSSAtSWRpcjEgLUlkaXIyIiBvciAiY2MgLUwgLUxkaXIxIC1MZGlyMiIuCisgICAgIyAgICAgSSdtIG5vdCBzdXJlIGhvdyB3aWRlbHkgc3VwcG9ydGVkIHRoaXMgaXMgZXZlbiBieSBVbml4CisgICAgIyAgICAgY29tcGlsZXJzLCBtdWNoIGxlc3Mgb24gb3RoZXIgcGxhdGZvcm1zLiAgQW5kIEknbSBldmVuIGxlc3MKKyAgICAjICAgICBzdXJlIGhvdyB1c2VmdWwgaXQgaXM7IG1heWJlIGZvciBjcm9zcy1jb21waWxpbmcsIGJ1dAorICAgICMgICAgIHN1cHBvcnQgZm9yIHRoYXQgaXMgYSB3YXlzIG9mZi4gIChBbmQgYW55d2F5cywgY3Jvc3MKKyAgICAjICAgICBjb21waWxlcnMgcHJvYmFibHkgaGF2ZSBhIGRlZGljYXRlZCBiaW5hcnkgd2l0aCB0aGUKKyAgICAjICAgICByaWdodCBwYXRocyBjb21waWxlZCBpbi4gIEkgaG9wZS4pCisgICAgIyAgICogY2FuJ3QgZG8gcmVhbGx5IGZyZWFreSB0aGluZ3Mgd2l0aCB0aGUgbGlicmFyeSBsaXN0L2xpYnJhcnkKKyAgICAjICAgICBkaXJzLCBlLmcuICItTGRpcjEgLWxmb28gLUxkaXIyIC1sZm9vIiB0byBsaW5rIGFnYWluc3QKKyAgICAjICAgICBkaWZmZXJlbnQgdmVyc2lvbnMgb2YgbGliZm9vLmEgaW4gZGlmZmVyZW50IGxvY2F0aW9ucy4gIEkKKyAgICAjICAgICB0aGluayB0aGlzIGlzIHVzZWxlc3Mgd2l0aG91dCB0aGUgYWJpbGl0eSB0byBudWxsIG91dCB0aGUKKyAgICAjICAgICBsaWJyYXJ5IHNlYXJjaCBwYXRoIGFueXdheXMuCisKKworICAgICMgU3ViY2xhc3NlcyB0aGF0IHJlbHkgb24gdGhlIHN0YW5kYXJkIGZpbGVuYW1lIGdlbmVyYXRpb24gbWV0aG9kcworICAgICMgaW1wbGVtZW50ZWQgYmVsb3cgc2hvdWxkIG92ZXJyaWRlIHRoZXNlOyBzZWUgdGhlIGNvbW1lbnQgbmVhcgorICAgICMgdGhvc2UgbWV0aG9kcyAoJ29iamVjdF9maWxlbmFtZXMoKScgZXQuIGFsLikgZm9yIGRldGFpbHM6CisgICAgc3JjX2V4dGVuc2lvbnMgPSBOb25lICAgICAgICAgICAgICAgIyBsaXN0IG9mIHN0cmluZ3MKKyAgICBvYmpfZXh0ZW5zaW9uID0gTm9uZSAgICAgICAgICAgICAgICAjIHN0cmluZworICAgIHN0YXRpY19saWJfZXh0ZW5zaW9uID0gTm9uZQorICAgIHNoYXJlZF9saWJfZXh0ZW5zaW9uID0gTm9uZSAgICAgICAgICMgc3RyaW5nCisgICAgc3RhdGljX2xpYl9mb3JtYXQgPSBOb25lICAgICAgICAgICAgIyBmb3JtYXQgc3RyaW5nCisgICAgc2hhcmVkX2xpYl9mb3JtYXQgPSBOb25lICAgICAgICAgICAgIyBwcm9iLiBzYW1lIGFzIHN0YXRpY19saWJfZm9ybWF0CisgICAgZXhlX2V4dGVuc2lvbiA9IE5vbmUgICAgICAgICAgICAgICAgIyBzdHJpbmcKKworICAgICMgRGVmYXVsdCBsYW5ndWFnZSBzZXR0aW5ncy4gbGFuZ3VhZ2VfbWFwIGlzIHVzZWQgdG8gZGV0ZWN0IGEgc291cmNlCisgICAgIyBmaWxlIG9yIEV4dGVuc2lvbiB0YXJnZXQgbGFuZ3VhZ2UsIGNoZWNraW5nIHNvdXJjZSBmaWxlbmFtZXMuCisgICAgIyBsYW5ndWFnZV9vcmRlciBpcyB1c2VkIHRvIGRldGVjdCB0aGUgbGFuZ3VhZ2UgcHJlY2VkZW5jZSwgd2hlbiBkZWNpZGluZworICAgICMgd2hhdCBsYW5ndWFnZSB0byB1c2Ugd2hlbiBtaXhpbmcgc291cmNlIHR5cGVzLiBGb3IgZXhhbXBsZSwgaWYgc29tZQorICAgICMgZXh0ZW5zaW9uIGhhcyB0d28gZmlsZXMgd2l0aCAiLmMiIGV4dGVuc2lvbiwgYW5kIG9uZSB3aXRoICIuY3BwIiwgaXQKKyAgICAjIGlzIHN0aWxsIGxpbmtlZCBhcyBjKysuCisgICAgbGFuZ3VhZ2VfbWFwID0geyIuYyI6ICJjIiwKKyAgICAgICAgICAgICAgICAgICAgIi5jYyI6ICJjKysiLAorICAgICAgICAgICAgICAgICAgICAiLmNwcCI6ICJjKysiLAorICAgICAgICAgICAgICAgICAgICAiLmN4eCI6ICJjKysiLAorICAgICAgICAgICAgICAgICAgICAiLm0iOiAib2JqYyIsCisgICAgICAgICAgICAgICAgICAgfQorICAgIGxhbmd1YWdlX29yZGVyID0gWyJjKysiLCAib2JqYyIsICJjIl0KKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkcnlfcnVuPUZhbHNlLCBmb3JjZT1GYWxzZSk6CisgICAgICAgIHNlbGYuZHJ5X3J1biA9IGRyeV9ydW4KKyAgICAgICAgc2VsZi5mb3JjZSA9IGZvcmNlCisKKyAgICAgICAgIyAnb3V0cHV0X2Rpcic6IGEgY29tbW9uIG91dHB1dCBkaXJlY3RvcnkgZm9yIG9iamVjdCwgbGlicmFyeSwKKyAgICAgICAgIyBzaGFyZWQgb2JqZWN0LCBhbmQgc2hhcmVkIGxpYnJhcnkgZmlsZXMKKyAgICAgICAgc2VsZi5vdXRwdXRfZGlyID0gTm9uZQorCisgICAgICAgICMgJ21hY3Jvcyc6IGEgbGlzdCBvZiBtYWNybyBkZWZpbml0aW9ucyAob3IgdW5kZWZpbml0aW9ucykuICBBCisgICAgICAgICMgbWFjcm8gZGVmaW5pdGlvbiBpcyBhIDItdHVwbGUgKG5hbWUsIHZhbHVlKSwgd2hlcmUgdGhlIHZhbHVlIGlzCisgICAgICAgICMgZWl0aGVyIGEgc3RyaW5nIG9yIE5vbmUgKG5vIGV4cGxpY2l0IHZhbHVlKS4gIEEgbWFjcm8KKyAgICAgICAgIyB1bmRlZmluaXRpb24gaXMgYSAxLXR1cGxlIChuYW1lLCkuCisgICAgICAgIHNlbGYubWFjcm9zID0gW10KKworICAgICAgICAjICdpbmNsdWRlX2RpcnMnOiBhIGxpc3Qgb2YgZGlyZWN0b3JpZXMgdG8gc2VhcmNoIGZvciBpbmNsdWRlIGZpbGVzCisgICAgICAgIHNlbGYuaW5jbHVkZV9kaXJzID0gW10KKworICAgICAgICAjICdsaWJyYXJpZXMnOiBhIGxpc3Qgb2YgbGlicmFyaWVzIHRvIGluY2x1ZGUgaW4gYW55IGxpbmsKKyAgICAgICAgIyAobGlicmFyeSBuYW1lcywgbm90IGZpbGVuYW1lczogZWcuICJmb28iIG5vdCAibGliZm9vLmEiKQorICAgICAgICBzZWxmLmxpYnJhcmllcyA9IFtdCisKKyAgICAgICAgIyAnbGlicmFyeV9kaXJzJzogYSBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIHNlYXJjaCBmb3IgbGlicmFyaWVzCisgICAgICAgIHNlbGYubGlicmFyeV9kaXJzID0gW10KKworICAgICAgICAjICdydW50aW1lX2xpYnJhcnlfZGlycyc6IGEgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yCisgICAgICAgICMgc2hhcmVkIGxpYnJhcmllcy9vYmplY3RzIGF0IHJ1bnRpbWUKKyAgICAgICAgc2VsZi5ydW50aW1lX2xpYnJhcnlfZGlycyA9IFtdCisKKyAgICAgICAgIyAnb2JqZWN0cyc6IGEgbGlzdCBvZiBvYmplY3QgZmlsZXMgKG9yIHNpbWlsYXIsIHN1Y2ggYXMgZXhwbGljaXRseQorICAgICAgICAjIG5hbWVkIGxpYnJhcnkgZmlsZXMpIHRvIGluY2x1ZGUgb24gYW55IGxpbmsKKyAgICAgICAgc2VsZi5vYmplY3RzID0gW10KKworICAgICAgICBmb3Iga2V5LCB2YWx1ZSBpbiBzZWxmLmV4ZWN1dGFibGVzLml0ZW1zKCk6CisgICAgICAgICAgICBzZWxmLnNldF9leGVjdXRhYmxlKGtleSwgdmFsdWUpCisKKyAgICBkZWYgc2V0X2V4ZWN1dGFibGVzKHNlbGYsICoqYXJncyk6CisgICAgICAgICIiIkRlZmluZSB0aGUgZXhlY3V0YWJsZXMgKGFuZCBvcHRpb25zIGZvciB0aGVtKSB0aGF0IHdpbGwgYmUgcnVuCisgICAgICAgIHRvIHBlcmZvcm0gdGhlIHZhcmlvdXMgc3RhZ2VzIG9mIGNvbXBpbGF0aW9uLiAgVGhlIGV4YWN0IHNldCBvZgorICAgICAgICBleGVjdXRhYmxlcyB0aGF0IG1heSBiZSBzcGVjaWZpZWQgaGVyZSBkZXBlbmRzIG9uIHRoZSBjb21waWxlcgorICAgICAgICBjbGFzcyAodmlhIHRoZSAnZXhlY3V0YWJsZXMnIGNsYXNzIGF0dHJpYnV0ZSksIGJ1dCBtb3N0IHdpbGwgaGF2ZToKKyAgICAgICAgICBjb21waWxlciAgICAgIHRoZSBDL0MrKyBjb21waWxlcgorICAgICAgICAgIGxpbmtlcl9zbyAgICAgbGlua2VyIHVzZWQgdG8gY3JlYXRlIHNoYXJlZCBvYmplY3RzIGFuZCBsaWJyYXJpZXMKKyAgICAgICAgICBsaW5rZXJfZXhlICAgIGxpbmtlciB1c2VkIHRvIGNyZWF0ZSBiaW5hcnkgZXhlY3V0YWJsZXMKKyAgICAgICAgICBhcmNoaXZlciAgICAgIHN0YXRpYyBsaWJyYXJ5IGNyZWF0b3IKKworICAgICAgICBPbiBwbGF0Zm9ybXMgd2l0aCBhIGNvbW1hbmQgbGluZSAoVW5peCwgRE9TL1dpbmRvd3MpLCBlYWNoIG9mIHRoZXNlCisgICAgICAgIGlzIGEgc3RyaW5nIHRoYXQgd2lsbCBiZSBzcGxpdCBpbnRvIGV4ZWN1dGFibGUgbmFtZSBhbmQgKG9wdGlvbmFsKQorICAgICAgICBsaXN0IG9mIGFyZ3VtZW50cy4gIChTcGxpdHRpbmcgdGhlIHN0cmluZyBpcyBkb25lIHNpbWlsYXJseSB0byBob3cKKyAgICAgICAgVW5peCBzaGVsbHMgb3BlcmF0ZTogd29yZHMgYXJlIGRlbGltaXRlZCBieSBzcGFjZXMsIGJ1dCBxdW90ZXMgYW5kCisgICAgICAgIGJhY2tzbGFzaGVzIGNhbiBvdmVycmlkZSB0aGlzLiAgU2VlCisgICAgICAgICdkaXN0dXRpbHMudXRpbC5zcGxpdF9xdW90ZWQoKScuKQorICAgICAgICAiIiIKKworICAgICAgICAjIE5vdGUgdGhhdCBzb21lIENDb21waWxlciBpbXBsZW1lbnRhdGlvbiBjbGFzc2VzIHdpbGwgZGVmaW5lIGNsYXNzCisgICAgICAgICMgYXR0cmlidXRlcyAnY3BwJywgJ2NjJywgZXRjLiB3aXRoIGhhcmQtY29kZWQgZXhlY3V0YWJsZSBuYW1lczsKKyAgICAgICAgIyB0aGlzIGlzIGFwcHJvcHJpYXRlIHdoZW4gYSBjb21waWxlciBjbGFzcyBpcyBmb3IgZXhhY3RseSBvbmUKKyAgICAgICAgIyBjb21waWxlci9PUyBjb21iaW5hdGlvbiAoZWcuIE1TVkNDb21waWxlcikuICBPdGhlciBjb21waWxlcgorICAgICAgICAjIGNsYXNzZXMgKFVuaXhDQ29tcGlsZXIsIGluIHBhcnRpY3VsYXIpIGFyZSBkcml2ZW4gYnkgaW5mb3JtYXRpb24KKyAgICAgICAgIyBkaXNjb3ZlcmVkIGF0IHJ1bi10aW1lLCBzaW5jZSB0aGVyZSBhcmUgbWFueSBkaWZmZXJlbnQgd2F5cyB0byBkbworICAgICAgICAjIGJhc2ljYWxseSB0aGUgc2FtZSB0aGluZ3Mgd2l0aCBVbml4IEMgY29tcGlsZXJzLgorCisgICAgICAgIGZvciBrZXksIHZhbHVlIGluIGFyZ3MuaXRlbXMoKToKKyAgICAgICAgICAgIGlmIGtleSBub3QgaW4gc2VsZi5leGVjdXRhYmxlczoKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJ1bmtub3duIGV4ZWN1dGFibGUgJyVzJyBmb3IgY2xhc3MgJXMiICUgXAorICAgICAgICAgICAgICAgICAgICAgIChrZXksIHNlbGYuX19jbGFzc19fLl9fbmFtZV9fKSkKKyAgICAgICAgICAgIHNlbGYuc2V0X2V4ZWN1dGFibGUoa2V5LCB2YWx1ZSkKKworICAgIGRlZiBzZXRfZXhlY3V0YWJsZShzZWxmLCBrZXksIHZhbHVlKToKKyAgICAgICAgaWYgaXNpbnN0YW5jZSh2YWx1ZSwgc3RyKToKKyAgICAgICAgICAgIHNldGF0dHIoc2VsZiwga2V5LCBzcGxpdF9xdW90ZWQodmFsdWUpKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBrZXksIHZhbHVlKQorCisgICAgZGVmIF9maW5kX21hY3JvKHNlbGYsIG5hbWUpOgorICAgICAgICBpID0gMAorICAgICAgICBmb3IgZGVmbiBpbiBzZWxmLm1hY3JvczoKKyAgICAgICAgICAgIGlmIGRlZm5bMF0gPT0gbmFtZToKKyAgICAgICAgICAgICAgICByZXR1cm4gaQorICAgICAgICAgICAgaSA9IGkgKyAxCisgICAgICAgIHJldHVybiBOb25lCisKKyAgICBkZWYgX2NoZWNrX21hY3JvX2RlZmluaXRpb25zKHNlbGYsIGRlZmluaXRpb25zKToKKyAgICAgICAgIiIiRW5zdXJlcyB0aGF0IGV2ZXJ5IGVsZW1lbnQgb2YgJ2RlZmluaXRpb25zJyBpcyBhIHZhbGlkIG1hY3JvCisgICAgICAgIGRlZmluaXRpb24sIGllLiBlaXRoZXIgKG5hbWUsdmFsdWUpIDItdHVwbGUgb3IgYSAobmFtZSwpIHR1cGxlLiAgRG8KKyAgICAgICAgbm90aGluZyBpZiBhbGwgZGVmaW5pdGlvbnMgYXJlIE9LLCByYWlzZSBUeXBlRXJyb3Igb3RoZXJ3aXNlLgorICAgICAgICAiIiIKKyAgICAgICAgZm9yIGRlZm4gaW4gZGVmaW5pdGlvbnM6CisgICAgICAgICAgICBpZiBub3QgKGlzaW5zdGFuY2UoZGVmbiwgdHVwbGUpIGFuZAorICAgICAgICAgICAgICAgICAgICAobGVuKGRlZm4pID09IDEgb3IKKyAgICAgICAgICAgICAgICAgICAgIChsZW4oZGVmbikgPT0gMiBhbmQKKyAgICAgICAgICAgICAgICAgICAgICAoaXNpbnN0YW5jZShkZWZuWzFdLCBzdHIpIG9yIGRlZm5bMV0gaXMgTm9uZSkpKSBhbmQKKyAgICAgICAgICAgICAgICAgICAgaXNpbnN0YW5jZShkZWZuWzBdLCBzdHIpKToKKyAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoKCJpbnZhbGlkIG1hY3JvIGRlZmluaXRpb24gJyVzJzogIiAlIGRlZm4pICsgXAorICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIHR1cGxlIChzdHJpbmcsKSwgKHN0cmluZywgc3RyaW5nKSwgb3IgIiArIFwKKyAgICAgICAgICAgICAgICAgICAgICAiKHN0cmluZywgTm9uZSkiKQorCisKKyAgICAjIC0tIEJvb2trZWVwaW5nIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgZGVmIGRlZmluZV9tYWNybyhzZWxmLCBuYW1lLCB2YWx1ZT1Ob25lKToKKyAgICAgICAgIiIiRGVmaW5lIGEgcHJlcHJvY2Vzc29yIG1hY3JvIGZvciBhbGwgY29tcGlsYXRpb25zIGRyaXZlbiBieSB0aGlzCisgICAgICAgIGNvbXBpbGVyIG9iamVjdC4gIFRoZSBvcHRpb25hbCBwYXJhbWV0ZXIgJ3ZhbHVlJyBzaG91bGQgYmUgYQorICAgICAgICBzdHJpbmc7IGlmIGl0IGlzIG5vdCBzdXBwbGllZCwgdGhlbiB0aGUgbWFjcm8gd2lsbCBiZSBkZWZpbmVkCisgICAgICAgIHdpdGhvdXQgYW4gZXhwbGljaXQgdmFsdWUgYW5kIHRoZSBleGFjdCBvdXRjb21lIGRlcGVuZHMgb24gdGhlCisgICAgICAgIGNvbXBpbGVyIHVzZWQgKFhYWCB0cnVlPyBkb2VzIEFOU0kgc2F5IGFueXRoaW5nIGFib3V0IHRoaXM/KQorICAgICAgICAiIiIKKyAgICAgICAgIyBEZWxldGUgZnJvbSB0aGUgbGlzdCBvZiBtYWNybyBkZWZpbml0aW9ucy91bmRlZmluaXRpb25zIGlmCisgICAgICAgICMgYWxyZWFkeSB0aGVyZSAoc28gdGhhdCB0aGlzIG9uZSB3aWxsIHRha2UgcHJlY2VkZW5jZSkuCisgICAgICAgIGkgPSBzZWxmLl9maW5kX21hY3JvKG5hbWUpCisgICAgICAgIGlmIGkgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBkZWwgc2VsZi5tYWNyb3NbaV0KKworICAgICAgICBkZWZuID0gKG5hbWUsIHZhbHVlKQorICAgICAgICBzZWxmLm1hY3Jvcy5hcHBlbmQoZGVmbikKKworICAgIGRlZiB1bmRlZmluZV9tYWNybyhzZWxmLCBuYW1lKToKKyAgICAgICAgIiIiVW5kZWZpbmUgYSBwcmVwcm9jZXNzb3IgbWFjcm8gZm9yIGFsbCBjb21waWxhdGlvbnMgZHJpdmVuIGJ5CisgICAgICAgIHRoaXMgY29tcGlsZXIgb2JqZWN0LiAgSWYgdGhlIHNhbWUgbWFjcm8gaXMgZGVmaW5lZCBieQorICAgICAgICAnZGVmaW5lX21hY3JvKCknIGFuZCB1bmRlZmluZWQgYnkgJ3VuZGVmaW5lX21hY3JvKCknIHRoZSBsYXN0IGNhbGwKKyAgICAgICAgdGFrZXMgcHJlY2VkZW5jZSAoaW5jbHVkaW5nIG11bHRpcGxlIHJlZGVmaW5pdGlvbnMgb3IKKyAgICAgICAgdW5kZWZpbml0aW9ucykuICBJZiB0aGUgbWFjcm8gaXMgcmVkZWZpbmVkL3VuZGVmaW5lZCBvbiBhCisgICAgICAgIHBlci1jb21waWxhdGlvbiBiYXNpcyAoaWUuIGluIHRoZSBjYWxsIHRvICdjb21waWxlKCknKSwgdGhlbiB0aGF0CisgICAgICAgIHRha2VzIHByZWNlZGVuY2UuCisgICAgICAgICIiIgorICAgICAgICAjIERlbGV0ZSBmcm9tIHRoZSBsaXN0IG9mIG1hY3JvIGRlZmluaXRpb25zL3VuZGVmaW5pdGlvbnMgaWYKKyAgICAgICAgIyBhbHJlYWR5IHRoZXJlIChzbyB0aGF0IHRoaXMgb25lIHdpbGwgdGFrZSBwcmVjZWRlbmNlKS4KKyAgICAgICAgaSA9IHNlbGYuX2ZpbmRfbWFjcm8obmFtZSkKKyAgICAgICAgaWYgaSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIGRlbCBzZWxmLm1hY3Jvc1tpXQorCisgICAgICAgIHVuZGVmbiA9IChuYW1lLCkKKyAgICAgICAgc2VsZi5tYWNyb3MuYXBwZW5kKHVuZGVmbikKKworICAgIGRlZiBhZGRfaW5jbHVkZV9kaXIoc2VsZiwgZGlyKToKKyAgICAgICAgIiIiQWRkICdkaXInIHRvIHRoZSBsaXN0IG9mIGRpcmVjdG9yaWVzIHRoYXQgd2lsbCBiZSBzZWFyY2hlZCBmb3IKKyAgICAgICAgaGVhZGVyIGZpbGVzLiAgVGhlIGNvbXBpbGVyIGlzIGluc3RydWN0ZWQgdG8gc2VhcmNoIGRpcmVjdG9yaWVzIGluCisgICAgICAgIHRoZSBvcmRlciBpbiB3aGljaCB0aGV5IGFyZSBzdXBwbGllZCBieSBzdWNjZXNzaXZlIGNhbGxzIHRvCisgICAgICAgICdhZGRfaW5jbHVkZV9kaXIoKScuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLmluY2x1ZGVfZGlycy5hcHBlbmQoZGlyKQorCisgICAgZGVmIHNldF9pbmNsdWRlX2RpcnMoc2VsZiwgZGlycyk6CisgICAgICAgICIiIlNldCB0aGUgbGlzdCBvZiBkaXJlY3RvcmllcyB0aGF0IHdpbGwgYmUgc2VhcmNoZWQgdG8gJ2RpcnMnIChhCisgICAgICAgIGxpc3Qgb2Ygc3RyaW5ncykuICBPdmVycmlkZXMgYW55IHByZWNlZGluZyBjYWxscyB0bworICAgICAgICAnYWRkX2luY2x1ZGVfZGlyKCknOyBzdWJzZXF1ZW5jZSBjYWxscyB0byAnYWRkX2luY2x1ZGVfZGlyKCknIGFkZAorICAgICAgICB0byB0aGUgbGlzdCBwYXNzZWQgdG8gJ3NldF9pbmNsdWRlX2RpcnMoKScuICBUaGlzIGRvZXMgbm90IGFmZmVjdAorICAgICAgICBhbnkgbGlzdCBvZiBzdGFuZGFyZCBpbmNsdWRlIGRpcmVjdG9yaWVzIHRoYXQgdGhlIGNvbXBpbGVyIG1heQorICAgICAgICBzZWFyY2ggYnkgZGVmYXVsdC4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuaW5jbHVkZV9kaXJzID0gZGlyc1s6XQorCisgICAgZGVmIGFkZF9saWJyYXJ5KHNlbGYsIGxpYm5hbWUpOgorICAgICAgICAiIiJBZGQgJ2xpYm5hbWUnIHRvIHRoZSBsaXN0IG9mIGxpYnJhcmllcyB0aGF0IHdpbGwgYmUgaW5jbHVkZWQgaW4KKyAgICAgICAgYWxsIGxpbmtzIGRyaXZlbiBieSB0aGlzIGNvbXBpbGVyIG9iamVjdC4gIE5vdGUgdGhhdCAnbGlibmFtZScKKyAgICAgICAgc2hvdWxkICpub3QqIGJlIHRoZSBuYW1lIG9mIGEgZmlsZSBjb250YWluaW5nIGEgbGlicmFyeSwgYnV0IHRoZQorICAgICAgICBuYW1lIG9mIHRoZSBsaWJyYXJ5IGl0c2VsZjogdGhlIGFjdHVhbCBmaWxlbmFtZSB3aWxsIGJlIGluZmVycmVkIGJ5CisgICAgICAgIHRoZSBsaW5rZXIsIHRoZSBjb21waWxlciwgb3IgdGhlIGNvbXBpbGVyIGNsYXNzIChkZXBlbmRpbmcgb24gdGhlCisgICAgICAgIHBsYXRmb3JtKS4KKworICAgICAgICBUaGUgbGlua2VyIHdpbGwgYmUgaW5zdHJ1Y3RlZCB0byBsaW5rIGFnYWluc3QgbGlicmFyaWVzIGluIHRoZQorICAgICAgICBvcmRlciB0aGV5IHdlcmUgc3VwcGxpZWQgdG8gJ2FkZF9saWJyYXJ5KCknIGFuZC9vcgorICAgICAgICAnc2V0X2xpYnJhcmllcygpJy4gIEl0IGlzIHBlcmZlY3RseSB2YWxpZCB0byBkdXBsaWNhdGUgbGlicmFyeQorICAgICAgICBuYW1lczsgdGhlIGxpbmtlciB3aWxsIGJlIGluc3RydWN0ZWQgdG8gbGluayBhZ2FpbnN0IGxpYnJhcmllcyBhcworICAgICAgICBtYW55IHRpbWVzIGFzIHRoZXkgYXJlIG1lbnRpb25lZC4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYubGlicmFyaWVzLmFwcGVuZChsaWJuYW1lKQorCisgICAgZGVmIHNldF9saWJyYXJpZXMoc2VsZiwgbGlibmFtZXMpOgorICAgICAgICAiIiJTZXQgdGhlIGxpc3Qgb2YgbGlicmFyaWVzIHRvIGJlIGluY2x1ZGVkIGluIGFsbCBsaW5rcyBkcml2ZW4gYnkKKyAgICAgICAgdGhpcyBjb21waWxlciBvYmplY3QgdG8gJ2xpYm5hbWVzJyAoYSBsaXN0IG9mIHN0cmluZ3MpLiAgVGhpcyBkb2VzCisgICAgICAgIG5vdCBhZmZlY3QgYW55IHN0YW5kYXJkIHN5c3RlbSBsaWJyYXJpZXMgdGhhdCB0aGUgbGlua2VyIG1heQorICAgICAgICBpbmNsdWRlIGJ5IGRlZmF1bHQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLmxpYnJhcmllcyA9IGxpYm5hbWVzWzpdCisKKworICAgIGRlZiBhZGRfbGlicmFyeV9kaXIoc2VsZiwgZGlyKToKKyAgICAgICAgIiIiQWRkICdkaXInIHRvIHRoZSBsaXN0IG9mIGRpcmVjdG9yaWVzIHRoYXQgd2lsbCBiZSBzZWFyY2hlZCBmb3IKKyAgICAgICAgbGlicmFyaWVzIHNwZWNpZmllZCB0byAnYWRkX2xpYnJhcnkoKScgYW5kICdzZXRfbGlicmFyaWVzKCknLiAgVGhlCisgICAgICAgIGxpbmtlciB3aWxsIGJlIGluc3RydWN0ZWQgdG8gc2VhcmNoIGZvciBsaWJyYXJpZXMgaW4gdGhlIG9yZGVyIHRoZXkKKyAgICAgICAgYXJlIHN1cHBsaWVkIHRvICdhZGRfbGlicmFyeV9kaXIoKScgYW5kL29yICdzZXRfbGlicmFyeV9kaXJzKCknLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMuYXBwZW5kKGRpcikKKworICAgIGRlZiBzZXRfbGlicmFyeV9kaXJzKHNlbGYsIGRpcnMpOgorICAgICAgICAiIiJTZXQgdGhlIGxpc3Qgb2YgbGlicmFyeSBzZWFyY2ggZGlyZWN0b3JpZXMgdG8gJ2RpcnMnIChhIGxpc3Qgb2YKKyAgICAgICAgc3RyaW5ncykuICBUaGlzIGRvZXMgbm90IGFmZmVjdCBhbnkgc3RhbmRhcmQgbGlicmFyeSBzZWFyY2ggcGF0aAorICAgICAgICB0aGF0IHRoZSBsaW5rZXIgbWF5IHNlYXJjaCBieSBkZWZhdWx0LgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMgPSBkaXJzWzpdCisKKyAgICBkZWYgYWRkX3J1bnRpbWVfbGlicmFyeV9kaXIoc2VsZiwgZGlyKToKKyAgICAgICAgIiIiQWRkICdkaXInIHRvIHRoZSBsaXN0IG9mIGRpcmVjdG9yaWVzIHRoYXQgd2lsbCBiZSBzZWFyY2hlZCBmb3IKKyAgICAgICAgc2hhcmVkIGxpYnJhcmllcyBhdCBydW50aW1lLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5ydW50aW1lX2xpYnJhcnlfZGlycy5hcHBlbmQoZGlyKQorCisgICAgZGVmIHNldF9ydW50aW1lX2xpYnJhcnlfZGlycyhzZWxmLCBkaXJzKToKKyAgICAgICAgIiIiU2V0IHRoZSBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIHNlYXJjaCBmb3Igc2hhcmVkIGxpYnJhcmllcyBhdAorICAgICAgICBydW50aW1lIHRvICdkaXJzJyAoYSBsaXN0IG9mIHN0cmluZ3MpLiAgVGhpcyBkb2VzIG5vdCBhZmZlY3QgYW55CisgICAgICAgIHN0YW5kYXJkIHNlYXJjaCBwYXRoIHRoYXQgdGhlIHJ1bnRpbWUgbGlua2VyIG1heSBzZWFyY2ggYnkKKyAgICAgICAgZGVmYXVsdC4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYucnVudGltZV9saWJyYXJ5X2RpcnMgPSBkaXJzWzpdCisKKyAgICBkZWYgYWRkX2xpbmtfb2JqZWN0KHNlbGYsIG9iamVjdCk6CisgICAgICAgICIiIkFkZCAnb2JqZWN0JyB0byB0aGUgbGlzdCBvZiBvYmplY3QgZmlsZXMgKG9yIGFuYWxvZ3Vlcywgc3VjaCBhcworICAgICAgICBleHBsaWNpdGx5IG5hbWVkIGxpYnJhcnkgZmlsZXMgb3IgdGhlIG91dHB1dCBvZiAicmVzb3VyY2UKKyAgICAgICAgY29tcGlsZXJzIikgdG8gYmUgaW5jbHVkZWQgaW4gZXZlcnkgbGluayBkcml2ZW4gYnkgdGhpcyBjb21waWxlcgorICAgICAgICBvYmplY3QuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLm9iamVjdHMuYXBwZW5kKG9iamVjdCkKKworICAgIGRlZiBzZXRfbGlua19vYmplY3RzKHNlbGYsIG9iamVjdHMpOgorICAgICAgICAiIiJTZXQgdGhlIGxpc3Qgb2Ygb2JqZWN0IGZpbGVzIChvciBhbmFsb2d1ZXMpIHRvIGJlIGluY2x1ZGVkIGluCisgICAgICAgIGV2ZXJ5IGxpbmsgdG8gJ29iamVjdHMnLiAgVGhpcyBkb2VzIG5vdCBhZmZlY3QgYW55IHN0YW5kYXJkIG9iamVjdAorICAgICAgICBmaWxlcyB0aGF0IHRoZSBsaW5rZXIgbWF5IGluY2x1ZGUgYnkgZGVmYXVsdCAoc3VjaCBhcyBzeXN0ZW0KKyAgICAgICAgbGlicmFyaWVzKS4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYub2JqZWN0cyA9IG9iamVjdHNbOl0KKworCisgICAgIyAtLSBQcml2YXRlIHV0aWxpdHkgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICMgKGhlcmUgZm9yIHRoZSBjb252ZW5pZW5jZSBvZiBzdWJjbGFzc2VzKQorCisgICAgIyBIZWxwZXIgbWV0aG9kIHRvIHByZXAgY29tcGlsZXIgaW4gc3ViY2xhc3MgY29tcGlsZSgpIG1ldGhvZHMKKyAgICBkZWYgX3NldHVwX2NvbXBpbGUoc2VsZiwgb3V0ZGlyLCBtYWNyb3MsIGluY2RpcnMsIHNvdXJjZXMsIGRlcGVuZHMsCisgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhKToKKyAgICAgICAgIiIiUHJvY2VzcyBhcmd1bWVudHMgYW5kIGRlY2lkZSB3aGljaCBzb3VyY2UgZmlsZXMgdG8gY29tcGlsZS4iIiIKKyAgICAgICAgaWYgb3V0ZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBvdXRkaXIgPSBzZWxmLm91dHB1dF9kaXIKKyAgICAgICAgZWxpZiBub3QgaXNpbnN0YW5jZShvdXRkaXIsIHN0cik6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIidvdXRwdXRfZGlyJyBtdXN0IGJlIGEgc3RyaW5nIG9yIE5vbmUiKQorCisgICAgICAgIGlmIG1hY3JvcyBpcyBOb25lOgorICAgICAgICAgICAgbWFjcm9zID0gc2VsZi5tYWNyb3MKKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKG1hY3JvcywgbGlzdCk6CisgICAgICAgICAgICBtYWNyb3MgPSBtYWNyb3MgKyAoc2VsZi5tYWNyb3Mgb3IgW10pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIidtYWNyb3MnIChpZiBzdXBwbGllZCkgbXVzdCBiZSBhIGxpc3Qgb2YgdHVwbGVzIikKKworICAgICAgICBpZiBpbmNkaXJzIGlzIE5vbmU6CisgICAgICAgICAgICBpbmNkaXJzID0gc2VsZi5pbmNsdWRlX2RpcnMKKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKGluY2RpcnMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgaW5jZGlycyA9IGxpc3QoaW5jZGlycykgKyAoc2VsZi5pbmNsdWRlX2RpcnMgb3IgW10pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoCisgICAgICAgICAgICAgICAgIidpbmNsdWRlX2RpcnMnIChpZiBzdXBwbGllZCkgbXVzdCBiZSBhIGxpc3Qgb2Ygc3RyaW5ncyIpCisKKyAgICAgICAgaWYgZXh0cmEgaXMgTm9uZToKKyAgICAgICAgICAgIGV4dHJhID0gW10KKworICAgICAgICAjIEdldCB0aGUgbGlzdCBvZiBleHBlY3RlZCBvdXRwdXQgKG9iamVjdCkgZmlsZXMKKyAgICAgICAgb2JqZWN0cyA9IHNlbGYub2JqZWN0X2ZpbGVuYW1lcyhzb3VyY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlwX2Rpcj1GYWxzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXRfZGlyPW91dGRpcikKKyAgICAgICAgYXNzZXJ0IGxlbihvYmplY3RzKSA9PSBsZW4oc291cmNlcykKKworICAgICAgICBwcF9vcHRzID0gZ2VuX3ByZXByb2Nlc3Nfb3B0aW9ucyhtYWNyb3MsIGluY2RpcnMpCisKKyAgICAgICAgYnVpbGQgPSB7fQorICAgICAgICBmb3IgaSBpbiByYW5nZShsZW4oc291cmNlcykpOgorICAgICAgICAgICAgc3JjID0gc291cmNlc1tpXQorICAgICAgICAgICAgb2JqID0gb2JqZWN0c1tpXQorICAgICAgICAgICAgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChzcmMpWzFdCisgICAgICAgICAgICBzZWxmLm1rcGF0aChvcy5wYXRoLmRpcm5hbWUob2JqKSkKKyAgICAgICAgICAgIGJ1aWxkW29ial0gPSAoc3JjLCBleHQpCisKKyAgICAgICAgcmV0dXJuIG1hY3Jvcywgb2JqZWN0cywgZXh0cmEsIHBwX29wdHMsIGJ1aWxkCisKKyAgICBkZWYgX2dldF9jY19hcmdzKHNlbGYsIHBwX29wdHMsIGRlYnVnLCBiZWZvcmUpOgorICAgICAgICAjIHdvcmtzIGZvciB1bml4Y2NvbXBpbGVyIGFuZCBjeWd3aW5jY29tcGlsZXIKKyAgICAgICAgY2NfYXJncyA9IHBwX29wdHMgKyBbJy1jJ10KKyAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICBjY19hcmdzWzowXSA9IFsnLWcnXQorICAgICAgICBpZiBiZWZvcmU6CisgICAgICAgICAgICBjY19hcmdzWzowXSA9IGJlZm9yZQorICAgICAgICByZXR1cm4gY2NfYXJncworCisgICAgZGVmIF9maXhfY29tcGlsZV9hcmdzKHNlbGYsIG91dHB1dF9kaXIsIG1hY3JvcywgaW5jbHVkZV9kaXJzKToKKyAgICAgICAgIiIiVHlwZWNoZWNrIGFuZCBmaXgtdXAgc29tZSBvZiB0aGUgYXJndW1lbnRzIHRvIHRoZSAnY29tcGlsZSgpJworICAgICAgICBtZXRob2QsIGFuZCByZXR1cm4gZml4ZWQtdXAgdmFsdWVzLiAgU3BlY2lmaWNhbGx5OiBpZiAnb3V0cHV0X2RpcicKKyAgICAgICAgaXMgTm9uZSwgcmVwbGFjZXMgaXQgd2l0aCAnc2VsZi5vdXRwdXRfZGlyJzsgZW5zdXJlcyB0aGF0ICdtYWNyb3MnCisgICAgICAgIGlzIGEgbGlzdCwgYW5kIGF1Z21lbnRzIGl0IHdpdGggJ3NlbGYubWFjcm9zJzsgZW5zdXJlcyB0aGF0CisgICAgICAgICdpbmNsdWRlX2RpcnMnIGlzIGEgbGlzdCwgYW5kIGF1Z21lbnRzIGl0IHdpdGggJ3NlbGYuaW5jbHVkZV9kaXJzJy4KKyAgICAgICAgR3VhcmFudGVlcyB0aGF0IHRoZSByZXR1cm5lZCB2YWx1ZXMgYXJlIG9mIHRoZSBjb3JyZWN0IHR5cGUsCisgICAgICAgIGkuZS4gZm9yICdvdXRwdXRfZGlyJyBlaXRoZXIgc3RyaW5nIG9yIE5vbmUsIGFuZCBmb3IgJ21hY3JvcycgYW5kCisgICAgICAgICdpbmNsdWRlX2RpcnMnIGVpdGhlciBsaXN0IG9yIE5vbmUuCisgICAgICAgICIiIgorICAgICAgICBpZiBvdXRwdXRfZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBvdXRwdXRfZGlyID0gc2VsZi5vdXRwdXRfZGlyCisgICAgICAgIGVsaWYgbm90IGlzaW5zdGFuY2Uob3V0cHV0X2Rpciwgc3RyKToKKyAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiJ291dHB1dF9kaXInIG11c3QgYmUgYSBzdHJpbmcgb3IgTm9uZSIpCisKKyAgICAgICAgaWYgbWFjcm9zIGlzIE5vbmU6CisgICAgICAgICAgICBtYWNyb3MgPSBzZWxmLm1hY3JvcworICAgICAgICBlbGlmIGlzaW5zdGFuY2UobWFjcm9zLCBsaXN0KToKKyAgICAgICAgICAgIG1hY3JvcyA9IG1hY3JvcyArIChzZWxmLm1hY3JvcyBvciBbXSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiJ21hY3JvcycgKGlmIHN1cHBsaWVkKSBtdXN0IGJlIGEgbGlzdCBvZiB0dXBsZXMiKQorCisgICAgICAgIGlmIGluY2x1ZGVfZGlycyBpcyBOb25lOgorICAgICAgICAgICAgaW5jbHVkZV9kaXJzID0gc2VsZi5pbmNsdWRlX2RpcnMKKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKGluY2x1ZGVfZGlycywgKGxpc3QsIHR1cGxlKSk6CisgICAgICAgICAgICBpbmNsdWRlX2RpcnMgPSBsaXN0KGluY2x1ZGVfZGlycykgKyAoc2VsZi5pbmNsdWRlX2RpcnMgb3IgW10pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoCisgICAgICAgICAgICAgICAgIidpbmNsdWRlX2RpcnMnIChpZiBzdXBwbGllZCkgbXVzdCBiZSBhIGxpc3Qgb2Ygc3RyaW5ncyIpCisKKyAgICAgICAgcmV0dXJuIG91dHB1dF9kaXIsIG1hY3JvcywgaW5jbHVkZV9kaXJzCisKKyAgICBkZWYgX2ZpeF9vYmplY3RfYXJncyhzZWxmLCBvYmplY3RzLCBvdXRwdXRfZGlyKToKKyAgICAgICAgIiIiVHlwZWNoZWNrIGFuZCBmaXggdXAgc29tZSBhcmd1bWVudHMgc3VwcGxpZWQgdG8gdmFyaW91cyBtZXRob2RzLgorICAgICAgICBTcGVjaWZpY2FsbHk6IGVuc3VyZSB0aGF0ICdvYmplY3RzJyBpcyBhIGxpc3Q7IGlmIG91dHB1dF9kaXIgaXMKKyAgICAgICAgTm9uZSwgcmVwbGFjZSB3aXRoIHNlbGYub3V0cHV0X2Rpci4gIFJldHVybiBmaXhlZCB2ZXJzaW9ucyBvZgorICAgICAgICAnb2JqZWN0cycgYW5kICdvdXRwdXRfZGlyJy4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKG9iamVjdHMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCInb2JqZWN0cycgbXVzdCBiZSBhIGxpc3Qgb3IgdHVwbGUgb2Ygc3RyaW5ncyIpCisgICAgICAgIG9iamVjdHMgPSBsaXN0KG9iamVjdHMpCisKKyAgICAgICAgaWYgb3V0cHV0X2RpciBpcyBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2RpciA9IHNlbGYub3V0cHV0X2RpcgorICAgICAgICBlbGlmIG5vdCBpc2luc3RhbmNlKG91dHB1dF9kaXIsIHN0cik6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIidvdXRwdXRfZGlyJyBtdXN0IGJlIGEgc3RyaW5nIG9yIE5vbmUiKQorCisgICAgICAgIHJldHVybiBvYmplY3RzLCBvdXRwdXRfZGlyCisKKyAgICBkZWYgX2ZpeF9saWJfYXJncyhzZWxmLCBsaWJyYXJpZXMsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMpOgorICAgICAgICAiIiJUeXBlY2hlY2sgYW5kIGZpeCB1cCBzb21lIG9mIHRoZSBhcmd1bWVudHMgc3VwcGxpZWQgdG8gdGhlCisgICAgICAgICdsaW5rXyonIG1ldGhvZHMuICBTcGVjaWZpY2FsbHk6IGVuc3VyZSB0aGF0IGFsbCBhcmd1bWVudHMgYXJlCisgICAgICAgIGxpc3RzLCBhbmQgYXVnbWVudCB0aGVtIHdpdGggdGhlaXIgcGVybWFuZW50IHZlcnNpb25zCisgICAgICAgIChlZy4gJ3NlbGYubGlicmFyaWVzJyBhdWdtZW50cyAnbGlicmFyaWVzJykuICBSZXR1cm4gYSB0dXBsZSB3aXRoCisgICAgICAgIGZpeGVkIHZlcnNpb25zIG9mIGFsbCBhcmd1bWVudHMuCisgICAgICAgICIiIgorICAgICAgICBpZiBsaWJyYXJpZXMgaXMgTm9uZToKKyAgICAgICAgICAgIGxpYnJhcmllcyA9IHNlbGYubGlicmFyaWVzCisgICAgICAgIGVsaWYgaXNpbnN0YW5jZShsaWJyYXJpZXMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgbGlicmFyaWVzID0gbGlzdChsaWJyYXJpZXMpICsgKHNlbGYubGlicmFyaWVzIG9yIFtdKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKAorICAgICAgICAgICAgICAgICInbGlicmFyaWVzJyAoaWYgc3VwcGxpZWQpIG11c3QgYmUgYSBsaXN0IG9mIHN0cmluZ3MiKQorCisgICAgICAgIGlmIGxpYnJhcnlfZGlycyBpcyBOb25lOgorICAgICAgICAgICAgbGlicmFyeV9kaXJzID0gc2VsZi5saWJyYXJ5X2RpcnMKKyAgICAgICAgZWxpZiBpc2luc3RhbmNlKGxpYnJhcnlfZGlycywgKGxpc3QsIHR1cGxlKSk6CisgICAgICAgICAgICBsaWJyYXJ5X2RpcnMgPSBsaXN0KGxpYnJhcnlfZGlycykgKyAoc2VsZi5saWJyYXJ5X2RpcnMgb3IgW10pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoCisgICAgICAgICAgICAgICAgIidsaWJyYXJ5X2RpcnMnIChpZiBzdXBwbGllZCkgbXVzdCBiZSBhIGxpc3Qgb2Ygc3RyaW5ncyIpCisKKyAgICAgICAgaWYgcnVudGltZV9saWJyYXJ5X2RpcnMgaXMgTm9uZToKKyAgICAgICAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzID0gc2VsZi5ydW50aW1lX2xpYnJhcnlfZGlycworICAgICAgICBlbGlmIGlzaW5zdGFuY2UocnVudGltZV9saWJyYXJ5X2RpcnMsIChsaXN0LCB0dXBsZSkpOgorICAgICAgICAgICAgcnVudGltZV9saWJyYXJ5X2RpcnMgPSAobGlzdChydW50aW1lX2xpYnJhcnlfZGlycykgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNlbGYucnVudGltZV9saWJyYXJ5X2RpcnMgb3IgW10pKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCIncnVudGltZV9saWJyYXJ5X2RpcnMnIChpZiBzdXBwbGllZCkgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIGEgbGlzdCBvZiBzdHJpbmdzIikKKworICAgICAgICByZXR1cm4gbGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsIHJ1bnRpbWVfbGlicmFyeV9kaXJzCisKKyAgICBkZWYgX25lZWRfbGluayhzZWxmLCBvYmplY3RzLCBvdXRwdXRfZmlsZSk6CisgICAgICAgICIiIlJldHVybiB0cnVlIGlmIHdlIG5lZWQgdG8gcmVsaW5rIHRoZSBmaWxlcyBsaXN0ZWQgaW4gJ29iamVjdHMnCisgICAgICAgIHRvIHJlY3JlYXRlICdvdXRwdXRfZmlsZScuCisgICAgICAgICIiIgorICAgICAgICBpZiBzZWxmLmZvcmNlOgorICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIHNlbGYuZHJ5X3J1bjoKKyAgICAgICAgICAgICAgICBuZXdlciA9IG5ld2VyX2dyb3VwKG9iamVjdHMsIG91dHB1dF9maWxlLCBtaXNzaW5nPSduZXdlcicpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG5ld2VyID0gbmV3ZXJfZ3JvdXAob2JqZWN0cywgb3V0cHV0X2ZpbGUpCisgICAgICAgICAgICByZXR1cm4gbmV3ZXIKKworICAgIGRlZiBkZXRlY3RfbGFuZ3VhZ2Uoc2VsZiwgc291cmNlcyk6CisgICAgICAgICIiIkRldGVjdCB0aGUgbGFuZ3VhZ2Ugb2YgYSBnaXZlbiBmaWxlLCBvciBsaXN0IG9mIGZpbGVzLiBVc2VzCisgICAgICAgIGxhbmd1YWdlX21hcCwgYW5kIGxhbmd1YWdlX29yZGVyIHRvIGRvIHRoZSBqb2IuCisgICAgICAgICIiIgorICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShzb3VyY2VzLCBsaXN0KToKKyAgICAgICAgICAgIHNvdXJjZXMgPSBbc291cmNlc10KKyAgICAgICAgbGFuZyA9IE5vbmUKKyAgICAgICAgaW5kZXggPSBsZW4oc2VsZi5sYW5ndWFnZV9vcmRlcikKKyAgICAgICAgZm9yIHNvdXJjZSBpbiBzb3VyY2VzOgorICAgICAgICAgICAgYmFzZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChzb3VyY2UpCisgICAgICAgICAgICBleHRsYW5nID0gc2VsZi5sYW5ndWFnZV9tYXAuZ2V0KGV4dCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBleHRpbmRleCA9IHNlbGYubGFuZ3VhZ2Vfb3JkZXIuaW5kZXgoZXh0bGFuZykKKyAgICAgICAgICAgICAgICBpZiBleHRpbmRleCA8IGluZGV4OgorICAgICAgICAgICAgICAgICAgICBsYW5nID0gZXh0bGFuZworICAgICAgICAgICAgICAgICAgICBpbmRleCA9IGV4dGluZGV4CisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgIHJldHVybiBsYW5nCisKKyAgICAjIC0tIFdvcmtlciBtZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICMgKG11c3QgYmUgaW1wbGVtZW50ZWQgYnkgc3ViY2xhc3NlcykKKworICAgIGRlZiBwcmVwcm9jZXNzKHNlbGYsIHNvdXJjZSwgb3V0cHV0X2ZpbGU9Tm9uZSwgbWFjcm9zPU5vbmUsCisgICAgICAgICAgICAgICAgICAgaW5jbHVkZV9kaXJzPU5vbmUsIGV4dHJhX3ByZWFyZ3M9Tm9uZSwgZXh0cmFfcG9zdGFyZ3M9Tm9uZSk6CisgICAgICAgICIiIlByZXByb2Nlc3MgYSBzaW5nbGUgQy9DKysgc291cmNlIGZpbGUsIG5hbWVkIGluICdzb3VyY2UnLgorICAgICAgICBPdXRwdXQgd2lsbCBiZSB3cml0dGVuIHRvIGZpbGUgbmFtZWQgJ291dHB1dF9maWxlJywgb3Igc3Rkb3V0IGlmCisgICAgICAgICdvdXRwdXRfZmlsZScgbm90IHN1cHBsaWVkLiAgJ21hY3JvcycgaXMgYSBsaXN0IG9mIG1hY3JvCisgICAgICAgIGRlZmluaXRpb25zIGFzIGZvciAnY29tcGlsZSgpJywgd2hpY2ggd2lsbCBhdWdtZW50IHRoZSBtYWNyb3Mgc2V0CisgICAgICAgIHdpdGggJ2RlZmluZV9tYWNybygpJyBhbmQgJ3VuZGVmaW5lX21hY3JvKCknLiAgJ2luY2x1ZGVfZGlycycgaXMgYQorICAgICAgICBsaXN0IG9mIGRpcmVjdG9yeSBuYW1lcyB0aGF0IHdpbGwgYmUgYWRkZWQgdG8gdGhlIGRlZmF1bHQgbGlzdC4KKworICAgICAgICBSYWlzZXMgUHJlcHJvY2Vzc0Vycm9yIG9uIGZhaWx1cmUuCisgICAgICAgICIiIgorICAgICAgICBwYXNzCisKKyAgICBkZWYgY29tcGlsZShzZWxmLCBzb3VyY2VzLCBvdXRwdXRfZGlyPU5vbmUsIG1hY3Jvcz1Ob25lLAorICAgICAgICAgICAgICAgIGluY2x1ZGVfZGlycz1Ob25lLCBkZWJ1Zz1GYWxzZSwgZXh0cmFfcHJlYXJncz1Ob25lLAorICAgICAgICAgICAgICAgIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGRlcGVuZHM9Tm9uZSk6CisgICAgICAgICIiIkNvbXBpbGUgb25lIG9yIG1vcmUgc291cmNlIGZpbGVzLgorCisgICAgICAgICdzb3VyY2VzJyBtdXN0IGJlIGEgbGlzdCBvZiBmaWxlbmFtZXMsIG1vc3QgbGlrZWx5IEMvQysrCisgICAgICAgIGZpbGVzLCBidXQgaW4gcmVhbGl0eSBhbnl0aGluZyB0aGF0IGNhbiBiZSBoYW5kbGVkIGJ5IGEKKyAgICAgICAgcGFydGljdWxhciBjb21waWxlciBhbmQgY29tcGlsZXIgY2xhc3MgKGVnLiBNU1ZDQ29tcGlsZXIgY2FuCisgICAgICAgIGhhbmRsZSByZXNvdXJjZSBmaWxlcyBpbiAnc291cmNlcycpLiAgUmV0dXJuIGEgbGlzdCBvZiBvYmplY3QKKyAgICAgICAgZmlsZW5hbWVzLCBvbmUgcGVyIHNvdXJjZSBmaWxlbmFtZSBpbiAnc291cmNlcycuICBEZXBlbmRpbmcgb24KKyAgICAgICAgdGhlIGltcGxlbWVudGF0aW9uLCBub3QgYWxsIHNvdXJjZSBmaWxlcyB3aWxsIG5lY2Vzc2FyaWx5IGJlCisgICAgICAgIGNvbXBpbGVkLCBidXQgYWxsIGNvcnJlc3BvbmRpbmcgb2JqZWN0IGZpbGVuYW1lcyB3aWxsIGJlCisgICAgICAgIHJldHVybmVkLgorCisgICAgICAgIElmICdvdXRwdXRfZGlyJyBpcyBnaXZlbiwgb2JqZWN0IGZpbGVzIHdpbGwgYmUgcHV0IHVuZGVyIGl0LCB3aGlsZQorICAgICAgICByZXRhaW5pbmcgdGhlaXIgb3JpZ2luYWwgcGF0aCBjb21wb25lbnQuICBUaGF0IGlzLCAiZm9vL2Jhci5jIgorICAgICAgICBub3JtYWxseSBjb21waWxlcyB0byAiZm9vL2Jhci5vIiAoZm9yIGEgVW5peCBpbXBsZW1lbnRhdGlvbik7IGlmCisgICAgICAgICdvdXRwdXRfZGlyJyBpcyAiYnVpbGQiLCB0aGVuIGl0IHdvdWxkIGNvbXBpbGUgdG8KKyAgICAgICAgImJ1aWxkL2Zvby9iYXIubyIuCisKKyAgICAgICAgJ21hY3JvcycsIGlmIGdpdmVuLCBtdXN0IGJlIGEgbGlzdCBvZiBtYWNybyBkZWZpbml0aW9ucy4gIEEgbWFjcm8KKyAgICAgICAgZGVmaW5pdGlvbiBpcyBlaXRoZXIgYSAobmFtZSwgdmFsdWUpIDItdHVwbGUgb3IgYSAobmFtZSwpIDEtdHVwbGUuCisgICAgICAgIFRoZSBmb3JtZXIgZGVmaW5lcyBhIG1hY3JvOyBpZiB0aGUgdmFsdWUgaXMgTm9uZSwgdGhlIG1hY3JvIGlzCisgICAgICAgIGRlZmluZWQgd2l0aG91dCBhbiBleHBsaWNpdCB2YWx1ZS4gIFRoZSAxLXR1cGxlIGNhc2UgdW5kZWZpbmVzIGEKKyAgICAgICAgbWFjcm8uICBMYXRlciBkZWZpbml0aW9ucy9yZWRlZmluaXRpb25zLyB1bmRlZmluaXRpb25zIHRha2UKKyAgICAgICAgcHJlY2VkZW5jZS4KKworICAgICAgICAnaW5jbHVkZV9kaXJzJywgaWYgZ2l2ZW4sIG11c3QgYmUgYSBsaXN0IG9mIHN0cmluZ3MsIHRoZQorICAgICAgICBkaXJlY3RvcmllcyB0byBhZGQgdG8gdGhlIGRlZmF1bHQgaW5jbHVkZSBmaWxlIHNlYXJjaCBwYXRoIGZvciB0aGlzCisgICAgICAgIGNvbXBpbGF0aW9uIG9ubHkuCisKKyAgICAgICAgJ2RlYnVnJyBpcyBhIGJvb2xlYW47IGlmIHRydWUsIHRoZSBjb21waWxlciB3aWxsIGJlIGluc3RydWN0ZWQgdG8KKyAgICAgICAgb3V0cHV0IGRlYnVnIHN5bWJvbHMgaW4gKG9yIGFsb25nc2lkZSkgdGhlIG9iamVjdCBmaWxlKHMpLgorCisgICAgICAgICdleHRyYV9wcmVhcmdzJyBhbmQgJ2V4dHJhX3Bvc3RhcmdzJyBhcmUgaW1wbGVtZW50YXRpb24tIGRlcGVuZGVudC4KKyAgICAgICAgT24gcGxhdGZvcm1zIHRoYXQgaGF2ZSB0aGUgbm90aW9uIG9mIGEgY29tbWFuZCBsaW5lIChlLmcuIFVuaXgsCisgICAgICAgIERPUy9XaW5kb3dzKSwgdGhleSBhcmUgbW9zdCBsaWtlbHkgbGlzdHMgb2Ygc3RyaW5nczogZXh0cmEKKyAgICAgICAgY29tbWFuZC1saW5lIGFyZ3VtZW50cyB0byBwcmVwYW5kL2FwcGVuZCB0byB0aGUgY29tcGlsZXIgY29tbWFuZAorICAgICAgICBsaW5lLiAgT24gb3RoZXIgcGxhdGZvcm1zLCBjb25zdWx0IHRoZSBpbXBsZW1lbnRhdGlvbiBjbGFzcworICAgICAgICBkb2N1bWVudGF0aW9uLiAgSW4gYW55IGV2ZW50LCB0aGV5IGFyZSBpbnRlbmRlZCBhcyBhbiBlc2NhcGUgaGF0Y2gKKyAgICAgICAgZm9yIHRob3NlIG9jY2FzaW9ucyB3aGVuIHRoZSBhYnN0cmFjdCBjb21waWxlciBmcmFtZXdvcmsgZG9lc24ndAorICAgICAgICBjdXQgdGhlIG11c3RhcmQuCisKKyAgICAgICAgJ2RlcGVuZHMnLCBpZiBnaXZlbiwgaXMgYSBsaXN0IG9mIGZpbGVuYW1lcyB0aGF0IGFsbCB0YXJnZXRzCisgICAgICAgIGRlcGVuZCBvbi4gIElmIGEgc291cmNlIGZpbGUgaXMgb2xkZXIgdGhhbiBhbnkgZmlsZSBpbgorICAgICAgICBkZXBlbmRzLCB0aGVuIHRoZSBzb3VyY2UgZmlsZSB3aWxsIGJlIHJlY29tcGlsZWQuICBUaGlzCisgICAgICAgIHN1cHBvcnRzIGRlcGVuZGVuY3kgdHJhY2tpbmcsIGJ1dCBvbmx5IGF0IGEgY29hcnNlCisgICAgICAgIGdyYW51bGFyaXR5LgorCisgICAgICAgIFJhaXNlcyBDb21waWxlRXJyb3Igb24gZmFpbHVyZS4KKyAgICAgICAgIiIiCisgICAgICAgICMgQSBjb25jcmV0ZSBjb21waWxlciBjbGFzcyBjYW4gZWl0aGVyIG92ZXJyaWRlIHRoaXMgbWV0aG9kCisgICAgICAgICMgZW50aXJlbHkgb3IgaW1wbGVtZW50IF9jb21waWxlKCkuCisKKyAgICAgICAgbWFjcm9zLCBvYmplY3RzLCBleHRyYV9wb3N0YXJncywgcHBfb3B0cywgYnVpbGQgPSBcCisgICAgICAgICAgICAgICAgc2VsZi5fc2V0dXBfY29tcGlsZShvdXRwdXRfZGlyLCBtYWNyb3MsIGluY2x1ZGVfZGlycywgc291cmNlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlcGVuZHMsIGV4dHJhX3Bvc3RhcmdzKQorICAgICAgICBjY19hcmdzID0gc2VsZi5fZ2V0X2NjX2FyZ3MocHBfb3B0cywgZGVidWcsIGV4dHJhX3ByZWFyZ3MpCisKKyAgICAgICAgZm9yIG9iaiBpbiBvYmplY3RzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNyYywgZXh0ID0gYnVpbGRbb2JqXQorICAgICAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBzZWxmLl9jb21waWxlKG9iaiwgc3JjLCBleHQsIGNjX2FyZ3MsIGV4dHJhX3Bvc3RhcmdzLCBwcF9vcHRzKQorCisgICAgICAgICMgUmV0dXJuICphbGwqIG9iamVjdCBmaWxlbmFtZXMsIG5vdCBqdXN0IHRoZSBvbmVzIHdlIGp1c3QgYnVpbHQuCisgICAgICAgIHJldHVybiBvYmplY3RzCisKKyAgICBkZWYgX2NvbXBpbGUoc2VsZiwgb2JqLCBzcmMsIGV4dCwgY2NfYXJncywgZXh0cmFfcG9zdGFyZ3MsIHBwX29wdHMpOgorICAgICAgICAiIiJDb21waWxlICdzcmMnIHRvIHByb2R1Y3QgJ29iaicuIiIiCisKKyAgICAgICAgIyBBIGNvbmNyZXRlIGNvbXBpbGVyIGNsYXNzIHRoYXQgZG9lcyBub3Qgb3ZlcnJpZGUgY29tcGlsZSgpCisgICAgICAgICMgc2hvdWxkIGltcGxlbWVudCBfY29tcGlsZSgpLgorICAgICAgICBwYXNzCisKKyAgICBkZWYgY3JlYXRlX3N0YXRpY19saWIoc2VsZiwgb2JqZWN0cywgb3V0cHV0X2xpYm5hbWUsIG91dHB1dF9kaXI9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZGVidWc9RmFsc2UsIHRhcmdldF9sYW5nPU5vbmUpOgorICAgICAgICAiIiJMaW5rIGEgYnVuY2ggb2Ygc3R1ZmYgdG9nZXRoZXIgdG8gY3JlYXRlIGEgc3RhdGljIGxpYnJhcnkgZmlsZS4KKyAgICAgICAgVGhlICJidW5jaCBvZiBzdHVmZiIgY29uc2lzdHMgb2YgdGhlIGxpc3Qgb2Ygb2JqZWN0IGZpbGVzIHN1cHBsaWVkCisgICAgICAgIGFzICdvYmplY3RzJywgdGhlIGV4dHJhIG9iamVjdCBmaWxlcyBzdXBwbGllZCB0bworICAgICAgICAnYWRkX2xpbmtfb2JqZWN0KCknIGFuZC9vciAnc2V0X2xpbmtfb2JqZWN0cygpJywgdGhlIGxpYnJhcmllcworICAgICAgICBzdXBwbGllZCB0byAnYWRkX2xpYnJhcnkoKScgYW5kL29yICdzZXRfbGlicmFyaWVzKCknLCBhbmQgdGhlCisgICAgICAgIGxpYnJhcmllcyBzdXBwbGllZCBhcyAnbGlicmFyaWVzJyAoaWYgYW55KS4KKworICAgICAgICAnb3V0cHV0X2xpYm5hbWUnIHNob3VsZCBiZSBhIGxpYnJhcnkgbmFtZSwgbm90IGEgZmlsZW5hbWU7IHRoZQorICAgICAgICBmaWxlbmFtZSB3aWxsIGJlIGluZmVycmVkIGZyb20gdGhlIGxpYnJhcnkgbmFtZS4gICdvdXRwdXRfZGlyJyBpcworICAgICAgICB0aGUgZGlyZWN0b3J5IHdoZXJlIHRoZSBsaWJyYXJ5IGZpbGUgd2lsbCBiZSBwdXQuCisKKyAgICAgICAgJ2RlYnVnJyBpcyBhIGJvb2xlYW47IGlmIHRydWUsIGRlYnVnZ2luZyBpbmZvcm1hdGlvbiB3aWxsIGJlCisgICAgICAgIGluY2x1ZGVkIGluIHRoZSBsaWJyYXJ5IChub3RlIHRoYXQgb24gbW9zdCBwbGF0Zm9ybXMsIGl0IGlzIHRoZQorICAgICAgICBjb21waWxlIHN0ZXAgd2hlcmUgdGhpcyBtYXR0ZXJzOiB0aGUgJ2RlYnVnJyBmbGFnIGlzIGluY2x1ZGVkIGhlcmUKKyAgICAgICAganVzdCBmb3IgY29uc2lzdGVuY3kpLgorCisgICAgICAgICd0YXJnZXRfbGFuZycgaXMgdGhlIHRhcmdldCBsYW5ndWFnZSBmb3Igd2hpY2ggdGhlIGdpdmVuIG9iamVjdHMKKyAgICAgICAgYXJlIGJlaW5nIGNvbXBpbGVkLiBUaGlzIGFsbG93cyBzcGVjaWZpYyBsaW5rYWdlIHRpbWUgdHJlYXRtZW50IG9mCisgICAgICAgIGNlcnRhaW4gbGFuZ3VhZ2VzLgorCisgICAgICAgIFJhaXNlcyBMaWJFcnJvciBvbiBmYWlsdXJlLgorICAgICAgICAiIiIKKyAgICAgICAgcGFzcworCisgICAgIyB2YWx1ZXMgZm9yIHRhcmdldF9kZXNjIHBhcmFtZXRlciBpbiBsaW5rKCkKKyAgICBTSEFSRURfT0JKRUNUID0gInNoYXJlZF9vYmplY3QiCisgICAgU0hBUkVEX0xJQlJBUlkgPSAic2hhcmVkX2xpYnJhcnkiCisgICAgRVhFQ1VUQUJMRSA9ICJleGVjdXRhYmxlIgorCisgICAgZGVmIGxpbmsoc2VsZiwgdGFyZ2V0X2Rlc2MsIG9iamVjdHMsIG91dHB1dF9maWxlbmFtZSwgb3V0cHV0X2Rpcj1Ob25lLAorICAgICAgICAgICAgIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICBleHBvcnRfc3ltYm9scz1Ob25lLCBkZWJ1Zz1GYWxzZSwgZXh0cmFfcHJlYXJncz1Ob25lLAorICAgICAgICAgICAgIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGJ1aWxkX3RlbXA9Tm9uZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisgICAgICAgICIiIkxpbmsgYSBidW5jaCBvZiBzdHVmZiB0b2dldGhlciB0byBjcmVhdGUgYW4gZXhlY3V0YWJsZSBvcgorICAgICAgICBzaGFyZWQgbGlicmFyeSBmaWxlLgorCisgICAgICAgIFRoZSAiYnVuY2ggb2Ygc3R1ZmYiIGNvbnNpc3RzIG9mIHRoZSBsaXN0IG9mIG9iamVjdCBmaWxlcyBzdXBwbGllZAorICAgICAgICBhcyAnb2JqZWN0cycuICAnb3V0cHV0X2ZpbGVuYW1lJyBzaG91bGQgYmUgYSBmaWxlbmFtZS4gIElmCisgICAgICAgICdvdXRwdXRfZGlyJyBpcyBzdXBwbGllZCwgJ291dHB1dF9maWxlbmFtZScgaXMgcmVsYXRpdmUgdG8gaXQKKyAgICAgICAgKGkuZS4gJ291dHB1dF9maWxlbmFtZScgY2FuIHByb3ZpZGUgZGlyZWN0b3J5IGNvbXBvbmVudHMgaWYKKyAgICAgICAgbmVlZGVkKS4KKworICAgICAgICAnbGlicmFyaWVzJyBpcyBhIGxpc3Qgb2YgbGlicmFyaWVzIHRvIGxpbmsgYWdhaW5zdC4gIFRoZXNlIGFyZQorICAgICAgICBsaWJyYXJ5IG5hbWVzLCBub3QgZmlsZW5hbWVzLCBzaW5jZSB0aGV5J3JlIHRyYW5zbGF0ZWQgaW50bworICAgICAgICBmaWxlbmFtZXMgaW4gYSBwbGF0Zm9ybS1zcGVjaWZpYyB3YXkgKGVnLiAiZm9vIiBiZWNvbWVzICJsaWJmb28uYSIKKyAgICAgICAgb24gVW5peCBhbmQgImZvby5saWIiIG9uIERPUy9XaW5kb3dzKS4gIEhvd2V2ZXIsIHRoZXkgY2FuIGluY2x1ZGUgYQorICAgICAgICBkaXJlY3RvcnkgY29tcG9uZW50LCB3aGljaCBtZWFucyB0aGUgbGlua2VyIHdpbGwgbG9vayBpbiB0aGF0CisgICAgICAgIHNwZWNpZmljIGRpcmVjdG9yeSByYXRoZXIgdGhhbiBzZWFyY2hpbmcgYWxsIHRoZSBub3JtYWwgbG9jYXRpb25zLgorCisgICAgICAgICdsaWJyYXJ5X2RpcnMnLCBpZiBzdXBwbGllZCwgc2hvdWxkIGJlIGEgbGlzdCBvZiBkaXJlY3RvcmllcyB0bworICAgICAgICBzZWFyY2ggZm9yIGxpYnJhcmllcyB0aGF0IHdlcmUgc3BlY2lmaWVkIGFzIGJhcmUgbGlicmFyeSBuYW1lcworICAgICAgICAoaWUuIG5vIGRpcmVjdG9yeSBjb21wb25lbnQpLiAgVGhlc2UgYXJlIG9uIHRvcCBvZiB0aGUgc3lzdGVtCisgICAgICAgIGRlZmF1bHQgYW5kIHRob3NlIHN1cHBsaWVkIHRvICdhZGRfbGlicmFyeV9kaXIoKScgYW5kL29yCisgICAgICAgICdzZXRfbGlicmFyeV9kaXJzKCknLiAgJ3J1bnRpbWVfbGlicmFyeV9kaXJzJyBpcyBhIGxpc3Qgb2YKKyAgICAgICAgZGlyZWN0b3JpZXMgdGhhdCB3aWxsIGJlIGVtYmVkZGVkIGludG8gdGhlIHNoYXJlZCBsaWJyYXJ5IGFuZCB1c2VkCisgICAgICAgIHRvIHNlYXJjaCBmb3Igb3RoZXIgc2hhcmVkIGxpYnJhcmllcyB0aGF0ICppdCogZGVwZW5kcyBvbiBhdAorICAgICAgICBydW4tdGltZS4gIChUaGlzIG1heSBvbmx5IGJlIHJlbGV2YW50IG9uIFVuaXguKQorCisgICAgICAgICdleHBvcnRfc3ltYm9scycgaXMgYSBsaXN0IG9mIHN5bWJvbHMgdGhhdCB0aGUgc2hhcmVkIGxpYnJhcnkgd2lsbAorICAgICAgICBleHBvcnQuICAoVGhpcyBhcHBlYXJzIHRvIGJlIHJlbGV2YW50IG9ubHkgb24gV2luZG93cy4pCisKKyAgICAgICAgJ2RlYnVnJyBpcyBhcyBmb3IgJ2NvbXBpbGUoKScgYW5kICdjcmVhdGVfc3RhdGljX2xpYigpJywgd2l0aCB0aGUKKyAgICAgICAgc2xpZ2h0IGRpc3RpbmN0aW9uIHRoYXQgaXQgYWN0dWFsbHkgbWF0dGVycyBvbiBtb3N0IHBsYXRmb3JtcyAoYXMKKyAgICAgICAgb3Bwb3NlZCB0byAnY3JlYXRlX3N0YXRpY19saWIoKScsIHdoaWNoIGluY2x1ZGVzIGEgJ2RlYnVnJyBmbGFnCisgICAgICAgIG1vc3RseSBmb3IgZm9ybSdzIHNha2UpLgorCisgICAgICAgICdleHRyYV9wcmVhcmdzJyBhbmQgJ2V4dHJhX3Bvc3RhcmdzJyBhcmUgYXMgZm9yICdjb21waWxlKCknIChleGNlcHQKKyAgICAgICAgb2YgY291cnNlIHRoYXQgdGhleSBzdXBwbHkgY29tbWFuZC1saW5lIGFyZ3VtZW50cyBmb3IgdGhlCisgICAgICAgIHBhcnRpY3VsYXIgbGlua2VyIGJlaW5nIHVzZWQpLgorCisgICAgICAgICd0YXJnZXRfbGFuZycgaXMgdGhlIHRhcmdldCBsYW5ndWFnZSBmb3Igd2hpY2ggdGhlIGdpdmVuIG9iamVjdHMKKyAgICAgICAgYXJlIGJlaW5nIGNvbXBpbGVkLiBUaGlzIGFsbG93cyBzcGVjaWZpYyBsaW5rYWdlIHRpbWUgdHJlYXRtZW50IG9mCisgICAgICAgIGNlcnRhaW4gbGFuZ3VhZ2VzLgorCisgICAgICAgIFJhaXNlcyBMaW5rRXJyb3Igb24gZmFpbHVyZS4KKyAgICAgICAgIiIiCisgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IKKworCisgICAgIyBPbGQgJ2xpbmtfKigpJyBtZXRob2RzLCByZXdyaXR0ZW4gdG8gdXNlIHRoZSBuZXcgJ2xpbmsoKScgbWV0aG9kLgorCisgICAgZGVmIGxpbmtfc2hhcmVkX2xpYihzZWxmLCBvYmplY3RzLCBvdXRwdXRfbGlibmFtZSwgb3V0cHV0X2Rpcj1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzPU5vbmUsIGxpYnJhcnlfZGlycz1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwgZXhwb3J0X3N5bWJvbHM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnPUZhbHNlLCBleHRyYV9wcmVhcmdzPU5vbmUsIGV4dHJhX3Bvc3RhcmdzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICBidWlsZF90ZW1wPU5vbmUsIHRhcmdldF9sYW5nPU5vbmUpOgorICAgICAgICBzZWxmLmxpbmsoQ0NvbXBpbGVyLlNIQVJFRF9MSUJSQVJZLCBvYmplY3RzLAorICAgICAgICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2ZpbGVuYW1lKG91dHB1dF9saWJuYW1lLCBsaWJfdHlwZT0nc2hhcmVkJyksCisgICAgICAgICAgICAgICAgICBvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgbGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsIHJ1bnRpbWVfbGlicmFyeV9kaXJzLAorICAgICAgICAgICAgICAgICAgZXhwb3J0X3N5bWJvbHMsIGRlYnVnLAorICAgICAgICAgICAgICAgICAgZXh0cmFfcHJlYXJncywgZXh0cmFfcG9zdGFyZ3MsIGJ1aWxkX3RlbXAsIHRhcmdldF9sYW5nKQorCisgICAgZGVmIGxpbmtfc2hhcmVkX29iamVjdChzZWxmLCBvYmplY3RzLCBvdXRwdXRfZmlsZW5hbWUsIG91dHB1dF9kaXI9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzPU5vbmUsIGV4cG9ydF9zeW1ib2xzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zz1GYWxzZSwgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVpbGRfdGVtcD1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lKToKKyAgICAgICAgc2VsZi5saW5rKENDb21waWxlci5TSEFSRURfT0JKRUNULCBvYmplY3RzLAorICAgICAgICAgICAgICAgICAgb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgbGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsIHJ1bnRpbWVfbGlicmFyeV9kaXJzLAorICAgICAgICAgICAgICAgICAgZXhwb3J0X3N5bWJvbHMsIGRlYnVnLAorICAgICAgICAgICAgICAgICAgZXh0cmFfcHJlYXJncywgZXh0cmFfcG9zdGFyZ3MsIGJ1aWxkX3RlbXAsIHRhcmdldF9sYW5nKQorCisgICAgZGVmIGxpbmtfZXhlY3V0YWJsZShzZWxmLCBvYmplY3RzLCBvdXRwdXRfcHJvZ25hbWUsIG91dHB1dF9kaXI9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzPU5vbmUsIGRlYnVnPUZhbHNlLAorICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2xhbmc9Tm9uZSk6CisgICAgICAgIHNlbGYubGluayhDQ29tcGlsZXIuRVhFQ1VUQUJMRSwgb2JqZWN0cywKKyAgICAgICAgICAgICAgICAgIHNlbGYuZXhlY3V0YWJsZV9maWxlbmFtZShvdXRwdXRfcHJvZ25hbWUpLCBvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgbGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsIHJ1bnRpbWVfbGlicmFyeV9kaXJzLCBOb25lLAorICAgICAgICAgICAgICAgICAgZGVidWcsIGV4dHJhX3ByZWFyZ3MsIGV4dHJhX3Bvc3RhcmdzLCBOb25lLCB0YXJnZXRfbGFuZykKKworCisgICAgIyAtLSBNaXNjZWxsYW5lb3VzIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIFRoZXNlIGFyZSBhbGwgdXNlZCBieSB0aGUgJ2dlbl9saWJfb3B0aW9ucygpIGZ1bmN0aW9uOyB0aGVyZSBpcworICAgICMgbm8gYXBwcm9wcmlhdGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBzbyBzdWJjbGFzc2VzIHNob3VsZAorICAgICMgaW1wbGVtZW50IGFsbCBvZiB0aGVzZS4KKworICAgIGRlZiBsaWJyYXJ5X2Rpcl9vcHRpb24oc2VsZiwgZGlyKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBjb21waWxlciBvcHRpb24gdG8gYWRkICdkaXInIHRvIHRoZSBsaXN0IG9mCisgICAgICAgIGRpcmVjdG9yaWVzIHNlYXJjaGVkIGZvciBsaWJyYXJpZXMuCisgICAgICAgICIiIgorICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCisKKyAgICBkZWYgcnVudGltZV9saWJyYXJ5X2Rpcl9vcHRpb24oc2VsZiwgZGlyKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBjb21waWxlciBvcHRpb24gdG8gYWRkICdkaXInIHRvIHRoZSBsaXN0IG9mCisgICAgICAgIGRpcmVjdG9yaWVzIHNlYXJjaGVkIGZvciBydW50aW1lIGxpYnJhcmllcy4KKyAgICAgICAgIiIiCisgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IKKworICAgIGRlZiBsaWJyYXJ5X29wdGlvbihzZWxmLCBsaWIpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGNvbXBpbGVyIG9wdGlvbiB0byBhZGQgJ2RpcicgdG8gdGhlIGxpc3Qgb2YgbGlicmFyaWVzCisgICAgICAgIGxpbmtlZCBpbnRvIHRoZSBzaGFyZWQgbGlicmFyeSBvciBleGVjdXRhYmxlLgorICAgICAgICAiIiIKKyAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcgorCisgICAgZGVmIGhhc19mdW5jdGlvbihzZWxmLCBmdW5jbmFtZSwgaW5jbHVkZXM9Tm9uZSwgaW5jbHVkZV9kaXJzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXM9Tm9uZSwgbGlicmFyeV9kaXJzPU5vbmUpOgorICAgICAgICAiIiJSZXR1cm4gYSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciBmdW5jbmFtZSBpcyBzdXBwb3J0ZWQgb24KKyAgICAgICAgdGhlIGN1cnJlbnQgcGxhdGZvcm0uICBUaGUgb3B0aW9uYWwgYXJndW1lbnRzIGNhbiBiZSB1c2VkIHRvCisgICAgICAgIGF1Z21lbnQgdGhlIGNvbXBpbGF0aW9uIGVudmlyb25tZW50LgorICAgICAgICAiIiIKKworICAgICAgICAjIHRoaXMgY2FuJ3QgYmUgaW5jbHVkZWQgYXQgbW9kdWxlIHNjb3BlIGJlY2F1c2UgaXQgdHJpZXMgdG8KKyAgICAgICAgIyBpbXBvcnQgbWF0aCB3aGljaCBtaWdodCBub3QgYmUgYXZhaWxhYmxlIGF0IHRoYXQgcG9pbnQgLSBtYXliZQorICAgICAgICAjIHRoZSBuZWNlc3NhcnkgbG9naWMgc2hvdWxkIGp1c3QgYmUgaW5saW5lZD8KKyAgICAgICAgaW1wb3J0IHRlbXBmaWxlCisgICAgICAgIGlmIGluY2x1ZGVzIGlzIE5vbmU6CisgICAgICAgICAgICBpbmNsdWRlcyA9IFtdCisgICAgICAgIGlmIGluY2x1ZGVfZGlycyBpcyBOb25lOgorICAgICAgICAgICAgaW5jbHVkZV9kaXJzID0gW10KKyAgICAgICAgaWYgbGlicmFyaWVzIGlzIE5vbmU6CisgICAgICAgICAgICBsaWJyYXJpZXMgPSBbXQorICAgICAgICBpZiBsaWJyYXJ5X2RpcnMgaXMgTm9uZToKKyAgICAgICAgICAgIGxpYnJhcnlfZGlycyA9IFtdCisgICAgICAgIGZkLCBmbmFtZSA9IHRlbXBmaWxlLm1rc3RlbXAoIi5jIiwgZnVuY25hbWUsIHRleHQ9VHJ1ZSkKKyAgICAgICAgd2l0aCBvcy5mZG9wZW4oZmQsICJ3IikgYXMgZjoKKyAgICAgICAgICAgIGZvciBpbmNsIGluIGluY2x1ZGVzOgorICAgICAgICAgICAgICAgIGYud3JpdGUoIiIiI2luY2x1ZGUgIiVzIlxuIiIiICUgaW5jbCkKKyAgICAgICAgICAgIGYud3JpdGUoIiIiXAorbWFpbiAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KSB7CisgICAgJXMoKTsKK30KKyIiIiAlIGZ1bmNuYW1lKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBvYmplY3RzID0gc2VsZi5jb21waWxlKFtmbmFtZV0sIGluY2x1ZGVfZGlycz1pbmNsdWRlX2RpcnMpCisgICAgICAgIGV4Y2VwdCBDb21waWxlRXJyb3I6CisgICAgICAgICAgICByZXR1cm4gRmFsc2UKKworICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmxpbmtfZXhlY3V0YWJsZShvYmplY3RzLCAiYS5vdXQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzPWxpYnJhcmllcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcnlfZGlycz1saWJyYXJ5X2RpcnMpCisgICAgICAgIGV4Y2VwdCAoTGlua0Vycm9yLCBUeXBlRXJyb3IpOgorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICBkZWYgZmluZF9saWJyYXJ5X2ZpbGUoc2VsZiwgZGlycywgbGliLCBkZWJ1Zz1GYWxzZSk6CisgICAgICAgICIiIlNlYXJjaCB0aGUgc3BlY2lmaWVkIGxpc3Qgb2YgZGlyZWN0b3JpZXMgZm9yIGEgc3RhdGljIG9yIHNoYXJlZAorICAgICAgICBsaWJyYXJ5IGZpbGUgJ2xpYicgYW5kIHJldHVybiB0aGUgZnVsbCBwYXRoIHRvIHRoYXQgZmlsZS4gIElmCisgICAgICAgICdkZWJ1ZycgaXMgdHJ1ZSwgbG9vayBmb3IgYSBkZWJ1Z2dpbmcgdmVyc2lvbiAoaWYgdGhhdCBtYWtlcyBzZW5zZSBvbgorICAgICAgICB0aGUgY3VycmVudCBwbGF0Zm9ybSkuICBSZXR1cm4gTm9uZSBpZiAnbGliJyB3YXNuJ3QgZm91bmQgaW4gYW55IG9mCisgICAgICAgIHRoZSBzcGVjaWZpZWQgZGlyZWN0b3JpZXMuCisgICAgICAgICIiIgorICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yCisKKyAgICAjIC0tIEZpbGVuYW1lIGdlbmVyYXRpb24gbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgIyBUaGUgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgZmlsZW5hbWUgZ2VuZXJhdGluZyBtZXRob2RzIGFyZQorICAgICMgcHJlanVkaWNlZCB0b3dhcmRzIHRoZSBVbml4L0RPUy9XaW5kb3dzIHZpZXcgb2YgdGhlIHdvcmxkOgorICAgICMgICAqIG9iamVjdCBmaWxlcyBhcmUgbmFtZWQgYnkgcmVwbGFjaW5nIHRoZSBzb3VyY2UgZmlsZSBleHRlbnNpb24KKyAgICAjICAgICAoZWcuIC5jLy5jcHAgLT4gLm8vLm9iaikKKyAgICAjICAgKiBsaWJyYXJ5IGZpbGVzIChzaGFyZWQgb3Igc3RhdGljKSBhcmUgbmFtZWQgYnkgcGx1Z2dpbmcgdGhlCisgICAgIyAgICAgbGlicmFyeSBuYW1lIGFuZCBleHRlbnNpb24gaW50byBhIGZvcm1hdCBzdHJpbmcsIGVnLgorICAgICMgICAgICJsaWIlcy4lcyIgJSAobGliX25hbWUsICIuYSIpIGZvciBVbml4IHN0YXRpYyBsaWJyYXJpZXMKKyAgICAjICAgKiBleGVjdXRhYmxlcyBhcmUgbmFtZWQgYnkgYXBwZW5kaW5nIGFuIGV4dGVuc2lvbiAocG9zc2libHkKKyAgICAjICAgICBlbXB0eSkgdG8gdGhlIHByb2dyYW0gbmFtZTogZWcuIHByb2duYW1lICsgIi5leGUiIGZvcgorICAgICMgICAgIFdpbmRvd3MKKyAgICAjCisgICAgIyBUbyByZWR1Y2UgcmVkdW5kYW50IGNvZGUsIHRoZXNlIG1ldGhvZHMgZXhwZWN0IHRvIGZpbmQKKyAgICAjIHNldmVyYWwgYXR0cmlidXRlcyBpbiB0aGUgY3VycmVudCBvYmplY3QgKHByZXN1bWFibHkgZGVmaW5lZAorICAgICMgYXMgY2xhc3MgYXR0cmlidXRlcyk6CisgICAgIyAgICogc3JjX2V4dGVuc2lvbnMgLQorICAgICMgICAgIGxpc3Qgb2YgQy9DKysgc291cmNlIGZpbGUgZXh0ZW5zaW9ucywgZWcuIFsnLmMnLCAnLmNwcCddCisgICAgIyAgICogb2JqX2V4dGVuc2lvbiAtCisgICAgIyAgICAgb2JqZWN0IGZpbGUgZXh0ZW5zaW9uLCBlZy4gJy5vJyBvciAnLm9iaicKKyAgICAjICAgKiBzdGF0aWNfbGliX2V4dGVuc2lvbiAtCisgICAgIyAgICAgZXh0ZW5zaW9uIGZvciBzdGF0aWMgbGlicmFyeSBmaWxlcywgZWcuICcuYScgb3IgJy5saWInCisgICAgIyAgICogc2hhcmVkX2xpYl9leHRlbnNpb24gLQorICAgICMgICAgIGV4dGVuc2lvbiBmb3Igc2hhcmVkIGxpYnJhcnkvb2JqZWN0IGZpbGVzLCBlZy4gJy5zbycsICcuZGxsJworICAgICMgICAqIHN0YXRpY19saWJfZm9ybWF0IC0KKyAgICAjICAgICBmb3JtYXQgc3RyaW5nIGZvciBnZW5lcmF0aW5nIHN0YXRpYyBsaWJyYXJ5IGZpbGVuYW1lcywKKyAgICAjICAgICBlZy4gJ2xpYiVzLiVzJyBvciAnJXMuJXMnCisgICAgIyAgICogc2hhcmVkX2xpYl9mb3JtYXQKKyAgICAjICAgICBmb3JtYXQgc3RyaW5nIGZvciBnZW5lcmF0aW5nIHNoYXJlZCBsaWJyYXJ5IGZpbGVuYW1lcworICAgICMgICAgIChwcm9iYWJseSBzYW1lIGFzIHN0YXRpY19saWJfZm9ybWF0LCBzaW5jZSB0aGUgZXh0ZW5zaW9uCisgICAgIyAgICAgaXMgb25lIG9mIHRoZSBpbnRlbmRlZCBwYXJhbWV0ZXJzIHRvIHRoZSBmb3JtYXQgc3RyaW5nKQorICAgICMgICAqIGV4ZV9leHRlbnNpb24gLQorICAgICMgICAgIGV4dGVuc2lvbiBmb3IgZXhlY3V0YWJsZSBmaWxlcywgZWcuICcnIG9yICcuZXhlJworCisgICAgZGVmIG9iamVjdF9maWxlbmFtZXMoc2VsZiwgc291cmNlX2ZpbGVuYW1lcywgc3RyaXBfZGlyPUZhbHNlLCBvdXRwdXRfZGlyPScnKToKKyAgICAgICAgaWYgb3V0cHV0X2RpciBpcyBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2RpciA9ICcnCisgICAgICAgIG9ial9uYW1lcyA9IFtdCisgICAgICAgIGZvciBzcmNfbmFtZSBpbiBzb3VyY2VfZmlsZW5hbWVzOgorICAgICAgICAgICAgYmFzZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChzcmNfbmFtZSkKKyAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLnNwbGl0ZHJpdmUoYmFzZSlbMV0gICMgQ2hvcCBvZmYgdGhlIGRyaXZlCisgICAgICAgICAgICBiYXNlID0gYmFzZVtvcy5wYXRoLmlzYWJzKGJhc2UpOl0gICMgSWYgYWJzLCBjaG9wIG9mZiBsZWFkaW5nIC8KKyAgICAgICAgICAgIGlmIGV4dCBub3QgaW4gc2VsZi5zcmNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICByYWlzZSBVbmtub3duRmlsZUVycm9yKCJ1bmtub3duIGZpbGUgdHlwZSAnJXMnIChmcm9tICclcycpIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXh0LCBzcmNfbmFtZSkpCisgICAgICAgICAgICBpZiBzdHJpcF9kaXI6CisgICAgICAgICAgICAgICAgYmFzZSA9IG9zLnBhdGguYmFzZW5hbWUoYmFzZSkKKyAgICAgICAgICAgIG9ial9uYW1lcy5hcHBlbmQob3MucGF0aC5qb2luKG91dHB1dF9kaXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXNlICsgc2VsZi5vYmpfZXh0ZW5zaW9uKSkKKyAgICAgICAgcmV0dXJuIG9ial9uYW1lcworCisgICAgZGVmIHNoYXJlZF9vYmplY3RfZmlsZW5hbWUoc2VsZiwgYmFzZW5hbWUsIHN0cmlwX2Rpcj1GYWxzZSwgb3V0cHV0X2Rpcj0nJyk6CisgICAgICAgIGFzc2VydCBvdXRwdXRfZGlyIGlzIG5vdCBOb25lCisgICAgICAgIGlmIHN0cmlwX2RpcjoKKyAgICAgICAgICAgIGJhc2VuYW1lID0gb3MucGF0aC5iYXNlbmFtZShiYXNlbmFtZSkKKyAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbihvdXRwdXRfZGlyLCBiYXNlbmFtZSArIHNlbGYuc2hhcmVkX2xpYl9leHRlbnNpb24pCisKKyAgICBkZWYgZXhlY3V0YWJsZV9maWxlbmFtZShzZWxmLCBiYXNlbmFtZSwgc3RyaXBfZGlyPUZhbHNlLCBvdXRwdXRfZGlyPScnKToKKyAgICAgICAgYXNzZXJ0IG91dHB1dF9kaXIgaXMgbm90IE5vbmUKKyAgICAgICAgaWYgc3RyaXBfZGlyOgorICAgICAgICAgICAgYmFzZW5hbWUgPSBvcy5wYXRoLmJhc2VuYW1lKGJhc2VuYW1lKQorICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKG91dHB1dF9kaXIsIGJhc2VuYW1lICsgKHNlbGYuZXhlX2V4dGVuc2lvbiBvciAnJykpCisKKyAgICBkZWYgbGlicmFyeV9maWxlbmFtZShzZWxmLCBsaWJuYW1lLCBsaWJfdHlwZT0nc3RhdGljJywgICAgICMgb3IgJ3NoYXJlZCcKKyAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpcF9kaXI9RmFsc2UsIG91dHB1dF9kaXI9JycpOgorICAgICAgICBhc3NlcnQgb3V0cHV0X2RpciBpcyBub3QgTm9uZQorICAgICAgICBpZiBsaWJfdHlwZSBub3QgaW4gKCJzdGF0aWMiLCAic2hhcmVkIiwgImR5bGliIik6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKAorICAgICAgICAgICAgICAgICInbGliX3R5cGUnIG11c3QgYmUgJ3N0YXRpYycsICdzaGFyZWQnIG9yICdkeWxpYiciKQorICAgICAgICBmbXQgPSBnZXRhdHRyKHNlbGYsIGxpYl90eXBlICsgIl9saWJfZm9ybWF0IikKKyAgICAgICAgZXh0ID0gZ2V0YXR0cihzZWxmLCBsaWJfdHlwZSArICJfbGliX2V4dGVuc2lvbiIpCisKKyAgICAgICAgZGlyLCBiYXNlID0gb3MucGF0aC5zcGxpdChsaWJuYW1lKQorICAgICAgICBmaWxlbmFtZSA9IGZtdCAlIChiYXNlLCBleHQpCisgICAgICAgIGlmIHN0cmlwX2RpcjoKKyAgICAgICAgICAgIGRpciA9ICcnCisKKyAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbihvdXRwdXRfZGlyLCBkaXIsIGZpbGVuYW1lKQorCisKKyAgICAjIC0tIFV0aWxpdHkgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgZGVmIGV4ZWN1dGUoc2VsZiwgZnVuYywgYXJncywgbXNnPU5vbmUsIGxldmVsPTEpOgorICAgICAgICBleGVjdXRlKGZ1bmMsIGFyZ3MsIG1zZywgc2VsZi5kcnlfcnVuKQorCisgICAgZGVmIHNwYXduKHNlbGYsIGNtZCk6CisgICAgICAgIHNwYXduKGNtZCwgZHJ5X3J1bj1zZWxmLmRyeV9ydW4pCisKKyAgICBkZWYgbW92ZV9maWxlKHNlbGYsIHNyYywgZHN0KToKKyAgICAgICAgbG9nZ2VyLmluZm8oIm1vdmluZyAlciB0byAlciIsIHNyYywgZHN0KQorICAgICAgICBpZiBzZWxmLmRyeV9ydW46CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgcmV0dXJuIG1vdmUoc3JjLCBkc3QpCisKKyAgICBkZWYgbWtwYXRoKHNlbGYsIG5hbWUsIG1vZGU9MG83NzcpOgorICAgICAgICBuYW1lID0gb3MucGF0aC5ub3JtcGF0aChuYW1lKQorICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKG5hbWUpIG9yIG5hbWUgPT0gJyc6CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgaWYgc2VsZi5kcnlfcnVuOgorICAgICAgICAgICAgaGVhZCA9ICcnCisgICAgICAgICAgICBmb3IgcGFydCBpbiBuYW1lLnNwbGl0KG9zLnNlcCk6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oImNyZWF0ZWQgZGlyZWN0b3J5ICVzJXMiLCBoZWFkLCBwYXJ0KQorICAgICAgICAgICAgICAgIGhlYWQgKz0gcGFydCArIG9zLnNlcAorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIG9zLm1ha2VkaXJzKG5hbWUsIG1vZGUpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2N5Z3dpbmNjb21waWxlci5weSBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvY3lnd2luY2NvbXBpbGVyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNlZWMwNjcKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2N5Z3dpbmNjb21waWxlci5weQpAQCAtMCwwICsxLDM1MSBAQAorIiIiQ0NvbXBpbGVyIGltcGxlbWVudGF0aW9ucyBmb3IgQ3lnd2luIGFuZCBtaW5ndzMyIHZlcnNpb25zIG9mIEdDQy4KKworVGhpcyBtb2R1bGUgY29udGFpbnMgdGhlIEN5Z3dpbkNDb21waWxlciBjbGFzcywgYSBzdWJjbGFzcyBvZgorVW5peENDb21waWxlciB0aGF0IGhhbmRsZXMgdGhlIEN5Z3dpbiBwb3J0IG9mIHRoZSBHTlUgQyBjb21waWxlciB0bworV2luZG93cywgYW5kIHRoZSBNaW5ndzMyQ0NvbXBpbGVyIGNsYXNzIHdoaWNoIGhhbmRsZXMgdGhlIG1pbmd3MzIgcG9ydAorb2YgR0NDIChzYW1lIGFzIGN5Z3dpbiBpbiBuby1jeWd3aW4gbW9kZSkuCisiIiIKKworIyBwcm9ibGVtczoKKyMKKyMgKiBpZiB5b3UgdXNlIGEgbXN2YyBjb21waWxlZCBweXRob24gdmVyc2lvbiAoMS41LjIpCisjICAgMS4geW91IGhhdmUgdG8gaW5zZXJ0IGEgX19HTlVDX18gc2VjdGlvbiBpbiBpdHMgY29uZmlnLmgKKyMgICAyLiB5b3UgaGF2ZSB0byBnZW5lcmF0ZSBhIGltcG9ydCBsaWJyYXJ5IGZvciBpdHMgZGxsCisjICAgICAgLSBjcmVhdGUgYSBkZWYtZmlsZSBmb3IgcHl0aG9uPz8uZGxsCisjICAgICAgLSBjcmVhdGUgYSBpbXBvcnQgbGlicmFyeSB1c2luZworIyAgICAgICAgICAgICBkbGx0b29sIC0tZGxsbmFtZSBweXRob24xNS5kbGwgLS1kZWYgcHl0aG9uMTUuZGVmIFwKKyMgICAgICAgICAgICAgICAgICAgICAgIC0tb3V0cHV0LWxpYiBsaWJweXRob24xNS5hCisjCisjICAgc2VlIGFsc28gaHR0cDovL3N0YXJzaGlwLnB5dGhvbi5uZXQvY3Jldy9rZXJuci9taW5ndzMyL05vdGVzLmh0bWwKKyMKKyMgKiBXZSBwdXQgZXhwb3J0X3N5bWJvbHMgaW4gYSBkZWYtZmlsZSwgYW5kIGRvbid0IHVzZQorIyAgIC0tZXhwb3J0LWFsbC1zeW1ib2xzIGJlY2F1c2UgaXQgZG9lc24ndCB3b3JrZWQgcmVsaWFibGUgaW4gc29tZQorIyAgIHRlc3RlZCBjb25maWd1cmF0aW9ucy4gQW5kIGJlY2F1c2Ugb3RoZXIgd2luZG93cyBjb21waWxlcnMgYWxzbworIyAgIG5lZWQgdGhlaXIgc3ltYm9scyBzcGVjaWZpZWQgdGhpcyBubyBzZXJpb3VzIHByb2JsZW0uCisjCisjIHRlc3RlZCBjb25maWd1cmF0aW9uczoKKyMKKyMgKiBjeWd3aW4gZ2NjIDIuOTEuNTcvbGQgMi45LjQvZGxsd3JhcCAwLjIuNCB3b3JrcworIyAgIChhZnRlciBwYXRjaGluZyBweXRob24ncyBjb25maWcuaCBhbmQgZm9yIEMrKyBzb21lIG90aGVyIGluY2x1ZGUgZmlsZXMpCisjICAgc2VlIGFsc28gaHR0cDovL3N0YXJzaGlwLnB5dGhvbi5uZXQvY3Jldy9rZXJuci9taW5ndzMyL05vdGVzLmh0bWwKKyMgKiBtaW5ndzMyIGdjYyAyLjk1LjIvbGQgMi45LjQvZGxsd3JhcCAwLjIuNCB3b3JrcworIyAgIChsZCBkb2Vzbid0IHN1cHBvcnQgLXNoYXJlZCwgc28gd2UgdXNlIGRsbHdyYXApCisjICogY3lnd2luIGdjYyAyLjk1LjIvbGQgMi4xMC45MC9kbGx3cmFwIDIuMTAuOTAgd29ya3Mgbm93CisjICAgLSBpdHMgZGxsd3JhcCBkb2Vzbid0IHdvcmssIHRoZXJlIGlzIGEgYnVnIGluIGJpbnV0aWxzIDIuMTAuOTAKKyMgICAgIHNlZSBhbHNvIGh0dHA6Ly9zb3VyY2VzLnJlZGhhdC5jb20vbWwvY3lnd2luLzIwMDAtMDYvbXNnMDEyNzQuaHRtbAorIyAgIC0gdXNpbmcgZ2NjIC1tZGxsIGluc3RlYWQgZGxsd3JhcCBkb2Vzbid0IHdvcmsgd2l0aG91dCAtc3RhdGljIGJlY2F1c2UKKyMgICAgIGl0IHRyaWVzIHRvIGxpbmsgYWdhaW5zdCBkbGxzIGluc3RlYWQgdGhlaXIgaW1wb3J0IGxpYnJhcmllcy4gKElmCisjICAgICBpdCBmaW5kcyB0aGUgZGxsIGZpcnN0LikKKyMgICAgIEJ5IHNwZWNpZnlpbmcgLXN0YXRpYyB3ZSBmb3JjZSBsZCB0byBsaW5rIGFnYWluc3QgdGhlIGltcG9ydCBsaWJyYXJpZXMsCisjICAgICB0aGlzIGlzIHdpbmRvd3Mgc3RhbmRhcmQgYW5kIHRoZXJlIGFyZSBub3JtYWxseSBub3QgdGhlIG5lY2Vzc2FyeSBzeW1ib2xzCisjICAgICBpbiB0aGUgZGxscy4KKyMgICAqKiogb25seSB0aGUgdmVyc2lvbiBvZiBKdW5lIDIwMDAgc2hvd3MgdGhlc2UgcHJvYmxlbXMKKyMgKiBjeWd3aW4gZ2NjIDMuMi9sZCAyLjEzLjkwIHdvcmtzCisjICAgKGxkIHN1cHBvcnRzIC1zaGFyZWQpCisjICogbWluZ3cgZ2NjIDMuMi9sZCAyLjEzIHdvcmtzCisjICAgKGxkIHN1cHBvcnRzIC1zaGFyZWQpCisKKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLnVuaXhjY29tcGlsZXIgaW1wb3J0IFVuaXhDQ29tcGlsZXIKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IHdyaXRlX2ZpbGUKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nRXhlY0Vycm9yLCBDb21waWxlRXJyb3IsIFVua25vd25GaWxlRXJyb3IKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IGdldF9jb21waWxlcl92ZXJzaW9ucworaW1wb3J0IHN5c2NvbmZpZworCisKK2RlZiBnZXRfbXN2Y3IoKToKKyAgICAiIiJJbmNsdWRlIHRoZSBhcHByb3ByaWF0ZSBNU1ZDIHJ1bnRpbWUgbGlicmFyeSBpZiBQeXRob24gd2FzIGJ1aWx0CisgICAgd2l0aCBNU1ZDIDcuMCBvciBsYXRlci4KKyAgICAiIiIKKyAgICBtc2NfcG9zID0gc3lzLnZlcnNpb24uZmluZCgnTVNDIHYuJykKKyAgICBpZiBtc2NfcG9zICE9IC0xOgorICAgICAgICBtc2NfdmVyID0gc3lzLnZlcnNpb25bbXNjX3Bvcys2Om1zY19wb3MrMTBdCisgICAgICAgIGlmIG1zY192ZXIgPT0gJzEzMDAnOgorICAgICAgICAgICAgIyBNU1ZDIDcuMAorICAgICAgICAgICAgcmV0dXJuIFsnbXN2Y3I3MCddCisgICAgICAgIGVsaWYgbXNjX3ZlciA9PSAnMTMxMCc6CisgICAgICAgICAgICAjIE1TVkMgNy4xCisgICAgICAgICAgICByZXR1cm4gWydtc3ZjcjcxJ10KKyAgICAgICAgZWxpZiBtc2NfdmVyID09ICcxNDAwJzoKKyAgICAgICAgICAgICMgVlMyMDA1IC8gTVNWQyA4LjAKKyAgICAgICAgICAgIHJldHVybiBbJ21zdmNyODAnXQorICAgICAgICBlbGlmIG1zY192ZXIgPT0gJzE1MDAnOgorICAgICAgICAgICAgIyBWUzIwMDggLyBNU1ZDIDkuMAorICAgICAgICAgICAgcmV0dXJuIFsnbXN2Y3I5MCddCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJVbmtub3duIE1TIENvbXBpbGVyIHZlcnNpb24gJXMgIiAlIG1zY192ZXIpCisKKworY2xhc3MgQ3lnd2luQ0NvbXBpbGVyKFVuaXhDQ29tcGlsZXIpOgorICAgICIiIiBIYW5kbGVzIHRoZSBDeWd3aW4gcG9ydCBvZiB0aGUgR05VIEMgY29tcGlsZXIgdG8gV2luZG93cy4KKyAgICAiIiIKKyAgICBuYW1lID0gJ2N5Z3dpbicKKyAgICBkZXNjcmlwdGlvbiA9ICdDeWd3aW4gcG9ydCBvZiBHTlUgQyBDb21waWxlciBmb3IgV2luMzInCisgICAgb2JqX2V4dGVuc2lvbiA9ICIubyIKKyAgICBzdGF0aWNfbGliX2V4dGVuc2lvbiA9ICIuYSIKKyAgICBzaGFyZWRfbGliX2V4dGVuc2lvbiA9ICIuZGxsIgorICAgIHN0YXRpY19saWJfZm9ybWF0ID0gImxpYiVzJXMiCisgICAgc2hhcmVkX2xpYl9mb3JtYXQgPSAiJXMlcyIKKyAgICBleGVfZXh0ZW5zaW9uID0gIi5leGUiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZHJ5X3J1bj1GYWxzZSwgZm9yY2U9RmFsc2UpOgorICAgICAgICBzdXBlcihDeWd3aW5DQ29tcGlsZXIsIHNlbGYpLl9faW5pdF9fKGRyeV9ydW4sIGZvcmNlKQorCisgICAgICAgIHN0YXR1cywgZGV0YWlscyA9IGNoZWNrX2NvbmZpZ19oKCkKKyAgICAgICAgbG9nZ2VyLmRlYnVnKCJQeXRob24ncyBHQ0Mgc3RhdHVzOiAlcyAoZGV0YWlsczogJXMpIiwgc3RhdHVzLCBkZXRhaWxzKQorICAgICAgICBpZiBzdGF0dXMgaXMgbm90IENPTkZJR19IX09LOgorICAgICAgICAgICAgc2VsZi53YXJuKAorICAgICAgICAgICAgICAgICJQeXRob24ncyBweWNvbmZpZy5oIGRvZXNuJ3Qgc2VlbSB0byBzdXBwb3J0IHlvdXIgY29tcGlsZXIuICIKKyAgICAgICAgICAgICAgICAiUmVhc29uOiAlcy4gIgorICAgICAgICAgICAgICAgICJDb21waWxpbmcgbWF5IGZhaWwgYmVjYXVzZSBvZiB1bmRlZmluZWQgcHJlcHJvY2Vzc29yIG1hY3Jvcy4iCisgICAgICAgICAgICAgICAgJSBkZXRhaWxzKQorCisgICAgICAgIHNlbGYuZ2NjX3ZlcnNpb24sIHNlbGYubGRfdmVyc2lvbiwgc2VsZi5kbGx3cmFwX3ZlcnNpb24gPSBcCisgICAgICAgICAgICBnZXRfY29tcGlsZXJfdmVyc2lvbnMoKQorICAgICAgICBsb2dnZXIuZGVidWcoc2VsZi5uYW1lICsgIjogZ2NjICVzLCBsZCAlcywgZGxsd3JhcCAlc1xuIiwKKyAgICAgICAgICAgICAgICAgICAgIHNlbGYuZ2NjX3ZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICBzZWxmLmxkX3ZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICBzZWxmLmRsbHdyYXBfdmVyc2lvbikKKworICAgICAgICAjIGxkX3ZlcnNpb24gPj0gIjIuMTAuOTAiIGFuZCA8ICIyLjEzIiBzaG91bGQgYWxzbyBiZSBhYmxlIHRvIHVzZQorICAgICAgICAjIGdjYyAtbWRsbCBpbnN0ZWFkIG9mIGRsbHdyYXAKKyAgICAgICAgIyBPbGRlciBkbGx3cmFwcyBoYWQgb3duIHZlcnNpb24gbnVtYmVycywgbmV3ZXIgb25lcyB1c2UgdGhlCisgICAgICAgICMgc2FtZSBhcyB0aGUgcmVzdCBvZiBiaW51dGlscyAoIGFsc28gbGQgKQorICAgICAgICAjIGRsbHdyYXAgMi4xMC45MCBpcyBidWdneQorICAgICAgICBpZiBzZWxmLmxkX3ZlcnNpb24gPj0gIjIuMTAuOTAiOgorICAgICAgICAgICAgc2VsZi5saW5rZXJfZGxsID0gImdjYyIKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYubGlua2VyX2RsbCA9ICJkbGx3cmFwIgorCisgICAgICAgICMgbGRfdmVyc2lvbiA+PSAiMi4xMyIgc3VwcG9ydCAtc2hhcmVkIHNvIHVzZSBpdCBpbnN0ZWFkIG9mCisgICAgICAgICMgLW1kbGwgLXN0YXRpYworICAgICAgICBpZiBzZWxmLmxkX3ZlcnNpb24gPj0gIjIuMTMiOgorICAgICAgICAgICAgc2hhcmVkX29wdGlvbiA9ICItc2hhcmVkIgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2hhcmVkX29wdGlvbiA9ICItbWRsbCAtc3RhdGljIgorCisgICAgICAgICMgSGFyZC1jb2RlIEdDQyBiZWNhdXNlIHRoYXQncyB3aGF0IHRoaXMgaXMgYWxsIGFib3V0LgorICAgICAgICAjIFhYWCBvcHRpbWl6YXRpb24sIHdhcm5pbmdzIGV0Yy4gc2hvdWxkIGJlIGN1c3RvbWl6YWJsZS4KKyAgICAgICAgc2VsZi5zZXRfZXhlY3V0YWJsZXMoY29tcGlsZXI9J2djYyAtbWN5Z3dpbiAtTyAtV2FsbCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBpbGVyX3NvPSdnY2MgLW1jeWd3aW4gLW1kbGwgLU8gLVdhbGwnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21waWxlcl9jeHg9J2crKyAtbWN5Z3dpbiAtTyAtV2FsbCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmtlcl9leGU9J2djYyAtbWN5Z3dpbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmtlcl9zbz0oJyVzIC1tY3lnd2luICVzJyAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNlbGYubGlua2VyX2RsbCwgc2hhcmVkX29wdGlvbikpKQorCisgICAgICAgICMgY3lnd2luIGFuZCBtaW5ndzMyIG5lZWQgZGlmZmVyZW50IHNldHMgb2YgbGlicmFyaWVzCisgICAgICAgIGlmIHNlbGYuZ2NjX3ZlcnNpb24gPT0gIjIuOTEuNTciOgorICAgICAgICAgICAgIyBjeWd3aW4gc2hvdWxkbid0IG5lZWQgbXN2Y3J0LCBidXQgd2l0aG91dCB0aGUgZGxscyB3aWxsIGNyYXNoCisgICAgICAgICAgICAjIChnY2MgdmVyc2lvbiAyLjkxLjU3KSAtLSBwZXJoYXBzIHNvbWV0aGluZyBhYm91dCBpbml0aWFsaXphdGlvbgorICAgICAgICAgICAgc2VsZi5kbGxfbGlicmFyaWVzPVsibXN2Y3J0Il0KKyAgICAgICAgICAgIHNlbGYud2FybigKKyAgICAgICAgICAgICAgICAiQ29uc2lkZXIgdXBncmFkaW5nIHRvIGEgbmV3ZXIgdmVyc2lvbiBvZiBnY2MiKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBJbmNsdWRlIHRoZSBhcHByb3ByaWF0ZSBNU1ZDIHJ1bnRpbWUgbGlicmFyeSBpZiBQeXRob24gd2FzIGJ1aWx0CisgICAgICAgICAgICAjIHdpdGggTVNWQyA3LjAgb3IgbGF0ZXIuCisgICAgICAgICAgICBzZWxmLmRsbF9saWJyYXJpZXMgPSBnZXRfbXN2Y3IoKQorCisgICAgZGVmIF9jb21waWxlKHNlbGYsIG9iaiwgc3JjLCBleHQsIGNjX2FyZ3MsIGV4dHJhX3Bvc3RhcmdzLCBwcF9vcHRzKToKKyAgICAgICAgIiIiQ29tcGlsZSB0aGUgc291cmNlIGJ5IHNwYXduaW5nIEdDQyBhbmQgd2luZHJlcyBpZiBuZWVkZWQuIiIiCisgICAgICAgIGlmIGV4dCA9PSAnLnJjJyBvciBleHQgPT0gJy5yZXMnOgorICAgICAgICAgICAgIyBnY2MgbmVlZHMgJy5yZXMnIGFuZCAnLnJjJyBjb21waWxlZCB0byBvYmplY3QgZmlsZXMgISEhCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbIndpbmRyZXMiLCAiLWkiLCBzcmMsICItbyIsIG9ial0pCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBDb21waWxlRXJyb3IobXNnKQorICAgICAgICBlbHNlOiAjIGZvciBvdGhlciBmaWxlcyB1c2UgdGhlIEMtY29tcGlsZXIKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLnNwYXduKHNlbGYuY29tcGlsZXJfc28gKyBjY19hcmdzICsgW3NyYywgJy1vJywgb2JqXSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYV9wb3N0YXJncykKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisKKyAgICBkZWYgbGluayhzZWxmLCB0YXJnZXRfZGVzYywgb2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZGlyPU5vbmUsCisgICAgICAgICAgICAgbGlicmFyaWVzPU5vbmUsIGxpYnJhcnlfZGlycz1Ob25lLCBydW50aW1lX2xpYnJhcnlfZGlycz1Ob25lLAorICAgICAgICAgICAgIGV4cG9ydF9zeW1ib2xzPU5vbmUsIGRlYnVnPUZhbHNlLCBleHRyYV9wcmVhcmdzPU5vbmUsCisgICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3M9Tm9uZSwgYnVpbGRfdGVtcD1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lKToKKyAgICAgICAgIiIiTGluayB0aGUgb2JqZWN0cy4iIiIKKyAgICAgICAgIyB1c2Ugc2VwYXJhdGUgY29waWVzLCBzbyB3ZSBjYW4gbW9kaWZ5IHRoZSBsaXN0cworICAgICAgICBleHRyYV9wcmVhcmdzID0gbGlzdChleHRyYV9wcmVhcmdzIG9yIFtdKQorICAgICAgICBsaWJyYXJpZXMgPSBsaXN0KGxpYnJhcmllcyBvciBbXSkKKyAgICAgICAgb2JqZWN0cyA9IGxpc3Qob2JqZWN0cyBvciBbXSkKKworICAgICAgICAjIEFkZGl0aW9uYWwgbGlicmFyaWVzCisgICAgICAgIGxpYnJhcmllcy5leHRlbmQoc2VsZi5kbGxfbGlicmFyaWVzKQorCisgICAgICAgICMgaGFuZGxlIGV4cG9ydCBzeW1ib2xzIGJ5IGNyZWF0aW5nIGEgZGVmLWZpbGUKKyAgICAgICAgIyB3aXRoIGV4ZWN1dGFibGVzIHRoaXMgb25seSB3b3JrcyB3aXRoIGdjYy9sZCBhcyBsaW5rZXIKKyAgICAgICAgaWYgKChleHBvcnRfc3ltYm9scyBpcyBub3QgTm9uZSkgYW5kCisgICAgICAgICAgICAodGFyZ2V0X2Rlc2MgIT0gc2VsZi5FWEVDVVRBQkxFIG9yIHNlbGYubGlua2VyX2RsbCA9PSAiZ2NjIikpOgorICAgICAgICAgICAgIyAoVGhlIGxpbmtlciBkb2Vzbid0IGRvIGFueXRoaW5nIGlmIG91dHB1dCBpcyB1cC10by1kYXRlLgorICAgICAgICAgICAgIyBTbyBpdCB3b3VsZCBwcm9iYWJseSBiZXR0ZXIgdG8gY2hlY2sgaWYgd2UgcmVhbGx5IG5lZWQgdGhpcywKKyAgICAgICAgICAgICMgYnV0IGZvciB0aGlzIHdlIGhhZCB0byBpbnNlcnQgc29tZSB1bmNoYW5nZWQgcGFydHMgb2YKKyAgICAgICAgICAgICMgVW5peENDb21waWxlciwgYW5kIHRoaXMgaXMgbm90IHdoYXQgd2Ugd2FudC4pCisKKyAgICAgICAgICAgICMgd2Ugd2FudCB0byBwdXQgc29tZSBmaWxlcyBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgYXMgdGhlCisgICAgICAgICAgICAjIG9iamVjdCBmaWxlcyBhcmUsIGJ1aWxkX3RlbXAgZG9lc24ndCBoZWxwIG11Y2gKKyAgICAgICAgICAgICMgd2hlcmUgYXJlIHRoZSBvYmplY3QgZmlsZXMKKyAgICAgICAgICAgIHRlbXBfZGlyID0gb3MucGF0aC5kaXJuYW1lKG9iamVjdHNbMF0pCisgICAgICAgICAgICAjIG5hbWUgb2YgZGxsIHRvIGdpdmUgdGhlIGhlbHBlciBmaWxlcyB0aGUgc2FtZSBiYXNlIG5hbWUKKyAgICAgICAgICAgIGRsbF9uYW1lLCBkbGxfZXh0ZW5zaW9uID0gb3MucGF0aC5zcGxpdGV4dCgKKyAgICAgICAgICAgICAgICBvcy5wYXRoLmJhc2VuYW1lKG91dHB1dF9maWxlbmFtZSkpCisKKyAgICAgICAgICAgICMgZ2VuZXJhdGUgdGhlIGZpbGVuYW1lcyBmb3IgdGhlc2UgZmlsZXMKKyAgICAgICAgICAgIGRlZl9maWxlID0gb3MucGF0aC5qb2luKHRlbXBfZGlyLCBkbGxfbmFtZSArICIuZGVmIikKKyAgICAgICAgICAgIGxpYl9maWxlID0gb3MucGF0aC5qb2luKHRlbXBfZGlyLCAnbGliJyArIGRsbF9uYW1lICsgIi5hIikKKworICAgICAgICAgICAgIyBHZW5lcmF0ZSAuZGVmIGZpbGUKKyAgICAgICAgICAgIGNvbnRlbnRzID0gWworICAgICAgICAgICAgICAgICJMSUJSQVJZICVzIiAlIG9zLnBhdGguYmFzZW5hbWUob3V0cHV0X2ZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAiRVhQT1JUUyJdCisgICAgICAgICAgICBmb3Igc3ltIGluIGV4cG9ydF9zeW1ib2xzOgorICAgICAgICAgICAgICAgIGNvbnRlbnRzLmFwcGVuZChzeW0pCisgICAgICAgICAgICBzZWxmLmV4ZWN1dGUod3JpdGVfZmlsZSwgKGRlZl9maWxlLCBjb250ZW50cyksCisgICAgICAgICAgICAgICAgICAgICAgICAgIndyaXRpbmcgJXMiICUgZGVmX2ZpbGUpCisKKyAgICAgICAgICAgICMgbmV4dCBhZGQgb3B0aW9ucyBmb3IgZGVmLWZpbGUgYW5kIHRvIGNyZWF0aW5nIGltcG9ydCBsaWJyYXJpZXMKKworICAgICAgICAgICAgIyBkbGx3cmFwIHVzZXMgZGlmZmVyZW50IG9wdGlvbnMgdGhhbiBnY2MvbGQKKyAgICAgICAgICAgIGlmIHNlbGYubGlua2VyX2RsbCA9PSAiZGxsd3JhcCI6CisgICAgICAgICAgICAgICAgZXh0cmFfcHJlYXJncy5leHRlbmQoKCItLW91dHB1dC1saWIiLCBsaWJfZmlsZSkpCisgICAgICAgICAgICAgICAgIyBmb3IgZGxsd3JhcCB3ZSBoYXZlIHRvIHVzZSBhIHNwZWNpYWwgb3B0aW9uCisgICAgICAgICAgICAgICAgZXh0cmFfcHJlYXJncy5leHRlbmQoKCItLWRlZiIsIGRlZl9maWxlKSkKKyAgICAgICAgICAgICMgd2UgdXNlIGdjYy9sZCBoZXJlIGFuZCBjYW4gYmUgc3VyZSBsZCBpcyA+PSAyLjkuMTAKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBkb2Vzbid0IHdvcms6IGJmZF9jbG9zZSBidWlsZFwuLi5cbGliZm9vLmE6IEludmFsaWQgb3BlcmF0aW9uCisgICAgICAgICAgICAgICAgI2V4dHJhX3ByZWFyZ3MuZXh0ZW5kKCgiLVdsLC0tb3V0LWltcGxpYiwlcyIgJSBsaWJfZmlsZSkpCisgICAgICAgICAgICAgICAgIyBmb3IgZ2NjL2xkIHRoZSBkZWYtZmlsZSBpcyBzcGVjaWZpZWQgYXMgYW55IG9iamVjdCBmaWxlcworICAgICAgICAgICAgICAgIG9iamVjdHMuYXBwZW5kKGRlZl9maWxlKQorCisgICAgICAgICNlbmQ6IGlmICgoZXhwb3J0X3N5bWJvbHMgaXMgbm90IE5vbmUpIGFuZAorICAgICAgICAjICAgICAgICAodGFyZ2V0X2Rlc2MgIT0gc2VsZi5FWEVDVVRBQkxFIG9yIHNlbGYubGlua2VyX2RsbCA9PSAiZ2NjIikpOgorCisgICAgICAgICMgd2hvIHdhbnRzIHN5bWJvbHMgYW5kIGEgbWFueSB0aW1lcyBsYXJnZXIgb3V0cHV0IGZpbGUKKyAgICAgICAgIyBzaG91bGQgZXhwbGljaXRseSBzd2l0Y2ggdGhlIGRlYnVnIG1vZGUgb24KKyAgICAgICAgIyBvdGhlcndpc2Ugd2UgbGV0IGRsbHdyYXAvbGQgc3RyaXAgdGhlIG91dHB1dCBmaWxlCisgICAgICAgICMgKE9uIG15IG1hY2hpbmU6IDEwS0IgPCBzdHJpcHBlZF9maWxlIDwgPz8xMDBLQgorICAgICAgICAjICAgdW5zdHJpcHBlZF9maWxlID0gc3RyaXBwZWRfZmlsZSArIFhYWCBLQgorICAgICAgICAjICAoIFhYWD0yNTQgZm9yIGEgdHlwaWNhbCBweXRob24gZXh0ZW5zaW9uKSkKKyAgICAgICAgaWYgbm90IGRlYnVnOgorICAgICAgICAgICAgZXh0cmFfcHJlYXJncy5hcHBlbmQoIi1zIikKKworICAgICAgICBzdXBlcihDeWd3aW5DQ29tcGlsZXIsIHNlbGYpLmxpbmsoCisgICAgICAgICAgICB0YXJnZXRfZGVzYywgb2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZGlyLCBsaWJyYXJpZXMsCisgICAgICAgICAgICBsaWJyYXJ5X2RpcnMsIHJ1bnRpbWVfbGlicmFyeV9kaXJzLAorICAgICAgICAgICAgTm9uZSwgIyBleHBvcnRfc3ltYm9scywgd2UgZG8gdGhpcyBpbiBvdXIgZGVmLWZpbGUKKyAgICAgICAgICAgIGRlYnVnLCBleHRyYV9wcmVhcmdzLCBleHRyYV9wb3N0YXJncywgYnVpbGRfdGVtcCwgdGFyZ2V0X2xhbmcpCisKKyAgICAjIC0tIE1pc2NlbGxhbmVvdXMgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgZGVmIG9iamVjdF9maWxlbmFtZXMoc2VsZiwgc291cmNlX2ZpbGVuYW1lcywgc3RyaXBfZGlyPUZhbHNlLAorICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dF9kaXI9JycpOgorICAgICAgICAiIiJBZGRzIHN1cHBvcnRzIGZvciByYyBhbmQgcmVzIGZpbGVzLiIiIgorICAgICAgICBpZiBvdXRwdXRfZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBvdXRwdXRfZGlyID0gJycKKyAgICAgICAgb2JqX25hbWVzID0gW10KKyAgICAgICAgZm9yIHNyY19uYW1lIGluIHNvdXJjZV9maWxlbmFtZXM6CisgICAgICAgICAgICAjIHVzZSBub3JtY2FzZSB0byBtYWtlIHN1cmUgJy5yYycgaXMgcmVhbGx5ICcucmMnIGFuZCBub3QgJy5SQycKKyAgICAgICAgICAgIGJhc2UsIGV4dCA9IG9zLnBhdGguc3BsaXRleHQob3MucGF0aC5ub3JtY2FzZShzcmNfbmFtZSkpCisgICAgICAgICAgICBpZiBleHQgbm90IGluIChzZWxmLnNyY19leHRlbnNpb25zICsgWycucmMnLCcucmVzJ10pOgorICAgICAgICAgICAgICAgIHJhaXNlIFVua25vd25GaWxlRXJyb3IoInVua25vd24gZmlsZSB0eXBlICclcycgKGZyb20gJyVzJykiICUgKGV4dCwgc3JjX25hbWUpKQorICAgICAgICAgICAgaWYgc3RyaXBfZGlyOgorICAgICAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLmJhc2VuYW1lKGJhc2UpCisgICAgICAgICAgICBpZiBleHQgaW4gKCcucmVzJywgJy5yYycpOgorICAgICAgICAgICAgICAgICMgdGhlc2UgbmVlZCB0byBiZSBjb21waWxlZCB0byBvYmplY3QgZmlsZXMKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBleHQgKyBzZWxmLm9ial9leHRlbnNpb24pKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBzZWxmLm9ial9leHRlbnNpb24pKQorICAgICAgICByZXR1cm4gb2JqX25hbWVzCisKKyMgdGhlIHNhbWUgYXMgY3lnd2luIHBsdXMgc29tZSBhZGRpdGlvbmFsIHBhcmFtZXRlcnMKK2NsYXNzIE1pbmd3MzJDQ29tcGlsZXIoQ3lnd2luQ0NvbXBpbGVyKToKKyAgICAiIiIgSGFuZGxlcyB0aGUgTWluZ3czMiBwb3J0IG9mIHRoZSBHTlUgQyBjb21waWxlciB0byBXaW5kb3dzLgorICAgICIiIgorICAgIG5hbWUgPSAnbWluZ3czMicKKyAgICBkZXNjcmlwdGlvbiA9ICdNaW5HVzMyIGNvbXBpbGVyJworCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRyeV9ydW49RmFsc2UsIGZvcmNlPUZhbHNlKToKKyAgICAgICAgc3VwZXIoTWluZ3czMkNDb21waWxlciwgc2VsZikuX19pbml0X18oZHJ5X3J1biwgZm9yY2UpCisKKyAgICAgICAgIyBsZF92ZXJzaW9uID49ICIyLjEzIiBzdXBwb3J0IC1zaGFyZWQgc28gdXNlIGl0IGluc3RlYWQgb2YKKyAgICAgICAgIyAtbWRsbCAtc3RhdGljCisgICAgICAgIGlmIHNlbGYubGRfdmVyc2lvbiA+PSAiMi4xMyI6CisgICAgICAgICAgICBzaGFyZWRfb3B0aW9uID0gIi1zaGFyZWQiCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzaGFyZWRfb3B0aW9uID0gIi1tZGxsIC1zdGF0aWMiCisKKyAgICAgICAgIyBBIHJlYWwgbWluZ3czMiBkb2Vzbid0IG5lZWQgdG8gc3BlY2lmeSBhIGRpZmZlcmVudCBlbnRyeSBwb2ludCwKKyAgICAgICAgIyBidXQgY3lnd2luIDIuOTEuNTcgaW4gbm8tY3lnd2luLW1vZGUgbmVlZHMgaXQuCisgICAgICAgIGlmIHNlbGYuZ2NjX3ZlcnNpb24gPD0gIjIuOTEuNTciOgorICAgICAgICAgICAgZW50cnlfcG9pbnQgPSAnLS1lbnRyeSBfRGxsTWFpbkAxMicKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGVudHJ5X3BvaW50ID0gJycKKworICAgICAgICBzZWxmLnNldF9leGVjdXRhYmxlcyhjb21waWxlcj0nZ2NjIC1tbm8tY3lnd2luIC1PIC1XYWxsJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZXJfc289J2djYyAtbW5vLWN5Z3dpbiAtbWRsbCAtTyAtV2FsbCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBpbGVyX2N4eD0nZysrIC1tbm8tY3lnd2luIC1PIC1XYWxsJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlua2VyX2V4ZT0nZ2NjIC1tbm8tY3lnd2luJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlua2VyX3NvPSclcyAtbW5vLWN5Z3dpbiAlcyAlcycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIChzZWxmLmxpbmtlcl9kbGwsIHNoYXJlZF9vcHRpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50cnlfcG9pbnQpKQorICAgICAgICAjIE1heWJlIHdlIHNob3VsZCBhbHNvIGFwcGVuZCAtbXRocmVhZHMsIGJ1dCB0aGVuIHRoZSBmaW5pc2hlZAorICAgICAgICAjIGRsbHMgbmVlZCBhbm90aGVyIGRsbCAobWluZ3dtMTAuZGxsIHNlZSBNaW5ndzMyIGRvY3MpCisgICAgICAgICMgKC1tdGhyZWFkczogU3VwcG9ydCB0aHJlYWQtc2FmZSBleGNlcHRpb24gaGFuZGxpbmcgb24gYE1pbmd3MzInKQorCisgICAgICAgICMgbm8gYWRkaXRpb25hbCBsaWJyYXJpZXMgbmVlZGVkCisgICAgICAgIHNlbGYuZGxsX2xpYnJhcmllcz1bXQorCisgICAgICAgICMgSW5jbHVkZSB0aGUgYXBwcm9wcmlhdGUgTVNWQyBydW50aW1lIGxpYnJhcnkgaWYgUHl0aG9uIHdhcyBidWlsdAorICAgICAgICAjIHdpdGggTVNWQyA3LjAgb3IgbGF0ZXIuCisgICAgICAgIHNlbGYuZGxsX2xpYnJhcmllcyA9IGdldF9tc3ZjcigpCisKKyMgQmVjYXVzZSB0aGVzZSBjb21waWxlcnMgYXJlbid0IGNvbmZpZ3VyZWQgaW4gUHl0aG9uJ3MgcHljb25maWcuaCBmaWxlIGJ5CisjIGRlZmF1bHQsIHdlIHNob3VsZCBhdCBsZWFzdCB3YXJuIHRoZSB1c2VyIGlmIGhlIGlzIHVzaW5nIGEgdW5tb2RpZmllZAorIyB2ZXJzaW9uLgorCitDT05GSUdfSF9PSyA9ICJvayIKK0NPTkZJR19IX05PVE9LID0gIm5vdCBvayIKK0NPTkZJR19IX1VOQ0VSVEFJTiA9ICJ1bmNlcnRhaW4iCisKK2RlZiBjaGVja19jb25maWdfaCgpOgorICAgICIiIkNoZWNrIGlmIHRoZSBjdXJyZW50IFB5dGhvbiBpbnN0YWxsYXRpb24gYXBwZWFycyBhbWVuYWJsZSB0byBidWlsZGluZworICAgIGV4dGVuc2lvbnMgd2l0aCBHQ0MuCisKKyAgICBSZXR1cm5zIGEgdHVwbGUgKHN0YXR1cywgZGV0YWlscyksIHdoZXJlICdzdGF0dXMnIGlzIG9uZSBvZiB0aGUgZm9sbG93aW5nCisgICAgY29uc3RhbnRzOgorCisgICAgLSBDT05GSUdfSF9PSzogYWxsIGlzIHdlbGwsIGdvIGFoZWFkIGFuZCBjb21waWxlCisgICAgLSBDT05GSUdfSF9OT1RPSzogZG9lc24ndCBsb29rIGdvb2QKKyAgICAtIENPTkZJR19IX1VOQ0VSVEFJTjogbm90IHN1cmUgLS0gdW5hYmxlIHRvIHJlYWQgcHljb25maWcuaAorCisgICAgJ2RldGFpbHMnIGlzIGEgaHVtYW4tcmVhZGFibGUgc3RyaW5nIGV4cGxhaW5pbmcgdGhlIHNpdHVhdGlvbi4KKworICAgIE5vdGUgdGhlcmUgYXJlIHR3byB3YXlzIHRvIGNvbmNsdWRlICJPSyI6IGVpdGhlciAnc3lzLnZlcnNpb24nIGNvbnRhaW5zCisgICAgdGhlIHN0cmluZyAiR0NDIiAoaW1wbHlpbmcgdGhhdCB0aGlzIFB5dGhvbiB3YXMgYnVpbHQgd2l0aCBHQ0MpLCBvciB0aGUKKyAgICBpbnN0YWxsZWQgInB5Y29uZmlnLmgiIGNvbnRhaW5zIHRoZSBzdHJpbmcgIl9fR05VQ19fIi4KKyAgICAiIiIKKworICAgICMgWFhYIHNpbmNlIHRoaXMgZnVuY3Rpb24gYWxzbyBjaGVja3Mgc3lzLnZlcnNpb24sIGl0J3Mgbm90IHN0cmljdGx5IGEKKyAgICAjICJweWNvbmZpZy5oIiBjaGVjayAtLSBzaG91bGQgcHJvYmFibHkgYmUgcmVuYW1lZC4uLgorICAgICMgaWYgc3lzLnZlcnNpb24gY29udGFpbnMgR0NDIHRoZW4gcHl0aG9uIHdhcyBjb21waWxlZCB3aXRoIEdDQywgYW5kIHRoZQorICAgICMgcHljb25maWcuaCBmaWxlIHNob3VsZCBiZSBPSworICAgIGlmICJHQ0MiIGluIHN5cy52ZXJzaW9uOgorICAgICAgICByZXR1cm4gQ09ORklHX0hfT0ssICJzeXMudmVyc2lvbiBtZW50aW9ucyAnR0NDJyIKKworICAgICMgbGV0J3Mgc2VlIGlmIF9fR05VQ19fIGlzIG1lbnRpb25lZCBpbiBweXRob24uaAorICAgIGZuID0gc3lzY29uZmlnLmdldF9jb25maWdfaF9maWxlbmFtZSgpCisgICAgdHJ5OgorICAgICAgICB3aXRoIG9wZW4oZm4pIGFzIGNvbmZpZ19oOgorICAgICAgICAgICAgaWYgIl9fR05VQ19fIiBpbiBjb25maWdfaC5yZWFkKCk6CisgICAgICAgICAgICAgICAgcmV0dXJuIENPTkZJR19IX09LLCAiJyVzJyBtZW50aW9ucyAnX19HTlVDX18nIiAlIGZuCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJldHVybiBDT05GSUdfSF9OT1RPSywgIiclcycgZG9lcyBub3QgbWVudGlvbiAnX19HTlVDX18nIiAlIGZuCisgICAgZXhjZXB0IElPRXJyb3IgYXMgZXhjOgorICAgICAgICByZXR1cm4gKENPTkZJR19IX1VOQ0VSVEFJTiwKKyAgICAgICAgICAgICAgICAiY291bGRuJ3QgcmVhZCAnJXMnOiAlcyIgJSAoZm4sIGV4Yy5zdHJlcnJvcikpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2V4dGVuc2lvbi5weSBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvZXh0ZW5zaW9uLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2ZjZlOWEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL2V4dGVuc2lvbi5weQpAQCAtMCwwICsxLDEyMSBAQAorIiIiQ2xhc3MgcmVwcmVzZW50aW5nIEMvQysrIGV4dGVuc2lvbiBtb2R1bGVzLiIiIgorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCisKKyMgVGhpcyBjbGFzcyBpcyByZWFsbHkgb25seSB1c2VkIGJ5IHRoZSAiYnVpbGRfZXh0IiBjb21tYW5kLCBzbyBpdCBtaWdodAorIyBtYWtlIHNlbnNlIHRvIHB1dCBpdCBpbiBkaXN0dXRpbHMuY29tbWFuZC5idWlsZF9leHQuICBIb3dldmVyLCB0aGF0CisjIG1vZHVsZSBpcyBhbHJlYWR5IGJpZyBlbm91Z2gsIGFuZCBJIHdhbnQgdG8gbWFrZSB0aGlzIGNsYXNzIGEgYml0IG1vcmUKKyMgY29tcGxleCB0byBzaW1wbGlmeSBzb21lIGNvbW1vbiBjYXNlcyAoImZvbyIgbW9kdWxlIGluICJmb28uYyIpIGFuZCBkbworIyBiZXR0ZXIgZXJyb3ItY2hlY2tpbmcgKCJmb28uYyIgYWN0dWFsbHkgZXhpc3RzKS4KKyMKKyMgQWxzbywgcHV0dGluZyB0aGlzIGluIGJ1aWxkX2V4dC5weSBtZWFucyBldmVyeSBzZXR1cCBzY3JpcHQgd291bGQgaGF2ZSB0bworIyBpbXBvcnQgdGhhdCBsYXJnZS1pc2ggbW9kdWxlIChpbmRpcmVjdGx5LCB0aHJvdWdoIGRpc3R1dGlscy5jb3JlKSBpbgorIyBvcmRlciB0byBkbyBhbnl0aGluZy4KKworCitjbGFzcyBFeHRlbnNpb246CisgICAgIiIiSnVzdCBhIGNvbGxlY3Rpb24gb2YgYXR0cmlidXRlcyB0aGF0IGRlc2NyaWJlcyBhbiBleHRlbnNpb24KKyAgICBtb2R1bGUgYW5kIGV2ZXJ5dGhpbmcgbmVlZGVkIHRvIGJ1aWxkIGl0IChob3BlZnVsbHkgaW4gYSBwb3J0YWJsZQorICAgIHdheSwgYnV0IHRoZXJlIGFyZSBob29rcyB0aGF0IGxldCB5b3UgYmUgYXMgdW5wb3J0YWJsZSBhcyB5b3UgbmVlZCkuCisKKyAgICBJbnN0YW5jZSBhdHRyaWJ1dGVzOgorICAgICAgbmFtZSA6IHN0cmluZworICAgICAgICB0aGUgZnVsbCBuYW1lIG9mIHRoZSBleHRlbnNpb24sIGluY2x1ZGluZyBhbnkgcGFja2FnZXMgLS0gaWUuCisgICAgICAgICpub3QqIGEgZmlsZW5hbWUgb3IgcGF0aG5hbWUsIGJ1dCBQeXRob24gZG90dGVkIG5hbWUKKyAgICAgIHNvdXJjZXMgOiBbc3RyaW5nXQorICAgICAgICBsaXN0IG9mIHNvdXJjZSBmaWxlbmFtZXMsIHJlbGF0aXZlIHRvIHRoZSBkaXN0cmlidXRpb24gcm9vdAorICAgICAgICAod2hlcmUgdGhlIHNldHVwIHNjcmlwdCBsaXZlcyksIGluIFVuaXggZm9ybSAoc2xhc2gtc2VwYXJhdGVkKQorICAgICAgICBmb3IgcG9ydGFiaWxpdHkuICBTb3VyY2UgZmlsZXMgbWF5IGJlIEMsIEMrKywgU1dJRyAoLmkpLAorICAgICAgICBwbGF0Zm9ybS1zcGVjaWZpYyByZXNvdXJjZSBmaWxlcywgb3Igd2hhdGV2ZXIgZWxzZSBpcyByZWNvZ25pemVkCisgICAgICAgIGJ5IHRoZSAiYnVpbGRfZXh0IiBjb21tYW5kIGFzIHNvdXJjZSBmb3IgYSBQeXRob24gZXh0ZW5zaW9uLgorICAgICAgaW5jbHVkZV9kaXJzIDogW3N0cmluZ10KKyAgICAgICAgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIEMvQysrIGhlYWRlciBmaWxlcyAoaW4gVW5peAorICAgICAgICBmb3JtIGZvciBwb3J0YWJpbGl0eSkKKyAgICAgIGRlZmluZV9tYWNyb3MgOiBbKG5hbWUgOiBzdHJpbmcsIHZhbHVlIDogc3RyaW5nfE5vbmUpXQorICAgICAgICBsaXN0IG9mIG1hY3JvcyB0byBkZWZpbmU7IGVhY2ggbWFjcm8gaXMgZGVmaW5lZCB1c2luZyBhIDItdHVwbGUsCisgICAgICAgIHdoZXJlICd2YWx1ZScgaXMgZWl0aGVyIHRoZSBzdHJpbmcgdG8gZGVmaW5lIGl0IHRvIG9yIE5vbmUgdG8KKyAgICAgICAgZGVmaW5lIGl0IHdpdGhvdXQgYSBwYXJ0aWN1bGFyIHZhbHVlIChlcXVpdmFsZW50IG9mICIjZGVmaW5lCisgICAgICAgIEZPTyIgaW4gc291cmNlIG9yIC1ERk9PIG9uIFVuaXggQyBjb21waWxlciBjb21tYW5kIGxpbmUpCisgICAgICB1bmRlZl9tYWNyb3MgOiBbc3RyaW5nXQorICAgICAgICBsaXN0IG9mIG1hY3JvcyB0byB1bmRlZmluZSBleHBsaWNpdGx5CisgICAgICBsaWJyYXJ5X2RpcnMgOiBbc3RyaW5nXQorICAgICAgICBsaXN0IG9mIGRpcmVjdG9yaWVzIHRvIHNlYXJjaCBmb3IgQy9DKysgbGlicmFyaWVzIGF0IGxpbmsgdGltZQorICAgICAgbGlicmFyaWVzIDogW3N0cmluZ10KKyAgICAgICAgbGlzdCBvZiBsaWJyYXJ5IG5hbWVzIChub3QgZmlsZW5hbWVzIG9yIHBhdGhzKSB0byBsaW5rIGFnYWluc3QKKyAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzIDogW3N0cmluZ10KKyAgICAgICAgbGlzdCBvZiBkaXJlY3RvcmllcyB0byBzZWFyY2ggZm9yIEMvQysrIGxpYnJhcmllcyBhdCBydW4gdGltZQorICAgICAgICAoZm9yIHNoYXJlZCBleHRlbnNpb25zLCB0aGlzIGlzIHdoZW4gdGhlIGV4dGVuc2lvbiBpcyBsb2FkZWQpCisgICAgICBleHRyYV9vYmplY3RzIDogW3N0cmluZ10KKyAgICAgICAgbGlzdCBvZiBleHRyYSBmaWxlcyB0byBsaW5rIHdpdGggKGVnLiBvYmplY3QgZmlsZXMgbm90IGltcGxpZWQKKyAgICAgICAgYnkgJ3NvdXJjZXMnLCBzdGF0aWMgbGlicmFyeSB0aGF0IG11c3QgYmUgZXhwbGljaXRseSBzcGVjaWZpZWQsCisgICAgICAgIGJpbmFyeSByZXNvdXJjZSBmaWxlcywgZXRjLikKKyAgICAgIGV4dHJhX2NvbXBpbGVfYXJncyA6IFtzdHJpbmddCisgICAgICAgIGFueSBleHRyYSBwbGF0Zm9ybS0gYW5kIGNvbXBpbGVyLXNwZWNpZmljIGluZm9ybWF0aW9uIHRvIHVzZQorICAgICAgICB3aGVuIGNvbXBpbGluZyB0aGUgc291cmNlIGZpbGVzIGluICdzb3VyY2VzJy4gIEZvciBwbGF0Zm9ybXMgYW5kCisgICAgICAgIGNvbXBpbGVycyB3aGVyZSAiY29tbWFuZCBsaW5lIiBtYWtlcyBzZW5zZSwgdGhpcyBpcyB0eXBpY2FsbHkgYQorICAgICAgICBsaXN0IG9mIGNvbW1hbmQtbGluZSBhcmd1bWVudHMsIGJ1dCBmb3Igb3RoZXIgcGxhdGZvcm1zIGl0IGNvdWxkCisgICAgICAgIGJlIGFueXRoaW5nLgorICAgICAgZXh0cmFfbGlua19hcmdzIDogW3N0cmluZ10KKyAgICAgICAgYW55IGV4dHJhIHBsYXRmb3JtLSBhbmQgY29tcGlsZXItc3BlY2lmaWMgaW5mb3JtYXRpb24gdG8gdXNlCisgICAgICAgIHdoZW4gbGlua2luZyBvYmplY3QgZmlsZXMgdG9nZXRoZXIgdG8gY3JlYXRlIHRoZSBleHRlbnNpb24gKG9yCisgICAgICAgIHRvIGNyZWF0ZSBhIG5ldyBzdGF0aWMgUHl0aG9uIGludGVycHJldGVyKS4gIFNpbWlsYXIKKyAgICAgICAgaW50ZXJwcmV0YXRpb24gYXMgZm9yICdleHRyYV9jb21waWxlX2FyZ3MnLgorICAgICAgZXhwb3J0X3N5bWJvbHMgOiBbc3RyaW5nXQorICAgICAgICBsaXN0IG9mIHN5bWJvbHMgdG8gYmUgZXhwb3J0ZWQgZnJvbSBhIHNoYXJlZCBleHRlbnNpb24uICBOb3QKKyAgICAgICAgdXNlZCBvbiBhbGwgcGxhdGZvcm1zLCBhbmQgbm90IGdlbmVyYWxseSBuZWNlc3NhcnkgZm9yIFB5dGhvbgorICAgICAgICBleHRlbnNpb25zLCB3aGljaCB0eXBpY2FsbHkgZXhwb3J0IGV4YWN0bHkgb25lIHN5bWJvbDogImluaXQiICsKKyAgICAgICAgZXh0ZW5zaW9uX25hbWUuCisgICAgICBzd2lnX29wdHMgOiBbc3RyaW5nXQorICAgICAgICBhbnkgZXh0cmEgb3B0aW9ucyB0byBwYXNzIHRvIFNXSUcgaWYgYSBzb3VyY2UgZmlsZSBoYXMgdGhlIC5pCisgICAgICAgIGV4dGVuc2lvbi4KKyAgICAgIGRlcGVuZHMgOiBbc3RyaW5nXQorICAgICAgICBsaXN0IG9mIGZpbGVzIHRoYXQgdGhlIGV4dGVuc2lvbiBkZXBlbmRzIG9uCisgICAgICBsYW5ndWFnZSA6IHN0cmluZworICAgICAgICBleHRlbnNpb24gbGFuZ3VhZ2UgKGkuZS4gImMiLCAiYysrIiwgIm9iamMiKS4gV2lsbCBiZSBkZXRlY3RlZAorICAgICAgICBmcm9tIHRoZSBzb3VyY2UgZXh0ZW5zaW9ucyBpZiBub3QgcHJvdmlkZWQuCisgICAgICBvcHRpb25hbCA6IGJvb2xlYW4KKyAgICAgICAgc3BlY2lmaWVzIHRoYXQgYSBidWlsZCBmYWlsdXJlIGluIHRoZSBleHRlbnNpb24gc2hvdWxkIG5vdCBhYm9ydCB0aGUKKyAgICAgICAgYnVpbGQgcHJvY2VzcywgYnV0IHNpbXBseSBub3QgaW5zdGFsbCB0aGUgZmFpbGluZyBleHRlbnNpb24uCisgICAgIiIiCisKKyAgICAjICoqa3dhcmdzIGFyZSBhbGxvd2VkIHNvIHRoYXQgYSB3YXJuaW5nIGlzIGVtaXR0ZWQgaW5zdGVhZCBvZiBhbgorICAgICMgZXhjZXB0aW9uCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG5hbWUsIHNvdXJjZXMsIGluY2x1ZGVfZGlycz1Ob25lLCBkZWZpbmVfbWFjcm9zPU5vbmUsCisgICAgICAgICAgICAgICAgIHVuZGVmX21hY3Jvcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgbGlicmFyaWVzPU5vbmUsCisgICAgICAgICAgICAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzPU5vbmUsIGV4dHJhX29iamVjdHM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgZXh0cmFfY29tcGlsZV9hcmdzPU5vbmUsIGV4dHJhX2xpbmtfYXJncz1Ob25lLAorICAgICAgICAgICAgICAgICBleHBvcnRfc3ltYm9scz1Ob25lLCBzd2lnX29wdHM9Tm9uZSwgZGVwZW5kcz1Ob25lLAorICAgICAgICAgICAgICAgICBsYW5ndWFnZT1Ob25lLCBvcHRpb25hbD1Ob25lLCAqKmt3KToKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UobmFtZSwgc3RyKToKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCInbmFtZScgbXVzdCBiZSBhIHN0cmluZyIpCisKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uoc291cmNlcywgbGlzdCk6CisgICAgICAgICAgICByYWlzZSBBc3NlcnRpb25FcnJvcigiJ3NvdXJjZXMnIG11c3QgYmUgYSBsaXN0IG9mIHN0cmluZ3MiKQorCisgICAgICAgIGZvciB2IGluIHNvdXJjZXM6CisgICAgICAgICAgICBpZiBub3QgaXNpbnN0YW5jZSh2LCBzdHIpOgorICAgICAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCInc291cmNlcycgbXVzdCBiZSBhIGxpc3Qgb2Ygc3RyaW5ncyIpCisKKyAgICAgICAgc2VsZi5uYW1lID0gbmFtZQorICAgICAgICBzZWxmLnNvdXJjZXMgPSBzb3VyY2VzCisgICAgICAgIHNlbGYuaW5jbHVkZV9kaXJzID0gaW5jbHVkZV9kaXJzIG9yIFtdCisgICAgICAgIHNlbGYuZGVmaW5lX21hY3JvcyA9IGRlZmluZV9tYWNyb3Mgb3IgW10KKyAgICAgICAgc2VsZi51bmRlZl9tYWNyb3MgPSB1bmRlZl9tYWNyb3Mgb3IgW10KKyAgICAgICAgc2VsZi5saWJyYXJ5X2RpcnMgPSBsaWJyYXJ5X2RpcnMgb3IgW10KKyAgICAgICAgc2VsZi5saWJyYXJpZXMgPSBsaWJyYXJpZXMgb3IgW10KKyAgICAgICAgc2VsZi5ydW50aW1lX2xpYnJhcnlfZGlycyA9IHJ1bnRpbWVfbGlicmFyeV9kaXJzIG9yIFtdCisgICAgICAgIHNlbGYuZXh0cmFfb2JqZWN0cyA9IGV4dHJhX29iamVjdHMgb3IgW10KKyAgICAgICAgc2VsZi5leHRyYV9jb21waWxlX2FyZ3MgPSBleHRyYV9jb21waWxlX2FyZ3Mgb3IgW10KKyAgICAgICAgc2VsZi5leHRyYV9saW5rX2FyZ3MgPSBleHRyYV9saW5rX2FyZ3Mgb3IgW10KKyAgICAgICAgc2VsZi5leHBvcnRfc3ltYm9scyA9IGV4cG9ydF9zeW1ib2xzIG9yIFtdCisgICAgICAgIHNlbGYuc3dpZ19vcHRzID0gc3dpZ19vcHRzIG9yIFtdCisgICAgICAgIHNlbGYuZGVwZW5kcyA9IGRlcGVuZHMgb3IgW10KKyAgICAgICAgc2VsZi5sYW5ndWFnZSA9IGxhbmd1YWdlCisgICAgICAgIHNlbGYub3B0aW9uYWwgPSBvcHRpb25hbAorCisgICAgICAgICMgSWYgdGhlcmUgYXJlIHVua25vd24ga2V5d29yZCBvcHRpb25zLCB3YXJuIGFib3V0IHRoZW0KKyAgICAgICAgaWYgbGVuKGt3KSA+IDA6CisgICAgICAgICAgICBvcHRpb25zID0gW3JlcHIob3B0aW9uKSBmb3Igb3B0aW9uIGluIGt3XQorICAgICAgICAgICAgb3B0aW9ucyA9ICcsICcuam9pbihzb3J0ZWQob3B0aW9ucykpCisgICAgICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICAgICAndW5rbm93biBhcmd1bWVudHMgZ2l2ZW4gdG8gRXh0ZW5zaW9uOiAlcycsIG9wdGlvbnMpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL21zdmM5Y29tcGlsZXIucHkgYi9MaWIvcGFja2FnaW5nL2NvbXBpbGVyL21zdmM5Y29tcGlsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDI5YWE3NwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvbXN2Yzljb21waWxlci5weQpAQCAtMCwwICsxLDcyMCBAQAorIiIiQ0NvbXBpbGVyIGltcGxlbWVudGF0aW9uIGZvciB0aGUgTWljcm9zb2Z0IFZpc3VhbCBTdHVkaW8gMjAwOCBjb21waWxlci4KKworVGhlIE1TVkNDb21waWxlciBjbGFzcyBpcyBjb21wYXRpYmxlIHdpdGggVlMgMjAwNSBhbmQgVlMgMjAwOC4gIExlZ2FjeQorc3VwcG9ydCBmb3Igb2xkZXIgdmVyc2lvbnMgb2YgVlMgYXJlIGluIHRoZSBtc3ZjY29tcGlsZXIgbW9kdWxlLgorIiIiCisKKyMgV3JpdHRlbiBieSBQZXJyeSBTdG9sbAorIyBoYWNrZWQgYnkgUm9iaW4gQmVja2VyIGFuZCBUaG9tYXMgSGVsbGVyIHRvIGRvIGEgYmV0dGVyIGpvYiBvZgorIyAgIGZpbmRpbmcgRGV2U3R1ZGlvICh0aHJvdWdoIHRoZSByZWdpc3RyeSkKKyMgcG9ydGVkIHRvIFZTMjAwNSBhbmQgVlMgMjAwOCBieSBDaHJpc3RpYW4gSGVpbWVzCitpbXBvcnQgb3MKK2ltcG9ydCBzdWJwcm9jZXNzCitpbXBvcnQgc3lzCitpbXBvcnQgcmUKKworZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCAoUGFja2FnaW5nRXhlY0Vycm9yLCBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29tcGlsZUVycm9yLCBMaWJFcnJvciwgTGlua0Vycm9yKQorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIuY2NvbXBpbGVyIGltcG9ydCBDQ29tcGlsZXIKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCBnZW5fbGliX29wdGlvbnMKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IGdldF9wbGF0Zm9ybQorCitpbXBvcnQgd2lucmVnCisKK1JlZ09wZW5LZXlFeCA9IHdpbnJlZy5PcGVuS2V5RXgKK1JlZ0VudW1LZXkgPSB3aW5yZWcuRW51bUtleQorUmVnRW51bVZhbHVlID0gd2lucmVnLkVudW1WYWx1ZQorUmVnRXJyb3IgPSB3aW5yZWcuZXJyb3IKKworSEtFWVMgPSAod2lucmVnLkhLRVlfVVNFUlMsCisgICAgICAgICB3aW5yZWcuSEtFWV9DVVJSRU5UX1VTRVIsCisgICAgICAgICB3aW5yZWcuSEtFWV9MT0NBTF9NQUNISU5FLAorICAgICAgICAgd2lucmVnLkhLRVlfQ0xBU1NFU19ST09UKQorCitWU19CQVNFID0gciJTb2Z0d2FyZVxNaWNyb3NvZnRcVmlzdWFsU3R1ZGlvXCUwLjFmIgorV0lOU0RLX0JBU0UgPSByIlNvZnR3YXJlXE1pY3Jvc29mdFxNaWNyb3NvZnQgU0RLc1xXaW5kb3dzIgorTkVUX0JBU0UgPSByIlNvZnR3YXJlXE1pY3Jvc29mdFwuTkVURnJhbWV3b3JrIgorCisjIEEgbWFwIGtleWVkIGJ5IGdldF9wbGF0Zm9ybSgpIHJldHVybiB2YWx1ZXMgdG8gdmFsdWVzIGFjY2VwdGVkIGJ5CisjICd2Y3ZhcnNhbGwuYmF0Jy4gIE5vdGUgYSBjcm9zcy1jb21waWxlIG1heSBjb21iaW5lIHRoZXNlIChlZywgJ3g4Nl9hbWQ2NCcgaXMKKyMgdGhlIHBhcmFtIHRvIGNyb3NzLWNvbXBpbGUgb24geDg2IHRhcmdldHRpbmcgYW1kNjQuKQorUExBVF9UT19WQ1ZBUlMgPSB7CisgICAgJ3dpbjMyJyA6ICd4ODYnLAorICAgICd3aW4tYW1kNjQnIDogJ2FtZDY0JywKKyAgICAnd2luLWlhNjQnIDogJ2lhNjQnLAorfQorCisKK2NsYXNzIFJlZzoKKyAgICAiIiJIZWxwZXIgY2xhc3MgdG8gcmVhZCB2YWx1ZXMgZnJvbSB0aGUgcmVnaXN0cnkKKyAgICAiIiIKKworICAgIGRlZiBnZXRfdmFsdWUoY2xzLCBwYXRoLCBrZXkpOgorICAgICAgICBmb3IgYmFzZSBpbiBIS0VZUzoKKyAgICAgICAgICAgIGQgPSBjbHMucmVhZF92YWx1ZXMoYmFzZSwgcGF0aCkKKyAgICAgICAgICAgIGlmIGQgYW5kIGtleSBpbiBkOgorICAgICAgICAgICAgICAgIHJldHVybiBkW2tleV0KKyAgICAgICAgcmFpc2UgS2V5RXJyb3Ioa2V5KQorICAgIGdldF92YWx1ZSA9IGNsYXNzbWV0aG9kKGdldF92YWx1ZSkKKworICAgIGRlZiByZWFkX2tleXMoY2xzLCBiYXNlLCBrZXkpOgorICAgICAgICAiIiJSZXR1cm4gbGlzdCBvZiByZWdpc3RyeSBrZXlzLiIiIgorICAgICAgICB0cnk6CisgICAgICAgICAgICBoYW5kbGUgPSBSZWdPcGVuS2V5RXgoYmFzZSwga2V5KQorICAgICAgICBleGNlcHQgUmVnRXJyb3I6CisgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICBMID0gW10KKyAgICAgICAgaSA9IDAKKyAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBrID0gUmVnRW51bUtleShoYW5kbGUsIGkpCisgICAgICAgICAgICBleGNlcHQgUmVnRXJyb3I6CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIEwuYXBwZW5kKGspCisgICAgICAgICAgICBpICs9IDEKKyAgICAgICAgcmV0dXJuIEwKKyAgICByZWFkX2tleXMgPSBjbGFzc21ldGhvZChyZWFkX2tleXMpCisKKyAgICBkZWYgcmVhZF92YWx1ZXMoY2xzLCBiYXNlLCBrZXkpOgorICAgICAgICAiIiJSZXR1cm4gZGljdCBvZiByZWdpc3RyeSBrZXlzIGFuZCB2YWx1ZXMuCisKKyAgICAgICAgQWxsIG5hbWVzIGFyZSBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlLgorICAgICAgICAiIiIKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgaGFuZGxlID0gUmVnT3BlbktleUV4KGJhc2UsIGtleSkKKyAgICAgICAgZXhjZXB0IFJlZ0Vycm9yOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgZCA9IHt9CisgICAgICAgIGkgPSAwCisgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgbmFtZSwgdmFsdWUsIHR5cGUgPSBSZWdFbnVtVmFsdWUoaGFuZGxlLCBpKQorICAgICAgICAgICAgZXhjZXB0IFJlZ0Vycm9yOgorICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICBuYW1lID0gbmFtZS5sb3dlcigpCisgICAgICAgICAgICBkW2Nscy5jb252ZXJ0X21iY3MobmFtZSldID0gY2xzLmNvbnZlcnRfbWJjcyh2YWx1ZSkKKyAgICAgICAgICAgIGkgKz0gMQorICAgICAgICByZXR1cm4gZAorICAgIHJlYWRfdmFsdWVzID0gY2xhc3NtZXRob2QocmVhZF92YWx1ZXMpCisKKyAgICBkZWYgY29udmVydF9tYmNzKHMpOgorICAgICAgICBkZWMgPSBnZXRhdHRyKHMsICJkZWNvZGUiLCBOb25lKQorICAgICAgICBpZiBkZWMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgcyA9IGRlYygibWJjcyIpCisgICAgICAgICAgICBleGNlcHQgVW5pY29kZUVycm9yOgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgcmV0dXJuIHMKKyAgICBjb252ZXJ0X21iY3MgPSBzdGF0aWNtZXRob2QoY29udmVydF9tYmNzKQorCitjbGFzcyBNYWNyb0V4cGFuZGVyOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHZlcnNpb24pOgorICAgICAgICBzZWxmLm1hY3JvcyA9IHt9CisgICAgICAgIHNlbGYudnNiYXNlID0gVlNfQkFTRSAlIHZlcnNpb24KKyAgICAgICAgc2VsZi5sb2FkX21hY3Jvcyh2ZXJzaW9uKQorCisgICAgZGVmIHNldF9tYWNybyhzZWxmLCBtYWNybywgcGF0aCwga2V5KToKKyAgICAgICAgc2VsZi5tYWNyb3NbIiQoJXMpIiAlIG1hY3JvXSA9IFJlZy5nZXRfdmFsdWUocGF0aCwga2V5KQorCisgICAgZGVmIGxvYWRfbWFjcm9zKHNlbGYsIHZlcnNpb24pOgorICAgICAgICBzZWxmLnNldF9tYWNybygiVkNJbnN0YWxsRGlyIiwgc2VsZi52c2Jhc2UgKyByIlxTZXR1cFxWQyIsICJwcm9kdWN0ZGlyIikKKyAgICAgICAgc2VsZi5zZXRfbWFjcm8oIlZTSW5zdGFsbERpciIsIHNlbGYudnNiYXNlICsgciJcU2V0dXBcVlMiLCAicHJvZHVjdGRpciIpCisgICAgICAgIHNlbGYuc2V0X21hY3JvKCJGcmFtZXdvcmtEaXIiLCBORVRfQkFTRSwgImluc3RhbGxyb290IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgaWYgdmVyc2lvbiA+PSA4LjA6CisgICAgICAgICAgICAgICAgc2VsZi5zZXRfbWFjcm8oIkZyYW1ld29ya1NES0RpciIsIE5FVF9CQVNFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzZGtpbnN0YWxscm9vdHYyLjAiKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBLZXlFcnJvcigic2RraW5zdGFsbHJvb3R2Mi4wIikKKyAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigKKyIiIlB5dGhvbiB3YXMgYnVpbHQgd2l0aCBWaXN1YWwgU3R1ZGlvIDIwMDg7IGV4dGVuc2lvbnMgbXVzdCBiZSBidWlsdCB3aXRoIGEKK2NvbXBpbGVyIHRoYW4gY2FuIGdlbmVyYXRlIGNvbXBhdGlibGUgYmluYXJpZXMuIFZpc3VhbCBTdHVkaW8gMjAwOCB3YXMgbm90Citmb3VuZCBvbiB0aGlzIHN5c3RlbS4gSWYgeW91IGhhdmUgQ3lnd2luIGluc3RhbGxlZCwgeW91IGNhbiB0cnkgY29tcGlsaW5nCit3aXRoIE1pbmdXMzIsIGJ5IHBhc3NpbmcgIi1jIG1pbmd3MzIiIHRvIHB5c2V0dXAuIiIiKQorCisgICAgICAgIGlmIHZlcnNpb24gPj0gOS4wOgorICAgICAgICAgICAgc2VsZi5zZXRfbWFjcm8oIkZyYW1ld29ya1ZlcnNpb24iLCBzZWxmLnZzYmFzZSwgImNsciB2ZXJzaW9uIikKKyAgICAgICAgICAgIHNlbGYuc2V0X21hY3JvKCJXaW5kb3dzU2RrRGlyIiwgV0lOU0RLX0JBU0UsICJjdXJyZW50aW5zdGFsbGZvbGRlciIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBwID0gciJTb2Z0d2FyZVxNaWNyb3NvZnRcTkVUIEZyYW1ld29yayBTZXR1cFxQcm9kdWN0IgorICAgICAgICAgICAgZm9yIGJhc2UgaW4gSEtFWVM6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBoID0gUmVnT3BlbktleUV4KGJhc2UsIHApCisgICAgICAgICAgICAgICAgZXhjZXB0IFJlZ0Vycm9yOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGtleSA9IFJlZ0VudW1LZXkoaCwgMCkKKyAgICAgICAgICAgICAgICBkID0gUmVnLmdldF92YWx1ZShiYXNlLCByIiVzXCVzIiAlIChwLCBrZXkpKQorICAgICAgICAgICAgICAgIHNlbGYubWFjcm9zWyIkKEZyYW1ld29ya1ZlcnNpb24pIl0gPSBkWyJ2ZXJzaW9uIl0KKworICAgIGRlZiBzdWIoc2VsZiwgcyk6CisgICAgICAgIGZvciBrLCB2IGluIHNlbGYubWFjcm9zLml0ZW1zKCk6CisgICAgICAgICAgICBzID0gcy5yZXBsYWNlKGssIHYpCisgICAgICAgIHJldHVybiBzCisKK2RlZiBnZXRfYnVpbGRfdmVyc2lvbigpOgorICAgICIiIlJldHVybiB0aGUgdmVyc2lvbiBvZiBNU1ZDIHRoYXQgd2FzIHVzZWQgdG8gYnVpbGQgUHl0aG9uLgorCisgICAgRm9yIFB5dGhvbiAyLjMgYW5kIHVwLCB0aGUgdmVyc2lvbiBudW1iZXIgaXMgaW5jbHVkZWQgaW4KKyAgICBzeXMudmVyc2lvbi4gIEZvciBlYXJsaWVyIHZlcnNpb25zLCBhc3N1bWUgdGhlIGNvbXBpbGVyIGlzIE1TVkMgNi4KKyAgICAiIiIKKyAgICBwcmVmaXggPSAiTVNDIHYuIgorICAgIGkgPSBzeXMudmVyc2lvbi5maW5kKHByZWZpeCkKKyAgICBpZiBpID09IC0xOgorICAgICAgICByZXR1cm4gNgorICAgIGkgPSBpICsgbGVuKHByZWZpeCkKKyAgICBzLCByZXN0ID0gc3lzLnZlcnNpb25baTpdLnNwbGl0KCIgIiwgMSkKKyAgICBtYWpvclZlcnNpb24gPSBpbnQoc1s6LTJdKSAtIDYKKyAgICBtaW5vclZlcnNpb24gPSBpbnQoc1syOjNdKSAvIDEwLjAKKyAgICAjIEkgZG9uJ3QgdGhpbmsgcGF0aHMgYXJlIGFmZmVjdGVkIGJ5IG1pbm9yIHZlcnNpb24gaW4gdmVyc2lvbiA2CisgICAgaWYgbWFqb3JWZXJzaW9uID09IDY6CisgICAgICAgIG1pbm9yVmVyc2lvbiA9IDAKKyAgICBpZiBtYWpvclZlcnNpb24gPj0gNjoKKyAgICAgICAgcmV0dXJuIG1ham9yVmVyc2lvbiArIG1pbm9yVmVyc2lvbgorICAgICMgZWxzZSB3ZSBkb24ndCBrbm93IHdoYXQgdmVyc2lvbiBvZiB0aGUgY29tcGlsZXIgdGhpcyBpcworICAgIHJldHVybiBOb25lCisKK2RlZiBub3JtYWxpemVfYW5kX3JlZHVjZV9wYXRocyhwYXRocyk6CisgICAgIiIiUmV0dXJuIGEgbGlzdCBvZiBub3JtYWxpemVkIHBhdGhzIHdpdGggZHVwbGljYXRlcyByZW1vdmVkLgorCisgICAgVGhlIGN1cnJlbnQgb3JkZXIgb2YgcGF0aHMgaXMgbWFpbnRhaW5lZC4KKyAgICAiIiIKKyAgICAjIFBhdGhzIGFyZSBub3JtYWxpemVkIHNvIHRoaW5ncyBsaWtlOiAgL2EgYW5kIC9hLyBhcmVuJ3QgYm90aCBwcmVzZXJ2ZWQuCisgICAgcmVkdWNlZF9wYXRocyA9IFtdCisgICAgZm9yIHAgaW4gcGF0aHM6CisgICAgICAgIG5wID0gb3MucGF0aC5ub3JtcGF0aChwKQorICAgICAgICAjIFhYWChubm9yd2l0eik6IE8obioqMiksIGlmIHJlZHVjZWRfcGF0aHMgZ2V0cyBsb25nIHBlcmhhcHMgdXNlIGEgc2V0LgorICAgICAgICBpZiBucCBub3QgaW4gcmVkdWNlZF9wYXRoczoKKyAgICAgICAgICAgIHJlZHVjZWRfcGF0aHMuYXBwZW5kKG5wKQorICAgIHJldHVybiByZWR1Y2VkX3BhdGhzCisKK2RlZiByZW1vdmVEdXBsaWNhdGVzKHZhcmlhYmxlKToKKyAgICAiIiJSZW1vdmUgZHVwbGljYXRlIHZhbHVlcyBvZiBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZS4KKyAgICAiIiIKKyAgICBvbGRMaXN0ID0gdmFyaWFibGUuc3BsaXQob3MucGF0aHNlcCkKKyAgICBuZXdMaXN0ID0gW10KKyAgICBmb3IgaSBpbiBvbGRMaXN0OgorICAgICAgICBpZiBpIG5vdCBpbiBuZXdMaXN0OgorICAgICAgICAgICAgbmV3TGlzdC5hcHBlbmQoaSkKKyAgICBuZXdWYXJpYWJsZSA9IG9zLnBhdGhzZXAuam9pbihuZXdMaXN0KQorICAgIHJldHVybiBuZXdWYXJpYWJsZQorCitkZWYgZmluZF92Y3ZhcnNhbGwodmVyc2lvbik6CisgICAgIiIiRmluZCB0aGUgdmN2YXJzYWxsLmJhdCBmaWxlCisKKyAgICBBdCBmaXJzdCBpdCB0cmllcyB0byBmaW5kIHRoZSBwcm9kdWN0ZGlyIG9mIFZTIDIwMDggaW4gdGhlIHJlZ2lzdHJ5LiBJZgorICAgIHRoYXQgZmFpbHMgaXQgZmFsbHMgYmFjayB0byB0aGUgVlM5MENPTU5UT09MUyBlbnYgdmFyLgorICAgICIiIgorICAgIHZzYmFzZSA9IFZTX0JBU0UgJSB2ZXJzaW9uCisgICAgdHJ5OgorICAgICAgICBwcm9kdWN0ZGlyID0gUmVnLmdldF92YWx1ZShyIiVzXFNldHVwXFZDIiAlIHZzYmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInByb2R1Y3RkaXIiKQorICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgbG9nZ2VyLmRlYnVnKCJVbmFibGUgdG8gZmluZCBwcm9kdWN0ZGlyIGluIHJlZ2lzdHJ5IikKKyAgICAgICAgcHJvZHVjdGRpciA9IE5vbmUKKworICAgIGlmIG5vdCBwcm9kdWN0ZGlyIG9yIG5vdCBvcy5wYXRoLmlzZGlyKHByb2R1Y3RkaXIpOgorICAgICAgICB0b29sc2tleSA9ICJWUyUwLmYwQ09NTlRPT0xTIiAlIHZlcnNpb24KKyAgICAgICAgdG9vbHNkaXIgPSBvcy5lbnZpcm9uLmdldCh0b29sc2tleSwgTm9uZSkKKworICAgICAgICBpZiB0b29sc2RpciBhbmQgb3MucGF0aC5pc2Rpcih0b29sc2Rpcik6CisgICAgICAgICAgICBwcm9kdWN0ZGlyID0gb3MucGF0aC5qb2luKHRvb2xzZGlyLCBvcy5wYXJkaXIsIG9zLnBhcmRpciwgIlZDIikKKyAgICAgICAgICAgIHByb2R1Y3RkaXIgPSBvcy5wYXRoLmFic3BhdGgocHJvZHVjdGRpcikKKyAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmlzZGlyKHByb2R1Y3RkaXIpOgorICAgICAgICAgICAgICAgIGxvZ2dlci5kZWJ1ZygiJXMgaXMgbm90IGEgdmFsaWQgZGlyZWN0b3J5IiwgcHJvZHVjdGRpcikKKyAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCJlbnYgdmFyICVzIGlzIG5vdCBzZXQgb3IgaW52YWxpZCIsIHRvb2xza2V5KQorICAgIGlmIG5vdCBwcm9kdWN0ZGlyOgorICAgICAgICBsb2dnZXIuZGVidWcoIm5vIHByb2R1Y3RkaXIgZm91bmQiKQorICAgICAgICByZXR1cm4gTm9uZQorICAgIHZjdmFyc2FsbCA9IG9zLnBhdGguam9pbihwcm9kdWN0ZGlyLCAidmN2YXJzYWxsLmJhdCIpCisgICAgaWYgb3MucGF0aC5pc2ZpbGUodmN2YXJzYWxsKToKKyAgICAgICAgcmV0dXJuIHZjdmFyc2FsbAorICAgIGxvZ2dlci5kZWJ1ZygidW5hYmxlIHRvIGZpbmQgdmN2YXJzYWxsLmJhdCIpCisgICAgcmV0dXJuIE5vbmUKKworZGVmIHF1ZXJ5X3ZjdmFyc2FsbCh2ZXJzaW9uLCBhcmNoPSJ4ODYiKToKKyAgICAiIiJMYXVuY2ggdmN2YXJzYWxsLmJhdCBhbmQgcmVhZCB0aGUgc2V0dGluZ3MgZnJvbSBpdHMgZW52aXJvbm1lbnQKKyAgICAiIiIKKyAgICB2Y3ZhcnNhbGwgPSBmaW5kX3ZjdmFyc2FsbCh2ZXJzaW9uKQorICAgIGludGVyZXN0aW5nID0gc2V0KCgiaW5jbHVkZSIsICJsaWIiLCAibGlicGF0aCIsICJwYXRoIikpCisgICAgcmVzdWx0ID0ge30KKworICAgIGlmIHZjdmFyc2FsbCBpcyBOb25lOgorICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKCJVbmFibGUgdG8gZmluZCB2Y3ZhcnNhbGwuYmF0IikKKyAgICBsb2dnZXIuZGVidWcoImNhbGxpbmcgJ3ZjdmFyc2FsbC5iYXQgJXMnICh2ZXJzaW9uPSVzKSIsIGFyY2gsIHZlcnNpb24pCisgICAgcG9wZW4gPSBzdWJwcm9jZXNzLlBvcGVuKCciJXMiICVzICYgc2V0JyAlICh2Y3ZhcnNhbGwsIGFyY2gpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRlcnI9c3VicHJvY2Vzcy5QSVBFKQorCisgICAgc3Rkb3V0LCBzdGRlcnIgPSBwb3Blbi5jb21tdW5pY2F0ZSgpCisgICAgaWYgcG9wZW4ud2FpdCgpICE9IDA6CisgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3Ioc3RkZXJyLmRlY29kZSgibWJjcyIpKQorCisgICAgc3Rkb3V0ID0gc3Rkb3V0LmRlY29kZSgibWJjcyIpCisgICAgZm9yIGxpbmUgaW4gc3Rkb3V0LnNwbGl0KCJcbiIpOgorICAgICAgICBsaW5lID0gUmVnLmNvbnZlcnRfbWJjcyhsaW5lKQorICAgICAgICBpZiAnPScgbm90IGluIGxpbmU6CisgICAgICAgICAgICBjb250aW51ZQorICAgICAgICBsaW5lID0gbGluZS5zdHJpcCgpCisgICAgICAgIGtleSwgdmFsdWUgPSBsaW5lLnNwbGl0KCc9JywgMSkKKyAgICAgICAga2V5ID0ga2V5Lmxvd2VyKCkKKyAgICAgICAgaWYga2V5IGluIGludGVyZXN0aW5nOgorICAgICAgICAgICAgaWYgdmFsdWUuZW5kc3dpdGgob3MucGF0aHNlcCk6CisgICAgICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZVs6LTFdCisgICAgICAgICAgICByZXN1bHRba2V5XSA9IHJlbW92ZUR1cGxpY2F0ZXModmFsdWUpCisKKyAgICBpZiBsZW4ocmVzdWx0KSAhPSBsZW4oaW50ZXJlc3RpbmcpOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKHN0cihsaXN0KHJlc3VsdCkpKQorCisgICAgcmV0dXJuIHJlc3VsdAorCisjIE1vcmUgZ2xvYmFscworVkVSU0lPTiA9IGdldF9idWlsZF92ZXJzaW9uKCkKK2lmIFZFUlNJT04gPCA4LjA6CisgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigiVkMgJTAuMWYgaXMgbm90IHN1cHBvcnRlZCBieSB0aGlzIG1vZHVsZSIgJSBWRVJTSU9OKQorIyBNQUNST1MgPSBNYWNyb0V4cGFuZGVyKFZFUlNJT04pCisKK2NsYXNzIE1TVkNDb21waWxlcihDQ29tcGlsZXIpIDoKKyAgICAiIiJDb25jcmV0ZSBjbGFzcyB0aGF0IGltcGxlbWVudHMgYW4gaW50ZXJmYWNlIHRvIE1pY3Jvc29mdCBWaXN1YWwgQysrLAorICAgICAgIGFzIGRlZmluZWQgYnkgdGhlIENDb21waWxlciBhYnN0cmFjdCBjbGFzcy4iIiIKKworICAgIG5hbWUgPSAnbXN2YycKKyAgICBkZXNjcmlwdGlvbiA9ICdNaWNyb3NvZnQgVmlzdWFsIEMrKycKKworICAgICMgSnVzdCBzZXQgdGhpcyBzbyBDQ29tcGlsZXIncyBjb25zdHJ1Y3RvciBkb2Vzbid0IGJhcmYuICBXZSBjdXJyZW50bHkKKyAgICAjIGRvbid0IHVzZSB0aGUgJ3NldF9leGVjdXRhYmxlcygpJyBidXJlYXVjcmFjeSBwcm92aWRlZCBieSBDQ29tcGlsZXIsCisgICAgIyBhcyBpdCByZWFsbHkgaXNuJ3QgbmVjZXNzYXJ5IGZvciB0aGlzIHNvcnQgb2Ygc2luZ2xlLWNvbXBpbGVyIGNsYXNzLgorICAgICMgV291bGQgYmUgbmljZSB0byBoYXZlIGEgY29uc2lzdGVudCBpbnRlcmZhY2Ugd2l0aCBVbml4Q0NvbXBpbGVyLAorICAgICMgdGhvdWdoLCBzbyBpdCdzIHdvcnRoIHRoaW5raW5nIGFib3V0LgorICAgIGV4ZWN1dGFibGVzID0ge30KKworICAgICMgUHJpdmF0ZSBjbGFzcyBkYXRhIChuZWVkIHRvIGRpc3Rpbmd1aXNoIEMgZnJvbSBDKysgc291cmNlIGZvciBjb21waWxlcikKKyAgICBfY19leHRlbnNpb25zID0gWycuYyddCisgICAgX2NwcF9leHRlbnNpb25zID0gWycuY2MnLCAnLmNwcCcsICcuY3h4J10KKyAgICBfcmNfZXh0ZW5zaW9ucyA9IFsnLnJjJ10KKyAgICBfbWNfZXh0ZW5zaW9ucyA9IFsnLm1jJ10KKworICAgICMgTmVlZGVkIGZvciB0aGUgZmlsZW5hbWUgZ2VuZXJhdGlvbiBtZXRob2RzIHByb3ZpZGVkIGJ5IHRoZQorICAgICMgYmFzZSBjbGFzcywgQ0NvbXBpbGVyLgorICAgIHNyY19leHRlbnNpb25zID0gKF9jX2V4dGVuc2lvbnMgKyBfY3BwX2V4dGVuc2lvbnMgKworICAgICAgICAgICAgICAgICAgICAgIF9yY19leHRlbnNpb25zICsgX21jX2V4dGVuc2lvbnMpCisgICAgcmVzX2V4dGVuc2lvbiA9ICcucmVzJworICAgIG9ial9leHRlbnNpb24gPSAnLm9iaicKKyAgICBzdGF0aWNfbGliX2V4dGVuc2lvbiA9ICcubGliJworICAgIHNoYXJlZF9saWJfZXh0ZW5zaW9uID0gJy5kbGwnCisgICAgc3RhdGljX2xpYl9mb3JtYXQgPSBzaGFyZWRfbGliX2Zvcm1hdCA9ICclcyVzJworICAgIGV4ZV9leHRlbnNpb24gPSAnLmV4ZScKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkcnlfcnVuPUZhbHNlLCBmb3JjZT1GYWxzZSk6CisgICAgICAgIHN1cGVyKE1TVkNDb21waWxlciwgc2VsZikuX19pbml0X18oZHJ5X3J1biwgZm9yY2UpCisgICAgICAgIHNlbGYuX192ZXJzaW9uID0gVkVSU0lPTgorICAgICAgICBzZWxmLl9fcm9vdCA9IHIiU29mdHdhcmVcTWljcm9zb2Z0XFZpc3VhbFN0dWRpbyIKKyAgICAgICAgIyBzZWxmLl9fbWFjcm9zID0gTUFDUk9TCisgICAgICAgIHNlbGYuX19wYXRocyA9IFtdCisgICAgICAgICMgdGFyZ2V0IHBsYXRmb3JtICgucGxhdF9uYW1lIGlzIGNvbnNpc3RlbnQgd2l0aCAnYmRpc3QnKQorICAgICAgICBzZWxmLnBsYXRfbmFtZSA9IE5vbmUKKyAgICAgICAgc2VsZi5fX2FyY2ggPSBOb25lICMgZGVwcmVjYXRlZCBuYW1lCisgICAgICAgIHNlbGYuaW5pdGlhbGl6ZWQgPSBGYWxzZQorCisgICAgZGVmIGluaXRpYWxpemUoc2VsZiwgcGxhdF9uYW1lPU5vbmUpOgorICAgICAgICAjIG11bHRpLWluaXQgbWVhbnMgd2Ugd291bGQgbmVlZCB0byBjaGVjayBwbGF0Zm9ybSBzYW1lIGVhY2ggdGltZS4uLgorICAgICAgICBhc3NlcnQgbm90IHNlbGYuaW5pdGlhbGl6ZWQsICJkb24ndCBpbml0IG11bHRpcGxlIHRpbWVzIgorICAgICAgICBpZiBwbGF0X25hbWUgaXMgTm9uZToKKyAgICAgICAgICAgIHBsYXRfbmFtZSA9IGdldF9wbGF0Zm9ybSgpCisgICAgICAgICMgc2FuaXR5IGNoZWNrIGZvciBwbGF0Zm9ybXMgdG8gcHJldmVudCBvYnNjdXJlIGVycm9ycyBsYXRlci4KKyAgICAgICAgb2tfcGxhdHMgPSAnd2luMzInLCAnd2luLWFtZDY0JywgJ3dpbi1pYTY0JworICAgICAgICBpZiBwbGF0X25hbWUgbm90IGluIG9rX3BsYXRzOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigiLS1wbGF0LW5hbWUgbXVzdCBiZSBvbmUgb2YgJXMiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9rX3BsYXRzLCkpCisKKyAgICAgICAgaWYgIkRJU1RVVElMU19VU0VfU0RLIiBpbiBvcy5lbnZpcm9uIGFuZCAiTVNTZGsiIGluIG9zLmVudmlyb24gYW5kIHNlbGYuZmluZF9leGUoImNsLmV4ZSIpOgorICAgICAgICAgICAgIyBBc3N1bWUgdGhhdCB0aGUgU0RLIHNldCB1cCBldmVyeXRoaW5nIGFscmlnaHQ7IGRvbid0IHRyeSB0byBiZQorICAgICAgICAgICAgIyBzbWFydGVyCisgICAgICAgICAgICBzZWxmLmNjID0gImNsLmV4ZSIKKyAgICAgICAgICAgIHNlbGYubGlua2VyID0gImxpbmsuZXhlIgorICAgICAgICAgICAgc2VsZi5saWIgPSAibGliLmV4ZSIKKyAgICAgICAgICAgIHNlbGYucmMgPSAicmMuZXhlIgorICAgICAgICAgICAgc2VsZi5tYyA9ICJtYy5leGUiCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIE9uIHg4NiwgJ3ZjdmFyczMyLmJhdCBhbWQ2NCcgY3JlYXRlcyBhbiBlbnYgdGhhdCBkb2Vzbid0IHdvcms7CisgICAgICAgICAgICAjIHRvIGNyb3NzIGNvbXBpbGUsIHlvdSB1c2UgJ3g4Nl9hbWQ2NCcuCisgICAgICAgICAgICAjIE9uIEFNRDY0LCAndmN2YXJzMzIuYmF0IGFtZDY0JyBpcyBhIG5hdGl2ZSBidWlsZCBlbnY7IHRvIGNyb3NzCisgICAgICAgICAgICAjIGNvbXBpbGUgdXNlICd4ODYnIChpZSwgaXQgcnVucyB0aGUgeDg2IGNvbXBpbGVyIGRpcmVjdGx5KQorICAgICAgICAgICAgIyBObyBpZGVhIGhvdyBpdGFuaXVtIGhhbmRsZXMgdGhpcywgaWYgYXQgYWxsLgorICAgICAgICAgICAgaWYgcGxhdF9uYW1lID09IGdldF9wbGF0Zm9ybSgpIG9yIHBsYXRfbmFtZSA9PSAnd2luMzInOgorICAgICAgICAgICAgICAgICMgbmF0aXZlIGJ1aWxkIG9yIGNyb3NzLWNvbXBpbGUgdG8gd2luMzIKKyAgICAgICAgICAgICAgICBwbGF0X3NwZWMgPSBQTEFUX1RPX1ZDVkFSU1twbGF0X25hbWVdCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICMgY3Jvc3MgY29tcGlsZSBmcm9tIHdpbjMyIC0+IHNvbWUgNjRiaXQKKyAgICAgICAgICAgICAgICBwbGF0X3NwZWMgPSBQTEFUX1RPX1ZDVkFSU1tnZXRfcGxhdGZvcm0oKV0gKyAnXycgKyBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgUExBVF9UT19WQ1ZBUlNbcGxhdF9uYW1lXQorCisgICAgICAgICAgICB2Y19lbnYgPSBxdWVyeV92Y3ZhcnNhbGwoVkVSU0lPTiwgcGxhdF9zcGVjKQorCisgICAgICAgICAgICAjIHRha2UgY2FyZSB0byBvbmx5IHVzZSBzdHJpbmdzIGluIHRoZSBlbnZpcm9ubWVudC4KKyAgICAgICAgICAgIHNlbGYuX19wYXRocyA9IHZjX2VudlsncGF0aCddLnNwbGl0KG9zLnBhdGhzZXApCisgICAgICAgICAgICBvcy5lbnZpcm9uWydsaWInXSA9IHZjX2VudlsnbGliJ10KKyAgICAgICAgICAgIG9zLmVudmlyb25bJ2luY2x1ZGUnXSA9IHZjX2VudlsnaW5jbHVkZSddCisKKyAgICAgICAgICAgIGlmIGxlbihzZWxmLl9fcGF0aHMpID09IDA6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigiUHl0aG9uIHdhcyBidWlsdCB3aXRoICVzLCAiCisgICAgICAgICAgICAgICAgICAgICAgICJhbmQgZXh0ZW5zaW9ucyBuZWVkIHRvIGJlIGJ1aWx0IHdpdGggdGhlIHNhbWUgIgorICAgICAgICAgICAgICAgICAgICAgICAidmVyc2lvbiBvZiB0aGUgY29tcGlsZXIsIGJ1dCBpdCBpc24ndCBpbnN0YWxsZWQuIgorICAgICAgICAgICAgICAgICAgICAgICAlIHNlbGYuX19wcm9kdWN0KQorCisgICAgICAgICAgICBzZWxmLmNjID0gc2VsZi5maW5kX2V4ZSgiY2wuZXhlIikKKyAgICAgICAgICAgIHNlbGYubGlua2VyID0gc2VsZi5maW5kX2V4ZSgibGluay5leGUiKQorICAgICAgICAgICAgc2VsZi5saWIgPSBzZWxmLmZpbmRfZXhlKCJsaWIuZXhlIikKKyAgICAgICAgICAgIHNlbGYucmMgPSBzZWxmLmZpbmRfZXhlKCJyYy5leGUiKSAgICMgcmVzb3VyY2UgY29tcGlsZXIKKyAgICAgICAgICAgIHNlbGYubWMgPSBzZWxmLmZpbmRfZXhlKCJtYy5leGUiKSAgICMgbWVzc2FnZSBjb21waWxlcgorICAgICAgICAgICAgI3NlbGYuc2V0X3BhdGhfZW52X3ZhcignbGliJykKKyAgICAgICAgICAgICNzZWxmLnNldF9wYXRoX2Vudl92YXIoJ2luY2x1ZGUnKQorCisgICAgICAgICMgZXh0ZW5kIHRoZSBNU1ZDIHBhdGggd2l0aCB0aGUgY3VycmVudCBwYXRoCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGZvciBwIGluIG9zLmVudmlyb25bJ3BhdGgnXS5zcGxpdCgnOycpOgorICAgICAgICAgICAgICAgIHNlbGYuX19wYXRocy5hcHBlbmQocCkKKyAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBzZWxmLl9fcGF0aHMgPSBub3JtYWxpemVfYW5kX3JlZHVjZV9wYXRocyhzZWxmLl9fcGF0aHMpCisgICAgICAgIG9zLmVudmlyb25bJ3BhdGgnXSA9ICI7Ii5qb2luKHNlbGYuX19wYXRocykKKworICAgICAgICBzZWxmLnByZXByb2Nlc3Nfb3B0aW9ucyA9IE5vbmUKKyAgICAgICAgaWYgc2VsZi5fX2FyY2ggPT0gIng4NiI6CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVfb3B0aW9ucyA9IFsgJy9ub2xvZ28nLCAnL094JywgJy9NRCcsICcvVzMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvRE5ERUJVRyddCisgICAgICAgICAgICBzZWxmLmNvbXBpbGVfb3B0aW9uc19kZWJ1ZyA9IFsnL25vbG9nbycsICcvT2QnLCAnL01EZCcsICcvVzMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy9aNycsICcvRF9ERUJVRyddCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIFdpbjY0CisgICAgICAgICAgICBzZWxmLmNvbXBpbGVfb3B0aW9ucyA9IFsgJy9ub2xvZ28nLCAnL094JywgJy9NRCcsICcvVzMnLCAnL0dTLScgLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvRE5ERUJVRyddCisgICAgICAgICAgICBzZWxmLmNvbXBpbGVfb3B0aW9uc19kZWJ1ZyA9IFsnL25vbG9nbycsICcvT2QnLCAnL01EZCcsICcvVzMnLCAnL0dTLScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnL1o3JywgJy9EX0RFQlVHJ10KKworICAgICAgICBzZWxmLmxkZmxhZ3Nfc2hhcmVkID0gWycvRExMJywgJy9ub2xvZ28nLCAnL0lOQ1JFTUVOVEFMOk5PJ10KKyAgICAgICAgaWYgc2VsZi5fX3ZlcnNpb24gPj0gNzoKKyAgICAgICAgICAgIHNlbGYubGRmbGFnc19zaGFyZWRfZGVidWcgPSBbCisgICAgICAgICAgICAgICAgJy9ETEwnLCAnL25vbG9nbycsICcvSU5DUkVNRU5UQUw6bm8nLCAnL0RFQlVHJywgJy9wZGI6Tm9uZScKKyAgICAgICAgICAgICAgICBdCisgICAgICAgIHNlbGYubGRmbGFnc19zdGF0aWMgPSBbICcvbm9sb2dvJ10KKworICAgICAgICBzZWxmLmluaXRpYWxpemVkID0gVHJ1ZQorCisgICAgIyAtLSBXb3JrZXIgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgIGRlZiBvYmplY3RfZmlsZW5hbWVzKHNlbGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlX2ZpbGVuYW1lcywKKyAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpcF9kaXI9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2Rpcj0nJyk6CisgICAgICAgICMgQ29waWVkIGZyb20gY2NvbXBpbGVyLnB5LCBleHRlbmRlZCB0byByZXR1cm4gLnJlcyBhcyAnb2JqZWN0Jy1maWxlCisgICAgICAgICMgZm9yIC5yYyBpbnB1dCBmaWxlCisgICAgICAgIGlmIG91dHB1dF9kaXIgaXMgTm9uZTogb3V0cHV0X2RpciA9ICcnCisgICAgICAgIG9ial9uYW1lcyA9IFtdCisgICAgICAgIGZvciBzcmNfbmFtZSBpbiBzb3VyY2VfZmlsZW5hbWVzOgorICAgICAgICAgICAgYmFzZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChzcmNfbmFtZSkKKyAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLnNwbGl0ZHJpdmUoYmFzZSlbMV0gIyBDaG9wIG9mZiB0aGUgZHJpdmUKKyAgICAgICAgICAgIGJhc2UgPSBiYXNlW29zLnBhdGguaXNhYnMoYmFzZSk6XSAgIyBJZiBhYnMsIGNob3Agb2ZmIGxlYWRpbmcgLworICAgICAgICAgICAgaWYgZXh0IG5vdCBpbiBzZWxmLnNyY19leHRlbnNpb25zOgorICAgICAgICAgICAgICAgICMgQmV0dGVyIHRvIHJhaXNlIGFuIGV4Y2VwdGlvbiBpbnN0ZWFkIG9mIHNpbGVudGx5IGNvbnRpbnVpbmcKKyAgICAgICAgICAgICAgICAjIGFuZCBsYXRlciBjb21wbGFpbiBhYm91dCBzb3VyY2VzIGFuZCB0YXJnZXRzIGhhdmluZworICAgICAgICAgICAgICAgICMgZGlmZmVyZW50IGxlbmd0aHMKKyAgICAgICAgICAgICAgICByYWlzZSBDb21waWxlRXJyb3IoIkRvbid0IGtub3cgaG93IHRvIGNvbXBpbGUgJXMiICUgc3JjX25hbWUpCisgICAgICAgICAgICBpZiBzdHJpcF9kaXI6CisgICAgICAgICAgICAgICAgYmFzZSA9IG9zLnBhdGguYmFzZW5hbWUoYmFzZSkKKyAgICAgICAgICAgIGlmIGV4dCBpbiBzZWxmLl9yY19leHRlbnNpb25zOgorICAgICAgICAgICAgICAgIG9ial9uYW1lcy5hcHBlbmQob3MucGF0aC5qb2luKG91dHB1dF9kaXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZSArIHNlbGYucmVzX2V4dGVuc2lvbikpCisgICAgICAgICAgICBlbGlmIGV4dCBpbiBzZWxmLl9tY19leHRlbnNpb25zOgorICAgICAgICAgICAgICAgIG9ial9uYW1lcy5hcHBlbmQob3MucGF0aC5qb2luKG91dHB1dF9kaXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZSArIHNlbGYucmVzX2V4dGVuc2lvbikpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG9ial9uYW1lcy5hcHBlbmQob3MucGF0aC5qb2luKG91dHB1dF9kaXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZSArIHNlbGYub2JqX2V4dGVuc2lvbikpCisgICAgICAgIHJldHVybiBvYmpfbmFtZXMKKworCisgICAgZGVmIGNvbXBpbGUoc2VsZiwgc291cmNlcywKKyAgICAgICAgICAgICAgICBvdXRwdXRfZGlyPU5vbmUsIG1hY3Jvcz1Ob25lLCBpbmNsdWRlX2RpcnM9Tm9uZSwgZGVidWc9RmFsc2UsCisgICAgICAgICAgICAgICAgZXh0cmFfcHJlYXJncz1Ob25lLCBleHRyYV9wb3N0YXJncz1Ob25lLCBkZXBlbmRzPU5vbmUpOgorCisgICAgICAgIGlmIG5vdCBzZWxmLmluaXRpYWxpemVkOgorICAgICAgICAgICAgc2VsZi5pbml0aWFsaXplKCkKKyAgICAgICAgY29tcGlsZV9pbmZvID0gc2VsZi5fc2V0dXBfY29tcGlsZShvdXRwdXRfZGlyLCBtYWNyb3MsIGluY2x1ZGVfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2VzLCBkZXBlbmRzLCBleHRyYV9wb3N0YXJncykKKyAgICAgICAgbWFjcm9zLCBvYmplY3RzLCBleHRyYV9wb3N0YXJncywgcHBfb3B0cywgYnVpbGQgPSBjb21waWxlX2luZm8KKworICAgICAgICBjb21waWxlX29wdHMgPSBleHRyYV9wcmVhcmdzIG9yIFtdCisgICAgICAgIGNvbXBpbGVfb3B0cy5hcHBlbmQoJy9jJykKKyAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICBjb21waWxlX29wdHMuZXh0ZW5kKHNlbGYuY29tcGlsZV9vcHRpb25zX2RlYnVnKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgY29tcGlsZV9vcHRzLmV4dGVuZChzZWxmLmNvbXBpbGVfb3B0aW9ucykKKworICAgICAgICBmb3Igb2JqIGluIG9iamVjdHM6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc3JjLCBleHQgPSBidWlsZFtvYmpdCisgICAgICAgICAgICBleGNlcHQgS2V5RXJyb3I6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgICAgICMgcGFzcyB0aGUgZnVsbCBwYXRobmFtZSB0byBNU1ZDIGluIGRlYnVnIG1vZGUsCisgICAgICAgICAgICAgICAgIyB0aGlzIGFsbG93cyB0aGUgZGVidWdnZXIgdG8gZmluZCB0aGUgc291cmNlIGZpbGUKKyAgICAgICAgICAgICAgICAjIHdpdGhvdXQgYXNraW5nIHRoZSB1c2VyIHRvIGJyb3dzZSBmb3IgaXQKKyAgICAgICAgICAgICAgICBzcmMgPSBvcy5wYXRoLmFic3BhdGgoc3JjKQorCisgICAgICAgICAgICBpZiBleHQgaW4gc2VsZi5fY19leHRlbnNpb25zOgorICAgICAgICAgICAgICAgIGlucHV0X29wdCA9ICIvVGMiICsgc3JjCisgICAgICAgICAgICBlbGlmIGV4dCBpbiBzZWxmLl9jcHBfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICBpbnB1dF9vcHQgPSAiL1RwIiArIHNyYworICAgICAgICAgICAgZWxpZiBleHQgaW4gc2VsZi5fcmNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICAjIGNvbXBpbGUgLlJDIHRvIC5SRVMgZmlsZQorICAgICAgICAgICAgICAgIGlucHV0X29wdCA9IHNyYworICAgICAgICAgICAgICAgIG91dHB1dF9vcHQgPSAiL2ZvIiArIG9iagorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5yY10gKyBwcF9vcHRzICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbb3V0cHV0X29wdF0gKyBbaW5wdXRfb3B0XSkKKyAgICAgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKG1zZykKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgZWxpZiBleHQgaW4gc2VsZi5fbWNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICAjIENvbXBpbGUgLk1DIHRvIC5SQyBmaWxlIHRvIC5SRVMgZmlsZS4KKyAgICAgICAgICAgICAgICAjICAgKiAnLWggZGlyJyBzcGVjaWZpZXMgdGhlIGRpcmVjdG9yeSBmb3IgdGhlCisgICAgICAgICAgICAgICAgIyAgICAgZ2VuZXJhdGVkIGluY2x1ZGUgZmlsZQorICAgICAgICAgICAgICAgICMgICAqICctciBkaXInIHNwZWNpZmllcyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBvZiB0aGUKKyAgICAgICAgICAgICAgICAjICAgICBnZW5lcmF0ZWQgUkMgZmlsZSBhbmQgdGhlIGJpbmFyeSBtZXNzYWdlIHJlc291cmNlCisgICAgICAgICAgICAgICAgIyAgICAgaXQgaW5jbHVkZXMKKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyBGb3Igbm93IChzaW5jZSB0aGVyZSBhcmUgbm8gb3B0aW9ucyB0byBjaGFuZ2UgdGhpcyksCisgICAgICAgICAgICAgICAgIyB3ZSB1c2UgdGhlIHNvdXJjZS1kaXJlY3RvcnkgZm9yIHRoZSBpbmNsdWRlIGZpbGUgYW5kCisgICAgICAgICAgICAgICAgIyB0aGUgYnVpbGQgZGlyZWN0b3J5IGZvciB0aGUgUkMgZmlsZSBhbmQgbWVzc2FnZQorICAgICAgICAgICAgICAgICMgcmVzb3VyY2VzLiBUaGlzIHdvcmtzIGF0IGxlYXN0IGZvciB3aW4zMmFsbC4KKyAgICAgICAgICAgICAgICBoX2RpciA9IG9zLnBhdGguZGlybmFtZShzcmMpCisgICAgICAgICAgICAgICAgcmNfZGlyID0gb3MucGF0aC5kaXJuYW1lKG9iaikKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICMgZmlyc3QgY29tcGlsZSAuTUMgdG8gLlJDIGFuZCAuSCBmaWxlCisgICAgICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYubWNdICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbJy1oJywgaF9kaXIsICctcicsIHJjX2Rpcl0gKyBbc3JjXSkKKyAgICAgICAgICAgICAgICAgICAgYmFzZSwgXyA9IG9zLnBhdGguc3BsaXRleHQob3MucGF0aC5iYXNlbmFtZShzcmMpKQorICAgICAgICAgICAgICAgICAgICByY19maWxlID0gb3MucGF0aC5qb2luKHJjX2RpciwgYmFzZSArICcucmMnKQorICAgICAgICAgICAgICAgICAgICAjIHRoZW4gY29tcGlsZSAuUkMgdG8gLlJFUyBmaWxlCisgICAgICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYucmNdICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbIi9mbyIgKyBvYmpdICsgW3JjX2ZpbGVdKQorCisgICAgICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBob3cgdG8gaGFuZGxlIHRoaXMgZmlsZT8KKyAgICAgICAgICAgICAgICByYWlzZSBDb21waWxlRXJyb3IoIkRvbid0IGtub3cgaG93IHRvIGNvbXBpbGUgJXMgdG8gJXMiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgKHNyYywgb2JqKSkKKworICAgICAgICAgICAgb3V0cHV0X29wdCA9ICIvRm8iICsgb2JqCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5jY10gKyBjb21waWxlX29wdHMgKyBwcF9vcHRzICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpbnB1dF9vcHQsIG91dHB1dF9vcHRdICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhX3Bvc3RhcmdzKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKG1zZykKKworICAgICAgICByZXR1cm4gb2JqZWN0cworCisKKyAgICBkZWYgY3JlYXRlX3N0YXRpY19saWIoc2VsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2xpYm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dF9kaXI9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZGVidWc9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9sYW5nPU5vbmUpOgorCisgICAgICAgIGlmIG5vdCBzZWxmLmluaXRpYWxpemVkOgorICAgICAgICAgICAgc2VsZi5pbml0aWFsaXplKCkKKyAgICAgICAgb2JqZWN0cywgb3V0cHV0X2RpciA9IHNlbGYuX2ZpeF9vYmplY3RfYXJncyhvYmplY3RzLCBvdXRwdXRfZGlyKQorICAgICAgICBvdXRwdXRfZmlsZW5hbWUgPSBzZWxmLmxpYnJhcnlfZmlsZW5hbWUob3V0cHV0X2xpYm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXRfZGlyPW91dHB1dF9kaXIpCisKKyAgICAgICAgaWYgc2VsZi5fbmVlZF9saW5rKG9iamVjdHMsIG91dHB1dF9maWxlbmFtZSk6CisgICAgICAgICAgICBsaWJfYXJncyA9IG9iamVjdHMgKyBbJy9PVVQ6JyArIG91dHB1dF9maWxlbmFtZV0KKyAgICAgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgICAgIHBhc3MgIyBYWFggd2hhdCBnb2VzIGhlcmU/CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5saWJdICsgbGliX2FyZ3MpCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBMaWJFcnJvcihtc2cpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoInNraXBwaW5nICVzICh1cC10by1kYXRlKSIsIG91dHB1dF9maWxlbmFtZSkKKworCisgICAgZGVmIGxpbmsoc2VsZiwgdGFyZ2V0X2Rlc2MsIG9iamVjdHMsIG91dHB1dF9maWxlbmFtZSwgb3V0cHV0X2Rpcj1Ob25lLAorICAgICAgICAgICAgIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICBleHBvcnRfc3ltYm9scz1Ob25lLCBkZWJ1Zz1GYWxzZSwgZXh0cmFfcHJlYXJncz1Ob25lLAorICAgICAgICAgICAgIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGJ1aWxkX3RlbXA9Tm9uZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisgICAgICAgIGlmIG5vdCBzZWxmLmluaXRpYWxpemVkOgorICAgICAgICAgICAgc2VsZi5pbml0aWFsaXplKCkKKyAgICAgICAgb2JqZWN0cywgb3V0cHV0X2RpciA9IHNlbGYuX2ZpeF9vYmplY3RfYXJncyhvYmplY3RzLCBvdXRwdXRfZGlyKQorICAgICAgICBmaXhlZF9hcmdzID0gc2VsZi5fZml4X2xpYl9hcmdzKGxpYnJhcmllcywgbGlicmFyeV9kaXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ1bnRpbWVfbGlicmFyeV9kaXJzKQorICAgICAgICBsaWJyYXJpZXMsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMgPSBmaXhlZF9hcmdzCisKKyAgICAgICAgaWYgcnVudGltZV9saWJyYXJ5X2RpcnM6CisgICAgICAgICAgICBzZWxmLndhcm4oImRvbid0IGtub3cgd2hhdCB0byBkbyB3aXRoICdydW50aW1lX2xpYnJhcnlfZGlycyc6ICIKKyAgICAgICAgICAgICAgICAgICAgICArIHN0cihydW50aW1lX2xpYnJhcnlfZGlycykpCisKKyAgICAgICAgbGliX29wdHMgPSBnZW5fbGliX29wdGlvbnMoc2VsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzKQorICAgICAgICBpZiBvdXRwdXRfZGlyIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2ZpbGVuYW1lID0gb3MucGF0aC5qb2luKG91dHB1dF9kaXIsIG91dHB1dF9maWxlbmFtZSkKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKyAgICAgICAgICAgIGlmIHRhcmdldF9kZXNjID09IENDb21waWxlci5FWEVDVVRBQkxFOgorICAgICAgICAgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgICAgICAgICBsZGZsYWdzID0gc2VsZi5sZGZsYWdzX3NoYXJlZF9kZWJ1Z1sxOl0KKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsZGZsYWdzID0gc2VsZi5sZGZsYWdzX3NoYXJlZFsxOl0KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICAgICAgICAgIGxkZmxhZ3MgPSBzZWxmLmxkZmxhZ3Nfc2hhcmVkX2RlYnVnCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgbGRmbGFncyA9IHNlbGYubGRmbGFnc19zaGFyZWQKKworICAgICAgICAgICAgZXhwb3J0X29wdHMgPSBbXQorICAgICAgICAgICAgZm9yIHN5bSBpbiAoZXhwb3J0X3N5bWJvbHMgb3IgW10pOgorICAgICAgICAgICAgICAgIGV4cG9ydF9vcHRzLmFwcGVuZCgiL0VYUE9SVDoiICsgc3ltKQorCisgICAgICAgICAgICBsZF9hcmdzID0gKGxkZmxhZ3MgKyBsaWJfb3B0cyArIGV4cG9ydF9vcHRzICsKKyAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0cyArIFsnL09VVDonICsgb3V0cHV0X2ZpbGVuYW1lXSkKKworICAgICAgICAgICAgIyBUaGUgTVNWQyBsaW5rZXIgZ2VuZXJhdGVzIC5saWIgYW5kIC5leHAgZmlsZXMsIHdoaWNoIGNhbm5vdCBiZQorICAgICAgICAgICAgIyBzdXBwcmVzc2VkIGJ5IGFueSBsaW5rZXIgc3dpdGNoZXMuIFRoZSAubGliIGZpbGVzIG1heSBldmVuIGJlCisgICAgICAgICAgICAjIG5lZWRlZCEgTWFrZSBzdXJlIHRoZXkgYXJlIGdlbmVyYXRlZCBpbiB0aGUgdGVtcG9yYXJ5IGJ1aWxkCisgICAgICAgICAgICAjIGRpcmVjdG9yeS4gU2luY2UgdGhleSBoYXZlIGRpZmZlcmVudCBuYW1lcyBmb3IgZGVidWcgYW5kIHJlbGVhc2UKKyAgICAgICAgICAgICMgYnVpbGRzLCB0aGV5IGNhbiBnbyBpbnRvIHRoZSBzYW1lIGRpcmVjdG9yeS4KKyAgICAgICAgICAgIGJ1aWxkX3RlbXAgPSBvcy5wYXRoLmRpcm5hbWUob2JqZWN0c1swXSkKKyAgICAgICAgICAgIGlmIGV4cG9ydF9zeW1ib2xzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGRsbF9uYW1lLCBkbGxfZXh0ID0gb3MucGF0aC5zcGxpdGV4dCgKKyAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5iYXNlbmFtZShvdXRwdXRfZmlsZW5hbWUpKQorICAgICAgICAgICAgICAgIGltcGxpYl9maWxlID0gb3MucGF0aC5qb2luKAorICAgICAgICAgICAgICAgICAgICBidWlsZF90ZW1wLAorICAgICAgICAgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZmlsZW5hbWUoZGxsX25hbWUpKQorICAgICAgICAgICAgICAgIGxkX2FyZ3MuYXBwZW5kKCcvSU1QTElCOicgKyBpbXBsaWJfZmlsZSkKKworICAgICAgICAgICAgIyBFbWJlZGRlZCBtYW5pZmVzdHMgYXJlIHJlY29tbWVuZGVkIC0gc2VlIE1TRE4gYXJ0aWNsZSB0aXRsZWQKKyAgICAgICAgICAgICMgIkhvdyB0bzogRW1iZWQgYSBNYW5pZmVzdCBJbnNpZGUgYSBDL0MrKyBBcHBsaWNhdGlvbiIKKyAgICAgICAgICAgICMgKGN1cnJlbnRseSBhdCBodHRwOi8vbXNkbjIubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5L21zMjM1NTkxKFZTLjgwKS5hc3B4KQorICAgICAgICAgICAgIyBBc2sgdGhlIGxpbmtlciB0byBnZW5lcmF0ZSB0aGUgbWFuaWZlc3QgaW4gdGhlIHRlbXAgZGlyLCBzbworICAgICAgICAgICAgIyB3ZSBjYW4gZW1iZWQgaXQgbGF0ZXIuCisgICAgICAgICAgICB0ZW1wX21hbmlmZXN0ID0gb3MucGF0aC5qb2luKAorICAgICAgICAgICAgICAgICAgICBidWlsZF90ZW1wLAorICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmJhc2VuYW1lKG91dHB1dF9maWxlbmFtZSkgKyAiLm1hbmlmZXN0IikKKyAgICAgICAgICAgIGxkX2FyZ3MuYXBwZW5kKCcvTUFOSUZFU1RGSUxFOicgKyB0ZW1wX21hbmlmZXN0KQorCisgICAgICAgICAgICBpZiBleHRyYV9wcmVhcmdzOgorICAgICAgICAgICAgICAgIGxkX2FyZ3NbOjBdID0gZXh0cmFfcHJlYXJncworICAgICAgICAgICAgaWYgZXh0cmFfcG9zdGFyZ3M6CisgICAgICAgICAgICAgICAgbGRfYXJncy5leHRlbmQoZXh0cmFfcG9zdGFyZ3MpCisKKyAgICAgICAgICAgIHNlbGYubWtwYXRoKG9zLnBhdGguZGlybmFtZShvdXRwdXRfZmlsZW5hbWUpKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYubGlua2VyXSArIGxkX2FyZ3MpCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBMaW5rRXJyb3IobXNnKQorCisgICAgICAgICAgICAjIGVtYmVkIHRoZSBtYW5pZmVzdAorICAgICAgICAgICAgIyBYWFggLSB0aGlzIGlzIHNvbWV3aGF0IGZyYWdpbGUgLSBpZiBtdC5leGUgZmFpbHMsIGRpc3R1dGlscworICAgICAgICAgICAgIyB3aWxsIHN0aWxsIGNvbnNpZGVyIHRoZSBETEwgdXAtdG8tZGF0ZSwgYnV0IGl0IHdpbGwgbm90IGhhdmUgYQorICAgICAgICAgICAgIyBtYW5pZmVzdC4gIE1heWJlIHdlIHNob3VsZCBsaW5rIHRvIGEgdGVtcCBmaWxlPyAgT1RPSCwgdGhhdAorICAgICAgICAgICAgIyBpbXBsaWVzIGEgYnVpbGQgZW52aXJvbm1lbnQgZXJyb3IgdGhhdCBzaG91bGRuJ3QgZ28gdW5kZXRlY3RlZC4KKyAgICAgICAgICAgIGlmIHRhcmdldF9kZXNjID09IENDb21waWxlci5FWEVDVVRBQkxFOgorICAgICAgICAgICAgICAgIG1maWQgPSAxCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG1maWQgPSAyCisgICAgICAgICAgICAgICAgc2VsZi5fcmVtb3ZlX3Zpc3VhbF9jX3JlZih0ZW1wX21hbmlmZXN0KQorICAgICAgICAgICAgb3V0X2FyZyA9ICctb3V0cHV0cmVzb3VyY2U6JXM7JXMnICUgKG91dHB1dF9maWxlbmFtZSwgbWZpZCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLnNwYXduKFsnbXQuZXhlJywgJy1ub2xvZ28nLCAnLW1hbmlmZXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW1wX21hbmlmZXN0LCBvdXRfYXJnXSkKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIExpbmtFcnJvcihtc2cpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoInNraXBwaW5nICVzICh1cC10by1kYXRlKSIsIG91dHB1dF9maWxlbmFtZSkKKworICAgIGRlZiBfcmVtb3ZlX3Zpc3VhbF9jX3JlZihzZWxmLCBtYW5pZmVzdF9maWxlKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBSZW1vdmUgcmVmZXJlbmNlcyB0byB0aGUgVmlzdWFsIEMgcnVudGltZSwgc28gdGhleSB3aWxsCisgICAgICAgICAgICAjIGZhbGwgdGhyb3VnaCB0byB0aGUgVmlzdWFsIEMgZGVwZW5kZW5jeSBvZiBQeXRob24uZXhlLgorICAgICAgICAgICAgIyBUaGlzIHdheSwgd2hlbiBpbnN0YWxsZWQgZm9yIGEgcmVzdHJpY3RlZCB1c2VyIChlLmcuCisgICAgICAgICAgICAjIHJ1bnRpbWVzIGFyZSBub3QgaW4gV2luU3hTIGZvbGRlciwgYnV0IGluIFB5dGhvbidzIG93bgorICAgICAgICAgICAgIyBmb2xkZXIpLCB0aGUgcnVudGltZXMgZG8gbm90IG5lZWQgdG8gYmUgaW4gZXZlcnkgZm9sZGVyCisgICAgICAgICAgICAjIHdpdGggLnB5ZCdzLgorICAgICAgICAgICAgd2l0aCBvcGVuKG1hbmlmZXN0X2ZpbGUpIGFzIG1hbmlmZXN0X2Y6CisgICAgICAgICAgICAgICAgbWFuaWZlc3RfYnVmID0gbWFuaWZlc3RfZi5yZWFkKCkKKyAgICAgICAgICAgIHBhdHRlcm4gPSByZS5jb21waWxlKAorICAgICAgICAgICAgICAgIHIiIiI8YXNzZW1ibHlJZGVudGl0eS4qP25hbWU9KCJ8JylNaWNyb3NvZnRcLiIiIlwKKyAgICAgICAgICAgICAgICByIiIiVkNcZHsyfVwuQ1JUKCJ8JykuKj8oLz58PC9hc3NlbWJseUlkZW50aXR5PikiIiIsCisgICAgICAgICAgICAgICAgcmUuRE9UQUxMKQorICAgICAgICAgICAgbWFuaWZlc3RfYnVmID0gcmUuc3ViKHBhdHRlcm4sICIiLCBtYW5pZmVzdF9idWYpCisgICAgICAgICAgICBwYXR0ZXJuID0gIjxkZXBlbmRlbnRBc3NlbWJseT5ccyo8L2RlcGVuZGVudEFzc2VtYmx5PiIKKyAgICAgICAgICAgIG1hbmlmZXN0X2J1ZiA9IHJlLnN1YihwYXR0ZXJuLCAiIiwgbWFuaWZlc3RfYnVmKQorICAgICAgICAgICAgd2l0aCBvcGVuKG1hbmlmZXN0X2ZpbGUsICd3JykgYXMgbWFuaWZlc3RfZjoKKyAgICAgICAgICAgICAgICBtYW5pZmVzdF9mLndyaXRlKG1hbmlmZXN0X2J1ZikKKyAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICBwYXNzCisKKyAgICAjIC0tIE1pc2NlbGxhbmVvdXMgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICMgVGhlc2UgYXJlIGFsbCB1c2VkIGJ5IHRoZSAnZ2VuX2xpYl9vcHRpb25zKCkgZnVuY3Rpb24sIGluCisgICAgIyBjY29tcGlsZXIucHkuCisKKyAgICBkZWYgbGlicmFyeV9kaXJfb3B0aW9uKHNlbGYsIGRpcik6CisgICAgICAgIHJldHVybiAiL0xJQlBBVEg6IiArIGRpcgorCisgICAgZGVmIHJ1bnRpbWVfbGlicmFyeV9kaXJfb3B0aW9uKHNlbGYsIGRpcik6CisgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoCisgICAgICAgICAgICAgICJkb24ndCBrbm93IGhvdyB0byBzZXQgcnVudGltZSBsaWJyYXJ5IHNlYXJjaCBwYXRoIGZvciBNU1ZDKysiKQorCisgICAgZGVmIGxpYnJhcnlfb3B0aW9uKHNlbGYsIGxpYik6CisgICAgICAgIHJldHVybiBzZWxmLmxpYnJhcnlfZmlsZW5hbWUobGliKQorCisKKyAgICBkZWYgZmluZF9saWJyYXJ5X2ZpbGUoc2VsZiwgZGlycywgbGliLCBkZWJ1Zz1GYWxzZSk6CisgICAgICAgICMgUHJlZmVyIGEgZGVidWdnaW5nIGxpYnJhcnkgaWYgZm91bmQgKGFuZCByZXF1ZXN0ZWQpLCBidXQgZGVhbAorICAgICAgICAjIHdpdGggaXQgaWYgd2UgZG9uJ3QgaGF2ZSBvbmUuCisgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgdHJ5X25hbWVzID0gW2xpYiArICJfZCIsIGxpYl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHRyeV9uYW1lcyA9IFtsaWJdCisgICAgICAgIGZvciBkaXIgaW4gZGlyczoKKyAgICAgICAgICAgIGZvciBuYW1lIGluIHRyeV9uYW1lczoKKyAgICAgICAgICAgICAgICBsaWJmaWxlID0gb3MucGF0aC5qb2luKGRpciwgc2VsZi5saWJyYXJ5X2ZpbGVuYW1lKG5hbWUpKQorICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGxpYmZpbGUpOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gbGliZmlsZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBPb3BzLCBkaWRuJ3QgZmluZCBpdCBpbiAqYW55KiBvZiAnZGlycycKKyAgICAgICAgICAgIHJldHVybiBOb25lCisKKyAgICAjIEhlbHBlciBtZXRob2RzIGZvciB1c2luZyB0aGUgTVNWQyByZWdpc3RyeSBzZXR0aW5ncworCisgICAgZGVmIGZpbmRfZXhlKHNlbGYsIGV4ZSk6CisgICAgICAgICIiIlJldHVybiBwYXRoIHRvIGFuIE1TVkMgZXhlY3V0YWJsZSBwcm9ncmFtLgorCisgICAgICAgIFRyaWVzIHRvIGZpbmQgdGhlIHByb2dyYW0gaW4gc2V2ZXJhbCBwbGFjZXM6IGZpcnN0LCBvbmUgb2YgdGhlCisgICAgICAgIE1TVkMgcHJvZ3JhbSBzZWFyY2ggcGF0aHMgZnJvbSB0aGUgcmVnaXN0cnk7IG5leHQsIHRoZSBkaXJlY3RvcmllcworICAgICAgICBpbiB0aGUgUEFUSCBlbnZpcm9ubWVudCB2YXJpYWJsZS4gIElmIGFueSBvZiB0aG9zZSB3b3JrLCByZXR1cm4gYW4KKyAgICAgICAgYWJzb2x1dGUgcGF0aCB0aGF0IGlzIGtub3duIHRvIGV4aXN0LiAgSWYgbm9uZSBvZiB0aGVtIHdvcmssIGp1c3QKKyAgICAgICAgcmV0dXJuIHRoZSBvcmlnaW5hbCBwcm9ncmFtIG5hbWUsICdleGUnLgorICAgICAgICAiIiIKKyAgICAgICAgZm9yIHAgaW4gc2VsZi5fX3BhdGhzOgorICAgICAgICAgICAgZm4gPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5hYnNwYXRoKHApLCBleGUpCisgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShmbik6CisgICAgICAgICAgICAgICAgcmV0dXJuIGZuCisKKyAgICAgICAgIyBkaWRuJ3QgZmluZCBpdDsgdHJ5IGV4aXN0aW5nIHBhdGgKKyAgICAgICAgZm9yIHAgaW4gb3MuZW52aXJvblsnUGF0aCddLnNwbGl0KCc7Jyk6CisgICAgICAgICAgICBmbiA9IG9zLnBhdGguam9pbihvcy5wYXRoLmFic3BhdGgocCksZXhlKQorICAgICAgICAgICAgaWYgb3MucGF0aC5pc2ZpbGUoZm4pOgorICAgICAgICAgICAgICAgIHJldHVybiBmbgorCisgICAgICAgIHJldHVybiBleGUKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvbXN2Y2NvbXBpbGVyLnB5IGIvTGliL3BhY2thZ2luZy9jb21waWxlci9tc3ZjY29tcGlsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzlhMTBiMgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvbXN2Y2NvbXBpbGVyLnB5CkBAIC0wLDAgKzEsNjM1IEBACisiIiJDQ29tcGlsZXIgaW1wbGVtZW50YXRpb24gZm9yIG9sZCBNaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyBjb21waWxlcnMuCisKK0ZvciBhIGNvbXBpbGVyIGNvbXBhdGlibGUgd2l0aCBWUyAyMDA1IGFuZCAyMDA4LCB1c2UgbXN2Yzljb21waWxlci4KKyIiIgorCisjIFdyaXR0ZW4gYnkgUGVycnkgU3RvbGwKKyMgaGFja2VkIGJ5IFJvYmluIEJlY2tlciBhbmQgVGhvbWFzIEhlbGxlciB0byBkbyBhIGJldHRlciBqb2Igb2YKKyMgICBmaW5kaW5nIERldlN0dWRpbyAodGhyb3VnaCB0aGUgcmVnaXN0cnkpCisKKworaW1wb3J0IHN5cworaW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKFBhY2thZ2luZ0V4ZWNFcnJvciwgUGFja2FnaW5nUGxhdGZvcm1FcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbXBpbGVFcnJvciwgTGliRXJyb3IsIExpbmtFcnJvcikKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlciBpbXBvcnQgQ0NvbXBpbGVyCitmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgZ2VuX2xpYl9vcHRpb25zCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCisKK19jYW5fcmVhZF9yZWcgPSBGYWxzZQordHJ5OgorICAgIGltcG9ydCB3aW5yZWcKKworICAgIF9jYW5fcmVhZF9yZWcgPSBUcnVlCisgICAgaGtleV9tb2QgPSB3aW5yZWcKKworICAgIFJlZ09wZW5LZXlFeCA9IHdpbnJlZy5PcGVuS2V5RXgKKyAgICBSZWdFbnVtS2V5ID0gd2lucmVnLkVudW1LZXkKKyAgICBSZWdFbnVtVmFsdWUgPSB3aW5yZWcuRW51bVZhbHVlCisgICAgUmVnRXJyb3IgPSB3aW5yZWcuZXJyb3IKKworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHRyeToKKyAgICAgICAgaW1wb3J0IHdpbjMyYXBpCisgICAgICAgIGltcG9ydCB3aW4zMmNvbgorICAgICAgICBfY2FuX3JlYWRfcmVnID0gVHJ1ZQorICAgICAgICBoa2V5X21vZCA9IHdpbjMyY29uCisKKyAgICAgICAgUmVnT3BlbktleUV4ID0gd2luMzJhcGkuUmVnT3BlbktleUV4CisgICAgICAgIFJlZ0VudW1LZXkgPSB3aW4zMmFwaS5SZWdFbnVtS2V5CisgICAgICAgIFJlZ0VudW1WYWx1ZSA9IHdpbjMyYXBpLlJlZ0VudW1WYWx1ZQorICAgICAgICBSZWdFcnJvciA9IHdpbjMyYXBpLmVycm9yCisKKyAgICBleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgICAgIGxvZ2dlci53YXJuaW5nKAorICAgICAgICAgICAgImNhbid0IHJlYWQgcmVnaXN0cnkgdG8gZmluZCB0aGUgbmVjZXNzYXJ5IGNvbXBpbGVyIHNldHRpbmc7XG4iCisgICAgICAgICAgICAibWFrZSBzdXJlIHRoYXQgUHl0aG9uIG1vZHVsZXMgX3dpbnJlZywgd2luMzJhcGkgb3Igd2luMzJjb24gIgorICAgICAgICAgICAgImFyZSBpbnN0YWxsZWQuIikKKworaWYgX2Nhbl9yZWFkX3JlZzoKKyAgICBIS0VZUyA9IChoa2V5X21vZC5IS0VZX1VTRVJTLAorICAgICAgICAgICAgIGhrZXlfbW9kLkhLRVlfQ1VSUkVOVF9VU0VSLAorICAgICAgICAgICAgIGhrZXlfbW9kLkhLRVlfTE9DQUxfTUFDSElORSwKKyAgICAgICAgICAgICBoa2V5X21vZC5IS0VZX0NMQVNTRVNfUk9PVCkKKworCitkZWYgcmVhZF9rZXlzKGJhc2UsIGtleSk6CisgICAgIiIiUmV0dXJuIGxpc3Qgb2YgcmVnaXN0cnkga2V5cy4iIiIKKworICAgIHRyeToKKyAgICAgICAgaGFuZGxlID0gUmVnT3BlbktleUV4KGJhc2UsIGtleSkKKyAgICBleGNlcHQgUmVnRXJyb3I6CisgICAgICAgIHJldHVybiBOb25lCisgICAgTCA9IFtdCisgICAgaSA9IDAKKyAgICB3aGlsZSBUcnVlOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBrID0gUmVnRW51bUtleShoYW5kbGUsIGkpCisgICAgICAgIGV4Y2VwdCBSZWdFcnJvcjoKKyAgICAgICAgICAgIGJyZWFrCisgICAgICAgIEwuYXBwZW5kKGspCisgICAgICAgIGkgPSBpICsgMQorICAgIHJldHVybiBMCisKKworZGVmIHJlYWRfdmFsdWVzKGJhc2UsIGtleSk6CisgICAgIiIiUmV0dXJuIGRpY3Qgb2YgcmVnaXN0cnkga2V5cyBhbmQgdmFsdWVzLgorCisgICAgQWxsIG5hbWVzIGFyZSBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlLgorICAgICIiIgorICAgIHRyeToKKyAgICAgICAgaGFuZGxlID0gUmVnT3BlbktleUV4KGJhc2UsIGtleSkKKyAgICBleGNlcHQgUmVnRXJyb3I6CisgICAgICAgIHJldHVybiBOb25lCisgICAgZCA9IHt9CisgICAgaSA9IDAKKyAgICB3aGlsZSBUcnVlOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBuYW1lLCB2YWx1ZSwgdHlwZSA9IFJlZ0VudW1WYWx1ZShoYW5kbGUsIGkpCisgICAgICAgIGV4Y2VwdCBSZWdFcnJvcjoKKyAgICAgICAgICAgIGJyZWFrCisgICAgICAgIG5hbWUgPSBuYW1lLmxvd2VyKCkKKyAgICAgICAgZFtjb252ZXJ0X21iY3MobmFtZSldID0gY29udmVydF9tYmNzKHZhbHVlKQorICAgICAgICBpID0gaSArIDEKKyAgICByZXR1cm4gZAorCisKK2RlZiBjb252ZXJ0X21iY3Mocyk6CisgICAgZW5jID0gZ2V0YXR0cihzLCAiZW5jb2RlIiwgTm9uZSkKKyAgICBpZiBlbmMgaXMgbm90IE5vbmU6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHMgPSBlbmMoIm1iY3MiKQorICAgICAgICBleGNlcHQgVW5pY29kZUVycm9yOgorICAgICAgICAgICAgcGFzcworICAgIHJldHVybiBzCisKKworY2xhc3MgTWFjcm9FeHBhbmRlcjoKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCB2ZXJzaW9uKToKKyAgICAgICAgc2VsZi5tYWNyb3MgPSB7fQorICAgICAgICBzZWxmLmxvYWRfbWFjcm9zKHZlcnNpb24pCisKKyAgICBkZWYgc2V0X21hY3JvKHNlbGYsIG1hY3JvLCBwYXRoLCBrZXkpOgorICAgICAgICBmb3IgYmFzZSBpbiBIS0VZUzoKKyAgICAgICAgICAgIGQgPSByZWFkX3ZhbHVlcyhiYXNlLCBwYXRoKQorICAgICAgICAgICAgaWYgZDoKKyAgICAgICAgICAgICAgICBzZWxmLm1hY3Jvc1siJCglcykiICUgbWFjcm9dID0gZFtrZXldCisgICAgICAgICAgICAgICAgYnJlYWsKKworICAgIGRlZiBsb2FkX21hY3JvcyhzZWxmLCB2ZXJzaW9uKToKKyAgICAgICAgdnNiYXNlID0gciJTb2Z0d2FyZVxNaWNyb3NvZnRcVmlzdWFsU3R1ZGlvXCUwLjFmIiAlIHZlcnNpb24KKyAgICAgICAgc2VsZi5zZXRfbWFjcm8oIlZDSW5zdGFsbERpciIsIHZzYmFzZSArIHIiXFNldHVwXFZDIiwgInByb2R1Y3RkaXIiKQorICAgICAgICBzZWxmLnNldF9tYWNybygiVlNJbnN0YWxsRGlyIiwgdnNiYXNlICsgciJcU2V0dXBcVlMiLCAicHJvZHVjdGRpciIpCisgICAgICAgIG5ldCA9IHIiU29mdHdhcmVcTWljcm9zb2Z0XC5ORVRGcmFtZXdvcmsiCisgICAgICAgIHNlbGYuc2V0X21hY3JvKCJGcmFtZXdvcmtEaXIiLCBuZXQsICJpbnN0YWxscm9vdCIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGlmIHZlcnNpb24gPiA3LjA6CisgICAgICAgICAgICAgICAgc2VsZi5zZXRfbWFjcm8oIkZyYW1ld29ya1NES0RpciIsIG5ldCwgInNka2luc3RhbGxyb290djEuMSIpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuc2V0X21hY3JvKCJGcmFtZXdvcmtTREtEaXIiLCBuZXQsICJzZGtpbnN0YWxscm9vdCIpCisgICAgICAgIGV4Y2VwdCBLZXlFcnJvcjoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoCisiIiJQeXRob24gd2FzIGJ1aWx0IHdpdGggVmlzdWFsIFN0dWRpbyAyMDAzOyBleHRlbnNpb25zIG11c3QgYmUgYnVpbHQgd2l0aAorYSBjb21waWxlciB0aGFuIGNhbiBnZW5lcmF0ZSBjb21wYXRpYmxlIGJpbmFyaWVzLiBWaXN1YWwgU3R1ZGlvIDIwMDMgd2FzCitub3QgZm91bmQgb24gdGhpcyBzeXN0ZW0uIElmIHlvdSBoYXZlIEN5Z3dpbiBpbnN0YWxsZWQsIHlvdSBjYW4gdHJ5Citjb21waWxpbmcgd2l0aCBNaW5nVzMyLCBieSBwYXNzaW5nICItYyBtaW5ndzMyIiB0byBweXNldHVwLiIiIikKKworICAgICAgICBwID0gciJTb2Z0d2FyZVxNaWNyb3NvZnRcTkVUIEZyYW1ld29yayBTZXR1cFxQcm9kdWN0IgorICAgICAgICBmb3IgYmFzZSBpbiBIS0VZUzoKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBoID0gUmVnT3BlbktleUV4KGJhc2UsIHApCisgICAgICAgICAgICBleGNlcHQgUmVnRXJyb3I6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGtleSA9IFJlZ0VudW1LZXkoaCwgMCkKKyAgICAgICAgICAgIGQgPSByZWFkX3ZhbHVlcyhiYXNlLCByIiVzXCVzIiAlIChwLCBrZXkpKQorICAgICAgICAgICAgc2VsZi5tYWNyb3NbIiQoRnJhbWV3b3JrVmVyc2lvbikiXSA9IGRbInZlcnNpb24iXQorCisgICAgZGVmIHN1YihzZWxmLCBzKToKKyAgICAgICAgZm9yIGssIHYgaW4gc2VsZi5tYWNyb3MuaXRlbXMoKToKKyAgICAgICAgICAgIHMgPSBzLnJlcGxhY2UoaywgdikKKyAgICAgICAgcmV0dXJuIHMKKworCitkZWYgZ2V0X2J1aWxkX3ZlcnNpb24oKToKKyAgICAiIiJSZXR1cm4gdGhlIHZlcnNpb24gb2YgTVNWQyB0aGF0IHdhcyB1c2VkIHRvIGJ1aWxkIFB5dGhvbi4KKworICAgIEZvciBQeXRob24gMi4zIGFuZCB1cCwgdGhlIHZlcnNpb24gbnVtYmVyIGlzIGluY2x1ZGVkIGluCisgICAgc3lzLnZlcnNpb24uICBGb3IgZWFybGllciB2ZXJzaW9ucywgYXNzdW1lIHRoZSBjb21waWxlciBpcyBNU1ZDIDYuCisgICAgIiIiCisKKyAgICBwcmVmaXggPSAiTVNDIHYuIgorICAgIGkgPSBzeXMudmVyc2lvbi5maW5kKHByZWZpeCkKKyAgICBpZiBpID09IC0xOgorICAgICAgICByZXR1cm4gNgorICAgIGkgPSBpICsgbGVuKHByZWZpeCkKKyAgICBzLCByZXN0ID0gc3lzLnZlcnNpb25baTpdLnNwbGl0KCIgIiwgMSkKKyAgICBtYWpvclZlcnNpb24gPSBpbnQoc1s6LTJdKSAtIDYKKyAgICBtaW5vclZlcnNpb24gPSBpbnQoc1syOjNdKSAvIDEwLjAKKyAgICAjIEkgZG9uJ3QgdGhpbmsgcGF0aHMgYXJlIGFmZmVjdGVkIGJ5IG1pbm9yIHZlcnNpb24gaW4gdmVyc2lvbiA2CisgICAgaWYgbWFqb3JWZXJzaW9uID09IDY6CisgICAgICAgIG1pbm9yVmVyc2lvbiA9IDAKKyAgICBpZiBtYWpvclZlcnNpb24gPj0gNjoKKyAgICAgICAgcmV0dXJuIG1ham9yVmVyc2lvbiArIG1pbm9yVmVyc2lvbgorICAgICMgZWxzZSB3ZSBkb24ndCBrbm93IHdoYXQgdmVyc2lvbiBvZiB0aGUgY29tcGlsZXIgdGhpcyBpcworICAgIHJldHVybiBOb25lCisKKworZGVmIGdldF9idWlsZF9hcmNoaXRlY3R1cmUoKToKKyAgICAiIiJSZXR1cm4gdGhlIHByb2Nlc3NvciBhcmNoaXRlY3R1cmUuCisKKyAgICBQb3NzaWJsZSByZXN1bHRzIGFyZSAiSW50ZWwiLCAiSXRhbml1bSIsIG9yICJBTUQ2NCIuCisgICAgIiIiCisKKyAgICBwcmVmaXggPSAiIGJpdCAoIgorICAgIGkgPSBzeXMudmVyc2lvbi5maW5kKHByZWZpeCkKKyAgICBpZiBpID09IC0xOgorICAgICAgICByZXR1cm4gIkludGVsIgorICAgIGogPSBzeXMudmVyc2lvbi5maW5kKCIpIiwgaSkKKyAgICByZXR1cm4gc3lzLnZlcnNpb25baStsZW4ocHJlZml4KTpqXQorCisKK2RlZiBub3JtYWxpemVfYW5kX3JlZHVjZV9wYXRocyhwYXRocyk6CisgICAgIiIiUmV0dXJuIGEgbGlzdCBvZiBub3JtYWxpemVkIHBhdGhzIHdpdGggZHVwbGljYXRlcyByZW1vdmVkLgorCisgICAgVGhlIGN1cnJlbnQgb3JkZXIgb2YgcGF0aHMgaXMgbWFpbnRhaW5lZC4KKyAgICAiIiIKKyAgICAjIFBhdGhzIGFyZSBub3JtYWxpemVkIHNvIHRoaW5ncyBsaWtlOiAgL2EgYW5kIC9hLyBhcmVuJ3QgYm90aCBwcmVzZXJ2ZWQuCisgICAgcmVkdWNlZF9wYXRocyA9IFtdCisgICAgZm9yIHAgaW4gcGF0aHM6CisgICAgICAgIG5wID0gb3MucGF0aC5ub3JtcGF0aChwKQorICAgICAgICAjIFhYWChubm9yd2l0eik6IE8obioqMiksIGlmIHJlZHVjZWRfcGF0aHMgZ2V0cyBsb25nIHBlcmhhcHMgdXNlIGEgc2V0LgorICAgICAgICBpZiBucCBub3QgaW4gcmVkdWNlZF9wYXRoczoKKyAgICAgICAgICAgIHJlZHVjZWRfcGF0aHMuYXBwZW5kKG5wKQorICAgIHJldHVybiByZWR1Y2VkX3BhdGhzCisKKworY2xhc3MgTVNWQ0NvbXBpbGVyKENDb21waWxlcik6CisgICAgIiIiQ29uY3JldGUgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGFuIGludGVyZmFjZSB0byBNaWNyb3NvZnQgVmlzdWFsIEMrKywKKyAgICAgICBhcyBkZWZpbmVkIGJ5IHRoZSBDQ29tcGlsZXIgYWJzdHJhY3QgY2xhc3MuIiIiCisKKyAgICBuYW1lID0gJ21zdmMnCisgICAgZGVzY3JpcHRpb24gPSAiTWljcm9zb2Z0IFZpc3VhbCBDKysiCisKKyAgICAjIEp1c3Qgc2V0IHRoaXMgc28gQ0NvbXBpbGVyJ3MgY29uc3RydWN0b3IgZG9lc24ndCBiYXJmLiAgV2UgY3VycmVudGx5CisgICAgIyBkb24ndCB1c2UgdGhlICdzZXRfZXhlY3V0YWJsZXMoKScgYnVyZWF1Y3JhY3kgcHJvdmlkZWQgYnkgQ0NvbXBpbGVyLAorICAgICMgYXMgaXQgcmVhbGx5IGlzbid0IG5lY2Vzc2FyeSBmb3IgdGhpcyBzb3J0IG9mIHNpbmdsZS1jb21waWxlciBjbGFzcy4KKyAgICAjIFdvdWxkIGJlIG5pY2UgdG8gaGF2ZSBhIGNvbnNpc3RlbnQgaW50ZXJmYWNlIHdpdGggVW5peENDb21waWxlciwKKyAgICAjIHRob3VnaCwgc28gaXQncyB3b3J0aCB0aGlua2luZyBhYm91dC4KKyAgICBleGVjdXRhYmxlcyA9IHt9CisKKyAgICAjIFByaXZhdGUgY2xhc3MgZGF0YSAobmVlZCB0byBkaXN0aW5ndWlzaCBDIGZyb20gQysrIHNvdXJjZSBmb3IgY29tcGlsZXIpCisgICAgX2NfZXh0ZW5zaW9ucyA9IFsnLmMnXQorICAgIF9jcHBfZXh0ZW5zaW9ucyA9IFsnLmNjJywgJy5jcHAnLCAnLmN4eCddCisgICAgX3JjX2V4dGVuc2lvbnMgPSBbJy5yYyddCisgICAgX21jX2V4dGVuc2lvbnMgPSBbJy5tYyddCisKKyAgICAjIE5lZWRlZCBmb3IgdGhlIGZpbGVuYW1lIGdlbmVyYXRpb24gbWV0aG9kcyBwcm92aWRlZCBieSB0aGUKKyAgICAjIGJhc2UgY2xhc3MsIENDb21waWxlci4KKyAgICBzcmNfZXh0ZW5zaW9ucyA9IChfY19leHRlbnNpb25zICsgX2NwcF9leHRlbnNpb25zICsKKyAgICAgICAgICAgICAgICAgICAgICBfcmNfZXh0ZW5zaW9ucyArIF9tY19leHRlbnNpb25zKQorICAgIHJlc19leHRlbnNpb24gPSAnLnJlcycKKyAgICBvYmpfZXh0ZW5zaW9uID0gJy5vYmonCisgICAgc3RhdGljX2xpYl9leHRlbnNpb24gPSAnLmxpYicKKyAgICBzaGFyZWRfbGliX2V4dGVuc2lvbiA9ICcuZGxsJworICAgIHN0YXRpY19saWJfZm9ybWF0ID0gc2hhcmVkX2xpYl9mb3JtYXQgPSAnJXMlcycKKyAgICBleGVfZXh0ZW5zaW9uID0gJy5leGUnCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZHJ5X3J1bj1GYWxzZSwgZm9yY2U9RmFsc2UpOgorICAgICAgICBzdXBlcihNU1ZDQ29tcGlsZXIsIHNlbGYpLl9faW5pdF9fKGRyeV9ydW4sIGZvcmNlKQorICAgICAgICBzZWxmLl9fdmVyc2lvbiA9IGdldF9idWlsZF92ZXJzaW9uKCkKKyAgICAgICAgc2VsZi5fX2FyY2ggPSBnZXRfYnVpbGRfYXJjaGl0ZWN0dXJlKCkKKyAgICAgICAgaWYgc2VsZi5fX2FyY2ggPT0gIkludGVsIjoKKyAgICAgICAgICAgICMgeDg2CisgICAgICAgICAgICBpZiBzZWxmLl9fdmVyc2lvbiA+PSA3OgorICAgICAgICAgICAgICAgIHNlbGYuX19yb290ID0gciJTb2Z0d2FyZVxNaWNyb3NvZnRcVmlzdWFsU3R1ZGlvIgorICAgICAgICAgICAgICAgIHNlbGYuX19tYWNyb3MgPSBNYWNyb0V4cGFuZGVyKHNlbGYuX192ZXJzaW9uKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLl9fcm9vdCA9IHIiU29mdHdhcmVcTWljcm9zb2Z0XERldnN0dWRpbyIKKyAgICAgICAgICAgIHNlbGYuX19wcm9kdWN0ID0gIlZpc3VhbCBTdHVkaW8gdmVyc2lvbiAlcyIgJSBzZWxmLl9fdmVyc2lvbgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBXaW42NC4gQXNzdW1lIHRoaXMgd2FzIGJ1aWx0IHdpdGggdGhlIHBsYXRmb3JtIFNESworICAgICAgICAgICAgc2VsZi5fX3Byb2R1Y3QgPSAiTWljcm9zb2Z0IFNESyBjb21waWxlciAlcyIgJSAoc2VsZi5fX3ZlcnNpb24gKyA2KQorCisgICAgICAgIHNlbGYuaW5pdGlhbGl6ZWQgPSBGYWxzZQorCisgICAgZGVmIGluaXRpYWxpemUoc2VsZik6CisgICAgICAgIHNlbGYuX19wYXRocyA9IFtdCisgICAgICAgIGlmICgiRElTVFVUSUxTX1VTRV9TREsiIGluIG9zLmVudmlyb24gYW5kICJNU1NkayIgaW4gb3MuZW52aXJvbiBhbmQKKyAgICAgICAgICAgIHNlbGYuZmluZF9leGUoImNsLmV4ZSIpKToKKyAgICAgICAgICAgICMgQXNzdW1lIHRoYXQgdGhlIFNESyBzZXQgdXAgZXZlcnl0aGluZyBhbHJpZ2h0OyBkb24ndCB0cnkgdG8gYmUKKyAgICAgICAgICAgICMgc21hcnRlcgorICAgICAgICAgICAgc2VsZi5jYyA9ICJjbC5leGUiCisgICAgICAgICAgICBzZWxmLmxpbmtlciA9ICJsaW5rLmV4ZSIKKyAgICAgICAgICAgIHNlbGYubGliID0gImxpYi5leGUiCisgICAgICAgICAgICBzZWxmLnJjID0gInJjLmV4ZSIKKyAgICAgICAgICAgIHNlbGYubWMgPSAibWMuZXhlIgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5fX3BhdGhzID0gc2VsZi5nZXRfbXN2Y19wYXRocygicGF0aCIpCisKKyAgICAgICAgICAgIGlmIGxlbihzZWxmLl9fcGF0aHMpID09IDA6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcigiUHl0aG9uIHdhcyBidWlsdCB3aXRoICVzICIKKyAgICAgICAgICAgICAgICAgICAgImFuZCBleHRlbnNpb25zIG5lZWQgdG8gYmUgYnVpbHQgd2l0aCB0aGUgc2FtZSAiCisgICAgICAgICAgICAgICAgICAgICJ2ZXJzaW9uIG9mIHRoZSBjb21waWxlciwgYnV0IGl0IGlzbid0IGluc3RhbGxlZC4iICUKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fX3Byb2R1Y3QpCisKKyAgICAgICAgICAgIHNlbGYuY2MgPSBzZWxmLmZpbmRfZXhlKCJjbC5leGUiKQorICAgICAgICAgICAgc2VsZi5saW5rZXIgPSBzZWxmLmZpbmRfZXhlKCJsaW5rLmV4ZSIpCisgICAgICAgICAgICBzZWxmLmxpYiA9IHNlbGYuZmluZF9leGUoImxpYi5leGUiKQorICAgICAgICAgICAgc2VsZi5yYyA9IHNlbGYuZmluZF9leGUoInJjLmV4ZSIpICAgIyByZXNvdXJjZSBjb21waWxlcgorICAgICAgICAgICAgc2VsZi5tYyA9IHNlbGYuZmluZF9leGUoIm1jLmV4ZSIpICAgIyBtZXNzYWdlIGNvbXBpbGVyCisgICAgICAgICAgICBzZWxmLnNldF9wYXRoX2Vudl92YXIoJ2xpYicpCisgICAgICAgICAgICBzZWxmLnNldF9wYXRoX2Vudl92YXIoJ2luY2x1ZGUnKQorCisgICAgICAgICMgZXh0ZW5kIHRoZSBNU1ZDIHBhdGggd2l0aCB0aGUgY3VycmVudCBwYXRoCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGZvciBwIGluIG9zLmVudmlyb25bJ3BhdGgnXS5zcGxpdCgnOycpOgorICAgICAgICAgICAgICAgIHNlbGYuX19wYXRocy5hcHBlbmQocCkKKyAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBzZWxmLl9fcGF0aHMgPSBub3JtYWxpemVfYW5kX3JlZHVjZV9wYXRocyhzZWxmLl9fcGF0aHMpCisgICAgICAgIG9zLmVudmlyb25bJ3BhdGgnXSA9ICc7Jy5qb2luKHNlbGYuX19wYXRocykKKworICAgICAgICBzZWxmLnByZXByb2Nlc3Nfb3B0aW9ucyA9IE5vbmUKKyAgICAgICAgaWYgc2VsZi5fX2FyY2ggPT0gIkludGVsIjoKKyAgICAgICAgICAgIHNlbGYuY29tcGlsZV9vcHRpb25zID0gWycvbm9sb2dvJywgJy9PeCcsICcvTUQnLCAnL1czJywgJy9HWCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnL0ROREVCVUcnXQorICAgICAgICAgICAgc2VsZi5jb21waWxlX29wdGlvbnNfZGVidWcgPSBbJy9ub2xvZ28nLCAnL09kJywgJy9NRGQnLCAnL1czJywgJy9HWCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnL1o3JywgJy9EX0RFQlVHJ10KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgICMgV2luNjQKKyAgICAgICAgICAgIHNlbGYuY29tcGlsZV9vcHRpb25zID0gWycvbm9sb2dvJywgJy9PeCcsICcvTUQnLCAnL1czJywgJy9HUy0nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy9ETkRFQlVHJ10KKyAgICAgICAgICAgIHNlbGYuY29tcGlsZV9vcHRpb25zX2RlYnVnID0gWycvbm9sb2dvJywgJy9PZCcsICcvTURkJywgJy9XMycsICcvR1MtJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvWjcnLCAnL0RfREVCVUcnXQorCisgICAgICAgIHNlbGYubGRmbGFnc19zaGFyZWQgPSBbJy9ETEwnLCAnL25vbG9nbycsICcvSU5DUkVNRU5UQUw6Tk8nXQorICAgICAgICBpZiBzZWxmLl9fdmVyc2lvbiA+PSA3OgorICAgICAgICAgICAgc2VsZi5sZGZsYWdzX3NoYXJlZF9kZWJ1ZyA9IFsKKyAgICAgICAgICAgICAgICAnL0RMTCcsICcvbm9sb2dvJywgJy9JTkNSRU1FTlRBTDpubycsICcvREVCVUcnCisgICAgICAgICAgICAgICAgXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5sZGZsYWdzX3NoYXJlZF9kZWJ1ZyA9IFsKKyAgICAgICAgICAgICAgICAnL0RMTCcsICcvbm9sb2dvJywgJy9JTkNSRU1FTlRBTDpubycsICcvcGRiOk5vbmUnLCAnL0RFQlVHJworICAgICAgICAgICAgICAgIF0KKyAgICAgICAgc2VsZi5sZGZsYWdzX3N0YXRpYyA9IFsgJy9ub2xvZ28nXQorCisgICAgICAgIHNlbGYuaW5pdGlhbGl6ZWQgPSBUcnVlCisKKyAgICAjIC0tIFdvcmtlciBtZXRob2RzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgZGVmIG9iamVjdF9maWxlbmFtZXMoc2VsZiwgc291cmNlX2ZpbGVuYW1lcywgc3RyaXBfZGlyPUZhbHNlLCBvdXRwdXRfZGlyPScnKToKKyAgICAgICAgIyBDb3BpZWQgZnJvbSBjY29tcGlsZXIucHksIGV4dGVuZGVkIHRvIHJldHVybiAucmVzIGFzICdvYmplY3QnLWZpbGUKKyAgICAgICAgIyBmb3IgLnJjIGlucHV0IGZpbGUKKyAgICAgICAgaWYgb3V0cHV0X2RpciBpcyBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2RpciA9ICcnCisgICAgICAgIG9ial9uYW1lcyA9IFtdCisgICAgICAgIGZvciBzcmNfbmFtZSBpbiBzb3VyY2VfZmlsZW5hbWVzOgorICAgICAgICAgICAgYmFzZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChzcmNfbmFtZSkKKyAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLnNwbGl0ZHJpdmUoYmFzZSlbMV0gICMgQ2hvcCBvZmYgdGhlIGRyaXZlCisgICAgICAgICAgICBiYXNlID0gYmFzZVtvcy5wYXRoLmlzYWJzKGJhc2UpOl0gICMgSWYgYWJzLCBjaG9wIG9mZiBsZWFkaW5nIC8KKyAgICAgICAgICAgIGlmIGV4dCBub3QgaW4gc2VsZi5zcmNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICAjIEJldHRlciB0byByYWlzZSBhbiBleGNlcHRpb24gaW5zdGVhZCBvZiBzaWxlbnRseSBjb250aW51aW5nCisgICAgICAgICAgICAgICAgIyBhbmQgbGF0ZXIgY29tcGxhaW4gYWJvdXQgc291cmNlcyBhbmQgdGFyZ2V0cyBoYXZpbmcKKyAgICAgICAgICAgICAgICAjIGRpZmZlcmVudCBsZW5ndGhzCisgICAgICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKCJEb24ndCBrbm93IGhvdyB0byBjb21waWxlICVzIiAlIHNyY19uYW1lKQorICAgICAgICAgICAgaWYgc3RyaXBfZGlyOgorICAgICAgICAgICAgICAgIGJhc2UgPSBvcy5wYXRoLmJhc2VuYW1lKGJhc2UpCisgICAgICAgICAgICBpZiBleHQgaW4gc2VsZi5fcmNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBzZWxmLnJlc19leHRlbnNpb24pKQorICAgICAgICAgICAgZWxpZiBleHQgaW4gc2VsZi5fbWNfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBzZWxmLnJlc19leHRlbnNpb24pKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBvYmpfbmFtZXMuYXBwZW5kKG9zLnBhdGguam9pbihvdXRwdXRfZGlyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2UgKyBzZWxmLm9ial9leHRlbnNpb24pKQorICAgICAgICByZXR1cm4gb2JqX25hbWVzCisKKyAgICBkZWYgY29tcGlsZShzZWxmLCBzb3VyY2VzLAorICAgICAgICAgICAgICAgIG91dHB1dF9kaXI9Tm9uZSwgbWFjcm9zPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLCBkZWJ1Zz1GYWxzZSwKKyAgICAgICAgICAgICAgICBleHRyYV9wcmVhcmdzPU5vbmUsIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGRlcGVuZHM9Tm9uZSk6CisKKyAgICAgICAgaWYgbm90IHNlbGYuaW5pdGlhbGl6ZWQ6CisgICAgICAgICAgICBzZWxmLmluaXRpYWxpemUoKQorICAgICAgICBtYWNyb3MsIG9iamVjdHMsIGV4dHJhX3Bvc3RhcmdzLCBwcF9vcHRzLCBidWlsZCA9IFwKKyAgICAgICAgICAgICAgICBzZWxmLl9zZXR1cF9jb21waWxlKG91dHB1dF9kaXIsIG1hY3JvcywgaW5jbHVkZV9kaXJzLCBzb3VyY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwZW5kcywgZXh0cmFfcG9zdGFyZ3MpCisKKyAgICAgICAgY29tcGlsZV9vcHRzID0gZXh0cmFfcHJlYXJncyBvciBbXQorICAgICAgICBjb21waWxlX29wdHMuYXBwZW5kKCcvYycpCisgICAgICAgIGlmIGRlYnVnOgorICAgICAgICAgICAgY29tcGlsZV9vcHRzLmV4dGVuZChzZWxmLmNvbXBpbGVfb3B0aW9uc19kZWJ1ZykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGNvbXBpbGVfb3B0cy5leHRlbmQoc2VsZi5jb21waWxlX29wdGlvbnMpCisKKyAgICAgICAgZm9yIG9iaiBpbiBvYmplY3RzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNyYywgZXh0ID0gYnVpbGRbb2JqXQorICAgICAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgICAgICAjIHBhc3MgdGhlIGZ1bGwgcGF0aG5hbWUgdG8gTVNWQyBpbiBkZWJ1ZyBtb2RlLAorICAgICAgICAgICAgICAgICMgdGhpcyBhbGxvd3MgdGhlIGRlYnVnZ2VyIHRvIGZpbmQgdGhlIHNvdXJjZSBmaWxlCisgICAgICAgICAgICAgICAgIyB3aXRob3V0IGFza2luZyB0aGUgdXNlciB0byBicm93c2UgZm9yIGl0CisgICAgICAgICAgICAgICAgc3JjID0gb3MucGF0aC5hYnNwYXRoKHNyYykKKworICAgICAgICAgICAgaWYgZXh0IGluIHNlbGYuX2NfZXh0ZW5zaW9uczoKKyAgICAgICAgICAgICAgICBpbnB1dF9vcHQgPSAiL1RjIiArIHNyYworICAgICAgICAgICAgZWxpZiBleHQgaW4gc2VsZi5fY3BwX2V4dGVuc2lvbnM6CisgICAgICAgICAgICAgICAgaW5wdXRfb3B0ID0gIi9UcCIgKyBzcmMKKyAgICAgICAgICAgIGVsaWYgZXh0IGluIHNlbGYuX3JjX2V4dGVuc2lvbnM6CisgICAgICAgICAgICAgICAgIyBjb21waWxlIC5SQyB0byAuUkVTIGZpbGUKKyAgICAgICAgICAgICAgICBpbnB1dF9vcHQgPSBzcmMKKyAgICAgICAgICAgICAgICBvdXRwdXRfb3B0ID0gIi9mbyIgKyBvYmoKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYucmNdICsgcHBfb3B0cyArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW291dHB1dF9vcHRdICsgW2lucHV0X29wdF0pCisgICAgICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGVsaWYgZXh0IGluIHNlbGYuX21jX2V4dGVuc2lvbnM6CisKKyAgICAgICAgICAgICAgICAjIENvbXBpbGUgLk1DIHRvIC5SQyBmaWxlIHRvIC5SRVMgZmlsZS4KKyAgICAgICAgICAgICAgICAjICAgKiAnLWggZGlyJyBzcGVjaWZpZXMgdGhlIGRpcmVjdG9yeSBmb3IgdGhlCisgICAgICAgICAgICAgICAgIyAgICAgZ2VuZXJhdGVkIGluY2x1ZGUgZmlsZQorICAgICAgICAgICAgICAgICMgICAqICctciBkaXInIHNwZWNpZmllcyB0aGUgdGFyZ2V0IGRpcmVjdG9yeSBvZiB0aGUKKyAgICAgICAgICAgICAgICAjICAgICBnZW5lcmF0ZWQgUkMgZmlsZSBhbmQgdGhlIGJpbmFyeSBtZXNzYWdlIHJlc291cmNlCisgICAgICAgICAgICAgICAgIyAgICAgaXQgaW5jbHVkZXMKKyAgICAgICAgICAgICAgICAjCisgICAgICAgICAgICAgICAgIyBGb3Igbm93IChzaW5jZSB0aGVyZSBhcmUgbm8gb3B0aW9ucyB0byBjaGFuZ2UgdGhpcyksCisgICAgICAgICAgICAgICAgIyB3ZSB1c2UgdGhlIHNvdXJjZS1kaXJlY3RvcnkgZm9yIHRoZSBpbmNsdWRlIGZpbGUgYW5kCisgICAgICAgICAgICAgICAgIyB0aGUgYnVpbGQgZGlyZWN0b3J5IGZvciB0aGUgUkMgZmlsZSBhbmQgbWVzc2FnZQorICAgICAgICAgICAgICAgICMgcmVzb3VyY2VzLiBUaGlzIHdvcmtzIGF0IGxlYXN0IGZvciB3aW4zMmFsbC4KKworICAgICAgICAgICAgICAgIGhfZGlyID0gb3MucGF0aC5kaXJuYW1lKHNyYykKKyAgICAgICAgICAgICAgICByY19kaXIgPSBvcy5wYXRoLmRpcm5hbWUob2JqKQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgIyBmaXJzdCBjb21waWxlIC5NQyB0byAuUkMgYW5kIC5IIGZpbGUKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5tY10gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsnLWgnLCBoX2RpciwgJy1yJywgcmNfZGlyXSArIFtzcmNdKQorICAgICAgICAgICAgICAgICAgICBiYXNlLCBfID0gb3MucGF0aC5zcGxpdGV4dChvcy5wYXRoLmJhc2VuYW1lKHNyYykpCisgICAgICAgICAgICAgICAgICAgIHJjX2ZpbGUgPSBvcy5wYXRoLmpvaW4ocmNfZGlyLCBiYXNlICsgJy5yYycpCisgICAgICAgICAgICAgICAgICAgICMgdGhlbiBjb21waWxlIC5SQyB0byAuUkVTIGZpbGUKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5yY10gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbIi9mbyIgKyBvYmpdICsgW3JjX2ZpbGVdKQorCisgICAgICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBob3cgdG8gaGFuZGxlIHRoaXMgZmlsZT8KKyAgICAgICAgICAgICAgICByYWlzZSBDb21waWxlRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICJEb24ndCBrbm93IGhvdyB0byBjb21waWxlICVzIHRvICVzIiAlCisgICAgICAgICAgICAgICAgICAgIChzcmMsIG9iaikpCisKKyAgICAgICAgICAgIG91dHB1dF9vcHQgPSAiL0ZvIiArIG9iagorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuc3Bhd24oW3NlbGYuY2NdICsgY29tcGlsZV9vcHRzICsgcHBfb3B0cyArCisgICAgICAgICAgICAgICAgICAgICAgICAgICBbaW5wdXRfb3B0LCBvdXRwdXRfb3B0XSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYV9wb3N0YXJncykKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIENvbXBpbGVFcnJvcihtc2cpCisKKyAgICAgICAgcmV0dXJuIG9iamVjdHMKKworICAgIGRlZiBjcmVhdGVfc3RhdGljX2xpYihzZWxmLCBvYmplY3RzLCBvdXRwdXRfbGlibmFtZSwgb3V0cHV0X2Rpcj1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Zz1GYWxzZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisgICAgICAgIGlmIG5vdCBzZWxmLmluaXRpYWxpemVkOgorICAgICAgICAgICAgc2VsZi5pbml0aWFsaXplKCkKKyAgICAgICAgb2JqZWN0cywgb3V0cHV0X2RpciA9IHNlbGYuX2ZpeF9vYmplY3RfYXJncyhvYmplY3RzLCBvdXRwdXRfZGlyKQorICAgICAgICBvdXRwdXRfZmlsZW5hbWUgPSBcCisgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZmlsZW5hbWUob3V0cHV0X2xpYm5hbWUsIG91dHB1dF9kaXI9b3V0cHV0X2RpcikKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKyAgICAgICAgICAgIGxpYl9hcmdzID0gb2JqZWN0cyArIFsnL09VVDonICsgb3V0cHV0X2ZpbGVuYW1lXQorICAgICAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICAgICAgcGFzcyAgICAgICAgICAgICAgICAgICAgIyBYWFggd2hhdCBnb2VzIGhlcmU/CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5saWJdICsgbGliX2FyZ3MpCisgICAgICAgICAgICBleGNlcHQgUGFja2FnaW5nRXhlY0Vycm9yIGFzIG1zZzoKKyAgICAgICAgICAgICAgICByYWlzZSBMaWJFcnJvcihtc2cpCisKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1Zygic2tpcHBpbmcgJXMgKHVwLXRvLWRhdGUpIiwgb3V0cHV0X2ZpbGVuYW1lKQorCisgICAgZGVmIGxpbmsoc2VsZiwgdGFyZ2V0X2Rlc2MsIG9iamVjdHMsIG91dHB1dF9maWxlbmFtZSwgb3V0cHV0X2Rpcj1Ob25lLAorICAgICAgICAgICAgIGxpYnJhcmllcz1Ob25lLCBsaWJyYXJ5X2RpcnM9Tm9uZSwgcnVudGltZV9saWJyYXJ5X2RpcnM9Tm9uZSwKKyAgICAgICAgICAgICBleHBvcnRfc3ltYm9scz1Ob25lLCBkZWJ1Zz1GYWxzZSwgZXh0cmFfcHJlYXJncz1Ob25lLAorICAgICAgICAgICAgIGV4dHJhX3Bvc3RhcmdzPU5vbmUsIGJ1aWxkX3RlbXA9Tm9uZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisKKyAgICAgICAgaWYgbm90IHNlbGYuaW5pdGlhbGl6ZWQ6CisgICAgICAgICAgICBzZWxmLmluaXRpYWxpemUoKQorICAgICAgICBvYmplY3RzLCBvdXRwdXRfZGlyID0gc2VsZi5fZml4X29iamVjdF9hcmdzKG9iamVjdHMsIG91dHB1dF9kaXIpCisgICAgICAgIGxpYnJhcmllcywgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycyA9IFwKKyAgICAgICAgICAgIHNlbGYuX2ZpeF9saWJfYXJncyhsaWJyYXJpZXMsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMpCisKKyAgICAgICAgaWYgcnVudGltZV9saWJyYXJ5X2RpcnM6CisgICAgICAgICAgICBzZWxmLndhcm4oImRvbid0IGtub3cgd2hhdCB0byBkbyB3aXRoICdydW50aW1lX2xpYnJhcnlfZGlycyc6ICVzIgorICAgICAgICAgICAgICAgICAgICAgICUgKHJ1bnRpbWVfbGlicmFyeV9kaXJzLCkpCisKKyAgICAgICAgbGliX29wdHMgPSBnZW5fbGliX29wdGlvbnMoc2VsZiwgbGlicmFyeV9kaXJzLCBydW50aW1lX2xpYnJhcnlfZGlycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzKQorICAgICAgICBpZiBvdXRwdXRfZGlyIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2ZpbGVuYW1lID0gb3MucGF0aC5qb2luKG91dHB1dF9kaXIsIG91dHB1dF9maWxlbmFtZSkKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKworICAgICAgICAgICAgaWYgdGFyZ2V0X2Rlc2MgPT0gQ0NvbXBpbGVyLkVYRUNVVEFCTEU6CisgICAgICAgICAgICAgICAgaWYgZGVidWc6CisgICAgICAgICAgICAgICAgICAgIGxkZmxhZ3MgPSBzZWxmLmxkZmxhZ3Nfc2hhcmVkX2RlYnVnWzE6XQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGxkZmxhZ3MgPSBzZWxmLmxkZmxhZ3Nfc2hhcmVkWzE6XQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgICAgICAgICAgbGRmbGFncyA9IHNlbGYubGRmbGFnc19zaGFyZWRfZGVidWcKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsZGZsYWdzID0gc2VsZi5sZGZsYWdzX3NoYXJlZAorCisgICAgICAgICAgICBleHBvcnRfb3B0cyA9IFtdCisgICAgICAgICAgICBmb3Igc3ltIGluIChleHBvcnRfc3ltYm9scyBvciBbXSk6CisgICAgICAgICAgICAgICAgZXhwb3J0X29wdHMuYXBwZW5kKCIvRVhQT1JUOiIgKyBzeW0pCisKKyAgICAgICAgICAgIGxkX2FyZ3MgPSAobGRmbGFncyArIGxpYl9vcHRzICsgZXhwb3J0X29wdHMgKworICAgICAgICAgICAgICAgICAgICAgICBvYmplY3RzICsgWycvT1VUOicgKyBvdXRwdXRfZmlsZW5hbWVdKQorCisgICAgICAgICAgICAjIFRoZSBNU1ZDIGxpbmtlciBnZW5lcmF0ZXMgLmxpYiBhbmQgLmV4cCBmaWxlcywgd2hpY2ggY2Fubm90IGJlCisgICAgICAgICAgICAjIHN1cHByZXNzZWQgYnkgYW55IGxpbmtlciBzd2l0Y2hlcy4gVGhlIC5saWIgZmlsZXMgbWF5IGV2ZW4gYmUKKyAgICAgICAgICAgICMgbmVlZGVkISBNYWtlIHN1cmUgdGhleSBhcmUgZ2VuZXJhdGVkIGluIHRoZSB0ZW1wb3JhcnkgYnVpbGQKKyAgICAgICAgICAgICMgZGlyZWN0b3J5LiBTaW5jZSB0aGV5IGhhdmUgZGlmZmVyZW50IG5hbWVzIGZvciBkZWJ1ZyBhbmQgcmVsZWFzZQorICAgICAgICAgICAgIyBidWlsZHMsIHRoZXkgY2FuIGdvIGludG8gdGhlIHNhbWUgZGlyZWN0b3J5LgorICAgICAgICAgICAgaWYgZXhwb3J0X3N5bWJvbHMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgZGxsX25hbWUsIGRsbF9leHQgPSBvcy5wYXRoLnNwbGl0ZXh0KAorICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmJhc2VuYW1lKG91dHB1dF9maWxlbmFtZSkpCisgICAgICAgICAgICAgICAgaW1wbGliX2ZpbGUgPSBvcy5wYXRoLmpvaW4oCisgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguZGlybmFtZShvYmplY3RzWzBdKSwKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5saWJyYXJ5X2ZpbGVuYW1lKGRsbF9uYW1lKSkKKyAgICAgICAgICAgICAgICBsZF9hcmdzLmFwcGVuZCgnL0lNUExJQjonICsgaW1wbGliX2ZpbGUpCisKKyAgICAgICAgICAgIGlmIGV4dHJhX3ByZWFyZ3M6CisgICAgICAgICAgICAgICAgbGRfYXJnc1s6MF0gPSBleHRyYV9wcmVhcmdzCisgICAgICAgICAgICBpZiBleHRyYV9wb3N0YXJnczoKKyAgICAgICAgICAgICAgICBsZF9hcmdzLmV4dGVuZChleHRyYV9wb3N0YXJncykKKworICAgICAgICAgICAgc2VsZi5ta3BhdGgob3MucGF0aC5kaXJuYW1lKG91dHB1dF9maWxlbmFtZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihbc2VsZi5saW5rZXJdICsgbGRfYXJncykKKyAgICAgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIHJhaXNlIExpbmtFcnJvcihtc2cpCisKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1Zygic2tpcHBpbmcgJXMgKHVwLXRvLWRhdGUpIiwgb3V0cHV0X2ZpbGVuYW1lKQorCisgICAgIyAtLSBNaXNjZWxsYW5lb3VzIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIFRoZXNlIGFyZSBhbGwgdXNlZCBieSB0aGUgJ2dlbl9saWJfb3B0aW9ucygpIGZ1bmN0aW9uLCBpbgorICAgICMgY2NvbXBpbGVyLnB5LgorCisgICAgZGVmIGxpYnJhcnlfZGlyX29wdGlvbihzZWxmLCBkaXIpOgorICAgICAgICByZXR1cm4gIi9MSUJQQVRIOiIgKyBkaXIKKworICAgIGRlZiBydW50aW1lX2xpYnJhcnlfZGlyX29wdGlvbihzZWxmLCBkaXIpOgorICAgICAgICByYWlzZSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yKCJkb24ndCBrbm93IGhvdyB0byBzZXQgcnVudGltZSBsaWJyYXJ5IHNlYXJjaCBwYXRoIGZvciBNU1ZDKysiKQorCisgICAgZGVmIGxpYnJhcnlfb3B0aW9uKHNlbGYsIGxpYik6CisgICAgICAgIHJldHVybiBzZWxmLmxpYnJhcnlfZmlsZW5hbWUobGliKQorCisgICAgZGVmIGZpbmRfbGlicmFyeV9maWxlKHNlbGYsIGRpcnMsIGxpYiwgZGVidWc9RmFsc2UpOgorICAgICAgICAjIFByZWZlciBhIGRlYnVnZ2luZyBsaWJyYXJ5IGlmIGZvdW5kIChhbmQgcmVxdWVzdGVkKSwgYnV0IGRlYWwKKyAgICAgICAgIyB3aXRoIGl0IGlmIHdlIGRvbid0IGhhdmUgb25lLgorICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgIHRyeV9uYW1lcyA9IFtsaWIgKyAiX2QiLCBsaWJdCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB0cnlfbmFtZXMgPSBbbGliXQorICAgICAgICBmb3IgZGlyIGluIGRpcnM6CisgICAgICAgICAgICBmb3IgbmFtZSBpbiB0cnlfbmFtZXM6CisgICAgICAgICAgICAgICAgbGliZmlsZSA9IG9zLnBhdGguam9pbihkaXIsIHNlbGYubGlicmFyeV9maWxlbmFtZShuYW1lKSkKKyAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhsaWJmaWxlKToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxpYmZpbGUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgICMgT29wcywgZGlkbid0IGZpbmQgaXQgaW4gKmFueSogb2YgJ2RpcnMnCisgICAgICAgICAgICByZXR1cm4gTm9uZQorCisgICAgIyBIZWxwZXIgbWV0aG9kcyBmb3IgdXNpbmcgdGhlIE1TVkMgcmVnaXN0cnkgc2V0dGluZ3MKKworICAgIGRlZiBmaW5kX2V4ZShzZWxmLCBleGUpOgorICAgICAgICAiIiJSZXR1cm4gcGF0aCB0byBhbiBNU1ZDIGV4ZWN1dGFibGUgcHJvZ3JhbS4KKworICAgICAgICBUcmllcyB0byBmaW5kIHRoZSBwcm9ncmFtIGluIHNldmVyYWwgcGxhY2VzOiBmaXJzdCwgb25lIG9mIHRoZQorICAgICAgICBNU1ZDIHByb2dyYW0gc2VhcmNoIHBhdGhzIGZyb20gdGhlIHJlZ2lzdHJ5OyBuZXh0LCB0aGUgZGlyZWN0b3JpZXMKKyAgICAgICAgaW4gdGhlIFBBVEggZW52aXJvbm1lbnQgdmFyaWFibGUuICBJZiBhbnkgb2YgdGhvc2Ugd29yaywgcmV0dXJuIGFuCisgICAgICAgIGFic29sdXRlIHBhdGggdGhhdCBpcyBrbm93biB0byBleGlzdC4gIElmIG5vbmUgb2YgdGhlbSB3b3JrLCBqdXN0CisgICAgICAgIHJldHVybiB0aGUgb3JpZ2luYWwgcHJvZ3JhbSBuYW1lLCAnZXhlJy4KKyAgICAgICAgIiIiCisKKyAgICAgICAgZm9yIHAgaW4gc2VsZi5fX3BhdGhzOgorICAgICAgICAgICAgZm4gPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5hYnNwYXRoKHApLCBleGUpCisgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShmbik6CisgICAgICAgICAgICAgICAgcmV0dXJuIGZuCisKKyAgICAgICAgIyBkaWRuJ3QgZmluZCBpdDsgdHJ5IGV4aXN0aW5nIHBhdGgKKyAgICAgICAgZm9yIHAgaW4gb3MuZW52aXJvblsnUGF0aCddLnNwbGl0KCc7Jyk6CisgICAgICAgICAgICBmbiA9IG9zLnBhdGguam9pbihvcy5wYXRoLmFic3BhdGgocCksIGV4ZSkKKyAgICAgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKGZuKToKKyAgICAgICAgICAgICAgICByZXR1cm4gZm4KKworICAgICAgICByZXR1cm4gZXhlCisKKyAgICBkZWYgZ2V0X21zdmNfcGF0aHMoc2VsZiwgcGF0aCwgcGxhdGZvcm09J3g4NicpOgorICAgICAgICAiIiJHZXQgYSBsaXN0IG9mIGRldnN0dWRpbyBkaXJlY3RvcmllcyAoaW5jbHVkZSwgbGliIG9yIHBhdGgpLgorCisgICAgICAgIFJldHVybiBhIGxpc3Qgb2Ygc3RyaW5ncy4gIFRoZSBsaXN0IHdpbGwgYmUgZW1wdHkgaWYgdW5hYmxlIHRvCisgICAgICAgIGFjY2VzcyB0aGUgcmVnaXN0cnkgb3IgYXBwcm9wcmlhdGUgcmVnaXN0cnkga2V5cyBub3QgZm91bmQuCisgICAgICAgICIiIgorCisgICAgICAgIGlmIG5vdCBfY2FuX3JlYWRfcmVnOgorICAgICAgICAgICAgcmV0dXJuIFtdCisKKyAgICAgICAgcGF0aCA9IHBhdGggKyAiIGRpcnMiCisgICAgICAgIGlmIHNlbGYuX192ZXJzaW9uID49IDc6CisgICAgICAgICAgICBrZXkgPSAociIlc1wlMC4xZlxWQ1xWQ19PQkpFQ1RTX1BMQVRGT1JNX0lORk9cV2luMzJcRGlyZWN0b3JpZXMiCisgICAgICAgICAgICAgICAgICAgJSAoc2VsZi5fX3Jvb3QsIHNlbGYuX192ZXJzaW9uKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGtleSA9IChyIiVzXDYuMFxCdWlsZCBTeXN0ZW1cQ29tcG9uZW50c1xQbGF0Zm9ybXMiCisgICAgICAgICAgICAgICAgICAgciJcV2luMzIgKCVzKVxEaXJlY3RvcmllcyIgJSAoc2VsZi5fX3Jvb3QsIHBsYXRmb3JtKSkKKworICAgICAgICBmb3IgYmFzZSBpbiBIS0VZUzoKKyAgICAgICAgICAgIGQgPSByZWFkX3ZhbHVlcyhiYXNlLCBrZXkpCisgICAgICAgICAgICBpZiBkOgorICAgICAgICAgICAgICAgIGlmIHNlbGYuX192ZXJzaW9uID49IDc6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBzZWxmLl9fbWFjcm9zLnN1YihkW3BhdGhdKS5zcGxpdCgiOyIpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGRbcGF0aF0uc3BsaXQoIjsiKQorICAgICAgICAjIE1TVkMgNiBzZWVtcyB0byBjcmVhdGUgdGhlIHJlZ2lzdHJ5IGVudHJpZXMgd2UgbmVlZCBvbmx5IHdoZW4KKyAgICAgICAgIyB0aGUgR1VJIGlzIHJ1bi4KKyAgICAgICAgaWYgc2VsZi5fX3ZlcnNpb24gPT0gNjoKKyAgICAgICAgICAgIGZvciBiYXNlIGluIEhLRVlTOgorICAgICAgICAgICAgICAgIGlmIHJlYWRfdmFsdWVzKGJhc2UsIHIiJXNcNi4wIiAlIHNlbGYuX19yb290KSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi53YXJuKCJJdCBzZWVtcyB5b3UgaGF2ZSBWaXN1YWwgU3R1ZGlvIDYgaW5zdGFsbGVkLCAiCisgICAgICAgICAgICAgICAgICAgICAgICAiYnV0IHRoZSBleHBlY3RlZCByZWdpc3RyeSBzZXR0aW5ncyBhcmUgbm90IHByZXNlbnQuXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAiWW91IG11c3QgYXQgbGVhc3QgcnVuIHRoZSBWaXN1YWwgU3R1ZGlvIEdVSSBvbmNlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJzbyB0aGF0IHRoZXNlIGVudHJpZXMgYXJlIGNyZWF0ZWQuIikKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgcmV0dXJuIFtdCisKKyAgICBkZWYgc2V0X3BhdGhfZW52X3ZhcihzZWxmLCBuYW1lKToKKyAgICAgICAgIiIiU2V0IGVudmlyb25tZW50IHZhcmlhYmxlICduYW1lJyB0byBhbiBNU1ZDIHBhdGggdHlwZSB2YWx1ZS4KKworICAgICAgICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gYSBTRVQgY29tbWFuZCBwcmlvciB0byBleGVjdXRpb24gb2Ygc3Bhd25lZAorICAgICAgICBjb21tYW5kcy4KKyAgICAgICAgIiIiCisKKyAgICAgICAgaWYgbmFtZSA9PSAibGliIjoKKyAgICAgICAgICAgIHAgPSBzZWxmLmdldF9tc3ZjX3BhdGhzKCJsaWJyYXJ5IikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHAgPSBzZWxmLmdldF9tc3ZjX3BhdGhzKG5hbWUpCisgICAgICAgIGlmIHA6CisgICAgICAgICAgICBvcy5lbnZpcm9uW25hbWVdID0gJzsnLmpvaW4ocCkKKworCitpZiBnZXRfYnVpbGRfdmVyc2lvbigpID49IDguMDoKKyAgICBsb2dnZXIuZGVidWcoImltcG9ydGluZyBuZXcgY29tcGlsZXIgZnJvbSBkaXN0dXRpbHMubXN2Yzljb21waWxlciIpCisgICAgT2xkTVNWQ0NvbXBpbGVyID0gTVNWQ0NvbXBpbGVyCisgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIubXN2Yzljb21waWxlciBpbXBvcnQgTVNWQ0NvbXBpbGVyCisgICAgIyBnZXRfYnVpbGRfYXJjaGl0ZWN0dXJlIG5vdCByZWFsbHkgcmVsZXZhbnQgbm93IHdlIHN1cHBvcnQgY3Jvc3MtY29tcGlsZQorICAgIGZyb20gcGFja2FnaW5nLmNvbXBpbGVyLm1zdmM5Y29tcGlsZXIgaW1wb3J0IE1hY3JvRXhwYW5kZXIKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvdW5peGNjb21waWxlci5weSBiL0xpYi9wYWNrYWdpbmcvY29tcGlsZXIvdW5peGNjb21waWxlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNDU4ZmFhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb21waWxlci91bml4Y2NvbXBpbGVyLnB5CkBAIC0wLDAgKzEsMzM5IEBACisiIiJDQ29tcGlsZXIgaW1wbGVtZW50YXRpb24gZm9yIFVuaXggY29tcGlsZXJzLgorCitUaGlzIG1vZHVsZSBjb250YWlucyB0aGUgVW5peENDb21waWxlciBjbGFzcywgYSBzdWJjbGFzcyBvZiBDQ29tcGlsZXIKK3RoYXQgaGFuZGxlcyB0aGUgInR5cGljYWwiIFVuaXgtc3R5bGUgY29tbWFuZC1saW5lIEMgY29tcGlsZXI6CisgICogbWFjcm9zIGRlZmluZWQgd2l0aCAtRG5hbWVbPXZhbHVlXQorICAqIG1hY3JvcyB1bmRlZmluZWQgd2l0aCAtVW5hbWUKKyAgKiBpbmNsdWRlIHNlYXJjaCBkaXJlY3RvcmllcyBzcGVjaWZpZWQgd2l0aCAtSWRpcgorICAqIGxpYnJhcmllcyBzcGVjaWZpZWQgd2l0aCAtbGxsaWIKKyAgKiBsaWJyYXJ5IHNlYXJjaCBkaXJlY3RvcmllcyBzcGVjaWZpZWQgd2l0aCAtTGRpcgorICAqIGNvbXBpbGUgaGFuZGxlZCBieSAnY2MnIChvciBzaW1pbGFyKSBleGVjdXRhYmxlIHdpdGggLWMgb3B0aW9uOgorICAgIGNvbXBpbGVzIC5jIHRvIC5vCisgICogbGluayBzdGF0aWMgbGlicmFyeSBoYW5kbGVkIGJ5ICdhcicgY29tbWFuZCAocG9zc2libHkgd2l0aCAncmFubGliJykKKyAgKiBsaW5rIHNoYXJlZCBsaWJyYXJ5IGhhbmRsZWQgYnkgJ2NjIC1zaGFyZWQnCisiIiIKKworaW1wb3J0IG9zLCBzeXMKKworZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgbmV3ZXIKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLmNjb21waWxlciBpbXBvcnQgQ0NvbXBpbGVyCitmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgZ2VuX3ByZXByb2Nlc3Nfb3B0aW9ucywgZ2VuX2xpYl9vcHRpb25zCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChQYWNrYWdpbmdFeGVjRXJyb3IsIENvbXBpbGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMaWJFcnJvciwgTGlua0Vycm9yKQorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgoraW1wb3J0IHN5c2NvbmZpZworCisKKyMgWFhYIFRoaW5ncyBub3QgY3VycmVudGx5IGhhbmRsZWQ6CisjICAgKiBvcHRpbWl6YXRpb24vZGVidWcvd2FybmluZyBmbGFnczsgd2UganVzdCB1c2Ugd2hhdGV2ZXIncyBpbiBQeXRob24ncworIyAgICAgTWFrZWZpbGUgYW5kIGxpdmUgd2l0aCBpdC4gIElzIHRoaXMgYWRlcXVhdGU/ICBJZiBub3QsIHdlIG1pZ2h0CisjICAgICBoYXZlIHRvIGhhdmUgYSBidW5jaCBvZiBzdWJjbGFzc2VzIEdOVUNDb21waWxlciwgU0dJQ0NvbXBpbGVyLAorIyAgICAgU3VuQ0NvbXBpbGVyLCBhbmQgSSBzdXNwZWN0IGRvd24gdGhhdCByb2FkIGxpZXMgbWFkbmVzcy4KKyMgICAqIGV2ZW4gaWYgd2UgZG9uJ3Qga25vdyBhIHdhcm5pbmcgZmxhZyBmcm9tIGFuIG9wdGltaXphdGlvbiBmbGFnLAorIyAgICAgd2UgbmVlZCBzb21lIHdheSBmb3Igb3V0c2lkZXJzIHRvIGZlZWQgcHJlcHJvY2Vzc29yL2NvbXBpbGVyL2xpbmtlcgorIyAgICAgZmxhZ3MgaW4gdG8gdXMgLS0gZWcuIGEgc3lzYWRtaW4gbWlnaHQgd2FudCB0byBtYW5kYXRlIGNlcnRhaW4gZmxhZ3MKKyMgICAgIHZpYSBhIHNpdGUgY29uZmlnIGZpbGUsIG9yIGEgdXNlciBtaWdodCB3YW50IHRvIHNldCBzb21ldGhpbmcgZm9yCisjICAgICBjb21waWxpbmcgdGhpcyBtb2R1bGUgZGlzdHJpYnV0aW9uIG9ubHkgdmlhIHRoZSBweXNldHVwIGNvbW1hbmQKKyMgICAgIGxpbmUsIHdoYXRldmVyLiAgQXMgbG9uZyBhcyB0aGVzZSBvcHRpb25zIGNvbWUgZnJvbSBzb21ldGhpbmcgb24gdGhlCisjICAgICBjdXJyZW50IHN5c3RlbSwgdGhleSBjYW4gYmUgYXMgc3lzdGVtLWRlcGVuZGVudCBhcyB0aGV5IGxpa2UsIGFuZCB3ZQorIyAgICAgc2hvdWxkIGp1c3QgaGFwcGlseSBzdHVmZiB0aGVtIGludG8gdGhlIHByZXByb2Nlc3Nvci9jb21waWxlci9saW5rZXIKKyMgICAgIG9wdGlvbnMgYW5kIGNhcnJ5IG9uLgorCitkZWYgX2Rhcndpbl9jb21waWxlcl9maXh1cChjb21waWxlcl9zbywgY2NfYXJncyk6CisgICAgIiIiCisgICAgVGhpcyBmdW5jdGlvbiB3aWxsIHN0cmlwICctaXN5c3Jvb3QgUEFUSCcgYW5kICctYXJjaCBBUkNIJyBmcm9tIHRoZQorICAgIGNvbXBpbGUgZmxhZ3MgaWYgdGhlIHVzZXIgaGFzIHNwZWNpZmllZCBvbmUgdGhlbSBpbiBleHRyYV9jb21waWxlX2ZsYWdzLgorCisgICAgVGhpcyBpcyBuZWVkZWQgYmVjYXVzZSAnLWFyY2ggQVJDSCcgYWRkcyBhbm90aGVyIGFyY2hpdGVjdHVyZSB0byB0aGUKKyAgICBidWlsZCwgd2l0aG91dCBhIHdheSB0byByZW1vdmUgYW4gYXJjaGl0ZWN0dXJlLiBGdXJ0aGVybW9yZSBHQ0Mgd2lsbAorICAgIGJhcmYgaWYgbXVsdGlwbGUgJy1pc3lzcm9vdCcgYXJndW1lbnRzIGFyZSBwcmVzZW50LgorICAgICIiIgorICAgIHN0cmlwQXJjaCA9IHN0cmlwU3lzcm9vdCA9IEZhbHNlCisKKyAgICBjb21waWxlcl9zbyA9IGxpc3QoY29tcGlsZXJfc28pCisgICAga2VybmVsX3ZlcnNpb24gPSBvcy51bmFtZSgpWzJdICMgOC40LjMKKyAgICBtYWpvcl92ZXJzaW9uID0gaW50KGtlcm5lbF92ZXJzaW9uLnNwbGl0KCcuJylbMF0pCisKKyAgICBpZiBtYWpvcl92ZXJzaW9uIDwgODoKKyAgICAgICAgIyBPU1ggYmVmb3JlIDEwLjQuMCwgdGhlc2UgZG9uJ3Qgc3VwcG9ydCAtYXJjaCBhbmQgLWlzeXNyb290IGF0CisgICAgICAgICMgYWxsLgorICAgICAgICBzdHJpcEFyY2ggPSBzdHJpcFN5c3Jvb3QgPSBUcnVlCisgICAgZWxzZToKKyAgICAgICAgc3RyaXBBcmNoID0gJy1hcmNoJyBpbiBjY19hcmdzCisgICAgICAgIHN0cmlwU3lzcm9vdCA9ICctaXN5c3Jvb3QnIGluIGNjX2FyZ3MKKworICAgIGlmIHN0cmlwQXJjaCBvciAnQVJDSEZMQUdTJyBpbiBvcy5lbnZpcm9uOgorICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGluZGV4ID0gY29tcGlsZXJfc28uaW5kZXgoJy1hcmNoJykKKyAgICAgICAgICAgICAgICAjIFN0cmlwIHRoaXMgYXJndW1lbnQgYW5kIHRoZSBuZXh0IG9uZToKKyAgICAgICAgICAgICAgICBkZWwgY29tcGlsZXJfc29baW5kZXg6aW5kZXgrMl0KKyAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgIGJyZWFrCisKKyAgICBpZiAnQVJDSEZMQUdTJyBpbiBvcy5lbnZpcm9uIGFuZCBub3Qgc3RyaXBBcmNoOgorICAgICAgICAjIFVzZXIgc3BlY2lmaWVkIGRpZmZlcmVudCAtYXJjaCBmbGFncyBpbiB0aGUgZW52aXJvbiwKKyAgICAgICAgIyBzZWUgYWxzbyB0aGUgc3lzY29uZmlnCisgICAgICAgIGNvbXBpbGVyX3NvID0gY29tcGlsZXJfc28gKyBvcy5lbnZpcm9uWydBUkNIRkxBR1MnXS5zcGxpdCgpCisKKyAgICBpZiBzdHJpcFN5c3Jvb3Q6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGluZGV4ID0gY29tcGlsZXJfc28uaW5kZXgoJy1pc3lzcm9vdCcpCisgICAgICAgICAgICAjIFN0cmlwIHRoaXMgYXJndW1lbnQgYW5kIHRoZSBuZXh0IG9uZToKKyAgICAgICAgICAgIGRlbCBjb21waWxlcl9zb1tpbmRleDppbmRleCsyXQorICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKworICAgICMgQ2hlY2sgaWYgdGhlIFNESyB0aGF0IGlzIHVzZWQgZHVyaW5nIGNvbXBpbGF0aW9uIGFjdHVhbGx5IGV4aXN0cywKKyAgICAjIHRoZSB1bml2ZXJzYWwgYnVpbGQgcmVxdWlyZXMgdGhlIHVzYWdlIG9mIGEgdW5pdmVyc2FsIFNESyBhbmQgbm90IGFsbAorICAgICMgdXNlcnMgaGF2ZSB0aGF0IGluc3RhbGxlZCBieSBkZWZhdWx0LgorICAgIHN5c3Jvb3QgPSBOb25lCisgICAgaWYgJy1pc3lzcm9vdCcgaW4gY2NfYXJnczoKKyAgICAgICAgaWR4ID0gY2NfYXJncy5pbmRleCgnLWlzeXNyb290JykKKyAgICAgICAgc3lzcm9vdCA9IGNjX2FyZ3NbaWR4KzFdCisgICAgZWxpZiAnLWlzeXNyb290JyBpbiBjb21waWxlcl9zbzoKKyAgICAgICAgaWR4ID0gY29tcGlsZXJfc28uaW5kZXgoJy1pc3lzcm9vdCcpCisgICAgICAgIHN5c3Jvb3QgPSBjb21waWxlcl9zb1tpZHgrMV0KKworICAgIGlmIHN5c3Jvb3QgYW5kIG5vdCBvcy5wYXRoLmlzZGlyKHN5c3Jvb3QpOgorICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICJjb21waWxpbmcgd2l0aCBhbiBTREsgdGhhdCBkb2Vzbid0IHNlZW0gdG8gZXhpc3Q6ICVyO1xuIgorICAgICAgICAgICAgInBsZWFzZSBjaGVjayB5b3VyIFhjb2RlIGluc3RhbGxhdGlvbiIsIHN5c3Jvb3QpCisKKyAgICByZXR1cm4gY29tcGlsZXJfc28KKworY2xhc3MgVW5peENDb21waWxlcihDQ29tcGlsZXIpOgorCisgICAgbmFtZSA9ICd1bml4JworICAgIGRlc2NyaXB0aW9uID0gJ1N0YW5kYXJkIFVOSVgtc3R5bGUgY29tcGlsZXInCisKKyAgICAjIFRoZXNlIGFyZSB1c2VkIGJ5IENDb21waWxlciBpbiB0d28gcGxhY2VzOiB0aGUgY29uc3RydWN0b3Igc2V0cworICAgICMgaW5zdGFuY2UgYXR0cmlidXRlcyAncHJlcHJvY2Vzc29yJywgJ2NvbXBpbGVyJywgZXRjLiBmcm9tIHRoZW0sIGFuZAorICAgICMgJ3NldF9leGVjdXRhYmxlKCknIGFsbG93cyBhbnkgb2YgdGhlc2UgdG8gYmUgc2V0LiAgVGhlIGRlZmF1bHRzIGhlcmUKKyAgICAjIGFyZSBwcmV0dHkgZ2VuZXJpYzsgdGhleSB3aWxsIHByb2JhYmx5IGhhdmUgdG8gYmUgc2V0IGJ5IGFuIG91dHNpZGVyCisgICAgIyAoZWcuIHVzaW5nIGluZm9ybWF0aW9uIGRpc2NvdmVyZWQgYnkgdGhlIHN5c2NvbmZpZyBhYm91dCBidWlsZGluZworICAgICMgUHl0aG9uIGV4dGVuc2lvbnMpLgorICAgIGV4ZWN1dGFibGVzID0geydwcmVwcm9jZXNzb3InIDogTm9uZSwKKyAgICAgICAgICAgICAgICAgICAnY29tcGlsZXInICAgICA6IFsiY2MiXSwKKyAgICAgICAgICAgICAgICAgICAnY29tcGlsZXJfc28nICA6IFsiY2MiXSwKKyAgICAgICAgICAgICAgICAgICAnY29tcGlsZXJfY3h4JyA6IFsiY2MiXSwKKyAgICAgICAgICAgICAgICAgICAnbGlua2VyX3NvJyAgICA6IFsiY2MiLCAiLXNoYXJlZCJdLAorICAgICAgICAgICAgICAgICAgICdsaW5rZXJfZXhlJyAgIDogWyJjYyJdLAorICAgICAgICAgICAgICAgICAgICdhcmNoaXZlcicgICAgIDogWyJhciIsICItY3IiXSwKKyAgICAgICAgICAgICAgICAgICAncmFubGliJyAgICAgICA6IE5vbmUsCisgICAgICAgICAgICAgICAgICB9CisKKyAgICBpZiBzeXMucGxhdGZvcm1bOjZdID09ICJkYXJ3aW4iOgorICAgICAgICBleGVjdXRhYmxlc1sncmFubGliJ10gPSBbInJhbmxpYiJdCisKKyAgICAjIE5lZWRlZCBmb3IgdGhlIGZpbGVuYW1lIGdlbmVyYXRpb24gbWV0aG9kcyBwcm92aWRlZCBieSB0aGUgYmFzZQorICAgICMgY2xhc3MsIENDb21waWxlci4gIFhYWCB3aG9ldmVyIGluc3RhbnRpYXRlcy91c2VzIGEgcGFydGljdWxhcgorICAgICMgVW5peENDb21waWxlciBpbnN0YW5jZSBzaG91bGQgc2V0ICdzaGFyZWRfbGliX2V4dCcgLS0gd2Ugc2V0IGEKKyAgICAjIHJlYXNvbmFibGUgY29tbW9uIGRlZmF1bHQgaGVyZSwgYnV0IGl0J3Mgbm90IG5lY2Vzc2FyaWx5IHVzZWQgb24gYWxsCisgICAgIyBVbmljZXMhCisKKyAgICBzcmNfZXh0ZW5zaW9ucyA9IFsiLmMiLCIuQyIsIi5jYyIsIi5jeHgiLCIuY3BwIiwiLm0iXQorICAgIG9ial9leHRlbnNpb24gPSAiLm8iCisgICAgc3RhdGljX2xpYl9leHRlbnNpb24gPSAiLmEiCisgICAgc2hhcmVkX2xpYl9leHRlbnNpb24gPSAiLnNvIgorICAgIGR5bGliX2xpYl9leHRlbnNpb24gPSAiLmR5bGliIgorICAgIHN0YXRpY19saWJfZm9ybWF0ID0gc2hhcmVkX2xpYl9mb3JtYXQgPSBkeWxpYl9saWJfZm9ybWF0ID0gImxpYiVzJXMiCisgICAgaWYgc3lzLnBsYXRmb3JtID09ICJjeWd3aW4iOgorICAgICAgICBleGVfZXh0ZW5zaW9uID0gIi5leGUiCisKKyAgICBkZWYgcHJlcHJvY2VzcyhzZWxmLCBzb3VyY2UsCisgICAgICAgICAgICAgICAgICAgb3V0cHV0X2ZpbGU9Tm9uZSwgbWFjcm9zPU5vbmUsIGluY2x1ZGVfZGlycz1Ob25lLAorICAgICAgICAgICAgICAgICAgIGV4dHJhX3ByZWFyZ3M9Tm9uZSwgZXh0cmFfcG9zdGFyZ3M9Tm9uZSk6CisgICAgICAgIGlnbm9yZSwgbWFjcm9zLCBpbmNsdWRlX2RpcnMgPSBcCisgICAgICAgICAgICBzZWxmLl9maXhfY29tcGlsZV9hcmdzKE5vbmUsIG1hY3JvcywgaW5jbHVkZV9kaXJzKQorICAgICAgICBwcF9vcHRzID0gZ2VuX3ByZXByb2Nlc3Nfb3B0aW9ucyhtYWNyb3MsIGluY2x1ZGVfZGlycykKKyAgICAgICAgcHBfYXJncyA9IHNlbGYucHJlcHJvY2Vzc29yICsgcHBfb3B0cworICAgICAgICBpZiBvdXRwdXRfZmlsZToKKyAgICAgICAgICAgIHBwX2FyZ3MuZXh0ZW5kKCgnLW8nLCBvdXRwdXRfZmlsZSkpCisgICAgICAgIGlmIGV4dHJhX3ByZWFyZ3M6CisgICAgICAgICAgICBwcF9hcmdzWzowXSA9IGV4dHJhX3ByZWFyZ3MKKyAgICAgICAgaWYgZXh0cmFfcG9zdGFyZ3M6CisgICAgICAgICAgICBwcF9hcmdzLmV4dGVuZChleHRyYV9wb3N0YXJncykKKyAgICAgICAgcHBfYXJncy5hcHBlbmQoc291cmNlKQorCisgICAgICAgICMgV2UgbmVlZCB0byBwcmVwcm9jZXNzOiBlaXRoZXIgd2UncmUgYmVpbmcgZm9yY2VkIHRvLCBvciB3ZSdyZQorICAgICAgICAjIGdlbmVyYXRpbmcgb3V0cHV0IHRvIHN0ZG91dCwgb3IgdGhlcmUncyBhIHRhcmdldCBvdXRwdXQgZmlsZSBhbmQKKyAgICAgICAgIyB0aGUgc291cmNlIGZpbGUgaXMgbmV3ZXIgdGhhbiB0aGUgdGFyZ2V0IChvciB0aGUgdGFyZ2V0IGRvZXNuJ3QKKyAgICAgICAgIyBleGlzdCkuCisgICAgICAgIGlmIHNlbGYuZm9yY2Ugb3Igb3V0cHV0X2ZpbGUgaXMgTm9uZSBvciBuZXdlcihzb3VyY2UsIG91dHB1dF9maWxlKToKKyAgICAgICAgICAgIGlmIG91dHB1dF9maWxlOgorICAgICAgICAgICAgICAgIHNlbGYubWtwYXRoKG9zLnBhdGguZGlybmFtZShvdXRwdXRfZmlsZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihwcF9hcmdzKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKG1zZykKKworICAgIGRlZiBfY29tcGlsZShzZWxmLCBvYmosIHNyYywgZXh0LCBjY19hcmdzLCBleHRyYV9wb3N0YXJncywgcHBfb3B0cyk6CisgICAgICAgIGNvbXBpbGVyX3NvID0gc2VsZi5jb21waWxlcl9zbworICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6CisgICAgICAgICAgICBjb21waWxlcl9zbyA9IF9kYXJ3aW5fY29tcGlsZXJfZml4dXAoY29tcGlsZXJfc28sIGNjX2FyZ3MgKyBleHRyYV9wb3N0YXJncykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5zcGF3bihjb21waWxlcl9zbyArIGNjX2FyZ3MgKyBbc3JjLCAnLW8nLCBvYmpdICsKKyAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3MpCisgICAgICAgIGV4Y2VwdCBQYWNrYWdpbmdFeGVjRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgcmFpc2UgQ29tcGlsZUVycm9yKG1zZykKKworICAgIGRlZiBjcmVhdGVfc3RhdGljX2xpYihzZWxmLCBvYmplY3RzLCBvdXRwdXRfbGlibmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X2Rpcj1Ob25lLCBkZWJ1Zz1GYWxzZSwgdGFyZ2V0X2xhbmc9Tm9uZSk6CisgICAgICAgIG9iamVjdHMsIG91dHB1dF9kaXIgPSBzZWxmLl9maXhfb2JqZWN0X2FyZ3Mob2JqZWN0cywgb3V0cHV0X2RpcikKKworICAgICAgICBvdXRwdXRfZmlsZW5hbWUgPSBcCisgICAgICAgICAgICBzZWxmLmxpYnJhcnlfZmlsZW5hbWUob3V0cHV0X2xpYm5hbWUsIG91dHB1dF9kaXI9b3V0cHV0X2RpcikKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKyAgICAgICAgICAgIHNlbGYubWtwYXRoKG9zLnBhdGguZGlybmFtZShvdXRwdXRfZmlsZW5hbWUpKQorICAgICAgICAgICAgc2VsZi5zcGF3bihzZWxmLmFyY2hpdmVyICsKKyAgICAgICAgICAgICAgICAgICAgICAgW291dHB1dF9maWxlbmFtZV0gKworICAgICAgICAgICAgICAgICAgICAgICBvYmplY3RzICsgc2VsZi5vYmplY3RzKQorCisgICAgICAgICAgICAjIE5vdCBtYW55IFVuaWNlcyByZXF1aXJlZCByYW5saWIgYW55bW9yZSAtLSBTdW5PUyA0LnggaXMsIEkKKyAgICAgICAgICAgICMgdGhpbmsgdGhlIG9ubHkgbWFqb3IgVW5peCB0aGF0IGRvZXMuICBNYXliZSB3ZSBuZWVkIHNvbWUKKyAgICAgICAgICAgICMgcGxhdGZvcm0gaW50ZWxsaWdlbmNlIGhlcmUgdG8gc2tpcCByYW5saWIgaWYgaXQncyBub3QKKyAgICAgICAgICAgICMgbmVlZGVkIC0tIG9yIG1heWJlIFB5dGhvbidzIGNvbmZpZ3VyZSBzY3JpcHQgdG9vayBjYXJlIG9mCisgICAgICAgICAgICAjIGl0IGZvciB1cywgaGVuY2UgdGhlIGNoZWNrIGZvciBsZWFkaW5nIGNvbG9uLgorICAgICAgICAgICAgaWYgc2VsZi5yYW5saWI6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBzZWxmLnNwYXduKHNlbGYucmFubGliICsgW291dHB1dF9maWxlbmFtZV0pCisgICAgICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIExpYkVycm9yKG1zZykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1Zygic2tpcHBpbmcgJXMgKHVwLXRvLWRhdGUpIiwgb3V0cHV0X2ZpbGVuYW1lKQorCisgICAgZGVmIGxpbmsoc2VsZiwgdGFyZ2V0X2Rlc2MsIG9iamVjdHMsCisgICAgICAgICAgICAgb3V0cHV0X2ZpbGVuYW1lLCBvdXRwdXRfZGlyPU5vbmUsIGxpYnJhcmllcz1Ob25lLAorICAgICAgICAgICAgIGxpYnJhcnlfZGlycz1Ob25lLCBydW50aW1lX2xpYnJhcnlfZGlycz1Ob25lLAorICAgICAgICAgICAgIGV4cG9ydF9zeW1ib2xzPU5vbmUsIGRlYnVnPUZhbHNlLCBleHRyYV9wcmVhcmdzPU5vbmUsCisgICAgICAgICAgICAgZXh0cmFfcG9zdGFyZ3M9Tm9uZSwgYnVpbGRfdGVtcD1Ob25lLCB0YXJnZXRfbGFuZz1Ob25lKToKKyAgICAgICAgb2JqZWN0cywgb3V0cHV0X2RpciA9IHNlbGYuX2ZpeF9vYmplY3RfYXJncyhvYmplY3RzLCBvdXRwdXRfZGlyKQorICAgICAgICBsaWJyYXJpZXMsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMgPSBcCisgICAgICAgICAgICBzZWxmLl9maXhfbGliX2FyZ3MobGlicmFyaWVzLCBsaWJyYXJ5X2RpcnMsIHJ1bnRpbWVfbGlicmFyeV9kaXJzKQorCisgICAgICAgIGxpYl9vcHRzID0gZ2VuX2xpYl9vcHRpb25zKHNlbGYsIGxpYnJhcnlfZGlycywgcnVudGltZV9saWJyYXJ5X2RpcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcykKKyAgICAgICAgaWYgdHlwZShvdXRwdXRfZGlyKSBub3QgaW4gKHN0ciwgdHlwZShOb25lKSk6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoIidvdXRwdXRfZGlyJyBtdXN0IGJlIGEgc3RyaW5nIG9yIE5vbmUiKQorICAgICAgICBpZiBvdXRwdXRfZGlyIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgb3V0cHV0X2ZpbGVuYW1lID0gb3MucGF0aC5qb2luKG91dHB1dF9kaXIsIG91dHB1dF9maWxlbmFtZSkKKworICAgICAgICBpZiBzZWxmLl9uZWVkX2xpbmsob2JqZWN0cywgb3V0cHV0X2ZpbGVuYW1lKToKKyAgICAgICAgICAgIGxkX2FyZ3MgPSAob2JqZWN0cyArIHNlbGYub2JqZWN0cyArCisgICAgICAgICAgICAgICAgICAgICAgIGxpYl9vcHRzICsgWyctbycsIG91dHB1dF9maWxlbmFtZV0pCisgICAgICAgICAgICBpZiBkZWJ1ZzoKKyAgICAgICAgICAgICAgICBsZF9hcmdzWzowXSA9IFsnLWcnXQorICAgICAgICAgICAgaWYgZXh0cmFfcHJlYXJnczoKKyAgICAgICAgICAgICAgICBsZF9hcmdzWzowXSA9IGV4dHJhX3ByZWFyZ3MKKyAgICAgICAgICAgIGlmIGV4dHJhX3Bvc3RhcmdzOgorICAgICAgICAgICAgICAgIGxkX2FyZ3MuZXh0ZW5kKGV4dHJhX3Bvc3RhcmdzKQorICAgICAgICAgICAgc2VsZi5ta3BhdGgob3MucGF0aC5kaXJuYW1lKG91dHB1dF9maWxlbmFtZSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgaWYgdGFyZ2V0X2Rlc2MgPT0gQ0NvbXBpbGVyLkVYRUNVVEFCTEU6CisgICAgICAgICAgICAgICAgICAgIGxpbmtlciA9IHNlbGYubGlua2VyX2V4ZVs6XQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGxpbmtlciA9IHNlbGYubGlua2VyX3NvWzpdCisgICAgICAgICAgICAgICAgaWYgdGFyZ2V0X2xhbmcgPT0gImMrKyIgYW5kIHNlbGYuY29tcGlsZXJfY3h4OgorICAgICAgICAgICAgICAgICAgICAjIHNraXAgb3ZlciBlbnZpcm9ubWVudCB2YXJpYWJsZSBzZXR0aW5ncyBpZiAvdXNyL2Jpbi9lbnYKKyAgICAgICAgICAgICAgICAgICAgIyBpcyB1c2VkIHRvIHNldCB1cCB0aGUgbGlua2VyJ3MgZW52aXJvbm1lbnQuCisgICAgICAgICAgICAgICAgICAgICMgVGhpcyBpcyBuZWVkZWQgb24gT1NYLiBOb3RlOiB0aGlzIGFzc3VtZXMgdGhhdCB0aGUKKyAgICAgICAgICAgICAgICAgICAgIyBub3JtYWwgYW5kIEMrKyBjb21waWxlciBoYXZlIHRoZSBzYW1lIGVudmlyb25tZW50CisgICAgICAgICAgICAgICAgICAgICMgc2V0dGluZ3MuCisgICAgICAgICAgICAgICAgICAgIGkgPSAwCisgICAgICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguYmFzZW5hbWUobGlua2VyWzBdKSA9PSAiZW52IjoKKyAgICAgICAgICAgICAgICAgICAgICAgIGkgPSAxCisgICAgICAgICAgICAgICAgICAgICAgICB3aGlsZSAnPScgaW4gbGlua2VyW2ldOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgPSBpICsgMQorCisgICAgICAgICAgICAgICAgICAgIGxpbmtlcltpXSA9IHNlbGYuY29tcGlsZXJfY3h4W2ldCisKKyAgICAgICAgICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6CisgICAgICAgICAgICAgICAgICAgIGxpbmtlciA9IF9kYXJ3aW5fY29tcGlsZXJfZml4dXAobGlua2VyLCBsZF9hcmdzKQorCisgICAgICAgICAgICAgICAgc2VsZi5zcGF3bihsaW5rZXIgKyBsZF9hcmdzKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0V4ZWNFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgcmFpc2UgTGlua0Vycm9yKG1zZykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1Zygic2tpcHBpbmcgJXMgKHVwLXRvLWRhdGUpIiwgb3V0cHV0X2ZpbGVuYW1lKQorCisgICAgIyAtLSBNaXNjZWxsYW5lb3VzIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAjIFRoZXNlIGFyZSBhbGwgdXNlZCBieSB0aGUgJ2dlbl9saWJfb3B0aW9ucygpIGZ1bmN0aW9uLCBpbgorICAgICMgY2NvbXBpbGVyLnB5LgorCisgICAgZGVmIGxpYnJhcnlfZGlyX29wdGlvbihzZWxmLCBkaXIpOgorICAgICAgICByZXR1cm4gIi1MIiArIGRpcgorCisgICAgZGVmIF9pc19nY2Moc2VsZiwgY29tcGlsZXJfbmFtZSk6CisgICAgICAgIHJldHVybiAiZ2NjIiBpbiBjb21waWxlcl9uYW1lIG9yICJnKysiIGluIGNvbXBpbGVyX25hbWUKKworICAgIGRlZiBydW50aW1lX2xpYnJhcnlfZGlyX29wdGlvbihzZWxmLCBkaXIpOgorICAgICAgICAjIFhYWCBIYWNraXNoLCBhdCB0aGUgdmVyeSBsZWFzdC4gIFNlZSBQeXRob24gYnVnICM0NDU5MDI6CisgICAgICAgICMgaHR0cDovL3NvdXJjZWZvcmdlLm5ldC90cmFja2VyL2luZGV4LnBocAorICAgICAgICAjICAgP2Z1bmM9ZGV0YWlsJmFpZD00NDU5MDImZ3JvdXBfaWQ9NTQ3MCZhdGlkPTEwNTQ3MAorICAgICAgICAjIExpbmtlcnMgb24gZGlmZmVyZW50IHBsYXRmb3JtcyBuZWVkIGRpZmZlcmVudCBvcHRpb25zIHRvCisgICAgICAgICMgc3BlY2lmeSB0aGF0IGRpcmVjdG9yaWVzIG5lZWQgdG8gYmUgYWRkZWQgdG8gdGhlIGxpc3Qgb2YKKyAgICAgICAgIyBkaXJlY3RvcmllcyBzZWFyY2hlZCBmb3IgZGVwZW5kZW5jaWVzIHdoZW4gYSBkeW5hbWljIGxpYnJhcnkKKyAgICAgICAgIyBpcyBzb3VnaHQuICBHQ0Mgb24gR05VIHN5c3RlbXMgKExpbnV4LCBGcmVlQlNELCAuLi4pIGhhcyB0bworICAgICAgICAjIGJlIHRvbGQgdG8gcGFzcyB0aGUgLVIgb3B0aW9uIHRocm91Z2ggdG8gdGhlIGxpbmtlciwgd2hlcmVhcworICAgICAgICAjIG90aGVyIGNvbXBpbGVycyBhbmQgZ2NjIG9uIG90aGVyIHN5c3RlbXMganVzdCBrbm93IHRoaXMuCisgICAgICAgICMgT3RoZXIgY29tcGlsZXJzIG1heSBuZWVkIHNvbWV0aGluZyBzbGlnaHRseSBkaWZmZXJlbnQuICBBdAorICAgICAgICAjIHRoaXMgdGltZSwgdGhlcmUncyBubyB3YXkgdG8gZGV0ZXJtaW5lIHRoaXMgaW5mb3JtYXRpb24gZnJvbQorICAgICAgICAjIHRoZSBjb25maWd1cmF0aW9uIGRhdGEgc3RvcmVkIGluIHRoZSBQeXRob24gaW5zdGFsbGF0aW9uLCBzbworICAgICAgICAjIHdlIHVzZSB0aGlzIGhhY2suCisKKyAgICAgICAgY29tcGlsZXIgPSBvcy5wYXRoLmJhc2VuYW1lKHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcigiQ0MiKSkKKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtWzo2XSA9PSAiZGFyd2luIjoKKyAgICAgICAgICAgICMgTWFjT1NYJ3MgbGlua2VyIGRvZXNuJ3QgdW5kZXJzdGFuZCB0aGUgLVIgZmxhZyBhdCBhbGwKKyAgICAgICAgICAgIHJldHVybiAiLUwiICsgZGlyCisgICAgICAgIGVsaWYgc3lzLnBsYXRmb3JtWzo1XSA9PSAiaHAtdXgiOgorICAgICAgICAgICAgaWYgc2VsZi5faXNfZ2NjKGNvbXBpbGVyKToKKyAgICAgICAgICAgICAgICByZXR1cm4gWyItV2wsK3MiLCAiLUwiICsgZGlyXQorICAgICAgICAgICAgcmV0dXJuIFsiK3MiLCAiLUwiICsgZGlyXQorICAgICAgICBlbGlmIHN5cy5wbGF0Zm9ybVs6N10gPT0gImlyaXg2NDYiIG9yIHN5cy5wbGF0Zm9ybVs6Nl0gPT0gIm9zZjFWNSI6CisgICAgICAgICAgICByZXR1cm4gWyItcnBhdGgiLCBkaXJdCisgICAgICAgIGVsaWYgc2VsZi5faXNfZ2NjKGNvbXBpbGVyKToKKyAgICAgICAgICAgICMgZ2NjIG9uIG5vbi1HTlUgc3lzdGVtcyBkb2VzIG5vdCBuZWVkIC1XbCwgYnV0IGNhbgorICAgICAgICAgICAgIyB1c2UgaXQgYW55d2F5LiAgU2luY2UgZGlzdHV0aWxzIGhhcyBhbHdheXMgcGFzc2VkIGluCisgICAgICAgICAgICAjIC1XbCB3aGVuZXZlciBnY2Mgd2FzIHVzZWQgaW4gdGhlIHBhc3QgaXQgaXMgcHJvYmFibHkKKyAgICAgICAgICAgICMgc2FmZXN0IHRvIGtlZXAgZG9pbmcgc28uCisgICAgICAgICAgICBpZiBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoIkdOVUxEIikgPT0gInllcyI6CisgICAgICAgICAgICAgICAgIyBHTlUgbGQgbmVlZHMgYW4gZXh0cmEgb3B0aW9uIHRvIGdldCBhIFJVTlBBVEgKKyAgICAgICAgICAgICAgICAjIGluc3RlYWQgb2YganVzdCBhbiBSUEFUSC4KKyAgICAgICAgICAgICAgICByZXR1cm4gIi1XbCwtLWVuYWJsZS1uZXctZHRhZ3MsLVIiICsgZGlyCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJldHVybiAiLVdsLC1SIiArIGRpcgorICAgICAgICBlbGlmIHN5cy5wbGF0Zm9ybVs6M10gPT0gImFpeCI6CisgICAgICAgICAgICByZXR1cm4gIi1ibGlicGF0aDoiICsgZGlyCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIE5vIGlkZWEgaG93IC0tZW5hYmxlLW5ldy1kdGFncyB3b3VsZCBiZSBwYXNzZWQgb24gdG8KKyAgICAgICAgICAgICMgbGQgaWYgdGhpcyBzeXN0ZW0gd2FzIHVzaW5nIEdOVSBsZC4gIERvbid0IGtub3cgaWYgYQorICAgICAgICAgICAgIyBzeXN0ZW0gbGlrZSB0aGlzIGV2ZW4gZXhpc3RzLgorICAgICAgICAgICAgcmV0dXJuICItUiIgKyBkaXIKKworICAgIGRlZiBsaWJyYXJ5X29wdGlvbihzZWxmLCBsaWIpOgorICAgICAgICByZXR1cm4gIi1sIiArIGxpYgorCisgICAgZGVmIGZpbmRfbGlicmFyeV9maWxlKHNlbGYsIGRpcnMsIGxpYiwgZGVidWc9RmFsc2UpOgorICAgICAgICBzaGFyZWRfZiA9IHNlbGYubGlicmFyeV9maWxlbmFtZShsaWIsIGxpYl90eXBlPSdzaGFyZWQnKQorICAgICAgICBkeWxpYl9mID0gc2VsZi5saWJyYXJ5X2ZpbGVuYW1lKGxpYiwgbGliX3R5cGU9J2R5bGliJykKKyAgICAgICAgc3RhdGljX2YgPSBzZWxmLmxpYnJhcnlfZmlsZW5hbWUobGliLCBsaWJfdHlwZT0nc3RhdGljJykKKworICAgICAgICBmb3IgZGlyIGluIGRpcnM6CisgICAgICAgICAgICBzaGFyZWQgPSBvcy5wYXRoLmpvaW4oZGlyLCBzaGFyZWRfZikKKyAgICAgICAgICAgIGR5bGliID0gb3MucGF0aC5qb2luKGRpciwgZHlsaWJfZikKKyAgICAgICAgICAgIHN0YXRpYyA9IG9zLnBhdGguam9pbihkaXIsIHN0YXRpY19mKQorICAgICAgICAgICAgIyBXZSdyZSBzZWNvbmQtZ3Vlc3NpbmcgdGhlIGxpbmtlciBoZXJlLCB3aXRoIG5vdCBtdWNoIGhhcmQKKyAgICAgICAgICAgICMgZGF0YSB0byBnbyBvbjogR0NDIHNlZW1zIHRvIHByZWZlciB0aGUgc2hhcmVkIGxpYnJhcnksIHNvIEknbQorICAgICAgICAgICAgIyBhc3N1bWluZyB0aGF0ICphbGwqIFVuaXggQyBjb21waWxlcnMgZG8uICBBbmQgb2YgY291cnNlIEknbQorICAgICAgICAgICAgIyBpZ25vcmluZyBldmVuIEdDQydzICItc3RhdGljIiBvcHRpb24uICBTbyBzdWUgbWUuCisgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhkeWxpYik6CisgICAgICAgICAgICAgICAgcmV0dXJuIGR5bGliCisgICAgICAgICAgICBlbGlmIG9zLnBhdGguZXhpc3RzKHNoYXJlZCk6CisgICAgICAgICAgICAgICAgcmV0dXJuIHNoYXJlZAorICAgICAgICAgICAgZWxpZiBvcy5wYXRoLmV4aXN0cyhzdGF0aWMpOgorICAgICAgICAgICAgICAgIHJldHVybiBzdGF0aWMKKworICAgICAgICAjIE9vcHMsIGRpZG4ndCBmaW5kIGl0IGluICphbnkqIG9mICdkaXJzJworICAgICAgICByZXR1cm4gTm9uZQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9jb25maWcucHkgYi9MaWIvcGFja2FnaW5nL2NvbmZpZy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNjZmYWVhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9jb25maWcucHkKQEAgLTAsMCArMSwzODAgQEAKKyIiIlV0aWxpdGllcyB0byBmaW5kIGFuZCByZWFkIGNvbmZpZyBmaWxlcyB1c2VkIGJ5IHBhY2thZ2luZy4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgbG9nZ2luZworCitmcm9tIHNobGV4IGltcG9ydCBzcGxpdAorZnJvbSBjb25maWdwYXJzZXIgaW1wb3J0IFJhd0NvbmZpZ1BhcnNlcgorZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvcgorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIuZXh0ZW5zaW9uIGltcG9ydCBFeHRlbnNpb24KK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IChjaGVja19lbnZpcm9uLCBpZ2xvYiwgcmVzb2x2ZV9uYW1lLCBzdHJ0b2Jvb2wsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BsaXRfbXVsdGlsaW5lKQorZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IHNldF9jb21waWxlcgorZnJvbSBwYWNrYWdpbmcuY29tbWFuZCBpbXBvcnQgc2V0X2NvbW1hbmQKK2Zyb20gcGFja2FnaW5nLm1hcmtlcnMgaW1wb3J0IGludGVycHJldAorCisKK2RlZiBfY2hlY2tfbmFtZShuYW1lLCBwYWNrYWdlcyk6CisgICAgaWYgJy4nIG5vdCBpbiBuYW1lOgorICAgICAgICByZXR1cm4KKyAgICBwYXJ0cyA9IG5hbWUuc3BsaXQoJy4nKQorICAgIG1vZG5hbWUgPSBwYXJ0c1stMV0KKyAgICBwYXJlbnQgPSAnLicuam9pbihwYXJ0c1s6LTFdKQorICAgIGlmIHBhcmVudCBub3QgaW4gcGFja2FnZXM6CisgICAgICAgICMgd2UgY291bGQgbG9nIGEgd2FybmluZyBpbnN0ZWFkIG9mIHJhaXNpbmcsIGJ1dCB3aGF0J3MgdGhlIHVzZQorICAgICAgICAjIG9mIGxldHRpbmcgcGVvcGxlIGJ1aWxkIG1vZHVsZXMgdGhleSBjYW4ndCBpbXBvcnQ/CisgICAgICAgIHJhaXNlIFBhY2thZ2luZ09wdGlvbkVycm9yKAorICAgICAgICAgICAgJ3BhcmVudCBwYWNrYWdlIGZvciBleHRlbnNpb24gJXIgbm90IGZvdW5kJyAlIG5hbWUpCisKKworZGVmIF9wb3BfdmFsdWVzKHZhbHVlc19kY3QsIGtleSk6CisgICAgIiIiUmVtb3ZlIHZhbHVlcyBmcm9tIHRoZSBkaWN0aW9uYXJ5IGFuZCBjb252ZXJ0IHRoZW0gYXMgYSBsaXN0IiIiCisgICAgdmFsc19zdHIgPSB2YWx1ZXNfZGN0LnBvcChrZXksICcnKQorICAgIGlmIG5vdCB2YWxzX3N0cjoKKyAgICAgICAgcmV0dXJuCisgICAgZmllbGRzID0gW10KKyAgICAjIHRoZSBsaW5lIHNlcGFyYXRvciBpcyBcbiBmb3Igc2V0dXAuY2ZnIGZpbGVzCisgICAgZm9yIGZpZWxkIGluIHZhbHNfc3RyLnNwbGl0KCdcbicpOgorICAgICAgICB0bXBfdmFscyA9IGZpZWxkLnNwbGl0KCctLScpCisgICAgICAgIGlmIGxlbih0bXBfdmFscykgPT0gMiBhbmQgbm90IGludGVycHJldCh0bXBfdmFsc1sxXSk6CisgICAgICAgICAgICBjb250aW51ZQorICAgICAgICBmaWVsZHMuYXBwZW5kKHRtcF92YWxzWzBdKQorICAgICMgR2V0IGJhc2ggb3B0aW9ucyBsaWtlIGBnY2MgLXByaW50LWZpbGUtbmFtZT1saWJnY2MuYWAgWFhYIGJhc2ggb3B0aW9ucz8KKyAgICB2YWxzID0gc3BsaXQoJyAnLmpvaW4oZmllbGRzKSkKKyAgICBpZiB2YWxzOgorICAgICAgICByZXR1cm4gdmFscworCisKK2RlZiBfcmVsX3BhdGgoYmFzZSwgcGF0aCk6CisgICAgIyBub3JtYWxpemVzIGFuZCByZXR1cm5zIGEgbHN0cmlwcGVkLS8tc2VwYXJhdGVkIHBhdGgKKyAgICBiYXNlID0gYmFzZS5yZXBsYWNlKG9zLnBhdGguc2VwLCAnLycpCisgICAgcGF0aCA9IHBhdGgucmVwbGFjZShvcy5wYXRoLnNlcCwgJy8nKQorICAgIGFzc2VydCBwYXRoLnN0YXJ0c3dpdGgoYmFzZSkKKyAgICByZXR1cm4gcGF0aFtsZW4oYmFzZSk6XS5sc3RyaXAoJy8nKQorCisKK2RlZiBnZXRfcmVzb3VyY2VzX2Rlc3RzKHJlc291cmNlc19yb290LCBydWxlcyk6CisgICAgIiIiRmluZCBkZXN0aW5hdGlvbnMgZm9yIHJlc291cmNlcyBmaWxlcyIiIgorICAgIGRlc3RpbmF0aW9ucyA9IHt9CisgICAgZm9yIGJhc2UsIHN1ZmZpeCwgZGVzdCBpbiBydWxlczoKKyAgICAgICAgcHJlZml4ID0gb3MucGF0aC5qb2luKHJlc291cmNlc19yb290LCBiYXNlKQorICAgICAgICBmb3IgYWJzX2Jhc2UgaW4gaWdsb2IocHJlZml4KToKKyAgICAgICAgICAgIGFic19nbG9iID0gb3MucGF0aC5qb2luKGFic19iYXNlLCBzdWZmaXgpCisgICAgICAgICAgICBmb3IgYWJzX3BhdGggaW4gaWdsb2IoYWJzX2dsb2IpOgorICAgICAgICAgICAgICAgIHJlc291cmNlX2ZpbGUgPSBfcmVsX3BhdGgocmVzb3VyY2VzX3Jvb3QsIGFic19wYXRoKQorICAgICAgICAgICAgICAgIGlmIGRlc3QgaXMgTm9uZTogICMgcmVtb3ZlIHRoZSBlbnRyeSBpZiBpdCB3YXMgaGVyZQorICAgICAgICAgICAgICAgICAgICBkZXN0aW5hdGlvbnMucG9wKHJlc291cmNlX2ZpbGUsIE5vbmUpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmVsX3BhdGggPSBfcmVsX3BhdGgoYWJzX2Jhc2UsIGFic19wYXRoKQorICAgICAgICAgICAgICAgICAgICByZWxfZGVzdCA9IGRlc3QucmVwbGFjZShvcy5wYXRoLnNlcCwgJy8nKS5yc3RyaXAoJy8nKQorICAgICAgICAgICAgICAgICAgICBkZXN0aW5hdGlvbnNbcmVzb3VyY2VfZmlsZV0gPSByZWxfZGVzdCArICcvJyArIHJlbF9wYXRoCisgICAgcmV0dXJuIGRlc3RpbmF0aW9ucworCisKK2NsYXNzIENvbmZpZzoKKyAgICAiIiJDbGFzcyB1c2VkIHRvIHdvcmsgd2l0aCBjb25maWd1cmF0aW9uIGZpbGVzIiIiCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRpc3QpOgorICAgICAgICBzZWxmLmRpc3QgPSBkaXN0CisgICAgICAgIHNlbGYuc2V0dXBfaG9va3MgPSBbXQorCisgICAgZGVmIHJ1bl9ob29rcyhzZWxmLCBjb25maWcpOgorICAgICAgICAiIiJSdW4gc2V0dXAgaG9va3MgaW4gdGhlIG9yZGVyIGRlZmluZWQgaW4gdGhlIHNwZWMuIiIiCisgICAgICAgIGZvciBob29rIGluIHNlbGYuc2V0dXBfaG9va3M6CisgICAgICAgICAgICBob29rKGNvbmZpZykKKworICAgIGRlZiBmaW5kX2NvbmZpZ19maWxlcyhzZWxmKToKKyAgICAgICAgIiIiRmluZCBhcyBtYW55IGNvbmZpZ3VyYXRpb24gZmlsZXMgYXMgc2hvdWxkIGJlIHByb2Nlc3NlZCBmb3IgdGhpcworICAgICAgICBwbGF0Zm9ybSwgYW5kIHJldHVybiBhIGxpc3Qgb2YgZmlsZW5hbWVzIGluIHRoZSBvcmRlciBpbiB3aGljaCB0aGV5CisgICAgICAgIHNob3VsZCBiZSBwYXJzZWQuICBUaGUgZmlsZW5hbWVzIHJldHVybmVkIGFyZSBndWFyYW50ZWVkIHRvIGV4aXN0CisgICAgICAgIChtb2R1bG8gbmFzdHkgcmFjZSBjb25kaXRpb25zKS4KKworICAgICAgICBUaGVyZSBhcmUgdGhyZWUgcG9zc2libGUgY29uZmlnIGZpbGVzOiBwYWNrYWdpbmcuY2ZnIGluIHRoZQorICAgICAgICBQYWNrYWdpbmcgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSAoaWUuIHdoZXJlIHRoZSB0b3AtbGV2ZWwKKyAgICAgICAgUGFja2FnaW5nIF9faW5zdF9fLnB5IGZpbGUgbGl2ZXMpLCBhIGZpbGUgaW4gdGhlIHVzZXIncyBob21lCisgICAgICAgIGRpcmVjdG9yeSBuYW1lZCAucHlkaXN0dXRpbHMuY2ZnIG9uIFVuaXggYW5kIHB5ZGlzdHV0aWxzLmNmZworICAgICAgICBvbiBXaW5kb3dzL01hYzsgYW5kIHNldHVwLmNmZyBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkuCisKKyAgICAgICAgVGhlIGZpbGUgaW4gdGhlIHVzZXIncyBob21lIGRpcmVjdG9yeSBjYW4gYmUgZGlzYWJsZWQgd2l0aCB0aGUKKyAgICAgICAgLS1uby11c2VyLWNmZyBvcHRpb24uCisgICAgICAgICIiIgorICAgICAgICBmaWxlcyA9IFtdCisgICAgICAgIGNoZWNrX2Vudmlyb24oKQorCisgICAgICAgICMgV2hlcmUgdG8gbG9vayBmb3IgdGhlIHN5c3RlbS13aWRlIFBhY2thZ2luZyBjb25maWcgZmlsZQorICAgICAgICBzeXNfZGlyID0gb3MucGF0aC5kaXJuYW1lKHN5cy5tb2R1bGVzWydwYWNrYWdpbmcnXS5fX2ZpbGVfXykKKworICAgICAgICAjIExvb2sgZm9yIHRoZSBzeXN0ZW0gY29uZmlnIGZpbGUKKyAgICAgICAgc3lzX2ZpbGUgPSBvcy5wYXRoLmpvaW4oc3lzX2RpciwgInBhY2thZ2luZy5jZmciKQorICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShzeXNfZmlsZSk6CisgICAgICAgICAgICBmaWxlcy5hcHBlbmQoc3lzX2ZpbGUpCisKKyAgICAgICAgIyBXaGF0IHRvIGNhbGwgdGhlIHBlci11c2VyIGNvbmZpZyBmaWxlCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKKyAgICAgICAgICAgIHVzZXJfZmlsZW5hbWUgPSAiLnB5ZGlzdHV0aWxzLmNmZyIKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHVzZXJfZmlsZW5hbWUgPSAicHlkaXN0dXRpbHMuY2ZnIgorCisgICAgICAgICMgQW5kIGxvb2sgZm9yIHRoZSB1c2VyIGNvbmZpZyBmaWxlCisgICAgICAgIGlmIHNlbGYuZGlzdC53YW50X3VzZXJfY2ZnOgorICAgICAgICAgICAgdXNlcl9maWxlID0gb3MucGF0aC5qb2luKG9zLnBhdGguZXhwYW5kdXNlcignficpLCB1c2VyX2ZpbGVuYW1lKQorICAgICAgICAgICAgaWYgb3MucGF0aC5pc2ZpbGUodXNlcl9maWxlKToKKyAgICAgICAgICAgICAgICBmaWxlcy5hcHBlbmQodXNlcl9maWxlKQorCisgICAgICAgICMgQWxsIHBsYXRmb3JtcyBzdXBwb3J0IGxvY2FsIHNldHVwLmNmZworICAgICAgICBsb2NhbF9maWxlID0gInNldHVwLmNmZyIKKyAgICAgICAgaWYgb3MucGF0aC5pc2ZpbGUobG9jYWxfZmlsZSk6CisgICAgICAgICAgICBmaWxlcy5hcHBlbmQobG9jYWxfZmlsZSkKKworICAgICAgICBpZiBsb2dnZXIuaXNFbmFibGVkRm9yKGxvZ2dpbmcuREVCVUcpOgorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCJ1c2luZyBjb25maWcgZmlsZXM6ICVzIiwgJywgJy5qb2luKGZpbGVzKSkKKyAgICAgICAgcmV0dXJuIGZpbGVzCisKKyAgICBkZWYgX2NvbnZlcnRfbWV0YWRhdGEoc2VsZiwgbmFtZSwgdmFsdWUpOgorICAgICAgICAjIGNvbnZlcnRzIGEgdmFsdWUgZm91bmQgaW4gc2V0dXAuY2ZnIGludG8gYSB2YWxpZCBtZXRhZGF0YQorICAgICAgICAjIFhYWAorICAgICAgICByZXR1cm4gdmFsdWUKKworICAgIGRlZiBfcmVhZF9zZXR1cF9jZmcoc2VsZiwgcGFyc2VyLCBjZmdfZmlsZW5hbWUpOgorICAgICAgICBjZmdfZGlyZWN0b3J5ID0gb3MucGF0aC5kaXJuYW1lKG9zLnBhdGguYWJzcGF0aChjZmdfZmlsZW5hbWUpKQorICAgICAgICBjb250ZW50ID0ge30KKyAgICAgICAgZm9yIHNlY3Rpb24gaW4gcGFyc2VyLnNlY3Rpb25zKCk6CisgICAgICAgICAgICBjb250ZW50W3NlY3Rpb25dID0gZGljdChwYXJzZXIuaXRlbXMoc2VjdGlvbikpCisKKyAgICAgICAgIyBnbG9iYWwgc2V0dXAgaG9va3MgYXJlIGNhbGxlZCBmaXJzdAorICAgICAgICBpZiAnZ2xvYmFsJyBpbiBjb250ZW50OgorICAgICAgICAgICAgaWYgJ3NldHVwX2hvb2tzJyBpbiBjb250ZW50WydnbG9iYWwnXToKKyAgICAgICAgICAgICAgICBzZXR1cF9ob29rcyA9IHNwbGl0X211bHRpbGluZShjb250ZW50WydnbG9iYWwnXVsnc2V0dXBfaG9va3MnXSkKKworICAgICAgICAgICAgICAgICMgYWRkIHByb2plY3QgZGlyZWN0b3J5IHRvIHN5cy5wYXRoLCB0byBhbGxvdyBob29rcyB0byBiZQorICAgICAgICAgICAgICAgICMgZGlzdHJpYnV0ZWQgd2l0aCB0aGUgcHJvamVjdAorICAgICAgICAgICAgICAgIHN5cy5wYXRoLmluc2VydCgwLCBjZmdfZGlyZWN0b3J5KQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgZm9yIGxpbmUgaW4gc2V0dXBfaG9va3M6CisgICAgICAgICAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaG9vayA9IHJlc29sdmVfbmFtZShsaW5lKQorICAgICAgICAgICAgICAgICAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yIGFzIGU6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoJ2Nhbm5vdCBmaW5kIHNldHVwIGhvb2s6ICVzJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLmFyZ3NbMF0pCisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2V0dXBfaG9va3MuYXBwZW5kKGhvb2spCisgICAgICAgICAgICAgICAgICAgIHNlbGYucnVuX2hvb2tzKGNvbnRlbnQpCisgICAgICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICAgICAgc3lzLnBhdGgucG9wKDApCisKKyAgICAgICAgbWV0YWRhdGEgPSBzZWxmLmRpc3QubWV0YWRhdGEKKworICAgICAgICAjIHNldHRpbmcgdGhlIG1ldGFkYXRhIHZhbHVlcworICAgICAgICBpZiAnbWV0YWRhdGEnIGluIGNvbnRlbnQ6CisgICAgICAgICAgICBmb3Iga2V5LCB2YWx1ZSBpbiBjb250ZW50WydtZXRhZGF0YSddLml0ZW1zKCk6CisgICAgICAgICAgICAgICAga2V5ID0ga2V5LnJlcGxhY2UoJ18nLCAnLScpCisgICAgICAgICAgICAgICAgaWYgbWV0YWRhdGEuaXNfbXVsdGlfZmllbGQoa2V5KToKKyAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBzcGxpdF9tdWx0aWxpbmUodmFsdWUpCisKKyAgICAgICAgICAgICAgICBpZiBrZXkgPT0gJ3Byb2plY3QtdXJsJzoKKyAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBbKGxhYmVsLnN0cmlwKCksIHVybC5zdHJpcCgpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgbGFiZWwsIHVybCBpbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdi5zcGxpdCgnLCcpIGZvciB2IGluIHZhbHVlXV0KKworICAgICAgICAgICAgICAgIGlmIGtleSA9PSAnZGVzY3JpcHRpb24tZmlsZSc6CisgICAgICAgICAgICAgICAgICAgIGlmICdkZXNjcmlwdGlvbicgaW4gY29udGVudFsnbWV0YWRhdGEnXToKKyAgICAgICAgICAgICAgICAgICAgICAgIG1zZyA9ICgiZGVzY3JpcHRpb24gYW5kIGRlc2NyaXB0aW9uLWZpbGUnIGFyZSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm11dHVhbGx5IGV4Y2x1c2l2ZSIpCisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcihtc2cpCisKKyAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWVzID0gdmFsdWUuc3BsaXQoKQorCisgICAgICAgICAgICAgICAgICAgICMgY29uY2F0ZW5hdGUgYWxsIGZpbGVzCisgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gW10KKyAgICAgICAgICAgICAgICAgICAgZm9yIGZpbGVuYW1lIGluIGZpbGVuYW1lczoKKyAgICAgICAgICAgICAgICAgICAgICAgICMgd2lsbCByYWlzZSBpZiBmaWxlIG5vdCBmb3VuZAorICAgICAgICAgICAgICAgICAgICAgICAgd2l0aCBvcGVuKGZpbGVuYW1lKSBhcyBkZXNjcmlwdGlvbl9maWxlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlLmFwcGVuZChkZXNjcmlwdGlvbl9maWxlLnJlYWQoKS5zdHJpcCgpKQorICAgICAgICAgICAgICAgICAgICAgICAgIyBhZGQgZmlsZW5hbWUgYXMgYSByZXF1aXJlZCBmaWxlCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBmaWxlbmFtZSBub3QgaW4gbWV0YWRhdGEucmVxdWlyZXNfZmlsZXM6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGEucmVxdWlyZXNfZmlsZXMuYXBwZW5kKGZpbGVuYW1lKQorICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9ICdcbicuam9pbih2YWx1ZSkuc3RyaXAoKQorICAgICAgICAgICAgICAgICAgICBrZXkgPSAnZGVzY3JpcHRpb24nCisKKyAgICAgICAgICAgICAgICBpZiBtZXRhZGF0YS5pc19tZXRhZGF0YV9maWVsZChrZXkpOgorICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YVtrZXldID0gc2VsZi5fY29udmVydF9tZXRhZGF0YShrZXksIHZhbHVlKQorCisgICAgICAgIGlmICdmaWxlcycgaW4gY29udGVudDoKKyAgICAgICAgICAgIGZpbGVzID0gY29udGVudFsnZmlsZXMnXQorICAgICAgICAgICAgc2VsZi5kaXN0LnBhY2thZ2VfZGlyID0gZmlsZXMucG9wKCdwYWNrYWdlc19yb290JywgTm9uZSkKKworICAgICAgICAgICAgZmlsZXMgPSBkaWN0KChrZXksIHNwbGl0X211bHRpbGluZSh2YWx1ZSkpIGZvciBrZXksIHZhbHVlIGluCisgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZXMuaXRlbXMoKSkKKworICAgICAgICAgICAgc2VsZi5kaXN0LnBhY2thZ2VzID0gW10KKworICAgICAgICAgICAgcGFja2FnZXMgPSBmaWxlcy5nZXQoJ3BhY2thZ2VzJywgW10pCisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHBhY2thZ2VzLCBzdHIpOgorICAgICAgICAgICAgICAgIHBhY2thZ2VzID0gW3BhY2thZ2VzXQorCisgICAgICAgICAgICBmb3IgcGFja2FnZSBpbiBwYWNrYWdlczoKKyAgICAgICAgICAgICAgICBpZiAnOicgaW4gcGFja2FnZToKKyAgICAgICAgICAgICAgICAgICAgZGlyXywgcGFja2FnZSA9IHBhY2thZ2Uuc3BsaXQoJzonKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmRpc3QucGFja2FnZV9kaXJbcGFja2FnZV0gPSBkaXJfCisgICAgICAgICAgICAgICAgc2VsZi5kaXN0LnBhY2thZ2VzLmFwcGVuZChwYWNrYWdlKQorCisgICAgICAgICAgICBzZWxmLmRpc3QucHlfbW9kdWxlcyA9IGZpbGVzLmdldCgnbW9kdWxlcycsIFtdKQorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShzZWxmLmRpc3QucHlfbW9kdWxlcywgc3RyKToKKyAgICAgICAgICAgICAgICBzZWxmLmRpc3QucHlfbW9kdWxlcyA9IFtzZWxmLmRpc3QucHlfbW9kdWxlc10KKyAgICAgICAgICAgIHNlbGYuZGlzdC5zY3JpcHRzID0gZmlsZXMuZ2V0KCdzY3JpcHRzJywgW10pCisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHNlbGYuZGlzdC5zY3JpcHRzLCBzdHIpOgorICAgICAgICAgICAgICAgIHNlbGYuZGlzdC5zY3JpcHRzID0gW3NlbGYuZGlzdC5zY3JpcHRzXQorCisgICAgICAgICAgICBzZWxmLmRpc3QucGFja2FnZV9kYXRhID0ge30KKyAgICAgICAgICAgIGZvciBsaW5lIGluIGZpbGVzLmdldCgncGFja2FnZV9kYXRhJywgW10pOgorICAgICAgICAgICAgICAgIGRhdGEgPSBsaW5lLnNwbGl0KCc9JykKKyAgICAgICAgICAgICAgICBpZiBsZW4oZGF0YSkgIT0gMjoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignaW52YWxpZCBsaW5lIGZvciBwYWNrYWdlX2RhdGE6ICVzICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnKG1pc3NlcyAiPSIpJyAlIGxpbmUpCisgICAgICAgICAgICAgICAga2V5LCB2YWx1ZSA9IGRhdGEKKyAgICAgICAgICAgICAgICBzZWxmLmRpc3QucGFja2FnZV9kYXRhW2tleS5zdHJpcCgpXSA9IHZhbHVlLnN0cmlwKCkKKworICAgICAgICAgICAgc2VsZi5kaXN0LmRhdGFfZmlsZXMgPSBbXQorICAgICAgICAgICAgZm9yIGRhdGEgaW4gZmlsZXMuZ2V0KCdkYXRhX2ZpbGVzJywgW10pOgorICAgICAgICAgICAgICAgIGRhdGEgPSBkYXRhLnNwbGl0KCc9JykKKyAgICAgICAgICAgICAgICBpZiBsZW4oZGF0YSkgIT0gMjoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICBrZXksIHZhbHVlID0gZGF0YQorICAgICAgICAgICAgICAgIHZhbHVlcyA9IFt2LnN0cmlwKCkgZm9yIHYgaW4gdmFsdWUuc3BsaXQoJywnKV0KKyAgICAgICAgICAgICAgICBzZWxmLmRpc3QuZGF0YV9maWxlcy5hcHBlbmQoKGtleSwgdmFsdWVzKSkKKworICAgICAgICAgICAgIyBtYW5pZmVzdCB0ZW1wbGF0ZQorICAgICAgICAgICAgc2VsZi5kaXN0LmV4dHJhX2ZpbGVzID0gZmlsZXMuZ2V0KCdleHRyYV9maWxlcycsIFtdKQorCisgICAgICAgICAgICByZXNvdXJjZXMgPSBbXQorICAgICAgICAgICAgZm9yIHJ1bGUgaW4gZmlsZXMuZ2V0KCdyZXNvdXJjZXMnLCBbXSk6CisgICAgICAgICAgICAgICAgZ2xvYiwgZGVzdGluYXRpb24gPSBydWxlLnNwbGl0KCc9JywgMSkKKyAgICAgICAgICAgICAgICByaWNoX2dsb2IgPSBnbG9iLnN0cmlwKCkuc3BsaXQoJyAnLCAxKQorICAgICAgICAgICAgICAgIGlmIGxlbihyaWNoX2dsb2IpID09IDI6CisgICAgICAgICAgICAgICAgICAgIHByZWZpeCwgc3VmZml4ID0gcmljaF9nbG9iCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0IGxlbihyaWNoX2dsb2IpID09IDEKKyAgICAgICAgICAgICAgICAgICAgcHJlZml4ID0gJycKKyAgICAgICAgICAgICAgICAgICAgc3VmZml4ID0gZ2xvYgorICAgICAgICAgICAgICAgIGlmIGRlc3RpbmF0aW9uID09ICc8ZXhjbHVkZT4nOgorICAgICAgICAgICAgICAgICAgICBkZXN0aW5hdGlvbiA9IE5vbmUKKyAgICAgICAgICAgICAgICByZXNvdXJjZXMuYXBwZW5kKAorICAgICAgICAgICAgICAgICAgICAocHJlZml4LnN0cmlwKCksIHN1ZmZpeC5zdHJpcCgpLCBkZXN0aW5hdGlvbi5zdHJpcCgpKSkKKyAgICAgICAgICAgICAgICBzZWxmLmRpc3QuZGF0YV9maWxlcyA9IGdldF9yZXNvdXJjZXNfZGVzdHMoCisgICAgICAgICAgICAgICAgICAgIGNmZ19kaXJlY3RvcnksIHJlc291cmNlcykKKworICAgICAgICBleHRfbW9kdWxlcyA9IHNlbGYuZGlzdC5leHRfbW9kdWxlcworICAgICAgICBmb3Igc2VjdGlvbl9rZXkgaW4gY29udGVudDoKKyAgICAgICAgICAgICMgbm8gc3RyLnBhcnRpdGlvbiBpbiAyLjQgOigKKyAgICAgICAgICAgIGxhYmVscyA9IHNlY3Rpb25fa2V5LnNwbGl0KCc6JykKKyAgICAgICAgICAgIGlmIGxlbihsYWJlbHMpID09IDIgYW5kIGxhYmVsc1swXSA9PSAnZXh0ZW5zaW9uJzoKKyAgICAgICAgICAgICAgICB2YWx1ZXNfZGN0ID0gY29udGVudFtzZWN0aW9uX2tleV0KKyAgICAgICAgICAgICAgICBpZiAnbmFtZScgaW4gdmFsdWVzX2RjdDoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAnZXh0ZW5zaW9uIG5hbWUgc2hvdWxkIGJlIGdpdmVuIGFzIFtleHRlbnNpb246IG5hbWVdLCAnCisgICAgICAgICAgICAgICAgICAgICAgICAnbm90IGFzIGtleScpCisgICAgICAgICAgICAgICAgbmFtZSA9IGxhYmVsc1sxXS5zdHJpcCgpCisgICAgICAgICAgICAgICAgX2NoZWNrX25hbWUobmFtZSwgc2VsZi5kaXN0LnBhY2thZ2VzKQorICAgICAgICAgICAgICAgIGV4dF9tb2R1bGVzLmFwcGVuZChFeHRlbnNpb24oCisgICAgICAgICAgICAgICAgICAgIG5hbWUsCisgICAgICAgICAgICAgICAgICAgIF9wb3BfdmFsdWVzKHZhbHVlc19kY3QsICdzb3VyY2VzJyksCisgICAgICAgICAgICAgICAgICAgIF9wb3BfdmFsdWVzKHZhbHVlc19kY3QsICdpbmNsdWRlX2RpcnMnKSwKKyAgICAgICAgICAgICAgICAgICAgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwgJ2RlZmluZV9tYWNyb3MnKSwKKyAgICAgICAgICAgICAgICAgICAgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwgJ3VuZGVmX21hY3JvcycpLAorICAgICAgICAgICAgICAgICAgICBfcG9wX3ZhbHVlcyh2YWx1ZXNfZGN0LCAnbGlicmFyeV9kaXJzJyksCisgICAgICAgICAgICAgICAgICAgIF9wb3BfdmFsdWVzKHZhbHVlc19kY3QsICdsaWJyYXJpZXMnKSwKKyAgICAgICAgICAgICAgICAgICAgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwgJ3J1bnRpbWVfbGlicmFyeV9kaXJzJyksCisgICAgICAgICAgICAgICAgICAgIF9wb3BfdmFsdWVzKHZhbHVlc19kY3QsICdleHRyYV9vYmplY3RzJyksCisgICAgICAgICAgICAgICAgICAgIF9wb3BfdmFsdWVzKHZhbHVlc19kY3QsICdleHRyYV9jb21waWxlX2FyZ3MnKSwKKyAgICAgICAgICAgICAgICAgICAgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwgJ2V4dHJhX2xpbmtfYXJncycpLAorICAgICAgICAgICAgICAgICAgICBfcG9wX3ZhbHVlcyh2YWx1ZXNfZGN0LCAnZXhwb3J0X3N5bWJvbHMnKSwKKyAgICAgICAgICAgICAgICAgICAgX3BvcF92YWx1ZXModmFsdWVzX2RjdCwgJ3N3aWdfb3B0cycpLAorICAgICAgICAgICAgICAgICAgICBfcG9wX3ZhbHVlcyh2YWx1ZXNfZGN0LCAnZGVwZW5kcycpLAorICAgICAgICAgICAgICAgICAgICB2YWx1ZXNfZGN0LnBvcCgnbGFuZ3VhZ2UnLCBOb25lKSwKKyAgICAgICAgICAgICAgICAgICAgdmFsdWVzX2RjdC5wb3AoJ29wdGlvbmFsJywgTm9uZSksCisgICAgICAgICAgICAgICAgICAgICoqdmFsdWVzX2RjdCkpCisKKyAgICBkZWYgcGFyc2VfY29uZmlnX2ZpbGVzKHNlbGYsIGZpbGVuYW1lcz1Ob25lKToKKyAgICAgICAgaWYgZmlsZW5hbWVzIGlzIE5vbmU6CisgICAgICAgICAgICBmaWxlbmFtZXMgPSBzZWxmLmZpbmRfY29uZmlnX2ZpbGVzKCkKKworICAgICAgICBsb2dnZXIuZGVidWcoIkRpc3RyaWJ1dGlvbi5wYXJzZV9jb25maWdfZmlsZXMoKToiKQorCisgICAgICAgIHBhcnNlciA9IFJhd0NvbmZpZ1BhcnNlcigpCisKKyAgICAgICAgZm9yIGZpbGVuYW1lIGluIGZpbGVuYW1lczoKKyAgICAgICAgICAgIGxvZ2dlci5kZWJ1ZygiICByZWFkaW5nICVzIiwgZmlsZW5hbWUpCisgICAgICAgICAgICBwYXJzZXIucmVhZChmaWxlbmFtZSwgZW5jb2Rpbmc9J3V0Zi04JykKKworICAgICAgICAgICAgaWYgb3MucGF0aC5zcGxpdChmaWxlbmFtZSlbLTFdID09ICdzZXR1cC5jZmcnOgorICAgICAgICAgICAgICAgIHNlbGYuX3JlYWRfc2V0dXBfY2ZnKHBhcnNlciwgZmlsZW5hbWUpCisKKyAgICAgICAgICAgIGZvciBzZWN0aW9uIGluIHBhcnNlci5zZWN0aW9ucygpOgorICAgICAgICAgICAgICAgIGlmIHNlY3Rpb24gPT0gJ2dsb2JhbCc6CisgICAgICAgICAgICAgICAgICAgIGlmIHBhcnNlci5oYXNfb3B0aW9uKCdnbG9iYWwnLCAnY29tcGlsZXJzJyk6CisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9sb2FkX2NvbXBpbGVycyhwYXJzZXIuZ2V0KCdnbG9iYWwnLCAnY29tcGlsZXJzJykpCisKKyAgICAgICAgICAgICAgICAgICAgaWYgcGFyc2VyLmhhc19vcHRpb24oJ2dsb2JhbCcsICdjb21tYW5kcycpOgorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fbG9hZF9jb21tYW5kcyhwYXJzZXIuZ2V0KCdnbG9iYWwnLCAnY29tbWFuZHMnKSkKKworICAgICAgICAgICAgICAgIG9wdGlvbnMgPSBwYXJzZXIub3B0aW9ucyhzZWN0aW9uKQorICAgICAgICAgICAgICAgIG9wdF9kaWN0ID0gc2VsZi5kaXN0LmdldF9vcHRpb25fZGljdChzZWN0aW9uKQorCisgICAgICAgICAgICAgICAgZm9yIG9wdCBpbiBvcHRpb25zOgorICAgICAgICAgICAgICAgICAgICBpZiBvcHQgPT0gJ19fbmFtZV9fJzoKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgICAgIHZhbCA9IHBhcnNlci5nZXQoc2VjdGlvbiwgb3B0KQorICAgICAgICAgICAgICAgICAgICBvcHQgPSBvcHQucmVwbGFjZSgnLScsICdfJykKKworICAgICAgICAgICAgICAgICAgICBpZiBvcHQgPT0gJ3N1Yl9jb21tYW5kcyc6CisgICAgICAgICAgICAgICAgICAgICAgICB2YWwgPSBzcGxpdF9tdWx0aWxpbmUodmFsKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgaXNpbnN0YW5jZSh2YWwsIHN0cik6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsID0gW3ZhbF0KKworICAgICAgICAgICAgICAgICAgICAjIEhvb2tzIHVzZSBhIHN1ZmZpeCBzeXN0ZW0gdG8gcHJldmVudCBiZWluZyBvdmVycmlkZW4KKyAgICAgICAgICAgICAgICAgICAgIyBieSBhIGNvbmZpZyBmaWxlIHByb2Nlc3NlZCBsYXRlciAoaS5lLiBhIGhvb2sgc2V0IGluCisgICAgICAgICAgICAgICAgICAgICMgdGhlIHVzZXIgY29uZmlnIGZpbGUgY2Fubm90IGJlIHJlcGxhY2VkIGJ5IGEgaG9vaworICAgICAgICAgICAgICAgICAgICAjIHNldCBpbiBhIHByb2plY3QgY29uZmlnIGZpbGUsIHVubGVzcyB0aGV5IGhhdmUgdGhlCisgICAgICAgICAgICAgICAgICAgICMgc2FtZSBzdWZmaXgpLgorICAgICAgICAgICAgICAgICAgICBpZiAob3B0LnN0YXJ0c3dpdGgoInByZV9ob29rLiIpIG9yCisgICAgICAgICAgICAgICAgICAgICAgICBvcHQuc3RhcnRzd2l0aCgicG9zdF9ob29rLiIpKToKKyAgICAgICAgICAgICAgICAgICAgICAgIGhvb2tfdHlwZSwgYWxpYXMgPSBvcHQuc3BsaXQoIi4iKQorICAgICAgICAgICAgICAgICAgICAgICAgaG9va19kaWN0ID0gb3B0X2RpY3Quc2V0ZGVmYXVsdCgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBob29rX3R5cGUsIChmaWxlbmFtZSwge30pKVsxXQorICAgICAgICAgICAgICAgICAgICAgICAgaG9va19kaWN0W2FsaWFzXSA9IHZhbAorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgb3B0X2RpY3Rbb3B0XSA9IGZpbGVuYW1lLCB2YWwKKworICAgICAgICAgICAgIyBNYWtlIHRoZSBSYXdDb25maWdQYXJzZXIgZm9yZ2V0IGV2ZXJ5dGhpbmcgKHNvIHdlIHJldGFpbgorICAgICAgICAgICAgIyB0aGUgb3JpZ2luYWwgZmlsZW5hbWVzIHRoYXQgb3B0aW9ucyBjb21lIGZyb20pCisgICAgICAgICAgICBwYXJzZXIuX19pbml0X18oKQorCisgICAgICAgICMgSWYgdGhlcmUgd2FzIGEgImdsb2JhbCIgc2VjdGlvbiBpbiB0aGUgY29uZmlnIGZpbGUsIHVzZSBpdAorICAgICAgICAjIHRvIHNldCBEaXN0cmlidXRpb24gb3B0aW9ucy4KKyAgICAgICAgaWYgJ2dsb2JhbCcgaW4gc2VsZi5kaXN0LmNvbW1hbmRfb3B0aW9uczoKKyAgICAgICAgICAgIGZvciBvcHQsIChzcmMsIHZhbCkgaW4gc2VsZi5kaXN0LmNvbW1hbmRfb3B0aW9uc1snZ2xvYmFsJ10uaXRlbXMoKToKKyAgICAgICAgICAgICAgICBhbGlhcyA9IHNlbGYuZGlzdC5uZWdhdGl2ZV9vcHQuZ2V0KG9wdCkKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGlmIGFsaWFzOgorICAgICAgICAgICAgICAgICAgICAgICAgc2V0YXR0cihzZWxmLmRpc3QsIGFsaWFzLCBub3Qgc3RydG9ib29sKHZhbCkpCisgICAgICAgICAgICAgICAgICAgIGVsaWYgb3B0ID09ICdkcnlfcnVuJzogICMgRklYTUUgdWdoIQorICAgICAgICAgICAgICAgICAgICAgICAgc2V0YXR0cihzZWxmLmRpc3QsIG9wdCwgc3RydG9ib29sKHZhbCkpCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICBzZXRhdHRyKHNlbGYuZGlzdCwgb3B0LCB2YWwpCisgICAgICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdPcHRpb25FcnJvcihtc2cpCisKKyAgICBkZWYgX2xvYWRfY29tcGlsZXJzKHNlbGYsIGNvbXBpbGVycyk6CisgICAgICAgIGNvbXBpbGVycyA9IHNwbGl0X211bHRpbGluZShjb21waWxlcnMpCisgICAgICAgIGlmIGlzaW5zdGFuY2UoY29tcGlsZXJzLCBzdHIpOgorICAgICAgICAgICAgY29tcGlsZXJzID0gW2NvbXBpbGVyc10KKyAgICAgICAgZm9yIGNvbXBpbGVyIGluIGNvbXBpbGVyczoKKyAgICAgICAgICAgIHNldF9jb21waWxlcihjb21waWxlci5zdHJpcCgpKQorCisgICAgZGVmIF9sb2FkX2NvbW1hbmRzKHNlbGYsIGNvbW1hbmRzKToKKyAgICAgICAgY29tbWFuZHMgPSBzcGxpdF9tdWx0aWxpbmUoY29tbWFuZHMpCisgICAgICAgIGlmIGlzaW5zdGFuY2UoY29tbWFuZHMsIHN0cik6CisgICAgICAgICAgICBjb21tYW5kcyA9IFtjb21tYW5kc10KKyAgICAgICAgZm9yIGNvbW1hbmQgaW4gY29tbWFuZHM6CisgICAgICAgICAgICBzZXRfY29tbWFuZChjb21tYW5kLnN0cmlwKCkpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2NyZWF0ZS5weSBiL0xpYi9wYWNrYWdpbmcvY3JlYXRlLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVhYmU0N2IKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2NyZWF0ZS5weQpAQCAtMCwwICsxLDY3NiBAQAorIiIiSW50ZXJhY3RpdmUgaGVscGVyIHVzZWQgdG8gY3JlYXRlIGEgc2V0dXAuY2ZnIGZpbGUuCisKK1RoaXMgc2NyaXB0IHdpbGwgZ2VuZXJhdGUgYSBwYWNrYWdpbmcgY29uZmlndXJhdGlvbiBmaWxlIGJ5IGxvb2tpbmcgYXQKK3RoZSBjdXJyZW50IGRpcmVjdG9yeSBhbmQgYXNraW5nIHRoZSB1c2VyIHF1ZXN0aW9ucy4gIEl0IGlzIGludGVuZGVkIHRvCitiZSBjYWxsZWQgYXMgKnB5c2V0dXAgY3JlYXRlKi4KKyIiIgorCisjICBPcmlnaW5hbCBjb2RlIGJ5IFNlYW4gUmVpZnNjaG5laWRlciA8amFmb0B0dW1teS5jb20+CisKKyMgIE9yaWdpbmFsIFRPRE8gbGlzdDoKKyMgIExvb2sgZm9yIGEgbGljZW5zZSBmaWxlIGFuZCBhdXRvbWF0aWNhbGx5IGFkZCB0aGUgY2F0ZWdvcnkuCisjICBXaGVuIGEgLmMgZmlsZSBpcyBmb3VuZCBkdXJpbmcgdGhlIHdhbGssIGNhbiB3ZSBhZGQgaXQgYXMgYW4gZXh0ZW5zaW9uPworIyAgQXNrIGlmIHRoZXJlIGlzIGEgbWFpbnRhaW5lciBkaWZmZXJlbnQgdGhhdCB0aGUgYXV0aG9yCisjICBBc2sgZm9yIHRoZSBwbGF0Zm9ybSAoY2FuIHdlIGRldGVjdCB0aGlzIHZpYSAiaW1wb3J0IHdpbjMyIiBvciBzb21ldGhpbmc/KQorIyAgQXNrIGZvciB0aGUgZGVwZW5kZW5jaWVzLgorIyAgQXNrIGZvciB0aGUgUmVxdWlyZXMtRGlzdAorIyAgQXNrIGZvciB0aGUgUHJvdmlkZXMtRGlzdAorIyAgQXNrIGZvciBhIGRlc2NyaXB0aW9uCisjICBEZXRlY3Qgc2NyaXB0cyAobm90IHN1cmUgaG93LiAgIyEgb3V0c2lkZSBvZiBwYWNrYWdlPykKKworaW1wb3J0IG9zCitpbXBvcnQgcmUKK2ltcG9ydCBpbXAKK2ltcG9ydCBzeXMKK2ltcG9ydCBnbG9iCitpbXBvcnQgc2h1dGlsCitpbXBvcnQgc3lzY29uZmlnCitmcm9tIGhhc2hsaWIgaW1wb3J0IG1kNQorZnJvbSB0ZXh0d3JhcCBpbXBvcnQgZGVkZW50Citmcm9tIHRva2VuaXplIGltcG9ydCBkZXRlY3RfZW5jb2RpbmcKK2Zyb20gY29uZmlncGFyc2VyIGltcG9ydCBSYXdDb25maWdQYXJzZXIKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorIyBpbXBvcnRpbmcgdGhpcyB3aXRoIGFuIHVuZGVyc2NvcmUgYXMgaXQgc2hvdWxkIGJlIHJlcGxhY2VkIGJ5IHRoZQorIyBkaWN0IGZvcm0gb3IgYW5vdGhlciBzdHJ1Y3R1cmVzIGZvciBhbGwgcHVycG9zZXMKK2Zyb20gcGFja2FnaW5nLl90cm92ZSBpbXBvcnQgYWxsX2NsYXNzaWZpZXJzIGFzIF9DTEFTU0lGSUVSU19MSVNUCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBpc192YWxpZF92ZXJzaW9uCisKK19GSUxFTkFNRSA9ICdzZXR1cC5jZmcnCitfREVGQVVMVF9DRkcgPSAnLnB5cGtnY3JlYXRlJyAgIyBGSVhNRSB1c2UgYSBzZWN0aW9uIGluIHVzZXIgLnB5ZGlzdHV0aWxzLmNmZworCitfaGVscHRleHQgPSB7CisgICAgJ25hbWUnOiAnJycKK1RoZSBuYW1lIG9mIHRoZSBwcm9qZWN0IHRvIGJlIHBhY2thZ2VkLCB1c3VhbGx5IGEgc2luZ2xlIHdvcmQgY29tcG9zZWQKK29mIGxvd2VyLWNhc2UgY2hhcmFjdGVycyBzdWNoIGFzICJ6b3BlLmludGVyZmFjZSIsICJzcWxhbGNoZW15IiBvcgorIkNoZXJyeVB5Ii4KKycnJywKKyAgICAndmVyc2lvbic6ICcnJworVmVyc2lvbiBudW1iZXIgb2YgdGhlIHNvZnR3YXJlLCB0eXBpY2FsbHkgMiBvciAzIG51bWJlcnMgc2VwYXJhdGVkIGJ5Citkb3RzIHN1Y2ggYXMgIjEuMCIsICIwLjZiMyIsIG9yICIzLjIuMSIuICAiMC4xLjAiIGlzIHJlY29tbWVuZGVkIGZvcgoraW5pdGlhbCBkZXZlbG9wbWVudC4KKycnJywKKyAgICAnc3VtbWFyeSc6ICcnJworQSBvbmUtbGluZSBzdW1tYXJ5IG9mIHdoYXQgdGhpcyBwcm9qZWN0IGlzIG9yIGRvZXMsIHR5cGljYWxseSBhIHNlbnRlbmNlCis4MCBjaGFyYWN0ZXJzIG9yIGxlc3MgaW4gbGVuZ3RoLgorJycnLAorICAgICdhdXRob3InOiAnJycKK1RoZSBmdWxsIG5hbWUgb2YgdGhlIGF1dGhvciAodHlwaWNhbGx5IHlvdSkuCisnJycsCisgICAgJ2F1dGhvcl9lbWFpbCc6ICcnJworRW1haWwgYWRkcmVzcyBvZiB0aGUgcHJvamVjdCBhdXRob3IuCisnJycsCisgICAgJ2RvX2NsYXNzaWZpZXInOiAnJycKK1Ryb3ZlIGNsYXNzaWZpZXJzIGFyZSBvcHRpb25hbCBpZGVudGlmaWVycyB0aGF0IGFsbG93IHlvdSB0byBzcGVjaWZ5IHRoZQoraW50ZW5kZWQgYXVkaWVuY2UgYnkgc2F5aW5nIHRoaW5ncyBsaWtlICJCZXRhIHNvZnR3YXJlIHdpdGggYSB0ZXh0IFVJCitmb3IgTGludXggdW5kZXIgdGhlIFBTRiBsaWNlbnNlIi4gIEhvd2V2ZXIsIHRoaXMgY2FuIGJlIGEgc29tZXdoYXQKK2ludm9sdmVkIHByb2Nlc3MuCisnJycsCisgICAgJ3BhY2thZ2VzJzogJycnCitQeXRob24gcGFja2FnZXMgaW5jbHVkZWQgaW4gdGhlIHByb2plY3QuCisnJycsCisgICAgJ21vZHVsZXMnOiAnJycKK1B1cmUgUHl0aG9uIG1vZHVsZXMgaW5jbHVkZWQgaW4gdGhlIHByb2plY3QuCisnJycsCisgICAgJ2V4dHJhX2ZpbGVzJzogJycnCitZb3UgY2FuIHByb3ZpZGUgZXh0cmEgZmlsZXMvZGlycyBjb250YWluZWQgaW4geW91ciBwcm9qZWN0LgorSXQgaGFzIHRvIGZvbGxvdyB0aGUgdGVtcGxhdGUgc3ludGF4LiBYWFggYWRkIGhlbHAgaGVyZS4KKycnJywKKworICAgICdob21lX3BhZ2UnOiAnJycKK1RoZSBob21lIHBhZ2UgZm9yIHRoZSBwcm9qZWN0LCB0eXBpY2FsbHkgYSBwdWJsaWMgV2ViIHBhZ2UuCisnJycsCisgICAgJ3Ryb3ZlX2xpY2Vuc2UnOiAnJycKK09wdGlvbmFsbHkgeW91IGNhbiBzcGVjaWZ5IGEgbGljZW5zZS4gIFR5cGUgYSBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIGEKK2NvbW1vbiBsaWNlbnNlLCBhbmQgdGhlbiB5b3UgY2FuIHNlbGVjdCBhIGxpc3Qgb2YgbGljZW5zZSBzcGVjaWZpZXJzLgorJycnLAorICAgICd0cm92ZV9nZW5lcmljJzogJycnCitPcHRpb25hbGx5LCB5b3UgY2FuIHNldCBvdGhlciB0cm92ZSBpZGVudGlmaWVycyBmb3IgdGhpbmdzIHN1Y2ggYXMgdGhlCitodW1hbiBsYW5ndWFnZSwgcHJvZ3JhbW1pbmcgbGFuZ3VhZ2UsIHVzZXIgaW50ZXJmYWNlLCBldGMuCisnJycsCisgICAgJ3NldHVwLnB5IGZvdW5kJzogJycnCitUaGUgc2V0dXAucHkgc2NyaXB0IHdpbGwgYmUgZXhlY3V0ZWQgdG8gcmV0cmlldmUgdGhlIG1ldGFkYXRhLgorQW4gaW50ZXJhY3RpdmUgaGVscGVyIHdpbGwgYmUgcnVuIGlmIHlvdSBhbnN3ZXIgIm4iLAorJycnLAorfQorCitQUk9KRUNUX01BVFVSSVRZID0gWydEZXZlbG9wbWVudCBTdGF0dXMgOjogMSAtIFBsYW5uaW5nJywKKyAgICAgICAgICAgICAgICAgICAgJ0RldmVsb3BtZW50IFN0YXR1cyA6OiAyIC0gUHJlLUFscGhhJywKKyAgICAgICAgICAgICAgICAgICAgJ0RldmVsb3BtZW50IFN0YXR1cyA6OiAzIC0gQWxwaGEnLAorICAgICAgICAgICAgICAgICAgICAnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDQgLSBCZXRhJywKKyAgICAgICAgICAgICAgICAgICAgJ0RldmVsb3BtZW50IFN0YXR1cyA6OiA1IC0gUHJvZHVjdGlvbi9TdGFibGUnLAorICAgICAgICAgICAgICAgICAgICAnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDYgLSBNYXR1cmUnLAorICAgICAgICAgICAgICAgICAgICAnRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDcgLSBJbmFjdGl2ZSddCisKKyMgWFhYIGV2ZXJ5dGhpbmcgbmVlZHMgZG9jc3RyaW5ncyBhbmQgdGVzdHMgKGJvdGggbG93LWxldmVsIHRlc3RzIG9mIHZhcmlvdXMKKyMgbWV0aG9kcyBhbmQgZnVuY3Rpb25hbCB0ZXN0cyBvZiBydW5uaW5nIHRoZSBzY3JpcHQpCisKKworZGVmIGxvYWRfc2V0dXAoKToKKyAgICAiIiJydW4gdGhlIHNldHVwIHNjcmlwdCAoaS5lIHRoZSBzZXR1cC5weSBmaWxlKQorCisgICAgVGhpcyBmdW5jdGlvbiBsb2FkIHRoZSBzZXR1cCBmaWxlIGluIGFsbCBjYXNlcyAoZXZlbiBpZiBpdCBoYXZlIGFscmVhZHkKKyAgICBiZWVuIGxvYWRlZCBiZWZvcmUsIGJlY2F1c2Ugd2UgYXJlIG1vbmtleSBwYXRjaGluZyBpdHMgc2V0dXAgZnVuY3Rpb24gd2l0aAorICAgIGEgcGFydGljdWxhciBvbmUiIiIKKyAgICB3aXRoIG9wZW4oInNldHVwLnB5IiwgInJiIikgYXMgZjoKKyAgICAgICAgZW5jb2RpbmcsIGxpbmVzID0gZGV0ZWN0X2VuY29kaW5nKGYucmVhZGxpbmUpCisgICAgd2l0aCBvcGVuKCJzZXR1cC5weSIsIGVuY29kaW5nPWVuY29kaW5nKSBhcyBmOgorICAgICAgICBpbXAubG9hZF9tb2R1bGUoInNldHVwIiwgZiwgInNldHVwLnB5IiwgKCIucHkiLCAiciIsIGltcC5QWV9TT1VSQ0UpKQorCisKK2RlZiBhc2tfeW4ocXVlc3Rpb24sIGRlZmF1bHQ9Tm9uZSwgaGVscHRleHQ9Tm9uZSk6CisgICAgcXVlc3Rpb24gKz0gJyAoeS9uKScKKyAgICB3aGlsZSBUcnVlOgorICAgICAgICBhbnN3ZXIgPSBhc2socXVlc3Rpb24sIGRlZmF1bHQsIGhlbHB0ZXh0LCByZXF1aXJlZD1UcnVlKQorICAgICAgICBpZiBhbnN3ZXIgYW5kIGFuc3dlclswXS5sb3dlcigpIGluICgneScsICduJyk6CisgICAgICAgICAgICByZXR1cm4gYW5zd2VyWzBdLmxvd2VyKCkKKworICAgICAgICBsb2dnZXIuZXJyb3IoJ1lvdSBtdXN0IHNlbGVjdCAiWSIgb3IgIk4iLicpCisKKworIyBYWFggdXNlIHV0aWwuYXNrCisjIEZJWE1FOiBpZiBwcm9tcHQgZW5kcyB3aXRoICc/JywgZG9uJ3QgYWRkICc6JworCisKK2RlZiBhc2socXVlc3Rpb24sIGRlZmF1bHQ9Tm9uZSwgaGVscHRleHQ9Tm9uZSwgcmVxdWlyZWQ9VHJ1ZSwKKyAgICAgICAgbGVuZ3RoeT1GYWxzZSwgbXVsdGlsaW5lPUZhbHNlKToKKyAgICBwcm9tcHQgPSAnJXM6ICcgJSAocXVlc3Rpb24sKQorICAgIGlmIGRlZmF1bHQ6CisgICAgICAgIHByb21wdCA9ICclcyBbJXNdOiAnICUgKHF1ZXN0aW9uLCBkZWZhdWx0KQorICAgICAgICBpZiBkZWZhdWx0IGFuZCBsZW4ocXVlc3Rpb24pICsgbGVuKGRlZmF1bHQpID4gNzA6CisgICAgICAgICAgICBwcm9tcHQgPSAnJXNcbiAgICBbJXNdOiAnICUgKHF1ZXN0aW9uLCBkZWZhdWx0KQorICAgIGlmIGxlbmd0aHkgb3IgbXVsdGlsaW5lOgorICAgICAgICBwcm9tcHQgKz0gJ1xuICAgPiAnCisKKyAgICBpZiBub3QgaGVscHRleHQ6CisgICAgICAgIGhlbHB0ZXh0ID0gJ05vIGFkZGl0aW9uYWwgaGVscCBhdmFpbGFibGUuJworCisgICAgaGVscHRleHQgPSBoZWxwdGV4dC5zdHJpcCgiXG4iKQorCisgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgbGluZSA9IGlucHV0KHByb21wdCkuc3RyaXAoKQorICAgICAgICBpZiBsaW5lID09ICc/JzoKKyAgICAgICAgICAgIHByaW50KCc9JyAqIDcwKQorICAgICAgICAgICAgcHJpbnQoaGVscHRleHQpCisgICAgICAgICAgICBwcmludCgnPScgKiA3MCkKKyAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgIGlmIGRlZmF1bHQgYW5kIG5vdCBsaW5lOgorICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHQKKyAgICAgICAgaWYgbm90IGxpbmUgYW5kIHJlcXVpcmVkOgorICAgICAgICAgICAgcHJpbnQoJyonICogNzApCisgICAgICAgICAgICBwcmludCgnVGhpcyB2YWx1ZSBjYW5ub3QgYmUgZW1wdHkuJykKKyAgICAgICAgICAgIHByaW50KCc9PT09PT09PT09PT09PT09PT09PT09PT09PT0nKQorICAgICAgICAgICAgaWYgaGVscHRleHQ6CisgICAgICAgICAgICAgICAgcHJpbnQoaGVscHRleHQpCisgICAgICAgICAgICBwcmludCgnKicgKiA3MCkKKyAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgIHJldHVybiBsaW5lCisKKworZGVmIGNvbnZlcnRfeW5fdG9fYm9vbCh5biwgeWVzPVRydWUsIG5vPUZhbHNlKToKKyAgICAiIiJDb252ZXJ0IGEgeS95ZXMgb3Igbi9ubyB0byBhIGJvb2xlYW4gdmFsdWUuIiIiCisgICAgaWYgeW4ubG93ZXIoKS5zdGFydHN3aXRoKCd5Jyk6CisgICAgICAgIHJldHVybiB5ZXMKKyAgICBlbHNlOgorICAgICAgICByZXR1cm4gbm8KKworCitkZWYgX2J1aWxkX2NsYXNzaWZpZXJzX2RpY3QoY2xhc3NpZmllcnMpOgorICAgIGQgPSB7fQorICAgIGZvciBrZXkgaW4gY2xhc3NpZmllcnM6CisgICAgICAgIHN1YmRpY3QgPSBkCisgICAgICAgIGZvciBzdWJrZXkgaW4ga2V5LnNwbGl0KCcgOjogJyk6CisgICAgICAgICAgICBpZiBzdWJrZXkgbm90IGluIHN1YmRpY3Q6CisgICAgICAgICAgICAgICAgc3ViZGljdFtzdWJrZXldID0ge30KKyAgICAgICAgICAgIHN1YmRpY3QgPSBzdWJkaWN0W3N1YmtleV0KKyAgICByZXR1cm4gZAorCitDTEFTU0lGSUVSUyA9IF9idWlsZF9jbGFzc2lmaWVyc19kaWN0KF9DTEFTU0lGSUVSU19MSVNUKQorCisKK2RlZiBfYnVpbGRfbGljZW5jZXMoY2xhc3NpZmllcnMpOgorICAgIHJlcyA9IFtdCisgICAgZm9yIGluZGV4LCBpdGVtIGluIGVudW1lcmF0ZShjbGFzc2lmaWVycyk6CisgICAgICAgIGlmIG5vdCBpdGVtLnN0YXJ0c3dpdGgoJ0xpY2Vuc2UgOjogJyk6CisgICAgICAgICAgICBjb250aW51ZQorICAgICAgICByZXMuYXBwZW5kKChpbmRleCwgaXRlbS5zcGxpdCgnIDo6ICcpWy0xXS5sb3dlcigpKSkKKyAgICByZXR1cm4gcmVzCisKK0xJQ0VOQ0VTID0gX2J1aWxkX2xpY2VuY2VzKF9DTEFTU0lGSUVSU19MSVNUKQorCisKK2NsYXNzIE1haW5Qcm9ncmFtOgorICAgICIiIk1ha2UgYSBwcm9qZWN0IHNldHVwIGNvbmZpZ3VyYXRpb24gZmlsZSAoc2V0dXAuY2ZnKS4iIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgc2VsZi5jb25maWdwYXJzZXIgPSBOb25lCisgICAgICAgIHNlbGYuY2xhc3NpZmllcnMgPSBzZXQoKQorICAgICAgICBzZWxmLmRhdGEgPSB7J25hbWUnOiAnJywKKyAgICAgICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMC4wJywKKyAgICAgICAgICAgICAgICAgICAgICdjbGFzc2lmaWVyJzogc2VsZi5jbGFzc2lmaWVycywKKyAgICAgICAgICAgICAgICAgICAgICdwYWNrYWdlcyc6IFtdLAorICAgICAgICAgICAgICAgICAgICAgJ21vZHVsZXMnOiBbXSwKKyAgICAgICAgICAgICAgICAgICAgICdwbGF0Zm9ybSc6IFtdLAorICAgICAgICAgICAgICAgICAgICAgJ3Jlc291cmNlcyc6IFtdLAorICAgICAgICAgICAgICAgICAgICAgJ2V4dHJhX2ZpbGVzJzogW10sCisgICAgICAgICAgICAgICAgICAgICAnc2NyaXB0cyc6IFtdLAorICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICBzZWxmLl9sb2FkX2RlZmF1bHRzKCkKKworICAgIGRlZiBfX2NhbGxfXyhzZWxmKToKKyAgICAgICAgc2V0dXBjZmdfZGVmaW5lZCA9IEZhbHNlCisgICAgICAgIGlmIHNlbGYuaGFzX3NldHVwX3B5KCkgYW5kIHNlbGYuX3Byb21wdF91c2VyX2Zvcl9jb252ZXJzaW9uKCk6CisgICAgICAgICAgICBzZXR1cGNmZ19kZWZpbmVkID0gc2VsZi5jb252ZXJ0X3B5X3RvX2NmZygpCisgICAgICAgIGlmIG5vdCBzZXR1cGNmZ19kZWZpbmVkOgorICAgICAgICAgICAgc2VsZi5kZWZpbmVfY2ZnX3ZhbHVlcygpCisgICAgICAgIHNlbGYuX3dyaXRlX2NmZygpCisKKyAgICBkZWYgaGFzX3NldHVwX3B5KHNlbGYpOgorICAgICAgICAiIiJUZXN0IGZvciB0aGUgZXhpc3RlbmNlIG9mIGEgc2V0dXAucHkgZmlsZS4iIiIKKyAgICAgICAgcmV0dXJuIG9zLnBhdGguZXhpc3RzKCdzZXR1cC5weScpCisKKyAgICBkZWYgZGVmaW5lX2NmZ192YWx1ZXMoc2VsZik6CisgICAgICAgIHNlbGYuaW5zcGVjdCgpCisgICAgICAgIHNlbGYucXVlcnlfdXNlcigpCisKKyAgICBkZWYgX2xvb2t1cF9vcHRpb24oc2VsZiwga2V5KToKKyAgICAgICAgaWYgbm90IHNlbGYuY29uZmlncGFyc2VyLmhhc19vcHRpb24oJ0RFRkFVTFQnLCBrZXkpOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgcmV0dXJuIHNlbGYuY29uZmlncGFyc2VyLmdldCgnREVGQVVMVCcsIGtleSkKKworICAgIGRlZiBfbG9hZF9kZWZhdWx0cyhzZWxmKToKKyAgICAgICAgIyBMb2FkIGRlZmF1bHQgdmFsdWVzIGZyb20gYSB1c2VyIGNvbmZpZ3VyYXRpb24gZmlsZQorICAgICAgICBzZWxmLmNvbmZpZ3BhcnNlciA9IFJhd0NvbmZpZ1BhcnNlcigpCisgICAgICAgICMgVE9ETyByZXBsYWNlIHdpdGggc2VjdGlvbiBpbiBkaXN0dXRpbHMgY29uZmlnIGZpbGUKKyAgICAgICAgZGVmYXVsdF9jZmcgPSBvcy5wYXRoLmV4cGFuZHVzZXIob3MucGF0aC5qb2luKCd+JywgX0RFRkFVTFRfQ0ZHKSkKKyAgICAgICAgc2VsZi5jb25maWdwYXJzZXIucmVhZChkZWZhdWx0X2NmZykKKyAgICAgICAgc2VsZi5kYXRhWydhdXRob3InXSA9IHNlbGYuX2xvb2t1cF9vcHRpb24oJ2F1dGhvcicpCisgICAgICAgIHNlbGYuZGF0YVsnYXV0aG9yX2VtYWlsJ10gPSBzZWxmLl9sb29rdXBfb3B0aW9uKCdhdXRob3JfZW1haWwnKQorCisgICAgZGVmIF9wcm9tcHRfdXNlcl9mb3JfY29udmVyc2lvbihzZWxmKToKKyAgICAgICAgIyBQcm9tcHQgdGhlIHVzZXIgYWJvdXQgd2hldGhlciB0aGV5IHdvdWxkIGxpa2UgdG8gdXNlIHRoZSBzZXR1cC5weQorICAgICAgICAjIGNvbnZlcnNpb24gdXRpbGl0eSB0byBnZW5lcmF0ZSBhIHNldHVwLmNmZyBvciBnZW5lcmF0ZSB0aGUgc2V0dXAuY2ZnCisgICAgICAgICMgZnJvbSBzY3JhdGNoCisgICAgICAgIGFuc3dlciA9IGFza195bigoJ0EgbGVnYWN5IHNldHVwLnB5IGhhcyBiZWVuIGZvdW5kLlxuJworICAgICAgICAgICAgICAgICAgICAgICAgICdXb3VsZCB5b3UgbGlrZSB0byBjb252ZXJ0IGl0IHRvIGEgc2V0dXAuY2ZnPycpLAorICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdD0ieSIsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwdGV4dD1faGVscHRleHRbJ3NldHVwLnB5IGZvdW5kJ10pCisgICAgICAgIHJldHVybiBjb252ZXJ0X3luX3RvX2Jvb2woYW5zd2VyKQorCisgICAgZGVmIF9kb3R0ZWRfcGFja2FnZXMoc2VsZiwgZGF0YSk6CisgICAgICAgIHBhY2thZ2VzID0gc29ydGVkKGRhdGEpCisgICAgICAgIG1vZGlmaWVkX3BrZ3MgPSBbXQorICAgICAgICBmb3IgcGtnIGluIHBhY2thZ2VzOgorICAgICAgICAgICAgcGtnID0gcGtnLmxzdHJpcCgnLi8nKQorICAgICAgICAgICAgcGtnID0gcGtnLnJlcGxhY2UoJy8nLCAnLicpCisgICAgICAgICAgICBtb2RpZmllZF9wa2dzLmFwcGVuZChwa2cpCisgICAgICAgIHJldHVybiBtb2RpZmllZF9wa2dzCisKKyAgICBkZWYgX3dyaXRlX2NmZyhzZWxmKToKKyAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoX0ZJTEVOQU1FKToKKyAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKCclcy5vbGQnICUgX0ZJTEVOQU1FKToKKyAgICAgICAgICAgICAgICBtZXNzYWdlID0gKCJFUlJPUjogJShuYW1lKXMub2xkIGJhY2t1cCBleGlzdHMsIHBsZWFzZSBjaGVjayAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAidGhhdCBjdXJyZW50ICUobmFtZSlzIGlzIGNvcnJlY3QgYW5kIHJlbW92ZSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiJShuYW1lKXMub2xkIiAlIHsnbmFtZSc6IF9GSUxFTkFNRX0pCisgICAgICAgICAgICAgICAgbG9nZ2VyLmVycm9yKG1lc3NhZ2UpCisgICAgICAgICAgICAgICAgcmV0dXJuCisgICAgICAgICAgICBzaHV0aWwubW92ZShfRklMRU5BTUUsICclcy5vbGQnICUgX0ZJTEVOQU1FKQorCisgICAgICAgIHdpdGggb3BlbihfRklMRU5BTUUsICd3JywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZnA6CisgICAgICAgICAgICBmcC53cml0ZSgnW21ldGFkYXRhXVxuJykKKyAgICAgICAgICAgICMgVE9ETyB1c2UgbWV0YWRhdGEgbW9kdWxlIGluc3RlYWQgb2YgaGFyZC1jb2RpbmcgZmllbGQtc3BlY2lmaWMKKyAgICAgICAgICAgICMgYmVoYXZpb3IgaGVyZQorCisgICAgICAgICAgICAjIHNpbXBsZSBzdHJpbmcgZW50cmllcworICAgICAgICAgICAgZm9yIG5hbWUgaW4gKCduYW1lJywgJ3ZlcnNpb24nLCAnc3VtbWFyeScsICdkb3dubG9hZF91cmwnKToKKyAgICAgICAgICAgICAgICBmcC53cml0ZSgnJXMgPSAlc1xuJyAlIChuYW1lLCBzZWxmLmRhdGEuZ2V0KG5hbWUsICdVTktOT1dOJykpKQorCisgICAgICAgICAgICAjIG9wdGlvbmFsIHN0cmluZyBlbnRyaWVzCisgICAgICAgICAgICBpZiAna2V5d29yZHMnIGluIHNlbGYuZGF0YSBhbmQgc2VsZi5kYXRhWydrZXl3b3JkcyddOgorICAgICAgICAgICAgICAgIGZwLndyaXRlKCdrZXl3b3JkcyA9ICVzXG4nICUgJyAnLmpvaW4oc2VsZi5kYXRhWydrZXl3b3JkcyddKSkKKyAgICAgICAgICAgIGZvciBuYW1lIGluICgnaG9tZV9wYWdlJywgJ2F1dGhvcicsICdhdXRob3JfZW1haWwnLAorICAgICAgICAgICAgICAgICAgICAgICAgICdtYWludGFpbmVyJywgJ21haW50YWluZXJfZW1haWwnLCAnZGVzY3JpcHRpb24tZmlsZScpOgorICAgICAgICAgICAgICAgIGlmIG5hbWUgaW4gc2VsZi5kYXRhIGFuZCBzZWxmLmRhdGFbbmFtZV06CisgICAgICAgICAgICAgICAgICAgIGZwLndyaXRlKCclcyA9ICVzXG4nICUgKG5hbWUsIHNlbGYuZGF0YVtuYW1lXSkpCisgICAgICAgICAgICBpZiAnZGVzY3JpcHRpb24nIGluIHNlbGYuZGF0YToKKyAgICAgICAgICAgICAgICBmcC53cml0ZSgKKyAgICAgICAgICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uID0gJXNcbicKKyAgICAgICAgICAgICAgICAgICAgJSAnXG4gICAgICAgfCcuam9pbihzZWxmLmRhdGFbJ2Rlc2NyaXB0aW9uJ10uc3BsaXQoJ1xuJykpKQorCisgICAgICAgICAgICAjIG11bHRpcGxlIHVzZSBzdHJpbmcgZW50cmllcworICAgICAgICAgICAgZm9yIG5hbWUgaW4gKCdwbGF0Zm9ybScsICdzdXBwb3J0ZWQtcGxhdGZvcm0nLCAnY2xhc3NpZmllcicsCisgICAgICAgICAgICAgICAgICAgICAgICAgJ3JlcXVpcmVzLWRpc3QnLCAncHJvdmlkZXMtZGlzdCcsICdvYnNvbGV0ZXMtZGlzdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgJ3JlcXVpcmVzLWV4dGVybmFsJyk6CisgICAgICAgICAgICAgICAgaWYgbm90KG5hbWUgaW4gc2VsZi5kYXRhIGFuZCBzZWxmLmRhdGFbbmFtZV0pOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGZwLndyaXRlKCclcyA9ICcgJSBuYW1lKQorICAgICAgICAgICAgICAgIGZwLndyaXRlKCcnLmpvaW4oJyAgICAlc1xuJyAlIHZhbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIHZhbCBpbiBzZWxmLmRhdGFbbmFtZV0pLmxzdHJpcCgpKQorICAgICAgICAgICAgZnAud3JpdGUoJ1xuW2ZpbGVzXVxuJykKKyAgICAgICAgICAgIGZvciBuYW1lIGluICgncGFja2FnZXMnLCAnbW9kdWxlcycsICdzY3JpcHRzJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAncGFja2FnZV9kYXRhJywgJ2V4dHJhX2ZpbGVzJyk6CisgICAgICAgICAgICAgICAgaWYgbm90KG5hbWUgaW4gc2VsZi5kYXRhIGFuZCBzZWxmLmRhdGFbbmFtZV0pOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGZwLndyaXRlKCclcyA9ICVzXG4nCisgICAgICAgICAgICAgICAgICAgICAgICAgJSAobmFtZSwgJ1xuICAgICcuam9pbihzZWxmLmRhdGFbbmFtZV0pLnN0cmlwKCkpKQorICAgICAgICAgICAgZnAud3JpdGUoJ1xucmVzb3VyY2VzID1cbicpCisgICAgICAgICAgICBmb3Igc3JjLCBkZXN0IGluIHNlbGYuZGF0YVsncmVzb3VyY2VzJ106CisgICAgICAgICAgICAgICAgZnAud3JpdGUoJyAgICAlcyA9ICVzXG4nICUgKHNyYywgZGVzdCkpCisgICAgICAgICAgICBmcC53cml0ZSgnXG4nKQorCisgICAgICAgIG9zLmNobW9kKF9GSUxFTkFNRSwgMG82NDQpCisgICAgICAgIGxvZ2dlci5pbmZvKCdXcm90ZSAiJXMiLicgJSBfRklMRU5BTUUpCisKKyAgICBkZWYgY29udmVydF9weV90b19jZmcoc2VsZik6CisgICAgICAgICIiIkdlbmVyYXRlIGEgc2V0dXAuY2ZnIGZyb20gYW4gZXhpc3Rpbmcgc2V0dXAucHkuCisKKyAgICAgICAgSXQgb25seSBleHBvcnRzIHRoZSBkaXN0dXRpbHMgbWV0YWRhdGEgKHNldHVwdG9vbHMgc3BlY2lmaWMgbWV0YWRhdGEKKyAgICAgICAgaXMgbm90IGN1cnJlbnRseSBzdXBwb3J0ZWQpLgorICAgICAgICAiIiIKKyAgICAgICAgZGF0YSA9IHNlbGYuZGF0YQorCisgICAgICAgIGRlZiBzZXR1cF9tb2NrKCoqYXR0cnMpOgorICAgICAgICAgICAgIiIiTW9jayB0aGUgc2V0dXAoKiphdHRycykgaW4gb3JkZXIgdG8gcmV0cmlldmUgbWV0YWRhdGEuIiIiCisKKyAgICAgICAgICAgICMgVE9ETyB1c2UgY29uZmlnIGFuZCBtZXRhZGF0YSBpbnN0ZWFkIG9mIERpc3RyaWJ1dGlvbgorICAgICAgICAgICAgZnJvbSBkaXN0dXRpbHMuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCisgICAgICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKGF0dHJzKQorICAgICAgICAgICAgZGlzdC5wYXJzZV9jb25maWdfZmlsZXMoKQorCisgICAgICAgICAgICAjIDEuIHJldHJpZXZlIG1ldGFkYXRhIGZpZWxkcyB0aGF0IGFyZSBxdWl0ZSBzaW1pbGFyIGluCisgICAgICAgICAgICAjIFBFUCAzMTQgYW5kIFBFUCAzNDUKKyAgICAgICAgICAgIGxhYmVscyA9ICgoJ25hbWUnLCkgKiAyLAorICAgICAgICAgICAgICAgICAgICAgICgndmVyc2lvbicsKSAqIDIsCisgICAgICAgICAgICAgICAgICAgICAgKCdhdXRob3InLCkgKiAyLAorICAgICAgICAgICAgICAgICAgICAgICgnYXV0aG9yX2VtYWlsJywpICogMiwKKyAgICAgICAgICAgICAgICAgICAgICAoJ21haW50YWluZXInLCkgKiAyLAorICAgICAgICAgICAgICAgICAgICAgICgnbWFpbnRhaW5lcl9lbWFpbCcsKSAqIDIsCisgICAgICAgICAgICAgICAgICAgICAgKCdkZXNjcmlwdGlvbicsICdzdW1tYXJ5JyksCisgICAgICAgICAgICAgICAgICAgICAgKCdsb25nX2Rlc2NyaXB0aW9uJywgJ2Rlc2NyaXB0aW9uJyksCisgICAgICAgICAgICAgICAgICAgICAgKCd1cmwnLCAnaG9tZV9wYWdlJyksCisgICAgICAgICAgICAgICAgICAgICAgKCdwbGF0Zm9ybXMnLCAncGxhdGZvcm0nKSwKKyAgICAgICAgICAgICAgICAgICAgICAjIGJhY2twb3J0IG9ubHkgZm9yIDIuNSsKKyAgICAgICAgICAgICAgICAgICAgICAoJ3Byb3ZpZGVzJywgJ3Byb3ZpZGVzLWRpc3QnKSwKKyAgICAgICAgICAgICAgICAgICAgICAoJ29ic29sZXRlcycsICdvYnNvbGV0ZXMtZGlzdCcpLAorICAgICAgICAgICAgICAgICAgICAgICgncmVxdWlyZXMnLCAncmVxdWlyZXMtZGlzdCcpKQorCisgICAgICAgICAgICBnZXQgPSBsYW1iZGEgbGFiOiBnZXRhdHRyKGRpc3QubWV0YWRhdGEsIGxhYi5yZXBsYWNlKCctJywgJ18nKSkKKyAgICAgICAgICAgIGRhdGEudXBkYXRlKChuZXcsIGdldChvbGQpKSBmb3Igb2xkLCBuZXcgaW4gbGFiZWxzIGlmIGdldChvbGQpKQorCisgICAgICAgICAgICAjIDIuIHJldHJpZXZlIGRhdGEgdGhhdCByZXF1aXJlcyBzcGVjaWFsIHByb2Nlc3NpbmcKKyAgICAgICAgICAgIGRhdGFbJ2NsYXNzaWZpZXInXS51cGRhdGUoZGlzdC5nZXRfY2xhc3NpZmllcnMoKSBvciBbXSkKKyAgICAgICAgICAgIGRhdGFbJ3NjcmlwdHMnXS5leHRlbmQoZGlzdC5zY3JpcHRzIG9yIFtdKQorICAgICAgICAgICAgZGF0YVsncGFja2FnZXMnXS5leHRlbmQoZGlzdC5wYWNrYWdlcyBvciBbXSkKKyAgICAgICAgICAgIGRhdGFbJ21vZHVsZXMnXS5leHRlbmQoZGlzdC5weV9tb2R1bGVzIG9yIFtdKQorICAgICAgICAgICAgIyAyLjEgZGF0YV9maWxlcyAtPiByZXNvdXJjZXMKKyAgICAgICAgICAgIGlmIGRpc3QuZGF0YV9maWxlczoKKyAgICAgICAgICAgICAgICBpZiAobGVuKGRpc3QuZGF0YV9maWxlcykgPCAyIG9yCisgICAgICAgICAgICAgICAgICAgIGlzaW5zdGFuY2UoZGlzdC5kYXRhX2ZpbGVzWzFdLCBzdHIpKToKKyAgICAgICAgICAgICAgICAgICAgZGlzdC5kYXRhX2ZpbGVzID0gWygnJywgZGlzdC5kYXRhX2ZpbGVzKV0KKyAgICAgICAgICAgICAgICAjIGFkZCB0b2tlbnMgaW4gdGhlIGRlc3RpbmF0aW9uIHBhdGhzCisgICAgICAgICAgICAgICAgdmFycyA9IHsnZGlzdHJpYnV0aW9uLm5hbWUnOiBkYXRhWyduYW1lJ119CisgICAgICAgICAgICAgICAgcGF0aF90b2tlbnMgPSBzeXNjb25maWcuZ2V0X3BhdGhzKHZhcnM9dmFycykuaXRlbXMoKQorICAgICAgICAgICAgICAgICMgc29ydCB0b2tlbnMgdG8gdXNlIHRoZSBsb25nZXN0IG9uZSBmaXJzdAorICAgICAgICAgICAgICAgIHBhdGhfdG9rZW5zID0gc29ydGVkKHBhdGhfdG9rZW5zLCBrZXk9bGFtYmRhIHg6IGxlbih4WzFdKSkKKyAgICAgICAgICAgICAgICBmb3IgZGVzdCwgc3JjcyBpbiAoZGlzdC5kYXRhX2ZpbGVzIG9yIFtdKToKKyAgICAgICAgICAgICAgICAgICAgZGVzdCA9IG9zLnBhdGguam9pbihzeXMucHJlZml4LCBkZXN0KQorICAgICAgICAgICAgICAgICAgICBkZXN0ID0gZGVzdC5yZXBsYWNlKG9zLnBhdGguc2VwLCAnLycpCisgICAgICAgICAgICAgICAgICAgIGZvciB0b2ssIHBhdGggaW4gcGF0aF90b2tlbnM6CisgICAgICAgICAgICAgICAgICAgICAgICBwYXRoID0gcGF0aC5yZXBsYWNlKG9zLnBhdGguc2VwLCAnLycpCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBub3QgZGVzdC5zdGFydHN3aXRoKHBhdGgpOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgICAgICAgICAgICAgIGRlc3QgPSAoJ3slc30nICUgdG9rKSArIGRlc3RbbGVuKHBhdGgpOl0KKyAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVzID0gWygnLyAnLmpvaW4oc3JjLnJzcGxpdCgnLycsIDEpKSwgZGVzdCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBzcmMgaW4gc3Jjc10KKyAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFbJ3Jlc291cmNlcyddLmV4dGVuZChmaWxlcykKKworICAgICAgICAgICAgIyAyLjIgcGFja2FnZV9kYXRhIC0+IGV4dHJhX2ZpbGVzCisgICAgICAgICAgICBwYWNrYWdlX2RpcnMgPSBkaXN0LnBhY2thZ2VfZGlyIG9yIHt9CisgICAgICAgICAgICBmb3IgcGFja2FnZSwgZXh0cmFzIGluIGRpc3QucGFja2FnZV9kYXRhLml0ZW1zKCkgb3IgW106CisgICAgICAgICAgICAgICAgcGFja2FnZV9kaXIgPSBwYWNrYWdlX2RpcnMuZ2V0KHBhY2thZ2UsIHBhY2thZ2UpCisgICAgICAgICAgICAgICAgZm9yIGZpbGVfIGluIGV4dHJhczoKKyAgICAgICAgICAgICAgICAgICAgaWYgcGFja2FnZV9kaXI6CisgICAgICAgICAgICAgICAgICAgICAgICBmaWxlXyA9IHBhY2thZ2VfZGlyICsgJy8nICsgZmlsZV8KKyAgICAgICAgICAgICAgICAgICAgZGF0YVsnZXh0cmFfZmlsZXMnXS5hcHBlbmQoZmlsZV8pCisKKyAgICAgICAgICAgICMgVXNlIFJFQURNRSBmaWxlIGlmIGl0cyBjb250ZW50IGlzIHRoZSBkZXNjaXB0aW9uCisgICAgICAgICAgICBpZiAiZGVzY3JpcHRpb24iIGluIGRhdGE6CisgICAgICAgICAgICAgICAgcmVmID0gbWQ1KHJlLnN1YignXHMnLCAnJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZGF0YVsnZGVzY3JpcHRpb24nXSkubG93ZXIoKS5lbmNvZGUoKSkKKyAgICAgICAgICAgICAgICByZWYgPSByZWYuZGlnZXN0KCkKKyAgICAgICAgICAgICAgICBmb3IgcmVhZG1lIGluIGdsb2IuZ2xvYignUkVBRE1FKicpOgorICAgICAgICAgICAgICAgICAgICB3aXRoIG9wZW4ocmVhZG1lLCBlbmNvZGluZz0ndXRmLTgnKSBhcyBmcDoKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRzID0gZnAucmVhZCgpCisgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRzID0gcmUuc3ViKCdccycsICcnLCBjb250ZW50cy5sb3dlcigpKS5lbmNvZGUoKQorICAgICAgICAgICAgICAgICAgICB2YWwgPSBtZDUoY29udGVudHMpLmRpZ2VzdCgpCisgICAgICAgICAgICAgICAgICAgIGlmIHZhbCA9PSByZWY6CisgICAgICAgICAgICAgICAgICAgICAgICBkZWwgZGF0YVsnZGVzY3JpcHRpb24nXQorICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVsnZGVzY3JpcHRpb24tZmlsZSddID0gcmVhZG1lCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworCisgICAgICAgICMgYXBwbHkgbW9ua2V5IHBhdGNoIHRvIGRpc3R1dGlscyAodjEpIGFuZCBzZXR1cHRvb2xzIChpZiBuZWVkZWQpCisgICAgICAgICMgKGFib3J0IHRoZSBmZWF0dXJlIGlmIGRpc3R1dGlscyB2MSBoYXMgYmVlbiBraWxsZWQpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGZyb20gZGlzdHV0aWxzIGltcG9ydCBjb3JlCisgICAgICAgICAgICBjb3JlLnNldHVwICAjIG1ha2Ugc3VyZSBpdCdzIG5vdCBkMiBtYXNrZXJhZGluZyBhcyBkMQorICAgICAgICBleGNlcHQgKEltcG9ydEVycm9yLCBBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgc2F2ZWRfc2V0dXBzID0gWyhjb3JlLCBjb3JlLnNldHVwKV0KKyAgICAgICAgY29yZS5zZXR1cCA9IHNldHVwX21vY2sKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgaW1wb3J0IHNldHVwdG9vbHMKKyAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2F2ZWRfc2V0dXBzLmFwcGVuZCgoc2V0dXB0b29scywgc2V0dXB0b29scy5zZXR1cCkpCisgICAgICAgICAgICBzZXR1cHRvb2xzLnNldHVwID0gc2V0dXBfbW9jaworICAgICAgICAjIGdldCBtZXRhZGF0YSBieSBleGVjdXRpbmcgdGhlIHNldHVwLnB5IHdpdGggdGhlIHBhdGNoZWQgc2V0dXAoLi4uKQorICAgICAgICBzdWNjZXNzID0gRmFsc2UgICMgZm9yIHB5dGhvbiA8IDIuNAorICAgICAgICB0cnk6CisgICAgICAgICAgICBsb2FkX3NldHVwKCkKKyAgICAgICAgICAgIHN1Y2Nlc3MgPSBUcnVlCisgICAgICAgIGZpbmFsbHk6ICAjIHJldmVydCBtb25rZXkgcGF0Y2hlcworICAgICAgICAgICAgZm9yIHBhdGNoZWRfbW9kdWxlLCBvcmlnaW5hbF9zZXR1cCBpbiBzYXZlZF9zZXR1cHM6CisgICAgICAgICAgICAgICAgcGF0Y2hlZF9tb2R1bGUuc2V0dXAgPSBvcmlnaW5hbF9zZXR1cAorICAgICAgICBpZiBub3Qgc2VsZi5kYXRhOgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignVW5hYmxlIHRvIGxvYWQgbWV0YWRhdGEgZnJvbSBzZXR1cC5weScpCisgICAgICAgIHJldHVybiBzdWNjZXNzCisKKyAgICBkZWYgaW5zcGVjdChzZWxmKToKKyAgICAgICAgIiIiSW5zcGVjdCB0aGUgY3VycmVudCB3b3JraW5nIGRpcmV0b3J5IGZvciBhIG5hbWUgYW5kIHZlcnNpb24uCisKKyAgICAgICAgVGhpcyBpbmZvcm1hdGlvbiBpcyBoYXJ2ZXN0ZWQgaW4gd2hlcmUgdGhlIGRpcmVjdG9yeSBpcyBuYW1lZAorICAgICAgICBsaWtlIFtuYW1lXS1bdmVyc2lvbl0uCisgICAgICAgICIiIgorICAgICAgICBkaXJfbmFtZSA9IG9zLnBhdGguYmFzZW5hbWUob3MuZ2V0Y3dkKCkpCisgICAgICAgIHNlbGYuZGF0YVsnbmFtZSddID0gZGlyX25hbWUKKyAgICAgICAgbWF0Y2ggPSByZS5tYXRjaChyJyguKiktKFxkLispJywgZGlyX25hbWUpCisgICAgICAgIGlmIG1hdGNoOgorICAgICAgICAgICAgc2VsZi5kYXRhWyduYW1lJ10gPSBtYXRjaC5ncm91cCgxKQorICAgICAgICAgICAgc2VsZi5kYXRhWyd2ZXJzaW9uJ10gPSBtYXRjaC5ncm91cCgyKQorICAgICAgICAgICAgIyBUT0RPIG5lZWRzIHRlc3RpbmchCisgICAgICAgICAgICBpZiBub3QgaXNfdmFsaWRfdmVyc2lvbihzZWxmLmRhdGFbJ3ZlcnNpb24nXSk6CisgICAgICAgICAgICAgICAgbXNnID0gIkludmFsaWQgdmVyc2lvbiBkaXNjb3ZlcmVkOiAlcyIgJSBzZWxmLmRhdGFbJ3ZlcnNpb24nXQorICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IobXNnKQorCisgICAgZGVmIHF1ZXJ5X3VzZXIoc2VsZik6CisgICAgICAgIHNlbGYuZGF0YVsnbmFtZSddID0gYXNrKCdQcm9qZWN0IG5hbWUnLCBzZWxmLmRhdGFbJ25hbWUnXSwKKyAgICAgICAgICAgICAgX2hlbHB0ZXh0WyduYW1lJ10pCisKKyAgICAgICAgc2VsZi5kYXRhWyd2ZXJzaW9uJ10gPSBhc2soJ0N1cnJlbnQgdmVyc2lvbiBudW1iZXInLAorICAgICAgICAgICAgICBzZWxmLmRhdGEuZ2V0KCd2ZXJzaW9uJyksIF9oZWxwdGV4dFsndmVyc2lvbiddKQorICAgICAgICBzZWxmLmRhdGFbJ3N1bW1hcnknXSA9IGFzaygnUHJvamVjdCBkZXNjcmlwdGlvbiBzdW1tYXJ5JywKKyAgICAgICAgICAgICAgc2VsZi5kYXRhLmdldCgnc3VtbWFyeScpLCBfaGVscHRleHRbJ3N1bW1hcnknXSwKKyAgICAgICAgICAgICAgbGVuZ3RoeT1UcnVlKQorICAgICAgICBzZWxmLmRhdGFbJ2F1dGhvciddID0gYXNrKCdBdXRob3IgbmFtZScsCisgICAgICAgICAgICAgIHNlbGYuZGF0YS5nZXQoJ2F1dGhvcicpLCBfaGVscHRleHRbJ2F1dGhvciddKQorICAgICAgICBzZWxmLmRhdGFbJ2F1dGhvcl9lbWFpbCddID0gYXNrKCdBdXRob3IgZW1haWwgYWRkcmVzcycsCisgICAgICAgICAgICAgIHNlbGYuZGF0YS5nZXQoJ2F1dGhvcl9lbWFpbCcpLCBfaGVscHRleHRbJ2F1dGhvcl9lbWFpbCddKQorICAgICAgICBzZWxmLmRhdGFbJ2hvbWVfcGFnZSddID0gYXNrKCdQcm9qZWN0IGhvbWUgcGFnZScsCisgICAgICAgICAgICAgIHNlbGYuZGF0YS5nZXQoJ2hvbWVfcGFnZScpLCBfaGVscHRleHRbJ2hvbWVfcGFnZSddLAorICAgICAgICAgICAgICByZXF1aXJlZD1GYWxzZSkKKworICAgICAgICBpZiBhc2tfeW4oJ0RvIHlvdSB3YW50IG1lIHRvIGF1dG9tYXRpY2FsbHkgYnVpbGQgdGhlIGZpbGUgbGlzdCAnCisgICAgICAgICAgICAgICd3aXRoIGV2ZXJ5dGhpbmcgSSBjYW4gZmluZCBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnk/ICcKKyAgICAgICAgICAgICAgJ0lmIHlvdSBzYXkgbm8sIHlvdSB3aWxsIGhhdmUgdG8gZGVmaW5lIHRoZW0gbWFudWFsbHkuJykgPT0gJ3knOgorICAgICAgICAgICAgc2VsZi5fZmluZF9maWxlcygpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB3aGlsZSBhc2tfeW4oJ0RvIHlvdSB3YW50IHRvIGFkZCBhIHNpbmdsZSBtb2R1bGU/JworICAgICAgICAgICAgICAgICAgICAgICAgJyAoeW91IHdpbGwgYmUgYWJsZSB0byBhZGQgZnVsbCBwYWNrYWdlcyBuZXh0KScsCisgICAgICAgICAgICAgICAgICAgIGhlbHB0ZXh0PV9oZWxwdGV4dFsnbW9kdWxlcyddKSA9PSAneSc6CisgICAgICAgICAgICAgICAgc2VsZi5fc2V0X211bHRpKCdNb2R1bGUgbmFtZScsICdtb2R1bGVzJykKKworICAgICAgICAgICAgd2hpbGUgYXNrX3luKCdEbyB5b3Ugd2FudCB0byBhZGQgYSBwYWNrYWdlPycsCisgICAgICAgICAgICAgICAgICAgIGhlbHB0ZXh0PV9oZWxwdGV4dFsncGFja2FnZXMnXSkgPT0gJ3knOgorICAgICAgICAgICAgICAgIHNlbGYuX3NldF9tdWx0aSgnUGFja2FnZSBuYW1lJywgJ3BhY2thZ2VzJykKKworICAgICAgICAgICAgd2hpbGUgYXNrX3luKCdEbyB5b3Ugd2FudCB0byBhZGQgYW4gZXh0cmEgZmlsZT8nLAorICAgICAgICAgICAgICAgICAgICAgICAgaGVscHRleHQ9X2hlbHB0ZXh0WydleHRyYV9maWxlcyddKSA9PSAneSc6CisgICAgICAgICAgICAgICAgc2VsZi5fc2V0X211bHRpKCdFeHRyYSBmaWxlL2RpciBuYW1lJywgJ2V4dHJhX2ZpbGVzJykKKworICAgICAgICBpZiBhc2tfeW4oJ0RvIHlvdSB3YW50IHRvIHNldCBUcm92ZSBjbGFzc2lmaWVycz8nLAorICAgICAgICAgICAgICAgICAgaGVscHRleHQ9X2hlbHB0ZXh0Wydkb19jbGFzc2lmaWVyJ10pID09ICd5JzoKKyAgICAgICAgICAgIHNlbGYuc2V0X2NsYXNzaWZpZXIoKQorCisgICAgZGVmIF9maW5kX2ZpbGVzKHNlbGYpOgorICAgICAgICAjIHdlIGFyZSBsb29raW5nIGZvciBweXRob24gbW9kdWxlcyBhbmQgcGFja2FnZXMsCisgICAgICAgICMgb3RoZXIgc3R1ZmYgYXJlIGFkZGVkIGFzIHJlZ3VsYXIgZmlsZXMKKyAgICAgICAgcGtncyA9IHNlbGYuZGF0YVsncGFja2FnZXMnXQorICAgICAgICBtb2R1bGVzID0gc2VsZi5kYXRhWydtb2R1bGVzJ10KKyAgICAgICAgZXh0cmFfZmlsZXMgPSBzZWxmLmRhdGFbJ2V4dHJhX2ZpbGVzJ10KKworICAgICAgICBkZWYgaXNfcGFja2FnZShwYXRoKToKKyAgICAgICAgICAgIHJldHVybiBvcy5wYXRoLmV4aXN0cyhvcy5wYXRoLmpvaW4ocGF0aCwgJ19faW5pdF9fLnB5JykpCisKKyAgICAgICAgY3VyZGlyID0gb3MuZ2V0Y3dkKCkKKyAgICAgICAgc2Nhbm5lZCA9IFtdCisgICAgICAgIF9wcmVmID0gWydsaWInLCAnaW5jbHVkZScsICdkaXN0JywgJ2J1aWxkJywgJy4nLCAnfiddCisgICAgICAgIF9zdWYgPSBbJy5weWMnXQorCisgICAgICAgIGRlZiB0b19za2lwKHBhdGgpOgorICAgICAgICAgICAgcGF0aCA9IHJlbGF0aXZlKHBhdGgpCisKKyAgICAgICAgICAgIGZvciBwcmVmIGluIF9wcmVmOgorICAgICAgICAgICAgICAgIGlmIHBhdGguc3RhcnRzd2l0aChwcmVmKToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKKworICAgICAgICAgICAgZm9yIHN1ZiBpbiBfc3VmOgorICAgICAgICAgICAgICAgIGlmIHBhdGguZW5kc3dpdGgoc3VmKToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKKworICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICAgICAgZGVmIHJlbGF0aXZlKHBhdGgpOgorICAgICAgICAgICAgcmV0dXJuIHBhdGhbbGVuKGN1cmRpcikgKyAxOl0KKworICAgICAgICBkZWYgZG90dGVkKHBhdGgpOgorICAgICAgICAgICAgcmVzID0gcmVsYXRpdmUocGF0aCkucmVwbGFjZShvcy5wYXRoLnNlcCwgJy4nKQorICAgICAgICAgICAgaWYgcmVzLmVuZHN3aXRoKCcucHknKToKKyAgICAgICAgICAgICAgICByZXMgPSByZXNbOi1sZW4oJy5weScpXQorICAgICAgICAgICAgcmV0dXJuIHJlcworCisgICAgICAgICMgZmlyc3QgcGFzczogcGFja2FnZXMKKyAgICAgICAgZm9yIHJvb3QsIGRpcnMsIGZpbGVzIGluIG9zLndhbGsoY3VyZGlyKToKKyAgICAgICAgICAgIGlmIHRvX3NraXAocm9vdCk6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGZvciBkaXJfIGluIHNvcnRlZChkaXJzKToKKyAgICAgICAgICAgICAgICBpZiB0b19za2lwKGRpcl8pOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGZ1bGxwYXRoID0gb3MucGF0aC5qb2luKHJvb3QsIGRpcl8pCisgICAgICAgICAgICAgICAgZG90dGVkX25hbWUgPSBkb3R0ZWQoZnVsbHBhdGgpCisgICAgICAgICAgICAgICAgaWYgaXNfcGFja2FnZShmdWxscGF0aCkgYW5kIGRvdHRlZF9uYW1lIG5vdCBpbiBwa2dzOgorICAgICAgICAgICAgICAgICAgICBwa2dzLmFwcGVuZChkb3R0ZWRfbmFtZSkKKyAgICAgICAgICAgICAgICAgICAgc2Nhbm5lZC5hcHBlbmQoZnVsbHBhdGgpCisKKyAgICAgICAgIyBtb2R1bGVzIGFuZCBleHRyYSBmaWxlcworICAgICAgICBmb3Igcm9vdCwgZGlycywgZmlsZXMgaW4gb3Mud2FsayhjdXJkaXIpOgorICAgICAgICAgICAgaWYgdG9fc2tpcChyb290KToKKyAgICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICBpZiBhbnkocm9vdC5zdGFydHN3aXRoKHBhdGgpIGZvciBwYXRoIGluIHNjYW5uZWQpOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgIGZvciBmaWxlIGluIHNvcnRlZChmaWxlcyk6CisgICAgICAgICAgICAgICAgZnVsbHBhdGggPSBvcy5wYXRoLmpvaW4ocm9vdCwgZmlsZSkKKyAgICAgICAgICAgICAgICBpZiB0b19za2lwKGZ1bGxwYXRoKToKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICAjIHNpbmdsZSBtb2R1bGU/CisgICAgICAgICAgICAgICAgaWYgb3MucGF0aC5zcGxpdGV4dChmaWxlKVstMV0gPT0gJy5weSc6CisgICAgICAgICAgICAgICAgICAgIG1vZHVsZXMuYXBwZW5kKGRvdHRlZChmdWxscGF0aCkpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgZXh0cmFfZmlsZXMuYXBwZW5kKHJlbGF0aXZlKGZ1bGxwYXRoKSkKKworICAgIGRlZiBfc2V0X211bHRpKHNlbGYsIHF1ZXN0aW9uLCBuYW1lKToKKyAgICAgICAgZXhpc3RpbmdfdmFsdWVzID0gc2VsZi5kYXRhW25hbWVdCisgICAgICAgIHZhbHVlID0gYXNrKHF1ZXN0aW9uLCBoZWxwdGV4dD1faGVscHRleHRbbmFtZV0pLnN0cmlwKCkKKyAgICAgICAgaWYgdmFsdWUgbm90IGluIGV4aXN0aW5nX3ZhbHVlczoKKyAgICAgICAgICAgIGV4aXN0aW5nX3ZhbHVlcy5hcHBlbmQodmFsdWUpCisKKyAgICBkZWYgc2V0X2NsYXNzaWZpZXIoc2VsZik6CisgICAgICAgIHNlbGYuc2V0X21hdHVyaXR5X3N0YXR1cyhzZWxmLmNsYXNzaWZpZXJzKQorICAgICAgICBzZWxmLnNldF9saWNlbnNlKHNlbGYuY2xhc3NpZmllcnMpCisgICAgICAgIHNlbGYuc2V0X290aGVyX2NsYXNzaWZpZXIoc2VsZi5jbGFzc2lmaWVycykKKworICAgIGRlZiBzZXRfb3RoZXJfY2xhc3NpZmllcihzZWxmLCBjbGFzc2lmaWVycyk6CisgICAgICAgIGlmIGFza195bignRG8geW91IHdhbnQgdG8gc2V0IG90aGVyIHRyb3ZlIGlkZW50aWZpZXJzPycsICduJywKKyAgICAgICAgICAgICAgICAgIF9oZWxwdGV4dFsndHJvdmVfZ2VuZXJpYyddKSAhPSAneSc6CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgc2VsZi53YWxrX2NsYXNzaWZpZXJzKGNsYXNzaWZpZXJzLCBbQ0xBU1NJRklFUlNdLCAnJykKKworICAgIGRlZiB3YWxrX2NsYXNzaWZpZXJzKHNlbGYsIGNsYXNzaWZpZXJzLCB0cm92ZXBhdGgsIGRlc2MpOgorICAgICAgICB0cm92ZSA9IHRyb3ZlcGF0aFstMV0KKworICAgICAgICBpZiBub3QgdHJvdmU6CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBmb3Iga2V5IGluIHNvcnRlZCh0cm92ZSk6CisgICAgICAgICAgICBpZiBsZW4odHJvdmVba2V5XSkgPT0gMDoKKyAgICAgICAgICAgICAgICBpZiBhc2tfeW4oJ0FkZCAiJXMiJyAlIGRlc2NbNDpdICsgJyA6OiAnICsga2V5LCAnbicpID09ICd5JzoKKyAgICAgICAgICAgICAgICAgICAgY2xhc3NpZmllcnMuYWRkKGRlc2NbNDpdICsgJyA6OiAnICsga2V5KQorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgIGlmIGFza195bignRG8geW91IHdhbnQgdG8gc2V0IGl0ZW1zIHVuZGVyXG4gICAiJXMiICglZCBzdWItaXRlbXMpPycKKyAgICAgICAgICAgICAgICAgICAgICAlIChrZXksIGxlbih0cm92ZVtrZXldKSksICduJywKKyAgICAgICAgICAgICAgICAgICAgICBfaGVscHRleHRbJ3Ryb3ZlX2dlbmVyaWMnXSkgPT0gJ3knOgorICAgICAgICAgICAgICAgIHNlbGYud2Fsa19jbGFzc2lmaWVycyhjbGFzc2lmaWVycywgdHJvdmVwYXRoICsgW3Ryb3ZlW2tleV1dLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjICsgJyA6OiAnICsga2V5KQorCisgICAgZGVmIHNldF9saWNlbnNlKHNlbGYsIGNsYXNzaWZpZXJzKToKKyAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgIGxpY2Vuc2UgPSBhc2soJ1doYXQgbGljZW5zZSBkbyB5b3UgdXNlPycsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHB0ZXh0PV9oZWxwdGV4dFsndHJvdmVfbGljZW5zZSddLCByZXF1aXJlZD1GYWxzZSkKKyAgICAgICAgICAgIGlmIG5vdCBsaWNlbnNlOgorICAgICAgICAgICAgICAgIHJldHVybgorCisgICAgICAgICAgICBsaWNlbnNlX3dvcmRzID0gbGljZW5zZS5sb3dlcigpLnNwbGl0KCcgJykKKyAgICAgICAgICAgIGZvdW5kX2xpc3QgPSBbXQorCisgICAgICAgICAgICBmb3IgaW5kZXgsIGxpY2VuY2UgaW4gTElDRU5DRVM6CisgICAgICAgICAgICAgICAgZm9yIHdvcmQgaW4gbGljZW5zZV93b3JkczoKKyAgICAgICAgICAgICAgICAgICAgaWYgd29yZCBpbiBsaWNlbmNlOgorICAgICAgICAgICAgICAgICAgICAgICAgZm91bmRfbGlzdC5hcHBlbmQoaW5kZXgpCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhaworCisgICAgICAgICAgICBpZiBsZW4oZm91bmRfbGlzdCkgPT0gMDoKKyAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IoJ0NvdWxkIG5vdCBmaW5kIGEgbWF0Y2hpbmcgbGljZW5zZSBmb3IgIiVzIicgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWNlbnNlKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgIHF1ZXN0aW9uID0gJ01hdGNoaW5nIGxpY2Vuc2VzOlxuXG4nCisKKyAgICAgICAgICAgIGZvciBpbmRleCwgbGlzdF9pbmRleCBpbiBlbnVtZXJhdGUoZm91bmRfbGlzdCk6CisgICAgICAgICAgICAgICAgcXVlc3Rpb24gKz0gJyAgICVzKSAlc1xuJyAlIChpbmRleCArIDEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfQ0xBU1NJRklFUlNfTElTVFtsaXN0X2luZGV4XSkKKworICAgICAgICAgICAgcXVlc3Rpb24gKz0gKCdcblR5cGUgdGhlIG51bWJlciBvZiB0aGUgbGljZW5zZSB5b3Ugd2lzaCB0byB1c2Ugb3IgJworICAgICAgICAgICAgICAgICAgICAgICAgICc/IHRvIHRyeSBhZ2FpbjonKQorICAgICAgICAgICAgY2hvaWNlID0gYXNrKHF1ZXN0aW9uLCByZXF1aXJlZD1GYWxzZSkKKworICAgICAgICAgICAgaWYgY2hvaWNlID09ICc/JzoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgaWYgY2hvaWNlID09ICcnOgorICAgICAgICAgICAgICAgIHJldHVybgorCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgaW5kZXggPSBmb3VuZF9saXN0W2ludChjaG9pY2UpIC0gMV0KKyAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgIGxvZ2dlci5lcnJvcigKKyAgICAgICAgICAgICAgICAgICAgIkludmFsaWQgc2VsZWN0aW9uLCB0eXBlIGEgbnVtYmVyIGZyb20gdGhlIGxpc3QgYWJvdmUuIikKKworICAgICAgICAgICAgY2xhc3NpZmllcnMuYWRkKF9DTEFTU0lGSUVSU19MSVNUW2luZGV4XSkKKworICAgIGRlZiBzZXRfbWF0dXJpdHlfc3RhdHVzKHNlbGYsIGNsYXNzaWZpZXJzKToKKyAgICAgICAgbWF0dXJpdHlfbmFtZSA9IGxhbWJkYSBtYXQ6IG1hdC5zcGxpdCgnLSAnKVstMV0KKyAgICAgICAgbWF0dXJpdHlfcXVlc3Rpb24gPSAnJydcCisgICAgICAgICAgICBQbGVhc2Ugc2VsZWN0IHRoZSBwcm9qZWN0IHN0YXR1czoKKworICAgICAgICAgICAgJXMKKworICAgICAgICAgICAgU3RhdHVzJycnICUgJ1xuJy5qb2luKCclcyAtICVzJyAlIChpLCBtYXR1cml0eV9uYW1lKG4pKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBpLCBuIGluIGVudW1lcmF0ZShQUk9KRUNUX01BVFVSSVRZKSkKKyAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgIGNob2ljZSA9IGFzayhkZWRlbnQobWF0dXJpdHlfcXVlc3Rpb24pLCByZXF1aXJlZD1GYWxzZSkKKworICAgICAgICAgICAgaWYgY2hvaWNlOgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgY2hvaWNlID0gaW50KGNob2ljZSkgLSAxCisgICAgICAgICAgICAgICAgICAgIGtleSA9IFBST0pFQ1RfTUFUVVJJVFlbY2hvaWNlXQorICAgICAgICAgICAgICAgICAgICBjbGFzc2lmaWVycy5hZGQoa2V5KQorICAgICAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgICAgICAgICBleGNlcHQgKEluZGV4RXJyb3IsIFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAiSW52YWxpZCBzZWxlY3Rpb24sIHR5cGUgYSBzaW5nbGUgZGlnaXQgbnVtYmVyLiIpCisKKworZGVmIG1haW4oKToKKyAgICAiIiJNYWluIGVudHJ5IHBvaW50LiIiIgorICAgIHByb2dyYW0gPSBNYWluUHJvZ3JhbSgpCisgICAgIyAjIHVuY29tbWVudCB3aGVuIGltcGxlbWVudGVkCisgICAgIyBpZiBub3QgcHJvZ3JhbS5sb2FkX2V4aXN0aW5nX3NldHVwX3NjcmlwdCgpOgorICAgICMgICAgIHByb2dyYW0uaW5zcGVjdF9kaXJlY3RvcnkoKQorICAgICMgICAgIHByb2dyYW0ucXVlcnlfdXNlcigpCisgICAgIyAgICAgcHJvZ3JhbS51cGRhdGVfY29uZmlnX2ZpbGUoKQorICAgICMgcHJvZ3JhbS53cml0ZV9zZXR1cF9zY3JpcHQoKQorICAgICMgcGFja2FnaW5nLnV0aWwuY2ZnX3RvX2FyZ3MoKQorICAgIHByb2dyYW0oKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9kYXRhYmFzZS5weSBiL0xpYi9wYWNrYWdpbmcvZGF0YWJhc2UucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjJmY2I5NwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvZGF0YWJhc2UucHkKQEAgLTAsMCArMSw2NTAgQEAKKyIiIlBFUCAzNzYgaW1wbGVtZW50YXRpb24uIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHJlCitpbXBvcnQgY3N2CitpbXBvcnQgc3lzCitpbXBvcnQgemlwaW1wb3J0Citmcm9tIGlvIGltcG9ydCBTdHJpbmdJTworZnJvbSBoYXNobGliIGltcG9ydCBtZDUKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdFcnJvcgorZnJvbSBwYWNrYWdpbmcudmVyc2lvbiBpbXBvcnQgc3VnZ2VzdF9ub3JtYWxpemVkX3ZlcnNpb24sIFZlcnNpb25QcmVkaWNhdGUKK2Zyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YQorCisKK19fYWxsX18gPSBbCisgICAgJ0Rpc3RyaWJ1dGlvbicsICdFZ2dJbmZvRGlzdHJpYnV0aW9uJywgJ2Rpc3RpbmZvX2Rpcm5hbWUnLAorICAgICdnZXRfZGlzdHJpYnV0aW9ucycsICdnZXRfZGlzdHJpYnV0aW9uJywgJ2dldF9maWxlX3VzZXJzJywKKyAgICAncHJvdmlkZXNfZGlzdHJpYnV0aW9uJywgJ29ic29sZXRlc19kaXN0cmlidXRpb24nLAorICAgICdlbmFibGVfY2FjaGUnLCAnZGlzYWJsZV9jYWNoZScsICdjbGVhcl9jYWNoZScsCisgICAgJ2dldF9maWxlX3BhdGgnLCAnZ2V0X2ZpbGUnXQorCisKKyMgVE9ETyB1cGRhdGUgZG9jcworCitESVNUX0ZJTEVTID0gKCdJTlNUQUxMRVInLCAnTUVUQURBVEEnLCAnUkVDT1JEJywgJ1JFUVVFU1RFRCcsICdSRVNPVVJDRVMnKQorCisjIENhY2hlCitfY2FjaGVfbmFtZSA9IHt9ICAjIG1hcHMgbmFtZXMgdG8gRGlzdHJpYnV0aW9uIGluc3RhbmNlcworX2NhY2hlX25hbWVfZWdnID0ge30gICMgbWFwcyBuYW1lcyB0byBFZ2dJbmZvRGlzdHJpYnV0aW9uIGluc3RhbmNlcworX2NhY2hlX3BhdGggPSB7fSAgIyBtYXBzIHBhdGhzIHRvIERpc3RyaWJ1dGlvbiBpbnN0YW5jZXMKK19jYWNoZV9wYXRoX2VnZyA9IHt9ICAjIG1hcHMgcGF0aHMgdG8gRWdnSW5mb0Rpc3RyaWJ1dGlvbiBpbnN0YW5jZXMKK19jYWNoZV9nZW5lcmF0ZWQgPSBGYWxzZSAgIyBpbmRpY2F0ZXMgaWYgLmRpc3QtaW5mbyBkaXN0cmlidXRpb25zIGFyZSBjYWNoZWQKK19jYWNoZV9nZW5lcmF0ZWRfZWdnID0gRmFsc2UgICMgaW5kaWNhdGVzIGlmIC5kaXN0LWluZm8gYW5kIC5lZ2cgYXJlIGNhY2hlZAorX2NhY2hlX2VuYWJsZWQgPSBUcnVlCisKKworZGVmIGVuYWJsZV9jYWNoZSgpOgorICAgICIiIgorICAgIEVuYWJsZXMgdGhlIGludGVybmFsIGNhY2hlLgorCisgICAgTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gd2lsbCBub3QgY2xlYXIgdGhlIGNhY2hlIGluIGFueSBjYXNlLCBmb3IgdGhhdAorICAgIGZ1bmN0aW9uYWxpdHkgc2VlIDpmdW5jOmBjbGVhcl9jYWNoZWAuCisgICAgIiIiCisgICAgZ2xvYmFsIF9jYWNoZV9lbmFibGVkCisKKyAgICBfY2FjaGVfZW5hYmxlZCA9IFRydWUKKworCitkZWYgZGlzYWJsZV9jYWNoZSgpOgorICAgICIiIgorICAgIERpc2FibGVzIHRoZSBpbnRlcm5hbCBjYWNoZS4KKworICAgIE5vdGUgdGhhdCB0aGlzIGZ1bmN0aW9uIHdpbGwgbm90IGNsZWFyIHRoZSBjYWNoZSBpbiBhbnkgY2FzZSwgZm9yIHRoYXQKKyAgICBmdW5jdGlvbmFsaXR5IHNlZSA6ZnVuYzpgY2xlYXJfY2FjaGVgLgorICAgICIiIgorICAgIGdsb2JhbCBfY2FjaGVfZW5hYmxlZAorCisgICAgX2NhY2hlX2VuYWJsZWQgPSBGYWxzZQorCisKK2RlZiBjbGVhcl9jYWNoZSgpOgorICAgICIiIiBDbGVhcnMgdGhlIGludGVybmFsIGNhY2hlLiAiIiIKKyAgICBnbG9iYWwgX2NhY2hlX2dlbmVyYXRlZCwgX2NhY2hlX2dlbmVyYXRlZF9lZ2cKKworICAgIF9jYWNoZV9uYW1lLmNsZWFyKCkKKyAgICBfY2FjaGVfbmFtZV9lZ2cuY2xlYXIoKQorICAgIF9jYWNoZV9wYXRoLmNsZWFyKCkKKyAgICBfY2FjaGVfcGF0aF9lZ2cuY2xlYXIoKQorICAgIF9jYWNoZV9nZW5lcmF0ZWQgPSBGYWxzZQorICAgIF9jYWNoZV9nZW5lcmF0ZWRfZWdnID0gRmFsc2UKKworCitkZWYgX3lpZWxkX2Rpc3RyaWJ1dGlvbnMoaW5jbHVkZV9kaXN0LCBpbmNsdWRlX2VnZywgcGF0aHMpOgorICAgICIiIgorICAgIFlpZWxkIC5kaXN0LWluZm8gYW5kIC5lZ2coLWluZm8pIGRpc3RyaWJ1dGlvbnMsIGJhc2VkIG9uIHRoZSBhcmd1bWVudHMKKworICAgIDpwYXJhbWV0ZXIgaW5jbHVkZV9kaXN0OiB5aWVsZCAuZGlzdC1pbmZvIGRpc3RyaWJ1dGlvbnMKKyAgICA6cGFyYW1ldGVyIGluY2x1ZGVfZWdnOiB5aWVsZCAuZWdnKC1pbmZvKSBkaXN0cmlidXRpb25zCisgICAgIiIiCisgICAgZm9yIHBhdGggaW4gcGF0aHM6CisgICAgICAgIHJlYWxwYXRoID0gb3MucGF0aC5yZWFscGF0aChwYXRoKQorICAgICAgICBpZiBub3Qgb3MucGF0aC5pc2RpcihyZWFscGF0aCk6CisgICAgICAgICAgICBjb250aW51ZQorICAgICAgICBmb3IgZGlyIGluIG9zLmxpc3RkaXIocmVhbHBhdGgpOgorICAgICAgICAgICAgZGlzdF9wYXRoID0gb3MucGF0aC5qb2luKHJlYWxwYXRoLCBkaXIpCisgICAgICAgICAgICBpZiBpbmNsdWRlX2Rpc3QgYW5kIGRpci5lbmRzd2l0aCgnLmRpc3QtaW5mbycpOgorICAgICAgICAgICAgICAgIHlpZWxkIERpc3RyaWJ1dGlvbihkaXN0X3BhdGgpCisgICAgICAgICAgICBlbGlmIGluY2x1ZGVfZWdnIGFuZCAoZGlyLmVuZHN3aXRoKCcuZWdnLWluZm8nKSBvcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpci5lbmRzd2l0aCgnLmVnZycpKToKKyAgICAgICAgICAgICAgICB5aWVsZCBFZ2dJbmZvRGlzdHJpYnV0aW9uKGRpc3RfcGF0aCkKKworCitkZWYgX2dlbmVyYXRlX2NhY2hlKHVzZV9lZ2dfaW5mbywgcGF0aHMpOgorICAgIGdsb2JhbCBfY2FjaGVfZ2VuZXJhdGVkLCBfY2FjaGVfZ2VuZXJhdGVkX2VnZworCisgICAgaWYgX2NhY2hlX2dlbmVyYXRlZF9lZ2cgb3IgKF9jYWNoZV9nZW5lcmF0ZWQgYW5kIG5vdCB1c2VfZWdnX2luZm8pOgorICAgICAgICByZXR1cm4KKyAgICBlbHNlOgorICAgICAgICBnZW5fZGlzdCA9IG5vdCBfY2FjaGVfZ2VuZXJhdGVkCisgICAgICAgIGdlbl9lZ2cgPSB1c2VfZWdnX2luZm8KKworICAgICAgICBmb3IgZGlzdCBpbiBfeWllbGRfZGlzdHJpYnV0aW9ucyhnZW5fZGlzdCwgZ2VuX2VnZywgcGF0aHMpOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShkaXN0LCBEaXN0cmlidXRpb24pOgorICAgICAgICAgICAgICAgIF9jYWNoZV9wYXRoW2Rpc3QucGF0aF0gPSBkaXN0CisgICAgICAgICAgICAgICAgaWYgZGlzdC5uYW1lIG5vdCBpbiBfY2FjaGVfbmFtZToKKyAgICAgICAgICAgICAgICAgICAgX2NhY2hlX25hbWVbZGlzdC5uYW1lXSA9IFtdCisgICAgICAgICAgICAgICAgX2NhY2hlX25hbWVbZGlzdC5uYW1lXS5hcHBlbmQoZGlzdCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgX2NhY2hlX3BhdGhfZWdnW2Rpc3QucGF0aF0gPSBkaXN0CisgICAgICAgICAgICAgICAgaWYgZGlzdC5uYW1lIG5vdCBpbiBfY2FjaGVfbmFtZV9lZ2c6CisgICAgICAgICAgICAgICAgICAgIF9jYWNoZV9uYW1lX2VnZ1tkaXN0Lm5hbWVdID0gW10KKyAgICAgICAgICAgICAgICBfY2FjaGVfbmFtZV9lZ2dbZGlzdC5uYW1lXS5hcHBlbmQoZGlzdCkKKworICAgICAgICBpZiBnZW5fZGlzdDoKKyAgICAgICAgICAgIF9jYWNoZV9nZW5lcmF0ZWQgPSBUcnVlCisgICAgICAgIGlmIGdlbl9lZ2c6CisgICAgICAgICAgICBfY2FjaGVfZ2VuZXJhdGVkX2VnZyA9IFRydWUKKworCitjbGFzcyBEaXN0cmlidXRpb246CisgICAgIiIiQ3JlYXRlZCB3aXRoIHRoZSAqcGF0aCogb2YgdGhlIGBgLmRpc3QtaW5mb2BgIGRpcmVjdG9yeSBwcm92aWRlZCB0byB0aGUKKyAgICBjb25zdHJ1Y3Rvci4gSXQgcmVhZHMgdGhlIG1ldGFkYXRhIGNvbnRhaW5lZCBpbiBgYE1FVEFEQVRBYGAgd2hlbiBpdCBpcworICAgIGluc3RhbnRpYXRlZC4iIiIKKworICAgIG5hbWUgPSAnJworICAgICIiIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24uIiIiCisKKyAgICB2ZXJzaW9uID0gJycKKyAgICAiIiJUaGUgdmVyc2lvbiBvZiB0aGUgZGlzdHJpYnV0aW9uLiIiIgorCisgICAgbWV0YWRhdGEgPSBOb25lCisgICAgIiIiQSA6Y2xhc3M6YHBhY2thZ2luZy5tZXRhZGF0YS5NZXRhZGF0YWAgaW5zdGFuY2UgbG9hZGVkIHdpdGgKKyAgICB0aGUgZGlzdHJpYnV0aW9uJ3MgYGBNRVRBREFUQWBgIGZpbGUuIiIiCisKKyAgICByZXF1ZXN0ZWQgPSBGYWxzZQorICAgICIiIkEgYm9vbGVhbiB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoZSBgYFJFUVVFU1RFRGBgIG1ldGFkYXRhIGZpbGUgaXMKKyAgICBwcmVzZW50IChpbiBvdGhlciB3b3Jkcywgd2hldGhlciB0aGUgcGFja2FnZSB3YXMgaW5zdGFsbGVkIGJ5IHVzZXIKKyAgICByZXF1ZXN0IG9yIGl0IHdhcyBpbnN0YWxsZWQgYXMgYSBkZXBlbmRlbmN5KS4iIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwYXRoKToKKyAgICAgICAgaWYgX2NhY2hlX2VuYWJsZWQgYW5kIHBhdGggaW4gX2NhY2hlX3BhdGg6CisgICAgICAgICAgICBzZWxmLm1ldGFkYXRhID0gX2NhY2hlX3BhdGhbcGF0aF0ubWV0YWRhdGEKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG1ldGFkYXRhX3BhdGggPSBvcy5wYXRoLmpvaW4ocGF0aCwgJ01FVEFEQVRBJykKKyAgICAgICAgICAgIHNlbGYubWV0YWRhdGEgPSBNZXRhZGF0YShwYXRoPW1ldGFkYXRhX3BhdGgpCisKKyAgICAgICAgc2VsZi5uYW1lID0gc2VsZi5tZXRhZGF0YVsnTmFtZSddCisgICAgICAgIHNlbGYudmVyc2lvbiA9IHNlbGYubWV0YWRhdGFbJ1ZlcnNpb24nXQorICAgICAgICBzZWxmLnBhdGggPSBwYXRoCisKKyAgICAgICAgaWYgX2NhY2hlX2VuYWJsZWQgYW5kIHBhdGggbm90IGluIF9jYWNoZV9wYXRoOgorICAgICAgICAgICAgX2NhY2hlX3BhdGhbcGF0aF0gPSBzZWxmCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiAnPERpc3RyaWJ1dGlvbiAlciAlcyBhdCAlcj4nICUgKAorICAgICAgICAgICAgc2VsZi5uYW1lLCBzZWxmLnZlcnNpb24sIHNlbGYucGF0aCkKKworICAgIGRlZiBfZ2V0X3JlY29yZHMoc2VsZiwgbG9jYWw9RmFsc2UpOgorICAgICAgICByZXN1bHRzID0gW10KKyAgICAgICAgd2l0aCBzZWxmLmdldF9kaXN0aW5mb19maWxlKCdSRUNPUkQnKSBhcyByZWNvcmQ6CisgICAgICAgICAgICByZWNvcmRfcmVhZGVyID0gY3N2LnJlYWRlcihyZWNvcmQsIGRlbGltaXRlcj0nLCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5ldGVybWluYXRvcj0nXG4nKQorICAgICAgICAgICAgZm9yIHJvdyBpbiByZWNvcmRfcmVhZGVyOgorICAgICAgICAgICAgICAgIG1pc3NpbmcgPSBbTm9uZSBmb3IgaSBpbiByYW5nZShsZW4ocm93KSwgMyldCisgICAgICAgICAgICAgICAgcGF0aCwgY2hlY2tzdW0sIHNpemUgPSByb3cgKyBtaXNzaW5nCisgICAgICAgICAgICAgICAgaWYgbG9jYWw6CisgICAgICAgICAgICAgICAgICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoJy8nLCBvcy5zZXApCisgICAgICAgICAgICAgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oc3lzLnByZWZpeCwgcGF0aCkKKyAgICAgICAgICAgICAgICByZXN1bHRzLmFwcGVuZCgocGF0aCwgY2hlY2tzdW0sIHNpemUpKQorICAgICAgICByZXR1cm4gcmVzdWx0cworCisgICAgZGVmIGdldF9yZXNvdXJjZV9wYXRoKHNlbGYsIHJlbGF0aXZlX3BhdGgpOgorICAgICAgICB3aXRoIHNlbGYuZ2V0X2Rpc3RpbmZvX2ZpbGUoJ1JFU09VUkNFUycpIGFzIHJlc291cmNlc19maWxlOgorICAgICAgICAgICAgcmVzb3VyY2VzX3JlYWRlciA9IGNzdi5yZWFkZXIocmVzb3VyY2VzX2ZpbGUsIGRlbGltaXRlcj0nLCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5ldGVybWluYXRvcj0nXG4nKQorICAgICAgICAgICAgZm9yIHJlbGF0aXZlLCBkZXN0aW5hdGlvbiBpbiByZXNvdXJjZXNfcmVhZGVyOgorICAgICAgICAgICAgICAgIGlmIHJlbGF0aXZlID09IHJlbGF0aXZlX3BhdGg6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBkZXN0aW5hdGlvbgorICAgICAgICByYWlzZSBLZXlFcnJvcigKKyAgICAgICAgICAgICdubyByZXNvdXJjZSBmaWxlIHdpdGggcmVsYXRpdmUgcGF0aCAlciBpcyBpbnN0YWxsZWQnICUKKyAgICAgICAgICAgIHJlbGF0aXZlX3BhdGgpCisKKyAgICBkZWYgbGlzdF9pbnN0YWxsZWRfZmlsZXMoc2VsZiwgbG9jYWw9RmFsc2UpOgorICAgICAgICAiIiIKKyAgICAgICAgSXRlcmF0ZXMgb3ZlciB0aGUgYGBSRUNPUkRgYCBlbnRyaWVzIGFuZCByZXR1cm5zIGEgdHVwbGUKKyAgICAgICAgYGAocGF0aCwgbWQ1LCBzaXplKWBgIGZvciBlYWNoIGxpbmUuIElmICpsb2NhbCogaXMgYGBUcnVlYGAsCisgICAgICAgIHRoZSByZXR1cm5lZCBwYXRoIGlzIHRyYW5zZm9ybWVkIGludG8gYSBsb2NhbCBhYnNvbHV0ZSBwYXRoLgorICAgICAgICBPdGhlcndpc2UgdGhlIHJhdyB2YWx1ZSBmcm9tIFJFQ09SRCBpcyByZXR1cm5lZC4KKworICAgICAgICBBIGxvY2FsIGFic29sdXRlIHBhdGggaXMgYW4gYWJzb2x1dGUgcGF0aCBpbiB3aGljaCBvY2N1cnJlbmNlcyBvZgorICAgICAgICBgYCcvJ2BgIGhhdmUgYmVlbiByZXBsYWNlZCBieSB0aGUgc3lzdGVtIHNlcGFyYXRvciBnaXZlbiBieSBgYG9zLnNlcGBgLgorCisgICAgICAgIDpwYXJhbWV0ZXIgbG9jYWw6IGZsYWcgdG8gc2F5IGlmIHRoZSBwYXRoIHNob3VsZCBiZSByZXR1cm5lZCBhcyBhIGxvY2FsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGFic29sdXRlIHBhdGgKKworICAgICAgICA6dHlwZSBsb2NhbDogYm9vbGVhbgorICAgICAgICA6cmV0dXJuczogaXRlcmF0b3Igb2YgKHBhdGgsIG1kNSwgc2l6ZSkKKyAgICAgICAgIiIiCisgICAgICAgIGZvciByZXN1bHQgaW4gc2VsZi5fZ2V0X3JlY29yZHMobG9jYWwpOgorICAgICAgICAgICAgeWllbGQgcmVzdWx0CisKKyAgICBkZWYgdXNlcyhzZWxmLCBwYXRoKToKKyAgICAgICAgIiIiCisgICAgICAgIFJldHVybnMgYGBUcnVlYGAgaWYgcGF0aCBpcyBsaXN0ZWQgaW4gYGBSRUNPUkRgYC4gKnBhdGgqIGNhbiBiZSBhIGxvY2FsCisgICAgICAgIGFic29sdXRlIHBhdGggb3IgYSByZWxhdGl2ZSBgYCcvJ2BgLXNlcGFyYXRlZCBwYXRoLgorCisgICAgICAgIDpydHlwZTogYm9vbGVhbgorICAgICAgICAiIiIKKyAgICAgICAgZm9yIHAsIGNoZWNrc3VtLCBzaXplIGluIHNlbGYuX2dldF9yZWNvcmRzKCk6CisgICAgICAgICAgICBsb2NhbF9hYnNvbHV0ZSA9IG9zLnBhdGguam9pbihzeXMucHJlZml4LCBwKQorICAgICAgICAgICAgaWYgcGF0aCA9PSBwIG9yIHBhdGggPT0gbG9jYWxfYWJzb2x1dGU6CisgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICBkZWYgZ2V0X2Rpc3RpbmZvX2ZpbGUoc2VsZiwgcGF0aCwgYmluYXJ5PUZhbHNlKToKKyAgICAgICAgIiIiCisgICAgICAgIFJldHVybnMgYSBmaWxlIGxvY2F0ZWQgdW5kZXIgdGhlIGBgLmRpc3QtaW5mb2BgIGRpcmVjdG9yeS4gUmV0dXJucyBhCisgICAgICAgIGBgZmlsZWBgIGluc3RhbmNlIGZvciB0aGUgZmlsZSBwb2ludGVkIGJ5ICpwYXRoKi4KKworICAgICAgICA6cGFyYW1ldGVyIHBhdGg6IGEgYGAnLydgYC1zZXBhcmF0ZWQgcGF0aCByZWxhdGl2ZSB0byB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgICBgYC5kaXN0LWluZm9gYCBkaXJlY3Rvcnkgb3IgYW4gYWJzb2x1dGUgcGF0aDsKKyAgICAgICAgICAgICAgICAgICAgICAgICBJZiAqcGF0aCogaXMgYW4gYWJzb2x1dGUgcGF0aCBhbmQgZG9lc24ndCBzdGFydAorICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGggdGhlIGBgLmRpc3QtaW5mb2BgIGRpcmVjdG9yeSBwYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgIGEgOmNsYXNzOmBQYWNrYWdpbmdFcnJvcmAgaXMgcmFpc2VkCisgICAgICAgIDp0eXBlIHBhdGg6IHN0cmluZworICAgICAgICA6cGFyYW1ldGVyIGJpbmFyeTogSWYgKmJpbmFyeSogaXMgYGBUcnVlYGAsIG9wZW5zIHRoZSBmaWxlIGluIHJlYWQtb25seQorICAgICAgICAgICAgICAgICAgICAgICAgICAgYmluYXJ5IG1vZGUgKGBgcmJgYCksIG90aGVyd2lzZSBvcGVucyBpdCBpbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZC1vbmx5IG1vZGUgKGBgcmBgKS4KKyAgICAgICAgOnJ0eXBlOiBmaWxlIG9iamVjdAorICAgICAgICAiIiIKKyAgICAgICAgb3Blbl9mbGFncyA9ICdyJworICAgICAgICBpZiBiaW5hcnk6CisgICAgICAgICAgICBvcGVuX2ZsYWdzICs9ICdiJworCisgICAgICAgICMgQ2hlY2sgaWYgaXQgaXMgYW4gYWJzb2x1dGUgcGF0aCAgIyBYWFggdXNlIHJlbHBhdGgsIGFkZCB0ZXN0cworICAgICAgICBpZiBwYXRoLmZpbmQob3Muc2VwKSA+PSAwOgorICAgICAgICAgICAgIyBpdCdzIGFuIGFic29sdXRlIHBhdGg/CisgICAgICAgICAgICBkaXN0aW5mb19kaXJuYW1lLCBwYXRoID0gcGF0aC5zcGxpdChvcy5zZXApWy0yOl0KKyAgICAgICAgICAgIGlmIGRpc3RpbmZvX2Rpcm5hbWUgIT0gc2VsZi5wYXRoLnNwbGl0KG9zLnNlcClbLTFdOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0Vycm9yKAorICAgICAgICAgICAgICAgICAgICAnZGlzdC1pbmZvIGZpbGUgJXIgZG9lcyBub3QgYmVsb25nIHRvIHRoZSAlciAlcyAnCisgICAgICAgICAgICAgICAgICAgICdkaXN0cmlidXRpb24nICUgKHBhdGgsIHNlbGYubmFtZSwgc2VsZi52ZXJzaW9uKSkKKworICAgICAgICAjIFRoZSBmaWxlIG11c3QgYmUgcmVsYXRpdmUKKyAgICAgICAgaWYgcGF0aCBub3QgaW4gRElTVF9GSUxFUzoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0Vycm9yKCdpbnZhbGlkIHBhdGggZm9yIGEgZGlzdC1pbmZvIGZpbGU6ICVyJyAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoKQorCisgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oc2VsZi5wYXRoLCBwYXRoKQorICAgICAgICByZXR1cm4gb3BlbihwYXRoLCBvcGVuX2ZsYWdzKQorCisgICAgZGVmIGxpc3RfZGlzdGluZm9fZmlsZXMoc2VsZiwgbG9jYWw9RmFsc2UpOgorICAgICAgICAiIiIKKyAgICAgICAgSXRlcmF0ZXMgb3ZlciB0aGUgYGBSRUNPUkRgYCBlbnRyaWVzIGFuZCByZXR1cm5zIHBhdGhzIGZvciBlYWNoIGxpbmUgaWYKKyAgICAgICAgdGhlIHBhdGggaXMgcG9pbnRpbmcgdG8gYSBmaWxlIGxvY2F0ZWQgaW4gdGhlIGBgLmRpc3QtaW5mb2BgIGRpcmVjdG9yeQorICAgICAgICBvciBvbmUgb2YgaXRzIHN1YmRpcmVjdG9yaWVzLgorCisgICAgICAgIDpwYXJhbWV0ZXIgbG9jYWw6IElmICpsb2NhbCogaXMgYGBUcnVlYGAsIGVhY2ggcmV0dXJuZWQgcGF0aCBpcworICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1lZCBpbnRvIGEgbG9jYWwgYWJzb2x1dGUgcGF0aC4gT3RoZXJ3aXNlIHRoZQorICAgICAgICAgICAgICAgICAgICAgICAgICByYXcgdmFsdWUgZnJvbSBgYFJFQ09SRGBgIGlzIHJldHVybmVkLgorICAgICAgICA6dHlwZSBsb2NhbDogYm9vbGVhbgorICAgICAgICA6cmV0dXJuczogaXRlcmF0b3Igb2YgcGF0aHMKKyAgICAgICAgIiIiCisgICAgICAgIGZvciBwYXRoLCBjaGVja3N1bSwgc2l6ZSBpbiBzZWxmLl9nZXRfcmVjb3Jkcyhsb2NhbCk6CisgICAgICAgICAgICAjIFhYWCBhZGQgc2VwYXJhdG9yIG9yIHVzZSByZWFsIHJlbHBhdGggYWxnbworICAgICAgICAgICAgaWYgcGF0aC5zdGFydHN3aXRoKHNlbGYucGF0aCk6CisgICAgICAgICAgICAgICAgeWllbGQgcGF0aAorCisgICAgZGVmIF9fZXFfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHJldHVybiBpc2luc3RhbmNlKG90aGVyLCBEaXN0cmlidXRpb24pIGFuZCBzZWxmLnBhdGggPT0gb3RoZXIucGF0aAorCisgICAgIyBTZWUgaHR0cDovL2RvY3MucHl0aG9uLm9yZy9yZWZlcmVuY2UvZGF0YW1vZGVsI29iamVjdC5fX2hhc2hfXworICAgIF9faGFzaF9fID0gb2JqZWN0Ll9faGFzaF9fCisKKworY2xhc3MgRWdnSW5mb0Rpc3RyaWJ1dGlvbjoKKyAgICAiIiJDcmVhdGVkIHdpdGggdGhlICpwYXRoKiBvZiB0aGUgYGAuZWdnLWluZm9gYCBkaXJlY3Rvcnkgb3IgZmlsZSBwcm92aWRlZAorICAgIHRvIHRoZSBjb25zdHJ1Y3Rvci4gSXQgcmVhZHMgdGhlIG1ldGFkYXRhIGNvbnRhaW5lZCBpbiB0aGUgZmlsZSBpdHNlbGYsIG9yCisgICAgaWYgdGhlIGdpdmVuIHBhdGggaGFwcGVucyB0byBiZSBhIGRpcmVjdG9yeSwgdGhlIG1ldGFkYXRhIGlzIHJlYWQgZnJvbSB0aGUKKyAgICBmaWxlIGBgUEtHLUlORk9gYCB1bmRlciB0aGF0IGRpcmVjdG9yeS4iIiIKKworICAgIG5hbWUgPSAnJworICAgICIiIlRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24uIiIiCisKKyAgICB2ZXJzaW9uID0gJycKKyAgICAiIiJUaGUgdmVyc2lvbiBvZiB0aGUgZGlzdHJpYnV0aW9uLiIiIgorCisgICAgbWV0YWRhdGEgPSBOb25lCisgICAgIiIiQSA6Y2xhc3M6YHBhY2thZ2luZy5tZXRhZGF0YS5NZXRhZGF0YWAgaW5zdGFuY2UgbG9hZGVkIHdpdGgKKyAgICB0aGUgZGlzdHJpYnV0aW9uJ3MgYGBNRVRBREFUQWBgIGZpbGUuIiIiCisKKyAgICBfUkVRVUlSRU1FTlQgPSByZS5jb21waWxlKAorICAgICAgICByJyg/UDxuYW1lPlstQS1aYS16MC05Xy5dKylccyonCisgICAgICAgIHInKD9QPGZpcnN0Pig/Ojx8PD18IT18PT18Pj18PilbLUEtWmEtejAtOV8uXSspP1xzKicKKyAgICAgICAgcicoP1A8cmVzdD4oPzpccyosXHMqKD86PHw8PXwhPXw9PXw+PXw+KVstQS1aYS16MC05Xy5dKykqKVxzKicKKyAgICAgICAgcicoP1A8ZXh0cmFzPlxbLipcXSk/JykKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwYXRoKToKKyAgICAgICAgc2VsZi5wYXRoID0gcGF0aAorICAgICAgICBpZiBfY2FjaGVfZW5hYmxlZCBhbmQgcGF0aCBpbiBfY2FjaGVfcGF0aF9lZ2c6CisgICAgICAgICAgICBzZWxmLm1ldGFkYXRhID0gX2NhY2hlX3BhdGhfZWdnW3BhdGhdLm1ldGFkYXRhCisgICAgICAgICAgICBzZWxmLm5hbWUgPSBzZWxmLm1ldGFkYXRhWydOYW1lJ10KKyAgICAgICAgICAgIHNlbGYudmVyc2lvbiA9IHNlbGYubWV0YWRhdGFbJ1ZlcnNpb24nXQorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyByZXVzZWQgZnJvbSBEaXN0cmlidXRlJ3MgcGtnX3Jlc291cmNlcworICAgICAgICBkZWYgeWllbGRfbGluZXMoc3Rycyk6CisgICAgICAgICAgICAiIiJZaWVsZCBub24tZW1wdHkvbm9uLWNvbW1lbnQgbGluZXMgb2YgYSBgYGJhc2VzdHJpbmdgYAorICAgICAgICAgICAgb3Igc2VxdWVuY2UiIiIKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2Uoc3Rycywgc3RyKToKKyAgICAgICAgICAgICAgICBmb3IgcyBpbiBzdHJzLnNwbGl0bGluZXMoKToKKyAgICAgICAgICAgICAgICAgICAgcyA9IHMuc3RyaXAoKQorICAgICAgICAgICAgICAgICAgICAjIHNraXAgYmxhbmsgbGluZXMvY29tbWVudHMKKyAgICAgICAgICAgICAgICAgICAgaWYgcyBhbmQgbm90IHMuc3RhcnRzd2l0aCgnIycpOgorICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQgcworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBmb3Igc3MgaW4gc3RyczoKKyAgICAgICAgICAgICAgICAgICAgZm9yIHMgaW4geWllbGRfbGluZXMoc3MpOgorICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQgcworCisgICAgICAgIHJlcXVpcmVzID0gTm9uZQorCisgICAgICAgIGlmIHBhdGguZW5kc3dpdGgoJy5lZ2cnKToKKyAgICAgICAgICAgIGlmIG9zLnBhdGguaXNkaXIocGF0aCk6CisgICAgICAgICAgICAgICAgbWV0YV9wYXRoID0gb3MucGF0aC5qb2luKHBhdGgsICdFR0ctSU5GTycsICdQS0ctSU5GTycpCisgICAgICAgICAgICAgICAgc2VsZi5tZXRhZGF0YSA9IE1ldGFkYXRhKHBhdGg9bWV0YV9wYXRoKQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgcmVxX3BhdGggPSBvcy5wYXRoLmpvaW4ocGF0aCwgJ0VHRy1JTkZPJywgJ3JlcXVpcmVzLnR4dCcpCisgICAgICAgICAgICAgICAgICAgIHdpdGggb3BlbihyZXFfcGF0aCwgJ3InKSBhcyBmcDoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzID0gZnAucmVhZCgpCisgICAgICAgICAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzID0gTm9uZQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAjIEZJWE1FIGhhbmRsZSB0aGUgY2FzZSB3aGVyZSB6aXBmaWxlIGlzIG5vdCBhdmFpbGFibGUKKyAgICAgICAgICAgICAgICB6aXBmID0gemlwaW1wb3J0LnppcGltcG9ydGVyKHBhdGgpCisgICAgICAgICAgICAgICAgZmlsZW9iaiA9IFN0cmluZ0lPKAorICAgICAgICAgICAgICAgICAgICB6aXBmLmdldF9kYXRhKCdFR0ctSU5GTy9QS0ctSU5GTycpLmRlY29kZSgndXRmOCcpKQorICAgICAgICAgICAgICAgIHNlbGYubWV0YWRhdGEgPSBNZXRhZGF0YShmaWxlb2JqPWZpbGVvYmopCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICByZXF1aXJlcyA9IHppcGYuZ2V0X2RhdGEoJ0VHRy1JTkZPL3JlcXVpcmVzLnR4dCcpCisgICAgICAgICAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzID0gTm9uZQorICAgICAgICAgICAgc2VsZi5uYW1lID0gc2VsZi5tZXRhZGF0YVsnTmFtZSddCisgICAgICAgICAgICBzZWxmLnZlcnNpb24gPSBzZWxmLm1ldGFkYXRhWydWZXJzaW9uJ10KKworICAgICAgICBlbGlmIHBhdGguZW5kc3dpdGgoJy5lZ2ctaW5mbycpOgorICAgICAgICAgICAgaWYgb3MucGF0aC5pc2RpcihwYXRoKToKKyAgICAgICAgICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKHBhdGgsICdQS0ctSU5GTycpCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICB3aXRoIG9wZW4ob3MucGF0aC5qb2luKHBhdGgsICdyZXF1aXJlcy50eHQnKSwgJ3InKSBhcyBmcDoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzID0gZnAucmVhZCgpCisgICAgICAgICAgICAgICAgZXhjZXB0IElPRXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVzID0gTm9uZQorICAgICAgICAgICAgc2VsZi5tZXRhZGF0YSA9IE1ldGFkYXRhKHBhdGg9cGF0aCkKKyAgICAgICAgICAgIHNlbGYubmFtZSA9IHNlbGYubWV0YWRhdGFbJ05hbWUnXQorICAgICAgICAgICAgc2VsZi52ZXJzaW9uID0gc2VsZi5tZXRhZGF0YVsnVmVyc2lvbiddCisKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ3BhdGggbXVzdCBlbmQgd2l0aCAuZWdnLWluZm8gb3IgLmVnZywgZ290ICVyJyAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGgpCisKKyAgICAgICAgaWYgcmVxdWlyZXMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBpZiBzZWxmLm1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10gPT0gJzEuMSc6CisgICAgICAgICAgICAgICAgIyB3ZSBjYW4ndCBoYXZlIDEuMSBtZXRhZGF0YSAqYW5kKiBTZXR1cHRvb2xzIHJlcXVpcmVzCisgICAgICAgICAgICAgICAgZm9yIGZpZWxkIGluICgnT2Jzb2xldGVzJywgJ1JlcXVpcmVzJywgJ1Byb3ZpZGVzJyk6CisgICAgICAgICAgICAgICAgICAgIGRlbCBzZWxmLm1ldGFkYXRhW2ZpZWxkXQorCisgICAgICAgIHJlcXMgPSBbXQorCisgICAgICAgIGlmIHJlcXVpcmVzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgZm9yIGxpbmUgaW4geWllbGRfbGluZXMocmVxdWlyZXMpOgorICAgICAgICAgICAgICAgIGlmIGxpbmUuc3RhcnRzd2l0aCgnWycpOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgICdleHRlbnNpb25zIGluIHJlcXVpcmVzLnR4dCBhcmUgbm90IHN1cHBvcnRlZCAnCisgICAgICAgICAgICAgICAgICAgICAgICAnKHVzZWQgYnkgJXIgJXMpJywgc2VsZi5uYW1lLCBzZWxmLnZlcnNpb24pCisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgbWF0Y2ggPSBzZWxmLl9SRVFVSVJFTUVOVC5tYXRjaChsaW5lLnN0cmlwKCkpCisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBtYXRjaDoKKyAgICAgICAgICAgICAgICAgICAgICAgICMgdGhpcyBoYXBwZW5zIHdoZW4gd2UgZW5jb3VudGVyIGV4dHJhczsgc2luY2UgdGhleQorICAgICAgICAgICAgICAgICAgICAgICAgIyBhcmUgd3JpdHRlbiBhdCB0aGUgZW5kIG9mIHRoZSBmaWxlIHdlIGp1c3QgZXhpdAorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIG1hdGNoLmdyb3VwKCdleHRyYXMnKToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2cgPSAoJ2V4dHJhIHJlcXVpcmVtZW50cyBhcmUgbm90IHN1cHBvcnRlZCAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcodXNlZCBieSAlciAlcyknLCBzZWxmLm5hbWUsIHNlbGYudmVyc2lvbikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZyhtc2csIHNlbGYubmFtZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUgPSBtYXRjaC5ncm91cCgnbmFtZScpCisgICAgICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uID0gTm9uZQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgbWF0Y2guZ3JvdXAoJ2ZpcnN0Jyk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IG1hdGNoLmdyb3VwKCdmaXJzdCcpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgbWF0Y2guZ3JvdXAoJ3Jlc3QnKToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiArPSBtYXRjaC5ncm91cCgncmVzdCcpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IHZlcnNpb24ucmVwbGFjZSgnICcsICcnKSAgIyB0cmltIHNwYWNlcworICAgICAgICAgICAgICAgICAgICAgICAgaWYgdmVyc2lvbiBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXMuYXBwZW5kKG5hbWUpCisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXMuYXBwZW5kKCclcyAoJXMpJyAlIChuYW1lLCB2ZXJzaW9uKSkKKworICAgICAgICAgICAgaWYgbGVuKHJlcXMpID4gMDoKKyAgICAgICAgICAgICAgICBzZWxmLm1ldGFkYXRhWydSZXF1aXJlcy1EaXN0J10gKz0gcmVxcworCisgICAgICAgIGlmIF9jYWNoZV9lbmFibGVkOgorICAgICAgICAgICAgX2NhY2hlX3BhdGhfZWdnW3NlbGYucGF0aF0gPSBzZWxmCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiAnPEVnZ0luZm9EaXN0cmlidXRpb24gJXIgJXMgYXQgJXI+JyAlICgKKyAgICAgICAgICAgIHNlbGYubmFtZSwgc2VsZi52ZXJzaW9uLCBzZWxmLnBhdGgpCisKKyAgICBkZWYgbGlzdF9pbnN0YWxsZWRfZmlsZXMoc2VsZiwgbG9jYWw9RmFsc2UpOgorCisgICAgICAgIGRlZiBfbWQ1KHBhdGgpOgorICAgICAgICAgICAgd2l0aCBvcGVuKHBhdGgsICdyYicpIGFzIGY6CisgICAgICAgICAgICAgICAgY29udGVudCA9IGYucmVhZCgpCisgICAgICAgICAgICByZXR1cm4gbWQ1KGNvbnRlbnQpLmhleGRpZ2VzdCgpCisKKyAgICAgICAgZGVmIF9zaXplKHBhdGgpOgorICAgICAgICAgICAgcmV0dXJuIG9zLnN0YXQocGF0aCkuc3Rfc2l6ZQorCisgICAgICAgIHBhdGggPSBzZWxmLnBhdGgKKyAgICAgICAgaWYgbG9jYWw6CisgICAgICAgICAgICBwYXRoID0gcGF0aC5yZXBsYWNlKCcvJywgb3Muc2VwKQorCisgICAgICAgICMgWFhYIFdoYXQgYWJvdXQgc2NyaXB0cyBhbmQgZGF0YSBmaWxlcyA/CisgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKHBhdGgpOgorICAgICAgICAgICAgcmV0dXJuIFsocGF0aCwgX21kNShwYXRoKSwgX3NpemUocGF0aCkpXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZmlsZXMgPSBbXQorICAgICAgICAgICAgZm9yIHJvb3QsIGRpciwgZmlsZXNfIGluIG9zLndhbGsocGF0aCk6CisgICAgICAgICAgICAgICAgZm9yIGl0ZW0gaW4gZmlsZXNfOgorICAgICAgICAgICAgICAgICAgICBpdGVtID0gb3MucGF0aC5qb2luKHJvb3QsIGl0ZW0pCisgICAgICAgICAgICAgICAgICAgIGZpbGVzLmFwcGVuZCgoaXRlbSwgX21kNShpdGVtKSwgX3NpemUoaXRlbSkpKQorICAgICAgICAgICAgcmV0dXJuIGZpbGVzCisKKyAgICAgICAgcmV0dXJuIFtdCisKKyAgICBkZWYgdXNlcyhzZWxmLCBwYXRoKToKKyAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICBkZWYgX19lcV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIChpc2luc3RhbmNlKG90aGVyLCBFZ2dJbmZvRGlzdHJpYnV0aW9uKSBhbmQKKyAgICAgICAgICAgICAgICBzZWxmLnBhdGggPT0gb3RoZXIucGF0aCkKKworICAgICMgU2VlIGh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvcmVmZXJlbmNlL2RhdGFtb2RlbCNvYmplY3QuX19oYXNoX18KKyAgICBfX2hhc2hfXyA9IG9iamVjdC5fX2hhc2hfXworCisKK2RlZiBkaXN0aW5mb19kaXJuYW1lKG5hbWUsIHZlcnNpb24pOgorICAgICIiIgorICAgIFRoZSAqbmFtZSogYW5kICp2ZXJzaW9uKiBwYXJhbWV0ZXJzIGFyZSBjb252ZXJ0ZWQgaW50byB0aGVpcgorICAgIGZpbGVuYW1lLWVzY2FwZWQgZm9ybSwgaS5lLiBhbnkgYGAnLSdgYCBjaGFyYWN0ZXJzIGFyZSByZXBsYWNlZAorICAgIHdpdGggYGAnXydgYCBvdGhlciB0aGFuIHRoZSBvbmUgaW4gYGAnZGlzdC1pbmZvJ2BgIGFuZCB0aGUgb25lCisgICAgc2VwYXJhdGluZyB0aGUgbmFtZSBmcm9tIHRoZSB2ZXJzaW9uIG51bWJlci4KKworICAgIDpwYXJhbWV0ZXIgbmFtZTogaXMgY29udmVydGVkIHRvIGEgc3RhbmRhcmQgZGlzdHJpYnV0aW9uIG5hbWUgYnkgcmVwbGFjaW5nCisgICAgICAgICAgICAgICAgICAgICBhbnkgcnVucyBvZiBub24tIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIHdpdGggYSBzaW5nbGUKKyAgICAgICAgICAgICAgICAgICAgIGBgJy0nYGAuCisgICAgOnR5cGUgbmFtZTogc3RyaW5nCisgICAgOnBhcmFtZXRlciB2ZXJzaW9uOiBpcyBjb252ZXJ0ZWQgdG8gYSBzdGFuZGFyZCB2ZXJzaW9uIHN0cmluZy4gU3BhY2VzCisgICAgICAgICAgICAgICAgICAgICAgICBiZWNvbWUgZG90cywgYW5kIGFsbCBvdGhlciBub24tYWxwaGFudW1lcmljIGNoYXJhY3RlcnMKKyAgICAgICAgICAgICAgICAgICAgICAgIChleGNlcHQgZG90cykgYmVjb21lIGRhc2hlcywgd2l0aCBydW5zIG9mIG11bHRpcGxlCisgICAgICAgICAgICAgICAgICAgICAgICBkYXNoZXMgY29uZGVuc2VkIHRvIGEgc2luZ2xlIGRhc2guCisgICAgOnR5cGUgdmVyc2lvbjogc3RyaW5nCisgICAgOnJldHVybnM6IGRpcmVjdG9yeSBuYW1lCisgICAgOnJ0eXBlOiBzdHJpbmciIiIKKyAgICBmaWxlX2V4dGVuc2lvbiA9ICcuZGlzdC1pbmZvJworICAgIG5hbWUgPSBuYW1lLnJlcGxhY2UoJy0nLCAnXycpCisgICAgbm9ybWFsaXplZF92ZXJzaW9uID0gc3VnZ2VzdF9ub3JtYWxpemVkX3ZlcnNpb24odmVyc2lvbikKKyAgICAjIEJlY2F1c2UgdGhpcyBpcyBhIGxvb2t1cCBwcm9jZWR1cmUsIHNvbWV0aGluZyB3aWxsIGJlIHJldHVybmVkIGV2ZW4gaWYKKyAgICAjICAgaXQgaXMgYSB2ZXJzaW9uIHRoYXQgY2Fubm90IGJlIG5vcm1hbGl6ZWQKKyAgICBpZiBub3JtYWxpemVkX3ZlcnNpb24gaXMgTm9uZToKKyAgICAgICAgIyBVbmFibGUgdG8gYWNoaWV2ZSBub3JtYWxpdHk/CisgICAgICAgIG5vcm1hbGl6ZWRfdmVyc2lvbiA9IHZlcnNpb24KKyAgICByZXR1cm4gJy0nLmpvaW4oW25hbWUsIG5vcm1hbGl6ZWRfdmVyc2lvbl0pICsgZmlsZV9leHRlbnNpb24KKworCitkZWYgZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPUZhbHNlLCBwYXRocz1Ob25lKToKKyAgICAiIiIKKyAgICBQcm92aWRlcyBhbiBpdGVyYXRvciB0aGF0IGxvb2tzIGZvciBgYC5kaXN0LWluZm9gYCBkaXJlY3RvcmllcyBpbgorICAgIGBgc3lzLnBhdGhgYCBhbmQgcmV0dXJucyA6Y2xhc3M6YERpc3RyaWJ1dGlvbmAgaW5zdGFuY2VzIGZvciBlYWNoIG9uZSBvZgorICAgIHRoZW0uIElmIHRoZSBwYXJhbWV0ZXJzICp1c2VfZWdnX2luZm8qIGlzIGBgVHJ1ZWBgLCB0aGVuIHRoZSBgYC5lZ2ctaW5mb2BgCisgICAgZmlsZXMgYW5kIGRpcmVjdG9yZXMgYXJlIGl0ZXJhdGVkIGFzIHdlbGwuCisKKyAgICA6cnR5cGU6IGl0ZXJhdG9yIG9mIDpjbGFzczpgRGlzdHJpYnV0aW9uYCBhbmQgOmNsYXNzOmBFZ2dJbmZvRGlzdHJpYnV0aW9uYAorICAgICAgICAgICAgaW5zdGFuY2VzCisgICAgIiIiCisgICAgaWYgcGF0aHMgaXMgTm9uZToKKyAgICAgICAgcGF0aHMgPSBzeXMucGF0aAorCisgICAgaWYgbm90IF9jYWNoZV9lbmFibGVkOgorICAgICAgICBmb3IgZGlzdCBpbiBfeWllbGRfZGlzdHJpYnV0aW9ucyhUcnVlLCB1c2VfZWdnX2luZm8sIHBhdGhzKToKKyAgICAgICAgICAgIHlpZWxkIGRpc3QKKyAgICBlbHNlOgorICAgICAgICBfZ2VuZXJhdGVfY2FjaGUodXNlX2VnZ19pbmZvLCBwYXRocykKKworICAgICAgICBmb3IgZGlzdCBpbiBfY2FjaGVfcGF0aC52YWx1ZXMoKToKKyAgICAgICAgICAgIHlpZWxkIGRpc3QKKworICAgICAgICBpZiB1c2VfZWdnX2luZm86CisgICAgICAgICAgICBmb3IgZGlzdCBpbiBfY2FjaGVfcGF0aF9lZ2cudmFsdWVzKCk6CisgICAgICAgICAgICAgICAgeWllbGQgZGlzdAorCisKK2RlZiBnZXRfZGlzdHJpYnV0aW9uKG5hbWUsIHVzZV9lZ2dfaW5mbz1GYWxzZSwgcGF0aHM9Tm9uZSk6CisgICAgIiIiCisgICAgU2NhbnMgYWxsIGVsZW1lbnRzIGluIGBgc3lzLnBhdGhgYCBhbmQgbG9va3MgZm9yIGFsbCBkaXJlY3RvcmllcworICAgIGVuZGluZyB3aXRoIGBgLmRpc3QtaW5mb2BgLiBSZXR1cm5zIGEgOmNsYXNzOmBEaXN0cmlidXRpb25gCisgICAgY29ycmVzcG9uZGluZyB0byB0aGUgYGAuZGlzdC1pbmZvYGAgZGlyZWN0b3J5IHRoYXQgY29udGFpbnMgdGhlCisgICAgYGBNRVRBREFUQWBgIHRoYXQgbWF0Y2hlcyAqbmFtZSogZm9yIHRoZSAqbmFtZSogbWV0YWRhdGEgZmllbGQuCisgICAgSWYgbm8gZGlzdHJpYnV0aW9uIGV4aXN0cyB3aXRoIHRoZSBnaXZlbiAqbmFtZSogYW5kIHRoZSBwYXJhbWV0ZXIKKyAgICAqdXNlX2VnZ19pbmZvKiBpcyBzZXQgdG8gYGBUcnVlYGAsIHRoZW4gYWxsIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBlbmRpbmcKKyAgICB3aXRoIGBgLmVnZy1pbmZvYGAgYXJlIHNjYW5uZWQuIEEgOmNsYXNzOmBFZ2dJbmZvRGlzdHJpYnV0aW9uYCBpbnN0YW5jZSBpcworICAgIHJldHVybmVkIGlmIG9uZSBpcyBmb3VuZCB0aGF0IGhhcyBtZXRhZGF0YSB0aGF0IG1hdGNoZXMgKm5hbWUqIGZvciB0aGUKKyAgICAqbmFtZSogbWV0YWRhdGEgZmllbGQuCisKKyAgICBUaGlzIGZ1bmN0aW9uIG9ubHkgcmV0dXJucyB0aGUgZmlyc3QgcmVzdWx0IGZvdW5kLCBhcyBubyBtb3JlIHRoYW4gb25lCisgICAgdmFsdWUgaXMgZXhwZWN0ZWQuIElmIHRoZSBkaXJlY3RvcnkgaXMgbm90IGZvdW5kLCBgYE5vbmVgYCBpcyByZXR1cm5lZC4KKworICAgIDpydHlwZTogOmNsYXNzOmBEaXN0cmlidXRpb25gIG9yIDpjbGFzczpgRWdnSW5mb0Rpc3RyaWJ1dGlvbmAgb3IgTm9uZQorICAgICIiIgorICAgIGlmIHBhdGhzIGlzIE5vbmU6CisgICAgICAgIHBhdGhzID0gc3lzLnBhdGgKKworICAgIGlmIG5vdCBfY2FjaGVfZW5hYmxlZDoKKyAgICAgICAgZm9yIGRpc3QgaW4gX3lpZWxkX2Rpc3RyaWJ1dGlvbnMoVHJ1ZSwgdXNlX2VnZ19pbmZvLCBwYXRocyk6CisgICAgICAgICAgICBpZiBkaXN0Lm5hbWUgPT0gbmFtZToKKyAgICAgICAgICAgICAgICByZXR1cm4gZGlzdAorICAgIGVsc2U6CisgICAgICAgIF9nZW5lcmF0ZV9jYWNoZSh1c2VfZWdnX2luZm8sIHBhdGhzKQorCisgICAgICAgIGlmIG5hbWUgaW4gX2NhY2hlX25hbWU6CisgICAgICAgICAgICByZXR1cm4gX2NhY2hlX25hbWVbbmFtZV1bMF0KKyAgICAgICAgZWxpZiB1c2VfZWdnX2luZm8gYW5kIG5hbWUgaW4gX2NhY2hlX25hbWVfZWdnOgorICAgICAgICAgICAgcmV0dXJuIF9jYWNoZV9uYW1lX2VnZ1tuYW1lXVswXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKworCitkZWYgb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbihuYW1lLCB2ZXJzaW9uPU5vbmUsIHVzZV9lZ2dfaW5mbz1GYWxzZSk6CisgICAgIiIiCisgICAgSXRlcmF0ZXMgb3ZlciBhbGwgZGlzdHJpYnV0aW9ucyB0byBmaW5kIHdoaWNoIGRpc3RyaWJ1dGlvbnMgb2Jzb2xldGUKKyAgICAqbmFtZSouCisKKyAgICBJZiBhICp2ZXJzaW9uKiBpcyBwcm92aWRlZCwgaXQgd2lsbCBiZSB1c2VkIHRvIGZpbHRlciB0aGUgcmVzdWx0cy4KKyAgICBJZiB0aGUgYXJndW1lbnQgKnVzZV9lZ2dfaW5mbyogaXMgc2V0IHRvIGBgVHJ1ZWBgLCB0aGVuIGBgLmVnZy1pbmZvYGAKKyAgICBkaXN0cmlidXRpb25zIHdpbGwgYmUgY29uc2lkZXJlZCBhcyB3ZWxsLgorCisgICAgOnR5cGUgbmFtZTogc3RyaW5nCisgICAgOnR5cGUgdmVyc2lvbjogc3RyaW5nCisgICAgOnBhcmFtZXRlciBuYW1lOgorICAgICIiIgorICAgIGZvciBkaXN0IGluIGdldF9kaXN0cmlidXRpb25zKHVzZV9lZ2dfaW5mbyk6CisgICAgICAgIG9ic29sZXRlZCA9IChkaXN0Lm1ldGFkYXRhWydPYnNvbGV0ZXMtRGlzdCddICsKKyAgICAgICAgICAgICAgICAgICAgIGRpc3QubWV0YWRhdGFbJ09ic29sZXRlcyddKQorICAgICAgICBmb3Igb2JzIGluIG9ic29sZXRlZDoKKyAgICAgICAgICAgIG9fY29tcG9uZW50cyA9IG9icy5zcGxpdCgnICcsIDEpCisgICAgICAgICAgICBpZiBsZW4ob19jb21wb25lbnRzKSA9PSAxIG9yIHZlcnNpb24gaXMgTm9uZToKKyAgICAgICAgICAgICAgICBpZiBuYW1lID09IG9fY29tcG9uZW50c1swXToKKyAgICAgICAgICAgICAgICAgICAgeWllbGQgZGlzdAorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIHByZWRpY2F0ZSA9IFZlcnNpb25QcmVkaWNhdGUob2JzKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICdkaXN0cmlidXRpb24gJXIgaGFzIGlsbC1mb3JtZWQgb2Jzb2xldGVzIGZpZWxkOiAnCisgICAgICAgICAgICAgICAgICAgICAgICAnJXInICUgKGRpc3QubmFtZSwgb2JzKSkKKyAgICAgICAgICAgICAgICBpZiBuYW1lID09IG9fY29tcG9uZW50c1swXSBhbmQgcHJlZGljYXRlLm1hdGNoKHZlcnNpb24pOgorICAgICAgICAgICAgICAgICAgICB5aWVsZCBkaXN0CisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisKKworZGVmIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbihuYW1lLCB2ZXJzaW9uPU5vbmUsIHVzZV9lZ2dfaW5mbz1GYWxzZSk6CisgICAgIiIiCisgICAgSXRlcmF0ZXMgb3ZlciBhbGwgZGlzdHJpYnV0aW9ucyB0byBmaW5kIHdoaWNoIGRpc3RyaWJ1dGlvbnMgcHJvdmlkZSAqbmFtZSouCisgICAgSWYgYSAqdmVyc2lvbiogaXMgcHJvdmlkZWQsIGl0IHdpbGwgYmUgdXNlZCB0byBmaWx0ZXIgdGhlIHJlc3VsdHMuIFNjYW5zCisgICAgYWxsIGVsZW1lbnRzIGluIGBgc3lzLnBhdGhgYCAgYW5kIGxvb2tzIGZvciBhbGwgZGlyZWN0b3JpZXMgZW5kaW5nIHdpdGgKKyAgICBgYC5kaXN0LWluZm9gYC4gUmV0dXJucyBhIDpjbGFzczpgRGlzdHJpYnV0aW9uYCAgY29ycmVzcG9uZGluZyB0byB0aGUKKyAgICBgYC5kaXN0LWluZm9gYCBkaXJlY3RvcnkgdGhhdCBjb250YWlucyBhIGBgTUVUQURBVEFgYCB0aGF0IG1hdGNoZXMgKm5hbWUqCisgICAgZm9yIHRoZSBuYW1lIG1ldGFkYXRhLiBJZiB0aGUgYXJndW1lbnQgKnVzZV9lZ2dfaW5mbyogaXMgc2V0IHRvIGBgVHJ1ZWBgLAorICAgIHRoZW4gYWxsIGZpbGVzIGFuZCBkaXJlY3RvcmllcyBlbmRpbmcgd2l0aCBgYC5lZ2ctaW5mb2BgIGFyZSBjb25zaWRlcmVkCisgICAgYXMgd2VsbCBhbmQgcmV0dXJucyBhbiA6Y2xhc3M6YEVnZ0luZm9EaXN0cmlidXRpb25gIGluc3RhbmNlLgorCisgICAgVGhpcyBmdW5jdGlvbiBvbmx5IHJldHVybnMgdGhlIGZpcnN0IHJlc3VsdCBmb3VuZCwgc2luY2Ugbm8gbW9yZSB0aGFuCisgICAgb25lIHZhbHVlcyBhcmUgZXhwZWN0ZWQuIElmIHRoZSBkaXJlY3RvcnkgaXMgbm90IGZvdW5kLCByZXR1cm5zIGBgTm9uZWBgLgorCisgICAgOnBhcmFtZXRlciB2ZXJzaW9uOiBhIHZlcnNpb24gc3BlY2lmaWVyIHRoYXQgaW5kaWNhdGVzIHRoZSB2ZXJzaW9uCisgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZCwgY29uZm9ybWluZyB0byB0aGUgZm9ybWF0IGluIGBgUEVQLTM0NWBgCisKKyAgICA6dHlwZSBuYW1lOiBzdHJpbmcKKyAgICA6dHlwZSB2ZXJzaW9uOiBzdHJpbmcKKyAgICAiIiIKKyAgICBwcmVkaWNhdGUgPSBOb25lCisgICAgaWYgbm90IHZlcnNpb24gaXMgTm9uZToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcHJlZGljYXRlID0gVmVyc2lvblByZWRpY2F0ZShuYW1lICsgJyAoJyArIHZlcnNpb24gKyAnKScpCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nRXJyb3IoJ2ludmFsaWQgbmFtZSBvciB2ZXJzaW9uOiAlciwgJXInICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuYW1lLCB2ZXJzaW9uKSkKKworICAgIGZvciBkaXN0IGluIGdldF9kaXN0cmlidXRpb25zKHVzZV9lZ2dfaW5mbyk6CisgICAgICAgIHByb3ZpZGVkID0gZGlzdC5tZXRhZGF0YVsnUHJvdmlkZXMtRGlzdCddICsgZGlzdC5tZXRhZGF0YVsnUHJvdmlkZXMnXQorCisgICAgICAgIGZvciBwIGluIHByb3ZpZGVkOgorICAgICAgICAgICAgcF9jb21wb25lbnRzID0gcC5yc3BsaXQoJyAnLCAxKQorICAgICAgICAgICAgaWYgbGVuKHBfY29tcG9uZW50cykgPT0gMSBvciBwcmVkaWNhdGUgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBpZiBuYW1lID09IHBfY29tcG9uZW50c1swXToKKyAgICAgICAgICAgICAgICAgICAgeWllbGQgZGlzdAorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBwX25hbWUsIHBfdmVyID0gcF9jb21wb25lbnRzCisgICAgICAgICAgICAgICAgaWYgbGVuKHBfdmVyKSA8IDIgb3IgcF92ZXJbMF0gIT0gJygnIG9yIHBfdmVyWy0xXSAhPSAnKSc6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0Vycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgJ2Rpc3RyaWJ1dGlvbiAlciBoYXMgaW52YWxpZCBQcm92aWRlcyBmaWVsZDogJXInICUKKyAgICAgICAgICAgICAgICAgICAgICAgIChkaXN0Lm5hbWUsIHApKQorICAgICAgICAgICAgICAgIHBfdmVyID0gcF92ZXJbMTotMV0gICMgdHJpbSBvZmYgdGhlIHBhcmVudGhlc2lzCisgICAgICAgICAgICAgICAgaWYgcF9uYW1lID09IG5hbWUgYW5kIHByZWRpY2F0ZS5tYXRjaChwX3Zlcik6CisgICAgICAgICAgICAgICAgICAgIHlpZWxkIGRpc3QKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKworCitkZWYgZ2V0X2ZpbGVfdXNlcnMocGF0aCk6CisgICAgIiIiCisgICAgSXRlcmF0ZXMgb3ZlciBhbGwgZGlzdHJpYnV0aW9ucyB0byBmaW5kIG91dCB3aGljaCBkaXN0cmlidXRpb25zIHVzZQorICAgICpwYXRoKi4KKworICAgIDpwYXJhbWV0ZXIgcGF0aDogY2FuIGJlIGEgbG9jYWwgYWJzb2x1dGUgcGF0aCBvciBhIHJlbGF0aXZlCisgICAgICAgICAgICAgICAgICAgICBgYCcvJ2BgLXNlcGFyYXRlZCBwYXRoLgorICAgIDp0eXBlIHBhdGg6IHN0cmluZworICAgIDpydHlwZTogaXRlcmF0b3Igb2YgOmNsYXNzOmBEaXN0cmlidXRpb25gIGluc3RhbmNlcworICAgICIiIgorICAgIGZvciBkaXN0IGluIGdldF9kaXN0cmlidXRpb25zKCk6CisgICAgICAgIGlmIGRpc3QudXNlcyhwYXRoKToKKyAgICAgICAgICAgIHlpZWxkIGRpc3QKKworCitkZWYgZ2V0X2ZpbGVfcGF0aChkaXN0cmlidXRpb25fbmFtZSwgcmVsYXRpdmVfcGF0aCk6CisgICAgIiIiUmV0dXJuIHRoZSBwYXRoIHRvIGEgcmVzb3VyY2UgZmlsZS4iIiIKKyAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihkaXN0cmlidXRpb25fbmFtZSkKKyAgICBpZiBkaXN0IGlzIG5vdCBOb25lOgorICAgICAgICByZXR1cm4gZGlzdC5nZXRfcmVzb3VyY2VfcGF0aChyZWxhdGl2ZV9wYXRoKQorICAgIHJhaXNlIExvb2t1cEVycm9yKCdubyBkaXN0cmlidXRpb24gbmFtZWQgJXIgZm91bmQnICUgZGlzdHJpYnV0aW9uX25hbWUpCisKKworZGVmIGdldF9maWxlKGRpc3RyaWJ1dGlvbl9uYW1lLCByZWxhdGl2ZV9wYXRoLCAqYXJncywgKiprd2FyZ3MpOgorICAgICIiIk9wZW4gYW5kIHJldHVybiBhIHJlc291cmNlIGZpbGUuIiIiCisgICAgcmV0dXJuIG9wZW4oZ2V0X2ZpbGVfcGF0aChkaXN0cmlidXRpb25fbmFtZSwgcmVsYXRpdmVfcGF0aCksCisgICAgICAgICAgICAgICAgKmFyZ3MsICoqa3dhcmdzKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9kZXBncmFwaC5weSBiL0xpYi9wYWNrYWdpbmcvZGVwZ3JhcGgucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDYzM2I2MwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvZGVwZ3JhcGgucHkKQEAgLTAsMCArMSwyNzAgQEAKKyIiIkNsYXNzIGFuZCBmdW5jdGlvbnMgZGVhbGluZyB3aXRoIGRlcGVuZGVuY2llcyBiZXR3ZWVuIGRpc3RyaWJ1dGlvbnMuCisKK1RoaXMgbW9kdWxlIHByb3ZpZGVzIGEgRGVwZW5kZW5jeUdyYXBoIGNsYXNzIHRvIHJlcHJlc2VudCB0aGUKK2RlcGVuZGVuY2llcyBiZXR3ZWVuIGRpc3RyaWJ1dGlvbnMuICBBdXhpbGlhcnkgZnVuY3Rpb25zIGNhbiBnZW5lcmF0ZSBhCitncmFwaCwgZmluZCByZXZlcnNlIGRlcGVuZGVuY2llcywgYW5kIHByaW50IGEgZ3JhcGggaW4gRE9UIGZvcm1hdC4KKyIiIgorCitpbXBvcnQgc3lzCisKK2Zyb20gaW8gaW1wb3J0IFN0cmluZ0lPCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0Vycm9yCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBWZXJzaW9uUHJlZGljYXRlLCBJcnJhdGlvbmFsVmVyc2lvbkVycm9yCisKK19fYWxsX18gPSBbJ0RlcGVuZGVuY3lHcmFwaCcsICdnZW5lcmF0ZV9ncmFwaCcsICdkZXBlbmRlbnRfZGlzdHMnLAorICAgICAgICAgICAnZ3JhcGhfdG9fZG90J10KKworCitjbGFzcyBEZXBlbmRlbmN5R3JhcGg6CisgICAgIiIiCisgICAgUmVwcmVzZW50cyBhIGRlcGVuZGVuY3kgZ3JhcGggYmV0d2VlbiBkaXN0cmlidXRpb25zLgorCisgICAgVGhlIGRlcGVuZGVuY3kgcmVsYXRpb25zaGlwcyBhcmUgc3RvcmVkIGluIGFuIGBgYWRqYWNlbmN5X2xpc3RgYCB0aGF0IG1hcHMKKyAgICBkaXN0cmlidXRpb25zIHRvIGEgbGlzdCBvZiBgYChvdGhlciwgbGFiZWwpYGAgdHVwbGVzIHdoZXJlICBgYG90aGVyYGAKKyAgICBpcyBhIGRpc3RyaWJ1dGlvbiBhbmQgdGhlIGVkZ2UgaXMgbGFiZWxlZCB3aXRoIGBgbGFiZWxgYCAoaS5lLiB0aGUgdmVyc2lvbgorICAgIHNwZWNpZmllciwgaWYgc3VjaCB3YXMgcHJvdmlkZWQpLiBBbHNvLCBmb3IgbW9yZSBlZmZpY2llbnQgdHJhdmVyc2FsLCBmb3IKKyAgICBldmVyeSBkaXN0cmlidXRpb24gYGB4YGAsIGEgbGlzdCBvZiBwcmVkZWNlc3NvcnMgaXMga2VwdCBpbgorICAgIGBgcmV2ZXJzZV9saXN0W3hdYGAuIEFuIGVkZ2UgZnJvbSBkaXN0cmlidXRpb24gYGBhYGAgdG8KKyAgICBkaXN0cmlidXRpb24gYGBiYGAgbWVhbnMgdGhhdCBgYGFgYCBkZXBlbmRzIG9uIGBgYmBgLiBJZiBhbnkgbWlzc2luZworICAgIGRlcGVuZGVuY2llcyBhcmUgZm91bmQsIHRoZXkgYXJlIHN0b3JlZCBpbiBgYG1pc3NpbmdgYCwgd2hpY2ggaXMgYQorICAgIGRpY3Rpb25hcnkgdGhhdCBtYXBzIGRpc3RyaWJ1dGlvbnMgdG8gYSBsaXN0IG9mIHJlcXVpcmVtZW50cyB0aGF0IHdlcmUgbm90CisgICAgcHJvdmlkZWQgYnkgYW55IG90aGVyIGRpc3RyaWJ1dGlvbnMuCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgIHNlbGYuYWRqYWNlbmN5X2xpc3QgPSB7fQorICAgICAgICBzZWxmLnJldmVyc2VfbGlzdCA9IHt9CisgICAgICAgIHNlbGYubWlzc2luZyA9IHt9CisKKyAgICBkZWYgYWRkX2Rpc3RyaWJ1dGlvbihzZWxmLCBkaXN0cmlidXRpb24pOgorICAgICAgICAiIiJBZGQgdGhlICpkaXN0cmlidXRpb24qIHRvIHRoZSBncmFwaC4KKworICAgICAgICA6dHlwZSBkaXN0cmlidXRpb246IDpjbGFzczpgcGFja2FnaW5nLmRhdGFiYXNlLkRpc3RyaWJ1dGlvbmAgb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICA6Y2xhc3M6YHBhY2thZ2luZy5kYXRhYmFzZS5FZ2dJbmZvRGlzdHJpYnV0aW9uYAorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5hZGphY2VuY3lfbGlzdFtkaXN0cmlidXRpb25dID0gW10KKyAgICAgICAgc2VsZi5yZXZlcnNlX2xpc3RbZGlzdHJpYnV0aW9uXSA9IFtdCisgICAgICAgIHNlbGYubWlzc2luZ1tkaXN0cmlidXRpb25dID0gW10KKworICAgIGRlZiBhZGRfZWRnZShzZWxmLCB4LCB5LCBsYWJlbD1Ob25lKToKKyAgICAgICAgIiIiQWRkIGFuIGVkZ2UgZnJvbSBkaXN0cmlidXRpb24gKngqIHRvIGRpc3RyaWJ1dGlvbiAqeSogd2l0aCB0aGUgZ2l2ZW4KKyAgICAgICAgKmxhYmVsKi4KKworICAgICAgICA6dHlwZSB4OiA6Y2xhc3M6YHBhY2thZ2luZy5kYXRhYmFzZS5EaXN0cmlidXRpb25gIG9yCisgICAgICAgICAgICAgICAgIDpjbGFzczpgcGFja2FnaW5nLmRhdGFiYXNlLkVnZ0luZm9EaXN0cmlidXRpb25gCisgICAgICAgIDp0eXBlIHk6IDpjbGFzczpgcGFja2FnaW5nLmRhdGFiYXNlLkRpc3RyaWJ1dGlvbmAgb3IKKyAgICAgICAgICAgICAgICAgOmNsYXNzOmBwYWNrYWdpbmcuZGF0YWJhc2UuRWdnSW5mb0Rpc3RyaWJ1dGlvbmAKKyAgICAgICAgOnR5cGUgbGFiZWw6IGBgc3RyYGAgb3IgYGBOb25lYGAKKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuYWRqYWNlbmN5X2xpc3RbeF0uYXBwZW5kKCh5LCBsYWJlbCkpCisgICAgICAgICMgbXVsdGlwbGUgZWRnZXMgYXJlIGFsbG93ZWQsIHNvIGJlIGNhcmVmdWwKKyAgICAgICAgaWYgeCBub3QgaW4gc2VsZi5yZXZlcnNlX2xpc3RbeV06CisgICAgICAgICAgICBzZWxmLnJldmVyc2VfbGlzdFt5XS5hcHBlbmQoeCkKKworICAgIGRlZiBhZGRfbWlzc2luZyhzZWxmLCBkaXN0cmlidXRpb24sIHJlcXVpcmVtZW50KToKKyAgICAgICAgIiIiCisgICAgICAgIEFkZCBhIG1pc3NpbmcgKnJlcXVpcmVtZW50KiBmb3IgdGhlIGdpdmVuICpkaXN0cmlidXRpb24qLgorCisgICAgICAgIDp0eXBlIGRpc3RyaWJ1dGlvbjogOmNsYXNzOmBwYWNrYWdpbmcuZGF0YWJhc2UuRGlzdHJpYnV0aW9uYCBvcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpjbGFzczpgcGFja2FnaW5nLmRhdGFiYXNlLkVnZ0luZm9EaXN0cmlidXRpb25gCisgICAgICAgIDp0eXBlIHJlcXVpcmVtZW50OiBgYHN0cmBgCisgICAgICAgICIiIgorICAgICAgICBzZWxmLm1pc3NpbmdbZGlzdHJpYnV0aW9uXS5hcHBlbmQocmVxdWlyZW1lbnQpCisKKyAgICBkZWYgX3JlcHJfZGlzdChzZWxmLCBkaXN0KToKKyAgICAgICAgcmV0dXJuICclciAlcycgJSAoZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24pCisKKyAgICBkZWYgcmVwcl9ub2RlKHNlbGYsIGRpc3QsIGxldmVsPTEpOgorICAgICAgICAiIiJQcmludHMgb25seSBhIHN1YmdyYXBoIiIiCisgICAgICAgIG91dHB1dCA9IFtdCisgICAgICAgIG91dHB1dC5hcHBlbmQoc2VsZi5fcmVwcl9kaXN0KGRpc3QpKQorICAgICAgICBmb3Igb3RoZXIsIGxhYmVsIGluIHNlbGYuYWRqYWNlbmN5X2xpc3RbZGlzdF06CisgICAgICAgICAgICBkaXN0ID0gc2VsZi5fcmVwcl9kaXN0KG90aGVyKQorICAgICAgICAgICAgaWYgbGFiZWwgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgZGlzdCA9ICclcyBbJXNdJyAlIChkaXN0LCBsYWJlbCkKKyAgICAgICAgICAgIG91dHB1dC5hcHBlbmQoJyAgICAnICogbGV2ZWwgKyBzdHIoZGlzdCkpCisgICAgICAgICAgICBzdWJvdXRwdXQgPSBzZWxmLnJlcHJfbm9kZShvdGhlciwgbGV2ZWwgKyAxKQorICAgICAgICAgICAgc3VicyA9IHN1Ym91dHB1dC5zcGxpdCgnXG4nKQorICAgICAgICAgICAgb3V0cHV0LmV4dGVuZChzdWJzWzE6XSkKKyAgICAgICAgcmV0dXJuICdcbicuam9pbihvdXRwdXQpCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgICIiIlJlcHJlc2VudGF0aW9uIG9mIHRoZSBncmFwaCIiIgorICAgICAgICBvdXRwdXQgPSBbXQorICAgICAgICBmb3IgZGlzdCwgYWRqcyBpbiBzZWxmLmFkamFjZW5jeV9saXN0Lml0ZW1zKCk6CisgICAgICAgICAgICBvdXRwdXQuYXBwZW5kKHNlbGYucmVwcl9ub2RlKGRpc3QpKQorICAgICAgICByZXR1cm4gJ1xuJy5qb2luKG91dHB1dCkKKworCitkZWYgZ3JhcGhfdG9fZG90KGdyYXBoLCBmLCBza2lwX2Rpc2Nvbm5lY3RlZD1UcnVlKToKKyAgICAiIiJXcml0ZXMgYSBET1Qgb3V0cHV0IGZvciB0aGUgZ3JhcGggdG8gdGhlIHByb3ZpZGVkIGZpbGUgKmYqLgorCisgICAgSWYgKnNraXBfZGlzY29ubmVjdGVkKiBpcyBzZXQgdG8gYGBUcnVlYGAsIHRoZW4gYWxsIGRpc3RyaWJ1dGlvbnMKKyAgICB0aGF0IGFyZSBub3QgZGVwZW5kZW50IG9uIGFueSBvdGhlciBkaXN0cmlidXRpb24gYXJlIHNraXBwZWQuCisKKyAgICA6dHlwZSBmOiBoYXMgdG8gc3VwcG9ydCBgYGZpbGVgYC1saWtlIG9wZXJhdGlvbnMKKyAgICA6dHlwZSBza2lwX2Rpc2Nvbm5lY3RlZDogYGBib29sYGAKKyAgICAiIiIKKyAgICBkaXNjb25uZWN0ZWQgPSBbXQorCisgICAgZi53cml0ZSgiZGlncmFwaCBkZXBlbmRlbmNpZXMge1xuIikKKyAgICBmb3IgZGlzdCwgYWRqcyBpbiBncmFwaC5hZGphY2VuY3lfbGlzdC5pdGVtcygpOgorICAgICAgICBpZiBsZW4oYWRqcykgPT0gMCBhbmQgbm90IHNraXBfZGlzY29ubmVjdGVkOgorICAgICAgICAgICAgZGlzY29ubmVjdGVkLmFwcGVuZChkaXN0KQorICAgICAgICBmb3Igb3RoZXIsIGxhYmVsIGluIGFkanM6CisgICAgICAgICAgICBpZiBub3QgbGFiZWwgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBmLndyaXRlKCciJXMiIC0+ICIlcyIgW2xhYmVsPSIlcyJdXG4nICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRpc3QubmFtZSwgb3RoZXIubmFtZSwgbGFiZWwpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBmLndyaXRlKCciJXMiIC0+ICIlcyJcbicgJSAoZGlzdC5uYW1lLCBvdGhlci5uYW1lKSkKKyAgICBpZiBub3Qgc2tpcF9kaXNjb25uZWN0ZWQgYW5kIGxlbihkaXNjb25uZWN0ZWQpID4gMDoKKyAgICAgICAgZi53cml0ZSgnc3ViZ3JhcGggZGlzY29ubmVjdGVkIHtcbicpCisgICAgICAgIGYud3JpdGUoJ2xhYmVsID0gIkRpc2Nvbm5lY3RlZCJcbicpCisgICAgICAgIGYud3JpdGUoJ2JnY29sb3IgPSByZWRcbicpCisKKyAgICAgICAgZm9yIGRpc3QgaW4gZGlzY29ubmVjdGVkOgorICAgICAgICAgICAgZi53cml0ZSgnIiVzIicgJSBkaXN0Lm5hbWUpCisgICAgICAgICAgICBmLndyaXRlKCdcbicpCisgICAgICAgIGYud3JpdGUoJ31cbicpCisgICAgZi53cml0ZSgnfVxuJykKKworCitkZWYgZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpOgorICAgICIiIkdlbmVyYXRlcyBhIGRlcGVuZGVuY3kgZ3JhcGggZnJvbSB0aGUgZ2l2ZW4gZGlzdHJpYnV0aW9ucy4KKworICAgIDpwYXJhbWV0ZXIgZGlzdHM6IGEgbGlzdCBvZiBkaXN0cmlidXRpb25zCisgICAgOnR5cGUgZGlzdHM6IGxpc3Qgb2YgOmNsYXNzOmBwYWNrYWdpbmcuZGF0YWJhc2UuRGlzdHJpYnV0aW9uYCBhbmQKKyAgICAgICAgICAgICAgICAgOmNsYXNzOmBwYWNrYWdpbmcuZGF0YWJhc2UuRWdnSW5mb0Rpc3RyaWJ1dGlvbmAgaW5zdGFuY2VzCisgICAgOnJ0eXBlOiBhIDpjbGFzczpgRGVwZW5kZW5jeUdyYXBoYCBpbnN0YW5jZQorICAgICIiIgorICAgIGdyYXBoID0gRGVwZW5kZW5jeUdyYXBoKCkKKyAgICBwcm92aWRlZCA9IHt9ICAjIG1hcHMgbmFtZXMgdG8gbGlzdHMgb2YgKHZlcnNpb24sIGRpc3QpIHR1cGxlcworCisgICAgIyBmaXJzdCwgYnVpbGQgdGhlIGdyYXBoIGFuZCBmaW5kIG91dCB0aGUgcHJvdmlkZXMKKyAgICBmb3IgZGlzdCBpbiBkaXN0czoKKyAgICAgICAgZ3JhcGguYWRkX2Rpc3RyaWJ1dGlvbihkaXN0KQorICAgICAgICBwcm92aWRlcyA9IChkaXN0Lm1ldGFkYXRhWydQcm92aWRlcy1EaXN0J10gKworICAgICAgICAgICAgICAgICAgICBkaXN0Lm1ldGFkYXRhWydQcm92aWRlcyddICsKKyAgICAgICAgICAgICAgICAgICAgWyclcyAoJXMpJyAlIChkaXN0Lm5hbWUsIGRpc3QudmVyc2lvbildKQorCisgICAgICAgIGZvciBwIGluIHByb3ZpZGVzOgorICAgICAgICAgICAgY29tcHMgPSBwLnN0cmlwKCkucnNwbGl0KCIgIiwgMSkKKyAgICAgICAgICAgIG5hbWUgPSBjb21wc1swXQorICAgICAgICAgICAgdmVyc2lvbiA9IE5vbmUKKyAgICAgICAgICAgIGlmIGxlbihjb21wcykgPT0gMjoKKyAgICAgICAgICAgICAgICB2ZXJzaW9uID0gY29tcHNbMV0KKyAgICAgICAgICAgICAgICBpZiBsZW4odmVyc2lvbikgPCAzIG9yIHZlcnNpb25bMF0gIT0gJygnIG9yIHZlcnNpb25bLTFdICE9ICcpJzoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nRXJyb3IoJ2Rpc3RyaWJ1dGlvbiAlciBoYXMgaWxsLWZvcm1lZCcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Byb3ZpZGVzIGZpZWxkOiAlcicgJSAoZGlzdC5uYW1lLCBwKSkKKyAgICAgICAgICAgICAgICB2ZXJzaW9uID0gdmVyc2lvblsxOi0xXSAgIyB0cmltIG9mZiBwYXJlbnRoZXNpcworICAgICAgICAgICAgaWYgbmFtZSBub3QgaW4gcHJvdmlkZWQ6CisgICAgICAgICAgICAgICAgcHJvdmlkZWRbbmFtZV0gPSBbXQorICAgICAgICAgICAgcHJvdmlkZWRbbmFtZV0uYXBwZW5kKCh2ZXJzaW9uLCBkaXN0KSkKKworICAgICMgbm93IG1ha2UgdGhlIGVkZ2VzCisgICAgZm9yIGRpc3QgaW4gZGlzdHM6CisgICAgICAgIHJlcXVpcmVzID0gZGlzdC5tZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddICsgZGlzdC5tZXRhZGF0YVsnUmVxdWlyZXMnXQorICAgICAgICBmb3IgcmVxIGluIHJlcXVpcmVzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHByZWRpY2F0ZSA9IFZlcnNpb25QcmVkaWNhdGUocmVxKQorICAgICAgICAgICAgZXhjZXB0IElycmF0aW9uYWxWZXJzaW9uRXJyb3I6CisgICAgICAgICAgICAgICAgIyBYWFggY29tcGF0LW1vZGUgaWYgY2Fubm90IHJlYWQgdGhlIHZlcnNpb24KKyAgICAgICAgICAgICAgICBuYW1lID0gcmVxLnNwbGl0KClbMF0KKyAgICAgICAgICAgICAgICBwcmVkaWNhdGUgPSBWZXJzaW9uUHJlZGljYXRlKG5hbWUpCisKKyAgICAgICAgICAgIG5hbWUgPSBwcmVkaWNhdGUubmFtZQorCisgICAgICAgICAgICBpZiBuYW1lIG5vdCBpbiBwcm92aWRlZDoKKyAgICAgICAgICAgICAgICBncmFwaC5hZGRfbWlzc2luZyhkaXN0LCByZXEpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG1hdGNoZWQgPSBGYWxzZQorICAgICAgICAgICAgICAgIGZvciB2ZXJzaW9uLCBwcm92aWRlciBpbiBwcm92aWRlZFtuYW1lXToKKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgbWF0Y2ggPSBwcmVkaWNhdGUubWF0Y2godmVyc2lvbikKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IElycmF0aW9uYWxWZXJzaW9uRXJyb3I6CisgICAgICAgICAgICAgICAgICAgICAgICAjIFhYWCBzbWFsbCBjb21wYXQtbW9kZQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgdmVyc2lvbi5zcGxpdCgnICcpID09IDE6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0Y2ggPSBUcnVlCisgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdGNoID0gRmFsc2UKKworICAgICAgICAgICAgICAgICAgICBpZiBtYXRjaDoKKyAgICAgICAgICAgICAgICAgICAgICAgIGdyYXBoLmFkZF9lZGdlKGRpc3QsIHByb3ZpZGVyLCByZXEpCisgICAgICAgICAgICAgICAgICAgICAgICBtYXRjaGVkID0gVHJ1ZQorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICBpZiBub3QgbWF0Y2hlZDoKKyAgICAgICAgICAgICAgICAgICAgZ3JhcGguYWRkX21pc3NpbmcoZGlzdCwgcmVxKQorICAgIHJldHVybiBncmFwaAorCisKK2RlZiBkZXBlbmRlbnRfZGlzdHMoZGlzdHMsIGRpc3QpOgorICAgICIiIlJlY3Vyc2l2ZWx5IGdlbmVyYXRlIGEgbGlzdCBvZiBkaXN0cmlidXRpb25zIGZyb20gKmRpc3RzKiB0aGF0IGFyZQorICAgIGRlcGVuZGVudCBvbiAqZGlzdCouCisKKyAgICA6cGFyYW0gZGlzdHM6IGEgbGlzdCBvZiBkaXN0cmlidXRpb25zCisgICAgOnBhcmFtIGRpc3Q6IGEgZGlzdHJpYnV0aW9uLCBtZW1iZXIgb2YgKmRpc3RzKiBmb3Igd2hpY2ggd2UgYXJlIGludGVyZXN0ZWQKKyAgICAiIiIKKyAgICBpZiBkaXN0IG5vdCBpbiBkaXN0czoKKyAgICAgICAgcmFpc2UgVmFsdWVFcnJvcignZ2l2ZW4gZGlzdHJpYnV0aW9uICVyIGlzIG5vdCBhIG1lbWJlciBvZiB0aGUgbGlzdCcgJQorICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3QubmFtZSkKKyAgICBncmFwaCA9IGdlbmVyYXRlX2dyYXBoKGRpc3RzKQorCisgICAgZGVwID0gW2Rpc3RdICAjIGRlcGVuZGVudCBkaXN0cmlidXRpb25zCisgICAgZnJpbmdlID0gZ3JhcGgucmV2ZXJzZV9saXN0W2Rpc3RdICAjIGxpc3Qgb2Ygbm9kZXMgd2Ugc2hvdWxkIGluc3BlY3QKKworICAgIHdoaWxlIG5vdCBsZW4oZnJpbmdlKSA9PSAwOgorICAgICAgICBub2RlID0gZnJpbmdlLnBvcCgpCisgICAgICAgIGRlcC5hcHBlbmQobm9kZSkKKyAgICAgICAgZm9yIHByZXYgaW4gZ3JhcGgucmV2ZXJzZV9saXN0W25vZGVdOgorICAgICAgICAgICAgaWYgcHJldiBub3QgaW4gZGVwOgorICAgICAgICAgICAgICAgIGZyaW5nZS5hcHBlbmQocHJldikKKworICAgIGRlcC5wb3AoMCkgICMgcmVtb3ZlIGRpc3QgZnJvbSBkZXAsIHdhcyB0aGVyZSB0byBwcmV2ZW50IGluZmluaXRlIGxvb3BzCisgICAgcmV0dXJuIGRlcAorCisKK2RlZiBtYWluKCk6CisgICAgIyBYWFggbW92ZSB0byBydW4uX2dyYXBoCisgICAgZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0IGdldF9kaXN0cmlidXRpb25zCisgICAgdGVtcG91dCA9IFN0cmluZ0lPKCkKKyAgICB0cnk6CisgICAgICAgIG9sZCA9IHN5cy5zdGRlcnIKKyAgICAgICAgc3lzLnN0ZGVyciA9IHRlbXBvdXQKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZGlzdHMgPSBsaXN0KGdldF9kaXN0cmlidXRpb25zKHVzZV9lZ2dfaW5mbz1UcnVlKSkKKyAgICAgICAgICAgIGdyYXBoID0gZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzeXMuc3RkZXJyID0gb2xkCisgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICB0ZW1wb3V0LnNlZWsoMCkKKyAgICAgICAgdGVtcG91dCA9IHRlbXBvdXQucmVhZCgpCisgICAgICAgIHByaW50KCdDb3VsZCBub3QgZ2VuZXJhdGUgdGhlIGdyYXBoJykKKyAgICAgICAgcHJpbnQodGVtcG91dCkKKyAgICAgICAgcHJpbnQoZSkKKyAgICAgICAgc3lzLmV4aXQoMSkKKworICAgIGZvciBkaXN0LCByZXFzIGluIGdyYXBoLm1pc3NpbmcuaXRlbXMoKToKKyAgICAgICAgaWYgbGVuKHJlcXMpID4gMDoKKyAgICAgICAgICAgIHByaW50KCJXYXJuaW5nOiBNaXNzaW5nIGRlcGVuZGVuY2llcyBmb3IgJXI6IiAlIGRpc3QubmFtZSwKKyAgICAgICAgICAgICAgICAgICIsICIuam9pbihyZXFzKSkKKyAgICAjIFhYWCByZXBsYWNlIHdpdGggYXJncGFyc2UKKyAgICBpZiBsZW4oc3lzLmFyZ3YpID09IDE6CisgICAgICAgIHByaW50KCdEZXBlbmRlbmN5IGdyYXBoOicpCisgICAgICAgIHByaW50KCcgICAnLCByZXByKGdyYXBoKS5yZXBsYWNlKCdcbicsICdcbiAgICAnKSkKKyAgICAgICAgc3lzLmV4aXQoMCkKKyAgICBlbGlmIGxlbihzeXMuYXJndikgPiAxIGFuZCBzeXMuYXJndlsxXSBpbiAoJy1kJywgJy0tZG90Jyk6CisgICAgICAgIGlmIGxlbihzeXMuYXJndikgPiAyOgorICAgICAgICAgICAgZmlsZW5hbWUgPSBzeXMuYXJndlsyXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZmlsZW5hbWUgPSAnZGVwZ3JhcGguZG90JworCisgICAgICAgIHdpdGggb3BlbihmaWxlbmFtZSwgJ3cnKSBhcyBmOgorICAgICAgICAgICAgZ3JhcGhfdG9fZG90KGdyYXBoLCBmLCBUcnVlKQorICAgICAgICB0ZW1wb3V0LnNlZWsoMCkKKyAgICAgICAgdGVtcG91dCA9IHRlbXBvdXQucmVhZCgpCisgICAgICAgIHByaW50KHRlbXBvdXQpCisgICAgICAgIHByaW50KCdEb3QgZmlsZSB3cml0dGVuIGF0ICVyJyAlIGZpbGVuYW1lKQorICAgICAgICBzeXMuZXhpdCgwKQorICAgIGVsc2U6CisgICAgICAgIHByaW50KCdTdXBwb3J0ZWQgb3B0aW9uOiAtZCBbZmlsZW5hbWVdJykKKyAgICAgICAgc3lzLmV4aXQoMSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvZGlzdC5weSBiL0xpYi9wYWNrYWdpbmcvZGlzdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MDc3NjdlCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9kaXN0LnB5CkBAIC0wLDAgKzEsNzY5IEBACisiIiJDbGFzcyByZXByZXNlbnRpbmcgdGhlIHByb2plY3QgYmVpbmcgYnVpbHQvaW5zdGFsbGVkL2V0Yy4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgcmUKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgc3RydG9ib29sLCByZXNvbHZlX25hbWUKK2Zyb20gcGFja2FnaW5nLmNvbmZpZyBpbXBvcnQgQ29uZmlnCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChQYWNrYWdpbmdPcHRpb25FcnJvciwgUGFja2FnaW5nQXJnRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYWNrYWdpbmdNb2R1bGVFcnJvciwgUGFja2FnaW5nQ2xhc3NFcnJvcikKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQgaW1wb3J0IGdldF9jb21tYW5kX2NsYXNzLCBTVEFOREFSRF9DT01NQU5EUworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YQorZnJvbSBwYWNrYWdpbmcuZmFuY3lfZ2V0b3B0IGltcG9ydCBGYW5jeUdldG9wdAorCisjIFJlZ2V4IHRvIGRlZmluZSBhY2NlcHRhYmxlIFBhY2thZ2luZyBjb21tYW5kIG5hbWVzLiAgVGhpcyBpcyBub3QgKnF1aXRlKgorIyB0aGUgc2FtZSBhcyBhIFB5dGhvbiBuYW1lIC0tIGxlYWRpbmcgdW5kZXJzY29yZXMgYXJlIG5vdCBhbGxvd2VkLiAgVGhlIGZhY3QKKyMgdGhhdCB0aGV5J3JlIHZlcnkgc2ltaWxhciBpcyBubyBjb2luY2lkZW5jZTogdGhlIGRlZmF1bHQgbmFtaW5nIHNjaGVtZSBpcworIyB0byBsb29rIGZvciBhIFB5dGhvbiBtb2R1bGUgbmFtZWQgYWZ0ZXIgdGhlIGNvbW1hbmQuCitjb21tYW5kX3JlID0gcmUuY29tcGlsZShyJ15bYS16QS1aXShbYS16QS1aMC05X10qKSQnKQorCitVU0FHRSA9ICIiIlwKK3VzYWdlOiAlKHNjcmlwdClzIFtnbG9iYWxfb3B0c10gY21kMSBbY21kMV9vcHRzXSBbY21kMiBbY21kMl9vcHRzXSAuLi5dCisgICBvcjogJShzY3JpcHQpcyAtLWhlbHAgW2NtZDEgY21kMiAuLi5dCisgICBvcjogJShzY3JpcHQpcyAtLWhlbHAtY29tbWFuZHMKKyAgIG9yOiAlKHNjcmlwdClzIGNtZCAtLWhlbHAKKyIiIgorCisKK2RlZiBnZW5fdXNhZ2Uoc2NyaXB0X25hbWUpOgorICAgIHNjcmlwdCA9IG9zLnBhdGguYmFzZW5hbWUoc2NyaXB0X25hbWUpCisgICAgcmV0dXJuIFVTQUdFICUgeydzY3JpcHQnOiBzY3JpcHR9CisKKworY2xhc3MgRGlzdHJpYnV0aW9uOgorICAgICIiIkNsYXNzIHVzZWQgdG8gcmVwcmVzZW50IGEgcHJvamVjdCBhbmQgd29yayB3aXRoIGl0LgorCisgICAgTW9zdCBvZiB0aGUgd29yayBoaWRpbmcgYmVoaW5kICdweXNldHVwIHJ1bicgaXMgcmVhbGx5IGRvbmUgd2l0aGluIGEKKyAgICBEaXN0cmlidXRpb24gaW5zdGFuY2UsIHdoaWNoIGZhcm1zIHRoZSB3b3JrIG91dCB0byB0aGUgY29tbWFuZHMKKyAgICBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZS4KKyAgICAiIiIKKworICAgICMgJ2dsb2JhbF9vcHRpb25zJyBkZXNjcmliZXMgdGhlIGNvbW1hbmQtbGluZSBvcHRpb25zIHRoYXQgbWF5IGJlCisgICAgIyBzdXBwbGllZCB0byB0aGUgc2V0dXAgc2NyaXB0IHByaW9yIHRvIGFueSBhY3R1YWwgY29tbWFuZHMuCisgICAgIyBFZy4gInB5c2V0dXAgcnVuIC1uIiBvciAicHlzZXR1cCBydW4gLS1kcnktcnVuIiBib3RoIHRha2UgYWR2YW50YWdlIG9mCisgICAgIyB0aGVzZSBnbG9iYWwgb3B0aW9ucy4gIFRoaXMgbGlzdCBzaG91bGQgYmUga2VwdCB0byBhIGJhcmUgbWluaW11bSwKKyAgICAjIHNpbmNlIGV2ZXJ5IGdsb2JhbCBvcHRpb24gaXMgYWxzbyB2YWxpZCBhcyBhIGNvbW1hbmQgb3B0aW9uIC0tIGFuZCB3ZQorICAgICMgZG9uJ3Qgd2FudCB0byBwb2xsdXRlIHRoZSBjb21tYW5kcyB3aXRoIHRvbyBtYW55IG9wdGlvbnMgdGhhdCB0aGV5CisgICAgIyBoYXZlIG1pbmltYWwgY29udHJvbCBvdmVyLgorICAgIGdsb2JhbF9vcHRpb25zID0gWworICAgICAgICAoJ2RyeS1ydW4nLCAnbicsICJkb24ndCBhY3R1YWxseSBkbyBhbnl0aGluZyIpLAorICAgICAgICAoJ2hlbHAnLCAnaCcsICJzaG93IGRldGFpbGVkIGhlbHAgbWVzc2FnZSIpLAorICAgICAgICAoJ25vLXVzZXItY2ZnJywgTm9uZSwgJ2lnbm9yZSBweWRpc3R1dGlscy5jZmcgaW4geW91ciBob21lIGRpcmVjdG9yeScpLAorICAgIF0KKworICAgICMgJ2NvbW1vbl91c2FnZScgaXMgYSBzaG9ydCAoMi0zIGxpbmUpIHN0cmluZyBkZXNjcmliaW5nIHRoZSBjb21tb24KKyAgICAjIHVzYWdlIG9mIHRoZSBzZXR1cCBzY3JpcHQuCisgICAgY29tbW9uX3VzYWdlID0gIiIiXAorQ29tbW9uIGNvbW1hbmRzOiAoc2VlICctLWhlbHAtY29tbWFuZHMnIGZvciBtb3JlKQorCisgIHB5c2V0dXAgcnVuIGJ1aWxkICAgICAgd2lsbCBidWlsZCB0aGUgcHJvamVjdCB1bmRlcm5lYXRoICdidWlsZC8nCisgIHB5c2V0dXAgcnVuIGluc3RhbGwgICAgd2lsbCBpbnN0YWxsIHRoZSBwcm9qZWN0CisiIiIKKworICAgICMgb3B0aW9ucyB0aGF0IGFyZSBub3QgcHJvcGFnYXRlZCB0byB0aGUgY29tbWFuZHMKKyAgICBkaXNwbGF5X29wdGlvbnMgPSBbCisgICAgICAgICgnaGVscC1jb21tYW5kcycsIE5vbmUsCisgICAgICAgICAibGlzdCBhbGwgYXZhaWxhYmxlIGNvbW1hbmRzIiksCisgICAgICAgICgndXNlLTJ0bzMnLCBOb25lLAorICAgICAgICAgInVzZSAydG8zIHRvIG1ha2Ugc291cmNlIHB5dGhvbiAzLnggY29tcGF0aWJsZSIpLAorICAgICAgICAoJ2NvbnZlcnQtMnRvMy1kb2N0ZXN0cycsIE5vbmUsCisgICAgICAgICAidXNlIDJ0bzMgdG8gY29udmVydCBkb2N0ZXN0cyBpbiBzZXBhcmF0ZSB0ZXh0IGZpbGVzIiksCisgICAgICAgIF0KKyAgICBkaXNwbGF5X29wdGlvbl9uYW1lcyA9IFt4WzBdLnJlcGxhY2UoJy0nLCAnXycpIGZvciB4IGluIGRpc3BsYXlfb3B0aW9uc10KKworICAgICMgbmVnYXRpdmUgb3B0aW9ucyBhcmUgb3B0aW9ucyB0aGF0IGV4Y2x1ZGUgb3RoZXIgb3B0aW9ucworICAgIG5lZ2F0aXZlX29wdCA9IHt9CisKKyAgICAjIC0tIENyZWF0aW9uL2luaXRpYWxpemF0aW9uIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhdHRycz1Ob25lKToKKyAgICAgICAgIiIiQ29uc3RydWN0IGEgbmV3IERpc3RyaWJ1dGlvbiBpbnN0YW5jZTogaW5pdGlhbGl6ZSBhbGwgdGhlCisgICAgICAgIGF0dHJpYnV0ZXMgb2YgYSBEaXN0cmlidXRpb24sIGFuZCB0aGVuIHVzZSAnYXR0cnMnIChhIGRpY3Rpb25hcnkKKyAgICAgICAgbWFwcGluZyBhdHRyaWJ1dGUgbmFtZXMgdG8gdmFsdWVzKSB0byBhc3NpZ24gc29tZSBvZiB0aG9zZQorICAgICAgICBhdHRyaWJ1dGVzIHRoZWlyICJyZWFsIiB2YWx1ZXMuICAoQW55IGF0dHJpYnV0ZXMgbm90IG1lbnRpb25lZCBpbgorICAgICAgICAnYXR0cnMnIHdpbGwgYmUgYXNzaWduZWQgdG8gc29tZSBudWxsIHZhbHVlOiAwLCBOb25lLCBhbiBlbXB0eSBsaXN0CisgICAgICAgIG9yIGRpY3Rpb25hcnksIGV0Yy4pICBNb3N0IGltcG9ydGFudGx5LCBpbml0aWFsaXplIHRoZQorICAgICAgICAnY29tbWFuZF9vYmonIGF0dHJpYnV0ZSB0byB0aGUgZW1wdHkgZGljdGlvbmFyeTsgdGhpcyB3aWxsIGJlCisgICAgICAgIGZpbGxlZCBpbiB3aXRoIHJlYWwgY29tbWFuZCBvYmplY3RzIGJ5ICdwYXJzZV9jb21tYW5kX2xpbmUoKScuCisgICAgICAgICIiIgorCisgICAgICAgICMgRGVmYXVsdCB2YWx1ZXMgZm9yIG91ciBjb21tYW5kLWxpbmUgb3B0aW9ucworICAgICAgICBzZWxmLmRyeV9ydW4gPSBGYWxzZQorICAgICAgICBzZWxmLmhlbHAgPSBGYWxzZQorICAgICAgICBmb3IgYXR0ciBpbiBzZWxmLmRpc3BsYXlfb3B0aW9uX25hbWVzOgorICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBhdHRyLCBGYWxzZSkKKworICAgICAgICAjIFN0b3JlIHRoZSBjb25maWd1cmF0aW9uCisgICAgICAgIHNlbGYuY29uZmlnID0gQ29uZmlnKHNlbGYpCisKKyAgICAgICAgIyBTdG9yZSB0aGUgZGlzdHJpYnV0aW9uIG1ldGFkYXRhIChuYW1lLCB2ZXJzaW9uLCBhdXRob3IsIGFuZCBzbworICAgICAgICAjIGZvcnRoKSBpbiBhIHNlcGFyYXRlIG9iamVjdCAtLSB3ZSdyZSBnZXR0aW5nIHRvIGhhdmUgZW5vdWdoCisgICAgICAgICMgaW5mb3JtYXRpb24gaGVyZSAoYW5kIGVub3VnaCBjb21tYW5kLWxpbmUgb3B0aW9ucykgdGhhdCBpdCdzCisgICAgICAgICMgd29ydGggaXQuCisgICAgICAgIHNlbGYubWV0YWRhdGEgPSBNZXRhZGF0YSgpCisKKyAgICAgICAgIyAnY21kY2xhc3MnIG1hcHMgY29tbWFuZCBuYW1lcyB0byBjbGFzcyBvYmplY3RzLCBzbyB3ZQorICAgICAgICAjIGNhbiAxKSBxdWlja2x5IGZpZ3VyZSBvdXQgd2hpY2ggY2xhc3MgdG8gaW5zdGFudGlhdGUgd2hlbgorICAgICAgICAjIHdlIG5lZWQgdG8gY3JlYXRlIGEgbmV3IGNvbW1hbmQgb2JqZWN0LCBhbmQgMikgaGF2ZSBhIHdheQorICAgICAgICAjIGZvciB0aGUgc2V0dXAgc2NyaXB0IHRvIG92ZXJyaWRlIGNvbW1hbmQgY2xhc3NlcworICAgICAgICBzZWxmLmNtZGNsYXNzID0ge30KKworICAgICAgICAjICdzY3JpcHRfbmFtZScgYW5kICdzY3JpcHRfYXJncycgYXJlIHVzdWFsbHkgc2V0IHRvIHN5cy5hcmd2WzBdCisgICAgICAgICMgYW5kIHN5cy5hcmd2WzE6XSwgYnV0IHRoZXkgY2FuIGJlIG92ZXJyaWRkZW4gd2hlbiB0aGUgY2FsbGVyIGlzCisgICAgICAgICMgbm90IG5lY2Vzc2FyaWx5IGEgc2V0dXAgc2NyaXB0IHJ1biBmcm9tIHRoZSBjb21tYW5kIGxpbmUuCisgICAgICAgIHNlbGYuc2NyaXB0X25hbWUgPSBOb25lCisgICAgICAgIHNlbGYuc2NyaXB0X2FyZ3MgPSBOb25lCisKKyAgICAgICAgIyAnY29tbWFuZF9vcHRpb25zJyBpcyB3aGVyZSB3ZSBzdG9yZSBjb21tYW5kIG9wdGlvbnMgYmV0d2VlbgorICAgICAgICAjIHBhcnNpbmcgdGhlbSAoZnJvbSBjb25maWcgZmlsZXMsIHRoZSBjb21tYW5kIGxpbmUsIGV0Yy4pIGFuZCB3aGVuCisgICAgICAgICMgdGhleSBhcmUgYWN0dWFsbHkgbmVlZGVkIC0tIGllLiB3aGVuIHRoZSBjb21tYW5kIGluIHF1ZXN0aW9uIGlzCisgICAgICAgICMgaW5zdGFudGlhdGVkLiAgSXQgaXMgYSBkaWN0aW9uYXJ5IG9mIGRpY3Rpb25hcmllcyBvZiAyLXR1cGxlczoKKyAgICAgICAgIyAgIGNvbW1hbmRfb3B0aW9ucyA9IHsgY29tbWFuZF9uYW1lIDogeyBvcHRpb24gOiAoc291cmNlLCB2YWx1ZSkgfSB9CisgICAgICAgIHNlbGYuY29tbWFuZF9vcHRpb25zID0ge30KKworICAgICAgICAjICdkaXN0X2ZpbGVzJyBpcyB0aGUgbGlzdCBvZiAoY29tbWFuZCwgcHl2ZXJzaW9uLCBmaWxlKSB0aGF0CisgICAgICAgICMgaGF2ZSBiZWVuIGNyZWF0ZWQgYnkgYW55IGRpc3QgY29tbWFuZHMgcnVuIHNvIGZhci4gVGhpcyBpcworICAgICAgICAjIGZpbGxlZCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHJ1biBpcyBkcnkgb3Igbm90LiBweXZlcnNpb24KKyAgICAgICAgIyBnaXZlcyBzeXNjb25maWcuZ2V0X3B5dGhvbl92ZXJzaW9uKCkgaWYgdGhlIGRpc3QgZmlsZSBpcworICAgICAgICAjIHNwZWNpZmljIHRvIGEgUHl0aG9uIHZlcnNpb24sICdhbnknIGlmIGl0IGlzIGdvb2QgZm9yIGFsbAorICAgICAgICAjIFB5dGhvbiB2ZXJzaW9ucyBvbiB0aGUgdGFyZ2V0IHBsYXRmb3JtLCBhbmQgJycgZm9yIGEgc291cmNlCisgICAgICAgICMgZmlsZS4gcHl2ZXJzaW9uIHNob3VsZCBub3QgYmUgdXNlZCB0byBzcGVjaWZ5IG1pbmltdW0gb3IKKyAgICAgICAgIyBtYXhpbXVtIHJlcXVpcmVkIFB5dGhvbiB2ZXJzaW9uczsgdXNlIHRoZSBtZXRhaW5mbyBmb3IgdGhhdAorICAgICAgICAjIGluc3RlYWQuCisgICAgICAgIHNlbGYuZGlzdF9maWxlcyA9IFtdCisKKyAgICAgICAgIyBUaGVzZSBvcHRpb25zIGFyZSByZWFsbHkgdGhlIGJ1c2luZXNzIG9mIHZhcmlvdXMgY29tbWFuZHMsIHJhdGhlcgorICAgICAgICAjIHRoYW4gb2YgdGhlIERpc3RyaWJ1dGlvbiBpdHNlbGYuICBXZSBwcm92aWRlIGFsaWFzZXMgZm9yIHRoZW0gaW4KKyAgICAgICAgIyBEaXN0cmlidXRpb24gYXMgYSBjb252ZW5pZW5jZSB0byB0aGUgZGV2ZWxvcGVyLgorICAgICAgICBzZWxmLnBhY2thZ2VzID0gW10KKyAgICAgICAgc2VsZi5wYWNrYWdlX2RhdGEgPSB7fQorICAgICAgICBzZWxmLnBhY2thZ2VfZGlyID0gTm9uZQorICAgICAgICBzZWxmLnB5X21vZHVsZXMgPSBbXQorICAgICAgICBzZWxmLmxpYnJhcmllcyA9IFtdCisgICAgICAgIHNlbGYuaGVhZGVycyA9IFtdCisgICAgICAgIHNlbGYuZXh0X21vZHVsZXMgPSBbXQorICAgICAgICBzZWxmLmV4dF9wYWNrYWdlID0gTm9uZQorICAgICAgICBzZWxmLmluY2x1ZGVfZGlycyA9IFtdCisgICAgICAgIHNlbGYuZXh0cmFfcGF0aCA9IE5vbmUKKyAgICAgICAgc2VsZi5zY3JpcHRzID0gW10KKyAgICAgICAgc2VsZi5kYXRhX2ZpbGVzID0ge30KKyAgICAgICAgc2VsZi5wYXNzd29yZCA9ICcnCisgICAgICAgIHNlbGYudXNlXzJ0bzMgPSBGYWxzZQorICAgICAgICBzZWxmLmNvbnZlcnRfMnRvM19kb2N0ZXN0cyA9IFtdCisgICAgICAgIHNlbGYuZXh0cmFfZmlsZXMgPSBbXQorCisgICAgICAgICMgQW5kIG5vdyBpbml0aWFsaXplIGJvb2trZWVwaW5nIHN0dWZmIHRoYXQgY2FuJ3QgYmUgc3VwcGxpZWQgYnkKKyAgICAgICAgIyB0aGUgY2FsbGVyIGF0IGFsbC4gICdjb21tYW5kX29iaicgbWFwcyBjb21tYW5kIG5hbWVzIHRvCisgICAgICAgICMgQ29tbWFuZCBpbnN0YW5jZXMgLS0gdGhhdCdzIGhvdyB3ZSBlbmZvcmNlIHRoYXQgZXZlcnkgY29tbWFuZAorICAgICAgICAjIGNsYXNzIGlzIGEgc2luZ2xldG9uLgorICAgICAgICBzZWxmLmNvbW1hbmRfb2JqID0ge30KKworICAgICAgICAjICdoYXZlX3J1bicgbWFwcyBjb21tYW5kIG5hbWVzIHRvIGJvb2xlYW4gdmFsdWVzOyBpdCBrZWVwcyB0cmFjaworICAgICAgICAjIG9mIHdoZXRoZXIgd2UgaGF2ZSBhY3R1YWxseSBydW4gYSBwYXJ0aWN1bGFyIGNvbW1hbmQsIHRvIG1ha2UgaXQKKyAgICAgICAgIyBjaGVhcCB0byAicnVuIiBhIGNvbW1hbmQgd2hlbmV2ZXIgd2UgdGhpbmsgd2UgbWlnaHQgbmVlZCB0byAtLSBpZgorICAgICAgICAjIGl0J3MgYWxyZWFkeSBiZWVuIGRvbmUsIG5vIG5lZWQgZm9yIGV4cGVuc2l2ZSBmaWxlc3lzdGVtCisgICAgICAgICMgb3BlcmF0aW9ucywgd2UganVzdCBjaGVjayB0aGUgJ2hhdmVfcnVuJyBkaWN0aW9uYXJ5IGFuZCBjYXJyeSBvbi4KKyAgICAgICAgIyBJdCdzIG9ubHkgc2FmZSB0byBxdWVyeSAnaGF2ZV9ydW4nIGZvciBhIGNvbW1hbmQgY2xhc3MgdGhhdCBoYXMKKyAgICAgICAgIyBiZWVuIGluc3RhbnRpYXRlZCAtLSBhIGZhbHNlIHZhbHVlIHdpbGwgYmUgaW5zZXJ0ZWQgd2hlbiB0aGUKKyAgICAgICAgIyBjb21tYW5kIG9iamVjdCBpcyBjcmVhdGVkLCBhbmQgcmVwbGFjZWQgd2l0aCBhIHRydWUgdmFsdWUgd2hlbgorICAgICAgICAjIHRoZSBjb21tYW5kIGlzIHN1Y2Nlc3NmdWxseSBydW4uICBUaHVzIGl0J3MgcHJvYmFibHkgYmVzdCB0byB1c2UKKyAgICAgICAgIyAnLmdldCgpJyByYXRoZXIgdGhhbiBhIHN0cmFpZ2h0IGxvb2t1cC4KKyAgICAgICAgc2VsZi5oYXZlX3J1biA9IHt9CisKKyAgICAgICAgIyBOb3cgd2UnbGwgdXNlIHRoZSBhdHRycyBkaWN0aW9uYXJ5ICh1bHRpbWF0ZWx5LCBrZXl3b3JkIGFyZ3MgZnJvbQorICAgICAgICAjIHRoZSBzZXR1cCBzY3JpcHQpIHRvIHBvc3NpYmx5IG92ZXJyaWRlIGFueSBvciBhbGwgb2YgdGhlc2UKKyAgICAgICAgIyBkaXN0cmlidXRpb24gb3B0aW9ucy4KKworICAgICAgICBpZiBhdHRycyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICMgUHVsbCBvdXQgdGhlIHNldCBvZiBjb21tYW5kIG9wdGlvbnMgYW5kIHdvcmsgb24gdGhlbQorICAgICAgICAgICAgIyBzcGVjaWZpY2FsbHkuICBOb3RlIHRoYXQgdGhpcyBvcmRlciBndWFyYW50ZWVzIHRoYXQgYWxpYXNlZAorICAgICAgICAgICAgIyBjb21tYW5kIG9wdGlvbnMgd2lsbCBvdmVycmlkZSBhbnkgc3VwcGxpZWQgcmVkdW5kYW50bHkKKyAgICAgICAgICAgICMgdGhyb3VnaCB0aGUgZ2VuZXJhbCBvcHRpb25zIGRpY3Rpb25hcnkuCisgICAgICAgICAgICBvcHRpb25zID0gYXR0cnMuZ2V0KCdvcHRpb25zJykKKyAgICAgICAgICAgIGlmIG9wdGlvbnMgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgZGVsIGF0dHJzWydvcHRpb25zJ10KKyAgICAgICAgICAgICAgICBmb3IgY29tbWFuZCwgY21kX29wdGlvbnMgaW4gb3B0aW9ucy5pdGVtcygpOgorICAgICAgICAgICAgICAgICAgICBvcHRfZGljdCA9IHNlbGYuZ2V0X29wdGlvbl9kaWN0KGNvbW1hbmQpCisgICAgICAgICAgICAgICAgICAgIGZvciBvcHQsIHZhbCBpbiBjbWRfb3B0aW9ucy5pdGVtcygpOgorICAgICAgICAgICAgICAgICAgICAgICAgb3B0X2RpY3Rbb3B0XSA9ICgic2V0dXAgc2NyaXB0IiwgdmFsKQorCisgICAgICAgICAgICAjIE5vdyB3b3JrIG9uIHRoZSByZXN0IG9mIHRoZSBhdHRyaWJ1dGVzLiAgQW55IGF0dHJpYnV0ZSB0aGF0J3MKKyAgICAgICAgICAgICMgbm90IGFscmVhZHkgZGVmaW5lZCBpcyBpbnZhbGlkIQorICAgICAgICAgICAgZm9yIGtleSwgdmFsIGluIGF0dHJzLml0ZW1zKCk6CisgICAgICAgICAgICAgICAgaWYgc2VsZi5tZXRhZGF0YS5pc19tZXRhZGF0YV9maWVsZChrZXkpOgorICAgICAgICAgICAgICAgICAgICBzZWxmLm1ldGFkYXRhW2tleV0gPSB2YWwKKyAgICAgICAgICAgICAgICBlbGlmIGhhc2F0dHIoc2VsZiwga2V5KToKKyAgICAgICAgICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBrZXksIHZhbCkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgICd1bmtub3duIGFyZ3VtZW50IGdpdmVuIHRvIERpc3RyaWJ1dGlvbjogJXInLCBrZXkpCisKKyAgICAgICAgIyBuby11c2VyLWNmZyBpcyBoYW5kbGVkIGJlZm9yZSBvdGhlciBjb21tYW5kIGxpbmUgYXJncworICAgICAgICAjIGJlY2F1c2Ugb3RoZXIgYXJncyBvdmVycmlkZSB0aGUgY29uZmlnIGZpbGVzLCBhbmQgdGhpcworICAgICAgICAjIG9uZSBpcyBuZWVkZWQgYmVmb3JlIHdlIGNhbiBsb2FkIHRoZSBjb25maWcgZmlsZXMuCisgICAgICAgICMgSWYgYXR0cnNbJ3NjcmlwdF9hcmdzJ10gd2Fzbid0IHBhc3NlZCwgYXNzdW1lIGZhbHNlLgorICAgICAgICAjCisgICAgICAgICMgVGhpcyBhbHNvIG1ha2Ugc3VyZSB3ZSBqdXN0IGxvb2sgYXQgdGhlIGdsb2JhbCBvcHRpb25zCisgICAgICAgIHNlbGYud2FudF91c2VyX2NmZyA9IFRydWUKKworICAgICAgICBpZiBzZWxmLnNjcmlwdF9hcmdzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgZm9yIGFyZyBpbiBzZWxmLnNjcmlwdF9hcmdzOgorICAgICAgICAgICAgICAgIGlmIG5vdCBhcmcuc3RhcnRzd2l0aCgnLScpOgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGlmIGFyZyA9PSAnLS1uby11c2VyLWNmZyc6CisgICAgICAgICAgICAgICAgICAgIHNlbGYud2FudF91c2VyX2NmZyA9IEZhbHNlCisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisKKyAgICAgICAgc2VsZi5maW5hbGl6ZV9vcHRpb25zKCkKKworICAgIGRlZiBnZXRfb3B0aW9uX2RpY3Qoc2VsZiwgY29tbWFuZCk6CisgICAgICAgICIiIkdldCB0aGUgb3B0aW9uIGRpY3Rpb25hcnkgZm9yIGEgZ2l2ZW4gY29tbWFuZC4gIElmIHRoYXQKKyAgICAgICAgY29tbWFuZCdzIG9wdGlvbiBkaWN0aW9uYXJ5IGhhc24ndCBiZWVuIGNyZWF0ZWQgeWV0LCB0aGVuIGNyZWF0ZSBpdAorICAgICAgICBhbmQgcmV0dXJuIHRoZSBuZXcgZGljdGlvbmFyeTsgb3RoZXJ3aXNlLCByZXR1cm4gdGhlIGV4aXN0aW5nCisgICAgICAgIG9wdGlvbiBkaWN0aW9uYXJ5LgorICAgICAgICAiIiIKKyAgICAgICAgZCA9IHNlbGYuY29tbWFuZF9vcHRpb25zLmdldChjb21tYW5kKQorICAgICAgICBpZiBkIGlzIE5vbmU6CisgICAgICAgICAgICBkID0gc2VsZi5jb21tYW5kX29wdGlvbnNbY29tbWFuZF0gPSB7fQorICAgICAgICByZXR1cm4gZAorCisgICAgZGVmIGdldF9mdWxsbmFtZShzZWxmLCBmaWxlc2FmZT1GYWxzZSk6CisgICAgICAgIHJldHVybiBzZWxmLm1ldGFkYXRhLmdldF9mdWxsbmFtZShmaWxlc2FmZSkKKworICAgIGRlZiBkdW1wX29wdGlvbl9kaWN0cyhzZWxmLCBoZWFkZXI9Tm9uZSwgY29tbWFuZHM9Tm9uZSwgaW5kZW50PSIiKToKKyAgICAgICAgZnJvbSBwcHJpbnQgaW1wb3J0IHBmb3JtYXQKKworICAgICAgICBpZiBjb21tYW5kcyBpcyBOb25lOiAgICAgICAgICAgICAjIGR1bXAgYWxsIGNvbW1hbmQgb3B0aW9uIGRpY3RzCisgICAgICAgICAgICBjb21tYW5kcyA9IHNvcnRlZChzZWxmLmNvbW1hbmRfb3B0aW9ucykKKworICAgICAgICBpZiBoZWFkZXIgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBsb2dnZXIuaW5mbyhpbmRlbnQgKyBoZWFkZXIpCisgICAgICAgICAgICBpbmRlbnQgPSBpbmRlbnQgKyAiICAiCisKKyAgICAgICAgaWYgbm90IGNvbW1hbmRzOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oaW5kZW50ICsgIm5vIGNvbW1hbmRzIGtub3duIHlldCIpCisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBmb3IgY21kX25hbWUgaW4gY29tbWFuZHM6CisgICAgICAgICAgICBvcHRfZGljdCA9IHNlbGYuY29tbWFuZF9vcHRpb25zLmdldChjbWRfbmFtZSkKKyAgICAgICAgICAgIGlmIG9wdF9kaWN0IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oaW5kZW50ICsgIm5vIG9wdGlvbiBkaWN0IGZvciAlciBjb21tYW5kIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbWRfbmFtZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oaW5kZW50ICsgIm9wdGlvbiBkaWN0IGZvciAlciBjb21tYW5kOiIsIGNtZF9uYW1lKQorICAgICAgICAgICAgICAgIG91dCA9IHBmb3JtYXQob3B0X2RpY3QpCisgICAgICAgICAgICAgICAgZm9yIGxpbmUgaW4gb3V0LnNwbGl0KCdcbicpOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbyhpbmRlbnQgKyAiICAiICsgbGluZSkKKworICAgICMgLS0gQ29uZmlnIGZpbGUgZmluZGluZy9wYXJzaW5nIG1ldGhvZHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgIyBYWFggdG8gYmUgcmVtb3ZlZAorICAgIGRlZiBwYXJzZV9jb25maWdfZmlsZXMoc2VsZiwgZmlsZW5hbWVzPU5vbmUpOgorICAgICAgICByZXR1cm4gc2VsZi5jb25maWcucGFyc2VfY29uZmlnX2ZpbGVzKGZpbGVuYW1lcykKKworICAgIGRlZiBmaW5kX2NvbmZpZ19maWxlcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuY29uZmlnLmZpbmRfY29uZmlnX2ZpbGVzKCkKKworICAgICMgLS0gQ29tbWFuZC1saW5lIHBhcnNpbmcgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgcGFyc2VfY29tbWFuZF9saW5lKHNlbGYpOgorICAgICAgICAiIiJQYXJzZSB0aGUgc2V0dXAgc2NyaXB0J3MgY29tbWFuZCBsaW5lLCB0YWtlbiBmcm9tIHRoZQorICAgICAgICAnc2NyaXB0X2FyZ3MnIGluc3RhbmNlIGF0dHJpYnV0ZSAod2hpY2ggZGVmYXVsdHMgdG8gJ3N5cy5hcmd2WzE6XScKKyAgICAgICAgLS0gc2VlICdzZXR1cCgpJyBpbiBydW4ucHkpLiAgVGhpcyBsaXN0IGlzIGZpcnN0IHByb2Nlc3NlZCBmb3IKKyAgICAgICAgImdsb2JhbCBvcHRpb25zIiAtLSBvcHRpb25zIHRoYXQgc2V0IGF0dHJpYnV0ZXMgb2YgdGhlIERpc3RyaWJ1dGlvbgorICAgICAgICBpbnN0YW5jZS4gIFRoZW4sIGl0IGlzIGFsdGVybmF0ZWx5IHNjYW5uZWQgZm9yIFBhY2thZ2luZyBjb21tYW5kcworICAgICAgICBhbmQgb3B0aW9ucyBmb3IgdGhhdCBjb21tYW5kLiAgRWFjaCBuZXcgY29tbWFuZCB0ZXJtaW5hdGVzIHRoZQorICAgICAgICBvcHRpb25zIGZvciB0aGUgcHJldmlvdXMgY29tbWFuZC4gIFRoZSBhbGxvd2VkIG9wdGlvbnMgZm9yIGEKKyAgICAgICAgY29tbWFuZCBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgJ3VzZXJfb3B0aW9ucycgYXR0cmlidXRlIG9mIHRoZQorICAgICAgICBjb21tYW5kIGNsYXNzIC0tIHRodXMsIHdlIGhhdmUgdG8gYmUgYWJsZSB0byBsb2FkIGNvbW1hbmQgY2xhc3NlcworICAgICAgICBpbiBvcmRlciB0byBwYXJzZSB0aGUgY29tbWFuZCBsaW5lLiAgQW55IGVycm9yIGluIHRoYXQgJ29wdGlvbnMnCisgICAgICAgIGF0dHJpYnV0ZSByYWlzZXMgUGFja2FnaW5nR2V0b3B0RXJyb3I7IGFueSBlcnJvciBvbiB0aGUKKyAgICAgICAgY29tbWFuZCBsaW5lIHJhaXNlcyBQYWNrYWdpbmdBcmdFcnJvci4gIElmIG5vIFBhY2thZ2luZyBjb21tYW5kcworICAgICAgICB3ZXJlIGZvdW5kIG9uIHRoZSBjb21tYW5kIGxpbmUsIHJhaXNlcyBQYWNrYWdpbmdBcmdFcnJvci4gIFJldHVybgorICAgICAgICB0cnVlIGlmIGNvbW1hbmQgbGluZSB3YXMgc3VjY2Vzc2Z1bGx5IHBhcnNlZCBhbmQgd2Ugc2hvdWxkIGNhcnJ5CisgICAgICAgIG9uIHdpdGggZXhlY3V0aW5nIGNvbW1hbmRzOyBmYWxzZSBpZiBubyBlcnJvcnMgYnV0IHdlIHNob3VsZG4ndAorICAgICAgICBleGVjdXRlIGNvbW1hbmRzIChjdXJyZW50bHksIHRoaXMgb25seSBoYXBwZW5zIGlmIHVzZXIgYXNrcyBmb3IKKyAgICAgICAgaGVscCkuCisgICAgICAgICIiIgorICAgICAgICAjCisgICAgICAgICMgV2Ugbm93IGhhdmUgZW5vdWdoIGluZm9ybWF0aW9uIHRvIHNob3cgdGhlIE1hY2ludG9zaCBkaWFsb2cKKyAgICAgICAgIyB0aGF0IGFsbG93cyB0aGUgdXNlciB0byBpbnRlcmFjdGl2ZWx5IHNwZWNpZnkgdGhlICJjb21tYW5kIGxpbmUiLgorICAgICAgICAjCisgICAgICAgIHRvcGxldmVsX29wdGlvbnMgPSBzZWxmLl9nZXRfdG9wbGV2ZWxfb3B0aW9ucygpCisKKyAgICAgICAgIyBXZSBoYXZlIHRvIHBhcnNlIHRoZSBjb21tYW5kIGxpbmUgYSBiaXQgYXQgYSB0aW1lIC0tIGdsb2JhbAorICAgICAgICAjIG9wdGlvbnMsIHRoZW4gdGhlIGZpcnN0IGNvbW1hbmQsIHRoZW4gaXRzIG9wdGlvbnMsIGFuZCBzbyBvbiAtLQorICAgICAgICAjIGJlY2F1c2UgZWFjaCBjb21tYW5kIHdpbGwgYmUgaGFuZGxlZCBieSBhIGRpZmZlcmVudCBjbGFzcywgYW5kCisgICAgICAgICMgdGhlIG9wdGlvbnMgdGhhdCBhcmUgdmFsaWQgZm9yIGEgcGFydGljdWxhciBjbGFzcyBhcmVuJ3Qga25vd24KKyAgICAgICAgIyB1bnRpbCB3ZSBoYXZlIGxvYWRlZCB0aGUgY29tbWFuZCBjbGFzcywgd2hpY2ggZG9lc24ndCBoYXBwZW4KKyAgICAgICAgIyB1bnRpbCB3ZSBrbm93IHdoYXQgdGhlIGNvbW1hbmQgaXMuCisKKyAgICAgICAgc2VsZi5jb21tYW5kcyA9IFtdCisgICAgICAgIHBhcnNlciA9IEZhbmN5R2V0b3B0KHRvcGxldmVsX29wdGlvbnMgKyBzZWxmLmRpc3BsYXlfb3B0aW9ucykKKyAgICAgICAgcGFyc2VyLnNldF9uZWdhdGl2ZV9hbGlhc2VzKHNlbGYubmVnYXRpdmVfb3B0KQorICAgICAgICBhcmdzID0gcGFyc2VyLmdldG9wdChhcmdzPXNlbGYuc2NyaXB0X2FyZ3MsIG9iamVjdD1zZWxmKQorICAgICAgICBvcHRpb25fb3JkZXIgPSBwYXJzZXIuZ2V0X29wdGlvbl9vcmRlcigpCisKKyAgICAgICAgIyBmb3IgZGlzcGxheSBvcHRpb25zIHdlIHJldHVybiBpbW1lZGlhdGVseQorICAgICAgICBpZiBzZWxmLmhhbmRsZV9kaXNwbGF5X29wdGlvbnMob3B0aW9uX29yZGVyKToKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHdoaWxlIGFyZ3M6CisgICAgICAgICAgICBhcmdzID0gc2VsZi5fcGFyc2VfY29tbWFuZF9vcHRzKHBhcnNlciwgYXJncykKKyAgICAgICAgICAgIGlmIGFyZ3MgaXMgTm9uZTogICAgICAgICAgICAjIHVzZXIgYXNrZWQgZm9yIGhlbHAgKGFuZCBnb3QgaXQpCisgICAgICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyBIYW5kbGUgdGhlIGNhc2VzIG9mIC0taGVscCBhcyBhICJnbG9iYWwiIG9wdGlvbiwgaWUuCisgICAgICAgICMgInB5c2V0dXAgcnVuIC0taGVscCIgYW5kICJweXNldHVwIHJ1biAtLWhlbHAgY29tbWFuZCAuLi4iLiAgRm9yIHRoZQorICAgICAgICAjIGZvcm1lciwgd2Ugc2hvdyBnbG9iYWwgb3B0aW9ucyAoLS1kcnktcnVuLCBldGMuKQorICAgICAgICAjIGFuZCBkaXNwbGF5LW9ubHkgb3B0aW9ucyAoLS1uYW1lLCAtLXZlcnNpb24sIGV0Yy4pOyBmb3IgdGhlCisgICAgICAgICMgbGF0dGVyLCB3ZSBvbWl0IHRoZSBkaXNwbGF5LW9ubHkgb3B0aW9ucyBhbmQgc2hvdyBoZWxwIGZvcgorICAgICAgICAjIGVhY2ggY29tbWFuZCBsaXN0ZWQgb24gdGhlIGNvbW1hbmQgbGluZS4KKyAgICAgICAgaWYgc2VsZi5oZWxwOgorICAgICAgICAgICAgc2VsZi5fc2hvd19oZWxwKHBhcnNlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5X29wdGlvbnM9bGVuKHNlbGYuY29tbWFuZHMpID09IDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tbWFuZHM9c2VsZi5jb21tYW5kcykKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICBkZWYgX2dldF90b3BsZXZlbF9vcHRpb25zKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIG5vbi1kaXNwbGF5IG9wdGlvbnMgcmVjb2duaXplZCBhdCB0aGUgdG9wIGxldmVsLgorCisgICAgICAgIFRoaXMgaW5jbHVkZXMgb3B0aW9ucyB0aGF0IGFyZSByZWNvZ25pemVkICpvbmx5KiBhdCB0aGUgdG9wCisgICAgICAgIGxldmVsIGFzIHdlbGwgYXMgb3B0aW9ucyByZWNvZ25pemVkIGZvciBjb21tYW5kcy4KKyAgICAgICAgIiIiCisgICAgICAgIHJldHVybiBzZWxmLmdsb2JhbF9vcHRpb25zCisKKyAgICBkZWYgX3BhcnNlX2NvbW1hbmRfb3B0cyhzZWxmLCBwYXJzZXIsIGFyZ3MpOgorICAgICAgICAiIiJQYXJzZSB0aGUgY29tbWFuZC1saW5lIG9wdGlvbnMgZm9yIGEgc2luZ2xlIGNvbW1hbmQuCisgICAgICAgICdwYXJzZXInIG11c3QgYmUgYSBGYW5jeUdldG9wdCBpbnN0YW5jZTsgJ2FyZ3MnIG11c3QgYmUgdGhlIGxpc3QKKyAgICAgICAgb2YgYXJndW1lbnRzLCBzdGFydGluZyB3aXRoIHRoZSBjdXJyZW50IGNvbW1hbmQgKHdob3NlIG9wdGlvbnMKKyAgICAgICAgd2UgYXJlIGFib3V0IHRvIHBhcnNlKS4gIFJldHVybnMgYSBuZXcgdmVyc2lvbiBvZiAnYXJncycgd2l0aAorICAgICAgICB0aGUgbmV4dCBjb21tYW5kIGF0IHRoZSBmcm9udCBvZiB0aGUgbGlzdDsgd2lsbCBiZSB0aGUgZW1wdHkKKyAgICAgICAgbGlzdCBpZiB0aGVyZSBhcmUgbm8gbW9yZSBjb21tYW5kcyBvbiB0aGUgY29tbWFuZCBsaW5lLiAgUmV0dXJucworICAgICAgICBOb25lIGlmIHRoZSB1c2VyIGFza2VkIGZvciBoZWxwIG9uIHRoaXMgY29tbWFuZC4KKyAgICAgICAgIiIiCisgICAgICAgICMgUHVsbCB0aGUgY3VycmVudCBjb21tYW5kIGZyb20gdGhlIGhlYWQgb2YgdGhlIGNvbW1hbmQgbGluZQorICAgICAgICBjb21tYW5kID0gYXJnc1swXQorICAgICAgICBpZiBub3QgY29tbWFuZF9yZS5tYXRjaChjb21tYW5kKToKKyAgICAgICAgICAgIHJhaXNlIFN5c3RlbUV4aXQoImludmFsaWQgY29tbWFuZCBuYW1lICVyIiAlIGNvbW1hbmQpCisgICAgICAgIHNlbGYuY29tbWFuZHMuYXBwZW5kKGNvbW1hbmQpCisKKyAgICAgICAgIyBEaWcgdXAgdGhlIGNvbW1hbmQgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIHRoaXMgY29tbWFuZCwgc28gd2UKKyAgICAgICAgIyAxKSBrbm93IHRoYXQgaXQncyBhIHZhbGlkIGNvbW1hbmQsIGFuZCAyKSBrbm93IHdoaWNoIG9wdGlvbnMKKyAgICAgICAgIyBpdCB0YWtlcy4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY21kX2NsYXNzID0gZ2V0X2NvbW1hbmRfY2xhc3MoY29tbWFuZCkKKyAgICAgICAgZXhjZXB0IFBhY2thZ2luZ01vZHVsZUVycm9yIGFzIG1zZzoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0FyZ0Vycm9yKG1zZykKKworICAgICAgICAjIFhYWCBXZSB3YW50IHRvIHB1c2ggdGhpcyBpbiBwYWNrYWdpbmcuY29tbWFuZAorICAgICAgICAjCisgICAgICAgICMgUmVxdWlyZSB0aGF0IHRoZSBjb21tYW5kIGNsYXNzIGJlIGRlcml2ZWQgZnJvbSBDb21tYW5kIC0tIHdhbnQKKyAgICAgICAgIyB0byBiZSBzdXJlIHRoYXQgdGhlIGJhc2ljICJjb21tYW5kIiBpbnRlcmZhY2UgaXMgaW1wbGVtZW50ZWQuCisgICAgICAgIGZvciBtZXRoIGluICgnaW5pdGlhbGl6ZV9vcHRpb25zJywgJ2ZpbmFsaXplX29wdGlvbnMnLCAncnVuJyk6CisgICAgICAgICAgICBpZiBoYXNhdHRyKGNtZF9jbGFzcywgbWV0aCk6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0NsYXNzRXJyb3IoCisgICAgICAgICAgICAgICAgJ2NvbW1hbmQgJXIgbXVzdCBpbXBsZW1lbnQgJXInICUgKGNtZF9jbGFzcywgbWV0aCkpCisKKyAgICAgICAgIyBBbHNvIG1ha2Ugc3VyZSB0aGF0IHRoZSBjb21tYW5kIG9iamVjdCBwcm92aWRlcyBhIGxpc3Qgb2YgaXRzCisgICAgICAgICMga25vd24gb3B0aW9ucy4KKyAgICAgICAgaWYgbm90IChoYXNhdHRyKGNtZF9jbGFzcywgJ3VzZXJfb3B0aW9ucycpIGFuZAorICAgICAgICAgICAgICAgIGlzaW5zdGFuY2UoY21kX2NsYXNzLnVzZXJfb3B0aW9ucywgbGlzdCkpOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nQ2xhc3NFcnJvcigKKyAgICAgICAgICAgICAgICAiY29tbWFuZCBjbGFzcyAlcyBtdXN0IHByb3ZpZGUgIgorICAgICAgICAgICAgICAgICIndXNlcl9vcHRpb25zJyBhdHRyaWJ1dGUgKGEgbGlzdCBvZiB0dXBsZXMpIiAlIGNtZF9jbGFzcykKKworICAgICAgICAjIElmIHRoZSBjb21tYW5kIGNsYXNzIGhhcyBhIGxpc3Qgb2YgbmVnYXRpdmUgYWxpYXMgb3B0aW9ucywKKyAgICAgICAgIyBtZXJnZSBpdCBpbiB3aXRoIHRoZSBnbG9iYWwgbmVnYXRpdmUgYWxpYXNlcy4KKyAgICAgICAgbmVnYXRpdmVfb3B0ID0gc2VsZi5uZWdhdGl2ZV9vcHQKKyAgICAgICAgaWYgaGFzYXR0cihjbWRfY2xhc3MsICduZWdhdGl2ZV9vcHQnKToKKyAgICAgICAgICAgIG5lZ2F0aXZlX29wdCA9IG5lZ2F0aXZlX29wdC5jb3B5KCkKKyAgICAgICAgICAgIG5lZ2F0aXZlX29wdC51cGRhdGUoY21kX2NsYXNzLm5lZ2F0aXZlX29wdCkKKworICAgICAgICAjIENoZWNrIGZvciBoZWxwX29wdGlvbnMgaW4gY29tbWFuZCBjbGFzcy4gIFRoZXkgaGF2ZSBhIGRpZmZlcmVudAorICAgICAgICAjIGZvcm1hdCAodHVwbGUgb2YgZm91cikgc28gd2UgbmVlZCB0byBwcmVwcm9jZXNzIHRoZW0gaGVyZS4KKyAgICAgICAgaWYgKGhhc2F0dHIoY21kX2NsYXNzLCAnaGVscF9vcHRpb25zJykgYW5kCisgICAgICAgICAgICBpc2luc3RhbmNlKGNtZF9jbGFzcy5oZWxwX29wdGlvbnMsIGxpc3QpKToKKyAgICAgICAgICAgIGhlbHBfb3B0aW9ucyA9IGNtZF9jbGFzcy5oZWxwX29wdGlvbnNbOl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGhlbHBfb3B0aW9ucyA9IFtdCisKKyAgICAgICAgIyBBbGwgY29tbWFuZHMgc3VwcG9ydCB0aGUgZ2xvYmFsIG9wdGlvbnMgdG9vLCBqdXN0IGJ5IGFkZGluZworICAgICAgICAjIGluICdnbG9iYWxfb3B0aW9ucycuCisgICAgICAgIHBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKHNlbGYuZ2xvYmFsX29wdGlvbnMgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbWRfY2xhc3MudXNlcl9vcHRpb25zICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscF9vcHRpb25zKQorICAgICAgICBwYXJzZXIuc2V0X25lZ2F0aXZlX2FsaWFzZXMobmVnYXRpdmVfb3B0KQorICAgICAgICBhcmdzLCBvcHRzID0gcGFyc2VyLmdldG9wdChhcmdzWzE6XSkKKyAgICAgICAgaWYgaGFzYXR0cihvcHRzLCAnaGVscCcpIGFuZCBvcHRzLmhlbHA6CisgICAgICAgICAgICBzZWxmLl9zaG93X2hlbHAocGFyc2VyLCBkaXNwbGF5X29wdGlvbnM9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tbWFuZHM9W2NtZF9jbGFzc10pCisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBpZiAoaGFzYXR0cihjbWRfY2xhc3MsICdoZWxwX29wdGlvbnMnKSBhbmQKKyAgICAgICAgICAgIGlzaW5zdGFuY2UoY21kX2NsYXNzLmhlbHBfb3B0aW9ucywgbGlzdCkpOgorICAgICAgICAgICAgaGVscF9vcHRpb25fZm91bmQgPSBGYWxzZQorICAgICAgICAgICAgZm9yIGhlbHBfb3B0aW9uLCBzaG9ydCwgZGVzYywgZnVuYyBpbiBjbWRfY2xhc3MuaGVscF9vcHRpb25zOgorICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIob3B0cywgaGVscF9vcHRpb24ucmVwbGFjZSgnLScsICdfJykpOgorICAgICAgICAgICAgICAgICAgICBoZWxwX29wdGlvbl9mb3VuZCA9IFRydWUKKyAgICAgICAgICAgICAgICAgICAgaWYgY2FsbGFibGUoZnVuYyk6CisgICAgICAgICAgICAgICAgICAgICAgICBmdW5jKCkKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0NsYXNzRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImludmFsaWQgaGVscCBmdW5jdGlvbiAlciBmb3IgaGVscCBvcHRpb24gJXI6ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAibXVzdCBiZSBhIGNhbGxhYmxlIG9iamVjdCAoZnVuY3Rpb24sIGV0Yy4pIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICUgKGZ1bmMsIGhlbHBfb3B0aW9uKSkKKworICAgICAgICAgICAgaWYgaGVscF9vcHRpb25fZm91bmQ6CisgICAgICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyBQdXQgdGhlIG9wdGlvbnMgZnJvbSB0aGUgY29tbWFuZCBsaW5lIGludG8gdGhlaXIgb2ZmaWNpYWwKKyAgICAgICAgIyBob2xkaW5nIHBlbiwgdGhlICdjb21tYW5kX29wdGlvbnMnIGRpY3Rpb25hcnkuCisgICAgICAgIG9wdF9kaWN0ID0gc2VsZi5nZXRfb3B0aW9uX2RpY3QoY29tbWFuZCkKKyAgICAgICAgZm9yIG5hbWUsIHZhbHVlIGluIHZhcnMob3B0cykuaXRlbXMoKToKKyAgICAgICAgICAgIG9wdF9kaWN0W25hbWVdID0gKCJjb21tYW5kIGxpbmUiLCB2YWx1ZSkKKworICAgICAgICByZXR1cm4gYXJncworCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgICIiIlNldCBmaW5hbCB2YWx1ZXMgZm9yIGFsbCB0aGUgb3B0aW9ucyBvbiB0aGUgRGlzdHJpYnV0aW9uCisgICAgICAgIGluc3RhbmNlLCBhbmFsb2dvdXMgdG8gdGhlIC5maW5hbGl6ZV9vcHRpb25zKCkgbWV0aG9kIG9mIENvbW1hbmQKKyAgICAgICAgb2JqZWN0cy4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIGdldGF0dHIoc2VsZiwgJ2NvbnZlcnRfMnRvM19kb2N0ZXN0cycsIE5vbmUpOgorICAgICAgICAgICAgc2VsZi5jb252ZXJ0XzJ0bzNfZG9jdGVzdHMgPSBbb3MucGF0aC5qb2luKHApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBwIGluIHNlbGYuY29udmVydF8ydG8zX2RvY3Rlc3RzXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5jb252ZXJ0XzJ0bzNfZG9jdGVzdHMgPSBbXQorCisgICAgZGVmIF9zaG93X2hlbHAoc2VsZiwgcGFyc2VyLCBnbG9iYWxfb3B0aW9ucz1UcnVlLCBkaXNwbGF5X29wdGlvbnM9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICBjb21tYW5kcz1bXSk6CisgICAgICAgICIiIlNob3cgaGVscCBmb3IgdGhlIHNldHVwIHNjcmlwdCBjb21tYW5kIGxpbmUgaW4gdGhlIGZvcm0gb2YKKyAgICAgICAgc2V2ZXJhbCBsaXN0cyBvZiBjb21tYW5kLWxpbmUgb3B0aW9ucy4gICdwYXJzZXInIHNob3VsZCBiZSBhCisgICAgICAgIEZhbmN5R2V0b3B0IGluc3RhbmNlOyBkbyBub3QgZXhwZWN0IGl0IHRvIGJlIHJldHVybmVkIGluIHRoZQorICAgICAgICBzYW1lIHN0YXRlLCBhcyBpdHMgb3B0aW9uIHRhYmxlIHdpbGwgYmUgcmVzZXQgdG8gbWFrZSBpdAorICAgICAgICBnZW5lcmF0ZSB0aGUgY29ycmVjdCBoZWxwIHRleHQuCisKKyAgICAgICAgSWYgJ2dsb2JhbF9vcHRpb25zJyBpcyB0cnVlLCBsaXN0cyB0aGUgZ2xvYmFsIG9wdGlvbnM6CisgICAgICAgIC0tZHJ5LXJ1biwgZXRjLiAgSWYgJ2Rpc3BsYXlfb3B0aW9ucycgaXMgdHJ1ZSwgbGlzdHMKKyAgICAgICAgdGhlICJkaXNwbGF5LW9ubHkiIG9wdGlvbnM6IC0taGVscC1jb21tYW5kcy4gIEZpbmFsbHksCisgICAgICAgIGxpc3RzIHBlci1jb21tYW5kIGhlbHAgZm9yIGV2ZXJ5IGNvbW1hbmQgbmFtZSBvciBjb21tYW5kIGNsYXNzCisgICAgICAgIGluICdjb21tYW5kcycuCisgICAgICAgICIiIgorICAgICAgICBpZiBnbG9iYWxfb3B0aW9uczoKKyAgICAgICAgICAgIGlmIGRpc3BsYXlfb3B0aW9uczoKKyAgICAgICAgICAgICAgICBvcHRpb25zID0gc2VsZi5fZ2V0X3RvcGxldmVsX29wdGlvbnMoKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBvcHRpb25zID0gc2VsZi5nbG9iYWxfb3B0aW9ucworICAgICAgICAgICAgcGFyc2VyLnNldF9vcHRpb25fdGFibGUob3B0aW9ucykKKyAgICAgICAgICAgIHBhcnNlci5wcmludF9oZWxwKHNlbGYuY29tbW9uX3VzYWdlICsgIlxuR2xvYmFsIG9wdGlvbnM6IikKKyAgICAgICAgICAgIHByaW50KCkKKworICAgICAgICBpZiBkaXNwbGF5X29wdGlvbnM6CisgICAgICAgICAgICBwYXJzZXIuc2V0X29wdGlvbl90YWJsZShzZWxmLmRpc3BsYXlfb3B0aW9ucykKKyAgICAgICAgICAgIHBhcnNlci5wcmludF9oZWxwKAorICAgICAgICAgICAgICAgICJJbmZvcm1hdGlvbiBkaXNwbGF5IG9wdGlvbnMgKGp1c3QgZGlzcGxheSAiICsKKyAgICAgICAgICAgICAgICAiaW5mb3JtYXRpb24sIGlnbm9yZSBhbnkgY29tbWFuZHMpIikKKyAgICAgICAgICAgIHByaW50KCkKKworICAgICAgICBmb3IgY29tbWFuZCBpbiBzZWxmLmNvbW1hbmRzOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShjb21tYW5kLCB0eXBlKSBhbmQgaXNzdWJjbGFzcyhjb21tYW5kLCBDb21tYW5kKToKKyAgICAgICAgICAgICAgICBjbHMgPSBjb21tYW5kCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGNscyA9IGdldF9jb21tYW5kX2NsYXNzKGNvbW1hbmQpCisgICAgICAgICAgICBpZiAoaGFzYXR0cihjbHMsICdoZWxwX29wdGlvbnMnKSBhbmQKKyAgICAgICAgICAgICAgICBpc2luc3RhbmNlKGNscy5oZWxwX29wdGlvbnMsIGxpc3QpKToKKyAgICAgICAgICAgICAgICBwYXJzZXIuc2V0X29wdGlvbl90YWJsZShjbHMudXNlcl9vcHRpb25zICsgY2xzLmhlbHBfb3B0aW9ucykKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcGFyc2VyLnNldF9vcHRpb25fdGFibGUoY2xzLnVzZXJfb3B0aW9ucykKKyAgICAgICAgICAgIHBhcnNlci5wcmludF9oZWxwKCJPcHRpb25zIGZvciAlciBjb21tYW5kOiIgJSBjbHMuX19uYW1lX18pCisgICAgICAgICAgICBwcmludCgpCisKKyAgICAgICAgcHJpbnQoZ2VuX3VzYWdlKHNlbGYuc2NyaXB0X25hbWUpKQorCisgICAgZGVmIGhhbmRsZV9kaXNwbGF5X29wdGlvbnMoc2VsZiwgb3B0aW9uX29yZGVyKToKKyAgICAgICAgIiIiSWYgdGhlcmUgd2VyZSBhbnkgbm9uLWdsb2JhbCAiZGlzcGxheS1vbmx5IiBvcHRpb25zCisgICAgICAgICgtLWhlbHAtY29tbWFuZHMpIG9uIHRoZSBjb21tYW5kIGxpbmUsIGRpc3BsYXkgdGhlIHJlcXVlc3RlZCBpbmZvIGFuZAorICAgICAgICByZXR1cm4gdHJ1ZTsgZWxzZSByZXR1cm4gZmFsc2UuCisgICAgICAgICIiIgorICAgICAgICAjIFVzZXIganVzdCB3YW50cyBhIGxpc3Qgb2YgY29tbWFuZHMgLS0gd2UnbGwgcHJpbnQgaXQgb3V0IGFuZCBzdG9wCisgICAgICAgICMgcHJvY2Vzc2luZyBub3cgKGllLiBpZiB0aGV5IHJhbiAic2V0dXAgLS1oZWxwLWNvbW1hbmRzIGZvbyBiYXIiLAorICAgICAgICAjIHdlIGlnbm9yZSAiZm9vIGJhciIpLgorICAgICAgICBpZiBzZWxmLmhlbHBfY29tbWFuZHM6CisgICAgICAgICAgICBzZWxmLnByaW50X2NvbW1hbmRzKCkKKyAgICAgICAgICAgIHByaW50KCkKKyAgICAgICAgICAgIHByaW50KGdlbl91c2FnZShzZWxmLnNjcmlwdF9uYW1lKSkKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisKKyAgICAgICAgIyBJZiB1c2VyIHN1cHBsaWVkIGFueSBvZiB0aGUgImRpc3BsYXkgbWV0YWRhdGEiIG9wdGlvbnMsIHRoZW4KKyAgICAgICAgIyBkaXNwbGF5IHRoYXQgbWV0YWRhdGEgaW4gdGhlIG9yZGVyIGluIHdoaWNoIHRoZSB1c2VyIHN1cHBsaWVkIHRoZQorICAgICAgICAjIG1ldGFkYXRhIG9wdGlvbnMuCisgICAgICAgIGFueV9kaXNwbGF5X29wdGlvbnMgPSBGYWxzZQorICAgICAgICBpc19kaXNwbGF5X29wdGlvbiA9IHNldCgpCisgICAgICAgIGZvciBvcHRpb24gaW4gc2VsZi5kaXNwbGF5X29wdGlvbnM6CisgICAgICAgICAgICBpc19kaXNwbGF5X29wdGlvbi5hZGQob3B0aW9uWzBdKQorCisgICAgICAgIGZvciBvcHQsIHZhbCBpbiBvcHRpb25fb3JkZXI6CisgICAgICAgICAgICBpZiB2YWwgYW5kIG9wdCBpbiBpc19kaXNwbGF5X29wdGlvbjoKKyAgICAgICAgICAgICAgICBvcHQgPSBvcHQucmVwbGFjZSgnLScsICdfJykKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IHNlbGYubWV0YWRhdGFbb3B0XQorICAgICAgICAgICAgICAgIGlmIG9wdCBpbiAoJ2tleXdvcmRzJywgJ3BsYXRmb3JtJyk6CisgICAgICAgICAgICAgICAgICAgIHByaW50KCcsJy5qb2luKHZhbHVlKSkKKyAgICAgICAgICAgICAgICBlbGlmIG9wdCBpbiAoJ2NsYXNzaWZpZXInLCAncHJvdmlkZXMnLCAncmVxdWlyZXMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb2Jzb2xldGVzJyk6CisgICAgICAgICAgICAgICAgICAgIHByaW50KCdcbicuam9pbih2YWx1ZSkpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcHJpbnQodmFsdWUpCisgICAgICAgICAgICAgICAgYW55X2Rpc3BsYXlfb3B0aW9ucyA9IFRydWUKKworICAgICAgICByZXR1cm4gYW55X2Rpc3BsYXlfb3B0aW9ucworCisgICAgZGVmIHByaW50X2NvbW1hbmRfbGlzdChzZWxmLCBjb21tYW5kcywgaGVhZGVyLCBtYXhfbGVuZ3RoKToKKyAgICAgICAgIiIiUHJpbnQgYSBzdWJzZXQgb2YgdGhlIGxpc3Qgb2YgYWxsIGNvbW1hbmRzIC0tIHVzZWQgYnkKKyAgICAgICAgJ3ByaW50X2NvbW1hbmRzKCknLgorICAgICAgICAiIiIKKyAgICAgICAgcHJpbnQoaGVhZGVyICsgIjoiKQorCisgICAgICAgIGZvciBjbWQgaW4gY29tbWFuZHM6CisgICAgICAgICAgICBjbHMgPSBzZWxmLmNtZGNsYXNzLmdldChjbWQpIG9yIGdldF9jb21tYW5kX2NsYXNzKGNtZCkKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uID0gZ2V0YXR0cihjbHMsICdkZXNjcmlwdGlvbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyhubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpJykKKworICAgICAgICAgICAgcHJpbnQoIiAgJS0qcyAgJXMiICUgKG1heF9sZW5ndGgsIGNtZCwgZGVzY3JpcHRpb24pKQorCisgICAgZGVmIF9nZXRfY29tbWFuZF9ncm91cHMoc2VsZik6CisgICAgICAgICIiIkhlbHBlciBmdW5jdGlvbiB0byByZXRyaWV2ZSBhbGwgdGhlIGNvbW1hbmQgY2xhc3MgbmFtZXMgZGl2aWRlZAorICAgICAgICBpbnRvIHN0YW5kYXJkIGNvbW1hbmRzIChsaXN0ZWQgaW4KKyAgICAgICAgcGFja2FnaW5nLmNvbW1hbmQuU1RBTkRBUkRfQ09NTUFORFMpIGFuZCBleHRyYSBjb21tYW5kcyAoZ2l2ZW4gaW4KKyAgICAgICAgc2VsZi5jbWRjbGFzcyBhbmQgbm90IHN0YW5kYXJkIGNvbW1hbmRzKS4KKyAgICAgICAgIiIiCisgICAgICAgIGV4dHJhX2NvbW1hbmRzID0gW2NtZCBmb3IgY21kIGluIHNlbGYuY21kY2xhc3MKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgY21kIG5vdCBpbiBTVEFOREFSRF9DT01NQU5EU10KKyAgICAgICAgcmV0dXJuIFNUQU5EQVJEX0NPTU1BTkRTLCBleHRyYV9jb21tYW5kcworCisgICAgZGVmIHByaW50X2NvbW1hbmRzKHNlbGYpOgorICAgICAgICAiIiJQcmludCBvdXQgYSBoZWxwIG1lc3NhZ2UgbGlzdGluZyBhbGwgYXZhaWxhYmxlIGNvbW1hbmRzIHdpdGggYQorICAgICAgICBkZXNjcmlwdGlvbiBvZiBlYWNoLiAgVGhlIGxpc3QgaXMgZGl2aWRlZCBpbnRvIHN0YW5kYXJkIGNvbW1hbmRzCisgICAgICAgIChsaXN0ZWQgaW4gcGFja2FnaW5nLmNvbW1hbmQuU1RBTkRBUkRfQ09NTUFORFMpIGFuZCBleHRyYSBjb21tYW5kcworICAgICAgICAoZ2l2ZW4gaW4gc2VsZi5jbWRjbGFzcyBhbmQgbm90IHN0YW5kYXJkIGNvbW1hbmRzKS4gIFRoZQorICAgICAgICBkZXNjcmlwdGlvbnMgY29tZSBmcm9tIHRoZSBjb21tYW5kIGNsYXNzIGF0dHJpYnV0ZQorICAgICAgICAnZGVzY3JpcHRpb24nLgorICAgICAgICAiIiIKKyAgICAgICAgc3RkX2NvbW1hbmRzLCBleHRyYV9jb21tYW5kcyA9IHNlbGYuX2dldF9jb21tYW5kX2dyb3VwcygpCisgICAgICAgIG1heF9sZW5ndGggPSAwCisgICAgICAgIGZvciBjbWQgaW4gKHN0ZF9jb21tYW5kcyArIGV4dHJhX2NvbW1hbmRzKToKKyAgICAgICAgICAgIGlmIGxlbihjbWQpID4gbWF4X2xlbmd0aDoKKyAgICAgICAgICAgICAgICBtYXhfbGVuZ3RoID0gbGVuKGNtZCkKKworICAgICAgICBzZWxmLnByaW50X2NvbW1hbmRfbGlzdChzdGRfY29tbWFuZHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTdGFuZGFyZCBjb21tYW5kcyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heF9sZW5ndGgpCisgICAgICAgIGlmIGV4dHJhX2NvbW1hbmRzOgorICAgICAgICAgICAgcHJpbnQoKQorICAgICAgICAgICAgc2VsZi5wcmludF9jb21tYW5kX2xpc3QoZXh0cmFfY29tbWFuZHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXh0cmEgY29tbWFuZHMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4X2xlbmd0aCkKKworICAgICMgLS0gQ29tbWFuZCBjbGFzcy9vYmplY3QgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgZ2V0X2NvbW1hbmRfb2JqKHNlbGYsIGNvbW1hbmQsIGNyZWF0ZT1UcnVlKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBjb21tYW5kIG9iamVjdCBmb3IgJ2NvbW1hbmQnLiAgTm9ybWFsbHkgdGhpcyBvYmplY3QKKyAgICAgICAgaXMgY2FjaGVkIG9uIGEgcHJldmlvdXMgY2FsbCB0byAnZ2V0X2NvbW1hbmRfb2JqKCknOyBpZiBubyBjb21tYW5kCisgICAgICAgIG9iamVjdCBmb3IgJ2NvbW1hbmQnIGlzIGluIHRoZSBjYWNoZSwgdGhlbiB3ZSBlaXRoZXIgY3JlYXRlIGFuZAorICAgICAgICByZXR1cm4gaXQgKGlmICdjcmVhdGUnIGlzIHRydWUpIG9yIHJldHVybiBOb25lLgorICAgICAgICAiIiIKKyAgICAgICAgY21kX29iaiA9IHNlbGYuY29tbWFuZF9vYmouZ2V0KGNvbW1hbmQpCisgICAgICAgIGlmIG5vdCBjbWRfb2JqIGFuZCBjcmVhdGU6CisgICAgICAgICAgICBsb2dnZXIuZGVidWcoIkRpc3RyaWJ1dGlvbi5nZXRfY29tbWFuZF9vYmooKTogIgorICAgICAgICAgICAgICAgICAgICAgICAgICJjcmVhdGluZyAlciBjb21tYW5kIG9iamVjdCIsIGNvbW1hbmQpCisKKyAgICAgICAgICAgIGNscyA9IGdldF9jb21tYW5kX2NsYXNzKGNvbW1hbmQpCisgICAgICAgICAgICBjbWRfb2JqID0gc2VsZi5jb21tYW5kX29ialtjb21tYW5kXSA9IGNscyhzZWxmKQorICAgICAgICAgICAgc2VsZi5oYXZlX3J1bltjb21tYW5kXSA9IDAKKworICAgICAgICAgICAgIyBTZXQgYW55IG9wdGlvbnMgdGhhdCB3ZXJlIHN1cHBsaWVkIGluIGNvbmZpZyBmaWxlcyBvciBvbiB0aGUKKyAgICAgICAgICAgICMgY29tbWFuZCBsaW5lLiAgKFhYWCBzdXBwb3J0IGZvciBlcnJvciByZXBvcnRpbmcgaXMgc3Vib3B0aW1hbAorICAgICAgICAgICAgIyBoZXJlOiBlcnJvcnMgYXJlbid0IHJlcG9ydGVkIHVudGlsIGZpbmFsaXplX29wdGlvbnMgaXMgY2FsbGVkLAorICAgICAgICAgICAgIyB3aGljaCBtZWFucyB3ZSB3b24ndCByZXBvcnQgdGhlIHNvdXJjZSBvZiB0aGUgZXJyb3IuKQorICAgICAgICAgICAgb3B0aW9ucyA9IHNlbGYuY29tbWFuZF9vcHRpb25zLmdldChjb21tYW5kKQorICAgICAgICAgICAgaWYgb3B0aW9uczoKKyAgICAgICAgICAgICAgICBzZWxmLl9zZXRfY29tbWFuZF9vcHRpb25zKGNtZF9vYmosIG9wdGlvbnMpCisKKyAgICAgICAgcmV0dXJuIGNtZF9vYmoKKworICAgIGRlZiBfc2V0X2NvbW1hbmRfb3B0aW9ucyhzZWxmLCBjb21tYW5kX29iaiwgb3B0aW9uX2RpY3Q9Tm9uZSk6CisgICAgICAgICIiIlNldCB0aGUgb3B0aW9ucyBmb3IgJ2NvbW1hbmRfb2JqJyBmcm9tICdvcHRpb25fZGljdCcuICBCYXNpY2FsbHkKKyAgICAgICAgdGhpcyBtZWFucyBjb3B5aW5nIGVsZW1lbnRzIG9mIGEgZGljdGlvbmFyeSAoJ29wdGlvbl9kaWN0JykgdG8KKyAgICAgICAgYXR0cmlidXRlcyBvZiBhbiBpbnN0YW5jZSAoJ2NvbW1hbmQnKS4KKworICAgICAgICAnY29tbWFuZF9vYmonIG11c3QgYmUgYSBDb21tYW5kIGluc3RhbmNlLiAgSWYgJ29wdGlvbl9kaWN0JyBpcyBub3QKKyAgICAgICAgc3VwcGxpZWQsIHVzZXMgdGhlIHN0YW5kYXJkIG9wdGlvbiBkaWN0aW9uYXJ5IGZvciB0aGlzIGNvbW1hbmQKKyAgICAgICAgKGZyb20gJ3NlbGYuY29tbWFuZF9vcHRpb25zJykuCisgICAgICAgICIiIgorICAgICAgICBjb21tYW5kX25hbWUgPSBjb21tYW5kX29iai5nZXRfY29tbWFuZF9uYW1lKCkKKyAgICAgICAgaWYgb3B0aW9uX2RpY3QgaXMgTm9uZToKKyAgICAgICAgICAgIG9wdGlvbl9kaWN0ID0gc2VsZi5nZXRfb3B0aW9uX2RpY3QoY29tbWFuZF9uYW1lKQorCisgICAgICAgIGxvZ2dlci5kZWJ1ZygiICBzZXR0aW5nIG9wdGlvbnMgZm9yICVyIGNvbW1hbmQ6IiwgY29tbWFuZF9uYW1lKQorCisgICAgICAgIGZvciBvcHRpb24sIChzb3VyY2UsIHZhbHVlKSBpbiBvcHRpb25fZGljdC5pdGVtcygpOgorICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCIgICAgJXMgPSAlcyAoZnJvbSAlcykiLCBvcHRpb24sIHZhbHVlLCBzb3VyY2UpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgYm9vbF9vcHRzID0gW3gucmVwbGFjZSgnLScsICdfJykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gY29tbWFuZF9vYmouYm9vbGVhbl9vcHRpb25zXQorICAgICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgICAgICAgICAgICAgIGJvb2xfb3B0cyA9IFtdCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgbmVnX29wdCA9IGNvbW1hbmRfb2JqLm5lZ2F0aXZlX29wdAorICAgICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgICAgICAgICAgICAgIG5lZ19vcHQgPSB7fQorCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgaXNfc3RyaW5nID0gaXNpbnN0YW5jZSh2YWx1ZSwgc3RyKQorICAgICAgICAgICAgICAgIGlmIG9wdGlvbiBpbiBuZWdfb3B0IGFuZCBpc19zdHJpbmc6CisgICAgICAgICAgICAgICAgICAgIHNldGF0dHIoY29tbWFuZF9vYmosIG5lZ19vcHRbb3B0aW9uXSwgbm90IHN0cnRvYm9vbCh2YWx1ZSkpCisgICAgICAgICAgICAgICAgZWxpZiBvcHRpb24gaW4gYm9vbF9vcHRzIGFuZCBpc19zdHJpbmc6CisgICAgICAgICAgICAgICAgICAgIHNldGF0dHIoY29tbWFuZF9vYmosIG9wdGlvbiwgc3RydG9ib29sKHZhbHVlKSkKKyAgICAgICAgICAgICAgICBlbGlmIGhhc2F0dHIoY29tbWFuZF9vYmosIG9wdGlvbik6CisgICAgICAgICAgICAgICAgICAgIHNldGF0dHIoY29tbWFuZF9vYmosIG9wdGlvbiwgdmFsdWUpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAiZXJyb3IgaW4gJXM6IGNvbW1hbmQgJXIgaGFzIG5vIHN1Y2ggb3B0aW9uICVyIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAoc291cmNlLCBjb21tYW5kX25hbWUsIG9wdGlvbikpCisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBtc2c6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IobXNnKQorCisgICAgZGVmIHJlaW5pdGlhbGl6ZV9jb21tYW5kKHNlbGYsIGNvbW1hbmQsIHJlaW5pdF9zdWJjb21tYW5kcz1GYWxzZSk6CisgICAgICAgICIiIlJlaW5pdGlhbGl6ZXMgYSBjb21tYW5kIHRvIHRoZSBzdGF0ZSBpdCB3YXMgaW4gd2hlbiBmaXJzdAorICAgICAgICByZXR1cm5lZCBieSAnZ2V0X2NvbW1hbmRfb2JqKCknOiBpLmUuLCBpbml0aWFsaXplZCBidXQgbm90IHlldAorICAgICAgICBmaW5hbGl6ZWQuICBUaGlzIHByb3ZpZGVzIHRoZSBvcHBvcnR1bml0eSB0byBzbmVhayBvcHRpb24KKyAgICAgICAgdmFsdWVzIGluIHByb2dyYW1tYXRpY2FsbHksIG92ZXJyaWRpbmcgb3Igc3VwcGxlbWVudGluZworICAgICAgICB1c2VyLXN1cHBsaWVkIHZhbHVlcyBmcm9tIHRoZSBjb25maWcgZmlsZXMgYW5kIGNvbW1hbmQgbGluZS4KKyAgICAgICAgWW91J2xsIGhhdmUgdG8gcmUtZmluYWxpemUgdGhlIGNvbW1hbmQgb2JqZWN0IChieSBjYWxsaW5nCisgICAgICAgICdmaW5hbGl6ZV9vcHRpb25zKCknIG9yICdlbnN1cmVfZmluYWxpemVkKCknKSBiZWZvcmUgdXNpbmcgaXQgZm9yCisgICAgICAgIHJlYWwuCisKKyAgICAgICAgJ2NvbW1hbmQnIHNob3VsZCBiZSBhIGNvbW1hbmQgbmFtZSAoc3RyaW5nKSBvciBjb21tYW5kIG9iamVjdC4gIElmCisgICAgICAgICdyZWluaXRfc3ViY29tbWFuZHMnIGlzIHRydWUsIGFsc28gcmVpbml0aWFsaXplcyB0aGUgY29tbWFuZCdzCisgICAgICAgIHN1Yi1jb21tYW5kcywgYXMgZGVjbGFyZWQgYnkgdGhlICdzdWJfY29tbWFuZHMnIGNsYXNzIGF0dHJpYnV0ZSAoaWYKKyAgICAgICAgaXQgaGFzIG9uZSkuICBTZWUgdGhlICJpbnN0YWxsX2Rpc3QiIGNvbW1hbmQgZm9yIGFuIGV4YW1wbGUuICBPbmx5CisgICAgICAgIHJlaW5pdGlhbGl6ZXMgdGhlIHN1Yi1jb21tYW5kcyB0aGF0IGFjdHVhbGx5IG1hdHRlciwgaS5lLiB0aG9zZQorICAgICAgICB3aG9zZSB0ZXN0IHByZWRpY2F0ZSByZXR1cm4gdHJ1ZS4KKworICAgICAgICBSZXR1cm5zIHRoZSByZWluaXRpYWxpemVkIGNvbW1hbmQgb2JqZWN0LiAgSXQgd2lsbCBiZSB0aGUgc2FtZQorICAgICAgICBvYmplY3QgYXMgdGhlIG9uZSBzdG9yZWQgaW4gdGhlIHNlbGYuY29tbWFuZF9vYmogYXR0cmlidXRlLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoY29tbWFuZCwgQ29tbWFuZCk6CisgICAgICAgICAgICBjb21tYW5kX25hbWUgPSBjb21tYW5kCisgICAgICAgICAgICBjb21tYW5kID0gc2VsZi5nZXRfY29tbWFuZF9vYmooY29tbWFuZF9uYW1lKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgY29tbWFuZF9uYW1lID0gY29tbWFuZC5nZXRfY29tbWFuZF9uYW1lKCkKKworICAgICAgICBpZiBub3QgY29tbWFuZC5maW5hbGl6ZWQ6CisgICAgICAgICAgICByZXR1cm4gY29tbWFuZAorCisgICAgICAgIGNvbW1hbmQuaW5pdGlhbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgc2VsZi5oYXZlX3J1bltjb21tYW5kX25hbWVdID0gMAorICAgICAgICBjb21tYW5kLmZpbmFsaXplZCA9IEZhbHNlCisgICAgICAgIHNlbGYuX3NldF9jb21tYW5kX29wdGlvbnMoY29tbWFuZCkKKworICAgICAgICBpZiByZWluaXRfc3ViY29tbWFuZHM6CisgICAgICAgICAgICBmb3Igc3ViIGluIGNvbW1hbmQuZ2V0X3N1Yl9jb21tYW5kcygpOgorICAgICAgICAgICAgICAgIHNlbGYucmVpbml0aWFsaXplX2NvbW1hbmQoc3ViLCByZWluaXRfc3ViY29tbWFuZHMpCisKKyAgICAgICAgcmV0dXJuIGNvbW1hbmQKKworICAgICMgLS0gTWV0aG9kcyB0aGF0IG9wZXJhdGUgb24gdGhlIERpc3RyaWJ1dGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgcnVuX2NvbW1hbmRzKHNlbGYpOgorICAgICAgICAiIiJSdW4gZWFjaCBjb21tYW5kIHRoYXQgd2FzIHNlZW4gb24gdGhlIHNldHVwIHNjcmlwdCBjb21tYW5kIGxpbmUuCisgICAgICAgIFVzZXMgdGhlIGxpc3Qgb2YgY29tbWFuZHMgZm91bmQgYW5kIGNhY2hlIG9mIGNvbW1hbmQgb2JqZWN0cworICAgICAgICBjcmVhdGVkIGJ5ICdnZXRfY29tbWFuZF9vYmooKScuCisgICAgICAgICIiIgorICAgICAgICBmb3IgY21kIGluIHNlbGYuY29tbWFuZHM6CisgICAgICAgICAgICBzZWxmLnJ1bl9jb21tYW5kKGNtZCkKKworICAgICMgLS0gTWV0aG9kcyB0aGF0IG9wZXJhdGUgb24gaXRzIENvbW1hbmRzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICBkZWYgcnVuX2NvbW1hbmQoc2VsZiwgY29tbWFuZCwgb3B0aW9ucz1Ob25lKToKKyAgICAgICAgIiIiRG8gd2hhdGV2ZXIgaXQgdGFrZXMgdG8gcnVuIGEgY29tbWFuZCAoaW5jbHVkaW5nIG5vdGhpbmcgYXQgYWxsLAorICAgICAgICBpZiB0aGUgY29tbWFuZCBoYXMgYWxyZWFkeSBiZWVuIHJ1bikuICBTcGVjaWZpY2FsbHk6IGlmIHdlIGhhdmUKKyAgICAgICAgYWxyZWFkeSBjcmVhdGVkIGFuZCBydW4gdGhlIGNvbW1hbmQgbmFtZWQgYnkgJ2NvbW1hbmQnLCByZXR1cm4KKyAgICAgICAgc2lsZW50bHkgd2l0aG91dCBkb2luZyBhbnl0aGluZy4gIElmIHRoZSBjb21tYW5kIG5hbWVkIGJ5ICdjb21tYW5kJworICAgICAgICBkb2Vzbid0IGV2ZW4gaGF2ZSBhIGNvbW1hbmQgb2JqZWN0IHlldCwgY3JlYXRlIG9uZS4gIFRoZW4gaW52b2tlCisgICAgICAgICdydW4oKScgb24gdGhhdCBjb21tYW5kIG9iamVjdCAob3IgYW4gZXhpc3Rpbmcgb25lKS4KKyAgICAgICAgIiIiCisgICAgICAgICMgQWxyZWFkeSBiZWVuIGhlcmUsIGRvbmUgdGhhdD8gdGhlbiByZXR1cm4gc2lsZW50bHkuCisgICAgICAgIGlmIHNlbGYuaGF2ZV9ydW4uZ2V0KGNvbW1hbmQpOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgaWYgb3B0aW9ucyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuY29tbWFuZF9vcHRpb25zW2NvbW1hbmRdID0gb3B0aW9ucworCisgICAgICAgIGNtZF9vYmogPSBzZWxmLmdldF9jb21tYW5kX29iaihjb21tYW5kKQorICAgICAgICBjbWRfb2JqLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLnJ1bl9jb21tYW5kX2hvb2tzKGNtZF9vYmosICdwcmVfaG9vaycpCisgICAgICAgIGxvZ2dlci5pbmZvKCJydW5uaW5nICVzIiwgY29tbWFuZCkKKyAgICAgICAgY21kX29iai5ydW4oKQorICAgICAgICBzZWxmLnJ1bl9jb21tYW5kX2hvb2tzKGNtZF9vYmosICdwb3N0X2hvb2snKQorICAgICAgICBzZWxmLmhhdmVfcnVuW2NvbW1hbmRdID0gMQorCisgICAgZGVmIHJ1bl9jb21tYW5kX2hvb2tzKHNlbGYsIGNtZF9vYmosIGhvb2tfa2luZCk6CisgICAgICAgICIiIlJ1biBob29rcyByZWdpc3RlcmVkIGZvciB0aGF0IGNvbW1hbmQgYW5kIHBoYXNlLgorCisgICAgICAgICpjbWRfb2JqKiBpcyBhIGZpbmFsaXplZCBjb21tYW5kIG9iamVjdDsgKmhvb2tfa2luZCogaXMgZWl0aGVyCisgICAgICAgICdwcmVfaG9vaycgb3IgJ3Bvc3RfaG9vaycuCisgICAgICAgICIiIgorICAgICAgICBpZiBob29rX2tpbmQgbm90IGluICgncHJlX2hvb2snLCAncG9zdF9ob29rJyk6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdpbnZhbGlkIGhvb2sga2luZDogJXInICUgaG9va19raW5kKQorCisgICAgICAgIGhvb2tzID0gZ2V0YXR0cihjbWRfb2JqLCBob29rX2tpbmQsIE5vbmUpCisKKyAgICAgICAgaWYgaG9va3MgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGZvciBob29rIGluIGhvb2tzLnZhbHVlcygpOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShob29rLCBzdHIpOgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgaG9va19vYmogPSByZXNvbHZlX25hbWUoaG9vaykKKyAgICAgICAgICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3IgYXMgZToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nTW9kdWxlRXJyb3IoZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaG9va19vYmogPSBob29rCisKKyAgICAgICAgICAgIGlmIG5vdCBjYWxsYWJsZShob29rX29iaik6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nT3B0aW9uRXJyb3IoJ2hvb2sgJXIgaXMgbm90IGNhbGxhYmxlJyAlIGhvb2spCisKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCdydW5uaW5nICVzICVzIGZvciBjb21tYW5kICVzJywKKyAgICAgICAgICAgICAgICAgICAgICAgIGhvb2tfa2luZCwgaG9vaywgY21kX29iai5nZXRfY29tbWFuZF9uYW1lKCkpCisgICAgICAgICAgICBob29rX29iaihjbWRfb2JqKQorCisgICAgIyAtLSBEaXN0cmlidXRpb24gcXVlcnkgbWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICBkZWYgaGFzX3B1cmVfbW9kdWxlcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIGxlbihzZWxmLnBhY2thZ2VzIG9yIHNlbGYucHlfbW9kdWxlcyBvciBbXSkgPiAwCisKKyAgICBkZWYgaGFzX2V4dF9tb2R1bGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5leHRfbW9kdWxlcyBhbmQgbGVuKHNlbGYuZXh0X21vZHVsZXMpID4gMAorCisgICAgZGVmIGhhc19jX2xpYnJhcmllcyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYubGlicmFyaWVzIGFuZCBsZW4oc2VsZi5saWJyYXJpZXMpID4gMAorCisgICAgZGVmIGhhc19tb2R1bGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5oYXNfcHVyZV9tb2R1bGVzKCkgb3Igc2VsZi5oYXNfZXh0X21vZHVsZXMoKQorCisgICAgZGVmIGhhc19oZWFkZXJzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5oZWFkZXJzIGFuZCBsZW4oc2VsZi5oZWFkZXJzKSA+IDAKKworICAgIGRlZiBoYXNfc2NyaXB0cyhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuc2NyaXB0cyBhbmQgbGVuKHNlbGYuc2NyaXB0cykgPiAwCisKKyAgICBkZWYgaGFzX2RhdGFfZmlsZXMoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLmRhdGFfZmlsZXMgYW5kIGxlbihzZWxmLmRhdGFfZmlsZXMpID4gMAorCisgICAgZGVmIGlzX3B1cmUoc2VsZik6CisgICAgICAgIHJldHVybiAoc2VsZi5oYXNfcHVyZV9tb2R1bGVzKCkgYW5kCisgICAgICAgICAgICAgICAgbm90IHNlbGYuaGFzX2V4dF9tb2R1bGVzKCkgYW5kCisgICAgICAgICAgICAgICAgbm90IHNlbGYuaGFzX2NfbGlicmFyaWVzKCkpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL2Vycm9ycy5weSBiL0xpYi9wYWNrYWdpbmcvZXJyb3JzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg4NzgxMjkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL2Vycm9ycy5weQpAQCAtMCwwICsxLDEzOCBAQAorIiIiRXhjZXB0aW9ucyB1c2VkIHRocm91Z2hvdXQgdGhlIHBhY2thZ2UuCisKK1N1Ym1vZHVsZXMgb2YgcGFja2FnaW5nIG1heSByYWlzZSBleGNlcHRpb25zIGRlZmluZWQgaW4gdGhpcyBtb2R1bGUgYXMKK3dlbGwgYXMgc3RhbmRhcmQgZXhjZXB0aW9uczsgaW4gcGFydGljdWxhciwgU3lzdGVtRXhpdCBpcyB1c3VhbGx5IHJhaXNlZAorZm9yIGVycm9ycyB0aGF0IGFyZSBvYnZpb3VzbHkgdGhlIGVuZC11c2VyJ3MgZmF1bHQgKGUuZy4gYmFkCitjb21tYW5kLWxpbmUgYXJndW1lbnRzKS4KKyIiIgorCisKK2NsYXNzIFBhY2thZ2luZ0Vycm9yKEV4Y2VwdGlvbik6CisgICAgIiIiVGhlIHJvb3Qgb2YgYWxsIFBhY2thZ2luZyBldmlsLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ01vZHVsZUVycm9yKFBhY2thZ2luZ0Vycm9yKToKKyAgICAiIiJVbmFibGUgdG8gbG9hZCBhbiBleHBlY3RlZCBtb2R1bGUsIG9yIHRvIGZpbmQgYW4gZXhwZWN0ZWQgY2xhc3MKKyAgICB3aXRoaW4gc29tZSBtb2R1bGUgKGluIHBhcnRpY3VsYXIsIGNvbW1hbmQgbW9kdWxlcyBhbmQgY2xhc3NlcykuIiIiCisKKworY2xhc3MgUGFja2FnaW5nQ2xhc3NFcnJvcihQYWNrYWdpbmdFcnJvcik6CisgICAgIiIiU29tZSBjb21tYW5kIGNsYXNzIChvciBwb3NzaWJseSBkaXN0cmlidXRpb24gY2xhc3MsIGlmIGFueW9uZQorICAgIGZlZWxzIGEgbmVlZCB0byBzdWJjbGFzcyBEaXN0cmlidXRpb24pIGlzIGZvdW5kIG5vdCB0byBiZSBob2xkaW5nCisgICAgdXAgaXRzIGVuZCBvZiB0aGUgYmFyZ2FpbiwgaWUuIGltcGxlbWVudGluZyBzb21lIHBhcnQgb2YgdGhlCisgICAgImNvbW1hbmQgImludGVyZmFjZS4iIiIKKworCitjbGFzcyBQYWNrYWdpbmdHZXRvcHRFcnJvcihQYWNrYWdpbmdFcnJvcik6CisgICAgIiIiVGhlIG9wdGlvbiB0YWJsZSBwcm92aWRlZCB0byAnZmFuY3lfZ2V0b3B0KCknIGlzIGJvZ3VzLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ0FyZ0Vycm9yKFBhY2thZ2luZ0Vycm9yKToKKyAgICAiIiJSYWlzZWQgYnkgZmFuY3lfZ2V0b3B0IGluIHJlc3BvbnNlIHRvIGdldG9wdC5lcnJvciAtLSBpZS4gYW4KKyAgICBlcnJvciBpbiB0aGUgY29tbWFuZCBsaW5lIHVzYWdlLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ0ZpbGVFcnJvcihQYWNrYWdpbmdFcnJvcik6CisgICAgIiIiQW55IHByb2JsZW1zIGluIHRoZSBmaWxlc3lzdGVtOiBleHBlY3RlZCBmaWxlIG5vdCBmb3VuZCwgZXRjLgorICAgIFR5cGljYWxseSB0aGlzIGlzIGZvciBwcm9ibGVtcyB0aGF0IHdlIGRldGVjdCBiZWZvcmUgSU9FcnJvciBvcgorICAgIE9TRXJyb3IgY291bGQgYmUgcmFpc2VkLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ09wdGlvbkVycm9yKFBhY2thZ2luZ0Vycm9yKToKKyAgICAiIiJTeW50YWN0aWMvc2VtYW50aWMgZXJyb3JzIGluIGNvbW1hbmQgb3B0aW9ucywgc3VjaCBhcyB1c2Ugb2YKKyAgICBtdXR1YWxseSBjb25mbGljdGluZyBvcHRpb25zLCBvciBpbmNvbnNpc3RlbnQgb3B0aW9ucywKKyAgICBiYWRseS1zcGVsbGVkIHZhbHVlcywgZXRjLiAgTm8gZGlzdGluY3Rpb24gaXMgbWFkZSBiZXR3ZWVuIG9wdGlvbgorICAgIHZhbHVlcyBvcmlnaW5hdGluZyBpbiB0aGUgc2V0dXAgc2NyaXB0LCB0aGUgY29tbWFuZCBsaW5lLCBjb25maWcKKyAgICBmaWxlcywgb3Igd2hhdC1oYXZlLXlvdSAtLSBidXQgaWYgd2UgKmtub3cqIHNvbWV0aGluZyBvcmlnaW5hdGVkIGluCisgICAgdGhlIHNldHVwIHNjcmlwdCwgd2UnbGwgcmFpc2UgUGFja2FnaW5nU2V0dXBFcnJvciBpbnN0ZWFkLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ1NldHVwRXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIkZvciBlcnJvcnMgdGhhdCBjYW4gYmUgZGVmaW5pdGVseSBibGFtZWQgb24gdGhlIHNldHVwIHNjcmlwdCwKKyAgICBzdWNoIGFzIGludmFsaWQga2V5d29yZCBhcmd1bWVudHMgdG8gJ3NldHVwKCknLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIldlIGRvbid0IGtub3cgaG93IHRvIGRvIHNvbWV0aGluZyBvbiB0aGUgY3VycmVudCBwbGF0Zm9ybSAoYnV0CisgICAgd2UgZG8ga25vdyBob3cgdG8gZG8gaXQgb24gc29tZSBwbGF0Zm9ybSkgLS0gZWcuIHRyeWluZyB0byBjb21waWxlCisgICAgQyBmaWxlcyBvbiBhIHBsYXRmb3JtIG5vdCBzdXBwb3J0ZWQgYnkgYSBDQ29tcGlsZXIgc3ViY2xhc3MuIiIiCisKKworY2xhc3MgUGFja2FnaW5nRXhlY0Vycm9yKFBhY2thZ2luZ0Vycm9yKToKKyAgICAiIiJBbnkgcHJvYmxlbXMgZXhlY3V0aW5nIGFuIGV4dGVybmFsIHByb2dyYW0gKHN1Y2ggYXMgdGhlIEMKKyAgICBjb21waWxlciwgd2hlbiBjb21waWxpbmcgQyBmaWxlcykuIiIiCisKKworY2xhc3MgUGFja2FnaW5nSW50ZXJuYWxFcnJvcihQYWNrYWdpbmdFcnJvcik6CisgICAgIiIiSW50ZXJuYWwgaW5jb25zaXN0ZW5jaWVzIG9yIGltcG9zc2liaWxpdGllcyAob2J2aW91c2x5LCB0aGlzCisgICAgc2hvdWxkIG5ldmVyIGJlIHNlZW4gaWYgdGhlIGNvZGUgaXMgd29ya2luZyEpLiIiIgorCisKK2NsYXNzIFBhY2thZ2luZ1RlbXBsYXRlRXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIlN5bnRheCBlcnJvciBpbiBhIGZpbGUgbGlzdCB0ZW1wbGF0ZS4iIiIKKworCitjbGFzcyBQYWNrYWdpbmdQeVBJRXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIkFueSBwcm9ibGVtIG9jY3VyaW5nIGR1cmluZyB1c2luZyB0aGUgaW5kZXhlcy4iIiIKKworCisjIEV4Y2VwdGlvbiBjbGFzc2VzIHVzZWQgYnkgdGhlIENDb21waWxlciBpbXBsZW1lbnRhdGlvbiBjbGFzc2VzCitjbGFzcyBDQ29tcGlsZXJFcnJvcihFeGNlcHRpb24pOgorICAgICIiIlNvbWUgY29tcGlsZS9saW5rIG9wZXJhdGlvbiBmYWlsZWQuIiIiCisKKworY2xhc3MgUHJlcHJvY2Vzc0Vycm9yKENDb21waWxlckVycm9yKToKKyAgICAiIiJGYWlsdXJlIHRvIHByZXByb2Nlc3Mgb25lIG9yIG1vcmUgQy9DKysgZmlsZXMuIiIiCisKKworY2xhc3MgQ29tcGlsZUVycm9yKENDb21waWxlckVycm9yKToKKyAgICAiIiJGYWlsdXJlIHRvIGNvbXBpbGUgb25lIG9yIG1vcmUgQy9DKysgc291cmNlIGZpbGVzLiIiIgorCisKK2NsYXNzIExpYkVycm9yKENDb21waWxlckVycm9yKToKKyAgICAiIiJGYWlsdXJlIHRvIGNyZWF0ZSBhIHN0YXRpYyBsaWJyYXJ5IGZyb20gb25lIG9yIG1vcmUgQy9DKysgb2JqZWN0CisgICAgZmlsZXMuIiIiCisKKworY2xhc3MgTGlua0Vycm9yKENDb21waWxlckVycm9yKToKKyAgICAiIiJGYWlsdXJlIHRvIGxpbmsgb25lIG9yIG1vcmUgQy9DKysgb2JqZWN0IGZpbGVzIGludG8gYW4gZXhlY3V0YWJsZQorICAgIG9yIHNoYXJlZCBsaWJyYXJ5IGZpbGUuIiIiCisKKworY2xhc3MgVW5rbm93bkZpbGVFcnJvcihDQ29tcGlsZXJFcnJvcik6CisgICAgIiIiQXR0ZW1wdCB0byBwcm9jZXNzIGFuIHVua25vd24gZmlsZSB0eXBlLiIiIgorCisKK2NsYXNzIE1ldGFkYXRhTWlzc2luZ0Vycm9yKFBhY2thZ2luZ0Vycm9yKToKKyAgICAiIiJBIHJlcXVpcmVkIG1ldGFkYXRhIGlzIG1pc3NpbmciIiIKKworCitjbGFzcyBNZXRhZGF0YUNvbmZsaWN0RXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIkF0dGVtcHQgdG8gcmVhZCBvciB3cml0ZSBtZXRhZGF0YSBmaWVsZHMgdGhhdCBhcmUgY29uZmxpY3R1YWwuIiIiCisKKworY2xhc3MgTWV0YWRhdGFVbnJlY29nbml6ZWRWZXJzaW9uRXJyb3IoUGFja2FnaW5nRXJyb3IpOgorICAgICIiIlVua25vd24gbWV0YWRhdGEgdmVyc2lvbiBudW1iZXIuIiIiCisKKworY2xhc3MgSXJyYXRpb25hbFZlcnNpb25FcnJvcihFeGNlcHRpb24pOgorICAgICIiIlRoaXMgaXMgYW4gaXJyYXRpb25hbCB2ZXJzaW9uLiIiIgorICAgIHBhc3MKKworCitjbGFzcyBIdWdlTWFqb3JWZXJzaW9uTnVtRXJyb3IoSXJyYXRpb25hbFZlcnNpb25FcnJvcik6CisgICAgIiIiQW4gaXJyYXRpb25hbCB2ZXJzaW9uIGJlY2F1c2UgdGhlIG1ham9yIHZlcnNpb24gbnVtYmVyIGlzIGh1Z2UKKyAgICAob2Z0ZW4gYmVjYXVzZSBhIHllYXIgb3IgZGF0ZSB3YXMgdXNlZCkuCisKKyAgICBTZWUgYGVycm9yX29uX2h1Z2VfbWFqb3JfbnVtYCBvcHRpb24gaW4gYE5vcm1hbGl6ZWRWZXJzaW9uYCBmb3IgZGV0YWlscy4KKyAgICBUaGlzIGd1YXJkIGNhbiBiZSBkaXNhYmxlZCBieSBzZXR0aW5nIHRoYXQgb3B0aW9uIEZhbHNlLgorICAgICIiIgorICAgIHBhc3MKKworCitjbGFzcyBJbnN0YWxsYXRpb25FeGNlcHRpb24oRXhjZXB0aW9uKToKKyAgICAiIiJCYXNlIGV4Y2VwdGlvbiBmb3IgaW5zdGFsbGF0aW9uIHNjcmlwdHMiIiIKKworCitjbGFzcyBJbnN0YWxsYXRpb25Db25mbGljdChJbnN0YWxsYXRpb25FeGNlcHRpb24pOgorICAgICIiIlJhaXNlZCB3aGVuIGEgY29uZmxpY3QgaXMgZGV0ZWN0ZWQiIiIKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvZmFuY3lfZ2V0b3B0LnB5IGIvTGliL3BhY2thZ2luZy9mYW5jeV9nZXRvcHQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjFkZDVmYwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvZmFuY3lfZ2V0b3B0LnB5CkBAIC0wLDAgKzEsMzg4IEBACisiIiJDb21tYW5kIGxpbmUgcGFyc2luZyBtYWNoaW5lcnkuCisKK1RoZSBGYW5jeUdldG9wdCBjbGFzcyBpcyBhIFdyYXBwZXIgYXJvdW5kIHRoZSBnZXRvcHQgbW9kdWxlIHRoYXQKK3Byb3ZpZGVzIHRoZSBmb2xsb3dpbmcgYWRkaXRpb25hbCBmZWF0dXJlczoKKyAgKiBzaG9ydCBhbmQgbG9uZyBvcHRpb25zIGFyZSB0aWVkIHRvZ2V0aGVyCisgICogb3B0aW9ucyBoYXZlIGhlbHAgc3RyaW5ncywgc28gZmFuY3lfZ2V0b3B0IGNvdWxkIHBvdGVudGlhbGx5CisgICAgY3JlYXRlIGEgY29tcGxldGUgdXNhZ2Ugc3VtbWFyeQorICAqIG9wdGlvbnMgc2V0IGF0dHJpYnV0ZXMgb2YgYSBwYXNzZWQtaW4gb2JqZWN0LgorCitJdCBpcyB1c2VkIHVuZGVyIHRoZSBob29kIGJ5IHRoZSBjb21tYW5kIGNsYXNzZXMuICBEbyBub3QgdXNlIGRpcmVjdGx5LgorIiIiCisKK2ltcG9ydCBnZXRvcHQKK2ltcG9ydCByZQoraW1wb3J0IHN5cworaW1wb3J0IHRleHR3cmFwCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nR2V0b3B0RXJyb3IsIFBhY2thZ2luZ0FyZ0Vycm9yCisKKyMgTXVjaCBsaWtlIGNvbW1hbmRfcmUgaW4gcGFja2FnaW5nLmNvcmUsIHRoaXMgaXMgY2xvc2UgdG8gYnV0IG5vdCBxdWl0ZQorIyB0aGUgc2FtZSBhcyBhIFB5dGhvbiBOQU1FIC0tIGV4Y2VwdCwgaW4gdGhlIHNwaXJpdCBvZiBtb3N0IEdOVQorIyB1dGlsaXRpZXMsIHdlIHVzZSAnLScgaW4gcGxhY2Ugb2YgJ18nLiAgKFRoZSBzcGlyaXQgb2YgTElTUCBsaXZlcyBvbiEpCisjIFRoZSBzaW1pbGFyaXRpZXMgdG8gTkFNRSBhcmUgYWdhaW4gbm90IGEgY29pbmNpZGVuY2UuLi4KK2xvbmdvcHRfcGF0ID0gcidbYS16QS1aXSg/OlthLXpBLVowLTktXSopJworbG9uZ29wdF9yZSA9IHJlLmNvbXBpbGUocideJXMkJyAlIGxvbmdvcHRfcGF0KQorCisjIEZvciByZWNvZ25pemluZyAibmVnYXRpdmUgYWxpYXMiIG9wdGlvbnMsIGVnLiAicXVpZXQ9IXZlcmJvc2UiCituZWdfYWxpYXNfcmUgPSByZS5jb21waWxlKCJeKCVzKT0hKCVzKSQiICUgKGxvbmdvcHRfcGF0LCBsb25nb3B0X3BhdCkpCisKKworY2xhc3MgRmFuY3lHZXRvcHQ6CisgICAgIiIiV3JhcHBlciBhcm91bmQgdGhlIHN0YW5kYXJkICdnZXRvcHQoKScgbW9kdWxlIHRoYXQgcHJvdmlkZXMgc29tZQorICAgIGhhbmR5IGV4dHJhIGZ1bmN0aW9uYWxpdHk6CisgICAgICAqIHNob3J0IGFuZCBsb25nIG9wdGlvbnMgYXJlIHRpZWQgdG9nZXRoZXIKKyAgICAgICogb3B0aW9ucyBoYXZlIGhlbHAgc3RyaW5ncywgYW5kIGhlbHAgdGV4dCBjYW4gYmUgYXNzZW1ibGVkCisgICAgICAgIGZyb20gdGhlbQorICAgICAgKiBvcHRpb25zIHNldCBhdHRyaWJ1dGVzIG9mIGEgcGFzc2VkLWluIG9iamVjdAorICAgICAgKiBib29sZWFuIG9wdGlvbnMgY2FuIGhhdmUgIm5lZ2F0aXZlIGFsaWFzZXMiIC0tIGVnLiBpZgorICAgICAgICAtLXF1aWV0IGlzIHRoZSAibmVnYXRpdmUgYWxpYXMiIG9mIC0tdmVyYm9zZSwgdGhlbiAiLS1xdWlldCIKKyAgICAgICAgb24gdGhlIGNvbW1hbmQgbGluZSBzZXRzICd2ZXJib3NlJyB0byBmYWxzZQorICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG9wdGlvbl90YWJsZT1Ob25lKToKKworICAgICAgICAjIFRoZSBvcHRpb24gdGFibGUgaXMgKGN1cnJlbnRseSkgYSBsaXN0IG9mIHR1cGxlcy4gIFRoZQorICAgICAgICAjIHR1cGxlcyBtYXkgaGF2ZSAzIG9yIGZvdXIgdmFsdWVzOgorICAgICAgICAjICAgKGxvbmdfb3B0aW9uLCBzaG9ydF9vcHRpb24sIGhlbHBfc3RyaW5nIFssIHJlcGVhdGFibGVdKQorICAgICAgICAjIGlmIGFuIG9wdGlvbiB0YWtlcyBhbiBhcmd1bWVudCwgaXRzIGxvbmdfb3B0aW9uIHNob3VsZCBoYXZlICc9JworICAgICAgICAjIGFwcGVuZGVkOyBzaG9ydF9vcHRpb24gc2hvdWxkIGp1c3QgYmUgYSBzaW5nbGUgY2hhcmFjdGVyLCBubyAnOicKKyAgICAgICAgIyBpbiBhbnkgY2FzZS4gIElmIGEgbG9uZ19vcHRpb24gZG9lc24ndCBoYXZlIGEgY29ycmVzcG9uZGluZworICAgICAgICAjIHNob3J0X29wdGlvbiwgc2hvcnRfb3B0aW9uIHNob3VsZCBiZSBOb25lLiAgQWxsIG9wdGlvbiB0dXBsZXMKKyAgICAgICAgIyBtdXN0IGhhdmUgbG9uZyBvcHRpb25zLgorICAgICAgICBzZWxmLm9wdGlvbl90YWJsZSA9IG9wdGlvbl90YWJsZQorCisgICAgICAgICMgJ29wdGlvbl9pbmRleCcgbWFwcyBsb25nIG9wdGlvbiBuYW1lcyB0byBlbnRyaWVzIGluIHRoZSBvcHRpb24KKyAgICAgICAgIyB0YWJsZSAoaWUuIHRob3NlIDMtdHVwbGVzKS4KKyAgICAgICAgc2VsZi5vcHRpb25faW5kZXggPSB7fQorICAgICAgICBpZiBzZWxmLm9wdGlvbl90YWJsZToKKyAgICAgICAgICAgIHNlbGYuX2J1aWxkX2luZGV4KCkKKworICAgICAgICAjICdhbGlhcycgcmVjb3JkcyAoZHVoKSBhbGlhcyBvcHRpb25zOyB7J2Zvbyc6ICdiYXInfSBtZWFucworICAgICAgICAjIC0tZm9vIGlzIGFuIGFsaWFzIGZvciAtLWJhcgorICAgICAgICBzZWxmLmFsaWFzID0ge30KKworICAgICAgICAjICduZWdhdGl2ZV9hbGlhcycga2VlcHMgdHJhY2sgb2Ygb3B0aW9ucyB0aGF0IGFyZSB0aGUgYm9vbGVhbgorICAgICAgICAjIG9wcG9zaXRlIG9mIHNvbWUgb3RoZXIgb3B0aW9uCisgICAgICAgIHNlbGYubmVnYXRpdmVfYWxpYXMgPSB7fQorCisgICAgICAgICMgVGhlc2Uga2VlcCB0cmFjayBvZiB0aGUgaW5mb3JtYXRpb24gaW4gdGhlIG9wdGlvbiB0YWJsZS4gIFdlCisgICAgICAgICMgZG9uJ3QgYWN0dWFsbHkgcG9wdWxhdGUgdGhlc2Ugc3RydWN0dXJlcyB1bnRpbCB3ZSdyZSByZWFkeSB0bworICAgICAgICAjIHBhcnNlIHRoZSBjb21tYW5kIGxpbmUsIHNpbmNlIHRoZSAnb3B0aW9uX3RhYmxlJyBwYXNzZWQgaW4gaGVyZQorICAgICAgICAjIGlzbid0IG5lY2Vzc2FyaWx5IHRoZSBmaW5hbCB3b3JkLgorICAgICAgICBzZWxmLnNob3J0X29wdHMgPSBbXQorICAgICAgICBzZWxmLmxvbmdfb3B0cyA9IFtdCisgICAgICAgIHNlbGYuc2hvcnQybG9uZyA9IHt9CisgICAgICAgIHNlbGYuYXR0cl9uYW1lID0ge30KKyAgICAgICAgc2VsZi50YWtlc19hcmcgPSB7fQorCisgICAgICAgICMgQW5kICdvcHRpb25fb3JkZXInIGlzIGZpbGxlZCB1cCBpbiAnZ2V0b3B0KCknOyBpdCByZWNvcmRzIHRoZQorICAgICAgICAjIG9yaWdpbmFsIG9yZGVyIG9mIG9wdGlvbnMgKGFuZCB0aGVpciB2YWx1ZXMpIG9uIHRoZSBjb21tYW5kIGxpbmUsCisgICAgICAgICMgYnV0IGV4cGFuZHMgc2hvcnQgb3B0aW9ucywgY29udmVydHMgYWxpYXNlcywgZXRjLgorICAgICAgICBzZWxmLm9wdGlvbl9vcmRlciA9IFtdCisKKyAgICBkZWYgX2J1aWxkX2luZGV4KHNlbGYpOgorICAgICAgICBzZWxmLm9wdGlvbl9pbmRleC5jbGVhcigpCisgICAgICAgIGZvciBvcHRpb24gaW4gc2VsZi5vcHRpb25fdGFibGU6CisgICAgICAgICAgICBzZWxmLm9wdGlvbl9pbmRleFtvcHRpb25bMF1dID0gb3B0aW9uCisKKyAgICBkZWYgc2V0X29wdGlvbl90YWJsZShzZWxmLCBvcHRpb25fdGFibGUpOgorICAgICAgICBzZWxmLm9wdGlvbl90YWJsZSA9IG9wdGlvbl90YWJsZQorICAgICAgICBzZWxmLl9idWlsZF9pbmRleCgpCisKKyAgICBkZWYgYWRkX29wdGlvbihzZWxmLCBsb25nX29wdGlvbiwgc2hvcnRfb3B0aW9uPU5vbmUsIGhlbHBfc3RyaW5nPU5vbmUpOgorICAgICAgICBpZiBsb25nX29wdGlvbiBpbiBzZWxmLm9wdGlvbl9pbmRleDoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0dldG9wdEVycm9yKAorICAgICAgICAgICAgICAgICAgIm9wdGlvbiBjb25mbGljdDogYWxyZWFkeSBhbiBvcHRpb24gJyVzJyIgJSBsb25nX29wdGlvbikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG9wdGlvbiA9IChsb25nX29wdGlvbiwgc2hvcnRfb3B0aW9uLCBoZWxwX3N0cmluZykKKyAgICAgICAgICAgIHNlbGYub3B0aW9uX3RhYmxlLmFwcGVuZChvcHRpb24pCisgICAgICAgICAgICBzZWxmLm9wdGlvbl9pbmRleFtsb25nX29wdGlvbl0gPSBvcHRpb24KKworICAgIGRlZiBoYXNfb3B0aW9uKHNlbGYsIGxvbmdfb3B0aW9uKToKKyAgICAgICAgIiIiUmV0dXJuIHRydWUgaWYgdGhlIG9wdGlvbiB0YWJsZSBmb3IgdGhpcyBwYXJzZXIgaGFzIGFuCisgICAgICAgIG9wdGlvbiB3aXRoIGxvbmcgbmFtZSAnbG9uZ19vcHRpb24nLiIiIgorICAgICAgICByZXR1cm4gbG9uZ19vcHRpb24gaW4gc2VsZi5vcHRpb25faW5kZXgKKworICAgIGRlZiBfY2hlY2tfYWxpYXNfZGljdChzZWxmLCBhbGlhc2VzLCB3aGF0KToKKyAgICAgICAgYXNzZXJ0IGlzaW5zdGFuY2UoYWxpYXNlcywgZGljdCkKKyAgICAgICAgZm9yIGFsaWFzLCBvcHQgaW4gYWxpYXNlcy5pdGVtcygpOgorICAgICAgICAgICAgaWYgYWxpYXMgbm90IGluIHNlbGYub3B0aW9uX2luZGV4OgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0dldG9wdEVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICgiaW52YWxpZCAlcyAnJXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICJvcHRpb24gJyVzJyBub3QgZGVmaW5lZCIpICUgKHdoYXQsIGFsaWFzLCBhbGlhcykpCisgICAgICAgICAgICBpZiBvcHQgbm90IGluIHNlbGYub3B0aW9uX2luZGV4OgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0dldG9wdEVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICgiaW52YWxpZCAlcyAnJXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICJhbGlhc2VkIG9wdGlvbiAnJXMnIG5vdCBkZWZpbmVkIikgJSAod2hhdCwgYWxpYXMsIG9wdCkpCisKKyAgICBkZWYgc2V0X2FsaWFzZXMoc2VsZiwgYWxpYXMpOgorICAgICAgICAiIiJTZXQgdGhlIGFsaWFzZXMgZm9yIHRoaXMgb3B0aW9uIHBhcnNlci4iIiIKKyAgICAgICAgc2VsZi5fY2hlY2tfYWxpYXNfZGljdChhbGlhcywgImFsaWFzIikKKyAgICAgICAgc2VsZi5hbGlhcyA9IGFsaWFzCisKKyAgICBkZWYgc2V0X25lZ2F0aXZlX2FsaWFzZXMoc2VsZiwgbmVnYXRpdmVfYWxpYXMpOgorICAgICAgICAiIiJTZXQgdGhlIG5lZ2F0aXZlIGFsaWFzZXMgZm9yIHRoaXMgb3B0aW9uIHBhcnNlci4KKyAgICAgICAgJ25lZ2F0aXZlX2FsaWFzJyBzaG91bGQgYmUgYSBkaWN0aW9uYXJ5IG1hcHBpbmcgb3B0aW9uIG5hbWVzIHRvCisgICAgICAgIG9wdGlvbiBuYW1lcywgYm90aCB0aGUga2V5IGFuZCB2YWx1ZSBtdXN0IGFscmVhZHkgYmUgZGVmaW5lZAorICAgICAgICBpbiB0aGUgb3B0aW9uIHRhYmxlLiIiIgorICAgICAgICBzZWxmLl9jaGVja19hbGlhc19kaWN0KG5lZ2F0aXZlX2FsaWFzLCAibmVnYXRpdmUgYWxpYXMiKQorICAgICAgICBzZWxmLm5lZ2F0aXZlX2FsaWFzID0gbmVnYXRpdmVfYWxpYXMKKworICAgIGRlZiBfZ3Jva19vcHRpb25fdGFibGUoc2VsZik6CisgICAgICAgICIiIlBvcHVsYXRlIHRoZSB2YXJpb3VzIGRhdGEgc3RydWN0dXJlcyB0aGF0IGtlZXAgdGFicyBvbiB0aGUKKyAgICAgICAgb3B0aW9uIHRhYmxlLiAgQ2FsbGVkIGJ5ICdnZXRvcHQoKScgYmVmb3JlIGl0IGNhbiBkbyBhbnl0aGluZworICAgICAgICB3b3J0aHdoaWxlLgorICAgICAgICAiIiIKKyAgICAgICAgc2VsZi5sb25nX29wdHMgPSBbXQorICAgICAgICBzZWxmLnNob3J0X29wdHMgPSBbXQorICAgICAgICBzZWxmLnNob3J0MmxvbmcuY2xlYXIoKQorICAgICAgICBzZWxmLnJlcGVhdCA9IHt9CisKKyAgICAgICAgZm9yIG9wdGlvbiBpbiBzZWxmLm9wdGlvbl90YWJsZToKKyAgICAgICAgICAgIGlmIGxlbihvcHRpb24pID09IDM6CisgICAgICAgICAgICAgICAgbG9uZ29wdCwgc2hvcnQsIGhlbHAgPSBvcHRpb24KKyAgICAgICAgICAgICAgICByZXBlYXQgPSAwCisgICAgICAgICAgICBlbGlmIGxlbihvcHRpb24pID09IDQ6CisgICAgICAgICAgICAgICAgbG9uZ29wdCwgc2hvcnQsIGhlbHAsIHJlcGVhdCA9IG9wdGlvbgorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAjIHRoZSBvcHRpb24gdGFibGUgaXMgcGFydCBvZiB0aGUgY29kZSwgc28gc2ltcGx5CisgICAgICAgICAgICAgICAgIyBhc3NlcnQgdGhhdCBpdCBpcyBjb3JyZWN0CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiaW52YWxpZCBvcHRpb24gdHVwbGU6ICVyIiAlIG9wdGlvbikKKworICAgICAgICAgICAgIyBUeXBlLSBhbmQgdmFsdWUtY2hlY2sgdGhlIG9wdGlvbiBuYW1lcworICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UobG9uZ29wdCwgc3RyKSBvciBsZW4obG9uZ29wdCkgPCAyOgorICAgICAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0dldG9wdEVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICgiaW52YWxpZCBsb25nIG9wdGlvbiAnJXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIGEgc3RyaW5nIG9mIGxlbmd0aCA+PSAyIikgJSBsb25nb3B0KQorCisgICAgICAgICAgICBpZiAobm90ICgoc2hvcnQgaXMgTm9uZSkgb3IKKyAgICAgICAgICAgICAgICAgICAgIChpc2luc3RhbmNlKHNob3J0LCBzdHIpIGFuZCBsZW4oc2hvcnQpID09IDEpKSk6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nR2V0b3B0RXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgKCJpbnZhbGlkIHNob3J0IG9wdGlvbiAnJXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIGEgc2luZ2xlIGNoYXJhY3RlciBvciBOb25lIikgJSBzaG9ydCkKKworICAgICAgICAgICAgc2VsZi5yZXBlYXRbbG9uZ29wdF0gPSByZXBlYXQKKyAgICAgICAgICAgIHNlbGYubG9uZ19vcHRzLmFwcGVuZChsb25nb3B0KQorCisgICAgICAgICAgICBpZiBsb25nb3B0Wy0xXSA9PSAnPSc6ICAgICAgICAgICAgICMgb3B0aW9uIHRha2VzIGFuIGFyZ3VtZW50PworICAgICAgICAgICAgICAgIGlmIHNob3J0OgorICAgICAgICAgICAgICAgICAgICBzaG9ydCA9IHNob3J0ICsgJzonCisgICAgICAgICAgICAgICAgbG9uZ29wdCA9IGxvbmdvcHRbMDotMV0KKyAgICAgICAgICAgICAgICBzZWxmLnRha2VzX2FyZ1tsb25nb3B0XSA9IDEKKyAgICAgICAgICAgIGVsc2U6CisKKyAgICAgICAgICAgICAgICAjIElzIG9wdGlvbiBpcyBhICJuZWdhdGl2ZSBhbGlhcyIgZm9yIHNvbWUgb3RoZXIgb3B0aW9uIChlZy4KKyAgICAgICAgICAgICAgICAjICJxdWlldCIgPT0gIiF2ZXJib3NlIik/CisgICAgICAgICAgICAgICAgYWxpYXNfdG8gPSBzZWxmLm5lZ2F0aXZlX2FsaWFzLmdldChsb25nb3B0KQorICAgICAgICAgICAgICAgIGlmIGFsaWFzX3RvIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLnRha2VzX2FyZ1thbGlhc190b106CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdHZXRvcHRFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgiaW52YWxpZCBuZWdhdGl2ZSBhbGlhcyAnJXMnOiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFsaWFzZWQgb3B0aW9uICclcycgdGFrZXMgYSB2YWx1ZSIpICUgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsb25nb3B0LCBhbGlhc190bykpCisKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5sb25nX29wdHNbLTFdID0gbG9uZ29wdCAgICMgWFhYIHJlZHVuZGFudD8hCisgICAgICAgICAgICAgICAgICAgIHNlbGYudGFrZXNfYXJnW2xvbmdvcHRdID0gMAorCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi50YWtlc19hcmdbbG9uZ29wdF0gPSAwCisKKyAgICAgICAgICAgICMgSWYgdGhpcyBpcyBhbiBhbGlhcyBvcHRpb24sIG1ha2Ugc3VyZSBpdHMgInRha2VzIGFyZyIgZmxhZyBpcworICAgICAgICAgICAgIyB0aGUgc2FtZSBhcyB0aGUgb3B0aW9uIGl0J3MgYWxpYXNlZCB0by4KKyAgICAgICAgICAgIGFsaWFzX3RvID0gc2VsZi5hbGlhcy5nZXQobG9uZ29wdCkKKyAgICAgICAgICAgIGlmIGFsaWFzX3RvIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGlmIHNlbGYudGFrZXNfYXJnW2xvbmdvcHRdICE9IHNlbGYudGFrZXNfYXJnW2FsaWFzX3RvXToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nR2V0b3B0RXJyb3IoCisgICAgICAgICAgICAgICAgICAgICAgICAgICgiaW52YWxpZCBhbGlhcyAnJXMnOiBpbmNvbnNpc3RlbnQgd2l0aCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiYWxpYXNlZCBvcHRpb24gJyVzJyAob25lIG9mIHRoZW0gdGFrZXMgYSB2YWx1ZSwgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgInRoZSBvdGhlciBkb2Vzbid0IikgJSAobG9uZ29wdCwgYWxpYXNfdG8pKQorCisgICAgICAgICAgICAjIE5vdyBlbmZvcmNlIHNvbWUgYm9uZGFnZSBvbiB0aGUgbG9uZyBvcHRpb24gbmFtZSwgc28gd2UgY2FuCisgICAgICAgICAgICAjIGxhdGVyIHRyYW5zbGF0ZSBpdCB0byBhbiBhdHRyaWJ1dGUgbmFtZSBvbiBzb21lIG9iamVjdC4gIEhhdmUKKyAgICAgICAgICAgICMgdG8gZG8gdGhpcyBhIGJpdCBsYXRlIHRvIG1ha2Ugc3VyZSB3ZSd2ZSByZW1vdmVkIGFueSB0cmFpbGluZworICAgICAgICAgICAgIyAnPScuCisgICAgICAgICAgICBpZiBub3QgbG9uZ29wdF9yZS5tYXRjaChsb25nb3B0KToKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdHZXRvcHRFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAoImludmFsaWQgbG9uZyBvcHRpb24gbmFtZSAnJXMnICIgKworICAgICAgICAgICAgICAgICAgICAgICAiKG11c3QgYmUgbGV0dGVycywgbnVtYmVycywgaHlwaGVucyBvbmx5IikgJSBsb25nb3B0KQorCisgICAgICAgICAgICBzZWxmLmF0dHJfbmFtZVtsb25nb3B0XSA9IGxvbmdvcHQucmVwbGFjZSgnLScsICdfJykKKyAgICAgICAgICAgIGlmIHNob3J0OgorICAgICAgICAgICAgICAgIHNlbGYuc2hvcnRfb3B0cy5hcHBlbmQoc2hvcnQpCisgICAgICAgICAgICAgICAgc2VsZi5zaG9ydDJsb25nW3Nob3J0WzBdXSA9IGxvbmdvcHQKKworICAgIGRlZiBnZXRvcHQoc2VsZiwgYXJncz1Ob25lLCBvYmplY3Q9Tm9uZSk6CisgICAgICAgICIiIlBhcnNlIGNvbW1hbmQtbGluZSBvcHRpb25zIGluIGFyZ3MuIFN0b3JlIGFzIGF0dHJpYnV0ZXMgb24gb2JqZWN0LgorCisgICAgICAgIElmICdhcmdzJyBpcyBOb25lIG9yIG5vdCBzdXBwbGllZCwgdXNlcyAnc3lzLmFyZ3ZbMTpdJy4gIElmCisgICAgICAgICdvYmplY3QnIGlzIE5vbmUgb3Igbm90IHN1cHBsaWVkLCBjcmVhdGVzIGEgbmV3IE9wdGlvbkR1bW15CisgICAgICAgIG9iamVjdCwgc3RvcmVzIG9wdGlvbiB2YWx1ZXMgdGhlcmUsIGFuZCByZXR1cm5zIGEgdHVwbGUgKGFyZ3MsCisgICAgICAgIG9iamVjdCkuICBJZiAnb2JqZWN0JyBpcyBzdXBwbGllZCwgaXQgaXMgbW9kaWZpZWQgaW4gcGxhY2UgYW5kCisgICAgICAgICdnZXRvcHQoKScganVzdCByZXR1cm5zICdhcmdzJzsgaW4gYm90aCBjYXNlcywgdGhlIHJldHVybmVkCisgICAgICAgICdhcmdzJyBpcyBhIG1vZGlmaWVkIGNvcHkgb2YgdGhlIHBhc3NlZC1pbiAnYXJncycgbGlzdCwgd2hpY2gKKyAgICAgICAgaXMgbGVmdCB1bnRvdWNoZWQuCisgICAgICAgICIiIgorICAgICAgICBpZiBhcmdzIGlzIE5vbmU6CisgICAgICAgICAgICBhcmdzID0gc3lzLmFyZ3ZbMTpdCisgICAgICAgIGlmIG9iamVjdCBpcyBOb25lOgorICAgICAgICAgICAgb2JqZWN0ID0gT3B0aW9uRHVtbXkoKQorICAgICAgICAgICAgY3JlYXRlZF9vYmplY3QgPSAxCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBjcmVhdGVkX29iamVjdCA9IDAKKworICAgICAgICBzZWxmLl9ncm9rX29wdGlvbl90YWJsZSgpCisKKyAgICAgICAgc2hvcnRfb3B0cyA9ICcgJy5qb2luKHNlbGYuc2hvcnRfb3B0cykKKworICAgICAgICB0cnk6CisgICAgICAgICAgICBvcHRzLCBhcmdzID0gZ2V0b3B0LmdldG9wdChhcmdzLCBzaG9ydF9vcHRzLCBzZWxmLmxvbmdfb3B0cykKKyAgICAgICAgZXhjZXB0IGdldG9wdC5lcnJvciBhcyBtc2c6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdBcmdFcnJvcihtc2cpCisKKyAgICAgICAgZm9yIG9wdCwgdmFsIGluIG9wdHM6CisgICAgICAgICAgICBpZiBsZW4ob3B0KSA9PSAyIGFuZCBvcHRbMF0gPT0gJy0nOiAgICMgaXQncyBhIHNob3J0IG9wdGlvbgorICAgICAgICAgICAgICAgIG9wdCA9IHNlbGYuc2hvcnQybG9uZ1tvcHRbMV1dCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGFzc2VydCBsZW4ob3B0KSA+IDIgYW5kIG9wdFs6Ml0gPT0gJy0tJworICAgICAgICAgICAgICAgIG9wdCA9IG9wdFsyOl0KKworICAgICAgICAgICAgYWxpYXMgPSBzZWxmLmFsaWFzLmdldChvcHQpCisgICAgICAgICAgICBpZiBhbGlhczoKKyAgICAgICAgICAgICAgICBvcHQgPSBhbGlhcworCisgICAgICAgICAgICBpZiBub3Qgc2VsZi50YWtlc19hcmdbb3B0XTogICAgICMgYm9vbGVhbiBvcHRpb24/CisgICAgICAgICAgICAgICAgYXNzZXJ0IHZhbCA9PSAnJywgImJvb2xlYW4gb3B0aW9uIGNhbid0IGhhdmUgdmFsdWUiCisgICAgICAgICAgICAgICAgYWxpYXMgPSBzZWxmLm5lZ2F0aXZlX2FsaWFzLmdldChvcHQpCisgICAgICAgICAgICAgICAgaWYgYWxpYXM6CisgICAgICAgICAgICAgICAgICAgIG9wdCA9IGFsaWFzCisgICAgICAgICAgICAgICAgICAgIHZhbCA9IDAKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICB2YWwgPSAxCisKKyAgICAgICAgICAgIGF0dHIgPSBzZWxmLmF0dHJfbmFtZVtvcHRdCisgICAgICAgICAgICAjIFRoZSBvbmx5IHJlcGVhdGluZyBvcHRpb24gYXQgdGhlIG1vbWVudCBpcyAndmVyYm9zZScuCisgICAgICAgICAgICAjIEl0IGhhcyBhIG5lZ2F0aXZlIG9wdGlvbiAtcSBxdWlldCwgd2hpY2ggc2hvdWxkIHNldCB2ZXJib3NlID0gMC4KKyAgICAgICAgICAgIGlmIHZhbCBhbmQgc2VsZi5yZXBlYXQuZ2V0KGF0dHIpIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHZhbCA9IGdldGF0dHIob2JqZWN0LCBhdHRyLCAwKSArIDEKKyAgICAgICAgICAgIHNldGF0dHIob2JqZWN0LCBhdHRyLCB2YWwpCisgICAgICAgICAgICBzZWxmLm9wdGlvbl9vcmRlci5hcHBlbmQoKG9wdCwgdmFsKSkKKworICAgICAgICAjIGZvciBvcHRzCisgICAgICAgIGlmIGNyZWF0ZWRfb2JqZWN0OgorICAgICAgICAgICAgcmV0dXJuIGFyZ3MsIG9iamVjdAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIGFyZ3MKKworICAgIGRlZiBnZXRfb3B0aW9uX29yZGVyKHNlbGYpOgorICAgICAgICAiIiJSZXR1cm5zIHRoZSBsaXN0IG9mIChvcHRpb24sIHZhbHVlKSB0dXBsZXMgcHJvY2Vzc2VkIGJ5IHRoZQorICAgICAgICBwcmV2aW91cyBydW4gb2YgJ2dldG9wdCgpJy4gIFJhaXNlcyBSdW50aW1lRXJyb3IgaWYKKyAgICAgICAgJ2dldG9wdCgpJyBoYXNuJ3QgYmVlbiBjYWxsZWQgeWV0LgorICAgICAgICAiIiIKKyAgICAgICAgaWYgc2VsZi5vcHRpb25fb3JkZXIgaXMgTm9uZToKKyAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigiJ2dldG9wdCgpJyBoYXNuJ3QgYmVlbiBjYWxsZWQgeWV0IikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiBzZWxmLm9wdGlvbl9vcmRlcgorCisgICAgICAgIHJldHVybiBzZWxmLm9wdGlvbl9vcmRlcgorCisgICAgZGVmIGdlbmVyYXRlX2hlbHAoc2VsZiwgaGVhZGVyPU5vbmUpOgorICAgICAgICAiIiJHZW5lcmF0ZSBoZWxwIHRleHQgKGEgbGlzdCBvZiBzdHJpbmdzLCBvbmUgcGVyIHN1Z2dlc3RlZCBsaW5lIG9mCisgICAgICAgIG91dHB1dCkgZnJvbSB0aGUgb3B0aW9uIHRhYmxlIGZvciB0aGlzIEZhbmN5R2V0b3B0IG9iamVjdC4KKyAgICAgICAgIiIiCisgICAgICAgICMgQmxpdGhlbHkgYXNzdW1lIHRoZSBvcHRpb24gdGFibGUgaXMgZ29vZDogcHJvYmFibHkgd291bGRuJ3QgY2FsbAorICAgICAgICAjICdnZW5lcmF0ZV9oZWxwKCknIHVubGVzcyB5b3UndmUgYWxyZWFkeSBjYWxsZWQgJ2dldG9wdCgpJy4KKworICAgICAgICAjIEZpcnN0IHBhc3M6IGRldGVybWluZSBtYXhpbXVtIGxlbmd0aCBvZiBsb25nIG9wdGlvbiBuYW1lcworICAgICAgICBtYXhfb3B0ID0gMAorICAgICAgICBmb3Igb3B0aW9uIGluIHNlbGYub3B0aW9uX3RhYmxlOgorICAgICAgICAgICAgbG9uZ29wdCA9IG9wdGlvblswXQorICAgICAgICAgICAgc2hvcnQgPSBvcHRpb25bMV0KKyAgICAgICAgICAgIGwgPSBsZW4obG9uZ29wdCkKKyAgICAgICAgICAgIGlmIGxvbmdvcHRbLTFdID09ICc9JzoKKyAgICAgICAgICAgICAgICBsID0gbCAtIDEKKyAgICAgICAgICAgIGlmIHNob3J0IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGwgPSBsICsgNSAgICAgICAgICAgICAgICAgICAjICIgKC14KSIgd2hlcmUgc2hvcnQgPT0gJ3gnCisgICAgICAgICAgICBpZiBsID4gbWF4X29wdDoKKyAgICAgICAgICAgICAgICBtYXhfb3B0ID0gbAorCisgICAgICAgIG9wdF93aWR0aCA9IG1heF9vcHQgKyAyICsgMiArIDIgICAgICMgcm9vbSBmb3IgaW5kZW50ICsgZGFzaGVzICsgZ3V0dGVyCisKKyAgICAgICAgIyBUeXBpY2FsIGhlbHAgYmxvY2sgbG9va3MgbGlrZSB0aGlzOgorICAgICAgICAjICAgLS1mb28gICAgICAgY29udHJvbHMgZm9vbmFidWxhdGlvbgorICAgICAgICAjIEhlbHAgYmxvY2sgZm9yIGxvbmdlc3Qgb3B0aW9uIGxvb2tzIGxpa2UgdGhpczoKKyAgICAgICAgIyAgIC0tZmxpbWZsYW0gIHNldCB0aGUgZmxpbS1mbGFtIGxldmVsCisgICAgICAgICMgYW5kIHdpdGggd3JhcHBlZCB0ZXh0OgorICAgICAgICAjICAgLS1mbGltZmxhbSAgc2V0IHRoZSBmbGltLWZsYW0gbGV2ZWwgKG11c3QgYmUgYmV0d2VlbgorICAgICAgICAjICAgICAgICAgICAgICAgMCBhbmQgMTAwLCBleGNlcHQgb24gVHVlc2RheXMpCisgICAgICAgICMgT3B0aW9ucyB3aXRoIHNob3J0IG5hbWVzIHdpbGwgaGF2ZSB0aGUgc2hvcnQgbmFtZSBzaG93biAoYnV0CisgICAgICAgICMgaXQgZG9lc24ndCBjb250cmlidXRlIHRvIG1heF9vcHQpOgorICAgICAgICAjICAgLS1mb28gKC1mKSAgY29udHJvbHMgZm9vbmFidWxhdGlvbgorICAgICAgICAjIElmIGFkZGluZyB0aGUgc2hvcnQgb3B0aW9uIHdvdWxkIG1ha2UgdGhlIGxlZnQgY29sdW1uIHRvbyB3aWRlLAorICAgICAgICAjIHdlIHB1c2ggdGhlIGV4cGxhbmF0aW9uIG9mZiB0byB0aGUgbmV4dCBsaW5lCisgICAgICAgICMgICAtLWZsaW1mbGFtICgtbCkKKyAgICAgICAgIyAgICAgICAgICAgICAgIHNldCB0aGUgZmxpbS1mbGFtIGxldmVsCisgICAgICAgICMgSW1wb3J0YW50IHBhcmFtZXRlcnM6CisgICAgICAgICMgICAtIDIgc3BhY2VzIGJlZm9yZSBvcHRpb24gYmxvY2sgc3RhcnQgbGluZXMKKyAgICAgICAgIyAgIC0gMiBkYXNoZXMgZm9yIGVhY2ggbG9uZyBvcHRpb24gbmFtZQorICAgICAgICAjICAgLSBtaW4uIDIgc3BhY2VzIGJldHdlZW4gb3B0aW9uIGFuZCBleHBsYW5hdGlvbiAoZ3V0dGVyKQorICAgICAgICAjICAgLSA1IGNoYXJhY3RlcnMgKGluY2wuIHNwYWNlKSBmb3Igc2hvcnQgb3B0aW9uIG5hbWUKKworICAgICAgICAjIE5vdyBnZW5lcmF0ZSBsaW5lcyBvZiBoZWxwIHRleHQuICAoSWYgODAgY29sdW1ucyB3ZXJlIGdvb2QgZW5vdWdoCisgICAgICAgICMgZm9yIEplc3VzLCB0aGVuIDc4IGNvbHVtbnMgYXJlIGdvb2QgZW5vdWdoIGZvciBtZSEpCisgICAgICAgIGxpbmVfd2lkdGggPSA3OAorICAgICAgICB0ZXh0X3dpZHRoID0gbGluZV93aWR0aCAtIG9wdF93aWR0aAorICAgICAgICBiaWdfaW5kZW50ID0gJyAnICogb3B0X3dpZHRoCisgICAgICAgIGlmIGhlYWRlcjoKKyAgICAgICAgICAgIGxpbmVzID0gW2hlYWRlcl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxpbmVzID0gWydPcHRpb24gc3VtbWFyeTonXQorCisgICAgICAgIGZvciBvcHRpb24gaW4gc2VsZi5vcHRpb25fdGFibGU6CisgICAgICAgICAgICBsb25nb3B0LCBzaG9ydCwgaGVscCA9IG9wdGlvbls6M10KKyAgICAgICAgICAgIHRleHQgPSB0ZXh0d3JhcC53cmFwKGhlbHAsIHRleHRfd2lkdGgpCisKKyAgICAgICAgICAgICMgQ2FzZSAxOiBubyBzaG9ydCBvcHRpb24gYXQgYWxsIChtYWtlcyBsaWZlIGVhc3kpCisgICAgICAgICAgICBpZiBzaG9ydCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGlmIHRleHQ6CisgICAgICAgICAgICAgICAgICAgIGxpbmVzLmFwcGVuZCgiICAtLSUtKnMgICVzIiAlIChtYXhfb3B0LCBsb25nb3B0LCB0ZXh0WzBdKSkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBsaW5lcy5hcHBlbmQoIiAgLS0lLSpzICAiICUgKG1heF9vcHQsIGxvbmdvcHQpKQorCisgICAgICAgICAgICAjIENhc2UgMjogd2UgaGF2ZSBhIHNob3J0IG9wdGlvbiwgc28gd2UgaGF2ZSB0byBpbmNsdWRlIGl0CisgICAgICAgICAgICAjIGp1c3QgYWZ0ZXIgdGhlIGxvbmcgb3B0aW9uCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIG9wdF9uYW1lcyA9ICIlcyAoLSVzKSIgJSAobG9uZ29wdCwgc2hvcnQpCisgICAgICAgICAgICAgICAgaWYgdGV4dDoKKyAgICAgICAgICAgICAgICAgICAgbGluZXMuYXBwZW5kKCIgIC0tJS0qcyAgJXMiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXhfb3B0LCBvcHRfbmFtZXMsIHRleHRbMF0pKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGxpbmVzLmFwcGVuZCgiICAtLSUtKnMiICUgb3B0X25hbWVzKQorCisgICAgICAgICAgICBmb3IgbCBpbiB0ZXh0WzE6XToKKyAgICAgICAgICAgICAgICBsaW5lcy5hcHBlbmQoYmlnX2luZGVudCArIGwpCisKKyAgICAgICAgcmV0dXJuIGxpbmVzCisKKyAgICBkZWYgcHJpbnRfaGVscChzZWxmLCBoZWFkZXI9Tm9uZSwgZmlsZT1Ob25lKToKKyAgICAgICAgaWYgZmlsZSBpcyBOb25lOgorICAgICAgICAgICAgZmlsZSA9IHN5cy5zdGRvdXQKKyAgICAgICAgZm9yIGxpbmUgaW4gc2VsZi5nZW5lcmF0ZV9oZWxwKGhlYWRlcik6CisgICAgICAgICAgICBmaWxlLndyaXRlKGxpbmUgKyAiXG4iKQorCisKK2RlZiBmYW5jeV9nZXRvcHQob3B0aW9ucywgbmVnYXRpdmVfb3B0LCBvYmplY3QsIGFyZ3MpOgorICAgIHBhcnNlciA9IEZhbmN5R2V0b3B0KG9wdGlvbnMpCisgICAgcGFyc2VyLnNldF9uZWdhdGl2ZV9hbGlhc2VzKG5lZ2F0aXZlX29wdCkKKyAgICByZXR1cm4gcGFyc2VyLmdldG9wdChhcmdzLCBvYmplY3QpCisKKworY2xhc3MgT3B0aW9uRHVtbXk6CisgICAgIiIiRHVtbXkgY2xhc3MganVzdCB1c2VkIGFzIGEgcGxhY2UgdG8gaG9sZCBjb21tYW5kLWxpbmUgb3B0aW9uCisgICAgdmFsdWVzIGFzIGluc3RhbmNlIGF0dHJpYnV0ZXMuIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgb3B0aW9ucz1bXSk6CisgICAgICAgICIiIkNyZWF0ZSBhIG5ldyBPcHRpb25EdW1teSBpbnN0YW5jZS4gIFRoZSBhdHRyaWJ1dGVzIGxpc3RlZCBpbgorICAgICAgICAnb3B0aW9ucycgd2lsbCBiZSBpbml0aWFsaXplZCB0byBOb25lLiIiIgorICAgICAgICBmb3Igb3B0IGluIG9wdGlvbnM6CisgICAgICAgICAgICBzZXRhdHRyKHNlbGYsIG9wdCwgTm9uZSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvaW5zdGFsbC5weSBiL0xpYi9wYWNrYWdpbmcvaW5zdGFsbC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NzZiYTQwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9pbnN0YWxsLnB5CkBAIC0wLDAgKzEsNTI5IEBACisiIiJCdWlsZGluZyBibG9ja3MgZm9yIGluc3RhbGxlcnMuCisKK1doZW4gdXNlZCBhcyBhIHNjcmlwdCwgdGhpcyBtb2R1bGUgaW5zdGFsbHMgYSByZWxlYXNlIHRoYW5rcyB0byBpbmZvCitvYnRhaW5lZCBmcm9tIGFuIGluZGV4IChlLmcuIFB5UEkpLCB3aXRoIGRlcGVuZGVuY2llcy4KKworVGhpcyBpcyBhIGhpZ2hlci1sZXZlbCBtb2R1bGUgYnVpbHQgb24gcGFja2FnaW5nLmRhdGFiYXNlIGFuZAorcGFja2FnaW5nLnB5cGkuCisiIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHN0YXQKK2ltcG9ydCBlcnJubworaW1wb3J0IHNodXRpbAoraW1wb3J0IGxvZ2dpbmcKK2ltcG9ydCB0ZW1wZmlsZQorZnJvbSBzeXNjb25maWcgaW1wb3J0IGdldF9jb25maWdfdmFyLCBnZXRfcGF0aCwgaXNfcHl0aG9uX2J1aWxkCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgKF9pc19hcmNoaXZlX2ZpbGUsIGFzaywgZ2V0X2luc3RhbGxfbWV0aG9kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVnZ2luZm9fdG9fZGlzdGluZm8pCitmcm9tIHBhY2thZ2luZy5weXBpIGltcG9ydCB3cmFwcGVyCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBnZXRfdmVyc2lvbl9wcmVkaWNhdGUKK2Zyb20gcGFja2FnaW5nLmRhdGFiYXNlIGltcG9ydCBnZXRfZGlzdHJpYnV0aW9ucywgZ2V0X2Rpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcuZGVwZ3JhcGggaW1wb3J0IGdlbmVyYXRlX2dyYXBoCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKFBhY2thZ2luZ0Vycm9yLCBJbnN0YWxsYXRpb25FeGNlcHRpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbnN0YWxsYXRpb25Db25mbGljdCwgQ0NvbXBpbGVyRXJyb3IpCitmcm9tIHBhY2thZ2luZy5weXBpLmVycm9ycyBpbXBvcnQgUHJvamVjdE5vdEZvdW5kLCBSZWxlYXNlTm90Rm91bmQKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBkYXRhYmFzZQorCisKK19fYWxsX18gPSBbJ2luc3RhbGxfZGlzdHMnLCAnaW5zdGFsbF9mcm9tX2luZm9zJywgJ2dldF9pbmZvcycsICdyZW1vdmUnLAorICAgICAgICAgICAnaW5zdGFsbCcsICdpbnN0YWxsX2xvY2FsX3Byb2plY3QnXQorCisKK2RlZiBfbW92ZV9maWxlcyhmaWxlcywgZGVzdGluYXRpb24pOgorICAgICIiIk1vdmUgdGhlIGxpc3Qgb2YgZmlsZXMgaW4gdGhlIGRlc3RpbmF0aW9uIGZvbGRlciwga2VlcGluZyB0aGUgc2FtZQorICAgIHN0cnVjdHVyZS4KKworICAgIFJldHVybiBhIGxpc3Qgb2YgdHVwbGUgKG9sZCwgbmV3KSBlbXBsYWNlbWVudCBvZiBmaWxlcworCisgICAgOnBhcmFtIGZpbGVzOiBhIGxpc3Qgb2YgZmlsZXMgdG8gbW92ZS4KKyAgICA6cGFyYW0gZGVzdGluYXRpb246IHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkgdG8gcHV0IG9uIHRoZSBmaWxlcy4KKyAgICAiIiIKKworICAgIGZvciBvbGQgaW4gZmlsZXM6CisgICAgICAgIGZpbGVuYW1lID0gb3MucGF0aC5zcGxpdChvbGQpWy0xXQorICAgICAgICBuZXcgPSBvcy5wYXRoLmpvaW4oZGVzdGluYXRpb24sIGZpbGVuYW1lKQorICAgICAgICAjIHRyeSB0byBtYWtlIHRoZSBwYXRocy4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3MubWFrZWRpcnMob3MucGF0aC5kaXJuYW1lKG5ldykpCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVFWElTVDoKKyAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICBvcy5yZW5hbWUob2xkLCBuZXcpCisgICAgICAgIHlpZWxkIG9sZCwgbmV3CisKKworZGVmIF9ydW5fZGlzdHV0aWxzX2luc3RhbGwocGF0aCk6CisgICAgIyBiYWNrd2FyZCBjb21wYXQ6IHVzaW5nIHNldHVwdG9vbHMgb3IgcGxhaW4tZGlzdHV0aWxzCisgICAgY21kID0gJyVzIHNldHVwLnB5IGluc3RhbGwgLS1yZWNvcmQ9JXMnCisgICAgcmVjb3JkX2ZpbGUgPSBvcy5wYXRoLmpvaW4ocGF0aCwgJ1JFQ09SRCcpCisgICAgb3Muc3lzdGVtKGNtZCAlIChzeXMuZXhlY3V0YWJsZSwgcmVjb3JkX2ZpbGUpKQorICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhyZWNvcmRfZmlsZSk6CisgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ2ZhaWxlZCB0byBpbnN0YWxsJykKKyAgICBlbHNlOgorICAgICAgICBlZ2dpbmZvX3RvX2Rpc3RpbmZvKHJlY29yZF9maWxlLCByZW1vdmVfZWdnaW5mbz1UcnVlKQorCisKK2RlZiBfcnVuX3NldHVwdG9vbHNfaW5zdGFsbChwYXRoKToKKyAgICBjbWQgPSAnJXMgc2V0dXAucHkgaW5zdGFsbCAtLXJlY29yZD0lcyAtLXNpbmdsZS12ZXJzaW9uLWV4dGVybmFsbHktbWFuYWdlZCcKKyAgICByZWNvcmRfZmlsZSA9IG9zLnBhdGguam9pbihwYXRoLCAnUkVDT1JEJykKKworICAgIG9zLnN5c3RlbShjbWQgJSAoc3lzLmV4ZWN1dGFibGUsIHJlY29yZF9maWxlKSkKKyAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMocmVjb3JkX2ZpbGUpOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdmYWlsZWQgdG8gaW5zdGFsbCcpCisgICAgZWxzZToKKyAgICAgICAgZWdnaW5mb190b19kaXN0aW5mbyhyZWNvcmRfZmlsZSwgcmVtb3ZlX2VnZ2luZm89VHJ1ZSkKKworCitkZWYgX3J1bl9wYWNrYWdpbmdfaW5zdGFsbChwYXRoKToKKyAgICAjIFhYWCBjaGVjayBmb3IgYSB2YWxpZCBzZXR1cC5jZmc/CisgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgZGlzdC5wYXJzZV9jb25maWdfZmlsZXMoKQorICAgIHRyeToKKyAgICAgICAgZGlzdC5ydW5fY29tbWFuZCgnaW5zdGFsbF9kaXN0JykKKyAgICAgICAgbmFtZSA9IGRpc3QubWV0YWRhdGFbJ05hbWUnXQorICAgICAgICByZXR1cm4gZGF0YWJhc2UuZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lKSBpcyBub3QgTm9uZQorICAgIGV4Y2VwdCAoSU9FcnJvciwgb3MuZXJyb3IsIFBhY2thZ2luZ0Vycm9yLCBDQ29tcGlsZXJFcnJvcikgYXMgbXNnOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJGYWlsZWQgdG8gaW5zdGFsbCwgIiArIHN0cihtc2cpKQorCisKK2RlZiBfaW5zdGFsbF9kaXN0KGRpc3QsIHBhdGgpOgorICAgICIiIkluc3RhbGwgYSBkaXN0cmlidXRpb24gaW50byBhIHBhdGguCisKKyAgICBUaGlzOgorCisgICAgKiB1bnBhY2sgdGhlIGRpc3RyaWJ1dGlvbgorICAgICogY29weSB0aGUgZmlsZXMgaW4gInBhdGgiCisgICAgKiBkZXRlcm1pbmUgaWYgdGhlIGRpc3RyaWJ1dGlvbiBpcyBwYWNrYWdpbmcgb3IgZGlzdHV0aWxzMS4KKyAgICAiIiIKKyAgICB3aGVyZSA9IGRpc3QudW5wYWNrKCkKKworICAgIGlmIHdoZXJlIGlzIE5vbmU6CisgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ0Nhbm5vdCBsb2NhdGUgdGhlIHVucGFja2VkIGFyY2hpdmUnKQorCisgICAgcmV0dXJuIF9ydW5faW5zdGFsbF9mcm9tX2FyY2hpdmUod2hlcmUpCisKKworZGVmIGluc3RhbGxfbG9jYWxfcHJvamVjdChwYXRoKToKKyAgICAiIiJJbnN0YWxsIGEgZGlzdHJpYnV0aW9uIGZyb20gYSBzb3VyY2UgZGlyZWN0b3J5LgorCisgICAgSWYgdGhlIHNvdXJjZSBkaXJlY3RvcnkgY29udGFpbnMgYSBzZXR1cC5weSBpbnN0YWxsIHVzaW5nIGRpc3R1dGlsczEuCisgICAgSWYgYSBzZXR1cC5jZmcgaXMgZm91bmQsIGluc3RhbGwgdXNpbmcgdGhlIGluc3RhbGxfZGlzdCBjb21tYW5kLgorCisgICAgUmV0dXJucyBUcnVlIG9uIHN1Y2Nlc3MsIEZhbHNlIG9uIEZhaWx1cmUuCisgICAgIiIiCisgICAgcGF0aCA9IG9zLnBhdGguYWJzcGF0aChwYXRoKQorICAgIGlmIG9zLnBhdGguaXNkaXIocGF0aCk6CisgICAgICAgIGxvZ2dlci5pbmZvKCdJbnN0YWxsaW5nIGZyb20gc291cmNlIGRpcmVjdG9yeTogJXInLCBwYXRoKQorICAgICAgICByZXR1cm4gX3J1bl9pbnN0YWxsX2Zyb21fZGlyKHBhdGgpCisgICAgZWxpZiBfaXNfYXJjaGl2ZV9maWxlKHBhdGgpOgorICAgICAgICBsb2dnZXIuaW5mbygnSW5zdGFsbGluZyBmcm9tIGFyY2hpdmU6ICVyJywgcGF0aCkKKyAgICAgICAgX3VucGFja2VkX2RpciA9IHRlbXBmaWxlLm1rZHRlbXAoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzaHV0aWwudW5wYWNrX2FyY2hpdmUocGF0aCwgX3VucGFja2VkX2RpcikKKyAgICAgICAgICAgIHJldHVybiBfcnVuX2luc3RhbGxfZnJvbV9hcmNoaXZlKF91bnBhY2tlZF9kaXIpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzaHV0aWwucm10cmVlKF91bnBhY2tlZF9kaXIpCisgICAgZWxzZToKKyAgICAgICAgbG9nZ2VyLndhcm5pbmcoJ05vIHByb2plY3QgdG8gaW5zdGFsbC4nKQorICAgICAgICByZXR1cm4gRmFsc2UKKworCitkZWYgX3J1bl9pbnN0YWxsX2Zyb21fYXJjaGl2ZShzb3VyY2VfZGlyKToKKyAgICAjIFhYWCBuZWVkIGEgYmV0dGVyIHdheQorICAgIGZvciBpdGVtIGluIG9zLmxpc3RkaXIoc291cmNlX2Rpcik6CisgICAgICAgIGZ1bGxwYXRoID0gb3MucGF0aC5qb2luKHNvdXJjZV9kaXIsIGl0ZW0pCisgICAgICAgIGlmIG9zLnBhdGguaXNkaXIoZnVsbHBhdGgpOgorICAgICAgICAgICAgc291cmNlX2RpciA9IGZ1bGxwYXRoCisgICAgICAgICAgICBicmVhaworICAgIHJldHVybiBfcnVuX2luc3RhbGxfZnJvbV9kaXIoc291cmNlX2RpcikKKworCitpbnN0YWxsX21ldGhvZHMgPSB7CisgICAgJ3BhY2thZ2luZyc6IF9ydW5fcGFja2FnaW5nX2luc3RhbGwsCisgICAgJ3NldHVwdG9vbHMnOiBfcnVuX3NldHVwdG9vbHNfaW5zdGFsbCwKKyAgICAnZGlzdHV0aWxzJzogX3J1bl9kaXN0dXRpbHNfaW5zdGFsbH0KKworCitkZWYgX3J1bl9pbnN0YWxsX2Zyb21fZGlyKHNvdXJjZV9kaXIpOgorICAgIG9sZF9kaXIgPSBvcy5nZXRjd2QoKQorICAgIG9zLmNoZGlyKHNvdXJjZV9kaXIpCisgICAgaW5zdGFsbF9tZXRob2QgPSBnZXRfaW5zdGFsbF9tZXRob2Qoc291cmNlX2RpcikKKyAgICBmdW5jID0gaW5zdGFsbF9tZXRob2RzW2luc3RhbGxfbWV0aG9kXQorICAgIHRyeToKKyAgICAgICAgZnVuYyA9IGluc3RhbGxfbWV0aG9kc1tpbnN0YWxsX21ldGhvZF0KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZnVuYyhzb3VyY2VfZGlyKQorICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZXJyOgorICAgICAgICAgICAgIyBmYWlsZWQgdG8gaW5zdGFsbAorICAgICAgICAgICAgbG9nZ2VyLmluZm8oc3RyKGVycikpCisgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBmaW5hbGx5OgorICAgICAgICBvcy5jaGRpcihvbGRfZGlyKQorCisKK2RlZiBpbnN0YWxsX2Rpc3RzKGRpc3RzLCBwYXRoLCBwYXRocz1Ob25lKToKKyAgICAiIiJJbnN0YWxsIGFsbCBkaXN0cmlidXRpb25zIHByb3ZpZGVkIGluIGRpc3RzLCB3aXRoIHRoZSBnaXZlbiBwcmVmaXguCisKKyAgICBJZiBhbiBlcnJvciBvY2N1cnMgd2hpbGUgaW5zdGFsbGluZyBvbmUgb2YgdGhlIGRpc3RyaWJ1dGlvbnMsIHVuaW5zdGFsbCBhbGwKKyAgICB0aGUgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbiAoaW4gdGhlIGNvbnRleHQgaWYgdGhpcyBmdW5jdGlvbikuCisKKyAgICBSZXR1cm4gYSBsaXN0IG9mIGluc3RhbGxlZCBkaXN0cy4KKworICAgIDpwYXJhbSBkaXN0czogZGlzdHJpYnV0aW9ucyB0byBpbnN0YWxsCisgICAgOnBhcmFtIHBhdGg6IGJhc2UgcGF0aCB0byBpbnN0YWxsIGRpc3RyaWJ1dGlvbiBpbgorICAgIDpwYXJhbSBwYXRoczogbGlzdCBvZiBwYXRocyAoZGVmYXVsdHMgdG8gc3lzLnBhdGgpIHRvIGxvb2sgZm9yIGluZm8KKyAgICAiIiIKKworICAgIGluc3RhbGxlZF9kaXN0cyA9IFtdCisgICAgZm9yIGRpc3QgaW4gZGlzdHM6CisgICAgICAgIGxvZ2dlci5pbmZvKCdJbnN0YWxsaW5nICVyICVzLi4uJywgZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24pCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIF9pbnN0YWxsX2Rpc3QoZGlzdCwgcGF0aCkKKyAgICAgICAgICAgIGluc3RhbGxlZF9kaXN0cy5hcHBlbmQoZGlzdCkKKyAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ0ZhaWxlZDogJXMnLCBlKQorCisgICAgICAgICAgICAjIHJldmVydGluZworICAgICAgICAgICAgZm9yIGluc3RhbGxlZF9kaXN0IGluIGluc3RhbGxlZF9kaXN0czoKKyAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygnUmV2ZXJ0aW5nICVyJywgaW5zdGFsbGVkX2Rpc3QpCisgICAgICAgICAgICAgICAgcmVtb3ZlKGluc3RhbGxlZF9kaXN0Lm5hbWUsIHBhdGhzKQorICAgICAgICAgICAgcmFpc2UgZQorICAgIHJldHVybiBpbnN0YWxsZWRfZGlzdHMKKworCitkZWYgaW5zdGFsbF9mcm9tX2luZm9zKGluc3RhbGxfcGF0aD1Ob25lLCBpbnN0YWxsPVtdLCByZW1vdmU9W10sIGNvbmZsaWN0cz1bXSwKKyAgICAgICAgICAgICAgICAgICAgICAgcGF0aHM9Tm9uZSk6CisgICAgIiIiSW5zdGFsbCBhbmQgcmVtb3ZlIHRoZSBnaXZlbiBkaXN0cmlidXRpb25zLgorCisgICAgVGhlIGZ1bmN0aW9uIHNpZ25hdHVyZSBpcyBtYWRlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCB0aGUgb25lIG9mIGdldF9pbmZvcy4KKyAgICBUaGUgYWltIG9mIHRoaXMgc2NyaXB0IGlzIHRvIHBvdmlkZSBhIHdheSB0byBpbnN0YWxsL3JlbW92ZSB3aGF0J3MgYXNrZWQsCisgICAgYW5kIHRvIHJvbGxiYWNrIGlmIG5lZWRlZC4KKworICAgIFNvLCBpdCdzIG5vdCBwb3NzaWJsZSB0byBiZSBpbiBhbiBpbmNvbnNpc3RhbnQgc3RhdGUsIGl0IGNvdWxkIGJlIGVpdGhlcgorICAgIGluc3RhbGxlZCwgZWl0aGVyIHVuaW5zdGFsbGVkLCBub3QgaGFsZi1pbnN0YWxsZWQuCisKKyAgICBUaGUgcHJvY2VzcyBmb2xsb3cgdGhvc2Ugc3RlcHM6CisKKyAgICAgICAgMS4gTW92ZSBhbGwgZGlzdHJpYnV0aW9ucyB0aGF0IHdpbGwgYmUgcmVtb3ZlZCBpbiBhIHRlbXBvcmFyeSBsb2NhdGlvbgorICAgICAgICAyLiBJbnN0YWxsIGFsbCB0aGUgZGlzdHJpYnV0aW9ucyB0aGF0IHdpbGwgYmUgaW5zdGFsbGVkIGluIGEgdGVtcC4gbG9jLgorICAgICAgICAzLiBJZiB0aGUgaW5zdGFsbGF0aW9uIGZhaWxzLCByb2xsYmFjayAoZWcuIG1vdmUgYmFjaykgdGhvc2UKKyAgICAgICAgICAgZGlzdHJpYnV0aW9ucywgb3IgcmVtb3ZlIHdoYXQgaGF2ZSBiZWVuIGluc3RhbGxlZC4KKyAgICAgICAgNC4gRWxzZSwgbW92ZSB0aGUgZGlzdHJpYnV0aW9ucyB0byB0aGUgcmlnaHQgbG9jYXRpb25zLCBhbmQgcmVtb3ZlIGZvcgorICAgICAgICAgICByZWFsIHRoZSBkaXN0cmlidXRpb25zIHRoYXRzIG5lZWQgdG8gYmUgcmVtb3ZlZC4KKworICAgIDpwYXJhbSBpbnN0YWxsX3BhdGg6IHRoZSBpbnN0YWxsYXRpb24gcGF0aCB3aGVyZSB3ZSB3YW50IHRvIGluc3RhbGwgdGhlCisgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdHJpYnV0aW9ucy4KKyAgICA6cGFyYW0gaW5zdGFsbDogbGlzdCBvZiBkaXN0cmlidXRpb25zIHRoYXQgd2lsbCBiZSBpbnN0YWxsZWQ7IGluc3RhbGxfcGF0aAorICAgICAgICAgICAgICAgICAgICBtdXN0IGJlIHByb3ZpZGVkIGlmIHRoaXMgbGlzdCBpcyBub3QgZW1wdHkuCisgICAgOnBhcmFtIHJlbW92ZTogbGlzdCBvZiBkaXN0cmlidXRpb25zIHRoYXQgd2lsbCBiZSByZW1vdmVkLgorICAgIDpwYXJhbSBjb25mbGljdHM6IGxpc3Qgb2YgY29uZmxpY3RpbmcgZGlzdHJpYnV0aW9ucywgZWcuIHRoYXQgd2lsbCBiZSBpbgorICAgICAgICAgICAgICAgICAgICAgIGNvbmZsaWN0IG9uY2UgdGhlIGluc3RhbGwgYW5kIHJlbW92ZSBkaXN0cmlidXRpb24gd2lsbCBiZQorICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NlZC4KKyAgICA6cGFyYW0gcGF0aHM6IGxpc3Qgb2YgcGF0aHMgKGRlZmF1bHRzIHRvIHN5cy5wYXRoKSB0byBsb29rIGZvciBpbmZvCisgICAgIiIiCisgICAgIyBmaXJzdCBvZiBhbGwsIGlmIHdlIGhhdmUgY29uZmxpY3RzLCBzdG9wIGhlcmUuCisgICAgaWYgY29uZmxpY3RzOgorICAgICAgICByYWlzZSBJbnN0YWxsYXRpb25Db25mbGljdChjb25mbGljdHMpCisKKyAgICBpZiBpbnN0YWxsIGFuZCBub3QgaW5zdGFsbF9wYXRoOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJEaXN0cmlidXRpb25zIGFyZSB0byBiZSBpbnN0YWxsZWQgYnV0IGBpbnN0YWxsX3BhdGhgIgorICAgICAgICAgICAgICAgICAgICAgICAgICIgaXMgbm90IHByb3ZpZGVkLiIpCisKKyAgICAjIGJlZm9yZSByZW1vdmluZyB0aGUgZmlsZXMsIHdlIHdpbGwgc3RhcnQgYnkgbW92aW5nIHRoZW0gYXdheQorICAgICMgdGhlbiwgaWYgYW55IGVycm9yIG9jY3Vycywgd2UgY291bGQgcmVwbGFjZSB0aGVtIGluIHRoZSBnb29kIHBsYWNlLgorICAgIHRlbXBfZmlsZXMgPSB7fSAgIyBjb250YWlucyBsaXN0cyBvZiB7ZGlzdDogKG9sZCwgbmV3KX0gcGF0aHMKKyAgICB0ZW1wX2RpciA9IE5vbmUKKyAgICBpZiByZW1vdmU6CisgICAgICAgIHRlbXBfZGlyID0gdGVtcGZpbGUubWtkdGVtcCgpCisgICAgICAgIGZvciBkaXN0IGluIHJlbW92ZToKKyAgICAgICAgICAgIGZpbGVzID0gZGlzdC5saXN0X2luc3RhbGxlZF9maWxlcygpCisgICAgICAgICAgICB0ZW1wX2ZpbGVzW2Rpc3RdID0gX21vdmVfZmlsZXMoZmlsZXMsIHRlbXBfZGlyKQorICAgIHRyeToKKyAgICAgICAgaWYgaW5zdGFsbDoKKyAgICAgICAgICAgIGluc3RhbGxfZGlzdHMoaW5zdGFsbCwgaW5zdGFsbF9wYXRoLCBwYXRocykKKyAgICBleGNlcHQ6CisgICAgICAgICMgaWYgYW4gZXJyb3Igb2NjdXJzLCBwdXQgYmFjayB0aGUgZmlsZXMgaW4gdGhlIHJpZ2h0IHBsYWNlLgorICAgICAgICBmb3IgZmlsZXMgaW4gdGVtcF9maWxlcy52YWx1ZXMoKToKKyAgICAgICAgICAgIGZvciBvbGQsIG5ldyBpbiBmaWxlczoKKyAgICAgICAgICAgICAgICBzaHV0aWwubW92ZShuZXcsIG9sZCkKKyAgICAgICAgaWYgdGVtcF9kaXI6CisgICAgICAgICAgICBzaHV0aWwucm10cmVlKHRlbXBfZGlyKQorICAgICAgICAjIG5vdyByZS1yYWlzaW5nCisgICAgICAgIHJhaXNlCisKKyAgICAjIHdlIGNhbiByZW1vdmUgdGhlbSBmb3IgZ29vZAorICAgIGZvciBmaWxlcyBpbiB0ZW1wX2ZpbGVzLnZhbHVlcygpOgorICAgICAgICBmb3Igb2xkLCBuZXcgaW4gZmlsZXM6CisgICAgICAgICAgICBvcy5yZW1vdmUobmV3KQorICAgIGlmIHRlbXBfZGlyOgorICAgICAgICBzaHV0aWwucm10cmVlKHRlbXBfZGlyKQorCisKK2RlZiBfZ2V0X3NldHVwdG9vbHNfZGVwcyhyZWxlYXNlKToKKyAgICAjIE5vdEltcGxlbWVudGVkRXJyb3IKKyAgICBwYXNzCisKKworZGVmIGdldF9pbmZvcyhyZXF1aXJlbWVudHMsIGluZGV4PU5vbmUsIGluc3RhbGxlZD1Ob25lLCBwcmVmZXJfZmluYWw9VHJ1ZSk6CisgICAgIiIiUmV0dXJuIHRoZSBpbmZvcm1hdGlvbnMgb24gd2hhdCdzIGdvaW5nIHRvIGJlIGluc3RhbGxlZCBhbmQgdXBncmFkZWQuCisKKyAgICA6cGFyYW0gcmVxdWlyZW1lbnRzOiBpcyBhICpzdHJpbmcqIGNvbnRhaW5pbmcgdGhlIHJlcXVpcmVtZW50cyBmb3IgdGhpcworICAgICAgICAgICAgICAgICAgICAgICAgIHByb2plY3QgKGZvciBpbnN0YW5jZSAiRm9vQmFyIDEuMSIgb3IgIkJhckJheiAoPDEuMikiKQorICAgIDpwYXJhbSBpbmRleDogSWYgYW4gaW5kZXggaXMgc3BlY2lmaWVkLCB1c2UgdGhpcyBvbmUsIG90aGVyd2lzZSwgdXNlCisgICAgICAgICAgICAgICAgICA6Y2xhc3MgaW5kZXguQ2xpZW50V3JhcHBlcjogdG8gZ2V0IHByb2plY3QgbWV0YWRhdGFzLgorICAgIDpwYXJhbSBpbnN0YWxsZWQ6IGEgbGlzdCBvZiBhbHJlYWR5IGluc3RhbGxlZCBkaXN0cmlidXRpb25zLgorICAgIDpwYXJhbSBwcmVmZXJfZmluYWw6IHdoZW4gcGlja2luZyB1cCB0aGUgcmVsZWFzZXMsIHByZWZlciBhICJmaW5hbCIgb25lCisgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlciBhIGJldGEvYWxwaGEvZXRjIG9uZS4KKworICAgIFRoZSByZXN1bHRzIGFyZSByZXR1cm5lZCBpbiBhIGRpY3QsIGNvbnRhaW5pbmcgYWxsIHRoZSBvcGVyYXRpb25zCisgICAgbmVlZGVkIHRvIGluc3RhbGwgdGhlIGdpdmVuIHJlcXVpcmVtZW50czo6CisKKyAgICAgICAgPj4+IGdldF9pbnN0YWxsX2luZm8oIkZvb0JhciAoPD0xLjIpIikKKyAgICAgICAgeydpbnN0YWxsJzogWzxGb29CYXIgMS4xPl0sICdyZW1vdmUnOiBbXSwgJ2NvbmZsaWN0JzogW119CisKKyAgICBDb25mbGljdCBjb250YWlucyBhbGwgdGhlIGNvbmZsaWN0aW5nIGRpc3RyaWJ1dGlvbnMsIGlmIHRoZXJlIGlzIGEKKyAgICBjb25mbGljdC4KKyAgICAiIiIKKyAgICAjIHRoaXMgZnVuY3Rpb24gZG9lcyBzZXZlcmFsIHRoaW5nczoKKyAgICAjIDEuIGdldCBhIHJlbGVhc2Ugc3BlY2lmaWVkIGJ5IHRoZSByZXF1aXJlbWVudHMKKyAgICAjIDIuIGdhdGhlciBpdHMgbWV0YWRhdGEsIHVzaW5nIHNldHVwdG9vbHMgY29tcGF0aWJpbGl0eSBpZiBuZWVkZWQKKyAgICAjIDMuIGNvbXBhcmUgdGhpcyB0cmVlIHdpdGggd2hhdCBpcyBjdXJyZW50bHkgaW5zdGFsbGVkIG9uIHRoZSBzeXN0ZW0sCisgICAgIyAgICByZXR1cm4gdGhlIHJlcXVpcmVtZW50cyBvZiB3aGF0IGlzIG1pc3NpbmcKKyAgICAjIDQuIGRvIHRoYXQgcmVjdXJzaXZlbHkgYW5kIG1lcmdlIGJhY2sgdGhlIHJlc3VsdHMKKyAgICAjIDUuIHJldHVybiBhIGRpY3QgY29udGFpbmluZyBpbmZvcm1hdGlvbiBhYm91dCB3aGF0IGlzIG5lZWRlZCB0byBpbnN0YWxsCisgICAgIyAgICBvciByZW1vdmUKKworICAgIGlmIG5vdCBpbnN0YWxsZWQ6CisgICAgICAgIGxvZ2dlci5kZWJ1ZygnUmVhZGluZyBpbnN0YWxsZWQgZGlzdHJpYnV0aW9ucycpCisgICAgICAgIGluc3RhbGxlZCA9IGxpc3QoZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPVRydWUpKQorCisgICAgaW5mb3MgPSB7J2luc3RhbGwnOiBbXSwgJ3JlbW92ZSc6IFtdLCAnY29uZmxpY3QnOiBbXX0KKyAgICAjIElzIGEgY29tcGF0aWJsZSB2ZXJzaW9uIG9mIHRoZSBwcm9qZWN0IGFscmVhZHkgaW5zdGFsbGVkID8KKyAgICBwcmVkaWNhdGUgPSBnZXRfdmVyc2lvbl9wcmVkaWNhdGUocmVxdWlyZW1lbnRzKQorICAgIGZvdW5kID0gRmFsc2UKKworICAgICMgY2hlY2sgdGhhdCB0aGUgcHJvamVjdCBpc24ndCBhbHJlYWR5IGluc3RhbGxlZAorICAgIGZvciBpbnN0YWxsZWRfcHJvamVjdCBpbiBpbnN0YWxsZWQ6CisgICAgICAgICMgaXMgaXQgYSBjb21wYXRpYmxlIHByb2plY3QgPworICAgICAgICBpZiBwcmVkaWNhdGUubmFtZS5sb3dlcigpICE9IGluc3RhbGxlZF9wcm9qZWN0Lm5hbWUubG93ZXIoKToKKyAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgIGZvdW5kID0gVHJ1ZQorICAgICAgICBsb2dnZXIuaW5mbygnRm91bmQgJXIgJXMnLCBpbnN0YWxsZWRfcHJvamVjdC5uYW1lLAorICAgICAgICAgICAgICAgICAgICBpbnN0YWxsZWRfcHJvamVjdC52ZXJzaW9uKQorCisgICAgICAgICMgaWYgd2UgYWxyZWFkeSBoYXZlIHNvbWV0aGluZyBpbnN0YWxsZWQsIGNoZWNrIGl0IG1hdGNoZXMgdGhlCisgICAgICAgICMgcmVxdWlyZW1lbnRzCisgICAgICAgIGlmIHByZWRpY2F0ZS5tYXRjaChpbnN0YWxsZWRfcHJvamVjdC52ZXJzaW9uKToKKyAgICAgICAgICAgIHJldHVybiBpbmZvcworICAgICAgICBicmVhaworCisgICAgaWYgbm90IGZvdW5kOgorICAgICAgICBsb2dnZXIuZGVidWcoJ1Byb2plY3Qgbm90IGluc3RhbGxlZCcpCisKKyAgICBpZiBub3QgaW5kZXg6CisgICAgICAgIGluZGV4ID0gd3JhcHBlci5DbGllbnRXcmFwcGVyKCkKKworICAgIGlmIG5vdCBpbnN0YWxsZWQ6CisgICAgICAgIGluc3RhbGxlZCA9IGdldF9kaXN0cmlidXRpb25zKHVzZV9lZ2dfaW5mbz1UcnVlKQorCisgICAgIyBHZXQgYWxsIHRoZSByZWxlYXNlcyB0aGF0IG1hdGNoIHRoZSByZXF1aXJlbWVudHMKKyAgICB0cnk6CisgICAgICAgIHJlbGVhc2UgPSBpbmRleC5nZXRfcmVsZWFzZShyZXF1aXJlbWVudHMpCisgICAgZXhjZXB0IChSZWxlYXNlTm90Rm91bmQsIFByb2plY3ROb3RGb3VuZCk6CisgICAgICAgIHJhaXNlIEluc3RhbGxhdGlvbkV4Y2VwdGlvbignUmVsZWFzZSBub3QgZm91bmQ6ICVyJyAlIHJlcXVpcmVtZW50cykKKworICAgIGlmIHJlbGVhc2UgaXMgTm9uZToKKyAgICAgICAgbG9nZ2VyLmluZm8oJ0NvdWxkIG5vdCBmaW5kIGEgbWF0Y2hpbmcgcHJvamVjdCcpCisgICAgICAgIHJldHVybiBpbmZvcworCisgICAgbWV0YWRhdGEgPSByZWxlYXNlLmZldGNoX21ldGFkYXRhKCkKKworICAgICMgd2UgbmVlZCB0byBidWlsZCBzZXR1cHRvb2xzIGRlcHMgaWYgYW55CisgICAgaWYgJ3JlcXVpcmVzX2Rpc3QnIG5vdCBpbiBtZXRhZGF0YToKKyAgICAgICAgbWV0YWRhdGFbJ3JlcXVpcmVzX2Rpc3QnXSA9IF9nZXRfc2V0dXB0b29sc19kZXBzKHJlbGVhc2UpCisKKyAgICAjIGJ1aWxkIHRoZSBkZXBlbmRlbmN5IGdyYXBoIHdpdGggbG9jYWwgYW5kIHJlcXVpcmVkIGRlcGVuZGVuY2llcworICAgIGRpc3RzID0gbGlzdChpbnN0YWxsZWQpCisgICAgZGlzdHMuYXBwZW5kKHJlbGVhc2UpCisgICAgZGVwZ3JhcGggPSBnZW5lcmF0ZV9ncmFwaChkaXN0cykKKworICAgICMgR2V0IHdoYXQgdGhlIG1pc3NpbmcgZGVwcyBhcmUKKyAgICBkaXN0cyA9IGRlcGdyYXBoLm1pc3NpbmdbcmVsZWFzZV0KKyAgICBpZiBkaXN0czoKKyAgICAgICAgbG9nZ2VyLmluZm8oIk1pc3NpbmcgZGVwZW5kZW5jaWVzIGZvdW5kLCByZXRyaWV2aW5nIG1ldGFkYXRhIikKKyAgICAgICAgIyB3ZSBoYXZlIG1pc3NpbmcgZGVwcworICAgICAgICBmb3IgZGlzdCBpbiBkaXN0czoKKyAgICAgICAgICAgIF91cGRhdGVfaW5mb3MoaW5mb3MsIGdldF9pbmZvcyhkaXN0LCBpbmRleCwgaW5zdGFsbGVkKSkKKworICAgICMgRmlsbCBpbiB0aGUgaW5mb3MKKyAgICBleGlzdGluZyA9IFtkIGZvciBkIGluIGluc3RhbGxlZCBpZiBkLm5hbWUgPT0gcmVsZWFzZS5uYW1lXQorICAgIGlmIGV4aXN0aW5nOgorICAgICAgICBpbmZvc1sncmVtb3ZlJ10uYXBwZW5kKGV4aXN0aW5nWzBdKQorICAgICAgICBpbmZvc1snY29uZmxpY3QnXS5leHRlbmQoZGVwZ3JhcGgucmV2ZXJzZV9saXN0W2V4aXN0aW5nWzBdXSkKKyAgICBpbmZvc1snaW5zdGFsbCddLmFwcGVuZChyZWxlYXNlKQorICAgIHJldHVybiBpbmZvcworCisKK2RlZiBfdXBkYXRlX2luZm9zKGluZm9zLCBuZXdfaW5mb3MpOgorICAgICIiImV4dGVuZHMgdGhlIGxpc3RzIGNvbnRhaW5lZCBpbiB0aGUgYGluZm9gIGRpY3Qgd2l0aCB0aG9zZSBjb250YWluZWQKKyAgICBpbiB0aGUgYG5ld19pbmZvYCBvbmUKKyAgICAiIiIKKyAgICBmb3Iga2V5LCB2YWx1ZSBpbiBpbmZvcy5pdGVtcygpOgorICAgICAgICBpZiBrZXkgaW4gbmV3X2luZm9zOgorICAgICAgICAgICAgaW5mb3Nba2V5XS5leHRlbmQobmV3X2luZm9zW2tleV0pCisKKworZGVmIHJlbW92ZShwcm9qZWN0X25hbWUsIHBhdGhzPU5vbmUsIGF1dG9fY29uZmlybT1UcnVlKToKKyAgICAiIiJSZW1vdmVzIGEgc2luZ2xlIHByb2plY3QgZnJvbSB0aGUgaW5zdGFsbGF0aW9uLgorCisgICAgUmV0dXJucyBUcnVlIG9uIHN1Y2Nlc3MKKyAgICAiIiIKKyAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihwcm9qZWN0X25hbWUsIHVzZV9lZ2dfaW5mbz1UcnVlLCBwYXRocz1wYXRocykKKyAgICBpZiBkaXN0IGlzIE5vbmU6CisgICAgICAgIHJhaXNlIFBhY2thZ2luZ0Vycm9yKCdEaXN0cmlidXRpb24gJXIgbm90IGZvdW5kJyAlIHByb2plY3RfbmFtZSkKKyAgICBmaWxlcyA9IGRpc3QubGlzdF9pbnN0YWxsZWRfZmlsZXMobG9jYWw9VHJ1ZSkKKyAgICBybWRpcnMgPSBbXQorICAgIHJtZmlsZXMgPSBbXQorICAgIHRtcCA9IHRlbXBmaWxlLm1rZHRlbXAocHJlZml4PXByb2plY3RfbmFtZSArICctdW5pbnN0YWxsJykKKworICAgIGRlZiBfbW92ZV9maWxlKHNvdXJjZSwgdGFyZ2V0KToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3MucmVuYW1lKHNvdXJjZSwgdGFyZ2V0KQorICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlcnI6CisgICAgICAgICAgICByZXR1cm4gZXJyCisgICAgICAgIHJldHVybiBOb25lCisKKyAgICBzdWNjZXNzID0gVHJ1ZQorICAgIGVycm9yID0gTm9uZQorICAgIHRyeToKKyAgICAgICAgZm9yIGZpbGVfLCBtZDUsIHNpemUgaW4gZmlsZXM6CisgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShmaWxlXyk6CisgICAgICAgICAgICAgICAgZGlybmFtZSwgZmlsZW5hbWUgPSBvcy5wYXRoLnNwbGl0KGZpbGVfKQorICAgICAgICAgICAgICAgIHRtcGZpbGUgPSBvcy5wYXRoLmpvaW4odG1wLCBmaWxlbmFtZSkKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGVycm9yID0gX21vdmVfZmlsZShmaWxlXywgdG1wZmlsZSkKKyAgICAgICAgICAgICAgICAgICAgaWYgZXJyb3IgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgICAgICAgICBzdWNjZXNzID0gRmFsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguaXNmaWxlKGZpbGVfKToKKyAgICAgICAgICAgICAgICAgICAgICAgIG9zLnJlbmFtZSh0bXBmaWxlLCBmaWxlXykKKyAgICAgICAgICAgICAgICBpZiBmaWxlXyBub3QgaW4gcm1maWxlczoKKyAgICAgICAgICAgICAgICAgICAgcm1maWxlcy5hcHBlbmQoZmlsZV8pCisgICAgICAgICAgICAgICAgaWYgZGlybmFtZSBub3QgaW4gcm1kaXJzOgorICAgICAgICAgICAgICAgICAgICBybWRpcnMuYXBwZW5kKGRpcm5hbWUpCisgICAgZmluYWxseToKKyAgICAgICAgc2h1dGlsLnJtdHJlZSh0bXApCisKKyAgICBpZiBub3Qgc3VjY2VzczoKKyAgICAgICAgbG9nZ2VyLmluZm8oJyVyIGNhbm5vdCBiZSByZW1vdmVkLicsIHByb2plY3RfbmFtZSkKKyAgICAgICAgbG9nZ2VyLmluZm8oJ0Vycm9yOiAlcycsIGVycm9yKQorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGxvZ2dlci5pbmZvKCdSZW1vdmluZyAlcjogJywgcHJvamVjdF9uYW1lKQorCisgICAgZm9yIGZpbGVfIGluIHJtZmlsZXM6CisgICAgICAgIGxvZ2dlci5pbmZvKCcgICVzJywgZmlsZV8pCisKKyAgICAjIFRha2VuIGZyb20gdGhlIHBpcCBwcm9qZWN0CisgICAgaWYgYXV0b19jb25maXJtOgorICAgICAgICByZXNwb25zZSA9ICd5JworICAgIGVsc2U6CisgICAgICAgIHJlc3BvbnNlID0gYXNrKCdQcm9jZWVkICh5L24pPyAnLCAoJ3knLCAnbicpKQorCisgICAgaWYgcmVzcG9uc2UgPT0gJ3knOgorICAgICAgICBmaWxlX2NvdW50ID0gMAorICAgICAgICBmb3IgZmlsZV8gaW4gcm1maWxlczoKKyAgICAgICAgICAgIG9zLnJlbW92ZShmaWxlXykKKyAgICAgICAgICAgIGZpbGVfY291bnQgKz0gMQorCisgICAgICAgIGRpcl9jb3VudCA9IDAKKyAgICAgICAgZm9yIGRpcm5hbWUgaW4gcm1kaXJzOgorICAgICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKGRpcm5hbWUpOgorICAgICAgICAgICAgICAgICMgY291bGQKKyAgICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICBmaWxlc19jb3VudCA9IDAKKyAgICAgICAgICAgIGZvciByb290LCBkaXIsIGZpbGVzIGluIG9zLndhbGsoZGlybmFtZSk6CisgICAgICAgICAgICAgICAgZmlsZXNfY291bnQgKz0gbGVuKGZpbGVzKQorCisgICAgICAgICAgICBpZiBmaWxlc19jb3VudCA+IDA6CisgICAgICAgICAgICAgICAgIyBYWFggV2FybmluZworICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgICMgZW1wdHkgZGlycyB3aXRoIG9ubHkgZW1wdHkgZGlycworICAgICAgICAgICAgaWYgb3Muc3RhdChkaXJuYW1lKS5zdF9tb2RlICYgc3RhdC5TX0lXVVNSOgorICAgICAgICAgICAgICAgICMgWFhYIEFkZCBhIGNhbGxhYmxlIGluIHNodXRpbC5ybXRyZWUgdG8gY291bnQKKyAgICAgICAgICAgICAgICAjIHRoZSBudW1iZXIgb2YgZGVsZXRlZCBlbGVtZW50cworICAgICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoZGlybmFtZSkKKyAgICAgICAgICAgICAgICBkaXJfY291bnQgKz0gMQorCisgICAgICAgICMgcmVtb3ZpbmcgdGhlIHRvcCBwYXRoCisgICAgICAgICMgWFhYIGNvdW50IGl0ID8KKyAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZGlzdC5wYXRoKToKKyAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoZGlzdC5wYXRoKQorCisgICAgICAgIGxvZ2dlci5pbmZvKCdTdWNjZXNzOiByZW1vdmVkICVkIGZpbGVzIGFuZCAlZCBkaXJzJywKKyAgICAgICAgICAgICAgICAgICAgZmlsZV9jb3VudCwgZGlyX2NvdW50KQorCisgICAgcmV0dXJuIFRydWUKKworCitkZWYgaW5zdGFsbChwcm9qZWN0KToKKyAgICAiIiJJbnN0YWxscyBhIHByb2plY3QuCisKKyAgICBSZXR1cm5zIFRydWUgb24gc3VjY2VzcywgRmFsc2Ugb24gZmFpbHVyZQorICAgICIiIgorICAgIGlmIGlzX3B5dGhvbl9idWlsZCgpOgorICAgICAgICAjIFB5dGhvbiB3b3VsZCB0cnkgdG8gaW5zdGFsbCBpbnRvIHRoZSBzaXRlLXBhY2thZ2VzIGRpcmVjdG9yeSB1bmRlcgorICAgICAgICAjICRQUkVGSVgsIGJ1dCB3aGVuIHJ1bm5pbmcgZnJvbSBhbiB1bmluc3RhbGxlZCBjb2RlIGNoZWNrb3V0IHdlIGRvbid0CisgICAgICAgICMgd2FudCB0byBjcmVhdGUgZGlyZWN0b3JpZXMgdW5kZXIgdGhlIGluc3RhbGxhdGlvbiByb290CisgICAgICAgIG1lc3NhZ2UgPSAoJ2luc3RhbGxpbmcgdGhpcmQtcGFydHkgcHJvamVjdHMgZnJvbSBhbiB1bmluc3RhbGxlZCAnCisgICAgICAgICAgICAgICAgICAgJ1B5dGhvbiBpcyBub3Qgc3VwcG9ydGVkJykKKyAgICAgICAgbG9nZ2VyLmVycm9yKG1lc3NhZ2UpCisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgbG9nZ2VyLmluZm8oJ0NoZWNraW5nIHRoZSBpbnN0YWxsYXRpb24gbG9jYXRpb24uLi4nKQorICAgIHB1cmVsaWJfcGF0aCA9IGdldF9wYXRoKCdwdXJlbGliJykKKworICAgICMgdHJ5aW5nIHRvIHdyaXRlIGEgZmlsZSB0aGVyZQorICAgIHRyeToKKyAgICAgICAgd2l0aCB0ZW1wZmlsZS5OYW1lZFRlbXBvcmFyeUZpbGUoc3VmZml4PXByb2plY3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcj1wdXJlbGliX3BhdGgpIGFzIHRlc3RmaWxlOgorICAgICAgICAgICAgdGVzdGZpbGUud3JpdGUoYid0ZXN0JykKKyAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgIyBGSVhNRSB0aGlzIHNob3VsZCBjaGVjayB0aGUgZXJybm8sIG9yIGJlIHJlbW92ZWQgYWx0b2dldGhlciAocmFjZQorICAgICAgICAjIGNvbmRpdGlvbjogdGhlIGRpcmVjdG9yeSBwZXJtaXNzaW9ucyBjb3VsZCBiZSBjaGFuZ2VkIGJldHdlZW4gaGVyZQorICAgICAgICAjIGFuZCB0aGUgYWN0dWFsIGluc3RhbGwpCisgICAgICAgIGxvZ2dlci5pbmZvKCdVbmFibGUgdG8gd3JpdGUgaW4gIiVzIi4gRG8geW91IGhhdmUgdGhlIHBlcm1pc3Npb25zID8nCisgICAgICAgICAgICAgICAgICAgICUgcHVyZWxpYl9wYXRoKQorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGxvZ2dlci5pbmZvKCdHZXR0aW5nIGluZm9ybWF0aW9uIGFib3V0ICVyLi4uJywgcHJvamVjdCkKKyAgICB0cnk6CisgICAgICAgIGluZm8gPSBnZXRfaW5mb3MocHJvamVjdCkKKyAgICBleGNlcHQgSW5zdGFsbGF0aW9uRXhjZXB0aW9uOgorICAgICAgICBsb2dnZXIuaW5mbygnQ291bmQgbm90IGZpbmQgJXInLCBwcm9qZWN0KQorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGlmIGluZm9bJ2luc3RhbGwnXSA9PSBbXToKKyAgICAgICAgbG9nZ2VyLmluZm8oJ05vdGhpbmcgdG8gaW5zdGFsbCcpCisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgaW5zdGFsbF9wYXRoID0gZ2V0X2NvbmZpZ192YXIoJ2Jhc2UnKQorICAgIHRyeToKKyAgICAgICAgaW5zdGFsbF9mcm9tX2luZm9zKGluc3RhbGxfcGF0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZm9bJ2luc3RhbGwnXSwgaW5mb1sncmVtb3ZlJ10sIGluZm9bJ2NvbmZsaWN0J10pCisKKyAgICBleGNlcHQgSW5zdGFsbGF0aW9uQ29uZmxpY3QgYXMgZToKKyAgICAgICAgaWYgbG9nZ2VyLmlzRW5hYmxlZEZvcihsb2dnaW5nLklORk8pOgorICAgICAgICAgICAgcHJvamVjdHMgPSAoJyVyICVzJyAlIChwLm5hbWUsIHAudmVyc2lvbikgZm9yIHAgaW4gZS5hcmdzWzBdKQorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJyVyIGNvbmZsaWN0cyB3aXRoICVzJywgcHJvamVjdCwgJywnLmpvaW4ocHJvamVjdHMpKQorCisgICAgcmV0dXJuIFRydWUKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvbWFuaWZlc3QucHkgYi9MaWIvcGFja2FnaW5nL21hbmlmZXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFkZjQ2MzMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL21hbmlmZXN0LnB5CkBAIC0wLDAgKzEsMzc3IEBACisiIiJDbGFzcyByZXByZXNlbnRpbmcgdGhlIGxpc3Qgb2YgZmlsZXMgaW4gYSBkaXN0cmlidXRpb24uCisKK1RoZSBNYW5pZmVzdCBjbGFzcyBjYW4gYmUgdXNlZCB0bzoKKworIC0gcmVhZCBvciB3cml0ZSBhIE1BTklGRVNUIGZpbGUKKyAtIHJlYWQgYSB0ZW1wbGF0ZSBmaWxlIGFuZCBmaW5kIG91dCB0aGUgZmlsZSBsaXN0CisiIiIKKyMgWFhYIHRvZG86IGRvY3VtZW50ICsgYWRkIHRlc3RzCitpbXBvcnQgcmUKK2ltcG9ydCBvcworaW1wb3J0IGZubWF0Y2gKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgd3JpdGVfZmlsZSwgY29udmVydF9wYXRoCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IChQYWNrYWdpbmdUZW1wbGF0ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFja2FnaW5nSW50ZXJuYWxFcnJvcikKKworX19hbGxfXyA9IFsnTWFuaWZlc3QnXQorCisjIGEgXCBmb2xsb3dlZCBieSBzb21lIHNwYWNlcyArIEVPTAorX0NPTExBUFNFX1BBVFRFUk4gPSByZS5jb21waWxlKCdcXFx3KlxuJywgcmUuTSkKK19DT01NRU5URURfTElORSA9IHJlLmNvbXBpbGUoJyMuKj8oPz1cbil8XG4oPz0kKScsIHJlLk0gfCByZS5TKQorCisKK2NsYXNzIE1hbmlmZXN0KG9iamVjdCk6CisgICAgIiIiQSBsaXN0IG9mIGZpbGVzIGJ1aWx0IGJ5IG9uIGV4cGxvcmluZyB0aGUgZmlsZXN5c3RlbSBhbmQgZmlsdGVyZWQgYnkKKyAgICBhcHBseWluZyB2YXJpb3VzIHBhdHRlcm5zIHRvIHdoYXQgd2UgZmluZCB0aGVyZS4KKyAgICAiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgc2VsZi5hbGxmaWxlcyA9IE5vbmUKKyAgICAgICAgc2VsZi5maWxlcyA9IFtdCisKKyAgICAjCisgICAgIyBQdWJsaWMgQVBJCisgICAgIworCisgICAgZGVmIGZpbmRhbGwoc2VsZiwgZGlyPW9zLmN1cmRpcik6CisgICAgICAgIHNlbGYuYWxsZmlsZXMgPSBfZmluZGFsbChkaXIpCisKKyAgICBkZWYgYXBwZW5kKHNlbGYsIGl0ZW0pOgorICAgICAgICBzZWxmLmZpbGVzLmFwcGVuZChpdGVtKQorCisgICAgZGVmIGV4dGVuZChzZWxmLCBpdGVtcyk6CisgICAgICAgIHNlbGYuZmlsZXMuZXh0ZW5kKGl0ZW1zKQorCisgICAgZGVmIHNvcnQoc2VsZik6CisgICAgICAgICMgTm90IGEgc3RyaWN0IGxleGljYWwgc29ydCEKKyAgICAgICAgc2VsZi5maWxlcyA9IFtvcy5wYXRoLmpvaW4oKnBhdGhfdHVwbGUpIGZvciBwYXRoX3R1cGxlIGluCisgICAgICAgICAgICAgICAgICAgICAgc29ydGVkKG9zLnBhdGguc3BsaXQocGF0aCkgZm9yIHBhdGggaW4gc2VsZi5maWxlcyldCisKKyAgICBkZWYgY2xlYXIoc2VsZik6CisgICAgICAgICIiIkNsZWFyIGFsbCBjb2xsZWN0ZWQgZmlsZXMuIiIiCisgICAgICAgIHNlbGYuZmlsZXMgPSBbXQorICAgICAgICBpZiBzZWxmLmFsbGZpbGVzIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5hbGxmaWxlcyA9IFtdCisKKyAgICBkZWYgcmVtb3ZlX2R1cGxpY2F0ZXMoc2VsZik6CisgICAgICAgICMgQXNzdW1lcyBsaXN0IGhhcyBiZWVuIHNvcnRlZCEKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UobGVuKHNlbGYuZmlsZXMpIC0gMSwgMCwgLTEpOgorICAgICAgICAgICAgaWYgc2VsZi5maWxlc1tpXSA9PSBzZWxmLmZpbGVzW2kgLSAxXToKKyAgICAgICAgICAgICAgICBkZWwgc2VsZi5maWxlc1tpXQorCisgICAgZGVmIHJlYWRfdGVtcGxhdGUoc2VsZiwgcGF0aF9vcl9maWxlKToKKyAgICAgICAgIiIiUmVhZCBhbmQgcGFyc2UgYSBtYW5pZmVzdCB0ZW1wbGF0ZSBmaWxlLgorICAgICAgICAncGF0aCcgY2FuIGJlIGEgcGF0aCBvciBhIGZpbGUtbGlrZSBvYmplY3QuCisKKyAgICAgICAgVXBkYXRlcyB0aGUgbGlzdCBhY2NvcmRpbmdseS4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIGlzaW5zdGFuY2UocGF0aF9vcl9maWxlLCBzdHIpOgorICAgICAgICAgICAgZiA9IG9wZW4ocGF0aF9vcl9maWxlKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZiA9IHBhdGhfb3JfZmlsZQorCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmLnJlYWQoKQorICAgICAgICAgICAgIyBmaXJzdCwgbGV0J3MgdW53cmFwIGNvbGxhcHNlZCBsaW5lcworICAgICAgICAgICAgY29udGVudCA9IF9DT0xMQVBTRV9QQVRURVJOLnN1YignJywgY29udGVudCkKKyAgICAgICAgICAgICMgbmV4dCwgbGV0J3MgcmVtb3ZlIGNvbW1lbnRlZCBsaW5lcyBhbmQgZW1wdHkgbGluZXMKKyAgICAgICAgICAgIGNvbnRlbnQgPSBfQ09NTUVOVEVEX0xJTkUuc3ViKCcnLCBjb250ZW50KQorCisgICAgICAgICAgICAjIG5vdyB3ZSBoYXZlIG91ciBjbGVhbmVkIHVwIGxpbmVzCisgICAgICAgICAgICBsaW5lcyA9IFtsaW5lLnN0cmlwKCkgZm9yIGxpbmUgaW4gY29udGVudC5zcGxpdCgnXG4nKV0KKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGYuY2xvc2UoKQorCisgICAgICAgIGZvciBsaW5lIGluIGxpbmVzOgorICAgICAgICAgICAgaWYgbGluZSA9PSAnJzoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZShsaW5lKQorICAgICAgICAgICAgZXhjZXB0IFBhY2thZ2luZ1RlbXBsYXRlRXJyb3IgYXMgbXNnOgorICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCIlcywgJXMiLCBwYXRoX29yX2ZpbGUsIG1zZykKKworICAgIGRlZiB3cml0ZShzZWxmLCBwYXRoKToKKyAgICAgICAgIiIiV3JpdGUgdGhlIGZpbGUgbGlzdCBpbiAnc2VsZi5maWxlbGlzdCcgKHByZXN1bWFibHkgYXMgZmlsbGVkIGluCisgICAgICAgIGJ5ICdhZGRfZGVmYXVsdHMoKScgYW5kICdyZWFkX3RlbXBsYXRlKCknKSB0byB0aGUgbWFuaWZlc3QgZmlsZQorICAgICAgICBuYW1lZCBieSAnc2VsZi5tYW5pZmVzdCcuCisgICAgICAgICIiIgorICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShwYXRoKToKKyAgICAgICAgICAgIHdpdGggb3BlbihwYXRoKSBhcyBmcDoKKyAgICAgICAgICAgICAgICBmaXJzdF9saW5lID0gZnAucmVhZGxpbmUoKQorCisgICAgICAgICAgICBpZiBmaXJzdF9saW5lICE9ICcjIGZpbGUgR0VORVJBVEVEIGJ5IHBhY2thZ2luZywgZG8gTk9UIGVkaXRcbic6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oIm5vdCB3cml0aW5nIHRvIG1hbnVhbGx5IG1haW50YWluZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYW5pZmVzdCBmaWxlICVyIiwgcGF0aCkKKyAgICAgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBzZWxmLnNvcnQoKQorICAgICAgICBzZWxmLnJlbW92ZV9kdXBsaWNhdGVzKCkKKyAgICAgICAgY29udGVudCA9IHNlbGYuZmlsZXNbOl0KKyAgICAgICAgY29udGVudC5pbnNlcnQoMCwgJyMgZmlsZSBHRU5FUkFURUQgYnkgcGFja2FnaW5nLCBkbyBOT1QgZWRpdCcpCisgICAgICAgIGxvZ2dlci5pbmZvKCJ3cml0aW5nIG1hbmlmZXN0IGZpbGUgJXIiLCBwYXRoKQorICAgICAgICB3cml0ZV9maWxlKHBhdGgsIGNvbnRlbnQpCisKKyAgICBkZWYgcmVhZChzZWxmLCBwYXRoKToKKyAgICAgICAgIiIiUmVhZCB0aGUgbWFuaWZlc3QgZmlsZSAobmFtZWQgYnkgJ3NlbGYubWFuaWZlc3QnKSBhbmQgdXNlIGl0IHRvCisgICAgICAgIGZpbGwgaW4gJ3NlbGYuZmlsZWxpc3QnLCB0aGUgbGlzdCBvZiBmaWxlcyB0byBpbmNsdWRlIGluIHRoZSBzb3VyY2UKKyAgICAgICAgZGlzdHJpYnV0aW9uLgorICAgICAgICAiIiIKKyAgICAgICAgbG9nZ2VyLmluZm8oInJlYWRpbmcgbWFuaWZlc3QgZmlsZSAlciIsIHBhdGgpCisgICAgICAgIHdpdGggb3BlbihwYXRoKSBhcyBtYW5pZmVzdDoKKyAgICAgICAgICAgIGZvciBsaW5lIGluIG1hbmlmZXN0LnJlYWRsaW5lcygpOgorICAgICAgICAgICAgICAgIHNlbGYuYXBwZW5kKGxpbmUpCisKKyAgICBkZWYgZXhjbHVkZV9wYXR0ZXJuKHNlbGYsIHBhdHRlcm4sIGFuY2hvcj1UcnVlLCBwcmVmaXg9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGlzX3JlZ2V4PUZhbHNlKToKKyAgICAgICAgIiIiUmVtb3ZlIHN0cmluZ3MgKHByZXN1bWFibHkgZmlsZW5hbWVzKSBmcm9tICdmaWxlcycgdGhhdCBtYXRjaAorICAgICAgICAncGF0dGVybicuCisKKyAgICAgICAgT3RoZXIgcGFyYW1ldGVycyBhcmUgdGhlIHNhbWUgYXMgZm9yICdpbmNsdWRlX3BhdHRlcm4oKScsIGFib3ZlLgorICAgICAgICBUaGUgbGlzdCAnc2VsZi5maWxlcycgaXMgbW9kaWZpZWQgaW4gcGxhY2UuIFJldHVybiBUcnVlIGlmIGZpbGVzIGFyZQorICAgICAgICBmb3VuZC4KKyAgICAgICAgIiIiCisgICAgICAgIGZpbGVzX2ZvdW5kID0gRmFsc2UKKyAgICAgICAgcGF0dGVybl9yZSA9IF90cmFuc2xhdGVfcGF0dGVybihwYXR0ZXJuLCBhbmNob3IsIHByZWZpeCwgaXNfcmVnZXgpCisgICAgICAgIGZvciBpIGluIHJhbmdlKGxlbihzZWxmLmZpbGVzKSAtIDEsIC0xLCAtMSk6CisgICAgICAgICAgICBpZiBwYXR0ZXJuX3JlLnNlYXJjaChzZWxmLmZpbGVzW2ldKToKKyAgICAgICAgICAgICAgICBkZWwgc2VsZi5maWxlc1tpXQorICAgICAgICAgICAgICAgIGZpbGVzX2ZvdW5kID0gVHJ1ZQorCisgICAgICAgIHJldHVybiBmaWxlc19mb3VuZAorCisgICAgIworICAgICMgUHJpdmF0ZSBBUEkKKyAgICAjCisKKyAgICBkZWYgX3BhcnNlX3RlbXBsYXRlX2xpbmUoc2VsZiwgbGluZSk6CisgICAgICAgIHdvcmRzID0gbGluZS5zcGxpdCgpCisgICAgICAgIGlmIGxlbih3b3JkcykgPT0gMSBhbmQgd29yZHNbMF0gbm90IGluICgKKyAgICAgICAgICAgICAgJ2luY2x1ZGUnLCAnZXhjbHVkZScsICdnbG9iYWwtaW5jbHVkZScsICdnbG9iYWwtZXhjbHVkZScsCisgICAgICAgICAgICAgICdyZWN1cnNpdmUtaW5jbHVkZScsICdyZWN1cnNpdmUtZXhjbHVkZScsICdncmFmdCcsICdwcnVuZScpOgorICAgICAgICAgICAgIyBubyBhY3Rpb24gZ2l2ZW4sIGxldCdzIHVzZSB0aGUgZGVmYXVsdCAnaW5jbHVkZScKKyAgICAgICAgICAgIHdvcmRzLmluc2VydCgwLCAnaW5jbHVkZScpCisKKyAgICAgICAgYWN0aW9uID0gd29yZHNbMF0KKyAgICAgICAgcGF0dGVybnMgPSBkaXIgPSBkaXJfcGF0dGVybiA9IE5vbmUKKworICAgICAgICBpZiBhY3Rpb24gaW4gKCdpbmNsdWRlJywgJ2V4Y2x1ZGUnLAorICAgICAgICAgICAgICAgICAgICAgICdnbG9iYWwtaW5jbHVkZScsICdnbG9iYWwtZXhjbHVkZScpOgorICAgICAgICAgICAgaWYgbGVuKHdvcmRzKSA8IDI6CisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nVGVtcGxhdGVFcnJvcigKKyAgICAgICAgICAgICAgICAgICAgICAiJXIgZXhwZWN0cyA8cGF0dGVybjE+IDxwYXR0ZXJuMj4gLi4uIiAlIGFjdGlvbikKKworICAgICAgICAgICAgcGF0dGVybnMgPSBbY29udmVydF9wYXRoKHdvcmQpIGZvciB3b3JkIGluIHdvcmRzWzE6XV0KKworICAgICAgICBlbGlmIGFjdGlvbiBpbiAoJ3JlY3Vyc2l2ZS1pbmNsdWRlJywgJ3JlY3Vyc2l2ZS1leGNsdWRlJyk6CisgICAgICAgICAgICBpZiBsZW4od29yZHMpIDwgMzoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdUZW1wbGF0ZUVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICIlciBleHBlY3RzIDxkaXI+IDxwYXR0ZXJuMT4gPHBhdHRlcm4yPiAuLi4iICUgYWN0aW9uKQorCisgICAgICAgICAgICBkaXIgPSBjb252ZXJ0X3BhdGgod29yZHNbMV0pCisgICAgICAgICAgICBwYXR0ZXJucyA9IFtjb252ZXJ0X3BhdGgod29yZCkgZm9yIHdvcmQgaW4gd29yZHNbMjpdXQorCisgICAgICAgIGVsaWYgYWN0aW9uIGluICgnZ3JhZnQnLCAncHJ1bmUnKToKKyAgICAgICAgICAgIGlmIGxlbih3b3JkcykgIT0gMjoKKyAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdUZW1wbGF0ZUVycm9yKAorICAgICAgICAgICAgICAgICAgICAgIiVyIGV4cGVjdHMgYSBzaW5nbGUgPGRpcl9wYXR0ZXJuPiIgJSBhY3Rpb24pCisKKyAgICAgICAgICAgIGRpcl9wYXR0ZXJuID0gY29udmVydF9wYXRoKHdvcmRzWzFdKQorCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdUZW1wbGF0ZUVycm9yKCJ1bmtub3duIGFjdGlvbiAlciIgJSBhY3Rpb24pCisKKyAgICAgICAgcmV0dXJuIGFjdGlvbiwgcGF0dGVybnMsIGRpciwgZGlyX3BhdHRlcm4KKworICAgIGRlZiBfcHJvY2Vzc190ZW1wbGF0ZV9saW5lKHNlbGYsIGxpbmUpOgorICAgICAgICAjIFBhcnNlIHRoZSBsaW5lOiBzcGxpdCBpdCB1cCwgbWFrZSBzdXJlIHRoZSByaWdodCBudW1iZXIgb2Ygd29yZHMKKyAgICAgICAgIyBpcyB0aGVyZSwgYW5kIHJldHVybiB0aGUgcmVsZXZhbnQgd29yZHMuICAnYWN0aW9uJyBpcyBhbHdheXMKKyAgICAgICAgIyBkZWZpbmVkOiBpdCdzIHRoZSBmaXJzdCB3b3JkIG9mIHRoZSBsaW5lLiAgV2hpY2ggb2YgdGhlIG90aGVyCisgICAgICAgICMgdGhyZWUgYXJlIGRlZmluZWQgZGVwZW5kcyBvbiB0aGUgYWN0aW9uOyBpdCdsbCBiZSBlaXRoZXIKKyAgICAgICAgIyBwYXR0ZXJucywgKGRpciBhbmQgcGF0dGVybnMpLCBvciAoZGlyX3BhdHRlcm4pLgorICAgICAgICBhY3Rpb24sIHBhdHRlcm5zLCBkaXIsIGRpcl9wYXR0ZXJuID0gc2VsZi5fcGFyc2VfdGVtcGxhdGVfbGluZShsaW5lKQorCisgICAgICAgICMgT0ssIG5vdyB3ZSBrbm93IHRoYXQgdGhlIGFjdGlvbiBpcyB2YWxpZCBhbmQgd2UgaGF2ZSB0aGUKKyAgICAgICAgIyByaWdodCBudW1iZXIgb2Ygd29yZHMgb24gdGhlIGxpbmUgZm9yIHRoYXQgYWN0aW9uIC0tIHNvIHdlCisgICAgICAgICMgY2FuIHByb2NlZWQgd2l0aCBtaW5pbWFsIGVycm9yLWNoZWNraW5nLgorICAgICAgICBpZiBhY3Rpb24gPT0gJ2luY2x1ZGUnOgorICAgICAgICAgICAgZm9yIHBhdHRlcm4gaW4gcGF0dGVybnM6CisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuX2luY2x1ZGVfcGF0dGVybihwYXR0ZXJuLCBhbmNob3I9VHJ1ZSk6CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJubyBmaWxlcyBmb3VuZCBtYXRjaGluZyAlciIsIHBhdHRlcm4pCisKKyAgICAgICAgZWxpZiBhY3Rpb24gPT0gJ2V4Y2x1ZGUnOgorICAgICAgICAgICAgZm9yIHBhdHRlcm4gaW4gcGF0dGVybnM6CisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuZXhjbHVkZV9wYXR0ZXJuKHBhdHRlcm4sIGFuY2hvcj1UcnVlKToKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoIm5vIHByZXZpb3VzbHktaW5jbHVkZWQgZmlsZXMgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZm91bmQgbWF0Y2hpbmcgJXIiLCBwYXR0ZXJuKQorCisgICAgICAgIGVsaWYgYWN0aW9uID09ICdnbG9iYWwtaW5jbHVkZSc6CisgICAgICAgICAgICBmb3IgcGF0dGVybiBpbiBwYXR0ZXJuczoKKyAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5faW5jbHVkZV9wYXR0ZXJuKHBhdHRlcm4sIGFuY2hvcj1GYWxzZSk6CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJubyBmaWxlcyBmb3VuZCBtYXRjaGluZyAlciAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbnl3aGVyZSBpbiBkaXN0cmlidXRpb24iLCBwYXR0ZXJuKQorCisgICAgICAgIGVsaWYgYWN0aW9uID09ICdnbG9iYWwtZXhjbHVkZSc6CisgICAgICAgICAgICBmb3IgcGF0dGVybiBpbiBwYXR0ZXJuczoKKyAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5leGNsdWRlX3BhdHRlcm4ocGF0dGVybiwgYW5jaG9yPUZhbHNlKToKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoIm5vIHByZXZpb3VzbHktaW5jbHVkZWQgZmlsZXMgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWF0Y2hpbmcgJXIgZm91bmQgYW55d2hlcmUgaW4gIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGlzdHJpYnV0aW9uIiwgcGF0dGVybikKKworICAgICAgICBlbGlmIGFjdGlvbiA9PSAncmVjdXJzaXZlLWluY2x1ZGUnOgorICAgICAgICAgICAgZm9yIHBhdHRlcm4gaW4gcGF0dGVybnM6CisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuX2luY2x1ZGVfcGF0dGVybihwYXR0ZXJuLCBwcmVmaXg9ZGlyKToKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoIm5vIGZpbGVzIGZvdW5kIG1hdGNoaW5nICVyICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVuZGVyIGRpcmVjdG9yeSAlciIsIHBhdHRlcm4sIGRpcikKKworICAgICAgICBlbGlmIGFjdGlvbiA9PSAncmVjdXJzaXZlLWV4Y2x1ZGUnOgorICAgICAgICAgICAgZm9yIHBhdHRlcm4gaW4gcGF0dGVybnM6CisgICAgICAgICAgICAgICAgaWYgbm90IHNlbGYuZXhjbHVkZV9wYXR0ZXJuKHBhdHRlcm4sIHByZWZpeD1kaXIpOgorICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygibm8gcHJldmlvdXNseS1pbmNsdWRlZCBmaWxlcyAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtYXRjaGluZyAlciBmb3VuZCB1bmRlciBkaXJlY3RvcnkgJXIiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXR0ZXJuLCBkaXIpCisKKyAgICAgICAgZWxpZiBhY3Rpb24gPT0gJ2dyYWZ0JzoKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLl9pbmNsdWRlX3BhdHRlcm4oTm9uZSwgcHJlZml4PWRpcl9wYXR0ZXJuKToKKyAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygibm8gZGlyZWN0b3JpZXMgZm91bmQgbWF0Y2hpbmcgJXIiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpcl9wYXR0ZXJuKQorCisgICAgICAgIGVsaWYgYWN0aW9uID09ICdwcnVuZSc6CisgICAgICAgICAgICBpZiBub3Qgc2VsZi5leGNsdWRlX3BhdHRlcm4oTm9uZSwgcHJlZml4PWRpcl9wYXR0ZXJuKToKKyAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygibm8gcHJldmlvdXNseS1pbmNsdWRlZCBkaXJlY3RvcmllcyBmb3VuZCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1hdGNoaW5nICVyIiwgZGlyX3BhdHRlcm4pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdJbnRlcm5hbEVycm9yKAorICAgICAgICAgICAgICAgICJ0aGlzIGNhbm5vdCBoYXBwZW46IGludmFsaWQgYWN0aW9uICVyIiAlIGFjdGlvbikKKworICAgIGRlZiBfaW5jbHVkZV9wYXR0ZXJuKHNlbGYsIHBhdHRlcm4sIGFuY2hvcj1UcnVlLCBwcmVmaXg9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBpc19yZWdleD1GYWxzZSk6CisgICAgICAgICIiIlNlbGVjdCBzdHJpbmdzIChwcmVzdW1hYmx5IGZpbGVuYW1lcykgZnJvbSAnc2VsZi5maWxlcycgdGhhdAorICAgICAgICBtYXRjaCAncGF0dGVybicsIGEgVW5peC1zdHlsZSB3aWxkY2FyZCAoZ2xvYikgcGF0dGVybi4KKworICAgICAgICBQYXR0ZXJucyBhcmUgbm90IHF1aXRlIHRoZSBzYW1lIGFzIGltcGxlbWVudGVkIGJ5IHRoZSAnZm5tYXRjaCcKKyAgICAgICAgbW9kdWxlOiAnKicgYW5kICc/JyAgbWF0Y2ggbm9uLXNwZWNpYWwgY2hhcmFjdGVycywgd2hlcmUgInNwZWNpYWwiCisgICAgICAgIGlzIHBsYXRmb3JtLWRlcGVuZGVudDogc2xhc2ggb24gVW5peDsgY29sb24sIHNsYXNoLCBhbmQgYmFja3NsYXNoIG9uCisgICAgICAgIERPUy9XaW5kb3dzOyBhbmQgY29sb24gb24gTWFjIE9TLgorCisgICAgICAgIElmICdhbmNob3InIGlzIHRydWUgKHRoZSBkZWZhdWx0KSwgdGhlbiB0aGUgcGF0dGVybiBtYXRjaCBpcyBtb3JlCisgICAgICAgIHN0cmluZ2VudDogIioucHkiIHdpbGwgbWF0Y2ggImZvby5weSIgYnV0IG5vdCAiZm9vL2Jhci5weSIuICBJZgorICAgICAgICAnYW5jaG9yJyBpcyBmYWxzZSwgYm90aCBvZiB0aGVzZSB3aWxsIG1hdGNoLgorCisgICAgICAgIElmICdwcmVmaXgnIGlzIHN1cHBsaWVkLCB0aGVuIG9ubHkgZmlsZW5hbWVzIHN0YXJ0aW5nIHdpdGggJ3ByZWZpeCcKKyAgICAgICAgKGl0c2VsZiBhIHBhdHRlcm4pIGFuZCBlbmRpbmcgd2l0aCAncGF0dGVybicsIHdpdGggYW55dGhpbmcgaW4gYmV0d2VlbgorICAgICAgICB0aGVtLCB3aWxsIG1hdGNoLiAgJ2FuY2hvcicgaXMgaWdub3JlZCBpbiB0aGlzIGNhc2UuCisKKyAgICAgICAgSWYgJ2lzX3JlZ2V4JyBpcyB0cnVlLCAnYW5jaG9yJyBhbmQgJ3ByZWZpeCcgYXJlIGlnbm9yZWQsIGFuZAorICAgICAgICAncGF0dGVybicgaXMgYXNzdW1lZCB0byBiZSBlaXRoZXIgYSBzdHJpbmcgY29udGFpbmluZyBhIHJlZ2V4IG9yIGEKKyAgICAgICAgcmVnZXggb2JqZWN0IC0tIG5vIHRyYW5zbGF0aW9uIGlzIGRvbmUsIHRoZSByZWdleCBpcyBqdXN0IGNvbXBpbGVkCisgICAgICAgIGFuZCB1c2VkIGFzLWlzLgorCisgICAgICAgIFNlbGVjdGVkIHN0cmluZ3Mgd2lsbCBiZSBhZGRlZCB0byBzZWxmLmZpbGVzLgorCisgICAgICAgIFJldHVybiBUcnVlIGlmIGZpbGVzIGFyZSBmb3VuZC4KKyAgICAgICAgIiIiCisgICAgICAgIGZpbGVzX2ZvdW5kID0gRmFsc2UKKyAgICAgICAgcGF0dGVybl9yZSA9IF90cmFuc2xhdGVfcGF0dGVybihwYXR0ZXJuLCBhbmNob3IsIHByZWZpeCwgaXNfcmVnZXgpCisKKyAgICAgICAgIyBkZWxheWVkIGxvYWRpbmcgb2YgYWxsZmlsZXMgbGlzdAorICAgICAgICBpZiBzZWxmLmFsbGZpbGVzIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLmZpbmRhbGwoKQorCisgICAgICAgIGZvciBuYW1lIGluIHNlbGYuYWxsZmlsZXM6CisgICAgICAgICAgICBpZiBwYXR0ZXJuX3JlLnNlYXJjaChuYW1lKToKKyAgICAgICAgICAgICAgICBzZWxmLmZpbGVzLmFwcGVuZChuYW1lKQorICAgICAgICAgICAgICAgIGZpbGVzX2ZvdW5kID0gVHJ1ZQorCisgICAgICAgIHJldHVybiBmaWxlc19mb3VuZAorCisKKyMKKyMgVXRpbGl0eSBmdW5jdGlvbnMKKyMKK2RlZiBfZmluZGFsbChkaXI9b3MuY3VyZGlyKToKKyAgICAiIiJGaW5kIGFsbCBmaWxlcyB1bmRlciAnZGlyJyBhbmQgcmV0dXJuIHRoZSBsaXN0IG9mIGZ1bGwgZmlsZW5hbWVzCisgICAgKHJlbGF0aXZlIHRvICdkaXInKS4KKyAgICAiIiIKKyAgICBmcm9tIHN0YXQgaW1wb3J0IFNfSVNSRUcsIFNfSVNESVIsIFNfSVNMTksKKworICAgIGxpc3QgPSBbXQorICAgIHN0YWNrID0gW2Rpcl0KKyAgICBwb3AgPSBzdGFjay5wb3AKKyAgICBwdXNoID0gc3RhY2suYXBwZW5kCisKKyAgICB3aGlsZSBzdGFjazoKKyAgICAgICAgZGlyID0gcG9wKCkKKyAgICAgICAgbmFtZXMgPSBvcy5saXN0ZGlyKGRpcikKKworICAgICAgICBmb3IgbmFtZSBpbiBuYW1lczoKKyAgICAgICAgICAgIGlmIGRpciAhPSBvcy5jdXJkaXI6ICAgICAgICAjIGF2b2lkIHRoZSBkcmVhZGVkICIuLyIgc3luZHJvbWUKKyAgICAgICAgICAgICAgICBmdWxsbmFtZSA9IG9zLnBhdGguam9pbihkaXIsIG5hbWUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGZ1bGxuYW1lID0gbmFtZQorCisgICAgICAgICAgICAjIEF2b2lkIGV4Y2VzcyBzdGF0IGNhbGxzIC0tIGp1c3Qgb25lIHdpbGwgZG8sIHRoYW5rIHlvdSEKKyAgICAgICAgICAgIHN0YXQgPSBvcy5zdGF0KGZ1bGxuYW1lKQorICAgICAgICAgICAgbW9kZSA9IHN0YXQuc3RfbW9kZQorICAgICAgICAgICAgaWYgU19JU1JFRyhtb2RlKToKKyAgICAgICAgICAgICAgICBsaXN0LmFwcGVuZChmdWxsbmFtZSkKKyAgICAgICAgICAgIGVsaWYgU19JU0RJUihtb2RlKSBhbmQgbm90IFNfSVNMTksobW9kZSk6CisgICAgICAgICAgICAgICAgcHVzaChmdWxsbmFtZSkKKworICAgIHJldHVybiBsaXN0CisKKworZGVmIF9nbG9iX3RvX3JlKHBhdHRlcm4pOgorICAgICIiIlRyYW5zbGF0ZSBhIHNoZWxsLWxpa2UgZ2xvYiBwYXR0ZXJuIHRvIGEgcmVndWxhciBleHByZXNzaW9uLgorCisgICAgUmV0dXJuIGEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIHJlZ2V4LiAgRGlmZmVycyBmcm9tCisgICAgJ2ZubWF0Y2gudHJhbnNsYXRlKCknIGluIHRoYXQgJyonIGRvZXMgbm90IG1hdGNoICJzcGVjaWFsIGNoYXJhY3RlcnMiCisgICAgKHdoaWNoIGFyZSBwbGF0Zm9ybS1zcGVjaWZpYykuCisgICAgIiIiCisgICAgcGF0dGVybl9yZSA9IGZubWF0Y2gudHJhbnNsYXRlKHBhdHRlcm4pCisKKyAgICAjICc/JyBhbmQgJyonIGluIHRoZSBnbG9iIHBhdHRlcm4gYmVjb21lICcuJyBhbmQgJy4qJyBpbiB0aGUgUkUsIHdoaWNoCisgICAgIyBJTUhPIGlzIHdyb25nIC0tICc/JyBhbmQgJyonIGFyZW4ndCBzdXBwb3NlZCB0byBtYXRjaCBzbGFzaCBpbiBVbml4LAorICAgICMgYW5kIGJ5IGV4dGVuc2lvbiB0aGV5IHNob3VsZG4ndCBtYXRjaCBzdWNoICJzcGVjaWFsIGNoYXJhY3RlcnMiIHVuZGVyCisgICAgIyBhbnkgT1MuICBTbyBjaGFuZ2UgYWxsIG5vbi1lc2NhcGVkIGRvdHMgaW4gdGhlIFJFIHRvIG1hdGNoIGFueQorICAgICMgY2hhcmFjdGVyIGV4Y2VwdCB0aGUgc3BlY2lhbCBjaGFyYWN0ZXJzLgorICAgICMgWFhYIGN1cnJlbnRseSB0aGUgInNwZWNpYWwgY2hhcmFjdGVycyIgYXJlIGp1c3Qgc2xhc2ggLS0gaS5lLiB0aGlzIGlzCisgICAgIyBVbml4LW9ubHkuCisgICAgcGF0dGVybl9yZSA9IHJlLnN1YihyJygoPzwhXFwpKFxcXFwpKilcLicsIHInXDFbXi9dJywgcGF0dGVybl9yZSkKKworICAgIHJldHVybiBwYXR0ZXJuX3JlCisKKworZGVmIF90cmFuc2xhdGVfcGF0dGVybihwYXR0ZXJuLCBhbmNob3I9VHJ1ZSwgcHJlZml4PU5vbmUsIGlzX3JlZ2V4PUZhbHNlKToKKyAgICAiIiJUcmFuc2xhdGUgYSBzaGVsbC1saWtlIHdpbGRjYXJkIHBhdHRlcm4gdG8gYSBjb21waWxlZCByZWd1bGFyCisgICAgZXhwcmVzc2lvbi4KKworICAgIFJldHVybiB0aGUgY29tcGlsZWQgcmVnZXguICBJZiAnaXNfcmVnZXgnIHRydWUsCisgICAgdGhlbiAncGF0dGVybicgaXMgZGlyZWN0bHkgY29tcGlsZWQgdG8gYSByZWdleCAoaWYgaXQncyBhIHN0cmluZykKKyAgICBvciBqdXN0IHJldHVybmVkIGFzLWlzIChhc3N1bWVzIGl0J3MgYSByZWdleCBvYmplY3QpLgorICAgICIiIgorICAgIGlmIGlzX3JlZ2V4OgorICAgICAgICBpZiBpc2luc3RhbmNlKHBhdHRlcm4sIHN0cik6CisgICAgICAgICAgICByZXR1cm4gcmUuY29tcGlsZShwYXR0ZXJuKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHBhdHRlcm4KKworICAgIGlmIHBhdHRlcm46CisgICAgICAgIHBhdHRlcm5fcmUgPSBfZ2xvYl90b19yZShwYXR0ZXJuKQorICAgIGVsc2U6CisgICAgICAgIHBhdHRlcm5fcmUgPSAnJworCisgICAgaWYgcHJlZml4IGlzIG5vdCBOb25lOgorICAgICAgICAjIGRpdGNoIGVuZCBvZiBwYXR0ZXJuIGNoYXJhY3RlcgorICAgICAgICBlbXB0eV9wYXR0ZXJuID0gX2dsb2JfdG9fcmUoJycpCisgICAgICAgIHByZWZpeF9yZSA9IF9nbG9iX3RvX3JlKHByZWZpeClbOi1sZW4oZW1wdHlfcGF0dGVybildCisgICAgICAgICMgbWF0Y2ggYm90aCBwYXRoIHNlcGFyYXRvcnMsIGFzIGluIFBvc3RlbCdzIHByaW5jaXBsZQorICAgICAgICBzZXBfcGF0ID0gIlsiICsgcmUuZXNjYXBlKG9zLnBhdGguc2VwICsgb3MucGF0aC5hbHRzZXAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmFsdHNlcCBlbHNlIG9zLnBhdGguc2VwKSArICJdIgorICAgICAgICBwYXR0ZXJuX3JlID0gIl4iICsgc2VwX3BhdC5qb2luKFtwcmVmaXhfcmUsICIuKiIgKyBwYXR0ZXJuX3JlXSkKKyAgICBlbHNlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIG5vIHByZWZpeCAtLSByZXNwZWN0IGFuY2hvciBmbGFnCisgICAgICAgIGlmIGFuY2hvcjoKKyAgICAgICAgICAgIHBhdHRlcm5fcmUgPSAiXiIgKyBwYXR0ZXJuX3JlCisKKyAgICByZXR1cm4gcmUuY29tcGlsZShwYXR0ZXJuX3JlKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9tYXJrZXJzLnB5IGIvTGliL3BhY2thZ2luZy9tYXJrZXJzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRiYmFjN2UKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL21hcmtlcnMucHkKQEAgLTAsMCArMSwxODcgQEAKKyIiIlBhcnNlciBmb3IgdGhlIGVudmlyb25tZW50IG1hcmtlcnMgbWljcm8tbGFuZ3VhZ2UgZGVmaW5lZCBpbiBQRVAgMzQ1LiIiIgorCitpbXBvcnQgc3lzCitpbXBvcnQgcGxhdGZvcm0KK2ltcG9ydCBvcworCitmcm9tIHRva2VuaXplIGltcG9ydCB0b2tlbml6ZSwgTkFNRSwgT1AsIFNUUklORywgRU5ETUFSS0VSLCBFTkNPRElORworZnJvbSBpbyBpbXBvcnQgQnl0ZXNJTworCitfX2FsbF9fID0gWydpbnRlcnByZXQnXQorCisKKyMgYWxsb3dlZCBvcGVyYXRvcnMKK19PUEVSQVRPUlMgPSB7Jz09JzogbGFtYmRhIHgsIHk6IHggPT0geSwKKyAgICAgICAgICAgICAgJyE9JzogbGFtYmRhIHgsIHk6IHggIT0geSwKKyAgICAgICAgICAgICAgJz4nOiBsYW1iZGEgeCwgeTogeCA+IHksCisgICAgICAgICAgICAgICc+PSc6IGxhbWJkYSB4LCB5OiB4ID49IHksCisgICAgICAgICAgICAgICc8JzogbGFtYmRhIHgsIHk6IHggPCB5LAorICAgICAgICAgICAgICAnPD0nOiBsYW1iZGEgeCwgeTogeCA8PSB5LAorICAgICAgICAgICAgICAnaW4nOiBsYW1iZGEgeCwgeTogeCBpbiB5LAorICAgICAgICAgICAgICAnbm90IGluJzogbGFtYmRhIHgsIHk6IHggbm90IGluIHl9CisKKworZGVmIF9vcGVyYXRlKG9wZXJhdGlvbiwgeCwgeSk6CisgICAgcmV0dXJuIF9PUEVSQVRPUlNbb3BlcmF0aW9uXSh4LCB5KQorCisKKyMgcmVzdHJpY3RlZCBzZXQgb2YgdmFyaWFibGVzCitfVkFSUyA9IHsnc3lzLnBsYXRmb3JtJzogc3lzLnBsYXRmb3JtLAorICAgICAgICAgJ3B5dGhvbl92ZXJzaW9uJzogc3lzLnZlcnNpb25bOjNdLAorICAgICAgICAgJ3B5dGhvbl9mdWxsX3ZlcnNpb24nOiBzeXMudmVyc2lvbi5zcGxpdCgnICcsIDEpWzBdLAorICAgICAgICAgJ29zLm5hbWUnOiBvcy5uYW1lLAorICAgICAgICAgJ3BsYXRmb3JtLnZlcnNpb24nOiBwbGF0Zm9ybS52ZXJzaW9uKCksCisgICAgICAgICAncGxhdGZvcm0ubWFjaGluZSc6IHBsYXRmb3JtLm1hY2hpbmUoKSwKKyAgICAgICAgICdwbGF0Zm9ybS5weXRob25faW1wbGVtZW50YXRpb24nOiBwbGF0Zm9ybS5weXRob25faW1wbGVtZW50YXRpb24oKX0KKworCitjbGFzcyBfT3BlcmF0aW9uOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGV4ZWN1dGlvbl9jb250ZXh0PU5vbmUpOgorICAgICAgICBzZWxmLmxlZnQgPSBOb25lCisgICAgICAgIHNlbGYub3AgPSBOb25lCisgICAgICAgIHNlbGYucmlnaHQgPSBOb25lCisgICAgICAgIGlmIGV4ZWN1dGlvbl9jb250ZXh0IGlzIE5vbmU6CisgICAgICAgICAgICBleGVjdXRpb25fY29udGV4dCA9IHt9CisgICAgICAgIHNlbGYuZXhlY3V0aW9uX2NvbnRleHQgPSBleGVjdXRpb25fY29udGV4dAorCisgICAgZGVmIF9nZXRfdmFyKHNlbGYsIG5hbWUpOgorICAgICAgICBpZiBuYW1lIGluIHNlbGYuZXhlY3V0aW9uX2NvbnRleHQ6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5leGVjdXRpb25fY29udGV4dFtuYW1lXQorICAgICAgICByZXR1cm4gX1ZBUlNbbmFtZV0KKworICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKKyAgICAgICAgcmV0dXJuICclcyAlcyAlcycgJSAoc2VsZi5sZWZ0LCBzZWxmLm9wLCBzZWxmLnJpZ2h0KQorCisgICAgZGVmIF9pc19zdHJpbmcoc2VsZiwgdmFsdWUpOgorICAgICAgICBpZiB2YWx1ZSBpcyBOb25lIG9yIGxlbih2YWx1ZSkgPCAyOgorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIGZvciBkZWxpbWl0ZXIgaW4gJyJcJyc6CisgICAgICAgICAgICBpZiB2YWx1ZVswXSA9PSB2YWx1ZVstMV0gPT0gZGVsaW1pdGVyOgorICAgICAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgZGVmIF9pc19uYW1lKHNlbGYsIHZhbHVlKToKKyAgICAgICAgcmV0dXJuIHZhbHVlIGluIF9WQVJTCisKKyAgICBkZWYgX2NvbnZlcnQoc2VsZiwgdmFsdWUpOgorICAgICAgICBpZiB2YWx1ZSBpbiBfVkFSUzoKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9nZXRfdmFyKHZhbHVlKQorICAgICAgICByZXR1cm4gdmFsdWUuc3RyaXAoJyJcJycpCisKKyAgICBkZWYgX2NoZWNrX25hbWUoc2VsZiwgdmFsdWUpOgorICAgICAgICBpZiB2YWx1ZSBub3QgaW4gX1ZBUlM6CisgICAgICAgICAgICByYWlzZSBOYW1lRXJyb3IodmFsdWUpCisKKyAgICBkZWYgX25vbnNlbnNlX29wKHNlbGYpOgorICAgICAgICBtc2cgPSAnVGhpcyBvcGVyYXRpb24gaXMgbm90IHN1cHBvcnRlZCA6ICIlcyInICUgc2VsZgorICAgICAgICByYWlzZSBTeW50YXhFcnJvcihtc2cpCisKKyAgICBkZWYgX19jYWxsX18oc2VsZik6CisgICAgICAgICMgbWFrZSBzdXJlIHdlIGRvIHNvbWV0aGluZyB1c2VmdWwKKyAgICAgICAgaWYgc2VsZi5faXNfc3RyaW5nKHNlbGYubGVmdCk6CisgICAgICAgICAgICBpZiBzZWxmLl9pc19zdHJpbmcoc2VsZi5yaWdodCk6CisgICAgICAgICAgICAgICAgc2VsZi5fbm9uc2Vuc2Vfb3AoKQorICAgICAgICAgICAgc2VsZi5fY2hlY2tfbmFtZShzZWxmLnJpZ2h0KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgaWYgbm90IHNlbGYuX2lzX3N0cmluZyhzZWxmLnJpZ2h0KToKKyAgICAgICAgICAgICAgICBzZWxmLl9ub25zZW5zZV9vcCgpCisgICAgICAgICAgICBzZWxmLl9jaGVja19uYW1lKHNlbGYubGVmdCkKKworICAgICAgICBpZiBzZWxmLm9wIG5vdCBpbiBfT1BFUkFUT1JTOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCdPcGVyYXRvciBub3Qgc3VwcG9ydGVkICIlcyInICUgc2VsZi5vcCkKKworICAgICAgICBsZWZ0ID0gc2VsZi5fY29udmVydChzZWxmLmxlZnQpCisgICAgICAgIHJpZ2h0ID0gc2VsZi5fY29udmVydChzZWxmLnJpZ2h0KQorICAgICAgICByZXR1cm4gX29wZXJhdGUoc2VsZi5vcCwgbGVmdCwgcmlnaHQpCisKKworY2xhc3MgX09SOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBsZWZ0LCByaWdodD1Ob25lKToKKyAgICAgICAgc2VsZi5sZWZ0ID0gbGVmdAorICAgICAgICBzZWxmLnJpZ2h0ID0gcmlnaHQKKworICAgIGRlZiBmaWxsZWQoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLnJpZ2h0IGlzIG5vdCBOb25lCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiAnT1IoJXIsICVyKScgJSAoc2VsZi5sZWZ0LCBzZWxmLnJpZ2h0KQorCisgICAgZGVmIF9fY2FsbF9fKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5sZWZ0KCkgb3Igc2VsZi5yaWdodCgpCisKKworY2xhc3MgX0FORDoKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbGVmdCwgcmlnaHQ9Tm9uZSk6CisgICAgICAgIHNlbGYubGVmdCA9IGxlZnQKKyAgICAgICAgc2VsZi5yaWdodCA9IHJpZ2h0CisKKyAgICBkZWYgZmlsbGVkKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5yaWdodCBpcyBub3QgTm9uZQorCisgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gJ0FORCglciwgJXIpJyAlIChzZWxmLmxlZnQsIHNlbGYucmlnaHQpCisKKyAgICBkZWYgX19jYWxsX18oc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLmxlZnQoKSBhbmQgc2VsZi5yaWdodCgpCisKKworZGVmIGludGVycHJldChtYXJrZXIsIGV4ZWN1dGlvbl9jb250ZXh0PU5vbmUpOgorICAgICIiIkludGVycHJldCBhIG1hcmtlciBhbmQgcmV0dXJuIGEgcmVzdWx0IGRlcGVuZGluZyBvbiBlbnZpcm9ubWVudC4iIiIKKyAgICBtYXJrZXIgPSBtYXJrZXIuc3RyaXAoKS5lbmNvZGUoKQorICAgIG9wcyA9IFtdCisgICAgb3Bfc3RhcnRpbmcgPSBUcnVlCisgICAgZm9yIHRva2VuIGluIHRva2VuaXplKEJ5dGVzSU8obWFya2VyKS5yZWFkbGluZSk6CisgICAgICAgICMgVW5wYWNrIHRva2VuCisgICAgICAgIHRva3R5cGUsIHRva3ZhbCwgcm93Y29sLCBsaW5lLCBsb2dpY2FsX2xpbmUgPSB0b2tlbgorICAgICAgICBpZiB0b2t0eXBlIG5vdCBpbiAoTkFNRSwgT1AsIFNUUklORywgRU5ETUFSS0VSLCBFTkNPRElORyk6CisgICAgICAgICAgICByYWlzZSBTeW50YXhFcnJvcignVHlwZSBub3Qgc3VwcG9ydGVkICIlcyInICUgdG9rdmFsKQorCisgICAgICAgIGlmIG9wX3N0YXJ0aW5nOgorICAgICAgICAgICAgb3AgPSBfT3BlcmF0aW9uKGV4ZWN1dGlvbl9jb250ZXh0KQorICAgICAgICAgICAgaWYgbGVuKG9wcykgPiAwOgorICAgICAgICAgICAgICAgIGxhc3QgPSBvcHNbLTFdCisgICAgICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShsYXN0LCAoX09SLCBfQU5EKSkgYW5kIG5vdCBsYXN0LmZpbGxlZCgpOgorICAgICAgICAgICAgICAgICAgICBsYXN0LnJpZ2h0ID0gb3AKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBvcHMuYXBwZW5kKG9wKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBvcHMuYXBwZW5kKG9wKQorICAgICAgICAgICAgb3Bfc3RhcnRpbmcgPSBGYWxzZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgb3AgPSBvcHNbLTFdCisKKyAgICAgICAgaWYgKHRva3R5cGUgPT0gRU5ETUFSS0VSIG9yCisgICAgICAgICAgICAodG9rdHlwZSA9PSBOQU1FIGFuZCB0b2t2YWwgaW4gKCdhbmQnLCAnb3InKSkpOgorICAgICAgICAgICAgaWYgdG9rdHlwZSA9PSBOQU1FIGFuZCB0b2t2YWwgPT0gJ2FuZCc6CisgICAgICAgICAgICAgICAgb3BzLmFwcGVuZChfQU5EKG9wcy5wb3AoKSkpCisgICAgICAgICAgICBlbGlmIHRva3R5cGUgPT0gTkFNRSBhbmQgdG9rdmFsID09ICdvcic6CisgICAgICAgICAgICAgICAgb3BzLmFwcGVuZChfT1Iob3BzLnBvcCgpKSkKKyAgICAgICAgICAgIG9wX3N0YXJ0aW5nID0gVHJ1ZQorICAgICAgICAgICAgY29udGludWUKKworICAgICAgICBpZiBpc2luc3RhbmNlKG9wLCAoX09SLCBfQU5EKSkgYW5kIG9wLnJpZ2h0IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgb3AgPSBvcC5yaWdodAorCisgICAgICAgIGlmICgodG9rdHlwZSBpbiAoTkFNRSwgU1RSSU5HKSBhbmQgdG9rdmFsIG5vdCBpbiAoJ2luJywgJ25vdCcpKQorICAgICAgICAgICAgb3IgKHRva3R5cGUgPT0gT1AgYW5kIHRva3ZhbCA9PSAnLicpKToKKyAgICAgICAgICAgIGlmIG9wLm9wIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgaWYgb3AubGVmdCBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICBvcC5sZWZ0ID0gdG9rdmFsCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgb3AubGVmdCArPSB0b2t2YWwKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaWYgb3AucmlnaHQgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgb3AucmlnaHQgPSB0b2t2YWwKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBvcC5yaWdodCArPSB0b2t2YWwKKyAgICAgICAgZWxpZiB0b2t0eXBlID09IE9QIG9yIHRva3ZhbCBpbiAoJ2luJywgJ25vdCcpOgorICAgICAgICAgICAgaWYgdG9rdmFsID09ICdpbicgYW5kIG9wLm9wID09ICdub3QnOgorICAgICAgICAgICAgICAgIG9wLm9wID0gJ25vdCBpbicKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgb3Aub3AgPSB0b2t2YWwKKworICAgIGZvciBvcCBpbiBvcHM6CisgICAgICAgIGlmIG5vdCBvcCgpOgorICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgcmV0dXJuIFRydWUKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvbWV0YWRhdGEucHkgYi9MaWIvcGFja2FnaW5nL21ldGFkYXRhLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI5OTNlYmIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL21ldGFkYXRhLnB5CkBAIC0wLDAgKzEsNTcwIEBACisiIiJJbXBsZW1lbnRhdGlvbiBvZiB0aGUgTWV0YWRhdGEgZm9yIFB5dGhvbiBwYWNrYWdlcyBQRVBzLgorCitTdXBwb3J0cyBhbGwgbWV0YWRhdGEgZm9ybWF0cyAoMS4wLCAxLjEsIDEuMikuCisiIiIKKworaW1wb3J0IHJlCitpbXBvcnQgbG9nZ2luZworCitmcm9tIGlvIGltcG9ydCBTdHJpbmdJTworZnJvbSBlbWFpbCBpbXBvcnQgbWVzc2FnZV9mcm9tX2ZpbGUKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLm1hcmtlcnMgaW1wb3J0IGludGVycHJldAorZnJvbSBwYWNrYWdpbmcudmVyc2lvbiBpbXBvcnQgKGlzX3ZhbGlkX3ByZWRpY2F0ZSwgaXNfdmFsaWRfdmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc192YWxpZF92ZXJzaW9ucykKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKE1ldGFkYXRhTWlzc2luZ0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWV0YWRhdGFDb25mbGljdEVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWV0YWRhdGFVbnJlY29nbml6ZWRWZXJzaW9uRXJyb3IpCisKK3RyeToKKyAgICAjIGRvY3V0aWxzIGlzIGluc3RhbGxlZAorICAgIGZyb20gZG9jdXRpbHMudXRpbHMgaW1wb3J0IFJlcG9ydGVyCisgICAgZnJvbSBkb2N1dGlscy5wYXJzZXJzLnJzdCBpbXBvcnQgUGFyc2VyCisgICAgZnJvbSBkb2N1dGlscyBpbXBvcnQgZnJvbnRlbmQKKyAgICBmcm9tIGRvY3V0aWxzIGltcG9ydCBub2RlcworCisgICAgY2xhc3MgU2lsZW50UmVwb3J0ZXIoUmVwb3J0ZXIpOgorCisgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBzb3VyY2UsIHJlcG9ydF9sZXZlbCwgaGFsdF9sZXZlbCwgc3RyZWFtPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICBkZWJ1Zz0wLCBlbmNvZGluZz0nYXNjaWknLCBlcnJvcl9oYW5kbGVyPSdyZXBsYWNlJyk6CisgICAgICAgICAgICBzZWxmLm1lc3NhZ2VzID0gW10KKyAgICAgICAgICAgIHN1cGVyKFNpbGVudFJlcG9ydGVyLCBzZWxmKS5fX2luaXRfXygKKyAgICAgICAgICAgICAgICBzb3VyY2UsIHJlcG9ydF9sZXZlbCwgaGFsdF9sZXZlbCwgc3RyZWFtLAorICAgICAgICAgICAgICAgIGRlYnVnLCBlbmNvZGluZywgZXJyb3JfaGFuZGxlcikKKworICAgICAgICBkZWYgc3lzdGVtX21lc3NhZ2Uoc2VsZiwgbGV2ZWwsIG1lc3NhZ2UsICpjaGlsZHJlbiwgKiprd2FyZ3MpOgorICAgICAgICAgICAgc2VsZi5tZXNzYWdlcy5hcHBlbmQoKGxldmVsLCBtZXNzYWdlLCBjaGlsZHJlbiwga3dhcmdzKSkKKworICAgIF9IQVNfRE9DVVRJTFMgPSBUcnVlCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgIyBkb2N1dGlscyBpcyBub3QgaW5zdGFsbGVkCisgICAgX0hBU19ET0NVVElMUyA9IEZhbHNlCisKKyMgcHVibGljIEFQSSBvZiB0aGlzIG1vZHVsZQorX19hbGxfXyA9IFsnTWV0YWRhdGEnLCAnUEtHX0lORk9fRU5DT0RJTkcnLCAnUEtHX0lORk9fUFJFRkVSUkVEX1ZFUlNJT04nXQorCisjIEVuY29kaW5nIHVzZWQgZm9yIHRoZSBQS0ctSU5GTyBmaWxlcworUEtHX0lORk9fRU5DT0RJTkcgPSAndXRmLTgnCisKKyMgcHJlZmVycmVkIHZlcnNpb24uIEhvcGVmdWxseSB3aWxsIGJlIGNoYW5nZWQKKyMgdG8gMS4yIG9uY2UgUEVQIDM0NSBpcyBzdXBwb3J0ZWQgZXZlcnl3aGVyZQorUEtHX0lORk9fUFJFRkVSUkVEX1ZFUlNJT04gPSAnMS4wJworCitfTElORV9QUkVGSVggPSByZS5jb21waWxlKCdcbiAgICAgICBcfCcpCitfMjQxX0ZJRUxEUyA9ICgnTWV0YWRhdGEtVmVyc2lvbicsICdOYW1lJywgJ1ZlcnNpb24nLCAnUGxhdGZvcm0nLAorICAgICAgICAgICAgICAgJ1N1bW1hcnknLCAnRGVzY3JpcHRpb24nLAorICAgICAgICAgICAgICAgJ0tleXdvcmRzJywgJ0hvbWUtcGFnZScsICdBdXRob3InLCAnQXV0aG9yLWVtYWlsJywKKyAgICAgICAgICAgICAgICdMaWNlbnNlJykKKworXzMxNF9GSUVMRFMgPSAoJ01ldGFkYXRhLVZlcnNpb24nLCAnTmFtZScsICdWZXJzaW9uJywgJ1BsYXRmb3JtJywKKyAgICAgICAgICAgICAgICdTdXBwb3J0ZWQtUGxhdGZvcm0nLCAnU3VtbWFyeScsICdEZXNjcmlwdGlvbicsCisgICAgICAgICAgICAgICAnS2V5d29yZHMnLCAnSG9tZS1wYWdlJywgJ0F1dGhvcicsICdBdXRob3ItZW1haWwnLAorICAgICAgICAgICAgICAgJ0xpY2Vuc2UnLCAnQ2xhc3NpZmllcicsICdEb3dubG9hZC1VUkwnLCAnT2Jzb2xldGVzJywKKyAgICAgICAgICAgICAgICdQcm92aWRlcycsICdSZXF1aXJlcycpCisKK18zMTRfTUFSS0VSUyA9ICgnT2Jzb2xldGVzJywgJ1Byb3ZpZGVzJywgJ1JlcXVpcmVzJywgJ0NsYXNzaWZpZXInLAorICAgICAgICAgICAgICAgICdEb3dubG9hZC1VUkwnKQorCitfMzQ1X0ZJRUxEUyA9ICgnTWV0YWRhdGEtVmVyc2lvbicsICdOYW1lJywgJ1ZlcnNpb24nLCAnUGxhdGZvcm0nLAorICAgICAgICAgICAgICAgJ1N1cHBvcnRlZC1QbGF0Zm9ybScsICdTdW1tYXJ5JywgJ0Rlc2NyaXB0aW9uJywKKyAgICAgICAgICAgICAgICdLZXl3b3JkcycsICdIb21lLXBhZ2UnLCAnQXV0aG9yJywgJ0F1dGhvci1lbWFpbCcsCisgICAgICAgICAgICAgICAnTWFpbnRhaW5lcicsICdNYWludGFpbmVyLWVtYWlsJywgJ0xpY2Vuc2UnLAorICAgICAgICAgICAgICAgJ0NsYXNzaWZpZXInLCAnRG93bmxvYWQtVVJMJywgJ09ic29sZXRlcy1EaXN0JywKKyAgICAgICAgICAgICAgICdQcm9qZWN0LVVSTCcsICdQcm92aWRlcy1EaXN0JywgJ1JlcXVpcmVzLURpc3QnLAorICAgICAgICAgICAgICAgJ1JlcXVpcmVzLVB5dGhvbicsICdSZXF1aXJlcy1FeHRlcm5hbCcpCisKK18zNDVfTUFSS0VSUyA9ICgnUHJvdmlkZXMtRGlzdCcsICdSZXF1aXJlcy1EaXN0JywgJ1JlcXVpcmVzLVB5dGhvbicsCisgICAgICAgICAgICAgICAgJ09ic29sZXRlcy1EaXN0JywgJ1JlcXVpcmVzLUV4dGVybmFsJywgJ01haW50YWluZXInLAorICAgICAgICAgICAgICAgICdNYWludGFpbmVyLWVtYWlsJywgJ1Byb2plY3QtVVJMJykKKworX0FMTF9GSUVMRFMgPSBzZXQoKQorX0FMTF9GSUVMRFMudXBkYXRlKF8yNDFfRklFTERTKQorX0FMTF9GSUVMRFMudXBkYXRlKF8zMTRfRklFTERTKQorX0FMTF9GSUVMRFMudXBkYXRlKF8zNDVfRklFTERTKQorCisKK2RlZiBfdmVyc2lvbjJmaWVsZGxpc3QodmVyc2lvbik6CisgICAgaWYgdmVyc2lvbiA9PSAnMS4wJzoKKyAgICAgICAgcmV0dXJuIF8yNDFfRklFTERTCisgICAgZWxpZiB2ZXJzaW9uID09ICcxLjEnOgorICAgICAgICByZXR1cm4gXzMxNF9GSUVMRFMKKyAgICBlbGlmIHZlcnNpb24gPT0gJzEuMic6CisgICAgICAgIHJldHVybiBfMzQ1X0ZJRUxEUworICAgIHJhaXNlIE1ldGFkYXRhVW5yZWNvZ25pemVkVmVyc2lvbkVycm9yKHZlcnNpb24pCisKKworZGVmIF9iZXN0X3ZlcnNpb24oZmllbGRzKToKKyAgICAiIiJEZXRlY3QgdGhlIGJlc3QgdmVyc2lvbiBkZXBlbmRpbmcgb24gdGhlIGZpZWxkcyB1c2VkLiIiIgorICAgIGRlZiBfaGFzX21hcmtlcihrZXlzLCBtYXJrZXJzKToKKyAgICAgICAgZm9yIG1hcmtlciBpbiBtYXJrZXJzOgorICAgICAgICAgICAgaWYgbWFya2VyIGluIGtleXM6CisgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICBrZXlzID0gbGlzdChmaWVsZHMpCisgICAgcG9zc2libGVfdmVyc2lvbnMgPSBbJzEuMCcsICcxLjEnLCAnMS4yJ10KKworICAgICMgZmlyc3QgbGV0J3MgdHJ5IHRvIHNlZSBpZiBhIGZpZWxkIGlzIG5vdCBwYXJ0IG9mIG9uZSBvZiB0aGUgdmVyc2lvbgorICAgIGZvciBrZXkgaW4ga2V5czoKKyAgICAgICAgaWYga2V5IG5vdCBpbiBfMjQxX0ZJRUxEUyBhbmQgJzEuMCcgaW4gcG9zc2libGVfdmVyc2lvbnM6CisgICAgICAgICAgICBwb3NzaWJsZV92ZXJzaW9ucy5yZW1vdmUoJzEuMCcpCisgICAgICAgIGlmIGtleSBub3QgaW4gXzMxNF9GSUVMRFMgYW5kICcxLjEnIGluIHBvc3NpYmxlX3ZlcnNpb25zOgorICAgICAgICAgICAgcG9zc2libGVfdmVyc2lvbnMucmVtb3ZlKCcxLjEnKQorICAgICAgICBpZiBrZXkgbm90IGluIF8zNDVfRklFTERTIGFuZCAnMS4yJyBpbiBwb3NzaWJsZV92ZXJzaW9uczoKKyAgICAgICAgICAgIHBvc3NpYmxlX3ZlcnNpb25zLnJlbW92ZSgnMS4yJykKKworICAgICMgcG9zc2libGVfdmVyc2lvbiBjb250YWlucyBxdWFsaWZpZWQgdmVyc2lvbnMKKyAgICBpZiBsZW4ocG9zc2libGVfdmVyc2lvbnMpID09IDE6CisgICAgICAgIHJldHVybiBwb3NzaWJsZV92ZXJzaW9uc1swXSAgICMgZm91bmQgIQorICAgIGVsaWYgbGVuKHBvc3NpYmxlX3ZlcnNpb25zKSA9PSAwOgorICAgICAgICByYWlzZSBNZXRhZGF0YUNvbmZsaWN0RXJyb3IoJ1Vua25vd24gbWV0YWRhdGEgc2V0JykKKworICAgICMgbGV0J3Mgc2VlIGlmIG9uZSB1bmlxdWUgbWFya2VyIGlzIGZvdW5kCisgICAgaXNfMV8xID0gJzEuMScgaW4gcG9zc2libGVfdmVyc2lvbnMgYW5kIF9oYXNfbWFya2VyKGtleXMsIF8zMTRfTUFSS0VSUykKKyAgICBpc18xXzIgPSAnMS4yJyBpbiBwb3NzaWJsZV92ZXJzaW9ucyBhbmQgX2hhc19tYXJrZXIoa2V5cywgXzM0NV9NQVJLRVJTKQorICAgIGlmIGlzXzFfMSBhbmQgaXNfMV8yOgorICAgICAgICByYWlzZSBNZXRhZGF0YUNvbmZsaWN0RXJyb3IoJ1lvdSB1c2VkIGluY29tcGF0aWJsZSAxLjEgYW5kIDEuMiBmaWVsZHMnKQorCisgICAgIyB3ZSBoYXZlIHRoZSBjaG9pY2UsIGVpdGhlciAxLjAsIG9yIDEuMgorICAgICMgICAtIDEuMCBoYXMgYSBicm9rZW4gU3VtbWFyeSBmaWVsZCBidXQgd29ya3Mgd2l0aCBhbGwgdG9vbHMKKyAgICAjICAgLSAxLjEgaXMgdG8gYXZvaWQKKyAgICAjICAgLSAxLjIgZml4ZXMgU3VtbWFyeSBidXQgaXMgbm90IHdpZGVzcHJlYWQgeWV0CisgICAgaWYgbm90IGlzXzFfMSBhbmQgbm90IGlzXzFfMjoKKyAgICAgICAgIyB3ZSBjb3VsZG4ndCBmaW5kIGFueSBzcGVjaWZpYyBtYXJrZXIKKyAgICAgICAgaWYgUEtHX0lORk9fUFJFRkVSUkVEX1ZFUlNJT04gaW4gcG9zc2libGVfdmVyc2lvbnM6CisgICAgICAgICAgICByZXR1cm4gUEtHX0lORk9fUFJFRkVSUkVEX1ZFUlNJT04KKyAgICBpZiBpc18xXzE6CisgICAgICAgIHJldHVybiAnMS4xJworCisgICAgIyBkZWZhdWx0IG1hcmtlciB3aGVuIDEuMCBpcyBkaXNxdWFsaWZpZWQKKyAgICByZXR1cm4gJzEuMicKKworCitfQVRUUjJGSUVMRCA9IHsKKyAgICAnbWV0YWRhdGFfdmVyc2lvbic6ICdNZXRhZGF0YS1WZXJzaW9uJywKKyAgICAnbmFtZSc6ICdOYW1lJywKKyAgICAndmVyc2lvbic6ICdWZXJzaW9uJywKKyAgICAncGxhdGZvcm0nOiAnUGxhdGZvcm0nLAorICAgICdzdXBwb3J0ZWRfcGxhdGZvcm0nOiAnU3VwcG9ydGVkLVBsYXRmb3JtJywKKyAgICAnc3VtbWFyeSc6ICdTdW1tYXJ5JywKKyAgICAnZGVzY3JpcHRpb24nOiAnRGVzY3JpcHRpb24nLAorICAgICdrZXl3b3Jkcyc6ICdLZXl3b3JkcycsCisgICAgJ2hvbWVfcGFnZSc6ICdIb21lLXBhZ2UnLAorICAgICdhdXRob3InOiAnQXV0aG9yJywKKyAgICAnYXV0aG9yX2VtYWlsJzogJ0F1dGhvci1lbWFpbCcsCisgICAgJ21haW50YWluZXInOiAnTWFpbnRhaW5lcicsCisgICAgJ21haW50YWluZXJfZW1haWwnOiAnTWFpbnRhaW5lci1lbWFpbCcsCisgICAgJ2xpY2Vuc2UnOiAnTGljZW5zZScsCisgICAgJ2NsYXNzaWZpZXInOiAnQ2xhc3NpZmllcicsCisgICAgJ2Rvd25sb2FkX3VybCc6ICdEb3dubG9hZC1VUkwnLAorICAgICdvYnNvbGV0ZXNfZGlzdCc6ICdPYnNvbGV0ZXMtRGlzdCcsCisgICAgJ3Byb3ZpZGVzX2Rpc3QnOiAnUHJvdmlkZXMtRGlzdCcsCisgICAgJ3JlcXVpcmVzX2Rpc3QnOiAnUmVxdWlyZXMtRGlzdCcsCisgICAgJ3JlcXVpcmVzX3B5dGhvbic6ICdSZXF1aXJlcy1QeXRob24nLAorICAgICdyZXF1aXJlc19leHRlcm5hbCc6ICdSZXF1aXJlcy1FeHRlcm5hbCcsCisgICAgJ3JlcXVpcmVzJzogJ1JlcXVpcmVzJywKKyAgICAncHJvdmlkZXMnOiAnUHJvdmlkZXMnLAorICAgICdvYnNvbGV0ZXMnOiAnT2Jzb2xldGVzJywKKyAgICAncHJvamVjdF91cmwnOiAnUHJvamVjdC1VUkwnLAorfQorCitfUFJFRElDQVRFX0ZJRUxEUyA9ICgnUmVxdWlyZXMtRGlzdCcsICdPYnNvbGV0ZXMtRGlzdCcsICdQcm92aWRlcy1EaXN0JykKK19WRVJTSU9OU19GSUVMRFMgPSAoJ1JlcXVpcmVzLVB5dGhvbicsKQorX1ZFUlNJT05fRklFTERTID0gKCdWZXJzaW9uJywpCitfTElTVEZJRUxEUyA9ICgnUGxhdGZvcm0nLCAnQ2xhc3NpZmllcicsICdPYnNvbGV0ZXMnLAorICAgICAgICAgICAgICAgJ1JlcXVpcmVzJywgJ1Byb3ZpZGVzJywgJ09ic29sZXRlcy1EaXN0JywKKyAgICAgICAgICAgICAgICdQcm92aWRlcy1EaXN0JywgJ1JlcXVpcmVzLURpc3QnLCAnUmVxdWlyZXMtRXh0ZXJuYWwnLAorICAgICAgICAgICAgICAgJ1Byb2plY3QtVVJMJywgJ1N1cHBvcnRlZC1QbGF0Zm9ybScpCitfTElTVFRVUExFRklFTERTID0gKCdQcm9qZWN0LVVSTCcsKQorCitfRUxFTUVOVFNGSUVMRCA9ICgnS2V5d29yZHMnLCkKKworX1VOSUNPREVGSUVMRFMgPSAoJ0F1dGhvcicsICdNYWludGFpbmVyJywgJ1N1bW1hcnknLCAnRGVzY3JpcHRpb24nKQorCitfTUlTU0lORyA9IG9iamVjdCgpCisKK19GSUxFU0FGRSA9IHJlLmNvbXBpbGUoJ1teQS1aYS16MC05Ll0rJykKKworCitjbGFzcyBNZXRhZGF0YToKKyAgICAiIiJUaGUgbWV0YWRhdGEgb2YgYSByZWxlYXNlLgorCisgICAgU3VwcG9ydHMgdmVyc2lvbnMgMS4wLCAxLjEgYW5kIDEuMiAoYXV0by1kZXRlY3RlZCkuIFlvdSBjYW4KKyAgICBpbnN0YW50aWF0ZSB0aGUgY2xhc3Mgd2l0aCBvbmUgb2YgdGhlc2UgYXJndW1lbnRzIChvciBub25lKToKKyAgICAtICpwYXRoKiwgdGhlIHBhdGggdG8gYSBNRVRBREFUQSBmaWxlCisgICAgLSAqZmlsZW9iaiogZ2l2ZSBhIGZpbGUtbGlrZSBvYmplY3Qgd2l0aCBNRVRBREFUQSBhcyBjb250ZW50CisgICAgLSAqbWFwcGluZyogaXMgYSBkaWN0LWxpa2Ugb2JqZWN0CisgICAgIiIiCisgICAgIyBUT0RPIGRvY3VtZW50IHRoYXQgZXhlY3V0aW9uX2NvbnRleHQgYW5kIHBsYXRmb3JtX2RlcGVuZGVudCBhcmUgdXNlZAorICAgICMgdG8gZmlsdGVyIG9uIHF1ZXJ5LCBub3Qgd2hlbiBzZXR0aW5nIGEga2V5CisgICAgIyBhbHNvIGRvY3VtZW50IHRoZSBtYXBwaW5nIEFQSSBhbmQgVU5LTk9XTiBkZWZhdWx0IGtleQorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHBhdGg9Tm9uZSwgcGxhdGZvcm1fZGVwZW5kZW50PUZhbHNlLAorICAgICAgICAgICAgICAgICBleGVjdXRpb25fY29udGV4dD1Ob25lLCBmaWxlb2JqPU5vbmUsIG1hcHBpbmc9Tm9uZSk6CisgICAgICAgIHNlbGYuX2ZpZWxkcyA9IHt9CisgICAgICAgIHNlbGYucmVxdWlyZXNfZmlsZXMgPSBbXQorICAgICAgICBzZWxmLmRvY3V0aWxzX3N1cHBvcnQgPSBfSEFTX0RPQ1VUSUxTCisgICAgICAgIHNlbGYucGxhdGZvcm1fZGVwZW5kZW50ID0gcGxhdGZvcm1fZGVwZW5kZW50CisgICAgICAgIHNlbGYuZXhlY3V0aW9uX2NvbnRleHQgPSBleGVjdXRpb25fY29udGV4dAorICAgICAgICBpZiBbcGF0aCwgZmlsZW9iaiwgbWFwcGluZ10uY291bnQoTm9uZSkgPCAyOgorICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCdwYXRoLCBmaWxlb2JqIGFuZCBtYXBwaW5nIGFyZSBleGNsdXNpdmUnKQorICAgICAgICBpZiBwYXRoIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5yZWFkKHBhdGgpCisgICAgICAgIGVsaWYgZmlsZW9iaiBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYucmVhZF9maWxlKGZpbGVvYmopCisgICAgICAgIGVsaWYgbWFwcGluZyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYudXBkYXRlKG1hcHBpbmcpCisKKyAgICBkZWYgX3NldF9iZXN0X3ZlcnNpb24oc2VsZik6CisgICAgICAgIHNlbGYuX2ZpZWxkc1snTWV0YWRhdGEtVmVyc2lvbiddID0gX2Jlc3RfdmVyc2lvbihzZWxmLl9maWVsZHMpCisKKyAgICBkZWYgX3dyaXRlX2ZpZWxkKHNlbGYsIGZpbGUsIG5hbWUsIHZhbHVlKToKKyAgICAgICAgZmlsZS53cml0ZSgnJXM6ICVzXG4nICUgKG5hbWUsIHZhbHVlKSkKKworICAgIGRlZiBfX2dldGl0ZW1fXyhzZWxmLCBuYW1lKToKKyAgICAgICAgcmV0dXJuIHNlbGYuZ2V0KG5hbWUpCisKKyAgICBkZWYgX19zZXRpdGVtX18oc2VsZiwgbmFtZSwgdmFsdWUpOgorICAgICAgICByZXR1cm4gc2VsZi5zZXQobmFtZSwgdmFsdWUpCisKKyAgICBkZWYgX19kZWxpdGVtX18oc2VsZiwgbmFtZSk6CisgICAgICAgIGZpZWxkX25hbWUgPSBzZWxmLl9jb252ZXJ0X25hbWUobmFtZSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZGVsIHNlbGYuX2ZpZWxkc1tmaWVsZF9uYW1lXQorICAgICAgICBleGNlcHQgS2V5RXJyb3I6CisgICAgICAgICAgICByYWlzZSBLZXlFcnJvcihuYW1lKQorICAgICAgICBzZWxmLl9zZXRfYmVzdF92ZXJzaW9uKCkKKworICAgIGRlZiBfX2NvbnRhaW5zX18oc2VsZiwgbmFtZSk6CisgICAgICAgIHJldHVybiAobmFtZSBpbiBzZWxmLl9maWVsZHMgb3IKKyAgICAgICAgICAgICAgICBzZWxmLl9jb252ZXJ0X25hbWUobmFtZSkgaW4gc2VsZi5fZmllbGRzKQorCisgICAgZGVmIF9jb252ZXJ0X25hbWUoc2VsZiwgbmFtZSk6CisgICAgICAgIGlmIG5hbWUgaW4gX0FMTF9GSUVMRFM6CisgICAgICAgICAgICByZXR1cm4gbmFtZQorICAgICAgICBuYW1lID0gbmFtZS5yZXBsYWNlKCctJywgJ18nKS5sb3dlcigpCisgICAgICAgIHJldHVybiBfQVRUUjJGSUVMRC5nZXQobmFtZSwgbmFtZSkKKworICAgIGRlZiBfZGVmYXVsdF92YWx1ZShzZWxmLCBuYW1lKToKKyAgICAgICAgaWYgbmFtZSBpbiBfTElTVEZJRUxEUyBvciBuYW1lIGluIF9FTEVNRU5UU0ZJRUxEOgorICAgICAgICAgICAgcmV0dXJuIFtdCisgICAgICAgIHJldHVybiAnVU5LTk9XTicKKworICAgIGRlZiBfY2hlY2tfcnN0X2RhdGEoc2VsZiwgZGF0YSk6CisgICAgICAgICIiIlJldHVybiB3YXJuaW5ncyB3aGVuIHRoZSBwcm92aWRlZCBkYXRhIGhhcyBzeW50YXggZXJyb3JzLiIiIgorICAgICAgICBzb3VyY2VfcGF0aCA9IFN0cmluZ0lPKCkKKyAgICAgICAgcGFyc2VyID0gUGFyc2VyKCkKKyAgICAgICAgc2V0dGluZ3MgPSBmcm9udGVuZC5PcHRpb25QYXJzZXIoKS5nZXRfZGVmYXVsdF92YWx1ZXMoKQorICAgICAgICBzZXR0aW5ncy50YWJfd2lkdGggPSA0CisgICAgICAgIHNldHRpbmdzLnBlcF9yZWZlcmVuY2VzID0gTm9uZQorICAgICAgICBzZXR0aW5ncy5yZmNfcmVmZXJlbmNlcyA9IE5vbmUKKyAgICAgICAgcmVwb3J0ZXIgPSBTaWxlbnRSZXBvcnRlcihzb3VyY2VfcGF0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0dGluZ3MucmVwb3J0X2xldmVsLAorICAgICAgICAgICAgICAgICAgICAgICAgICBzZXR0aW5ncy5oYWx0X2xldmVsLAorICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJlYW09c2V0dGluZ3Mud2FybmluZ19zdHJlYW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnPXNldHRpbmdzLmRlYnVnLAorICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGluZz1zZXR0aW5ncy5lcnJvcl9lbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JfaGFuZGxlcj1zZXR0aW5ncy5lcnJvcl9lbmNvZGluZ19lcnJvcl9oYW5kbGVyKQorCisgICAgICAgIGRvY3VtZW50ID0gbm9kZXMuZG9jdW1lbnQoc2V0dGluZ3MsIHJlcG9ydGVyLCBzb3VyY2U9c291cmNlX3BhdGgpCisgICAgICAgIGRvY3VtZW50Lm5vdGVfc291cmNlKHNvdXJjZV9wYXRoLCAtMSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcGFyc2VyLnBhcnNlKGRhdGEsIGRvY3VtZW50KQorICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CisgICAgICAgICAgICByZXBvcnRlci5tZXNzYWdlcy5hcHBlbmQoKC0xLCAnQ291bGQgbm90IGZpbmlzaCB0aGUgcGFyc2luZy4nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnJywge30pKQorCisgICAgICAgIHJldHVybiByZXBvcnRlci5tZXNzYWdlcworCisgICAgZGVmIF9wbGF0Zm9ybShzZWxmLCB2YWx1ZSk6CisgICAgICAgIGlmIG5vdCBzZWxmLnBsYXRmb3JtX2RlcGVuZGVudCBvciAnOycgbm90IGluIHZhbHVlOgorICAgICAgICAgICAgcmV0dXJuIFRydWUsIHZhbHVlCisgICAgICAgIHZhbHVlLCBtYXJrZXIgPSB2YWx1ZS5zcGxpdCgnOycpCisgICAgICAgIHJldHVybiBpbnRlcnByZXQobWFya2VyLCBzZWxmLmV4ZWN1dGlvbl9jb250ZXh0KSwgdmFsdWUKKworICAgIGRlZiBfcmVtb3ZlX2xpbmVfcHJlZml4KHNlbGYsIHZhbHVlKToKKyAgICAgICAgcmV0dXJuIF9MSU5FX1BSRUZJWC5zdWIoJ1xuJywgdmFsdWUpCisKKyAgICAjCisgICAgIyBQdWJsaWMgQVBJCisgICAgIworICAgIGRlZiBnZXRfZnVsbG5hbWUoc2VsZiwgZmlsZXNhZmU9RmFsc2UpOgorICAgICAgICAiIiJSZXR1cm4gdGhlIGRpc3RyaWJ1dGlvbiBuYW1lIHdpdGggdmVyc2lvbi4KKworICAgICAgICBJZiBmaWxlc2FmZSBpcyB0cnVlLCByZXR1cm4gYSBmaWxlbmFtZS1lc2NhcGVkIGZvcm0uIiIiCisgICAgICAgIG5hbWUsIHZlcnNpb24gPSBzZWxmWydOYW1lJ10sIHNlbGZbJ1ZlcnNpb24nXQorICAgICAgICBpZiBmaWxlc2FmZToKKyAgICAgICAgICAgICMgRm9yIGJvdGggbmFtZSBhbmQgdmVyc2lvbiBhbnkgcnVucyBvZiBub24tYWxwaGFudW1lcmljIG9yICcuJworICAgICAgICAgICAgIyBjaGFyYWN0ZXJzIGFyZSByZXBsYWNlZCB3aXRoIGEgc2luZ2xlICctJy4gIEFkZGl0aW9uYWxseSBhbnkKKyAgICAgICAgICAgICMgc3BhY2VzIGluIHRoZSB2ZXJzaW9uIHN0cmluZyBiZWNvbWUgJy4nCisgICAgICAgICAgICBuYW1lID0gX0ZJTEVTQUZFLnN1YignLScsIG5hbWUpCisgICAgICAgICAgICB2ZXJzaW9uID0gX0ZJTEVTQUZFLnN1YignLScsIHZlcnNpb24ucmVwbGFjZSgnICcsICcuJykpCisgICAgICAgIHJldHVybiAnJXMtJXMnICUgKG5hbWUsIHZlcnNpb24pCisKKyAgICBkZWYgaXNfbWV0YWRhdGFfZmllbGQoc2VsZiwgbmFtZSk6CisgICAgICAgICIiInJldHVybiBUcnVlIGlmIG5hbWUgaXMgYSB2YWxpZCBtZXRhZGF0YSBrZXkiIiIKKyAgICAgICAgbmFtZSA9IHNlbGYuX2NvbnZlcnRfbmFtZShuYW1lKQorICAgICAgICByZXR1cm4gbmFtZSBpbiBfQUxMX0ZJRUxEUworCisgICAgZGVmIGlzX211bHRpX2ZpZWxkKHNlbGYsIG5hbWUpOgorICAgICAgICBuYW1lID0gc2VsZi5fY29udmVydF9uYW1lKG5hbWUpCisgICAgICAgIHJldHVybiBuYW1lIGluIF9MSVNURklFTERTCisKKyAgICBkZWYgcmVhZChzZWxmLCBmaWxlcGF0aCk6CisgICAgICAgICIiIlJlYWQgdGhlIG1ldGFkYXRhIHZhbHVlcyBmcm9tIGEgZmlsZSBwYXRoLiIiIgorICAgICAgICB3aXRoIG9wZW4oZmlsZXBhdGgsICdyJywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZnA6CisgICAgICAgICAgICBzZWxmLnJlYWRfZmlsZShmcCkKKworICAgIGRlZiByZWFkX2ZpbGUoc2VsZiwgZmlsZW9iKToKKyAgICAgICAgIiIiUmVhZCB0aGUgbWV0YWRhdGEgdmFsdWVzIGZyb20gYSBmaWxlIG9iamVjdC4iIiIKKyAgICAgICAgbXNnID0gbWVzc2FnZV9mcm9tX2ZpbGUoZmlsZW9iKQorICAgICAgICBzZWxmLl9maWVsZHNbJ01ldGFkYXRhLVZlcnNpb24nXSA9IG1zZ1snbWV0YWRhdGEtdmVyc2lvbiddCisKKyAgICAgICAgZm9yIGZpZWxkIGluIF92ZXJzaW9uMmZpZWxkbGlzdChzZWxmWydNZXRhZGF0YS1WZXJzaW9uJ10pOgorICAgICAgICAgICAgaWYgZmllbGQgaW4gX0xJU1RGSUVMRFM6CisgICAgICAgICAgICAgICAgIyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBsaW5lcworICAgICAgICAgICAgICAgIHZhbHVlcyA9IG1zZy5nZXRfYWxsKGZpZWxkKQorICAgICAgICAgICAgICAgIGlmIGZpZWxkIGluIF9MSVNUVFVQTEVGSUVMRFMgYW5kIHZhbHVlcyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgdmFsdWVzID0gW3R1cGxlKHZhbHVlLnNwbGl0KCcsJykpIGZvciB2YWx1ZSBpbiB2YWx1ZXNdCisgICAgICAgICAgICAgICAgc2VsZi5zZXQoZmllbGQsIHZhbHVlcykKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgIyBzaW5nbGUgbGluZQorICAgICAgICAgICAgICAgIHZhbHVlID0gbXNnW2ZpZWxkXQorICAgICAgICAgICAgICAgIGlmIHZhbHVlIGlzIG5vdCBOb25lIGFuZCB2YWx1ZSAhPSAnVU5LTk9XTic6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuc2V0KGZpZWxkLCB2YWx1ZSkKKworICAgIGRlZiB3cml0ZShzZWxmLCBmaWxlcGF0aCk6CisgICAgICAgICIiIldyaXRlIHRoZSBtZXRhZGF0YSBmaWVsZHMgdG8gZmlsZXBhdGguIiIiCisgICAgICAgIHdpdGggb3BlbihmaWxlcGF0aCwgJ3cnLCBlbmNvZGluZz0ndXRmLTgnKSBhcyBmcDoKKyAgICAgICAgICAgIHNlbGYud3JpdGVfZmlsZShmcCkKKworICAgIGRlZiB3cml0ZV9maWxlKHNlbGYsIGZpbGVvYmplY3QpOgorICAgICAgICAiIiJXcml0ZSB0aGUgUEtHLUlORk8gZm9ybWF0IGRhdGEgdG8gYSBmaWxlIG9iamVjdC4iIiIKKyAgICAgICAgc2VsZi5fc2V0X2Jlc3RfdmVyc2lvbigpCisgICAgICAgIGZvciBmaWVsZCBpbiBfdmVyc2lvbjJmaWVsZGxpc3Qoc2VsZlsnTWV0YWRhdGEtVmVyc2lvbiddKToKKyAgICAgICAgICAgIHZhbHVlcyA9IHNlbGYuZ2V0KGZpZWxkKQorICAgICAgICAgICAgaWYgZmllbGQgaW4gX0VMRU1FTlRTRklFTEQ6CisgICAgICAgICAgICAgICAgc2VsZi5fd3JpdGVfZmllbGQoZmlsZW9iamVjdCwgZmllbGQsICcsJy5qb2luKHZhbHVlcykpCisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGlmIGZpZWxkIG5vdCBpbiBfTElTVEZJRUxEUzoKKyAgICAgICAgICAgICAgICBpZiBmaWVsZCA9PSAnRGVzY3JpcHRpb24nOgorICAgICAgICAgICAgICAgICAgICB2YWx1ZXMgPSB2YWx1ZXMucmVwbGFjZSgnXG4nLCAnXG4gICAgICAgfCcpCisgICAgICAgICAgICAgICAgdmFsdWVzID0gW3ZhbHVlc10KKworICAgICAgICAgICAgaWYgZmllbGQgaW4gX0xJU1RUVVBMRUZJRUxEUzoKKyAgICAgICAgICAgICAgICB2YWx1ZXMgPSBbJywnLmpvaW4odmFsdWUpIGZvciB2YWx1ZSBpbiB2YWx1ZXNdCisKKyAgICAgICAgICAgIGZvciB2YWx1ZSBpbiB2YWx1ZXM6CisgICAgICAgICAgICAgICAgc2VsZi5fd3JpdGVfZmllbGQoZmlsZW9iamVjdCwgZmllbGQsIHZhbHVlKQorCisgICAgZGVmIHVwZGF0ZShzZWxmLCBvdGhlcj1Ob25lLCAqKmt3YXJncyk6CisgICAgICAgICIiIlNldCBtZXRhZGF0YSB2YWx1ZXMgZnJvbSB0aGUgZ2l2ZW4gaXRlcmFibGUgYG90aGVyYCBhbmQga3dhcmdzLgorCisgICAgICAgIEJlaGF2aW9yIGlzIGxpa2UgYGRpY3QudXBkYXRlYDogSWYgYG90aGVyYCBoYXMgYSBgYGtleXNgYCBtZXRob2QsCisgICAgICAgIHRoZXkgYXJlIGxvb3BlZCBvdmVyIGFuZCBgYHNlbGZba2V5XWBgIGlzIGFzc2lnbmVkIGBgb3RoZXJba2V5XWBgLgorICAgICAgICBFbHNlLCBgYG90aGVyYGAgaXMgYW4gaXRlcmFibGUgb2YgYGAoa2V5LCB2YWx1ZSlgYCBpdGVyYWJsZXMuCisKKyAgICAgICAgS2V5cyB0aGF0IGRvbid0IG1hdGNoIGEgbWV0YWRhdGEgZmllbGQgb3IgdGhhdCBoYXZlIGFuIGVtcHR5IHZhbHVlIGFyZQorICAgICAgICBkcm9wcGVkLgorICAgICAgICAiIiIKKyAgICAgICAgIyBYWFggdGhlIGNvZGUgc2hvdWxkIGp1c3QgdXNlIHNlbGYuc2V0LCB3aGljaCBkb2VzIHRiZSBzYW1lIGNoZWNrcyBhbmQKKyAgICAgICAgIyBjb252ZXJzaW9ucyBhbHJlYWR5LCBidXQgdGhhdCB3b3VsZCBicmVhayBwYWNrYWdpbmcucHlwaTogaXQgdXNlcyB0aGUKKyAgICAgICAgIyB1cGRhdGUgbWV0aG9kLCB3aGljaCBkb2VzIG5vdCBjYWxsIF9zZXRfYmVzdF92ZXJzaW9uICh3aGljaCBzZXQKKyAgICAgICAgIyBkb2VzKSwgYW5kIHRodXMgYWxsb3dzIGhhdmluZyBhIE1ldGFkYXRhIG9iamVjdCAoYXMgbG9uZyBhcyB5b3UgZG9uJ3QKKyAgICAgICAgIyBtb2RpZnkgb3Igd3JpdGUgaXQpIHdpdGggZXh0cmEgZmllbGRzIGZyb20gUHlQSSB0aGF0IGFyZSBub3QgZmllbGRzCisgICAgICAgICMgZGVmaW5lZCBpbiBNZXRhZGF0YSBQRVBzLiAgdG8gc29sdmUgaXQsIHRoZSBiZXN0X3ZlcnNpb24gc3lzdGVtCisgICAgICAgICMgc2hvdWxkIGJlIHJld29ya2VkIHNvIHRoYXQgaXQncyBjYWxsZWQgb25seSBmb3Igd3JpdGluZywgb3IgaW4gYSBuZXcKKyAgICAgICAgIyBzdHJpY3QgbW9kZSwgb3Igd2l0aCBhIG5ldywgbW9yZSBsYXggTWV0YWRhdGEgc3ViY2xhc3MgaW4gcDdnLnB5cGkKKyAgICAgICAgZGVmIF9zZXQoa2V5LCB2YWx1ZSk6CisgICAgICAgICAgICBpZiBrZXkgaW4gX0FUVFIyRklFTEQgYW5kIHZhbHVlOgorICAgICAgICAgICAgICAgIHNlbGYuc2V0KHNlbGYuX2NvbnZlcnRfbmFtZShrZXkpLCB2YWx1ZSkKKworICAgICAgICBpZiBub3Qgb3RoZXI6CisgICAgICAgICAgICAjIG90aGVyIGlzIE5vbmUgb3IgZW1wdHkgY29udGFpbmVyCisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsaWYgaGFzYXR0cihvdGhlciwgJ2tleXMnKToKKyAgICAgICAgICAgIGZvciBrIGluIG90aGVyLmtleXMoKToKKyAgICAgICAgICAgICAgICBfc2V0KGssIG90aGVyW2tdKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZm9yIGssIHYgaW4gb3RoZXI6CisgICAgICAgICAgICAgICAgX3NldChrLCB2KQorCisgICAgICAgIGlmIGt3YXJnczoKKyAgICAgICAgICAgIGZvciBrLCB2IGluIGt3YXJncy5pdGVtcygpOgorICAgICAgICAgICAgICAgIF9zZXQoaywgdikKKworICAgIGRlZiBzZXQoc2VsZiwgbmFtZSwgdmFsdWUpOgorICAgICAgICAiIiJDb250cm9sIHRoZW4gc2V0IGEgbWV0YWRhdGEgZmllbGQuIiIiCisgICAgICAgIG5hbWUgPSBzZWxmLl9jb252ZXJ0X25hbWUobmFtZSkKKworICAgICAgICBpZiAoKG5hbWUgaW4gX0VMRU1FTlRTRklFTEQgb3IgbmFtZSA9PSAnUGxhdGZvcm0nKSBhbmQKKyAgICAgICAgICAgIG5vdCBpc2luc3RhbmNlKHZhbHVlLCAobGlzdCwgdHVwbGUpKSk6CisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHZhbHVlLCBzdHIpOgorICAgICAgICAgICAgICAgIHZhbHVlID0gW3Yuc3RyaXAoKSBmb3IgdiBpbiB2YWx1ZS5zcGxpdCgnLCcpXQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IFtdCisgICAgICAgIGVsaWYgKG5hbWUgaW4gX0xJU1RGSUVMRFMgYW5kCisgICAgICAgICAgICAgIG5vdCBpc2luc3RhbmNlKHZhbHVlLCAobGlzdCwgdHVwbGUpKSk6CisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKHZhbHVlLCBzdHIpOgorICAgICAgICAgICAgICAgIHZhbHVlID0gW3ZhbHVlXQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IFtdCisKKyAgICAgICAgaWYgbG9nZ2VyLmlzRW5hYmxlZEZvcihsb2dnaW5nLldBUk5JTkcpOgorICAgICAgICAgICAgcHJvamVjdF9uYW1lID0gc2VsZlsnTmFtZSddCisKKyAgICAgICAgICAgIGlmIG5hbWUgaW4gX1BSRURJQ0FURV9GSUVMRFMgYW5kIHZhbHVlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGZvciB2IGluIHZhbHVlOgorICAgICAgICAgICAgICAgICAgICAjIGNoZWNrIHRoYXQgdGhlIHZhbHVlcyBhcmUgdmFsaWQgcHJlZGljYXRlcworICAgICAgICAgICAgICAgICAgICBpZiBub3QgaXNfdmFsaWRfcHJlZGljYXRlKHYuc3BsaXQoJzsnKVswXSk6CisgICAgICAgICAgICAgICAgICAgICAgICBsb2dnZXIud2FybmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAnJXI6ICVyIGlzIG5vdCBhIHZhbGlkIHByZWRpY2F0ZSAoZmllbGQgJXIpJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9qZWN0X25hbWUsIHYsIG5hbWUpCisgICAgICAgICAgICAjIEZJWE1FIHRoaXMgcmVqZWN0cyBVTktOT1dOLCBpcyB0aGF0IHJpZ2h0PworICAgICAgICAgICAgZWxpZiBuYW1lIGluIF9WRVJTSU9OU19GSUVMRFMgYW5kIHZhbHVlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGlmIG5vdCBpc192YWxpZF92ZXJzaW9ucyh2YWx1ZSk6CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCclcjogJXIgaXMgbm90IGEgdmFsaWQgdmVyc2lvbiAoZmllbGQgJXIpJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvamVjdF9uYW1lLCB2YWx1ZSwgbmFtZSkKKyAgICAgICAgICAgIGVsaWYgbmFtZSBpbiBfVkVSU0lPTl9GSUVMRFMgYW5kIHZhbHVlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIGlmIG5vdCBpc192YWxpZF92ZXJzaW9uKHZhbHVlKToKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoJyVyOiAlciBpcyBub3QgYSB2YWxpZCB2ZXJzaW9uIChmaWVsZCAlciknLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9qZWN0X25hbWUsIHZhbHVlLCBuYW1lKQorCisgICAgICAgIGlmIG5hbWUgaW4gX1VOSUNPREVGSUVMRFM6CisgICAgICAgICAgICBpZiBuYW1lID09ICdEZXNjcmlwdGlvbic6CisgICAgICAgICAgICAgICAgdmFsdWUgPSBzZWxmLl9yZW1vdmVfbGluZV9wcmVmaXgodmFsdWUpCisKKyAgICAgICAgc2VsZi5fZmllbGRzW25hbWVdID0gdmFsdWUKKyAgICAgICAgc2VsZi5fc2V0X2Jlc3RfdmVyc2lvbigpCisKKyAgICBkZWYgZ2V0KHNlbGYsIG5hbWUsIGRlZmF1bHQ9X01JU1NJTkcpOgorICAgICAgICAiIiJHZXQgYSBtZXRhZGF0YSBmaWVsZC4iIiIKKyAgICAgICAgbmFtZSA9IHNlbGYuX2NvbnZlcnRfbmFtZShuYW1lKQorICAgICAgICBpZiBuYW1lIG5vdCBpbiBzZWxmLl9maWVsZHM6CisgICAgICAgICAgICBpZiBkZWZhdWx0IGlzIF9NSVNTSU5HOgorICAgICAgICAgICAgICAgIGRlZmF1bHQgPSBzZWxmLl9kZWZhdWx0X3ZhbHVlKG5hbWUpCisgICAgICAgICAgICByZXR1cm4gZGVmYXVsdAorICAgICAgICBpZiBuYW1lIGluIF9VTklDT0RFRklFTERTOgorICAgICAgICAgICAgdmFsdWUgPSBzZWxmLl9maWVsZHNbbmFtZV0KKyAgICAgICAgICAgIHJldHVybiB2YWx1ZQorICAgICAgICBlbGlmIG5hbWUgaW4gX0xJU1RGSUVMRFM6CisgICAgICAgICAgICB2YWx1ZSA9IHNlbGYuX2ZpZWxkc1tuYW1lXQorICAgICAgICAgICAgaWYgdmFsdWUgaXMgTm9uZToKKyAgICAgICAgICAgICAgICByZXR1cm4gW10KKyAgICAgICAgICAgIHJlcyA9IFtdCisgICAgICAgICAgICBmb3IgdmFsIGluIHZhbHVlOgorICAgICAgICAgICAgICAgIHZhbGlkLCB2YWwgPSBzZWxmLl9wbGF0Zm9ybSh2YWwpCisgICAgICAgICAgICAgICAgaWYgbm90IHZhbGlkOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGlmIG5hbWUgbm90IGluIF9MSVNUVFVQTEVGSUVMRFM6CisgICAgICAgICAgICAgICAgICAgIHJlcy5hcHBlbmQodmFsKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICMgVGhhdCdzIGZvciBQcm9qZWN0LVVSTAorICAgICAgICAgICAgICAgICAgICByZXMuYXBwZW5kKCh2YWxbMF0sIHZhbFsxXSkpCisgICAgICAgICAgICByZXR1cm4gcmVzCisKKyAgICAgICAgZWxpZiBuYW1lIGluIF9FTEVNRU5UU0ZJRUxEOgorICAgICAgICAgICAgdmFsaWQsIHZhbHVlID0gc2VsZi5fcGxhdGZvcm0oc2VsZi5fZmllbGRzW25hbWVdKQorICAgICAgICAgICAgaWYgbm90IHZhbGlkOgorICAgICAgICAgICAgICAgIHJldHVybiBbXQorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZSh2YWx1ZSwgc3RyKToKKyAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWUuc3BsaXQoJywnKQorICAgICAgICB2YWxpZCwgdmFsdWUgPSBzZWxmLl9wbGF0Zm9ybShzZWxmLl9maWVsZHNbbmFtZV0pCisgICAgICAgIGlmIG5vdCB2YWxpZDoKKyAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgIHJldHVybiB2YWx1ZQorCisgICAgZGVmIGNoZWNrKHNlbGYsIHN0cmljdD1GYWxzZSwgcmVzdHJ1Y3R1cmVkdGV4dD1GYWxzZSk6CisgICAgICAgICIiIkNoZWNrIGlmIHRoZSBtZXRhZGF0YSBpcyBjb21wbGlhbnQuIElmIHN0cmljdCBpcyBGYWxzZSB0aGVuIHJhaXNlIGlmCisgICAgICAgIG5vIE5hbWUgb3IgVmVyc2lvbiBhcmUgcHJvdmlkZWQiIiIKKyAgICAgICAgIyBYWFggc2hvdWxkIGNoZWNrIHRoZSB2ZXJzaW9ucyAoaWYgdGhlIGZpbGUgd2FzIGxvYWRlZCkKKyAgICAgICAgbWlzc2luZywgd2FybmluZ3MgPSBbXSwgW10KKworICAgICAgICBmb3IgYXR0ciBpbiAoJ05hbWUnLCAnVmVyc2lvbicpOiAgIyByZXF1aXJlZCBieSBQRVAgMzQ1CisgICAgICAgICAgICBpZiBhdHRyIG5vdCBpbiBzZWxmOgorICAgICAgICAgICAgICAgIG1pc3NpbmcuYXBwZW5kKGF0dHIpCisKKyAgICAgICAgaWYgc3RyaWN0IGFuZCBtaXNzaW5nICE9IFtdOgorICAgICAgICAgICAgbXNnID0gJ21pc3NpbmcgcmVxdWlyZWQgbWV0YWRhdGE6ICVzJyAlICcsICcuam9pbihtaXNzaW5nKQorICAgICAgICAgICAgcmFpc2UgTWV0YWRhdGFNaXNzaW5nRXJyb3IobXNnKQorCisgICAgICAgIGZvciBhdHRyIGluICgnSG9tZS1wYWdlJywgJ0F1dGhvcicpOgorICAgICAgICAgICAgaWYgYXR0ciBub3QgaW4gc2VsZjoKKyAgICAgICAgICAgICAgICBtaXNzaW5nLmFwcGVuZChhdHRyKQorCisgICAgICAgIGlmIF9IQVNfRE9DVVRJTFMgYW5kIHJlc3RydWN0dXJlZHRleHQ6CisgICAgICAgICAgICB3YXJuaW5ncy5leHRlbmQoc2VsZi5fY2hlY2tfcnN0X2RhdGEoc2VsZlsnRGVzY3JpcHRpb24nXSkpCisKKyAgICAgICAgIyBjaGVja2luZyBtZXRhZGF0YSAxLjIgKFhYWCBuZWVkcyB0byBjaGVjayAxLjEsIDEuMCkKKyAgICAgICAgaWYgc2VsZlsnTWV0YWRhdGEtVmVyc2lvbiddICE9ICcxLjInOgorICAgICAgICAgICAgcmV0dXJuIG1pc3NpbmcsIHdhcm5pbmdzCisKKyAgICAgICAgZGVmIGlzX3ZhbGlkX3ByZWRpY2F0ZXModmFsdWUpOgorICAgICAgICAgICAgZm9yIHYgaW4gdmFsdWU6CisgICAgICAgICAgICAgICAgaWYgbm90IGlzX3ZhbGlkX3ByZWRpY2F0ZSh2LnNwbGl0KCc7JylbMF0pOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisKKyAgICAgICAgZm9yIGZpZWxkcywgY29udHJvbGxlciBpbiAoKF9QUkVESUNBVEVfRklFTERTLCBpc192YWxpZF9wcmVkaWNhdGVzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9WRVJTSU9OU19GSUVMRFMsIGlzX3ZhbGlkX3ZlcnNpb25zKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9WRVJTSU9OX0ZJRUxEUywgaXNfdmFsaWRfdmVyc2lvbikpOgorICAgICAgICAgICAgZm9yIGZpZWxkIGluIGZpZWxkczoKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IHNlbGYuZ2V0KGZpZWxkLCBOb25lKQorICAgICAgICAgICAgICAgIGlmIHZhbHVlIGlzIG5vdCBOb25lIGFuZCBub3QgY29udHJvbGxlcih2YWx1ZSk6CisgICAgICAgICAgICAgICAgICAgIHdhcm5pbmdzLmFwcGVuZCgnV3JvbmcgdmFsdWUgZm9yICVyOiAlcycgJSAoZmllbGQsIHZhbHVlKSkKKworICAgICAgICByZXR1cm4gbWlzc2luZywgd2FybmluZ3MKKworICAgIGRlZiB0b2RpY3Qoc2VsZik6CisgICAgICAgICIiIlJldHVybiBmaWVsZHMgYXMgYSBkaWN0LgorCisgICAgICAgIEZpZWxkIG5hbWVzIHdpbGwgYmUgY29udmVydGVkIHRvIHVzZSB0aGUgdW5kZXJzY29yZS1sb3dlcmNhc2Ugc3R5bGUKKyAgICAgICAgaW5zdGVhZCBvZiBoeXBoZW4tbWl4ZWQgY2FzZSAoaS5lLiBob21lX3BhZ2UgaW5zdGVhZCBvZiBIb21lLXBhZ2UpLgorICAgICAgICAiIiIKKyAgICAgICAgZGF0YSA9IHsKKyAgICAgICAgICAgICdtZXRhZGF0YV92ZXJzaW9uJzogc2VsZlsnTWV0YWRhdGEtVmVyc2lvbiddLAorICAgICAgICAgICAgJ25hbWUnOiBzZWxmWydOYW1lJ10sCisgICAgICAgICAgICAndmVyc2lvbic6IHNlbGZbJ1ZlcnNpb24nXSwKKyAgICAgICAgICAgICdzdW1tYXJ5Jzogc2VsZlsnU3VtbWFyeSddLAorICAgICAgICAgICAgJ2hvbWVfcGFnZSc6IHNlbGZbJ0hvbWUtcGFnZSddLAorICAgICAgICAgICAgJ2F1dGhvcic6IHNlbGZbJ0F1dGhvciddLAorICAgICAgICAgICAgJ2F1dGhvcl9lbWFpbCc6IHNlbGZbJ0F1dGhvci1lbWFpbCddLAorICAgICAgICAgICAgJ2xpY2Vuc2UnOiBzZWxmWydMaWNlbnNlJ10sCisgICAgICAgICAgICAnZGVzY3JpcHRpb24nOiBzZWxmWydEZXNjcmlwdGlvbiddLAorICAgICAgICAgICAgJ2tleXdvcmRzJzogc2VsZlsnS2V5d29yZHMnXSwKKyAgICAgICAgICAgICdwbGF0Zm9ybSc6IHNlbGZbJ1BsYXRmb3JtJ10sCisgICAgICAgICAgICAnY2xhc3NpZmllcic6IHNlbGZbJ0NsYXNzaWZpZXInXSwKKyAgICAgICAgICAgICdkb3dubG9hZF91cmwnOiBzZWxmWydEb3dubG9hZC1VUkwnXSwKKyAgICAgICAgfQorCisgICAgICAgIGlmIHNlbGZbJ01ldGFkYXRhLVZlcnNpb24nXSA9PSAnMS4yJzoKKyAgICAgICAgICAgIGRhdGFbJ3JlcXVpcmVzX2Rpc3QnXSA9IHNlbGZbJ1JlcXVpcmVzLURpc3QnXQorICAgICAgICAgICAgZGF0YVsncmVxdWlyZXNfcHl0aG9uJ10gPSBzZWxmWydSZXF1aXJlcy1QeXRob24nXQorICAgICAgICAgICAgZGF0YVsncmVxdWlyZXNfZXh0ZXJuYWwnXSA9IHNlbGZbJ1JlcXVpcmVzLUV4dGVybmFsJ10KKyAgICAgICAgICAgIGRhdGFbJ3Byb3ZpZGVzX2Rpc3QnXSA9IHNlbGZbJ1Byb3ZpZGVzLURpc3QnXQorICAgICAgICAgICAgZGF0YVsnb2Jzb2xldGVzX2Rpc3QnXSA9IHNlbGZbJ09ic29sZXRlcy1EaXN0J10KKyAgICAgICAgICAgIGRhdGFbJ3Byb2plY3RfdXJsJ10gPSBbJywnLmpvaW4odXJsKSBmb3IgdXJsIGluCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGZbJ1Byb2plY3QtVVJMJ11dCisKKyAgICAgICAgZWxpZiBzZWxmWydNZXRhZGF0YS1WZXJzaW9uJ10gPT0gJzEuMSc6CisgICAgICAgICAgICBkYXRhWydwcm92aWRlcyddID0gc2VsZlsnUHJvdmlkZXMnXQorICAgICAgICAgICAgZGF0YVsncmVxdWlyZXMnXSA9IHNlbGZbJ1JlcXVpcmVzJ10KKyAgICAgICAgICAgIGRhdGFbJ29ic29sZXRlcyddID0gc2VsZlsnT2Jzb2xldGVzJ10KKworICAgICAgICByZXR1cm4gZGF0YQorCisgICAgIyBNYXBwaW5nIEFQSQorICAgICMgWFhYIHRoZXNlIG1ldGhvZHMgc2hvdWxkIHJldHVybiB2aWV3cyBvciBzZXRzIGluIDMueAorCisgICAgZGVmIGtleXMoc2VsZik6CisgICAgICAgIHJldHVybiBsaXN0KF92ZXJzaW9uMmZpZWxkbGlzdChzZWxmWydNZXRhZGF0YS1WZXJzaW9uJ10pKQorCisgICAgZGVmIF9faXRlcl9fKHNlbGYpOgorICAgICAgICBmb3Iga2V5IGluIHNlbGYua2V5cygpOgorICAgICAgICAgICAgeWllbGQga2V5CisKKyAgICBkZWYgdmFsdWVzKHNlbGYpOgorICAgICAgICByZXR1cm4gW3NlbGZba2V5XSBmb3Iga2V5IGluIHNlbGYua2V5cygpXQorCisgICAgZGVmIGl0ZW1zKHNlbGYpOgorICAgICAgICByZXR1cm4gWyhrZXksIHNlbGZba2V5XSkgZm9yIGtleSBpbiBzZWxmLmtleXMoKV0KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvcHlwaS9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvcHlwaS9fX2luaXRfXy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NjYwYzUwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9weXBpL19faW5pdF9fLnB5CkBAIC0wLDAgKzEsOSBAQAorIiIiTG93LWxldmVsIGFuZCBoaWdoLWxldmVsIEFQSXMgdG8gaW50ZXJhY3Qgd2l0aCBwcm9qZWN0IGluZGV4ZXMuIiIiCisKK19fYWxsX18gPSBbJ3NpbXBsZScsCisgICAgICAgICAgICd4bWxycGMnLAorICAgICAgICAgICAnZGlzdCcsCisgICAgICAgICAgICdlcnJvcnMnLAorICAgICAgICAgICAnbWlycm9ycyddCisKK2Zyb20gcGFja2FnaW5nLnB5cGkuZGlzdCBpbXBvcnQgUmVsZWFzZUluZm8sIFJlbGVhc2VzTGlzdCwgRGlzdEluZm8KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvcHlwaS9iYXNlLnB5IGIvTGliL3BhY2thZ2luZy9weXBpL2Jhc2UucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzA1ZmNhOQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvcHlwaS9iYXNlLnB5CkBAIC0wLDAgKzEsNDggQEAKKyIiIkJhc2UgY2xhc3MgZm9yIGluZGV4IGNyYXdsZXJzLiIiIgorCitmcm9tIHBhY2thZ2luZy5weXBpLmRpc3QgaW1wb3J0IFJlbGVhc2VzTGlzdAorCisKK2NsYXNzIEJhc2VDbGllbnQ6CisgICAgIiIiQmFzZSBjbGFzcyBjb250YWluaW5nIGNvbW1vbiBtZXRob2RzIGZvciB0aGUgaW5kZXggY3Jhd2xlcnMvY2xpZW50cyIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHByZWZlcl9maW5hbCwgcHJlZmVyX3NvdXJjZSk6CisgICAgICAgIHNlbGYuX3ByZWZlcl9maW5hbCA9IHByZWZlcl9maW5hbAorICAgICAgICBzZWxmLl9wcmVmZXJfc291cmNlID0gcHJlZmVyX3NvdXJjZQorICAgICAgICBzZWxmLl9pbmRleCA9IHNlbGYKKworICAgIGRlZiBfZ2V0X3ByZWZlcl9maW5hbChzZWxmLCBwcmVmZXJfZmluYWw9Tm9uZSk6CisgICAgICAgICIiIlJldHVybiB0aGUgcHJlZmVyX2ZpbmFsIGludGVybmFsIHBhcmFtZXRlciBvciB0aGUgc3BlY2lmaWVkIG9uZSBpZgorICAgICAgICBwcm92aWRlZCIiIgorICAgICAgICBpZiBwcmVmZXJfZmluYWw6CisgICAgICAgICAgICByZXR1cm4gcHJlZmVyX2ZpbmFsCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fcHJlZmVyX2ZpbmFsCisKKyAgICBkZWYgX2dldF9wcmVmZXJfc291cmNlKHNlbGYsIHByZWZlcl9zb3VyY2U9Tm9uZSk6CisgICAgICAgICIiIlJldHVybiB0aGUgcHJlZmVyX3NvdXJjZSBpbnRlcm5hbCBwYXJhbWV0ZXIgb3IgdGhlIHNwZWNpZmllZCBvbmUgaWYKKyAgICAgICAgcHJvdmlkZWQiIiIKKyAgICAgICAgaWYgcHJlZmVyX3NvdXJjZToKKyAgICAgICAgICAgIHJldHVybiBwcmVmZXJfc291cmNlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fcHJlZmVyX3NvdXJjZQorCisgICAgZGVmIF9nZXRfcHJvamVjdChzZWxmLCBwcm9qZWN0X25hbWUpOgorICAgICAgICAiIiJSZXR1cm4gYW4gcHJvamVjdCBpbnN0YW5jZSwgY3JlYXRlIGl0IGlmIG5lY2Vzc2FyeSIiIgorICAgICAgICByZXR1cm4gc2VsZi5fcHJvamVjdHMuc2V0ZGVmYXVsdChwcm9qZWN0X25hbWUubG93ZXIoKSwKKyAgICAgICAgICAgICAgICAgICAgUmVsZWFzZXNMaXN0KHByb2plY3RfbmFtZSwgaW5kZXg9c2VsZi5faW5kZXgpKQorCisgICAgZGVmIGRvd25sb2FkX2Rpc3RyaWJ1dGlvbihzZWxmLCByZXF1aXJlbWVudHMsIHRlbXBfcGF0aD1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlZmVyX3NvdXJjZT1Ob25lLCBwcmVmZXJfZmluYWw9Tm9uZSk6CisgICAgICAgICIiIkRvd25sb2FkIGEgZGlzdHJpYnV0aW9uIGZyb20gdGhlIGxhc3QgcmVsZWFzZSBhY2NvcmRpbmcgdG8gdGhlCisgICAgICAgIHJlcXVpcmVtZW50cy4KKworICAgICAgICBJZiB0ZW1wX3BhdGggaXMgcHJvdmlkZWQsIGRvd25sb2FkIHRvIHRoaXMgcGF0aCwgb3RoZXJ3aXNlLCBjcmVhdGUgYQorICAgICAgICB0ZW1wb3JhcnkgbG9jYXRpb24gZm9yIHRoZSBkb3dubG9hZCBhbmQgcmV0dXJuIGl0LgorICAgICAgICAiIiIKKyAgICAgICAgcHJlZmVyX2ZpbmFsID0gc2VsZi5fZ2V0X3ByZWZlcl9maW5hbChwcmVmZXJfZmluYWwpCisgICAgICAgIHByZWZlcl9zb3VyY2UgPSBzZWxmLl9nZXRfcHJlZmVyX3NvdXJjZShwcmVmZXJfc291cmNlKQorICAgICAgICByZWxlYXNlID0gc2VsZi5nZXRfcmVsZWFzZShyZXF1aXJlbWVudHMsIHByZWZlcl9maW5hbCkKKyAgICAgICAgaWYgcmVsZWFzZToKKyAgICAgICAgICAgIGRpc3QgPSByZWxlYXNlLmdldF9kaXN0cmlidXRpb24ocHJlZmVyX3NvdXJjZT1wcmVmZXJfc291cmNlKQorICAgICAgICAgICAgcmV0dXJuIGRpc3QuZG93bmxvYWQodGVtcF9wYXRoKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9weXBpL2Rpc3QucHkgYi9MaWIvcGFja2FnaW5nL3B5cGkvZGlzdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NDE0NjVlCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9weXBpL2Rpc3QucHkKQEAgLTAsMCArMSw1NDQgQEAKKyIiIkNsYXNzZXMgcmVwcmVzZW50aW5nIHJlbGVhc2VzIGFuZCBkaXN0cmlidXRpb25zIHJldHJpZXZlZCBmcm9tIGluZGV4ZXMuCisKK0EgcHJvamVjdCAoPSB1bmlxdWUgbmFtZSkgY2FuIGhhdmUgc2V2ZXJhbCByZWxlYXNlcyAoPSB2ZXJzaW9ucykgYW5kCitlYWNoIHJlbGVhc2UgY2FuIGhhdmUgc2V2ZXJhbCBkaXN0cmlidXRpb25zICg9IHNkaXN0IGFuZCBiZGlzdHMpLgorCitSZWxlYXNlIG9iamVjdHMgY29udGFpbiBtZXRhZGF0YS1yZWxhdGVkIGluZm9ybWF0aW9uIChzZWUgUEVQIDM3Nik7CitkaXN0cmlidXRpb24gb2JqZWN0cyBjb250YWluIGRvd25sb2FkLXJlbGF0ZWQgaW5mb3JtYXRpb24uCisiIiIKKworaW1wb3J0IHJlCitpbXBvcnQgaGFzaGxpYgoraW1wb3J0IHRlbXBmaWxlCitpbXBvcnQgdXJsbGliLnJlcXVlc3QKK2ltcG9ydCB1cmxsaWIucGFyc2UKK2ltcG9ydCB1cmxsaWIuZXJyb3IKK2ltcG9ydCB1cmxsaWIucGFyc2UKK2Zyb20gc2h1dGlsIGltcG9ydCB1bnBhY2tfYXJjaGl2ZQorCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IElycmF0aW9uYWxWZXJzaW9uRXJyb3IKK2Zyb20gcGFja2FnaW5nLnZlcnNpb24gaW1wb3J0IChzdWdnZXN0X25vcm1hbGl6ZWRfdmVyc2lvbiwgTm9ybWFsaXplZFZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0X3ZlcnNpb25fcHJlZGljYXRlKQorZnJvbSBwYWNrYWdpbmcubWV0YWRhdGEgaW1wb3J0IE1ldGFkYXRhCitmcm9tIHBhY2thZ2luZy5weXBpLmVycm9ycyBpbXBvcnQgKEhhc2hEb2VzTm90TWF0Y2gsIFVuc3VwcG9ydGVkSGFzaE5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENhbnRQYXJzZUFyY2hpdmVOYW1lKQorCisKK19fYWxsX18gPSBbJ1JlbGVhc2VJbmZvJywgJ0Rpc3RJbmZvJywgJ1JlbGVhc2VzTGlzdCcsICdnZXRfaW5mb3NfZnJvbV91cmwnXQorCitFWFRFTlNJT05TID0gIi50YXIuZ3ogLnRhci5iejIgLnRhciAuemlwIC50Z3ogLmVnZyIuc3BsaXQoKQorTUQ1X0hBU0ggPSByZS5jb21waWxlKHInXi4qI21kNT0oW2EtZjAtOV0rKSQnKQorRElTVF9UWVBFUyA9IFsnYmRpc3QnLCAnc2Rpc3QnXQorCisKK2NsYXNzIEluZGV4UmVmZXJlbmNlOgorICAgICIiIk1peGluIHVzZWQgdG8gc3RvcmUgdGhlIGluZGV4IHJlZmVyZW5jZSIiIgorICAgIGRlZiBzZXRfaW5kZXgoc2VsZiwgaW5kZXg9Tm9uZSk6CisgICAgICAgIHNlbGYuX2luZGV4ID0gaW5kZXgKKworCitjbGFzcyBSZWxlYXNlSW5mbyhJbmRleFJlZmVyZW5jZSk6CisgICAgIiIiUmVwcmVzZW50IGEgcmVsZWFzZSBvZiBhIHByb2plY3QgKGEgcHJvamVjdCB3aXRoIGEgc3BlY2lmaWMgdmVyc2lvbikuCisgICAgVGhlIHJlbGVhc2UgY29udGFpbiB0aGUgX21ldGFkYXRhIGluZm9ybWF0aW9ucyByZWxhdGVkIHRvIHRoaXMgc3BlY2lmaWMKKyAgICB2ZXJzaW9uLCBhbmQgaXMgYWxzbyBhIGNvbnRhaW5lciBmb3IgZGlzdHJpYnV0aW9uIHJlbGF0ZWQgaW5mb3JtYXRpb25zLgorCisgICAgU2VlIHRoZSBEaXN0SW5mbyBjbGFzcyBmb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBkaXN0cmlidXRpb25zLgorICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIG5hbWUsIHZlcnNpb24sIG1ldGFkYXRhPU5vbmUsIGhpZGRlbj1GYWxzZSwKKyAgICAgICAgICAgICAgICAgaW5kZXg9Tm9uZSwgKiprd2FyZ3MpOgorICAgICAgICAiIiIKKyAgICAgICAgOnBhcmFtIG5hbWU6IHRoZSBuYW1lIG9mIHRoZSBkaXN0cmlidXRpb24KKyAgICAgICAgOnBhcmFtIHZlcnNpb246IHRoZSB2ZXJzaW9uIG9mIHRoZSBkaXN0cmlidXRpb24KKyAgICAgICAgOnBhcmFtIG1ldGFkYXRhOiB0aGUgbWV0YWRhdGEgZmllbGRzIG9mIHRoZSByZWxlYXNlLgorICAgICAgICA6dHlwZSBtZXRhZGF0YTogZGljdAorICAgICAgICA6cGFyYW0ga3dhcmdzOiBvcHRpb25hbCBhcmd1bWVudHMgZm9yIGEgbmV3IGRpc3RyaWJ1dGlvbi4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuc2V0X2luZGV4KGluZGV4KQorICAgICAgICBzZWxmLm5hbWUgPSBuYW1lCisgICAgICAgIHNlbGYuX3ZlcnNpb24gPSBOb25lCisgICAgICAgIHNlbGYudmVyc2lvbiA9IHZlcnNpb24KKyAgICAgICAgaWYgbWV0YWRhdGE6CisgICAgICAgICAgICBzZWxmLm1ldGFkYXRhID0gTWV0YWRhdGEobWFwcGluZz1tZXRhZGF0YSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYubWV0YWRhdGEgPSBOb25lCisgICAgICAgIHNlbGYuZGlzdHMgPSB7fQorICAgICAgICBzZWxmLmhpZGRlbiA9IGhpZGRlbgorCisgICAgICAgIGlmICdkaXN0X3R5cGUnIGluIGt3YXJnczoKKyAgICAgICAgICAgIGRpc3RfdHlwZSA9IGt3YXJncy5wb3AoJ2Rpc3RfdHlwZScpCisgICAgICAgICAgICBzZWxmLmFkZF9kaXN0cmlidXRpb24oZGlzdF90eXBlLCAqKmt3YXJncykKKworICAgIGRlZiBzZXRfdmVyc2lvbihzZWxmLCB2ZXJzaW9uKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5fdmVyc2lvbiA9IE5vcm1hbGl6ZWRWZXJzaW9uKHZlcnNpb24pCisgICAgICAgIGV4Y2VwdCBJcnJhdGlvbmFsVmVyc2lvbkVycm9yOgorICAgICAgICAgICAgc3VnZ2VzdGlvbiA9IHN1Z2dlc3Rfbm9ybWFsaXplZF92ZXJzaW9uKHZlcnNpb24pCisgICAgICAgICAgICBpZiBzdWdnZXN0aW9uOgorICAgICAgICAgICAgICAgIHNlbGYudmVyc2lvbiA9IHN1Z2dlc3Rpb24KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmFpc2UgSXJyYXRpb25hbFZlcnNpb25FcnJvcih2ZXJzaW9uKQorCisgICAgZGVmIGdldF92ZXJzaW9uKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5fdmVyc2lvbgorCisgICAgdmVyc2lvbiA9IHByb3BlcnR5KGdldF92ZXJzaW9uLCBzZXRfdmVyc2lvbikKKworICAgIGRlZiBmZXRjaF9tZXRhZGF0YShzZWxmKToKKyAgICAgICAgIiIiSWYgdGhlIG1ldGFkYXRhIGlzIG5vdCBzZXQsIHVzZSB0aGUgaW5kZXhlcyB0byBnZXQgaXQiIiIKKyAgICAgICAgaWYgbm90IHNlbGYubWV0YWRhdGE6CisgICAgICAgICAgICBzZWxmLl9pbmRleC5nZXRfbWV0YWRhdGEoc2VsZi5uYW1lLCBzdHIoc2VsZi52ZXJzaW9uKSkKKyAgICAgICAgcmV0dXJuIHNlbGYubWV0YWRhdGEKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBpc19maW5hbChzZWxmKToKKyAgICAgICAgIiIicHJveHkgdG8gdmVyc2lvbi5pc19maW5hbCIiIgorICAgICAgICByZXR1cm4gc2VsZi52ZXJzaW9uLmlzX2ZpbmFsCisKKyAgICBkZWYgZmV0Y2hfZGlzdHJpYnV0aW9ucyhzZWxmKToKKyAgICAgICAgaWYgc2VsZi5kaXN0cyBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5faW5kZXguZ2V0X2Rpc3RyaWJ1dGlvbnMoc2VsZi5uYW1lLCBzdHIoc2VsZi52ZXJzaW9uKSkKKyAgICAgICAgICAgIGlmIHNlbGYuZGlzdHMgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBzZWxmLmRpc3RzID0ge30KKyAgICAgICAgcmV0dXJuIHNlbGYuZGlzdHMKKworICAgIGRlZiBhZGRfZGlzdHJpYnV0aW9uKHNlbGYsIGRpc3RfdHlwZT0nc2Rpc3QnLCBweXRob25fdmVyc2lvbj1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICoqcGFyYW1zKToKKyAgICAgICAgIiIiQWRkIGRpc3RyaWJ1dGlvbiBpbmZvcm1hdGlvbnMgdG8gdGhpcyByZWxlYXNlLgorICAgICAgICBJZiBkaXN0cmlidXRpb24gaW5mb3JtYXRpb24gaXMgYWxyZWFkeSBzZXQgZm9yIHRoaXMgZGlzdHJpYnV0aW9uIHR5cGUsCisgICAgICAgIGFkZCB0aGUgZ2l2ZW4gdXJsIHBhdGhzIHRvIHRoZSBkaXN0cmlidXRpb24uIFRoaXMgY2FuIGJlIHVzZWZ1bCB3aGlsZQorICAgICAgICBzb21lIG9mIHRoZW0gZmFpbHMgdG8gZG93bmxvYWQuCisKKyAgICAgICAgOnBhcmFtIGRpc3RfdHlwZTogdGhlIGRpc3RyaWJ1dGlvbiB0eXBlIChlZy4gInNkaXN0IiwgImJkaXN0IiwgZXRjLikKKyAgICAgICAgOnBhcmFtIHBhcmFtczogdGhlIGZpZWxkcyB0byBiZSBwYXNzZWQgdG8gdGhlIGRpc3RyaWJ1dGlvbiBvYmplY3QKKyAgICAgICAgICAgICAgICAgICAgICAgKHNlZSB0aGUgOmNsYXNzOkRpc3RJbmZvIGNvbnN0cnVjdG9yKS4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIGRpc3RfdHlwZSBub3QgaW4gRElTVF9UWVBFUzoKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoZGlzdF90eXBlKQorICAgICAgICBpZiBkaXN0X3R5cGUgaW4gc2VsZi5kaXN0czoKKyAgICAgICAgICAgIHNlbGYuZGlzdHNbZGlzdF90eXBlXS5hZGRfdXJsKCoqcGFyYW1zKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5kaXN0c1tkaXN0X3R5cGVdID0gRGlzdEluZm8oc2VsZiwgZGlzdF90eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg9c2VsZi5faW5kZXgsICoqcGFyYW1zKQorICAgICAgICBpZiBweXRob25fdmVyc2lvbjoKKyAgICAgICAgICAgIHNlbGYuZGlzdHNbZGlzdF90eXBlXS5weXRob25fdmVyc2lvbiA9IHB5dGhvbl92ZXJzaW9uCisKKyAgICBkZWYgZ2V0X2Rpc3RyaWJ1dGlvbihzZWxmLCBkaXN0X3R5cGU9Tm9uZSwgcHJlZmVyX3NvdXJjZT1UcnVlKToKKyAgICAgICAgIiIiUmV0dXJuIGEgZGlzdHJpYnV0aW9uLgorCisgICAgICAgIElmIGRpc3RfdHlwZSBpcyBzZXQsIGZpbmQgZmlyc3QgZm9yIHRoaXMgZGlzdHJpYnV0aW9uIHR5cGUsIGFuZCBqdXN0CisgICAgICAgIGFjdCBhcyBhbiBhbGlhcyBvZiBfX2dldF9pdGVtX18uCisKKyAgICAgICAgSWYgcHJlZmVyX3NvdXJjZSBpcyBUcnVlLCBzZWFyY2ggZmlyc3QgZm9yIHNvdXJjZSBkaXN0cmlidXRpb24sIGFuZCBpZgorICAgICAgICBub3QgcmV0dXJuIG9uZSBleGlzdGluZyBkaXN0cmlidXRpb24uCisgICAgICAgICIiIgorICAgICAgICBpZiBsZW4oc2VsZi5kaXN0cykgPT0gMDoKKyAgICAgICAgICAgIHJhaXNlIExvb2t1cEVycm9yCisgICAgICAgIGlmIGRpc3RfdHlwZToKKyAgICAgICAgICAgIHJldHVybiBzZWxmW2Rpc3RfdHlwZV0KKyAgICAgICAgaWYgcHJlZmVyX3NvdXJjZToKKyAgICAgICAgICAgIGlmICJzZGlzdCIgaW4gc2VsZi5kaXN0czoKKyAgICAgICAgICAgICAgICBkaXN0ID0gc2VsZlsic2Rpc3QiXQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBkaXN0ID0gbmV4dChzZWxmLmRpc3RzLnZhbHVlcygpKQorICAgICAgICAgICAgcmV0dXJuIGRpc3QKKworICAgIGRlZiB1bnBhY2soc2VsZiwgcGF0aD1Ob25lLCBwcmVmZXJfc291cmNlPVRydWUpOgorICAgICAgICAiIiJVbnBhY2sgdGhlIGRpc3RyaWJ1dGlvbiB0byB0aGUgZ2l2ZW4gcGF0aC4KKworICAgICAgICBJZiBub3QgZGVzdGluYXRpb24gaXMgZ2l2ZW4sIGNyZWF0ZXMgYSB0ZW1wb3JhcnkgbG9jYXRpb24uCisKKyAgICAgICAgUmV0dXJucyB0aGUgbG9jYXRpb24gb2YgdGhlIGV4dHJhY3RlZCBmaWxlcyAocm9vdCkuCisgICAgICAgICIiIgorICAgICAgICByZXR1cm4gc2VsZi5nZXRfZGlzdHJpYnV0aW9uKHByZWZlcl9zb3VyY2U9cHJlZmVyX3NvdXJjZSlcCisgICAgICAgICAgICAgICAgICAgLnVucGFjayhwYXRoPXBhdGgpCisKKyAgICBkZWYgZG93bmxvYWQoc2VsZiwgdGVtcF9wYXRoPU5vbmUsIHByZWZlcl9zb3VyY2U9VHJ1ZSk6CisgICAgICAgICIiIkRvd25sb2FkIHRoZSBkaXN0cmlidXRpb24sIHVzaW5nIHRoZSByZXF1aXJlbWVudHMuCisKKyAgICAgICAgSWYgbW9yZSB0aGFuIG9uZSBkaXN0cmlidXRpb24gbWF0Y2ggdGhlIHJlcXVpcmVtZW50cywgdXNlIHRoZSBsYXN0CisgICAgICAgIHZlcnNpb24uCisgICAgICAgIERvd25sb2FkIHRoZSBkaXN0cmlidXRpb24sIGFuZCBwdXQgaXQgaW4gdGhlIHRlbXBfcGF0aC4gSWYgbm8gdGVtcF9wYXRoCisgICAgICAgIGlzIGdpdmVuLCBjcmVhdGVzIGFuZCByZXR1cm4gb25lLgorCisgICAgICAgIFJldHVybnMgdGhlIGNvbXBsZXRlIGFic29sdXRlIHBhdGggdG8gdGhlIGRvd25sb2FkZWQgYXJjaGl2ZS4KKyAgICAgICAgIiIiCisgICAgICAgIHJldHVybiBzZWxmLmdldF9kaXN0cmlidXRpb24ocHJlZmVyX3NvdXJjZT1wcmVmZXJfc291cmNlKVwKKyAgICAgICAgICAgICAgICAgICAuZG93bmxvYWQocGF0aD10ZW1wX3BhdGgpCisKKyAgICBkZWYgc2V0X21ldGFkYXRhKHNlbGYsIG1ldGFkYXRhKToKKyAgICAgICAgaWYgbm90IHNlbGYubWV0YWRhdGE6CisgICAgICAgICAgICBzZWxmLm1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBzZWxmLm1ldGFkYXRhLnVwZGF0ZShtZXRhZGF0YSkKKworICAgIGRlZiBfX2dldGl0ZW1fXyhzZWxmLCBpdGVtKToKKyAgICAgICAgIiIiZGlzdHJpYnV0aW9ucyBhcmUgYXZhaWxhYmxlIHVzaW5nIHJlbGVhc2VbInNkaXN0Il0iIiIKKyAgICAgICAgcmV0dXJuIHNlbGYuZGlzdHNbaXRlbV0KKworICAgIGRlZiBfY2hlY2tfaXNfY29tcGFyYWJsZShzZWxmLCBvdGhlcik6CisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKG90aGVyLCBSZWxlYXNlSW5mbyk6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoImNhbm5vdCBjb21wYXJlICVzIGFuZCAlcyIKKyAgICAgICAgICAgICAgICAlICh0eXBlKHNlbGYpLl9fbmFtZV9fLCB0eXBlKG90aGVyKS5fX25hbWVfXykpCisgICAgICAgIGVsaWYgc2VsZi5uYW1lICE9IG90aGVyLm5hbWU6CisgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoImNhbm5vdCBjb21wYXJlICVzIGFuZCAlcyIKKyAgICAgICAgICAgICAgICAlIChzZWxmLm5hbWUsIG90aGVyLm5hbWUpKQorCisgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gIjwlcyAlcz4iICUgKHNlbGYubmFtZSwgc2VsZi52ZXJzaW9uKQorCisgICAgZGVmIF9fZXFfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHNlbGYuX2NoZWNrX2lzX2NvbXBhcmFibGUob3RoZXIpCisgICAgICAgIHJldHVybiBzZWxmLnZlcnNpb24gPT0gb3RoZXIudmVyc2lvbgorCisgICAgZGVmIF9fbHRfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHNlbGYuX2NoZWNrX2lzX2NvbXBhcmFibGUob3RoZXIpCisgICAgICAgIHJldHVybiBzZWxmLnZlcnNpb24gPCBvdGhlci52ZXJzaW9uCisKKyAgICBkZWYgX19uZV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIG5vdCBzZWxmLl9fZXFfXyhvdGhlcikKKworICAgIGRlZiBfX2d0X18oc2VsZiwgb3RoZXIpOgorICAgICAgICByZXR1cm4gbm90IChzZWxmLl9fbHRfXyhvdGhlcikgb3Igc2VsZi5fX2VxX18ob3RoZXIpKQorCisgICAgZGVmIF9fbGVfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHJldHVybiBzZWxmLl9fZXFfXyhvdGhlcikgb3Igc2VsZi5fX2x0X18ob3RoZXIpCisKKyAgICBkZWYgX19nZV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX19lcV9fKG90aGVyKSBvciBzZWxmLl9fZ3RfXyhvdGhlcikKKworICAgICMgU2VlIGh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvcmVmZXJlbmNlL2RhdGFtb2RlbCNvYmplY3QuX19oYXNoX18KKyAgICBfX2hhc2hfXyA9IG9iamVjdC5fX2hhc2hfXworCisKK2NsYXNzIERpc3RJbmZvKEluZGV4UmVmZXJlbmNlKToKKyAgICAiIiJSZXByZXNlbnRzIGEgZGlzdHJpYnV0aW9uIHJldHJpZXZlZCBmcm9tIGFuIGluZGV4IChzZGlzdCwgYmRpc3QsIC4uLikKKyAgICAiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCByZWxlYXNlLCBkaXN0X3R5cGU9Tm9uZSwgdXJsPU5vbmUsIGhhc2huYW1lPU5vbmUsCisgICAgICAgICAgICAgICAgIGhhc2h2YWw9Tm9uZSwgaXNfZXh0ZXJuYWw9VHJ1ZSwgcHl0aG9uX3ZlcnNpb249Tm9uZSwKKyAgICAgICAgICAgICAgICAgaW5kZXg9Tm9uZSk6CisgICAgICAgICIiIkNyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiBEaXN0SW5mby4KKworICAgICAgICA6cGFyYW0gcmVsZWFzZTogYSBEaXN0SW5mbyBjbGFzcyBpcyByZWxhdGl2ZSB0byBhIHJlbGVhc2UuCisgICAgICAgIDpwYXJhbSBkaXN0X3R5cGU6IHRoZSB0eXBlIG9mIHRoZSBkaXN0IChlZy4gc291cmNlLCBiaW4tKiwgZXRjLikKKyAgICAgICAgOnBhcmFtIHVybDogVVJMIHdoZXJlIHdlIGZvdW5kIHRoaXMgZGlzdHJpYnV0aW9uCisgICAgICAgIDpwYXJhbSBoYXNobmFtZTogdGhlIG5hbWUgb2YgdGhlIGhhc2ggd2Ugd2FudCB0byB1c2UuIFJlZmVyIHRvIHRoZQorICAgICAgICAgICAgICAgICAgICAgICAgIGhhc2hsaWIubmV3IGRvY3VtZW50YXRpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24uCisgICAgICAgIDpwYXJhbSBoYXNodmFsOiB0aGUgaGFzaCB2YWx1ZS4KKyAgICAgICAgOnBhcmFtIGlzX2V4dGVybmFsOiB3ZSBuZWVkIHRvIGtub3cgaWYgdGhlIHByb3ZpZGVkIHVybCBjb21lcyBmcm9tCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW4gaW5kZXggYnJvd3NpbmcsIG9yIGZyb20gYW4gZXh0ZXJuYWwgcmVzb3VyY2UuCisKKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuc2V0X2luZGV4KGluZGV4KQorICAgICAgICBzZWxmLnJlbGVhc2UgPSByZWxlYXNlCisgICAgICAgIHNlbGYuZGlzdF90eXBlID0gZGlzdF90eXBlCisgICAgICAgIHNlbGYucHl0aG9uX3ZlcnNpb24gPSBweXRob25fdmVyc2lvbgorICAgICAgICBzZWxmLl91bnBhY2tlZF9kaXIgPSBOb25lCisgICAgICAgICMgc2V0IHRoZSBkb3dubG9hZGVkIHBhdGggdG8gTm9uZSBieSBkZWZhdWx0LiBUaGUgZ29hbCBoZXJlCisgICAgICAgICMgaXMgdG8gbm90IGRvd25sb2FkIGRpc3RyaWJ1dGlvbnMgbXVsdGlwbGUgdGltZXMKKyAgICAgICAgc2VsZi5kb3dubG9hZGVkX2xvY2F0aW9uID0gTm9uZQorICAgICAgICAjIFdlIHN0b3JlIHVybHMgaW4gZGljdCwgYmVjYXVzZSB3ZSBuZWVkIHRvIGhhdmUgYSBiaXQgbW9yZSBpbmZvcworICAgICAgICAjIHRoYW4gdGhlIHNpbXBsZSBVUkwuIEl0IHdpbGwgYmUgdXNlZCBsYXRlciB0byBmaW5kIHRoZSBnb29kIHVybCB0bworICAgICAgICAjIHVzZS4KKyAgICAgICAgIyBXZSBoYXZlIHR3byBfdXJsKiBhdHRyaWJ1dGVzOiBfdXJsIGFuZCB1cmxzLiB1cmxzIGNvbnRhaW5zIGEgbGlzdAorICAgICAgICAjIG9mIGRpY3QgZm9yIHRoZSBkaWZmZXJlbnQgdXJscywgYW5kIF91cmwgY29udGFpbnMgdGhlIGNob29zZW4gdXJsLCBpbgorICAgICAgICAjIG9yZGVyIHRvIGRvbnQgbWFrZSB0aGUgc2VsZWN0aW9uIHByb2Nlc3MgbXVsdGlwbGUgdGltZXMuCisgICAgICAgIHNlbGYudXJscyA9IFtdCisgICAgICAgIHNlbGYuX3VybCA9IE5vbmUKKyAgICAgICAgc2VsZi5hZGRfdXJsKHVybCwgaGFzaG5hbWUsIGhhc2h2YWwsIGlzX2V4dGVybmFsKQorCisgICAgZGVmIGFkZF91cmwoc2VsZiwgdXJsPU5vbmUsIGhhc2huYW1lPU5vbmUsIGhhc2h2YWw9Tm9uZSwgaXNfZXh0ZXJuYWw9VHJ1ZSk6CisgICAgICAgICIiIkFkZCBhIG5ldyB1cmwgdG8gdGhlIGxpc3Qgb2YgdXJscyIiIgorICAgICAgICBpZiBoYXNobmFtZSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBoYXNobGliLm5ldyhoYXNobmFtZSkKKyAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgIHJhaXNlIFVuc3VwcG9ydGVkSGFzaE5hbWUoaGFzaG5hbWUpCisgICAgICAgIGlmIHVybCBub3QgaW4gW3VbJ3VybCddIGZvciB1IGluIHNlbGYudXJsc106CisgICAgICAgICAgICBzZWxmLnVybHMuYXBwZW5kKHsKKyAgICAgICAgICAgICAgICAndXJsJzogdXJsLAorICAgICAgICAgICAgICAgICdoYXNobmFtZSc6IGhhc2huYW1lLAorICAgICAgICAgICAgICAgICdoYXNodmFsJzogaGFzaHZhbCwKKyAgICAgICAgICAgICAgICAnaXNfZXh0ZXJuYWwnOiBpc19leHRlcm5hbCwKKyAgICAgICAgICAgIH0pCisgICAgICAgICAgICAjIHJlc2V0IHRoZSB1cmwgc2VsZWN0aW9uIHByb2Nlc3MKKyAgICAgICAgICAgIHNlbGYuX3VybCA9IE5vbmUKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiB1cmwoc2VsZik6CisgICAgICAgICIiIlBpY2sgdXAgdGhlIHJpZ2h0IHVybCBmb3IgdGhlIGxpc3Qgb2YgdXJscyBpbiBzZWxmLnVybHMiIiIKKyAgICAgICAgIyBXZSByZXR1cm4gaW50ZXJuYWwgdXJscyBvdmVyIGV4dGVybmFscy4KKyAgICAgICAgIyBJZiB0aGVyZSBpcyBtb3JlIHRoYW4gb25lIGludGVybmFsIG9yIGV4dGVybmFsLCByZXR1cm4gdGhlIGZpcnN0CisgICAgICAgICMgb25lLgorICAgICAgICBpZiBzZWxmLl91cmwgaXMgTm9uZToKKyAgICAgICAgICAgIGlmIGxlbihzZWxmLnVybHMpID4gMToKKyAgICAgICAgICAgICAgICBpbnRlcm5hbHNfdXJscyA9IFt1IGZvciB1IGluIHNlbGYudXJscyBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgdVsnaXNfZXh0ZXJuYWwnXSA9PSBGYWxzZV0KKyAgICAgICAgICAgICAgICBpZiBsZW4oaW50ZXJuYWxzX3VybHMpID49IDE6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX3VybCA9IGludGVybmFsc191cmxzWzBdCisgICAgICAgICAgICBpZiBzZWxmLl91cmwgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBzZWxmLl91cmwgPSBzZWxmLnVybHNbMF0KKyAgICAgICAgcmV0dXJuIHNlbGYuX3VybAorCisgICAgQHByb3BlcnR5CisgICAgZGVmIGlzX3NvdXJjZShzZWxmKToKKyAgICAgICAgIiIicmV0dXJuIGlmIHRoZSBkaXN0cmlidXRpb24gaXMgYSBzb3VyY2Ugb25lIG9yIG5vdCIiIgorICAgICAgICByZXR1cm4gc2VsZi5kaXN0X3R5cGUgPT0gJ3NkaXN0JworCisgICAgZGVmIGRvd25sb2FkKHNlbGYsIHBhdGg9Tm9uZSk6CisgICAgICAgICIiIkRvd25sb2FkIHRoZSBkaXN0cmlidXRpb24gdG8gYSBwYXRoLCBhbmQgcmV0dXJuIGl0LgorCisgICAgICAgIElmIHRoZSBwYXRoIGlzIGdpdmVuIGluIHBhdGgsIHVzZSB0aGlzLCBvdGhlcndpc2UsIGdlbmVyYXRlcyBhIG5ldyBvbmUKKyAgICAgICAgUmV0dXJuIHRoZSBkb3dubG9hZCBsb2NhdGlvbi4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIHBhdGggaXMgTm9uZToKKyAgICAgICAgICAgIHBhdGggPSB0ZW1wZmlsZS5ta2R0ZW1wKCkKKworICAgICAgICAjIGlmIHdlIGRvIG5vdCBoYXZlIGRvd25sb2FkZWQgaXQgeWV0LCBkbyBpdC4KKyAgICAgICAgaWYgc2VsZi5kb3dubG9hZGVkX2xvY2F0aW9uIGlzIE5vbmU6CisgICAgICAgICAgICB1cmwgPSBzZWxmLnVybFsndXJsJ10KKyAgICAgICAgICAgIGFyY2hpdmVfbmFtZSA9IHVybGxpYi5wYXJzZS51cmxwYXJzZSh1cmwpWzJdLnNwbGl0KCcvJylbLTFdCisgICAgICAgICAgICBmaWxlbmFtZSwgaGVhZGVycyA9IHVybGxpYi5yZXF1ZXN0LnVybHJldHJpZXZlKHVybCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGggKyAiLyIgKyBhcmNoaXZlX25hbWUpCisgICAgICAgICAgICBzZWxmLmRvd25sb2FkZWRfbG9jYXRpb24gPSBmaWxlbmFtZQorICAgICAgICAgICAgc2VsZi5fY2hlY2tfbWQ1KGZpbGVuYW1lKQorICAgICAgICByZXR1cm4gc2VsZi5kb3dubG9hZGVkX2xvY2F0aW9uCisKKyAgICBkZWYgdW5wYWNrKHNlbGYsIHBhdGg9Tm9uZSk6CisgICAgICAgICIiIlVucGFjayB0aGUgZGlzdHJpYnV0aW9uIHRvIHRoZSBnaXZlbiBwYXRoLgorCisgICAgICAgIElmIG5vdCBkZXN0aW5hdGlvbiBpcyBnaXZlbiwgY3JlYXRlcyBhIHRlbXBvcmFyeSBsb2NhdGlvbi4KKworICAgICAgICBSZXR1cm5zIHRoZSBsb2NhdGlvbiBvZiB0aGUgZXh0cmFjdGVkIGZpbGVzIChyb290KS4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIG5vdCBzZWxmLl91bnBhY2tlZF9kaXI6CisgICAgICAgICAgICBpZiBwYXRoIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgcGF0aCA9IHRlbXBmaWxlLm1rZHRlbXAoKQorCisgICAgICAgICAgICBmaWxlbmFtZSA9IHNlbGYuZG93bmxvYWQocGF0aCkKKyAgICAgICAgICAgIHVucGFja19hcmNoaXZlKGZpbGVuYW1lLCBwYXRoKQorICAgICAgICAgICAgc2VsZi5fdW5wYWNrZWRfZGlyID0gcGF0aAorCisgICAgICAgIHJldHVybiBwYXRoCisKKyAgICBkZWYgX2NoZWNrX21kNShzZWxmLCBmaWxlbmFtZSk6CisgICAgICAgICIiIkNoZWNrIHRoYXQgdGhlIG1kNSBjaGVja3N1bSBvZiB0aGUgZ2l2ZW4gZmlsZSBtYXRjaGVzIHRoZSBvbmUgaW4KKyAgICAgICAgdXJsIHBhcmFtIiIiCisgICAgICAgIGhhc2huYW1lID0gc2VsZi51cmxbJ2hhc2huYW1lJ10KKyAgICAgICAgZXhwZWN0ZWRfaGFzaHZhbCA9IHNlbGYudXJsWydoYXNodmFsJ10KKyAgICAgICAgaWYgTm9uZSBub3QgaW4gKGV4cGVjdGVkX2hhc2h2YWwsIGhhc2huYW1lKToKKyAgICAgICAgICAgIHdpdGggb3BlbihmaWxlbmFtZSwgJ3JiJykgYXMgZjoKKyAgICAgICAgICAgICAgICBoYXNodmFsID0gaGFzaGxpYi5uZXcoaGFzaG5hbWUpCisgICAgICAgICAgICAgICAgaGFzaHZhbC51cGRhdGUoZi5yZWFkKCkpCisKKyAgICAgICAgICAgIGlmIGhhc2h2YWwuaGV4ZGlnZXN0KCkgIT0gZXhwZWN0ZWRfaGFzaHZhbDoKKyAgICAgICAgICAgICAgICByYWlzZSBIYXNoRG9lc05vdE1hdGNoKCJnb3QgJXMgaW5zdGVhZCBvZiAlcyIKKyAgICAgICAgICAgICAgICAgICAgJSAoaGFzaHZhbC5oZXhkaWdlc3QoKSwgZXhwZWN0ZWRfaGFzaHZhbCkpCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIGlmIHNlbGYucmVsZWFzZSBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuICI8PyA/ICVzPiIgJSBzZWxmLmRpc3RfdHlwZQorCisgICAgICAgIHJldHVybiAiPCVzICVzICVzPiIgJSAoCisgICAgICAgICAgICBzZWxmLnJlbGVhc2UubmFtZSwgc2VsZi5yZWxlYXNlLnZlcnNpb24sIHNlbGYuZGlzdF90eXBlIG9yICIiKQorCisKK2NsYXNzIFJlbGVhc2VzTGlzdChJbmRleFJlZmVyZW5jZSk6CisgICAgIiIiQSBjb250YWluZXIgb2YgUmVsZWFzZS4KKworICAgIFByb3ZpZGVzIHVzZWZ1bCBtZXRob2RzIGFuZCBmYWNpbGl0aWVzIHRvIHNvcnQgYW5kIGZpbHRlciByZWxlYXNlcy4KKyAgICAiIiIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbmFtZSwgcmVsZWFzZXM9Tm9uZSwgY29udGFpbnNfaGlkZGVuPUZhbHNlLCBpbmRleD1Ob25lKToKKyAgICAgICAgc2VsZi5zZXRfaW5kZXgoaW5kZXgpCisgICAgICAgIHNlbGYucmVsZWFzZXMgPSBbXQorICAgICAgICBzZWxmLm5hbWUgPSBuYW1lCisgICAgICAgIHNlbGYuY29udGFpbnNfaGlkZGVuID0gY29udGFpbnNfaGlkZGVuCisgICAgICAgIGlmIHJlbGVhc2VzOgorICAgICAgICAgICAgc2VsZi5hZGRfcmVsZWFzZXMocmVsZWFzZXMpCisKKyAgICBkZWYgZmV0Y2hfcmVsZWFzZXMoc2VsZik6CisgICAgICAgIHNlbGYuX2luZGV4LmdldF9yZWxlYXNlcyhzZWxmLm5hbWUpCisgICAgICAgIHJldHVybiBzZWxmLnJlbGVhc2VzCisKKyAgICBkZWYgZmlsdGVyKHNlbGYsIHByZWRpY2F0ZSk6CisgICAgICAgICIiIkZpbHRlciBhbmQgcmV0dXJuIGEgc3Vic2V0IG9mIHJlbGVhc2VzIG1hdGNoaW5nIHRoZSBnaXZlbiBwcmVkaWNhdGUuCisgICAgICAgICIiIgorICAgICAgICByZXR1cm4gUmVsZWFzZXNMaXN0KHNlbGYubmFtZSwgW3JlbGVhc2UgZm9yIHJlbGVhc2UgaW4gc2VsZi5yZWxlYXNlcworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHByZWRpY2F0ZS5tYXRjaChyZWxlYXNlLnZlcnNpb24pXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleD1zZWxmLl9pbmRleCkKKworICAgIGRlZiBnZXRfbGFzdChzZWxmLCByZXF1aXJlbWVudHMsIHByZWZlcl9maW5hbD1Ob25lKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSAibGFzdCIgcmVsZWFzZSwgdGhhdCBzYXRpc2Z5IHRoZSBnaXZlbiBwcmVkaWNhdGVzLgorCisgICAgICAgICJsYXN0IiBpcyBkZWZpbmVkIGJ5IHRoZSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgcmVsZWFzZXMsIHlvdSBhbHNvIGNvdWxkCisgICAgICAgIHNldCBwcmVmZXJfZmluYWwgcGFyYW1ldGVyIHRvIFRydWUgb3IgRmFsc2UgdG8gY2hhbmdlIHRoZSBvcmRlciByZXN1bHRzCisgICAgICAgICIiIgorICAgICAgICBwcmVkaWNhdGUgPSBnZXRfdmVyc2lvbl9wcmVkaWNhdGUocmVxdWlyZW1lbnRzKQorICAgICAgICByZWxlYXNlcyA9IHNlbGYuZmlsdGVyKHByZWRpY2F0ZSkKKyAgICAgICAgaWYgbGVuKHJlbGVhc2VzKSA9PSAwOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgcmVsZWFzZXMuc29ydF9yZWxlYXNlcyhwcmVmZXJfZmluYWwsIHJldmVyc2U9VHJ1ZSkKKyAgICAgICAgcmV0dXJuIHJlbGVhc2VzWzBdCisKKyAgICBkZWYgYWRkX3JlbGVhc2VzKHNlbGYsIHJlbGVhc2VzKToKKyAgICAgICAgIiIiQWRkIHJlbGVhc2VzIGluIHRoZSByZWxlYXNlIGxpc3QuCisKKyAgICAgICAgOnBhcmFtOiByZWxlYXNlcyBpcyBhIGxpc3Qgb2YgUmVsZWFzZUluZm8gb2JqZWN0cy4KKyAgICAgICAgIiIiCisgICAgICAgIGZvciByIGluIHJlbGVhc2VzOgorICAgICAgICAgICAgc2VsZi5hZGRfcmVsZWFzZShyZWxlYXNlPXIpCisKKyAgICBkZWYgYWRkX3JlbGVhc2Uoc2VsZiwgdmVyc2lvbj1Ob25lLCBkaXN0X3R5cGU9J3NkaXN0JywgcmVsZWFzZT1Ob25lLAorICAgICAgICAgICAgICAgICAgICAqKmRpc3RfYXJncyk6CisgICAgICAgICIiIkFkZCBhIHJlbGVhc2UgdG8gdGhlIGxpc3QuCisKKyAgICAgICAgVGhlIHJlbGVhc2UgY2FuIGJlIHBhc3NlZCBpbiB0aGUgYHJlbGVhc2VgIHBhcmFtZXRlciwgYW5kIGluIHRoaXMgY2FzZSwKKyAgICAgICAgaXQgd2lsbCBiZSBjcmF3bGVkIHRvIGV4dHJhY3QgdGhlIHVzZWZ1bCBpbmZvcm1hdGlvbnMgaWYgbmVjZXNzYXJ5LCBvcgorICAgICAgICB0aGUgcmVsZWFzZSBpbmZvcm1hdGlvbnMgY2FuIGJlIGRpcmVjdGx5IHBhc3NlZCBpbiB0aGUgYHZlcnNpb25gIGFuZAorICAgICAgICBgZGlzdF90eXBlYCBhcmd1bWVudHMuCisKKyAgICAgICAgT3RoZXIga2V5d29yZHMgYXJndW1lbnRzIGNhbiBiZSBwcm92aWRlZCwgYW5kIHdpbGwgYmUgZm9yd2FyZGVkIHRvIHRoZQorICAgICAgICBkaXN0cmlidXRpb24gY3JlYXRpb24gKGVnLiB0aGUgYXJndW1lbnRzIG9mIHRoZSBEaXN0SW5mbyBjb25zdHJ1Y3RvcikuCisgICAgICAgICIiIgorICAgICAgICBpZiByZWxlYXNlOgorICAgICAgICAgICAgaWYgcmVsZWFzZS5uYW1lLmxvd2VyKCkgIT0gc2VsZi5uYW1lLmxvd2VyKCk6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiJXMgaXMgbm90IHRoZSBzYW1lIHByb2plY3QgYXMgJXMiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChyZWxlYXNlLm5hbWUsIHNlbGYubmFtZSkpCisgICAgICAgICAgICB2ZXJzaW9uID0gc3RyKHJlbGVhc2UudmVyc2lvbikKKworICAgICAgICAgICAgaWYgdmVyc2lvbiBub3QgaW4gc2VsZi5nZXRfdmVyc2lvbnMoKToKKyAgICAgICAgICAgICAgICAjIGFwcGVuZCBvbmx5IGlmIG5vdCBhbHJlYWR5IGV4aXN0cworICAgICAgICAgICAgICAgIHNlbGYucmVsZWFzZXMuYXBwZW5kKHJlbGVhc2UpCisgICAgICAgICAgICBmb3IgZGlzdCBpbiByZWxlYXNlLmRpc3RzLnZhbHVlcygpOgorICAgICAgICAgICAgICAgIGZvciB1cmwgaW4gZGlzdC51cmxzOgorICAgICAgICAgICAgICAgICAgICBzZWxmLmFkZF9yZWxlYXNlKHZlcnNpb24sIGRpc3QuZGlzdF90eXBlLCAqKnVybCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG1hdGNoZXMgPSBbciBmb3IgciBpbiBzZWxmLnJlbGVhc2VzCisgICAgICAgICAgICAgICAgICAgICAgIGlmIHN0cihyLnZlcnNpb24pID09IHZlcnNpb24gYW5kIHIubmFtZSA9PSBzZWxmLm5hbWVdCisgICAgICAgICAgICBpZiBub3QgbWF0Y2hlczoKKyAgICAgICAgICAgICAgICByZWxlYXNlID0gUmVsZWFzZUluZm8oc2VsZi5uYW1lLCB2ZXJzaW9uLCBpbmRleD1zZWxmLl9pbmRleCkKKyAgICAgICAgICAgICAgICBzZWxmLnJlbGVhc2VzLmFwcGVuZChyZWxlYXNlKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByZWxlYXNlID0gbWF0Y2hlc1swXQorCisgICAgICAgICAgICByZWxlYXNlLmFkZF9kaXN0cmlidXRpb24oZGlzdF90eXBlPWRpc3RfdHlwZSwgKipkaXN0X2FyZ3MpCisKKyAgICBkZWYgc29ydF9yZWxlYXNlcyhzZWxmLCBwcmVmZXJfZmluYWw9RmFsc2UsIHJldmVyc2U9VHJ1ZSwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgIiIiU29ydCB0aGUgcmVzdWx0cyB3aXRoIHRoZSBnaXZlbiBwcm9wZXJ0aWVzLgorCisgICAgICAgIFRoZSBgcHJlZmVyX2ZpbmFsYCBhcmd1bWVudCBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IGlmIGZpbmFsCisgICAgICAgIGRpc3RyaWJ1dGlvbnMgKGVnLiBub3QgZGV2LCBiZXRhIG9yIGFscGhhKSB3b3VsZCBiZSBwcmVmZXJyZWQgb3Igbm90LgorCisgICAgICAgIFJlc3VsdHMgY2FuIGJlIGludmVydGVkIGJ5IHVzaW5nIGByZXZlcnNlYC4KKworICAgICAgICBBbnkgb3RoZXIgcGFyYW1ldGVyIHByb3ZpZGVkIHdpbGwgYmUgZm9yd2FyZGVkIHRvIHRoZSBzb3J0ZWQgY2FsbC4gWW91CisgICAgICAgIGNhbm5vdCByZWRlZmluZSB0aGUga2V5IGFyZ3VtZW50IG9mICJzb3J0ZWQiIGhlcmUsIGFzIGl0IGlzIHVzZWQKKyAgICAgICAgaW50ZXJuYWxseSB0byBzb3J0IHRoZSByZWxlYXNlcy4KKyAgICAgICAgIiIiCisKKyAgICAgICAgc29ydF9ieSA9IFtdCisgICAgICAgIGlmIHByZWZlcl9maW5hbDoKKyAgICAgICAgICAgIHNvcnRfYnkuYXBwZW5kKCJpc19maW5hbCIpCisgICAgICAgIHNvcnRfYnkuYXBwZW5kKCJ2ZXJzaW9uIikKKworICAgICAgICBzZWxmLnJlbGVhc2VzLnNvcnQoCisgICAgICAgICAgICBrZXk9bGFtYmRhIGk6IHR1cGxlKGdldGF0dHIoaSwgYXJnKSBmb3IgYXJnIGluIHNvcnRfYnkpLAorICAgICAgICAgICAgcmV2ZXJzZT1yZXZlcnNlLCAqYXJncywgKiprd2FyZ3MpCisKKyAgICBkZWYgZ2V0X3JlbGVhc2Uoc2VsZiwgdmVyc2lvbik6CisgICAgICAgICIiIlJldHVybiBhIHJlbGVhc2UgZnJvbSBpdHMgdmVyc2lvbi4iIiIKKyAgICAgICAgbWF0Y2hlcyA9IFtyIGZvciByIGluIHNlbGYucmVsZWFzZXMgaWYgc3RyKHIudmVyc2lvbikgPT0gdmVyc2lvbl0KKyAgICAgICAgaWYgbGVuKG1hdGNoZXMpICE9IDE6CisgICAgICAgICAgICByYWlzZSBLZXlFcnJvcih2ZXJzaW9uKQorICAgICAgICByZXR1cm4gbWF0Y2hlc1swXQorCisgICAgZGVmIGdldF92ZXJzaW9ucyhzZWxmKToKKyAgICAgICAgIiIiUmV0dXJuIGEgbGlzdCBvZiByZWxlYXNlcyB2ZXJzaW9ucyBjb250YWluZWQiIiIKKyAgICAgICAgcmV0dXJuIFtzdHIoci52ZXJzaW9uKSBmb3IgciBpbiBzZWxmLnJlbGVhc2VzXQorCisgICAgZGVmIF9fZ2V0aXRlbV9fKHNlbGYsIGtleSk6CisgICAgICAgIHJldHVybiBzZWxmLnJlbGVhc2VzW2tleV0KKworICAgIGRlZiBfX2xlbl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gbGVuKHNlbGYucmVsZWFzZXMpCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHN0cmluZyA9ICdQcm9qZWN0ICIlcyInICUgc2VsZi5uYW1lCisgICAgICAgIGlmIHNlbGYuZ2V0X3ZlcnNpb25zKCk6CisgICAgICAgICAgICBzdHJpbmcgKz0gJyB2ZXJzaW9uczogJXMnICUgJywgJy5qb2luKHNlbGYuZ2V0X3ZlcnNpb25zKCkpCisgICAgICAgIHJldHVybiAnPCVzPicgJSBzdHJpbmcKKworCitkZWYgZ2V0X2luZm9zX2Zyb21fdXJsKHVybCwgcHJvYmFibGVfZGlzdF9uYW1lPU5vbmUsIGlzX2V4dGVybmFsPVRydWUpOgorICAgICIiIkdldCB1c2VmdWwgaW5mb3JtYXRpb25zIGZyb20gYW4gVVJMLgorCisgICAgUmV0dXJuIGEgZGljdCBvZiAobmFtZSwgdmVyc2lvbiwgdXJsLCBoYXNodHlwZSwgaGFzaCwgaXNfZXh0ZXJuYWwpCisKKyAgICA6cGFyYW0gdXJsOiBjb21wbGV0ZSB1cmwgb2YgdGhlIGRpc3RyaWJ1dGlvbgorICAgIDpwYXJhbSBwcm9iYWJsZV9kaXN0X25hbWU6IEEgcHJvYmFibGUgbmFtZSBvZiB0aGUgcHJvamVjdC4KKyAgICA6cGFyYW0gaXNfZXh0ZXJuYWw6IFRlbGwgaWYgdGhlIHVybCBjb21tZXMgZnJvbSBhbiBpbmRleCBvciBmcm9tCisgICAgICAgICAgICAgICAgICAgICAgICBhbiBleHRlcm5hbCBVUkwuCisgICAgIiIiCisgICAgIyBpZiB0aGUgdXJsIGNvbnRhaW5zIGEgbWQ1IGhhc2gsIGdldCBpdC4KKyAgICBtZDVfaGFzaCA9IE5vbmUKKyAgICBtYXRjaCA9IE1ENV9IQVNILm1hdGNoKHVybCkKKyAgICBpZiBtYXRjaCBpcyBub3QgTm9uZToKKyAgICAgICAgbWQ1X2hhc2ggPSBtYXRjaC5ncm91cCgxKQorICAgICAgICAjIHJlbW92ZSB0aGUgaGFzaAorICAgICAgICB1cmwgPSB1cmwucmVwbGFjZSgiI21kNT0lcyIgJSBtZDVfaGFzaCwgIiIpCisKKyAgICAjIHBhcnNlIHRoZSBhcmNoaXZlIG5hbWUgdG8gZmluZCBkaXN0IG5hbWUgYW5kIHZlcnNpb24KKyAgICBhcmNoaXZlX25hbWUgPSB1cmxsaWIucGFyc2UudXJscGFyc2UodXJsKVsyXS5zcGxpdCgnLycpWy0xXQorICAgIGV4dGVuc2lvbl9tYXRjaGVkID0gRmFsc2UKKyAgICAjIHJlbW92ZSB0aGUgZXh0ZW5zaW9uIGZyb20gdGhlIG5hbWUKKyAgICBmb3IgZXh0IGluIEVYVEVOU0lPTlM6CisgICAgICAgIGlmIGFyY2hpdmVfbmFtZS5lbmRzd2l0aChleHQpOgorICAgICAgICAgICAgYXJjaGl2ZV9uYW1lID0gYXJjaGl2ZV9uYW1lWzotbGVuKGV4dCldCisgICAgICAgICAgICBleHRlbnNpb25fbWF0Y2hlZCA9IFRydWUKKworICAgIG5hbWUsIHZlcnNpb24gPSBzcGxpdF9hcmNoaXZlX25hbWUoYXJjaGl2ZV9uYW1lKQorICAgIGlmIGV4dGVuc2lvbl9tYXRjaGVkIGlzIFRydWU6CisgICAgICAgIHJldHVybiB7J25hbWUnOiBuYW1lLAorICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogdmVyc2lvbiwKKyAgICAgICAgICAgICAgICAndXJsJzogdXJsLAorICAgICAgICAgICAgICAgICdoYXNobmFtZSc6ICJtZDUiLAorICAgICAgICAgICAgICAgICdoYXNodmFsJzogbWQ1X2hhc2gsCisgICAgICAgICAgICAgICAgJ2lzX2V4dGVybmFsJzogaXNfZXh0ZXJuYWwsCisgICAgICAgICAgICAgICAgJ2Rpc3RfdHlwZSc6ICdzZGlzdCd9CisKKworZGVmIHNwbGl0X2FyY2hpdmVfbmFtZShhcmNoaXZlX25hbWUsIHByb2JhYmxlX25hbWU9Tm9uZSk6CisgICAgIiIiU3BsaXQgYW4gYXJjaGl2ZSBuYW1lIGludG8gdHdvIHBhcnRzOiBuYW1lIGFuZCB2ZXJzaW9uLgorCisgICAgUmV0dXJuIHRoZSB0dXBsZSAobmFtZSwgdmVyc2lvbikKKyAgICAiIiIKKyAgICAjIFRyeSB0byBkZXRlcm1pbmUgd2ljaCBwYXJ0IGlzIHRoZSBuYW1lIGFuZCB3aWNoIGlzIHRoZSB2ZXJzaW9uIHVzaW5nIHRoZQorICAgICMgIi0iIHNlcGFyYXRvci4gVGFrZSB0aGUgbGFyZ2VyIHBhcnQgdG8gYmUgdGhlIHZlcnNpb24gbnVtYmVyIHRoZW4gcmVkdWNlCisgICAgIyBpZiB0aGlzIG5vdCB3b3Jrcy4KKyAgICBkZWYgZWFnZXJfc3BsaXQoc3RyLCBtYXhzcGxpdD0yKToKKyAgICAgICAgIyBzcGxpdCB1c2luZyB0aGUgIi0iIHNlcGFyYXRvcgorICAgICAgICBzcGxpdHMgPSBzdHIucnNwbGl0KCItIiwgbWF4c3BsaXQpCisgICAgICAgIG5hbWUgPSBzcGxpdHNbMF0KKyAgICAgICAgdmVyc2lvbiA9ICItIi5qb2luKHNwbGl0c1sxOl0pCisgICAgICAgIGlmIHZlcnNpb24uc3RhcnRzd2l0aCgiLSIpOgorICAgICAgICAgICAgdmVyc2lvbiA9IHZlcnNpb25bMTpdCisgICAgICAgIGlmIHN1Z2dlc3Rfbm9ybWFsaXplZF92ZXJzaW9uKHZlcnNpb24pIGlzIE5vbmUgYW5kIG1heHNwbGl0ID49IDA6CisgICAgICAgICAgICAjIHdlIGRvbnQgZ2V0IGEgZ29vZCB2ZXJzaW9uIG51bWJlcjogcmVjdXJzZSAhCisgICAgICAgICAgICByZXR1cm4gZWFnZXJfc3BsaXQoc3RyLCBtYXhzcGxpdCAtIDEpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gbmFtZSwgdmVyc2lvbgorICAgIGlmIHByb2JhYmxlX25hbWUgaXMgbm90IE5vbmU6CisgICAgICAgIHByb2JhYmxlX25hbWUgPSBwcm9iYWJsZV9uYW1lLmxvd2VyKCkKKyAgICBuYW1lID0gTm9uZQorICAgIGlmIHByb2JhYmxlX25hbWUgaXMgbm90IE5vbmUgYW5kIHByb2JhYmxlX25hbWUgaW4gYXJjaGl2ZV9uYW1lOgorICAgICAgICAjIHdlIGdldCB0aGUgbmFtZSBmcm9tIHByb2JhYmxlX25hbWUsIGlmIGdpdmVuLgorICAgICAgICBuYW1lID0gcHJvYmFibGVfbmFtZQorICAgICAgICB2ZXJzaW9uID0gYXJjaGl2ZV9uYW1lLmxzdHJpcChuYW1lKQorICAgIGVsc2U6CisgICAgICAgIG5hbWUsIHZlcnNpb24gPSBlYWdlcl9zcGxpdChhcmNoaXZlX25hbWUpCisKKyAgICB2ZXJzaW9uID0gc3VnZ2VzdF9ub3JtYWxpemVkX3ZlcnNpb24odmVyc2lvbikKKyAgICBpZiB2ZXJzaW9uIGlzIG5vdCBOb25lIGFuZCBuYW1lICE9ICIiOgorICAgICAgICByZXR1cm4gbmFtZS5sb3dlcigpLCB2ZXJzaW9uCisgICAgZWxzZToKKyAgICAgICAgcmFpc2UgQ2FudFBhcnNlQXJjaGl2ZU5hbWUoYXJjaGl2ZV9uYW1lKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9weXBpL2Vycm9ycy5weSBiL0xpYi9wYWNrYWdpbmcvcHlwaS9lcnJvcnMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjE5MWFjMQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvcHlwaS9lcnJvcnMucHkKQEAgLTAsMCArMSwzOSBAQAorIiIiRXhjZXB0aW9ucyByYWlzZWQgYnkgcGFja2FnaW5nLnB5cGkgY29kZS4iIiIKKworZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdQeVBJRXJyb3IKKworCitjbGFzcyBQcm9qZWN0Tm90Rm91bmQoUGFja2FnaW5nUHlQSUVycm9yKToKKyAgICAiIiJQcm9qZWN0IGhhcyBub3QgYmVlbiBmb3VuZCIiIgorCisKK2NsYXNzIERpc3RyaWJ1dGlvbk5vdEZvdW5kKFBhY2thZ2luZ1B5UElFcnJvcik6CisgICAgIiIiVGhlIHJlbGVhc2UgaGFzIG5vdCBiZWVuIGZvdW5kIiIiCisKKworY2xhc3MgUmVsZWFzZU5vdEZvdW5kKFBhY2thZ2luZ1B5UElFcnJvcik6CisgICAgIiIiVGhlIHJlbGVhc2UgaGFzIG5vdCBiZWVuIGZvdW5kIiIiCisKKworY2xhc3MgQ2FudFBhcnNlQXJjaGl2ZU5hbWUoUGFja2FnaW5nUHlQSUVycm9yKToKKyAgICAiIiJBbiBhcmNoaXZlIG5hbWUgY2FuJ3QgYmUgcGFyc2VkIHRvIGZpbmQgZGlzdHJpYnV0aW9uIG5hbWUgYW5kIHZlcnNpb24iIiIKKworCitjbGFzcyBEb3dubG9hZEVycm9yKFBhY2thZ2luZ1B5UElFcnJvcik6CisgICAgIiIiQW4gZXJyb3IgaGFzIG9jY3VycyB3aGlsZSBkb3dubG9hZGluZyIiIgorCisKK2NsYXNzIEhhc2hEb2VzTm90TWF0Y2goRG93bmxvYWRFcnJvcik6CisgICAgIiIiQ29tcGFyZWQgaGFzaGVzIGRvZXMgbm90IG1hdGNoIiIiCisKKworY2xhc3MgVW5zdXBwb3J0ZWRIYXNoTmFtZShQYWNrYWdpbmdQeVBJRXJyb3IpOgorICAgICIiIkEgdW5zdXBwb3J0ZWQgaGFzaG5hbWUgaGFzIGJlZW4gdXNlZCIiIgorCisKK2NsYXNzIFVuYWJsZVRvRG93bmxvYWQoUGFja2FnaW5nUHlQSUVycm9yKToKKyAgICAiIiJBbGwgbWlycm9ycyBoYXZlIGJlZW4gdHJpZWQsIHdpdGhvdXQgc3VjY2VzcyIiIgorCisKK2NsYXNzIEludmFsaWRTZWFyY2hGaWVsZChQYWNrYWdpbmdQeVBJRXJyb3IpOgorICAgICIiIkFuIGludmFsaWQgc2VhcmNoIGZpZWxkIGhhcyBiZWVuIHVzZWQiIiIKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvcHlwaS9taXJyb3JzLnB5IGIvTGliL3BhY2thZ2luZy9weXBpL21pcnJvcnMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTY0NmFjZgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvcHlwaS9taXJyb3JzLnB5CkBAIC0wLDAgKzEsNTIgQEAKKyIiIlV0aWxpdGllcyByZWxhdGVkIHRvIHRoZSBtaXJyb3IgaW5mcmFzdHJ1Y3R1cmUgZGVmaW5lZCBpbiBQRVAgMzgxLiIiIgorCitmcm9tIHN0cmluZyBpbXBvcnQgYXNjaWlfbG93ZXJjYXNlCitpbXBvcnQgc29ja2V0CisKK0RFRkFVTFRfTUlSUk9SX1VSTCA9ICJsYXN0LnB5cGkucHl0aG9uLm9yZyIKKworCitkZWYgZ2V0X21pcnJvcnMoaG9zdG5hbWU9Tm9uZSk6CisgICAgIiIiUmV0dXJuIHRoZSBsaXN0IG9mIG1pcnJvcnMgZnJvbSB0aGUgbGFzdCByZWNvcmQgZm91bmQgb24gdGhlIEROUworICAgIGVudHJ5OjoKKworICAgID4+PiBmcm9tIHBhY2thZ2luZy5weXBpLm1pcnJvcnMgaW1wb3J0IGdldF9taXJyb3JzCisgICAgPj4+IGdldF9taXJyb3JzKCkKKyAgICBbJ2EucHlwaS5weXRob24ub3JnJywgJ2IucHlwaS5weXRob24ub3JnJywgJ2MucHlwaS5weXRob24ub3JnJywKKyAgICAnZC5weXBpLnB5dGhvbi5vcmcnXQorCisgICAgIiIiCisgICAgaWYgaG9zdG5hbWUgaXMgTm9uZToKKyAgICAgICAgaG9zdG5hbWUgPSBERUZBVUxUX01JUlJPUl9VUkwKKworICAgICMgcmV0dXJuIHRoZSBsYXN0IG1pcnJvciByZWdpc3RlcmVkIG9uIFB5UEkuCisgICAgdHJ5OgorICAgICAgICBob3N0bmFtZSA9IHNvY2tldC5nZXRob3N0YnluYW1lX2V4KGhvc3RuYW1lKVswXQorICAgIGV4Y2VwdCBzb2NrZXQuZ2FpZXJyb3I6CisgICAgICAgIHJldHVybiBbXQorICAgIGVuZF9sZXR0ZXIgPSBob3N0bmFtZS5zcGxpdCgiLiIsIDEpCisKKyAgICAjIGRldGVybWluZSB0aGUgbGlzdCBmcm9tIHRoZSBsYXN0IG9uZS4KKyAgICByZXR1cm4gWyIlcy4lcyIgJSAocywgZW5kX2xldHRlclsxXSkgZm9yIHMgaW4gc3RyaW5nX3JhbmdlKGVuZF9sZXR0ZXJbMF0pXQorCisKK2RlZiBzdHJpbmdfcmFuZ2UobGFzdCk6CisgICAgIiIiQ29tcHV0ZSB0aGUgcmFuZ2Ugb2Ygc3RyaW5nIGJldHdlZW4gImEiIGFuZCBsYXN0LgorCisgICAgVGhpcyB3b3JrcyBmb3Igc2ltcGxlICJhIHRvIHoiIGxpc3RzLCBidXQgYWxzbyBmb3IgImEgdG8genoiIGxpc3RzLgorICAgICIiIgorICAgIGZvciBrIGluIHJhbmdlKGxlbihsYXN0KSk6CisgICAgICAgIGZvciB4IGluIHByb2R1Y3QoYXNjaWlfbG93ZXJjYXNlLCByZXBlYXQ9KGsgKyAxKSk6CisgICAgICAgICAgICByZXN1bHQgPSAnJy5qb2luKHgpCisgICAgICAgICAgICB5aWVsZCByZXN1bHQKKyAgICAgICAgICAgIGlmIHJlc3VsdCA9PSBsYXN0OgorICAgICAgICAgICAgICAgIHJldHVybgorCisKK2RlZiBwcm9kdWN0KCphcmdzLCAqKmt3ZHMpOgorICAgIHBvb2xzID0gW3R1cGxlKGFyZykgZm9yIGFyZyBpbiBhcmdzXSAqIGt3ZHMuZ2V0KCdyZXBlYXQnLCAxKQorICAgIHJlc3VsdCA9IFtbXV0KKyAgICBmb3IgcG9vbCBpbiBwb29sczoKKyAgICAgICAgcmVzdWx0ID0gW3ggKyBbeV0gZm9yIHggaW4gcmVzdWx0IGZvciB5IGluIHBvb2xdCisgICAgZm9yIHByb2QgaW4gcmVzdWx0OgorICAgICAgICB5aWVsZCB0dXBsZShwcm9kKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9weXBpL3NpbXBsZS5weSBiL0xpYi9wYWNrYWdpbmcvcHlwaS9zaW1wbGUucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDRkOThlMQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvcHlwaS9zaW1wbGUucHkKQEAgLTAsMCArMSw0NjIgQEAKKyIiIlNwaWRlciB1c2luZyB0aGUgc2NyZWVuLXNjcmFwaW5nICJzaW1wbGUiIFB5UEkgQVBJLgorCitUaGlzIG1vZHVsZSBjb250YWlucyB0aGUgY2xhc3MgQ3Jhd2xlciwgYSBzaW1wbGUgc3BpZGVyIHRoYXQKK2NhbiBiZSB1c2VkIHRvIGZpbmQgYW5kIHJldHJpZXZlIGRpc3RyaWJ1dGlvbnMgZnJvbSBhIHByb2plY3QgaW5kZXgKKyhsaWtlIHRoZSBQeXRob24gUGFja2FnZSBJbmRleCksIHVzaW5nIGl0cyBzby1jYWxsZWQgc2ltcGxlIEFQSSAoc2VlCityZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gYXZhaWxhYmxlIGF0IGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvc2ltcGxlLykuCisiIiIKKworaW1wb3J0IGh0dHAuY2xpZW50CitpbXBvcnQgcmUKK2ltcG9ydCBzb2NrZXQKK2ltcG9ydCBzeXMKK2ltcG9ydCB1cmxsaWIucmVxdWVzdAoraW1wb3J0IHVybGxpYi5wYXJzZQoraW1wb3J0IHVybGxpYi5lcnJvcgoraW1wb3J0IG9zCisKK2Zyb20gZm5tYXRjaCBpbXBvcnQgdHJhbnNsYXRlCitmcm9tIGZ1bmN0b29scyBpbXBvcnQgd3JhcHMKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBsb2dnZXIKK2Zyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YQorZnJvbSBwYWNrYWdpbmcudmVyc2lvbiBpbXBvcnQgZ2V0X3ZlcnNpb25fcHJlZGljYXRlCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgX192ZXJzaW9uX18gYXMgcGFja2FnaW5nX3ZlcnNpb24KK2Zyb20gcGFja2FnaW5nLnB5cGkuYmFzZSBpbXBvcnQgQmFzZUNsaWVudAorZnJvbSBwYWNrYWdpbmcucHlwaS5kaXN0IGltcG9ydCAoUmVsZWFzZXNMaXN0LCBFWFRFTlNJT05TLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0X2luZm9zX2Zyb21fdXJsLCBNRDVfSEFTSCkKK2Zyb20gcGFja2FnaW5nLnB5cGkuZXJyb3JzIGltcG9ydCAoUGFja2FnaW5nUHlQSUVycm9yLCBEb3dubG9hZEVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBVbmFibGVUb0Rvd25sb2FkLCBDYW50UGFyc2VBcmNoaXZlTmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVsZWFzZU5vdEZvdW5kLCBQcm9qZWN0Tm90Rm91bmQpCitmcm9tIHBhY2thZ2luZy5weXBpLm1pcnJvcnMgaW1wb3J0IGdldF9taXJyb3JzCisKK19fYWxsX18gPSBbJ0NyYXdsZXInLCAnREVGQVVMVF9TSU1QTEVfSU5ERVhfVVJMJ10KKworIyAtLSBDb25zdGFudHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK0RFRkFVTFRfU0lNUExFX0lOREVYX1VSTCA9ICJodHRwOi8vYS5weXBpLnB5dGhvbi5vcmcvc2ltcGxlLyIKK0RFRkFVTFRfSE9TVFMgPSAoIioiLCkKK1NPQ0tFVF9USU1FT1VUID0gMTUKK1VTRVJfQUdFTlQgPSAiUHl0aG9uLXVybGxpYi8lcyBwYWNrYWdpbmcvJXMiICUgKAorICAgIHN5cy52ZXJzaW9uWzozXSwgcGFja2FnaW5nX3ZlcnNpb24pCisKKyMgLS0gUmVnZXhwcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitFR0dfRlJBR01FTlQgPSByZS5jb21waWxlKHInXmVnZz0oWy1BLVphLXowLTlfLl0rKSQnKQorSFJFRiA9IHJlLmNvbXBpbGUoIiIiaHJlZlxccyo9XFxzKlsnIl0/KFteJyI+IF0rKSIiIiwgcmUuSSkKK1VSTF9TQ0hFTUUgPSByZS5jb21waWxlKCcoWy0rLmEtejAtOV17Mix9KTonLCByZS5JKS5tYXRjaAorCisjIFRoaXMgcGF0dGVybiBtYXRjaGVzIGEgY2hhcmFjdGVyIGVudGl0eSByZWZlcmVuY2UgKGEgZGVjaW1hbCBudW1lcmljCisjIHJlZmVyZW5jZXMsIGEgaGV4YWRlY2ltYWwgbnVtZXJpYyByZWZlcmVuY2UsIG9yIGEgbmFtZWQgcmVmZXJlbmNlKS4KK0VOVElUWV9TVUIgPSByZS5jb21waWxlKHInJigjKFxkK3x4W1xkYS1mQS1GXSspfFtcdy46LV0rKTs/Jykuc3ViCitSRUwgPSByZS5jb21waWxlKCIiIjwoW14+XSpcc3JlbFxzKj1ccypbJyJdPyhbXiciPl0rKVtePl0qKT4iIiIsIHJlLkkpCisKKworZGVmIHNvY2tldF90aW1lb3V0KHRpbWVvdXQ9U09DS0VUX1RJTUVPVVQpOgorICAgICIiIkRlY29yYXRvciB0byBhZGQgYSBzb2NrZXQgdGltZW91dCB3aGVuIHJlcXVlc3RpbmcgcGFnZXMgb24gUHlQSS4KKyAgICAiIiIKKyAgICBkZWYgd3JhcHBlcihmdW5jKToKKyAgICAgICAgQHdyYXBzKGZ1bmMpCisgICAgICAgIGRlZiB3cmFwcGVkKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICAgICBvbGRfdGltZW91dCA9IHNvY2tldC5nZXRkZWZhdWx0dGltZW91dCgpCisgICAgICAgICAgICBpZiBoYXNhdHRyKHNlbGYsICJfdGltZW91dCIpOgorICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBzZWxmLl90aW1lb3V0CisgICAgICAgICAgICBzb2NrZXQuc2V0ZGVmYXVsdHRpbWVvdXQodGltZW91dCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICByZXR1cm4gZnVuYyhzZWxmLCAqYXJncywgKiprd2FyZ3MpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHNvY2tldC5zZXRkZWZhdWx0dGltZW91dChvbGRfdGltZW91dCkKKyAgICAgICAgcmV0dXJuIHdyYXBwZWQKKyAgICByZXR1cm4gd3JhcHBlcgorCisKK2RlZiB3aXRoX21pcnJvcl9zdXBwb3J0KCk6CisgICAgIiIiRGVjb3JhdG9yIHRoYXQgbWFrZXMgdGhlIG1pcnJvcmluZyBzdXBwb3J0IGVhc2llciIiIgorICAgIGRlZiB3cmFwcGVyKGZ1bmMpOgorICAgICAgICBAd3JhcHMoZnVuYykKKyAgICAgICAgZGVmIHdyYXBwZWQoc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICByZXR1cm4gZnVuYyhzZWxmLCAqYXJncywgKiprd2FyZ3MpCisgICAgICAgICAgICBleGNlcHQgRG93bmxvYWRFcnJvcjoKKyAgICAgICAgICAgICAgICAjIGlmIGFuIGVycm9yIG9jY3VycywgdHJ5IHdpdGggdGhlIG5leHQgaW5kZXhfdXJsCisgICAgICAgICAgICAgICAgaWYgc2VsZi5fbWlycm9yc190cmllcyA+PSBzZWxmLl9taXJyb3JzX21heF90cmllczoKKyAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fc3dpdGNoX3RvX25leHRfbWlycm9yKCkKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IEtleUVycm9yOgorICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgVW5hYmxlVG9Eb3dubG9hZCgiVHJpZWQgYWxsIG1pcnJvcnMiKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX21pcnJvcnNfdHJpZXMgKz0gMQorICAgICAgICAgICAgICAgIHNlbGYuX3Byb2plY3RzLmNsZWFyKCkKKyAgICAgICAgICAgICAgICByZXR1cm4gd3JhcHBlZChzZWxmLCAqYXJncywgKiprd2FyZ3MpCisgICAgICAgIHJldHVybiB3cmFwcGVkCisgICAgcmV0dXJuIHdyYXBwZXIKKworCitjbGFzcyBDcmF3bGVyKEJhc2VDbGllbnQpOgorICAgICIiIlByb3ZpZGVzIHVzZWZ1bCB0b29scyB0byByZXF1ZXN0IHRoZSBQeXRob24gUGFja2FnZSBJbmRleCBzaW1wbGUgQVBJLgorCisgICAgWW91IGNhbiBzcGVjaWZ5IGJvdGggbWlycm9ycyBhbmQgbWlycm9yc191cmwsIGJ1dCBtaXJyb3JzX3VybCB3aWxsIG9ubHkgYmUKKyAgICB1c2VkIGlmIG1pcnJvcnMgaXMgc2V0IHRvIE5vbmUuCisKKyAgICA6cGFyYW0gaW5kZXhfdXJsOiB0aGUgdXJsIG9mIHRoZSBzaW1wbGUgaW5kZXggdG8gc2VhcmNoIG9uLgorICAgIDpwYXJhbSBwcmVmZXJfZmluYWw6IGlmIHRoZSB2ZXJzaW9uIGlzIG5vdCBtZW50aW9uZWQsIGFuZCB0aGUgbGFzdAorICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24gaXMgbm90IGEgImZpbmFsIiBvbmUgKGFscGhhLCBiZXRhLCBldGMuKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBwaWNrIHVwIHRoZSBsYXN0IGZpbmFsIHZlcnNpb24uCisgICAgOnBhcmFtIHByZWZlcl9zb3VyY2U6IGlmIHRoZSBkaXN0cmlidXRpb24gdHlwZSBpcyBub3QgbWVudGlvbmVkLCBwaWNrIHVwCisgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBzb3VyY2Ugb25lIGlmIGF2YWlsYWJsZS4KKyAgICA6cGFyYW0gZm9sbG93X2V4dGVybmFsczogdGVsbCBpZiBmb2xsb3dpbmcgZXh0ZXJuYWwgbGlua3MgaXMgbmVlZGVkIG9yCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdC4gRGVmYXVsdCBpcyBGYWxzZS4KKyAgICA6cGFyYW0gaG9zdHM6IGEgbGlzdCBvZiBob3N0cyBhbGxvd2VkIHRvIGJlIHByb2Nlc3NlZCB3aGlsZSB1c2luZworICAgICAgICAgICAgICAgICAgZm9sbG93X2V4dGVybmFscz1UcnVlLiBEZWZhdWx0IGJlaGF2aW9yIGlzIHRvIGZvbGxvdyBhbGwKKyAgICAgICAgICAgICAgICAgIGhvc3RzLgorICAgIDpwYXJhbSBmb2xsb3dfZXh0ZXJuYWxzOiB0ZWxsIGlmIGZvbGxvd2luZyBleHRlcm5hbCBsaW5rcyBpcyBuZWVkZWQgb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm90LiBEZWZhdWx0IGlzIEZhbHNlLgorICAgIDpwYXJhbSBtaXJyb3JzX3VybDogdGhlIHVybCB0byBsb29rIG9uIGZvciBETlMgcmVjb3JkcyBnaXZpbmcgbWlycm9yCisgICAgICAgICAgICAgICAgICAgICAgICBhZGRyZXNzZXMuCisgICAgOnBhcmFtIG1pcnJvcnM6IGEgbGlzdCBvZiBtaXJyb3JzIChzZWUgUEVQIDM4MSkuCisgICAgOnBhcmFtIHRpbWVvdXQ6IHRpbWUgaW4gc2Vjb25kcyB0byBjb25zaWRlciBhIHVybCBoYXMgdGltZW91dGVkLgorICAgIDpwYXJhbSBtaXJyb3JzX21heF90cmllcyI6IG51bWJlciBvZiB0aW1lcyB0byB0cnkgcmVxdWVzdGluZyBpbmZvcm1hdGlvbnMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbiBtaXJyb3JzIGJlZm9yZSBzd2l0Y2hpbmcuCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgaW5kZXhfdXJsPURFRkFVTFRfU0lNUExFX0lOREVYX1VSTCwgcHJlZmVyX2ZpbmFsPUZhbHNlLAorICAgICAgICAgICAgICAgICBwcmVmZXJfc291cmNlPVRydWUsIGhvc3RzPURFRkFVTFRfSE9TVFMsCisgICAgICAgICAgICAgICAgIGZvbGxvd19leHRlcm5hbHM9RmFsc2UsIG1pcnJvcnNfdXJsPU5vbmUsIG1pcnJvcnM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgdGltZW91dD1TT0NLRVRfVElNRU9VVCwgbWlycm9yc19tYXhfdHJpZXM9MCk6CisgICAgICAgIHN1cGVyKENyYXdsZXIsIHNlbGYpLl9faW5pdF9fKHByZWZlcl9maW5hbCwgcHJlZmVyX3NvdXJjZSkKKyAgICAgICAgc2VsZi5mb2xsb3dfZXh0ZXJuYWxzID0gZm9sbG93X2V4dGVybmFscworCisgICAgICAgICMgbWlycm9yaW5nIGF0dHJpYnV0ZXMuCisgICAgICAgIHBhcnNlZCA9IHVybGxpYi5wYXJzZS51cmxwYXJzZShpbmRleF91cmwpCisgICAgICAgIHNlbGYuc2NoZW1lID0gcGFyc2VkWzBdCisgICAgICAgIGlmIHNlbGYuc2NoZW1lID09ICdmaWxlJzoKKyAgICAgICAgICAgIGVuZGVyID0gb3MucGF0aC5zZXAKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGVuZGVyID0gJy8nCisgICAgICAgIGlmIG5vdCBpbmRleF91cmwuZW5kc3dpdGgoZW5kZXIpOgorICAgICAgICAgICAgaW5kZXhfdXJsICs9IGVuZGVyCisgICAgICAgICMgaWYgbm8gbWlycm9ycyBhcmUgZGVmaW5lZCwgdXNlIHRoZSBtZXRob2QgZGVzY3JpYmVkIGluIFBFUCAzODEuCisgICAgICAgIGlmIG1pcnJvcnMgaXMgTm9uZToKKyAgICAgICAgICAgIG1pcnJvcnMgPSBnZXRfbWlycm9ycyhtaXJyb3JzX3VybCkKKyAgICAgICAgc2VsZi5fbWlycm9ycyA9IHNldChtaXJyb3JzKQorICAgICAgICBzZWxmLl9taXJyb3JzX3VzZWQgPSBzZXQoKQorICAgICAgICBzZWxmLmluZGV4X3VybCA9IGluZGV4X3VybAorICAgICAgICBzZWxmLl9taXJyb3JzX21heF90cmllcyA9IG1pcnJvcnNfbWF4X3RyaWVzCisgICAgICAgIHNlbGYuX21pcnJvcnNfdHJpZXMgPSAwCisgICAgICAgIHNlbGYuX3RpbWVvdXQgPSB0aW1lb3V0CisKKyAgICAgICAgIyBjcmVhdGUgYSByZWdleHAgdG8gbWF0Y2ggYWxsIGdpdmVuIGhvc3RzCisgICAgICAgIHNlbGYuX2FsbG93ZWRfaG9zdHMgPSByZS5jb21waWxlKCd8Jy5qb2luKG1hcCh0cmFuc2xhdGUsIGhvc3RzKSkpLm1hdGNoCisKKyAgICAgICAgIyB3ZSBrZWVwIGFuIGluZGV4IG9mIHBhZ2VzIHdlIGhhdmUgcHJvY2Vzc2VkLCBpbiBvcmRlciB0byBhdm9pZAorICAgICAgICAjIHNjYW5uaW5nIHRoZW0gbXVsdHBsZSB0aW1lIChlZy4gaWYgdGhlcmUgaXMgbXVsdGlwbGUgcGFnZXMgcG9pbnRpbmcKKyAgICAgICAgIyBvbiBvbmUpCisgICAgICAgIHNlbGYuX3Byb2Nlc3NlZF91cmxzID0gW10KKyAgICAgICAgc2VsZi5fcHJvamVjdHMgPSB7fQorCisgICAgQHdpdGhfbWlycm9yX3N1cHBvcnQoKQorICAgIGRlZiBzZWFyY2hfcHJvamVjdHMoc2VsZiwgbmFtZT1Ob25lLCAqKmt3YXJncyk6CisgICAgICAgICIiIlNlYXJjaCB0aGUgaW5kZXggZm9yIHByb2plY3RzIGNvbnRhaW5pbmcgdGhlIGdpdmVuIG5hbWUuCisKKyAgICAgICAgUmV0dXJuIGEgbGlzdCBvZiBuYW1lcy4KKyAgICAgICAgIiIiCisgICAgICAgIGlmICcqJyBpbiBuYW1lOgorICAgICAgICAgICAgbmFtZS5yZXBsYWNlKCcqJywgJy4qJykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG5hbWUgPSAiJXMlcyVzIiAlICgnKi4/JywgbmFtZSwgJyouPycpCisgICAgICAgIG5hbWUgPSBuYW1lLnJlcGxhY2UoJyonLCAnW148XSonKSAgIyBhdm9pZCBtYXRjaGluZyBlbmQgdGFnCisgICAgICAgIHBhdHRlcm4gPSAoJzxhW14+XSo+KCVzKTwvYT4nICUgbmFtZSkuZW5jb2RlKCd1dGYtOCcpCisgICAgICAgIHByb2plY3RuYW1lID0gcmUuY29tcGlsZShwYXR0ZXJuLCByZS5JKQorICAgICAgICBtYXRjaGluZ19wcm9qZWN0cyA9IFtdCisKKyAgICAgICAgd2l0aCBzZWxmLl9vcGVuX3VybChzZWxmLmluZGV4X3VybCkgYXMgaW5kZXg6CisgICAgICAgICAgICBpbmRleF9jb250ZW50ID0gaW5kZXgucmVhZCgpCisKKyAgICAgICAgZm9yIG1hdGNoIGluIHByb2plY3RuYW1lLmZpbmRpdGVyKGluZGV4X2NvbnRlbnQpOgorICAgICAgICAgICAgcHJvamVjdF9uYW1lID0gbWF0Y2guZ3JvdXAoMSkuZGVjb2RlKCd1dGYtOCcpCisgICAgICAgICAgICBtYXRjaGluZ19wcm9qZWN0cy5hcHBlbmQoc2VsZi5fZ2V0X3Byb2plY3QocHJvamVjdF9uYW1lKSkKKyAgICAgICAgcmV0dXJuIG1hdGNoaW5nX3Byb2plY3RzCisKKyAgICBkZWYgZ2V0X3JlbGVhc2VzKHNlbGYsIHJlcXVpcmVtZW50cywgcHJlZmVyX2ZpbmFsPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICBmb3JjZV91cGRhdGU9RmFsc2UpOgorICAgICAgICAiIiJTZWFyY2ggZm9yIHJlbGVhc2VzIGFuZCByZXR1cm4gYSBSZWxlYXNlc0xpc3Qgb2JqZWN0IGNvbnRhaW5pbmcKKyAgICAgICAgdGhlIHJlc3VsdHMuCisgICAgICAgICIiIgorICAgICAgICBwcmVkaWNhdGUgPSBnZXRfdmVyc2lvbl9wcmVkaWNhdGUocmVxdWlyZW1lbnRzKQorICAgICAgICBpZiBwcmVkaWNhdGUubmFtZS5sb3dlcigpIGluIHNlbGYuX3Byb2plY3RzIGFuZCBub3QgZm9yY2VfdXBkYXRlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3Byb2plY3RzLmdldChwcmVkaWNhdGUubmFtZS5sb3dlcigpKQorICAgICAgICBwcmVmZXJfZmluYWwgPSBzZWxmLl9nZXRfcHJlZmVyX2ZpbmFsKHByZWZlcl9maW5hbCkKKyAgICAgICAgbG9nZ2VyLmRlYnVnKCdSZWFkaW5nIGluZm8gb24gUHlQSSBhYm91dCAlcycsIHByZWRpY2F0ZS5uYW1lKQorICAgICAgICBzZWxmLl9wcm9jZXNzX2luZGV4X3BhZ2UocHJlZGljYXRlLm5hbWUpCisKKyAgICAgICAgaWYgcHJlZGljYXRlLm5hbWUubG93ZXIoKSBub3QgaW4gc2VsZi5fcHJvamVjdHM6CisgICAgICAgICAgICByYWlzZSBQcm9qZWN0Tm90Rm91bmQKKworICAgICAgICByZWxlYXNlcyA9IHNlbGYuX3Byb2plY3RzLmdldChwcmVkaWNhdGUubmFtZS5sb3dlcigpKQorICAgICAgICByZWxlYXNlcy5zb3J0X3JlbGVhc2VzKHByZWZlcl9maW5hbD1wcmVmZXJfZmluYWwpCisgICAgICAgIHJldHVybiByZWxlYXNlcworCisgICAgZGVmIGdldF9yZWxlYXNlKHNlbGYsIHJlcXVpcmVtZW50cywgcHJlZmVyX2ZpbmFsPU5vbmUpOgorICAgICAgICAiIiJSZXR1cm4gb25seSBvbmUgcmVsZWFzZSB0aGF0IGZ1bGZpbGwgdGhlIGdpdmVuIHJlcXVpcmVtZW50cyIiIgorICAgICAgICBwcmVkaWNhdGUgPSBnZXRfdmVyc2lvbl9wcmVkaWNhdGUocmVxdWlyZW1lbnRzKQorICAgICAgICByZWxlYXNlID0gc2VsZi5nZXRfcmVsZWFzZXMocHJlZGljYXRlLCBwcmVmZXJfZmluYWwpXAorICAgICAgICAgICAgICAgICAgICAgIC5nZXRfbGFzdChwcmVkaWNhdGUpCisgICAgICAgIGlmIG5vdCByZWxlYXNlOgorICAgICAgICAgICAgcmFpc2UgUmVsZWFzZU5vdEZvdW5kKCJObyByZWxlYXNlIG1hdGNoZXMgdGhlIGdpdmVuIGNyaXRlcmlhcyIpCisgICAgICAgIHJldHVybiByZWxlYXNlCisKKyAgICBkZWYgZ2V0X2Rpc3RyaWJ1dGlvbnMoc2VsZiwgcHJvamVjdF9uYW1lLCB2ZXJzaW9uKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBkaXN0cmlidXRpb25zIGZvdW5kIG9uIHRoZSBpbmRleCBmb3IgdGhlIHNwZWNpZmljIGdpdmVuCisgICAgICAgIHJlbGVhc2UiIiIKKyAgICAgICAgIyBhcyB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiBnZXRfcmVsZWFzZSBpcyB0byByZXR1cm4gYSByZWxlYXNlCisgICAgICAgICMgY29udGFpbmluZyB0aGUgZGlzdHJpYnV0aW9ucywganVzdCBhbGlhcyBpdC4KKyAgICAgICAgcmV0dXJuIHNlbGYuZ2V0X3JlbGVhc2UoIiVzICglcykiICUgKHByb2plY3RfbmFtZSwgdmVyc2lvbikpCisKKyAgICBkZWYgZ2V0X21ldGFkYXRhKHNlbGYsIHByb2plY3RfbmFtZSwgdmVyc2lvbik6CisgICAgICAgICIiIlJldHVybiB0aGUgbWV0YWRhdGFzIGZyb20gdGhlIHNpbXBsZSBpbmRleC4KKworICAgICAgICBDdXJyZW50bHksIGRvd25sb2FkIG9uZSBhcmNoaXZlLCBleHRyYWN0IGl0IGFuZCB1c2UgdGhlIFBLRy1JTkZPIGZpbGUuCisgICAgICAgICIiIgorICAgICAgICByZWxlYXNlID0gc2VsZi5nZXRfZGlzdHJpYnV0aW9ucyhwcm9qZWN0X25hbWUsIHZlcnNpb24pCisgICAgICAgIGlmIG5vdCByZWxlYXNlLm1ldGFkYXRhOgorICAgICAgICAgICAgbG9jYXRpb24gPSByZWxlYXNlLmdldF9kaXN0cmlidXRpb24oKS51bnBhY2soKQorICAgICAgICAgICAgcGtnX2luZm8gPSBvcy5wYXRoLmpvaW4obG9jYXRpb24sICdQS0ctSU5GTycpCisgICAgICAgICAgICByZWxlYXNlLm1ldGFkYXRhID0gTWV0YWRhdGEocGtnX2luZm8pCisgICAgICAgIHJldHVybiByZWxlYXNlCisKKyAgICBkZWYgX3N3aXRjaF90b19uZXh0X21pcnJvcihzZWxmKToKKyAgICAgICAgIiIiU3dpdGNoIHRvIHRoZSBuZXh0IG1pcnJvciAoZWcuIHBvaW50IHNlbGYuaW5kZXhfdXJsIHRvIHRoZSBuZXh0CisgICAgICAgIG1pcnJvciB1cmwuCisKKyAgICAgICAgUmFpc2UgYSBLZXlFcnJvciBpZiBhbGwgbWlycm9ycyBoYXZlIGJlZW4gdHJpZWQuCisgICAgICAgICIiIgorICAgICAgICBzZWxmLl9taXJyb3JzX3VzZWQuYWRkKHNlbGYuaW5kZXhfdXJsKQorICAgICAgICBpbmRleF91cmwgPSBzZWxmLl9taXJyb3JzLnBvcCgpCisgICAgICAgICMgWFhYIHVzZSB1cmxsaWIucGFyc2UgZm9yIGEgcmVhbCBjaGVjayBvZiBtaXNzaW5nIHNjaGVtZSBwYXJ0CisgICAgICAgIGlmIG5vdCBpbmRleF91cmwuc3RhcnRzd2l0aCgoImh0dHA6Ly8iLCAiaHR0cHM6Ly8iLCAiZmlsZTovLyIpKToKKyAgICAgICAgICAgIGluZGV4X3VybCA9ICJodHRwOi8vJXMiICUgaW5kZXhfdXJsCisKKyAgICAgICAgaWYgbm90IGluZGV4X3VybC5lbmRzd2l0aCgiL3NpbXBsZSIpOgorICAgICAgICAgICAgaW5kZXhfdXJsID0gIiVzL3NpbXBsZS8iICUgaW5kZXhfdXJsCisKKyAgICAgICAgc2VsZi5pbmRleF91cmwgPSBpbmRleF91cmwKKworICAgIGRlZiBfaXNfYnJvd3NhYmxlKHNlbGYsIHVybCk6CisgICAgICAgICIiIlRlbGwgaWYgdGhlIGdpdmVuIFVSTCBjYW4gYmUgYnJvd3NlZCBvciBub3QuCisKKyAgICAgICAgSXQgdXNlcyB0aGUgZm9sbG93X2V4dGVybmFscyBhbmQgdGhlIGhvc3RzIGxpc3QgdG8gdGVsbCBpZiB0aGUgZ2l2ZW4KKyAgICAgICAgdXJsIGlzIGJyb3dzYWJsZSBvciBub3QuCisgICAgICAgICIiIgorICAgICAgICAjIGlmIF9pbmRleF91cmwgaXMgY29udGFpbmVkIGluIHRoZSBnaXZlbiBVUkwsIHdlIGFyZSBicm93c2luZyB0aGUKKyAgICAgICAgIyBpbmRleCwgYW5kIGl0J3MgYWx3YXlzICJicm93c2FibGUiLgorICAgICAgICAjIGxvY2FsIGZpbGVzIGFyZSBhbHdheXMgY29uc2lkZXJlZCBicm93YWJsZSByZXNvdXJjZXMKKyAgICAgICAgaWYgc2VsZi5pbmRleF91cmwgaW4gdXJsIG9yIHVybGxpYi5wYXJzZS51cmxwYXJzZSh1cmwpWzBdID09ICJmaWxlIjoKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgICAgIGVsaWYgc2VsZi5mb2xsb3dfZXh0ZXJuYWxzOgorICAgICAgICAgICAgaWYgc2VsZi5fYWxsb3dlZF9ob3N0cyh1cmxsaWIucGFyc2UudXJscGFyc2UodXJsKVsxXSk6ICAjIDEgaXMgbmV0bG9jCisgICAgICAgICAgICAgICAgcmV0dXJuIFRydWUKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgZGVmIF9pc19kaXN0cmlidXRpb24oc2VsZiwgbGluayk6CisgICAgICAgICIiIlRlbGwgaWYgdGhlIGdpdmVuIFVSTCBtYXRjaGVzIHRvIGEgZGlzdHJpYnV0aW9uIG5hbWUgb3Igbm90LgorICAgICAgICAiIiIKKyAgICAgICAgI1hYWCBmaW5kIGEgYmV0dGVyIHdheSB0byBjaGVjayB0aGF0IGxpbmtzIGFyZSBkaXN0cmlidXRpb25zCisgICAgICAgICMgVXNpbmcgYSByZWdleHAgPworICAgICAgICBmb3IgZXh0IGluIEVYVEVOU0lPTlM6CisgICAgICAgICAgICBpZiBleHQgaW4gbGluazoKKyAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGRlZiBfcmVnaXN0ZXJfcmVsZWFzZShzZWxmLCByZWxlYXNlPU5vbmUsIHJlbGVhc2VfaW5mbz17fSk6CisgICAgICAgICIiIlJlZ2lzdGVyIGEgbmV3IHJlbGVhc2UuCisKKyAgICAgICAgQm90aCBhIHJlbGVhc2Ugb3IgYSBkaWN0IG9mIHJlbGVhc2VfaW5mbyBjYW4gYmUgcHJvdmlkZWQsIHRoZSBwcmVmZXJyZWQKKyAgICAgICAgd2F5IChlZy4gdGhlIHF1aWNrZXIpIGlzIHRoZSBkaWN0IG9uZS4KKworICAgICAgICBSZXR1cm4gdGhlIGxpc3Qgb2YgZXhpc3RpbmcgcmVsZWFzZXMgZm9yIHRoZSBnaXZlbiBwcm9qZWN0LgorICAgICAgICAiIiIKKyAgICAgICAgIyBDaGVjayBpZiB0aGUgcHJvamVjdCBhbHJlYWR5IGhhcyBhIGxpc3Qgb2YgcmVsZWFzZXMgKHJlZmVyaW5nIHRvCisgICAgICAgICMgdGhlIHByb2plY3QgbmFtZSkuIElmIG5vdCwgY3JlYXRlIGEgbmV3IHJlbGVhc2UgbGlzdC4KKyAgICAgICAgIyBUaGVuLCBhZGQgdGhlIHJlbGVhc2UgdG8gdGhlIGxpc3QuCisgICAgICAgIGlmIHJlbGVhc2U6CisgICAgICAgICAgICBuYW1lID0gcmVsZWFzZS5uYW1lCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBuYW1lID0gcmVsZWFzZV9pbmZvWyduYW1lJ10KKyAgICAgICAgaWYgbmFtZS5sb3dlcigpIG5vdCBpbiBzZWxmLl9wcm9qZWN0czoKKyAgICAgICAgICAgIHNlbGYuX3Byb2plY3RzW25hbWUubG93ZXIoKV0gPSBSZWxlYXNlc0xpc3QobmFtZSwgaW5kZXg9c2VsZi5faW5kZXgpCisKKyAgICAgICAgaWYgcmVsZWFzZToKKyAgICAgICAgICAgIHNlbGYuX3Byb2plY3RzW25hbWUubG93ZXIoKV0uYWRkX3JlbGVhc2UocmVsZWFzZT1yZWxlYXNlKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbmFtZSA9IHJlbGVhc2VfaW5mby5wb3AoJ25hbWUnKQorICAgICAgICAgICAgdmVyc2lvbiA9IHJlbGVhc2VfaW5mby5wb3AoJ3ZlcnNpb24nKQorICAgICAgICAgICAgZGlzdF90eXBlID0gcmVsZWFzZV9pbmZvLnBvcCgnZGlzdF90eXBlJykKKyAgICAgICAgICAgIHNlbGYuX3Byb2plY3RzW25hbWUubG93ZXIoKV0uYWRkX3JlbGVhc2UodmVyc2lvbiwgZGlzdF90eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKnJlbGVhc2VfaW5mbykKKyAgICAgICAgcmV0dXJuIHNlbGYuX3Byb2plY3RzW25hbWUubG93ZXIoKV0KKworICAgIGRlZiBfcHJvY2Vzc191cmwoc2VsZiwgdXJsLCBwcm9qZWN0X25hbWU9Tm9uZSwgZm9sbG93X2xpbmtzPVRydWUpOgorICAgICAgICAiIiJQcm9jZXNzIGFuIHVybCBhbmQgc2VhcmNoIGZvciBkaXN0cmlidXRpb25zIHBhY2thZ2VzLgorCisgICAgICAgIEZvciBlYWNoIFVSTCBmb3VuZCwgaWYgaXQncyBhIGRvd25sb2FkLCBjcmVhdGVzIGEgUHlQSWRpc3RyaWJ1dGlvbgorICAgICAgICBvYmplY3QuIElmIGl0J3MgYSBob21lcGFnZSBhbmQgd2UgY2FuIGZvbGxvdyBsaW5rcywgcHJvY2VzcyBpdCB0b28uCisKKyAgICAgICAgOnBhcmFtIHVybDogdGhlIHVybCB0byBwcm9jZXNzCisgICAgICAgIDpwYXJhbSBwcm9qZWN0X25hbWU6IHRoZSBwcm9qZWN0IG5hbWUgd2UgYXJlIHNlYXJjaGluZyBmb3IuCisgICAgICAgIDpwYXJhbSBmb2xsb3dfbGlua3M6IERvIG5vdCB3YW50IHRvIGZvbGxvdyBsaW5rcyBtb3JlIHRoYW4gZnJvbSBvbmUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV2ZWwuIFRoaXMgcGFyYW1ldGVyIHRlbGxzIGlmIHdlIHdhbnQgdG8gZm9sbG93CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBsaW5rcyB3ZSBmaW5kIChlZy4gcnVuIHJlY3Vyc2l2ZWx5IHRoaXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kIG9uIGl0KQorICAgICAgICAiIiIKKyAgICAgICAgd2l0aCBzZWxmLl9vcGVuX3VybCh1cmwpIGFzIGY6CisgICAgICAgICAgICBiYXNlX3VybCA9IGYudXJsCisgICAgICAgICAgICBpZiB1cmwgbm90IGluIHNlbGYuX3Byb2Nlc3NlZF91cmxzOgorICAgICAgICAgICAgICAgIHNlbGYuX3Byb2Nlc3NlZF91cmxzLmFwcGVuZCh1cmwpCisgICAgICAgICAgICAgICAgbGlua19tYXRjaGVyID0gc2VsZi5fZ2V0X2xpbmtfbWF0Y2hlcih1cmwpCisgICAgICAgICAgICAgICAgZm9yIGxpbmssIGlzX2Rvd25sb2FkIGluIGxpbmtfbWF0Y2hlcihmLnJlYWQoKS5kZWNvZGUoKSwgYmFzZV91cmwpOgorICAgICAgICAgICAgICAgICAgICBpZiBsaW5rIG5vdCBpbiBzZWxmLl9wcm9jZXNzZWRfdXJsczoKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIHNlbGYuX2lzX2Rpc3RyaWJ1dGlvbihsaW5rKSBvciBpc19kb3dubG9hZDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9wcm9jZXNzZWRfdXJscy5hcHBlbmQobGluaykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGl0J3MgYSBkaXN0cmlidXRpb24sIHNvIGNyZWF0ZSBhIGRpc3Qgb2JqZWN0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmZvcyA9IGdldF9pbmZvc19mcm9tX3VybChsaW5rLCBwcm9qZWN0X25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzX2V4dGVybmFsPXNlbGYuaW5kZXhfdXJsIG5vdCBpbiB1cmwpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhjZXB0IENhbnRQYXJzZUFyY2hpdmVOYW1lIGFzIGU6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZlcnNpb24gaGFzIG5vdCBiZWVuIHBhcnNlZDogJXMiLCBlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX3JlZ2lzdGVyX3JlbGVhc2UocmVsZWFzZV9pbmZvPWluZm9zKQorICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLl9pc19icm93c2FibGUobGluaykgYW5kIGZvbGxvd19saW5rczoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fcHJvY2Vzc191cmwobGluaywgcHJvamVjdF9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9sbG93X2xpbmtzPUZhbHNlKQorCisgICAgZGVmIF9nZXRfbGlua19tYXRjaGVyKHNlbGYsIHVybCk6CisgICAgICAgICIiIlJldHVybnMgdGhlIHJpZ2h0IGxpbmsgbWF0Y2hlciBmdW5jdGlvbiBvZiB0aGUgZ2l2ZW4gdXJsCisgICAgICAgICIiIgorICAgICAgICBpZiBzZWxmLmluZGV4X3VybCBpbiB1cmw6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fc2ltcGxlX2xpbmtfbWF0Y2hlcgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2RlZmF1bHRfbGlua19tYXRjaGVyCisKKyAgICBkZWYgX2dldF9mdWxsX3VybChzZWxmLCB1cmwsIGJhc2VfdXJsKToKKyAgICAgICAgcmV0dXJuIHVybGxpYi5wYXJzZS51cmxqb2luKGJhc2VfdXJsLCBzZWxmLl9odG1sZGVjb2RlKHVybCkpCisKKyAgICBkZWYgX3NpbXBsZV9saW5rX21hdGNoZXIoc2VsZiwgY29udGVudCwgYmFzZV91cmwpOgorICAgICAgICAiIiJZaWVsZCBhbGwgbGlua3Mgd2l0aCBhIHJlbD0iZG93bmxvYWQiIG9yIHJlbD0iaG9tZXBhZ2UiLgorCisgICAgICAgIFRoaXMgbWF0Y2hlcyB0aGUgc2ltcGxlIGluZGV4IHJlcXVpcmVtZW50cyBmb3IgbWF0Y2hpbmcgbGlua3MuCisgICAgICAgIElmIGZvbGxvd19leHRlcm5hbHMgaXMgc2V0IHRvIEZhbHNlLCBkb250IHllbGQgdGhlIGV4dGVybmFsCisgICAgICAgIHVybHMuCisKKyAgICAgICAgOnBhcmFtIGNvbnRlbnQ6IHRoZSBjb250ZW50IG9mIHRoZSBwYWdlIHdlIHdhbnQgdG8gcGFyc2UKKyAgICAgICAgOnBhcmFtIGJhc2VfdXJsOiB0aGUgdXJsIG9mIHRoaXMgcGFnZS4KKyAgICAgICAgIiIiCisgICAgICAgIGZvciBtYXRjaCBpbiBIUkVGLmZpbmRpdGVyKGNvbnRlbnQpOgorICAgICAgICAgICAgdXJsID0gc2VsZi5fZ2V0X2Z1bGxfdXJsKG1hdGNoLmdyb3VwKDEpLCBiYXNlX3VybCkKKyAgICAgICAgICAgIGlmIE1ENV9IQVNILm1hdGNoKHVybCk6CisgICAgICAgICAgICAgICAgeWllbGQgKHVybCwgVHJ1ZSkKKworICAgICAgICBmb3IgbWF0Y2ggaW4gUkVMLmZpbmRpdGVyKGNvbnRlbnQpOgorICAgICAgICAgICAgIyBzZWFyY2ggZm9yIHJlbCBsaW5rcy4KKyAgICAgICAgICAgIHRhZywgcmVsID0gbWF0Y2guZ3JvdXBzKCkKKyAgICAgICAgICAgIHJlbHMgPSBbcy5zdHJpcCgpIGZvciBzIGluIHJlbC5sb3dlcigpLnNwbGl0KCcsJyldCisgICAgICAgICAgICBpZiAnaG9tZXBhZ2UnIGluIHJlbHMgb3IgJ2Rvd25sb2FkJyBpbiByZWxzOgorICAgICAgICAgICAgICAgIGZvciBtYXRjaCBpbiBIUkVGLmZpbmRpdGVyKHRhZyk6CisgICAgICAgICAgICAgICAgICAgIHVybCA9IHNlbGYuX2dldF9mdWxsX3VybChtYXRjaC5ncm91cCgxKSwgYmFzZV91cmwpCisgICAgICAgICAgICAgICAgICAgIGlmICdkb3dubG9hZCcgaW4gcmVscyBvciBzZWxmLl9pc19icm93c2FibGUodXJsKToKKyAgICAgICAgICAgICAgICAgICAgICAgICMgeWllbGQgYSBsaXN0IG9mICh1cmwsIGlzX2Rvd25sb2FkKQorICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQgKHVybCwgJ2Rvd25sb2FkJyBpbiByZWxzKQorCisgICAgZGVmIF9kZWZhdWx0X2xpbmtfbWF0Y2hlcihzZWxmLCBjb250ZW50LCBiYXNlX3VybCk6CisgICAgICAgICIiIllpZWxkIGFsbCBsaW5rcyBmb3VuZCBvbiB0aGUgcGFnZS4KKyAgICAgICAgIiIiCisgICAgICAgIGZvciBtYXRjaCBpbiBIUkVGLmZpbmRpdGVyKGNvbnRlbnQpOgorICAgICAgICAgICAgdXJsID0gc2VsZi5fZ2V0X2Z1bGxfdXJsKG1hdGNoLmdyb3VwKDEpLCBiYXNlX3VybCkKKyAgICAgICAgICAgIGlmIHNlbGYuX2lzX2Jyb3dzYWJsZSh1cmwpOgorICAgICAgICAgICAgICAgIHlpZWxkICh1cmwsIEZhbHNlKQorCisgICAgQHdpdGhfbWlycm9yX3N1cHBvcnQoKQorICAgIGRlZiBfcHJvY2Vzc19pbmRleF9wYWdlKHNlbGYsIG5hbWUpOgorICAgICAgICAiIiJGaW5kIGFuZCBwcm9jZXNzIGEgUHlQSSBwYWdlIGZvciB0aGUgZ2l2ZW4gcHJvamVjdCBuYW1lLgorCisgICAgICAgIDpwYXJhbSBuYW1lOiB0aGUgbmFtZSBvZiB0aGUgcHJvamVjdCB0byBmaW5kIHRoZSBwYWdlCisgICAgICAgICIiIgorICAgICAgICAjIEJyb3dzZSBhbmQgaW5kZXggdGhlIGNvbnRlbnQgb2YgdGhlIGdpdmVuIFB5UEkgcGFnZS4KKyAgICAgICAgaWYgc2VsZi5zY2hlbWUgPT0gJ2ZpbGUnOgorICAgICAgICAgICAgZW5kZXIgPSBvcy5wYXRoLnNlcAorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZW5kZXIgPSAnLycKKyAgICAgICAgdXJsID0gc2VsZi5pbmRleF91cmwgKyBuYW1lICsgZW5kZXIKKyAgICAgICAgc2VsZi5fcHJvY2Vzc191cmwodXJsLCBuYW1lKQorCisgICAgQHNvY2tldF90aW1lb3V0KCkKKyAgICBkZWYgX29wZW5fdXJsKHNlbGYsIHVybCk6CisgICAgICAgICIiIk9wZW4gYSB1cmxsaWIyIHJlcXVlc3QsIGhhbmRsaW5nIEhUVFAgYXV0aGVudGljYXRpb24sIGFuZCBsb2NhbAorICAgICAgICBmaWxlcyBzdXBwb3J0LgorCisgICAgICAgICIiIgorICAgICAgICBzY2hlbWUsIG5ldGxvYywgcGF0aCwgcGFyYW1zLCBxdWVyeSwgZnJhZyA9IHVybGxpYi5wYXJzZS51cmxwYXJzZSh1cmwpCisKKyAgICAgICAgIyBhdXRoZW50aWNhdGlvbiBzdHVmZgorICAgICAgICBpZiBzY2hlbWUgaW4gKCdodHRwJywgJ2h0dHBzJyk6CisgICAgICAgICAgICBhdXRoLCBob3N0ID0gdXJsbGliLnBhcnNlLnNwbGl0dXNlcihuZXRsb2MpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBhdXRoID0gTm9uZQorCisgICAgICAgICMgYWRkIGluZGV4Lmh0bWwgYXV0b21hdGljYWxseSBmb3IgZmlsZXN5c3RlbSBwYXRocworICAgICAgICBpZiBzY2hlbWUgPT0gJ2ZpbGUnOgorICAgICAgICAgICAgaWYgdXJsLmVuZHN3aXRoKG9zLnBhdGguc2VwKToKKyAgICAgICAgICAgICAgICB1cmwgKz0gImluZGV4Lmh0bWwiCisKKyAgICAgICAgIyBhZGQgYXV0aG9yaXphdGlvbiBoZWFkZXJzIGlmIGF1dGggaXMgcHJvdmlkZWQKKyAgICAgICAgaWYgYXV0aDoKKyAgICAgICAgICAgIGF1dGggPSAiQmFzaWMgIiArIFwKKyAgICAgICAgICAgICAgICB1cmxsaWIucGFyc2UudW5xdW90ZShhdXRoKS5lbmNvZGUoJ2Jhc2U2NCcpLnN0cmlwKCkKKyAgICAgICAgICAgIG5ld191cmwgPSB1cmxsaWIucGFyc2UudXJsdW5wYXJzZSgoCisgICAgICAgICAgICAgICAgc2NoZW1lLCBob3N0LCBwYXRoLCBwYXJhbXMsIHF1ZXJ5LCBmcmFnKSkKKyAgICAgICAgICAgIHJlcXVlc3QgPSB1cmxsaWIucmVxdWVzdC5SZXF1ZXN0KG5ld191cmwpCisgICAgICAgICAgICByZXF1ZXN0LmFkZF9oZWFkZXIoIkF1dGhvcml6YXRpb24iLCBhdXRoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmVxdWVzdCA9IHVybGxpYi5yZXF1ZXN0LlJlcXVlc3QodXJsKQorICAgICAgICByZXF1ZXN0LmFkZF9oZWFkZXIoJ1VzZXItQWdlbnQnLCBVU0VSX0FHRU5UKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBmcCA9IHVybGxpYi5yZXF1ZXN0LnVybG9wZW4ocmVxdWVzdCkKKyAgICAgICAgZXhjZXB0IChWYWx1ZUVycm9yLCBodHRwLmNsaWVudC5JbnZhbGlkVVJMKSBhcyB2OgorICAgICAgICAgICAgbXNnID0gJyAnLmpvaW4oW3N0cihhcmcpIGZvciBhcmcgaW4gdi5hcmdzXSkKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ1B5UElFcnJvcignJXMgJXMnICUgKHVybCwgbXNnKSkKKyAgICAgICAgZXhjZXB0IHVybGxpYi5lcnJvci5IVFRQRXJyb3IgYXMgdjoKKyAgICAgICAgICAgIHJldHVybiB2CisgICAgICAgIGV4Y2VwdCB1cmxsaWIuZXJyb3IuVVJMRXJyb3IgYXMgdjoKKyAgICAgICAgICAgIHJhaXNlIERvd25sb2FkRXJyb3IoIkRvd25sb2FkIGVycm9yIGZvciAlczogJXMiICUgKHVybCwgdi5yZWFzb24pKQorICAgICAgICBleGNlcHQgaHR0cC5jbGllbnQuQmFkU3RhdHVzTGluZSBhcyB2OgorICAgICAgICAgICAgcmFpc2UgRG93bmxvYWRFcnJvcignJXMgcmV0dXJuZWQgYSBiYWQgc3RhdHVzIGxpbmUuICcKKyAgICAgICAgICAgICAgICAnVGhlIHNlcnZlciBtaWdodCBiZSBkb3duLCAlcycgJSAodXJsLCB2LmxpbmUpKQorICAgICAgICBleGNlcHQgaHR0cC5jbGllbnQuSFRUUEV4Y2VwdGlvbiBhcyB2OgorICAgICAgICAgICAgcmFpc2UgRG93bmxvYWRFcnJvcigiRG93bmxvYWQgZXJyb3IgZm9yICVzOiAlcyIgJSAodXJsLCB2KSkKKyAgICAgICAgZXhjZXB0IHNvY2tldC50aW1lb3V0OgorICAgICAgICAgICAgcmFpc2UgRG93bmxvYWRFcnJvcigiVGhlIHNlcnZlciB0aW1lb3V0ZWQiKQorCisgICAgICAgIGlmIGF1dGg6CisgICAgICAgICAgICAjIFB1dCBhdXRoZW50aWNhdGlvbiBpbmZvIGJhY2sgaW50byByZXF1ZXN0IFVSTCBpZiBzYW1lIGhvc3QsCisgICAgICAgICAgICAjIHNvIHRoYXQgbGlua3MgZm91bmQgb24gdGhlIHBhZ2Ugd2lsbCB3b3JrCisgICAgICAgICAgICBzMiwgaDIsIHBhdGgyLCBwYXJhbTIsIHF1ZXJ5MiwgZnJhZzIgPSBcCisgICAgICAgICAgICAgICAgdXJsbGliLnBhcnNlLnVybHBhcnNlKGZwLnVybCkKKyAgICAgICAgICAgIGlmIHMyID09IHNjaGVtZSBhbmQgaDIgPT0gaG9zdDoKKyAgICAgICAgICAgICAgICBmcC51cmwgPSB1cmxsaWIucGFyc2UudXJsdW5wYXJzZSgKKyAgICAgICAgICAgICAgICAgICAgKHMyLCBuZXRsb2MsIHBhdGgyLCBwYXJhbTIsIHF1ZXJ5MiwgZnJhZzIpKQorICAgICAgICByZXR1cm4gZnAKKworICAgIGRlZiBfZGVjb2RlX2VudGl0eShzZWxmLCBtYXRjaCk6CisgICAgICAgIHdoYXQgPSBtYXRjaC5ncm91cCgxKQorICAgICAgICBpZiB3aGF0LnN0YXJ0c3dpdGgoJyN4Jyk6CisgICAgICAgICAgICB3aGF0ID0gaW50KHdoYXRbMjpdLCAxNikKKyAgICAgICAgZWxpZiB3aGF0LnN0YXJ0c3dpdGgoJyMnKToKKyAgICAgICAgICAgIHdoYXQgPSBpbnQod2hhdFsxOl0pCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBmcm9tIGh0bWwuZW50aXRpZXMgaW1wb3J0IG5hbWUyY29kZXBvaW50CisgICAgICAgICAgICB3aGF0ID0gbmFtZTJjb2RlcG9pbnQuZ2V0KHdoYXQsIG1hdGNoLmdyb3VwKDApKQorICAgICAgICByZXR1cm4gY2hyKHdoYXQpCisKKyAgICBkZWYgX2h0bWxkZWNvZGUoc2VsZiwgdGV4dCk6CisgICAgICAgICIiIkRlY29kZSBIVE1MIGVudGl0aWVzIGluIHRoZSBnaXZlbiB0ZXh0LiIiIgorICAgICAgICByZXR1cm4gRU5USVRZX1NVQihzZWxmLl9kZWNvZGVfZW50aXR5LCB0ZXh0KQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9weXBpL3dyYXBwZXIucHkgYi9MaWIvcGFja2FnaW5nL3B5cGkvd3JhcHBlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NDVkMDhhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9weXBpL3dyYXBwZXIucHkKQEAgLTAsMCArMSw5OSBAQAorIiIiQ29udmVuaWVudCBjbGllbnQgZm9yIGFsbCBQeVBJIEFQSXMuCisKK1RoaXMgbW9kdWxlIHByb3ZpZGVzIGEgQ2xpZW50V3JhcHBlciBjbGFzcyB3aGljaCB3aWxsIHVzZSB0aGUgInNpbXBsZSIKK29yIFhNTC1SUEMgQVBJIHRvIHJlcXVlc3QgaW5mb3JtYXRpb24gb3IgZmlsZXMgZnJvbSBhbiBpbmRleC4KKyIiIgorCitmcm9tIHBhY2thZ2luZy5weXBpIGltcG9ydCBzaW1wbGUsIHhtbHJwYworCitfV1JBUFBFUl9NQVBQSU5HUyA9IHsnZ2V0X3JlbGVhc2UnOiAnc2ltcGxlJywKKyAgICAgICAgICAgICAgICAgICAgICdnZXRfcmVsZWFzZXMnOiAnc2ltcGxlJywKKyAgICAgICAgICAgICAgICAgICAgICdzZWFyY2hfcHJvamVjdHMnOiAnc2ltcGxlJywKKyAgICAgICAgICAgICAgICAgICAgICdnZXRfbWV0YWRhdGEnOiAneG1scnBjJywKKyAgICAgICAgICAgICAgICAgICAgICdnZXRfZGlzdHJpYnV0aW9ucyc6ICdzaW1wbGUnfQorCitfV1JBUFBFUl9JTkRFWEVTID0geyd4bWxycGMnOiB4bWxycGMuQ2xpZW50LAorICAgICAgICAgICAgICAgICAgICAnc2ltcGxlJzogc2ltcGxlLkNyYXdsZXJ9CisKKworZGVmIHN3aXRjaF9pbmRleF9pZl9mYWlscyhmdW5jLCB3cmFwcGVyKToKKyAgICAiIiJEZWNvcmF0b3IgdGhhdCBzd2l0Y2ggb2YgaW5kZXggKGZvciBpbnN0YW5jZSBmcm9tIHhtbHJwYyB0byBzaW1wbGUpCisgICAgaWYgdGhlIGZpcnN0IG1pcnJvciByZXR1cm4gYW4gZW1wdHkgbGlzdCBvciByYWlzZXMgYW4gZXhjZXB0aW9uLgorICAgICIiIgorICAgIGRlZiBkZWNvcmF0b3IoKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcmV0cnkgPSBUcnVlCisgICAgICAgIGV4Y2VwdGlvbiA9IE5vbmUKKyAgICAgICAgbWV0aG9kcyA9IFtmdW5jXQorICAgICAgICBmb3IgZiBpbiB3cmFwcGVyLl9pbmRleGVzLnZhbHVlcygpOgorICAgICAgICAgICAgaWYgZiAhPSBmdW5jLl9fc2VsZl9fIGFuZCBoYXNhdHRyKGYsIGZ1bmMuX19uYW1lX18pOgorICAgICAgICAgICAgICAgIG1ldGhvZHMuYXBwZW5kKGdldGF0dHIoZiwgZnVuYy5fX25hbWVfXykpCisgICAgICAgIGZvciBtZXRob2QgaW4gbWV0aG9kczoKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICByZXNwb25zZSA9IG1ldGhvZCgqYXJncywgKiprd2FyZ3MpCisgICAgICAgICAgICAgICAgcmV0cnkgPSBGYWxzZQorICAgICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICAgICAgICAgIGV4Y2VwdGlvbiA9IGUKKyAgICAgICAgICAgIGlmIG5vdCByZXRyeToKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICBpZiByZXRyeSBhbmQgZXhjZXB0aW9uOgorICAgICAgICAgICAgcmFpc2UgZXhjZXB0aW9uCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UKKyAgICByZXR1cm4gZGVjb3JhdG9yCisKKworY2xhc3MgQ2xpZW50V3JhcHBlcjoKKyAgICAiIiJXcmFwcGVyIGFyb3VuZCBzaW1wbGUgYW5kIHhtbHJwYyBjbGllbnRzLAorCisgICAgQ2hvb3NlIHRoZSBiZXN0IGltcGxlbWVudGF0aW9uIHRvIHVzZSBkZXBlbmRpbmcgdGhlIG5lZWRzLCB1c2luZyB0aGUgZ2l2ZW4KKyAgICBtYXBwaW5ncy4KKyAgICBJZiBvbmUgb2YgdGhlIGluZGV4ZXMgcmV0dXJucyBhbiBlcnJvciwgdHJpZXMgdG8gdXNlIG90aGVycyBpbmRleGVzLgorCisgICAgOnBhcmFtIGluZGV4OiB0ZWxsIHdoaWNoIGluZGV4IHRvIHJlbHkgb24gYnkgZGVmYXVsdC4KKyAgICA6cGFyYW0gaW5kZXhfY2xhc3NlczogYSBkaWN0IG9mIG5hbWU6Y2xhc3MgdG8gdXNlIGFzIGluZGV4ZXMuCisgICAgOnBhcmFtIGluZGV4ZXM6IGEgZGljdCBvZiBuYW1lOmluZGV4IGFscmVhZHkgaW5zdGFudGlhdGVkCisgICAgOnBhcmFtIG1hcHBpbmdzOiB0aGUgbWFwcGluZ3MgdG8gdXNlIGZvciB0aGlzIHdyYXBwZXIKKyAgICAiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkZWZhdWx0X2luZGV4PSdzaW1wbGUnLCBpbmRleF9jbGFzc2VzPV9XUkFQUEVSX0lOREVYRVMsCisgICAgICAgICAgICAgICAgIGluZGV4ZXM9e30sIG1hcHBpbmdzPV9XUkFQUEVSX01BUFBJTkdTKToKKyAgICAgICAgc2VsZi5fcHJvamVjdHMgPSB7fQorICAgICAgICBzZWxmLl9tYXBwaW5ncyA9IG1hcHBpbmdzCisgICAgICAgIHNlbGYuX2luZGV4ZXMgPSBpbmRleGVzCisgICAgICAgIHNlbGYuX2RlZmF1bHRfaW5kZXggPSBkZWZhdWx0X2luZGV4CisKKyAgICAgICAgIyBpbnN0YW50aWF0ZSB0aGUgY2xhc3NlcyBhbmQgc2V0IHRoZWlyIF9wcm9qZWN0IGF0dHJpYnV0ZSB0byB0aGUgb25lCisgICAgICAgICMgb2YgdGhlIHdyYXBwZXIuCisgICAgICAgIGZvciBuYW1lLCBjbHMgaW4gaW5kZXhfY2xhc3Nlcy5pdGVtcygpOgorICAgICAgICAgICAgb2JqID0gc2VsZi5faW5kZXhlcy5zZXRkZWZhdWx0KG5hbWUsIGNscygpKQorICAgICAgICAgICAgb2JqLl9wcm9qZWN0cyA9IHNlbGYuX3Byb2plY3RzCisgICAgICAgICAgICBvYmouX2luZGV4ID0gc2VsZgorCisgICAgZGVmIF9fZ2V0YXR0cl9fKHNlbGYsIG1ldGhvZF9uYW1lKToKKyAgICAgICAgIiIiV2hlbiBhc2tpbmcgZm9yIG1ldGhvZHMgb2YgdGhlIHdyYXBwZXIsIHJldHVybiB0aGUgaW1wbGVtZW50YXRpb24gb2YKKyAgICAgICAgdGhlIHdyYXBwZWQgY2xhc3NlcywgZGVwZW5kaW5nIHRoZSBtYXBwaW5nLgorCisgICAgICAgIERlY29yYXRlIHRoZSBtZXRob2RzIHRvIHN3aXRjaCBvZiBpbXBsZW1lbnRhdGlvbiBpZiBhbiBlcnJvciBvY2N1cnMKKyAgICAgICAgIiIiCisgICAgICAgIHJlYWxfbWV0aG9kID0gTm9uZQorICAgICAgICBpZiBtZXRob2RfbmFtZSBpbiBfV1JBUFBFUl9NQVBQSU5HUzoKKyAgICAgICAgICAgIG9iaiA9IHNlbGYuX2luZGV4ZXNbX1dSQVBQRVJfTUFQUElOR1NbbWV0aG9kX25hbWVdXQorICAgICAgICAgICAgcmVhbF9tZXRob2QgPSBnZXRhdHRyKG9iaiwgbWV0aG9kX25hbWUpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIHRoZSBtZXRob2QgaXMgbm90IGRlZmluZWQgaW4gdGhlIG1hcHBpbmdzLCBzbyB3ZSB0cnkgZmlyc3QgdG8gZ2V0CisgICAgICAgICAgICAjIGl0IHZpYSB0aGUgZGVmYXVsdCBpbmRleCwgYW5kIHJlbHkgb24gb3RoZXJzIGlmIG5lZWRlZC4KKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICByZWFsX21ldGhvZCA9IGdldGF0dHIoc2VsZi5faW5kZXhlc1tzZWxmLl9kZWZhdWx0X2luZGV4XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kX25hbWUpCisgICAgICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CisgICAgICAgICAgICAgICAgb3RoZXJfaW5kZXhlcyA9IFtpIGZvciBpIGluIHNlbGYuX2luZGV4ZXMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGkgIT0gc2VsZi5fZGVmYXVsdF9pbmRleF0KKyAgICAgICAgICAgICAgICBmb3IgaW5kZXggaW4gb3RoZXJfaW5kZXhlczoKKyAgICAgICAgICAgICAgICAgICAgcmVhbF9tZXRob2QgPSBnZXRhdHRyKHNlbGYuX2luZGV4ZXNbaW5kZXhdLCBtZXRob2RfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vbmUpCisgICAgICAgICAgICAgICAgICAgIGlmIHJlYWxfbWV0aG9kOgorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgaWYgcmVhbF9tZXRob2Q6CisgICAgICAgICAgICByZXR1cm4gc3dpdGNoX2luZGV4X2lmX2ZhaWxzKHJlYWxfbWV0aG9kLCBzZWxmKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgQXR0cmlidXRlRXJyb3IoIk5vIGluZGV4IGhhdmUgYXR0cmlidXRlICclcyciICUgbWV0aG9kX25hbWUpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3B5cGkveG1scnBjLnB5IGIvTGliL3BhY2thZ2luZy9weXBpL3htbHJwYy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZWZkZjZkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9weXBpL3htbHJwYy5weQpAQCAtMCwwICsxLDIwMCBAQAorIiIiU3BpZGVyIHVzaW5nIHRoZSBYTUwtUlBDIFB5UEkgQVBJLgorCitUaGlzIG1vZHVsZSBjb250YWlucyB0aGUgY2xhc3MgQ2xpZW50LCBhIHNwaWRlciB0aGF0IGNhbiBiZSB1c2VkIHRvIGZpbmQKK2FuZCByZXRyaWV2ZSBkaXN0cmlidXRpb25zIGZyb20gYSBwcm9qZWN0IGluZGV4IChsaWtlIHRoZSBQeXRob24gUGFja2FnZQorSW5kZXgpLCB1c2luZyBpdHMgWE1MLVJQQyBBUEkgKHNlZSBkb2N1bWVudGF0aW9uIG9mIHRoZSByZWZlcmVuY2UKK2ltcGxlbWVudGF0aW9uIGF0IGh0dHA6Ly93aWtpLnB5dGhvbi5vcmcvbW9pbi9QeVBpWG1sUnBjKS4KKyIiIgorCitpbXBvcnQgeG1scnBjLmNsaWVudAorCitmcm9tIHBhY2thZ2luZyBpbXBvcnQgbG9nZ2VyCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IElycmF0aW9uYWxWZXJzaW9uRXJyb3IKK2Zyb20gcGFja2FnaW5nLnZlcnNpb24gaW1wb3J0IGdldF92ZXJzaW9uX3ByZWRpY2F0ZQorZnJvbSBwYWNrYWdpbmcucHlwaS5iYXNlIGltcG9ydCBCYXNlQ2xpZW50Citmcm9tIHBhY2thZ2luZy5weXBpLmVycm9ycyBpbXBvcnQgKFByb2plY3ROb3RGb3VuZCwgSW52YWxpZFNlYXJjaEZpZWxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWxlYXNlTm90Rm91bmQpCitmcm9tIHBhY2thZ2luZy5weXBpLmRpc3QgaW1wb3J0IFJlbGVhc2VJbmZvCisKK19fYWxsX18gPSBbJ0NsaWVudCcsICdERUZBVUxUX1hNTFJQQ19JTkRFWF9VUkwnXQorCitERUZBVUxUX1hNTFJQQ19JTkRFWF9VUkwgPSAnaHR0cDovL3B5dGhvbi5vcmcvcHlwaScKKworX1NFQVJDSF9GSUVMRFMgPSBbJ25hbWUnLCAndmVyc2lvbicsICdhdXRob3InLCAnYXV0aG9yX2VtYWlsJywgJ21haW50YWluZXInLAorICAgICAgICAgICAgICAgICAgJ21haW50YWluZXJfZW1haWwnLCAnaG9tZV9wYWdlJywgJ2xpY2Vuc2UnLCAnc3VtbWFyeScsCisgICAgICAgICAgICAgICAgICAnZGVzY3JpcHRpb24nLCAna2V5d29yZHMnLCAncGxhdGZvcm0nLCAnZG93bmxvYWRfdXJsJ10KKworCitjbGFzcyBDbGllbnQoQmFzZUNsaWVudCk6CisgICAgIiIiQ2xpZW50IHRvIHF1ZXJ5IGluZGV4ZXMgdXNpbmcgWE1MLVJQQyBtZXRob2QgY2FsbHMuCisKKyAgICBJZiBubyBzZXJ2ZXJfdXJsIGlzIHNwZWNpZmllZCwgdXNlIHRoZSBkZWZhdWx0IFB5UEkgWE1MLVJQQyBVUkwsCisgICAgZGVmaW5lZCBpbiB0aGUgREVGQVVMVF9YTUxSUENfSU5ERVhfVVJMIGNvbnN0YW50OjoKKworICAgICAgICA+Pj4gY2xpZW50ID0gQ2xpZW50KCkKKyAgICAgICAgPj4+IGNsaWVudC5zZXJ2ZXJfdXJsID09IERFRkFVTFRfWE1MUlBDX0lOREVYX1VSTAorICAgICAgICBUcnVlCisKKyAgICAgICAgPj4+IGNsaWVudCA9IENsaWVudCgiaHR0cDovL3NvbWV1cmwvIikKKyAgICAgICAgPj4+IGNsaWVudC5zZXJ2ZXJfdXJsCisgICAgICAgICdodHRwOi8vc29tZXVybC8nCisgICAgIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgc2VydmVyX3VybD1ERUZBVUxUX1hNTFJQQ19JTkRFWF9VUkwsIHByZWZlcl9maW5hbD1GYWxzZSwKKyAgICAgICAgICAgICAgICAgcHJlZmVyX3NvdXJjZT1UcnVlKToKKyAgICAgICAgc3VwZXIoQ2xpZW50LCBzZWxmKS5fX2luaXRfXyhwcmVmZXJfZmluYWwsIHByZWZlcl9zb3VyY2UpCisgICAgICAgIHNlbGYuc2VydmVyX3VybCA9IHNlcnZlcl91cmwKKyAgICAgICAgc2VsZi5fcHJvamVjdHMgPSB7fQorCisgICAgZGVmIGdldF9yZWxlYXNlKHNlbGYsIHJlcXVpcmVtZW50cywgcHJlZmVyX2ZpbmFsPUZhbHNlKToKKyAgICAgICAgIiIiUmV0dXJuIGEgcmVsZWFzZSB3aXRoIGFsbCBjb21wbGV0ZSBtZXRhZGF0YSBhbmQgZGlzdHJpYnV0aW9uCisgICAgICAgIHJlbGF0ZWQgaW5mb3JtYXRpb25zLgorICAgICAgICAiIiIKKyAgICAgICAgcHJlZmVyX2ZpbmFsID0gc2VsZi5fZ2V0X3ByZWZlcl9maW5hbChwcmVmZXJfZmluYWwpCisgICAgICAgIHByZWRpY2F0ZSA9IGdldF92ZXJzaW9uX3ByZWRpY2F0ZShyZXF1aXJlbWVudHMpCisgICAgICAgIHJlbGVhc2VzID0gc2VsZi5nZXRfcmVsZWFzZXMocHJlZGljYXRlLm5hbWUpCisgICAgICAgIHJlbGVhc2UgPSByZWxlYXNlcy5nZXRfbGFzdChwcmVkaWNhdGUsIHByZWZlcl9maW5hbCkKKyAgICAgICAgc2VsZi5nZXRfbWV0YWRhdGEocmVsZWFzZS5uYW1lLCBzdHIocmVsZWFzZS52ZXJzaW9uKSkKKyAgICAgICAgc2VsZi5nZXRfZGlzdHJpYnV0aW9ucyhyZWxlYXNlLm5hbWUsIHN0cihyZWxlYXNlLnZlcnNpb24pKQorICAgICAgICByZXR1cm4gcmVsZWFzZQorCisgICAgZGVmIGdldF9yZWxlYXNlcyhzZWxmLCByZXF1aXJlbWVudHMsIHByZWZlcl9maW5hbD1Ob25lLCBzaG93X2hpZGRlbj1UcnVlLAorICAgICAgICAgICAgICAgICAgICAgZm9yY2VfdXBkYXRlPUZhbHNlKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBsaXN0IG9mIGV4aXN0aW5nIHJlbGVhc2VzIGZvciBhIHNwZWNpZmljIHByb2plY3QuCisKKyAgICAgICAgQ2FjaGUgdGhlIHJlc3VsdHMgZnJvbSBvbmUgY2FsbCB0byBhbm90aGVyLgorCisgICAgICAgIElmIHNob3dfaGlkZGVuIGlzIFRydWUsIHJldHVybiB0aGUgaGlkZGVuIHJlbGVhc2VzIHRvby4KKyAgICAgICAgSWYgZm9yY2VfdXBkYXRlIGlzIFRydWUsIHJlcHJvY2VzcyB0aGUgaW5kZXggdG8gdXBkYXRlIHRoZQorICAgICAgICBpbmZvcm1hdGlvbnMgKGVnLiBtYWtlIGEgbmV3IFhNTC1SUEMgY2FsbCkuCisgICAgICAgIDo6CisKKyAgICAgICAgICAgID4+PiBjbGllbnQgPSBDbGllbnQoKQorICAgICAgICAgICAgPj4+IGNsaWVudC5nZXRfcmVsZWFzZXMoJ0ZvbycpCisgICAgICAgICAgICBbJzEuMScsICcxLjInLCAnMS4zJ10KKworICAgICAgICBJZiBubyBzdWNoIHByb2plY3QgZXhpc3RzLCByYWlzZSBhIFByb2plY3ROb3RGb3VuZCBleGNlcHRpb246OgorCisgICAgICAgICAgICA+Pj4gY2xpZW50LmdldF9wcm9qZWN0X3ZlcnNpb25zKCdVbmV4aXN0aW5nUHJvamVjdCcpCisgICAgICAgICAgICBQcm9qZWN0Tm90Rm91bmQ6IFVuZXhpc3RpbmdQcm9qZWN0CisKKyAgICAgICAgIiIiCisgICAgICAgIGRlZiBnZXRfdmVyc2lvbnMocHJvamVjdF9uYW1lLCBzaG93X2hpZGRlbik6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5wcm94eS5wYWNrYWdlX3JlbGVhc2VzKHByb2plY3RfbmFtZSwgc2hvd19oaWRkZW4pCisKKyAgICAgICAgcHJlZGljYXRlID0gZ2V0X3ZlcnNpb25fcHJlZGljYXRlKHJlcXVpcmVtZW50cykKKyAgICAgICAgcHJlZmVyX2ZpbmFsID0gc2VsZi5fZ2V0X3ByZWZlcl9maW5hbChwcmVmZXJfZmluYWwpCisgICAgICAgIHByb2plY3RfbmFtZSA9IHByZWRpY2F0ZS5uYW1lCisgICAgICAgIGlmIG5vdCBmb3JjZV91cGRhdGUgYW5kIChwcm9qZWN0X25hbWUubG93ZXIoKSBpbiBzZWxmLl9wcm9qZWN0cyk6CisgICAgICAgICAgICBwcm9qZWN0ID0gc2VsZi5fcHJvamVjdHNbcHJvamVjdF9uYW1lLmxvd2VyKCldCisgICAgICAgICAgICBpZiBub3QgcHJvamVjdC5jb250YWluc19oaWRkZW4gYW5kIHNob3dfaGlkZGVuOgorICAgICAgICAgICAgICAgICMgaWYgaGlkZGVuIHJlbGVhc2VzIGFyZSByZXF1ZXN0ZWQsIGFuZCBoYXZlIGFuIGV4aXN0aW5nCisgICAgICAgICAgICAgICAgIyBsaXN0IG9mIHJlbGVhc2VzIHRoYXQgZG9lcyBub3QgY29udGFpbnMgaGlkZGVuIG9uZXMKKyAgICAgICAgICAgICAgICBhbGxfdmVyc2lvbnMgPSBnZXRfdmVyc2lvbnMocHJvamVjdF9uYW1lLCBzaG93X2hpZGRlbikKKyAgICAgICAgICAgICAgICBleGlzdGluZ192ZXJzaW9ucyA9IHByb2plY3QuZ2V0X3ZlcnNpb25zKCkKKyAgICAgICAgICAgICAgICBoaWRkZW5fdmVyc2lvbnMgPSBzZXQoYWxsX3ZlcnNpb25zKSAtIHNldChleGlzdGluZ192ZXJzaW9ucykKKyAgICAgICAgICAgICAgICBmb3IgdmVyc2lvbiBpbiBoaWRkZW5fdmVyc2lvbnM6CisgICAgICAgICAgICAgICAgICAgIHByb2plY3QuYWRkX3JlbGVhc2UocmVsZWFzZT1SZWxlYXNlSW5mbyhwcm9qZWN0X25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb24sIGluZGV4PXNlbGYuX2luZGV4KSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHZlcnNpb25zID0gZ2V0X3ZlcnNpb25zKHByb2plY3RfbmFtZSwgc2hvd19oaWRkZW4pCisgICAgICAgICAgICBpZiBub3QgdmVyc2lvbnM6CisgICAgICAgICAgICAgICAgcmFpc2UgUHJvamVjdE5vdEZvdW5kKHByb2plY3RfbmFtZSkKKyAgICAgICAgICAgIHByb2plY3QgPSBzZWxmLl9nZXRfcHJvamVjdChwcm9qZWN0X25hbWUpCisgICAgICAgICAgICBwcm9qZWN0LmFkZF9yZWxlYXNlcyhbUmVsZWFzZUluZm8ocHJvamVjdF9uYW1lLCB2ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4PXNlbGYuX2luZGV4KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciB2ZXJzaW9uIGluIHZlcnNpb25zXSkKKyAgICAgICAgcHJvamVjdCA9IHByb2plY3QuZmlsdGVyKHByZWRpY2F0ZSkKKyAgICAgICAgaWYgbGVuKHByb2plY3QpID09IDA6CisgICAgICAgICAgICByYWlzZSBSZWxlYXNlTm90Rm91bmQoIiVzIiAlIHByZWRpY2F0ZSkKKyAgICAgICAgcHJvamVjdC5zb3J0X3JlbGVhc2VzKHByZWZlcl9maW5hbCkKKyAgICAgICAgcmV0dXJuIHByb2plY3QKKworCisgICAgZGVmIGdldF9kaXN0cmlidXRpb25zKHNlbGYsIHByb2plY3RfbmFtZSwgdmVyc2lvbik6CisgICAgICAgICIiIkdyYWIgaW5mb3JtYXRpb25zIGFib3V0IGRpc3RyaWJ1dGlvbnMgZnJvbSBYTUwtUlBDLgorCisgICAgICAgIFJldHVybiBhIFJlbGVhc2VJbmZvIG9iamVjdCwgd2l0aCBkaXN0cmlidXRpb24tcmVsYXRlZCBpbmZvcm1hdGlvbnMKKyAgICAgICAgZmlsbGVkIGluLgorICAgICAgICAiIiIKKyAgICAgICAgdXJsX2luZm9zID0gc2VsZi5wcm94eS5yZWxlYXNlX3VybHMocHJvamVjdF9uYW1lLCB2ZXJzaW9uKQorICAgICAgICBwcm9qZWN0ID0gc2VsZi5fZ2V0X3Byb2plY3QocHJvamVjdF9uYW1lKQorICAgICAgICBpZiB2ZXJzaW9uIG5vdCBpbiBwcm9qZWN0LmdldF92ZXJzaW9ucygpOgorICAgICAgICAgICAgcHJvamVjdC5hZGRfcmVsZWFzZShyZWxlYXNlPVJlbGVhc2VJbmZvKHByb2plY3RfbmFtZSwgdmVyc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleD1zZWxmLl9pbmRleCkpCisgICAgICAgIHJlbGVhc2UgPSBwcm9qZWN0LmdldF9yZWxlYXNlKHZlcnNpb24pCisgICAgICAgIGZvciBpbmZvIGluIHVybF9pbmZvczoKKyAgICAgICAgICAgIHBhY2thZ2V0eXBlID0gaW5mb1sncGFja2FnZXR5cGUnXQorICAgICAgICAgICAgZGlzdF9pbmZvcyA9IHsndXJsJzogaW5mb1sndXJsJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICdoYXNodmFsJzogaW5mb1snbWQ1X2RpZ2VzdCddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnaGFzaG5hbWUnOiAnbWQ1JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lzX2V4dGVybmFsJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICdweXRob25fdmVyc2lvbic6IGluZm9bJ3B5dGhvbl92ZXJzaW9uJ119CisgICAgICAgICAgICByZWxlYXNlLmFkZF9kaXN0cmlidXRpb24ocGFja2FnZXR5cGUsICoqZGlzdF9pbmZvcykKKyAgICAgICAgcmV0dXJuIHJlbGVhc2UKKworICAgIGRlZiBnZXRfbWV0YWRhdGEoc2VsZiwgcHJvamVjdF9uYW1lLCB2ZXJzaW9uKToKKyAgICAgICAgIiIiUmV0cmlldmUgcHJvamVjdCBtZXRhZGF0YS4KKworICAgICAgICBSZXR1cm4gYSBSZWxlYXNlSW5mbyBvYmplY3QsIHdpdGggbWV0YWRhdGEgaW5mb3JtYXRpb25zIGZpbGxlZCBpbi4KKyAgICAgICAgIiIiCisgICAgICAgICMgdG8gYmUgY2FzZS1pbnNlbnNpdGl2ZSwgZ2V0IHRoZSBpbmZvcm1hdGlvbnMgZnJvbSB0aGUgWE1MUlBDIEFQSQorICAgICAgICBwcm9qZWN0cyA9IFtkWyduYW1lJ10gZm9yIGQgaW4KKyAgICAgICAgICAgICAgICAgICAgc2VsZi5wcm94eS5zZWFyY2goeyduYW1lJzogcHJvamVjdF9uYW1lfSkKKyAgICAgICAgICAgICAgICAgICAgaWYgZFsnbmFtZSddLmxvd2VyKCkgPT0gcHJvamVjdF9uYW1lXQorICAgICAgICBpZiBsZW4ocHJvamVjdHMpID4gMDoKKyAgICAgICAgICAgIHByb2plY3RfbmFtZSA9IHByb2plY3RzWzBdCisKKyAgICAgICAgbWV0YWRhdGEgPSBzZWxmLnByb3h5LnJlbGVhc2VfZGF0YShwcm9qZWN0X25hbWUsIHZlcnNpb24pCisgICAgICAgIHByb2plY3QgPSBzZWxmLl9nZXRfcHJvamVjdChwcm9qZWN0X25hbWUpCisgICAgICAgIGlmIHZlcnNpb24gbm90IGluIHByb2plY3QuZ2V0X3ZlcnNpb25zKCk6CisgICAgICAgICAgICBwcm9qZWN0LmFkZF9yZWxlYXNlKHJlbGVhc2U9UmVsZWFzZUluZm8ocHJvamVjdF9uYW1lLCB2ZXJzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4PXNlbGYuX2luZGV4KSkKKyAgICAgICAgcmVsZWFzZSA9IHByb2plY3QuZ2V0X3JlbGVhc2UodmVyc2lvbikKKyAgICAgICAgcmVsZWFzZS5zZXRfbWV0YWRhdGEobWV0YWRhdGEpCisgICAgICAgIHJldHVybiByZWxlYXNlCisKKyAgICBkZWYgc2VhcmNoX3Byb2plY3RzKHNlbGYsIG5hbWU9Tm9uZSwgb3BlcmF0b3I9Im9yIiwgKiprd2FyZ3MpOgorICAgICAgICAiIiJGaW5kIHVzaW5nIHRoZSBrZXlzIHByb3ZpZGVkIGluIGt3YXJncy4KKworICAgICAgICBZb3UgY2FuIHNldCBvcGVyYXRvciB0byAiYW5kIiBvciAib3IiLgorICAgICAgICAiIiIKKyAgICAgICAgZm9yIGtleSBpbiBrd2FyZ3M6CisgICAgICAgICAgICBpZiBrZXkgbm90IGluIF9TRUFSQ0hfRklFTERTOgorICAgICAgICAgICAgICAgIHJhaXNlIEludmFsaWRTZWFyY2hGaWVsZChrZXkpCisgICAgICAgIGlmIG5hbWU6CisgICAgICAgICAgICBrd2FyZ3NbIm5hbWUiXSA9IG5hbWUKKyAgICAgICAgcHJvamVjdHMgPSBzZWxmLnByb3h5LnNlYXJjaChrd2FyZ3MsIG9wZXJhdG9yKQorICAgICAgICBmb3IgcCBpbiBwcm9qZWN0czoKKyAgICAgICAgICAgIHByb2plY3QgPSBzZWxmLl9nZXRfcHJvamVjdChwWyduYW1lJ10pCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgcHJvamVjdC5hZGRfcmVsZWFzZShyZWxlYXNlPVJlbGVhc2VJbmZvKHBbJ25hbWUnXSwKKyAgICAgICAgICAgICAgICAgICAgcFsndmVyc2lvbiddLCBtZXRhZGF0YT17J3N1bW1hcnknOiBwWydzdW1tYXJ5J119LAorICAgICAgICAgICAgICAgICAgICBpbmRleD1zZWxmLl9pbmRleCkpCisgICAgICAgICAgICBleGNlcHQgSXJyYXRpb25hbFZlcnNpb25FcnJvciBhcyBlOgorICAgICAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCJJcnJhdGlvbmFsIHZlcnNpb24gZXJyb3IgZm91bmQ6ICVzIiwgZSkKKyAgICAgICAgcmV0dXJuIFtzZWxmLl9wcm9qZWN0c1twWyduYW1lJ10ubG93ZXIoKV0gZm9yIHAgaW4gcHJvamVjdHNdCisKKyAgICBkZWYgZ2V0X2FsbF9wcm9qZWN0cyhzZWxmKToKKyAgICAgICAgIiIiUmV0dXJuIHRoZSBsaXN0IG9mIGFsbCBwcm9qZWN0cyByZWdpc3RlcmVkIGluIHRoZSBwYWNrYWdlIGluZGV4IiIiCisgICAgICAgIHByb2plY3RzID0gc2VsZi5wcm94eS5saXN0X3BhY2thZ2VzKCkKKyAgICAgICAgZm9yIG5hbWUgaW4gcHJvamVjdHM6CisgICAgICAgICAgICBzZWxmLmdldF9yZWxlYXNlcyhuYW1lLCBzaG93X2hpZGRlbj1UcnVlKQorCisgICAgICAgIHJldHVybiBbc2VsZi5fcHJvamVjdHNbbmFtZS5sb3dlcigpXSBmb3IgbmFtZSBpbiBzZXQocHJvamVjdHMpXQorCisgICAgQHByb3BlcnR5CisgICAgZGVmIHByb3h5KHNlbGYpOgorICAgICAgICAiIiJQcm9wZXJ0eSB1c2VkIHRvIHJldHVybiB0aGUgWE1MUlBDIHNlcnZlciBwcm94eS4KKworICAgICAgICBJZiBubyBzZXJ2ZXIgcHJveHkgaXMgZGVmaW5lZCB5ZXQsIGNyZWF0ZXMgYSBuZXcgb25lOjoKKworICAgICAgICAgICAgPj4+IGNsaWVudCA9IENsaWVudCgpCisgICAgICAgICAgICA+Pj4gY2xpZW50LnByb3h5KCkKKyAgICAgICAgICAgIDxTZXJ2ZXJQcm94eSBmb3IgcHl0aG9uLm9yZy9weXBpPgorCisgICAgICAgICIiIgorICAgICAgICBpZiBub3QgaGFzYXR0cihzZWxmLCAnX3NlcnZlcl9wcm94eScpOgorICAgICAgICAgICAgc2VsZi5fc2VydmVyX3Byb3h5ID0geG1scnBjLmNsaWVudC5TZXJ2ZXJQcm94eShzZWxmLnNlcnZlcl91cmwpCisKKyAgICAgICAgcmV0dXJuIHNlbGYuX3NlcnZlcl9wcm94eQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy9ydW4ucHkgYi9MaWIvcGFja2FnaW5nL3J1bi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NzU2ZjdjCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy9ydW4ucHkKQEAgLTAsMCArMSw2NjYgQEAKKyIiIk1haW4gY29tbWFuZCBsaW5lIHBhcnNlci4gIEltcGxlbWVudHMgdGhlIHB5c2V0dXAgc2NyaXB0LiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHN5cworaW1wb3J0IGdldG9wdAoraW1wb3J0IGxvZ2dpbmcKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBfaXNfYXJjaGl2ZV9maWxlLCBnZW5lcmF0ZV9zZXR1cF9weQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZCBpbXBvcnQgZ2V0X2NvbW1hbmRfY2xhc3MsIFNUQU5EQVJEX0NPTU1BTkRTCitmcm9tIHBhY2thZ2luZy5pbnN0YWxsIGltcG9ydCBpbnN0YWxsLCBpbnN0YWxsX2xvY2FsX3Byb2plY3QsIHJlbW92ZQorZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0IGdldF9kaXN0cmlidXRpb24sIGdldF9kaXN0cmlidXRpb25zCitmcm9tIHBhY2thZ2luZy5kZXBncmFwaCBpbXBvcnQgZ2VuZXJhdGVfZ3JhcGgKK2Zyb20gcGFja2FnaW5nLmZhbmN5X2dldG9wdCBpbXBvcnQgRmFuY3lHZXRvcHQKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKFBhY2thZ2luZ0FyZ0Vycm9yLCBQYWNrYWdpbmdFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2luZ01vZHVsZUVycm9yLCBQYWNrYWdpbmdDbGFzc0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ0NvbXBpbGVyRXJyb3IpCisKKworY29tbWFuZF9yZSA9IHJlLmNvbXBpbGUocideW2EtekEtWl0oW2EtekEtWjAtOV9dKikkJykKKworY29tbW9uX3VzYWdlID0gIiIiXAorQWN0aW9uczoKKyUoYWN0aW9ucylzCisKK1RvIGdldCBtb3JlIGhlbHAgb24gYW4gYWN0aW9uLCB1c2U6CisKKyAgICBweXNldHVwIGFjdGlvbiAtLWhlbHAKKyIiIgorCitnbG9iYWxfb3B0aW9ucyA9IFsKKyAgICAjIFRoZSBmb3VydGggZW50cnkgZm9yIHZlcmJvc2UgbWVhbnMgdGhhdCBpdCBjYW4gYmUgcmVwZWF0ZWQuCisgICAgKCd2ZXJib3NlJywgJ3YnLCAicnVuIHZlcmJvc2VseSAoZGVmYXVsdCkiLCBUcnVlKSwKKyAgICAoJ3F1aWV0JywgJ3EnLCAicnVuIHF1aWV0bHkgKHR1cm5zIHZlcmJvc2l0eSBvZmYpIiksCisgICAgKCdkcnktcnVuJywgJ24nLCAiZG9uJ3QgYWN0dWFsbHkgZG8gYW55dGhpbmciKSwKKyAgICAoJ2hlbHAnLCAnaCcsICJzaG93IGRldGFpbGVkIGhlbHAgbWVzc2FnZSIpLAorICAgICgnbm8tdXNlci1jZmcnLCBOb25lLCAnaWdub3JlIHB5ZGlzdHV0aWxzLmNmZyBpbiB5b3VyIGhvbWUgZGlyZWN0b3J5JyksCisgICAgKCd2ZXJzaW9uJywgTm9uZSwgJ0Rpc3BsYXkgdGhlIHZlcnNpb24nKSwKK10KKworbmVnYXRpdmVfb3B0ID0geydxdWlldCc6ICd2ZXJib3NlJ30KKworZGlzcGxheV9vcHRpb25zID0gWworICAgICgnaGVscC1jb21tYW5kcycsIE5vbmUsICJsaXN0IGFsbCBhdmFpbGFibGUgY29tbWFuZHMiKSwKK10KKworZGlzcGxheV9vcHRpb25fbmFtZXMgPSBbeFswXS5yZXBsYWNlKCctJywgJ18nKSBmb3IgeCBpbiBkaXNwbGF5X29wdGlvbnNdCisKKworZGVmIF9wYXJzZV9hcmdzKGFyZ3MsIG9wdGlvbnMsIGxvbmdfb3B0aW9ucyk6CisgICAgIiIiVHJhbnNmb3JtIHN5cy5hcmd2IGlucHV0IGludG8gYSBkaWN0LgorCisgICAgOnBhcmFtIGFyZ3M6IHRoZSBhcmdzIHRvIHBhcnNlIChpLmUgc3lzLmFyZ3YpCisgICAgOnBhcmFtIG9wdGlvbnM6IHRoZSBsaXN0IG9mIG9wdGlvbnMgdG8gcGFzcyB0byBnZXRvcHQKKyAgICA6cGFyYW0gbG9uZ19vcHRpb25zOiB0aGUgbGlzdCBvZiBzdHJpbmcgd2l0aCB0aGUgbmFtZXMgb2YgdGhlIGxvbmcgb3B0aW9ucworICAgICAgICAgICAgICAgICAgICAgICAgIHRvIGJlIHBhc3NlZCB0byBnZXRvcHQuCisKKyAgICBUaGUgZnVuY3Rpb24gcmV0dXJucyBhIGRpY3Qgd2l0aCBvcHRpb25zL2xvbmdfb3B0aW9ucyBhcyBrZXlzIGFuZCBtYXRjaGluZworICAgIHZhbHVlcyBhcyB2YWx1ZXMuCisgICAgIiIiCisgICAgb3B0bGlzdCwgYXJncyA9IGdldG9wdC5nbnVfZ2V0b3B0KGFyZ3MsIG9wdGlvbnMsIGxvbmdfb3B0aW9ucykKKyAgICBvcHRkaWN0ID0ge30KKyAgICBvcHRkaWN0WydhcmdzJ10gPSBhcmdzCisgICAgZm9yIGssIHYgaW4gb3B0bGlzdDoKKyAgICAgICAgayA9IGsubHN0cmlwKCctJykKKyAgICAgICAgaWYgayBub3QgaW4gb3B0ZGljdDoKKyAgICAgICAgICAgIG9wdGRpY3Rba10gPSBbXQorICAgICAgICAgICAgaWYgdjoKKyAgICAgICAgICAgICAgICBvcHRkaWN0W2tdLmFwcGVuZCh2KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgb3B0ZGljdFtrXS5hcHBlbmQodikKKyAgICByZXR1cm4gb3B0ZGljdAorCisKK2NsYXNzIGFjdGlvbl9oZWxwOgorICAgICIiIlByaW50cyBhIGhlbHAgbWVzc2FnZSB3aGVuIHRoZSBzdGFuZGFyZCBoZWxwIGZsYWdzOiAtaCBhbmQgLS1oZWxwCisgICAgYXJlIHVzZWQgb24gdGhlIGNvbW1hbmRsaW5lLgorICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGhlbHBfbXNnKToKKyAgICAgICAgc2VsZi5oZWxwX21zZyA9IGhlbHBfbXNnCisKKyAgICBkZWYgX19jYWxsX18oc2VsZiwgZik6CisgICAgICAgIGRlZiB3cmFwcGVyKCphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICAgICBmX2FyZ3MgPSBhcmdzWzFdCisgICAgICAgICAgICBpZiAnLS1oZWxwJyBpbiBmX2FyZ3Mgb3IgJy1oJyBpbiBmX2FyZ3M6CisgICAgICAgICAgICAgICAgcHJpbnQoc2VsZi5oZWxwX21zZykKKyAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgICAgIHJldHVybiBmKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgcmV0dXJuIHdyYXBwZXIKKworCitAYWN0aW9uX2hlbHAoIiIiXAorVXNhZ2U6IHB5c2V0dXAgY3JlYXRlCisgICBvcjogcHlzZXR1cCBjcmVhdGUgLS1oZWxwCisKK0NyZWF0ZSBhIG5ldyBQeXRob24gcHJvamVjdC4KKyIiIikKK2RlZiBfY3JlYXRlKGRpc3RwYXRjaGVyLCBhcmdzLCAqKmt3KToKKyAgICBmcm9tIHBhY2thZ2luZy5jcmVhdGUgaW1wb3J0IG1haW4KKyAgICByZXR1cm4gbWFpbigpCisKKworQGFjdGlvbl9oZWxwKCIiIlwKK1VzYWdlOiBweXNldHVwIGdlbmVyYXRlLXNldHVwCisgICBvcjogcHlzZXR1cCBnZW5lcmF0ZS1zZXR1cCAtLWhlbHAKKworR2VuZXJhdGUgYSBzZXR1cC5weSBzY3JpcHQgZm9yIGJhY2t3YXJkLWNvbXBhdGliaWxpdHkgcHVycG9zZXMuCisiIiIpCitkZWYgX2dlbmVyYXRlKGRpc3RwYXRjaGVyLCBhcmdzLCAqKmt3KToKKyAgICBnZW5lcmF0ZV9zZXR1cF9weSgpCisgICAgbG9nZ2VyLmluZm8oJ1RoZSBzZXR1cC5weSB3YXMgZ2VuZXJhdGVkJykKKworCitAYWN0aW9uX2hlbHAoIiIiXAorVXNhZ2U6IHB5c2V0dXAgZ3JhcGggZGlzdAorICAgb3I6IHB5c2V0dXAgZ3JhcGggLS1oZWxwCisKK1ByaW50IGRlcGVuZGVuY3kgZ3JhcGggZm9yIHRoZSBkaXN0cmlidXRpb24uCisKK3Bvc2l0aW9uYWwgYXJndW1lbnRzOgorICAgZGlzdCAgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbiBuYW1lCisiIiIpCitkZWYgX2dyYXBoKGRpc3BhdGNoZXIsIGFyZ3MsICoqa3cpOgorICAgIG5hbWUgPSBhcmdzWzFdCisgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24obmFtZSwgdXNlX2VnZ19pbmZvPVRydWUpCisgICAgaWYgZGlzdCBpcyBOb25lOgorICAgICAgICBsb2dnZXIud2FybmluZygnRGlzdHJpYnV0aW9uIG5vdCBmb3VuZC4nKQorICAgICAgICByZXR1cm4gMQorICAgIGVsc2U6CisgICAgICAgIGRpc3RzID0gZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPVRydWUpCisgICAgICAgIGdyYXBoID0gZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisgICAgICAgIHByaW50KGdyYXBoLnJlcHJfbm9kZShkaXN0KSkKKworCitAYWN0aW9uX2hlbHAoIiIiXAorVXNhZ2U6IHB5c2V0dXAgaW5zdGFsbCBbZGlzdF0KKyAgIG9yOiBweXNldHVwIGluc3RhbGwgW2FyY2hpdmVdCisgICBvcjogcHlzZXR1cCBpbnN0YWxsIFtzcmNfZGlyXQorICAgb3I6IHB5c2V0dXAgaW5zdGFsbCAtLWhlbHAKKworSW5zdGFsbCBhIFB5dGhvbiBkaXN0cmlidXRpb24gZnJvbSB0aGUgaW5kZXhlcywgc291cmNlIGRpcmVjdG9yeSwgb3Igc2Rpc3QuCisKK3Bvc2l0aW9uYWwgYXJndW1lbnRzOgorICAgYXJjaGl2ZSAgcGF0aCB0byBzb3VyY2UgZGlzdHJpYnV0aW9uICh6aXAsIHRhci5neikKKyAgIGRpc3QgICAgIGRpc3RyaWJ1dGlvbiBuYW1lIHRvIGluc3RhbGwgZnJvbSB0aGUgaW5kZXhlcworICAgc2NyX2RpciAgcGF0aCB0byBzb3VyY2UgZGlyZWN0b3J5CisiIiIpCitkZWYgX2luc3RhbGwoZGlzcGF0Y2hlciwgYXJncywgKiprdyk6CisgICAgIyBmaXJzdCBjaGVjayBpZiB3ZSBhcmUgaW4gYSBzb3VyY2UgZGlyZWN0b3J5CisgICAgaWYgbGVuKGFyZ3MpIDwgMjoKKyAgICAgICAgIyBhcmUgd2UgaW5zaWRlIGEgcHJvamVjdCBkaXI/CisgICAgICAgIGlmIG9zLnBhdGguaXNmaWxlKCdzZXR1cC5jZmcnKSBvciBvcy5wYXRoLmlzZmlsZSgnc2V0dXAucHknKToKKyAgICAgICAgICAgIGFyZ3MuaW5zZXJ0KDEsIG9zLmdldGN3ZCgpKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoJ05vIHByb2plY3QgdG8gaW5zdGFsbC4nKQorICAgICAgICAgICAgcmV0dXJuIDEKKworICAgIHRhcmdldCA9IGFyZ3NbMV0KKyAgICAjIGluc3RhbGxpbmcgZnJvbSBhIHNvdXJjZSBkaXIgb3IgYXJjaGl2ZSBmaWxlPworICAgIGlmIG9zLnBhdGguaXNkaXIodGFyZ2V0KSBvciBfaXNfYXJjaGl2ZV9maWxlKHRhcmdldCk6CisgICAgICAgIHJldHVybiBub3QgaW5zdGFsbF9sb2NhbF9wcm9qZWN0KHRhcmdldCkKKyAgICBlbHNlOgorICAgICAgICAjIGRvd25sb2FkIGZyb20gUHlQSQorICAgICAgICByZXR1cm4gbm90IGluc3RhbGwodGFyZ2V0KQorCisKK0BhY3Rpb25faGVscCgiIiJcCitVc2FnZTogcHlzZXR1cCBtZXRhZGF0YSBbZGlzdF0KKyAgIG9yOiBweXNldHVwIG1ldGFkYXRhIFtkaXN0XSBbLWYgZmllbGQgLi4uXQorICAgb3I6IHB5c2V0dXAgbWV0YWRhdGEgLS1oZWxwCisKK1ByaW50IG1ldGFkYXRhIGZvciB0aGUgZGlzdHJpYnV0aW9uLgorCitwb3NpdGlvbmFsIGFyZ3VtZW50czoKKyAgIGRpc3QgIGluc3RhbGxlZCBkaXN0cmlidXRpb24gbmFtZQorCitvcHRpb25hbCBhcmd1bWVudHM6CisgICAtZiAgICAgbWV0YWRhdGEgZmllbGQgdG8gcHJpbnQ7IG9taXQgdG8gZ2V0IGFsbCBmaWVsZHMKKyIiIikKK2RlZiBfbWV0YWRhdGEoZGlzcGF0Y2hlciwgYXJncywgKiprdyk6CisgICAgb3B0cyA9IF9wYXJzZV9hcmdzKGFyZ3NbMTpdLCAnZjonLCBbXSkKKyAgICBpZiBvcHRzWydhcmdzJ106CisgICAgICAgIG5hbWUgPSBvcHRzWydhcmdzJ11bMF0KKyAgICAgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24obmFtZSwgdXNlX2VnZ19pbmZvPVRydWUpCisgICAgICAgIGlmIGRpc3QgaXMgTm9uZToKKyAgICAgICAgICAgIGxvZ2dlci53YXJuaW5nKCclciBub3QgaW5zdGFsbGVkJywgbmFtZSkKKyAgICAgICAgICAgIHJldHVybiAxCisgICAgZWxpZiBvcy5wYXRoLmlzZmlsZSgnc2V0dXAuY2ZnJyk6CisgICAgICAgIGxvZ2dlci5pbmZvKCdzZWFyY2hpbmcgbG9jYWwgZGlyIGZvciBtZXRhZGF0YScpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKSAgIyBYWFggdXNlIGNvbmZpZyBtb2R1bGUKKyAgICAgICAgZGlzdC5wYXJzZV9jb25maWdfZmlsZXMoKQorICAgIGVsc2U6CisgICAgICAgIGxvZ2dlci53YXJuaW5nKCdubyBhcmd1bWVudCBnaXZlbiBhbmQgbm8gbG9jYWwgc2V0dXAuY2ZnIGZvdW5kJykKKyAgICAgICAgcmV0dXJuIDEKKworICAgIG1ldGFkYXRhID0gZGlzdC5tZXRhZGF0YQorCisgICAgaWYgJ2YnIGluIG9wdHM6CisgICAgICAgIGtleXMgPSAoayBmb3IgayBpbiBvcHRzWydmJ10gaWYgayBpbiBtZXRhZGF0YSkKKyAgICBlbHNlOgorICAgICAgICBrZXlzID0gbWV0YWRhdGEua2V5cygpCisKKyAgICBmb3Iga2V5IGluIGtleXM6CisgICAgICAgIGlmIGtleSBpbiBtZXRhZGF0YToKKyAgICAgICAgICAgIHByaW50KG1ldGFkYXRhLl9jb252ZXJ0X25hbWUoa2V5KSArICc6JykKKyAgICAgICAgICAgIHZhbHVlID0gbWV0YWRhdGFba2V5XQorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZSh2YWx1ZSwgbGlzdCk6CisgICAgICAgICAgICAgICAgZm9yIHYgaW4gdmFsdWU6CisgICAgICAgICAgICAgICAgICAgIHByaW50KCcgICAnLCB2KQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBwcmludCgnICAgJywgdmFsdWUucmVwbGFjZSgnXG4nLCAnXG4gICAgJykpCisKKworQGFjdGlvbl9oZWxwKCIiIlwKK1VzYWdlOiBweXNldHVwIHJlbW92ZSBkaXN0IFsteV0KKyAgIG9yOiBweXNldHVwIHJlbW92ZSAtLWhlbHAKKworVW5pbnN0YWxsIGEgUHl0aG9uIGRpc3RyaWJ1dGlvbi4KKworcG9zaXRpb25hbCBhcmd1bWVudHM6CisgICBkaXN0ICBpbnN0YWxsZWQgZGlzdHJpYnV0aW9uIG5hbWUKKworb3B0aW9uYWwgYXJndW1lbnRzOgorICAgLXkgIGF1dG8gY29uZmlybSBkaXN0cmlidXRpb24gcmVtb3ZhbAorIiIiKQorZGVmIF9yZW1vdmUoZGlzdHBhdGNoZXIsIGFyZ3MsICoqa3cpOgorICAgIG9wdHMgPSBfcGFyc2VfYXJncyhhcmdzWzE6XSwgJ3knLCBbXSkKKyAgICBpZiAneScgaW4gb3B0czoKKyAgICAgICAgYXV0b19jb25maXJtID0gVHJ1ZQorICAgIGVsc2U6CisgICAgICAgIGF1dG9fY29uZmlybSA9IEZhbHNlCisKKyAgICByZXRjb2RlID0gMAorICAgIGZvciBkaXN0IGluIHNldChvcHRzWydhcmdzJ10pOgorICAgICAgICB0cnk6CisgICAgICAgICAgICByZW1vdmUoZGlzdCwgYXV0b19jb25maXJtPWF1dG9fY29uZmlybSkKKyAgICAgICAgZXhjZXB0IFBhY2thZ2luZ0Vycm9yOgorICAgICAgICAgICAgbG9nZ2VyLndhcm5pbmcoJyVyIG5vdCBpbnN0YWxsZWQnLCBkaXN0KQorICAgICAgICAgICAgcmV0Y29kZSA9IDEKKworICAgIHJldHVybiByZXRjb2RlCisKKworQGFjdGlvbl9oZWxwKCIiIlwKK1VzYWdlOiBweXNldHVwIHJ1biBbZ2xvYmFsX29wdHNdIGNtZDEgW2NtZDFfb3B0c10gW2NtZDIgW2NtZDJfb3B0c10gLi4uXQorICAgb3I6IHB5c2V0dXAgcnVuIC0taGVscAorICAgb3I6IHB5c2V0dXAgcnVuIC0tbGlzdC1jb21tYW5kcworICAgb3I6IHB5c2V0dXAgcnVuIGNtZCAtLWhlbHAKKyIiIikKK2RlZiBfcnVuKGRpc3BhdGNoZXIsIGFyZ3MsICoqa3cpOgorICAgIHBhcnNlciA9IGRpc3BhdGNoZXIucGFyc2VyCisgICAgYXJncyA9IGFyZ3NbMTpdCisKKyAgICBjb21tYW5kcyA9IFNUQU5EQVJEX0NPTU1BTkRTICAjICsgZXh0cmEgY29tbWFuZHMKKworICAgIGlmIGFyZ3MgPT0gWyctLWxpc3QtY29tbWFuZHMnXToKKyAgICAgICAgcHJpbnQoJ0xpc3Qgb2YgYXZhaWxhYmxlIGNvbW1hbmRzOicpCisgICAgICAgIGNtZHMgPSBzb3J0ZWQoY29tbWFuZHMpCisKKyAgICAgICAgZm9yIGNtZCBpbiBjbWRzOgorICAgICAgICAgICAgY2xzID0gZGlzcGF0Y2hlci5jbWRjbGFzcy5nZXQoY21kKSBvciBnZXRfY29tbWFuZF9jbGFzcyhjbWQpCisgICAgICAgICAgICBkZXNjID0gZ2V0YXR0cihjbHMsICdkZXNjcmlwdGlvbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyhubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpJykKKyAgICAgICAgICAgIHByaW50KCcgICVzOiAlcycgJSAoY21kLCBkZXNjKSkKKyAgICAgICAgcmV0dXJuCisKKyAgICB3aGlsZSBhcmdzOgorICAgICAgICBhcmdzID0gZGlzcGF0Y2hlci5fcGFyc2VfY29tbWFuZF9vcHRzKHBhcnNlciwgYXJncykKKyAgICAgICAgaWYgYXJncyBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAjIGNyZWF0ZSB0aGUgRGlzdHJpYnV0aW9uIGNsYXNzCisgICAgIyBuZWVkIHRvIGZlZWQgc2V0dXAuY2ZnIGhlcmUgIQorICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorCisgICAgIyBGaW5kIGFuZCBwYXJzZSB0aGUgY29uZmlnIGZpbGUocyk6IHRoZXkgd2lsbCBvdmVycmlkZSBvcHRpb25zIGZyb20KKyAgICAjIHRoZSBzZXR1cCBzY3JpcHQsIGJ1dCBiZSBvdmVycmlkZGVuIGJ5IHRoZSBjb21tYW5kIGxpbmUuCisKKyAgICAjIFhYWCBzdGlsbCBuZWVkIHRvIGJlIGV4dHJhY3RlZCBmcm9tIERpc3RyaWJ1dGlvbgorICAgIGRpc3QucGFyc2VfY29uZmlnX2ZpbGVzKCkKKworICAgIGZvciBjbWQgaW4gZGlzcGF0Y2hlci5jb21tYW5kczoKKyAgICAgICAgIyBGSVhNRSBuZWVkIHRvIGNhdGNoIE1ldGFkYXRhTWlzc2luZ0Vycm9yIGhlcmUgKGZyb20gdGhlIGNoZWNrIGNvbW1hbmQKKyAgICAgICAgIyBlLmcuKS0tb3IgY2F0Y2ggYW55IGV4Y2VwdGlvbiwgcHJpbnQgYW4gZXJyb3IgbWVzc2FnZSBhbmQgZXhpdCB3aXRoIDEKKyAgICAgICAgZGlzdC5ydW5fY29tbWFuZChjbWQsIGRpc3BhdGNoZXIuY29tbWFuZF9vcHRpb25zW2NtZF0pCisKKyAgICByZXR1cm4gMAorCisKK0BhY3Rpb25faGVscCgiIiJcCitVc2FnZTogcHlzZXR1cCBsaXN0IFtkaXN0IC4uLl0KKyAgIG9yOiBweXNldHVwIGxpc3QgLS1oZWxwCisKK1ByaW50IG5hbWUsIHZlcnNpb24gYW5kIGxvY2F0aW9uIGZvciB0aGUgbWF0Y2hpbmcgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbnMuCisKK3Bvc2l0aW9uYWwgYXJndW1lbnRzOgorICAgZGlzdCAgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbiBuYW1lOyBvbWl0IHRvIGdldCBhbGwgZGlzdHJpYnV0aW9ucworIiIiKQorZGVmIF9saXN0KGRpc3BhdGNoZXIsIGFyZ3MsICoqa3cpOgorICAgIG9wdHMgPSBfcGFyc2VfYXJncyhhcmdzWzE6XSwgJycsIFtdKQorICAgIGRpc3RzID0gZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPVRydWUpCisgICAgaWYgb3B0c1snYXJncyddOgorICAgICAgICByZXN1bHRzID0gKGQgZm9yIGQgaW4gZGlzdHMgaWYgZC5uYW1lLmxvd2VyKCkgaW4gb3B0c1snYXJncyddKQorICAgICAgICBsaXN0YWxsID0gRmFsc2UKKyAgICBlbHNlOgorICAgICAgICByZXN1bHRzID0gZGlzdHMKKyAgICAgICAgbGlzdGFsbCA9IFRydWUKKworICAgIG51bWJlciA9IDAKKyAgICBmb3IgZGlzdCBpbiByZXN1bHRzOgorICAgICAgICBwcmludCgnJXIgJXMgKGZyb20gJXIpJyAlIChkaXN0Lm5hbWUsIGRpc3QudmVyc2lvbiwgZGlzdC5wYXRoKSkKKyAgICAgICAgbnVtYmVyICs9IDEKKworICAgIGlmIG51bWJlciA9PSAwOgorICAgICAgICBpZiBsaXN0YWxsOgorICAgICAgICAgICAgbG9nZ2VyLmluZm8oJ05vdGhpbmcgc2VlbXMgdG8gYmUgaW5zdGFsbGVkLicpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsb2dnZXIud2FybmluZygnTm8gbWF0Y2hpbmcgZGlzdHJpYnV0aW9uIGZvdW5kLicpCisgICAgICAgICAgICByZXR1cm4gMQorICAgIGVsc2U6CisgICAgICAgIGxvZ2dlci5pbmZvKCdGb3VuZCAlZCBwcm9qZWN0cyBpbnN0YWxsZWQuJywgbnVtYmVyKQorCisKK0BhY3Rpb25faGVscCgiIiJcCitVc2FnZTogcHlzZXR1cCBzZWFyY2ggW3Byb2plY3RdIFstLXNpbXBsZSBbdXJsXV0gWy0teG1scnBjIFt1cmxdIFstLWZpZWxkbmFtZSB2YWx1ZSAuLi5dIC0tb3BlcmF0b3Igb3J8YW5kXQorICAgb3I6IHB5c2V0dXAgc2VhcmNoIC0taGVscAorCitTZWFyY2ggdGhlIGluZGV4ZXMgZm9yIHRoZSBtYXRjaGluZyBwcm9qZWN0cy4KKworcG9zaXRpb25hbCBhcmd1bWVudHM6CisgICAgcHJvamVjdCAgICAgdGhlIHByb2plY3QgcGF0dGVybiB0byBzZWFyY2ggZm9yCisKK29wdGlvbmFsIGFyZ3VtZW50czoKKyAgICAtLXhtbHJwYyBbdXJsXSAgICAgIHdoZXRoZXIgdG8gdXNlIHRoZSB4bWxycGMgaW5kZXggb3Igbm90LiBJZiBhbiB1cmwgaXMKKyAgICAgICAgICAgICAgICAgICAgICAgIHNwZWNpZmllZCwgaXQgd2lsbCBiZSB1c2VkIHJhdGhlciB0aGFuIHRoZSBkZWZhdWx0IG9uZS4KKworICAgIC0tc2ltcGxlIFt1cmxdICAgICAgd2hldGhlciB0byB1c2UgdGhlIHNpbXBsZSBpbmRleCBvciBub3QuIElmIGFuIHVybCBpcworICAgICAgICAgICAgICAgICAgICAgICAgc3BlY2lmaWVkLCBpdCB3aWxsIGJlIHVzZWQgcmF0aGVyIHRoYW4gdGhlIGRlZmF1bHQgb25lLgorCisgICAgLS1maWVsZG5hbWUgdmFsdWUgICBNYWtlIGEgc2VhcmNoIG9uIHRoaXMgZmllbGQuIENhbiBvbmx5IGJlIHVzZWQgaWYKKyAgICAgICAgICAgICAgICAgICAgICAgIC0teG1scnBjIGhhcyBiZWVuIHNlbGVjdGVkIG9yIGlzIHRoZSBkZWZhdWx0IGluZGV4LgorCisgICAgLS1vcGVyYXRvciBvcnxhbmQgICBEZWZpbmVzIHdoYXQgaXMgdGhlIG9wZXJhdG9yIHRvIHVzZSB3aGVuIGRvaW5nIHhtbHJwYworICAgICAgICAgICAgICAgICAgICAgICAgc2VhcmNocyB3aXRoIG11bHRpcGxlIGZpZWxkbmFtZXMuIENhbiBvbmx5IGJlIHVzZWQgaWYKKyAgICAgICAgICAgICAgICAgICAgICAgIC0teG1scnBjIGhhcyBiZWVuIHNlbGVjdGVkIG9yIGlzIHRoZSBkZWZhdWx0IGluZGV4LgorIiIiKQorZGVmIF9zZWFyY2goZGlzcGF0Y2hlciwgYXJncywgKiprdyk6CisgICAgIiIiVGhlIHNlYXJjaCBhY3Rpb24uCisKKyAgICBJdCBpcyBhYmxlIHRvIHNlYXJjaCBmb3IgYSBzcGVjaWZpYyBpbmRleCAoc3BlY2lmaWVkIHdpdGggLS1pbmRleCksIHVzaW5nCisgICAgdGhlIHNpbXBsZSBvciB4bWxycGMgaW5kZXggdHlwZXMgKHdpdGggLS10eXBlIHhtbHJwYyAvIC0tdHlwZSBzaW1wbGUpCisgICAgIiIiCisgICAgI29wdHMgPSBfcGFyc2VfYXJncyhhcmdzWzE6XSwgJycsIFsnc2ltcGxlJywgJ3htbHJwYyddKQorICAgICMgMS4gd2hhdCBraW5kIG9mIGluZGV4IGlzIHJlcXVlc3RlZCA/ICh4bWxycGMgLyBzaW1wbGUpCisgICAgbG9nZ2VyLmVycm9yKCdub3QgaW1wbGVtZW50ZWQnKQorICAgIHJldHVybiAxCisKKworYWN0aW9ucyA9IFsKKyAgICAoJ3J1bicsICdSdW4gb25lIG9yIHNldmVyYWwgY29tbWFuZHMnLCBfcnVuKSwKKyAgICAoJ21ldGFkYXRhJywgJ0Rpc3BsYXkgdGhlIG1ldGFkYXRhIG9mIGEgcHJvamVjdCcsIF9tZXRhZGF0YSksCisgICAgKCdpbnN0YWxsJywgJ0luc3RhbGwgYSBwcm9qZWN0JywgX2luc3RhbGwpLAorICAgICgncmVtb3ZlJywgJ1JlbW92ZSBhIHByb2plY3QnLCBfcmVtb3ZlKSwKKyAgICAoJ3NlYXJjaCcsICdTZWFyY2ggZm9yIGEgcHJvamVjdCBpbiB0aGUgaW5kZXhlcycsIF9zZWFyY2gpLAorICAgICgnbGlzdCcsICdMaXN0IGluc3RhbGxlZCBwcm9qZWN0cycsIF9saXN0KSwKKyAgICAoJ2dyYXBoJywgJ0Rpc3BsYXkgYSBncmFwaCcsIF9ncmFwaCksCisgICAgKCdjcmVhdGUnLCAnQ3JlYXRlIGEgcHJvamVjdCcsIF9jcmVhdGUpLAorICAgICgnZ2VuZXJhdGUtc2V0dXAnLCAnR2VuZXJhdGUgYSBiYWNrd2FyZC1jb21wYXRpYmxlIHNldHVwLnB5JywgX2dlbmVyYXRlKSwKK10KKworCitjbGFzcyBEaXNwYXRjaGVyOgorICAgICIiIlJlYWRzIHRoZSBjb21tYW5kLWxpbmUgb3B0aW9ucworICAgICIiIgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhcmdzPU5vbmUpOgorICAgICAgICBzZWxmLnZlcmJvc2UgPSAxCisgICAgICAgIHNlbGYuZHJ5X3J1biA9IEZhbHNlCisgICAgICAgIHNlbGYuaGVscCA9IEZhbHNlCisgICAgICAgIHNlbGYuY21kY2xhc3MgPSB7fQorICAgICAgICBzZWxmLmNvbW1hbmRzID0gW10KKyAgICAgICAgc2VsZi5jb21tYW5kX29wdGlvbnMgPSB7fQorCisgICAgICAgIGZvciBhdHRyIGluIGRpc3BsYXlfb3B0aW9uX25hbWVzOgorICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBhdHRyLCBGYWxzZSkKKworICAgICAgICBzZWxmLnBhcnNlciA9IEZhbmN5R2V0b3B0KGdsb2JhbF9vcHRpb25zICsgZGlzcGxheV9vcHRpb25zKQorICAgICAgICBzZWxmLnBhcnNlci5zZXRfbmVnYXRpdmVfYWxpYXNlcyhuZWdhdGl2ZV9vcHQpCisgICAgICAgICMgRklYTUUgdGhpcyBwYXJzZXMgZXZlcnl0aGluZywgaW5jbHVkaW5nIGNvbW1hbmQgb3B0aW9ucyAoZS5nLiAicnVuCisgICAgICAgICMgYnVpbGQgLWkiIGVycm9ycyB3aXRoICJvcHRpb24gLWkgbm90IHJlY29nbml6ZWQiKQorICAgICAgICBhcmdzID0gc2VsZi5wYXJzZXIuZ2V0b3B0KGFyZ3M9YXJncywgb2JqZWN0PXNlbGYpCisKKyAgICAgICAgIyBpZiBmaXJzdCBhcmcgaXMgInJ1biIsIHdlIGhhdmUgc29tZSBjb21tYW5kcworICAgICAgICBpZiBsZW4oYXJncykgPT0gMDoKKyAgICAgICAgICAgIHNlbGYuYWN0aW9uID0gTm9uZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5hY3Rpb24gPSBhcmdzWzBdCisKKyAgICAgICAgYWxsb3dlZCA9IFthY3Rpb25bMF0gZm9yIGFjdGlvbiBpbiBhY3Rpb25zXSArIFtOb25lXQorICAgICAgICBpZiBzZWxmLmFjdGlvbiBub3QgaW4gYWxsb3dlZDoKKyAgICAgICAgICAgIG1zZyA9ICdVbnJlY29nbml6ZWQgYWN0aW9uICIlcyInICUgc2VsZi5hY3Rpb24KKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0FyZ0Vycm9yKG1zZykKKworICAgICAgICBzZWxmLl9zZXRfbG9nZ2VyKCkKKyAgICAgICAgc2VsZi5hcmdzID0gYXJncworCisgICAgICAgICMgZm9yIGRpc3BsYXkgb3B0aW9ucyB3ZSByZXR1cm4gaW1tZWRpYXRlbHkKKyAgICAgICAgaWYgc2VsZi5oZWxwIG9yIHNlbGYuYWN0aW9uIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLl9zaG93X2hlbHAoc2VsZi5wYXJzZXIsIGRpc3BsYXlfb3B0aW9uc189RmFsc2UpCisKKyAgICBkZWYgX3NldF9sb2dnZXIoc2VsZik6CisgICAgICAgICMgc2V0dGluZyB1cCB0aGUgbG9nZ2luZyBsZXZlbCBmcm9tIHRoZSBjb21tYW5kLWxpbmUgb3B0aW9ucworICAgICAgICAjIC1xIGdldHMgd2FybmluZywgZXJyb3IgYW5kIGNyaXRpY2FsCisgICAgICAgIGlmIHNlbGYudmVyYm9zZSA9PSAwOgorICAgICAgICAgICAgbGV2ZWwgPSBsb2dnaW5nLldBUk5JTkcKKyAgICAgICAgIyBkZWZhdWx0IGxldmVsIG9yIC12IGdldHMgaW5mbyB0b28KKyAgICAgICAgIyBYWFggdGhlcmUncyBhIGJ1ZyBzb21ld2hlcmU6IHRoZSBoZWxwIHRleHQgc2F5cyB0aGF0IC12IGlzIGRlZmF1bHQKKyAgICAgICAgIyAoYW5kIHZlcmJvc2UgaXMgc2V0IHRvIDEgYWJvdmUpLCBidXQgd2hlbiB0aGUgdXNlciBleHBsaWNpdGx5IGdpdmVzCisgICAgICAgICMgLXYgb24gdGhlIGNvbW1hbmQgbGluZSwgc2VsZi52ZXJib3NlIGlzIGluY3JlbWVudGVkIHRvIDIhICBIZXJlIHdlCisgICAgICAgICMgY29tcGVuc2F0ZSBmb3IgdGhhdCAoSSB0ZXN0ZWQgbWFudWFsbHkpLiAgT24gYSByZWxhdGVkIG5vdGUsIEkgdGhpbmsKKyAgICAgICAgIyBpdCdzIGEgZ29vZCB0aGluZyB0byB1c2UgLXEvbm90aGluZy8tdi8tdnYgb24gdGhlIGNvbW1hbmQgbGluZQorICAgICAgICAjIGluc3RlYWQgb2YgbG9nZ2luZyBjb25zdGFudHM7IGl0IHdpbGwgYmUgZWFzeSB0byBhZGQgc3VwcG9ydCBmb3IKKyAgICAgICAgIyBsb2dnaW5nIGNvbmZpZ3VyYXRpb24gaW4gc2V0dXAuY2ZnIGZvciBhZHZhbmNlZCB1c2Vycy4gLS1tZXJ3b2sKKyAgICAgICAgZWxpZiBzZWxmLnZlcmJvc2UgaW4gKDEsIDIpOgorICAgICAgICAgICAgbGV2ZWwgPSBsb2dnaW5nLklORk8KKyAgICAgICAgZWxzZTogICMgLXZ2IGFuZCBtb3JlIGZvciBkZWJ1ZworICAgICAgICAgICAgbGV2ZWwgPSBsb2dnaW5nLkRFQlVHCisKKyAgICAgICAgIyBzZXR0aW5nIHVwIHRoZSBzdHJlYW0gaGFuZGxlcgorICAgICAgICBoYW5kbGVyID0gbG9nZ2luZy5TdHJlYW1IYW5kbGVyKHN5cy5zdGRlcnIpCisgICAgICAgIGhhbmRsZXIuc2V0TGV2ZWwobGV2ZWwpCisgICAgICAgIGxvZ2dlci5hZGRIYW5kbGVyKGhhbmRsZXIpCisgICAgICAgIGxvZ2dlci5zZXRMZXZlbChsZXZlbCkKKworICAgIGRlZiBfcGFyc2VfY29tbWFuZF9vcHRzKHNlbGYsIHBhcnNlciwgYXJncyk6CisgICAgICAgICMgUHVsbCB0aGUgY3VycmVudCBjb21tYW5kIGZyb20gdGhlIGhlYWQgb2YgdGhlIGNvbW1hbmQgbGluZQorICAgICAgICBjb21tYW5kID0gYXJnc1swXQorICAgICAgICBpZiBub3QgY29tbWFuZF9yZS5tYXRjaChjb21tYW5kKToKKyAgICAgICAgICAgIHJhaXNlIFN5c3RlbUV4aXQoImludmFsaWQgY29tbWFuZCBuYW1lICVyIiAlIChjb21tYW5kLCkpCisgICAgICAgIHNlbGYuY29tbWFuZHMuYXBwZW5kKGNvbW1hbmQpCisKKyAgICAgICAgIyBEaWcgdXAgdGhlIGNvbW1hbmQgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIHRoaXMgY29tbWFuZCwgc28gd2UKKyAgICAgICAgIyAxKSBrbm93IHRoYXQgaXQncyBhIHZhbGlkIGNvbW1hbmQsIGFuZCAyKSBrbm93IHdoaWNoIG9wdGlvbnMKKyAgICAgICAgIyBpdCB0YWtlcy4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY21kX2NsYXNzID0gZ2V0X2NvbW1hbmRfY2xhc3MoY29tbWFuZCkKKyAgICAgICAgZXhjZXB0IFBhY2thZ2luZ01vZHVsZUVycm9yIGFzIG1zZzoKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0FyZ0Vycm9yKG1zZykKKworICAgICAgICAjIFhYWCBXZSB3YW50IHRvIHB1c2ggdGhpcyBpbiBwYWNrYWdpbmcuY29tbWFuZAorICAgICAgICAjCisgICAgICAgICMgUmVxdWlyZSB0aGF0IHRoZSBjb21tYW5kIGNsYXNzIGJlIGRlcml2ZWQgZnJvbSBDb21tYW5kIC0tIHdhbnQKKyAgICAgICAgIyB0byBiZSBzdXJlIHRoYXQgdGhlIGJhc2ljICJjb21tYW5kIiBpbnRlcmZhY2UgaXMgaW1wbGVtZW50ZWQuCisgICAgICAgIGZvciBtZXRoIGluICgnaW5pdGlhbGl6ZV9vcHRpb25zJywgJ2ZpbmFsaXplX29wdGlvbnMnLCAncnVuJyk6CisgICAgICAgICAgICBpZiBoYXNhdHRyKGNtZF9jbGFzcywgbWV0aCk6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIHJhaXNlIFBhY2thZ2luZ0NsYXNzRXJyb3IoCisgICAgICAgICAgICAgICAgJ2NvbW1hbmQgJXIgbXVzdCBpbXBsZW1lbnQgJXInICUgKGNtZF9jbGFzcywgbWV0aCkpCisKKyAgICAgICAgIyBBbHNvIG1ha2Ugc3VyZSB0aGF0IHRoZSBjb21tYW5kIG9iamVjdCBwcm92aWRlcyBhIGxpc3Qgb2YgaXRzCisgICAgICAgICMga25vd24gb3B0aW9ucy4KKyAgICAgICAgaWYgbm90IChoYXNhdHRyKGNtZF9jbGFzcywgJ3VzZXJfb3B0aW9ucycpIGFuZAorICAgICAgICAgICAgICAgIGlzaW5zdGFuY2UoY21kX2NsYXNzLnVzZXJfb3B0aW9ucywgbGlzdCkpOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nQ2xhc3NFcnJvcigKKyAgICAgICAgICAgICAgICAiY29tbWFuZCBjbGFzcyAlcyBtdXN0IHByb3ZpZGUgIgorICAgICAgICAgICAgICAgICIndXNlcl9vcHRpb25zJyBhdHRyaWJ1dGUgKGEgbGlzdCBvZiB0dXBsZXMpIiAlIGNtZF9jbGFzcykKKworICAgICAgICAjIElmIHRoZSBjb21tYW5kIGNsYXNzIGhhcyBhIGxpc3Qgb2YgbmVnYXRpdmUgYWxpYXMgb3B0aW9ucywKKyAgICAgICAgIyBtZXJnZSBpdCBpbiB3aXRoIHRoZSBnbG9iYWwgbmVnYXRpdmUgYWxpYXNlcy4KKyAgICAgICAgX25lZ2F0aXZlX29wdCA9IG5lZ2F0aXZlX29wdC5jb3B5KCkKKworICAgICAgICBpZiBoYXNhdHRyKGNtZF9jbGFzcywgJ25lZ2F0aXZlX29wdCcpOgorICAgICAgICAgICAgX25lZ2F0aXZlX29wdC51cGRhdGUoY21kX2NsYXNzLm5lZ2F0aXZlX29wdCkKKworICAgICAgICAjIENoZWNrIGZvciBoZWxwX29wdGlvbnMgaW4gY29tbWFuZCBjbGFzcy4gIFRoZXkgaGF2ZSBhIGRpZmZlcmVudAorICAgICAgICAjIGZvcm1hdCAodHVwbGUgb2YgZm91cikgc28gd2UgbmVlZCB0byBwcmVwcm9jZXNzIHRoZW0gaGVyZS4KKyAgICAgICAgaWYgKGhhc2F0dHIoY21kX2NsYXNzLCAnaGVscF9vcHRpb25zJykgYW5kCisgICAgICAgICAgICBpc2luc3RhbmNlKGNtZF9jbGFzcy5oZWxwX29wdGlvbnMsIGxpc3QpKToKKyAgICAgICAgICAgIGhlbHBfb3B0aW9ucyA9IGNtZF9jbGFzcy5oZWxwX29wdGlvbnNbOl0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGhlbHBfb3B0aW9ucyA9IFtdCisKKyAgICAgICAgIyBBbGwgY29tbWFuZHMgc3VwcG9ydCB0aGUgZ2xvYmFsIG9wdGlvbnMgdG9vLCBqdXN0IGJ5IGFkZGluZworICAgICAgICAjIGluICdnbG9iYWxfb3B0aW9ucycuCisgICAgICAgIHBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKGdsb2JhbF9vcHRpb25zICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY21kX2NsYXNzLnVzZXJfb3B0aW9ucyArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHBfb3B0aW9ucykKKyAgICAgICAgcGFyc2VyLnNldF9uZWdhdGl2ZV9hbGlhc2VzKF9uZWdhdGl2ZV9vcHQpCisgICAgICAgIGFyZ3MsIG9wdHMgPSBwYXJzZXIuZ2V0b3B0KGFyZ3NbMTpdKQorCisgICAgICAgIGlmIGhhc2F0dHIob3B0cywgJ2hlbHAnKSBhbmQgb3B0cy5oZWxwOgorICAgICAgICAgICAgc2VsZi5fc2hvd19jb21tYW5kX2hlbHAoY21kX2NsYXNzKQorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgaWYgKGhhc2F0dHIoY21kX2NsYXNzLCAnaGVscF9vcHRpb25zJykgYW5kCisgICAgICAgICAgICBpc2luc3RhbmNlKGNtZF9jbGFzcy5oZWxwX29wdGlvbnMsIGxpc3QpKToKKyAgICAgICAgICAgIGhlbHBfb3B0aW9uX2ZvdW5kID0gRmFsc2UKKyAgICAgICAgICAgIGZvciBoZWxwX29wdGlvbiwgc2hvcnQsIGRlc2MsIGZ1bmMgaW4gY21kX2NsYXNzLmhlbHBfb3B0aW9uczoKKyAgICAgICAgICAgICAgICBpZiBoYXNhdHRyKG9wdHMsIGhlbHBfb3B0aW9uLnJlcGxhY2UoJy0nLCAnXycpKToKKyAgICAgICAgICAgICAgICAgICAgaGVscF9vcHRpb25fZm91bmQgPSBUcnVlCisgICAgICAgICAgICAgICAgICAgIGlmIGNhbGxhYmxlKGZ1bmMpOgorICAgICAgICAgICAgICAgICAgICAgICAgZnVuYygpCisgICAgICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBQYWNrYWdpbmdDbGFzc0Vycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbnZhbGlkIGhlbHAgZnVuY3Rpb24gJXIgZm9yIGhlbHAgb3B0aW9uICVyOiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm11c3QgYmUgYSBjYWxsYWJsZSBvYmplY3QgKGZ1bmN0aW9uLCBldGMuKSIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIChmdW5jLCBoZWxwX29wdGlvbikpCisKKyAgICAgICAgICAgIGlmIGhlbHBfb3B0aW9uX2ZvdW5kOgorICAgICAgICAgICAgICAgIHJldHVybgorCisgICAgICAgICMgUHV0IHRoZSBvcHRpb25zIGZyb20gdGhlIGNvbW1hbmQgbGluZSBpbnRvIHRoZWlyIG9mZmljaWFsCisgICAgICAgICMgaG9sZGluZyBwZW4sIHRoZSAnY29tbWFuZF9vcHRpb25zJyBkaWN0aW9uYXJ5LgorICAgICAgICBvcHRfZGljdCA9IHNlbGYuZ2V0X29wdGlvbl9kaWN0KGNvbW1hbmQpCisgICAgICAgIGZvciBuYW1lLCB2YWx1ZSBpbiB2YXJzKG9wdHMpLml0ZW1zKCk6CisgICAgICAgICAgICBvcHRfZGljdFtuYW1lXSA9ICgiY29tbWFuZCBsaW5lIiwgdmFsdWUpCisKKyAgICAgICAgcmV0dXJuIGFyZ3MKKworICAgIGRlZiBnZXRfb3B0aW9uX2RpY3Qoc2VsZiwgY29tbWFuZCk6CisgICAgICAgICIiIkdldCB0aGUgb3B0aW9uIGRpY3Rpb25hcnkgZm9yIGEgZ2l2ZW4gY29tbWFuZC4gIElmIHRoYXQKKyAgICAgICAgY29tbWFuZCdzIG9wdGlvbiBkaWN0aW9uYXJ5IGhhc24ndCBiZWVuIGNyZWF0ZWQgeWV0LCB0aGVuIGNyZWF0ZSBpdAorICAgICAgICBhbmQgcmV0dXJuIHRoZSBuZXcgZGljdGlvbmFyeTsgb3RoZXJ3aXNlLCByZXR1cm4gdGhlIGV4aXN0aW5nCisgICAgICAgIG9wdGlvbiBkaWN0aW9uYXJ5LgorICAgICAgICAiIiIKKyAgICAgICAgZCA9IHNlbGYuY29tbWFuZF9vcHRpb25zLmdldChjb21tYW5kKQorICAgICAgICBpZiBkIGlzIE5vbmU6CisgICAgICAgICAgICBkID0gc2VsZi5jb21tYW5kX29wdGlvbnNbY29tbWFuZF0gPSB7fQorICAgICAgICByZXR1cm4gZAorCisgICAgZGVmIHNob3dfaGVscChzZWxmKToKKyAgICAgICAgc2VsZi5fc2hvd19oZWxwKHNlbGYucGFyc2VyKQorCisgICAgZGVmIHByaW50X3VzYWdlKHNlbGYsIHBhcnNlcik6CisgICAgICAgIHBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKGdsb2JhbF9vcHRpb25zKQorCisgICAgICAgIGFjdGlvbnNfID0gWycgICAgJXM6ICVzJyAlIChuYW1lLCBkZXNjKSBmb3IgbmFtZSwgZGVzYywgX18gaW4gYWN0aW9uc10KKyAgICAgICAgdXNhZ2UgPSBjb21tb25fdXNhZ2UgJSB7J2FjdGlvbnMnOiAnXG4nLmpvaW4oYWN0aW9uc18pfQorCisgICAgICAgIHBhcnNlci5wcmludF9oZWxwKHVzYWdlICsgIlxuR2xvYmFsIG9wdGlvbnM6IikKKworICAgIGRlZiBfc2hvd19oZWxwKHNlbGYsIHBhcnNlciwgZ2xvYmFsX29wdGlvbnNfPVRydWUsIGRpc3BsYXlfb3B0aW9uc189VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICBjb21tYW5kcz1bXSk6CisgICAgICAgICMgbGF0ZSBpbXBvcnQgYmVjYXVzZSBvZiBtdXR1YWwgZGVwZW5kZW5jZSBiZXR3ZWVuIHRoZXNlIG1vZHVsZXMKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKKworICAgICAgICBwcmludCgnVXNhZ2U6IHB5c2V0dXAgW29wdGlvbnNdIGFjdGlvbiBbYWN0aW9uX29wdGlvbnNdJykKKyAgICAgICAgcHJpbnQoKQorICAgICAgICBpZiBnbG9iYWxfb3B0aW9uc186CisgICAgICAgICAgICBzZWxmLnByaW50X3VzYWdlKHNlbGYucGFyc2VyKQorICAgICAgICAgICAgcHJpbnQoKQorCisgICAgICAgIGlmIGRpc3BsYXlfb3B0aW9uc186CisgICAgICAgICAgICBwYXJzZXIuc2V0X29wdGlvbl90YWJsZShkaXNwbGF5X29wdGlvbnMpCisgICAgICAgICAgICBwYXJzZXIucHJpbnRfaGVscCgKKyAgICAgICAgICAgICAgICAiSW5mb3JtYXRpb24gZGlzcGxheSBvcHRpb25zIChqdXN0IGRpc3BsYXkgIiArCisgICAgICAgICAgICAgICAgImluZm9ybWF0aW9uLCBpZ25vcmUgYW55IGNvbW1hbmRzKSIpCisgICAgICAgICAgICBwcmludCgpCisKKyAgICAgICAgZm9yIGNvbW1hbmQgaW4gY29tbWFuZHM6CisgICAgICAgICAgICBpZiBpc2luc3RhbmNlKGNvbW1hbmQsIHR5cGUpIGFuZCBpc3N1YmNsYXNzKGNvbW1hbmQsIENvbW1hbmQpOgorICAgICAgICAgICAgICAgIGNscyA9IGNvbW1hbmQKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgY2xzID0gZ2V0X2NvbW1hbmRfY2xhc3MoY29tbWFuZCkKKyAgICAgICAgICAgIGlmIChoYXNhdHRyKGNscywgJ2hlbHBfb3B0aW9ucycpIGFuZAorICAgICAgICAgICAgICAgIGlzaW5zdGFuY2UoY2xzLmhlbHBfb3B0aW9ucywgbGlzdCkpOgorICAgICAgICAgICAgICAgIHBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKGNscy51c2VyX29wdGlvbnMgKyBjbHMuaGVscF9vcHRpb25zKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBwYXJzZXIuc2V0X29wdGlvbl90YWJsZShjbHMudXNlcl9vcHRpb25zKQorCisgICAgICAgICAgICBwYXJzZXIucHJpbnRfaGVscCgiT3B0aW9ucyBmb3IgJXIgY29tbWFuZDoiICUgY2xzLl9fbmFtZV9fKQorICAgICAgICAgICAgcHJpbnQoKQorCisgICAgZGVmIF9zaG93X2NvbW1hbmRfaGVscChzZWxmLCBjb21tYW5kKToKKyAgICAgICAgaWYgaXNpbnN0YW5jZShjb21tYW5kLCBzdHIpOgorICAgICAgICAgICAgY29tbWFuZCA9IGdldF9jb21tYW5kX2NsYXNzKGNvbW1hbmQpCisKKyAgICAgICAgZGVzYyA9IGdldGF0dHIoY29tbWFuZCwgJ2Rlc2NyaXB0aW9uJywgJyhubyBkZXNjcmlwdGlvbiBhdmFpbGFibGUpJykKKyAgICAgICAgcHJpbnQoJ0Rlc2NyaXB0aW9uOicsIGRlc2MpCisgICAgICAgIHByaW50KCkKKworICAgICAgICBpZiAoaGFzYXR0cihjb21tYW5kLCAnaGVscF9vcHRpb25zJykgYW5kCisgICAgICAgICAgICBpc2luc3RhbmNlKGNvbW1hbmQuaGVscF9vcHRpb25zLCBsaXN0KSk6CisgICAgICAgICAgICBzZWxmLnBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKGNvbW1hbmQudXNlcl9vcHRpb25zICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tbWFuZC5oZWxwX29wdGlvbnMpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLnBhcnNlci5zZXRfb3B0aW9uX3RhYmxlKGNvbW1hbmQudXNlcl9vcHRpb25zKQorCisgICAgICAgIHNlbGYucGFyc2VyLnByaW50X2hlbHAoIk9wdGlvbnM6IikKKyAgICAgICAgcHJpbnQoKQorCisgICAgZGVmIF9nZXRfY29tbWFuZF9ncm91cHMoc2VsZik6CisgICAgICAgICIiIkhlbHBlciBmdW5jdGlvbiB0byByZXRyaWV2ZSBhbGwgdGhlIGNvbW1hbmQgY2xhc3MgbmFtZXMgZGl2aWRlZAorICAgICAgICBpbnRvIHN0YW5kYXJkIGNvbW1hbmRzIChsaXN0ZWQgaW4KKyAgICAgICAgcGFja2FnaW5nLmNvbW1hbmQuU1RBTkRBUkRfQ09NTUFORFMpIGFuZCBleHRyYSBjb21tYW5kcyAoZ2l2ZW4gaW4KKyAgICAgICAgc2VsZi5jbWRjbGFzcyBhbmQgbm90IHN0YW5kYXJkIGNvbW1hbmRzKS4KKyAgICAgICAgIiIiCisgICAgICAgIGV4dHJhX2NvbW1hbmRzID0gW2NtZCBmb3IgY21kIGluIHNlbGYuY21kY2xhc3MKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgY21kIG5vdCBpbiBTVEFOREFSRF9DT01NQU5EU10KKyAgICAgICAgcmV0dXJuIFNUQU5EQVJEX0NPTU1BTkRTLCBleHRyYV9jb21tYW5kcworCisgICAgZGVmIHByaW50X2NvbW1hbmRzKHNlbGYpOgorICAgICAgICAiIiJQcmludCBvdXQgYSBoZWxwIG1lc3NhZ2UgbGlzdGluZyBhbGwgYXZhaWxhYmxlIGNvbW1hbmRzIHdpdGggYQorICAgICAgICBkZXNjcmlwdGlvbiBvZiBlYWNoLiAgVGhlIGxpc3QgaXMgZGl2aWRlZCBpbnRvIHN0YW5kYXJkIGNvbW1hbmRzCisgICAgICAgIChsaXN0ZWQgaW4gcGFja2FnaW5nLmNvbW1hbmQuU1RBTkRBUkRfQ09NTUFORFMpIGFuZCBleHRyYSBjb21tYW5kcworICAgICAgICAoZ2l2ZW4gaW4gc2VsZi5jbWRjbGFzcyBhbmQgbm90IHN0YW5kYXJkIGNvbW1hbmRzKS4gIFRoZQorICAgICAgICBkZXNjcmlwdGlvbnMgY29tZSBmcm9tIHRoZSBjb21tYW5kIGNsYXNzIGF0dHJpYnV0ZQorICAgICAgICAnZGVzY3JpcHRpb24nLgorICAgICAgICAiIiIKKyAgICAgICAgc3RkX2NvbW1hbmRzLCBleHRyYV9jb21tYW5kcyA9IHNlbGYuX2dldF9jb21tYW5kX2dyb3VwcygpCisgICAgICAgIG1heF9sZW5ndGggPSBtYXgobGVuKGNvbW1hbmQpCisgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGNvbW1hbmRzIGluIChzdGRfY29tbWFuZHMsIGV4dHJhX2NvbW1hbmRzKQorICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBjb21tYW5kIGluIGNvbW1hbmRzKQorCisgICAgICAgIHNlbGYucHJpbnRfY29tbWFuZF9saXN0KHN0ZF9jb21tYW5kcywgIlN0YW5kYXJkIGNvbW1hbmRzIiwgbWF4X2xlbmd0aCkKKyAgICAgICAgaWYgZXh0cmFfY29tbWFuZHM6CisgICAgICAgICAgICBwcmludCgpCisgICAgICAgICAgICBzZWxmLnByaW50X2NvbW1hbmRfbGlzdChleHRyYV9jb21tYW5kcywgIkV4dHJhIGNvbW1hbmRzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heF9sZW5ndGgpCisKKyAgICBkZWYgcHJpbnRfY29tbWFuZF9saXN0KHNlbGYsIGNvbW1hbmRzLCBoZWFkZXIsIG1heF9sZW5ndGgpOgorICAgICAgICAiIiJQcmludCBhIHN1YnNldCBvZiB0aGUgbGlzdCBvZiBhbGwgY29tbWFuZHMgLS0gdXNlZCBieQorICAgICAgICAncHJpbnRfY29tbWFuZHMoKScuCisgICAgICAgICIiIgorICAgICAgICBwcmludChoZWFkZXIgKyAiOiIpCisKKyAgICAgICAgZm9yIGNtZCBpbiBjb21tYW5kczoKKyAgICAgICAgICAgIGNscyA9IHNlbGYuY21kY2xhc3MuZ2V0KGNtZCkgb3IgZ2V0X2NvbW1hbmRfY2xhc3MoY21kKQorICAgICAgICAgICAgZGVzY3JpcHRpb24gPSBnZXRhdHRyKGNscywgJ2Rlc2NyaXB0aW9uJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnKG5vIGRlc2NyaXB0aW9uIGF2YWlsYWJsZSknKQorCisgICAgICAgICAgICBwcmludCgiICAlLSpzICAlcyIgJSAobWF4X2xlbmd0aCwgY21kLCBkZXNjcmlwdGlvbikpCisKKyAgICBkZWYgX19jYWxsX18oc2VsZik6CisgICAgICAgIGlmIHNlbGYuYWN0aW9uIGlzIE5vbmU6CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBmb3IgYWN0aW9uLCBkZXNjLCBmdW5jIGluIGFjdGlvbnM6CisgICAgICAgICAgICBpZiBhY3Rpb24gPT0gc2VsZi5hY3Rpb246CisgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmMoc2VsZiwgc2VsZi5hcmdzKQorICAgICAgICByZXR1cm4gLTEKKworCitkZWYgbWFpbihhcmdzPU5vbmUpOgorICAgIG9sZF9sZXZlbCA9IGxvZ2dlci5sZXZlbAorICAgIG9sZF9oYW5kbGVycyA9IGxpc3QobG9nZ2VyLmhhbmRsZXJzKQorICAgIHRyeToKKyAgICAgICAgZGlzcGF0Y2hlciA9IERpc3BhdGNoZXIoYXJncykKKyAgICAgICAgaWYgZGlzcGF0Y2hlci5hY3Rpb24gaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICByZXR1cm4gZGlzcGF0Y2hlcigpCisgICAgZXhjZXB0IEtleWJvYXJkSW50ZXJydXB0OgorICAgICAgICBsb2dnZXIuaW5mbygnaW50ZXJydXB0ZWQnKQorICAgICAgICByZXR1cm4gMQorICAgIGV4Y2VwdCAoSU9FcnJvciwgb3MuZXJyb3IsIFBhY2thZ2luZ0Vycm9yLCBDQ29tcGlsZXJFcnJvcikgYXMgZXhjOgorICAgICAgICBsb2dnZXIuZXhjZXB0aW9uKGV4YykKKyAgICAgICAgcmV0dXJuIDEKKyAgICBmaW5hbGx5OgorICAgICAgICBsb2dnZXIuc2V0TGV2ZWwob2xkX2xldmVsKQorICAgICAgICBsb2dnZXIuaGFuZGxlcnNbOl0gPSBvbGRfaGFuZGxlcnMKKworCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHN5cy5leGl0KG1haW4oKSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvTE9OR19ERVNDLnR4dCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvTE9OR19ERVNDLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYjQzNThhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9MT05HX0RFU0MudHh0CkBAIC0wLDAgKzEsNDQgQEAKK0NMVmF1bHQKKz09PT09PT0KKworQ0xWYXVsdCB1c2VzIEtleXJpbmcgdG8gcHJvdmlkZSBhIGNvbW1hbmQtbGluZSB1dGlsaXR5IHRvIHNhZmVseSBzdG9yZQorYW5kIHJldHJpZXZlIHBhc3N3b3Jkcy4KKworSW5zdGFsbCBpdCB1c2luZyBwaXAgb3IgdGhlIHNldHVwLnB5IHNjcmlwdDo6CisKKyAgICAkIHB5dGhvbiBzZXR1cC5weSBpbnN0YWxsCisKKyAgICAkIHBpcCBpbnN0YWxsIGNsdmF1bHQKKworT25jZSBpdCdzIGluc3RhbGxlZCwgeW91IHdpbGwgaGF2ZSB0aHJlZSBzY3JpcHRzIGluc3RhbGxlZCBpbiB5b3VyCitQeXRob24gc2NyaXB0cyBmb2xkZXIsIHlvdSBjYW4gdXNlIHRvIGxpc3QsIHN0b3JlIGFuZCByZXRyaWV2ZSBwYXNzd29yZHM6OgorCisgICAgJCBjbHZhdWx0LXNldCBibG9nCisgICAgU2V0IHlvdXIgcGFzc3dvcmQ6CisgICAgU2V0IHRoZSBhc3NvY2lhdGVkIHVzZXJuYW1lIChjYW4gYmUgYmxhbmspOiB0YXJlaworICAgIFNldCBhIGRlc2NyaXB0aW9uIChjYW4gYmUgYmxhbmspOiBNeSBibG9nIHBhc3N3b3JkCisgICAgUGFzc3dvcmQgc2V0LgorCisgICAgJCBjbHZhdWx0LWdldCBibG9nCisgICAgVGhlIHVzZXJuYW1lIGlzICJ0YXJlayIKKyAgICBUaGUgcGFzc3dvcmQgaGFzIGJlZW4gY29waWVkIGluIHlvdXIgY2xpcGJvYXJkCisKKyAgICAkIGNsdmF1bHQtbGlzdAorICAgIFJlZ2lzdGVyZWQgc2VydmljZXM6CisgICAgYmxvZyAgICBNeSBibG9nIHBhc3N3b3JkCisKKworKmNsdmF1bHQtc2V0KiB0YWtlcyBhIHNlcnZpY2UgbmFtZSB0aGVuIHByb21wdCB5b3UgZm9yIGEgcGFzc3dvcmQsIGFuZCBzb21lCitvcHRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIHNlcnZpY2UuIFRoZSBwYXNzd29yZCBpcyBzYWZlbHkgc3RvcmVkIGluCithIGtleXJpbmcgd2hpbGUgdGhlIGRlc2NyaXB0aW9uIGlzIHNhdmVkIGluIGEgYGAuY2x2YXVsdGBgIGZpbGUgaW4geW91cgoraG9tZSBkaXJlY3RvcnkuIFRoaXMgZmlsZSBpcyBjcmVhdGVkIGF1dG9tYXRpY2FsbHkgdGhlIGZpcnN0IHRpbWUgdGhlIGNvbW1hbmQKK2lzIHVzZWQuCisKKypjbHZhdWx0LWdldCogY29waWVzIHRoZSBwYXNzd29yZCBmb3IgYSBnaXZlbiBzZXJ2aWNlIGluIHlvdXIgY2xpcGJvYXJkLCBhbmQKK2Rpc3BsYXlzIHRoZSBhc3NvY2lhdGVkIHVzZXIgaWYgYW55LgorCisqY2x2YXVsdC1saXN0KiBsaXN0cyBhbGwgcmVnaXN0ZXJlZCBzZXJ2aWNlcywgd2l0aCB0aGVpciBkZXNjcmlwdGlvbiB3aGVuCitnaXZlbi4KKworCitQcm9qZWN0IHBhZ2U6IGh0dHA6Ly9iaXRidWNrZXQub3JnL3RhcmVrL2NsdmF1bHQKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvUEtHLUlORk8gYi9MaWIvcGFja2FnaW5nL3Rlc3RzL1BLRy1JTkZPCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY0ODU0NmUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL1BLRy1JTkZPCkBAIC0wLDAgKzEsNTcgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogQ0xWYXVsdAorVmVyc2lvbjogMC41CitTdW1tYXJ5OiBDb21tYW5kLUxpbmUgdXRpbGl0eSB0byBzdG9yZSBhbmQgcmV0cmlldmUgcGFzc3dvcmRzCitIb21lLXBhZ2U6IGh0dHA6Ly9iaXRidWNrZXQub3JnL3RhcmVrL2NsdmF1bHQKK0F1dGhvcjogVGFyZWsgWmlhZGUKK0F1dGhvci1lbWFpbDogdGFyZWtAemlhZGUub3JnCitMaWNlbnNlOiBQU0YKK0tleXdvcmRzOiBrZXlyaW5nLHBhc3N3b3JkLGNyeXB0CitSZXF1aXJlcy1EaXN0OiBmb287IHN5cy5wbGF0Zm9ybSA9PSAnb2tvb2snCitSZXF1aXJlcy1EaXN0OiBiYXI7IHN5cy5wbGF0Zm9ybSA9PSAnJXMnCitQbGF0Zm9ybTogVU5LTk9XTgorRGVzY3JpcHRpb246IENMVmF1bHQKKyAgICAgICB8PT09PT09PQorICAgICAgIHwKKyAgICAgICB8Q0xWYXVsdCB1c2VzIEtleXJpbmcgdG8gcHJvdmlkZSBhIGNvbW1hbmQtbGluZSB1dGlsaXR5IHRvIHNhZmVseSBzdG9yZQorICAgICAgIHxhbmQgcmV0cmlldmUgcGFzc3dvcmRzLgorICAgICAgIHwKKyAgICAgICB8SW5zdGFsbCBpdCB1c2luZyBwaXAgb3IgdGhlIHNldHVwLnB5IHNjcmlwdDo6CisgICAgICAgfAorICAgICAgIHwgICAgJCBweXRob24gc2V0dXAucHkgaW5zdGFsbAorICAgICAgIHwKKyAgICAgICB8ICAgICQgcGlwIGluc3RhbGwgY2x2YXVsdAorICAgICAgIHwKKyAgICAgICB8T25jZSBpdCdzIGluc3RhbGxlZCwgeW91IHdpbGwgaGF2ZSB0aHJlZSBzY3JpcHRzIGluc3RhbGxlZCBpbiB5b3VyCisgICAgICAgfFB5dGhvbiBzY3JpcHRzIGZvbGRlciwgeW91IGNhbiB1c2UgdG8gbGlzdCwgc3RvcmUgYW5kIHJldHJpZXZlIHBhc3N3b3Jkczo6CisgICAgICAgfAorICAgICAgIHwgICAgJCBjbHZhdWx0LXNldCBibG9nCisgICAgICAgfCAgICBTZXQgeW91ciBwYXNzd29yZDoKKyAgICAgICB8ICAgIFNldCB0aGUgYXNzb2NpYXRlZCB1c2VybmFtZSAoY2FuIGJlIGJsYW5rKTogdGFyZWsKKyAgICAgICB8ICAgIFNldCBhIGRlc2NyaXB0aW9uIChjYW4gYmUgYmxhbmspOiBNeSBibG9nIHBhc3N3b3JkCisgICAgICAgfCAgICBQYXNzd29yZCBzZXQuCisgICAgICAgfAorICAgICAgIHwgICAgJCBjbHZhdWx0LWdldCBibG9nCisgICAgICAgfCAgICBUaGUgdXNlcm5hbWUgaXMgInRhcmVrIgorICAgICAgIHwgICAgVGhlIHBhc3N3b3JkIGhhcyBiZWVuIGNvcGllZCBpbiB5b3VyIGNsaXBib2FyZAorICAgICAgIHwKKyAgICAgICB8ICAgICQgY2x2YXVsdC1saXN0CisgICAgICAgfCAgICBSZWdpc3RlcmVkIHNlcnZpY2VzOgorICAgICAgIHwgICAgYmxvZyAgICBNeSBibG9nIHBhc3N3b3JkCisgICAgICAgfAorICAgICAgIHwKKyAgICAgICB8KmNsdmF1bHQtc2V0KiB0YWtlcyBhIHNlcnZpY2UgbmFtZSB0aGVuIHByb21wdCB5b3UgZm9yIGEgcGFzc3dvcmQsIGFuZCBzb21lCisgICAgICAgfG9wdGlvbmFsIGluZm9ybWF0aW9uIGFib3V0IHlvdXIgc2VydmljZS4gVGhlIHBhc3N3b3JkIGlzIHNhZmVseSBzdG9yZWQgaW4KKyAgICAgICB8YSBrZXlyaW5nIHdoaWxlIHRoZSBkZXNjcmlwdGlvbiBpcyBzYXZlZCBpbiBhIGBgLmNsdmF1bHRgYCBmaWxlIGluIHlvdXIKKyAgICAgICB8aG9tZSBkaXJlY3RvcnkuIFRoaXMgZmlsZSBpcyBjcmVhdGVkIGF1dG9tYXRpY2FsbHkgdGhlIGZpcnN0IHRpbWUgdGhlIGNvbW1hbmQKKyAgICAgICB8aXMgdXNlZC4KKyAgICAgICB8CisgICAgICAgfCpjbHZhdWx0LWdldCogY29waWVzIHRoZSBwYXNzd29yZCBmb3IgYSBnaXZlbiBzZXJ2aWNlIGluIHlvdXIgY2xpcGJvYXJkLCBhbmQKKyAgICAgICB8ZGlzcGxheXMgdGhlIGFzc29jaWF0ZWQgdXNlciBpZiBhbnkuCisgICAgICAgfAorICAgICAgIHwqY2x2YXVsdC1saXN0KiBsaXN0cyBhbGwgcmVnaXN0ZXJlZCBzZXJ2aWNlcywgd2l0aCB0aGVpciBkZXNjcmlwdGlvbiB3aGVuCisgICAgICAgfGdpdmVuLgorICAgICAgIHwKKyAgICAgICB8CisgICAgICAgfFByb2plY3QgcGFnZTogaHR0cDovL2JpdGJ1Y2tldC5vcmcvdGFyZWsvY2x2YXVsdAorICAgICAgIHwKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvU0VUVVBUT09MUy1QS0ctSU5GTyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvU0VUVVBUT09MUy1QS0ctSU5GTwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZmY4ZDAwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9TRVRVUFRPT0xTLVBLRy1JTkZPCkBAIC0wLDAgKzEsMTgyIEBACitNZXRhZGF0YS1WZXJzaW9uOiAxLjAKK05hbWU6IHNldHVwdG9vbHMKK1ZlcnNpb246IDAuNmM5CitTdW1tYXJ5OiBEb3dubG9hZCwgYnVpbGQsIGluc3RhbGwsIHVwZ3JhZGUsIGFuZCB1bmluc3RhbGwgUHl0aG9uIHBhY2thZ2VzIC0tIGVhc2lseSEKK0hvbWUtcGFnZTogaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpL3NldHVwdG9vbHMKK0F1dGhvcjogUGhpbGxpcCBKLiBFYnkKK0F1dGhvci1lbWFpbDogZGlzdHV0aWxzLXNpZ0BweXRob24ub3JnCitMaWNlbnNlOiBQU0Ygb3IgWlBMCitEZXNjcmlwdGlvbjogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorICAgICAgICBJbnN0YWxsaW5nIGFuZCBVc2luZyBTZXR1cHRvb2xzCisgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworICAgICAgICAuLiBjb250ZW50czo6ICoqVGFibGUgb2YgQ29udGVudHMqKgorCisKKyAgICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICBJbnN0YWxsYXRpb24gSW5zdHJ1Y3Rpb25zCisgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworICAgICAgICBXaW5kb3dzCisgICAgICAgID09PT09PT0KKworICAgICAgICBJbnN0YWxsIHNldHVwdG9vbHMgdXNpbmcgdGhlIHByb3ZpZGVkIGBgLmV4ZWBgIGluc3RhbGxlci4gIElmIHlvdSd2ZSBwcmV2aW91c2x5CisgICAgICAgIGluc3RhbGxlZCBvbGRlciB2ZXJzaW9ucyBvZiBzZXR1cHRvb2xzLCBwbGVhc2UgZGVsZXRlIGFsbCBgYHNldHVwdG9vbHMqLmVnZ2BgCisgICAgICAgIGFuZCBgYHNldHVwdG9vbHMucHRoYGAgZmlsZXMgZnJvbSB5b3VyIHN5c3RlbSdzIGBgc2l0ZS1wYWNrYWdlc2BgIGRpcmVjdG9yeQorICAgICAgICAoYW5kIGFueSBvdGhlciBgYHN5cy5wYXRoYGAgZGlyZWN0b3JpZXMpIEZJUlNULgorCisgICAgICAgIElmIHlvdSBhcmUgdXBncmFkaW5nIGEgcHJldmlvdXMgdmVyc2lvbiBvZiBzZXR1cHRvb2xzIHRoYXQgd2FzIGluc3RhbGxlZCB1c2luZworICAgICAgICBhbiBgYC5leGVgYCBpbnN0YWxsZXIsIHBsZWFzZSBiZSBzdXJlIHRvIGFsc28gKnVuaW5zdGFsbCB0aGF0IG9sZGVyIHZlcnNpb24qCisgICAgICAgIHZpYSB5b3VyIHN5c3RlbSdzICJBZGQvUmVtb3ZlIFByb2dyYW1zIiBmZWF0dXJlLCBCRUZPUkUgaW5zdGFsbGluZyB0aGUgbmV3ZXIKKyAgICAgICAgdmVyc2lvbi4KKworICAgICAgICBPbmNlIGluc3RhbGxhdGlvbiBpcyBjb21wbGV0ZSwgeW91IHdpbGwgZmluZCBhbiBgYGVhc3lfaW5zdGFsbC5leGVgYCBwcm9ncmFtIGluCisgICAgICAgIHlvdXIgUHl0aG9uIGBgU2NyaXB0c2BgIHN1YmRpcmVjdG9yeS4gIEJlIHN1cmUgdG8gYWRkIHRoaXMgZGlyZWN0b3J5IHRvIHlvdXIKKyAgICAgICAgYGBQQVRIYGAgZW52aXJvbm1lbnQgdmFyaWFibGUsIGlmIHlvdSBoYXZlbid0IGFscmVhZHkgZG9uZSBzby4KKworCisgICAgICAgIFJQTS1CYXNlZCBTeXN0ZW1zCisgICAgICAgID09PT09PT09PT09PT09PT09CisKKyAgICAgICAgSW5zdGFsbCBzZXR1cHRvb2xzIHVzaW5nIHRoZSBwcm92aWRlZCBzb3VyY2UgUlBNLiAgVGhlIGluY2x1ZGVkIGBgLnNwZWNgYCBmaWxlCisgICAgICAgIGFzc3VtZXMgeW91IGFyZSBpbnN0YWxsaW5nIHVzaW5nIHRoZSBkZWZhdWx0IGBgcHl0aG9uYGAgZXhlY3V0YWJsZSwgYW5kIGlzIG5vdAorICAgICAgICBzcGVjaWZpYyB0byBhIHBhcnRpY3VsYXIgUHl0aG9uIHZlcnNpb24uICBUaGUgYGBlYXN5X2luc3RhbGxgYCBleGVjdXRhYmxlIHdpbGwKKyAgICAgICAgYmUgaW5zdGFsbGVkIHRvIGEgc3lzdGVtIGBgYmluYGAgZGlyZWN0b3J5IHN1Y2ggYXMgYGAvdXNyL2JpbmBgLgorCisgICAgICAgIElmIHlvdSB3aXNoIHRvIGluc3RhbGwgdG8gYSBsb2NhdGlvbiBvdGhlciB0aGFuIHRoZSBkZWZhdWx0IFB5dGhvbgorICAgICAgICBpbnN0YWxsYXRpb24ncyBkZWZhdWx0IGBgc2l0ZS1wYWNrYWdlc2BgIGRpcmVjdG9yeSAoYW5kIGBgJHByZWZpeC9iaW5gYCBmb3IKKyAgICAgICAgc2NyaXB0cyksIHBsZWFzZSB1c2UgdGhlIGBgLmVnZ2BgLWJhc2VkIGluc3RhbGxhdGlvbiBhcHByb2FjaCBkZXNjcmliZWQgaW4gdGhlCisgICAgICAgIGZvbGxvd2luZyBzZWN0aW9uLgorCisKKyAgICAgICAgQ3lnd2luLCBNYWMgT1MgWCwgTGludXgsIE90aGVyCisgICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisgICAgICAgIDEuIERvd25sb2FkIHRoZSBhcHByb3ByaWF0ZSBlZ2cgZm9yIHlvdXIgdmVyc2lvbiBvZiBQeXRob24gKGUuZy4KKyAgICAgICAgYGBzZXR1cHRvb2xzLTAuNmM5LXB5Mi40LmVnZ2BgKS4gIERvIE5PVCByZW5hbWUgaXQuCisKKyAgICAgICAgMi4gUnVuIGl0IGFzIGlmIGl0IHdlcmUgYSBzaGVsbCBzY3JpcHQsIGUuZy4gYGBzaCBzZXR1cHRvb2xzLTAuNmM5LXB5Mi40LmVnZ2BgLgorICAgICAgICBTZXR1cHRvb2xzIHdpbGwgaW5zdGFsbCBpdHNlbGYgdXNpbmcgdGhlIG1hdGNoaW5nIHZlcnNpb24gb2YgUHl0aG9uIChlLmcuCisgICAgICAgIGBgcHl0aG9uMi40YGApLCBhbmQgd2lsbCBwbGFjZSB0aGUgYGBlYXN5X2luc3RhbGxgYCBleGVjdXRhYmxlIGluIHRoZQorICAgICAgICBkZWZhdWx0IGxvY2F0aW9uIGZvciBpbnN0YWxsaW5nIFB5dGhvbiBzY3JpcHRzIChhcyBkZXRlcm1pbmVkIGJ5IHRoZQorICAgICAgICBzdGFuZGFyZCBkaXN0dXRpbHMgY29uZmlndXJhdGlvbiBmaWxlcywgb3IgYnkgdGhlIFB5dGhvbiBpbnN0YWxsYXRpb24pLgorCisgICAgICAgIElmIHlvdSB3YW50IHRvIGluc3RhbGwgc2V0dXB0b29scyB0byBzb21ld2hlcmUgb3RoZXIgdGhhbiBgYHNpdGUtcGFja2FnZXNgYCBvcgorICAgICAgICB5b3VyIGRlZmF1bHQgZGlzdHV0aWxzIGluc3RhbGxhdGlvbiBsb2NhdGlvbnMgZm9yIGxpYnJhcmllcyBhbmQgc2NyaXB0cywgeW91CisgICAgICAgIG1heSBpbmNsdWRlIEVhc3lJbnN0YWxsIGNvbW1hbmQtbGluZSBvcHRpb25zIHN1Y2ggYXMgYGAtLXByZWZpeGBgLAorICAgICAgICBgYC0taW5zdGFsbC1kaXJgYCwgYW5kIHNvIG9uLCBmb2xsb3dpbmcgdGhlIGBgLmVnZ2BgIGZpbGVuYW1lIG9uIHRoZSBzYW1lCisgICAgICAgIGNvbW1hbmQgbGluZS4gIEZvciBleGFtcGxlOjoKKworICAgICAgICBzaCBzZXR1cHRvb2xzLTAuNmM5LXB5Mi40LmVnZyAtLXByZWZpeD1+CisKKyAgICAgICAgWW91IGNhbiB1c2UgYGAtLWhlbHBgYCB0byBnZXQgYSBmdWxsIG9wdGlvbnMgbGlzdCwgYnV0IHdlIHJlY29tbWVuZCBjb25zdWx0aW5nCisgICAgICAgIHRoZSBgRWFzeUluc3RhbGwgbWFudWFsYF8gZm9yIGRldGFpbGVkIGluc3RydWN0aW9ucywgZXNwZWNpYWxseSBgdGhlIHNlY3Rpb24KKyAgICAgICAgb24gY3VzdG9tIGluc3RhbGxhdGlvbiBsb2NhdGlvbnNgXy4KKworICAgICAgICAuLiBfRWFzeUluc3RhbGwgbWFudWFsOiBodHRwOi8vcGVhay50ZWxlY29tbXVuaXR5LmNvbS9EZXZDZW50ZXIvRWFzeUluc3RhbGwKKyAgICAgICAgLi4gX3RoZSBzZWN0aW9uIG9uIGN1c3RvbSBpbnN0YWxsYXRpb24gbG9jYXRpb25zOiBodHRwOi8vcGVhay50ZWxlY29tbXVuaXR5LmNvbS9EZXZDZW50ZXIvRWFzeUluc3RhbGwjY3VzdG9tLWluc3RhbGxhdGlvbi1sb2NhdGlvbnMKKworCisgICAgICAgIEN5Z3dpbiBOb3RlCisgICAgICAgIC0tLS0tLS0tLS0tCisKKyAgICAgICAgSWYgeW91IGFyZSB0cnlpbmcgdG8gaW5zdGFsbCBzZXR1cHRvb2xzIGZvciB0aGUgKipXaW5kb3dzKiogdmVyc2lvbiBvZiBQeXRob24KKyAgICAgICAgKGFzIG9wcG9zZWQgdG8gdGhlIEN5Z3dpbiB2ZXJzaW9uIHRoYXQgbGl2ZXMgaW4gYGAvdXNyL2JpbmBgKSwgeW91IG11c3QgbWFrZQorICAgICAgICBzdXJlIHRoYXQgYW4gYXBwcm9wcmlhdGUgZXhlY3V0YWJsZSAoYGBweXRob24yLjNgYCwgYGBweXRob24yLjRgYCwgb3IKKyAgICAgICAgYGBweXRob24yLjVgYCkgaXMgb24geW91ciAqKkN5Z3dpbioqIGBgUEFUSGBgIHdoZW4gaW52b2tpbmcgdGhlIGVnZy4gIEZvcgorICAgICAgICBleGFtcGxlLCBkb2luZyB0aGUgZm9sbG93aW5nIGF0IGEgQ3lnd2luIGJhc2ggcHJvbXB0IHdpbGwgaW5zdGFsbCBzZXR1cHRvb2xzCisgICAgICAgIGZvciB0aGUgKipXaW5kb3dzKiogUHl0aG9uIGZvdW5kIGF0IGBgQzpcXFB5dGhvbjI0YGA6OgorCisgICAgICAgIGxuIC1zIC9jeWdkcml2ZS9jL1B5dGhvbjI0L3B5dGhvbi5leGUgcHl0aG9uMi40CisgICAgICAgIFBBVEg9LjokUEFUSCBzaCBzZXR1cHRvb2xzLTAuNmM5LXB5Mi40LmVnZworICAgICAgICBybSBweXRob24yLjQKKworCisgICAgICAgIERvd25sb2FkcworICAgICAgICA9PT09PT09PT0KKworICAgICAgICBBbGwgc2V0dXB0b29scyBkb3dubG9hZHMgY2FuIGJlIGZvdW5kIGF0IGB0aGUgcHJvamVjdCdzIGhvbWUgcGFnZSBpbiB0aGUgUHl0aG9uCisgICAgICAgIFBhY2thZ2UgSW5kZXhgXy4gIFNjcm9sbCB0byB0aGUgdmVyeSBib3R0b20gb2YgdGhlIHBhZ2UgdG8gZmluZCB0aGUgbGlua3MuCisKKyAgICAgICAgLi4gX3RoZSBwcm9qZWN0J3MgaG9tZSBwYWdlIGluIHRoZSBQeXRob24gUGFja2FnZSBJbmRleDogaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpL3NldHVwdG9vbHMKKworICAgICAgICBJbiBhZGRpdGlvbiB0byB0aGUgUHlQSSBkb3dubG9hZHMsIHRoZSBkZXZlbG9wbWVudCB2ZXJzaW9uIG9mIGBgc2V0dXB0b29sc2BgCisgICAgICAgIGlzIGF2YWlsYWJsZSBmcm9tIHRoZSBgUHl0aG9uIFNWTiBzYW5kYm94YF8sIGFuZCBpbi1kZXZlbG9wbWVudCB2ZXJzaW9ucyBvZiB0aGUKKyAgICAgICAgYDAuNiBicmFuY2hgXyBhcmUgYXZhaWxhYmxlIGFzIHdlbGwuCisKKyAgICAgICAgLi4gXzAuNiBicmFuY2g6IGh0dHA6Ly9zdm4ucHl0aG9uLm9yZy9wcm9qZWN0cy9zYW5kYm94L2JyYW5jaGVzL3NldHVwdG9vbHMtMC42LyNlZ2c9c2V0dXB0b29scy1kZXYwNgorCisgICAgICAgIC4uIF9QeXRob24gU1ZOIHNhbmRib3g6IGh0dHA6Ly9zdm4ucHl0aG9uLm9yZy9wcm9qZWN0cy9zYW5kYm94L3RydW5rL3NldHVwdG9vbHMvI2VnZz1zZXR1cHRvb2xzLWRldgorCisgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAgICAgIFVzaW5nIFNldHVwdG9vbHMgYW5kIEVhc3lJbnN0YWxsCisgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICAgICAgSGVyZSBhcmUgc29tZSBvZiB0aGUgYXZhaWxhYmxlIG1hbnVhbHMsIHR1dG9yaWFscywgYW5kIG90aGVyIHJlc291cmNlcyBmb3IKKyAgICAgICAgbGVhcm5pbmcgYWJvdXQgU2V0dXB0b29scywgUHl0aG9uIEVnZ3MsIGFuZCBFYXN5SW5zdGFsbDoKKworICAgICAgICAqIGBUaGUgRWFzeUluc3RhbGwgdXNlcidzIGd1aWRlIGFuZCByZWZlcmVuY2UgbWFudWFsYF8KKyAgICAgICAgKiBgVGhlIHNldHVwdG9vbHMgRGV2ZWxvcGVyJ3MgR3VpZGVgXworICAgICAgICAqIGBUaGUgcGtnX3Jlc291cmNlcyBBUEkgcmVmZXJlbmNlYF8KKyAgICAgICAgKiBgUGFja2FnZSBDb21wYXRpYmlsaXR5IE5vdGVzYF8gKHVzZXItbWFpbnRhaW5lZCkKKyAgICAgICAgKiBgVGhlIEludGVybmFsIFN0cnVjdHVyZSBvZiBQeXRob24gRWdnc2BfCisKKyAgICAgICAgUXVlc3Rpb25zLCBjb21tZW50cywgYW5kIGJ1ZyByZXBvcnRzIHNob3VsZCBiZSBkaXJlY3RlZCB0byB0aGUgYGRpc3R1dGlscy1zaWcKKyAgICAgICAgbWFpbGluZyBsaXN0YF8uICBJZiB5b3UgaGF2ZSB3cml0dGVuIChvciBrbm93IG9mKSBhbnkgdHV0b3JpYWxzLCBkb2N1bWVudGF0aW9uLAorICAgICAgICBwbHVnLWlucywgb3Igb3RoZXIgcmVzb3VyY2VzIGZvciBzZXR1cHRvb2xzIHVzZXJzLCBwbGVhc2UgbGV0IHVzIGtub3cgYWJvdXQKKyAgICAgICAgdGhlbSB0aGVyZSwgc28gdGhpcyByZWZlcmVuY2UgbGlzdCBjYW4gYmUgdXBkYXRlZC4gIElmIHlvdSBoYXZlIHdvcmtpbmcsCisgICAgICAgICp0ZXN0ZWQqIHBhdGNoZXMgdG8gY29ycmVjdCBwcm9ibGVtcyBvciBhZGQgZmVhdHVyZXMsIHlvdSBtYXkgc3VibWl0IHRoZW0gdG8KKyAgICAgICAgdGhlIGBzZXR1cHRvb2xzIGJ1ZyB0cmFja2VyYF8uCisKKyAgICAgICAgLi4gX3NldHVwdG9vbHMgYnVnIHRyYWNrZXI6IGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvc2V0dXB0b29scy8KKyAgICAgICAgLi4gX1BhY2thZ2UgQ29tcGF0aWJpbGl0eSBOb3RlczogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL1BhY2thZ2VOb3RlcworICAgICAgICAuLiBfVGhlIEludGVybmFsIFN0cnVjdHVyZSBvZiBQeXRob24gRWdnczogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL0VnZ0Zvcm1hdHMKKyAgICAgICAgLi4gX1RoZSBzZXR1cHRvb2xzIERldmVsb3BlcidzIEd1aWRlOiBodHRwOi8vcGVhay50ZWxlY29tbXVuaXR5LmNvbS9EZXZDZW50ZXIvc2V0dXB0b29scworICAgICAgICAuLiBfVGhlIHBrZ19yZXNvdXJjZXMgQVBJIHJlZmVyZW5jZTogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL1BrZ1Jlc291cmNlcworICAgICAgICAuLiBfVGhlIEVhc3lJbnN0YWxsIHVzZXIncyBndWlkZSBhbmQgcmVmZXJlbmNlIG1hbnVhbDogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL0Vhc3lJbnN0YWxsCisgICAgICAgIC4uIF9kaXN0dXRpbHMtc2lnIG1haWxpbmcgbGlzdDogaHR0cDovL21haWwucHl0aG9uLm9yZy9waXBlcm1haWwvZGlzdHV0aWxzLXNpZy8KKworCisgICAgICAgIC0tLS0tLS0KKyAgICAgICAgQ3JlZGl0cworICAgICAgICAtLS0tLS0tCisKKyAgICAgICAgKiBUaGUgb3JpZ2luYWwgZGVzaWduIGZvciB0aGUgYGAuZWdnYGAgZm9ybWF0IGFuZCB0aGUgYGBwa2dfcmVzb3VyY2VzYGAgQVBJIHdhcworICAgICAgICBjby1jcmVhdGVkIGJ5IFBoaWxsaXAgRWJ5IGFuZCBCb2IgSXBwb2xpdG8uICBCb2IgYWxzbyBpbXBsZW1lbnRlZCB0aGUgZmlyc3QKKyAgICAgICAgdmVyc2lvbiBvZiBgYHBrZ19yZXNvdXJjZXNgYCwgYW5kIHN1cHBsaWVkIHRoZSBPUyBYIG9wZXJhdGluZyBzeXN0ZW0gdmVyc2lvbgorICAgICAgICBjb21wYXRpYmlsaXR5IGFsZ29yaXRobS4KKworICAgICAgICAqIElhbiBCaWNraW5nIGltcGxlbWVudGVkIG1hbnkgZWFybHkgImNyZWF0dXJlIGNvbWZvcnQiIGZlYXR1cmVzIG9mCisgICAgICAgIGVhc3lfaW5zdGFsbCwgaW5jbHVkaW5nIHN1cHBvcnQgZm9yIGRvd25sb2FkaW5nIHZpYSBTb3VyY2Vmb3JnZSBhbmQKKyAgICAgICAgU3VidmVyc2lvbiByZXBvc2l0b3JpZXMuICBJYW4ncyBjb21tZW50cyBvbiB0aGUgV2ViLVNJRyBhYm91dCBXU0dJCisgICAgICAgIGFwcGxpY2F0aW9uIGRlcGxveW1lbnQgYWxzbyBpbnNwaXJlZCB0aGUgY29uY2VwdCBvZiAiZW50cnkgcG9pbnRzIiBpbiBlZ2dzLAorICAgICAgICBhbmQgaGUgaGFzIGdpdmVuIHRhbGtzIGF0IFB5Q29uIGFuZCBlbHNld2hlcmUgdG8gaW5mb3JtIGFuZCBlZHVjYXRlIHRoZQorICAgICAgICBjb21tdW5pdHkgYWJvdXQgZWdncyBhbmQgc2V0dXB0b29scy4KKworICAgICAgICAqIEppbSBGdWx0b24gY29udHJpYnV0ZWQgdGltZSBhbmQgZWZmb3J0IHRvIGJ1aWxkIGF1dG9tYXRlZCB0ZXN0cyBvZiB2YXJpb3VzCisgICAgICAgIGFzcGVjdHMgb2YgYGBlYXN5X2luc3RhbGxgYCwgYW5kIHN1cHBsaWVkIHRoZSBkb2N0ZXN0cyBmb3IgdGhlIGNvbW1hbmQtbGluZQorICAgICAgICBgYC5leGVgYCB3cmFwcGVycyBvbiBXaW5kb3dzLgorCisgICAgICAgICogUGhpbGxpcCBKLiBFYnkgaXMgdGhlIHByaW5jaXBhbCBhdXRob3IgYW5kIG1haW50YWluZXIgb2Ygc2V0dXB0b29scywgYW5kCisgICAgICAgIGZpcnN0IHByb3Bvc2VkIHRoZSBpZGVhIG9mIGFuIGltcG9ydGFibGUgYmluYXJ5IGRpc3RyaWJ1dGlvbiBmb3JtYXQgZm9yCisgICAgICAgIFB5dGhvbiBhcHBsaWNhdGlvbiBwbHVnLWlucy4KKworICAgICAgICAqIFNpZ25pZmljYW50IHBhcnRzIG9mIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBzZXR1cHRvb2xzIHdlcmUgZnVuZGVkIGJ5IHRoZSBPcGVuCisgICAgICAgIFNvdXJjZSBBcHBsaWNhdGlvbnMgRm91bmRhdGlvbiwgdG8gcHJvdmlkZSBhIHBsdWctaW4gaW5mcmFzdHJ1Y3R1cmUgZm9yIHRoZQorICAgICAgICBDaGFuZGxlciBQSU0gYXBwbGljYXRpb24uICBJbiBhZGRpdGlvbiwgbWFueSBPU0FGIHN0YWZmZXJzIChzdWNoIGFzIE1pa2UKKyAgICAgICAgIkNvZGUgQmVhciIgVGF5bG9yKSBjb250cmlidXRlZCB0aGVpciB0aW1lIGFuZCBzdHJlc3MgYXMgZ3VpbmVhIHBpZ3MgZm9yIHRoZQorICAgICAgICB1c2Ugb2YgZWdncyBhbmQgc2V0dXB0b29scywgZXZlbiBiZWZvcmUgZWdncyB3ZXJlICJjb29sIi4gIChUaGFua3MsIGd1eXMhKQorCisKK0tleXdvcmRzOiBDUEFOIFB5UEkgZGlzdHV0aWxzIGVnZ3MgcGFja2FnZSBtYW5hZ2VtZW50CitQbGF0Zm9ybTogVU5LTk9XTgorQ2xhc3NpZmllcjogRGV2ZWxvcG1lbnQgU3RhdHVzIDo6IDMgLSBBbHBoYQorQ2xhc3NpZmllcjogSW50ZW5kZWQgQXVkaWVuY2UgOjogRGV2ZWxvcGVycworQ2xhc3NpZmllcjogTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogUHl0aG9uIFNvZnR3YXJlIEZvdW5kYXRpb24gTGljZW5zZQorQ2xhc3NpZmllcjogTGljZW5zZSA6OiBPU0kgQXBwcm92ZWQgOjogWm9wZSBQdWJsaWMgTGljZW5zZQorQ2xhc3NpZmllcjogT3BlcmF0aW5nIFN5c3RlbSA6OiBPUyBJbmRlcGVuZGVudAorQ2xhc3NpZmllcjogUHJvZ3JhbW1pbmcgTGFuZ3VhZ2UgOjogUHl0aG9uCitDbGFzc2lmaWVyOiBUb3BpYyA6OiBTb2Z0d2FyZSBEZXZlbG9wbWVudCA6OiBMaWJyYXJpZXMgOjogUHl0aG9uIE1vZHVsZXMKK0NsYXNzaWZpZXI6IFRvcGljIDo6IFN5c3RlbSA6OiBBcmNoaXZpbmcgOjogUGFja2FnaW5nCitDbGFzc2lmaWVyOiBUb3BpYyA6OiBTeXN0ZW0gOjogU3lzdGVtcyBBZG1pbmlzdHJhdGlvbgorQ2xhc3NpZmllcjogVG9waWMgOjogVXRpbGl0aWVzCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL1NFVFVQVE9PTFMtUEtHLUlORk8yIGIvTGliL3BhY2thZ2luZy90ZXN0cy9TRVRVUFRPT0xTLVBLRy1JTkZPMgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40YjM5MDZhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9TRVRVUFRPT0xTLVBLRy1JTkZPMgpAQCAtMCwwICsxLDE4MyBAQAorTWV0YWRhdGEtVmVyc2lvbjogMS4xCitOYW1lOiBzZXR1cHRvb2xzCitWZXJzaW9uOiAwLjZjOQorU3VtbWFyeTogRG93bmxvYWQsIGJ1aWxkLCBpbnN0YWxsLCB1cGdyYWRlLCBhbmQgdW5pbnN0YWxsIFB5dGhvbiBwYWNrYWdlcyAtLSBlYXNpbHkhCitIb21lLXBhZ2U6IGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaS9zZXR1cHRvb2xzCitBdXRob3I6IFBoaWxsaXAgSi4gRWJ5CitBdXRob3ItZW1haWw6IGRpc3R1dGlscy1zaWdAcHl0aG9uLm9yZworTGljZW5zZTogUFNGIG9yIFpQTAorRGVzY3JpcHRpb246ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAgICAgICAgSW5zdGFsbGluZyBhbmQgVXNpbmcgU2V0dXB0b29scworICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisKKyAgICAgICAgLi4gY29udGVudHM6OiAqKlRhYmxlIG9mIENvbnRlbnRzKioKKworCisgICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgSW5zdGFsbGF0aW9uIEluc3RydWN0aW9ucworICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKyAgICAgICAgV2luZG93cworICAgICAgICA9PT09PT09CisKKyAgICAgICAgSW5zdGFsbCBzZXR1cHRvb2xzIHVzaW5nIHRoZSBwcm92aWRlZCBgYC5leGVgYCBpbnN0YWxsZXIuICBJZiB5b3UndmUgcHJldmlvdXNseQorICAgICAgICBpbnN0YWxsZWQgb2xkZXIgdmVyc2lvbnMgb2Ygc2V0dXB0b29scywgcGxlYXNlIGRlbGV0ZSBhbGwgYGBzZXR1cHRvb2xzKi5lZ2dgYAorICAgICAgICBhbmQgYGBzZXR1cHRvb2xzLnB0aGBgIGZpbGVzIGZyb20geW91ciBzeXN0ZW0ncyBgYHNpdGUtcGFja2FnZXNgYCBkaXJlY3RvcnkKKyAgICAgICAgKGFuZCBhbnkgb3RoZXIgYGBzeXMucGF0aGBgIGRpcmVjdG9yaWVzKSBGSVJTVC4KKworICAgICAgICBJZiB5b3UgYXJlIHVwZ3JhZGluZyBhIHByZXZpb3VzIHZlcnNpb24gb2Ygc2V0dXB0b29scyB0aGF0IHdhcyBpbnN0YWxsZWQgdXNpbmcKKyAgICAgICAgYW4gYGAuZXhlYGAgaW5zdGFsbGVyLCBwbGVhc2UgYmUgc3VyZSB0byBhbHNvICp1bmluc3RhbGwgdGhhdCBvbGRlciB2ZXJzaW9uKgorICAgICAgICB2aWEgeW91ciBzeXN0ZW0ncyAiQWRkL1JlbW92ZSBQcm9ncmFtcyIgZmVhdHVyZSwgQkVGT1JFIGluc3RhbGxpbmcgdGhlIG5ld2VyCisgICAgICAgIHZlcnNpb24uCisKKyAgICAgICAgT25jZSBpbnN0YWxsYXRpb24gaXMgY29tcGxldGUsIHlvdSB3aWxsIGZpbmQgYW4gYGBlYXN5X2luc3RhbGwuZXhlYGAgcHJvZ3JhbSBpbgorICAgICAgICB5b3VyIFB5dGhvbiBgYFNjcmlwdHNgYCBzdWJkaXJlY3RvcnkuICBCZSBzdXJlIHRvIGFkZCB0aGlzIGRpcmVjdG9yeSB0byB5b3VyCisgICAgICAgIGBgUEFUSGBgIGVudmlyb25tZW50IHZhcmlhYmxlLCBpZiB5b3UgaGF2ZW4ndCBhbHJlYWR5IGRvbmUgc28uCisKKworICAgICAgICBSUE0tQmFzZWQgU3lzdGVtcworICAgICAgICA9PT09PT09PT09PT09PT09PQorCisgICAgICAgIEluc3RhbGwgc2V0dXB0b29scyB1c2luZyB0aGUgcHJvdmlkZWQgc291cmNlIFJQTS4gIFRoZSBpbmNsdWRlZCBgYC5zcGVjYGAgZmlsZQorICAgICAgICBhc3N1bWVzIHlvdSBhcmUgaW5zdGFsbGluZyB1c2luZyB0aGUgZGVmYXVsdCBgYHB5dGhvbmBgIGV4ZWN1dGFibGUsIGFuZCBpcyBub3QKKyAgICAgICAgc3BlY2lmaWMgdG8gYSBwYXJ0aWN1bGFyIFB5dGhvbiB2ZXJzaW9uLiAgVGhlIGBgZWFzeV9pbnN0YWxsYGAgZXhlY3V0YWJsZSB3aWxsCisgICAgICAgIGJlIGluc3RhbGxlZCB0byBhIHN5c3RlbSBgYGJpbmBgIGRpcmVjdG9yeSBzdWNoIGFzIGBgL3Vzci9iaW5gYC4KKworICAgICAgICBJZiB5b3Ugd2lzaCB0byBpbnN0YWxsIHRvIGEgbG9jYXRpb24gb3RoZXIgdGhhbiB0aGUgZGVmYXVsdCBQeXRob24KKyAgICAgICAgaW5zdGFsbGF0aW9uJ3MgZGVmYXVsdCBgYHNpdGUtcGFja2FnZXNgYCBkaXJlY3RvcnkgKGFuZCBgYCRwcmVmaXgvYmluYGAgZm9yCisgICAgICAgIHNjcmlwdHMpLCBwbGVhc2UgdXNlIHRoZSBgYC5lZ2dgYC1iYXNlZCBpbnN0YWxsYXRpb24gYXBwcm9hY2ggZGVzY3JpYmVkIGluIHRoZQorICAgICAgICBmb2xsb3dpbmcgc2VjdGlvbi4KKworCisgICAgICAgIEN5Z3dpbiwgTWFjIE9TIFgsIExpbnV4LCBPdGhlcgorICAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworICAgICAgICAxLiBEb3dubG9hZCB0aGUgYXBwcm9wcmlhdGUgZWdnIGZvciB5b3VyIHZlcnNpb24gb2YgUHl0aG9uIChlLmcuCisgICAgICAgIGBgc2V0dXB0b29scy0wLjZjOS1weTIuNC5lZ2dgYCkuICBEbyBOT1QgcmVuYW1lIGl0LgorCisgICAgICAgIDIuIFJ1biBpdCBhcyBpZiBpdCB3ZXJlIGEgc2hlbGwgc2NyaXB0LCBlLmcuIGBgc2ggc2V0dXB0b29scy0wLjZjOS1weTIuNC5lZ2dgYC4KKyAgICAgICAgU2V0dXB0b29scyB3aWxsIGluc3RhbGwgaXRzZWxmIHVzaW5nIHRoZSBtYXRjaGluZyB2ZXJzaW9uIG9mIFB5dGhvbiAoZS5nLgorICAgICAgICBgYHB5dGhvbjIuNGBgKSwgYW5kIHdpbGwgcGxhY2UgdGhlIGBgZWFzeV9pbnN0YWxsYGAgZXhlY3V0YWJsZSBpbiB0aGUKKyAgICAgICAgZGVmYXVsdCBsb2NhdGlvbiBmb3IgaW5zdGFsbGluZyBQeXRob24gc2NyaXB0cyAoYXMgZGV0ZXJtaW5lZCBieSB0aGUKKyAgICAgICAgc3RhbmRhcmQgZGlzdHV0aWxzIGNvbmZpZ3VyYXRpb24gZmlsZXMsIG9yIGJ5IHRoZSBQeXRob24gaW5zdGFsbGF0aW9uKS4KKworICAgICAgICBJZiB5b3Ugd2FudCB0byBpbnN0YWxsIHNldHVwdG9vbHMgdG8gc29tZXdoZXJlIG90aGVyIHRoYW4gYGBzaXRlLXBhY2thZ2VzYGAgb3IKKyAgICAgICAgeW91ciBkZWZhdWx0IGRpc3R1dGlscyBpbnN0YWxsYXRpb24gbG9jYXRpb25zIGZvciBsaWJyYXJpZXMgYW5kIHNjcmlwdHMsIHlvdQorICAgICAgICBtYXkgaW5jbHVkZSBFYXN5SW5zdGFsbCBjb21tYW5kLWxpbmUgb3B0aW9ucyBzdWNoIGFzIGBgLS1wcmVmaXhgYCwKKyAgICAgICAgYGAtLWluc3RhbGwtZGlyYGAsIGFuZCBzbyBvbiwgZm9sbG93aW5nIHRoZSBgYC5lZ2dgYCBmaWxlbmFtZSBvbiB0aGUgc2FtZQorICAgICAgICBjb21tYW5kIGxpbmUuICBGb3IgZXhhbXBsZTo6CisKKyAgICAgICAgc2ggc2V0dXB0b29scy0wLjZjOS1weTIuNC5lZ2cgLS1wcmVmaXg9fgorCisgICAgICAgIFlvdSBjYW4gdXNlIGBgLS1oZWxwYGAgdG8gZ2V0IGEgZnVsbCBvcHRpb25zIGxpc3QsIGJ1dCB3ZSByZWNvbW1lbmQgY29uc3VsdGluZworICAgICAgICB0aGUgYEVhc3lJbnN0YWxsIG1hbnVhbGBfIGZvciBkZXRhaWxlZCBpbnN0cnVjdGlvbnMsIGVzcGVjaWFsbHkgYHRoZSBzZWN0aW9uCisgICAgICAgIG9uIGN1c3RvbSBpbnN0YWxsYXRpb24gbG9jYXRpb25zYF8uCisKKyAgICAgICAgLi4gX0Vhc3lJbnN0YWxsIG1hbnVhbDogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL0Vhc3lJbnN0YWxsCisgICAgICAgIC4uIF90aGUgc2VjdGlvbiBvbiBjdXN0b20gaW5zdGFsbGF0aW9uIGxvY2F0aW9uczogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL0Vhc3lJbnN0YWxsI2N1c3RvbS1pbnN0YWxsYXRpb24tbG9jYXRpb25zCisKKworICAgICAgICBDeWd3aW4gTm90ZQorICAgICAgICAtLS0tLS0tLS0tLQorCisgICAgICAgIElmIHlvdSBhcmUgdHJ5aW5nIHRvIGluc3RhbGwgc2V0dXB0b29scyBmb3IgdGhlICoqV2luZG93cyoqIHZlcnNpb24gb2YgUHl0aG9uCisgICAgICAgIChhcyBvcHBvc2VkIHRvIHRoZSBDeWd3aW4gdmVyc2lvbiB0aGF0IGxpdmVzIGluIGBgL3Vzci9iaW5gYCksIHlvdSBtdXN0IG1ha2UKKyAgICAgICAgc3VyZSB0aGF0IGFuIGFwcHJvcHJpYXRlIGV4ZWN1dGFibGUgKGBgcHl0aG9uMi4zYGAsIGBgcHl0aG9uMi40YGAsIG9yCisgICAgICAgIGBgcHl0aG9uMi41YGApIGlzIG9uIHlvdXIgKipDeWd3aW4qKiBgYFBBVEhgYCB3aGVuIGludm9raW5nIHRoZSBlZ2cuICBGb3IKKyAgICAgICAgZXhhbXBsZSwgZG9pbmcgdGhlIGZvbGxvd2luZyBhdCBhIEN5Z3dpbiBiYXNoIHByb21wdCB3aWxsIGluc3RhbGwgc2V0dXB0b29scworICAgICAgICBmb3IgdGhlICoqV2luZG93cyoqIFB5dGhvbiBmb3VuZCBhdCBgYEM6XFxQeXRob24yNGBgOjoKKworICAgICAgICBsbiAtcyAvY3lnZHJpdmUvYy9QeXRob24yNC9weXRob24uZXhlIHB5dGhvbjIuNAorICAgICAgICBQQVRIPS46JFBBVEggc2ggc2V0dXB0b29scy0wLjZjOS1weTIuNC5lZ2cKKyAgICAgICAgcm0gcHl0aG9uMi40CisKKworICAgICAgICBEb3dubG9hZHMKKyAgICAgICAgPT09PT09PT09CisKKyAgICAgICAgQWxsIHNldHVwdG9vbHMgZG93bmxvYWRzIGNhbiBiZSBmb3VuZCBhdCBgdGhlIHByb2plY3QncyBob21lIHBhZ2UgaW4gdGhlIFB5dGhvbgorICAgICAgICBQYWNrYWdlIEluZGV4YF8uICBTY3JvbGwgdG8gdGhlIHZlcnkgYm90dG9tIG9mIHRoZSBwYWdlIHRvIGZpbmQgdGhlIGxpbmtzLgorCisgICAgICAgIC4uIF90aGUgcHJvamVjdCdzIGhvbWUgcGFnZSBpbiB0aGUgUHl0aG9uIFBhY2thZ2UgSW5kZXg6IGh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvcHlwaS9zZXR1cHRvb2xzCisKKyAgICAgICAgSW4gYWRkaXRpb24gdG8gdGhlIFB5UEkgZG93bmxvYWRzLCB0aGUgZGV2ZWxvcG1lbnQgdmVyc2lvbiBvZiBgYHNldHVwdG9vbHNgYAorICAgICAgICBpcyBhdmFpbGFibGUgZnJvbSB0aGUgYFB5dGhvbiBTVk4gc2FuZGJveGBfLCBhbmQgaW4tZGV2ZWxvcG1lbnQgdmVyc2lvbnMgb2YgdGhlCisgICAgICAgIGAwLjYgYnJhbmNoYF8gYXJlIGF2YWlsYWJsZSBhcyB3ZWxsLgorCisgICAgICAgIC4uIF8wLjYgYnJhbmNoOiBodHRwOi8vc3ZuLnB5dGhvbi5vcmcvcHJvamVjdHMvc2FuZGJveC9icmFuY2hlcy9zZXR1cHRvb2xzLTAuNi8jZWdnPXNldHVwdG9vbHMtZGV2MDYKKworICAgICAgICAuLiBfUHl0aG9uIFNWTiBzYW5kYm94OiBodHRwOi8vc3ZuLnB5dGhvbi5vcmcvcHJvamVjdHMvc2FuZGJveC90cnVuay9zZXR1cHRvb2xzLyNlZ2c9c2V0dXB0b29scy1kZXYKKworICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICBVc2luZyBTZXR1cHRvb2xzIGFuZCBFYXN5SW5zdGFsbAorICAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisgICAgICAgIEhlcmUgYXJlIHNvbWUgb2YgdGhlIGF2YWlsYWJsZSBtYW51YWxzLCB0dXRvcmlhbHMsIGFuZCBvdGhlciByZXNvdXJjZXMgZm9yCisgICAgICAgIGxlYXJuaW5nIGFib3V0IFNldHVwdG9vbHMsIFB5dGhvbiBFZ2dzLCBhbmQgRWFzeUluc3RhbGw6CisKKyAgICAgICAgKiBgVGhlIEVhc3lJbnN0YWxsIHVzZXIncyBndWlkZSBhbmQgcmVmZXJlbmNlIG1hbnVhbGBfCisgICAgICAgICogYFRoZSBzZXR1cHRvb2xzIERldmVsb3BlcidzIEd1aWRlYF8KKyAgICAgICAgKiBgVGhlIHBrZ19yZXNvdXJjZXMgQVBJIHJlZmVyZW5jZWBfCisgICAgICAgICogYFBhY2thZ2UgQ29tcGF0aWJpbGl0eSBOb3Rlc2BfICh1c2VyLW1haW50YWluZWQpCisgICAgICAgICogYFRoZSBJbnRlcm5hbCBTdHJ1Y3R1cmUgb2YgUHl0aG9uIEVnZ3NgXworCisgICAgICAgIFF1ZXN0aW9ucywgY29tbWVudHMsIGFuZCBidWcgcmVwb3J0cyBzaG91bGQgYmUgZGlyZWN0ZWQgdG8gdGhlIGBkaXN0dXRpbHMtc2lnCisgICAgICAgIG1haWxpbmcgbGlzdGBfLiAgSWYgeW91IGhhdmUgd3JpdHRlbiAob3Iga25vdyBvZikgYW55IHR1dG9yaWFscywgZG9jdW1lbnRhdGlvbiwKKyAgICAgICAgcGx1Zy1pbnMsIG9yIG90aGVyIHJlc291cmNlcyBmb3Igc2V0dXB0b29scyB1c2VycywgcGxlYXNlIGxldCB1cyBrbm93IGFib3V0CisgICAgICAgIHRoZW0gdGhlcmUsIHNvIHRoaXMgcmVmZXJlbmNlIGxpc3QgY2FuIGJlIHVwZGF0ZWQuICBJZiB5b3UgaGF2ZSB3b3JraW5nLAorICAgICAgICAqdGVzdGVkKiBwYXRjaGVzIHRvIGNvcnJlY3QgcHJvYmxlbXMgb3IgYWRkIGZlYXR1cmVzLCB5b3UgbWF5IHN1Ym1pdCB0aGVtIHRvCisgICAgICAgIHRoZSBgc2V0dXB0b29scyBidWcgdHJhY2tlcmBfLgorCisgICAgICAgIC4uIF9zZXR1cHRvb2xzIGJ1ZyB0cmFja2VyOiBodHRwOi8vYnVncy5weXRob24ub3JnL3NldHVwdG9vbHMvCisgICAgICAgIC4uIF9QYWNrYWdlIENvbXBhdGliaWxpdHkgTm90ZXM6IGh0dHA6Ly9wZWFrLnRlbGVjb21tdW5pdHkuY29tL0RldkNlbnRlci9QYWNrYWdlTm90ZXMKKyAgICAgICAgLi4gX1RoZSBJbnRlcm5hbCBTdHJ1Y3R1cmUgb2YgUHl0aG9uIEVnZ3M6IGh0dHA6Ly9wZWFrLnRlbGVjb21tdW5pdHkuY29tL0RldkNlbnRlci9FZ2dGb3JtYXRzCisgICAgICAgIC4uIF9UaGUgc2V0dXB0b29scyBEZXZlbG9wZXIncyBHdWlkZTogaHR0cDovL3BlYWsudGVsZWNvbW11bml0eS5jb20vRGV2Q2VudGVyL3NldHVwdG9vbHMKKyAgICAgICAgLi4gX1RoZSBwa2dfcmVzb3VyY2VzIEFQSSByZWZlcmVuY2U6IGh0dHA6Ly9wZWFrLnRlbGVjb21tdW5pdHkuY29tL0RldkNlbnRlci9Qa2dSZXNvdXJjZXMKKyAgICAgICAgLi4gX1RoZSBFYXN5SW5zdGFsbCB1c2VyJ3MgZ3VpZGUgYW5kIHJlZmVyZW5jZSBtYW51YWw6IGh0dHA6Ly9wZWFrLnRlbGVjb21tdW5pdHkuY29tL0RldkNlbnRlci9FYXN5SW5zdGFsbAorICAgICAgICAuLiBfZGlzdHV0aWxzLXNpZyBtYWlsaW5nIGxpc3Q6IGh0dHA6Ly9tYWlsLnB5dGhvbi5vcmcvcGlwZXJtYWlsL2Rpc3R1dGlscy1zaWcvCisKKworICAgICAgICAtLS0tLS0tCisgICAgICAgIENyZWRpdHMKKyAgICAgICAgLS0tLS0tLQorCisgICAgICAgICogVGhlIG9yaWdpbmFsIGRlc2lnbiBmb3IgdGhlIGBgLmVnZ2BgIGZvcm1hdCBhbmQgdGhlIGBgcGtnX3Jlc291cmNlc2BgIEFQSSB3YXMKKyAgICAgICAgY28tY3JlYXRlZCBieSBQaGlsbGlwIEVieSBhbmQgQm9iIElwcG9saXRvLiAgQm9iIGFsc28gaW1wbGVtZW50ZWQgdGhlIGZpcnN0CisgICAgICAgIHZlcnNpb24gb2YgYGBwa2dfcmVzb3VyY2VzYGAsIGFuZCBzdXBwbGllZCB0aGUgT1MgWCBvcGVyYXRpbmcgc3lzdGVtIHZlcnNpb24KKyAgICAgICAgY29tcGF0aWJpbGl0eSBhbGdvcml0aG0uCisKKyAgICAgICAgKiBJYW4gQmlja2luZyBpbXBsZW1lbnRlZCBtYW55IGVhcmx5ICJjcmVhdHVyZSBjb21mb3J0IiBmZWF0dXJlcyBvZgorICAgICAgICBlYXN5X2luc3RhbGwsIGluY2x1ZGluZyBzdXBwb3J0IGZvciBkb3dubG9hZGluZyB2aWEgU291cmNlZm9yZ2UgYW5kCisgICAgICAgIFN1YnZlcnNpb24gcmVwb3NpdG9yaWVzLiAgSWFuJ3MgY29tbWVudHMgb24gdGhlIFdlYi1TSUcgYWJvdXQgV1NHSQorICAgICAgICBhcHBsaWNhdGlvbiBkZXBsb3ltZW50IGFsc28gaW5zcGlyZWQgdGhlIGNvbmNlcHQgb2YgImVudHJ5IHBvaW50cyIgaW4gZWdncywKKyAgICAgICAgYW5kIGhlIGhhcyBnaXZlbiB0YWxrcyBhdCBQeUNvbiBhbmQgZWxzZXdoZXJlIHRvIGluZm9ybSBhbmQgZWR1Y2F0ZSB0aGUKKyAgICAgICAgY29tbXVuaXR5IGFib3V0IGVnZ3MgYW5kIHNldHVwdG9vbHMuCisKKyAgICAgICAgKiBKaW0gRnVsdG9uIGNvbnRyaWJ1dGVkIHRpbWUgYW5kIGVmZm9ydCB0byBidWlsZCBhdXRvbWF0ZWQgdGVzdHMgb2YgdmFyaW91cworICAgICAgICBhc3BlY3RzIG9mIGBgZWFzeV9pbnN0YWxsYGAsIGFuZCBzdXBwbGllZCB0aGUgZG9jdGVzdHMgZm9yIHRoZSBjb21tYW5kLWxpbmUKKyAgICAgICAgYGAuZXhlYGAgd3JhcHBlcnMgb24gV2luZG93cy4KKworICAgICAgICAqIFBoaWxsaXAgSi4gRWJ5IGlzIHRoZSBwcmluY2lwYWwgYXV0aG9yIGFuZCBtYWludGFpbmVyIG9mIHNldHVwdG9vbHMsIGFuZAorICAgICAgICBmaXJzdCBwcm9wb3NlZCB0aGUgaWRlYSBvZiBhbiBpbXBvcnRhYmxlIGJpbmFyeSBkaXN0cmlidXRpb24gZm9ybWF0IGZvcgorICAgICAgICBQeXRob24gYXBwbGljYXRpb24gcGx1Zy1pbnMuCisKKyAgICAgICAgKiBTaWduaWZpY2FudCBwYXJ0cyBvZiB0aGUgaW1wbGVtZW50YXRpb24gb2Ygc2V0dXB0b29scyB3ZXJlIGZ1bmRlZCBieSB0aGUgT3BlbgorICAgICAgICBTb3VyY2UgQXBwbGljYXRpb25zIEZvdW5kYXRpb24sIHRvIHByb3ZpZGUgYSBwbHVnLWluIGluZnJhc3RydWN0dXJlIGZvciB0aGUKKyAgICAgICAgQ2hhbmRsZXIgUElNIGFwcGxpY2F0aW9uLiAgSW4gYWRkaXRpb24sIG1hbnkgT1NBRiBzdGFmZmVycyAoc3VjaCBhcyBNaWtlCisgICAgICAgICJDb2RlIEJlYXIiIFRheWxvcikgY29udHJpYnV0ZWQgdGhlaXIgdGltZSBhbmQgc3RyZXNzIGFzIGd1aW5lYSBwaWdzIGZvciB0aGUKKyAgICAgICAgdXNlIG9mIGVnZ3MgYW5kIHNldHVwdG9vbHMsIGV2ZW4gYmVmb3JlIGVnZ3Mgd2VyZSAiY29vbCIuICAoVGhhbmtzLCBndXlzISkKKworCitLZXl3b3JkczogQ1BBTiBQeVBJIGRpc3R1dGlscyBlZ2dzIHBhY2thZ2UgbWFuYWdlbWVudAorUGxhdGZvcm06IFVOS05PV04KK0NsYXNzaWZpZXI6IERldmVsb3BtZW50IFN0YXR1cyA6OiAzIC0gQWxwaGEKK0NsYXNzaWZpZXI6IEludGVuZGVkIEF1ZGllbmNlIDo6IERldmVsb3BlcnMKK0NsYXNzaWZpZXI6IExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFB5dGhvbiBTb2Z0d2FyZSBGb3VuZGF0aW9uIExpY2Vuc2UKK0NsYXNzaWZpZXI6IExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IFpvcGUgUHVibGljIExpY2Vuc2UKK0NsYXNzaWZpZXI6IE9wZXJhdGluZyBTeXN0ZW0gOjogT1MgSW5kZXBlbmRlbnQKK0NsYXNzaWZpZXI6IFByb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbgorQ2xhc3NpZmllcjogVG9waWMgOjogU29mdHdhcmUgRGV2ZWxvcG1lbnQgOjogTGlicmFyaWVzIDo6IFB5dGhvbiBNb2R1bGVzCitDbGFzc2lmaWVyOiBUb3BpYyA6OiBTeXN0ZW0gOjogQXJjaGl2aW5nIDo6IFBhY2thZ2luZworQ2xhc3NpZmllcjogVG9waWMgOjogU3lzdGVtIDo6IFN5c3RlbXMgQWRtaW5pc3RyYXRpb24KK0NsYXNzaWZpZXI6IFRvcGljIDo6IFV0aWxpdGllcworUmVxdWlyZXM6IEZvbwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvX19pbml0X18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2I4MjAwNAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvX19pbml0X18ucHkKQEAgLTAsMCArMSwyOCBAQAorIiIiVGVzdCBzdWl0ZSBmb3IgcGFja2FnaW5nLgorCitUaGlzIHRlc3Qgc3VpdGUgY29uc2lzdHMgb2YgYSBjb2xsZWN0aW9uIG9mIHRlc3QgbW9kdWxlcyBpbiB0aGUKK3BhY2thZ2luZy50ZXN0cyBwYWNrYWdlLiAgRWFjaCB0ZXN0IG1vZHVsZSBoYXMgYSBuYW1lIHN0YXJ0aW5nIHdpdGgKKyd0ZXN0JyBhbmQgY29udGFpbnMgYSBmdW5jdGlvbiB0ZXN0X3N1aXRlKCkuICBUaGUgZnVuY3Rpb24gaXMgZXhwZWN0ZWQKK3RvIHJldHVybiBhbiBpbml0aWFsaXplZCB1bml0dGVzdC5UZXN0U3VpdGUgaW5zdGFuY2UuCisKK1V0aWxpdHkgY29kZSBpcyBpbmNsdWRlZCBpbiBwYWNrYWdpbmcudGVzdHMuc3VwcG9ydC4KKworQWx3YXlzIGltcG9ydCB1bml0dGVzdCBmcm9tIHRoaXMgbW9kdWxlOiBpdCB3aWxsIGJlIHVuaXR0ZXN0IGZyb20gdGhlCitzdGFuZGFyZCBsaWJyYXJ5IGZvciBwYWNrYWdpbmcgdGVzdHMgYW5kIHVuaXR0ZXN0MiBmb3IgZGlzdHV0aWxzMiB0ZXN0cy4KKyIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB1bml0dGVzdAorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgc3VpdGUgPSB1bml0dGVzdC5UZXN0U3VpdGUoKQorICAgIGhlcmUgPSBvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pIG9yIG9zLmN1cmRpcgorICAgIGZvciBmbiBpbiBvcy5saXN0ZGlyKGhlcmUpOgorICAgICAgICBpZiBmbi5zdGFydHN3aXRoKCJ0ZXN0IikgYW5kIGZuLmVuZHN3aXRoKCIucHkiKToKKyAgICAgICAgICAgIG1vZG5hbWUgPSAicGFja2FnaW5nLnRlc3RzLiIgKyBmbls6LTNdCisgICAgICAgICAgICBfX2ltcG9ydF9fKG1vZG5hbWUpCisgICAgICAgICAgICBtb2R1bGUgPSBzeXMubW9kdWxlc1ttb2RuYW1lXQorICAgICAgICAgICAgc3VpdGUuYWRkVGVzdChtb2R1bGUudGVzdF9zdWl0ZSgpKQorICAgIHJldHVybiBzdWl0ZQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9fX21haW5fXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvX19tYWluX18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDBmMzIzZQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvX19tYWluX18ucHkKQEAgLTAsMCArMSwyNCBAQAorIiIiUGFja2FnaW5nIHRlc3Qgc3VpdGUgcnVubmVyLiIiIgorCisjIFJpcHBlZCBmcm9tIGltcG9ydGxpYiB0ZXN0cywgdGhhbmtzIEJyZXR0IQorCitpbXBvcnQgb3MKK2ltcG9ydCB1bml0dGVzdAorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdCwgcmVhcF9jaGlsZHJlbiwgcmVhcF90aHJlYWRzCisKKworQHJlYXBfdGhyZWFkcworZGVmIHRlc3RfbWFpbigpOgorICAgIHRyeToKKyAgICAgICAgc3RhcnRfZGlyID0gb3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKQorICAgICAgICB0b3BfZGlyID0gb3MucGF0aC5kaXJuYW1lKG9zLnBhdGguZGlybmFtZShzdGFydF9kaXIpKQorICAgICAgICB0ZXN0X2xvYWRlciA9IHVuaXR0ZXN0LlRlc3RMb2FkZXIoKQorICAgICAgICAjIFhYWCBmaW5kIG91dCBob3cgdG8gdXNlIHVuaXR0ZXN0Lm1haW4sIHRvIGdldCBjb21tYW5kLWxpbmUgb3B0aW9ucworICAgICAgICAjIChmYWlsZmFzdCwgY2F0Y2gsIGV0Yy4pCisgICAgICAgIHJ1bl91bml0dGVzdCh0ZXN0X2xvYWRlci5kaXNjb3ZlcihzdGFydF9kaXIsIHRvcF9sZXZlbF9kaXI9dG9wX2RpcikpCisgICAgZmluYWxseToKKyAgICAgICAgcmVhcF9jaGlsZHJlbigpCisKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXItMC4xLmRpc3QtaW5mby9JTlNUQUxMRVIKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWJhci0wLjEuZGlzdC1pbmZvL0lOU1RBTExFUgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLTAuMS5kaXN0LWluZm8vTUVUQURBVEEgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXItMC4xLmRpc3QtaW5mby9NRVRBREFUQQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NWU4MzlhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLTAuMS5kaXN0LWluZm8vTUVUQURBVEEKQEAgLTAsMCArMSw0IEBACitNZXRhZGF0YS12ZXJzaW9uOiAxLjIKK05hbWU6IGJhYmFyCitWZXJzaW9uOiAwLjEKK0F1dGhvcjogRkVMRCBCb3JpcwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLTAuMS5kaXN0LWluZm8vUkVDT1JECnNpbWlsYXJpdHkgaW5kZXggMTAwJQpjb3B5IGZyb20gTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkKY29weSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXItMC4xLmRpc3QtaW5mby9SRUNPUkQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLTAuMS5kaXN0LWluZm8vUkVRVUVTVEVECnNpbWlsYXJpdHkgaW5kZXggMTAwJQpjb3B5IGZyb20gTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkKY29weSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXItMC4xLmRpc3QtaW5mby9SRVFVRVNURUQKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWJhci0wLjEuZGlzdC1pbmZvL1JFU09VUkNFUyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWJhci0wLjEuZGlzdC1pbmZvL1JFU09VUkNFUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZDBkYTQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLTAuMS5kaXN0LWluZm8vUkVTT1VSQ0VTCkBAIC0wLDAgKzEsMiBAQAorYmFiYXIucG5nLGJhYmFyLnBuZworYmFiYXIuY2ZnLGJhYmFyLmNmZwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWJhci5jZmcgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXIuY2ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVjZDZlZmUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXIuY2ZnCkBAIC0wLDAgKzEgQEAKK0NvbmZpZwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLnBuZwpzaW1pbGFyaXR5IGluZGV4IDEwMCUKY29weSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CmNvcHkgdG8gTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhYmFyLnBuZwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhY29uLTAuMS5lZ2ctaW5mby9QS0ctSU5GTyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWNvbi0wLjEuZWdnLWluZm8vUEtHLUlORk8KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTE3NmRmZAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYWNvbi0wLjEuZWdnLWluZm8vUEtHLUlORk8KQEAgLTAsMCArMSw2IEBACitNZXRhZGF0YS1WZXJzaW9uOiAxLjIKK05hbWU6IGJhY29uCitWZXJzaW9uOiAwLjEKK1Byb3ZpZGVzLURpc3Q6IHRydWZmbGVzICgyLjApCitQcm92aWRlcy1EaXN0OiBiYWNvbiAoMC4xKQorT2Jzb2xldGVzLURpc3Q6IHRydWZmbGVzICg+PTAuOSw8PTEuNSkKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9QS0ctSU5GTyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9QS0ctSU5GTwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hN2UxMThhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL1BLRy1JTkZPCkBAIC0wLDAgKzEsMTggQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMAorTmFtZTogYmFuYW5hCitWZXJzaW9uOiAwLjQKK1N1bW1hcnk6IEEgeWVsbG93IGZydWl0CitIb21lLXBhZ2U6IGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQmFuYW5hCitBdXRob3I6IEpvc2lwIERqb2xvbmdhCitBdXRob3ItZW1haWw6IGZvb0BuYmFyLmNvbQorTGljZW5zZTogQlNECitEZXNjcmlwdGlvbjogQSBmcnVpdAorS2V5d29yZHM6IGZvbyBiYXIKK1BsYXRmb3JtOiBVTktOT1dOCitDbGFzc2lmaWVyOiBEZXZlbG9wbWVudCBTdGF0dXMgOjogNCAtIEJldGEKK0NsYXNzaWZpZXI6IEludGVuZGVkIEF1ZGllbmNlIDo6IERldmVsb3BlcnMKK0NsYXNzaWZpZXI6IEludGVuZGVkIEF1ZGllbmNlIDo6IFNjaWVuY2UvUmVzZWFyY2gKK0NsYXNzaWZpZXI6IExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IEJTRCBMaWNlbnNlCitDbGFzc2lmaWVyOiBPcGVyYXRpbmcgU3lzdGVtIDo6IE9TIEluZGVwZW5kZW50CitDbGFzc2lmaWVyOiBQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24KK0NsYXNzaWZpZXI6IFRvcGljIDo6IFNjaWVudGlmaWMvRW5naW5lZXJpbmcgOjogR0lTCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9TT1VSQ0VTLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKY29weSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CmNvcHkgdG8gTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL1NPVVJDRVMudHh0CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFuYW5hLTAuNC5lZ2cvRUdHLUlORk8vZGVwZW5kZW5jeV9saW5rcy50eHQgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFuYW5hLTAuNC5lZ2cvRUdHLUlORk8vZGVwZW5kZW5jeV9saW5rcy50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGIxMzc4OQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9kZXBlbmRlbmN5X2xpbmtzLnR4dApAQCAtMCwwICsxIEBACisKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9lbnRyeV9wb2ludHMudHh0IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL2VudHJ5X3BvaW50cy50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWQzZTVmNgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9lbnRyeV9wb2ludHMudHh0CkBAIC0wLDAgKzEsMyBAQAorCisgICAgICAjIC0qLSBFbnRyeSBwb2ludHM6IC0qLQorICAgICAgClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL25vdC16aXAtc2FmZSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9ub3QtemlwLXNhZmUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGIxMzc4OQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy9ub3QtemlwLXNhZmUKQEAgLTAsMCArMSBAQAorCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFuYW5hLTAuNC5lZ2cvRUdHLUlORk8vcmVxdWlyZXMudHh0IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL3JlcXVpcmVzLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MzU0MzA1Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL3JlcXVpcmVzLnR4dApAQCAtMCwwICsxLDYgQEAKKyMgdGhpcyBzaG91bGQgYmUgaWdub3JlZAorCitzdHJhd2JlcnJ5ID49MC41CisKK1tzZWN0aW9uIGlnbm9yZWRdCitmb28gPT0wLjUKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnL0VHRy1JTkZPL3RvcF9sZXZlbC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9iYW5hbmEtMC40LmVnZy9FR0ctSU5GTy90b3BfbGV2ZWwudHh0CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hlZXNlLTIuMC4yLmVnZy1pbmZvIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2NoZWVzZS0yLjAuMi5lZ2ctaW5mbwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yN2NiZTMwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2NoZWVzZS0yLjAuMi5lZ2ctaW5mbwpAQCAtMCwwICsxLDUgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogY2hlZXNlCitWZXJzaW9uOiAyLjAuMgorUHJvdmlkZXMtRGlzdDogdHJ1ZmZsZXMgKDEuMC4yKQorT2Jzb2xldGVzLURpc3Q6IHRydWZmbGVzICghPTEuMiw8PTIuMCkKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9JTlNUQUxMRVIKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS5kaXN0LWluZm8vSU5TVEFMTEVSCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkuZGlzdC1pbmZvL01FVEFEQVRBIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9NRVRBREFUQQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MTg5MjllCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9NRVRBREFUQQpAQCAtMCwwICsxLDkgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogY2hveGllCitWZXJzaW9uOiAyLjAuMC45CitTdW1tYXJ5OiBDaG9jb2xhdGUgd2l0aCBhIGtpY2shCitSZXF1aXJlcy1EaXN0OiB0b3dlbC1zdHVmZiAoMC4xKQorUmVxdWlyZXMtRGlzdDogbnV0CitQcm92aWRlcy1EaXN0OiB0cnVmZmxlcyAoMS4wKQorT2Jzb2xldGVzLURpc3Q6IHRydWZmbGVzICg8PTAuOCw+PTAuNSkKK09ic29sZXRlcy1EaXN0OiB0cnVmZmxlcyAoPD0wLjksPj0wLjYpCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS5kaXN0LWluZm8vUkVDT1JECnNpbWlsYXJpdHkgaW5kZXggMTAwJQpjb3B5IGZyb20gTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkKY29weSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkuZGlzdC1pbmZvL1JFQ09SRApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkuZGlzdC1pbmZvL1JFUVVFU1RFRApzaW1pbGFyaXR5IGluZGV4IDEwMCUKY29weSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CmNvcHkgdG8gTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mby9SRVFVRVNURUQKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS9jaG94aWUvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkvY2hveGllL19faW5pdF9fLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQwYTk2YWYKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkvY2hveGllL19faW5pdF9fLnB5CkBAIC0wLDAgKzEgQEAKKyMgLSotIGNvZGluZzogdXRmLTggLSotCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkvY2hveGllL2Nob2NvbGF0ZS5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS9jaG94aWUvY2hvY29sYXRlLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0MDI3ZjMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY2hveGllLTIuMC4wLjkvY2hveGllL2Nob2NvbGF0ZS5weQpAQCAtMCwwICsxLDEwIEBACisjIC0qLSBjb2Rpbmc6IHV0Zi04IC0qLQorZnJvbSB0b3dlbF9zdHVmZiBpbXBvcnQgVG93ZWwKKworY2xhc3MgQ2hvY29sYXRlKG9iamVjdCk6CisgICAgIiIiQSBwaWVjZSBvZiBjaG9jb2xhdGUuIiIiCisKKyAgICBkZWYgd3JhcF93aXRoX3Rvd2VsKHNlbGYpOgorICAgICAgICB0b3dlbCA9IFRvd2VsKCkKKyAgICAgICAgdG93ZWwud3JhcChzZWxmKQorICAgICAgICByZXR1cm4gdG93ZWwKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS90cnVmZmxlcy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOS90cnVmZmxlcy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNDJiOGVhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45L3RydWZmbGVzLnB5CkBAIC0wLDAgKzEsNSBAQAorIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KK2Zyb20gY2hveGllLmNob2NvbGF0ZSBpbXBvcnQgQ2hvY29sYXRlCisKK2NsYXNzIFRydWZmbGUoQ2hvY29sYXRlKToKKyAgICAiIiJBIHRydWZmbGUuIiIiCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY29jb251dHMtYXN0ZXItMTAuMy5lZ2ctaW5mby9QS0ctSU5GTyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jb2NvbnV0cy1hc3Rlci0xMC4zLmVnZy1pbmZvL1BLRy1JTkZPCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ5OWEwODMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvY29jb251dHMtYXN0ZXItMTAuMy5lZ2ctaW5mby9QS0ctSU5GTwpAQCAtMCwwICsxLDUgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogY29jb251dHMtYXN0ZXIKK1ZlcnNpb246IDEwLjMKK1Byb3ZpZGVzLURpc3Q6IHN0cmF3YmVycnkgKDAuNikKK1Byb3ZpZGVzLURpc3Q6IGJhbmFuYSAoMC40KQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC5kaXN0LWluZm8vSU5TVEFMTEVSCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpjb3B5IGZyb20gTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkKY29weSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC5kaXN0LWluZm8vSU5TVEFMTEVSCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC5kaXN0LWluZm8vTUVUQURBVEEgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC5kaXN0LWluZm8vTUVUQURBVEEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGI5OWY1MgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0LmRpc3QtaW5mby9NRVRBREFUQQpAQCAtMCwwICsxLDUgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogZ3JhbW1hcgorVmVyc2lvbjogMS4wYTQKK1JlcXVpcmVzLURpc3Q6IHRydWZmbGVzICg+PTEuMikKK0F1dGhvcjogU2hlcmxvY2sgSG9sbWVzCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0LmRpc3QtaW5mby9SRUNPUkQKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0LmRpc3QtaW5mby9SRUNPUkQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2dyYW1tYXItMS4wYTQuZGlzdC1pbmZvL1JFUVVFU1RFRApzaW1pbGFyaXR5IGluZGV4IDEwMCUKY29weSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CmNvcHkgdG8gTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2dyYW1tYXItMS4wYTQuZGlzdC1pbmZvL1JFUVVFU1RFRApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2dyYW1tYXItMS4wYTQvZ3JhbW1hci9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0L2dyYW1tYXIvX19pbml0X18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDBhOTZhZgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0L2dyYW1tYXIvX19pbml0X18ucHkKQEAgLTAsMCArMSBAQAorIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0L2dyYW1tYXIvdXRpbHMucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC9ncmFtbWFyL3V0aWxzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY2YmE3OTYKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC9ncmFtbWFyL3V0aWxzLnB5CkBAIC0wLDAgKzEsOCBAQAorIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KK2Zyb20gcmFuZG9tIGltcG9ydCByYW5kaW50CisKK2RlZiBpc192YWxpZF9ncmFtbWFyKHNlbnRlbmNlKToKKyAgICBpZiByYW5kaW50KDAsIDEwKSA8IDI6CisgICAgICAgIHJldHVybiBGYWxzZQorICAgIGVsc2U6CisgICAgICAgIHJldHVybiBUcnVlCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvbnV0LWZ1bmt5dmVyc2lvbi5lZ2ctaW5mbyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9udXQtZnVua3l2ZXJzaW9uLmVnZy1pbmZvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBjNThlYzEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvbnV0LWZ1bmt5dmVyc2lvbi5lZ2ctaW5mbwpAQCAtMCwwICsxLDMgQEAKK01ldGFkYXRhLVZlcnNpb246IDEuMgorTmFtZTogbnV0CitWZXJzaW9uOiBmdW5reXZlcnNpb24KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9zdHJhd2JlcnJ5LTAuNi5lZ2cgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvc3RyYXdiZXJyeS0wLjYuZWdnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkMTYwZTgKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvc3RyYXdiZXJyeS0wLjYuZWdnCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL3Rvd2VsX3N0dWZmLTAuMS5kaXN0LWluZm8vSU5TVEFMTEVSCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpjb3B5IGZyb20gTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkKY29weSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdG93ZWxfc3R1ZmYtMC4xLmRpc3QtaW5mby9JTlNUQUxMRVIKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEuZGlzdC1pbmZvL01FVEFEQVRBIGIvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL3Rvd2VsX3N0dWZmLTAuMS5kaXN0LWluZm8vTUVUQURBVEEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2E0NmQwYQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEuZGlzdC1pbmZvL01FVEFEQVRBCkBAIC0wLDAgKzEsNyBAQAorTWV0YWRhdGEtVmVyc2lvbjogMS4yCitOYW1lOiB0b3dlbC1zdHVmZgorVmVyc2lvbjogMC4xCitQcm92aWRlcy1EaXN0OiB0cnVmZmxlcyAoMS4xLjIpCitQcm92aWRlcy1EaXN0OiB0b3dlbC1zdHVmZiAoMC4xKQorT2Jzb2xldGVzLURpc3Q6IHRydWZmbGVzICghPTAuOCw8MS4wKQorUmVxdWlyZXMtRGlzdDogYmFjb24gKDw9MC4yKQpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdG93ZWxfc3R1ZmYtMC4xLmRpc3QtaW5mby9SRUNPUkQKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEuZGlzdC1pbmZvL1JFQ09SRApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvX19pbml0X18ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdG93ZWxfc3R1ZmYtMC4xLmRpc3QtaW5mby9SRVFVRVNURUQKc2ltaWxhcml0eSBpbmRleCAxMDAlCmNvcHkgZnJvbSBMaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weQpjb3B5IHRvIExpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEuZGlzdC1pbmZvL1JFUVVFU1RFRApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL3Rvd2VsX3N0dWZmLTAuMS90b3dlbF9zdHVmZi9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEvdG93ZWxfc3R1ZmYvX19pbml0X18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTkxZjg5NQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEvdG93ZWxfc3R1ZmYvX19pbml0X18ucHkKQEAgLTAsMCArMSwxOCBAQAorIyAtKi0gY29kaW5nOiB1dGYtOCAtKi0KKworY2xhc3MgVG93ZWwob2JqZWN0KToKKyAgICAiIiJBIHRvd2VsLCB0aGF0IG9uZSBzaG91bGQgbmV2ZXIgYmUgd2l0aG91dC4iIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBjb2xvcj0ndGllLWR5ZScpOgorICAgICAgICBzZWxmLmNvbG9yID0gY29sb3IKKyAgICAgICAgc2VsZi53cmFwcGVkX29iaiA9IE5vbmUKKworICAgIGRlZiB3cmFwKHNlbGYsIG9iaik6CisgICAgICAgICIiIldyYXAgYW4gb2JqZWN0IHVwIGluIG91ciB0b3dlbC4iIiIKKyAgICAgICAgc2VsZi53cmFwcGVkX29iaiA9IG9iagorCisgICAgZGVmIHVud3JhcChzZWxmKToKKyAgICAgICAgIiIiVW53cmFwIHdoYXRldmVyIGlzIGluIG91ciB0b3dlbCBhbmQgcmV0dXJuIHdoYXRldmVyIGl0IGlzLiIiIgorICAgICAgICBvYmogPSBzZWxmLndyYXBwZWRfb2JqCisgICAgICAgIHNlbGYud3JhcHBlZF9vYmogPSBOb25lCisgICAgICAgIHJldHVybiBvYmoKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90cnVmZmxlcy01LjAuZWdnLWluZm8gYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdHJ1ZmZsZXMtNS4wLmVnZy1pbmZvCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ1ZjBjZjgKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdHJ1ZmZsZXMtNS4wLmVnZy1pbmZvCkBAIC0wLDAgKzEsMyBAQAorTWV0YWRhdGEtVmVyc2lvbjogMS4yCitOYW1lOiB0cnVmZmxlcworVmVyc2lvbjogNS4wCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZml4ZXIvX19pbml0X18ucHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CnJlbmFtZSB0byBMaWIvcGFja2FnaW5nL3Rlc3RzL2ZpeGVyL19faW5pdF9fLnB5CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL2ZpeGVyL2ZpeF9pZGlvbXMucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL2ZpeGVyL2ZpeF9pZGlvbXMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjRmNWVhMAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvZml4ZXIvZml4X2lkaW9tcy5weQpAQCAtMCwwICsxLDEzNCBAQAorIiIiQWRqdXN0IHNvbWUgb2xkIFB5dGhvbiAyIGlkaW9tcyB0byB0aGVpciBtb2Rlcm4gY291bnRlcnBhcnRzLgorCisqIENoYW5nZSBzb21lIHR5cGUgY29tcGFyaXNvbnMgdG8gaXNpbnN0YW5jZSgpIGNhbGxzOgorICAgIHR5cGUoeCkgPT0gVCAtPiBpc2luc3RhbmNlKHgsIFQpCisgICAgdHlwZSh4KSBpcyBUIC0+IGlzaW5zdGFuY2UoeCwgVCkKKyAgICB0eXBlKHgpICE9IFQgLT4gbm90IGlzaW5zdGFuY2UoeCwgVCkKKyAgICB0eXBlKHgpIGlzIG5vdCBUIC0+IG5vdCBpc2luc3RhbmNlKHgsIFQpCisKKyogQ2hhbmdlICJ3aGlsZSAxOiIgaW50byAid2hpbGUgVHJ1ZToiLgorCisqIENoYW5nZSBib3RoCisKKyAgICB2ID0gbGlzdChFWFBSKQorICAgIHYuc29ydCgpCisgICAgZm9vKHYpCisKK2FuZCB0aGUgbW9yZSBnZW5lcmFsCisKKyAgICB2ID0gRVhQUgorICAgIHYuc29ydCgpCisgICAgZm9vKHYpCisKK2ludG8KKworICAgIHYgPSBzb3J0ZWQoRVhQUikKKyAgICBmb28odikKKyIiIgorIyBBdXRob3I6IEphY3F1ZXMgRnJlY2hldCwgQ29sbGluIFdpbnRlcgorCisjIExvY2FsIGltcG9ydHMKK2Zyb20gbGliMnRvMyBpbXBvcnQgZml4ZXJfYmFzZQorZnJvbSBsaWIydG8zLmZpeGVyX3V0aWwgaW1wb3J0IENhbGwsIENvbW1hLCBOYW1lLCBOb2RlLCBzeW1zCisKK0NNUCA9ICIobj0nIT0nIHwgJz09JyB8ICdpcycgfCBuPWNvbXBfb3A8ICdpcycgJ25vdCcgPikiCitUWVBFID0gInBvd2VyPCAndHlwZScgdHJhaWxlcjwgJygnIHg9YW55ICcpJyA+ID4iCisKK2NsYXNzIEZpeElkaW9tcyhmaXhlcl9iYXNlLkJhc2VGaXgpOgorCisgICAgZXhwbGljaXQgPSBGYWxzZSAjIFRoZSB1c2VyIG11c3QgYXNrIGZvciB0aGlzIGZpeGVyCisKKyAgICBQQVRURVJOID0gciIiIgorICAgICAgICBpc2luc3RhbmNlPWNvbXBhcmlzb248ICVzICVzIFQ9YW55ID4KKyAgICAgICAgfAorICAgICAgICBpc2luc3RhbmNlPWNvbXBhcmlzb248IFQ9YW55ICVzICVzID4KKyAgICAgICAgfAorICAgICAgICB3aGlsZV9zdG10PCAnd2hpbGUnIHdoaWxlPScxJyAnOicgYW55KyA+CisgICAgICAgIHwKKyAgICAgICAgc29ydGVkPWFueTwKKyAgICAgICAgICAgIGFueSoKKyAgICAgICAgICAgIHNpbXBsZV9zdG10PAorICAgICAgICAgICAgICBleHByX3N0bXQ8IGlkMT1hbnkgJz0nCisgICAgICAgICAgICAgICAgICAgICAgICAgcG93ZXI8IGxpc3Q9J2xpc3QnIHRyYWlsZXI8ICcoJyAobm90IGFyZ2xpc3Q8YW55Kz4pIGFueSAnKScgPiA+CisgICAgICAgICAgICAgID4KKyAgICAgICAgICAgICAgJ1xuJworICAgICAgICAgICAgPgorICAgICAgICAgICAgc29ydD0KKyAgICAgICAgICAgIHNpbXBsZV9zdG10PAorICAgICAgICAgICAgICBwb3dlcjwgaWQyPWFueQorICAgICAgICAgICAgICAgICAgICAgdHJhaWxlcjwgJy4nICdzb3J0JyA+IHRyYWlsZXI8ICcoJyAnKScgPgorICAgICAgICAgICAgICA+CisgICAgICAgICAgICAgICdcbicKKyAgICAgICAgICAgID4KKyAgICAgICAgICAgIG5leHQ9YW55KgorICAgICAgICA+CisgICAgICAgIHwKKyAgICAgICAgc29ydGVkPWFueTwKKyAgICAgICAgICAgIGFueSoKKyAgICAgICAgICAgIHNpbXBsZV9zdG10PCBleHByX3N0bXQ8IGlkMT1hbnkgJz0nIGV4cHI9YW55ID4gJ1xuJyA+CisgICAgICAgICAgICBzb3J0PQorICAgICAgICAgICAgc2ltcGxlX3N0bXQ8CisgICAgICAgICAgICAgIHBvd2VyPCBpZDI9YW55CisgICAgICAgICAgICAgICAgICAgICB0cmFpbGVyPCAnLicgJ3NvcnQnID4gdHJhaWxlcjwgJygnICcpJyA+CisgICAgICAgICAgICAgID4KKyAgICAgICAgICAgICAgJ1xuJworICAgICAgICAgICAgPgorICAgICAgICAgICAgbmV4dD1hbnkqCisgICAgICAgID4KKyAgICAiIiIgJSAoVFlQRSwgQ01QLCBDTVAsIFRZUEUpCisKKyAgICBkZWYgbWF0Y2goc2VsZiwgbm9kZSk6CisgICAgICAgIHIgPSBzdXBlcihGaXhJZGlvbXMsIHNlbGYpLm1hdGNoKG5vZGUpCisgICAgICAgICMgSWYgd2UndmUgbWF0Y2hlZCBvbmUgb2YgdGhlIHNvcnQvc29ydGVkIHN1YnBhdHRlcm5zIGFib3ZlLCB3ZQorICAgICAgICAjIHdhbnQgdG8gcmVqZWN0IG1hdGNoZXMgd2hlcmUgdGhlIGluaXRpYWwgYXNzaWdubWVudCBhbmQgdGhlCisgICAgICAgICMgc3Vic2VxdWVudCAuc29ydCgpIGNhbGwgaW52b2x2ZSBkaWZmZXJlbnQgaWRlbnRpZmllcnMuCisgICAgICAgIGlmIHIgYW5kICJzb3J0ZWQiIGluIHI6CisgICAgICAgICAgICBpZiByWyJpZDEiXSA9PSByWyJpZDIiXToKKyAgICAgICAgICAgICAgICByZXR1cm4gcgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgcmV0dXJuIHIKKworICAgIGRlZiB0cmFuc2Zvcm0oc2VsZiwgbm9kZSwgcmVzdWx0cyk6CisgICAgICAgIGlmICJpc2luc3RhbmNlIiBpbiByZXN1bHRzOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYudHJhbnNmb3JtX2lzaW5zdGFuY2Uobm9kZSwgcmVzdWx0cykKKyAgICAgICAgZWxpZiAid2hpbGUiIGluIHJlc3VsdHM6CisgICAgICAgICAgICByZXR1cm4gc2VsZi50cmFuc2Zvcm1fd2hpbGUobm9kZSwgcmVzdWx0cykKKyAgICAgICAgZWxpZiAic29ydGVkIiBpbiByZXN1bHRzOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYudHJhbnNmb3JtX3NvcnQobm9kZSwgcmVzdWx0cykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigiSW52YWxpZCBtYXRjaCIpCisKKyAgICBkZWYgdHJhbnNmb3JtX2lzaW5zdGFuY2Uoc2VsZiwgbm9kZSwgcmVzdWx0cyk6CisgICAgICAgIHggPSByZXN1bHRzWyJ4Il0uY2xvbmUoKSAjIFRoZSB0aGluZyBpbnNpZGUgb2YgdHlwZSgpCisgICAgICAgIFQgPSByZXN1bHRzWyJUIl0uY2xvbmUoKSAjIFRoZSB0eXBlIGJlaW5nIGNvbXBhcmVkIGFnYWluc3QKKyAgICAgICAgeC5wcmVmaXggPSAiIgorICAgICAgICBULnByZWZpeCA9ICIgIgorICAgICAgICB0ZXN0ID0gQ2FsbChOYW1lKCJpc2luc3RhbmNlIiksIFt4LCBDb21tYSgpLCBUXSkKKyAgICAgICAgaWYgIm4iIGluIHJlc3VsdHM6CisgICAgICAgICAgICB0ZXN0LnByZWZpeCA9ICIgIgorICAgICAgICAgICAgdGVzdCA9IE5vZGUoc3ltcy5ub3RfdGVzdCwgW05hbWUoIm5vdCIpLCB0ZXN0XSkKKyAgICAgICAgdGVzdC5wcmVmaXggPSBub2RlLnByZWZpeAorICAgICAgICByZXR1cm4gdGVzdAorCisgICAgZGVmIHRyYW5zZm9ybV93aGlsZShzZWxmLCBub2RlLCByZXN1bHRzKToKKyAgICAgICAgb25lID0gcmVzdWx0c1sid2hpbGUiXQorICAgICAgICBvbmUucmVwbGFjZShOYW1lKCJUcnVlIiwgcHJlZml4PW9uZS5wcmVmaXgpKQorCisgICAgZGVmIHRyYW5zZm9ybV9zb3J0KHNlbGYsIG5vZGUsIHJlc3VsdHMpOgorICAgICAgICBzb3J0X3N0bXQgPSByZXN1bHRzWyJzb3J0Il0KKyAgICAgICAgbmV4dF9zdG10ID0gcmVzdWx0c1sibmV4dCJdCisgICAgICAgIGxpc3RfY2FsbCA9IHJlc3VsdHMuZ2V0KCJsaXN0IikKKyAgICAgICAgc2ltcGxlX2V4cHIgPSByZXN1bHRzLmdldCgiZXhwciIpCisKKyAgICAgICAgaWYgbGlzdF9jYWxsOgorICAgICAgICAgICAgbGlzdF9jYWxsLnJlcGxhY2UoTmFtZSgic29ydGVkIiwgcHJlZml4PWxpc3RfY2FsbC5wcmVmaXgpKQorICAgICAgICBlbGlmIHNpbXBsZV9leHByOgorICAgICAgICAgICAgbmV3ID0gc2ltcGxlX2V4cHIuY2xvbmUoKQorICAgICAgICAgICAgbmV3LnByZWZpeCA9ICIiCisgICAgICAgICAgICBzaW1wbGVfZXhwci5yZXBsYWNlKENhbGwoTmFtZSgic29ydGVkIiksIFtuZXddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWZpeD1zaW1wbGVfZXhwci5wcmVmaXgpKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJzaG91bGQgbm90IGhhdmUgcmVhY2hlZCBoZXJlIikKKyAgICAgICAgc29ydF9zdG10LnJlbW92ZSgpCisgICAgICAgIGlmIG5leHRfc3RtdDoKKyAgICAgICAgICAgIG5leHRfc3RtdFswXS5wcmVmaXggPSBzb3J0X3N0bXQuX3ByZWZpeApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpX3NlcnZlci5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaV9zZXJ2ZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTNjMzBjZgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaV9zZXJ2ZXIucHkKQEAgLTAsMCArMSw0NDkgQEAKKyIiIk1vY2sgUHlQSSBTZXJ2ZXIgaW1wbGVtZW50YXRpb24sIHRvIHVzZSBpbiB0ZXN0cy4KKworVGhpcyBtb2R1bGUgYWxzbyBwcm92aWRlcyBhIHNpbXBsZSB0ZXN0IGNhc2UgdG8gZXh0ZW5kIGlmIHlvdSBuZWVkIHRvIHVzZQordGhlIFB5UElTZXJ2ZXIgYWxsIGFsb25nIHlvdXIgdGVzdCBjYXNlLiBCZSBzdXJlIHRvIHJlYWQgdGhlIGRvY3VtZW50YXRpb24KK2JlZm9yZSBhbnkgdXNlLgorCitYWFggVE9ETzoKKworVGhlIG1vY2sgc2VydmVyIGNhbiBoYW5kbGUgc2ltcGxlIEhUVFAgcmVxdWVzdCAodG8gc2ltdWxhdGUgYSBzaW1wbGUgaW5kZXgpIG9yCitYTUxSUEMgcmVxdWVzdHMsIG92ZXIgSFRUUC4gQm90aCBkb2VzIG5vdCBoYXZlIHRoZSBzYW1lIGludGVyZ2ZhY2UgdG8gZGVhbAord2l0aCwgYW5kIEkgdGhpbmsgaXQncyBhIHBhaW4uCisKK0EgZ29vZCBpZGVhIGNvdWxkIGJlIHRvIHJlLXRoaW5rIGEgYml0IHRoZSB3YXkgZHN0cmlidXRpb25zIGFyZSBoYW5kbGVkIGluIHRoZQorbW9jayBzZXJ2ZXIuIEFzIGl0IHNob3VsZCByZXR1cm4gbWFsZm9ybWVkIEhUTUwgcGFnZXMsIHdlIG5lZWQgdG8ga2VlcCB0aGUKK3N0YXRpYyBiZWhhdmlvci4KKworSSB0aGluayBvZiBzb21ldGhpbmcgbGlrZSB0aGF0OgorCisgICAgPj4+IHNlcnZlciA9IFB5UElNb2NrU2VydmVyKCkKKyAgICA+Pj4gc2VydmVyLnN0YXJ0SFRUUCgpCisgICAgPj4+IHNlcnZlci5zdGFydFhNTFJQQygpCisKK1RoZW4sIHRoZSBzZXJ2ZXIgbXVzdCBoYXZlIG9ubHkgb25lIHBvcnQgdG8gcmVseSBvbiwgZWcuCisKKyAgICA+Pj4gc2VydmVyLmZ1bGxhZGRyZXNzKCkKKyAgICAiaHR0cDovL2lwOnBvcnQvIgorCitJdCBjb3VsZCBiZSBzaW1wbGUgdG8gaGF2ZSBvbmUgSFRUUCBzZXJ2ZXIsIHJlbGF5aW5nIHRoZSByZXF1ZXN0cyB0byB0aGUgdHdvCitpbXBsZW1lbnRhdGlvbnMgKHN0YXRpYyBIVFRQIGFuZCBYTUxSUEMgb3ZlciBIVFRQKS4KKyIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBxdWV1ZQoraW1wb3J0IHNlbGVjdAoraW1wb3J0IHRocmVhZGluZworZnJvbSBmdW5jdG9vbHMgaW1wb3J0IHdyYXBzCitmcm9tIGh0dHAuc2VydmVyIGltcG9ydCBIVFRQU2VydmVyLCBTaW1wbGVIVFRQUmVxdWVzdEhhbmRsZXIKK2Zyb20geG1scnBjLnNlcnZlciBpbXBvcnQgU2ltcGxlWE1MUlBDU2VydmVyCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdAorCisKK1BZUElfREVGQVVMVF9TVEFUSUNfUEFUSCA9IG9zLnBhdGguam9pbigKKyAgICBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKF9fZmlsZV9fKSksICdweXBpc2VydmVyJykKKworCitkZWYgdXNlX3htbHJwY19zZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpOgorICAgIHNlcnZlcl9rd2FyZ3NbJ3NlcnZlX3htbHJwYyddID0gVHJ1ZQorICAgIHJldHVybiB1c2VfcHlwaV9zZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpCisKKworZGVmIHVzZV9odHRwX3NlcnZlcigqc2VydmVyX2FyZ3MsICoqc2VydmVyX2t3YXJncyk6CisgICAgc2VydmVyX2t3YXJnc1snc2VydmVfeG1scnBjJ10gPSBGYWxzZQorICAgIHJldHVybiB1c2VfcHlwaV9zZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpCisKKworZGVmIHVzZV9weXBpX3NlcnZlcigqc2VydmVyX2FyZ3MsICoqc2VydmVyX2t3YXJncyk6CisgICAgIiIiRGVjb3JhdG9yIHRvIG1ha2UgdXNlIG9mIHRoZSBQeVBJU2VydmVyIGZvciB0ZXN0IG1ldGhvZHMsCisgICAganVzdCB3aGVuIG5lZWRlZCwgYW5kIG5vdCBmb3IgdGhlIGVudGlyZSBkdXJhdGlvbiBvZiB0aGUgdGVzdGNhc2UuCisgICAgIiIiCisgICAgZGVmIHdyYXBwZXIoZnVuYyk6CisgICAgICAgIEB3cmFwcyhmdW5jKQorICAgICAgICBkZWYgd3JhcHBlZCgqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAgICAgc2VydmVyID0gUHlQSVNlcnZlcigqc2VydmVyX2FyZ3MsICoqc2VydmVyX2t3YXJncykKKyAgICAgICAgICAgIHNlcnZlci5zdGFydCgpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgZnVuYyhzZXJ2ZXI9c2VydmVyLCAqYXJncywgKiprd2FyZ3MpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHNlcnZlci5zdG9wKCkKKyAgICAgICAgcmV0dXJuIHdyYXBwZWQKKyAgICByZXR1cm4gd3JhcHBlcgorCisKK2NsYXNzIFB5UElTZXJ2ZXJUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFB5UElTZXJ2ZXJUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLnB5cGkgPSBQeVBJU2VydmVyKCkKKyAgICAgICAgc2VsZi5weXBpLnN0YXJ0KCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNlbGYucHlwaS5zdG9wKQorCisKK2NsYXNzIFB5UElTZXJ2ZXIodGhyZWFkaW5nLlRocmVhZCk6CisgICAgIiIiUHlQSSBNb2NrZWQgc2VydmVyLgorICAgIFByb3ZpZGVzIGEgbW9ja2VkIHZlcnNpb24gb2YgdGhlIFB5UEkgQVBJJ3MsIHRvIGVhc2UgdGVzdHMuCisKKyAgICBTdXBwb3J0IHNlcnZpbmcgc3RhdGljIGNvbnRlbnQgYW5kIHNlcnZpbmcgcHJldmlvdXNseSBnaXZlbiB0ZXh0LgorICAgICIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHRlc3Rfc3RhdGljX3BhdGg9Tm9uZSwKKyAgICAgICAgICAgICAgICAgc3RhdGljX2ZpbGVzeXN0ZW1fcGF0aHM9Tm9uZSwKKyAgICAgICAgICAgICAgICAgc3RhdGljX3VyaV9wYXRocz1bInNpbXBsZSIsICJwYWNrYWdlcyJdLCBzZXJ2ZV94bWxycGM9RmFsc2UpOgorICAgICAgICAiIiJJbml0aWFsaXplIHRoZSBzZXJ2ZXIuCisKKyAgICAgICAgRGVmYXVsdCBiZWhhdmlvciBpcyB0byBzdGFydCB0aGUgSFRUUCBzZXJ2ZXIuIFlvdSBjYW4gZWl0aGVyIHN0YXJ0IHRoZQorICAgICAgICB4bWxycGMgc2VydmVyIGJ5IHNldHRpbmcgeG1scnBjIHRvIFRydWUuIENhdXRpb246IE9ubHkgb25lIHNlcnZlciB3aWxsCisgICAgICAgIGJlIHN0YXJ0ZWQuCisKKyAgICAgICAgc3RhdGljX3VyaV9wYXRocyBhbmQgc3RhdGljX2Jhc2VfcGF0aCBhcmUgcGFyYW1ldGVycyB1c2VkIHRvIHByb3ZpZGVzCisgICAgICAgIHJlc3BlY3RpdmVseSB0aGUgaHR0cF9wYXRocyB0byBzZXJ2ZSBzdGF0aWNhbGx5LCBhbmQgd2hlcmUgdG8gZmluZCB0aGUKKyAgICAgICAgbWF0Y2hpbmcgZmlsZXMgb24gdGhlIGZpbGVzeXN0ZW0uCisgICAgICAgICIiIgorICAgICAgICAjIHdlIHdhbnQgdG8gbGF1bmNoIHRoZSBzZXJ2ZXIgaW4gYSBuZXcgZGVkaWNhdGVkIHRocmVhZCwgdG8gbm90IGZyZWV6ZQorICAgICAgICAjIHRlc3RzLgorICAgICAgICBzdXBlcihQeVBJU2VydmVyLCBzZWxmKS5fX2luaXRfXygpCisgICAgICAgIHNlbGYuX3J1biA9IFRydWUKKyAgICAgICAgc2VsZi5fc2VydmVfeG1scnBjID0gc2VydmVfeG1scnBjCisgICAgICAgIGlmIHN0YXRpY19maWxlc3lzdGVtX3BhdGhzIGlzIE5vbmU6CisgICAgICAgICAgICBzdGF0aWNfZmlsZXN5c3RlbV9wYXRocyA9IFsiZGVmYXVsdCJdCisKKyAgICAgICAgI1RPRE8gYWxsb3cgdG8gc2VydmUgWE1MUlBDIGFuZCBIVFRQIHN0YXRpYyBmaWxlcyBhdCB0aGUgc2FtZSB0aW1lLgorICAgICAgICBpZiBub3Qgc2VsZi5fc2VydmVfeG1scnBjOgorICAgICAgICAgICAgc2VsZi5zZXJ2ZXIgPSBIVFRQU2VydmVyKCgnMTI3LjAuMC4xJywgMCksIFB5UElSZXF1ZXN0SGFuZGxlcikKKyAgICAgICAgICAgIHNlbGYuc2VydmVyLlJlcXVlc3RIYW5kbGVyQ2xhc3MucHlwaV9zZXJ2ZXIgPSBzZWxmCisKKyAgICAgICAgICAgIHNlbGYucmVxdWVzdF9xdWV1ZSA9IHF1ZXVlLlF1ZXVlKCkKKyAgICAgICAgICAgIHNlbGYuX3JlcXVlc3RzID0gW10KKyAgICAgICAgICAgIHNlbGYuZGVmYXVsdF9yZXNwb25zZV9zdGF0dXMgPSA0MDQKKyAgICAgICAgICAgIHNlbGYuZGVmYXVsdF9yZXNwb25zZV9oZWFkZXJzID0gWygnQ29udGVudC10eXBlJywgJ3RleHQvcGxhaW4nKV0KKyAgICAgICAgICAgIHNlbGYuZGVmYXVsdF9yZXNwb25zZV9kYXRhID0gIlRoZSBwYWdlIGRvZXMgbm90IGV4aXN0cyIKKworICAgICAgICAgICAgIyBpbml0aWFsaXplIHN0YXRpYyBwYXRocyAvIGZpbGVzeXN0ZW1zCisgICAgICAgICAgICBzZWxmLnN0YXRpY191cmlfcGF0aHMgPSBzdGF0aWNfdXJpX3BhdGhzCisKKyAgICAgICAgICAgICMgYXBwZW5kIHRoZSBzdGF0aWMgcGF0aHMgZGVmaW5lZCBsb2NhbGx5CisgICAgICAgICAgICBpZiB0ZXN0X3N0YXRpY19wYXRoIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHN0YXRpY19maWxlc3lzdGVtX3BhdGhzLmFwcGVuZCh0ZXN0X3N0YXRpY19wYXRoKQorICAgICAgICAgICAgc2VsZi5zdGF0aWNfZmlsZXN5c3RlbV9wYXRocyA9IFsKKyAgICAgICAgICAgICAgICBQWVBJX0RFRkFVTFRfU1RBVElDX1BBVEggKyAiLyIgKyBwYXRoCisgICAgICAgICAgICAgICAgZm9yIHBhdGggaW4gc3RhdGljX2ZpbGVzeXN0ZW1fcGF0aHNdCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIFhNTFJQQyBzZXJ2ZXIKKyAgICAgICAgICAgIHNlbGYuc2VydmVyID0gUHlQSVhNTFJQQ1NlcnZlcigoJzEyNy4wLjAuMScsIDApKQorICAgICAgICAgICAgc2VsZi54bWxycGMgPSBYTUxSUENNb2NrSW5kZXgoKQorICAgICAgICAgICAgIyByZWdpc3RlciB0aGUgeG1scnBjIG1ldGhvZHMKKyAgICAgICAgICAgIHNlbGYuc2VydmVyLnJlZ2lzdGVyX2ludHJvc3BlY3Rpb25fZnVuY3Rpb25zKCkKKyAgICAgICAgICAgIHNlbGYuc2VydmVyLnJlZ2lzdGVyX2luc3RhbmNlKHNlbGYueG1scnBjKQorCisgICAgICAgIHNlbGYuYWRkcmVzcyA9ICgnMTI3LjAuMC4xJywgc2VsZi5zZXJ2ZXIuc2VydmVyX3BvcnQpCisgICAgICAgICMgdG8gbm90IGhhdmUgdW53YW50ZWQgb3V0cHV0cy4KKyAgICAgICAgc2VsZi5zZXJ2ZXIuUmVxdWVzdEhhbmRsZXJDbGFzcy5sb2dfcmVxdWVzdCA9IGxhbWJkYSAqXzogTm9uZQorCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgIyBsb29wIGJlY2F1c2Ugd2UgY2FuJ3Qgc3RvcCBpdCBvdGhlcndpc2UsIGZvciBweXRob24gPCAyLjYKKyAgICAgICAgd2hpbGUgc2VsZi5fcnVuOgorICAgICAgICAgICAgciwgdywgZSA9IHNlbGVjdC5zZWxlY3QoW3NlbGYuc2VydmVyXSwgW10sIFtdLCAwLjUpCisgICAgICAgICAgICBpZiByOgorICAgICAgICAgICAgICAgIHNlbGYuc2VydmVyLmhhbmRsZV9yZXF1ZXN0KCkKKworICAgIGRlZiBzdG9wKHNlbGYpOgorICAgICAgICAiIiJzZWxmIHNodXRkb3duIGlzIG5vdCBzdXBwb3J0ZWQgZm9yIHB5dGhvbiA8IDIuNiIiIgorICAgICAgICBzZWxmLl9ydW4gPSBGYWxzZQorICAgICAgICBpZiBzZWxmLmlzX2FsaXZlKCk6CisgICAgICAgICAgICBzZWxmLmpvaW4oKQorICAgICAgICBzZWxmLnNlcnZlci5zZXJ2ZXJfY2xvc2UoKQorCisgICAgZGVmIGdldF9uZXh0X3Jlc3BvbnNlKHNlbGYpOgorICAgICAgICByZXR1cm4gKHNlbGYuZGVmYXVsdF9yZXNwb25zZV9zdGF0dXMsCisgICAgICAgICAgICAgICAgc2VsZi5kZWZhdWx0X3Jlc3BvbnNlX2hlYWRlcnMsCisgICAgICAgICAgICAgICAgc2VsZi5kZWZhdWx0X3Jlc3BvbnNlX2RhdGEpCisKKyAgICBAcHJvcGVydHkKKyAgICBkZWYgcmVxdWVzdHMoc2VsZik6CisgICAgICAgICIiIlVzZSB0aGlzIHByb3BlcnR5IHRvIGdldCBhbGwgcmVxdWVzdHMgdGhhdCBoYXZlIGJlZW4gbWFkZQorICAgICAgICB0byB0aGUgc2VydmVyCisgICAgICAgICIiIgorICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuX3JlcXVlc3RzLmFwcGVuZChzZWxmLnJlcXVlc3RfcXVldWUuZ2V0X25vd2FpdCgpKQorICAgICAgICAgICAgZXhjZXB0IHF1ZXVlLkVtcHR5OgorICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgIHJldHVybiBzZWxmLl9yZXF1ZXN0cworCisgICAgQHByb3BlcnR5CisgICAgZGVmIGZ1bGxfYWRkcmVzcyhzZWxmKToKKyAgICAgICAgcmV0dXJuICJodHRwOi8vJXM6JXMiICUgc2VsZi5hZGRyZXNzCisKKworY2xhc3MgUHlQSVJlcXVlc3RIYW5kbGVyKFNpbXBsZUhUVFBSZXF1ZXN0SGFuZGxlcik6CisgICAgIyB3ZSBuZWVkIHRvIGFjY2VzcyB0aGUgcHlwaSBzZXJ2ZXIgd2hpbGUgc2VydmluZyB0aGUgY29udGVudAorICAgIHB5cGlfc2VydmVyID0gTm9uZQorCisgICAgZGVmIHNlcnZlX3JlcXVlc3Qoc2VsZik6CisgICAgICAgICIiIlNlcnZlIHRoZSBjb250ZW50LgorCisgICAgICAgIEFsc28gcmVjb3JkIHRoZSByZXF1ZXN0cyB0byBiZSBhY2Nlc3NlZCBsYXRlci4gSWYgdHJ5aW5nIHRvIGFjY2VzcyBhbgorICAgICAgICB1cmwgbWF0Y2hpbmcgYSBzdGF0aWMgdXJpLCBzZXJ2ZSBzdGF0aWMgY29udGVudCwgb3RoZXJ3aXNlIHNlcnZlCisgICAgICAgIHdoYXQgaXMgcHJvdmlkZWQgYnkgdGhlIGBnZXRfbmV4dF9yZXNwb25zZWAgbWV0aG9kLgorCisgICAgICAgIElmIG5vdGhpbmcgaXMgZGVmaW5lZCB0aGVyZSwgcmV0dXJuIGEgNDA0IGhlYWRlci4KKyAgICAgICAgIiIiCisgICAgICAgICMgcmVjb3JkIHRoZSByZXF1ZXN0LiBSZWFkIHRoZSBpbnB1dCBvbmx5IG9uIFBVVCBvciBQT1NUIHJlcXVlc3RzCisgICAgICAgIGlmIHNlbGYuY29tbWFuZCBpbiAoIlBVVCIsICJQT1NUIik6CisgICAgICAgICAgICBpZiAnY29udGVudC1sZW5ndGgnIGluIHNlbGYuaGVhZGVyczoKKyAgICAgICAgICAgICAgICByZXF1ZXN0X2RhdGEgPSBzZWxmLnJmaWxlLnJlYWQoCisgICAgICAgICAgICAgICAgICAgIGludChzZWxmLmhlYWRlcnNbJ2NvbnRlbnQtbGVuZ3RoJ10pKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByZXF1ZXN0X2RhdGEgPSBzZWxmLnJmaWxlLnJlYWQoKQorCisgICAgICAgIGVsaWYgc2VsZi5jb21tYW5kIGluICgiR0VUIiwgIkRFTEVURSIpOgorICAgICAgICAgICAgcmVxdWVzdF9kYXRhID0gJycKKworICAgICAgICBzZWxmLnB5cGlfc2VydmVyLnJlcXVlc3RfcXVldWUucHV0KChzZWxmLCByZXF1ZXN0X2RhdGEpKQorCisgICAgICAgICMgc2VydmUgdGhlIGNvbnRlbnQgZnJvbSBsb2NhbCBkaXNjIGlmIHdlIHJlcXVlc3QgYW4gVVJMIGJlZ2lubmluZworICAgICAgICAjIGJ5IGEgcGF0dGVybiBkZWZpbmVkIGluIGBzdGF0aWNfcGF0aHNgCisgICAgICAgIHVybF9wYXJ0cyA9IHNlbGYucGF0aC5zcGxpdCgiLyIpCisgICAgICAgIGlmIChsZW4odXJsX3BhcnRzKSA+IDEgYW5kCisgICAgICAgICAgICAgICAgdXJsX3BhcnRzWzFdIGluIHNlbGYucHlwaV9zZXJ2ZXIuc3RhdGljX3VyaV9wYXRocyk6CisgICAgICAgICAgICBkYXRhID0gTm9uZQorICAgICAgICAgICAgIyBhbHdheXMgdGFrZSB0aGUgbGFzdCBmaXJzdC4KKyAgICAgICAgICAgIGZzX3BhdGhzID0gW10KKyAgICAgICAgICAgIGZzX3BhdGhzLmV4dGVuZChzZWxmLnB5cGlfc2VydmVyLnN0YXRpY19maWxlc3lzdGVtX3BhdGhzKQorICAgICAgICAgICAgZnNfcGF0aHMucmV2ZXJzZSgpCisgICAgICAgICAgICByZWxhdGl2ZV9wYXRoID0gc2VsZi5wYXRoCisgICAgICAgICAgICBmb3IgZnNfcGF0aCBpbiBmc19wYXRoczoKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGlmIHNlbGYucGF0aC5lbmRzd2l0aCgiLyIpOgorICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpdmVfcGF0aCArPSAiaW5kZXguaHRtbCIKKworICAgICAgICAgICAgICAgICAgICBpZiByZWxhdGl2ZV9wYXRoLmVuZHN3aXRoKCcudGFyLmd6Jyk6CisgICAgICAgICAgICAgICAgICAgICAgICB3aXRoIG9wZW4oZnNfcGF0aCArIHJlbGF0aXZlX3BhdGgsICdyYicpIGFzIGZpbGU6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YSA9IGZpbGUucmVhZCgpCisgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzID0gWygnQ29udGVudC10eXBlJywgJ2FwcGxpY2F0aW9uL3gtZ3RhcicpXQorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgd2l0aCBvcGVuKGZzX3BhdGggKyByZWxhdGl2ZV9wYXRoKSBhcyBmaWxlOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBmaWxlLnJlYWQoKS5lbmNvZGUoKQorICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVycyA9IFsoJ0NvbnRlbnQtdHlwZScsICd0ZXh0L2h0bWwnKV0KKworICAgICAgICAgICAgICAgICAgICBoZWFkZXJzLmFwcGVuZCgoJ0NvbnRlbnQtTGVuZ3RoJywgbGVuKGRhdGEpKSkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5tYWtlX3Jlc3BvbnNlKGRhdGEsIGhlYWRlcnM9aGVhZGVycykKKworICAgICAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yOgorICAgICAgICAgICAgICAgICAgICBwYXNzCisKKyAgICAgICAgICAgIGlmIGRhdGEgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBzZWxmLm1ha2VfcmVzcG9uc2UoIk5vdCBmb3VuZCIsIDQwNCkKKworICAgICAgICAjIG90aGVyd2lzZSBzZXJ2ZSB0aGUgY29udGVudCBmcm9tIGdldF9uZXh0X3Jlc3BvbnNlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIHNlbmQgYmFjayBhIHJlc3BvbnNlCisgICAgICAgICAgICBzdGF0dXMsIGhlYWRlcnMsIGRhdGEgPSBzZWxmLnB5cGlfc2VydmVyLmdldF9uZXh0X3Jlc3BvbnNlKCkKKyAgICAgICAgICAgIHNlbGYubWFrZV9yZXNwb25zZShkYXRhLCBzdGF0dXMsIGhlYWRlcnMpCisKKyAgICBkb19QT1NUID0gZG9fR0VUID0gZG9fREVMRVRFID0gZG9fUFVUID0gc2VydmVfcmVxdWVzdAorCisgICAgZGVmIG1ha2VfcmVzcG9uc2Uoc2VsZiwgZGF0YSwgc3RhdHVzPTIwMCwKKyAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzPVsoJ0NvbnRlbnQtdHlwZScsICd0ZXh0L2h0bWwnKV0pOgorICAgICAgICAiIiJTZW5kIHRoZSByZXNwb25zZSB0byB0aGUgSFRUUCBjbGllbnQiIiIKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uoc3RhdHVzLCBpbnQpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHN0YXR1cyA9IGludChzdGF0dXMpCisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgICAgICAjIHdlIHByb2JhYmx5IGdvdCBzb21ldGhpbmcgbGlrZSBZWVkgQ29kZW5hbWUuCisgICAgICAgICAgICAgICAgIyBKdXN0IGdldCB0aGUgZmlyc3QgMyBkaWdpdHMKKyAgICAgICAgICAgICAgICBzdGF0dXMgPSBpbnQoc3RhdHVzWzozXSkKKworICAgICAgICBzZWxmLnNlbmRfcmVzcG9uc2Uoc3RhdHVzKQorICAgICAgICBmb3IgaGVhZGVyLCB2YWx1ZSBpbiBoZWFkZXJzOgorICAgICAgICAgICAgc2VsZi5zZW5kX2hlYWRlcihoZWFkZXIsIHZhbHVlKQorICAgICAgICBzZWxmLmVuZF9oZWFkZXJzKCkKKworICAgICAgICBpZiBpc2luc3RhbmNlKGRhdGEsIHN0cik6CisgICAgICAgICAgICBkYXRhID0gZGF0YS5lbmNvZGUoJ3V0Zi04JykKKworICAgICAgICBzZWxmLndmaWxlLndyaXRlKGRhdGEpCisKKworY2xhc3MgUHlQSVhNTFJQQ1NlcnZlcihTaW1wbGVYTUxSUENTZXJ2ZXIpOgorICAgIGRlZiBzZXJ2ZXJfYmluZChzZWxmKToKKyAgICAgICAgIiIiT3ZlcnJpZGUgc2VydmVyX2JpbmQgdG8gc3RvcmUgdGhlIHNlcnZlciBuYW1lLiIiIgorICAgICAgICBzdXBlcihQeVBJWE1MUlBDU2VydmVyLCBzZWxmKS5zZXJ2ZXJfYmluZCgpCisgICAgICAgIGhvc3QsIHBvcnQgPSBzZWxmLnNvY2tldC5nZXRzb2NrbmFtZSgpWzoyXQorICAgICAgICBzZWxmLnNlcnZlcl9wb3J0ID0gcG9ydAorCisKK2NsYXNzIE1vY2tEaXN0OgorICAgICIiIkZha2UgZGlzdHJpYnV0aW9uLCB1c2VkIGluIHRoZSBNb2NrIFB5UEkgU2VydmVyIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbmFtZSwgdmVyc2lvbj0iMS4wIiwgaGlkZGVuPUZhbHNlLCB1cmw9Imh0dHA6Ly91cmwvIiwKKyAgICAgICAgICAgICB0eXBlPSJzZGlzdCIsIGZpbGVuYW1lPSIiLCBzaXplPTEwMDAwLAorICAgICAgICAgICAgIGRpZ2VzdD0iMTIzNDU2IiwgZG93bmxvYWRzPTcsIGhhc19zaWc9RmFsc2UsCisgICAgICAgICAgICAgcHl0aG9uX3ZlcnNpb249InNvdXJjZSIsIGNvbW1lbnQ9ImNvbW1lbnQiLAorICAgICAgICAgICAgIGF1dGhvcj0iSm9obiBEb2UiLCBhdXRob3JfZW1haWw9ImpvaG5AZG9lLm5hbWUiLAorICAgICAgICAgICAgIG1haW50YWluZXI9Ik1haW4gVGF5bmVyIiwgbWFpbnRhaW5lcl9lbWFpbD0ibWFpbnRhaW5lcl9tYWlsIiwKKyAgICAgICAgICAgICBwcm9qZWN0X3VybD0iaHR0cDovL3Byb2plY3RfdXJsLyIsIGhvbWVwYWdlPSJodHRwOi8vaG9tZXBhZ2UvIiwKKyAgICAgICAgICAgICBrZXl3b3Jkcz0iIiwgcGxhdGZvcm09IlVOS05PV04iLCBjbGFzc2lmaWVycz1bXSwgbGljZW5jZT0iIiwKKyAgICAgICAgICAgICBkZXNjcmlwdGlvbj0iRGVzY3JpcHRpb24iLCBzdW1tYXJ5PSJTdW1tYXJ5Iiwgc3RhYmxlX3ZlcnNpb249IiIsCisgICAgICAgICAgICAgb3JkZXJpbmc9IiIsIGRvY3VtZW50YXRpb25faWQ9IiIsIGNvZGVfa3dhbGl0ZWVfaWQ9IiIsCisgICAgICAgICAgICAgaW5zdGFsbGFiaWxpdHlfaWQ9IiIsIG9ic29sZXRlcz1bXSwgb2Jzb2xldGVzX2Rpc3Q9W10sCisgICAgICAgICAgICAgcHJvdmlkZXM9W10sIHByb3ZpZGVzX2Rpc3Q9W10sIHJlcXVpcmVzPVtdLCByZXF1aXJlc19kaXN0PVtdLAorICAgICAgICAgICAgIHJlcXVpcmVzX2V4dGVybmFsPVtdLCByZXF1aXJlc19weXRob249IiIpOgorCisgICAgICAgICMgYmFzaWMgZmllbGRzCisgICAgICAgIHNlbGYubmFtZSA9IG5hbWUKKyAgICAgICAgc2VsZi52ZXJzaW9uID0gdmVyc2lvbgorICAgICAgICBzZWxmLmhpZGRlbiA9IGhpZGRlbgorCisgICAgICAgICMgVVJMIGluZm9zCisgICAgICAgIHNlbGYudXJsID0gdXJsCisgICAgICAgIHNlbGYuZGlnZXN0ID0gZGlnZXN0CisgICAgICAgIHNlbGYuZG93bmxvYWRzID0gZG93bmxvYWRzCisgICAgICAgIHNlbGYuaGFzX3NpZyA9IGhhc19zaWcKKyAgICAgICAgc2VsZi5weXRob25fdmVyc2lvbiA9IHB5dGhvbl92ZXJzaW9uCisgICAgICAgIHNlbGYuY29tbWVudCA9IGNvbW1lbnQKKyAgICAgICAgc2VsZi50eXBlID0gdHlwZQorCisgICAgICAgICMgbWV0YWRhdGEKKyAgICAgICAgc2VsZi5hdXRob3IgPSBhdXRob3IKKyAgICAgICAgc2VsZi5hdXRob3JfZW1haWwgPSBhdXRob3JfZW1haWwKKyAgICAgICAgc2VsZi5tYWludGFpbmVyID0gbWFpbnRhaW5lcgorICAgICAgICBzZWxmLm1haW50YWluZXJfZW1haWwgPSBtYWludGFpbmVyX2VtYWlsCisgICAgICAgIHNlbGYucHJvamVjdF91cmwgPSBwcm9qZWN0X3VybAorICAgICAgICBzZWxmLmhvbWVwYWdlID0gaG9tZXBhZ2UKKyAgICAgICAgc2VsZi5rZXl3b3JkcyA9IGtleXdvcmRzCisgICAgICAgIHNlbGYucGxhdGZvcm0gPSBwbGF0Zm9ybQorICAgICAgICBzZWxmLmNsYXNzaWZpZXJzID0gY2xhc3NpZmllcnMKKyAgICAgICAgc2VsZi5saWNlbmNlID0gbGljZW5jZQorICAgICAgICBzZWxmLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb24KKyAgICAgICAgc2VsZi5zdW1tYXJ5ID0gc3VtbWFyeQorICAgICAgICBzZWxmLnN0YWJsZV92ZXJzaW9uID0gc3RhYmxlX3ZlcnNpb24KKyAgICAgICAgc2VsZi5vcmRlcmluZyA9IG9yZGVyaW5nCisgICAgICAgIHNlbGYuY2hlZXNlY2FrZV9kb2N1bWVudGF0aW9uX2lkID0gZG9jdW1lbnRhdGlvbl9pZAorICAgICAgICBzZWxmLmNoZWVzZWNha2VfY29kZV9rd2FsaXRlZV9pZCA9IGNvZGVfa3dhbGl0ZWVfaWQKKyAgICAgICAgc2VsZi5jaGVlc2VjYWtlX2luc3RhbGxhYmlsaXR5X2lkID0gaW5zdGFsbGFiaWxpdHlfaWQKKworICAgICAgICBzZWxmLm9ic29sZXRlcyA9IG9ic29sZXRlcworICAgICAgICBzZWxmLm9ic29sZXRlc19kaXN0ID0gb2Jzb2xldGVzX2Rpc3QKKyAgICAgICAgc2VsZi5wcm92aWRlcyA9IHByb3ZpZGVzCisgICAgICAgIHNlbGYucHJvdmlkZXNfZGlzdCA9IHByb3ZpZGVzX2Rpc3QKKyAgICAgICAgc2VsZi5yZXF1aXJlcyA9IHJlcXVpcmVzCisgICAgICAgIHNlbGYucmVxdWlyZXNfZGlzdCA9IHJlcXVpcmVzX2Rpc3QKKyAgICAgICAgc2VsZi5yZXF1aXJlc19leHRlcm5hbCA9IHJlcXVpcmVzX2V4dGVybmFsCisgICAgICAgIHNlbGYucmVxdWlyZXNfcHl0aG9uID0gcmVxdWlyZXNfcHl0aG9uCisKKyAgICBkZWYgdXJsX2luZm9zKHNlbGYpOgorICAgICAgICByZXR1cm4geworICAgICAgICAgICAgJ3VybCc6IHNlbGYudXJsLAorICAgICAgICAgICAgJ3BhY2thZ2V0eXBlJzogc2VsZi50eXBlLAorICAgICAgICAgICAgJ2ZpbGVuYW1lJzogJ2ZpbGVuYW1lLnRhci5neicsCisgICAgICAgICAgICAnc2l6ZSc6ICc2MDAwJywKKyAgICAgICAgICAgICdtZDVfZGlnZXN0Jzogc2VsZi5kaWdlc3QsCisgICAgICAgICAgICAnZG93bmxvYWRzJzogc2VsZi5kb3dubG9hZHMsCisgICAgICAgICAgICAnaGFzX3NpZyc6IHNlbGYuaGFzX3NpZywKKyAgICAgICAgICAgICdweXRob25fdmVyc2lvbic6IHNlbGYucHl0aG9uX3ZlcnNpb24sCisgICAgICAgICAgICAnY29tbWVudF90ZXh0Jzogc2VsZi5jb21tZW50LAorICAgICAgICB9CisKKyAgICBkZWYgbWV0YWRhdGEoc2VsZik6CisgICAgICAgIHJldHVybiB7CisgICAgICAgICAgICAnbWFpbnRhaW5lcic6IHNlbGYubWFpbnRhaW5lciwKKyAgICAgICAgICAgICdwcm9qZWN0X3VybCc6IFtzZWxmLnByb2plY3RfdXJsXSwKKyAgICAgICAgICAgICdtYWludGFpbmVyX2VtYWlsJzogc2VsZi5tYWludGFpbmVyX2VtYWlsLAorICAgICAgICAgICAgJ2NoZWVzZWNha2VfY29kZV9rd2FsaXRlZV9pZCc6IHNlbGYuY2hlZXNlY2FrZV9jb2RlX2t3YWxpdGVlX2lkLAorICAgICAgICAgICAgJ2tleXdvcmRzJzogc2VsZi5rZXl3b3JkcywKKyAgICAgICAgICAgICdvYnNvbGV0ZXNfZGlzdCc6IHNlbGYub2Jzb2xldGVzX2Rpc3QsCisgICAgICAgICAgICAncmVxdWlyZXNfZXh0ZXJuYWwnOiBzZWxmLnJlcXVpcmVzX2V4dGVybmFsLAorICAgICAgICAgICAgJ2F1dGhvcic6IHNlbGYuYXV0aG9yLAorICAgICAgICAgICAgJ2F1dGhvcl9lbWFpbCc6IHNlbGYuYXV0aG9yX2VtYWlsLAorICAgICAgICAgICAgJ2Rvd25sb2FkX3VybCc6IHNlbGYudXJsLAorICAgICAgICAgICAgJ3BsYXRmb3JtJzogc2VsZi5wbGF0Zm9ybSwKKyAgICAgICAgICAgICd2ZXJzaW9uJzogc2VsZi52ZXJzaW9uLAorICAgICAgICAgICAgJ29ic29sZXRlcyc6IHNlbGYub2Jzb2xldGVzLAorICAgICAgICAgICAgJ3Byb3ZpZGVzJzogc2VsZi5wcm92aWRlcywKKyAgICAgICAgICAgICdjaGVlc2VjYWtlX2RvY3VtZW50YXRpb25faWQnOiBzZWxmLmNoZWVzZWNha2VfZG9jdW1lbnRhdGlvbl9pZCwKKyAgICAgICAgICAgICdfcHlwaV9oaWRkZW4nOiBzZWxmLmhpZGRlbiwKKyAgICAgICAgICAgICdkZXNjcmlwdGlvbic6IHNlbGYuZGVzY3JpcHRpb24sCisgICAgICAgICAgICAnX3B5cGlfb3JkZXJpbmcnOiAxOSwKKyAgICAgICAgICAgICdyZXF1aXJlc19kaXN0Jzogc2VsZi5yZXF1aXJlc19kaXN0LAorICAgICAgICAgICAgJ3JlcXVpcmVzX3B5dGhvbic6IHNlbGYucmVxdWlyZXNfcHl0aG9uLAorICAgICAgICAgICAgJ2NsYXNzaWZpZXJzJzogW10sCisgICAgICAgICAgICAnbmFtZSc6IHNlbGYubmFtZSwKKyAgICAgICAgICAgICdsaWNlbmNlJzogc2VsZi5saWNlbmNlLCAgIyBYWFggbGljZW5jZSBvciBsaWNlbnNlPworICAgICAgICAgICAgJ3N1bW1hcnknOiBzZWxmLnN1bW1hcnksCisgICAgICAgICAgICAnaG9tZV9wYWdlJzogc2VsZi5ob21lcGFnZSwKKyAgICAgICAgICAgICdzdGFibGVfdmVyc2lvbic6IHNlbGYuc3RhYmxlX3ZlcnNpb24sCisgICAgICAgICAgICAjIEZJWE1FIGRvZXNuJ3QgdGhhdCByZXByb2R1Y2UgdGhlIGJ1ZyBmcm9tIDY1MjdkMzEwNmU5Zj8KKyAgICAgICAgICAgICdwcm92aWRlc19kaXN0JzogKHNlbGYucHJvdmlkZXNfZGlzdCBvcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJXMgKCVzKSIgJSAoc2VsZi5uYW1lLCBzZWxmLnZlcnNpb24pKSwKKyAgICAgICAgICAgICdyZXF1aXJlcyc6IHNlbGYucmVxdWlyZXMsCisgICAgICAgICAgICAnY2hlZXNlY2FrZV9pbnN0YWxsYWJpbGl0eV9pZCc6IHNlbGYuY2hlZXNlY2FrZV9pbnN0YWxsYWJpbGl0eV9pZCwKKyAgICAgICAgfQorCisgICAgZGVmIHNlYXJjaF9yZXN1bHQoc2VsZik6CisgICAgICAgIHJldHVybiB7CisgICAgICAgICAgICAnX3B5cGlfb3JkZXJpbmcnOiAwLAorICAgICAgICAgICAgJ3ZlcnNpb24nOiBzZWxmLnZlcnNpb24sCisgICAgICAgICAgICAnbmFtZSc6IHNlbGYubmFtZSwKKyAgICAgICAgICAgICdzdW1tYXJ5Jzogc2VsZi5zdW1tYXJ5LAorICAgICAgICB9CisKKworY2xhc3MgWE1MUlBDTW9ja0luZGV4OgorICAgICIiIk1vY2sgWE1MUlBDIHNlcnZlciIiIgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRpc3RzPVtdKToKKyAgICAgICAgc2VsZi5fZGlzdHMgPSBkaXN0cworICAgICAgICBzZWxmLl9zZWFyY2hfcmVzdWx0ID0gW10KKworICAgIGRlZiBhZGRfZGlzdHJpYnV0aW9ucyhzZWxmLCBkaXN0cyk6CisgICAgICAgIGZvciBkaXN0IGluIGRpc3RzOgorICAgICAgICAgICAgc2VsZi5fZGlzdHMuYXBwZW5kKE1vY2tEaXN0KCoqZGlzdCkpCisKKyAgICBkZWYgc2V0X2Rpc3RyaWJ1dGlvbnMoc2VsZiwgZGlzdHMpOgorICAgICAgICBzZWxmLl9kaXN0cyA9IFtdCisgICAgICAgIHNlbGYuYWRkX2Rpc3RyaWJ1dGlvbnMoZGlzdHMpCisKKyAgICBkZWYgc2V0X3NlYXJjaF9yZXN1bHQoc2VsZiwgcmVzdWx0KToKKyAgICAgICAgIiIic2V0IGEgcHJlZGVmaW5lZCBzZWFyY2ggcmVzdWx0IiIiCisgICAgICAgIHNlbGYuX3NlYXJjaF9yZXN1bHQgPSByZXN1bHQKKworICAgIGRlZiBfZ2V0X3NlYXJjaF9yZXN1bHRzKHNlbGYpOgorICAgICAgICByZXN1bHRzID0gW10KKyAgICAgICAgZm9yIG5hbWUgaW4gc2VsZi5fc2VhcmNoX3Jlc3VsdDoKKyAgICAgICAgICAgIGZvdW5kX2Rpc3QgPSBbZCBmb3IgZCBpbiBzZWxmLl9kaXN0cyBpZiBkLm5hbWUgPT0gbmFtZV0KKyAgICAgICAgICAgIGlmIGZvdW5kX2Rpc3Q6CisgICAgICAgICAgICAgICAgcmVzdWx0cy5hcHBlbmQoZm91bmRfZGlzdFswXSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZGlzdCA9IE1vY2tEaXN0KG5hbWUpCisgICAgICAgICAgICAgICAgcmVzdWx0cy5hcHBlbmQoZGlzdCkKKyAgICAgICAgICAgICAgICBzZWxmLl9kaXN0cy5hcHBlbmQoZGlzdCkKKyAgICAgICAgcmV0dXJuIFtyLnNlYXJjaF9yZXN1bHQoKSBmb3IgciBpbiByZXN1bHRzXQorCisgICAgZGVmIGxpc3RfcGFja2FnZXMoc2VsZik6CisgICAgICAgIHJldHVybiBbZC5uYW1lIGZvciBkIGluIHNlbGYuX2Rpc3RzXQorCisgICAgZGVmIHBhY2thZ2VfcmVsZWFzZXMoc2VsZiwgcGFja2FnZV9uYW1lLCBzaG93X2hpZGRlbj1GYWxzZSk6CisgICAgICAgIGlmIHNob3dfaGlkZGVuOgorICAgICAgICAgICAgIyByZXR1cm4gYWxsCisgICAgICAgICAgICByZXR1cm4gW2QudmVyc2lvbiBmb3IgZCBpbiBzZWxmLl9kaXN0cyBpZiBkLm5hbWUgPT0gcGFja2FnZV9uYW1lXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyByZXR1cm4gb25seSB1bi1oaWRkZW4KKyAgICAgICAgICAgIHJldHVybiBbZC52ZXJzaW9uIGZvciBkIGluIHNlbGYuX2Rpc3RzIGlmIGQubmFtZSA9PSBwYWNrYWdlX25hbWUKKyAgICAgICAgICAgICAgICAgICAgYW5kIG5vdCBkLmhpZGRlbl0KKworICAgIGRlZiByZWxlYXNlX3VybHMoc2VsZiwgcGFja2FnZV9uYW1lLCB2ZXJzaW9uKToKKyAgICAgICAgcmV0dXJuIFtkLnVybF9pbmZvcygpIGZvciBkIGluIHNlbGYuX2Rpc3RzCisgICAgICAgICAgICAgICAgaWYgZC5uYW1lID09IHBhY2thZ2VfbmFtZSBhbmQgZC52ZXJzaW9uID09IHZlcnNpb25dCisKKyAgICBkZWYgcmVsZWFzZV9kYXRhKHNlbGYsIHBhY2thZ2VfbmFtZSwgdmVyc2lvbik6CisgICAgICAgIHJlbGVhc2UgPSBbZCBmb3IgZCBpbiBzZWxmLl9kaXN0cworICAgICAgICAgICAgICAgICAgIGlmIGQubmFtZSA9PSBwYWNrYWdlX25hbWUgYW5kIGQudmVyc2lvbiA9PSB2ZXJzaW9uXQorICAgICAgICBpZiByZWxlYXNlOgorICAgICAgICAgICAgcmV0dXJuIHJlbGVhc2VbMF0ubWV0YWRhdGEoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHt9CisKKyAgICBkZWYgc2VhcmNoKHNlbGYsIHNwZWMsIG9wZXJhdG9yPSJhbmQiKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX2dldF9zZWFyY2hfcmVzdWx0cygpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlfdGVzdF9zZXJ2ZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlfdGVzdF9zZXJ2ZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGM4YzY0MQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaV90ZXN0X3NlcnZlci5weQpAQCAtMCwwICsxLDU5IEBACisiIiJUZXN0IFB5UEkgU2VydmVyIGltcGxlbWVudGF0aW9uIGF0IHRlc3RweXBpLnB5dGhvbi5vcmcsIHRvIHVzZSBpbiB0ZXN0cy4KKworVGhpcyBpcyBhIGRyb3AtaW4gcmVwbGFjZW1lbnQgZm9yIHRoZSBtb2NrIHB5cGkgc2VydmVyIGZvciB0ZXN0aW5nIGFnYWluc3QgYQorcmVhbCBweXBpIHNlcnZlciBob3N0ZWQgYnkgcHl0aG9uLm9yZyBlc3BlY2lhbGx5IGZvciB0ZXN0aW5nIGFnYWluc3QuCisiIiIKKworaW1wb3J0IHVuaXR0ZXN0CisKK1BZUElfREVGQVVMVF9TVEFUSUNfUEFUSCA9IE5vbmUKKworCitkZWYgdXNlX3htbHJwY19zZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpOgorICAgIHNlcnZlcl9rd2FyZ3NbJ3NlcnZlX3htbHJwYyddID0gVHJ1ZQorICAgIHJldHVybiB1c2VfcHlwaV9zZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpCisKKworZGVmIHVzZV9odHRwX3NlcnZlcigqc2VydmVyX2FyZ3MsICoqc2VydmVyX2t3YXJncyk6CisgICAgc2VydmVyX2t3YXJnc1snc2VydmVfeG1scnBjJ10gPSBGYWxzZQorICAgIHJldHVybiB1c2VfcHlwaV9zZXJ2ZXIoKnNlcnZlcl9hcmdzLCAqKnNlcnZlcl9rd2FyZ3MpCisKKworZGVmIHVzZV9weXBpX3NlcnZlcigqc2VydmVyX2FyZ3MsICoqc2VydmVyX2t3YXJncyk6CisgICAgIiIiRGVjb3JhdG9yIHRvIG1ha2UgdXNlIG9mIHRoZSBQeVBJU2VydmVyIGZvciB0ZXN0IG1ldGhvZHMsCisgICAganVzdCB3aGVuIG5lZWRlZCwgYW5kIG5vdCBmb3IgdGhlIGVudGlyZSBkdXJhdGlvbiBvZiB0aGUgdGVzdGNhc2UuCisgICAgIiIiCisgICAgZGVmIHdyYXBwZXIoZnVuYyk6CisgICAgICAgIGRlZiB3cmFwcGVkKCphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICAgICBzZXJ2ZXIgPSBQeVBJU2VydmVyKCpzZXJ2ZXJfYXJncywgKipzZXJ2ZXJfa3dhcmdzKQorICAgICAgICAgICAgZnVuYyhzZXJ2ZXI9c2VydmVyLCAqYXJncywgKiprd2FyZ3MpCisgICAgICAgIHJldHVybiB3cmFwcGVkCisgICAgcmV0dXJuIHdyYXBwZXIKKworCitjbGFzcyBQeVBJU2VydmVyVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihQeVBJU2VydmVyVGVzdENhc2UsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi5weXBpID0gUHlQSVNlcnZlcigpCisgICAgICAgIHNlbGYucHlwaS5zdGFydCgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLnB5cGkuc3RvcCkKKworCitjbGFzcyBQeVBJU2VydmVyOgorICAgICIiIlNoaW0gdG8gYWNjZXNzIHRlc3RweXBpLnB5dGhvbi5vcmcsIGZvciB0ZXN0aW5nIGEgcmVhbCBzZXJ2ZXIuIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgdGVzdF9zdGF0aWNfcGF0aD1Ob25lLAorICAgICAgICAgICAgICAgICBzdGF0aWNfZmlsZXN5c3RlbV9wYXRocz1bImRlZmF1bHQiXSwKKyAgICAgICAgICAgICAgICAgc3RhdGljX3VyaV9wYXRocz1bInNpbXBsZSJdLCBzZXJ2ZV94bWxycGM9RmFsc2UpOgorICAgICAgICBzZWxmLmFkZHJlc3MgPSAoJ3Rlc3RweXBpLnB5dGhvbi5vcmcnLCAnODAnKQorCisgICAgZGVmIHN0YXJ0KHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgc3RvcChzZWxmKToKKyAgICAgICAgcGFzcworCisgICAgQHByb3BlcnR5CisgICAgZGVmIGZ1bGxfYWRkcmVzcyhzZWxmKToKKyAgICAgICAgcmV0dXJuICJodHRwOi8vJXM6JXMiICUgc2VsZi5hZGRyZXNzCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3BhY2thZ2VzL3NvdXJjZS9mL2Zvb2Jhci9mb29iYXItMC4xLnRhci5neiBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvcGFja2FnZXMvc291cmNlL2YvZm9vYmFyL2Zvb2Jhci0wLjEudGFyLmd6Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMzMzk2MWUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3BhY2thZ2VzL3NvdXJjZS9mL2Zvb2Jhci9mb29iYXItMC4xLnRhci5negpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9fX2luaXRfXy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2JhZG1kNS9iYWRtZDUtMC4xLnRhci5negpzaW1pbGFyaXR5IGluZGV4IDEwMCUKY29weSBmcm9tIExpYi9lbWFpbC90ZXN0L19faW5pdF9fLnB5CmNvcHkgdG8gTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9zaW1wbGUvYmFkbWQ1L2JhZG1kNS0wLjEudGFyLmd6CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3NpbXBsZS9iYWRtZDUvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2JhZG1kNS9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI4OWYxYmQKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3NpbXBsZS9iYWRtZDUvaW5kZXguaHRtbApAQCAtMCwwICsxLDMgQEAKKzxodG1sPjxib2R5PgorPGEgaHJlZj0iYmFkbWQ1LTAuMS50YXIuZ3ojbWQ1PTNlM2Q4NjY5M2Q2NTY0YzgwNzI3MmIxMWIzMDY5ZGZlIiByZWw9ImRvd25sb2FkIj5iYWRtZDUtMC4xLnRhci5nejwvYT48YnIvPgorPC9ib2R5PjwvaHRtbD4KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWU0MmIxNgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sCkBAIC0wLDAgKzEsMyBAQAorPGh0bWw+PGJvZHk+Cis8YSBocmVmPSJmb29iYXItMC4xLnRhci5neiNtZDU9ZmUxODgwNGM1YjcyMmZmMDI0Y2FiZGY1MTQ5MjRmYzQiIHJlbD0iZG93bmxvYWQiPmZvb2Jhci0wLjEudGFyLmd6PC9hPjxici8+Cis8L2JvZHk+PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9zaW1wbGUvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWJhZWUwNAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2luZGV4Lmh0bWwKQEAgLTAsMCArMSwyIEBACis8YSBocmVmPSJmb29iYXIvIj5mb29iYXIvPC9hPiAKKzxhIGhyZWY9ImJhZG1kNS8iPmJhZG1kNS88L2E+IApkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9iYXIvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9mb29fYmFyX2Jhei9zaW1wbGUvYmFyL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzNkNDJjNQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9mb29fYmFyX2Jhei9zaW1wbGUvYmFyL2luZGV4Lmh0bWwKQEAgLTAsMCArMSw2IEBACis8aHRtbD48aGVhZD48dGl0bGU+TGlua3MgZm9yIGJhcjwvdGl0bGU+PC9oZWFkPjxib2R5PjxoMT5MaW5rcyBmb3IgYmFyPC9oMT4KKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL2Jhci9iYXItMS4wLnRhci5neiI+YmFyLTEuMC50YXIuZ3o8L2E+PGJyLz4gCis8YSByZWw9ImRvd25sb2FkIiBocmVmPSIuLi8uLi9wYWNrYWdlcy9zb3VyY2UvRi9iYXIvYmFyLTEuMC4xLnRhci5neiI+YmFyLTEuMC4xLnRhci5nejwvYT48YnIvPiAKKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL2Jhci9iYXItMi4wLnRhci5neiI+YmFyLTIuMC50YXIuZ3o8L2E+PGJyLz4gCis8YSByZWw9ImRvd25sb2FkIiBocmVmPSIuLi8uLi9wYWNrYWdlcy9zb3VyY2UvRi9iYXIvYmFyLTIuMC4xLnRhci5neiI+YmFyLTIuMC4xLnRhci5nejwvYT48YnIvPiAKKzwvYm9keT48L2h0bWw+CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlL2Jhei9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9iYXovaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZjM0MzEyCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9iYXovaW5kZXguaHRtbApAQCAtMCwwICsxLDYgQEAKKzxodG1sPjxoZWFkPjx0aXRsZT5MaW5rcyBmb3IgYmF6PC90aXRsZT48L2hlYWQ+PGJvZHk+PGgxPkxpbmtzIGZvciBiYXo8L2gxPgorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvYmF6L2Jhei0xLjAudGFyLmd6Ij5iYXotMS4wLnRhci5nejwvYT48YnIvPiAKKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL2Jhei9iYXotMS4wLjEudGFyLmd6Ij5iYXotMS4wLjEudGFyLmd6PC9hPjxici8+IAorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvYmF6L2Jhei0yLjAudGFyLmd6Ij5iYXotMi4wLnRhci5nejwvYT48YnIvPiAKKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL2Jhei9iYXotMi4wLjEudGFyLmd6Ij5iYXotMi4wLjEudGFyLmd6PC9hPjxici8+IAorPC9ib2R5PjwvaHRtbD4KZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9mb29fYmFyX2Jhei9zaW1wbGUvZm9vL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlL2Zvby9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA1NjVlMTEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlL2Zvby9pbmRleC5odG1sCkBAIC0wLDAgKzEsNiBAQAorPGh0bWw+PGhlYWQ+PHRpdGxlPkxpbmtzIGZvciBmb288L3RpdGxlPjwvaGVhZD48Ym9keT48aDE+TGlua3MgZm9yIGZvbzwvaDE+Cis8YSByZWw9ImRvd25sb2FkIiBocmVmPSIuLi8uLi9wYWNrYWdlcy9zb3VyY2UvRi9mb28vZm9vLTEuMC50YXIuZ3oiPmZvby0xLjAudGFyLmd6PC9hPjxici8+IAorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvZm9vL2Zvby0xLjAuMS50YXIuZ3oiPmZvby0xLjAuMS50YXIuZ3o8L2E+PGJyLz4gCis8YSByZWw9ImRvd25sb2FkIiBocmVmPSIuLi8uLi9wYWNrYWdlcy9zb3VyY2UvRi9mb28vZm9vLTIuMC50YXIuZ3oiPmZvby0yLjAudGFyLmd6PC9hPjxici8+IAorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvZm9vL2Zvby0yLjAuMS50YXIuZ3oiPmZvby0yLjAuMS50YXIuZ3o8L2E+PGJyLz4gCis8L2JvZHk+PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE3MGNmZDMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlL2luZGV4Lmh0bWwKQEAgLTAsMCArMSwzIEBACis8YSBocmVmPSJmb28vIj5mb28vPC9hPiAKKzxhIGhyZWY9ImJhci8iPmJhci88L2E+IAorPGEgaHJlZj0iYmF6LyI+YmF6LzwvYT4gCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvcHJvamVjdF9saXN0L3NpbXBsZS9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Byb2plY3RfbGlzdC9zaW1wbGUvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMzZkNzI4Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Byb2plY3RfbGlzdC9zaW1wbGUvaW5kZXguaHRtbApAQCAtMCwwICsxLDUgQEAKKzxhIGNsYXNzPSJ0ZXN0IiBocmVmPSJ5ZWFoIj5Gb29CYXItYmFyPC9hPgorPGEgY2xhc3M9InRlc3QiIGhyZWY9InllYWgiPkZvb2Jhci1iYXo8L2E+Cis8YSBjbGFzcz0idGVzdCIgaHJlZj0ieWVhaCI+QmF6LUZvb0JhcjwvYT4KKzxhIGNsYXNzPSJ0ZXN0IiBocmVmPSJ5ZWFoIj5CYXo8L2E+Cis8YSBjbGFzcz0idGVzdCIgaHJlZj0ieWVhaCI+Rm9vPC9hPgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfZm91bmRfbGlua3Mvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfZm91bmRfbGlua3Mvc2ltcGxlL2Zvb2Jhci9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEyODJhNGUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvdGVzdF9mb3VuZF9saW5rcy9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwKQEAgLTAsMCArMSw2IEBACis8aHRtbD48aGVhZD48dGl0bGU+TGlua3MgZm9yIEZvb2JhcjwvdGl0bGU+PC9oZWFkPjxib2R5PjxoMT5MaW5rcyBmb3IgRm9vYmFyPC9oMT4KKzxhIHJlbD0iZG93bmxvYWQiIGhyZWY9Ii4uLy4uL3BhY2thZ2VzL3NvdXJjZS9GL0Zvb2Jhci9Gb29iYXItMS4wLnRhci5neiNtZDU9OThmYTgzM2ZkYWJjZGQ3OGQwMDI0NWFlYWQ2NmMxNzQiPkZvb2Jhci0xLjAudGFyLmd6PC9hPjxici8+IAorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvRm9vYmFyL0Zvb2Jhci0xLjAuMS50YXIuZ3ojbWQ1PTIzNTFlZmIyMGY2YjdiNWQ5Y2U4MGZhNGNiMWJkOWNhIj5Gb29iYXItMS4wLjEudGFyLmd6PC9hPjxici8+IAorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iLi4vLi4vcGFja2FnZXMvc291cmNlL0YvRm9vYmFyL0Zvb2Jhci0yLjAudGFyLmd6I21kNT05OGZhODMzZmRhYmNkZDc4ZDAwMjQ1YWVhZDY2YzI3NCI+Rm9vYmFyLTIuMC50YXIuZ3o8L2E+PGJyLz4gCis8YSByZWw9ImRvd25sb2FkIiBocmVmPSIuLi8uLi9wYWNrYWdlcy9zb3VyY2UvRi9Gb29iYXIvRm9vYmFyLTIuMC4xLnRhci5neiNtZDU9MjM1MmVmYjIwZjZiN2I1ZDljZTgwZmE0Y2IyYmQ5Y2EiPkZvb2Jhci0yLjAuMS50YXIuZ3o8L2E+PGJyLz4gCis8L2JvZHk+PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfZm91bmRfbGlua3Mvc2ltcGxlL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvdGVzdF9mb3VuZF9saW5rcy9zaW1wbGUvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMWE3YmI3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfZm91bmRfbGlua3Mvc2ltcGxlL2luZGV4Lmh0bWwKQEAgLTAsMCArMSBAQAorPGEgaHJlZj0iZm9vYmFyLyI+Zm9vYmFyLzwvYT4gCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvdGVzdF9weXBpX3NlcnZlci9leHRlcm5hbC9pbmRleC5odG1sIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfcHlwaV9zZXJ2ZXIvZXh0ZXJuYWwvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNjVlZTBhCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfcHlwaV9zZXJ2ZXIvZXh0ZXJuYWwvaW5kZXguaHRtbApAQCAtMCwwICsxIEBACitpbmRleC5odG1sIGZyb20gZXh0ZXJuYWwgc2VydmVyCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvdGVzdF9weXBpX3NlcnZlci9zaW1wbGUvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X3B5cGlfc2VydmVyL3NpbXBsZS9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZmOTc2NjcKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvdGVzdF9weXBpX3NlcnZlci9zaW1wbGUvaW5kZXguaHRtbApAQCAtMCwwICsxIEBACitZZWFoCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvZXh0ZXJuYWwvZXh0ZXJuYWwuaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX2V4dGVybmFscy9leHRlcm5hbC9leHRlcm5hbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkyZTQ3MDIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvZXh0ZXJuYWwvZXh0ZXJuYWwuaHRtbApAQCAtMCwwICsxLDMgQEAKKzxodG1sPjxib2R5PgorPGEgaHJlZj0iL2Zvb2Jhci0wLjEudGFyLmd6I21kNT0xX19iYWRfbWQ1X19fIj5iYWQgb2xkIGxpbms8L2E+Cis8L2JvZHk+PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfZXh0ZXJuYWxzL3NpbXBsZS9mb29iYXIvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX2V4dGVybmFscy9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjEwMGEyNgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX2V4dGVybmFscy9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwKQEAgLTAsMCArMSw0IEBACis8aHRtbD48Ym9keT4KKzxhIHJlbCA9ImRvd25sb2FkIiBocmVmPSIvZm9vYmFyLTAuMS50YXIuZ3ojbWQ1PTEyMzQ1Njc4OTAxMjM0NTY3Ij5mb29iYXItMC4xLnRhci5nejwvYT48YnIvPgorPGEgaHJlZj0iLi4vLi4vZXh0ZXJuYWwvZXh0ZXJuYWwuaHRtbCIgcmVsPSJob21lcGFnZSI+ZXh0ZXJuYWwgaG9tZXBhZ2U8L2E+PGJyLz4KKzwvYm9keT48L2h0bWw+CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvc2ltcGxlL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvc2ltcGxlL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTFhN2JiNwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX2V4dGVybmFscy9zaW1wbGUvaW5kZXguaHRtbApAQCAtMCwwICsxIEBACis8YSBocmVmPSJmb29iYXIvIj5mb29iYXIvPC9hPiAKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX25vcmVsX2xpbmtzL2V4dGVybmFsL2hvbWVwYWdlLmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9ub3JlbF9saW5rcy9leHRlcm5hbC9ob21lcGFnZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFjYzBjMzIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9ub3JlbF9saW5rcy9leHRlcm5hbC9ob21lcGFnZS5odG1sCkBAIC0wLDAgKzEsNyBAQAorPGh0bWw+Cis8Ym9keT4KKzxwPmEgcmVsPWhvbWVwYWdlIEhUTUwgcGFnZTwvcD4KKzxhIGhyZWY9Ii9mb29iYXItMi4wLnRhci5neiI+Zm9vYmFyIDIuMDwvYT4KKzwvYm9keT4KKzwvaHRtbD4KKwpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3MvZXh0ZXJuYWwvbm9ucmVsLmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9ub3JlbF9saW5rcy9leHRlcm5hbC9ub25yZWwuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNmFjZTIyCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3MvZXh0ZXJuYWwvbm9ucmVsLmh0bWwKQEAgLTAsMCArMSBAQAorQSBwYWdlIGxpbmtlZCB3aXRob3V0IHJlbD0iZG93bmxvYWQiIG9yIHJlbD0iaG9tZXBhZ2UiIGxpbmsuCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9ub3JlbF9saW5rcy9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9ub3JlbF9saW5rcy9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTcxZGY5MwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX25vcmVsX2xpbmtzL3NpbXBsZS9mb29iYXIvaW5kZXguaHRtbApAQCAtMCwwICsxLDYgQEAKKzxodG1sPjxib2R5PgorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iL2Zvb2Jhci0wLjEudGFyLmd6IiByZWw9ImRvd25sb2FkIj5mb29iYXItMC4xLnRhci5nejwvYT48YnIvPgorPGEgaHJlZj0iLi4vLi4vZXh0ZXJuYWwvaG9tZXBhZ2UuaHRtbCIgcmVsPSJob21lcGFnZSI+ZXh0ZXJuYWwgaG9tZXBhZ2U8L2E+PGJyLz4KKzxhIGhyZWY9Ii4uLy4uL2V4dGVybmFsL25vbnJlbC5odG1sIj51bnJlbGF0ZWQgbGluazwvYT48YnIvPgorPGEgaHJlZj0iL3VucmVsYXRlZC0wLjIudGFyLmd6Ij51bnJlbGF0ZWQgZG93bmxvYWQ8L2E+PC9ici8+Cis8L2JvZHk+PC9odG1sPgpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3Mvc2ltcGxlL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9ub3JlbF9saW5rcy9zaW1wbGUvaW5kZXguaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMWE3YmI3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3Mvc2ltcGxlL2luZGV4Lmh0bWwKQEAgLTAsMCArMSBAQAorPGEgaHJlZj0iZm9vYmFyLyI+Zm9vYmFyLzwvYT4gCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9yZWFsX2V4dGVybmFscy9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9yZWFsX2V4dGVybmFscy9zaW1wbGUvZm9vYmFyL2luZGV4Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjI4ODVhZQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX3JlYWxfZXh0ZXJuYWxzL3NpbXBsZS9mb29iYXIvaW5kZXguaHRtbApAQCAtMCwwICsxLDQgQEAKKzxodG1sPjxib2R5PgorPGEgcmVsPSJkb3dubG9hZCIgaHJlZj0iL2Zvb2Jhci0wLjEudGFyLmd6I21kNT0wX2NvcnJlY3RfbWQ1Ij5mb29iYXItMC4xLnRhci5nejwvYT48YnIvPgorPGEgaHJlZj0iaHR0cDovL2EtcmVhbGx5LWV4dGVybmFsLXdlYnNpdGUvZXh0ZXJuYWwvZXh0ZXJuYWwuaHRtbCIgcmVsPSJob21lcGFnZSI+ZXh0ZXJuYWwgaG9tZXBhZ2U8L2E+PGJyLz4KKzwvYm9keT48L2h0bWw+CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9yZWFsX2V4dGVybmFscy9zaW1wbGUvaW5kZXguaHRtbCBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX3JlYWxfZXh0ZXJuYWxzL3NpbXBsZS9pbmRleC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmExYTdiYjcKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9yZWFsX2V4dGVybmFscy9zaW1wbGUvaW5kZXguaHRtbApAQCAtMCwwICsxIEBACis8YSBocmVmPSJmb29iYXIvIj5mb29iYXIvPC9hPiAKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvc3VwcG9ydC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvc3VwcG9ydC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NDFlZmMwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy9zdXBwb3J0LnB5CkBAIC0wLDAgKzEsMzkyIEBACisiIiJTdXBwb3J0IGNvZGUgZm9yIHBhY2thZ2luZyB0ZXN0IGNhc2VzLgorCisqVGhpcyBtb2R1bGUgc2hvdWxkIG5vdCBiZSBjb25zaWRlcmVkIHB1YmxpYzogaXRzIGNvbnRlbnQgYW5kIEFQSSBtYXkKK2NoYW5nZSBpbiBpbmNvbXBhdGlibGUgd2F5cy4qCisKK0EgZmV3IGhlbHBlciBjbGFzc2VzIGFyZSBwcm92aWRlZDogTG9nZ2luZ0NhdGNoZXIsIFRlbXBkaXJNYW5hZ2VyIGFuZAorRW52aXJvblJlc3RvcmVyLiBUaGV5IGFyZSB3cml0dGVuIHRvIGJlIHVzZWQgYXMgbWl4aW5zOjoKKworICAgIGZyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdAorICAgIGZyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IExvZ2dpbmdDYXRjaGVyCisKKyAgICBjbGFzcyBTb21lVGVzdENhc2UoTG9nZ2luZ0NhdGNoZXIsIHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAgICAgLi4uCisKK0lmIHlvdSBuZWVkIHRvIGRlZmluZSBhIHNldFVwIG1ldGhvZCBvbiB5b3VyIHRlc3QgY2xhc3MsIHlvdSBoYXZlIHRvCitjYWxsIHRoZSBtaXhpbiBjbGFzcycgc2V0VXAgbWV0aG9kIG9yIGl0IHdvbid0IHdvcmsgKHNhbWUgdGhpbmcgZm9yCit0ZWFyRG93bik6CisKKyAgICAgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICAgICAgc3VwZXIoU29tZVRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgICAgICAuLi4gICMgb3RoZXIgc2V0dXAgY29kZQorCitBbHNvIHByb3ZpZGVkIGlzIGEgRHVtbXlDb21tYW5kIGNsYXNzLCB1c2VmdWwgdG8gbW9jayBjb21tYW5kcyBpbiB0aGUKK3Rlc3RzIG9mIGFub3RoZXIgY29tbWFuZCB0aGF0IG5lZWRzIHRoZW0sIGZvciBleGFtcGxlIHRvIGZha2UKK2NvbXBpbGF0aW9uIGluIGJ1aWxkX2V4dCAodGhpcyByZXF1aXJlcyB0aGF0IHRoZSBtb2NrIGJ1aWxkX2V4dCBjb21tYW5kCitiZSBpbmplY3RlZCBpbnRvIHRoZSBkaXN0cmlidXRpb24gb2JqZWN0J3MgY29tbWFuZF9vYmogZGljdGlvbmFyeSkuCisKK0ZvciB0ZXN0cyB0aGF0IG5lZWQgdG8gY29tcGlsZSBhbiBleHRlbnNpb24gbW9kdWxlLCB1c2UgdGhlCitjb3B5X3h4bW9kdWxlX2MgYW5kIGZpeHVwX2J1aWxkX2V4dCBmdW5jdGlvbnMuCisKK0VhY2ggY2xhc3Mgb3IgZnVuY3Rpb24gaGFzIGEgZG9jc3RyaW5nIHRvIGV4cGxhaW4gaXRzIHB1cnBvc2UgYW5kIHVzYWdlLgorRXhpc3RpbmcgdGVzdHMgc2hvdWxkIGFsc28gYmUgdXNlZCBhcyBleGFtcGxlcy4KKyIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCBzaHV0aWwKK2ltcG9ydCBsb2dnaW5nCitpbXBvcnQgd2Vha3JlZgoraW1wb3J0IHRlbXBmaWxlCitpbXBvcnQgc3lzY29uZmlnCisKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcudXRpbCBpbXBvcnQgcmVzb2x2ZV9uYW1lCitmcm9tIHBhY2thZ2luZy5jb21tYW5kIGltcG9ydCBzZXRfY29tbWFuZCwgX0NPTU1BTkRTCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdAorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJlcXVpcmVzX3psaWIsIHVubGluaworCisjIGRlZmluZSBfX2FsbF9fIHRvIG1ha2UgcHlkb2MgbW9yZSB1c2VmdWwKK19fYWxsX18gPSBbCisgICAgIyBUZXN0Q2FzZSBtaXhpbnMKKyAgICAnTG9nZ2luZ0NhdGNoZXInLCAnVGVtcGRpck1hbmFnZXInLCAnRW52aXJvblJlc3RvcmVyJywKKyAgICAjIG1vY2tzCisgICAgJ0R1bW15Q29tbWFuZCcsICdUZXN0RGlzdHJpYnV0aW9uJywgJ0lucHV0cycsCisgICAgIyBtaXNjLiBmdW5jdGlvbnMgYW5kIGRlY29yYXRvcnMKKyAgICAnZmFrZV9kZWMnLCAnY3JlYXRlX2Rpc3RyaWJ1dGlvbicsICd1c2VfY29tbWFuZCcsCisgICAgJ2NvcHlfeHhtb2R1bGVfYycsICdmaXh1cF9idWlsZF9leHQnLAorICAgICMgaW1wb3J0ZWQgZnJvbSB0aGlzIG1vZHVsZSBmb3IgYmFja3BvcnQgcHVycG9zZXMKKyAgICAndW5pdHRlc3QnLCAncmVxdWlyZXNfemxpYicsICdza2lwXzJ0bzNfb3B0aW1pemUnLCAnc2tpcF91bmxlc3Nfc3ltbGluaycsCitdCisKKworbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoJ3BhY2thZ2luZycpCitsb2dnZXIydG8zID0gbG9nZ2luZy5nZXRMb2dnZXIoJ1JlZmFjdG9yaW5nVG9vbCcpCisKKworY2xhc3MgX1Rlc3RIYW5kbGVyKGxvZ2dpbmcuaGFuZGxlcnMuQnVmZmVyaW5nSGFuZGxlcik6CisgICAgIyBzdG9sZW4gYW5kIGFkYXB0ZWQgZnJvbSB0ZXN0LnN1cHBvcnQKKworICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgc3VwZXIoX1Rlc3RIYW5kbGVyLCBzZWxmKS5fX2luaXRfXygwKQorICAgICAgICBzZWxmLnNldExldmVsKGxvZ2dpbmcuREVCVUcpCisKKyAgICBkZWYgc2hvdWxkRmx1c2goc2VsZik6CisgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgZGVmIGVtaXQoc2VsZiwgcmVjb3JkKToKKyAgICAgICAgc2VsZi5idWZmZXIuYXBwZW5kKHJlY29yZCkKKworCitjbGFzcyBMb2dnaW5nQ2F0Y2hlcjoKKyAgICAiIiJUZXN0Q2FzZS1jb21wYXRpYmxlIG1peGluIHRvIHJlY2VpdmUgbG9nZ2luZyBjYWxscy4KKworICAgIFVwb24gc2V0VXAsIGluc3RhbmNlcyBvZiB0aGlzIGNsYXNzZXMgZ2V0IGEgQnVmZmVyaW5nSGFuZGxlciB0aGF0J3MKKyAgICBjb25maWd1cmVkIHRvIHJlY29yZCBhbGwgbWVzc2FnZXMgbG9nZ2VkIHRvIHRoZSAncGFja2FnaW5nJyBsb2dnZXIuCisKKyAgICBVc2UgZ2V0X2xvZ3MgdG8gcmV0cmlldmUgbWVzc2FnZXMgYW5kIHNlbGYubG9naGFuZGxlci5mbHVzaCB0byBkaXNjYXJkCisgICAgdGhlbS4gIGdldF9sb2dzIGF1dG9tYXRpY2FsbHkgZmx1c2hlcyB0aGUgbG9ncywgdW5sZXNzIHlvdSBwYXNzCisgICAgKmZsdXNoPUZhbHNlKiwgZm9yIGV4YW1wbGUgdG8gbWFrZSBtdWx0aXBsZSBjYWxscyB0byB0aGUgbWV0aG9kIHdpdGgKKyAgICBkaWZmZXJlbnQgbGV2ZWwgYXJndW1lbnRzLiAgSWYgeW91ciB0ZXN0IGNhbGxzIHNvbWUgY29kZSB0aGF0IGdlbmVyYXRlcworICAgIGxvZ2dpbmcgbWVzc2FnZSBhbmQgdGhlbiB5b3UgZG9uJ3QgY2FsbCBnZXRfbG9ncywgeW91IHdpbGwgbmVlZCB0byBmbHVzaAorICAgIG1hbnVhbGx5IGJlZm9yZSB0ZXN0aW5nIG90aGVyIGNvZGUgaW4gdGhlIHNhbWUgdGVzdF8qIG1ldGhvZCwgb3RoZXJ3aXNlCisgICAgZ2V0X2xvZ3MgaW4gdGhlIG5leHQgbGluZXMgd2lsbCBzZWUgbWVzc2FnZXMgZnJvbSB0aGUgcHJldmlvdXMgbGluZXMuCisgICAgU2VlIGV4YW1wbGUgaW4gdGVzdF9jb21tYW5kX2NoZWNrLgorICAgICIiIgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihMb2dnaW5nQ2F0Y2hlciwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLmxvZ2hhbmRsZXIgPSBoYW5kbGVyID0gX1Rlc3RIYW5kbGVyKCkKKyAgICAgICAgc2VsZi5fb2xkX2xldmVscyA9IGxvZ2dlci5sZXZlbCwgbG9nZ2VyMnRvMy5sZXZlbAorICAgICAgICBsb2dnZXIuYWRkSGFuZGxlcihoYW5kbGVyKQorICAgICAgICBsb2dnZXIuc2V0TGV2ZWwobG9nZ2luZy5ERUJVRykgICMgd2Ugd2FudCBhbGwgbWVzc2FnZXMKKyAgICAgICAgbG9nZ2VyMnRvMy5zZXRMZXZlbChsb2dnaW5nLkNSSVRJQ0FMKSAgIyB3ZSBkb24ndCB3YW50IDJ0bzMgbWVzc2FnZXMKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgaGFuZGxlciA9IHNlbGYubG9naGFuZGxlcgorICAgICAgICAjIEFsbCB0aGlzIGlzIG5lY2Vzc2FyeSB0byBwcm9wZXJseSBzaHV0IGRvd24gdGhlIGxvZ2dpbmcgc3lzdGVtIGFuZAorICAgICAgICAjIGF2b2lkIGEgcmVncnRlc3QgY29tcGxhaW50LiAgVGhhbmtzIHRvIFZpbmF5IFNhamlwIGZvciB0aGUgaGVscC4KKyAgICAgICAgaGFuZGxlci5jbG9zZSgpCisgICAgICAgIGxvZ2dlci5yZW1vdmVIYW5kbGVyKGhhbmRsZXIpCisgICAgICAgIGZvciByZWYgaW4gd2Vha3JlZi5nZXR3ZWFrcmVmcyhoYW5kbGVyKToKKyAgICAgICAgICAgIGxvZ2dpbmcuX3JlbW92ZUhhbmRsZXJSZWYocmVmKQorICAgICAgICBkZWwgc2VsZi5sb2doYW5kbGVyCisgICAgICAgIGxvZ2dlci5zZXRMZXZlbChzZWxmLl9vbGRfbGV2ZWxzWzBdKQorICAgICAgICBsb2dnZXIydG8zLnNldExldmVsKHNlbGYuX29sZF9sZXZlbHNbMV0pCisgICAgICAgIHN1cGVyKExvZ2dpbmdDYXRjaGVyLCBzZWxmKS50ZWFyRG93bigpCisKKyAgICBkZWYgZ2V0X2xvZ3Moc2VsZiwgbGV2ZWw9bG9nZ2luZy5XQVJOSU5HLCBmbHVzaD1UcnVlKToKKyAgICAgICAgIiIiUmV0dXJuIGFsbCBsb2cgbWVzc2FnZXMgd2l0aCBnaXZlbiBsZXZlbC4KKworICAgICAgICAqbGV2ZWwqIGRlZmF1bHRzIHRvIGxvZ2dpbmcuV0FSTklORy4KKworICAgICAgICBGb3IgbG9nIGNhbGxzIHdpdGggYXJndW1lbnRzIChpLmUuICBsb2dnZXIuaW5mbygnYmxhIGJsYSAlcicsIGFyZykpLAorICAgICAgICB0aGUgbWVzc2FnZXMgd2lsbCBiZSBmb3JtYXR0ZWQgYmVmb3JlIGJlaW5nIHJldHVybmVkIChlLmcuICJibGEgYmxhCisgICAgICAgICd0aGluZyciKS4KKworICAgICAgICBSZXR1cm5zIGEgbGlzdC4gIEF1dG9tYXRpY2FsbHkgZmx1c2hlcyB0aGUgbG9naGFuZGxlciBhZnRlciBiZWluZworICAgICAgICBjYWxsZWQsIHVubGVzcyAqZmx1c2gqIGlzIEZhbHNlICh0aGlzIGlzIHVzZWZ1bCB0byBnZXQgZS5nLiBhbGwKKyAgICAgICAgd2FybmluZ3MgdGhlbiBhbGwgaW5mbyBtZXNzYWdlcykuCisgICAgICAgICIiIgorICAgICAgICBtZXNzYWdlcyA9IFtsb2cuZ2V0TWVzc2FnZSgpIGZvciBsb2cgaW4gc2VsZi5sb2doYW5kbGVyLmJ1ZmZlcgorICAgICAgICAgICAgICAgICAgICBpZiBsb2cubGV2ZWxubyA9PSBsZXZlbF0KKyAgICAgICAgaWYgZmx1c2g6CisgICAgICAgICAgICBzZWxmLmxvZ2hhbmRsZXIuZmx1c2goKQorICAgICAgICByZXR1cm4gbWVzc2FnZXMKKworCitjbGFzcyBUZW1wZGlyTWFuYWdlcjoKKyAgICAiIiJUZXN0Q2FzZS1jb21wYXRpYmxlIG1peGluIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZGlyZWN0b3JpZXMgYW5kIGZpbGVzLgorCisgICAgRGlyZWN0b3JpZXMgYW5kIGZpbGVzIGNyZWF0ZWQgaW4gYSB0ZXN0XyogbWV0aG9kIHdpbGwgYmUgcmVtb3ZlZCBhZnRlciBpdAorICAgIGhhcyBydW4uCisgICAgIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFRlbXBkaXJNYW5hZ2VyLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYuX29sZGRpciA9IG9zLmdldGN3ZCgpCisgICAgICAgIHNlbGYuX2Jhc2V0ZW1wZGlyID0gdGVtcGZpbGUubWtkdGVtcCgpCisgICAgICAgIHNlbGYuX2ZpbGVzID0gW10KKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgZm9yIGhhbmRsZSwgbmFtZSBpbiBzZWxmLl9maWxlczoKKyAgICAgICAgICAgIGhhbmRsZS5jbG9zZSgpCisgICAgICAgICAgICB1bmxpbmsobmFtZSkKKworICAgICAgICBvcy5jaGRpcihzZWxmLl9vbGRkaXIpCisgICAgICAgIHNodXRpbC5ybXRyZWUoc2VsZi5fYmFzZXRlbXBkaXIpCisgICAgICAgIHN1cGVyKFRlbXBkaXJNYW5hZ2VyLCBzZWxmKS50ZWFyRG93bigpCisKKyAgICBkZWYgbWt0ZW1wZmlsZShzZWxmKToKKyAgICAgICAgIiIiQ3JlYXRlIGEgcmVhZC13cml0ZSB0ZW1wb3JhcnkgZmlsZSBhbmQgcmV0dXJuIGl0LiIiIgorICAgICAgICBmZCwgZm4gPSB0ZW1wZmlsZS5ta3N0ZW1wKGRpcj1zZWxmLl9iYXNldGVtcGRpcikKKyAgICAgICAgb3MuY2xvc2UoZmQpCisgICAgICAgIGZwID0gb3BlbihmbiwgJ3crJykKKyAgICAgICAgc2VsZi5fZmlsZXMuYXBwZW5kKChmcCwgZm4pKQorICAgICAgICByZXR1cm4gZnAKKworICAgIGRlZiBta2R0ZW1wKHNlbGYpOgorICAgICAgICAiIiJDcmVhdGUgYSB0ZW1wb3JhcnkgZGlyZWN0b3J5IGFuZCByZXR1cm4gaXRzIHBhdGguIiIiCisgICAgICAgIGQgPSB0ZW1wZmlsZS5ta2R0ZW1wKGRpcj1zZWxmLl9iYXNldGVtcGRpcikKKyAgICAgICAgcmV0dXJuIGQKKworICAgIGRlZiB3cml0ZV9maWxlKHNlbGYsIHBhdGgsIGNvbnRlbnQ9J3h4eCcsIGVuY29kaW5nPU5vbmUpOgorICAgICAgICAiIiJXcml0ZSBhIGZpbGUgYXQgdGhlIGdpdmVuIHBhdGguCisKKyAgICAgICAgcGF0aCBjYW4gYmUgYSBzdHJpbmcsIGEgdHVwbGUgb3IgYSBsaXN0OyBpZiBpdCdzIGEgdHVwbGUgb3IgbGlzdCwKKyAgICAgICAgb3MucGF0aC5qb2luIHdpbGwgYmUgdXNlZCB0byBwcm9kdWNlIGEgcGF0aC4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIGlzaW5zdGFuY2UocGF0aCwgKGxpc3QsIHR1cGxlKSk6CisgICAgICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKCpwYXRoKQorICAgICAgICB3aXRoIG9wZW4ocGF0aCwgJ3cnLCBlbmNvZGluZz1lbmNvZGluZykgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoY29udGVudCkKKworICAgIGRlZiBjcmVhdGVfZGlzdChzZWxmLCAqKmt3KToKKyAgICAgICAgIiIiQ3JlYXRlIGEgc3R1YiBkaXN0cmlidXRpb24gb2JqZWN0IGFuZCBmaWxlcy4KKworICAgICAgICBUaGlzIGZ1bmN0aW9uIGNyZWF0ZXMgYSBEaXN0cmlidXRpb24gaW5zdGFuY2UgKHVzZSBrZXl3b3JkIGFyZ3VtZW50cworICAgICAgICB0byBjdXN0b21pemUgaXQpIGFuZCBhIHRlbXBvcmFyeSBkaXJlY3Rvcnkgd2l0aCBhIHByb2plY3Qgc3RydWN0dXJlCisgICAgICAgIChjdXJyZW50bHkgYW4gZW1wdHkgZGlyZWN0b3J5KS4KKworICAgICAgICBJdCByZXR1cm5zIHRoZSBwYXRoIHRvIHRoZSBkaXJlY3RvcnkgYW5kIHRoZSBEaXN0cmlidXRpb24gaW5zdGFuY2UuCisgICAgICAgIFlvdSBjYW4gdXNlIHNlbGYud3JpdGVfZmlsZSB0byB3cml0ZSBhbnkgZmlsZSBpbiB0aGF0CisgICAgICAgIGRpcmVjdG9yeSwgZS5nLiBzZXR1cCBzY3JpcHRzIG9yIFB5dGhvbiBtb2R1bGVzLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgJ25hbWUnIG5vdCBpbiBrdzoKKyAgICAgICAgICAgIGt3WyduYW1lJ10gPSAnZm9vJworICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgcHJvamVjdF9kaXIgPSBvcy5wYXRoLmpvaW4odG1wX2Rpciwga3dbJ25hbWUnXSkKKyAgICAgICAgb3MubWtkaXIocHJvamVjdF9kaXIpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oYXR0cnM9a3cpCisgICAgICAgIHJldHVybiBwcm9qZWN0X2RpciwgZGlzdAorCisgICAgZGVmIGFzc2VydElzRmlsZShzZWxmLCAqYXJncyk6CisgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oKmFyZ3MpCisgICAgICAgIGRpcm5hbWUgPSBvcy5wYXRoLmRpcm5hbWUocGF0aCkKKyAgICAgICAgZmlsZSA9IG9zLnBhdGguYmFzZW5hbWUocGF0aCkKKyAgICAgICAgaWYgb3MucGF0aC5pc2RpcihkaXJuYW1lKToKKyAgICAgICAgICAgIGZpbGVzID0gb3MubGlzdGRpcihkaXJuYW1lKQorICAgICAgICAgICAgbXNnID0gIiVzIG5vdCBmb3VuZCBpbiAlczogJXMiICUgKGZpbGUsIGRpcm5hbWUsIGZpbGVzKQorICAgICAgICAgICAgYXNzZXJ0IG9zLnBhdGguaXNmaWxlKHBhdGgpLCBtc2cKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKAorICAgICAgICAgICAgICAgICAgICAnJXMgbm90IGZvdW5kLiAlcyBkb2VzIG5vdCBleGlzdCcgJSAoZmlsZSwgZGlybmFtZSkpCisKKyAgICBkZWYgYXNzZXJ0SXNOb3RGaWxlKHNlbGYsICphcmdzKToKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbigqYXJncykKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmlzZmlsZShwYXRoKSwgIiVyIGV4aXN0cyIgJSBwYXRoKQorCisKK2NsYXNzIEVudmlyb25SZXN0b3JlcjoKKyAgICAiIiJUZXN0Q2FzZS1jb21wYXRpYmxlIG1peGluIHRvIHJlc3RvcmUgb3IgZGVsZXRlIGVudmlyb25tZW50IHZhcmlhYmxlcy4KKworICAgIFRoZSB2YXJpYWJsZXMgdG8gcmVzdG9yZSAob3IgZGVsZXRlIGlmIHRoZXkgd2VyZSBub3Qgb3JpZ2luYWxseSBwcmVzZW50KQorICAgIG11c3QgYmUgZXhwbGljaXRseSBsaXN0ZWQgaW4gc2VsZi5yZXN0b3JlX2Vudmlyb24uICBJdCdzIGJldHRlciB0byBiZQorICAgIGF3YXJlIG9mIHdoYXQgd2UncmUgbW9kaWZ5aW5nIGluc3RlYWQgb2Ygc2F2aW5nIGFuZCByZXN0b3JpbmcgdGhlIHdob2xlCisgICAgZW52aXJvbm1lbnQuCisgICAgIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKEVudmlyb25SZXN0b3Jlciwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLl9zYXZlZCA9IFtdCisgICAgICAgIHNlbGYuX2FkZGVkID0gW10KKyAgICAgICAgZm9yIGtleSBpbiBzZWxmLnJlc3RvcmVfZW52aXJvbjoKKyAgICAgICAgICAgIGlmIGtleSBpbiBvcy5lbnZpcm9uOgorICAgICAgICAgICAgICAgIHNlbGYuX3NhdmVkLmFwcGVuZCgoa2V5LCBvcy5lbnZpcm9uW2tleV0pKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLl9hZGRlZC5hcHBlbmQoa2V5KQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBmb3Iga2V5LCB2YWx1ZSBpbiBzZWxmLl9zYXZlZDoKKyAgICAgICAgICAgIG9zLmVudmlyb25ba2V5XSA9IHZhbHVlCisgICAgICAgIGZvciBrZXkgaW4gc2VsZi5fYWRkZWQ6CisgICAgICAgICAgICBvcy5lbnZpcm9uLnBvcChrZXksIE5vbmUpCisgICAgICAgIHN1cGVyKEVudmlyb25SZXN0b3Jlciwgc2VsZikudGVhckRvd24oKQorCisKK2NsYXNzIER1bW15Q29tbWFuZDoKKyAgICAiIiJDbGFzcyB0byBzdG9yZSBvcHRpb25zIGZvciByZXRyaWV2YWwgdmlhIHNldF91bmRlZmluZWRfb3B0aW9ucygpLgorCisgICAgVXNlZnVsIGZvciBtb2NraW5nIG9uZSBkZXBlbmRlbmN5IGNvbW1hbmQgaW4gdGhlIHRlc3RzIGZvciBhbm90aGVyCisgICAgY29tbWFuZCwgc2VlIGUuZy4gdGhlIGR1bW15IGJ1aWxkIGNvbW1hbmQgaW4gdGVzdF9idWlsZF9zY3JpcHRzLgorICAgICIiIgorICAgICMgWFhYIGRvZXMgbm90IHdvcmsgd2l0aCBkaXN0LnJlaW5pdGlhbGl6ZV9jb21tYW5kLCB3aGljaCB0eXBlY2hlY2tzCisgICAgIyBhbmQgd2FudHMgYSBmaW5hbGl6ZWQgYXR0cmlidXRlCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKiprd2FyZ3MpOgorICAgICAgICBmb3Iga3csIHZhbCBpbiBrd2FyZ3MuaXRlbXMoKToKKyAgICAgICAgICAgIHNldGF0dHIoc2VsZiwga3csIHZhbCkKKworICAgIGRlZiBlbnN1cmVfZmluYWxpemVkKHNlbGYpOgorICAgICAgICBwYXNzCisKKworY2xhc3MgVGVzdERpc3RyaWJ1dGlvbihEaXN0cmlidXRpb24pOgorICAgICIiIkRpc3RyaWJ1dGlvbiBzdWJjbGFzc2VzIHRoYXQgYXZvaWRzIHRoZSBkZWZhdWx0IHNlYXJjaCBmb3IKKyAgICBjb25maWd1cmF0aW9uIGZpbGVzLgorCisgICAgVGhlIC5fY29uZmlnX2ZpbGVzIGF0dHJpYnV0ZSBtdXN0IGJlIHNldCBiZWZvcmUKKyAgICAucGFyc2VfY29uZmlnX2ZpbGVzKCkgaXMgY2FsbGVkLgorICAgICIiIgorCisgICAgZGVmIGZpbmRfY29uZmlnX2ZpbGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5fY29uZmlnX2ZpbGVzCisKKworY2xhc3MgSW5wdXRzOgorICAgICIiIkZha2VzIHVzZXIgaW5wdXRzLiIiIgorICAgICMgVE9ETyBkb2N1bWVudCB1c2FnZQorICAgICMgVE9ETyB1c2UgY29udGV4dCBtYW5hZ2VyIG9yIHNvbWV0aGluZyBmb3IgYXV0byBjbGVhbnVwCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKmFuc3dlcnMpOgorICAgICAgICBzZWxmLmFuc3dlcnMgPSBhbnN3ZXJzCisgICAgICAgIHNlbGYuaW5kZXggPSAwCisKKyAgICBkZWYgX19jYWxsX18oc2VsZiwgcHJvbXB0PScnKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuYW5zd2Vyc1tzZWxmLmluZGV4XQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc2VsZi5pbmRleCArPSAxCisKKworZGVmIGNyZWF0ZV9kaXN0cmlidXRpb24oY29uZmlnZmlsZXM9KCkpOgorICAgICIiIlByZXBhcmVzIGEgZGlzdHJpYnV0aW9uIHdpdGggZ2l2ZW4gY29uZmlnIGZpbGVzIHBhcnNlZC4iIiIKKyAgICBkID0gVGVzdERpc3RyaWJ1dGlvbigpCisgICAgZC5jb25maWcuZmluZF9jb25maWdfZmlsZXMgPSBkLmZpbmRfY29uZmlnX2ZpbGVzCisgICAgZC5fY29uZmlnX2ZpbGVzID0gY29uZmlnZmlsZXMKKyAgICBkLnBhcnNlX2NvbmZpZ19maWxlcygpCisgICAgZC5wYXJzZV9jb21tYW5kX2xpbmUoKQorICAgIHJldHVybiBkCisKKworZGVmIHVzZV9jb21tYW5kKHRlc3RjYXNlLCBmdWxsbmFtZSk6CisgICAgIiIiUmVnaXN0ZXIgY29tbWFuZCBhdCAqZnVsbG5hbWUqIGZvciB0aGUgZHVyYXRpb24gb2YgYSB0ZXN0LiIiIgorICAgIHNldF9jb21tYW5kKGZ1bGxuYW1lKQorICAgICMgWFhYIG1heWJlIHNldF9jb21tYW5kIHNob3VsZCByZXR1cm4gdGhlIGNsYXNzIG9iamVjdAorICAgIG5hbWUgPSByZXNvbHZlX25hbWUoZnVsbG5hbWUpLmdldF9jb21tYW5kX25hbWUoKQorICAgICMgWFhYIG1heWJlIHdlIG5lZWQgYSBwdWJsaWMgQVBJIHRvIHJlbW92ZSBjb21tYW5kcworICAgIHRlc3RjYXNlLmFkZENsZWFudXAoX0NPTU1BTkRTLl9fZGVsaXRlbV9fLCBuYW1lKQorCisKK2RlZiBmYWtlX2RlYygqYXJncywgKiprdyk6CisgICAgIiIiRmFrZSBkZWNvcmF0b3IiIiIKKyAgICBkZWYgX3dyYXAoZnVuYyk6CisgICAgICAgIGRlZiBfX3dyYXAoKmFyZ3MsICoqa3cpOgorICAgICAgICAgICAgcmV0dXJuIGZ1bmMoKmFyZ3MsICoqa3cpCisgICAgICAgIHJldHVybiBfX3dyYXAKKyAgICByZXR1cm4gX3dyYXAKKworCitkZWYgY29weV94eG1vZHVsZV9jKGRpcmVjdG9yeSk6CisgICAgIiIiSGVscGVyIGZvciB0ZXN0cyB0aGF0IG5lZWQgdGhlIHh4bW9kdWxlLmMgc291cmNlIGZpbGUuCisKKyAgICBFeGFtcGxlIHVzZToKKworICAgICAgICBkZWYgdGVzdF9jb21waWxlKHNlbGYpOgorICAgICAgICAgICAgY29weV94eG1vZHVsZV9jKHNlbGYudG1wZGlyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigneHhtb2R1bGUuYycsIG9zLmxpc3RkaXIoc2VsZi50bXBkaXIpKQorCisgICAgSWYgdGhlIHNvdXJjZSBmaWxlIGNhbiBiZSBmb3VuZCwgaXQgd2lsbCBiZSBjb3BpZWQgdG8gKmRpcmVjdG9yeSouICBJZiBub3QsCisgICAgdGhlIHRlc3Qgd2lsbCBiZSBza2lwcGVkLiAgRXJyb3JzIGR1cmluZyBjb3B5IGFyZSBub3QgY2F1Z2h0LgorICAgICIiIgorICAgIGZpbGVuYW1lID0gX2dldF94eG1vZHVsZV9wYXRoKCkKKyAgICBpZiBmaWxlbmFtZSBpcyBOb25lOgorICAgICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgnY2Fubm90IGZpbmQgeHhtb2R1bGUuYyAodGVzdCBtdXN0IHJ1biBpbiAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aGUgcHl0aG9uIGJ1aWxkIGRpciknKQorICAgIHNodXRpbC5jb3B5KGZpbGVuYW1lLCBkaXJlY3RvcnkpCisKKworZGVmIF9nZXRfeHhtb2R1bGVfcGF0aCgpOgorICAgIHNyY2RpciA9IHN5c2NvbmZpZy5nZXRfY29uZmlnX3Zhcignc3JjZGlyJykKKyAgICBjYW5kaWRhdGVzID0gWworICAgICAgICAjIHVzZSBpbnN0YWxsZWQgY29weSBpZiBhdmFpbGFibGUKKyAgICAgICAgb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICd4eG1vZHVsZS5jJyksCisgICAgICAgICMgb3RoZXJ3aXNlIHRyeSB1c2luZyBjb3B5IGZyb20gYnVpbGQgZGlyZWN0b3J5CisgICAgICAgIG9zLnBhdGguam9pbihzcmNkaXIsICdNb2R1bGVzJywgJ3h4bW9kdWxlLmMnKSwKKyAgICBdCisgICAgZm9yIHBhdGggaW4gY2FuZGlkYXRlczoKKyAgICAgICAgaWYgb3MucGF0aC5leGlzdHMocGF0aCk6CisgICAgICAgICAgICByZXR1cm4gcGF0aAorCisKK2RlZiBmaXh1cF9idWlsZF9leHQoY21kKToKKyAgICAiIiJGdW5jdGlvbiBuZWVkZWQgdG8gbWFrZSBidWlsZF9leHQgdGVzdHMgcGFzcy4KKworICAgIFdoZW4gUHl0aG9uIHdhcyBidWlsdCB3aXRoIC0tZW5hYmxlLXNoYXJlZCBvbiBVbml4LCAtTC4gaXMgbm90IGVub3VnaCB0bworICAgIGZpbmQgbGlicHl0aG9uPGJsYWg+LnNvLCBiZWNhdXNlIHJlZ3J0ZXN0IHJ1bnMgaW4gYSB0ZW1wZGlyLCBub3QgaW4gdGhlCisgICAgc291cmNlIGRpcmVjdG9yeSB3aGVyZSB0aGUgLnNvIGxpdmVzLgorCisgICAgV2hlbiBQeXRob24gd2FzIGJ1aWx0IHdpdGggaW4gZGVidWcgbW9kZSBvbiBXaW5kb3dzLCBidWlsZF9leHQgY29tbWFuZHMKKyAgICBuZWVkIHRoZWlyIGRlYnVnIGF0dHJpYnV0ZSBzZXQsIGFuZCBpdCBpcyBub3QgZG9uZSBhdXRvbWF0aWNhbGx5IGZvcgorICAgIHNvbWUgcmVhc29uLgorCisgICAgVGhpcyBmdW5jdGlvbiBoYW5kbGVzIGJvdGggb2YgdGhlc2UgdGhpbmdzLiAgRXhhbXBsZSB1c2U6CisKKyAgICAgICAgY21kID0gYnVpbGRfZXh0KGRpc3QpCisgICAgICAgIHN1cHBvcnQuZml4dXBfYnVpbGRfZXh0KGNtZCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICIiIgorICAgIGlmIG9zLm5hbWUgPT0gJ250JzoKKyAgICAgICAgY21kLmRlYnVnID0gc3lzLmV4ZWN1dGFibGUuZW5kc3dpdGgoJ19kLmV4ZScpCisgICAgZWxpZiBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ1B5X0VOQUJMRV9TSEFSRUQnKToKKyAgICAgICAgIyBUbyBmdXJ0aGVyIGFkZCB0byB0aGUgc2hhcmVkIGJ1aWxkcyBmdW4gb24gVW5peCwgd2UgY2FuJ3QganVzdCBhZGQKKyAgICAgICAgIyBsaWJyYXJ5X2RpcnMgdG8gdGhlIEV4dGVuc2lvbigpIGluc3RhbmNlIGJlY2F1c2UgdGhhdCBkb2Vzbid0IGdldAorICAgICAgICAjIHBsdW1iZWQgdGhyb3VnaCB0byB0aGUgZmluYWwgY29tcGlsZXIgY29tbWFuZC4KKyAgICAgICAgcnVuc2hhcmVkID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdSVU5TSEFSRUQnKQorICAgICAgICBpZiBydW5zaGFyZWQgaXMgTm9uZToKKyAgICAgICAgICAgIGNtZC5saWJyYXJ5X2RpcnMgPSBbJy4nXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbmFtZSwgZXF1YWxzLCB2YWx1ZSA9IHJ1bnNoYXJlZC5wYXJ0aXRpb24oJz0nKQorICAgICAgICAgICAgY21kLmxpYnJhcnlfZGlycyA9IHZhbHVlLnNwbGl0KG9zLnBhdGhzZXApCisKKwordHJ5OgorICAgIGZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBza2lwX3VubGVzc19zeW1saW5rCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgc2tpcF91bmxlc3Nfc3ltbGluayA9IHVuaXR0ZXN0LnNraXAoCisgICAgICAgICdyZXF1aXJlcyB0ZXN0LnN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaycpCisKKworc2tpcF8ydG8zX29wdGltaXplID0gdW5pdHRlc3Quc2tpcElmKHN5cy5mbGFncy5vcHRpbWl6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiMnRvMyBkb2Vzbid0IHdvcmsgdW5kZXIgLU8iKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2Njb21waWxlci5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jY29tcGlsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGQ0YmRkOQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jY29tcGlsZXIucHkKQEAgLTAsMCArMSwxNSBAQAorIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5jb21waWxlci5jY29tcGlsZXIuIiIiCisKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCBjY29tcGlsZXIKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK2NsYXNzIENDb21waWxlclRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBwYXNzICAjIFhYWCBuZWVkIHNvbWUgdGVzdHMgb24gQ0NvbXBpbGVyCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKENDb21waWxlclRlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYmRpc3QucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9iZGlzdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YjJlYTAxCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYmRpc3QucHkKQEAgLTAsMCArMSw2MSBAQAorIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5jb21tYW5kLmJkaXN0LiIiIgoraW1wb3J0IG9zCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgY2FwdHVyZWRfc3Rkb3V0Citmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJkaXN0IGltcG9ydCBiZGlzdCwgc2hvd19mb3JtYXRzCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBCdWlsZFRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2Zvcm1hdHMoc2VsZik6CisgICAgICAgICMgbGV0J3MgY3JlYXRlIGEgY29tbWFuZCBhbmQgbWFrZSBzdXJlCisgICAgICAgICMgd2UgY2FuIHNldCB0aGUgZm9ybWF0CisgICAgICAgIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KClbMV0KKyAgICAgICAgY21kID0gYmRpc3QoZGlzdCkKKyAgICAgICAgY21kLmZvcm1hdHMgPSBbJ21zaSddCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZm9ybWF0cywgWydtc2knXSkKKworICAgICAgICAjIHdoYXQgZm9ybWF0cyBkb2VzIGJkaXN0IG9mZmVyPworICAgICAgICAjIFhYWCBoYXJkLWNvZGVkIGxpc3RzIGFyZSBub3QgdGhlIGJlc3Qgd2F5IHRvIGZpbmQgYXZhaWxhYmxlIGJkaXN0XyoKKyAgICAgICAgIyBjb21tYW5kczsgd2Ugc2hvdWxkIGFkZCBhIHJlZ2lzdHJ5CisgICAgICAgIGZvcm1hdHMgPSBbJ2J6dGFyJywgJ2d6dGFyJywgJ21zaScsICd0YXInLCAnd2luaW5zdCcsICd6aXAnXQorICAgICAgICBmb3VuZCA9IHNvcnRlZChjbWQuZm9ybWF0X2NvbW1hbmQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm91bmQsIGZvcm1hdHMpCisKKyAgICBkZWYgdGVzdF9za2lwX2J1aWxkKHNlbGYpOgorICAgICAgICAjIGJ1ZyAjMTA5NDY6IGJkaXN0IC0tc2tpcC1idWlsZCBzaG91bGQgdHJpY2tsZSBkb3duIHRvIHN1YmNvbW1hbmRzCisgICAgICAgIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KClbMV0KKyAgICAgICAgY21kID0gYmRpc3QoZGlzdCkKKyAgICAgICAgY21kLnNraXBfYnVpbGQgPSBUcnVlCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnYmRpc3QnXSA9IGNtZAorCisgICAgICAgIG5hbWVzID0gWydiZGlzdF9kdW1iJywgJ2JkaXN0X3dpbmluc3QnXQorICAgICAgICBpZiBvcy5uYW1lID09ICdudCc6CisgICAgICAgICAgICBuYW1lcy5hcHBlbmQoJ2JkaXN0X21zaScpCisKKyAgICAgICAgZm9yIG5hbWUgaW4gbmFtZXM6CisgICAgICAgICAgICBzdWJjbWQgPSBjbWQuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKG5hbWUpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoc3ViY21kLnNraXBfYnVpbGQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyVzIHNob3VsZCB0YWtlIC0tc2tpcC1idWlsZCBmcm9tIGJkaXN0JyAlIG5hbWUpCisKKyAgICBkZWYgdGVzdF9zaG93X2Zvcm1hdHMoc2VsZik6CisgICAgICAgIHdpdGggY2FwdHVyZWRfc3Rkb3V0KCkgYXMgc3Rkb3V0OgorICAgICAgICAgICAgc2hvd19mb3JtYXRzKCkKKyAgICAgICAgc3Rkb3V0ID0gc3Rkb3V0LmdldHZhbHVlKCkKKworICAgICAgICAjIHRoZSBvdXRwdXQgc2hvdWxkIGJlIGEgaGVhZGVyIGxpbmUgKyBvbmUgbGluZSBwZXIgZm9ybWF0CisgICAgICAgIG51bV9mb3JtYXRzID0gbGVuKGJkaXN0LmZvcm1hdF9jb21tYW5kcykKKyAgICAgICAgb3V0cHV0ID0gW2xpbmUgZm9yIGxpbmUgaW4gc3Rkb3V0LnNwbGl0KCdcbicpCisgICAgICAgICAgICAgICAgICBpZiBsaW5lLnN0cmlwKCkuc3RhcnRzd2l0aCgnLS1mb3JtYXRzPScpXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihvdXRwdXQpLCBudW1fZm9ybWF0cykKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoQnVpbGRUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2JkaXN0X2R1bWIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9iZGlzdF9kdW1iLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE1Y2Y2NTgKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9iZGlzdF9kdW1iLnB5CkBAIC0wLDAgKzEsOTEgQEAKKyIiIlRlc3RzIGZvciBkaXN0dXRpbHMuY29tbWFuZC5iZGlzdF9kdW1iLiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBpbXAKK2ltcG9ydCBzeXMKK2ltcG9ydCB6aXBmaWxlCitpbXBvcnQgcGFja2FnaW5nLnV0aWwKKworZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJkaXN0X2R1bWIgaW1wb3J0IGJkaXN0X2R1bWIKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorZnJvbSBwYWNrYWdpbmcudGVzdHMuc3VwcG9ydCBpbXBvcnQgcmVxdWlyZXNfemxpYgorCisKK2NsYXNzIEJ1aWxkRHVtYlRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihCdWlsZER1bWJUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLm9sZF9sb2NhdGlvbiA9IG9zLmdldGN3ZCgpCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIG9zLmNoZGlyKHNlbGYub2xkX2xvY2F0aW9uKQorICAgICAgICBwYWNrYWdpbmcudXRpbC5fcGF0aF9jcmVhdGVkLmNsZWFyKCkKKyAgICAgICAgc3VwZXIoQnVpbGREdW1iVGVzdENhc2UsIHNlbGYpLnRlYXJEb3duKCkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3Rfc2ltcGxlX2J1aWx0KHNlbGYpOgorCisgICAgICAgICMgbGV0J3MgY3JlYXRlIGEgc2ltcGxlIHBhY2thZ2UKKyAgICAgICAgdG1wX2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHBrZ19kaXIgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2ZvbycpCisgICAgICAgIG9zLm1rZGlyKHBrZ19kaXIpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnX2RpciwgJ2Zvby5weScpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnX2RpciwgJ01BTklGRVNULmluJyksICdpbmNsdWRlIGZvby5weScpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnX2RpciwgJ1JFQURNRScpLCAnJykKKworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICdmb28nLCAndmVyc2lvbic6ICcwLjEnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncHlfbW9kdWxlcyc6IFsnZm9vJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdob21lX3BhZ2UnOiAneHh4JywgJ2F1dGhvcic6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYXV0aG9yX2VtYWlsJzogJ3h4eCd9KQorICAgICAgICBvcy5jaGRpcihwa2dfZGlyKQorICAgICAgICBjbWQgPSBiZGlzdF9kdW1iKGRpc3QpCisKKyAgICAgICAgIyBzbyB0aGUgb3V0cHV0IGlzIHRoZSBzYW1lIG5vIG1hdHRlcgorICAgICAgICAjIHdoYXQgaXMgdGhlIHBsYXRmb3JtCisgICAgICAgIGNtZC5mb3JtYXQgPSAnemlwJworCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBzZWUgd2hhdCB3ZSBoYXZlCisgICAgICAgIGRpc3RfY3JlYXRlZCA9IG9zLmxpc3RkaXIob3MucGF0aC5qb2luKHBrZ19kaXIsICdkaXN0JykpCisgICAgICAgIGJhc2UgPSAiJXMuJXMuemlwIiAlIChkaXN0LmdldF9mdWxsbmFtZSgpLCBjbWQucGxhdF9uYW1lKQorICAgICAgICBpZiBvcy5uYW1lID09ICdvczInOgorICAgICAgICAgICAgYmFzZSA9IGJhc2UucmVwbGFjZSgnOicsICctJykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3RfY3JlYXRlZCwgW2Jhc2VdKQorCisgICAgICAgICMgbm93IGxldCdzIGNoZWNrIHdoYXQgd2UgaGF2ZSBpbiB0aGUgemlwIGZpbGUKKyAgICAgICAgd2l0aCB6aXBmaWxlLlppcEZpbGUob3MucGF0aC5qb2luKCdkaXN0JywgYmFzZSkpIGFzIGZwOgorICAgICAgICAgICAgY29udGVudHMgPSBmcC5uYW1lbGlzdCgpCisKKyAgICAgICAgY29udGVudHMgPSBzb3J0ZWQob3MucGF0aC5iYXNlbmFtZShmbikgZm9yIGZuIGluIGNvbnRlbnRzKQorICAgICAgICB3YW50ZWQgPSBbJ2Zvby5weScsCisgICAgICAgICAgICAgICAgICAnZm9vLiVzLnB5YycgJSBpbXAuZ2V0X3RhZygpLAorICAgICAgICAgICAgICAgICAgJ01FVEFEQVRBJywgJ0lOU1RBTExFUicsICdSRVFVRVNURUQnLCAnUkVDT1JEJ10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb250ZW50cywgc29ydGVkKHdhbnRlZCkpCisKKyAgICBkZWYgdGVzdF9maW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBwa2dfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIG9zLmNoZGlyKHBrZ19kaXIpCisgICAgICAgIGNtZCA9IGJkaXN0X2R1bWIoZGlzdCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuYmRpc3RfZGlyLCBOb25lKQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisKKyAgICAgICAgIyBiZGlzdF9kaXIgaXMgaW5pdGlhbGl6ZWQgdG8gYmRpc3RfYmFzZS9kdW1iIGlmIG5vdCBzZXQKKyAgICAgICAgYmFzZSA9IGNtZC5nZXRfZmluYWxpemVkX2NvbW1hbmQoJ2JkaXN0JykuYmRpc3RfYmFzZQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5iZGlzdF9kaXIsIG9zLnBhdGguam9pbihiYXNlLCAnZHVtYicpKQorCisgICAgICAgICMgdGhlIGZvcm1hdCBpcyBzZXQgdG8gYSBkZWZhdWx0IHZhbHVlIGRlcGVuZGluZyBvbiB0aGUgb3MubmFtZQorICAgICAgICBkZWZhdWx0ID0gY21kLmRlZmF1bHRfZm9ybWF0W29zLm5hbWVdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmZvcm1hdCwgZGVmYXVsdCkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoQnVpbGREdW1iVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9iZGlzdF9tc2kucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9iZGlzdF9tc2kucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmRlZDk2MgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2JkaXN0X21zaS5weQpAQCAtMCwwICsxLDI1IEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNvbW1hbmQuYmRpc3RfbXNpLiIiIgoraW1wb3J0IHN5cworCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBCRGlzdE1TSVRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKHN5cy5wbGF0Zm9ybSA9PSAid2luMzIiLCAicnVucyBvbmx5IG9uIHdpbjMyIikKKyAgICBkZWYgdGVzdF9taW5pbWFsKHNlbGYpOgorICAgICAgICAjIG1pbmltYWwgdGVzdCBYWFggbmVlZCBtb3JlIHRlc3RzCisgICAgICAgIGZyb20gcGFja2FnaW5nLmNvbW1hbmQuYmRpc3RfbXNpIGltcG9ydCBiZGlzdF9tc2kKKyAgICAgICAgcGtnX3B0aCwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBjbWQgPSBiZGlzdF9tc2koZGlzdCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShCRGlzdE1TSVRlc3RDYXNlKQorCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9iZGlzdF93aW5pbnN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYmRpc3Rfd2luaW5zdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wOWJkYWFkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYmRpc3Rfd2luaW5zdC5weQpAQCAtMCwwICsxLDMyIEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNvbW1hbmQuYmRpc3Rfd2luaW5zdC4iIiIKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5iZGlzdF93aW5pbnN0IGltcG9ydCBiZGlzdF93aW5pbnN0Citmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBCdWlsZFdpbkluc3RUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2dldF9leGVfYnl0ZXMoc2VsZik6CisKKyAgICAgICAgIyBpc3N1ZTU3MzE6IGNvbW1hbmQgd2FzIGJyb2tlbiBvbiBub24td2luZG93cyBwbGF0Zm9ybXMKKyAgICAgICAgIyB0aGlzIHRlc3QgbWFrZXMgc3VyZSBpdCB3b3JrcyBub3cgZm9yIGV2ZXJ5IHBsYXRmb3JtCisgICAgICAgICMgbGV0J3MgY3JlYXRlIGEgY29tbWFuZAorICAgICAgICBwa2dfcHRoLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGJkaXN0X3dpbmluc3QoZGlzdCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorCisgICAgICAgICMgbGV0J3MgcnVuIHRoZSBjb2RlIHRoYXQgZmluZHMgdGhlIHJpZ2h0IHdpbmluc3QqLmV4ZSBmaWxlCisgICAgICAgICMgYW5kIG1ha2Ugc3VyZSBpdCBmaW5kcyBpdCBhbmQgcmV0dXJucyBpdHMgY29udGVudAorICAgICAgICAjIG5vIG1hdHRlciB3aGF0IHBsYXRmb3JtIHdlIGhhdmUKKyAgICAgICAgZXhlX2ZpbGUgPSBjbWQuZ2V0X2V4ZV9ieXRlcygpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihsZW4oZXhlX2ZpbGUpLCAxMCkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoQnVpbGRXaW5JbnN0VGVzdENhc2UpCisKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2J1aWxkLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYnVpbGQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTFmYmU0MgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2J1aWxkLnB5CkBAIC0wLDAgKzEsNTUgQEAKKyIiIlRlc3RzIGZvciBkaXN0dXRpbHMuY29tbWFuZC5idWlsZC4iIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJ1aWxkIGltcG9ydCBidWlsZAorZnJvbSBzeXNjb25maWcgaW1wb3J0IGdldF9wbGF0Zm9ybQorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKKworY2xhc3MgQnVpbGRUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9maW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBwa2dfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGJ1aWxkKGRpc3QpCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKworICAgICAgICAjIGlmIG5vdCBzcGVjaWZpZWQsIHBsYXRfbmFtZSBnZXRzIHRoZSBjdXJyZW50IHBsYXRmb3JtCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLnBsYXRfbmFtZSwgZ2V0X3BsYXRmb3JtKCkpCisKKyAgICAgICAgIyBidWlsZF9wdXJlbGliIGlzIGJ1aWxkICsgbGliCisgICAgICAgIHdhbnRlZCA9IG9zLnBhdGguam9pbihjbWQuYnVpbGRfYmFzZSwgJ2xpYicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmJ1aWxkX3B1cmVsaWIsIHdhbnRlZCkKKworICAgICAgICAjIGJ1aWxkX3BsYXRsaWIgaXMgJ2J1aWxkL2xpYi5wbGF0Zm9ybS14LnhbLXB5ZGVidWddJworICAgICAgICAjIGV4YW1wbGVzOgorICAgICAgICAjICAgYnVpbGQvbGliLm1hY29zeC0xMC4zLWkzODYtMi43CisgICAgICAgIHBsYXRfc3BlYyA9ICcuJXMtJXMnICUgKGNtZC5wbGF0X25hbWUsIHN5cy52ZXJzaW9uWzA6M10pCisgICAgICAgIGlmIGhhc2F0dHIoc3lzLCAnZ2V0dG90YWxyZWZjb3VudCcpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNtZC5idWlsZF9wbGF0bGliLmVuZHN3aXRoKCctcHlkZWJ1ZycpKQorICAgICAgICAgICAgcGxhdF9zcGVjICs9ICctcHlkZWJ1ZycKKyAgICAgICAgd2FudGVkID0gb3MucGF0aC5qb2luKGNtZC5idWlsZF9iYXNlLCAnbGliJyArIHBsYXRfc3BlYykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuYnVpbGRfcGxhdGxpYiwgd2FudGVkKQorCisgICAgICAgICMgYnkgZGVmYXVsdCwgYnVpbGRfbGliID0gYnVpbGRfcHVyZWxpYgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5idWlsZF9saWIsIGNtZC5idWlsZF9wdXJlbGliKQorCisgICAgICAgICMgYnVpbGRfdGVtcCBpcyBidWlsZC90ZW1wLjxwbGF0PgorICAgICAgICB3YW50ZWQgPSBvcy5wYXRoLmpvaW4oY21kLmJ1aWxkX2Jhc2UsICd0ZW1wJyArIHBsYXRfc3BlYykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuYnVpbGRfdGVtcCwgd2FudGVkKQorCisgICAgICAgICMgYnVpbGRfc2NyaXB0cyBpcyBidWlsZC9zY3JpcHRzLXgueAorICAgICAgICB3YW50ZWQgPSBvcy5wYXRoLmpvaW4oY21kLmJ1aWxkX2Jhc2UsICdzY3JpcHRzLScgKyBzeXMudmVyc2lvblswOjNdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5idWlsZF9zY3JpcHRzLCB3YW50ZWQpCisKKyAgICAgICAgIyBleGVjdXRhYmxlIGlzIG9zLnBhdGgubm9ybXBhdGgoc3lzLmV4ZWN1dGFibGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmV4ZWN1dGFibGUsIG9zLnBhdGgubm9ybXBhdGgoc3lzLmV4ZWN1dGFibGUpKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShCdWlsZFRlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYnVpbGRfY2xpYi5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2J1aWxkX2NsaWIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTJhODU4MwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2J1aWxkX2NsaWIucHkKQEAgLTAsMCArMSwxNDEgQEAKKyIiIlRlc3RzIGZvciBkaXN0dXRpbHMuY29tbWFuZC5idWlsZF9jbGliLiIiIgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCisKK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0IGZpbmRfZXhlY3V0YWJsZQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5idWlsZF9jbGliIGltcG9ydCBidWlsZF9jbGliCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ1NldHVwRXJyb3IKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK2NsYXNzIEJ1aWxkQ0xpYlRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfY2hlY2tfbGlicmFyeV9kaXN0KHNlbGYpOgorICAgICAgICBwa2dfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGJ1aWxkX2NsaWIoZGlzdCkKKworICAgICAgICAjICdsaWJyYXJpZXMnIG9wdGlvbiBtdXN0IGJlIGEgbGlzdAorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdTZXR1cEVycm9yLCBjbWQuY2hlY2tfbGlicmFyeV9saXN0LCAnZm9vJykKKworICAgICAgICAjIGVhY2ggZWxlbWVudCBvZiAnbGlicmFyaWVzJyBtdXN0IGEgMi10dXBsZQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdTZXR1cEVycm9yLCBjbWQuY2hlY2tfbGlicmFyeV9saXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICBbJ2ZvbzEnLCAnZm9vMiddKQorCisgICAgICAgICMgZmlyc3QgZWxlbWVudCBvZiBlYWNoIHR1cGxlIGluICdsaWJyYXJpZXMnCisgICAgICAgICMgbXVzdCBiZSBhIHN0cmluZyAodGhlIGxpYnJhcnkgbmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLmNoZWNrX2xpYnJhcnlfbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgWygxLCAnZm9vMScpLCAoJ25hbWUnLCAnZm9vMicpXSkKKworICAgICAgICAjIGxpYnJhcnkgbmFtZSBtYXkgbm90IGNvbnRhaW4gZGlyZWN0b3J5IHNlcGFyYXRvcnMKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLmNoZWNrX2xpYnJhcnlfbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgWygnbmFtZScsICdmb28xJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ2Fub3RoZXIvbmFtZScsICdmb28yJyldKQorCisgICAgICAgICMgc2Vjb25kIGVsZW1lbnQgb2YgZWFjaCB0dXBsZSBtdXN0IGJlIGEgZGljdGlvbmFyeSAoYnVpbGQgaW5mbykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLmNoZWNrX2xpYnJhcnlfbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgWygnbmFtZScsIHt9KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICgnYW5vdGhlcicsICdmb28yJyldKQorCisgICAgICAgICMgdGhvc2Ugd29yaworICAgICAgICBsaWJzID0gWygnbmFtZScsIHt9KSwgKCduYW1lJywgeydvayc6ICdnb29kJ30pXQorICAgICAgICBjbWQuY2hlY2tfbGlicmFyeV9saXN0KGxpYnMpCisKKyAgICBkZWYgdGVzdF9nZXRfc291cmNlX2ZpbGVzKHNlbGYpOgorICAgICAgICBwa2dfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGJ1aWxkX2NsaWIoZGlzdCkKKworICAgICAgICAjICJpbiAnbGlicmFyaWVzJyBvcHRpb24gJ3NvdXJjZXMnIG11c3QgYmUgcHJlc2VudCBhbmQgbXVzdCBiZQorICAgICAgICAjIGEgbGlzdCBvZiBzb3VyY2UgZmlsZW5hbWVzCisgICAgICAgIGNtZC5saWJyYXJpZXMgPSBbKCduYW1lJywge30pXQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdTZXR1cEVycm9yLCBjbWQuZ2V0X3NvdXJjZV9maWxlcykKKworICAgICAgICBjbWQubGlicmFyaWVzID0gWygnbmFtZScsIHsnc291cmNlcyc6IDF9KV0KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLmdldF9zb3VyY2VfZmlsZXMpCisKKyAgICAgICAgY21kLmxpYnJhcmllcyA9IFsoJ25hbWUnLCB7J3NvdXJjZXMnOiBbJ2EnLCAnYiddfSldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmdldF9zb3VyY2VfZmlsZXMoKSwgWydhJywgJ2InXSkKKworICAgICAgICBjbWQubGlicmFyaWVzID0gWygnbmFtZScsIHsnc291cmNlcyc6ICgnYScsICdiJyl9KV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZ2V0X3NvdXJjZV9maWxlcygpLCBbJ2EnLCAnYiddKQorCisgICAgICAgIGNtZC5saWJyYXJpZXMgPSBbKCduYW1lJywgeydzb3VyY2VzJzogKCdhJywgJ2InKX0pLAorICAgICAgICAgICAgICAgICAgICAgICAgICgnbmFtZTInLCB7J3NvdXJjZXMnOiBbJ2MnLCAnZCddfSldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmdldF9zb3VyY2VfZmlsZXMoKSwgWydhJywgJ2InLCAnYycsICdkJ10pCisKKyAgICBkZWYgdGVzdF9idWlsZF9saWJyYXJpZXMoc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gYnVpbGRfY2xpYihkaXN0KQorCisgICAgICAgIGNsYXNzIEZha2VDb21waWxlcjoKKyAgICAgICAgICAgIGRlZiBjb21waWxlKCphcmdzLCAqKmt3KToKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICBjcmVhdGVfc3RhdGljX2xpYiA9IGNvbXBpbGUKKworICAgICAgICBjbWQuY29tcGlsZXIgPSBGYWtlQ29tcGlsZXIoKQorCisgICAgICAgICMgYnVpbGRfbGlicmFyaWVzIGlzIGFsc28gZG9pbmcgYSBiaXQgb2YgdHlwZSBjaGVja2luZworICAgICAgICBsaWIgPSBbKCduYW1lJywgeydzb3VyY2VzJzogJ25vdHZhbGlkJ30pXQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdTZXR1cEVycm9yLCBjbWQuYnVpbGRfbGlicmFyaWVzLCBsaWIpCisKKyAgICAgICAgbGliID0gWygnbmFtZScsIHsnc291cmNlcyc6IFtdfSldCisgICAgICAgIGNtZC5idWlsZF9saWJyYXJpZXMobGliKQorCisgICAgICAgIGxpYiA9IFsoJ25hbWUnLCB7J3NvdXJjZXMnOiAoKX0pXQorICAgICAgICBjbWQuYnVpbGRfbGlicmFyaWVzKGxpYikKKworICAgIGRlZiB0ZXN0X2ZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gYnVpbGRfY2xpYihkaXN0KQorCisgICAgICAgIGNtZC5pbmNsdWRlX2RpcnMgPSAnb25lLWRpcicKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5pbmNsdWRlX2RpcnMsIFsnb25lLWRpciddKQorCisgICAgICAgIGNtZC5pbmNsdWRlX2RpcnMgPSBOb25lCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuaW5jbHVkZV9kaXJzLCBbXSkKKworICAgICAgICBjbWQuZGlzdHJpYnV0aW9uLmxpYnJhcmllcyA9ICdXT05UV09SSycKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLmZpbmFsaXplX29wdGlvbnMpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInLCAnZGlzYWJsZWQgb24gd2luMzInKQorICAgIGRlZiB0ZXN0X3J1bihzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBjbWQgPSBidWlsZF9jbGliKGRpc3QpCisKKyAgICAgICAgZm9vX2MgPSBvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ2Zvby5jJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGZvb19jLCAnaW50IG1haW4odm9pZCkgeyByZXR1cm4gMTt9XG4nKQorICAgICAgICBjbWQubGlicmFyaWVzID0gWygnZm9vJywgeydzb3VyY2VzJzogW2Zvb19jXX0pXQorCisgICAgICAgIGJ1aWxkX3RlbXAgPSBvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ2J1aWxkJykKKyAgICAgICAgb3MubWtkaXIoYnVpbGRfdGVtcCkKKyAgICAgICAgY21kLmJ1aWxkX3RlbXAgPSBidWlsZF90ZW1wCisgICAgICAgIGNtZC5idWlsZF9jbGliID0gYnVpbGRfdGVtcAorCisgICAgICAgICMgYmVmb3JlIHdlIHJ1biB0aGUgY29tbWFuZCwgd2Ugd2FudCB0byBtYWtlIHN1cmUKKyAgICAgICAgIyBhbGwgY29tbWFuZHMgYXJlIHByZXNlbnQgb24gdGhlIHN5c3RlbQorICAgICAgICAjIGJ5IGNyZWF0aW5nIGEgY29tcGlsZXIgYW5kIGNoZWNraW5nIGl0cyBleGVjdXRhYmxlcworICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgbmV3X2NvbXBpbGVyLCBjdXN0b21pemVfY29tcGlsZXIKKworICAgICAgICBjb21waWxlciA9IG5ld19jb21waWxlcigpCisgICAgICAgIGN1c3RvbWl6ZV9jb21waWxlcihjb21waWxlcikKKyAgICAgICAgZm9yIGNjbWQgaW4gY29tcGlsZXIuZXhlY3V0YWJsZXMudmFsdWVzKCk6CisgICAgICAgICAgICBpZiBjY21kIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGlmIGZpbmRfZXhlY3V0YWJsZShjY21kWzBdKSBpcyBOb25lOgorICAgICAgICAgICAgICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJjYW4ndCB0ZXN0IikKKworICAgICAgICAjIHRoaXMgc2hvdWxkIHdvcmsKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBsZXQncyBjaGVjayB0aGUgcmVzdWx0CisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2xpYmZvby5hJywgb3MubGlzdGRpcihidWlsZF90ZW1wKSkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoQnVpbGRDTGliVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9leHQucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9leHQucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDg4M2YzOAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2J1aWxkX2V4dC5weQpAQCAtMCwwICsxLDM5MyBAQAoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgc2l0ZQoraW1wb3J0IHN5c2NvbmZpZworaW1wb3J0IHRleHR3cmFwCitmcm9tIHBhY2thZ2luZy5kaXN0IGltcG9ydCBEaXN0cmlidXRpb24KK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKFVua25vd25GaWxlRXJyb3IsIENvbXBpbGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IpCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJ1aWxkX2V4dCBpbXBvcnQgYnVpbGRfZXh0Citmcm9tIHBhY2thZ2luZy5jb21waWxlci5leHRlbnNpb24gaW1wb3J0IEV4dGVuc2lvbgorCitmcm9tIHRlc3Quc2NyaXB0X2hlbHBlciBpbXBvcnQgYXNzZXJ0X3B5dGhvbl9vaworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHN1cHBvcnQsIHVuaXR0ZXN0CisKKworY2xhc3MgQnVpbGRFeHRUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihCdWlsZEV4dFRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYudG1wX2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNlbGYub2xkX3VzZXJfYmFzZSA9IHNpdGUuVVNFUl9CQVNFCisgICAgICAgIHNpdGUuVVNFUl9CQVNFID0gc2VsZi5ta2R0ZW1wKCkKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc2l0ZS5VU0VSX0JBU0UgPSBzZWxmLm9sZF91c2VyX2Jhc2UKKyAgICAgICAgc3VwZXIoQnVpbGRFeHRUZXN0Q2FzZSwgc2VsZikudGVhckRvd24oKQorCisgICAgZGVmIHRlc3RfYnVpbGRfZXh0KHNlbGYpOgorICAgICAgICBzdXBwb3J0LmNvcHlfeHhtb2R1bGVfYyhzZWxmLnRtcF9kaXIpCisgICAgICAgIHh4X2MgPSBvcy5wYXRoLmpvaW4oc2VsZi50bXBfZGlyLCAneHhtb2R1bGUuYycpCisgICAgICAgIHh4X2V4dCA9IEV4dGVuc2lvbigneHgnLCBbeHhfY10pCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ3h4JywgJ2V4dF9tb2R1bGVzJzogW3h4X2V4dF19KQorICAgICAgICBkaXN0LnBhY2thZ2VfZGlyID0gc2VsZi50bXBfZGlyCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBzdXBwb3J0LmZpeHVwX2J1aWxkX2V4dChjbWQpCisgICAgICAgIGNtZC5idWlsZF9saWIgPSBzZWxmLnRtcF9kaXIKKyAgICAgICAgY21kLmJ1aWxkX3RlbXAgPSBzZWxmLnRtcF9kaXIKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICBjb2RlID0gdGV4dHdyYXAuZGVkZW50KCIiIlwKKyAgICAgICAgICAgIGltcG9ydCBzeXMKKyAgICAgICAgICAgIHN5cy5wYXRoLmluc2VydCgwLCAlcikKKworICAgICAgICAgICAgaW1wb3J0IHh4CisKKyAgICAgICAgICAgIGZvciBhdHRyIGluICgnZXJyb3InLCAnZm9vJywgJ25ldycsICdyb2onKToKKyAgICAgICAgICAgICAgICBhc3NlcnQgaGFzYXR0cih4eCwgYXR0cikKKworICAgICAgICAgICAgYXNzZXJ0IHh4LmZvbygyLCA1KSA9PSA3CisgICAgICAgICAgICBhc3NlcnQgeHguZm9vKDEzLCAxNSkgPT0gMjgKKyAgICAgICAgICAgIGFzc2VydCB4eC5uZXcoKS5kZW1vKCkgaXMgTm9uZQorICAgICAgICAgICAgZG9jID0gJ1RoaXMgaXMgYSB0ZW1wbGF0ZSBtb2R1bGUganVzdCBmb3IgaW5zdHJ1Y3Rpb24uJworICAgICAgICAgICAgYXNzZXJ0IHh4Ll9fZG9jX18gPT0gZG9jCisgICAgICAgICAgICBhc3NlcnQgaXNpbnN0YW5jZSh4eC5OdWxsKCksIHh4Lk51bGwpCisgICAgICAgICAgICBhc3NlcnQgaXNpbnN0YW5jZSh4eC5TdHIoKSwgeHguU3RyKQorICAgICAgICAgICAgIiIiKQorICAgICAgICBjb2RlID0gY29kZSAlIHNlbGYudG1wX2RpcgorICAgICAgICBhc3NlcnRfcHl0aG9uX29rKCctYycsIGNvZGUpCisKKyAgICBkZWYgdGVzdF9zb2xhcmlzX2VuYWJsZV9zaGFyZWQoc2VsZik6CisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ3h4J30pCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBvbGQgPSBzeXMucGxhdGZvcm0KKworICAgICAgICBzeXMucGxhdGZvcm0gPSAnc3Vub3MnICAjIGZvb2xpbmcgZmluYWxpemVfb3B0aW9ucworCisgICAgICAgIG9sZF92YXIgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ1B5X0VOQUJMRV9TSEFSRUQnKQorICAgICAgICBzeXNjb25maWcuX0NPTkZJR19WQVJTWydQeV9FTkFCTEVfU0hBUkVEJ10gPSAxCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHN5cy5wbGF0Zm9ybSA9IG9sZAorICAgICAgICAgICAgaWYgb2xkX3ZhciBpcyBOb25lOgorICAgICAgICAgICAgICAgIGRlbCBzeXNjb25maWcuX0NPTkZJR19WQVJTWydQeV9FTkFCTEVfU0hBUkVEJ10KKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc3lzY29uZmlnLl9DT05GSUdfVkFSU1snUHlfRU5BQkxFX1NIQVJFRCddID0gb2xkX3ZhcgorCisgICAgICAgICMgbWFrZSBzdXJlIHdlIGdldCBzb21lIGxpYnJhcnkgZGlycyB1bmRlciBzb2xhcmlzCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihsZW4oY21kLmxpYnJhcnlfZGlycyksIDApCisKKyAgICBkZWYgdGVzdF91c2VyX3NpdGUoc2VsZik6CisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ3h4J30pCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorCisgICAgICAgICMgbWFraW5nIHN1cmUgdGhlIHVzZXIgb3B0aW9uIGlzIHRoZXJlCisgICAgICAgIG9wdGlvbnMgPSBbbmFtZSBmb3IgbmFtZSwgc2hvcnQsIGxhYmVsIGluCisgICAgICAgICAgICAgICAgICAgY21kLnVzZXJfb3B0aW9uc10KKyAgICAgICAgc2VsZi5hc3NlcnRJbigndXNlcicsIG9wdGlvbnMpCisKKyAgICAgICAgIyBzZXR0aW5nIGEgdmFsdWUKKyAgICAgICAgY21kLnVzZXIgPSBUcnVlCisKKyAgICAgICAgIyBzZXR0aW5nIHVzZXIgYmFzZWQgbGliIGFuZCBpbmNsdWRlCisgICAgICAgIGxpYiA9IG9zLnBhdGguam9pbihzaXRlLlVTRVJfQkFTRSwgJ2xpYicpCisgICAgICAgIGluY2wgPSBvcy5wYXRoLmpvaW4oc2l0ZS5VU0VSX0JBU0UsICdpbmNsdWRlJykKKyAgICAgICAgb3MubWtkaXIobGliKQorICAgICAgICBvcy5ta2RpcihpbmNsKQorCisgICAgICAgICMgbGV0J3MgcnVuIGZpbmFsaXplCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKworICAgICAgICAjIHNlZSBpZiBpbmNsdWRlX2RpcnMgYW5kIGxpYnJhcnlfZGlycworICAgICAgICAjIHdlcmUgc2V0CisgICAgICAgIHNlbGYuYXNzZXJ0SW4obGliLCBjbWQubGlicmFyeV9kaXJzKQorICAgICAgICBzZWxmLmFzc2VydEluKGxpYiwgY21kLnJwYXRoKQorICAgICAgICBzZWxmLmFzc2VydEluKGluY2wsIGNtZC5pbmNsdWRlX2RpcnMpCisKKyAgICBkZWYgdGVzdF9vcHRpb25hbF9leHRlbnNpb24oc2VsZik6CisKKyAgICAgICAgIyB0aGlzIGV4dGVuc2lvbiB3aWxsIGZhaWwsIGJ1dCBsZXQncyBpZ25vcmUgdGhpcyBmYWlsdXJlCisgICAgICAgICMgd2l0aCB0aGUgb3B0aW9uYWwgYXJndW1lbnQuCisgICAgICAgIG1vZHVsZXMgPSBbRXh0ZW5zaW9uKCdmb28nLCBbJ3h4eCddLCBvcHRpb25hbD1GYWxzZSldCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ3h4JywgJ2V4dF9tb2R1bGVzJzogbW9kdWxlc30pCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKChVbmtub3duRmlsZUVycm9yLCBDb21waWxlRXJyb3IpLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjbWQucnVuKSAgIyBzaG91bGQgcmFpc2UgYW4gZXJyb3IKKworICAgICAgICBtb2R1bGVzID0gW0V4dGVuc2lvbignZm9vJywgWyd4eHgnXSwgb3B0aW9uYWw9VHJ1ZSldCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ3h4JywgJ2V4dF9tb2R1bGVzJzogbW9kdWxlc30pCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKSAgIyBzaG91bGQgcGFzcworCisgICAgZGVmIHRlc3RfZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIyBNYWtlIHN1cmUgUHl0aG9uJ3MgaW5jbHVkZSBkaXJlY3RvcmllcyAoZm9yIFB5dGhvbi5oLCBweWNvbmZpZy5oLAorICAgICAgICAjIGV0Yy4pIGFyZSBpbiB0aGUgaW5jbHVkZSBzZWFyY2ggcGF0aC4KKyAgICAgICAgbW9kdWxlcyA9IFtFeHRlbnNpb24oJ2ZvbycsIFsneHh4J10sIG9wdGlvbmFsPUZhbHNlKV0KKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbih7J25hbWUnOiAneHgnLCAnZXh0X21vZHVsZXMnOiBtb2R1bGVzfSkKKyAgICAgICAgY21kID0gYnVpbGRfZXh0KGRpc3QpCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKworICAgICAgICBweV9pbmNsdWRlID0gc3lzY29uZmlnLmdldF9wYXRoKCdpbmNsdWRlJykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihweV9pbmNsdWRlLCBjbWQuaW5jbHVkZV9kaXJzKQorCisgICAgICAgIHBsYXRfcHlfaW5jbHVkZSA9IHN5c2NvbmZpZy5nZXRfcGF0aCgncGxhdGluY2x1ZGUnKQorICAgICAgICBzZWxmLmFzc2VydEluKHBsYXRfcHlfaW5jbHVkZSwgY21kLmluY2x1ZGVfZGlycykKKworICAgICAgICAjIG1ha2Ugc3VyZSBjbWQubGlicmFyaWVzIGlzIHR1cm5lZCBpbnRvIGEgbGlzdAorICAgICAgICAjIGlmIGl0J3MgYSBzdHJpbmcKKyAgICAgICAgY21kID0gYnVpbGRfZXh0KGRpc3QpCisgICAgICAgIGNtZC5saWJyYXJpZXMgPSAnbXlfbGliJworICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmxpYnJhcmllcywgWydteV9saWInXSkKKworICAgICAgICAjIG1ha2Ugc3VyZSBjbWQubGlicmFyeV9kaXJzIGlzIHR1cm5lZCBpbnRvIGEgbGlzdAorICAgICAgICAjIGlmIGl0J3MgYSBzdHJpbmcKKyAgICAgICAgY21kID0gYnVpbGRfZXh0KGRpc3QpCisgICAgICAgIGNtZC5saWJyYXJ5X2RpcnMgPSAnbXlfbGliX2RpcicKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEluKCdteV9saWJfZGlyJywgY21kLmxpYnJhcnlfZGlycykKKworICAgICAgICAjIG1ha2Ugc3VyZSBycGF0aCBpcyB0dXJuZWQgaW50byBhIGxpc3QKKyAgICAgICAgIyBpZiBpdCdzIGEgbGlzdCBvZiBvcy5wYXRoc2VwJ3MgcGF0aHMKKyAgICAgICAgY21kID0gYnVpbGRfZXh0KGRpc3QpCisgICAgICAgIGNtZC5ycGF0aCA9IG9zLnBhdGhzZXAuam9pbihbJ29uZScsICd0d28nXSkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5ycGF0aCwgWydvbmUnLCAndHdvJ10pCisKKyAgICAgICAgIyBYWFggbW9yZSB0ZXN0cyB0byBwZXJmb3JtIGZvciB3aW4zMgorCisgICAgICAgICMgbWFrZSBzdXJlIGRlZmluZSBpcyB0dXJuZWQgaW50byAyLXR1cGxlcworICAgICAgICAjIHN0cmluZ3MgaWYgdGhleSBhcmUgJywnLXNlcGFyYXRlZCBzdHJpbmdzCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuZGVmaW5lID0gJ29uZSx0d28nCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZGVmaW5lLCBbKCdvbmUnLCAnMScpLCAoJ3R3bycsICcxJyldKQorCisgICAgICAgICMgbWFrZSBzdXJlIHVuZGVmIGlzIHR1cm5lZCBpbnRvIGEgbGlzdCBvZgorICAgICAgICAjIHN0cmluZ3MgaWYgdGhleSBhcmUgJywnLXNlcGFyYXRlZCBzdHJpbmdzCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQudW5kZWYgPSAnb25lLHR3bycKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC51bmRlZiwgWydvbmUnLCAndHdvJ10pCisKKyAgICAgICAgIyBtYWtlIHN1cmUgc3dpZ19vcHRzIGlzIHR1cm5lZCBpbnRvIGEgbGlzdAorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgY21kLnN3aWdfb3B0cyA9IE5vbmUKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5zd2lnX29wdHMsIFtdKQorCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuc3dpZ19vcHRzID0gJzEgMicKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5zd2lnX29wdHMsIFsnMScsICcyJ10pCisKKyAgICBkZWYgdGVzdF9nZXRfc291cmNlX2ZpbGVzKHNlbGYpOgorICAgICAgICBtb2R1bGVzID0gW0V4dGVuc2lvbignZm9vJywgWyd4eHgnXSwgb3B0aW9uYWw9RmFsc2UpXQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCcsICdleHRfbW9kdWxlcyc6IG1vZHVsZXN9KQorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5nZXRfc291cmNlX2ZpbGVzKCksIFsneHh4J10pCisKKyAgICBkZWYgdGVzdF9jb21waWxlcl9vcHRpb24oc2VsZik6CisgICAgICAgICMgY21kLmNvbXBpbGVyIGlzIGFuIG9wdGlvbiBhbmQKKyAgICAgICAgIyBzaG91bGQgbm90IGJlIG92ZXJyaWRlbiBieSBhIGNvbXBpbGVyIGluc3RhbmNlCisgICAgICAgICMgd2hlbiB0aGUgY29tbWFuZCBpcyBydW4KKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuY29tcGlsZXIgPSAndW5peCcKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuY29tcGlsZXIsICd1bml4JykKKworICAgIGRlZiB0ZXN0X2dldF9vdXRwdXRzKHNlbGYpOgorICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgY19maWxlID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdmb28uYycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShjX2ZpbGUsICd2b2lkIFB5SW5pdF9mb28odm9pZCkge31cbicpCisgICAgICAgIGV4dCA9IEV4dGVuc2lvbignZm9vJywgW2NfZmlsZV0sIG9wdGlvbmFsPUZhbHNlKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdleHRfbW9kdWxlcyc6IFtleHRdfSkKKyAgICAgICAgY21kID0gYnVpbGRfZXh0KGRpc3QpCisgICAgICAgIHN1cHBvcnQuZml4dXBfYnVpbGRfZXh0KGNtZCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbWQuZ2V0X291dHB1dHMoKSksIDEpCisKKyAgICAgICAgY21kLmJ1aWxkX2xpYiA9IG9zLnBhdGguam9pbihzZWxmLnRtcF9kaXIsICdidWlsZCcpCisgICAgICAgIGNtZC5idWlsZF90ZW1wID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJ3RlbXB0JykKKworICAgICAgICAjIGlzc3VlICM1OTc3IDogZGlzdHV0aWxzIGJ1aWxkX2V4dC5nZXRfb3V0cHV0cworICAgICAgICAjIHJldHVybnMgd3JvbmcgcmVzdWx0IHdpdGggLS1pbnBsYWNlCisgICAgICAgIG90aGVyX3RtcF9kaXIgPSBvcy5wYXRoLnJlYWxwYXRoKHNlbGYubWtkdGVtcCgpKQorICAgICAgICBvbGRfd2QgPSBvcy5nZXRjd2QoKQorICAgICAgICBvcy5jaGRpcihvdGhlcl90bXBfZGlyKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBjbWQuaW5wbGFjZSA9IFRydWUKKyAgICAgICAgICAgIGNtZC5ydW4oKQorICAgICAgICAgICAgc29fZmlsZSA9IGNtZC5nZXRfb3V0cHV0cygpWzBdCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jaGRpcihvbGRfd2QpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhzb19maWxlKSkKKyAgICAgICAgc29fZXh0ID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdTTycpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzb19maWxlLmVuZHN3aXRoKHNvX2V4dCkpCisgICAgICAgIHNvX2RpciA9IG9zLnBhdGguZGlybmFtZShzb19maWxlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNvX2Rpciwgb3RoZXJfdG1wX2RpcikKKworICAgICAgICBjbWQuaW5wbGFjZSA9IEZhbHNlCisgICAgICAgIGNtZC5ydW4oKQorICAgICAgICBzb19maWxlID0gY21kLmdldF9vdXRwdXRzKClbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKHNvX2ZpbGUpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoc29fZmlsZS5lbmRzd2l0aChzb19leHQpKQorICAgICAgICBzb19kaXIgPSBvcy5wYXRoLmRpcm5hbWUoc29fZmlsZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb19kaXIsIGNtZC5idWlsZF9saWIpCisKKyAgICAgICAgIyBpbnBsYWNlID0gRmFsc2UsIGNtZC5wYWNrYWdlID0gJ2JhcicKKyAgICAgICAgYnVpbGRfcHkgPSBjbWQuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdidWlsZF9weScpCisgICAgICAgIGJ1aWxkX3B5LnBhY2thZ2VfZGlyID0gJ2JhcicKKyAgICAgICAgcGF0aCA9IGNtZC5nZXRfZXh0X2Z1bGxwYXRoKCdmb28nKQorICAgICAgICAjIGNoZWNraW5nIHRoYXQgdGhlIGxhc3QgZGlyZWN0b3J5IGlzIHRoZSBidWlsZF9kaXIKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguc3BsaXQocGF0aClbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwYXRoLCBjbWQuYnVpbGRfbGliKQorCisgICAgICAgICMgaW5wbGFjZSA9IFRydWUsIGNtZC5wYWNrYWdlID0gJ2JhcicKKyAgICAgICAgY21kLmlucGxhY2UgPSBUcnVlCisgICAgICAgIG90aGVyX3RtcF9kaXIgPSBvcy5wYXRoLnJlYWxwYXRoKHNlbGYubWtkdGVtcCgpKQorICAgICAgICBvbGRfd2QgPSBvcy5nZXRjd2QoKQorICAgICAgICBvcy5jaGRpcihvdGhlcl90bXBfZGlyKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwYXRoID0gY21kLmdldF9leHRfZnVsbHBhdGgoJ2ZvbycpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jaGRpcihvbGRfd2QpCisgICAgICAgICMgY2hlY2tpbmcgdGhhdCB0aGUgbGFzdCBkaXJlY3RvcnkgaXMgYmFyCisgICAgICAgIHBhdGggPSBvcy5wYXRoLnNwbGl0KHBhdGgpWzBdCisgICAgICAgIGxhc3RkaXIgPSBvcy5wYXRoLnNwbGl0KHBhdGgpWy0xXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxhc3RkaXIsICdiYXInKQorCisgICAgZGVmIHRlc3RfZXh0X2Z1bGxwYXRoKHNlbGYpOgorICAgICAgICBleHQgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXJzKClbJ1NPJ10KKyAgICAgICAgIyBidWlsZGluZyBseG1sLmV0cmVlIGlucGxhY2UKKyAgICAgICAgI2V0cmVlX2MgPSBvcy5wYXRoLmpvaW4oc2VsZi50bXBfZGlyLCAnbHhtbC5ldHJlZS5jJykKKyAgICAgICAgI2V0cmVlX2V4dCA9IEV4dGVuc2lvbignbHhtbC5ldHJlZScsIFtldHJlZV9jXSkKKyAgICAgICAgI2Rpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ2x4bWwnLCAnZXh0X21vZHVsZXMnOiBbZXRyZWVfZXh0XX0pCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBjbWQgPSBidWlsZF9leHQoZGlzdCkKKyAgICAgICAgY21kLmlucGxhY2UgPSBUcnVlCisgICAgICAgIGNtZC5kaXN0cmlidXRpb24ucGFja2FnZV9kaXIgPSAnc3JjJworICAgICAgICBjbWQuZGlzdHJpYnV0aW9uLnBhY2thZ2VzID0gWydseG1sJywgJ2x4bWwuaHRtbCddCisgICAgICAgIGN1cmRpciA9IG9zLmdldGN3ZCgpCisgICAgICAgIHdhbnRlZCA9IG9zLnBhdGguam9pbihjdXJkaXIsICdzcmMnLCAnbHhtbCcsICdldHJlZScgKyBleHQpCisgICAgICAgIHBhdGggPSBjbWQuZ2V0X2V4dF9mdWxscGF0aCgnbHhtbC5ldHJlZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod2FudGVkLCBwYXRoKQorCisgICAgICAgICMgYnVpbGRpbmcgbHhtbC5ldHJlZSBub3QgaW5wbGFjZQorICAgICAgICBjbWQuaW5wbGFjZSA9IEZhbHNlCisgICAgICAgIGNtZC5idWlsZF9saWIgPSBvcy5wYXRoLmpvaW4oY3VyZGlyLCAndG1wZGlyJykKKyAgICAgICAgd2FudGVkID0gb3MucGF0aC5qb2luKGN1cmRpciwgJ3RtcGRpcicsICdseG1sJywgJ2V0cmVlJyArIGV4dCkKKyAgICAgICAgcGF0aCA9IGNtZC5nZXRfZXh0X2Z1bGxwYXRoKCdseG1sLmV0cmVlJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3YW50ZWQsIHBhdGgpCisKKyAgICAgICAgIyBidWlsZGluZyB0d2lzdGVkLnJ1bm5lci5wb3J0bWFwIG5vdCBpbnBsYWNlCisgICAgICAgIGJ1aWxkX3B5ID0gY21kLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnYnVpbGRfcHknKQorICAgICAgICBidWlsZF9weS5wYWNrYWdlX2RpciA9IE5vbmUKKyAgICAgICAgY21kLmRpc3RyaWJ1dGlvbi5wYWNrYWdlcyA9IFsndHdpc3RlZCcsICd0d2lzdGVkLnJ1bm5lci5wb3J0bWFwJ10KKyAgICAgICAgcGF0aCA9IGNtZC5nZXRfZXh0X2Z1bGxwYXRoKCd0d2lzdGVkLnJ1bm5lci5wb3J0bWFwJykKKyAgICAgICAgd2FudGVkID0gb3MucGF0aC5qb2luKGN1cmRpciwgJ3RtcGRpcicsICd0d2lzdGVkJywgJ3J1bm5lcicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9ydG1hcCcgKyBleHQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod2FudGVkLCBwYXRoKQorCisgICAgICAgICMgYnVpbGRpbmcgdHdpc3RlZC5ydW5uZXIucG9ydG1hcCBpbnBsYWNlCisgICAgICAgIGNtZC5pbnBsYWNlID0gVHJ1ZQorICAgICAgICBwYXRoID0gY21kLmdldF9leHRfZnVsbHBhdGgoJ3R3aXN0ZWQucnVubmVyLnBvcnRtYXAnKQorICAgICAgICB3YW50ZWQgPSBvcy5wYXRoLmpvaW4oY3VyZGlyLCAndHdpc3RlZCcsICdydW5uZXInLCAncG9ydG1hcCcgKyBleHQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod2FudGVkLCBwYXRoKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLAorICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXN0IG9ubHkgcmVsZXZhbnQgZm9yIE1hYyBPUyBYJykKKyAgICBkZWYgdGVzdF9kZXBsb3ltZW50X3RhcmdldF9kZWZhdWx0KHNlbGYpOgorICAgICAgICAjIElzc3VlIDk1MTY6IFRlc3QgdGhhdCwgaW4gdGhlIGFic2VuY2Ugb2YgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlLAorICAgICAgICAjIGFuIGV4dGVuc2lvbiBtb2R1bGUgaXMgY29tcGlsZWQgd2l0aCB0aGUgc2FtZSBkZXBsb3ltZW50IHRhcmdldCBhcworICAgICAgICAjICB0aGUgaW50ZXJwcmV0ZXIuCisgICAgICAgIHNlbGYuX3RyeV9jb21waWxlX2RlcGxveW1lbnRfdGFyZ2V0KCc9PScsIE5vbmUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gJ2RhcndpbicsCisgICAgICAgICAgICAgICAgICAgICAgICAgJ3Rlc3Qgb25seSByZWxldmFudCBmb3IgTWFjIE9TIFgnKQorICAgIGRlZiB0ZXN0X2RlcGxveW1lbnRfdGFyZ2V0X3Rvb19sb3coc2VsZik6CisgICAgICAgICMgSXNzdWUgOTUxNjogVGVzdCB0aGF0IGFuIGV4dGVuc2lvbiBtb2R1bGUgaXMgbm90IGFsbG93ZWQgdG8gYmUKKyAgICAgICAgIyBjb21waWxlZCB3aXRoIGEgZGVwbG95bWVudCB0YXJnZXQgbGVzcyB0aGFuIHRoYXQgb2YgdGhlIGludGVycHJldGVyLgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdQbGF0Zm9ybUVycm9yLAorICAgICAgICAgICAgc2VsZi5fdHJ5X2NvbXBpbGVfZGVwbG95bWVudF90YXJnZXQsICc+JywgJzEwLjEnKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLAorICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXN0IG9ubHkgcmVsZXZhbnQgZm9yIE1hYyBPUyBYJykKKyAgICBkZWYgdGVzdF9kZXBsb3ltZW50X3RhcmdldF9oaWdoZXJfb2soc2VsZik6CisgICAgICAgICMgSXNzdWUgOTUxNjogVGVzdCB0aGF0IGFuIGV4dGVuc2lvbiBtb2R1bGUgY2FuIGJlIGNvbXBpbGVkIHdpdGggYQorICAgICAgICAjIGRlcGxveW1lbnQgdGFyZ2V0IGhpZ2hlciB0aGFuIHRoYXQgb2YgdGhlIGludGVycHJldGVyOiB0aGUgZXh0CisgICAgICAgICMgbW9kdWxlIG1heSBkZXBlbmQgb24gc29tZSBuZXdlciBPUyBmZWF0dXJlLgorICAgICAgICBkZXB0YXJnZXQgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCcpCisgICAgICAgIGlmIGRlcHRhcmdldDoKKyAgICAgICAgICAgICMgaW5jcmVtZW50IHRoZSBtaW5vciB2ZXJzaW9uIG51bWJlciAoaS5lLiAxMC42IC0+IDEwLjcpCisgICAgICAgICAgICBkZXB0YXJnZXQgPSBbaW50KHgpIGZvciB4IGluIGRlcHRhcmdldC5zcGxpdCgnLicpXQorICAgICAgICAgICAgZGVwdGFyZ2V0Wy0xXSArPSAxCisgICAgICAgICAgICBkZXB0YXJnZXQgPSAnLicuam9pbihzdHIoaSkgZm9yIGkgaW4gZGVwdGFyZ2V0KQorICAgICAgICAgICAgc2VsZi5fdHJ5X2NvbXBpbGVfZGVwbG95bWVudF90YXJnZXQoJzwnLCBkZXB0YXJnZXQpCisKKyAgICBkZWYgX3RyeV9jb21waWxlX2RlcGxveW1lbnRfdGFyZ2V0KHNlbGYsIG9wZXJhdG9yLCB0YXJnZXQpOgorICAgICAgICBvcmlnX2Vudmlyb24gPSBvcy5lbnZpcm9uCisgICAgICAgIG9zLmVudmlyb24gPSBvcmlnX2Vudmlyb24uY29weSgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZXRhdHRyLCBvcywgJ2Vudmlyb24nLCBvcmlnX2Vudmlyb24pCisKKyAgICAgICAgaWYgdGFyZ2V0IGlzIE5vbmU6CisgICAgICAgICAgICBpZiBvcy5lbnZpcm9uLmdldCgnTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUJyk6CisgICAgICAgICAgICAgICAgZGVsIG9zLmVudmlyb25bJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCddCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBvcy5lbnZpcm9uWydNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQnXSA9IHRhcmdldAorCisgICAgICAgIGRlcHRhcmdldF9jID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJ2RlcHRhcmdldG1vZHVsZS5jJykKKworICAgICAgICB3aXRoIG9wZW4oZGVwdGFyZ2V0X2MsICd3JykgYXMgZnA6CisgICAgICAgICAgICBmcC53cml0ZSh0ZXh0d3JhcC5kZWRlbnQoJycnXAorICAgICAgICAgICAgICAgICNpbmNsdWRlIDxBdmFpbGFiaWxpdHlNYWNyb3MuaD4KKworICAgICAgICAgICAgICAgIGludCBkdW1teTsKKworICAgICAgICAgICAgICAgICNpZiBUQVJHRVQgJXMgTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVRVUlSRUQKKyAgICAgICAgICAgICAgICAjZWxzZQorICAgICAgICAgICAgICAgICNlcnJvciAiVW5leHBlY3RlZCB0YXJnZXQiCisgICAgICAgICAgICAgICAgI2VuZGlmCisKKyAgICAgICAgICAgICcnJyAlIG9wZXJhdG9yKSkKKworICAgICAgICAjIGdldCB0aGUgZGVwbG95bWVudCB0YXJnZXQgdGhhdCB0aGUgaW50ZXJwcmV0ZXIgd2FzIGJ1aWx0IHdpdGgKKyAgICAgICAgdGFyZ2V0ID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQnKQorICAgICAgICB0YXJnZXQgPSB0dXBsZShtYXAoaW50LCB0YXJnZXQuc3BsaXQoJy4nKSkpCisgICAgICAgIHRhcmdldCA9ICclMDJkJTAxZDAnICUgdGFyZ2V0CisKKyAgICAgICAgZGVwdGFyZ2V0X2V4dCA9IEV4dGVuc2lvbigKKyAgICAgICAgICAgICdkZXB0YXJnZXQnLAorICAgICAgICAgICAgW2RlcHRhcmdldF9jXSwKKyAgICAgICAgICAgIGV4dHJhX2NvbXBpbGVfYXJncz1bJy1EVEFSR0VUPSVzJyAlICh0YXJnZXQsKV0sCisgICAgICAgICkKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbih7CisgICAgICAgICAgICAnbmFtZSc6ICdkZXB0YXJnZXQnLAorICAgICAgICAgICAgJ2V4dF9tb2R1bGVzJzogW2RlcHRhcmdldF9leHRdLAorICAgICAgICB9KQorICAgICAgICBkaXN0LnBhY2thZ2VfZGlyID0gc2VsZi50bXBfZGlyCisgICAgICAgIGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBjbWQuYnVpbGRfbGliID0gc2VsZi50bXBfZGlyCisgICAgICAgIGNtZC5idWlsZF90ZW1wID0gc2VsZi50bXBfZGlyCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICAgICAgY21kLnJ1bigpCisgICAgICAgIGV4Y2VwdCBDb21waWxlRXJyb3I6CisgICAgICAgICAgICBzZWxmLmZhaWwoIldyb25nIGRlcGxveW1lbnQgdGFyZ2V0IGR1cmluZyBjb21waWxhdGlvbiIpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKEJ1aWxkRXh0VGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9weS5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2J1aWxkX3B5LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY3ZjI2ZGEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9weS5weQpAQCAtMCwwICsxLDEzNiBAQAorIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5jb21tYW5kLmJ1aWxkX3B5LiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCBpbXAKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5idWlsZF9weSBpbXBvcnQgYnVpbGRfcHkKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdGaWxlRXJyb3IKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKKworY2xhc3MgQnVpbGRQeVRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9wYWNrYWdlX2RhdGEoc2VsZik6CisgICAgICAgIHNvdXJjZXMgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBwa2dfZGlyID0gb3MucGF0aC5qb2luKHNvdXJjZXMsICdwa2cnKQorICAgICAgICBvcy5ta2Rpcihwa2dfZGlyKQorICAgICAgICBmID0gb3Blbihvcy5wYXRoLmpvaW4ocGtnX2RpciwgIl9faW5pdF9fLnB5IiksICJ3IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZi53cml0ZSgiIyBQcmV0ZW5kIHRoaXMgaXMgYSBwYWNrYWdlLiIpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgZiA9IG9wZW4ob3MucGF0aC5qb2luKHBrZ19kaXIsICJSRUFETUUudHh0IiksICJ3IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZi53cml0ZSgiSW5mbyBhYm91dCB0aGlzIHBhY2thZ2UiKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZi5jbG9zZSgpCisKKyAgICAgICAgZGVzdGluYXRpb24gPSBzZWxmLm1rZHRlbXAoKQorCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oeyJwYWNrYWdlcyI6IFsicGtnIl0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYWNrYWdlX2RpciI6IHNvdXJjZXN9KQorCisgICAgICAgIGRpc3QuY29tbWFuZF9vYmpbImJ1aWxkIl0gPSBzdXBwb3J0LkR1bW15Q29tbWFuZCgKKyAgICAgICAgICAgIGZvcmNlPUZhbHNlLAorICAgICAgICAgICAgYnVpbGRfbGliPWRlc3RpbmF0aW9uLAorICAgICAgICAgICAgdXNlXzJ0bzNfZml4ZXJzPU5vbmUsCisgICAgICAgICAgICBjb252ZXJ0XzJ0bzNfZG9jdGVzdHM9Tm9uZSwKKyAgICAgICAgICAgIHVzZV8ydG8zPUZhbHNlKQorICAgICAgICBkaXN0LnBhY2thZ2VzID0gWyJwa2ciXQorICAgICAgICBkaXN0LnBhY2thZ2VfZGF0YSA9IHsicGtnIjogWyJSRUFETUUudHh0Il19CisgICAgICAgIGRpc3QucGFja2FnZV9kaXIgPSBzb3VyY2VzCisKKyAgICAgICAgY21kID0gYnVpbGRfcHkoZGlzdCkKKyAgICAgICAgY21kLmNvbXBpbGUgPSBUcnVlCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQucGFja2FnZV9kYXRhLCBkaXN0LnBhY2thZ2VfZGF0YSkKKworICAgICAgICBjbWQucnVuKCkKKworICAgICAgICAjIFRoaXMgbWFrZXMgc3VyZSB0aGUgbGlzdCBvZiBvdXRwdXRzIGluY2x1ZGVzIGJ5dGUtY29tcGlsZWQKKyAgICAgICAgIyBmaWxlcyBmb3IgUHl0aG9uIG1vZHVsZXMgYnV0IG5vdCBmb3IgcGFja2FnZSBkYXRhIGZpbGVzCisgICAgICAgICMgKHRoZXJlIHNob3VsZG4ndCAqYmUqIGJ5dGUtY29kZSBmaWxlcyBmb3IgdGhvc2UhKS4KKyAgICAgICAgIworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbWQuZ2V0X291dHB1dHMoKSksIDMpCisgICAgICAgIHBrZ2Rlc3QgPSBvcy5wYXRoLmpvaW4oZGVzdGluYXRpb24sICJwa2ciKQorICAgICAgICBmaWxlcyA9IG9zLmxpc3RkaXIocGtnZGVzdCkKKyAgICAgICAgcHljYWNoZV9kaXIgPSBvcy5wYXRoLmpvaW4ocGtnZGVzdCwgIl9fcHljYWNoZV9fIikKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiX19pbml0X18ucHkiLCBmaWxlcykKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiUkVBRE1FLnR4dCIsIGZpbGVzKQorICAgICAgICBweWNfZmlsZXMgPSBvcy5saXN0ZGlyKHB5Y2FjaGVfZGlyKQorICAgICAgICBzZWxmLmFzc2VydEluKCJfX2luaXRfXy4lcy5weWMiICUgaW1wLmdldF90YWcoKSwgcHljX2ZpbGVzKQorCisgICAgZGVmIHRlc3RfZW1wdHlfcGFja2FnZV9kaXIoc2VsZik6CisgICAgICAgICMgU2VlIFNGIDE2Njg1OTYvMTcyMDg5Ny4KKyAgICAgICAgIyBjcmVhdGUgdGhlIGRpc3RyaWJ1dGlvbiBmaWxlcy4KKyAgICAgICAgc291cmNlcyA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHBrZyA9IG9zLnBhdGguam9pbihzb3VyY2VzLCAncGtnJykKKyAgICAgICAgb3MubWtkaXIocGtnKQorICAgICAgICBvcGVuKG9zLnBhdGguam9pbihwa2csICJfX2luaXRfXy5weSIpLCAid2IiKS5jbG9zZSgpCisgICAgICAgIHRlc3RkaXIgPSBvcy5wYXRoLmpvaW4ocGtnLCAiZG9jIikKKyAgICAgICAgb3MubWtkaXIodGVzdGRpcikKKyAgICAgICAgb3Blbihvcy5wYXRoLmpvaW4odGVzdGRpciwgInRlc3RmaWxlIiksICJ3YiIpLmNsb3NlKCkKKworICAgICAgICBvcy5jaGRpcihzb3VyY2VzKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsicGFja2FnZXMiOiBbInBrZyJdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFja2FnZV9kaXIiOiBzb3VyY2VzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFja2FnZV9kYXRhIjogeyJwa2ciOiBbImRvYy8qIl19fSkKKyAgICAgICAgZGlzdC5zY3JpcHRfYXJncyA9IFsiYnVpbGQiXQorICAgICAgICBkaXN0LnBhcnNlX2NvbW1hbmRfbGluZSgpCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZGlzdC5ydW5fY29tbWFuZHMoKQorICAgICAgICBleGNlcHQgUGFja2FnaW5nRmlsZUVycm9yOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJmYWlsZWQgcGFja2FnZV9kYXRhIHRlc3Qgd2hlbiBwYWNrYWdlX2RpciBpcyAnJyIpCisKKyAgICBkZWYgdGVzdF9ieXRlX2NvbXBpbGUoc2VsZik6CisgICAgICAgIHByb2plY3RfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdChweV9tb2R1bGVzPVsnYm9pbGVkZWdncyddKQorICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdib2lsZWRlZ2dzLnB5JywgJ2ltcG9ydCBhbnRpZ3Jhdml0eScpCisgICAgICAgIGNtZCA9IGJ1aWxkX3B5KGRpc3QpCisgICAgICAgIGNtZC5jb21waWxlID0gVHJ1ZQorICAgICAgICBjbWQuYnVpbGRfbGliID0gJ2hlcmUnCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgZm91bmQgPSBvcy5saXN0ZGlyKGNtZC5idWlsZF9saWIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ydGVkKGZvdW5kKSwgWydfX3B5Y2FjaGVfXycsICdib2lsZWRlZ2dzLnB5J10pCisgICAgICAgIGZvdW5kID0gb3MubGlzdGRpcihvcy5wYXRoLmpvaW4oY21kLmJ1aWxkX2xpYiwgJ19fcHljYWNoZV9fJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm91bmQsIFsnYm9pbGVkZWdncy4lcy5weWMnICUgaW1wLmdldF90YWcoKV0pCisKKyAgICBkZWYgdGVzdF9ieXRlX2NvbXBpbGVfb3B0aW1pemVkKHNlbGYpOgorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QocHlfbW9kdWxlcz1bJ2JvaWxlZGVnZ3MnXSkKKyAgICAgICAgb3MuY2hkaXIocHJvamVjdF9kaXIpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnYm9pbGVkZWdncy5weScsICdpbXBvcnQgYW50aWdyYXZpdHknKQorICAgICAgICBjbWQgPSBidWlsZF9weShkaXN0KQorICAgICAgICBjbWQuY29tcGlsZSA9IFRydWUKKyAgICAgICAgY21kLm9wdGltaXplID0gMQorICAgICAgICBjbWQuYnVpbGRfbGliID0gJ2hlcmUnCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgZm91bmQgPSBvcy5saXN0ZGlyKGNtZC5idWlsZF9saWIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ydGVkKGZvdW5kKSwgWydfX3B5Y2FjaGVfXycsICdib2lsZWRlZ2dzLnB5J10pCisgICAgICAgIGZvdW5kID0gb3MubGlzdGRpcihvcy5wYXRoLmpvaW4oY21kLmJ1aWxkX2xpYiwgJ19fcHljYWNoZV9fJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ydGVkKGZvdW5kKSwgWydib2lsZWRlZ2dzLiVzLnB5YycgJSBpbXAuZ2V0X3RhZygpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYm9pbGVkZWdncy4lcy5weW8nICUgaW1wLmdldF90YWcoKV0pCisKKyAgICBkZWYgdGVzdF9ieXRlX2NvbXBpbGVfdW5kZXJfQihzZWxmKToKKyAgICAgICAgIyBtYWtlIHN1cmUgYnl0ZSBjb21waWxhdGlvbiB3b3JrcyB1bmRlciAtQiAoZG9udF93cml0ZV9ieXRlY29kZSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNldGF0dHIsIHN5cywgJ2RvbnRfd3JpdGVfYnl0ZWNvZGUnLAorICAgICAgICAgICAgICAgICAgICAgICAgc3lzLmRvbnRfd3JpdGVfYnl0ZWNvZGUpCisgICAgICAgIHN5cy5kb250X3dyaXRlX2J5dGVjb2RlID0gVHJ1ZQorICAgICAgICBzZWxmLnRlc3RfYnl0ZV9jb21waWxlKCkKKyAgICAgICAgc2VsZi50ZXN0X2J5dGVfY29tcGlsZV9vcHRpbWl6ZWQoKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShCdWlsZFB5VGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9idWlsZF9zY3JpcHRzLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYnVpbGRfc2NyaXB0cy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZDNhYzI0Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfYnVpbGRfc2NyaXB0cy5weQpAQCAtMCwwICsxLDEwOSBAQAorIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5jb21tYW5kLmJ1aWxkX3NjcmlwdHMuIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHN5c2NvbmZpZworZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJ1aWxkX3NjcmlwdHMgaW1wb3J0IGJ1aWxkX3NjcmlwdHMKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKKworY2xhc3MgQnVpbGRTY3JpcHRzVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9kZWZhdWx0X3NldHRpbmdzKHNlbGYpOgorICAgICAgICBjbWQgPSBzZWxmLmdldF9idWlsZF9zY3JpcHRzX2NtZCgiL2Zvby9iYXIiLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShjbWQuZm9yY2UpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoY21kLmJ1aWxkX2RpciwgTm9uZSkKKworICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNtZC5mb3JjZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuYnVpbGRfZGlyLCAiL2Zvby9iYXIiKQorCisgICAgZGVmIHRlc3RfYnVpbGQoc2VsZik6CisgICAgICAgIHNvdXJjZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHRhcmdldCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGV4cGVjdGVkID0gc2VsZi53cml0ZV9zYW1wbGVfc2NyaXB0cyhzb3VyY2UpCisKKyAgICAgICAgY21kID0gc2VsZi5nZXRfYnVpbGRfc2NyaXB0c19jbWQodGFyZ2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbb3MucGF0aC5qb2luKHNvdXJjZSwgZm4pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgZm4gaW4gZXhwZWN0ZWRdKQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIGJ1aWx0ID0gb3MubGlzdGRpcih0YXJnZXQpCisgICAgICAgIGZvciBuYW1lIGluIGV4cGVjdGVkOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihuYW1lLCBidWlsdCkKKworICAgIGRlZiBnZXRfYnVpbGRfc2NyaXB0c19jbWQoc2VsZiwgdGFyZ2V0LCBzY3JpcHRzKToKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGRpc3Quc2NyaXB0cyA9IHNjcmlwdHMKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsiYnVpbGQiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgYnVpbGRfc2NyaXB0cz10YXJnZXQsCisgICAgICAgICAgICBmb3JjZT1UcnVlLAorICAgICAgICAgICAgZXhlY3V0YWJsZT1zeXMuZXhlY3V0YWJsZSwKKyAgICAgICAgICAgIHVzZV8ydG8zPUZhbHNlLAorICAgICAgICAgICAgdXNlXzJ0bzNfZml4ZXJzPU5vbmUsCisgICAgICAgICAgICBjb252ZXJ0XzJ0bzNfZG9jdGVzdHM9Tm9uZQorICAgICAgICAgICAgKQorICAgICAgICByZXR1cm4gYnVpbGRfc2NyaXB0cyhkaXN0KQorCisgICAgZGVmIHdyaXRlX3NhbXBsZV9zY3JpcHRzKHNlbGYsIGRpcik6CisgICAgICAgIGV4cGVjdGVkID0gW10KKyAgICAgICAgZXhwZWN0ZWQuYXBwZW5kKCJzY3JpcHQxLnB5IikKKyAgICAgICAgc2VsZi53cml0ZV9zY3JpcHQoZGlyLCAic2NyaXB0MS5weSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICgiIyEgL3Vzci9iaW4vZW52IHB5dGhvbjIuM1xuIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIiMgYm9ndXMgc2NyaXB0IHcvIFB5dGhvbiBzaC1iYW5nXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAicGFzc1xuIikpCisgICAgICAgIGV4cGVjdGVkLmFwcGVuZCgic2NyaXB0Mi5weSIpCisgICAgICAgIHNlbGYud3JpdGVfc2NyaXB0KGRpciwgInNjcmlwdDIucHkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAoIiMhL3Vzci9iaW4vcHl0aG9uXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiIyBib2d1cyBzY3JpcHQgdy8gUHl0aG9uIHNoLWJhbmdcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXNzXG4iKSkKKyAgICAgICAgZXhwZWN0ZWQuYXBwZW5kKCJzaGVsbC5zaCIpCisgICAgICAgIHNlbGYud3JpdGVfc2NyaXB0KGRpciwgInNoZWxsLnNoIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKCIjIS9iaW4vc2hcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIjIGJvZ3VzIHNoZWxsIHNjcmlwdCB3LyBzaC1iYW5nXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhpdCAwXG4iKSkKKyAgICAgICAgcmV0dXJuIGV4cGVjdGVkCisKKyAgICBkZWYgd3JpdGVfc2NyaXB0KHNlbGYsIGRpciwgbmFtZSwgdGV4dCk6CisgICAgICAgIHdpdGggb3Blbihvcy5wYXRoLmpvaW4oZGlyLCBuYW1lKSwgInciKSBhcyBmOgorICAgICAgICAgICAgZi53cml0ZSh0ZXh0KQorCisgICAgZGVmIHRlc3RfdmVyc2lvbl9pbnQoc2VsZik6CisgICAgICAgIHNvdXJjZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHRhcmdldCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGV4cGVjdGVkID0gc2VsZi53cml0ZV9zYW1wbGVfc2NyaXB0cyhzb3VyY2UpCisKKworICAgICAgICBjbWQgPSBzZWxmLmdldF9idWlsZF9zY3JpcHRzX2NtZCh0YXJnZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtvcy5wYXRoLmpvaW4oc291cmNlLCBmbikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBmbiBpbiBleHBlY3RlZF0pCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKworICAgICAgICAjIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWU0NTI0CisgICAgICAgICMKKyAgICAgICAgIyBPbiBsaW51eC1nKystMzIgd2l0aCBjb21tYW5kIGxpbmUgYC4vY29uZmlndXJlIC0tZW5hYmxlLWlwdjYKKyAgICAgICAgIyAtLXdpdGgtc3VmZml4PTNgLCBweXRob24gaXMgY29tcGlsZWQgb2theSBidXQgdGhlIGJ1aWxkIHNjcmlwdHMKKyAgICAgICAgIyBmYWlsZWQgd2hlbiB3cml0aW5nIHRoZSBuYW1lIG9mIHRoZSBleGVjdXRhYmxlCisgICAgICAgIG9sZCA9IHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcnMoKS5nZXQoJ1ZFUlNJT04nKQorICAgICAgICBzeXNjb25maWcuX0NPTkZJR19WQVJTWydWRVJTSU9OJ10gPSA0CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGNtZC5ydW4oKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgaWYgb2xkIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHN5c2NvbmZpZy5fQ09ORklHX1ZBUlNbJ1ZFUlNJT04nXSA9IG9sZAorCisgICAgICAgIGJ1aWx0ID0gb3MubGlzdGRpcih0YXJnZXQpCisgICAgICAgIGZvciBuYW1lIGluIGV4cGVjdGVkOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihuYW1lLCBidWlsdCkKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKEJ1aWxkU2NyaXB0c1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfY2hlY2sucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9jaGVjay5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYjkxMDUwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfY2hlY2sucHkKQEAgLTAsMCArMSwxNjEgQEAKKyIiIlRlc3RzIGZvciBkaXN0dXRpbHMuY29tbWFuZC5jaGVjay4iIiIKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jaGVjayBpbXBvcnQgY2hlY2sKK2Zyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBfSEFTX0RPQ1VUSUxTCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ1NldHVwRXJyb3IsIE1ldGFkYXRhTWlzc2luZ0Vycm9yCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBDaGVja1Rlc3RDYXNlKHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBfcnVuKHNlbGYsIG1ldGFkYXRhPU5vbmUsICoqb3B0aW9ucyk6CisgICAgICAgIGlmIG1ldGFkYXRhIGlzIE5vbmU6CisgICAgICAgICAgICBtZXRhZGF0YSA9IHsnbmFtZSc6ICd4eHgnLCAndmVyc2lvbic6ICcxLjInfQorICAgICAgICBwa2dfaW5mbywgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKiptZXRhZGF0YSkKKyAgICAgICAgY21kID0gY2hlY2soZGlzdCkKKyAgICAgICAgY21kLmluaXRpYWxpemVfb3B0aW9ucygpCisgICAgICAgIGZvciBuYW1lLCB2YWx1ZSBpbiBvcHRpb25zLml0ZW1zKCk6CisgICAgICAgICAgICBzZXRhdHRyKGNtZCwgbmFtZSwgdmFsdWUpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisgICAgICAgIHJldHVybiBjbWQKKworICAgIGRlZiB0ZXN0X2NoZWNrX21ldGFkYXRhKHNlbGYpOgorICAgICAgICAjIGxldCdzIHJ1biB0aGUgY29tbWFuZCB3aXRoIG5vIG1ldGFkYXRhIGF0IGFsbAorICAgICAgICAjIGJ5IGRlZmF1bHQsIGNoZWNrIGlzIGNoZWNraW5nIHRoZSBtZXRhZGF0YQorICAgICAgICAjIHNob3VsZCBoYXZlIHNvbWUgd2FybmluZ3MKKyAgICAgICAgc2VsZi5fcnVuKCkKKyAgICAgICAgIyB0cmljazogdXNpbmcgYXNzZXJ0Tm90RXF1YWwgd2l0aCBhbiBlbXB0eSBsaXN0IHdpbGwgZ2l2ZSB1cyBhIG1vcmUKKyAgICAgICAgIyB1c2VmdWwgZXJyb3IgbWVzc2FnZSB0aGFuIGFzc2VydEdyZWF0ZXIoLi4sIDApIHdoZW4gdGhlIGNvZGUgY2hhbmdlCisgICAgICAgICMgYW5kIHRoZSB0ZXN0IGZhaWxzCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKworICAgICAgICAjIG5vdyBsZXQncyBhZGQgdGhlIHJlcXVpcmVkIGZpZWxkcworICAgICAgICAjIGFuZCBydW4gaXQgYWdhaW4sIHRvIG1ha2Ugc3VyZSB3ZSBkb24ndCBnZXQKKyAgICAgICAgIyBhbnkgd2FybmluZyBhbnltb3JlCisgICAgICAgIG1ldGFkYXRhID0geydob21lX3BhZ2UnOiAneHh4JywgJ2F1dGhvcic6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAnYXV0aG9yX2VtYWlsJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICduYW1lJzogJ3h4eCcsICd2ZXJzaW9uJzogJzQuMicsCisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgc2VsZi5fcnVuKG1ldGFkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZ2V0X2xvZ3MoKSwgW10pCisKKyAgICAgICAgIyBub3cgd2l0aCB0aGUgc3RyaWN0IG1vZGUsIHdlIHNob3VsZAorICAgICAgICAjIGdldCBhbiBlcnJvciBpZiB0aGVyZSBhcmUgbWlzc2luZyBtZXRhZGF0YQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhNZXRhZGF0YU1pc3NpbmdFcnJvciwgc2VsZi5fcnVuLCB7fSwgKip7J3N0cmljdCc6IDF9KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdTZXR1cEVycm9yLCBzZWxmLl9ydW4sCisgICAgICAgICAgICB7J25hbWUnOiAneHh4JywgJ3ZlcnNpb24nOiAneHh4J30sICoqeydzdHJpY3QnOiAxfSkKKworICAgICAgICAjIGNsZWFyIHdhcm5pbmdzIGZyb20gdGhlIHByZXZpb3VzIGNhbGxzCisgICAgICAgIHNlbGYubG9naGFuZGxlci5mbHVzaCgpCisKKyAgICAgICAgIyBhbmQgb2YgY291cnNlLCBubyBlcnJvciB3aGVuIGFsbCBtZXRhZGF0YSBmaWVsZHMgYXJlIHByZXNlbnQKKyAgICAgICAgc2VsZi5fcnVuKG1ldGFkYXRhLCBzdHJpY3Q9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmdldF9sb2dzKCksIFtdKQorCisgICAgICAgICMgbm93IGEgdGVzdCB3aXRoIG5vbi1BU0NJSSBjaGFyYWN0ZXJzCisgICAgICAgIG1ldGFkYXRhID0geydob21lX3BhZ2UnOiAneHh4JywgJ2F1dGhvcic6ICdcdTAwYzlyaWMnLAorICAgICAgICAgICAgICAgICAgICAnYXV0aG9yX2VtYWlsJzogJ3h4eCcsICduYW1lJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMicsCisgICAgICAgICAgICAgICAgICAgICdzdW1tYXJ5JzogJ1NvbWV0aGluZyBhYm91dCBlc3N6ZXQgXHUwMGRmJywKKyAgICAgICAgICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJzogJ01vcmUgdGhpbmdzIGFib3V0IGVzc3pldCBcdTAwZGYnfQorICAgICAgICBzZWxmLl9ydW4obWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKworICAgIGRlZiB0ZXN0X2NoZWNrX21ldGFkYXRhXzFfMihzZWxmKToKKyAgICAgICAgIyBsZXQncyBydW4gdGhlIGNvbW1hbmQgd2l0aCBubyBtZXRhZGF0YSBhdCBhbGwKKyAgICAgICAgIyBieSBkZWZhdWx0LCBjaGVjayBpcyBjaGVja2luZyB0aGUgbWV0YWRhdGEKKyAgICAgICAgIyBzaG91bGQgaGF2ZSBzb21lIHdhcm5pbmdzCisgICAgICAgIHNlbGYuX3J1bigpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKworICAgICAgICAjIG5vdyBsZXQncyBhZGQgdGhlIHJlcXVpcmVkIGZpZWxkcyBhbmQgcnVuIGl0IGFnYWluLCB0byBtYWtlIHN1cmUgd2UKKyAgICAgICAgIyBkb24ndCBnZXQgYW55IHdhcm5pbmcgYW55bW9yZSBsZXQncyB1c2UgcmVxdWlyZXNfcHl0aG9uIGFzIGEgbWFya2VyCisgICAgICAgICMgdG8gZW5mb3JjZSBNZXRhZGF0YS1WZXJzaW9uIDEuMgorICAgICAgICBtZXRhZGF0YSA9IHsnaG9tZV9wYWdlJzogJ3h4eCcsICdhdXRob3InOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgJ2F1dGhvcl9lbWFpbCc6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICd4eHgnLCAndmVyc2lvbic6ICc0LjInLAorICAgICAgICAgICAgICAgICAgICAncmVxdWlyZXNfcHl0aG9uJzogJzIuNCcsCisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgc2VsZi5fcnVuKG1ldGFkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZ2V0X2xvZ3MoKSwgW10pCisKKyAgICAgICAgIyBub3cgd2l0aCB0aGUgc3RyaWN0IG1vZGUsIHdlIHNob3VsZAorICAgICAgICAjIGdldCBhbiBlcnJvciBpZiB0aGVyZSBhcmUgbWlzc2luZyBtZXRhZGF0YQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhNZXRhZGF0YU1pc3NpbmdFcnJvciwgc2VsZi5fcnVuLCB7fSwgKip7J3N0cmljdCc6IDF9KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdTZXR1cEVycm9yLCBzZWxmLl9ydW4sCisgICAgICAgICAgICB7J25hbWUnOiAneHh4JywgJ3ZlcnNpb24nOiAneHh4J30sICoqeydzdHJpY3QnOiAxfSkKKworICAgICAgICAjIGNvbXBsYWluIGFib3V0IHZlcnNpb24gZm9ybWF0CisgICAgICAgIG1ldGFkYXRhWyd2ZXJzaW9uJ10gPSAneHh4JworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdTZXR1cEVycm9yLCBzZWxmLl9ydW4sIG1ldGFkYXRhLAorICAgICAgICAgICAgKip7J3N0cmljdCc6IDF9KQorCisgICAgICAgICMgY2xlYXIgd2FybmluZ3MgZnJvbSB0aGUgcHJldmlvdXMgY2FsbHMKKyAgICAgICAgc2VsZi5sb2doYW5kbGVyLmZsdXNoKCkKKworICAgICAgICAjIG5vdyB3aXRoIGNvcnJlY3QgdmVyc2lvbiBmb3JtYXQgYWdhaW4KKyAgICAgICAgbWV0YWRhdGFbJ3ZlcnNpb24nXSA9ICc0LjInCisgICAgICAgIHNlbGYuX3J1bihtZXRhZGF0YSwgc3RyaWN0PVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKF9IQVNfRE9DVVRJTFMsICJyZXF1aXJlcyBkb2N1dGlscyIpCisgICAgZGVmIHRlc3RfY2hlY2tfcmVzdHJ1Y3R1cmVkdGV4dChzZWxmKToKKyAgICAgICAgIyBsZXQncyBzZWUgaWYgaXQgZGV0ZWN0cyBicm9rZW4gcmVzdCBpbiBkZXNjcmlwdGlvbgorICAgICAgICBicm9rZW5fcmVzdCA9ICd0aXRsZVxuPT09XG5cbnRlc3QnCisgICAgICAgIHBrZ19pbmZvLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdChkZXNjcmlwdGlvbj1icm9rZW5fcmVzdCkKKyAgICAgICAgY21kID0gY2hlY2soZGlzdCkKKyAgICAgICAgY21kLmNoZWNrX3Jlc3RydWN0dXJlZHRleHQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLmdldF9sb2dzKCkpLCAxKQorCisgICAgICAgICMgbGV0J3Mgc2VlIGlmIHdlIGhhdmUgYW4gZXJyb3Igd2l0aCBzdHJpY3Q9MQorICAgICAgICBtZXRhZGF0YSA9IHsnaG9tZV9wYWdlJzogJ3h4eCcsICdhdXRob3InOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgJ2F1dGhvcl9lbWFpbCc6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICd4eHgnLCAndmVyc2lvbic6ICcxLjInLAorICAgICAgICAgICAgICAgICAgICAnZGVzY3JpcHRpb24nOiBicm9rZW5fcmVzdH0KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgc2VsZi5fcnVuLCBtZXRhZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaWN0PVRydWUsIGFsbD1UcnVlKQorICAgICAgICBzZWxmLmxvZ2hhbmRsZXIuZmx1c2goKQorCisgICAgICAgICMgYW5kIG5vbi1icm9rZW4gcmVzdCwgaW5jbHVkaW5nIGEgbm9uLUFTQ0lJIGNoYXJhY3RlciB0byB0ZXN0ICMxMjExNAorICAgICAgICBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdChkZXNjcmlwdGlvbj0ndGl0bGVcbj09PT09XG5cbnRlc3QgXHUwMGRmJylbMV0KKyAgICAgICAgY21kID0gY2hlY2soZGlzdCkKKyAgICAgICAgY21kLmNoZWNrX3Jlc3RydWN0dXJlZHRleHQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZ2V0X2xvZ3MoKSwgW10pCisKKyAgICBkZWYgdGVzdF9jaGVja19hbGwoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ1NldHVwRXJyb3IsIHNlbGYuX3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgeyduYW1lJzogJ3h4eCcsICd2ZXJzaW9uJzogJ3h4eCd9LCAqKnsnc3RyaWN0JzogMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhbGwnOiAxfSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTWV0YWRhdGFNaXNzaW5nRXJyb3IsIHNlbGYuX3J1biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAge30sICoqeydzdHJpY3QnOiAxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FsbCc6IDF9KQorCisgICAgZGVmIHRlc3RfY2hlY2tfaG9va3Moc2VsZik6CisgICAgICAgIHBrZ19pbmZvLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGRpc3QuY29tbWFuZF9vcHRpb25zWydpbnN0YWxsX2Rpc3QnXSA9IHsKKyAgICAgICAgICAgICdwcmVfaG9vayc6ICgnZmlsZScsIHsiYSI6ICdzb21lLm5vbmV4dGlzdGFudC5ob29rLmdocnJyYWFycmhsbCd9KSwKKyAgICAgICAgfQorICAgICAgICBjbWQgPSBjaGVjayhkaXN0KQorICAgICAgICBjbWQuY2hlY2tfaG9va3NfcmVzb2x2YWJsZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYuZ2V0X2xvZ3MoKSksIDEpCisKKyAgICBkZWYgdGVzdF93YXJuKHNlbGYpOgorICAgICAgICBfLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGNoZWNrKGRpc3QpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKyAgICAgICAgY21kLndhcm4oJ2hlbGxvJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmdldF9sb2dzKCksIFsnY2hlY2s6IGhlbGxvJ10pCisgICAgICAgIGNtZC53YXJuKCdoZWxsbyAlcycsICd3b3JsZCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbJ2NoZWNrOiBoZWxsbyB3b3JsZCddKQorICAgICAgICBjbWQud2FybignaGVsbG8gJXMgJXMnLCAnYmVhdXRpZnVsJywgJ3dvcmxkJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmdldF9sb2dzKCksIFsnY2hlY2s6IGhlbGxvIGJlYXV0aWZ1bCB3b3JsZCddKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShDaGVja1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfY2xlYW4ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9jbGVhbi5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNzhjM2E3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfY2xlYW4ucHkKQEAgLTAsMCArMSw0NiBAQAorIiIiVGVzdHMgZm9yIGRpc3R1dGlscy5jb21tYW5kLmNsZWFuLiIiIgoraW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuY2xlYW4gaW1wb3J0IGNsZWFuCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBjbGVhblRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X3NpbXBsZV9ydW4oc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gY2xlYW4oZGlzdCkKKworICAgICAgICAjIGxldCdzIGFkZCBzb21lIGVsZW1lbnRzIGNsZWFuIHNob3VsZCByZW1vdmUKKyAgICAgICAgZGlycyA9IFsoZCwgb3MucGF0aC5qb2luKHBrZ19kaXIsIGQpKQorICAgICAgICAgICAgICAgIGZvciBkIGluICgnYnVpbGRfdGVtcCcsICdidWlsZF9saWInLCAnYmRpc3RfYmFzZScsCisgICAgICAgICAgICAgICAgJ2J1aWxkX3NjcmlwdHMnLCAnYnVpbGRfYmFzZScpXQorCisgICAgICAgIGZvciBuYW1lLCBwYXRoIGluIGRpcnM6CisgICAgICAgICAgICBvcy5ta2RpcihwYXRoKQorICAgICAgICAgICAgc2V0YXR0cihjbWQsIG5hbWUsIHBhdGgpCisgICAgICAgICAgICBpZiBuYW1lID09ICdidWlsZF9iYXNlJzoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgZm9yIGYgaW4gKCdvbmUnLCAndHdvJywgJ3RocmVlJyk6CisgICAgICAgICAgICAgICAgc2VsZi53cml0ZV9maWxlKChwYXRoLCBmKSkKKworICAgICAgICAjIGxldCdzIHJ1biB0aGUgY29tbWFuZAorICAgICAgICBjbWQuYWxsID0gVHJ1ZQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgbWFrZSBzdXJlIHRoZSBmaWxlcyB3aGVyZSByZW1vdmVkCisgICAgICAgIGZvciBuYW1lLCBwYXRoIGluIGRpcnM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKHBhdGgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnJXIgd2FzIG5vdCByZW1vdmVkJyAlIHBhdGgpCisKKyAgICAgICAgIyBsZXQncyBydW4gdGhlIGNvbW1hbmQgYWdhaW4gKHNob3VsZCBzcGl0IHdhcm5pbmdzIGJ1dCBzdWNjZWVkKQorICAgICAgICBjbWQucnVuKCkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoY2xlYW5UZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2NtZC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2NtZC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZDAwZWMzCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfY21kLnB5CkBAIC0wLDAgKzEsMTAyIEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNtZC4iIiIKK2ltcG9ydCBvcworaW1wb3J0IGxvZ2dpbmcKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvcgorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHN1cHBvcnQsIHVuaXR0ZXN0CisKKworY2xhc3MgTXlDbWQoQ29tbWFuZCk6CisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgcGFzcworCisKK2NsYXNzIENvbW1hbmRUZXN0Q2FzZShzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoQ29tbWFuZFRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBzZWxmLmNtZCA9IE15Q21kKGRpc3QpCisKKyAgICBkZWYgdGVzdF9tYWtlX2ZpbGUoc2VsZik6CisgICAgICAgIGNtZCA9IHNlbGYuY21kCisKKyAgICAgICAgIyBtYWtpbmcgc3VyZSBpdCByYWlzZXMgd2hlbiBpbmZpbGVzIGlzIG5vdCBhIHN0cmluZyBvciBhIGxpc3QvdHVwbGUKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjbWQubWFrZV9maWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBpbmZpbGVzPTEsIG91dGZpbGU9JycsIGZ1bmM9J2Z1bmMnLCBhcmdzPSgpKQorCisgICAgICAgICMgbWFraW5nIHN1cmUgZXhlY3V0ZSBnZXRzIGNhbGxlZCBwcm9wZXJseQorICAgICAgICBkZWYgX2V4ZWN1dGUoZnVuYywgYXJncywgZXhlY19tc2csIGxldmVsKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhlY19tc2csICdnZW5lcmF0aW5nIG91dCBmcm9tIGluJykKKyAgICAgICAgY21kLmZvcmNlID0gVHJ1ZQorICAgICAgICBjbWQuZXhlY3V0ZSA9IF9leGVjdXRlCisgICAgICAgIGNtZC5tYWtlX2ZpbGUoaW5maWxlcz0naW4nLCBvdXRmaWxlPSdvdXQnLCBmdW5jPSdmdW5jJywgYXJncz0oKSkKKworICAgIGRlZiB0ZXN0X2R1bXBfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgY21kID0gc2VsZi5jbWQKKyAgICAgICAgY21kLm9wdGlvbjEgPSAxCisgICAgICAgIGNtZC5vcHRpb24yID0gMQorICAgICAgICBjbWQudXNlcl9vcHRpb25zID0gWygnb3B0aW9uMScsICcnLCAnJyksICgnb3B0aW9uMicsICcnLCAnJyldCisgICAgICAgIGNtZC5kdW1wX29wdGlvbnMoKQorCisgICAgICAgIHdhbnRlZCA9IFsiY29tbWFuZCBvcHRpb25zIGZvciAnTXlDbWQnOiIsICcgIG9wdGlvbjEgPSAxJywKKyAgICAgICAgICAgICAgICAgICcgIG9wdGlvbjIgPSAxJ10KKyAgICAgICAgbXNncyA9IHNlbGYuZ2V0X2xvZ3MobG9nZ2luZy5JTkZPKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZ3MsIHdhbnRlZCkKKworICAgIGRlZiB0ZXN0X2Vuc3VyZV9zdHJpbmcoc2VsZik6CisgICAgICAgIGNtZCA9IHNlbGYuY21kCisgICAgICAgIGNtZC5vcHRpb24xID0gJ29rJworICAgICAgICBjbWQuZW5zdXJlX3N0cmluZygnb3B0aW9uMScpCisKKyAgICAgICAgY21kLm9wdGlvbjIgPSBOb25lCisgICAgICAgIGNtZC5lbnN1cmVfc3RyaW5nKCdvcHRpb24yJywgJ3h4eCcpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShoYXNhdHRyKGNtZCwgJ29wdGlvbjInKSkKKworICAgICAgICBjbWQub3B0aW9uMyA9IDEKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5lbnN1cmVfc3RyaW5nLCAnb3B0aW9uMycpCisKKyAgICBkZWYgdGVzdF9lbnN1cmVfc3RyaW5nX2xpc3Qoc2VsZik6CisgICAgICAgIGNtZCA9IHNlbGYuY21kCisgICAgICAgIGNtZC5vcHRpb24xID0gJ29rLGRvaycKKyAgICAgICAgY21kLmVuc3VyZV9zdHJpbmdfbGlzdCgnb3B0aW9uMScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLm9wdGlvbjEsIFsnb2snLCAnZG9rJ10pCisKKyAgICAgICAgY21kLnllc19zdHJpbmdfbGlzdCA9IFsnb25lJywgJ3R3bycsICd0aHJlZSddCisgICAgICAgIGNtZC55ZXNfc3RyaW5nX2xpc3QyID0gJ29rJworICAgICAgICBjbWQuZW5zdXJlX3N0cmluZ19saXN0KCd5ZXNfc3RyaW5nX2xpc3QnKQorICAgICAgICBjbWQuZW5zdXJlX3N0cmluZ19saXN0KCd5ZXNfc3RyaW5nX2xpc3QyJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQueWVzX3N0cmluZ19saXN0LCBbJ29uZScsICd0d28nLCAndGhyZWUnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQueWVzX3N0cmluZ19saXN0MiwgWydvayddKQorCisgICAgICAgIGNtZC5ub3Rfc3RyaW5nX2xpc3QgPSBbJ29uZScsIDIsICd0aHJlZSddCisgICAgICAgIGNtZC5ub3Rfc3RyaW5nX2xpc3QyID0gb2JqZWN0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNtZC5lbnN1cmVfc3RyaW5nX2xpc3QsICdub3Rfc3RyaW5nX2xpc3QnKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ09wdGlvbkVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjbWQuZW5zdXJlX3N0cmluZ19saXN0LCAnbm90X3N0cmluZ19saXN0MicpCisKKyAgICBkZWYgdGVzdF9lbnN1cmVfZmlsZW5hbWUoc2VsZik6CisgICAgICAgIGNtZCA9IHNlbGYuY21kCisgICAgICAgIGNtZC5vcHRpb24xID0gX19maWxlX18KKyAgICAgICAgY21kLmVuc3VyZV9maWxlbmFtZSgnb3B0aW9uMScpCisgICAgICAgIGNtZC5vcHRpb24yID0gJ3h4eCcKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5lbnN1cmVfZmlsZW5hbWUsICdvcHRpb24yJykKKworICAgIGRlZiB0ZXN0X2Vuc3VyZV9kaXJuYW1lKHNlbGYpOgorICAgICAgICBjbWQgPSBzZWxmLmNtZAorICAgICAgICBjbWQub3B0aW9uMSA9IG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykgb3Igb3MuY3VyZGlyCisgICAgICAgIGNtZC5lbnN1cmVfZGlybmFtZSgnb3B0aW9uMScpCisgICAgICAgIGNtZC5vcHRpb24yID0gJ3h4eCcKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5lbnN1cmVfZGlybmFtZSwgJ29wdGlvbjInKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShDb21tYW5kVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9jb25maWcucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9jb25maWcucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGFlNzViNAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2NvbmZpZy5weQpAQCAtMCwwICsxLDc2IEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNvbW1hbmQuY29uZmlnLiIiIgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgbG9nZ2luZworCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNvbmZpZyBpbXBvcnQgZHVtcF9maWxlLCBjb25maWcKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK2NsYXNzIENvbmZpZ1Rlc3RDYXNlKHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfZHVtcF9maWxlKHNlbGYpOgorICAgICAgICB0aGlzX2ZpbGUgPSBfX2ZpbGVfXy5yc3RyaXAoJ2NvJykKKyAgICAgICAgd2l0aCBvcGVuKHRoaXNfZmlsZSkgYXMgZjoKKyAgICAgICAgICAgIG51bWxpbmVzID0gbGVuKGYucmVhZGxpbmVzKCkpCisKKyAgICAgICAgZHVtcF9maWxlKHRoaXNfZmlsZSwgJ0kgYW0gdGhlIGhlYWRlcicpCisKKyAgICAgICAgbG9ncyA9IFtdCisgICAgICAgIGZvciBsb2cgaW4gc2VsZi5nZXRfbG9ncyhsb2dnaW5nLklORk8pOgorICAgICAgICAgICAgbG9ncy5leHRlbmQobGluZSBmb3IgbGluZSBpbiBsb2cuc3BsaXQoJ1xuJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGxvZ3MpLCBudW1saW5lcyArIDIpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInLCAnZGlzYWJsZWQgb24gd2luMzInKQorICAgIGRlZiB0ZXN0X3NlYXJjaF9jcHAoc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gY29uZmlnKGRpc3QpCisKKyAgICAgICAgIyBzaW1wbGUgcGF0dGVybiBzZWFyY2hlcworICAgICAgICBtYXRjaCA9IGNtZC5zZWFyY2hfY3BwKHBhdHRlcm49J3h4eCcsIGJvZHk9Jy8qIHh4eCAqLycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWF0Y2gsIDApCisKKyAgICAgICAgbWF0Y2ggPSBjbWQuc2VhcmNoX2NwcChwYXR0ZXJuPSdfY29uZmlndGVzdCcsIGJvZHk9Jy8qIHh4eCAqLycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWF0Y2gsIDEpCisKKyAgICBkZWYgdGVzdF9maW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICAjIGZpbmFsaXplX29wdGlvbnMgZG9lcyBhIGJpdCBvZiB0cmFuc2Zvcm1hdGlvbgorICAgICAgICAjIG9uIG9wdGlvbnMKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBjbWQgPSBjb25maWcoZGlzdCkKKyAgICAgICAgY21kLmluY2x1ZGVfZGlycyA9ICdvbmUlc3R3bycgJSBvcy5wYXRoc2VwCisgICAgICAgIGNtZC5saWJyYXJpZXMgPSAnb25lJworICAgICAgICBjbWQubGlicmFyeV9kaXJzID0gJ3RocmVlJXNmb3VyJyAlIG9zLnBhdGhzZXAKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmluY2x1ZGVfZGlycywgWydvbmUnLCAndHdvJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmxpYnJhcmllcywgWydvbmUnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQubGlicmFyeV9kaXJzLCBbJ3RocmVlJywgJ2ZvdXInXSkKKworICAgIGRlZiB0ZXN0X2NsZWFuKHNlbGYpOgorICAgICAgICAjIF9jbGVhbiByZW1vdmVzIGZpbGVzCisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBmMSA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnb25lJykKKyAgICAgICAgZjIgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ3R3bycpCisKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGYxLCAneHh4JykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGYyLCAneHh4JykKKworICAgICAgICBmb3IgZiBpbiAoZjEsIGYyKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhmKSkKKworICAgICAgICBwa2dfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgpCisgICAgICAgIGNtZCA9IGNvbmZpZyhkaXN0KQorICAgICAgICBjbWQuX2NsZWFuKGYxLCBmMikKKworICAgICAgICBmb3IgZiBpbiAoZjEsIGYyKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoZikpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKENvbmZpZ1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kYXRhLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kYXRhLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhkNDM3M2QKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX2RhdGEucHkKQEAgLTAsMCArMSwxNDggQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsX2RhdGEuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCBzeXNjb25maWcKK2ltcG9ydCBwYWNrYWdpbmcuZGF0YWJhc2UKK2Zyb20gc3lzY29uZmlnIGltcG9ydCBfZ2V0X2RlZmF1bHRfc2NoZW1lCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9kYXRhIGltcG9ydCBpbnN0YWxsX2RhdGEKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9kaXN0IGltcG9ydCBpbnN0YWxsX2Rpc3QKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9kaXN0aW5mbyBpbXBvcnQgaW5zdGFsbF9kaXN0aW5mbworCisKK2NsYXNzIEluc3RhbGxEYXRhVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihJbnN0YWxsRGF0YVRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNjaGVtZSA9IF9nZXRfZGVmYXVsdF9zY2hlbWUoKQorICAgICAgICBvbGRfaXRlbXMgPSBzeXNjb25maWcuX1NDSEVNRVMuaXRlbXMoc2NoZW1lKQorCisgICAgICAgIGRlZiByZXN0b3JlKCk6CisgICAgICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMucmVtb3ZlX3NlY3Rpb24oc2NoZW1lKQorICAgICAgICAgICAgc3lzY29uZmlnLl9TQ0hFTUVTLmFkZF9zZWN0aW9uKHNjaGVtZSkKKyAgICAgICAgICAgIGZvciBvcHRpb24sIHZhbHVlIGluIG9sZF9pdGVtczoKKyAgICAgICAgICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuc2V0KHNjaGVtZSwgb3B0aW9uLCB2YWx1ZSkKKworICAgICAgICBzZWxmLmFkZENsZWFudXAocmVzdG9yZSkKKworICAgIGRlZiB0ZXN0X3NpbXBsZV9ydW4oc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCkKKyAgICAgICAgY21kID0gaW5zdGFsbF9kYXRhKGRpc3QpCisgICAgICAgIGNtZC5pbnN0YWxsX2RpciA9IGluc3QgPSBvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ2luc3QnKQorICAgICAgICBzY2hlbWUgPSBfZ2V0X2RlZmF1bHRfc2NoZW1lKCkKKworICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuc2V0KHNjaGVtZSwgJ2luc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbihwa2dfZGlyLCAnaW5zdCcpKQorICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuc2V0KHNjaGVtZSwgJ2luc3QyJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ2luc3QyJykpCisKKyAgICAgICAgb25lID0gb3MucGF0aC5qb2luKHBrZ19kaXIsICdvbmUnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUob25lLCAneHh4JykKKyAgICAgICAgaW5zdDIgPSBvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ2luc3QyJykKKyAgICAgICAgdHdvID0gb3MucGF0aC5qb2luKHBrZ19kaXIsICd0d28nKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUodHdvLCAneHh4JykKKworICAgICAgICAjIEZJWE1FIHRoaXMgY3JlYXRlcyBhIGxpdGVyYWwgXHtpbnN0Mlx9IGRpcmVjdG9yeSEKKyAgICAgICAgY21kLmRhdGFfZmlsZXMgPSB7b25lOiAne2luc3R9L29uZScsIHR3bzogJ3tpbnN0Mn0vdHdvJ30KKyAgICAgICAgc2VsZi5hc3NlcnRDb3VudEVxdWFsKGNtZC5nZXRfaW5wdXRzKCksIFtvbmUsIHR3b10pCisKKyAgICAgICAgIyBsZXQncyBydW4gdGhlIGNvbW1hbmQKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICAjIGxldCdzIGNoZWNrIHRoZSByZXN1bHQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY21kLmdldF9vdXRwdXRzKCkpLCAyKQorICAgICAgICBydHdvID0gb3MucGF0aC5zcGxpdCh0d28pWy0xXQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMob3MucGF0aC5qb2luKGluc3QyLCBydHdvKSkpCisgICAgICAgIHJvbmUgPSBvcy5wYXRoLnNwbGl0KG9uZSlbLTFdCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhvcy5wYXRoLmpvaW4oaW5zdCwgcm9uZSkpKQorICAgICAgICBjbWQub3V0ZmlsZXMgPSBbXQorCisgICAgICAgICMgbGV0J3MgdHJ5IHdpdGggd2Fybl9kaXIgb25lCisgICAgICAgIGNtZC53YXJuX2RpciA9IFRydWUKKyAgICAgICAgY21kLmZpbmFsaXplZCA9IEZhbHNlCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBsZXQncyBjaGVjayB0aGUgcmVzdWx0CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGNtZC5nZXRfb3V0cHV0cygpKSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKG9zLnBhdGguam9pbihpbnN0MiwgcnR3bykpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMob3MucGF0aC5qb2luKGluc3QsIHJvbmUpKSkKKyAgICAgICAgY21kLm91dGZpbGVzID0gW10KKworICAgICAgICAjIG5vdyB1c2luZyByb290IGFuZCBlbXB0eSBkaXIKKyAgICAgICAgY21kLnJvb3QgPSBvcy5wYXRoLmpvaW4ocGtnX2RpciwgJ3Jvb3QnKQorICAgICAgICB0aHJlZSA9IG9zLnBhdGguam9pbihjbWQuaW5zdGFsbF9kaXIsICd0aHJlZScpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSh0aHJlZSwgJ3h4JykKKworICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuc2V0KHNjaGVtZSwgJ2luc3QzJywgY21kLmluc3RhbGxfZGlyKQorCisgICAgICAgIGNtZC5kYXRhX2ZpbGVzID0ge29uZTogJ3tpbnN0fS9vbmUnLCB0d286ICd7aW5zdDJ9L3R3bycsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHRocmVlOiAne2luc3QzfS90aHJlZSd9CisgICAgICAgIGNtZC5maW5hbGl6ZWQgPSBGYWxzZQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgbGV0J3MgY2hlY2sgdGhlIHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbWQuZ2V0X291dHB1dHMoKSksIDMpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhvcy5wYXRoLmpvaW4oaW5zdDIsIHJ0d28pKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKG9zLnBhdGguam9pbihpbnN0LCByb25lKSkpCisKKyAgICBkZWYgdGVzdF9yZXNvdXJjZXMoc2VsZik6CisgICAgICAgIGluc3RhbGxfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2NyaXB0c19kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoCisgICAgICAgICAgICBuYW1lPSdTcGFtbGliJywgdmVyc2lvbj0nMC4xJywKKyAgICAgICAgICAgIGRhdGFfZmlsZXM9eydzcGFtZCc6ICd7c2NyaXB0c30vc3BhbWQnfSkKKworICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzcGFtZCcsICcjIFB5dGhvbiBzY3JpcHQnKQorICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuc2V0KF9nZXRfZGVmYXVsdF9zY2hlbWUoKSwgJ3NjcmlwdHMnLCBzY3JpcHRzX2RpcikKKyAgICAgICAgc3lzLnBhdGguaW5zZXJ0KDAsIGluc3RhbGxfZGlyKQorICAgICAgICBwYWNrYWdpbmcuZGF0YWJhc2UuZGlzYWJsZV9jYWNoZSgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzeXMucGF0aC5yZW1vdmUsIGluc3RhbGxfZGlyKQorICAgICAgICBzZWxmLmFkZENsZWFudXAocGFja2FnaW5nLmRhdGFiYXNlLmVuYWJsZV9jYWNoZSkKKworICAgICAgICBjbWQgPSBpbnN0YWxsX2Rpc3QoZGlzdCkKKyAgICAgICAgY21kLm91dHB1dHMgPSBbJ3NwYW1kJ10KKyAgICAgICAgY21kLmluc3RhbGxfbGliID0gaW5zdGFsbF9kaXIKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0J10gPSBjbWQKKworICAgICAgICBjbWQgPSBpbnN0YWxsX2RhdGEoZGlzdCkKKyAgICAgICAgY21kLmluc3RhbGxfZGlyID0gaW5zdGFsbF9kaXIKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2RhdGEnXSA9IGNtZAorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICBjbWQgPSBpbnN0YWxsX2Rpc3RpbmZvKGRpc3QpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0aW5mbyddID0gY21kCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgZmlyc3QgYSBmZXcgc2FuaXR5IGNoZWNrcworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLmxpc3RkaXIoc2NyaXB0c19kaXIpLCBbJ3NwYW1kJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3MubGlzdGRpcihpbnN0YWxsX2RpciksIFsnU3BhbWxpYi0wLjEuZGlzdC1pbmZvJ10pCisKKyAgICAgICAgIyBub3cgdGhlIHJlYWwgdGVzdAorICAgICAgICBmbiA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ1NwYW1saWItMC4xLmRpc3QtaW5mbycsICdSRVNPVVJDRVMnKQorICAgICAgICB3aXRoIG9wZW4oZm4sIGVuY29kaW5nPSd1dGYtOCcpIGFzIGZwOgorICAgICAgICAgICAgY29udGVudCA9IGZwLnJlYWQoKS5zdHJpcCgpCisKKyAgICAgICAgZXhwZWN0ZWQgPSAnc3BhbWQsJXMnICUgb3MucGF0aC5qb2luKHNjcmlwdHNfZGlyLCAnc3BhbWQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRlbnQsIGV4cGVjdGVkKQorCisgICAgICAgICMganVzdCB0byBiZSBzdXJlLCB3ZSBhbHNvIHRlc3QgdGhhdCBnZXRfZmlsZSB3b3JrcyBoZXJlLCBldmVuIHRob3VnaAorICAgICAgICAjIHBhY2thZ2luZy5kYXRhYmFzZSBoYXMgaXRzIG93biB0ZXN0IGZpbGUKKyAgICAgICAgd2l0aCBwYWNrYWdpbmcuZGF0YWJhc2UuZ2V0X2ZpbGUoJ1NwYW1saWInLCAnc3BhbWQnKSBhcyBmcDoKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmcC5yZWFkKCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcjIFB5dGhvbiBzY3JpcHQnLCBjb250ZW50KQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShJbnN0YWxsRGF0YVRlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kaXN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kaXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMzNDVkMmUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX2Rpc3QucHkKQEAgLTAsMCArMSwyNDEgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsLiIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBpbXAKK2ltcG9ydCBzeXMKK2Zyb20gc3lzY29uZmlnIGltcG9ydCAoZ2V0X3NjaGVtZV9uYW1lcywgZ2V0X2NvbmZpZ192YXJzLAorICAgICAgICAgICAgICAgICAgICAgICBfU0NIRU1FUywgZ2V0X2NvbmZpZ192YXIsIGdldF9wYXRoKQorCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmJ1aWxkX2V4dCBpbXBvcnQgYnVpbGRfZXh0Citmcm9tIHBhY2thZ2luZy5jb21tYW5kLmluc3RhbGxfZGlzdCBpbXBvcnQgaW5zdGFsbF9kaXN0Citmcm9tIHBhY2thZ2luZy5jb21waWxlci5leHRlbnNpb24gaW1wb3J0IEV4dGVuc2lvbgorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK19DT05GSUdfVkFSUyA9IGdldF9jb25maWdfdmFycygpCisKKworZGVmIF9tYWtlX2V4dF9uYW1lKG1vZG5hbWUpOgorICAgIGlmIG9zLm5hbWUgPT0gJ250JyBhbmQgc3lzLmV4ZWN1dGFibGUuZW5kc3dpdGgoJ19kLmV4ZScpOgorICAgICAgICBtb2RuYW1lICs9ICdfZCcKKyAgICByZXR1cm4gbW9kbmFtZSArIGdldF9jb25maWdfdmFyKCdTTycpCisKKworY2xhc3MgSW5zdGFsbFRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9ob21lX2luc3RhbGxhdGlvbl9zY2hlbWUoc2VsZik6CisgICAgICAgICMgVGhpcyBlbnN1cmUgdHdvIHRoaW5nczoKKyAgICAgICAgIyAtIHRoYXQgLS1ob21lIGdlbmVyYXRlcyB0aGUgZGVzaXJlZCBzZXQgb2YgZGlyZWN0b3J5IG5hbWVzCisgICAgICAgICMgLSB0ZXN0IC0taG9tZSBpcyBzdXBwb3J0ZWQgb24gYWxsIHBsYXRmb3JtcworICAgICAgICBidWlsZGRpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGRlc3RpbmF0aW9uID0gb3MucGF0aC5qb2luKGJ1aWxkZGlyLCAiaW5zdGFsbGF0aW9uIikKKworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsibmFtZSI6ICJmb29wa2cifSkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsiYnVpbGQiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgYnVpbGRfYmFzZT1idWlsZGRpciwKKyAgICAgICAgICAgIGJ1aWxkX2xpYj1vcy5wYXRoLmpvaW4oYnVpbGRkaXIsICJsaWIiKSwKKyAgICAgICAgKQorCisgICAgICAgIG9sZF9wb3NpeF9wcmVmaXggPSBfU0NIRU1FUy5nZXQoJ3Bvc2l4X3ByZWZpeCcsICdwbGF0aW5jbHVkZScpCisgICAgICAgIG9sZF9wb3NpeF9ob21lID0gX1NDSEVNRVMuZ2V0KCdwb3NpeF9ob21lJywgJ3BsYXRpbmNsdWRlJykKKworICAgICAgICBuZXdfcGF0aCA9ICd7cGxhdGJhc2V9L2luY2x1ZGUvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9JworICAgICAgICBfU0NIRU1FUy5zZXQoJ3Bvc2l4X3ByZWZpeCcsICdwbGF0aW5jbHVkZScsIG5ld19wYXRoKQorICAgICAgICBfU0NIRU1FUy5zZXQoJ3Bvc2l4X2hvbWUnLCAncGxhdGluY2x1ZGUnLCAne3BsYXRiYXNlfS9pbmNsdWRlL3B5dGhvbicpCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0KGRpc3QpCisgICAgICAgICAgICBjbWQuaG9tZSA9IGRlc3RpbmF0aW9uCisgICAgICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBfU0NIRU1FUy5zZXQoJ3Bvc2l4X3ByZWZpeCcsICdwbGF0aW5jbHVkZScsIG9sZF9wb3NpeF9wcmVmaXgpCisgICAgICAgICAgICBfU0NIRU1FUy5zZXQoJ3Bvc2l4X2hvbWUnLCAncGxhdGluY2x1ZGUnLCBvbGRfcG9zaXhfaG9tZSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5pbnN0YWxsX2Jhc2UsIGRlc3RpbmF0aW9uKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5pbnN0YWxsX3BsYXRiYXNlLCBkZXN0aW5hdGlvbikKKworICAgICAgICBkZWYgY2hlY2tfcGF0aChnb3QsIGV4cGVjdGVkKToKKyAgICAgICAgICAgIGdvdCA9IG9zLnBhdGgubm9ybXBhdGgoZ290KQorICAgICAgICAgICAgZXhwZWN0ZWQgPSBvcy5wYXRoLm5vcm1wYXRoKGV4cGVjdGVkKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnb3QsIGV4cGVjdGVkKQorCisgICAgICAgIGxpYmRpciA9IG9zLnBhdGguam9pbihkZXN0aW5hdGlvbiwgImxpYiIsICJweXRob24iKQorICAgICAgICBjaGVja19wYXRoKGNtZC5pbnN0YWxsX2xpYiwgbGliZGlyKQorICAgICAgICBjaGVja19wYXRoKGNtZC5pbnN0YWxsX3BsYXRsaWIsIGxpYmRpcikKKyAgICAgICAgY2hlY2tfcGF0aChjbWQuaW5zdGFsbF9wdXJlbGliLCBsaWJkaXIpCisgICAgICAgIGNoZWNrX3BhdGgoY21kLmluc3RhbGxfaGVhZGVycywKKyAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4oZGVzdGluYXRpb24sICJpbmNsdWRlIiwgInB5dGhvbiIsICJmb29wa2ciKSkKKyAgICAgICAgY2hlY2tfcGF0aChjbWQuaW5zdGFsbF9zY3JpcHRzLCBvcy5wYXRoLmpvaW4oZGVzdGluYXRpb24sICJiaW4iKSkKKyAgICAgICAgY2hlY2tfcGF0aChjbWQuaW5zdGFsbF9kYXRhLCBkZXN0aW5hdGlvbikKKworICAgIGRlZiB0ZXN0X3VzZXJfc2l0ZShzZWxmKToKKyAgICAgICAgIyB0ZXN0IGluc3RhbGwgd2l0aCAtLXVzZXIKKyAgICAgICAgIyBwcmVwYXJpbmcgdGhlIGVudmlyb25tZW50IGZvciB0aGUgdGVzdAorICAgICAgICBzZWxmLm9sZF91c2VyX2Jhc2UgPSBnZXRfY29uZmlnX3ZhcigndXNlcmJhc2UnKQorICAgICAgICBzZWxmLm9sZF91c2VyX3NpdGUgPSBnZXRfcGF0aCgncHVyZWxpYicsICclc191c2VyJyAlIG9zLm5hbWUpCisgICAgICAgIHNlbGYudG1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi51c2VyX2Jhc2UgPSBvcy5wYXRoLmpvaW4oc2VsZi50bXBkaXIsICdCJykKKyAgICAgICAgc2VsZi51c2VyX3NpdGUgPSBvcy5wYXRoLmpvaW4oc2VsZi50bXBkaXIsICdTJykKKyAgICAgICAgX0NPTkZJR19WQVJTWyd1c2VyYmFzZSddID0gc2VsZi51c2VyX2Jhc2UKKyAgICAgICAgc2NoZW1lID0gJyVzX3VzZXInICUgb3MubmFtZQorICAgICAgICBfU0NIRU1FUy5zZXQoc2NoZW1lLCAncHVyZWxpYicsIHNlbGYudXNlcl9zaXRlKQorCisgICAgICAgIGRlZiBfZXhwYW5kdXNlcihwYXRoKToKKyAgICAgICAgICAgIGlmIHBhdGhbMF0gPT0gJ34nOgorICAgICAgICAgICAgICAgIHBhdGggPSBvcy5wYXRoLm5vcm1wYXRoKHNlbGYudG1wZGlyKSArIHBhdGhbMTpdCisgICAgICAgICAgICByZXR1cm4gcGF0aAorCisgICAgICAgIHNlbGYub2xkX2V4cGFuZCA9IG9zLnBhdGguZXhwYW5kdXNlcgorICAgICAgICBvcy5wYXRoLmV4cGFuZHVzZXIgPSBfZXhwYW5kdXNlcgorCisgICAgICAgIGRlZiBjbGVhbnVwKCk6CisgICAgICAgICAgICBfQ09ORklHX1ZBUlNbJ3VzZXJiYXNlJ10gPSBzZWxmLm9sZF91c2VyX2Jhc2UKKyAgICAgICAgICAgIF9TQ0hFTUVTLnNldChzY2hlbWUsICdwdXJlbGliJywgc2VsZi5vbGRfdXNlcl9zaXRlKQorICAgICAgICAgICAgb3MucGF0aC5leHBhbmR1c2VyID0gc2VsZi5vbGRfZXhwYW5kCisKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKGNsZWFudXApCisKKyAgICAgICAgc2NoZW1lcyA9IGdldF9zY2hlbWVfbmFtZXMoKQorICAgICAgICBmb3Iga2V5IGluICgnbnRfdXNlcicsICdwb3NpeF91c2VyJywgJ29zMl9ob21lJyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEluKGtleSwgc2NoZW1lcykKKworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKHsnbmFtZSc6ICd4eCd9KQorICAgICAgICBjbWQgPSBpbnN0YWxsX2Rpc3QoZGlzdCkKKworICAgICAgICAjIG1ha2luZyBzdXJlIHRoZSB1c2VyIG9wdGlvbiBpcyB0aGVyZQorICAgICAgICBvcHRpb25zID0gW25hbWUgZm9yIG5hbWUsIHNob3J0LCBsYWJsZSBpbgorICAgICAgICAgICAgICAgICAgIGNtZC51c2VyX29wdGlvbnNdCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3VzZXInLCBvcHRpb25zKQorCisgICAgICAgICMgc2V0dGluZyBhIHZhbHVlCisgICAgICAgIGNtZC51c2VyID0gVHJ1ZQorCisgICAgICAgICMgdXNlciBiYXNlIGFuZCBzaXRlIHNob3VsZG4ndCBiZSBjcmVhdGVkIHlldAorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKHNlbGYudXNlcl9iYXNlKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhzZWxmLnVzZXJfc2l0ZSkpCisKKyAgICAgICAgIyBsZXQncyBydW4gZmluYWxpemUKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorCisgICAgICAgICMgbm93IHRoZXkgc2hvdWxkCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhzZWxmLnVzZXJfYmFzZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhzZWxmLnVzZXJfc2l0ZSkpCisKKyAgICAgICAgc2VsZi5hc3NlcnRJbigndXNlcmJhc2UnLCBjbWQuY29uZmlnX3ZhcnMpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3VzZXJzaXRlJywgY21kLmNvbmZpZ192YXJzKQorCisgICAgZGVmIHRlc3RfaGFuZGxlX2V4dHJhX3BhdGgoc2VsZik6CisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oeyduYW1lJzogJ3h4JywgJ2V4dHJhX3BhdGgnOiAncGF0aCxkaXJzJ30pCisgICAgICAgIGNtZCA9IGluc3RhbGxfZGlzdChkaXN0KQorCisgICAgICAgICMgdHdvIGVsZW1lbnRzCisgICAgICAgIGNtZC5oYW5kbGVfZXh0cmFfcGF0aCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmV4dHJhX3BhdGgsIFsncGF0aCcsICdkaXJzJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmV4dHJhX2RpcnMsICdkaXJzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQucGF0aF9maWxlLCAncGF0aCcpCisKKyAgICAgICAgIyBvbmUgZWxlbWVudAorICAgICAgICBjbWQuZXh0cmFfcGF0aCA9IFsncGF0aCddCisgICAgICAgIGNtZC5oYW5kbGVfZXh0cmFfcGF0aCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmV4dHJhX3BhdGgsIFsncGF0aCddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5leHRyYV9kaXJzLCAncGF0aCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLnBhdGhfZmlsZSwgJ3BhdGgnKQorCisgICAgICAgICMgbm9uZQorICAgICAgICBkaXN0LmV4dHJhX3BhdGggPSBjbWQuZXh0cmFfcGF0aCA9IE5vbmUKKyAgICAgICAgY21kLmhhbmRsZV9leHRyYV9wYXRoKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZXh0cmFfcGF0aCwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZXh0cmFfZGlycywgJycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLnBhdGhfZmlsZSwgTm9uZSkKKworICAgICAgICAjIHRocmVlIGVsZW1lbnRzIChubyB3YXkgISkKKyAgICAgICAgY21kLmV4dHJhX3BhdGggPSAncGF0aCxkaXJzLGFnYWluJworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgY21kLmhhbmRsZV9leHRyYV9wYXRoKQorCisgICAgZGVmIHRlc3RfZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbih7J25hbWUnOiAneHgnfSkKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0KGRpc3QpCisKKyAgICAgICAgIyBtdXN0IHN1cHBseSBlaXRoZXIgcHJlZml4L2V4ZWMtcHJlZml4L2hvbWUgb3IKKyAgICAgICAgIyBpbnN0YWxsLWJhc2UvaW5zdGFsbC1wbGF0YmFzZSAtLSBub3QgYm90aAorICAgICAgICBjbWQucHJlZml4ID0gJ3ByZWZpeCcKKyAgICAgICAgY21kLmluc3RhbGxfYmFzZSA9ICdiYXNlJworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgY21kLmZpbmFsaXplX29wdGlvbnMpCisKKyAgICAgICAgIyBtdXN0IHN1cHBseSBlaXRoZXIgaG9tZSBvciBwcmVmaXgvZXhlYy1wcmVmaXggLS0gbm90IGJvdGgKKyAgICAgICAgY21kLmluc3RhbGxfYmFzZSA9IE5vbmUKKyAgICAgICAgY21kLmhvbWUgPSAnaG9tZScKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5maW5hbGl6ZV9vcHRpb25zKQorCisgICAgICAgICMgY2FuJ3QgY29tYmluZSB1c2VyIHdpdGggd2l0aCBwcmVmaXgvZXhlY19wcmVmaXgvaG9tZSBvcgorICAgICAgICAjIGluc3RhbGxfKHBsYXQpYmFzZQorICAgICAgICBjbWQucHJlZml4ID0gTm9uZQorICAgICAgICBjbWQudXNlciA9ICd1c2VyJworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgY21kLmZpbmFsaXplX29wdGlvbnMpCisKKyAgICBkZWYgdGVzdF9vbGRfcmVjb3JkKHNlbGYpOgorICAgICAgICAjIHRlc3QgcHJlLVBFUCAzNzYgLS1yZWNvcmQgb3B0aW9uIChvdXRzaWRlIGRpc3QtaW5mbyBkaXIpCisgICAgICAgIGluc3RhbGxfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgcHJvamVjdF9kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KHB5X21vZHVsZXM9WydoZWxsbyddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NyaXB0cz1bJ3NheWhpJ10pCisgICAgICAgIG9zLmNoZGlyKHByb2plY3RfZGlyKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ2hlbGxvLnB5JywgImRlZiBtYWluKCk6IHByaW50KCdvIGhhaScpIikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzYXloaScsICdmcm9tIGhlbGxvIGltcG9ydCBtYWluOyBtYWluKCknKQorCisgICAgICAgIGNtZCA9IGluc3RhbGxfZGlzdChkaXN0KQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3QnXSA9IGNtZAorICAgICAgICBjbWQucm9vdCA9IGluc3RhbGxfZGlyCisgICAgICAgIGNtZC5yZWNvcmQgPSBvcy5wYXRoLmpvaW4ocHJvamVjdF9kaXIsICdmaWxlbGlzdCcpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgd2l0aCBvcGVuKGNtZC5yZWNvcmQpIGFzIGY6CisgICAgICAgICAgICBjb250ZW50ID0gZi5yZWFkKCkKKworICAgICAgICBmb3VuZCA9IFtvcy5wYXRoLmJhc2VuYW1lKGxpbmUpIGZvciBsaW5lIGluIGNvbnRlbnQuc3BsaXRsaW5lcygpXQorICAgICAgICBleHBlY3RlZCA9IFsnaGVsbG8ucHknLCAnaGVsbG8uJXMucHljJyAlIGltcC5nZXRfdGFnKCksICdzYXloaScsCisgICAgICAgICAgICAgICAgICAgICdNRVRBREFUQScsICdJTlNUQUxMRVInLCAnUkVRVUVTVEVEJywgJ1JFQ09SRCddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ydGVkKGZvdW5kKSwgc29ydGVkKGV4cGVjdGVkKSkKKworICAgICAgICAjIFhYWCB0ZXN0IHRoYXQgZmFuY3lfZ2V0b3B0IGlzIG9rYXkgd2l0aCBvcHRpb25zIG5hbWVkCisgICAgICAgICMgcmVjb3JkIGFuZCBuby1yZWNvcmQgYnV0IHVucmVsYXRlZAorCisgICAgZGVmIHRlc3Rfb2xkX3JlY29yZF9leHRlbnNpb25zKHNlbGYpOgorICAgICAgICAjIHRlc3QgcHJlLVBFUCAzNzYgLS1yZWNvcmQgb3B0aW9uIHdpdGggZXh0IG1vZHVsZXMKKyAgICAgICAgaW5zdGFsbF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoZXh0X21vZHVsZXM9WworICAgICAgICAgICAgRXh0ZW5zaW9uKCd4eCcsIFsneHhtb2R1bGUuYyddKV0pCisgICAgICAgIG9zLmNoZGlyKHByb2plY3RfZGlyKQorICAgICAgICBzdXBwb3J0LmNvcHlfeHhtb2R1bGVfYyhwcm9qZWN0X2RpcikKKworICAgICAgICBidWlsZGV4dGNtZCA9IGJ1aWxkX2V4dChkaXN0KQorICAgICAgICBzdXBwb3J0LmZpeHVwX2J1aWxkX2V4dChidWlsZGV4dGNtZCkKKyAgICAgICAgYnVpbGRleHRjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0KGRpc3QpCisgICAgICAgIGRpc3QuY29tbWFuZF9vYmpbJ2luc3RhbGxfZGlzdCddID0gY21kCisgICAgICAgIGRpc3QuY29tbWFuZF9vYmpbJ2J1aWxkX2V4dCddID0gYnVpbGRleHRjbWQKKyAgICAgICAgY21kLnJvb3QgPSBpbnN0YWxsX2RpcgorICAgICAgICBjbWQucmVjb3JkID0gb3MucGF0aC5qb2luKHByb2plY3RfZGlyLCAnZmlsZWxpc3QnKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIHdpdGggb3BlbihjbWQucmVjb3JkKSBhcyBmOgorICAgICAgICAgICAgY29udGVudCA9IGYucmVhZCgpCisKKyAgICAgICAgZm91bmQgPSBbb3MucGF0aC5iYXNlbmFtZShsaW5lKSBmb3IgbGluZSBpbiBjb250ZW50LnNwbGl0bGluZXMoKV0KKyAgICAgICAgZXhwZWN0ZWQgPSBbX21ha2VfZXh0X25hbWUoJ3h4JyksCisgICAgICAgICAgICAgICAgICAgICdNRVRBREFUQScsICdJTlNUQUxMRVInLCAnUkVRVUVTVEVEJywgJ1JFQ09SRCddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm91bmQsIGV4cGVjdGVkKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShJbnN0YWxsVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX2Rpc3RpbmZvLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kaXN0aW5mby5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMzE1M2U3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9kaXN0aW5mby5weQpAQCAtMCwwICsxLDI1MiBAQAorIiIiVGVzdHMgZm9yIGBgcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9kaXN0aW5mb2BgLgorCitXcml0aW5nIG9mIHRoZSBSRVNPVVJDRVMgZmlsZSBpcyB0ZXN0ZWQgaW4gdGVzdF9jb21tYW5kX2luc3RhbGxfZGF0YS4KKyIiIgorCitpbXBvcnQgb3MKK2ltcG9ydCBjc3YKK2ltcG9ydCBoYXNobGliCitpbXBvcnQgc3lzY29uZmlnCisKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9kaXN0aW5mbyBpbXBvcnQgaW5zdGFsbF9kaXN0aW5mbworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5jbWQgaW1wb3J0IENvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLmV4dGVuc2lvbiBpbXBvcnQgRXh0ZW5zaW9uCitmcm9tIHBhY2thZ2luZy5tZXRhZGF0YSBpbXBvcnQgTWV0YWRhdGEKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCisKK2NsYXNzIER1bW15SW5zdGFsbENtZChDb21tYW5kKToKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBkaXN0PU5vbmUpOgorICAgICAgICBzZWxmLm91dHB1dHMgPSBbXQorICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbiA9IGRpc3QKKworICAgIGRlZiBfX2dldGF0dHJfXyhzZWxmLCBuYW1lKToKKyAgICAgICAgcmV0dXJuIE5vbmUKKworICAgIGRlZiBlbnN1cmVfZmluYWxpemVkKHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgZ2V0X291dHB1dHMoc2VsZik6CisgICAgICAgIHJldHVybiAoc2VsZi5vdXRwdXRzICsKKyAgICAgICAgICAgICAgICBzZWxmLmdldF9maW5hbGl6ZWRfY29tbWFuZCgnaW5zdGFsbF9kaXN0aW5mbycpLmdldF9vdXRwdXRzKCkpCisKKworY2xhc3MgSW5zdGFsbERpc3RpbmZvVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBjaGVja0xpc3RzID0gbGFtYmRhIHNlbGYsIHgsIHk6IHNlbGYuYXNzZXJ0TGlzdEVxdWFsKHNvcnRlZCh4KSwgc29ydGVkKHkpKQorCisgICAgZGVmIHRlc3RfZW1wdHlfaW5zdGFsbChzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QobmFtZT0nZm9vJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbj0nMS4wJykKKyAgICAgICAgaW5zdGFsbF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorCisgICAgICAgIGluc3RhbGwgPSBEdW1teUluc3RhbGxDbWQoZGlzdCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0J10gPSBpbnN0YWxsCisKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0aW5mbyhkaXN0KQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3RpbmZvJ10gPSBjbWQKKworICAgICAgICBjbWQuaW5zdGFsbF9kaXIgPSBpbnN0YWxsX2RpcgorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhvcy5saXN0ZGlyKGluc3RhbGxfZGlyKSwgWydmb28tMS4wLmRpc3QtaW5mbyddKQorCisgICAgICAgIGRpc3RfaW5mbyA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ2Zvby0xLjAuZGlzdC1pbmZvJykKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKG9zLmxpc3RkaXIoZGlzdF9pbmZvKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFsnTUVUQURBVEEnLCAnUkVDT1JEJywgJ1JFUVVFU1RFRCcsICdJTlNUQUxMRVInXSkKKyAgICAgICAgd2l0aCBvcGVuKG9zLnBhdGguam9pbihkaXN0X2luZm8sICdJTlNUQUxMRVInKSkgYXMgZnA6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZwLnJlYWQoKSwgJ2Rpc3R1dGlscycpCisgICAgICAgIHdpdGggb3Blbihvcy5wYXRoLmpvaW4oZGlzdF9pbmZvLCAnUkVRVUVTVEVEJykpIGFzIGZwOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmcC5yZWFkKCksICcnKQorICAgICAgICBtZXRhX3BhdGggPSBvcy5wYXRoLmpvaW4oZGlzdF9pbmZvLCAnTUVUQURBVEEnKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoTWV0YWRhdGEocGF0aD1tZXRhX3BhdGgpLmNoZWNrKCkpCisKKyAgICBkZWYgdGVzdF9pbnN0YWxsZXIoc2VsZik6CisgICAgICAgIHBrZ19kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KG5hbWU9J2ZvbycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb249JzEuMCcpCisgICAgICAgIGluc3RhbGxfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKworICAgICAgICBpbnN0YWxsID0gRHVtbXlJbnN0YWxsQ21kKGRpc3QpCisgICAgICAgIGRpc3QuY29tbWFuZF9vYmpbJ2luc3RhbGxfZGlzdCddID0gaW5zdGFsbAorCisgICAgICAgIGNtZCA9IGluc3RhbGxfZGlzdGluZm8oZGlzdCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0aW5mbyddID0gY21kCisKKyAgICAgICAgY21kLmluc3RhbGxfZGlyID0gaW5zdGFsbF9kaXIKKyAgICAgICAgY21kLmluc3RhbGxlciA9ICdiYWNvbi1weXRob24nCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgZGlzdF9pbmZvID0gb3MucGF0aC5qb2luKGluc3RhbGxfZGlyLCAnZm9vLTEuMC5kaXN0LWluZm8nKQorICAgICAgICB3aXRoIG9wZW4ob3MucGF0aC5qb2luKGRpc3RfaW5mbywgJ0lOU1RBTExFUicpKSBhcyBmcDoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnAucmVhZCgpLCAnYmFjb24tcHl0aG9uJykKKworICAgIGRlZiB0ZXN0X3JlcXVlc3RlZChzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QobmFtZT0nZm9vJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbj0nMS4wJykKKyAgICAgICAgaW5zdGFsbF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorCisgICAgICAgIGluc3RhbGwgPSBEdW1teUluc3RhbGxDbWQoZGlzdCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0J10gPSBpbnN0YWxsCisKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0aW5mbyhkaXN0KQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3RpbmZvJ10gPSBjbWQKKworICAgICAgICBjbWQuaW5zdGFsbF9kaXIgPSBpbnN0YWxsX2RpcgorICAgICAgICBjbWQucmVxdWVzdGVkID0gRmFsc2UKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICBkaXN0X2luZm8gPSBvcy5wYXRoLmpvaW4oaW5zdGFsbF9kaXIsICdmb28tMS4wLmRpc3QtaW5mbycpCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhvcy5saXN0ZGlyKGRpc3RfaW5mbyksCisgICAgICAgICAgICAgICAgICAgICAgICBbJ01FVEFEQVRBJywgJ1JFQ09SRCcsICdJTlNUQUxMRVInXSkKKworICAgIGRlZiB0ZXN0X25vX3JlY29yZChzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QobmFtZT0nZm9vJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbj0nMS4wJykKKyAgICAgICAgaW5zdGFsbF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorCisgICAgICAgIGluc3RhbGwgPSBEdW1teUluc3RhbGxDbWQoZGlzdCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0J10gPSBpbnN0YWxsCisKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0aW5mbyhkaXN0KQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3RpbmZvJ10gPSBjbWQKKworICAgICAgICBjbWQuaW5zdGFsbF9kaXIgPSBpbnN0YWxsX2RpcgorICAgICAgICBjbWQubm9fcmVjb3JkID0gVHJ1ZQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIGRpc3RfaW5mbyA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ2Zvby0xLjAuZGlzdC1pbmZvJykKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKG9zLmxpc3RkaXIoZGlzdF9pbmZvKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFsnTUVUQURBVEEnLCAnUkVRVUVTVEVEJywgJ0lOU1RBTExFUiddKQorCisgICAgZGVmIHRlc3RfcmVjb3JkX2Jhc2ljKHNlbGYpOgorICAgICAgICBpbnN0YWxsX2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG1vZHVsZXNfZGVzdCA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ2xpYicpCisgICAgICAgIHNjcmlwdHNfZGVzdCA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ2JpbicpCisgICAgICAgIHByb2plY3RfZGlyLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgKKyAgICAgICAgICAgIG5hbWU9J1NwYW1saWInLCB2ZXJzaW9uPScwLjEnLAorICAgICAgICAgICAgcHlfbW9kdWxlcz1bJ3NwYW0nXSwgc2NyaXB0cz1bJ3NwYW1kJ10sCisgICAgICAgICAgICBleHRfbW9kdWxlcz1bRXh0ZW5zaW9uKCdfc3BlZWRzcGFtJywgWydfc3BlZWRzcGFtLmMnXSldKQorCisgICAgICAgICMgdXNpbmcgYSByZWFsIGluc3RhbGxfZGlzdCBjb21tYW5kIGlzIHRvbyBwYWluZnVsLCBzbyB3ZSB1c2UgYSBtb2NrCisgICAgICAgICMgY2xhc3MgdGhhdCdzIG9ubHkgYSBob2xkZXIgZm9yIG9wdGlvbnMgdG8gYmUgdXNlZCBieSBpbnN0YWxsX2Rpc3RpbmZvCisgICAgICAgICMgYW5kIHdlIGNyZWF0ZSBwbGFjZWhvbGRlciBmaWxlcyBtYW51YWxseSBpbnN0ZWFkIG9mIHVzaW5nIGJ1aWxkXyouCisgICAgICAgICMgdGhlIGluc3RhbGxfKiBjb21tYW5kcyB3aWxsIHN0aWxsIGJlIGNvbnN1bHRlZCBieSBpbnN0YWxsX2Rpc3RpbmZvLgorICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzcGFtJywgJyMgUHl0aG9uIG1vZHVsZScpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnc3BhbWQnLCAnIyBQeXRob24gc2NyaXB0JykKKyAgICAgICAgZXh0bW9kID0gJ19zcGVlZHNwYW0nICsgc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdTTycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShleHRtb2QsICcnKQorCisgICAgICAgIGluc3RhbGwgPSBEdW1teUluc3RhbGxDbWQoZGlzdCkKKyAgICAgICAgaW5zdGFsbC5vdXRwdXRzID0gWydzcGFtJywgJ3NwYW1kJywgZXh0bW9kXQorICAgICAgICBpbnN0YWxsLmluc3RhbGxfbGliID0gbW9kdWxlc19kZXN0CisgICAgICAgIGluc3RhbGwuaW5zdGFsbF9zY3JpcHRzID0gc2NyaXB0c19kZXN0CisgICAgICAgIGRpc3QuY29tbWFuZF9vYmpbJ2luc3RhbGxfZGlzdCddID0gaW5zdGFsbAorCisgICAgICAgIGNtZCA9IGluc3RhbGxfZGlzdGluZm8oZGlzdCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3RpbmZvJ10gPSBjbWQKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBjaGVja3N1bSBhbmQgc2l6ZSBhcmUgbm90IGhhcmQtY29kZWQgZm9yIE1FVEFEQVRBIGFzIGl0IGlzCisgICAgICAgICMgcGxhdGZvcm0tZGVwZW5kZW50IChsaW5lIGVuZGluZ3MpCisgICAgICAgIG1ldGFkYXRhID0gb3MucGF0aC5qb2luKG1vZHVsZXNfZGVzdCwgJ1NwYW1saWItMC4xLmRpc3QtaW5mbycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdNRVRBREFUQScpCisgICAgICAgIHdpdGggb3BlbihtZXRhZGF0YSwgJ3JiJykgYXMgZnA6CisgICAgICAgICAgICBjb250ZW50ID0gZnAucmVhZCgpCisKKyAgICAgICAgbWV0YWRhdGFfc2l6ZSA9IHN0cihsZW4oY29udGVudCkpCisgICAgICAgIG1ldGFkYXRhX21kNSA9IGhhc2hsaWIubWQ1KGNvbnRlbnQpLmhleGRpZ2VzdCgpCisKKyAgICAgICAgcmVjb3JkID0gb3MucGF0aC5qb2luKG1vZHVsZXNfZGVzdCwgJ1NwYW1saWItMC4xLmRpc3QtaW5mbycsICdSRUNPUkQnKQorICAgICAgICB3aXRoIG9wZW4ocmVjb3JkLCBlbmNvZGluZz0ndXRmLTgnKSBhcyBmcDoKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmcC5yZWFkKCkKKworICAgICAgICBmb3VuZCA9IFtdCisgICAgICAgIGZvciBsaW5lIGluIGNvbnRlbnQuc3BsaXRsaW5lcygpOgorICAgICAgICAgICAgZmlsZW5hbWUsIGNoZWNrc3VtLCBzaXplID0gbGluZS5zcGxpdCgnLCcpCisgICAgICAgICAgICBmaWxlbmFtZSA9IG9zLnBhdGguYmFzZW5hbWUoZmlsZW5hbWUpCisgICAgICAgICAgICBmb3VuZC5hcHBlbmQoKGZpbGVuYW1lLCBjaGVja3N1bSwgc2l6ZSkpCisKKyAgICAgICAgZXhwZWN0ZWQgPSBbCisgICAgICAgICAgICAoJ3NwYW0nLCAnNmFiMmYyODhlZjI1NDU4NjhlZmZlNjg3NTc0NDhiNDUnLCAnMTUnKSwKKyAgICAgICAgICAgICgnc3BhbWQnLCAnZDEzZTYxNTZjZTc4OTE5YTk4MWU0MjRiMmZkY2Q5NzQnLCAnMTUnKSwKKyAgICAgICAgICAgIChleHRtb2QsICdkNDFkOGNkOThmMDBiMjA0ZTk4MDA5OThlY2Y4NDI3ZScsICcwJyksCisgICAgICAgICAgICAoJ01FVEFEQVRBJywgbWV0YWRhdGFfbWQ1LCBtZXRhZGF0YV9zaXplKSwKKyAgICAgICAgICAgICgnSU5TVEFMTEVSJywgJzQ0ZTNmZGUwNWYzZjUzN2VkODU4MzE5NjlhY2YzOTZkJywgJzknKSwKKyAgICAgICAgICAgICgnUkVRVUVTVEVEJywgJ2Q0MWQ4Y2Q5OGYwMGIyMDRlOTgwMDk5OGVjZjg0MjdlJywgJzAnKSwKKyAgICAgICAgICAgICgnUkVDT1JEJywgJycsICcnKSwKKyAgICAgICAgXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvdW5kLCBleHBlY3RlZCkKKworICAgIGRlZiB0ZXN0X3JlY29yZChzZWxmKToKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QobmFtZT0nZm9vJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lvbj0nMS4wJykKKyAgICAgICAgaW5zdGFsbF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorCisgICAgICAgIGluc3RhbGwgPSBEdW1teUluc3RhbGxDbWQoZGlzdCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsnaW5zdGFsbF9kaXN0J10gPSBpbnN0YWxsCisKKyAgICAgICAgZmFrZV9kaXN0cyA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnZmFrZV9kaXN0cycpCisgICAgICAgIGZha2VfZGlzdHMgPSBvcy5wYXRoLnJlYWxwYXRoKGZha2VfZGlzdHMpCisKKyAgICAgICAgIyBmb3IgdGVzdGluZywgd2Ugc2ltcGx5IGFkZCBhbGwgZmlsZXMgZnJvbSBfYmFja3BvcnQncyBmYWtlX2Rpc3RzCisgICAgICAgIGRpcnMgPSBbXQorICAgICAgICBmb3IgZGlyIGluIG9zLmxpc3RkaXIoZmFrZV9kaXN0cyk6CisgICAgICAgICAgICBmdWxsX3BhdGggPSBvcy5wYXRoLmpvaW4oZmFrZV9kaXN0cywgZGlyKQorICAgICAgICAgICAgaWYgKG5vdCBkaXIuZW5kc3dpdGgoJy5lZ2cnKSBvciBkaXIuZW5kc3dpdGgoJy5lZ2ctaW5mbycpIG9yCisgICAgICAgICAgICAgICAgZGlyLmVuZHN3aXRoKCcuZGlzdC1pbmZvJykpIGFuZCBvcy5wYXRoLmlzZGlyKGZ1bGxfcGF0aCk6CisgICAgICAgICAgICAgICAgZGlycy5hcHBlbmQoZnVsbF9wYXRoKQorCisgICAgICAgIGZvciBkaXIgaW4gZGlyczoKKyAgICAgICAgICAgIGZvciBwYXRoLCBzdWJkaXJzLCBmaWxlcyBpbiBvcy53YWxrKGRpcik6CisgICAgICAgICAgICAgICAgaW5zdGFsbC5vdXRwdXRzICs9IFtvcy5wYXRoLmpvaW4ocGF0aCwgZikgZm9yIGYgaW4gZmlsZXNdCisgICAgICAgICAgICAgICAgaW5zdGFsbC5vdXRwdXRzICs9IFtvcy5wYXRoLmpvaW4oJ3BhdGgnLCBmICsgJ2MnKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gZmlsZXMgaWYgZi5lbmRzd2l0aCgnLnB5JyldCisKKyAgICAgICAgY21kID0gaW5zdGFsbF9kaXN0aW5mbyhkaXN0KQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWydpbnN0YWxsX2Rpc3RpbmZvJ10gPSBjbWQKKworICAgICAgICBjbWQuaW5zdGFsbF9kaXIgPSBpbnN0YWxsX2RpcgorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIGRpc3RfaW5mbyA9IG9zLnBhdGguam9pbihpbnN0YWxsX2RpciwgJ2Zvby0xLjAuZGlzdC1pbmZvJykKKworICAgICAgICBleHBlY3RlZCA9IFtdCisgICAgICAgIGZvciBmIGluIGluc3RhbGwuZ2V0X291dHB1dHMoKToKKyAgICAgICAgICAgIGlmIChmLmVuZHN3aXRoKCgnLnB5YycsICcucHlvJykpIG9yIGYgPT0gb3MucGF0aC5qb2luKAorICAgICAgICAgICAgICAgIGluc3RhbGxfZGlyLCAnZm9vLTEuMC5kaXN0LWluZm8nLCAnUkVDT1JEJykpOgorICAgICAgICAgICAgICAgIGV4cGVjdGVkLmFwcGVuZChbZiwgJycsICcnXSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2l6ZSA9IG9zLnBhdGguZ2V0c2l6ZShmKQorICAgICAgICAgICAgICAgIG1kNSA9IGhhc2hsaWIubWQ1KCkKKyAgICAgICAgICAgICAgICB3aXRoIG9wZW4oZiwgJ3JiJykgYXMgZnA6CisgICAgICAgICAgICAgICAgICAgIG1kNS51cGRhdGUoZnAucmVhZCgpKQorICAgICAgICAgICAgICAgIGhhc2ggPSBtZDUuaGV4ZGlnZXN0KCkKKyAgICAgICAgICAgICAgICBleHBlY3RlZC5hcHBlbmQoW2YsIGhhc2gsIHN0cihzaXplKV0pCisKKyAgICAgICAgcGFyc2VkID0gW10KKyAgICAgICAgd2l0aCBvcGVuKG9zLnBhdGguam9pbihkaXN0X2luZm8sICdSRUNPUkQnKSwgJ3InKSBhcyBmOgorICAgICAgICAgICAgcmVhZGVyID0gY3N2LnJlYWRlcihmLCBkZWxpbWl0ZXI9JywnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5ldGVybWluYXRvcj1vcy5saW5lc2VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdW90ZWNoYXI9JyInKQorICAgICAgICAgICAgcGFyc2VkID0gbGlzdChyZWFkZXIpCisKKyAgICAgICAgc2VsZi5tYXhEaWZmID0gTm9uZQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMocGFyc2VkLCBleHBlY3RlZCkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoSW5zdGFsbERpc3RpbmZvVGVzdENhc2UpCisKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2luc3RhbGxfaGVhZGVycy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2luc3RhbGxfaGVhZGVycy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMjkwNmE3Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfaW5zdGFsbF9oZWFkZXJzLnB5CkBAIC0wLDAgKzEsMzggQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsX2hlYWRlcnMuIiIiCitpbXBvcnQgb3MKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsX2hlYWRlcnMgaW1wb3J0IGluc3RhbGxfaGVhZGVycworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKKworY2xhc3MgSW5zdGFsbEhlYWRlcnNUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9zaW1wbGVfcnVuKHNlbGYpOgorICAgICAgICAjIHdlIGhhdmUgdHdvIGhlYWRlcnMKKyAgICAgICAgaGVhZGVyX2xpc3QgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBoZWFkZXIxID0gb3MucGF0aC5qb2luKGhlYWRlcl9saXN0LCAnaGVhZGVyMScpCisgICAgICAgIGhlYWRlcjIgPSBvcy5wYXRoLmpvaW4oaGVhZGVyX2xpc3QsICdoZWFkZXIyJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGhlYWRlcjEpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShoZWFkZXIyKQorICAgICAgICBoZWFkZXJzID0gW2hlYWRlcjEsIGhlYWRlcjJdCisKKyAgICAgICAgcGtnX2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoaGVhZGVycz1oZWFkZXJzKQorICAgICAgICBjbWQgPSBpbnN0YWxsX2hlYWRlcnMoZGlzdCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZ2V0X2lucHV0cygpLCBoZWFkZXJzKQorCisgICAgICAgICMgbGV0J3MgcnVuIHRoZSBjb21tYW5kCisgICAgICAgIGNtZC5pbnN0YWxsX2RpciA9IG9zLnBhdGguam9pbihwa2dfZGlyLCAnaW5zdCcpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBsZXQncyBjaGVjayB0aGUgcmVzdWx0cworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbWQuZ2V0X291dHB1dHMoKSksIDIpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKEluc3RhbGxIZWFkZXJzVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX2xpYi5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2luc3RhbGxfbGliLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc5ZThmYTgKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX2xpYi5weQpAQCAtMCwwICsxLDExMCBAQAorIiIiVGVzdHMgZm9yIHBhY2thZ2luZy5jb21tYW5kLmluc3RhbGxfZGF0YS4iIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IGltcAorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9saWIgaW1wb3J0IGluc3RhbGxfbGliCitmcm9tIHBhY2thZ2luZy5jb21waWxlci5leHRlbnNpb24gaW1wb3J0IEV4dGVuc2lvbgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdPcHRpb25FcnJvcgorCisKK2NsYXNzIEluc3RhbGxMaWJUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5FbnZpcm9uUmVzdG9yZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydQWVRIT05QQVRIJ10KKworICAgIGRlZiB0ZXN0X2ZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KClbMV0KKyAgICAgICAgY21kID0gaW5zdGFsbF9saWIoZGlzdCkKKworICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjbWQuY29tcGlsZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQub3B0aW1pemUsIDApCisKKyAgICAgICAgIyBvcHRpbWl6ZSBtdXN0IGJlIDAsIDEsIG9yIDIKKyAgICAgICAgY21kLm9wdGltaXplID0gJ2ZvbycKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5maW5hbGl6ZV9vcHRpb25zKQorICAgICAgICBjbWQub3B0aW1pemUgPSAnNCcKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5maW5hbGl6ZV9vcHRpb25zKQorCisgICAgICAgIGNtZC5vcHRpbWl6ZSA9ICcyJworICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLm9wdGltaXplLCAyKQorCisgICAgZGVmIHRlc3RfYnl0ZV9jb21waWxlKHNlbGYpOgorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgY21kID0gaW5zdGFsbF9saWIoZGlzdCkKKyAgICAgICAgY21kLmNvbXBpbGUgPSBUcnVlCisgICAgICAgIGNtZC5vcHRpbWl6ZSA9IDEKKworICAgICAgICBmID0gb3MucGF0aC5qb2luKHByb2plY3RfZGlyLCAnZm9vLnB5JykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGYsICcjIHB5dGhvbiBmaWxlJykKKyAgICAgICAgY21kLmJ5dGVfY29tcGlsZShbZl0pCisgICAgICAgIHB5Y19maWxlID0gaW1wLmNhY2hlX2Zyb21fc291cmNlKCdmb28ucHknLCBUcnVlKQorICAgICAgICBweW9fZmlsZSA9IGltcC5jYWNoZV9mcm9tX3NvdXJjZSgnZm9vLnB5JywgRmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhweWNfZmlsZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhweW9fZmlsZSkpCisKKyAgICBkZWYgdGVzdF9ieXRlX2NvbXBpbGVfdW5kZXJfQihzZWxmKToKKyAgICAgICAgIyBtYWtlIHN1cmUgYnl0ZSBjb21waWxhdGlvbiB3b3JrcyB1bmRlciAtQiAoZG9udF93cml0ZV9ieXRlY29kZSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNldGF0dHIsIHN5cywgJ2RvbnRfd3JpdGVfYnl0ZWNvZGUnLAorICAgICAgICAgICAgICAgICAgICAgICAgc3lzLmRvbnRfd3JpdGVfYnl0ZWNvZGUpCisgICAgICAgIHN5cy5kb250X3dyaXRlX2J5dGVjb2RlID0gVHJ1ZQorICAgICAgICBzZWxmLnRlc3RfYnl0ZV9jb21waWxlKCkKKworICAgIGRlZiB0ZXN0X2dldF9vdXRwdXRzKHNlbGYpOgorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgb3MubWtkaXIoJ3NwYW0nKQorICAgICAgICBjbWQgPSBpbnN0YWxsX2xpYihkaXN0KQorCisgICAgICAgICMgc2V0dGluZyB1cCBhIGRpc3QgZW52aXJvbm1lbnQKKyAgICAgICAgY21kLmNvbXBpbGUgPSBUcnVlCisgICAgICAgIGNtZC5vcHRpbWl6ZSA9IDEKKyAgICAgICAgY21kLmluc3RhbGxfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgZiA9IG9zLnBhdGguam9pbihwcm9qZWN0X2RpciwgJ3NwYW0nLCAnX19pbml0X18ucHknKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoZiwgJyMgcHl0aG9uIHBhY2thZ2UnKQorICAgICAgICBjbWQuZGlzdHJpYnV0aW9uLmV4dF9tb2R1bGVzID0gW0V4dGVuc2lvbignZm9vJywgWyd4eHgnXSldCisgICAgICAgIGNtZC5kaXN0cmlidXRpb24ucGFja2FnZXMgPSBbJ3NwYW0nXQorCisgICAgICAgICMgbWFrZSBzdXJlIHRoZSBidWlsZF9saWIgaXMgc2V0IHRoZSB0ZW1wIGRpciAgIyBYWFggd2hhdD8gIHRoaXMgaXMgbm90CisgICAgICAgICMgbmVlZGVkIGluIHRoZSBzYW1lIGRpc3R1dGlscyB0ZXN0IGFuZCBzaG91bGQgd29yayB3aXRob3V0IG1hbnVhbAorICAgICAgICAjIGludGVydmVudGlvbgorICAgICAgICBidWlsZF9kaXIgPSBvcy5wYXRoLnNwbGl0KHByb2plY3RfZGlyKVswXQorICAgICAgICBjbWQuZ2V0X2ZpbmFsaXplZF9jb21tYW5kKCdidWlsZF9weScpLmJ1aWxkX2xpYiA9IGJ1aWxkX2RpcgorCisgICAgICAgICMgZ2V0X291dHB1dHMgc2hvdWxkIHJldHVybiA0IGVsZW1lbnRzOiBzcGFtL19faW5pdF9fLnB5LCAucHljIGFuZAorICAgICAgICAjIC5weW8sIGZvby5pbXBvcnQtdGFnLWFiaWZsYWdzLnNvIC8gZm9vLnB5ZAorICAgICAgICBvdXRwdXRzID0gY21kLmdldF9vdXRwdXRzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4ob3V0cHV0cyksIDQsIG91dHB1dHMpCisKKyAgICBkZWYgdGVzdF9nZXRfaW5wdXRzKHNlbGYpOgorICAgICAgICBwcm9qZWN0X2RpciwgZGlzdCA9IHNlbGYuY3JlYXRlX2Rpc3QoKQorICAgICAgICBvcy5jaGRpcihwcm9qZWN0X2RpcikKKyAgICAgICAgb3MubWtkaXIoJ3NwYW0nKQorICAgICAgICBjbWQgPSBpbnN0YWxsX2xpYihkaXN0KQorCisgICAgICAgICMgc2V0dGluZyB1cCBhIGRpc3QgZW52aXJvbm1lbnQKKyAgICAgICAgY21kLmNvbXBpbGUgPSBUcnVlCisgICAgICAgIGNtZC5vcHRpbWl6ZSA9IDEKKyAgICAgICAgY21kLmluc3RhbGxfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgZiA9IG9zLnBhdGguam9pbihwcm9qZWN0X2RpciwgJ3NwYW0nLCAnX19pbml0X18ucHknKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoZiwgJyMgcHl0aG9uIHBhY2thZ2UnKQorICAgICAgICBjbWQuZGlzdHJpYnV0aW9uLmV4dF9tb2R1bGVzID0gW0V4dGVuc2lvbignZm9vJywgWyd4eHgnXSldCisgICAgICAgIGNtZC5kaXN0cmlidXRpb24ucGFja2FnZXMgPSBbJ3NwYW0nXQorCisgICAgICAgICMgZ2V0X2lucHV0cyBzaG91bGQgcmV0dXJuIDIgZWxlbWVudHM6IHNwYW0vX19pbml0X18ucHkgYW5kCisgICAgICAgICMgZm9vLmltcG9ydC10YWctYWJpZmxhZ3Muc28gLyBmb28ucHlkCisgICAgICAgIGlucHV0cyA9IGNtZC5nZXRfaW5wdXRzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oaW5wdXRzKSwgMiwgaW5wdXRzKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShJbnN0YWxsTGliVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX3NjcmlwdHMucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9pbnN0YWxsX3NjcmlwdHMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjQ1MmEzNAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX2luc3RhbGxfc2NyaXB0cy5weQpAQCAtMCwwICsxLDc1IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmNvbW1hbmQuaW5zdGFsbF9zY3JpcHRzLiIiIgoraW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5pbnN0YWxsX3NjcmlwdHMgaW1wb3J0IGluc3RhbGxfc2NyaXB0cworZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCisKKworY2xhc3MgSW5zdGFsbFNjcmlwdHNUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9kZWZhdWx0X3NldHRpbmdzKHNlbGYpOgorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsiYnVpbGQiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgYnVpbGRfc2NyaXB0cz0iL2Zvby9iYXIiKQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWyJpbnN0YWxsX2Rpc3QiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgaW5zdGFsbF9zY3JpcHRzPSIvc3BsYXQvZnVuayIsCisgICAgICAgICAgICBmb3JjZT1UcnVlLAorICAgICAgICAgICAgc2tpcF9idWlsZD1UcnVlLAorICAgICAgICAgICAgKQorICAgICAgICBjbWQgPSBpbnN0YWxsX3NjcmlwdHMoZGlzdCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShjbWQuZm9yY2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoY21kLnNraXBfYnVpbGQpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoY21kLmJ1aWxkX2RpciwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhjbWQuaW5zdGFsbF9kaXIsIE5vbmUpCisKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjbWQuZm9yY2UpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjbWQuc2tpcF9idWlsZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuYnVpbGRfZGlyLCAiL2Zvby9iYXIiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5pbnN0YWxsX2RpciwgIi9zcGxhdC9mdW5rIikKKworICAgIGRlZiB0ZXN0X2luc3RhbGxhdGlvbihzZWxmKToKKyAgICAgICAgc291cmNlID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgZXhwZWN0ZWQgPSBbXQorCisgICAgICAgIGRlZiB3cml0ZV9zY3JpcHQobmFtZSwgdGV4dCk6CisgICAgICAgICAgICBleHBlY3RlZC5hcHBlbmQobmFtZSkKKyAgICAgICAgICAgIHdpdGggb3Blbihvcy5wYXRoLmpvaW4oc291cmNlLCBuYW1lKSwgInciKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUodGV4dCkKKworICAgICAgICB3cml0ZV9zY3JpcHQoInNjcmlwdDEucHkiLCAoIiMhIC91c3IvYmluL2VudiBweXRob24yLjNcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIjIGJvZ3VzIHNjcmlwdCB3LyBQeXRob24gc2gtYmFuZ1xuIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhc3NcbiIpKQorICAgICAgICB3cml0ZV9zY3JpcHQoInNjcmlwdDIucHkiLCAoIiMhL3Vzci9iaW4vcHl0aG9uXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiIyBib2d1cyBzY3JpcHQgdy8gUHl0aG9uIHNoLWJhbmdcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwYXNzXG4iKSkKKyAgICAgICAgd3JpdGVfc2NyaXB0KCJzaGVsbC5zaCIsICgiIyEvYmluL3NoXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiMgYm9ndXMgc2hlbGwgc2NyaXB0IHcvIHNoLWJhbmdcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhpdCAwXG4iKSkKKworICAgICAgICB0YXJnZXQgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgZGlzdC5jb21tYW5kX29ialsiYnVpbGQiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKGJ1aWxkX3NjcmlwdHM9c291cmNlKQorICAgICAgICBkaXN0LmNvbW1hbmRfb2JqWyJpbnN0YWxsX2Rpc3QiXSA9IHN1cHBvcnQuRHVtbXlDb21tYW5kKAorICAgICAgICAgICAgaW5zdGFsbF9zY3JpcHRzPXRhcmdldCwKKyAgICAgICAgICAgIGZvcmNlPVRydWUsCisgICAgICAgICAgICBza2lwX2J1aWxkPVRydWUsCisgICAgICAgICAgICApCisgICAgICAgIGNtZCA9IGluc3RhbGxfc2NyaXB0cyhkaXN0KQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgIGluc3RhbGxlZCA9IG9zLmxpc3RkaXIodGFyZ2V0KQorICAgICAgICBmb3IgbmFtZSBpbiBleHBlY3RlZDoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4obmFtZSwgaW5zdGFsbGVkKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShJbnN0YWxsU2NyaXB0c1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfcmVnaXN0ZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF9yZWdpc3Rlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wN2ZhZDg5Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfcmVnaXN0ZXIucHkKQEAgLTAsMCArMSwyNjAgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tbWFuZC5yZWdpc3Rlci4iIiIKK2ltcG9ydCBvcworaW1wb3J0IGdldHBhc3MKK2ltcG9ydCB1cmxsaWIucmVxdWVzdAoraW1wb3J0IHVybGxpYi5lcnJvcgoraW1wb3J0IHVybGxpYi5wYXJzZQorCit0cnk6CisgICAgaW1wb3J0IGRvY3V0aWxzCisgICAgRE9DVVRJTFNfU1VQUE9SVCA9IFRydWUKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBET0NVVElMU19TVVBQT1JUID0gRmFsc2UKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCBJbnB1dHMKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQgaW1wb3J0IHJlZ2lzdGVyIGFzIHJlZ2lzdGVyX21vZHVsZQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC5yZWdpc3RlciBpbXBvcnQgcmVnaXN0ZXIKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nU2V0dXBFcnJvcgorCisKK1BZUElSQ19OT1BBU1NXT1JEID0gIiIiXAorW2Rpc3R1dGlsc10KKworaW5kZXgtc2VydmVycyA9CisgICAgc2VydmVyMQorCitbc2VydmVyMV0KK3VzZXJuYW1lOm1lCisiIiIKKworV0FOVEVEX1BZUElSQyA9ICIiIlwKK1tkaXN0dXRpbHNdCitpbmRleC1zZXJ2ZXJzID0KKyAgICBweXBpCisKK1tweXBpXQordXNlcm5hbWU6dGFyZWsKK3Bhc3N3b3JkOnBhc3N3b3JkCisiIiIKKworCitjbGFzcyBGYWtlT3BlbmVyOgorICAgICIiIkZha2VzIGEgUHlQSSBzZXJ2ZXIiIiIKKyAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgIHNlbGYucmVxcyA9IFtdCisKKyAgICBkZWYgX19jYWxsX18oc2VsZiwgKmFyZ3MpOgorICAgICAgICByZXR1cm4gc2VsZgorCisgICAgZGVmIG9wZW4oc2VsZiwgcmVxKToKKyAgICAgICAgc2VsZi5yZXFzLmFwcGVuZChyZXEpCisgICAgICAgIHJldHVybiBzZWxmCisKKyAgICBkZWYgcmVhZChzZWxmKToKKyAgICAgICAgcmV0dXJuICd4eHgnCisKKworY2xhc3MgUmVnaXN0ZXJUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydIT01FJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoUmVnaXN0ZXJUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLnRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZWxmLnJjID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJy5weXBpcmMnKQorICAgICAgICBvcy5lbnZpcm9uWydIT01FJ10gPSBzZWxmLnRtcF9kaXIKKworICAgICAgICAjIHBhdGNoaW5nIHRoZSBwYXNzd29yZCBwcm9tcHQKKyAgICAgICAgc2VsZi5fb2xkX2dldHBhc3MgPSBnZXRwYXNzLmdldHBhc3MKKworICAgICAgICBkZWYgX2dldHBhc3MocHJvbXB0KToKKyAgICAgICAgICAgIHJldHVybiAncGFzc3dvcmQnCisKKyAgICAgICAgZ2V0cGFzcy5nZXRwYXNzID0gX2dldHBhc3MKKyAgICAgICAgc2VsZi5vbGRfb3BlbmVyID0gdXJsbGliLnJlcXVlc3QuYnVpbGRfb3BlbmVyCisgICAgICAgIHNlbGYuY29ubiA9IHVybGxpYi5yZXF1ZXN0LmJ1aWxkX29wZW5lciA9IEZha2VPcGVuZXIoKQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBnZXRwYXNzLmdldHBhc3MgPSBzZWxmLl9vbGRfZ2V0cGFzcworICAgICAgICB1cmxsaWIucmVxdWVzdC5idWlsZF9vcGVuZXIgPSBzZWxmLm9sZF9vcGVuZXIKKyAgICAgICAgaWYgaGFzYXR0cihyZWdpc3Rlcl9tb2R1bGUsICdpbnB1dCcpOgorICAgICAgICAgICAgZGVsIHJlZ2lzdGVyX21vZHVsZS5pbnB1dAorICAgICAgICBzdXBlcihSZWdpc3RlclRlc3RDYXNlLCBzZWxmKS50ZWFyRG93bigpCisKKyAgICBkZWYgX2dldF9jbWQoc2VsZiwgbWV0YWRhdGE9Tm9uZSk6CisgICAgICAgIGlmIG1ldGFkYXRhIGlzIE5vbmU6CisgICAgICAgICAgICBtZXRhZGF0YSA9IHsnaG9tZV9wYWdlJzogJ3h4eCcsICdhdXRob3InOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgICAgICdhdXRob3JfZW1haWwnOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgICAgICduYW1lJzogJ3h4eCcsICd2ZXJzaW9uJzogJ3h4eCd9CisgICAgICAgIHBrZ19pbmZvLCBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdCgqKm1ldGFkYXRhKQorICAgICAgICByZXR1cm4gcmVnaXN0ZXIoZGlzdCkKKworICAgIGRlZiB0ZXN0X2NyZWF0ZV9weXBpcmMoc2VsZik6CisgICAgICAgICMgdGhpcyB0ZXN0IG1ha2VzIHN1cmUgYSAucHlwaXJjIGZpbGUKKyAgICAgICAgIyBpcyBjcmVhdGVkIHdoZW4gcmVxdWVzdGVkLgorCisgICAgICAgICMgbGV0J3MgY3JlYXRlIGEgcmVnaXN0ZXIgaW5zdGFuY2UKKyAgICAgICAgY21kID0gc2VsZi5fZ2V0X2NtZCgpCisKKyAgICAgICAgIyB3ZSBzaG91bGRuJ3QgaGF2ZSBhIC5weXBpcmMgZmlsZSB5ZXQKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhzZWxmLnJjKSkKKworICAgICAgICAjIHBhdGNoaW5nIGlucHV0IGFuZCBnZXRwYXNzLmdldHBhc3MKKyAgICAgICAgIyBzbyByZWdpc3RlciBnZXRzIGhhcHB5CisgICAgICAgICMgSGVyZSdzIHdoYXQgd2UgYXJlIGZha2luZyA6CisgICAgICAgICMgdXNlIHlvdXIgZXhpc3RpbmcgbG9naW4gKGNob2ljZSAxLikKKyAgICAgICAgIyBVc2VybmFtZSA6ICd0YXJlaycKKyAgICAgICAgIyBQYXNzd29yZCA6ICdwYXNzd29yZCcKKyAgICAgICAgIyBTYXZlIHlvdXIgbG9naW4gKHkvTik/IDogJ3knCisgICAgICAgIGlucHV0cyA9IElucHV0cygnMScsICd0YXJlaycsICd5JykKKyAgICAgICAgcmVnaXN0ZXJfbW9kdWxlLmlucHV0ID0gaW5wdXRzCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyB3ZSBzaG91bGQgaGF2ZSBhIGJyYW5kIG5ldyAucHlwaXJjIGZpbGUKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguZXhpc3RzKHNlbGYucmMpKQorCisgICAgICAgICMgd2l0aCB0aGUgY29udGVudCBzaW1pbGFyIHRvIFdBTlRFRF9QWVBJUkMKKyAgICAgICAgd2l0aCBvcGVuKHNlbGYucmMpIGFzIGZwOgorICAgICAgICAgICAgY29udGVudCA9IGZwLnJlYWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRlbnQsIFdBTlRFRF9QWVBJUkMpCisKKyAgICAgICAgIyBub3cgbGV0J3MgbWFrZSBzdXJlIHRoZSAucHlwaXJjIGZpbGUgZ2VuZXJhdGVkCisgICAgICAgICMgcmVhbGx5IHdvcmtzIDogd2Ugc2hvdWxkbid0IGJlIGFza2VkIGFueXRoaW5nCisgICAgICAgICMgaWYgd2UgcnVuIHRoZSBjb21tYW5kIGFnYWluCisgICAgICAgIGRlZiBfbm9fd2F5KHByb21wdD0nJyk6CisgICAgICAgICAgICByYWlzZSBBc3NlcnRpb25FcnJvcihwcm9tcHQpCisKKyAgICAgICAgcmVnaXN0ZXJfbW9kdWxlLmlucHV0ID0gX25vX3dheQorICAgICAgICBjbWQuc2hvd19yZXNwb25zZSA9IFRydWUKKyAgICAgICAgY21kLmZpbmFsaXplZCA9IEZhbHNlCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBsZXQncyBzZWUgd2hhdCB0aGUgc2VydmVyIHJlY2VpdmVkIDogd2Ugc2hvdWxkCisgICAgICAgICMgaGF2ZSAyIHNpbWlsYXIgcmVxdWVzdHMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5jb25uLnJlcXMpLCAyKQorICAgICAgICByZXExID0gZGljdChzZWxmLmNvbm4ucmVxc1swXS5oZWFkZXJzKQorICAgICAgICByZXEyID0gZGljdChzZWxmLmNvbm4ucmVxc1sxXS5oZWFkZXJzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcTJbJ0NvbnRlbnQtbGVuZ3RoJ10sIHJlcTFbJ0NvbnRlbnQtbGVuZ3RoJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYid4eHgnLCBzZWxmLmNvbm4ucmVxc1sxXS5kYXRhKQorCisgICAgZGVmIHRlc3RfcGFzc3dvcmRfbm90X2luX2ZpbGUoc2VsZik6CisKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKHNlbGYucmMsIFBZUElSQ19OT1BBU1NXT1JEKQorICAgICAgICBjbWQgPSBzZWxmLl9nZXRfY21kKCkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBjbWQuX3NldF9jb25maWcoKQorICAgICAgICBjbWQuc2VuZF9tZXRhZGF0YSgpCisKKyAgICAgICAgIyBkaXN0LnBhc3N3b3JkIHNob3VsZCBiZSBzZXQKKyAgICAgICAgIyB0aGVyZWZvcmUgdXNlZCBhZnRlcndhcmRzIGJ5IG90aGVyIGNvbW1hbmRzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLmRpc3RyaWJ1dGlvbi5wYXNzd29yZCwgJ3Bhc3N3b3JkJykKKworICAgIGRlZiB0ZXN0X3JlZ2lzdHJhdGlvbihzZWxmKToKKyAgICAgICAgIyB0aGlzIHRlc3QgcnVucyBjaG9pY2UgMgorICAgICAgICBjbWQgPSBzZWxmLl9nZXRfY21kKCkKKyAgICAgICAgaW5wdXRzID0gSW5wdXRzKCcyJywgJ3RhcmVrJywgJ3RhcmVrQHppYWRlLm9yZycpCisgICAgICAgIHJlZ2lzdGVyX21vZHVsZS5pbnB1dCA9IGlucHV0cworICAgICAgICAjIGxldCdzIHJ1biB0aGUgY29tbWFuZAorICAgICAgICAjIEZJWE1FIGRvZXMgdGhpcyBzZW5kIGEgcmVhbCByZXF1ZXN0PyB1c2UgYSBtb2NrIHNlcnZlcgorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgd2Ugc2hvdWxkIGhhdmUgc2VuZCBhIHJlcXVlc3QKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5jb25uLnJlcXMpLCAxKQorICAgICAgICByZXEgPSBzZWxmLmNvbm4ucmVxc1swXQorICAgICAgICBoZWFkZXJzID0gZGljdChyZXEuaGVhZGVycykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoZWFkZXJzWydDb250ZW50LWxlbmd0aCddLCAnNjI4JykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ3RhcmVrJywgcmVxLmRhdGEpCisKKyAgICBkZWYgdGVzdF9wYXNzd29yZF9yZXNldChzZWxmKToKKyAgICAgICAgIyB0aGlzIHRlc3QgcnVucyBjaG9pY2UgMworICAgICAgICBjbWQgPSBzZWxmLl9nZXRfY21kKCkKKyAgICAgICAgaW5wdXRzID0gSW5wdXRzKCczJywgJ3RhcmVrQHppYWRlLm9yZycpCisgICAgICAgIHJlZ2lzdGVyX21vZHVsZS5pbnB1dCA9IGlucHV0cworICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgd2Ugc2hvdWxkIGhhdmUgc2VuZCBhIHJlcXVlc3QKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5jb25uLnJlcXMpLCAxKQorICAgICAgICByZXEgPSBzZWxmLmNvbm4ucmVxc1swXQorICAgICAgICBoZWFkZXJzID0gZGljdChyZXEuaGVhZGVycykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoZWFkZXJzWydDb250ZW50LWxlbmd0aCddLCAnMjk4JykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ3RhcmVrJywgcmVxLmRhdGEpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhET0NVVElMU19TVVBQT1JULCAnbmVlZHMgZG9jdXRpbHMnKQorICAgIGRlZiB0ZXN0X3N0cmljdChzZWxmKToKKyAgICAgICAgIyB0ZXN0aW5nIHRoZSBzdHJpY3Qgb3B0aW9uOiB3aGVuIG9uLCB0aGUgcmVnaXN0ZXIgY29tbWFuZCBzdG9wcyBpZiB0aGUKKyAgICAgICAgIyBtZXRhZGF0YSBpcyBpbmNvbXBsZXRlIG9yIGlmIGRlc2NyaXB0aW9uIGNvbnRhaW5zIGJhZCByZVNUCisKKyAgICAgICAgIyBlbXB0eSBtZXRhZGF0YSAgIyBYWFggdGhpcyBpcyBub3QgcmVhbGx5IGVtcHR5Li4KKyAgICAgICAgY21kID0gc2VsZi5fZ2V0X2NtZCh7J25hbWUnOiAneHh4JywgJ3ZlcnNpb24nOiAneHh4J30pCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnN0cmljdCA9IFRydWUKKyAgICAgICAgaW5wdXRzID0gSW5wdXRzKCcxJywgJ3RhcmVrJywgJ3knKQorICAgICAgICByZWdpc3Rlcl9tb2R1bGUuaW5wdXQgPSBpbnB1dHMKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLnJ1bikKKworICAgICAgICAjIG1ldGFkYXRhIGlzIE9LIGJ1dCBkZXNjcmlwdGlvbiBpcyBicm9rZW4KKyAgICAgICAgbWV0YWRhdGEgPSB7J2hvbWVfcGFnZSc6ICd4eHgnLCAnYXV0aG9yJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICdhdXRob3JfZW1haWwnOiAnw6l4w6l4w6knLAorICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICd4eHgnLCAndmVyc2lvbic6ICc0LjInLAorICAgICAgICAgICAgICAgICAgICAnZGVzY3JpcHRpb24nOiAndGl0bGVcbj09XG5cbnRleHQnfQorCisgICAgICAgIGNtZCA9IHNlbGYuX2dldF9jbWQobWV0YWRhdGEpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnN0cmljdCA9IFRydWUKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nU2V0dXBFcnJvciwgY21kLnJ1bikKKworICAgICAgICAjIG5vdyBzb21ldGhpbmcgdGhhdCB3b3JrcworICAgICAgICBtZXRhZGF0YVsnZGVzY3JpcHRpb24nXSA9ICd0aXRsZVxuPT09PT1cblxudGV4dCcKKyAgICAgICAgY21kID0gc2VsZi5fZ2V0X2NtZChtZXRhZGF0YSkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQuc3RyaWN0ID0gVHJ1ZQorICAgICAgICBpbnB1dHMgPSBJbnB1dHMoJzEnLCAndGFyZWsnLCAneScpCisgICAgICAgIHJlZ2lzdGVyX21vZHVsZS5pbnB1dCA9IGlucHV0cworICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgc3RyaWN0IGlzIG5vdCBieSBkZWZhdWx0CisgICAgICAgIGNtZCA9IHNlbGYuX2dldF9jbWQoKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGlucHV0cyA9IElucHV0cygnMScsICd0YXJlaycsICd5JykKKyAgICAgICAgcmVnaXN0ZXJfbW9kdWxlLmlucHV0ID0gaW5wdXRzCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBhbmQgZmluYWxseSBhIFVuaWNvZGUgdGVzdCAoYnVnICMxMjExNCkKKyAgICAgICAgbWV0YWRhdGEgPSB7J2hvbWVfcGFnZSc6ICd4eHgnLCAnYXV0aG9yJzogJ1x1MDBjOXJpYycsCisgICAgICAgICAgICAgICAgICAgICdhdXRob3JfZW1haWwnOiAneHh4JywgJ25hbWUnOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgJ3N1bW1hcnknOiAnU29tZXRoaW5nIGFib3V0IGVzc3pldCBcdTAwZGYnLAorICAgICAgICAgICAgICAgICAgICAnZGVzY3JpcHRpb24nOiAnTW9yZSB0aGluZ3MgYWJvdXQgZXNzemV0IFx1MDBkZid9CisKKyAgICAgICAgY21kID0gc2VsZi5fZ2V0X2NtZChtZXRhZGF0YSkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQuc3RyaWN0ID0gVHJ1ZQorICAgICAgICBpbnB1dHMgPSBJbnB1dHMoJzEnLCAndGFyZWsnLCAneScpCisgICAgICAgIHJlZ2lzdGVyX21vZHVsZS5pbnB1dCA9IGlucHV0cworICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgZGVmIHRlc3RfcmVnaXN0ZXJfcGVwMzQ1KHNlbGYpOgorICAgICAgICBjbWQgPSBzZWxmLl9nZXRfY21kKHt9KQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5kaXN0cmlidXRpb24ubWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSA9IFsnbHhtbCddCisgICAgICAgIGRhdGEgPSBjbWQuYnVpbGRfcG9zdF9kYXRhKCdzdWJtaXQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRhdGFbJ21ldGFkYXRhX3ZlcnNpb24nXSwgJzEuMicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGF0YVsncmVxdWlyZXNfZGlzdCddLCBbJ2x4bWwnXSkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoUmVnaXN0ZXJUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX3NkaXN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfc2Rpc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDdjNDU1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX3NkaXN0LnB5CkBAIC0wLDAgKzEsMzk1IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmNvbW1hbmQuc2Rpc3QuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCB0YXJmaWxlCitpbXBvcnQgemlwZmlsZQorCit0cnk6CisgICAgaW1wb3J0IGdycAorICAgIGltcG9ydCBwd2QKKyAgICBVSURfR0lEX1NVUFBPUlQgPSBUcnVlCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgVUlEX0dJRF9TVVBQT1JUID0gRmFsc2UKKworZnJvbSBzaHV0aWwgaW1wb3J0IGdldF9hcmNoaXZlX2Zvcm1hdHMKK2Zyb20gb3MucGF0aCBpbXBvcnQgam9pbgorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBmaW5kX2V4ZWN1dGFibGUKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nT3B0aW9uRXJyb3IKK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuc2Rpc3QgaW1wb3J0IHNkaXN0LCBzaG93X2Zvcm1hdHMKKworZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGNhcHR1cmVkX3N0ZG91dAorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHN1cHBvcnQsIHVuaXR0ZXN0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCByZXF1aXJlc196bGliCisKKworTUFOSUZFU1QgPSAiIiJcCisjIGZpbGUgR0VORVJBVEVEIGJ5IHBhY2thZ2luZywgZG8gTk9UIGVkaXQKK2lucm9vdC50eHQKK3NldHVwLmNmZworZGF0YSUoc2VwKXNkYXRhLmR0CitzY3JpcHRzJShzZXApc3NjcmlwdC5weQorc29tZSUoc2VwKXNmaWxlLnR4dAorc29tZSUoc2VwKXNvdGhlcl9maWxlLnR4dAorc29tZWNvZGUlKHNlcClzX19pbml0X18ucHkKK3NvbWVjb2RlJShzZXApc2RvYy5kYXQKK3NvbWVjb2RlJShzZXApc2RvYy50eHQKKyIiIgorCisKK2RlZiBidWlsZGVyKGRpc3QsIGZpbGVsaXN0KToKKyAgICBmaWxlbGlzdC5hcHBlbmQoJ2JhaCcpCisKKworY2xhc3MgU0Rpc3RUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydIT01FJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoU0Rpc3RUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLnRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBvcy5lbnZpcm9uWydIT01FJ10gPSBzZWxmLnRtcF9kaXIKKyAgICAgICAgIyBzZXR0aW5nIHVwIGFuIGVudmlyb25tZW50CisgICAgICAgIHNlbGYub2xkX3BhdGggPSBvcy5nZXRjd2QoKQorICAgICAgICBvcy5ta2Rpcihqb2luKHNlbGYudG1wX2RpciwgJ3NvbWVjb2RlJykpCisgICAgICAgIG9zLm1rZGlyKGpvaW4oc2VsZi50bXBfZGlyLCAnZGlzdCcpKQorICAgICAgICAjIGEgcGFja2FnZSwgYW5kIGEgUkVBRE1FCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnUkVBRE1FJyksICd4eHgnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYudG1wX2RpciwgJ3NvbWVjb2RlJywgJ19faW5pdF9fLnB5JyksICcjJykKKyAgICAgICAgb3MuY2hkaXIoc2VsZi50bXBfZGlyKQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICAjIGJhY2sgdG8gbm9ybWFsCisgICAgICAgIG9zLmNoZGlyKHNlbGYub2xkX3BhdGgpCisgICAgICAgIHN1cGVyKFNEaXN0VGVzdENhc2UsIHNlbGYpLnRlYXJEb3duKCkKKworICAgIGRlZiBnZXRfY21kKHNlbGYsIG1ldGFkYXRhPU5vbmUpOgorICAgICAgICAiIiJSZXR1cm5zIGEgY21kIiIiCisgICAgICAgIGlmIG1ldGFkYXRhIGlzIE5vbmU6CisgICAgICAgICAgICBtZXRhZGF0YSA9IHsnbmFtZSc6ICdmYWtlJywgJ3ZlcnNpb24nOiAnMS4wJywKKyAgICAgICAgICAgICAgICAgICAgICAgICdob21lX3BhZ2UnOiAneHh4JywgJ2F1dGhvcic6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAgICAgJ2F1dGhvcl9lbWFpbCc6ICd4eHgnfQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKG1ldGFkYXRhKQorICAgICAgICBkaXN0LnBhY2thZ2VzID0gWydzb21lY29kZSddCisgICAgICAgIGRpc3QuaW5jbHVkZV9wYWNrYWdlX2RhdGEgPSBUcnVlCisgICAgICAgIGNtZCA9IHNkaXN0KGRpc3QpCisgICAgICAgIGNtZC5kaXN0X2RpciA9ICdkaXN0JworICAgICAgICByZXR1cm4gZGlzdCwgY21kCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X3BydW5lX2ZpbGVfbGlzdChzZWxmKToKKyAgICAgICAgIyB0aGlzIHRlc3QgY3JlYXRlcyBhIHBhY2thZ2Ugd2l0aCBzb21lIHZjcyBkaXJzIGluIGl0CisgICAgICAgICMgYW5kIGxhdW5jaCBzZGlzdCB0byBtYWtlIHN1cmUgdGhleSBnZXQgcHJ1bmVkCisgICAgICAgICMgb24gYWxsIHN5c3RlbXMKKworICAgICAgICAjIGNyZWF0aW5nIFZDUyBkaXJlY3RvcmllcyB3aXRoIHNvbWUgZmlsZXMgaW4gdGhlbQorICAgICAgICBvcy5ta2Rpcihqb2luKHNlbGYudG1wX2RpciwgJ3NvbWVjb2RlJywgJy5zdm4nKSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChzZWxmLnRtcF9kaXIsICdzb21lY29kZScsICcuc3ZuJywgJ29rLnB5JyksICd4eHgnKQorCisgICAgICAgIG9zLm1rZGlyKGpvaW4oc2VsZi50bXBfZGlyLCAnc29tZWNvZGUnLCAnLmhnJykpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnc29tZWNvZGUnLCAnLmhnJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAnb2snKSwgJ3h4eCcpCisKKyAgICAgICAgb3MubWtkaXIoam9pbihzZWxmLnRtcF9kaXIsICdzb21lY29kZScsICcuZ2l0JykpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnc29tZWNvZGUnLCAnLmdpdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgJ29rJyksICd4eHgnKQorCisgICAgICAgICMgbm93IGJ1aWxkaW5nIGEgc2Rpc3QKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKworICAgICAgICAjIHppcCBpcyBhdmFpbGFibGUgdW5pdmVyc2FsbHkKKyAgICAgICAgIyAodGFyIG1pZ2h0IG5vdCBiZSBpbnN0YWxsZWQgdW5kZXIgd2luMzIpCisgICAgICAgIGNtZC5mb3JtYXRzID0gWyd6aXAnXQorCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBub3cgbGV0J3MgY2hlY2sgd2hhdCB3ZSBoYXZlCisgICAgICAgIGRpc3RfZm9sZGVyID0gam9pbihzZWxmLnRtcF9kaXIsICdkaXN0JykKKyAgICAgICAgZmlsZXMgPSBvcy5saXN0ZGlyKGRpc3RfZm9sZGVyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZpbGVzLCBbJ2Zha2UtMS4wLnppcCddKQorCisgICAgICAgIHdpdGggemlwZmlsZS5aaXBGaWxlKGpvaW4oZGlzdF9mb2xkZXIsICdmYWtlLTEuMC56aXAnKSkgYXMgemlwX2ZpbGU6CisgICAgICAgICAgICBjb250ZW50ID0gemlwX2ZpbGUubmFtZWxpc3QoKQorCisgICAgICAgICMgbWFraW5nIHN1cmUgZXZlcnl0aGluZyBoYXMgYmVlbiBwcnVuZWQgY29ycmVjdGx5CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGNvbnRlbnQpLCAyKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBAdW5pdHRlc3Quc2tpcElmKGZpbmRfZXhlY3V0YWJsZSgndGFyJykgaXMgTm9uZSBvcgorICAgICAgICAgICAgICAgICAgICAgZmluZF9leGVjdXRhYmxlKCdnemlwJykgaXMgTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICdyZXF1aXJlcyB0YXIgYW5kIGd6aXAgcHJvZ3JhbXMnKQorICAgIGRlZiB0ZXN0X21ha2VfZGlzdHJpYnV0aW9uKHNlbGYpOgorICAgICAgICAjIGJ1aWxkaW5nIGEgc2Rpc3QKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKworICAgICAgICAjIGNyZWF0aW5nIGEgZ3p0YXIgdGhlbiBhIHRhcgorICAgICAgICBjbWQuZm9ybWF0cyA9IFsnZ3p0YXInLCAndGFyJ10KKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICAjIG1ha2luZyBzdXJlIHdlIGhhdmUgdHdvIGZpbGVzCisgICAgICAgIGRpc3RfZm9sZGVyID0gam9pbihzZWxmLnRtcF9kaXIsICdkaXN0JykKKyAgICAgICAgcmVzdWx0ID0gc29ydGVkKG9zLmxpc3RkaXIoZGlzdF9mb2xkZXIpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdCwgWydmYWtlLTEuMC50YXInLCAnZmFrZS0xLjAudGFyLmd6J10pCisKKyAgICAgICAgb3MucmVtb3ZlKGpvaW4oZGlzdF9mb2xkZXIsICdmYWtlLTEuMC50YXInKSkKKyAgICAgICAgb3MucmVtb3ZlKGpvaW4oZGlzdF9mb2xkZXIsICdmYWtlLTEuMC50YXIuZ3onKSkKKworICAgICAgICAjIG5vdyB0cnlpbmcgYSB0YXIgdGhlbiBhIGd6dGFyCisgICAgICAgIGNtZC5mb3JtYXRzID0gWyd0YXInLCAnZ3p0YXInXQorICAgICAgICBjbWQuZmluYWxpemVkID0gRmFsc2UKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICByZXN1bHQgPSBzb3J0ZWQob3MubGlzdGRpcihkaXN0X2ZvbGRlcikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0LCBbJ2Zha2UtMS4wLnRhcicsICdmYWtlLTEuMC50YXIuZ3onXSkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfYWRkX2RlZmF1bHRzKHNlbGYpOgorCisgICAgICAgICMgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTIyNzkKKworICAgICAgICAjIGFkZF9kZWZhdWx0IHNob3VsZCBhbHNvIGluY2x1ZGUKKyAgICAgICAgIyBkYXRhX2ZpbGVzIGFuZCBwYWNrYWdlX2RhdGEKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKworICAgICAgICAjIGZpbGxpbmcgZGF0YV9maWxlcyBieSBwb2ludGluZyBmaWxlcworICAgICAgICAjIGluIHBhY2thZ2VfZGF0YQorICAgICAgICBkaXN0LnBhY2thZ2VfZGF0YSA9IHsnJzogWycqLmNmZycsICcqLmRhdCddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc29tZWNvZGUnOiBbJyoudHh0J119CisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnc2V0dXAuY2ZnJyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChzZWxmLnRtcF9kaXIsICdzb21lY29kZScsICdkb2MudHh0JyksICcjJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChzZWxmLnRtcF9kaXIsICdzb21lY29kZScsICdkb2MuZGF0JyksICcjJykKKworICAgICAgICAjIGFkZGluZyBzb21lIGRhdGEgaW4gZGF0YV9maWxlcworICAgICAgICBkYXRhX2RpciA9IGpvaW4oc2VsZi50bXBfZGlyLCAnZGF0YScpCisgICAgICAgIG9zLm1rZGlyKGRhdGFfZGlyKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKGRhdGFfZGlyLCAnZGF0YS5kdCcpLCAnIycpCisgICAgICAgIHNvbWVfZGlyID0gam9pbihzZWxmLnRtcF9kaXIsICdzb21lJykKKyAgICAgICAgb3MubWtkaXIoc29tZV9kaXIpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnaW5yb290LnR4dCcpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc29tZV9kaXIsICdmaWxlLnR4dCcpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc29tZV9kaXIsICdvdGhlcl9maWxlLnR4dCcpLCAnIycpCisKKyAgICAgICAgZGlzdC5kYXRhX2ZpbGVzID0geydkYXRhL2RhdGEuZHQnOiAne2FwcGRhdGF9L2RhdGEuZHQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lucm9vdC50eHQnOiAne2FwcGRhdGF9L2lucm9vdC50eHQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NvbWUvZmlsZS50eHQnOiAne2FwcGRhdGF9L2ZpbGUudHh0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICdzb21lL290aGVyX2ZpbGUudHh0JzogJ3thcHBkYXRhfS9vdGhlcl9maWxlLnR4dCd9CisKKyAgICAgICAgIyBhZGRpbmcgYSBzY3JpcHQKKyAgICAgICAgc2NyaXB0X2RpciA9IGpvaW4oc2VsZi50bXBfZGlyLCAnc2NyaXB0cycpCisgICAgICAgIG9zLm1rZGlyKHNjcmlwdF9kaXIpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2NyaXB0X2RpciwgJ3NjcmlwdC5weScpLCAnIycpCisgICAgICAgIGRpc3Quc2NyaXB0cyA9IFtqb2luKCdzY3JpcHRzJywgJ3NjcmlwdC5weScpXQorCisgICAgICAgIGNtZC5mb3JtYXRzID0gWyd6aXAnXQorICAgICAgICBjbWQudXNlX2RlZmF1bHRzID0gVHJ1ZQorCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyBub3cgbGV0J3MgY2hlY2sgd2hhdCB3ZSBoYXZlCisgICAgICAgIGRpc3RfZm9sZGVyID0gam9pbihzZWxmLnRtcF9kaXIsICdkaXN0JykKKyAgICAgICAgZmlsZXMgPSBvcy5saXN0ZGlyKGRpc3RfZm9sZGVyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZpbGVzLCBbJ2Zha2UtMS4wLnppcCddKQorCisgICAgICAgIHdpdGggemlwZmlsZS5aaXBGaWxlKGpvaW4oZGlzdF9mb2xkZXIsICdmYWtlLTEuMC56aXAnKSkgYXMgemlwX2ZpbGU6CisgICAgICAgICAgICBjb250ZW50ID0gemlwX2ZpbGUubmFtZWxpc3QoKQorCisgICAgICAgICMgTWFraW5nIHN1cmUgZXZlcnl0aGluZyB3YXMgYWRkZWQuIFRoaXMgaW5jbHVkZXMgOCBjb2RlIGFuZCBkYXRhCisgICAgICAgICMgZmlsZXMgaW4gYWRkaXRpb24gdG8gUEtHLUlORk8gYW5kIHNldHVwLmNmZworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjb250ZW50KSwgMTApCisKKyAgICAgICAgIyBDaGVja2luZyB0aGUgTUFOSUZFU1QKKyAgICAgICAgd2l0aCBvcGVuKGpvaW4oc2VsZi50bXBfZGlyLCAnTUFOSUZFU1QnKSkgYXMgZnA6CisgICAgICAgICAgICBtYW5pZmVzdCA9IGZwLnJlYWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LCBNQU5JRkVTVCAlIHsnc2VwJzogb3Muc2VwfSkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfbWV0YWRhdGFfY2hlY2tfb3B0aW9uKHNlbGYpOgorICAgICAgICAjIHRlc3RpbmcgdGhlIGBjaGVjay1tZXRhZGF0YWAgb3B0aW9uCisgICAgICAgIGRpc3QsIGNtZCA9IHNlbGYuZ2V0X2NtZChtZXRhZGF0YT17J25hbWUnOiAneHh4JywgJ3ZlcnNpb24nOiAneHh4J30pCisKKyAgICAgICAgIyB0aGlzIHNob3VsZCBjYXVzZSB0aGUgY2hlY2sgc3ViY29tbWFuZCB0byBsb2cgdHdvIHdhcm5pbmdzOgorICAgICAgICAjIHZlcnNpb24gaXMgaW52YWxpZCwgaG9tZS1wYWdlIGFuZCBhdXRob3IgYXJlIG1pc3NpbmcKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKyAgICAgICAgd2FybmluZ3MgPSBzZWxmLmdldF9sb2dzKCkKKyAgICAgICAgY2hlY2tfd2FybmluZ3MgPSBbbXNnIGZvciBtc2cgaW4gd2FybmluZ3MgaWYKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbm90IG1zZy5zdGFydHN3aXRoKCdzZGlzdDonKV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY2hlY2tfd2FybmluZ3MpLCAyLCB3YXJuaW5ncykKKworICAgICAgICAjIHRyeWluZyB3aXRoIGEgY29tcGxldGUgc2V0IG9mIG1ldGFkYXRhCisgICAgICAgIHNlbGYubG9naGFuZGxlci5mbHVzaCgpCisgICAgICAgIGRpc3QsIGNtZCA9IHNlbGYuZ2V0X2NtZCgpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLm1ldGFkYXRhX2NoZWNrID0gRmFsc2UKKyAgICAgICAgY21kLnJ1bigpCisgICAgICAgIHdhcm5pbmdzID0gc2VsZi5nZXRfbG9ncygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHdhcm5pbmdzKSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRJbigndXNpbmcgZGVmYXVsdCBmaWxlIGxpc3QnLCB3YXJuaW5nc1swXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiJ3NldHVwLmNmZycgZmlsZSBub3QgZm91bmQiLCB3YXJuaW5nc1sxXSkKKworICAgIGRlZiB0ZXN0X3Nob3dfZm9ybWF0cyhzZWxmKToKKyAgICAgICAgd2l0aCBjYXB0dXJlZF9zdGRvdXQoKSBhcyBzdGRvdXQ6CisgICAgICAgICAgICBzaG93X2Zvcm1hdHMoKQorICAgICAgICBzdGRvdXQgPSBzdGRvdXQuZ2V0dmFsdWUoKQorCisgICAgICAgICMgdGhlIG91dHB1dCBzaG91bGQgYmUgYSBoZWFkZXIgbGluZSArIG9uZSBsaW5lIHBlciBmb3JtYXQKKyAgICAgICAgbnVtX2Zvcm1hdHMgPSBsZW4oZ2V0X2FyY2hpdmVfZm9ybWF0cygpKQorICAgICAgICBvdXRwdXQgPSBbbGluZSBmb3IgbGluZSBpbiBzdGRvdXQuc3BsaXQoJ1xuJykKKyAgICAgICAgICAgICAgICAgIGlmIGxpbmUuc3RyaXAoKS5zdGFydHN3aXRoKCctLWZvcm1hdHM9JyldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG91dHB1dCksIG51bV9mb3JtYXRzKQorCisgICAgZGVmIHRlc3RfZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorCisgICAgICAgICMgZGVmYXVsdCBvcHRpb25zIHNldCBieSBmaW5hbGl6ZQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5tYW5pZmVzdCwgJ01BTklGRVNUJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuZGlzdF9kaXIsICdkaXN0JykKKworICAgICAgICAjIGZvcm1hdHMgaGFzIHRvIGJlIGEgc3RyaW5nIHNwbGl0YWJsZSBvbiAoJyAnLCAnLCcpIG9yCisgICAgICAgICMgYSBzdHJpbmdsaXN0CisgICAgICAgIGNtZC5mb3JtYXRzID0gMQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgY21kLmZpbmFsaXplX29wdGlvbnMpCisgICAgICAgIGNtZC5mb3JtYXRzID0gWyd6aXAnXQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisKKyAgICAgICAgIyBmb3JtYXRzIGhhcyB0byBiZSBrbm93bgorICAgICAgICBjbWQuZm9ybWF0cyA9ICdzdXBhemlwYScKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGNtZC5maW5hbGl6ZV9vcHRpb25zKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF90ZW1wbGF0ZShzZWxmKToKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKyAgICAgICAgZGlzdC5leHRyYV9maWxlcyA9IFsnaW5jbHVkZSB5ZWFoJ10KKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYudG1wX2RpciwgJ3llYWgnKSwgJ3h4eCcpCisgICAgICAgIGNtZC5ydW4oKQorICAgICAgICB3aXRoIG9wZW4oY21kLm1hbmlmZXN0KSBhcyBmOgorICAgICAgICAgICAgY29udGVudCA9IGYucmVhZCgpCisKKyAgICAgICAgc2VsZi5hc3NlcnRJbigneWVhaCcsIGNvbnRlbnQpCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKFVJRF9HSURfU1VQUE9SVCwgInJlcXVpcmVzIGdycCBhbmQgcHdkIHN1cHBvcnQiKQorICAgIEB1bml0dGVzdC5za2lwSWYoZmluZF9leGVjdXRhYmxlKCd0YXInKSBpcyBOb25lIG9yCisgICAgICAgICAgICAgICAgICAgICBmaW5kX2V4ZWN1dGFibGUoJ2d6aXAnKSBpcyBOb25lLAorICAgICAgICAgICAgICAgICAgICAgJ3JlcXVpcmVzIHRhciBhbmQgZ3ppcCBwcm9ncmFtcycpCisgICAgZGVmIHRlc3RfbWFrZV9kaXN0cmlidXRpb25fb3duZXJfZ3JvdXAoc2VsZik6CisgICAgICAgICMgYnVpbGRpbmcgYSBzZGlzdAorICAgICAgICBkaXN0LCBjbWQgPSBzZWxmLmdldF9jbWQoKQorCisgICAgICAgICMgY3JlYXRpbmcgYSBnenRhciBhbmQgc3BlY2lmeWluZyB0aGUgb3duZXIrZ3JvdXAKKyAgICAgICAgY21kLmZvcm1hdHMgPSBbJ2d6dGFyJ10KKyAgICAgICAgY21kLm93bmVyID0gcHdkLmdldHB3dWlkKDApWzBdCisgICAgICAgIGNtZC5ncm91cCA9IGdycC5nZXRncmdpZCgwKVswXQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgbWFraW5nIHN1cmUgd2UgaGF2ZSB0aGUgZ29vZCByaWdodHMKKyAgICAgICAgYXJjaGl2ZV9uYW1lID0gam9pbihzZWxmLnRtcF9kaXIsICdkaXN0JywgJ2Zha2UtMS4wLnRhci5neicpCisgICAgICAgIHdpdGggdGFyZmlsZS5vcGVuKGFyY2hpdmVfbmFtZSkgYXMgYXJjaGl2ZToKKyAgICAgICAgICAgIGZvciBtZW1iZXIgaW4gYXJjaGl2ZS5nZXRtZW1iZXJzKCk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZW1iZXIudWlkLCAwKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWVtYmVyLmdpZCwgMCkKKworICAgICAgICAjIGJ1aWxkaW5nIGEgc2Rpc3QgYWdhaW4KKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKworICAgICAgICAjIGNyZWF0aW5nIGEgZ3p0YXIKKyAgICAgICAgY21kLmZvcm1hdHMgPSBbJ2d6dGFyJ10KKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICAjIG1ha2luZyBzdXJlIHdlIGhhdmUgdGhlIGdvb2QgcmlnaHRzCisgICAgICAgIGFyY2hpdmVfbmFtZSA9IGpvaW4oc2VsZi50bXBfZGlyLCAnZGlzdCcsICdmYWtlLTEuMC50YXIuZ3onKQorICAgICAgICB3aXRoIHRhcmZpbGUub3BlbihhcmNoaXZlX25hbWUpIGFzIGFyY2hpdmU6CisKKyAgICAgICAgICAgICMgbm90ZSB0aGF0IHdlIGFyZSBub3QgdGVzdGluZyB0aGUgZ3JvdXAgb3duZXJzaGlwIGhlcmUKKyAgICAgICAgICAgICMgYmVjYXVzZSwgZGVwZW5kaW5nIG9uIHRoZSBwbGF0Zm9ybXMgYW5kIHRoZSBjb250YWluZXIKKyAgICAgICAgICAgICMgcmlnaHRzIChzZWUgIzc0MDgpCisgICAgICAgICAgICBmb3IgbWVtYmVyIGluIGFyY2hpdmUuZ2V0bWVtYmVycygpOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWVtYmVyLnVpZCwgb3MuZ2V0dWlkKCkpCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X2dldF9maWxlX2xpc3Qoc2VsZik6CisgICAgICAgICMgbWFrZSBzdXJlIE1BTklGRVNUIGlzIHJlY2FsY3VsYXRlZAorICAgICAgICBkaXN0LCBjbWQgPSBzZWxmLmdldF9jbWQoKQorICAgICAgICAjIGZpbGxpbmcgZGF0YV9maWxlcyBieSBwb2ludGluZyBmaWxlcyBpbiBwYWNrYWdlX2RhdGEKKyAgICAgICAgZGlzdC5wYWNrYWdlX2RhdGEgPSB7J3NvbWVjb2RlJzogWycqLnR4dCddfQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYudG1wX2RpciwgJ3NvbWVjb2RlJywgJ2RvYy50eHQnKSwgJyMnKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorCisgICAgICAgICMgU2hvdWxkIHByb2R1Y2UgZm91ciBsaW5lcy4gVGhvc2UgbGluZXMgYXJlIG9uZSBjb21tZW50LCBvbmUgZGVmYXVsdAorICAgICAgICAjIChSRUFETUUpIGFuZCB0d28gcGFja2FnZSBmaWxlcy4KKyAgICAgICAgd2l0aCBvcGVuKGNtZC5tYW5pZmVzdCkgYXMgZjoKKyAgICAgICAgICAgIG1hbmlmZXN0ID0gW2xpbmUuc3RyaXAoKSBmb3IgbGluZSBpbiBmLnJlYWQoKS5zcGxpdCgnXG4nKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgbGluZS5zdHJpcCgpICE9ICcnXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtYW5pZmVzdCksIDMpCisKKyAgICAgICAgIyBBZGRpbmcgYSBmaWxlCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2VsZi50bXBfZGlyLCAnc29tZWNvZGUnLCAnZG9jMi50eHQnKSwgJyMnKQorCisgICAgICAgICMgbWFrZSBzdXJlIGJ1aWxkX3B5IGlzIHJlaW5pdGlhbGl6ZWQsIGxpa2UgYSBmcmVzaCBydW4KKyAgICAgICAgYnVpbGRfcHkgPSBkaXN0LmdldF9jb21tYW5kX29iaignYnVpbGRfcHknKQorICAgICAgICBidWlsZF9weS5maW5hbGl6ZWQgPSBGYWxzZQorICAgICAgICBidWlsZF9weS5lbnN1cmVfZmluYWxpemVkKCkKKworICAgICAgICBjbWQucnVuKCkKKworICAgICAgICB3aXRoIG9wZW4oY21kLm1hbmlmZXN0KSBhcyBmOgorICAgICAgICAgICAgbWFuaWZlc3QyID0gW2xpbmUuc3RyaXAoKSBmb3IgbGluZSBpbiBmLnJlYWQoKS5zcGxpdCgnXG4nKQorICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGxpbmUuc3RyaXAoKSAhPSAnJ10KKworICAgICAgICAjIERvIHdlIGhhdmUgdGhlIG5ldyBmaWxlIGluIE1BTklGRVNUPworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtYW5pZmVzdDIpLCA0KQorICAgICAgICBzZWxmLmFzc2VydEluKCdkb2MyLnR4dCcsIG1hbmlmZXN0MlstMV0pCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X21hbmlmZXN0X21hcmtlcihzZWxmKToKKyAgICAgICAgIyBjaGVjayB0aGF0IGF1dG9nZW5lcmF0ZWQgTUFOSUZFU1RzIGhhdmUgYSBtYXJrZXIKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICB3aXRoIG9wZW4oY21kLm1hbmlmZXN0KSBhcyBmOgorICAgICAgICAgICAgbWFuaWZlc3QgPSBbbGluZS5zdHJpcCgpIGZvciBsaW5lIGluIGYucmVhZCgpLnNwbGl0KCdcbicpCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBsaW5lLnN0cmlwKCkgIT0gJyddCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdFswXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnIyBmaWxlIEdFTkVSQVRFRCBieSBwYWNrYWdpbmcsIGRvIE5PVCBlZGl0JykKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfbWFudWFsX21hbmlmZXN0KHNlbGYpOgorICAgICAgICAjIGNoZWNrIHRoYXQgYSBNQU5JRkVTVCB3aXRob3V0IGEgbWFya2VyIGlzIGxlZnQgYWxvbmUKKyAgICAgICAgZGlzdCwgY21kID0gc2VsZi5nZXRfY21kKCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYudG1wX2RpciwgY21kLm1hbmlmZXN0KSwgJ1JFQURNRS5tYW51YWwnKQorICAgICAgICBjbWQucnVuKCkKKworICAgICAgICB3aXRoIG9wZW4oY21kLm1hbmlmZXN0KSBhcyBmOgorICAgICAgICAgICAgbWFuaWZlc3QgPSBbbGluZS5zdHJpcCgpIGZvciBsaW5lIGluIGYucmVhZCgpLnNwbGl0KCdcbicpCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBsaW5lLnN0cmlwKCkgIT0gJyddCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdCwgWydSRUFETUUubWFudWFsJ10pCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X21hbmlmZXN0X2J1aWxkZXIoc2VsZik6CisgICAgICAgIGRpc3QsIGNtZCA9IHNlbGYuZ2V0X2NtZCgpCisgICAgICAgIGNtZC5tYW5pZmVzdF9idWlsZGVycyA9ICdwYWNrYWdpbmcudGVzdHMudGVzdF9jb21tYW5kX3NkaXN0LmJ1aWxkZXInCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2JhaCcsIGNtZC5maWxlbGlzdC5maWxlcykKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoU0Rpc3RUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX3Rlc3QucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF90ZXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdhYTFmNzkKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF90ZXN0LnB5CkBAIC0wLDAgKzEsMjI0IEBACitpbXBvcnQgb3MKK2ltcG9ydCByZQoraW1wb3J0IHN5cworaW1wb3J0IHNodXRpbAoraW1wb3J0IHVuaXR0ZXN0IGFzIHV0MQoraW1wb3J0IHBhY2thZ2luZy5kYXRhYmFzZQorCitmcm9tIG9zLnBhdGggaW1wb3J0IGpvaW4KK2Zyb20gb3BlcmF0b3IgaW1wb3J0IGdldGl0ZW0sIHNldGl0ZW0sIGRlbGl0ZW0KK2Zyb20gcGFja2FnaW5nLmNvbW1hbmQuYnVpbGQgaW1wb3J0IGJ1aWxkCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IChUZW1wZGlyTWFuYWdlciwgRW52aXJvblJlc3RvcmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExvZ2dpbmdDYXRjaGVyKQorZnJvbSBwYWNrYWdpbmcuY29tbWFuZC50ZXN0IGltcG9ydCB0ZXN0Citmcm9tIHBhY2thZ2luZy5jb21tYW5kIGltcG9ydCBzZXRfY29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCisKKworRVhQRUNURURfT1VUUFVUX1JFID0gcicnJ0ZBSUw6IHRlc3RfYmxhaCBcKG15b3dudGVzdG1vZHVsZS5Tb21lVGVzdFwpCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCitUcmFjZWJhY2sgXChtb3N0IHJlY2VudCBjYWxsIGxhc3RcKToKKyAgRmlsZSAiLisvbXlvd250ZXN0bW9kdWxlLnB5IiwgbGluZSBcZCssIGluIHRlc3RfYmxhaAorICAgIHNlbGYuZmFpbFwoImhvcnJpYmx5IlwpCitBc3NlcnRpb25FcnJvcjogaG9ycmlibHkKKycnJworCitoZXJlID0gb3MucGF0aC5kaXJuYW1lKG9zLnBhdGguYWJzcGF0aChfX2ZpbGVfXykpCisKKworY2xhc3MgTW9ja0J1aWxkQ21kKGJ1aWxkKToKKyAgICBidWlsZF9saWIgPSAibW9jayBidWlsZCBsaWIiCisgICAgY29tbWFuZF9uYW1lID0gJ2J1aWxkJworICAgIHBsYXRfbmFtZSA9ICd3aGF0ZXZlcicKKworICAgIGRlZiBpbml0aWFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIHBhc3MKKworICAgIGRlZiBmaW5hbGl6ZV9vcHRpb25zKHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBzZWxmLl9yZWNvcmQuYXBwZW5kKCJidWlsZCBoYXMgcnVuIikKKworCitjbGFzcyBUZXN0VGVzdChUZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgIEVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgIExvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydQWVRIT05QQVRIJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoVGVzdFRlc3QsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHBhY2thZ2luZy5kYXRhYmFzZS5jbGVhcl9jYWNoZSkKKyAgICAgICAgbmV3X3B5dGhvbnBhdGggPSBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5kaXJuYW1lKGhlcmUpKQorICAgICAgICBweXRob25wYXRoID0gb3MuZW52aXJvbi5nZXQoJ1BZVEhPTlBBVEgnKQorICAgICAgICBpZiBweXRob25wYXRoIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgbmV3X3B5dGhvbnBhdGggPSBvcy5wYXRoc2VwLmpvaW4oKG5ld19weXRob25wYXRoLCBweXRob25wYXRoKSkKKyAgICAgICAgb3MuZW52aXJvblsnUFlUSE9OUEFUSCddID0gbmV3X3B5dGhvbnBhdGgKKworICAgIGRlZiBhc3NlcnRfcmVfbWF0Y2goc2VsZiwgcGF0dGVybiwgc3RyaW5nKToKKyAgICAgICAgZGVmIHF1b3RlKHMpOgorICAgICAgICAgICAgbGluZXMgPSBbJyMjICcgKyBsaW5lIGZvciBsaW5lIGluIHMuc3BsaXQoJ1xuJyldCisgICAgICAgICAgICBzZXAgPSBbIiMiICogNjBdCisgICAgICAgICAgICByZXR1cm4gWycnXSArIHNlcCArIGxpbmVzICsgc2VwCisgICAgICAgIG1zZyA9IHF1b3RlKHBhdHRlcm4pICsgWyJkaWRuJ3QgbWF0Y2giXSArIHF1b3RlKHN0cmluZykKKyAgICAgICAgbXNnID0gIlxuIi5qb2luKG1zZykKKyAgICAgICAgaWYgbm90IHJlLnNlYXJjaChwYXR0ZXJuLCBzdHJpbmcpOgorICAgICAgICAgICAgc2VsZi5mYWlsKG1zZykKKworICAgIGRlZiBwcmVwYXJlX2Rpc3Qoc2VsZiwgZGlzdF9uYW1lKToKKyAgICAgICAgcGtnX2RpciA9IGpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgImRpc3RzIiwgZGlzdF9uYW1lKQorICAgICAgICB0ZW1wX3BrZ19kaXIgPSBqb2luKHNlbGYubWtkdGVtcCgpLCBkaXN0X25hbWUpCisgICAgICAgIHNodXRpbC5jb3B5dHJlZShwa2dfZGlyLCB0ZW1wX3BrZ19kaXIpCisgICAgICAgIHJldHVybiB0ZW1wX3BrZ19kaXIKKworICAgIGRlZiBzYWZlbHlfcmVwbGFjZShzZWxmLCBvYmosIGF0dHIsCisgICAgICAgICAgICAgICAgICAgICAgIG5ld192YWw9Tm9uZSwgZGVsZXRlPUZhbHNlLCBkaWN0aW9uYXJ5PUZhbHNlKToKKyAgICAgICAgIiIiUmVwbGFjZSBhIG9iamVjdCdzIGF0dHJpYnV0ZSByZXR1cm5pbmcgdG8gaXRzIG9yaWdpbmFsIHN0YXRlIGF0IHRoZQorICAgICAgICBlbmQgb2YgdGhlIHRlc3QgcnVuLiBDcmVhdGVzIHRoZSBhdHRyaWJ1dGUgaWYgbm90IHByZXNlbnQgYmVmb3JlCisgICAgICAgIChkZWxldGluZyBhZnRlcndhcmRzKS4gV2hlbiBkZWxldGU9VHJ1ZSwgbWFrZXMgc3VyZSB0aGUgdmFsdWUgaXMgZGVsJ2QKKyAgICAgICAgZm9yIHRoZSB0ZXN0IHJ1bi4gSWYgZGljdGlvbmFyeSBpcyBzZXQgdG8gVHJ1ZSwgb3BlcmF0ZXMgb2YgaXRzIGl0ZW1zCisgICAgICAgIHJhdGhlciB0aGFuIGF0dHJpYnV0ZXMuIiIiCisgICAgICAgIGlmIGRpY3Rpb25hcnk6CisgICAgICAgICAgICBfc2V0YXR0ciwgX2dldGF0dHIsIF9kZWxhdHRyID0gc2V0aXRlbSwgZ2V0aXRlbSwgZGVsaXRlbQorCisgICAgICAgICAgICBkZWYgX2hhc2F0dHIoX2RpY3QsIHZhbHVlKToKKyAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWUgaW4gX2RpY3QKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIF9zZXRhdHRyLCBfZ2V0YXR0ciwgX2RlbGF0dHIsIF9oYXNhdHRyID0gKHNldGF0dHIsIGdldGF0dHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxhdHRyLCBoYXNhdHRyKQorCisgICAgICAgIG9yaWdfaGFzX2F0dHIgPSBfaGFzYXR0cihvYmosIGF0dHIpCisgICAgICAgIGlmIG9yaWdfaGFzX2F0dHI6CisgICAgICAgICAgICBvcmlnX3ZhbCA9IF9nZXRhdHRyKG9iaiwgYXR0cikKKworICAgICAgICBpZiBkZWxldGUgaXMgRmFsc2U6CisgICAgICAgICAgICBfc2V0YXR0cihvYmosIGF0dHIsIG5ld192YWwpCisgICAgICAgIGVsaWYgb3JpZ19oYXNfYXR0cjoKKyAgICAgICAgICAgIF9kZWxhdHRyKG9iaiwgYXR0cikKKworICAgICAgICBkZWYgZG9fY2xlYW51cCgpOgorICAgICAgICAgICAgaWYgb3JpZ19oYXNfYXR0cjoKKyAgICAgICAgICAgICAgICBfc2V0YXR0cihvYmosIGF0dHIsIG9yaWdfdmFsKQorICAgICAgICAgICAgZWxpZiBfaGFzYXR0cihvYmosIGF0dHIpOgorICAgICAgICAgICAgICAgIF9kZWxhdHRyKG9iaiwgYXR0cikKKworICAgICAgICBzZWxmLmFkZENsZWFudXAoZG9fY2xlYW51cCkKKworICAgIGRlZiB0ZXN0X3J1bnNfdW5pdHRlc3Qoc2VsZik6CisgICAgICAgIG1vZHVsZV9uYW1lLCBhX21vZHVsZSA9IHNlbGYucHJlcGFyZV9hX21vZHVsZSgpCisgICAgICAgIHJlY29yZCA9IFtdCisgICAgICAgIGFfbW9kdWxlLnJlY29yZGVyID0gbGFtYmRhICphcmdzOiByZWNvcmQuYXBwZW5kKCJzdWl0ZSIpCisKKyAgICAgICAgY2xhc3MgTW9ja1RleHRUZXN0UnVubmVyOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKCpfLCAqKl9fKToKKyAgICAgICAgICAgICAgICBwYXNzCisKKyAgICAgICAgICAgIGRlZiBydW4oX3NlbGYsIHN1aXRlKToKKyAgICAgICAgICAgICAgICByZWNvcmQuYXBwZW5kKCJydW4iKQorCisgICAgICAgIHNlbGYuc2FmZWx5X3JlcGxhY2UodXQxLCAiVGV4dFRlc3RSdW5uZXIiLCBNb2NrVGV4dFRlc3RSdW5uZXIpCisKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGNtZCA9IHRlc3QoZGlzdCkKKyAgICAgICAgY21kLnN1aXRlID0gIiVzLnJlY29yZGVyIiAlIG1vZHVsZV9uYW1lCisgICAgICAgIGNtZC5ydW4oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZCwgWyJzdWl0ZSIsICJydW4iXSkKKworICAgIGRlZiB0ZXN0X2J1aWxkc19iZWZvcmVfcnVubmluZ190ZXN0cyhzZWxmKToKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNldF9jb21tYW5kLCAncGFja2FnaW5nLmNvbW1hbmQuYnVpbGQuYnVpbGQnKQorICAgICAgICBzZXRfY29tbWFuZCgncGFja2FnaW5nLnRlc3RzLnRlc3RfY29tbWFuZF90ZXN0Lk1vY2tCdWlsZENtZCcpCisKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGRpc3QuZ2V0X2NvbW1hbmRfb2JqKCdidWlsZCcpLl9yZWNvcmQgPSByZWNvcmQgPSBbXQorICAgICAgICBjbWQgPSB0ZXN0KGRpc3QpCisgICAgICAgIGNtZC5ydW5uZXIgPSBzZWxmLnByZXBhcmVfbmFtZWRfZnVuY3Rpb24obGFtYmRhOiBOb25lKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisgICAgICAgIGNtZC5ydW4oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnYnVpbGQgaGFzIHJ1biddLCByZWNvcmQpCisKKyAgICBAdW5pdHRlc3Quc2tpcCgnbmVlZHMgdG8gYmUgd3JpdHRlbicpCisgICAgZGVmIHRlc3Rfd29ya3Nfd2l0aF8ydG8zKHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgdGVzdF9jaGVja3NfcmVxdWlyZXMoc2VsZik6CisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBjbWQgPSB0ZXN0KGRpc3QpCisgICAgICAgIHBob255X3Byb2plY3QgPSAnb2hub19vaG5vLWltcG9zc2libGVfMTIzNC1uYW1lX3N0b3AtdGhhdCEnCisgICAgICAgIGNtZC50ZXN0c19yZXF1aXJlID0gW3Bob255X3Byb2plY3RdCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgbG9ncyA9IHNlbGYuZ2V0X2xvZ3MoKQorICAgICAgICBzZWxmLmFzc2VydEluKHBob255X3Byb2plY3QsIGxvZ3NbLTFdKQorCisgICAgZGVmIHByZXBhcmVfYV9tb2R1bGUoc2VsZik6CisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzeXMucGF0aC5hcHBlbmQodG1wX2RpcikKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5wYXRoLnJlbW92ZSwgdG1wX2RpcikKKworICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHRtcF9kaXIsICdwYWNrYWdpbmdfdGVzdHNfYS5weScpLCAnJykKKyAgICAgICAgaW1wb3J0IHBhY2thZ2luZ190ZXN0c19hIGFzIGFfbW9kdWxlCisgICAgICAgIHJldHVybiAicGFja2FnaW5nX3Rlc3RzX2EiLCBhX21vZHVsZQorCisgICAgZGVmIHByZXBhcmVfbmFtZWRfZnVuY3Rpb24oc2VsZiwgZnVuYyk6CisgICAgICAgIG1vZHVsZV9uYW1lLCBhX21vZHVsZSA9IHNlbGYucHJlcGFyZV9hX21vZHVsZSgpCisgICAgICAgIGFfbW9kdWxlLnJlY29yZGVyID0gZnVuYworICAgICAgICByZXR1cm4gIiVzLnJlY29yZGVyIiAlIG1vZHVsZV9uYW1lCisKKyAgICBkZWYgdGVzdF9jdXN0b21fcnVubmVyKHNlbGYpOgorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgY21kID0gdGVzdChkaXN0KQorICAgICAgICByZWNvcmQgPSBbXQorICAgICAgICBjbWQucnVubmVyID0gc2VsZi5wcmVwYXJlX25hbWVkX2Z1bmN0aW9uKAorICAgICAgICAgICAgbGFtYmRhOiByZWNvcmQuYXBwZW5kKCJydW5uZXIgY2FsbGVkIikpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJ1bigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWyJydW5uZXIgY2FsbGVkIl0sIHJlY29yZCkKKworICAgIGRlZiBwcmVwYXJlX21vY2tfdXQyKHNlbGYpOgorICAgICAgICBjbGFzcyBNb2NrVVRDbGFzczoKKyAgICAgICAgICAgIGRlZiBfX2luaXRfXygqXywgKipfXyk6CisgICAgICAgICAgICAgICAgcGFzcworCisgICAgICAgICAgICBkZWYgZGlzY292ZXIoc2VsZik6CisgICAgICAgICAgICAgICAgcGFzcworCisgICAgICAgICAgICBkZWYgcnVuKHNlbGYsIF8pOgorICAgICAgICAgICAgICAgIHBhc3MKKworICAgICAgICBjbGFzcyBNb2NrVVRNb2R1bGU6CisgICAgICAgICAgICBUZXN0TG9hZGVyID0gTW9ja1VUQ2xhc3MKKyAgICAgICAgICAgIFRleHRUZXN0UnVubmVyID0gTW9ja1VUQ2xhc3MKKworICAgICAgICBtb2NrX3V0MiA9IE1vY2tVVE1vZHVsZSgpCisgICAgICAgIHNlbGYuc2FmZWx5X3JlcGxhY2Uoc3lzLm1vZHVsZXMsICJ1bml0dGVzdDIiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vY2tfdXQyLCBkaWN0aW9uYXJ5PVRydWUpCisgICAgICAgIHJldHVybiBtb2NrX3V0MgorCisgICAgZGVmIHRlc3RfZ2V0c191bml0dGVzdF9kaXNjb3Zlcnkoc2VsZik6CisgICAgICAgIG1vY2tfdXQyID0gc2VsZi5wcmVwYXJlX21vY2tfdXQyKCkKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGNtZCA9IHRlc3QoZGlzdCkKKyAgICAgICAgc2VsZi5zYWZlbHlfcmVwbGFjZSh1dDEuVGVzdExvYWRlciwgImRpc2NvdmVyIiwgbGFtYmRhOiBOb25lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5nZXRfdXRfd2l0aF9kaXNjb3ZlcnkoKSwgdXQxKQorCisgICAgICAgIGRlbCB1dDEuVGVzdExvYWRlci5kaXNjb3ZlcgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5nZXRfdXRfd2l0aF9kaXNjb3ZlcnkoKSwgbW9ja191dDIpCisKKyAgICBkZWYgdGVzdF9jYWxsc19kaXNjb3ZlcihzZWxmKToKKyAgICAgICAgc2VsZi5zYWZlbHlfcmVwbGFjZSh1dDEuVGVzdExvYWRlciwgImRpc2NvdmVyIiwgZGVsZXRlPVRydWUpCisgICAgICAgIG1vY2tfdXQyID0gc2VsZi5wcmVwYXJlX21vY2tfdXQyKCkKKyAgICAgICAgcmVjb3JkID0gW10KKyAgICAgICAgbW9ja191dDIuVGVzdExvYWRlci5kaXNjb3ZlciA9IGxhbWJkYSBzZWxmLCBwYXRoOiByZWNvcmQuYXBwZW5kKHBhdGgpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBjbWQgPSB0ZXN0KGRpc3QpCisgICAgICAgIGNtZC5ydW4oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFtvcy5jdXJkaXJdLCByZWNvcmQpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKFRlc3RUZXN0KQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfdXBsb2FkLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfdXBsb2FkLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFmNjhjMWQKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tbWFuZF91cGxvYWQucHkKQEAgLTAsMCArMSwxNTkgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tbWFuZC51cGxvYWQuIiIiCitpbXBvcnQgb3MKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZC51cGxvYWQgaW1wb3J0IHVwbG9hZAorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ09wdGlvbkVycm9yCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAordHJ5OgorICAgIGltcG9ydCB0aHJlYWRpbmcKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlciBpbXBvcnQgUHlQSVNlcnZlclRlc3RDYXNlCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgdGhyZWFkaW5nID0gTm9uZQorICAgIFB5UElTZXJ2ZXJUZXN0Q2FzZSA9IHVuaXR0ZXN0LlRlc3RDYXNlCisKKworUFlQSVJDX05PUEFTU1dPUkQgPSAiIiJcCitbZGlzdHV0aWxzXQorCitpbmRleC1zZXJ2ZXJzID0KKyAgICBzZXJ2ZXIxCisKK1tzZXJ2ZXIxXQordXNlcm5hbWU6bWUKKyIiIgorCitQWVBJUkMgPSAiIiJcCitbZGlzdHV0aWxzXQorCitpbmRleC1zZXJ2ZXJzID0KKyAgICBzZXJ2ZXIxCisgICAgc2VydmVyMgorCitbc2VydmVyMV0KK3VzZXJuYW1lOm1lCitwYXNzd29yZDpzZWNyZXQKKworW3NlcnZlcjJdCit1c2VybmFtZTptZWFnYWluCitwYXNzd29yZDogc2VjcmV0CityZWFsbTphY21lCityZXBvc2l0b3J5Omh0dHA6Ly9hbm90aGVyLnB5cGkvCisiIiIKKworCitAdW5pdHRlc3Quc2tpcElmKHRocmVhZGluZyBpcyBOb25lLCAnbmVlZHMgdGhyZWFkaW5nJykKK2NsYXNzIFVwbG9hZFRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsIHN1cHBvcnQuRW52aXJvblJlc3RvcmVyLAorICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwgUHlQSVNlcnZlclRlc3RDYXNlKToKKworICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnSE9NRSddCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFVwbG9hZFRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYudG1wX2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNlbGYucmMgPSBvcy5wYXRoLmpvaW4oc2VsZi50bXBfZGlyLCAnLnB5cGlyYycpCisgICAgICAgIG9zLmVudmlyb25bJ0hPTUUnXSA9IHNlbGYudG1wX2RpcgorCisgICAgZGVmIHRlc3RfZmluYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIyBuZXcgZm9ybWF0CisgICAgICAgIHNlbGYud3JpdGVfZmlsZShzZWxmLnJjLCBQWVBJUkMpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorICAgICAgICBjbWQgPSB1cGxvYWQoZGlzdCkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBmb3IgYXR0ciwgZXhwZWN0ZWQgaW4gKCgndXNlcm5hbWUnLCAnbWUnKSwgKCdwYXNzd29yZCcsICdzZWNyZXQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ3JlYWxtJywgJ3B5cGknKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ3JlcG9zaXRvcnknLCAnaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpJykpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRhdHRyKGNtZCwgYXR0ciksIGV4cGVjdGVkKQorCisgICAgZGVmIHRlc3RfZmluYWxpemVfb3B0aW9uc191bnNpZ25lZF9pZGVudGl0eV9yYWlzZXNfZXhjZXB0aW9uKHNlbGYpOgorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoc2VsZi5yYywgUFlQSVJDKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgY21kID0gdXBsb2FkKGRpc3QpCisgICAgICAgIGNtZC5pZGVudGl0eSA9IFRydWUKKyAgICAgICAgY21kLnNpZ24gPSBGYWxzZQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgY21kLmZpbmFsaXplX29wdGlvbnMpCisKKyAgICBkZWYgdGVzdF9zYXZlZF9wYXNzd29yZChzZWxmKToKKyAgICAgICAgIyBmaWxlIHdpdGggbm8gcGFzc3dvcmQKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKHNlbGYucmMsIFBZUElSQ19OT1BBU1NXT1JEKQorCisgICAgICAgICMgbWFrZSBzdXJlIGl0IHBhc3NlcworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgY21kID0gdXBsb2FkKGRpc3QpCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQucGFzc3dvcmQsIE5vbmUpCisKKyAgICAgICAgIyBtYWtlIHN1cmUgd2UgZ2V0IGl0IGFzIHdlbGwsIGlmIGFub3RoZXIgY29tbWFuZAorICAgICAgICAjIGluaXRpYWxpemVkIGl0IGF0IHRoZSBkaXN0IGxldmVsCisgICAgICAgIGRpc3QucGFzc3dvcmQgPSAneHh4JworICAgICAgICBjbWQgPSB1cGxvYWQoZGlzdCkKKyAgICAgICAgY21kLmZpbmFsaXplX29wdGlvbnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5wYXNzd29yZCwgJ3h4eCcpCisKKyAgICBkZWYgdGVzdF91cGxvYWRfd2l0aG91dF9maWxlc19yYWlzZXNfZXhjZXB0aW9uKHNlbGYpOgorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgY21kID0gdXBsb2FkKGRpc3QpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ09wdGlvbkVycm9yLCBjbWQucnVuKQorCisgICAgZGVmIHRlc3RfdXBsb2FkKHNlbGYpOgorICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJ3h4eCcpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShwYXRoKQorICAgICAgICBjb21tYW5kLCBweXZlcnNpb24sIGZpbGVuYW1lID0gJ3h4eCcsICczLjMnLCBwYXRoCisgICAgICAgIGRpc3RfZmlsZXMgPSBbKGNvbW1hbmQsIHB5dmVyc2lvbiwgZmlsZW5hbWUpXQorCisgICAgICAgICMgbGV0J3MgcnVuIGl0CisgICAgICAgIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KGRpc3RfZmlsZXM9ZGlzdF9maWxlcywgYXV0aG9yPSdkw6lkw6knKVsxXQorICAgICAgICBjbWQgPSB1cGxvYWQoZGlzdCkKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBjbWQucmVwb3NpdG9yeSA9IHNlbGYucHlwaS5mdWxsX2FkZHJlc3MKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgIyB3aGF0IGRpZCB3ZSBzZW5kPworICAgICAgICBoYW5kbGVyLCByZXF1ZXN0X2RhdGEgPSBzZWxmLnB5cGkucmVxdWVzdHNbLTFdCisgICAgICAgIGhlYWRlcnMgPSBoYW5kbGVyLmhlYWRlcnMKKyAgICAgICAgc2VsZi5hc3NlcnRJbignZMOpZMOpJy5lbmNvZGUoJ3V0Zi04JyksIHJlcXVlc3RfZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ3h4eCcsIHJlcXVlc3RfZGF0YSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGludChoZWFkZXJzWydjb250ZW50LWxlbmd0aCddKSwgbGVuKHJlcXVlc3RfZGF0YSkpCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzcyhpbnQoaGVhZGVyc1snY29udGVudC1sZW5ndGgnXSksIDI1MDApCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShoZWFkZXJzWydjb250ZW50LXR5cGUnXS5zdGFydHN3aXRoKAorICAgICAgICAgICAgJ211bHRpcGFydC9mb3JtLWRhdGEnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYW5kbGVyLmNvbW1hbmQsICdQT1NUJykKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignXG4nLCBoZWFkZXJzWydhdXRob3JpemF0aW9uJ10pCisKKyAgICBkZWYgdGVzdF91cGxvYWRfZG9jcyhzZWxmKToKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLnRtcF9kaXIsICd4eHgnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUocGF0aCkKKyAgICAgICAgY29tbWFuZCwgcHl2ZXJzaW9uLCBmaWxlbmFtZSA9ICd4eHgnLCAnMy4zJywgcGF0aAorICAgICAgICBkaXN0X2ZpbGVzID0gWyhjb21tYW5kLCBweXZlcnNpb24sIGZpbGVuYW1lKV0KKyAgICAgICAgZG9jc19wYXRoID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgImJ1aWxkIiwgImRvY3MiKQorICAgICAgICBvcy5tYWtlZGlycyhkb2NzX3BhdGgpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoZG9jc19wYXRoLCAiaW5kZXguaHRtbCIpLCAieWVsbG93IikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKHNlbGYucmMsIFBZUElSQykKKworICAgICAgICAjIGxldCdzIHJ1biBpdAorICAgICAgICBkaXN0ID0gc2VsZi5jcmVhdGVfZGlzdChkaXN0X2ZpbGVzPWRpc3RfZmlsZXMsIGF1dGhvcj0nZMOpZMOpJylbMV0KKworICAgICAgICBjbWQgPSB1cGxvYWQoZGlzdCkKKyAgICAgICAgY21kLmdldF9maW5hbGl6ZWRfY29tbWFuZCgiYnVpbGQiKS5ydW4oKQorICAgICAgICBjbWQudXBsb2FkX2RvY3MgPSBUcnVlCisgICAgICAgIGNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgY21kLnJlcG9zaXRvcnkgPSBzZWxmLnB5cGkuZnVsbF9hZGRyZXNzCisgICAgICAgIG9zLmNoZGlyKHNlbGYudG1wX2RpcikKKyAgICAgICAgY21kLnJ1bigpCisKKyAgICAgICAgaGFuZGxlciwgcmVxdWVzdF9kYXRhID0gc2VsZi5weXBpLnJlcXVlc3RzWy0xXQorICAgICAgICBhY3Rpb24sIG5hbWUsIGNvbnRlbnQgPSByZXF1ZXN0X2RhdGEuc3BsaXQoCisgICAgICAgICAgICAiLS0tLS0tLS0tLS0tLS0tLUdIU0tGSkRMR0RTNzU0M0ZKS0xGSFJFNzU2NDI3NTY3NDMyNTQiCisgICAgICAgICAgICAuZW5jb2RlKCkpWzE6NF0KKworICAgICAgICBzZWxmLmFzc2VydEluKGInbmFtZT0iOmFjdGlvbiInLCBhY3Rpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYidkb2NfdXBsb2FkJywgYWN0aW9uKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShVcGxvYWRUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX3VwbG9hZF9kb2NzLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbW1hbmRfdXBsb2FkX2RvY3MucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODAzZTczMwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21tYW5kX3VwbG9hZF9kb2NzLnB5CkBAIC0wLDAgKzEsMTg2IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmNvbW1hbmQudXBsb2FkX2RvY3MuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBzaHV0aWwKK2ltcG9ydCBsb2dnaW5nCitpbXBvcnQgemlwZmlsZQordHJ5OgorICAgIGltcG9ydCBfc3NsCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgX3NzbCA9IE5vbmUKKworZnJvbSBwYWNrYWdpbmcuY29tbWFuZCBpbXBvcnQgdXBsb2FkX2RvY3MgYXMgdXBsb2FkX2RvY3NfbW9kCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLnVwbG9hZF9kb2NzIGltcG9ydCB1cGxvYWRfZG9jcywgemlwX2RpcgorZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0ZpbGVFcnJvciwgUGFja2FnaW5nT3B0aW9uRXJyb3IKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0Cit0cnk6CisgICAgaW1wb3J0IHRocmVhZGluZworICAgIGZyb20gcGFja2FnaW5nLnRlc3RzLnB5cGlfc2VydmVyIGltcG9ydCBQeVBJU2VydmVyVGVzdENhc2UKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICB0aHJlYWRpbmcgPSBOb25lCisgICAgUHlQSVNlcnZlclRlc3RDYXNlID0gdW5pdHRlc3QuVGVzdENhc2UKKworCitQWVBJUkMgPSAiIiJcCitbZGlzdHV0aWxzXQoraW5kZXgtc2VydmVycyA9IHNlcnZlcjEKKworW3NlcnZlcjFdCityZXBvc2l0b3J5ID0gJXMKK3VzZXJuYW1lID0gcmVhbF9zbGltX3NoYWR5CitwYXNzd29yZCA9IGxvbmdfaXNsYW5kCisiIiIKKworCitAdW5pdHRlc3Quc2tpcElmKHRocmVhZGluZyBpcyBOb25lLCAiTmVlZHMgdGhyZWFkaW5nIikKK2NsYXNzIFVwbG9hZERvY3NUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuRW52aXJvblJlc3RvcmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgUHlQSVNlcnZlclRlc3RDYXNlKToKKworICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnSE9NRSddCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFVwbG9hZERvY3NUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLnRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZWxmLnJjID0gb3MucGF0aC5qb2luKHNlbGYudG1wX2RpciwgJy5weXBpcmMnKQorICAgICAgICBvcy5lbnZpcm9uWydIT01FJ10gPSBzZWxmLnRtcF9kaXIKKyAgICAgICAgc2VsZi5kaXN0ID0gRGlzdHJpYnV0aW9uKCkKKyAgICAgICAgc2VsZi5kaXN0Lm1ldGFkYXRhWydOYW1lJ10gPSAiZGlzdHItbmFtZSIKKyAgICAgICAgc2VsZi5jbWQgPSB1cGxvYWRfZG9jcyhzZWxmLmRpc3QpCisKKyAgICBkZWYgdGVzdF9kZWZhdWx0X3VwbG9hZGRpcihzZWxmKToKKyAgICAgICAgc2FuZGJveCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG9zLmNoZGlyKHNhbmRib3gpCisgICAgICAgIG9zLm1rZGlyKCJidWlsZCIpCisgICAgICAgIHNlbGYucHJlcGFyZV9zYW1wbGVfZGlyKCJidWlsZCIpCisgICAgICAgIHNlbGYuY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY21kLnVwbG9hZF9kaXIsIG9zLnBhdGguam9pbigiYnVpbGQiLCAiZG9jcyIpKQorCisgICAgZGVmIHRlc3RfZGVmYXVsdF91cGxvYWRkaXJfbG9va3NfZm9yX2RvY19hbHNvKHNlbGYpOgorICAgICAgICBzYW5kYm94ID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgb3MuY2hkaXIoc2FuZGJveCkKKyAgICAgICAgb3MubWtkaXIoImJ1aWxkIikKKyAgICAgICAgc2VsZi5wcmVwYXJlX3NhbXBsZV9kaXIoImJ1aWxkIikKKyAgICAgICAgb3MucmVuYW1lKG9zLnBhdGguam9pbigiYnVpbGQiLCAiZG9jcyIpLCBvcy5wYXRoLmpvaW4oImJ1aWxkIiwgImRvYyIpKQorICAgICAgICBzZWxmLmNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNtZC51cGxvYWRfZGlyLCBvcy5wYXRoLmpvaW4oImJ1aWxkIiwgImRvYyIpKQorCisgICAgZGVmIHByZXBhcmVfc2FtcGxlX2RpcihzZWxmLCBzYW1wbGVfZGlyPU5vbmUpOgorICAgICAgICBpZiBzYW1wbGVfZGlyIGlzIE5vbmU6CisgICAgICAgICAgICBzYW1wbGVfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgb3MubWtkaXIob3MucGF0aC5qb2luKHNhbXBsZV9kaXIsICJkb2NzIikpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoc2FtcGxlX2RpciwgImRvY3MiLCAiaW5kZXguaHRtbCIpLCAiQ2UgbW9ydGVsIGVubnVpIikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChzYW1wbGVfZGlyLCAiaW5kZXguaHRtbCIpLCAiT2ggbGEgbGEiKQorICAgICAgICByZXR1cm4gc2FtcGxlX2RpcgorCisgICAgZGVmIHRlc3RfemlwX2RpcihzZWxmKToKKyAgICAgICAgc291cmNlX2RpciA9IHNlbGYucHJlcGFyZV9zYW1wbGVfZGlyKCkKKyAgICAgICAgY29tcHJlc3NlZCA9IHppcF9kaXIoc291cmNlX2RpcikKKworICAgICAgICB6aXBfZiA9IHppcGZpbGUuWmlwRmlsZShjb21wcmVzc2VkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHppcF9mLm5hbWVsaXN0KCksIFsnaW5kZXguaHRtbCcsICdkb2NzL2luZGV4Lmh0bWwnXSkKKworICAgIGRlZiBwcmVwYXJlX2NvbW1hbmQoc2VsZik6CisgICAgICAgIHNlbGYuY21kLnVwbG9hZF9kaXIgPSBzZWxmLnByZXBhcmVfc2FtcGxlX2RpcigpCisgICAgICAgIHNlbGYuY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorICAgICAgICBzZWxmLmNtZC5yZXBvc2l0b3J5ID0gc2VsZi5weXBpLmZ1bGxfYWRkcmVzcworICAgICAgICBzZWxmLmNtZC51c2VybmFtZSA9ICJ1c2VybmFtZSIKKyAgICAgICAgc2VsZi5jbWQucGFzc3dvcmQgPSAicGFzc3dvcmQiCisKKyAgICBkZWYgdGVzdF91cGxvYWQoc2VsZik6CisgICAgICAgIHNlbGYucHJlcGFyZV9jb21tYW5kKCkKKyAgICAgICAgc2VsZi5jbWQucnVuKCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLnB5cGkucmVxdWVzdHMpLCAxKQorICAgICAgICBoYW5kbGVyLCByZXF1ZXN0X2RhdGEgPSBzZWxmLnB5cGkucmVxdWVzdHNbLTFdCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYiJjb250ZW50IiwgcmVxdWVzdF9kYXRhKQorICAgICAgICBzZWxmLmFzc2VydEluKCJCYXNpYyIsIGhhbmRsZXIuaGVhZGVyc1snYXV0aG9yaXphdGlvbiddKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaGFuZGxlci5oZWFkZXJzWydjb250ZW50LXR5cGUnXQorICAgICAgICAgICAgLnN0YXJ0c3dpdGgoJ211bHRpcGFydC9mb3JtLWRhdGE7JykpCisKKyAgICAgICAgYWN0aW9uLCBuYW1lLCB2ZXJzaW9uLCBjb250ZW50ID0gcmVxdWVzdF9kYXRhLnNwbGl0KAorICAgICAgICAgICAgYictLS0tLS0tLS0tLS0tLS0tR0hTS0ZKRExHRFM3NTQzRkpLTEZIUkU3NTY0Mjc1Njc0MzI1NCcpWzE6NV0KKworICAgICAgICAjIGNoZWNrIHRoYXQgd2UgcGlja2VkIHRoZSByaWdodCBjaHVua3MKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ25hbWU9IjphY3Rpb24iJywgYWN0aW9uKQorICAgICAgICBzZWxmLmFzc2VydEluKGInbmFtZT0ibmFtZSInLCBuYW1lKQorICAgICAgICBzZWxmLmFzc2VydEluKGInbmFtZT0idmVyc2lvbiInLCB2ZXJzaW9uKQorICAgICAgICBzZWxmLmFzc2VydEluKGInbmFtZT0iY29udGVudCInLCBjb250ZW50KQorCisgICAgICAgICMgY2hlY2sgdGhlaXIgY29udGVudHMKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ2RvY191cGxvYWQnLCBhY3Rpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYidkaXN0ci1uYW1lJywgbmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiJ2RvY3MvaW5kZXguaHRtbCcsIGNvbnRlbnQpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYidDZSBtb3J0ZWwgZW5udWknLCBjb250ZW50KQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfc3NsIGlzIE5vbmUsICdOZWVkcyBTU0wgc3VwcG9ydCcpCisgICAgZGVmIHRlc3RfaHR0cHNfY29ubmVjdGlvbihzZWxmKToKKyAgICAgICAgc2VsZi5odHRwc19jYWxsZWQgPSBGYWxzZQorICAgICAgICBzZWxmLmFkZENsZWFudXAoCisgICAgICAgICAgICBzZXRhdHRyLCB1cGxvYWRfZG9jc19tb2QuaHR0cC5jbGllbnQsICdIVFRQU0Nvbm5lY3Rpb24nLAorICAgICAgICAgICAgdXBsb2FkX2RvY3NfbW9kLmh0dHAuY2xpZW50LkhUVFBTQ29ubmVjdGlvbikKKworICAgICAgICBkZWYgaHR0cHNfY29ubl93cmFwcGVyKCphcmdzKToKKyAgICAgICAgICAgIHNlbGYuaHR0cHNfY2FsbGVkID0gVHJ1ZQorICAgICAgICAgICAgIyB0aGUgdGVzdGluZyBzZXJ2ZXIgaXMgaHR0cAorICAgICAgICAgICAgcmV0dXJuIHVwbG9hZF9kb2NzX21vZC5odHRwLmNsaWVudC5IVFRQQ29ubmVjdGlvbigqYXJncykKKworICAgICAgICB1cGxvYWRfZG9jc19tb2QuaHR0cC5jbGllbnQuSFRUUFNDb25uZWN0aW9uID0gaHR0cHNfY29ubl93cmFwcGVyCisKKyAgICAgICAgc2VsZi5wcmVwYXJlX2NvbW1hbmQoKQorICAgICAgICBzZWxmLmNtZC5ydW4oKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNlbGYuaHR0cHNfY2FsbGVkKQorCisgICAgICAgIHNlbGYuY21kLnJlcG9zaXRvcnkgPSBzZWxmLmNtZC5yZXBvc2l0b3J5LnJlcGxhY2UoImh0dHAiLCAiaHR0cHMiKQorICAgICAgICBzZWxmLmNtZC5ydW4oKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5odHRwc19jYWxsZWQpCisKKyAgICBkZWYgdGVzdF9oYW5kbGluZ19yZXNwb25zZShzZWxmKToKKyAgICAgICAgc2VsZi5weXBpLmRlZmF1bHRfcmVzcG9uc2Vfc3RhdHVzID0gJzQwMyBGb3JiaWRkZW4nCisgICAgICAgIHNlbGYucHJlcGFyZV9jb21tYW5kKCkKKyAgICAgICAgc2VsZi5jbWQucnVuKCkKKyAgICAgICAgZXJyb3JzID0gc2VsZi5nZXRfbG9ncyhsb2dnaW5nLkVSUk9SKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihlcnJvcnMpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEluKCdVcGxvYWQgZmFpbGVkICg0MDMpOiBGb3JiaWRkZW4nLCBlcnJvcnNbMF0pCisKKyAgICAgICAgc2VsZi5weXBpLmRlZmF1bHRfcmVzcG9uc2Vfc3RhdHVzID0gJzMwMSBNb3ZlZCBQZXJtYW5lbnRseScKKyAgICAgICAgc2VsZi5weXBpLmRlZmF1bHRfcmVzcG9uc2VfaGVhZGVycy5hcHBlbmQoCisgICAgICAgICAgICAoIkxvY2F0aW9uIiwgImJyYW5kX25ld19sb2NhdGlvbiIpKQorICAgICAgICBzZWxmLmNtZC5ydW4oKQorICAgICAgICBsYXN0bG9nID0gc2VsZi5nZXRfbG9ncyhsb2dnaW5nLklORk8pWy0xXQorICAgICAgICBzZWxmLmFzc2VydEluKCdicmFuZF9uZXdfbG9jYXRpb24nLCBsYXN0bG9nKQorCisgICAgZGVmIHRlc3RfcmVhZHNfcHlwaXJjX2RhdGEoc2VsZik6CisgICAgICAgIHNlbGYud3JpdGVfZmlsZShzZWxmLnJjLCBQWVBJUkMgJSBzZWxmLnB5cGkuZnVsbF9hZGRyZXNzKQorICAgICAgICBzZWxmLmNtZC5yZXBvc2l0b3J5ID0gc2VsZi5weXBpLmZ1bGxfYWRkcmVzcworICAgICAgICBzZWxmLmNtZC51cGxvYWRfZGlyID0gc2VsZi5wcmVwYXJlX3NhbXBsZV9kaXIoKQorICAgICAgICBzZWxmLmNtZC5lbnN1cmVfZmluYWxpemVkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNtZC51c2VybmFtZSwgInJlYWxfc2xpbV9zaGFkeSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jbWQucGFzc3dvcmQsICJsb25nX2lzbGFuZCIpCisKKyAgICBkZWYgdGVzdF9jaGVja3NfaW5kZXhfaHRtbF9wcmVzZW5jZShzZWxmKToKKyAgICAgICAgc2VsZi5jbWQudXBsb2FkX2RpciA9IHNlbGYucHJlcGFyZV9zYW1wbGVfZGlyKCkKKyAgICAgICAgb3MucmVtb3ZlKG9zLnBhdGguam9pbihzZWxmLmNtZC51cGxvYWRfZGlyLCAiaW5kZXguaHRtbCIpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdGaWxlRXJyb3IsIHNlbGYuY21kLmVuc3VyZV9maW5hbGl6ZWQpCisKKyAgICBkZWYgdGVzdF9jaGVja3NfdXBsb2FkX2RpcihzZWxmKToKKyAgICAgICAgc2VsZi5jbWQudXBsb2FkX2RpciA9IHNlbGYucHJlcGFyZV9zYW1wbGVfZGlyKCkKKyAgICAgICAgc2h1dGlsLnJtdHJlZShvcy5wYXRoLmpvaW4oc2VsZi5jbWQudXBsb2FkX2RpcikpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ09wdGlvbkVycm9yLCBzZWxmLmNtZC5lbnN1cmVfZmluYWxpemVkKQorCisgICAgZGVmIHRlc3Rfc2hvd19yZXNwb25zZShzZWxmKToKKyAgICAgICAgc2VsZi5wcmVwYXJlX2NvbW1hbmQoKQorICAgICAgICBzZWxmLmNtZC5zaG93X3Jlc3BvbnNlID0gVHJ1ZQorICAgICAgICBzZWxmLmNtZC5ydW4oKQorICAgICAgICByZWNvcmQgPSBzZWxmLmdldF9sb2dzKGxvZ2dpbmcuSU5GTylbLTFdCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZWNvcmQsICJzaG91bGQgcmVwb3J0IHRoZSByZXNwb25zZSIpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VsZi5weXBpLmRlZmF1bHRfcmVzcG9uc2VfZGF0YSwgcmVjb3JkKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShVcGxvYWREb2NzVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tcGlsZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29tcGlsZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmM2MjBjYgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jb21waWxlci5weQpAQCAtMCwwICsxLDY2IEBACisiIiJUZXN0cyBmb3IgZGlzdHV0aWxzLmNvbXBpbGVyLiIiIgoraW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyIGltcG9ydCAoZ2V0X2RlZmF1bHRfY29tcGlsZXIsIGN1c3RvbWl6ZV9jb21waWxlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2VuX2xpYl9vcHRpb25zKQorZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKKworY2xhc3MgRmFrZUNvbXBpbGVyOgorCisgICAgbmFtZSA9ICdmYWtlJworICAgIGRlc2NyaXB0aW9uID0gJ0Zha2UnCisKKyAgICBkZWYgbGlicmFyeV9kaXJfb3B0aW9uKHNlbGYsIGRpcik6CisgICAgICAgIHJldHVybiAiLUwiICsgZGlyCisKKyAgICBkZWYgcnVudGltZV9saWJyYXJ5X2Rpcl9vcHRpb24oc2VsZiwgZGlyKToKKyAgICAgICAgcmV0dXJuIFsiLWNvb2wiLCAiLVIiICsgZGlyXQorCisgICAgZGVmIGZpbmRfbGlicmFyeV9maWxlKHNlbGYsIGRpcnMsIGxpYiwgZGVidWc9RmFsc2UpOgorICAgICAgICByZXR1cm4gJ2ZvdW5kJworCisgICAgZGVmIGxpYnJhcnlfb3B0aW9uKHNlbGYsIGxpYik6CisgICAgICAgIHJldHVybiAiLWwiICsgbGliCisKKworY2xhc3MgQ29tcGlsZXJUZXN0Q2FzZShzdXBwb3J0LkVudmlyb25SZXN0b3JlciwgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcmVzdG9yZV9lbnZpcm9uID0gWydBUicsICdBUkZMQUdTJ10KKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGdldF9kZWZhdWx0X2NvbXBpbGVyKCkgPT0gJ3VuaXgnLAorICAgICAgICAgICAgICAgICAgICAgICAgJ2lycmVsZXZhbnQgaWYgZGVmYXVsdCBjb21waWxlciBpcyBub3QgdW5peCcpCisgICAgZGVmIHRlc3RfY3VzdG9taXplX2NvbXBpbGVyKHNlbGYpOgorCisgICAgICAgIG9zLmVudmlyb25bJ0FSJ10gPSAnbXlfYXInCisgICAgICAgIG9zLmVudmlyb25bJ0FSRkxBR1MnXSA9ICctYXJmbGFncycKKworICAgICAgICAjIG1ha2Ugc3VyZSBBUiBnZXRzIGNhdWdodAorICAgICAgICBjbGFzcyBjb21waWxlcjoKKyAgICAgICAgICAgIG5hbWUgPSAndW5peCcKKworICAgICAgICAgICAgZGVmIHNldF9leGVjdXRhYmxlcyhzZWxmLCAqKmt3KToKKyAgICAgICAgICAgICAgICBzZWxmLmV4ZXMgPSBrdworCisgICAgICAgIGNvbXAgPSBjb21waWxlcigpCisgICAgICAgIGN1c3RvbWl6ZV9jb21waWxlcihjb21wKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbXAuZXhlc1snYXJjaGl2ZXInXSwgJ215X2FyIC1hcmZsYWdzJykKKworICAgIGRlZiB0ZXN0X2dlbl9saWJfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgY29tcGlsZXIgPSBGYWtlQ29tcGlsZXIoKQorICAgICAgICBsaWJkaXJzID0gWydsaWIxJywgJ2xpYjInXQorICAgICAgICBydW5saWJkaXJzID0gWydydW5saWIxJ10KKyAgICAgICAgbGlicyA9IFtvcy5wYXRoLmpvaW4oJ2RpcicsICduYW1lJyksICduYW1lMiddCisKKyAgICAgICAgb3B0cyA9IGdlbl9saWJfb3B0aW9ucyhjb21waWxlciwgbGliZGlycywgcnVubGliZGlycywgbGlicykKKyAgICAgICAgd2FudGVkID0gWyctTGxpYjEnLCAnLUxsaWIyJywgJy1jb29sJywgJy1ScnVubGliMScsICdmb3VuZCcsCisgICAgICAgICAgICAgICAgICAnLWxuYW1lMiddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3B0cywgd2FudGVkKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShDb21waWxlclRlc3RDYXNlKQorCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY29uZmlnLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbmZpZy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MTNkNDkzCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2NvbmZpZy5weQpAQCAtMCwwICsxLDQ5NiBAQAorIiIiVGVzdHMgZm9yIHBhY2thZ2luZy5jb25maWcuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGNvbW1hbmQKK2Zyb20gcGFja2FnaW5nLmRpc3QgaW1wb3J0IERpc3RyaWJ1dGlvbgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdGaWxlRXJyb3IsIFBhY2thZ2luZ09wdGlvbkVycm9yCitmcm9tIHBhY2thZ2luZy5jb21waWxlciBpbXBvcnQgbmV3X2NvbXBpbGVyLCBfQ09NUElMRVJTCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLnNkaXN0IGltcG9ydCBzZGlzdAorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IHJlcXVpcmVzX3psaWIKKworCitTRVRVUF9DRkcgPSAiIiIKK1ttZXRhZGF0YV0KK25hbWUgPSBSZXN0aW5nUGFycm90Cit2ZXJzaW9uID0gMC42LjQKK2F1dGhvciA9IENhcmwgTWV5ZXIKK2F1dGhvcl9lbWFpbCA9IGNhcmxAb2RkYmlyZC5uZXQKK21haW50YWluZXIgPSDDiXJpYyBBcmF1am8KK21haW50YWluZXJfZW1haWwgPSBtZXJ3b2tAbmV0d29rLm9yZworc3VtbWFyeSA9IEEgc2FtcGxlIHByb2plY3QgZGVtb25zdHJhdGluZyBwYWNrYWdpbmcKK2Rlc2NyaXB0aW9uLWZpbGUgPSAlKGRlc2NyaXB0aW9uLWZpbGUpcwora2V5d29yZHMgPSBwYWNrYWdpbmcsIHNhbXBsZSBwcm9qZWN0CisKK2NsYXNzaWZpZXIgPQorICBEZXZlbG9wbWVudCBTdGF0dXMgOjogNCAtIEJldGEKKyAgRW52aXJvbm1lbnQgOjogQ29uc29sZSAoVGV4dCBCYXNlZCkKKyAgRW52aXJvbm1lbnQgOjogWDExIEFwcGxpY2F0aW9ucyA6OiBHVEs7IHB5dGhvbl92ZXJzaW9uIDwgJzMnCisgIExpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IE1JVCBMaWNlbnNlCisgIFByb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbgorICBQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMgorICBQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMworCityZXF1aXJlc19weXRob24gPSA+PTIuNCwgPDMuMgorCityZXF1aXJlc19kaXN0ID0KKyAgUGV0U2hvcHBlCisgIE1pY2hhZWxQYWxpbiAoPiAxLjEpCisgIHB5d2luMzI7IHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInCisgIHB5c3FsaXRlMjsgcHl0aG9uX3ZlcnNpb24gPCAnMi41JworICBpbm90aWZ5ICgwLjAuMSk7IHN5cy5wbGF0Zm9ybSA9PSAnbGludXgyJworCityZXF1aXJlc19leHRlcm5hbCA9IGxpYnhtbDIKKworcHJvdmlkZXNfZGlzdCA9IHBhY2thZ2luZy1zYW1wbGUtcHJvamVjdCAoMC4yKQorICAgICAgICAgICAgICAgIHVuaXR0ZXN0Mi1zYW1wbGUtcHJvamVjdAorCitwcm9qZWN0X3VybCA9CisgIE1haW4gcmVwb3NpdG9yeSwgaHR0cDovL2JpdGJ1Y2tldC5vcmcvY2FybGptL3NhbXBsZS1kaXN0dXRpbHMyLXByb2plY3QKKyAgRm9yayBpbiBwcm9ncmVzcywgaHR0cDovL2JpdGJ1Y2tldC5vcmcvTWVyd29rL3NhbXBsZS1kaXN0dXRpbHMyLXByb2plY3QKKworW2ZpbGVzXQorcGFja2FnZXNfcm9vdCA9IHNyYworCitwYWNrYWdlcyA9IG9uZQorICAgICAgICAgICB0d28KKyAgICAgICAgICAgdGhyZWUKKworbW9kdWxlcyA9IGhhdmVuCisKK3NjcmlwdHMgPQorICBzY3JpcHQxLnB5CisgIHNjcmlwdHMvZmluZC1jb2NvbnV0cworICBiaW4vdGF1bnQKKworcGFja2FnZV9kYXRhID0KKyAgY2hlZXNlID0gZGF0YS90ZW1wbGF0ZXMvKgorCitleHRyYV9maWxlcyA9ICUoZXh0cmEtZmlsZXMpcworCisjIFJlcGxhY2VzIE1BTklGRVNULmluCitzZGlzdF9leHRyYSA9CisgIGluY2x1ZGUgVEhBTktTIEhBQ0tJTkcKKyAgcmVjdXJzaXZlLWluY2x1ZGUgZXhhbXBsZXMgKi50eHQgKi5weQorICBwcnVuZSBleGFtcGxlcy9zYW1wbGU/L2J1aWxkCisKK3Jlc291cmNlcz0KKyAgYm0vIHtiMSxiMn0uZ2lmID0ge2ljb259CisgIENmKi8gKi5DRkcgPSB7Y29uZmlnfS9iYUJhci8KKyAgaW5pdF9zY3JpcHQgPSB7c2NyaXB0fS9KdW5HbGUvCisKK1tnbG9iYWxdCitjb21tYW5kcyA9CisgICAgcGFja2FnaW5nLnRlc3RzLnRlc3RfY29uZmlnLkZvb0JhckJhelRlc3QKKworY29tcGlsZXJzID0KKyAgICBwYWNrYWdpbmcudGVzdHMudGVzdF9jb25maWcuRENvbXBpbGVyCisKK3NldHVwX2hvb2tzID0gJShzZXR1cC1ob29rcylzCisKKworCitbaW5zdGFsbF9kaXN0XQorc3ViX2NvbW1hbmRzID0gZm9vCisiIiIKKworIyBDYW4gbm90IGJlIG1lcmdlZCB3aXRoIFNFVFVQX0NGRyBlbHNlIGluc3RhbGxfZGlzdAorIyBjb21tYW5kIHdpbGwgZmFpbCB3aGVuIHRyeWluZyB0byBjb21waWxlIEMgc291cmNlcworIyBUT0RPIHVzZSBhIER1bW15Q29tbWFuZCB0byBtb2NrIGJ1aWxkX2V4dAorRVhUX1NFVFVQX0NGRyA9ICIiIgorW2ZpbGVzXQorcGFja2FnZXMgPSBvbmUKKyAgICAgICAgICAgdHdvCisgICAgICAgICAgIHBhcmVudC51bmRlY2xhcmVkCisKK1tleHRlbnNpb246b25lLnNwZWVkX2NvY29udXRzXQorc291cmNlcyA9IGNfc3JjL3NwZWVkX2NvY29udXRzLmMKK2V4dHJhX2xpbmtfYXJncyA9ICJgZ2NjIC1wcmludC1maWxlLW5hbWU9bGliZ2NjLmFgIiAtc2hhcmVkCitkZWZpbmVfbWFjcm9zID0gSEFWRV9DQUlSTyBIQVZFX0dUSzIKK2xpYnJhcmllcyA9IGdlY29kZWludCBnZWNvZGVrZXJuZWwgLS0gc3lzLnBsYXRmb3JtICE9ICd3aW4zMicKKyAgICBHZWNvZGVJbnQgR2Vjb2RlS2VybmVsIC0tIHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInCisKK1tleHRlbnNpb246IHR3by5mYXN0X3RhdW50XQorc291cmNlcyA9IGN4eF9zcmMvdXRpbHNfdGF1bnQuY3h4CisgICAgICAgICAgY3h4X3NyYy9weXRob25fbW9kdWxlLmN4eAoraW5jbHVkZV9kaXJzID0gL3Vzci9pbmNsdWRlL2dlY29kZQorICAgIC91c3IvaW5jbHVkZS9ibGl0egorZXh0cmFfY29tcGlsZV9hcmdzID0gLWZQSUMgLU8yCisgICAgLURHRUNPREVfVkVSU0lPTj0kKC4vZ2Vjb2RlX3ZlcnNpb24pIC0tIHN5cy5wbGF0Zm9ybSAhPSAnd2luMzInCisgICAgL0RHRUNPREVfVkVSU0lPTj13aW4zMiAtLSBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJworbGFuZ3VhZ2UgPSBjeHgKKworIyBjb3JuZXIgY2FzZTogaWYgdGhlIHBhcmVudCBwYWNrYWdlIG9mIGFuIGV4dGVuc2lvbiBpcyBkZWNsYXJlZCBidXQKKyMgbm90IGl0cyBncmFuZHBhcmVudCwgaXQncyBsZWdhbAorW2V4dGVuc2lvbjogcGFyZW50LnVuZGVjbGFyZWQuX3NwZWVkXQorc291cmNlcyA9IHBhcmVudC91bmRlY2xhcmVkL19zcGVlZC5jCisiIiIKKworRVhUX1NFVFVQX0NGR19CVUdHWV8xID0gIiIiCitbZXh0ZW5zaW9uOiByZWFsbmFtZV0KK25hbWUgPSBjcmFzaF9oZXJlCisiIiIKKworRVhUX1NFVFVQX0NGR19CVUdHWV8yID0gIiIiCitbZmlsZXNdCitwYWNrYWdlcyA9IGhhbQorCitbZXh0ZW5zaW9uOiBzcGFtLmVnZ3NdCisiIiIKKworRVhUX1NFVFVQX0NGR19CVUdHWV8zID0gIiIiCitbZmlsZXNdCitwYWNrYWdlcyA9IG9rCisgICAgICAgICAgIG9rLndvcmtzCisKK1tleHRlbnNpb246IG9rLndvcmtzLmJyZWFrcy5fZXh0XQorIiIiCisKK0hPT0tTX01PRFVMRSA9ICIiIgoraW1wb3J0IGxvZ2dpbmcKKworbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoJ3BhY2thZ2luZycpCisKK2RlZiBsb2dnaW5nX2hvb2soY29uZmlnKToKKyAgICBsb2dnZXIud2FybmluZygnbG9nZ2luZ19ob29rIGNhbGxlZCcpCisiIiIKKworCitjbGFzcyBEQ29tcGlsZXI6CisgICAgbmFtZSA9ICdkJworICAgIGRlc2NyaXB0aW9uID0gJ0QgQ29tcGlsZXInCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MpOgorICAgICAgICBwYXNzCisKKworZGVmIHZlcnNpb25faG9vayhjb25maWcpOgorICAgIGNvbmZpZ1snbWV0YWRhdGEnXVsndmVyc2lvbiddICs9ICcuZGV2MScKKworCitkZWYgZmlyc3RfaG9vayhjb25maWcpOgorICAgIGNvbmZpZ1snZmlsZXMnXVsnbW9kdWxlcyddICs9ICdcbiBmaXJzdCcKKworCitkZWYgdGhpcmRfaG9vayhjb25maWcpOgorICAgIGNvbmZpZ1snZmlsZXMnXVsnbW9kdWxlcyddICs9ICdcbiB0aGlyZCcKKworCitjbGFzcyBGb29CYXJCYXpUZXN0OgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYsIGRpc3QpOgorICAgICAgICBzZWxmLmRpc3RyaWJ1dGlvbiA9IGRpc3QKKyAgICAgICAgc2VsZi5fcmVjb3JkID0gW10KKworICAgIEBjbGFzc21ldGhvZAorICAgIGRlZiBnZXRfY29tbWFuZF9uYW1lKGNscyk6CisgICAgICAgIHJldHVybiAnZm9vJworCisgICAgZGVmIHJ1bihzZWxmKToKKyAgICAgICAgc2VsZi5fcmVjb3JkLmFwcGVuZCgnZm9vIGhhcyBydW4nKQorCisgICAgZGVmIG5vdGhpbmcoc2VsZik6CisgICAgICAgIHBhc3MKKworICAgIGRlZiBnZXRfc291cmNlX2ZpbGVzKHNlbGYpOgorICAgICAgICByZXR1cm4gW10KKworICAgIGVuc3VyZV9maW5hbGl6ZWQgPSBmaW5hbGl6ZV9vcHRpb25zID0gaW5pdGlhbGl6ZV9vcHRpb25zID0gbm90aGluZworCisKK2NsYXNzIENvbmZpZ1Rlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICByZXN0b3JlX2Vudmlyb24gPSBbJ1BMQVQnXQorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihDb25maWdUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICB0ZW1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi53b3JraW5nX2RpciA9IG9zLmdldGN3ZCgpCisgICAgICAgIG9zLmNoZGlyKHRlbXBkaXIpCisgICAgICAgIHNlbGYudGVtcGRpciA9IHRlbXBkaXIKKworICAgIGRlZiB3cml0ZV9zZXR1cChzZWxmLCBrd2FyZ3M9Tm9uZSk6CisgICAgICAgIG9wdHMgPSB7J2Rlc2NyaXB0aW9uLWZpbGUnOiAnUkVBRE1FJywgJ2V4dHJhLWZpbGVzJzogJycsCisgICAgICAgICAgICAgICAgJ3NldHVwLWhvb2tzJzogJ3BhY2thZ2luZy50ZXN0cy50ZXN0X2NvbmZpZy52ZXJzaW9uX2hvb2snfQorICAgICAgICBpZiBrd2FyZ3M6CisgICAgICAgICAgICBvcHRzLnVwZGF0ZShrd2FyZ3MpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnc2V0dXAuY2ZnJywgU0VUVVBfQ0ZHICUgb3B0cywgZW5jb2Rpbmc9J3V0Zi04JykKKworICAgIGRlZiBnZXRfZGlzdChzZWxmKToKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGRpc3QucGFyc2VfY29uZmlnX2ZpbGVzKCkKKyAgICAgICAgcmV0dXJuIGRpc3QKKworICAgIGRlZiB0ZXN0X2NvbmZpZyhzZWxmKToKKyAgICAgICAgc2VsZi53cml0ZV9zZXR1cCgpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FJywgJ3llYWgnKQorICAgICAgICBvcy5ta2RpcignYm0nKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKCdibScsICdiMS5naWYnKSwgJycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoJ2JtJywgJ2IyLmdpZicpLCAnJykKKyAgICAgICAgb3MubWtkaXIoJ0NmZycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoJ0NmZycsICdkYXRhLkNGRycpLCAnJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdpbml0X3NjcmlwdCcsICcnKQorCisgICAgICAgICMgdHJ5IHRvIGxvYWQgdGhlIG1ldGFkYXRhIG5vdworICAgICAgICBkaXN0ID0gc2VsZi5nZXRfZGlzdCgpCisKKyAgICAgICAgIyBjaGVjayB3aGF0IHdhcyBkb25lCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5tZXRhZGF0YVsnQXV0aG9yJ10sICdDYXJsIE1leWVyJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydBdXRob3ItRW1haWwnXSwgJ2NhcmxAb2RkYmlyZC5uZXQnKQorCisgICAgICAgICMgdGhlIGhvb2sgYWRkcyAuZGV2MQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubWV0YWRhdGFbJ1ZlcnNpb24nXSwgJzAuNi40LmRldjEnKQorCisgICAgICAgIHdhbnRlZCA9IFsKKyAgICAgICAgICAgICdEZXZlbG9wbWVudCBTdGF0dXMgOjogNCAtIEJldGEnLAorICAgICAgICAgICAgJ0Vudmlyb25tZW50IDo6IENvbnNvbGUgKFRleHQgQmFzZWQpJywKKyAgICAgICAgICAgICJFbnZpcm9ubWVudCA6OiBYMTEgQXBwbGljYXRpb25zIDo6IEdUSzsgcHl0aG9uX3ZlcnNpb24gPCAnMyciLAorICAgICAgICAgICAgJ0xpY2Vuc2UgOjogT1NJIEFwcHJvdmVkIDo6IE1JVCBMaWNlbnNlJywKKyAgICAgICAgICAgICdQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24nLAorICAgICAgICAgICAgJ1Byb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbiA6OiAyJywKKyAgICAgICAgICAgICdQcm9ncmFtbWluZyBMYW5ndWFnZSA6OiBQeXRob24gOjogMyddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5tZXRhZGF0YVsnQ2xhc3NpZmllciddLCB3YW50ZWQpCisKKyAgICAgICAgd2FudGVkID0gWydwYWNrYWdpbmcnLCAnc2FtcGxlIHByb2plY3QnXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubWV0YWRhdGFbJ0tleXdvcmRzJ10sIHdhbnRlZCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubWV0YWRhdGFbJ1JlcXVpcmVzLVB5dGhvbiddLCAnPj0yLjQsIDwzLjInKQorCisgICAgICAgIHdhbnRlZCA9IFsnUGV0U2hvcHBlJywKKyAgICAgICAgICAgICAgICAgICdNaWNoYWVsUGFsaW4gKD4gMS4xKScsCisgICAgICAgICAgICAgICAgICAicHl3aW4zMjsgc3lzLnBsYXRmb3JtID09ICd3aW4zMiciLAorICAgICAgICAgICAgICAgICAgInB5c3FsaXRlMjsgcHl0aG9uX3ZlcnNpb24gPCAnMi41JyIsCisgICAgICAgICAgICAgICAgICAiaW5vdGlmeSAoMC4wLjEpOyBzeXMucGxhdGZvcm0gPT0gJ2xpbnV4MiciXQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5tZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddLCB3YW50ZWQpCisgICAgICAgIHVybHMgPSBbKCdNYWluIHJlcG9zaXRvcnknLAorICAgICAgICAgICAgICAgICAnaHR0cDovL2JpdGJ1Y2tldC5vcmcvY2FybGptL3NhbXBsZS1kaXN0dXRpbHMyLXByb2plY3QnKSwKKyAgICAgICAgICAgICAgICAoJ0ZvcmsgaW4gcHJvZ3Jlc3MnLAorICAgICAgICAgICAgICAgICAnaHR0cDovL2JpdGJ1Y2tldC5vcmcvTWVyd29rL3NhbXBsZS1kaXN0dXRpbHMyLXByb2plY3QnKV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydQcm9qZWN0LVVybCddLCB1cmxzKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5wYWNrYWdlcywgWydvbmUnLCAndHdvJywgJ3RocmVlJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5weV9tb2R1bGVzLCBbJ2hhdmVuJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5wYWNrYWdlX2RhdGEsIHsnY2hlZXNlJzogJ2RhdGEvdGVtcGxhdGVzLyonfSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIHsnYm0vYjEuZ2lmJzogJ3tpY29ufS9iMS5naWYnLAorICAgICAgICAgICAgICdibS9iMi5naWYnOiAne2ljb259L2IyLmdpZicsCisgICAgICAgICAgICAgJ0NmZy9kYXRhLkNGRyc6ICd7Y29uZmlnfS9iYUJhci9kYXRhLkNGRycsCisgICAgICAgICAgICAgJ2luaXRfc2NyaXB0JzogJ3tzY3JpcHR9L0p1bkdsZS9pbml0X3NjcmlwdCd9LAorICAgICAgICAgICAgIGRpc3QuZGF0YV9maWxlcykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QucGFja2FnZV9kaXIsICdzcmMnKQorCisgICAgICAgICMgTWFrZSBzdXJlIHdlIGdldCB0aGUgZm9vIGNvbW1hbmQgbG9hZGVkLiAgV2UgdXNlIGEgc3RyaW5nIGNvbXBhcmlzb24KKyAgICAgICAgIyBpbnN0ZWFkIG9mIGFzc2VydElzSW5zdGFuY2UgYmVjYXVzZSB0aGUgY2xhc3MgaXMgbm90IHRoZSBzYW1lIHdoZW4KKyAgICAgICAgIyB0aGlzIHRlc3QgaXMgcnVuIGRpcmVjdGx5OiBmb28gaXMgcGFja2FnaW5nLnRlc3RzLnRlc3RfY29uZmlnLkZvbworICAgICAgICAjIGJlY2F1c2UgZ2V0X2NvbW1hbmRfY2xhc3MgdXNlcyB0aGUgZnVsbCBuYW1lLCBidXQgYSBiYXJlICJGb28iIGluCisgICAgICAgICMgdGhpcyBmaWxlIHdvdWxkIGJlIF9fbWFpbl9fLkZvbyB3aGVuIHJ1biBhcyAicHl0aG9uIHRlc3RfY29uZmlnLnB5Ii4KKyAgICAgICAgIyBUaGUgbmFtZSBGb29CYXJCYXpUZXN0IHNob3VsZCBiZSB1bmlxdWUgZW5vdWdoIHRvIHByZXZlbnQKKyAgICAgICAgIyBjb2xsaXNpb25zLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdGb29CYXJCYXpUZXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0LmdldF9jb21tYW5kX29iaignZm9vJykuX19jbGFzc19fLl9fbmFtZV9fKQorCisgICAgICAgICMgZGlkIHRoZSBSRUFETUUgZ290IGxvYWRlZCA/CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5tZXRhZGF0YVsnZGVzY3JpcHRpb24nXSwgJ3llYWgnKQorCisgICAgICAgICMgZG8gd2UgaGF2ZSB0aGUgRCBDb21waWxlciBlbmFibGVkID8KKyAgICAgICAgc2VsZi5hc3NlcnRJbignZCcsIF9DT01QSUxFUlMpCisgICAgICAgIGQgPSBuZXdfY29tcGlsZXIoY29tcGlsZXI9J2QnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGQuZGVzY3JpcHRpb24sICdEIENvbXBpbGVyJykKKworICAgIGRlZiB0ZXN0X211bHRpcGxlX2Rlc2NyaXB0aW9uX2ZpbGUoc2VsZik6CisgICAgICAgIHNlbGYud3JpdGVfc2V0dXAoeydkZXNjcmlwdGlvbi1maWxlJzogJ1JFQURNRSAgQ0hBTkdFUyd9KQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ1JFQURNRScsICd5ZWFoJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdDSEFOR0VTJywgJ2NoYW5nZWxvZzInKQorICAgICAgICBkaXN0ID0gc2VsZi5nZXRfZGlzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5tZXRhZGF0YS5yZXF1aXJlc19maWxlcywgWydSRUFETUUnLCAnQ0hBTkdFUyddKQorCisgICAgZGVmIHRlc3RfbXVsdGlsaW5lX2Rlc2NyaXB0aW9uX2ZpbGUoc2VsZik6CisgICAgICAgIHNlbGYud3JpdGVfc2V0dXAoeydkZXNjcmlwdGlvbi1maWxlJzogJ1JFQURNRVxuICBDSEFOR0VTJ30pCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FJywgJ3llYWgnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ0NIQU5HRVMnLCAnY2hhbmdlbG9nJykKKyAgICAgICAgZGlzdCA9IHNlbGYuZ2V0X2Rpc3QoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubWV0YWRhdGFbJ2Rlc2NyaXB0aW9uJ10sICd5ZWFoXG5jaGFuZ2Vsb2cnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubWV0YWRhdGEucmVxdWlyZXNfZmlsZXMsIFsnUkVBRE1FJywgJ0NIQU5HRVMnXSkKKworICAgIGRlZiB0ZXN0X3BhcnNlX2V4dGVuc2lvbnNfaW5fY29uZmlnKHNlbGYpOgorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ3NldHVwLmNmZycsIEVYVF9TRVRVUF9DRkcpCisgICAgICAgIGRpc3QgPSBzZWxmLmdldF9kaXN0KCkKKworICAgICAgICBleHRfbW9kdWxlcyA9IGRpY3QoKG1vZC5uYW1lLCBtb2QpIGZvciBtb2QgaW4gZGlzdC5leHRfbW9kdWxlcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oZXh0X21vZHVsZXMpLCAzKQorICAgICAgICBleHQgPSBleHRfbW9kdWxlcy5nZXQoJ29uZS5zcGVlZF9jb2NvbnV0cycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXh0LnNvdXJjZXMsIFsnY19zcmMvc3BlZWRfY29jb251dHMuYyddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4dC5kZWZpbmVfbWFjcm9zLCBbJ0hBVkVfQ0FJUk8nLCAnSEFWRV9HVEsyJ10pCisgICAgICAgIGxpYnMgPSBbJ2dlY29kZWludCcsICdnZWNvZGVrZXJuZWwnXQorICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzoKKyAgICAgICAgICAgIGxpYnMgPSBbJ0dlY29kZUludCcsICdHZWNvZGVLZXJuZWwnXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4dC5saWJyYXJpZXMsIGxpYnMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXh0LmV4dHJhX2xpbmtfYXJncywKKyAgICAgICAgICAgIFsnYGdjYyAtcHJpbnQtZmlsZS1uYW1lPWxpYmdjYy5hYCcsICctc2hhcmVkJ10pCisKKyAgICAgICAgZXh0ID0gZXh0X21vZHVsZXMuZ2V0KCd0d28uZmFzdF90YXVudCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXh0LnNvdXJjZXMsCisgICAgICAgICAgICBbJ2N4eF9zcmMvdXRpbHNfdGF1bnQuY3h4JywgJ2N4eF9zcmMvcHl0aG9uX21vZHVsZS5jeHgnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHQuaW5jbHVkZV9kaXJzLAorICAgICAgICAgICAgWycvdXNyL2luY2x1ZGUvZ2Vjb2RlJywgJy91c3IvaW5jbHVkZS9ibGl0eiddKQorICAgICAgICBjYXJncyA9IFsnLWZQSUMnLCAnLU8yJ10KKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CisgICAgICAgICAgICBjYXJncy5hcHBlbmQoIi9ER0VDT0RFX1ZFUlNJT049d2luMzIiKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgY2FyZ3MuYXBwZW5kKCctREdFQ09ERV9WRVJTSU9OPSQoLi9nZWNvZGVfdmVyc2lvbiknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4dC5leHRyYV9jb21waWxlX2FyZ3MsIGNhcmdzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4dC5sYW5ndWFnZSwgJ2N4eCcpCisKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdzZXR1cC5jZmcnLCBFWFRfU0VUVVBfQ0ZHX0JVR0dZXzEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ09wdGlvbkVycm9yLCBzZWxmLmdldF9kaXN0KQorCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnc2V0dXAuY2ZnJywgRVhUX1NFVFVQX0NGR19CVUdHWV8yKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdPcHRpb25FcnJvciwgc2VsZi5nZXRfZGlzdCkKKworICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ3NldHVwLmNmZycsIEVYVF9TRVRVUF9DRkdfQlVHR1lfMykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIHNlbGYuZ2V0X2Rpc3QpCisKKyAgICBkZWYgdGVzdF9wcm9qZWN0X3NldHVwX2hvb2tfd29ya3Moc2VsZik6CisgICAgICAgICMgQnVnICMxMTYzNzogZW5zdXJlIHRoZSBwcm9qZWN0IGRpcmVjdG9yeSBpcyBvbiBzeXMucGF0aCB0byBhbGxvdworICAgICAgICAjIHByb2plY3Qtc3BlY2lmaWMgaG9va3MKKyAgICAgICAgc2VsZi53cml0ZV9zZXR1cCh7J3NldHVwLWhvb2tzJzogJ2hvb2tzLmxvZ2dpbmdfaG9vayd9KQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ1JFQURNRScsICd5ZWFoJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdob29rcy5weScsIEhPT0tTX01PRFVMRSkKKyAgICAgICAgc2VsZi5nZXRfZGlzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydsb2dnaW5nX2hvb2sgY2FsbGVkJ10sIHNlbGYuZ2V0X2xvZ3MoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignaG9va3MnLCBzeXMubW9kdWxlcykKKworICAgIGRlZiB0ZXN0X21pc3Npbmdfc2V0dXBfaG9va193YXJucyhzZWxmKToKKyAgICAgICAgc2VsZi53cml0ZV9zZXR1cCh7J3NldHVwLWhvb2tzJzogJ2RvZXMuX25vdC5leGlzdCd9KQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ1JFQURNRScsICd5ZWFoJykKKyAgICAgICAgc2VsZi5nZXRfZGlzdCgpCisgICAgICAgIGxvZ3MgPSBzZWxmLmdldF9sb2dzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgxLCBsZW4obG9ncykpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2Nhbm5vdCBmaW5kIHNldHVwIGhvb2snLCBsb2dzWzBdKQorCisgICAgZGVmIHRlc3RfbXVsdGlwbGVfc2V0dXBfaG9va3Moc2VsZik6CisgICAgICAgIHNlbGYud3JpdGVfc2V0dXAoeworICAgICAgICAgICAgJ3NldHVwLWhvb2tzJzogJ1xuICBwYWNrYWdpbmcudGVzdHMudGVzdF9jb25maWcuZmlyc3RfaG9vaycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICdcbiAgcGFja2FnaW5nLnRlc3RzLnRlc3RfY29uZmlnLm1pc3NpbmdfaG9vaycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICdcbiAgcGFja2FnaW5nLnRlc3RzLnRlc3RfY29uZmlnLnRoaXJkX2hvb2snLAorICAgICAgICB9KQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ1JFQURNRScsICd5ZWFoJykKKyAgICAgICAgZGlzdCA9IHNlbGYuZ2V0X2Rpc3QoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydoYXZlbicsICdmaXJzdCcsICd0aGlyZCddLCBkaXN0LnB5X21vZHVsZXMpCisgICAgICAgIGxvZ3MgPSBzZWxmLmdldF9sb2dzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgxLCBsZW4obG9ncykpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2Nhbm5vdCBmaW5kIHNldHVwIGhvb2snLCBsb2dzWzBdKQorCisgICAgZGVmIHRlc3RfbWV0YWRhdGFfcmVxdWlyZXNfZGVzY3JpcHRpb25fZmlsZXNfbWlzc2luZyhzZWxmKToKKyAgICAgICAgc2VsZi53cml0ZV9zZXR1cCh7J2Rlc2NyaXB0aW9uLWZpbGUnOiAnUkVBRE1FIFJFQURNRTInfSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdSRUFETUUnLCAneWVhaCcpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FMicsICd5ZWFoJykKKyAgICAgICAgb3MubWtkaXIoJ3NyYycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoJ3NyYycsICdoYXZlbi5weScpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnc2NyaXB0MS5weScsICcjJykKKyAgICAgICAgb3MubWtkaXIoJ3NjcmlwdHMnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKCdzY3JpcHRzJywgJ2ZpbmQtY29jb251dHMnKSwgJyMnKQorICAgICAgICBvcy5ta2RpcignYmluJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCgnYmluJywgJ3RhdW50JyksICcjJykKKworICAgICAgICBmb3IgcGtnIGluICgnb25lJywgJ3R3bycsICd0aHJlZScpOgorICAgICAgICAgICAgcGtnID0gb3MucGF0aC5qb2luKCdzcmMnLCBwa2cpCisgICAgICAgICAgICBvcy5ta2Rpcihwa2cpCisgICAgICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHBrZywgJ19faW5pdF9fLnB5JyksICcjJykKKworICAgICAgICBkaXN0ID0gc2VsZi5nZXRfZGlzdCgpCisgICAgICAgIGNtZCA9IHNkaXN0KGRpc3QpCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgY21kLmdldF9maWxlX2xpc3QoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdGaWxlRXJyb3IsIGNtZC5tYWtlX2Rpc3RyaWJ1dGlvbikKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfbWV0YWRhdGFfcmVxdWlyZXNfZGVzY3JpcHRpb25fZmlsZXMoc2VsZik6CisgICAgICAgICMgQ3JlYXRlIHRoZSBmb2xsb3dpbmcgZmlsZSBzdHJ1Y3R1cmU6CisgICAgICAgICMgICBSRUFETUUKKyAgICAgICAgIyAgIFJFQURNRTIKKyAgICAgICAgIyAgIHNjcmlwdDEucHkKKyAgICAgICAgIyAgIHNjcmlwdHMvCisgICAgICAgICMgICAgICAgZmluZC1jb2NvbnV0cworICAgICAgICAjICAgYmluLworICAgICAgICAjICAgICAgIHRhdW50CisgICAgICAgICMgICBzcmMvCisgICAgICAgICMgICAgICAgaGF2ZW4ucHkKKyAgICAgICAgIyAgICAgICBvbmUvX19pbml0X18ucHkKKyAgICAgICAgIyAgICAgICB0d28vX19pbml0X18ucHkKKyAgICAgICAgIyAgICAgICB0aHJlZS9fX2luaXRfXy5weQorCisgICAgICAgIHNlbGYud3JpdGVfc2V0dXAoeydkZXNjcmlwdGlvbi1maWxlJzogJ1JFQURNRVxuICBSRUFETUUyJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ2V4dHJhLWZpbGVzJzogJ1xuICBSRUFETUUzJ30pCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FJywgJ3llYWggMScpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnUkVBRE1FMicsICd5ZWFoIDInKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ1JFQURNRTMnLCAneWVhaCAzJykKKyAgICAgICAgb3MubWtkaXIoJ3NyYycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoJ3NyYycsICdoYXZlbi5weScpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnc2NyaXB0MS5weScsICcjJykKKyAgICAgICAgb3MubWtkaXIoJ3NjcmlwdHMnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKCdzY3JpcHRzJywgJ2ZpbmQtY29jb251dHMnKSwgJyMnKQorICAgICAgICBvcy5ta2RpcignYmluJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCgnYmluJywgJ3RhdW50JyksICcjJykKKworICAgICAgICBmb3IgcGtnIGluICgnb25lJywgJ3R3bycsICd0aHJlZScpOgorICAgICAgICAgICAgcGtnID0gb3MucGF0aC5qb2luKCdzcmMnLCBwa2cpCisgICAgICAgICAgICBvcy5ta2Rpcihwa2cpCisgICAgICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHBrZywgJ19faW5pdF9fLnB5JyksICcjJykKKworICAgICAgICBkaXN0ID0gc2VsZi5nZXRfZGlzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3llYWggMVxueWVhaCAyJywgZGlzdC5tZXRhZGF0YVsnZGVzY3JpcHRpb24nXSkKKworICAgICAgICBjbWQgPSBzZGlzdChkaXN0KQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIGNtZC5nZXRfZmlsZV9saXN0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nRmlsZUVycm9yLCBjbWQubWFrZV9kaXN0cmlidXRpb24pCisKKyAgICAgICAgc2VsZi53cml0ZV9zZXR1cCh7J2Rlc2NyaXB0aW9uLWZpbGUnOiAnUkVBRE1FXG4gIFJFQURNRTInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnZXh0cmEtZmlsZXMnOiAnXG4gIFJFQURNRTJcbiAgICBSRUFETUUnfSkKKyAgICAgICAgZGlzdCA9IHNlbGYuZ2V0X2Rpc3QoKQorICAgICAgICBjbWQgPSBzZGlzdChkaXN0KQorICAgICAgICBjbWQuZmluYWxpemVfb3B0aW9ucygpCisgICAgICAgIGNtZC5nZXRfZmlsZV9saXN0KCkKKyAgICAgICAgY21kLm1ha2VfZGlzdHJpYnV0aW9uKCkKKyAgICAgICAgd2l0aCBvcGVuKCdNQU5JRkVTVCcpIGFzIGZwOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbignUkVBRE1FXG5SRUFETUUyXG4nLCBmcC5yZWFkKCkpCisKKyAgICBkZWYgdGVzdF9zdWJfY29tbWFuZHMoc2VsZik6CisgICAgICAgIHNlbGYud3JpdGVfc2V0dXAoKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ1JFQURNRScsICd5ZWFoJykKKyAgICAgICAgb3MubWtkaXIoJ3NyYycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgoJ3NyYycsICdoYXZlbi5weScpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnc2NyaXB0MS5weScsICcjJykKKyAgICAgICAgb3MubWtkaXIoJ3NjcmlwdHMnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKCdzY3JpcHRzJywgJ2ZpbmQtY29jb251dHMnKSwgJyMnKQorICAgICAgICBvcy5ta2RpcignYmluJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCgnYmluJywgJ3RhdW50JyksICcjJykKKworICAgICAgICBmb3IgcGtnIGluICgnb25lJywgJ3R3bycsICd0aHJlZScpOgorICAgICAgICAgICAgcGtnID0gb3MucGF0aC5qb2luKCdzcmMnLCBwa2cpCisgICAgICAgICAgICBvcy5ta2Rpcihwa2cpCisgICAgICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHBrZywgJ19faW5pdF9fLnB5JyksICcjJykKKworICAgICAgICAjIHRyeSB0byBydW4gdGhlIGluc3RhbGwgY29tbWFuZCB0byBzZWUgaWYgZm9vIGlzIGNhbGxlZAorICAgICAgICBzZWxmLmFkZENsZWFudXAoY29tbWFuZC5fQ09NTUFORFMuX19kZWxpdGVtX18sICdmb28nKQorICAgICAgICBkaXN0ID0gc2VsZi5nZXRfZGlzdCgpCisgICAgICAgIGRpc3QucnVuX2NvbW1hbmQoJ2luc3RhbGxfZGlzdCcpCisgICAgICAgIGNtZCA9IGRpc3QuZ2V0X2NvbW1hbmRfb2JqKCdmb28nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtZC5fX2NsYXNzX18uX19uYW1lX18sICdGb29CYXJCYXpUZXN0JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbWQuX3JlY29yZCwgWydmb28gaGFzIHJ1biddKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShDb25maWdUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jcmVhdGUucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY3JlYXRlLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA3ODI0YjEKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY3JlYXRlLnB5CkBAIC0wLDAgKzEsMjM0IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmNyZWF0ZS4iIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHN5c2NvbmZpZworZnJvbSB0ZXh0d3JhcCBpbXBvcnQgZGVkZW50Citmcm9tIHBhY2thZ2luZyBpbXBvcnQgY3JlYXRlCitmcm9tIHBhY2thZ2luZy5jcmVhdGUgaW1wb3J0IE1haW5Qcm9ncmFtLCBhc2tfeW4sIGFzaywgbWFpbgorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgc3VwcG9ydCwgdW5pdHRlc3QKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IElucHV0cworCisKK2NsYXNzIENyZWF0ZVRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBtYXhEaWZmID0gTm9uZQorICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnUExBVCddCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKENyZWF0ZVRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYud2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG9zLmNoZGlyKHNlbGYud2RpcikKKyAgICAgICAgIyBwYXRjaCBzeXNjb25maWcKKyAgICAgICAgc2VsZi5fb2xkX2dldF9wYXRocyA9IHN5c2NvbmZpZy5nZXRfcGF0aHMKKyAgICAgICAgc3lzY29uZmlnLmdldF9wYXRocyA9IGxhbWJkYSAqYXJncywgKiprd2FyZ3M6IHsKKyAgICAgICAgICAgICdtYW4nOiBzeXMucHJlZml4ICsgJy9zaGFyZS9tYW4nLAorICAgICAgICAgICAgJ2RvYyc6IHN5cy5wcmVmaXggKyAnL3NoYXJlL2RvYy9weXhmb2lsJywgfQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBzeXNjb25maWcuZ2V0X3BhdGhzID0gc2VsZi5fb2xkX2dldF9wYXRocworICAgICAgICBpZiBoYXNhdHRyKGNyZWF0ZSwgJ2lucHV0Jyk6CisgICAgICAgICAgICBkZWwgY3JlYXRlLmlucHV0CisgICAgICAgIHN1cGVyKENyZWF0ZVRlc3RDYXNlLCBzZWxmKS50ZWFyRG93bigpCisKKyAgICBkZWYgdGVzdF9hc2tfeW4oc2VsZik6CisgICAgICAgIGNyZWF0ZS5pbnB1dCA9IElucHV0cygneScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ3knLCBhc2tfeW4oJ2lzIHRoaXMgYSB0ZXN0JykpCisKKyAgICBkZWYgdGVzdF9hc2soc2VsZik6CisgICAgICAgIGNyZWF0ZS5pbnB1dCA9IElucHV0cygnYScsICdiJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnYScsIGFzaygnaXMgdGhpcyBhIHRlc3QnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnYicsIGFzayhzdHIobGlzdChyYW5nZSgwLCA3MCkpKSwgZGVmYXVsdD0nYycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuZ3RoeT1UcnVlKSkKKworICAgIGRlZiB0ZXN0X3NldF9tdWx0aShzZWxmKToKKyAgICAgICAgbWFpbnByb2dyYW0gPSBNYWluUHJvZ3JhbSgpCisgICAgICAgIGNyZWF0ZS5pbnB1dCA9IElucHV0cygnYWFhYWEnKQorICAgICAgICBtYWlucHJvZ3JhbS5kYXRhWydhdXRob3InXSA9IFtdCisgICAgICAgIG1haW5wcm9ncmFtLl9zZXRfbXVsdGkoJ19zZXRfbXVsdGkgdGVzdCcsICdhdXRob3InKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnYWFhYWEnXSwgbWFpbnByb2dyYW0uZGF0YVsnYXV0aG9yJ10pCisKKyAgICBkZWYgdGVzdF9maW5kX2ZpbGVzKHNlbGYpOgorICAgICAgICAjIG1ha2luZyBzdXJlIHdlIHNjYW4gYSBwcm9qZWN0IGRpciBjb3JyZWN0bHkKKyAgICAgICAgbWFpbnByb2dyYW0gPSBNYWluUHJvZ3JhbSgpCisKKyAgICAgICAgIyBidWlsZGluZyB0aGUgc3RydWN0dXJlCisgICAgICAgIHRlbXBkaXIgPSBzZWxmLndkaXIKKyAgICAgICAgZGlycyA9IFsncGtnMScsICdkYXRhJywgJ3BrZzInLCAncGtnMi9zdWInXQorICAgICAgICBmaWxlcyA9IFsKKyAgICAgICAgICAgICdSRUFETUUnLAorICAgICAgICAgICAgJ2RhdGEvZGF0YTEnLAorICAgICAgICAgICAgJ2Zvby5weScsCisgICAgICAgICAgICAncGtnMS9fX2luaXRfXy5weScsCisgICAgICAgICAgICAncGtnMS9iYXIucHknLAorICAgICAgICAgICAgJ3BrZzIvX19pbml0X18ucHknLAorICAgICAgICAgICAgJ3BrZzIvc3ViL19faW5pdF9fLnB5JywKKyAgICAgICAgXQorCisgICAgICAgIGZvciBkaXJfIGluIGRpcnM6CisgICAgICAgICAgICBvcy5ta2Rpcihvcy5wYXRoLmpvaW4odGVtcGRpciwgZGlyXykpCisKKyAgICAgICAgZm9yIGZpbGVfIGluIGZpbGVzOgorICAgICAgICAgICAgc2VsZi53cml0ZV9maWxlKCh0ZW1wZGlyLCBmaWxlXyksICd4eHgnKQorCisgICAgICAgIG1haW5wcm9ncmFtLl9maW5kX2ZpbGVzKCkKKyAgICAgICAgbWFpbnByb2dyYW0uZGF0YVsncGFja2FnZXMnXS5zb3J0KCkKKworICAgICAgICAjIGRvIHdlIGhhdmUgd2hhdCB3ZSB3YW50PworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1haW5wcm9ncmFtLmRhdGFbJ3BhY2thZ2VzJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgWydwa2cxJywgJ3BrZzInLCAncGtnMi5zdWInXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYWlucHJvZ3JhbS5kYXRhWydtb2R1bGVzJ10sIFsnZm9vJ10pCisgICAgICAgIGRhdGFfZm4gPSBvcy5wYXRoLmpvaW4oJ2RhdGEnLCAnZGF0YTEnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1haW5wcm9ncmFtLmRhdGFbJ2V4dHJhX2ZpbGVzJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgWydSRUFETUUnLCBkYXRhX2ZuXSkKKworICAgIGRlZiB0ZXN0X2NvbnZlcnRfc2V0dXBfcHlfdG9fY2ZnKHNlbGYpOgorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYud2RpciwgJ3NldHVwLnB5JyksCisgICAgICAgICAgICAgICAgICAgICAgICBkZWRlbnQoIiIiCisgICAgICAgICMgY29kaW5nOiB1dGYtOAorICAgICAgICBmcm9tIGRpc3R1dGlscy5jb3JlIGltcG9ydCBzZXR1cAorCisgICAgICAgIGxvbmdfZGVzY3JpcHRpb24gPSAnJydNeSBzdXBlciBEZWF0aC1zY3JpcHRpb24KKyAgICAgICAgYmFyYmFyIGlzIG5vdyBvbiB0aGUgcHVibGljIGRvbWFpbiwKKyAgICAgICAgaG8sIGJhYnkgIScnJworCisgICAgICAgIHNldHVwKG5hbWU9J3B5eGZvaWwnLAorICAgICAgICAgICAgICB2ZXJzaW9uPScwLjInLAorICAgICAgICAgICAgICBkZXNjcmlwdGlvbj0nUHl0aG9uIGJpbmRpbmdzIGZvciB0aGUgWGZvaWwgZW5naW5lJywKKyAgICAgICAgICAgICAgbG9uZ19kZXNjcmlwdGlvbj1sb25nX2Rlc2NyaXB0aW9uLAorICAgICAgICAgICAgICBtYWludGFpbmVyPSdBbmRyw6kgRXNwYXplJywKKyAgICAgICAgICAgICAgbWFpbnRhaW5lcl9lbWFpbD0nYW5kcmUuZXNwYXplQGxvZ2lsYWIuZnInLAorICAgICAgICAgICAgICB1cmw9J2h0dHA6Ly93d3cucHl0aG9uLXNjaWVuY2Uub3JnL3Byb2plY3QvcHl4Zm9pbCcsCisgICAgICAgICAgICAgIGxpY2Vuc2U9J0dQTHYyJywKKyAgICAgICAgICAgICAgcGFja2FnZXM9WydweXhmb2lsJywgJ2JhYmFyJywgJ21lJ10sCisgICAgICAgICAgICAgIGRhdGFfZmlsZXM9WworICAgICAgICAgICAgICAgICAgKCdzaGFyZS9kb2MvcHl4Zm9pbCcsIFsnUkVBRE1FLnJzdCddKSwKKyAgICAgICAgICAgICAgICAgICgnc2hhcmUvbWFuJywgWydweXhmb2lsLjEnXSksCisgICAgICAgICAgICAgICAgICAgICAgICAgXSwKKyAgICAgICAgICAgICAgcHlfbW9kdWxlcz1bJ215X2xpYicsICdteW1vZHVsZSddLAorICAgICAgICAgICAgICBwYWNrYWdlX2Rpcj17CisgICAgICAgICAgICAgICAgICAnYmFiYXInOiAnJywKKyAgICAgICAgICAgICAgICAgICdtZSc6ICdNYXJ0aW5pcXVlL0xhbWVudGluJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICAgcGFja2FnZV9kYXRhPXsKKyAgICAgICAgICAgICAgICAgICdiYWJhcic6IFsnUG9tJywgJ0Zsb3JhJywgJ0FsZXhhbmRlciddLAorICAgICAgICAgICAgICAgICAgJ21lJzogWydkYWR5JywgJ211bXknLCAnc3lzJywgJ2JybyddLAorICAgICAgICAgICAgICAgICAgJyc6ICBbJ3NldHVwLnB5JywgJ1JFQURNRSddLAorICAgICAgICAgICAgICAgICAgJ3B5eGZvaWwnOiBbJ2ZlbmdpbmUuc28nXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sCisgICAgICAgICAgICAgIHNjcmlwdHM9WydteV9zY3JpcHQnLCAnYmluL3J1biddLAorICAgICAgICAgICAgICApCisgICAgICAgICIiIiksIGVuY29kaW5nPSd1dGYtOCcpCisgICAgICAgIGNyZWF0ZS5pbnB1dCA9IElucHV0cygneScpCisgICAgICAgIG1haW4oKQorCisgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oc2VsZi53ZGlyLCAnc2V0dXAuY2ZnJykKKyAgICAgICAgd2l0aCBvcGVuKHBhdGgsIGVuY29kaW5nPSd1dGYtOCcpIGFzIGZwOgorICAgICAgICAgICAgY29udGVudHMgPSBmcC5yZWFkKCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRlbnRzLCBkZWRlbnQoIiIiXAorICAgICAgICAgICAgW21ldGFkYXRhXQorICAgICAgICAgICAgbmFtZSA9IHB5eGZvaWwKKyAgICAgICAgICAgIHZlcnNpb24gPSAwLjIKKyAgICAgICAgICAgIHN1bW1hcnkgPSBQeXRob24gYmluZGluZ3MgZm9yIHRoZSBYZm9pbCBlbmdpbmUKKyAgICAgICAgICAgIGRvd25sb2FkX3VybCA9IFVOS05PV04KKyAgICAgICAgICAgIGhvbWVfcGFnZSA9IGh0dHA6Ly93d3cucHl0aG9uLXNjaWVuY2Uub3JnL3Byb2plY3QvcHl4Zm9pbAorICAgICAgICAgICAgbWFpbnRhaW5lciA9IEFuZHLDqSBFc3BhemUKKyAgICAgICAgICAgIG1haW50YWluZXJfZW1haWwgPSBhbmRyZS5lc3BhemVAbG9naWxhYi5mcgorICAgICAgICAgICAgZGVzY3JpcHRpb24gPSBNeSBzdXBlciBEZWF0aC1zY3JpcHRpb24KKyAgICAgICAgICAgICAgICAgICB8YmFyYmFyIGlzIG5vdyBvbiB0aGUgcHVibGljIGRvbWFpbiwKKyAgICAgICAgICAgICAgICAgICB8aG8sIGJhYnkgIQorCisgICAgICAgICAgICBbZmlsZXNdCisgICAgICAgICAgICBwYWNrYWdlcyA9IHB5eGZvaWwKKyAgICAgICAgICAgICAgICBiYWJhcgorICAgICAgICAgICAgICAgIG1lCisgICAgICAgICAgICBtb2R1bGVzID0gbXlfbGliCisgICAgICAgICAgICAgICAgbXltb2R1bGUKKyAgICAgICAgICAgIHNjcmlwdHMgPSBteV9zY3JpcHQKKyAgICAgICAgICAgICAgICBiaW4vcnVuCisgICAgICAgICAgICBleHRyYV9maWxlcyA9IE1hcnRpbmlxdWUvTGFtZW50aW4vZGFkeQorICAgICAgICAgICAgICAgIE1hcnRpbmlxdWUvTGFtZW50aW4vbXVteQorICAgICAgICAgICAgICAgIE1hcnRpbmlxdWUvTGFtZW50aW4vc3lzCisgICAgICAgICAgICAgICAgTWFydGluaXF1ZS9MYW1lbnRpbi9icm8KKyAgICAgICAgICAgICAgICBzZXR1cC5weQorICAgICAgICAgICAgICAgIFJFQURNRQorICAgICAgICAgICAgICAgIFBvbQorICAgICAgICAgICAgICAgIEZsb3JhCisgICAgICAgICAgICAgICAgQWxleGFuZGVyCisgICAgICAgICAgICAgICAgcHl4Zm9pbC9mZW5naW5lLnNvCisKKyAgICAgICAgICAgIHJlc291cmNlcyA9CisgICAgICAgICAgICAgICAgUkVBRE1FLnJzdCA9IHtkb2N9CisgICAgICAgICAgICAgICAgcHl4Zm9pbC4xID0ge21hbn0KKworICAgICAgICAgICAgIiIiKSkKKworICAgIGRlZiB0ZXN0X2NvbnZlcnRfc2V0dXBfcHlfdG9fY2ZnX3dpdGhfZGVzY3JpcHRpb25faW5fcmVhZG1lKHNlbGYpOgorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHNlbGYud2RpciwgJ3NldHVwLnB5JyksCisgICAgICAgICAgICAgICAgICAgICAgICBkZWRlbnQoIiIiCisgICAgICAgICMgY29kaW5nOiB1dGYtOAorICAgICAgICBmcm9tIGRpc3R1dGlscy5jb3JlIGltcG9ydCBzZXR1cAorICAgICAgICB3aXRoIG9wZW4oJ1JFQURNRS50eHQnKSBhcyBmcDoKKyAgICAgICAgICAgIGxvbmdfZGVzY3JpcHRpb24gPSBmcC5yZWFkKCkKKworICAgICAgICBzZXR1cChuYW1lPSdweXhmb2lsJywKKyAgICAgICAgICAgICAgdmVyc2lvbj0nMC4yJywKKyAgICAgICAgICAgICAgZGVzY3JpcHRpb249J1B5dGhvbiBiaW5kaW5ncyBmb3IgdGhlIFhmb2lsIGVuZ2luZScsCisgICAgICAgICAgICAgIGxvbmdfZGVzY3JpcHRpb249bG9uZ19kZXNjcmlwdGlvbiwKKyAgICAgICAgICAgICAgbWFpbnRhaW5lcj0nQW5kcsOpIEVzcGF6ZScsCisgICAgICAgICAgICAgIG1haW50YWluZXJfZW1haWw9J2FuZHJlLmVzcGF6ZUBsb2dpbGFiLmZyJywKKyAgICAgICAgICAgICAgdXJsPSdodHRwOi8vd3d3LnB5dGhvbi1zY2llbmNlLm9yZy9wcm9qZWN0L3B5eGZvaWwnLAorICAgICAgICAgICAgICBsaWNlbnNlPSdHUEx2MicsCisgICAgICAgICAgICAgIHBhY2thZ2VzPVsncHl4Zm9pbCddLAorICAgICAgICAgICAgICBwYWNrYWdlX2RhdGE9eydweXhmb2lsJzogWydmZW5naW5lLnNvJywgJ2JhYmFyLnNvJ119LAorICAgICAgICAgICAgICBkYXRhX2ZpbGVzPVsKKyAgICAgICAgICAgICAgICAoJ3NoYXJlL2RvYy9weXhmb2lsJywgWydSRUFETUUucnN0J10pLAorICAgICAgICAgICAgICAgICgnc2hhcmUvbWFuJywgWydweXhmb2lsLjEnXSksCisgICAgICAgICAgICAgIF0sCisgICAgICAgICkKKyAgICAgICAgIiIiKSwgZW5jb2Rpbmc9J3V0Zi04JykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChzZWxmLndkaXIsICdSRUFETUUudHh0JyksCisgICAgICAgICAgICAgICAgICAgICAgICBkZWRlbnQoJycnCitNeSBzdXBlciBEZWF0aC1zY3JpcHRpb24KK2JhcmJhciBpcyBub3cgaW4gdGhlIHB1YmxpYyBkb21haW4sCitobywgYmFieSEKKyAgICAgICAgICAgICAgICAgICAgICAgICcnJykpCisgICAgICAgIGNyZWF0ZS5pbnB1dCA9IElucHV0cygneScpCisgICAgICAgIG1haW4oKQorCisgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oc2VsZi53ZGlyLCAnc2V0dXAuY2ZnJykKKyAgICAgICAgd2l0aCBvcGVuKHBhdGgsIGVuY29kaW5nPSd1dGYtOCcpIGFzIGZwOgorICAgICAgICAgICAgY29udGVudHMgPSBmcC5yZWFkKCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRlbnRzLCBkZWRlbnQoIiIiXAorICAgICAgICAgICAgW21ldGFkYXRhXQorICAgICAgICAgICAgbmFtZSA9IHB5eGZvaWwKKyAgICAgICAgICAgIHZlcnNpb24gPSAwLjIKKyAgICAgICAgICAgIHN1bW1hcnkgPSBQeXRob24gYmluZGluZ3MgZm9yIHRoZSBYZm9pbCBlbmdpbmUKKyAgICAgICAgICAgIGRvd25sb2FkX3VybCA9IFVOS05PV04KKyAgICAgICAgICAgIGhvbWVfcGFnZSA9IGh0dHA6Ly93d3cucHl0aG9uLXNjaWVuY2Uub3JnL3Byb2plY3QvcHl4Zm9pbAorICAgICAgICAgICAgbWFpbnRhaW5lciA9IEFuZHLDqSBFc3BhemUKKyAgICAgICAgICAgIG1haW50YWluZXJfZW1haWwgPSBhbmRyZS5lc3BhemVAbG9naWxhYi5mcgorICAgICAgICAgICAgZGVzY3JpcHRpb24tZmlsZSA9IFJFQURNRS50eHQKKworICAgICAgICAgICAgW2ZpbGVzXQorICAgICAgICAgICAgcGFja2FnZXMgPSBweXhmb2lsCisgICAgICAgICAgICBleHRyYV9maWxlcyA9IHB5eGZvaWwvZmVuZ2luZS5zbworICAgICAgICAgICAgICAgIHB5eGZvaWwvYmFiYXIuc28KKworICAgICAgICAgICAgcmVzb3VyY2VzID0KKyAgICAgICAgICAgICAgICBSRUFETUUucnN0ID0ge2RvY30KKyAgICAgICAgICAgICAgICBweXhmb2lsLjEgPSB7bWFufQorCisgICAgICAgICAgICAiIiIpKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShDcmVhdGVUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9jeWd3aW5jY29tcGlsZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY3lnd2luY2NvbXBpbGVyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE3YzQzY2QKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfY3lnd2luY2NvbXBpbGVyLnB5CkBAIC0wLDAgKzEsODggQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY3lnd2luY2NvbXBpbGVyLiIiIgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgc3lzY29uZmlnCitmcm9tIHBhY2thZ2luZy5jb21waWxlci5jeWd3aW5jY29tcGlsZXIgaW1wb3J0ICgKKyAgICBjaGVja19jb25maWdfaCwgZ2V0X21zdmNyLAorICAgIENPTkZJR19IX09LLCBDT05GSUdfSF9OT1RPSywgQ09ORklHX0hfVU5DRVJUQUlOKQorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKKworCitjbGFzcyBDeWd3aW5DQ29tcGlsZXJUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihDeWd3aW5DQ29tcGlsZXJUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLnZlcnNpb24gPSBzeXMudmVyc2lvbgorICAgICAgICBzZWxmLnB5dGhvbl9oID0gb3MucGF0aC5qb2luKHNlbGYubWtkdGVtcCgpLCAncHl0aG9uLmgnKQorICAgICAgICBzZWxmLm9sZF9nZXRfY29uZmlnX2hfZmlsZW5hbWUgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ19oX2ZpbGVuYW1lCisgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX2hfZmlsZW5hbWUgPSBzZWxmLl9nZXRfY29uZmlnX2hfZmlsZW5hbWUKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc3lzLnZlcnNpb24gPSBzZWxmLnZlcnNpb24KKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfaF9maWxlbmFtZSA9IHNlbGYub2xkX2dldF9jb25maWdfaF9maWxlbmFtZQorICAgICAgICBzdXBlcihDeWd3aW5DQ29tcGlsZXJUZXN0Q2FzZSwgc2VsZikudGVhckRvd24oKQorCisgICAgZGVmIF9nZXRfY29uZmlnX2hfZmlsZW5hbWUoc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLnB5dGhvbl9oCisKKyAgICBkZWYgdGVzdF9jaGVja19jb25maWdfaChzZWxmKToKKyAgICAgICAgIyBjaGVja19jb25maWdfaCBsb29rcyBmb3IgIkdDQyIgaW4gc3lzLnZlcnNpb24gZmlyc3QKKyAgICAgICAgIyByZXR1cm5zIENPTkZJR19IX09LIGlmIGZvdW5kCisgICAgICAgIHN5cy52ZXJzaW9uID0gKCcyLjYuMSAocjI2MTo2NzUxNSwgRGVjICA2IDIwMDgsIDE2OjQyOjIxKSBcbltHQ0MgJworICAgICAgICAgICAgICAgICAgICAgICAnNC4wLjEgKEFwcGxlIENvbXB1dGVyLCBJbmMuIGJ1aWxkIDUzNzApXScpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjaGVja19jb25maWdfaCgpWzBdLCBDT05GSUdfSF9PSykKKworICAgICAgICAjIHRoZW4gaXQgdHJpZXMgdG8gc2VlIGlmIGl0IGNhbiBmaW5kICJfX0dOVUNfXyIgaW4gcHljb25maWcuaAorICAgICAgICBzeXMudmVyc2lvbiA9ICdzb21ldGhpbmcgd2l0aG91dCB0aGUgKkNDIHdvcmQnCisKKyAgICAgICAgIyBpZiB0aGUgZmlsZSBkb2Vzbid0IGV4aXN0IGl0IHJldHVybnMgIENPTkZJR19IX1VOQ0VSVEFJTgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNoZWNrX2NvbmZpZ19oKClbMF0sIENPTkZJR19IX1VOQ0VSVEFJTikKKworICAgICAgICAjIGlmIGl0IGV4aXN0cyBidXQgZG9lcyBub3QgY29udGFpbiBfX0dOVUNfXywgaXQgcmV0dXJucyBDT05GSUdfSF9OT1RPSworICAgICAgICBzZWxmLndyaXRlX2ZpbGUoc2VsZi5weXRob25faCwgJ3h4eCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hlY2tfY29uZmlnX2goKVswXSwgQ09ORklHX0hfTk9UT0spCisKKyAgICAgICAgIyBhbmQgQ09ORklHX0hfT0sgaWYgX19HTlVDX18gaXMgZm91bmQKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKHNlbGYucHl0aG9uX2gsICd4eHggX19HTlVDX18geHh4JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjaGVja19jb25maWdfaCgpWzBdLCBDT05GSUdfSF9PSykKKworICAgIGRlZiB0ZXN0X2dldF9tc3ZjcihzZWxmKToKKyAgICAgICAgIyBub25lCisgICAgICAgIHN5cy52ZXJzaW9uID0gKCcyLjYuMSAocjI2MTo2NzUxNSwgRGVjICA2IDIwMDgsIDE2OjQyOjIxKSAnCisgICAgICAgICAgICAgICAgICAgICAgICdcbltHQ0MgNC4wLjEgKEFwcGxlIENvbXB1dGVyLCBJbmMuIGJ1aWxkIDUzNzApXScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0X21zdmNyKCksIE5vbmUpCisKKyAgICAgICAgIyBNU1ZDIDcuMAorICAgICAgICBzeXMudmVyc2lvbiA9ICgnMi41LjEgKHIyNTE6NTQ4NjMsIEFwciAxOCAyMDA3LCAwODo1MTowOCkgJworICAgICAgICAgICAgICAgICAgICAgICAnW01TQyB2LjEzMDAgMzIgYml0cyAoSW50ZWwpXScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0X21zdmNyKCksIFsnbXN2Y3I3MCddKQorCisgICAgICAgICMgTVNWQyA3LjEKKyAgICAgICAgc3lzLnZlcnNpb24gPSAoJzIuNS4xIChyMjUxOjU0ODYzLCBBcHIgMTggMjAwNywgMDg6NTE6MDgpICcKKyAgICAgICAgICAgICAgICAgICAgICAgJ1tNU0Mgdi4xMzEwIDMyIGJpdHMgKEludGVsKV0nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldF9tc3ZjcigpLCBbJ21zdmNyNzEnXSkKKworICAgICAgICAjIFZTMjAwNSAvIE1TVkMgOC4wCisgICAgICAgIHN5cy52ZXJzaW9uID0gKCcyLjUuMSAocjI1MTo1NDg2MywgQXByIDE4IDIwMDcsIDA4OjUxOjA4KSAnCisgICAgICAgICAgICAgICAgICAgICAgICdbTVNDIHYuMTQwMCAzMiBiaXRzIChJbnRlbCldJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRfbXN2Y3IoKSwgWydtc3ZjcjgwJ10pCisKKyAgICAgICAgIyBWUzIwMDggLyBNU1ZDIDkuMAorICAgICAgICBzeXMudmVyc2lvbiA9ICgnMi41LjEgKHIyNTE6NTQ4NjMsIEFwciAxOCAyMDA3LCAwODo1MTowOCkgJworICAgICAgICAgICAgICAgICAgICAgICAnW01TQyB2LjE1MDAgMzIgYml0cyAoSW50ZWwpXScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0X21zdmNyKCksIFsnbXN2Y3I5MCddKQorCisgICAgICAgICMgdW5rbm93bgorICAgICAgICBzeXMudmVyc2lvbiA9ICgnMi41LjEgKHIyNTE6NTQ4NjMsIEFwciAxOCAyMDA3LCAwODo1MTowOCkgJworICAgICAgICAgICAgICAgICAgICAgICAnW01TQyB2LjE5OTkgMzIgYml0cyAoSW50ZWwpXScpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGdldF9tc3ZjcikKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoQ3lnd2luQ0NvbXBpbGVyVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfZGF0YWJhc2UucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfZGF0YWJhc2UucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWQ5MWI5NAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9kYXRhYmFzZS5weQpAQCAtMCwwICsxLDY4NiBAQAoraW1wb3J0IG9zCitpbXBvcnQgaW8KK2ltcG9ydCBjc3YKK2ltcG9ydCBzeXMKK2ltcG9ydCBzaHV0aWwKK2ltcG9ydCB0ZW1wZmlsZQorZnJvbSBoYXNobGliIGltcG9ydCBtZDUKK2Zyb20gdGV4dHdyYXAgaW1wb3J0IGRlZGVudAorCitmcm9tIHBhY2thZ2luZy50ZXN0cy50ZXN0X3V0aWwgaW1wb3J0IEdsb2JUZXN0Q2FzZUJhc2UKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IHJlcXVpcmVzX3psaWIKKworaW1wb3J0IHBhY2thZ2luZy5kYXRhYmFzZQorZnJvbSBwYWNrYWdpbmcuY29uZmlnIGltcG9ydCBnZXRfcmVzb3VyY2VzX2Rlc3RzCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ0Vycm9yCitmcm9tIHBhY2thZ2luZy5tZXRhZGF0YSBpbXBvcnQgTWV0YWRhdGEKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0ICgKKyAgICBEaXN0cmlidXRpb24sIEVnZ0luZm9EaXN0cmlidXRpb24sIGdldF9kaXN0cmlidXRpb24sIGdldF9kaXN0cmlidXRpb25zLAorICAgIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbiwgb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbiwgZ2V0X2ZpbGVfdXNlcnMsCisgICAgZW5hYmxlX2NhY2hlLCBkaXNhYmxlX2NhY2hlLCBkaXN0aW5mb19kaXJuYW1lLCBfeWllbGRfZGlzdHJpYnV0aW9ucywKKyAgICBnZXRfZmlsZSwgZ2V0X2ZpbGVfcGF0aCkKKworIyBUT0RPIEFkZCBhIHRlc3QgZm9yIGdldHRpbmcgYSBkaXN0cmlidXRpb24gcHJvdmlkZWQgYnkgYW5vdGhlciBkaXN0cmlidXRpb24KKyMgVE9ETyBBZGQgYSB0ZXN0IGZvciBhYnNvbHV0ZSBwYXRoZWQgUkVDT1JEIGl0ZW1zIChlLmcuIC9ldGMvbXlhcHAvY29uZmlnLmluaSkKKyMgVE9ETyBBZGQgdGVzdHMgZnJvbSB0aGUgZm9ybWVyIHBlcDM3NiBwcm9qZWN0ICh6aXBwZWQgc2l0ZS1wYWNrYWdlcywgZXRjLikKKworCitkZWYgZ2V0X2hleGRpZ2VzdChmaWxlbmFtZSk6CisgICAgd2l0aCBvcGVuKGZpbGVuYW1lLCAncmInKSBhcyBmaWxlOgorICAgICAgICBjaGVja3N1bSA9IG1kNShmaWxlLnJlYWQoKSkKKyAgICByZXR1cm4gY2hlY2tzdW0uaGV4ZGlnZXN0KCkKKworCitkZWYgcmVjb3JkX3BpZWNlcyhwYXRoKToKKyAgICBwYXRoID0gb3MucGF0aC5qb2luKCpwYXRoKQorICAgIGRpZ2VzdCA9IGdldF9oZXhkaWdlc3QocGF0aCkKKyAgICBzaXplID0gb3MucGF0aC5nZXRzaXplKHBhdGgpCisgICAgcmV0dXJuIHBhdGgsIGRpZ2VzdCwgc2l6ZQorCisKK2NsYXNzIEZha2VEaXN0c01peGluOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihGYWtlRGlzdHNNaXhpbiwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoZW5hYmxlX2NhY2hlKQorICAgICAgICBkaXNhYmxlX2NhY2hlKCkKKworICAgICAgICAjIG1ha2UgYSBjb3B5IHRoYXQgd2UgY2FuIHdyaXRlIGludG8gZm9yIG91ciBmYWtlIGluc3RhbGxlZAorICAgICAgICAjIGRpc3RyaWJ1dGlvbnMKKyAgICAgICAgdG1wZGlyID0gdGVtcGZpbGUubWtkdGVtcCgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzaHV0aWwucm10cmVlLCB0bXBkaXIpCisgICAgICAgIHNlbGYuZmFrZV9kaXN0c19wYXRoID0gb3MucGF0aC5yZWFscGF0aCgKKyAgICAgICAgICAgIG9zLnBhdGguam9pbih0bXBkaXIsICdmYWtlX2Rpc3RzJykpCisgICAgICAgIGZha2VfZGlzdHNfc3JjID0gb3MucGF0aC5hYnNwYXRoKAorICAgICAgICAgICAgb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICdmYWtlX2Rpc3RzJykpCisgICAgICAgIHNodXRpbC5jb3B5dHJlZShmYWtlX2Rpc3RzX3NyYywgc2VsZi5mYWtlX2Rpc3RzX3BhdGgpCisgICAgICAgICMgWFhYIHVnbHkgd29ya2Fyb3VuZDogcmV2ZXJ0IGNvcHlzdGF0IGNhbGxzIGRvbmUgYnkgc2h1dGlsIGJlaGluZCBvdXIKKyAgICAgICAgIyBiYWNrICh0byBhdm9pZCBnZXR0aW5nIGEgcmVhZC1vbmx5IGNvcHkgb2YgYSByZWFkLW9ubHkgZmlsZSkuICB3ZQorICAgICAgICAjIGNvdWxkIHBhc3MgYSBjdXN0b20gY29weV9mdW5jdGlvbiB0byBjaGFuZ2UgdGhlIG1vZGUgb2YgZmlsZXMsIGJ1dAorICAgICAgICAjIHNodXRpbCBnaXZlcyBubyBjb250cm9sIG92ZXIgdGhlIG1vZGUgb2YgZGlyZWN0b3JpZXMgOigKKyAgICAgICAgIyBzZWUgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTE2NjYzMTgKKyAgICAgICAgZm9yIHJvb3QsIGRpcnMsIGZpbGVzIGluIG9zLndhbGsoc2VsZi5mYWtlX2Rpc3RzX3BhdGgpOgorICAgICAgICAgICAgb3MuY2htb2Qocm9vdCwgMG83NTUpCisgICAgICAgICAgICBmb3IgZiBpbiBmaWxlczoKKyAgICAgICAgICAgICAgICBvcy5jaG1vZChvcy5wYXRoLmpvaW4ocm9vdCwgZiksIDBvNjQ0KQorICAgICAgICAgICAgZm9yIGQgaW4gZGlyczoKKyAgICAgICAgICAgICAgICBvcy5jaG1vZChvcy5wYXRoLmpvaW4ocm9vdCwgZCksIDBvNzU1KQorCisKK2NsYXNzIENvbW1vbkRpc3RyaWJ1dGlvblRlc3RzKEZha2VEaXN0c01peGluKToKKyAgICAiIiJNaXhpbiB1c2VkIHRvIHRlc3QgdGhlIGludGVyZmFjZSBjb21tb24gdG8gYm90aCBEaXN0cmlidXRpb24gY2xhc3Nlcy4KKworICAgIERlcml2ZWQgY2xhc3NlcyBkZWZpbmUgY2xzLCBzYW1wbGVfZGlzdCwgZGlycyBhbmQgcmVjb3Jkcy4gIFRoZXNlCisgICAgYXR0cmlidXRlcyBhcmUgdXNlZCBpbiB0ZXN0IG1ldGhvZHMuICBTZWUgc291cmNlIGNvZGUgZm9yIGRldGFpbHMuCisgICAgIiIiCisKKyAgICBkZWYgdGVzdF9pbnN0YW50aWF0aW9uKHNlbGYpOgorICAgICAgICAjIGNoZWNrIHRoYXQgdXNlZnVsIGF0dHJpYnV0ZXMgYXJlIGhlcmUKKyAgICAgICAgbmFtZSwgdmVyc2lvbiwgZGlzdGRpciA9IHNlbGYuc2FtcGxlX2Rpc3QKKyAgICAgICAgaGVyZSA9IG9zLnBhdGguYWJzcGF0aChvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pKQorICAgICAgICBkaXN0X3BhdGggPSBvcy5wYXRoLmpvaW4oaGVyZSwgJ2Zha2VfZGlzdHMnLCBkaXN0ZGlyKQorCisgICAgICAgIGRpc3QgPSBzZWxmLmRpc3QgPSBzZWxmLmNscyhkaXN0X3BhdGgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5wYXRoLCBkaXN0X3BhdGgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5uYW1lLCBuYW1lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubWV0YWRhdGFbJ05hbWUnXSwgbmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGRpc3QubWV0YWRhdGEsIE1ldGFkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QudmVyc2lvbiwgdmVyc2lvbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydWZXJzaW9uJ10sIHZlcnNpb24pCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X3JlcHIoc2VsZik6CisgICAgICAgIGRpc3QgPSBzZWxmLmNscyhzZWxmLmRpcnNbMF0pCisgICAgICAgICMganVzdCBjaGVjayB0aGF0IHRoZSBjbGFzcyBuYW1lIGlzIGluIHRoZSByZXByCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VsZi5jbHMuX19uYW1lX18sIHJlcHIoZGlzdCkpCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X2NvbXBhcmlzb24oc2VsZik6CisgICAgICAgICMgdGVzdHMgZm9yIF9fZXFfXyBhbmQgX19oYXNoX18KKyAgICAgICAgZGlzdCA9IHNlbGYuY2xzKHNlbGYuZGlyc1swXSkKKyAgICAgICAgZGlzdDIgPSBzZWxmLmNscyhzZWxmLmRpcnNbMF0pCisgICAgICAgIGRpc3QzID0gc2VsZi5jbHMoc2VsZi5kaXJzWzFdKQorICAgICAgICBzZWxmLmFzc2VydEluKGRpc3QsIHtkaXN0OiBUcnVlfSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0LCBkaXN0KQorCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoZGlzdCwgZGlzdDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdCwgZGlzdDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgZGlzdDMpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgKCkpCisKKyAgICBkZWYgdGVzdF9saXN0X2luc3RhbGxlZF9maWxlcyhzZWxmKToKKyAgICAgICAgZm9yIGRpcl8gaW4gc2VsZi5kaXJzOgorICAgICAgICAgICAgZGlzdCA9IHNlbGYuY2xzKGRpcl8pCisgICAgICAgICAgICBmb3IgcGF0aCwgbWQ1Xywgc2l6ZSBpbiBkaXN0Lmxpc3RfaW5zdGFsbGVkX2ZpbGVzKCk6CisgICAgICAgICAgICAgICAgcmVjb3JkX2RhdGEgPSBzZWxmLnJlY29yZHNbZGlzdC5wYXRoXQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4ocGF0aCwgcmVjb3JkX2RhdGEpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZDVfLCByZWNvcmRfZGF0YVtwYXRoXVswXSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpemUsIHJlY29yZF9kYXRhW3BhdGhdWzFdKQorCisKK2NsYXNzIFRlc3REaXN0cmlidXRpb24oQ29tbW9uRGlzdHJpYnV0aW9uVGVzdHMsIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGNscyA9IERpc3RyaWJ1dGlvbgorICAgIHNhbXBsZV9kaXN0ID0gJ2Nob3hpZScsICcyLjAuMC45JywgJ2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mbycKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoVGVzdERpc3RyaWJ1dGlvbiwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLmRpcnMgPSBbb3MucGF0aC5qb2luKHNlbGYuZmFrZV9kaXN0c19wYXRoLCBmKQorICAgICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gb3MubGlzdGRpcihzZWxmLmZha2VfZGlzdHNfcGF0aCkKKyAgICAgICAgICAgICAgICAgICAgIGlmIGYuZW5kc3dpdGgoJy5kaXN0LWluZm8nKV0KKworICAgICAgICBzZWxmLnJlY29yZHMgPSB7fQorICAgICAgICBmb3IgZGlzdGluZm9fZGlyIGluIHNlbGYuZGlyczoKKworICAgICAgICAgICAgcmVjb3JkX2ZpbGUgPSBvcy5wYXRoLmpvaW4oZGlzdGluZm9fZGlyLCAnUkVDT1JEJykKKyAgICAgICAgICAgIHdpdGggb3BlbihyZWNvcmRfZmlsZSwgJ3cnKSBhcyBmaWxlOgorICAgICAgICAgICAgICAgIHJlY29yZF93cml0ZXIgPSBjc3Yud3JpdGVyKAorICAgICAgICAgICAgICAgICAgICBmaWxlLCBkZWxpbWl0ZXI9JywnLCBxdW90aW5nPWNzdi5RVU9URV9OT05FLAorICAgICAgICAgICAgICAgICAgICBsaW5ldGVybWluYXRvcj0nXG4nKQorCisgICAgICAgICAgICAgICAgZGlzdF9sb2NhdGlvbiA9IGRpc3RpbmZvX2Rpci5yZXBsYWNlKCcuZGlzdC1pbmZvJywgJycpCisKKyAgICAgICAgICAgICAgICBmb3IgcGF0aCwgZGlycywgZmlsZXMgaW4gb3Mud2FsayhkaXN0X2xvY2F0aW9uKToKKyAgICAgICAgICAgICAgICAgICAgZm9yIGYgaW4gZmlsZXM6CisgICAgICAgICAgICAgICAgICAgICAgICByZWNvcmRfd3JpdGVyLndyaXRlcm93KHJlY29yZF9waWVjZXMoKHBhdGgsIGYpKSkKKyAgICAgICAgICAgICAgICBmb3IgZmlsZSBpbiAoJ0lOU1RBTExFUicsICdNRVRBREFUQScsICdSRVFVRVNURUQnKToKKyAgICAgICAgICAgICAgICAgICAgcmVjb3JkX3dyaXRlci53cml0ZXJvdyhyZWNvcmRfcGllY2VzKChkaXN0aW5mb19kaXIsIGZpbGUpKSkKKyAgICAgICAgICAgICAgICByZWNvcmRfd3JpdGVyLndyaXRlcm93KFtyZWNvcmRfZmlsZV0pCisKKyAgICAgICAgICAgIHdpdGggb3BlbihyZWNvcmRfZmlsZSkgYXMgZmlsZToKKyAgICAgICAgICAgICAgICByZWNvcmRfcmVhZGVyID0gY3N2LnJlYWRlcihmaWxlLCBsaW5ldGVybWluYXRvcj0nXG4nKQorICAgICAgICAgICAgICAgIHJlY29yZF9kYXRhID0ge30KKyAgICAgICAgICAgICAgICBmb3Igcm93IGluIHJlY29yZF9yZWFkZXI6CisgICAgICAgICAgICAgICAgICAgIGlmIHJvdyA9PSBbXToKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgICAgIHBhdGgsIG1kNV8sIHNpemUgPSAocm93WzpdICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbTm9uZSBmb3IgaSBpbiByYW5nZShsZW4ocm93KSwgMyldKQorICAgICAgICAgICAgICAgICAgICByZWNvcmRfZGF0YVtwYXRoXSA9IG1kNV8sIHNpemUKKyAgICAgICAgICAgIHNlbGYucmVjb3Jkc1tkaXN0aW5mb19kaXJdID0gcmVjb3JkX2RhdGEKKworICAgIGRlZiB0ZXN0X2luc3RhbnRpYXRpb24oc2VsZik6CisgICAgICAgIHN1cGVyKFRlc3REaXN0cmlidXRpb24sIHNlbGYpLnRlc3RfaW5zdGFudGlhdGlvbigpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShzZWxmLmRpc3QucmVxdWVzdGVkLCBib29sKQorCisgICAgZGVmIHRlc3RfdXNlcyhzZWxmKToKKyAgICAgICAgIyBUZXN0IHRvIGRldGVybWluZSBpZiBhIGRpc3RyaWJ1dGlvbiB1c2VzIGEgc3BlY2lmaWVkIGZpbGUuCisgICAgICAgICMgQ3JpdGVyaWEgdG8gdGVzdCBhZ2FpbnN0CisgICAgICAgIGRpc3RpbmZvX25hbWUgPSAnZ3JhbW1hci0xLjBhNCcKKyAgICAgICAgZGlzdGluZm9fZGlyID0gb3MucGF0aC5qb2luKHNlbGYuZmFrZV9kaXN0c19wYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluZm9fbmFtZSArICcuZGlzdC1pbmZvJykKKyAgICAgICAgdHJ1ZV9wYXRoID0gW3NlbGYuZmFrZV9kaXN0c19wYXRoLCBkaXN0aW5mb19uYW1lLAorICAgICAgICAgICAgICAgICAgICAgJ2dyYW1tYXInLCAndXRpbHMucHknXQorICAgICAgICB0cnVlX3BhdGggPSBvcy5wYXRoLmpvaW4oKnRydWVfcGF0aCkKKyAgICAgICAgZmFsc2VfcGF0aCA9IFtzZWxmLmZha2VfZGlzdHNfcGF0aCwgJ3Rvd2VsX3N0dWZmLTAuMScsICd0b3dlbF9zdHVmZicsCisgICAgICAgICAgICAgICAgICAgICAgJ19faW5pdF9fLnB5J10KKyAgICAgICAgZmFsc2VfcGF0aCA9IG9zLnBhdGguam9pbigqZmFsc2VfcGF0aCkKKworICAgICAgICAjIFRlc3QgaWYgdGhlIGRpc3RyaWJ1dGlvbiB1c2VzIHRoZSBmaWxlIGluIHF1ZXN0aW9uCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oZGlzdGluZm9fZGlyKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoZGlzdC51c2VzKHRydWVfcGF0aCksICdkaXN0ICVyIGlzIHN1cHBvc2VkIHRvIHVzZSAlcicgJQorICAgICAgICAgICAgICAgICAgICAgICAgKGRpc3QsIHRydWVfcGF0aCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZGlzdC51c2VzKGZhbHNlX3BhdGgpLCAnZGlzdCAlciBpcyBub3Qgc3VwcG9zZWQgdG8gJworICAgICAgICAgICAgICAgICAgICAgICAgICd1c2UgJXInICUgKGRpc3QsIHRydWVfcGF0aCkpCisKKyAgICBkZWYgdGVzdF9nZXRfZGlzdGluZm9fZmlsZShzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoZSByZXRyaWV2YWwgb2YgZGlzdC1pbmZvIGZpbGUgb2JqZWN0cy4KKyAgICAgICAgZGlzdGluZm9fbmFtZSA9ICdjaG94aWUtMi4wLjAuOScKKyAgICAgICAgb3RoZXJfZGlzdGluZm9fbmFtZSA9ICdncmFtbWFyLTEuMGE0JworICAgICAgICBkaXN0aW5mb19kaXIgPSBvcy5wYXRoLmpvaW4oc2VsZi5mYWtlX2Rpc3RzX3BhdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5mb19uYW1lICsgJy5kaXN0LWluZm8nKQorICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKGRpc3RpbmZvX2RpcikKKyAgICAgICAgIyBUZXN0IGZvciBrbm93biBnb29kIGZpbGUgbWF0Y2hlcworICAgICAgICBkaXN0aW5mb19maWxlcyA9IFsKKyAgICAgICAgICAgICMgUmVsYXRpdmUgcGF0aHMKKyAgICAgICAgICAgICdJTlNUQUxMRVInLCAnTUVUQURBVEEnLAorICAgICAgICAgICAgIyBBYnNvbHV0ZSBwYXRocworICAgICAgICAgICAgb3MucGF0aC5qb2luKGRpc3RpbmZvX2RpciwgJ1JFQ09SRCcpLAorICAgICAgICAgICAgb3MucGF0aC5qb2luKGRpc3RpbmZvX2RpciwgJ1JFUVVFU1RFRCcpLAorICAgICAgICBdCisKKyAgICAgICAgZm9yIGRpc3RmaWxlIGluIGRpc3RpbmZvX2ZpbGVzOgorICAgICAgICAgICAgd2l0aCBkaXN0LmdldF9kaXN0aW5mb19maWxlKGRpc3RmaWxlKSBhcyB2YWx1ZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UodmFsdWUsIGlvLlRleHRJT1dyYXBwZXIpCisgICAgICAgICAgICAgICAgIyBJcyBpdCB0aGUgY29ycmVjdCBmaWxlPworICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodmFsdWUubmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbihkaXN0aW5mb19kaXIsIGRpc3RmaWxlKSkKKworICAgICAgICAjIFRlc3QgYW4gYWJzb2x1dGUgcGF0aCB0aGF0IGlzIHBhcnQgb2YgYW5vdGhlciBkaXN0cmlidXRpb25zIGRpc3QtaW5mbworICAgICAgICBvdGhlcl9kaXN0aW5mb19maWxlID0gb3MucGF0aC5qb2luKAorICAgICAgICAgICAgc2VsZi5mYWtlX2Rpc3RzX3BhdGgsIG90aGVyX2Rpc3RpbmZvX25hbWUgKyAnLmRpc3QtaW5mbycsCisgICAgICAgICAgICAnUkVRVUVTVEVEJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nRXJyb3IsIGRpc3QuZ2V0X2Rpc3RpbmZvX2ZpbGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIG90aGVyX2Rpc3RpbmZvX2ZpbGUpCisgICAgICAgICMgVGVzdCBmb3IgYSBmaWxlIHRoYXQgc2hvdWxkIG5vdCBleGlzdAorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdFcnJvciwgZGlzdC5nZXRfZGlzdGluZm9fZmlsZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ01BR0lDRklMRScpCisKKyAgICBkZWYgdGVzdF9saXN0X2Rpc3RpbmZvX2ZpbGVzKHNlbGYpOgorICAgICAgICBkaXN0aW5mb19uYW1lID0gJ3Rvd2VsX3N0dWZmLTAuMScKKyAgICAgICAgZGlzdGluZm9fZGlyID0gb3MucGF0aC5qb2luKHNlbGYuZmFrZV9kaXN0c19wYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluZm9fbmFtZSArICcuZGlzdC1pbmZvJykKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbihkaXN0aW5mb19kaXIpCisgICAgICAgICMgVGVzdCBmb3IgdGhlIGl0ZXJhdGlvbiBvZiB0aGUgcmF3IHBhdGgKKyAgICAgICAgZGlzdGluZm9fZmlsZXMgPSBbb3MucGF0aC5qb2luKGRpc3RpbmZvX2RpciwgZmlsZW5hbWUpIGZvciBmaWxlbmFtZSBpbgorICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5saXN0ZGlyKGRpc3RpbmZvX2RpcildCisgICAgICAgIGZvdW5kID0gZGlzdC5saXN0X2Rpc3RpbmZvX2ZpbGVzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoZm91bmQpLCBzb3J0ZWQoZGlzdGluZm9fZmlsZXMpKQorICAgICAgICAjIFRlc3QgZm9yIHRoZSBpdGVyYXRpb24gb2YgbG9jYWwgYWJzb2x1dGUgcGF0aHMKKyAgICAgICAgZGlzdGluZm9fZmlsZXMgPSBbb3MucGF0aC5qb2luKHN5cy5wcmVmaXgsIGRpc3RpbmZvX2RpciwgcGF0aCkgZm9yCisgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGggaW4gZGlzdGluZm9fZmlsZXNdCisgICAgICAgIGZvdW5kID0gc29ydGVkKGRpc3QubGlzdF9kaXN0aW5mb19maWxlcyhsb2NhbD1UcnVlKSkKKyAgICAgICAgaWYgb3Muc2VwICE9ICcvJzoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJy8nLCBmb3VuZFswXSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4ob3Muc2VwLCBmb3VuZFswXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3VuZCwgc29ydGVkKGRpc3RpbmZvX2ZpbGVzKSkKKworICAgIGRlZiB0ZXN0X2dldF9yZXNvdXJjZXNfcGF0aChzZWxmKToKKyAgICAgICAgZGlzdGluZm9fbmFtZSA9ICdiYWJhci0wLjEnCisgICAgICAgIGRpc3RpbmZvX2RpciA9IG9zLnBhdGguam9pbihzZWxmLmZha2VfZGlzdHNfcGF0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RpbmZvX25hbWUgKyAnLmRpc3QtaW5mbycpCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oZGlzdGluZm9fZGlyKQorICAgICAgICByZXNvdXJjZV9wYXRoID0gZGlzdC5nZXRfcmVzb3VyY2VfcGF0aCgnYmFiYXIucG5nJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNvdXJjZV9wYXRoLCAnYmFiYXIucG5nJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoS2V5RXJyb3IsIGRpc3QuZ2V0X3Jlc291cmNlX3BhdGgsICdub3RleGlzdCcpCisKKworY2xhc3MgVGVzdEVnZ0luZm9EaXN0cmlidXRpb24oQ29tbW9uRGlzdHJpYnV0aW9uVGVzdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgY2xzID0gRWdnSW5mb0Rpc3RyaWJ1dGlvbgorICAgIHNhbXBsZV9kaXN0ID0gJ2JhY29uJywgJzAuMScsICdiYWNvbi0wLjEuZWdnLWluZm8nCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFRlc3RFZ2dJbmZvRGlzdHJpYnV0aW9uLCBzZWxmKS5zZXRVcCgpCisKKyAgICAgICAgc2VsZi5kaXJzID0gW29zLnBhdGguam9pbihzZWxmLmZha2VfZGlzdHNfcGF0aCwgZikKKyAgICAgICAgICAgICAgICAgICAgIGZvciBmIGluIG9zLmxpc3RkaXIoc2VsZi5mYWtlX2Rpc3RzX3BhdGgpCisgICAgICAgICAgICAgICAgICAgICBpZiBmLmVuZHN3aXRoKCcuZWdnJykgb3IgZi5lbmRzd2l0aCgnLmVnZy1pbmZvJyldCisKKyAgICAgICAgc2VsZi5yZWNvcmRzID0ge30KKworICAgIEB1bml0dGVzdC5za2lwKCdub3QgaW1wbGVtZW50ZWQgeWV0JykKKyAgICBkZWYgdGVzdF9saXN0X2luc3RhbGxlZF9maWxlcyhzZWxmKToKKyAgICAgICAgIyBFZ2dJbmZvRGlzdHJpYnV0aW9uIGRlZmluZXMgbGlzdF9pbnN0YWxsZWRfZmlsZXMgYnV0IHRoZXJlIGlzIG5vCisgICAgICAgICMgdGVzdCBmb3IgaXQgeWV0OyBzb21lb25lIHdpdGggc2V0dXB0b29scyBleHBlcnRpc2UgbmVlZHMgdG8gYWRkIGEKKyAgICAgICAgIyBmaWxlIHdpdGggdGhlIGxpc3Qgb2YgaW5zdGFsbGVkIGZpbGVzIGZvciBvbmUgb2YgdGhlIGVnZyBmYWtlIGRpc3RzCisgICAgICAgICMgYW5kIHdyaXRlIHRoZSBzdXBwb3J0IGNvZGUgdG8gcG9wdWxhdGUgc2VsZi5yZWNvcmRzIChhbmQgdGhlbiBkZWxldGUKKyAgICAgICAgIyB0aGlzIG1ldGhvZCkKKyAgICAgICAgcGFzcworCisKK2NsYXNzIFRlc3REYXRhYmFzZShzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgIEZha2VEaXN0c01peGluLAorICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoVGVzdERhdGFiYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHN5cy5wYXRoLmluc2VydCgwLCBzZWxmLmZha2VfZGlzdHNfcGF0aCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5wYXRoLnJlbW92ZSwgc2VsZi5mYWtlX2Rpc3RzX3BhdGgpCisKKyAgICBkZWYgdGVzdF9jYWNoZXMoc2VsZik6CisgICAgICAgICMgc2FuaXR5IGNoZWNrIGZvciBpbnRlcm5hbCBjYWNoZXMKKyAgICAgICAgZm9yIG5hbWUgaW4gKCdfY2FjaGVfbmFtZScsICdfY2FjaGVfbmFtZV9lZ2cnLAorICAgICAgICAgICAgICAgICAgICAgJ19jYWNoZV9wYXRoJywgJ19jYWNoZV9wYXRoX2VnZycpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRhdHRyKHBhY2thZ2luZy5kYXRhYmFzZSwgbmFtZSksIHt9KQorCisgICAgZGVmIHRlc3RfZGlzdGluZm9fZGlybmFtZShzZWxmKToKKyAgICAgICAgIyBHaXZlbiBhIG5hbWUgYW5kIGEgdmVyc2lvbiwgd2UgZXhwZWN0IHRoZSBkaXN0aW5mb19kaXJuYW1lIGZ1bmN0aW9uCisgICAgICAgICMgdG8gcmV0dXJuIGEgc3RhbmRhcmQgZGlzdHJpYnV0aW9uIGluZm9ybWF0aW9uIGRpcmVjdG9yeSBuYW1lLgorCisgICAgICAgIGl0ZW1zID0gWworICAgICAgICAgICAgIyAobmFtZSwgdmVyc2lvbiwgc3RhbmRhcmRfZGlybmFtZSkKKyAgICAgICAgICAgICMgVGVzdCBmb3IgYSB2ZXJ5IHNpbXBsZSBzaW5nbGUgd29yZCBuYW1lIGFuZCBkZWNpbWFsIHZlcnNpb24KKyAgICAgICAgICAgICMgbnVtYmVyCisgICAgICAgICAgICAoJ2RvY3V0aWxzJywgJzAuNScsICdkb2N1dGlscy0wLjUuZGlzdC1pbmZvJyksCisgICAgICAgICAgICAjIFRlc3QgZm9yIGFub3RoZXIgZXhjZXB0IHRoaXMgdGltZSB3aXRoIGEgJy0nIGluIHRoZSBuYW1lLCB3aGljaAorICAgICAgICAgICAgIyBuZWVkcyB0byBiZSB0cmFuc2Zvcm1lZCBkdXJpbmcgdGhlIG5hbWUgbG9va3VwCisgICAgICAgICAgICAoJ3B5dGhvbi1sZGFwJywgJzIuNScsICdweXRob25fbGRhcC0yLjUuZGlzdC1pbmZvJyksCisgICAgICAgICAgICAjIFRlc3QgZm9yIGJvdGggJy0nIGluIHRoZSBuYW1lIGFuZCBhIGZ1bmt5IHZlcnNpb24gbnVtYmVyCisgICAgICAgICAgICAoJ3B5dGhvbi1sZGFwJywgJzIuNSBhLS0tNScsICdweXRob25fbGRhcC0yLjUgYS0tLTUuZGlzdC1pbmZvJyksCisgICAgICAgICAgICBdCisKKyAgICAgICAgIyBMb29wIHRocm91Z2ggdGhlIGl0ZW1zIHRvIHZhbGlkYXRlIHRoZSByZXN1bHRzCisgICAgICAgIGZvciBuYW1lLCB2ZXJzaW9uLCBzdGFuZGFyZF9kaXJuYW1lIGluIGl0ZW1zOgorICAgICAgICAgICAgZGlybmFtZSA9IGRpc3RpbmZvX2Rpcm5hbWUobmFtZSwgdmVyc2lvbikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlybmFtZSwgc3RhbmRhcmRfZGlybmFtZSkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfZ2V0X2Rpc3RyaWJ1dGlvbnMoc2VsZik6CisgICAgICAgICMgTG9va3VwIGFsbCBkaXN0cmlidXRpb25zIGZvdW5kIGluIHRoZSBgYHN5cy5wYXRoYGAuCisgICAgICAgICMgVGhpcyB0ZXN0IGNvdWxkIHBvdGVudGlhbGx5IHBpY2sgdXAgb3RoZXIgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbnMKKyAgICAgICAgZmFrZV9kaXN0cyA9IFsoJ2dyYW1tYXInLCAnMS4wYTQnKSwgKCdjaG94aWUnLCAnMi4wLjAuOScpLAorICAgICAgICAgICAgICAgICAgICAgICgndG93ZWwtc3R1ZmYnLCAnMC4xJyksICgnYmFiYXInLCAnMC4xJyldCisgICAgICAgIGZvdW5kX2Rpc3RzID0gW10KKworICAgICAgICAjIFZlcmlmeSB0aGUgZmFrZSBkaXN0cyBoYXZlIGJlZW4gZm91bmQuCisgICAgICAgIGRpc3RzID0gW2Rpc3QgZm9yIGRpc3QgaW4gZ2V0X2Rpc3RyaWJ1dGlvbnMoKV0KKyAgICAgICAgZm9yIGRpc3QgaW4gZGlzdHM6CisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZGlzdCwgRGlzdHJpYnV0aW9uKQorICAgICAgICAgICAgaWYgKGRpc3QubmFtZSBpbiBkaWN0KGZha2VfZGlzdHMpIGFuZAorICAgICAgICAgICAgICAgIGRpc3QucGF0aC5zdGFydHN3aXRoKHNlbGYuZmFrZV9kaXN0c19wYXRoKSk6CisgICAgICAgICAgICAgICAgZm91bmRfZGlzdHMuYXBwZW5kKChkaXN0Lm5hbWUsIGRpc3QudmVyc2lvbikpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICMgY2hlY2sgdGhhdCBpdCBkb2Vzbid0IGZpbmQgYW55dGhpbmcgbW9yZSB0aGFuIHRoaXMKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGRpc3QucGF0aC5zdGFydHN3aXRoKHNlbGYuZmFrZV9kaXN0c19wYXRoKSkKKyAgICAgICAgICAgICMgb3RoZXJ3aXNlIHdlIGRvbid0IGNhcmUgd2hhdCBvdGhlciBkaXN0cmlidXRpb25zIGFyZSBmb3VuZAorCisgICAgICAgICMgRmluYWxseSwgdGVzdCB0aGF0IHdlIGZvdW5kIGFsbCB0aGF0IHdlIHdlcmUgbG9va2luZyBmb3IKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoZm91bmRfZGlzdHMpLCBzb3J0ZWQoZmFrZV9kaXN0cykpCisKKyAgICAgICAgIyBOb3csIHRlc3QgaWYgdGhlIGVnZy1pbmZvIGRpc3RyaWJ1dGlvbnMgYXJlIGZvdW5kIGNvcnJlY3RseSBhcyB3ZWxsCisgICAgICAgIGZha2VfZGlzdHMgKz0gWygnYmFjb24nLCAnMC4xJyksICgnY2hlZXNlJywgJzIuMC4yJyksCisgICAgICAgICAgICAgICAgICAgICAgICgnY29jb251dHMtYXN0ZXInLCAnMTAuMycpLAorICAgICAgICAgICAgICAgICAgICAgICAoJ2JhbmFuYScsICcwLjQnKSwgKCdzdHJhd2JlcnJ5JywgJzAuNicpLAorICAgICAgICAgICAgICAgICAgICAgICAoJ3RydWZmbGVzJywgJzUuMCcpLCAoJ251dCcsICdmdW5reXZlcnNpb24nKV0KKyAgICAgICAgZm91bmRfZGlzdHMgPSBbXQorCisgICAgICAgIGRpc3RzID0gW2Rpc3QgZm9yIGRpc3QgaW4gZ2V0X2Rpc3RyaWJ1dGlvbnModXNlX2VnZ19pbmZvPVRydWUpXQorICAgICAgICBmb3IgZGlzdCBpbiBkaXN0czoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkaXN0LCAoRGlzdHJpYnV0aW9uLCBFZ2dJbmZvRGlzdHJpYnV0aW9uKSkKKyAgICAgICAgICAgIGlmIChkaXN0Lm5hbWUgaW4gZGljdChmYWtlX2Rpc3RzKSBhbmQKKyAgICAgICAgICAgICAgICBkaXN0LnBhdGguc3RhcnRzd2l0aChzZWxmLmZha2VfZGlzdHNfcGF0aCkpOgorICAgICAgICAgICAgICAgIGZvdW5kX2Rpc3RzLmFwcGVuZCgoZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24pKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGRpc3QucGF0aC5zdGFydHN3aXRoKHNlbGYuZmFrZV9kaXN0c19wYXRoKSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNvcnRlZChmYWtlX2Rpc3RzKSwgc29ydGVkKGZvdW5kX2Rpc3RzKSkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfZ2V0X2Rpc3RyaWJ1dGlvbihzZWxmKToKKyAgICAgICAgIyBUZXN0IGZvciBsb29raW5nIHVwIGEgZGlzdHJpYnV0aW9uIGJ5IG5hbWUuCisgICAgICAgICMgVGVzdCB0aGUgbG9va3VwIG9mIHRoZSB0b3dlbC1zdHVmZiBkaXN0cmlidXRpb24KKyAgICAgICAgbmFtZSA9ICd0b3dlbC1zdHVmZicgICMgTm90ZTogVGhpcyBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgZGlyZWN0b3J5IG5hbWUKKworICAgICAgICAjIExvb2t1cCB0aGUgZGlzdHJpYnV0aW9uCisgICAgICAgIGRpc3QgPSBnZXRfZGlzdHJpYnV0aW9uKG5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkaXN0LCBEaXN0cmlidXRpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdC5uYW1lLCBuYW1lKQorCisgICAgICAgICMgVmVyaWZ5IHRoYXQgYW4gdW5rbm93biBkaXN0cmlidXRpb24gcmV0dXJucyBOb25lCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGdldF9kaXN0cmlidXRpb24oJ2JvZ3VzJykpCisKKyAgICAgICAgIyBWZXJpZnkgcGFydGlhbCBuYW1lIG1hdGNoaW5nIGRvZXNuJ3Qgd29yaworICAgICAgICBzZWxmLmFzc2VydElzTm9uZShnZXRfZGlzdHJpYnV0aW9uKCd0b3dlbCcpKQorCisgICAgICAgICMgVmVyaWZ5IHRoYXQgaXQgZG9lcyBub3QgZmluZCBlZ2ctaW5mbyBkaXN0cmlidXRpb25zLCB3aGVuIG5vdAorICAgICAgICAjIGluc3RydWN0ZWQgdG8KKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZ2V0X2Rpc3RyaWJ1dGlvbignYmFjb24nKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZ2V0X2Rpc3RyaWJ1dGlvbignY2hlZXNlJykpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGdldF9kaXN0cmlidXRpb24oJ3N0cmF3YmVycnknKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZ2V0X2Rpc3RyaWJ1dGlvbignYmFuYW5hJykpCisKKyAgICAgICAgIyBOb3cgY2hlY2sgdGhhdCBpdCB3b3JrcyB3ZWxsIGluIGJvdGggc2l0dWF0aW9ucywgd2hlbiBlZ2ctaW5mbworICAgICAgICAjIGlzIGEgZmlsZSBhbmQgZGlyZWN0b3J5IHJlc3BlY3RpdmVseS4KKyAgICAgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24oJ2NoZWVzZScsIHVzZV9lZ2dfaW5mbz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZGlzdCwgRWdnSW5mb0Rpc3RyaWJ1dGlvbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm5hbWUsICdjaGVlc2UnKQorCisgICAgICAgIGRpc3QgPSBnZXRfZGlzdHJpYnV0aW9uKCdiYWNvbicsIHVzZV9lZ2dfaW5mbz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZGlzdCwgRWdnSW5mb0Rpc3RyaWJ1dGlvbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm5hbWUsICdiYWNvbicpCisKKyAgICAgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24oJ2JhbmFuYScsIHVzZV9lZ2dfaW5mbz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZGlzdCwgRWdnSW5mb0Rpc3RyaWJ1dGlvbikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm5hbWUsICdiYW5hbmEnKQorCisgICAgICAgIGRpc3QgPSBnZXRfZGlzdHJpYnV0aW9uKCdzdHJhd2JlcnJ5JywgdXNlX2VnZ19pbmZvPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkaXN0LCBFZ2dJbmZvRGlzdHJpYnV0aW9uKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubmFtZSwgJ3N0cmF3YmVycnknKQorCisgICAgZGVmIHRlc3RfZ2V0X2ZpbGVfdXNlcnMoc2VsZik6CisgICAgICAgICMgVGVzdCB0aGUgaXRlcmF0aW9uIG9mIGRpc3RyaWJ1dGlvbnMgdGhhdCB1c2UgYSBmaWxlLgorICAgICAgICBuYW1lID0gJ3Rvd2VsX3N0dWZmLTAuMScKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLmZha2VfZGlzdHNfcGF0aCwgbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAndG93ZWxfc3R1ZmYnLCAnX19pbml0X18ucHknKQorICAgICAgICBmb3IgZGlzdCBpbiBnZXRfZmlsZV91c2VycyhwYXRoKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkaXN0LCBEaXN0cmlidXRpb24pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpc3QubmFtZSwgbmFtZSkKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfcHJvdmlkZXMoc2VsZik6CisgICAgICAgICMgVGVzdCBmb3IgbG9va2luZyB1cCBkaXN0cmlidXRpb25zIGJ5IHdoYXQgdGhleSBwcm92aWRlCisgICAgICAgIGNoZWNrTGlzdHMgPSBsYW1iZGEgeCwgeTogc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoeCksIHNvcnRlZCh5KSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBwcm92aWRlc19kaXN0cmlidXRpb24oJ3RydWZmbGVzJyldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWydjaG94aWUnLCAndG93ZWwtc3R1ZmYnXSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBwcm92aWRlc19kaXN0cmlidXRpb24oJ3RydWZmbGVzJywgJzEuMCcpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY2hveGllJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsICcxLjAnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX2VnZ19pbmZvPVRydWUpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY2hveGllJywgJ2NoZWVzZSddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnMS4xLjInKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ3Rvd2VsLXN0dWZmJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsICcxLjEnKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ3Rvd2VsLXN0dWZmJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnIT0xLjEsPD0yLjAnKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ2Nob3hpZSddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyE9MS4xLDw9Mi4wJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfZWdnX2luZm89VHJ1ZSldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWydjaG94aWUnLCAnYmFjb24nLCAnY2hlZXNlJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsICc+MS4wJyldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWyd0b3dlbC1zdHVmZiddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnPjEuNScpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFtdKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnPjEuNScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfZWdnX2luZm89VHJ1ZSldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWydiYWNvbiddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnPj0xLjAnKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ2Nob3hpZScsICd0b3dlbC1zdHVmZiddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIHByb3ZpZGVzX2Rpc3RyaWJ1dGlvbignc3RyYXdiZXJyeScsICcwLjYnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX2VnZ19pbmZvPVRydWUpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY29jb251dHMtYXN0ZXInXSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBwcm92aWRlc19kaXN0cmlidXRpb24oJ3N0cmF3YmVycnknLCAnPj0wLjUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX2VnZ19pbmZvPVRydWUpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY29jb251dHMtYXN0ZXInXSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBwcm92aWRlc19kaXN0cmlidXRpb24oJ3N0cmF3YmVycnknLCAnPjAuNicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfZWdnX2luZm89VHJ1ZSldCisgICAgICAgIGNoZWNrTGlzdHMobCwgW10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCdiYW5hbmEnLCAnMC40JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZV9lZ2dfaW5mbz1UcnVlKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ2NvY29udXRzLWFzdGVyJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gcHJvdmlkZXNfZGlzdHJpYnV0aW9uKCdiYW5hbmEnLCAnPj0wLjMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX2VnZ19pbmZvPVRydWUpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY29jb251dHMtYXN0ZXInXSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBwcm92aWRlc19kaXN0cmlidXRpb24oJ2JhbmFuYScsICchPTAuNCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfZWdnX2luZm89VHJ1ZSldCisgICAgICAgIGNoZWNrTGlzdHMobCwgW10pCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X29ic29sZXRlcyhzZWxmKToKKyAgICAgICAgIyBUZXN0IGxvb2tpbmcgZm9yIGRpc3RyaWJ1dGlvbnMgYmFzZWQgb24gd2hhdCB0aGV5IG9ic29sZXRlCisgICAgICAgIGNoZWNrTGlzdHMgPSBsYW1iZGEgeCwgeTogc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoeCksIHNvcnRlZCh5KSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBvYnNvbGV0ZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsICcxLjAnKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbXSkKKworICAgICAgICBsID0gW2Rpc3QubmFtZSBmb3IgZGlzdCBpbiBvYnNvbGV0ZXNfZGlzdHJpYnV0aW9uKCd0cnVmZmxlcycsICcxLjAnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZV9lZ2dfaW5mbz1UcnVlKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ2NoZWVzZScsICdiYWNvbiddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIG9ic29sZXRlc19kaXN0cmlidXRpb24oJ3RydWZmbGVzJywgJzAuOCcpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY2hveGllJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnMC44JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfZWdnX2luZm89VHJ1ZSldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWydjaG94aWUnLCAnY2hlZXNlJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnMC45LjYnKV0KKyAgICAgICAgY2hlY2tMaXN0cyhsLCBbJ2Nob3hpZScsICd0b3dlbC1zdHVmZiddKQorCisgICAgICAgIGwgPSBbZGlzdC5uYW1lIGZvciBkaXN0IGluIG9ic29sZXRlc19kaXN0cmlidXRpb24oJ3RydWZmbGVzJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnMC41LjIuMycpXQorICAgICAgICBjaGVja0xpc3RzKGwsIFsnY2hveGllJywgJ3Rvd2VsLXN0dWZmJ10pCisKKyAgICAgICAgbCA9IFtkaXN0Lm5hbWUgZm9yIGRpc3QgaW4gb2Jzb2xldGVzX2Rpc3RyaWJ1dGlvbigndHJ1ZmZsZXMnLCAnMC4yJyldCisgICAgICAgIGNoZWNrTGlzdHMobCwgWyd0b3dlbC1zdHVmZiddKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF95aWVsZF9kaXN0cmlidXRpb24oc2VsZik6CisgICAgICAgICMgdGVzdHMgdGhlIGludGVybmFsIGZ1bmN0aW9uIF95aWVsZF9kaXN0cmlidXRpb25zCisgICAgICAgIGNoZWNrTGlzdHMgPSBsYW1iZGEgeCwgeTogc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoeCksIHNvcnRlZCh5KSkKKworICAgICAgICBlZ2dzID0gWygnYmFjb24nLCAnMC4xJyksICgnYmFuYW5hJywgJzAuNCcpLCAoJ3N0cmF3YmVycnknLCAnMC42JyksCisgICAgICAgICAgICAgICAgKCd0cnVmZmxlcycsICc1LjAnKSwgKCdjaGVlc2UnLCAnMi4wLjInKSwKKyAgICAgICAgICAgICAgICAoJ2NvY29udXRzLWFzdGVyJywgJzEwLjMnKSwgKCdudXQnLCAnZnVua3l2ZXJzaW9uJyldCisgICAgICAgIGRpc3RzID0gWygnY2hveGllJywgJzIuMC4wLjknKSwgKCdncmFtbWFyJywgJzEuMGE0JyksCisgICAgICAgICAgICAgICAgICgndG93ZWwtc3R1ZmYnLCAnMC4xJyksICgnYmFiYXInLCAnMC4xJyldCisKKyAgICAgICAgY2hlY2tMaXN0cyhbXSwgX3lpZWxkX2Rpc3RyaWJ1dGlvbnMoRmFsc2UsIEZhbHNlLCBzeXMucGF0aCkpCisKKyAgICAgICAgZm91bmQgPSBbKGRpc3QubmFtZSwgZGlzdC52ZXJzaW9uKQorICAgICAgICAgICAgICAgICBmb3IgZGlzdCBpbiBfeWllbGRfZGlzdHJpYnV0aW9ucyhGYWxzZSwgVHJ1ZSwgc3lzLnBhdGgpCisgICAgICAgICAgICAgICAgIGlmIGRpc3QucGF0aC5zdGFydHN3aXRoKHNlbGYuZmFrZV9kaXN0c19wYXRoKV0KKyAgICAgICAgY2hlY2tMaXN0cyhlZ2dzLCBmb3VuZCkKKworICAgICAgICBmb3VuZCA9IFsoZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24pCisgICAgICAgICAgICAgICAgIGZvciBkaXN0IGluIF95aWVsZF9kaXN0cmlidXRpb25zKFRydWUsIEZhbHNlLCBzeXMucGF0aCkKKyAgICAgICAgICAgICAgICAgaWYgZGlzdC5wYXRoLnN0YXJ0c3dpdGgoc2VsZi5mYWtlX2Rpc3RzX3BhdGgpXQorICAgICAgICBjaGVja0xpc3RzKGRpc3RzLCBmb3VuZCkKKworICAgICAgICBmb3VuZCA9IFsoZGlzdC5uYW1lLCBkaXN0LnZlcnNpb24pCisgICAgICAgICAgICAgICAgIGZvciBkaXN0IGluIF95aWVsZF9kaXN0cmlidXRpb25zKFRydWUsIFRydWUsIHN5cy5wYXRoKQorICAgICAgICAgICAgICAgICBpZiBkaXN0LnBhdGguc3RhcnRzd2l0aChzZWxmLmZha2VfZGlzdHNfcGF0aCldCisgICAgICAgIGNoZWNrTGlzdHMoZGlzdHMgKyBlZ2dzLCBmb3VuZCkKKworCitjbGFzcyBEYXRhRmlsZXNUZXN0Q2FzZShHbG9iVGVzdENhc2VCYXNlKToKKworICAgIGRlZiBhc3NlcnRSdWxlc01hdGNoKHNlbGYsIHJ1bGVzLCBzcGVjKToKKyAgICAgICAgdGVtcGRpciA9IHNlbGYuYnVpbGRfZmlsZXNfdHJlZShzcGVjKQorICAgICAgICBleHBlY3RlZCA9IHNlbGYuY2xlYW5fdHJlZShzcGVjKQorICAgICAgICByZXN1bHQgPSBnZXRfcmVzb3VyY2VzX2Rlc3RzKHRlbXBkaXIsIHJ1bGVzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCByZXN1bHQpCisKKyAgICBkZWYgY2xlYW5fdHJlZShzZWxmLCBzcGVjKToKKyAgICAgICAgZmlsZXMgPSB7fQorICAgICAgICBmb3IgcGF0aCwgdmFsdWUgaW4gc3BlYy5pdGVtcygpOgorICAgICAgICAgICAgaWYgdmFsdWUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgZmlsZXNbcGF0aF0gPSB2YWx1ZQorICAgICAgICByZXR1cm4gZmlsZXMKKworICAgIGRlZiB0ZXN0X3NpbXBsZV9nbG9iKHNlbGYpOgorICAgICAgICBydWxlcyA9IFsoJycsICcqLnRwbCcsICd7ZGF0YX0nKV0KKyAgICAgICAgc3BlYyA9IHsnY291Y291LnRwbCc6ICd7ZGF0YX0vY291Y291LnRwbCcsCisgICAgICAgICAgICAgICAgJ0Rvbm90d2FudCc6IE5vbmV9CisgICAgICAgIHNlbGYuYXNzZXJ0UnVsZXNNYXRjaChydWxlcywgc3BlYykKKworICAgIGRlZiB0ZXN0X211bHRpcGxlX21hdGNoKHNlbGYpOgorICAgICAgICBydWxlcyA9IFsoJ3NjcmlwdHMnLCAnKi5iaW4nLCAne2FwcGRhdGF9JyksCisgICAgICAgICAgICAgICAgICgnc2NyaXB0cycsICcqJywgJ3thcHBzY3JpcHR9JyldCisgICAgICAgIHNwZWMgPSB7J3NjcmlwdHMvc2NyaXB0LmJpbic6ICd7YXBwc2NyaXB0fS9zY3JpcHQuYmluJywKKyAgICAgICAgICAgICAgICAnQmFiYXJsaWtlc3RyYXdiZXJyeSc6IE5vbmV9CisgICAgICAgIHNlbGYuYXNzZXJ0UnVsZXNNYXRjaChydWxlcywgc3BlYykKKworICAgIGRlZiB0ZXN0X3NldF9tYXRjaChzZWxmKToKKyAgICAgICAgcnVsZXMgPSBbKCdzY3JpcHRzJywgJyoue2JpbixzaH0nLCAne2FwcHNjcmlwdH0nKV0KKyAgICAgICAgc3BlYyA9IHsnc2NyaXB0cy9zY3JpcHQuYmluJzogJ3thcHBzY3JpcHR9L3NjcmlwdC5iaW4nLAorICAgICAgICAgICAgICAgICdzY3JpcHRzL2JhYmFyLnNoJzogICd7YXBwc2NyaXB0fS9iYWJhci5zaCcsCisgICAgICAgICAgICAgICAgJ0JhYmFybGlrZXN0cmF3YmVycnknOiBOb25lfQorICAgICAgICBzZWxmLmFzc2VydFJ1bGVzTWF0Y2gocnVsZXMsIHNwZWMpCisKKyAgICBkZWYgdGVzdF9zZXRfbWF0Y2hfbXVsdGlwbGUoc2VsZik6CisgICAgICAgIHJ1bGVzID0gWygnc2NyaXB0cycsICdzY3JpcHR7cyx9LntiaW4sc2h9JywgJ3thcHBzY3JpcHR9JyldCisgICAgICAgIHNwZWMgPSB7J3NjcmlwdHMvc2NyaXB0cy5iaW4nOiAne2FwcHNjcmlwdH0vc2NyaXB0cy5iaW4nLAorICAgICAgICAgICAgICAgICdzY3JpcHRzL3NjcmlwdC5zaCc6ICAne2FwcHNjcmlwdH0vc2NyaXB0LnNoJywKKyAgICAgICAgICAgICAgICAnQmFiYXJsaWtlc3RyYXdiZXJyeSc6IE5vbmV9CisgICAgICAgIHNlbGYuYXNzZXJ0UnVsZXNNYXRjaChydWxlcywgc3BlYykKKworICAgIGRlZiB0ZXN0X3NldF9tYXRjaF9leGNsdWRlKHNlbGYpOgorICAgICAgICBydWxlcyA9IFsoJ3NjcmlwdHMnLCAnKicsICd7YXBwc2NyaXB0fScpLAorICAgICAgICAgICAgICAgICAoJycsIG9zLnBhdGguam9pbignKionLCAnKi5zaCcpLCBOb25lKV0KKyAgICAgICAgc3BlYyA9IHsnc2NyaXB0cy9zY3JpcHRzLmJpbic6ICd7YXBwc2NyaXB0fS9zY3JpcHRzLmJpbicsCisgICAgICAgICAgICAgICAgJ3NjcmlwdHMvc2NyaXB0LnNoJzogIE5vbmUsCisgICAgICAgICAgICAgICAgJ0JhYmFybGlrZXN0cmF3YmVycnknOiBOb25lfQorICAgICAgICBzZWxmLmFzc2VydFJ1bGVzTWF0Y2gocnVsZXMsIHNwZWMpCisKKyAgICBkZWYgdGVzdF9nbG9iX2luX2Jhc2Uoc2VsZik6CisgICAgICAgIHJ1bGVzID0gWygnc2NyaXAqJywgJyouYmluJywgJ3thcHBzY3JpcHR9JyldCisgICAgICAgIHNwZWMgPSB7J3NjcmlwdHMvc2NyaXB0cy5iaW4nOiAne2FwcHNjcmlwdH0vc2NyaXB0cy5iaW4nLAorICAgICAgICAgICAgICAgICdzY3JpcG91aWxsZS9iYWJhci5iaW4nOiAne2FwcHNjcmlwdH0vYmFiYXIuYmluJywKKyAgICAgICAgICAgICAgICAnc2NyaXB0b3J0dS9sb3R1cy5iaW4nOiAne2FwcHNjcmlwdH0vbG90dXMuYmluJywKKyAgICAgICAgICAgICAgICAnQmFiYXJsaWtlc3RyYXdiZXJyeSc6IE5vbmV9CisgICAgICAgIHNlbGYuYXNzZXJ0UnVsZXNNYXRjaChydWxlcywgc3BlYykKKworICAgIGRlZiB0ZXN0X3JlY3Vyc2l2ZV9nbG9iKHNlbGYpOgorICAgICAgICBydWxlcyA9IFsoJycsIG9zLnBhdGguam9pbignKionLCAnKi5iaW4nKSwgJ3tiaW5hcnl9JyldCisgICAgICAgIHNwZWMgPSB7J2JpbmFyeTAuYmluJzogJ3tiaW5hcnl9L2JpbmFyeTAuYmluJywKKyAgICAgICAgICAgICAgICAnc2NyaXB0cy9iaW5hcnkxLmJpbic6ICd7YmluYXJ5fS9zY3JpcHRzL2JpbmFyeTEuYmluJywKKyAgICAgICAgICAgICAgICAnc2NyaXB0cy9iaW4vYmluYXJ5Mi5iaW4nOiAne2JpbmFyeX0vc2NyaXB0cy9iaW4vYmluYXJ5Mi5iaW4nLAorICAgICAgICAgICAgICAgICd5b3Uva2lsbC9wYW5kYWJlYXIuZ3V5JzogTm9uZX0KKyAgICAgICAgc2VsZi5hc3NlcnRSdWxlc01hdGNoKHJ1bGVzLCBzcGVjKQorCisgICAgZGVmIHRlc3RfZmluYWxfZXhlbXBsZV9nbG9iKHNlbGYpOgorICAgICAgICBydWxlcyA9IFsKKyAgICAgICAgICAgICgnbWFpbG1hbi9kYXRhYmFzZS9zY2hlbWFzLycsICcqJywgJ3thcHBkYXRhfS9zY2hlbWFzJyksCisgICAgICAgICAgICAoJycsIG9zLnBhdGguam9pbignKionLCAnKi50cGwnKSwgJ3thcHBkYXRhfS90ZW1wbGF0ZXMnKSwKKyAgICAgICAgICAgICgnJywgb3MucGF0aC5qb2luKCdkZXZlbG9wZXItZG9jcycsICcqKicsICcqLnR4dCcpLCAne2RvY30nKSwKKyAgICAgICAgICAgICgnJywgJ1JFQURNRScsICd7ZG9jfScpLAorICAgICAgICAgICAgKCdtYWlsbWFuL2V0Yy8nLCAnKicsICd7Y29uZmlnfScpLAorICAgICAgICAgICAgKCdtYWlsbWFuL2Zvby8nLCBvcy5wYXRoLmpvaW4oJyoqJywgJ2JhcicsICcqLmNmZycpLAorICAgICAgICAgICAgICd7Y29uZmlnfS9iYXonKSwKKyAgICAgICAgICAgICgnbWFpbG1hbi9mb28vJywgb3MucGF0aC5qb2luKCcqKicsICcqLmNmZycpLCAne2NvbmZpZ30vaG1tJyksCisgICAgICAgICAgICAoJycsICdzb21lLW5ldy1zZW1hbnRpYy5zbnMnLCAne2Z1bmt5LWNyYXp5LWNhdGVnb3J5fScpLAorICAgICAgICBdCisgICAgICAgIHNwZWMgPSB7CisgICAgICAgICAgICAnUkVBRE1FJzogJ3tkb2N9L1JFQURNRScsCisgICAgICAgICAgICAnc29tZS50cGwnOiAne2FwcGRhdGF9L3RlbXBsYXRlcy9zb21lLnRwbCcsCisgICAgICAgICAgICAnc29tZS1uZXctc2VtYW50aWMuc25zJzoKKyAgICAgICAgICAgICAgICAne2Z1bmt5LWNyYXp5LWNhdGVnb3J5fS9zb21lLW5ldy1zZW1hbnRpYy5zbnMnLAorICAgICAgICAgICAgJ21haWxtYW4vZGF0YWJhc2UvbWFpbG1hbi5kYic6IE5vbmUsCisgICAgICAgICAgICAnbWFpbG1hbi9kYXRhYmFzZS9zY2hlbWFzL2JsYWguc2NoZW1hJzoKKyAgICAgICAgICAgICAgICAne2FwcGRhdGF9L3NjaGVtYXMvYmxhaC5zY2hlbWEnLAorICAgICAgICAgICAgJ21haWxtYW4vZXRjL215LmNuZic6ICd7Y29uZmlnfS9teS5jbmYnLAorICAgICAgICAgICAgJ21haWxtYW4vZm9vL3NvbWUvcGF0aC9iYXIvbXkuY2ZnJzoKKyAgICAgICAgICAgICAgICAne2NvbmZpZ30vaG1tL3NvbWUvcGF0aC9iYXIvbXkuY2ZnJywKKyAgICAgICAgICAgICdtYWlsbWFuL2Zvby9zb21lL3BhdGgvb3RoZXIuY2ZnJzoKKyAgICAgICAgICAgICAgICAne2NvbmZpZ30vaG1tL3NvbWUvcGF0aC9vdGhlci5jZmcnLAorICAgICAgICAgICAgJ2RldmVsb3Blci1kb2NzL2luZGV4LnR4dCc6ICd7ZG9jfS9kZXZlbG9wZXItZG9jcy9pbmRleC50eHQnLAorICAgICAgICAgICAgJ2RldmVsb3Blci1kb2NzL2FwaS90b2MudHh0JzogJ3tkb2N9L2RldmVsb3Blci1kb2NzL2FwaS90b2MudHh0JywKKyAgICAgICAgfQorICAgICAgICBzZWxmLm1heERpZmYgPSBOb25lCisgICAgICAgIHNlbGYuYXNzZXJ0UnVsZXNNYXRjaChydWxlcywgc3BlYykKKworICAgIGRlZiB0ZXN0X2dldF9maWxlKHNlbGYpOgorICAgICAgICAjIENyZWF0ZSBhIGZha2UgZGlzdAorICAgICAgICB0ZW1wX3NpdGVfcGFja2FnZXMgPSB0ZW1wZmlsZS5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNodXRpbC5ybXRyZWUsIHRlbXBfc2l0ZV9wYWNrYWdlcykKKworICAgICAgICBkaXN0X25hbWUgPSAndGVzdCcKKyAgICAgICAgZGlzdF9pbmZvID0gb3MucGF0aC5qb2luKHRlbXBfc2l0ZV9wYWNrYWdlcywgJ3Rlc3QtMC4xLmRpc3QtaW5mbycpCisgICAgICAgIG9zLm1rZGlyKGRpc3RfaW5mbykKKworICAgICAgICBtZXRhZGF0YV9wYXRoID0gb3MucGF0aC5qb2luKGRpc3RfaW5mbywgJ01FVEFEQVRBJykKKyAgICAgICAgcmVzb3VyY2VzX3BhdGggPSBvcy5wYXRoLmpvaW4oZGlzdF9pbmZvLCAnUkVTT1VSQ0VTJykKKworICAgICAgICB3aXRoIG9wZW4obWV0YWRhdGFfcGF0aCwgJ3cnKSBhcyBmcDoKKyAgICAgICAgICAgIGZwLndyaXRlKGRlZGVudCgiIiJcCisgICAgICAgICAgICAgICAgTWV0YWRhdGEtVmVyc2lvbjogMS4yCisgICAgICAgICAgICAgICAgTmFtZTogdGVzdAorICAgICAgICAgICAgICAgIFZlcnNpb246IDAuMQorICAgICAgICAgICAgICAgIFN1bW1hcnk6IHRlc3QKKyAgICAgICAgICAgICAgICBBdXRob3I6IG1lCisgICAgICAgICAgICAgICAgIiIiKSkKKworICAgICAgICB0ZXN0X3BhdGggPSAndGVzdC5jZmcnCisKKyAgICAgICAgZmQsIHRlc3RfcmVzb3VyY2VfcGF0aCA9IHRlbXBmaWxlLm1rc3RlbXAoKQorICAgICAgICBvcy5jbG9zZShmZCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG9zLnJlbW92ZSwgdGVzdF9yZXNvdXJjZV9wYXRoKQorCisgICAgICAgIHdpdGggb3Blbih0ZXN0X3Jlc291cmNlX3BhdGgsICd3JykgYXMgZnA6CisgICAgICAgICAgICBmcC53cml0ZSgnQ29uZmlnJykKKworICAgICAgICB3aXRoIG9wZW4ocmVzb3VyY2VzX3BhdGgsICd3JykgYXMgZnA6CisgICAgICAgICAgICBmcC53cml0ZSgnJXMsJXMnICUgKHRlc3RfcGF0aCwgdGVzdF9yZXNvdXJjZV9wYXRoKSkKKworICAgICAgICAjIEFkZCBmYWtlIHNpdGUtcGFja2FnZXMgdG8gc3lzLnBhdGggdG8gcmV0cmlldmUgZmFrZSBkaXN0CisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzeXMucGF0aC5yZW1vdmUsIHRlbXBfc2l0ZV9wYWNrYWdlcykKKyAgICAgICAgc3lzLnBhdGguaW5zZXJ0KDAsIHRlbXBfc2l0ZV9wYWNrYWdlcykKKworICAgICAgICAjIEZvcmNlIHBhY2thZ2luZy5kYXRhYmFzZSB0byByZXNjYW4gdGhlIHN5cy5wYXRoCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChlbmFibGVfY2FjaGUpCisgICAgICAgIGRpc2FibGVfY2FjaGUoKQorCisgICAgICAgICMgVHJ5IHRvIHJldHJpZXZlIHJlc291cmNlcyBwYXRocyBhbmQgZmlsZXMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRfZmlsZV9wYXRoKGRpc3RfbmFtZSwgdGVzdF9wYXRoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X3Jlc291cmNlX3BhdGgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEtleUVycm9yLCBnZXRfZmlsZV9wYXRoLCBkaXN0X25hbWUsICdpLWRvbnQtZXhpc3QnKQorCisgICAgICAgIHdpdGggZ2V0X2ZpbGUoZGlzdF9uYW1lLCB0ZXN0X3BhdGgpIGFzIGZwOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmcC5yZWFkKCksICdDb25maWcnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhLZXlFcnJvciwgZ2V0X2ZpbGUsIGRpc3RfbmFtZSwgJ2ktZG9udC1leGlzdCcpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICBzdWl0ZSA9IHVuaXR0ZXN0LlRlc3RTdWl0ZSgpCisgICAgbG9hZCA9IHVuaXR0ZXN0LmRlZmF1bHRUZXN0TG9hZGVyLmxvYWRUZXN0c0Zyb21UZXN0Q2FzZQorICAgIHN1aXRlLmFkZFRlc3QobG9hZChUZXN0RGlzdHJpYnV0aW9uKSkKKyAgICBzdWl0ZS5hZGRUZXN0KGxvYWQoVGVzdEVnZ0luZm9EaXN0cmlidXRpb24pKQorICAgIHN1aXRlLmFkZFRlc3QobG9hZChUZXN0RGF0YWJhc2UpKQorICAgIHN1aXRlLmFkZFRlc3QobG9hZChEYXRhRmlsZXNUZXN0Q2FzZSkpCisgICAgcmV0dXJuIHN1aXRlCisKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9kZXBncmFwaC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9kZXBncmFwaC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ODMzMzAyCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2RlcGdyYXBoLnB5CkBAIC0wLDAgKzEsMzEwIEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmRlcGdyYXBoICIiIgoraW1wb3J0IG9zCitpbXBvcnQgcmUKK2ltcG9ydCBzeXMKK2Zyb20gaW8gaW1wb3J0IFN0cmluZ0lPCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBkZXBncmFwaAorZnJvbSBwYWNrYWdpbmcuZGF0YWJhc2UgaW1wb3J0IGdldF9kaXN0cmlidXRpb24sIGVuYWJsZV9jYWNoZSwgZGlzYWJsZV9jYWNoZQorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IHJlcXVpcmVzX3psaWIKKworCitjbGFzcyBEZXBHcmFwaFRlc3RDYXNlKHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIERJU1RST1NfRElTVCA9ICgnY2hveGllJywgJ2dyYW1tYXInLCAndG93ZWwtc3R1ZmYnKQorICAgIERJU1RST1NfRUdHID0gKCdiYWNvbicsICdiYW5hbmEnLCAnc3RyYXdiZXJyeScsICdjaGVlc2UnKQorICAgIEJBRF9FR0dTID0gKCdudXQnLCkKKworICAgIEVER0UgPSByZS5jb21waWxlKAorICAgICAgICAgICByJyIoP1A8ZnJvbT4uKikiIC0+ICIoP1A8dG8+LiopIiBcW2xhYmVsPSIoP1A8bGFiZWw+LiopIlxdJykKKworICAgIGRlZiBjaGVja0xpc3RzKHNlbGYsIGwxLCBsMik6CisgICAgICAgICIiIiBDb21wYXJlIHR3byBsaXN0cyB3aXRob3V0IHRha2luZyB0aGUgb3JkZXIgaW50byBjb25zaWRlcmF0aW9uICIiIgorICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChzb3J0ZWQobDEpLCBzb3J0ZWQobDIpKQorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihEZXBHcmFwaFRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgJ2Zha2VfZGlzdHMnKQorICAgICAgICBwYXRoID0gb3MucGF0aC5hYnNwYXRoKHBhdGgpCisgICAgICAgIHN5cy5wYXRoLmluc2VydCgwLCBwYXRoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnBhdGgucmVtb3ZlLCBwYXRoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoZW5hYmxlX2NhY2hlKQorICAgICAgICBkaXNhYmxlX2NhY2hlKCkKKworICAgIGRlZiB0ZXN0X2dlbmVyYXRlX2dyYXBoKHNlbGYpOgorICAgICAgICBkaXN0cyA9IFtdCisgICAgICAgIGZvciBuYW1lIGluIHNlbGYuRElTVFJPU19ESVNUOgorICAgICAgICAgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24obmFtZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgTm9uZSkKKyAgICAgICAgICAgIGRpc3RzLmFwcGVuZChkaXN0KQorCisgICAgICAgIGNob3hpZSwgZ3JhbW1hciwgdG93ZWwgPSBkaXN0cworCisgICAgICAgIGdyYXBoID0gZGVwZ3JhcGguZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisKKyAgICAgICAgZGVwcyA9IFsoeC5uYW1lLCB5KSBmb3IgeCwgeSBpbiBncmFwaC5hZGphY2VuY3lfbGlzdFtjaG94aWVdXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoWygndG93ZWwtc3R1ZmYnLCAndG93ZWwtc3R1ZmYgKDAuMSknKV0sIGRlcHMpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oY2hveGllLCBncmFwaC5yZXZlcnNlX2xpc3RbdG93ZWxdKQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoZ3JhcGgubWlzc2luZ1tjaG94aWVdLCBbJ251dCddKQorCisgICAgICAgIGRlcHMgPSBbKHgubmFtZSwgeSkgZm9yIHgsIHkgaW4gZ3JhcGguYWRqYWNlbmN5X2xpc3RbZ3JhbW1hcl1dCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhbXSwgZGVwcykKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKGdyYXBoLm1pc3NpbmdbZ3JhbW1hcl0sIFsndHJ1ZmZsZXMgKD49MS4yKSddKQorCisgICAgICAgIGRlcHMgPSBbKHgubmFtZSwgeSkgZm9yIHgsIHkgaW4gZ3JhcGguYWRqYWNlbmN5X2xpc3RbdG93ZWxdXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoW10sIGRlcHMpCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhncmFwaC5taXNzaW5nW3Rvd2VsXSwgWydiYWNvbiAoPD0wLjIpJ10pCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X2dlbmVyYXRlX2dyYXBoX2VnZyhzZWxmKToKKyAgICAgICAgZGlzdHMgPSBbXQorICAgICAgICBmb3IgbmFtZSBpbiBzZWxmLkRJU1RST1NfRElTVCArIHNlbGYuRElTVFJPU19FR0c6CisgICAgICAgICAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lLCB1c2VfZWdnX2luZm89VHJ1ZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgTm9uZSkKKyAgICAgICAgICAgIGRpc3RzLmFwcGVuZChkaXN0KQorCisgICAgICAgIGNob3hpZSwgZ3JhbW1hciwgdG93ZWwsIGJhY29uLCBiYW5hbmEsIHN0cmF3YmVycnksIGNoZWVzZSA9IGRpc3RzCisKKyAgICAgICAgZ3JhcGggPSBkZXBncmFwaC5nZW5lcmF0ZV9ncmFwaChkaXN0cykKKworICAgICAgICBkZXBzID0gWyh4Lm5hbWUsIHkpIGZvciB4LCB5IGluIGdyYXBoLmFkamFjZW5jeV9saXN0W2Nob3hpZV1dCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhbKCd0b3dlbC1zdHVmZicsICd0b3dlbC1zdHVmZiAoMC4xKScpXSwgZGVwcykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihjaG94aWUsIGdyYXBoLnJldmVyc2VfbGlzdFt0b3dlbF0pCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhncmFwaC5taXNzaW5nW2Nob3hpZV0sIFsnbnV0J10pCisKKyAgICAgICAgZGVwcyA9IFsoeC5uYW1lLCB5KSBmb3IgeCwgeSBpbiBncmFwaC5hZGphY2VuY3lfbGlzdFtncmFtbWFyXV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFsoJ2JhY29uJywgJ3RydWZmbGVzICg+PTEuMiknKV0sIGRlcHMpCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhncmFwaC5taXNzaW5nW2dyYW1tYXJdLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihncmFtbWFyLCBncmFwaC5yZXZlcnNlX2xpc3RbYmFjb25dKQorCisgICAgICAgIGRlcHMgPSBbKHgubmFtZSwgeSkgZm9yIHgsIHkgaW4gZ3JhcGguYWRqYWNlbmN5X2xpc3RbdG93ZWxdXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoWygnYmFjb24nLCAnYmFjb24gKDw9MC4yKScpXSwgZGVwcykKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKGdyYXBoLm1pc3NpbmdbdG93ZWxdLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbih0b3dlbCwgZ3JhcGgucmV2ZXJzZV9saXN0W2JhY29uXSkKKworICAgICAgICBkZXBzID0gWyh4Lm5hbWUsIHkpIGZvciB4LCB5IGluIGdyYXBoLmFkamFjZW5jeV9saXN0W2JhY29uXV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFtdLCBkZXBzKQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoZ3JhcGgubWlzc2luZ1tiYWNvbl0sIFtdKQorCisgICAgICAgIGRlcHMgPSBbKHgubmFtZSwgeSkgZm9yIHgsIHkgaW4gZ3JhcGguYWRqYWNlbmN5X2xpc3RbYmFuYW5hXV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFsoJ3N0cmF3YmVycnknLCAnc3RyYXdiZXJyeSAoPj0wLjUpJyldLCBkZXBzKQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoZ3JhcGgubWlzc2luZ1tiYW5hbmFdLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihiYW5hbmEsIGdyYXBoLnJldmVyc2VfbGlzdFtzdHJhd2JlcnJ5XSkKKworICAgICAgICBkZXBzID0gWyh4Lm5hbWUsIHkpIGZvciB4LCB5IGluIGdyYXBoLmFkamFjZW5jeV9saXN0W3N0cmF3YmVycnldXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoW10sIGRlcHMpCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhncmFwaC5taXNzaW5nW3N0cmF3YmVycnldLCBbXSkKKworICAgICAgICBkZXBzID0gWyh4Lm5hbWUsIHkpIGZvciB4LCB5IGluIGdyYXBoLmFkamFjZW5jeV9saXN0W2NoZWVzZV1dCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhbXSwgZGVwcykKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKGdyYXBoLm1pc3NpbmdbY2hlZXNlXSwgW10pCisKKyAgICBkZWYgdGVzdF9kZXBlbmRlbnRfZGlzdHMoc2VsZik6CisgICAgICAgIGRpc3RzID0gW10KKyAgICAgICAgZm9yIG5hbWUgaW4gc2VsZi5ESVNUUk9TX0RJU1Q6CisgICAgICAgICAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChkaXN0LCBOb25lKQorICAgICAgICAgICAgZGlzdHMuYXBwZW5kKGRpc3QpCisKKyAgICAgICAgY2hveGllLCBncmFtbWFyLCB0b3dlbCA9IGRpc3RzCisKKyAgICAgICAgZGVwcyA9IFtkLm5hbWUgZm9yIGQgaW4gZGVwZ3JhcGguZGVwZW5kZW50X2Rpc3RzKGRpc3RzLCBjaG94aWUpXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoW10sIGRlcHMpCisKKyAgICAgICAgZGVwcyA9IFtkLm5hbWUgZm9yIGQgaW4gZGVwZ3JhcGguZGVwZW5kZW50X2Rpc3RzKGRpc3RzLCBncmFtbWFyKV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFtdLCBkZXBzKQorCisgICAgICAgIGRlcHMgPSBbZC5uYW1lIGZvciBkIGluIGRlcGdyYXBoLmRlcGVuZGVudF9kaXN0cyhkaXN0cywgdG93ZWwpXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoWydjaG94aWUnXSwgZGVwcykKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfZGVwZW5kZW50X2Rpc3RzX2VnZyhzZWxmKToKKyAgICAgICAgZGlzdHMgPSBbXQorICAgICAgICBmb3IgbmFtZSBpbiBzZWxmLkRJU1RST1NfRElTVCArIHNlbGYuRElTVFJPU19FR0c6CisgICAgICAgICAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lLCB1c2VfZWdnX2luZm89VHJ1ZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgTm9uZSkKKyAgICAgICAgICAgIGRpc3RzLmFwcGVuZChkaXN0KQorCisgICAgICAgIGNob3hpZSwgZ3JhbW1hciwgdG93ZWwsIGJhY29uLCBiYW5hbmEsIHN0cmF3YmVycnksIGNoZWVzZSA9IGRpc3RzCisKKyAgICAgICAgZGVwcyA9IFtkLm5hbWUgZm9yIGQgaW4gZGVwZ3JhcGguZGVwZW5kZW50X2Rpc3RzKGRpc3RzLCBjaG94aWUpXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoW10sIGRlcHMpCisKKyAgICAgICAgZGVwcyA9IFtkLm5hbWUgZm9yIGQgaW4gZGVwZ3JhcGguZGVwZW5kZW50X2Rpc3RzKGRpc3RzLCBncmFtbWFyKV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFtdLCBkZXBzKQorCisgICAgICAgIGRlcHMgPSBbZC5uYW1lIGZvciBkIGluIGRlcGdyYXBoLmRlcGVuZGVudF9kaXN0cyhkaXN0cywgdG93ZWwpXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoWydjaG94aWUnXSwgZGVwcykKKworICAgICAgICBkZXBzID0gW2QubmFtZSBmb3IgZCBpbiBkZXBncmFwaC5kZXBlbmRlbnRfZGlzdHMoZGlzdHMsIGJhY29uKV0KKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKFsnY2hveGllJywgJ3Rvd2VsLXN0dWZmJywgJ2dyYW1tYXInXSwgZGVwcykKKworICAgICAgICBkZXBzID0gW2QubmFtZSBmb3IgZCBpbiBkZXBncmFwaC5kZXBlbmRlbnRfZGlzdHMoZGlzdHMsIHN0cmF3YmVycnkpXQorICAgICAgICBzZWxmLmNoZWNrTGlzdHMoWydiYW5hbmEnXSwgZGVwcykKKworICAgICAgICBkZXBzID0gW2QubmFtZSBmb3IgZCBpbiBkZXBncmFwaC5kZXBlbmRlbnRfZGlzdHMoZGlzdHMsIGNoZWVzZSldCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhbXSwgZGVwcykKKworICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3RfZ3JhcGhfdG9fZG90KHNlbGYpOgorICAgICAgICBleHBlY3RlZCA9ICgKKyAgICAgICAgICAgICgndG93ZWwtc3R1ZmYnLCAnYmFjb24nLCAnYmFjb24gKDw9MC4yKScpLAorICAgICAgICAgICAgKCdncmFtbWFyJywgJ2JhY29uJywgJ3RydWZmbGVzICg+PTEuMiknKSwKKyAgICAgICAgICAgICgnY2hveGllJywgJ3Rvd2VsLXN0dWZmJywgJ3Rvd2VsLXN0dWZmICgwLjEpJyksCisgICAgICAgICAgICAoJ2JhbmFuYScsICdzdHJhd2JlcnJ5JywgJ3N0cmF3YmVycnkgKD49MC41KScpLAorICAgICAgICApCisKKyAgICAgICAgZGlzdHMgPSBbXQorICAgICAgICBmb3IgbmFtZSBpbiBzZWxmLkRJU1RST1NfRElTVCArIHNlbGYuRElTVFJPU19FR0c6CisgICAgICAgICAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lLCB1c2VfZWdnX2luZm89VHJ1ZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgTm9uZSkKKyAgICAgICAgICAgIGRpc3RzLmFwcGVuZChkaXN0KQorCisgICAgICAgIGdyYXBoID0gZGVwZ3JhcGguZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisgICAgICAgIGJ1ZiA9IFN0cmluZ0lPKCkKKyAgICAgICAgZGVwZ3JhcGguZ3JhcGhfdG9fZG90KGdyYXBoLCBidWYpCisgICAgICAgIGJ1Zi5zZWVrKDApCisgICAgICAgIG1hdGNoZXMgPSBbXQorICAgICAgICBsaW5lcyA9IGJ1Zi5yZWFkbGluZXMoKQorICAgICAgICBmb3IgbGluZSBpbiBsaW5lc1sxOi0xXTogICMgc2tpcCB0aGUgZmlyc3QgYW5kIHRoZSBsYXN0IGxpbmVzCisgICAgICAgICAgICBpZiBsaW5lWy0xXSA9PSAnXG4nOgorICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lWzotMV0KKyAgICAgICAgICAgIG1hdGNoID0gc2VsZi5FREdFLm1hdGNoKGxpbmUuc3RyaXAoKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QobWF0Y2gsIE5vbmUpCisgICAgICAgICAgICBtYXRjaGVzLmFwcGVuZChtYXRjaC5ncm91cHMoKSkKKworICAgICAgICBzZWxmLmNoZWNrTGlzdHMobWF0Y2hlcywgZXhwZWN0ZWQpCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X2dyYXBoX2Rpc2Nvbm5lY3RlZF90b19kb3Qoc2VsZik6CisgICAgICAgIGRlcGVuZGVuY2llc19leHBlY3RlZCA9ICgKKyAgICAgICAgICAgICgndG93ZWwtc3R1ZmYnLCAnYmFjb24nLCAnYmFjb24gKDw9MC4yKScpLAorICAgICAgICAgICAgKCdncmFtbWFyJywgJ2JhY29uJywgJ3RydWZmbGVzICg+PTEuMiknKSwKKyAgICAgICAgICAgICgnY2hveGllJywgJ3Rvd2VsLXN0dWZmJywgJ3Rvd2VsLXN0dWZmICgwLjEpJyksCisgICAgICAgICAgICAoJ2JhbmFuYScsICdzdHJhd2JlcnJ5JywgJ3N0cmF3YmVycnkgKD49MC41KScpLAorICAgICAgICApCisgICAgICAgIGRpc2Nvbm5lY3RlZF9leHBlY3RlZCA9ICgnY2hlZXNlJywgJ2JhY29uJywgJ3N0cmF3YmVycnknKQorCisgICAgICAgIGRpc3RzID0gW10KKyAgICAgICAgZm9yIG5hbWUgaW4gc2VsZi5ESVNUUk9TX0RJU1QgKyBzZWxmLkRJU1RST1NfRUdHOgorICAgICAgICAgICAgZGlzdCA9IGdldF9kaXN0cmlidXRpb24obmFtZSwgdXNlX2VnZ19pbmZvPVRydWUpCisgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGRpc3QsIE5vbmUpCisgICAgICAgICAgICBkaXN0cy5hcHBlbmQoZGlzdCkKKworICAgICAgICBncmFwaCA9IGRlcGdyYXBoLmdlbmVyYXRlX2dyYXBoKGRpc3RzKQorICAgICAgICBidWYgPSBTdHJpbmdJTygpCisgICAgICAgIGRlcGdyYXBoLmdyYXBoX3RvX2RvdChncmFwaCwgYnVmLCBza2lwX2Rpc2Nvbm5lY3RlZD1GYWxzZSkKKyAgICAgICAgYnVmLnNlZWsoMCkKKyAgICAgICAgbGluZXMgPSBidWYucmVhZGxpbmVzKCkKKworICAgICAgICBkZXBlbmRlbmNpZXNfbGluZXMgPSBbXQorICAgICAgICBkaXNjb25uZWN0ZWRfbGluZXMgPSBbXQorCisgICAgICAgICMgRmlyc3Qgc29ydCBvdXRwdXQgbGluZXMgaW50byBkZXBlbmRlbmNpZXMgYW5kIGRpc2Nvbm5lY3RlZCBsaW5lcy4KKyAgICAgICAgIyBXZSBhbHNvIHNraXAgdGhlIGF0dHJpYnV0ZSBsaW5lcywgYW5kIGRvbid0IGluY2x1ZGUgdGhlICJ7IiBhbmQgIn0iCisgICAgICAgICMgbGluZXMuCisgICAgICAgIGRpc2Nvbm5lY3RlZF9hY3RpdmUgPSBGYWxzZQorICAgICAgICBmb3IgbGluZSBpbiBsaW5lc1sxOi0xXTogICMgU2tpcCBmaXJzdCBhbmQgbGFzdCBsaW5lCisgICAgICAgICAgICBpZiBsaW5lLnN0YXJ0c3dpdGgoJ3N1YmdyYXBoIGRpc2Nvbm5lY3RlZCcpOgorICAgICAgICAgICAgICAgIGRpc2Nvbm5lY3RlZF9hY3RpdmUgPSBUcnVlCisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGlmIGxpbmUuc3RhcnRzd2l0aCgnfScpIGFuZCBkaXNjb25uZWN0ZWRfYWN0aXZlOgorICAgICAgICAgICAgICAgIGRpc2Nvbm5lY3RlZF9hY3RpdmUgPSBGYWxzZQorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgIGlmIGRpc2Nvbm5lY3RlZF9hY3RpdmU6CisgICAgICAgICAgICAgICAgIyBTa2lwIHRoZSAnbGFiZWwgPSAiRGlzY29ubmVjdGVkIicsIGV0Yy4gYXR0cmlidXRlIGxpbmVzLgorICAgICAgICAgICAgICAgIGlmICcgPSAnIG5vdCBpbiBsaW5lOgorICAgICAgICAgICAgICAgICAgICBkaXNjb25uZWN0ZWRfbGluZXMuYXBwZW5kKGxpbmUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llc19saW5lcy5hcHBlbmQobGluZSkKKworICAgICAgICBkZXBlbmRlbmNpZXNfbWF0Y2hlcyA9IFtdCisgICAgICAgIGZvciBsaW5lIGluIGRlcGVuZGVuY2llc19saW5lczoKKyAgICAgICAgICAgIGlmIGxpbmVbLTFdID09ICdcbic6CisgICAgICAgICAgICAgICAgbGluZSA9IGxpbmVbOi0xXQorICAgICAgICAgICAgbWF0Y2ggPSBzZWxmLkVER0UubWF0Y2gobGluZS5zdHJpcCgpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vdChtYXRjaCwgTm9uZSkKKyAgICAgICAgICAgIGRlcGVuZGVuY2llc19tYXRjaGVzLmFwcGVuZChtYXRjaC5ncm91cHMoKSkKKworICAgICAgICBkaXNjb25uZWN0ZWRfbWF0Y2hlcyA9IFtdCisgICAgICAgIGZvciBsaW5lIGluIGRpc2Nvbm5lY3RlZF9saW5lczoKKyAgICAgICAgICAgIGlmIGxpbmVbLTFdID09ICdcbic6CisgICAgICAgICAgICAgICAgbGluZSA9IGxpbmVbOi0xXQorICAgICAgICAgICAgbGluZSA9IGxpbmUuc3RyaXAoJyInKQorICAgICAgICAgICAgZGlzY29ubmVjdGVkX21hdGNoZXMuYXBwZW5kKGxpbmUpCisKKyAgICAgICAgc2VsZi5jaGVja0xpc3RzKGRlcGVuZGVuY2llc19tYXRjaGVzLCBkZXBlbmRlbmNpZXNfZXhwZWN0ZWQpCisgICAgICAgIHNlbGYuY2hlY2tMaXN0cyhkaXNjb25uZWN0ZWRfbWF0Y2hlcywgZGlzY29ubmVjdGVkX2V4cGVjdGVkKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF9ncmFwaF9iYWRfdmVyc2lvbl90b19kb3Qoc2VsZik6CisgICAgICAgIGV4cGVjdGVkID0gKAorICAgICAgICAgICAgKCd0b3dlbC1zdHVmZicsICdiYWNvbicsICdiYWNvbiAoPD0wLjIpJyksCisgICAgICAgICAgICAoJ2dyYW1tYXInLCAnYmFjb24nLCAndHJ1ZmZsZXMgKD49MS4yKScpLAorICAgICAgICAgICAgKCdjaG94aWUnLCAndG93ZWwtc3R1ZmYnLCAndG93ZWwtc3R1ZmYgKDAuMSknKSwKKyAgICAgICAgICAgICgnYmFuYW5hJywgJ3N0cmF3YmVycnknLCAnc3RyYXdiZXJyeSAoPj0wLjUpJyksCisgICAgICAgICkKKworICAgICAgICBkaXN0cyA9IFtdCisgICAgICAgIGZvciBuYW1lIGluIHNlbGYuRElTVFJPU19ESVNUICsgc2VsZi5ESVNUUk9TX0VHRyArIHNlbGYuQkFEX0VHR1M6CisgICAgICAgICAgICBkaXN0ID0gZ2V0X2Rpc3RyaWJ1dGlvbihuYW1lLCB1c2VfZWdnX2luZm89VHJ1ZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoZGlzdCwgTm9uZSkKKyAgICAgICAgICAgIGRpc3RzLmFwcGVuZChkaXN0KQorCisgICAgICAgIGdyYXBoID0gZGVwZ3JhcGguZ2VuZXJhdGVfZ3JhcGgoZGlzdHMpCisgICAgICAgIGJ1ZiA9IFN0cmluZ0lPKCkKKyAgICAgICAgZGVwZ3JhcGguZ3JhcGhfdG9fZG90KGdyYXBoLCBidWYpCisgICAgICAgIGJ1Zi5zZWVrKDApCisgICAgICAgIG1hdGNoZXMgPSBbXQorICAgICAgICBsaW5lcyA9IGJ1Zi5yZWFkbGluZXMoKQorICAgICAgICBmb3IgbGluZSBpbiBsaW5lc1sxOi0xXTogICMgc2tpcCB0aGUgZmlyc3QgYW5kIHRoZSBsYXN0IGxpbmVzCisgICAgICAgICAgICBpZiBsaW5lWy0xXSA9PSAnXG4nOgorICAgICAgICAgICAgICAgIGxpbmUgPSBsaW5lWzotMV0KKyAgICAgICAgICAgIG1hdGNoID0gc2VsZi5FREdFLm1hdGNoKGxpbmUuc3RyaXAoKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QobWF0Y2gsIE5vbmUpCisgICAgICAgICAgICBtYXRjaGVzLmFwcGVuZChtYXRjaC5ncm91cHMoKSkKKworICAgICAgICBzZWxmLmNoZWNrTGlzdHMobWF0Y2hlcywgZXhwZWN0ZWQpCisKKyAgICBAcmVxdWlyZXNfemxpYgorICAgIGRlZiB0ZXN0X3JlcHIoc2VsZik6CisgICAgICAgIGRpc3RzID0gW10KKyAgICAgICAgZm9yIG5hbWUgaW4gc2VsZi5ESVNUUk9TX0RJU1QgKyBzZWxmLkRJU1RST1NfRUdHICsgc2VsZi5CQURfRUdHUzoKKyAgICAgICAgICAgIGRpc3QgPSBnZXRfZGlzdHJpYnV0aW9uKG5hbWUsIHVzZV9lZ2dfaW5mbz1UcnVlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChkaXN0LCBOb25lKQorICAgICAgICAgICAgZGlzdHMuYXBwZW5kKGRpc3QpCisKKyAgICAgICAgZ3JhcGggPSBkZXBncmFwaC5nZW5lcmF0ZV9ncmFwaChkaXN0cykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlcHIoZ3JhcGgpKQorCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF9tYWluKHNlbGYpOgorICAgICAgICB0ZW1wb3V0ID0gU3RyaW5nSU8oKQorICAgICAgICBvbGQgPSBzeXMuc3Rkb3V0CisgICAgICAgIHN5cy5zdGRvdXQgPSB0ZW1wb3V0CisgICAgICAgIG9sZGFyZ3YgPSBzeXMuYXJndls6XQorICAgICAgICBzeXMuYXJndls6XSA9IFsnc2NyaXB0LnB5J10KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGRlcGdyYXBoLm1haW4oKQorICAgICAgICAgICAgZXhjZXB0IFN5c3RlbUV4aXQ6CisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc3lzLnN0ZG91dCA9IG9sZAorICAgICAgICAgICAgc3lzLmFyZ3ZbOl0gPSBvbGRhcmd2CisKKyAgICAgICAgIyBjaGVja3Mgd2hhdCBtYWluIGRpZCBYWFggY291bGQgZG8gbW9yZSBoZXJlCisgICAgICAgIHRlbXBvdXQuc2VlaygwKQorICAgICAgICByZXMgPSB0ZW1wb3V0LnJlYWQoKQorICAgICAgICBzZWxmLmFzc2VydEluKCd0b3dlbCcsIHJlcykKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoRGVwR3JhcGhUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9kaXN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X2Rpc3QucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDYyMzk5MAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9kaXN0LnB5CkBAIC0wLDAgKzEsMjY0IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmRpc3QuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0ZXh0d3JhcAorCitpbXBvcnQgcGFja2FnaW5nLmRpc3QKKworZnJvbSBwYWNrYWdpbmcuZGlzdCBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy5jb21tYW5kLmNtZCBpbXBvcnQgQ29tbWFuZAorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdNb2R1bGVFcnJvciwgUGFja2FnaW5nT3B0aW9uRXJyb3IKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCBzdXBwb3J0LCB1bml0dGVzdAorZnJvbSBwYWNrYWdpbmcudGVzdHMuc3VwcG9ydCBpbXBvcnQgY3JlYXRlX2Rpc3RyaWJ1dGlvbiwgdXNlX2NvbW1hbmQKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCB1bmxvYWQKKworCitjbGFzcyB0ZXN0X2Rpc3QoQ29tbWFuZCk6CisgICAgIiIiQ3VzdG9tIGNvbW1hbmQgdXNlZCBmb3IgdGVzdGluZy4iIiIKKworICAgIHVzZXJfb3B0aW9ucyA9IFsKKyAgICAgICAgKCdzYW1wbGUtb3B0aW9uPScsICdTJywKKyAgICAgICAgICJoZWxwIHRleHQiKSwKKyAgICAgICAgXQorCisgICAgZGVmIGluaXRpYWxpemVfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgc2VsZi5zYW1wbGVfb3B0aW9uID0gTm9uZQorICAgICAgICBzZWxmLl9yZWNvcmQgPSBbXQorCisgICAgZGVmIGZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGlmIHNlbGYuc2FtcGxlX29wdGlvbiBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5zYW1wbGVfb3B0aW9uID0gJ2RlZmF1bHQgdmFsdWUnCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBzZWxmLl9yZWNvcmQuYXBwZW5kKCd0ZXN0X2Rpc3QgaGFzIHJ1bicpCisKKworY2xhc3MgRGlzdHJpYnV0aW9uVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkVudmlyb25SZXN0b3JlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnSE9NRScsICdQTEFUJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoRGlzdHJpYnV0aW9uVGVzdENhc2UsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgIyBYWFggdGhpcyBpcyB1Z2x5LCB3ZSBzaG91bGQgZml4IHRoZSBmdW5jdGlvbnMgdG8gYWNjZXB0IGFyZ3MKKyAgICAgICAgIyAoZGVmYXVsdGluZyB0byBzeXMuYXJndikKKyAgICAgICAgc2VsZi5hcmd2ID0gc3lzLmFyZ3YsIHN5cy5hcmd2WzpdCisgICAgICAgIGRlbCBzeXMuYXJndlsxOl0KKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc3lzLmFyZ3YgPSBzZWxmLmFyZ3ZbMF0KKyAgICAgICAgc3lzLmFyZ3ZbOl0gPSBzZWxmLmFyZ3ZbMV0KKyAgICAgICAgc3VwZXIoRGlzdHJpYnV0aW9uVGVzdENhc2UsIHNlbGYpLnRlYXJEb3duKCkKKworICAgIEB1bml0dGVzdC5za2lwKCduZWVkcyB0byBiZSB1cGRhdGVkJykKKyAgICBkZWYgdGVzdF9kZWJ1Z19tb2RlKHNlbGYpOgorICAgICAgICB0bXBkaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZXR1cGNmZyA9IG9zLnBhdGguam9pbih0bXBkaXIsICdzZXR1cC5jZmcnKQorICAgICAgICB3aXRoIG9wZW4oc2V0dXBjZmcsICJ3IikgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoIltnbG9iYWxdXG4iKQorICAgICAgICAgICAgZi53cml0ZSgiY29tbWFuZF9wYWNrYWdlcyA9IGZvby5iYXIsIHNwbGF0IikKKworICAgICAgICBmaWxlcyA9IFtzZXR1cGNmZ10KKyAgICAgICAgc3lzLmFyZ3YuYXBwZW5kKCJidWlsZCIpCisgICAgICAgIF9fLCBzdGRvdXQgPSBjYXB0dXJlZF9zdGRvdXQoY3JlYXRlX2Rpc3RyaWJ1dGlvbiwgZmlsZXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3Rkb3V0LCAnJykKKyAgICAgICAgIyBYWFggZGVidWcgbW9kZSBkb2VzIG5vdCBleGlzdCBhbnltb3JlLCB0ZXN0IGxvZ2dpbmcgbGV2ZWxzIGluIHRoaXMKKyAgICAgICAgIyB0ZXN0IGluc3RlYWQKKyAgICAgICAgcGFja2FnaW5nLmRpc3QuREVCVUcgPSBUcnVlCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIF9fLCBzdGRvdXQgPSBjYXB0dXJlZF9zdGRvdXQoY3JlYXRlX2Rpc3RyaWJ1dGlvbiwgZmlsZXMpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0ZG91dCwgJycpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBwYWNrYWdpbmcuZGlzdC5ERUJVRyA9IEZhbHNlCisKKyAgICBkZWYgdGVzdF9iYWRfYXR0cihzZWxmKToKKyAgICAgICAgRGlzdHJpYnV0aW9uKGF0dHJzPXsnYXV0aG9yJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ25hbWUnOiAneHh4JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmVyc2lvbic6ICcxLjInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICdob21lX3BhZ2UnOiAneHh4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JhZG9wdG5hbWUnOiAneHh4J30pCisgICAgICAgIGxvZ3MgPSBzZWxmLmdldF9sb2dzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obG9ncyksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3Vua25vd24gYXJndW1lbnQnLCBsb2dzWzBdKQorCisgICAgZGVmIHRlc3RfZW1wdHlfb3B0aW9ucyhzZWxmKToKKyAgICAgICAgIyBhbiBlbXB0eSBvcHRpb25zIGRpY3Rpb25hcnkgc2hvdWxkIG5vdCBzdGF5IGluIHRoZQorICAgICAgICAjIGxpc3Qgb2YgYXR0cmlidXRlcworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKGF0dHJzPXsnYXV0aG9yJzogJ3h4eCcsICduYW1lJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMicsICdob21lX3BhZ2UnOiAneHh4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcHRpb25zJzoge319KQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5nZXRfbG9ncygpLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignb3B0aW9ucycsIGRpcihkaXN0KSkKKworICAgIGRlZiB0ZXN0X25vbl9lbXB0eV9vcHRpb25zKHNlbGYpOgorICAgICAgICAjIFRPRE86IGhvdyB0byBhY3R1YWxseSB1c2Ugb3B0aW9ucyBpcyBub3QgZG9jdW1lbnRlZCBleGNlcHQKKyAgICAgICAgIyBmb3IgYSBmZXcgY3J5cHRpYyBjb21tZW50cyBpbiBkaXN0LnB5LiAgSWYgdGhpcyBpcyB0byBzdGF5CisgICAgICAgICMgaW4gdGhlIHB1YmxpYyBBUEksIGl0IGRlc2VydmVzIHNvbWUgYmV0dGVyIGRvY3VtZW50YXRpb24uCisKKyAgICAgICAgIyBIZXJlIGlzIGFuIGV4YW1wbGUgb2YgaG93IGl0J3MgdXNlZCBvdXQgdGhlcmU6CisgICAgICAgICMgaHR0cDovL3N2bi5weXRob25tYWMub3JnL3B5MmFwcC9weTJhcHAvdHJ1bmsvZG9jLworICAgICAgICAjIGluZGV4Lmh0bWwjc3BlY2lmeWluZy1jdXN0b21pemF0aW9ucworICAgICAgICBkaXN0ID0gRGlzdHJpYnV0aW9uKGF0dHJzPXsnYXV0aG9yJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICduYW1lJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdob21lX3BhZ2UnOiAneHh4eCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcHRpb25zJzogeydzZGlzdCc6IHsnb3duZXInOiAncm9vdCd9fX0pCisKKyAgICAgICAgc2VsZi5hc3NlcnRJbignb3duZXInLCBkaXN0LmdldF9vcHRpb25fZGljdCgnc2Rpc3QnKSkKKworICAgIGRlZiB0ZXN0X2ZpbmFsaXplX29wdGlvbnMoc2VsZik6CisgICAgICAgIGF0dHJzID0geydrZXl3b3Jkcyc6ICdvbmUsdHdvJywKKyAgICAgICAgICAgICAgICAgJ3BsYXRmb3JtJzogJ29uZSx0d28nfQorCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oYXR0cnM9YXR0cnMpCisgICAgICAgIGRpc3QuZmluYWxpemVfb3B0aW9ucygpCisKKyAgICAgICAgIyBmaW5hbGl6ZV9vcHRpb24gc3BsaXRzIHBsYXRmb3JtcyBhbmQga2V5d29yZHMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydwbGF0Zm9ybSddLCBbJ29uZScsICd0d28nXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0Lm1ldGFkYXRhWydrZXl3b3JkcyddLCBbJ29uZScsICd0d28nXSkKKworICAgIGRlZiB0ZXN0X2N1c3RvbV9weWRpc3R1dGlscyhzZWxmKToKKyAgICAgICAgIyBCdWcgIzIxNjY6ICBtYWtlIHN1cmUgcHlkaXN0dXRpbHMuY2ZnIGlzIGZvdW5kCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKKyAgICAgICAgICAgIHVzZXJfZmlsZW5hbWUgPSAiLnB5ZGlzdHV0aWxzLmNmZyIKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHVzZXJfZmlsZW5hbWUgPSAicHlkaXN0dXRpbHMuY2ZnIgorCisgICAgICAgIHRlbXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgdXNlcl9maWxlbmFtZSA9IG9zLnBhdGguam9pbih0ZW1wX2RpciwgdXNlcl9maWxlbmFtZSkKKyAgICAgICAgd2l0aCBvcGVuKHVzZXJfZmlsZW5hbWUsICd3JykgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoJy4nKQorCisgICAgICAgIGRpc3QgPSBEaXN0cmlidXRpb24oKQorCisgICAgICAgIG9zLmVudmlyb25bJ0hPTUUnXSA9IHRlbXBfZGlyCisgICAgICAgIGZpbGVzID0gZGlzdC5maW5kX2NvbmZpZ19maWxlcygpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4odXNlcl9maWxlbmFtZSwgZmlsZXMpCisKKyAgICBkZWYgdGVzdF9maW5kX2NvbmZpZ19maWxlc19kaXNhYmxlKHNlbGYpOgorICAgICAgICAjIEJ1ZyAjMTE4MDogQWxsb3cgdXNlcnMgdG8gZGlzYWJsZSB0aGVpciBvd24gY29uZmlnIGZpbGUuCisgICAgICAgIHRlbXBfaG9tZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKKyAgICAgICAgICAgIHVzZXJfZmlsZW5hbWUgPSBvcy5wYXRoLmpvaW4odGVtcF9ob21lLCAiLnB5ZGlzdHV0aWxzLmNmZyIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB1c2VyX2ZpbGVuYW1lID0gb3MucGF0aC5qb2luKHRlbXBfaG9tZSwgInB5ZGlzdHV0aWxzLmNmZyIpCisKKyAgICAgICAgd2l0aCBvcGVuKHVzZXJfZmlsZW5hbWUsICd3JykgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoJ1tkaXN0dXRpbHMyXVxuJykKKworICAgICAgICBkZWYgX2V4cGFuZGVyKHBhdGgpOgorICAgICAgICAgICAgcmV0dXJuIHRlbXBfaG9tZQorCisgICAgICAgIG9sZF9leHBhbmRlciA9IG9zLnBhdGguZXhwYW5kdXNlcgorICAgICAgICBvcy5wYXRoLmV4cGFuZHVzZXIgPSBfZXhwYW5kZXIKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZCA9IHBhY2thZ2luZy5kaXN0LkRpc3RyaWJ1dGlvbigpCisgICAgICAgICAgICBhbGxfZmlsZXMgPSBkLmZpbmRfY29uZmlnX2ZpbGVzKCkKKworICAgICAgICAgICAgZCA9IHBhY2thZ2luZy5kaXN0LkRpc3RyaWJ1dGlvbihhdHRycz17J3NjcmlwdF9hcmdzJzoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsnLS1uby11c2VyLWNmZyddfSkKKyAgICAgICAgICAgIGZpbGVzID0gZC5maW5kX2NvbmZpZ19maWxlcygpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5wYXRoLmV4cGFuZHVzZXIgPSBvbGRfZXhwYW5kZXIKKworICAgICAgICAjIG1ha2Ugc3VyZSAtLW5vLXVzZXItY2ZnIGRpc2FibGVzIHRoZSB1c2VyIGNmZyBmaWxlCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKGxlbihhbGxfZmlsZXMpIC0gMSksIGxlbihmaWxlcykpCisKKyAgICBkZWYgdGVzdF9zcGVjaWFsX2hvb2tzX3BhcnNpbmcoc2VsZik6CisgICAgICAgIHRlbXBfaG9tZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGNvbmZpZ19maWxlcyA9IFtvcy5wYXRoLmpvaW4odGVtcF9ob21lLCAiY29uZmlnMS5jZmciKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbih0ZW1wX2hvbWUsICJjb25maWcyLmNmZyIpXQorCisgICAgICAgICMgU3RvcmUgdHdvIGFsaWFzZWQgaG9va3MgaW4gY29uZmlnIGZpbGVzCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgodGVtcF9ob21lLCAiY29uZmlnMS5jZmciKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICdbdGVzdF9kaXN0XVxucHJlLWhvb2suYSA9IHR5cGUnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHRlbXBfaG9tZSwgImNvbmZpZzIuY2ZnIiksCisgICAgICAgICAgICAgICAgICAgICAgICAnW3Rlc3RfZGlzdF1cbnByZS1ob29rLmIgPSB0eXBlJykKKworICAgICAgICB1c2VfY29tbWFuZChzZWxmLCAncGFja2FnaW5nLnRlc3RzLnRlc3RfZGlzdC50ZXN0X2Rpc3QnKQorCisgICAgICAgIGRpc3QgPSBjcmVhdGVfZGlzdHJpYnV0aW9uKGNvbmZpZ19maWxlcykKKyAgICAgICAgY21kID0gZGlzdC5nZXRfY29tbWFuZF9vYmooInRlc3RfZGlzdCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21kLnByZV9ob29rLCB7ImEiOiAndHlwZScsICJiIjogJ3R5cGUnfSkKKworICAgIGRlZiB0ZXN0X2hvb2tzX2dldF9ydW4oc2VsZik6CisgICAgICAgIHRlbXBfaG9tZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG1vZHVsZV9uYW1lID0gb3MucGF0aC5zcGxpdCh0ZW1wX2hvbWUpWy0xXQorICAgICAgICBweW5hbWUgPSAnJXMucHknICUgbW9kdWxlX25hbWUKKyAgICAgICAgY29uZmlnX2ZpbGUgPSBvcy5wYXRoLmpvaW4odGVtcF9ob21lLCAiY29uZmlnMS5jZmciKQorICAgICAgICBob29rc19tb2R1bGUgPSBvcy5wYXRoLmpvaW4odGVtcF9ob21lLCBweW5hbWUpCisKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGNvbmZpZ19maWxlLCB0ZXh0d3JhcC5kZWRlbnQoJycnXAorICAgICAgICAgICAgW3Rlc3RfZGlzdF0KKyAgICAgICAgICAgIHByZS1ob29rLnRlc3QgPSAlKG1vZG5hbWUpcy5sb2dfcHJlX2NhbGwKKyAgICAgICAgICAgIHBvc3QtaG9vay50ZXN0ID0gJShtb2RuYW1lKXMubG9nX3Bvc3RfY2FsbCcnJworICAgICAgICAgICAgJSB7J21vZG5hbWUnOiBtb2R1bGVfbmFtZX0pKQorCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShob29rc19tb2R1bGUsIHRleHR3cmFwLmRlZGVudCgnJydcCisgICAgICAgICAgICByZWNvcmQgPSBbXQorCisgICAgICAgICAgICBkZWYgbG9nX3ByZV9jYWxsKGNtZCk6CisgICAgICAgICAgICAgICAgcmVjb3JkLmFwcGVuZCgncHJlLSVzJyAlIGNtZC5nZXRfY29tbWFuZF9uYW1lKCkpCisKKyAgICAgICAgICAgIGRlZiBsb2dfcG9zdF9jYWxsKGNtZCk6CisgICAgICAgICAgICAgICAgcmVjb3JkLmFwcGVuZCgncG9zdC0lcycgJSBjbWQuZ2V0X2NvbW1hbmRfbmFtZSgpKQorICAgICAgICAgICAgJycnKSkKKworICAgICAgICB1c2VfY29tbWFuZChzZWxmLCAncGFja2FnaW5nLnRlc3RzLnRlc3RfZGlzdC50ZXN0X2Rpc3QnKQorICAgICAgICBkID0gY3JlYXRlX2Rpc3RyaWJ1dGlvbihbY29uZmlnX2ZpbGVdKQorICAgICAgICBjbWQgPSBkLmdldF9jb21tYW5kX29iaigidGVzdF9kaXN0IikKKworICAgICAgICAjIHByZXBhcmUgdGhlIGNhbGwgcmVjb3JkZXJzCisgICAgICAgIHN5cy5wYXRoLmFwcGVuZCh0ZW1wX2hvbWUpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzeXMucGF0aC5yZW1vdmUsIHRlbXBfaG9tZSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHVubG9hZCwgbW9kdWxlX25hbWUpCisgICAgICAgIHJlY29yZCA9IF9faW1wb3J0X18obW9kdWxlX25hbWUpLnJlY29yZAorCisgICAgICAgIGNtZC5ydW4gPSBsYW1iZGE6IHJlY29yZC5hcHBlbmQoJ3J1bicpCisgICAgICAgIGNtZC5maW5hbGl6ZV9vcHRpb25zID0gbGFtYmRhOiByZWNvcmQuYXBwZW5kKCdmaW5hbGl6ZScpCisgICAgICAgIGQucnVuX2NvbW1hbmQoJ3Rlc3RfZGlzdCcpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQsIFsnZmluYWxpemUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdwcmUtdGVzdF9kaXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncnVuJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9zdC10ZXN0X2Rpc3QnXSkKKworICAgIGRlZiB0ZXN0X2hvb2tzX2ltcG9ydGFibGUoc2VsZik6CisgICAgICAgIHRlbXBfaG9tZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGNvbmZpZ19maWxlID0gb3MucGF0aC5qb2luKHRlbXBfaG9tZSwgImNvbmZpZzEuY2ZnIikKKworICAgICAgICBzZWxmLndyaXRlX2ZpbGUoY29uZmlnX2ZpbGUsIHRleHR3cmFwLmRlZGVudCgnJydcCisgICAgICAgICAgICBbdGVzdF9kaXN0XQorICAgICAgICAgICAgcHJlLWhvb2sudGVzdCA9IG5vbmV4aXN0ZW50LmRvdHRlZC5uYW1lJycnKSkKKworICAgICAgICB1c2VfY29tbWFuZChzZWxmLCAncGFja2FnaW5nLnRlc3RzLnRlc3RfZGlzdC50ZXN0X2Rpc3QnKQorICAgICAgICBkID0gY3JlYXRlX2Rpc3RyaWJ1dGlvbihbY29uZmlnX2ZpbGVdKQorICAgICAgICBjbWQgPSBkLmdldF9jb21tYW5kX29iaigidGVzdF9kaXN0IikKKyAgICAgICAgY21kLmVuc3VyZV9maW5hbGl6ZWQoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ01vZHVsZUVycm9yLCBkLnJ1bl9jb21tYW5kLCAndGVzdF9kaXN0JykKKworICAgIGRlZiB0ZXN0X2hvb2tzX2NhbGxhYmxlKHNlbGYpOgorICAgICAgICB0ZW1wX2hvbWUgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBjb25maWdfZmlsZSA9IG9zLnBhdGguam9pbih0ZW1wX2hvbWUsICJjb25maWcxLmNmZyIpCisKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKGNvbmZpZ19maWxlLCB0ZXh0d3JhcC5kZWRlbnQoJycnXAorICAgICAgICAgICAgW3Rlc3RfZGlzdF0KKyAgICAgICAgICAgIHByZS1ob29rLnRlc3QgPSBwYWNrYWdpbmcudGVzdHMudGVzdF9kaXN0Ll9fZG9jX18nJycpKQorCisgICAgICAgIHVzZV9jb21tYW5kKHNlbGYsICdwYWNrYWdpbmcudGVzdHMudGVzdF9kaXN0LnRlc3RfZGlzdCcpCisgICAgICAgIGQgPSBjcmVhdGVfZGlzdHJpYnV0aW9uKFtjb25maWdfZmlsZV0pCisgICAgICAgIGNtZCA9IGQuZ2V0X2NvbW1hbmRfb2JqKCJ0ZXN0X2Rpc3QiKQorICAgICAgICBjbWQuZW5zdXJlX2ZpbmFsaXplZCgpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nT3B0aW9uRXJyb3IsIGQucnVuX2NvbW1hbmQsICd0ZXN0X2Rpc3QnKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShEaXN0cmlidXRpb25UZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9leHRlbnNpb24ucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfZXh0ZW5zaW9uLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQxMTgyZTUKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfZXh0ZW5zaW9uLnB5CkBAIC0wLDAgKzEsMTUgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuZXh0ZW5zaW9uLiIiIgoraW1wb3J0IG9zCisKK2Zyb20gcGFja2FnaW5nLmNvbXBpbGVyLmV4dGVuc2lvbiBpbXBvcnQgRXh0ZW5zaW9uCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKKworY2xhc3MgRXh0ZW5zaW9uVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgcGFzcworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoRXh0ZW5zaW9uVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfaW5zdGFsbC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9pbnN0YWxsLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNjMWY1ZDMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfaW5zdGFsbC5weQpAQCAtMCwwICsxLDM5MSBAQAorIiIiVGVzdHMgZm9yIHRoZSBwYWNrYWdpbmcuaW5zdGFsbCBtb2R1bGUuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBsb2dnaW5nCitmcm9tIHRlbXBmaWxlIGltcG9ydCBta3N0ZW1wCitmcm9tIHN5c2NvbmZpZyBpbXBvcnQgaXNfcHl0aG9uX2J1aWxkCisKK2Zyb20gcGFja2FnaW5nIGltcG9ydCBpbnN0YWxsCitmcm9tIHBhY2thZ2luZy5weXBpLnhtbHJwYyBpbXBvcnQgQ2xpZW50Citmcm9tIHBhY2thZ2luZy5tZXRhZGF0YSBpbXBvcnQgTWV0YWRhdGEKK2Zyb20gcGFja2FnaW5nLnRlc3RzLnN1cHBvcnQgaW1wb3J0IChMb2dnaW5nQ2F0Y2hlciwgVGVtcGRpck1hbmFnZXIsIHVuaXR0ZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZha2VfZGVjKQordHJ5OgorICAgIGltcG9ydCB0aHJlYWRpbmcKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlciBpbXBvcnQgdXNlX3htbHJwY19zZXJ2ZXIKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICB0aHJlYWRpbmcgPSBOb25lCisgICAgdXNlX3htbHJwY19zZXJ2ZXIgPSBmYWtlX2RlYworCisKK2NsYXNzIEluc3RhbGxlZERpc3Q6CisgICAgIiIiRGlzdHJpYnV0aW9uIG9iamVjdCwgcmVwcmVzZW50IGRpc3RyaWJ1dGlvbnMgY3VycmVudGx5IGluc3RhbGxlZCBvbiB0aGUKKyAgICBzeXN0ZW0iIiIKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbmFtZSwgdmVyc2lvbiwgZGVwcyk6CisgICAgICAgIHNlbGYubWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIHNlbGYubmFtZSA9IG5hbWUKKyAgICAgICAgc2VsZi52ZXJzaW9uID0gdmVyc2lvbgorICAgICAgICBzZWxmLm1ldGFkYXRhWydOYW1lJ10gPSBuYW1lCisgICAgICAgIHNlbGYubWV0YWRhdGFbJ1ZlcnNpb24nXSA9IHZlcnNpb24KKyAgICAgICAgc2VsZi5tZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddID0gZGVwcworCisgICAgZGVmIF9fcmVwcl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gJzxJbnN0YWxsZWREaXN0ICVyPicgJSBzZWxmLm1ldGFkYXRhWydOYW1lJ10KKworCitjbGFzcyBUb0luc3RhbGxEaXN0OgorICAgICIiIkRpc3RyaWJ1dGlvbiB0aGF0IHdpbGwgYmUgaW5zdGFsbGVkIiIiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmlsZXM9RmFsc2UpOgorICAgICAgICBzZWxmLl9maWxlcyA9IGZpbGVzCisgICAgICAgIHNlbGYuaW5zdGFsbF9jYWxsZWQgPSBGYWxzZQorICAgICAgICBzZWxmLmluc3RhbGxfY2FsbGVkX3dpdGggPSB7fQorICAgICAgICBzZWxmLnVuaW5zdGFsbF9jYWxsZWQgPSBGYWxzZQorICAgICAgICBzZWxmLl9yZWFsX2ZpbGVzID0gW10KKyAgICAgICAgc2VsZi5uYW1lID0gImZha2UiCisgICAgICAgIHNlbGYudmVyc2lvbiA9ICJmYWtlIgorICAgICAgICBpZiBmaWxlczoKKyAgICAgICAgICAgIGZvciBmIGluIHJhbmdlKDAsIDMpOgorICAgICAgICAgICAgICAgIGZwLCBmbiA9IG1rc3RlbXAoKQorICAgICAgICAgICAgICAgIG9zLmNsb3NlKGZwKQorICAgICAgICAgICAgICAgIHNlbGYuX3JlYWxfZmlsZXMuYXBwZW5kKGZuKQorCisgICAgZGVmIF91bmxpbmtfaW5zdGFsbGVkX2ZpbGVzKHNlbGYpOgorICAgICAgICBpZiBzZWxmLl9maWxlczoKKyAgICAgICAgICAgIGZvciBmbiBpbiBzZWxmLl9yZWFsX2ZpbGVzOgorICAgICAgICAgICAgICAgIG9zLnVubGluayhmbikKKworICAgIGRlZiBsaXN0X2luc3RhbGxlZF9maWxlcyhzZWxmLCAqKmFyZ3MpOgorICAgICAgICBpZiBzZWxmLl9maWxlczoKKyAgICAgICAgICAgIHJldHVybiBzZWxmLl9yZWFsX2ZpbGVzCisKKyAgICBkZWYgZ2V0X2luc3RhbGwoc2VsZiwgKiphcmdzKToKKyAgICAgICAgcmV0dXJuIHNlbGYubGlzdF9pbnN0YWxsZWRfZmlsZXMoKQorCisKK2NsYXNzIE1hZ2ljTW9jazoKKyAgICBkZWYgX19pbml0X18oc2VsZiwgcmV0dXJuX3ZhbHVlPU5vbmUsIHJhaXNlX2V4Y2VwdGlvbj1GYWxzZSk6CisgICAgICAgIHNlbGYuY2FsbGVkID0gRmFsc2UKKyAgICAgICAgc2VsZi5fdGltZXNfY2FsbGVkID0gMAorICAgICAgICBzZWxmLl9jYWxsZWRfd2l0aCA9IFtdCisgICAgICAgIHNlbGYuX3JldHVybl92YWx1ZSA9IHJldHVybl92YWx1ZQorICAgICAgICBzZWxmLl9yYWlzZSA9IHJhaXNlX2V4Y2VwdGlvbgorCisgICAgZGVmIF9fY2FsbF9fKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHNlbGYuY2FsbGVkID0gVHJ1ZQorICAgICAgICBzZWxmLl90aW1lc19jYWxsZWQgPSBzZWxmLl90aW1lc19jYWxsZWQgKyAxCisgICAgICAgIHNlbGYuX2NhbGxlZF93aXRoLmFwcGVuZCgoYXJncywga3dhcmdzKSkKKyAgICAgICAgaXRlcmFibGUgPSBoYXNhdHRyKHNlbGYuX3JhaXNlLCAnX19pdGVyX18nKQorICAgICAgICBpZiBzZWxmLl9yYWlzZToKKyAgICAgICAgICAgIGlmICgobm90IGl0ZXJhYmxlIGFuZCBzZWxmLl9yYWlzZSkKKyAgICAgICAgICAgICAgICAgICAgb3Igc2VsZi5fcmFpc2Vbc2VsZi5fdGltZXNfY2FsbGVkIC0gMV0pOgorICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbgorICAgICAgICByZXR1cm4gc2VsZi5fcmV0dXJuX3ZhbHVlCisKKyAgICBkZWYgY2FsbGVkX3dpdGgoc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcmV0dXJuIChhcmdzLCBrd2FyZ3MpIGluIHNlbGYuX2NhbGxlZF93aXRoCisKKworZGVmIGdldF9pbnN0YWxsZWRfZGlzdHMoZGlzdHMpOgorICAgICIiIlJldHVybiBhIGxpc3Qgb2YgZmFrZSBpbnN0YWxsZWQgZGlzdHMuCisgICAgVGhlIGxpc3QgaXMgbmFtZSwgdmVyc2lvbiwgZGVwcyIiIgorICAgIG9iamVjdHMgPSBbXQorICAgIGZvciBuYW1lLCB2ZXJzaW9uLCBkZXBzIGluIGRpc3RzOgorICAgICAgICBvYmplY3RzLmFwcGVuZChJbnN0YWxsZWREaXN0KG5hbWUsIHZlcnNpb24sIGRlcHMpKQorICAgIHJldHVybiBvYmplY3RzCisKKworY2xhc3MgVGVzdEluc3RhbGwoTG9nZ2luZ0NhdGNoZXIsIFRlbXBkaXJNYW5hZ2VyLCB1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIF9nZXRfY2xpZW50KHNlbGYsIHNlcnZlciwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcmV0dXJuIENsaWVudChzZXJ2ZXIuZnVsbF9hZGRyZXNzLCAqYXJncywgKiprd2FyZ3MpCisKKyAgICBkZWYgX2dldF9yZXN1bHRzKHNlbGYsIG91dHB1dCk6CisgICAgICAgICIiInJldHVybiBhIGxpc3Qgb2YgcmVzdWx0cyIiIgorICAgICAgICBpbnN0YWxsZWQgPSBbKG8ubmFtZSwgc3RyKG8udmVyc2lvbikpIGZvciBvIGluIG91dHB1dFsnaW5zdGFsbCddXQorICAgICAgICByZW1vdmUgPSBbKG8ubmFtZSwgc3RyKG8udmVyc2lvbikpIGZvciBvIGluIG91dHB1dFsncmVtb3ZlJ11dCisgICAgICAgIGNvbmZsaWN0ID0gWyhvLm5hbWUsIHN0cihvLnZlcnNpb24pKSBmb3IgbyBpbiBvdXRwdXRbJ2NvbmZsaWN0J11dCisgICAgICAgIHJldHVybiBpbnN0YWxsZWQsIHJlbW92ZSwgY29uZmxpY3QKKworICAgIEB1bml0dGVzdC5za2lwSWYodGhyZWFkaW5nIGlzIE5vbmUsICduZWVkcyB0aHJlYWRpbmcnKQorICAgIEB1c2VfeG1scnBjX3NlcnZlcigpCisgICAgZGVmIHRlc3RfZXhpc3RpbmdfZGVwcyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICAjIFRlc3QgdGhhdCB0aGUgaW5zdGFsbGVyIGdldCB0aGUgZGVwZW5kZW5jaWVzIGZyb20gdGhlIG1ldGFkYXRhcworICAgICAgICAjIGFuZCBhc2sgdGhlIGluZGV4IGZvciB0aGlzIGRlcGVuZGVuY2llcy4KKyAgICAgICAgIyBJbiB0aGlzIHRlc3QgY2FzZSwgd2UgaGF2ZSBjaG94aWUgdGhhdCBpcyBkZXBlbmRlbnQgZnJvbSB0b3dlbC1zdHVmZgorICAgICAgICAjIDAuMSwgd2hpY2ggaXMgaW4tdHVybiBkZXBlbmRlbnQgb24gYmFjb24gPD0gMC4yOgorICAgICAgICAjIGNob3hpZSAtPiB0b3dlbC1zdHVmZiAtPiBiYWNvbi4KKyAgICAgICAgIyBFYWNoIHJlbGVhc2UgbWV0YWRhdGEgaXMgbm90IHByb3ZpZGVkIGluIG1ldGFkYXRhIDEuMi4KKyAgICAgICAgY2xpZW50ID0gc2VsZi5fZ2V0X2NsaWVudChzZXJ2ZXIpCisgICAgICAgIGFyY2hpdmVfcGF0aCA9ICclcy9kaXN0cmlidXRpb24udGFyLmd6JyAlIHNlcnZlci5mdWxsX2FkZHJlc3MKKyAgICAgICAgc2VydmVyLnhtbHJwYy5zZXRfZGlzdHJpYnV0aW9ucyhbCisgICAgICAgICAgICB7J25hbWUnOiAnY2hveGllJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcyLjAuMC45JywKKyAgICAgICAgICAgICAncmVxdWlyZXNfZGlzdCc6IFsndG93ZWwtc3R1ZmYgKDAuMSknXSwKKyAgICAgICAgICAgICAndXJsJzogYXJjaGl2ZV9wYXRofSwKKyAgICAgICAgICAgIHsnbmFtZSc6ICd0b3dlbC1zdHVmZicsCisgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMC4xJywKKyAgICAgICAgICAgICAncmVxdWlyZXNfZGlzdCc6IFsnYmFjb24gKDw9IDAuMiknXSwKKyAgICAgICAgICAgICAndXJsJzogYXJjaGl2ZV9wYXRofSwKKyAgICAgICAgICAgIHsnbmFtZSc6ICdiYWNvbicsCisgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMC4xJywKKyAgICAgICAgICAgICAncmVxdWlyZXNfZGlzdCc6IFtdLAorICAgICAgICAgICAgICd1cmwnOiBhcmNoaXZlX3BhdGh9LAorICAgICAgICAgICAgXSkKKyAgICAgICAgaW5zdGFsbGVkID0gZ2V0X2luc3RhbGxlZF9kaXN0cyhbKCdiYWNvbicsICcwLjEnLCBbXSldKQorICAgICAgICBvdXRwdXQgPSBpbnN0YWxsLmdldF9pbmZvcygiY2hveGllIiwgaW5kZXg9Y2xpZW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YWxsZWQ9aW5zdGFsbGVkKQorCisgICAgICAgICMgd2UgZG9uJ3QgaGF2ZSBpbnN0YWxsZWQgYmFjb24gYXMgaXQncyBhbHJlYWR5IGluc3RhbGxlZCBzeXN0ZW0td2lkZQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDAsIGxlbihvdXRwdXRbJ3JlbW92ZSddKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgyLCBsZW4ob3V0cHV0WydpbnN0YWxsJ10pKQorICAgICAgICByZWFkYWJsZV9vdXRwdXQgPSBbKG8ubmFtZSwgc3RyKG8udmVyc2lvbikpCisgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgbyBpbiBvdXRwdXRbJ2luc3RhbGwnXV0KKyAgICAgICAgc2VsZi5hc3NlcnRJbigoJ3Rvd2VsLXN0dWZmJywgJzAuMScpLCByZWFkYWJsZV9vdXRwdXQpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oKCdjaG94aWUnLCAnMi4wLjAuOScpLCByZWFkYWJsZV9vdXRwdXQpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKHRocmVhZGluZyBpcyBOb25lLCAnbmVlZHMgdGhyZWFkaW5nJykKKyAgICBAdXNlX3htbHJwY19zZXJ2ZXIoKQorICAgIGRlZiB0ZXN0X3VwZ3JhZGVfZXhpc3RpbmdfZGVwcyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjbGllbnQgPSBzZWxmLl9nZXRfY2xpZW50KHNlcnZlcikKKyAgICAgICAgYXJjaGl2ZV9wYXRoID0gJyVzL2Rpc3RyaWJ1dGlvbi50YXIuZ3onICUgc2VydmVyLmZ1bGxfYWRkcmVzcworICAgICAgICBzZXJ2ZXIueG1scnBjLnNldF9kaXN0cmlidXRpb25zKFsKKyAgICAgICAgICAgIHsnbmFtZSc6ICdjaG94aWUnLAorICAgICAgICAgICAgICd2ZXJzaW9uJzogJzIuMC4wLjknLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWyd0b3dlbC1zdHVmZiAoMC4xKSddLAorICAgICAgICAgICAgICd1cmwnOiBhcmNoaXZlX3BhdGh9LAorICAgICAgICAgICAgeyduYW1lJzogJ3Rvd2VsLXN0dWZmJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcwLjEnLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWydiYWNvbiAoPj0gMC4yKSddLAorICAgICAgICAgICAgICd1cmwnOiBhcmNoaXZlX3BhdGh9LAorICAgICAgICAgICAgeyduYW1lJzogJ2JhY29uJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcwLjInLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogW10sCisgICAgICAgICAgICAgJ3VybCc6IGFyY2hpdmVfcGF0aH0sCisgICAgICAgICAgICBdKQorCisgICAgICAgIG91dHB1dCA9IGluc3RhbGwuZ2V0X2luZm9zKCJjaG94aWUiLCBpbmRleD1jbGllbnQsCisgICAgICAgICAgICAgICAgICAgICBpbnN0YWxsZWQ9Z2V0X2luc3RhbGxlZF9kaXN0cyhbKCdiYWNvbicsICcwLjEnLCBbXSldKSkKKyAgICAgICAgaW5zdGFsbGVkID0gWyhvLm5hbWUsIHN0cihvLnZlcnNpb24pKSBmb3IgbyBpbiBvdXRwdXRbJ2luc3RhbGwnXV0KKworICAgICAgICAjIHdlIG5lZWQgYmFjb24gMC4yLCBidXQgMC4xIGlzIGluc3RhbGxlZC4KKyAgICAgICAgIyBTbyB3ZSBleHBlY3QgdG8gcmVtb3ZlIDAuMSBhbmQgdG8gaW5zdGFsbCAwLjIgaW5zdGVhZC4KKyAgICAgICAgcmVtb3ZlID0gWyhvLm5hbWUsIHN0cihvLnZlcnNpb24pKSBmb3IgbyBpbiBvdXRwdXRbJ3JlbW92ZSddXQorICAgICAgICBzZWxmLmFzc2VydEluKCgnY2hveGllJywgJzIuMC4wLjknKSwgaW5zdGFsbGVkKQorICAgICAgICBzZWxmLmFzc2VydEluKCgndG93ZWwtc3R1ZmYnLCAnMC4xJyksIGluc3RhbGxlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigoJ2JhY29uJywgJzAuMicpLCBpbnN0YWxsZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oKCdiYWNvbicsICcwLjEnKSwgcmVtb3ZlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDAsIGxlbihvdXRwdXRbJ2NvbmZsaWN0J10pKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZih0aHJlYWRpbmcgaXMgTm9uZSwgJ25lZWRzIHRocmVhZGluZycpCisgICAgQHVzZV94bWxycGNfc2VydmVyKCkKKyAgICBkZWYgdGVzdF9jb25mbGljdHMoc2VsZiwgc2VydmVyKToKKyAgICAgICAgIyBUZXN0cyB0aGF0IGNvbmZsaWN0cyBhcmUgZGV0ZWN0ZWQKKyAgICAgICAgY2xpZW50ID0gc2VsZi5fZ2V0X2NsaWVudChzZXJ2ZXIpCisgICAgICAgIGFyY2hpdmVfcGF0aCA9ICclcy9kaXN0cmlidXRpb24udGFyLmd6JyAlIHNlcnZlci5mdWxsX2FkZHJlc3MKKworICAgICAgICAjIGNob3hpZSBkZXBlbmRzIG9uIHRvd2VsLXN0dWZmLCB3aGljaCBkZXBlbmRzIG9uIGJhY29uLgorICAgICAgICBzZXJ2ZXIueG1scnBjLnNldF9kaXN0cmlidXRpb25zKFsKKyAgICAgICAgICAgIHsnbmFtZSc6ICdjaG94aWUnLAorICAgICAgICAgICAgICd2ZXJzaW9uJzogJzIuMC4wLjknLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWyd0b3dlbC1zdHVmZiAoMC4xKSddLAorICAgICAgICAgICAgICd1cmwnOiBhcmNoaXZlX3BhdGh9LAorICAgICAgICAgICAgeyduYW1lJzogJ3Rvd2VsLXN0dWZmJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcwLjEnLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWydiYWNvbiAoPj0gMC4yKSddLAorICAgICAgICAgICAgICd1cmwnOiBhcmNoaXZlX3BhdGh9LAorICAgICAgICAgICAgeyduYW1lJzogJ2JhY29uJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcwLjInLAorICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogW10sCisgICAgICAgICAgICAgJ3VybCc6IGFyY2hpdmVfcGF0aH0sCisgICAgICAgICAgICBdKQorCisgICAgICAgICMgbmFtZSwgdmVyc2lvbiwgZGVwcy4KKyAgICAgICAgYWxyZWFkeV9pbnN0YWxsZWQgPSBbKCdiYWNvbicsICcwLjEnLCBbXSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnY2hpY2tlbicsICcxLjEnLCBbJ2JhY29uICgwLjEpJ10pXQorICAgICAgICBvdXRwdXQgPSBpbnN0YWxsLmdldF9pbmZvcygKKyAgICAgICAgICAgICdjaG94aWUnLCBpbmRleD1jbGllbnQsCisgICAgICAgICAgICBpbnN0YWxsZWQ9Z2V0X2luc3RhbGxlZF9kaXN0cyhhbHJlYWR5X2luc3RhbGxlZCkpCisKKyAgICAgICAgIyB3ZSBuZWVkIGJhY29uIDAuMiwgYnV0IDAuMSBpcyBpbnN0YWxsZWQuCisgICAgICAgICMgU28gd2UgZXhwZWN0IHRvIHJlbW92ZSAwLjEgYW5kIHRvIGluc3RhbGwgMC4yIGluc3RlYWQuCisgICAgICAgIGluc3RhbGxlZCwgcmVtb3ZlLCBjb25mbGljdCA9IHNlbGYuX2dldF9yZXN1bHRzKG91dHB1dCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigoJ2Nob3hpZScsICcyLjAuMC45JyksIGluc3RhbGxlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigoJ3Rvd2VsLXN0dWZmJywgJzAuMScpLCBpbnN0YWxsZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oKCdiYWNvbicsICcwLjInKSwgaW5zdGFsbGVkKQorICAgICAgICBzZWxmLmFzc2VydEluKCgnYmFjb24nLCAnMC4xJyksIHJlbW92ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigoJ2NoaWNrZW4nLCAnMS4xJyksIGNvbmZsaWN0KQorCisgICAgQHVuaXR0ZXN0LnNraXBJZih0aHJlYWRpbmcgaXMgTm9uZSwgJ25lZWRzIHRocmVhZGluZycpCisgICAgQHVzZV94bWxycGNfc2VydmVyKCkKKyAgICBkZWYgdGVzdF9pbnN0YWxsYXRpb25fdW5leGlzdGluZ19wcm9qZWN0KHNlbGYsIHNlcnZlcik6CisgICAgICAgICMgVGVzdCB0aGF0IHRoZSBpc250YWxsZWQgcmFpc2VzIGFuIGV4Y2VwdGlvbiBpZiB0aGUgcHJvamVjdCBkb2VzIG5vdAorICAgICAgICAjIGV4aXN0cy4KKyAgICAgICAgY2xpZW50ID0gc2VsZi5fZ2V0X2NsaWVudChzZXJ2ZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKGluc3RhbGwuSW5zdGFsbGF0aW9uRXhjZXB0aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICBpbnN0YWxsLmdldF9pbmZvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ3VuZXhpc3RpbmcgcHJvamVjdCcsIGluZGV4PWNsaWVudCkKKworICAgIGRlZiB0ZXN0X21vdmVfZmlsZXMoc2VsZik6CisgICAgICAgICMgdGVzdCB0aGF0IHRoZSBmaWxlcyBhcmUgcmVhbGx5IG1vdmVkLCBhbmQgdGhhdCB0aGUgbmV3IHBhdGggaXMKKyAgICAgICAgIyByZXR1cm5lZC4KKyAgICAgICAgcGF0aCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG5ld3BhdGggPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBmaWxlcyA9IFtvcy5wYXRoLmpvaW4ocGF0aCwgc3RyKHgpKSBmb3IgeCBpbiByYW5nZSgxLCAyMCldCisgICAgICAgIGZvciBmIGluIGZpbGVzOgorICAgICAgICAgICAgb3BlbihmLCAnYWIrJykuY2xvc2UoKQorICAgICAgICBvdXRwdXQgPSBbbyBmb3IgbyBpbiBpbnN0YWxsLl9tb3ZlX2ZpbGVzKGZpbGVzLCBuZXdwYXRoKV0KKworICAgICAgICAjIGNoZWNrIHRoYXQgb3V0cHV0IHJldHVybiB0aGUgbGlzdCBvZiBvbGQvbmV3IHBsYWNlcworICAgICAgICBmb3IgZmlsZV8gaW4gZmlsZXM6CisgICAgICAgICAgICBuYW1lID0gb3MucGF0aC5zcGxpdChmaWxlXylbLTFdCisgICAgICAgICAgICBuZXdsb2MgPSBvcy5wYXRoLmpvaW4obmV3cGF0aCwgbmFtZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oKGZpbGVfLCBuZXdsb2MpLCBvdXRwdXQpCisKKyAgICAgICAgIyByZW1vdmUgdGhlIGZpbGVzCisgICAgICAgIGZvciBmIGluIFtvWzFdIGZvciBvIGluIG91dHB1dF06ICAjIG9bMV0gaXMgdGhlIG5ldyBwbGFjZQorICAgICAgICAgICAgb3MucmVtb3ZlKGYpCisKKyAgICBkZWYgdGVzdF91cGRhdGVfaW5mb3Moc2VsZik6CisgICAgICAgIHRlc3RzID0gW1sKKyAgICAgICAgICAgIHsnZm9vJzogWydmb29iYXInLCAnZm9vJywgJ2JheiddLCAnYmF6JzogWydmb28nLCAnZm9vJ119LAorICAgICAgICAgICAgeydmb28nOiBbJ2FkZGl0aW9uYWxfY29udGVudCcsICd5ZWFoJ10sICdiYXonOiBbJ3Rlc3QnLCAnZm9vJ119LAorICAgICAgICAgICAgeydmb28nOiBbJ2Zvb2JhcicsICdmb28nLCAnYmF6JywgJ2FkZGl0aW9uYWxfY29udGVudCcsICd5ZWFoJ10sCisgICAgICAgICAgICAgJ2Jheic6IFsnZm9vJywgJ2ZvbycsICd0ZXN0JywgJ2ZvbyddfSwKKyAgICAgICAgXV0KKworICAgICAgICBmb3IgZGljdDEsIGRpY3QyLCBleHBlY3QgaW4gdGVzdHM6CisgICAgICAgICAgICBpbnN0YWxsLl91cGRhdGVfaW5mb3MoZGljdDEsIGRpY3QyKQorICAgICAgICAgICAgZm9yIGtleSBpbiBleHBlY3Q6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHBlY3Rba2V5XSwgZGljdDFba2V5XSkKKworICAgIGRlZiB0ZXN0X2luc3RhbGxfZGlzdHNfcm9sbGJhY2soc2VsZik6CisgICAgICAgICMgaWYgb25lIG9mIHRoZSBkaXN0cmlidXRpb24gaW5zdGFsbGF0aW9uIGZhaWxzLCBjYWxsIHVuaW5zdGFsbCBvbiBhbGwKKyAgICAgICAgIyBpbnN0YWxsZWQgZGlzdHJpYnV0aW9ucy4KKworICAgICAgICBvbGRfaW5zdGFsbF9kaXN0ID0gaW5zdGFsbC5faW5zdGFsbF9kaXN0CisgICAgICAgIG9sZF91bmluc3RhbGwgPSBnZXRhdHRyKGluc3RhbGwsICd1bmluc3RhbGwnLCBOb25lKQorCisgICAgICAgIGluc3RhbGwuX2luc3RhbGxfZGlzdCA9IE1hZ2ljTW9jayhyZXR1cm5fdmFsdWU9W10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZV9leGNlcHRpb249KEZhbHNlLCBUcnVlKSkKKyAgICAgICAgaW5zdGFsbC5yZW1vdmUgPSBNYWdpY01vY2soKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBkMSA9IFRvSW5zdGFsbERpc3QoKQorICAgICAgICAgICAgZDIgPSBUb0luc3RhbGxEaXN0KCkKKyAgICAgICAgICAgIHBhdGggPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoRXhjZXB0aW9uLCBpbnN0YWxsLmluc3RhbGxfZGlzdHMsIFtkMSwgZDJdLCBwYXRoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGluc3RhbGwuX2luc3RhbGxfZGlzdC5jYWxsZWRfd2l0aChkMSwgcGF0aCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaW5zdGFsbC5yZW1vdmUuY2FsbGVkKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgaW5zdGFsbC5faW5zdGFsbF9kaXN0ID0gb2xkX2luc3RhbGxfZGlzdAorICAgICAgICAgICAgaW5zdGFsbC5yZW1vdmUgPSBvbGRfdW5pbnN0YWxsCisKKyAgICBkZWYgdGVzdF9pbnN0YWxsX2Rpc3RzX3N1Y2Nlc3Moc2VsZik6CisgICAgICAgIG9sZF9pbnN0YWxsX2Rpc3QgPSBpbnN0YWxsLl9pbnN0YWxsX2Rpc3QKKyAgICAgICAgaW5zdGFsbC5faW5zdGFsbF9kaXN0ID0gTWFnaWNNb2NrKHJldHVybl92YWx1ZT1bXSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyB0ZXN0IHRoYXQgdGhlIGluc3RhbGwgbWV0aG9kIGlzIGNhbGxlZCBvbiBlYWNoIGRpc3RyaWJ1dGlvbnMKKyAgICAgICAgICAgIGQxID0gVG9JbnN0YWxsRGlzdCgpCisgICAgICAgICAgICBkMiA9IFRvSW5zdGFsbERpc3QoKQorCisgICAgICAgICAgICAjIHNob3VsZCBjYWxsIGluc3RhbGwKKyAgICAgICAgICAgIHBhdGggPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICAgICAgaW5zdGFsbC5pbnN0YWxsX2Rpc3RzKFtkMSwgZDJdLCBwYXRoKQorICAgICAgICAgICAgZm9yIGRpc3QgaW4gKGQxLCBkMik6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGluc3RhbGwuX2luc3RhbGxfZGlzdC5jYWxsZWRfd2l0aChkaXN0LCBwYXRoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGluc3RhbGwuX2luc3RhbGxfZGlzdCA9IG9sZF9pbnN0YWxsX2Rpc3QKKworICAgIGRlZiB0ZXN0X2luc3RhbGxfZnJvbV9pbmZvc19jb25mbGljdChzZWxmKToKKyAgICAgICAgIyBhc3NlcnQgY29uZmxpY3RzIHJhaXNlIGFuIGV4Y2VwdGlvbgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhpbnN0YWxsLkluc3RhbGxhdGlvbkNvbmZsaWN0LAorICAgICAgICAgICAgaW5zdGFsbC5pbnN0YWxsX2Zyb21faW5mb3MsCisgICAgICAgICAgICBjb25mbGljdHM9W1RvSW5zdGFsbERpc3QoKV0pCisKKyAgICBkZWYgdGVzdF9pbnN0YWxsX2Zyb21faW5mb3NfcmVtb3ZlX3N1Y2Nlc3Moc2VsZik6CisgICAgICAgIG9sZF9pbnN0YWxsX2Rpc3RzID0gaW5zdGFsbC5pbnN0YWxsX2Rpc3RzCisgICAgICAgIGluc3RhbGwuaW5zdGFsbF9kaXN0cyA9IGxhbWJkYSB4LCB5PU5vbmU6IE5vbmUKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZGlzdHMgPSBbXQorICAgICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMik6CisgICAgICAgICAgICAgICAgZGlzdHMuYXBwZW5kKFRvSW5zdGFsbERpc3QoZmlsZXM9VHJ1ZSkpCisgICAgICAgICAgICBpbnN0YWxsLmluc3RhbGxfZnJvbV9pbmZvcyhyZW1vdmU9ZGlzdHMpCisKKyAgICAgICAgICAgICMgYXNzZXJ0IHRoYXQgdGhlIGZpbGVzIGhhdmUgYmVlbiByZW1vdmVkCisgICAgICAgICAgICBmb3IgZGlzdCBpbiBkaXN0czoKKyAgICAgICAgICAgICAgICBmb3IgZiBpbiBkaXN0Lmxpc3RfaW5zdGFsbGVkX2ZpbGVzKCk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoZikpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBpbnN0YWxsLmluc3RhbGxfZGlzdHMgPSBvbGRfaW5zdGFsbF9kaXN0cworCisgICAgZGVmIHRlc3RfaW5zdGFsbF9mcm9tX2luZm9zX3JlbW92ZV9yb2xsYmFjayhzZWxmKToKKyAgICAgICAgb2xkX2luc3RhbGxfZGlzdCA9IGluc3RhbGwuX2luc3RhbGxfZGlzdAorICAgICAgICBvbGRfdW5pbnN0YWxsID0gZ2V0YXR0cihpbnN0YWxsLCAndW5pbnN0YWxsJywgTm9uZSkKKworICAgICAgICBpbnN0YWxsLl9pbnN0YWxsX2Rpc3QgPSBNYWdpY01vY2socmV0dXJuX3ZhbHVlPVtdLAorICAgICAgICAgICAgICAgIHJhaXNlX2V4Y2VwdGlvbj0oRmFsc2UsIFRydWUpKQorICAgICAgICBpbnN0YWxsLnVuaW5zdGFsbCA9IE1hZ2ljTW9jaygpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgICMgYXNzZXJ0IHRoYXQgaWYgYW4gZXJyb3Igb2NjdXJzLCB0aGUgcmVtb3ZlZCBmaWxlcyBhcmUgcmVzdG9yZWQuCisgICAgICAgICAgICByZW1vdmUgPSBbXQorICAgICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMik6CisgICAgICAgICAgICAgICAgcmVtb3ZlLmFwcGVuZChUb0luc3RhbGxEaXN0KGZpbGVzPVRydWUpKQorICAgICAgICAgICAgdG9faW5zdGFsbCA9IFtUb0luc3RhbGxEaXN0KCksIFRvSW5zdGFsbERpc3QoKV0KKyAgICAgICAgICAgIHRlbXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKworICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoRXhjZXB0aW9uLCBpbnN0YWxsLmluc3RhbGxfZnJvbV9pbmZvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc3RhbGxfcGF0aD10ZW1wX2RpciwgaW5zdGFsbD10b19pbnN0YWxsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtb3ZlPXJlbW92ZSkKKyAgICAgICAgICAgICMgYXNzZXJ0IHRoYXQgdGhlIGZpbGVzIGFyZSBpbiB0aGUgc2FtZSBwbGFjZQorICAgICAgICAgICAgIyBhc3NlcnQgdGhhdCB0aGUgZmlsZXMgaGF2ZSBiZWVuIHJlbW92ZWQKKyAgICAgICAgICAgIGZvciBkaXN0IGluIHJlbW92ZToKKyAgICAgICAgICAgICAgICBmb3IgZiBpbiBkaXN0Lmxpc3RfaW5zdGFsbGVkX2ZpbGVzKCk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhmKSkKKyAgICAgICAgICAgICAgICBkaXN0Ll91bmxpbmtfaW5zdGFsbGVkX2ZpbGVzKCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGluc3RhbGwuX2luc3RhbGxfZGlzdCA9IG9sZF9pbnN0YWxsX2Rpc3QKKyAgICAgICAgICAgIGluc3RhbGwudW5pbnN0YWxsID0gb2xkX3VuaW5zdGFsbAorCisgICAgZGVmIHRlc3RfaW5zdGFsbF9mcm9tX2luZm9zX2luc3RhbGxfc3VjY2VzKHNlbGYpOgorICAgICAgICBvbGRfaW5zdGFsbF9kaXN0ID0gaW5zdGFsbC5faW5zdGFsbF9kaXN0CisgICAgICAgIGluc3RhbGwuX2luc3RhbGxfZGlzdCA9IE1hZ2ljTW9jayhbXSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBhc3NlcnQgdGhhdCB0aGUgZGlzdHJpYnV0aW9uIGNhbiBiZSBpbnN0YWxsZWQKKyAgICAgICAgICAgIGluc3RhbGxfcGF0aCA9ICJteV9pbnN0YWxsX3BhdGgiCisgICAgICAgICAgICB0b19pbnN0YWxsID0gW1RvSW5zdGFsbERpc3QoKSwgVG9JbnN0YWxsRGlzdCgpXQorCisgICAgICAgICAgICBpbnN0YWxsLmluc3RhbGxfZnJvbV9pbmZvcyhpbnN0YWxsX3BhdGgsIGluc3RhbGw9dG9faW5zdGFsbCkKKyAgICAgICAgICAgIGZvciBkaXN0IGluIHRvX2luc3RhbGw6CisgICAgICAgICAgICAgICAgaW5zdGFsbC5faW5zdGFsbF9kaXN0LmNhbGxlZF93aXRoKGluc3RhbGxfcGF0aCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGluc3RhbGwuX2luc3RhbGxfZGlzdCA9IG9sZF9pbnN0YWxsX2Rpc3QKKworICAgIGRlZiB0ZXN0X2luc3RhbGxfcGVybWlzc2lvbl9kZW5pZWQoc2VsZik6CisgICAgICAgICMgaWYgd2UgZG9uJ3QgaGF2ZSBhY2Nlc3MgdG8gdGhlIGluc3RhbGxhdGlvbiBwYXRoLCB3ZSBzaG91bGQgYWJvcnQKKyAgICAgICAgIyBpbW1lZGlhdGVseQorICAgICAgICBwcm9qZWN0ID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICdwYWNrYWdlLnRneicpCisKKyAgICAgICAgIyB3aGVuIHJ1bm5pbmcgZnJvbSBhbiB1bmluc3RhbGxlZCBidWlsZCwgYSB3YXJuaW5nIGlzIGVtaXR0ZWQgYW5kIHRoZQorICAgICAgICAjIGluc3RhbGxhdGlvbiBpcyBub3QgYXR0ZW1wdGVkCisgICAgICAgIGlmIGlzX3B5dGhvbl9idWlsZCgpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpbnN0YWxsLmluc3RhbGwocHJvamVjdCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihzZWxmLmdldF9sb2dzKGxvZ2dpbmcuRVJST1IpKSkKKyAgICAgICAgICAgIHJldHVybgorCisgICAgICAgIGluc3RhbGxfcGF0aCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG9sZF9nZXRfcGF0aCA9IGluc3RhbGwuZ2V0X3BhdGgKKyAgICAgICAgaW5zdGFsbC5nZXRfcGF0aCA9IGxhbWJkYSBwYXRoOiBpbnN0YWxsX3BhdGgKKyAgICAgICAgb2xkX21vZCA9IG9zLnN0YXQoaW5zdGFsbF9wYXRoKS5zdF9tb2RlCisgICAgICAgIG9zLmNobW9kKGluc3RhbGxfcGF0aCwgMCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpbnN0YWxsLmluc3RhbGwocHJvamVjdCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jaG1vZChpbnN0YWxsX3BhdGgsIG9sZF9tb2QpCisgICAgICAgICAgICBpbnN0YWxsLmdldF9wYXRoID0gb2xkX2dldF9wYXRoCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICBzdWl0ZSA9IHVuaXR0ZXN0LlRlc3RTdWl0ZSgpCisgICAgc3VpdGUuYWRkVGVzdCh1bml0dGVzdC5tYWtlU3VpdGUoVGVzdEluc3RhbGwpKQorICAgIHJldHVybiBzdWl0ZQorCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9J3Rlc3Rfc3VpdGUnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21hbmlmZXN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21hbmlmZXN0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY3NjhjNDcKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfbWFuaWZlc3QucHkKQEAgLTAsMCArMSwyNjMgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcubWFuaWZlc3QuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCByZQorZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgUGFja2FnaW5nVGVtcGxhdGVFcnJvcgorZnJvbSBwYWNrYWdpbmcubWFuaWZlc3QgaW1wb3J0IE1hbmlmZXN0LCBfdHJhbnNsYXRlX3BhdHRlcm4sIF9nbG9iX3RvX3JlCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCitfTUFOSUZFU1QgPSAiIiJcCityZWN1cnNpdmUtaW5jbHVkZSBmb28gKi5weSAgICMgb2sKKyMgbm90aGluZyBoZXJlCisKKyMKKworcmVjdXJzaXZlLWluY2x1ZGUgYmFyIFxcCisgICouZGF0ICAgKi50eHQKKyIiIgorCitfTUFOSUZFU1QyID0gIiIiXAorUkVBRE1FCitmaWxlMQorIiIiCisKKworY2xhc3MgTWFuaWZlc3RUZXN0Q2FzZShzdXBwb3J0LlRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgYXNzZXJ0Tm9XYXJuaW5ncyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmdldF9sb2dzKCksIFtdKQorCisgICAgZGVmIGFzc2VydFdhcm5pbmdzKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHNlbGYuZ2V0X2xvZ3MoKSwgW10pCisKKyAgICBkZWYgdGVzdF9tYW5pZmVzdF9yZWFkZXIoc2VsZik6CisgICAgICAgIHRtcGRpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIE1BTklGRVNUID0gb3MucGF0aC5qb2luKHRtcGRpciwgJ01BTklGRVNULmluJykKKyAgICAgICAgd2l0aCBvcGVuKE1BTklGRVNULCAndycpIGFzIGY6CisgICAgICAgICAgICBmLndyaXRlKF9NQU5JRkVTVCkKKworICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QucmVhZF90ZW1wbGF0ZShNQU5JRkVTVCkKKworICAgICAgICB3YXJuaW5ncyA9IHNlbGYuZ2V0X2xvZ3MoKQorICAgICAgICAjIHRoZSBtYW5pZmVzdCBzaG91bGQgaGF2ZSBiZWVuIHJlYWQgYW5kIDMgd2FybmluZ3MgaXNzdWVkCisgICAgICAgICMgKHdlIGRpZG4ndCBwcm92aWRlIHRoZSBmaWxlcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgzLCBsZW4od2FybmluZ3MpKQorICAgICAgICBmb3Igd2FybmluZyBpbiB3YXJuaW5nczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ25vIGZpbGVzIGZvdW5kIG1hdGNoaW5nJywgd2FybmluZykKKworICAgICAgICAjIG1hbmlmZXN0IGFsc28gYWNjZXB0cyBmaWxlLWxpa2Ugb2JqZWN0cworICAgICAgICB3aXRoIG9wZW4oTUFOSUZFU1QpIGFzIGY6CisgICAgICAgICAgICBtYW5pZmVzdC5yZWFkX3RlbXBsYXRlKGYpCisKKyAgICAgICAgIyB0aGUgbWFuaWZlc3Qgc2hvdWxkIGhhdmUgYmVlbiByZWFkIGFuZCAzIHdhcm5pbmdzIGlzc3VlZAorICAgICAgICAjICh3ZSBkaWRuJ3QgcHJvdmlkZSB0aGUgZmlsZXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMywgbGVuKHdhcm5pbmdzKSkKKworICAgIGRlZiB0ZXN0X2RlZmF1bHRfYWN0aW9ucyhzZWxmKToKKyAgICAgICAgdG1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG9zLmNoZGlyLCBvcy5nZXRjd2QoKSkKKyAgICAgICAgb3MuY2hkaXIodG1wZGlyKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ1JFQURNRScsICd4eHgnKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ2ZpbGUxJywgJ3h4eCcpCisgICAgICAgIGNvbnRlbnQgPSBTdHJpbmdJTyhfTUFOSUZFU1QyKQorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QucmVhZF90ZW1wbGF0ZShjb250ZW50KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnUkVBRE1FJywgJ2ZpbGUxJ10sIG1hbmlmZXN0LmZpbGVzKQorCisgICAgZGVmIHRlc3RfZ2xvYl90b19yZShzZWxmKToKKyAgICAgICAgIyBzaW1wbGUgY2FzZXMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChfZ2xvYl90b19yZSgnZm9vKicpLCAnZm9vW14vXSpcXFooP21zKScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoX2dsb2JfdG9fcmUoJ2Zvbz8nKSwgJ2Zvb1teL11cXFooP21zKScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoX2dsb2JfdG9fcmUoJ2Zvbz8/JyksICdmb29bXi9dW14vXVxcWig/bXMpJykKKworICAgICAgICAjIHNwZWNpYWwgY2FzZXMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChfZ2xvYl90b19yZShyJ2Zvb1xcKicpLCByJ2Zvb1xcXFxbXi9dKlxaKD9tcyknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKF9nbG9iX3RvX3JlKHInZm9vXFxcKicpLCByJ2Zvb1xcXFxcXFteL10qXFooP21zKScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoX2dsb2JfdG9fcmUoJ2Zvbz8/Pz8nKSwgcidmb29bXi9dW14vXVteL11bXi9dXFooP21zKScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoX2dsb2JfdG9fcmUocidmb29cXD8/JyksIHInZm9vXFxcXFteL11bXi9dXFooP21zKScpCisKKyAgICBkZWYgdGVzdF9yZW1vdmVfZHVwbGljYXRlcyhzZWxmKToKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIG1hbmlmZXN0LmZpbGVzID0gWydhJywgJ2InLCAnYScsICdnJywgJ2MnLCAnZyddCisgICAgICAgICMgZmlsZXMgbXVzdCBiZSBzb3J0ZWQgYmVmb3JlaGFuZAorICAgICAgICBtYW5pZmVzdC5zb3J0KCkKKyAgICAgICAgbWFuaWZlc3QucmVtb3ZlX2R1cGxpY2F0ZXMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2EnLCAnYicsICdjJywgJ2cnXSkKKworICAgIGRlZiB0ZXN0X3RyYW5zbGF0ZV9wYXR0ZXJuKHNlbGYpOgorICAgICAgICAjIGJsYWNrYm94IHRlc3Qgb2YgYSBwcml2YXRlIGZ1bmN0aW9uCisKKyAgICAgICAgIyBub3QgcmVnZXgKKyAgICAgICAgcGF0dGVybiA9IF90cmFuc2xhdGVfcGF0dGVybignYScsIGFuY2hvcj1UcnVlLCBpc19yZWdleD1GYWxzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhc2F0dHIocGF0dGVybiwgJ3NlYXJjaCcpKQorCisgICAgICAgICMgaXMgYSByZWdleAorICAgICAgICByZWdleCA9IHJlLmNvbXBpbGUoJ2EnKQorICAgICAgICBwYXR0ZXJuID0gX3RyYW5zbGF0ZV9wYXR0ZXJuKHJlZ2V4LCBhbmNob3I9VHJ1ZSwgaXNfcmVnZXg9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwYXR0ZXJuLCByZWdleCkKKworICAgICAgICAjIHBsYWluIHN0cmluZyBmbGFnZ2VkIGFzIHJlZ2V4CisgICAgICAgIHBhdHRlcm4gPSBfdHJhbnNsYXRlX3BhdHRlcm4oJ2EnLCBhbmNob3I9VHJ1ZSwgaXNfcmVnZXg9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhc2F0dHIocGF0dGVybiwgJ3NlYXJjaCcpKQorCisgICAgICAgICMgZ2xvYiBzdXBwb3J0CisgICAgICAgIHBhdHRlcm4gPSBfdHJhbnNsYXRlX3BhdHRlcm4oJyoucHknLCBhbmNob3I9VHJ1ZSwgaXNfcmVnZXg9RmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShwYXR0ZXJuLnNlYXJjaCgnZmlsZWxpc3QucHknKSkKKworICAgIGRlZiB0ZXN0X2V4Y2x1ZGVfcGF0dGVybihzZWxmKToKKyAgICAgICAgIyByZXR1cm4gRmFsc2UgaWYgbm8gbWF0Y2gKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UobWFuaWZlc3QuZXhjbHVkZV9wYXR0ZXJuKCcqLnB5JykpCisKKyAgICAgICAgIyByZXR1cm4gVHJ1ZSBpZiBmaWxlcyBtYXRjaAorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QuZmlsZXMgPSBbJ2EucHknLCAnYi5weSddCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYW5pZmVzdC5leGNsdWRlX3BhdHRlcm4oJyoucHknKSkKKworICAgICAgICAjIHRlc3QgZXhjbHVkZXMKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIG1hbmlmZXN0LmZpbGVzID0gWydhLnB5JywgJ2EudHh0J10KKyAgICAgICAgbWFuaWZlc3QuZXhjbHVkZV9wYXR0ZXJuKCcqLnB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydhLnR4dCddKQorCisgICAgZGVmIHRlc3RfaW5jbHVkZV9wYXR0ZXJuKHNlbGYpOgorICAgICAgICAjIHJldHVybiBGYWxzZSBpZiBubyBtYXRjaAorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QuYWxsZmlsZXMgPSBbXQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG1hbmlmZXN0Ll9pbmNsdWRlX3BhdHRlcm4oJyoucHknKSkKKworICAgICAgICAjIHJldHVybiBUcnVlIGlmIGZpbGVzIG1hdGNoCisgICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3QoKQorICAgICAgICBtYW5pZmVzdC5hbGxmaWxlcyA9IFsnYS5weScsICdiLnR4dCddCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYW5pZmVzdC5faW5jbHVkZV9wYXR0ZXJuKCcqLnB5JykpCisKKyAgICAgICAgIyB0ZXN0ICogbWF0Y2hlcyBhbGwgZmlsZXMKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKG1hbmlmZXN0LmFsbGZpbGVzKQorICAgICAgICBtYW5pZmVzdC5hbGxmaWxlcyA9IFsnYS5weScsICdiLnR4dCddCisgICAgICAgIG1hbmlmZXN0Ll9pbmNsdWRlX3BhdHRlcm4oJyonKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmFsbGZpbGVzLCBbJ2EucHknLCAnYi50eHQnXSkKKworICAgIGRlZiB0ZXN0X3Byb2Nlc3NfdGVtcGxhdGUoc2VsZik6CisgICAgICAgICMgaW52YWxpZCBsaW5lcworICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgZm9yIGFjdGlvbiBpbiAoJ2luY2x1ZGUnLCAnZXhjbHVkZScsICdnbG9iYWwtaW5jbHVkZScsCisgICAgICAgICAgICAgICAgICAgICAgICdnbG9iYWwtZXhjbHVkZScsICdyZWN1cnNpdmUtaW5jbHVkZScsCisgICAgICAgICAgICAgICAgICAgICAgICdyZWN1cnNpdmUtZXhjbHVkZScsICdncmFmdCcsICdwcnVuZScpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nVGVtcGxhdGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUsIGFjdGlvbikKKworICAgICAgICAjIGltcGxpY2l0IGluY2x1ZGUKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIG1hbmlmZXN0LmFsbGZpbGVzID0gWydhLnB5JywgJ2IudHh0JywgJ2QvYy5weSddCisKKyAgICAgICAgbWFuaWZlc3QuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZSgnKi5weScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFuaWZlc3QuZmlsZXMsIFsnYS5weSddKQorICAgICAgICBzZWxmLmFzc2VydE5vV2FybmluZ3MoKQorCisgICAgICAgICMgaW5jbHVkZQorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QuYWxsZmlsZXMgPSBbJ2EucHknLCAnYi50eHQnLCAnZC9jLnB5J10KKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdpbmNsdWRlICoucHknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2EucHknXSkKKyAgICAgICAgc2VsZi5hc3NlcnROb1dhcm5pbmdzKCkKKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdpbmNsdWRlICoucmInKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2EucHknXSkKKyAgICAgICAgc2VsZi5hc3NlcnRXYXJuaW5ncygpCisKKyAgICAgICAgIyBleGNsdWRlCisgICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3QoKQorICAgICAgICBtYW5pZmVzdC5maWxlcyA9IFsnYS5weScsICdiLnR4dCcsICdkL2MucHknXQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ2V4Y2x1ZGUgKi5weScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFuaWZlc3QuZmlsZXMsIFsnYi50eHQnLCAnZC9jLnB5J10pCisgICAgICAgIHNlbGYuYXNzZXJ0Tm9XYXJuaW5ncygpCisKKyAgICAgICAgbWFuaWZlc3QuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZSgnZXhjbHVkZSAqLnJiJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydiLnR4dCcsICdkL2MucHknXSkKKyAgICAgICAgc2VsZi5hc3NlcnRXYXJuaW5ncygpCisKKyAgICAgICAgIyBnbG9iYWwtaW5jbHVkZQorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QuYWxsZmlsZXMgPSBbJ2EucHknLCAnYi50eHQnLCAnZC9jLnB5J10KKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdnbG9iYWwtaW5jbHVkZSAqLnB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydhLnB5JywgJ2QvYy5weSddKQorICAgICAgICBzZWxmLmFzc2VydE5vV2FybmluZ3MoKQorCisgICAgICAgIG1hbmlmZXN0Ll9wcm9jZXNzX3RlbXBsYXRlX2xpbmUoJ2dsb2JhbC1pbmNsdWRlICoucmInKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2EucHknLCAnZC9jLnB5J10pCisgICAgICAgIHNlbGYuYXNzZXJ0V2FybmluZ3MoKQorCisgICAgICAgICMgZ2xvYmFsLWV4Y2x1ZGUKKyAgICAgICAgbWFuaWZlc3QgPSBNYW5pZmVzdCgpCisgICAgICAgIG1hbmlmZXN0LmZpbGVzID0gWydhLnB5JywgJ2IudHh0JywgJ2QvYy5weSddCisKKyAgICAgICAgbWFuaWZlc3QuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZSgnZ2xvYmFsLWV4Y2x1ZGUgKi5weScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFuaWZlc3QuZmlsZXMsIFsnYi50eHQnXSkKKyAgICAgICAgc2VsZi5hc3NlcnROb1dhcm5pbmdzKCkKKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdnbG9iYWwtZXhjbHVkZSAqLnJiJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydiLnR4dCddKQorICAgICAgICBzZWxmLmFzc2VydFdhcm5pbmdzKCkKKworICAgICAgICAjIHJlY3Vyc2l2ZS1pbmNsdWRlCisgICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3QoKQorICAgICAgICBtYW5pZmVzdC5hbGxmaWxlcyA9IFsnYS5weScsICdkL2IucHknLCAnZC9jLnR4dCcsICdkL2QvZS5weSddCisKKyAgICAgICAgbWFuaWZlc3QuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZSgncmVjdXJzaXZlLWluY2x1ZGUgZCAqLnB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydkL2IucHknLCAnZC9kL2UucHknXSkKKyAgICAgICAgc2VsZi5hc3NlcnROb1dhcm5pbmdzKCkKKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdyZWN1cnNpdmUtaW5jbHVkZSBlICoucHknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2QvYi5weScsICdkL2QvZS5weSddKQorICAgICAgICBzZWxmLmFzc2VydFdhcm5pbmdzKCkKKworICAgICAgICAjIHJlY3Vyc2l2ZS1leGNsdWRlCisgICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3QoKQorICAgICAgICBtYW5pZmVzdC5maWxlcyA9IFsnYS5weScsICdkL2IucHknLCAnZC9jLnR4dCcsICdkL2QvZS5weSddCisKKyAgICAgICAgbWFuaWZlc3QuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZSgncmVjdXJzaXZlLWV4Y2x1ZGUgZCAqLnB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydhLnB5JywgJ2QvYy50eHQnXSkKKyAgICAgICAgc2VsZi5hc3NlcnROb1dhcm5pbmdzKCkKKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdyZWN1cnNpdmUtZXhjbHVkZSBlICoucHknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1hbmlmZXN0LmZpbGVzLCBbJ2EucHknLCAnZC9jLnR4dCddKQorICAgICAgICBzZWxmLmFzc2VydFdhcm5pbmdzKCkKKworICAgICAgICAjIGdyYWZ0CisgICAgICAgIG1hbmlmZXN0ID0gTWFuaWZlc3QoKQorICAgICAgICBtYW5pZmVzdC5hbGxmaWxlcyA9IFsnYS5weScsICdkL2IucHknLCAnZC9kL2UucHknLCAnZi9mLnB5J10KKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdncmFmdCBkJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydkL2IucHknLCAnZC9kL2UucHknXSkKKyAgICAgICAgc2VsZi5hc3NlcnROb1dhcm5pbmdzKCkKKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdncmFmdCBlJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydkL2IucHknLCAnZC9kL2UucHknXSkKKyAgICAgICAgc2VsZi5hc3NlcnRXYXJuaW5ncygpCisKKyAgICAgICAgIyBwcnVuZQorICAgICAgICBtYW5pZmVzdCA9IE1hbmlmZXN0KCkKKyAgICAgICAgbWFuaWZlc3QuZmlsZXMgPSBbJ2EucHknLCAnZC9iLnB5JywgJ2QvZC9lLnB5JywgJ2YvZi5weSddCisKKyAgICAgICAgbWFuaWZlc3QuX3Byb2Nlc3NfdGVtcGxhdGVfbGluZSgncHJ1bmUgZCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFuaWZlc3QuZmlsZXMsIFsnYS5weScsICdmL2YucHknXSkKKyAgICAgICAgc2VsZi5hc3NlcnROb1dhcm5pbmdzKCkKKworICAgICAgICBtYW5pZmVzdC5fcHJvY2Vzc190ZW1wbGF0ZV9saW5lKCdwcnVuZSBlJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW5pZmVzdC5maWxlcywgWydhLnB5JywgJ2YvZi5weSddKQorICAgICAgICBzZWxmLmFzc2VydFdhcm5pbmdzKCkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoTWFuaWZlc3RUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9tYXJrZXJzLnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21hcmtlcnMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGVjMDQyOQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9tYXJrZXJzLnB5CkBAIC0wLDAgKzEsNzEgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcubWFya2Vycy4iIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHBsYXRmb3JtCitmcm9tIHBhY2thZ2luZy5tYXJrZXJzIGltcG9ydCBpbnRlcnByZXQKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCBMb2dnaW5nQ2F0Y2hlcgorCisKK2NsYXNzIE1hcmtlcnNUZXN0Q2FzZShMb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9pbnRlcnByZXQoc2VsZik6CisgICAgICAgIHN5c19wbGF0Zm9ybSA9IHN5cy5wbGF0Zm9ybQorICAgICAgICB2ZXJzaW9uID0gc3lzLnZlcnNpb24uc3BsaXQoKVswXQorICAgICAgICBvc19uYW1lID0gb3MubmFtZQorICAgICAgICBwbGF0Zm9ybV92ZXJzaW9uID0gcGxhdGZvcm0udmVyc2lvbigpCisgICAgICAgIHBsYXRmb3JtX21hY2hpbmUgPSBwbGF0Zm9ybS5tYWNoaW5lKCkKKyAgICAgICAgcGxhdGZvcm1fcHl0aG9uX2ltcGxlbWVudGF0aW9uID0gcGxhdGZvcm0ucHl0aG9uX2ltcGxlbWVudGF0aW9uKCkKKworICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCJzeXMucGxhdGZvcm0gPT0gJyVzJyIgJSBzeXNfcGxhdGZvcm0pKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KAorICAgICAgICAgICAgInN5cy5wbGF0Zm9ybSA9PSAnJXMnIG9yIHB5dGhvbl92ZXJzaW9uID09ICcyLjQnIiAlIHN5c19wbGF0Zm9ybSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoCisgICAgICAgICAgICAic3lzLnBsYXRmb3JtID09ICclcycgYW5kIHB5dGhvbl9mdWxsX3ZlcnNpb24gPT0gJyVzJyIgJQorICAgICAgICAgICAgKHN5c19wbGF0Zm9ybSwgdmVyc2lvbikpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCInJXMnID09IHN5cy5wbGF0Zm9ybSIgJSBzeXNfcGxhdGZvcm0pKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCdvcy5uYW1lID09ICIlcyInICUgb3NfbmFtZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoCisgICAgICAgICAgICAncGxhdGZvcm0udmVyc2lvbiA9PSAiJXMiIGFuZCBwbGF0Zm9ybS5tYWNoaW5lID09ICIlcyInICUKKyAgICAgICAgICAgIChwbGF0Zm9ybV92ZXJzaW9uLCBwbGF0Zm9ybV9tYWNoaW5lKSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoJ3BsYXRmb3JtLnB5dGhvbl9pbXBsZW1lbnRhdGlvbiA9PSAiJXMiJyAlCisgICAgICAgICAgICBwbGF0Zm9ybV9weXRob25faW1wbGVtZW50YXRpb24pKQorCisgICAgICAgICMgc3R1ZmYgdGhhdCBuZWVkIHRvIHJhaXNlIGEgc3ludGF4IGVycm9yCisgICAgICAgIG9wcyA9ICgnb3MubmFtZSA9PSBvcy5uYW1lJywgJ29zLm5hbWUgPT0gMicsICInMicgPT0gJzInIiwKKyAgICAgICAgICAgICAgICdva3Bqb25vbicsICcnLCAnb3MubmFtZSA9PScsICdweXRob25fdmVyc2lvbiA9PSAyLjQnKQorICAgICAgICBmb3Igb3AgaW4gb3BzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGludGVycHJldCwgb3ApCisKKyAgICAgICAgIyBjb21iaW5lZCBvcGVyYXRpb25zCisgICAgICAgIE9QID0gJ29zLm5hbWUgPT0gIiVzIicgJSBvc19uYW1lCisgICAgICAgIEFORCA9ICcgYW5kICcKKyAgICAgICAgT1IgPSAnIG9yICcKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldChPUCArIEFORCArIE9QKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldChPUCArIEFORCArIE9QICsgQU5EICsgT1ApKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KE9QICsgT1IgKyBPUCkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoT1AgKyBPUiArIE9QICsgT1IgKyBPUCkpCisKKyAgICAgICAgIyBvdGhlciBvcGVyYXRvcnMKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldCgib3MubmFtZSAhPSAnYnV1dXUnIikpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoInB5dGhvbl92ZXJzaW9uID4gJzEuMCciKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldCgicHl0aG9uX3ZlcnNpb24gPCAnNS4wJyIpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCJweXRob25fdmVyc2lvbiA8PSAnNS4wJyIpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCJweXRob25fdmVyc2lvbiA+PSAnMS4wJyIpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCInJXMnIGluIG9zLm5hbWUiICUgb3NfbmFtZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpbnRlcnByZXQoIididXV1dScgbm90IGluIG9zLm5hbWUiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGludGVycHJldCgKKyAgICAgICAgICAgICInYnV1dXUnIG5vdCBpbiBvcy5uYW1lIGFuZCAnJXMnIGluIG9zLm5hbWUiICUgb3NfbmFtZSkpCisKKyAgICAgICAgIyBleGVjdXRpb24gY29udGV4dAorICAgICAgICBzZWxmLmFzc2VydFRydWUoaW50ZXJwcmV0KCdweXRob25fdmVyc2lvbiA9PSAiMC4xIicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeydweXRob25fdmVyc2lvbic6ICcwLjEnfSkpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKE1hcmtlcnNUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9tZXRhZGF0YS5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9tZXRhZGF0YS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NGE3YWYzCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21ldGFkYXRhLnB5CkBAIC0wLDAgKzEsNDU0IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLm1ldGFkYXRhLiIiIgoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitmcm9tIHRleHR3cmFwIGltcG9ydCBkZWRlbnQKK2Zyb20gaW8gaW1wb3J0IFN0cmluZ0lPCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKE1ldGFkYXRhQ29uZmxpY3RFcnJvciwgTWV0YWRhdGFNaXNzaW5nRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNZXRhZGF0YVVucmVjb2duaXplZFZlcnNpb25FcnJvcikKK2Zyb20gcGFja2FnaW5nLm1ldGFkYXRhIGltcG9ydCBNZXRhZGF0YSwgUEtHX0lORk9fUFJFRkVSUkVEX1ZFUlNJT04KKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCAoTG9nZ2luZ0NhdGNoZXIsIFRlbXBkaXJNYW5hZ2VyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVudmlyb25SZXN0b3JlcikKKworCitjbGFzcyBNZXRhZGF0YVRlc3RDYXNlKExvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICBUZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgRW52aXJvblJlc3RvcmVyLAorICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBtYXhEaWZmID0gTm9uZQorICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnSE9NRSddCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKE1ldGFkYXRhVGVzdENhc2UsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi5hcmd2ID0gc3lzLmFyZ3YsIHN5cy5hcmd2WzpdCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIHN5cy5hcmd2ID0gc2VsZi5hcmd2WzBdCisgICAgICAgIHN5cy5hcmd2WzpdID0gc2VsZi5hcmd2WzFdCisgICAgICAgIHN1cGVyKE1ldGFkYXRhVGVzdENhc2UsIHNlbGYpLnRlYXJEb3duKCkKKworICAgICMjIyMgIFRlc3QgdmFyaW91cyBtZXRob2RzIG9mIHRoZSBNZXRhZGF0YSBjbGFzcworCisgICAgZGVmIHRlc3RfaW5zdGFudGlhdGlvbihzZWxmKToKKyAgICAgICAgUEtHX0lORk8gPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgJ1BLRy1JTkZPJykKKyAgICAgICAgd2l0aCBvcGVuKFBLR19JTkZPLCAncicsIGVuY29kaW5nPSd1dGYtOCcpIGFzIGY6CisgICAgICAgICAgICBjb250ZW50cyA9IGYucmVhZCgpCisgICAgICAgIGZwID0gU3RyaW5nSU8oY29udGVudHMpCisKKyAgICAgICAgbSA9IE1ldGFkYXRhKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTWV0YWRhdGFVbnJlY29nbml6ZWRWZXJzaW9uRXJyb3IsIG0uaXRlbXMpCisKKyAgICAgICAgbSA9IE1ldGFkYXRhKFBLR19JTkZPKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtLml0ZW1zKCkpLCAyMikKKworICAgICAgICBtID0gTWV0YWRhdGEoZmlsZW9iaj1mcCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obS5pdGVtcygpKSwgMjIpCisKKyAgICAgICAgbSA9IE1ldGFkYXRhKG1hcHBpbmc9ZGljdChuYW1lPSdUZXN0JywgdmVyc2lvbj0nMS4wJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG0uaXRlbXMoKSksIDExKQorCisgICAgICAgIGQgPSBkaWN0KG0uaXRlbXMoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBNZXRhZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUEtHX0lORk8sIGZpbGVvYmo9ZnApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTWV0YWRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFBLR19JTkZPLCBtYXBwaW5nPWQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTWV0YWRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVvYmo9ZnAsIG1hcHBpbmc9ZCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBNZXRhZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUEtHX0lORk8sIG1hcHBpbmc9bSwgZmlsZW9iaj1mcCkKKworICAgIGRlZiB0ZXN0X21ldGFkYXRhX21hcmtlcnMoc2VsZik6CisgICAgICAgICMgc2VlIGlmIHdlIGNhbiBiZSBwbGF0Zm9ybS1hd2FyZQorICAgICAgICBQS0dfSU5GTyA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnUEtHLUlORk8nKQorICAgICAgICB3aXRoIG9wZW4oUEtHX0lORk8sICdyJywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZjoKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmLnJlYWQoKSAlIHN5cy5wbGF0Zm9ybQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKHBsYXRmb3JtX2RlcGVuZGVudD1UcnVlKQorCisgICAgICAgIG1ldGFkYXRhLnJlYWRfZmlsZShTdHJpbmdJTyhjb250ZW50KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddLCBbJ2JhciddKQorICAgICAgICBtZXRhZGF0YVsnTmFtZSddID0gImJhejsgc3lzLnBsYXRmb3JtID09ICdibGFoJyIKKyAgICAgICAgIyBGSVhNRSBpcyBOb25lIG9yICdVTktOT1dOJyBjb3JyZWN0IGhlcmU/CisgICAgICAgICMgd2hlcmUgaXMgdGhhdCBkb2N1bWVudGVkPworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydOYW1lJ10sIE5vbmUpCisKKyAgICAgICAgIyB0ZXN0IHdpdGggY29udGV4dAorICAgICAgICBjb250ZXh0ID0geydzeXMucGxhdGZvcm0nOiAnb2tvb2snfQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKHBsYXRmb3JtX2RlcGVuZGVudD1UcnVlLCBleGVjdXRpb25fY29udGV4dD1jb250ZXh0KQorICAgICAgICBtZXRhZGF0YS5yZWFkX2ZpbGUoU3RyaW5nSU8oY29udGVudCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSwgWydmb28nXSkKKworICAgIGRlZiB0ZXN0X21hcHBpbmdfYXBpKHNlbGYpOgorICAgICAgICBQS0dfSU5GTyA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnUEtHLUlORk8nKQorICAgICAgICB3aXRoIG9wZW4oUEtHX0lORk8sICdyJywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZjoKKyAgICAgICAgICAgIGNvbnRlbnQgPSBmLnJlYWQoKSAlIHN5cy5wbGF0Zm9ybQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKGZpbGVvYmo9U3RyaW5nSU8oY29udGVudCkpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ1ZlcnNpb24nLCBtZXRhZGF0YS5rZXlzKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJzAuNScsIG1ldGFkYXRhLnZhbHVlcygpKQorICAgICAgICBzZWxmLmFzc2VydEluKCgnVmVyc2lvbicsICcwLjUnKSwgbWV0YWRhdGEuaXRlbXMoKSkKKworICAgICAgICBtZXRhZGF0YS51cGRhdGUoeyd2ZXJzaW9uJzogJzAuNid9KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydWZXJzaW9uJ10sICcwLjYnKQorICAgICAgICBtZXRhZGF0YS51cGRhdGUoWygndmVyc2lvbicsICcwLjcnKV0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ1ZlcnNpb24nXSwgJzAuNycpCisKKyAgICAgICAgIyBtYWtlIHN1cmUgdXBkYXRlIG1ldGhvZCBjaGVja3MgdmFsdWVzIGxpa2UgdGhlIHNldCBtZXRob2QgZG9lcworICAgICAgICBtZXRhZGF0YS51cGRhdGUoeyd2ZXJzaW9uJzogJzEtLTInfSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5nZXRfbG9ncygpKSwgMSkKKworICAgICAgICAjIFhYWCBjYXZlYXQ6IHRoZSBrZXlzIG1ldGhvZCBhbmQgZnJpZW5kcyBhcmUgbm90IDMueC1zdHlsZSB2aWV3cworICAgICAgICAjIHNob3VsZCBiZSBjaGFuZ2VkIG9yIGRvY3VtZW50ZWQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaXN0KG1ldGFkYXRhKSwgbWV0YWRhdGEua2V5cygpKQorCisgICAgZGVmIHRlc3RfcmVhZF9tZXRhZGF0YShzZWxmKToKKyAgICAgICAgZmllbGRzID0geyduYW1lJzogJ3Byb2plY3QnLAorICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4wJywKKyAgICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbic6ICdkZXNjJywKKyAgICAgICAgICAgICAgICAgICdzdW1tYXJ5JzogJ3h4eCcsCisgICAgICAgICAgICAgICAgICAnZG93bmxvYWRfdXJsJzogJ2h0dHA6Ly9leGFtcGxlLmNvbScsCisgICAgICAgICAgICAgICAgICAna2V5d29yZHMnOiBbJ29uZScsICd0d28nXSwKKyAgICAgICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWydmb28nXX0KKworICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKG1hcHBpbmc9ZmllbGRzKQorICAgICAgICBQS0dfSU5GTyA9IFN0cmluZ0lPKCkKKyAgICAgICAgbWV0YWRhdGEud3JpdGVfZmlsZShQS0dfSU5GTykKKyAgICAgICAgUEtHX0lORk8uc2VlaygwKQorCisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoZmlsZW9iaj1QS0dfSU5GTykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWyduYW1lJ10sICdwcm9qZWN0JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsndmVyc2lvbiddLCAnMS4wJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnc3VtbWFyeSddLCAneHh4JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnZG93bmxvYWRfdXJsJ10sICdodHRwOi8vZXhhbXBsZS5jb20nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydrZXl3b3JkcyddLCBbJ29uZScsICd0d28nXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsncGxhdGZvcm0nXSwgW10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ29ic29sZXRlcyddLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsncmVxdWlyZXMtZGlzdCddLCBbJ2ZvbyddKQorCisgICAgZGVmIHRlc3Rfd3JpdGVfbWV0YWRhdGEoc2VsZik6CisgICAgICAgICMgY2hlY2sgc3VwcG9ydCBvZiBub24tQVNDSUkgdmFsdWVzCisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBteV9maWxlID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdmJykKKworICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKG1hcHBpbmc9eydhdXRob3InOiAnTWlzdGVyIENhZsOpJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICdteS5wcm9qZWN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYXV0aG9yJzogJ0NhZsOpIEp1bmlvcicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N1bW1hcnknOiAnQ2Fmw6kgdG9ycsOpZmnDqScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJzogJ0jDqWjDqWjDqScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2tleXdvcmRzJzogWydjYWbDqScsICdjb2ZmZWUnXX0pCisgICAgICAgIG1ldGFkYXRhLndyaXRlKG15X2ZpbGUpCisKKyAgICAgICAgIyB0aGUgZmlsZSBzaG91bGQgdXNlIFVURi04CisgICAgICAgIG1ldGFkYXRhMiA9IE1ldGFkYXRhKCkKKyAgICAgICAgd2l0aCBvcGVuKG15X2ZpbGUsIGVuY29kaW5nPSd1dGYtOCcpIGFzIGZwOgorICAgICAgICAgICAgbWV0YWRhdGEyLnJlYWRfZmlsZShmcCkKKworICAgICAgICAjIFhYWCB3aGVuIGtleXdvcmRzIGFyZSBub3QgZGVmaW5lZCwgbWV0YWRhdGEgd2lsbCBoYXZlCisgICAgICAgICMgJ0tleXdvcmRzJzogW10gYnV0IG1ldGFkYXRhMiB3aWxsIGhhdmUgJ0tleXdvcmRzJzogWycnXQorICAgICAgICAjIGJlY2F1c2Ugb2YgYSB2YWx1ZS5zcGxpdCgnLCcpIGluIE1ldGFkYXRhLmdldAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhLml0ZW1zKCksIG1ldGFkYXRhMi5pdGVtcygpKQorCisgICAgICAgICMgQVNDSUkgYWxzbyB3b3JrcywgaXQncyBhIHN1YnNldCBvZiBVVEYtOAorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKG1hcHBpbmc9eydhdXRob3InOiAnTWlzdGVyIENhZmUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICduYW1lJzogJ215LnByb2plY3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhdXRob3InOiAnQ2FmZSBKdW5pb3InLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzdW1tYXJ5JzogJ0NhZmUgdG9ycmVmaWUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbic6ICdIZWhlaGUnfSkKKyAgICAgICAgbWV0YWRhdGEud3JpdGUobXlfZmlsZSkKKworICAgICAgICBtZXRhZGF0YTIgPSBNZXRhZGF0YSgpCisgICAgICAgIHdpdGggb3BlbihteV9maWxlLCBlbmNvZGluZz0ndXRmLTgnKSBhcyBmcDoKKyAgICAgICAgICAgIG1ldGFkYXRhMi5yZWFkX2ZpbGUoZnApCisKKyAgICBkZWYgdGVzdF9tZXRhZGF0YV9yZWFkX3dyaXRlKHNlbGYpOgorICAgICAgICBQS0dfSU5GTyA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnUEtHLUlORk8nKQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKFBLR19JTkZPKQorICAgICAgICBvdXQgPSBTdHJpbmdJTygpCisgICAgICAgIG1ldGFkYXRhLndyaXRlX2ZpbGUob3V0KQorCisgICAgICAgIG91dC5zZWVrKDApCisgICAgICAgIHJlcyA9IE1ldGFkYXRhKCkKKyAgICAgICAgcmVzLnJlYWRfZmlsZShvdXQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGEudmFsdWVzKCksIHJlcy52YWx1ZXMoKSkKKworICAgICMjIyMgIFRlc3QgY2hlY2tzCisKKyAgICBkZWYgdGVzdF9jaGVja192ZXJzaW9uKHNlbGYpOgorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICAgICAgbWV0YWRhdGFbJ05hbWUnXSA9ICd2aW1wZGInCisgICAgICAgIG1ldGFkYXRhWydIb21lLXBhZ2UnXSA9ICdodHRwOi8vcHlwaS5weXRob24ub3JnJworICAgICAgICBtZXRhZGF0YVsnQXV0aG9yJ10gPSAnTW9udHkgUHl0aG9uJworICAgICAgICBtZXRhZGF0YS5kb2N1dGlsc19zdXBwb3J0ID0gRmFsc2UKKyAgICAgICAgbWlzc2luZywgd2FybmluZ3MgPSBtZXRhZGF0YS5jaGVjaygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWlzc2luZywgWydWZXJzaW9uJ10pCisKKyAgICBkZWYgdGVzdF9jaGVja192ZXJzaW9uX3N0cmljdChzZWxmKToKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhWydOYW1lJ10gPSAndmltcGRiJworICAgICAgICBtZXRhZGF0YVsnSG9tZS1wYWdlJ10gPSAnaHR0cDovL3B5cGkucHl0aG9uLm9yZycKKyAgICAgICAgbWV0YWRhdGFbJ0F1dGhvciddID0gJ01vbnR5IFB5dGhvbicKKyAgICAgICAgbWV0YWRhdGEuZG9jdXRpbHNfc3VwcG9ydCA9IEZhbHNlCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1ldGFkYXRhTWlzc2luZ0Vycm9yLCBtZXRhZGF0YS5jaGVjaywgc3RyaWN0PVRydWUpCisKKyAgICBkZWYgdGVzdF9jaGVja19uYW1lKHNlbGYpOgorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICAgICAgbWV0YWRhdGFbJ1ZlcnNpb24nXSA9ICcxLjAnCisgICAgICAgIG1ldGFkYXRhWydIb21lLXBhZ2UnXSA9ICdodHRwOi8vcHlwaS5weXRob24ub3JnJworICAgICAgICBtZXRhZGF0YVsnQXV0aG9yJ10gPSAnTW9udHkgUHl0aG9uJworICAgICAgICBtZXRhZGF0YS5kb2N1dGlsc19zdXBwb3J0ID0gRmFsc2UKKyAgICAgICAgbWlzc2luZywgd2FybmluZ3MgPSBtZXRhZGF0YS5jaGVjaygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWlzc2luZywgWydOYW1lJ10pCisKKyAgICBkZWYgdGVzdF9jaGVja19uYW1lX3N0cmljdChzZWxmKToKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhWydWZXJzaW9uJ10gPSAnMS4wJworICAgICAgICBtZXRhZGF0YVsnSG9tZS1wYWdlJ10gPSAnaHR0cDovL3B5cGkucHl0aG9uLm9yZycKKyAgICAgICAgbWV0YWRhdGFbJ0F1dGhvciddID0gJ01vbnR5IFB5dGhvbicKKyAgICAgICAgbWV0YWRhdGEuZG9jdXRpbHNfc3VwcG9ydCA9IEZhbHNlCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1ldGFkYXRhTWlzc2luZ0Vycm9yLCBtZXRhZGF0YS5jaGVjaywgc3RyaWN0PVRydWUpCisKKyAgICBkZWYgdGVzdF9jaGVja19hdXRob3Ioc2VsZik6CisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YVsnVmVyc2lvbiddID0gJzEuMCcKKyAgICAgICAgbWV0YWRhdGFbJ05hbWUnXSA9ICd2aW1wZGInCisgICAgICAgIG1ldGFkYXRhWydIb21lLXBhZ2UnXSA9ICdodHRwOi8vcHlwaS5weXRob24ub3JnJworICAgICAgICBtZXRhZGF0YS5kb2N1dGlsc19zdXBwb3J0ID0gRmFsc2UKKyAgICAgICAgbWlzc2luZywgd2FybmluZ3MgPSBtZXRhZGF0YS5jaGVjaygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWlzc2luZywgWydBdXRob3InXSkKKworICAgIGRlZiB0ZXN0X2NoZWNrX2hvbWVwYWdlKHNlbGYpOgorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICAgICAgbWV0YWRhdGFbJ1ZlcnNpb24nXSA9ICcxLjAnCisgICAgICAgIG1ldGFkYXRhWydOYW1lJ10gPSAndmltcGRiJworICAgICAgICBtZXRhZGF0YVsnQXV0aG9yJ10gPSAnTW9udHkgUHl0aG9uJworICAgICAgICBtZXRhZGF0YS5kb2N1dGlsc19zdXBwb3J0ID0gRmFsc2UKKyAgICAgICAgbWlzc2luZywgd2FybmluZ3MgPSBtZXRhZGF0YS5jaGVjaygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWlzc2luZywgWydIb21lLXBhZ2UnXSkKKworICAgIGRlZiB0ZXN0X2NoZWNrX3ByZWRpY2F0ZXMoc2VsZik6CisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YVsnVmVyc2lvbiddID0gJ3JyJworICAgICAgICBtZXRhZGF0YVsnTmFtZSddID0gJ3ZpbXBkYicKKyAgICAgICAgbWV0YWRhdGFbJ0hvbWUtcGFnZSddID0gJ2h0dHA6Ly9weXBpLnB5dGhvbi5vcmcnCisgICAgICAgIG1ldGFkYXRhWydBdXRob3InXSA9ICdNb250eSBQeXRob24nCisgICAgICAgIG1ldGFkYXRhWydSZXF1aXJlcy1kaXN0J10gPSBbJ0ZvbyAoYSknXQorICAgICAgICBtZXRhZGF0YVsnT2Jzb2xldGVzLWRpc3QnXSA9IFsnRm9vIChhKSddCisgICAgICAgIG1ldGFkYXRhWydQcm92aWRlcy1kaXN0J10gPSBbJ0ZvbyAoYSknXQorICAgICAgICBtaXNzaW5nLCB3YXJuaW5ncyA9IG1ldGFkYXRhLmNoZWNrKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4od2FybmluZ3MpLCA0KQorCisgICAgIyMjIyAgVGVzdCBmaWVsZHMgYW5kIG1ldGFkYXRhIHZlcnNpb25zCisKKyAgICBkZWYgdGVzdF9tZXRhZGF0YV92ZXJzaW9ucyhzZWxmKToKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YShtYXBwaW5nPXsnbmFtZSc6ICdwcm9qZWN0JywgJ3ZlcnNpb24nOiAnMS4wJ30pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ01ldGFkYXRhLVZlcnNpb24nXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQS0dfSU5GT19QUkVGRVJSRURfVkVSU0lPTikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignUHJvdmlkZXMnLCBtZXRhZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignUmVxdWlyZXMnLCBtZXRhZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignT2Jzb2xldGVzJywgbWV0YWRhdGEpCisKKyAgICAgICAgbWV0YWRhdGFbJ0NsYXNzaWZpZXInXSA9IFsnb2snXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10sICcxLjEnKQorCisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YVsnRG93bmxvYWQtVVJMJ10gPSAnb2snCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ01ldGFkYXRhLVZlcnNpb24nXSwgJzEuMScpCisKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhWydPYnNvbGV0ZXMnXSA9ICdvaycKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnTWV0YWRhdGEtVmVyc2lvbiddLCAnMS4xJykKKworICAgICAgICBkZWwgbWV0YWRhdGFbJ09ic29sZXRlcyddCisgICAgICAgIG1ldGFkYXRhWydPYnNvbGV0ZXMtRGlzdCddID0gJ29rJworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10sICcxLjInKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1ldGFkYXRhQ29uZmxpY3RFcnJvciwgbWV0YWRhdGEuc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAnT2Jzb2xldGVzJywgJ29rJykKKworICAgICAgICBkZWwgbWV0YWRhdGFbJ09ic29sZXRlcyddCisgICAgICAgIGRlbCBtZXRhZGF0YVsnT2Jzb2xldGVzLURpc3QnXQorICAgICAgICBtZXRhZGF0YVsnVmVyc2lvbiddID0gJzEnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ01ldGFkYXRhLVZlcnNpb24nXSwgJzEuMCcpCisKKyAgICAgICAgIyBtYWtlIHN1cmUgdGhlIF9iZXN0X3ZlcnNpb24gZnVuY3Rpb24gd29ya3Mgb2theSB3aXRoCisgICAgICAgICMgbm9uLWNvbmZsaWN0aW5nIGZpZWxkcyBmcm9tIDEuMSBhbmQgMS4yIChpLmUuIHdlIHdhbnQgb25seSB0aGUKKyAgICAgICAgIyByZXF1aXJlcy9yZXF1aXJlcy1kaXN0IGFuZCBjby4gcGFpcnMgdG8gY2F1c2UgYSBjb25mbGljdCwgbm90IGFsbAorICAgICAgICAjIGZpZWxkcyBpbiBfMzE0X01BUktFUlMpCisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YVsnUmVxdWlyZXMtUHl0aG9uJ10gPSAnMycKKyAgICAgICAgbWV0YWRhdGFbJ0NsYXNzaWZpZXInXSA9IFsnUHJvZ3JhbW1pbmcgbGFuZ3VhZ2UgOjogUHl0aG9uIDo6IDMnXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10sICcxLjInKQorCisgICAgICAgIFBLR19JTkZPID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdTRVRVUFRPT0xTLVBLRy1JTkZPJykKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YShQS0dfSU5GTykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnTWV0YWRhdGEtVmVyc2lvbiddLCAnMS4wJykKKworICAgICAgICBQS0dfSU5GTyA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnU0VUVVBUT09MUy1QS0ctSU5GTzInKQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKFBLR19JTkZPKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10sICcxLjEnKQorCisgICAgICAgICMgVXBkYXRlIHRoZSBfZmllbGRzIGRpY3QgZGlyZWN0bHkgdG8gcHJldmVudCAnTWV0YWRhdGEtVmVyc2lvbicKKyAgICAgICAgIyBmcm9tIGJlaW5nIHVwZGF0ZWQgYnkgdGhlIF9zZXRfYmVzdF92ZXJzaW9uKCkgbWV0aG9kLgorICAgICAgICBtZXRhZGF0YS5fZmllbGRzWydNZXRhZGF0YS1WZXJzaW9uJ10gPSAnMS42MTgnCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE1ldGFkYXRhVW5yZWNvZ25pemVkVmVyc2lvbkVycm9yLCBtZXRhZGF0YS5rZXlzKQorCisgICAgZGVmIHRlc3RfdmVyc2lvbihzZWxmKToKKyAgICAgICAgTWV0YWRhdGEobWFwcGluZz17J2F1dGhvcic6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnbmFtZSc6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAndmVyc2lvbic6ICd4eHgnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnaG9tZV9wYWdlJzogJ3h4eHgnfSkKKyAgICAgICAgbG9ncyA9IHNlbGYuZ2V0X2xvZ3MoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihsb2dzKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignbm90IGEgdmFsaWQgdmVyc2lvbicsIGxvZ3NbMF0pCisKKyAgICBkZWYgdGVzdF9kZXNjcmlwdGlvbihzZWxmKToKKyAgICAgICAgUEtHX0lORk8gPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgJ1BLRy1JTkZPJykKKyAgICAgICAgd2l0aCBvcGVuKFBLR19JTkZPLCAncicsIGVuY29kaW5nPSd1dGYtOCcpIGFzIGY6CisgICAgICAgICAgICBjb250ZW50ID0gZi5yZWFkKCkgJSBzeXMucGxhdGZvcm0KKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhLnJlYWRfZmlsZShTdHJpbmdJTyhjb250ZW50KSkKKworICAgICAgICAjIHNlZSBpZiB3ZSBjYW4gcmVhZCB0aGUgZGVzY3JpcHRpb24gbm93CisgICAgICAgIERFU0MgPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgJ0xPTkdfREVTQy50eHQnKQorICAgICAgICB3aXRoIG9wZW4oREVTQykgYXMgZjoKKyAgICAgICAgICAgIHdhbnRlZCA9IGYucmVhZCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod2FudGVkLCBtZXRhZGF0YVsnRGVzY3JpcHRpb24nXSkKKworICAgICAgICAjIHNhdmUgdGhlIGZpbGUgc29tZXdoZXJlIGFuZCBtYWtlIHN1cmUgd2UgY2FuIHJlYWQgaXQgYmFjaworICAgICAgICBvdXQgPSBTdHJpbmdJTygpCisgICAgICAgIG1ldGFkYXRhLndyaXRlX2ZpbGUob3V0KQorICAgICAgICBvdXQuc2VlaygwKQorCisgICAgICAgIG91dC5zZWVrKDApCisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YS5yZWFkX2ZpbGUob3V0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdhbnRlZCwgbWV0YWRhdGFbJ0Rlc2NyaXB0aW9uJ10pCisKKyAgICBkZWYgdGVzdF9kZXNjcmlwdGlvbl9mb2xkaW5nKHNlbGYpOgorICAgICAgICAjIG1ha2Ugc3VyZSB0aGUgaW5kZW50YXRpb24gaXMgcHJlc2VydmVkCisgICAgICAgIG91dCA9IFN0cmluZ0lPKCkKKyAgICAgICAgZGVzYyA9IGRlZGVudCgiIiJcCisgICAgICAgIGV4YW1wbGU6OgorICAgICAgICAgICAgICBXZSBzdGFydCBoZXJlCisgICAgICAgICAgICBhbmQgY29udGludWUgaGVyZQorICAgICAgICAgIGFuZCBlbmQgaGVyZS4KKyAgICAgICAgIiIiKQorCisgICAgICAgIG1ldGFkYXRhID0gTWV0YWRhdGEoKQorICAgICAgICBtZXRhZGF0YVsnZGVzY3JpcHRpb24nXSA9IGRlc2MKKyAgICAgICAgbWV0YWRhdGEud3JpdGVfZmlsZShvdXQpCisKKyAgICAgICAgZm9sZGVkX2Rlc2MgPSBkZXNjLnJlcGxhY2UoJ1xuJywgJ1xuJyArICg3ICogJyAnKSArICd8JykKKyAgICAgICAgc2VsZi5hc3NlcnRJbihmb2xkZWRfZGVzYywgb3V0LmdldHZhbHVlKCkpCisKKyAgICBkZWYgdGVzdF9wcm9qZWN0X3VybChzZWxmKToKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhWydQcm9qZWN0LVVSTCddID0gWygnb25lJywgJ2h0dHA6Ly9vaycpXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydQcm9qZWN0LVVSTCddLCBbKCdvbmUnLCAnaHR0cDovL29rJyldKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydNZXRhZGF0YS1WZXJzaW9uJ10sICcxLjInKQorCisgICAgICAgICMgbWFrZSBzdXJlIHRoaXMgcGFydGljdWxhciBmaWVsZCBpcyBoYW5kbGVkIHByb3Blcmx5IHdoZW4gd3JpdHRlbgorICAgICAgICBmcCA9IFN0cmluZ0lPKCkKKyAgICAgICAgbWV0YWRhdGEud3JpdGVfZmlsZShmcCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignUHJvamVjdC1VUkw6IG9uZSxodHRwOi8vb2snLCBmcC5nZXR2YWx1ZSgpLnNwbGl0KCdcbicpKQorCisgICAgICAgIGZwLnNlZWsoMCkKKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YSgpCisgICAgICAgIG1ldGFkYXRhLnJlYWRfZmlsZShmcCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnUHJvamVjdC1VcmwnXSwgWygnb25lJywgJ2h0dHA6Ly9vaycpXSkKKworICAgICMgVE9ETyBjb3B5IHRlc3RzIGZvciB2MS4xIHJlcXVpcmVzLCBvYnNvbGV0ZXMgYW5kIHByb3ZpZGVzIGZyb20gZGlzdHV0aWxzCisgICAgIyAodGhleSdyZSB1c2VsZXNzIGJ1dCB3ZSBzdXBwb3J0IHRoZW0gc28gd2Ugc2hvdWxkIHRlc3QgdGhlbSBhbnl3YXkpCisKKyAgICBkZWYgdGVzdF9wcm92aWRlc19kaXN0KHNlbGYpOgorICAgICAgICBmaWVsZHMgPSB7J25hbWUnOiAncHJvamVjdCcsCisgICAgICAgICAgICAgICAgICAndmVyc2lvbic6ICcxLjAnLAorICAgICAgICAgICAgICAgICAgJ3Byb3ZpZGVzX2Rpc3QnOiBbJ3Byb2plY3QnLCAnbXkucHJvamVjdCddfQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKG1hcHBpbmc9ZmllbGRzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1ldGFkYXRhWydQcm92aWRlcy1EaXN0J10sCisgICAgICAgICAgICAgICAgICAgICAgICAgWydwcm9qZWN0JywgJ215LnByb2plY3QnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnTWV0YWRhdGEtVmVyc2lvbiddLCAnMS4yJywgbWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ1JlcXVpcmVzJywgbWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ09ic29sZXRlcycsIG1ldGFkYXRhKQorCisgICAgQHVuaXR0ZXN0LnNraXAoJ25lZWRzIHRvIGJlIGltcGxlbWVudGVkJykKKyAgICBkZWYgdGVzdF9wcm92aWRlc19pbGxlZ2FsKHNlbGYpOgorICAgICAgICAjIFRPRE8gY2hlY2sgdGhlIHZlcnNpb25zIChsaWtlIGRpc3R1dGlscyBkb2VzIGZvciBvbGQgcHJvdmlkZXMgZmllbGQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIE1ldGFkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICBtYXBwaW5nPXsnbmFtZSc6ICdwcm9qZWN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4wJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Byb3ZpZGVzX2Rpc3QnOiBbJ215LnBrZyAoc3BsYXQpJ119KQorCisgICAgZGVmIHRlc3RfcmVxdWlyZXNfZGlzdChzZWxmKToKKyAgICAgICAgZmllbGRzID0geyduYW1lJzogJ3Byb2plY3QnLAorICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4wJywKKyAgICAgICAgICAgICAgICAgICdyZXF1aXJlc19kaXN0JzogWydvdGhlcicsICdhbm90aGVyICg9PTEuMCknXX0KKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YShtYXBwaW5nPWZpZWxkcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnUmVxdWlyZXMtRGlzdCddLAorICAgICAgICAgICAgICAgICAgICAgICAgIFsnb3RoZXInLCAnYW5vdGhlciAoPT0xLjApJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ01ldGFkYXRhLVZlcnNpb24nXSwgJzEuMicpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ1Byb3ZpZGVzJywgbWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBbJ290aGVyJywgJ2Fub3RoZXIgKD09MS4wKSddKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKCdPYnNvbGV0ZXMnLCBtZXRhZGF0YSkKKworICAgICAgICAjIG1ha2Ugc3VyZSB3cml0ZV9maWxlIHVzZXMgb25lIFJGQyA4MjIgaGVhZGVyIHBlciBpdGVtCisgICAgICAgIGZwID0gU3RyaW5nSU8oKQorICAgICAgICBtZXRhZGF0YS53cml0ZV9maWxlKGZwKQorICAgICAgICBsaW5lcyA9IGZwLmdldHZhbHVlKCkuc3BsaXQoJ1xuJykKKyAgICAgICAgc2VsZi5hc3NlcnRJbignUmVxdWlyZXMtRGlzdDogb3RoZXInLCBsaW5lcykKKyAgICAgICAgc2VsZi5hc3NlcnRJbignUmVxdWlyZXMtRGlzdDogYW5vdGhlciAoPT0xLjApJywgbGluZXMpCisKKyAgICAgICAgIyB0ZXN0IHdhcm5pbmdzIGZvciBpbnZhbGlkIHZlcnNpb24gcHJlZGljYXRlcworICAgICAgICAjIFhYWCB0aGlzIHdvdWxkIGNhdXNlIG5vIHdhcm5pbmdzIGlmIHdlIHVzZWQgdXBkYXRlIChvciB0aGUgbWFwcGluZworICAgICAgICAjIGFyZ3VtZW50IG9mIHRoZSBjb25zdHJ1Y3RvciksIHNlZSBjb21tZW50IGluIE1ldGFkYXRhLnVwZGF0ZQorICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKyAgICAgICAgbWV0YWRhdGFbJ1JlcXVpcmVzLURpc3QnXSA9ICdGdW5reSAoR3Jvb3ZpZSknCisgICAgICAgIG1ldGFkYXRhWydSZXF1aXJlcy1QeXRob24nXSA9ICcxLTQnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYuZ2V0X2xvZ3MoKSksIDIpCisKKyAgICAgICAgIyB0ZXN0IG11bHRpcGxlIHZlcnNpb24gcHJlZGljYXRlcworICAgICAgICBtZXRhZGF0YSA9IE1ldGFkYXRhKCkKKworICAgICAgICAjIFhYWCBjaGVjayBQRVAgYW5kIHNlZSBpZiAzID09IDMuMAorICAgICAgICBtZXRhZGF0YVsnUmVxdWlyZXMtUHl0aG9uJ10gPSAnPj0yLjYsIDwzLjAnCisgICAgICAgIG1ldGFkYXRhWydSZXF1aXJlcy1EaXN0J10gPSBbJ0ZvbyAoPj0yLjYsIDwzLjApJ10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmdldF9sb2dzKCksIFtdKQorCisgICAgQHVuaXR0ZXN0LnNraXAoJ25lZWRzIHRvIGJlIGltcGxlbWVudGVkJykKKyAgICBkZWYgdGVzdF9yZXF1aXJlc19pbGxlZ2FsKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBNZXRhZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwcGluZz17J25hbWUnOiAncHJvamVjdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdyZXF1aXJlcyc6IFsnbXkucGtnIChzcGxhdCknXX0pCisKKyAgICBkZWYgdGVzdF9vYnNvbGV0ZXNfZGlzdChzZWxmKToKKyAgICAgICAgZmllbGRzID0geyduYW1lJzogJ3Byb2plY3QnLAorICAgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4wJywKKyAgICAgICAgICAgICAgICAgICdvYnNvbGV0ZXNfZGlzdCc6IFsnb3RoZXInLCAnYW5vdGhlciAoPDEuMCknXX0KKyAgICAgICAgbWV0YWRhdGEgPSBNZXRhZGF0YShtYXBwaW5nPWZpZWxkcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtZXRhZGF0YVsnT2Jzb2xldGVzLURpc3QnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBbJ290aGVyJywgJ2Fub3RoZXIgKDwxLjApJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ01ldGFkYXRhLVZlcnNpb24nXSwgJzEuMicpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ1Byb3ZpZGVzJywgbWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ1JlcXVpcmVzJywgbWV0YWRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWV0YWRhdGFbJ09ic29sZXRlcy1EaXN0J10sCisgICAgICAgICAgICAgICAgICAgICAgICAgWydvdGhlcicsICdhbm90aGVyICg8MS4wKSddKQorCisgICAgQHVuaXR0ZXN0LnNraXAoJ25lZWRzIHRvIGJlIGltcGxlbWVudGVkJykKKyAgICBkZWYgdGVzdF9vYnNvbGV0ZXNfaWxsZWdhbChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgTWV0YWRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcHBpbmc9eyduYW1lJzogJ3Byb2plY3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndmVyc2lvbic6ICcxLjAnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb2Jzb2xldGVzJzogWydteS5wa2cgKHNwbGF0KSddfSkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoTWV0YWRhdGFUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSd0ZXN0X3N1aXRlJykKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9taXhpbjJ0bzMucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfbWl4aW4ydG8zLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM0MzliY2IKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfbWl4aW4ydG8zLnB5CkBAIC0wLDAgKzEsODEgQEAKK2ltcG9ydCB0ZXh0d3JhcAorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QsIHN1cHBvcnQKK2Zyb20gcGFja2FnaW5nLmNvbXBhdCBpbXBvcnQgTWl4aW4ydG8zCisKKworY2xhc3MgTWl4aW4ydG8zVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBAc3VwcG9ydC5za2lwXzJ0bzNfb3B0aW1pemUKKyAgICBkZWYgdGVzdF9jb252ZXJ0X2NvZGVfb25seShzZWxmKToKKyAgICAgICAgIyB1c2VkIHRvIGNoZWNrIGlmIGNvZGUgZ2V0cyBjb252ZXJ0ZWQgcHJvcGVybHkuCisgICAgICAgIGNvZGUgPSAicHJpbnQgJ3Rlc3QnIgorCisgICAgICAgIHdpdGggc2VsZi5ta3RlbXBmaWxlKCkgYXMgZnA6CisgICAgICAgICAgICBmcC53cml0ZShjb2RlKQorCisgICAgICAgIG1peGluMnRvMyA9IE1peGluMnRvMygpCisgICAgICAgIG1peGluMnRvMy5fcnVuXzJ0bzMoW2ZwLm5hbWVdKQorICAgICAgICBleHBlY3RlZCA9ICJwcmludCgndGVzdCcpIgorCisgICAgICAgIHdpdGggb3BlbihmcC5uYW1lKSBhcyBmcDoKKyAgICAgICAgICAgIGNvbnZlcnRlZCA9IGZwLnJlYWQoKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhwZWN0ZWQsIGNvbnZlcnRlZCkKKworICAgIGRlZiB0ZXN0X2RvY3Rlc3RzX29ubHkoc2VsZik6CisgICAgICAgICMgdXNlZCB0byBjaGVjayBpZiBkb2N0ZXN0cyBnZXRzIGNvbnZlcnRlZCBwcm9wZXJseS4KKyAgICAgICAgZG9jdGVzdCA9IHRleHR3cmFwLmRlZGVudCgnJydcCisgICAgICAgICAgICAiIiJFeGFtcGxlIGRvY3N0cmluZy4KKworICAgICAgICAgICAgPj4+IHByaW50IHRlc3QKKyAgICAgICAgICAgIHRlc3QKKworICAgICAgICAgICAgSXQgd29ya3MuCisgICAgICAgICAgICAiIiInJycpCisKKyAgICAgICAgd2l0aCBzZWxmLm1rdGVtcGZpbGUoKSBhcyBmcDoKKyAgICAgICAgICAgIGZwLndyaXRlKGRvY3Rlc3QpCisKKyAgICAgICAgbWl4aW4ydG8zID0gTWl4aW4ydG8zKCkKKyAgICAgICAgbWl4aW4ydG8zLl9ydW5fMnRvMyhbZnAubmFtZV0pCisgICAgICAgIGV4cGVjdGVkID0gdGV4dHdyYXAuZGVkZW50KCcnJ1wKKyAgICAgICAgICAgICIiIkV4YW1wbGUgZG9jc3RyaW5nLgorCisgICAgICAgICAgICA+Pj4gcHJpbnQodGVzdCkKKyAgICAgICAgICAgIHRlc3QKKworICAgICAgICAgICAgSXQgd29ya3MuCisgICAgICAgICAgICAiIiJcbicnJykKKworICAgICAgICB3aXRoIG9wZW4oZnAubmFtZSkgYXMgZnA6CisgICAgICAgICAgICBjb252ZXJ0ZWQgPSBmcC5yZWFkKCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCBjb252ZXJ0ZWQpCisKKyAgICBkZWYgdGVzdF9hZGRpdGlvbmFsX2ZpeGVycyhzZWxmKToKKyAgICAgICAgIyB1c2VkIHRvIGNoZWNrIGlmIHVzZV8ydG8zX2ZpeGVycyB3b3JrcworICAgICAgICBjb2RlID0gJ3R5cGUoeCkgaXMgbm90IFQnCisKKyAgICAgICAgd2l0aCBzZWxmLm1rdGVtcGZpbGUoKSBhcyBmcDoKKyAgICAgICAgICAgIGZwLndyaXRlKGNvZGUpCisKKyAgICAgICAgbWl4aW4ydG8zID0gTWl4aW4ydG8zKCkKKyAgICAgICAgbWl4aW4ydG8zLl9ydW5fMnRvMyhmaWxlcz1bZnAubmFtZV0sIGRvY3Rlc3RzPVtmcC5uYW1lXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaXhlcnM9WydwYWNrYWdpbmcudGVzdHMuZml4ZXInXSkKKworICAgICAgICBleHBlY3RlZCA9ICdub3QgaXNpbnN0YW5jZSh4LCBUKScKKworICAgICAgICB3aXRoIG9wZW4oZnAubmFtZSkgYXMgZnA6CisgICAgICAgICAgICBjb252ZXJ0ZWQgPSBmcC5yZWFkKCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCBjb252ZXJ0ZWQpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKE1peGluMnRvM1Rlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21zdmM5Y29tcGlsZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfbXN2Yzljb21waWxlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYzNhZTY1Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X21zdmM5Y29tcGlsZXIucHkKQEAgLTAsMCArMSwxNDAgQEAKKyIiIlRlc3RzIGZvciBwYWNrYWdpbmcuY29tcGlsZXIubXN2Yzljb21waWxlci4iIiIKK2ltcG9ydCBvcworaW1wb3J0IHN5cworCitmcm9tIHBhY2thZ2luZy5lcnJvcnMgaW1wb3J0IFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0LCBzdXBwb3J0CisKK19NQU5JRkVTVCA9ICIiIlwKKzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJ5ZXMiPz4KKzxhc3NlbWJseSB4bWxucz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTphc20udjEiCisgICAgICAgICAgbWFuaWZlc3RWZXJzaW9uPSIxLjAiPgorICA8dHJ1c3RJbmZvIHhtbG5zPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOmFzbS52MyI+CisgICAgPHNlY3VyaXR5PgorICAgICAgPHJlcXVlc3RlZFByaXZpbGVnZXM+CisgICAgICAgIDxyZXF1ZXN0ZWRFeGVjdXRpb25MZXZlbCBsZXZlbD0iYXNJbnZva2VyIiB1aUFjY2Vzcz0iZmFsc2UiPgorICAgICAgICA8L3JlcXVlc3RlZEV4ZWN1dGlvbkxldmVsPgorICAgICAgPC9yZXF1ZXN0ZWRQcml2aWxlZ2VzPgorICAgIDwvc2VjdXJpdHk+CisgIDwvdHJ1c3RJbmZvPgorICA8ZGVwZW5kZW5jeT4KKyAgICA8ZGVwZW5kZW50QXNzZW1ibHk+CisgICAgICA8YXNzZW1ibHlJZGVudGl0eSB0eXBlPSJ3aW4zMiIgbmFtZT0iTWljcm9zb2Z0LlZDOTAuQ1JUIgorICAgICAgICAgdmVyc2lvbj0iOS4wLjIxMDIyLjgiIHByb2Nlc3NvckFyY2hpdGVjdHVyZT0ieDg2IgorICAgICAgICAgcHVibGljS2V5VG9rZW49IlhYWFgiPgorICAgICAgPC9hc3NlbWJseUlkZW50aXR5PgorICAgIDwvZGVwZW5kZW50QXNzZW1ibHk+CisgIDwvZGVwZW5kZW5jeT4KKyAgPGRlcGVuZGVuY3k+CisgICAgPGRlcGVuZGVudEFzc2VtYmx5PgorICAgICAgPGFzc2VtYmx5SWRlbnRpdHkgdHlwZT0id2luMzIiIG5hbWU9Ik1pY3Jvc29mdC5WQzkwLk1GQyIKKyAgICAgICAgdmVyc2lvbj0iOS4wLjIxMDIyLjgiIHByb2Nlc3NvckFyY2hpdGVjdHVyZT0ieDg2IgorICAgICAgICBwdWJsaWNLZXlUb2tlbj0iWFhYWCI+PC9hc3NlbWJseUlkZW50aXR5PgorICAgIDwvZGVwZW5kZW50QXNzZW1ibHk+CisgIDwvZGVwZW5kZW5jeT4KKzwvYXNzZW1ibHk+CisiIiIKKworX0NMRUFORURfTUFOSUZFU1QgPSAiIiJcCis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYtOCIgc3RhbmRhbG9uZT0ieWVzIj8+Cis8YXNzZW1ibHkgeG1sbnM9InVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206YXNtLnYxIgorICAgICAgICAgIG1hbmlmZXN0VmVyc2lvbj0iMS4wIj4KKyAgPHRydXN0SW5mbyB4bWxucz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTphc20udjMiPgorICAgIDxzZWN1cml0eT4KKyAgICAgIDxyZXF1ZXN0ZWRQcml2aWxlZ2VzPgorICAgICAgICA8cmVxdWVzdGVkRXhlY3V0aW9uTGV2ZWwgbGV2ZWw9ImFzSW52b2tlciIgdWlBY2Nlc3M9ImZhbHNlIj4KKyAgICAgICAgPC9yZXF1ZXN0ZWRFeGVjdXRpb25MZXZlbD4KKyAgICAgIDwvcmVxdWVzdGVkUHJpdmlsZWdlcz4KKyAgICA8L3NlY3VyaXR5PgorICA8L3RydXN0SW5mbz4KKyAgPGRlcGVuZGVuY3k+CisKKyAgPC9kZXBlbmRlbmN5PgorICA8ZGVwZW5kZW5jeT4KKyAgICA8ZGVwZW5kZW50QXNzZW1ibHk+CisgICAgICA8YXNzZW1ibHlJZGVudGl0eSB0eXBlPSJ3aW4zMiIgbmFtZT0iTWljcm9zb2Z0LlZDOTAuTUZDIgorICAgICAgICB2ZXJzaW9uPSI5LjAuMjEwMjIuOCIgcHJvY2Vzc29yQXJjaGl0ZWN0dXJlPSJ4ODYiCisgICAgICAgIHB1YmxpY0tleVRva2VuPSJYWFhYIj48L2Fzc2VtYmx5SWRlbnRpdHk+CisgICAgPC9kZXBlbmRlbnRBc3NlbWJseT4KKyAgPC9kZXBlbmRlbmN5PgorPC9hc3NlbWJseT4iIiIKKworCitjbGFzcyBtc3ZjOWNvbXBpbGVyVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gIndpbjMyIiwgInJ1bnMgb25seSBvbiB3aW4zMiIpCisgICAgZGVmIHRlc3Rfbm9fY29tcGlsZXIoc2VsZik6CisgICAgICAgICMgbWFrZSBzdXJlIHF1ZXJ5X3ZjdmFyc2FsbCByYWlzZXMgYSBQYWNrYWdpbmdQbGF0Zm9ybUVycm9yIGlmCisgICAgICAgICMgdGhlIGNvbXBpbGVyIGlzIG5vdCBmb3VuZAorICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlci5tc3ZjY29tcGlsZXIgaW1wb3J0IGdldF9idWlsZF92ZXJzaW9uCisgICAgICAgIGlmIGdldF9idWlsZF92ZXJzaW9uKCkgPCA4LjA6CisgICAgICAgICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgnb25seSBmb3IgTVNWQzguMCBvciBhYm92ZScpCisKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIgaW1wb3J0IG1zdmM5Y29tcGlsZXIKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIubXN2Yzljb21waWxlciBpbXBvcnQgcXVlcnlfdmN2YXJzYWxsCisKKyAgICAgICAgZGVmIF9maW5kX3ZjdmFyc2FsbCh2ZXJzaW9uKToKKyAgICAgICAgICAgIHJldHVybiBOb25lCisKKyAgICAgICAgb2xkX2ZpbmRfdmN2YXJzYWxsID0gbXN2Yzljb21waWxlci5maW5kX3ZjdmFyc2FsbAorICAgICAgICBtc3ZjOWNvbXBpbGVyLmZpbmRfdmN2YXJzYWxsID0gX2ZpbmRfdmN2YXJzYWxsCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IsIHF1ZXJ5X3ZjdmFyc2FsbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3dvbnQgZmluZCB0aGlzIHZlcnNpb24nKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgbXN2Yzljb21waWxlci5maW5kX3ZjdmFyc2FsbCA9IG9sZF9maW5kX3ZjdmFyc2FsbAorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICJ3aW4zMiIsICJydW5zIG9ubHkgb24gd2luMzIiKQorICAgIGRlZiB0ZXN0X3JlZ19jbGFzcyhzZWxmKToKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIubXN2Y2NvbXBpbGVyIGltcG9ydCBnZXRfYnVpbGRfdmVyc2lvbgorICAgICAgICBpZiBnZXRfYnVpbGRfdmVyc2lvbigpIDwgOC4wOgorICAgICAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoInJlcXVpcmVzIE1TVkMgOC4wIG9yIGxhdGVyIikKKworICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlci5tc3ZjOWNvbXBpbGVyIGltcG9ydCBSZWcKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoS2V5RXJyb3IsIFJlZy5nZXRfdmFsdWUsICd4eHgnLCAneHh4JykKKworICAgICAgICAjIGxvb2tpbmcgZm9yIHZhbHVlcyB0aGF0IHNob3VsZCBleGlzdCBvbiBhbGwKKyAgICAgICAgIyB3aW5kb3dzIHJlZ2lzdGVyaWVzIHZlcnNpb25zLgorICAgICAgICBwYXRoID0gcidDb250cm9sIFBhbmVsXERlc2t0b3AnCisgICAgICAgIHYgPSBSZWcuZ2V0X3ZhbHVlKHBhdGgsICdkcmFnZnVsbHdpbmRvd3MnKQorICAgICAgICBzZWxmLmFzc2VydEluKHYsICgnMCcsICcxJywgJzInKSkKKworICAgICAgICBpbXBvcnQgd2lucmVnCisgICAgICAgIEhLQ1UgPSB3aW5yZWcuSEtFWV9DVVJSRU5UX1VTRVIKKyAgICAgICAga2V5cyA9IFJlZy5yZWFkX2tleXMoSEtDVSwgJ3h4eHgnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGtleXMsIE5vbmUpCisKKyAgICAgICAga2V5cyA9IFJlZy5yZWFkX2tleXMoSEtDVSwgcidDb250cm9sIFBhbmVsJykKKyAgICAgICAgc2VsZi5hc3NlcnRJbignRGVza3RvcCcsIGtleXMpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gIndpbjMyIiwgInJ1bnMgb25seSBvbiB3aW4zMiIpCisgICAgZGVmIHRlc3RfcmVtb3ZlX3Zpc3VhbF9jX3JlZihzZWxmKToKKyAgICAgICAgZnJvbSBwYWNrYWdpbmcuY29tcGlsZXIubXN2Y2NvbXBpbGVyIGltcG9ydCBnZXRfYnVpbGRfdmVyc2lvbgorICAgICAgICBpZiBnZXRfYnVpbGRfdmVyc2lvbigpIDwgOC4wOgorICAgICAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoInJlcXVpcmVzIE1TVkMgOC4wIG9yIGxhdGVyIikKKworICAgICAgICBmcm9tIHBhY2thZ2luZy5jb21waWxlci5tc3ZjOWNvbXBpbGVyIGltcG9ydCBNU1ZDQ29tcGlsZXIKKyAgICAgICAgdGVtcGRpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG1hbmlmZXN0ID0gb3MucGF0aC5qb2luKHRlbXBkaXIsICdtYW5pZmVzdCcpCisgICAgICAgIHdpdGggb3BlbihtYW5pZmVzdCwgJ3cnKSBhcyBmOgorICAgICAgICAgICAgZi53cml0ZShfTUFOSUZFU1QpCisKKyAgICAgICAgY29tcGlsZXIgPSBNU1ZDQ29tcGlsZXIoKQorICAgICAgICBjb21waWxlci5fcmVtb3ZlX3Zpc3VhbF9jX3JlZihtYW5pZmVzdCkKKworICAgICAgICAjIHNlZSB3aGF0IHdlIGdvdAorICAgICAgICB3aXRoIG9wZW4obWFuaWZlc3QpIGFzIGY6CisgICAgICAgICAgICAjIHJlbW92aW5nIHRyYWlsaW5nIHNwYWNlcworICAgICAgICAgICAgY29udGVudCA9ICdcbicuam9pbihsaW5lLnJzdHJpcCgpIGZvciBsaW5lIGluIGYucmVhZGxpbmVzKCkpCisKKyAgICAgICAgIyBtYWtlcyBzdXJlIHRoZSBtYW5pZmVzdCB3YXMgcHJvcGVybHkgY2xlYW5lZAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbnRlbnQsIF9DTEVBTkVEX01BTklGRVNUKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShtc3ZjOWNvbXBpbGVyVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfcHlwaV9kaXN0LnB5IGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3B5cGlfZGlzdC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40M2M4Y2JlCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3B5cGlfZGlzdC5weQpAQCAtMCwwICsxLDI4NyBAQAorIiIiVGVzdHMgZm9yIHRoZSBwYWNrYWdpbmcucHlwaS5kaXN0IG1vZHVsZS4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgc2h1dGlsCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBWZXJzaW9uUHJlZGljYXRlCitmcm9tIHBhY2thZ2luZy5weXBpLmRpc3QgaW1wb3J0IChSZWxlYXNlSW5mbywgUmVsZWFzZXNMaXN0LCBEaXN0SW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwbGl0X2FyY2hpdmVfbmFtZSwgZ2V0X2luZm9zX2Zyb21fdXJsKQorZnJvbSBwYWNrYWdpbmcucHlwaS5lcnJvcnMgaW1wb3J0IEhhc2hEb2VzTm90TWF0Y2gsIFVuc3VwcG9ydGVkSGFzaE5hbWUKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCBUZW1wZGlyTWFuYWdlciwgcmVxdWlyZXNfemxpYiwgZmFrZV9kZWMKK3RyeToKKyAgICBpbXBvcnQgdGhyZWFkaW5nCisgICAgZnJvbSBwYWNrYWdpbmcudGVzdHMucHlwaV9zZXJ2ZXIgaW1wb3J0IHVzZV9weXBpX3NlcnZlcgorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHRocmVhZGluZyA9IE5vbmUKKyAgICB1c2VfcHlwaV9zZXJ2ZXIgPSBmYWtlX2RlYworCisKK2RlZiBEaXN0KCphcmdzLCAqKmt3YXJncyk6CisgICAgIyBEaXN0SW5mbyB0YWtlcyBhIHJlbGVhc2UgYXMgYSBmaXJzdCBwYXJhbWV0ZXIsIGF2b2lkIHRoaXMgaW4gdGVzdHMuCisgICAgcmV0dXJuIERpc3RJbmZvKE5vbmUsICphcmdzLCAqKmt3YXJncykKKworCitjbGFzcyBUZXN0UmVsZWFzZUluZm8odW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfaW5zdGFudGlhdGlvbihzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoZSBEaXN0SW5mbyBjbGFzcyBwcm92aWRlcyB1cyB0aGUgZ29vZCBhdHRyaWJ1dGVzIHdoZW4KKyAgICAgICAgIyBnaXZlbiBvbiBjb25zdHJ1Y3Rpb24KKyAgICAgICAgcmVsZWFzZSA9IFJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4xIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiRm9vQmFyIiwgcmVsZWFzZS5uYW1lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCIxLjEiLCAiJXMiICUgcmVsZWFzZS52ZXJzaW9uKQorCisgICAgZGVmIHRlc3RfYWRkX2Rpc3Qoc2VsZik6CisgICAgICAgICMgZW1wdHkgZGlzdHJpYnV0aW9uIHR5cGUgc2hvdWxkIGFzc3VtZSAic2Rpc3QiCisgICAgICAgIHJlbGVhc2UgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMSIpCisgICAgICAgIHJlbGVhc2UuYWRkX2Rpc3RyaWJ1dGlvbih1cmw9Imh0dHA6Ly9leGFtcGxlLm9yZy8iKQorICAgICAgICAjIHNob3VsZCBub3QgZmFpbAorICAgICAgICByZWxlYXNlWydzZGlzdCddCisKKyAgICBkZWYgdGVzdF9nZXRfdW5rbm93bl9kaXN0cmlidXRpb24oc2VsZik6CisgICAgICAgICMgc2hvdWxkIHJhaXNlIGEgS2V5RXJyb3IKKyAgICAgICAgcGFzcworCisgICAgZGVmIHRlc3RfZ2V0X2luZm9zX2Zyb21fdXJsKHNlbGYpOgorICAgICAgICAjIFRlc3QgdGhhdCB0aGUgdGhlIFVSTHMgYXJlIHBhcnNlZCB0aGUgcmlnaHQgd2F5CisgICAgICAgIHVybF9saXN0ID0geworICAgICAgICAgICAgJ0Zvb0Jhci0xLjEuMC50YXIuZ3onOiB7CisgICAgICAgICAgICAgICAgJ25hbWUnOiAnZm9vYmFyJywgICMgbG93ZXJjYXNlIHRoZSBuYW1lCisgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4xLjAnLAorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICdGb28tQmFyLTEuMS4wLnppcCc6IHsKKyAgICAgICAgICAgICAgICAnbmFtZSc6ICdmb28tYmFyJywgICMga2VlcCB0aGUgZGFzaAorICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMS4wJywKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAnZm9vYmFyLTEuMWIyLnRhci5neiNtZDU9MTIzMTIzMTIzMTIzMTIzJzogeworICAgICAgICAgICAgICAgICduYW1lJzogJ2Zvb2JhcicsCisgICAgICAgICAgICAgICAgJ3ZlcnNpb24nOiAnMS4xYjInLAorICAgICAgICAgICAgICAgICd1cmwnOiAnaHR0cDovL2V4YW1wbGUub3JnL2Zvb2Jhci0xLjFiMi50YXIuZ3onLCAgIyBubyBoYXNoCisgICAgICAgICAgICAgICAgJ2hhc2h2YWwnOiAnMTIzMTIzMTIzMTIzMTIzJywKKyAgICAgICAgICAgICAgICAnaGFzaG5hbWUnOiAnbWQ1JywKKyAgICAgICAgICAgIH0sCisgICAgICAgICAgICAnZm9vYmFyLTEuMS1yYzIudGFyLmd6JzogeyAgIyB1c2Ugc3VnZ2VzdGVkIG5hbWUKKyAgICAgICAgICAgICAgICAnbmFtZSc6ICdmb29iYXInLAorICAgICAgICAgICAgICAgICd2ZXJzaW9uJzogJzEuMWMyJywKKyAgICAgICAgICAgICAgICAndXJsJzogJ2h0dHA6Ly9leGFtcGxlLm9yZy9mb29iYXItMS4xLXJjMi50YXIuZ3onLAorICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgZm9yIHVybCwgYXR0cmlidXRlcyBpbiB1cmxfbGlzdC5pdGVtcygpOgorICAgICAgICAgICAgIyBmb3IgZWFjaCB1cmwKKyAgICAgICAgICAgIGluZm9zID0gZ2V0X2luZm9zX2Zyb21fdXJsKCJodHRwOi8vZXhhbXBsZS5vcmcvIiArIHVybCkKKyAgICAgICAgICAgIGZvciBhdHRyaWJ1dGUsIGV4cGVjdGVkIGluIGF0dHJpYnV0ZXMuaXRlbXMoKToKKyAgICAgICAgICAgICAgICBnb3QgPSBpbmZvcy5nZXQoYXR0cmlidXRlKQorICAgICAgICAgICAgICAgIGlmIGF0dHJpYnV0ZSA9PSAidmVyc2lvbiI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIiVzIiAlIGdvdCwgZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnb3QsIGV4cGVjdGVkKQorCisgICAgZGVmIHRlc3Rfc3BsaXRfYXJjaGl2ZV9uYW1lKHNlbGYpOgorICAgICAgICAjIFRlc3Qgd2UgY2FuIHNwbGl0IHRoZSBhcmNoaXZlIG5hbWVzCisgICAgICAgIG5hbWVzID0geworICAgICAgICAgICAgJ2Zvby1iYXItYmF6LTEuMC1yYzInOiAoJ2Zvby1iYXItYmF6JywgJzEuMGMyJyksCisgICAgICAgICAgICAnZm9vLWJhci1iYXotMS4wJzogKCdmb28tYmFyLWJheicsICcxLjAnKSwKKyAgICAgICAgICAgICdmb29iYXJiYXotMS4wJzogKCdmb29iYXJiYXonLCAnMS4wJyksCisgICAgICAgIH0KKyAgICAgICAgZm9yIG5hbWUsIHJlc3VsdHMgaW4gbmFtZXMuaXRlbXMoKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0cywgc3BsaXRfYXJjaGl2ZV9uYW1lKG5hbWUpKQorCisKK2NsYXNzIFRlc3REaXN0SW5mbyhUZW1wZGlyTWFuYWdlciwgdW5pdHRlc3QuVGVzdENhc2UpOgorICAgIHNyY3BhdGggPSAiL3BhY2thZ2VzL3NvdXJjZS9mL2Zvb2Jhci9mb29iYXItMC4xLnRhci5neiIKKworICAgIGRlZiB0ZXN0X2dldF91cmwoc2VsZik6CisgICAgICAgICMgVGVzdCB0aGF0IHRoZSB1cmwgcHJvcGVydHkgd29ya3Mgd2VsbAorCisgICAgICAgIGQgPSBEaXN0KHVybD0idGVzdF91cmwiKQorICAgICAgICBzZWxmLmFzc2VydERpY3RFcXVhbChkLnVybCwgeworICAgICAgICAgICAgInVybCI6ICJ0ZXN0X3VybCIsCisgICAgICAgICAgICAiaXNfZXh0ZXJuYWwiOiBUcnVlLAorICAgICAgICAgICAgImhhc2huYW1lIjogTm9uZSwKKyAgICAgICAgICAgICJoYXNodmFsIjogTm9uZSwKKyAgICAgICAgfSkKKworICAgICAgICAjIGFkZCBhIG5ldyB1cmwKKyAgICAgICAgZC5hZGRfdXJsKHVybD0iaW50ZXJuYWxfdXJsIiwgaXNfZXh0ZXJuYWw9RmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZC5fdXJsLCBOb25lKQorICAgICAgICBzZWxmLmFzc2VydERpY3RFcXVhbChkLnVybCwgeworICAgICAgICAgICAgInVybCI6ICJpbnRlcm5hbF91cmwiLAorICAgICAgICAgICAgImlzX2V4dGVybmFsIjogRmFsc2UsCisgICAgICAgICAgICAiaGFzaG5hbWUiOiBOb25lLAorICAgICAgICAgICAgImhhc2h2YWwiOiBOb25lLAorICAgICAgICB9KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihkLnVybHMpKQorCisgICAgZGVmIHRlc3RfY29tcGFyaXNvbihzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoYXQgd2UgY2FuIGNvbXBhcmUgRGlzdEluZm9yaWJ1dGlvbkluZm9MaXN0CisgICAgICAgIGZvbzEgPSBSZWxlYXNlSW5mbygiZm9vIiwgIjEuMCIpCisgICAgICAgIGZvbzIgPSBSZWxlYXNlSW5mbygiZm9vIiwgIjIuMCIpCisgICAgICAgIGJhciA9IFJlbGVhc2VJbmZvKCJiYXIiLCAiMi4wIikKKyAgICAgICAgIyBhc3NlcnQgd2UgdXNlIHRoZSB2ZXJzaW9uIHRvIGNvbXBhcmUKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvbzEgPCBmb28yKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGZvbzEgPiBmb28yKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGZvbzEgPT0gZm9vMikKKworICAgICAgICAjIGFzc2VydCB3ZSBjYW4ndCBjb21wYXJlIGRpc3RzIHdpdGggZGlmZmVyZW50IG5hbWVzCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZm9vMS5fX2VxX18sIGJhcikKKworICAgIEB1bml0dGVzdC5za2lwSWYodGhyZWFkaW5nIGlzIE5vbmUsICduZWVkcyB0aHJlYWRpbmcnKQorICAgIEB1c2VfcHlwaV9zZXJ2ZXIoImRvd25sb2Fkc193aXRoX21kNSIpCisgICAgZGVmIHRlc3RfZG93bmxvYWQoc2VsZiwgc2VydmVyKToKKyAgICAgICAgIyBEb3dubG9hZCBpcyBwb3NzaWJsZSwgYW5kIHRoZSBtZDUgaXMgY2hlY2tlZCBpZiBnaXZlbgorCisgICAgICAgIHVybCA9IHNlcnZlci5mdWxsX2FkZHJlc3MgKyBzZWxmLnNyY3BhdGgKKworICAgICAgICAjIGNoZWNrIHRoYXQgYSBtZDUgaWYgZ2l2ZW4KKyAgICAgICAgZGlzdCA9IERpc3QodXJsPXVybCwgaGFzaG5hbWU9Im1kNSIsCisgICAgICAgICAgICAgICAgICAgIGhhc2h2YWw9ImZlMTg4MDRjNWI3MjJmZjAyNGNhYmRmNTE0OTI0ZmM0IikKKyAgICAgICAgZGlzdC5kb3dubG9hZChzZWxmLm1rZHRlbXAoKSkKKworICAgICAgICAjIGEgd3JvbmcgbWQ1IGZhaWxzCisgICAgICAgIGRpc3QyID0gRGlzdCh1cmw9dXJsLCBoYXNobmFtZT0ibWQ1IiwgaGFzaHZhbD0id3JvbmdtZDUiKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEhhc2hEb2VzTm90TWF0Y2gsIGRpc3QyLmRvd25sb2FkLCBzZWxmLm1rZHRlbXAoKSkKKworICAgICAgICAjIHdlIGNhbiBvbWl0IHRoZSBtZDUgaGFzaAorICAgICAgICBkaXN0MyA9IERpc3QodXJsPXVybCkKKyAgICAgICAgZGlzdDMuZG93bmxvYWQoc2VsZi5ta2R0ZW1wKCkpCisKKyAgICAgICAgIyBhbmQgc3BlY2lmeSBhIHRlbXBvcmFyeSBsb2NhdGlvbgorICAgICAgICAjIGZvciBhbiBhbHJlYWR5IGRvd25sb2FkZWQgZGlzdAorICAgICAgICBwYXRoMSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGRpc3QzLmRvd25sb2FkKHBhdGg9cGF0aDEpCisgICAgICAgICMgYW5kIGZvciBhIG5ldyBvbmUKKyAgICAgICAgcGF0aDJfYmFzZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGRpc3Q0ID0gRGlzdCh1cmw9dXJsKQorICAgICAgICBwYXRoMiA9IGRpc3Q0LmRvd25sb2FkKHBhdGg9cGF0aDJfYmFzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbihwYXRoMl9iYXNlLCBwYXRoMikKKworICAgIGRlZiB0ZXN0X2hhc2huYW1lKHNlbGYpOgorICAgICAgICAjIEludmFsaWQgaGFzaG5hbWVzIHJhaXNlcyBhbiBleGNlcHRpb24gb24gYXNzaWduYXRpb24KKyAgICAgICAgRGlzdChoYXNobmFtZT0ibWQ1IiwgaGFzaHZhbD0idmFsdWUiKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuc3VwcG9ydGVkSGFzaE5hbWUsIERpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc2huYW1lPSJpbnZhbGlkX2hhc2huYW1lIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzaHZhbD0idmFsdWUiKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZih0aHJlYWRpbmcgaXMgTm9uZSwgJ25lZWRzIHRocmVhZGluZycpCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBAdXNlX3B5cGlfc2VydmVyKCdkb3dubG9hZHNfd2l0aF9tZDUnKQorICAgIGRlZiB0ZXN0X3VucGFjayhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICB1cmwgPSBzZXJ2ZXIuZnVsbF9hZGRyZXNzICsgc2VsZi5zcmNwYXRoCisgICAgICAgIGRpc3QxID0gRGlzdCh1cmw9dXJsKQorCisgICAgICAgICMgdW5wYWNrIHRoZSBkaXN0cmlidXRpb24gaW4gYSBzcGVjZmllZCBmb2xkZXIKKyAgICAgICAgZGlzdDFfaGVyZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGRpc3QxX3RoZXJlID0gZGlzdDEudW5wYWNrKHBhdGg9ZGlzdDFfaGVyZSkKKworICAgICAgICAjIGFzc2VydCB3ZSB1bnBhY2sgdG8gdGhlIHBhdGggcHJvdmlkZWQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXN0MV9oZXJlLCBkaXN0MV90aGVyZSkKKyAgICAgICAgZGlzdDFfcmVzdWx0ID0gb3MubGlzdGRpcihkaXN0MV90aGVyZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigncGFmJywgZGlzdDFfcmVzdWx0KQorICAgICAgICBvcy5yZW1vdmUob3MucGF0aC5qb2luKGRpc3QxX3RoZXJlLCAncGFmJykpCisKKyAgICAgICAgIyBUZXN0IHVucGFjayB3b3JrcyB3aXRob3V0IGEgcGF0aCBhcmd1bWVudAorICAgICAgICBkaXN0MiA9IERpc3QodXJsPXVybCkKKyAgICAgICAgIyBkb2luZyBhbiB1bnBhY2sKKyAgICAgICAgZGlzdDJfdGhlcmUgPSBkaXN0Mi51bnBhY2soKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2h1dGlsLnJtdHJlZSwgZGlzdDJfdGhlcmUpCisgICAgICAgIGRpc3QyX3Jlc3VsdCA9IG9zLmxpc3RkaXIoZGlzdDJfdGhlcmUpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3BhZicsIGRpc3QyX3Jlc3VsdCkKKyAgICAgICAgb3MucmVtb3ZlKG9zLnBhdGguam9pbihkaXN0Ml90aGVyZSwgJ3BhZicpKQorCisKK2NsYXNzIFRlc3RSZWxlYXNlc0xpc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfZmlsdGVyKHNlbGYpOgorICAgICAgICAjIFRlc3Qgd2UgZmlsdGVyIHRoZSBkaXN0cmlidXRpb25zIHRoZSByaWdodCB3YXksIHVzaW5nIHZlcnNpb24KKyAgICAgICAgIyBwcmVkaWNhdGUgbWF0Y2ggbWV0aG9kCisgICAgICAgIHJlbGVhc2VzID0gUmVsZWFzZXNMaXN0KCdGb29CYXInLCAoCisgICAgICAgICAgICBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMSIpLAorICAgICAgICAgICAgUmVsZWFzZUluZm8oIkZvb0JhciIsICIxLjEuMSIpLAorICAgICAgICAgICAgUmVsZWFzZUluZm8oIkZvb0JhciIsICIxLjIiKSwKKyAgICAgICAgICAgIFJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4yLjEiKSwKKyAgICAgICAgKSkKKyAgICAgICAgZmlsdGVyZWQgPSByZWxlYXNlcy5maWx0ZXIoVmVyc2lvblByZWRpY2F0ZSgiRm9vQmFyICg8MS4yKSIpKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKHJlbGVhc2VzWzJdLCBmaWx0ZXJlZCkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbihyZWxlYXNlc1szXSwgZmlsdGVyZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4ocmVsZWFzZXNbMF0sIGZpbHRlcmVkKQorICAgICAgICBzZWxmLmFzc2VydEluKHJlbGVhc2VzWzFdLCBmaWx0ZXJlZCkKKworICAgIGRlZiB0ZXN0X2FwcGVuZChzZWxmKToKKyAgICAgICAgIyBXaGVuIGFkZGluZyBhIG5ldyBpdGVtIHRvIHRoZSBsaXN0LCB0aGUgYmVoYXZpb3IgaXMgdG8gdGVzdCBpZgorICAgICAgICAjIGEgcmVsZWFzZSB3aXRoIHRoZSBzYW1lIG5hbWUgYW5kIHZlcnNpb24gbnVtYmVyIGFscmVhZHkgZXhpc3RzLAorICAgICAgICAjIGFuZCBpZiBzbywgdG8gYWRkIGEgbmV3IGRpc3RyaWJ1dGlvbiBmb3IgaXQuIElmIHRoZSBkaXN0cmlidXRpb24gdHlwZQorICAgICAgICAjIGlzIGFscmVhZHkgZGVmaW5lZCB0b28sIGFkZCB1cmwgaW5mb3JtYXRpb25zIHRvIHRoZSBleGlzdGluZyBEaXN0SW5mbworICAgICAgICAjIG9iamVjdC4KKworICAgICAgICByZWxlYXNlcyA9IFJlbGVhc2VzTGlzdCgiRm9vQmFyIiwgWworICAgICAgICAgICAgUmVsZWFzZUluZm8oIkZvb0JhciIsICIxLjEiLCB1cmw9ImV4dGVybmFsX3VybCIsCisgICAgICAgICAgICAgICAgICAgICAgICBkaXN0X3R5cGU9InNkaXN0IiksCisgICAgICAgIF0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMSwgbGVuKHJlbGVhc2VzKSkKKyAgICAgICAgcmVsZWFzZXMuYWRkX3JlbGVhc2UocmVsZWFzZT1SZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsPSJpbnRlcm5hbF91cmwiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzX2V4dGVybmFsPUZhbHNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RfdHlwZT0ic2Rpc3QiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgxLCBsZW4ocmVsZWFzZXMpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihyZWxlYXNlc1swXVsnc2Rpc3QnXS51cmxzKSkKKworICAgICAgICByZWxlYXNlcy5hZGRfcmVsZWFzZShyZWxlYXNlPVJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4xLjEiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RfdHlwZT0ic2Rpc3QiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgyLCBsZW4ocmVsZWFzZXMpKQorCisgICAgICAgICMgd2hlbiBhZGRpbmcgYSBkaXN0cmlidXRpb24gd2hpdGggYSBkaWZmZXJlbnQgdHlwZSwgYSBuZXcgZGlzdHJpYnV0aW9uCisgICAgICAgICMgaGFzIHRvIGJlIGFkZGVkLgorICAgICAgICByZWxlYXNlcy5hZGRfcmVsZWFzZShyZWxlYXNlPVJlbGVhc2VJbmZvKCJGb29CYXIiLCAiMS4xLjEiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RfdHlwZT0iYmRpc3QiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgyLCBsZW4ocmVsZWFzZXMpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihyZWxlYXNlc1sxXS5kaXN0cykpCisKKyAgICBkZWYgdGVzdF9wcmVmZXJfZmluYWwoc2VsZik6CisgICAgICAgICMgQ2FuIG9yZGVyIHRoZSBkaXN0cmlidXRpb25zIHVzaW5nIHByZWZlcl9maW5hbAorICAgICAgICBmYjEwID0gUmVsZWFzZUluZm8oIkZvb0JhciIsICIxLjAiKSAgIyBmaW5hbCBkaXN0cmlidXRpb24KKyAgICAgICAgZmIxMWEgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMWExIikgICMgYWxwaGEKKyAgICAgICAgZmIxMmEgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMmExIikgICMgYWxwaGEKKyAgICAgICAgZmIxMmIgPSBSZWxlYXNlSW5mbygiRm9vQmFyIiwgIjEuMmIxIikgICMgYmV0YQorICAgICAgICBkaXN0cyA9IFJlbGVhc2VzTGlzdCgiRm9vQmFyIiwgW2ZiMTAsIGZiMTFhLCBmYjEyYSwgZmIxMmJdKQorCisgICAgICAgIGRpc3RzLnNvcnRfcmVsZWFzZXMocHJlZmVyX2ZpbmFsPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmIxMCwgZGlzdHNbMF0pCisKKyAgICAgICAgZGlzdHMuc29ydF9yZWxlYXNlcyhwcmVmZXJfZmluYWw9RmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmIxMmIsIGRpc3RzWzBdKQorCisgICAgQHVuaXR0ZXN0LnNraXAoJ21ldGhvZCBub3QgaW1wbGVtZW50ZWQgeWV0JykKKyAgICBkZWYgdGVzdF9wcmVmZXJfc291cmNlKHNlbGYpOgorICAgICAgICAjIE9yZGVyaW5nIHN1cHBvcnRzIHByZWZlcl9zb3VyY2UKKyAgICAgICAgZmJfc291cmNlID0gRGlzdCgiRm9vQmFyIiwgIjEuMCIsIHR5cGU9InNvdXJjZSIpCisgICAgICAgIGZiX2JpbmFyeSA9IERpc3QoIkZvb0JhciIsICIxLjAiLCB0eXBlPSJiaW5hcnkiKQorICAgICAgICBmYjJfYmluYXJ5ID0gRGlzdCgiRm9vQmFyIiwgIjIuMCIsIHR5cGU9ImJpbmFyeSIpCisgICAgICAgIGRpc3RzID0gUmVsZWFzZXNMaXN0KFtmYl9iaW5hcnksIGZiX3NvdXJjZV0pCisKKyAgICAgICAgZGlzdHMuc29ydF9kaXN0cmlidXRpb25zKHByZWZlcl9zb3VyY2U9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmYl9zb3VyY2UsIGRpc3RzWzBdKQorCisgICAgICAgIGRpc3RzLnNvcnRfZGlzdHJpYnV0aW9ucyhwcmVmZXJfc291cmNlPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZiX2JpbmFyeSwgZGlzdHNbMF0pCisKKyAgICAgICAgZGlzdHMuYXBwZW5kKGZiMl9iaW5hcnkpCisgICAgICAgIGRpc3RzLnNvcnRfZGlzdHJpYnV0aW9ucyhwcmVmZXJfc291cmNlPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmIyX2JpbmFyeSwgZGlzdHNbMF0pCisKKyAgICBkZWYgdGVzdF9nZXRfbGFzdChzZWxmKToKKyAgICAgICAgZGlzdHMgPSBSZWxlYXNlc0xpc3QoJ0ZvbycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzdHMuZ2V0X2xhc3QoJ0ZvbyAxLjAnKSwgTm9uZSkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHN1aXRlID0gdW5pdHRlc3QuVGVzdFN1aXRlKCkKKyAgICBzdWl0ZS5hZGRUZXN0KHVuaXR0ZXN0Lm1ha2VTdWl0ZShUZXN0RGlzdEluZm8pKQorICAgIHN1aXRlLmFkZFRlc3QodW5pdHRlc3QubWFrZVN1aXRlKFRlc3RSZWxlYXNlSW5mbykpCisgICAgc3VpdGUuYWRkVGVzdCh1bml0dGVzdC5tYWtlU3VpdGUoVGVzdFJlbGVhc2VzTGlzdCkpCisgICAgcmV0dXJuIHN1aXRlCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfcHlwaV9zZXJ2ZXIucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfcHlwaV9zZXJ2ZXIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDU3YzQ5NAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9weXBpX3NlcnZlci5weQpAQCAtMCwwICsxLDg4IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLmNvbW1hbmQuYmRpc3QuIiIiCitpbXBvcnQgdXJsbGliLnJlcXVlc3QKK2ltcG9ydCB1cmxsaWIucGFyc2UKK2ltcG9ydCB1cmxsaWIuZXJyb3IKKwordHJ5OgorICAgIGltcG9ydCB0aHJlYWRpbmcKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlciBpbXBvcnQgKAorICAgICAgICBQeVBJU2VydmVyLCBQWVBJX0RFRkFVTFRfU1RBVElDX1BBVEgpCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgdGhyZWFkaW5nID0gTm9uZQorICAgIFB5UElTZXJ2ZXIgPSBOb25lCisgICAgUFlQSV9ERUZBVUxUX1NUQVRJQ19QQVRIID0gTm9uZQorCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKKworCitAdW5pdHRlc3Quc2tpcElmKHRocmVhZGluZyBpcyBOb25lLCAiTmVlZHMgdGhyZWFkaW5nIikKK2NsYXNzIFB5UElTZXJ2ZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X3JlY29yZHNfcmVxdWVzdHMoc2VsZik6CisgICAgICAgICMgV2UgZXhwZWN0IHRoYXQgUHlQSVNlcnZlciBjYW4gbG9nIG91ciByZXF1ZXN0cworICAgICAgICBzZXJ2ZXIgPSBQeVBJU2VydmVyKCkKKyAgICAgICAgc2VydmVyLmRlZmF1bHRfcmVzcG9uc2Vfc3RhdHVzID0gMjAwCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VydmVyLnN0YXJ0KCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlcnZlci5yZXF1ZXN0cyksIDApCisKKyAgICAgICAgICAgIGRhdGEgPSBiJ1JvY2sgQXJvdW5kIFRoZSBCdW5rZXInCisKKyAgICAgICAgICAgIGhlYWRlcnMgPSB7IlgtdGVzdC1oZWFkZXIiOiAiTWlzdGVyIEljZWJlcmcifQorCisgICAgICAgICAgICByZXF1ZXN0ID0gdXJsbGliLnJlcXVlc3QuUmVxdWVzdCgKKyAgICAgICAgICAgICAgICBzZXJ2ZXIuZnVsbF9hZGRyZXNzLCBkYXRhLCBoZWFkZXJzKQorICAgICAgICAgICAgdXJsbGliLnJlcXVlc3QudXJsb3BlbihyZXF1ZXN0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VydmVyLnJlcXVlc3RzKSwgMSkKKyAgICAgICAgICAgIGhhbmRsZXIsIHJlcXVlc3RfZGF0YSA9IHNlcnZlci5yZXF1ZXN0c1stMV0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oZGF0YSwgcmVxdWVzdF9kYXRhKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigieC10ZXN0LWhlYWRlciIsIGhhbmRsZXIuaGVhZGVycykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFuZGxlci5oZWFkZXJzWyJ4LXRlc3QtaGVhZGVyIl0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJNaXN0ZXIgSWNlYmVyZyIpCisKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHNlcnZlci5zdG9wKCkKKworICAgIGRlZiB0ZXN0X3NlcnZlX3N0YXRpY19jb250ZW50KHNlbGYpOgorICAgICAgICAjIFBZUEkgTW9ja2VkIHNlcnZlciBjYW4gc2VydmUgc3RhdGljIGNvbnRlbnQgZnJvbSBkaXNrLgorCisgICAgICAgIGRlZiB1c2VzX2xvY2FsX2ZpbGVzX2ZvcihzZXJ2ZXIsIHVybF9wYXRoKToKKyAgICAgICAgICAgICIiIlRlc3QgdGhhdCBmaWxlcyBhcmUgc2VydmVkIHN0YXRpY2FsbHkgKGVnLiB0aGUgb3V0cHV0IGZyb20gdGhlCisgICAgICAgICAgICBzZXJ2ZXIgaXMgdGhlIHNhbWUgdGhhbiB0aGUgb25lIG1hZGUgYnkgYSBzaW1wbGUgZmlsZSByZWFkLgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICB1cmwgPSBzZXJ2ZXIuZnVsbF9hZGRyZXNzICsgdXJsX3BhdGgKKyAgICAgICAgICAgIHJlcXVlc3QgPSB1cmxsaWIucmVxdWVzdC5SZXF1ZXN0KHVybCkKKyAgICAgICAgICAgIHJlc3BvbnNlID0gdXJsbGliLnJlcXVlc3QudXJsb3BlbihyZXF1ZXN0KQorICAgICAgICAgICAgd2l0aCBvcGVuKFBZUElfREVGQVVMVF9TVEFUSUNfUEFUSCArICIvdGVzdF9weXBpX3NlcnZlciIKKyAgICAgICAgICAgICAgICAgICAgICArIHVybF9wYXRoKSBhcyBmaWxlOgorICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5yZWFkKCkuZGVjb2RlKCkgPT0gZmlsZS5yZWFkKCkKKworICAgICAgICBzZXJ2ZXIgPSBQeVBJU2VydmVyKHN0YXRpY191cmlfcGF0aHM9WyJzaW1wbGUiLCAiZXh0ZXJuYWwiXSwKKyAgICAgICAgICAgIHN0YXRpY19maWxlc3lzdGVtX3BhdGhzPVsidGVzdF9weXBpX3NlcnZlciJdKQorICAgICAgICBzZXJ2ZXIuc3RhcnQoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICAjIHRoZSBmaWxlIGRvZXMgbm90IGV4aXN0cyBvbiB0aGUgZGlzYywgc28gaXQgbWlnaHQgbm90IGJlIHNlcnZlZAorICAgICAgICAgICAgdXJsID0gc2VydmVyLmZ1bGxfYWRkcmVzcyArICIvc2ltcGxlL3VuZXhpc3RpbmdfcGFnZSIKKyAgICAgICAgICAgIHJlcXVlc3QgPSB1cmxsaWIucmVxdWVzdC5SZXF1ZXN0KHVybCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB1cmxsaWIucmVxdWVzdC51cmxvcGVuKHJlcXVlc3QpCisgICAgICAgICAgICBleGNlcHQgdXJsbGliLmVycm9yLkhUVFBFcnJvciBhcyBlOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5jb2RlLCA0MDQpCisKKyAgICAgICAgICAgICMgbm93IHRyeSBzZXJ2aW5nIGEgY29udGVudCB0aGF0IGRvIGV4aXN0cworICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHVzZXNfbG9jYWxfZmlsZXNfZm9yKHNlcnZlciwgIi9zaW1wbGUvaW5kZXguaHRtbCIpKQorCisgICAgICAgICAgICAjIGFuZCBhbm90aGVyIG9uZSBpbiBhbm90aGVyIHJvb3QgcGF0aAorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHVzZXNfbG9jYWxfZmlsZXNfZm9yKHNlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiL2V4dGVybmFsL2luZGV4Lmh0bWwiKSkKKworICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc2VydmVyLnN0b3AoKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShQeVBJU2VydmVyVGVzdCkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9weXBpX3NpbXBsZS5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9weXBpX3NpbXBsZS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41OTIwNGM0Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3B5cGlfc2ltcGxlLnB5CkBAIC0wLDAgKzEsMzUzIEBACisiIiJUZXN0cyBmb3IgdGhlIHBhY2thZ2luZy5weXBpLnNpbXBsZSBtb2R1bGUuIiIiCitpbXBvcnQgcmUKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IGh0dHAuY2xpZW50CitpbXBvcnQgdXJsbGliLmVycm9yCitpbXBvcnQgdXJsbGliLnBhcnNlCitpbXBvcnQgdXJsbGliLnJlcXVlc3QKKworZnJvbSBwYWNrYWdpbmcucHlwaS5zaW1wbGUgaW1wb3J0IENyYXdsZXIKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHVuaXR0ZXN0Citmcm9tIHBhY2thZ2luZy50ZXN0cy5zdXBwb3J0IGltcG9ydCAoVGVtcGRpck1hbmFnZXIsIExvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZha2VfZGVjKQorCit0cnk6CisgICAgaW1wb3J0IF90aHJlYWQKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlciBpbXBvcnQgKHVzZV9weXBpX3NlcnZlciwgUHlQSVNlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBZUElfREVGQVVMVF9TVEFUSUNfUEFUSCkKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBfdGhyZWFkID0gTm9uZQorICAgIHVzZV9weXBpX3NlcnZlciA9IGZha2VfZGVjCisgICAgUFlQSV9ERUZBVUxUX1NUQVRJQ19QQVRIID0gb3MucGF0aC5qb2luKAorICAgICAgICBvcy5wYXRoLmRpcm5hbWUob3MucGF0aC5hYnNwYXRoKF9fZmlsZV9fKSksICdweXBpc2VydmVyJykKKworCisKK2NsYXNzIFNpbXBsZUNyYXdsZXJUZXN0Q2FzZShUZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBMb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgX2dldF9zaW1wbGVfY3Jhd2xlcihzZWxmLCBzZXJ2ZXIsIGJhc2VfdXJsPSIvc2ltcGxlLyIsIGhvc3RzPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgIiIiQnVpbGQgYW5kIHJldHVybiBhIFNpbXBsZUluZGV4IHdpdGggdGhlIHRlc3Qgc2VydmVyIHVybHMiIiIKKyAgICAgICAgaWYgaG9zdHMgaXMgTm9uZToKKyAgICAgICAgICAgIGhvc3RzID0gKHNlcnZlci5mdWxsX2FkZHJlc3MucmVwbGFjZSgiaHR0cDovLyIsICIiKSwpCisgICAgICAgIGt3YXJnc1snaG9zdHMnXSA9IGhvc3RzCisgICAgICAgIHJldHVybiBDcmF3bGVyKHNlcnZlci5mdWxsX2FkZHJlc3MgKyBiYXNlX3VybCwgKmFyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICoqa3dhcmdzKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKCkKKyAgICBkZWYgdGVzdF9iYWRfdXJscyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjcmF3bGVyID0gQ3Jhd2xlcigpCisgICAgICAgIHVybCA9ICdodHRwOi8vMTI3LjAuMC4xOjAvbm9uZXN1Y2gvdGVzdF9zaW1wbGUnCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHYgPSBjcmF3bGVyLl9vcGVuX3VybCh1cmwpCisgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgdjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4odXJsLCBzdHIodikpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB2LmNsb3NlKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZSh2LCB1cmxsaWIuZXJyb3IuSFRUUEVycm9yKQorCisgICAgICAgICMgaXNzdWUgMTYKKyAgICAgICAgIyBlYXN5X2luc3RhbGwgaW5xdWFudC5jb250ZW50bWlycm9yLnBsb25lIGJyZWFrcyBiZWNhdXNlIG9mIGEgdHlwbworICAgICAgICAjIGluIGl0cyBob21lIFVSTAorICAgICAgICBjcmF3bGVyID0gQ3Jhd2xlcihob3N0cz0oJ2V4YW1wbGUub3JnJywpKQorICAgICAgICB1cmwgPSAoJ3VybDolMjBodHRwczovL3N2bi5wbG9uZS5vcmcvc3ZuL2NvbGxlY3RpdmUvJworICAgICAgICAgICAgICAgJ2lucXVhbnQuY29udGVudG1pcnJvci5wbG9uZS90cnVuaycpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHYgPSBjcmF3bGVyLl9vcGVuX3VybCh1cmwpCisgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgdjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4odXJsLCBzdHIodikpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB2LmNsb3NlKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZSh2LCB1cmxsaWIuZXJyb3IuSFRUUEVycm9yKQorCisgICAgICAgIGRlZiBfdXJsb3BlbigqYXJncyk6CisgICAgICAgICAgICByYWlzZSBodHRwLmNsaWVudC5CYWRTdGF0dXNMaW5lKCdsaW5lJykKKworICAgICAgICBvbGRfdXJsb3BlbiA9IHVybGxpYi5yZXF1ZXN0LnVybG9wZW4KKyAgICAgICAgdXJsbGliLnJlcXVlc3QudXJsb3BlbiA9IF91cmxvcGVuCisgICAgICAgIHVybCA9ICdodHRwOi8vZXhhbXBsZS5vcmcnCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHYgPSBjcmF3bGVyLl9vcGVuX3VybCh1cmwpCisgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgdjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2xpbmUnLCBzdHIodikpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB2LmNsb3NlKCkKKyAgICAgICAgICAgICMgVE9ETyB1c2Ugc2VsZi5hc3NlcnRSYWlzZXMKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCdTaG91bGQgaGF2ZSByYWlzZSBoZXJlIScpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICB1cmxsaWIucmVxdWVzdC51cmxvcGVuID0gb2xkX3VybG9wZW4KKworICAgICAgICAjIGlzc3VlIDIwCisgICAgICAgIHVybCA9ICdodHRwOi8vaHR0cDovL3N2bi5weXRob25wYXN0ZS5vcmcvUGFzdGUvd3BocC90cnVuaycKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY3Jhd2xlci5fb3Blbl91cmwodXJsKQorICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIHY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEluKCdEb3dubG9hZCBlcnJvcicsIHN0cih2KSkKKworICAgICAgICAjIGlzc3VlICMxNjAKKyAgICAgICAgdXJsID0gc2VydmVyLmZ1bGxfYWRkcmVzcworICAgICAgICBwYWdlID0gKCc8YSBocmVmPSJodHRwOi8vd3d3LmZhbWZhbWZhbS5jb21dKCcKKyAgICAgICAgICAgICAgICAnaHR0cDovL3d3dy5mYW1mYW1mYW0uY29tLyI+JykKKyAgICAgICAgY3Jhd2xlci5fcHJvY2Vzc191cmwodXJsLCBwYWdlKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKCJ0ZXN0X2ZvdW5kX2xpbmtzIikKKyAgICBkZWYgdGVzdF9mb3VuZF9saW5rcyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICAjIEJyb3dzZSB0aGUgaW5kZXgsIGFza2luZyBmb3IgYSBzcGVjaWZpZWQgcmVsZWFzZSB2ZXJzaW9uCisgICAgICAgICMgVGhlIFB5UEkgaW5kZXggY29udGFpbnMgbGlua3MgZm9yIHZlcnNpb24gMS4wLCAxLjEsIDIuMCBhbmQgMi4wLjEKKyAgICAgICAgY3Jhd2xlciA9IHNlbGYuX2dldF9zaW1wbGVfY3Jhd2xlcihzZXJ2ZXIpCisgICAgICAgIGxhc3RfcmVsZWFzZSA9IGNyYXdsZXIuZ2V0X3JlbGVhc2UoImZvb2JhciIpCisKKyAgICAgICAgIyB3ZSBoYXZlIHNjYW5uZWQgdGhlIGluZGV4IHBhZ2UKKyAgICAgICAgc2VsZi5hc3NlcnRJbihzZXJ2ZXIuZnVsbF9hZGRyZXNzICsgIi9zaW1wbGUvZm9vYmFyLyIsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykKKworICAgICAgICAjIHdlIGhhdmUgZm91bmQgNCByZWxlYXNlcyBpbiB0aGlzIHBhZ2UKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY3Jhd2xlci5fcHJvamVjdHNbImZvb2JhciJdKSwgNCkKKworICAgICAgICAjIGFuZCByZXR1cm5lZCB0aGUgbW9zdCByZWNlbnQgb25lCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIiVzIiAlIGxhc3RfcmVsZWFzZS52ZXJzaW9uLCAnMi4wLjEnKQorCisgICAgZGVmIHRlc3RfaXNfYnJvd3NhYmxlKHNlbGYpOgorICAgICAgICBjcmF3bGVyID0gQ3Jhd2xlcihmb2xsb3dfZXh0ZXJuYWxzPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoY3Jhd2xlci5faXNfYnJvd3NhYmxlKGNyYXdsZXIuaW5kZXhfdXJsICsgInRlc3QiKSkKKworICAgICAgICAjIE5vdywgd2hlbiBmb2xsb3dpbmcgZXh0ZXJuYWxzLCB3ZSBjYW4gaGF2ZSBhIGxpc3Qgb2YgaG9zdHMgdG8gdHJ1c3QuCisgICAgICAgICMgYW5kIGRvbid0IGZvbGxvdyBvdGhlciBleHRlcm5hbCBsaW5rcyB0aGFuIHRoZSBvbmUgZGVzY3JpYmVkIGhlcmUuCisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKGhvc3RzPVsicHlwaS5weXRob24ub3JnIiwgImV4YW1wbGUub3JnIl0sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbGxvd19leHRlcm5hbHM9VHJ1ZSkKKyAgICAgICAgZ29vZF91cmxzID0gKAorICAgICAgICAgICAgImh0dHA6Ly9weXBpLnB5dGhvbi5vcmcvZm9vL2JhciIsCisgICAgICAgICAgICAiaHR0cDovL3B5cGkucHl0aG9uLm9yZy9zaW1wbGUvZm9vYmFyIiwKKyAgICAgICAgICAgICJodHRwOi8vZXhhbXBsZS5vcmciLAorICAgICAgICAgICAgImh0dHA6Ly9leGFtcGxlLm9yZy8iLAorICAgICAgICAgICAgImh0dHA6Ly9leGFtcGxlLm9yZy9zaW1wbGUvIiwKKyAgICAgICAgKQorICAgICAgICBiYWRfdXJscyA9ICgKKyAgICAgICAgICAgICJodHRwOi8vcHl0aG9uLm9yZyIsCisgICAgICAgICAgICAiaHR0cDovL2V4YW1wbGUudGxkIiwKKyAgICAgICAgKQorCisgICAgICAgIGZvciB1cmwgaW4gZ29vZF91cmxzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNyYXdsZXIuX2lzX2Jyb3dzYWJsZSh1cmwpKQorCisgICAgICAgIGZvciB1cmwgaW4gYmFkX3VybHM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGNyYXdsZXIuX2lzX2Jyb3dzYWJsZSh1cmwpKQorCisgICAgICAgICMgYWxsb3cgYWxsIGhvc3RzCisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKGZvbGxvd19leHRlcm5hbHM9VHJ1ZSwgaG9zdHM9KCIqIiwpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoY3Jhd2xlci5faXNfYnJvd3NhYmxlKCJodHRwOi8vYW4tZXh0ZXJuYWwubGluay9wYXRoIikpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjcmF3bGVyLl9pc19icm93c2FibGUoInB5cGkuZXhhbXBsZS5vcmcvYS9wYXRoIikpCisKKyAgICAgICAgIyBzcGVjaWZ5IGEgbGlzdCBvZiBob3N0cyB3ZSB3YW50IHRvIGFsbG93CisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKGZvbGxvd19leHRlcm5hbHM9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaG9zdHM9KCIqLmV4YW1wbGUub3JnIiwpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGNyYXdsZXIuX2lzX2Jyb3dzYWJsZSgiaHR0cDovL2FuLWV4dGVybmFsLmxpbmsvcGF0aCIpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoCisgICAgICAgICAgICBjcmF3bGVyLl9pc19icm93c2FibGUoImh0dHA6Ly9weXBpLmV4YW1wbGUub3JnL2EvcGF0aCIpKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKCJ3aXRoX2V4dGVybmFscyIpCisgICAgZGVmIHRlc3RfZm9sbG93X2V4dGVybmFscyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICAjIEluY2x1ZGUgZXh0ZXJuYWwgcGFnZXMKKyAgICAgICAgIyBUcnkgdG8gcmVxdWVzdCB0aGUgcGFja2FnZSBpbmRleCwgd2ljaCBjb250YWlucyBsaW5rcyB0byAiZXh0ZXJuYWxzIgorICAgICAgICAjIHJlc291cmNlcy4gVGhleSBoYXZlIHRvICBiZSBzY2FubmVkIHRvby4KKyAgICAgICAgY3Jhd2xlciA9IHNlbGYuX2dldF9zaW1wbGVfY3Jhd2xlcihzZXJ2ZXIsIGZvbGxvd19leHRlcm5hbHM9VHJ1ZSkKKyAgICAgICAgY3Jhd2xlci5nZXRfcmVsZWFzZSgiZm9vYmFyIikKKyAgICAgICAgc2VsZi5hc3NlcnRJbihzZXJ2ZXIuZnVsbF9hZGRyZXNzICsgIi9leHRlcm5hbC9leHRlcm5hbC5odG1sIiwKKyAgICAgICAgICAgIGNyYXdsZXIuX3Byb2Nlc3NlZF91cmxzKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKCJ3aXRoX3JlYWxfZXh0ZXJuYWxzIikKKyAgICBkZWYgdGVzdF9yZXN0cmljdF9ob3N0cyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICAjIE9ubHkgdXNlIGEgbGlzdCBvZiBhbGxvd2VkIGhvc3RzIGlzIHBvc3NpYmxlCisgICAgICAgICMgVGVzdCB0aGF0IHRlbGxpbmcgdGhlIHNpbXBsZSBweVBJIGNsaWVudCB0byBub3QgcmV0cmlldmUgZXh0ZXJuYWwKKyAgICAgICAgIyB3b3JrcworICAgICAgICBjcmF3bGVyID0gc2VsZi5fZ2V0X3NpbXBsZV9jcmF3bGVyKHNlcnZlciwgZm9sbG93X2V4dGVybmFscz1GYWxzZSkKKyAgICAgICAgY3Jhd2xlci5nZXRfcmVsZWFzZSgiZm9vYmFyIikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbihzZXJ2ZXIuZnVsbF9hZGRyZXNzICsgIi9leHRlcm5hbC9leHRlcm5hbC5odG1sIiwKKyAgICAgICAgICAgIGNyYXdsZXIuX3Byb2Nlc3NlZF91cmxzKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKHN0YXRpY19maWxlc3lzdGVtX3BhdGhzPVsid2l0aF9leHRlcm5hbHMiXSwKKyAgICAgICAgc3RhdGljX3VyaV9wYXRocz1bInNpbXBsZSIsICJleHRlcm5hbCJdKQorICAgIGRlZiB0ZXN0X2xpbmtzX3ByaW9yaXR5KHNlbGYsIHNlcnZlcik6CisgICAgICAgICMgRG93bmxvYWQgbGlua3MgZnJvbSB0aGUgcHlwaSBzaW1wbGUgaW5kZXggc2hvdWxkIGJlIHVzZWQgYmVmb3JlCisgICAgICAgICMgZXh0ZXJuYWwgZG93bmxvYWQgbGlua3MuCisgICAgICAgICMgaHR0cDovL2JpdGJ1Y2tldC5vcmcvdGFyZWsvZGlzdHJpYnV0ZS9pc3N1ZS8xNjMvbWQ1LXZhbGlkYXRpb24tZXJyb3IKKyAgICAgICAgIworICAgICAgICAjIFVzZWNhc2UgOgorICAgICAgICAjIC0gc29tZW9uZSB1cGxvYWRzIGEgcGFja2FnZSBvbiBweXBpLCBhIG1kNSBpcyBnZW5lcmF0ZWQKKyAgICAgICAgIyAtIHNvbWVvbmUgbWFudWFsbHkgY29pbmRleGVzIHRoaXMgbGluayAod2l0aCB0aGUgbWQ1IGluIHRoZSB1cmwpIG9udG8KKyAgICAgICAgIyAgIGFuIGV4dGVybmFsIHBhZ2UgYWNjZXNzaWJsZSBmcm9tIHRoZSBwYWNrYWdlIHBhZ2UuCisgICAgICAgICMgLSBzb21lb25lIHJldXBsb2FkcyB0aGUgcGFja2FnZSAod2l0aCBhIGRpZmZlcmVudCBtZDUpCisgICAgICAgICMgLSB3aGlsZSBlYXN5X2luc3RhbGxpbmcsIGFuIE1ENSBlcnJvciBvY2N1cnMgYmVjYXVzZSB0aGUgZXh0ZXJuYWwKKyAgICAgICAgIyBsaW5rIGlzIHVzZWQKKyAgICAgICAgIyAtPiBUaGUgaW5kZXggc2hvdWxkIHVzZSB0aGUgbGluayBmcm9tIHB5cGksIG5vdCB0aGUgZXh0ZXJuYWwgb25lLgorCisgICAgICAgICMgc3RhcnQgYW4gaW5kZXggc2VydmVyCisgICAgICAgIGluZGV4X3VybCA9IHNlcnZlci5mdWxsX2FkZHJlc3MgKyAnL3NpbXBsZS8nCisKKyAgICAgICAgIyBzY2FuIGEgdGVzdCBpbmRleAorICAgICAgICBjcmF3bGVyID0gQ3Jhd2xlcihpbmRleF91cmwsIGZvbGxvd19leHRlcm5hbHM9VHJ1ZSkKKyAgICAgICAgcmVsZWFzZXMgPSBjcmF3bGVyLmdldF9yZWxlYXNlcygiZm9vYmFyIikKKyAgICAgICAgc2VydmVyLnN0b3AoKQorCisgICAgICAgICMgd2UgaGF2ZSBvbmx5IG9uZSBsaW5rLCBiZWNhdXNlIGxpbmtzIGFyZSBjb21wYXJlZCB3aXRob3V0IG1kNQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGxlbihyZWxlYXNlcykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMSwgbGVuKHJlbGVhc2VzWzBdLmRpc3RzKSkKKyAgICAgICAgIyB0aGUgbGluayBzaG91bGQgYmUgZnJvbSB0aGUgaW5kZXgKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgyLCBsZW4ocmVsZWFzZXNbMF0uZGlzdHNbJ3NkaXN0J10udXJscykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJzEyMzQ1Njc4OTAxMjM0NTY3JywKKyAgICAgICAgICAgICAgICAgICAgICAgICByZWxlYXNlc1swXS5kaXN0c1snc2Rpc3QnXS51cmxbJ2hhc2h2YWwnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnbWQ1JywgcmVsZWFzZXNbMF0uZGlzdHNbJ3NkaXN0J10udXJsWydoYXNobmFtZSddKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihfdGhyZWFkIGlzIE5vbmUsICduZWVkcyB0aHJlYWRzJykKKyAgICBAdXNlX3B5cGlfc2VydmVyKHN0YXRpY19maWxlc3lzdGVtX3BhdGhzPVsid2l0aF9ub3JlbF9saW5rcyJdLAorICAgICAgICBzdGF0aWNfdXJpX3BhdGhzPVsic2ltcGxlIiwgImV4dGVybmFsIl0pCisgICAgZGVmIHRlc3Rfbm90X3NjYW5fYWxsX2xpbmtzKHNlbGYsIHNlcnZlcik6CisgICAgICAgICMgRG8gbm90IGZvbGxvdyBhbGwgaW5kZXggcGFnZSBsaW5rcy4KKyAgICAgICAgIyBUaGUgbGlua3Mgbm90IHRhZ2dlZCB3aXRoIHJlbD0iZG93bmxvYWQiIGFuZCByZWw9ImhvbWVwYWdlIiBoYXZlCisgICAgICAgICMgdG8gbm90IGJlIHByb2Nlc3NlZCBieSB0aGUgcGFja2FnZSBpbmRleCwgd2hpbGUgcHJvY2Vzc2luZyAicGFnZXMiLgorCisgICAgICAgICMgcHJvY2VzcyB0aGUgcGFnZXMKKyAgICAgICAgY3Jhd2xlciA9IHNlbGYuX2dldF9zaW1wbGVfY3Jhd2xlcihzZXJ2ZXIsIGZvbGxvd19leHRlcm5hbHM9VHJ1ZSkKKyAgICAgICAgY3Jhd2xlci5nZXRfcmVsZWFzZXMoImZvb2JhciIpCisgICAgICAgICMgbm93IGl0IHNob3VsZCBoYXZlIHByb2Nlc3NlZCBvbmx5IHBhZ2VzIHdpdGggbGlua3MgcmVsPSJkb3dubG9hZCIKKyAgICAgICAgIyBhbmQgcmVsPSJob21lcGFnZSIKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiJXMvc2ltcGxlL2Zvb2Jhci8iICUgc2VydmVyLmZ1bGxfYWRkcmVzcywKKyAgICAgICAgICAgIGNyYXdsZXIuX3Byb2Nlc3NlZF91cmxzKSAgIyBpdCdzIHRoZSBzaW1wbGUgaW5kZXggcGFnZQorICAgICAgICBzZWxmLmFzc2VydEluKCIlcy9leHRlcm5hbC9ob21lcGFnZS5odG1sIiAlIHNlcnZlci5mdWxsX2FkZHJlc3MsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykgICMgdGhlIGV4dGVybmFsIGhvbWVwYWdlIGlzIHJlbD0iaG9tZXBhZ2UiCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oIiVzL2V4dGVybmFsL25vbnJlbC5odG1sIiAlIHNlcnZlci5mdWxsX2FkZHJlc3MsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykgICMgdGhpcyBsaW5rIGNvbnRhaW5zIG5vIHJlbD0qCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oIiVzL3VucmVsYXRlZC0wLjIudGFyLmd6IiAlIHNlcnZlci5mdWxsX2FkZHJlc3MsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykgICMgbGlua2VkIGZyb20gc2ltcGxlIGluZGV4IChubyByZWwpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oIiVzL2Zvb2Jhci0wLjEudGFyLmd6IiAlIHNlcnZlci5mdWxsX2FkZHJlc3MsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykgICMgbGlua2VkIGZyb20gc2ltcGxlIGluZGV4IChyZWwpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oIiVzL2Zvb2Jhci0yLjAudGFyLmd6IiAlIHNlcnZlci5mdWxsX2FkZHJlc3MsCisgICAgICAgICAgICBjcmF3bGVyLl9wcm9jZXNzZWRfdXJscykgICMgbGlua2VkIGZyb20gZXh0ZXJuYWwgaG9tZXBhZ2UgKHJlbCkKKworICAgIEB1bml0dGVzdC5za2lwSWYoX3RocmVhZCBpcyBOb25lLCAnbmVlZHMgdGhyZWFkcycpCisgICAgZGVmIHRlc3RfdXNlc19taXJyb3JzKHNlbGYpOgorICAgICAgICAjIFdoZW4gdGhlIG1haW4gcmVwb3NpdG9yeSBzZWVtcyBkb3duLCB0cnkgdXNpbmcgdGhlIGdpdmVuIG1pcnJvcnMiIiIKKyAgICAgICAgc2VydmVyID0gUHlQSVNlcnZlcigiZm9vX2Jhcl9iYXoiKQorICAgICAgICBtaXJyb3IgPSBQeVBJU2VydmVyKCJmb29fYmFyX2JheiIpCisgICAgICAgIG1pcnJvci5zdGFydCgpICAjIHdlIGRvbnQgc3RhcnQgdGhlIHNlcnZlciBoZXJlCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBjcmVhdGUgdGhlIGluZGV4IHVzaW5nIGJvdGggc2VydmVycworICAgICAgICAgICAgY3Jhd2xlciA9IENyYXdsZXIoc2VydmVyLmZ1bGxfYWRkcmVzcyArICIvc2ltcGxlLyIsIGhvc3RzPSgnKicsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgc2V0IHRoZSB0aW1lb3V0IHRvIDFzIGZvciB0aGUgdGVzdHMKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9MSwgbWlycm9ycz1bbWlycm9yLmZ1bGxfYWRkcmVzc10pCisKKyAgICAgICAgICAgICMgdGhpcyBzaG91bGQgbm90IHJhaXNlIGEgdGltZW91dAorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg0LCBsZW4oY3Jhd2xlci5nZXRfcmVsZWFzZXMoImZvbyIpKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG1pcnJvci5zdG9wKCkKKyAgICAgICAgICAgIHNlcnZlci5zdG9wKCkKKworICAgIGRlZiB0ZXN0X3NpbXBsZV9saW5rX21hdGNoZXIoc2VsZik6CisgICAgICAgICMgVGVzdCB0aGF0IHRoZSBzaW1wbGUgbGluayBtYXRjaGVyIGZpbmRzIHRoZSByaWdodCBsaW5rcyIiIgorICAgICAgICBjcmF3bGVyID0gQ3Jhd2xlcihmb2xsb3dfZXh0ZXJuYWxzPUZhbHNlKQorCisgICAgICAgICMgSGVyZSwgd2UgZGVmaW5lOgorICAgICAgICAjICAgMS4gb25lIGxpbmsgdGhhdCBtdXN0IGJlIGZvbGxvd2VkLCBjYXVzZSBpdCdzIGEgZG93bmxvYWQgb25lCisgICAgICAgICMgICAyLiBvbmUgbGluayB0aGF0IG11c3QgKm5vdCogYmUgZm9sbG93ZWQsIGNhdXNlIHRoZSBpc19icm93c2FibGUKKyAgICAgICAgIyAgICAgIHJldHVybnMgZmFsc2UgZm9yIGl0LgorICAgICAgICAjICAgMy4gb25lIGxpbmsgdGhhdCBtdXN0IGJlIGZvbGxvd2VkIGNhdXNlIGl0J3MgYSBob21lcGFnZSB0aGF0IGlzCisgICAgICAgICMgICAgICBicm93c2FibGUKKyAgICAgICAgIyAgIDQuIG9uZSBsaW5rIHRoYXQgbXVzdCBiZSBmb2xsb3dlZCwgYmVjYXVzZSBpdCBjb250YWluIGEgbWQ1IGhhc2gKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNyYXdsZXIuX2lzX2Jyb3dzYWJsZSgiJXN0ZXN0IiAlIGNyYXdsZXIuaW5kZXhfdXJsKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShjcmF3bGVyLl9pc19icm93c2FibGUoImh0dHA6Ly9kbC1saW5rMiIpKQorICAgICAgICBjb250ZW50ID0gIiIiCisgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9kbC1saW5rMSIgcmVsPSJkb3dubG9hZCI+ZG93bmxvYWRfbGluazE8L2E+CisgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly9kbC1saW5rMiIgcmVsPSJob21lcGFnZSI+aG9tZXBhZ2VfbGluazE8L2E+CisgICAgICAgIDxhIGhyZWY9IiUoaW5kZXhfdXJsKXN0ZXN0IiByZWw9ImhvbWVwYWdlIj5ob21lcGFnZV9saW5rMjwvYT4KKyAgICAgICAgPGEgaHJlZj0iJShpbmRleF91cmwpc3Rlc3QvZm9vYmFyLTEudGFyLmd6I21kNT1hYmNkZWY+ZG93bmxvYWRfbGluazI8L2E+CisgICAgICAgICIiIiAlIHsnaW5kZXhfdXJsJzogY3Jhd2xlci5pbmRleF91cmx9CisKKyAgICAgICAgIyBUZXN0IHRoYXQgdGhlIHNpbXBsZSBsaW5rIG1hdGNoZXIgeWllbGQgdGhlIGdvb2QgbGlua3MuCisgICAgICAgIGdlbmVyYXRvciA9IGNyYXdsZXIuX3NpbXBsZV9saW5rX21hdGNoZXIoY29udGVudCwgY3Jhd2xlci5pbmRleF91cmwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCclc3Rlc3QvZm9vYmFyLTEudGFyLmd6I21kNT1hYmNkZWYnICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY3Jhd2xlci5pbmRleF91cmwsIFRydWUpLCBuZXh0KGdlbmVyYXRvcikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCdodHRwOi8vZGwtbGluazEnLCBUcnVlKSwgbmV4dChnZW5lcmF0b3IpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgnJXN0ZXN0JyAlIGNyYXdsZXIuaW5kZXhfdXJsLCBGYWxzZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgbmV4dChnZW5lcmF0b3IpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTdG9wSXRlcmF0aW9uLCBnZW5lcmF0b3IuX19uZXh0X18pCisKKyAgICAgICAgIyBGb2xsb3cgdGhlIGV4dGVybmFsIGxpbmtzIGlzIHBvc3NpYmxlIChlZy4gaG9tZXBhZ2VzKQorICAgICAgICBjcmF3bGVyLmZvbGxvd19leHRlcm5hbHMgPSBUcnVlCisgICAgICAgIGdlbmVyYXRvciA9IGNyYXdsZXIuX3NpbXBsZV9saW5rX21hdGNoZXIoY29udGVudCwgY3Jhd2xlci5pbmRleF91cmwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCclc3Rlc3QvZm9vYmFyLTEudGFyLmd6I21kNT1hYmNkZWYnICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY3Jhd2xlci5pbmRleF91cmwsIFRydWUpLCBuZXh0KGdlbmVyYXRvcikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCdodHRwOi8vZGwtbGluazEnLCBUcnVlKSwgbmV4dChnZW5lcmF0b3IpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgnaHR0cDovL2RsLWxpbmsyJywgRmFsc2UpLCBuZXh0KGdlbmVyYXRvcikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCclc3Rlc3QnICUgY3Jhd2xlci5pbmRleF91cmwsIEZhbHNlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBuZXh0KGdlbmVyYXRvcikpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFN0b3BJdGVyYXRpb24sIGdlbmVyYXRvci5fX25leHRfXykKKworICAgIGRlZiB0ZXN0X2Jyb3dzZV9sb2NhbF9maWxlcyhzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoYXQgd2UgY2FuIGJyb3dzZSBsb2NhbCBmaWxlcyIiIgorICAgICAgICBpbmRleF91cmwgPSAiZmlsZTovLyIgKyBQWVBJX0RFRkFVTFRfU1RBVElDX1BBVEgKKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CisgICAgICAgICAgICAjIHVuZGVyIHdpbmRvd3MgdGhlIGNvcnJlY3Qgc3ludGF4IGlzOgorICAgICAgICAgICAgIyAgIGZpbGU6Ly8vQ3xcdGhlXHBhdGhcaGVyZQorICAgICAgICAgICAgIyBpbnN0ZWFkIG9mCisgICAgICAgICAgICAjICAgZmlsZTovL0M6XHRoZVxwYXRoXGhlcmUKKyAgICAgICAgICAgIGZpeCA9IHJlLmNvbXBpbGUocideKGZpbGU6Ly8pKFtBLVphLXpdKSg6KScpCisgICAgICAgICAgICBpbmRleF91cmwgPSBmaXguc3ViKCdcXDEvXFwyfCcsIGluZGV4X3VybCkKKworICAgICAgICBpbmRleF9wYXRoID0gb3Muc2VwLmpvaW4oW2luZGV4X3VybCwgInRlc3RfZm91bmRfbGlua3MiLCAic2ltcGxlIl0pCisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKGluZGV4X3BhdGgpCisgICAgICAgIGRpc3RzID0gY3Jhd2xlci5nZXRfcmVsZWFzZXMoImZvb2JhciIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoNCwgbGVuKGRpc3RzKSkKKworICAgIGRlZiB0ZXN0X2dldF9saW5rX21hdGNoZXIoc2VsZik6CisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKCJodHRwOi8vZXhhbXBsZS5vcmciKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdfc2ltcGxlX2xpbmtfbWF0Y2hlcicsIGNyYXdsZXIuX2dldF9saW5rX21hdGNoZXIoCisgICAgICAgICAgICAgICAgICAgICAgICAgImh0dHA6Ly9leGFtcGxlLm9yZy9zb21lL2ZpbGUiKS5fX25hbWVfXykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnX2RlZmF1bHRfbGlua19tYXRjaGVyJywgY3Jhd2xlci5fZ2V0X2xpbmtfbWF0Y2hlcigKKyAgICAgICAgICAgICAgICAgICAgICAgICAiaHR0cDovL290aGVyLXVybCIpLl9fbmFtZV9fKQorCisgICAgZGVmIHRlc3RfZGVmYXVsdF9saW5rX21hdGNoZXIoc2VsZik6CisgICAgICAgIGNyYXdsZXIgPSBDcmF3bGVyKCJodHRwOi8vZXhhbXBsZS5vcmciLCBtaXJyb3JzPVtdKQorICAgICAgICBjcmF3bGVyLmZvbGxvd19leHRlcm5hbHMgPSBUcnVlCisgICAgICAgIGNyYXdsZXIuX2lzX2Jyb3dzYWJsZSA9IGxhbWJkYSAqYXJnczogVHJ1ZQorICAgICAgICBiYXNlX3VybCA9ICJodHRwOi8vZXhhbXBsZS5vcmcvc29tZS9maWxlLyIKKyAgICAgICAgY29udGVudCA9ICIiIgorPGEgaHJlZj0iLi4vaG9tZXBhZ2UiIHJlbD0iaG9tZXBhZ2UiPmxpbms8L2E+Cis8YSBocmVmPSIuLi9kb3dubG9hZCIgcmVsPSJkb3dubG9hZCI+bGluazI8L2E+Cis8YSBocmVmPSIuLi9zaW1wbGV1cmwiPmxpbmsyPC9hPgorICAgICAgICAiIiIKKyAgICAgICAgZm91bmRfbGlua3MgPSBzZXQodXJpIGZvciB1cmksIF8gaW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgY3Jhd2xlci5fZGVmYXVsdF9saW5rX21hdGNoZXIoY29udGVudCwgYmFzZV91cmwpKQorICAgICAgICBzZWxmLmFzc2VydEluKCdodHRwOi8vZXhhbXBsZS5vcmcvc29tZS9ob21lcGFnZScsIGZvdW5kX2xpbmtzKQorICAgICAgICBzZWxmLmFzc2VydEluKCdodHRwOi8vZXhhbXBsZS5vcmcvc29tZS9zaW1wbGV1cmwnLCBmb3VuZF9saW5rcykKKyAgICAgICAgc2VsZi5hc3NlcnRJbignaHR0cDovL2V4YW1wbGUub3JnL3NvbWUvZG93bmxvYWQnLCBmb3VuZF9saW5rcykKKworICAgIEB1bml0dGVzdC5za2lwSWYoX3RocmVhZCBpcyBOb25lLCAnbmVlZHMgdGhyZWFkcycpCisgICAgQHVzZV9weXBpX3NlcnZlcigicHJvamVjdF9saXN0IikKKyAgICBkZWYgdGVzdF9zZWFyY2hfcHJvamVjdHMoc2VsZiwgc2VydmVyKToKKyAgICAgICAgIyB3ZSBjYW4gc2VhcmNoIHRoZSBpbmRleCBmb3Igc29tZSBwcm9qZWN0cywgb24gdGhlaXIgbmFtZXMKKyAgICAgICAgIyB0aGUgY2FzZSB1c2VkIG5vIG1hdHRlcnMgaGVyZQorICAgICAgICBjcmF3bGVyID0gc2VsZi5fZ2V0X3NpbXBsZV9jcmF3bGVyKHNlcnZlcikKKyAgICAgICAgdGVzdHMgPSAoKCdGb29iYXInLCBbJ0Zvb0Jhci1iYXInLCAnRm9vYmFyLWJheicsICdCYXotRm9vQmFyJ10pLAorICAgICAgICAgICAgICAgICAoJ2Zvb2JhcionLCBbJ0Zvb0Jhci1iYXInLCAnRm9vYmFyLWJheiddKSwKKyAgICAgICAgICAgICAgICAgKCcqZm9vYmFyJywgWydCYXotRm9vQmFyJ10pKQorCisgICAgICAgIGZvciBzZWFyY2gsIGV4cGVjdGVkIGluIHRlc3RzOgorICAgICAgICAgICAgcHJvamVjdHMgPSBbcC5uYW1lIGZvciBwIGluIGNyYXdsZXIuc2VhcmNoX3Byb2plY3RzKHNlYXJjaCldCisgICAgICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChleHBlY3RlZCwgcHJvamVjdHMpCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICByZXR1cm4gdW5pdHRlc3QubWFrZVN1aXRlKFNpbXBsZUNyYXdsZXJUZXN0Q2FzZSkKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9weXBpX3htbHJwYy5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9weXBpX3htbHJwYy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iN2IzODJkCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3B5cGlfeG1scnBjLnB5CkBAIC0wLDAgKzEsMTAxIEBACisiIiJUZXN0cyBmb3IgdGhlIHBhY2thZ2luZy5weXBpLnhtbHJwYyBtb2R1bGUuIiIiCisKK2Zyb20gcGFja2FnaW5nLnB5cGkueG1scnBjIGltcG9ydCBDbGllbnQsIEludmFsaWRTZWFyY2hGaWVsZCwgUHJvamVjdE5vdEZvdW5kCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdAorZnJvbSBwYWNrYWdpbmcudGVzdHMuc3VwcG9ydCBpbXBvcnQgZmFrZV9kZWMKKwordHJ5OgorICAgIGltcG9ydCB0aHJlYWRpbmcKKyAgICBmcm9tIHBhY2thZ2luZy50ZXN0cy5weXBpX3NlcnZlciBpbXBvcnQgdXNlX3htbHJwY19zZXJ2ZXIKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICB0aHJlYWRpbmcgPSBOb25lCisgICAgdXNlX3htbHJwY19zZXJ2ZXIgPSBmYWtlX2RlYworCisKK0B1bml0dGVzdC5za2lwSWYodGhyZWFkaW5nIGlzIE5vbmUsICJOZWVkcyB0aHJlYWRpbmciKQorY2xhc3MgVGVzdFhNTFJQQ0NsaWVudCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIF9nZXRfY2xpZW50KHNlbGYsIHNlcnZlciwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcmV0dXJuIENsaWVudChzZXJ2ZXIuZnVsbF9hZGRyZXNzLCAqYXJncywgKiprd2FyZ3MpCisKKyAgICBAdXNlX3htbHJwY19zZXJ2ZXIoKQorICAgIGRlZiB0ZXN0X3NlYXJjaF9wcm9qZWN0cyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjbGllbnQgPSBzZWxmLl9nZXRfY2xpZW50KHNlcnZlcikKKyAgICAgICAgc2VydmVyLnhtbHJwYy5zZXRfc2VhcmNoX3Jlc3VsdChbJ0Zvb0JhcicsICdGb28nLCAnRm9vRm9vJ10pCisgICAgICAgIHJlc3VsdHMgPSBbci5uYW1lIGZvciByIGluIGNsaWVudC5zZWFyY2hfcHJvamVjdHMobmFtZT0nRm9vJyldCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMywgbGVuKHJlc3VsdHMpKQorICAgICAgICBzZWxmLmFzc2VydEluKCdGb29CYXInLCByZXN1bHRzKQorICAgICAgICBzZWxmLmFzc2VydEluKCdGb28nLCByZXN1bHRzKQorICAgICAgICBzZWxmLmFzc2VydEluKCdGb29Gb28nLCByZXN1bHRzKQorCisgICAgZGVmIHRlc3Rfc2VhcmNoX3Byb2plY3RzX2JhZF9maWVsZHMoc2VsZik6CisgICAgICAgIGNsaWVudCA9IENsaWVudCgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEludmFsaWRTZWFyY2hGaWVsZCwgY2xpZW50LnNlYXJjaF9wcm9qZWN0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgaW52YWxpZD0idGVzdCIpCisKKyAgICBAdXNlX3htbHJwY19zZXJ2ZXIoKQorICAgIGRlZiB0ZXN0X2dldF9yZWxlYXNlcyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjbGllbnQgPSBzZWxmLl9nZXRfY2xpZW50KHNlcnZlcikKKyAgICAgICAgc2VydmVyLnhtbHJwYy5zZXRfZGlzdHJpYnV0aW9ucyhbCisgICAgICAgICAgICB7J25hbWUnOiAnRm9vQmFyJywgJ3ZlcnNpb24nOiAnMS4xJ30sCisgICAgICAgICAgICB7J25hbWUnOiAnRm9vQmFyJywgJ3ZlcnNpb24nOiAnMS4yJywgJ3VybCc6ICdodHRwOi8vc29tZS91cmwvJ30sCisgICAgICAgICAgICB7J25hbWUnOiAnRm9vQmFyJywgJ3ZlcnNpb24nOiAnMS4zJywgJ3VybCc6ICdodHRwOi8vb3RoZXIvdXJsLyd9LAorICAgICAgICBdKQorCisgICAgICAgICMgdXNlIGEgbGFtYmRhIGhlcmUgdG8gYXZvaWQgYW4gdXNlbGVzcyBtb2NrIGNhbGwKKyAgICAgICAgc2VydmVyLnhtbHJwYy5saXN0X3JlbGVhc2VzID0gbGFtYmRhICphLCAqKms6IFsnMS4xJywgJzEuMicsICcxLjMnXQorCisgICAgICAgIHJlbGVhc2VzID0gY2xpZW50LmdldF9yZWxlYXNlcygnRm9vQmFyICg8PTEuMiknKQorICAgICAgICAjIGRvbnQgY2FsbCByZWxlYXNlX2RhdGEgYW5kIHJlbGVhc2VfdXJsOyBqdXN0IHJldHVybiBuYW1lIGFuZCB2ZXJzaW9uLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihyZWxlYXNlcykpCisgICAgICAgIHZlcnNpb25zID0gcmVsZWFzZXMuZ2V0X3ZlcnNpb25zKCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignMS4xJywgdmVyc2lvbnMpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJzEuMicsIHZlcnNpb25zKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKCcxLjMnLCB2ZXJzaW9ucykKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQcm9qZWN0Tm90Rm91bmQsIGNsaWVudC5nZXRfcmVsZWFzZXMsICdGb28nKQorCisgICAgQHVzZV94bWxycGNfc2VydmVyKCkKKyAgICBkZWYgdGVzdF9nZXRfZGlzdHJpYnV0aW9ucyhzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjbGllbnQgPSBzZWxmLl9nZXRfY2xpZW50KHNlcnZlcikKKyAgICAgICAgc2VydmVyLnhtbHJwYy5zZXRfZGlzdHJpYnV0aW9ucyhbCisgICAgICAgICAgICB7J25hbWUnOiAnRm9vQmFyJywgJ3ZlcnNpb24nOiAnMS4xJywKKyAgICAgICAgICAgICAndXJsJzogJ2h0dHA6Ly9leGFtcGxlLm9yZy9mb29iYXItMS4xLXNkaXN0LnRhci5neicsCisgICAgICAgICAgICAgJ2RpZ2VzdCc6ICcxMjM0NTY3JywKKyAgICAgICAgICAgICAndHlwZSc6ICdzZGlzdCcsICdweXRob25fdmVyc2lvbic6ICdzb3VyY2UnfSwKKyAgICAgICAgICAgIHsnbmFtZSc6J0Zvb0JhcicsICd2ZXJzaW9uJzogJzEuMScsCisgICAgICAgICAgICAgJ3VybCc6ICdodHRwOi8vZXhhbXBsZS5vcmcvZm9vYmFyLTEuMS1iZGlzdC50YXIuZ3onLAorICAgICAgICAgICAgICdkaWdlc3QnOiAnODkxMjM0NScsICd0eXBlJzogJ2JkaXN0J30sCisgICAgICAgIF0pCisKKyAgICAgICAgcmVsZWFzZXMgPSBjbGllbnQuZ2V0X3JlbGVhc2VzKCdGb29CYXInLCAnMS4xJykKKyAgICAgICAgY2xpZW50LmdldF9kaXN0cmlidXRpb25zKCdGb29CYXInLCAnMS4xJykKKyAgICAgICAgcmVsZWFzZSA9IHJlbGVhc2VzLmdldF9yZWxlYXNlKCcxLjEnKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoJ2h0dHA6Ly9leGFtcGxlLm9yZy9mb29iYXItMS4xLXNkaXN0LnRhci5neicsCisgICAgICAgICAgICAgICAgICAgICAgICByZWxlYXNlWydzZGlzdCddLnVybFsndXJsJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgnaHR0cDovL2V4YW1wbGUub3JnL2Zvb2Jhci0xLjEtYmRpc3QudGFyLmd6JywKKyAgICAgICAgICAgICAgICByZWxlYXNlWydiZGlzdCddLnVybFsndXJsJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVsZWFzZVsnc2Rpc3QnXS5weXRob25fdmVyc2lvbiwgJ3NvdXJjZScpCisKKyAgICBAdXNlX3htbHJwY19zZXJ2ZXIoKQorICAgIGRlZiB0ZXN0X2dldF9tZXRhZGF0YShzZWxmLCBzZXJ2ZXIpOgorICAgICAgICBjbGllbnQgPSBzZWxmLl9nZXRfY2xpZW50KHNlcnZlcikKKyAgICAgICAgc2VydmVyLnhtbHJwYy5zZXRfZGlzdHJpYnV0aW9ucyhbCisgICAgICAgICAgICB7J25hbWUnOiAnRm9vQmFyJywKKyAgICAgICAgICAgICAndmVyc2lvbic6ICcxLjEnLAorICAgICAgICAgICAgICdrZXl3b3Jkcyc6ICcnLAorICAgICAgICAgICAgICdvYnNvbGV0ZXNfZGlzdCc6IFsnRm9vRm9vJ10sCisgICAgICAgICAgICAgJ3JlcXVpcmVzX2V4dGVybmFsJzogWydGb28nXSwKKyAgICAgICAgICAgIH1dKQorICAgICAgICByZWxlYXNlID0gY2xpZW50LmdldF9tZXRhZGF0YSgnRm9vQmFyJywgJzEuMScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydGb28nXSwgcmVsZWFzZS5tZXRhZGF0YVsncmVxdWlyZXNfZXh0ZXJuYWwnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ0Zvb0ZvbyddLCByZWxlYXNlLm1ldGFkYXRhWydvYnNvbGV0ZXNfZGlzdCddKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgc3VpdGUgPSB1bml0dGVzdC5UZXN0U3VpdGUoKQorICAgIHN1aXRlLmFkZFRlc3QodW5pdHRlc3QubWFrZVN1aXRlKFRlc3RYTUxSUENDbGllbnQpKQorICAgIHJldHVybiBzdWl0ZQorCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9J3Rlc3Rfc3VpdGUnKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3J1bi5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9ydW4ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODRiOWJmNgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9ydW4ucHkKQEAgLTAsMCArMSw3NSBAQAorIiIiVGVzdHMgZm9yIHBhY2thZ2luZy5ydW4uIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGluc3RhbGwKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorZnJvbSBwYWNrYWdpbmcucnVuIGltcG9ydCBtYWluCisKK2Zyb20gdGVzdC5zY3JpcHRfaGVscGVyIGltcG9ydCBhc3NlcnRfcHl0aG9uX29rCisKKyMgc2V0dXAgc2NyaXB0IHRoYXQgdXNlcyBfX2ZpbGVfXworc2V0dXBfdXNpbmdfX19maWxlX18gPSAiIiJcCitfX2ZpbGVfXworCitmcm9tIHBhY2thZ2luZy5ydW4gaW1wb3J0IHNldHVwCitzZXR1cCgpCisiIiIKKworc2V0dXBfcHJpbnRzX2N3ZCA9ICIiIlwKK2ltcG9ydCBvcworcHJpbnQgb3MuZ2V0Y3dkKCkKKworZnJvbSBwYWNrYWdpbmcucnVuIGltcG9ydCBzZXR1cAorc2V0dXAoKQorIiIiCisKKworY2xhc3MgUnVuVGVzdENhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFJ1blRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYub2xkX2FyZ3YgPSBzeXMuYXJndiwgc3lzLmFyZ3ZbOl0KKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc3lzLmFyZ3YgPSBzZWxmLm9sZF9hcmd2WzBdCisgICAgICAgIHN5cy5hcmd2WzpdID0gc2VsZi5vbGRfYXJndlsxXQorICAgICAgICBzdXBlcihSdW5UZXN0Q2FzZSwgc2VsZikudGVhckRvd24oKQorCisgICAgIyBUT0RPIHJlc3RvcmUgdGhlIHRlc3RzIHJlbW92ZWQgc2l4IG1vbnRocyBhZ28gYW5kIHBvcnQgdGhlbSB0byBweXNldHVwCisKKyAgICBkZWYgdGVzdF9pbnN0YWxsKHNlbGYpOgorICAgICAgICAjIG1ha2luZyBzdXJlIGluc3RhbGwgcmV0dXJucyAwIG9yIDEgZXhpdCBjb2RlcworICAgICAgICBwcm9qZWN0ID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICdwYWNrYWdlLnRneicpCisgICAgICAgIGluc3RhbGxfcGF0aCA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIG9sZF9nZXRfcGF0aCA9IGluc3RhbGwuZ2V0X3BhdGgKKyAgICAgICAgaW5zdGFsbC5nZXRfcGF0aCA9IGxhbWJkYSBwYXRoOiBpbnN0YWxsX3BhdGgKKyAgICAgICAgb2xkX21vZCA9IG9zLnN0YXQoaW5zdGFsbF9wYXRoKS5zdF9tb2RlCisgICAgICAgIG9zLmNobW9kKGluc3RhbGxfcGF0aCwgMCkKKyAgICAgICAgb2xkX3N0ZGVyciA9IHN5cy5zdGRlcnIKKyAgICAgICAgc3lzLnN0ZGVyciA9IFN0cmluZ0lPKCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpbnN0YWxsLmluc3RhbGwocHJvamVjdCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1haW4oWydpbnN0YWxsJywgJ2JsYWJsYSddKSwgMSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHN5cy5zdGRlcnIgPSBvbGRfc3RkZXJyCisgICAgICAgICAgICBvcy5jaG1vZChpbnN0YWxsX3BhdGgsIG9sZF9tb2QpCisgICAgICAgICAgICBpbnN0YWxsLmdldF9wYXRoID0gb2xkX2dldF9wYXRoCisKKyAgICBkZWYgdGVzdF9zaG93X2hlbHAoc2VsZik6CisgICAgICAgICMgc21va2UgdGVzdCwganVzdCBtYWtlcyBzdXJlIHNvbWUgaGVscCBpcyBkaXNwbGF5ZWQKKyAgICAgICAgc3RhdHVzLCBvdXQsIGVyciA9IGFzc2VydF9weXRob25fb2soJy1tJywgJ3BhY2thZ2luZy5ydW4nLCAnLS1oZWxwJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGF0dXMsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihvdXQsIGInJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlcnIsIGInJykKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoUnVuVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3Rfc3VwcG9ydC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF9zdXBwb3J0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBhZTllMWIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3Rfc3VwcG9ydC5weQpAQCAtMCwwICsxLDc4IEBACitpbXBvcnQgb3MKK2ltcG9ydCB0ZW1wZmlsZQorCitmcm9tIHBhY2thZ2luZy5kaXN0IGltcG9ydCBEaXN0cmlidXRpb24KK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCBzdXBwb3J0LCB1bml0dGVzdAorCisKK2NsYXNzIFRlc3RpbmdTdXBwb3J0VGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfZmFrZV9kZWMoc2VsZik6CisgICAgICAgIEBzdXBwb3J0LmZha2VfZGVjKDEsIDIsIGs9MykKKyAgICAgICAgZGVmIGZ1bmMoYXJnMCwgKmFyZ3MsICoqa2FyZ3MpOgorICAgICAgICAgICAgcmV0dXJuIGFyZzAsIGFyZ3MsIGthcmdzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnVuYygtMSwgLTIsIGs9LTMpLCAoLTEsICgtMiwpLCB7J2snOiAtM30pKQorCisgICAgZGVmIHRlc3RfVGVtcGRpck1hbmFnZXIoc2VsZik6CisgICAgICAgIGZpbGVzID0ge30KKworICAgICAgICBjbGFzcyBUZXN0ZXIoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgICAgICAgICBkZWYgdGVzdF9ta3RlbXBmaWxlKHNlbGYyKToKKyAgICAgICAgICAgICAgICB0bXBmaWxlID0gc2VsZjIubWt0ZW1wZmlsZSgpCisgICAgICAgICAgICAgICAgZmlsZXNbJ3Rlc3RfbWt0ZW1wZmlsZSddID0gdG1wZmlsZS5uYW1lCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxlKHRtcGZpbGUubmFtZSkpCisKKyAgICAgICAgICAgIGRlZiB0ZXN0X21rZHRlbXAoc2VsZjIpOgorICAgICAgICAgICAgICAgIHRtcGRpciA9IHNlbGYyLm1rZHRlbXAoKQorICAgICAgICAgICAgICAgIGZpbGVzWyd0ZXN0X21rZHRlbXAnXSA9IHRtcGRpcgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZGlyKHRtcGRpcikpCisKKyAgICAgICAgICAgIGRlZiB0ZXN0X3dyaXRlX2ZpbGUoc2VsZjIpOgorICAgICAgICAgICAgICAgIHRtcGRpciA9IHNlbGYyLm1rZHRlbXAoKQorICAgICAgICAgICAgICAgIGZpbGVzWyd0ZXN0X3dyaXRlX2ZpbGUnXSA9IHRtcGRpcgorICAgICAgICAgICAgICAgIHNlbGYyLndyaXRlX2ZpbGUoKHRtcGRpciwgJ2ZpbGUxJyksICdtZSBmaWxlIDEnKQorICAgICAgICAgICAgICAgIGZpbGUxID0gb3MucGF0aC5qb2luKHRtcGRpciwgJ2ZpbGUxJykKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2ZpbGUoZmlsZTEpKQorICAgICAgICAgICAgICAgIHRleHQgPSAnJworICAgICAgICAgICAgICAgIHdpdGggb3BlbihmaWxlMSwgJ3InKSBhcyBmOgorICAgICAgICAgICAgICAgICAgICB0ZXh0ID0gZi5yZWFkKCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRleHQsICdtZSBmaWxlIDEnKQorCisgICAgICAgICAgICBkZWYgdGVzdF9jcmVhdGVfZGlzdChzZWxmMik6CisgICAgICAgICAgICAgICAgcHJvamVjdF9kaXIsIGRpc3QgPSBzZWxmMi5jcmVhdGVfZGlzdCgpCisgICAgICAgICAgICAgICAgZmlsZXNbJ3Rlc3RfY3JlYXRlX2Rpc3QnXSA9IHByb2plY3RfZGlyCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNkaXIocHJvamVjdF9kaXIpKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShkaXN0LCBEaXN0cmlidXRpb24pCisKKyAgICAgICAgICAgIGRlZiB0ZXN0X2Fzc2VydElzRmlsZShzZWxmMik6CisgICAgICAgICAgICAgICAgZmQsIGZuID0gdGVtcGZpbGUubWtzdGVtcCgpCisgICAgICAgICAgICAgICAgb3MuY2xvc2UoZmQpCisgICAgICAgICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN1cHBvcnQudW5saW5rLCBmbikKKyAgICAgICAgICAgICAgICBzZWxmMi5hc3NlcnRJc0ZpbGUoZm4pCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQXNzZXJ0aW9uRXJyb3IsIHNlbGYyLmFzc2VydElzRmlsZSwgJ2ZvTycpCisKKyAgICAgICAgICAgIGRlZiB0ZXN0X2Fzc2VydElzTm90RmlsZShzZWxmMik6CisgICAgICAgICAgICAgICAgdG1wZGlyID0gc2VsZjIubWtkdGVtcCgpCisgICAgICAgICAgICAgICAgc2VsZjIuYXNzZXJ0SXNOb3RGaWxlKHRtcGRpcikKKworICAgICAgICB0ZXN0ZXIgPSBUZXN0ZXIoKQorICAgICAgICBmb3IgbmFtZSBpbiAoJ3Rlc3RfbWt0ZW1wZmlsZScsICd0ZXN0X21rZHRlbXAnLCAndGVzdF93cml0ZV9maWxlJywKKyAgICAgICAgICAgICAgICAgICAgICd0ZXN0X2NyZWF0ZV9kaXN0JywgJ3Rlc3RfYXNzZXJ0SXNGaWxlJywKKyAgICAgICAgICAgICAgICAgICAgICd0ZXN0X2Fzc2VydElzTm90RmlsZScpOgorICAgICAgICAgICAgdGVzdGVyLnNldFVwKCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBnZXRhdHRyKHRlc3RlciwgbmFtZSkoKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0ZXN0ZXIudGVhckRvd24oKQorCisgICAgICAgICAgICAjIGNoZWNrIGNsZWFuLXVwCisgICAgICAgICAgICBpZiBuYW1lIGluIGZpbGVzOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoZmlsZXNbbmFtZV0pKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgcmV0dXJuIHVuaXR0ZXN0Lm1ha2VTdWl0ZShUZXN0aW5nU3VwcG9ydFRlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3VuaW5zdGFsbC5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF91bmluc3RhbGwucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjBkOWJhNwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF91bmluc3RhbGwucHkKQEAgLTAsMCArMSwxMjQgQEAKKyIiIlRlc3RzIGZvciB0aGUgcGFja2FnaW5nLnVuaW5zdGFsbCBtb2R1bGUuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBsb2dnaW5nCitpbXBvcnQgcGFja2FnaW5nLnV0aWwKKworZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCBQYWNrYWdpbmdFcnJvcgorZnJvbSBwYWNrYWdpbmcuaW5zdGFsbCBpbXBvcnQgcmVtb3ZlCitmcm9tIHBhY2thZ2luZy5kYXRhYmFzZSBpbXBvcnQgZGlzYWJsZV9jYWNoZSwgZW5hYmxlX2NhY2hlCisKK2Zyb20gcGFja2FnaW5nLnRlc3RzIGltcG9ydCB1bml0dGVzdCwgc3VwcG9ydAorCitTRVRVUF9DRkcgPSAiIiIKK1ttZXRhZGF0YV0KK25hbWUgPSAlKG5hbWUpcwordmVyc2lvbiA9ICUodmVyc2lvbilzCisKK1tmaWxlc10KK3BhY2thZ2VzID0KKyAgICAlKHBrZylzCisgICAgJShwa2cpcy5zdWIKKyIiIgorCisKK2NsYXNzIFVuaW5zdGFsbFRlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5FbnZpcm9uUmVzdG9yZXIsCisgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICByZXN0b3JlX2Vudmlyb24gPSBbJ1BMQVQnXQorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihVbmluc3RhbGxUZXN0Q2FzZSwgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoZW5hYmxlX2NhY2hlKQorICAgICAgICBzZWxmLmFkZENsZWFudXAocGFja2FnaW5nLnV0aWwuX3BhdGhfY3JlYXRlZC5jbGVhcikKKyAgICAgICAgZGlzYWJsZV9jYWNoZSgpCisKKyAgICBkZWYgZ2V0X3BhdGgoc2VsZiwgZGlzdCwgbmFtZSk6CisgICAgICAgICMgdGhlIGRpc3QgYXJndW1lbnQgbXVzdCBjb250YWluIGFuIGluc3RhbGxfZGlzdCBjb21tYW5kIGNvcnJlY3RseQorICAgICAgICAjIGluaXRpYWxpemVkIHdpdGggYSBwcmVmaXggb3B0aW9uIGFuZCBmaW5hbGl6ZWQgYmVmb3JlZCB0aGlzIG1ldGhvZAorICAgICAgICAjIGNhbiBiZSBjYWxsZWQgc3VjY2Vzc2Z1bGx5OyBwcmFjdGljYWxseSwgdGhpcyBtZWFucyB0aGF0IHlvdSBzaG91bGQKKyAgICAgICAgIyBjYWxsIHNlbGYuaW5zdGFsbF9kaXN0IGJlZm9yZSBzZWxmLmdldF9wYXRoCisgICAgICAgIGNtZCA9IGRpc3QuZ2V0X2NvbW1hbmRfb2JqKCdpbnN0YWxsX2Rpc3QnKQorICAgICAgICByZXR1cm4gZ2V0YXR0cihjbWQsICdpbnN0YWxsXycgKyBuYW1lKQorCisgICAgZGVmIG1ha2VfZGlzdChzZWxmLCBuYW1lPSdGb28nLCAqKmt3KToKKyAgICAgICAga3dbJ25hbWUnXSA9IG5hbWUKKyAgICAgICAgcGtnID0gbmFtZS5sb3dlcigpCisgICAgICAgIGlmICd2ZXJzaW9uJyBub3QgaW4ga3c6CisgICAgICAgICAgICBrd1sndmVyc2lvbiddID0gJzAuMScKKyAgICAgICAgcHJvamVjdF9kaXIsIGRpc3QgPSBzZWxmLmNyZWF0ZV9kaXN0KCoqa3cpCisgICAgICAgIGt3Wydwa2cnXSA9IHBrZworCisgICAgICAgIHBrZ19kaXIgPSBvcy5wYXRoLmpvaW4ocHJvamVjdF9kaXIsIHBrZykKKyAgICAgICAgb3MubWFrZWRpcnMob3MucGF0aC5qb2luKHBrZ19kaXIsICdzdWInKSkKKworICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHByb2plY3RfZGlyLCAnc2V0dXAuY2ZnJyksIFNFVFVQX0NGRyAlIGt3KQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHBrZ19kaXIsICdfX2luaXRfXy5weScpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnX2RpciwgcGtnICsgJ191dGlscy5weScpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnX2RpciwgJ3N1YicsICdfX2luaXRfXy5weScpLCAnIycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnX2RpciwgJ3N1YicsIHBrZyArICdfdXRpbHMucHknKSwgJyMnKQorCisgICAgICAgIHJldHVybiBwcm9qZWN0X2RpcgorCisgICAgZGVmIGluc3RhbGxfZGlzdChzZWxmLCBuYW1lPSdGb28nLCBkaXJuYW1lPU5vbmUsICoqa3cpOgorICAgICAgICBpZiBub3QgZGlybmFtZToKKyAgICAgICAgICAgIGRpcm5hbWUgPSBzZWxmLm1ha2VfZGlzdChuYW1lLCAqKmt3KQorICAgICAgICBvcy5jaGRpcihkaXJuYW1lKQorCisgICAgICAgIGRpc3QgPSBzdXBwb3J0LlRlc3REaXN0cmlidXRpb24oKQorICAgICAgICAjIGZvciBzb21lIHVuZmF0aG9tYWJsZSByZWFzb24sIHRoZSB0ZXN0cyB3aWxsIGZhaWwgaG9ycmlibHkgaWYgdGhlCisgICAgICAgICMgcGFyc2VfY29uZmlnX2ZpbGVzIG1ldGhvZCBpcyBub3QgY2FsbGVkLCBldmVuIGlmIGl0IGRvZXNuJ3QgZG8KKyAgICAgICAgIyBhbnl0aGluZyB1c2VmdWw7IHRyeWluZyB0byBidWlsZCBhbmQgdXNlIGEgY29tbWFuZCBvYmplY3QgbWFudWFsbHkKKyAgICAgICAgIyBhbHNvIGZhaWxzCisgICAgICAgIGRpc3QucGFyc2VfY29uZmlnX2ZpbGVzKCkKKyAgICAgICAgZGlzdC5maW5hbGl6ZV9vcHRpb25zKCkKKyAgICAgICAgZGlzdC5ydW5fY29tbWFuZCgnaW5zdGFsbF9kaXN0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICB7J3ByZWZpeCc6ICgnY29tbWFuZCBsaW5lJywgc2VsZi5ta2R0ZW1wKCkpfSkKKworICAgICAgICBzaXRlX3BhY2thZ2VzID0gc2VsZi5nZXRfcGF0aChkaXN0LCAncHVyZWxpYicpCisgICAgICAgIHJldHVybiBkaXN0LCBzaXRlX3BhY2thZ2VzCisKKyAgICBkZWYgdGVzdF91bmluc3RhbGxfdW5rbm93bl9kaXN0cmlidXRpb24oc2VsZik6CisgICAgICAgIGRpc3QsIHNpdGVfcGFja2FnZXMgPSBzZWxmLmluc3RhbGxfZGlzdCgnRm9vc3BhbScpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ0Vycm9yLCByZW1vdmUsICdGb28nLAorICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRocz1bc2l0ZV9wYWNrYWdlc10pCisKKyAgICBkZWYgdGVzdF91bmluc3RhbGwoc2VsZik6CisgICAgICAgIGRpc3QsIHNpdGVfcGFja2FnZXMgPSBzZWxmLmluc3RhbGxfZGlzdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNGaWxlKHNpdGVfcGFja2FnZXMsICdmb28nLCAnX19pbml0X18ucHknKQorICAgICAgICBzZWxmLmFzc2VydElzRmlsZShzaXRlX3BhY2thZ2VzLCAnZm9vJywgJ3N1YicsICdfX2luaXRfXy5weScpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNGaWxlKHNpdGVfcGFja2FnZXMsICdGb28tMC4xLmRpc3QtaW5mbycsICdSRUNPUkQnKQorICAgICAgICBzZWxmLmFzc2VydFRydWUocmVtb3ZlKCdGb28nLCBwYXRocz1bc2l0ZV9wYWNrYWdlc10pKQorICAgICAgICBzZWxmLmFzc2VydElzTm90RmlsZShzaXRlX3BhY2thZ2VzLCAnZm9vJywgJ3N1YicsICdfX2luaXRfXy5weScpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3RGaWxlKHNpdGVfcGFja2FnZXMsICdGb28tMC4xLmRpc3QtaW5mbycsICdSRUNPUkQnKQorCisgICAgZGVmIHRlc3RfdW5pbnN0YWxsX2Vycm9yX2hhbmRsaW5nKHNlbGYpOgorICAgICAgICAjIG1ha2VzIHN1cmUgaWYgdGhlcmUgYXJlIE9TRXJyb3JzIChsaWtlIHBlcm1pc3Npb24gZGVuaWVkKQorICAgICAgICAjIHJlbW92ZSgpIHN0b3BzIGFuZCBkaXNwbGF5cyBhIGNsZWFuIGVycm9yCisgICAgICAgIGRpc3QsIHNpdGVfcGFja2FnZXMgPSBzZWxmLmluc3RhbGxfZGlzdCgnTWVoJykKKworICAgICAgICAjIGJyZWFraW5nIG9zLnJlbmFtZQorICAgICAgICBvbGQgPSBvcy5yZW5hbWUKKworICAgICAgICBkZWYgX3JlbmFtZShzb3VyY2UsIHRhcmdldCk6CisgICAgICAgICAgICByYWlzZSBPU0Vycm9yKDQyLCAnaW1wb3NzaWJsZSBvcGVyYXRpb24nKQorCisgICAgICAgIG9zLnJlbmFtZSA9IF9yZW5hbWUKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShyZW1vdmUoJ01laCcsIHBhdGhzPVtzaXRlX3BhY2thZ2VzXSkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5yZW5hbWUgPSBvbGQKKworICAgICAgICBsb2dzID0gW2xvZyBmb3IgbG9nIGluIHNlbGYuZ2V0X2xvZ3MobG9nZ2luZy5JTkZPKQorICAgICAgICAgICAgICAgIGlmIGxvZy5zdGFydHN3aXRoKCdFcnJvcjonKV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsb2dzLCBbJ0Vycm9yOiBbRXJybm8gNDJdIGltcG9zc2libGUgb3BlcmF0aW9uJ10pCisKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlbW92ZSgnTWVoJywgcGF0aHM9W3NpdGVfcGFja2FnZXNdKSkKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoVW5pbnN0YWxsVGVzdENhc2UpCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0ndGVzdF9zdWl0ZScpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfdW5peGNjb21waWxlci5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF91bml4Y2NvbXBpbGVyLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE2YTFhZjMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfdW5peGNjb21waWxlci5weQpAQCAtMCwwICsxLDEzMiBAQAorIiIiVGVzdHMgZm9yIHBhY2thZ2luZy51bml4Y2NvbXBpbGVyLiIiIgoraW1wb3J0IHN5cworCitpbXBvcnQgc3lzY29uZmlnCitmcm9tIHBhY2thZ2luZy5jb21waWxlci51bml4Y2NvbXBpbGVyIGltcG9ydCBVbml4Q0NvbXBpbGVyCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKKworCitjbGFzcyBVbml4Q0NvbXBpbGVyVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLl9iYWNrdXBfcGxhdGZvcm0gPSBzeXMucGxhdGZvcm0KKyAgICAgICAgc2VsZi5fYmFja3VwX2dldF9jb25maWdfdmFyID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyCisKKyAgICAgICAgY2xhc3MgQ29tcGlsZXJXcmFwcGVyKFVuaXhDQ29tcGlsZXIpOgorICAgICAgICAgICAgZGVmIHJwYXRoX2ZvbyhzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5ydW50aW1lX2xpYnJhcnlfZGlyX29wdGlvbignL2ZvbycpCisgICAgICAgIHNlbGYuY2MgPSBDb21waWxlcldyYXBwZXIoKQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBzeXMucGxhdGZvcm0gPSBzZWxmLl9iYWNrdXBfcGxhdGZvcm0KKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyID0gc2VsZi5fYmFja3VwX2dldF9jb25maWdfdmFyCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInLCAnaXJyZWxldmFudCBvbiB3aW4zMicpCisgICAgZGVmIHRlc3RfcnVudGltZV9saWJkaXJfb3B0aW9uKHNlbGYpOgorCisgICAgICAgICMgSXNzdWUgIzU5MDA6IEVuc3VyZSBSVU5QQVRIIGlzIGFkZGVkIHRvIGV4dGVuc2lvbgorICAgICAgICAjIG1vZHVsZXMgd2l0aCBSUEFUSCBpZiBHTlUgbGQgaXMgdXNlZAorCisgICAgICAgICMgZGFyd2luCisgICAgICAgIHN5cy5wbGF0Zm9ybSA9ICdkYXJ3aW4nCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jYy5ycGF0aF9mb28oKSwgJy1ML2ZvbycpCisKKyAgICAgICAgIyBocC11eAorICAgICAgICBzeXMucGxhdGZvcm0gPSAnaHAtdXgnCisgICAgICAgIG9sZF9nY3YgPSBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIKKworICAgICAgICBkZWYgZ2N2KHYpOgorICAgICAgICAgICAgcmV0dXJuICd4eHgnCisgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhciA9IGdjdgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2MucnBhdGhfZm9vKCksIFsnK3MnLCAnLUwvZm9vJ10pCisKKyAgICAgICAgZGVmIGdjdih2KToKKyAgICAgICAgICAgIHJldHVybiAnZ2NjJworICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIgPSBnY3YKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNjLnJwYXRoX2ZvbygpLCBbJy1XbCwrcycsICctTC9mb28nXSkKKworICAgICAgICBkZWYgZ2N2KHYpOgorICAgICAgICAgICAgcmV0dXJuICdnKysnCisgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhciA9IGdjdgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2MucnBhdGhfZm9vKCksIFsnLVdsLCtzJywgJy1ML2ZvbyddKQorCisgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhciA9IG9sZF9nY3YKKworICAgICAgICAjIGlyaXg2NDYKKyAgICAgICAgc3lzLnBsYXRmb3JtID0gJ2lyaXg2NDYnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jYy5ycGF0aF9mb28oKSwgWyctcnBhdGgnLCAnL2ZvbyddKQorCisgICAgICAgICMgb3NmMVY1CisgICAgICAgIHN5cy5wbGF0Zm9ybSA9ICdvc2YxVjUnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jYy5ycGF0aF9mb28oKSwgWyctcnBhdGgnLCAnL2ZvbyddKQorCisgICAgICAgICMgR0NDIEdOVUxECisgICAgICAgIHN5cy5wbGF0Zm9ybSA9ICdiYXInCisKKyAgICAgICAgZGVmIGdjdih2KToKKyAgICAgICAgICAgIGlmIHYgPT0gJ0NDJzoKKyAgICAgICAgICAgICAgICByZXR1cm4gJ2djYycKKyAgICAgICAgICAgIGVsaWYgdiA9PSAnR05VTEQnOgorICAgICAgICAgICAgICAgIHJldHVybiAneWVzJworICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIgPSBnY3YKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNjLnJwYXRoX2ZvbygpLCAnLVdsLC0tZW5hYmxlLW5ldy1kdGFncywtUi9mb28nKQorCisgICAgICAgICMgR0NDIG5vbi1HTlVMRAorICAgICAgICBzeXMucGxhdGZvcm0gPSAnYmFyJworCisgICAgICAgIGRlZiBnY3Yodik6CisgICAgICAgICAgICBpZiB2ID09ICdDQyc6CisgICAgICAgICAgICAgICAgcmV0dXJuICdnY2MnCisgICAgICAgICAgICBlbGlmIHYgPT0gJ0dOVUxEJzoKKyAgICAgICAgICAgICAgICByZXR1cm4gJ25vJworICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIgPSBnY3YKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNjLnJwYXRoX2ZvbygpLCAnLVdsLC1SL2ZvbycpCisKKyAgICAgICAgIyBHQ0MgR05VTEQgd2l0aCBmdWxseSBxdWFsaWZpZWQgY29uZmlndXJhdGlvbiBwcmVmaXgKKyAgICAgICAgIyBzZWUgIzc2MTcKKyAgICAgICAgc3lzLnBsYXRmb3JtID0gJ2JhcicKKworICAgICAgICBkZWYgZ2N2KHYpOgorICAgICAgICAgICAgaWYgdiA9PSAnQ0MnOgorICAgICAgICAgICAgICAgIHJldHVybiAneDg2XzY0LXBjLWxpbnV4LWdudS1nY2MtNC40LjInCisgICAgICAgICAgICBlbGlmIHYgPT0gJ0dOVUxEJzoKKyAgICAgICAgICAgICAgICByZXR1cm4gJ3llcycKKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyID0gZ2N2CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jYy5ycGF0aF9mb28oKSwgJy1XbCwtLWVuYWJsZS1uZXctZHRhZ3MsLVIvZm9vJykKKworICAgICAgICAjIG5vbi1HQ0MgR05VTEQKKyAgICAgICAgc3lzLnBsYXRmb3JtID0gJ2JhcicKKworICAgICAgICBkZWYgZ2N2KHYpOgorICAgICAgICAgICAgaWYgdiA9PSAnQ0MnOgorICAgICAgICAgICAgICAgIHJldHVybiAnY2MnCisgICAgICAgICAgICBlbGlmIHYgPT0gJ0dOVUxEJzoKKyAgICAgICAgICAgICAgICByZXR1cm4gJ3llcycKKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyID0gZ2N2CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jYy5ycGF0aF9mb28oKSwgJy1SL2ZvbycpCisKKyAgICAgICAgIyBub24tR0NDIG5vbi1HTlVMRAorICAgICAgICBzeXMucGxhdGZvcm0gPSAnYmFyJworCisgICAgICAgIGRlZiBnY3Yodik6CisgICAgICAgICAgICBpZiB2ID09ICdDQyc6CisgICAgICAgICAgICAgICAgcmV0dXJuICdjYycKKyAgICAgICAgICAgIGVsaWYgdiA9PSAnR05VTEQnOgorICAgICAgICAgICAgICAgIHJldHVybiAnbm8nCisgICAgICAgIHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhciA9IGdjdgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2MucnBhdGhfZm9vKCksICctUi9mb28nKQorCisgICAgICAgICMgQUlYIEMvQysrIGxpbmtlcgorICAgICAgICBzeXMucGxhdGZvcm0gPSAnYWl4JworCisgICAgICAgIGRlZiBnY3Yodik6CisgICAgICAgICAgICByZXR1cm4gJ3h4eCcKKyAgICAgICAgc3lzY29uZmlnLmdldF9jb25maWdfdmFyID0gZ2N2CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jYy5ycGF0aF9mb28oKSwgJy1ibGlicGF0aDovZm9vJykKKworCitkZWYgdGVzdF9zdWl0ZSgpOgorICAgIHJldHVybiB1bml0dGVzdC5tYWtlU3VpdGUoVW5peENDb21waWxlclRlc3RDYXNlKQorCitpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgorICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9InRlc3Rfc3VpdGUiKQpkaWZmIC0tZ2l0IGEvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3V0aWwucHkgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfdXRpbC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43Mzc1MDNlCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy90ZXN0cy90ZXN0X3V0aWwucHkKQEAgLTAsMCArMSwxMDA4IEBACisiIiJUZXN0cyBmb3IgcGFja2FnaW5nLnV0aWwuIiIiCitpbXBvcnQgb3MKK2ltcG9ydCBzeXMKK2ltcG9ydCB0aW1lCitpbXBvcnQgbG9nZ2luZworaW1wb3J0IHRlbXBmaWxlCitpbXBvcnQgdGV4dHdyYXAKK2ltcG9ydCB3YXJuaW5ncworaW1wb3J0IHN1YnByb2Nlc3MKK2Zyb20gaW8gaW1wb3J0IFN0cmluZ0lPCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgKAorICAgIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IsIFBhY2thZ2luZ0ZpbGVFcnJvciwKKyAgICBQYWNrYWdpbmdFeGVjRXJyb3IsIEluc3RhbGxhdGlvbkV4Y2VwdGlvbikKK2Zyb20gcGFja2FnaW5nIGltcG9ydCB1dGlsCitmcm9tIHBhY2thZ2luZy5kaXN0IGltcG9ydCBEaXN0cmlidXRpb24KK2Zyb20gcGFja2FnaW5nLnV0aWwgaW1wb3J0ICgKKyAgICBjb252ZXJ0X3BhdGgsIGNoYW5nZV9yb290LCBzcGxpdF9xdW90ZWQsIHN0cnRvYm9vbCwgcnVuXzJ0bzMsCisgICAgZ2V0X2NvbXBpbGVyX3ZlcnNpb25zLCBfTUFDX09TX1hfTERfVkVSU0lPTiwgYnl0ZV9jb21waWxlLCBmaW5kX3BhY2thZ2VzLAorICAgIHNwYXduLCBnZXRfcHlwaXJjX3BhdGgsIGdlbmVyYXRlX3B5cGlyYywgcmVhZF9weXBpcmMsIHJlc29sdmVfbmFtZSwgaWdsb2IsCisgICAgUklDSF9HTE9CLCBlZ2dpbmZvX3RvX2Rpc3RpbmZvLCBpc19zZXR1cHRvb2xzLCBpc19kaXN0dXRpbHMsIGlzX3BhY2thZ2luZywKKyAgICBnZXRfaW5zdGFsbF9tZXRob2QsIGNmZ190b19hcmdzLCBnZW5lcmF0ZV9zZXR1cF9weSwgZW5jb2RlX211bHRpcGFydCkKKworZnJvbSBwYWNrYWdpbmcudGVzdHMgaW1wb3J0IHN1cHBvcnQsIHVuaXR0ZXN0Citmcm9tIHBhY2thZ2luZy50ZXN0cy50ZXN0X2NvbmZpZyBpbXBvcnQgU0VUVVBfQ0ZHCitmcm9tIHRlc3Quc2NyaXB0X2hlbHBlciBpbXBvcnQgYXNzZXJ0X3B5dGhvbl9vaywgYXNzZXJ0X3B5dGhvbl9mYWlsdXJlCisKKworUFlQSVJDID0gIiIiXAorW2Rpc3R1dGlsc10KK2luZGV4LXNlcnZlcnMgPQorICAgIHB5cGkKKyAgICBzZXJ2ZXIxCisKK1tweXBpXQordXNlcm5hbWU6bWUKK3Bhc3N3b3JkOnh4eHgKKworW3NlcnZlcjFdCityZXBvc2l0b3J5Omh0dHA6Ly9leGFtcGxlLmNvbQordXNlcm5hbWU6dGFyZWsKK3Bhc3N3b3JkOnNlY3JldAorIiIiCisKK1BZUElSQ19PTEQgPSAiIiJcCitbc2VydmVyLWxvZ2luXQordXNlcm5hbWU6dGFyZWsKK3Bhc3N3b3JkOnNlY3JldAorIiIiCisKK1dBTlRFRCA9ICIiIlwKK1tkaXN0dXRpbHNdCitpbmRleC1zZXJ2ZXJzID0KKyAgICBweXBpCisKK1tweXBpXQordXNlcm5hbWU6dGFyZWsKK3Bhc3N3b3JkOnh4eAorIiIiCisKK0VYUEVDVEVEX01VTFRJUEFSVF9PVVRQVVQgPSBbCisgICAgYictLS14JywKKyAgICBiJ0NvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0idXNlcm5hbWUiJywKKyAgICBiJycsCisgICAgYid3b2snLAorICAgIGInLS0teCcsCisgICAgYidDb250ZW50LURpc3Bvc2l0aW9uOiBmb3JtLWRhdGE7IG5hbWU9InBhc3N3b3JkIicsCisgICAgYicnLAorICAgIGInc2VjcmV0JywKKyAgICBiJy0tLXgnLAorICAgIGInQ29udGVudC1EaXNwb3NpdGlvbjogZm9ybS1kYXRhOyBuYW1lPSJwaWN0dXJlIjsgZmlsZW5hbWU9Indvay5wbmciJywKKyAgICBiJycsCisgICAgYidQTkc4OScsCisgICAgYictLS14LS0nLAorICAgIGInJywKK10KKworCitjbGFzcyBGYWtlUG9wZW46CisgICAgdGVzdF9jbGFzcyA9IE5vbmUKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhcmdzLCBidWZzaXplPTAsIGV4ZWN1dGFibGU9Tm9uZSwKKyAgICAgICAgICAgICAgICAgc3RkaW49Tm9uZSwgc3Rkb3V0PU5vbmUsIHN0ZGVycj1Ob25lLAorICAgICAgICAgICAgICAgICBwcmVleGVjX2ZuPU5vbmUsIGNsb3NlX2Zkcz1GYWxzZSwKKyAgICAgICAgICAgICAgICAgc2hlbGw9RmFsc2UsIGN3ZD1Ob25lLCBlbnY9Tm9uZSwgdW5pdmVyc2FsX25ld2xpbmVzPUZhbHNlLAorICAgICAgICAgICAgICAgICBzdGFydHVwaW5mbz1Ob25lLCBjcmVhdGlvbmZsYWdzPTAsCisgICAgICAgICAgICAgICAgIHJlc3RvcmVfc2lnbmFscz1UcnVlLCBzdGFydF9uZXdfc2Vzc2lvbj1GYWxzZSwKKyAgICAgICAgICAgICAgICAgcGFzc19mZHM9KCkpOgorICAgICAgICBpZiBpc2luc3RhbmNlKGFyZ3MsIHN0cik6CisgICAgICAgICAgICBhcmdzID0gYXJncy5zcGxpdCgpCisgICAgICAgIHNlbGYuY21kID0gYXJnc1swXQorICAgICAgICBleGVzID0gc2VsZi50ZXN0X2NsYXNzLl9leGVzCisgICAgICAgIGlmIHNlbGYuY21kIG5vdCBpbiBleGVzOgorICAgICAgICAgICAgIyB3ZSBkb24ndCB3YW50IHRvIGNhbGwgdGhlIHN5c3RlbSwgcmV0dXJuaW5nIGFuIGVtcHR5CisgICAgICAgICAgICAjIG91dHB1dCBzbyBpdCBkb2Vzbid0IG1hdGNoCisgICAgICAgICAgICBzZWxmLnN0ZG91dCA9IFN0cmluZ0lPKCkKKyAgICAgICAgICAgIHNlbGYuc3RkZXJyID0gU3RyaW5nSU8oKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5zdGRvdXQgPSBTdHJpbmdJTyhleGVzW3NlbGYuY21kXSkKKyAgICAgICAgICAgIHNlbGYuc3RkZXJyID0gU3RyaW5nSU8oKQorCisgICAgZGVmIGNvbW11bmljYXRlKHNlbGYsIGlucHV0PU5vbmUsIHRpbWVvdXQ9Tm9uZSk6CisgICAgICAgIHJldHVybiBzZWxmLnN0ZG91dC5yZWFkKCksIHNlbGYuc3RkZXJyLnJlYWQoKQorCisgICAgZGVmIHdhaXQoc2VsZiwgdGltZW91dD1Ob25lKToKKyAgICAgICAgcmV0dXJuIDAKKworCitjbGFzcyBVdGlsVGVzdENhc2Uoc3VwcG9ydC5FbnZpcm9uUmVzdG9yZXIsCisgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICBzdXBwb3J0LkxvZ2dpbmdDYXRjaGVyLAorICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIHJlc3RvcmVfZW52aXJvbiA9IFsnSE9NRScsICdQTEFUJ10KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoVXRpbFRlc3RDYXNlLCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChvcy5jaGRpciwgb3MuZ2V0Y3dkKCkpCisgICAgICAgIHRlbXBkaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZWxmLnJjID0gb3MucGF0aC5qb2luKHRlbXBkaXIsICcucHlwaXJjJykKKyAgICAgICAgb3MuZW52aXJvblsnSE9NRSddID0gdGVtcGRpcgorICAgICAgICBvcy5jaGRpcih0ZW1wZGlyKQorICAgICAgICAjIHNhdmluZyB0aGUgZW52aXJvbm1lbnQKKyAgICAgICAgc2VsZi5uYW1lID0gb3MubmFtZQorICAgICAgICBzZWxmLnBsYXRmb3JtID0gc3lzLnBsYXRmb3JtCisgICAgICAgIHNlbGYudmVyc2lvbiA9IHN5cy52ZXJzaW9uCisgICAgICAgIHNlbGYuc2VwID0gb3Muc2VwCisgICAgICAgIHNlbGYuam9pbiA9IG9zLnBhdGguam9pbgorICAgICAgICBzZWxmLmlzYWJzID0gb3MucGF0aC5pc2FicworICAgICAgICBzZWxmLnNwbGl0ZHJpdmUgPSBvcy5wYXRoLnNwbGl0ZHJpdmUKKworICAgICAgICAjIHBhdGNoaW5nIG9zLnVuYW1lCisgICAgICAgIGlmIGhhc2F0dHIob3MsICd1bmFtZScpOgorICAgICAgICAgICAgc2VsZi51bmFtZSA9IG9zLnVuYW1lCisgICAgICAgICAgICBzZWxmLl91bmFtZSA9IG9zLnVuYW1lKCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYudW5hbWUgPSBOb25lCisgICAgICAgICAgICBzZWxmLl91bmFtZSA9IE5vbmUKKyAgICAgICAgb3MudW5hbWUgPSBzZWxmLl9nZXRfdW5hbWUKKworICAgIGRlZiBfZ2V0X3VuYW1lKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5fdW5hbWUKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgIyBnZXR0aW5nIGJhY2sgdGhlIGVudmlyb25tZW50CisgICAgICAgIG9zLm5hbWUgPSBzZWxmLm5hbWUKKyAgICAgICAgc3lzLnBsYXRmb3JtID0gc2VsZi5wbGF0Zm9ybQorICAgICAgICBzeXMudmVyc2lvbiA9IHNlbGYudmVyc2lvbgorICAgICAgICBvcy5zZXAgPSBzZWxmLnNlcAorICAgICAgICBvcy5wYXRoLmpvaW4gPSBzZWxmLmpvaW4KKyAgICAgICAgb3MucGF0aC5pc2FicyA9IHNlbGYuaXNhYnMKKyAgICAgICAgb3MucGF0aC5zcGxpdGRyaXZlID0gc2VsZi5zcGxpdGRyaXZlCisgICAgICAgIGlmIHNlbGYudW5hbWUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBvcy51bmFtZSA9IHNlbGYudW5hbWUKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGRlbCBvcy51bmFtZQorICAgICAgICBzdXBlcihVdGlsVGVzdENhc2UsIHNlbGYpLnRlYXJEb3duKCkKKworICAgIGRlZiBtb2NrX3BvcGVuKHNlbGYpOgorICAgICAgICBzZWxmLm9sZF9maW5kX2V4ZWN1dGFibGUgPSB1dGlsLmZpbmRfZXhlY3V0YWJsZQorICAgICAgICB1dGlsLmZpbmRfZXhlY3V0YWJsZSA9IHNlbGYuX2ZpbmRfZXhlY3V0YWJsZQorICAgICAgICBzZWxmLl9leGVzID0ge30KKyAgICAgICAgc2VsZi5vbGRfcG9wZW4gPSBzdWJwcm9jZXNzLlBvcGVuCisgICAgICAgIHNlbGYub2xkX3N0ZG91dCA9IHN5cy5zdGRvdXQKKyAgICAgICAgc2VsZi5vbGRfc3RkZXJyID0gc3lzLnN0ZGVycgorICAgICAgICBGYWtlUG9wZW4udGVzdF9jbGFzcyA9IHNlbGYKKyAgICAgICAgc3VicHJvY2Vzcy5Qb3BlbiA9IEZha2VQb3BlbgorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2VsZi51bm1vY2tfcG9wZW4pCisKKyAgICBkZWYgdW5tb2NrX3BvcGVuKHNlbGYpOgorICAgICAgICB1dGlsLmZpbmRfZXhlY3V0YWJsZSA9IHNlbGYub2xkX2ZpbmRfZXhlY3V0YWJsZQorICAgICAgICBzdWJwcm9jZXNzLlBvcGVuID0gc2VsZi5vbGRfcG9wZW4KKyAgICAgICAgc3lzLnN0ZG91dCA9IHNlbGYub2xkX3N0ZG91dAorICAgICAgICBzeXMuc3RkZXJyID0gc2VsZi5vbGRfc3RkZXJyCisKKyAgICBkZWYgdGVzdF9jb252ZXJ0X3BhdGgoc2VsZik6CisgICAgICAgICMgbGludXgvbWFjCisgICAgICAgIG9zLnNlcCA9ICcvJworCisgICAgICAgIGRlZiBfam9pbihwYXRoKToKKyAgICAgICAgICAgIHJldHVybiAnLycuam9pbihwYXRoKQorICAgICAgICBvcy5wYXRoLmpvaW4gPSBfam9pbgorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udmVydF9wYXRoKCcvaG9tZS90by9teS9zdHVmZicpLAorICAgICAgICAgICAgICAgICAgICAgICAgICcvaG9tZS90by9teS9zdHVmZicpCisKKyAgICAgICAgIyB3aW4KKyAgICAgICAgb3Muc2VwID0gJ1xcJworCisgICAgICAgIGRlZiBfam9pbigqcGF0aCk6CisgICAgICAgICAgICByZXR1cm4gJ1xcJy5qb2luKHBhdGgpCisgICAgICAgIG9zLnBhdGguam9pbiA9IF9qb2luCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgY29udmVydF9wYXRoLCAnL2hvbWUvdG8vbXkvc3R1ZmYnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjb252ZXJ0X3BhdGgsICdob21lL3RvL215L3N0dWZmLycpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb252ZXJ0X3BhdGgoJ2hvbWUvdG8vbXkvc3R1ZmYnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnaG9tZVxcdG9cXG15XFxzdHVmZicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29udmVydF9wYXRoKCcuJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgb3MuY3VyZGlyKQorCisgICAgZGVmIHRlc3RfY2hhbmdlX3Jvb3Qoc2VsZik6CisgICAgICAgICMgbGludXgvbWFjCisgICAgICAgIG9zLm5hbWUgPSAncG9zaXgnCisKKyAgICAgICAgZGVmIF9pc2FicyhwYXRoKToKKyAgICAgICAgICAgIHJldHVybiBwYXRoWzBdID09ICcvJworICAgICAgICBvcy5wYXRoLmlzYWJzID0gX2lzYWJzCisKKyAgICAgICAgZGVmIF9qb2luKCpwYXRoKToKKyAgICAgICAgICAgIHJldHVybiAnLycuam9pbihwYXRoKQorICAgICAgICBvcy5wYXRoLmpvaW4gPSBfam9pbgorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hhbmdlX3Jvb3QoJy9yb290JywgJy9vbGQvaXRzL2hlcmUnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnL3Jvb3Qvb2xkL2l0cy9oZXJlJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjaGFuZ2Vfcm9vdCgnL3Jvb3QnLCAnaXRzL2hlcmUnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnL3Jvb3QvaXRzL2hlcmUnKQorCisgICAgICAgICMgd2luZG93cworICAgICAgICBvcy5uYW1lID0gJ250JworCisgICAgICAgIGRlZiBfaXNhYnMocGF0aCk6CisgICAgICAgICAgICByZXR1cm4gcGF0aC5zdGFydHN3aXRoKCdjOlxcJykKKyAgICAgICAgb3MucGF0aC5pc2FicyA9IF9pc2FicworCisgICAgICAgIGRlZiBfc3BsaXRkcml2ZShwYXRoKToKKyAgICAgICAgICAgIGlmIHBhdGguc3RhcnRzd2l0aCgnYzonKToKKyAgICAgICAgICAgICAgICByZXR1cm4gJycsIHBhdGgucmVwbGFjZSgnYzonLCAnJykKKyAgICAgICAgICAgIHJldHVybiAnJywgcGF0aAorICAgICAgICBvcy5wYXRoLnNwbGl0ZHJpdmUgPSBfc3BsaXRkcml2ZQorCisgICAgICAgIGRlZiBfam9pbigqcGF0aCk6CisgICAgICAgICAgICByZXR1cm4gJ1xcJy5qb2luKHBhdGgpCisgICAgICAgIG9zLnBhdGguam9pbiA9IF9qb2luCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjaGFuZ2Vfcm9vdCgnYzpcXHJvb3QnLCAnYzpcXG9sZFxcaXRzXFxoZXJlJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ2M6XFxyb290XFxvbGRcXGl0c1xcaGVyZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hhbmdlX3Jvb3QoJ2M6XFxyb290JywgJ2l0c1xcaGVyZScpLAorICAgICAgICAgICAgICAgICAgICAgICAgICdjOlxccm9vdFxcaXRzXFxoZXJlJykKKworICAgICAgICAjIEJ1Z3NCdW5ueSBvcyAoaXQncyBhIGdyZWF0IG9zKQorICAgICAgICBvcy5uYW1lID0gJ0J1Z3NCdW5ueScKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUGFja2FnaW5nUGxhdGZvcm1FcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlX3Jvb3QsICdjOlxccm9vdCcsICdpdHNcXGhlcmUnKQorCisgICAgICAgICMgWFhYIHBsYXRmb3JtcyB0byBiZSBjb3ZlcmVkOiBvczIsIG1hYworCisgICAgZGVmIHRlc3Rfc3BsaXRfcXVvdGVkKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNwbGl0X3F1b3RlZCgnIiJvbmUiIiAidHdvIiBcJ3RocmVlXCcgXFxmb3VyJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgWydvbmUnLCAndHdvJywgJ3RocmVlJywgJ2ZvdXInXSkKKworICAgIGRlZiB0ZXN0X3N0cnRvYm9vbChzZWxmKToKKyAgICAgICAgeWVzID0gKCd5JywgJ1knLCAneWVzJywgJ1RydWUnLCAndCcsICd0cnVlJywgJ1RydWUnLCAnT24nLCAnb24nLCAnMScpCisgICAgICAgIG5vID0gKCduJywgJ25vJywgJ2YnLCAnZmFsc2UnLCAnb2ZmJywgJzAnLCAnT2ZmJywgJ05vJywgJ04nKQorCisgICAgICAgIGZvciB5IGluIHllczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzdHJ0b2Jvb2woeSkpCisKKyAgICAgICAgZm9yIG4gaW4gbm86CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHN0cnRvYm9vbChuKSkKKworICAgIGRlZiB0ZXN0X2ZpbmRfZXhlX3ZlcnNpb24oc2VsZik6CisgICAgICAgICMgdGhlIGxkIHZlcnNpb24gc2NoZW1lIHVuZGVyIE1BQyBPUyBpczoKKyAgICAgICAgIyAgIF5AKCMpUFJPR1JBTTpsZCAgUFJPSkVDVDpsZDY0LVZFUlNJT04KKyAgICAgICAgIworICAgICAgICAjIHdoZXJlIFZFUlNJT04gaXMgYSAyLWRpZ2l0IG51bWJlciBmb3IgbWFqb3IKKyAgICAgICAgIyByZXZpc2lvbnMuIEZvciBpbnN0YW5jZSB1bmRlciBMZW9wYXJkLCBpdCdzCisgICAgICAgICMgY3VycmVudGx5IDc3CisgICAgICAgICMKKyAgICAgICAgIyBEb3RzIGFyZSB1c2VkIHdoZW4gYnJhbmNoaW5nIGlzIGRvbmUuCisgICAgICAgICMKKyAgICAgICAgIyBUaGUgU25vd0xlb3BhcmQgbGQ2NCBpcyBjdXJyZW50bHkgOTUuMi4xMgorCisgICAgICAgIGZvciBvdXRwdXQsIHZlcnNpb24gaW4gKCgnQCgjKVBST0dSQU06bGQgIFBST0pFQ1Q6bGQ2NC03NycsICc3NycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ0AoIylQUk9HUkFNOmxkICBQUk9KRUNUOmxkNjQtOTUuMi4xMicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnOTUuMi4xMicpKToKKyAgICAgICAgICAgIHJlc3VsdCA9IF9NQUNfT1NfWF9MRF9WRVJTSU9OLnNlYXJjaChvdXRwdXQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdC5ncm91cCgxKSwgdmVyc2lvbikKKworICAgIGRlZiBfZmluZF9leGVjdXRhYmxlKHNlbGYsIG5hbWUpOgorICAgICAgICBpZiBuYW1lIGluIHNlbGYuX2V4ZXM6CisgICAgICAgICAgICByZXR1cm4gbmFtZQorICAgICAgICByZXR1cm4gTm9uZQorCisgICAgZGVmIHRlc3RfZ2V0X2NvbXBpbGVyX3ZlcnNpb25zKHNlbGYpOgorICAgICAgICBzZWxmLm1vY2tfcG9wZW4oKQorICAgICAgICAjIGdldF92ZXJzaW9ucyBjYWxscyBkaXN0dXRpbHMuc3Bhd24uZmluZF9leGVjdXRhYmxlIG9uCisgICAgICAgICMgJ2djYycsICdsZCcgYW5kICdkbGx3cmFwJworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldF9jb21waWxlcl92ZXJzaW9ucygpLCAoTm9uZSwgTm9uZSwgTm9uZSkpCisKKyAgICAgICAgIyBMZXQncyBmYWtlIHdlIGhhdmUgJ2djYycgYW5kIGl0IHJldHVybnMgJzMuNC41JworICAgICAgICBzZWxmLl9leGVzWydnY2MnXSA9ICdnY2MgKEdDQykgMy40LjUgKG1pbmd3IHNwZWNpYWwpXG5GU0YnCisgICAgICAgIHJlcyA9IGdldF9jb21waWxlcl92ZXJzaW9ucygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKHJlc1swXSksICczLjQuNScpCisKKyAgICAgICAgIyBhbmQgbGV0J3Mgc2VlIHdoYXQgaGFwcGVucyB3aGVuIHRoZSB2ZXJzaW9uCisgICAgICAgICMgZG9lc24ndCBtYXRjaCB0aGUgcmVndWxhciBleHByZXNzaW9uCisgICAgICAgICMgKFxkK1wuXGQrKFwuXGQrKSopCisgICAgICAgIHNlbGYuX2V4ZXNbJ2djYyddID0gJ3Zlcnkgc3RyYW5nZSBvdXRwdXQnCisgICAgICAgIHJlcyA9IGdldF9jb21waWxlcl92ZXJzaW9ucygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzWzBdLCBOb25lKQorCisgICAgICAgICMgc2FtZSB0aGluZyBmb3IgbGQKKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtICE9ICdkYXJ3aW4nOgorICAgICAgICAgICAgc2VsZi5fZXhlc1snbGQnXSA9ICdHTlUgbGQgdmVyc2lvbiAyLjE3LjUwIDIwMDYwODI0JworICAgICAgICAgICAgcmVzID0gZ2V0X2NvbXBpbGVyX3ZlcnNpb25zKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKHJlc1sxXSksICcyLjE3LjUwJykKKyAgICAgICAgICAgIHNlbGYuX2V4ZXNbJ2xkJ10gPSAnQCgjKVBST0dSQU06bGQgIFBST0pFQ1Q6bGQ2NC03NycKKyAgICAgICAgICAgIHJlcyA9IGdldF9jb21waWxlcl92ZXJzaW9ucygpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc1sxXSwgTm9uZSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuX2V4ZXNbJ2xkJ10gPSAnR05VIGxkIHZlcnNpb24gMi4xNy41MCAyMDA2MDgyNCcKKyAgICAgICAgICAgIHJlcyA9IGdldF9jb21waWxlcl92ZXJzaW9ucygpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc1sxXSwgTm9uZSkKKyAgICAgICAgICAgIHNlbGYuX2V4ZXNbJ2xkJ10gPSAnQCgjKVBST0dSQU06bGQgIFBST0pFQ1Q6bGQ2NC03NycKKyAgICAgICAgICAgIHJlcyA9IGdldF9jb21waWxlcl92ZXJzaW9ucygpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihyZXNbMV0pLCAnNzcnKQorCisgICAgICAgICMgYW5kIGRsbHdyYXAKKyAgICAgICAgc2VsZi5fZXhlc1snZGxsd3JhcCddID0gJ0dOVSBkbGx3cmFwIDIuMTcuNTAgMjAwNjA4MjRcbkZTRicKKyAgICAgICAgcmVzID0gZ2V0X2NvbXBpbGVyX3ZlcnNpb25zKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIocmVzWzJdKSwgJzIuMTcuNTAnKQorICAgICAgICBzZWxmLl9leGVzWydkbGx3cmFwJ10gPSAnQ2hlZXNlIFdyYXAnCisgICAgICAgIHJlcyA9IGdldF9jb21waWxlcl92ZXJzaW9ucygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzWzJdLCBOb25lKQorCisgICAgZGVmIHRlc3RfYnl0ZV9jb21waWxlX3VuZGVyX0Ioc2VsZik6CisgICAgICAgICMgbWFrZSBzdXJlIGJ5dGUgY29tcGlsYXRpb24gd29ya3MgdW5kZXIgLUIgKGRvbnRfd3JpdGVfYnl0ZWNvZGUpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZXRhdHRyLCBzeXMsICdkb250X3dyaXRlX2J5dGVjb2RlJywKKyAgICAgICAgICAgICAgICAgICAgICAgIHN5cy5kb250X3dyaXRlX2J5dGVjb2RlKQorICAgICAgICBzeXMuZG9udF93cml0ZV9ieXRlY29kZSA9IFRydWUKKyAgICAgICAgYnl0ZV9jb21waWxlKFtdKQorCisgICAgZGVmIHRlc3RfbmV3ZXIoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFBhY2thZ2luZ0ZpbGVFcnJvciwgdXRpbC5uZXdlciwgJ3h4eCcsICd4eHgnKQorICAgICAgICBzZWxmLm5ld2VyX2YxID0gc2VsZi5ta3RlbXBmaWxlKCkKKyAgICAgICAgdGltZS5zbGVlcCgxKQorICAgICAgICBzZWxmLm5ld2VyX2YyID0gc2VsZi5ta3RlbXBmaWxlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHV0aWwubmV3ZXIoc2VsZi5uZXdlcl9mMi5uYW1lLCBzZWxmLm5ld2VyX2YxLm5hbWUpKQorCisgICAgZGVmIHRlc3RfZmluZF9wYWNrYWdlcyhzZWxmKToKKyAgICAgICAgIyBsZXQncyBjcmVhdGUgYSBzdHJ1Y3R1cmUgd2Ugd2FudCB0byBzY2FuOgorICAgICAgICAjCisgICAgICAgICMgICBwa2cxCisgICAgICAgICMgICAgIF9faW5pdF9fCisgICAgICAgICMgICAgIHBrZzIKKyAgICAgICAgIyAgICAgICBfX2luaXRfXworICAgICAgICAjICAgICBwa2czCisgICAgICAgICMgICAgICAgX19pbml0X18KKyAgICAgICAgIyAgICAgICBwa2c2CisgICAgICAgICMgICAgICAgICAgIF9faW5pdF9fCisgICAgICAgICMgICAgIHBrZzQgICAgPC0tLSBub3QgYSBwa2cKKyAgICAgICAgIyAgICAgICBwa2c4CisgICAgICAgICMgICAgICAgICAgX19pbml0X18KKyAgICAgICAgIyAgIHBrZzUKKyAgICAgICAgIyAgICAgX19pbml0X18KKyAgICAgICAgIworICAgICAgICByb290ID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgcGtnMSA9IG9zLnBhdGguam9pbihyb290LCAncGtnMScpCisgICAgICAgIG9zLm1ha2VkaXJzKG9zLnBhdGguam9pbihwa2cxLCAncGtnMicpKQorICAgICAgICBvcy5tYWtlZGlycyhvcy5wYXRoLmpvaW4ocGtnMSwgJ3BrZzMnLCAncGtnNicpKQorICAgICAgICBvcy5tYWtlZGlycyhvcy5wYXRoLmpvaW4ocGtnMSwgJ3BrZzQnLCAncGtnOCcpKQorICAgICAgICBvcy5tYWtlZGlycyhvcy5wYXRoLmpvaW4ocm9vdCwgJ3BrZzUnKSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChwa2cxLCAnX19pbml0X18ucHknKSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChwa2cxLCAncGtnMicsICdfX2luaXRfXy5weScpKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHBrZzEsICdwa2czJywgJ19faW5pdF9fLnB5JykpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgocGtnMSwgJ3BrZzMnLCAncGtnNicsICdfX2luaXRfXy5weScpKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHBrZzEsICdwa2c0JywgJ3BrZzgnLCAnX19pbml0X18ucHknKSkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChyb290LCAncGtnNScsICdfX2luaXRfXy5weScpKQorCisgICAgICAgIHJlcyA9IGZpbmRfcGFja2FnZXMoW3Jvb3RdLCBbJ3BrZzEucGtnMiddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNvcnRlZChyZXMpLAorICAgICAgICAgICAgICAgICAgICAgICAgIFsncGtnMScsICdwa2cxLnBrZzMnLCAncGtnMS5wa2czLnBrZzYnLCAncGtnNSddKQorCisgICAgZGVmIHRlc3RfcmVzb2x2ZV9uYW1lKHNlbGYpOgorICAgICAgICAjIHRlc3QgcmF3IG1vZHVsZSBuYW1lCisgICAgICAgIHRtcGRpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHN5cy5wYXRoLmFwcGVuZCh0bXBkaXIpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzeXMucGF0aC5yZW1vdmUsIHRtcGRpcikKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCh0bXBkaXIsICdoZWxsby5weScpLCAnJykKKworICAgICAgICBvcy5tYWtlZGlycyhvcy5wYXRoLmpvaW4odG1wZGlyLCAnYScsICdiJykpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgodG1wZGlyLCAnYScsICdfX2luaXRfXy5weScpLCAnJykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCh0bXBkaXIsICdhJywgJ2InLCAnX19pbml0X18ucHknKSwgJycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgodG1wZGlyLCAnYScsICdiJywgJ2MucHknKSwgJ2NsYXNzIEZvbzogcGFzcycpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgodG1wZGlyLCAnYScsICdiJywgJ2QucHknKSwgdGV4dHdyYXAuZGVkZW50KCIiIlwKKyAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcyBGb29CYXI6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzIEJhcjoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZiBiYXooc2VsZik6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFzcworICAgICAgICAgICAgICAgICAgICAgICAgICAgICIiIikpCisKKyAgICAgICAgIyBjaGVjayBQeXRob24sIEMgYW5kIGJ1aWx0LWluIG1vZHVsZQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc29sdmVfbmFtZSgnaGVsbG8nKS5fX25hbWVfXywgJ2hlbGxvJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNvbHZlX25hbWUoJ19jc3YnKS5fX25hbWVfXywgJ19jc3YnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc29sdmVfbmFtZSgnc3lzJykuX19uYW1lX18sICdzeXMnKQorCisgICAgICAgICMgdGVzdCBtb2R1bGUuYXR0cgorICAgICAgICBzZWxmLmFzc2VydElzKHJlc29sdmVfbmFtZSgnYnVpbHRpbnMuc3RyJyksIHN0cikKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUocmVzb2x2ZV9uYW1lKCdoZWxsby5fX2RvY19fJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzb2x2ZV9uYW1lKCdhLmIuYy5Gb28nKS5fX25hbWVfXywgJ0ZvbycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzb2x2ZV9uYW1lKCdhLmIuZC5Gb29CYXIuQmFyLmJheicpLl9fbmFtZV9fLCAnYmF6JykKKworICAgICAgICAjIGVycm9yIGlmIG1vZHVsZSBub3QgZm91bmQKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW1wb3J0RXJyb3IsIHJlc29sdmVfbmFtZSwgJ25vbmV4aXN0ZW50JykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW1wb3J0RXJyb3IsIHJlc29sdmVfbmFtZSwgJ25vbi5leGlzdGVudCcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEltcG9ydEVycm9yLCByZXNvbHZlX25hbWUsICdhLm5vJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW1wb3J0RXJyb3IsIHJlc29sdmVfbmFtZSwgJ2EuYi5ubycpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEltcG9ydEVycm9yLCByZXNvbHZlX25hbWUsICdhLmIubm8ubm8nKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbXBvcnRFcnJvciwgcmVzb2x2ZV9uYW1lLCAnaW52YS1saWQnKQorCisgICAgICAgICMgbG9va2luZyB1cCBidWlsdC1pbiBuYW1lcyBpcyBub3Qgc3VwcG9ydGVkCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEltcG9ydEVycm9yLCByZXNvbHZlX25hbWUsICdzdHInKQorCisgICAgICAgICMgZXJyb3IgaWYgbW9kdWxlIGZvdW5kIGJ1dCBub3QgYXR0cgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbXBvcnRFcnJvciwgcmVzb2x2ZV9uYW1lLCAnYS5iLlNwYW0nKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbXBvcnRFcnJvciwgcmVzb2x2ZV9uYW1lLCAnYS5iLmMuU3BhbScpCisKKyAgICBAc3VwcG9ydC5za2lwXzJ0bzNfb3B0aW1pemUKKyAgICBkZWYgdGVzdF9ydW5fMnRvM19vbl9jb2RlKHNlbGYpOgorICAgICAgICBjb250ZW50ID0gInByaW50ICd0ZXN0JyIKKyAgICAgICAgY29udmVydGVkX2NvbnRlbnQgPSAicHJpbnQoJ3Rlc3QnKSIKKyAgICAgICAgZmlsZV9oYW5kbGUgPSBzZWxmLm1rdGVtcGZpbGUoKQorICAgICAgICBmaWxlX25hbWUgPSBmaWxlX2hhbmRsZS5uYW1lCisgICAgICAgIGZpbGVfaGFuZGxlLndyaXRlKGNvbnRlbnQpCisgICAgICAgIGZpbGVfaGFuZGxlLmZsdXNoKCkKKyAgICAgICAgZmlsZV9oYW5kbGUuc2VlaygwKQorICAgICAgICBydW5fMnRvMyhbZmlsZV9uYW1lXSkKKyAgICAgICAgbmV3X2NvbnRlbnQgPSAiIi5qb2luKGZpbGVfaGFuZGxlLnJlYWQoKSkKKyAgICAgICAgZmlsZV9oYW5kbGUuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld19jb250ZW50LCBjb252ZXJ0ZWRfY29udGVudCkKKworICAgIEBzdXBwb3J0LnNraXBfMnRvM19vcHRpbWl6ZQorICAgIGRlZiB0ZXN0X3J1bl8ydG8zX29uX2RvY3Rlc3RzKHNlbGYpOgorICAgICAgICAjIHRvIGNoZWNrIGlmIHRleHQgZmlsZXMgY29udGFpbmluZyBkb2N0ZXN0cyBvbmx5IGdldCBjb252ZXJ0ZWQuCisgICAgICAgIGNvbnRlbnQgPSAiPj4+IHByaW50ICd0ZXN0J1xudGVzdFxuIgorICAgICAgICBjb252ZXJ0ZWRfY29udGVudCA9ICI+Pj4gcHJpbnQoJ3Rlc3QnKVxudGVzdFxuXG4iCisgICAgICAgIGZpbGVfaGFuZGxlID0gc2VsZi5ta3RlbXBmaWxlKCkKKyAgICAgICAgZmlsZV9uYW1lID0gZmlsZV9oYW5kbGUubmFtZQorICAgICAgICBmaWxlX2hhbmRsZS53cml0ZShjb250ZW50KQorICAgICAgICBmaWxlX2hhbmRsZS5mbHVzaCgpCisgICAgICAgIGZpbGVfaGFuZGxlLnNlZWsoMCkKKyAgICAgICAgcnVuXzJ0bzMoW2ZpbGVfbmFtZV0sIGRvY3Rlc3RzX29ubHk9VHJ1ZSkKKyAgICAgICAgbmV3X2NvbnRlbnQgPSAiIi5qb2luKGZpbGVfaGFuZGxlLnJlYWRsaW5lcygpKQorICAgICAgICBmaWxlX2hhbmRsZS5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3X2NvbnRlbnQsIGNvbnZlcnRlZF9jb250ZW50KQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Mob3MubmFtZSBpbiAoJ250JywgJ3Bvc2l4JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ3J1bnMgb25seSB1bmRlciBwb3NpeCBvciBudCcpCisgICAgZGVmIHRlc3Rfc3Bhd24oc2VsZik6CisgICAgICAgIHRtcGRpciA9IHNlbGYubWtkdGVtcCgpCisKKyAgICAgICAgIyBjcmVhdGluZyBzb21ldGhpbmcgZXhlY3V0YWJsZQorICAgICAgICAjIHRocm91Z2ggdGhlIHNoZWxsIHRoYXQgcmV0dXJucyAxCisgICAgICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKKyAgICAgICAgICAgIGV4ZSA9IG9zLnBhdGguam9pbih0bXBkaXIsICdmb28uc2gnKQorICAgICAgICAgICAgc2VsZi53cml0ZV9maWxlKGV4ZSwgJyMhL2Jpbi9zaFxuZXhpdCAxJykKKyAgICAgICAgICAgIG9zLmNobW9kKGV4ZSwgMG83NzcpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBleGUgPSBvcy5wYXRoLmpvaW4odG1wZGlyLCAnZm9vLmJhdCcpCisgICAgICAgICAgICBzZWxmLndyaXRlX2ZpbGUoZXhlLCAnZXhpdCAxJykKKworICAgICAgICBvcy5jaG1vZChleGUsIDBvNzc3KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhQYWNrYWdpbmdFeGVjRXJyb3IsIHNwYXduLCBbZXhlXSkKKworICAgICAgICAjIG5vdyBzb21ldGhpbmcgdGhhdCB3b3JrcworICAgICAgICBpZiBvcy5uYW1lID09ICdwb3NpeCc6CisgICAgICAgICAgICBleGUgPSBvcy5wYXRoLmpvaW4odG1wZGlyLCAnZm9vLnNoJykKKyAgICAgICAgICAgIHNlbGYud3JpdGVfZmlsZShleGUsICcjIS9iaW4vc2hcbmV4aXQgMCcpCisgICAgICAgICAgICBvcy5jaG1vZChleGUsIDBvNzc3KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgZXhlID0gb3MucGF0aC5qb2luKHRtcGRpciwgJ2Zvby5iYXQnKQorICAgICAgICAgICAgc2VsZi53cml0ZV9maWxlKGV4ZSwgJ2V4aXQgMCcpCisKKyAgICAgICAgb3MuY2htb2QoZXhlLCAwbzc3NykKKyAgICAgICAgc3Bhd24oW2V4ZV0pICAjIHNob3VsZCB3b3JrIHdpdGhvdXQgYW55IGVycm9yCisKKyAgICBkZWYgdGVzdF9zZXJ2ZXJfcmVnaXN0cmF0aW9uKHNlbGYpOgorICAgICAgICAjIFRoaXMgdGVzdCBtYWtlcyBzdXJlIHdlIGtub3cgaG93IHRvOgorICAgICAgICAjIDEuIGhhbmRsZSBzZXZlcmFsIHNlY3Rpb25zIGluIC5weXBpcmMKKyAgICAgICAgIyAyLiBoYW5kbGUgdGhlIG9sZCBmb3JtYXQKKworICAgICAgICAjIG5ldyBmb3JtYXQKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKHNlbGYucmMsIFBZUElSQykKKyAgICAgICAgY29uZmlnID0gcmVhZF9weXBpcmMoKQorCisgICAgICAgIGNvbmZpZyA9IHNvcnRlZChjb25maWcuaXRlbXMoKSkKKyAgICAgICAgZXhwZWN0ZWQgPSBbKCdwYXNzd29yZCcsICd4eHh4JyksICgncmVhbG0nLCAncHlwaScpLAorICAgICAgICAgICAgICAgICAgICAoJ3JlcG9zaXRvcnknLCAnaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpJyksCisgICAgICAgICAgICAgICAgICAgICgnc2VydmVyJywgJ3B5cGknKSwgKCd1c2VybmFtZScsICdtZScpXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvbmZpZywgZXhwZWN0ZWQpCisKKyAgICAgICAgIyBvbGQgZm9ybWF0CisgICAgICAgIHNlbGYud3JpdGVfZmlsZShzZWxmLnJjLCBQWVBJUkNfT0xEKQorICAgICAgICBjb25maWcgPSByZWFkX3B5cGlyYygpCisgICAgICAgIGNvbmZpZyA9IHNvcnRlZChjb25maWcuaXRlbXMoKSkKKyAgICAgICAgZXhwZWN0ZWQgPSBbKCdwYXNzd29yZCcsICdzZWNyZXQnKSwgKCdyZWFsbScsICdweXBpJyksCisgICAgICAgICAgICAgICAgICAgICgncmVwb3NpdG9yeScsICdodHRwOi8vcHlwaS5weXRob24ub3JnL3B5cGknKSwKKyAgICAgICAgICAgICAgICAgICAgKCdzZXJ2ZXInLCAnc2VydmVyLWxvZ2luJyksICgndXNlcm5hbWUnLCAndGFyZWsnKV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb25maWcsIGV4cGVjdGVkKQorCisgICAgZGVmIHRlc3Rfc2VydmVyX2VtcHR5X3JlZ2lzdHJhdGlvbihzZWxmKToKKyAgICAgICAgcmMgPSBnZXRfcHlwaXJjX3BhdGgoKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKHJjKSkKKyAgICAgICAgZ2VuZXJhdGVfcHlwaXJjKCd0YXJlaycsICd4eHgnKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMocmMpKQorICAgICAgICB3aXRoIG9wZW4ocmMpIGFzIGY6CisgICAgICAgICAgICBjb250ZW50ID0gZi5yZWFkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb250ZW50LCBXQU5URUQpCisKKyAgICBkZWYgdGVzdF9jZmdfdG9fYXJncyhzZWxmKToKKyAgICAgICAgb3B0cyA9IHsnZGVzY3JpcHRpb24tZmlsZSc6ICdSRUFETUUnLCAnZXh0cmEtZmlsZXMnOiAnJywKKyAgICAgICAgICAgICAgICAnc2V0dXAtaG9va3MnOiAncGFja2FnaW5nLnRlc3RzLnRlc3RfY29uZmlnLnZlcnNpb25faG9vayd9CisgICAgICAgIHNlbGYud3JpdGVfZmlsZSgnc2V0dXAuY2ZnJywgU0VUVVBfQ0ZHICUgb3B0cywgZW5jb2Rpbmc9J3V0Zi04JykKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKCdSRUFETUUnLCAnbG9vb29uZyBkZXNjcmlwdGlvbicpCisKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCdpZ25vcmUnLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICBhcmdzID0gY2ZnX3RvX2FyZ3MoKQorICAgICAgICAjIHVzZSBEaXN0cmlidXRpb24gdG8gZ2V0IHRoZSBjb250ZW50cyBvZiB0aGUgc2V0dXAuY2ZnIGZpbGUKKyAgICAgICAgZGlzdCA9IERpc3RyaWJ1dGlvbigpCisgICAgICAgIGRpc3QucGFyc2VfY29uZmlnX2ZpbGVzKCkKKyAgICAgICAgbWV0YWRhdGEgPSBkaXN0Lm1ldGFkYXRhCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWyduYW1lJ10sIG1ldGFkYXRhWydOYW1lJ10pCisgICAgICAgICMgKyAuZGV2MSBiZWNhdXNlIHRoZSB0ZXN0IFNFVFVQX0NGRyBhbHNvIHRlc3RzIGEgaG9vayBmdW5jdGlvbiBpbgorICAgICAgICAjIHRlc3RfY29uZmlnLnB5IGZvciBhcHBlbmRpbmcgdG8gdGhlIHZlcnNpb24gc3RyaW5nCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXJnc1sndmVyc2lvbiddICsgJy5kZXYxJywgbWV0YWRhdGFbJ1ZlcnNpb24nXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWydhdXRob3InXSwgbWV0YWRhdGFbJ0F1dGhvciddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ2F1dGhvcl9lbWFpbCddLCBtZXRhZGF0YVsnQXV0aG9yLUVtYWlsJ10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXJnc1snbWFpbnRhaW5lciddLCBtZXRhZGF0YVsnTWFpbnRhaW5lciddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ21haW50YWluZXJfZW1haWwnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YVsnTWFpbnRhaW5lci1FbWFpbCddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ2Rlc2NyaXB0aW9uJ10sIG1ldGFkYXRhWydTdW1tYXJ5J10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXJnc1snbG9uZ19kZXNjcmlwdGlvbiddLCBtZXRhZGF0YVsnRGVzY3JpcHRpb24nXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWydjbGFzc2lmaWVycyddLCBtZXRhZGF0YVsnQ2xhc3NpZmllciddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ3JlcXVpcmVzJ10sIG1ldGFkYXRhWydSZXF1aXJlcy1EaXN0J10pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXJnc1sncHJvdmlkZXMnXSwgbWV0YWRhdGFbJ1Byb3ZpZGVzLURpc3QnXSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ3BhY2thZ2VfZGlyJ10uZ2V0KCcnKSwgZGlzdC5wYWNrYWdlX2RpcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhcmdzWydwYWNrYWdlcyddLCBkaXN0LnBhY2thZ2VzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ3NjcmlwdHMnXSwgZGlzdC5zY3JpcHRzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFyZ3NbJ3B5X21vZHVsZXMnXSwgZGlzdC5weV9tb2R1bGVzKQorCisgICAgZGVmIHRlc3RfZ2VuZXJhdGVfc2V0dXBfcHkoc2VsZik6CisgICAgICAgIG9zLmNoZGlyKHNlbGYubWtkdGVtcCgpKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoJ3NldHVwLmNmZycsIHRleHR3cmFwLmRlZGVudCgiIiJcCisgICAgICAgICAgICBbbWV0YWRhdGFdCisgICAgICAgICAgICBuYW1lID0gU1BBTQorICAgICAgICAgICAgY2xhc3NpZmllciA9IFByb2dyYW1taW5nIExhbmd1YWdlIDo6IFB5dGhvbgorICAgICAgICAgICAgIiIiKSkKKyAgICAgICAgZ2VuZXJhdGVfc2V0dXBfcHkoKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMoJ3NldHVwLnB5JyksICdzZXR1cC5weSBub3QgY3JlYXRlZCcpCisgICAgICAgIHJjLCBvdXQsIGVyciA9IGFzc2VydF9weXRob25fb2soJ3NldHVwLnB5JywgJy0tbmFtZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0LCBiJ1NQQU1cbicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXJyLCBiJycpCisKKyAgICAgICAgIyBhIGdlbmVyYXRlZCBzZXR1cC5weSBzaG91bGQgY29tcGxhaW4gaWYgbm8gc2V0dXAuY2ZnIGlzIHByZXNlbnQKKyAgICAgICAgb3MudW5saW5rKCdzZXR1cC5jZmcnKQorICAgICAgICByYywgb3V0LCBlcnIgPSBhc3NlcnRfcHl0aG9uX2ZhaWx1cmUoJ3NldHVwLnB5JywgJy0tbmFtZScpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oYidzZXR1cC5jZmcnLCBlcnIpCisKKyAgICBkZWYgdGVzdF9lbmNvZGVfbXVsdGlwYXJ0KHNlbGYpOgorICAgICAgICBmaWVsZHMgPSBbKCd1c2VybmFtZScsICd3b2snKSwgKCdwYXNzd29yZCcsICdzZWNyZXQnKV0KKyAgICAgICAgZmlsZXMgPSBbKCdwaWN0dXJlJywgJ3dvay5wbmcnLCBiJ1BORzg5JyldCisgICAgICAgIGNvbnRlbnRfdHlwZSwgYm9keSA9IGVuY29kZV9tdWx0aXBhcnQoZmllbGRzLCBmaWxlcywgYicteCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYidtdWx0aXBhcnQvZm9ybS1kYXRhOyBib3VuZGFyeT0teCcsIGNvbnRlbnRfdHlwZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChFWFBFQ1RFRF9NVUxUSVBBUlRfT1VUUFVULCBib2R5LnNwbGl0KGInXHJcbicpKQorCisKK2NsYXNzIEdsb2JUZXN0Q2FzZUJhc2Uoc3VwcG9ydC5UZW1wZGlyTWFuYWdlciwKKyAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIGJ1aWxkX2ZpbGVzX3RyZWUoc2VsZiwgZmlsZXMpOgorICAgICAgICB0ZW1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgZm9yIGZpbGVwYXRoIGluIGZpbGVzOgorICAgICAgICAgICAgaXNfZGlyID0gZmlsZXBhdGguZW5kc3dpdGgoJy8nKQorICAgICAgICAgICAgZmlsZXBhdGggPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgKmZpbGVwYXRoLnNwbGl0KCcvJykpCisgICAgICAgICAgICBpZiBpc19kaXI6CisgICAgICAgICAgICAgICAgZGlybmFtZSA9IGZpbGVwYXRoCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGRpcm5hbWUgPSBvcy5wYXRoLmRpcm5hbWUoZmlsZXBhdGgpCisgICAgICAgICAgICBpZiBkaXJuYW1lIGFuZCBub3Qgb3MucGF0aC5leGlzdHMoZGlybmFtZSk6CisgICAgICAgICAgICAgICAgb3MubWFrZWRpcnMoZGlybmFtZSkKKyAgICAgICAgICAgIGlmIG5vdCBpc19kaXI6CisgICAgICAgICAgICAgICAgc2VsZi53cml0ZV9maWxlKGZpbGVwYXRoLCAnYmFiYXInKQorICAgICAgICByZXR1cm4gdGVtcGRpcgorCisgICAgQHN0YXRpY21ldGhvZAorICAgIGRlZiBvc19kZXBlbmRlbnRfcGF0aChwYXRoKToKKyAgICAgICAgcGF0aCA9IHBhdGgucnN0cmlwKCcvJykuc3BsaXQoJy8nKQorICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKCpwYXRoKQorCisgICAgZGVmIGNsZWFuX3RyZWUoc2VsZiwgc3BlYyk6CisgICAgICAgIGZpbGVzID0gW10KKyAgICAgICAgZm9yIHBhdGgsIGluY2x1ZGVzIGluIHNwZWMuaXRlbXMoKToKKyAgICAgICAgICAgIGlmIGluY2x1ZGVzOgorICAgICAgICAgICAgICAgIGZpbGVzLmFwcGVuZChzZWxmLm9zX2RlcGVuZGVudF9wYXRoKHBhdGgpKQorICAgICAgICByZXR1cm4gZmlsZXMKKworCitjbGFzcyBHbG9iVGVzdENhc2UoR2xvYlRlc3RDYXNlQmFzZSk6CisKKyAgICBkZWYgYXNzZXJ0R2xvYk1hdGNoKHNlbGYsIGdsb2IsIHNwZWMpOgorICAgICAgICB0ZW1wZGlyID0gc2VsZi5idWlsZF9maWxlc190cmVlKHNwZWMpCisgICAgICAgIGV4cGVjdGVkID0gc2VsZi5jbGVhbl90cmVlKHNwZWMpCisgICAgICAgIG9zLmNoZGlyKHRlbXBkaXIpCisgICAgICAgIHJlc3VsdCA9IGxpc3QoaWdsb2IoZ2xvYikpCisgICAgICAgIHNlbGYuYXNzZXJ0Q291bnRFcXVhbChleHBlY3RlZCwgcmVzdWx0KQorCisgICAgZGVmIHRlc3RfcmVnZXhfcmljaF9nbG9iKHNlbGYpOgorICAgICAgICBtYXRjaGVzID0gUklDSF9HTE9CLmZpbmRhbGwoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIiYmFiYXIgYWltZSBsZXMge2ZyYWlzZXN9IGVzdCBsZXMge2h1aXRyZXN9IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbImZyYWlzZXMiLCAiaHVpdHJlcyJdLCBtYXRjaGVzKQorCisgICAgZGVmIHRlc3Rfc2ltcGxlX2dsb2Ioc2VsZik6CisgICAgICAgIGdsb2IgPSAnKi50cD8nCisgICAgICAgIHNwZWMgPSB7J2NvdWNvdS50cGwnOiBUcnVlLAorICAgICAgICAgICAgICAgICAnY291Y291LnRwaic6IFRydWUsCisgICAgICAgICAgICAgICAgICdEb25vdHdhbnQnOiBGYWxzZX0KKyAgICAgICAgc2VsZi5hc3NlcnRHbG9iTWF0Y2goZ2xvYiwgc3BlYykKKworICAgIGRlZiB0ZXN0X3NpbXBsZV9nbG9iX2luX2RpcihzZWxmKToKKyAgICAgICAgZ2xvYiA9IG9zLnBhdGguam9pbignYmFiYXInLCAnKi50cD8nKQorICAgICAgICBzcGVjID0geydiYWJhci9jb3Vjb3UudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ2JhYmFyL2NvdWNvdS50cGonOiBUcnVlLAorICAgICAgICAgICAgICAgICAnYmFiYXIvdG90by5iaW4nOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ0Rvbm90d2FudCc6IEZhbHNlfQorICAgICAgICBzZWxmLmFzc2VydEdsb2JNYXRjaChnbG9iLCBzcGVjKQorCisgICAgZGVmIHRlc3RfcmVjdXJzaXZlX2dsb2JfaGVhZChzZWxmKToKKyAgICAgICAgZ2xvYiA9IG9zLnBhdGguam9pbignKionLCAndGlwJywgJyoudD9sJykKKyAgICAgICAgc3BlYyA9IHsnYmFiYXIvemF6YS96dXp1L3RpcC9jb3Vjb3UudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ2JhYmFyL3ovdGlwL2NvdWNvdS50cGwnOiBUcnVlLAorICAgICAgICAgICAgICAgICAnYmFiYXIvdGlwL2NvdWNvdS50cGwnOiBUcnVlLAorICAgICAgICAgICAgICAgICAnYmFiYXIvemVvcC90aXAvYmFiYXIvYmFiYXIudHBsJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICdiYWJhci96L3RpcC9jb3Vjb3UuYmluJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICdiYWJhci90b3RvLmJpbic6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnem96by96dXp1L3RpcC9iYWJhci50cGwnOiBUcnVlLAorICAgICAgICAgICAgICAgICAnem96by90aXAvYmFiYXIudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ0Rvbm90d2FudCc6IEZhbHNlfQorICAgICAgICBzZWxmLmFzc2VydEdsb2JNYXRjaChnbG9iLCBzcGVjKQorCisgICAgZGVmIHRlc3RfcmVjdXJzaXZlX2dsb2JfdGFpbChzZWxmKToKKyAgICAgICAgZ2xvYiA9IG9zLnBhdGguam9pbignYmFiYXInLCAnKionKQorICAgICAgICBzcGVjID0geydiYWJhci96YXphLyc6IFRydWUsCisgICAgICAgICAgICAgICAgJ2JhYmFyL3phemEvenV6dS8nOiBUcnVlLAorICAgICAgICAgICAgICAgICdiYWJhci96YXphL3p1enUvYmFiYXIueG1sJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAnYmFiYXIvemF6YS96dXp1L3RvdG8ueG1sJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAnYmFiYXIvemF6YS96dXp1L3RvdG8uY3N2JzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAnYmFiYXIvemF6YS9jb3Vjb3UudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAnYmFiYXIvYnVidS50cGwnOiBUcnVlLAorICAgICAgICAgICAgICAgICd6b3pvL3p1enUvdGlwL2JhYmFyLnRwbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICd6b3pvL3RpcC9iYWJhci50cGwnOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAnRG9ub3R3YW50JzogRmFsc2V9CisgICAgICAgIHNlbGYuYXNzZXJ0R2xvYk1hdGNoKGdsb2IsIHNwZWMpCisKKyAgICBkZWYgdGVzdF9yZWN1cnNpdmVfZ2xvYl9taWRkbGUoc2VsZik6CisgICAgICAgIGdsb2IgPSBvcy5wYXRoLmpvaW4oJ2JhYmFyJywgJyoqJywgJ3RpcCcsICcqLnQ/bCcpCisgICAgICAgIHNwZWMgPSB7J2JhYmFyL3phemEvenV6dS90aXAvY291Y291LnRwbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICdiYWJhci96L3RpcC9jb3Vjb3UudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ2JhYmFyL3RpcC9jb3Vjb3UudHBsJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ2JhYmFyL3plb3AvdGlwL2JhYmFyL2JhYmFyLnRwbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnYmFiYXIvei90aXAvY291Y291LmJpbic6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnYmFiYXIvdG90by5iaW4nOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ3pvem8venV6dS90aXAvYmFiYXIudHBsJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICd6b3pvL3RpcC9iYWJhci50cGwnOiBGYWxzZSwKKyAgICAgICAgICAgICAgICAgJ0Rvbm90d2FudCc6IEZhbHNlfQorICAgICAgICBzZWxmLmFzc2VydEdsb2JNYXRjaChnbG9iLCBzcGVjKQorCisgICAgZGVmIHRlc3RfZ2xvYl9zZXRfdGFpbChzZWxmKToKKyAgICAgICAgZ2xvYiA9IG9zLnBhdGguam9pbignYmluJywgJyoue2JpbixzaCxleGV9JykKKyAgICAgICAgc3BlYyA9IHsnYmluL2JhYmFyLmJpbic6IFRydWUsCisgICAgICAgICAgICAgICAgICdiaW4vemVwaGlyLnNoJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ2Jpbi9jZWxlc3RpbmUuZXhlJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ2Jpbi9jb3JuZWxpdXMuYmF0JzogRmFsc2UsCisgICAgICAgICAgICAgICAgICdiaW4vY29ybmVsaXVzLnhtbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAndG90by95dXJnJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICdEb25vdHdhbnQnOiBGYWxzZX0KKyAgICAgICAgc2VsZi5hc3NlcnRHbG9iTWF0Y2goZ2xvYiwgc3BlYykKKworICAgIGRlZiB0ZXN0X2dsb2Jfc2V0X21pZGRsZShzZWxmKToKKyAgICAgICAgZ2xvYiA9IG9zLnBhdGguam9pbigneG1sJywgJ3tiYWJhcix0b3RvfS54bWwnKQorICAgICAgICBzcGVjID0geyd4bWwvYmFiYXIueG1sJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ3htbC90b3RvLnhtbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICd4bWwvYmFiYXIueHNsdCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAneG1sL2Nvcm5lbGl1cy5zZ21sJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICd4bWwvemVwaGlyLnhtbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAndG90by95dXJnLnhtbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAnRG9ub3R3YW50JzogRmFsc2V9CisgICAgICAgIHNlbGYuYXNzZXJ0R2xvYk1hdGNoKGdsb2IsIHNwZWMpCisKKyAgICBkZWYgdGVzdF9nbG9iX3NldF9oZWFkKHNlbGYpOgorICAgICAgICBnbG9iID0gb3MucGF0aC5qb2luKCd7eG1sLHhzbHR9JywgJ2JhYmFyLionKQorICAgICAgICBzcGVjID0geyd4bWwvYmFiYXIueG1sJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ3htbC90b3RvLnhtbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAneHNsdC9iYWJhci54c2x0JzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ3hzbHQvdG90by54c2x0JzogRmFsc2UsCisgICAgICAgICAgICAgICAgICd0b3RvL3l1cmcueG1sJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICdEb25vdHdhbnQnOiBGYWxzZX0KKyAgICAgICAgc2VsZi5hc3NlcnRHbG9iTWF0Y2goZ2xvYiwgc3BlYykKKworICAgIGRlZiB0ZXN0X2dsb2JfYWxsKHNlbGYpOgorICAgICAgICBkaXJzID0gJ3slcywlc30nICUgKG9zLnBhdGguam9pbigneG1sJywgJyonKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4oJ3hzbHQnLCAnKionKSkKKyAgICAgICAgZ2xvYiA9IG9zLnBhdGguam9pbihkaXJzLCAnYmFiYXIueG1sJykKKyAgICAgICAgc3BlYyA9IHsneG1sL2EvYmFiYXIueG1sJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ3htbC9iL2JhYmFyLnhtbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICd4bWwvYS9jL2JhYmFyLnhtbCc6IEZhbHNlLAorICAgICAgICAgICAgICAgICAneHNsdC9hL2JhYmFyLnhtbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICd4c2x0L2IvYmFiYXIueG1sJzogVHJ1ZSwKKyAgICAgICAgICAgICAgICAgJ3hzbHQvYS9jL2JhYmFyLnhtbCc6IFRydWUsCisgICAgICAgICAgICAgICAgICd0b3RvL3l1cmcueG1sJzogRmFsc2UsCisgICAgICAgICAgICAgICAgICdEb25vdHdhbnQnOiBGYWxzZX0KKyAgICAgICAgc2VsZi5hc3NlcnRHbG9iTWF0Y2goZ2xvYiwgc3BlYykKKworICAgIGRlZiB0ZXN0X2ludmFsaWRfZ2xvYl9wYXR0ZXJuKHNlbGYpOgorICAgICAgICBpbnZhbGlkcyA9IFsKKyAgICAgICAgICAgICdwcG9vYSoqJywKKyAgICAgICAgICAgICdhenphZWF6NCoqLycsCisgICAgICAgICAgICAnLyoqZGRzZnMnLAorICAgICAgICAgICAgJyoqIyMxZSImZScsCisgICAgICAgICAgICAnRFNGYioqYzAwOScsCisgICAgICAgICAgICAneycsCisgICAgICAgICAgICAne2FhUVNERmEnLAorICAgICAgICAgICAgJ30nLAorICAgICAgICAgICAgJ2FRU0RGU2FhfScsCisgICAgICAgICAgICAneyoqYSwnLAorICAgICAgICAgICAgJywqKmF9JywKKyAgICAgICAgICAgICd7YSoqLCcsCisgICAgICAgICAgICAnLGIqKn0nLAorICAgICAgICAgICAgJ3thKiphLGJhYmFyfScsCisgICAgICAgICAgICAne2JvYixiKip6fScsCisgICAgICAgIF0KKyAgICAgICAgZm9yIHBhdHRlcm4gaW4gaW52YWxpZHM6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBpZ2xvYiwgcGF0dGVybikKKworCitjbGFzcyBFZ2dJbmZvVG9EaXN0SW5mb1Rlc3RDYXNlKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnQuTG9nZ2luZ0NhdGNoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBnZXRfbWV0YWRhdGFfZmlsZV9wYXRocyhzZWxmLCBkaXN0aW5mb19wYXRoKToKKyAgICAgICAgcmVxX21ldGFkYXRhX2ZpbGVzID0gWydNRVRBREFUQScsICdSRUNPUkQnLCAnSU5TVEFMTEVSJ10KKyAgICAgICAgbWV0YWRhdGFfZmlsZV9wYXRocyA9IFtdCisgICAgICAgIGZvciBtZXRhZGF0YV9maWxlIGluIHJlcV9tZXRhZGF0YV9maWxlczoKKyAgICAgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4oZGlzdGluZm9fcGF0aCwgbWV0YWRhdGFfZmlsZSkKKyAgICAgICAgICAgIG1ldGFkYXRhX2ZpbGVfcGF0aHMuYXBwZW5kKHBhdGgpCisgICAgICAgIHJldHVybiBtZXRhZGF0YV9maWxlX3BhdGhzCisKKyAgICBkZWYgdGVzdF9lZ2dpbmZvX3RvX2Rpc3RpbmZvX3NldHVwdG9vbHMoc2VsZik6CisgICAgICAgIGRpc3RpbmZvID0gJ2hlbGxvLTAuMS4xLXB5My4zLmRpc3QtaW5mbycKKyAgICAgICAgZWdnaW5mbyA9ICdoZWxsby0wLjEuMS1weTMuMy5lZ2ctaW5mbycKKyAgICAgICAgZGlycyA9IFtlZ2dpbmZvXQorICAgICAgICBmaWxlcyA9IFsnaGVsbG8ucHknLCAnaGVsbG8ucHljJ10KKyAgICAgICAgZXh0cmFfbWV0YWRhdGEgPSBbJ2RlcGVuZGVuY3lfbGlua3MudHh0JywgJ2VudHJ5X3BvaW50cy50eHQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnbm90LXppcC1zYWZlJywgJ1BLRy1JTkZPJywgJ3RvcF9sZXZlbC50eHQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnU09VUkNFUy50eHQnXQorICAgICAgICBmb3IgZiBpbiBleHRyYV9tZXRhZGF0YToKKyAgICAgICAgICAgIGZpbGVzLmFwcGVuZChvcy5wYXRoLmpvaW4oZWdnaW5mbywgZikpCisKKyAgICAgICAgdGVtcGRpciwgcmVjb3JkX2ZpbGUgPSBzZWxmLmJ1aWxkX2Rpc3RfdHJlZShmaWxlcywgZGlycykKKyAgICAgICAgZGlzdGluZm9fcGF0aCA9IG9zLnBhdGguam9pbih0ZW1wZGlyLCBkaXN0aW5mbykKKyAgICAgICAgZWdnaW5mb19wYXRoID0gb3MucGF0aC5qb2luKHRlbXBkaXIsIGVnZ2luZm8pCisgICAgICAgIG1ldGFkYXRhX2ZpbGVfcGF0aHMgPSBzZWxmLmdldF9tZXRhZGF0YV9maWxlX3BhdGhzKGRpc3RpbmZvX3BhdGgpCisKKyAgICAgICAgZWdnaW5mb190b19kaXN0aW5mbyhyZWNvcmRfZmlsZSkKKyAgICAgICAgIyB0ZXN0IHRoYXQgZGlyZWN0b3JpZXMgYW5kIGZpbGVzIGdldCBjcmVhdGVkCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZGlyKGRpc3RpbmZvX3BhdGgpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2RpcihlZ2dpbmZvX3BhdGgpKQorCisgICAgICAgIGZvciBtZmlsZSBpbiBtZXRhZGF0YV9maWxlX3BhdGhzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxlKG1maWxlKSkKKworICAgIGRlZiB0ZXN0X2VnZ2luZm9fdG9fZGlzdGluZm9fZGlzdHV0aWxzKHNlbGYpOgorICAgICAgICBkaXN0aW5mbyA9ICdoZWxsby0wLjEuMS1weTMuMy5kaXN0LWluZm8nCisgICAgICAgIGVnZ2luZm8gPSAnaGVsbG8tMC4xLjEtcHkzLjMuZWdnLWluZm8nCisgICAgICAgICMgZWdnaW5mbyBpcyBhIGZpbGUgaW4gZGlzdHV0aWxzIHdoaWNoIGNvbnRhaW5zIHRoZSBtZXRhZGF0YQorICAgICAgICBmaWxlcyA9IFsnaGVsbG8ucHknLCAnaGVsbG8ucHljJywgZWdnaW5mb10KKworICAgICAgICB0ZW1wZGlyLCByZWNvcmRfZmlsZSA9IHNlbGYuYnVpbGRfZGlzdF90cmVlKGZpbGVzLCBkaXJzPVtdKQorICAgICAgICBkaXN0aW5mb19wYXRoID0gb3MucGF0aC5qb2luKHRlbXBkaXIsIGRpc3RpbmZvKQorICAgICAgICBlZ2dpbmZvX3BhdGggPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgZWdnaW5mbykKKyAgICAgICAgbWV0YWRhdGFfZmlsZV9wYXRocyA9IHNlbGYuZ2V0X21ldGFkYXRhX2ZpbGVfcGF0aHMoZGlzdGluZm9fcGF0aCkKKworICAgICAgICBlZ2dpbmZvX3RvX2Rpc3RpbmZvKHJlY29yZF9maWxlKQorICAgICAgICAjIHRlc3QgdGhhdCBkaXJlY3RvcmllcyBhbmQgZmlsZXMgZ2V0IGNyZWF0ZWQKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNkaXIoZGlzdGluZm9fcGF0aCkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShlZ2dpbmZvX3BhdGgpKQorCisgICAgICAgIGZvciBtZmlsZSBpbiBtZXRhZGF0YV9maWxlX3BhdGhzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxlKG1maWxlKSkKKworICAgIGRlZiBidWlsZF9kaXN0X3RyZWUoc2VsZiwgZmlsZXMsIGRpcnMpOgorICAgICAgICB0ZW1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgcmVjb3JkX2ZpbGVfcGF0aCA9IG9zLnBhdGguam9pbih0ZW1wZGlyLCAnUkVDT1JEJykKKyAgICAgICAgZmlsZV9wYXRocywgZGlyX3BhdGhzID0gKFtdLCBbXSkKKyAgICAgICAgZm9yIGQgaW4gZGlyczoKKyAgICAgICAgICAgIHBhdGggPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgZCkKKyAgICAgICAgICAgIG9zLm1ha2VkaXJzKHBhdGgpCisgICAgICAgICAgICBkaXJfcGF0aHMuYXBwZW5kKHBhdGgpCisgICAgICAgIGZvciBmIGluIGZpbGVzOgorICAgICAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbih0ZW1wZGlyLCBmKQorICAgICAgICAgICAgd2l0aCBvcGVuKHBhdGgsICd3JykgYXMgX2Y6CisgICAgICAgICAgICAgICAgX2Yud3JpdGUoZikKKyAgICAgICAgICAgIGZpbGVfcGF0aHMuYXBwZW5kKHBhdGgpCisKKyAgICAgICAgd2l0aCBvcGVuKHJlY29yZF9maWxlX3BhdGgsICd3JykgYXMgcmVjb3JkX2ZpbGU6CisgICAgICAgICAgICBmb3IgZnBhdGggaW4gZmlsZV9wYXRoczoKKyAgICAgICAgICAgICAgICByZWNvcmRfZmlsZS53cml0ZShmcGF0aCArICdcbicpCisgICAgICAgICAgICBmb3IgZHBhdGggaW4gZGlyX3BhdGhzOgorICAgICAgICAgICAgICAgIHJlY29yZF9maWxlLndyaXRlKGRwYXRoICsgJ1xuJykKKworICAgICAgICByZXR1cm4gKHRlbXBkaXIsIHJlY29yZF9maWxlX3BhdGgpCisKKworY2xhc3MgUGFja2FnaW5nTGliQ2hlY2tzKHN1cHBvcnQuVGVtcGRpck1hbmFnZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5Mb2dnaW5nQ2F0Y2hlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICB1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKFBhY2thZ2luZ0xpYkNoZWNrcywgc2VsZikuc2V0VXAoKQorICAgICAgICBzZWxmLl9lbXB0eV9kaXIgPSBzZWxmLm1rZHRlbXAoKQorCisgICAgZGVmIHRlc3RfZW1wdHlfcGFja2FnZV9pc19ub3RfYmFzZWRfb25fYW55dGhpbmcoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaXNfc2V0dXB0b29scyhzZWxmLl9lbXB0eV9kaXIpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzX2Rpc3R1dGlscyhzZWxmLl9lbXB0eV9kaXIpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzX3BhY2thZ2luZyhzZWxmLl9lbXB0eV9kaXIpKQorCisgICAgZGVmIHRlc3Rfc2V0dXBfcHlfaW1wb3J0aW5nX3NldHVwdG9vbHNfaXNfc2V0dXB0b29sc19iYXNlZChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzX3NldHVwdG9vbHMoc2VsZi5fc2V0dXB0b29sc19zZXR1cF9weV9wa2coKSkpCisKKyAgICBkZWYgdGVzdF9lZ2dfaW5mb19kaXJfYW5kX3NldHVwX3B5X2lzX3NldHVwdG9vbHNfYmFzZWQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc19zZXR1cHRvb2xzKHNlbGYuX3NldHVwdG9vbHNfZWdnX2luZm9fcGtnKCkpKQorCisgICAgZGVmIHRlc3RfZWdnX2luZm9fYW5kX25vbl9zZXR1cHRvb2xzX3NldHVwX3B5X2lzX3NldHVwdG9vbHNfYmFzZWQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc19zZXR1cHRvb2xzKHNlbGYuX2VnZ19pbmZvX3dpdGhfbm9fc2V0dXB0b29scygpKSkKKworICAgIGRlZiB0ZXN0X3NldHVwX3B5X25vdF9pbXBvcnRpbmdfc2V0dXB0b29sc19pc19ub3Rfc2V0dXB0b29sc19iYXNlZChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShpc19zZXR1cHRvb2xzKHNlbGYuX3JhbmRvbV9zZXR1cF9weV9wa2coKSkpCisKKyAgICBkZWYgdGVzdF9zZXR1cF9weV9pbXBvcnRpbmdfZGlzdHV0aWxzX2lzX2Rpc3R1dGlsc19iYXNlZChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzX2Rpc3R1dGlscyhzZWxmLl9kaXN0dXRpbHNfc2V0dXBfcHlfcGtnKCkpKQorCisgICAgZGVmIHRlc3RfcGtnX2luZm9fZmlsZV9hbmRfc2V0dXBfcHlfaXNfZGlzdHV0aWxzX2Jhc2VkKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNfZGlzdHV0aWxzKHNlbGYuX2Rpc3R1dGlsc19wa2dfaW5mbygpKSkKKworICAgIGRlZiB0ZXN0X3BrZ19pbmZvX2FuZF9ub25fZGlzdHV0aWxzX3NldHVwX3B5X2lzX2Rpc3R1dGlsc19iYXNlZChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzX2Rpc3R1dGlscyhzZWxmLl9wa2dfaW5mb193aXRoX25vX2Rpc3R1dGlscygpKSkKKworICAgIGRlZiB0ZXN0X3NldHVwX3B5X25vdF9pbXBvcnRpbmdfZGlzdHV0aWxzX2lzX25vdF9kaXN0dXRpbHNfYmFzZWQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaXNfZGlzdHV0aWxzKHNlbGYuX3JhbmRvbV9zZXR1cF9weV9wa2coKSkpCisKKyAgICBkZWYgdGVzdF9zZXR1cF9jZmdfd2l0aF9ub19tZXRhZGF0YV9zZWN0aW9uX2lzX25vdF9wYWNrYWdpbmdfYmFzZWQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaXNfcGFja2FnaW5nKHNlbGYuX3NldHVwX2NmZ193aXRoX25vX21ldGFkYXRhX3BrZygpKSkKKworICAgIGRlZiB0ZXN0X3NldHVwX2NmZ193aXRoX3ZhbGlkX21ldGFkYXRhX3NlY3Rpb25faXNfcGFja2FnaW5nX2Jhc2VkKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNfcGFja2FnaW5nKHNlbGYuX3ZhbGlkX3NldHVwX2NmZ19wa2coKSkpCisKKyAgICBkZWYgdGVzdF9zZXR1cF9jZmdfYW5kX2ludmFsaWRfc2V0dXBfY2ZnX2lzX25vdF9wYWNrYWdpbmdfYmFzZWQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaXNfcGFja2FnaW5nKHNlbGYuX2ludmFsaWRfc2V0dXBfY2ZnX3BrZygpKSkKKworICAgIGRlZiB0ZXN0X2dldF9pbnN0YWxsX21ldGhvZF93aXRoX3NldHVwdG9vbHNfcGtnKHNlbGYpOgorICAgICAgICBwYXRoID0gc2VsZi5fc2V0dXB0b29sc19zZXR1cF9weV9wa2coKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJzZXR1cHRvb2xzIiwgZ2V0X2luc3RhbGxfbWV0aG9kKHBhdGgpKQorCisgICAgZGVmIHRlc3RfZ2V0X2luc3RhbGxfbWV0aG9kX3dpdGhfZGlzdHV0aWxzX3BrZyhzZWxmKToKKyAgICAgICAgcGF0aCA9IHNlbGYuX2Rpc3R1dGlsc19wa2dfaW5mbygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoImRpc3R1dGlscyIsIGdldF9pbnN0YWxsX21ldGhvZChwYXRoKSkKKworICAgIGRlZiB0ZXN0X2dldF9pbnN0YWxsX21ldGhvZF93aXRoX3BhY2thZ2luZ19wa2coc2VsZik6CisgICAgICAgIHBhdGggPSBzZWxmLl92YWxpZF9zZXR1cF9jZmdfcGtnKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgicGFja2FnaW5nIiwgZ2V0X2luc3RhbGxfbWV0aG9kKHBhdGgpKQorCisgICAgZGVmIHRlc3RfZ2V0X2luc3RhbGxfbWV0aG9kX3dpdGhfdW5rbm93bl9wa2coc2VsZik6CisgICAgICAgIHBhdGggPSBzZWxmLl9pbnZhbGlkX3NldHVwX2NmZ19wa2coKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJbnN0YWxsYXRpb25FeGNlcHRpb24sIGdldF9pbnN0YWxsX21ldGhvZCwgcGF0aCkKKworICAgIGRlZiB0ZXN0X2lzX3NldHVwdG9vbHNfbG9nc19zZXR1cF9weV90ZXh0X2ZvdW5kKHNlbGYpOgorICAgICAgICBpc19zZXR1cHRvb2xzKHNlbGYuX3NldHVwdG9vbHNfc2V0dXBfcHlfcGtnKCkpCisgICAgICAgIGV4cGVjdGVkID0gWydzZXR1cC5weSBmaWxlIGZvdW5kLicsCisgICAgICAgICAgICAgICAgICAgICdObyBlZ2ctaW5mbyBkaXJlY3RvcnkgZm91bmQuJywKKyAgICAgICAgICAgICAgICAgICAgJ0ZvdW5kIHNldHVwdG9vbHMgdGV4dCBpbiBzZXR1cC5weS4nXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCBzZWxmLmdldF9sb2dzKGxvZ2dpbmcuREVCVUcpKQorCisgICAgZGVmIHRlc3RfaXNfc2V0dXB0b29sc19sb2dzX3NldHVwX3B5X3RleHRfbm90X2ZvdW5kKHNlbGYpOgorICAgICAgICBkaXJlY3RvcnkgPSBzZWxmLl9yYW5kb21fc2V0dXBfcHlfcGtnKCkKKyAgICAgICAgaXNfc2V0dXB0b29scyhkaXJlY3RvcnkpCisgICAgICAgIGV4cGVjdGVkID0gWydzZXR1cC5weSBmaWxlIGZvdW5kLicsICdObyBlZ2ctaW5mbyBkaXJlY3RvcnkgZm91bmQuJywKKyAgICAgICAgICAgICAgICAgICAgJ05vIHNldHVwdG9vbHMgdGV4dCBmb3VuZCBpbiBzZXR1cC5weS4nXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCBzZWxmLmdldF9sb2dzKGxvZ2dpbmcuREVCVUcpKQorCisgICAgZGVmIHRlc3RfaXNfc2V0dXB0b29sc19sb2dzX2VnZ19pbmZvX2Rpcl9mb3VuZChzZWxmKToKKyAgICAgICAgaXNfc2V0dXB0b29scyhzZWxmLl9zZXR1cHRvb2xzX2VnZ19pbmZvX3BrZygpKQorICAgICAgICBleHBlY3RlZCA9IFsnc2V0dXAucHkgZmlsZSBmb3VuZC4nLCAnRm91bmQgZWdnLWluZm8gZGlyZWN0b3J5LiddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhwZWN0ZWQsIHNlbGYuZ2V0X2xvZ3MobG9nZ2luZy5ERUJVRykpCisKKyAgICBkZWYgdGVzdF9pc19kaXN0dXRpbHNfbG9nc19zZXR1cF9weV90ZXh0X2ZvdW5kKHNlbGYpOgorICAgICAgICBpc19kaXN0dXRpbHMoc2VsZi5fZGlzdHV0aWxzX3NldHVwX3B5X3BrZygpKQorICAgICAgICBleHBlY3RlZCA9IFsnc2V0dXAucHkgZmlsZSBmb3VuZC4nLAorICAgICAgICAgICAgICAgICAgICAnTm8gUEtHLUlORk8gZmlsZSBmb3VuZC4nLAorICAgICAgICAgICAgICAgICAgICAnRm91bmQgZGlzdHV0aWxzIHRleHQgaW4gc2V0dXAucHkuJ10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleHBlY3RlZCwgc2VsZi5nZXRfbG9ncyhsb2dnaW5nLkRFQlVHKSkKKworICAgIGRlZiB0ZXN0X2lzX2Rpc3R1dGlsc19sb2dzX3NldHVwX3B5X3RleHRfbm90X2ZvdW5kKHNlbGYpOgorICAgICAgICBkaXJlY3RvcnkgPSBzZWxmLl9yYW5kb21fc2V0dXBfcHlfcGtnKCkKKyAgICAgICAgaXNfZGlzdHV0aWxzKGRpcmVjdG9yeSkKKyAgICAgICAgZXhwZWN0ZWQgPSBbJ3NldHVwLnB5IGZpbGUgZm91bmQuJywgJ05vIFBLRy1JTkZPIGZpbGUgZm91bmQuJywKKyAgICAgICAgICAgICAgICAgICAgJ05vIGRpc3R1dGlscyB0ZXh0IGZvdW5kIGluIHNldHVwLnB5LiddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhwZWN0ZWQsIHNlbGYuZ2V0X2xvZ3MobG9nZ2luZy5ERUJVRykpCisKKyAgICBkZWYgdGVzdF9pc19kaXN0dXRpbHNfbG9nc19wa2dfaW5mb19maWxlX2ZvdW5kKHNlbGYpOgorICAgICAgICBpc19kaXN0dXRpbHMoc2VsZi5fZGlzdHV0aWxzX3BrZ19pbmZvKCkpCisgICAgICAgIGV4cGVjdGVkID0gWydzZXR1cC5weSBmaWxlIGZvdW5kLicsICdQS0ctSU5GTyBmaWxlIGZvdW5kLiddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhwZWN0ZWQsIHNlbGYuZ2V0X2xvZ3MobG9nZ2luZy5ERUJVRykpCisKKyAgICBkZWYgdGVzdF9pc19wYWNrYWdpbmdfbG9nc19zZXR1cF9jZmdfZm91bmQoc2VsZik6CisgICAgICAgIGlzX3BhY2thZ2luZyhzZWxmLl92YWxpZF9zZXR1cF9jZmdfcGtnKCkpCisgICAgICAgIGV4cGVjdGVkID0gWydzZXR1cC5jZmcgZmlsZSBmb3VuZC4nXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCBzZWxmLmdldF9sb2dzKGxvZ2dpbmcuREVCVUcpKQorCisgICAgZGVmIHRlc3RfaXNfcGFja2FnaW5nX2xvZ3Nfc2V0dXBfY2ZnX25vdF9mb3VuZChzZWxmKToKKyAgICAgICAgaXNfcGFja2FnaW5nKHNlbGYuX2VtcHR5X2RpcikKKyAgICAgICAgZXhwZWN0ZWQgPSBbJ05vIHNldHVwLmNmZyBmaWxlIGZvdW5kLiddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhwZWN0ZWQsIHNlbGYuZ2V0X2xvZ3MobG9nZ2luZy5ERUJVRykpCisKKyAgICBkZWYgX3dyaXRlX3NldHVwdG9vbHNfc2V0dXBfcHkoc2VsZiwgZGlyZWN0b3J5KToKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKChkaXJlY3RvcnksICdzZXR1cC5weScpLAorICAgICAgICAgICAgICAgICJmcm9tIHNldHVwdG9vbHMgaW1wb3J0IHNldHVwIikKKworICAgIGRlZiBfd3JpdGVfZGlzdHV0aWxzX3NldHVwX3B5KHNlbGYsIGRpcmVjdG9yeSk6CisgICAgICAgIHNlbGYud3JpdGVfZmlsZShbZGlyZWN0b3J5LCAnc2V0dXAucHknXSwKKyAgICAgICAgICAgICAgICAiZnJvbSBkaXN0dXRpbHMuY29yZSBpbXBvcnQgc2V0dXAiKQorCisgICAgZGVmIF93cml0ZV9wYWNrYWdpbmdfc2V0dXBfY2ZnKHNlbGYsIGRpcmVjdG9yeSk6CisgICAgICAgIHNlbGYud3JpdGVfZmlsZShbZGlyZWN0b3J5LCAnc2V0dXAuY2ZnJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAoIlttZXRhZGF0YV1cbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAibmFtZSA9IG15cGFja2FnZVxuIgorICAgICAgICAgICAgICAgICAgICAgICAgICJ2ZXJzaW9uID0gMC4xLjBcbiIpKQorCisgICAgZGVmIF9zZXR1cHRvb2xzX3NldHVwX3B5X3BrZyhzZWxmKToKKyAgICAgICAgdG1wID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi5fd3JpdGVfc2V0dXB0b29sc19zZXR1cF9weSh0bXApCisgICAgICAgIHJldHVybiB0bXAKKworICAgIGRlZiBfZGlzdHV0aWxzX3NldHVwX3B5X3BrZyhzZWxmKToKKyAgICAgICAgdG1wID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi5fd3JpdGVfZGlzdHV0aWxzX3NldHVwX3B5KHRtcCkKKyAgICAgICAgcmV0dXJuIHRtcAorCisgICAgZGVmIF92YWxpZF9zZXR1cF9jZmdfcGtnKHNlbGYpOgorICAgICAgICB0bXAgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZWxmLl93cml0ZV9wYWNrYWdpbmdfc2V0dXBfY2ZnKHRtcCkKKyAgICAgICAgcmV0dXJuIHRtcAorCisgICAgZGVmIF9zZXR1cHRvb2xzX2VnZ19pbmZvX3BrZyhzZWxmKToKKyAgICAgICAgdG1wID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi5fd3JpdGVfc2V0dXB0b29sc19zZXR1cF9weSh0bXApCisgICAgICAgIHRlbXBmaWxlLm1rZHRlbXAoc3VmZml4PScuZWdnLWluZm8nLCBkaXI9dG1wKQorICAgICAgICByZXR1cm4gdG1wCisKKyAgICBkZWYgX2Rpc3R1dGlsc19wa2dfaW5mbyhzZWxmKToKKyAgICAgICAgdG1wID0gc2VsZi5fZGlzdHV0aWxzX3NldHVwX3B5X3BrZygpCisgICAgICAgIHNlbGYud3JpdGVfZmlsZShbdG1wLCAnUEtHLUlORk8nXSwgJycsIGVuY29kaW5nPSdVVEYtOCcpCisgICAgICAgIHJldHVybiB0bXAKKworICAgIGRlZiBfc2V0dXBfY2ZnX3dpdGhfbm9fbWV0YWRhdGFfcGtnKHNlbGYpOgorICAgICAgICB0bXAgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoW3RtcCwgJ3NldHVwLmNmZyddLAorICAgICAgICAgICAgICAgICAgICAgICAgKCJbb3RoZXJzZWN0aW9uXVxuIgorICAgICAgICAgICAgICAgICAgICAgICAgICJmb28gPSBiYXJcbiIpKQorICAgICAgICByZXR1cm4gdG1wCisKKyAgICBkZWYgX2ludmFsaWRfc2V0dXBfY2ZnX3BrZyhzZWxmKToKKyAgICAgICAgdG1wID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKFt0bXAsICdzZXR1cC5jZmcnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICgiW21ldGFkYXRhXVxuIgorICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lID0gam9oblxuIgorICAgICAgICAgICAgICAgICAgICAgICAgICJsYXN0X25hbWUgPSBkb2VcbiIpKQorICAgICAgICByZXR1cm4gdG1wCisKKyAgICBkZWYgX2VnZ19pbmZvX3dpdGhfbm9fc2V0dXB0b29scyhzZWxmKToKKyAgICAgICAgdG1wID0gc2VsZi5fcmFuZG9tX3NldHVwX3B5X3BrZygpCisgICAgICAgIHRlbXBmaWxlLm1rZHRlbXAoc3VmZml4PScuZWdnLWluZm8nLCBkaXI9dG1wKQorICAgICAgICByZXR1cm4gdG1wCisKKyAgICBkZWYgX3BrZ19pbmZvX3dpdGhfbm9fZGlzdHV0aWxzKHNlbGYpOgorICAgICAgICB0bXAgPSBzZWxmLl9yYW5kb21fc2V0dXBfcHlfcGtnKCkKKyAgICAgICAgc2VsZi53cml0ZV9maWxlKFt0bXAsICdQS0ctSU5GTyddLCAnJywgZW5jb2Rpbmc9J1VURi04JykKKyAgICAgICAgcmV0dXJuIHRtcAorCisgICAgZGVmIF9yYW5kb21fc2V0dXBfcHlfcGtnKHNlbGYpOgorICAgICAgICB0bXAgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzZWxmLndyaXRlX2ZpbGUoKHRtcCwgJ3NldHVwLnB5JyksICJmcm9tIG15cGFja2FnZSBpbXBvcnQgc2V0dXAiKQorICAgICAgICByZXR1cm4gdG1wCisKKworZGVmIHRlc3Rfc3VpdGUoKToKKyAgICBzdWl0ZSA9IHVuaXR0ZXN0Lm1ha2VTdWl0ZShVdGlsVGVzdENhc2UpCisgICAgc3VpdGUuYWRkVGVzdCh1bml0dGVzdC5tYWtlU3VpdGUoR2xvYlRlc3RDYXNlKSkKKyAgICBzdWl0ZS5hZGRUZXN0KHVuaXR0ZXN0Lm1ha2VTdWl0ZShFZ2dJbmZvVG9EaXN0SW5mb1Rlc3RDYXNlKSkKKyAgICBzdWl0ZS5hZGRUZXN0KHVuaXR0ZXN0Lm1ha2VTdWl0ZShQYWNrYWdpbmdMaWJDaGVja3MpKQorICAgIHJldHVybiBzdWl0ZQorCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdW5pdHRlc3QubWFpbihkZWZhdWx0VGVzdD0idGVzdF9zdWl0ZSIpCmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfdmVyc2lvbi5weSBiL0xpYi9wYWNrYWdpbmcvdGVzdHMvdGVzdF92ZXJzaW9uLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM4NjMzNjIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvcGFja2FnaW5nL3Rlc3RzL3Rlc3RfdmVyc2lvbi5weQpAQCAtMCwwICsxLDI2MiBAQAorIiIiVGVzdHMgZm9yIHBhY2thZ2luZy52ZXJzaW9uLiIiIgoraW1wb3J0IGRvY3Rlc3QKKworZnJvbSBwYWNrYWdpbmcudmVyc2lvbiBpbXBvcnQgTm9ybWFsaXplZFZlcnNpb24gYXMgVgorZnJvbSBwYWNrYWdpbmcudmVyc2lvbiBpbXBvcnQgSHVnZU1ham9yVmVyc2lvbk51bUVycm9yLCBJcnJhdGlvbmFsVmVyc2lvbkVycm9yCitmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBzdWdnZXN0X25vcm1hbGl6ZWRfdmVyc2lvbiBhcyBzdWdnZXN0Citmcm9tIHBhY2thZ2luZy52ZXJzaW9uIGltcG9ydCBWZXJzaW9uUHJlZGljYXRlCitmcm9tIHBhY2thZ2luZy50ZXN0cyBpbXBvcnQgdW5pdHRlc3QKKworCitjbGFzcyBWZXJzaW9uVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgdmVyc2lvbnMgPSAoKFYoJzEuMCcpLCAnMS4wJyksCisgICAgICAgICAgICAgICAgKFYoJzEuMScpLCAnMS4xJyksCisgICAgICAgICAgICAgICAgKFYoJzEuMi4zJyksICcxLjIuMycpLAorICAgICAgICAgICAgICAgIChWKCcxLjInKSwgJzEuMicpLAorICAgICAgICAgICAgICAgIChWKCcxLjIuM2E0JyksICcxLjIuM2E0JyksCisgICAgICAgICAgICAgICAgKFYoJzEuMmM0JyksICcxLjJjNCcpLAorICAgICAgICAgICAgICAgIChWKCcxLjIuMy40JyksICcxLjIuMy40JyksCisgICAgICAgICAgICAgICAgKFYoJzEuMi4zLjQuMGIzJyksICcxLjIuMy40YjMnKSwKKyAgICAgICAgICAgICAgICAoVignMS4yLjAuMC4wJyksICcxLjInKSwKKyAgICAgICAgICAgICAgICAoVignMS4wLmRldjM0NScpLCAnMS4wLmRldjM0NScpLAorICAgICAgICAgICAgICAgIChWKCcxLjAucG9zdDQ1Ni5kZXY2MjMnKSwgJzEuMC5wb3N0NDU2LmRldjYyMycpKQorCisgICAgZGVmIHRlc3RfcmVwcihzZWxmKToKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcHIoVignMS4wJykpLCAiTm9ybWFsaXplZFZlcnNpb24oJzEuMCcpIikKKworICAgIGRlZiB0ZXN0X2Jhc2ljX3ZlcnNpb25zKHNlbGYpOgorCisgICAgICAgIGZvciB2LCBzIGluIHNlbGYudmVyc2lvbnM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih2KSwgcykKKworICAgIGRlZiB0ZXN0X2hhc2goc2VsZik6CisKKyAgICAgICAgZm9yIHYsIHMgaW4gc2VsZi52ZXJzaW9uczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFzaCh2KSwgaGFzaChWKHMpKSkKKworICAgICAgICB2ZXJzaW9ucyA9IHNldChbdiBmb3IgdiwgcyBpbiBzZWxmLnZlcnNpb25zXSkKKyAgICAgICAgZm9yIHYsIHMgaW4gc2VsZi52ZXJzaW9uczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4odiwgdmVyc2lvbnMpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZXQoW1YoJzEuMCcpXSksIHNldChbVignMS4wJyksIFYoJzEuMCcpXSkpCisKKyAgICBkZWYgdGVzdF9mcm9tX3BhcnRzKHNlbGYpOgorCisgICAgICAgIGZvciB2LCBzIGluIHNlbGYudmVyc2lvbnM6CisgICAgICAgICAgICB2MiA9IFYuZnJvbV9wYXJ0cygqdi5wYXJ0cykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodiwgdjIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih2KSwgc3RyKHYyKSkKKworICAgIGRlZiB0ZXN0X2lycmF0aW9uYWxfdmVyc2lvbnMoc2VsZik6CisKKyAgICAgICAgaXJyYXRpb25hbCA9ICgnMScsICcxLjJhJywgJzEuMi4zYicsICcxLjAyJywgJzEuMmEwMycsCisgICAgICAgICAgICAgICAgICAgICAgJzEuMmEzLjA0JywgJzEuMi5kZXYuMicsICcxLjJkZXYnLCAnMS4yLmRldicsCisgICAgICAgICAgICAgICAgICAgICAgJzEuMi5kZXYyLnBvc3QyJywgJzEuMi5wb3N0Mi5kZXYzLnBvc3Q0JykKKworICAgICAgICBmb3IgcyBpbiBpcnJhdGlvbmFsOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSXJyYXRpb25hbFZlcnNpb25FcnJvciwgViwgcykKKworICAgIGRlZiB0ZXN0X2h1Z2VfdmVyc2lvbihzZWxmKToKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihWKCcxOTgwLjAnKSksICcxOTgwLjAnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhIdWdlTWFqb3JWZXJzaW9uTnVtRXJyb3IsIFYsICcxOTgxLjAnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihWKCcxOTgxLjAnLCBlcnJvcl9vbl9odWdlX21ham9yX251bT1GYWxzZSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICcxOTgxLjAnKQorCisgICAgZGVmIHRlc3RfY29tcGFyaXNvbihzZWxmKToKKyAgICAgICAgY29tcGFyaXNvbl9kb2N0ZXN0X3N0cmluZyA9IHIiIiIKKyAgICAgICAgPj4+IFYoJzEuMi4wJykgPT0gJzEuMicKKyAgICAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgICAuLi4KKyAgICAgICAgVHlwZUVycm9yOiBjYW5ub3QgY29tcGFyZSBOb3JtYWxpemVkVmVyc2lvbiBhbmQgc3RyCisKKyAgICAgICAgPj4+IFYoJzEuMicpIDwgJzEuMycKKyAgICAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgICAuLi4KKyAgICAgICAgVHlwZUVycm9yOiBjYW5ub3QgY29tcGFyZSBOb3JtYWxpemVkVmVyc2lvbiBhbmQgc3RyCisKKyAgICAgICAgPj4+IFYoJzEuMi4wJykgPT0gVignMS4yJykKKyAgICAgICAgVHJ1ZQorICAgICAgICA+Pj4gVignMS4yLjAnKSA9PSBWKCcxLjIuMycpCisgICAgICAgIEZhbHNlCisgICAgICAgID4+PiBWKCcxLjIuMCcpICE9IFYoJzEuMi4zJykKKyAgICAgICAgVHJ1ZQorICAgICAgICA+Pj4gVignMS4yLjAnKSA8IFYoJzEuMi4zJykKKyAgICAgICAgVHJ1ZQorICAgICAgICA+Pj4gVignMS4yLjAnKSA8IFYoJzEuMi4wJykKKyAgICAgICAgRmFsc2UKKyAgICAgICAgPj4+IFYoJzEuMi4wJykgPD0gVignMS4yLjAnKQorICAgICAgICBUcnVlCisgICAgICAgID4+PiBWKCcxLjIuMCcpIDw9IFYoJzEuMi4zJykKKyAgICAgICAgVHJ1ZQorICAgICAgICA+Pj4gVignMS4yLjMnKSA8PSBWKCcxLjIuMCcpCisgICAgICAgIEZhbHNlCisgICAgICAgID4+PiBWKCcxLjIuMCcpID49IFYoJzEuMi4wJykKKyAgICAgICAgVHJ1ZQorICAgICAgICA+Pj4gVignMS4yLjMnKSA+PSBWKCcxLjIuMCcpCisgICAgICAgIFRydWUKKyAgICAgICAgPj4+IFYoJzEuMi4wJykgPj0gVignMS4yLjMnKQorICAgICAgICBGYWxzZQorICAgICAgICA+Pj4gVignMS4yLjByYzEnKSA+PSBWKCcxLjIuMCcpCisgICAgICAgIEZhbHNlCisgICAgICAgID4+PiBWKCcxLjAnKSA+IFYoJzEuMGIyJykKKyAgICAgICAgVHJ1ZQorICAgICAgICA+Pj4gVignMS4wJykgPiBWKCcxLjBjMicpCisgICAgICAgIFRydWUKKyAgICAgICAgPj4+IFYoJzEuMCcpID4gVignMS4wcmMyJykKKyAgICAgICAgVHJ1ZQorICAgICAgICA+Pj4gVignMS4wcmMyJykgPiBWKCcxLjByYzEnKQorICAgICAgICBUcnVlCisgICAgICAgID4+PiBWKCcxLjBjNCcpID4gVignMS4wYzEnKQorICAgICAgICBUcnVlCisgICAgICAgID4+PiAoVignMS4wJykgPiBWKCcxLjBjMicpID4gVignMS4wYzEnKSA+IFYoJzEuMGIyJykgPiBWKCcxLjBiMScpCisgICAgICAgIC4uLiAgPiBWKCcxLjBhMicpID4gVignMS4wYTEnKSkKKyAgICAgICAgVHJ1ZQorICAgICAgICA+Pj4gKFYoJzEuMC4wJykgPiBWKCcxLjAuMGMyJykgPiBWKCcxLjAuMGMxJykgPiBWKCcxLjAuMGIyJykgPiBWKCcxLjAuMGIxJykKKyAgICAgICAgLi4uICA+IFYoJzEuMC4wYTInKSA+IFYoJzEuMC4wYTEnKSkKKyAgICAgICAgVHJ1ZQorCisgICAgICAgID4+PiBWKCcxLjAnKSA8IFYoJzEuMC5wb3N0NDU2LmRldjYyMycpCisgICAgICAgIFRydWUKKworICAgICAgICA+Pj4gVignMS4wLnBvc3Q0NTYuZGV2NjIzJykgPCBWKCcxLjAucG9zdDQ1NicpICA8IFYoJzEuMC5wb3N0MTIzNCcpCisgICAgICAgIFRydWUKKworICAgICAgICA+Pj4gKFYoJzEuMGExJykKKyAgICAgICAgLi4uICA8IFYoJzEuMGEyLmRldjQ1NicpCisgICAgICAgIC4uLiAgPCBWKCcxLjBhMicpCisgICAgICAgIC4uLiAgPCBWKCcxLjBhMi4xLmRldjQ1NicpICAjIGUuZy4gbmVlZCB0byBkbyBhIHF1aWNrIHBvc3QgcmVsZWFzZSBvbiAxLjBhMgorICAgICAgICAuLi4gIDwgVignMS4wYTIuMScpCisgICAgICAgIC4uLiAgPCBWKCcxLjBiMS5kZXY0NTYnKQorICAgICAgICAuLi4gIDwgVignMS4wYjInKQorICAgICAgICAuLi4gIDwgVignMS4wYzEuZGV2NDU2JykKKyAgICAgICAgLi4uICA8IFYoJzEuMGMxJykKKyAgICAgICAgLi4uICA8IFYoJzEuMC5kZXY3JykKKyAgICAgICAgLi4uICA8IFYoJzEuMC5kZXYxOCcpCisgICAgICAgIC4uLiAgPCBWKCcxLjAuZGV2NDU2JykKKyAgICAgICAgLi4uICA8IFYoJzEuMC5kZXYxMjM0JykKKyAgICAgICAgLi4uICA8IFYoJzEuMHJjMScpCisgICAgICAgIC4uLiAgPCBWKCcxLjByYzInKQorICAgICAgICAuLi4gIDwgVignMS4wJykKKyAgICAgICAgLi4uICA8IFYoJzEuMC5wb3N0NDU2LmRldjYyMycpICAjIGRldmVsb3BtZW50IHZlcnNpb24gb2YgYSBwb3N0IHJlbGVhc2UKKyAgICAgICAgLi4uICA8IFYoJzEuMC5wb3N0NDU2JykpCisgICAgICAgIFRydWUKKyAgICAgICAgIiIiCisgICAgICAgIGRvY3Rlc3Quc2NyaXB0X2Zyb21fZXhhbXBsZXMoY29tcGFyaXNvbl9kb2N0ZXN0X3N0cmluZykKKworICAgIGRlZiB0ZXN0X3N1Z2dlc3Rfbm9ybWFsaXplZF92ZXJzaW9uKHNlbGYpOgorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnMS4wJyksICcxLjAnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJzEuMC1hbHBoYTEnKSwgJzEuMGExJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWdnZXN0KCcxLjBjMicpLCAnMS4wYzInKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJ3dhbGxhIHdhbGxhIHdhc2hpbmd0b24nKSwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWdnZXN0KCcyLjRjMScpLCAnMi40YzEnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJ3YxLjAnKSwgJzEuMCcpCisKKyAgICAgICAgIyBmcm9tIHNldHVwdG9vbHMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWdnZXN0KCcwLjRhMS5yMTAnKSwgJzAuNGExLnBvc3QxMCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnMC43YTFkZXYtcjY2NjA4JyksICcwLjdhMS5kZXY2NjYwOCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnMC42YTkuZGV2LXI0MTQ3NScpLCAnMC42YTkuZGV2NDE0NzUnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJzIuNHByZXZpZXcxJyksICcyLjRjMScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnMi40cHJlMScpLCAnMi40YzEnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJzIuMS1yYzInKSwgJzIuMWMyJykKKworICAgICAgICAjIGZyb20gcHlwaQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJzAuMWRldicpLCAnMC4xLmRldjAnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJzAuMS5kZXYnKSwgJzAuMS5kZXYwJykKKworICAgICAgICAjIHdlIHdhbnQgdG8gYmUgYWJsZSB0byBwYXJzZSBUd2lzdGVkCisgICAgICAgICMgZGV2ZWxvcG1lbnQgdmVyc2lvbnMgYXJlIGxpa2UgcG9zdCByZWxlYXNlcyBpbiBUd2lzdGVkCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VnZ2VzdCgnOS4wLjArcjIzNjMnKSwgJzkuMC4wLnBvc3QyMzYzJykKKworICAgICAgICAjIHByZS1yZWxlYXNlcyBhcmUgdXNpbmcgbWFya2VycyBsaWtlICJwcmUxIgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1Z2dlc3QoJzkuMC4wcHJlMScpLCAnOS4wLjBjMScpCisKKyAgICAgICAgIyB3ZSB3YW50IHRvIGJlIGFibGUgdG8gcGFyc2UgVGNsLVRLCisgICAgICAgICMgdGhleSB1cyAicDEiICJwMiIgZm9yIHBvc3QgcmVsZWFzZXMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWdnZXN0KCcxLjRwMScpLCAnMS40LnBvc3QxJykKKworICAgIGRlZiB0ZXN0X3ByZWRpY2F0ZShzZWxmKToKKyAgICAgICAgIyBWZXJzaW9uUHJlZGljYXRlIGtub3dzIGhvdyB0byBwYXJzZSBzdHVmZiBsaWtlOgorICAgICAgICAjCisgICAgICAgICMgICBQcm9qZWN0ICg+PXZlcnNpb24sIHZlcjIpCisKKyAgICAgICAgcHJlZGljYXRlcyA9ICgnem9wZS5pbnRlcmZhY2UgKD4zLjUuMCknLAorICAgICAgICAgICAgICAgICAgICAgICdBbm90aGVyUHJvamVjdCAoMy40KScsCisgICAgICAgICAgICAgICAgICAgICAgJ090aGVyUHJvamVjdCAoPDMuMCknLAorICAgICAgICAgICAgICAgICAgICAgICdOb1ZlcnNpb24nLAorICAgICAgICAgICAgICAgICAgICAgICdIZXkgKD49Mi41LDwyLjcpJykKKworICAgICAgICBmb3IgcHJlZGljYXRlIGluIHByZWRpY2F0ZXM6CisgICAgICAgICAgICBWZXJzaW9uUHJlZGljYXRlKHByZWRpY2F0ZSkKKworICAgICAgICBzZWxmLmFzc2VydFRydWUoVmVyc2lvblByZWRpY2F0ZSgnSGV5ICg+PTIuNSw8Mi43KScpLm1hdGNoKCcyLjYnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFZlcnNpb25QcmVkaWNhdGUoJ0hvJykubWF0Y2goJzIuNicpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKFZlcnNpb25QcmVkaWNhdGUoJ0hleSAoPj0yLjUsIT0yLjYsPDIuNyknKS5tYXRjaCgnMi42JykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShWZXJzaW9uUHJlZGljYXRlKCdIbyAoPDMuMCknKS5tYXRjaCgnMi42JykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShWZXJzaW9uUHJlZGljYXRlKCdIbyAoPDMuMCwhPTIuNSknKS5tYXRjaCgnMi42LjAnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShWZXJzaW9uUHJlZGljYXRlKCdIbyAoPDMuMCwhPTIuNiknKS5tYXRjaCgnMi42LjAnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFZlcnNpb25QcmVkaWNhdGUoJ0hvICgyLjUpJykubWF0Y2goJzIuNS40JykpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoVmVyc2lvblByZWRpY2F0ZSgnSG8gKCE9Mi41KScpLm1hdGNoKCcyLjUuMicpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoVmVyc2lvblByZWRpY2F0ZSgnSGV5ICg8PTIuNSknKS5tYXRjaCgnMi41LjknKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShWZXJzaW9uUHJlZGljYXRlKCdIZXkgKDw9Mi41KScpLm1hdGNoKCcyLjYuMCcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoVmVyc2lvblByZWRpY2F0ZSgnSGV5ICg+PTIuNSknKS5tYXRjaCgnMi41LjEnKSkKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBWZXJzaW9uUHJlZGljYXRlLCAnJykKKworICAgICAgICBzZWxmLmFzc2VydFRydWUoVmVyc2lvblByZWRpY2F0ZSgnSGV5IDIuNScpLm1hdGNoKCcyLjUuMScpKQorCisgICAgICAgICMgWFhYIG5lZWQgdG8gc2lsZW50IHRoZSBtaWNybyB2ZXJzaW9uIGluIHRoaXMgY2FzZQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKFZlcnNpb25QcmVkaWNhdGUoJ0hvICg8My4wLCE9Mi42KScpLm1hdGNoKCcyLjYuMycpKQorCisgICAgICAgICMgTWFrZSBzdXJlIGEgcHJlZGljYXRlIHRoYXQgZW5kcyB3aXRoIGEgbnVtYmVyIHdvcmtzCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShWZXJzaW9uUHJlZGljYXRlKCd2aXJ0dWFsZW52NSAoMS4wKScpLm1hdGNoKCcxLjAnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFZlcnNpb25QcmVkaWNhdGUoJ3ZpcnR1YWxlbnY1JykubWF0Y2goJzEuMCcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoVmVyc2lvblByZWRpY2F0ZSgndmk1dHdvJykubWF0Y2goJzEuMCcpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoVmVyc2lvblByZWRpY2F0ZSgnNXR3bycpLm1hdGNoKCcxLjAnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFZlcnNpb25QcmVkaWNhdGUoJ3ZpNXR3byAxLjAnKS5tYXRjaCgnMS4wJykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShWZXJzaW9uUHJlZGljYXRlKCc1dHdvIDEuMCcpLm1hdGNoKCcxLjAnKSkKKworICAgICAgICAjIHRlc3QgcmVwcgorICAgICAgICBmb3IgcHJlZGljYXRlIGluIHByZWRpY2F0ZXM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihWZXJzaW9uUHJlZGljYXRlKHByZWRpY2F0ZSkpLCBwcmVkaWNhdGUpCisKKyAgICBkZWYgdGVzdF9wcmVkaWNhdGVfbmFtZShzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoYXQgbmFtZXMgYXJlIHBhcnNlZCB0aGUgcmlnaHQgd2F5CisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnSGV5JywgVmVyc2lvblByZWRpY2F0ZSgnSGV5ICg8MS4xKScpLm5hbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0Zvby1CYXInLCBWZXJzaW9uUHJlZGljYXRlKCdGb28tQmFyICgxLjEpJykubmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnRm9vIEJhcicsIFZlcnNpb25QcmVkaWNhdGUoJ0ZvbyBCYXIgKDEuMSknKS5uYW1lKQorCisgICAgZGVmIHRlc3RfaXNfZmluYWwoc2VsZik6CisgICAgICAgICMgVmVyc2lvblByZWRpY2F0ZSBrbm93cyBpcyBhIGRpc3RyaWJ1dGlvbiBpcyBhIGZpbmFsIG9uZSBvciBub3QuCisgICAgICAgIGZpbmFsX3ZlcnNpb25zID0gKCcxLjAnLCAnMS4wLnBvc3Q0NTYnKQorICAgICAgICBvdGhlcl92ZXJzaW9ucyA9ICgnMS4wLmRldjEnLCAnMS4wYTInLCAnMS4wYzMnKQorCisgICAgICAgIGZvciB2ZXJzaW9uIGluIGZpbmFsX3ZlcnNpb25zOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFYodmVyc2lvbikuaXNfZmluYWwpCisgICAgICAgIGZvciB2ZXJzaW9uIGluIG90aGVyX3ZlcnNpb25zOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShWKHZlcnNpb24pLmlzX2ZpbmFsKQorCisKK2NsYXNzIFZlcnNpb25XaGl0ZUJveFRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X3BhcnNlX251bWRvdHMoc2VsZik6CisgICAgICAgICMgRm9yIGNvZGUgY292ZXJhZ2UgY29tcGxldGVuZXNzLCBhcyBwYWRfemVyb3NfbGVuZ3RoIGNhbid0IGJlIHNldCBvcgorICAgICAgICAjIGluZmx1ZW5jZWQgZnJvbSB0aGUgcHVibGljIGludGVyZmFjZQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgVignMS4wJykuX3BhcnNlX251bWRvdHMoJzEuMCcsICcxLjAnLCBwYWRfemVyb3NfbGVuZ3RoPTMpLAorICAgICAgICAgICAgWzEsIDAsIDBdKQorCisKK2RlZiB0ZXN0X3N1aXRlKCk6CisgICAgI1JFQURNRSA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pLCAnUkVBRE1FLnR4dCcpCisgICAgI3N1aXRlID0gW2RvY3Rlc3QuRG9jRmlsZVN1aXRlKFJFQURNRSksIHVuaXR0ZXN0Lm1ha2VTdWl0ZShWZXJzaW9uVGVzdENhc2UpXQorICAgIHN1aXRlID0gW3VuaXR0ZXN0Lm1ha2VTdWl0ZShWZXJzaW9uVGVzdENhc2UpLAorICAgICAgICAgICAgIHVuaXR0ZXN0Lm1ha2VTdWl0ZShWZXJzaW9uV2hpdGVCb3hUZXN0Q2FzZSldCisgICAgcmV0dXJuIHVuaXR0ZXN0LlRlc3RTdWl0ZShzdWl0ZSkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSJ0ZXN0X3N1aXRlIikKZGlmZiAtLWdpdCBhL0xpYi9wYWNrYWdpbmcvdXRpbC5weSBiL0xpYi9wYWNrYWdpbmcvdXRpbC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41YjY1MWIxCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3BhY2thZ2luZy91dGlsLnB5CkBAIC0wLDAgKzEsMTQ4MCBAQAorIiIiTWlzY2VsbGFuZW91cyB1dGlsaXR5IGZ1bmN0aW9ucy4iIiIKKworaW1wb3J0IG9zCitpbXBvcnQgcmUKK2ltcG9ydCBjc3YKK2ltcG9ydCBpbXAKK2ltcG9ydCBzeXMKK2ltcG9ydCBlcnJubworaW1wb3J0IGNvZGVjcworaW1wb3J0IHNodXRpbAoraW1wb3J0IHN0cmluZworaW1wb3J0IGhhc2hsaWIKK2ltcG9ydCBwb3NpeHBhdGgKK2ltcG9ydCBzdWJwcm9jZXNzCitpbXBvcnQgc3lzY29uZmlnCitmcm9tIGdsb2IgaW1wb3J0IGlnbG9iIGFzIHN0ZF9pZ2xvYgorZnJvbSBmbm1hdGNoIGltcG9ydCBmbm1hdGNoY2FzZQorZnJvbSBpbnNwZWN0IGltcG9ydCBnZXRzb3VyY2UKK2Zyb20gY29uZmlncGFyc2VyIGltcG9ydCBSYXdDb25maWdQYXJzZXIKKworZnJvbSBwYWNrYWdpbmcgaW1wb3J0IGxvZ2dlcgorZnJvbSBwYWNrYWdpbmcuZXJyb3JzIGltcG9ydCAoUGFja2FnaW5nUGxhdGZvcm1FcnJvciwgUGFja2FnaW5nRmlsZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUGFja2FnaW5nRXhlY0Vycm9yLCBJbnN0YWxsYXRpb25FeGNlcHRpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQYWNrYWdpbmdJbnRlcm5hbEVycm9yKQorCitfX2FsbF9fID0gWworICAgICMgZmlsZSBkZXBlbmRlbmNpZXMKKyAgICAnbmV3ZXInLCAnbmV3ZXJfZ3JvdXAnLAorICAgICMgaGVscGVycyBmb3IgY29tbWFuZHMgKGRyeS1ydW4gc3lzdGVtKQorICAgICdleGVjdXRlJywgJ3dyaXRlX2ZpbGUnLAorICAgICMgc3Bhd25pbmcgcHJvZ3JhbXMKKyAgICAnZmluZF9leGVjdXRhYmxlJywgJ3NwYXduJywKKyAgICAjIHBhdGggbWFuaXB1bGF0aW9uCisgICAgJ2NvbnZlcnRfcGF0aCcsICdjaGFuZ2Vfcm9vdCcsCisgICAgIyAydG8zIGNvbnZlcnNpb24KKyAgICAnTWl4aW4ydG8zJywgJ3J1bl8ydG8zJywKKyAgICAjIHBhY2thZ2luZyBjb21wYXRpYmlsaXR5IGhlbHBlcnMKKyAgICAnY2ZnX3RvX2FyZ3MnLCAnZ2VuZXJhdGVfc2V0dXBfcHknLAorICAgICdlZ2dpbmZvX3RvX2Rpc3RpbmZvJywKKyAgICAnZ2V0X2luc3RhbGxfbWV0aG9kJywKKyAgICAjIG1pc2MKKyAgICAnYXNrJywgJ2NoZWNrX2Vudmlyb24nLCAnZW5jb2RlX211bHRpcGFydCcsICdyZXNvbHZlX25hbWUnLAorICAgICMgcXVlcnlpbmcgZm9yIGluZm9ybWF0aW9uICBUT0RPIG1vdmUgdG8gc3lzY29uZmlnCisgICAgJ2dldF9jb21waWxlcl92ZXJzaW9ucycsICdnZXRfcGxhdGZvcm0nLCAnc2V0X3BsYXRmb3JtJywKKyAgICAjIGNvbmZpZ3VyYXRpb24gIFRPRE8gbW92ZSB0byBwYWNrYWdpbmcuY29uZmlnCisgICAgJ2dldF9weXBpcmNfcGF0aCcsICdyZWFkX3B5cGlyYycsICdnZW5lcmF0ZV9weXBpcmMnLAorICAgICdzdHJ0b2Jvb2wnLCAnc3BsaXRfbXVsdGlsaW5lJywKK10KKworX1BMQVRGT1JNID0gTm9uZQorX0RFRkFVTFRfSU5TVEFMTEVSID0gJ3BhY2thZ2luZycKKworCitkZWYgbmV3ZXIoc291cmNlLCB0YXJnZXQpOgorICAgICIiIlRlbGwgaWYgdGhlIHRhcmdldCBpcyBuZXdlciB0aGFuIHRoZSBzb3VyY2UuCisKKyAgICBSZXR1cm5zIHRydWUgaWYgJ3NvdXJjZScgZXhpc3RzIGFuZCBpcyBtb3JlIHJlY2VudGx5IG1vZGlmaWVkIHRoYW4KKyAgICAndGFyZ2V0Jywgb3IgaWYgJ3NvdXJjZScgZXhpc3RzIGFuZCAndGFyZ2V0JyBkb2Vzbid0LgorCisgICAgUmV0dXJucyBmYWxzZSBpZiBib3RoIGV4aXN0IGFuZCAndGFyZ2V0JyBpcyB0aGUgc2FtZSBhZ2Ugb3IgeW91bmdlcgorICAgIHRoYW4gJ3NvdXJjZScuIFJhaXNlIFBhY2thZ2luZ0ZpbGVFcnJvciBpZiAnc291cmNlJyBkb2VzIG5vdCBleGlzdC4KKworICAgIE5vdGUgdGhhdCB0aGlzIHRlc3QgaXMgbm90IHZlcnkgYWNjdXJhdGU6IGZpbGVzIGNyZWF0ZWQgaW4gdGhlIHNhbWUgc2Vjb25kCisgICAgd2lsbCBoYXZlIHRoZSBzYW1lICJhZ2UiLgorICAgICIiIgorICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhzb3VyY2UpOgorICAgICAgICByYWlzZSBQYWNrYWdpbmdGaWxlRXJyb3IoImZpbGUgJyVzJyBkb2VzIG5vdCBleGlzdCIgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5hYnNwYXRoKHNvdXJjZSkpCisgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHRhcmdldCk6CisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICByZXR1cm4gb3Muc3RhdChzb3VyY2UpLnN0X210aW1lID4gb3Muc3RhdCh0YXJnZXQpLnN0X210aW1lCisKKworZGVmIGdldF9wbGF0Zm9ybSgpOgorICAgICIiIlJldHVybiBhIHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIGN1cnJlbnQgcGxhdGZvcm0uCisKKyAgICBCeSBkZWZhdWx0LCB3aWxsIHJldHVybiB0aGUgdmFsdWUgcmV0dXJuZWQgYnkgc3lzY29uZmlnLmdldF9wbGF0Zm9ybSgpLAorICAgIGJ1dCBpdCBjYW4gYmUgY2hhbmdlZCBieSBjYWxsaW5nIHNldF9wbGF0Zm9ybSgpLgorICAgICIiIgorICAgIGdsb2JhbCBfUExBVEZPUk0KKyAgICBpZiBfUExBVEZPUk0gaXMgTm9uZToKKyAgICAgICAgX1BMQVRGT1JNID0gc3lzY29uZmlnLmdldF9wbGF0Zm9ybSgpCisgICAgcmV0dXJuIF9QTEFURk9STQorCisKK2RlZiBzZXRfcGxhdGZvcm0oaWRlbnRpZmllcik6CisgICAgIiIiU2V0IHRoZSBwbGF0Zm9ybSBzdHJpbmcgaWRlbnRpZmllciByZXR1cm5lZCBieSBnZXRfcGxhdGZvcm0oKS4KKworICAgIE5vdGUgdGhhdCB0aGlzIGNoYW5nZSBkb2Vzbid0IGltcGFjdCB0aGUgdmFsdWUgcmV0dXJuZWQgYnkKKyAgICBzeXNjb25maWcuZ2V0X3BsYXRmb3JtKCk7IGl0IGlzIGxvY2FsIHRvIHBhY2thZ2luZy4KKyAgICAiIiIKKyAgICBnbG9iYWwgX1BMQVRGT1JNCisgICAgX1BMQVRGT1JNID0gaWRlbnRpZmllcgorCisKK2RlZiBjb252ZXJ0X3BhdGgocGF0aG5hbWUpOgorICAgICIiIlJldHVybiAncGF0aG5hbWUnIGFzIGEgbmFtZSB0aGF0IHdpbGwgd29yayBvbiB0aGUgbmF0aXZlIGZpbGVzeXN0ZW0uCisKKyAgICBUaGUgcGF0aCBpcyBzcGxpdCBvbiAnLycgYW5kIHB1dCBiYWNrIHRvZ2V0aGVyIGFnYWluIHVzaW5nIHRoZSBjdXJyZW50CisgICAgZGlyZWN0b3J5IHNlcGFyYXRvci4gIE5lZWRlZCBiZWNhdXNlIGZpbGVuYW1lcyBpbiB0aGUgc2V0dXAgc2NyaXB0IGFyZQorICAgIGFsd2F5cyBzdXBwbGllZCBpbiBVbml4IHN0eWxlLCBhbmQgaGF2ZSB0byBiZSBjb252ZXJ0ZWQgdG8gdGhlIGxvY2FsCisgICAgY29udmVudGlvbiBiZWZvcmUgd2UgY2FuIGFjdHVhbGx5IHVzZSB0aGVtIGluIHRoZSBmaWxlc3lzdGVtLiAgUmFpc2VzCisgICAgVmFsdWVFcnJvciBvbiBub24tVW5peC1pc2ggc3lzdGVtcyBpZiAncGF0aG5hbWUnIGVpdGhlciBzdGFydHMgb3IKKyAgICBlbmRzIHdpdGggYSBzbGFzaC4KKyAgICAiIiIKKyAgICBpZiBvcy5zZXAgPT0gJy8nOgorICAgICAgICByZXR1cm4gcGF0aG5hbWUKKyAgICBpZiBub3QgcGF0aG5hbWU6CisgICAgICAgIHJldHVybiBwYXRobmFtZQorICAgIGlmIHBhdGhuYW1lWzBdID09ICcvJzoKKyAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigicGF0aCAnJXMnIGNhbm5vdCBiZSBhYnNvbHV0ZSIgJSBwYXRobmFtZSkKKyAgICBpZiBwYXRobmFtZVstMV0gPT0gJy8nOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJwYXRoICclcycgY2Fubm90IGVuZCB3aXRoICcvJyIgJSBwYXRobmFtZSkKKworICAgIHBhdGhzID0gcGF0aG5hbWUuc3BsaXQoJy8nKQorICAgIHdoaWxlIG9zLmN1cmRpciBpbiBwYXRoczoKKyAgICAgICAgcGF0aHMucmVtb3ZlKG9zLmN1cmRpcikKKyAgICBpZiBub3QgcGF0aHM6CisgICAgICAgIHJldHVybiBvcy5jdXJkaXIKKyAgICByZXR1cm4gb3MucGF0aC5qb2luKCpwYXRocykKKworCitkZWYgY2hhbmdlX3Jvb3QobmV3X3Jvb3QsIHBhdGhuYW1lKToKKyAgICAiIiJSZXR1cm4gJ3BhdGhuYW1lJyB3aXRoICduZXdfcm9vdCcgcHJlcGVuZGVkLgorCisgICAgSWYgJ3BhdGhuYW1lJyBpcyByZWxhdGl2ZSwgdGhpcyBpcyBlcXVpdmFsZW50IHRvCisgICAgb3MucGF0aC5qb2luKG5ld19yb290LHBhdGhuYW1lKS4gT3RoZXJ3aXNlLCBpdCByZXF1aXJlcyBtYWtpbmcgJ3BhdGhuYW1lJworICAgIHJlbGF0aXZlIGFuZCB0aGVuIGpvaW5pbmcgdGhlIHR3bywgd2hpY2ggaXMgdHJpY2t5IG9uIERPUy9XaW5kb3dzLgorICAgICIiIgorICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKKyAgICAgICAgaWYgbm90IG9zLnBhdGguaXNhYnMocGF0aG5hbWUpOgorICAgICAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbihuZXdfcm9vdCwgcGF0aG5hbWUpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKG5ld19yb290LCBwYXRobmFtZVsxOl0pCisKKyAgICBlbGlmIG9zLm5hbWUgPT0gJ250JzoKKyAgICAgICAgZHJpdmUsIHBhdGggPSBvcy5wYXRoLnNwbGl0ZHJpdmUocGF0aG5hbWUpCisgICAgICAgIGlmIHBhdGhbMF0gPT0gJ1xcJzoKKyAgICAgICAgICAgIHBhdGggPSBwYXRoWzE6XQorICAgICAgICByZXR1cm4gb3MucGF0aC5qb2luKG5ld19yb290LCBwYXRoKQorCisgICAgZWxpZiBvcy5uYW1lID09ICdvczInOgorICAgICAgICBkcml2ZSwgcGF0aCA9IG9zLnBhdGguc3BsaXRkcml2ZShwYXRobmFtZSkKKyAgICAgICAgaWYgcGF0aFswXSA9PSBvcy5zZXA6CisgICAgICAgICAgICBwYXRoID0gcGF0aFsxOl0KKyAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbihuZXdfcm9vdCwgcGF0aCkKKworICAgIGVsc2U6CisgICAgICAgIHJhaXNlIFBhY2thZ2luZ1BsYXRmb3JtRXJyb3IoIm5vdGhpbmcga25vd24gYWJvdXQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwbGF0Zm9ybSAnJXMnIiAlIG9zLm5hbWUpCisKK19lbnZpcm9uX2NoZWNrZWQgPSBGYWxzZQorCisKK2RlZiBjaGVja19lbnZpcm9uKCk6CisgICAgIiIiRW5zdXJlIHRoYXQgJ29zLmVudmlyb24nIGhhcyBhbGwgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlcyBuZWVkZWQuCisKKyAgICBXZSBndWFyYW50ZWUgdGhhdCB1c2VycyBjYW4gdXNlIGluIGNvbmZpZyBmaWxlcywgY29tbWFuZC1saW5lIG9wdGlvbnMsCisgICAgZXRjLiAgQ3VycmVudGx5IHRoaXMgaW5jbHVkZXM6CisgICAgICBIT01FIC0gdXNlcidzIGhvbWUgZGlyZWN0b3J5IChVbml4IG9ubHkpCisgICAgICBQTEFUIC0gZGVzY3JpcHRpb24gb2YgdGhlIGN1cnJlbnQgcGxhdGZvcm0sIGluY2x1ZGluZyBoYXJkd2FyZQorICAgICAgICAgICAgIGFuZCBPUyAoc2VlICdnZXRfcGxhdGZvcm0oKScpCisgICAgIiIiCisgICAgZ2xvYmFsIF9lbnZpcm9uX2NoZWNrZWQKKyAgICBpZiBfZW52aXJvbl9jaGVja2VkOgorICAgICAgICByZXR1cm4KKworICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JyBhbmQgJ0hPTUUnIG5vdCBpbiBvcy5lbnZpcm9uOgorICAgICAgICBpbXBvcnQgcHdkCisgICAgICAgIG9zLmVudmlyb25bJ0hPTUUnXSA9IHB3ZC5nZXRwd3VpZChvcy5nZXR1aWQoKSlbNV0KKworICAgIGlmICdQTEFUJyBub3QgaW4gb3MuZW52aXJvbjoKKyAgICAgICAgb3MuZW52aXJvblsnUExBVCddID0gc3lzY29uZmlnLmdldF9wbGF0Zm9ybSgpCisKKyAgICBfZW52aXJvbl9jaGVja2VkID0gVHJ1ZQorCisKKyMgTmVlZGVkIGJ5ICdzcGxpdF9xdW90ZWQoKScKK193b3JkY2hhcnNfcmUgPSBfc3F1b3RlX3JlID0gX2RxdW90ZV9yZSA9IE5vbmUKKworCitkZWYgX2luaXRfcmVnZXgoKToKKyAgICBnbG9iYWwgX3dvcmRjaGFyc19yZSwgX3NxdW90ZV9yZSwgX2RxdW90ZV9yZQorICAgIF93b3JkY2hhcnNfcmUgPSByZS5jb21waWxlKHInW15cXFwnXCIlcyBdKicgJSBzdHJpbmcud2hpdGVzcGFjZSkKKyAgICBfc3F1b3RlX3JlID0gcmUuY29tcGlsZShyIicoPzpbXidcXF18XFwuKSonIikKKyAgICBfZHF1b3RlX3JlID0gcmUuY29tcGlsZShyJyIoPzpbXiJcXF18XFwuKSoiJykKKworCisjIFRPRE8gcmVwbGFjZSB3aXRoIHNobGV4LnNwbGl0IGFmdGVyIHRlc3RpbmcKKworZGVmIHNwbGl0X3F1b3RlZChzKToKKyAgICAiIiJTcGxpdCBhIHN0cmluZyB1cCBhY2NvcmRpbmcgdG8gVW5peCBzaGVsbC1saWtlIHJ1bGVzIGZvciBxdW90ZXMgYW5kCisgICAgYmFja3NsYXNoZXMuCisKKyAgICBJbiBzaG9ydDogd29yZHMgYXJlIGRlbGltaXRlZCBieSBzcGFjZXMsIGFzIGxvbmcgYXMgdGhvc2UKKyAgICBzcGFjZXMgYXJlIG5vdCBlc2NhcGVkIGJ5IGEgYmFja3NsYXNoLCBvciBpbnNpZGUgYSBxdW90ZWQgc3RyaW5nLgorICAgIFNpbmdsZSBhbmQgZG91YmxlIHF1b3RlcyBhcmUgZXF1aXZhbGVudCwgYW5kIHRoZSBxdW90ZSBjaGFyYWN0ZXJzIGNhbgorICAgIGJlIGJhY2tzbGFzaC1lc2NhcGVkLiAgVGhlIGJhY2tzbGFzaCBpcyBzdHJpcHBlZCBmcm9tIGFueSB0d28tY2hhcmFjdGVyCisgICAgZXNjYXBlIHNlcXVlbmNlLCBsZWF2aW5nIG9ubHkgdGhlIGVzY2FwZWQgY2hhcmFjdGVyLiAgVGhlIHF1b3RlCisgICAgY2hhcmFjdGVycyBhcmUgc3RyaXBwZWQgZnJvbSBhbnkgcXVvdGVkIHN0cmluZy4gIFJldHVybnMgYSBsaXN0IG9mCisgICAgd29yZHMuCisgICAgIiIiCisgICAgIyBUaGlzIGlzIGEgbmljZSBhbGdvcml0aG0gZm9yIHNwbGl0dGluZyB1cCBhIHNpbmdsZSBzdHJpbmcsIHNpbmNlIGl0CisgICAgIyBkb2Vzbid0IHJlcXVpcmUgY2hhcmFjdGVyLWJ5LWNoYXJhY3RlciBleGFtaW5hdGlvbi4gIEl0IHdhcyBhIGxpdHRsZQorICAgICMgYml0IG9mIGEgYnJhaW4tYmVuZGVyIHRvIGdldCBpdCB3b3JraW5nIHJpZ2h0LCB0aG91Z2guLi4KKyAgICBpZiBfd29yZGNoYXJzX3JlIGlzIE5vbmU6CisgICAgICAgIF9pbml0X3JlZ2V4KCkKKworICAgIHMgPSBzLnN0cmlwKCkKKyAgICB3b3JkcyA9IFtdCisgICAgcG9zID0gMAorCisgICAgd2hpbGUgczoKKyAgICAgICAgbSA9IF93b3JkY2hhcnNfcmUubWF0Y2gocywgcG9zKQorICAgICAgICBlbmQgPSBtLmVuZCgpCisgICAgICAgIGlmIGVuZCA9PSBsZW4ocyk6CisgICAgICAgICAgICB3b3Jkcy5hcHBlbmQoc1s6ZW5kXSkKKyAgICAgICAgICAgIGJyZWFrCisKKyAgICAgICAgaWYgc1tlbmRdIGluIHN0cmluZy53aGl0ZXNwYWNlOiAgIyB1bmVzY2FwZWQsIHVucXVvdGVkIHdoaXRlc3BhY2U6IG5vdworICAgICAgICAgICAgd29yZHMuYXBwZW5kKHNbOmVuZF0pICAgICAgICAjIHdlIGRlZmluaXRlbHkgaGF2ZSBhIHdvcmQgZGVsaW1pdGVyCisgICAgICAgICAgICBzID0gc1tlbmQ6XS5sc3RyaXAoKQorICAgICAgICAgICAgcG9zID0gMAorCisgICAgICAgIGVsaWYgc1tlbmRdID09ICdcXCc6ICAgICAgICAgICAgICMgcHJlc2VydmUgd2hhdGV2ZXIgaXMgYmVpbmcgZXNjYXBlZDsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyB3aWxsIGJlY29tZSBwYXJ0IG9mIHRoZSBjdXJyZW50IHdvcmQKKyAgICAgICAgICAgIHMgPSBzWzplbmRdICsgc1tlbmQgKyAxOl0KKyAgICAgICAgICAgIHBvcyA9IGVuZCArIDEKKworICAgICAgICBlbHNlOgorICAgICAgICAgICAgaWYgc1tlbmRdID09ICInIjogICAgICAgICAgICAjIHNsdXJwIHNpbmdseS1xdW90ZWQgc3RyaW5nCisgICAgICAgICAgICAgICAgbSA9IF9zcXVvdGVfcmUubWF0Y2gocywgZW5kKQorICAgICAgICAgICAgZWxpZiBzW2VuZF0gPT0gJyInOiAgICAgICAgICAjIHNsdXJwIGRvdWJseS1xdW90ZWQgc3RyaW5nCisgICAgICAgICAgICAgICAgbSA9IF9kcXVvdGVfcmUubWF0Y2gocywgZW5kKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoInRoaXMgY2FuJ3QgaGFwcGVuICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIihiYWQgY2hhciAnJWMnKSIgJSBzW2VuZF0pCisKKyAgICAgICAgICAgIGlmIG0gaXMgTm9uZToKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJiYWQgc3RyaW5nIChtaXNtYXRjaGVkICVzIHF1b3Rlcz8pIiAlIHNbZW5kXSkKKworICAgICAgICAgICAgYmVnLCBlbmQgPSBtLnNwYW4oKQorICAgICAgICAgICAgcyA9IHNbOmJlZ10gKyBzW2JlZyArIDE6ZW5kIC0gMV0gKyBzW2VuZDpdCisgICAgICAgICAgICBwb3MgPSBtLmVuZCgpIC0gMgorCisgICAgICAgIGlmIHBvcyA+PSBsZW4ocyk6CisgICAgICAgICAgICB3b3Jkcy5hcHBlbmQocykKKyAgICAgICAgICAgIGJyZWFrCisKKyAgICByZXR1cm4gd29yZHMKKworCitkZWYgc3BsaXRfbXVsdGlsaW5lKHZhbHVlKToKKyAgICAiIiJTcGxpdCBhIG11bHRpbGluZSBzdHJpbmcgaW50byBhIGxpc3QsIGV4Y2x1ZGluZyBibGFuayBsaW5lcy4iIiIKKworICAgIHJldHVybiBbZWxlbWVudCBmb3IgZWxlbWVudCBpbgorICAgICAgICAgICAgKGxpbmUuc3RyaXAoKSBmb3IgbGluZSBpbiB2YWx1ZS5zcGxpdCgnXG4nKSkKKyAgICAgICAgICAgIGlmIGVsZW1lbnRdCisKKworZGVmIGV4ZWN1dGUoZnVuYywgYXJncywgbXNnPU5vbmUsIGRyeV9ydW49RmFsc2UpOgorICAgICIiIlBlcmZvcm0gc29tZSBhY3Rpb24gdGhhdCBhZmZlY3RzIHRoZSBvdXRzaWRlIHdvcmxkLgorCisgICAgU29tZSBhY3Rpb25zIChlLmcuIHdyaXRpbmcgdG8gdGhlIGZpbGVzeXN0ZW0pIGFyZSBzcGVjaWFsIGJlY2F1c2UKKyAgICB0aGV5IGFyZSBkaXNhYmxlZCBieSB0aGUgJ2RyeV9ydW4nIGZsYWcuICBUaGlzIG1ldGhvZCB0YWtlcyBjYXJlIG9mIGFsbAorICAgIHRoYXQgYnVyZWF1Y3JhY3kgZm9yIHlvdTsgYWxsIHlvdSBoYXZlIHRvIGRvIGlzIHN1cHBseSB0aGUKKyAgICBmdW5jdGlvbiB0byBjYWxsIGFuZCBhbiBhcmd1bWVudCB0dXBsZSBmb3IgaXQgKHRvIGVtYm9keSB0aGUKKyAgICAiZXh0ZXJuYWwgYWN0aW9uIiBiZWluZyBwZXJmb3JtZWQpLCBhbmQgYW4gb3B0aW9uYWwgbWVzc2FnZSB0bworICAgIHByaW50LgorICAgICIiIgorICAgIGlmIG1zZyBpcyBOb25lOgorICAgICAgICBtc2cgPSAiJXMlciIgJSAoZnVuYy5fX25hbWVfXywgYXJncykKKyAgICAgICAgaWYgbXNnWy0yOl0gPT0gJywpJzogICAgICAgICMgY29ycmVjdCBmb3Igc2luZ2xldG9uIHR1cGxlCisgICAgICAgICAgICBtc2cgPSBtc2dbMDotMl0gKyAnKScKKworICAgIGxvZ2dlci5pbmZvKG1zZykKKyAgICBpZiBub3QgZHJ5X3J1bjoKKyAgICAgICAgZnVuYygqYXJncykKKworCitkZWYgc3RydG9ib29sKHZhbCk6CisgICAgIiIiQ29udmVydCBhIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0cnV0aCB0byBhIGJvb2xlYW4uCisKKyAgICBUcnVlIHZhbHVlcyBhcmUgJ3knLCAneWVzJywgJ3QnLCAndHJ1ZScsICdvbicsIGFuZCAnMSc7IGZhbHNlIHZhbHVlcworICAgIGFyZSAnbicsICdubycsICdmJywgJ2ZhbHNlJywgJ29mZicsIGFuZCAnMCcuICBSYWlzZXMgVmFsdWVFcnJvciBpZgorICAgICd2YWwnIGlzIGFueXRoaW5nIGVsc2UuCisgICAgIiIiCisgICAgdmFsID0gdmFsLmxvd2VyKCkKKyAgICBpZiB2YWwgaW4gKCd5JywgJ3llcycsICd0JywgJ3RydWUnLCAnb24nLCAnMScpOgorICAgICAgICByZXR1cm4gVHJ1ZQorICAgIGVsaWYgdmFsIGluICgnbicsICdubycsICdmJywgJ2ZhbHNlJywgJ29mZicsICcwJyk6CisgICAgICAgIHJldHVybiBGYWxzZQorICAgIGVsc2U6CisgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoImludmFsaWQgdHJ1dGggdmFsdWUgJXIiICUgKHZhbCwpKQorCisKK2RlZiBieXRlX2NvbXBpbGUocHlfZmlsZXMsIG9wdGltaXplPTAsIGZvcmNlPUZhbHNlLCBwcmVmaXg9Tm9uZSwKKyAgICAgICAgICAgICAgICAgYmFzZV9kaXI9Tm9uZSwgZHJ5X3J1bj1GYWxzZSwgZGlyZWN0PU5vbmUpOgorICAgICIiIkJ5dGUtY29tcGlsZSBhIGNvbGxlY3Rpb24gb2YgUHl0aG9uIHNvdXJjZSBmaWxlcyB0byBlaXRoZXIgLnB5YworICAgIG9yIC5weW8gZmlsZXMgaW4gYSBfX3B5Y2FjaGVfXyBzdWJkaXJlY3RvcnkuCisKKyAgICAncHlfZmlsZXMnIGlzIGEgbGlzdCBvZiBmaWxlcyB0byBjb21waWxlOyBhbnkgZmlsZXMgdGhhdCBkb24ndCBlbmQgaW4KKyAgICAiLnB5IiBhcmUgc2lsZW50bHkgc2tpcHBlZC4gJ29wdGltaXplJyBtdXN0IGJlIG9uZSBvZiB0aGUgZm9sbG93aW5nOgorICAgICAgMCAtIGRvbid0IG9wdGltaXplIChnZW5lcmF0ZSAucHljKQorICAgICAgMSAtIG5vcm1hbCBvcHRpbWl6YXRpb24gKGxpa2UgInB5dGhvbiAtTyIpCisgICAgICAyIC0gZXh0cmEgb3B0aW1pemF0aW9uIChsaWtlICJweXRob24gLU9PIikKKyAgICBUaGlzIGZ1bmN0aW9uIGlzIGluZGVwZW5kZW50IGZyb20gdGhlIHJ1bm5pbmcgUHl0aG9uJ3MgLU8gb3IgLUIgb3B0aW9uczsKKyAgICBpdCBpcyBmdWxseSBjb250cm9sbGVkIGJ5IHRoZSBwYXJhbWV0ZXJzIHBhc3NlZCBpbi4KKworICAgIElmICdmb3JjZScgaXMgdHJ1ZSwgYWxsIGZpbGVzIGFyZSByZWNvbXBpbGVkIHJlZ2FyZGxlc3Mgb2YKKyAgICB0aW1lc3RhbXBzLgorCisgICAgVGhlIHNvdXJjZSBmaWxlbmFtZSBlbmNvZGVkIGluIGVhY2ggYnl0ZWNvZGUgZmlsZSBkZWZhdWx0cyB0byB0aGUKKyAgICBmaWxlbmFtZXMgbGlzdGVkIGluICdweV9maWxlcyc7IHlvdSBjYW4gbW9kaWZ5IHRoZXNlIHdpdGggJ3ByZWZpeCcgYW5kCisgICAgJ2Jhc2VkaXInLiAgJ3ByZWZpeCcgaXMgYSBzdHJpbmcgdGhhdCB3aWxsIGJlIHN0cmlwcGVkIG9mZiBvZiBlYWNoCisgICAgc291cmNlIGZpbGVuYW1lLCBhbmQgJ2Jhc2VfZGlyJyBpcyBhIGRpcmVjdG9yeSBuYW1lIHRoYXQgd2lsbCBiZQorICAgIHByZXBlbmRlZCAoYWZ0ZXIgJ3ByZWZpeCcgaXMgc3RyaXBwZWQpLiAgWW91IGNhbiBzdXBwbHkgZWl0aGVyIG9yIGJvdGgKKyAgICAob3IgbmVpdGhlcikgb2YgJ3ByZWZpeCcgYW5kICdiYXNlX2RpcicsIGFzIHlvdSB3aXNoLgorCisgICAgSWYgJ2RyeV9ydW4nIGlzIHRydWUsIGRvZXNuJ3QgYWN0dWFsbHkgZG8gYW55dGhpbmcgdGhhdCB3b3VsZAorICAgIGFmZmVjdCB0aGUgZmlsZXN5c3RlbS4KKworICAgIEJ5dGUtY29tcGlsYXRpb24gaXMgZWl0aGVyIGRvbmUgZGlyZWN0bHkgaW4gdGhpcyBpbnRlcnByZXRlciBwcm9jZXNzCisgICAgd2l0aCB0aGUgc3RhbmRhcmQgcHlfY29tcGlsZSBtb2R1bGUsIG9yIGluZGlyZWN0bHkgYnkgd3JpdGluZyBhCisgICAgdGVtcG9yYXJ5IHNjcmlwdCBhbmQgZXhlY3V0aW5nIGl0LiAgTm9ybWFsbHksIHlvdSBzaG91bGQgbGV0CisgICAgJ2J5dGVfY29tcGlsZSgpJyBmaWd1cmUgb3V0IHRvIHVzZSBkaXJlY3QgY29tcGlsYXRpb24gb3Igbm90IChzZWUKKyAgICB0aGUgc291cmNlIGZvciBkZXRhaWxzKS4gIFRoZSAnZGlyZWN0JyBmbGFnIGlzIHVzZWQgYnkgdGhlIHNjcmlwdAorICAgIGdlbmVyYXRlZCBpbiBpbmRpcmVjdCBtb2RlOyB1bmxlc3MgeW91IGtub3cgd2hhdCB5b3UncmUgZG9pbmcsIGxlYXZlCisgICAgaXQgc2V0IHRvIE5vbmUuCisgICAgIiIiCisgICAgIyBGSVhNRSB1c2UgY29tcGlsZWFsbCArIHJlbW92ZSBkaXJlY3QvaW5kaXJlY3Qgc2hlbmFuaWdhbnMKKworICAgICMgRmlyc3QsIGlmIHRoZSBjYWxsZXIgZGlkbid0IGZvcmNlIHVzIGludG8gZGlyZWN0IG9yIGluZGlyZWN0IG1vZGUsCisgICAgIyBmaWd1cmUgb3V0IHdoaWNoIG1vZGUgd2Ugc2hvdWxkIGJlIGluLiAgV2UgdGFrZSBhIGNvbnNlcnZhdGl2ZQorICAgICMgYXBwcm9hY2g6IGNob29zZSBkaXJlY3QgbW9kZSAqb25seSogaWYgdGhlIGN1cnJlbnQgaW50ZXJwcmV0ZXIgaXMKKyAgICAjIGluIGRlYnVnIG1vZGUgYW5kIG9wdGltaXplIGlzIDAuICBJZiB3ZSdyZSBub3QgaW4gZGVidWcgbW9kZSAoLU8KKyAgICAjIG9yIC1PTyksIHdlIGRvbid0IGtub3cgd2hpY2ggbGV2ZWwgb2Ygb3B0aW1pemF0aW9uIHRoaXMKKyAgICAjIGludGVycHJldGVyIGlzIHJ1bm5pbmcgd2l0aCwgc28gd2UgY2FuJ3QgZG8gZGlyZWN0CisgICAgIyBieXRlLWNvbXBpbGF0aW9uIGFuZCBiZSBjZXJ0YWluIHRoYXQgaXQncyB0aGUgcmlnaHQgdGhpbmcuICBUaHVzLAorICAgICMgYWx3YXlzIGNvbXBpbGUgaW5kaXJlY3RseSBpZiB0aGUgY3VycmVudCBpbnRlcnByZXRlciBpcyBpbiBlaXRoZXIKKyAgICAjIG9wdGltaXplIG1vZGUsIG9yIGlmIGVpdGhlciBvcHRpbWl6YXRpb24gbGV2ZWwgd2FzIHJlcXVlc3RlZCBieQorICAgICMgdGhlIGNhbGxlci4KKyAgICBpZiBkaXJlY3QgaXMgTm9uZToKKyAgICAgICAgZGlyZWN0ID0gKF9fZGVidWdfXyBhbmQgb3B0aW1pemUgPT0gMCkKKworICAgICMgIkluZGlyZWN0IiBieXRlLWNvbXBpbGF0aW9uOiB3cml0ZSBhIHRlbXBvcmFyeSBzY3JpcHQgYW5kIHRoZW4KKyAgICAjIHJ1biBpdCB3aXRoIHRoZSBhcHByb3ByaWF0ZSBmbGFncy4KKyAgICBpZiBub3QgZGlyZWN0OgorICAgICAgICBmcm9tIHRlbXBmaWxlIGltcG9ydCBta3N0ZW1wCisgICAgICAgICMgWFhYIHVzZSBzb21ldGhpbmcgYmV0dGVyIHRoYW4gbWtzdGVtcAorICAgICAgICBzY3JpcHRfZmQsIHNjcmlwdF9uYW1lID0gbWtzdGVtcCgiLnB5IikKKyAgICAgICAgb3MuY2xvc2Uoc2NyaXB0X2ZkKQorICAgICAgICBzY3JpcHRfZmQgPSBOb25lCisgICAgICAgIGxvZ2dlci5pbmZvKCJ3cml0aW5nIGJ5dGUtY29tcGlsYXRpb24gc2NyaXB0ICclcyciLCBzY3JpcHRfbmFtZSkKKyAgICAgICAgaWYgbm90IGRyeV9ydW46CisgICAgICAgICAgICBpZiBzY3JpcHRfZmQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgc2NyaXB0ID0gb3MuZmRvcGVuKHNjcmlwdF9mZCwgInciLCBlbmNvZGluZz0ndXRmLTgnKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzY3JpcHQgPSBvcGVuKHNjcmlwdF9uYW1lLCAidyIsIGVuY29kaW5nPSd1dGYtOCcpCisKKyAgICAgICAgICAgIHdpdGggc2NyaXB0OgorICAgICAgICAgICAgICAgIHNjcmlwdC53cml0ZSgiIiJcCitmcm9tIHBhY2thZ2luZy51dGlsIGltcG9ydCBieXRlX2NvbXBpbGUKK2ZpbGVzID0gWworIiIiKQorCisgICAgICAgICAgICAgICAgIyBYWFggd291bGQgYmUgbmljZSB0byB3cml0ZSBhYnNvbHV0ZSBmaWxlbmFtZXMsIGp1c3QgZm9yCisgICAgICAgICAgICAgICAgIyBzYWZldHkncyBzYWtlIChzY3JpcHQgc2hvdWxkIGJlIG1vcmUgcm9idXN0IGluIHRoZSBmYWNlIG9mCisgICAgICAgICAgICAgICAgIyBjaGRpcidpbmcgYmVmb3JlIHJ1bm5pbmcgaXQpLiAgQnV0IHRoaXMgcmVxdWlyZXMgYWJzcGF0aCdpbmcKKyAgICAgICAgICAgICAgICAjICdwcmVmaXgnIGFzIHdlbGwsIGFuZCB0aGF0IGJyZWFrcyB0aGUgaGFjayBpbiBidWlsZF9saWIncworICAgICAgICAgICAgICAgICMgJ2J5dGVfY29tcGlsZSgpJyBtZXRob2QgdGhhdCBjYXJlZnVsbHkgdGFja3Mgb24gYSB0cmFpbGluZworICAgICAgICAgICAgICAgICMgc2xhc2ggKG9zLnNlcCByZWFsbHkpIHRvIG1ha2Ugc3VyZSB0aGUgcHJlZml4IGhlcmUgaXMgImp1c3QKKyAgICAgICAgICAgICAgICAjIHJpZ2h0Ii4gIFRoaXMgd2hvbGUgcHJlZml4IGJ1c2luZXNzIGlzIHJhdGhlciBkZWxpY2F0ZSAtLSB0aGUKKyAgICAgICAgICAgICAgICAjIHByb2JsZW0gaXMgdGhhdCBpdCdzIHJlYWxseSBhIGRpcmVjdG9yeSwgYnV0IEknbSB0cmVhdGluZyBpdAorICAgICAgICAgICAgICAgICMgYXMgYSBkdW1iIHN0cmluZywgc28gdHJhaWxpbmcgc2xhc2hlcyBhbmQgc28gZm9ydGggbWF0dGVyLgorCisgICAgICAgICAgICAgICAgI3B5X2ZpbGVzID0gbWFwKG9zLnBhdGguYWJzcGF0aCwgcHlfZmlsZXMpCisgICAgICAgICAgICAgICAgI2lmIHByZWZpeDoKKyAgICAgICAgICAgICAgICAjICAgIHByZWZpeCA9IG9zLnBhdGguYWJzcGF0aChwcmVmaXgpCisKKyAgICAgICAgICAgICAgICBzY3JpcHQud3JpdGUoIixcbiIuam9pbihtYXAocmVwciwgcHlfZmlsZXMpKSArICJdXG4iKQorICAgICAgICAgICAgICAgIHNjcmlwdC53cml0ZSgiIiIKK2J5dGVfY29tcGlsZShmaWxlcywgb3B0aW1pemU9JXIsIGZvcmNlPSVyLAorICAgICAgICAgICAgIHByZWZpeD0lciwgYmFzZV9kaXI9JXIsCisgICAgICAgICAgICAgZHJ5X3J1bj1GYWxzZSwKKyAgICAgICAgICAgICBkaXJlY3Q9VHJ1ZSkKKyIiIiAlIChvcHRpbWl6ZSwgZm9yY2UsIHByZWZpeCwgYmFzZV9kaXIpKQorCisgICAgICAgIGNtZCA9IFtzeXMuZXhlY3V0YWJsZSwgc2NyaXB0X25hbWVdCisKKyAgICAgICAgZW52ID0gb3MuZW52aXJvbi5jb3B5KCkKKyAgICAgICAgZW52WydQWVRIT05QQVRIJ10gPSBvcy5wYXRoLnBhdGhzZXAuam9pbihzeXMucGF0aCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc3Bhd24oY21kLCBlbnY9ZW52KQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZXhlY3V0ZShvcy5yZW1vdmUsIChzY3JpcHRfbmFtZSwpLCAicmVtb3ZpbmcgJXMiICUgc2NyaXB0X25hbWUsCisgICAgICAgICAgICAgICAgICAgIGRyeV9ydW49ZHJ5X3J1bikKKworICAgICMgIkRpcmVjdCIgYnl0ZS1jb21waWxhdGlvbjogdXNlIHRoZSBweV9jb21waWxlIG1vZHVsZSB0byBjb21waWxlCisgICAgIyByaWdodCBoZXJlLCByaWdodCBub3cuICBOb3RlIHRoYXQgdGhlIHNjcmlwdCBnZW5lcmF0ZWQgaW4gaW5kaXJlY3QKKyAgICAjIG1vZGUgc2ltcGx5IGNhbGxzICdieXRlX2NvbXBpbGUoKScgaW4gZGlyZWN0IG1vZGUsIGEgd2VpcmQgc29ydCBvZgorICAgICMgY3Jvc3MtcHJvY2VzcyByZWN1cnNpb24uICBIZXksIGl0IHdvcmtzIQorICAgIGVsc2U6CisgICAgICAgIGZyb20gcHlfY29tcGlsZSBpbXBvcnQgY29tcGlsZQorCisgICAgICAgIGZvciBmaWxlIGluIHB5X2ZpbGVzOgorICAgICAgICAgICAgaWYgZmlsZVstMzpdICE9ICIucHkiOgorICAgICAgICAgICAgICAgICMgVGhpcyBsZXRzIHVzIGJlIGxhenkgYW5kIG5vdCBmaWx0ZXIgZmlsZW5hbWVzIGluCisgICAgICAgICAgICAgICAgIyB0aGUgImluc3RhbGxfbGliIiBjb21tYW5kLgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgICAgICMgVGVybWlub2xvZ3kgZnJvbSB0aGUgcHlfY29tcGlsZSBtb2R1bGU6CisgICAgICAgICAgICAjICAgY2ZpbGUgLSBieXRlLWNvbXBpbGVkIGZpbGUKKyAgICAgICAgICAgICMgICBkZmlsZSAtIHB1cnBvcnRlZCBzb3VyY2UgZmlsZW5hbWUgKHNhbWUgYXMgJ2ZpbGUnIGJ5IGRlZmF1bHQpCisgICAgICAgICAgICAjIFRoZSBzZWNvbmQgYXJndW1lbnQgdG8gY2FjaGVfZnJvbV9zb3VyY2UgZm9yY2VzIHRoZSBleHRlbnNpb24gdG8KKyAgICAgICAgICAgICMgYmUgLnB5YyAoaWYgdHJ1ZSkgb3IgLnB5byAoaWYgZmFsc2UpOyB3aXRob3V0IGl0LCB0aGUgZXh0ZW5zaW9uCisgICAgICAgICAgICAjIHdvdWxkIGRlcGVuZCBvbiB0aGUgY2FsbGluZyBQeXRob24ncyAtTyBvcHRpb24KKyAgICAgICAgICAgIGNmaWxlID0gaW1wLmNhY2hlX2Zyb21fc291cmNlKGZpbGUsIG5vdCBvcHRpbWl6ZSkKKyAgICAgICAgICAgIGRmaWxlID0gZmlsZQorCisgICAgICAgICAgICBpZiBwcmVmaXg6CisgICAgICAgICAgICAgICAgaWYgZmlsZVs6bGVuKHByZWZpeCldICE9IHByZWZpeDoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiaW52YWxpZCBwcmVmaXg6IGZpbGVuYW1lICVyIGRvZXNuJ3QgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdGFydCB3aXRoICVyIiAlIChmaWxlLCBwcmVmaXgpKQorICAgICAgICAgICAgICAgIGRmaWxlID0gZGZpbGVbbGVuKHByZWZpeCk6XQorICAgICAgICAgICAgaWYgYmFzZV9kaXI6CisgICAgICAgICAgICAgICAgZGZpbGUgPSBvcy5wYXRoLmpvaW4oYmFzZV9kaXIsIGRmaWxlKQorCisgICAgICAgICAgICBjZmlsZV9iYXNlID0gb3MucGF0aC5iYXNlbmFtZShjZmlsZSkKKyAgICAgICAgICAgIGlmIGRpcmVjdDoKKyAgICAgICAgICAgICAgICBpZiBmb3JjZSBvciBuZXdlcihmaWxlLCBjZmlsZSk6CisgICAgICAgICAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJieXRlLWNvbXBpbGluZyAlcyB0byAlcyIsIGZpbGUsIGNmaWxlX2Jhc2UpCisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZShmaWxlLCBjZmlsZSwgZGZpbGUpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCJza2lwcGluZyBieXRlLWNvbXBpbGF0aW9uIG9mICVzIHRvICVzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGUsIGNmaWxlX2Jhc2UpCisKKworX1JFX1ZFUlNJT04gPSByZS5jb21waWxlKCcoXGQrXC5cZCsoXC5cZCspKiknKQorX01BQ19PU19YX0xEX1ZFUlNJT04gPSByZS5jb21waWxlKCdeQFwoI1wpUFJPR1JBTTpsZCAgJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdQUk9KRUNUOmxkNjQtKChcZCspKFwuXGQrKSopJykKKworCitkZWYgX2ZpbmRfbGRfdmVyc2lvbigpOgorICAgICIiIkZpbmQgdGhlIGxkIHZlcnNpb24uICBUaGUgdmVyc2lvbiBzY2hlbWUgZGlmZmVycyB1bmRlciBNYWMgT1MgWC4iIiIKKyAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6CisgICAgICAgIHJldHVybiBfZmluZF9leGVfdmVyc2lvbignbGQgLXYnLCBfTUFDX09TX1hfTERfVkVSU0lPTikKKyAgICBlbHNlOgorICAgICAgICByZXR1cm4gX2ZpbmRfZXhlX3ZlcnNpb24oJ2xkIC12JykKKworCitkZWYgX2ZpbmRfZXhlX3ZlcnNpb24oY21kLCBwYXR0ZXJuPV9SRV9WRVJTSU9OKToKKyAgICAiIiJGaW5kIHRoZSB2ZXJzaW9uIG9mIGFuIGV4ZWN1dGFibGUgYnkgcnVubmluZyBgY21kYCBpbiB0aGUgc2hlbGwuCisKKyAgICBgcGF0dGVybmAgaXMgYSBjb21waWxlZCByZWd1bGFyIGV4cHJlc3Npb24uICBJZiBub3QgcHJvdmlkZWQsIGRlZmF1bHRzCisgICAgdG8gX1JFX1ZFUlNJT04uIElmIHRoZSBjb21tYW5kIGlzIG5vdCBmb3VuZCwgb3IgdGhlIG91dHB1dCBkb2VzIG5vdAorICAgIG1hdGNoIHRoZSBtYXR0ZXJuLCByZXR1cm5zIE5vbmUuCisgICAgIiIiCisgICAgZnJvbSBzdWJwcm9jZXNzIGltcG9ydCBQb3BlbiwgUElQRQorICAgIGV4ZWN1dGFibGUgPSBjbWQuc3BsaXQoKVswXQorICAgIGlmIGZpbmRfZXhlY3V0YWJsZShleGVjdXRhYmxlKSBpcyBOb25lOgorICAgICAgICByZXR1cm4gTm9uZQorICAgIHBpcGUgPSBQb3BlbihjbWQsIHNoZWxsPVRydWUsIHN0ZG91dD1QSVBFLCBzdGRlcnI9UElQRSkKKyAgICB0cnk6CisgICAgICAgIHN0ZG91dCwgc3RkZXJyID0gcGlwZS5jb21tdW5pY2F0ZSgpCisgICAgZmluYWxseToKKyAgICAgICAgcGlwZS5zdGRvdXQuY2xvc2UoKQorICAgICAgICBwaXBlLnN0ZGVyci5jbG9zZSgpCisgICAgIyBzb21lIGNvbW1hbmRzIGxpa2UgbGQgdW5kZXIgTWFjT1MgWCwgd2lsbCBnaXZlIHRoZQorICAgICMgb3V0cHV0IGluIHRoZSBzdGRlcnIsIHJhdGhlciB0aGFuIHN0ZG91dC4KKyAgICBpZiBzdGRvdXQgIT0gJyc6CisgICAgICAgIG91dF9zdHJpbmcgPSBzdGRvdXQKKyAgICBlbHNlOgorICAgICAgICBvdXRfc3RyaW5nID0gc3RkZXJyCisKKyAgICByZXN1bHQgPSBwYXR0ZXJuLnNlYXJjaChvdXRfc3RyaW5nKQorICAgIGlmIHJlc3VsdCBpcyBOb25lOgorICAgICAgICByZXR1cm4gTm9uZQorICAgIHJldHVybiByZXN1bHQuZ3JvdXAoMSkKKworCitkZWYgZ2V0X2NvbXBpbGVyX3ZlcnNpb25zKCk6CisgICAgIiIiUmV0dXJuIGEgdHVwbGUgcHJvdmlkaW5nIHRoZSB2ZXJzaW9ucyBvZiBnY2MsIGxkIGFuZCBkbGx3cmFwCisKKyAgICBGb3IgZWFjaCBjb21tYW5kLCBpZiBhIGNvbW1hbmQgaXMgbm90IGZvdW5kLCBOb25lIGlzIHJldHVybmVkLgorICAgIE90aGVyd2lzZSBhIHN0cmluZyB3aXRoIHRoZSB2ZXJzaW9uIGlzIHJldHVybmVkLgorICAgICIiIgorICAgIGdjYyA9IF9maW5kX2V4ZV92ZXJzaW9uKCdnY2MgLWR1bXB2ZXJzaW9uJykKKyAgICBsZCA9IF9maW5kX2xkX3ZlcnNpb24oKQorICAgIGRsbHdyYXAgPSBfZmluZF9leGVfdmVyc2lvbignZGxsd3JhcCAtLXZlcnNpb24nKQorICAgIHJldHVybiBnY2MsIGxkLCBkbGx3cmFwCisKKworZGVmIG5ld2VyX2dyb3VwKHNvdXJjZXMsIHRhcmdldCwgbWlzc2luZz0nZXJyb3InKToKKyAgICAiIiJSZXR1cm4gdHJ1ZSBpZiAndGFyZ2V0JyBpcyBvdXQtb2YtZGF0ZSB3aXRoIHJlc3BlY3QgdG8gYW55IGZpbGUKKyAgICBsaXN0ZWQgaW4gJ3NvdXJjZXMnLgorCisgICAgSW4gb3RoZXIgd29yZHMsIGlmICd0YXJnZXQnIGV4aXN0cyBhbmQgaXMgbmV3ZXIKKyAgICB0aGFuIGV2ZXJ5IGZpbGUgaW4gJ3NvdXJjZXMnLCByZXR1cm4gZmFsc2U7IG90aGVyd2lzZSByZXR1cm4gdHJ1ZS4KKyAgICAnbWlzc2luZycgY29udHJvbHMgd2hhdCB3ZSBkbyB3aGVuIGEgc291cmNlIGZpbGUgaXMgbWlzc2luZzsgdGhlCisgICAgZGVmYXVsdCAoImVycm9yIikgaXMgdG8gYmxvdyB1cCB3aXRoIGFuIE9TRXJyb3IgZnJvbSBpbnNpZGUgJ3N0YXQoKSc7CisgICAgaWYgaXQgaXMgImlnbm9yZSIsIHdlIHNpbGVudGx5IGRyb3AgYW55IG1pc3Npbmcgc291cmNlIGZpbGVzOyBpZiBpdCBpcworICAgICJuZXdlciIsIGFueSBtaXNzaW5nIHNvdXJjZSBmaWxlcyBtYWtlIHVzIGFzc3VtZSB0aGF0ICd0YXJnZXQnIGlzCisgICAgb3V0LW9mLWRhdGUgKHRoaXMgaXMgaGFuZHkgaW4gImRyeS1ydW4iIG1vZGU6IGl0J2xsIG1ha2UgeW91IHByZXRlbmQgdG8KKyAgICBjYXJyeSBvdXQgY29tbWFuZHMgdGhhdCB3b3VsZG4ndCB3b3JrIGJlY2F1c2UgaW5wdXRzIGFyZSBtaXNzaW5nLCBidXQKKyAgICB0aGF0IGRvZXNuJ3QgbWF0dGVyIGJlY2F1c2UgeW91J3JlIG5vdCBhY3R1YWxseSBnb2luZyB0byBydW4gdGhlCisgICAgY29tbWFuZHMpLgorICAgICIiIgorICAgICMgSWYgdGhlIHRhcmdldCBkb2Vzbid0IGV2ZW4gZXhpc3QsIHRoZW4gaXQncyBkZWZpbml0ZWx5IG91dC1vZi1kYXRlLgorICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyh0YXJnZXQpOgorICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgIyBPdGhlcndpc2Ugd2UgaGF2ZSB0byBmaW5kIG91dCB0aGUgaGFyZCB3YXk6IGlmICphbnkqIHNvdXJjZSBmaWxlCisgICAgIyBpcyBtb3JlIHJlY2VudCB0aGFuICd0YXJnZXQnLCB0aGVuICd0YXJnZXQnIGlzIG91dC1vZi1kYXRlIGFuZAorICAgICMgd2UgY2FuIGltbWVkaWF0ZWx5IHJldHVybiB0cnVlLiAgSWYgd2UgZmFsbCB0aHJvdWdoIHRvIHRoZSBlbmQKKyAgICAjIG9mIHRoZSBsb29wLCB0aGVuICd0YXJnZXQnIGlzIHVwLXRvLWRhdGUgYW5kIHdlIHJldHVybiBmYWxzZS4KKyAgICB0YXJnZXRfbXRpbWUgPSBvcy5zdGF0KHRhcmdldCkuc3RfbXRpbWUKKworICAgIGZvciBzb3VyY2UgaW4gc291cmNlczoKKyAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKHNvdXJjZSk6CisgICAgICAgICAgICBpZiBtaXNzaW5nID09ICdlcnJvcic6ICAgICAgIyBibG93IHVwIHdoZW4gd2Ugc3RhdCgpIHRoZSBmaWxlCisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICAgICAgZWxpZiBtaXNzaW5nID09ICdpZ25vcmUnOiAgICMgbWlzc2luZyBzb3VyY2UgZHJvcHBlZCBmcm9tCisgICAgICAgICAgICAgICAgY29udGludWUgICAgICAgICAgICAgICAgIyB0YXJnZXQncyBkZXBlbmRlbmN5IGxpc3QKKyAgICAgICAgICAgIGVsaWYgbWlzc2luZyA9PSAnbmV3ZXInOiAgICAjIG1pc3Npbmcgc291cmNlIG1lYW5zIHRhcmdldCBpcworICAgICAgICAgICAgICAgIHJldHVybiBUcnVlICAgICAgICAgICAgICMgb3V0LW9mLWRhdGUKKworICAgICAgICBpZiBvcy5zdGF0KHNvdXJjZSkuc3RfbXRpbWUgPiB0YXJnZXRfbXRpbWU6CisgICAgICAgICAgICByZXR1cm4gVHJ1ZQorCisgICAgcmV0dXJuIEZhbHNlCisKKworZGVmIHdyaXRlX2ZpbGUoZmlsZW5hbWUsIGNvbnRlbnRzKToKKyAgICAiIiJDcmVhdGUgKmZpbGVuYW1lKiBhbmQgd3JpdGUgKmNvbnRlbnRzKiB0byBpdC4KKworICAgICpjb250ZW50cyogaXMgYSBzZXF1ZW5jZSBvZiBzdHJpbmdzIHdpdGhvdXQgbGluZSB0ZXJtaW5hdG9ycy4KKworICAgIFRoaXMgZnVuY3Rpb25zIGlzIG5vdCBpbnRlbmRlZCB0byByZXBsYWNlIHRoZSB1c3VhbCB3aXRoIG9wZW4gKyB3cml0ZQorICAgIGlkaW9tIGluIGFsbCBjYXNlcywgb25seSB3aXRoIENvbW1hbmQuZXhlY3V0ZSwgd2hpY2ggcnVucyBkZXBlbmRpbmcgb24KKyAgICB0aGUgZHJ5X3J1biBhcmd1bWVudCBhbmQgYWxzbyBsb2dzIGl0cyBhcmd1bWVudHMpLgorICAgICIiIgorICAgIHdpdGggb3BlbihmaWxlbmFtZSwgInciKSBhcyBmOgorICAgICAgICBmb3IgbGluZSBpbiBjb250ZW50czoKKyAgICAgICAgICAgIGYud3JpdGUobGluZSArICJcbiIpCisKKworZGVmIF9pc19wYWNrYWdlKHBhdGgpOgorICAgIHJldHVybiBvcy5wYXRoLmlzZGlyKHBhdGgpIGFuZCBvcy5wYXRoLmlzZmlsZSgKKyAgICAgICAgb3MucGF0aC5qb2luKHBhdGgsICdfX2luaXRfXy5weScpKQorCisKKyMgQ29kZSB0YWtlbiBmcm9tIHRoZSBwaXAgcHJvamVjdAorZGVmIF9pc19hcmNoaXZlX2ZpbGUobmFtZSk6CisgICAgYXJjaGl2ZXMgPSAoJy56aXAnLCAnLnRhci5neicsICcudGFyLmJ6MicsICcudGd6JywgJy50YXInKQorICAgIGV4dCA9IHNwbGl0ZXh0KG5hbWUpWzFdLmxvd2VyKCkKKyAgICByZXR1cm4gZXh0IGluIGFyY2hpdmVzCisKKworZGVmIF91bmRlcihwYXRoLCByb290KToKKyAgICAjIFhYWCB1c2Ugb3MucGF0aAorICAgIHBhdGggPSBwYXRoLnNwbGl0KG9zLnNlcCkKKyAgICByb290ID0gcm9vdC5zcGxpdChvcy5zZXApCisgICAgaWYgbGVuKHJvb3QpID4gbGVuKHBhdGgpOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBmb3IgcG9zLCBwYXJ0IGluIGVudW1lcmF0ZShyb290KToKKyAgICAgICAgaWYgcGF0aFtwb3NdICE9IHBhcnQ6CisgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICByZXR1cm4gVHJ1ZQorCisKK2RlZiBfcGFja2FnZV9uYW1lKHJvb3RfcGF0aCwgcGF0aCk6CisgICAgIyBSZXR1cm4gYSBkb3R0ZWQgcGFja2FnZSBuYW1lLCBnaXZlbiBhIHN1YnBhdGgKKyAgICBpZiBub3QgX3VuZGVyKHBhdGgsIHJvb3RfcGF0aCk6CisgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJyIlcyIgaXMgbm90IGEgc3VicGF0aCBvZiAiJXMiJyAlIChwYXRoLCByb290X3BhdGgpKQorICAgIHJldHVybiBwYXRoW2xlbihyb290X3BhdGgpICsgMTpdLnJlcGxhY2Uob3Muc2VwLCAnLicpCisKKworZGVmIGZpbmRfcGFja2FnZXMocGF0aHM9KG9zLmN1cmRpciwpLCBleGNsdWRlPSgpKToKKyAgICAiIiJSZXR1cm4gYSBsaXN0IGFsbCBQeXRob24gcGFja2FnZXMgZm91bmQgcmVjdXJzaXZlbHkgd2l0aGluCisgICAgZGlyZWN0b3JpZXMgJ3BhdGhzJworCisgICAgJ3BhdGhzJyBzaG91bGQgYmUgc3VwcGxpZWQgYXMgYSBzZXF1ZW5jZSBvZiAiY3Jvc3MtcGxhdGZvcm0iCisgICAgKGkuZS4gVVJMLXN0eWxlKSBwYXRoOyBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byB0aGUgYXBwcm9wcmlhdGUgbG9jYWwKKyAgICBwYXRoIHN5bnRheC4KKworICAgICdleGNsdWRlJyBpcyBhIHNlcXVlbmNlIG9mIHBhY2thZ2UgbmFtZXMgdG8gZXhjbHVkZTsgJyonIGNhbiBiZSB1c2VkIGFzCisgICAgYSB3aWxkY2FyZCBpbiB0aGUgbmFtZXMsIHN1Y2ggdGhhdCAnZm9vLionIHdpbGwgZXhjbHVkZSBhbGwgc3VicGFja2FnZXMKKyAgICBvZiAnZm9vJyAoYnV0IG5vdCAnZm9vJyBpdHNlbGYpLgorICAgICIiIgorICAgIHBhY2thZ2VzID0gW10KKyAgICBkaXNjYXJkZWQgPSBbXQorCisgICAgZGVmIF9kaXNjYXJkZWQocGF0aCk6CisgICAgICAgIGZvciBkaXNjYXJkIGluIGRpc2NhcmRlZDoKKyAgICAgICAgICAgIGlmIF91bmRlcihwYXRoLCBkaXNjYXJkKToKKyAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQorICAgICAgICByZXR1cm4gRmFsc2UKKworICAgIGZvciBwYXRoIGluIHBhdGhzOgorICAgICAgICBwYXRoID0gY29udmVydF9wYXRoKHBhdGgpCisgICAgICAgIGZvciByb290LCBkaXJzLCBmaWxlcyBpbiBvcy53YWxrKHBhdGgpOgorICAgICAgICAgICAgZm9yIGRpcl8gaW4gZGlyczoKKyAgICAgICAgICAgICAgICBmdWxscGF0aCA9IG9zLnBhdGguam9pbihyb290LCBkaXJfKQorICAgICAgICAgICAgICAgIGlmIF9kaXNjYXJkZWQoZnVsbHBhdGgpOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgICMgd2Ugd29yayBvbmx5IHdpdGggUHl0aG9uIHBhY2thZ2VzCisgICAgICAgICAgICAgICAgaWYgbm90IF9pc19wYWNrYWdlKGZ1bGxwYXRoKToKKyAgICAgICAgICAgICAgICAgICAgZGlzY2FyZGVkLmFwcGVuZChmdWxscGF0aCkKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICAjIHNlZSBpZiBpdCdzIGV4Y2x1ZGVkCisgICAgICAgICAgICAgICAgZXhjbHVkZWQgPSBGYWxzZQorICAgICAgICAgICAgICAgIHBhY2thZ2VfbmFtZSA9IF9wYWNrYWdlX25hbWUocGF0aCwgZnVsbHBhdGgpCisgICAgICAgICAgICAgICAgZm9yIHBhdHRlcm4gaW4gZXhjbHVkZToKKyAgICAgICAgICAgICAgICAgICAgaWYgZm5tYXRjaGNhc2UocGFja2FnZV9uYW1lLCBwYXR0ZXJuKToKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2x1ZGVkID0gVHJ1ZQorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICBpZiBleGNsdWRlZDoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKworICAgICAgICAgICAgICAgICMgYWRkaW5nIGl0IHRvIHRoZSBsaXN0CisgICAgICAgICAgICAgICAgcGFja2FnZXMuYXBwZW5kKHBhY2thZ2VfbmFtZSkKKyAgICByZXR1cm4gcGFja2FnZXMKKworCitkZWYgcmVzb2x2ZV9uYW1lKG5hbWUpOgorICAgICIiIlJlc29sdmUgYSBuYW1lIGxpa2UgYGBtb2R1bGUub2JqZWN0YGAgdG8gYW4gb2JqZWN0IGFuZCByZXR1cm4gaXQuCisKKyAgICBUaGlzIGZ1bmN0aW9ucyBzdXBwb3J0cyBwYWNrYWdlcyBhbmQgYXR0cmlidXRlcyB3aXRob3V0IGRlcHRoIGxpbWl0YXRpb246CisgICAgYGBwYWNrYWdlLnBhY2thZ2UubW9kdWxlLmNsYXNzLmNsYXNzLmZ1bmN0aW9uLmF0dHJgYCBpcyB2YWxpZCBpbnB1dC4KKyAgICBIb3dldmVyLCBsb29raW5nIHVwIGJ1aWx0aW5zIGlzIG5vdCBkaXJlY3RseSBzdXBwb3J0ZWQ6IHVzZQorICAgIGBgYnVpbHRpbnMubmFtZWBgLgorCisgICAgUmFpc2VzIEltcG9ydEVycm9yIGlmIGltcG9ydGluZyB0aGUgbW9kdWxlIGZhaWxzIG9yIGlmIG9uZSByZXF1ZXN0ZWQKKyAgICBhdHRyaWJ1dGUgaXMgbm90IGZvdW5kLgorICAgICIiIgorICAgIGlmICcuJyBub3QgaW4gbmFtZToKKyAgICAgICAgIyBzaG9ydGN1dAorICAgICAgICBfX2ltcG9ydF9fKG5hbWUpCisgICAgICAgIHJldHVybiBzeXMubW9kdWxlc1tuYW1lXQorCisgICAgIyBGSVhNRSBjbGVhbiB1cCB0aGlzIGNvZGUhCisgICAgcGFydHMgPSBuYW1lLnNwbGl0KCcuJykKKyAgICBjdXJzb3IgPSBsZW4ocGFydHMpCisgICAgbW9kdWxlX25hbWUgPSBwYXJ0c1s6Y3Vyc29yXQorICAgIHJldCA9ICcnCisKKyAgICB3aGlsZSBjdXJzb3IgPiAwOgorICAgICAgICB0cnk6CisgICAgICAgICAgICByZXQgPSBfX2ltcG9ydF9fKCcuJy5qb2luKG1vZHVsZV9uYW1lKSkKKyAgICAgICAgICAgIGJyZWFrCisgICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICAgICAgICAgIGN1cnNvciAtPSAxCisgICAgICAgICAgICBtb2R1bGVfbmFtZSA9IHBhcnRzWzpjdXJzb3JdCisKKyAgICBpZiByZXQgPT0gJyc6CisgICAgICAgIHJhaXNlIEltcG9ydEVycm9yKHBhcnRzWzBdKQorCisgICAgZm9yIHBhcnQgaW4gcGFydHNbMTpdOgorICAgICAgICB0cnk6CisgICAgICAgICAgICByZXQgPSBnZXRhdHRyKHJldCwgcGFydCkKKyAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yIGFzIGV4YzoKKyAgICAgICAgICAgIHJhaXNlIEltcG9ydEVycm9yKGV4YykKKworICAgIHJldHVybiByZXQKKworCitkZWYgc3BsaXRleHQocGF0aCk6CisgICAgIiIiTGlrZSBvcy5wYXRoLnNwbGl0ZXh0LCBidXQgdGFrZSBvZmYgLnRhciB0b28iIiIKKyAgICBiYXNlLCBleHQgPSBwb3NpeHBhdGguc3BsaXRleHQocGF0aCkKKyAgICBpZiBiYXNlLmxvd2VyKCkuZW5kc3dpdGgoJy50YXInKToKKyAgICAgICAgZXh0ID0gYmFzZVstNDpdICsgZXh0CisgICAgICAgIGJhc2UgPSBiYXNlWzotNF0KKyAgICByZXR1cm4gYmFzZSwgZXh0CisKKworaWYgc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nOgorICAgIF9jZmdfdGFyZ2V0ID0gTm9uZQorICAgIF9jZmdfdGFyZ2V0X3NwbGl0ID0gTm9uZQorCisKK2RlZiBzcGF3bihjbWQsIHNlYXJjaF9wYXRoPVRydWUsIGRyeV9ydW49RmFsc2UsIGVudj1Ob25lKToKKyAgICAiIiJSdW4gYW5vdGhlciBwcm9ncmFtIHNwZWNpZmllZCBhcyBhIGNvbW1hbmQgbGlzdCAnY21kJyBpbiBhIG5ldyBwcm9jZXNzLgorCisgICAgJ2NtZCcgaXMganVzdCB0aGUgYXJndW1lbnQgbGlzdCBmb3IgdGhlIG5ldyBwcm9jZXNzLCBpZS4KKyAgICBjbWRbMF0gaXMgdGhlIHByb2dyYW0gdG8gcnVuIGFuZCBjbWRbMTpdIGFyZSB0aGUgcmVzdCBvZiBpdHMgYXJndW1lbnRzLgorICAgIFRoZXJlIGlzIG5vIHdheSB0byBydW4gYSBwcm9ncmFtIHdpdGggYSBuYW1lIGRpZmZlcmVudCBmcm9tIHRoYXQgb2YgaXRzCisgICAgZXhlY3V0YWJsZS4KKworICAgIElmICdzZWFyY2hfcGF0aCcgaXMgdHJ1ZSAodGhlIGRlZmF1bHQpLCB0aGUgc3lzdGVtJ3MgZXhlY3V0YWJsZQorICAgIHNlYXJjaCBwYXRoIHdpbGwgYmUgdXNlZCB0byBmaW5kIHRoZSBwcm9ncmFtOyBvdGhlcndpc2UsIGNtZFswXQorICAgIG11c3QgYmUgdGhlIGV4YWN0IHBhdGggdG8gdGhlIGV4ZWN1dGFibGUuICBJZiAnZHJ5X3J1bicgaXMgdHJ1ZSwKKyAgICB0aGUgY29tbWFuZCB3aWxsIG5vdCBhY3R1YWxseSBiZSBydW4uCisKKyAgICBJZiAnZW52JyBpcyBnaXZlbiwgaXQncyBhIGVudmlyb25tZW50IGRpY3Rpb25hcnkgdXNlZCBmb3IgdGhlIGV4ZWN1dGlvbgorICAgIGVudmlyb25tZW50LgorCisgICAgUmFpc2UgUGFja2FnaW5nRXhlY0Vycm9yIGlmIHJ1bm5pbmcgdGhlIHByb2dyYW0gZmFpbHMgaW4gYW55IHdheTsganVzdAorICAgIHJldHVybiBvbiBzdWNjZXNzLgorICAgICIiIgorICAgIGxvZ2dlci5kZWJ1Zygnc3Bhd246IHJ1bm5pbmcgJXInLCBjbWQpCisgICAgaWYgZHJ5X3J1bjoKKyAgICAgICAgbG9nZ2VyLmRlYnVnKCdkcnkgcnVuLCBubyBwcm9jZXNzIGFjdHVhbGx5IHNwYXduZWQnKQorICAgICAgICByZXR1cm4KKyAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6CisgICAgICAgIGdsb2JhbCBfY2ZnX3RhcmdldCwgX2NmZ190YXJnZXRfc3BsaXQKKyAgICAgICAgaWYgX2NmZ190YXJnZXQgaXMgTm9uZToKKyAgICAgICAgICAgIF9jZmdfdGFyZ2V0ID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQnKSBvciAnJworICAgICAgICAgICAgaWYgX2NmZ190YXJnZXQ6CisgICAgICAgICAgICAgICAgX2NmZ190YXJnZXRfc3BsaXQgPSBbaW50KHgpIGZvciB4IGluIF9jZmdfdGFyZ2V0LnNwbGl0KCcuJyldCisgICAgICAgIGlmIF9jZmdfdGFyZ2V0OgorICAgICAgICAgICAgIyBlbnN1cmUgdGhhdCB0aGUgZGVwbG95bWVudCB0YXJnZXQgb2YgYnVpbGQgcHJvY2VzcyBpcyBub3QgbGVzcworICAgICAgICAgICAgIyB0aGFuIHRoYXQgdXNlZCB3aGVuIHRoZSBpbnRlcnByZXRlciB3YXMgYnVpbHQuIFRoaXMgZW5zdXJlcworICAgICAgICAgICAgIyBleHRlbnNpb24gbW9kdWxlcyBhcmUgYnVpbHQgd2l0aCBjb3JyZWN0IGNvbXBhdGliaWxpdHkgdmFsdWVzCisgICAgICAgICAgICBlbnYgPSBlbnYgb3Igb3MuZW52aXJvbgorICAgICAgICAgICAgY3VyX3RhcmdldCA9IGVudi5nZXQoJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCcsIF9jZmdfdGFyZ2V0KQorICAgICAgICAgICAgaWYgX2NmZ190YXJnZXRfc3BsaXQgPiBbaW50KHgpIGZvciB4IGluIGN1cl90YXJnZXQuc3BsaXQoJy4nKV06CisgICAgICAgICAgICAgICAgbXlfbXNnID0gKCckTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUIG1pc21hdGNoOiAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICdub3cgIiVzIiBidXQgIiVzIiBkdXJpbmcgY29uZmlndXJlJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIChjdXJfdGFyZ2V0LCBfY2ZnX3RhcmdldCkpCisgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nUGxhdGZvcm1FcnJvcihteV9tc2cpCisgICAgICAgICAgICBlbnYgPSBkaWN0KGVudiwgTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUPWN1cl90YXJnZXQpCisKKyAgICBleGl0X3N0YXR1cyA9IHN1YnByb2Nlc3MuY2FsbChjbWQsIGVudj1lbnYpCisgICAgaWYgZXhpdF9zdGF0dXMgIT0gMDoKKyAgICAgICAgbXNnID0gImNvbW1hbmQgJXIgZmFpbGVkIHdpdGggZXhpdCBzdGF0dXMgJWQiCisgICAgICAgIHJhaXNlIFBhY2thZ2luZ0V4ZWNFcnJvcihtc2cgJSAoY21kLCBleGl0X3N0YXR1cykpCisKKworZGVmIGZpbmRfZXhlY3V0YWJsZShleGVjdXRhYmxlLCBwYXRoPU5vbmUpOgorICAgICIiIlRyeSB0byBmaW5kICdleGVjdXRhYmxlJyBpbiB0aGUgZGlyZWN0b3JpZXMgbGlzdGVkIGluICdwYXRoJy4KKworICAgICpwYXRoKiBpcyBhIHN0cmluZyBsaXN0aW5nIGRpcmVjdG9yaWVzIHNlcGFyYXRlZCBieSAnb3MucGF0aHNlcCcgYW5kCisgICAgZGVmYXVsdHMgdG8gb3MuZW52aXJvblsnUEFUSCddLiAgUmV0dXJucyB0aGUgY29tcGxldGUgZmlsZW5hbWUgb3IgTm9uZQorICAgIGlmIG5vdCBmb3VuZC4KKyAgICAiIiIKKyAgICBpZiBwYXRoIGlzIE5vbmU6CisgICAgICAgIHBhdGggPSBvcy5lbnZpcm9uWydQQVRIJ10KKyAgICBwYXRocyA9IHBhdGguc3BsaXQob3MucGF0aHNlcCkKKyAgICBiYXNlLCBleHQgPSBvcy5wYXRoLnNwbGl0ZXh0KGV4ZWN1dGFibGUpCisKKyAgICBpZiAoc3lzLnBsYXRmb3JtID09ICd3aW4zMicgb3Igb3MubmFtZSA9PSAnb3MyJykgYW5kIChleHQgIT0gJy5leGUnKToKKyAgICAgICAgZXhlY3V0YWJsZSA9IGV4ZWN1dGFibGUgKyAnLmV4ZScKKworICAgIGlmIG5vdCBvcy5wYXRoLmlzZmlsZShleGVjdXRhYmxlKToKKyAgICAgICAgZm9yIHAgaW4gcGF0aHM6CisgICAgICAgICAgICBmID0gb3MucGF0aC5qb2luKHAsIGV4ZWN1dGFibGUpCisgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShmKToKKyAgICAgICAgICAgICAgICAjIHRoZSBmaWxlIGV4aXN0cywgd2UgaGF2ZSBhIHNob3QgYXQgc3Bhd24gd29ya2luZworICAgICAgICAgICAgICAgIHJldHVybiBmCisgICAgICAgIHJldHVybiBOb25lCisgICAgZWxzZToKKyAgICAgICAgcmV0dXJuIGV4ZWN1dGFibGUKKworCitERUZBVUxUX1JFUE9TSVRPUlkgPSAnaHR0cDovL3B5cGkucHl0aG9uLm9yZy9weXBpJworREVGQVVMVF9SRUFMTSA9ICdweXBpJworREVGQVVMVF9QWVBJUkMgPSAiIiJcCitbZGlzdHV0aWxzXQoraW5kZXgtc2VydmVycyA9CisgICAgcHlwaQorCitbcHlwaV0KK3VzZXJuYW1lOiVzCitwYXNzd29yZDolcworIiIiCisKKworZGVmIGdldF9weXBpcmNfcGF0aCgpOgorICAgICIiIlJldHVybiBwYXRoIHRvIHB5cGlyYyBjb25maWcgZmlsZS4iIiIKKyAgICByZXR1cm4gb3MucGF0aC5qb2luKG9zLnBhdGguZXhwYW5kdXNlcignficpLCAnLnB5cGlyYycpCisKKworZGVmIGdlbmVyYXRlX3B5cGlyYyh1c2VybmFtZSwgcGFzc3dvcmQpOgorICAgICIiIkNyZWF0ZSBhIGRlZmF1bHQgLnB5cGlyYyBmaWxlLiIiIgorICAgIHJjID0gZ2V0X3B5cGlyY19wYXRoKCkKKyAgICB3aXRoIG9wZW4ocmMsICd3JykgYXMgZjoKKyAgICAgICAgZi53cml0ZShERUZBVUxUX1BZUElSQyAlICh1c2VybmFtZSwgcGFzc3dvcmQpKQorICAgIHRyeToKKyAgICAgICAgb3MuY2htb2QocmMsIDBvNjAwKQorICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICAjIHNob3VsZCBkbyBzb21ldGhpbmcgYmV0dGVyIGhlcmUKKyAgICAgICAgcGFzcworCisKK2RlZiByZWFkX3B5cGlyYyhyZXBvc2l0b3J5PURFRkFVTFRfUkVQT1NJVE9SWSwgcmVhbG09REVGQVVMVF9SRUFMTSk6CisgICAgIiIiUmVhZCB0aGUgLnB5cGlyYyBmaWxlLiIiIgorICAgIHJjID0gZ2V0X3B5cGlyY19wYXRoKCkKKyAgICBpZiBvcy5wYXRoLmV4aXN0cyhyYyk6CisgICAgICAgIGNvbmZpZyA9IFJhd0NvbmZpZ1BhcnNlcigpCisgICAgICAgIGNvbmZpZy5yZWFkKHJjKQorICAgICAgICBzZWN0aW9ucyA9IGNvbmZpZy5zZWN0aW9ucygpCisgICAgICAgIGlmICdkaXN0dXRpbHMnIGluIHNlY3Rpb25zOgorICAgICAgICAgICAgIyBsZXQncyBnZXQgdGhlIGxpc3Qgb2Ygc2VydmVycworICAgICAgICAgICAgaW5kZXhfc2VydmVycyA9IGNvbmZpZy5nZXQoJ2Rpc3R1dGlscycsICdpbmRleC1zZXJ2ZXJzJykKKyAgICAgICAgICAgIF9zZXJ2ZXJzID0gW3NlcnZlci5zdHJpcCgpIGZvciBzZXJ2ZXIgaW4KKyAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4X3NlcnZlcnMuc3BsaXQoJ1xuJykKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIHNlcnZlci5zdHJpcCgpICE9ICcnXQorICAgICAgICAgICAgaWYgX3NlcnZlcnMgPT0gW106CisgICAgICAgICAgICAgICAgIyBub3RoaW5nIHNldCwgbGV0J3MgdHJ5IHRvIGdldCB0aGUgZGVmYXVsdCBweXBpCisgICAgICAgICAgICAgICAgaWYgJ3B5cGknIGluIHNlY3Rpb25zOgorICAgICAgICAgICAgICAgICAgICBfc2VydmVycyA9IFsncHlwaSddCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgIyB0aGUgZmlsZSBpcyBub3QgcHJvcGVybHkgZGVmaW5lZCwgcmV0dXJuaW5nCisgICAgICAgICAgICAgICAgICAgICMgYW4gZW1wdHkgZGljdAorICAgICAgICAgICAgICAgICAgICByZXR1cm4ge30KKyAgICAgICAgICAgIGZvciBzZXJ2ZXIgaW4gX3NlcnZlcnM6CisgICAgICAgICAgICAgICAgY3VycmVudCA9IHsnc2VydmVyJzogc2VydmVyfQorICAgICAgICAgICAgICAgIGN1cnJlbnRbJ3VzZXJuYW1lJ10gPSBjb25maWcuZ2V0KHNlcnZlciwgJ3VzZXJuYW1lJykKKworICAgICAgICAgICAgICAgICMgb3B0aW9uYWwgcGFyYW1zCisgICAgICAgICAgICAgICAgZm9yIGtleSwgZGVmYXVsdCBpbiAoKCdyZXBvc2l0b3J5JywgREVGQVVMVF9SRVBPU0lUT1JZKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoJ3JlYWxtJywgREVGQVVMVF9SRUFMTSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCdwYXNzd29yZCcsIE5vbmUpKToKKyAgICAgICAgICAgICAgICAgICAgaWYgY29uZmlnLmhhc19vcHRpb24oc2VydmVyLCBrZXkpOgorICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudFtrZXldID0gY29uZmlnLmdldChzZXJ2ZXIsIGtleSkKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRba2V5XSA9IGRlZmF1bHQKKyAgICAgICAgICAgICAgICBpZiAoY3VycmVudFsnc2VydmVyJ10gPT0gcmVwb3NpdG9yeSBvcgorICAgICAgICAgICAgICAgICAgICBjdXJyZW50WydyZXBvc2l0b3J5J10gPT0gcmVwb3NpdG9yeSk6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBjdXJyZW50CisgICAgICAgIGVsaWYgJ3NlcnZlci1sb2dpbicgaW4gc2VjdGlvbnM6CisgICAgICAgICAgICAjIG9sZCBmb3JtYXQKKyAgICAgICAgICAgIHNlcnZlciA9ICdzZXJ2ZXItbG9naW4nCisgICAgICAgICAgICBpZiBjb25maWcuaGFzX29wdGlvbihzZXJ2ZXIsICdyZXBvc2l0b3J5Jyk6CisgICAgICAgICAgICAgICAgcmVwb3NpdG9yeSA9IGNvbmZpZy5nZXQoc2VydmVyLCAncmVwb3NpdG9yeScpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJlcG9zaXRvcnkgPSBERUZBVUxUX1JFUE9TSVRPUlkKKworICAgICAgICAgICAgcmV0dXJuIHsndXNlcm5hbWUnOiBjb25maWcuZ2V0KHNlcnZlciwgJ3VzZXJuYW1lJyksCisgICAgICAgICAgICAgICAgICAgICdwYXNzd29yZCc6IGNvbmZpZy5nZXQoc2VydmVyLCAncGFzc3dvcmQnKSwKKyAgICAgICAgICAgICAgICAgICAgJ3JlcG9zaXRvcnknOiByZXBvc2l0b3J5LAorICAgICAgICAgICAgICAgICAgICAnc2VydmVyJzogc2VydmVyLAorICAgICAgICAgICAgICAgICAgICAncmVhbG0nOiBERUZBVUxUX1JFQUxNfQorCisgICAgcmV0dXJuIHt9CisKKworIyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgMnRvMyBzdXBwb3J0CisKK2RlZiBydW5fMnRvMyhmaWxlcywgZG9jdGVzdHNfb25seT1GYWxzZSwgZml4ZXJfbmFtZXM9Tm9uZSwKKyAgICAgICAgICAgICBvcHRpb25zPU5vbmUsIGV4cGxpY2l0PU5vbmUpOgorICAgICIiIiBXcmFwcGVyIGZ1bmN0aW9uIGFyb3VuZCB0aGUgcmVmYWN0b3IoKSBjbGFzcyB3aGljaAorICAgIHBlcmZvcm1zIHRoZSBjb252ZXJzaW9ucyBvbiBhIGxpc3Qgb2YgcHl0aG9uIGZpbGVzLgorICAgIEludm9rZSAydG8zIG9uIGEgbGlzdCBvZiBQeXRob24gZmlsZXMuIFRoZSBmaWxlcyBzaG91bGQgYWxsIGNvbWUKKyAgICBmcm9tIHRoZSBidWlsZCBhcmVhLCBhcyB0aGUgbW9kaWZpY2F0aW9uIGlzIGRvbmUgaW4tcGxhY2UuIiIiCisKKyAgICAjaWYgbm90IGZpbGVzOgorICAgICMgICAgcmV0dXJuCisKKyAgICAjIE1ha2UgdGhpcyBjbGFzcyBsb2NhbCwgdG8gZGVsYXkgaW1wb3J0IG9mIDJ0bzMKKyAgICBmcm9tIGxpYjJ0bzMucmVmYWN0b3IgaW1wb3J0IGdldF9maXhlcnNfZnJvbV9wYWNrYWdlLCBSZWZhY3RvcmluZ1Rvb2wKKyAgICBmaXhlcnMgPSBbXQorICAgIGZpeGVycyA9IGdldF9maXhlcnNfZnJvbV9wYWNrYWdlKCdsaWIydG8zLmZpeGVzJykKKworICAgIGlmIGZpeGVyX25hbWVzOgorICAgICAgICBmb3IgZml4ZXJuYW1lIGluIGZpeGVyX25hbWVzOgorICAgICAgICAgICAgZml4ZXJzLmV4dGVuZChmaXhlciBmb3IgZml4ZXIgaW4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0X2ZpeGVyc19mcm9tX3BhY2thZ2UoZml4ZXJuYW1lKSkKKyAgICByID0gUmVmYWN0b3JpbmdUb29sKGZpeGVycywgb3B0aW9ucz1vcHRpb25zKQorICAgIHIucmVmYWN0b3IoZmlsZXMsIHdyaXRlPVRydWUsIGRvY3Rlc3RzX29ubHk9ZG9jdGVzdHNfb25seSkKKworCitjbGFzcyBNaXhpbjJ0bzM6CisgICAgIiIiIFdyYXBwZXIgY2xhc3MgZm9yIGNvbW1hbmRzIHRoYXQgcnVuIDJ0bzMuCisgICAgVG8gY29uZmlndXJlIDJ0bzMsIHNldHVwIHNjcmlwdHMgbWF5IGVpdGhlciBjaGFuZ2UKKyAgICB0aGUgY2xhc3MgdmFyaWFibGVzLCBvciBpbmhlcml0IGZyb20gdGhpcyBjbGFzcworICAgIHRvIG92ZXJyaWRlIGhvdyAydG8zIGlzIGludm9rZWQuCisgICAgIiIiCisgICAgIyBwcm92aWRlIGxpc3Qgb2YgZml4ZXJzIHRvIHJ1bi4KKyAgICAjIGRlZmF1bHRzIHRvIGFsbCBmcm9tIGxpYjJ0bzMuZml4ZXJzCisgICAgZml4ZXJfbmFtZXMgPSBOb25lCisKKyAgICAjIG9wdGlvbnMgZGljdGlvbmFyeQorICAgIG9wdGlvbnMgPSBOb25lCisKKyAgICAjIGxpc3Qgb2YgZml4ZXJzIHRvIGludm9rZSBldmVuIHRob3VnaCB0aGV5IGFyZSBtYXJrZWQgYXMgZXhwbGljaXQKKyAgICBleHBsaWNpdCA9IE5vbmUKKworICAgIGRlZiBydW5fMnRvMyhzZWxmLCBmaWxlcywgZG9jdGVzdHNfb25seT1GYWxzZSk6CisgICAgICAgICIiIiBJc3N1ZXMgYSBjYWxsIHRvIHV0aWwucnVuXzJ0bzMuICIiIgorICAgICAgICByZXR1cm4gcnVuXzJ0bzMoZmlsZXMsIGRvY3Rlc3RzX29ubHksIHNlbGYuZml4ZXJfbmFtZXMsCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLm9wdGlvbnMsIHNlbGYuZXhwbGljaXQpCisKK1JJQ0hfR0xPQiA9IHJlLmNvbXBpbGUocidceyhbXn1dKilcfScpCitfQ0hFQ0tfUkVDVVJTSVZFX0dMT0IgPSByZS5jb21waWxlKHInW14vXFwse11cKlwqfFwqXCpbXi9cXCx9XScpCitfQ0hFQ0tfTUlTTUFUQ0hfU0VUID0gcmUuY29tcGlsZShyJ15bXntdKlx9fFx7W159XSokJykKKworCitkZWYgaWdsb2IocGF0aF9nbG9iKToKKyAgICAiIiJFeHRlbmRlZCBnbG9iYmluZyBmdW5jdGlvbiB0aGF0IHN1cHBvcnRzICoqIGFuZCB7b3B0MSxvcHQyLG9wdDN9LiIiIgorICAgIGlmIF9DSEVDS19SRUNVUlNJVkVfR0xPQi5zZWFyY2gocGF0aF9nbG9iKToKKyAgICAgICAgbXNnID0gIiIiaW52YWxpZCBnbG9iICVyOiByZWN1cnNpdmUgZ2xvYiAiKioiIG11c3QgYmUgdXNlZCBhbG9uZSIiIgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKG1zZyAlIHBhdGhfZ2xvYikKKyAgICBpZiBfQ0hFQ0tfTUlTTUFUQ0hfU0VULnNlYXJjaChwYXRoX2dsb2IpOgorICAgICAgICBtc2cgPSAiIiJpbnZhbGlkIGdsb2IgJXI6IG1pc21hdGNoaW5nIHNldCBtYXJrZXIgJ3snIG9yICd9JyIiIgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKG1zZyAlIHBhdGhfZ2xvYikKKyAgICByZXR1cm4gX2lnbG9iKHBhdGhfZ2xvYikKKworCitkZWYgX2lnbG9iKHBhdGhfZ2xvYik6CisgICAgcmljaF9wYXRoX2dsb2IgPSBSSUNIX0dMT0Iuc3BsaXQocGF0aF9nbG9iLCAxKQorICAgIGlmIGxlbihyaWNoX3BhdGhfZ2xvYikgPiAxOgorICAgICAgICBhc3NlcnQgbGVuKHJpY2hfcGF0aF9nbG9iKSA9PSAzLCByaWNoX3BhdGhfZ2xvYgorICAgICAgICBwcmVmaXgsIHNldCwgc3VmZml4ID0gcmljaF9wYXRoX2dsb2IKKyAgICAgICAgZm9yIGl0ZW0gaW4gc2V0LnNwbGl0KCcsJyk6CisgICAgICAgICAgICBmb3IgcGF0aCBpbiBfaWdsb2IoJycuam9pbigocHJlZml4LCBpdGVtLCBzdWZmaXgpKSk6CisgICAgICAgICAgICAgICAgeWllbGQgcGF0aAorICAgIGVsc2U6CisgICAgICAgIGlmICcqKicgbm90IGluIHBhdGhfZ2xvYjoKKyAgICAgICAgICAgIGZvciBpdGVtIGluIHN0ZF9pZ2xvYihwYXRoX2dsb2IpOgorICAgICAgICAgICAgICAgIHlpZWxkIGl0ZW0KKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHByZWZpeCwgcmFkaWNhbCA9IHBhdGhfZ2xvYi5zcGxpdCgnKionLCAxKQorICAgICAgICAgICAgaWYgcHJlZml4ID09ICcnOgorICAgICAgICAgICAgICAgIHByZWZpeCA9ICcuJworICAgICAgICAgICAgaWYgcmFkaWNhbCA9PSAnJzoKKyAgICAgICAgICAgICAgICByYWRpY2FsID0gJyonCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICMgd2Ugc3VwcG9ydCBib3RoCisgICAgICAgICAgICAgICAgcmFkaWNhbCA9IHJhZGljYWwubHN0cmlwKCcvJykKKyAgICAgICAgICAgICAgICByYWRpY2FsID0gcmFkaWNhbC5sc3RyaXAoJ1xcJykKKyAgICAgICAgICAgIGZvciBwYXRoLCBkaXIsIGZpbGVzIGluIG9zLndhbGsocHJlZml4KToKKyAgICAgICAgICAgICAgICBwYXRoID0gb3MucGF0aC5ub3JtcGF0aChwYXRoKQorICAgICAgICAgICAgICAgIGZvciBmaWxlIGluIF9pZ2xvYihvcy5wYXRoLmpvaW4ocGF0aCwgcmFkaWNhbCkpOgorICAgICAgICAgICAgICAgICAgICB5aWVsZCBmaWxlCisKKworIyBIT1dUTyBjaGFuZ2UgY2ZnX3RvX2FyZ3MKKyMKKyMgVGhpcyBmdW5jdGlvbiBoYXMgdHdvIG1ham9yIGNvbnN0cmFpbnRzOiBJdCBpcyBjb3BpZWQgYnkgaW5zcGVjdC5nZXRzb3VyY2UKKyMgaW4gZ2VuZXJhdGVfc2V0dXBfcHk7IGl0IGlzIHVzZWQgaW4gZ2VuZXJhdGVkIHNldHVwLnB5IHdoaWNoIG1heSBiZSBydW4gYnkKKyMgYW55IFB5dGhvbiB2ZXJzaW9uIHN1cHBvcnRlZCBieSBkaXN0dXRpbHMyICgyLjQtMy4zKS4KKyMKKyMgKiBLZWVwIG9iamVjdHMgbGlrZSBEMV9EMl9TRVRVUF9BUkdTIHN0YXRpYywgaS5lLiBpbiB0aGUgZnVuY3Rpb24gYm9keQorIyAgIGluc3RlYWQgb2YgZ2xvYmFsLgorIyAqIElmIHlvdSB1c2UgYSBmdW5jdGlvbiBmcm9tIGFub3RoZXIgbW9kdWxlLCB1cGRhdGUgdGhlIGltcG9ydHMgaW4KKyMgICBTRVRVUF9URU1QTEFURS4gIFVzZSBvbmx5IG1vZHVsZXMsIGNsYXNzZXMgYW5kIGZ1bmN0aW9ucyBjb21wYXRpYmxlIHdpdGgKKyMgICBhbGwgdmVyc2lvbnM6IGNvZGVjcy5vcGVuIGluc3RlYWQgb2Ygb3BlbiwgUmF3Q29uZmlnUGFyc2VyLnJlYWRmcCBpbnN0ZWFkCisjICAgb2YgcmVhZCwgc3RhbmRhcmQgZXhjZXB0aW9ucyBpbnN0ZWFkIG9mIFBhY2thZ2luZypFcnJvciwgZXRjLgorIyAqIElmIHlvdSB1c2UgYSBmdW5jdGlvbiBmcm9tIHRoaXMgbW9kdWxlLCB1cGRhdGUgdGhlIHRlbXBsYXRlIGFuZAorIyAgIGdlbmVyYXRlX3NldHVwX3B5LgorIworIyB0ZXN0X3V0aWwgdGVzdHMgdGhpcyBmdW5jdGlvbiBhbmQgdGhlIGdlbmVyYXRlZCBzZXR1cC5weSwgYnV0IGRvZXMgbm90IHRlc3QKKyMgdGhhdCBpdCdzIGNvbXBhdGlibGUgd2l0aCBhbGwgUHl0aG9uIHZlcnNpb25zLgorCitkZWYgY2ZnX3RvX2FyZ3MocGF0aD0nc2V0dXAuY2ZnJyk6CisgICAgIiIiQ29tcGF0aWJpbGl0eSBoZWxwZXIgdG8gdXNlIHNldHVwLmNmZyBpbiBzZXR1cC5weS4KKworICAgIFRoaXMgZnVuY3Rpb25zIHVzZXMgYW4gZXhpc3Rpbmcgc2V0dXAuY2ZnIHRvIGdlbmVyYXRlIGEgZGljdGlvbm5hcnkgb2YKKyAgICBrZXl3b3JkcyB0aGF0IGNhbiBiZSB1c2VkIGJ5IGRpc3R1dGlscy5jb3JlLnNldHVwKCoqa3dhcmdzKS4gIEl0IGlzIHVzZWQKKyAgICBieSBnZW5lcmF0ZV9zZXR1cF9weS4KKworICAgICpmaWxlKiBpcyB0aGUgcGF0aCB0byB0aGUgc2V0dXAuY2ZnIGZpbGUuICBJZiBpdCBkb2Vzbid0IGV4aXN0LAorICAgIFBhY2thZ2luZ0ZpbGVFcnJvciBpcyByYWlzZWQuCisgICAgIiIiCisKKyAgICAjIFhYWCAqKiA9PSBuZWVkcyB0ZXN0aW5nCisgICAgRDFfRDJfU0VUVVBfQVJHUyA9IHsibmFtZSI6ICgibWV0YWRhdGEiLCksCisgICAgICAgICAgICAgICAgICAgICAgICAidmVyc2lvbiI6ICgibWV0YWRhdGEiLCksCisgICAgICAgICAgICAgICAgICAgICAgICAiYXV0aG9yIjogKCJtZXRhZGF0YSIsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJhdXRob3JfZW1haWwiOiAoIm1ldGFkYXRhIiwpLAorICAgICAgICAgICAgICAgICAgICAgICAgIm1haW50YWluZXIiOiAoIm1ldGFkYXRhIiwpLAorICAgICAgICAgICAgICAgICAgICAgICAgIm1haW50YWluZXJfZW1haWwiOiAoIm1ldGFkYXRhIiwpLAorICAgICAgICAgICAgICAgICAgICAgICAgInVybCI6ICgibWV0YWRhdGEiLCAiaG9tZV9wYWdlIiksCisgICAgICAgICAgICAgICAgICAgICAgICAiZGVzY3JpcHRpb24iOiAoIm1ldGFkYXRhIiwgInN1bW1hcnkiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJsb25nX2Rlc2NyaXB0aW9uIjogKCJtZXRhZGF0YSIsICJkZXNjcmlwdGlvbiIpLAorICAgICAgICAgICAgICAgICAgICAgICAgImRvd25sb2FkLXVybCI6ICgibWV0YWRhdGEiLCksCisgICAgICAgICAgICAgICAgICAgICAgICAiY2xhc3NpZmllcnMiOiAoIm1ldGFkYXRhIiwgImNsYXNzaWZpZXIiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJwbGF0Zm9ybXMiOiAoIm1ldGFkYXRhIiwgInBsYXRmb3JtIiksICAjICoqCisgICAgICAgICAgICAgICAgICAgICAgICAibGljZW5zZSI6ICgibWV0YWRhdGEiLCksCisgICAgICAgICAgICAgICAgICAgICAgICAicmVxdWlyZXMiOiAoIm1ldGFkYXRhIiwgInJlcXVpcmVzX2Rpc3QiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJwcm92aWRlcyI6ICgibWV0YWRhdGEiLCAicHJvdmlkZXNfZGlzdCIpLCAgIyAqKgorICAgICAgICAgICAgICAgICAgICAgICAgIm9ic29sZXRlcyI6ICgibWV0YWRhdGEiLCAib2Jzb2xldGVzX2Rpc3QiKSwgICMgKioKKyAgICAgICAgICAgICAgICAgICAgICAgICJwYWNrYWdlX2RpciI6ICgiZmlsZXMiLCAncGFja2FnZXNfcm9vdCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgInBhY2thZ2VzIjogKCJmaWxlcyIsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJzY3JpcHRzIjogKCJmaWxlcyIsKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJweV9tb2R1bGVzIjogKCJmaWxlcyIsICJtb2R1bGVzIiksICAjICoqCisgICAgICAgICAgICAgICAgICAgICAgICB9CisKKyAgICBNVUxUSV9GSUVMRFMgPSAoImNsYXNzaWZpZXJzIiwKKyAgICAgICAgICAgICAgICAgICAgInBsYXRmb3JtcyIsCisgICAgICAgICAgICAgICAgICAgICJyZXF1aXJlcyIsCisgICAgICAgICAgICAgICAgICAgICJwcm92aWRlcyIsCisgICAgICAgICAgICAgICAgICAgICJvYnNvbGV0ZXMiLAorICAgICAgICAgICAgICAgICAgICAicGFja2FnZXMiLAorICAgICAgICAgICAgICAgICAgICAic2NyaXB0cyIsCisgICAgICAgICAgICAgICAgICAgICJweV9tb2R1bGVzIikKKworICAgIGRlZiBoYXNfZ2V0X29wdGlvbihjb25maWcsIHNlY3Rpb24sIG9wdGlvbik6CisgICAgICAgIGlmIGNvbmZpZy5oYXNfb3B0aW9uKHNlY3Rpb24sIG9wdGlvbik6CisgICAgICAgICAgICByZXR1cm4gY29uZmlnLmdldChzZWN0aW9uLCBvcHRpb24pCisgICAgICAgIGVsaWYgY29uZmlnLmhhc19vcHRpb24oc2VjdGlvbiwgb3B0aW9uLnJlcGxhY2UoJ18nLCAnLScpKToKKyAgICAgICAgICAgIHJldHVybiBjb25maWcuZ2V0KHNlY3Rpb24sIG9wdGlvbi5yZXBsYWNlKCdfJywgJy0nKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiBGYWxzZQorCisgICAgIyBUaGUgcmVhbCBjb2RlIHN0YXJ0cyBoZXJlCisgICAgY29uZmlnID0gUmF3Q29uZmlnUGFyc2VyKCkKKyAgICBmID0gY29kZWNzLm9wZW4ocGF0aCwgZW5jb2Rpbmc9J3V0Zi04JykKKyAgICB0cnk6CisgICAgICAgIGNvbmZpZy5yZWFkZnAoZikKKyAgICBmaW5hbGx5OgorICAgICAgICBmLmNsb3NlKCkKKworICAgIGt3YXJncyA9IHt9CisgICAgZm9yIGFyZyBpbiBEMV9EMl9TRVRVUF9BUkdTOgorICAgICAgICBpZiBsZW4oRDFfRDJfU0VUVVBfQVJHU1thcmddKSA9PSAyOgorICAgICAgICAgICAgIyBUaGUgZGlzdHV0aWxzIGZpZWxkIG5hbWUgaXMgZGlmZmVyZW50IHRoYW4gcGFja2FnaW5nJ3MKKyAgICAgICAgICAgIHNlY3Rpb24sIG9wdGlvbiA9IEQxX0QyX1NFVFVQX0FSR1NbYXJnXQorCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICAjIFRoZSBkaXN0dXRpbHMgZmllbGQgbmFtZSBpcyB0aGUgc2FtZSB0aGFudCBwYWNrYWdpbmcncworICAgICAgICAgICAgc2VjdGlvbiA9IEQxX0QyX1NFVFVQX0FSR1NbYXJnXVswXQorICAgICAgICAgICAgb3B0aW9uID0gYXJnCisKKyAgICAgICAgaW5fY2ZnX3ZhbHVlID0gaGFzX2dldF9vcHRpb24oY29uZmlnLCBzZWN0aW9uLCBvcHRpb24pCisgICAgICAgIGlmIG5vdCBpbl9jZmdfdmFsdWU6CisgICAgICAgICAgICAjIFRoZXJlIGlzIG5vIHN1Y2ggb3B0aW9uIGluIHRoZSBzZXR1cC5jZmcKKyAgICAgICAgICAgIGlmIGFyZyA9PSAnbG9uZ19kZXNjcmlwdGlvbic6CisgICAgICAgICAgICAgICAgZmlsZW5hbWVzID0gaGFzX2dldF9vcHRpb24oY29uZmlnLCBzZWN0aW9uLCAnZGVzY3JpcHRpb24tZmlsZScpCisgICAgICAgICAgICAgICAgaWYgZmlsZW5hbWVzOgorICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZXMgPSBzcGxpdF9tdWx0aWxpbmUoZmlsZW5hbWVzKQorICAgICAgICAgICAgICAgICAgICBpbl9jZmdfdmFsdWUgPSBbXQorICAgICAgICAgICAgICAgICAgICBmb3IgZmlsZW5hbWUgaW4gZmlsZW5hbWVzOgorICAgICAgICAgICAgICAgICAgICAgICAgZnAgPSBjb2RlY3Mub3BlbihmaWxlbmFtZSwgZW5jb2Rpbmc9J3V0Zi04JykKKyAgICAgICAgICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbl9jZmdfdmFsdWUuYXBwZW5kKGZwLnJlYWQoKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnAuY2xvc2UoKQorICAgICAgICAgICAgICAgICAgICBpbl9jZmdfdmFsdWUgPSAnXG5cbicuam9pbihpbl9jZmdfdmFsdWUpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisKKyAgICAgICAgaWYgYXJnID09ICdwYWNrYWdlX2RpcicgYW5kIGluX2NmZ192YWx1ZToKKyAgICAgICAgICAgIGluX2NmZ192YWx1ZSA9IHsnJzogaW5fY2ZnX3ZhbHVlfQorCisgICAgICAgIGlmIGFyZyBpbiBNVUxUSV9GSUVMRFM6CisgICAgICAgICAgICAjIHN1cHBvcnQgbXVsdGlsaW5lIG9wdGlvbnMKKyAgICAgICAgICAgIGluX2NmZ192YWx1ZSA9IHNwbGl0X211bHRpbGluZShpbl9jZmdfdmFsdWUpCisKKyAgICAgICAga3dhcmdzW2FyZ10gPSBpbl9jZmdfdmFsdWUKKworICAgIHJldHVybiBrd2FyZ3MKKworCitTRVRVUF9URU1QTEFURSA9ICIiIlwKKyMgVGhpcyBzY3JpcHQgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IHBhY2thZ2luZworaW1wb3J0IG9zCitpbXBvcnQgY29kZWNzCitmcm9tIGRpc3R1dGlscy5jb3JlIGltcG9ydCBzZXR1cAordHJ5OgorICAgIGZyb20gQ29uZmlnUGFyc2VyIGltcG9ydCBSYXdDb25maWdQYXJzZXIKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBmcm9tIGNvbmZpZ3BhcnNlciBpbXBvcnQgUmF3Q29uZmlnUGFyc2VyCisKKyUoc3BsaXRfbXVsdGlsaW5lKXMKKworJShjZmdfdG9fYXJncylzCisKK3NldHVwKCoqY2ZnX3RvX2FyZ3MoKSkKKyIiIgorCisKK2RlZiBnZW5lcmF0ZV9zZXR1cF9weSgpOgorICAgICIiIkdlbmVyYXRlIGEgZGlzdHV0aWxzIGNvbXBhdGlibGUgc2V0dXAucHkgdXNpbmcgYW4gZXhpc3Rpbmcgc2V0dXAuY2ZnLgorCisgICAgUmFpc2VzIGEgUGFja2FnaW5nRmlsZUVycm9yIHdoZW4gYSBzZXR1cC5weSBhbHJlYWR5IGV4aXN0cy4KKyAgICAiIiIKKyAgICBpZiBvcy5wYXRoLmV4aXN0cygic2V0dXAucHkiKToKKyAgICAgICAgcmFpc2UgUGFja2FnaW5nRmlsZUVycm9yKCJhIHNldHVwLnB5IGZpbGUgYWxyZWFkeSBleGlzdHMiKQorCisgICAgc291cmNlID0gU0VUVVBfVEVNUExBVEUgJSB7J3NwbGl0X211bHRpbGluZSc6IGdldHNvdXJjZShzcGxpdF9tdWx0aWxpbmUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjZmdfdG9fYXJncyc6IGdldHNvdXJjZShjZmdfdG9fYXJncyl9CisgICAgd2l0aCBvcGVuKCJzZXR1cC5weSIsICJ3IiwgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZnA6CisgICAgICAgIGZwLndyaXRlKHNvdXJjZSkKKworCisjIFRha2VuIGZyb20gdGhlIHBpcCBwcm9qZWN0CisjIGh0dHBzOi8vZ2l0aHViLmNvbS9weXBhL3BpcC9ibG9iL21hc3Rlci9waXAvdXRpbC5weQorZGVmIGFzayhtZXNzYWdlLCBvcHRpb25zKToKKyAgICAiIiJQcm9tcHQgdGhlIHVzZXIgd2l0aCAqbWVzc2FnZSo7ICpvcHRpb25zKiBjb250YWlucyBhbGxvd2VkIHJlc3BvbnNlcy4iIiIKKyAgICB3aGlsZSBUcnVlOgorICAgICAgICByZXNwb25zZSA9IGlucHV0KG1lc3NhZ2UpCisgICAgICAgIHJlc3BvbnNlID0gcmVzcG9uc2Uuc3RyaXAoKS5sb3dlcigpCisgICAgICAgIGlmIHJlc3BvbnNlIG5vdCBpbiBvcHRpb25zOgorICAgICAgICAgICAgcHJpbnQoJ2ludmFsaWQgcmVzcG9uc2U6JywgcmVwcihyZXNwb25zZSkpCisgICAgICAgICAgICBwcmludCgnY2hvb3NlIG9uZSBvZicsICcsICcuam9pbihyZXByKG8pIGZvciBvIGluIG9wdGlvbnMpKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlCisKKworZGVmIF9wYXJzZV9yZWNvcmRfZmlsZShyZWNvcmRfZmlsZSk6CisgICAgZGlzdGluZm8sIGV4dHJhX21ldGFkYXRhLCBpbnN0YWxsZWQgPSAoe30sIFtdLCBbXSkKKyAgICB3aXRoIG9wZW4ocmVjb3JkX2ZpbGUsICdyJykgYXMgcmZpbGU6CisgICAgICAgIGZvciBwYXRoIGluIHJmaWxlOgorICAgICAgICAgICAgcGF0aCA9IHBhdGguc3RyaXAoKQorICAgICAgICAgICAgaWYgcGF0aC5lbmRzd2l0aCgnZWdnLWluZm8nKSBhbmQgb3MucGF0aC5pc2ZpbGUocGF0aCk6CisgICAgICAgICAgICAgICAgZGlzdGluZm9fZGlyID0gcGF0aC5yZXBsYWNlKCdlZ2ctaW5mbycsICdkaXN0LWluZm8nKQorICAgICAgICAgICAgICAgIG1ldGFkYXRhID0gcGF0aAorICAgICAgICAgICAgICAgIGVnZ2luZm8gPSBwYXRoCisgICAgICAgICAgICBlbGlmIHBhdGguZW5kc3dpdGgoJ2VnZy1pbmZvJykgYW5kIG9zLnBhdGguaXNkaXIocGF0aCk6CisgICAgICAgICAgICAgICAgZGlzdGluZm9fZGlyID0gcGF0aC5yZXBsYWNlKCdlZ2ctaW5mbycsICdkaXN0LWluZm8nKQorICAgICAgICAgICAgICAgIGVnZ2luZm8gPSBwYXRoCisgICAgICAgICAgICAgICAgZm9yIG1ldGFkYXRhX2ZpbGUgaW4gb3MubGlzdGRpcihwYXRoKToKKyAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGFfZnBhdGggPSBvcy5wYXRoLmpvaW4ocGF0aCwgbWV0YWRhdGFfZmlsZSkKKyAgICAgICAgICAgICAgICAgICAgaWYgbWV0YWRhdGFfZmlsZSA9PSAnUEtHLUlORk8nOgorICAgICAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGEgPSBtZXRhZGF0YV9mcGF0aAorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgZXh0cmFfbWV0YWRhdGEuYXBwZW5kKG1ldGFkYXRhX2ZwYXRoKQorICAgICAgICAgICAgZWxpZiAnZWdnLWluZm8nIGluIHBhdGggYW5kIG9zLnBhdGguaXNmaWxlKHBhdGgpOgorICAgICAgICAgICAgICAgICMgc2tpcCBleHRyYSBtZXRhZGF0YSBmaWxlcworICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIGluc3RhbGxlZC5hcHBlbmQocGF0aCkKKworICAgIGRpc3RpbmZvWydlZ2dpbmZvJ10gPSBlZ2dpbmZvCisgICAgZGlzdGluZm9bJ21ldGFkYXRhJ10gPSBtZXRhZGF0YQorICAgIGRpc3RpbmZvWydkaXN0aW5mb19kaXInXSA9IGRpc3RpbmZvX2RpcgorICAgIGRpc3RpbmZvWydpbnN0YWxsZXJfcGF0aCddID0gb3MucGF0aC5qb2luKGRpc3RpbmZvX2RpciwgJ0lOU1RBTExFUicpCisgICAgZGlzdGluZm9bJ21ldGFkYXRhX3BhdGgnXSA9IG9zLnBhdGguam9pbihkaXN0aW5mb19kaXIsICdNRVRBREFUQScpCisgICAgZGlzdGluZm9bJ3JlY29yZF9wYXRoJ10gPSBvcy5wYXRoLmpvaW4oZGlzdGluZm9fZGlyLCAnUkVDT1JEJykKKyAgICBkaXN0aW5mb1sncmVxdWVzdGVkX3BhdGgnXSA9IG9zLnBhdGguam9pbihkaXN0aW5mb19kaXIsICdSRVFVRVNURUQnKQorICAgIGluc3RhbGxlZC5leHRlbmQoW2Rpc3RpbmZvWydpbnN0YWxsZXJfcGF0aCddLCBkaXN0aW5mb1snbWV0YWRhdGFfcGF0aCddXSkKKyAgICBkaXN0aW5mb1snaW5zdGFsbGVkJ10gPSBpbnN0YWxsZWQKKyAgICBkaXN0aW5mb1snZXh0cmFfbWV0YWRhdGEnXSA9IGV4dHJhX21ldGFkYXRhCisgICAgcmV0dXJuIGRpc3RpbmZvCisKKworZGVmIF93cml0ZV9yZWNvcmRfZmlsZShyZWNvcmRfcGF0aCwgaW5zdGFsbGVkX2ZpbGVzKToKKyAgICB3aXRoIG9wZW4ocmVjb3JkX3BhdGgsICd3JywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgZjoKKyAgICAgICAgd3JpdGVyID0gY3N2LndyaXRlcihmLCBkZWxpbWl0ZXI9JywnLCBsaW5ldGVybWluYXRvcj1vcy5saW5lc2VwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1b3RlY2hhcj0nIicpCisKKyAgICAgICAgZm9yIGZwYXRoIGluIGluc3RhbGxlZF9maWxlczoKKyAgICAgICAgICAgIGlmIGZwYXRoLmVuZHN3aXRoKCcucHljJykgb3IgZnBhdGguZW5kc3dpdGgoJy5weW8nKToKKyAgICAgICAgICAgICAgICAjIGRvIG5vdCBwdXQgc2l6ZSBhbmQgbWQ1IGhhc2gsIGFzIGluIFBFUC0zNzYKKyAgICAgICAgICAgICAgICB3cml0ZXIud3JpdGVyb3coKGZwYXRoLCAnJywgJycpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBoYXNoID0gaGFzaGxpYi5tZDUoKQorICAgICAgICAgICAgICAgIHdpdGggb3BlbihmcGF0aCwgJ3JiJykgYXMgZnA6CisgICAgICAgICAgICAgICAgICAgIGhhc2gudXBkYXRlKGZwLnJlYWQoKSkKKyAgICAgICAgICAgICAgICBtZDVzdW0gPSBoYXNoLmhleGRpZ2VzdCgpCisgICAgICAgICAgICAgICAgc2l6ZSA9IG9zLnBhdGguZ2V0c2l6ZShmcGF0aCkKKyAgICAgICAgICAgICAgICB3cml0ZXIud3JpdGVyb3coKGZwYXRoLCBtZDVzdW0sIHNpemUpKQorCisgICAgICAgICMgYWRkIHRoZSBSRUNPUkQgZmlsZSBpdHNlbGYKKyAgICAgICAgd3JpdGVyLndyaXRlcm93KChyZWNvcmRfcGF0aCwgJycsICcnKSkKKyAgICByZXR1cm4gcmVjb3JkX3BhdGgKKworCitkZWYgZWdnaW5mb190b19kaXN0aW5mbyhyZWNvcmRfZmlsZSwgaW5zdGFsbGVyPV9ERUZBVUxUX0lOU1RBTExFUiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RlZD1GYWxzZSwgcmVtb3ZlX2VnZ2luZm89RmFsc2UpOgorICAgICIiIkNyZWF0ZSBmaWxlcyBhbmQgZGlyZWN0b3JpZXMgcmVxdWlyZWQgZm9yIFBFUCAzNzYKKworICAgIDpwYXJhbSByZWNvcmRfZmlsZTogcGF0aCB0byBSRUNPUkQgZmlsZSBhcyBwcm9kdWNlZCBieSBzZXR1cC5weSAtLXJlY29yZAorICAgIDpwYXJhbSBpbnN0YWxsZXI6IGluc3RhbGxlciBuYW1lCisgICAgOnBhcmFtIHJlcXVlc3RlZDogVHJ1ZSBpZiBub3QgaW5zdGFsbGVkIGFzIGEgZGVwZW5kZW5jeQorICAgIDpwYXJhbSByZW1vdmVfZWdnaW5mbzogZGVsZXRlIGVnZ2luZm8gZGlyPworICAgICIiIgorICAgIGRpc3RpbmZvID0gX3BhcnNlX3JlY29yZF9maWxlKHJlY29yZF9maWxlKQorICAgIGRpc3RpbmZvX2RpciA9IGRpc3RpbmZvWydkaXN0aW5mb19kaXInXQorICAgIGlmIG9zLnBhdGguaXNkaXIoZGlzdGluZm9fZGlyKSBhbmQgbm90IG9zLnBhdGguaXNsaW5rKGRpc3RpbmZvX2Rpcik6CisgICAgICAgIHNodXRpbC5ybXRyZWUoZGlzdGluZm9fZGlyKQorICAgIGVsaWYgb3MucGF0aC5leGlzdHMoZGlzdGluZm9fZGlyKToKKyAgICAgICAgb3MudW5saW5rKGRpc3RpbmZvX2RpcikKKworICAgIG9zLm1ha2VkaXJzKGRpc3RpbmZvX2RpcikKKworICAgICMgY29weSBzZXR1cHRvb2xzIGV4dHJhIG1ldGFkYXRhIGZpbGVzCisgICAgaWYgZGlzdGluZm9bJ2V4dHJhX21ldGFkYXRhJ106CisgICAgICAgIGZvciBwYXRoIGluIGRpc3RpbmZvWydleHRyYV9tZXRhZGF0YSddOgorICAgICAgICAgICAgc2h1dGlsLmNvcHkyKHBhdGgsIGRpc3RpbmZvX2RpcikKKyAgICAgICAgICAgIG5ld19wYXRoID0gcGF0aC5yZXBsYWNlKCdlZ2ctaW5mbycsICdkaXN0LWluZm8nKQorICAgICAgICAgICAgZGlzdGluZm9bJ2luc3RhbGxlZCddLmFwcGVuZChuZXdfcGF0aCkKKworICAgIG1ldGFkYXRhX3BhdGggPSBkaXN0aW5mb1snbWV0YWRhdGFfcGF0aCddCisgICAgbG9nZ2VyLmluZm8oJ2NyZWF0aW5nICVzJywgbWV0YWRhdGFfcGF0aCkKKyAgICBzaHV0aWwuY29weTIoZGlzdGluZm9bJ21ldGFkYXRhJ10sIG1ldGFkYXRhX3BhdGgpCisKKyAgICBpbnN0YWxsZXJfcGF0aCA9IGRpc3RpbmZvWydpbnN0YWxsZXJfcGF0aCddCisgICAgbG9nZ2VyLmluZm8oJ2NyZWF0aW5nICVzJywgaW5zdGFsbGVyX3BhdGgpCisgICAgd2l0aCBvcGVuKGluc3RhbGxlcl9wYXRoLCAndycpIGFzIGY6CisgICAgICAgIGYud3JpdGUoaW5zdGFsbGVyKQorCisgICAgaWYgcmVxdWVzdGVkOgorICAgICAgICByZXF1ZXN0ZWRfcGF0aCA9IGRpc3RpbmZvWydyZXF1ZXN0ZWRfcGF0aCddCisgICAgICAgIGxvZ2dlci5pbmZvKCdjcmVhdGluZyAlcycsIHJlcXVlc3RlZF9wYXRoKQorICAgICAgICBvcGVuKHJlcXVlc3RlZF9wYXRoLCAnd2InKS5jbG9zZSgpCisgICAgICAgIGRpc3RpbmZvWydpbnN0YWxsZWQnXS5hcHBlbmQocmVxdWVzdGVkX3BhdGgpCisKKyAgICByZWNvcmRfcGF0aCA9IGRpc3RpbmZvWydyZWNvcmRfcGF0aCddCisgICAgbG9nZ2VyLmluZm8oJ2NyZWF0aW5nICVzJywgcmVjb3JkX3BhdGgpCisgICAgX3dyaXRlX3JlY29yZF9maWxlKHJlY29yZF9wYXRoLCBkaXN0aW5mb1snaW5zdGFsbGVkJ10pCisKKyAgICBpZiByZW1vdmVfZWdnaW5mbzoKKyAgICAgICAgZWdnaW5mbyA9IGRpc3RpbmZvWydlZ2dpbmZvJ10KKyAgICAgICAgbG9nZ2VyLmluZm8oJ3JlbW92aW5nICVzJywgZWdnaW5mbykKKyAgICAgICAgaWYgb3MucGF0aC5pc2ZpbGUoZWdnaW5mbyk6CisgICAgICAgICAgICBvcy5yZW1vdmUoZWdnaW5mbykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoZWdnaW5mbykKKworCitkZWYgX2hhc19lZ2dfaW5mbyhzcmNkaXIpOgorICAgIGlmIG9zLnBhdGguaXNkaXIoc3JjZGlyKToKKyAgICAgICAgZm9yIGl0ZW0gaW4gb3MubGlzdGRpcihzcmNkaXIpOgorICAgICAgICAgICAgZnVsbF9wYXRoID0gb3MucGF0aC5qb2luKHNyY2RpciwgaXRlbSkKKyAgICAgICAgICAgIGlmIGl0ZW0uZW5kc3dpdGgoJy5lZ2ctaW5mbycpIGFuZCBvcy5wYXRoLmlzZGlyKGZ1bGxfcGF0aCk6CisgICAgICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKCJGb3VuZCBlZ2ctaW5mbyBkaXJlY3RvcnkuIikKKyAgICAgICAgICAgICAgICByZXR1cm4gVHJ1ZQorICAgIGxvZ2dlci5kZWJ1ZygiTm8gZWdnLWluZm8gZGlyZWN0b3J5IGZvdW5kLiIpCisgICAgcmV0dXJuIEZhbHNlCisKKworZGVmIF9oYXNfc2V0dXB0b29sc190ZXh0KHNldHVwX3B5KToKKyAgICByZXR1cm4gX2hhc190ZXh0KHNldHVwX3B5LCAnc2V0dXB0b29scycpCisKKworZGVmIF9oYXNfZGlzdHV0aWxzX3RleHQoc2V0dXBfcHkpOgorICAgIHJldHVybiBfaGFzX3RleHQoc2V0dXBfcHksICdkaXN0dXRpbHMnKQorCisKK2RlZiBfaGFzX3RleHQoc2V0dXBfcHksIGluc3RhbGxlcik6CisgICAgaW5zdGFsbGVyX3BhdHRlcm4gPSByZS5jb21waWxlKCdpbXBvcnQgezB9fGZyb20gezB9Jy5mb3JtYXQoaW5zdGFsbGVyKSkKKyAgICB3aXRoIG9wZW4oc2V0dXBfcHksICdyJywgZW5jb2Rpbmc9J3V0Zi04JykgYXMgc2V0dXA6CisgICAgICAgIGZvciBsaW5lIGluIHNldHVwOgorICAgICAgICAgICAgaWYgcmUuc2VhcmNoKGluc3RhbGxlcl9wYXR0ZXJuLCBsaW5lKToKKyAgICAgICAgICAgICAgICBsb2dnZXIuZGVidWcoIkZvdW5kICVzIHRleHQgaW4gc2V0dXAucHkuIiwgaW5zdGFsbGVyKQorICAgICAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgbG9nZ2VyLmRlYnVnKCJObyAlcyB0ZXh0IGZvdW5kIGluIHNldHVwLnB5LiIsIGluc3RhbGxlcikKKyAgICByZXR1cm4gRmFsc2UKKworCitkZWYgX2hhc19yZXF1aXJlZF9tZXRhZGF0YShzZXR1cF9jZmcpOgorICAgIGNvbmZpZyA9IFJhd0NvbmZpZ1BhcnNlcigpCisgICAgY29uZmlnLnJlYWQoW3NldHVwX2NmZ10sIGVuY29kaW5nPSd1dGY4JykKKyAgICByZXR1cm4gKGNvbmZpZy5oYXNfc2VjdGlvbignbWV0YWRhdGEnKSBhbmQKKyAgICAgICAgICAgICduYW1lJyBpbiBjb25maWcub3B0aW9ucygnbWV0YWRhdGEnKSBhbmQKKyAgICAgICAgICAgICd2ZXJzaW9uJyBpbiBjb25maWcub3B0aW9ucygnbWV0YWRhdGEnKSkKKworCitkZWYgX2hhc19wa2dfaW5mbyhzcmNkaXIpOgorICAgIHBrZ19pbmZvID0gb3MucGF0aC5qb2luKHNyY2RpciwgJ1BLRy1JTkZPJykKKyAgICBoYXNfcGtnX2luZm8gPSBvcy5wYXRoLmlzZmlsZShwa2dfaW5mbykKKyAgICBpZiBoYXNfcGtnX2luZm86CisgICAgICAgIGxvZ2dlci5kZWJ1ZygiUEtHLUlORk8gZmlsZSBmb3VuZC4iKQorICAgIGVsc2U6CisgICAgICAgIGxvZ2dlci5kZWJ1ZygiTm8gUEtHLUlORk8gZmlsZSBmb3VuZC4iKQorICAgIHJldHVybiBoYXNfcGtnX2luZm8KKworCitkZWYgX2hhc19zZXR1cF9weShzcmNkaXIpOgorICAgIHNldHVwX3B5ID0gb3MucGF0aC5qb2luKHNyY2RpciwgJ3NldHVwLnB5JykKKyAgICBpZiBvcy5wYXRoLmlzZmlsZShzZXR1cF9weSk6CisgICAgICAgIGxvZ2dlci5kZWJ1Zygnc2V0dXAucHkgZmlsZSBmb3VuZC4nKQorICAgICAgICByZXR1cm4gVHJ1ZQorICAgIHJldHVybiBGYWxzZQorCisKK2RlZiBfaGFzX3NldHVwX2NmZyhzcmNkaXIpOgorICAgIHNldHVwX2NmZyA9IG9zLnBhdGguam9pbihzcmNkaXIsICdzZXR1cC5jZmcnKQorICAgIGlmIG9zLnBhdGguaXNmaWxlKHNldHVwX2NmZyk6CisgICAgICAgIGxvZ2dlci5kZWJ1Zygnc2V0dXAuY2ZnIGZpbGUgZm91bmQuJykKKyAgICAgICAgcmV0dXJuIFRydWUKKyAgICBsb2dnZXIuZGVidWcoIk5vIHNldHVwLmNmZyBmaWxlIGZvdW5kLiIpCisgICAgcmV0dXJuIEZhbHNlCisKKworZGVmIGlzX3NldHVwdG9vbHMocGF0aCk6CisgICAgIiIiQ2hlY2sgaWYgdGhlIHByb2plY3QgaXMgYmFzZWQgb24gc2V0dXB0b29scy4KKworICAgIDpwYXJhbSBwYXRoOiBwYXRoIHRvIHNvdXJjZSBkaXJlY3RvcnkgY29udGFpbmluZyBhIHNldHVwLnB5IHNjcmlwdC4KKworICAgIFJldHVybiBUcnVlIGlmIHRoZSBwcm9qZWN0IHJlcXVpcmVzIHNldHVwdG9vbHMgdG8gaW5zdGFsbCwgZWxzZSBGYWxzZS4KKyAgICAiIiIKKyAgICBzcmNkaXIgPSBvcy5wYXRoLmFic3BhdGgocGF0aCkKKyAgICBzZXR1cF9weSA9IG9zLnBhdGguam9pbihzcmNkaXIsICdzZXR1cC5weScpCisKKyAgICByZXR1cm4gX2hhc19zZXR1cF9weShzcmNkaXIpIGFuZCAoX2hhc19lZ2dfaW5mbyhzcmNkaXIpIG9yCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9oYXNfc2V0dXB0b29sc190ZXh0KHNldHVwX3B5KSkKKworCitkZWYgaXNfZGlzdHV0aWxzKHBhdGgpOgorICAgICIiIkNoZWNrIGlmIHRoZSBwcm9qZWN0IGlzIGJhc2VkIG9uIGRpc3R1dGlscy4KKworICAgIDpwYXJhbSBwYXRoOiBwYXRoIHRvIHNvdXJjZSBkaXJlY3RvcnkgY29udGFpbmluZyBhIHNldHVwLnB5IHNjcmlwdC4KKworICAgIFJldHVybiBUcnVlIGlmIHRoZSBwcm9qZWN0IHJlcXVpcmVzIGRpc3R1dGlscyB0byBpbnN0YWxsLCBlbHNlIEZhbHNlLgorICAgICIiIgorICAgIHNyY2RpciA9IG9zLnBhdGguYWJzcGF0aChwYXRoKQorICAgIHNldHVwX3B5ID0gb3MucGF0aC5qb2luKHNyY2RpciwgJ3NldHVwLnB5JykKKworICAgIHJldHVybiBfaGFzX3NldHVwX3B5KHNyY2RpcikgYW5kIChfaGFzX3BrZ19pbmZvKHNyY2Rpcikgb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2hhc19kaXN0dXRpbHNfdGV4dChzZXR1cF9weSkpCisKKworZGVmIGlzX3BhY2thZ2luZyhwYXRoKToKKyAgICAiIiJDaGVjayBpZiB0aGUgcHJvamVjdCBpcyBiYXNlZCBvbiBwYWNrYWdpbmcKKworICAgIDpwYXJhbSBwYXRoOiBwYXRoIHRvIHNvdXJjZSBkaXJlY3RvcnkgY29udGFpbmluZyBhIHNldHVwLmNmZyBmaWxlLgorCisgICAgUmV0dXJuIFRydWUgaWYgdGhlIHByb2plY3QgaGFzIGEgdmFsaWQgc2V0dXAuY2ZnLCBlbHNlIEZhbHNlLgorICAgICIiIgorICAgIHNyY2RpciA9IG9zLnBhdGguYWJzcGF0aChwYXRoKQorICAgIHNldHVwX2NmZyA9IG9zLnBhdGguam9pbihzcmNkaXIsICdzZXR1cC5jZmcnKQorCisgICAgcmV0dXJuIF9oYXNfc2V0dXBfY2ZnKHNyY2RpcikgYW5kIF9oYXNfcmVxdWlyZWRfbWV0YWRhdGEoc2V0dXBfY2ZnKQorCisKK2RlZiBnZXRfaW5zdGFsbF9tZXRob2QocGF0aCk6CisgICAgIiIiQ2hlY2sgaWYgdGhlIHByb2plY3QgaXMgYmFzZWQgb24gcGFja2FnaW5nLCBzZXR1cHRvb2xzLCBvciBkaXN0dXRpbHMKKworICAgIDpwYXJhbSBwYXRoOiBwYXRoIHRvIHNvdXJjZSBkaXJlY3RvcnkgY29udGFpbmluZyBhIHNldHVwLmNmZyBmaWxlLAorICAgICAgICAgICAgICAgICBvciBzZXR1cC5weS4KKworICAgIFJldHVybnMgYSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBiZXN0IGluc3RhbGwgbWV0aG9kIHRvIHVzZS4KKyAgICAiIiIKKyAgICBpZiBpc19wYWNrYWdpbmcocGF0aCk6CisgICAgICAgIHJldHVybiAicGFja2FnaW5nIgorICAgIGVsaWYgaXNfc2V0dXB0b29scyhwYXRoKToKKyAgICAgICAgcmV0dXJuICJzZXR1cHRvb2xzIgorICAgIGVsaWYgaXNfZGlzdHV0aWxzKHBhdGgpOgorICAgICAgICByZXR1cm4gImRpc3R1dGlscyIKKyAgICBlbHNlOgorICAgICAgICByYWlzZSBJbnN0YWxsYXRpb25FeGNlcHRpb24oJ0Nhbm5vdCBkZXRlY3QgaW5zdGFsbCBtZXRob2QnKQorCisKKyMgWFhYIHRvIGJlIHJlcGxhY2VkIGJ5IHNodXRpbC5jb3B5dHJlZQorZGVmIGNvcHlfdHJlZShzcmMsIGRzdCwgcHJlc2VydmVfbW9kZT1UcnVlLCBwcmVzZXJ2ZV90aW1lcz1UcnVlLAorICAgICAgICAgICAgICBwcmVzZXJ2ZV9zeW1saW5rcz1GYWxzZSwgdXBkYXRlPUZhbHNlLCBkcnlfcnVuPUZhbHNlKToKKyAgICAjIEZJWE1FIHVzZSBvZiB0aGlzIGZ1bmN0aW9uIGlzIHdoeSB3ZSBnZXQgc3B1cmlvdXMgbG9nZ2luZyBtZXNzYWdlIG9uCisgICAgIyBzdGRvdXQgd2hlbiB0ZXN0cyBydW47IGtpbGwgYW5kIHJlcGxhY2UgYnkgc2h1dGlsIQorICAgIGZyb20gZGlzdHV0aWxzLmZpbGVfdXRpbCBpbXBvcnQgY29weV9maWxlCisKKyAgICBpZiBub3QgZHJ5X3J1biBhbmQgbm90IG9zLnBhdGguaXNkaXIoc3JjKToKKyAgICAgICAgcmFpc2UgUGFja2FnaW5nRmlsZUVycm9yKAorICAgICAgICAgICAgICAiY2Fubm90IGNvcHkgdHJlZSAnJXMnOiBub3QgYSBkaXJlY3RvcnkiICUgc3JjKQorICAgIHRyeToKKyAgICAgICAgbmFtZXMgPSBvcy5saXN0ZGlyKHNyYykKKyAgICBleGNlcHQgb3MuZXJyb3IgYXMgZToKKyAgICAgICAgZXJyc3RyID0gZVsxXQorICAgICAgICBpZiBkcnlfcnVuOgorICAgICAgICAgICAgbmFtZXMgPSBbXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nRmlsZUVycm9yKAorICAgICAgICAgICAgICAgICAgImVycm9yIGxpc3RpbmcgZmlsZXMgaW4gJyVzJzogJXMiICUgKHNyYywgZXJyc3RyKSkKKworICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICBfbWtwYXRoKGRzdCkKKworICAgIG91dHB1dHMgPSBbXQorCisgICAgZm9yIG4gaW4gbmFtZXM6CisgICAgICAgIHNyY19uYW1lID0gb3MucGF0aC5qb2luKHNyYywgbikKKyAgICAgICAgZHN0X25hbWUgPSBvcy5wYXRoLmpvaW4oZHN0LCBuKQorCisgICAgICAgIGlmIHByZXNlcnZlX3N5bWxpbmtzIGFuZCBvcy5wYXRoLmlzbGluayhzcmNfbmFtZSk6CisgICAgICAgICAgICBsaW5rX2Rlc3QgPSBvcy5yZWFkbGluayhzcmNfbmFtZSkKKyAgICAgICAgICAgIGxvZ2dlci5pbmZvKCJsaW5raW5nICVzIC0+ICVzIiwgZHN0X25hbWUsIGxpbmtfZGVzdCkKKyAgICAgICAgICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICAgICAgICAgIG9zLnN5bWxpbmsobGlua19kZXN0LCBkc3RfbmFtZSkKKyAgICAgICAgICAgIG91dHB1dHMuYXBwZW5kKGRzdF9uYW1lKQorCisgICAgICAgIGVsaWYgb3MucGF0aC5pc2RpcihzcmNfbmFtZSk6CisgICAgICAgICAgICBvdXRwdXRzLmV4dGVuZCgKKyAgICAgICAgICAgICAgICBjb3B5X3RyZWUoc3JjX25hbWUsIGRzdF9uYW1lLCBwcmVzZXJ2ZV9tb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVzZXJ2ZV90aW1lcywgcHJlc2VydmVfc3ltbGlua3MsIHVwZGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZHJ5X3J1bj1kcnlfcnVuKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGNvcHlfZmlsZShzcmNfbmFtZSwgZHN0X25hbWUsIHByZXNlcnZlX21vZGUsCisgICAgICAgICAgICAgICAgICAgICAgcHJlc2VydmVfdGltZXMsIHVwZGF0ZSwgZHJ5X3J1bj1kcnlfcnVuKQorICAgICAgICAgICAgb3V0cHV0cy5hcHBlbmQoZHN0X25hbWUpCisKKyAgICByZXR1cm4gb3V0cHV0cworCisjIGNhY2hlIGZvciBieSBta3BhdGgoKSAtLSBpbiBhZGRpdGlvbiB0byBjaGVhcGVuaW5nIHJlZHVuZGFudCBjYWxscywKKyMgZWxpbWluYXRlcyByZWR1bmRhbnQgImNyZWF0aW5nIC9mb28vYmFyL2JheiIgbWVzc2FnZXMgaW4gZHJ5LXJ1biBtb2RlCitfcGF0aF9jcmVhdGVkID0gc2V0KCkKKworCisjIEkgZG9uJ3QgdXNlIG9zLm1ha2VkaXJzIGJlY2F1c2UgYSkgaXQncyBuZXcgdG8gUHl0aG9uIDEuNS4yLCBhbmQKKyMgYikgaXQgYmxvd3MgdXAgaWYgdGhlIGRpcmVjdG9yeSBhbHJlYWR5IGV4aXN0cyAoSSB3YW50IHRvIHNpbGVudGx5CisjIHN1Y2NlZWQgaW4gdGhhdCBjYXNlKS4KK2RlZiBfbWtwYXRoKG5hbWUsIG1vZGU9MG83NzcsIGRyeV9ydW49RmFsc2UpOgorICAgICMgRGV0ZWN0IGEgY29tbW9uIGJ1ZyAtLSBuYW1lIGlzIE5vbmUKKyAgICBpZiBub3QgaXNpbnN0YW5jZShuYW1lLCBzdHIpOgorICAgICAgICByYWlzZSBQYWNrYWdpbmdJbnRlcm5hbEVycm9yKAorICAgICAgICAgICAgICAibWtwYXRoOiAnbmFtZScgbXVzdCBiZSBhIHN0cmluZyAoZ290ICVyKSIgJSAobmFtZSwpKQorCisgICAgIyBYWFggd2hhdCdzIHRoZSBiZXR0ZXIgd2F5IHRvIGhhbmRsZSB2ZXJib3NpdHk/IHByaW50IGFzIHdlIGNyZWF0ZQorICAgICMgZWFjaCBkaXJlY3RvcnkgaW4gdGhlIHBhdGggKHRoZSBjdXJyZW50IGJlaGF2aW91ciksIG9yIG9ubHkgYW5ub3VuY2UKKyAgICAjIHRoZSBjcmVhdGlvbiBvZiB0aGUgd2hvbGUgcGF0aD8gKHF1aXRlIGVhc3kgdG8gZG8gdGhlIGxhdHRlciBzaW5jZQorICAgICMgd2UncmUgbm90IHVzaW5nIGEgcmVjdXJzaXZlIGFsZ29yaXRobSkKKworICAgIG5hbWUgPSBvcy5wYXRoLm5vcm1wYXRoKG5hbWUpCisgICAgY3JlYXRlZF9kaXJzID0gW10KKyAgICBpZiBvcy5wYXRoLmlzZGlyKG5hbWUpIG9yIG5hbWUgPT0gJyc6CisgICAgICAgIHJldHVybiBjcmVhdGVkX2RpcnMKKyAgICBpZiBvcy5wYXRoLmFic3BhdGgobmFtZSkgaW4gX3BhdGhfY3JlYXRlZDoKKyAgICAgICAgcmV0dXJuIGNyZWF0ZWRfZGlycworCisgICAgaGVhZCwgdGFpbCA9IG9zLnBhdGguc3BsaXQobmFtZSkKKyAgICB0YWlscyA9IFt0YWlsXSAgICAgICAgICAgICAgICAgICAgICAjIHN0YWNrIG9mIGxvbmUgZGlycyB0byBjcmVhdGUKKworICAgIHdoaWxlIGhlYWQgYW5kIHRhaWwgYW5kIG5vdCBvcy5wYXRoLmlzZGlyKGhlYWQpOgorICAgICAgICBoZWFkLCB0YWlsID0gb3MucGF0aC5zcGxpdChoZWFkKQorICAgICAgICB0YWlscy5pbnNlcnQoMCwgdGFpbCkgICAgICAgICAgIyBwdXNoIG5leHQgaGlnaGVyIGRpciBvbnRvIHN0YWNrCisKKyAgICAjIG5vdyAnaGVhZCcgY29udGFpbnMgdGhlIGRlZXBlc3QgZGlyZWN0b3J5IHRoYXQgYWxyZWFkeSBleGlzdHMKKyAgICAjICh0aGF0IGlzLCB0aGUgY2hpbGQgb2YgJ2hlYWQnIGluICduYW1lJyBpcyB0aGUgaGlnaGVzdCBkaXJlY3RvcnkKKyAgICAjIHRoYXQgZG9lcyAqbm90KiBleGlzdCkKKyAgICBmb3IgZCBpbiB0YWlsczoKKyAgICAgICAgaGVhZCA9IG9zLnBhdGguam9pbihoZWFkLCBkKQorICAgICAgICBhYnNfaGVhZCA9IG9zLnBhdGguYWJzcGF0aChoZWFkKQorCisgICAgICAgIGlmIGFic19oZWFkIGluIF9wYXRoX2NyZWF0ZWQ6CisgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgIGxvZ2dlci5pbmZvKCJjcmVhdGluZyAlcyIsIGhlYWQpCisgICAgICAgIGlmIG5vdCBkcnlfcnVuOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIG9zLm1rZGlyKGhlYWQsIG1vZGUpCisgICAgICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBleGM6CisgICAgICAgICAgICAgICAgaWYgbm90IChleGMuZXJybm8gPT0gZXJybm8uRUVYSVNUIGFuZCBvcy5wYXRoLmlzZGlyKGhlYWQpKToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgUGFja2FnaW5nRmlsZUVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgICAiY291bGQgbm90IGNyZWF0ZSAnJXMnOiAlcyIgJSAoaGVhZCwgZXhjLmFyZ3NbLTFdKSkKKyAgICAgICAgICAgIGNyZWF0ZWRfZGlycy5hcHBlbmQoaGVhZCkKKworICAgICAgICBfcGF0aF9jcmVhdGVkLmFkZChhYnNfaGVhZCkKKyAgICByZXR1cm4gY3JlYXRlZF9kaXJzCisKKworZGVmIGVuY29kZV9tdWx0aXBhcnQoZmllbGRzLCBmaWxlcywgYm91bmRhcnk9Tm9uZSk6CisgICAgIiIiUHJlcGFyZSBhIG11bHRpcGFydCBIVFRQIHJlcXVlc3QuCisKKyAgICAqZmllbGRzKiBpcyBhIHNlcXVlbmNlIG9mIChuYW1lOiBzdHIsIHZhbHVlOiBzdHIpIGVsZW1lbnRzIGZvciByZWd1bGFyCisgICAgZm9ybSBmaWVsZHMsICpmaWxlcyogaXMgYSBzZXF1ZW5jZSBvZiAobmFtZTogc3RyLCBmaWxlbmFtZTogc3RyLCB2YWx1ZToKKyAgICBieXRlcykgZWxlbWVudHMgZm9yIGRhdGEgdG8gYmUgdXBsb2FkZWQgYXMgZmlsZXMuCisKKyAgICBSZXR1cm5zIChjb250ZW50X3R5cGU6IGJ5dGVzLCBib2R5OiBieXRlcykgcmVhZHkgZm9yIGh0dHAuY2xpZW50LkhUVFAuCisgICAgIiIiCisgICAgIyBUYWtlbiBmcm9tIGh0dHA6Ly9jb2RlLmFjdGl2ZXN0YXRlLmNvbS9yZWNpcGVzLzE0NjMwNgorCisgICAgaWYgYm91bmRhcnkgaXMgTm9uZToKKyAgICAgICAgYm91bmRhcnkgPSBiJy0tLS0tLS0tLS0tLS0tR0hTS0ZKRExHRFM3NTQzRkpLTEZIUkU3NTY0Mjc1Njc0MzI1NCcKKyAgICBlbGlmIG5vdCBpc2luc3RhbmNlKGJvdW5kYXJ5LCBieXRlcyk6CisgICAgICAgIHJhaXNlIFR5cGVFcnJvcignYm91bmRhcnkgbXVzdCBiZSBieXRlcywgbm90ICVyJyAlIHR5cGUoYm91bmRhcnkpKQorCisgICAgbCA9IFtdCisgICAgZm9yIGtleSwgdmFsdWVzIGluIGZpZWxkczoKKyAgICAgICAgIyBoYW5kbGUgbXVsdGlwbGUgZW50cmllcyBmb3IgdGhlIHNhbWUgbmFtZQorICAgICAgICBpZiBub3QgaXNpbnN0YW5jZSh2YWx1ZXMsICh0dXBsZSwgbGlzdCkpOgorICAgICAgICAgICAgdmFsdWVzID0gW3ZhbHVlc10KKworICAgICAgICBmb3IgdmFsdWUgaW4gdmFsdWVzOgorICAgICAgICAgICAgbC5leHRlbmQoKAorICAgICAgICAgICAgICAgIGInLS0nICsgYm91bmRhcnksCisgICAgICAgICAgICAgICAgKCdDb250ZW50LURpc3Bvc2l0aW9uOiBmb3JtLWRhdGE7IG5hbWU9IiVzIicgJQorICAgICAgICAgICAgICAgICBrZXkpLmVuY29kZSgndXRmLTgnKSwKKyAgICAgICAgICAgICAgICBiJycsCisgICAgICAgICAgICAgICAgdmFsdWUuZW5jb2RlKCd1dGYtOCcpKSkKKworICAgIGZvciBrZXksIGZpbGVuYW1lLCB2YWx1ZSBpbiBmaWxlczoKKyAgICAgICAgbC5leHRlbmQoKAorICAgICAgICAgICAgYictLScgKyBib3VuZGFyeSwKKyAgICAgICAgICAgICgnQ29udGVudC1EaXNwb3NpdGlvbjogZm9ybS1kYXRhOyBuYW1lPSIlcyI7IGZpbGVuYW1lPSIlcyInICUKKyAgICAgICAgICAgICAoa2V5LCBmaWxlbmFtZSkpLmVuY29kZSgndXRmLTgnKSwKKyAgICAgICAgICAgIGInJywKKyAgICAgICAgICAgIHZhbHVlKSkKKworICAgIGwuYXBwZW5kKGInLS0nICsgYm91bmRhcnkgKyBiJy0tJykKKyAgICBsLmFwcGVuZChiJycpCisKKyAgICBib2R5ID0gYidcclxuJy5qb2luKGwpCisgICAgY29udGVudF90eXBlID0gYidtdWx0aXBhcnQvZm9ybS1kYXRhOyBib3VuZGFyeT0nICsgYm91bmRhcnkKKyAgICByZXR1cm4gY29udGVudF90eXBlLCBib2R5CmRpZmYgLS1naXQgYS9MaWIvcGFja2FnaW5nL3ZlcnNpb24ucHkgYi9MaWIvcGFja2FnaW5nL3ZlcnNpb24ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2Q4MTJiYgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi9wYWNrYWdpbmcvdmVyc2lvbi5weQpAQCAtMCwwICsxLDQ0OSBAQAorIiIiSW1wbGVtZW50YXRpb24gb2YgdGhlIHZlcnNpb25pbmcgc2NoZW1lIGRlZmluZWQgaW4gUEVQIDM4Ni4iIiIKKworaW1wb3J0IHJlCisKK2Zyb20gcGFja2FnaW5nLmVycm9ycyBpbXBvcnQgSXJyYXRpb25hbFZlcnNpb25FcnJvciwgSHVnZU1ham9yVmVyc2lvbk51bUVycm9yCisKK19fYWxsX18gPSBbJ05vcm1hbGl6ZWRWZXJzaW9uJywgJ3N1Z2dlc3Rfbm9ybWFsaXplZF92ZXJzaW9uJywKKyAgICAgICAgICAgJ1ZlcnNpb25QcmVkaWNhdGUnLCAnaXNfdmFsaWRfdmVyc2lvbicsICdpc192YWxpZF92ZXJzaW9ucycsCisgICAgICAgICAgICdpc192YWxpZF9wcmVkaWNhdGUnXQorCisjIEEgbWFya2VyIHVzZWQgaW4gdGhlIHNlY29uZCBhbmQgdGhpcmQgcGFydHMgb2YgdGhlIGBwYXJ0c2AgdHVwbGUsIGZvcgorIyB2ZXJzaW9ucyB0aGF0IGRvbid0IGhhdmUgdGhvc2Ugc2VnbWVudHMsIHRvIHNvcnQgcHJvcGVybHkuIEFuIGV4YW1wbGUKKyMgb2YgdmVyc2lvbnMgaW4gc29ydCBvcmRlciAoJ2hpZ2hlc3QnIGxhc3QpOgorIyAgIDEuMGIxICAgICAgICAgICAgICAgICAoKDEsMCksICgnYicsMSksICgnZicsKSkKKyMgICAxLjAuZGV2MzQ1ICAgICAgICAgICAgKCgxLDApLCAoJ2YnLCksICAoJ2RldicsIDM0NSkpCisjICAgMS4wICAgICAgICAgICAgICAgICAgICgoMSwwKSwgKCdmJywpLCAgKCdmJywpKQorIyAgIDEuMC5wb3N0MjU2LmRldjM0NSAgICAoKDEsMCksICgnZicsKSwgICgnZicsICdwb3N0JywgMjU2LCAnZGV2JywgMzQ1KSkKKyMgICAxLjAucG9zdDM0NSAgICAgICAgICAgKCgxLDApLCAoJ2YnLCksICAoJ2YnLCAncG9zdCcsIDM0NSwgJ2YnKSkKKyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgICAgIF4gICAgICAgICAgICAgICAgIF4KKyMgICAnYicgPCAnZicgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLyAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwKKyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwKKyMgICAnZGV2JyA8ICdmJyA8ICdwb3N0JyAtLS0tLS0tLS0tLS0tLS0tLS0tLyAgICAgICAgICAgICAgICAgIHwKKyMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyMgICAnZGV2JyA8ICdmJyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLworIyBPdGhlciBsZXR0ZXJzIHdvdWxkIGRvLCBidXQgJ2YnIGZvciAnZmluYWwnIGlzIGtpbmQgb2YgbmljZS4KK19GSU5BTF9NQVJLRVIgPSAoJ2YnLCkKKworX1ZFUlNJT05fUkUgPSByZS5jb21waWxlKHInJycKKyAgICBeCisgICAgKD9QPHZlcnNpb24+XGQrXC5cZCspICAgICAgICAgICMgbWluaW11bSAnTi5OJworICAgICg/UDxleHRyYXZlcnNpb24+KD86XC5cZCspKikgICAjIGFueSBudW1iZXIgb2YgZXh0cmEgJy5OJyBzZWdtZW50cworICAgICg/OgorICAgICAgICAoP1A8cHJlcmVsPlthYmNdfHJjKSAgICAgICAjICdhJz1hbHBoYSwgJ2InPWJldGEsICdjJz1yZWxlYXNlIGNhbmRpZGF0ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICdyYyc9IGFsaWFzIGZvciByZWxlYXNlIGNhbmRpZGF0ZQorICAgICAgICAoP1A8cHJlcmVsdmVyc2lvbj5cZCsoPzpcLlxkKykqKQorICAgICk/CisgICAgKD9QPHBvc3RkZXY+KFwucG9zdCg/UDxwb3N0PlxkKykpPyhcLmRldig/UDxkZXY+XGQrKSk/KT8KKyAgICAkJycnLCByZS5WRVJCT1NFKQorCisKK2NsYXNzIE5vcm1hbGl6ZWRWZXJzaW9uOgorICAgICIiIkEgcmF0aW9uYWwgdmVyc2lvbi4KKworICAgIEdvb2Q6CisgICAgICAgIDEuMiAgICAgICAgICMgZXF1aXZhbGVudCB0byAiMS4yLjAiCisgICAgICAgIDEuMi4wCisgICAgICAgIDEuMmExCisgICAgICAgIDEuMi4zYTIKKyAgICAgICAgMS4yLjNiMQorICAgICAgICAxLjIuM2MxCisgICAgICAgIDEuMi4zLjQKKyAgICAgICAgVE9ETzogZmlsbCB0aGlzIG91dAorCisgICAgQmFkOgorICAgICAgICAxICAgICAgICAgICAjIG1pbmludW0gdHdvIG51bWJlcnMKKyAgICAgICAgMS4yYSAgICAgICAgIyByZWxlYXNlIGxldmVsIG11c3QgaGF2ZSBhIHJlbGVhc2Ugc2VyaWFsCisgICAgICAgIDEuMi4zYgorICAgICIiIgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBzLCBlcnJvcl9vbl9odWdlX21ham9yX251bT1UcnVlKToKKyAgICAgICAgIiIiQ3JlYXRlIGEgTm9ybWFsaXplZFZlcnNpb24gaW5zdGFuY2UgZnJvbSBhIHZlcnNpb24gc3RyaW5nLgorCisgICAgICAgIEBwYXJhbSBzIHtzdHJ9IFRoZSB2ZXJzaW9uIHN0cmluZy4KKyAgICAgICAgQHBhcmFtIGVycm9yX29uX2h1Z2VfbWFqb3JfbnVtIHtib29sfSBXaGV0aGVyIHRvIGNvbnNpZGVyIGFuCisgICAgICAgICAgICBhcHBhcmVudCB1c2Ugb2YgYSB5ZWFyIG9yIGZ1bGwgZGF0ZSBhcyB0aGUgbWFqb3IgdmVyc2lvbiBudW1iZXIKKyAgICAgICAgICAgIGFuIGVycm9yLiBEZWZhdWx0IFRydWUuIE9uZSBvZiB0aGUgb2JzZXJ2ZWQgcGF0dGVybnMgb24gUHlQSSBiZWZvcmUKKyAgICAgICAgICAgIHRoZSBpbnRyb2R1Y3Rpb24gb2YgYE5vcm1hbGl6ZWRWZXJzaW9uYCB3YXMgdmVyc2lvbiBudW1iZXJzIGxpa2UKKyAgICAgICAgICAgIHRoaXM6CisgICAgICAgICAgICAgICAgMjAwOS4wMS4wMworICAgICAgICAgICAgICAgIDIwMDQwNjAzCisgICAgICAgICAgICAgICAgMjAwNS4wMQorICAgICAgICAgICAgVGhpcyBndWFyZCBpcyBoZXJlIHRvIHN0cm9uZ2x5IGVuY291cmFnZSB0aGUgcGFja2FnZSBhdXRob3IgdG8KKyAgICAgICAgICAgIHVzZSBhbiBhbHRlcm5hdGUgdmVyc2lvbiwgYmVjYXVzZSBhIHJlbGVhc2UgZGVwbG95ZWQgaW50byBQeVBJCisgICAgICAgICAgICBhbmQsIGUuZy4gZG93bnN0cmVhbSBMaW51eCBwYWNrYWdlIG1hbmFnZXJzLCB3aWxsIGZvcmV2ZXIgcmVtb3ZlCisgICAgICAgICAgICB0aGUgcG9zc2liaWxpdHkgb2YgdXNpbmcgYSB2ZXJzaW9uIG51bWJlciBsaWtlICIxLjAiIChpLmUuCisgICAgICAgICAgICB3aGVyZSB0aGUgbWFqb3IgbnVtYmVyIGlzIGxlc3MgdGhhbiB0aGF0IGh1Z2UgbWFqb3IgbnVtYmVyKS4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuaXNfZmluYWwgPSBUcnVlICAjIGJ5IGRlZmF1bHQsIGNvbnNpZGVyIGEgdmVyc2lvbiBhcyBmaW5hbC4KKyAgICAgICAgc2VsZi5fcGFyc2UocywgZXJyb3Jfb25faHVnZV9tYWpvcl9udW0pCisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgZnJvbV9wYXJ0cyhjbHMsIHZlcnNpb24sIHByZXJlbGVhc2U9X0ZJTkFMX01BUktFUiwKKyAgICAgICAgICAgICAgICAgICBkZXZwb3N0PV9GSU5BTF9NQVJLRVIpOgorICAgICAgICByZXR1cm4gY2xzKGNscy5wYXJ0c190b19zdHIoKHZlcnNpb24sIHByZXJlbGVhc2UsIGRldnBvc3QpKSkKKworICAgIGRlZiBfcGFyc2Uoc2VsZiwgcywgZXJyb3Jfb25faHVnZV9tYWpvcl9udW09VHJ1ZSk6CisgICAgICAgICIiIlBhcnNlcyBhIHN0cmluZyB2ZXJzaW9uIGludG8gcGFydHMuIiIiCisgICAgICAgIG1hdGNoID0gX1ZFUlNJT05fUkUuc2VhcmNoKHMpCisgICAgICAgIGlmIG5vdCBtYXRjaDoKKyAgICAgICAgICAgIHJhaXNlIElycmF0aW9uYWxWZXJzaW9uRXJyb3IocykKKworICAgICAgICBncm91cHMgPSBtYXRjaC5ncm91cGRpY3QoKQorICAgICAgICBwYXJ0cyA9IFtdCisKKyAgICAgICAgIyBtYWluIHZlcnNpb24KKyAgICAgICAgYmxvY2sgPSBzZWxmLl9wYXJzZV9udW1kb3RzKGdyb3Vwc1sndmVyc2lvbiddLCBzLCBGYWxzZSwgMikKKyAgICAgICAgZXh0cmF2ZXJzaW9uID0gZ3JvdXBzLmdldCgnZXh0cmF2ZXJzaW9uJykKKyAgICAgICAgaWYgZXh0cmF2ZXJzaW9uIG5vdCBpbiAoJycsIE5vbmUpOgorICAgICAgICAgICAgYmxvY2sgKz0gc2VsZi5fcGFyc2VfbnVtZG90cyhleHRyYXZlcnNpb25bMTpdLCBzKQorICAgICAgICBwYXJ0cy5hcHBlbmQodHVwbGUoYmxvY2spKQorCisgICAgICAgICMgcHJlcmVsZWFzZQorICAgICAgICBwcmVyZWwgPSBncm91cHMuZ2V0KCdwcmVyZWwnKQorICAgICAgICBpZiBwcmVyZWwgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBibG9jayA9IFtwcmVyZWxdCisgICAgICAgICAgICBibG9jayArPSBzZWxmLl9wYXJzZV9udW1kb3RzKGdyb3Vwcy5nZXQoJ3ByZXJlbHZlcnNpb24nKSwgcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkX3plcm9zX2xlbmd0aD0xKQorICAgICAgICAgICAgcGFydHMuYXBwZW5kKHR1cGxlKGJsb2NrKSkKKyAgICAgICAgICAgIHNlbGYuaXNfZmluYWwgPSBGYWxzZQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcGFydHMuYXBwZW5kKF9GSU5BTF9NQVJLRVIpCisKKyAgICAgICAgIyBwb3N0ZGV2CisgICAgICAgIGlmIGdyb3Vwcy5nZXQoJ3Bvc3RkZXYnKToKKyAgICAgICAgICAgIHBvc3QgPSBncm91cHMuZ2V0KCdwb3N0JykKKyAgICAgICAgICAgIGRldiA9IGdyb3Vwcy5nZXQoJ2RldicpCisgICAgICAgICAgICBwb3N0ZGV2ID0gW10KKyAgICAgICAgICAgIGlmIHBvc3QgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcG9zdGRldi5leHRlbmQoKF9GSU5BTF9NQVJLRVJbMF0sICdwb3N0JywgaW50KHBvc3QpKSkKKyAgICAgICAgICAgICAgICBpZiBkZXYgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgcG9zdGRldi5hcHBlbmQoX0ZJTkFMX01BUktFUlswXSkKKyAgICAgICAgICAgIGlmIGRldiBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBwb3N0ZGV2LmV4dGVuZCgoJ2RldicsIGludChkZXYpKSkKKyAgICAgICAgICAgICAgICBzZWxmLmlzX2ZpbmFsID0gRmFsc2UKKyAgICAgICAgICAgIHBhcnRzLmFwcGVuZCh0dXBsZShwb3N0ZGV2KSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHBhcnRzLmFwcGVuZChfRklOQUxfTUFSS0VSKQorICAgICAgICBzZWxmLnBhcnRzID0gdHVwbGUocGFydHMpCisgICAgICAgIGlmIGVycm9yX29uX2h1Z2VfbWFqb3JfbnVtIGFuZCBzZWxmLnBhcnRzWzBdWzBdID4gMTk4MDoKKyAgICAgICAgICAgIHJhaXNlIEh1Z2VNYWpvclZlcnNpb25OdW1FcnJvcigiaHVnZSBtYWpvciB2ZXJzaW9uIG51bWJlciwgJXIsICIKKyAgICAgICAgICAgICAgICJ3aGljaCBtaWdodCBjYXVzZSBmdXR1cmUgcHJvYmxlbXM6ICVyIiAlIChzZWxmLnBhcnRzWzBdWzBdLCBzKSkKKworICAgIGRlZiBfcGFyc2VfbnVtZG90cyhzZWxmLCBzLCBmdWxsX3Zlcl9zdHIsIGRyb3BfdHJhaWxpbmdfemVyb3M9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgcGFkX3plcm9zX2xlbmd0aD0wKToKKyAgICAgICAgIiIiUGFyc2UgJ04uTi5OJyBzZXF1ZW5jZXMsIHJldHVybiBhIGxpc3Qgb2YgaW50cy4KKworICAgICAgICBAcGFyYW0gcyB7c3RyfSAnTi5OLk4uLi4nIHNlcXVlbmNlIHRvIGJlIHBhcnNlZAorICAgICAgICBAcGFyYW0gZnVsbF92ZXJfc3RyIHtzdHJ9IFRoZSBmdWxsIHZlcnNpb24gc3RyaW5nIGZyb20gd2hpY2ggdGhpcworICAgICAgICAgICAgY29tZXMuIFVzZWQgZm9yIGVycm9yIHN0cmluZ3MuCisgICAgICAgIEBwYXJhbSBkcm9wX3RyYWlsaW5nX3plcm9zIHtib29sfSBXaGV0aGVyIHRvIGRyb3AgdHJhaWxpbmcgemVyb3MKKyAgICAgICAgICAgIGZyb20gdGhlIHJldHVybmVkIGxpc3QuIERlZmF1bHQgVHJ1ZS4KKyAgICAgICAgQHBhcmFtIHBhZF96ZXJvc19sZW5ndGgge2ludH0gVGhlIGxlbmd0aCB0byB3aGljaCB0byBwYWQgdGhlCisgICAgICAgICAgICByZXR1cm5lZCBsaXN0IHdpdGggemVyb3MsIGlmIG5lY2Vzc2FyeS4gRGVmYXVsdCAwLgorICAgICAgICAiIiIKKyAgICAgICAgbnVtcyA9IFtdCisgICAgICAgIGZvciBuIGluIHMuc3BsaXQoIi4iKToKKyAgICAgICAgICAgIGlmIGxlbihuKSA+IDEgYW5kIG5bMF0gPT0gJzAnOgorICAgICAgICAgICAgICAgIHJhaXNlIElycmF0aW9uYWxWZXJzaW9uRXJyb3IoImNhbm5vdCBoYXZlIGxlYWRpbmcgemVybyBpbiAiCisgICAgICAgICAgICAgICAgICAgICJ2ZXJzaW9uIG51bWJlciBzZWdtZW50OiAnJXMnIGluICVyIiAlIChuLCBmdWxsX3Zlcl9zdHIpKQorICAgICAgICAgICAgbnVtcy5hcHBlbmQoaW50KG4pKQorICAgICAgICBpZiBkcm9wX3RyYWlsaW5nX3plcm9zOgorICAgICAgICAgICAgd2hpbGUgbnVtcyBhbmQgbnVtc1stMV0gPT0gMDoKKyAgICAgICAgICAgICAgICBudW1zLnBvcCgpCisgICAgICAgIHdoaWxlIGxlbihudW1zKSA8IHBhZF96ZXJvc19sZW5ndGg6CisgICAgICAgICAgICBudW1zLmFwcGVuZCgwKQorICAgICAgICByZXR1cm4gbnVtcworCisgICAgZGVmIF9fc3RyX18oc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLnBhcnRzX3RvX3N0cihzZWxmLnBhcnRzKQorCisgICAgQGNsYXNzbWV0aG9kCisgICAgZGVmIHBhcnRzX3RvX3N0cihjbHMsIHBhcnRzKToKKyAgICAgICAgIiIiVHJhbnNmb3JtcyBhIHZlcnNpb24gZXhwcmVzc2VkIGluIHR1cGxlIGludG8gaXRzIHN0cmluZworICAgICAgICByZXByZXNlbnRhdGlvbi4iIiIKKyAgICAgICAgIyBYWFggVGhpcyBkb2Vzbid0IGNoZWNrIGZvciBpbnZhbGlkIHR1cGxlcworICAgICAgICBtYWluLCBwcmVyZWwsIHBvc3RkZXYgPSBwYXJ0cworICAgICAgICBzID0gJy4nLmpvaW4oc3RyKHYpIGZvciB2IGluIG1haW4pCisgICAgICAgIGlmIHByZXJlbCBpcyBub3QgX0ZJTkFMX01BUktFUjoKKyAgICAgICAgICAgIHMgKz0gcHJlcmVsWzBdCisgICAgICAgICAgICBzICs9ICcuJy5qb2luKHN0cih2KSBmb3IgdiBpbiBwcmVyZWxbMTpdKQorICAgICAgICBpZiBwb3N0ZGV2IGFuZCBwb3N0ZGV2IGlzIG5vdCBfRklOQUxfTUFSS0VSOgorICAgICAgICAgICAgaWYgcG9zdGRldlswXSA9PSAnZic6CisgICAgICAgICAgICAgICAgcG9zdGRldiA9IHBvc3RkZXZbMTpdCisgICAgICAgICAgICBpID0gMAorICAgICAgICAgICAgd2hpbGUgaSA8IGxlbihwb3N0ZGV2KToKKyAgICAgICAgICAgICAgICBpZiBpICUgMiA9PSAwOgorICAgICAgICAgICAgICAgICAgICBzICs9ICcuJworICAgICAgICAgICAgICAgIHMgKz0gc3RyKHBvc3RkZXZbaV0pCisgICAgICAgICAgICAgICAgaSArPSAxCisgICAgICAgIHJldHVybiBzCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiAiJXMoJyVzJykiICUgKHNlbGYuX19jbGFzc19fLl9fbmFtZV9fLCBzZWxmKQorCisgICAgZGVmIF9jYW5ub3RfY29tcGFyZShzZWxmLCBvdGhlcik6CisgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiY2Fubm90IGNvbXBhcmUgJXMgYW5kICVzIgorICAgICAgICAgICAgICAgICUgKHR5cGUoc2VsZikuX19uYW1lX18sIHR5cGUob3RoZXIpLl9fbmFtZV9fKSkKKworICAgIGRlZiBfX2VxX18oc2VsZiwgb3RoZXIpOgorICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShvdGhlciwgTm9ybWFsaXplZFZlcnNpb24pOgorICAgICAgICAgICAgc2VsZi5fY2Fubm90X2NvbXBhcmUob3RoZXIpCisgICAgICAgIHJldHVybiBzZWxmLnBhcnRzID09IG90aGVyLnBhcnRzCisKKyAgICBkZWYgX19sdF9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2Uob3RoZXIsIE5vcm1hbGl6ZWRWZXJzaW9uKToKKyAgICAgICAgICAgIHNlbGYuX2Nhbm5vdF9jb21wYXJlKG90aGVyKQorICAgICAgICByZXR1cm4gc2VsZi5wYXJ0cyA8IG90aGVyLnBhcnRzCisKKyAgICBkZWYgX19uZV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIG5vdCBzZWxmLl9fZXFfXyhvdGhlcikKKworICAgIGRlZiBfX2d0X18oc2VsZiwgb3RoZXIpOgorICAgICAgICByZXR1cm4gbm90IChzZWxmLl9fbHRfXyhvdGhlcikgb3Igc2VsZi5fX2VxX18ob3RoZXIpKQorCisgICAgZGVmIF9fbGVfXyhzZWxmLCBvdGhlcik6CisgICAgICAgIHJldHVybiBzZWxmLl9fZXFfXyhvdGhlcikgb3Igc2VsZi5fX2x0X18ob3RoZXIpCisKKyAgICBkZWYgX19nZV9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgcmV0dXJuIHNlbGYuX19lcV9fKG90aGVyKSBvciBzZWxmLl9fZ3RfXyhvdGhlcikKKworICAgICMgU2VlIGh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvcmVmZXJlbmNlL2RhdGFtb2RlbCNvYmplY3QuX19oYXNoX18KKyAgICBkZWYgX19oYXNoX18oc2VsZik6CisgICAgICAgIHJldHVybiBoYXNoKHNlbGYucGFydHMpCisKKworZGVmIHN1Z2dlc3Rfbm9ybWFsaXplZF92ZXJzaW9uKHMpOgorICAgICIiIlN1Z2dlc3QgYSBub3JtYWxpemVkIHZlcnNpb24gY2xvc2UgdG8gdGhlIGdpdmVuIHZlcnNpb24gc3RyaW5nLgorCisgICAgSWYgeW91IGhhdmUgYSB2ZXJzaW9uIHN0cmluZyB0aGF0IGlzbid0IHJhdGlvbmFsIChpLmUuIE5vcm1hbGl6ZWRWZXJzaW9uCisgICAgZG9lc24ndCBsaWtlIGl0KSB0aGVuIHlvdSBtaWdodCBiZSBhYmxlIHRvIGdldCBhbiBlcXVpdmFsZW50IChvciBjbG9zZSkKKyAgICByYXRpb25hbCB2ZXJzaW9uIGZyb20gdGhpcyBmdW5jdGlvbi4KKworICAgIFRoaXMgZG9lcyBhIG51bWJlciBvZiBzaW1wbGUgbm9ybWFsaXphdGlvbnMgdG8gdGhlIGdpdmVuIHN0cmluZywgYmFzZWQKKyAgICBvbiBvYnNlcnZhdGlvbiBvZiB2ZXJzaW9ucyBjdXJyZW50bHkgaW4gdXNlIG9uIFB5UEkuIEdpdmVuIGEgZHVtcCBvZgorICAgIHRob3NlIHZlcnNpb24gZHVyaW5nIFB5Q29uIDIwMDksIDQyODcgb2YgdGhlbToKKyAgICAtIDIzMTIgKDUzLjkzJSkgbWF0Y2ggTm9ybWFsaXplZFZlcnNpb24gd2l0aG91dCBjaGFuZ2UKKyAgICAgIHdpdGggdGhlIGF1dG9tYXRpYyBzdWdnZXN0aW9uCisgICAgLSAzNDc0ICg4MS4wNCUpIG1hdGNoIHdoZW4gdXNpbmcgdGhpcyBzdWdnZXN0aW9uIG1ldGhvZAorCisgICAgQHBhcmFtIHMge3N0cn0gQW4gaXJyYXRpb25hbCB2ZXJzaW9uIHN0cmluZy4KKyAgICBAcmV0dXJucyBBIHJhdGlvbmFsIHZlcnNpb24gc3RyaW5nLCBvciBOb25lLCBpZiBjb3VsZG4ndCBkZXRlcm1pbmUgb25lLgorICAgICIiIgorICAgIHRyeToKKyAgICAgICAgTm9ybWFsaXplZFZlcnNpb24ocykKKyAgICAgICAgcmV0dXJuIHMgICAjIGFscmVhZHkgcmF0aW9uYWwKKyAgICBleGNlcHQgSXJyYXRpb25hbFZlcnNpb25FcnJvcjoKKyAgICAgICAgcGFzcworCisgICAgcnMgPSBzLmxvd2VyKCkKKworICAgICMgcGFydCBvZiB0aGlzIGNvdWxkIHVzZSBtYWtldHJhbnMKKyAgICBmb3Igb3JpZywgcmVwbCBpbiAoKCctYWxwaGEnLCAnYScpLCAoJy1iZXRhJywgJ2InKSwgKCdhbHBoYScsICdhJyksCisgICAgICAgICAgICAgICAgICAgICAgICgnYmV0YScsICdiJyksICgncmMnLCAnYycpLCAoJy1maW5hbCcsICcnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgKCctcHJlJywgJ2MnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgKCctcmVsZWFzZScsICcnKSwgKCcucmVsZWFzZScsICcnKSwgKCctc3RhYmxlJywgJycpLAorICAgICAgICAgICAgICAgICAgICAgICAoJysnLCAnLicpLCAoJ18nLCAnLicpLCAoJyAnLCAnJyksICgnLmZpbmFsJywgJycpLAorICAgICAgICAgICAgICAgICAgICAgICAoJ2ZpbmFsJywgJycpKToKKyAgICAgICAgcnMgPSBycy5yZXBsYWNlKG9yaWcsIHJlcGwpCisKKyAgICAjIGlmIHNvbWV0aGluZyBlbmRzIHdpdGggZGV2IG9yIHByZSwgd2UgYWRkIGEgMAorICAgIHJzID0gcmUuc3ViKHIicHJlJCIsIHIicHJlMCIsIHJzKQorICAgIHJzID0gcmUuc3ViKHIiZGV2JCIsIHIiZGV2MCIsIHJzKQorCisgICAgIyBpZiB3ZSBoYXZlIHNvbWV0aGluZyBsaWtlICJiLTIiIG9yICJhLjIiIGF0IHRoZSBlbmQgb2YgdGhlCisgICAgIyB2ZXJzaW9uLCB0aGF0IGlzIHBvYmFibHkgYmV0YSwgYWxwaGEsIGV0YworICAgICMgbGV0J3MgcmVtb3ZlIHRoZSBkYXNoIG9yIGRvdAorICAgIHJzID0gcmUuc3ViKHIiKFthYmNdfHJjKVtcLVwuXShcZCspJCIsIHIiXDFcMiIsIHJzKQorCisgICAgIyAxLjAtZGV2LXIzNzEgLT4gMS4wLmRldjM3MQorICAgICMgMC4xLWRldi1yNzkgLT4gMC4xLmRldjc5CisgICAgcnMgPSByZS5zdWIociJbXC1cLl0oZGV2KVtcLVwuXT9yPyhcZCspJCIsIHIiLlwxXDIiLCBycykKKworICAgICMgQ2xlYW46IDIuMC5hLjMsIDIuMC5iMSwgMC45LjB+YzEKKyAgICBycyA9IHJlLnN1YihyIlsufl0/KFthYmNdKVwuPyIsIHIiXDEiLCBycykKKworICAgICMgQ2xlYW46IHYwLjMsIHYxLjAKKyAgICBpZiBycy5zdGFydHN3aXRoKCd2Jyk6CisgICAgICAgIHJzID0gcnNbMTpdCisKKyAgICAjIENsZWFuIGxlYWRpbmcgJzAncyBvbiBudW1iZXJzLgorICAgICNUT0RPOiB1bmludGVuZGVkIHNpZGUtZWZmZWN0IG9uLCBlLmcuLCAiMjAwMy4wNS4wOSIKKyAgICAjIFB5UEkgc3RhdHM6IDc3ICh+MiUpIGJldHRlcgorICAgIHJzID0gcmUuc3ViKHIiXGIwKyhcZCspKD8hXGQpIiwgciJcMSIsIHJzKQorCisgICAgIyBDbGVhbiBhL2IvYyB3aXRoIG5vIHZlcnNpb24uIEUuZy4gIjEuMGEiIC0+ICIxLjBhMCIuIFNldHVwdG9vbHMgaW5mZXJzCisgICAgIyB6ZXJvLgorICAgICMgUHlQSSBzdGF0czogMjQ1ICg3LjU2JSkgYmV0dGVyCisgICAgcnMgPSByZS5zdWIociIoXGQrW2FiY10pJCIsIHIiXGc8MT4wIiwgcnMpCisKKyAgICAjIHRoZSAnZGV2LXJOTk4nIHRhZyBpcyBhIGRldiB0YWcKKyAgICBycyA9IHJlLnN1YihyIlwuPyhkZXYtcnxkZXZcLnIpXC4/KFxkKykkIiwgciIuZGV2XDIiLCBycykKKworICAgICMgY2xlYW4gdGhlIC0gd2hlbiB1c2VkIGFzIGEgcHJlIGRlbGltaXRlcgorICAgIHJzID0gcmUuc3ViKHIiLShhfGJ8YykoXGQrKSQiLCByIlwxXDIiLCBycykKKworICAgICMgYSB0ZXJtaW5hbCAiZGV2IiBvciAiZGV2ZWwiIGNhbiBiZSBjaGFuZ2VkIGludG8gIi5kZXYwIgorICAgIHJzID0gcmUuc3ViKHIiW1wuXC1dKGRldnxkZXZlbCkkIiwgciIuZGV2MCIsIHJzKQorCisgICAgIyBhIHRlcm1pbmFsICJkZXYiIGNhbiBiZSBjaGFuZ2VkIGludG8gIi5kZXYwIgorICAgIHJzID0gcmUuc3ViKHIiKD8hW1wuXC1dKWRldiQiLCByIi5kZXYwIiwgcnMpCisKKyAgICAjIGEgdGVybWluYWwgImZpbmFsIiBvciAic3RhYmxlIiBjYW4gYmUgcmVtb3ZlZAorICAgIHJzID0gcmUuc3ViKHIiKGZpbmFsfHN0YWJsZSkkIiwgIiIsIHJzKQorCisgICAgIyBUaGUgJ3InIGFuZCB0aGUgJy0nIHRhZ3MgYXJlIHBvc3QgcmVsZWFzZSB0YWdzCisgICAgIyAgIDAuNGExLnIxMCAgICAgICAtPiAgMC40YTEucG9zdDEwCisgICAgIyAgIDAuOS4zMy0xNzIyMiAgICAtPiAgMC45LjMucG9zdDE3MjIyCisgICAgIyAgIDAuOS4zMy1yMTcyMjIgICAtPiAgMC45LjMucG9zdDE3MjIyCisgICAgcnMgPSByZS5zdWIociJcLj8ocnwtfC1yKVwuPyhcZCspJCIsIHIiLnBvc3RcMiIsIHJzKQorCisgICAgIyBDbGVhbiAncicgaW5zdGVhZCBvZiAnZGV2JyB1c2FnZToKKyAgICAjICAgMC45LjMzK3IxNzIyMiAgIC0+ICAwLjkuMy5kZXYxNzIyMgorICAgICMgICAxLjBkZXYxMjMgICAgICAgLT4gIDEuMC5kZXYxMjMKKyAgICAjICAgMS4wLmdpdDEyMyAgICAgIC0+ICAxLjAuZGV2MTIzCisgICAgIyAgIDEuMC5ienIxMjMgICAgICAtPiAgMS4wLmRldjEyMworICAgICMgICAwLjFhMGRldi4xMjMgICAgLT4gIDAuMWEwLmRldjEyMworICAgICMgUHlQSSBzdGF0czogIH4xNTAgKH40JSkgYmV0dGVyCisgICAgcnMgPSByZS5zdWIociJcLj8oZGV2fGdpdHxienIpXC4/KFxkKykkIiwgciIuZGV2XDIiLCBycykKKworICAgICMgQ2xlYW4gJy5wcmUnIChub3JtYWxpemVkIGZyb20gJy1wcmUnIGFib3ZlKSBpbnN0ZWFkIG9mICdjJyB1c2FnZToKKyAgICAjICAgMC4yLnByZTEgICAgICAgIC0+ICAwLjJjMQorICAgICMgICAwLjItYzEgICAgICAgICAtPiAgMC4yYzEKKyAgICAjICAgMS4wcHJldmlldzEyMyAgIC0+ICAxLjBjMTIzCisgICAgIyBQeVBJIHN0YXRzOiB+MjEgKDAuNjIlKSBiZXR0ZXIKKyAgICBycyA9IHJlLnN1YihyIlwuPyhwcmV8cHJldmlld3wtYykoXGQrKSQiLCByImNcZzwyPiIsIHJzKQorCisgICAgIyBUY2wvVGsgdXNlcyAicHgiIGZvciB0aGVpciBwb3N0IHJlbGVhc2UgbWFya2VycworICAgIHJzID0gcmUuc3ViKHIicChcZCspJCIsIHIiLnBvc3RcMSIsIHJzKQorCisgICAgdHJ5OgorICAgICAgICBOb3JtYWxpemVkVmVyc2lvbihycykKKyAgICAgICAgcmV0dXJuIHJzICAgIyBhbHJlYWR5IHJhdGlvbmFsCisgICAgZXhjZXB0IElycmF0aW9uYWxWZXJzaW9uRXJyb3I6CisgICAgICAgIHBhc3MKKyAgICByZXR1cm4gTm9uZQorCisKKyMgQSBwcmVkaWNhdGUgaXM6ICJQcm9qZWN0TmFtZSAoVkVSU0lPTjEsIFZFUlNJT04yLCAuLikKK19QUkVESUNBVEUgPSByZS5jb21waWxlKHIiKD9pKV5ccyooXHdbXHNcdy1dKig/OlwuXHcqKSopKC4qKSIpCitfVkVSU0lPTlMgPSByZS5jb21waWxlKHIiXlxzKlwoKD9QPHZlcnNpb25zPi4qKVwpXHMqJHxeXHMqIgorICAgICAgICAgICAgICAgICAgICAgICAgIig/UDx2ZXJzaW9uczI+LiopXHMqJCIpCitfUExBSU5fVkVSU0lPTlMgPSByZS5jb21waWxlKHIiXlxzKiguKilccyokIikKK19TUExJVF9DTVAgPSByZS5jb21waWxlKHIiXlxzKig8PXw+PXw8fD58IT18PT0pXHMqKFteXHMsXSspXHMqJCIpCisKKworZGVmIF9zcGxpdF9wcmVkaWNhdGUocHJlZGljYXRlKToKKyAgICBtYXRjaCA9IF9TUExJVF9DTVAubWF0Y2gocHJlZGljYXRlKQorICAgIGlmIG1hdGNoIGlzIE5vbmU6CisgICAgICAgICMgcHJvYmFibHkgbm8gb3AsIHdlJ2xsIHVzZSAiPT0iCisgICAgICAgIGNvbXAsIHZlcnNpb24gPSAnPT0nLCBwcmVkaWNhdGUKKyAgICBlbHNlOgorICAgICAgICBjb21wLCB2ZXJzaW9uID0gbWF0Y2guZ3JvdXBzKCkKKyAgICByZXR1cm4gY29tcCwgTm9ybWFsaXplZFZlcnNpb24odmVyc2lvbikKKworCitjbGFzcyBWZXJzaW9uUHJlZGljYXRlOgorICAgICIiIkRlZmluZXMgYSBwcmVkaWNhdGU6IFByb2plY3ROYW1lICg+dmVyMSx2ZXIyLCAuLikiIiIKKworICAgIF9vcGVyYXRvcnMgPSB7IjwiOiBsYW1iZGEgeCwgeTogeCA8IHksCisgICAgICAgICAgICAgICAgICAiPiI6IGxhbWJkYSB4LCB5OiB4ID4geSwKKyAgICAgICAgICAgICAgICAgICI8PSI6IGxhbWJkYSB4LCB5OiBzdHIoeCkuc3RhcnRzd2l0aChzdHIoeSkpIG9yIHggPCB5LAorICAgICAgICAgICAgICAgICAgIj49IjogbGFtYmRhIHgsIHk6IHN0cih4KS5zdGFydHN3aXRoKHN0cih5KSkgb3IgeCA+IHksCisgICAgICAgICAgICAgICAgICAiPT0iOiBsYW1iZGEgeCwgeTogc3RyKHgpLnN0YXJ0c3dpdGgoc3RyKHkpKSwKKyAgICAgICAgICAgICAgICAgICIhPSI6IGxhbWJkYSB4LCB5OiBub3Qgc3RyKHgpLnN0YXJ0c3dpdGgoc3RyKHkpKSwKKyAgICAgICAgICAgICAgICAgIH0KKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwcmVkaWNhdGUpOgorICAgICAgICBzZWxmLl9zdHJpbmcgPSBwcmVkaWNhdGUKKyAgICAgICAgcHJlZGljYXRlID0gcHJlZGljYXRlLnN0cmlwKCkKKyAgICAgICAgbWF0Y2ggPSBfUFJFRElDQVRFLm1hdGNoKHByZWRpY2F0ZSkKKyAgICAgICAgaWYgbWF0Y2ggaXMgTm9uZToKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ0JhZCBwcmVkaWNhdGUgIiVzIicgJSBwcmVkaWNhdGUpCisKKyAgICAgICAgbmFtZSwgcHJlZGljYXRlcyA9IG1hdGNoLmdyb3VwcygpCisgICAgICAgIHNlbGYubmFtZSA9IG5hbWUuc3RyaXAoKQorICAgICAgICBzZWxmLnByZWRpY2F0ZXMgPSBbXQorICAgICAgICBpZiBwcmVkaWNhdGVzIGlzIE5vbmU6CisgICAgICAgICAgICByZXR1cm4KKworICAgICAgICBwcmVkaWNhdGVzID0gX1ZFUlNJT05TLm1hdGNoKHByZWRpY2F0ZXMuc3RyaXAoKSkKKyAgICAgICAgaWYgcHJlZGljYXRlcyBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgcHJlZGljYXRlcyA9IHByZWRpY2F0ZXMuZ3JvdXBkaWN0KCkKKyAgICAgICAgaWYgcHJlZGljYXRlc1sndmVyc2lvbnMnXSBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHZlcnNpb25zID0gcHJlZGljYXRlc1sndmVyc2lvbnMnXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgdmVyc2lvbnMgPSBwcmVkaWNhdGVzLmdldCgndmVyc2lvbnMyJykKKworICAgICAgICBpZiB2ZXJzaW9ucyBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIGZvciB2ZXJzaW9uIGluIHZlcnNpb25zLnNwbGl0KCcsJyk6CisgICAgICAgICAgICAgICAgaWYgdmVyc2lvbi5zdHJpcCgpID09ICcnOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIHNlbGYucHJlZGljYXRlcy5hcHBlbmQoX3NwbGl0X3ByZWRpY2F0ZSh2ZXJzaW9uKSkKKworICAgIGRlZiBtYXRjaChzZWxmLCB2ZXJzaW9uKToKKyAgICAgICAgIiIiQ2hlY2sgaWYgdGhlIHByb3ZpZGVkIHZlcnNpb24gbWF0Y2hlcyB0aGUgcHJlZGljYXRlcy4iIiIKKyAgICAgICAgaWYgaXNpbnN0YW5jZSh2ZXJzaW9uLCBzdHIpOgorICAgICAgICAgICAgdmVyc2lvbiA9IE5vcm1hbGl6ZWRWZXJzaW9uKHZlcnNpb24pCisgICAgICAgIGZvciBvcGVyYXRvciwgcHJlZGljYXRlIGluIHNlbGYucHJlZGljYXRlczoKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLl9vcGVyYXRvcnNbb3BlcmF0b3JdKHZlcnNpb24sIHByZWRpY2F0ZSk6CisgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgIHJldHVybiBUcnVlCisKKyAgICBkZWYgX19yZXByX18oc2VsZik6CisgICAgICAgIHJldHVybiBzZWxmLl9zdHJpbmcKKworCitjbGFzcyBfVmVyc2lvbnMoVmVyc2lvblByZWRpY2F0ZSk6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsIHByZWRpY2F0ZSk6CisgICAgICAgIHByZWRpY2F0ZSA9IHByZWRpY2F0ZS5zdHJpcCgpCisgICAgICAgIG1hdGNoID0gX1BMQUlOX1ZFUlNJT05TLm1hdGNoKHByZWRpY2F0ZSkKKyAgICAgICAgc2VsZi5uYW1lID0gTm9uZQorICAgICAgICBwcmVkaWNhdGVzID0gbWF0Y2guZ3JvdXBzKClbMF0KKyAgICAgICAgc2VsZi5wcmVkaWNhdGVzID0gW19zcGxpdF9wcmVkaWNhdGUocHJlZC5zdHJpcCgpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIHByZWQgaW4gcHJlZGljYXRlcy5zcGxpdCgnLCcpXQorCisKK2NsYXNzIF9WZXJzaW9uKFZlcnNpb25QcmVkaWNhdGUpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwcmVkaWNhdGUpOgorICAgICAgICBwcmVkaWNhdGUgPSBwcmVkaWNhdGUuc3RyaXAoKQorICAgICAgICBtYXRjaCA9IF9QTEFJTl9WRVJTSU9OUy5tYXRjaChwcmVkaWNhdGUpCisgICAgICAgIHNlbGYubmFtZSA9IE5vbmUKKyAgICAgICAgc2VsZi5wcmVkaWNhdGVzID0gX3NwbGl0X3ByZWRpY2F0ZShtYXRjaC5ncm91cHMoKVswXSkKKworCitkZWYgaXNfdmFsaWRfcHJlZGljYXRlKHByZWRpY2F0ZSk6CisgICAgdHJ5OgorICAgICAgICBWZXJzaW9uUHJlZGljYXRlKHByZWRpY2F0ZSkKKyAgICBleGNlcHQgKFZhbHVlRXJyb3IsIElycmF0aW9uYWxWZXJzaW9uRXJyb3IpOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBlbHNlOgorICAgICAgICByZXR1cm4gVHJ1ZQorCisKK2RlZiBpc192YWxpZF92ZXJzaW9ucyhwcmVkaWNhdGUpOgorICAgIHRyeToKKyAgICAgICAgX1ZlcnNpb25zKHByZWRpY2F0ZSkKKyAgICBleGNlcHQgKFZhbHVlRXJyb3IsIElycmF0aW9uYWxWZXJzaW9uRXJyb3IpOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBlbHNlOgorICAgICAgICByZXR1cm4gVHJ1ZQorCisKK2RlZiBpc192YWxpZF92ZXJzaW9uKHByZWRpY2F0ZSk6CisgICAgdHJ5OgorICAgICAgICBfVmVyc2lvbihwcmVkaWNhdGUpCisgICAgZXhjZXB0IChWYWx1ZUVycm9yLCBJcnJhdGlvbmFsVmVyc2lvbkVycm9yKToKKyAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgZWxzZToKKyAgICAgICAgcmV0dXJuIFRydWUKKworCitkZWYgZ2V0X3ZlcnNpb25fcHJlZGljYXRlKHJlcXVpcmVtZW50cyk6CisgICAgIiIiUmV0dXJuIGEgVmVyc2lvblByZWRpY2F0ZSBvYmplY3QsIGZyb20gYSBzdHJpbmcgb3IgYW4gYWxyZWFkeQorICAgIGV4aXN0aW5nIG9iamVjdC4KKyAgICAiIiIKKyAgICBpZiBpc2luc3RhbmNlKHJlcXVpcmVtZW50cywgc3RyKToKKyAgICAgICAgcmVxdWlyZW1lbnRzID0gVmVyc2lvblByZWRpY2F0ZShyZXF1aXJlbWVudHMpCisgICAgcmV0dXJuIHJlcXVpcmVtZW50cwpkaWZmIC0tZ2l0IGEvTGliL3BpY2tsZS5weSBiL0xpYi9waWNrbGUucHkKaW5kZXggZDEwYWM3NzYuLmMwMWE2YWYgMTAwNjQ0Ci0tLSBhL0xpYi9waWNrbGUucHkKKysrIGIvTGliL3BpY2tsZS5weQpAQCAtMjMsOCArMjMsNiBAQAogCiAiIiIKIAotX192ZXJzaW9uX18gPSAiJFJldmlzaW9uJCIgICAgICAgIyBDb2RlIHZlcnNpb24KLQogZnJvbSB0eXBlcyBpbXBvcnQgRnVuY3Rpb25UeXBlLCBCdWlsdGluRnVuY3Rpb25UeXBlCiBmcm9tIGNvcHlyZWcgaW1wb3J0IGRpc3BhdGNoX3RhYmxlCiBmcm9tIGNvcHlyZWcgaW1wb3J0IF9leHRlbnNpb25fcmVnaXN0cnksIF9pbnZlcnRlZF9yZWdpc3RyeSwgX2V4dGVuc2lvbl9jYWNoZQpAQCAtMzc3LDcgKzM3NSw3IEBACiAgICAgICAgICAgICAjIGFsbG93aW5nIHByb3RvY29sIDAgYW5kIDEgdG8gd29yayBub3JtYWxseS4gIEZvciB0aGlzIHRvCiAgICAgICAgICAgICAjIHdvcmssIHRoZSBmdW5jdGlvbiByZXR1cm5lZCBieSBfX3JlZHVjZV9fIHNob3VsZCBiZQogICAgICAgICAgICAgIyBjYWxsZWQgX19uZXdvYmpfXywgYW5kIGl0cyBmaXJzdCBhcmd1bWVudCBzaG91bGQgYmUgYQotICAgICAgICAgICAgIyBuZXctc3R5bGUgY2xhc3MuICBUaGUgaW1wbGVtZW50YXRpb24gZm9yIF9fbmV3b2JqX18KKyAgICAgICAgICAgICMgY2xhc3MuICBUaGUgaW1wbGVtZW50YXRpb24gZm9yIF9fbmV3b2JqX18KICAgICAgICAgICAgICMgc2hvdWxkIGJlIGFzIGZvbGxvd3MsIGFsdGhvdWdoIHBpY2tsZSBoYXMgbm8gd2F5IHRvCiAgICAgICAgICAgICAjIHZlcmlmeSB0aGlzOgogICAgICAgICAgICAgIwpAQCAtMTMzMiw3ICsxMzMwLDcgQEAKICAgICByZXR1cm4gZG9jdGVzdC50ZXN0bW9kKCkKIAogaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKLSAgICBpbXBvcnQgc3lzLCBhcmdwYXJzZQorICAgIGltcG9ydCBhcmdwYXJzZQogICAgIHBhcnNlciA9IGFyZ3BhcnNlLkFyZ3VtZW50UGFyc2VyKAogICAgICAgICBkZXNjcmlwdGlvbj0nZGlzcGxheSBjb250ZW50cyBvZiB0aGUgcGlja2xlIGZpbGVzJykKICAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KApkaWZmIC0tZ2l0IGEvTGliL3BpY2tsZXRvb2xzLnB5IGIvTGliL3BpY2tsZXRvb2xzLnB5CmluZGV4IGVjNmNjNTMuLjY2ZjRlZGQgMTAwNjQ0Ci0tLSBhL0xpYi9waWNrbGV0b29scy5weQorKysgYi9MaWIvcGlja2xldG9vbHMucHkKQEAgLTUxMCwxMCArNTEwLDcgQEAKICAgICBlbGlmIHMgPT0gYiIwMSI6CiAgICAgICAgIHJldHVybiBUcnVlCiAKLSAgICB0cnk6Ci0gICAgICAgIHJldHVybiBpbnQocykKLSAgICBleGNlcHQgT3ZlcmZsb3dFcnJvcjoKLSAgICAgICAgcmV0dXJuIGludChzKQorICAgIHJldHVybiBpbnQocykKIAogZGVmIHJlYWRfZGVjaW1hbG5sX2xvbmcoZik6CiAgICAgciIiIgpAQCAtMTY0Miw2ICsxNjM5LDggQEAKICAgICAgIGlzIHB1c2hlZCBvbiB0aGUgc3RhY2suCiAKICAgICAgIE5PVEU6ICBjaGVja3MgZm9yIF9fc2FmZV9mb3JfdW5waWNrbGluZ19fIHdlbnQgYXdheSBpbiBQeXRob24gMi4zLgorICAgICAgTk9URTogIHRoZSBkaXN0aW5jdGlvbiBiZXR3ZWVuIG9sZC1zdHlsZSBhbmQgbmV3LXN0eWxlIGNsYXNzZXMgZG9lcworICAgICAgICAgICAgIG5vdCBtYWtlIHNlbnNlIGluIFB5dGhvbiAzLgogICAgICAgIiIiKSwKIAogICAgIEkobmFtZT0nT0JKJywKZGlmZiAtLWdpdCBhL0xpYi9waXBlcy5weSBiL0xpYi9waXBlcy5weQppbmRleCA0Mjk3MDUzLi5mMWExNmY2IDEwMDY0NAotLS0gYS9MaWIvcGlwZXMucHkKKysrIGIvTGliL3BpcGVzLnB5CkBAIC02MCw3ICs2MCw5IEBACiBpbXBvcnQgcmUKIGltcG9ydCBvcwogaW1wb3J0IHRlbXBmaWxlCi1pbXBvcnQgc3RyaW5nCisjIHdlIGltcG9ydCB0aGUgcXVvdGUgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIG1vZHVsZSBmb3IgYmFja3dhcmQgY29tcGF0CisjIChxdW90ZSB1c2VkIHRvIGJlIGFuIHVuZG9jdW1lbnRlZCBidXQgdXNlZCBmdW5jdGlvbiBpbiBwaXBlcykKK2Zyb20gc2hsZXggaW1wb3J0IHF1b3RlCiAKIF9fYWxsX18gPSBbIlRlbXBsYXRlIl0KIApAQCAtMjQzLDIyICsyNDUsMyBAQAogICAgICAgICBjbWRsaXN0ID0gdHJhcGNtZCArICdcbicgKyBjbWRsaXN0ICsgJ1xuJyArIHJtY21kCiAgICAgIwogICAgIHJldHVybiBjbWRsaXN0Ci0KLQotIyBSZWxpYWJseSBxdW90ZSBhIHN0cmluZyBhcyBhIHNpbmdsZSBhcmd1bWVudCBmb3IgL2Jpbi9zaAotCi0jIFNhZmUgdW5xdW90ZWQKLV9zYWZlY2hhcnMgPSBmcm96ZW5zZXQoc3RyaW5nLmFzY2lpX2xldHRlcnMgKyBzdHJpbmcuZGlnaXRzICsgJ0AlXy0rPTosLi8nKQotCi1kZWYgcXVvdGUoZmlsZSk6Ci0gICAgIiIiUmV0dXJuIGEgc2hlbGwtZXNjYXBlZCB2ZXJzaW9uIG9mIHRoZSBmaWxlIHN0cmluZy4iIiIKLSAgICBmb3IgYyBpbiBmaWxlOgotICAgICAgICBpZiBjIG5vdCBpbiBfc2FmZWNoYXJzOgotICAgICAgICAgICAgYnJlYWsKLSAgICBlbHNlOgotICAgICAgICBpZiBub3QgZmlsZToKLSAgICAgICAgICAgIHJldHVybiAiJyciCi0gICAgICAgIHJldHVybiBmaWxlCi0gICAgIyB1c2Ugc2luZ2xlIHF1b3RlcywgYW5kIHB1dCBzaW5nbGUgcXVvdGVzIGludG8gZG91YmxlIHF1b3RlcwotICAgICMgdGhlIHN0cmluZyAkJ2IgaXMgdGhlbiBxdW90ZWQgYXMgJyQnIiciJ2InCi0gICAgcmV0dXJuICInIiArIGZpbGUucmVwbGFjZSgiJyIsICInXCInXCInIikgKyAiJyIKZGlmZiAtLWdpdCBhL0xpYi9wa2d1dGlsLnB5IGIvTGliL3BrZ3V0aWwucHkKaW5kZXggNTFkYTBiMS4uZWYwMjdiZSAxMDA2NDQKLS0tIGEvTGliL3BrZ3V0aWwucHkKKysrIGIvTGliL3BrZ3V0aWwucHkKQEAgLTIxLDcgKzIxLDcgQEAKICAgICBpZiBtYWdpYyAhPSBpbXAuZ2V0X21hZ2ljKCk6CiAgICAgICAgIHJldHVybiBOb25lCiAKLSAgICBzdHJlYW0ucmVhZCg0KSAjIFNraXAgdGltZXN0YW1wCisgICAgc3RyZWFtLnJlYWQoOCkgIyBTa2lwIHRpbWVzdGFtcCBhbmQgc2l6ZQogICAgIHJldHVybiBtYXJzaGFsLmxvYWQoc3RyZWFtKQogCiAKQEAgLTI1Niw3ICsyNTYsNyBAQAogICAgICAgICBpZiBzZWxmLmZpbGUgYW5kIHNlbGYuZmlsZS5jbG9zZWQ6CiAgICAgICAgICAgICBtb2RfdHlwZSA9IHNlbGYuZXRjWzJdCiAgICAgICAgICAgICBpZiBtb2RfdHlwZT09aW1wLlBZX1NPVVJDRToKLSAgICAgICAgICAgICAgICBzZWxmLmZpbGUgPSBvcGVuKHNlbGYuZmlsZW5hbWUsICdyVScpCisgICAgICAgICAgICAgICAgc2VsZi5maWxlID0gb3BlbihzZWxmLmZpbGVuYW1lLCAncicpCiAgICAgICAgICAgICBlbGlmIG1vZF90eXBlIGluIChpbXAuUFlfQ09NUElMRUQsIGltcC5DX0VYVEVOU0lPTik6CiAgICAgICAgICAgICAgICAgc2VsZi5maWxlID0gb3BlbihzZWxmLmZpbGVuYW1lLCAncmInKQogCkBAIC0zMDEsNyArMzAxLDcgQEAKICAgICAgICAgICAgICAgICAgICAgc2VsZi5maWxlLmNsb3NlKCkKICAgICAgICAgICAgIGVsaWYgbW9kX3R5cGU9PWltcC5QWV9DT01QSUxFRDoKICAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhzZWxmLmZpbGVuYW1lWzotMV0pOgotICAgICAgICAgICAgICAgICAgICBmID0gb3BlbihzZWxmLmZpbGVuYW1lWzotMV0sICdyVScpCisgICAgICAgICAgICAgICAgICAgIGYgPSBvcGVuKHNlbGYuZmlsZW5hbWVbOi0xXSwgJ3InKQogICAgICAgICAgICAgICAgICAgICBzZWxmLnNvdXJjZSA9IGYucmVhZCgpCiAgICAgICAgICAgICAgICAgICAgIGYuY2xvc2UoKQogICAgICAgICAgICAgZWxpZiBtb2RfdHlwZT09aW1wLlBLR19ESVJFQ1RPUlk6CkBAIC0zMTUsOSArMzE1LDkgQEAKICAgICBkZWYgZ2V0X2ZpbGVuYW1lKHNlbGYsIGZ1bGxuYW1lPU5vbmUpOgogICAgICAgICBmdWxsbmFtZSA9IHNlbGYuX2ZpeF9uYW1lKGZ1bGxuYW1lKQogICAgICAgICBtb2RfdHlwZSA9IHNlbGYuZXRjWzJdCi0gICAgICAgIGlmIHNlbGYuZXRjWzJdPT1pbXAuUEtHX0RJUkVDVE9SWToKKyAgICAgICAgaWYgbW9kX3R5cGU9PWltcC5QS0dfRElSRUNUT1JZOgogICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2dldF9kZWxlZ2F0ZSgpLmdldF9maWxlbmFtZSgpCi0gICAgICAgIGVsaWYgc2VsZi5ldGNbMl0gaW4gKGltcC5QWV9TT1VSQ0UsIGltcC5QWV9DT01QSUxFRCwgaW1wLkNfRVhURU5TSU9OKToKKyAgICAgICAgZWxpZiBtb2RfdHlwZSBpbiAoaW1wLlBZX1NPVVJDRSwgaW1wLlBZX0NPTVBJTEVELCBpbXAuQ19FWFRFTlNJT04pOgogICAgICAgICAgICAgcmV0dXJuIHNlbGYuZmlsZW5hbWUKICAgICAgICAgcmV0dXJuIE5vbmUKIApkaWZmIC0tZ2l0IGEvTGliL3BsYXQtbGludXgyL0NEUk9NLnB5IGIvTGliL3BsYXQtbGludXgvQ0RST00ucHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9wbGF0LWxpbnV4Mi9DRFJPTS5weQpyZW5hbWUgdG8gTGliL3BsYXQtbGludXgvQ0RST00ucHkKZGlmZiAtLWdpdCBhL0xpYi9wbGF0LWxpbnV4Mi9ETEZDTi5weSBiL0xpYi9wbGF0LWxpbnV4L0RMRkNOLnB5CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvcGxhdC1saW51eDIvRExGQ04ucHkKcmVuYW1lIHRvIExpYi9wbGF0LWxpbnV4L0RMRkNOLnB5CmRpZmYgLS1naXQgYS9MaWIvcGxhdC1saW51eDIvSU4ucHkgYi9MaWIvcGxhdC1saW51eC9JTi5weQpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL3BsYXQtbGludXgyL0lOLnB5CnJlbmFtZSB0byBMaWIvcGxhdC1saW51eC9JTi5weQpkaWZmIC0tZ2l0IGEvTGliL3BsYXQtbGludXgyL1RZUEVTLnB5IGIvTGliL3BsYXQtbGludXgvVFlQRVMucHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9wbGF0LWxpbnV4Mi9UWVBFUy5weQpyZW5hbWUgdG8gTGliL3BsYXQtbGludXgvVFlQRVMucHkKZGlmZiAtLWdpdCBhL0xpYi9wbGF0LWxpbnV4Mi9yZWdlbiBiL0xpYi9wbGF0LWxpbnV4L3JlZ2VuCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvcGxhdC1saW51eDIvcmVnZW4KcmVuYW1lIHRvIExpYi9wbGF0LWxpbnV4L3JlZ2VuCmRpZmYgLS1naXQgYS9MaWIvcGxhdGZvcm0ucHkgYi9MaWIvcGxhdGZvcm0ucHkKaW5kZXggOTg1YTlmOC4uNDU1NDY1OSAxMDA3NTUKLS0tIGEvTGliL3BsYXRmb3JtLnB5CisrKyBiL0xpYi9wbGF0Zm9ybS5weQpAQCAtMTMwLDE1ICsxMzAsMTUgQEAKIAogIyMjIFBsYXRmb3JtIHNwZWNpZmljIEFQSXMKIAotX2xpYmNfc2VhcmNoID0gcmUuY29tcGlsZShyJyhfX2xpYmNfaW5pdCknCi0gICAgICAgICAgICAgICAgICAgICAgICAgICd8JwotICAgICAgICAgICAgICAgICAgICAgICAgICAnKEdMSUJDXyhbMC05Ll0rKSknCi0gICAgICAgICAgICAgICAgICAgICAgICAgICd8JwotICAgICAgICAgICAgICAgICAgICAgICAgICAnKGxpYmMoX1x3Kyk/XC5zbyg/OlwuKFxkWzAtOS5dKikpPyknLCByZS5BU0NJSSkKK19saWJjX3NlYXJjaCA9IHJlLmNvbXBpbGUoYicoX19saWJjX2luaXQpJworICAgICAgICAgICAgICAgICAgICAgICAgICBiJ3wnCisgICAgICAgICAgICAgICAgICAgICAgICAgIGInKEdMSUJDXyhbMC05Ll0rKSknCisgICAgICAgICAgICAgICAgICAgICAgICAgIGInfCcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYnInKGxpYmMoX1x3Kyk/XC5zbyg/OlwuKFxkWzAtOS5dKikpPyknLCByZS5BU0NJSSkKIAogZGVmIGxpYmNfdmVyKGV4ZWN1dGFibGU9c3lzLmV4ZWN1dGFibGUsbGliPScnLHZlcnNpb249JycsCiAKLSAgICAgICAgICAgICBjaHVua3NpemU9MjA0OCk6CisgICAgICAgICAgICAgY2h1bmtzaXplPTE2Mzg0KToKIAogICAgICIiIiBUcmllcyB0byBkZXRlcm1pbmUgdGhlIGxpYmMgdmVyc2lvbiB0aGF0IHRoZSBmaWxlIGV4ZWN1dGFibGUKICAgICAgICAgKHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBQeXRob24gaW50ZXJwcmV0ZXIpIGlzIGxpbmtlZCBhZ2FpbnN0LgpAQCAtMTU5LDE3ICsxNTksMjIgQEAKICAgICAgICAgIyBhYmxlIHRvIG9wZW4gc3ltbGlua3MgZm9yIHJlYWRpbmcKICAgICAgICAgZXhlY3V0YWJsZSA9IG9zLnBhdGgucmVhbHBhdGgoZXhlY3V0YWJsZSkKICAgICBmID0gb3BlbihleGVjdXRhYmxlLCdyYicpCi0gICAgYmluYXJ5ID0gZi5yZWFkKGNodW5rc2l6ZSkuZGVjb2RlKCdsYXRpbi0xJykKKyAgICBiaW5hcnkgPSBmLnJlYWQoY2h1bmtzaXplKQogICAgIHBvcyA9IDAKICAgICB3aGlsZSAxOgotICAgICAgICBtID0gX2xpYmNfc2VhcmNoLnNlYXJjaChiaW5hcnkscG9zKQorICAgICAgICBpZiBiJ2xpYmMnIGluIGJpbmFyeSBvciBiJ0dMSUJDJyBpbiBiaW5hcnk6CisgICAgICAgICAgICBtID0gX2xpYmNfc2VhcmNoLnNlYXJjaChiaW5hcnkscG9zKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbSA9IE5vbmUKICAgICAgICAgaWYgbm90IG06Ci0gICAgICAgICAgICBiaW5hcnkgPSBmLnJlYWQoY2h1bmtzaXplKS5kZWNvZGUoJ2xhdGluLTEnKQorICAgICAgICAgICAgYmluYXJ5ID0gZi5yZWFkKGNodW5rc2l6ZSkKICAgICAgICAgICAgIGlmIG5vdCBiaW5hcnk6CiAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgIHBvcyA9IDAKICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgIGxpYmNpbml0LGdsaWJjLGdsaWJjdmVyc2lvbixzbyx0aHJlYWRzLHNvdmVyc2lvbiA9IG0uZ3JvdXBzKCkKKyAgICAgICAgbGliY2luaXQsZ2xpYmMsZ2xpYmN2ZXJzaW9uLHNvLHRocmVhZHMsc292ZXJzaW9uID0gWworICAgICAgICAgICAgcy5kZWNvZGUoJ2xhdGluMScpIGlmIHMgaXMgbm90IE5vbmUgZWxzZSBzCisgICAgICAgICAgICBmb3IgcyBpbiBtLmdyb3VwcygpXQogICAgICAgICBpZiBsaWJjaW5pdCBhbmQgbm90IGxpYjoKICAgICAgICAgICAgIGxpYiA9ICdsaWJjJwogICAgICAgICBlbGlmIGdsaWJjOgpAQCAtMzU3LDkyICszNjIsMTMgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnRlZF9kaXN0cz1zdXBwb3J0ZWRfZGlzdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsX2Rpc3RyaWJ1dGlvbl9uYW1lPTApCiAKLWNsYXNzIF9wb3BlbjoKLQotICAgICIiIiBGYWlybHkgcG9ydGFibGUgKGFsdGVybmF0aXZlKSBwb3BlbiBpbXBsZW1lbnRhdGlvbi4KLQotICAgICAgICBUaGlzIGlzIG1vc3RseSBuZWVkZWQgaW4gY2FzZSBvcy5wb3BlbigpIGlzIG5vdCBhdmFpbGFibGUsIG9yCi0gICAgICAgIGRvZXNuJ3Qgd29yayBhcyBhZHZlcnRpc2VkLCBlLmcuIGluIFdpbjlYIEdVSSBwcm9ncmFtcyBsaWtlCi0gICAgICAgIFB5dGhvbldpbiBvciBJRExFLgotCi0gICAgICAgIFdyaXRpbmcgdG8gdGhlIHBpcGUgaXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQuCi0KLSAgICAiIiIKLSAgICB0bXBmaWxlID0gJycKLSAgICBwaXBlID0gTm9uZQotICAgIGJ1ZnNpemUgPSBOb25lCi0gICAgbW9kZSA9ICdyJwotCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsY21kLG1vZGU9J3InLGJ1ZnNpemU9Tm9uZSk6Ci0KLSAgICAgICAgaWYgbW9kZSAhPSAncic6Ci0gICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdwb3BlbigpLWVtdWxhdGlvbiBvbmx5IHN1cHBvcnRzIHJlYWQgbW9kZScpCi0gICAgICAgIGltcG9ydCB0ZW1wZmlsZQotICAgICAgICBzZWxmLnRtcGZpbGUgPSB0bXBmaWxlID0gdGVtcGZpbGUubWt0ZW1wKCkKLSAgICAgICAgb3Muc3lzdGVtKGNtZCArICcgPiAlcycgJSB0bXBmaWxlKQotICAgICAgICBzZWxmLnBpcGUgPSBvcGVuKHRtcGZpbGUsJ3JiJykKLSAgICAgICAgc2VsZi5idWZzaXplID0gYnVmc2l6ZQotICAgICAgICBzZWxmLm1vZGUgPSBtb2RlCi0KLSAgICBkZWYgcmVhZChzZWxmKToKLQotICAgICAgICByZXR1cm4gc2VsZi5waXBlLnJlYWQoKQotCi0gICAgZGVmIHJlYWRsaW5lcyhzZWxmKToKLQotICAgICAgICBpZiBzZWxmLmJ1ZnNpemUgaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICByZXR1cm4gc2VsZi5waXBlLnJlYWRsaW5lcygpCi0KLSAgICBkZWYgY2xvc2Uoc2VsZiwKLQotICAgICAgICAgICAgICByZW1vdmU9b3MudW5saW5rLGVycm9yPW9zLmVycm9yKToKLQotICAgICAgICBpZiBzZWxmLnBpcGU6Ci0gICAgICAgICAgICByYyA9IHNlbGYucGlwZS5jbG9zZSgpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICByYyA9IDI1NQotICAgICAgICBpZiBzZWxmLnRtcGZpbGU6Ci0gICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgcmVtb3ZlKHNlbGYudG1wZmlsZSkKLSAgICAgICAgICAgIGV4Y2VwdCBlcnJvcjoKLSAgICAgICAgICAgICAgICBwYXNzCi0gICAgICAgIHJldHVybiByYwotCi0gICAgIyBBbGlhcwotICAgIF9fZGVsX18gPSBjbG9zZQotCiBkZWYgcG9wZW4oY21kLCBtb2RlPSdyJywgYnVmc2l6ZT0tMSk6CiAKICAgICAiIiIgUG9ydGFibGUgcG9wZW4oKSBpbnRlcmZhY2UuCiAgICAgIiIiCi0gICAgIyBGaW5kIGEgd29ya2luZyBwb3BlbiBpbXBsZW1lbnRhdGlvbiBwcmVmZXJyaW5nIHdpbjMycGlwZS5wb3BlbgotICAgICMgb3ZlciBvcy5wb3BlbiBvdmVyIF9wb3BlbgotICAgIHBvcGVuID0gTm9uZQotICAgIGlmIG9zLmVudmlyb24uZ2V0KCdPUycsJycpID09ICdXaW5kb3dzX05UJzoKLSAgICAgICAgIyBPbiBOVCB3aW4zMnBpcGUgc2hvdWxkIHdvcms7IG9uIFdpbjl4IGl0IGhhbmdzIGR1ZSB0byBidWdzCi0gICAgICAgICMgaW4gdGhlIE1TIEMgbGliIChzZWUgTVMgS25vd2xlZGdlQmFzZSBhcnRpY2xlIFExNTA5NTYpCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIGltcG9ydCB3aW4zMnBpcGUKLSAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgotICAgICAgICAgICAgcGFzcwotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcG9wZW4gPSB3aW4zMnBpcGUucG9wZW4KLSAgICBpZiBwb3BlbiBpcyBOb25lOgotICAgICAgICBpZiBoYXNhdHRyKG9zLCdwb3BlbicpOgotICAgICAgICAgICAgcG9wZW4gPSBvcy5wb3BlbgotICAgICAgICAgICAgIyBDaGVjayB3aGV0aGVyIGl0IHdvcmtzLi4uIGl0IGRvZXNuJ3QgaW4gR1VJIHByb2dyYW1zCi0gICAgICAgICAgICAjIG9uIFdpbmRvd3MgcGxhdGZvcm1zCi0gICAgICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzogIyBYWFggT3RoZXJzIHRvbyA/Ci0gICAgICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICAgICBwb3BlbignJykKLSAgICAgICAgICAgICAgICBleGNlcHQgb3MuZXJyb3I6Ci0gICAgICAgICAgICAgICAgICAgIHBvcGVuID0gX3BvcGVuCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBwb3BlbiA9IF9wb3BlbgotICAgIGlmIGJ1ZnNpemUgaXMgTm9uZToKLSAgICAgICAgcmV0dXJuIHBvcGVuKGNtZCxtb2RlKQotICAgIGVsc2U6Ci0gICAgICAgIHJldHVybiBwb3BlbihjbWQsbW9kZSxidWZzaXplKQorICAgIGltcG9ydCB3YXJuaW5ncworICAgIHdhcm5pbmdzLndhcm4oJ3VzZSBvcy5wb3BlbiBpbnN0ZWFkJywgRGVwcmVjYXRpb25XYXJuaW5nLCBzdGFja2xldmVsPTIpCisgICAgcmV0dXJuIG9zLnBvcGVuKGNtZCwgbW9kZSwgYnVmc2l6ZSkKIAogZGVmIF9ub3JtX3ZlcnNpb24odmVyc2lvbiwgYnVpbGQ9JycpOgogCmRpZmYgLS1naXQgYS9MaWIvcGxpc3RsaWIucHkgYi9MaWIvcGxpc3RsaWIucHkKaW5kZXggMmU3ZTUxMi4uMjEwNzZkYiAxMDA2NDQKLS0tIGEvTGliL3BsaXN0bGliLnB5CisrKyBiL0xpYi9wbGlzdGxpYi5weQpAQCAtMjY2LDEzICsyNjYsMTMgQEAKICAgICAgICAgICAgIHJhaXNlIEF0dHJpYnV0ZUVycm9yKGF0dHIpCiAgICAgICAgIGZyb20gd2FybmluZ3MgaW1wb3J0IHdhcm4KICAgICAgICAgd2FybigiQXR0cmlidXRlIGFjY2VzcyBmcm9tIHBsaXN0IGRpY3RzIGlzIGRlcHJlY2F0ZWQsIHVzZSBkW2tleV0gIgotICAgICAgICAgICAgICJub3RhdGlvbiBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICAibm90YXRpb24gaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgcmV0dXJuIHZhbHVlCiAKICAgICBkZWYgX19zZXRhdHRyX18oc2VsZiwgYXR0ciwgdmFsdWUpOgogICAgICAgICBmcm9tIHdhcm5pbmdzIGltcG9ydCB3YXJuCiAgICAgICAgIHdhcm4oIkF0dHJpYnV0ZSBhY2Nlc3MgZnJvbSBwbGlzdCBkaWN0cyBpcyBkZXByZWNhdGVkLCB1c2UgZFtrZXldICIKLSAgICAgICAgICAgICAibm90YXRpb24gaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAgIm5vdGF0aW9uIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHNlbGZbYXR0cl0gPSB2YWx1ZQogCiAgICAgZGVmIF9fZGVsYXR0cl9fKHNlbGYsIGF0dHIpOgpAQCAtMjgyLDE0ICsyODIsMTQgQEAKICAgICAgICAgICAgIHJhaXNlIEF0dHJpYnV0ZUVycm9yKGF0dHIpCiAgICAgICAgIGZyb20gd2FybmluZ3MgaW1wb3J0IHdhcm4KICAgICAgICAgd2FybigiQXR0cmlidXRlIGFjY2VzcyBmcm9tIHBsaXN0IGRpY3RzIGlzIGRlcHJlY2F0ZWQsIHVzZSBkW2tleV0gIgotICAgICAgICAgICAgICJub3RhdGlvbiBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICAibm90YXRpb24gaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKIAogY2xhc3MgRGljdChfSW50ZXJuYWxEaWN0KToKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqKmt3YXJncyk6CiAgICAgICAgIGZyb20gd2FybmluZ3MgaW1wb3J0IHdhcm4KICAgICAgICAgd2FybigiVGhlIHBsaXN0bGliLkRpY3QgY2xhc3MgaXMgZGVwcmVjYXRlZCwgdXNlIGJ1aWx0aW4gZGljdCBpbnN0ZWFkIiwKLSAgICAgICAgICAgICBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgc3VwZXIoKS5fX2luaXRfXygqKmt3YXJncykKIAogCkBAIC0zMDIsNyArMzAyLDcgQEAKICAgICBkZWYgX19pbml0X18oc2VsZiwgKiprd2FyZ3MpOgogICAgICAgICBmcm9tIHdhcm5pbmdzIGltcG9ydCB3YXJuCiAgICAgICAgIHdhcm4oIlRoZSBQbGlzdCBjbGFzcyBpcyBkZXByZWNhdGVkLCB1c2UgdGhlIHJlYWRQbGlzdCgpIGFuZCAiCi0gICAgICAgICAgICAgIndyaXRlUGxpc3QoKSBmdW5jdGlvbnMgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAgIndyaXRlUGxpc3QoKSBmdW5jdGlvbnMgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgc3VwZXIoKS5fX2luaXRfXygqKmt3YXJncykKIAogICAgIGRlZiBmcm9tRmlsZShjbHMsIHBhdGhPckZpbGUpOgpkaWZmIC0tZ2l0IGEvTGliL3BvcGxpYi5weSBiL0xpYi9wb3BsaWIucHkKaW5kZXggODRlYTg4ZC4uZDQyZDlkZCAxMDA2NDQKLS0tIGEvTGliL3BvcGxpYi5weQorKysgYi9MaWIvcG9wbGliLnB5CkBAIC0yNTAsMTUgKzI1MCwxOCBAQAogCiAgICAgZGVmIHF1aXQoc2VsZik6CiAgICAgICAgICIiIlNpZ25vZmY6IGNvbW1pdCBjaGFuZ2VzIG9uIHNlcnZlciwgdW5sb2NrIG1haWxib3gsIGNsb3NlIGNvbm5lY3Rpb24uIiIiCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHJlc3AgPSBzZWxmLl9zaG9ydGNtZCgnUVVJVCcpCi0gICAgICAgIGV4Y2VwdCBlcnJvcl9wcm90byBhcyB2YWw6Ci0gICAgICAgICAgICByZXNwID0gdmFsCi0gICAgICAgIHNlbGYuZmlsZS5jbG9zZSgpCi0gICAgICAgIHNlbGYuc29jay5jbG9zZSgpCi0gICAgICAgIGRlbCBzZWxmLmZpbGUsIHNlbGYuc29jaworICAgICAgICByZXNwID0gc2VsZi5fc2hvcnRjbWQoJ1FVSVQnKQorICAgICAgICBzZWxmLmNsb3NlKCkKICAgICAgICAgcmV0dXJuIHJlc3AKIAorICAgIGRlZiBjbG9zZShzZWxmKToKKyAgICAgICAgIiIiQ2xvc2UgdGhlIGNvbm5lY3Rpb24gd2l0aG91dCBhc3N1bWluZyBhbnl0aGluZyBhYm91dCBpdC4iIiIKKyAgICAgICAgaWYgc2VsZi5maWxlIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5maWxlLmNsb3NlKCkKKyAgICAgICAgaWYgc2VsZi5zb2NrIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5zb2NrLmNsb3NlKCkKKyAgICAgICAgc2VsZi5maWxlID0gc2VsZi5zb2NrID0gTm9uZQorCiAgICAgI19fZGVsX18gPSBxdWl0CiAKIApkaWZmIC0tZ2l0IGEvTGliL3BzdGF0cy5weSBiL0xpYi9wc3RhdHMucHkKaW5kZXggM2YwYWRkMi4uMzM0ZDcxNyAxMDA2NDQKLS0tIGEvTGliL3BzdGF0cy5weQorKysgYi9MaWIvcHN0YXRzLnB5CkBAIC02NzQsNyArNjc0LDYgQEAKICAgICAgICAgICAgICAgICByZXR1cm4gc3RvcAogICAgICAgICAgICAgcmV0dXJuIE5vbmUKIAotICAgIGltcG9ydCBzeXMKICAgICBpZiBsZW4oc3lzLmFyZ3YpID4gMToKICAgICAgICAgaW5pdHByb2ZpbGUgPSBzeXMuYXJndlsxXQogICAgIGVsc2U6CmRpZmYgLS1naXQgYS9MaWIvcHlfY29tcGlsZS5weSBiL0xpYi9weV9jb21waWxlLnB5CmluZGV4IDVhZGI3MGEuLjYyZDY5YWQgMTAwNjQ0Ci0tLSBhL0xpYi9weV9jb21waWxlLnB5CisrKyBiL0xpYi9weV9jb21waWxlLnB5CkBAIC0xMTAsOSArMTEwLDExIEBACiAgICAgIiIiCiAgICAgd2l0aCB0b2tlbml6ZS5vcGVuKGZpbGUpIGFzIGY6CiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHRpbWVzdGFtcCA9IGludChvcy5mc3RhdChmLmZpbGVubygpKS5zdF9tdGltZSkKKyAgICAgICAgICAgIHN0ID0gb3MuZnN0YXQoZi5maWxlbm8oKSkKICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgotICAgICAgICAgICAgdGltZXN0YW1wID0gaW50KG9zLnN0YXQoZmlsZSkuc3RfbXRpbWUpCisgICAgICAgICAgICBzdCA9IG9zLnN0YXQoZmlsZSkKKyAgICAgICAgdGltZXN0YW1wID0gaW50KHN0LnN0X210aW1lKQorICAgICAgICBzaXplID0gc3Quc3Rfc2l6ZSAmIDB4RkZGRkZGRkYKICAgICAgICAgY29kZXN0cmluZyA9IGYucmVhZCgpCiAgICAgdHJ5OgogICAgICAgICBjb2Rlb2JqZWN0ID0gYnVpbHRpbnMuY29tcGlsZShjb2Rlc3RyaW5nLCBkZmlsZSBvciBmaWxlLCAnZXhlYycsCkBAIC0xMzksNiArMTQxLDcgQEAKICAgICB3aXRoIG9wZW4oY2ZpbGUsICd3YicpIGFzIGZjOgogICAgICAgICBmYy53cml0ZShiJ1wwXDBcMFwwJykKICAgICAgICAgd3JfbG9uZyhmYywgdGltZXN0YW1wKQorICAgICAgICB3cl9sb25nKGZjLCBzaXplKQogICAgICAgICBtYXJzaGFsLmR1bXAoY29kZW9iamVjdCwgZmMpCiAgICAgICAgIGZjLmZsdXNoKCkKICAgICAgICAgZmMuc2VlaygwLCAwKQpkaWZmIC0tZ2l0IGEvTGliL3B5ZG9jLnB5IGIvTGliL3B5ZG9jLnB5CmluZGV4IGY0NWQ0NjEuLjU5MTcxN2IgMTAwNzU1Ci0tLSBhL0xpYi9weWRvYy5weQorKysgYi9MaWIvcHlkb2MucHkKQEAgLTIyLDExICsyMiw2IEBACiBvcGVuIGEgV2ViIGJyb3dzZXIgdG8gaW50ZXJhY3RpdmVseSBicm93c2UgZG9jdW1lbnRhdGlvbi4gIFRoZSAtcCBvcHRpb24KIGNhbiBiZSB1c2VkIHdpdGggdGhlIC1iIG9wdGlvbiB0byBleHBsaWNpdGx5IHNwZWNpZnkgdGhlIHNlcnZlciBwb3J0LgogCi1Gb3IgcGxhdGZvcm1zIHdpdGhvdXQgYSBjb21tYW5kIGxpbmUsICJweWRvYyAtZyIgc3RhcnRzIHRoZSBIVFRQIHNlcnZlcgotYW5kIGFsc28gcG9wcyB1cCBhIGxpdHRsZSB3aW5kb3cgZm9yIGNvbnRyb2xsaW5nIGl0LiAgVGhpcyBvcHRpb24gaXMKLWRlcHJlY2F0ZWQsIHNpbmNlIHRoZSBzZXJ2ZXIgY2FuIG5vdyBiZSBjb250cm9sbGVkIGRpcmVjdGx5IGZyb20gSFRUUAotY2xpZW50cy4KLQogUnVuICJweWRvYyAtdyA8bmFtZT4iIHRvIHdyaXRlIG91dCB0aGUgSFRNTCBkb2N1bWVudGF0aW9uIGZvciBhIG1vZHVsZQogdG8gYSBmaWxlIG5hbWVkICI8bmFtZT4uaHRtbCIuCiAKQEAgLTQyLDcgKzM3LDYgQEAKIF9fYXV0aG9yX18gPSAiS2EtUGluZyBZZWUgPHBpbmdAbGZ3Lm9yZz4iCiBfX2RhdGVfXyA9ICIyNiBGZWJydWFyeSAyMDAxIgogCi1fX3ZlcnNpb25fXyA9ICIkUmV2aXNpb24kIgogX19jcmVkaXRzX18gPSAiIiJHdWlkbyB2YW4gUm9zc3VtLCBmb3IgYW4gZXhjZWxsZW50IHByb2dyYW1taW5nIGxhbmd1YWdlLgogVG9tbXkgQnVybmV0dGUsIHRoZSBvcmlnaW5hbCBjcmVhdG9yIG9mIG1hbnB5LgogUGF1bCBQcmVzY29kLCBmb3IgYWxsIGhpcyB3b3JrIG9uIG9ubGluZWhlbHAuCkBAIC0xNjksMTEgKzE2MywxMSBAQAogZGVmIHZpc2libGVuYW1lKG5hbWUsIGFsbD1Ob25lLCBvYmo9Tm9uZSk6CiAgICAgIiIiRGVjaWRlIHdoZXRoZXIgdG8gc2hvdyBkb2N1bWVudGF0aW9uIG9uIGEgdmFyaWFibGUuIiIiCiAgICAgIyBDZXJ0YWluIHNwZWNpYWwgbmFtZXMgYXJlIHJlZHVuZGFudC4KLSAgICBfaGlkZGVuX25hbWVzID0gKCdfX2J1aWx0aW5zX18nLCAnX19kb2NfXycsICdfX2ZpbGVfXycsICdfX3BhdGhfXycsCisgICAgaWYgbmFtZSBpbiB7J19fYnVpbHRpbnNfXycsICdfX2RvY19fJywgJ19fZmlsZV9fJywgJ19fcGF0aF9fJywKICAgICAgICAgICAgICAgICAgICAgICdfX21vZHVsZV9fJywgJ19fbmFtZV9fJywgJ19fc2xvdHNfXycsICdfX3BhY2thZ2VfXycsCiAgICAgICAgICAgICAgICAgICAgICAnX19jYWNoZWRfXycsICdfX2F1dGhvcl9fJywgJ19fY3JlZGl0c19fJywgJ19fZGF0ZV9fJywKLSAgICAgICAgICAgICAgICAgICAgICdfX3ZlcnNpb25fXycpCi0gICAgaWYgbmFtZSBpbiBfaGlkZGVuX25hbWVzOiByZXR1cm4gMAorICAgICAgICAgICAgICAgICAgICAgJ19fdmVyc2lvbl9fJywgJ19fcXVhbG5hbWVfXyd9OgorICAgICAgICByZXR1cm4gMAogICAgICMgUHJpdmF0ZSBuYW1lcyBhcmUgaGlkZGVuLCBidXQgc3BlY2lhbCBuYW1lcyBhcmUgZGlzcGxheWVkLgogICAgIGlmIG5hbWUuc3RhcnRzd2l0aCgnX18nKSBhbmQgbmFtZS5lbmRzd2l0aCgnX18nKTogcmV0dXJuIDEKICAgICAjIE5hbWVkdHVwbGVzIGhhdmUgcHVibGljIGZpZWxkcyBhbmQgbWV0aG9kcyB3aXRoIGEgc2luZ2xlIGxlYWRpbmcgdW5kZXJzY29yZQpAQCAtOTYzLDYgKzk1Nyw5IEBACiAgICAgICAgIG1vZHBrZ3MgPSBbXQogICAgICAgICBpZiBzaGFkb3dlZCBpcyBOb25lOiBzaGFkb3dlZCA9IHt9CiAgICAgICAgIGZvciBpbXBvcnRlciwgbmFtZSwgaXNwa2cgaW4gcGtndXRpbC5pdGVyX21vZHVsZXMoW2Rpcl0pOgorICAgICAgICAgICAgaWYgYW55KCgweEQ4MDAgPD0gb3JkKGNoKSA8PSAweERGRkYpIGZvciBjaCBpbiBuYW1lKToKKyAgICAgICAgICAgICAgICAjIGlnbm9yZSBhIG1vZHVsZSBpZiBpdHMgbmFtZSBjb250YWlucyBhIHN1cnJvZ2F0ZSBjaGFyYWN0ZXIKKyAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgbW9kcGtncy5hcHBlbmQoKG5hbWUsICcnLCBpc3BrZywgbmFtZSBpbiBzaGFkb3dlZCkpCiAgICAgICAgICAgICBzaGFkb3dlZFtuYW1lXSA9IDEKIApAQCAtMjA3MywyNzIgKzIwNzAsNiBAQAogICAgICAgICB3YXJuaW5ncy5maWx0ZXJ3YXJuaW5ncygnaWdub3JlJykgIyBpZ25vcmUgcHJvYmxlbXMgZHVyaW5nIGltcG9ydAogICAgICAgICBNb2R1bGVTY2FubmVyKCkucnVuKGNhbGxiYWNrLCBrZXksIG9uZXJyb3I9b25lcnJvcikKIAotIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gV2ViIGJyb3dzZXIgaW50ZXJmYWNlCi0KLWRlZiBzZXJ2ZShwb3J0LCBjYWxsYmFjaz1Ob25lLCBjb21wbGV0ZXI9Tm9uZSk6Ci0gICAgaW1wb3J0IGh0dHAuc2VydmVyLCBlbWFpbC5tZXNzYWdlLCBzZWxlY3QKLQotICAgIG1zZyA9ICd0aGUgcHlkb2Muc2VydmUoKSBmdW5jdGlvbiBpcyBkZXByZWNhdGVkJwotICAgIHdhcm5pbmdzLndhcm4obXNnLCBEZXByZWNhdGlvbldhcm5pbmcsIHN0YWNrbGV2ZWw9MikKLQotICAgIGNsYXNzIERvY0hhbmRsZXIoaHR0cC5zZXJ2ZXIuQmFzZUhUVFBSZXF1ZXN0SGFuZGxlcik6Ci0gICAgICAgIGRlZiBzZW5kX2RvY3VtZW50KHNlbGYsIHRpdGxlLCBjb250ZW50cyk6Ci0gICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgc2VsZi5zZW5kX3Jlc3BvbnNlKDIwMCkKLSAgICAgICAgICAgICAgICBzZWxmLnNlbmRfaGVhZGVyKCdDb250ZW50LVR5cGUnLCAndGV4dC9odG1sOyBjaGFyc2V0PVVURi04JykKLSAgICAgICAgICAgICAgICBzZWxmLmVuZF9oZWFkZXJzKCkKLSAgICAgICAgICAgICAgICBzZWxmLndmaWxlLndyaXRlKGh0bWwucGFnZSh0aXRsZSwgY29udGVudHMpLmVuY29kZSgndXRmLTgnKSkKLSAgICAgICAgICAgIGV4Y2VwdCBJT0Vycm9yOiBwYXNzCi0KLSAgICAgICAgZGVmIGRvX0dFVChzZWxmKToKLSAgICAgICAgICAgIHBhdGggPSBzZWxmLnBhdGgKLSAgICAgICAgICAgIGlmIHBhdGhbLTU6XSA9PSAnLmh0bWwnOiBwYXRoID0gcGF0aFs6LTVdCi0gICAgICAgICAgICBpZiBwYXRoWzoxXSA9PSAnLyc6IHBhdGggPSBwYXRoWzE6XQotICAgICAgICAgICAgaWYgcGF0aCBhbmQgcGF0aCAhPSAnLic6Ci0gICAgICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICAgICBvYmogPSBsb2NhdGUocGF0aCwgZm9yY2Vsb2FkPTEpCi0gICAgICAgICAgICAgICAgZXhjZXB0IEVycm9yRHVyaW5nSW1wb3J0IGFzIHZhbHVlOgotICAgICAgICAgICAgICAgICAgICBzZWxmLnNlbmRfZG9jdW1lbnQocGF0aCwgaHRtbC5lc2NhcGUoc3RyKHZhbHVlKSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybgotICAgICAgICAgICAgICAgIGlmIG9iajoKLSAgICAgICAgICAgICAgICAgICAgc2VsZi5zZW5kX2RvY3VtZW50KGRlc2NyaWJlKG9iaiksIGh0bWwuZG9jdW1lbnQob2JqLCBwYXRoKSkKLSAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICBzZWxmLnNlbmRfZG9jdW1lbnQocGF0aCwKLSdubyBQeXRob24gZG9jdW1lbnRhdGlvbiBmb3VuZCBmb3IgJXMnICUgcmVwcihwYXRoKSkKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgaGVhZGluZyA9IGh0bWwuaGVhZGluZygKLSc8YmlnPjxiaWc+PHN0cm9uZz5QeXRob246IEluZGV4IG9mIE1vZHVsZXM8L3N0cm9uZz48L2JpZz48L2JpZz4nLAotJyNmZmZmZmYnLCAnIzc3OTllZScpCi0gICAgICAgICAgICAgICAgZGVmIGJsdGlubGluayhuYW1lKToKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuICc8YSBocmVmPSIlcy5odG1sIj4lczwvYT4nICUgKG5hbWUsIG5hbWUpCi0gICAgICAgICAgICAgICAgbmFtZXMgPSBbeCBmb3IgeCBpbiBzeXMuYnVpbHRpbl9tb2R1bGVfbmFtZXMgaWYgeCAhPSAnX19tYWluX18nXQotICAgICAgICAgICAgICAgIGNvbnRlbnRzID0gaHRtbC5tdWx0aWNvbHVtbihuYW1lcywgYmx0aW5saW5rKQotICAgICAgICAgICAgICAgIGluZGljZXMgPSBbJzxwPicgKyBodG1sLmJpZ3NlY3Rpb24oCi0gICAgICAgICAgICAgICAgICAgICdCdWlsdC1pbiBNb2R1bGVzJywgJyNmZmZmZmYnLCAnI2VlNzdhYScsIGNvbnRlbnRzKV0KLQotICAgICAgICAgICAgICAgIHNlZW4gPSB7fQotICAgICAgICAgICAgICAgIGZvciBkaXIgaW4gc3lzLnBhdGg6Ci0gICAgICAgICAgICAgICAgICAgIGluZGljZXMuYXBwZW5kKGh0bWwuaW5kZXgoZGlyLCBzZWVuKSkKLSAgICAgICAgICAgICAgICBjb250ZW50cyA9IGhlYWRpbmcgKyAnICcuam9pbihpbmRpY2VzKSArICcnJzxwIGFsaWduPXJpZ2h0PgotPGZvbnQgY29sb3I9IiM5MDkwOTAiIGZhY2U9ImhlbHZldGljYSwgYXJpYWwiPjxzdHJvbmc+Ci1weWRvYzwvc3Ryb25nPiBieSBLYS1QaW5nIFllZSAmbHQ7cGluZ0BsZncub3JnJmd0OzwvZm9udD4nJycKLSAgICAgICAgICAgICAgICBzZWxmLnNlbmRfZG9jdW1lbnQoJ0luZGV4IG9mIE1vZHVsZXMnLCBjb250ZW50cykKLQotICAgICAgICBkZWYgbG9nX21lc3NhZ2Uoc2VsZiwgKmFyZ3MpOiBwYXNzCi0KLSAgICBjbGFzcyBEb2NTZXJ2ZXIoaHR0cC5zZXJ2ZXIuSFRUUFNlcnZlcik6Ci0gICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwb3J0LCBjYWxsYmFjayk6Ci0gICAgICAgICAgICBob3N0ID0gJ2xvY2FsaG9zdCcKLSAgICAgICAgICAgIHNlbGYuYWRkcmVzcyA9IChob3N0LCBwb3J0KQotICAgICAgICAgICAgc2VsZi51cmwgPSAnaHR0cDovLyVzOiVkLycgJSAoaG9zdCwgcG9ydCkKLSAgICAgICAgICAgIHNlbGYuY2FsbGJhY2sgPSBjYWxsYmFjawotICAgICAgICAgICAgc2VsZi5iYXNlLl9faW5pdF9fKHNlbGYsIHNlbGYuYWRkcmVzcywgc2VsZi5oYW5kbGVyKQotCi0gICAgICAgIGRlZiBzZXJ2ZV91bnRpbF9xdWl0KHNlbGYpOgotICAgICAgICAgICAgaW1wb3J0IHNlbGVjdAotICAgICAgICAgICAgc2VsZi5xdWl0ID0gRmFsc2UKLSAgICAgICAgICAgIHdoaWxlIG5vdCBzZWxmLnF1aXQ6Ci0gICAgICAgICAgICAgICAgcmQsIHdyLCBleCA9IHNlbGVjdC5zZWxlY3QoW3NlbGYuc29ja2V0LmZpbGVubygpXSwgW10sIFtdLCAxKQotICAgICAgICAgICAgICAgIGlmIHJkOiBzZWxmLmhhbmRsZV9yZXF1ZXN0KCkKLSAgICAgICAgICAgIHNlbGYuc2VydmVyX2Nsb3NlKCkKLQotICAgICAgICBkZWYgc2VydmVyX2FjdGl2YXRlKHNlbGYpOgotICAgICAgICAgICAgc2VsZi5iYXNlLnNlcnZlcl9hY3RpdmF0ZShzZWxmKQotICAgICAgICAgICAgaWYgc2VsZi5jYWxsYmFjazogc2VsZi5jYWxsYmFjayhzZWxmKQotCi0gICAgRG9jU2VydmVyLmJhc2UgPSBodHRwLnNlcnZlci5IVFRQU2VydmVyCi0gICAgRG9jU2VydmVyLmhhbmRsZXIgPSBEb2NIYW5kbGVyCi0gICAgRG9jSGFuZGxlci5NZXNzYWdlQ2xhc3MgPSBlbWFpbC5tZXNzYWdlLk1lc3NhZ2UKLSAgICB0cnk6Ci0gICAgICAgIHRyeToKLSAgICAgICAgICAgIERvY1NlcnZlcihwb3J0LCBjYWxsYmFjaykuc2VydmVfdW50aWxfcXVpdCgpCi0gICAgICAgIGV4Y2VwdCAoS2V5Ym9hcmRJbnRlcnJ1cHQsIHNlbGVjdC5lcnJvcik6Ci0gICAgICAgICAgICBwYXNzCi0gICAgZmluYWxseToKLSAgICAgICAgaWYgY29tcGxldGVyOiBjb21wbGV0ZXIoKQotCi0jIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGdyYXBoaWNhbCBpbnRlcmZhY2UKLQotZGVmIGd1aSgpOgotICAgICIiIkdyYXBoaWNhbCBpbnRlcmZhY2UgKHN0YXJ0cyBXZWIgc2VydmVyIGFuZCBwb3BzIHVwIGEgY29udHJvbCB3aW5kb3cpLiIiIgotCi0gICAgbXNnID0gKCd0aGUgcHlkb2MuZ3VpKCkgZnVuY3Rpb24gYW5kICJweWRvYyAtZyIgb3B0aW9uIGFyZSBkZXByZWNhdGVkXG4nLAotICAgICAgICAgICAndXNlICJweWRvYy5icm93c2UoKSBmdW5jdGlvbiBhbmQgInB5ZG9jIC1iIiBvcHRpb24gaW5zdGVhZC4nKQotICAgIHdhcm5pbmdzLndhcm4obXNnLCBEZXByZWNhdGlvbldhcm5pbmcsIHN0YWNrbGV2ZWw9MikKLQotICAgIGNsYXNzIEdVSToKLSAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHdpbmRvdywgcG9ydD03NDY0KToKLSAgICAgICAgICAgIHNlbGYud2luZG93ID0gd2luZG93Ci0gICAgICAgICAgICBzZWxmLnNlcnZlciA9IE5vbmUKLSAgICAgICAgICAgIHNlbGYuc2Nhbm5lciA9IE5vbmUKLQotICAgICAgICAgICAgaW1wb3J0IHRraW50ZXIKLSAgICAgICAgICAgIHNlbGYuc2VydmVyX2ZybSA9IHRraW50ZXIuRnJhbWUod2luZG93KQotICAgICAgICAgICAgc2VsZi50aXRsZV9sYmwgPSB0a2ludGVyLkxhYmVsKHNlbGYuc2VydmVyX2ZybSwKLSAgICAgICAgICAgICAgICB0ZXh0PSdTdGFydGluZyBzZXJ2ZXIuLi5cbiAnKQotICAgICAgICAgICAgc2VsZi5vcGVuX2J0biA9IHRraW50ZXIuQnV0dG9uKHNlbGYuc2VydmVyX2ZybSwKLSAgICAgICAgICAgICAgICB0ZXh0PSdvcGVuIGJyb3dzZXInLCBjb21tYW5kPXNlbGYub3Blbiwgc3RhdGU9J2Rpc2FibGVkJykKLSAgICAgICAgICAgIHNlbGYucXVpdF9idG4gPSB0a2ludGVyLkJ1dHRvbihzZWxmLnNlcnZlcl9mcm0sCi0gICAgICAgICAgICAgICAgdGV4dD0ncXVpdCBzZXJ2aW5nJywgY29tbWFuZD1zZWxmLnF1aXQsIHN0YXRlPSdkaXNhYmxlZCcpCi0KLSAgICAgICAgICAgIHNlbGYuc2VhcmNoX2ZybSA9IHRraW50ZXIuRnJhbWUod2luZG93KQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfbGJsID0gdGtpbnRlci5MYWJlbChzZWxmLnNlYXJjaF9mcm0sIHRleHQ9J1NlYXJjaCBmb3InKQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfZW50ID0gdGtpbnRlci5FbnRyeShzZWxmLnNlYXJjaF9mcm0pCi0gICAgICAgICAgICBzZWxmLnNlYXJjaF9lbnQuYmluZCgnPFJldHVybj4nLCBzZWxmLnNlYXJjaCkKLSAgICAgICAgICAgIHNlbGYuc3RvcF9idG4gPSB0a2ludGVyLkJ1dHRvbihzZWxmLnNlYXJjaF9mcm0sCi0gICAgICAgICAgICAgICAgdGV4dD0nc3RvcCcsIHBhZHk9MCwgY29tbWFuZD1zZWxmLnN0b3AsIHN0YXRlPSdkaXNhYmxlZCcpCi0gICAgICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzoKLSAgICAgICAgICAgICAgICAjIFRyeWluZyB0byBoaWRlIGFuZCBzaG93IHRoaXMgYnV0dG9uIGNyYXNoZXMgdW5kZXIgV2luZG93cy4KLSAgICAgICAgICAgICAgICBzZWxmLnN0b3BfYnRuLnBhY2soc2lkZT0ncmlnaHQnKQotCi0gICAgICAgICAgICBzZWxmLndpbmRvdy50aXRsZSgncHlkb2MnKQotICAgICAgICAgICAgc2VsZi53aW5kb3cucHJvdG9jb2woJ1dNX0RFTEVURV9XSU5ET1cnLCBzZWxmLnF1aXQpCi0gICAgICAgICAgICBzZWxmLnRpdGxlX2xibC5wYWNrKHNpZGU9J3RvcCcsIGZpbGw9J3gnKQotICAgICAgICAgICAgc2VsZi5vcGVuX2J0bi5wYWNrKHNpZGU9J2xlZnQnLCBmaWxsPSd4JywgZXhwYW5kPTEpCi0gICAgICAgICAgICBzZWxmLnF1aXRfYnRuLnBhY2soc2lkZT0ncmlnaHQnLCBmaWxsPSd4JywgZXhwYW5kPTEpCi0gICAgICAgICAgICBzZWxmLnNlcnZlcl9mcm0ucGFjayhzaWRlPSd0b3AnLCBmaWxsPSd4JykKLQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfbGJsLnBhY2soc2lkZT0nbGVmdCcpCi0gICAgICAgICAgICBzZWxmLnNlYXJjaF9lbnQucGFjayhzaWRlPSdyaWdodCcsIGZpbGw9J3gnLCBleHBhbmQ9MSkKLSAgICAgICAgICAgIHNlbGYuc2VhcmNoX2ZybS5wYWNrKHNpZGU9J3RvcCcsIGZpbGw9J3gnKQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfZW50LmZvY3VzX3NldCgpCi0KLSAgICAgICAgICAgIGZvbnQgPSAoJ2hlbHZldGljYScsIHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInIGFuZCA4IG9yIDEwKQotICAgICAgICAgICAgc2VsZi5yZXN1bHRfbHN0ID0gdGtpbnRlci5MaXN0Ym94KHdpbmRvdywgZm9udD1mb250LCBoZWlnaHQ9NikKLSAgICAgICAgICAgIHNlbGYucmVzdWx0X2xzdC5iaW5kKCc8QnV0dG9uLTE+Jywgc2VsZi5zZWxlY3QpCi0gICAgICAgICAgICBzZWxmLnJlc3VsdF9sc3QuYmluZCgnPERvdWJsZS1CdXR0b24tMT4nLCBzZWxmLmdvdG8pCi0gICAgICAgICAgICBzZWxmLnJlc3VsdF9zY3IgPSB0a2ludGVyLlNjcm9sbGJhcih3aW5kb3csCi0gICAgICAgICAgICAgICAgb3JpZW50PSd2ZXJ0aWNhbCcsIGNvbW1hbmQ9c2VsZi5yZXN1bHRfbHN0Lnl2aWV3KQotICAgICAgICAgICAgc2VsZi5yZXN1bHRfbHN0LmNvbmZpZyh5c2Nyb2xsY29tbWFuZD1zZWxmLnJlc3VsdF9zY3Iuc2V0KQotCi0gICAgICAgICAgICBzZWxmLnJlc3VsdF9mcm0gPSB0a2ludGVyLkZyYW1lKHdpbmRvdykKLSAgICAgICAgICAgIHNlbGYuZ290b19idG4gPSB0a2ludGVyLkJ1dHRvbihzZWxmLnJlc3VsdF9mcm0sCi0gICAgICAgICAgICAgICAgdGV4dD0nZ28gdG8gc2VsZWN0ZWQnLCBjb21tYW5kPXNlbGYuZ290bykKLSAgICAgICAgICAgIHNlbGYuaGlkZV9idG4gPSB0a2ludGVyLkJ1dHRvbihzZWxmLnJlc3VsdF9mcm0sCi0gICAgICAgICAgICAgICAgdGV4dD0naGlkZSByZXN1bHRzJywgY29tbWFuZD1zZWxmLmhpZGUpCi0gICAgICAgICAgICBzZWxmLmdvdG9fYnRuLnBhY2soc2lkZT0nbGVmdCcsIGZpbGw9J3gnLCBleHBhbmQ9MSkKLSAgICAgICAgICAgIHNlbGYuaGlkZV9idG4ucGFjayhzaWRlPSdyaWdodCcsIGZpbGw9J3gnLCBleHBhbmQ9MSkKLQotICAgICAgICAgICAgc2VsZi53aW5kb3cudXBkYXRlKCkKLSAgICAgICAgICAgIHNlbGYubWlud2lkdGggPSBzZWxmLndpbmRvdy53aW5mb193aWR0aCgpCi0gICAgICAgICAgICBzZWxmLm1pbmhlaWdodCA9IHNlbGYud2luZG93LndpbmZvX2hlaWdodCgpCi0gICAgICAgICAgICBzZWxmLmJpZ21pbmhlaWdodCA9IChzZWxmLnNlcnZlcl9mcm0ud2luZm9fcmVxaGVpZ2h0KCkgKwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zZWFyY2hfZnJtLndpbmZvX3JlcWhlaWdodCgpICsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYucmVzdWx0X2xzdC53aW5mb19yZXFoZWlnaHQoKSArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnJlc3VsdF9mcm0ud2luZm9fcmVxaGVpZ2h0KCkpCi0gICAgICAgICAgICBzZWxmLmJpZ3dpZHRoLCBzZWxmLmJpZ2hlaWdodCA9IHNlbGYubWlud2lkdGgsIHNlbGYuYmlnbWluaGVpZ2h0Ci0gICAgICAgICAgICBzZWxmLmV4cGFuZGVkID0gMAotICAgICAgICAgICAgc2VsZi53aW5kb3cud21fZ2VvbWV0cnkoJyVkeCVkJyAlIChzZWxmLm1pbndpZHRoLCBzZWxmLm1pbmhlaWdodCkpCi0gICAgICAgICAgICBzZWxmLndpbmRvdy53bV9taW5zaXplKHNlbGYubWlud2lkdGgsIHNlbGYubWluaGVpZ2h0KQotICAgICAgICAgICAgc2VsZi53aW5kb3cudGsud2lsbGRpc3BhdGNoKCkKLQotICAgICAgICAgICAgaW1wb3J0IHRocmVhZGluZwotICAgICAgICAgICAgdGhyZWFkaW5nLlRocmVhZCgKLSAgICAgICAgICAgICAgICB0YXJnZXQ9c2VydmUsIGFyZ3M9KHBvcnQsIHNlbGYucmVhZHksIHNlbGYucXVpdCkpLnN0YXJ0KCkKLQotICAgICAgICBkZWYgcmVhZHkoc2VsZiwgc2VydmVyKToKLSAgICAgICAgICAgIHNlbGYuc2VydmVyID0gc2VydmVyCi0gICAgICAgICAgICBzZWxmLnRpdGxlX2xibC5jb25maWcoCi0gICAgICAgICAgICAgICAgdGV4dD0nUHl0aG9uIGRvY3VtZW50YXRpb24gc2VydmVyIGF0XG4nICsgc2VydmVyLnVybCkKLSAgICAgICAgICAgIHNlbGYub3Blbl9idG4uY29uZmlnKHN0YXRlPSdub3JtYWwnKQotICAgICAgICAgICAgc2VsZi5xdWl0X2J0bi5jb25maWcoc3RhdGU9J25vcm1hbCcpCi0KLSAgICAgICAgZGVmIG9wZW4oc2VsZiwgZXZlbnQ9Tm9uZSwgdXJsPU5vbmUpOgotICAgICAgICAgICAgdXJsID0gdXJsIG9yIHNlbGYuc2VydmVyLnVybAotICAgICAgICAgICAgaW1wb3J0IHdlYmJyb3dzZXIKLSAgICAgICAgICAgIHdlYmJyb3dzZXIub3Blbih1cmwpCi0KLSAgICAgICAgZGVmIHF1aXQoc2VsZiwgZXZlbnQ9Tm9uZSk6Ci0gICAgICAgICAgICBpZiBzZWxmLnNlcnZlcjoKLSAgICAgICAgICAgICAgICBzZWxmLnNlcnZlci5xdWl0ID0gMQotICAgICAgICAgICAgc2VsZi53aW5kb3cucXVpdCgpCi0KLSAgICAgICAgZGVmIHNlYXJjaChzZWxmLCBldmVudD1Ob25lKToKLSAgICAgICAgICAgIGtleSA9IHNlbGYuc2VhcmNoX2VudC5nZXQoKQotICAgICAgICAgICAgc2VsZi5zdG9wX2J0bi5wYWNrKHNpZGU9J3JpZ2h0JykKLSAgICAgICAgICAgIHNlbGYuc3RvcF9idG4uY29uZmlnKHN0YXRlPSdub3JtYWwnKQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfbGJsLmNvbmZpZyh0ZXh0PSdTZWFyY2hpbmcgZm9yICIlcyIuLi4nICUga2V5KQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfZW50LmZvcmdldCgpCi0gICAgICAgICAgICBzZWxmLnNlYXJjaF9sYmwucGFjayhzaWRlPSdsZWZ0JykKLSAgICAgICAgICAgIHNlbGYucmVzdWx0X2xzdC5kZWxldGUoMCwgJ2VuZCcpCi0gICAgICAgICAgICBzZWxmLmdvdG9fYnRuLmNvbmZpZyhzdGF0ZT0nZGlzYWJsZWQnKQotICAgICAgICAgICAgc2VsZi5leHBhbmQoKQotCi0gICAgICAgICAgICBpbXBvcnQgdGhyZWFkaW5nCi0gICAgICAgICAgICBpZiBzZWxmLnNjYW5uZXI6Ci0gICAgICAgICAgICAgICAgc2VsZi5zY2FubmVyLnF1aXQgPSAxCi0gICAgICAgICAgICBzZWxmLnNjYW5uZXIgPSBNb2R1bGVTY2FubmVyKCkKLSAgICAgICAgICAgIHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PXNlbGYuc2Nhbm5lci5ydW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3M9KHNlbGYudXBkYXRlLCBrZXksIHNlbGYuZG9uZSkpLnN0YXJ0KCkKLQotICAgICAgICBkZWYgdXBkYXRlKHNlbGYsIHBhdGgsIG1vZG5hbWUsIGRlc2MpOgotICAgICAgICAgICAgaWYgbW9kbmFtZVstOTpdID09ICcuX19pbml0X18nOgotICAgICAgICAgICAgICAgIG1vZG5hbWUgPSBtb2RuYW1lWzotOV0gKyAnIChwYWNrYWdlKScKLSAgICAgICAgICAgIHNlbGYucmVzdWx0X2xzdC5pbnNlcnQoJ2VuZCcsCi0gICAgICAgICAgICAgICAgbW9kbmFtZSArICcgLSAnICsgKGRlc2Mgb3IgJyhubyBkZXNjcmlwdGlvbiknKSkKLQotICAgICAgICBkZWYgc3RvcChzZWxmLCBldmVudD1Ob25lKToKLSAgICAgICAgICAgIGlmIHNlbGYuc2Nhbm5lcjoKLSAgICAgICAgICAgICAgICBzZWxmLnNjYW5uZXIucXVpdCA9IDEKLSAgICAgICAgICAgICAgICBzZWxmLnNjYW5uZXIgPSBOb25lCi0KLSAgICAgICAgZGVmIGRvbmUoc2VsZik6Ci0gICAgICAgICAgICBzZWxmLnNjYW5uZXIgPSBOb25lCi0gICAgICAgICAgICBzZWxmLnNlYXJjaF9sYmwuY29uZmlnKHRleHQ9J1NlYXJjaCBmb3InKQotICAgICAgICAgICAgc2VsZi5zZWFyY2hfbGJsLnBhY2soc2lkZT0nbGVmdCcpCi0gICAgICAgICAgICBzZWxmLnNlYXJjaF9lbnQucGFjayhzaWRlPSdyaWdodCcsIGZpbGw9J3gnLCBleHBhbmQ9MSkKLSAgICAgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSAhPSAnd2luMzInOiBzZWxmLnN0b3BfYnRuLmZvcmdldCgpCi0gICAgICAgICAgICBzZWxmLnN0b3BfYnRuLmNvbmZpZyhzdGF0ZT0nZGlzYWJsZWQnKQotCi0gICAgICAgIGRlZiBzZWxlY3Qoc2VsZiwgZXZlbnQ9Tm9uZSk6Ci0gICAgICAgICAgICBzZWxmLmdvdG9fYnRuLmNvbmZpZyhzdGF0ZT0nbm9ybWFsJykKLQotICAgICAgICBkZWYgZ290byhzZWxmLCBldmVudD1Ob25lKToKLSAgICAgICAgICAgIHNlbGVjdGlvbiA9IHNlbGYucmVzdWx0X2xzdC5jdXJzZWxlY3Rpb24oKQotICAgICAgICAgICAgaWYgc2VsZWN0aW9uOgotICAgICAgICAgICAgICAgIG1vZG5hbWUgPSBzZWxmLnJlc3VsdF9sc3QuZ2V0KHNlbGVjdGlvblswXSkuc3BsaXQoKVswXQotICAgICAgICAgICAgICAgIHNlbGYub3Blbih1cmw9c2VsZi5zZXJ2ZXIudXJsICsgbW9kbmFtZSArICcuaHRtbCcpCi0KLSAgICAgICAgZGVmIGNvbGxhcHNlKHNlbGYpOgotICAgICAgICAgICAgaWYgbm90IHNlbGYuZXhwYW5kZWQ6IHJldHVybgotICAgICAgICAgICAgc2VsZi5yZXN1bHRfZnJtLmZvcmdldCgpCi0gICAgICAgICAgICBzZWxmLnJlc3VsdF9zY3IuZm9yZ2V0KCkKLSAgICAgICAgICAgIHNlbGYucmVzdWx0X2xzdC5mb3JnZXQoKQotICAgICAgICAgICAgc2VsZi5iaWd3aWR0aCA9IHNlbGYud2luZG93LndpbmZvX3dpZHRoKCkKLSAgICAgICAgICAgIHNlbGYuYmlnaGVpZ2h0ID0gc2VsZi53aW5kb3cud2luZm9faGVpZ2h0KCkKLSAgICAgICAgICAgIHNlbGYud2luZG93LndtX2dlb21ldHJ5KCclZHglZCcgJSAoc2VsZi5taW53aWR0aCwgc2VsZi5taW5oZWlnaHQpKQotICAgICAgICAgICAgc2VsZi53aW5kb3cud21fbWluc2l6ZShzZWxmLm1pbndpZHRoLCBzZWxmLm1pbmhlaWdodCkKLSAgICAgICAgICAgIHNlbGYuZXhwYW5kZWQgPSAwCi0KLSAgICAgICAgZGVmIGV4cGFuZChzZWxmKToKLSAgICAgICAgICAgIGlmIHNlbGYuZXhwYW5kZWQ6IHJldHVybgotICAgICAgICAgICAgc2VsZi5yZXN1bHRfZnJtLnBhY2soc2lkZT0nYm90dG9tJywgZmlsbD0neCcpCi0gICAgICAgICAgICBzZWxmLnJlc3VsdF9zY3IucGFjayhzaWRlPSdyaWdodCcsIGZpbGw9J3knKQotICAgICAgICAgICAgc2VsZi5yZXN1bHRfbHN0LnBhY2soc2lkZT0ndG9wJywgZmlsbD0nYm90aCcsIGV4cGFuZD0xKQotICAgICAgICAgICAgc2VsZi53aW5kb3cud21fZ2VvbWV0cnkoJyVkeCVkJyAlIChzZWxmLmJpZ3dpZHRoLCBzZWxmLmJpZ2hlaWdodCkpCi0gICAgICAgICAgICBzZWxmLndpbmRvdy53bV9taW5zaXplKHNlbGYubWlud2lkdGgsIHNlbGYuYmlnbWluaGVpZ2h0KQotICAgICAgICAgICAgc2VsZi5leHBhbmRlZCA9IDEKLQotICAgICAgICBkZWYgaGlkZShzZWxmLCBldmVudD1Ob25lKToKLSAgICAgICAgICAgIHNlbGYuc3RvcCgpCi0gICAgICAgICAgICBzZWxmLmNvbGxhcHNlKCkKLQotICAgIGltcG9ydCB0a2ludGVyCi0gICAgdHJ5OgotICAgICAgICByb290ID0gdGtpbnRlci5UaygpCi0gICAgICAgICMgVGsgd2lsbCBjcmFzaCBpZiBweXRob253LmV4ZSBoYXMgYW4gWFAgLm1hbmlmZXN0Ci0gICAgICAgICMgZmlsZSBhbmQgdGhlIHJvb3QgaGFzIGlzIG5vdCBkZXN0cm95ZWQgZXhwbGljaXRseS4KLSAgICAgICAgIyBJZiB0aGUgcHJvYmxlbSBpcyBldmVyIGZpeGVkIGluIFRrLCB0aGUgZXhwbGljaXQKLSAgICAgICAgIyBkZXN0cm95IGNhbiBnby4KLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgZ3VpID0gR1VJKHJvb3QpCi0gICAgICAgICAgICByb290Lm1haW5sb29wKCkKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIHJvb3QuZGVzdHJveSgpCi0gICAgZXhjZXB0IEtleWJvYXJkSW50ZXJydXB0OgotICAgICAgICBwYXNzCi0KLQogIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gZW5oYW5jZWQgV2ViIGJyb3dzZXIgaW50ZXJmYWNlCiAKIGRlZiBfc3RhcnRfc2VydmVyKHVybGhhbmRsZXIsIHBvcnQpOgpAQCAtMjc5NSwxNSArMjUyNiwxMiBAQAogICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgJy4nKQogCiAgICAgdHJ5OgotICAgICAgICBvcHRzLCBhcmdzID0gZ2V0b3B0LmdldG9wdChzeXMuYXJndlsxOl0sICdiZ2s6cDp3JykKKyAgICAgICAgb3B0cywgYXJncyA9IGdldG9wdC5nZXRvcHQoc3lzLmFyZ3ZbMTpdLCAnYms6cDp3JykKICAgICAgICAgd3JpdGluZyA9IEZhbHNlCiAgICAgICAgIHN0YXJ0X3NlcnZlciA9IEZhbHNlCiAgICAgICAgIG9wZW5fYnJvd3NlciA9IEZhbHNlCiAgICAgICAgIHBvcnQgPSBOb25lCiAgICAgICAgIGZvciBvcHQsIHZhbCBpbiBvcHRzOgotICAgICAgICAgICAgaWYgb3B0ID09ICctZyc6Ci0gICAgICAgICAgICAgICAgZ3VpKCkKLSAgICAgICAgICAgICAgICByZXR1cm4KICAgICAgICAgICAgIGlmIG9wdCA9PSAnLWInOgogICAgICAgICAgICAgICAgIHN0YXJ0X3NlcnZlciA9IFRydWUKICAgICAgICAgICAgICAgICBvcGVuX2Jyb3dzZXIgPSBUcnVlCkBAIC0yODY0LDkgKzI1OTIsNiBAQAogICAgIHRvIGludGVyYWN0aXZlbHkgYnJvd3NlIGRvY3VtZW50YXRpb24uICBUaGUgLXAgb3B0aW9uIGNhbiBiZSB1c2VkIHdpdGgKICAgICB0aGUgLWIgb3B0aW9uIHRvIGV4cGxpY2l0bHkgc3BlY2lmeSB0aGUgc2VydmVyIHBvcnQuCiAKLXtjbWR9IC1nCi0gICAgRGVwcmVjYXRlZC4KLQoge2NtZH0gLXcgPG5hbWU+IC4uLgogICAgIFdyaXRlIG91dCB0aGUgSFRNTCBkb2N1bWVudGF0aW9uIGZvciBhIG1vZHVsZSB0byBhIGZpbGUgaW4gdGhlIGN1cnJlbnQKICAgICBkaXJlY3RvcnkuICBJZiA8bmFtZT4gY29udGFpbnMgYSAne3NlcH0nLCBpdCBpcyB0cmVhdGVkIGFzIGEgZmlsZW5hbWU7IGlmCmRpZmYgLS1naXQgYS9MaWIvcHlkb2NfZGF0YS90b3BpY3MucHkgYi9MaWIvcHlkb2NfZGF0YS90b3BpY3MucHkKaW5kZXggZTlkN2QwNi4uN2VkYzU1MSAxMDA2NDQKLS0tIGEvTGliL3B5ZG9jX2RhdGEvdG9waWNzLnB5CisrKyBiL0xpYi9weWRvY19kYXRhL3RvcGljcy5weQpAQCAtMSw0ICsxLDQgQEAKLSMgQXV0b2dlbmVyYXRlZCBieSBTcGhpbnggb24gU2F0IFNlcCAgMyAxMDozNTo0MiAyMDExCisjIEF1dG9nZW5lcmF0ZWQgYnkgU3BoaW54IG9uIFRodSBBcHIgMjggMDc6NTM6MTIgMjAxMQogdG9waWNzID0geydhc3NlcnQnOiAnXG5UaGUgYGBhc3NlcnRgYCBzdGF0ZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5Bc3NlcnQgc3RhdGVtZW50cyBhcmUgYSBjb252ZW5pZW50IHdheSB0byBpbnNlcnQgZGVidWdnaW5nIGFzc2VydGlvbnNcbmludG8gYSBwcm9ncmFtOlxuXG4gICBhc3NlcnRfc3RtdCA6Oj0gImFzc2VydCIgZXhwcmVzc2lvbiBbIiwiIGV4cHJlc3Npb25dXG5cblRoZSBzaW1wbGUgZm9ybSwgYGBhc3NlcnQgZXhwcmVzc2lvbmBgLCBpcyBlcXVpdmFsZW50IHRvXG5cbiAgIGlmIF9fZGVidWdfXzpcbiAgICAgIGlmIG5vdCBleHByZXNzaW9uOiByYWlzZSBBc3NlcnRpb25FcnJvclxuXG5UaGUgZXh0ZW5kZWQgZm9ybSwgYGBhc3NlcnQgZXhwcmVzc2lvbjEsIGV4cHJlc3Npb24yYGAsIGlzIGVxdWl2YWxlbnRcbnRvXG5cbiAgIGlmIF9fZGVidWdfXzpcbiAgICAgIGlmIG5vdCBleHByZXNzaW9uMTogcmFpc2UgQXNzZXJ0aW9uRXJyb3IoZXhwcmVzc2lvbjIpXG5cblRoZXNlIGVxdWl2YWxlbmNlcyBhc3N1bWUgdGhhdCBgYF9fZGVidWdfX2BgIGFuZCBgYEFzc2VydGlvbkVycm9yYGBcbnJlZmVyIHRvIHRoZSBidWlsdC1pbiB2YXJpYWJsZXMgd2l0aCB0aG9zZSBuYW1lcy4gIEluIHRoZSBjdXJyZW50XG5pbXBsZW1lbnRhdGlvbiwgdGhlIGJ1aWx0LWluIHZhcmlhYmxlIGBgX19kZWJ1Z19fYGAgaXMgYGBUcnVlYGAgdW5kZXJcbm5vcm1hbCBjaXJjdW1zdGFuY2VzLCBgYEZhbHNlYGAgd2hlbiBvcHRpbWl6YXRpb24gaXMgcmVxdWVzdGVkXG4oY29tbWFuZCBsaW5lIG9wdGlvbiAtTykuICBUaGUgY3VycmVudCBjb2RlIGdlbmVyYXRvciBlbWl0cyBubyBjb2RlXG5mb3IgYW4gYXNzZXJ0IHN0YXRlbWVudCB3aGVuIG9wdGltaXphdGlvbiBpcyByZXF1ZXN0ZWQgYXQgY29tcGlsZVxudGltZS4gIE5vdGUgdGhhdCBpdCBpcyB1bm5lY2Vzc2FyeSB0byBpbmNsdWRlIHRoZSBzb3VyY2UgY29kZSBmb3IgdGhlXG5leHByZXNzaW9uIHRoYXQgZmFpbGVkIGluIHRoZSBlcnJvciBtZXNzYWdlOyBpdCB3aWxsIGJlIGRpc3BsYXllZCBhc1xucGFydCBvZiB0aGUgc3RhY2sgdHJhY2UuXG5cbkFzc2lnbm1lbnRzIHRvIGBgX19kZWJ1Z19fYGAgYXJlIGlsbGVnYWwuICBUaGUgdmFsdWUgZm9yIHRoZSBidWlsdC1pblxudmFyaWFibGUgaXMgZGV0ZXJtaW5lZCB3aGVuIHRoZSBpbnRlcnByZXRlciBzdGFydHMuXG4nLAogICdhc3NpZ25tZW50JzogJ1xuQXNzaWdubWVudCBzdGF0ZW1lbnRzXG4qKioqKioqKioqKioqKioqKioqKipcblxuQXNzaWdubWVudCBzdGF0ZW1lbnRzIGFyZSB1c2VkIHRvIChyZSliaW5kIG5hbWVzIHRvIHZhbHVlcyBhbmQgdG9cbm1vZGlmeSBhdHRyaWJ1dGVzIG9yIGl0ZW1zIG9mIG11dGFibGUgb2JqZWN0czpcblxuICAgYXNzaWdubWVudF9zdG10IDo6PSAodGFyZ2V0X2xpc3QgIj0iKSsgKGV4cHJlc3Npb25fbGlzdCB8IHlpZWxkX2V4cHJlc3Npb24pXG4gICB0YXJnZXRfbGlzdCAgICAgOjo9IHRhcmdldCAoIiwiIHRhcmdldCkqIFsiLCJdXG4gICB0YXJnZXQgICAgICAgICAgOjo9IGlkZW50aWZpZXJcbiAgICAgICAgICAgICAgfCAiKCIgdGFyZ2V0X2xpc3QgIikiXG4gICAgICAgICAgICAgIHwgIlsiIHRhcmdldF9saXN0ICJdIlxuICAgICAgICAgICAgICB8IGF0dHJpYnV0ZXJlZlxuICAgICAgICAgICAgICB8IHN1YnNjcmlwdGlvblxuICAgICAgICAgICAgICB8IHNsaWNpbmdcbiAgICAgICAgICAgICAgfCAiKiIgdGFyZ2V0XG5cbihTZWUgc2VjdGlvbiAqUHJpbWFyaWVzKiBmb3IgdGhlIHN5bnRheCBkZWZpbml0aW9ucyBmb3IgdGhlIGxhc3QgdGhyZWVcbnN5bWJvbHMuKVxuXG5BbiBhc3NpZ25tZW50IHN0YXRlbWVudCBldmFsdWF0ZXMgdGhlIGV4cHJlc3Npb24gbGlzdCAocmVtZW1iZXIgdGhhdFxudGhpcyBjYW4gYmUgYSBzaW5nbGUgZXhwcmVzc2lvbiBvciBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB0aGUgbGF0dGVyXG55aWVsZGluZyBhIHR1cGxlKSBhbmQgYXNzaWducyB0aGUgc2luZ2xlIHJlc3VsdGluZyBvYmplY3QgdG8gZWFjaCBvZlxudGhlIHRhcmdldCBsaXN0cywgZnJvbSBsZWZ0IHRvIHJpZ2h0LlxuXG5Bc3NpZ25tZW50IGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgZGVwZW5kaW5nIG9uIHRoZSBmb3JtIG9mIHRoZSB0YXJnZXRcbihsaXN0KS4gV2hlbiBhIHRhcmdldCBpcyBwYXJ0IG9mIGEgbXV0YWJsZSBvYmplY3QgKGFuIGF0dHJpYnV0ZVxucmVmZXJlbmNlLCBzdWJzY3JpcHRpb24gb3Igc2xpY2luZyksIHRoZSBtdXRhYmxlIG9iamVjdCBtdXN0XG51bHRpbWF0ZWx5IHBlcmZvcm0gdGhlIGFzc2lnbm1lbnQgYW5kIGRlY2lkZSBhYm91dCBpdHMgdmFsaWRpdHksIGFuZFxubWF5IHJhaXNlIGFuIGV4Y2VwdGlvbiBpZiB0aGUgYXNzaWdubWVudCBpcyB1bmFjY2VwdGFibGUuICBUaGUgcnVsZXNcbm9ic2VydmVkIGJ5IHZhcmlvdXMgdHlwZXMgYW5kIHRoZSBleGNlcHRpb25zIHJhaXNlZCBhcmUgZ2l2ZW4gd2l0aCB0aGVcbmRlZmluaXRpb24gb2YgdGhlIG9iamVjdCB0eXBlcyAoc2VlIHNlY3Rpb24gKlRoZSBzdGFuZGFyZCB0eXBlXG5oaWVyYXJjaHkqKS5cblxuQXNzaWdubWVudCBvZiBhbiBvYmplY3QgdG8gYSB0YXJnZXQgbGlzdCwgb3B0aW9uYWxseSBlbmNsb3NlZCBpblxucGFyZW50aGVzZXMgb3Igc3F1YXJlIGJyYWNrZXRzLCBpcyByZWN1cnNpdmVseSBkZWZpbmVkIGFzIGZvbGxvd3MuXG5cbiogSWYgdGhlIHRhcmdldCBsaXN0IGlzIGEgc2luZ2xlIHRhcmdldDogVGhlIG9iamVjdCBpcyBhc3NpZ25lZCB0b1xuICB0aGF0IHRhcmdldC5cblxuKiBJZiB0aGUgdGFyZ2V0IGxpc3QgaXMgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiB0YXJnZXRzOiBUaGUgb2JqZWN0XG4gIG11c3QgYmUgYW4gaXRlcmFibGUgd2l0aCB0aGUgc2FtZSBudW1iZXIgb2YgaXRlbXMgYXMgdGhlcmUgYXJlXG4gIHRhcmdldHMgaW4gdGhlIHRhcmdldCBsaXN0LCBhbmQgdGhlIGl0ZW1zIGFyZSBhc3NpZ25lZCwgZnJvbSBsZWZ0IHRvXG4gIHJpZ2h0LCB0byB0aGUgY29ycmVzcG9uZGluZyB0YXJnZXRzLlxuXG4gICogSWYgdGhlIHRhcmdldCBsaXN0IGNvbnRhaW5zIG9uZSB0YXJnZXQgcHJlZml4ZWQgd2l0aCBhbiBhc3RlcmlzayxcbiAgICBjYWxsZWQgYSAic3RhcnJlZCIgdGFyZ2V0OiBUaGUgb2JqZWN0IG11c3QgYmUgYSBzZXF1ZW5jZSB3aXRoIGF0XG4gICAgbGVhc3QgYXMgbWFueSBpdGVtcyBhcyB0aGVyZSBhcmUgdGFyZ2V0cyBpbiB0aGUgdGFyZ2V0IGxpc3QsIG1pbnVzXG4gICAgb25lLiAgVGhlIGZpcnN0IGl0ZW1zIG9mIHRoZSBzZXF1ZW5jZSBhcmUgYXNzaWduZWQsIGZyb20gbGVmdCB0b1xuICAgIHJpZ2h0LCB0byB0aGUgdGFyZ2V0cyBiZWZvcmUgdGhlIHN0YXJyZWQgdGFyZ2V0LiAgVGhlIGZpbmFsIGl0ZW1zXG4gICAgb2YgdGhlIHNlcXVlbmNlIGFyZSBhc3NpZ25lZCB0byB0aGUgdGFyZ2V0cyBhZnRlciB0aGUgc3RhcnJlZFxuICAgIHRhcmdldC4gIEEgbGlzdCBvZiB0aGUgcmVtYWluaW5nIGl0ZW1zIGluIHRoZSBzZXF1ZW5jZSBpcyB0aGVuXG4gICAgYXNzaWduZWQgdG8gdGhlIHN0YXJyZWQgdGFyZ2V0ICh0aGUgbGlzdCBjYW4gYmUgZW1wdHkpLlxuXG4gICogRWxzZTogVGhlIG9iamVjdCBtdXN0IGJlIGEgc2VxdWVuY2Ugd2l0aCB0aGUgc2FtZSBudW1iZXIgb2YgaXRlbXNcbiAgICBhcyB0aGVyZSBhcmUgdGFyZ2V0cyBpbiB0aGUgdGFyZ2V0IGxpc3QsIGFuZCB0aGUgaXRlbXMgYXJlXG4gICAgYXNzaWduZWQsIGZyb20gbGVmdCB0byByaWdodCwgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdGFyZ2V0cy5cblxuQXNzaWdubWVudCBvZiBhbiBvYmplY3QgdG8gYSBzaW5nbGUgdGFyZ2V0IGlzIHJlY3Vyc2l2ZWx5IGRlZmluZWQgYXNcbmZvbGxvd3MuXG5cbiogSWYgdGhlIHRhcmdldCBpcyBhbiBpZGVudGlmaWVyIChuYW1lKTpcblxuICAqIElmIHRoZSBuYW1lIGRvZXMgbm90IG9jY3VyIGluIGEgYGBnbG9iYWxgYCBvciBgYG5vbmxvY2FsYGBcbiAgICBzdGF0ZW1lbnQgaW4gdGhlIGN1cnJlbnQgY29kZSBibG9jazogdGhlIG5hbWUgaXMgYm91bmQgdG8gdGhlXG4gICAgb2JqZWN0IGluIHRoZSBjdXJyZW50IGxvY2FsIG5hbWVzcGFjZS5cblxuICAqIE90aGVyd2lzZTogdGhlIG5hbWUgaXMgYm91bmQgdG8gdGhlIG9iamVjdCBpbiB0aGUgZ2xvYmFsIG5hbWVzcGFjZVxuICAgIG9yIHRoZSBvdXRlciBuYW1lc3BhY2UgZGV0ZXJtaW5lZCBieSBgYG5vbmxvY2FsYGAsIHJlc3BlY3RpdmVseS5cblxuICBUaGUgbmFtZSBpcyByZWJvdW5kIGlmIGl0IHdhcyBhbHJlYWR5IGJvdW5kLiAgVGhpcyBtYXkgY2F1c2UgdGhlXG4gIHJlZmVyZW5jZSBjb3VudCBmb3IgdGhlIG9iamVjdCBwcmV2aW91c2x5IGJvdW5kIHRvIHRoZSBuYW1lIHRvIHJlYWNoXG4gIHplcm8sIGNhdXNpbmcgdGhlIG9iamVjdCB0byBiZSBkZWFsbG9jYXRlZCBhbmQgaXRzIGRlc3RydWN0b3IgKGlmIGl0XG4gIGhhcyBvbmUpIHRvIGJlIGNhbGxlZC5cblxuKiBJZiB0aGUgdGFyZ2V0IGlzIGEgdGFyZ2V0IGxpc3QgZW5jbG9zZWQgaW4gcGFyZW50aGVzZXMgb3IgaW4gc3F1YXJlXG4gIGJyYWNrZXRzOiBUaGUgb2JqZWN0IG11c3QgYmUgYW4gaXRlcmFibGUgd2l0aCB0aGUgc2FtZSBudW1iZXIgb2ZcbiAgaXRlbXMgYXMgdGhlcmUgYXJlIHRhcmdldHMgaW4gdGhlIHRhcmdldCBsaXN0LCBhbmQgaXRzIGl0ZW1zIGFyZVxuICBhc3NpZ25lZCwgZnJvbSBsZWZ0IHRvIHJpZ2h0LCB0byB0aGUgY29ycmVzcG9uZGluZyB0YXJnZXRzLlxuXG4qIElmIHRoZSB0YXJnZXQgaXMgYW4gYXR0cmlidXRlIHJlZmVyZW5jZTogVGhlIHByaW1hcnkgZXhwcmVzc2lvbiBpblxuICB0aGUgcmVmZXJlbmNlIGlzIGV2YWx1YXRlZC4gIEl0IHNob3VsZCB5aWVsZCBhbiBvYmplY3Qgd2l0aFxuICBhc3NpZ25hYmxlIGF0dHJpYnV0ZXM7IGlmIHRoaXMgaXMgbm90IHRoZSBjYXNlLCBgYFR5cGVFcnJvcmBgIGlzXG4gIHJhaXNlZC4gIFRoYXQgb2JqZWN0IGlzIHRoZW4gYXNrZWQgdG8gYXNzaWduIHRoZSBhc3NpZ25lZCBvYmplY3QgdG9cbiAgdGhlIGdpdmVuIGF0dHJpYnV0ZTsgaWYgaXQgY2Fubm90IHBlcmZvcm0gdGhlIGFzc2lnbm1lbnQsIGl0IHJhaXNlc1xuICBhbiBleGNlcHRpb24gKHVzdWFsbHkgYnV0IG5vdCBuZWNlc3NhcmlseSBgYEF0dHJpYnV0ZUVycm9yYGApLlxuXG4gIE5vdGU6IElmIHRoZSBvYmplY3QgaXMgYSBjbGFzcyBpbnN0YW5jZSBhbmQgdGhlIGF0dHJpYnV0ZSByZWZlcmVuY2VcbiAgb2NjdXJzIG9uIGJvdGggc2lkZXMgb2YgdGhlIGFzc2lnbm1lbnQgb3BlcmF0b3IsIHRoZSBSSFMgZXhwcmVzc2lvbixcbiAgYGBhLnhgYCBjYW4gYWNjZXNzIGVpdGhlciBhbiBpbnN0YW5jZSBhdHRyaWJ1dGUgb3IgKGlmIG5vIGluc3RhbmNlXG4gIGF0dHJpYnV0ZSBleGlzdHMpIGEgY2xhc3MgYXR0cmlidXRlLiAgVGhlIExIUyB0YXJnZXQgYGBhLnhgYCBpc1xuICBhbHdheXMgc2V0IGFzIGFuIGluc3RhbmNlIGF0dHJpYnV0ZSwgY3JlYXRpbmcgaXQgaWYgbmVjZXNzYXJ5LlxuICBUaHVzLCB0aGUgdHdvIG9jY3VycmVuY2VzIG9mIGBgYS54YGAgZG8gbm90IG5lY2Vzc2FyaWx5IHJlZmVyIHRvIHRoZVxuICBzYW1lIGF0dHJpYnV0ZTogaWYgdGhlIFJIUyBleHByZXNzaW9uIHJlZmVycyB0byBhIGNsYXNzIGF0dHJpYnV0ZSxcbiAgdGhlIExIUyBjcmVhdGVzIGEgbmV3IGluc3RhbmNlIGF0dHJpYnV0ZSBhcyB0aGUgdGFyZ2V0IG9mIHRoZVxuICBhc3NpZ25tZW50OlxuXG4gICAgIGNsYXNzIENsczpcbiAgICAgICAgIHggPSAzICAgICAgICAgICAgICMgY2xhc3MgdmFyaWFibGVcbiAgICAgaW5zdCA9IENscygpXG4gICAgIGluc3QueCA9IGluc3QueCArIDEgICAjIHdyaXRlcyBpbnN0LnggYXMgNCBsZWF2aW5nIENscy54IGFzIDNcblxuICBUaGlzIGRlc2NyaXB0aW9uIGRvZXMgbm90IG5lY2Vzc2FyaWx5IGFwcGx5IHRvIGRlc2NyaXB0b3JcbiAgYXR0cmlidXRlcywgc3VjaCBhcyBwcm9wZXJ0aWVzIGNyZWF0ZWQgd2l0aCBgYHByb3BlcnR5KClgYC5cblxuKiBJZiB0aGUgdGFyZ2V0IGlzIGEgc3Vic2NyaXB0aW9uOiBUaGUgcHJpbWFyeSBleHByZXNzaW9uIGluIHRoZVxuICByZWZlcmVuY2UgaXMgZXZhbHVhdGVkLiAgSXQgc2hvdWxkIHlpZWxkIGVpdGhlciBhIG11dGFibGUgc2VxdWVuY2VcbiAgb2JqZWN0IChzdWNoIGFzIGEgbGlzdCkgb3IgYSBtYXBwaW5nIG9iamVjdCAoc3VjaCBhcyBhIGRpY3Rpb25hcnkpLlxuICBOZXh0LCB0aGUgc3Vic2NyaXB0IGV4cHJlc3Npb24gaXMgZXZhbHVhdGVkLlxuXG4gIElmIHRoZSBwcmltYXJ5IGlzIGEgbXV0YWJsZSBzZXF1ZW5jZSBvYmplY3QgKHN1Y2ggYXMgYSBsaXN0KSwgdGhlXG4gIHN1YnNjcmlwdCBtdXN0IHlpZWxkIGFuIGludGVnZXIuICBJZiBpdCBpcyBuZWdhdGl2ZSwgdGhlIHNlcXVlbmNlXCdzXG4gIGxlbmd0aCBpcyBhZGRlZCB0byBpdC4gIFRoZSByZXN1bHRpbmcgdmFsdWUgbXVzdCBiZSBhIG5vbm5lZ2F0aXZlXG4gIGludGVnZXIgbGVzcyB0aGFuIHRoZSBzZXF1ZW5jZVwncyBsZW5ndGgsIGFuZCB0aGUgc2VxdWVuY2UgaXMgYXNrZWRcbiAgdG8gYXNzaWduIHRoZSBhc3NpZ25lZCBvYmplY3QgdG8gaXRzIGl0ZW0gd2l0aCB0aGF0IGluZGV4LiAgSWYgdGhlXG4gIGluZGV4IGlzIG91dCBvZiByYW5nZSwgYGBJbmRleEVycm9yYGAgaXMgcmFpc2VkIChhc3NpZ25tZW50IHRvIGFcbiAgc3Vic2NyaXB0ZWQgc2VxdWVuY2UgY2Fubm90IGFkZCBuZXcgaXRlbXMgdG8gYSBsaXN0KS5cblxuICBJZiB0aGUgcHJpbWFyeSBpcyBhIG1hcHBpbmcgb2JqZWN0IChzdWNoIGFzIGEgZGljdGlvbmFyeSksIHRoZVxuICBzdWJzY3JpcHQgbXVzdCBoYXZlIGEgdHlwZSBjb21wYXRpYmxlIHdpdGggdGhlIG1hcHBpbmdcJ3Mga2V5IHR5cGUsXG4gIGFuZCB0aGUgbWFwcGluZyBpcyB0aGVuIGFza2VkIHRvIGNyZWF0ZSBhIGtleS9kYXR1bSBwYWlyIHdoaWNoIG1hcHNcbiAgdGhlIHN1YnNjcmlwdCB0byB0aGUgYXNzaWduZWQgb2JqZWN0LiAgVGhpcyBjYW4gZWl0aGVyIHJlcGxhY2UgYW5cbiAgZXhpc3Rpbmcga2V5L3ZhbHVlIHBhaXIgd2l0aCB0aGUgc2FtZSBrZXkgdmFsdWUsIG9yIGluc2VydCBhIG5ld1xuICBrZXkvdmFsdWUgcGFpciAoaWYgbm8ga2V5IHdpdGggdGhlIHNhbWUgdmFsdWUgZXhpc3RlZCkuXG5cbiAgRm9yIHVzZXItZGVmaW5lZCBvYmplY3RzLCB0aGUgYGBfX3NldGl0ZW1fXygpYGAgbWV0aG9kIGlzIGNhbGxlZFxuICB3aXRoIGFwcHJvcHJpYXRlIGFyZ3VtZW50cy5cblxuKiBJZiB0aGUgdGFyZ2V0IGlzIGEgc2xpY2luZzogVGhlIHByaW1hcnkgZXhwcmVzc2lvbiBpbiB0aGUgcmVmZXJlbmNlXG4gIGlzIGV2YWx1YXRlZC4gIEl0IHNob3VsZCB5aWVsZCBhIG11dGFibGUgc2VxdWVuY2Ugb2JqZWN0IChzdWNoIGFzIGFcbiAgbGlzdCkuICBUaGUgYXNzaWduZWQgb2JqZWN0IHNob3VsZCBiZSBhIHNlcXVlbmNlIG9iamVjdCBvZiB0aGUgc2FtZVxuICB0eXBlLiAgTmV4dCwgdGhlIGxvd2VyIGFuZCB1cHBlciBib3VuZCBleHByZXNzaW9ucyBhcmUgZXZhbHVhdGVkLFxuICBpbnNvZmFyIHRoZXkgYXJlIHByZXNlbnQ7IGRlZmF1bHRzIGFyZSB6ZXJvIGFuZCB0aGUgc2VxdWVuY2VcJ3NcbiAgbGVuZ3RoLiAgVGhlIGJvdW5kcyBzaG91bGQgZXZhbHVhdGUgdG8gaW50ZWdlcnMuIElmIGVpdGhlciBib3VuZCBpc1xuICBuZWdhdGl2ZSwgdGhlIHNlcXVlbmNlXCdzIGxlbmd0aCBpcyBhZGRlZCB0byBpdC4gIFRoZSByZXN1bHRpbmdcbiAgYm91bmRzIGFyZSBjbGlwcGVkIHRvIGxpZSBiZXR3ZWVuIHplcm8gYW5kIHRoZSBzZXF1ZW5jZVwncyBsZW5ndGgsXG4gIGluY2x1c2l2ZS4gIEZpbmFsbHksIHRoZSBzZXF1ZW5jZSBvYmplY3QgaXMgYXNrZWQgdG8gcmVwbGFjZSB0aGVcbiAgc2xpY2Ugd2l0aCB0aGUgaXRlbXMgb2YgdGhlIGFzc2lnbmVkIHNlcXVlbmNlLiAgVGhlIGxlbmd0aCBvZiB0aGVcbiAgc2xpY2UgbWF5IGJlIGRpZmZlcmVudCBmcm9tIHRoZSBsZW5ndGggb2YgdGhlIGFzc2lnbmVkIHNlcXVlbmNlLFxuICB0aHVzIGNoYW5naW5nIHRoZSBsZW5ndGggb2YgdGhlIHRhcmdldCBzZXF1ZW5jZSwgaWYgdGhlIG9iamVjdFxuICBhbGxvd3MgaXQuXG5cbioqQ1B5dGhvbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWw6KiogSW4gdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24sIHRoZVxuc3ludGF4IGZvciB0YXJnZXRzIGlzIHRha2VuIHRvIGJlIHRoZSBzYW1lIGFzIGZvciBleHByZXNzaW9ucywgYW5kXG5pbnZhbGlkIHN5bnRheCBpcyByZWplY3RlZCBkdXJpbmcgdGhlIGNvZGUgZ2VuZXJhdGlvbiBwaGFzZSwgY2F1c2luZ1xubGVzcyBkZXRhaWxlZCBlcnJvciBtZXNzYWdlcy5cblxuV0FSTklORzogQWx0aG91Z2ggdGhlIGRlZmluaXRpb24gb2YgYXNzaWdubWVudCBpbXBsaWVzIHRoYXQgb3ZlcmxhcHNcbmJldHdlZW4gdGhlIGxlZnQtaGFuZCBzaWRlIGFuZCB0aGUgcmlnaHQtaGFuZCBzaWRlIGFyZSBcJ3NhZmVcJyAoZm9yXG5leGFtcGxlIGBgYSwgYiA9IGIsIGFgYCBzd2FwcyB0d28gdmFyaWFibGVzKSwgb3ZlcmxhcHMgKndpdGhpbiogdGhlXG5jb2xsZWN0aW9uIG9mIGFzc2lnbmVkLXRvIHZhcmlhYmxlcyBhcmUgbm90IHNhZmUhICBGb3IgaW5zdGFuY2UsIHRoZVxuZm9sbG93aW5nIHByb2dyYW0gcHJpbnRzIGBgWzAsIDJdYGA6XG5cbiAgIHggPSBbMCwgMV1cbiAgIGkgPSAwXG4gICBpLCB4W2ldID0gMSwgMlxuICAgcHJpbnQoeClcblxuU2VlIGFsc286XG5cbiAgICoqUEVQIDMxMzIqKiAtIEV4dGVuZGVkIEl0ZXJhYmxlIFVucGFja2luZ1xuICAgICAgVGhlIHNwZWNpZmljYXRpb24gZm9yIHRoZSBgYCp0YXJnZXRgYCBmZWF0dXJlLlxuXG5cbkF1Z21lbnRlZCBhc3NpZ25tZW50IHN0YXRlbWVudHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQXVnbWVudGVkIGFzc2lnbm1lbnQgaXMgdGhlIGNvbWJpbmF0aW9uLCBpbiBhIHNpbmdsZSBzdGF0ZW1lbnQsIG9mIGFcbmJpbmFyeSBvcGVyYXRpb24gYW5kIGFuIGFzc2lnbm1lbnQgc3RhdGVtZW50OlxuXG4gICBhdWdtZW50ZWRfYXNzaWdubWVudF9zdG10IDo6PSBhdWd0YXJnZXQgYXVnb3AgKGV4cHJlc3Npb25fbGlzdCB8IHlpZWxkX2V4cHJlc3Npb24pXG4gICBhdWd0YXJnZXQgICAgICAgICAgICAgICAgIDo6PSBpZGVudGlmaWVyIHwgYXR0cmlidXRlcmVmIHwgc3Vic2NyaXB0aW9uIHwgc2xpY2luZ1xuICAgYXVnb3AgICAgICAgICAgICAgICAgICAgICA6Oj0gIis9IiB8ICItPSIgfCAiKj0iIHwgIi89IiB8ICIvLz0iIHwgIiU9IiB8ICIqKj0iXG4gICAgICAgICAgICAgfCAiPj49IiB8ICI8PD0iIHwgIiY9IiB8ICJePSIgfCAifD0iXG5cbihTZWUgc2VjdGlvbiAqUHJpbWFyaWVzKiBmb3IgdGhlIHN5bnRheCBkZWZpbml0aW9ucyBmb3IgdGhlIGxhc3QgdGhyZWVcbnN5bWJvbHMuKVxuXG5BbiBhdWdtZW50ZWQgYXNzaWdubWVudCBldmFsdWF0ZXMgdGhlIHRhcmdldCAod2hpY2gsIHVubGlrZSBub3JtYWxcbmFzc2lnbm1lbnQgc3RhdGVtZW50cywgY2Fubm90IGJlIGFuIHVucGFja2luZykgYW5kIHRoZSBleHByZXNzaW9uXG5saXN0LCBwZXJmb3JtcyB0aGUgYmluYXJ5IG9wZXJhdGlvbiBzcGVjaWZpYyB0byB0aGUgdHlwZSBvZiBhc3NpZ25tZW50XG5vbiB0aGUgdHdvIG9wZXJhbmRzLCBhbmQgYXNzaWducyB0aGUgcmVzdWx0IHRvIHRoZSBvcmlnaW5hbCB0YXJnZXQuXG5UaGUgdGFyZ2V0IGlzIG9ubHkgZXZhbHVhdGVkIG9uY2UuXG5cbkFuIGF1Z21lbnRlZCBhc3NpZ25tZW50IGV4cHJlc3Npb24gbGlrZSBgYHggKz0gMWBgIGNhbiBiZSByZXdyaXR0ZW4gYXNcbmBgeCA9IHggKyAxYGAgdG8gYWNoaWV2ZSBhIHNpbWlsYXIsIGJ1dCBub3QgZXhhY3RseSBlcXVhbCBlZmZlY3QuIEluXG50aGUgYXVnbWVudGVkIHZlcnNpb24sIGBgeGBgIGlzIG9ubHkgZXZhbHVhdGVkIG9uY2UuIEFsc28sIHdoZW5cbnBvc3NpYmxlLCB0aGUgYWN0dWFsIG9wZXJhdGlvbiBpcyBwZXJmb3JtZWQgKmluLXBsYWNlKiwgbWVhbmluZyB0aGF0XG5yYXRoZXIgdGhhbiBjcmVhdGluZyBhIG5ldyBvYmplY3QgYW5kIGFzc2lnbmluZyB0aGF0IHRvIHRoZSB0YXJnZXQsXG50aGUgb2xkIG9iamVjdCBpcyBtb2RpZmllZCBpbnN0ZWFkLlxuXG5XaXRoIHRoZSBleGNlcHRpb24gb2YgYXNzaWduaW5nIHRvIHR1cGxlcyBhbmQgbXVsdGlwbGUgdGFyZ2V0cyBpbiBhXG5zaW5nbGUgc3RhdGVtZW50LCB0aGUgYXNzaWdubWVudCBkb25lIGJ5IGF1Z21lbnRlZCBhc3NpZ25tZW50XG5zdGF0ZW1lbnRzIGlzIGhhbmRsZWQgdGhlIHNhbWUgd2F5IGFzIG5vcm1hbCBhc3NpZ25tZW50cy4gU2ltaWxhcmx5LFxud2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBwb3NzaWJsZSAqaW4tcGxhY2UqIGJlaGF2aW9yLCB0aGUgYmluYXJ5XG5vcGVyYXRpb24gcGVyZm9ybWVkIGJ5IGF1Z21lbnRlZCBhc3NpZ25tZW50IGlzIHRoZSBzYW1lIGFzIHRoZSBub3JtYWxcbmJpbmFyeSBvcGVyYXRpb25zLlxuXG5Gb3IgdGFyZ2V0cyB3aGljaCBhcmUgYXR0cmlidXRlIHJlZmVyZW5jZXMsIHRoZSBzYW1lICpjYXZlYXQgYWJvdXRcbmNsYXNzIGFuZCBpbnN0YW5jZSBhdHRyaWJ1dGVzKiBhcHBsaWVzIGFzIGZvciByZWd1bGFyIGFzc2lnbm1lbnRzLlxuJywKICAnYXRvbS1pZGVudGlmaWVycyc6ICdcbklkZW50aWZpZXJzIChOYW1lcylcbioqKioqKioqKioqKioqKioqKipcblxuQW4gaWRlbnRpZmllciBvY2N1cnJpbmcgYXMgYW4gYXRvbSBpcyBhIG5hbWUuICBTZWUgc2VjdGlvblxuKklkZW50aWZpZXJzIGFuZCBrZXl3b3JkcyogZm9yIGxleGljYWwgZGVmaW5pdGlvbiBhbmQgc2VjdGlvbiAqTmFtaW5nXG5hbmQgYmluZGluZyogZm9yIGRvY3VtZW50YXRpb24gb2YgbmFtaW5nIGFuZCBiaW5kaW5nLlxuXG5XaGVuIHRoZSBuYW1lIGlzIGJvdW5kIHRvIGFuIG9iamVjdCwgZXZhbHVhdGlvbiBvZiB0aGUgYXRvbSB5aWVsZHNcbnRoYXQgb2JqZWN0LiBXaGVuIGEgbmFtZSBpcyBub3QgYm91bmQsIGFuIGF0dGVtcHQgdG8gZXZhbHVhdGUgaXRcbnJhaXNlcyBhIGBgTmFtZUVycm9yYGAgZXhjZXB0aW9uLlxuXG4qKlByaXZhdGUgbmFtZSBtYW5nbGluZzoqKiBXaGVuIGFuIGlkZW50aWZpZXIgdGhhdCB0ZXh0dWFsbHkgb2NjdXJzIGluXG5hIGNsYXNzIGRlZmluaXRpb24gYmVnaW5zIHdpdGggdHdvIG9yIG1vcmUgdW5kZXJzY29yZSBjaGFyYWN0ZXJzIGFuZFxuZG9lcyBub3QgZW5kIGluIHR3byBvciBtb3JlIHVuZGVyc2NvcmVzLCBpdCBpcyBjb25zaWRlcmVkIGEgKnByaXZhdGVcbm5hbWUqIG9mIHRoYXQgY2xhc3MuIFByaXZhdGUgbmFtZXMgYXJlIHRyYW5zZm9ybWVkIHRvIGEgbG9uZ2VyIGZvcm1cbmJlZm9yZSBjb2RlIGlzIGdlbmVyYXRlZCBmb3IgdGhlbS4gIFRoZSB0cmFuc2Zvcm1hdGlvbiBpbnNlcnRzIHRoZVxuY2xhc3MgbmFtZSBpbiBmcm9udCBvZiB0aGUgbmFtZSwgd2l0aCBsZWFkaW5nIHVuZGVyc2NvcmVzIHJlbW92ZWQsIGFuZFxuYSBzaW5nbGUgdW5kZXJzY29yZSBpbnNlcnRlZCBpbiBmcm9udCBvZiB0aGUgY2xhc3MgbmFtZS4gIEZvciBleGFtcGxlLFxudGhlIGlkZW50aWZpZXIgYGBfX3NwYW1gYCBvY2N1cnJpbmcgaW4gYSBjbGFzcyBuYW1lZCBgYEhhbWBgIHdpbGwgYmVcbnRyYW5zZm9ybWVkIHRvIGBgX0hhbV9fc3BhbWBgLiAgVGhpcyB0cmFuc2Zvcm1hdGlvbiBpcyBpbmRlcGVuZGVudCBvZlxudGhlIHN5bnRhY3RpY2FsIGNvbnRleHQgaW4gd2hpY2ggdGhlIGlkZW50aWZpZXIgaXMgdXNlZC4gIElmIHRoZVxudHJhbnNmb3JtZWQgbmFtZSBpcyBleHRyZW1lbHkgbG9uZyAobG9uZ2VyIHRoYW4gMjU1IGNoYXJhY3RlcnMpLFxuaW1wbGVtZW50YXRpb24gZGVmaW5lZCB0cnVuY2F0aW9uIG1heSBoYXBwZW4uICBJZiB0aGUgY2xhc3MgbmFtZVxuY29uc2lzdHMgb25seSBvZiB1bmRlcnNjb3Jlcywgbm8gdHJhbnNmb3JtYXRpb24gaXMgZG9uZS5cbicsCkBAIC0xNSwxMCArMTUsMTAgQEAKICAnYm9vbGVhbnMnOiAnXG5Cb29sZWFuIG9wZXJhdGlvbnNcbioqKioqKioqKioqKioqKioqKlxuXG4gICBvcl90ZXN0ICA6Oj0gYW5kX3Rlc3QgfCBvcl90ZXN0ICJvciIgYW5kX3Rlc3RcbiAgIGFuZF90ZXN0IDo6PSBub3RfdGVzdCB8IGFuZF90ZXN0ICJhbmQiIG5vdF90ZXN0XG4gICBub3RfdGVzdCA6Oj0gY29tcGFyaXNvbiB8ICJub3QiIG5vdF90ZXN0XG5cbkluIHRoZSBjb250ZXh0IG9mIEJvb2xlYW4gb3BlcmF0aW9ucywgYW5kIGFsc28gd2hlbiBleHByZXNzaW9ucyBhcmVcbnVzZWQgYnkgY29udHJvbCBmbG93IHN0YXRlbWVudHMsIHRoZSBmb2xsb3dpbmcgdmFsdWVzIGFyZSBpbnRlcnByZXRlZFxuYXMgZmFsc2U6IGBgRmFsc2VgYCwgYGBOb25lYGAsIG51bWVyaWMgemVybyBvZiBhbGwgdHlwZXMsIGFuZCBlbXB0eVxuc3RyaW5ncyBhbmQgY29udGFpbmVycyAoaW5jbHVkaW5nIHN0cmluZ3MsIHR1cGxlcywgbGlzdHMsXG5kaWN0aW9uYXJpZXMsIHNldHMgYW5kIGZyb3plbnNldHMpLiAgQWxsIG90aGVyIHZhbHVlcyBhcmUgaW50ZXJwcmV0ZWRcbmFzIHRydWUuICBVc2VyLWRlZmluZWQgb2JqZWN0cyBjYW4gY3VzdG9taXplIHRoZWlyIHRydXRoIHZhbHVlIGJ5XG5wcm92aWRpbmcgYSBgYF9fYm9vbF9fKClgYCBtZXRob2QuXG5cblRoZSBvcGVyYXRvciBgYG5vdGBgIHlpZWxkcyBgYFRydWVgYCBpZiBpdHMgYXJndW1lbnQgaXMgZmFsc2UsXG5gYEZhbHNlYGAgb3RoZXJ3aXNlLlxuXG5UaGUgZXhwcmVzc2lvbiBgYHggYW5kIHlgYCBmaXJzdCBldmFsdWF0ZXMgKngqOyBpZiAqeCogaXMgZmFsc2UsIGl0c1xudmFsdWUgaXMgcmV0dXJuZWQ7IG90aGVyd2lzZSwgKnkqIGlzIGV2YWx1YXRlZCBhbmQgdGhlIHJlc3VsdGluZyB2YWx1ZVxuaXMgcmV0dXJuZWQuXG5cblRoZSBleHByZXNzaW9uIGBgeCBvciB5YGAgZmlyc3QgZXZhbHVhdGVzICp4KjsgaWYgKngqIGlzIHRydWUsIGl0c1xudmFsdWUgaXMgcmV0dXJuZWQ7IG90aGVyd2lzZSwgKnkqIGlzIGV2YWx1YXRlZCBhbmQgdGhlIHJlc3VsdGluZyB2YWx1ZVxuaXMgcmV0dXJuZWQuXG5cbihOb3RlIHRoYXQgbmVpdGhlciBgYGFuZGBgIG5vciBgYG9yYGAgcmVzdHJpY3QgdGhlIHZhbHVlIGFuZCB0eXBlIHRoZXlcbnJldHVybiB0byBgYEZhbHNlYGAgYW5kIGBgVHJ1ZWBgLCBidXQgcmF0aGVyIHJldHVybiB0aGUgbGFzdCBldmFsdWF0ZWRcbmFyZ3VtZW50LiAgVGhpcyBpcyBzb21ldGltZXMgdXNlZnVsLCBlLmcuLCBpZiBgYHNgYCBpcyBhIHN0cmluZyB0aGF0XG5zaG91bGQgYmUgcmVwbGFjZWQgYnkgYSBkZWZhdWx0IHZhbHVlIGlmIGl0IGlzIGVtcHR5LCB0aGUgZXhwcmVzc2lvblxuYGBzIG9yIFwnZm9vXCdgYCB5aWVsZHMgdGhlIGRlc2lyZWQgdmFsdWUuICBCZWNhdXNlIGBgbm90YGAgaGFzIHRvXG5pbnZlbnQgYSB2YWx1ZSBhbnl3YXksIGl0IGRvZXMgbm90IGJvdGhlciB0byByZXR1cm4gYSB2YWx1ZSBvZiB0aGVcbnNhbWUgdHlwZSBhcyBpdHMgYXJndW1lbnQsIHNvIGUuZy4sIGBgbm90IFwnZm9vXCdgYCB5aWVsZHMgYGBGYWxzZWBgLFxubm90IGBgXCdcJ2BgLilcbicsCiAgJ2JyZWFrJzogJ1xuVGhlIGBgYnJlYWtgYCBzdGF0ZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqXG5cbiAgIGJyZWFrX3N0bXQgOjo9ICJicmVhayJcblxuYGBicmVha2BgIG1heSBvbmx5IG9jY3VyIHN5bnRhY3RpY2FsbHkgbmVzdGVkIGluIGEgYGBmb3JgYCBvclxuYGB3aGlsZWBgIGxvb3AsIGJ1dCBub3QgbmVzdGVkIGluIGEgZnVuY3Rpb24gb3IgY2xhc3MgZGVmaW5pdGlvblxud2l0aGluIHRoYXQgbG9vcC5cblxuSXQgdGVybWluYXRlcyB0aGUgbmVhcmVzdCBlbmNsb3NpbmcgbG9vcCwgc2tpcHBpbmcgdGhlIG9wdGlvbmFsXG5gYGVsc2VgYCBjbGF1c2UgaWYgdGhlIGxvb3AgaGFzIG9uZS5cblxuSWYgYSBgYGZvcmBgIGxvb3AgaXMgdGVybWluYXRlZCBieSBgYGJyZWFrYGAsIHRoZSBsb29wIGNvbnRyb2wgdGFyZ2V0XG5rZWVwcyBpdHMgY3VycmVudCB2YWx1ZS5cblxuV2hlbiBgYGJyZWFrYGAgcGFzc2VzIGNvbnRyb2wgb3V0IG9mIGEgYGB0cnlgYCBzdGF0ZW1lbnQgd2l0aCBhXG5gYGZpbmFsbHlgYCBjbGF1c2UsIHRoYXQgYGBmaW5hbGx5YGAgY2xhdXNlIGlzIGV4ZWN1dGVkIGJlZm9yZSByZWFsbHlcbmxlYXZpbmcgdGhlIGxvb3AuXG4nLAogICdjYWxsYWJsZS10eXBlcyc6ICdcbkVtdWxhdGluZyBjYWxsYWJsZSBvYmplY3RzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5vYmplY3QuX19jYWxsX18oc2VsZlssIGFyZ3MuLi5dKVxuXG4gICBDYWxsZWQgd2hlbiB0aGUgaW5zdGFuY2UgaXMgImNhbGxlZCIgYXMgYSBmdW5jdGlvbjsgaWYgdGhpcyBtZXRob2RcbiAgIGlzIGRlZmluZWQsIGBgeChhcmcxLCBhcmcyLCAuLi4pYGAgaXMgYSBzaG9ydGhhbmQgZm9yXG4gICBgYHguX19jYWxsX18oYXJnMSwgYXJnMiwgLi4uKWBgLlxuJywKLSAnY2FsbHMnOiAnXG5DYWxsc1xuKioqKipcblxuQSBjYWxsIGNhbGxzIGEgY2FsbGFibGUgb2JqZWN0IChlLmcuLCBhIGZ1bmN0aW9uKSB3aXRoIGEgcG9zc2libHlcbmVtcHR5IHNlcmllcyBvZiBhcmd1bWVudHM6XG5cbiAgIGNhbGwgICAgICAgICAgICAgICAgIDo6PSBwcmltYXJ5ICIoIiBbYXJndW1lbnRfbGlzdCBbIiwiXSB8IGNvbXByZWhlbnNpb25dICIpIlxuICAgYXJndW1lbnRfbGlzdCAgICAgICAgOjo9IHBvc2l0aW9uYWxfYXJndW1lbnRzIFsiLCIga2V5d29yZF9hcmd1bWVudHNdXG4gICAgICAgICAgICAgICAgICAgICAgIFsiLCIgIioiIGV4cHJlc3Npb25dIFsiLCIga2V5d29yZF9hcmd1bWVudHNdXG4gICAgICAgICAgICAgICAgICAgICAgIFsiLCIgIioqIiBleHByZXNzaW9uXVxuICAgICAgICAgICAgICAgICAgICAgfCBrZXl3b3JkX2FyZ3VtZW50cyBbIiwiICIqIiBleHByZXNzaW9uXVxuICAgICAgICAgICAgICAgICAgICAgICBbIiwiIGtleXdvcmRfYXJndW1lbnRzXSBbIiwiICIqKiIgZXhwcmVzc2lvbl1cbiAgICAgICAgICAgICAgICAgICAgIHwgIioiIGV4cHJlc3Npb24gWyIsIiBrZXl3b3JkX2FyZ3VtZW50c10gWyIsIiAiKioiIGV4cHJlc3Npb25dXG4gICAgICAgICAgICAgICAgICAgICB8ICIqKiIgZXhwcmVzc2lvblxuICAgcG9zaXRpb25hbF9hcmd1bWVudHMgOjo9IGV4cHJlc3Npb24gKCIsIiBleHByZXNzaW9uKSpcbiAgIGtleXdvcmRfYXJndW1lbnRzICAgIDo6PSBrZXl3b3JkX2l0ZW0gKCIsIiBrZXl3b3JkX2l0ZW0pKlxuICAga2V5d29yZF9pdGVtICAgICAgICAgOjo9IGlkZW50aWZpZXIgIj0iIGV4cHJlc3Npb25cblxuQSB0cmFpbGluZyBjb21tYSBtYXkgYmUgcHJlc2VudCBhZnRlciB0aGUgcG9zaXRpb25hbCBhbmQga2V5d29yZFxuYXJndW1lbnRzIGJ1dCBkb2VzIG5vdCBhZmZlY3QgdGhlIHNlbWFudGljcy5cblxuVGhlIHByaW1hcnkgbXVzdCBldmFsdWF0ZSB0byBhIGNhbGxhYmxlIG9iamVjdCAodXNlci1kZWZpbmVkXG5mdW5jdGlvbnMsIGJ1aWx0LWluIGZ1bmN0aW9ucywgbWV0aG9kcyBvZiBidWlsdC1pbiBvYmplY3RzLCBjbGFzc1xub2JqZWN0cywgbWV0aG9kcyBvZiBjbGFzcyBpbnN0YW5jZXMsIGFuZCBhbGwgb2JqZWN0cyBoYXZpbmcgYVxuYGBfX2NhbGxfXygpYGAgbWV0aG9kIGFyZSBjYWxsYWJsZSkuICBBbGwgYXJndW1lbnQgZXhwcmVzc2lvbnMgYXJlXG5ldmFsdWF0ZWQgYmVmb3JlIHRoZSBjYWxsIGlzIGF0dGVtcHRlZC4gIFBsZWFzZSByZWZlciB0byBzZWN0aW9uXG4qRnVuY3Rpb24gZGVmaW5pdGlvbnMqIGZvciB0aGUgc3ludGF4IG9mIGZvcm1hbCBwYXJhbWV0ZXIgbGlzdHMuXG5cbklmIGtleXdvcmQgYXJndW1lbnRzIGFyZSBwcmVzZW50LCB0aGV5IGFyZSBmaXJzdCBjb252ZXJ0ZWQgdG9cbnBvc2l0aW9uYWwgYXJndW1lbnRzLCBhcyBmb2xsb3dzLiAgRmlyc3QsIGEgbGlzdCBvZiB1bmZpbGxlZCBzbG90cyBpc1xuY3JlYXRlZCBmb3IgdGhlIGZvcm1hbCBwYXJhbWV0ZXJzLiAgSWYgdGhlcmUgYXJlIE4gcG9zaXRpb25hbFxuYXJndW1lbnRzLCB0aGV5IGFyZSBwbGFjZWQgaW4gdGhlIGZpcnN0IE4gc2xvdHMuICBOZXh0LCBmb3IgZWFjaFxua2V5d29yZCBhcmd1bWVudCwgdGhlIGlkZW50aWZpZXIgaXMgdXNlZCB0byBkZXRlcm1pbmUgdGhlXG5jb3JyZXNwb25kaW5nIHNsb3QgKGlmIHRoZSBpZGVudGlmaWVyIGlzIHRoZSBzYW1lIGFzIHRoZSBmaXJzdCBmb3JtYWxcbnBhcmFtZXRlciBuYW1lLCB0aGUgZmlyc3Qgc2xvdCBpcyB1c2VkLCBhbmQgc28gb24pLiAgSWYgdGhlIHNsb3QgaXNcbmFscmVhZHkgZmlsbGVkLCBhIGBgVHlwZUVycm9yYGAgZXhjZXB0aW9uIGlzIHJhaXNlZC4gT3RoZXJ3aXNlLCB0aGVcbnZhbHVlIG9mIHRoZSBhcmd1bWVudCBpcyBwbGFjZWQgaW4gdGhlIHNsb3QsIGZpbGxpbmcgaXQgKGV2ZW4gaWYgdGhlXG5leHByZXNzaW9uIGlzIGBgTm9uZWBgLCBpdCBmaWxscyB0aGUgc2xvdCkuICBXaGVuIGFsbCBhcmd1bWVudHMgaGF2ZVxuYmVlbiBwcm9jZXNzZWQsIHRoZSBzbG90cyB0aGF0IGFyZSBzdGlsbCB1bmZpbGxlZCBhcmUgZmlsbGVkIHdpdGggdGhlXG5jb3JyZXNwb25kaW5nIGRlZmF1bHQgdmFsdWUgZnJvbSB0aGUgZnVuY3Rpb24gZGVmaW5pdGlvbi4gIChEZWZhdWx0XG52YWx1ZXMgYXJlIGNhbGN1bGF0ZWQsIG9uY2UsIHdoZW4gdGhlIGZ1bmN0aW9uIGlzIGRlZmluZWQ7IHRodXMsIGFcbm11dGFibGUgb2JqZWN0IHN1Y2ggYXMgYSBsaXN0IG9yIGRpY3Rpb25hcnkgdXNlZCBhcyBkZWZhdWx0IHZhbHVlIHdpbGxcbmJlIHNoYXJlZCBieSBhbGwgY2FsbHMgdGhhdCBkb25cJ3Qgc3BlY2lmeSBhbiBhcmd1bWVudCB2YWx1ZSBmb3IgdGhlXG5jb3JyZXNwb25kaW5nIHNsb3Q7IHRoaXMgc2hvdWxkIHVzdWFsbHkgYmUgYXZvaWRlZC4pICBJZiB0aGVyZSBhcmUgYW55XG51bmZpbGxlZCBzbG90cyBmb3Igd2hpY2ggbm8gZGVmYXVsdCB2YWx1ZSBpcyBzcGVjaWZpZWQsIGFcbmBgVHlwZUVycm9yYGAgZXhjZXB0aW9uIGlzIHJhaXNlZC4gIE90aGVyd2lzZSwgdGhlIGxpc3Qgb2YgZmlsbGVkXG5zbG90cyBpcyB1c2VkIGFzIHRoZSBhcmd1bWVudCBsaXN0IGZvciB0aGUgY2FsbC5cblxuKipDUHl0aG9uIGltcGxlbWVudGF0aW9uIGRldGFpbDoqKiBBbiBpbXBsZW1lbnRhdGlvbiBtYXkgcHJvdmlkZVxuYnVpbHQtaW4gZnVuY3Rpb25zIHdob3NlIHBvc2l0aW9uYWwgcGFyYW1ldGVycyBkbyBub3QgaGF2ZSBuYW1lcywgZXZlblxuaWYgdGhleSBhcmUgXCduYW1lZFwnIGZvciB0aGUgcHVycG9zZSBvZiBkb2N1bWVudGF0aW9uLCBhbmQgd2hpY2hcbnRoZXJlZm9yZSBjYW5ub3QgYmUgc3VwcGxpZWQgYnkga2V5d29yZC4gIEluIENQeXRob24sIHRoaXMgaXMgdGhlIGNhc2VcbmZvciBmdW5jdGlvbnMgaW1wbGVtZW50ZWQgaW4gQyB0aGF0IHVzZSBgYFB5QXJnX1BhcnNlVHVwbGUoKWBgIHRvXG5wYXJzZSB0aGVpciBhcmd1bWVudHMuXG5cbklmIHRoZXJlIGFyZSBtb3JlIHBvc2l0aW9uYWwgYXJndW1lbnRzIHRoYW4gdGhlcmUgYXJlIGZvcm1hbCBwYXJhbWV0ZXJcbnNsb3RzLCBhIGBgVHlwZUVycm9yYGAgZXhjZXB0aW9uIGlzIHJhaXNlZCwgdW5sZXNzIGEgZm9ybWFsIHBhcmFtZXRlclxudXNpbmcgdGhlIHN5bnRheCBgYCppZGVudGlmaWVyYGAgaXMgcHJlc2VudDsgaW4gdGhpcyBjYXNlLCB0aGF0IGZvcm1hbFxucGFyYW1ldGVyIHJlY2VpdmVzIGEgdHVwbGUgY29udGFpbmluZyB0aGUgZXhjZXNzIHBvc2l0aW9uYWwgYXJndW1lbnRzXG4ob3IgYW4gZW1wdHkgdHVwbGUgaWYgdGhlcmUgd2VyZSBubyBleGNlc3MgcG9zaXRpb25hbCBhcmd1bWVudHMpLlxuXG5JZiBhbnkga2V5d29yZCBhcmd1bWVudCBkb2VzIG5vdCBjb3JyZXNwb25kIHRvIGEgZm9ybWFsIHBhcmFtZXRlclxubmFtZSwgYSBgYFR5cGVFcnJvcmBgIGV4Y2VwdGlvbiBpcyByYWlzZWQsIHVubGVzcyBhIGZvcm1hbCBwYXJhbWV0ZXJcbnVzaW5nIHRoZSBzeW50YXggYGAqKmlkZW50aWZpZXJgYCBpcyBwcmVzZW50OyBpbiB0aGlzIGNhc2UsIHRoYXRcbmZvcm1hbCBwYXJhbWV0ZXIgcmVjZWl2ZXMgYSBkaWN0aW9uYXJ5IGNvbnRhaW5pbmcgdGhlIGV4Y2VzcyBrZXl3b3JkXG5hcmd1bWVudHMgKHVzaW5nIHRoZSBrZXl3b3JkcyBhcyBrZXlzIGFuZCB0aGUgYXJndW1lbnQgdmFsdWVzIGFzXG5jb3JyZXNwb25kaW5nIHZhbHVlcyksIG9yIGEgKG5ldykgZW1wdHkgZGljdGlvbmFyeSBpZiB0aGVyZSB3ZXJlIG5vXG5leGNlc3Mga2V5d29yZCBhcmd1bWVudHMuXG5cbklmIHRoZSBzeW50YXggYGAqZXhwcmVzc2lvbmBgIGFwcGVhcnMgaW4gdGhlIGZ1bmN0aW9uIGNhbGwsXG5gYGV4cHJlc3Npb25gYCBtdXN0IGV2YWx1YXRlIHRvIGFuIGl0ZXJhYmxlLiAgRWxlbWVudHMgZnJvbSB0aGlzXG5pdGVyYWJsZSBhcmUgdHJlYXRlZCBhcyBpZiB0aGV5IHdlcmUgYWRkaXRpb25hbCBwb3NpdGlvbmFsIGFyZ3VtZW50cztcbmlmIHRoZXJlIGFyZSBwb3NpdGlvbmFsIGFyZ3VtZW50cyAqeDEqLCAuLi4sICp4TiosIGFuZCBgYGV4cHJlc3Npb25gYFxuZXZhbHVhdGVzIHRvIGEgc2VxdWVuY2UgKnkxKiwgLi4uLCAqeU0qLCB0aGlzIGlzIGVxdWl2YWxlbnQgdG8gYSBjYWxsXG53aXRoIE0rTiBwb3NpdGlvbmFsIGFyZ3VtZW50cyAqeDEqLCAuLi4sICp4TiosICp5MSosIC4uLiwgKnlNKi5cblxuQSBjb25zZXF1ZW5jZSBvZiB0aGlzIGlzIHRoYXQgYWx0aG91Z2ggdGhlIGBgKmV4cHJlc3Npb25gYCBzeW50YXggbWF5XG5hcHBlYXIgKmFmdGVyKiBzb21lIGtleXdvcmQgYXJndW1lbnRzLCBpdCBpcyBwcm9jZXNzZWQgKmJlZm9yZSogdGhlXG5rZXl3b3JkIGFyZ3VtZW50cyAoYW5kIHRoZSBgYCoqZXhwcmVzc2lvbmBgIGFyZ3VtZW50LCBpZiBhbnkgLS0gc2VlXG5iZWxvdykuICBTbzpcblxuICAgPj4+IGRlZiBmKGEsIGIpOlxuICAgLi4uICBwcmludChhLCBiKVxuICAgLi4uXG4gICA+Pj4gZihiPTEsICooMiwpKVxuICAgMiAxXG4gICA+Pj4gZihhPTEsICooMiwpKVxuICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOlxuICAgICBGaWxlICI8c3RkaW4+IiwgbGluZSAxLCBpbiA/XG4gICBUeXBlRXJyb3I6IGYoKSBnb3QgbXVsdGlwbGUgdmFsdWVzIGZvciBrZXl3b3JkIGFyZ3VtZW50IFwnYVwnXG4gICA+Pj4gZigxLCAqKDIsKSlcbiAgIDEgMlxuXG5JdCBpcyB1bnVzdWFsIGZvciBib3RoIGtleXdvcmQgYXJndW1lbnRzIGFuZCB0aGUgYGAqZXhwcmVzc2lvbmBgXG5zeW50YXggdG8gYmUgdXNlZCBpbiB0aGUgc2FtZSBjYWxsLCBzbyBpbiBwcmFjdGljZSB0aGlzIGNvbmZ1c2lvbiBkb2VzXG5ub3QgYXJpc2UuXG5cbklmIHRoZSBzeW50YXggYGAqKmV4cHJlc3Npb25gYCBhcHBlYXJzIGluIHRoZSBmdW5jdGlvbiBjYWxsLFxuYGBleHByZXNzaW9uYGAgbXVzdCBldmFsdWF0ZSB0byBhIG1hcHBpbmcsIHRoZSBjb250ZW50cyBvZiB3aGljaCBhcmVcbnRyZWF0ZWQgYXMgYWRkaXRpb25hbCBrZXl3b3JkIGFyZ3VtZW50cy4gIEluIHRoZSBjYXNlIG9mIGEga2V5d29yZFxuYXBwZWFyaW5nIGluIGJvdGggYGBleHByZXNzaW9uYGAgYW5kIGFzIGFuIGV4cGxpY2l0IGtleXdvcmQgYXJndW1lbnQsXG5hIGBgVHlwZUVycm9yYGAgZXhjZXB0aW9uIGlzIHJhaXNlZC5cblxuRm9ybWFsIHBhcmFtZXRlcnMgdXNpbmcgdGhlIHN5bnRheCBgYCppZGVudGlmaWVyYGAgb3IgYGAqKmlkZW50aWZpZXJgYFxuY2Fubm90IGJlIHVzZWQgYXMgcG9zaXRpb25hbCBhcmd1bWVudCBzbG90cyBvciBhcyBrZXl3b3JkIGFyZ3VtZW50XG5uYW1lcy5cblxuQSBjYWxsIGFsd2F5cyByZXR1cm5zIHNvbWUgdmFsdWUsIHBvc3NpYmx5IGBgTm9uZWBgLCB1bmxlc3MgaXQgcmFpc2VzXG5hbiBleGNlcHRpb24uICBIb3cgdGhpcyB2YWx1ZSBpcyBjb21wdXRlZCBkZXBlbmRzIG9uIHRoZSB0eXBlIG9mIHRoZVxuY2FsbGFibGUgb2JqZWN0LlxuXG5JZiBpdCBpcy0tLVxuXG5hIHVzZXItZGVmaW5lZCBmdW5jdGlvbjpcbiAgIFRoZSBjb2RlIGJsb2NrIGZvciB0aGUgZnVuY3Rpb24gaXMgZXhlY3V0ZWQsIHBhc3NpbmcgaXQgdGhlXG4gICBhcmd1bWVudCBsaXN0LiAgVGhlIGZpcnN0IHRoaW5nIHRoZSBjb2RlIGJsb2NrIHdpbGwgZG8gaXMgYmluZCB0aGVcbiAgIGZvcm1hbCBwYXJhbWV0ZXJzIHRvIHRoZSBhcmd1bWVudHM7IHRoaXMgaXMgZGVzY3JpYmVkIGluIHNlY3Rpb25cbiAgICpGdW5jdGlvbiBkZWZpbml0aW9ucyouICBXaGVuIHRoZSBjb2RlIGJsb2NrIGV4ZWN1dGVzIGEgYGByZXR1cm5gYFxuICAgc3RhdGVtZW50LCB0aGlzIHNwZWNpZmllcyB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSBmdW5jdGlvbiBjYWxsLlxuXG5hIGJ1aWx0LWluIGZ1bmN0aW9uIG9yIG1ldGhvZDpcbiAgIFRoZSByZXN1bHQgaXMgdXAgdG8gdGhlIGludGVycHJldGVyOyBzZWUgKkJ1aWx0LWluIEZ1bmN0aW9ucyogZm9yXG4gICB0aGUgZGVzY3JpcHRpb25zIG9mIGJ1aWx0LWluIGZ1bmN0aW9ucyBhbmQgbWV0aG9kcy5cblxuYSBjbGFzcyBvYmplY3Q6XG4gICBBIG5ldyBpbnN0YW5jZSBvZiB0aGF0IGNsYXNzIGlzIHJldHVybmVkLlxuXG5hIGNsYXNzIGluc3RhbmNlIG1ldGhvZDpcbiAgIFRoZSBjb3JyZXNwb25kaW5nIHVzZXItZGVmaW5lZCBmdW5jdGlvbiBpcyBjYWxsZWQsIHdpdGggYW4gYXJndW1lbnRcbiAgIGxpc3QgdGhhdCBpcyBvbmUgbG9uZ2VyIHRoYW4gdGhlIGFyZ3VtZW50IGxpc3Qgb2YgdGhlIGNhbGw6IHRoZVxuICAgaW5zdGFuY2UgYmVjb21lcyB0aGUgZmlyc3QgYXJndW1lbnQuXG5cbmEgY2xhc3MgaW5zdGFuY2U6XG4gICBUaGUgY2xhc3MgbXVzdCBkZWZpbmUgYSBgYF9fY2FsbF9fKClgYCBtZXRob2Q7IHRoZSBlZmZlY3QgaXMgdGhlblxuICAgdGhlIHNhbWUgYXMgaWYgdGhhdCBtZXRob2Qgd2FzIGNhbGxlZC5cbicsCi0gJ2NsYXNzJzogJ1xuQ2xhc3MgZGVmaW5pdGlvbnNcbioqKioqKioqKioqKioqKioqXG5cbkEgY2xhc3MgZGVmaW5pdGlvbiBkZWZpbmVzIGEgY2xhc3Mgb2JqZWN0IChzZWUgc2VjdGlvbiAqVGhlIHN0YW5kYXJkXG50eXBlIGhpZXJhcmNoeSopOlxuXG4gICBjbGFzc2RlZiAgICA6Oj0gW2RlY29yYXRvcnNdICJjbGFzcyIgY2xhc3NuYW1lIFtpbmhlcml0YW5jZV0gIjoiIHN1aXRlXG4gICBpbmhlcml0YW5jZSA6Oj0gIigiIFthcmd1bWVudF9saXN0IFsiLCJdIHwgY29tcHJlaGVuc2lvbl0gIikiXG4gICBjbGFzc25hbWUgICA6Oj0gaWRlbnRpZmllclxuXG5BIGNsYXNzIGRlZmluaXRpb24gaXMgYW4gZXhlY3V0YWJsZSBzdGF0ZW1lbnQuICBUaGUgaW5oZXJpdGFuY2UgbGlzdFxudXN1YWxseSBnaXZlcyBhIGxpc3Qgb2YgYmFzZSBjbGFzc2VzIChzZWUgKkN1c3RvbWl6aW5nIGNsYXNzIGNyZWF0aW9uKlxuZm9yIG1vcmUgYWR2YW5jZWQgdXNlcyksIHNvIGVhY2ggaXRlbSBpbiB0aGUgbGlzdCBzaG91bGQgZXZhbHVhdGUgdG8gYVxuY2xhc3Mgb2JqZWN0IHdoaWNoIGFsbG93cyBzdWJjbGFzc2luZy4gIENsYXNzZXMgd2l0aG91dCBhbiBpbmhlcml0YW5jZVxubGlzdCBpbmhlcml0LCBieSBkZWZhdWx0LCBmcm9tIHRoZSBiYXNlIGNsYXNzIGBgb2JqZWN0YGA7IGhlbmNlLFxuXG4gICBjbGFzcyBGb286XG4gICAgICAgcGFzc1xuXG5pcyBlcXVpdmFsZW50IHRvXG5cbiAgIGNsYXNzIEZvbyhvYmplY3QpOlxuICAgICAgIHBhc3NcblxuVGhlIGNsYXNzXCdzIHN1aXRlIGlzIHRoZW4gZXhlY3V0ZWQgaW4gYSBuZXcgZXhlY3V0aW9uIGZyYW1lIChzZWVcbipOYW1pbmcgYW5kIGJpbmRpbmcqKSwgdXNpbmcgYSBuZXdseSBjcmVhdGVkIGxvY2FsIG5hbWVzcGFjZSBhbmQgdGhlXG5vcmlnaW5hbCBnbG9iYWwgbmFtZXNwYWNlLiAoVXN1YWxseSwgdGhlIHN1aXRlIGNvbnRhaW5zIG1vc3RseVxuZnVuY3Rpb24gZGVmaW5pdGlvbnMuKSAgV2hlbiB0aGUgY2xhc3NcJ3Mgc3VpdGUgZmluaXNoZXMgZXhlY3V0aW9uLCBpdHNcbmV4ZWN1dGlvbiBmcmFtZSBpcyBkaXNjYXJkZWQgYnV0IGl0cyBsb2NhbCBuYW1lc3BhY2UgaXMgc2F2ZWQuIFs0XSBBXG5jbGFzcyBvYmplY3QgaXMgdGhlbiBjcmVhdGVkIHVzaW5nIHRoZSBpbmhlcml0YW5jZSBsaXN0IGZvciB0aGUgYmFzZVxuY2xhc3NlcyBhbmQgdGhlIHNhdmVkIGxvY2FsIG5hbWVzcGFjZSBmb3IgdGhlIGF0dHJpYnV0ZSBkaWN0aW9uYXJ5LlxuVGhlIGNsYXNzIG5hbWUgaXMgYm91bmQgdG8gdGhpcyBjbGFzcyBvYmplY3QgaW4gdGhlIG9yaWdpbmFsIGxvY2FsXG5uYW1lc3BhY2UuXG5cbkNsYXNzIGNyZWF0aW9uIGNhbiBiZSBjdXN0b21pemVkIGhlYXZpbHkgdXNpbmcgKm1ldGFjbGFzc2VzKi5cblxuQ2xhc3NlcyBjYW4gYWxzbyBiZSBkZWNvcmF0ZWQ6IGp1c3QgbGlrZSB3aGVuIGRlY29yYXRpbmcgZnVuY3Rpb25zLFxuXG4gICBAZjEoYXJnKVxuICAgQGYyXG4gICBjbGFzcyBGb286IHBhc3NcblxuaXMgZXF1aXZhbGVudCB0b1xuXG4gICBjbGFzcyBGb286IHBhc3NcbiAgIEZvbyA9IGYxKGFyZykoZjIoRm9vKSlcblxuVGhlIGV2YWx1YXRpb24gcnVsZXMgZm9yIHRoZSBkZWNvcmF0b3IgZXhwcmVzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIGZvclxuZnVuY3Rpb24gZGVjb3JhdG9ycy4gIFRoZSByZXN1bHQgbXVzdCBiZSBhIGNsYXNzIG9iamVjdCwgd2hpY2ggaXMgdGhlblxuYm91bmQgdG8gdGhlIGNsYXNzIG5hbWUuXG5cbioqUHJvZ3JhbW1lclwncyBub3RlOioqIFZhcmlhYmxlcyBkZWZpbmVkIGluIHRoZSBjbGFzcyBkZWZpbml0aW9uIGFyZVxuY2xhc3MgYXR0cmlidXRlczsgdGhleSBhcmUgc2hhcmVkIGJ5IGluc3RhbmNlcy4gIEluc3RhbmNlIGF0dHJpYnV0ZXNcbmNhbiBiZSBzZXQgaW4gYSBtZXRob2Qgd2l0aCBgYHNlbGYubmFtZSA9IHZhbHVlYGAuICBCb3RoIGNsYXNzIGFuZFxuaW5zdGFuY2UgYXR0cmlidXRlcyBhcmUgYWNjZXNzaWJsZSB0aHJvdWdoIHRoZSBub3RhdGlvblxuImBgc2VsZi5uYW1lYGAiLCBhbmQgYW4gaW5zdGFuY2UgYXR0cmlidXRlIGhpZGVzIGEgY2xhc3MgYXR0cmlidXRlXG53aXRoIHRoZSBzYW1lIG5hbWUgd2hlbiBhY2Nlc3NlZCBpbiB0aGlzIHdheS4gIENsYXNzIGF0dHJpYnV0ZXMgY2FuIGJlXG51c2VkIGFzIGRlZmF1bHRzIGZvciBpbnN0YW5jZSBhdHRyaWJ1dGVzLCBidXQgdXNpbmcgbXV0YWJsZSB2YWx1ZXNcbnRoZXJlIGNhbiBsZWFkIHRvIHVuZXhwZWN0ZWQgcmVzdWx0cy4gICpEZXNjcmlwdG9ycyogY2FuIGJlIHVzZWQgdG9cbmNyZWF0ZSBpbnN0YW5jZSB2YXJpYWJsZXMgd2l0aCBkaWZmZXJlbnQgaW1wbGVtZW50YXRpb24gZGV0YWlscy5cblxuU2VlIGFsc286XG5cbiAgICoqUEVQIDMxMTUqKiAtIE1ldGFjbGFzc2VzIGluIFB5dGhvbiAzICoqUEVQIDMxMjkqKiAtIENsYXNzXG4gICBEZWNvcmF0b3JzXG5cbi1bIEZvb3Rub3RlcyBdLVxuXG5bMV0gVGhlIGV4Y2VwdGlvbiBpcyBwcm9wYWdhdGVkIHRvIHRoZSBpbnZvY2F0aW9uIHN0YWNrIHVubGVzcyB0aGVyZVxuICAgIGlzIGEgYGBmaW5hbGx5YGAgY2xhdXNlIHdoaWNoIGhhcHBlbnMgdG8gcmFpc2UgYW5vdGhlciBleGNlcHRpb24uXG4gICAgVGhhdCBuZXcgZXhjZXB0aW9uIGNhdXNlcyB0aGUgb2xkIG9uZSB0byBiZSBsb3N0LlxuXG5bMl0gQ3VycmVudGx5LCBjb250cm9sICJmbG93cyBvZmYgdGhlIGVuZCIgZXhjZXB0IGluIHRoZSBjYXNlIG9mIGFuXG4gICAgZXhjZXB0aW9uIG9yIHRoZSBleGVjdXRpb24gb2YgYSBgYHJldHVybmBgLCBgYGNvbnRpbnVlYGAsIG9yXG4gICAgYGBicmVha2BgIHN0YXRlbWVudC5cblxuWzNdIEEgc3RyaW5nIGxpdGVyYWwgYXBwZWFyaW5nIGFzIHRoZSBmaXJzdCBzdGF0ZW1lbnQgaW4gdGhlIGZ1bmN0aW9uXG4gICAgYm9keSBpcyB0cmFuc2Zvcm1lZCBpbnRvIHRoZSBmdW5jdGlvblwncyBgYF9fZG9jX19gYCBhdHRyaWJ1dGUgYW5kXG4gICAgdGhlcmVmb3JlIHRoZSBmdW5jdGlvblwncyAqZG9jc3RyaW5nKi5cblxuWzRdIEEgc3RyaW5nIGxpdGVyYWwgYXBwZWFyaW5nIGFzIHRoZSBmaXJzdCBzdGF0ZW1lbnQgaW4gdGhlIGNsYXNzXG4gICAgYm9keSBpcyB0cmFuc2Zvcm1lZCBpbnRvIHRoZSBuYW1lc3BhY2VcJ3MgYGBfX2RvY19fYGAgaXRlbSBhbmRcbiAgICB0aGVyZWZvcmUgdGhlIGNsYXNzXCdzICpkb2NzdHJpbmcqLlxuJywKKyAnY2FsbHMnOiAnXG5DYWxsc1xuKioqKipcblxuQSBjYWxsIGNhbGxzIGEgY2FsbGFibGUgb2JqZWN0IChlLmcuLCBhIGZ1bmN0aW9uKSB3aXRoIGEgcG9zc2libHlcbmVtcHR5IHNlcmllcyBvZiBhcmd1bWVudHM6XG5cbiAgIGNhbGwgICAgICAgICAgICAgICAgIDo6PSBwcmltYXJ5ICIoIiBbYXJndW1lbnRfbGlzdCBbIiwiXSB8IGNvbXByZWhlbnNpb25dICIpIlxuICAgYXJndW1lbnRfbGlzdCAgICAgICAgOjo9IHBvc2l0aW9uYWxfYXJndW1lbnRzIFsiLCIga2V5d29yZF9hcmd1bWVudHNdXG4gICAgICAgICAgICAgICAgICAgICAgIFsiLCIgIioiIGV4cHJlc3Npb25dIFsiLCIga2V5d29yZF9hcmd1bWVudHNdXG4gICAgICAgICAgICAgICAgICAgICAgIFsiLCIgIioqIiBleHByZXNzaW9uXVxuICAgICAgICAgICAgICAgICAgICAgfCBrZXl3b3JkX2FyZ3VtZW50cyBbIiwiICIqIiBleHByZXNzaW9uXVxuICAgICAgICAgICAgICAgICAgICAgICBbIiwiIGtleXdvcmRfYXJndW1lbnRzXSBbIiwiICIqKiIgZXhwcmVzc2lvbl1cbiAgICAgICAgICAgICAgICAgICAgIHwgIioiIGV4cHJlc3Npb24gWyIsIiBrZXl3b3JkX2FyZ3VtZW50c10gWyIsIiAiKioiIGV4cHJlc3Npb25dXG4gICAgICAgICAgICAgICAgICAgICB8ICIqKiIgZXhwcmVzc2lvblxuICAgcG9zaXRpb25hbF9hcmd1bWVudHMgOjo9IGV4cHJlc3Npb24gKCIsIiBleHByZXNzaW9uKSpcbiAgIGtleXdvcmRfYXJndW1lbnRzICAgIDo6PSBrZXl3b3JkX2l0ZW0gKCIsIiBrZXl3b3JkX2l0ZW0pKlxuICAga2V5d29yZF9pdGVtICAgICAgICAgOjo9IGlkZW50aWZpZXIgIj0iIGV4cHJlc3Npb25cblxuQSB0cmFpbGluZyBjb21tYSBtYXkgYmUgcHJlc2VudCBhZnRlciB0aGUgcG9zaXRpb25hbCBhbmQga2V5d29yZFxuYXJndW1lbnRzIGJ1dCBkb2VzIG5vdCBhZmZlY3QgdGhlIHNlbWFudGljcy5cblxuVGhlIHByaW1hcnkgbXVzdCBldmFsdWF0ZSB0byBhIGNhbGxhYmxlIG9iamVjdCAodXNlci1kZWZpbmVkXG5mdW5jdGlvbnMsIGJ1aWx0LWluIGZ1bmN0aW9ucywgbWV0aG9kcyBvZiBidWlsdC1pbiBvYmplY3RzLCBjbGFzc1xub2JqZWN0cywgbWV0aG9kcyBvZiBjbGFzcyBpbnN0YW5jZXMsIGFuZCBhbGwgb2JqZWN0cyBoYXZpbmcgYVxuYGBfX2NhbGxfXygpYGAgbWV0aG9kIGFyZSBjYWxsYWJsZSkuICBBbGwgYXJndW1lbnQgZXhwcmVzc2lvbnMgYXJlXG5ldmFsdWF0ZWQgYmVmb3JlIHRoZSBjYWxsIGlzIGF0dGVtcHRlZC4gIFBsZWFzZSByZWZlciB0byBzZWN0aW9uXG4qRnVuY3Rpb24gZGVmaW5pdGlvbnMqIGZvciB0aGUgc3ludGF4IG9mIGZvcm1hbCBwYXJhbWV0ZXIgbGlzdHMuXG5cbklmIGtleXdvcmQgYXJndW1lbnRzIGFyZSBwcmVzZW50LCB0aGV5IGFyZSBmaXJzdCBjb252ZXJ0ZWQgdG9cbnBvc2l0aW9uYWwgYXJndW1lbnRzLCBhcyBmb2xsb3dzLiAgRmlyc3QsIGEgbGlzdCBvZiB1bmZpbGxlZCBzbG90cyBpc1xuY3JlYXRlZCBmb3IgdGhlIGZvcm1hbCBwYXJhbWV0ZXJzLiAgSWYgdGhlcmUgYXJlIE4gcG9zaXRpb25hbFxuYXJndW1lbnRzLCB0aGV5IGFyZSBwbGFjZWQgaW4gdGhlIGZpcnN0IE4gc2xvdHMuICBOZXh0LCBmb3IgZWFjaFxua2V5d29yZCBhcmd1bWVudCwgdGhlIGlkZW50aWZpZXIgaXMgdXNlZCB0byBkZXRlcm1pbmUgdGhlXG5jb3JyZXNwb25kaW5nIHNsb3QgKGlmIHRoZSBpZGVudGlmaWVyIGlzIHRoZSBzYW1lIGFzIHRoZSBmaXJzdCBmb3JtYWxcbnBhcmFtZXRlciBuYW1lLCB0aGUgZmlyc3Qgc2xvdCBpcyB1c2VkLCBhbmQgc28gb24pLiAgSWYgdGhlIHNsb3QgaXNcbmFscmVhZHkgZmlsbGVkLCBhIGBgVHlwZUVycm9yYGAgZXhjZXB0aW9uIGlzIHJhaXNlZC4gT3RoZXJ3aXNlLCB0aGVcbnZhbHVlIG9mIHRoZSBhcmd1bWVudCBpcyBwbGFjZWQgaW4gdGhlIHNsb3QsIGZpbGxpbmcgaXQgKGV2ZW4gaWYgdGhlXG5leHByZXNzaW9uIGlzIGBgTm9uZWBgLCBpdCBmaWxscyB0aGUgc2xvdCkuICBXaGVuIGFsbCBhcmd1bWVudHMgaGF2ZVxuYmVlbiBwcm9jZXNzZWQsIHRoZSBzbG90cyB0aGF0IGFyZSBzdGlsbCB1bmZpbGxlZCBhcmUgZmlsbGVkIHdpdGggdGhlXG5jb3JyZXNwb25kaW5nIGRlZmF1bHQgdmFsdWUgZnJvbSB0aGUgZnVuY3Rpb24gZGVmaW5pdGlvbi4gIChEZWZhdWx0XG52YWx1ZXMgYXJlIGNhbGN1bGF0ZWQsIG9uY2UsIHdoZW4gdGhlIGZ1bmN0aW9uIGlzIGRlZmluZWQ7IHRodXMsIGFcbm11dGFibGUgb2JqZWN0IHN1Y2ggYXMgYSBsaXN0IG9yIGRpY3Rpb25hcnkgdXNlZCBhcyBkZWZhdWx0IHZhbHVlIHdpbGxcbmJlIHNoYXJlZCBieSBhbGwgY2FsbHMgdGhhdCBkb25cJ3Qgc3BlY2lmeSBhbiBhcmd1bWVudCB2YWx1ZSBmb3IgdGhlXG5jb3JyZXNwb25kaW5nIHNsb3Q7IHRoaXMgc2hvdWxkIHVzdWFsbHkgYmUgYXZvaWRlZC4pICBJZiB0aGVyZSBhcmUgYW55XG51bmZpbGxlZCBzbG90cyBmb3Igd2hpY2ggbm8gZGVmYXVsdCB2YWx1ZSBpcyBzcGVjaWZpZWQsIGFcbmBgVHlwZUVycm9yYGAgZXhjZXB0aW9uIGlzIHJhaXNlZC4gIE90aGVyd2lzZSwgdGhlIGxpc3Qgb2YgZmlsbGVkXG5zbG90cyBpcyB1c2VkIGFzIHRoZSBhcmd1bWVudCBsaXN0IGZvciB0aGUgY2FsbC5cblxuKipDUHl0aG9uIGltcGxlbWVudGF0aW9uIGRldGFpbDoqKiBBbiBpbXBsZW1lbnRhdGlvbiBtYXkgcHJvdmlkZVxuYnVpbHQtaW4gZnVuY3Rpb25zIHdob3NlIHBvc2l0aW9uYWwgcGFyYW1ldGVycyBkbyBub3QgaGF2ZSBuYW1lcywgZXZlblxuaWYgdGhleSBhcmUgXCduYW1lZFwnIGZvciB0aGUgcHVycG9zZSBvZiBkb2N1bWVudGF0aW9uLCBhbmQgd2hpY2hcbnRoZXJlZm9yZSBjYW5ub3QgYmUgc3VwcGxpZWQgYnkga2V5d29yZC4gIEluIENQeXRob24sIHRoaXMgaXMgdGhlIGNhc2VcbmZvciBmdW5jdGlvbnMgaW1wbGVtZW50ZWQgaW4gQyB0aGF0IHVzZSBgYFB5QXJnX1BhcnNlVHVwbGUoKWBgIHRvXG5wYXJzZSB0aGVpciBhcmd1bWVudHMuXG5cbklmIHRoZXJlIGFyZSBtb3JlIHBvc2l0aW9uYWwgYXJndW1lbnRzIHRoYW4gdGhlcmUgYXJlIGZvcm1hbCBwYXJhbWV0ZXJcbnNsb3RzLCBhIGBgVHlwZUVycm9yYGAgZXhjZXB0aW9uIGlzIHJhaXNlZCwgdW5sZXNzIGEgZm9ybWFsIHBhcmFtZXRlclxudXNpbmcgdGhlIHN5bnRheCBgYCppZGVudGlmaWVyYGAgaXMgcHJlc2VudDsgaW4gdGhpcyBjYXNlLCB0aGF0IGZvcm1hbFxucGFyYW1ldGVyIHJlY2VpdmVzIGEgdHVwbGUgY29udGFpbmluZyB0aGUgZXhjZXNzIHBvc2l0aW9uYWwgYXJndW1lbnRzXG4ob3IgYW4gZW1wdHkgdHVwbGUgaWYgdGhlcmUgd2VyZSBubyBleGNlc3MgcG9zaXRpb25hbCBhcmd1bWVudHMpLlxuXG5JZiBhbnkga2V5d29yZCBhcmd1bWVudCBkb2VzIG5vdCBjb3JyZXNwb25kIHRvIGEgZm9ybWFsIHBhcmFtZXRlclxubmFtZSwgYSBgYFR5cGVFcnJvcmBgIGV4Y2VwdGlvbiBpcyByYWlzZWQsIHVubGVzcyBhIGZvcm1hbCBwYXJhbWV0ZXJcbnVzaW5nIHRoZSBzeW50YXggYGAqKmlkZW50aWZpZXJgYCBpcyBwcmVzZW50OyBpbiB0aGlzIGNhc2UsIHRoYXRcbmZvcm1hbCBwYXJhbWV0ZXIgcmVjZWl2ZXMgYSBkaWN0aW9uYXJ5IGNvbnRhaW5pbmcgdGhlIGV4Y2VzcyBrZXl3b3JkXG5hcmd1bWVudHMgKHVzaW5nIHRoZSBrZXl3b3JkcyBhcyBrZXlzIGFuZCB0aGUgYXJndW1lbnQgdmFsdWVzIGFzXG5jb3JyZXNwb25kaW5nIHZhbHVlcyksIG9yIGEgKG5ldykgZW1wdHkgZGljdGlvbmFyeSBpZiB0aGVyZSB3ZXJlIG5vXG5leGNlc3Mga2V5d29yZCBhcmd1bWVudHMuXG5cbklmIHRoZSBzeW50YXggYGAqZXhwcmVzc2lvbmBgIGFwcGVhcnMgaW4gdGhlIGZ1bmN0aW9uIGNhbGwsXG5gYGV4cHJlc3Npb25gYCBtdXN0IGV2YWx1YXRlIHRvIGEgc2VxdWVuY2UuICBFbGVtZW50cyBmcm9tIHRoaXNcbnNlcXVlbmNlIGFyZSB0cmVhdGVkIGFzIGlmIHRoZXkgd2VyZSBhZGRpdGlvbmFsIHBvc2l0aW9uYWwgYXJndW1lbnRzO1xuaWYgdGhlcmUgYXJlIHBvc2l0aW9uYWwgYXJndW1lbnRzICp4MSosLi4uLCAqeE4qLCBhbmQgYGBleHByZXNzaW9uYGBcbmV2YWx1YXRlcyB0byBhIHNlcXVlbmNlICp5MSosIC4uLiwgKnlNKiwgdGhpcyBpcyBlcXVpdmFsZW50IHRvIGEgY2FsbFxud2l0aCBNK04gcG9zaXRpb25hbCBhcmd1bWVudHMgKngxKiwgLi4uLCAqeE4qLCAqeTEqLCAuLi4sICp5TSouXG5cbkEgY29uc2VxdWVuY2Ugb2YgdGhpcyBpcyB0aGF0IGFsdGhvdWdoIHRoZSBgYCpleHByZXNzaW9uYGAgc3ludGF4IG1heVxuYXBwZWFyICphZnRlciogc29tZSBrZXl3b3JkIGFyZ3VtZW50cywgaXQgaXMgcHJvY2Vzc2VkICpiZWZvcmUqIHRoZVxua2V5d29yZCBhcmd1bWVudHMgKGFuZCB0aGUgYGAqKmV4cHJlc3Npb25gYCBhcmd1bWVudCwgaWYgYW55IC0tIHNlZVxuYmVsb3cpLiAgU286XG5cbiAgID4+PiBkZWYgZihhLCBiKTpcbiAgIC4uLiAgcHJpbnQoYSwgYilcbiAgIC4uLlxuICAgPj4+IGYoYj0xLCAqKDIsKSlcbiAgIDIgMVxuICAgPj4+IGYoYT0xLCAqKDIsKSlcbiAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KTpcbiAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMSwgaW4gP1xuICAgVHlwZUVycm9yOiBmKCkgZ290IG11bHRpcGxlIHZhbHVlcyBmb3Iga2V5d29yZCBhcmd1bWVudCBcJ2FcJ1xuICAgPj4+IGYoMSwgKigyLCkpXG4gICAxIDJcblxuSXQgaXMgdW51c3VhbCBmb3IgYm90aCBrZXl3b3JkIGFyZ3VtZW50cyBhbmQgdGhlIGBgKmV4cHJlc3Npb25gYFxuc3ludGF4IHRvIGJlIHVzZWQgaW4gdGhlIHNhbWUgY2FsbCwgc28gaW4gcHJhY3RpY2UgdGhpcyBjb25mdXNpb24gZG9lc1xubm90IGFyaXNlLlxuXG5JZiB0aGUgc3ludGF4IGBgKipleHByZXNzaW9uYGAgYXBwZWFycyBpbiB0aGUgZnVuY3Rpb24gY2FsbCxcbmBgZXhwcmVzc2lvbmBgIG11c3QgZXZhbHVhdGUgdG8gYSBtYXBwaW5nLCB0aGUgY29udGVudHMgb2Ygd2hpY2ggYXJlXG50cmVhdGVkIGFzIGFkZGl0aW9uYWwga2V5d29yZCBhcmd1bWVudHMuICBJbiB0aGUgY2FzZSBvZiBhIGtleXdvcmRcbmFwcGVhcmluZyBpbiBib3RoIGBgZXhwcmVzc2lvbmBgIGFuZCBhcyBhbiBleHBsaWNpdCBrZXl3b3JkIGFyZ3VtZW50LFxuYSBgYFR5cGVFcnJvcmBgIGV4Y2VwdGlvbiBpcyByYWlzZWQuXG5cbkZvcm1hbCBwYXJhbWV0ZXJzIHVzaW5nIHRoZSBzeW50YXggYGAqaWRlbnRpZmllcmBgIG9yIGBgKippZGVudGlmaWVyYGBcbmNhbm5vdCBiZSB1c2VkIGFzIHBvc2l0aW9uYWwgYXJndW1lbnQgc2xvdHMgb3IgYXMga2V5d29yZCBhcmd1bWVudFxubmFtZXMuXG5cbkEgY2FsbCBhbHdheXMgcmV0dXJucyBzb21lIHZhbHVlLCBwb3NzaWJseSBgYE5vbmVgYCwgdW5sZXNzIGl0IHJhaXNlc1xuYW4gZXhjZXB0aW9uLiAgSG93IHRoaXMgdmFsdWUgaXMgY29tcHV0ZWQgZGVwZW5kcyBvbiB0aGUgdHlwZSBvZiB0aGVcbmNhbGxhYmxlIG9iamVjdC5cblxuSWYgaXQgaXMtLS1cblxuYSB1c2VyLWRlZmluZWQgZnVuY3Rpb246XG4gICBUaGUgY29kZSBibG9jayBmb3IgdGhlIGZ1bmN0aW9uIGlzIGV4ZWN1dGVkLCBwYXNzaW5nIGl0IHRoZVxuICAgYXJndW1lbnQgbGlzdC4gIFRoZSBmaXJzdCB0aGluZyB0aGUgY29kZSBibG9jayB3aWxsIGRvIGlzIGJpbmQgdGhlXG4gICBmb3JtYWwgcGFyYW1ldGVycyB0byB0aGUgYXJndW1lbnRzOyB0aGlzIGlzIGRlc2NyaWJlZCBpbiBzZWN0aW9uXG4gICAqRnVuY3Rpb24gZGVmaW5pdGlvbnMqLiAgV2hlbiB0aGUgY29kZSBibG9jayBleGVjdXRlcyBhIGBgcmV0dXJuYGBcbiAgIHN0YXRlbWVudCwgdGhpcyBzcGVjaWZpZXMgdGhlIHJldHVybiB2YWx1ZSBvZiB0aGUgZnVuY3Rpb24gY2FsbC5cblxuYSBidWlsdC1pbiBmdW5jdGlvbiBvciBtZXRob2Q6XG4gICBUaGUgcmVzdWx0IGlzIHVwIHRvIHRoZSBpbnRlcnByZXRlcjsgc2VlICpCdWlsdC1pbiBGdW5jdGlvbnMqIGZvclxuICAgdGhlIGRlc2NyaXB0aW9ucyBvZiBidWlsdC1pbiBmdW5jdGlvbnMgYW5kIG1ldGhvZHMuXG5cbmEgY2xhc3Mgb2JqZWN0OlxuICAgQSBuZXcgaW5zdGFuY2Ugb2YgdGhhdCBjbGFzcyBpcyByZXR1cm5lZC5cblxuYSBjbGFzcyBpbnN0YW5jZSBtZXRob2Q6XG4gICBUaGUgY29ycmVzcG9uZGluZyB1c2VyLWRlZmluZWQgZnVuY3Rpb24gaXMgY2FsbGVkLCB3aXRoIGFuIGFyZ3VtZW50XG4gICBsaXN0IHRoYXQgaXMgb25lIGxvbmdlciB0aGFuIHRoZSBhcmd1bWVudCBsaXN0IG9mIHRoZSBjYWxsOiB0aGVcbiAgIGluc3RhbmNlIGJlY29tZXMgdGhlIGZpcnN0IGFyZ3VtZW50LlxuXG5hIGNsYXNzIGluc3RhbmNlOlxuICAgVGhlIGNsYXNzIG11c3QgZGVmaW5lIGEgYGBfX2NhbGxfXygpYGAgbWV0aG9kOyB0aGUgZWZmZWN0IGlzIHRoZW5cbiAgIHRoZSBzYW1lIGFzIGlmIHRoYXQgbWV0aG9kIHdhcyBjYWxsZWQuXG4nLAorICdjbGFzcyc6ICdcbkNsYXNzIGRlZmluaXRpb25zXG4qKioqKioqKioqKioqKioqKlxuXG5BIGNsYXNzIGRlZmluaXRpb24gZGVmaW5lcyBhIGNsYXNzIG9iamVjdCAoc2VlIHNlY3Rpb24gKlRoZSBzdGFuZGFyZFxudHlwZSBoaWVyYXJjaHkqKTpcblxuICAgY2xhc3NkZWYgICAgOjo9IFtkZWNvcmF0b3JzXSAiY2xhc3MiIGNsYXNzbmFtZSBbaW5oZXJpdGFuY2VdICI6IiBzdWl0ZVxuICAgaW5oZXJpdGFuY2UgOjo9ICIoIiBbYXJndW1lbnRfbGlzdCBbIiwiXSB8IGNvbXByZWhlbnNpb25dICIpIlxuICAgY2xhc3NuYW1lICAgOjo9IGlkZW50aWZpZXJcblxuQSBjbGFzcyBkZWZpbml0aW9uIGlzIGFuIGV4ZWN1dGFibGUgc3RhdGVtZW50LiAgVGhlIGluaGVyaXRhbmNlIGxpc3RcbnVzdWFsbHkgZ2l2ZXMgYSBsaXN0IG9mIGJhc2UgY2xhc3NlcyAoc2VlICpDdXN0b21pemluZyBjbGFzcyBjcmVhdGlvbipcbmZvciBtb3JlIGFkdmFuY2VkIHVzZXMpLCBzbyBlYWNoIGl0ZW0gaW4gdGhlIGxpc3Qgc2hvdWxkIGV2YWx1YXRlIHRvIGFcbmNsYXNzIG9iamVjdCB3aGljaCBhbGxvd3Mgc3ViY2xhc3NpbmcuICBDbGFzc2VzIHdpdGhvdXQgYW4gaW5oZXJpdGFuY2Vcbmxpc3QgaW5oZXJpdCwgYnkgZGVmYXVsdCwgZnJvbSB0aGUgYmFzZSBjbGFzcyBgYG9iamVjdGBgOyBoZW5jZSxcblxuICAgY2xhc3MgRm9vOlxuICAgICAgIHBhc3NcblxuaXMgZXF1aXZhbGVudCB0b1xuXG4gICBjbGFzcyBGb28ob2JqZWN0KTpcbiAgICAgICBwYXNzXG5cblRoZSBjbGFzc1wncyBzdWl0ZSBpcyB0aGVuIGV4ZWN1dGVkIGluIGEgbmV3IGV4ZWN1dGlvbiBmcmFtZSAoc2VlXG4qTmFtaW5nIGFuZCBiaW5kaW5nKiksIHVzaW5nIGEgbmV3bHkgY3JlYXRlZCBsb2NhbCBuYW1lc3BhY2UgYW5kIHRoZVxub3JpZ2luYWwgZ2xvYmFsIG5hbWVzcGFjZS4gKFVzdWFsbHksIHRoZSBzdWl0ZSBjb250YWlucyBtb3N0bHlcbmZ1bmN0aW9uIGRlZmluaXRpb25zLikgIFdoZW4gdGhlIGNsYXNzXCdzIHN1aXRlIGZpbmlzaGVzIGV4ZWN1dGlvbiwgaXRzXG5leGVjdXRpb24gZnJhbWUgaXMgZGlzY2FyZGVkIGJ1dCBpdHMgbG9jYWwgbmFtZXNwYWNlIGlzIHNhdmVkLiBbNF0gQVxuY2xhc3Mgb2JqZWN0IGlzIHRoZW4gY3JlYXRlZCB1c2luZyB0aGUgaW5oZXJpdGFuY2UgbGlzdCBmb3IgdGhlIGJhc2VcbmNsYXNzZXMgYW5kIHRoZSBzYXZlZCBsb2NhbCBuYW1lc3BhY2UgZm9yIHRoZSBhdHRyaWJ1dGUgZGljdGlvbmFyeS5cblRoZSBjbGFzcyBuYW1lIGlzIGJvdW5kIHRvIHRoaXMgY2xhc3Mgb2JqZWN0IGluIHRoZSBvcmlnaW5hbCBsb2NhbFxubmFtZXNwYWNlLlxuXG5DbGFzcyBjcmVhdGlvbiBjYW4gYmUgY3VzdG9taXplZCBoZWF2aWx5IHVzaW5nICptZXRhY2xhc3NlcyouXG5cbkNsYXNzZXMgY2FuIGFsc28gYmUgZGVjb3JhdGVkOiBqdXN0IGxpa2Ugd2hlbiBkZWNvcmF0aW5nIGZ1bmN0aW9ucyxcblxuICAgQGYxKGFyZylcbiAgIEBmMlxuICAgY2xhc3MgRm9vOiBwYXNzXG5cbmlzIGVxdWl2YWxlbnQgdG9cblxuICAgY2xhc3MgRm9vOiBwYXNzXG4gICBGb28gPSBmMShhcmcpKGYyKEZvbykpXG5cblRoZSBldmFsdWF0aW9uIHJ1bGVzIGZvciB0aGUgZGVjb3JhdG9yIGV4cHJlc3Npb25zIGFyZSB0aGUgc2FtZSBhcyBmb3JcbmZ1bmN0aW9uIGRlY29yYXRvcnMuICBUaGUgcmVzdWx0IG11c3QgYmUgYSBjbGFzcyBvYmplY3QsIHdoaWNoIGlzIHRoZW5cbmJvdW5kIHRvIHRoZSBjbGFzcyBuYW1lLlxuXG4qKlByb2dyYW1tZXJcJ3Mgbm90ZToqKiBWYXJpYWJsZXMgZGVmaW5lZCBpbiB0aGUgY2xhc3MgZGVmaW5pdGlvbiBhcmVcbmNsYXNzIGF0dHJpYnV0ZXM7IHRoZXkgYXJlIHNoYXJlZCBieSBpbnN0YW5jZXMuICBJbnN0YW5jZSBhdHRyaWJ1dGVzXG5jYW4gYmUgc2V0IGluIGEgbWV0aG9kIHdpdGggYGBzZWxmLm5hbWUgPSB2YWx1ZWBgLiAgQm90aCBjbGFzcyBhbmRcbmluc3RhbmNlIGF0dHJpYnV0ZXMgYXJlIGFjY2Vzc2libGUgdGhyb3VnaCB0aGUgbm90YXRpb25cbiJgYHNlbGYubmFtZWBgIiwgYW5kIGFuIGluc3RhbmNlIGF0dHJpYnV0ZSBoaWRlcyBhIGNsYXNzIGF0dHJpYnV0ZVxud2l0aCB0aGUgc2FtZSBuYW1lIHdoZW4gYWNjZXNzZWQgaW4gdGhpcyB3YXkuICBDbGFzcyBhdHRyaWJ1dGVzIGNhbiBiZVxudXNlZCBhcyBkZWZhdWx0cyBmb3IgaW5zdGFuY2UgYXR0cmlidXRlcywgYnV0IHVzaW5nIG11dGFibGUgdmFsdWVzXG50aGVyZSBjYW4gbGVhZCB0byB1bmV4cGVjdGVkIHJlc3VsdHMuICAqRGVzY3JpcHRvcnMqIGNhbiBiZSB1c2VkIHRvXG5jcmVhdGUgaW5zdGFuY2UgdmFyaWFibGVzIHdpdGggZGlmZmVyZW50IGltcGxlbWVudGF0aW9uIGRldGFpbHMuXG5cblNlZSBhbHNvOlxuXG4gICAqKlBFUCAzMTE1KiogLSBNZXRhY2xhc3NlcyBpbiBQeXRob24gMyAqKlBFUCAzMTI5KiogLSBDbGFzc1xuICAgRGVjb3JhdG9yc1xuXG4tWyBGb290bm90ZXMgXS1cblxuWzFdIFRoZSBleGNlcHRpb24gaXMgcHJvcGFnYXRlZCB0byB0aGUgaW52b2NhdGlvbiBzdGFjayBvbmx5IGlmIHRoZXJlXG4gICAgaXMgbm8gYGBmaW5hbGx5YGAgY2xhdXNlIHRoYXQgbmVnYXRlcyB0aGUgZXhjZXB0aW9uLlxuXG5bMl0gQ3VycmVudGx5LCBjb250cm9sICJmbG93cyBvZmYgdGhlIGVuZCIgZXhjZXB0IGluIHRoZSBjYXNlIG9mIGFuXG4gICAgZXhjZXB0aW9uIG9yIHRoZSBleGVjdXRpb24gb2YgYSBgYHJldHVybmBgLCBgYGNvbnRpbnVlYGAsIG9yXG4gICAgYGBicmVha2BgIHN0YXRlbWVudC5cblxuWzNdIEEgc3RyaW5nIGxpdGVyYWwgYXBwZWFyaW5nIGFzIHRoZSBmaXJzdCBzdGF0ZW1lbnQgaW4gdGhlIGZ1bmN0aW9uXG4gICAgYm9keSBpcyB0cmFuc2Zvcm1lZCBpbnRvIHRoZSBmdW5jdGlvblwncyBgYF9fZG9jX19gYCBhdHRyaWJ1dGUgYW5kXG4gICAgdGhlcmVmb3JlIHRoZSBmdW5jdGlvblwncyAqZG9jc3RyaW5nKi5cblxuWzRdIEEgc3RyaW5nIGxpdGVyYWwgYXBwZWFyaW5nIGFzIHRoZSBmaXJzdCBzdGF0ZW1lbnQgaW4gdGhlIGNsYXNzXG4gICAgYm9keSBpcyB0cmFuc2Zvcm1lZCBpbnRvIHRoZSBuYW1lc3BhY2VcJ3MgYGBfX2RvY19fYGAgaXRlbSBhbmRcbiAgICB0aGVyZWZvcmUgdGhlIGNsYXNzXCdzICpkb2NzdHJpbmcqLlxuJywKICAnY29tcGFyaXNvbnMnOiAnXG5Db21wYXJpc29uc1xuKioqKioqKioqKipcblxuVW5saWtlIEMsIGFsbCBjb21wYXJpc29uIG9wZXJhdGlvbnMgaW4gUHl0aG9uIGhhdmUgdGhlIHNhbWUgcHJpb3JpdHksXG53aGljaCBpcyBsb3dlciB0aGFuIHRoYXQgb2YgYW55IGFyaXRobWV0aWMsIHNoaWZ0aW5nIG9yIGJpdHdpc2Vcbm9wZXJhdGlvbi4gIEFsc28gdW5saWtlIEMsIGV4cHJlc3Npb25zIGxpa2UgYGBhIDwgYiA8IGNgYCBoYXZlIHRoZVxuaW50ZXJwcmV0YXRpb24gdGhhdCBpcyBjb252ZW50aW9uYWwgaW4gbWF0aGVtYXRpY3M6XG5cbiAgIGNvbXBhcmlzb24gICAgOjo9IG9yX2V4cHIgKCBjb21wX29wZXJhdG9yIG9yX2V4cHIgKSpcbiAgIGNvbXBfb3BlcmF0b3IgOjo9ICI8IiB8ICI+IiB8ICI9PSIgfCAiPj0iIHwgIjw9IiB8ICIhPSJcbiAgICAgICAgICAgICAgICAgICAgIHwgImlzIiBbIm5vdCJdIHwgWyJub3QiXSAiaW4iXG5cbkNvbXBhcmlzb25zIHlpZWxkIGJvb2xlYW4gdmFsdWVzOiBgYFRydWVgYCBvciBgYEZhbHNlYGAuXG5cbkNvbXBhcmlzb25zIGNhbiBiZSBjaGFpbmVkIGFyYml0cmFyaWx5LCBlLmcuLCBgYHggPCB5IDw9IHpgYCBpc1xuZXF1aXZhbGVudCB0byBgYHggPCB5IGFuZCB5IDw9IHpgYCwgZXhjZXB0IHRoYXQgYGB5YGAgaXMgZXZhbHVhdGVkXG5vbmx5IG9uY2UgKGJ1dCBpbiBib3RoIGNhc2VzIGBgemBgIGlzIG5vdCBldmFsdWF0ZWQgYXQgYWxsIHdoZW4gYGB4IDxcbnlgYCBpcyBmb3VuZCB0byBiZSBmYWxzZSkuXG5cbkZvcm1hbGx5LCBpZiAqYSosICpiKiwgKmMqLCAuLi4sICp5KiwgKnoqIGFyZSBleHByZXNzaW9ucyBhbmQgKm9wMSosXG4qb3AyKiwgLi4uLCAqb3BOKiBhcmUgY29tcGFyaXNvbiBvcGVyYXRvcnMsIHRoZW4gYGBhIG9wMSBiIG9wMiBjIC4uLiB5XG5vcE4gemBgIGlzIGVxdWl2YWxlbnQgdG8gYGBhIG9wMSBiIGFuZCBiIG9wMiBjIGFuZCAuLi4geSBvcE4gemBgLFxuZXhjZXB0IHRoYXQgZWFjaCBleHByZXNzaW9uIGlzIGV2YWx1YXRlZCBhdCBtb3N0IG9uY2UuXG5cbk5vdGUgdGhhdCBgYGEgb3AxIGIgb3AyIGNgYCBkb2VzblwndCBpbXBseSBhbnkga2luZCBvZiBjb21wYXJpc29uXG5iZXR3ZWVuICphKiBhbmQgKmMqLCBzbyB0aGF0LCBlLmcuLCBgYHggPCB5ID4gemBgIGlzIHBlcmZlY3RseSBsZWdhbFxuKHRob3VnaCBwZXJoYXBzIG5vdCBwcmV0dHkpLlxuXG5UaGUgb3BlcmF0b3JzIGBgPGBgLCBgYD5gYCwgYGA9PWBgLCBgYD49YGAsIGBgPD1gYCwgYW5kIGBgIT1gYCBjb21wYXJlXG50aGUgdmFsdWVzIG9mIHR3byBvYmplY3RzLiAgVGhlIG9iamVjdHMgbmVlZCBub3QgaGF2ZSB0aGUgc2FtZSB0eXBlLlxuSWYgYm90aCBhcmUgbnVtYmVycywgdGhleSBhcmUgY29udmVydGVkIHRvIGEgY29tbW9uIHR5cGUuICBPdGhlcndpc2UsXG50aGUgYGA9PWBgIGFuZCBgYCE9YGAgb3BlcmF0b3JzICphbHdheXMqIGNvbnNpZGVyIG9iamVjdHMgb2YgZGlmZmVyZW50XG50eXBlcyB0byBiZSB1bmVxdWFsLCB3aGlsZSB0aGUgYGA8YGAsIGBgPmBgLCBgYD49YGAgYW5kIGBgPD1gYFxub3BlcmF0b3JzIHJhaXNlIGEgYGBUeXBlRXJyb3JgYCB3aGVuIGNvbXBhcmluZyBvYmplY3RzIG9mIGRpZmZlcmVudFxudHlwZXMgdGhhdCBkbyBub3QgaW1wbGVtZW50IHRoZXNlIG9wZXJhdG9ycyBmb3IgdGhlIGdpdmVuIHBhaXIgb2ZcbnR5cGVzLiAgWW91IGNhbiBjb250cm9sIGNvbXBhcmlzb24gYmVoYXZpb3Igb2Ygb2JqZWN0cyBvZiBub24tYnVpbHQtaW5cbnR5cGVzIGJ5IGRlZmluaW5nIHJpY2ggY29tcGFyaXNvbiBtZXRob2RzIGxpa2UgYGBfX2d0X18oKWBgLCBkZXNjcmliZWRcbmluIHNlY3Rpb24gKkJhc2ljIGN1c3RvbWl6YXRpb24qLlxuXG5Db21wYXJpc29uIG9mIG9iamVjdHMgb2YgdGhlIHNhbWUgdHlwZSBkZXBlbmRzIG9uIHRoZSB0eXBlOlxuXG4qIE51bWJlcnMgYXJlIGNvbXBhcmVkIGFyaXRobWV0aWNhbGx5LlxuXG4qIFRoZSB2YWx1ZXMgYGBmbG9hdChcJ05hTlwnKWBgIGFuZCBgYERlY2ltYWwoXCdOYU5cJylgYCBhcmUgc3BlY2lhbC4gVGhlXG4gIGFyZSBpZGVudGljYWwgdG8gdGhlbXNlbHZlcywgYGB4IGlzIHhgYCBidXQgYXJlIG5vdCBlcXVhbCB0b1xuICB0aGVtc2VsdmVzLCBgYHggIT0geGBgLiAgQWRkaXRpb25hbGx5LCBjb21wYXJpbmcgYW55IHZhbHVlIHRvIGFcbiAgbm90LWEtbnVtYmVyIHZhbHVlIHdpbGwgcmV0dXJuIGBgRmFsc2VgYC4gIEZvciBleGFtcGxlLCBib3RoIGBgMyA8XG4gIGZsb2F0KFwnTmFOXCcpYGAgYW5kIGBgZmxvYXQoXCdOYU5cJykgPCAzYGAgd2lsbCByZXR1cm4gYGBGYWxzZWBgLlxuXG4qIEJ5dGVzIG9iamVjdHMgYXJlIGNvbXBhcmVkIGxleGljb2dyYXBoaWNhbGx5IHVzaW5nIHRoZSBudW1lcmljXG4gIHZhbHVlcyBvZiB0aGVpciBlbGVtZW50cy5cblxuKiBTdHJpbmdzIGFyZSBjb21wYXJlZCBsZXhpY29ncmFwaGljYWxseSB1c2luZyB0aGUgbnVtZXJpYyBlcXVpdmFsZW50c1xuICAodGhlIHJlc3VsdCBvZiB0aGUgYnVpbHQtaW4gZnVuY3Rpb24gYGBvcmQoKWBgKSBvZiB0aGVpciBjaGFyYWN0ZXJzLlxuICBbM10gU3RyaW5nIGFuZCBieXRlcyBvYmplY3QgY2FuXCd0IGJlIGNvbXBhcmVkIVxuXG4qIFR1cGxlcyBhbmQgbGlzdHMgYXJlIGNvbXBhcmVkIGxleGljb2dyYXBoaWNhbGx5IHVzaW5nIGNvbXBhcmlzb24gb2ZcbiAgY29ycmVzcG9uZGluZyBlbGVtZW50cy4gIFRoaXMgbWVhbnMgdGhhdCB0byBjb21wYXJlIGVxdWFsLCBlYWNoXG4gIGVsZW1lbnQgbXVzdCBjb21wYXJlIGVxdWFsIGFuZCB0aGUgdHdvIHNlcXVlbmNlcyBtdXN0IGJlIG9mIHRoZSBzYW1lXG4gIHR5cGUgYW5kIGhhdmUgdGhlIHNhbWUgbGVuZ3RoLlxuXG4gIElmIG5vdCBlcXVhbCwgdGhlIHNlcXVlbmNlcyBhcmUgb3JkZXJlZCB0aGUgc2FtZSBhcyB0aGVpciBmaXJzdFxuICBkaWZmZXJpbmcgZWxlbWVudHMuICBGb3IgZXhhbXBsZSwgYGBbMSwyLHhdIDw9IFsxLDIseV1gYCBoYXMgdGhlXG4gIHNhbWUgdmFsdWUgYXMgYGB4IDw9IHlgYC4gIElmIHRoZSBjb3JyZXNwb25kaW5nIGVsZW1lbnQgZG9lcyBub3RcbiAgZXhpc3QsIHRoZSBzaG9ydGVyIHNlcXVlbmNlIGlzIG9yZGVyZWQgZmlyc3QgKGZvciBleGFtcGxlLCBgYFsxLDJdIDxcbiAgWzEsMiwzXWBgKS5cblxuKiBNYXBwaW5ncyAoZGljdGlvbmFyaWVzKSBjb21wYXJlIGVxdWFsIGlmIGFuZCBvbmx5IGlmIHRoZXkgaGF2ZSB0aGVcbiAgc2FtZSBgYChrZXksIHZhbHVlKWBgIHBhaXJzLiBPcmRlciBjb21wYXJpc29ucyBgYChcJzxcJywgXCc8PVwnLCBcJz49XCcsXG4gIFwnPlwnKWBgIHJhaXNlIGBgVHlwZUVycm9yYGAuXG5cbiogU2V0cyBhbmQgZnJvemVuc2V0cyBkZWZpbmUgY29tcGFyaXNvbiBvcGVyYXRvcnMgdG8gbWVhbiBzdWJzZXQgYW5kXG4gIHN1cGVyc2V0IHRlc3RzLiAgVGhvc2UgcmVsYXRpb25zIGRvIG5vdCBkZWZpbmUgdG90YWwgb3JkZXJpbmdzICh0aGVcbiAgdHdvIHNldHMgYGB7MSwyfWBgIGFuZCB7MiwzfSBhcmUgbm90IGVxdWFsLCBub3Igc3Vic2V0cyBvZiBvbmVcbiAgYW5vdGhlciwgbm9yIHN1cGVyc2V0cyBvZiBvbmUgYW5vdGhlcikuICBBY2NvcmRpbmdseSwgc2V0cyBhcmUgbm90XG4gIGFwcHJvcHJpYXRlIGFyZ3VtZW50cyBmb3IgZnVuY3Rpb25zIHdoaWNoIGRlcGVuZCBvbiB0b3RhbCBvcmRlcmluZy5cbiAgRm9yIGV4YW1wbGUsIGBgbWluKClgYCwgYGBtYXgoKWBgLCBhbmQgYGBzb3J0ZWQoKWBgIHByb2R1Y2VcbiAgdW5kZWZpbmVkIHJlc3VsdHMgZ2l2ZW4gYSBsaXN0IG9mIHNldHMgYXMgaW5wdXRzLlxuXG4qIE1vc3Qgb3RoZXIgb2JqZWN0cyBvZiBidWlsdC1pbiB0eXBlcyBjb21wYXJlIHVuZXF1YWwgdW5sZXNzIHRoZXkgYXJlXG4gIHRoZSBzYW1lIG9iamVjdDsgdGhlIGNob2ljZSB3aGV0aGVyIG9uZSBvYmplY3QgaXMgY29uc2lkZXJlZCBzbWFsbGVyXG4gIG9yIGxhcmdlciB0aGFuIGFub3RoZXIgb25lIGlzIG1hZGUgYXJiaXRyYXJpbHkgYnV0IGNvbnNpc3RlbnRseVxuICB3aXRoaW4gb25lIGV4ZWN1dGlvbiBvZiBhIHByb2dyYW0uXG5cbkNvbXBhcmlzb24gb2Ygb2JqZWN0cyBvZiB0aGUgZGlmZmVyaW5nIHR5cGVzIGRlcGVuZHMgb24gd2hldGhlciBlaXRoZXJcbm9mIHRoZSB0eXBlcyBwcm92aWRlIGV4cGxpY2l0IHN1cHBvcnQgZm9yIHRoZSBjb21wYXJpc29uLiAgTW9zdFxubnVtZXJpYyB0eXBlcyBjYW4gYmUgY29tcGFyZWQgd2l0aCBvbmUgYW5vdGhlciwgYnV0IGNvbXBhcmlzb25zIG9mXG5gYGZsb2F0YGAgYW5kIGBgRGVjaW1hbGBgIGFyZSBub3Qgc3VwcG9ydGVkIHRvIGF2b2lkIHRoZSBpbmV2aXRhYmxlXG5jb25mdXNpb24gYXJpc2luZyBmcm9tIHJlcHJlc2VudGF0aW9uIGlzc3VlcyBzdWNoIGFzIGBgZmxvYXQoXCcxLjFcJylgYFxuYmVpbmcgaW5leGFjdGx5IHJlcHJlc2VudGVkIGFuZCB0aGVyZWZvcmUgbm90IGV4YWN0bHkgZXF1YWwgdG9cbmBgRGVjaW1hbChcJzEuMVwnKWBgIHdoaWNoIGlzLiAgV2hlbiBjcm9zcy10eXBlIGNvbXBhcmlzb24gaXMgbm90XG5zdXBwb3J0ZWQsIHRoZSBjb21wYXJpc29uIG1ldGhvZCByZXR1cm5zIGBgTm90SW1wbGVtZW50ZWRgYC4gIFRoaXMgY2FuXG5jcmVhdGUgdGhlIGlsbHVzaW9uIG9mIG5vbi10cmFuc2l0aXZpdHkgYmV0d2VlbiBzdXBwb3J0ZWQgY3Jvc3MtdHlwZVxuY29tcGFyaXNvbnMgYW5kIHVuc3VwcG9ydGVkIGNvbXBhcmlzb25zLiAgRm9yIGV4YW1wbGUsIGBgRGVjaW1hbCgyKSA9PVxuMmBgIGFuZCBgYDIgPT0gZmxvYXQoMilgYCBidXQgYGBEZWNpbWFsKDIpICE9IGZsb2F0KDIpYGAuXG5cblRoZSBvcGVyYXRvcnMgYGBpbmBgIGFuZCBgYG5vdCBpbmBgIHRlc3QgZm9yIG1lbWJlcnNoaXAuICBgYHggaW4gc2BgXG5ldmFsdWF0ZXMgdG8gdHJ1ZSBpZiAqeCogaXMgYSBtZW1iZXIgb2YgKnMqLCBhbmQgZmFsc2Ugb3RoZXJ3aXNlLiAgYGB4XG5ub3QgaW4gc2BgIHJldHVybnMgdGhlIG5lZ2F0aW9uIG9mIGBgeCBpbiBzYGAuICBBbGwgYnVpbHQtaW4gc2VxdWVuY2VzXG5hbmQgc2V0IHR5cGVzIHN1cHBvcnQgdGhpcyBhcyB3ZWxsIGFzIGRpY3Rpb25hcnksIGZvciB3aGljaCBgYGluYGBcbnRlc3RzIHdoZXRoZXIgYSB0aGUgZGljdGlvbmFyeSBoYXMgYSBnaXZlbiBrZXkuIEZvciBjb250YWluZXIgdHlwZXNcbnN1Y2ggYXMgbGlzdCwgdHVwbGUsIHNldCwgZnJvemVuc2V0LCBkaWN0LCBvciBjb2xsZWN0aW9ucy5kZXF1ZSwgdGhlXG5leHByZXNzaW9uIGBgeCBpbiB5YGAgaXMgZXF1aXZhbGVudCB0byBgYGFueSh4IGlzIGUgb3IgeCA9PSBlIGZvciBlIGluXG55KWBgLlxuXG5Gb3IgdGhlIHN0cmluZyBhbmQgYnl0ZXMgdHlwZXMsIGBgeCBpbiB5YGAgaXMgdHJ1ZSBpZiBhbmQgb25seSBpZiAqeCpcbmlzIGEgc3Vic3RyaW5nIG9mICp5Ki4gIEFuIGVxdWl2YWxlbnQgdGVzdCBpcyBgYHkuZmluZCh4KSAhPSAtMWBgLlxuRW1wdHkgc3RyaW5ncyBhcmUgYWx3YXlzIGNvbnNpZGVyZWQgdG8gYmUgYSBzdWJzdHJpbmcgb2YgYW55IG90aGVyXG5zdHJpbmcsIHNvIGBgIiIgaW4gImFiYyJgYCB3aWxsIHJldHVybiBgYFRydWVgYC5cblxuRm9yIHVzZXItZGVmaW5lZCBjbGFzc2VzIHdoaWNoIGRlZmluZSB0aGUgYGBfX2NvbnRhaW5zX18oKWBgIG1ldGhvZCxcbmBgeCBpbiB5YGAgaXMgdHJ1ZSBpZiBhbmQgb25seSBpZiBgYHkuX19jb250YWluc19fKHgpYGAgaXMgdHJ1ZS5cblxuRm9yIHVzZXItZGVmaW5lZCBjbGFzc2VzIHdoaWNoIGRvIG5vdCBkZWZpbmUgYGBfX2NvbnRhaW5zX18oKWBgIGJ1dCBkb1xuZGVmaW5lIGBgX19pdGVyX18oKWBgLCBgYHggaW4geWBgIGlzIHRydWUgaWYgc29tZSB2YWx1ZSBgYHpgYCB3aXRoIGBgeFxuPT0gemBgIGlzIHByb2R1Y2VkIHdoaWxlIGl0ZXJhdGluZyBvdmVyIGBgeWBgLiAgSWYgYW4gZXhjZXB0aW9uIGlzXG5yYWlzZWQgZHVyaW5nIHRoZSBpdGVyYXRpb24sIGl0IGlzIGFzIGlmIGBgaW5gYCByYWlzZWQgdGhhdCBleGNlcHRpb24uXG5cbkxhc3RseSwgdGhlIG9sZC1zdHlsZSBpdGVyYXRpb24gcHJvdG9jb2wgaXMgdHJpZWQ6IGlmIGEgY2xhc3MgZGVmaW5lc1xuYGBfX2dldGl0ZW1fXygpYGAsIGBgeCBpbiB5YGAgaXMgdHJ1ZSBpZiBhbmQgb25seSBpZiB0aGVyZSBpcyBhIG5vbi1cbm5lZ2F0aXZlIGludGVnZXIgaW5kZXggKmkqIHN1Y2ggdGhhdCBgYHggPT0geVtpXWBgLCBhbmQgYWxsIGxvd2VyXG5pbnRlZ2VyIGluZGljZXMgZG8gbm90IHJhaXNlIGBgSW5kZXhFcnJvcmBgIGV4Y2VwdGlvbi4gIChJZiBhbnkgb3RoZXJcbmV4Y2VwdGlvbiBpcyByYWlzZWQsIGl0IGlzIGFzIGlmIGBgaW5gYCByYWlzZWQgdGhhdCBleGNlcHRpb24pLlxuXG5UaGUgb3BlcmF0b3IgYGBub3QgaW5gYCBpcyBkZWZpbmVkIHRvIGhhdmUgdGhlIGludmVyc2UgdHJ1ZSB2YWx1ZSBvZlxuYGBpbmBgLlxuXG5UaGUgb3BlcmF0b3JzIGBgaXNgYCBhbmQgYGBpcyBub3RgYCB0ZXN0IGZvciBvYmplY3QgaWRlbnRpdHk6IGBgeCBpc1xueWBgIGlzIHRydWUgaWYgYW5kIG9ubHkgaWYgKngqIGFuZCAqeSogYXJlIHRoZSBzYW1lIG9iamVjdC4gIGBgeCBpc1xubm90IHlgYCB5aWVsZHMgdGhlIGludmVyc2UgdHJ1dGggdmFsdWUuIFs0XVxuJywKLSAnY29tcG91bmQnOiAnXG5Db21wb3VuZCBzdGF0ZW1lbnRzXG4qKioqKioqKioqKioqKioqKioqXG5cbkNvbXBvdW5kIHN0YXRlbWVudHMgY29udGFpbiAoZ3JvdXBzIG9mKSBvdGhlciBzdGF0ZW1lbnRzOyB0aGV5IGFmZmVjdFxub3IgY29udHJvbCB0aGUgZXhlY3V0aW9uIG9mIHRob3NlIG90aGVyIHN0YXRlbWVudHMgaW4gc29tZSB3YXkuICBJblxuZ2VuZXJhbCwgY29tcG91bmQgc3RhdGVtZW50cyBzcGFuIG11bHRpcGxlIGxpbmVzLCBhbHRob3VnaCBpbiBzaW1wbGVcbmluY2FybmF0aW9ucyBhIHdob2xlIGNvbXBvdW5kIHN0YXRlbWVudCBtYXkgYmUgY29udGFpbmVkIGluIG9uZSBsaW5lLlxuXG5UaGUgYGBpZmBgLCBgYHdoaWxlYGAgYW5kIGBgZm9yYGAgc3RhdGVtZW50cyBpbXBsZW1lbnQgdHJhZGl0aW9uYWxcbmNvbnRyb2wgZmxvdyBjb25zdHJ1Y3RzLiAgYGB0cnlgYCBzcGVjaWZpZXMgZXhjZXB0aW9uIGhhbmRsZXJzIGFuZC9vclxuY2xlYW51cCBjb2RlIGZvciBhIGdyb3VwIG9mIHN0YXRlbWVudHMsIHdoaWxlIHRoZSBgYHdpdGhgYCBzdGF0ZW1lbnRcbmFsbG93cyB0aGUgZXhlY3V0aW9uIG9mIGluaXRpYWxpemF0aW9uIGFuZCBmaW5hbGl6YXRpb24gY29kZSBhcm91bmQgYVxuYmxvY2sgb2YgY29kZS4gIEZ1bmN0aW9uIGFuZCBjbGFzcyBkZWZpbml0aW9ucyBhcmUgYWxzbyBzeW50YWN0aWNhbGx5XG5jb21wb3VuZCBzdGF0ZW1lbnRzLlxuXG5Db21wb3VuZCBzdGF0ZW1lbnRzIGNvbnNpc3Qgb2Ygb25lIG9yIG1vcmUgXCdjbGF1c2VzLlwnICBBIGNsYXVzZVxuY29uc2lzdHMgb2YgYSBoZWFkZXIgYW5kIGEgXCdzdWl0ZS5cJyAgVGhlIGNsYXVzZSBoZWFkZXJzIG9mIGFcbnBhcnRpY3VsYXIgY29tcG91bmQgc3RhdGVtZW50IGFyZSBhbGwgYXQgdGhlIHNhbWUgaW5kZW50YXRpb24gbGV2ZWwuXG5FYWNoIGNsYXVzZSBoZWFkZXIgYmVnaW5zIHdpdGggYSB1bmlxdWVseSBpZGVudGlmeWluZyBrZXl3b3JkIGFuZCBlbmRzXG53aXRoIGEgY29sb24uICBBIHN1aXRlIGlzIGEgZ3JvdXAgb2Ygc3RhdGVtZW50cyBjb250cm9sbGVkIGJ5IGFcbmNsYXVzZS4gIEEgc3VpdGUgY2FuIGJlIG9uZSBvciBtb3JlIHNlbWljb2xvbi1zZXBhcmF0ZWQgc2ltcGxlXG5zdGF0ZW1lbnRzIG9uIHRoZSBzYW1lIGxpbmUgYXMgdGhlIGhlYWRlciwgZm9sbG93aW5nIHRoZSBoZWFkZXJcJ3NcbmNvbG9uLCBvciBpdCBjYW4gYmUgb25lIG9yIG1vcmUgaW5kZW50ZWQgc3RhdGVtZW50cyBvbiBzdWJzZXF1ZW50XG5saW5lcy4gIE9ubHkgdGhlIGxhdHRlciBmb3JtIG9mIHN1aXRlIGNhbiBjb250YWluIG5lc3RlZCBjb21wb3VuZFxuc3RhdGVtZW50czsgdGhlIGZvbGxvd2luZyBpcyBpbGxlZ2FsLCBtb3N0bHkgYmVjYXVzZSBpdCB3b3VsZG5cJ3QgYmVcbmNsZWFyIHRvIHdoaWNoIGBgaWZgYCBjbGF1c2UgYSBmb2xsb3dpbmcgYGBlbHNlYGAgY2xhdXNlIHdvdWxkIGJlbG9uZzpcblxuICAgaWYgdGVzdDE6IGlmIHRlc3QyOiBwcmludCh4KVxuXG5BbHNvIG5vdGUgdGhhdCB0aGUgc2VtaWNvbG9uIGJpbmRzIHRpZ2h0ZXIgdGhhbiB0aGUgY29sb24gaW4gdGhpc1xuY29udGV4dCwgc28gdGhhdCBpbiB0aGUgZm9sbG93aW5nIGV4YW1wbGUsIGVpdGhlciBhbGwgb3Igbm9uZSBvZiB0aGVcbmBgcHJpbnQoKWBgIGNhbGxzIGFyZSBleGVjdXRlZDpcblxuICAgaWYgeCA8IHkgPCB6OiBwcmludCh4KTsgcHJpbnQoeSk7IHByaW50KHopXG5cblN1bW1hcml6aW5nOlxuXG4gICBjb21wb3VuZF9zdG10IDo6PSBpZl9zdG10XG4gICAgICAgICAgICAgICAgICAgICB8IHdoaWxlX3N0bXRcbiAgICAgICAgICAgICAgICAgICAgIHwgZm9yX3N0bXRcbiAgICAgICAgICAgICAgICAgICAgIHwgdHJ5X3N0bXRcbiAgICAgICAgICAgICAgICAgICAgIHwgd2l0aF9zdG10XG4gICAgICAgICAgICAgICAgICAgICB8IGZ1bmNkZWZcbiAgICAgICAgICAgICAgICAgICAgIHwgY2xhc3NkZWZcbiAgIHN1aXRlICAgICAgICAgOjo9IHN0bXRfbGlzdCBORVdMSU5FIHwgTkVXTElORSBJTkRFTlQgc3RhdGVtZW50KyBERURFTlRcbiAgIHN0YXRlbWVudCAgICAgOjo9IHN0bXRfbGlzdCBORVdMSU5FIHwgY29tcG91bmRfc3RtdFxuICAgc3RtdF9saXN0ICAgICA6Oj0gc2ltcGxlX3N0bXQgKCI7IiBzaW1wbGVfc3RtdCkqIFsiOyJdXG5cbk5vdGUgdGhhdCBzdGF0ZW1lbnRzIGFsd2F5cyBlbmQgaW4gYSBgYE5FV0xJTkVgYCBwb3NzaWJseSBmb2xsb3dlZCBieVxuYSBgYERFREVOVGBgLiAgQWxzbyBub3RlIHRoYXQgb3B0aW9uYWwgY29udGludWF0aW9uIGNsYXVzZXMgYWx3YXlzXG5iZWdpbiB3aXRoIGEga2V5d29yZCB0aGF0IGNhbm5vdCBzdGFydCBhIHN0YXRlbWVudCwgdGh1cyB0aGVyZSBhcmUgbm9cbmFtYmlndWl0aWVzICh0aGUgXCdkYW5nbGluZyBgYGVsc2VgYFwnIHByb2JsZW0gaXMgc29sdmVkIGluIFB5dGhvbiBieVxucmVxdWlyaW5nIG5lc3RlZCBgYGlmYGAgc3RhdGVtZW50cyB0byBiZSBpbmRlbnRlZCkuXG5cblRoZSBmb3JtYXR0aW5nIG9mIHRoZSBncmFtbWFyIHJ1bGVzIGluIHRoZSBmb2xsb3dpbmcgc2VjdGlvbnMgcGxhY2VzXG5lYWNoIGNsYXVzZSBvbiBhIHNlcGFyYXRlIGxpbmUgZm9yIGNsYXJpdHkuXG5cblxuVGhlIGBgaWZgYCBzdGF0ZW1lbnRcbj09PT09PT09PT09PT09PT09PT09XG5cblRoZSBgYGlmYGAgc3RhdGVtZW50IGlzIHVzZWQgZm9yIGNvbmRpdGlvbmFsIGV4ZWN1dGlvbjpcblxuICAgaWZfc3RtdCA6Oj0gImlmIiBleHByZXNzaW9uICI6IiBzdWl0ZVxuICAgICAgICAgICAgICAgKCAiZWxpZiIgZXhwcmVzc2lvbiAiOiIgc3VpdGUgKSpcbiAgICAgICAgICAgICAgIFsiZWxzZSIgIjoiIHN1aXRlXVxuXG5JdCBzZWxlY3RzIGV4YWN0bHkgb25lIG9mIHRoZSBzdWl0ZXMgYnkgZXZhbHVhdGluZyB0aGUgZXhwcmVzc2lvbnMgb25lXG5ieSBvbmUgdW50aWwgb25lIGlzIGZvdW5kIHRvIGJlIHRydWUgKHNlZSBzZWN0aW9uICpCb29sZWFuIG9wZXJhdGlvbnMqXG5mb3IgdGhlIGRlZmluaXRpb24gb2YgdHJ1ZSBhbmQgZmFsc2UpOyB0aGVuIHRoYXQgc3VpdGUgaXMgZXhlY3V0ZWRcbihhbmQgbm8gb3RoZXIgcGFydCBvZiB0aGUgYGBpZmBgIHN0YXRlbWVudCBpcyBleGVjdXRlZCBvciBldmFsdWF0ZWQpLlxuSWYgYWxsIGV4cHJlc3Npb25zIGFyZSBmYWxzZSwgdGhlIHN1aXRlIG9mIHRoZSBgYGVsc2VgYCBjbGF1c2UsIGlmXG5wcmVzZW50LCBpcyBleGVjdXRlZC5cblxuXG5UaGUgYGB3aGlsZWBgIHN0YXRlbWVudFxuPT09PT09PT09PT09PT09PT09PT09PT1cblxuVGhlIGBgd2hpbGVgYCBzdGF0ZW1lbnQgaXMgdXNlZCBmb3IgcmVwZWF0ZWQgZXhlY3V0aW9uIGFzIGxvbmcgYXMgYW5cbmV4cHJlc3Npb24gaXMgdHJ1ZTpcblxuICAgd2hpbGVfc3RtdCA6Oj0gIndoaWxlIiBleHByZXNzaW9uICI6IiBzdWl0ZVxuICAgICAgICAgICAgICAgICAgWyJlbHNlIiAiOiIgc3VpdGVdXG5cblRoaXMgcmVwZWF0ZWRseSB0ZXN0cyB0aGUgZXhwcmVzc2lvbiBhbmQsIGlmIGl0IGlzIHRydWUsIGV4ZWN1dGVzIHRoZVxuZmlyc3Qgc3VpdGU7IGlmIHRoZSBleHByZXNzaW9uIGlzIGZhbHNlICh3aGljaCBtYXkgYmUgdGhlIGZpcnN0IHRpbWVcbml0IGlzIHRlc3RlZCkgdGhlIHN1aXRlIG9mIHRoZSBgYGVsc2VgYCBjbGF1c2UsIGlmIHByZXNlbnQsIGlzXG5leGVjdXRlZCBhbmQgdGhlIGxvb3AgdGVybWluYXRlcy5cblxuQSBgYGJyZWFrYGAgc3RhdGVtZW50IGV4ZWN1dGVkIGluIHRoZSBmaXJzdCBzdWl0ZSB0ZXJtaW5hdGVzIHRoZSBsb29wXG53aXRob3V0IGV4ZWN1dGluZyB0aGUgYGBlbHNlYGAgY2xhdXNlXCdzIHN1aXRlLiAgQSBgYGNvbnRpbnVlYGBcbnN0YXRlbWVudCBleGVjdXRlZCBpbiB0aGUgZmlyc3Qgc3VpdGUgc2tpcHMgdGhlIHJlc3Qgb2YgdGhlIHN1aXRlIGFuZFxuZ29lcyBiYWNrIHRvIHRlc3RpbmcgdGhlIGV4cHJlc3Npb24uXG5cblxuVGhlIGBgZm9yYGAgc3RhdGVtZW50XG49PT09PT09PT09PT09PT09PT09PT1cblxuVGhlIGBgZm9yYGAgc3RhdGVtZW50IGlzIHVzZWQgdG8gaXRlcmF0ZSBvdmVyIHRoZSBlbGVtZW50cyBvZiBhXG5zZXF1ZW5jZSAoc3VjaCBhcyBhIHN0cmluZywgdHVwbGUgb3IgbGlzdCkgb3Igb3RoZXIgaXRlcmFibGUgb2JqZWN0OlxuXG4gICBmb3Jfc3RtdCA6Oj0gImZvciIgdGFyZ2V0X2xpc3QgImluIiBleHByZXNzaW9uX2xpc3QgIjoiIHN1aXRlXG4gICAgICAgICAgICAgICAgWyJlbHNlIiAiOiIgc3VpdGVdXG5cblRoZSBleHByZXNzaW9uIGxpc3QgaXMgZXZhbHVhdGVkIG9uY2U7IGl0IHNob3VsZCB5aWVsZCBhbiBpdGVyYWJsZVxub2JqZWN0LiAgQW4gaXRlcmF0b3IgaXMgY3JlYXRlZCBmb3IgdGhlIHJlc3VsdCBvZiB0aGVcbmBgZXhwcmVzc2lvbl9saXN0YGAuICBUaGUgc3VpdGUgaXMgdGhlbiBleGVjdXRlZCBvbmNlIGZvciBlYWNoIGl0ZW1cbnByb3ZpZGVkIGJ5IHRoZSBpdGVyYXRvciwgaW4gdGhlIG9yZGVyIG9mIGFzY2VuZGluZyBpbmRpY2VzLiAgRWFjaFxuaXRlbSBpbiB0dXJuIGlzIGFzc2lnbmVkIHRvIHRoZSB0YXJnZXQgbGlzdCB1c2luZyB0aGUgc3RhbmRhcmQgcnVsZXNcbmZvciBhc3NpZ25tZW50cyAoc2VlICpBc3NpZ25tZW50IHN0YXRlbWVudHMqKSwgYW5kIHRoZW4gdGhlIHN1aXRlIGlzXG5leGVjdXRlZC4gIFdoZW4gdGhlIGl0ZW1zIGFyZSBleGhhdXN0ZWQgKHdoaWNoIGlzIGltbWVkaWF0ZWx5IHdoZW4gdGhlXG5zZXF1ZW5jZSBpcyBlbXB0eSBvciBhbiBpdGVyYXRvciByYWlzZXMgYSBgYFN0b3BJdGVyYXRpb25gYFxuZXhjZXB0aW9uKSwgdGhlIHN1aXRlIGluIHRoZSBgYGVsc2VgYCBjbGF1c2UsIGlmIHByZXNlbnQsIGlzIGV4ZWN1dGVkLFxuYW5kIHRoZSBsb29wIHRlcm1pbmF0ZXMuXG5cbkEgYGBicmVha2BgIHN0YXRlbWVudCBleGVjdXRlZCBpbiB0aGUgZmlyc3Qgc3VpdGUgdGVybWluYXRlcyB0aGUgbG9vcFxud2l0aG91dCBleGVjdXRpbmcgdGhlIGBgZWxzZWBgIGNsYXVzZVwncyBzdWl0ZS4gIEEgYGBjb250aW51ZWBgXG5zdGF0ZW1lbnQgZXhlY3V0ZWQgaW4gdGhlIGZpcnN0IHN1aXRlIHNraXBzIHRoZSByZXN0IG9mIHRoZSBzdWl0ZSBhbmRcbmNvbnRpbnVlcyB3aXRoIHRoZSBuZXh0IGl0ZW0sIG9yIHdpdGggdGhlIGBgZWxzZWBgIGNsYXVzZSBpZiB0aGVyZSB3YXNcbm5vIG5leHQgaXRlbS5cblxuVGhlIHN1aXRlIG1heSBhc3NpZ24gdG8gdGhlIHZhcmlhYmxlKHMpIGluIHRoZSB0YXJnZXQgbGlzdDsgdGhpcyBkb2VzXG5ub3QgYWZmZWN0IHRoZSBuZXh0IGl0ZW0gYXNzaWduZWQgdG8gaXQuXG5cbk5hbWVzIGluIHRoZSB0YXJnZXQgbGlzdCBhcmUgbm90IGRlbGV0ZWQgd2hlbiB0aGUgbG9vcCBpcyBmaW5pc2hlZCxcbmJ1dCBpZiB0aGUgc2VxdWVuY2UgaXMgZW1wdHksIGl0IHdpbGwgbm90IGhhdmUgYmVlbiBhc3NpZ25lZCB0byBhdCBhbGxcbmJ5IHRoZSBsb29wLiAgSGludDogdGhlIGJ1aWx0LWluIGZ1bmN0aW9uIGBgcmFuZ2UoKWBgIHJldHVybnMgYW5cbml0ZXJhdG9yIG9mIGludGVnZXJzIHN1aXRhYmxlIHRvIGVtdWxhdGUgdGhlIGVmZmVjdCBvZiBQYXNjYWxcJ3MgYGBmb3JcbmkgOj0gYSB0byBiIGRvYGA7IGUuZy4sIGBgbGlzdChyYW5nZSgzKSlgYCByZXR1cm5zIHRoZSBsaXN0IGBgWzAsIDEsXG4yXWBgLlxuXG5Ob3RlOiBUaGVyZSBpcyBhIHN1YnRsZXR5IHdoZW4gdGhlIHNlcXVlbmNlIGlzIGJlaW5nIG1vZGlmaWVkIGJ5IHRoZSBsb29wXG4gICh0aGlzIGNhbiBvbmx5IG9jY3VyIGZvciBtdXRhYmxlIHNlcXVlbmNlcywgaS5lLiBsaXN0cykuICBBblxuICBpbnRlcm5hbCBjb3VudGVyIGlzIHVzZWQgdG8ga2VlcCB0cmFjayBvZiB3aGljaCBpdGVtIGlzIHVzZWQgbmV4dCxcbiAgYW5kIHRoaXMgaXMgaW5jcmVtZW50ZWQgb24gZWFjaCBpdGVyYXRpb24uICBXaGVuIHRoaXMgY291bnRlciBoYXNcbiAgcmVhY2hlZCB0aGUgbGVuZ3RoIG9mIHRoZSBzZXF1ZW5jZSB0aGUgbG9vcCB0ZXJtaW5hdGVzLiAgVGhpcyBtZWFuc1xuICB0aGF0IGlmIHRoZSBzdWl0ZSBkZWxldGVzIHRoZSBjdXJyZW50IChvciBhIHByZXZpb3VzKSBpdGVtIGZyb20gdGhlXG4gIHNlcXVlbmNlLCB0aGUgbmV4dCBpdGVtIHdpbGwgYmUgc2tpcHBlZCAoc2luY2UgaXQgZ2V0cyB0aGUgaW5kZXggb2ZcbiAgdGhlIGN1cnJlbnQgaXRlbSB3aGljaCBoYXMgYWxyZWFkeSBiZWVuIHRyZWF0ZWQpLiAgTGlrZXdpc2UsIGlmIHRoZVxuICBzdWl0ZSBpbnNlcnRzIGFuIGl0ZW0gaW4gdGhlIHNlcXVlbmNlIGJlZm9yZSB0aGUgY3VycmVudCBpdGVtLCB0aGVcbiAgY3VycmVudCBpdGVtIHdpbGwgYmUgdHJlYXRlZCBhZ2FpbiB0aGUgbmV4dCB0aW1lIHRocm91Z2ggdGhlIGxvb3AuXG4gIFRoaXMgY2FuIGxlYWQgdG8gbmFzdHkgYnVncyB0aGF0IGNhbiBiZSBhdm9pZGVkIGJ5IG1ha2luZyBhXG4gIHRlbXBvcmFyeSBjb3B5IHVzaW5nIGEgc2xpY2Ugb2YgdGhlIHdob2xlIHNlcXVlbmNlLCBlLmcuLFxuXG4gICAgIGZvciB4IGluIGFbOl06XG4gICAgICAgICBpZiB4IDwgMDogYS5yZW1vdmUoeClcblxuXG5UaGUgYGB0cnlgYCBzdGF0ZW1lbnRcbj09PT09PT09PT09PT09PT09PT09PVxuXG5UaGUgYGB0cnlgYCBzdGF0ZW1lbnQgc3BlY2lmaWVzIGV4Y2VwdGlvbiBoYW5kbGVycyBhbmQvb3IgY2xlYW51cCBjb2RlXG5mb3IgYSBncm91cCBvZiBzdGF0ZW1lbnRzOlxuXG4gICB0cnlfc3RtdCAgOjo9IHRyeTFfc3RtdCB8IHRyeTJfc3RtdFxuICAgdHJ5MV9zdG10IDo6PSAidHJ5IiAiOiIgc3VpdGVcbiAgICAgICAgICAgICAgICAgKCJleGNlcHQiIFtleHByZXNzaW9uIFsiYXMiIHRhcmdldF1dICI6IiBzdWl0ZSkrXG4gICAgICAgICAgICAgICAgIFsiZWxzZSIgIjoiIHN1aXRlXVxuICAgICAgICAgICAgICAgICBbImZpbmFsbHkiICI6IiBzdWl0ZV1cbiAgIHRyeTJfc3RtdCA6Oj0gInRyeSIgIjoiIHN1aXRlXG4gICAgICAgICAgICAgICAgICJmaW5hbGx5IiAiOiIgc3VpdGVcblxuVGhlIGBgZXhjZXB0YGAgY2xhdXNlKHMpIHNwZWNpZnkgb25lIG9yIG1vcmUgZXhjZXB0aW9uIGhhbmRsZXJzLiBXaGVuXG5ubyBleGNlcHRpb24gb2NjdXJzIGluIHRoZSBgYHRyeWBgIGNsYXVzZSwgbm8gZXhjZXB0aW9uIGhhbmRsZXIgaXNcbmV4ZWN1dGVkLiBXaGVuIGFuIGV4Y2VwdGlvbiBvY2N1cnMgaW4gdGhlIGBgdHJ5YGAgc3VpdGUsIGEgc2VhcmNoIGZvclxuYW4gZXhjZXB0aW9uIGhhbmRsZXIgaXMgc3RhcnRlZC4gIFRoaXMgc2VhcmNoIGluc3BlY3RzIHRoZSBleGNlcHRcbmNsYXVzZXMgaW4gdHVybiB1bnRpbCBvbmUgaXMgZm91bmQgdGhhdCBtYXRjaGVzIHRoZSBleGNlcHRpb24uICBBblxuZXhwcmVzc2lvbi1sZXNzIGV4Y2VwdCBjbGF1c2UsIGlmIHByZXNlbnQsIG11c3QgYmUgbGFzdDsgaXQgbWF0Y2hlc1xuYW55IGV4Y2VwdGlvbi4gIEZvciBhbiBleGNlcHQgY2xhdXNlIHdpdGggYW4gZXhwcmVzc2lvbiwgdGhhdFxuZXhwcmVzc2lvbiBpcyBldmFsdWF0ZWQsIGFuZCB0aGUgY2xhdXNlIG1hdGNoZXMgdGhlIGV4Y2VwdGlvbiBpZiB0aGVcbnJlc3VsdGluZyBvYmplY3QgaXMgImNvbXBhdGlibGUiIHdpdGggdGhlIGV4Y2VwdGlvbi4gIEFuIG9iamVjdCBpc1xuY29tcGF0aWJsZSB3aXRoIGFuIGV4Y2VwdGlvbiBpZiBpdCBpcyB0aGUgY2xhc3Mgb3IgYSBiYXNlIGNsYXNzIG9mIHRoZVxuZXhjZXB0aW9uIG9iamVjdCBvciBhIHR1cGxlIGNvbnRhaW5pbmcgYW4gaXRlbSBjb21wYXRpYmxlIHdpdGggdGhlXG5leGNlcHRpb24uXG5cbklmIG5vIGV4Y2VwdCBjbGF1c2UgbWF0Y2hlcyB0aGUgZXhjZXB0aW9uLCB0aGUgc2VhcmNoIGZvciBhbiBleGNlcHRpb25cbmhhbmRsZXIgY29udGludWVzIGluIHRoZSBzdXJyb3VuZGluZyBjb2RlIGFuZCBvbiB0aGUgaW52b2NhdGlvbiBzdGFjay5cblsxXVxuXG5JZiB0aGUgZXZhbHVhdGlvbiBvZiBhbiBleHByZXNzaW9uIGluIHRoZSBoZWFkZXIgb2YgYW4gZXhjZXB0IGNsYXVzZVxucmFpc2VzIGFuIGV4Y2VwdGlvbiwgdGhlIG9yaWdpbmFsIHNlYXJjaCBmb3IgYSBoYW5kbGVyIGlzIGNhbmNlbGVkIGFuZFxuYSBzZWFyY2ggc3RhcnRzIGZvciB0aGUgbmV3IGV4Y2VwdGlvbiBpbiB0aGUgc3Vycm91bmRpbmcgY29kZSBhbmQgb25cbnRoZSBjYWxsIHN0YWNrIChpdCBpcyB0cmVhdGVkIGFzIGlmIHRoZSBlbnRpcmUgYGB0cnlgYCBzdGF0ZW1lbnRcbnJhaXNlZCB0aGUgZXhjZXB0aW9uKS5cblxuV2hlbiBhIG1hdGNoaW5nIGV4Y2VwdCBjbGF1c2UgaXMgZm91bmQsIHRoZSBleGNlcHRpb24gaXMgYXNzaWduZWQgdG9cbnRoZSB0YXJnZXQgc3BlY2lmaWVkIGFmdGVyIHRoZSBgYGFzYGAga2V5d29yZCBpbiB0aGF0IGV4Y2VwdCBjbGF1c2UsXG5pZiBwcmVzZW50LCBhbmQgdGhlIGV4Y2VwdCBjbGF1c2VcJ3Mgc3VpdGUgaXMgZXhlY3V0ZWQuICBBbGwgZXhjZXB0XG5jbGF1c2VzIG11c3QgaGF2ZSBhbiBleGVjdXRhYmxlIGJsb2NrLiAgV2hlbiB0aGUgZW5kIG9mIHRoaXMgYmxvY2sgaXNcbnJlYWNoZWQsIGV4ZWN1dGlvbiBjb250aW51ZXMgbm9ybWFsbHkgYWZ0ZXIgdGhlIGVudGlyZSB0cnkgc3RhdGVtZW50LlxuKFRoaXMgbWVhbnMgdGhhdCBpZiB0d28gbmVzdGVkIGhhbmRsZXJzIGV4aXN0IGZvciB0aGUgc2FtZSBleGNlcHRpb24sXG5hbmQgdGhlIGV4Y2VwdGlvbiBvY2N1cnMgaW4gdGhlIHRyeSBjbGF1c2Ugb2YgdGhlIGlubmVyIGhhbmRsZXIsIHRoZVxub3V0ZXIgaGFuZGxlciB3aWxsIG5vdCBoYW5kbGUgdGhlIGV4Y2VwdGlvbi4pXG5cbldoZW4gYW4gZXhjZXB0aW9uIGhhcyBiZWVuIGFzc2lnbmVkIHVzaW5nIGBgYXMgdGFyZ2V0YGAsIGl0IGlzIGNsZWFyZWRcbmF0IHRoZSBlbmQgb2YgdGhlIGV4Y2VwdCBjbGF1c2UuICBUaGlzIGlzIGFzIGlmXG5cbiAgIGV4Y2VwdCBFIGFzIE46XG4gICAgICAgZm9vXG5cbndhcyB0cmFuc2xhdGVkIHRvXG5cbiAgIGV4Y2VwdCBFIGFzIE46XG4gICAgICAgdHJ5OlxuICAgICAgICAgICBmb29cbiAgICAgICBmaW5hbGx5OlxuICAgICAgICAgICBkZWwgTlxuXG5UaGlzIG1lYW5zIHRoZSBleGNlcHRpb24gbXVzdCBiZSBhc3NpZ25lZCB0byBhIGRpZmZlcmVudCBuYW1lIHRvIGJlXG5hYmxlIHRvIHJlZmVyIHRvIGl0IGFmdGVyIHRoZSBleGNlcHQgY2xhdXNlLiAgRXhjZXB0aW9ucyBhcmUgY2xlYXJlZFxuYmVjYXVzZSB3aXRoIHRoZSB0cmFjZWJhY2sgYXR0YWNoZWQgdG8gdGhlbSwgdGhleSBmb3JtIGEgcmVmZXJlbmNlXG5jeWNsZSB3aXRoIHRoZSBzdGFjayBmcmFtZSwga2VlcGluZyBhbGwgbG9jYWxzIGluIHRoYXQgZnJhbWUgYWxpdmVcbnVudGlsIHRoZSBuZXh0IGdhcmJhZ2UgY29sbGVjdGlvbiBvY2N1cnMuXG5cbkJlZm9yZSBhbiBleGNlcHQgY2xhdXNlXCdzIHN1aXRlIGlzIGV4ZWN1dGVkLCBkZXRhaWxzIGFib3V0IHRoZVxuZXhjZXB0aW9uIGFyZSBzdG9yZWQgaW4gdGhlIGBgc3lzYGAgbW9kdWxlIGFuZCBjYW4gYmUgYWNjZXNzIHZpYVxuYGBzeXMuZXhjX2luZm8oKWBgLiBgYHN5cy5leGNfaW5mbygpYGAgcmV0dXJucyBhIDMtdHVwbGUgY29uc2lzdGluZyBvZlxudGhlIGV4Y2VwdGlvbiBjbGFzcywgdGhlIGV4Y2VwdGlvbiBpbnN0YW5jZSBhbmQgYSB0cmFjZWJhY2sgb2JqZWN0XG4oc2VlIHNlY3Rpb24gKlRoZSBzdGFuZGFyZCB0eXBlIGhpZXJhcmNoeSopIGlkZW50aWZ5aW5nIHRoZSBwb2ludCBpblxudGhlIHByb2dyYW0gd2hlcmUgdGhlIGV4Y2VwdGlvbiBvY2N1cnJlZC4gIGBgc3lzLmV4Y19pbmZvKClgYCB2YWx1ZXNcbmFyZSByZXN0b3JlZCB0byB0aGVpciBwcmV2aW91cyB2YWx1ZXMgKGJlZm9yZSB0aGUgY2FsbCkgd2hlbiByZXR1cm5pbmdcbmZyb20gYSBmdW5jdGlvbiB0aGF0IGhhbmRsZWQgYW4gZXhjZXB0aW9uLlxuXG5UaGUgb3B0aW9uYWwgYGBlbHNlYGAgY2xhdXNlIGlzIGV4ZWN1dGVkIGlmIGFuZCB3aGVuIGNvbnRyb2wgZmxvd3Mgb2ZmXG50aGUgZW5kIG9mIHRoZSBgYHRyeWBgIGNsYXVzZS4gWzJdIEV4Y2VwdGlvbnMgaW4gdGhlIGBgZWxzZWBgIGNsYXVzZVxuYXJlIG5vdCBoYW5kbGVkIGJ5IHRoZSBwcmVjZWRpbmcgYGBleGNlcHRgYCBjbGF1c2VzLlxuXG5JZiBgYGZpbmFsbHlgYCBpcyBwcmVzZW50LCBpdCBzcGVjaWZpZXMgYSBcJ2NsZWFudXBcJyBoYW5kbGVyLiAgVGhlXG5gYHRyeWBgIGNsYXVzZSBpcyBleGVjdXRlZCwgaW5jbHVkaW5nIGFueSBgYGV4Y2VwdGBgIGFuZCBgYGVsc2VgYFxuY2xhdXNlcy4gIElmIGFuIGV4Y2VwdGlvbiBvY2N1cnMgaW4gYW55IG9mIHRoZSBjbGF1c2VzIGFuZCBpcyBub3RcbmhhbmRsZWQsIHRoZSBleGNlcHRpb24gaXMgdGVtcG9yYXJpbHkgc2F2ZWQuIFRoZSBgYGZpbmFsbHlgYCBjbGF1c2UgaXNcbmV4ZWN1dGVkLiAgSWYgdGhlcmUgaXMgYSBzYXZlZCBleGNlcHRpb24sIGl0IGlzIHJlLXJhaXNlZCBhdCB0aGUgZW5kXG5vZiB0aGUgYGBmaW5hbGx5YGAgY2xhdXNlLiBJZiB0aGUgYGBmaW5hbGx5YGAgY2xhdXNlIHJhaXNlcyBhbm90aGVyXG5leGNlcHRpb24gb3IgZXhlY3V0ZXMgYSBgYHJldHVybmBgIG9yIGBgYnJlYWtgYCBzdGF0ZW1lbnQsIHRoZSBzYXZlZFxuZXhjZXB0aW9uIGlzIGxvc3QuICBUaGUgZXhjZXB0aW9uIGluZm9ybWF0aW9uIGlzIG5vdCBhdmFpbGFibGUgdG8gdGhlXG5wcm9ncmFtIGR1cmluZyBleGVjdXRpb24gb2YgdGhlIGBgZmluYWxseWBgIGNsYXVzZS5cblxuV2hlbiBhIGBgcmV0dXJuYGAsIGBgYnJlYWtgYCBvciBgYGNvbnRpbnVlYGAgc3RhdGVtZW50IGlzIGV4ZWN1dGVkIGluXG50aGUgYGB0cnlgYCBzdWl0ZSBvZiBhIGBgdHJ5YGAuLi5gYGZpbmFsbHlgYCBzdGF0ZW1lbnQsIHRoZVxuYGBmaW5hbGx5YGAgY2xhdXNlIGlzIGFsc28gZXhlY3V0ZWQgXCdvbiB0aGUgd2F5IG91dC5cJyBBIGBgY29udGludWVgYFxuc3RhdGVtZW50IGlzIGlsbGVnYWwgaW4gdGhlIGBgZmluYWxseWBgIGNsYXVzZS4gKFRoZSByZWFzb24gaXMgYVxucHJvYmxlbSB3aXRoIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uIC0tLSB0aGlzIHJlc3RyaWN0aW9uIG1heSBiZVxubGlmdGVkIGluIHRoZSBmdXR1cmUpLlxuXG5BZGRpdGlvbmFsIGluZm9ybWF0aW9uIG9uIGV4Y2VwdGlvbnMgY2FuIGJlIGZvdW5kIGluIHNlY3Rpb25cbipFeGNlcHRpb25zKiwgYW5kIGluZm9ybWF0aW9uIG9uIHVzaW5nIHRoZSBgYHJhaXNlYGAgc3RhdGVtZW50IHRvXG5nZW5lcmF0ZSBleGNlcHRpb25zIG1heSBiZSBmb3VuZCBpbiBzZWN0aW9uICpUaGUgcmFpc2Ugc3RhdGVtZW50Ki5cblxuXG5UaGUgYGB3aXRoYGAgc3RhdGVtZW50XG49PT09PT09PT09PT09PT09PT09PT09XG5cblRoZSBgYHdpdGhgYCBzdGF0ZW1lbnQgaXMgdXNlZCB0byB3cmFwIHRoZSBleGVjdXRpb24gb2YgYSBibG9jayB3aXRoXG5tZXRob2RzIGRlZmluZWQgYnkgYSBjb250ZXh0IG1hbmFnZXIgKHNlZSBzZWN0aW9uICpXaXRoIFN0YXRlbWVudFxuQ29udGV4dCBNYW5hZ2VycyopLiBUaGlzIGFsbG93cyBjb21tb25cbmBgdHJ5YGAuLi5gYGV4Y2VwdGBgLi4uYGBmaW5hbGx5YGAgdXNhZ2UgcGF0dGVybnMgdG8gYmUgZW5jYXBzdWxhdGVkXG5mb3IgY29udmVuaWVudCByZXVzZS5cblxuICAgd2l0aF9zdG10IDo6PSAid2l0aCIgd2l0aF9pdGVtICgiLCIgd2l0aF9pdGVtKSogIjoiIHN1aXRlXG4gICB3aXRoX2l0ZW0gOjo9IGV4cHJlc3Npb24gWyJhcyIgdGFyZ2V0XVxuXG5UaGUgZXhlY3V0aW9uIG9mIHRoZSBgYHdpdGhgYCBzdGF0ZW1lbnQgd2l0aCBvbmUgIml0ZW0iIHByb2NlZWRzIGFzXG5mb2xsb3dzOlxuXG4xLiBUaGUgY29udGV4dCBleHByZXNzaW9uICh0aGUgZXhwcmVzc2lvbiBnaXZlbiBpbiB0aGUgYGB3aXRoX2l0ZW1gYClcbiAgIGlzIGV2YWx1YXRlZCB0byBvYnRhaW4gYSBjb250ZXh0IG1hbmFnZXIuXG5cbjIuIFRoZSBjb250ZXh0IG1hbmFnZXJcJ3MgYGBfX2V4aXRfXygpYGAgaXMgbG9hZGVkIGZvciBsYXRlciB1c2UuXG5cbjMuIFRoZSBjb250ZXh0IG1hbmFnZXJcJ3MgYGBfX2VudGVyX18oKWBgIG1ldGhvZCBpcyBpbnZva2VkLlxuXG40LiBJZiBhIHRhcmdldCB3YXMgaW5jbHVkZWQgaW4gdGhlIGBgd2l0aGBgIHN0YXRlbWVudCwgdGhlIHJldHVyblxuICAgdmFsdWUgZnJvbSBgYF9fZW50ZXJfXygpYGAgaXMgYXNzaWduZWQgdG8gaXQuXG5cbiAgIE5vdGU6IFRoZSBgYHdpdGhgYCBzdGF0ZW1lbnQgZ3VhcmFudGVlcyB0aGF0IGlmIHRoZSBgYF9fZW50ZXJfXygpYGBcbiAgICAgbWV0aG9kIHJldHVybnMgd2l0aG91dCBhbiBlcnJvciwgdGhlbiBgYF9fZXhpdF9fKClgYCB3aWxsIGFsd2F5c1xuICAgICBiZSBjYWxsZWQuIFRodXMsIGlmIGFuIGVycm9yIG9jY3VycyBkdXJpbmcgdGhlIGFzc2lnbm1lbnQgdG8gdGhlXG4gICAgIHRhcmdldCBsaXN0LCBpdCB3aWxsIGJlIHRyZWF0ZWQgdGhlIHNhbWUgYXMgYW4gZXJyb3Igb2NjdXJyaW5nXG4gICAgIHdpdGhpbiB0aGUgc3VpdGUgd291bGQgYmUuIFNlZSBzdGVwIDYgYmVsb3cuXG5cbjUuIFRoZSBzdWl0ZSBpcyBleGVjdXRlZC5cblxuNi4gVGhlIGNvbnRleHQgbWFuYWdlclwncyBgYF9fZXhpdF9fKClgYCBtZXRob2QgaXMgaW52b2tlZC4gIElmIGFuXG4gICBleGNlcHRpb24gY2F1c2VkIHRoZSBzdWl0ZSB0byBiZSBleGl0ZWQsIGl0cyB0eXBlLCB2YWx1ZSwgYW5kXG4gICB0cmFjZWJhY2sgYXJlIHBhc3NlZCBhcyBhcmd1bWVudHMgdG8gYGBfX2V4aXRfXygpYGAuIE90aGVyd2lzZSxcbiAgIHRocmVlIGBgTm9uZWBgIGFyZ3VtZW50cyBhcmUgc3VwcGxpZWQuXG5cbiAgIElmIHRoZSBzdWl0ZSB3YXMgZXhpdGVkIGR1ZSB0byBhbiBleGNlcHRpb24sIGFuZCB0aGUgcmV0dXJuIHZhbHVlXG4gICBmcm9tIHRoZSBgYF9fZXhpdF9fKClgYCBtZXRob2Qgd2FzIGZhbHNlLCB0aGUgZXhjZXB0aW9uIGlzXG4gICByZXJhaXNlZC4gIElmIHRoZSByZXR1cm4gdmFsdWUgd2FzIHRydWUsIHRoZSBleGNlcHRpb24gaXNcbiAgIHN1cHByZXNzZWQsIGFuZCBleGVjdXRpb24gY29udGludWVzIHdpdGggdGhlIHN0YXRlbWVudCBmb2xsb3dpbmdcbiAgIHRoZSBgYHdpdGhgYCBzdGF0ZW1lbnQuXG5cbiAgIElmIHRoZSBzdWl0ZSB3YXMgZXhpdGVkIGZvciBhbnkgcmVhc29uIG90aGVyIHRoYW4gYW4gZXhjZXB0aW9uLCB0aGVcbiAgIHJldHVybiB2YWx1ZSBmcm9tIGBgX19leGl0X18oKWBgIGlzIGlnbm9yZWQsIGFuZCBleGVjdXRpb24gcHJvY2VlZHNcbiAgIGF0IHRoZSBub3JtYWwgbG9jYXRpb24gZm9yIHRoZSBraW5kIG9mIGV4aXQgdGhhdCB3YXMgdGFrZW4uXG5cbldpdGggbW9yZSB0aGFuIG9uZSBpdGVtLCB0aGUgY29udGV4dCBtYW5hZ2VycyBhcmUgcHJvY2Vzc2VkIGFzIGlmXG5tdWx0aXBsZSBgYHdpdGhgYCBzdGF0ZW1lbnRzIHdlcmUgbmVzdGVkOlxuXG4gICB3aXRoIEEoKSBhcyBhLCBCKCkgYXMgYjpcbiAgICAgICBzdWl0ZVxuXG5pcyBlcXVpdmFsZW50IHRvXG5cbiAgIHdpdGggQSgpIGFzIGE6XG4gICAgICAgd2l0aCBCKCkgYXMgYjpcbiAgICAgICAgICAgc3VpdGVcblxuQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogU3VwcG9ydCBmb3IgbXVsdGlwbGUgY29udGV4dCBleHByZXNzaW9ucy5cblxuU2VlIGFsc286XG5cbiAgICoqUEVQIDAzNDMqKiAtIFRoZSAid2l0aCIgc3RhdGVtZW50XG4gICAgICBUaGUgc3BlY2lmaWNhdGlvbiwgYmFja2dyb3VuZCwgYW5kIGV4YW1wbGVzIGZvciB0aGUgUHl0aG9uXG4gICAgICBgYHdpdGhgYCBzdGF0ZW1lbnQuXG5cblxuRnVuY3Rpb24gZGVmaW5pdGlvbnNcbj09PT09PT09PT09PT09PT09PT09XG5cbkEgZnVuY3Rpb24gZGVmaW5pdGlvbiBkZWZpbmVzIGEgdXNlci1kZWZpbmVkIGZ1bmN0aW9uIG9iamVjdCAoc2VlXG5zZWN0aW9uICpUaGUgc3RhbmRhcmQgdHlwZSBoaWVyYXJjaHkqKTpcblxuICAgZnVuY2RlZiAgICAgICAgOjo9IFtkZWNvcmF0b3JzXSAiZGVmIiBmdW5jbmFtZSAiKCIgW3BhcmFtZXRlcl9saXN0XSAiKSIgWyItPiIgZXhwcmVzc2lvbl0gIjoiIHN1aXRlXG4gICBkZWNvcmF0b3JzICAgICA6Oj0gZGVjb3JhdG9yK1xuICAgZGVjb3JhdG9yICAgICAgOjo9ICJAIiBkb3R0ZWRfbmFtZSBbIigiIFthcmd1bWVudF9saXN0IFsiLCJdXSAiKSJdIE5FV0xJTkVcbiAgIGRvdHRlZF9uYW1lICAgIDo6PSBpZGVudGlmaWVyICgiLiIgaWRlbnRpZmllcikqXG4gICBwYXJhbWV0ZXJfbGlzdCA6Oj0gKGRlZnBhcmFtZXRlciAiLCIpKlxuICAgICAgICAgICAgICAgICAgICAgICggICIqIiBbcGFyYW1ldGVyXSAoIiwiIGRlZnBhcmFtZXRlcikqXG4gICAgICAgICAgICAgICAgICAgICAgWywgIioqIiBwYXJhbWV0ZXJdXG4gICAgICAgICAgICAgICAgICAgICAgfCAiKioiIHBhcmFtZXRlclxuICAgICAgICAgICAgICAgICAgICAgIHwgZGVmcGFyYW1ldGVyIFsiLCJdIClcbiAgIHBhcmFtZXRlciAgICAgIDo6PSBpZGVudGlmaWVyIFsiOiIgZXhwcmVzc2lvbl1cbiAgIGRlZnBhcmFtZXRlciAgIDo6PSBwYXJhbWV0ZXIgWyI9IiBleHByZXNzaW9uXVxuICAgZnVuY25hbWUgICAgICAgOjo9IGlkZW50aWZpZXJcblxuQSBmdW5jdGlvbiBkZWZpbml0aW9uIGlzIGFuIGV4ZWN1dGFibGUgc3RhdGVtZW50LiAgSXRzIGV4ZWN1dGlvbiBiaW5kc1xudGhlIGZ1bmN0aW9uIG5hbWUgaW4gdGhlIGN1cnJlbnQgbG9jYWwgbmFtZXNwYWNlIHRvIGEgZnVuY3Rpb24gb2JqZWN0XG4oYSB3cmFwcGVyIGFyb3VuZCB0aGUgZXhlY3V0YWJsZSBjb2RlIGZvciB0aGUgZnVuY3Rpb24pLiAgVGhpc1xuZnVuY3Rpb24gb2JqZWN0IGNvbnRhaW5zIGEgcmVmZXJlbmNlIHRvIHRoZSBjdXJyZW50IGdsb2JhbCBuYW1lc3BhY2VcbmFzIHRoZSBnbG9iYWwgbmFtZXNwYWNlIHRvIGJlIHVzZWQgd2hlbiB0aGUgZnVuY3Rpb24gaXMgY2FsbGVkLlxuXG5UaGUgZnVuY3Rpb24gZGVmaW5pdGlvbiBkb2VzIG5vdCBleGVjdXRlIHRoZSBmdW5jdGlvbiBib2R5OyB0aGlzIGdldHNcbmV4ZWN1dGVkIG9ubHkgd2hlbiB0aGUgZnVuY3Rpb24gaXMgY2FsbGVkLiBbM11cblxuQSBmdW5jdGlvbiBkZWZpbml0aW9uIG1heSBiZSB3cmFwcGVkIGJ5IG9uZSBvciBtb3JlICpkZWNvcmF0b3IqXG5leHByZXNzaW9ucy4gRGVjb3JhdG9yIGV4cHJlc3Npb25zIGFyZSBldmFsdWF0ZWQgd2hlbiB0aGUgZnVuY3Rpb24gaXNcbmRlZmluZWQsIGluIHRoZSBzY29wZSB0aGF0IGNvbnRhaW5zIHRoZSBmdW5jdGlvbiBkZWZpbml0aW9uLiAgVGhlXG5yZXN1bHQgbXVzdCBiZSBhIGNhbGxhYmxlLCB3aGljaCBpcyBpbnZva2VkIHdpdGggdGhlIGZ1bmN0aW9uIG9iamVjdFxuYXMgdGhlIG9ubHkgYXJndW1lbnQuIFRoZSByZXR1cm5lZCB2YWx1ZSBpcyBib3VuZCB0byB0aGUgZnVuY3Rpb24gbmFtZVxuaW5zdGVhZCBvZiB0aGUgZnVuY3Rpb24gb2JqZWN0LiAgTXVsdGlwbGUgZGVjb3JhdG9ycyBhcmUgYXBwbGllZCBpblxubmVzdGVkIGZhc2hpb24uIEZvciBleGFtcGxlLCB0aGUgZm9sbG93aW5nIGNvZGVcblxuICAgQGYxKGFyZylcbiAgIEBmMlxuICAgZGVmIGZ1bmMoKTogcGFzc1xuXG5pcyBlcXVpdmFsZW50IHRvXG5cbiAgIGRlZiBmdW5jKCk6IHBhc3NcbiAgIGZ1bmMgPSBmMShhcmcpKGYyKGZ1bmMpKVxuXG5XaGVuIG9uZSBvciBtb3JlIHBhcmFtZXRlcnMgaGF2ZSB0aGUgZm9ybSAqcGFyYW1ldGVyKiBgYD1gYFxuKmV4cHJlc3Npb24qLCB0aGUgZnVuY3Rpb24gaXMgc2FpZCB0byBoYXZlICJkZWZhdWx0IHBhcmFtZXRlciB2YWx1ZXMuIlxuRm9yIGEgcGFyYW1ldGVyIHdpdGggYSBkZWZhdWx0IHZhbHVlLCB0aGUgY29ycmVzcG9uZGluZyBhcmd1bWVudCBtYXlcbmJlIG9taXR0ZWQgZnJvbSBhIGNhbGwsIGluIHdoaWNoIGNhc2UgdGhlIHBhcmFtZXRlclwncyBkZWZhdWx0IHZhbHVlIGlzXG5zdWJzdGl0dXRlZC4gIElmIGEgcGFyYW1ldGVyIGhhcyBhIGRlZmF1bHQgdmFsdWUsIGFsbCBmb2xsb3dpbmdcbnBhcmFtZXRlcnMgdXAgdW50aWwgdGhlICJgYCpgYCIgbXVzdCBhbHNvIGhhdmUgYSBkZWZhdWx0IHZhbHVlIC0tLVxudGhpcyBpcyBhIHN5bnRhY3RpYyByZXN0cmljdGlvbiB0aGF0IGlzIG5vdCBleHByZXNzZWQgYnkgdGhlIGdyYW1tYXIuXG5cbioqRGVmYXVsdCBwYXJhbWV0ZXIgdmFsdWVzIGFyZSBldmFsdWF0ZWQgd2hlbiB0aGUgZnVuY3Rpb24gZGVmaW5pdGlvblxuaXMgZXhlY3V0ZWQuKiogVGhpcyBtZWFucyB0aGF0IHRoZSBleHByZXNzaW9uIGlzIGV2YWx1YXRlZCBvbmNlLCB3aGVuXG50aGUgZnVuY3Rpb24gaXMgZGVmaW5lZCwgYW5kIHRoYXQgdGhhdCBzYW1lICJwcmUtY29tcHV0ZWQiIHZhbHVlIGlzXG51c2VkIGZvciBlYWNoIGNhbGwuICBUaGlzIGlzIGVzcGVjaWFsbHkgaW1wb3J0YW50IHRvIHVuZGVyc3RhbmQgd2hlbiBhXG5kZWZhdWx0IHBhcmFtZXRlciBpcyBhIG11dGFibGUgb2JqZWN0LCBzdWNoIGFzIGEgbGlzdCBvciBhIGRpY3Rpb25hcnk6XG5pZiB0aGUgZnVuY3Rpb24gbW9kaWZpZXMgdGhlIG9iamVjdCAoZS5nLiBieSBhcHBlbmRpbmcgYW4gaXRlbSB0byBhXG5saXN0KSwgdGhlIGRlZmF1bHQgdmFsdWUgaXMgaW4gZWZmZWN0IG1vZGlmaWVkLiBUaGlzIGlzIGdlbmVyYWxseSBub3RcbndoYXQgd2FzIGludGVuZGVkLiAgQSB3YXkgYXJvdW5kIHRoaXMgaXMgdG8gdXNlIGBgTm9uZWBgIGFzIHRoZVxuZGVmYXVsdCwgYW5kIGV4cGxpY2l0bHkgdGVzdCBmb3IgaXQgaW4gdGhlIGJvZHkgb2YgdGhlIGZ1bmN0aW9uLCBlLmcuOlxuXG4gICBkZWYgd2hhdHNfb25fdGhlX3RlbGx5KHBlbmd1aW49Tm9uZSk6XG4gICAgICAgaWYgcGVuZ3VpbiBpcyBOb25lOlxuICAgICAgICAgICBwZW5ndWluID0gW11cbiAgICAgICBwZW5ndWluLmFwcGVuZCgicHJvcGVydHkgb2YgdGhlIHpvbyIpXG4gICAgICAgcmV0dXJuIHBlbmd1aW5cblxuRnVuY3Rpb24gY2FsbCBzZW1hbnRpY3MgYXJlIGRlc2NyaWJlZCBpbiBtb3JlIGRldGFpbCBpbiBzZWN0aW9uXG4qQ2FsbHMqLiBBIGZ1bmN0aW9uIGNhbGwgYWx3YXlzIGFzc2lnbnMgdmFsdWVzIHRvIGFsbCBwYXJhbWV0ZXJzXG5tZW50aW9uZWQgaW4gdGhlIHBhcmFtZXRlciBsaXN0LCBlaXRoZXIgZnJvbSBwb3NpdGlvbiBhcmd1bWVudHMsIGZyb21cbmtleXdvcmQgYXJndW1lbnRzLCBvciBmcm9tIGRlZmF1bHQgdmFsdWVzLiAgSWYgdGhlIGZvcm1cbiJgYCppZGVudGlmaWVyYGAiIGlzIHByZXNlbnQsIGl0IGlzIGluaXRpYWxpemVkIHRvIGEgdHVwbGUgcmVjZWl2aW5nXG5hbnkgZXhjZXNzIHBvc2l0aW9uYWwgcGFyYW1ldGVycywgZGVmYXVsdGluZyB0byB0aGUgZW1wdHkgdHVwbGUuICBJZlxudGhlIGZvcm0gImBgKippZGVudGlmaWVyYGAiIGlzIHByZXNlbnQsIGl0IGlzIGluaXRpYWxpemVkIHRvIGEgbmV3XG5kaWN0aW9uYXJ5IHJlY2VpdmluZyBhbnkgZXhjZXNzIGtleXdvcmQgYXJndW1lbnRzLCBkZWZhdWx0aW5nIHRvIGEgbmV3XG5lbXB0eSBkaWN0aW9uYXJ5LiBQYXJhbWV0ZXJzIGFmdGVyICJgYCpgYCIgb3IgImBgKmlkZW50aWZpZXJgYCIgYXJlXG5rZXl3b3JkLW9ubHkgcGFyYW1ldGVycyBhbmQgbWF5IG9ubHkgYmUgcGFzc2VkIHVzZWQga2V5d29yZCBhcmd1bWVudHMuXG5cblBhcmFtZXRlcnMgbWF5IGhhdmUgYW5ub3RhdGlvbnMgb2YgdGhlIGZvcm0gImBgOiBleHByZXNzaW9uYGAiXG5mb2xsb3dpbmcgdGhlIHBhcmFtZXRlciBuYW1lLiAgQW55IHBhcmFtZXRlciBtYXkgaGF2ZSBhbiBhbm5vdGF0aW9uXG5ldmVuIHRob3NlIG9mIHRoZSBmb3JtIGBgKmlkZW50aWZpZXJgYCBvciBgYCoqaWRlbnRpZmllcmBgLiAgRnVuY3Rpb25zXG5tYXkgaGF2ZSAicmV0dXJuIiBhbm5vdGF0aW9uIG9mIHRoZSBmb3JtICJgYC0+IGV4cHJlc3Npb25gYCIgYWZ0ZXIgdGhlXG5wYXJhbWV0ZXIgbGlzdC4gIFRoZXNlIGFubm90YXRpb25zIGNhbiBiZSBhbnkgdmFsaWQgUHl0aG9uIGV4cHJlc3Npb25cbmFuZCBhcmUgZXZhbHVhdGVkIHdoZW4gdGhlIGZ1bmN0aW9uIGRlZmluaXRpb24gaXMgZXhlY3V0ZWQuXG5Bbm5vdGF0aW9ucyBtYXkgYmUgZXZhbHVhdGVkIGluIGEgZGlmZmVyZW50IG9yZGVyIHRoYW4gdGhleSBhcHBlYXIgaW5cbnRoZSBzb3VyY2UgY29kZS4gIFRoZSBwcmVzZW5jZSBvZiBhbm5vdGF0aW9ucyBkb2VzIG5vdCBjaGFuZ2UgdGhlXG5zZW1hbnRpY3Mgb2YgYSBmdW5jdGlvbi4gIFRoZSBhbm5vdGF0aW9uIHZhbHVlcyBhcmUgYXZhaWxhYmxlIGFzXG52YWx1ZXMgb2YgYSBkaWN0aW9uYXJ5IGtleWVkIGJ5IHRoZSBwYXJhbWV0ZXJzXCcgbmFtZXMgaW4gdGhlXG5gYF9fYW5ub3RhdGlvbnNfX2BgIGF0dHJpYnV0ZSBvZiB0aGUgZnVuY3Rpb24gb2JqZWN0LlxuXG5JdCBpcyBhbHNvIHBvc3NpYmxlIHRvIGNyZWF0ZSBhbm9ueW1vdXMgZnVuY3Rpb25zIChmdW5jdGlvbnMgbm90IGJvdW5kXG50byBhIG5hbWUpLCBmb3IgaW1tZWRpYXRlIHVzZSBpbiBleHByZXNzaW9ucy4gIFRoaXMgdXNlcyBsYW1iZGEgZm9ybXMsXG5kZXNjcmliZWQgaW4gc2VjdGlvbiAqTGFtYmRhcyouICBOb3RlIHRoYXQgdGhlIGxhbWJkYSBmb3JtIGlzIG1lcmVseSBhXG5zaG9ydGhhbmQgZm9yIGEgc2ltcGxpZmllZCBmdW5jdGlvbiBkZWZpbml0aW9uOyBhIGZ1bmN0aW9uIGRlZmluZWQgaW5cbmEgImBgZGVmYGAiIHN0YXRlbWVudCBjYW4gYmUgcGFzc2VkIGFyb3VuZCBvciBhc3NpZ25lZCB0byBhbm90aGVyIG5hbWVcbmp1c3QgbGlrZSBhIGZ1bmN0aW9uIGRlZmluZWQgYnkgYSBsYW1iZGEgZm9ybS4gIFRoZSAiYGBkZWZgYCIgZm9ybSBpc1xuYWN0dWFsbHkgbW9yZSBwb3dlcmZ1bCBzaW5jZSBpdCBhbGxvd3MgdGhlIGV4ZWN1dGlvbiBvZiBtdWx0aXBsZVxuc3RhdGVtZW50cyBhbmQgYW5ub3RhdGlvbnMuXG5cbioqUHJvZ3JhbW1lclwncyBub3RlOioqIEZ1bmN0aW9ucyBhcmUgZmlyc3QtY2xhc3Mgb2JqZWN0cy4gIEEgImBgZGVmYGAiXG5mb3JtIGV4ZWN1dGVkIGluc2lkZSBhIGZ1bmN0aW9uIGRlZmluaXRpb24gZGVmaW5lcyBhIGxvY2FsIGZ1bmN0aW9uXG50aGF0IGNhbiBiZSByZXR1cm5lZCBvciBwYXNzZWQgYXJvdW5kLiAgRnJlZSB2YXJpYWJsZXMgdXNlZCBpbiB0aGVcbm5lc3RlZCBmdW5jdGlvbiBjYW4gYWNjZXNzIHRoZSBsb2NhbCB2YXJpYWJsZXMgb2YgdGhlIGZ1bmN0aW9uXG5jb250YWluaW5nIHRoZSBkZWYuICBTZWUgc2VjdGlvbiAqTmFtaW5nIGFuZCBiaW5kaW5nKiBmb3IgZGV0YWlscy5cblxuXG5DbGFzcyBkZWZpbml0aW9uc1xuPT09PT09PT09PT09PT09PT1cblxuQSBjbGFzcyBkZWZpbml0aW9uIGRlZmluZXMgYSBjbGFzcyBvYmplY3QgKHNlZSBzZWN0aW9uICpUaGUgc3RhbmRhcmRcbnR5cGUgaGllcmFyY2h5Kik6XG5cbiAgIGNsYXNzZGVmICAgIDo6PSBbZGVjb3JhdG9yc10gImNsYXNzIiBjbGFzc25hbWUgW2luaGVyaXRhbmNlXSAiOiIgc3VpdGVcbiAgIGluaGVyaXRhbmNlIDo6PSAiKCIgW2FyZ3VtZW50X2xpc3QgWyIsIl0gfCBjb21wcmVoZW5zaW9uXSAiKSJcbiAgIGNsYXNzbmFtZSAgIDo6PSBpZGVudGlmaWVyXG5cbkEgY2xhc3MgZGVmaW5pdGlvbiBpcyBhbiBleGVjdXRhYmxlIHN0YXRlbWVudC4gIFRoZSBpbmhlcml0YW5jZSBsaXN0XG51c3VhbGx5IGdpdmVzIGEgbGlzdCBvZiBiYXNlIGNsYXNzZXMgKHNlZSAqQ3VzdG9taXppbmcgY2xhc3MgY3JlYXRpb24qXG5mb3IgbW9yZSBhZHZhbmNlZCB1c2VzKSwgc28gZWFjaCBpdGVtIGluIHRoZSBsaXN0IHNob3VsZCBldmFsdWF0ZSB0byBhXG5jbGFzcyBvYmplY3Qgd2hpY2ggYWxsb3dzIHN1YmNsYXNzaW5nLiAgQ2xhc3NlcyB3aXRob3V0IGFuIGluaGVyaXRhbmNlXG5saXN0IGluaGVyaXQsIGJ5IGRlZmF1bHQsIGZyb20gdGhlIGJhc2UgY2xhc3MgYGBvYmplY3RgYDsgaGVuY2UsXG5cbiAgIGNsYXNzIEZvbzpcbiAgICAgICBwYXNzXG5cbmlzIGVxdWl2YWxlbnQgdG9cblxuICAgY2xhc3MgRm9vKG9iamVjdCk6XG4gICAgICAgcGFzc1xuXG5UaGUgY2xhc3NcJ3Mgc3VpdGUgaXMgdGhlbiBleGVjdXRlZCBpbiBhIG5ldyBleGVjdXRpb24gZnJhbWUgKHNlZVxuKk5hbWluZyBhbmQgYmluZGluZyopLCB1c2luZyBhIG5ld2x5IGNyZWF0ZWQgbG9jYWwgbmFtZXNwYWNlIGFuZCB0aGVcbm9yaWdpbmFsIGdsb2JhbCBuYW1lc3BhY2UuIChVc3VhbGx5LCB0aGUgc3VpdGUgY29udGFpbnMgbW9zdGx5XG5mdW5jdGlvbiBkZWZpbml0aW9ucy4pICBXaGVuIHRoZSBjbGFzc1wncyBzdWl0ZSBmaW5pc2hlcyBleGVjdXRpb24sIGl0c1xuZXhlY3V0aW9uIGZyYW1lIGlzIGRpc2NhcmRlZCBidXQgaXRzIGxvY2FsIG5hbWVzcGFjZSBpcyBzYXZlZC4gWzRdIEFcbmNsYXNzIG9iamVjdCBpcyB0aGVuIGNyZWF0ZWQgdXNpbmcgdGhlIGluaGVyaXRhbmNlIGxpc3QgZm9yIHRoZSBiYXNlXG5jbGFzc2VzIGFuZCB0aGUgc2F2ZWQgbG9jYWwgbmFtZXNwYWNlIGZvciB0aGUgYXR0cmlidXRlIGRpY3Rpb25hcnkuXG5UaGUgY2xhc3MgbmFtZSBpcyBib3VuZCB0byB0aGlzIGNsYXNzIG9iamVjdCBpbiB0aGUgb3JpZ2luYWwgbG9jYWxcbm5hbWVzcGFjZS5cblxuQ2xhc3MgY3JlYXRpb24gY2FuIGJlIGN1c3RvbWl6ZWQgaGVhdmlseSB1c2luZyAqbWV0YWNsYXNzZXMqLlxuXG5DbGFzc2VzIGNhbiBhbHNvIGJlIGRlY29yYXRlZDoganVzdCBsaWtlIHdoZW4gZGVjb3JhdGluZyBmdW5jdGlvbnMsXG5cbiAgIEBmMShhcmcpXG4gICBAZjJcbiAgIGNsYXNzIEZvbzogcGFzc1xuXG5pcyBlcXVpdmFsZW50IHRvXG5cbiAgIGNsYXNzIEZvbzogcGFzc1xuICAgRm9vID0gZjEoYXJnKShmMihGb28pKVxuXG5UaGUgZXZhbHVhdGlvbiBydWxlcyBmb3IgdGhlIGRlY29yYXRvciBleHByZXNzaW9ucyBhcmUgdGhlIHNhbWUgYXMgZm9yXG5mdW5jdGlvbiBkZWNvcmF0b3JzLiAgVGhlIHJlc3VsdCBtdXN0IGJlIGEgY2xhc3Mgb2JqZWN0LCB3aGljaCBpcyB0aGVuXG5ib3VuZCB0byB0aGUgY2xhc3MgbmFtZS5cblxuKipQcm9ncmFtbWVyXCdzIG5vdGU6KiogVmFyaWFibGVzIGRlZmluZWQgaW4gdGhlIGNsYXNzIGRlZmluaXRpb24gYXJlXG5jbGFzcyBhdHRyaWJ1dGVzOyB0aGV5IGFyZSBzaGFyZWQgYnkgaW5zdGFuY2VzLiAgSW5zdGFuY2UgYXR0cmlidXRlc1xuY2FuIGJlIHNldCBpbiBhIG1ldGhvZCB3aXRoIGBgc2VsZi5uYW1lID0gdmFsdWVgYC4gIEJvdGggY2xhc3MgYW5kXG5pbnN0YW5jZSBhdHRyaWJ1dGVzIGFyZSBhY2Nlc3NpYmxlIHRocm91Z2ggdGhlIG5vdGF0aW9uXG4iYGBzZWxmLm5hbWVgYCIsIGFuZCBhbiBpbnN0YW5jZSBhdHRyaWJ1dGUgaGlkZXMgYSBjbGFzcyBhdHRyaWJ1dGVcbndpdGggdGhlIHNhbWUgbmFtZSB3aGVuIGFjY2Vzc2VkIGluIHRoaXMgd2F5LiAgQ2xhc3MgYXR0cmlidXRlcyBjYW4gYmVcbnVzZWQgYXMgZGVmYXVsdHMgZm9yIGluc3RhbmNlIGF0dHJpYnV0ZXMsIGJ1dCB1c2luZyBtdXRhYmxlIHZhbHVlc1xudGhlcmUgY2FuIGxlYWQgdG8gdW5leHBlY3RlZCByZXN1bHRzLiAgKkRlc2NyaXB0b3JzKiBjYW4gYmUgdXNlZCB0b1xuY3JlYXRlIGluc3RhbmNlIHZhcmlhYmxlcyB3aXRoIGRpZmZlcmVudCBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzLlxuXG5TZWUgYWxzbzpcblxuICAgKipQRVAgMzExNSoqIC0gTWV0YWNsYXNzZXMgaW4gUHl0aG9uIDMgKipQRVAgMzEyOSoqIC0gQ2xhc3NcbiAgIERlY29yYXRvcnNcblxuLVsgRm9vdG5vdGVzIF0tXG5cblsxXSBUaGUgZXhjZXB0aW9uIGlzIHByb3BhZ2F0ZWQgdG8gdGhlIGludm9jYXRpb24gc3RhY2sgdW5sZXNzIHRoZXJlXG4gICAgaXMgYSBgYGZpbmFsbHlgYCBjbGF1c2Ugd2hpY2ggaGFwcGVucyB0byByYWlzZSBhbm90aGVyIGV4Y2VwdGlvbi5cbiAgICBUaGF0IG5ldyBleGNlcHRpb24gY2F1c2VzIHRoZSBvbGQgb25lIHRvIGJlIGxvc3QuXG5cblsyXSBDdXJyZW50bHksIGNvbnRyb2wgImZsb3dzIG9mZiB0aGUgZW5kIiBleGNlcHQgaW4gdGhlIGNhc2Ugb2YgYW5cbiAgICBleGNlcHRpb24gb3IgdGhlIGV4ZWN1dGlvbiBvZiBhIGBgcmV0dXJuYGAsIGBgY29udGludWVgYCwgb3JcbiAgICBgYGJyZWFrYGAgc3RhdGVtZW50LlxuXG5bM10gQSBzdHJpbmcgbGl0ZXJhbCBhcHBlYXJpbmcgYXMgdGhlIGZpcnN0IHN0YXRlbWVudCBpbiB0aGUgZnVuY3Rpb25cbiAgICBib2R5IGlzIHRyYW5zZm9ybWVkIGludG8gdGhlIGZ1bmN0aW9uXCdzIGBgX19kb2NfX2BgIGF0dHJpYnV0ZSBhbmRcbiAgICB0aGVyZWZvcmUgdGhlIGZ1bmN0aW9uXCdzICpkb2NzdHJpbmcqLlxuXG5bNF0gQSBzdHJpbmcgbGl0ZXJhbCBhcHBlYXJpbmcgYXMgdGhlIGZpcnN0IHN0YXRlbWVudCBpbiB0aGUgY2xhc3NcbiAgICBib2R5IGlzIHRyYW5zZm9ybWVkIGludG8gdGhlIG5hbWVzcGFjZVwncyBgYF9fZG9jX19gYCBpdGVtIGFuZFxuICAgIHRoZXJlZm9yZSB0aGUgY2xhc3NcJ3MgKmRvY3N0cmluZyouXG4nLAorICdjb21wb3VuZCc6ICdcbkNvbXBvdW5kIHN0YXRlbWVudHNcbioqKioqKioqKioqKioqKioqKipcblxuQ29tcG91bmQgc3RhdGVtZW50cyBjb250YWluIChncm91cHMgb2YpIG90aGVyIHN0YXRlbWVudHM7IHRoZXkgYWZmZWN0XG5vciBjb250cm9sIHRoZSBleGVjdXRpb24gb2YgdGhvc2Ugb3RoZXIgc3RhdGVtZW50cyBpbiBzb21lIHdheS4gIEluXG5nZW5lcmFsLCBjb21wb3VuZCBzdGF0ZW1lbnRzIHNwYW4gbXVsdGlwbGUgbGluZXMsIGFsdGhvdWdoIGluIHNpbXBsZVxuaW5jYXJuYXRpb25zIGEgd2hvbGUgY29tcG91bmQgc3RhdGVtZW50IG1heSBiZSBjb250YWluZWQgaW4gb25lIGxpbmUuXG5cblRoZSBgYGlmYGAsIGBgd2hpbGVgYCBhbmQgYGBmb3JgYCBzdGF0ZW1lbnRzIGltcGxlbWVudCB0cmFkaXRpb25hbFxuY29udHJvbCBmbG93IGNvbnN0cnVjdHMuICBgYHRyeWBgIHNwZWNpZmllcyBleGNlcHRpb24gaGFuZGxlcnMgYW5kL29yXG5jbGVhbnVwIGNvZGUgZm9yIGEgZ3JvdXAgb2Ygc3RhdGVtZW50cywgd2hpbGUgdGhlIGBgd2l0aGBgIHN0YXRlbWVudFxuYWxsb3dzIHRoZSBleGVjdXRpb24gb2YgaW5pdGlhbGl6YXRpb24gYW5kIGZpbmFsaXphdGlvbiBjb2RlIGFyb3VuZCBhXG5ibG9jayBvZiBjb2RlLiAgRnVuY3Rpb24gYW5kIGNsYXNzIGRlZmluaXRpb25zIGFyZSBhbHNvIHN5bnRhY3RpY2FsbHlcbmNvbXBvdW5kIHN0YXRlbWVudHMuXG5cbkNvbXBvdW5kIHN0YXRlbWVudHMgY29uc2lzdCBvZiBvbmUgb3IgbW9yZSBcJ2NsYXVzZXMuXCcgIEEgY2xhdXNlXG5jb25zaXN0cyBvZiBhIGhlYWRlciBhbmQgYSBcJ3N1aXRlLlwnICBUaGUgY2xhdXNlIGhlYWRlcnMgb2YgYVxucGFydGljdWxhciBjb21wb3VuZCBzdGF0ZW1lbnQgYXJlIGFsbCBhdCB0aGUgc2FtZSBpbmRlbnRhdGlvbiBsZXZlbC5cbkVhY2ggY2xhdXNlIGhlYWRlciBiZWdpbnMgd2l0aCBhIHVuaXF1ZWx5IGlkZW50aWZ5aW5nIGtleXdvcmQgYW5kIGVuZHNcbndpdGggYSBjb2xvbi4gIEEgc3VpdGUgaXMgYSBncm91cCBvZiBzdGF0ZW1lbnRzIGNvbnRyb2xsZWQgYnkgYVxuY2xhdXNlLiAgQSBzdWl0ZSBjYW4gYmUgb25lIG9yIG1vcmUgc2VtaWNvbG9uLXNlcGFyYXRlZCBzaW1wbGVcbnN0YXRlbWVudHMgb24gdGhlIHNhbWUgbGluZSBhcyB0aGUgaGVhZGVyLCBmb2xsb3dpbmcgdGhlIGhlYWRlclwnc1xuY29sb24sIG9yIGl0IGNhbiBiZSBvbmUgb3IgbW9yZSBpbmRlbnRlZCBzdGF0ZW1lbnRzIG9uIHN1YnNlcXVlbnRcbmxpbmVzLiAgT25seSB0aGUgbGF0dGVyIGZvcm0gb2Ygc3VpdGUgY2FuIGNvbnRhaW4gbmVzdGVkIGNvbXBvdW5kXG5zdGF0ZW1lbnRzOyB0aGUgZm9sbG93aW5nIGlzIGlsbGVnYWwsIG1vc3RseSBiZWNhdXNlIGl0IHdvdWxkblwndCBiZVxuY2xlYXIgdG8gd2hpY2ggYGBpZmBgIGNsYXVzZSBhIGZvbGxvd2luZyBgYGVsc2VgYCBjbGF1c2Ugd291bGQgYmVsb25nOlxuXG4gICBpZiB0ZXN0MTogaWYgdGVzdDI6IHByaW50KHgpXG5cbkFsc28gbm90ZSB0aGF0IHRoZSBzZW1pY29sb24gYmluZHMgdGlnaHRlciB0aGFuIHRoZSBjb2xvbiBpbiB0aGlzXG5jb250ZXh0LCBzbyB0aGF0IGluIHRoZSBmb2xsb3dpbmcgZXhhbXBsZSwgZWl0aGVyIGFsbCBvciBub25lIG9mIHRoZVxuYGBwcmludCgpYGAgY2FsbHMgYXJlIGV4ZWN1dGVkOlxuXG4gICBpZiB4IDwgeSA8IHo6IHByaW50KHgpOyBwcmludCh5KTsgcHJpbnQoeilcblxuU3VtbWFyaXppbmc6XG5cbiAgIGNvbXBvdW5kX3N0bXQgOjo9IGlmX3N0bXRcbiAgICAgICAgICAgICAgICAgICAgIHwgd2hpbGVfc3RtdFxuICAgICAgICAgICAgICAgICAgICAgfCBmb3Jfc3RtdFxuICAgICAgICAgICAgICAgICAgICAgfCB0cnlfc3RtdFxuICAgICAgICAgICAgICAgICAgICAgfCB3aXRoX3N0bXRcbiAgICAgICAgICAgICAgICAgICAgIHwgZnVuY2RlZlxuICAgICAgICAgICAgICAgICAgICAgfCBjbGFzc2RlZlxuICAgc3VpdGUgICAgICAgICA6Oj0gc3RtdF9saXN0IE5FV0xJTkUgfCBORVdMSU5FIElOREVOVCBzdGF0ZW1lbnQrIERFREVOVFxuICAgc3RhdGVtZW50ICAgICA6Oj0gc3RtdF9saXN0IE5FV0xJTkUgfCBjb21wb3VuZF9zdG10XG4gICBzdG10X2xpc3QgICAgIDo6PSBzaW1wbGVfc3RtdCAoIjsiIHNpbXBsZV9zdG10KSogWyI7Il1cblxuTm90ZSB0aGF0IHN0YXRlbWVudHMgYWx3YXlzIGVuZCBpbiBhIGBgTkVXTElORWBgIHBvc3NpYmx5IGZvbGxvd2VkIGJ5XG5hIGBgREVERU5UYGAuICBBbHNvIG5vdGUgdGhhdCBvcHRpb25hbCBjb250aW51YXRpb24gY2xhdXNlcyBhbHdheXNcbmJlZ2luIHdpdGggYSBrZXl3b3JkIHRoYXQgY2Fubm90IHN0YXJ0IGEgc3RhdGVtZW50LCB0aHVzIHRoZXJlIGFyZSBub1xuYW1iaWd1aXRpZXMgKHRoZSBcJ2RhbmdsaW5nIGBgZWxzZWBgXCcgcHJvYmxlbSBpcyBzb2x2ZWQgaW4gUHl0aG9uIGJ5XG5yZXF1aXJpbmcgbmVzdGVkIGBgaWZgYCBzdGF0ZW1lbnRzIHRvIGJlIGluZGVudGVkKS5cblxuVGhlIGZvcm1hdHRpbmcgb2YgdGhlIGdyYW1tYXIgcnVsZXMgaW4gdGhlIGZvbGxvd2luZyBzZWN0aW9ucyBwbGFjZXNcbmVhY2ggY2xhdXNlIG9uIGEgc2VwYXJhdGUgbGluZSBmb3IgY2xhcml0eS5cblxuXG5UaGUgYGBpZmBgIHN0YXRlbWVudFxuPT09PT09PT09PT09PT09PT09PT1cblxuVGhlIGBgaWZgYCBzdGF0ZW1lbnQgaXMgdXNlZCBmb3IgY29uZGl0aW9uYWwgZXhlY3V0aW9uOlxuXG4gICBpZl9zdG10IDo6PSAiaWYiIGV4cHJlc3Npb24gIjoiIHN1aXRlXG4gICAgICAgICAgICAgICAoICJlbGlmIiBleHByZXNzaW9uICI6IiBzdWl0ZSApKlxuICAgICAgICAgICAgICAgWyJlbHNlIiAiOiIgc3VpdGVdXG5cbkl0IHNlbGVjdHMgZXhhY3RseSBvbmUgb2YgdGhlIHN1aXRlcyBieSBldmFsdWF0aW5nIHRoZSBleHByZXNzaW9ucyBvbmVcbmJ5IG9uZSB1bnRpbCBvbmUgaXMgZm91bmQgdG8gYmUgdHJ1ZSAoc2VlIHNlY3Rpb24gKkJvb2xlYW4gb3BlcmF0aW9ucypcbmZvciB0aGUgZGVmaW5pdGlvbiBvZiB0cnVlIGFuZCBmYWxzZSk7IHRoZW4gdGhhdCBzdWl0ZSBpcyBleGVjdXRlZFxuKGFuZCBubyBvdGhlciBwYXJ0IG9mIHRoZSBgYGlmYGAgc3RhdGVtZW50IGlzIGV4ZWN1dGVkIG9yIGV2YWx1YXRlZCkuXG5JZiBhbGwgZXhwcmVzc2lvbnMgYXJlIGZhbHNlLCB0aGUgc3VpdGUgb2YgdGhlIGBgZWxzZWBgIGNsYXVzZSwgaWZcbnByZXNlbnQsIGlzIGV4ZWN1dGVkLlxuXG5cblRoZSBgYHdoaWxlYGAgc3RhdGVtZW50XG49PT09PT09PT09PT09PT09PT09PT09PVxuXG5UaGUgYGB3aGlsZWBgIHN0YXRlbWVudCBpcyB1c2VkIGZvciByZXBlYXRlZCBleGVjdXRpb24gYXMgbG9uZyBhcyBhblxuZXhwcmVzc2lvbiBpcyB0cnVlOlxuXG4gICB3aGlsZV9zdG10IDo6PSAid2hpbGUiIGV4cHJlc3Npb24gIjoiIHN1aXRlXG4gICAgICAgICAgICAgICAgICBbImVsc2UiICI6IiBzdWl0ZV1cblxuVGhpcyByZXBlYXRlZGx5IHRlc3RzIHRoZSBleHByZXNzaW9uIGFuZCwgaWYgaXQgaXMgdHJ1ZSwgZXhlY3V0ZXMgdGhlXG5maXJzdCBzdWl0ZTsgaWYgdGhlIGV4cHJlc3Npb24gaXMgZmFsc2UgKHdoaWNoIG1heSBiZSB0aGUgZmlyc3QgdGltZVxuaXQgaXMgdGVzdGVkKSB0aGUgc3VpdGUgb2YgdGhlIGBgZWxzZWBgIGNsYXVzZSwgaWYgcHJlc2VudCwgaXNcbmV4ZWN1dGVkIGFuZCB0aGUgbG9vcCB0ZXJtaW5hdGVzLlxuXG5BIGBgYnJlYWtgYCBzdGF0ZW1lbnQgZXhlY3V0ZWQgaW4gdGhlIGZpcnN0IHN1aXRlIHRlcm1pbmF0ZXMgdGhlIGxvb3BcbndpdGhvdXQgZXhlY3V0aW5nIHRoZSBgYGVsc2VgYCBjbGF1c2VcJ3Mgc3VpdGUuICBBIGBgY29udGludWVgYFxuc3RhdGVtZW50IGV4ZWN1dGVkIGluIHRoZSBmaXJzdCBzdWl0ZSBza2lwcyB0aGUgcmVzdCBvZiB0aGUgc3VpdGUgYW5kXG5nb2VzIGJhY2sgdG8gdGVzdGluZyB0aGUgZXhwcmVzc2lvbi5cblxuXG5UaGUgYGBmb3JgYCBzdGF0ZW1lbnRcbj09PT09PT09PT09PT09PT09PT09PVxuXG5UaGUgYGBmb3JgYCBzdGF0ZW1lbnQgaXMgdXNlZCB0byBpdGVyYXRlIG92ZXIgdGhlIGVsZW1lbnRzIG9mIGFcbnNlcXVlbmNlIChzdWNoIGFzIGEgc3RyaW5nLCB0dXBsZSBvciBsaXN0KSBvciBvdGhlciBpdGVyYWJsZSBvYmplY3Q6XG5cbiAgIGZvcl9zdG10IDo6PSAiZm9yIiB0YXJnZXRfbGlzdCAiaW4iIGV4cHJlc3Npb25fbGlzdCAiOiIgc3VpdGVcbiAgICAgICAgICAgICAgICBbImVsc2UiICI6IiBzdWl0ZV1cblxuVGhlIGV4cHJlc3Npb24gbGlzdCBpcyBldmFsdWF0ZWQgb25jZTsgaXQgc2hvdWxkIHlpZWxkIGFuIGl0ZXJhYmxlXG5vYmplY3QuICBBbiBpdGVyYXRvciBpcyBjcmVhdGVkIGZvciB0aGUgcmVzdWx0IG9mIHRoZVxuYGBleHByZXNzaW9uX2xpc3RgYC4gIFRoZSBzdWl0ZSBpcyB0aGVuIGV4ZWN1dGVkIG9uY2UgZm9yIGVhY2ggaXRlbVxucHJvdmlkZWQgYnkgdGhlIGl0ZXJhdG9yLCBpbiB0aGUgb3JkZXIgb2YgYXNjZW5kaW5nIGluZGljZXMuICBFYWNoXG5pdGVtIGluIHR1cm4gaXMgYXNzaWduZWQgdG8gdGhlIHRhcmdldCBsaXN0IHVzaW5nIHRoZSBzdGFuZGFyZCBydWxlc1xuZm9yIGFzc2lnbm1lbnRzIChzZWUgKkFzc2lnbm1lbnQgc3RhdGVtZW50cyopLCBhbmQgdGhlbiB0aGUgc3VpdGUgaXNcbmV4ZWN1dGVkLiAgV2hlbiB0aGUgaXRlbXMgYXJlIGV4aGF1c3RlZCAod2hpY2ggaXMgaW1tZWRpYXRlbHkgd2hlbiB0aGVcbnNlcXVlbmNlIGlzIGVtcHR5IG9yIGFuIGl0ZXJhdG9yIHJhaXNlcyBhIGBgU3RvcEl0ZXJhdGlvbmBgXG5leGNlcHRpb24pLCB0aGUgc3VpdGUgaW4gdGhlIGBgZWxzZWBgIGNsYXVzZSwgaWYgcHJlc2VudCwgaXMgZXhlY3V0ZWQsXG5hbmQgdGhlIGxvb3AgdGVybWluYXRlcy5cblxuQSBgYGJyZWFrYGAgc3RhdGVtZW50IGV4ZWN1dGVkIGluIHRoZSBmaXJzdCBzdWl0ZSB0ZXJtaW5hdGVzIHRoZSBsb29wXG53aXRob3V0IGV4ZWN1dGluZyB0aGUgYGBlbHNlYGAgY2xhdXNlXCdzIHN1aXRlLiAgQSBgYGNvbnRpbnVlYGBcbnN0YXRlbWVudCBleGVjdXRlZCBpbiB0aGUgZmlyc3Qgc3VpdGUgc2tpcHMgdGhlIHJlc3Qgb2YgdGhlIHN1aXRlIGFuZFxuY29udGludWVzIHdpdGggdGhlIG5leHQgaXRlbSwgb3Igd2l0aCB0aGUgYGBlbHNlYGAgY2xhdXNlIGlmIHRoZXJlIHdhc1xubm8gbmV4dCBpdGVtLlxuXG5UaGUgc3VpdGUgbWF5IGFzc2lnbiB0byB0aGUgdmFyaWFibGUocykgaW4gdGhlIHRhcmdldCBsaXN0OyB0aGlzIGRvZXNcbm5vdCBhZmZlY3QgdGhlIG5leHQgaXRlbSBhc3NpZ25lZCB0byBpdC5cblxuTmFtZXMgaW4gdGhlIHRhcmdldCBsaXN0IGFyZSBub3QgZGVsZXRlZCB3aGVuIHRoZSBsb29wIGlzIGZpbmlzaGVkLFxuYnV0IGlmIHRoZSBzZXF1ZW5jZSBpcyBlbXB0eSwgaXQgd2lsbCBub3QgaGF2ZSBiZWVuIGFzc2lnbmVkIHRvIGF0IGFsbFxuYnkgdGhlIGxvb3AuICBIaW50OiB0aGUgYnVpbHQtaW4gZnVuY3Rpb24gYGByYW5nZSgpYGAgcmV0dXJucyBhblxuaXRlcmF0b3Igb2YgaW50ZWdlcnMgc3VpdGFibGUgdG8gZW11bGF0ZSB0aGUgZWZmZWN0IG9mIFBhc2NhbFwncyBgYGZvclxuaSA6PSBhIHRvIGIgZG9gYDsgZS5nLiwgYGBsaXN0KHJhbmdlKDMpKWBgIHJldHVybnMgdGhlIGxpc3QgYGBbMCwgMSxcbjJdYGAuXG5cbk5vdGU6IFRoZXJlIGlzIGEgc3VidGxldHkgd2hlbiB0aGUgc2VxdWVuY2UgaXMgYmVpbmcgbW9kaWZpZWQgYnkgdGhlIGxvb3BcbiAgKHRoaXMgY2FuIG9ubHkgb2NjdXIgZm9yIG11dGFibGUgc2VxdWVuY2VzLCBpLmUuIGxpc3RzKS4gIEFuXG4gIGludGVybmFsIGNvdW50ZXIgaXMgdXNlZCB0byBrZWVwIHRyYWNrIG9mIHdoaWNoIGl0ZW0gaXMgdXNlZCBuZXh0LFxuICBhbmQgdGhpcyBpcyBpbmNyZW1lbnRlZCBvbiBlYWNoIGl0ZXJhdGlvbi4gIFdoZW4gdGhpcyBjb3VudGVyIGhhc1xuICByZWFjaGVkIHRoZSBsZW5ndGggb2YgdGhlIHNlcXVlbmNlIHRoZSBsb29wIHRlcm1pbmF0ZXMuICBUaGlzIG1lYW5zXG4gIHRoYXQgaWYgdGhlIHN1aXRlIGRlbGV0ZXMgdGhlIGN1cnJlbnQgKG9yIGEgcHJldmlvdXMpIGl0ZW0gZnJvbSB0aGVcbiAgc2VxdWVuY2UsIHRoZSBuZXh0IGl0ZW0gd2lsbCBiZSBza2lwcGVkIChzaW5jZSBpdCBnZXRzIHRoZSBpbmRleCBvZlxuICB0aGUgY3VycmVudCBpdGVtIHdoaWNoIGhhcyBhbHJlYWR5IGJlZW4gdHJlYXRlZCkuICBMaWtld2lzZSwgaWYgdGhlXG4gIHN1aXRlIGluc2VydHMgYW4gaXRlbSBpbiB0aGUgc2VxdWVuY2UgYmVmb3JlIHRoZSBjdXJyZW50IGl0ZW0sIHRoZVxuICBjdXJyZW50IGl0ZW0gd2lsbCBiZSB0cmVhdGVkIGFnYWluIHRoZSBuZXh0IHRpbWUgdGhyb3VnaCB0aGUgbG9vcC5cbiAgVGhpcyBjYW4gbGVhZCB0byBuYXN0eSBidWdzIHRoYXQgY2FuIGJlIGF2b2lkZWQgYnkgbWFraW5nIGFcbiAgdGVtcG9yYXJ5IGNvcHkgdXNpbmcgYSBzbGljZSBvZiB0aGUgd2hvbGUgc2VxdWVuY2UsIGUuZy4sXG5cbiAgICAgZm9yIHggaW4gYVs6XTpcbiAgICAgICAgIGlmIHggPCAwOiBhLnJlbW92ZSh4KVxuXG5cblRoZSBgYHRyeWBgIHN0YXRlbWVudFxuPT09PT09PT09PT09PT09PT09PT09XG5cblRoZSBgYHRyeWBgIHN0YXRlbWVudCBzcGVjaWZpZXMgZXhjZXB0aW9uIGhhbmRsZXJzIGFuZC9vciBjbGVhbnVwIGNvZGVcbmZvciBhIGdyb3VwIG9mIHN0YXRlbWVudHM6XG5cbiAgIHRyeV9zdG10ICA6Oj0gdHJ5MV9zdG10IHwgdHJ5Ml9zdG10XG4gICB0cnkxX3N0bXQgOjo9ICJ0cnkiICI6IiBzdWl0ZVxuICAgICAgICAgICAgICAgICAoImV4Y2VwdCIgW2V4cHJlc3Npb24gWyJhcyIgdGFyZ2V0XV0gIjoiIHN1aXRlKStcbiAgICAgICAgICAgICAgICAgWyJlbHNlIiAiOiIgc3VpdGVdXG4gICAgICAgICAgICAgICAgIFsiZmluYWxseSIgIjoiIHN1aXRlXVxuICAgdHJ5Ml9zdG10IDo6PSAidHJ5IiAiOiIgc3VpdGVcbiAgICAgICAgICAgICAgICAgImZpbmFsbHkiICI6IiBzdWl0ZVxuXG5UaGUgYGBleGNlcHRgYCBjbGF1c2Uocykgc3BlY2lmeSBvbmUgb3IgbW9yZSBleGNlcHRpb24gaGFuZGxlcnMuIFdoZW5cbm5vIGV4Y2VwdGlvbiBvY2N1cnMgaW4gdGhlIGBgdHJ5YGAgY2xhdXNlLCBubyBleGNlcHRpb24gaGFuZGxlciBpc1xuZXhlY3V0ZWQuIFdoZW4gYW4gZXhjZXB0aW9uIG9jY3VycyBpbiB0aGUgYGB0cnlgYCBzdWl0ZSwgYSBzZWFyY2ggZm9yXG5hbiBleGNlcHRpb24gaGFuZGxlciBpcyBzdGFydGVkLiAgVGhpcyBzZWFyY2ggaW5zcGVjdHMgdGhlIGV4Y2VwdFxuY2xhdXNlcyBpbiB0dXJuIHVudGlsIG9uZSBpcyBmb3VuZCB0aGF0IG1hdGNoZXMgdGhlIGV4Y2VwdGlvbi4gIEFuXG5leHByZXNzaW9uLWxlc3MgZXhjZXB0IGNsYXVzZSwgaWYgcHJlc2VudCwgbXVzdCBiZSBsYXN0OyBpdCBtYXRjaGVzXG5hbnkgZXhjZXB0aW9uLiAgRm9yIGFuIGV4Y2VwdCBjbGF1c2Ugd2l0aCBhbiBleHByZXNzaW9uLCB0aGF0XG5leHByZXNzaW9uIGlzIGV2YWx1YXRlZCwgYW5kIHRoZSBjbGF1c2UgbWF0Y2hlcyB0aGUgZXhjZXB0aW9uIGlmIHRoZVxucmVzdWx0aW5nIG9iamVjdCBpcyAiY29tcGF0aWJsZSIgd2l0aCB0aGUgZXhjZXB0aW9uLiAgQW4gb2JqZWN0IGlzXG5jb21wYXRpYmxlIHdpdGggYW4gZXhjZXB0aW9uIGlmIGl0IGlzIHRoZSBjbGFzcyBvciBhIGJhc2UgY2xhc3Mgb2YgdGhlXG5leGNlcHRpb24gb2JqZWN0IG9yIGEgdHVwbGUgY29udGFpbmluZyBhbiBpdGVtIGNvbXBhdGlibGUgd2l0aCB0aGVcbmV4Y2VwdGlvbi5cblxuSWYgbm8gZXhjZXB0IGNsYXVzZSBtYXRjaGVzIHRoZSBleGNlcHRpb24sIHRoZSBzZWFyY2ggZm9yIGFuIGV4Y2VwdGlvblxuaGFuZGxlciBjb250aW51ZXMgaW4gdGhlIHN1cnJvdW5kaW5nIGNvZGUgYW5kIG9uIHRoZSBpbnZvY2F0aW9uIHN0YWNrLlxuWzFdXG5cbklmIHRoZSBldmFsdWF0aW9uIG9mIGFuIGV4cHJlc3Npb24gaW4gdGhlIGhlYWRlciBvZiBhbiBleGNlcHQgY2xhdXNlXG5yYWlzZXMgYW4gZXhjZXB0aW9uLCB0aGUgb3JpZ2luYWwgc2VhcmNoIGZvciBhIGhhbmRsZXIgaXMgY2FuY2VsZWQgYW5kXG5hIHNlYXJjaCBzdGFydHMgZm9yIHRoZSBuZXcgZXhjZXB0aW9uIGluIHRoZSBzdXJyb3VuZGluZyBjb2RlIGFuZCBvblxudGhlIGNhbGwgc3RhY2sgKGl0IGlzIHRyZWF0ZWQgYXMgaWYgdGhlIGVudGlyZSBgYHRyeWBgIHN0YXRlbWVudFxucmFpc2VkIHRoZSBleGNlcHRpb24pLlxuXG5XaGVuIGEgbWF0Y2hpbmcgZXhjZXB0IGNsYXVzZSBpcyBmb3VuZCwgdGhlIGV4Y2VwdGlvbiBpcyBhc3NpZ25lZCB0b1xudGhlIHRhcmdldCBzcGVjaWZpZWQgYWZ0ZXIgdGhlIGBgYXNgYCBrZXl3b3JkIGluIHRoYXQgZXhjZXB0IGNsYXVzZSxcbmlmIHByZXNlbnQsIGFuZCB0aGUgZXhjZXB0IGNsYXVzZVwncyBzdWl0ZSBpcyBleGVjdXRlZC4gIEFsbCBleGNlcHRcbmNsYXVzZXMgbXVzdCBoYXZlIGFuIGV4ZWN1dGFibGUgYmxvY2suICBXaGVuIHRoZSBlbmQgb2YgdGhpcyBibG9jayBpc1xucmVhY2hlZCwgZXhlY3V0aW9uIGNvbnRpbnVlcyBub3JtYWxseSBhZnRlciB0aGUgZW50aXJlIHRyeSBzdGF0ZW1lbnQuXG4oVGhpcyBtZWFucyB0aGF0IGlmIHR3byBuZXN0ZWQgaGFuZGxlcnMgZXhpc3QgZm9yIHRoZSBzYW1lIGV4Y2VwdGlvbixcbmFuZCB0aGUgZXhjZXB0aW9uIG9jY3VycyBpbiB0aGUgdHJ5IGNsYXVzZSBvZiB0aGUgaW5uZXIgaGFuZGxlciwgdGhlXG5vdXRlciBoYW5kbGVyIHdpbGwgbm90IGhhbmRsZSB0aGUgZXhjZXB0aW9uLilcblxuV2hlbiBhbiBleGNlcHRpb24gaGFzIGJlZW4gYXNzaWduZWQgdXNpbmcgYGBhcyB0YXJnZXRgYCwgaXQgaXMgY2xlYXJlZFxuYXQgdGhlIGVuZCBvZiB0aGUgZXhjZXB0IGNsYXVzZS4gIFRoaXMgaXMgYXMgaWZcblxuICAgZXhjZXB0IEUgYXMgTjpcbiAgICAgICBmb29cblxud2FzIHRyYW5zbGF0ZWQgdG9cblxuICAgZXhjZXB0IEUgYXMgTjpcbiAgICAgICB0cnk6XG4gICAgICAgICAgIGZvb1xuICAgICAgIGZpbmFsbHk6XG4gICAgICAgICAgIGRlbCBOXG5cblRoaXMgbWVhbnMgdGhlIGV4Y2VwdGlvbiBtdXN0IGJlIGFzc2lnbmVkIHRvIGEgZGlmZmVyZW50IG5hbWUgdG8gYmVcbmFibGUgdG8gcmVmZXIgdG8gaXQgYWZ0ZXIgdGhlIGV4Y2VwdCBjbGF1c2UuICBFeGNlcHRpb25zIGFyZSBjbGVhcmVkXG5iZWNhdXNlIHdpdGggdGhlIHRyYWNlYmFjayBhdHRhY2hlZCB0byB0aGVtLCB0aGV5IGZvcm0gYSByZWZlcmVuY2VcbmN5Y2xlIHdpdGggdGhlIHN0YWNrIGZyYW1lLCBrZWVwaW5nIGFsbCBsb2NhbHMgaW4gdGhhdCBmcmFtZSBhbGl2ZVxudW50aWwgdGhlIG5leHQgZ2FyYmFnZSBjb2xsZWN0aW9uIG9jY3Vycy5cblxuQmVmb3JlIGFuIGV4Y2VwdCBjbGF1c2VcJ3Mgc3VpdGUgaXMgZXhlY3V0ZWQsIGRldGFpbHMgYWJvdXQgdGhlXG5leGNlcHRpb24gYXJlIHN0b3JlZCBpbiB0aGUgYGBzeXNgYCBtb2R1bGUgYW5kIGNhbiBiZSBhY2Nlc3MgdmlhXG5gYHN5cy5leGNfaW5mbygpYGAuIGBgc3lzLmV4Y19pbmZvKClgYCByZXR1cm5zIGEgMy10dXBsZSBjb25zaXN0aW5nIG9mXG50aGUgZXhjZXB0aW9uIGNsYXNzLCB0aGUgZXhjZXB0aW9uIGluc3RhbmNlIGFuZCBhIHRyYWNlYmFjayBvYmplY3RcbihzZWUgc2VjdGlvbiAqVGhlIHN0YW5kYXJkIHR5cGUgaGllcmFyY2h5KikgaWRlbnRpZnlpbmcgdGhlIHBvaW50IGluXG50aGUgcHJvZ3JhbSB3aGVyZSB0aGUgZXhjZXB0aW9uIG9jY3VycmVkLiAgYGBzeXMuZXhjX2luZm8oKWBgIHZhbHVlc1xuYXJlIHJlc3RvcmVkIHRvIHRoZWlyIHByZXZpb3VzIHZhbHVlcyAoYmVmb3JlIHRoZSBjYWxsKSB3aGVuIHJldHVybmluZ1xuZnJvbSBhIGZ1bmN0aW9uIHRoYXQgaGFuZGxlZCBhbiBleGNlcHRpb24uXG5cblRoZSBvcHRpb25hbCBgYGVsc2VgYCBjbGF1c2UgaXMgZXhlY3V0ZWQgaWYgYW5kIHdoZW4gY29udHJvbCBmbG93cyBvZmZcbnRoZSBlbmQgb2YgdGhlIGBgdHJ5YGAgY2xhdXNlLiBbMl0gRXhjZXB0aW9ucyBpbiB0aGUgYGBlbHNlYGAgY2xhdXNlXG5hcmUgbm90IGhhbmRsZWQgYnkgdGhlIHByZWNlZGluZyBgYGV4Y2VwdGBgIGNsYXVzZXMuXG5cbklmIGBgZmluYWxseWBgIGlzIHByZXNlbnQsIGl0IHNwZWNpZmllcyBhIFwnY2xlYW51cFwnIGhhbmRsZXIuICBUaGVcbmBgdHJ5YGAgY2xhdXNlIGlzIGV4ZWN1dGVkLCBpbmNsdWRpbmcgYW55IGBgZXhjZXB0YGAgYW5kIGBgZWxzZWBgXG5jbGF1c2VzLiAgSWYgYW4gZXhjZXB0aW9uIG9jY3VycyBpbiBhbnkgb2YgdGhlIGNsYXVzZXMgYW5kIGlzIG5vdFxuaGFuZGxlZCwgdGhlIGV4Y2VwdGlvbiBpcyB0ZW1wb3JhcmlseSBzYXZlZC4gVGhlIGBgZmluYWxseWBgIGNsYXVzZSBpc1xuZXhlY3V0ZWQuICBJZiB0aGVyZSBpcyBhIHNhdmVkIGV4Y2VwdGlvbiwgaXQgaXMgcmUtcmFpc2VkIGF0IHRoZSBlbmRcbm9mIHRoZSBgYGZpbmFsbHlgYCBjbGF1c2UuIElmIHRoZSBgYGZpbmFsbHlgYCBjbGF1c2UgcmFpc2VzIGFub3RoZXJcbmV4Y2VwdGlvbiBvciBleGVjdXRlcyBhIGBgcmV0dXJuYGAgb3IgYGBicmVha2BgIHN0YXRlbWVudCwgdGhlIHNhdmVkXG5leGNlcHRpb24gaXMgbG9zdC4gIFRoZSBleGNlcHRpb24gaW5mb3JtYXRpb24gaXMgbm90IGF2YWlsYWJsZSB0byB0aGVcbnByb2dyYW0gZHVyaW5nIGV4ZWN1dGlvbiBvZiB0aGUgYGBmaW5hbGx5YGAgY2xhdXNlLlxuXG5XaGVuIGEgYGByZXR1cm5gYCwgYGBicmVha2BgIG9yIGBgY29udGludWVgYCBzdGF0ZW1lbnQgaXMgZXhlY3V0ZWQgaW5cbnRoZSBgYHRyeWBgIHN1aXRlIG9mIGEgYGB0cnlgYC4uLmBgZmluYWxseWBgIHN0YXRlbWVudCwgdGhlXG5gYGZpbmFsbHlgYCBjbGF1c2UgaXMgYWxzbyBleGVjdXRlZCBcJ29uIHRoZSB3YXkgb3V0LlwnIEEgYGBjb250aW51ZWBgXG5zdGF0ZW1lbnQgaXMgaWxsZWdhbCBpbiB0aGUgYGBmaW5hbGx5YGAgY2xhdXNlLiAoVGhlIHJlYXNvbiBpcyBhXG5wcm9ibGVtIHdpdGggdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gLS0tIHRoaXMgcmVzdHJpY3Rpb24gbWF5IGJlXG5saWZ0ZWQgaW4gdGhlIGZ1dHVyZSkuXG5cbkFkZGl0aW9uYWwgaW5mb3JtYXRpb24gb24gZXhjZXB0aW9ucyBjYW4gYmUgZm91bmQgaW4gc2VjdGlvblxuKkV4Y2VwdGlvbnMqLCBhbmQgaW5mb3JtYXRpb24gb24gdXNpbmcgdGhlIGBgcmFpc2VgYCBzdGF0ZW1lbnQgdG9cbmdlbmVyYXRlIGV4Y2VwdGlvbnMgbWF5IGJlIGZvdW5kIGluIHNlY3Rpb24gKlRoZSByYWlzZSBzdGF0ZW1lbnQqLlxuXG5cblRoZSBgYHdpdGhgYCBzdGF0ZW1lbnRcbj09PT09PT09PT09PT09PT09PT09PT1cblxuVGhlIGBgd2l0aGBgIHN0YXRlbWVudCBpcyB1c2VkIHRvIHdyYXAgdGhlIGV4ZWN1dGlvbiBvZiBhIGJsb2NrIHdpdGhcbm1ldGhvZHMgZGVmaW5lZCBieSBhIGNvbnRleHQgbWFuYWdlciAoc2VlIHNlY3Rpb24gKldpdGggU3RhdGVtZW50XG5Db250ZXh0IE1hbmFnZXJzKikuIFRoaXMgYWxsb3dzIGNvbW1vblxuYGB0cnlgYC4uLmBgZXhjZXB0YGAuLi5gYGZpbmFsbHlgYCB1c2FnZSBwYXR0ZXJucyB0byBiZSBlbmNhcHN1bGF0ZWRcbmZvciBjb252ZW5pZW50IHJldXNlLlxuXG4gICB3aXRoX3N0bXQgOjo9ICJ3aXRoIiB3aXRoX2l0ZW0gKCIsIiB3aXRoX2l0ZW0pKiAiOiIgc3VpdGVcbiAgIHdpdGhfaXRlbSA6Oj0gZXhwcmVzc2lvbiBbImFzIiB0YXJnZXRdXG5cblRoZSBleGVjdXRpb24gb2YgdGhlIGBgd2l0aGBgIHN0YXRlbWVudCB3aXRoIG9uZSAiaXRlbSIgcHJvY2VlZHMgYXNcbmZvbGxvd3M6XG5cbjEuIFRoZSBjb250ZXh0IGV4cHJlc3Npb24gKHRoZSBleHByZXNzaW9uIGdpdmVuIGluIHRoZSBgYHdpdGhfaXRlbWBgKVxuICAgaXMgZXZhbHVhdGVkIHRvIG9idGFpbiBhIGNvbnRleHQgbWFuYWdlci5cblxuMi4gVGhlIGNvbnRleHQgbWFuYWdlclwncyBgYF9fZXhpdF9fKClgYCBpcyBsb2FkZWQgZm9yIGxhdGVyIHVzZS5cblxuMy4gVGhlIGNvbnRleHQgbWFuYWdlclwncyBgYF9fZW50ZXJfXygpYGAgbWV0aG9kIGlzIGludm9rZWQuXG5cbjQuIElmIGEgdGFyZ2V0IHdhcyBpbmNsdWRlZCBpbiB0aGUgYGB3aXRoYGAgc3RhdGVtZW50LCB0aGUgcmV0dXJuXG4gICB2YWx1ZSBmcm9tIGBgX19lbnRlcl9fKClgYCBpcyBhc3NpZ25lZCB0byBpdC5cblxuICAgTm90ZTogVGhlIGBgd2l0aGBgIHN0YXRlbWVudCBndWFyYW50ZWVzIHRoYXQgaWYgdGhlIGBgX19lbnRlcl9fKClgYFxuICAgICBtZXRob2QgcmV0dXJucyB3aXRob3V0IGFuIGVycm9yLCB0aGVuIGBgX19leGl0X18oKWBgIHdpbGwgYWx3YXlzXG4gICAgIGJlIGNhbGxlZC4gVGh1cywgaWYgYW4gZXJyb3Igb2NjdXJzIGR1cmluZyB0aGUgYXNzaWdubWVudCB0byB0aGVcbiAgICAgdGFyZ2V0IGxpc3QsIGl0IHdpbGwgYmUgdHJlYXRlZCB0aGUgc2FtZSBhcyBhbiBlcnJvciBvY2N1cnJpbmdcbiAgICAgd2l0aGluIHRoZSBzdWl0ZSB3b3VsZCBiZS4gU2VlIHN0ZXAgNiBiZWxvdy5cblxuNS4gVGhlIHN1aXRlIGlzIGV4ZWN1dGVkLlxuXG42LiBUaGUgY29udGV4dCBtYW5hZ2VyXCdzIGBgX19leGl0X18oKWBgIG1ldGhvZCBpcyBpbnZva2VkLiAgSWYgYW5cbiAgIGV4Y2VwdGlvbiBjYXVzZWQgdGhlIHN1aXRlIHRvIGJlIGV4aXRlZCwgaXRzIHR5cGUsIHZhbHVlLCBhbmRcbiAgIHRyYWNlYmFjayBhcmUgcGFzc2VkIGFzIGFyZ3VtZW50cyB0byBgYF9fZXhpdF9fKClgYC4gT3RoZXJ3aXNlLFxuICAgdGhyZWUgYGBOb25lYGAgYXJndW1lbnRzIGFyZSBzdXBwbGllZC5cblxuICAgSWYgdGhlIHN1aXRlIHdhcyBleGl0ZWQgZHVlIHRvIGFuIGV4Y2VwdGlvbiwgYW5kIHRoZSByZXR1cm4gdmFsdWVcbiAgIGZyb20gdGhlIGBgX19leGl0X18oKWBgIG1ldGhvZCB3YXMgZmFsc2UsIHRoZSBleGNlcHRpb24gaXNcbiAgIHJlcmFpc2VkLiAgSWYgdGhlIHJldHVybiB2YWx1ZSB3YXMgdHJ1ZSwgdGhlIGV4Y2VwdGlvbiBpc1xuICAgc3VwcHJlc3NlZCwgYW5kIGV4ZWN1dGlvbiBjb250aW51ZXMgd2l0aCB0aGUgc3RhdGVtZW50IGZvbGxvd2luZ1xuICAgdGhlIGBgd2l0aGBgIHN0YXRlbWVudC5cblxuICAgSWYgdGhlIHN1aXRlIHdhcyBleGl0ZWQgZm9yIGFueSByZWFzb24gb3RoZXIgdGhhbiBhbiBleGNlcHRpb24sIHRoZVxuICAgcmV0dXJuIHZhbHVlIGZyb20gYGBfX2V4aXRfXygpYGAgaXMgaWdub3JlZCwgYW5kIGV4ZWN1dGlvbiBwcm9jZWVkc1xuICAgYXQgdGhlIG5vcm1hbCBsb2NhdGlvbiBmb3IgdGhlIGtpbmQgb2YgZXhpdCB0aGF0IHdhcyB0YWtlbi5cblxuV2l0aCBtb3JlIHRoYW4gb25lIGl0ZW0sIHRoZSBjb250ZXh0IG1hbmFnZXJzIGFyZSBwcm9jZXNzZWQgYXMgaWZcbm11bHRpcGxlIGBgd2l0aGBgIHN0YXRlbWVudHMgd2VyZSBuZXN0ZWQ6XG5cbiAgIHdpdGggQSgpIGFzIGEsIEIoKSBhcyBiOlxuICAgICAgIHN1aXRlXG5cbmlzIGVxdWl2YWxlbnQgdG9cblxuICAgd2l0aCBBKCkgYXMgYTpcbiAgICAgICB3aXRoIEIoKSBhcyBiOlxuICAgICAgICAgICBzdWl0ZVxuXG5DaGFuZ2VkIGluIHZlcnNpb24gMy4xOiBTdXBwb3J0IGZvciBtdWx0aXBsZSBjb250ZXh0IGV4cHJlc3Npb25zLlxuXG5TZWUgYWxzbzpcblxuICAgKipQRVAgMDM0MyoqIC0gVGhlICJ3aXRoIiBzdGF0ZW1lbnRcbiAgICAgIFRoZSBzcGVjaWZpY2F0aW9uLCBiYWNrZ3JvdW5kLCBhbmQgZXhhbXBsZXMgZm9yIHRoZSBQeXRob25cbiAgICAgIGBgd2l0aGBgIHN0YXRlbWVudC5cblxuXG5GdW5jdGlvbiBkZWZpbml0aW9uc1xuPT09PT09PT09PT09PT09PT09PT1cblxuQSBmdW5jdGlvbiBkZWZpbml0aW9uIGRlZmluZXMgYSB1c2VyLWRlZmluZWQgZnVuY3Rpb24gb2JqZWN0IChzZWVcbnNlY3Rpb24gKlRoZSBzdGFuZGFyZCB0eXBlIGhpZXJhcmNoeSopOlxuXG4gICBmdW5jZGVmICAgICAgICA6Oj0gW2RlY29yYXRvcnNdICJkZWYiIGZ1bmNuYW1lICIoIiBbcGFyYW1ldGVyX2xpc3RdICIpIiBbIi0+IiBleHByZXNzaW9uXSAiOiIgc3VpdGVcbiAgIGRlY29yYXRvcnMgICAgIDo6PSBkZWNvcmF0b3IrXG4gICBkZWNvcmF0b3IgICAgICA6Oj0gIkAiIGRvdHRlZF9uYW1lIFsiKCIgW2FyZ3VtZW50X2xpc3QgWyIsIl1dICIpIl0gTkVXTElORVxuICAgZG90dGVkX25hbWUgICAgOjo9IGlkZW50aWZpZXIgKCIuIiBpZGVudGlmaWVyKSpcbiAgIHBhcmFtZXRlcl9saXN0IDo6PSAoZGVmcGFyYW1ldGVyICIsIikqXG4gICAgICAgICAgICAgICAgICAgICAgKCAgIioiIFtwYXJhbWV0ZXJdICgiLCIgZGVmcGFyYW1ldGVyKSpcbiAgICAgICAgICAgICAgICAgICAgICBbLCAiKioiIHBhcmFtZXRlcl1cbiAgICAgICAgICAgICAgICAgICAgICB8ICIqKiIgcGFyYW1ldGVyXG4gICAgICAgICAgICAgICAgICAgICAgfCBkZWZwYXJhbWV0ZXIgWyIsIl0gKVxuICAgcGFyYW1ldGVyICAgICAgOjo9IGlkZW50aWZpZXIgWyI6IiBleHByZXNzaW9uXVxuICAgZGVmcGFyYW1ldGVyICAgOjo9IHBhcmFtZXRlciBbIj0iIGV4cHJlc3Npb25dXG4gICBmdW5jbmFtZSAgICAgICA6Oj0gaWRlbnRpZmllclxuXG5BIGZ1bmN0aW9uIGRlZmluaXRpb24gaXMgYW4gZXhlY3V0YWJsZSBzdGF0ZW1lbnQuICBJdHMgZXhlY3V0aW9uIGJpbmRzXG50aGUgZnVuY3Rpb24gbmFtZSBpbiB0aGUgY3VycmVudCBsb2NhbCBuYW1lc3BhY2UgdG8gYSBmdW5jdGlvbiBvYmplY3RcbihhIHdyYXBwZXIgYXJvdW5kIHRoZSBleGVjdXRhYmxlIGNvZGUgZm9yIHRoZSBmdW5jdGlvbikuICBUaGlzXG5mdW5jdGlvbiBvYmplY3QgY29udGFpbnMgYSByZWZlcmVuY2UgdG8gdGhlIGN1cnJlbnQgZ2xvYmFsIG5hbWVzcGFjZVxuYXMgdGhlIGdsb2JhbCBuYW1lc3BhY2UgdG8gYmUgdXNlZCB3aGVuIHRoZSBmdW5jdGlvbiBpcyBjYWxsZWQuXG5cblRoZSBmdW5jdGlvbiBkZWZpbml0aW9uIGRvZXMgbm90IGV4ZWN1dGUgdGhlIGZ1bmN0aW9uIGJvZHk7IHRoaXMgZ2V0c1xuZXhlY3V0ZWQgb25seSB3aGVuIHRoZSBmdW5jdGlvbiBpcyBjYWxsZWQuIFszXVxuXG5BIGZ1bmN0aW9uIGRlZmluaXRpb24gbWF5IGJlIHdyYXBwZWQgYnkgb25lIG9yIG1vcmUgKmRlY29yYXRvcipcbmV4cHJlc3Npb25zLiBEZWNvcmF0b3IgZXhwcmVzc2lvbnMgYXJlIGV2YWx1YXRlZCB3aGVuIHRoZSBmdW5jdGlvbiBpc1xuZGVmaW5lZCwgaW4gdGhlIHNjb3BlIHRoYXQgY29udGFpbnMgdGhlIGZ1bmN0aW9uIGRlZmluaXRpb24uICBUaGVcbnJlc3VsdCBtdXN0IGJlIGEgY2FsbGFibGUsIHdoaWNoIGlzIGludm9rZWQgd2l0aCB0aGUgZnVuY3Rpb24gb2JqZWN0XG5hcyB0aGUgb25seSBhcmd1bWVudC4gVGhlIHJldHVybmVkIHZhbHVlIGlzIGJvdW5kIHRvIHRoZSBmdW5jdGlvbiBuYW1lXG5pbnN0ZWFkIG9mIHRoZSBmdW5jdGlvbiBvYmplY3QuICBNdWx0aXBsZSBkZWNvcmF0b3JzIGFyZSBhcHBsaWVkIGluXG5uZXN0ZWQgZmFzaGlvbi4gRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgY29kZVxuXG4gICBAZjEoYXJnKVxuICAgQGYyXG4gICBkZWYgZnVuYygpOiBwYXNzXG5cbmlzIGVxdWl2YWxlbnQgdG9cblxuICAgZGVmIGZ1bmMoKTogcGFzc1xuICAgZnVuYyA9IGYxKGFyZykoZjIoZnVuYykpXG5cbldoZW4gb25lIG9yIG1vcmUgcGFyYW1ldGVycyBoYXZlIHRoZSBmb3JtICpwYXJhbWV0ZXIqIGBgPWBgXG4qZXhwcmVzc2lvbiosIHRoZSBmdW5jdGlvbiBpcyBzYWlkIHRvIGhhdmUgImRlZmF1bHQgcGFyYW1ldGVyIHZhbHVlcy4iXG5Gb3IgYSBwYXJhbWV0ZXIgd2l0aCBhIGRlZmF1bHQgdmFsdWUsIHRoZSBjb3JyZXNwb25kaW5nIGFyZ3VtZW50IG1heVxuYmUgb21pdHRlZCBmcm9tIGEgY2FsbCwgaW4gd2hpY2ggY2FzZSB0aGUgcGFyYW1ldGVyXCdzIGRlZmF1bHQgdmFsdWUgaXNcbnN1YnN0aXR1dGVkLiAgSWYgYSBwYXJhbWV0ZXIgaGFzIGEgZGVmYXVsdCB2YWx1ZSwgYWxsIGZvbGxvd2luZ1xucGFyYW1ldGVycyB1cCB1bnRpbCB0aGUgImBgKmBgIiBtdXN0IGFsc28gaGF2ZSBhIGRlZmF1bHQgdmFsdWUgLS0tXG50aGlzIGlzIGEgc3ludGFjdGljIHJlc3RyaWN0aW9uIHRoYXQgaXMgbm90IGV4cHJlc3NlZCBieSB0aGUgZ3JhbW1hci5cblxuKipEZWZhdWx0IHBhcmFtZXRlciB2YWx1ZXMgYXJlIGV2YWx1YXRlZCB3aGVuIHRoZSBmdW5jdGlvbiBkZWZpbml0aW9uXG5pcyBleGVjdXRlZC4qKiBUaGlzIG1lYW5zIHRoYXQgdGhlIGV4cHJlc3Npb24gaXMgZXZhbHVhdGVkIG9uY2UsIHdoZW5cbnRoZSBmdW5jdGlvbiBpcyBkZWZpbmVkLCBhbmQgdGhhdCB0aGF0IHNhbWUgInByZS1jb21wdXRlZCIgdmFsdWUgaXNcbnVzZWQgZm9yIGVhY2ggY2FsbC4gIFRoaXMgaXMgZXNwZWNpYWxseSBpbXBvcnRhbnQgdG8gdW5kZXJzdGFuZCB3aGVuIGFcbmRlZmF1bHQgcGFyYW1ldGVyIGlzIGEgbXV0YWJsZSBvYmplY3QsIHN1Y2ggYXMgYSBsaXN0IG9yIGEgZGljdGlvbmFyeTpcbmlmIHRoZSBmdW5jdGlvbiBtb2RpZmllcyB0aGUgb2JqZWN0IChlLmcuIGJ5IGFwcGVuZGluZyBhbiBpdGVtIHRvIGFcbmxpc3QpLCB0aGUgZGVmYXVsdCB2YWx1ZSBpcyBpbiBlZmZlY3QgbW9kaWZpZWQuIFRoaXMgaXMgZ2VuZXJhbGx5IG5vdFxud2hhdCB3YXMgaW50ZW5kZWQuICBBIHdheSBhcm91bmQgdGhpcyBpcyB0byB1c2UgYGBOb25lYGAgYXMgdGhlXG5kZWZhdWx0LCBhbmQgZXhwbGljaXRseSB0ZXN0IGZvciBpdCBpbiB0aGUgYm9keSBvZiB0aGUgZnVuY3Rpb24sIGUuZy46XG5cbiAgIGRlZiB3aGF0c19vbl90aGVfdGVsbHkocGVuZ3Vpbj1Ob25lKTpcbiAgICAgICBpZiBwZW5ndWluIGlzIE5vbmU6XG4gICAgICAgICAgIHBlbmd1aW4gPSBbXVxuICAgICAgIHBlbmd1aW4uYXBwZW5kKCJwcm9wZXJ0eSBvZiB0aGUgem9vIilcbiAgICAgICByZXR1cm4gcGVuZ3VpblxuXG5GdW5jdGlvbiBjYWxsIHNlbWFudGljcyBhcmUgZGVzY3JpYmVkIGluIG1vcmUgZGV0YWlsIGluIHNlY3Rpb25cbipDYWxscyouIEEgZnVuY3Rpb24gY2FsbCBhbHdheXMgYXNzaWducyB2YWx1ZXMgdG8gYWxsIHBhcmFtZXRlcnNcbm1lbnRpb25lZCBpbiB0aGUgcGFyYW1ldGVyIGxpc3QsIGVpdGhlciBmcm9tIHBvc2l0aW9uIGFyZ3VtZW50cywgZnJvbVxua2V5d29yZCBhcmd1bWVudHMsIG9yIGZyb20gZGVmYXVsdCB2YWx1ZXMuICBJZiB0aGUgZm9ybVxuImBgKmlkZW50aWZpZXJgYCIgaXMgcHJlc2VudCwgaXQgaXMgaW5pdGlhbGl6ZWQgdG8gYSB0dXBsZSByZWNlaXZpbmdcbmFueSBleGNlc3MgcG9zaXRpb25hbCBwYXJhbWV0ZXJzLCBkZWZhdWx0aW5nIHRvIHRoZSBlbXB0eSB0dXBsZS4gIElmXG50aGUgZm9ybSAiYGAqKmlkZW50aWZpZXJgYCIgaXMgcHJlc2VudCwgaXQgaXMgaW5pdGlhbGl6ZWQgdG8gYSBuZXdcbmRpY3Rpb25hcnkgcmVjZWl2aW5nIGFueSBleGNlc3Mga2V5d29yZCBhcmd1bWVudHMsIGRlZmF1bHRpbmcgdG8gYSBuZXdcbmVtcHR5IGRpY3Rpb25hcnkuIFBhcmFtZXRlcnMgYWZ0ZXIgImBgKmBgIiBvciAiYGAqaWRlbnRpZmllcmBgIiBhcmVcbmtleXdvcmQtb25seSBwYXJhbWV0ZXJzIGFuZCBtYXkgb25seSBiZSBwYXNzZWQgdXNlZCBrZXl3b3JkIGFyZ3VtZW50cy5cblxuUGFyYW1ldGVycyBtYXkgaGF2ZSBhbm5vdGF0aW9ucyBvZiB0aGUgZm9ybSAiYGA6IGV4cHJlc3Npb25gYCJcbmZvbGxvd2luZyB0aGUgcGFyYW1ldGVyIG5hbWUuICBBbnkgcGFyYW1ldGVyIG1heSBoYXZlIGFuIGFubm90YXRpb25cbmV2ZW4gdGhvc2Ugb2YgdGhlIGZvcm0gYGAqaWRlbnRpZmllcmBgIG9yIGBgKippZGVudGlmaWVyYGAuICBGdW5jdGlvbnNcbm1heSBoYXZlICJyZXR1cm4iIGFubm90YXRpb24gb2YgdGhlIGZvcm0gImBgLT4gZXhwcmVzc2lvbmBgIiBhZnRlciB0aGVcbnBhcmFtZXRlciBsaXN0LiAgVGhlc2UgYW5ub3RhdGlvbnMgY2FuIGJlIGFueSB2YWxpZCBQeXRob24gZXhwcmVzc2lvblxuYW5kIGFyZSBldmFsdWF0ZWQgd2hlbiB0aGUgZnVuY3Rpb24gZGVmaW5pdGlvbiBpcyBleGVjdXRlZC5cbkFubm90YXRpb25zIG1heSBiZSBldmFsdWF0ZWQgaW4gYSBkaWZmZXJlbnQgb3JkZXIgdGhhbiB0aGV5IGFwcGVhciBpblxudGhlIHNvdXJjZSBjb2RlLiAgVGhlIHByZXNlbmNlIG9mIGFubm90YXRpb25zIGRvZXMgbm90IGNoYW5nZSB0aGVcbnNlbWFudGljcyBvZiBhIGZ1bmN0aW9uLiAgVGhlIGFubm90YXRpb24gdmFsdWVzIGFyZSBhdmFpbGFibGUgYXNcbnZhbHVlcyBvZiBhIGRpY3Rpb25hcnkga2V5ZWQgYnkgdGhlIHBhcmFtZXRlcnNcJyBuYW1lcyBpbiB0aGVcbmBgX19hbm5vdGF0aW9uc19fYGAgYXR0cmlidXRlIG9mIHRoZSBmdW5jdGlvbiBvYmplY3QuXG5cbkl0IGlzIGFsc28gcG9zc2libGUgdG8gY3JlYXRlIGFub255bW91cyBmdW5jdGlvbnMgKGZ1bmN0aW9ucyBub3QgYm91bmRcbnRvIGEgbmFtZSksIGZvciBpbW1lZGlhdGUgdXNlIGluIGV4cHJlc3Npb25zLiAgVGhpcyB1c2VzIGxhbWJkYSBmb3JtcyxcbmRlc2NyaWJlZCBpbiBzZWN0aW9uICpMYW1iZGFzKi4gIE5vdGUgdGhhdCB0aGUgbGFtYmRhIGZvcm0gaXMgbWVyZWx5IGFcbnNob3J0aGFuZCBmb3IgYSBzaW1wbGlmaWVkIGZ1bmN0aW9uIGRlZmluaXRpb247IGEgZnVuY3Rpb24gZGVmaW5lZCBpblxuYSAiYGBkZWZgYCIgc3RhdGVtZW50IGNhbiBiZSBwYXNzZWQgYXJvdW5kIG9yIGFzc2lnbmVkIHRvIGFub3RoZXIgbmFtZVxuanVzdCBsaWtlIGEgZnVuY3Rpb24gZGVmaW5lZCBieSBhIGxhbWJkYSBmb3JtLiAgVGhlICJgYGRlZmBgIiBmb3JtIGlzXG5hY3R1YWxseSBtb3JlIHBvd2VyZnVsIHNpbmNlIGl0IGFsbG93cyB0aGUgZXhlY3V0aW9uIG9mIG11bHRpcGxlXG5zdGF0ZW1lbnRzIGFuZCBhbm5vdGF0aW9ucy5cblxuKipQcm9ncmFtbWVyXCdzIG5vdGU6KiogRnVuY3Rpb25zIGFyZSBmaXJzdC1jbGFzcyBvYmplY3RzLiAgQSAiYGBkZWZgYCJcbmZvcm0gZXhlY3V0ZWQgaW5zaWRlIGEgZnVuY3Rpb24gZGVmaW5pdGlvbiBkZWZpbmVzIGEgbG9jYWwgZnVuY3Rpb25cbnRoYXQgY2FuIGJlIHJldHVybmVkIG9yIHBhc3NlZCBhcm91bmQuICBGcmVlIHZhcmlhYmxlcyB1c2VkIGluIHRoZVxubmVzdGVkIGZ1bmN0aW9uIGNhbiBhY2Nlc3MgdGhlIGxvY2FsIHZhcmlhYmxlcyBvZiB0aGUgZnVuY3Rpb25cbmNvbnRhaW5pbmcgdGhlIGRlZi4gIFNlZSBzZWN0aW9uICpOYW1pbmcgYW5kIGJpbmRpbmcqIGZvciBkZXRhaWxzLlxuXG5cbkNsYXNzIGRlZmluaXRpb25zXG49PT09PT09PT09PT09PT09PVxuXG5BIGNsYXNzIGRlZmluaXRpb24gZGVmaW5lcyBhIGNsYXNzIG9iamVjdCAoc2VlIHNlY3Rpb24gKlRoZSBzdGFuZGFyZFxudHlwZSBoaWVyYXJjaHkqKTpcblxuICAgY2xhc3NkZWYgICAgOjo9IFtkZWNvcmF0b3JzXSAiY2xhc3MiIGNsYXNzbmFtZSBbaW5oZXJpdGFuY2VdICI6IiBzdWl0ZVxuICAgaW5oZXJpdGFuY2UgOjo9ICIoIiBbYXJndW1lbnRfbGlzdCBbIiwiXSB8IGNvbXByZWhlbnNpb25dICIpIlxuICAgY2xhc3NuYW1lICAgOjo9IGlkZW50aWZpZXJcblxuQSBjbGFzcyBkZWZpbml0aW9uIGlzIGFuIGV4ZWN1dGFibGUgc3RhdGVtZW50LiAgVGhlIGluaGVyaXRhbmNlIGxpc3RcbnVzdWFsbHkgZ2l2ZXMgYSBsaXN0IG9mIGJhc2UgY2xhc3NlcyAoc2VlICpDdXN0b21pemluZyBjbGFzcyBjcmVhdGlvbipcbmZvciBtb3JlIGFkdmFuY2VkIHVzZXMpLCBzbyBlYWNoIGl0ZW0gaW4gdGhlIGxpc3Qgc2hvdWxkIGV2YWx1YXRlIHRvIGFcbmNsYXNzIG9iamVjdCB3aGljaCBhbGxvd3Mgc3ViY2xhc3NpbmcuICBDbGFzc2VzIHdpdGhvdXQgYW4gaW5oZXJpdGFuY2Vcbmxpc3QgaW5oZXJpdCwgYnkgZGVmYXVsdCwgZnJvbSB0aGUgYmFzZSBjbGFzcyBgYG9iamVjdGBgOyBoZW5jZSxcblxuICAgY2xhc3MgRm9vOlxuICAgICAgIHBhc3NcblxuaXMgZXF1aXZhbGVudCB0b1xuXG4gICBjbGFzcyBGb28ob2JqZWN0KTpcbiAgICAgICBwYXNzXG5cblRoZSBjbGFzc1wncyBzdWl0ZSBpcyB0aGVuIGV4ZWN1dGVkIGluIGEgbmV3IGV4ZWN1dGlvbiBmcmFtZSAoc2VlXG4qTmFtaW5nIGFuZCBiaW5kaW5nKiksIHVzaW5nIGEgbmV3bHkgY3JlYXRlZCBsb2NhbCBuYW1lc3BhY2UgYW5kIHRoZVxub3JpZ2luYWwgZ2xvYmFsIG5hbWVzcGFjZS4gKFVzdWFsbHksIHRoZSBzdWl0ZSBjb250YWlucyBtb3N0bHlcbmZ1bmN0aW9uIGRlZmluaXRpb25zLikgIFdoZW4gdGhlIGNsYXNzXCdzIHN1aXRlIGZpbmlzaGVzIGV4ZWN1dGlvbiwgaXRzXG5leGVjdXRpb24gZnJhbWUgaXMgZGlzY2FyZGVkIGJ1dCBpdHMgbG9jYWwgbmFtZXNwYWNlIGlzIHNhdmVkLiBbNF0gQVxuY2xhc3Mgb2JqZWN0IGlzIHRoZW4gY3JlYXRlZCB1c2luZyB0aGUgaW5oZXJpdGFuY2UgbGlzdCBmb3IgdGhlIGJhc2VcbmNsYXNzZXMgYW5kIHRoZSBzYXZlZCBsb2NhbCBuYW1lc3BhY2UgZm9yIHRoZSBhdHRyaWJ1dGUgZGljdGlvbmFyeS5cblRoZSBjbGFzcyBuYW1lIGlzIGJvdW5kIHRvIHRoaXMgY2xhc3Mgb2JqZWN0IGluIHRoZSBvcmlnaW5hbCBsb2NhbFxubmFtZXNwYWNlLlxuXG5DbGFzcyBjcmVhdGlvbiBjYW4gYmUgY3VzdG9taXplZCBoZWF2aWx5IHVzaW5nICptZXRhY2xhc3NlcyouXG5cbkNsYXNzZXMgY2FuIGFsc28gYmUgZGVjb3JhdGVkOiBqdXN0IGxpa2Ugd2hlbiBkZWNvcmF0aW5nIGZ1bmN0aW9ucyxcblxuICAgQGYxKGFyZylcbiAgIEBmMlxuICAgY2xhc3MgRm9vOiBwYXNzXG5cbmlzIGVxdWl2YWxlbnQgdG9cblxuICAgY2xhc3MgRm9vOiBwYXNzXG4gICBGb28gPSBmMShhcmcpKGYyKEZvbykpXG5cblRoZSBldmFsdWF0aW9uIHJ1bGVzIGZvciB0aGUgZGVjb3JhdG9yIGV4cHJlc3Npb25zIGFyZSB0aGUgc2FtZSBhcyBmb3JcbmZ1bmN0aW9uIGRlY29yYXRvcnMuICBUaGUgcmVzdWx0IG11c3QgYmUgYSBjbGFzcyBvYmplY3QsIHdoaWNoIGlzIHRoZW5cbmJvdW5kIHRvIHRoZSBjbGFzcyBuYW1lLlxuXG4qKlByb2dyYW1tZXJcJ3Mgbm90ZToqKiBWYXJpYWJsZXMgZGVmaW5lZCBpbiB0aGUgY2xhc3MgZGVmaW5pdGlvbiBhcmVcbmNsYXNzIGF0dHJpYnV0ZXM7IHRoZXkgYXJlIHNoYXJlZCBieSBpbnN0YW5jZXMuICBJbnN0YW5jZSBhdHRyaWJ1dGVzXG5jYW4gYmUgc2V0IGluIGEgbWV0aG9kIHdpdGggYGBzZWxmLm5hbWUgPSB2YWx1ZWBgLiAgQm90aCBjbGFzcyBhbmRcbmluc3RhbmNlIGF0dHJpYnV0ZXMgYXJlIGFjY2Vzc2libGUgdGhyb3VnaCB0aGUgbm90YXRpb25cbiJgYHNlbGYubmFtZWBgIiwgYW5kIGFuIGluc3RhbmNlIGF0dHJpYnV0ZSBoaWRlcyBhIGNsYXNzIGF0dHJpYnV0ZVxud2l0aCB0aGUgc2FtZSBuYW1lIHdoZW4gYWNjZXNzZWQgaW4gdGhpcyB3YXkuICBDbGFzcyBhdHRyaWJ1dGVzIGNhbiBiZVxudXNlZCBhcyBkZWZhdWx0cyBmb3IgaW5zdGFuY2UgYXR0cmlidXRlcywgYnV0IHVzaW5nIG11dGFibGUgdmFsdWVzXG50aGVyZSBjYW4gbGVhZCB0byB1bmV4cGVjdGVkIHJlc3VsdHMuICAqRGVzY3JpcHRvcnMqIGNhbiBiZSB1c2VkIHRvXG5jcmVhdGUgaW5zdGFuY2UgdmFyaWFibGVzIHdpdGggZGlmZmVyZW50IGltcGxlbWVudGF0aW9uIGRldGFpbHMuXG5cblNlZSBhbHNvOlxuXG4gICAqKlBFUCAzMTE1KiogLSBNZXRhY2xhc3NlcyBpbiBQeXRob24gMyAqKlBFUCAzMTI5KiogLSBDbGFzc1xuICAgRGVjb3JhdG9yc1xuXG4tWyBGb290bm90ZXMgXS1cblxuWzFdIFRoZSBleGNlcHRpb24gaXMgcHJvcGFnYXRlZCB0byB0aGUgaW52b2NhdGlvbiBzdGFjayBvbmx5IGlmIHRoZXJlXG4gICAgaXMgbm8gYGBmaW5hbGx5YGAgY2xhdXNlIHRoYXQgbmVnYXRlcyB0aGUgZXhjZXB0aW9uLlxuXG5bMl0gQ3VycmVudGx5LCBjb250cm9sICJmbG93cyBvZmYgdGhlIGVuZCIgZXhjZXB0IGluIHRoZSBjYXNlIG9mIGFuXG4gICAgZXhjZXB0aW9uIG9yIHRoZSBleGVjdXRpb24gb2YgYSBgYHJldHVybmBgLCBgYGNvbnRpbnVlYGAsIG9yXG4gICAgYGBicmVha2BgIHN0YXRlbWVudC5cblxuWzNdIEEgc3RyaW5nIGxpdGVyYWwgYXBwZWFyaW5nIGFzIHRoZSBmaXJzdCBzdGF0ZW1lbnQgaW4gdGhlIGZ1bmN0aW9uXG4gICAgYm9keSBpcyB0cmFuc2Zvcm1lZCBpbnRvIHRoZSBmdW5jdGlvblwncyBgYF9fZG9jX19gYCBhdHRyaWJ1dGUgYW5kXG4gICAgdGhlcmVmb3JlIHRoZSBmdW5jdGlvblwncyAqZG9jc3RyaW5nKi5cblxuWzRdIEEgc3RyaW5nIGxpdGVyYWwgYXBwZWFyaW5nIGFzIHRoZSBmaXJzdCBzdGF0ZW1lbnQgaW4gdGhlIGNsYXNzXG4gICAgYm9keSBpcyB0cmFuc2Zvcm1lZCBpbnRvIHRoZSBuYW1lc3BhY2VcJ3MgYGBfX2RvY19fYGAgaXRlbSBhbmRcbiAgICB0aGVyZWZvcmUgdGhlIGNsYXNzXCdzICpkb2NzdHJpbmcqLlxuJywKICAnY29udGV4dC1tYW5hZ2Vycyc6ICdcbldpdGggU3RhdGVtZW50IENvbnRleHQgTWFuYWdlcnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQSAqY29udGV4dCBtYW5hZ2VyKiBpcyBhbiBvYmplY3QgdGhhdCBkZWZpbmVzIHRoZSBydW50aW1lIGNvbnRleHQgdG9cbmJlIGVzdGFibGlzaGVkIHdoZW4gZXhlY3V0aW5nIGEgYGB3aXRoYGAgc3RhdGVtZW50LiBUaGUgY29udGV4dFxubWFuYWdlciBoYW5kbGVzIHRoZSBlbnRyeSBpbnRvLCBhbmQgdGhlIGV4aXQgZnJvbSwgdGhlIGRlc2lyZWQgcnVudGltZVxuY29udGV4dCBmb3IgdGhlIGV4ZWN1dGlvbiBvZiB0aGUgYmxvY2sgb2YgY29kZS4gIENvbnRleHQgbWFuYWdlcnMgYXJlXG5ub3JtYWxseSBpbnZva2VkIHVzaW5nIHRoZSBgYHdpdGhgYCBzdGF0ZW1lbnQgKGRlc2NyaWJlZCBpbiBzZWN0aW9uXG4qVGhlIHdpdGggc3RhdGVtZW50KiksIGJ1dCBjYW4gYWxzbyBiZSB1c2VkIGJ5IGRpcmVjdGx5IGludm9raW5nIHRoZWlyXG5tZXRob2RzLlxuXG5UeXBpY2FsIHVzZXMgb2YgY29udGV4dCBtYW5hZ2VycyBpbmNsdWRlIHNhdmluZyBhbmQgcmVzdG9yaW5nIHZhcmlvdXNcbmtpbmRzIG9mIGdsb2JhbCBzdGF0ZSwgbG9ja2luZyBhbmQgdW5sb2NraW5nIHJlc291cmNlcywgY2xvc2luZyBvcGVuZWRcbmZpbGVzLCBldGMuXG5cbkZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGNvbnRleHQgbWFuYWdlcnMsIHNlZSAqQ29udGV4dCBNYW5hZ2VyIFR5cGVzKi5cblxub2JqZWN0Ll9fZW50ZXJfXyhzZWxmKVxuXG4gICBFbnRlciB0aGUgcnVudGltZSBjb250ZXh0IHJlbGF0ZWQgdG8gdGhpcyBvYmplY3QuIFRoZSBgYHdpdGhgYFxuICAgc3RhdGVtZW50IHdpbGwgYmluZCB0aGlzIG1ldGhvZFwncyByZXR1cm4gdmFsdWUgdG8gdGhlIHRhcmdldChzKVxuICAgc3BlY2lmaWVkIGluIHRoZSBgYGFzYGAgY2xhdXNlIG9mIHRoZSBzdGF0ZW1lbnQsIGlmIGFueS5cblxub2JqZWN0Ll9fZXhpdF9fKHNlbGYsIGV4Y190eXBlLCBleGNfdmFsdWUsIHRyYWNlYmFjaylcblxuICAgRXhpdCB0aGUgcnVudGltZSBjb250ZXh0IHJlbGF0ZWQgdG8gdGhpcyBvYmplY3QuIFRoZSBwYXJhbWV0ZXJzXG4gICBkZXNjcmliZSB0aGUgZXhjZXB0aW9uIHRoYXQgY2F1c2VkIHRoZSBjb250ZXh0IHRvIGJlIGV4aXRlZC4gSWYgdGhlXG4gICBjb250ZXh0IHdhcyBleGl0ZWQgd2l0aG91dCBhbiBleGNlcHRpb24sIGFsbCB0aHJlZSBhcmd1bWVudHMgd2lsbFxuICAgYmUgYGBOb25lYGAuXG5cbiAgIElmIGFuIGV4Y2VwdGlvbiBpcyBzdXBwbGllZCwgYW5kIHRoZSBtZXRob2Qgd2lzaGVzIHRvIHN1cHByZXNzIHRoZVxuICAgZXhjZXB0aW9uIChpLmUuLCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgcHJvcGFnYXRlZCksIGl0IHNob3VsZFxuICAgcmV0dXJuIGEgdHJ1ZSB2YWx1ZS4gT3RoZXJ3aXNlLCB0aGUgZXhjZXB0aW9uIHdpbGwgYmUgcHJvY2Vzc2VkXG4gICBub3JtYWxseSB1cG9uIGV4aXQgZnJvbSB0aGlzIG1ldGhvZC5cblxuICAgTm90ZSB0aGF0IGBgX19leGl0X18oKWBgIG1ldGhvZHMgc2hvdWxkIG5vdCByZXJhaXNlIHRoZSBwYXNzZWQtaW5cbiAgIGV4Y2VwdGlvbjsgdGhpcyBpcyB0aGUgY2FsbGVyXCdzIHJlc3BvbnNpYmlsaXR5LlxuXG5TZWUgYWxzbzpcblxuICAgKipQRVAgMDM0MyoqIC0gVGhlICJ3aXRoIiBzdGF0ZW1lbnRcbiAgICAgIFRoZSBzcGVjaWZpY2F0aW9uLCBiYWNrZ3JvdW5kLCBhbmQgZXhhbXBsZXMgZm9yIHRoZSBQeXRob25cbiAgICAgIGBgd2l0aGBgIHN0YXRlbWVudC5cbicsCiAgJ2NvbnRpbnVlJzogJ1xuVGhlIGBgY29udGludWVgYCBzdGF0ZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbiAgIGNvbnRpbnVlX3N0bXQgOjo9ICJjb250aW51ZSJcblxuYGBjb250aW51ZWBgIG1heSBvbmx5IG9jY3VyIHN5bnRhY3RpY2FsbHkgbmVzdGVkIGluIGEgYGBmb3JgYCBvclxuYGB3aGlsZWBgIGxvb3AsIGJ1dCBub3QgbmVzdGVkIGluIGEgZnVuY3Rpb24gb3IgY2xhc3MgZGVmaW5pdGlvbiBvclxuYGBmaW5hbGx5YGAgY2xhdXNlIHdpdGhpbiB0aGF0IGxvb3AuICBJdCBjb250aW51ZXMgd2l0aCB0aGUgbmV4dCBjeWNsZVxub2YgdGhlIG5lYXJlc3QgZW5jbG9zaW5nIGxvb3AuXG5cbldoZW4gYGBjb250aW51ZWBgIHBhc3NlcyBjb250cm9sIG91dCBvZiBhIGBgdHJ5YGAgc3RhdGVtZW50IHdpdGggYVxuYGBmaW5hbGx5YGAgY2xhdXNlLCB0aGF0IGBgZmluYWxseWBgIGNsYXVzZSBpcyBleGVjdXRlZCBiZWZvcmUgcmVhbGx5XG5zdGFydGluZyB0aGUgbmV4dCBsb29wIGN5Y2xlLlxuJywKICAnY29udmVyc2lvbnMnOiAnXG5Bcml0aG1ldGljIGNvbnZlcnNpb25zXG4qKioqKioqKioqKioqKioqKioqKioqXG5cbldoZW4gYSBkZXNjcmlwdGlvbiBvZiBhbiBhcml0aG1ldGljIG9wZXJhdG9yIGJlbG93IHVzZXMgdGhlIHBocmFzZVxuInRoZSBudW1lcmljIGFyZ3VtZW50cyBhcmUgY29udmVydGVkIHRvIGEgY29tbW9uIHR5cGUsIiB0aGlzIG1lYW5zXG50aGF0IHRoZSBvcGVyYXRvciBpbXBsZW1lbnRhdGlvbiBmb3IgYnVpbHQtaW4gdHlwZXMgd29ya3MgdGhhdCB3YXk6XG5cbiogSWYgZWl0aGVyIGFyZ3VtZW50IGlzIGEgY29tcGxleCBudW1iZXIsIHRoZSBvdGhlciBpcyBjb252ZXJ0ZWQgdG9cbiAgY29tcGxleDtcblxuKiBvdGhlcndpc2UsIGlmIGVpdGhlciBhcmd1bWVudCBpcyBhIGZsb2F0aW5nIHBvaW50IG51bWJlciwgdGhlIG90aGVyXG4gIGlzIGNvbnZlcnRlZCB0byBmbG9hdGluZyBwb2ludDtcblxuKiBvdGhlcndpc2UsIGJvdGggbXVzdCBiZSBpbnRlZ2VycyBhbmQgbm8gY29udmVyc2lvbiBpcyBuZWNlc3NhcnkuXG5cblNvbWUgYWRkaXRpb25hbCBydWxlcyBhcHBseSBmb3IgY2VydGFpbiBvcGVyYXRvcnMgKGUuZy4sIGEgc3RyaW5nIGxlZnRcbmFyZ3VtZW50IHRvIHRoZSBcJyVcJyBvcGVyYXRvcikuICBFeHRlbnNpb25zIG11c3QgZGVmaW5lIHRoZWlyIG93blxuY29udmVyc2lvbiBiZWhhdmlvci5cbicsCkBAIC0zMyw3ICszMyw3IEBACiAgJ2V4cHJsaXN0cyc6ICdcbkV4cHJlc3Npb24gbGlzdHNcbioqKioqKioqKioqKioqKipcblxuICAgZXhwcmVzc2lvbl9saXN0IDo6PSBleHByZXNzaW9uICggIiwiIGV4cHJlc3Npb24gKSogWyIsIl1cblxuQW4gZXhwcmVzc2lvbiBsaXN0IGNvbnRhaW5pbmcgYXQgbGVhc3Qgb25lIGNvbW1hIHlpZWxkcyBhIHR1cGxlLiAgVGhlXG5sZW5ndGggb2YgdGhlIHR1cGxlIGlzIHRoZSBudW1iZXIgb2YgZXhwcmVzc2lvbnMgaW4gdGhlIGxpc3QuICBUaGVcbmV4cHJlc3Npb25zIGFyZSBldmFsdWF0ZWQgZnJvbSBsZWZ0IHRvIHJpZ2h0LlxuXG5UaGUgdHJhaWxpbmcgY29tbWEgaXMgcmVxdWlyZWQgb25seSB0byBjcmVhdGUgYSBzaW5nbGUgdHVwbGUgKGEuay5hLiBhXG4qc2luZ2xldG9uKik7IGl0IGlzIG9wdGlvbmFsIGluIGFsbCBvdGhlciBjYXNlcy4gIEEgc2luZ2xlIGV4cHJlc3Npb25cbndpdGhvdXQgYSB0cmFpbGluZyBjb21tYSBkb2VzblwndCBjcmVhdGUgYSB0dXBsZSwgYnV0IHJhdGhlciB5aWVsZHMgdGhlXG52YWx1ZSBvZiB0aGF0IGV4cHJlc3Npb24uIChUbyBjcmVhdGUgYW4gZW1wdHkgdHVwbGUsIHVzZSBhbiBlbXB0eSBwYWlyXG5vZiBwYXJlbnRoZXNlczogYGAoKWBgLilcbicsCiAgJ2Zsb2F0aW5nJzogJ1xuRmxvYXRpbmcgcG9pbnQgbGl0ZXJhbHNcbioqKioqKioqKioqKioqKioqKioqKioqXG5cbkZsb2F0aW5nIHBvaW50IGxpdGVyYWxzIGFyZSBkZXNjcmliZWQgYnkgdGhlIGZvbGxvd2luZyBsZXhpY2FsXG5kZWZpbml0aW9uczpcblxuICAgZmxvYXRudW1iZXIgICA6Oj0gcG9pbnRmbG9hdCB8IGV4cG9uZW50ZmxvYXRcbiAgIHBvaW50ZmxvYXQgICAgOjo9IFtpbnRwYXJ0XSBmcmFjdGlvbiB8IGludHBhcnQgIi4iXG4gICBleHBvbmVudGZsb2F0IDo6PSAoaW50cGFydCB8IHBvaW50ZmxvYXQpIGV4cG9uZW50XG4gICBpbnRwYXJ0ICAgICAgIDo6PSBkaWdpdCtcbiAgIGZyYWN0aW9uICAgICAgOjo9ICIuIiBkaWdpdCtcbiAgIGV4cG9uZW50ICAgICAgOjo9ICgiZSIgfCAiRSIpIFsiKyIgfCAiLSJdIGRpZ2l0K1xuXG5Ob3RlIHRoYXQgdGhlIGludGVnZXIgYW5kIGV4cG9uZW50IHBhcnRzIGFyZSBhbHdheXMgaW50ZXJwcmV0ZWQgdXNpbmdcbnJhZGl4IDEwLiBGb3IgZXhhbXBsZSwgYGAwNzdlMDEwYGAgaXMgbGVnYWwsIGFuZCBkZW5vdGVzIHRoZSBzYW1lXG5udW1iZXIgYXMgYGA3N2UxMGBgLiBUaGUgYWxsb3dlZCByYW5nZSBvZiBmbG9hdGluZyBwb2ludCBsaXRlcmFscyBpc1xuaW1wbGVtZW50YXRpb24tZGVwZW5kZW50LiBTb21lIGV4YW1wbGVzIG9mIGZsb2F0aW5nIHBvaW50IGxpdGVyYWxzOlxuXG4gICAzLjE0ICAgIDEwLiAgICAuMDAxICAgIDFlMTAwICAgIDMuMTRlLTEwICAgIDBlMFxuXG5Ob3RlIHRoYXQgbnVtZXJpYyBsaXRlcmFscyBkbyBub3QgaW5jbHVkZSBhIHNpZ247IGEgcGhyYXNlIGxpa2UgYGAtMWBgXG5pcyBhY3R1YWxseSBhbiBleHByZXNzaW9uIGNvbXBvc2VkIG9mIHRoZSB1bmFyeSBvcGVyYXRvciBgYC1gYCBhbmQgdGhlXG5saXRlcmFsIGBgMWBgLlxuJywKICAnZm9yJzogJ1xuVGhlIGBgZm9yYGAgc3RhdGVtZW50XG4qKioqKioqKioqKioqKioqKioqKipcblxuVGhlIGBgZm9yYGAgc3RhdGVtZW50IGlzIHVzZWQgdG8gaXRlcmF0ZSBvdmVyIHRoZSBlbGVtZW50cyBvZiBhXG5zZXF1ZW5jZSAoc3VjaCBhcyBhIHN0cmluZywgdHVwbGUgb3IgbGlzdCkgb3Igb3RoZXIgaXRlcmFibGUgb2JqZWN0OlxuXG4gICBmb3Jfc3RtdCA6Oj0gImZvciIgdGFyZ2V0X2xpc3QgImluIiBleHByZXNzaW9uX2xpc3QgIjoiIHN1aXRlXG4gICAgICAgICAgICAgICAgWyJlbHNlIiAiOiIgc3VpdGVdXG5cblRoZSBleHByZXNzaW9uIGxpc3QgaXMgZXZhbHVhdGVkIG9uY2U7IGl0IHNob3VsZCB5aWVsZCBhbiBpdGVyYWJsZVxub2JqZWN0LiAgQW4gaXRlcmF0b3IgaXMgY3JlYXRlZCBmb3IgdGhlIHJlc3VsdCBvZiB0aGVcbmBgZXhwcmVzc2lvbl9saXN0YGAuICBUaGUgc3VpdGUgaXMgdGhlbiBleGVjdXRlZCBvbmNlIGZvciBlYWNoIGl0ZW1cbnByb3ZpZGVkIGJ5IHRoZSBpdGVyYXRvciwgaW4gdGhlIG9yZGVyIG9mIGFzY2VuZGluZyBpbmRpY2VzLiAgRWFjaFxuaXRlbSBpbiB0dXJuIGlzIGFzc2lnbmVkIHRvIHRoZSB0YXJnZXQgbGlzdCB1c2luZyB0aGUgc3RhbmRhcmQgcnVsZXNcbmZvciBhc3NpZ25tZW50cyAoc2VlICpBc3NpZ25tZW50IHN0YXRlbWVudHMqKSwgYW5kIHRoZW4gdGhlIHN1aXRlIGlzXG5leGVjdXRlZC4gIFdoZW4gdGhlIGl0ZW1zIGFyZSBleGhhdXN0ZWQgKHdoaWNoIGlzIGltbWVkaWF0ZWx5IHdoZW4gdGhlXG5zZXF1ZW5jZSBpcyBlbXB0eSBvciBhbiBpdGVyYXRvciByYWlzZXMgYSBgYFN0b3BJdGVyYXRpb25gYFxuZXhjZXB0aW9uKSwgdGhlIHN1aXRlIGluIHRoZSBgYGVsc2VgYCBjbGF1c2UsIGlmIHByZXNlbnQsIGlzIGV4ZWN1dGVkLFxuYW5kIHRoZSBsb29wIHRlcm1pbmF0ZXMuXG5cbkEgYGBicmVha2BgIHN0YXRlbWVudCBleGVjdXRlZCBpbiB0aGUgZmlyc3Qgc3VpdGUgdGVybWluYXRlcyB0aGUgbG9vcFxud2l0aG91dCBleGVjdXRpbmcgdGhlIGBgZWxzZWBgIGNsYXVzZVwncyBzdWl0ZS4gIEEgYGBjb250aW51ZWBgXG5zdGF0ZW1lbnQgZXhlY3V0ZWQgaW4gdGhlIGZpcnN0IHN1aXRlIHNraXBzIHRoZSByZXN0IG9mIHRoZSBzdWl0ZSBhbmRcbmNvbnRpbnVlcyB3aXRoIHRoZSBuZXh0IGl0ZW0sIG9yIHdpdGggdGhlIGBgZWxzZWBgIGNsYXVzZSBpZiB0aGVyZSB3YXNcbm5vIG5leHQgaXRlbS5cblxuVGhlIHN1aXRlIG1heSBhc3NpZ24gdG8gdGhlIHZhcmlhYmxlKHMpIGluIHRoZSB0YXJnZXQgbGlzdDsgdGhpcyBkb2VzXG5ub3QgYWZmZWN0IHRoZSBuZXh0IGl0ZW0gYXNzaWduZWQgdG8gaXQuXG5cbk5hbWVzIGluIHRoZSB0YXJnZXQgbGlzdCBhcmUgbm90IGRlbGV0ZWQgd2hlbiB0aGUgbG9vcCBpcyBmaW5pc2hlZCxcbmJ1dCBpZiB0aGUgc2VxdWVuY2UgaXMgZW1wdHksIGl0IHdpbGwgbm90IGhhdmUgYmVlbiBhc3NpZ25lZCB0byBhdCBhbGxcbmJ5IHRoZSBsb29wLiAgSGludDogdGhlIGJ1aWx0LWluIGZ1bmN0aW9uIGBgcmFuZ2UoKWBgIHJldHVybnMgYW5cbml0ZXJhdG9yIG9mIGludGVnZXJzIHN1aXRhYmxlIHRvIGVtdWxhdGUgdGhlIGVmZmVjdCBvZiBQYXNjYWxcJ3MgYGBmb3JcbmkgOj0gYSB0byBiIGRvYGA7IGUuZy4sIGBgbGlzdChyYW5nZSgzKSlgYCByZXR1cm5zIHRoZSBsaXN0IGBgWzAsIDEsXG4yXWBgLlxuXG5Ob3RlOiBUaGVyZSBpcyBhIHN1YnRsZXR5IHdoZW4gdGhlIHNlcXVlbmNlIGlzIGJlaW5nIG1vZGlmaWVkIGJ5IHRoZSBsb29wXG4gICh0aGlzIGNhbiBvbmx5IG9jY3VyIGZvciBtdXRhYmxlIHNlcXVlbmNlcywgaS5lLiBsaXN0cykuICBBblxuICBpbnRlcm5hbCBjb3VudGVyIGlzIHVzZWQgdG8ga2VlcCB0cmFjayBvZiB3aGljaCBpdGVtIGlzIHVzZWQgbmV4dCxcbiAgYW5kIHRoaXMgaXMgaW5jcmVtZW50ZWQgb24gZWFjaCBpdGVyYXRpb24uICBXaGVuIHRoaXMgY291bnRlciBoYXNcbiAgcmVhY2hlZCB0aGUgbGVuZ3RoIG9mIHRoZSBzZXF1ZW5jZSB0aGUgbG9vcCB0ZXJtaW5hdGVzLiAgVGhpcyBtZWFuc1xuICB0aGF0IGlmIHRoZSBzdWl0ZSBkZWxldGVzIHRoZSBjdXJyZW50IChvciBhIHByZXZpb3VzKSBpdGVtIGZyb20gdGhlXG4gIHNlcXVlbmNlLCB0aGUgbmV4dCBpdGVtIHdpbGwgYmUgc2tpcHBlZCAoc2luY2UgaXQgZ2V0cyB0aGUgaW5kZXggb2ZcbiAgdGhlIGN1cnJlbnQgaXRlbSB3aGljaCBoYXMgYWxyZWFkeSBiZWVuIHRyZWF0ZWQpLiAgTGlrZXdpc2UsIGlmIHRoZVxuICBzdWl0ZSBpbnNlcnRzIGFuIGl0ZW0gaW4gdGhlIHNlcXVlbmNlIGJlZm9yZSB0aGUgY3VycmVudCBpdGVtLCB0aGVcbiAgY3VycmVudCBpdGVtIHdpbGwgYmUgdHJlYXRlZCBhZ2FpbiB0aGUgbmV4dCB0aW1lIHRocm91Z2ggdGhlIGxvb3AuXG4gIFRoaXMgY2FuIGxlYWQgdG8gbmFzdHkgYnVncyB0aGF0IGNhbiBiZSBhdm9pZGVkIGJ5IG1ha2luZyBhXG4gIHRlbXBvcmFyeSBjb3B5IHVzaW5nIGEgc2xpY2Ugb2YgdGhlIHdob2xlIHNlcXVlbmNlLCBlLmcuLFxuXG4gICAgIGZvciB4IGluIGFbOl06XG4gICAgICAgICBpZiB4IDwgMDogYS5yZW1vdmUoeClcbicsCi0gJ2Zvcm1hdHN0cmluZ3MnOiAnXG5Gb3JtYXQgU3RyaW5nIFN5bnRheFxuKioqKioqKioqKioqKioqKioqKipcblxuVGhlIGBgc3RyLmZvcm1hdCgpYGAgbWV0aG9kIGFuZCB0aGUgYGBGb3JtYXR0ZXJgYCBjbGFzcyBzaGFyZSB0aGUgc2FtZVxuc3ludGF4IGZvciBmb3JtYXQgc3RyaW5ncyAoYWx0aG91Z2ggaW4gdGhlIGNhc2Ugb2YgYGBGb3JtYXR0ZXJgYCxcbnN1YmNsYXNzZXMgY2FuIGRlZmluZSB0aGVpciBvd24gZm9ybWF0IHN0cmluZyBzeW50YXgpLlxuXG5Gb3JtYXQgc3RyaW5ncyBjb250YWluICJyZXBsYWNlbWVudCBmaWVsZHMiIHN1cnJvdW5kZWQgYnkgY3VybHkgYnJhY2VzXG5gYHt9YGAuIEFueXRoaW5nIHRoYXQgaXMgbm90IGNvbnRhaW5lZCBpbiBicmFjZXMgaXMgY29uc2lkZXJlZCBsaXRlcmFsXG50ZXh0LCB3aGljaCBpcyBjb3BpZWQgdW5jaGFuZ2VkIHRvIHRoZSBvdXRwdXQuICBJZiB5b3UgbmVlZCB0byBpbmNsdWRlXG5hIGJyYWNlIGNoYXJhY3RlciBpbiB0aGUgbGl0ZXJhbCB0ZXh0LCBpdCBjYW4gYmUgZXNjYXBlZCBieSBkb3VibGluZzpcbmBge3tgYCBhbmQgYGB9fWBgLlxuXG5UaGUgZ3JhbW1hciBmb3IgYSByZXBsYWNlbWVudCBmaWVsZCBpcyBhcyBmb2xsb3dzOlxuXG4gICAgICByZXBsYWNlbWVudF9maWVsZCA6Oj0gInsiIFtmaWVsZF9uYW1lXSBbIiEiIGNvbnZlcnNpb25dIFsiOiIgZm9ybWF0X3NwZWNdICJ9IlxuICAgICAgZmllbGRfbmFtZSAgICAgICAgOjo9IGFyZ19uYW1lICgiLiIgYXR0cmlidXRlX25hbWUgfCAiWyIgZWxlbWVudF9pbmRleCAiXSIpKlxuICAgICAgYXJnX25hbWUgICAgICAgICAgOjo9IFtpZGVudGlmaWVyIHwgaW50ZWdlcl1cbiAgICAgIGF0dHJpYnV0ZV9uYW1lICAgIDo6PSBpZGVudGlmaWVyXG4gICAgICBlbGVtZW50X2luZGV4ICAgICA6Oj0gaW50ZWdlciB8IGluZGV4X3N0cmluZ1xuICAgICAgaW5kZXhfc3RyaW5nICAgICAgOjo9IDxhbnkgc291cmNlIGNoYXJhY3RlciBleGNlcHQgIl0iPiArXG4gICAgICBjb252ZXJzaW9uICAgICAgICA6Oj0gInIiIHwgInMiIHwgImEiXG4gICAgICBmb3JtYXRfc3BlYyAgICAgICA6Oj0gPGRlc2NyaWJlZCBpbiB0aGUgbmV4dCBzZWN0aW9uPlxuXG5JbiBsZXNzIGZvcm1hbCB0ZXJtcywgdGhlIHJlcGxhY2VtZW50IGZpZWxkIGNhbiBzdGFydCB3aXRoIGFcbipmaWVsZF9uYW1lKiB0aGF0IHNwZWNpZmllcyB0aGUgb2JqZWN0IHdob3NlIHZhbHVlIGlzIHRvIGJlIGZvcm1hdHRlZFxuYW5kIGluc2VydGVkIGludG8gdGhlIG91dHB1dCBpbnN0ZWFkIG9mIHRoZSByZXBsYWNlbWVudCBmaWVsZC4gVGhlXG4qZmllbGRfbmFtZSogaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhICAqY29udmVyc2lvbiogZmllbGQsIHdoaWNoIGlzXG5wcmVjZWRlZCBieSBhbiBleGNsYW1hdGlvbiBwb2ludCBgYFwnIVwnYGAsIGFuZCBhICpmb3JtYXRfc3BlYyosIHdoaWNoXG5pcyBwcmVjZWRlZCBieSBhIGNvbG9uIGBgXCc6XCdgYC4gIFRoZXNlIHNwZWNpZnkgYSBub24tZGVmYXVsdCBmb3JtYXRcbmZvciB0aGUgcmVwbGFjZW1lbnQgdmFsdWUuXG5cblNlZSBhbHNvIHRoZSAqRm9ybWF0IFNwZWNpZmljYXRpb24gTWluaS1MYW5ndWFnZSogc2VjdGlvbi5cblxuVGhlICpmaWVsZF9uYW1lKiBpdHNlbGYgYmVnaW5zIHdpdGggYW4gKmFyZ19uYW1lKiB0aGF0IGlzIGVpdGhlclxuZWl0aGVyIGEgbnVtYmVyIG9yIGEga2V5d29yZC4gIElmIGl0XCdzIGEgbnVtYmVyLCBpdCByZWZlcnMgdG8gYVxucG9zaXRpb25hbCBhcmd1bWVudCwgYW5kIGlmIGl0XCdzIGEga2V5d29yZCwgaXQgcmVmZXJzIHRvIGEgbmFtZWRcbmtleXdvcmQgYXJndW1lbnQuICBJZiB0aGUgbnVtZXJpY2FsIGFyZ19uYW1lcyBpbiBhIGZvcm1hdCBzdHJpbmcgYXJlXG4wLCAxLCAyLCAuLi4gaW4gc2VxdWVuY2UsIHRoZXkgY2FuIGFsbCBiZSBvbWl0dGVkIChub3QganVzdCBzb21lKSBhbmRcbnRoZSBudW1iZXJzIDAsIDEsIDIsIC4uLiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgaW5zZXJ0ZWQgaW4gdGhhdCBvcmRlci5cbkJlY2F1c2UgKmFyZ19uYW1lKiBpcyBub3QgcXVvdGUtZGVsaW1pdGVkLCBpdCBpcyBub3QgcG9zc2libGUgdG9cbnNwZWNpZnkgYXJiaXRyYXJ5IGRpY3Rpb25hcnkga2V5cyAoZS5nLiwgdGhlIHN0cmluZ3MgYGBcJzEwXCdgYCBvclxuYGBcJzotXVwnYGApIHdpdGhpbiBhIGZvcm1hdCBzdHJpbmcuIFRoZSAqYXJnX25hbWUqIGNhbiBiZSBmb2xsb3dlZCBieVxuYW55IG51bWJlciBvZiBpbmRleCBvciBhdHRyaWJ1dGUgZXhwcmVzc2lvbnMuIEFuIGV4cHJlc3Npb24gb2YgdGhlXG5mb3JtIGBgXCcubmFtZVwnYGAgc2VsZWN0cyB0aGUgbmFtZWQgYXR0cmlidXRlIHVzaW5nIGBgZ2V0YXR0cigpYGAsXG53aGlsZSBhbiBleHByZXNzaW9uIG9mIHRoZSBmb3JtIGBgXCdbaW5kZXhdXCdgYCBkb2VzIGFuIGluZGV4IGxvb2t1cFxudXNpbmcgYGBfX2dldGl0ZW1fXygpYGAuXG5cbkNoYW5nZWQgaW4gdmVyc2lvbiAzLjE6IFRoZSBwb3NpdGlvbmFsIGFyZ3VtZW50IHNwZWNpZmllcnMgY2FuIGJlXG5vbWl0dGVkLCBzbyBgYFwne30ge31cJ2BgIGlzIGVxdWl2YWxlbnQgdG8gYGBcJ3swfSB7MX1cJ2BgLlxuXG5Tb21lIHNpbXBsZSBmb3JtYXQgc3RyaW5nIGV4YW1wbGVzOlxuXG4gICAiRmlyc3QsIHRob3Ugc2hhbHQgY291bnQgdG8gezB9IiAjIFJlZmVyZW5jZXMgZmlyc3QgcG9zaXRpb25hbCBhcmd1bWVudFxuICAgIkJyaW5nIG1lIGEge30iICAgICAgICAgICAgICAgICAgIyBJbXBsaWNpdGx5IHJlZmVyZW5jZXMgdGhlIGZpcnN0IHBvc2l0aW9uYWwgYXJndW1lbnRcbiAgICJGcm9tIHt9IHRvIHt9IiAgICAgICAgICAgICAgICAgICMgU2FtZSBhcyAiRnJvbSB7MH0gdG8gezF9IlxuICAgIk15IHF1ZXN0IGlzIHtuYW1lfSIgICAgICAgICAgICAgIyBSZWZlcmVuY2VzIGtleXdvcmQgYXJndW1lbnQgXCduYW1lXCdcbiAgICJXZWlnaHQgaW4gdG9ucyB7MC53ZWlnaHR9IiAgICAgICMgXCd3ZWlnaHRcJyBhdHRyaWJ1dGUgb2YgZmlyc3QgcG9zaXRpb25hbCBhcmdcbiAgICJVbml0cyBkZXN0cm95ZWQ6IHtwbGF5ZXJzWzBdfSIgICMgRmlyc3QgZWxlbWVudCBvZiBrZXl3b3JkIGFyZ3VtZW50IFwncGxheWVyc1wnLlxuXG5UaGUgKmNvbnZlcnNpb24qIGZpZWxkIGNhdXNlcyBhIHR5cGUgY29lcmNpb24gYmVmb3JlIGZvcm1hdHRpbmcuXG5Ob3JtYWxseSwgdGhlIGpvYiBvZiBmb3JtYXR0aW5nIGEgdmFsdWUgaXMgZG9uZSBieSB0aGVcbmBgX19mb3JtYXRfXygpYGAgbWV0aG9kIG9mIHRoZSB2YWx1ZSBpdHNlbGYuICBIb3dldmVyLCBpbiBzb21lIGNhc2VzXG5pdCBpcyBkZXNpcmFibGUgdG8gZm9yY2UgYSB0eXBlIHRvIGJlIGZvcm1hdHRlZCBhcyBhIHN0cmluZyxcbm92ZXJyaWRpbmcgaXRzIG93biBkZWZpbml0aW9uIG9mIGZvcm1hdHRpbmcuICBCeSBjb252ZXJ0aW5nIHRoZSB2YWx1ZVxudG8gYSBzdHJpbmcgYmVmb3JlIGNhbGxpbmcgYGBfX2Zvcm1hdF9fKClgYCwgdGhlIG5vcm1hbCBmb3JtYXR0aW5nXG5sb2dpYyBpcyBieXBhc3NlZC5cblxuVGhyZWUgY29udmVyc2lvbiBmbGFncyBhcmUgY3VycmVudGx5IHN1cHBvcnRlZDogYGBcJyFzXCdgYCB3aGljaCBjYWxsc1xuYGBzdHIoKWBgIG9uIHRoZSB2YWx1ZSwgYGBcJyFyXCdgYCB3aGljaCBjYWxscyBgYHJlcHIoKWBgIGFuZCBgYFwnIWFcJ2BgXG53aGljaCBjYWxscyBgYGFzY2lpKClgYC5cblxuU29tZSBleGFtcGxlczpcblxuICAgIkhhcm9sZFwncyBhIGNsZXZlciB7MCFzfSIgICAgICAgICMgQ2FsbHMgc3RyKCkgb24gdGhlIGFyZ3VtZW50IGZpcnN0XG4gICAiQnJpbmcgb3V0IHRoZSBob2x5IHtuYW1lIXJ9IiAgICAjIENhbGxzIHJlcHIoKSBvbiB0aGUgYXJndW1lbnQgZmlyc3RcbiAgICJNb3JlIHshYX0iICAgICAgICAgICAgICAgICAgICAgICMgQ2FsbHMgYXNjaWkoKSBvbiB0aGUgYXJndW1lbnQgZmlyc3RcblxuVGhlICpmb3JtYXRfc3BlYyogZmllbGQgY29udGFpbnMgYSBzcGVjaWZpY2F0aW9uIG9mIGhvdyB0aGUgdmFsdWVcbnNob3VsZCBiZSBwcmVzZW50ZWQsIGluY2x1ZGluZyBzdWNoIGRldGFpbHMgYXMgZmllbGQgd2lkdGgsIGFsaWdubWVudCxcbnBhZGRpbmcsIGRlY2ltYWwgcHJlY2lzaW9uIGFuZCBzbyBvbi4gIEVhY2ggdmFsdWUgdHlwZSBjYW4gZGVmaW5lIGl0c1xub3duICJmb3JtYXR0aW5nIG1pbmktbGFuZ3VhZ2UiIG9yIGludGVycHJldGF0aW9uIG9mIHRoZSAqZm9ybWF0X3NwZWMqLlxuXG5Nb3N0IGJ1aWx0LWluIHR5cGVzIHN1cHBvcnQgYSBjb21tb24gZm9ybWF0dGluZyBtaW5pLWxhbmd1YWdlLCB3aGljaFxuaXMgZGVzY3JpYmVkIGluIHRoZSBuZXh0IHNlY3Rpb24uXG5cbkEgKmZvcm1hdF9zcGVjKiBmaWVsZCBjYW4gYWxzbyBpbmNsdWRlIG5lc3RlZCByZXBsYWNlbWVudCBmaWVsZHNcbndpdGhpbiBpdC4gVGhlc2UgbmVzdGVkIHJlcGxhY2VtZW50IGZpZWxkcyBjYW4gY29udGFpbiBvbmx5IGEgZmllbGRcbm5hbWU7IGNvbnZlcnNpb24gZmxhZ3MgYW5kIGZvcm1hdCBzcGVjaWZpY2F0aW9ucyBhcmUgbm90IGFsbG93ZWQuICBUaGVcbnJlcGxhY2VtZW50IGZpZWxkcyB3aXRoaW4gdGhlIGZvcm1hdF9zcGVjIGFyZSBzdWJzdGl0dXRlZCBiZWZvcmUgdGhlXG4qZm9ybWF0X3NwZWMqIHN0cmluZyBpcyBpbnRlcnByZXRlZC4gVGhpcyBhbGxvd3MgdGhlIGZvcm1hdHRpbmcgb2YgYVxudmFsdWUgdG8gYmUgZHluYW1pY2FsbHkgc3BlY2lmaWVkLlxuXG5TZWUgdGhlICpGb3JtYXQgZXhhbXBsZXMqIHNlY3Rpb24gZm9yIHNvbWUgZXhhbXBsZXMuXG5cblxuRm9ybWF0IFNwZWNpZmljYXRpb24gTWluaS1MYW5ndWFnZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4iRm9ybWF0IHNwZWNpZmljYXRpb25zIiBhcmUgdXNlZCB3aXRoaW4gcmVwbGFjZW1lbnQgZmllbGRzIGNvbnRhaW5lZFxud2l0aGluIGEgZm9ybWF0IHN0cmluZyB0byBkZWZpbmUgaG93IGluZGl2aWR1YWwgdmFsdWVzIGFyZSBwcmVzZW50ZWRcbihzZWUgKkZvcm1hdCBTdHJpbmcgU3ludGF4KikuICBUaGV5IGNhbiBhbHNvIGJlIHBhc3NlZCBkaXJlY3RseSB0byB0aGVcbmJ1aWx0LWluIGBgZm9ybWF0KClgYCBmdW5jdGlvbi4gIEVhY2ggZm9ybWF0dGFibGUgdHlwZSBtYXkgZGVmaW5lIGhvd1xudGhlIGZvcm1hdCBzcGVjaWZpY2F0aW9uIGlzIHRvIGJlIGludGVycHJldGVkLlxuXG5Nb3N0IGJ1aWx0LWluIHR5cGVzIGltcGxlbWVudCB0aGUgZm9sbG93aW5nIG9wdGlvbnMgZm9yIGZvcm1hdFxuc3BlY2lmaWNhdGlvbnMsIGFsdGhvdWdoIHNvbWUgb2YgdGhlIGZvcm1hdHRpbmcgb3B0aW9ucyBhcmUgb25seVxuc3VwcG9ydGVkIGJ5IHRoZSBudW1lcmljIHR5cGVzLlxuXG5BIGdlbmVyYWwgY29udmVudGlvbiBpcyB0aGF0IGFuIGVtcHR5IGZvcm1hdCBzdHJpbmcgKGBgIiJgYCkgcHJvZHVjZXNcbnRoZSBzYW1lIHJlc3VsdCBhcyBpZiB5b3UgaGFkIGNhbGxlZCBgYHN0cigpYGAgb24gdGhlIHZhbHVlLiBBIG5vbi1cbmVtcHR5IGZvcm1hdCBzdHJpbmcgdHlwaWNhbGx5IG1vZGlmaWVzIHRoZSByZXN1bHQuXG5cblRoZSBnZW5lcmFsIGZvcm0gb2YgYSAqc3RhbmRhcmQgZm9ybWF0IHNwZWNpZmllciogaXM6XG5cbiAgIGZvcm1hdF9zcGVjIDo6PSBbW2ZpbGxdYWxpZ25dW3NpZ25dWyNdWzBdW3dpZHRoXVssXVsucHJlY2lzaW9uXVt0eXBlXVxuICAgZmlsbCAgICAgICAgOjo9IDxhIGNoYXJhY3RlciBvdGhlciB0aGFuIFwnfVwnPlxuICAgYWxpZ24gICAgICAgOjo9ICI8IiB8ICI+IiB8ICI9IiB8ICJeIlxuICAgc2lnbiAgICAgICAgOjo9ICIrIiB8ICItIiB8ICIgIlxuICAgd2lkdGggICAgICAgOjo9IGludGVnZXJcbiAgIHByZWNpc2lvbiAgIDo6PSBpbnRlZ2VyXG4gICB0eXBlICAgICAgICA6Oj0gImIiIHwgImMiIHwgImQiIHwgImUiIHwgIkUiIHwgImYiIHwgIkYiIHwgImciIHwgIkciIHwgIm4iIHwgIm8iIHwgInMiIHwgIngiIHwgIlgiIHwgIiUiXG5cblRoZSAqZmlsbCogY2hhcmFjdGVyIGNhbiBiZSBhbnkgY2hhcmFjdGVyIG90aGVyIHRoYW4gXCd7XCcgb3IgXCd9XCcuICBUaGVcbnByZXNlbmNlIG9mIGEgZmlsbCBjaGFyYWN0ZXIgaXMgc2lnbmFsZWQgYnkgdGhlIGNoYXJhY3RlciBmb2xsb3dpbmdcbml0LCB3aGljaCBtdXN0IGJlIG9uZSBvZiB0aGUgYWxpZ25tZW50IG9wdGlvbnMuICBJZiB0aGUgc2Vjb25kXG5jaGFyYWN0ZXIgb2YgKmZvcm1hdF9zcGVjKiBpcyBub3QgYSB2YWxpZCBhbGlnbm1lbnQgb3B0aW9uLCB0aGVuIGl0IGlzXG5hc3N1bWVkIHRoYXQgYm90aCB0aGUgZmlsbCBjaGFyYWN0ZXIgYW5kIHRoZSBhbGlnbm1lbnQgb3B0aW9uIGFyZVxuYWJzZW50LlxuXG5UaGUgbWVhbmluZyBvZiB0aGUgdmFyaW91cyBhbGlnbm1lbnQgb3B0aW9ucyBpcyBhcyBmb2xsb3dzOlxuXG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBPcHRpb24gICAgfCBNZWFuaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICs9PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rXG4gICB8IGBgXCc8XCdgYCAgIHwgRm9yY2VzIHRoZSBmaWVsZCB0byBiZSBsZWZ0LWFsaWduZWQgd2l0aGluIHRoZSBhdmFpbGFibGUgICB8XG4gICB8ICAgICAgICAgICB8IHNwYWNlICh0aGlzIGlzIHRoZSBkZWZhdWx0IGZvciBtb3N0IG9iamVjdHMpLiAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJz5cJ2BgICAgfCBGb3JjZXMgdGhlIGZpZWxkIHRvIGJlIHJpZ2h0LWFsaWduZWQgd2l0aGluIHRoZSBhdmFpbGFibGUgIHxcbiAgIHwgICAgICAgICAgIHwgc3BhY2UgKHRoaXMgaXMgdGhlIGRlZmF1bHQgZm9yIG51bWJlcnMpLiAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwnPVwnYGAgICB8IEZvcmNlcyB0aGUgcGFkZGluZyB0byBiZSBwbGFjZWQgYWZ0ZXIgdGhlIHNpZ24gKGlmIGFueSkgICAgfFxuICAgfCAgICAgICAgICAgfCBidXQgYmVmb3JlIHRoZSBkaWdpdHMuICBUaGlzIGlzIHVzZWQgZm9yIHByaW50aW5nIGZpZWxkcyAgIHxcbiAgIHwgICAgICAgICAgIHwgaW4gdGhlIGZvcm0gXCcrMDAwMDAwMTIwXCcuIFRoaXMgYWxpZ25tZW50IG9wdGlvbiBpcyBvbmx5ICAgIHxcbiAgIHwgICAgICAgICAgIHwgdmFsaWQgZm9yIG51bWVyaWMgdHlwZXMuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwnXlwnYGAgICB8IEZvcmNlcyB0aGUgZmllbGQgdG8gYmUgY2VudGVyZWQgd2l0aGluIHRoZSBhdmFpbGFibGUgICAgICAgfFxuICAgfCAgICAgICAgICAgfCBzcGFjZS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG5cbk5vdGUgdGhhdCB1bmxlc3MgYSBtaW5pbXVtIGZpZWxkIHdpZHRoIGlzIGRlZmluZWQsIHRoZSBmaWVsZCB3aWR0aFxud2lsbCBhbHdheXMgYmUgdGhlIHNhbWUgc2l6ZSBhcyB0aGUgZGF0YSB0byBmaWxsIGl0LCBzbyB0aGF0IHRoZVxuYWxpZ25tZW50IG9wdGlvbiBoYXMgbm8gbWVhbmluZyBpbiB0aGlzIGNhc2UuXG5cblRoZSAqc2lnbiogb3B0aW9uIGlzIG9ubHkgdmFsaWQgZm9yIG51bWJlciB0eXBlcywgYW5kIGNhbiBiZSBvbmUgb2ZcbnRoZSBmb2xsb3dpbmc6XG5cbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IE9wdGlvbiAgICB8IE1lYW5pbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKz09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PStcbiAgIHwgYGBcJytcJ2BgICAgfCBpbmRpY2F0ZXMgdGhhdCBhIHNpZ24gc2hvdWxkIGJlIHVzZWQgZm9yIGJvdGggcG9zaXRpdmUgYXMgIHxcbiAgIHwgICAgICAgICAgIHwgd2VsbCBhcyBuZWdhdGl2ZSBudW1iZXJzLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwnLVwnYGAgICB8IGluZGljYXRlcyB0aGF0IGEgc2lnbiBzaG91bGQgYmUgdXNlZCBvbmx5IGZvciBuZWdhdGl2ZSAgICAgfFxuICAgfCAgICAgICAgICAgfCBudW1iZXJzICh0aGlzIGlzIHRoZSBkZWZhdWx0IGJlaGF2aW9yKS4gICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IHNwYWNlICAgICB8IGluZGljYXRlcyB0aGF0IGEgbGVhZGluZyBzcGFjZSBzaG91bGQgYmUgdXNlZCBvbiBwb3NpdGl2ZSAgfFxuICAgfCAgICAgICAgICAgfCBudW1iZXJzLCBhbmQgYSBtaW51cyBzaWduIG9uIG5lZ2F0aXZlIG51bWJlcnMuICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG5cblRoZSBgYFwnI1wnYGAgb3B0aW9uIGNhdXNlcyB0aGUgImFsdGVybmF0ZSBmb3JtIiB0byBiZSB1c2VkIGZvciB0aGVcbmNvbnZlcnNpb24uICBUaGUgYWx0ZXJuYXRlIGZvcm0gaXMgZGVmaW5lZCBkaWZmZXJlbnRseSBmb3IgZGlmZmVyZW50XG50eXBlcy4gIFRoaXMgb3B0aW9uIGlzIG9ubHkgdmFsaWQgZm9yIGludGVnZXIsIGZsb2F0LCBjb21wbGV4IGFuZFxuRGVjaW1hbCB0eXBlcy4gRm9yIGludGVnZXJzLCB3aGVuIGJpbmFyeSwgb2N0YWwsIG9yIGhleGFkZWNpbWFsIG91dHB1dFxuaXMgdXNlZCwgdGhpcyBvcHRpb24gYWRkcyB0aGUgcHJlZml4IHJlc3BlY3RpdmUgYGBcJzBiXCdgYCwgYGBcJzBvXCdgYCwgb3JcbmBgXCcweFwnYGAgdG8gdGhlIG91dHB1dCB2YWx1ZS4gRm9yIGZsb2F0cywgY29tcGxleCBhbmQgRGVjaW1hbCB0aGVcbmFsdGVybmF0ZSBmb3JtIGNhdXNlcyB0aGUgcmVzdWx0IG9mIHRoZSBjb252ZXJzaW9uIHRvIGFsd2F5cyBjb250YWluIGFcbmRlY2ltYWwtcG9pbnQgY2hhcmFjdGVyLCBldmVuIGlmIG5vIGRpZ2l0cyBmb2xsb3cgaXQuIE5vcm1hbGx5LCBhXG5kZWNpbWFsLXBvaW50IGNoYXJhY3RlciBhcHBlYXJzIGluIHRoZSByZXN1bHQgb2YgdGhlc2UgY29udmVyc2lvbnNcbm9ubHkgaWYgYSBkaWdpdCBmb2xsb3dzIGl0LiBJbiBhZGRpdGlvbiwgZm9yIGBgXCdnXCdgYCBhbmQgYGBcJ0dcJ2BgXG5jb252ZXJzaW9ucywgdHJhaWxpbmcgemVyb3MgYXJlIG5vdCByZW1vdmVkIGZyb20gdGhlIHJlc3VsdC5cblxuVGhlIGBgXCcsXCdgYCBvcHRpb24gc2lnbmFscyB0aGUgdXNlIG9mIGEgY29tbWEgZm9yIGEgdGhvdXNhbmRzXG5zZXBhcmF0b3IuIEZvciBhIGxvY2FsZSBhd2FyZSBzZXBhcmF0b3IsIHVzZSB0aGUgYGBcJ25cJ2BgIGludGVnZXJcbnByZXNlbnRhdGlvbiB0eXBlIGluc3RlYWQuXG5cbkNoYW5nZWQgaW4gdmVyc2lvbiAzLjE6IEFkZGVkIHRoZSBgYFwnLFwnYGAgb3B0aW9uIChzZWUgYWxzbyAqKlBFUFxuMzc4KiopLlxuXG4qd2lkdGgqIGlzIGEgZGVjaW1hbCBpbnRlZ2VyIGRlZmluaW5nIHRoZSBtaW5pbXVtIGZpZWxkIHdpZHRoLiAgSWYgbm90XG5zcGVjaWZpZWQsIHRoZW4gdGhlIGZpZWxkIHdpZHRoIHdpbGwgYmUgZGV0ZXJtaW5lZCBieSB0aGUgY29udGVudC5cblxuSWYgdGhlICp3aWR0aCogZmllbGQgaXMgcHJlY2VkZWQgYnkgYSB6ZXJvIChgYFwnMFwnYGApIGNoYXJhY3RlciwgdGhpc1xuZW5hYmxlcyB6ZXJvLXBhZGRpbmcuICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gYW4gKmFsaWdubWVudCogdHlwZSBvZlxuYGBcJz1cJ2BgIGFuZCBhICpmaWxsKiBjaGFyYWN0ZXIgb2YgYGBcJzBcJ2BgLlxuXG5UaGUgKnByZWNpc2lvbiogaXMgYSBkZWNpbWFsIG51bWJlciBpbmRpY2F0aW5nIGhvdyBtYW55IGRpZ2l0cyBzaG91bGRcbmJlIGRpc3BsYXllZCBhZnRlciB0aGUgZGVjaW1hbCBwb2ludCBmb3IgYSBmbG9hdGluZyBwb2ludCB2YWx1ZVxuZm9ybWF0dGVkIHdpdGggYGBcJ2ZcJ2BgIGFuZCBgYFwnRlwnYGAsIG9yIGJlZm9yZSBhbmQgYWZ0ZXIgdGhlIGRlY2ltYWxcbnBvaW50IGZvciBhIGZsb2F0aW5nIHBvaW50IHZhbHVlIGZvcm1hdHRlZCB3aXRoIGBgXCdnXCdgYCBvciBgYFwnR1wnYGAuXG5Gb3Igbm9uLW51bWJlciB0eXBlcyB0aGUgZmllbGQgaW5kaWNhdGVzIHRoZSBtYXhpbXVtIGZpZWxkIHNpemUgLSBpblxub3RoZXIgd29yZHMsIGhvdyBtYW55IGNoYXJhY3RlcnMgd2lsbCBiZSB1c2VkIGZyb20gdGhlIGZpZWxkIGNvbnRlbnQuXG5UaGUgKnByZWNpc2lvbiogaXMgbm90IGFsbG93ZWQgZm9yIGludGVnZXIgdmFsdWVzLlxuXG5GaW5hbGx5LCB0aGUgKnR5cGUqIGRldGVybWluZXMgaG93IHRoZSBkYXRhIHNob3VsZCBiZSBwcmVzZW50ZWQuXG5cblRoZSBhdmFpbGFibGUgc3RyaW5nIHByZXNlbnRhdGlvbiB0eXBlcyBhcmU6XG5cbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IFR5cGUgICAgICB8IE1lYW5pbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKz09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PStcbiAgIHwgYGBcJ3NcJ2BgICAgfCBTdHJpbmcgZm9ybWF0LiBUaGlzIGlzIHRoZSBkZWZhdWx0IHR5cGUgZm9yIHN0cmluZ3MgYW5kICAgIHxcbiAgIHwgICAgICAgICAgIHwgbWF5IGJlIG9taXR0ZWQuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBOb25lICAgICAgfCBUaGUgc2FtZSBhcyBgYFwnc1wnYGAuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcblxuVGhlIGF2YWlsYWJsZSBpbnRlZ2VyIHByZXNlbnRhdGlvbiB0eXBlcyBhcmU6XG5cbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IFR5cGUgICAgICB8IE1lYW5pbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKz09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PStcbiAgIHwgYGBcJ2JcJ2BgICAgfCBCaW5hcnkgZm9ybWF0LiBPdXRwdXRzIHRoZSBudW1iZXIgaW4gYmFzZSAyLiAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCdjXCdgYCAgIHwgQ2hhcmFjdGVyLiBDb252ZXJ0cyB0aGUgaW50ZWdlciB0byB0aGUgY29ycmVzcG9uZGluZyAgICAgICB8XG4gICB8ICAgICAgICAgICB8IHVuaWNvZGUgY2hhcmFjdGVyIGJlZm9yZSBwcmludGluZy4gICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJ2RcJ2BgICAgfCBEZWNpbWFsIEludGVnZXIuIE91dHB1dHMgdGhlIG51bWJlciBpbiBiYXNlIDEwLiAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCdvXCdgYCAgIHwgT2N0YWwgZm9ybWF0LiBPdXRwdXRzIHRoZSBudW1iZXIgaW4gYmFzZSA4LiAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwneFwnYGAgICB8IEhleCBmb3JtYXQuIE91dHB1dHMgdGhlIG51bWJlciBpbiBiYXNlIDE2LCB1c2luZyBsb3dlci0gICAgfFxuICAgfCAgICAgICAgICAgfCBjYXNlIGxldHRlcnMgZm9yIHRoZSBkaWdpdHMgYWJvdmUgOS4gICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCdYXCdgYCAgIHwgSGV4IGZvcm1hdC4gT3V0cHV0cyB0aGUgbnVtYmVyIGluIGJhc2UgMTYsIHVzaW5nIHVwcGVyLSAgICB8XG4gICB8ICAgICAgICAgICB8IGNhc2UgbGV0dGVycyBmb3IgdGhlIGRpZ2l0cyBhYm92ZSA5LiAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJ25cJ2BgICAgfCBOdW1iZXIuIFRoaXMgaXMgdGhlIHNhbWUgYXMgYGBcJ2RcJ2BgLCBleGNlcHQgdGhhdCBpdCB1c2VzICAgfFxuICAgfCAgICAgICAgICAgfCB0aGUgY3VycmVudCBsb2NhbGUgc2V0dGluZyB0byBpbnNlcnQgdGhlIGFwcHJvcHJpYXRlICAgICAgIHxcbiAgIHwgICAgICAgICAgIHwgbnVtYmVyIHNlcGFyYXRvciBjaGFyYWN0ZXJzLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBOb25lICAgICAgfCBUaGUgc2FtZSBhcyBgYFwnZFwnYGAuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcblxuSW4gYWRkaXRpb24gdG8gdGhlIGFib3ZlIHByZXNlbnRhdGlvbiB0eXBlcywgaW50ZWdlcnMgY2FuIGJlIGZvcm1hdHRlZFxud2l0aCB0aGUgZmxvYXRpbmcgcG9pbnQgcHJlc2VudGF0aW9uIHR5cGVzIGxpc3RlZCBiZWxvdyAoZXhjZXB0XG5gYFwnblwnYGAgYW5kIE5vbmUpLiBXaGVuIGRvaW5nIHNvLCBgYGZsb2F0KClgYCBpcyB1c2VkIHRvIGNvbnZlcnQgdGhlXG5pbnRlZ2VyIHRvIGEgZmxvYXRpbmcgcG9pbnQgbnVtYmVyIGJlZm9yZSBmb3JtYXR0aW5nLlxuXG5UaGUgYXZhaWxhYmxlIHByZXNlbnRhdGlvbiB0eXBlcyBmb3IgZmxvYXRpbmcgcG9pbnQgYW5kIGRlY2ltYWwgdmFsdWVzXG5hcmU6XG5cbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IFR5cGUgICAgICB8IE1lYW5pbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKz09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PStcbiAgIHwgYGBcJ2VcJ2BgICAgfCBFeHBvbmVudCBub3RhdGlvbi4gUHJpbnRzIHRoZSBudW1iZXIgaW4gc2NpZW50aWZpYyAgICAgICAgIHxcbiAgIHwgICAgICAgICAgIHwgbm90YXRpb24gdXNpbmcgdGhlIGxldHRlciBcJ2VcJyB0byBpbmRpY2F0ZSB0aGUgZXhwb25lbnQuICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCdFXCdgYCAgIHwgRXhwb25lbnQgbm90YXRpb24uIFNhbWUgYXMgYGBcJ2VcJ2BgIGV4Y2VwdCBpdCB1c2VzIGFuIHVwcGVyIHxcbiAgIHwgICAgICAgICAgIHwgY2FzZSBcJ0VcJyBhcyB0aGUgc2VwYXJhdG9yIGNoYXJhY3Rlci4gICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCdmXCdgYCAgIHwgRml4ZWQgcG9pbnQuIERpc3BsYXlzIHRoZSBudW1iZXIgYXMgYSBmaXhlZC1wb2ludCBudW1iZXIuICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwnRlwnYGAgICB8IEZpeGVkIHBvaW50LiBTYW1lIGFzIGBgXCdmXCdgYCwgYnV0IGNvbnZlcnRzIGBgbmFuYGAgdG8gICAgICB8XG4gICB8ICAgICAgICAgICB8IGBgTkFOYGAgYW5kIGBgaW5mYGAgdG8gYGBJTkZgYC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJ2dcJ2BgICAgfCBHZW5lcmFsIGZvcm1hdC4gIEZvciBhIGdpdmVuIHByZWNpc2lvbiBgYHAgPj0gMWBgLCB0aGlzICAgIHxcbiAgIHwgICAgICAgICAgIHwgcm91bmRzIHRoZSBudW1iZXIgdG8gYGBwYGAgc2lnbmlmaWNhbnQgZGlnaXRzIGFuZCB0aGVuICAgICB8XG4gICB8ICAgICAgICAgICB8IGZvcm1hdHMgdGhlIHJlc3VsdCBpbiBlaXRoZXIgZml4ZWQtcG9pbnQgZm9ybWF0IG9yIGluICAgICAgfFxuICAgfCAgICAgICAgICAgfCBzY2llbnRpZmljIG5vdGF0aW9uLCBkZXBlbmRpbmcgb24gaXRzIG1hZ25pdHVkZS4gIFRoZSAgICAgIHxcbiAgIHwgICAgICAgICAgIHwgcHJlY2lzZSBydWxlcyBhcmUgYXMgZm9sbG93czogc3VwcG9zZSB0aGF0IHRoZSByZXN1bHQgICAgICB8XG4gICB8ICAgICAgICAgICB8IGZvcm1hdHRlZCB3aXRoIHByZXNlbnRhdGlvbiB0eXBlIGBgXCdlXCdgYCBhbmQgcHJlY2lzaW9uICAgICB8XG4gICB8ICAgICAgICAgICB8IGBgcC0xYGAgd291bGQgaGF2ZSBleHBvbmVudCBgYGV4cGBgLiAgVGhlbiBpZiBgYC00IDw9IGV4cCAgfFxuICAgfCAgICAgICAgICAgfCA8IHBgYCwgdGhlIG51bWJlciBpcyBmb3JtYXR0ZWQgd2l0aCBwcmVzZW50YXRpb24gdHlwZSAgICAgIHxcbiAgIHwgICAgICAgICAgIHwgYGBcJ2ZcJ2BgIGFuZCBwcmVjaXNpb24gYGBwLTEtZXhwYGAuIE90aGVyd2lzZSwgdGhlIG51bWJlciAgIHxcbiAgIHwgICAgICAgICAgIHwgaXMgZm9ybWF0dGVkIHdpdGggcHJlc2VudGF0aW9uIHR5cGUgYGBcJ2VcJ2BgIGFuZCBwcmVjaXNpb24gIHxcbiAgIHwgICAgICAgICAgIHwgYGBwLTFgYC4gSW4gYm90aCBjYXNlcyBpbnNpZ25pZmljYW50IHRyYWlsaW5nIHplcm9zIGFyZSAgICB8XG4gICB8ICAgICAgICAgICB8IHJlbW92ZWQgZnJvbSB0aGUgc2lnbmlmaWNhbmQsIGFuZCB0aGUgZGVjaW1hbCBwb2ludCBpcyAgICAgfFxuICAgfCAgICAgICAgICAgfCBhbHNvIHJlbW92ZWQgaWYgdGhlcmUgYXJlIG5vIHJlbWFpbmluZyBkaWdpdHMgZm9sbG93aW5nICAgIHxcbiAgIHwgICAgICAgICAgIHwgaXQuICBQb3NpdGl2ZSBhbmQgbmVnYXRpdmUgaW5maW5pdHksIHBvc2l0aXZlIGFuZCBuZWdhdGl2ZSB8XG4gICB8ICAgICAgICAgICB8IHplcm8sIGFuZCBuYW5zLCBhcmUgZm9ybWF0dGVkIGFzIGBgaW5mYGAsIGBgLWluZmBgLCBgYDBgYCwgfFxuICAgfCAgICAgICAgICAgfCBgYC0wYGAgYW5kIGBgbmFuYGAgcmVzcGVjdGl2ZWx5LCByZWdhcmRsZXNzIG9mIHRoZSAgICAgICAgIHxcbiAgIHwgICAgICAgICAgIHwgcHJlY2lzaW9uLiAgQSBwcmVjaXNpb24gb2YgYGAwYGAgaXMgdHJlYXRlZCBhcyBlcXVpdmFsZW50ICB8XG4gICB8ICAgICAgICAgICB8IHRvIGEgcHJlY2lzaW9uIG9mIGBgMWBgLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJ0dcJ2BgICAgfCBHZW5lcmFsIGZvcm1hdC4gU2FtZSBhcyBgYFwnZ1wnYGAgZXhjZXB0IHN3aXRjaGVzIHRvIGBgXCdFXCdgYCB8XG4gICB8ICAgICAgICAgICB8IGlmIHRoZSBudW1iZXIgZ2V0cyB0b28gbGFyZ2UuIFRoZSByZXByZXNlbnRhdGlvbnMgb2YgICAgICAgfFxuICAgfCAgICAgICAgICAgfCBpbmZpbml0eSBhbmQgTmFOIGFyZSB1cHBlcmNhc2VkLCB0b28uICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCduXCdgYCAgIHwgTnVtYmVyLiBUaGlzIGlzIHRoZSBzYW1lIGFzIGBgXCdnXCdgYCwgZXhjZXB0IHRoYXQgaXQgdXNlcyAgIHxcbiAgIHwgICAgICAgICAgIHwgdGhlIGN1cnJlbnQgbG9jYWxlIHNldHRpbmcgdG8gaW5zZXJ0IHRoZSBhcHByb3ByaWF0ZSAgICAgICB8XG4gICB8ICAgICAgICAgICB8IG51bWJlciBzZXBhcmF0b3IgY2hhcmFjdGVycy4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJyVcJ2BgICAgfCBQZXJjZW50YWdlLiBNdWx0aXBsaWVzIHRoZSBudW1iZXIgYnkgMTAwIGFuZCBkaXNwbGF5cyBpbiAgIHxcbiAgIHwgICAgICAgICAgIHwgZml4ZWQgKGBgXCdmXCdgYCkgZm9ybWF0LCBmb2xsb3dlZCBieSBhIHBlcmNlbnQgc2lnbi4gICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IE5vbmUgICAgICB8IFNpbWlsYXIgdG8gYGBcJ2dcJ2BgLCBleGNlcHQgd2l0aCBhdCBsZWFzdCBvbmUgZGlnaXQgcGFzdCAgICB8XG4gICB8ICAgICAgICAgICB8IHRoZSBkZWNpbWFsIHBvaW50IGFuZCBhIGRlZmF1bHQgcHJlY2lzaW9uIG9mIDEyLiBUaGlzIGlzICAgfFxuICAgfCAgICAgICAgICAgfCBpbnRlbmRlZCB0byBtYXRjaCBgYHN0cigpYGAsIGV4Y2VwdCB5b3UgY2FuIGFkZCB0aGUgb3RoZXIgIHxcbiAgIHwgICAgICAgICAgIHwgZm9ybWF0IG1vZGlmaWVycy4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuXG5cbkZvcm1hdCBleGFtcGxlc1xuPT09PT09PT09PT09PT09XG5cblRoaXMgc2VjdGlvbiBjb250YWlucyBleGFtcGxlcyBvZiB0aGUgbmV3IGZvcm1hdCBzeW50YXggYW5kIGNvbXBhcmlzb25cbndpdGggdGhlIG9sZCBgYCVgYC1mb3JtYXR0aW5nLlxuXG5JbiBtb3N0IG9mIHRoZSBjYXNlcyB0aGUgc3ludGF4IGlzIHNpbWlsYXIgdG8gdGhlIG9sZFxuYGAlYGAtZm9ybWF0dGluZywgd2l0aCB0aGUgYWRkaXRpb24gb2YgdGhlIGBge31gYCBhbmQgd2l0aCBgYDpgYCB1c2VkXG5pbnN0ZWFkIG9mIGBgJWBgLiBGb3IgZXhhbXBsZSwgYGBcJyUwMy4yZlwnYGAgY2FuIGJlIHRyYW5zbGF0ZWQgdG9cbmBgXCd7OjAzLjJmfVwnYGAuXG5cblRoZSBuZXcgZm9ybWF0IHN5bnRheCBhbHNvIHN1cHBvcnRzIG5ldyBhbmQgZGlmZmVyZW50IG9wdGlvbnMsIHNob3duXG5pbiB0aGUgZm9sbG93IGV4YW1wbGVzLlxuXG5BY2Nlc3NpbmcgYXJndW1lbnRzIGJ5IHBvc2l0aW9uOlxuXG4gICA+Pj4gXCd7MH0sIHsxfSwgezJ9XCcuZm9ybWF0KFwnYVwnLCBcJ2JcJywgXCdjXCcpXG4gICBcJ2EsIGIsIGNcJ1xuICAgPj4+IFwne30sIHt9LCB7fVwnLmZvcm1hdChcJ2FcJywgXCdiXCcsIFwnY1wnKSAgIyAzLjErIG9ubHlcbiAgIFwnYSwgYiwgY1wnXG4gICA+Pj4gXCd7Mn0sIHsxfSwgezB9XCcuZm9ybWF0KFwnYVwnLCBcJ2JcJywgXCdjXCcpXG4gICBcJ2MsIGIsIGFcJ1xuICAgPj4+IFwnezJ9LCB7MX0sIHswfVwnLmZvcm1hdCgqXCdhYmNcJykgICAgICAjIHVucGFja2luZyBhcmd1bWVudCBzZXF1ZW5jZVxuICAgXCdjLCBiLCBhXCdcbiAgID4+PiBcJ3swfXsxfXswfVwnLmZvcm1hdChcJ2FicmFcJywgXCdjYWRcJykgICAjIGFyZ3VtZW50c1wnIGluZGljZXMgY2FuIGJlIHJlcGVhdGVkXG4gICBcJ2FicmFjYWRhYnJhXCdcblxuQWNjZXNzaW5nIGFyZ3VtZW50cyBieSBuYW1lOlxuXG4gICA+Pj4gXCdDb29yZGluYXRlczoge2xhdGl0dWRlfSwge2xvbmdpdHVkZX1cJy5mb3JtYXQobGF0aXR1ZGU9XCczNy4yNE5cJywgbG9uZ2l0dWRlPVwnLTExNS44MVdcJylcbiAgIFwnQ29vcmRpbmF0ZXM6IDM3LjI0TiwgLTExNS44MVdcJ1xuICAgPj4+IGNvb3JkID0ge1wnbGF0aXR1ZGVcJzogXCczNy4yNE5cJywgXCdsb25naXR1ZGVcJzogXCctMTE1LjgxV1wnfVxuICAgPj4+IFwnQ29vcmRpbmF0ZXM6IHtsYXRpdHVkZX0sIHtsb25naXR1ZGV9XCcuZm9ybWF0KCoqY29vcmQpXG4gICBcJ0Nvb3JkaW5hdGVzOiAzNy4yNE4sIC0xMTUuODFXXCdcblxuQWNjZXNzaW5nIGFyZ3VtZW50c1wnIGF0dHJpYnV0ZXM6XG5cbiAgID4+PiBjID0gMy01alxuICAgPj4+IChcJ1RoZSBjb21wbGV4IG51bWJlciB7MH0gaXMgZm9ybWVkIGZyb20gdGhlIHJlYWwgcGFydCB7MC5yZWFsfSBcJ1xuICAgLi4uICBcJ2FuZCB0aGUgaW1hZ2luYXJ5IHBhcnQgezAuaW1hZ30uXCcpLmZvcm1hdChjKVxuICAgXCdUaGUgY29tcGxleCBudW1iZXIgKDMtNWopIGlzIGZvcm1lZCBmcm9tIHRoZSByZWFsIHBhcnQgMy4wIGFuZCB0aGUgaW1hZ2luYXJ5IHBhcnQgLTUuMC5cJ1xuICAgPj4+IGNsYXNzIFBvaW50OlxuICAgLi4uICAgICBkZWYgX19pbml0X18oc2VsZiwgeCwgeSk6XG4gICAuLi4gICAgICAgICBzZWxmLngsIHNlbGYueSA9IHgsIHlcbiAgIC4uLiAgICAgZGVmIF9fc3RyX18oc2VsZik6XG4gICAuLi4gICAgICAgICByZXR1cm4gXCdQb2ludCh7c2VsZi54fSwge3NlbGYueX0pXCcuZm9ybWF0KHNlbGY9c2VsZilcbiAgIC4uLlxuICAgPj4+IHN0cihQb2ludCg0LCAyKSlcbiAgIFwnUG9pbnQoNCwgMilcJ1xuXG5BY2Nlc3NpbmcgYXJndW1lbnRzXCcgaXRlbXM6XG5cbiAgID4+PiBjb29yZCA9ICgzLCA1KVxuICAgPj4+IFwnWDogezBbMF19OyAgWTogezBbMV19XCcuZm9ybWF0KGNvb3JkKVxuICAgXCdYOiAzOyAgWTogNVwnXG5cblJlcGxhY2luZyBgYCVzYGAgYW5kIGBgJXJgYDpcblxuICAgPj4+ICJyZXByKCkgc2hvd3MgcXVvdGVzOiB7IXJ9OyBzdHIoKSBkb2VzblwndDogeyFzfSIuZm9ybWF0KFwndGVzdDFcJywgXCd0ZXN0MlwnKVxuICAgInJlcHIoKSBzaG93cyBxdW90ZXM6IFwndGVzdDFcJzsgc3RyKCkgZG9lc25cJ3Q6IHRlc3QyIlxuXG5BbGlnbmluZyB0aGUgdGV4dCBhbmQgc3BlY2lmeWluZyBhIHdpZHRoOlxuXG4gICA+Pj4gXCd7OjwzMH1cJy5mb3JtYXQoXCdsZWZ0IGFsaWduZWRcJylcbiAgIFwnbGVmdCBhbGlnbmVkICAgICAgICAgICAgICAgICAgXCdcbiAgID4+PiBcJ3s6PjMwfVwnLmZvcm1hdChcJ3JpZ2h0IGFsaWduZWRcJylcbiAgIFwnICAgICAgICAgICAgICAgICByaWdodCBhbGlnbmVkXCdcbiAgID4+PiBcJ3s6XjMwfVwnLmZvcm1hdChcJ2NlbnRlcmVkXCcpXG4gICBcJyAgICAgICAgICAgY2VudGVyZWQgICAgICAgICAgIFwnXG4gICA+Pj4gXCd7OipeMzB9XCcuZm9ybWF0KFwnY2VudGVyZWRcJykgICMgdXNlIFwnKlwnIGFzIGEgZmlsbCBjaGFyXG4gICBcJyoqKioqKioqKioqY2VudGVyZWQqKioqKioqKioqKlwnXG5cblJlcGxhY2luZyBgYCUrZmBgLCBgYCUtZmBgLCBhbmQgYGAlIGZgYCBhbmQgc3BlY2lmeWluZyBhIHNpZ246XG5cbiAgID4+PiBcJ3s6K2Z9OyB7OitmfVwnLmZvcm1hdCgzLjE0LCAtMy4xNCkgICMgc2hvdyBpdCBhbHdheXNcbiAgIFwnKzMuMTQwMDAwOyAtMy4xNDAwMDBcJ1xuICAgPj4+IFwnezogZn07IHs6IGZ9XCcuZm9ybWF0KDMuMTQsIC0zLjE0KSAgIyBzaG93IGEgc3BhY2UgZm9yIHBvc2l0aXZlIG51bWJlcnNcbiAgIFwnIDMuMTQwMDAwOyAtMy4xNDAwMDBcJ1xuICAgPj4+IFwnezotZn07IHs6LWZ9XCcuZm9ybWF0KDMuMTQsIC0zLjE0KSAgIyBzaG93IG9ubHkgdGhlIG1pbnVzIC0tIHNhbWUgYXMgXCd7OmZ9OyB7OmZ9XCdcbiAgIFwnMy4xNDAwMDA7IC0zLjE0MDAwMFwnXG5cblJlcGxhY2luZyBgYCV4YGAgYW5kIGBgJW9gYCBhbmQgY29udmVydGluZyB0aGUgdmFsdWUgdG8gZGlmZmVyZW50XG5iYXNlczpcblxuICAgPj4+ICMgZm9ybWF0IGFsc28gc3VwcG9ydHMgYmluYXJ5IG51bWJlcnNcbiAgID4+PiAiaW50OiB7MDpkfTsgIGhleDogezA6eH07ICBvY3Q6IHswOm99OyAgYmluOiB7MDpifSIuZm9ybWF0KDQyKVxuICAgXCdpbnQ6IDQyOyAgaGV4OiAyYTsgIG9jdDogNTI7ICBiaW46IDEwMTAxMFwnXG4gICA+Pj4gIyB3aXRoIDB4LCAwbywgb3IgMGIgYXMgcHJlZml4OlxuICAgPj4+ICJpbnQ6IHswOmR9OyAgaGV4OiB7MDojeH07ICBvY3Q6IHswOiNvfTsgIGJpbjogezA6I2J9Ii5mb3JtYXQoNDIpXG4gICBcJ2ludDogNDI7ICBoZXg6IDB4MmE7ICBvY3Q6IDBvNTI7ICBiaW46IDBiMTAxMDEwXCdcblxuVXNpbmcgdGhlIGNvbW1hIGFzIGEgdGhvdXNhbmRzIHNlcGFyYXRvcjpcblxuICAgPj4+IFwnezosfVwnLmZvcm1hdCgxMjM0NTY3ODkwKVxuICAgXCcxLDIzNCw1NjcsODkwXCdcblxuRXhwcmVzc2luZyBhIHBlcmNlbnRhZ2U6XG5cbiAgID4+PiBwb2ludHMgPSAxOVxuICAgPj4+IHRvdGFsID0gMjJcbiAgID4+PiBcJ0NvcnJlY3QgYW5zd2VyczogezouMiV9LlwnLmZvcm1hdChwb2ludHMvdG90YWwpXG4gICBcJ0NvcnJlY3QgYW5zd2VyczogODYuMzYlXCdcblxuVXNpbmcgdHlwZS1zcGVjaWZpYyBmb3JtYXR0aW5nOlxuXG4gICA+Pj4gaW1wb3J0IGRhdGV0aW1lXG4gICA+Pj4gZCA9IGRhdGV0aW1lLmRhdGV0aW1lKDIwMTAsIDcsIDQsIDEyLCAxNSwgNTgpXG4gICA+Pj4gXCd7OiVZLSVtLSVkICVIOiVNOiVTfVwnLmZvcm1hdChkKVxuICAgXCcyMDEwLTA3LTA0IDEyOjE1OjU4XCdcblxuTmVzdGluZyBhcmd1bWVudHMgYW5kIG1vcmUgY29tcGxleCBleGFtcGxlczpcblxuICAgPj4+IGZvciBhbGlnbiwgdGV4dCBpbiB6aXAoXCc8Xj5cJywgW1wnbGVmdFwnLCBcJ2NlbnRlclwnLCBcJ3JpZ2h0XCddKTpcbiAgIC4uLiAgICAgXCd7MDp7ZmlsbH17YWxpZ259MTZ9XCcuZm9ybWF0KHRleHQsIGZpbGw9YWxpZ24sIGFsaWduPWFsaWduKVxuICAgLi4uXG4gICBcJ2xlZnQ8PDw8PDw8PDw8PDxcJ1xuICAgXCdeXl5eXmNlbnRlcl5eXl5eXCdcbiAgIFwnPj4+Pj4+Pj4+Pj5yaWdodFwnXG4gICA+Pj5cbiAgID4+PiBvY3RldHMgPSBbMTkyLCAxNjgsIDAsIDFdXG4gICA+Pj4gXCd7OjAyWH17OjAyWH17OjAyWH17OjAyWH1cJy5mb3JtYXQoKm9jdGV0cylcbiAgIFwnQzBBODAwMDFcJ1xuICAgPj4+IGludChfLCAxNilcbiAgIDMyMzIyMzU1MjFcbiAgID4+PlxuICAgPj4+IHdpZHRoID0gNVxuICAgPj4+IGZvciBudW0gaW4gcmFuZ2UoNSwxMik6XG4gICAuLi4gICAgIGZvciBiYXNlIGluIFwnZFhvYlwnOlxuICAgLi4uICAgICAgICAgcHJpbnQoXCd7MDp7d2lkdGh9e2Jhc2V9fVwnLmZvcm1hdChudW0sIGJhc2U9YmFzZSwgd2lkdGg9d2lkdGgpLCBlbmQ9XCcgXCcpXG4gICAuLi4gICAgIHByaW50KClcbiAgIC4uLlxuICAgICAgIDUgICAgIDUgICAgIDUgICAxMDFcbiAgICAgICA2ICAgICA2ICAgICA2ICAgMTEwXG4gICAgICAgNyAgICAgNyAgICAgNyAgIDExMVxuICAgICAgIDggICAgIDggICAgMTAgIDEwMDBcbiAgICAgICA5ICAgICA5ICAgIDExICAxMDAxXG4gICAgICAxMCAgICAgQSAgICAxMiAgMTAxMFxuICAgICAgMTEgICAgIEIgICAgMTMgIDEwMTFcbicsCisgJ2Zvcm1hdHN0cmluZ3MnOiAnXG5Gb3JtYXQgU3RyaW5nIFN5bnRheFxuKioqKioqKioqKioqKioqKioqKipcblxuVGhlIGBgc3RyLmZvcm1hdCgpYGAgbWV0aG9kIGFuZCB0aGUgYGBGb3JtYXR0ZXJgYCBjbGFzcyBzaGFyZSB0aGUgc2FtZVxuc3ludGF4IGZvciBmb3JtYXQgc3RyaW5ncyAoYWx0aG91Z2ggaW4gdGhlIGNhc2Ugb2YgYGBGb3JtYXR0ZXJgYCxcbnN1YmNsYXNzZXMgY2FuIGRlZmluZSB0aGVpciBvd24gZm9ybWF0IHN0cmluZyBzeW50YXgpLlxuXG5Gb3JtYXQgc3RyaW5ncyBjb250YWluICJyZXBsYWNlbWVudCBmaWVsZHMiIHN1cnJvdW5kZWQgYnkgY3VybHkgYnJhY2VzXG5gYHt9YGAuIEFueXRoaW5nIHRoYXQgaXMgbm90IGNvbnRhaW5lZCBpbiBicmFjZXMgaXMgY29uc2lkZXJlZCBsaXRlcmFsXG50ZXh0LCB3aGljaCBpcyBjb3BpZWQgdW5jaGFuZ2VkIHRvIHRoZSBvdXRwdXQuICBJZiB5b3UgbmVlZCB0byBpbmNsdWRlXG5hIGJyYWNlIGNoYXJhY3RlciBpbiB0aGUgbGl0ZXJhbCB0ZXh0LCBpdCBjYW4gYmUgZXNjYXBlZCBieSBkb3VibGluZzpcbmBge3tgYCBhbmQgYGB9fWBgLlxuXG5UaGUgZ3JhbW1hciBmb3IgYSByZXBsYWNlbWVudCBmaWVsZCBpcyBhcyBmb2xsb3dzOlxuXG4gICAgICByZXBsYWNlbWVudF9maWVsZCA6Oj0gInsiIFtmaWVsZF9uYW1lXSBbIiEiIGNvbnZlcnNpb25dIFsiOiIgZm9ybWF0X3NwZWNdICJ9IlxuICAgICAgZmllbGRfbmFtZSAgICAgICAgOjo9IGFyZ19uYW1lICgiLiIgYXR0cmlidXRlX25hbWUgfCAiWyIgZWxlbWVudF9pbmRleCAiXSIpKlxuICAgICAgYXJnX25hbWUgICAgICAgICAgOjo9IFtpZGVudGlmaWVyIHwgaW50ZWdlcl1cbiAgICAgIGF0dHJpYnV0ZV9uYW1lICAgIDo6PSBpZGVudGlmaWVyXG4gICAgICBlbGVtZW50X2luZGV4ICAgICA6Oj0gaW50ZWdlciB8IGluZGV4X3N0cmluZ1xuICAgICAgaW5kZXhfc3RyaW5nICAgICAgOjo9IDxhbnkgc291cmNlIGNoYXJhY3RlciBleGNlcHQgIl0iPiArXG4gICAgICBjb252ZXJzaW9uICAgICAgICA6Oj0gInIiIHwgInMiIHwgImEiXG4gICAgICBmb3JtYXRfc3BlYyAgICAgICA6Oj0gPGRlc2NyaWJlZCBpbiB0aGUgbmV4dCBzZWN0aW9uPlxuXG5JbiBsZXNzIGZvcm1hbCB0ZXJtcywgdGhlIHJlcGxhY2VtZW50IGZpZWxkIGNhbiBzdGFydCB3aXRoIGFcbipmaWVsZF9uYW1lKiB0aGF0IHNwZWNpZmllcyB0aGUgb2JqZWN0IHdob3NlIHZhbHVlIGlzIHRvIGJlIGZvcm1hdHRlZFxuYW5kIGluc2VydGVkIGludG8gdGhlIG91dHB1dCBpbnN0ZWFkIG9mIHRoZSByZXBsYWNlbWVudCBmaWVsZC4gVGhlXG4qZmllbGRfbmFtZSogaXMgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhICAqY29udmVyc2lvbiogZmllbGQsIHdoaWNoIGlzXG5wcmVjZWRlZCBieSBhbiBleGNsYW1hdGlvbiBwb2ludCBgYFwnIVwnYGAsIGFuZCBhICpmb3JtYXRfc3BlYyosIHdoaWNoXG5pcyBwcmVjZWRlZCBieSBhIGNvbG9uIGBgXCc6XCdgYC4gIFRoZXNlIHNwZWNpZnkgYSBub24tZGVmYXVsdCBmb3JtYXRcbmZvciB0aGUgcmVwbGFjZW1lbnQgdmFsdWUuXG5cblNlZSBhbHNvIHRoZSAqRm9ybWF0IFNwZWNpZmljYXRpb24gTWluaS1MYW5ndWFnZSogc2VjdGlvbi5cblxuVGhlICpmaWVsZF9uYW1lKiBpdHNlbGYgYmVnaW5zIHdpdGggYW4gKmFyZ19uYW1lKiB0aGF0IGlzIGVpdGhlclxuZWl0aGVyIGEgbnVtYmVyIG9yIGEga2V5d29yZC4gIElmIGl0XCdzIGEgbnVtYmVyLCBpdCByZWZlcnMgdG8gYVxucG9zaXRpb25hbCBhcmd1bWVudCwgYW5kIGlmIGl0XCdzIGEga2V5d29yZCwgaXQgcmVmZXJzIHRvIGEgbmFtZWRcbmtleXdvcmQgYXJndW1lbnQuICBJZiB0aGUgbnVtZXJpY2FsIGFyZ19uYW1lcyBpbiBhIGZvcm1hdCBzdHJpbmcgYXJlXG4wLCAxLCAyLCAuLi4gaW4gc2VxdWVuY2UsIHRoZXkgY2FuIGFsbCBiZSBvbWl0dGVkIChub3QganVzdCBzb21lKSBhbmRcbnRoZSBudW1iZXJzIDAsIDEsIDIsIC4uLiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgaW5zZXJ0ZWQgaW4gdGhhdCBvcmRlci5cblRoZSAqYXJnX25hbWUqIGNhbiBiZSBmb2xsb3dlZCBieSBhbnkgbnVtYmVyIG9mIGluZGV4IG9yIGF0dHJpYnV0ZVxuZXhwcmVzc2lvbnMuIEFuIGV4cHJlc3Npb24gb2YgdGhlIGZvcm0gYGBcJy5uYW1lXCdgYCBzZWxlY3RzIHRoZSBuYW1lZFxuYXR0cmlidXRlIHVzaW5nIGBgZ2V0YXR0cigpYGAsIHdoaWxlIGFuIGV4cHJlc3Npb24gb2YgdGhlIGZvcm1cbmBgXCdbaW5kZXhdXCdgYCBkb2VzIGFuIGluZGV4IGxvb2t1cCB1c2luZyBgYF9fZ2V0aXRlbV9fKClgYC5cblxuQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogVGhlIHBvc2l0aW9uYWwgYXJndW1lbnQgc3BlY2lmaWVycyBjYW4gYmVcbm9taXR0ZWQsIHNvIGBgXCd7fSB7fVwnYGAgaXMgZXF1aXZhbGVudCB0byBgYFwnezB9IHsxfVwnYGAuXG5cblNvbWUgc2ltcGxlIGZvcm1hdCBzdHJpbmcgZXhhbXBsZXM6XG5cbiAgICJGaXJzdCwgdGhvdSBzaGFsdCBjb3VudCB0byB7MH0iICMgUmVmZXJlbmNlcyBmaXJzdCBwb3NpdGlvbmFsIGFyZ3VtZW50XG4gICAiQnJpbmcgbWUgYSB7fSIgICAgICAgICAgICAgICAgICAjIEltcGxpY2l0bHkgcmVmZXJlbmNlcyB0aGUgZmlyc3QgcG9zaXRpb25hbCBhcmd1bWVudFxuICAgIkZyb20ge30gdG8ge30iICAgICAgICAgICAgICAgICAgIyBTYW1lIGFzICJGcm9tIHswfSB0byB7MX0iXG4gICAiTXkgcXVlc3QgaXMge25hbWV9IiAgICAgICAgICAgICAjIFJlZmVyZW5jZXMga2V5d29yZCBhcmd1bWVudCBcJ25hbWVcJ1xuICAgIldlaWdodCBpbiB0b25zIHswLndlaWdodH0iICAgICAgIyBcJ3dlaWdodFwnIGF0dHJpYnV0ZSBvZiBmaXJzdCBwb3NpdGlvbmFsIGFyZ1xuICAgIlVuaXRzIGRlc3Ryb3llZDoge3BsYXllcnNbMF19IiAgIyBGaXJzdCBlbGVtZW50IG9mIGtleXdvcmQgYXJndW1lbnQgXCdwbGF5ZXJzXCcuXG5cblRoZSAqY29udmVyc2lvbiogZmllbGQgY2F1c2VzIGEgdHlwZSBjb2VyY2lvbiBiZWZvcmUgZm9ybWF0dGluZy5cbk5vcm1hbGx5LCB0aGUgam9iIG9mIGZvcm1hdHRpbmcgYSB2YWx1ZSBpcyBkb25lIGJ5IHRoZVxuYGBfX2Zvcm1hdF9fKClgYCBtZXRob2Qgb2YgdGhlIHZhbHVlIGl0c2VsZi4gIEhvd2V2ZXIsIGluIHNvbWUgY2FzZXNcbml0IGlzIGRlc2lyYWJsZSB0byBmb3JjZSBhIHR5cGUgdG8gYmUgZm9ybWF0dGVkIGFzIGEgc3RyaW5nLFxub3ZlcnJpZGluZyBpdHMgb3duIGRlZmluaXRpb24gb2YgZm9ybWF0dGluZy4gIEJ5IGNvbnZlcnRpbmcgdGhlIHZhbHVlXG50byBhIHN0cmluZyBiZWZvcmUgY2FsbGluZyBgYF9fZm9ybWF0X18oKWBgLCB0aGUgbm9ybWFsIGZvcm1hdHRpbmdcbmxvZ2ljIGlzIGJ5cGFzc2VkLlxuXG5UaHJlZSBjb252ZXJzaW9uIGZsYWdzIGFyZSBjdXJyZW50bHkgc3VwcG9ydGVkOiBgYFwnIXNcJ2BgIHdoaWNoIGNhbGxzXG5gYHN0cigpYGAgb24gdGhlIHZhbHVlLCBgYFwnIXJcJ2BgIHdoaWNoIGNhbGxzIGBgcmVwcigpYGAgYW5kIGBgXCchYVwnYGBcbndoaWNoIGNhbGxzIGBgYXNjaWkoKWBgLlxuXG5Tb21lIGV4YW1wbGVzOlxuXG4gICAiSGFyb2xkXCdzIGEgY2xldmVyIHswIXN9IiAgICAgICAgIyBDYWxscyBzdHIoKSBvbiB0aGUgYXJndW1lbnQgZmlyc3RcbiAgICJCcmluZyBvdXQgdGhlIGhvbHkge25hbWUhcn0iICAgICMgQ2FsbHMgcmVwcigpIG9uIHRoZSBhcmd1bWVudCBmaXJzdFxuICAgIk1vcmUgeyFhfSIgICAgICAgICAgICAgICAgICAgICAgIyBDYWxscyBhc2NpaSgpIG9uIHRoZSBhcmd1bWVudCBmaXJzdFxuXG5UaGUgKmZvcm1hdF9zcGVjKiBmaWVsZCBjb250YWlucyBhIHNwZWNpZmljYXRpb24gb2YgaG93IHRoZSB2YWx1ZVxuc2hvdWxkIGJlIHByZXNlbnRlZCwgaW5jbHVkaW5nIHN1Y2ggZGV0YWlscyBhcyBmaWVsZCB3aWR0aCwgYWxpZ25tZW50LFxucGFkZGluZywgZGVjaW1hbCBwcmVjaXNpb24gYW5kIHNvIG9uLiAgRWFjaCB2YWx1ZSB0eXBlIGNhbiBkZWZpbmUgaXRzXG5vd24gImZvcm1hdHRpbmcgbWluaS1sYW5ndWFnZSIgb3IgaW50ZXJwcmV0YXRpb24gb2YgdGhlICpmb3JtYXRfc3BlYyouXG5cbk1vc3QgYnVpbHQtaW4gdHlwZXMgc3VwcG9ydCBhIGNvbW1vbiBmb3JtYXR0aW5nIG1pbmktbGFuZ3VhZ2UsIHdoaWNoXG5pcyBkZXNjcmliZWQgaW4gdGhlIG5leHQgc2VjdGlvbi5cblxuQSAqZm9ybWF0X3NwZWMqIGZpZWxkIGNhbiBhbHNvIGluY2x1ZGUgbmVzdGVkIHJlcGxhY2VtZW50IGZpZWxkc1xud2l0aGluIGl0LiBUaGVzZSBuZXN0ZWQgcmVwbGFjZW1lbnQgZmllbGRzIGNhbiBjb250YWluIG9ubHkgYSBmaWVsZFxubmFtZTsgY29udmVyc2lvbiBmbGFncyBhbmQgZm9ybWF0IHNwZWNpZmljYXRpb25zIGFyZSBub3QgYWxsb3dlZC4gIFRoZVxucmVwbGFjZW1lbnQgZmllbGRzIHdpdGhpbiB0aGUgZm9ybWF0X3NwZWMgYXJlIHN1YnN0aXR1dGVkIGJlZm9yZSB0aGVcbipmb3JtYXRfc3BlYyogc3RyaW5nIGlzIGludGVycHJldGVkLiBUaGlzIGFsbG93cyB0aGUgZm9ybWF0dGluZyBvZiBhXG52YWx1ZSB0byBiZSBkeW5hbWljYWxseSBzcGVjaWZpZWQuXG5cblNlZSB0aGUgKkZvcm1hdCBleGFtcGxlcyogc2VjdGlvbiBmb3Igc29tZSBleGFtcGxlcy5cblxuXG5Gb3JtYXQgU3BlY2lmaWNhdGlvbiBNaW5pLUxhbmd1YWdlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiJGb3JtYXQgc3BlY2lmaWNhdGlvbnMiIGFyZSB1c2VkIHdpdGhpbiByZXBsYWNlbWVudCBmaWVsZHMgY29udGFpbmVkXG53aXRoaW4gYSBmb3JtYXQgc3RyaW5nIHRvIGRlZmluZSBob3cgaW5kaXZpZHVhbCB2YWx1ZXMgYXJlIHByZXNlbnRlZFxuKHNlZSAqRm9ybWF0IFN0cmluZyBTeW50YXgqKS4gIFRoZXkgY2FuIGFsc28gYmUgcGFzc2VkIGRpcmVjdGx5IHRvIHRoZVxuYnVpbHQtaW4gYGBmb3JtYXQoKWBgIGZ1bmN0aW9uLiAgRWFjaCBmb3JtYXR0YWJsZSB0eXBlIG1heSBkZWZpbmUgaG93XG50aGUgZm9ybWF0IHNwZWNpZmljYXRpb24gaXMgdG8gYmUgaW50ZXJwcmV0ZWQuXG5cbk1vc3QgYnVpbHQtaW4gdHlwZXMgaW1wbGVtZW50IHRoZSBmb2xsb3dpbmcgb3B0aW9ucyBmb3IgZm9ybWF0XG5zcGVjaWZpY2F0aW9ucywgYWx0aG91Z2ggc29tZSBvZiB0aGUgZm9ybWF0dGluZyBvcHRpb25zIGFyZSBvbmx5XG5zdXBwb3J0ZWQgYnkgdGhlIG51bWVyaWMgdHlwZXMuXG5cbkEgZ2VuZXJhbCBjb252ZW50aW9uIGlzIHRoYXQgYW4gZW1wdHkgZm9ybWF0IHN0cmluZyAoYGAiImBgKSBwcm9kdWNlc1xudGhlIHNhbWUgcmVzdWx0IGFzIGlmIHlvdSBoYWQgY2FsbGVkIGBgc3RyKClgYCBvbiB0aGUgdmFsdWUuIEEgbm9uLVxuZW1wdHkgZm9ybWF0IHN0cmluZyB0eXBpY2FsbHkgbW9kaWZpZXMgdGhlIHJlc3VsdC5cblxuVGhlIGdlbmVyYWwgZm9ybSBvZiBhICpzdGFuZGFyZCBmb3JtYXQgc3BlY2lmaWVyKiBpczpcblxuICAgZm9ybWF0X3NwZWMgOjo9IFtbZmlsbF1hbGlnbl1bc2lnbl1bI11bMF1bd2lkdGhdWyxdWy5wcmVjaXNpb25dW3R5cGVdXG4gICBmaWxsICAgICAgICA6Oj0gPGEgY2hhcmFjdGVyIG90aGVyIHRoYW4gXCd9XCc+XG4gICBhbGlnbiAgICAgICA6Oj0gIjwiIHwgIj4iIHwgIj0iIHwgIl4iXG4gICBzaWduICAgICAgICA6Oj0gIisiIHwgIi0iIHwgIiAiXG4gICB3aWR0aCAgICAgICA6Oj0gaW50ZWdlclxuICAgcHJlY2lzaW9uICAgOjo9IGludGVnZXJcbiAgIHR5cGUgICAgICAgIDo6PSAiYiIgfCAiYyIgfCAiZCIgfCAiZSIgfCAiRSIgfCAiZiIgfCAiRiIgfCAiZyIgfCAiRyIgfCAibiIgfCAibyIgfCAicyIgfCAieCIgfCAiWCIgfCAiJSJcblxuVGhlICpmaWxsKiBjaGFyYWN0ZXIgY2FuIGJlIGFueSBjaGFyYWN0ZXIgb3RoZXIgdGhhbiBcJ3tcJyBvciBcJ31cJy4gIFRoZVxucHJlc2VuY2Ugb2YgYSBmaWxsIGNoYXJhY3RlciBpcyBzaWduYWxlZCBieSB0aGUgY2hhcmFjdGVyIGZvbGxvd2luZ1xuaXQsIHdoaWNoIG11c3QgYmUgb25lIG9mIHRoZSBhbGlnbm1lbnQgb3B0aW9ucy4gIElmIHRoZSBzZWNvbmRcbmNoYXJhY3RlciBvZiAqZm9ybWF0X3NwZWMqIGlzIG5vdCBhIHZhbGlkIGFsaWdubWVudCBvcHRpb24sIHRoZW4gaXQgaXNcbmFzc3VtZWQgdGhhdCBib3RoIHRoZSBmaWxsIGNoYXJhY3RlciBhbmQgdGhlIGFsaWdubWVudCBvcHRpb24gYXJlXG5hYnNlbnQuXG5cblRoZSBtZWFuaW5nIG9mIHRoZSB2YXJpb3VzIGFsaWdubWVudCBvcHRpb25zIGlzIGFzIGZvbGxvd3M6XG5cbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IE9wdGlvbiAgICB8IE1lYW5pbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKz09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PStcbiAgIHwgYGBcJzxcJ2BgICAgfCBGb3JjZXMgdGhlIGZpZWxkIHRvIGJlIGxlZnQtYWxpZ25lZCB3aXRoaW4gdGhlIGF2YWlsYWJsZSAgIHxcbiAgIHwgICAgICAgICAgIHwgc3BhY2UgKHRoaXMgaXMgdGhlIGRlZmF1bHQgZm9yIG1vc3Qgb2JqZWN0cykuICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwnPlwnYGAgICB8IEZvcmNlcyB0aGUgZmllbGQgdG8gYmUgcmlnaHQtYWxpZ25lZCB3aXRoaW4gdGhlIGF2YWlsYWJsZSAgfFxuICAgfCAgICAgICAgICAgfCBzcGFjZSAodGhpcyBpcyB0aGUgZGVmYXVsdCBmb3IgbnVtYmVycykuICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCc9XCdgYCAgIHwgRm9yY2VzIHRoZSBwYWRkaW5nIHRvIGJlIHBsYWNlZCBhZnRlciB0aGUgc2lnbiAoaWYgYW55KSAgICB8XG4gICB8ICAgICAgICAgICB8IGJ1dCBiZWZvcmUgdGhlIGRpZ2l0cy4gIFRoaXMgaXMgdXNlZCBmb3IgcHJpbnRpbmcgZmllbGRzICAgfFxuICAgfCAgICAgICAgICAgfCBpbiB0aGUgZm9ybSBcJyswMDAwMDAxMjBcJy4gVGhpcyBhbGlnbm1lbnQgb3B0aW9uIGlzIG9ubHkgICAgfFxuICAgfCAgICAgICAgICAgfCB2YWxpZCBmb3IgbnVtZXJpYyB0eXBlcy4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCdeXCdgYCAgIHwgRm9yY2VzIHRoZSBmaWVsZCB0byBiZSBjZW50ZXJlZCB3aXRoaW4gdGhlIGF2YWlsYWJsZSAgICAgICB8XG4gICB8ICAgICAgICAgICB8IHNwYWNlLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcblxuTm90ZSB0aGF0IHVubGVzcyBhIG1pbmltdW0gZmllbGQgd2lkdGggaXMgZGVmaW5lZCwgdGhlIGZpZWxkIHdpZHRoXG53aWxsIGFsd2F5cyBiZSB0aGUgc2FtZSBzaXplIGFzIHRoZSBkYXRhIHRvIGZpbGwgaXQsIHNvIHRoYXQgdGhlXG5hbGlnbm1lbnQgb3B0aW9uIGhhcyBubyBtZWFuaW5nIGluIHRoaXMgY2FzZS5cblxuVGhlICpzaWduKiBvcHRpb24gaXMgb25seSB2YWxpZCBmb3IgbnVtYmVyIHR5cGVzLCBhbmQgY2FuIGJlIG9uZSBvZlxudGhlIGZvbGxvd2luZzpcblxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgT3B0aW9uICAgIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArPT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09K1xuICAgfCBgYFwnK1wnYGAgICB8IGluZGljYXRlcyB0aGF0IGEgc2lnbiBzaG91bGQgYmUgdXNlZCBmb3IgYm90aCBwb3NpdGl2ZSBhcyAgfFxuICAgfCAgICAgICAgICAgfCB3ZWxsIGFzIG5lZ2F0aXZlIG51bWJlcnMuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCctXCdgYCAgIHwgaW5kaWNhdGVzIHRoYXQgYSBzaWduIHNob3VsZCBiZSB1c2VkIG9ubHkgZm9yIG5lZ2F0aXZlICAgICB8XG4gICB8ICAgICAgICAgICB8IG51bWJlcnMgKHRoaXMgaXMgdGhlIGRlZmF1bHQgYmVoYXZpb3IpLiAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgc3BhY2UgICAgIHwgaW5kaWNhdGVzIHRoYXQgYSBsZWFkaW5nIHNwYWNlIHNob3VsZCBiZSB1c2VkIG9uIHBvc2l0aXZlICB8XG4gICB8ICAgICAgICAgICB8IG51bWJlcnMsIGFuZCBhIG1pbnVzIHNpZ24gb24gbmVnYXRpdmUgbnVtYmVycy4gICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcblxuVGhlIGBgXCcjXCdgYCBvcHRpb24gY2F1c2VzIHRoZSAiYWx0ZXJuYXRlIGZvcm0iIHRvIGJlIHVzZWQgZm9yIHRoZVxuY29udmVyc2lvbi4gIFRoZSBhbHRlcm5hdGUgZm9ybSBpcyBkZWZpbmVkIGRpZmZlcmVudGx5IGZvciBkaWZmZXJlbnRcbnR5cGVzLiAgVGhpcyBvcHRpb24gaXMgb25seSB2YWxpZCBmb3IgaW50ZWdlciwgZmxvYXQsIGNvbXBsZXggYW5kXG5EZWNpbWFsIHR5cGVzLiBGb3IgaW50ZWdlcnMsIHdoZW4gYmluYXJ5LCBvY3RhbCwgb3IgaGV4YWRlY2ltYWwgb3V0cHV0XG5pcyB1c2VkLCB0aGlzIG9wdGlvbiBhZGRzIHRoZSBwcmVmaXggcmVzcGVjdGl2ZSBgYFwnMGJcJ2BgLCBgYFwnMG9cJ2BgLCBvclxuYGBcJzB4XCdgYCB0byB0aGUgb3V0cHV0IHZhbHVlLiBGb3IgZmxvYXRzLCBjb21wbGV4IGFuZCBEZWNpbWFsIHRoZVxuYWx0ZXJuYXRlIGZvcm0gY2F1c2VzIHRoZSByZXN1bHQgb2YgdGhlIGNvbnZlcnNpb24gdG8gYWx3YXlzIGNvbnRhaW4gYVxuZGVjaW1hbC1wb2ludCBjaGFyYWN0ZXIsIGV2ZW4gaWYgbm8gZGlnaXRzIGZvbGxvdyBpdC4gTm9ybWFsbHksIGFcbmRlY2ltYWwtcG9pbnQgY2hhcmFjdGVyIGFwcGVhcnMgaW4gdGhlIHJlc3VsdCBvZiB0aGVzZSBjb252ZXJzaW9uc1xub25seSBpZiBhIGRpZ2l0IGZvbGxvd3MgaXQuIEluIGFkZGl0aW9uLCBmb3IgYGBcJ2dcJ2BgIGFuZCBgYFwnR1wnYGBcbmNvbnZlcnNpb25zLCB0cmFpbGluZyB6ZXJvcyBhcmUgbm90IHJlbW92ZWQgZnJvbSB0aGUgcmVzdWx0LlxuXG5UaGUgYGBcJyxcJ2BgIG9wdGlvbiBzaWduYWxzIHRoZSB1c2Ugb2YgYSBjb21tYSBmb3IgYSB0aG91c2FuZHNcbnNlcGFyYXRvci4gRm9yIGEgbG9jYWxlIGF3YXJlIHNlcGFyYXRvciwgdXNlIHRoZSBgYFwnblwnYGAgaW50ZWdlclxucHJlc2VudGF0aW9uIHR5cGUgaW5zdGVhZC5cblxuQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogQWRkZWQgdGhlIGBgXCcsXCdgYCBvcHRpb24gKHNlZSBhbHNvICoqUEVQXG4zNzgqKikuXG5cbip3aWR0aCogaXMgYSBkZWNpbWFsIGludGVnZXIgZGVmaW5pbmcgdGhlIG1pbmltdW0gZmllbGQgd2lkdGguICBJZiBub3RcbnNwZWNpZmllZCwgdGhlbiB0aGUgZmllbGQgd2lkdGggd2lsbCBiZSBkZXRlcm1pbmVkIGJ5IHRoZSBjb250ZW50LlxuXG5JZiB0aGUgKndpZHRoKiBmaWVsZCBpcyBwcmVjZWRlZCBieSBhIHplcm8gKGBgXCcwXCdgYCkgY2hhcmFjdGVyLCB0aGlzXG5lbmFibGVzIHplcm8tcGFkZGluZy4gIFRoaXMgaXMgZXF1aXZhbGVudCB0byBhbiAqYWxpZ25tZW50KiB0eXBlIG9mXG5gYFwnPVwnYGAgYW5kIGEgKmZpbGwqIGNoYXJhY3RlciBvZiBgYFwnMFwnYGAuXG5cblRoZSAqcHJlY2lzaW9uKiBpcyBhIGRlY2ltYWwgbnVtYmVyIGluZGljYXRpbmcgaG93IG1hbnkgZGlnaXRzIHNob3VsZFxuYmUgZGlzcGxheWVkIGFmdGVyIHRoZSBkZWNpbWFsIHBvaW50IGZvciBhIGZsb2F0aW5nIHBvaW50IHZhbHVlXG5mb3JtYXR0ZWQgd2l0aCBgYFwnZlwnYGAgYW5kIGBgXCdGXCdgYCwgb3IgYmVmb3JlIGFuZCBhZnRlciB0aGUgZGVjaW1hbFxucG9pbnQgZm9yIGEgZmxvYXRpbmcgcG9pbnQgdmFsdWUgZm9ybWF0dGVkIHdpdGggYGBcJ2dcJ2BgIG9yIGBgXCdHXCdgYC5cbkZvciBub24tbnVtYmVyIHR5cGVzIHRoZSBmaWVsZCBpbmRpY2F0ZXMgdGhlIG1heGltdW0gZmllbGQgc2l6ZSAtIGluXG5vdGhlciB3b3JkcywgaG93IG1hbnkgY2hhcmFjdGVycyB3aWxsIGJlIHVzZWQgZnJvbSB0aGUgZmllbGQgY29udGVudC5cblRoZSAqcHJlY2lzaW9uKiBpcyBub3QgYWxsb3dlZCBmb3IgaW50ZWdlciB2YWx1ZXMuXG5cbkZpbmFsbHksIHRoZSAqdHlwZSogZGV0ZXJtaW5lcyBob3cgdGhlIGRhdGEgc2hvdWxkIGJlIHByZXNlbnRlZC5cblxuVGhlIGF2YWlsYWJsZSBzdHJpbmcgcHJlc2VudGF0aW9uIHR5cGVzIGFyZTpcblxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgVHlwZSAgICAgIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArPT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09K1xuICAgfCBgYFwnc1wnYGAgICB8IFN0cmluZyBmb3JtYXQuIFRoaXMgaXMgdGhlIGRlZmF1bHQgdHlwZSBmb3Igc3RyaW5ncyBhbmQgICAgfFxuICAgfCAgICAgICAgICAgfCBtYXkgYmUgb21pdHRlZC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IE5vbmUgICAgICB8IFRoZSBzYW1lIGFzIGBgXCdzXCdgYC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuXG5UaGUgYXZhaWxhYmxlIGludGVnZXIgcHJlc2VudGF0aW9uIHR5cGVzIGFyZTpcblxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgVHlwZSAgICAgIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArPT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09K1xuICAgfCBgYFwnYlwnYGAgICB8IEJpbmFyeSBmb3JtYXQuIE91dHB1dHMgdGhlIG51bWJlciBpbiBiYXNlIDIuICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJ2NcJ2BgICAgfCBDaGFyYWN0ZXIuIENvbnZlcnRzIHRoZSBpbnRlZ2VyIHRvIHRoZSBjb3JyZXNwb25kaW5nICAgICAgIHxcbiAgIHwgICAgICAgICAgIHwgdW5pY29kZSBjaGFyYWN0ZXIgYmVmb3JlIHByaW50aW5nLiAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwnZFwnYGAgICB8IERlY2ltYWwgSW50ZWdlci4gT3V0cHV0cyB0aGUgbnVtYmVyIGluIGJhc2UgMTAuICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJ29cJ2BgICAgfCBPY3RhbCBmb3JtYXQuIE91dHB1dHMgdGhlIG51bWJlciBpbiBiYXNlIDguICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCd4XCdgYCAgIHwgSGV4IGZvcm1hdC4gT3V0cHV0cyB0aGUgbnVtYmVyIGluIGJhc2UgMTYsIHVzaW5nIGxvd2VyLSAgICB8XG4gICB8ICAgICAgICAgICB8IGNhc2UgbGV0dGVycyBmb3IgdGhlIGRpZ2l0cyBhYm92ZSA5LiAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJ1hcJ2BgICAgfCBIZXggZm9ybWF0LiBPdXRwdXRzIHRoZSBudW1iZXIgaW4gYmFzZSAxNiwgdXNpbmcgdXBwZXItICAgIHxcbiAgIHwgICAgICAgICAgIHwgY2FzZSBsZXR0ZXJzIGZvciB0aGUgZGlnaXRzIGFib3ZlIDkuICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwnblwnYGAgICB8IE51bWJlci4gVGhpcyBpcyB0aGUgc2FtZSBhcyBgYFwnZFwnYGAsIGV4Y2VwdCB0aGF0IGl0IHVzZXMgICB8XG4gICB8ICAgICAgICAgICB8IHRoZSBjdXJyZW50IGxvY2FsZSBzZXR0aW5nIHRvIGluc2VydCB0aGUgYXBwcm9wcmlhdGUgICAgICAgfFxuICAgfCAgICAgICAgICAgfCBudW1iZXIgc2VwYXJhdG9yIGNoYXJhY3RlcnMuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IE5vbmUgICAgICB8IFRoZSBzYW1lIGFzIGBgXCdkXCdgYC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuXG5JbiBhZGRpdGlvbiB0byB0aGUgYWJvdmUgcHJlc2VudGF0aW9uIHR5cGVzLCBpbnRlZ2VycyBjYW4gYmUgZm9ybWF0dGVkXG53aXRoIHRoZSBmbG9hdGluZyBwb2ludCBwcmVzZW50YXRpb24gdHlwZXMgbGlzdGVkIGJlbG93IChleGNlcHRcbmBgXCduXCdgYCBhbmQgTm9uZSkuIFdoZW4gZG9pbmcgc28sIGBgZmxvYXQoKWBgIGlzIHVzZWQgdG8gY29udmVydCB0aGVcbmludGVnZXIgdG8gYSBmbG9hdGluZyBwb2ludCBudW1iZXIgYmVmb3JlIGZvcm1hdHRpbmcuXG5cblRoZSBhdmFpbGFibGUgcHJlc2VudGF0aW9uIHR5cGVzIGZvciBmbG9hdGluZyBwb2ludCBhbmQgZGVjaW1hbCB2YWx1ZXNcbmFyZTpcblxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgVHlwZSAgICAgIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArPT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09K1xuICAgfCBgYFwnZVwnYGAgICB8IEV4cG9uZW50IG5vdGF0aW9uLiBQcmludHMgdGhlIG51bWJlciBpbiBzY2llbnRpZmljICAgICAgICAgfFxuICAgfCAgICAgICAgICAgfCBub3RhdGlvbiB1c2luZyB0aGUgbGV0dGVyIFwnZVwnIHRvIGluZGljYXRlIHRoZSBleHBvbmVudC4gICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJ0VcJ2BgICAgfCBFeHBvbmVudCBub3RhdGlvbi4gU2FtZSBhcyBgYFwnZVwnYGAgZXhjZXB0IGl0IHVzZXMgYW4gdXBwZXIgfFxuICAgfCAgICAgICAgICAgfCBjYXNlIFwnRVwnIGFzIHRoZSBzZXBhcmF0b3IgY2hhcmFjdGVyLiAgICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJ2ZcJ2BgICAgfCBGaXhlZCBwb2ludC4gRGlzcGxheXMgdGhlIG51bWJlciBhcyBhIGZpeGVkLXBvaW50IG51bWJlci4gIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG4gICB8IGBgXCdGXCdgYCAgIHwgRml4ZWQgcG9pbnQuIFNhbWUgYXMgYGBcJ2ZcJ2BgLCBidXQgY29udmVydHMgYGBuYW5gYCB0byAgICAgIHxcbiAgIHwgICAgICAgICAgIHwgYGBOQU5gYCBhbmQgYGBpbmZgYCB0byBgYElORmBgLiAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwnZ1wnYGAgICB8IEdlbmVyYWwgZm9ybWF0LiAgRm9yIGEgZ2l2ZW4gcHJlY2lzaW9uIGBgcCA+PSAxYGAsIHRoaXMgICAgfFxuICAgfCAgICAgICAgICAgfCByb3VuZHMgdGhlIG51bWJlciB0byBgYHBgYCBzaWduaWZpY2FudCBkaWdpdHMgYW5kIHRoZW4gICAgIHxcbiAgIHwgICAgICAgICAgIHwgZm9ybWF0cyB0aGUgcmVzdWx0IGluIGVpdGhlciBmaXhlZC1wb2ludCBmb3JtYXQgb3IgaW4gICAgICB8XG4gICB8ICAgICAgICAgICB8IHNjaWVudGlmaWMgbm90YXRpb24sIGRlcGVuZGluZyBvbiBpdHMgbWFnbml0dWRlLiAgVGhlICAgICAgfFxuICAgfCAgICAgICAgICAgfCBwcmVjaXNlIHJ1bGVzIGFyZSBhcyBmb2xsb3dzOiBzdXBwb3NlIHRoYXQgdGhlIHJlc3VsdCAgICAgIHxcbiAgIHwgICAgICAgICAgIHwgZm9ybWF0dGVkIHdpdGggcHJlc2VudGF0aW9uIHR5cGUgYGBcJ2VcJ2BgIGFuZCBwcmVjaXNpb24gICAgIHxcbiAgIHwgICAgICAgICAgIHwgYGBwLTFgYCB3b3VsZCBoYXZlIGV4cG9uZW50IGBgZXhwYGAuICBUaGVuIGlmIGBgLTQgPD0gZXhwICB8XG4gICB8ICAgICAgICAgICB8IDwgcGBgLCB0aGUgbnVtYmVyIGlzIGZvcm1hdHRlZCB3aXRoIHByZXNlbnRhdGlvbiB0eXBlICAgICAgfFxuICAgfCAgICAgICAgICAgfCBgYFwnZlwnYGAgYW5kIHByZWNpc2lvbiBgYHAtMS1leHBgYC4gT3RoZXJ3aXNlLCB0aGUgbnVtYmVyICAgfFxuICAgfCAgICAgICAgICAgfCBpcyBmb3JtYXR0ZWQgd2l0aCBwcmVzZW50YXRpb24gdHlwZSBgYFwnZVwnYGAgYW5kIHByZWNpc2lvbiAgfFxuICAgfCAgICAgICAgICAgfCBgYHAtMWBgLiBJbiBib3RoIGNhc2VzIGluc2lnbmlmaWNhbnQgdHJhaWxpbmcgemVyb3MgYXJlICAgIHxcbiAgIHwgICAgICAgICAgIHwgcmVtb3ZlZCBmcm9tIHRoZSBzaWduaWZpY2FuZCwgYW5kIHRoZSBkZWNpbWFsIHBvaW50IGlzICAgICB8XG4gICB8ICAgICAgICAgICB8IGFsc28gcmVtb3ZlZCBpZiB0aGVyZSBhcmUgbm8gcmVtYWluaW5nIGRpZ2l0cyBmb2xsb3dpbmcgICAgfFxuICAgfCAgICAgICAgICAgfCBpdC4gIFBvc2l0aXZlIGFuZCBuZWdhdGl2ZSBpbmZpbml0eSwgcG9zaXRpdmUgYW5kIG5lZ2F0aXZlIHxcbiAgIHwgICAgICAgICAgIHwgemVybywgYW5kIG5hbnMsIGFyZSBmb3JtYXR0ZWQgYXMgYGBpbmZgYCwgYGAtaW5mYGAsIGBgMGBgLCB8XG4gICB8ICAgICAgICAgICB8IGBgLTBgYCBhbmQgYGBuYW5gYCByZXNwZWN0aXZlbHksIHJlZ2FyZGxlc3Mgb2YgdGhlICAgICAgICAgfFxuICAgfCAgICAgICAgICAgfCBwcmVjaXNpb24uICBBIHByZWNpc2lvbiBvZiBgYDBgYCBpcyB0cmVhdGVkIGFzIGVxdWl2YWxlbnQgIHxcbiAgIHwgICAgICAgICAgIHwgdG8gYSBwcmVjaXNpb24gb2YgYGAxYGAuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwnR1wnYGAgICB8IEdlbmVyYWwgZm9ybWF0LiBTYW1lIGFzIGBgXCdnXCdgYCBleGNlcHQgc3dpdGNoZXMgdG8gYGBcJ0VcJ2BgIHxcbiAgIHwgICAgICAgICAgIHwgaWYgdGhlIG51bWJlciBnZXRzIHRvbyBsYXJnZS4gVGhlIHJlcHJlc2VudGF0aW9ucyBvZiAgICAgICB8XG4gICB8ICAgICAgICAgICB8IGluZmluaXR5IGFuZCBOYU4gYXJlIHVwcGVyY2FzZWQsIHRvby4gICAgICAgICAgICAgICAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgYGBcJ25cJ2BgICAgfCBOdW1iZXIuIFRoaXMgaXMgdGhlIHNhbWUgYXMgYGBcJ2dcJ2BgLCBleGNlcHQgdGhhdCBpdCB1c2VzICAgfFxuICAgfCAgICAgICAgICAgfCB0aGUgY3VycmVudCBsb2NhbGUgc2V0dGluZyB0byBpbnNlcnQgdGhlIGFwcHJvcHJpYXRlICAgICAgIHxcbiAgIHwgICAgICAgICAgIHwgbnVtYmVyIHNlcGFyYXRvciBjaGFyYWN0ZXJzLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4gICArLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuICAgfCBgYFwnJVwnYGAgICB8IFBlcmNlbnRhZ2UuIE11bHRpcGxpZXMgdGhlIG51bWJlciBieSAxMDAgYW5kIGRpc3BsYXlzIGluICAgfFxuICAgfCAgICAgICAgICAgfCBmaXhlZCAoYGBcJ2ZcJ2BgKSBmb3JtYXQsIGZvbGxvd2VkIGJ5IGEgcGVyY2VudCBzaWduLiAgICAgICAgfFxuICAgKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbiAgIHwgTm9uZSAgICAgIHwgU2ltaWxhciB0byBgYFwnZ1wnYGAsIGV4Y2VwdCB3aXRoIGF0IGxlYXN0IG9uZSBkaWdpdCBwYXN0ICAgIHxcbiAgIHwgICAgICAgICAgIHwgdGhlIGRlY2ltYWwgcG9pbnQgYW5kIGEgZGVmYXVsdCBwcmVjaXNpb24gb2YgMTIuIFRoaXMgaXMgICB8XG4gICB8ICAgICAgICAgICB8IGludGVuZGVkIHRvIG1hdGNoIGBgc3RyKClgYCwgZXhjZXB0IHlvdSBjYW4gYWRkIHRoZSBvdGhlciAgfFxuICAgfCAgICAgICAgICAgfCBmb3JtYXQgbW9kaWZpZXJzLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiAgICstLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG5cblxuRm9ybWF0IGV4YW1wbGVzXG49PT09PT09PT09PT09PT1cblxuVGhpcyBzZWN0aW9uIGNvbnRhaW5zIGV4YW1wbGVzIG9mIHRoZSBuZXcgZm9ybWF0IHN5bnRheCBhbmQgY29tcGFyaXNvblxud2l0aCB0aGUgb2xkIGBgJWBgLWZvcm1hdHRpbmcuXG5cbkluIG1vc3Qgb2YgdGhlIGNhc2VzIHRoZSBzeW50YXggaXMgc2ltaWxhciB0byB0aGUgb2xkXG5gYCVgYC1mb3JtYXR0aW5nLCB3aXRoIHRoZSBhZGRpdGlvbiBvZiB0aGUgYGB7fWBgIGFuZCB3aXRoIGBgOmBgIHVzZWRcbmluc3RlYWQgb2YgYGAlYGAuIEZvciBleGFtcGxlLCBgYFwnJTAzLjJmXCdgYCBjYW4gYmUgdHJhbnNsYXRlZCB0b1xuYGBcJ3s6MDMuMmZ9XCdgYC5cblxuVGhlIG5ldyBmb3JtYXQgc3ludGF4IGFsc28gc3VwcG9ydHMgbmV3IGFuZCBkaWZmZXJlbnQgb3B0aW9ucywgc2hvd25cbmluIHRoZSBmb2xsb3cgZXhhbXBsZXMuXG5cbkFjY2Vzc2luZyBhcmd1bWVudHMgYnkgcG9zaXRpb246XG5cbiAgID4+PiBcJ3swfSwgezF9LCB7Mn1cJy5mb3JtYXQoXCdhXCcsIFwnYlwnLCBcJ2NcJylcbiAgIFwnYSwgYiwgY1wnXG4gICA+Pj4gXCd7fSwge30sIHt9XCcuZm9ybWF0KFwnYVwnLCBcJ2JcJywgXCdjXCcpICAjIDMuMSsgb25seVxuICAgXCdhLCBiLCBjXCdcbiAgID4+PiBcJ3syfSwgezF9LCB7MH1cJy5mb3JtYXQoXCdhXCcsIFwnYlwnLCBcJ2NcJylcbiAgIFwnYywgYiwgYVwnXG4gICA+Pj4gXCd7Mn0sIHsxfSwgezB9XCcuZm9ybWF0KCpcJ2FiY1wnKSAgICAgICMgdW5wYWNraW5nIGFyZ3VtZW50IHNlcXVlbmNlXG4gICBcJ2MsIGIsIGFcJ1xuICAgPj4+IFwnezB9ezF9ezB9XCcuZm9ybWF0KFwnYWJyYVwnLCBcJ2NhZFwnKSAgICMgYXJndW1lbnRzXCcgaW5kaWNlcyBjYW4gYmUgcmVwZWF0ZWRcbiAgIFwnYWJyYWNhZGFicmFcJ1xuXG5BY2Nlc3NpbmcgYXJndW1lbnRzIGJ5IG5hbWU6XG5cbiAgID4+PiBcJ0Nvb3JkaW5hdGVzOiB7bGF0aXR1ZGV9LCB7bG9uZ2l0dWRlfVwnLmZvcm1hdChsYXRpdHVkZT1cJzM3LjI0TlwnLCBsb25naXR1ZGU9XCctMTE1LjgxV1wnKVxuICAgXCdDb29yZGluYXRlczogMzcuMjROLCAtMTE1LjgxV1wnXG4gICA+Pj4gY29vcmQgPSB7XCdsYXRpdHVkZVwnOiBcJzM3LjI0TlwnLCBcJ2xvbmdpdHVkZVwnOiBcJy0xMTUuODFXXCd9XG4gICA+Pj4gXCdDb29yZGluYXRlczoge2xhdGl0dWRlfSwge2xvbmdpdHVkZX1cJy5mb3JtYXQoKipjb29yZClcbiAgIFwnQ29vcmRpbmF0ZXM6IDM3LjI0TiwgLTExNS44MVdcJ1xuXG5BY2Nlc3NpbmcgYXJndW1lbnRzXCcgYXR0cmlidXRlczpcblxuICAgPj4+IGMgPSAzLTVqXG4gICA+Pj4gKFwnVGhlIGNvbXBsZXggbnVtYmVyIHswfSBpcyBmb3JtZWQgZnJvbSB0aGUgcmVhbCBwYXJ0IHswLnJlYWx9IFwnXG4gICAuLi4gIFwnYW5kIHRoZSBpbWFnaW5hcnkgcGFydCB7MC5pbWFnfS5cJykuZm9ybWF0KGMpXG4gICBcJ1RoZSBjb21wbGV4IG51bWJlciAoMy01aikgaXMgZm9ybWVkIGZyb20gdGhlIHJlYWwgcGFydCAzLjAgYW5kIHRoZSBpbWFnaW5hcnkgcGFydCAtNS4wLlwnXG4gICA+Pj4gY2xhc3MgUG9pbnQ6XG4gICAuLi4gICAgIGRlZiBfX2luaXRfXyhzZWxmLCB4LCB5KTpcbiAgIC4uLiAgICAgICAgIHNlbGYueCwgc2VsZi55ID0geCwgeVxuICAgLi4uICAgICBkZWYgX19zdHJfXyhzZWxmKTpcbiAgIC4uLiAgICAgICAgIHJldHVybiBcJ1BvaW50KHtzZWxmLnh9LCB7c2VsZi55fSlcJy5mb3JtYXQoc2VsZj1zZWxmKVxuICAgLi4uXG4gICA+Pj4gc3RyKFBvaW50KDQsIDIpKVxuICAgXCdQb2ludCg0LCAyKVwnXG5cbkFjY2Vzc2luZyBhcmd1bWVudHNcJyBpdGVtczpcblxuICAgPj4+IGNvb3JkID0gKDMsIDUpXG4gICA+Pj4gXCdYOiB7MFswXX07ICBZOiB7MFsxXX1cJy5mb3JtYXQoY29vcmQpXG4gICBcJ1g6IDM7ICBZOiA1XCdcblxuUmVwbGFjaW5nIGBgJXNgYCBhbmQgYGAlcmBgOlxuXG4gICA+Pj4gInJlcHIoKSBzaG93cyBxdW90ZXM6IHshcn07IHN0cigpIGRvZXNuXCd0OiB7IXN9Ii5mb3JtYXQoXCd0ZXN0MVwnLCBcJ3Rlc3QyXCcpXG4gICAicmVwcigpIHNob3dzIHF1b3RlczogXCd0ZXN0MVwnOyBzdHIoKSBkb2VzblwndDogdGVzdDIiXG5cbkFsaWduaW5nIHRoZSB0ZXh0IGFuZCBzcGVjaWZ5aW5nIGEgd2lkdGg6XG5cbiAgID4+PiBcJ3s6PDMwfVwnLmZvcm1hdChcJ2xlZnQgYWxpZ25lZFwnKVxuICAgXCdsZWZ0IGFsaWduZWQgICAgICAgICAgICAgICAgICBcJ1xuICAgPj4+IFwnezo+MzB9XCcuZm9ybWF0KFwncmlnaHQgYWxpZ25lZFwnKVxuICAgXCcgICAgICAgICAgICAgICAgIHJpZ2h0IGFsaWduZWRcJ1xuICAgPj4+IFwnezpeMzB9XCcuZm9ybWF0KFwnY2VudGVyZWRcJylcbiAgIFwnICAgICAgICAgICBjZW50ZXJlZCAgICAgICAgICAgXCdcbiAgID4+PiBcJ3s6Kl4zMH1cJy5mb3JtYXQoXCdjZW50ZXJlZFwnKSAgIyB1c2UgXCcqXCcgYXMgYSBmaWxsIGNoYXJcbiAgIFwnKioqKioqKioqKipjZW50ZXJlZCoqKioqKioqKioqXCdcblxuUmVwbGFjaW5nIGBgJStmYGAsIGBgJS1mYGAsIGFuZCBgYCUgZmBgIGFuZCBzcGVjaWZ5aW5nIGEgc2lnbjpcblxuICAgPj4+IFwnezorZn07IHs6K2Z9XCcuZm9ybWF0KDMuMTQsIC0zLjE0KSAgIyBzaG93IGl0IGFsd2F5c1xuICAgXCcrMy4xNDAwMDA7IC0zLjE0MDAwMFwnXG4gICA+Pj4gXCd7OiBmfTsgezogZn1cJy5mb3JtYXQoMy4xNCwgLTMuMTQpICAjIHNob3cgYSBzcGFjZSBmb3IgcG9zaXRpdmUgbnVtYmVyc1xuICAgXCcgMy4xNDAwMDA7IC0zLjE0MDAwMFwnXG4gICA+Pj4gXCd7Oi1mfTsgezotZn1cJy5mb3JtYXQoMy4xNCwgLTMuMTQpICAjIHNob3cgb25seSB0aGUgbWludXMgLS0gc2FtZSBhcyBcJ3s6Zn07IHs6Zn1cJ1xuICAgXCczLjE0MDAwMDsgLTMuMTQwMDAwXCdcblxuUmVwbGFjaW5nIGBgJXhgYCBhbmQgYGAlb2BgIGFuZCBjb252ZXJ0aW5nIHRoZSB2YWx1ZSB0byBkaWZmZXJlbnRcbmJhc2VzOlxuXG4gICA+Pj4gIyBmb3JtYXQgYWxzbyBzdXBwb3J0cyBiaW5hcnkgbnVtYmVyc1xuICAgPj4+ICJpbnQ6IHswOmR9OyAgaGV4OiB7MDp4fTsgIG9jdDogezA6b307ICBiaW46IHswOmJ9Ii5mb3JtYXQoNDIpXG4gICBcJ2ludDogNDI7ICBoZXg6IDJhOyAgb2N0OiA1MjsgIGJpbjogMTAxMDEwXCdcbiAgID4+PiAjIHdpdGggMHgsIDBvLCBvciAwYiBhcyBwcmVmaXg6XG4gICA+Pj4gImludDogezA6ZH07ICBoZXg6IHswOiN4fTsgIG9jdDogezA6I299OyAgYmluOiB7MDojYn0iLmZvcm1hdCg0MilcbiAgIFwnaW50OiA0MjsgIGhleDogMHgyYTsgIG9jdDogMG81MjsgIGJpbjogMGIxMDEwMTBcJ1xuXG5Vc2luZyB0aGUgY29tbWEgYXMgYSB0aG91c2FuZHMgc2VwYXJhdG9yOlxuXG4gICA+Pj4gXCd7Oix9XCcuZm9ybWF0KDEyMzQ1Njc4OTApXG4gICBcJzEsMjM0LDU2Nyw4OTBcJ1xuXG5FeHByZXNzaW5nIGEgcGVyY2VudGFnZTpcblxuICAgPj4+IHBvaW50cyA9IDE5XG4gICA+Pj4gdG90YWwgPSAyMlxuICAgPj4+IFwnQ29ycmVjdCBhbnN3ZXJzOiB7Oi4yJX0uXCcuZm9ybWF0KHBvaW50cy90b3RhbClcbiAgIFwnQ29ycmVjdCBhbnN3ZXJzOiA4Ni4zNiVcJ1xuXG5Vc2luZyB0eXBlLXNwZWNpZmljIGZvcm1hdHRpbmc6XG5cbiAgID4+PiBpbXBvcnQgZGF0ZXRpbWVcbiAgID4+PiBkID0gZGF0ZXRpbWUuZGF0ZXRpbWUoMjAxMCwgNywgNCwgMTIsIDE1LCA1OClcbiAgID4+PiBcJ3s6JVktJW0tJWQgJUg6JU06JVN9XCcuZm9ybWF0KGQpXG4gICBcJzIwMTAtMDctMDQgMTI6MTU6NThcJ1xuXG5OZXN0aW5nIGFyZ3VtZW50cyBhbmQgbW9yZSBjb21wbGV4IGV4YW1wbGVzOlxuXG4gICA+Pj4gZm9yIGFsaWduLCB0ZXh0IGluIHppcChcJzxePlwnLCBbXCdsZWZ0XCcsIFwnY2VudGVyXCcsIFwncmlnaHRcJ10pOlxuICAgLi4uICAgICBcJ3swOntmaWxsfXthbGlnbn0xNn1cJy5mb3JtYXQodGV4dCwgZmlsbD1hbGlnbiwgYWxpZ249YWxpZ24pXG4gICAuLi5cbiAgIFwnbGVmdDw8PDw8PDw8PDw8PFwnXG4gICBcJ15eXl5eY2VudGVyXl5eXl5cJ1xuICAgXCc+Pj4+Pj4+Pj4+PnJpZ2h0XCdcbiAgID4+PlxuICAgPj4+IG9jdGV0cyA9IFsxOTIsIDE2OCwgMCwgMV1cbiAgID4+PiBcJ3s6MDJYfXs6MDJYfXs6MDJYfXs6MDJYfVwnLmZvcm1hdCgqb2N0ZXRzKVxuICAgXCdDMEE4MDAwMVwnXG4gICA+Pj4gaW50KF8sIDE2KVxuICAgMzIzMjIzNTUyMVxuICAgPj4+XG4gICA+Pj4gd2lkdGggPSA1XG4gICA+Pj4gZm9yIG51bSBpbiByYW5nZSg1LDEyKTpcbiAgIC4uLiAgICAgZm9yIGJhc2UgaW4gXCdkWG9iXCc6XG4gICAuLi4gICAgICAgICBwcmludChcJ3swOnt3aWR0aH17YmFzZX19XCcuZm9ybWF0KG51bSwgYmFzZT1iYXNlLCB3aWR0aD13aWR0aCksIGVuZD1cJyBcJylcbiAgIC4uLiAgICAgcHJpbnQoKVxuICAgLi4uXG4gICAgICAgNSAgICAgNSAgICAgNSAgIDEwMVxuICAgICAgIDYgICAgIDYgICAgIDYgICAxMTBcbiAgICAgICA3ICAgICA3ICAgICA3ICAgMTExXG4gICAgICAgOCAgICAgOCAgICAxMCAgMTAwMFxuICAgICAgIDkgICAgIDkgICAgMTEgIDEwMDFcbiAgICAgIDEwICAgICBBICAgIDEyICAxMDEwXG4gICAgICAxMSAgICAgQiAgICAxMyAgMTAxMVxuJywKICAnZnVuY3Rpb24nOiAnXG5GdW5jdGlvbiBkZWZpbml0aW9uc1xuKioqKioqKioqKioqKioqKioqKipcblxuQSBmdW5jdGlvbiBkZWZpbml0aW9uIGRlZmluZXMgYSB1c2VyLWRlZmluZWQgZnVuY3Rpb24gb2JqZWN0IChzZWVcbnNlY3Rpb24gKlRoZSBzdGFuZGFyZCB0eXBlIGhpZXJhcmNoeSopOlxuXG4gICBmdW5jZGVmICAgICAgICA6Oj0gW2RlY29yYXRvcnNdICJkZWYiIGZ1bmNuYW1lICIoIiBbcGFyYW1ldGVyX2xpc3RdICIpIiBbIi0+IiBleHByZXNzaW9uXSAiOiIgc3VpdGVcbiAgIGRlY29yYXRvcnMgICAgIDo6PSBkZWNvcmF0b3IrXG4gICBkZWNvcmF0b3IgICAgICA6Oj0gIkAiIGRvdHRlZF9uYW1lIFsiKCIgW2FyZ3VtZW50X2xpc3QgWyIsIl1dICIpIl0gTkVXTElORVxuICAgZG90dGVkX25hbWUgICAgOjo9IGlkZW50aWZpZXIgKCIuIiBpZGVudGlmaWVyKSpcbiAgIHBhcmFtZXRlcl9saXN0IDo6PSAoZGVmcGFyYW1ldGVyICIsIikqXG4gICAgICAgICAgICAgICAgICAgICAgKCAgIioiIFtwYXJhbWV0ZXJdICgiLCIgZGVmcGFyYW1ldGVyKSpcbiAgICAgICAgICAgICAgICAgICAgICBbLCAiKioiIHBhcmFtZXRlcl1cbiAgICAgICAgICAgICAgICAgICAgICB8ICIqKiIgcGFyYW1ldGVyXG4gICAgICAgICAgICAgICAgICAgICAgfCBkZWZwYXJhbWV0ZXIgWyIsIl0gKVxuICAgcGFyYW1ldGVyICAgICAgOjo9IGlkZW50aWZpZXIgWyI6IiBleHByZXNzaW9uXVxuICAgZGVmcGFyYW1ldGVyICAgOjo9IHBhcmFtZXRlciBbIj0iIGV4cHJlc3Npb25dXG4gICBmdW5jbmFtZSAgICAgICA6Oj0gaWRlbnRpZmllclxuXG5BIGZ1bmN0aW9uIGRlZmluaXRpb24gaXMgYW4gZXhlY3V0YWJsZSBzdGF0ZW1lbnQuICBJdHMgZXhlY3V0aW9uIGJpbmRzXG50aGUgZnVuY3Rpb24gbmFtZSBpbiB0aGUgY3VycmVudCBsb2NhbCBuYW1lc3BhY2UgdG8gYSBmdW5jdGlvbiBvYmplY3RcbihhIHdyYXBwZXIgYXJvdW5kIHRoZSBleGVjdXRhYmxlIGNvZGUgZm9yIHRoZSBmdW5jdGlvbikuICBUaGlzXG5mdW5jdGlvbiBvYmplY3QgY29udGFpbnMgYSByZWZlcmVuY2UgdG8gdGhlIGN1cnJlbnQgZ2xvYmFsIG5hbWVzcGFjZVxuYXMgdGhlIGdsb2JhbCBuYW1lc3BhY2UgdG8gYmUgdXNlZCB3aGVuIHRoZSBmdW5jdGlvbiBpcyBjYWxsZWQuXG5cblRoZSBmdW5jdGlvbiBkZWZpbml0aW9uIGRvZXMgbm90IGV4ZWN1dGUgdGhlIGZ1bmN0aW9uIGJvZHk7IHRoaXMgZ2V0c1xuZXhlY3V0ZWQgb25seSB3aGVuIHRoZSBmdW5jdGlvbiBpcyBjYWxsZWQuIFszXVxuXG5BIGZ1bmN0aW9uIGRlZmluaXRpb24gbWF5IGJlIHdyYXBwZWQgYnkgb25lIG9yIG1vcmUgKmRlY29yYXRvcipcbmV4cHJlc3Npb25zLiBEZWNvcmF0b3IgZXhwcmVzc2lvbnMgYXJlIGV2YWx1YXRlZCB3aGVuIHRoZSBmdW5jdGlvbiBpc1xuZGVmaW5lZCwgaW4gdGhlIHNjb3BlIHRoYXQgY29udGFpbnMgdGhlIGZ1bmN0aW9uIGRlZmluaXRpb24uICBUaGVcbnJlc3VsdCBtdXN0IGJlIGEgY2FsbGFibGUsIHdoaWNoIGlzIGludm9rZWQgd2l0aCB0aGUgZnVuY3Rpb24gb2JqZWN0XG5hcyB0aGUgb25seSBhcmd1bWVudC4gVGhlIHJldHVybmVkIHZhbHVlIGlzIGJvdW5kIHRvIHRoZSBmdW5jdGlvbiBuYW1lXG5pbnN0ZWFkIG9mIHRoZSBmdW5jdGlvbiBvYmplY3QuICBNdWx0aXBsZSBkZWNvcmF0b3JzIGFyZSBhcHBsaWVkIGluXG5uZXN0ZWQgZmFzaGlvbi4gRm9yIGV4YW1wbGUsIHRoZSBmb2xsb3dpbmcgY29kZVxuXG4gICBAZjEoYXJnKVxuICAgQGYyXG4gICBkZWYgZnVuYygpOiBwYXNzXG5cbmlzIGVxdWl2YWxlbnQgdG9cblxuICAgZGVmIGZ1bmMoKTogcGFzc1xuICAgZnVuYyA9IGYxKGFyZykoZjIoZnVuYykpXG5cbldoZW4gb25lIG9yIG1vcmUgcGFyYW1ldGVycyBoYXZlIHRoZSBmb3JtICpwYXJhbWV0ZXIqIGBgPWBgXG4qZXhwcmVzc2lvbiosIHRoZSBmdW5jdGlvbiBpcyBzYWlkIHRvIGhhdmUgImRlZmF1bHQgcGFyYW1ldGVyIHZhbHVlcy4iXG5Gb3IgYSBwYXJhbWV0ZXIgd2l0aCBhIGRlZmF1bHQgdmFsdWUsIHRoZSBjb3JyZXNwb25kaW5nIGFyZ3VtZW50IG1heVxuYmUgb21pdHRlZCBmcm9tIGEgY2FsbCwgaW4gd2hpY2ggY2FzZSB0aGUgcGFyYW1ldGVyXCdzIGRlZmF1bHQgdmFsdWUgaXNcbnN1YnN0aXR1dGVkLiAgSWYgYSBwYXJhbWV0ZXIgaGFzIGEgZGVmYXVsdCB2YWx1ZSwgYWxsIGZvbGxvd2luZ1xucGFyYW1ldGVycyB1cCB1bnRpbCB0aGUgImBgKmBgIiBtdXN0IGFsc28gaGF2ZSBhIGRlZmF1bHQgdmFsdWUgLS0tXG50aGlzIGlzIGEgc3ludGFjdGljIHJlc3RyaWN0aW9uIHRoYXQgaXMgbm90IGV4cHJlc3NlZCBieSB0aGUgZ3JhbW1hci5cblxuKipEZWZhdWx0IHBhcmFtZXRlciB2YWx1ZXMgYXJlIGV2YWx1YXRlZCB3aGVuIHRoZSBmdW5jdGlvbiBkZWZpbml0aW9uXG5pcyBleGVjdXRlZC4qKiBUaGlzIG1lYW5zIHRoYXQgdGhlIGV4cHJlc3Npb24gaXMgZXZhbHVhdGVkIG9uY2UsIHdoZW5cbnRoZSBmdW5jdGlvbiBpcyBkZWZpbmVkLCBhbmQgdGhhdCB0aGF0IHNhbWUgInByZS1jb21wdXRlZCIgdmFsdWUgaXNcbnVzZWQgZm9yIGVhY2ggY2FsbC4gIFRoaXMgaXMgZXNwZWNpYWxseSBpbXBvcnRhbnQgdG8gdW5kZXJzdGFuZCB3aGVuIGFcbmRlZmF1bHQgcGFyYW1ldGVyIGlzIGEgbXV0YWJsZSBvYmplY3QsIHN1Y2ggYXMgYSBsaXN0IG9yIGEgZGljdGlvbmFyeTpcbmlmIHRoZSBmdW5jdGlvbiBtb2RpZmllcyB0aGUgb2JqZWN0IChlLmcuIGJ5IGFwcGVuZGluZyBhbiBpdGVtIHRvIGFcbmxpc3QpLCB0aGUgZGVmYXVsdCB2YWx1ZSBpcyBpbiBlZmZlY3QgbW9kaWZpZWQuIFRoaXMgaXMgZ2VuZXJhbGx5IG5vdFxud2hhdCB3YXMgaW50ZW5kZWQuICBBIHdheSBhcm91bmQgdGhpcyBpcyB0byB1c2UgYGBOb25lYGAgYXMgdGhlXG5kZWZhdWx0LCBhbmQgZXhwbGljaXRseSB0ZXN0IGZvciBpdCBpbiB0aGUgYm9keSBvZiB0aGUgZnVuY3Rpb24sIGUuZy46XG5cbiAgIGRlZiB3aGF0c19vbl90aGVfdGVsbHkocGVuZ3Vpbj1Ob25lKTpcbiAgICAgICBpZiBwZW5ndWluIGlzIE5vbmU6XG4gICAgICAgICAgIHBlbmd1aW4gPSBbXVxuICAgICAgIHBlbmd1aW4uYXBwZW5kKCJwcm9wZXJ0eSBvZiB0aGUgem9vIilcbiAgICAgICByZXR1cm4gcGVuZ3VpblxuXG5GdW5jdGlvbiBjYWxsIHNlbWFudGljcyBhcmUgZGVzY3JpYmVkIGluIG1vcmUgZGV0YWlsIGluIHNlY3Rpb25cbipDYWxscyouIEEgZnVuY3Rpb24gY2FsbCBhbHdheXMgYXNzaWducyB2YWx1ZXMgdG8gYWxsIHBhcmFtZXRlcnNcbm1lbnRpb25lZCBpbiB0aGUgcGFyYW1ldGVyIGxpc3QsIGVpdGhlciBmcm9tIHBvc2l0aW9uIGFyZ3VtZW50cywgZnJvbVxua2V5d29yZCBhcmd1bWVudHMsIG9yIGZyb20gZGVmYXVsdCB2YWx1ZXMuICBJZiB0aGUgZm9ybVxuImBgKmlkZW50aWZpZXJgYCIgaXMgcHJlc2VudCwgaXQgaXMgaW5pdGlhbGl6ZWQgdG8gYSB0dXBsZSByZWNlaXZpbmdcbmFueSBleGNlc3MgcG9zaXRpb25hbCBwYXJhbWV0ZXJzLCBkZWZhdWx0aW5nIHRvIHRoZSBlbXB0eSB0dXBsZS4gIElmXG50aGUgZm9ybSAiYGAqKmlkZW50aWZpZXJgYCIgaXMgcHJlc2VudCwgaXQgaXMgaW5pdGlhbGl6ZWQgdG8gYSBuZXdcbmRpY3Rpb25hcnkgcmVjZWl2aW5nIGFueSBleGNlc3Mga2V5d29yZCBhcmd1bWVudHMsIGRlZmF1bHRpbmcgdG8gYSBuZXdcbmVtcHR5IGRpY3Rpb25hcnkuIFBhcmFtZXRlcnMgYWZ0ZXIgImBgKmBgIiBvciAiYGAqaWRlbnRpZmllcmBgIiBhcmVcbmtleXdvcmQtb25seSBwYXJhbWV0ZXJzIGFuZCBtYXkgb25seSBiZSBwYXNzZWQgdXNlZCBrZXl3b3JkIGFyZ3VtZW50cy5cblxuUGFyYW1ldGVycyBtYXkgaGF2ZSBhbm5vdGF0aW9ucyBvZiB0aGUgZm9ybSAiYGA6IGV4cHJlc3Npb25gYCJcbmZvbGxvd2luZyB0aGUgcGFyYW1ldGVyIG5hbWUuICBBbnkgcGFyYW1ldGVyIG1heSBoYXZlIGFuIGFubm90YXRpb25cbmV2ZW4gdGhvc2Ugb2YgdGhlIGZvcm0gYGAqaWRlbnRpZmllcmBgIG9yIGBgKippZGVudGlmaWVyYGAuICBGdW5jdGlvbnNcbm1heSBoYXZlICJyZXR1cm4iIGFubm90YXRpb24gb2YgdGhlIGZvcm0gImBgLT4gZXhwcmVzc2lvbmBgIiBhZnRlciB0aGVcbnBhcmFtZXRlciBsaXN0LiAgVGhlc2UgYW5ub3RhdGlvbnMgY2FuIGJlIGFueSB2YWxpZCBQeXRob24gZXhwcmVzc2lvblxuYW5kIGFyZSBldmFsdWF0ZWQgd2hlbiB0aGUgZnVuY3Rpb24gZGVmaW5pdGlvbiBpcyBleGVjdXRlZC5cbkFubm90YXRpb25zIG1heSBiZSBldmFsdWF0ZWQgaW4gYSBkaWZmZXJlbnQgb3JkZXIgdGhhbiB0aGV5IGFwcGVhciBpblxudGhlIHNvdXJjZSBjb2RlLiAgVGhlIHByZXNlbmNlIG9mIGFubm90YXRpb25zIGRvZXMgbm90IGNoYW5nZSB0aGVcbnNlbWFudGljcyBvZiBhIGZ1bmN0aW9uLiAgVGhlIGFubm90YXRpb24gdmFsdWVzIGFyZSBhdmFpbGFibGUgYXNcbnZhbHVlcyBvZiBhIGRpY3Rpb25hcnkga2V5ZWQgYnkgdGhlIHBhcmFtZXRlcnNcJyBuYW1lcyBpbiB0aGVcbmBgX19hbm5vdGF0aW9uc19fYGAgYXR0cmlidXRlIG9mIHRoZSBmdW5jdGlvbiBvYmplY3QuXG5cbkl0IGlzIGFsc28gcG9zc2libGUgdG8gY3JlYXRlIGFub255bW91cyBmdW5jdGlvbnMgKGZ1bmN0aW9ucyBub3QgYm91bmRcbnRvIGEgbmFtZSksIGZvciBpbW1lZGlhdGUgdXNlIGluIGV4cHJlc3Npb25zLiAgVGhpcyB1c2VzIGxhbWJkYSBmb3JtcyxcbmRlc2NyaWJlZCBpbiBzZWN0aW9uICpMYW1iZGFzKi4gIE5vdGUgdGhhdCB0aGUgbGFtYmRhIGZvcm0gaXMgbWVyZWx5IGFcbnNob3J0aGFuZCBmb3IgYSBzaW1wbGlmaWVkIGZ1bmN0aW9uIGRlZmluaXRpb247IGEgZnVuY3Rpb24gZGVmaW5lZCBpblxuYSAiYGBkZWZgYCIgc3RhdGVtZW50IGNhbiBiZSBwYXNzZWQgYXJvdW5kIG9yIGFzc2lnbmVkIHRvIGFub3RoZXIgbmFtZVxuanVzdCBsaWtlIGEgZnVuY3Rpb24gZGVmaW5lZCBieSBhIGxhbWJkYSBmb3JtLiAgVGhlICJgYGRlZmBgIiBmb3JtIGlzXG5hY3R1YWxseSBtb3JlIHBvd2VyZnVsIHNpbmNlIGl0IGFsbG93cyB0aGUgZXhlY3V0aW9uIG9mIG11bHRpcGxlXG5zdGF0ZW1lbnRzIGFuZCBhbm5vdGF0aW9ucy5cblxuKipQcm9ncmFtbWVyXCdzIG5vdGU6KiogRnVuY3Rpb25zIGFyZSBmaXJzdC1jbGFzcyBvYmplY3RzLiAgQSAiYGBkZWZgYCJcbmZvcm0gZXhlY3V0ZWQgaW5zaWRlIGEgZnVuY3Rpb24gZGVmaW5pdGlvbiBkZWZpbmVzIGEgbG9jYWwgZnVuY3Rpb25cbnRoYXQgY2FuIGJlIHJldHVybmVkIG9yIHBhc3NlZCBhcm91bmQuICBGcmVlIHZhcmlhYmxlcyB1c2VkIGluIHRoZVxubmVzdGVkIGZ1bmN0aW9uIGNhbiBhY2Nlc3MgdGhlIGxvY2FsIHZhcmlhYmxlcyBvZiB0aGUgZnVuY3Rpb25cbmNvbnRhaW5pbmcgdGhlIGRlZi4gIFNlZSBzZWN0aW9uICpOYW1pbmcgYW5kIGJpbmRpbmcqIGZvciBkZXRhaWxzLlxuJywKICAnZ2xvYmFsJzogJ1xuVGhlIGBgZ2xvYmFsYGAgc3RhdGVtZW50XG4qKioqKioqKioqKioqKioqKioqKioqKipcblxuICAgZ2xvYmFsX3N0bXQgOjo9ICJnbG9iYWwiIGlkZW50aWZpZXIgKCIsIiBpZGVudGlmaWVyKSpcblxuVGhlIGBgZ2xvYmFsYGAgc3RhdGVtZW50IGlzIGEgZGVjbGFyYXRpb24gd2hpY2ggaG9sZHMgZm9yIHRoZSBlbnRpcmVcbmN1cnJlbnQgY29kZSBibG9jay4gIEl0IG1lYW5zIHRoYXQgdGhlIGxpc3RlZCBpZGVudGlmaWVycyBhcmUgdG8gYmVcbmludGVycHJldGVkIGFzIGdsb2JhbHMuICBJdCB3b3VsZCBiZSBpbXBvc3NpYmxlIHRvIGFzc2lnbiB0byBhIGdsb2JhbFxudmFyaWFibGUgd2l0aG91dCBgYGdsb2JhbGBgLCBhbHRob3VnaCBmcmVlIHZhcmlhYmxlcyBtYXkgcmVmZXIgdG9cbmdsb2JhbHMgd2l0aG91dCBiZWluZyBkZWNsYXJlZCBnbG9iYWwuXG5cbk5hbWVzIGxpc3RlZCBpbiBhIGBgZ2xvYmFsYGAgc3RhdGVtZW50IG11c3Qgbm90IGJlIHVzZWQgaW4gdGhlIHNhbWVcbmNvZGUgYmxvY2sgdGV4dHVhbGx5IHByZWNlZGluZyB0aGF0IGBgZ2xvYmFsYGAgc3RhdGVtZW50LlxuXG5OYW1lcyBsaXN0ZWQgaW4gYSBgYGdsb2JhbGBgIHN0YXRlbWVudCBtdXN0IG5vdCBiZSBkZWZpbmVkIGFzIGZvcm1hbFxucGFyYW1ldGVycyBvciBpbiBhIGBgZm9yYGAgbG9vcCBjb250cm9sIHRhcmdldCwgYGBjbGFzc2BgIGRlZmluaXRpb24sXG5mdW5jdGlvbiBkZWZpbml0aW9uLCBvciBgYGltcG9ydGBgIHN0YXRlbWVudC5cblxuKipDUHl0aG9uIGltcGxlbWVudGF0aW9uIGRldGFpbDoqKiBUaGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdFxuZW5mb3JjZSB0aGUgbGF0dGVyIHR3byByZXN0cmljdGlvbnMsIGJ1dCBwcm9ncmFtcyBzaG91bGQgbm90IGFidXNlXG50aGlzIGZyZWVkb20sIGFzIGZ1dHVyZSBpbXBsZW1lbnRhdGlvbnMgbWF5IGVuZm9yY2UgdGhlbSBvciBzaWxlbnRseVxuY2hhbmdlIHRoZSBtZWFuaW5nIG9mIHRoZSBwcm9ncmFtLlxuXG4qKlByb2dyYW1tZXJcJ3Mgbm90ZToqKiB0aGUgYGBnbG9iYWxgYCBpcyBhIGRpcmVjdGl2ZSB0byB0aGUgcGFyc2VyLlxuSXQgYXBwbGllcyBvbmx5IHRvIGNvZGUgcGFyc2VkIGF0IHRoZSBzYW1lIHRpbWUgYXMgdGhlIGBgZ2xvYmFsYGBcbnN0YXRlbWVudC4gSW4gcGFydGljdWxhciwgYSBgYGdsb2JhbGBgIHN0YXRlbWVudCBjb250YWluZWQgaW4gYSBzdHJpbmdcbm9yIGNvZGUgb2JqZWN0IHN1cHBsaWVkIHRvIHRoZSBidWlsdC1pbiBgYGV4ZWMoKWBgIGZ1bmN0aW9uIGRvZXMgbm90XG5hZmZlY3QgdGhlIGNvZGUgYmxvY2sgKmNvbnRhaW5pbmcqIHRoZSBmdW5jdGlvbiBjYWxsLCBhbmQgY29kZVxuY29udGFpbmVkIGluIHN1Y2ggYSBzdHJpbmcgaXMgdW5hZmZlY3RlZCBieSBgYGdsb2JhbGBgIHN0YXRlbWVudHMgaW5cbnRoZSBjb2RlIGNvbnRhaW5pbmcgdGhlIGZ1bmN0aW9uIGNhbGwuICBUaGUgc2FtZSBhcHBsaWVzIHRvIHRoZVxuYGBldmFsKClgYCBhbmQgYGBjb21waWxlKClgYCBmdW5jdGlvbnMuXG4nLAogICdpZC1jbGFzc2VzJzogJ1xuUmVzZXJ2ZWQgY2xhc3NlcyBvZiBpZGVudGlmaWVyc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5DZXJ0YWluIGNsYXNzZXMgb2YgaWRlbnRpZmllcnMgKGJlc2lkZXMga2V5d29yZHMpIGhhdmUgc3BlY2lhbFxubWVhbmluZ3MuICBUaGVzZSBjbGFzc2VzIGFyZSBpZGVudGlmaWVkIGJ5IHRoZSBwYXR0ZXJucyBvZiBsZWFkaW5nIGFuZFxudHJhaWxpbmcgdW5kZXJzY29yZSBjaGFyYWN0ZXJzOlxuXG5gYF8qYGBcbiAgIE5vdCBpbXBvcnRlZCBieSBgYGZyb20gbW9kdWxlIGltcG9ydCAqYGAuICBUaGUgc3BlY2lhbCBpZGVudGlmaWVyXG4gICBgYF9gYCBpcyB1c2VkIGluIHRoZSBpbnRlcmFjdGl2ZSBpbnRlcnByZXRlciB0byBzdG9yZSB0aGUgcmVzdWx0IG9mXG4gICB0aGUgbGFzdCBldmFsdWF0aW9uOyBpdCBpcyBzdG9yZWQgaW4gdGhlIGBgYnVpbHRpbnNgYCBtb2R1bGUuICBXaGVuXG4gICBub3QgaW4gaW50ZXJhY3RpdmUgbW9kZSwgYGBfYGAgaGFzIG5vIHNwZWNpYWwgbWVhbmluZyBhbmQgaXMgbm90XG4gICBkZWZpbmVkLiBTZWUgc2VjdGlvbiAqVGhlIGltcG9ydCBzdGF0ZW1lbnQqLlxuXG4gICBOb3RlOiBUaGUgbmFtZSBgYF9gYCBpcyBvZnRlbiB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGhcbiAgICAgaW50ZXJuYXRpb25hbGl6YXRpb247IHJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGVcbiAgICAgYGBnZXR0ZXh0YGAgbW9kdWxlIGZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoaXMgY29udmVudGlvbi5cblxuYGBfXypfX2BgXG4gICBTeXN0ZW0tZGVmaW5lZCBuYW1lcy4gVGhlc2UgbmFtZXMgYXJlIGRlZmluZWQgYnkgdGhlIGludGVycHJldGVyXG4gICBhbmQgaXRzIGltcGxlbWVudGF0aW9uIChpbmNsdWRpbmcgdGhlIHN0YW5kYXJkIGxpYnJhcnkpLiAgQ3VycmVudFxuICAgc3lzdGVtIG5hbWVzIGFyZSBkaXNjdXNzZWQgaW4gdGhlICpTcGVjaWFsIG1ldGhvZCBuYW1lcyogc2VjdGlvblxuICAgYW5kIGVsc2V3aGVyZS4gIE1vcmUgd2lsbCBsaWtlbHkgYmUgZGVmaW5lZCBpbiBmdXR1cmUgdmVyc2lvbnMgb2ZcbiAgIFB5dGhvbi4gICpBbnkqIHVzZSBvZiBgYF9fKl9fYGAgbmFtZXMsIGluIGFueSBjb250ZXh0LCB0aGF0IGRvZXNcbiAgIG5vdCBmb2xsb3cgZXhwbGljaXRseSBkb2N1bWVudGVkIHVzZSwgaXMgc3ViamVjdCB0byBicmVha2FnZVxuICAgd2l0aG91dCB3YXJuaW5nLlxuXG5gYF9fKmBgXG4gICBDbGFzcy1wcml2YXRlIG5hbWVzLiAgTmFtZXMgaW4gdGhpcyBjYXRlZ29yeSwgd2hlbiB1c2VkIHdpdGhpbiB0aGVcbiAgIGNvbnRleHQgb2YgYSBjbGFzcyBkZWZpbml0aW9uLCBhcmUgcmUtd3JpdHRlbiB0byB1c2UgYSBtYW5nbGVkIGZvcm1cbiAgIHRvIGhlbHAgYXZvaWQgbmFtZSBjbGFzaGVzIGJldHdlZW4gInByaXZhdGUiIGF0dHJpYnV0ZXMgb2YgYmFzZSBhbmRcbiAgIGRlcml2ZWQgY2xhc3Nlcy4gU2VlIHNlY3Rpb24gKklkZW50aWZpZXJzIChOYW1lcykqLlxuJywKQEAgLTYwLDE4ICs2MCwxOCBAQAogICdzbGljaW5ncyc6ICdcblNsaWNpbmdzXG4qKioqKioqKlxuXG5BIHNsaWNpbmcgc2VsZWN0cyBhIHJhbmdlIG9mIGl0ZW1zIGluIGEgc2VxdWVuY2Ugb2JqZWN0IChlLmcuLCBhXG5zdHJpbmcsIHR1cGxlIG9yIGxpc3QpLiAgU2xpY2luZ3MgbWF5IGJlIHVzZWQgYXMgZXhwcmVzc2lvbnMgb3IgYXNcbnRhcmdldHMgaW4gYXNzaWdubWVudCBvciBgYGRlbGBgIHN0YXRlbWVudHMuICBUaGUgc3ludGF4IGZvciBhXG5zbGljaW5nOlxuXG4gICBzbGljaW5nICAgICAgOjo9IHByaW1hcnkgIlsiIHNsaWNlX2xpc3QgIl0iXG4gICBzbGljZV9saXN0ICAgOjo9IHNsaWNlX2l0ZW0gKCIsIiBzbGljZV9pdGVtKSogWyIsIl1cbiAgIHNsaWNlX2l0ZW0gICA6Oj0gZXhwcmVzc2lvbiB8IHByb3Blcl9zbGljZVxuICAgcHJvcGVyX3NsaWNlIDo6PSBbbG93ZXJfYm91bmRdICI6IiBbdXBwZXJfYm91bmRdIFsgIjoiIFtzdHJpZGVdIF1cbiAgIGxvd2VyX2JvdW5kICA6Oj0gZXhwcmVzc2lvblxuICAgdXBwZXJfYm91bmQgIDo6PSBleHByZXNzaW9uXG4gICBzdHJpZGUgICAgICAgOjo9IGV4cHJlc3Npb25cblxuVGhlcmUgaXMgYW1iaWd1aXR5IGluIHRoZSBmb3JtYWwgc3ludGF4IGhlcmU6IGFueXRoaW5nIHRoYXQgbG9va3MgbGlrZVxuYW4gZXhwcmVzc2lvbiBsaXN0IGFsc28gbG9va3MgbGlrZSBhIHNsaWNlIGxpc3QsIHNvIGFueSBzdWJzY3JpcHRpb25cbmNhbiBiZSBpbnRlcnByZXRlZCBhcyBhIHNsaWNpbmcuICBSYXRoZXIgdGhhbiBmdXJ0aGVyIGNvbXBsaWNhdGluZyB0aGVcbnN5bnRheCwgdGhpcyBpcyBkaXNhbWJpZ3VhdGVkIGJ5IGRlZmluaW5nIHRoYXQgaW4gdGhpcyBjYXNlIHRoZVxuaW50ZXJwcmV0YXRpb24gYXMgYSBzdWJzY3JpcHRpb24gdGFrZXMgcHJpb3JpdHkgb3ZlciB0aGVcbmludGVycHJldGF0aW9uIGFzIGEgc2xpY2luZyAodGhpcyBpcyB0aGUgY2FzZSBpZiB0aGUgc2xpY2UgbGlzdFxuY29udGFpbnMgbm8gcHJvcGVyIHNsaWNlKS5cblxuVGhlIHNlbWFudGljcyBmb3IgYSBzbGljaW5nIGFyZSBhcyBmb2xsb3dzLiAgVGhlIHByaW1hcnkgbXVzdCBldmFsdWF0ZVxudG8gYSBtYXBwaW5nIG9iamVjdCwgYW5kIGl0IGlzIGluZGV4ZWQgKHVzaW5nIHRoZSBzYW1lXG5gYF9fZ2V0aXRlbV9fKClgYCBtZXRob2QgYXMgbm9ybWFsIHN1YnNjcmlwdGlvbikgd2l0aCBhIGtleSB0aGF0IGlzXG5jb25zdHJ1Y3RlZCBmcm9tIHRoZSBzbGljZSBsaXN0LCBhcyBmb2xsb3dzLiAgSWYgdGhlIHNsaWNlIGxpc3RcbmNvbnRhaW5zIGF0IGxlYXN0IG9uZSBjb21tYSwgdGhlIGtleSBpcyBhIHR1cGxlIGNvbnRhaW5pbmcgdGhlXG5jb252ZXJzaW9uIG9mIHRoZSBzbGljZSBpdGVtczsgb3RoZXJ3aXNlLCB0aGUgY29udmVyc2lvbiBvZiB0aGUgbG9uZVxuc2xpY2UgaXRlbSBpcyB0aGUga2V5LiAgVGhlIGNvbnZlcnNpb24gb2YgYSBzbGljZSBpdGVtIHRoYXQgaXMgYW5cbmV4cHJlc3Npb24gaXMgdGhhdCBleHByZXNzaW9uLiAgVGhlIGNvbnZlcnNpb24gb2YgYSBwcm9wZXIgc2xpY2UgaXMgYVxuc2xpY2Ugb2JqZWN0IChzZWUgc2VjdGlvbiAqVGhlIHN0YW5kYXJkIHR5cGUgaGllcmFyY2h5Kikgd2hvc2VcbmBgc3RhcnRgYCwgYGBzdG9wYGAgYW5kIGBgc3RlcGBgIGF0dHJpYnV0ZXMgYXJlIHRoZSB2YWx1ZXMgb2YgdGhlXG5leHByZXNzaW9ucyBnaXZlbiBhcyBsb3dlciBib3VuZCwgdXBwZXIgYm91bmQgYW5kIHN0cmlkZSxcbnJlc3BlY3RpdmVseSwgc3Vic3RpdHV0aW5nIGBgTm9uZWBgIGZvciBtaXNzaW5nIGV4cHJlc3Npb25zLlxuJywKICAnc3BlY2lhbGF0dHJzJzogIlxuU3BlY2lhbCBBdHRyaWJ1dGVzXG4qKioqKioqKioqKioqKioqKipcblxuVGhlIGltcGxlbWVudGF0aW9uIGFkZHMgYSBmZXcgc3BlY2lhbCByZWFkLW9ubHkgYXR0cmlidXRlcyB0byBzZXZlcmFsXG5vYmplY3QgdHlwZXMsIHdoZXJlIHRoZXkgYXJlIHJlbGV2YW50LiAgU29tZSBvZiB0aGVzZSBhcmUgbm90IHJlcG9ydGVkXG5ieSB0aGUgYGBkaXIoKWBgIGJ1aWx0LWluIGZ1bmN0aW9uLlxuXG5vYmplY3QuX19kaWN0X19cblxuICAgQSBkaWN0aW9uYXJ5IG9yIG90aGVyIG1hcHBpbmcgb2JqZWN0IHVzZWQgdG8gc3RvcmUgYW4gb2JqZWN0J3NcbiAgICh3cml0YWJsZSkgYXR0cmlidXRlcy5cblxuaW5zdGFuY2UuX19jbGFzc19fXG5cbiAgIFRoZSBjbGFzcyB0byB3aGljaCBhIGNsYXNzIGluc3RhbmNlIGJlbG9uZ3MuXG5cbmNsYXNzLl9fYmFzZXNfX1xuXG4gICBUaGUgdHVwbGUgb2YgYmFzZSBjbGFzc2VzIG9mIGEgY2xhc3Mgb2JqZWN0LlxuXG5jbGFzcy5fX25hbWVfX1xuXG4gICBUaGUgbmFtZSBvZiB0aGUgY2xhc3Mgb3IgdHlwZS5cblxuVGhlIGZvbGxvd2luZyBhdHRyaWJ1dGVzIGFyZSBvbmx5IHN1cHBvcnRlZCBieSAqbmV3LXN0eWxlIGNsYXNzKmVzLlxuXG5jbGFzcy5fX21yb19fXG5cbiAgIFRoaXMgYXR0cmlidXRlIGlzIGEgdHVwbGUgb2YgY2xhc3NlcyB0aGF0IGFyZSBjb25zaWRlcmVkIHdoZW5cbiAgIGxvb2tpbmcgZm9yIGJhc2UgY2xhc3NlcyBkdXJpbmcgbWV0aG9kIHJlc29sdXRpb24uXG5cbmNsYXNzLm1ybygpXG5cbiAgIFRoaXMgbWV0aG9kIGNhbiBiZSBvdmVycmlkZGVuIGJ5IGEgbWV0YWNsYXNzIHRvIGN1c3RvbWl6ZSB0aGVcbiAgIG1ldGhvZCByZXNvbHV0aW9uIG9yZGVyIGZvciBpdHMgaW5zdGFuY2VzLiAgSXQgaXMgY2FsbGVkIGF0IGNsYXNzXG4gICBpbnN0YW50aWF0aW9uLCBhbmQgaXRzIHJlc3VsdCBpcyBzdG9yZWQgaW4gYGBfX21yb19fYGAuXG5cbmNsYXNzLl9fc3ViY2xhc3Nlc19fKClcblxuICAgRWFjaCBuZXctc3R5bGUgY2xhc3Mga2VlcHMgYSBsaXN0IG9mIHdlYWsgcmVmZXJlbmNlcyB0byBpdHNcbiAgIGltbWVkaWF0ZSBzdWJjbGFzc2VzLiAgVGhpcyBtZXRob2QgcmV0dXJucyBhIGxpc3Qgb2YgYWxsIHRob3NlXG4gICByZWZlcmVuY2VzIHN0aWxsIGFsaXZlLiBFeGFtcGxlOlxuXG4gICAgICA+Pj4gaW50Ll9fc3ViY2xhc3Nlc19fKClcbiAgICAgIFs8dHlwZSAnYm9vbCc+XVxuXG4tWyBGb290bm90ZXMgXS1cblxuWzFdIEFkZGl0aW9uYWwgaW5mb3JtYXRpb24gb24gdGhlc2Ugc3BlY2lhbCBtZXRob2RzIG1heSBiZSBmb3VuZCBpblxuICAgIHRoZSBQeXRob24gUmVmZXJlbmNlIE1hbnVhbCAoKkJhc2ljIGN1c3RvbWl6YXRpb24qKS5cblxuWzJdIEFzIGEgY29uc2VxdWVuY2UsIHRoZSBsaXN0IGBgWzEsIDJdYGAgaXMgY29uc2lkZXJlZCBlcXVhbCB0b1xuICAgIGBgWzEuMCwgMi4wXWBgLCBhbmQgc2ltaWxhcmx5IGZvciB0dXBsZXMuXG5cblszXSBUaGV5IG11c3QgaGF2ZSBzaW5jZSB0aGUgcGFyc2VyIGNhbid0IHRlbGwgdGhlIHR5cGUgb2YgdGhlXG4gICAgb3BlcmFuZHMuXG5cbls0XSBUbyBmb3JtYXQgb25seSBhIHR1cGxlIHlvdSBzaG91bGQgdGhlcmVmb3JlIHByb3ZpZGUgYSBzaW5nbGV0b25cbiAgICB0dXBsZSB3aG9zZSBvbmx5IGVsZW1lbnQgaXMgdGhlIHR1cGxlIHRvIGJlIGZvcm1hdHRlZC5cbiIsCiAgJ3NwZWNpYWxuYW1lcyc6ICdcblNwZWNpYWwgbWV0aG9kIG5hbWVzXG4qKioqKioqKioqKioqKioqKioqKlxuXG5BIGNsYXNzIGNhbiBpbXBsZW1lbnQgY2VydGFpbiBvcGVyYXRpb25zIHRoYXQgYXJlIGludm9rZWQgYnkgc3BlY2lhbFxuc3ludGF4IChzdWNoIGFzIGFyaXRobWV0aWMgb3BlcmF0aW9ucyBvciBzdWJzY3JpcHRpbmcgYW5kIHNsaWNpbmcpIGJ5XG5kZWZpbmluZyBtZXRob2RzIHdpdGggc3BlY2lhbCBuYW1lcy4gVGhpcyBpcyBQeXRob25cJ3MgYXBwcm9hY2ggdG9cbipvcGVyYXRvciBvdmVybG9hZGluZyosIGFsbG93aW5nIGNsYXNzZXMgdG8gZGVmaW5lIHRoZWlyIG93biBiZWhhdmlvclxud2l0aCByZXNwZWN0IHRvIGxhbmd1YWdlIG9wZXJhdG9ycy4gIEZvciBpbnN0YW5jZSwgaWYgYSBjbGFzcyBkZWZpbmVzXG5hIG1ldGhvZCBuYW1lZCBgYF9fZ2V0aXRlbV9fKClgYCwgYW5kIGBgeGBgIGlzIGFuIGluc3RhbmNlIG9mIHRoaXNcbmNsYXNzLCB0aGVuIGBgeFtpXWBgIGlzIHJvdWdobHkgZXF1aXZhbGVudCB0byBgYHR5cGUoeCkuX19nZXRpdGVtX18oeCxcbmkpYGAuICBFeGNlcHQgd2hlcmUgbWVudGlvbmVkLCBhdHRlbXB0cyB0byBleGVjdXRlIGFuIG9wZXJhdGlvbiByYWlzZVxuYW4gZXhjZXB0aW9uIHdoZW4gbm8gYXBwcm9wcmlhdGUgbWV0aG9kIGlzIGRlZmluZWQgKHR5cGljYWxseVxuYGBBdHRyaWJ1dGVFcnJvcmBgIG9yIGBgVHlwZUVycm9yYGApLlxuXG5XaGVuIGltcGxlbWVudGluZyBhIGNsYXNzIHRoYXQgZW11bGF0ZXMgYW55IGJ1aWx0LWluIHR5cGUsIGl0IGlzXG5pbXBvcnRhbnQgdGhhdCB0aGUgZW11bGF0aW9uIG9ubHkgYmUgaW1wbGVtZW50ZWQgdG8gdGhlIGRlZ3JlZSB0aGF0IGl0XG5tYWtlcyBzZW5zZSBmb3IgdGhlIG9iamVjdCBiZWluZyBtb2RlbGxlZC4gIEZvciBleGFtcGxlLCBzb21lXG5zZXF1ZW5jZXMgbWF5IHdvcmsgd2VsbCB3aXRoIHJldHJpZXZhbCBvZiBpbmRpdmlkdWFsIGVsZW1lbnRzLCBidXRcbmV4dHJhY3RpbmcgYSBzbGljZSBtYXkgbm90IG1ha2Ugc2Vuc2UuICAoT25lIGV4YW1wbGUgb2YgdGhpcyBpcyB0aGVcbmBgTm9kZUxpc3RgYCBpbnRlcmZhY2UgaW4gdGhlIFczQ1wncyBEb2N1bWVudCBPYmplY3QgTW9kZWwuKVxuXG5cbkJhc2ljIGN1c3RvbWl6YXRpb25cbj09PT09PT09PT09PT09PT09PT1cblxub2JqZWN0Ll9fbmV3X18oY2xzWywgLi4uXSlcblxuICAgQ2FsbGVkIHRvIGNyZWF0ZSBhIG5ldyBpbnN0YW5jZSBvZiBjbGFzcyAqY2xzKi4gIGBgX19uZXdfXygpYGAgaXMgYVxuICAgc3RhdGljIG1ldGhvZCAoc3BlY2lhbC1jYXNlZCBzbyB5b3UgbmVlZCBub3QgZGVjbGFyZSBpdCBhcyBzdWNoKVxuICAgdGhhdCB0YWtlcyB0aGUgY2xhc3Mgb2Ygd2hpY2ggYW4gaW5zdGFuY2Ugd2FzIHJlcXVlc3RlZCBhcyBpdHNcbiAgIGZpcnN0IGFyZ3VtZW50LiAgVGhlIHJlbWFpbmluZyBhcmd1bWVudHMgYXJlIHRob3NlIHBhc3NlZCB0byB0aGVcbiAgIG9iamVjdCBjb25zdHJ1Y3RvciBleHByZXNzaW9uICh0aGUgY2FsbCB0byB0aGUgY2xhc3MpLiAgVGhlIHJldHVyblxuICAgdmFsdWUgb2YgYGBfX25ld19fKClgYCBzaG91bGQgYmUgdGhlIG5ldyBvYmplY3QgaW5zdGFuY2UgKHVzdWFsbHlcbiAgIGFuIGluc3RhbmNlIG9mICpjbHMqKS5cblxuICAgVHlwaWNhbCBpbXBsZW1lbnRhdGlvbnMgY3JlYXRlIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBjbGFzcyBieVxuICAgaW52b2tpbmcgdGhlIHN1cGVyY2xhc3NcJ3MgYGBfX25ld19fKClgYCBtZXRob2QgdXNpbmdcbiAgIGBgc3VwZXIoY3VycmVudGNsYXNzLCBjbHMpLl9fbmV3X18oY2xzWywgLi4uXSlgYCB3aXRoIGFwcHJvcHJpYXRlXG4gICBhcmd1bWVudHMgYW5kIHRoZW4gbW9kaWZ5aW5nIHRoZSBuZXdseS1jcmVhdGVkIGluc3RhbmNlIGFzXG4gICBuZWNlc3NhcnkgYmVmb3JlIHJldHVybmluZyBpdC5cblxuICAgSWYgYGBfX25ld19fKClgYCByZXR1cm5zIGFuIGluc3RhbmNlIG9mICpjbHMqLCB0aGVuIHRoZSBuZXdcbiAgIGluc3RhbmNlXCdzIGBgX19pbml0X18oKWBgIG1ldGhvZCB3aWxsIGJlIGludm9rZWQgbGlrZVxuICAgYGBfX2luaXRfXyhzZWxmWywgLi4uXSlgYCwgd2hlcmUgKnNlbGYqIGlzIHRoZSBuZXcgaW5zdGFuY2UgYW5kIHRoZVxuICAgcmVtYWluaW5nIGFyZ3VtZW50cyBhcmUgdGhlIHNhbWUgYXMgd2VyZSBwYXNzZWQgdG8gYGBfX25ld19fKClgYC5cblxuICAgSWYgYGBfX25ld19fKClgYCBkb2VzIG5vdCByZXR1cm4gYW4gaW5zdGFuY2Ugb2YgKmNscyosIHRoZW4gdGhlIG5ld1xuICAgaW5zdGFuY2VcJ3MgYGBfX2luaXRfXygpYGAgbWV0aG9kIHdpbGwgbm90IGJlIGludm9rZWQuXG5cbiAgIGBgX19uZXdfXygpYGAgaXMgaW50ZW5kZWQgbWFpbmx5IHRvIGFsbG93IHN1YmNsYXNzZXMgb2YgaW1tdXRhYmxlXG4gICB0eXBlcyAobGlrZSBpbnQsIHN0ciwgb3IgdHVwbGUpIHRvIGN1c3RvbWl6ZSBpbnN0YW5jZSBjcmVhdGlvbi4gIEl0XG4gICBpcyBhbHNvIGNvbW1vbmx5IG92ZXJyaWRkZW4gaW4gY3VzdG9tIG1ldGFjbGFzc2VzIGluIG9yZGVyIHRvXG4gICBjdXN0b21pemUgY2xhc3MgY3JlYXRpb24uXG5cbm9iamVjdC5fX2luaXRfXyhzZWxmWywgLi4uXSlcblxuICAgQ2FsbGVkIHdoZW4gdGhlIGluc3RhbmNlIGlzIGNyZWF0ZWQuICBUaGUgYXJndW1lbnRzIGFyZSB0aG9zZVxuICAgcGFzc2VkIHRvIHRoZSBjbGFzcyBjb25zdHJ1Y3RvciBleHByZXNzaW9uLiAgSWYgYSBiYXNlIGNsYXNzIGhhcyBhblxuICAgYGBfX2luaXRfXygpYGAgbWV0aG9kLCB0aGUgZGVyaXZlZCBjbGFzc1wncyBgYF9faW5pdF9fKClgYCBtZXRob2QsXG4gICBpZiBhbnksIG11c3QgZXhwbGljaXRseSBjYWxsIGl0IHRvIGVuc3VyZSBwcm9wZXIgaW5pdGlhbGl6YXRpb24gb2ZcbiAgIHRoZSBiYXNlIGNsYXNzIHBhcnQgb2YgdGhlIGluc3RhbmNlOyBmb3IgZXhhbXBsZTpcbiAgIGBgQmFzZUNsYXNzLl9faW5pdF9fKHNlbGYsIFthcmdzLi4uXSlgYC4gIEFzIGEgc3BlY2lhbCBjb25zdHJhaW50XG4gICBvbiBjb25zdHJ1Y3RvcnMsIG5vIHZhbHVlIG1heSBiZSByZXR1cm5lZDsgZG9pbmcgc28gd2lsbCBjYXVzZSBhXG4gICBgYFR5cGVFcnJvcmBgIHRvIGJlIHJhaXNlZCBhdCBydW50aW1lLlxuXG5vYmplY3QuX19kZWxfXyhzZWxmKVxuXG4gICBDYWxsZWQgd2hlbiB0aGUgaW5zdGFuY2UgaXMgYWJvdXQgdG8gYmUgZGVzdHJveWVkLiAgVGhpcyBpcyBhbHNvXG4gICBjYWxsZWQgYSBkZXN0cnVjdG9yLiAgSWYgYSBiYXNlIGNsYXNzIGhhcyBhIGBgX19kZWxfXygpYGAgbWV0aG9kLFxuICAgdGhlIGRlcml2ZWQgY2xhc3NcJ3MgYGBfX2RlbF9fKClgYCBtZXRob2QsIGlmIGFueSwgbXVzdCBleHBsaWNpdGx5XG4gICBjYWxsIGl0IHRvIGVuc3VyZSBwcm9wZXIgZGVsZXRpb24gb2YgdGhlIGJhc2UgY2xhc3MgcGFydCBvZiB0aGVcbiAgIGluc3RhbmNlLiAgTm90ZSB0aGF0IGl0IGlzIHBvc3NpYmxlICh0aG91Z2ggbm90IHJlY29tbWVuZGVkISkgZm9yXG4gICB0aGUgYGBfX2RlbF9fKClgYCBtZXRob2QgdG8gcG9zdHBvbmUgZGVzdHJ1Y3Rpb24gb2YgdGhlIGluc3RhbmNlIGJ5XG4gICBjcmVhdGluZyBhIG5ldyByZWZlcmVuY2UgdG8gaXQuICBJdCBtYXkgdGhlbiBiZSBjYWxsZWQgYXQgYSBsYXRlclxuICAgdGltZSB3aGVuIHRoaXMgbmV3IHJlZmVyZW5jZSBpcyBkZWxldGVkLiAgSXQgaXMgbm90IGd1YXJhbnRlZWQgdGhhdFxuICAgYGBfX2RlbF9fKClgYCBtZXRob2RzIGFyZSBjYWxsZWQgZm9yIG9iamVjdHMgdGhhdCBzdGlsbCBleGlzdCB3aGVuXG4gICB0aGUgaW50ZXJwcmV0ZXIgZXhpdHMuXG5cbiAgIE5vdGU6IGBgZGVsIHhgYCBkb2VzblwndCBkaXJlY3RseSBjYWxsIGBgeC5fX2RlbF9fKClgYCAtLS0gdGhlIGZvcm1lclxuICAgICBkZWNyZW1lbnRzIHRoZSByZWZlcmVuY2UgY291bnQgZm9yIGBgeGBgIGJ5IG9uZSwgYW5kIHRoZSBsYXR0ZXJcbiAgICAgaXMgb25seSBjYWxsZWQgd2hlbiBgYHhgYFwncyByZWZlcmVuY2UgY291bnQgcmVhY2hlcyB6ZXJvLiAgU29tZVxuICAgICBjb21tb24gc2l0dWF0aW9ucyB0aGF0IG1heSBwcmV2ZW50IHRoZSByZWZlcmVuY2UgY291bnQgb2YgYW5cbiAgICAgb2JqZWN0IGZyb20gZ29pbmcgdG8gemVybyBpbmNsdWRlOiBjaXJjdWxhciByZWZlcmVuY2VzIGJldHdlZW5cbiAgICAgb2JqZWN0cyAoZS5nLiwgYSBkb3VibHktbGlua2VkIGxpc3Qgb3IgYSB0cmVlIGRhdGEgc3RydWN0dXJlIHdpdGhcbiAgICAgcGFyZW50IGFuZCBjaGlsZCBwb2ludGVycyk7IGEgcmVmZXJlbmNlIHRvIHRoZSBvYmplY3Qgb24gdGhlXG4gICAgIHN0YWNrIGZyYW1lIG9mIGEgZnVuY3Rpb24gdGhhdCBjYXVnaHQgYW4gZXhjZXB0aW9uICh0aGUgdHJhY2ViYWNrXG4gICAgIHN0b3JlZCBpbiBgYHN5cy5leGNfaW5mbygpWzJdYGAga2VlcHMgdGhlIHN0YWNrIGZyYW1lIGFsaXZlKTsgb3JcbiAgICAgYSByZWZlcmVuY2UgdG8gdGhlIG9iamVjdCBvbiB0aGUgc3RhY2sgZnJhbWUgdGhhdCByYWlzZWQgYW5cbiAgICAgdW5oYW5kbGVkIGV4Y2VwdGlvbiBpbiBpbnRlcmFjdGl2ZSBtb2RlICh0aGUgdHJhY2ViYWNrIHN0b3JlZCBpblxuICAgICBgYHN5cy5sYXN0X3RyYWNlYmFja2BgIGtlZXBzIHRoZSBzdGFjayBmcmFtZSBhbGl2ZSkuICBUaGUgZmlyc3RcbiAgICAgc2l0dWF0aW9uIGNhbiBvbmx5IGJlIHJlbWVkaWVkIGJ5IGV4cGxpY2l0bHkgYnJlYWtpbmcgdGhlIGN5Y2xlcztcbiAgICAgdGhlIGxhdHRlciB0d28gc2l0dWF0aW9ucyBjYW4gYmUgcmVzb2x2ZWQgYnkgc3RvcmluZyBgYE5vbmVgYCBpblxuICAgICBgYHN5cy5sYXN0X3RyYWNlYmFja2BgLiBDaXJjdWxhciByZWZlcmVuY2VzIHdoaWNoIGFyZSBnYXJiYWdlIGFyZVxuICAgICBkZXRlY3RlZCB3aGVuIHRoZSBvcHRpb24gY3ljbGUgZGV0ZWN0b3IgaXMgZW5hYmxlZCAoaXRcJ3Mgb24gYnlcbiAgICAgZGVmYXVsdCksIGJ1dCBjYW4gb25seSBiZSBjbGVhbmVkIHVwIGlmIHRoZXJlIGFyZSBubyBQeXRob24tXG4gICAgIGxldmVsIGBgX19kZWxfXygpYGAgbWV0aG9kcyBpbnZvbHZlZC4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb25cbiAgICAgZm9yIHRoZSBgYGdjYGAgbW9kdWxlIGZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IGhvd1xuICAgICBgYF9fZGVsX18oKWBgIG1ldGhvZHMgYXJlIGhhbmRsZWQgYnkgdGhlIGN5Y2xlIGRldGVjdG9yLFxuICAgICBwYXJ0aWN1bGFybHkgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBgYGdhcmJhZ2VgYCB2YWx1ZS5cblxuICAgV2FybmluZzogRHVlIHRvIHRoZSBwcmVjYXJpb3VzIGNpcmN1bXN0YW5jZXMgdW5kZXIgd2hpY2ggYGBfX2RlbF9fKClgYFxuICAgICBtZXRob2RzIGFyZSBpbnZva2VkLCBleGNlcHRpb25zIHRoYXQgb2NjdXIgZHVyaW5nIHRoZWlyIGV4ZWN1dGlvblxuICAgICBhcmUgaWdub3JlZCwgYW5kIGEgd2FybmluZyBpcyBwcmludGVkIHRvIGBgc3lzLnN0ZGVycmBgIGluc3RlYWQuXG4gICAgIEFsc28sIHdoZW4gYGBfX2RlbF9fKClgYCBpcyBpbnZva2VkIGluIHJlc3BvbnNlIHRvIGEgbW9kdWxlIGJlaW5nXG4gICAgIGRlbGV0ZWQgKGUuZy4sIHdoZW4gZXhlY3V0aW9uIG9mIHRoZSBwcm9ncmFtIGlzIGRvbmUpLCBvdGhlclxuICAgICBnbG9iYWxzIHJlZmVyZW5jZWQgYnkgdGhlIGBgX19kZWxfXygpYGAgbWV0aG9kIG1heSBhbHJlYWR5IGhhdmVcbiAgICAgYmVlbiBkZWxldGVkIG9yIGluIHRoZSBwcm9jZXNzIG9mIGJlaW5nIHRvcm4gZG93biAoZS5nLiB0aGVcbiAgICAgaW1wb3J0IG1hY2hpbmVyeSBzaHV0dGluZyBkb3duKS4gIEZvciB0aGlzIHJlYXNvbiwgYGBfX2RlbF9fKClgYFxuICAgICBtZXRob2RzIHNob3VsZCBkbyB0aGUgYWJzb2x1dGUgbWluaW11bSBuZWVkZWQgdG8gbWFpbnRhaW5cbiAgICAgZXh0ZXJuYWwgaW52YXJpYW50cy4gIFN0YXJ0aW5nIHdpdGggdmVyc2lvbiAxLjUsIFB5dGhvblxuICAgICBndWFyYW50ZWVzIHRoYXQgZ2xvYmFscyB3aG9zZSBuYW1lIGJlZ2lucyB3aXRoIGEgc2luZ2xlXG4gICAgIHVuZGVyc2NvcmUgYXJlIGRlbGV0ZWQgZnJvbSB0aGVpciBtb2R1bGUgYmVmb3JlIG90aGVyIGdsb2JhbHMgYXJlXG4gICAgIGRlbGV0ZWQ7IGlmIG5vIG90aGVyIHJlZmVyZW5jZXMgdG8gc3VjaCBnbG9iYWxzIGV4aXN0LCB0aGlzIG1heVxuICAgICBoZWxwIGluIGFzc3VyaW5nIHRoYXQgaW1wb3J0ZWQgbW9kdWxlcyBhcmUgc3RpbGwgYXZhaWxhYmxlIGF0IHRoZVxuICAgICB0aW1lIHdoZW4gdGhlIGBgX19kZWxfXygpYGAgbWV0aG9kIGlzIGNhbGxlZC5cblxub2JqZWN0Ll9fcmVwcl9fKHNlbGYpXG5cbiAgIENhbGxlZCBieSB0aGUgYGByZXByKClgYCBidWlsdC1pbiBmdW5jdGlvbiB0byBjb21wdXRlIHRoZVxuICAgIm9mZmljaWFsIiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYW4gb2JqZWN0LiAgSWYgYXQgYWxsIHBvc3NpYmxlLFxuICAgdGhpcyBzaG91bGQgbG9vayBsaWtlIGEgdmFsaWQgUHl0aG9uIGV4cHJlc3Npb24gdGhhdCBjb3VsZCBiZSB1c2VkXG4gICB0byByZWNyZWF0ZSBhbiBvYmplY3Qgd2l0aCB0aGUgc2FtZSB2YWx1ZSAoZ2l2ZW4gYW4gYXBwcm9wcmlhdGVcbiAgIGVudmlyb25tZW50KS4gIElmIHRoaXMgaXMgbm90IHBvc3NpYmxlLCBhIHN0cmluZyBvZiB0aGUgZm9ybVxuICAgYGA8Li4uc29tZSB1c2VmdWwgZGVzY3JpcHRpb24uLi4+YGAgc2hvdWxkIGJlIHJldHVybmVkLiBUaGUgcmV0dXJuXG4gICB2YWx1ZSBtdXN0IGJlIGEgc3RyaW5nIG9iamVjdC4gSWYgYSBjbGFzcyBkZWZpbmVzIGBgX19yZXByX18oKWBgXG4gICBidXQgbm90IGBgX19zdHJfXygpYGAsIHRoZW4gYGBfX3JlcHJfXygpYGAgaXMgYWxzbyB1c2VkIHdoZW4gYW5cbiAgICJpbmZvcm1hbCIgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGluc3RhbmNlcyBvZiB0aGF0IGNsYXNzIGlzXG4gICByZXF1aXJlZC5cblxuICAgVGhpcyBpcyB0eXBpY2FsbHkgdXNlZCBmb3IgZGVidWdnaW5nLCBzbyBpdCBpcyBpbXBvcnRhbnQgdGhhdCB0aGVcbiAgIHJlcHJlc2VudGF0aW9uIGlzIGluZm9ybWF0aW9uLXJpY2ggYW5kIHVuYW1iaWd1b3VzLlxuXG5vYmplY3QuX19zdHJfXyhzZWxmKVxuXG4gICBDYWxsZWQgYnkgdGhlIGBgc3RyKClgYCBidWlsdC1pbiBmdW5jdGlvbiBhbmQgYnkgdGhlIGBgcHJpbnQoKWBgXG4gICBmdW5jdGlvbiB0byBjb21wdXRlIHRoZSAiaW5mb3JtYWwiIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhblxuICAgb2JqZWN0LiAgVGhpcyBkaWZmZXJzIGZyb20gYGBfX3JlcHJfXygpYGAgaW4gdGhhdCBpdCBkb2VzIG5vdCBoYXZlXG4gICB0byBiZSBhIHZhbGlkIFB5dGhvbiBleHByZXNzaW9uOiBhIG1vcmUgY29udmVuaWVudCBvciBjb25jaXNlXG4gICByZXByZXNlbnRhdGlvbiBtYXkgYmUgdXNlZCBpbnN0ZWFkLiBUaGUgcmV0dXJuIHZhbHVlIG11c3QgYmUgYVxuICAgc3RyaW5nIG9iamVjdC5cblxub2JqZWN0Ll9fZm9ybWF0X18oc2VsZiwgZm9ybWF0X3NwZWMpXG5cbiAgIENhbGxlZCBieSB0aGUgYGBmb3JtYXQoKWBgIGJ1aWx0LWluIGZ1bmN0aW9uIChhbmQgYnkgZXh0ZW5zaW9uLCB0aGVcbiAgIGBgZm9ybWF0KClgYCBtZXRob2Qgb2YgY2xhc3MgYGBzdHJgYCkgdG8gcHJvZHVjZSBhICJmb3JtYXR0ZWQiXG4gICBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYW4gb2JqZWN0LiBUaGUgYGBmb3JtYXRfc3BlY2BgIGFyZ3VtZW50IGlzXG4gICBhIHN0cmluZyB0aGF0IGNvbnRhaW5zIGEgZGVzY3JpcHRpb24gb2YgdGhlIGZvcm1hdHRpbmcgb3B0aW9uc1xuICAgZGVzaXJlZC4gVGhlIGludGVycHJldGF0aW9uIG9mIHRoZSBgYGZvcm1hdF9zcGVjYGAgYXJndW1lbnQgaXMgdXBcbiAgIHRvIHRoZSB0eXBlIGltcGxlbWVudGluZyBgYF9fZm9ybWF0X18oKWBgLCBob3dldmVyIG1vc3QgY2xhc3Nlc1xuICAgd2lsbCBlaXRoZXIgZGVsZWdhdGUgZm9ybWF0dGluZyB0byBvbmUgb2YgdGhlIGJ1aWx0LWluIHR5cGVzLCBvclxuICAgdXNlIGEgc2ltaWxhciBmb3JtYXR0aW5nIG9wdGlvbiBzeW50YXguXG5cbiAgIFNlZSAqRm9ybWF0IFNwZWNpZmljYXRpb24gTWluaS1MYW5ndWFnZSogZm9yIGEgZGVzY3JpcHRpb24gb2YgdGhlXG4gICBzdGFuZGFyZCBmb3JtYXR0aW5nIHN5bnRheC5cblxuICAgVGhlIHJldHVybiB2YWx1ZSBtdXN0IGJlIGEgc3RyaW5nIG9iamVjdC5cblxub2JqZWN0Ll9fbHRfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2xlX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19lcV9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fbmVfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX2d0X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19nZV9fKHNlbGYsIG90aGVyKVxuXG4gICBUaGVzZSBhcmUgdGhlIHNvLWNhbGxlZCAicmljaCBjb21wYXJpc29uIiBtZXRob2RzLiBUaGVcbiAgIGNvcnJlc3BvbmRlbmNlIGJldHdlZW4gb3BlcmF0b3Igc3ltYm9scyBhbmQgbWV0aG9kIG5hbWVzIGlzIGFzXG4gICBmb2xsb3dzOiBgYHg8eWBgIGNhbGxzIGBgeC5fX2x0X18oeSlgYCwgYGB4PD15YGAgY2FsbHNcbiAgIGBgeC5fX2xlX18oeSlgYCwgYGB4PT15YGAgY2FsbHMgYGB4Ll9fZXFfXyh5KWBgLCBgYHghPXlgYCBjYWxsc1xuICAgYGB4Ll9fbmVfXyh5KWBgLCBgYHg+eWBgIGNhbGxzIGBgeC5fX2d0X18oeSlgYCwgYW5kIGBgeD49eWBgIGNhbGxzXG4gICBgYHguX19nZV9fKHkpYGAuXG5cbiAgIEEgcmljaCBjb21wYXJpc29uIG1ldGhvZCBtYXkgcmV0dXJuIHRoZSBzaW5nbGV0b25cbiAgIGBgTm90SW1wbGVtZW50ZWRgYCBpZiBpdCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIG9wZXJhdGlvbiBmb3IgYVxuICAgZ2l2ZW4gcGFpciBvZiBhcmd1bWVudHMuIEJ5IGNvbnZlbnRpb24sIGBgRmFsc2VgYCBhbmQgYGBUcnVlYGAgYXJlXG4gICByZXR1cm5lZCBmb3IgYSBzdWNjZXNzZnVsIGNvbXBhcmlzb24uIEhvd2V2ZXIsIHRoZXNlIG1ldGhvZHMgY2FuXG4gICByZXR1cm4gYW55IHZhbHVlLCBzbyBpZiB0aGUgY29tcGFyaXNvbiBvcGVyYXRvciBpcyB1c2VkIGluIGFcbiAgIEJvb2xlYW4gY29udGV4dCAoZS5nLiwgaW4gdGhlIGNvbmRpdGlvbiBvZiBhbiBgYGlmYGAgc3RhdGVtZW50KSxcbiAgIFB5dGhvbiB3aWxsIGNhbGwgYGBib29sKClgYCBvbiB0aGUgdmFsdWUgdG8gZGV0ZXJtaW5lIGlmIHRoZSByZXN1bHRcbiAgIGlzIHRydWUgb3IgZmFsc2UuXG5cbiAgIFRoZXJlIGFyZSBubyBpbXBsaWVkIHJlbGF0aW9uc2hpcHMgYW1vbmcgdGhlIGNvbXBhcmlzb24gb3BlcmF0b3JzLlxuICAgVGhlIHRydXRoIG9mIGBgeD09eWBgIGRvZXMgbm90IGltcGx5IHRoYXQgYGB4IT15YGAgaXMgZmFsc2UuXG4gICBBY2NvcmRpbmdseSwgd2hlbiBkZWZpbmluZyBgYF9fZXFfXygpYGAsIG9uZSBzaG91bGQgYWxzbyBkZWZpbmVcbiAgIGBgX19uZV9fKClgYCBzbyB0aGF0IHRoZSBvcGVyYXRvcnMgd2lsbCBiZWhhdmUgYXMgZXhwZWN0ZWQuICBTZWVcbiAgIHRoZSBwYXJhZ3JhcGggb24gYGBfX2hhc2hfXygpYGAgZm9yIHNvbWUgaW1wb3J0YW50IG5vdGVzIG9uXG4gICBjcmVhdGluZyAqaGFzaGFibGUqIG9iamVjdHMgd2hpY2ggc3VwcG9ydCBjdXN0b20gY29tcGFyaXNvblxuICAgb3BlcmF0aW9ucyBhbmQgYXJlIHVzYWJsZSBhcyBkaWN0aW9uYXJ5IGtleXMuXG5cbiAgIFRoZXJlIGFyZSBubyBzd2FwcGVkLWFyZ3VtZW50IHZlcnNpb25zIG9mIHRoZXNlIG1ldGhvZHMgKHRvIGJlIHVzZWRcbiAgIHdoZW4gdGhlIGxlZnQgYXJndW1lbnQgZG9lcyBub3Qgc3VwcG9ydCB0aGUgb3BlcmF0aW9uIGJ1dCB0aGUgcmlnaHRcbiAgIGFyZ3VtZW50IGRvZXMpOyByYXRoZXIsIGBgX19sdF9fKClgYCBhbmQgYGBfX2d0X18oKWBgIGFyZSBlYWNoXG4gICBvdGhlclwncyByZWZsZWN0aW9uLCBgYF9fbGVfXygpYGAgYW5kIGBgX19nZV9fKClgYCBhcmUgZWFjaCBvdGhlclwnc1xuICAgcmVmbGVjdGlvbiwgYW5kIGBgX19lcV9fKClgYCBhbmQgYGBfX25lX18oKWBgIGFyZSB0aGVpciBvd25cbiAgIHJlZmxlY3Rpb24uXG5cbiAgIEFyZ3VtZW50cyB0byByaWNoIGNvbXBhcmlzb24gbWV0aG9kcyBhcmUgbmV2ZXIgY29lcmNlZC5cblxuICAgVG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBvcmRlcmluZyBvcGVyYXRpb25zIGZyb20gYSBzaW5nbGUgcm9vdFxuICAgb3BlcmF0aW9uLCBzZWUgYGBmdW5jdG9vbHMudG90YWxfb3JkZXJpbmcoKWBgLlxuXG5vYmplY3QuX19oYXNoX18oc2VsZilcblxuICAgQ2FsbGVkIGJ5IGJ1aWx0LWluIGZ1bmN0aW9uIGBgaGFzaCgpYGAgYW5kIGZvciBvcGVyYXRpb25zIG9uXG4gICBtZW1iZXJzIG9mIGhhc2hlZCBjb2xsZWN0aW9ucyBpbmNsdWRpbmcgYGBzZXRgYCwgYGBmcm96ZW5zZXRgYCwgYW5kXG4gICBgYGRpY3RgYC4gIGBgX19oYXNoX18oKWBgIHNob3VsZCByZXR1cm4gYW4gaW50ZWdlci4gIFRoZSBvbmx5XG4gICByZXF1aXJlZCBwcm9wZXJ0eSBpcyB0aGF0IG9iamVjdHMgd2hpY2ggY29tcGFyZSBlcXVhbCBoYXZlIHRoZSBzYW1lXG4gICBoYXNoIHZhbHVlOyBpdCBpcyBhZHZpc2VkIHRvIHNvbWVob3cgbWl4IHRvZ2V0aGVyIChlLmcuIHVzaW5nXG4gICBleGNsdXNpdmUgb3IpIHRoZSBoYXNoIHZhbHVlcyBmb3IgdGhlIGNvbXBvbmVudHMgb2YgdGhlIG9iamVjdCB0aGF0XG4gICBhbHNvIHBsYXkgYSBwYXJ0IGluIGNvbXBhcmlzb24gb2Ygb2JqZWN0cy5cblxuICAgSWYgYSBjbGFzcyBkb2VzIG5vdCBkZWZpbmUgYW4gYGBfX2VxX18oKWBgIG1ldGhvZCBpdCBzaG91bGQgbm90XG4gICBkZWZpbmUgYSBgYF9faGFzaF9fKClgYCBvcGVyYXRpb24gZWl0aGVyOyBpZiBpdCBkZWZpbmVzXG4gICBgYF9fZXFfXygpYGAgYnV0IG5vdCBgYF9faGFzaF9fKClgYCwgaXRzIGluc3RhbmNlcyB3aWxsIG5vdCBiZVxuICAgdXNhYmxlIGFzIGl0ZW1zIGluIGhhc2hhYmxlIGNvbGxlY3Rpb25zLiAgSWYgYSBjbGFzcyBkZWZpbmVzXG4gICBtdXRhYmxlIG9iamVjdHMgYW5kIGltcGxlbWVudHMgYW4gYGBfX2VxX18oKWBgIG1ldGhvZCwgaXQgc2hvdWxkXG4gICBub3QgaW1wbGVtZW50IGBgX19oYXNoX18oKWBgLCBzaW5jZSB0aGUgaW1wbGVtZW50YXRpb24gb2YgaGFzaGFibGVcbiAgIGNvbGxlY3Rpb25zIHJlcXVpcmVzIHRoYXQgYSBrZXlcJ3MgaGFzaCB2YWx1ZSBpcyBpbW11dGFibGUgKGlmIHRoZVxuICAgb2JqZWN0XCdzIGhhc2ggdmFsdWUgY2hhbmdlcywgaXQgd2lsbCBiZSBpbiB0aGUgd3JvbmcgaGFzaCBidWNrZXQpLlxuXG4gICBVc2VyLWRlZmluZWQgY2xhc3NlcyBoYXZlIGBgX19lcV9fKClgYCBhbmQgYGBfX2hhc2hfXygpYGAgbWV0aG9kc1xuICAgYnkgZGVmYXVsdDsgd2l0aCB0aGVtLCBhbGwgb2JqZWN0cyBjb21wYXJlIHVuZXF1YWwgKGV4Y2VwdCB3aXRoXG4gICB0aGVtc2VsdmVzKSBhbmQgYGB4Ll9faGFzaF9fKClgYCByZXR1cm5zIGBgaWQoeClgYC5cblxuICAgQ2xhc3NlcyB3aGljaCBpbmhlcml0IGEgYGBfX2hhc2hfXygpYGAgbWV0aG9kIGZyb20gYSBwYXJlbnQgY2xhc3NcbiAgIGJ1dCBjaGFuZ2UgdGhlIG1lYW5pbmcgb2YgYGBfX2VxX18oKWBgIHN1Y2ggdGhhdCB0aGUgaGFzaCB2YWx1ZVxuICAgcmV0dXJuZWQgaXMgbm8gbG9uZ2VyIGFwcHJvcHJpYXRlIChlLmcuIGJ5IHN3aXRjaGluZyB0byBhIHZhbHVlLVxuICAgYmFzZWQgY29uY2VwdCBvZiBlcXVhbGl0eSBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0IGlkZW50aXR5IGJhc2VkXG4gICBlcXVhbGl0eSkgY2FuIGV4cGxpY2l0bHkgZmxhZyB0aGVtc2VsdmVzIGFzIGJlaW5nIHVuaGFzaGFibGUgYnlcbiAgIHNldHRpbmcgYGBfX2hhc2hfXyA9IE5vbmVgYCBpbiB0aGUgY2xhc3MgZGVmaW5pdGlvbi4gRG9pbmcgc28gbWVhbnNcbiAgIHRoYXQgbm90IG9ubHkgd2lsbCBpbnN0YW5jZXMgb2YgdGhlIGNsYXNzIHJhaXNlIGFuIGFwcHJvcHJpYXRlXG4gICBgYFR5cGVFcnJvcmBgIHdoZW4gYSBwcm9ncmFtIGF0dGVtcHRzIHRvIHJldHJpZXZlIHRoZWlyIGhhc2ggdmFsdWUsXG4gICBidXQgdGhleSB3aWxsIGFsc28gYmUgY29ycmVjdGx5IGlkZW50aWZpZWQgYXMgdW5oYXNoYWJsZSB3aGVuXG4gICBjaGVja2luZyBgYGlzaW5zdGFuY2Uob2JqLCBjb2xsZWN0aW9ucy5IYXNoYWJsZSlgYCAodW5saWtlIGNsYXNzZXNcbiAgIHdoaWNoIGRlZmluZSB0aGVpciBvd24gYGBfX2hhc2hfXygpYGAgdG8gZXhwbGljaXRseSByYWlzZVxuICAgYGBUeXBlRXJyb3JgYCkuXG5cbiAgIElmIGEgY2xhc3MgdGhhdCBvdmVycmlkZXMgYGBfX2VxX18oKWBgIG5lZWRzIHRvIHJldGFpbiB0aGVcbiAgIGltcGxlbWVudGF0aW9uIG9mIGBgX19oYXNoX18oKWBgIGZyb20gYSBwYXJlbnQgY2xhc3MsIHRoZVxuICAgaW50ZXJwcmV0ZXIgbXVzdCBiZSB0b2xkIHRoaXMgZXhwbGljaXRseSBieSBzZXR0aW5nIGBgX19oYXNoX18gPVxuICAgPFBhcmVudENsYXNzPi5fX2hhc2hfX2BgLiBPdGhlcndpc2UgdGhlIGluaGVyaXRhbmNlIG9mXG4gICBgYF9faGFzaF9fKClgYCB3aWxsIGJlIGJsb2NrZWQsIGp1c3QgYXMgaWYgYGBfX2hhc2hfX2BgIGhhZCBiZWVuXG4gICBleHBsaWNpdGx5IHNldCB0byBgYE5vbmVgYC5cblxub2JqZWN0Ll9fYm9vbF9fKHNlbGYpXG5cbiAgIENhbGxlZCB0byBpbXBsZW1lbnQgdHJ1dGggdmFsdWUgdGVzdGluZyBhbmQgdGhlIGJ1aWx0LWluIG9wZXJhdGlvblxuICAgYGBib29sKClgYDsgc2hvdWxkIHJldHVybiBgYEZhbHNlYGAgb3IgYGBUcnVlYGAuICBXaGVuIHRoaXMgbWV0aG9kXG4gICBpcyBub3QgZGVmaW5lZCwgYGBfX2xlbl9fKClgYCBpcyBjYWxsZWQsIGlmIGl0IGlzIGRlZmluZWQsIGFuZCB0aGVcbiAgIG9iamVjdCBpcyBjb25zaWRlcmVkIHRydWUgaWYgaXRzIHJlc3VsdCBpcyBub256ZXJvLiAgSWYgYSBjbGFzc1xuICAgZGVmaW5lcyBuZWl0aGVyIGBgX19sZW5fXygpYGAgbm9yIGBgX19ib29sX18oKWBgLCBhbGwgaXRzIGluc3RhbmNlc1xuICAgYXJlIGNvbnNpZGVyZWQgdHJ1ZS5cblxuXG5DdXN0b21pemluZyBhdHRyaWJ1dGUgYWNjZXNzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblRoZSBmb2xsb3dpbmcgbWV0aG9kcyBjYW4gYmUgZGVmaW5lZCB0byBjdXN0b21pemUgdGhlIG1lYW5pbmcgb2ZcbmF0dHJpYnV0ZSBhY2Nlc3MgKHVzZSBvZiwgYXNzaWdubWVudCB0bywgb3IgZGVsZXRpb24gb2YgYGB4Lm5hbWVgYClcbmZvciBjbGFzcyBpbnN0YW5jZXMuXG5cbm9iamVjdC5fX2dldGF0dHJfXyhzZWxmLCBuYW1lKVxuXG4gICBDYWxsZWQgd2hlbiBhbiBhdHRyaWJ1dGUgbG9va3VwIGhhcyBub3QgZm91bmQgdGhlIGF0dHJpYnV0ZSBpbiB0aGVcbiAgIHVzdWFsIHBsYWNlcyAoaS5lLiBpdCBpcyBub3QgYW4gaW5zdGFuY2UgYXR0cmlidXRlIG5vciBpcyBpdCBmb3VuZFxuICAgaW4gdGhlIGNsYXNzIHRyZWUgZm9yIGBgc2VsZmBgKS4gIGBgbmFtZWBgIGlzIHRoZSBhdHRyaWJ1dGUgbmFtZS5cbiAgIFRoaXMgbWV0aG9kIHNob3VsZCByZXR1cm4gdGhlIChjb21wdXRlZCkgYXR0cmlidXRlIHZhbHVlIG9yIHJhaXNlXG4gICBhbiBgYEF0dHJpYnV0ZUVycm9yYGAgZXhjZXB0aW9uLlxuXG4gICBOb3RlIHRoYXQgaWYgdGhlIGF0dHJpYnV0ZSBpcyBmb3VuZCB0aHJvdWdoIHRoZSBub3JtYWwgbWVjaGFuaXNtLFxuICAgYGBfX2dldGF0dHJfXygpYGAgaXMgbm90IGNhbGxlZC4gIChUaGlzIGlzIGFuIGludGVudGlvbmFsIGFzeW1tZXRyeVxuICAgYmV0d2VlbiBgYF9fZ2V0YXR0cl9fKClgYCBhbmQgYGBfX3NldGF0dHJfXygpYGAuKSBUaGlzIGlzIGRvbmUgYm90aFxuICAgZm9yIGVmZmljaWVuY3kgcmVhc29ucyBhbmQgYmVjYXVzZSBvdGhlcndpc2UgYGBfX2dldGF0dHJfXygpYGBcbiAgIHdvdWxkIGhhdmUgbm8gd2F5IHRvIGFjY2VzcyBvdGhlciBhdHRyaWJ1dGVzIG9mIHRoZSBpbnN0YW5jZS4gIE5vdGVcbiAgIHRoYXQgYXQgbGVhc3QgZm9yIGluc3RhbmNlIHZhcmlhYmxlcywgeW91IGNhbiBmYWtlIHRvdGFsIGNvbnRyb2wgYnlcbiAgIG5vdCBpbnNlcnRpbmcgYW55IHZhbHVlcyBpbiB0aGUgaW5zdGFuY2UgYXR0cmlidXRlIGRpY3Rpb25hcnkgKGJ1dFxuICAgaW5zdGVhZCBpbnNlcnRpbmcgdGhlbSBpbiBhbm90aGVyIG9iamVjdCkuICBTZWUgdGhlXG4gICBgYF9fZ2V0YXR0cmlidXRlX18oKWBgIG1ldGhvZCBiZWxvdyBmb3IgYSB3YXkgdG8gYWN0dWFsbHkgZ2V0IHRvdGFsXG4gICBjb250cm9sIG92ZXIgYXR0cmlidXRlIGFjY2Vzcy5cblxub2JqZWN0Ll9fZ2V0YXR0cmlidXRlX18oc2VsZiwgbmFtZSlcblxuICAgQ2FsbGVkIHVuY29uZGl0aW9uYWxseSB0byBpbXBsZW1lbnQgYXR0cmlidXRlIGFjY2Vzc2VzIGZvclxuICAgaW5zdGFuY2VzIG9mIHRoZSBjbGFzcy4gSWYgdGhlIGNsYXNzIGFsc28gZGVmaW5lc1xuICAgYGBfX2dldGF0dHJfXygpYGAsIHRoZSBsYXR0ZXIgd2lsbCBub3QgYmUgY2FsbGVkIHVubGVzc1xuICAgYGBfX2dldGF0dHJpYnV0ZV9fKClgYCBlaXRoZXIgY2FsbHMgaXQgZXhwbGljaXRseSBvciByYWlzZXMgYW5cbiAgIGBgQXR0cmlidXRlRXJyb3JgYC4gVGhpcyBtZXRob2Qgc2hvdWxkIHJldHVybiB0aGUgKGNvbXB1dGVkKVxuICAgYXR0cmlidXRlIHZhbHVlIG9yIHJhaXNlIGFuIGBgQXR0cmlidXRlRXJyb3JgYCBleGNlcHRpb24uIEluIG9yZGVyXG4gICB0byBhdm9pZCBpbmZpbml0ZSByZWN1cnNpb24gaW4gdGhpcyBtZXRob2QsIGl0cyBpbXBsZW1lbnRhdGlvblxuICAgc2hvdWxkIGFsd2F5cyBjYWxsIHRoZSBiYXNlIGNsYXNzIG1ldGhvZCB3aXRoIHRoZSBzYW1lIG5hbWUgdG9cbiAgIGFjY2VzcyBhbnkgYXR0cmlidXRlcyBpdCBuZWVkcywgZm9yIGV4YW1wbGUsXG4gICBgYG9iamVjdC5fX2dldGF0dHJpYnV0ZV9fKHNlbGYsIG5hbWUpYGAuXG5cbiAgIE5vdGU6IFRoaXMgbWV0aG9kIG1heSBzdGlsbCBiZSBieXBhc3NlZCB3aGVuIGxvb2tpbmcgdXAgc3BlY2lhbCBtZXRob2RzXG4gICAgIGFzIHRoZSByZXN1bHQgb2YgaW1wbGljaXQgaW52b2NhdGlvbiB2aWEgbGFuZ3VhZ2Ugc3ludGF4IG9yXG4gICAgIGJ1aWx0LWluIGZ1bmN0aW9ucy4gU2VlICpTcGVjaWFsIG1ldGhvZCBsb29rdXAqLlxuXG5vYmplY3QuX19zZXRhdHRyX18oc2VsZiwgbmFtZSwgdmFsdWUpXG5cbiAgIENhbGxlZCB3aGVuIGFuIGF0dHJpYnV0ZSBhc3NpZ25tZW50IGlzIGF0dGVtcHRlZC4gIFRoaXMgaXMgY2FsbGVkXG4gICBpbnN0ZWFkIG9mIHRoZSBub3JtYWwgbWVjaGFuaXNtIChpLmUuIHN0b3JlIHRoZSB2YWx1ZSBpbiB0aGVcbiAgIGluc3RhbmNlIGRpY3Rpb25hcnkpLiAqbmFtZSogaXMgdGhlIGF0dHJpYnV0ZSBuYW1lLCAqdmFsdWUqIGlzIHRoZVxuICAgdmFsdWUgdG8gYmUgYXNzaWduZWQgdG8gaXQuXG5cbiAgIElmIGBgX19zZXRhdHRyX18oKWBgIHdhbnRzIHRvIGFzc2lnbiB0byBhbiBpbnN0YW5jZSBhdHRyaWJ1dGUsIGl0XG4gICBzaG91bGQgY2FsbCB0aGUgYmFzZSBjbGFzcyBtZXRob2Qgd2l0aCB0aGUgc2FtZSBuYW1lLCBmb3IgZXhhbXBsZSxcbiAgIGBgb2JqZWN0Ll9fc2V0YXR0cl9fKHNlbGYsIG5hbWUsIHZhbHVlKWBgLlxuXG5vYmplY3QuX19kZWxhdHRyX18oc2VsZiwgbmFtZSlcblxuICAgTGlrZSBgYF9fc2V0YXR0cl9fKClgYCBidXQgZm9yIGF0dHJpYnV0ZSBkZWxldGlvbiBpbnN0ZWFkIG9mXG4gICBhc3NpZ25tZW50LiAgVGhpcyBzaG91bGQgb25seSBiZSBpbXBsZW1lbnRlZCBpZiBgYGRlbCBvYmoubmFtZWBgIGlzXG4gICBtZWFuaW5nZnVsIGZvciB0aGUgb2JqZWN0LlxuXG5vYmplY3QuX19kaXJfXyhzZWxmKVxuXG4gICBDYWxsZWQgd2hlbiBgYGRpcigpYGAgaXMgY2FsbGVkIG9uIHRoZSBvYmplY3QuICBBIGxpc3QgbXVzdCBiZVxuICAgcmV0dXJuZWQuXG5cblxuSW1wbGVtZW50aW5nIERlc2NyaXB0b3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuVGhlIGZvbGxvd2luZyBtZXRob2RzIG9ubHkgYXBwbHkgd2hlbiBhbiBpbnN0YW5jZSBvZiB0aGUgY2xhc3NcbmNvbnRhaW5pbmcgdGhlIG1ldGhvZCAoYSBzby1jYWxsZWQgKmRlc2NyaXB0b3IqIGNsYXNzKSBhcHBlYXJzIGluIGFuXG4qb3duZXIqIGNsYXNzICh0aGUgZGVzY3JpcHRvciBtdXN0IGJlIGluIGVpdGhlciB0aGUgb3duZXJcJ3MgY2xhc3NcbmRpY3Rpb25hcnkgb3IgaW4gdGhlIGNsYXNzIGRpY3Rpb25hcnkgZm9yIG9uZSBvZiBpdHMgcGFyZW50cykuICBJbiB0aGVcbmV4YW1wbGVzIGJlbG93LCAidGhlIGF0dHJpYnV0ZSIgcmVmZXJzIHRvIHRoZSBhdHRyaWJ1dGUgd2hvc2UgbmFtZSBpc1xudGhlIGtleSBvZiB0aGUgcHJvcGVydHkgaW4gdGhlIG93bmVyIGNsYXNzXCcgYGBfX2RpY3RfX2BgLlxuXG5vYmplY3QuX19nZXRfXyhzZWxmLCBpbnN0YW5jZSwgb3duZXIpXG5cbiAgIENhbGxlZCB0byBnZXQgdGhlIGF0dHJpYnV0ZSBvZiB0aGUgb3duZXIgY2xhc3MgKGNsYXNzIGF0dHJpYnV0ZVxuICAgYWNjZXNzKSBvciBvZiBhbiBpbnN0YW5jZSBvZiB0aGF0IGNsYXNzIChpbnN0YW5jZSBhdHRyaWJ1dGVcbiAgIGFjY2VzcykuICpvd25lciogaXMgYWx3YXlzIHRoZSBvd25lciBjbGFzcywgd2hpbGUgKmluc3RhbmNlKiBpcyB0aGVcbiAgIGluc3RhbmNlIHRoYXQgdGhlIGF0dHJpYnV0ZSB3YXMgYWNjZXNzZWQgdGhyb3VnaCwgb3IgYGBOb25lYGAgd2hlblxuICAgdGhlIGF0dHJpYnV0ZSBpcyBhY2Nlc3NlZCB0aHJvdWdoIHRoZSAqb3duZXIqLiAgVGhpcyBtZXRob2Qgc2hvdWxkXG4gICByZXR1cm4gdGhlIChjb21wdXRlZCkgYXR0cmlidXRlIHZhbHVlIG9yIHJhaXNlIGFuXG4gICBgYEF0dHJpYnV0ZUVycm9yYGAgZXhjZXB0aW9uLlxuXG5vYmplY3QuX19zZXRfXyhzZWxmLCBpbnN0YW5jZSwgdmFsdWUpXG5cbiAgIENhbGxlZCB0byBzZXQgdGhlIGF0dHJpYnV0ZSBvbiBhbiBpbnN0YW5jZSAqaW5zdGFuY2UqIG9mIHRoZSBvd25lclxuICAgY2xhc3MgdG8gYSBuZXcgdmFsdWUsICp2YWx1ZSouXG5cbm9iamVjdC5fX2RlbGV0ZV9fKHNlbGYsIGluc3RhbmNlKVxuXG4gICBDYWxsZWQgdG8gZGVsZXRlIHRoZSBhdHRyaWJ1dGUgb24gYW4gaW5zdGFuY2UgKmluc3RhbmNlKiBvZiB0aGVcbiAgIG93bmVyIGNsYXNzLlxuXG5cbkludm9raW5nIERlc2NyaXB0b3JzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5JbiBnZW5lcmFsLCBhIGRlc2NyaXB0b3IgaXMgYW4gb2JqZWN0IGF0dHJpYnV0ZSB3aXRoICJiaW5kaW5nXG5iZWhhdmlvciIsIG9uZSB3aG9zZSBhdHRyaWJ1dGUgYWNjZXNzIGhhcyBiZWVuIG92ZXJyaWRkZW4gYnkgbWV0aG9kc1xuaW4gdGhlIGRlc2NyaXB0b3IgcHJvdG9jb2w6ICBgYF9fZ2V0X18oKWBgLCBgYF9fc2V0X18oKWBgLCBhbmRcbmBgX19kZWxldGVfXygpYGAuIElmIGFueSBvZiB0aG9zZSBtZXRob2RzIGFyZSBkZWZpbmVkIGZvciBhbiBvYmplY3QsXG5pdCBpcyBzYWlkIHRvIGJlIGEgZGVzY3JpcHRvci5cblxuVGhlIGRlZmF1bHQgYmVoYXZpb3IgZm9yIGF0dHJpYnV0ZSBhY2Nlc3MgaXMgdG8gZ2V0LCBzZXQsIG9yIGRlbGV0ZVxudGhlIGF0dHJpYnV0ZSBmcm9tIGFuIG9iamVjdFwncyBkaWN0aW9uYXJ5LiBGb3IgaW5zdGFuY2UsIGBgYS54YGAgaGFzIGFcbmxvb2t1cCBjaGFpbiBzdGFydGluZyB3aXRoIGBgYS5fX2RpY3RfX1tcJ3hcJ11gYCwgdGhlblxuYGB0eXBlKGEpLl9fZGljdF9fW1wneFwnXWBgLCBhbmQgY29udGludWluZyB0aHJvdWdoIHRoZSBiYXNlIGNsYXNzZXMgb2ZcbmBgdHlwZShhKWBgIGV4Y2x1ZGluZyBtZXRhY2xhc3Nlcy5cblxuSG93ZXZlciwgaWYgdGhlIGxvb2tlZC11cCB2YWx1ZSBpcyBhbiBvYmplY3QgZGVmaW5pbmcgb25lIG9mIHRoZVxuZGVzY3JpcHRvciBtZXRob2RzLCB0aGVuIFB5dGhvbiBtYXkgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYmVoYXZpb3IgYW5kXG5pbnZva2UgdGhlIGRlc2NyaXB0b3IgbWV0aG9kIGluc3RlYWQuICBXaGVyZSB0aGlzIG9jY3VycyBpbiB0aGVcbnByZWNlZGVuY2UgY2hhaW4gZGVwZW5kcyBvbiB3aGljaCBkZXNjcmlwdG9yIG1ldGhvZHMgd2VyZSBkZWZpbmVkIGFuZFxuaG93IHRoZXkgd2VyZSBjYWxsZWQuXG5cblRoZSBzdGFydGluZyBwb2ludCBmb3IgZGVzY3JpcHRvciBpbnZvY2F0aW9uIGlzIGEgYmluZGluZywgYGBhLnhgYC5cbkhvdyB0aGUgYXJndW1lbnRzIGFyZSBhc3NlbWJsZWQgZGVwZW5kcyBvbiBgYGFgYDpcblxuRGlyZWN0IENhbGxcbiAgIFRoZSBzaW1wbGVzdCBhbmQgbGVhc3QgY29tbW9uIGNhbGwgaXMgd2hlbiB1c2VyIGNvZGUgZGlyZWN0bHlcbiAgIGludm9rZXMgYSBkZXNjcmlwdG9yIG1ldGhvZDogICAgYGB4Ll9fZ2V0X18oYSlgYC5cblxuSW5zdGFuY2UgQmluZGluZ1xuICAgSWYgYmluZGluZyB0byBhbiBvYmplY3QgaW5zdGFuY2UsIGBgYS54YGAgaXMgdHJhbnNmb3JtZWQgaW50byB0aGVcbiAgIGNhbGw6IGBgdHlwZShhKS5fX2RpY3RfX1tcJ3hcJ10uX19nZXRfXyhhLCB0eXBlKGEpKWBgLlxuXG5DbGFzcyBCaW5kaW5nXG4gICBJZiBiaW5kaW5nIHRvIGEgY2xhc3MsIGBgQS54YGAgaXMgdHJhbnNmb3JtZWQgaW50byB0aGUgY2FsbDpcbiAgIGBgQS5fX2RpY3RfX1tcJ3hcJ10uX19nZXRfXyhOb25lLCBBKWBgLlxuXG5TdXBlciBCaW5kaW5nXG4gICBJZiBgYGFgYCBpcyBhbiBpbnN0YW5jZSBvZiBgYHN1cGVyYGAsIHRoZW4gdGhlIGJpbmRpbmcgYGBzdXBlcihCLFxuICAgb2JqKS5tKClgYCBzZWFyY2hlcyBgYG9iai5fX2NsYXNzX18uX19tcm9fX2BgIGZvciB0aGUgYmFzZSBjbGFzc1xuICAgYGBBYGAgaW1tZWRpYXRlbHkgcHJlY2VkaW5nIGBgQmBgIGFuZCB0aGVuIGludm9rZXMgdGhlIGRlc2NyaXB0b3JcbiAgIHdpdGggdGhlIGNhbGw6IGBgQS5fX2RpY3RfX1tcJ21cJ10uX19nZXRfXyhvYmosIG9iai5fX2NsYXNzX18pYGAuXG5cbkZvciBpbnN0YW5jZSBiaW5kaW5ncywgdGhlIHByZWNlZGVuY2Ugb2YgZGVzY3JpcHRvciBpbnZvY2F0aW9uIGRlcGVuZHNcbm9uIHRoZSB3aGljaCBkZXNjcmlwdG9yIG1ldGhvZHMgYXJlIGRlZmluZWQuICBBIGRlc2NyaXB0b3IgY2FuIGRlZmluZVxuYW55IGNvbWJpbmF0aW9uIG9mIGBgX19nZXRfXygpYGAsIGBgX19zZXRfXygpYGAgYW5kIGBgX19kZWxldGVfXygpYGAuXG5JZiBpdCBkb2VzIG5vdCBkZWZpbmUgYGBfX2dldF9fKClgYCwgdGhlbiBhY2Nlc3NpbmcgdGhlIGF0dHJpYnV0ZSB3aWxsXG5yZXR1cm4gdGhlIGRlc2NyaXB0b3Igb2JqZWN0IGl0c2VsZiB1bmxlc3MgdGhlcmUgaXMgYSB2YWx1ZSBpbiB0aGVcbm9iamVjdFwncyBpbnN0YW5jZSBkaWN0aW9uYXJ5LiAgSWYgdGhlIGRlc2NyaXB0b3IgZGVmaW5lcyBgYF9fc2V0X18oKWBgXG5hbmQvb3IgYGBfX2RlbGV0ZV9fKClgYCwgaXQgaXMgYSBkYXRhIGRlc2NyaXB0b3I7IGlmIGl0IGRlZmluZXNcbm5laXRoZXIsIGl0IGlzIGEgbm9uLWRhdGEgZGVzY3JpcHRvci4gIE5vcm1hbGx5LCBkYXRhIGRlc2NyaXB0b3JzXG5kZWZpbmUgYm90aCBgYF9fZ2V0X18oKWBgIGFuZCBgYF9fc2V0X18oKWBgLCB3aGlsZSBub24tZGF0YVxuZGVzY3JpcHRvcnMgaGF2ZSBqdXN0IHRoZSBgYF9fZ2V0X18oKWBgIG1ldGhvZC4gIERhdGEgZGVzY3JpcHRvcnMgd2l0aFxuYGBfX3NldF9fKClgYCBhbmQgYGBfX2dldF9fKClgYCBkZWZpbmVkIGFsd2F5cyBvdmVycmlkZSBhIHJlZGVmaW5pdGlvblxuaW4gYW4gaW5zdGFuY2UgZGljdGlvbmFyeS4gIEluIGNvbnRyYXN0LCBub24tZGF0YSBkZXNjcmlwdG9ycyBjYW4gYmVcbm92ZXJyaWRkZW4gYnkgaW5zdGFuY2VzLlxuXG5QeXRob24gbWV0aG9kcyAoaW5jbHVkaW5nIGBgc3RhdGljbWV0aG9kKClgYCBhbmQgYGBjbGFzc21ldGhvZCgpYGApXG5hcmUgaW1wbGVtZW50ZWQgYXMgbm9uLWRhdGEgZGVzY3JpcHRvcnMuICBBY2NvcmRpbmdseSwgaW5zdGFuY2VzIGNhblxucmVkZWZpbmUgYW5kIG92ZXJyaWRlIG1ldGhvZHMuICBUaGlzIGFsbG93cyBpbmRpdmlkdWFsIGluc3RhbmNlcyB0b1xuYWNxdWlyZSBiZWhhdmlvcnMgdGhhdCBkaWZmZXIgZnJvbSBvdGhlciBpbnN0YW5jZXMgb2YgdGhlIHNhbWUgY2xhc3MuXG5cblRoZSBgYHByb3BlcnR5KClgYCBmdW5jdGlvbiBpcyBpbXBsZW1lbnRlZCBhcyBhIGRhdGEgZGVzY3JpcHRvci5cbkFjY29yZGluZ2x5LCBpbnN0YW5jZXMgY2Fubm90IG92ZXJyaWRlIHRoZSBiZWhhdmlvciBvZiBhIHByb3BlcnR5LlxuXG5cbl9fc2xvdHNfX1xuLS0tLS0tLS0tXG5cbkJ5IGRlZmF1bHQsIGluc3RhbmNlcyBvZiBjbGFzc2VzIGhhdmUgYSBkaWN0aW9uYXJ5IGZvciBhdHRyaWJ1dGVcbnN0b3JhZ2UuICBUaGlzIHdhc3RlcyBzcGFjZSBmb3Igb2JqZWN0cyBoYXZpbmcgdmVyeSBmZXcgaW5zdGFuY2VcbnZhcmlhYmxlcy4gIFRoZSBzcGFjZSBjb25zdW1wdGlvbiBjYW4gYmVjb21lIGFjdXRlIHdoZW4gY3JlYXRpbmcgbGFyZ2Vcbm51bWJlcnMgb2YgaW5zdGFuY2VzLlxuXG5UaGUgZGVmYXVsdCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyAqX19zbG90c19fKiBpbiBhIGNsYXNzXG5kZWZpbml0aW9uLiBUaGUgKl9fc2xvdHNfXyogZGVjbGFyYXRpb24gdGFrZXMgYSBzZXF1ZW5jZSBvZiBpbnN0YW5jZVxudmFyaWFibGVzIGFuZCByZXNlcnZlcyBqdXN0IGVub3VnaCBzcGFjZSBpbiBlYWNoIGluc3RhbmNlIHRvIGhvbGQgYVxudmFsdWUgZm9yIGVhY2ggdmFyaWFibGUuICBTcGFjZSBpcyBzYXZlZCBiZWNhdXNlICpfX2RpY3RfXyogaXMgbm90XG5jcmVhdGVkIGZvciBlYWNoIGluc3RhbmNlLlxuXG5vYmplY3QuX19zbG90c19fXG5cbiAgIFRoaXMgY2xhc3MgdmFyaWFibGUgY2FuIGJlIGFzc2lnbmVkIGEgc3RyaW5nLCBpdGVyYWJsZSwgb3Igc2VxdWVuY2VcbiAgIG9mIHN0cmluZ3Mgd2l0aCB2YXJpYWJsZSBuYW1lcyB1c2VkIGJ5IGluc3RhbmNlcy4gIElmIGRlZmluZWQgaW4gYVxuICAgY2xhc3MsICpfX3Nsb3RzX18qIHJlc2VydmVzIHNwYWNlIGZvciB0aGUgZGVjbGFyZWQgdmFyaWFibGVzIGFuZFxuICAgcHJldmVudHMgdGhlIGF1dG9tYXRpYyBjcmVhdGlvbiBvZiAqX19kaWN0X18qIGFuZCAqX193ZWFrcmVmX18qIGZvclxuICAgZWFjaCBpbnN0YW5jZS5cblxuXG5Ob3RlcyBvbiB1c2luZyAqX19zbG90c19fKlxufn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5cblxuKiBXaGVuIGluaGVyaXRpbmcgZnJvbSBhIGNsYXNzIHdpdGhvdXQgKl9fc2xvdHNfXyosIHRoZSAqX19kaWN0X18qXG4gIGF0dHJpYnV0ZSBvZiB0aGF0IGNsYXNzIHdpbGwgYWx3YXlzIGJlIGFjY2Vzc2libGUsIHNvIGEgKl9fc2xvdHNfXypcbiAgZGVmaW5pdGlvbiBpbiB0aGUgc3ViY2xhc3MgaXMgbWVhbmluZ2xlc3MuXG5cbiogV2l0aG91dCBhICpfX2RpY3RfXyogdmFyaWFibGUsIGluc3RhbmNlcyBjYW5ub3QgYmUgYXNzaWduZWQgbmV3XG4gIHZhcmlhYmxlcyBub3QgbGlzdGVkIGluIHRoZSAqX19zbG90c19fKiBkZWZpbml0aW9uLiAgQXR0ZW1wdHMgdG9cbiAgYXNzaWduIHRvIGFuIHVubGlzdGVkIHZhcmlhYmxlIG5hbWUgcmFpc2VzIGBgQXR0cmlidXRlRXJyb3JgYC4gSWZcbiAgZHluYW1pYyBhc3NpZ25tZW50IG9mIG5ldyB2YXJpYWJsZXMgaXMgZGVzaXJlZCwgdGhlbiBhZGRcbiAgYGBcJ19fZGljdF9fXCdgYCB0byB0aGUgc2VxdWVuY2Ugb2Ygc3RyaW5ncyBpbiB0aGUgKl9fc2xvdHNfXypcbiAgZGVjbGFyYXRpb24uXG5cbiogV2l0aG91dCBhICpfX3dlYWtyZWZfXyogdmFyaWFibGUgZm9yIGVhY2ggaW5zdGFuY2UsIGNsYXNzZXMgZGVmaW5pbmdcbiAgKl9fc2xvdHNfXyogZG8gbm90IHN1cHBvcnQgd2VhayByZWZlcmVuY2VzIHRvIGl0cyBpbnN0YW5jZXMuIElmIHdlYWtcbiAgcmVmZXJlbmNlIHN1cHBvcnQgaXMgbmVlZGVkLCB0aGVuIGFkZCBgYFwnX193ZWFrcmVmX19cJ2BgIHRvIHRoZVxuICBzZXF1ZW5jZSBvZiBzdHJpbmdzIGluIHRoZSAqX19zbG90c19fKiBkZWNsYXJhdGlvbi5cblxuKiAqX19zbG90c19fKiBhcmUgaW1wbGVtZW50ZWQgYXQgdGhlIGNsYXNzIGxldmVsIGJ5IGNyZWF0aW5nXG4gIGRlc2NyaXB0b3JzICgqSW1wbGVtZW50aW5nIERlc2NyaXB0b3JzKikgZm9yIGVhY2ggdmFyaWFibGUgbmFtZS4gIEFzXG4gIGEgcmVzdWx0LCBjbGFzcyBhdHRyaWJ1dGVzIGNhbm5vdCBiZSB1c2VkIHRvIHNldCBkZWZhdWx0IHZhbHVlcyBmb3JcbiAgaW5zdGFuY2UgdmFyaWFibGVzIGRlZmluZWQgYnkgKl9fc2xvdHNfXyo7IG90aGVyd2lzZSwgdGhlIGNsYXNzXG4gIGF0dHJpYnV0ZSB3b3VsZCBvdmVyd3JpdGUgdGhlIGRlc2NyaXB0b3IgYXNzaWdubWVudC5cblxuKiBUaGUgYWN0aW9uIG9mIGEgKl9fc2xvdHNfXyogZGVjbGFyYXRpb24gaXMgbGltaXRlZCB0byB0aGUgY2xhc3NcbiAgd2hlcmUgaXQgaXMgZGVmaW5lZC4gIEFzIGEgcmVzdWx0LCBzdWJjbGFzc2VzIHdpbGwgaGF2ZSBhICpfX2RpY3RfXypcbiAgdW5sZXNzIHRoZXkgYWxzbyBkZWZpbmUgKl9fc2xvdHNfXyogKHdoaWNoIG11c3Qgb25seSBjb250YWluIG5hbWVzXG4gIG9mIGFueSAqYWRkaXRpb25hbCogc2xvdHMpLlxuXG4qIElmIGEgY2xhc3MgZGVmaW5lcyBhIHNsb3QgYWxzbyBkZWZpbmVkIGluIGEgYmFzZSBjbGFzcywgdGhlIGluc3RhbmNlXG4gIHZhcmlhYmxlIGRlZmluZWQgYnkgdGhlIGJhc2UgY2xhc3Mgc2xvdCBpcyBpbmFjY2Vzc2libGUgKGV4Y2VwdCBieVxuICByZXRyaWV2aW5nIGl0cyBkZXNjcmlwdG9yIGRpcmVjdGx5IGZyb20gdGhlIGJhc2UgY2xhc3MpLiBUaGlzXG4gIHJlbmRlcnMgdGhlIG1lYW5pbmcgb2YgdGhlIHByb2dyYW0gdW5kZWZpbmVkLiAgSW4gdGhlIGZ1dHVyZSwgYVxuICBjaGVjayBtYXkgYmUgYWRkZWQgdG8gcHJldmVudCB0aGlzLlxuXG4qIE5vbmVtcHR5ICpfX3Nsb3RzX18qIGRvZXMgbm90IHdvcmsgZm9yIGNsYXNzZXMgZGVyaXZlZCBmcm9tXG4gICJ2YXJpYWJsZS1sZW5ndGgiIGJ1aWx0LWluIHR5cGVzIHN1Y2ggYXMgYGBpbnRgYCwgYGBzdHJgYCBhbmRcbiAgYGB0dXBsZWBgLlxuXG4qIEFueSBub24tc3RyaW5nIGl0ZXJhYmxlIG1heSBiZSBhc3NpZ25lZCB0byAqX19zbG90c19fKi4gTWFwcGluZ3MgbWF5XG4gIGFsc28gYmUgdXNlZDsgaG93ZXZlciwgaW4gdGhlIGZ1dHVyZSwgc3BlY2lhbCBtZWFuaW5nIG1heSBiZVxuICBhc3NpZ25lZCB0byB0aGUgdmFsdWVzIGNvcnJlc3BvbmRpbmcgdG8gZWFjaCBrZXkuXG5cbiogKl9fY2xhc3NfXyogYXNzaWdubWVudCB3b3JrcyBvbmx5IGlmIGJvdGggY2xhc3NlcyBoYXZlIHRoZSBzYW1lXG4gICpfX3Nsb3RzX18qLlxuXG5cbkN1c3RvbWl6aW5nIGNsYXNzIGNyZWF0aW9uXG49PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5CeSBkZWZhdWx0LCBjbGFzc2VzIGFyZSBjb25zdHJ1Y3RlZCB1c2luZyBgYHR5cGUoKWBgLiBBIGNsYXNzXG5kZWZpbml0aW9uIGlzIHJlYWQgaW50byBhIHNlcGFyYXRlIG5hbWVzcGFjZSBhbmQgdGhlIHZhbHVlIG9mIGNsYXNzXG5uYW1lIGlzIGJvdW5kIHRvIHRoZSByZXN1bHQgb2YgYGB0eXBlKG5hbWUsIGJhc2VzLCBkaWN0KWBgLlxuXG5XaGVuIHRoZSBjbGFzcyBkZWZpbml0aW9uIGlzIHJlYWQsIGlmIGEgY2FsbGFibGUgYGBtZXRhY2xhc3NgYCBrZXl3b3JkXG5hcmd1bWVudCBpcyBwYXNzZWQgYWZ0ZXIgdGhlIGJhc2VzIGluIHRoZSBjbGFzcyBkZWZpbml0aW9uLCB0aGVcbmNhbGxhYmxlIGdpdmVuIHdpbGwgYmUgY2FsbGVkIGluc3RlYWQgb2YgYGB0eXBlKClgYC4gIElmIG90aGVyIGtleXdvcmRcbmFyZ3VtZW50cyBhcmUgcGFzc2VkLCB0aGV5IHdpbGwgYWxzbyBiZSBwYXNzZWQgdG8gdGhlIG1ldGFjbGFzcy4gIFRoaXNcbmFsbG93cyBjbGFzc2VzIG9yIGZ1bmN0aW9ucyB0byBiZSB3cml0dGVuIHdoaWNoIG1vbml0b3Igb3IgYWx0ZXIgdGhlXG5jbGFzcyBjcmVhdGlvbiBwcm9jZXNzOlxuXG4qIE1vZGlmeWluZyB0aGUgY2xhc3MgZGljdGlvbmFyeSBwcmlvciB0byB0aGUgY2xhc3MgYmVpbmcgY3JlYXRlZC5cblxuKiBSZXR1cm5pbmcgYW4gaW5zdGFuY2Ugb2YgYW5vdGhlciBjbGFzcyAtLSBlc3NlbnRpYWxseSBwZXJmb3JtaW5nIHRoZVxuICByb2xlIG9mIGEgZmFjdG9yeSBmdW5jdGlvbi5cblxuVGhlc2Ugc3RlcHMgd2lsbCBoYXZlIHRvIGJlIHBlcmZvcm1lZCBpbiB0aGUgbWV0YWNsYXNzXCdzIGBgX19uZXdfXygpYGBcbm1ldGhvZCAtLSBgYHR5cGUuX19uZXdfXygpYGAgY2FuIHRoZW4gYmUgY2FsbGVkIGZyb20gdGhpcyBtZXRob2QgdG9cbmNyZWF0ZSBhIGNsYXNzIHdpdGggZGlmZmVyZW50IHByb3BlcnRpZXMuICBUaGlzIGV4YW1wbGUgYWRkcyBhIG5ld1xuZWxlbWVudCB0byB0aGUgY2xhc3MgZGljdGlvbmFyeSBiZWZvcmUgY3JlYXRpbmcgdGhlIGNsYXNzOlxuXG4gICBjbGFzcyBtZXRhY2xzKHR5cGUpOlxuICAgICAgIGRlZiBfX25ld19fKG1jcywgbmFtZSwgYmFzZXMsIGRpY3QpOlxuICAgICAgICAgICBkaWN0W1wnZm9vXCddID0gXCdtZXRhY2xzIHdhcyBoZXJlXCdcbiAgICAgICAgICAgcmV0dXJuIHR5cGUuX19uZXdfXyhtY3MsIG5hbWUsIGJhc2VzLCBkaWN0KVxuXG5Zb3UgY2FuIG9mIGNvdXJzZSBhbHNvIG92ZXJyaWRlIG90aGVyIGNsYXNzIG1ldGhvZHMgKG9yIGFkZCBuZXdcbm1ldGhvZHMpOyBmb3IgZXhhbXBsZSBkZWZpbmluZyBhIGN1c3RvbSBgYF9fY2FsbF9fKClgYCBtZXRob2QgaW4gdGhlXG5tZXRhY2xhc3MgYWxsb3dzIGN1c3RvbSBiZWhhdmlvciB3aGVuIHRoZSBjbGFzcyBpcyBjYWxsZWQsIGUuZy4gbm90XG5hbHdheXMgY3JlYXRpbmcgYSBuZXcgaW5zdGFuY2UuXG5cbklmIHRoZSBtZXRhY2xhc3MgaGFzIGEgYGBfX3ByZXBhcmVfXygpYGAgYXR0cmlidXRlICh1c3VhbGx5XG5pbXBsZW1lbnRlZCBhcyBhIGNsYXNzIG9yIHN0YXRpYyBtZXRob2QpLCBpdCBpcyBjYWxsZWQgYmVmb3JlIHRoZVxuY2xhc3MgYm9keSBpcyBldmFsdWF0ZWQgd2l0aCB0aGUgbmFtZSBvZiB0aGUgY2xhc3MgYW5kIGEgdHVwbGUgb2YgaXRzXG5iYXNlcyBmb3IgYXJndW1lbnRzLiAgSXQgc2hvdWxkIHJldHVybiBhbiBvYmplY3QgdGhhdCBzdXBwb3J0cyB0aGVcbm1hcHBpbmcgaW50ZXJmYWNlIHRoYXQgd2lsbCBiZSB1c2VkIHRvIHN0b3JlIHRoZSBuYW1lc3BhY2Ugb2YgdGhlXG5jbGFzcy4gIFRoZSBkZWZhdWx0IGlzIGEgcGxhaW4gZGljdGlvbmFyeS4gIFRoaXMgY291bGQgYmUgdXNlZCwgZm9yXG5leGFtcGxlLCB0byBrZWVwIHRyYWNrIG9mIHRoZSBvcmRlciB0aGF0IGNsYXNzIGF0dHJpYnV0ZXMgYXJlIGRlY2xhcmVkXG5pbiBieSByZXR1cm5pbmcgYW4gb3JkZXJlZCBkaWN0aW9uYXJ5LlxuXG5UaGUgYXBwcm9wcmlhdGUgbWV0YWNsYXNzIGlzIGRldGVybWluZWQgYnkgdGhlIGZvbGxvd2luZyBwcmVjZWRlbmNlXG5ydWxlczpcblxuKiBJZiB0aGUgYGBtZXRhY2xhc3NgYCBrZXl3b3JkIGFyZ3VtZW50IGlzIHBhc3NlZCB3aXRoIHRoZSBiYXNlcywgaXRcbiAgaXMgdXNlZC5cblxuKiBPdGhlcndpc2UsIGlmIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBiYXNlIGNsYXNzLCBpdHMgbWV0YWNsYXNzIGlzXG4gIHVzZWQuXG5cbiogT3RoZXJ3aXNlLCB0aGUgZGVmYXVsdCBtZXRhY2xhc3MgKGBgdHlwZWBgKSBpcyB1c2VkLlxuXG5UaGUgcG90ZW50aWFsIHVzZXMgZm9yIG1ldGFjbGFzc2VzIGFyZSBib3VuZGxlc3MuIFNvbWUgaWRlYXMgdGhhdCBoYXZlXG5iZWVuIGV4cGxvcmVkIGluY2x1ZGluZyBsb2dnaW5nLCBpbnRlcmZhY2UgY2hlY2tpbmcsIGF1dG9tYXRpY1xuZGVsZWdhdGlvbiwgYXV0b21hdGljIHByb3BlcnR5IGNyZWF0aW9uLCBwcm94aWVzLCBmcmFtZXdvcmtzLCBhbmRcbmF1dG9tYXRpYyByZXNvdXJjZSBsb2NraW5nL3N5bmNocm9uaXphdGlvbi5cblxuSGVyZSBpcyBhbiBleGFtcGxlIG9mIGEgbWV0YWNsYXNzIHRoYXQgdXNlcyBhblxuYGBjb2xsZWN0aW9ucy5PcmRlcmVkRGljdGBgIHRvIHJlbWVtYmVyIHRoZSBvcmRlciB0aGF0IGNsYXNzIG1lbWJlcnNcbndlcmUgZGVmaW5lZDpcblxuICAgY2xhc3MgT3JkZXJlZENsYXNzKHR5cGUpOlxuXG4gICAgICAgIEBjbGFzc21ldGhvZFxuICAgICAgICBkZWYgX19wcmVwYXJlX18obWV0YWNscywgbmFtZSwgYmFzZXMsICoqa3dkcyk6XG4gICAgICAgICAgIHJldHVybiBjb2xsZWN0aW9ucy5PcmRlcmVkRGljdCgpXG5cbiAgICAgICAgZGVmIF9fbmV3X18oY2xzLCBuYW1lLCBiYXNlcywgY2xhc3NkaWN0KTpcbiAgICAgICAgICAgcmVzdWx0ID0gdHlwZS5fX25ld19fKGNscywgbmFtZSwgYmFzZXMsIGRpY3QoY2xhc3NkaWN0KSlcbiAgICAgICAgICAgcmVzdWx0Lm1lbWJlcnMgPSB0dXBsZShjbGFzc2RpY3QpXG4gICAgICAgICAgIHJldHVybiByZXN1bHRcblxuICAgY2xhc3MgQShtZXRhY2xhc3M9T3JkZXJlZENsYXNzKTpcbiAgICAgICBkZWYgb25lKHNlbGYpOiBwYXNzXG4gICAgICAgZGVmIHR3byhzZWxmKTogcGFzc1xuICAgICAgIGRlZiB0aHJlZShzZWxmKTogcGFzc1xuICAgICAgIGRlZiBmb3VyKHNlbGYpOiBwYXNzXG5cbiAgID4+PiBBLm1lbWJlcnNcbiAgIChcJ19fbW9kdWxlX19cJywgXCdvbmVcJywgXCd0d29cJywgXCd0aHJlZVwnLCBcJ2ZvdXJcJylcblxuV2hlbiB0aGUgY2xhc3MgZGVmaW5pdGlvbiBmb3IgKkEqIGdldHMgZXhlY3V0ZWQsIHRoZSBwcm9jZXNzIGJlZ2luc1xud2l0aCBjYWxsaW5nIHRoZSBtZXRhY2xhc3NcJ3MgYGBfX3ByZXBhcmVfXygpYGAgbWV0aG9kIHdoaWNoIHJldHVybnMgYW5cbmVtcHR5IGBgY29sbGVjdGlvbnMuT3JkZXJlZERpY3RgYC4gIFRoYXQgbWFwcGluZyByZWNvcmRzIHRoZSBtZXRob2RzXG5hbmQgYXR0cmlidXRlcyBvZiAqQSogYXMgdGhleSBhcmUgZGVmaW5lZCB3aXRoaW4gdGhlIGJvZHkgb2YgdGhlIGNsYXNzXG5zdGF0ZW1lbnQuIE9uY2UgdGhvc2UgZGVmaW5pdGlvbnMgYXJlIGV4ZWN1dGVkLCB0aGUgb3JkZXJlZCBkaWN0aW9uYXJ5XG5pcyBmdWxseSBwb3B1bGF0ZWQgYW5kIHRoZSBtZXRhY2xhc3NcJ3MgYGBfX25ld19fKClgYCBtZXRob2QgZ2V0c1xuaW52b2tlZC4gIFRoYXQgbWV0aG9kIGJ1aWxkcyB0aGUgbmV3IHR5cGUgYW5kIGl0IHNhdmVzIHRoZSBvcmRlcmVkXG5kaWN0aW9uYXJ5IGtleXMgaW4gYW4gYXR0cmlidXRlIGNhbGxlZCBgYG1lbWJlcnNgYC5cblxuXG5DdXN0b21pemluZyBpbnN0YW5jZSBhbmQgc3ViY2xhc3MgY2hlY2tzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblRoZSBmb2xsb3dpbmcgbWV0aG9kcyBhcmUgdXNlZCB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGVcbmBgaXNpbnN0YW5jZSgpYGAgYW5kIGBgaXNzdWJjbGFzcygpYGAgYnVpbHQtaW4gZnVuY3Rpb25zLlxuXG5JbiBwYXJ0aWN1bGFyLCB0aGUgbWV0YWNsYXNzIGBgYWJjLkFCQ01ldGFgYCBpbXBsZW1lbnRzIHRoZXNlIG1ldGhvZHNcbmluIG9yZGVyIHRvIGFsbG93IHRoZSBhZGRpdGlvbiBvZiBBYnN0cmFjdCBCYXNlIENsYXNzZXMgKEFCQ3MpIGFzXG4idmlydHVhbCBiYXNlIGNsYXNzZXMiIHRvIGFueSBjbGFzcyBvciB0eXBlIChpbmNsdWRpbmcgYnVpbHQtaW5cbnR5cGVzKSwgaW5jbHVkaW5nIG90aGVyIEFCQ3MuXG5cbmNsYXNzLl9faW5zdGFuY2VjaGVja19fKHNlbGYsIGluc3RhbmNlKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiAqaW5zdGFuY2UqIHNob3VsZCBiZSBjb25zaWRlcmVkIGEgKGRpcmVjdCBvclxuICAgaW5kaXJlY3QpIGluc3RhbmNlIG9mICpjbGFzcyouIElmIGRlZmluZWQsIGNhbGxlZCB0byBpbXBsZW1lbnRcbiAgIGBgaXNpbnN0YW5jZShpbnN0YW5jZSwgY2xhc3MpYGAuXG5cbmNsYXNzLl9fc3ViY2xhc3NjaGVja19fKHNlbGYsIHN1YmNsYXNzKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiAqc3ViY2xhc3MqIHNob3VsZCBiZSBjb25zaWRlcmVkIGEgKGRpcmVjdCBvclxuICAgaW5kaXJlY3QpIHN1YmNsYXNzIG9mICpjbGFzcyouICBJZiBkZWZpbmVkLCBjYWxsZWQgdG8gaW1wbGVtZW50XG4gICBgYGlzc3ViY2xhc3Moc3ViY2xhc3MsIGNsYXNzKWBgLlxuXG5Ob3RlIHRoYXQgdGhlc2UgbWV0aG9kcyBhcmUgbG9va2VkIHVwIG9uIHRoZSB0eXBlIChtZXRhY2xhc3MpIG9mIGFcbmNsYXNzLiAgVGhleSBjYW5ub3QgYmUgZGVmaW5lZCBhcyBjbGFzcyBtZXRob2RzIGluIHRoZSBhY3R1YWwgY2xhc3MuXG5UaGlzIGlzIGNvbnNpc3RlbnQgd2l0aCB0aGUgbG9va3VwIG9mIHNwZWNpYWwgbWV0aG9kcyB0aGF0IGFyZSBjYWxsZWRcbm9uIGluc3RhbmNlcywgb25seSBpbiB0aGlzIGNhc2UgdGhlIGluc3RhbmNlIGlzIGl0c2VsZiBhIGNsYXNzLlxuXG5TZWUgYWxzbzpcblxuICAgKipQRVAgMzExOSoqIC0gSW50cm9kdWNpbmcgQWJzdHJhY3QgQmFzZSBDbGFzc2VzXG4gICAgICBJbmNsdWRlcyB0aGUgc3BlY2lmaWNhdGlvbiBmb3IgY3VzdG9taXppbmcgYGBpc2luc3RhbmNlKClgYCBhbmRcbiAgICAgIGBgaXNzdWJjbGFzcygpYGAgYmVoYXZpb3IgdGhyb3VnaCBgYF9faW5zdGFuY2VjaGVja19fKClgYCBhbmRcbiAgICAgIGBgX19zdWJjbGFzc2NoZWNrX18oKWBgLCB3aXRoIG1vdGl2YXRpb24gZm9yIHRoaXMgZnVuY3Rpb25hbGl0eVxuICAgICAgaW4gdGhlIGNvbnRleHQgb2YgYWRkaW5nIEFic3RyYWN0IEJhc2UgQ2xhc3NlcyAoc2VlIHRoZSBgYGFiY2BgXG4gICAgICBtb2R1bGUpIHRvIHRoZSBsYW5ndWFnZS5cblxuXG5FbXVsYXRpbmcgY2FsbGFibGUgb2JqZWN0c1xuPT09PT09PT09PT09PT09PT09PT09PT09PT1cblxub2JqZWN0Ll9fY2FsbF9fKHNlbGZbLCBhcmdzLi4uXSlcblxuICAgQ2FsbGVkIHdoZW4gdGhlIGluc3RhbmNlIGlzICJjYWxsZWQiIGFzIGEgZnVuY3Rpb247IGlmIHRoaXMgbWV0aG9kXG4gICBpcyBkZWZpbmVkLCBgYHgoYXJnMSwgYXJnMiwgLi4uKWBgIGlzIGEgc2hvcnRoYW5kIGZvclxuICAgYGB4Ll9fY2FsbF9fKGFyZzEsIGFyZzIsIC4uLilgYC5cblxuXG5FbXVsYXRpbmcgY29udGFpbmVyIHR5cGVzXG49PT09PT09PT09PT09PT09PT09PT09PT09XG5cblRoZSBmb2xsb3dpbmcgbWV0aG9kcyBjYW4gYmUgZGVmaW5lZCB0byBpbXBsZW1lbnQgY29udGFpbmVyIG9iamVjdHMuXG5Db250YWluZXJzIHVzdWFsbHkgYXJlIHNlcXVlbmNlcyAoc3VjaCBhcyBsaXN0cyBvciB0dXBsZXMpIG9yIG1hcHBpbmdzXG4obGlrZSBkaWN0aW9uYXJpZXMpLCBidXQgY2FuIHJlcHJlc2VudCBvdGhlciBjb250YWluZXJzIGFzIHdlbGwuICBUaGVcbmZpcnN0IHNldCBvZiBtZXRob2RzIGlzIHVzZWQgZWl0aGVyIHRvIGVtdWxhdGUgYSBzZXF1ZW5jZSBvciB0b1xuZW11bGF0ZSBhIG1hcHBpbmc7IHRoZSBkaWZmZXJlbmNlIGlzIHRoYXQgZm9yIGEgc2VxdWVuY2UsIHRoZVxuYWxsb3dhYmxlIGtleXMgc2hvdWxkIGJlIHRoZSBpbnRlZ2VycyAqayogZm9yIHdoaWNoIGBgMCA8PSBrIDwgTmBgXG53aGVyZSAqTiogaXMgdGhlIGxlbmd0aCBvZiB0aGUgc2VxdWVuY2UsIG9yIHNsaWNlIG9iamVjdHMsIHdoaWNoXG5kZWZpbmUgYSByYW5nZSBvZiBpdGVtcy4gIEl0IGlzIGFsc28gcmVjb21tZW5kZWQgdGhhdCBtYXBwaW5ncyBwcm92aWRlXG50aGUgbWV0aG9kcyBgYGtleXMoKWBgLCBgYHZhbHVlcygpYGAsIGBgaXRlbXMoKWBgLCBgYGdldCgpYGAsXG5gYGNsZWFyKClgYCwgYGBzZXRkZWZhdWx0KClgYCwgYGBwb3AoKWBgLCBgYHBvcGl0ZW0oKWBgLCBgYGNvcHkoKWBgLFxuYW5kIGBgdXBkYXRlKClgYCBiZWhhdmluZyBzaW1pbGFyIHRvIHRob3NlIGZvciBQeXRob25cJ3Mgc3RhbmRhcmRcbmRpY3Rpb25hcnkgb2JqZWN0cy4gIFRoZSBgYGNvbGxlY3Rpb25zYGAgbW9kdWxlIHByb3ZpZGVzIGFcbmBgTXV0YWJsZU1hcHBpbmdgYCBhYnN0cmFjdCBiYXNlIGNsYXNzIHRvIGhlbHAgY3JlYXRlIHRob3NlIG1ldGhvZHNcbmZyb20gYSBiYXNlIHNldCBvZiBgYF9fZ2V0aXRlbV9fKClgYCwgYGBfX3NldGl0ZW1fXygpYGAsXG5gYF9fZGVsaXRlbV9fKClgYCwgYW5kIGBga2V5cygpYGAuIE11dGFibGUgc2VxdWVuY2VzIHNob3VsZCBwcm92aWRlXG5tZXRob2RzIGBgYXBwZW5kKClgYCwgYGBjb3VudCgpYGAsIGBgaW5kZXgoKWBgLCBgYGV4dGVuZCgpYGAsXG5gYGluc2VydCgpYGAsIGBgcG9wKClgYCwgYGByZW1vdmUoKWBgLCBgYHJldmVyc2UoKWBgIGFuZCBgYHNvcnQoKWBgLFxubGlrZSBQeXRob24gc3RhbmRhcmQgbGlzdCBvYmplY3RzLiAgRmluYWxseSwgc2VxdWVuY2UgdHlwZXMgc2hvdWxkXG5pbXBsZW1lbnQgYWRkaXRpb24gKG1lYW5pbmcgY29uY2F0ZW5hdGlvbikgYW5kIG11bHRpcGxpY2F0aW9uIChtZWFuaW5nXG5yZXBldGl0aW9uKSBieSBkZWZpbmluZyB0aGUgbWV0aG9kcyBgYF9fYWRkX18oKWBgLCBgYF9fcmFkZF9fKClgYCxcbmBgX19pYWRkX18oKWBgLCBgYF9fbXVsX18oKWBgLCBgYF9fcm11bF9fKClgYCBhbmQgYGBfX2ltdWxfXygpYGBcbmRlc2NyaWJlZCBiZWxvdzsgdGhleSBzaG91bGQgbm90IGRlZmluZSBvdGhlciBudW1lcmljYWwgb3BlcmF0b3JzLiAgSXRcbmlzIHJlY29tbWVuZGVkIHRoYXQgYm90aCBtYXBwaW5ncyBhbmQgc2VxdWVuY2VzIGltcGxlbWVudCB0aGVcbmBgX19jb250YWluc19fKClgYCBtZXRob2QgdG8gYWxsb3cgZWZmaWNpZW50IHVzZSBvZiB0aGUgYGBpbmBgXG5vcGVyYXRvcjsgZm9yIG1hcHBpbmdzLCBgYGluYGAgc2hvdWxkIHNlYXJjaCB0aGUgbWFwcGluZ1wncyBrZXlzOyBmb3JcbnNlcXVlbmNlcywgaXQgc2hvdWxkIHNlYXJjaCB0aHJvdWdoIHRoZSB2YWx1ZXMuICBJdCBpcyBmdXJ0aGVyXG5yZWNvbW1lbmRlZCB0aGF0IGJvdGggbWFwcGluZ3MgYW5kIHNlcXVlbmNlcyBpbXBsZW1lbnQgdGhlXG5gYF9faXRlcl9fKClgYCBtZXRob2QgdG8gYWxsb3cgZWZmaWNpZW50IGl0ZXJhdGlvbiB0aHJvdWdoIHRoZVxuY29udGFpbmVyOyBmb3IgbWFwcGluZ3MsIGBgX19pdGVyX18oKWBgIHNob3VsZCBiZSB0aGUgc2FtZSBhc1xuYGBrZXlzKClgYDsgZm9yIHNlcXVlbmNlcywgaXQgc2hvdWxkIGl0ZXJhdGUgdGhyb3VnaCB0aGUgdmFsdWVzLlxuXG5vYmplY3QuX19sZW5fXyhzZWxmKVxuXG4gICBDYWxsZWQgdG8gaW1wbGVtZW50IHRoZSBidWlsdC1pbiBmdW5jdGlvbiBgYGxlbigpYGAuICBTaG91bGQgcmV0dXJuXG4gICB0aGUgbGVuZ3RoIG9mIHRoZSBvYmplY3QsIGFuIGludGVnZXIgYGA+PWBgIDAuICBBbHNvLCBhbiBvYmplY3RcbiAgIHRoYXQgZG9lc25cJ3QgZGVmaW5lIGEgYGBfX2Jvb2xfXygpYGAgbWV0aG9kIGFuZCB3aG9zZSBgYF9fbGVuX18oKWBgXG4gICBtZXRob2QgcmV0dXJucyB6ZXJvIGlzIGNvbnNpZGVyZWQgdG8gYmUgZmFsc2UgaW4gYSBCb29sZWFuIGNvbnRleHQuXG5cbk5vdGU6IFNsaWNpbmcgaXMgZG9uZSBleGNsdXNpdmVseSB3aXRoIHRoZSBmb2xsb3dpbmcgdGhyZWUgbWV0aG9kcy4gIEFcbiAgY2FsbCBsaWtlXG5cbiAgICAgYVsxOjJdID0gYlxuXG4gIGlzIHRyYW5zbGF0ZWQgdG9cblxuICAgICBhW3NsaWNlKDEsIDIsIE5vbmUpXSA9IGJcblxuICBhbmQgc28gZm9ydGguICBNaXNzaW5nIHNsaWNlIGl0ZW1zIGFyZSBhbHdheXMgZmlsbGVkIGluIHdpdGhcbiAgYGBOb25lYGAuXG5cbm9iamVjdC5fX2dldGl0ZW1fXyhzZWxmLCBrZXkpXG5cbiAgIENhbGxlZCB0byBpbXBsZW1lbnQgZXZhbHVhdGlvbiBvZiBgYHNlbGZba2V5XWBgLiBGb3Igc2VxdWVuY2VcbiAgIHR5cGVzLCB0aGUgYWNjZXB0ZWQga2V5cyBzaG91bGQgYmUgaW50ZWdlcnMgYW5kIHNsaWNlIG9iamVjdHMuXG4gICBOb3RlIHRoYXQgdGhlIHNwZWNpYWwgaW50ZXJwcmV0YXRpb24gb2YgbmVnYXRpdmUgaW5kZXhlcyAoaWYgdGhlXG4gICBjbGFzcyB3aXNoZXMgdG8gZW11bGF0ZSBhIHNlcXVlbmNlIHR5cGUpIGlzIHVwIHRvIHRoZVxuICAgYGBfX2dldGl0ZW1fXygpYGAgbWV0aG9kLiBJZiAqa2V5KiBpcyBvZiBhbiBpbmFwcHJvcHJpYXRlIHR5cGUsXG4gICBgYFR5cGVFcnJvcmBgIG1heSBiZSByYWlzZWQ7IGlmIG9mIGEgdmFsdWUgb3V0c2lkZSB0aGUgc2V0IG9mXG4gICBpbmRleGVzIGZvciB0aGUgc2VxdWVuY2UgKGFmdGVyIGFueSBzcGVjaWFsIGludGVycHJldGF0aW9uIG9mXG4gICBuZWdhdGl2ZSB2YWx1ZXMpLCBgYEluZGV4RXJyb3JgYCBzaG91bGQgYmUgcmFpc2VkLiBGb3IgbWFwcGluZ1xuICAgdHlwZXMsIGlmICprZXkqIGlzIG1pc3NpbmcgKG5vdCBpbiB0aGUgY29udGFpbmVyKSwgYGBLZXlFcnJvcmBgXG4gICBzaG91bGQgYmUgcmFpc2VkLlxuXG4gICBOb3RlOiBgYGZvcmBgIGxvb3BzIGV4cGVjdCB0aGF0IGFuIGBgSW5kZXhFcnJvcmBgIHdpbGwgYmUgcmFpc2VkIGZvclxuICAgICBpbGxlZ2FsIGluZGV4ZXMgdG8gYWxsb3cgcHJvcGVyIGRldGVjdGlvbiBvZiB0aGUgZW5kIG9mIHRoZVxuICAgICBzZXF1ZW5jZS5cblxub2JqZWN0Ll9fc2V0aXRlbV9fKHNlbGYsIGtleSwgdmFsdWUpXG5cbiAgIENhbGxlZCB0byBpbXBsZW1lbnQgYXNzaWdubWVudCB0byBgYHNlbGZba2V5XWBgLiAgU2FtZSBub3RlIGFzIGZvclxuICAgYGBfX2dldGl0ZW1fXygpYGAuICBUaGlzIHNob3VsZCBvbmx5IGJlIGltcGxlbWVudGVkIGZvciBtYXBwaW5ncyBpZlxuICAgdGhlIG9iamVjdHMgc3VwcG9ydCBjaGFuZ2VzIHRvIHRoZSB2YWx1ZXMgZm9yIGtleXMsIG9yIGlmIG5ldyBrZXlzXG4gICBjYW4gYmUgYWRkZWQsIG9yIGZvciBzZXF1ZW5jZXMgaWYgZWxlbWVudHMgY2FuIGJlIHJlcGxhY2VkLiAgVGhlXG4gICBzYW1lIGV4Y2VwdGlvbnMgc2hvdWxkIGJlIHJhaXNlZCBmb3IgaW1wcm9wZXIgKmtleSogdmFsdWVzIGFzIGZvclxuICAgdGhlIGBgX19nZXRpdGVtX18oKWBgIG1ldGhvZC5cblxub2JqZWN0Ll9fZGVsaXRlbV9fKHNlbGYsIGtleSlcblxuICAgQ2FsbGVkIHRvIGltcGxlbWVudCBkZWxldGlvbiBvZiBgYHNlbGZba2V5XWBgLiAgU2FtZSBub3RlIGFzIGZvclxuICAgYGBfX2dldGl0ZW1fXygpYGAuICBUaGlzIHNob3VsZCBvbmx5IGJlIGltcGxlbWVudGVkIGZvciBtYXBwaW5ncyBpZlxuICAgdGhlIG9iamVjdHMgc3VwcG9ydCByZW1vdmFsIG9mIGtleXMsIG9yIGZvciBzZXF1ZW5jZXMgaWYgZWxlbWVudHNcbiAgIGNhbiBiZSByZW1vdmVkIGZyb20gdGhlIHNlcXVlbmNlLiAgVGhlIHNhbWUgZXhjZXB0aW9ucyBzaG91bGQgYmVcbiAgIHJhaXNlZCBmb3IgaW1wcm9wZXIgKmtleSogdmFsdWVzIGFzIGZvciB0aGUgYGBfX2dldGl0ZW1fXygpYGBcbiAgIG1ldGhvZC5cblxub2JqZWN0Ll9faXRlcl9fKHNlbGYpXG5cbiAgIFRoaXMgbWV0aG9kIGlzIGNhbGxlZCB3aGVuIGFuIGl0ZXJhdG9yIGlzIHJlcXVpcmVkIGZvciBhIGNvbnRhaW5lci5cbiAgIFRoaXMgbWV0aG9kIHNob3VsZCByZXR1cm4gYSBuZXcgaXRlcmF0b3Igb2JqZWN0IHRoYXQgY2FuIGl0ZXJhdGVcbiAgIG92ZXIgYWxsIHRoZSBvYmplY3RzIGluIHRoZSBjb250YWluZXIuICBGb3IgbWFwcGluZ3MsIGl0IHNob3VsZFxuICAgaXRlcmF0ZSBvdmVyIHRoZSBrZXlzIG9mIHRoZSBjb250YWluZXIsIGFuZCBzaG91bGQgYWxzbyBiZSBtYWRlXG4gICBhdmFpbGFibGUgYXMgdGhlIG1ldGhvZCBgYGtleXMoKWBgLlxuXG4gICBJdGVyYXRvciBvYmplY3RzIGFsc28gbmVlZCB0byBpbXBsZW1lbnQgdGhpcyBtZXRob2Q7IHRoZXkgYXJlXG4gICByZXF1aXJlZCB0byByZXR1cm4gdGhlbXNlbHZlcy4gIEZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGl0ZXJhdG9yXG4gICBvYmplY3RzLCBzZWUgKkl0ZXJhdG9yIFR5cGVzKi5cblxub2JqZWN0Ll9fcmV2ZXJzZWRfXyhzZWxmKVxuXG4gICBDYWxsZWQgKGlmIHByZXNlbnQpIGJ5IHRoZSBgYHJldmVyc2VkKClgYCBidWlsdC1pbiB0byBpbXBsZW1lbnRcbiAgIHJldmVyc2UgaXRlcmF0aW9uLiAgSXQgc2hvdWxkIHJldHVybiBhIG5ldyBpdGVyYXRvciBvYmplY3QgdGhhdFxuICAgaXRlcmF0ZXMgb3ZlciBhbGwgdGhlIG9iamVjdHMgaW4gdGhlIGNvbnRhaW5lciBpbiByZXZlcnNlIG9yZGVyLlxuXG4gICBJZiB0aGUgYGBfX3JldmVyc2VkX18oKWBgIG1ldGhvZCBpcyBub3QgcHJvdmlkZWQsIHRoZVxuICAgYGByZXZlcnNlZCgpYGAgYnVpbHQtaW4gd2lsbCBmYWxsIGJhY2sgdG8gdXNpbmcgdGhlIHNlcXVlbmNlXG4gICBwcm90b2NvbCAoYGBfX2xlbl9fKClgYCBhbmQgYGBfX2dldGl0ZW1fXygpYGApLiAgT2JqZWN0cyB0aGF0XG4gICBzdXBwb3J0IHRoZSBzZXF1ZW5jZSBwcm90b2NvbCBzaG91bGQgb25seSBwcm92aWRlXG4gICBgYF9fcmV2ZXJzZWRfXygpYGAgaWYgdGhleSBjYW4gcHJvdmlkZSBhbiBpbXBsZW1lbnRhdGlvbiB0aGF0IGlzXG4gICBtb3JlIGVmZmljaWVudCB0aGFuIHRoZSBvbmUgcHJvdmlkZWQgYnkgYGByZXZlcnNlZCgpYGAuXG5cblRoZSBtZW1iZXJzaGlwIHRlc3Qgb3BlcmF0b3JzIChgYGluYGAgYW5kIGBgbm90IGluYGApIGFyZSBub3JtYWxseVxuaW1wbGVtZW50ZWQgYXMgYW4gaXRlcmF0aW9uIHRocm91Z2ggYSBzZXF1ZW5jZS4gIEhvd2V2ZXIsIGNvbnRhaW5lclxub2JqZWN0cyBjYW4gc3VwcGx5IHRoZSBmb2xsb3dpbmcgc3BlY2lhbCBtZXRob2Qgd2l0aCBhIG1vcmUgZWZmaWNpZW50XG5pbXBsZW1lbnRhdGlvbiwgd2hpY2ggYWxzbyBkb2VzIG5vdCByZXF1aXJlIHRoZSBvYmplY3QgYmUgYSBzZXF1ZW5jZS5cblxub2JqZWN0Ll9fY29udGFpbnNfXyhzZWxmLCBpdGVtKVxuXG4gICBDYWxsZWQgdG8gaW1wbGVtZW50IG1lbWJlcnNoaXAgdGVzdCBvcGVyYXRvcnMuICBTaG91bGQgcmV0dXJuIHRydWVcbiAgIGlmICppdGVtKiBpcyBpbiAqc2VsZiosIGZhbHNlIG90aGVyd2lzZS4gIEZvciBtYXBwaW5nIG9iamVjdHMsIHRoaXNcbiAgIHNob3VsZCBjb25zaWRlciB0aGUga2V5cyBvZiB0aGUgbWFwcGluZyByYXRoZXIgdGhhbiB0aGUgdmFsdWVzIG9yXG4gICB0aGUga2V5LWl0ZW0gcGFpcnMuXG5cbiAgIEZvciBvYmplY3RzIHRoYXQgZG9uXCd0IGRlZmluZSBgYF9fY29udGFpbnNfXygpYGAsIHRoZSBtZW1iZXJzaGlwXG4gICB0ZXN0IGZpcnN0IHRyaWVzIGl0ZXJhdGlvbiB2aWEgYGBfX2l0ZXJfXygpYGAsIHRoZW4gdGhlIG9sZFxuICAgc2VxdWVuY2UgaXRlcmF0aW9uIHByb3RvY29sIHZpYSBgYF9fZ2V0aXRlbV9fKClgYCwgc2VlICp0aGlzXG4gICBzZWN0aW9uIGluIHRoZSBsYW5ndWFnZSByZWZlcmVuY2UqLlxuXG5cbkVtdWxhdGluZyBudW1lcmljIHR5cGVzXG49PT09PT09PT09PT09PT09PT09PT09PVxuXG5UaGUgZm9sbG93aW5nIG1ldGhvZHMgY2FuIGJlIGRlZmluZWQgdG8gZW11bGF0ZSBudW1lcmljIG9iamVjdHMuXG5NZXRob2RzIGNvcnJlc3BvbmRpbmcgdG8gb3BlcmF0aW9ucyB0aGF0IGFyZSBub3Qgc3VwcG9ydGVkIGJ5IHRoZVxucGFydGljdWxhciBraW5kIG9mIG51bWJlciBpbXBsZW1lbnRlZCAoZS5nLiwgYml0d2lzZSBvcGVyYXRpb25zIGZvclxubm9uLWludGVncmFsIG51bWJlcnMpIHNob3VsZCBiZSBsZWZ0IHVuZGVmaW5lZC5cblxub2JqZWN0Ll9fYWRkX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19zdWJfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX211bF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fdHJ1ZWRpdl9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fZmxvb3JkaXZfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX21vZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fZGl2bW9kX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19wb3dfXyhzZWxmLCBvdGhlclssIG1vZHVsb10pXG5vYmplY3QuX19sc2hpZnRfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX3JzaGlmdF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fYW5kX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX194b3JfXyhzZWxmLCBvdGhlcilcbm9iamVjdC5fX29yX18oc2VsZiwgb3RoZXIpXG5cbiAgIFRoZXNlIG1ldGhvZHMgYXJlIGNhbGxlZCB0byBpbXBsZW1lbnQgdGhlIGJpbmFyeSBhcml0aG1ldGljXG4gICBvcGVyYXRpb25zIChgYCtgYCwgYGAtYGAsIGBgKmBgLCBgYC9gYCwgYGAvL2BgLCBgYCVgYCxcbiAgIGBgZGl2bW9kKClgYCwgYGBwb3coKWBgLCBgYCoqYGAsIGBgPDxgYCwgYGA+PmBgLCBgYCZgYCwgYGBeYGAsXG4gICBgYHxgYCkuICBGb3IgaW5zdGFuY2UsIHRvIGV2YWx1YXRlIHRoZSBleHByZXNzaW9uIGBgeCArIHlgYCwgd2hlcmVcbiAgICp4KiBpcyBhbiBpbnN0YW5jZSBvZiBhIGNsYXNzIHRoYXQgaGFzIGFuIGBgX19hZGRfXygpYGAgbWV0aG9kLFxuICAgYGB4Ll9fYWRkX18oeSlgYCBpcyBjYWxsZWQuICBUaGUgYGBfX2Rpdm1vZF9fKClgYCBtZXRob2Qgc2hvdWxkIGJlXG4gICB0aGUgZXF1aXZhbGVudCB0byB1c2luZyBgYF9fZmxvb3JkaXZfXygpYGAgYW5kIGBgX19tb2RfXygpYGA7IGl0XG4gICBzaG91bGQgbm90IGJlIHJlbGF0ZWQgdG8gYGBfX3RydWVkaXZfXygpYGAuICBOb3RlIHRoYXRcbiAgIGBgX19wb3dfXygpYGAgc2hvdWxkIGJlIGRlZmluZWQgdG8gYWNjZXB0IGFuIG9wdGlvbmFsIHRoaXJkXG4gICBhcmd1bWVudCBpZiB0aGUgdGVybmFyeSB2ZXJzaW9uIG9mIHRoZSBidWlsdC1pbiBgYHBvdygpYGAgZnVuY3Rpb25cbiAgIGlzIHRvIGJlIHN1cHBvcnRlZC5cblxuICAgSWYgb25lIG9mIHRob3NlIG1ldGhvZHMgZG9lcyBub3Qgc3VwcG9ydCB0aGUgb3BlcmF0aW9uIHdpdGggdGhlXG4gICBzdXBwbGllZCBhcmd1bWVudHMsIGl0IHNob3VsZCByZXR1cm4gYGBOb3RJbXBsZW1lbnRlZGBgLlxuXG5vYmplY3QuX19yYWRkX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19yc3ViX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19ybXVsX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19ydHJ1ZWRpdl9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9fcmZsb29yZGl2X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19ybW9kX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19yZGl2bW9kX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19ycG93X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19ybHNoaWZ0X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19ycnNoaWZ0X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19yYW5kX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19yeG9yX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19yb3JfXyhzZWxmLCBvdGhlcilcblxuICAgVGhlc2UgbWV0aG9kcyBhcmUgY2FsbGVkIHRvIGltcGxlbWVudCB0aGUgYmluYXJ5IGFyaXRobWV0aWNcbiAgIG9wZXJhdGlvbnMgKGBgK2BgLCBgYC1gYCwgYGAqYGAsIGBgL2BgLCBgYC8vYGAsIGBgJWBgLFxuICAgYGBkaXZtb2QoKWBgLCBgYHBvdygpYGAsIGBgKipgYCwgYGA8PGBgLCBgYD4+YGAsIGBgJmBgLCBgYF5gYCxcbiAgIGBgfGBgKSB3aXRoIHJlZmxlY3RlZCAoc3dhcHBlZCkgb3BlcmFuZHMuIFRoZXNlIGZ1bmN0aW9ucyBhcmUgb25seVxuICAgY2FsbGVkIGlmIHRoZSBsZWZ0IG9wZXJhbmQgZG9lcyBub3Qgc3VwcG9ydCB0aGUgY29ycmVzcG9uZGluZ1xuICAgb3BlcmF0aW9uIGFuZCB0aGUgb3BlcmFuZHMgYXJlIG9mIGRpZmZlcmVudCB0eXBlcy4gWzJdICBGb3JcbiAgIGluc3RhbmNlLCB0byBldmFsdWF0ZSB0aGUgZXhwcmVzc2lvbiBgYHggLSB5YGAsIHdoZXJlICp5KiBpcyBhblxuICAgaW5zdGFuY2Ugb2YgYSBjbGFzcyB0aGF0IGhhcyBhbiBgYF9fcnN1Yl9fKClgYCBtZXRob2QsXG4gICBgYHkuX19yc3ViX18oeClgYCBpcyBjYWxsZWQgaWYgYGB4Ll9fc3ViX18oeSlgYCByZXR1cm5zXG4gICAqTm90SW1wbGVtZW50ZWQqLlxuXG4gICBOb3RlIHRoYXQgdGVybmFyeSBgYHBvdygpYGAgd2lsbCBub3QgdHJ5IGNhbGxpbmcgYGBfX3Jwb3dfXygpYGBcbiAgICh0aGUgY29lcmNpb24gcnVsZXMgd291bGQgYmVjb21lIHRvbyBjb21wbGljYXRlZCkuXG5cbiAgIE5vdGU6IElmIHRoZSByaWdodCBvcGVyYW5kXCdzIHR5cGUgaXMgYSBzdWJjbGFzcyBvZiB0aGUgbGVmdCBvcGVyYW5kXCdzXG4gICAgIHR5cGUgYW5kIHRoYXQgc3ViY2xhc3MgcHJvdmlkZXMgdGhlIHJlZmxlY3RlZCBtZXRob2QgZm9yIHRoZVxuICAgICBvcGVyYXRpb24sIHRoaXMgbWV0aG9kIHdpbGwgYmUgY2FsbGVkIGJlZm9yZSB0aGUgbGVmdCBvcGVyYW5kXCdzXG4gICAgIG5vbi1yZWZsZWN0ZWQgbWV0aG9kLiAgVGhpcyBiZWhhdmlvciBhbGxvd3Mgc3ViY2xhc3NlcyB0b1xuICAgICBvdmVycmlkZSB0aGVpciBhbmNlc3RvcnNcJyBvcGVyYXRpb25zLlxuXG5vYmplY3QuX19pYWRkX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19pc3ViX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19pbXVsX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19pdHJ1ZWRpdl9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9faWZsb29yZGl2X18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19pbW9kX18oc2VsZiwgb3RoZXIpXG5vYmplY3QuX19pcG93X18oc2VsZiwgb3RoZXJbLCBtb2R1bG9dKVxub2JqZWN0Ll9faWxzaGlmdF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9faXJzaGlmdF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9faWFuZF9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9faXhvcl9fKHNlbGYsIG90aGVyKVxub2JqZWN0Ll9faW9yX18oc2VsZiwgb3RoZXIpXG5cbiAgIFRoZXNlIG1ldGhvZHMgYXJlIGNhbGxlZCB0byBpbXBsZW1lbnQgdGhlIGF1Z21lbnRlZCBhcml0aG1ldGljXG4gICBhc3NpZ25tZW50cyAoYGArPWBgLCBgYC09YGAsIGBgKj1gYCwgYGAvPWBgLCBgYC8vPWBgLCBgYCU9YGAsXG4gICBgYCoqPWBgLCBgYDw8PWBgLCBgYD4+PWBgLCBgYCY9YGAsIGBgXj1gYCwgYGB8PWBgKS4gIFRoZXNlIG1ldGhvZHNcbiAgIHNob3VsZCBhdHRlbXB0IHRvIGRvIHRoZSBvcGVyYXRpb24gaW4tcGxhY2UgKG1vZGlmeWluZyAqc2VsZiopIGFuZFxuICAgcmV0dXJuIHRoZSByZXN1bHQgKHdoaWNoIGNvdWxkIGJlLCBidXQgZG9lcyBub3QgaGF2ZSB0byBiZSxcbiAgICpzZWxmKikuICBJZiBhIHNwZWNpZmljIG1ldGhvZCBpcyBub3QgZGVmaW5lZCwgdGhlIGF1Z21lbnRlZFxuICAgYXNzaWdubWVudCBmYWxscyBiYWNrIHRvIHRoZSBub3JtYWwgbWV0aG9kcy4gIEZvciBpbnN0YW5jZSwgdG9cbiAgIGV4ZWN1dGUgdGhlIHN0YXRlbWVudCBgYHggKz0geWBgLCB3aGVyZSAqeCogaXMgYW4gaW5zdGFuY2Ugb2YgYVxuICAgY2xhc3MgdGhhdCBoYXMgYW4gYGBfX2lhZGRfXygpYGAgbWV0aG9kLCBgYHguX19pYWRkX18oeSlgYCBpc1xuICAgY2FsbGVkLiAgSWYgKngqIGlzIGFuIGluc3RhbmNlIG9mIGEgY2xhc3MgdGhhdCBkb2VzIG5vdCBkZWZpbmUgYVxuICAgYGBfX2lhZGRfXygpYGAgbWV0aG9kLCBgYHguX19hZGRfXyh5KWBgIGFuZCBgYHkuX19yYWRkX18oeClgYCBhcmVcbiAgIGNvbnNpZGVyZWQsIGFzIHdpdGggdGhlIGV2YWx1YXRpb24gb2YgYGB4ICsgeWBgLlxuXG5vYmplY3QuX19uZWdfXyhzZWxmKVxub2JqZWN0Ll9fcG9zX18oc2VsZilcbm9iamVjdC5fX2Fic19fKHNlbGYpXG5vYmplY3QuX19pbnZlcnRfXyhzZWxmKVxuXG4gICBDYWxsZWQgdG8gaW1wbGVtZW50IHRoZSB1bmFyeSBhcml0aG1ldGljIG9wZXJhdGlvbnMgKGBgLWBgLCBgYCtgYCxcbiAgIGBgYWJzKClgYCBhbmQgYGB+YGApLlxuXG5vYmplY3QuX19jb21wbGV4X18oc2VsZilcbm9iamVjdC5fX2ludF9fKHNlbGYpXG5vYmplY3QuX19mbG9hdF9fKHNlbGYpXG5vYmplY3QuX19yb3VuZF9fKHNlbGZbLCBuXSlcblxuICAgQ2FsbGVkIHRvIGltcGxlbWVudCB0aGUgYnVpbHQtaW4gZnVuY3Rpb25zIGBgY29tcGxleCgpYGAsXG4gICBgYGludCgpYGAsIGBgZmxvYXQoKWBgIGFuZCBgYHJvdW5kKClgYC4gIFNob3VsZCByZXR1cm4gYSB2YWx1ZSBvZlxuICAgdGhlIGFwcHJvcHJpYXRlIHR5cGUuXG5cbm9iamVjdC5fX2luZGV4X18oc2VsZilcblxuICAgQ2FsbGVkIHRvIGltcGxlbWVudCBgYG9wZXJhdG9yLmluZGV4KClgYC4gIEFsc28gY2FsbGVkIHdoZW5ldmVyXG4gICBQeXRob24gbmVlZHMgYW4gaW50ZWdlciBvYmplY3QgKHN1Y2ggYXMgaW4gc2xpY2luZywgb3IgaW4gdGhlXG4gICBidWlsdC1pbiBgYGJpbigpYGAsIGBgaGV4KClgYCBhbmQgYGBvY3QoKWBgIGZ1bmN0aW9ucykuIE11c3QgcmV0dXJuXG4gICBhbiBpbnRlZ2VyLlxuXG5cbldpdGggU3RhdGVtZW50IENvbnRleHQgTWFuYWdlcnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQSAqY29udGV4dCBtYW5hZ2VyKiBpcyBhbiBvYmplY3QgdGhhdCBkZWZpbmVzIHRoZSBydW50aW1lIGNvbnRleHQgdG9cbmJlIGVzdGFibGlzaGVkIHdoZW4gZXhlY3V0aW5nIGEgYGB3aXRoYGAgc3RhdGVtZW50LiBUaGUgY29udGV4dFxubWFuYWdlciBoYW5kbGVzIHRoZSBlbnRyeSBpbnRvLCBhbmQgdGhlIGV4aXQgZnJvbSwgdGhlIGRlc2lyZWQgcnVudGltZVxuY29udGV4dCBmb3IgdGhlIGV4ZWN1dGlvbiBvZiB0aGUgYmxvY2sgb2YgY29kZS4gIENvbnRleHQgbWFuYWdlcnMgYXJlXG5ub3JtYWxseSBpbnZva2VkIHVzaW5nIHRoZSBgYHdpdGhgYCBzdGF0ZW1lbnQgKGRlc2NyaWJlZCBpbiBzZWN0aW9uXG4qVGhlIHdpdGggc3RhdGVtZW50KiksIGJ1dCBjYW4gYWxzbyBiZSB1c2VkIGJ5IGRpcmVjdGx5IGludm9raW5nIHRoZWlyXG5tZXRob2RzLlxuXG5UeXBpY2FsIHVzZXMgb2YgY29udGV4dCBtYW5hZ2VycyBpbmNsdWRlIHNhdmluZyBhbmQgcmVzdG9yaW5nIHZhcmlvdXNcbmtpbmRzIG9mIGdsb2JhbCBzdGF0ZSwgbG9ja2luZyBhbmQgdW5sb2NraW5nIHJlc291cmNlcywgY2xvc2luZyBvcGVuZWRcbmZpbGVzLCBldGMuXG5cbkZvciBtb3JlIGluZm9ybWF0aW9uIG9uIGNvbnRleHQgbWFuYWdlcnMsIHNlZSAqQ29udGV4dCBNYW5hZ2VyIFR5cGVzKi5cblxub2JqZWN0Ll9fZW50ZXJfXyhzZWxmKVxuXG4gICBFbnRlciB0aGUgcnVudGltZSBjb250ZXh0IHJlbGF0ZWQgdG8gdGhpcyBvYmplY3QuIFRoZSBgYHdpdGhgYFxuICAgc3RhdGVtZW50IHdpbGwgYmluZCB0aGlzIG1ldGhvZFwncyByZXR1cm4gdmFsdWUgdG8gdGhlIHRhcmdldChzKVxuICAgc3BlY2lmaWVkIGluIHRoZSBgYGFzYGAgY2xhdXNlIG9mIHRoZSBzdGF0ZW1lbnQsIGlmIGFueS5cblxub2JqZWN0Ll9fZXhpdF9fKHNlbGYsIGV4Y190eXBlLCBleGNfdmFsdWUsIHRyYWNlYmFjaylcblxuICAgRXhpdCB0aGUgcnVudGltZSBjb250ZXh0IHJlbGF0ZWQgdG8gdGhpcyBvYmplY3QuIFRoZSBwYXJhbWV0ZXJzXG4gICBkZXNjcmliZSB0aGUgZXhjZXB0aW9uIHRoYXQgY2F1c2VkIHRoZSBjb250ZXh0IHRvIGJlIGV4aXRlZC4gSWYgdGhlXG4gICBjb250ZXh0IHdhcyBleGl0ZWQgd2l0aG91dCBhbiBleGNlcHRpb24sIGFsbCB0aHJlZSBhcmd1bWVudHMgd2lsbFxuICAgYmUgYGBOb25lYGAuXG5cbiAgIElmIGFuIGV4Y2VwdGlvbiBpcyBzdXBwbGllZCwgYW5kIHRoZSBtZXRob2Qgd2lzaGVzIHRvIHN1cHByZXNzIHRoZVxuICAgZXhjZXB0aW9uIChpLmUuLCBwcmV2ZW50IGl0IGZyb20gYmVpbmcgcHJvcGFnYXRlZCksIGl0IHNob3VsZFxuICAgcmV0dXJuIGEgdHJ1ZSB2YWx1ZS4gT3RoZXJ3aXNlLCB0aGUgZXhjZXB0aW9uIHdpbGwgYmUgcHJvY2Vzc2VkXG4gICBub3JtYWxseSB1cG9uIGV4aXQgZnJvbSB0aGlzIG1ldGhvZC5cblxuICAgTm90ZSB0aGF0IGBgX19leGl0X18oKWBgIG1ldGhvZHMgc2hvdWxkIG5vdCByZXJhaXNlIHRoZSBwYXNzZWQtaW5cbiAgIGV4Y2VwdGlvbjsgdGhpcyBpcyB0aGUgY2FsbGVyXCdzIHJlc3BvbnNpYmlsaXR5LlxuXG5TZWUgYWxzbzpcblxuICAgKipQRVAgMDM0MyoqIC0gVGhlICJ3aXRoIiBzdGF0ZW1lbnRcbiAgICAgIFRoZSBzcGVjaWZpY2F0aW9uLCBiYWNrZ3JvdW5kLCBhbmQgZXhhbXBsZXMgZm9yIHRoZSBQeXRob25cbiAgICAgIGBgd2l0aGBgIHN0YXRlbWVudC5cblxuXG5TcGVjaWFsIG1ldGhvZCBsb29rdXBcbj09PT09PT09PT09PT09PT09PT09PVxuXG5Gb3IgY3VzdG9tIGNsYXNzZXMsIGltcGxpY2l0IGludm9jYXRpb25zIG9mIHNwZWNpYWwgbWV0aG9kcyBhcmUgb25seVxuZ3VhcmFudGVlZCB0byB3b3JrIGNvcnJlY3RseSBpZiBkZWZpbmVkIG9uIGFuIG9iamVjdFwncyB0eXBlLCBub3QgaW5cbnRoZSBvYmplY3RcJ3MgaW5zdGFuY2UgZGljdGlvbmFyeS4gIFRoYXQgYmVoYXZpb3VyIGlzIHRoZSByZWFzb24gd2h5XG50aGUgZm9sbG93aW5nIGNvZGUgcmFpc2VzIGFuIGV4Y2VwdGlvbjpcblxuICAgPj4+IGNsYXNzIEM6XG4gICAuLi4gICAgIHBhc3NcbiAgIC4uLlxuICAgPj4+IGMgPSBDKClcbiAgID4+PiBjLl9fbGVuX18gPSBsYW1iZGE6IDVcbiAgID4+PiBsZW4oYylcbiAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KTpcbiAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMSwgaW4gPG1vZHVsZT5cbiAgIFR5cGVFcnJvcjogb2JqZWN0IG9mIHR5cGUgXCdDXCcgaGFzIG5vIGxlbigpXG5cblRoZSByYXRpb25hbGUgYmVoaW5kIHRoaXMgYmVoYXZpb3VyIGxpZXMgd2l0aCBhIG51bWJlciBvZiBzcGVjaWFsXG5tZXRob2RzIHN1Y2ggYXMgYGBfX2hhc2hfXygpYGAgYW5kIGBgX19yZXByX18oKWBgIHRoYXQgYXJlIGltcGxlbWVudGVkXG5ieSBhbGwgb2JqZWN0cywgaW5jbHVkaW5nIHR5cGUgb2JqZWN0cy4gSWYgdGhlIGltcGxpY2l0IGxvb2t1cCBvZlxudGhlc2UgbWV0aG9kcyB1c2VkIHRoZSBjb252ZW50aW9uYWwgbG9va3VwIHByb2Nlc3MsIHRoZXkgd291bGQgZmFpbFxud2hlbiBpbnZva2VkIG9uIHRoZSB0eXBlIG9iamVjdCBpdHNlbGY6XG5cbiAgID4+PiAxIC5fX2hhc2hfXygpID09IGhhc2goMSlcbiAgIFRydWVcbiAgID4+PiBpbnQuX19oYXNoX18oKSA9PSBoYXNoKGludClcbiAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KTpcbiAgICAgRmlsZSAiPHN0ZGluPiIsIGxpbmUgMSwgaW4gPG1vZHVsZT5cbiAgIFR5cGVFcnJvcjogZGVzY3JpcHRvciBcJ19faGFzaF9fXCcgb2YgXCdpbnRcJyBvYmplY3QgbmVlZHMgYW4gYXJndW1lbnRcblxuSW5jb3JyZWN0bHkgYXR0ZW1wdGluZyB0byBpbnZva2UgYW4gdW5ib3VuZCBtZXRob2Qgb2YgYSBjbGFzcyBpbiB0aGlzXG53YXkgaXMgc29tZXRpbWVzIHJlZmVycmVkIHRvIGFzIFwnbWV0YWNsYXNzIGNvbmZ1c2lvblwnLCBhbmQgaXMgYXZvaWRlZFxuYnkgYnlwYXNzaW5nIHRoZSBpbnN0YW5jZSB3aGVuIGxvb2tpbmcgdXAgc3BlY2lhbCBtZXRob2RzOlxuXG4gICA+Pj4gdHlwZSgxKS5fX2hhc2hfXygxKSA9PSBoYXNoKDEpXG4gICBUcnVlXG4gICA+Pj4gdHlwZShpbnQpLl9faGFzaF9fKGludCkgPT0gaGFzaChpbnQpXG4gICBUcnVlXG5cbkluIGFkZGl0aW9uIHRvIGJ5cGFzc2luZyBhbnkgaW5zdGFuY2UgYXR0cmlidXRlcyBpbiB0aGUgaW50ZXJlc3Qgb2ZcbmNvcnJlY3RuZXNzLCBpbXBsaWNpdCBzcGVjaWFsIG1ldGhvZCBsb29rdXAgZ2VuZXJhbGx5IGFsc28gYnlwYXNzZXNcbnRoZSBgYF9fZ2V0YXR0cmlidXRlX18oKWBgIG1ldGhvZCBldmVuIG9mIHRoZSBvYmplY3RcJ3MgbWV0YWNsYXNzOlxuXG4gICA+Pj4gY2xhc3MgTWV0YSh0eXBlKTpcbiAgIC4uLiAgICBkZWYgX19nZXRhdHRyaWJ1dGVfXygqYXJncyk6XG4gICAuLi4gICAgICAgcHJpbnQoIk1ldGFjbGFzcyBnZXRhdHRyaWJ1dGUgaW52b2tlZCIpXG4gICAuLi4gICAgICAgcmV0dXJuIHR5cGUuX19nZXRhdHRyaWJ1dGVfXygqYXJncylcbiAgIC4uLlxuICAgPj4+IGNsYXNzIEMob2JqZWN0LCBtZXRhY2xhc3M9TWV0YSk6XG4gICAuLi4gICAgIGRlZiBfX2xlbl9fKHNlbGYpOlxuICAgLi4uICAgICAgICAgcmV0dXJuIDEwXG4gICAuLi4gICAgIGRlZiBfX2dldGF0dHJpYnV0ZV9fKCphcmdzKTpcbiAgIC4uLiAgICAgICAgIHByaW50KCJDbGFzcyBnZXRhdHRyaWJ1dGUgaW52b2tlZCIpXG4gICAuLi4gICAgICAgICByZXR1cm4gb2JqZWN0Ll9fZ2V0YXR0cmlidXRlX18oKmFyZ3MpXG4gICAuLi5cbiAgID4+PiBjID0gQygpXG4gICA+Pj4gYy5fX2xlbl9fKCkgICAgICAgICAgICAgICAgICMgRXhwbGljaXQgbG9va3VwIHZpYSBpbnN0YW5jZVxuICAgQ2xhc3MgZ2V0YXR0cmlidXRlIGludm9rZWRcbiAgIDEwXG4gICA+Pj4gdHlwZShjKS5fX2xlbl9fKGMpICAgICAgICAgICMgRXhwbGljaXQgbG9va3VwIHZpYSB0eXBlXG4gICBNZXRhY2xhc3MgZ2V0YXR0cmlidXRlIGludm9rZWRcbiAgIDEwXG4gICA+Pj4gbGVuKGMpICAgICAgICAgICAgICAgICAgICAgICMgSW1wbGljaXQgbG9va3VwXG4gICAxMFxuXG5CeXBhc3NpbmcgdGhlIGBgX19nZXRhdHRyaWJ1dGVfXygpYGAgbWFjaGluZXJ5IGluIHRoaXMgZmFzaGlvblxucHJvdmlkZXMgc2lnbmlmaWNhbnQgc2NvcGUgZm9yIHNwZWVkIG9wdGltaXNhdGlvbnMgd2l0aGluIHRoZVxuaW50ZXJwcmV0ZXIsIGF0IHRoZSBjb3N0IG9mIHNvbWUgZmxleGliaWxpdHkgaW4gdGhlIGhhbmRsaW5nIG9mXG5zcGVjaWFsIG1ldGhvZHMgKHRoZSBzcGVjaWFsIG1ldGhvZCAqbXVzdCogYmUgc2V0IG9uIHRoZSBjbGFzcyBvYmplY3Rcbml0c2VsZiBpbiBvcmRlciB0byBiZSBjb25zaXN0ZW50bHkgaW52b2tlZCBieSB0aGUgaW50ZXJwcmV0ZXIpLlxuXG4tWyBGb290bm90ZXMgXS1cblxuWzFdIEl0ICppcyogcG9zc2libGUgaW4gc29tZSBjYXNlcyB0byBjaGFuZ2UgYW4gb2JqZWN0XCdzIHR5cGUsIHVuZGVyXG4gICAgY2VydGFpbiBjb250cm9sbGVkIGNvbmRpdGlvbnMuIEl0IGdlbmVyYWxseSBpc25cJ3QgYSBnb29kIGlkZWFcbiAgICB0aG91Z2gsIHNpbmNlIGl0IGNhbiBsZWFkIHRvIHNvbWUgdmVyeSBzdHJhbmdlIGJlaGF2aW91ciBpZiBpdCBpc1xuICAgIGhhbmRsZWQgaW5jb3JyZWN0bHkuXG5cblsyXSBGb3Igb3BlcmFuZHMgb2YgdGhlIHNhbWUgdHlwZSwgaXQgaXMgYXNzdW1lZCB0aGF0IGlmIHRoZSBub24tXG4gICAgcmVmbGVjdGVkIG1ldGhvZCAoc3VjaCBhcyBgYF9fYWRkX18oKWBgKSBmYWlscyB0aGUgb3BlcmF0aW9uIGlzXG4gICAgbm90IHN1cHBvcnRlZCwgd2hpY2ggaXMgd2h5IHRoZSByZWZsZWN0ZWQgbWV0aG9kIGlzIG5vdCBjYWxsZWQuXG4nLAotICdzdHJpbmctbWV0aG9kcyc6ICdcblN0cmluZyBNZXRob2RzXG4qKioqKioqKioqKioqKlxuXG5TdHJpbmcgb2JqZWN0cyBzdXBwb3J0IHRoZSBtZXRob2RzIGxpc3RlZCBiZWxvdy5cblxuSW4gYWRkaXRpb24sIFB5dGhvblwncyBzdHJpbmdzIHN1cHBvcnQgdGhlIHNlcXVlbmNlIHR5cGUgbWV0aG9kc1xuZGVzY3JpYmVkIGluIHRoZSAqU2VxdWVuY2UgVHlwZXMgLS0tIHN0ciwgYnl0ZXMsIGJ5dGVhcnJheSwgbGlzdCxcbnR1cGxlLCByYW5nZSogc2VjdGlvbi4gVG8gb3V0cHV0IGZvcm1hdHRlZCBzdHJpbmdzLCBzZWUgdGhlICpTdHJpbmdcbkZvcm1hdHRpbmcqIHNlY3Rpb24uIEFsc28sIHNlZSB0aGUgYGByZWBgIG1vZHVsZSBmb3Igc3RyaW5nIGZ1bmN0aW9uc1xuYmFzZWQgb24gcmVndWxhciBleHByZXNzaW9ucy5cblxuc3RyLmNhcGl0YWxpemUoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCBpdHMgZmlyc3QgY2hhcmFjdGVyIGNhcGl0YWxpemVkXG4gICBhbmQgdGhlIHJlc3QgbG93ZXJjYXNlZC5cblxuc3RyLmNlbnRlcih3aWR0aFssIGZpbGxjaGFyXSlcblxuICAgUmV0dXJuIGNlbnRlcmVkIGluIGEgc3RyaW5nIG9mIGxlbmd0aCAqd2lkdGgqLiBQYWRkaW5nIGlzIGRvbmVcbiAgIHVzaW5nIHRoZSBzcGVjaWZpZWQgKmZpbGxjaGFyKiAoZGVmYXVsdCBpcyBhIHNwYWNlKS5cblxuc3RyLmNvdW50KHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiB0aGUgbnVtYmVyIG9mIG5vbi1vdmVybGFwcGluZyBvY2N1cnJlbmNlcyBvZiBzdWJzdHJpbmcgKnN1YipcbiAgIGluIHRoZSByYW5nZSBbKnN0YXJ0KiwgKmVuZCpdLiAgT3B0aW9uYWwgYXJndW1lbnRzICpzdGFydCogYW5kXG4gICAqZW5kKiBhcmUgaW50ZXJwcmV0ZWQgYXMgaW4gc2xpY2Ugbm90YXRpb24uXG5cbnN0ci5lbmNvZGUoZW5jb2Rpbmc9InV0Zi04IiwgZXJyb3JzPSJzdHJpY3QiKVxuXG4gICBSZXR1cm4gYW4gZW5jb2RlZCB2ZXJzaW9uIG9mIHRoZSBzdHJpbmcgYXMgYSBieXRlcyBvYmplY3QuIERlZmF1bHRcbiAgIGVuY29kaW5nIGlzIGBgXCd1dGYtOFwnYGAuICplcnJvcnMqIG1heSBiZSBnaXZlbiB0byBzZXQgYSBkaWZmZXJlbnRcbiAgIGVycm9yIGhhbmRsaW5nIHNjaGVtZS4gVGhlIGRlZmF1bHQgZm9yICplcnJvcnMqIGlzIGBgXCdzdHJpY3RcJ2BgLFxuICAgbWVhbmluZyB0aGF0IGVuY29kaW5nIGVycm9ycyByYWlzZSBhIGBgVW5pY29kZUVycm9yYGAuIE90aGVyXG4gICBwb3NzaWJsZSB2YWx1ZXMgYXJlIGBgXCdpZ25vcmVcJ2BgLCBgYFwncmVwbGFjZVwnYGAsXG4gICBgYFwneG1sY2hhcnJlZnJlcGxhY2VcJ2BgLCBgYFwnYmFja3NsYXNocmVwbGFjZVwnYGAgYW5kIGFueSBvdGhlciBuYW1lXG4gICByZWdpc3RlcmVkIHZpYSBgYGNvZGVjcy5yZWdpc3Rlcl9lcnJvcigpYGAsIHNlZSBzZWN0aW9uICpDb2RlYyBCYXNlXG4gICBDbGFzc2VzKi4gRm9yIGEgbGlzdCBvZiBwb3NzaWJsZSBlbmNvZGluZ3MsIHNlZSBzZWN0aW9uICpTdGFuZGFyZFxuICAgRW5jb2RpbmdzKi5cblxuICAgQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogU3VwcG9ydCBmb3Iga2V5d29yZCBhcmd1bWVudHMgYWRkZWQuXG5cbnN0ci5lbmRzd2l0aChzdWZmaXhbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gYGBUcnVlYGAgaWYgdGhlIHN0cmluZyBlbmRzIHdpdGggdGhlIHNwZWNpZmllZCAqc3VmZml4KixcbiAgIG90aGVyd2lzZSByZXR1cm4gYGBGYWxzZWBgLiAgKnN1ZmZpeCogY2FuIGFsc28gYmUgYSB0dXBsZSBvZlxuICAgc3VmZml4ZXMgdG8gbG9vayBmb3IuICBXaXRoIG9wdGlvbmFsICpzdGFydCosIHRlc3QgYmVnaW5uaW5nIGF0XG4gICB0aGF0IHBvc2l0aW9uLiAgV2l0aCBvcHRpb25hbCAqZW5kKiwgc3RvcCBjb21wYXJpbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uXG5cbnN0ci5leHBhbmR0YWJzKFt0YWJzaXplXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdoZXJlIGFsbCB0YWIgY2hhcmFjdGVycyBhcmUgcmVwbGFjZWRcbiAgIGJ5IG9uZSBvciBtb3JlIHNwYWNlcywgZGVwZW5kaW5nIG9uIHRoZSBjdXJyZW50IGNvbHVtbiBhbmQgdGhlXG4gICBnaXZlbiB0YWIgc2l6ZS4gIFRoZSBjb2x1bW4gbnVtYmVyIGlzIHJlc2V0IHRvIHplcm8gYWZ0ZXIgZWFjaFxuICAgbmV3bGluZSBvY2N1cnJpbmcgaW4gdGhlIHN0cmluZy4gSWYgKnRhYnNpemUqIGlzIG5vdCBnaXZlbiwgYSB0YWJcbiAgIHNpemUgb2YgYGA4YGAgY2hhcmFjdGVycyBpcyBhc3N1bWVkLiAgVGhpcyBkb2VzblwndCB1bmRlcnN0YW5kIG90aGVyXG4gICBub24tcHJpbnRpbmcgY2hhcmFjdGVycyBvciBlc2NhcGUgc2VxdWVuY2VzLlxuXG5zdHIuZmluZChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gdGhlIGxvd2VzdCBpbmRleCBpbiB0aGUgc3RyaW5nIHdoZXJlIHN1YnN0cmluZyAqc3ViKiBpc1xuICAgZm91bmQsIHN1Y2ggdGhhdCAqc3ViKiBpcyBjb250YWluZWQgaW4gdGhlIHNsaWNlIGBgc1tzdGFydDplbmRdYGAuXG4gICBPcHRpb25hbCBhcmd1bWVudHMgKnN0YXJ0KiBhbmQgKmVuZCogYXJlIGludGVycHJldGVkIGFzIGluIHNsaWNlXG4gICBub3RhdGlvbi4gIFJldHVybiBgYC0xYGAgaWYgKnN1YiogaXMgbm90IGZvdW5kLlxuXG4gICBOb3RlOiBUaGUgYGBmaW5kKClgYCBtZXRob2Qgc2hvdWxkIGJlIHVzZWQgb25seSBpZiB5b3UgbmVlZCB0byBrbm93IHRoZVxuICAgICBwb3NpdGlvbiBvZiAqc3ViKi4gIFRvIGNoZWNrIGlmICpzdWIqIGlzIGEgc3Vic3RyaW5nIG9yIG5vdCwgdXNlXG4gICAgIHRoZSBgYGluYGAgb3BlcmF0b3I6XG5cbiAgICAgICAgPj4+IFwnUHlcJyBpbiBcJ1B5dGhvblwnXG4gICAgICAgIFRydWVcblxuc3RyLmZvcm1hdCgqYXJncywgKiprd2FyZ3MpXG5cbiAgIFBlcmZvcm0gYSBzdHJpbmcgZm9ybWF0dGluZyBvcGVyYXRpb24uICBUaGUgc3RyaW5nIG9uIHdoaWNoIHRoaXNcbiAgIG1ldGhvZCBpcyBjYWxsZWQgY2FuIGNvbnRhaW4gbGl0ZXJhbCB0ZXh0IG9yIHJlcGxhY2VtZW50IGZpZWxkc1xuICAgZGVsaW1pdGVkIGJ5IGJyYWNlcyBgYHt9YGAuICBFYWNoIHJlcGxhY2VtZW50IGZpZWxkIGNvbnRhaW5zIGVpdGhlclxuICAgdGhlIG51bWVyaWMgaW5kZXggb2YgYSBwb3NpdGlvbmFsIGFyZ3VtZW50LCBvciB0aGUgbmFtZSBvZiBhXG4gICBrZXl3b3JkIGFyZ3VtZW50LiAgUmV0dXJucyBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aGVyZSBlYWNoXG4gICByZXBsYWNlbWVudCBmaWVsZCBpcyByZXBsYWNlZCB3aXRoIHRoZSBzdHJpbmcgdmFsdWUgb2YgdGhlXG4gICBjb3JyZXNwb25kaW5nIGFyZ3VtZW50LlxuXG4gICA+Pj4gIlRoZSBzdW0gb2YgMSArIDIgaXMgezB9Ii5mb3JtYXQoMSsyKVxuICAgXCdUaGUgc3VtIG9mIDEgKyAyIGlzIDNcJ1xuXG4gICBTZWUgKkZvcm1hdCBTdHJpbmcgU3ludGF4KiBmb3IgYSBkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91c1xuICAgZm9ybWF0dGluZyBvcHRpb25zIHRoYXQgY2FuIGJlIHNwZWNpZmllZCBpbiBmb3JtYXQgc3RyaW5ncy5cblxuc3RyLmZvcm1hdF9tYXAobWFwcGluZylcblxuICAgU2ltaWxhciB0byBgYHN0ci5mb3JtYXQoKiptYXBwaW5nKWBgLCBleGNlcHQgdGhhdCBgYG1hcHBpbmdgYCBpc1xuICAgdXNlZCBkaXJlY3RseSBhbmQgbm90IGNvcGllZCB0byBhIGBgZGljdGBgIC4gIFRoaXMgaXMgdXNlZnVsIGlmIGZvclxuICAgZXhhbXBsZSBgYG1hcHBpbmdgYCBpcyBhIGRpY3Qgc3ViY2xhc3M6XG5cbiAgID4+PiBjbGFzcyBEZWZhdWx0KGRpY3QpOlxuICAgLi4uICAgICBkZWYgX19taXNzaW5nX18oc2VsZiwga2V5KTpcbiAgIC4uLiAgICAgICAgIHJldHVybiBrZXlcbiAgIC4uLlxuICAgPj4+IFwne25hbWV9IHdhcyBib3JuIGluIHtjb3VudHJ5fVwnLmZvcm1hdF9tYXAoRGVmYXVsdChuYW1lPVwnR3VpZG9cJykpXG4gICBcJ0d1aWRvIHdhcyBib3JuIGluIGNvdW50cnlcJ1xuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjIuXG5cbnN0ci5pbmRleChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBMaWtlIGBgZmluZCgpYGAsIGJ1dCByYWlzZSBgYFZhbHVlRXJyb3JgYCB3aGVuIHRoZSBzdWJzdHJpbmcgaXMgbm90XG4gICBmb3VuZC5cblxuc3RyLmlzYWxudW0oKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBhbHBoYW51bWVyaWMgYW5kXG4gICB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBBIGNoYXJhY3RlclxuICAgYGBjYGAgaXMgYWxwaGFudW1lcmljIGlmIG9uZSBvZiB0aGUgZm9sbG93aW5nIHJldHVybnMgYGBUcnVlYGA6XG4gICBgYGMuaXNhbHBoYSgpYGAsIGBgYy5pc2RlY2ltYWwoKWBgLCBgYGMuaXNkaWdpdCgpYGAsIG9yXG4gICBgYGMuaXNudW1lcmljKClgYC5cblxuc3RyLmlzYWxwaGEoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBhbHBoYWJldGljIGFuZFxuICAgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgQWxwaGFiZXRpY1xuICAgY2hhcmFjdGVycyBhcmUgdGhvc2UgY2hhcmFjdGVycyBkZWZpbmVkIGluIHRoZSBVbmljb2RlIGNoYXJhY3RlclxuICAgZGF0YWJhc2UgYXMgIkxldHRlciIsIGkuZS4sIHRob3NlIHdpdGggZ2VuZXJhbCBjYXRlZ29yeSBwcm9wZXJ0eVxuICAgYmVpbmcgb25lIG9mICJMbSIsICJMdCIsICJMdSIsICJMbCIsIG9yICJMbyIuICBOb3RlIHRoYXQgdGhpcyBpc1xuICAgZGlmZmVyZW50IGZyb20gdGhlICJBbHBoYWJldGljIiBwcm9wZXJ0eSBkZWZpbmVkIGluIHRoZSBVbmljb2RlXG4gICBTdGFuZGFyZC5cblxuc3RyLmlzZGVjaW1hbCgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGRlY2ltYWwgY2hhcmFjdGVyc1xuICAgYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gRGVjaW1hbFxuICAgY2hhcmFjdGVycyBhcmUgdGhvc2UgZnJvbSBnZW5lcmFsIGNhdGVnb3J5ICJOZCIuIFRoaXMgY2F0ZWdvcnlcbiAgIGluY2x1ZGVzIGRpZ2l0IGNoYXJhY3RlcnMsIGFuZCBhbGwgY2hhcmFjdGVycyB0aGF0IHRoYXQgY2FuIGJlIHVzZWRcbiAgIHRvIGZvcm0gZGVjaW1hbC1yYWRpeCBudW1iZXJzLCBlLmcuIFUrMDY2MCwgQVJBQklDLUlORElDIERJR0lUXG4gICBaRVJPLlxuXG5zdHIuaXNkaWdpdCgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGRpZ2l0cyBhbmQgdGhlcmUgaXNcbiAgIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIERpZ2l0cyBpbmNsdWRlIGRlY2ltYWxcbiAgIGNoYXJhY3RlcnMgYW5kIGRpZ2l0cyB0aGF0IG5lZWQgc3BlY2lhbCBoYW5kbGluZywgc3VjaCBhcyB0aGVcbiAgIGNvbXBhdGliaWxpdHkgc3VwZXJzY3JpcHQgZGlnaXRzLiAgRm9ybWFsbHksIGEgZGlnaXQgaXMgYSBjaGFyYWN0ZXJcbiAgIHRoYXQgaGFzIHRoZSBwcm9wZXJ0eSB2YWx1ZSBOdW1lcmljX1R5cGU9RGlnaXQgb3JcbiAgIE51bWVyaWNfVHlwZT1EZWNpbWFsLlxuXG5zdHIuaXNpZGVudGlmaWVyKClcblxuICAgUmV0dXJuIHRydWUgaWYgdGhlIHN0cmluZyBpcyBhIHZhbGlkIGlkZW50aWZpZXIgYWNjb3JkaW5nIHRvIHRoZVxuICAgbGFuZ3VhZ2UgZGVmaW5pdGlvbiwgc2VjdGlvbiAqSWRlbnRpZmllcnMgYW5kIGtleXdvcmRzKi5cblxuc3RyLmlzbG93ZXIoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2FzZWQgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBsb3dlcmNhc2UgYW5kXG4gICB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBDYXNlZFxuICAgY2hhcmFjdGVycyBhcmUgdGhvc2Ugd2l0aCBnZW5lcmFsIGNhdGVnb3J5IHByb3BlcnR5IGJlaW5nIG9uZSBvZlxuICAgIkx1IiwgIkxsIiwgb3IgIkx0IiBhbmQgbG93ZXJjYXNlIGNoYXJhY3RlcnMgYXJlIHRob3NlIHdpdGggZ2VuZXJhbFxuICAgY2F0ZWdvcnkgcHJvcGVydHkgIkxsIi5cblxuc3RyLmlzbnVtZXJpYygpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIG51bWVyaWMgY2hhcmFjdGVycyxcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuIE51bWVyaWNcbiAgIGNoYXJhY3RlcnMgaW5jbHVkZSBkaWdpdCBjaGFyYWN0ZXJzLCBhbmQgYWxsIGNoYXJhY3RlcnMgdGhhdCBoYXZlXG4gICB0aGUgVW5pY29kZSBudW1lcmljIHZhbHVlIHByb3BlcnR5LCBlLmcuIFUrMjE1NSwgVlVMR0FSIEZSQUNUSU9OXG4gICBPTkUgRklGVEguICBGb3JtYWxseSwgbnVtZXJpYyBjaGFyYWN0ZXJzIGFyZSB0aG9zZSB3aXRoIHRoZVxuICAgcHJvcGVydHkgdmFsdWUgTnVtZXJpY19UeXBlPURpZ2l0LCBOdW1lcmljX1R5cGU9RGVjaW1hbCBvclxuICAgTnVtZXJpY19UeXBlPU51bWVyaWMuXG5cbnN0ci5pc3ByaW50YWJsZSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIHByaW50YWJsZSBvciB0aGVcbiAgIHN0cmluZyBpcyBlbXB0eSwgZmFsc2Ugb3RoZXJ3aXNlLiAgTm9ucHJpbnRhYmxlIGNoYXJhY3RlcnMgYXJlXG4gICB0aG9zZSBjaGFyYWN0ZXJzIGRlZmluZWQgaW4gdGhlIFVuaWNvZGUgY2hhcmFjdGVyIGRhdGFiYXNlIGFzXG4gICAiT3RoZXIiIG9yICJTZXBhcmF0b3IiLCBleGNlcHRpbmcgdGhlIEFTQ0lJIHNwYWNlICgweDIwKSB3aGljaCBpc1xuICAgY29uc2lkZXJlZCBwcmludGFibGUuICAoTm90ZSB0aGF0IHByaW50YWJsZSBjaGFyYWN0ZXJzIGluIHRoaXNcbiAgIGNvbnRleHQgYXJlIHRob3NlIHdoaWNoIHNob3VsZCBub3QgYmUgZXNjYXBlZCB3aGVuIGBgcmVwcigpYGAgaXNcbiAgIGludm9rZWQgb24gYSBzdHJpbmcuICBJdCBoYXMgbm8gYmVhcmluZyBvbiB0aGUgaGFuZGxpbmcgb2Ygc3RyaW5nc1xuICAgd3JpdHRlbiB0byBgYHN5cy5zdGRvdXRgYCBvciBgYHN5cy5zdGRlcnJgYC4pXG5cbnN0ci5pc3NwYWNlKClcblxuICAgUmV0dXJuIHRydWUgaWYgdGhlcmUgYXJlIG9ubHkgd2hpdGVzcGFjZSBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmdcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBXaGl0ZXNwYWNlXG4gICBjaGFyYWN0ZXJzICBhcmUgdGhvc2UgY2hhcmFjdGVycyBkZWZpbmVkIGluIHRoZSBVbmljb2RlIGNoYXJhY3RlclxuICAgZGF0YWJhc2UgYXMgIk90aGVyIiBvciAiU2VwYXJhdG9yIiBhbmQgdGhvc2Ugd2l0aCBiaWRpcmVjdGlvbmFsXG4gICBwcm9wZXJ0eSBiZWluZyBvbmUgb2YgIldTIiwgIkIiLCBvciAiUyIuXG5cbnN0ci5pc3RpdGxlKClcblxuICAgUmV0dXJuIHRydWUgaWYgdGhlIHN0cmluZyBpcyBhIHRpdGxlY2FzZWQgc3RyaW5nIGFuZCB0aGVyZSBpcyBhdFxuICAgbGVhc3Qgb25lIGNoYXJhY3RlciwgZm9yIGV4YW1wbGUgdXBwZXJjYXNlIGNoYXJhY3RlcnMgbWF5IG9ubHlcbiAgIGZvbGxvdyB1bmNhc2VkIGNoYXJhY3RlcnMgYW5kIGxvd2VyY2FzZSBjaGFyYWN0ZXJzIG9ubHkgY2FzZWQgb25lcy5cbiAgIFJldHVybiBmYWxzZSBvdGhlcndpc2UuXG5cbnN0ci5pc3VwcGVyKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNhc2VkIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgdXBwZXJjYXNlIGFuZFxuICAgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNhc2VkIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiBDYXNlZFxuICAgY2hhcmFjdGVycyBhcmUgdGhvc2Ugd2l0aCBnZW5lcmFsIGNhdGVnb3J5IHByb3BlcnR5IGJlaW5nIG9uZSBvZlxuICAgIkx1IiwgIkxsIiwgb3IgIkx0IiBhbmQgdXBwZXJjYXNlIGNoYXJhY3RlcnMgYXJlIHRob3NlIHdpdGggZ2VuZXJhbFxuICAgY2F0ZWdvcnkgcHJvcGVydHkgIkx1Ii5cblxuc3RyLmpvaW4oaXRlcmFibGUpXG5cbiAgIFJldHVybiBhIHN0cmluZyB3aGljaCBpcyB0aGUgY29uY2F0ZW5hdGlvbiBvZiB0aGUgc3RyaW5ncyBpbiB0aGVcbiAgICppdGVyYWJsZSogKml0ZXJhYmxlKi4gIEEgYGBUeXBlRXJyb3JgYCB3aWxsIGJlIHJhaXNlZCBpZiB0aGVyZSBhcmVcbiAgIGFueSBub24tc3RyaW5nIHZhbHVlcyBpbiAqc2VxKiwgaW5jbHVkaW5nIGBgYnl0ZXNgYCBvYmplY3RzLiAgVGhlXG4gICBzZXBhcmF0b3IgYmV0d2VlbiBlbGVtZW50cyBpcyB0aGUgc3RyaW5nIHByb3ZpZGluZyB0aGlzIG1ldGhvZC5cblxuc3RyLmxqdXN0KHdpZHRoWywgZmlsbGNoYXJdKVxuXG4gICBSZXR1cm4gdGhlIHN0cmluZyBsZWZ0IGp1c3RpZmllZCBpbiBhIHN0cmluZyBvZiBsZW5ndGggKndpZHRoKi5cbiAgIFBhZGRpbmcgaXMgZG9uZSB1c2luZyB0aGUgc3BlY2lmaWVkICpmaWxsY2hhciogKGRlZmF1bHQgaXMgYVxuICAgc3BhY2UpLiAgVGhlIG9yaWdpbmFsIHN0cmluZyBpcyByZXR1cm5lZCBpZiAqd2lkdGgqIGlzIGxlc3MgdGhhblxuICAgYGBsZW4ocylgYC5cblxuc3RyLmxvd2VyKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIGNvbnZlcnRlZCB0byBsb3dlcmNhc2UuXG5cbnN0ci5sc3RyaXAoW2NoYXJzXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggbGVhZGluZyBjaGFyYWN0ZXJzIHJlbW92ZWQuICBUaGVcbiAgICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGUgc2V0IG9mIGNoYXJhY3RlcnMgdG8gYmVcbiAgIHJlbW92ZWQuICBJZiBvbWl0dGVkIG9yIGBgTm9uZWBgLCB0aGUgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0b1xuICAgcmVtb3Zpbmcgd2hpdGVzcGFjZS4gIFRoZSAqY2hhcnMqIGFyZ3VtZW50IGlzIG5vdCBhIHByZWZpeDsgcmF0aGVyLFxuICAgYWxsIGNvbWJpbmF0aW9ucyBvZiBpdHMgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5sc3RyaXAoKVxuICAgXCdzcGFjaW91cyAgIFwnXG4gICA+Pj4gXCd3d3cuZXhhbXBsZS5jb21cJy5sc3RyaXAoXCdjbW93ei5cJylcbiAgIFwnZXhhbXBsZS5jb21cJ1xuXG5zdGF0aWMgc3RyLm1ha2V0cmFucyh4WywgeVssIHpdXSlcblxuICAgVGhpcyBzdGF0aWMgbWV0aG9kIHJldHVybnMgYSB0cmFuc2xhdGlvbiB0YWJsZSB1c2FibGUgZm9yXG4gICBgYHN0ci50cmFuc2xhdGUoKWBgLlxuXG4gICBJZiB0aGVyZSBpcyBvbmx5IG9uZSBhcmd1bWVudCwgaXQgbXVzdCBiZSBhIGRpY3Rpb25hcnkgbWFwcGluZ1xuICAgVW5pY29kZSBvcmRpbmFscyAoaW50ZWdlcnMpIG9yIGNoYXJhY3RlcnMgKHN0cmluZ3Mgb2YgbGVuZ3RoIDEpIHRvXG4gICBVbmljb2RlIG9yZGluYWxzLCBzdHJpbmdzIChvZiBhcmJpdHJhcnkgbGVuZ3Rocykgb3IgTm9uZS5cbiAgIENoYXJhY3RlciBrZXlzIHdpbGwgdGhlbiBiZSBjb252ZXJ0ZWQgdG8gb3JkaW5hbHMuXG5cbiAgIElmIHRoZXJlIGFyZSB0d28gYXJndW1lbnRzLCB0aGV5IG11c3QgYmUgc3RyaW5ncyBvZiBlcXVhbCBsZW5ndGgsXG4gICBhbmQgaW4gdGhlIHJlc3VsdGluZyBkaWN0aW9uYXJ5LCBlYWNoIGNoYXJhY3RlciBpbiB4IHdpbGwgYmUgbWFwcGVkXG4gICB0byB0aGUgY2hhcmFjdGVyIGF0IHRoZSBzYW1lIHBvc2l0aW9uIGluIHkuICBJZiB0aGVyZSBpcyBhIHRoaXJkXG4gICBhcmd1bWVudCwgaXQgbXVzdCBiZSBhIHN0cmluZywgd2hvc2UgY2hhcmFjdGVycyB3aWxsIGJlIG1hcHBlZCB0b1xuICAgTm9uZSBpbiB0aGUgcmVzdWx0LlxuXG5zdHIucGFydGl0aW9uKHNlcClcblxuICAgU3BsaXQgdGhlIHN0cmluZyBhdCB0aGUgZmlyc3Qgb2NjdXJyZW5jZSBvZiAqc2VwKiwgYW5kIHJldHVybiBhXG4gICAzLXR1cGxlIGNvbnRhaW5pbmcgdGhlIHBhcnQgYmVmb3JlIHRoZSBzZXBhcmF0b3IsIHRoZSBzZXBhcmF0b3JcbiAgIGl0c2VsZiwgYW5kIHRoZSBwYXJ0IGFmdGVyIHRoZSBzZXBhcmF0b3IuICBJZiB0aGUgc2VwYXJhdG9yIGlzIG5vdFxuICAgZm91bmQsIHJldHVybiBhIDMtdHVwbGUgY29udGFpbmluZyB0aGUgc3RyaW5nIGl0c2VsZiwgZm9sbG93ZWQgYnlcbiAgIHR3byBlbXB0eSBzdHJpbmdzLlxuXG5zdHIucmVwbGFjZShvbGQsIG5ld1ssIGNvdW50XSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggYWxsIG9jY3VycmVuY2VzIG9mIHN1YnN0cmluZyAqb2xkKlxuICAgcmVwbGFjZWQgYnkgKm5ldyouICBJZiB0aGUgb3B0aW9uYWwgYXJndW1lbnQgKmNvdW50KiBpcyBnaXZlbiwgb25seVxuICAgdGhlIGZpcnN0ICpjb3VudCogb2NjdXJyZW5jZXMgYXJlIHJlcGxhY2VkLlxuXG5zdHIucmZpbmQoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIHRoZSBoaWdoZXN0IGluZGV4IGluIHRoZSBzdHJpbmcgd2hlcmUgc3Vic3RyaW5nICpzdWIqIGlzXG4gICBmb3VuZCwgc3VjaCB0aGF0ICpzdWIqIGlzIGNvbnRhaW5lZCB3aXRoaW4gYGBzW3N0YXJ0OmVuZF1gYC5cbiAgIE9wdGlvbmFsIGFyZ3VtZW50cyAqc3RhcnQqIGFuZCAqZW5kKiBhcmUgaW50ZXJwcmV0ZWQgYXMgaW4gc2xpY2VcbiAgIG5vdGF0aW9uLiAgUmV0dXJuIGBgLTFgYCBvbiBmYWlsdXJlLlxuXG5zdHIucmluZGV4KHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIExpa2UgYGByZmluZCgpYGAgYnV0IHJhaXNlcyBgYFZhbHVlRXJyb3JgYCB3aGVuIHRoZSBzdWJzdHJpbmcgKnN1YipcbiAgIGlzIG5vdCBmb3VuZC5cblxuc3RyLnJqdXN0KHdpZHRoWywgZmlsbGNoYXJdKVxuXG4gICBSZXR1cm4gdGhlIHN0cmluZyByaWdodCBqdXN0aWZpZWQgaW4gYSBzdHJpbmcgb2YgbGVuZ3RoICp3aWR0aCouXG4gICBQYWRkaW5nIGlzIGRvbmUgdXNpbmcgdGhlIHNwZWNpZmllZCAqZmlsbGNoYXIqIChkZWZhdWx0IGlzIGFcbiAgIHNwYWNlKS4gVGhlIG9yaWdpbmFsIHN0cmluZyBpcyByZXR1cm5lZCBpZiAqd2lkdGgqIGlzIGxlc3MgdGhhblxuICAgYGBsZW4ocylgYC5cblxuc3RyLnJwYXJ0aXRpb24oc2VwKVxuXG4gICBTcGxpdCB0aGUgc3RyaW5nIGF0IHRoZSBsYXN0IG9jY3VycmVuY2Ugb2YgKnNlcCosIGFuZCByZXR1cm4gYVxuICAgMy10dXBsZSBjb250YWluaW5nIHRoZSBwYXJ0IGJlZm9yZSB0aGUgc2VwYXJhdG9yLCB0aGUgc2VwYXJhdG9yXG4gICBpdHNlbGYsIGFuZCB0aGUgcGFydCBhZnRlciB0aGUgc2VwYXJhdG9yLiAgSWYgdGhlIHNlcGFyYXRvciBpcyBub3RcbiAgIGZvdW5kLCByZXR1cm4gYSAzLXR1cGxlIGNvbnRhaW5pbmcgdHdvIGVtcHR5IHN0cmluZ3MsIGZvbGxvd2VkIGJ5XG4gICB0aGUgc3RyaW5nIGl0c2VsZi5cblxuc3RyLnJzcGxpdChbc2VwWywgbWF4c3BsaXRdXSlcblxuICAgUmV0dXJuIGEgbGlzdCBvZiB0aGUgd29yZHMgaW4gdGhlIHN0cmluZywgdXNpbmcgKnNlcCogYXMgdGhlXG4gICBkZWxpbWl0ZXIgc3RyaW5nLiBJZiAqbWF4c3BsaXQqIGlzIGdpdmVuLCBhdCBtb3N0ICptYXhzcGxpdCogc3BsaXRzXG4gICBhcmUgZG9uZSwgdGhlICpyaWdodG1vc3QqIG9uZXMuICBJZiAqc2VwKiBpcyBub3Qgc3BlY2lmaWVkIG9yXG4gICBgYE5vbmVgYCwgYW55IHdoaXRlc3BhY2Ugc3RyaW5nIGlzIGEgc2VwYXJhdG9yLiAgRXhjZXB0IGZvclxuICAgc3BsaXR0aW5nIGZyb20gdGhlIHJpZ2h0LCBgYHJzcGxpdCgpYGAgYmVoYXZlcyBsaWtlIGBgc3BsaXQoKWBgXG4gICB3aGljaCBpcyBkZXNjcmliZWQgaW4gZGV0YWlsIGJlbG93LlxuXG5zdHIucnN0cmlwKFtjaGFyc10pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIHRyYWlsaW5nIGNoYXJhY3RlcnMgcmVtb3ZlZC4gIFRoZVxuICAgKmNoYXJzKiBhcmd1bWVudCBpcyBhIHN0cmluZyBzcGVjaWZ5aW5nIHRoZSBzZXQgb2YgY2hhcmFjdGVycyB0byBiZVxuICAgcmVtb3ZlZC4gIElmIG9taXR0ZWQgb3IgYGBOb25lYGAsIHRoZSAqY2hhcnMqIGFyZ3VtZW50IGRlZmF1bHRzIHRvXG4gICByZW1vdmluZyB3aGl0ZXNwYWNlLiAgVGhlICpjaGFycyogYXJndW1lbnQgaXMgbm90IGEgc3VmZml4OyByYXRoZXIsXG4gICBhbGwgY29tYmluYXRpb25zIG9mIGl0cyB2YWx1ZXMgYXJlIHN0cmlwcGVkOlxuXG4gICA+Pj4gXCcgICBzcGFjaW91cyAgIFwnLnJzdHJpcCgpXG4gICBcJyAgIHNwYWNpb3VzXCdcbiAgID4+PiBcJ21pc3Npc3NpcHBpXCcucnN0cmlwKFwnaXB6XCcpXG4gICBcJ21pc3Npc3NcJ1xuXG5zdHIuc3BsaXQoW3NlcFssIG1heHNwbGl0XV0pXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIHdvcmRzIGluIHRoZSBzdHJpbmcsIHVzaW5nICpzZXAqIGFzIHRoZVxuICAgZGVsaW1pdGVyIHN0cmluZy4gIElmICptYXhzcGxpdCogaXMgZ2l2ZW4sIGF0IG1vc3QgKm1heHNwbGl0KlxuICAgc3BsaXRzIGFyZSBkb25lICh0aHVzLCB0aGUgbGlzdCB3aWxsIGhhdmUgYXQgbW9zdCBgYG1heHNwbGl0KzFgYFxuICAgZWxlbWVudHMpLiAgSWYgKm1heHNwbGl0KiBpcyBub3Qgc3BlY2lmaWVkLCB0aGVuIHRoZXJlIGlzIG5vIGxpbWl0XG4gICBvbiB0aGUgbnVtYmVyIG9mIHNwbGl0cyAoYWxsIHBvc3NpYmxlIHNwbGl0cyBhcmUgbWFkZSkuXG5cbiAgIElmICpzZXAqIGlzIGdpdmVuLCBjb25zZWN1dGl2ZSBkZWxpbWl0ZXJzIGFyZSBub3QgZ3JvdXBlZCB0b2dldGhlclxuICAgYW5kIGFyZSBkZWVtZWQgdG8gZGVsaW1pdCBlbXB0eSBzdHJpbmdzIChmb3IgZXhhbXBsZSxcbiAgIGBgXCcxLCwyXCcuc3BsaXQoXCcsXCcpYGAgcmV0dXJucyBgYFtcJzFcJywgXCdcJywgXCcyXCddYGApLiAgVGhlICpzZXAqXG4gICBhcmd1bWVudCBtYXkgY29uc2lzdCBvZiBtdWx0aXBsZSBjaGFyYWN0ZXJzIChmb3IgZXhhbXBsZSxcbiAgIGBgXCcxPD4yPD4zXCcuc3BsaXQoXCc8PlwnKWBgIHJldHVybnMgYGBbXCcxXCcsIFwnMlwnLCBcJzNcJ11gYCkuIFNwbGl0dGluZ1xuICAgYW4gZW1wdHkgc3RyaW5nIHdpdGggYSBzcGVjaWZpZWQgc2VwYXJhdG9yIHJldHVybnMgYGBbXCdcJ11gYC5cblxuICAgSWYgKnNlcCogaXMgbm90IHNwZWNpZmllZCBvciBpcyBgYE5vbmVgYCwgYSBkaWZmZXJlbnQgc3BsaXR0aW5nXG4gICBhbGdvcml0aG0gaXMgYXBwbGllZDogcnVucyBvZiBjb25zZWN1dGl2ZSB3aGl0ZXNwYWNlIGFyZSByZWdhcmRlZFxuICAgYXMgYSBzaW5nbGUgc2VwYXJhdG9yLCBhbmQgdGhlIHJlc3VsdCB3aWxsIGNvbnRhaW4gbm8gZW1wdHkgc3RyaW5nc1xuICAgYXQgdGhlIHN0YXJ0IG9yIGVuZCBpZiB0aGUgc3RyaW5nIGhhcyBsZWFkaW5nIG9yIHRyYWlsaW5nXG4gICB3aGl0ZXNwYWNlLiAgQ29uc2VxdWVudGx5LCBzcGxpdHRpbmcgYW4gZW1wdHkgc3RyaW5nIG9yIGEgc3RyaW5nXG4gICBjb25zaXN0aW5nIG9mIGp1c3Qgd2hpdGVzcGFjZSB3aXRoIGEgYGBOb25lYGAgc2VwYXJhdG9yIHJldHVybnNcbiAgIGBgW11gYC5cblxuICAgRm9yIGV4YW1wbGUsIGBgXCcgMSAgMiAgIDMgIFwnLnNwbGl0KClgYCByZXR1cm5zIGBgW1wnMVwnLCBcJzJcJywgXCczXCddYGAsXG4gICBhbmQgYGBcJyAgMSAgMiAgIDMgIFwnLnNwbGl0KE5vbmUsIDEpYGAgcmV0dXJucyBgYFtcJzFcJywgXCcyICAgMyAgXCddYGAuXG5cbnN0ci5zcGxpdGxpbmVzKFtrZWVwZW5kc10pXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIGxpbmVzIGluIHRoZSBzdHJpbmcsIGJyZWFraW5nIGF0IGxpbmVcbiAgIGJvdW5kYXJpZXMuICBMaW5lIGJyZWFrcyBhcmUgbm90IGluY2x1ZGVkIGluIHRoZSByZXN1bHRpbmcgbGlzdFxuICAgdW5sZXNzICprZWVwZW5kcyogaXMgZ2l2ZW4gYW5kIHRydWUuXG5cbnN0ci5zdGFydHN3aXRoKHByZWZpeFssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiBgYFRydWVgYCBpZiBzdHJpbmcgc3RhcnRzIHdpdGggdGhlICpwcmVmaXgqLCBvdGhlcndpc2VcbiAgIHJldHVybiBgYEZhbHNlYGAuICpwcmVmaXgqIGNhbiBhbHNvIGJlIGEgdHVwbGUgb2YgcHJlZml4ZXMgdG8gbG9va1xuICAgZm9yLiAgV2l0aCBvcHRpb25hbCAqc3RhcnQqLCB0ZXN0IHN0cmluZyBiZWdpbm5pbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uICBXaXRoIG9wdGlvbmFsICplbmQqLCBzdG9wIGNvbXBhcmluZyBzdHJpbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uXG5cbnN0ci5zdHJpcChbY2hhcnNdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB0aGUgbGVhZGluZyBhbmQgdHJhaWxpbmdcbiAgIGNoYXJhY3RlcnMgcmVtb3ZlZC4gVGhlICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGVcbiAgIHNldCBvZiBjaGFyYWN0ZXJzIHRvIGJlIHJlbW92ZWQuIElmIG9taXR0ZWQgb3IgYGBOb25lYGAsIHRoZVxuICAgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0byByZW1vdmluZyB3aGl0ZXNwYWNlLiBUaGUgKmNoYXJzKlxuICAgYXJndW1lbnQgaXMgbm90IGEgcHJlZml4IG9yIHN1ZmZpeDsgcmF0aGVyLCBhbGwgY29tYmluYXRpb25zIG9mIGl0c1xuICAgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5zdHJpcCgpXG4gICBcJ3NwYWNpb3VzXCdcbiAgID4+PiBcJ3d3dy5leGFtcGxlLmNvbVwnLnN0cmlwKFwnY21vd3ouXCcpXG4gICBcJ2V4YW1wbGVcJ1xuXG5zdHIuc3dhcGNhc2UoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB1cHBlcmNhc2UgY2hhcmFjdGVycyBjb252ZXJ0ZWQgdG9cbiAgIGxvd2VyY2FzZSBhbmQgdmljZSB2ZXJzYS5cblxuc3RyLnRpdGxlKClcblxuICAgUmV0dXJuIGEgdGl0bGVjYXNlZCB2ZXJzaW9uIG9mIHRoZSBzdHJpbmcgd2hlcmUgd29yZHMgc3RhcnQgd2l0aCBhblxuICAgdXBwZXJjYXNlIGNoYXJhY3RlciBhbmQgdGhlIHJlbWFpbmluZyBjaGFyYWN0ZXJzIGFyZSBsb3dlcmNhc2UuXG5cbiAgIFRoZSBhbGdvcml0aG0gdXNlcyBhIHNpbXBsZSBsYW5ndWFnZS1pbmRlcGVuZGVudCBkZWZpbml0aW9uIG9mIGFcbiAgIHdvcmQgYXMgZ3JvdXBzIG9mIGNvbnNlY3V0aXZlIGxldHRlcnMuICBUaGUgZGVmaW5pdGlvbiB3b3JrcyBpblxuICAgbWFueSBjb250ZXh0cyBidXQgaXQgbWVhbnMgdGhhdCBhcG9zdHJvcGhlcyBpbiBjb250cmFjdGlvbnMgYW5kXG4gICBwb3NzZXNzaXZlcyBmb3JtIHdvcmQgYm91bmRhcmllcywgd2hpY2ggbWF5IG5vdCBiZSB0aGUgZGVzaXJlZFxuICAgcmVzdWx0OlxuXG4gICAgICA+Pj4gInRoZXlcJ3JlIGJpbGxcJ3MgZnJpZW5kcyBmcm9tIHRoZSBVSyIudGl0bGUoKVxuICAgICAgIlRoZXlcJ1JlIEJpbGxcJ1MgRnJpZW5kcyBGcm9tIFRoZSBVayJcblxuICAgQSB3b3JrYXJvdW5kIGZvciBhcG9zdHJvcGhlcyBjYW4gYmUgY29uc3RydWN0ZWQgdXNpbmcgcmVndWxhclxuICAgZXhwcmVzc2lvbnM6XG5cbiAgICAgID4+PiBpbXBvcnQgcmVcbiAgICAgID4+PiBkZWYgdGl0bGVjYXNlKHMpOlxuICAgICAgICAgICAgICByZXR1cm4gcmUuc3ViKHIiW0EtWmEtel0rKFwnW0EtWmEtel0rKT8iLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhbWJkYSBtbzogbW8uZ3JvdXAoMClbMF0udXBwZXIoKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtby5ncm91cCgwKVsxOl0ubG93ZXIoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzKVxuXG4gICAgICA+Pj4gdGl0bGVjYXNlKCJ0aGV5XCdyZSBiaWxsXCdzIGZyaWVuZHMuIilcbiAgICAgICJUaGV5XCdyZSBCaWxsXCdzIEZyaWVuZHMuIlxuXG5zdHIudHJhbnNsYXRlKG1hcClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgKnMqIHdoZXJlIGFsbCBjaGFyYWN0ZXJzIGhhdmUgYmVlbiBtYXBwZWRcbiAgIHRocm91Z2ggdGhlICptYXAqIHdoaWNoIG11c3QgYmUgYSBkaWN0aW9uYXJ5IG9mIFVuaWNvZGUgb3JkaW5hbHNcbiAgIChpbnRlZ2VycykgdG8gVW5pY29kZSBvcmRpbmFscywgc3RyaW5ncyBvciBgYE5vbmVgYC4gIFVubWFwcGVkXG4gICBjaGFyYWN0ZXJzIGFyZSBsZWZ0IHVudG91Y2hlZC4gQ2hhcmFjdGVycyBtYXBwZWQgdG8gYGBOb25lYGAgYXJlXG4gICBkZWxldGVkLlxuXG4gICBZb3UgY2FuIHVzZSBgYHN0ci5tYWtldHJhbnMoKWBgIHRvIGNyZWF0ZSBhIHRyYW5zbGF0aW9uIG1hcCBmcm9tXG4gICBjaGFyYWN0ZXItdG8tY2hhcmFjdGVyIG1hcHBpbmdzIGluIGRpZmZlcmVudCBmb3JtYXRzLlxuXG4gICBOb3RlOiBBbiBldmVuIG1vcmUgZmxleGlibGUgYXBwcm9hY2ggaXMgdG8gY3JlYXRlIGEgY3VzdG9tIGNoYXJhY3RlclxuICAgICBtYXBwaW5nIGNvZGVjIHVzaW5nIHRoZSBgYGNvZGVjc2BgIG1vZHVsZSAoc2VlXG4gICAgIGBgZW5jb2RpbmdzLmNwMTI1MWBgIGZvciBhbiBleGFtcGxlKS5cblxuc3RyLnVwcGVyKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIGNvbnZlcnRlZCB0byB1cHBlcmNhc2UuXG5cbnN0ci56ZmlsbCh3aWR0aClcblxuICAgUmV0dXJuIHRoZSBudW1lcmljIHN0cmluZyBsZWZ0IGZpbGxlZCB3aXRoIHplcm9zIGluIGEgc3RyaW5nIG9mXG4gICBsZW5ndGggKndpZHRoKi4gIEEgc2lnbiBwcmVmaXggaXMgaGFuZGxlZCBjb3JyZWN0bHkuICBUaGUgb3JpZ2luYWxcbiAgIHN0cmluZyBpcyByZXR1cm5lZCBpZiAqd2lkdGgqIGlzIGxlc3MgdGhhbiBgYGxlbihzKWBgLlxuJywKKyAnc3RyaW5nLW1ldGhvZHMnOiAnXG5TdHJpbmcgTWV0aG9kc1xuKioqKioqKioqKioqKipcblxuU3RyaW5nIG9iamVjdHMgc3VwcG9ydCB0aGUgbWV0aG9kcyBsaXN0ZWQgYmVsb3cuXG5cbkluIGFkZGl0aW9uLCBQeXRob25cJ3Mgc3RyaW5ncyBzdXBwb3J0IHRoZSBzZXF1ZW5jZSB0eXBlIG1ldGhvZHNcbmRlc2NyaWJlZCBpbiB0aGUgKlNlcXVlbmNlIFR5cGVzIC0tLSBzdHIsIGJ5dGVzLCBieXRlYXJyYXksIGxpc3QsXG50dXBsZSwgcmFuZ2UqIHNlY3Rpb24uIFRvIG91dHB1dCBmb3JtYXR0ZWQgc3RyaW5ncywgc2VlIHRoZSAqU3RyaW5nXG5Gb3JtYXR0aW5nKiBzZWN0aW9uLiBBbHNvLCBzZWUgdGhlIGBgcmVgYCBtb2R1bGUgZm9yIHN0cmluZyBmdW5jdGlvbnNcbmJhc2VkIG9uIHJlZ3VsYXIgZXhwcmVzc2lvbnMuXG5cbnN0ci5jYXBpdGFsaXplKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggaXRzIGZpcnN0IGNoYXJhY3RlciBjYXBpdGFsaXplZFxuICAgYW5kIHRoZSByZXN0IGxvd2VyY2FzZWQuXG5cbnN0ci5jZW50ZXIod2lkdGhbLCBmaWxsY2hhcl0pXG5cbiAgIFJldHVybiBjZW50ZXJlZCBpbiBhIHN0cmluZyBvZiBsZW5ndGggKndpZHRoKi4gUGFkZGluZyBpcyBkb25lXG4gICB1c2luZyB0aGUgc3BlY2lmaWVkICpmaWxsY2hhciogKGRlZmF1bHQgaXMgYSBzcGFjZSkuXG5cbnN0ci5jb3VudChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gdGhlIG51bWJlciBvZiBub24tb3ZlcmxhcHBpbmcgb2NjdXJyZW5jZXMgb2Ygc3Vic3RyaW5nICpzdWIqXG4gICBpbiB0aGUgcmFuZ2UgWypzdGFydCosICplbmQqXS4gIE9wdGlvbmFsIGFyZ3VtZW50cyAqc3RhcnQqIGFuZFxuICAgKmVuZCogYXJlIGludGVycHJldGVkIGFzIGluIHNsaWNlIG5vdGF0aW9uLlxuXG5zdHIuZW5jb2RlKGVuY29kaW5nPSJ1dGYtOCIsIGVycm9ycz0ic3RyaWN0IilcblxuICAgUmV0dXJuIGFuIGVuY29kZWQgdmVyc2lvbiBvZiB0aGUgc3RyaW5nIGFzIGEgYnl0ZXMgb2JqZWN0LiBEZWZhdWx0XG4gICBlbmNvZGluZyBpcyBgYFwndXRmLThcJ2BgLiAqZXJyb3JzKiBtYXkgYmUgZ2l2ZW4gdG8gc2V0IGEgZGlmZmVyZW50XG4gICBlcnJvciBoYW5kbGluZyBzY2hlbWUuIFRoZSBkZWZhdWx0IGZvciAqZXJyb3JzKiBpcyBgYFwnc3RyaWN0XCdgYCxcbiAgIG1lYW5pbmcgdGhhdCBlbmNvZGluZyBlcnJvcnMgcmFpc2UgYSBgYFVuaWNvZGVFcnJvcmBgLiBPdGhlclxuICAgcG9zc2libGUgdmFsdWVzIGFyZSBgYFwnaWdub3JlXCdgYCwgYGBcJ3JlcGxhY2VcJ2BgLFxuICAgYGBcJ3htbGNoYXJyZWZyZXBsYWNlXCdgYCwgYGBcJ2JhY2tzbGFzaHJlcGxhY2VcJ2BgIGFuZCBhbnkgb3RoZXIgbmFtZVxuICAgcmVnaXN0ZXJlZCB2aWEgYGBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoKWBgLCBzZWUgc2VjdGlvbiAqQ29kZWMgQmFzZVxuICAgQ2xhc3NlcyouIEZvciBhIGxpc3Qgb2YgcG9zc2libGUgZW5jb2RpbmdzLCBzZWUgc2VjdGlvbiAqU3RhbmRhcmRcbiAgIEVuY29kaW5ncyouXG5cbiAgIENoYW5nZWQgaW4gdmVyc2lvbiAzLjE6IFN1cHBvcnQgZm9yIGtleXdvcmQgYXJndW1lbnRzIGFkZGVkLlxuXG5zdHIuZW5kc3dpdGgoc3VmZml4Wywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIHRoZSBzdHJpbmcgZW5kcyB3aXRoIHRoZSBzcGVjaWZpZWQgKnN1ZmZpeCosXG4gICBvdGhlcndpc2UgcmV0dXJuIGBgRmFsc2VgYC4gICpzdWZmaXgqIGNhbiBhbHNvIGJlIGEgdHVwbGUgb2ZcbiAgIHN1ZmZpeGVzIHRvIGxvb2sgZm9yLiAgV2l0aCBvcHRpb25hbCAqc3RhcnQqLCB0ZXN0IGJlZ2lubmluZyBhdFxuICAgdGhhdCBwb3NpdGlvbi4gIFdpdGggb3B0aW9uYWwgKmVuZCosIHN0b3AgY29tcGFyaW5nIGF0IHRoYXRcbiAgIHBvc2l0aW9uLlxuXG5zdHIuZXhwYW5kdGFicyhbdGFic2l6ZV0pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aGVyZSBhbGwgdGFiIGNoYXJhY3RlcnMgYXJlIHJlcGxhY2VkXG4gICBieSBvbmUgb3IgbW9yZSBzcGFjZXMsIGRlcGVuZGluZyBvbiB0aGUgY3VycmVudCBjb2x1bW4gYW5kIHRoZVxuICAgZ2l2ZW4gdGFiIHNpemUuICBUaGUgY29sdW1uIG51bWJlciBpcyByZXNldCB0byB6ZXJvIGFmdGVyIGVhY2hcbiAgIG5ld2xpbmUgb2NjdXJyaW5nIGluIHRoZSBzdHJpbmcuIElmICp0YWJzaXplKiBpcyBub3QgZ2l2ZW4sIGEgdGFiXG4gICBzaXplIG9mIGBgOGBgIGNoYXJhY3RlcnMgaXMgYXNzdW1lZC4gIFRoaXMgZG9lc25cJ3QgdW5kZXJzdGFuZCBvdGhlclxuICAgbm9uLXByaW50aW5nIGNoYXJhY3RlcnMgb3IgZXNjYXBlIHNlcXVlbmNlcy5cblxuc3RyLmZpbmQoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIHRoZSBsb3dlc3QgaW5kZXggaW4gdGhlIHN0cmluZyB3aGVyZSBzdWJzdHJpbmcgKnN1YiogaXNcbiAgIGZvdW5kLCBzdWNoIHRoYXQgKnN1YiogaXMgY29udGFpbmVkIGluIHRoZSBzbGljZSBgYHNbc3RhcnQ6ZW5kXWBgLlxuICAgT3B0aW9uYWwgYXJndW1lbnRzICpzdGFydCogYW5kICplbmQqIGFyZSBpbnRlcnByZXRlZCBhcyBpbiBzbGljZVxuICAgbm90YXRpb24uICBSZXR1cm4gYGAtMWBgIGlmICpzdWIqIGlzIG5vdCBmb3VuZC5cblxuc3RyLmZvcm1hdCgqYXJncywgKiprd2FyZ3MpXG5cbiAgIFBlcmZvcm0gYSBzdHJpbmcgZm9ybWF0dGluZyBvcGVyYXRpb24uICBUaGUgc3RyaW5nIG9uIHdoaWNoIHRoaXNcbiAgIG1ldGhvZCBpcyBjYWxsZWQgY2FuIGNvbnRhaW4gbGl0ZXJhbCB0ZXh0IG9yIHJlcGxhY2VtZW50IGZpZWxkc1xuICAgZGVsaW1pdGVkIGJ5IGJyYWNlcyBgYHt9YGAuICBFYWNoIHJlcGxhY2VtZW50IGZpZWxkIGNvbnRhaW5zIGVpdGhlclxuICAgdGhlIG51bWVyaWMgaW5kZXggb2YgYSBwb3NpdGlvbmFsIGFyZ3VtZW50LCBvciB0aGUgbmFtZSBvZiBhXG4gICBrZXl3b3JkIGFyZ3VtZW50LiAgUmV0dXJucyBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aGVyZSBlYWNoXG4gICByZXBsYWNlbWVudCBmaWVsZCBpcyByZXBsYWNlZCB3aXRoIHRoZSBzdHJpbmcgdmFsdWUgb2YgdGhlXG4gICBjb3JyZXNwb25kaW5nIGFyZ3VtZW50LlxuXG4gICA+Pj4gIlRoZSBzdW0gb2YgMSArIDIgaXMgezB9Ii5mb3JtYXQoMSsyKVxuICAgXCdUaGUgc3VtIG9mIDEgKyAyIGlzIDNcJ1xuXG4gICBTZWUgKkZvcm1hdCBTdHJpbmcgU3ludGF4KiBmb3IgYSBkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaW91c1xuICAgZm9ybWF0dGluZyBvcHRpb25zIHRoYXQgY2FuIGJlIHNwZWNpZmllZCBpbiBmb3JtYXQgc3RyaW5ncy5cblxuc3RyLmZvcm1hdF9tYXAobWFwcGluZylcblxuICAgU2ltaWxhciB0byBgYHN0ci5mb3JtYXQoKiptYXBwaW5nKWBgLCBleGNlcHQgdGhhdCBgYG1hcHBpbmdgYCBpc1xuICAgdXNlZCBkaXJlY3RseSBhbmQgbm90IGNvcGllZCB0byBhIGBgZGljdGBgIC4gIFRoaXMgaXMgdXNlZnVsIGlmIGZvclxuICAgZXhhbXBsZSBgYG1hcHBpbmdgYCBpcyBhIGRpY3Qgc3ViY2xhc3M6XG5cbiAgID4+PiBjbGFzcyBEZWZhdWx0KGRpY3QpOlxuICAgLi4uICAgICBkZWYgX19taXNzaW5nX18oc2VsZiwga2V5KTpcbiAgIC4uLiAgICAgICAgIHJldHVybiBrZXlcbiAgIC4uLlxuICAgPj4+IFwne25hbWV9IHdhcyBib3JuIGluIHtjb3VudHJ5fVwnLmZvcm1hdF9tYXAoRGVmYXVsdChuYW1lPVwnR3VpZG9cJykpXG4gICBcJ0d1aWRvIHdhcyBib3JuIGluIGNvdW50cnlcJ1xuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjIuXG5cbnN0ci5pbmRleChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBMaWtlIGBgZmluZCgpYGAsIGJ1dCByYWlzZSBgYFZhbHVlRXJyb3JgYCB3aGVuIHRoZSBzdWJzdHJpbmcgaXMgbm90XG4gICBmb3VuZC5cblxuc3RyLmlzYWxudW0oKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBhbHBoYW51bWVyaWMgYW5kXG4gICB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBBIGNoYXJhY3RlclxuICAgYGBjYGAgaXMgYWxwaGFudW1lcmljIGlmIG9uZSBvZiB0aGUgZm9sbG93aW5nIHJldHVybnMgYGBUcnVlYGA6XG4gICBgYGMuaXNhbHBoYSgpYGAsIGBgYy5pc2RlY2ltYWwoKWBgLCBgYGMuaXNkaWdpdCgpYGAsIG9yXG4gICBgYGMuaXNudW1lcmljKClgYC5cblxuc3RyLmlzYWxwaGEoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBhbHBoYWJldGljIGFuZFxuICAgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgQWxwaGFiZXRpY1xuICAgY2hhcmFjdGVycyBhcmUgdGhvc2UgY2hhcmFjdGVycyBkZWZpbmVkIGluIHRoZSBVbmljb2RlIGNoYXJhY3RlclxuICAgZGF0YWJhc2UgYXMgIkxldHRlciIsIGkuZS4sIHRob3NlIHdpdGggZ2VuZXJhbCBjYXRlZ29yeSBwcm9wZXJ0eVxuICAgYmVpbmcgb25lIG9mICJMbSIsICJMdCIsICJMdSIsICJMbCIsIG9yICJMbyIuICBOb3RlIHRoYXQgdGhpcyBpc1xuICAgZGlmZmVyZW50IGZyb20gdGhlICJBbHBoYWJldGljIiBwcm9wZXJ0eSBkZWZpbmVkIGluIHRoZSBVbmljb2RlXG4gICBTdGFuZGFyZC5cblxuc3RyLmlzZGVjaW1hbCgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGRlY2ltYWwgY2hhcmFjdGVyc1xuICAgYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gRGVjaW1hbFxuICAgY2hhcmFjdGVycyBhcmUgdGhvc2UgZnJvbSBnZW5lcmFsIGNhdGVnb3J5ICJOZCIuIFRoaXMgY2F0ZWdvcnlcbiAgIGluY2x1ZGVzIGRpZ2l0IGNoYXJhY3RlcnMsIGFuZCBhbGwgY2hhcmFjdGVycyB0aGF0IHRoYXQgY2FuIGJlIHVzZWRcbiAgIHRvIGZvcm0gZGVjaW1hbC1yYWRpeCBudW1iZXJzLCBlLmcuIFUrMDY2MCwgQVJBQklDLUlORElDIERJR0lUXG4gICBaRVJPLlxuXG5zdHIuaXNkaWdpdCgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGRpZ2l0cyBhbmQgdGhlcmUgaXNcbiAgIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIERpZ2l0cyBpbmNsdWRlIGRlY2ltYWxcbiAgIGNoYXJhY3RlcnMgYW5kIGRpZ2l0cyB0aGF0IG5lZWQgc3BlY2lhbCBoYW5kbGluZywgc3VjaCBhcyB0aGVcbiAgIGNvbXBhdGliaWxpdHkgc3VwZXJzY3JpcHQgZGlnaXRzLiAgRm9ybWFsbHksIGEgZGlnaXQgaXMgYSBjaGFyYWN0ZXJcbiAgIHRoYXQgaGFzIHRoZSBwcm9wZXJ0eSB2YWx1ZSBOdW1lcmljX1R5cGU9RGlnaXQgb3JcbiAgIE51bWVyaWNfVHlwZT1EZWNpbWFsLlxuXG5zdHIuaXNpZGVudGlmaWVyKClcblxuICAgUmV0dXJuIHRydWUgaWYgdGhlIHN0cmluZyBpcyBhIHZhbGlkIGlkZW50aWZpZXIgYWNjb3JkaW5nIHRvIHRoZVxuICAgbGFuZ3VhZ2UgZGVmaW5pdGlvbiwgc2VjdGlvbiAqSWRlbnRpZmllcnMgYW5kIGtleXdvcmRzKi5cblxuc3RyLmlzbG93ZXIoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2FzZWQgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBsb3dlcmNhc2UgYW5kXG4gICB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBDYXNlZFxuICAgY2hhcmFjdGVycyBhcmUgdGhvc2Ugd2l0aCBnZW5lcmFsIGNhdGVnb3J5IHByb3BlcnR5IGJlaW5nIG9uZSBvZlxuICAgIkx1IiwgIkxsIiwgb3IgIkx0IiBhbmQgbG93ZXJjYXNlIGNoYXJhY3RlcnMgYXJlIHRob3NlIHdpdGggZ2VuZXJhbFxuICAgY2F0ZWdvcnkgcHJvcGVydHkgIkxsIi5cblxuc3RyLmlzbnVtZXJpYygpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIG51bWVyaWMgY2hhcmFjdGVycyxcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuIE51bWVyaWNcbiAgIGNoYXJhY3RlcnMgaW5jbHVkZSBkaWdpdCBjaGFyYWN0ZXJzLCBhbmQgYWxsIGNoYXJhY3RlcnMgdGhhdCBoYXZlXG4gICB0aGUgVW5pY29kZSBudW1lcmljIHZhbHVlIHByb3BlcnR5LCBlLmcuIFUrMjE1NSwgVlVMR0FSIEZSQUNUSU9OXG4gICBPTkUgRklGVEguICBGb3JtYWxseSwgbnVtZXJpYyBjaGFyYWN0ZXJzIGFyZSB0aG9zZSB3aXRoIHRoZVxuICAgcHJvcGVydHkgdmFsdWUgTnVtZXJpY19UeXBlPURpZ2l0LCBOdW1lcmljX1R5cGU9RGVjaW1hbCBvclxuICAgTnVtZXJpY19UeXBlPU51bWVyaWMuXG5cbnN0ci5pc3ByaW50YWJsZSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIHByaW50YWJsZSBvciB0aGVcbiAgIHN0cmluZyBpcyBlbXB0eSwgZmFsc2Ugb3RoZXJ3aXNlLiAgTm9ucHJpbnRhYmxlIGNoYXJhY3RlcnMgYXJlXG4gICB0aG9zZSBjaGFyYWN0ZXJzIGRlZmluZWQgaW4gdGhlIFVuaWNvZGUgY2hhcmFjdGVyIGRhdGFiYXNlIGFzXG4gICAiT3RoZXIiIG9yICJTZXBhcmF0b3IiLCBleGNlcHRpbmcgdGhlIEFTQ0lJIHNwYWNlICgweDIwKSB3aGljaCBpc1xuICAgY29uc2lkZXJlZCBwcmludGFibGUuICAoTm90ZSB0aGF0IHByaW50YWJsZSBjaGFyYWN0ZXJzIGluIHRoaXNcbiAgIGNvbnRleHQgYXJlIHRob3NlIHdoaWNoIHNob3VsZCBub3QgYmUgZXNjYXBlZCB3aGVuIGBgcmVwcigpYGAgaXNcbiAgIGludm9rZWQgb24gYSBzdHJpbmcuICBJdCBoYXMgbm8gYmVhcmluZyBvbiB0aGUgaGFuZGxpbmcgb2Ygc3RyaW5nc1xuICAgd3JpdHRlbiB0byBgYHN5cy5zdGRvdXRgYCBvciBgYHN5cy5zdGRlcnJgYC4pXG5cbnN0ci5pc3NwYWNlKClcblxuICAgUmV0dXJuIHRydWUgaWYgdGhlcmUgYXJlIG9ubHkgd2hpdGVzcGFjZSBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmdcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBXaGl0ZXNwYWNlXG4gICBjaGFyYWN0ZXJzICBhcmUgdGhvc2UgY2hhcmFjdGVycyBkZWZpbmVkIGluIHRoZSBVbmljb2RlIGNoYXJhY3RlclxuICAgZGF0YWJhc2UgYXMgIk90aGVyIiBvciAiU2VwYXJhdG9yIiBhbmQgdGhvc2Ugd2l0aCBiaWRpcmVjdGlvbmFsXG4gICBwcm9wZXJ0eSBiZWluZyBvbmUgb2YgIldTIiwgIkIiLCBvciAiUyIuXG5cbnN0ci5pc3RpdGxlKClcblxuICAgUmV0dXJuIHRydWUgaWYgdGhlIHN0cmluZyBpcyBhIHRpdGxlY2FzZWQgc3RyaW5nIGFuZCB0aGVyZSBpcyBhdFxuICAgbGVhc3Qgb25lIGNoYXJhY3RlciwgZm9yIGV4YW1wbGUgdXBwZXJjYXNlIGNoYXJhY3RlcnMgbWF5IG9ubHlcbiAgIGZvbGxvdyB1bmNhc2VkIGNoYXJhY3RlcnMgYW5kIGxvd2VyY2FzZSBjaGFyYWN0ZXJzIG9ubHkgY2FzZWQgb25lcy5cbiAgIFJldHVybiBmYWxzZSBvdGhlcndpc2UuXG5cbnN0ci5pc3VwcGVyKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNhc2VkIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgdXBwZXJjYXNlIGFuZFxuICAgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNhc2VkIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiBDYXNlZFxuICAgY2hhcmFjdGVycyBhcmUgdGhvc2Ugd2l0aCBnZW5lcmFsIGNhdGVnb3J5IHByb3BlcnR5IGJlaW5nIG9uZSBvZlxuICAgIkx1IiwgIkxsIiwgb3IgIkx0IiBhbmQgdXBwZXJjYXNlIGNoYXJhY3RlcnMgYXJlIHRob3NlIHdpdGggZ2VuZXJhbFxuICAgY2F0ZWdvcnkgcHJvcGVydHkgIkx1Ii5cblxuc3RyLmpvaW4oaXRlcmFibGUpXG5cbiAgIFJldHVybiBhIHN0cmluZyB3aGljaCBpcyB0aGUgY29uY2F0ZW5hdGlvbiBvZiB0aGUgc3RyaW5ncyBpbiB0aGVcbiAgICppdGVyYWJsZSogKml0ZXJhYmxlKi4gIEEgYGBUeXBlRXJyb3JgYCB3aWxsIGJlIHJhaXNlZCBpZiB0aGVyZSBhcmVcbiAgIGFueSBub24tc3RyaW5nIHZhbHVlcyBpbiAqc2VxKiwgaW5jbHVkaW5nIGBgYnl0ZXNgYCBvYmplY3RzLiAgVGhlXG4gICBzZXBhcmF0b3IgYmV0d2VlbiBlbGVtZW50cyBpcyB0aGUgc3RyaW5nIHByb3ZpZGluZyB0aGlzIG1ldGhvZC5cblxuc3RyLmxqdXN0KHdpZHRoWywgZmlsbGNoYXJdKVxuXG4gICBSZXR1cm4gdGhlIHN0cmluZyBsZWZ0IGp1c3RpZmllZCBpbiBhIHN0cmluZyBvZiBsZW5ndGggKndpZHRoKi5cbiAgIFBhZGRpbmcgaXMgZG9uZSB1c2luZyB0aGUgc3BlY2lmaWVkICpmaWxsY2hhciogKGRlZmF1bHQgaXMgYVxuICAgc3BhY2UpLiAgVGhlIG9yaWdpbmFsIHN0cmluZyBpcyByZXR1cm5lZCBpZiAqd2lkdGgqIGlzIGxlc3MgdGhhblxuICAgYGBsZW4ocylgYC5cblxuc3RyLmxvd2VyKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIGNvbnZlcnRlZCB0byBsb3dlcmNhc2UuXG5cbnN0ci5sc3RyaXAoW2NoYXJzXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggbGVhZGluZyBjaGFyYWN0ZXJzIHJlbW92ZWQuICBUaGVcbiAgICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGUgc2V0IG9mIGNoYXJhY3RlcnMgdG8gYmVcbiAgIHJlbW92ZWQuICBJZiBvbWl0dGVkIG9yIGBgTm9uZWBgLCB0aGUgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0b1xuICAgcmVtb3Zpbmcgd2hpdGVzcGFjZS4gIFRoZSAqY2hhcnMqIGFyZ3VtZW50IGlzIG5vdCBhIHByZWZpeDsgcmF0aGVyLFxuICAgYWxsIGNvbWJpbmF0aW9ucyBvZiBpdHMgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5sc3RyaXAoKVxuICAgXCdzcGFjaW91cyAgIFwnXG4gICA+Pj4gXCd3d3cuZXhhbXBsZS5jb21cJy5sc3RyaXAoXCdjbW93ei5cJylcbiAgIFwnZXhhbXBsZS5jb21cJ1xuXG5zdGF0aWMgc3RyLm1ha2V0cmFucyh4WywgeVssIHpdXSlcblxuICAgVGhpcyBzdGF0aWMgbWV0aG9kIHJldHVybnMgYSB0cmFuc2xhdGlvbiB0YWJsZSB1c2FibGUgZm9yXG4gICBgYHN0ci50cmFuc2xhdGUoKWBgLlxuXG4gICBJZiB0aGVyZSBpcyBvbmx5IG9uZSBhcmd1bWVudCwgaXQgbXVzdCBiZSBhIGRpY3Rpb25hcnkgbWFwcGluZ1xuICAgVW5pY29kZSBvcmRpbmFscyAoaW50ZWdlcnMpIG9yIGNoYXJhY3RlcnMgKHN0cmluZ3Mgb2YgbGVuZ3RoIDEpIHRvXG4gICBVbmljb2RlIG9yZGluYWxzLCBzdHJpbmdzIChvZiBhcmJpdHJhcnkgbGVuZ3Rocykgb3IgTm9uZS5cbiAgIENoYXJhY3RlciBrZXlzIHdpbGwgdGhlbiBiZSBjb252ZXJ0ZWQgdG8gb3JkaW5hbHMuXG5cbiAgIElmIHRoZXJlIGFyZSB0d28gYXJndW1lbnRzLCB0aGV5IG11c3QgYmUgc3RyaW5ncyBvZiBlcXVhbCBsZW5ndGgsXG4gICBhbmQgaW4gdGhlIHJlc3VsdGluZyBkaWN0aW9uYXJ5LCBlYWNoIGNoYXJhY3RlciBpbiB4IHdpbGwgYmUgbWFwcGVkXG4gICB0byB0aGUgY2hhcmFjdGVyIGF0IHRoZSBzYW1lIHBvc2l0aW9uIGluIHkuICBJZiB0aGVyZSBpcyBhIHRoaXJkXG4gICBhcmd1bWVudCwgaXQgbXVzdCBiZSBhIHN0cmluZywgd2hvc2UgY2hhcmFjdGVycyB3aWxsIGJlIG1hcHBlZCB0b1xuICAgTm9uZSBpbiB0aGUgcmVzdWx0LlxuXG5zdHIucGFydGl0aW9uKHNlcClcblxuICAgU3BsaXQgdGhlIHN0cmluZyBhdCB0aGUgZmlyc3Qgb2NjdXJyZW5jZSBvZiAqc2VwKiwgYW5kIHJldHVybiBhXG4gICAzLXR1cGxlIGNvbnRhaW5pbmcgdGhlIHBhcnQgYmVmb3JlIHRoZSBzZXBhcmF0b3IsIHRoZSBzZXBhcmF0b3JcbiAgIGl0c2VsZiwgYW5kIHRoZSBwYXJ0IGFmdGVyIHRoZSBzZXBhcmF0b3IuICBJZiB0aGUgc2VwYXJhdG9yIGlzIG5vdFxuICAgZm91bmQsIHJldHVybiBhIDMtdHVwbGUgY29udGFpbmluZyB0aGUgc3RyaW5nIGl0c2VsZiwgZm9sbG93ZWQgYnlcbiAgIHR3byBlbXB0eSBzdHJpbmdzLlxuXG5zdHIucmVwbGFjZShvbGQsIG5ld1ssIGNvdW50XSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggYWxsIG9jY3VycmVuY2VzIG9mIHN1YnN0cmluZyAqb2xkKlxuICAgcmVwbGFjZWQgYnkgKm5ldyouICBJZiB0aGUgb3B0aW9uYWwgYXJndW1lbnQgKmNvdW50KiBpcyBnaXZlbiwgb25seVxuICAgdGhlIGZpcnN0ICpjb3VudCogb2NjdXJyZW5jZXMgYXJlIHJlcGxhY2VkLlxuXG5zdHIucmZpbmQoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIHRoZSBoaWdoZXN0IGluZGV4IGluIHRoZSBzdHJpbmcgd2hlcmUgc3Vic3RyaW5nICpzdWIqIGlzXG4gICBmb3VuZCwgc3VjaCB0aGF0ICpzdWIqIGlzIGNvbnRhaW5lZCB3aXRoaW4gYGBzW3N0YXJ0OmVuZF1gYC5cbiAgIE9wdGlvbmFsIGFyZ3VtZW50cyAqc3RhcnQqIGFuZCAqZW5kKiBhcmUgaW50ZXJwcmV0ZWQgYXMgaW4gc2xpY2VcbiAgIG5vdGF0aW9uLiAgUmV0dXJuIGBgLTFgYCBvbiBmYWlsdXJlLlxuXG5zdHIucmluZGV4KHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIExpa2UgYGByZmluZCgpYGAgYnV0IHJhaXNlcyBgYFZhbHVlRXJyb3JgYCB3aGVuIHRoZSBzdWJzdHJpbmcgKnN1YipcbiAgIGlzIG5vdCBmb3VuZC5cblxuc3RyLnJqdXN0KHdpZHRoWywgZmlsbGNoYXJdKVxuXG4gICBSZXR1cm4gdGhlIHN0cmluZyByaWdodCBqdXN0aWZpZWQgaW4gYSBzdHJpbmcgb2YgbGVuZ3RoICp3aWR0aCouXG4gICBQYWRkaW5nIGlzIGRvbmUgdXNpbmcgdGhlIHNwZWNpZmllZCAqZmlsbGNoYXIqIChkZWZhdWx0IGlzIGFcbiAgIHNwYWNlKS4gVGhlIG9yaWdpbmFsIHN0cmluZyBpcyByZXR1cm5lZCBpZiAqd2lkdGgqIGlzIGxlc3MgdGhhblxuICAgYGBsZW4ocylgYC5cblxuc3RyLnJwYXJ0aXRpb24oc2VwKVxuXG4gICBTcGxpdCB0aGUgc3RyaW5nIGF0IHRoZSBsYXN0IG9jY3VycmVuY2Ugb2YgKnNlcCosIGFuZCByZXR1cm4gYVxuICAgMy10dXBsZSBjb250YWluaW5nIHRoZSBwYXJ0IGJlZm9yZSB0aGUgc2VwYXJhdG9yLCB0aGUgc2VwYXJhdG9yXG4gICBpdHNlbGYsIGFuZCB0aGUgcGFydCBhZnRlciB0aGUgc2VwYXJhdG9yLiAgSWYgdGhlIHNlcGFyYXRvciBpcyBub3RcbiAgIGZvdW5kLCByZXR1cm4gYSAzLXR1cGxlIGNvbnRhaW5pbmcgdHdvIGVtcHR5IHN0cmluZ3MsIGZvbGxvd2VkIGJ5XG4gICB0aGUgc3RyaW5nIGl0c2VsZi5cblxuc3RyLnJzcGxpdChbc2VwWywgbWF4c3BsaXRdXSlcblxuICAgUmV0dXJuIGEgbGlzdCBvZiB0aGUgd29yZHMgaW4gdGhlIHN0cmluZywgdXNpbmcgKnNlcCogYXMgdGhlXG4gICBkZWxpbWl0ZXIgc3RyaW5nLiBJZiAqbWF4c3BsaXQqIGlzIGdpdmVuLCBhdCBtb3N0ICptYXhzcGxpdCogc3BsaXRzXG4gICBhcmUgZG9uZSwgdGhlICpyaWdodG1vc3QqIG9uZXMuICBJZiAqc2VwKiBpcyBub3Qgc3BlY2lmaWVkIG9yXG4gICBgYE5vbmVgYCwgYW55IHdoaXRlc3BhY2Ugc3RyaW5nIGlzIGEgc2VwYXJhdG9yLiAgRXhjZXB0IGZvclxuICAgc3BsaXR0aW5nIGZyb20gdGhlIHJpZ2h0LCBgYHJzcGxpdCgpYGAgYmVoYXZlcyBsaWtlIGBgc3BsaXQoKWBgXG4gICB3aGljaCBpcyBkZXNjcmliZWQgaW4gZGV0YWlsIGJlbG93LlxuXG5zdHIucnN0cmlwKFtjaGFyc10pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIHRyYWlsaW5nIGNoYXJhY3RlcnMgcmVtb3ZlZC4gIFRoZVxuICAgKmNoYXJzKiBhcmd1bWVudCBpcyBhIHN0cmluZyBzcGVjaWZ5aW5nIHRoZSBzZXQgb2YgY2hhcmFjdGVycyB0byBiZVxuICAgcmVtb3ZlZC4gIElmIG9taXR0ZWQgb3IgYGBOb25lYGAsIHRoZSAqY2hhcnMqIGFyZ3VtZW50IGRlZmF1bHRzIHRvXG4gICByZW1vdmluZyB3aGl0ZXNwYWNlLiAgVGhlICpjaGFycyogYXJndW1lbnQgaXMgbm90IGEgc3VmZml4OyByYXRoZXIsXG4gICBhbGwgY29tYmluYXRpb25zIG9mIGl0cyB2YWx1ZXMgYXJlIHN0cmlwcGVkOlxuXG4gICA+Pj4gXCcgICBzcGFjaW91cyAgIFwnLnJzdHJpcCgpXG4gICBcJyAgIHNwYWNpb3VzXCdcbiAgID4+PiBcJ21pc3Npc3NpcHBpXCcucnN0cmlwKFwnaXB6XCcpXG4gICBcJ21pc3Npc3NcJ1xuXG5zdHIuc3BsaXQoW3NlcFssIG1heHNwbGl0XV0pXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIHdvcmRzIGluIHRoZSBzdHJpbmcsIHVzaW5nICpzZXAqIGFzIHRoZVxuICAgZGVsaW1pdGVyIHN0cmluZy4gIElmICptYXhzcGxpdCogaXMgZ2l2ZW4sIGF0IG1vc3QgKm1heHNwbGl0KlxuICAgc3BsaXRzIGFyZSBkb25lICh0aHVzLCB0aGUgbGlzdCB3aWxsIGhhdmUgYXQgbW9zdCBgYG1heHNwbGl0KzFgYFxuICAgZWxlbWVudHMpLiAgSWYgKm1heHNwbGl0KiBpcyBub3Qgc3BlY2lmaWVkLCB0aGVuIHRoZXJlIGlzIG5vIGxpbWl0XG4gICBvbiB0aGUgbnVtYmVyIG9mIHNwbGl0cyAoYWxsIHBvc3NpYmxlIHNwbGl0cyBhcmUgbWFkZSkuXG5cbiAgIElmICpzZXAqIGlzIGdpdmVuLCBjb25zZWN1dGl2ZSBkZWxpbWl0ZXJzIGFyZSBub3QgZ3JvdXBlZCB0b2dldGhlclxuICAgYW5kIGFyZSBkZWVtZWQgdG8gZGVsaW1pdCBlbXB0eSBzdHJpbmdzIChmb3IgZXhhbXBsZSxcbiAgIGBgXCcxLCwyXCcuc3BsaXQoXCcsXCcpYGAgcmV0dXJucyBgYFtcJzFcJywgXCdcJywgXCcyXCddYGApLiAgVGhlICpzZXAqXG4gICBhcmd1bWVudCBtYXkgY29uc2lzdCBvZiBtdWx0aXBsZSBjaGFyYWN0ZXJzIChmb3IgZXhhbXBsZSxcbiAgIGBgXCcxPD4yPD4zXCcuc3BsaXQoXCc8PlwnKWBgIHJldHVybnMgYGBbXCcxXCcsIFwnMlwnLCBcJzNcJ11gYCkuIFNwbGl0dGluZ1xuICAgYW4gZW1wdHkgc3RyaW5nIHdpdGggYSBzcGVjaWZpZWQgc2VwYXJhdG9yIHJldHVybnMgYGBbXCdcJ11gYC5cblxuICAgSWYgKnNlcCogaXMgbm90IHNwZWNpZmllZCBvciBpcyBgYE5vbmVgYCwgYSBkaWZmZXJlbnQgc3BsaXR0aW5nXG4gICBhbGdvcml0aG0gaXMgYXBwbGllZDogcnVucyBvZiBjb25zZWN1dGl2ZSB3aGl0ZXNwYWNlIGFyZSByZWdhcmRlZFxuICAgYXMgYSBzaW5nbGUgc2VwYXJhdG9yLCBhbmQgdGhlIHJlc3VsdCB3aWxsIGNvbnRhaW4gbm8gZW1wdHkgc3RyaW5nc1xuICAgYXQgdGhlIHN0YXJ0IG9yIGVuZCBpZiB0aGUgc3RyaW5nIGhhcyBsZWFkaW5nIG9yIHRyYWlsaW5nXG4gICB3aGl0ZXNwYWNlLiAgQ29uc2VxdWVudGx5LCBzcGxpdHRpbmcgYW4gZW1wdHkgc3RyaW5nIG9yIGEgc3RyaW5nXG4gICBjb25zaXN0aW5nIG9mIGp1c3Qgd2hpdGVzcGFjZSB3aXRoIGEgYGBOb25lYGAgc2VwYXJhdG9yIHJldHVybnNcbiAgIGBgW11gYC5cblxuICAgRm9yIGV4YW1wbGUsIGBgXCcgMSAgMiAgIDMgIFwnLnNwbGl0KClgYCByZXR1cm5zIGBgW1wnMVwnLCBcJzJcJywgXCczXCddYGAsXG4gICBhbmQgYGBcJyAgMSAgMiAgIDMgIFwnLnNwbGl0KE5vbmUsIDEpYGAgcmV0dXJucyBgYFtcJzFcJywgXCcyICAgMyAgXCddYGAuXG5cbnN0ci5zcGxpdGxpbmVzKFtrZWVwZW5kc10pXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIGxpbmVzIGluIHRoZSBzdHJpbmcsIGJyZWFraW5nIGF0IGxpbmVcbiAgIGJvdW5kYXJpZXMuICBMaW5lIGJyZWFrcyBhcmUgbm90IGluY2x1ZGVkIGluIHRoZSByZXN1bHRpbmcgbGlzdFxuICAgdW5sZXNzICprZWVwZW5kcyogaXMgZ2l2ZW4gYW5kIHRydWUuXG5cbnN0ci5zdGFydHN3aXRoKHByZWZpeFssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiBgYFRydWVgYCBpZiBzdHJpbmcgc3RhcnRzIHdpdGggdGhlICpwcmVmaXgqLCBvdGhlcndpc2VcbiAgIHJldHVybiBgYEZhbHNlYGAuICpwcmVmaXgqIGNhbiBhbHNvIGJlIGEgdHVwbGUgb2YgcHJlZml4ZXMgdG8gbG9va1xuICAgZm9yLiAgV2l0aCBvcHRpb25hbCAqc3RhcnQqLCB0ZXN0IHN0cmluZyBiZWdpbm5pbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uICBXaXRoIG9wdGlvbmFsICplbmQqLCBzdG9wIGNvbXBhcmluZyBzdHJpbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uXG5cbnN0ci5zdHJpcChbY2hhcnNdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB0aGUgbGVhZGluZyBhbmQgdHJhaWxpbmdcbiAgIGNoYXJhY3RlcnMgcmVtb3ZlZC4gVGhlICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGVcbiAgIHNldCBvZiBjaGFyYWN0ZXJzIHRvIGJlIHJlbW92ZWQuIElmIG9taXR0ZWQgb3IgYGBOb25lYGAsIHRoZVxuICAgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0byByZW1vdmluZyB3aGl0ZXNwYWNlLiBUaGUgKmNoYXJzKlxuICAgYXJndW1lbnQgaXMgbm90IGEgcHJlZml4IG9yIHN1ZmZpeDsgcmF0aGVyLCBhbGwgY29tYmluYXRpb25zIG9mIGl0c1xuICAgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5zdHJpcCgpXG4gICBcJ3NwYWNpb3VzXCdcbiAgID4+PiBcJ3d3dy5leGFtcGxlLmNvbVwnLnN0cmlwKFwnY21vd3ouXCcpXG4gICBcJ2V4YW1wbGVcJ1xuXG5zdHIuc3dhcGNhc2UoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB1cHBlcmNhc2UgY2hhcmFjdGVycyBjb252ZXJ0ZWQgdG9cbiAgIGxvd2VyY2FzZSBhbmQgdmljZSB2ZXJzYS5cblxuc3RyLnRpdGxlKClcblxuICAgUmV0dXJuIGEgdGl0bGVjYXNlZCB2ZXJzaW9uIG9mIHRoZSBzdHJpbmcgd2hlcmUgd29yZHMgc3RhcnQgd2l0aCBhblxuICAgdXBwZXJjYXNlIGNoYXJhY3RlciBhbmQgdGhlIHJlbWFpbmluZyBjaGFyYWN0ZXJzIGFyZSBsb3dlcmNhc2UuXG5cbiAgIFRoZSBhbGdvcml0aG0gdXNlcyBhIHNpbXBsZSBsYW5ndWFnZS1pbmRlcGVuZGVudCBkZWZpbml0aW9uIG9mIGFcbiAgIHdvcmQgYXMgZ3JvdXBzIG9mIGNvbnNlY3V0aXZlIGxldHRlcnMuICBUaGUgZGVmaW5pdGlvbiB3b3JrcyBpblxuICAgbWFueSBjb250ZXh0cyBidXQgaXQgbWVhbnMgdGhhdCBhcG9zdHJvcGhlcyBpbiBjb250cmFjdGlvbnMgYW5kXG4gICBwb3NzZXNzaXZlcyBmb3JtIHdvcmQgYm91bmRhcmllcywgd2hpY2ggbWF5IG5vdCBiZSB0aGUgZGVzaXJlZFxuICAgcmVzdWx0OlxuXG4gICAgICA+Pj4gInRoZXlcJ3JlIGJpbGxcJ3MgZnJpZW5kcyBmcm9tIHRoZSBVSyIudGl0bGUoKVxuICAgICAgIlRoZXlcJ1JlIEJpbGxcJ1MgRnJpZW5kcyBGcm9tIFRoZSBVayJcblxuICAgQSB3b3JrYXJvdW5kIGZvciBhcG9zdHJvcGhlcyBjYW4gYmUgY29uc3RydWN0ZWQgdXNpbmcgcmVndWxhclxuICAgZXhwcmVzc2lvbnM6XG5cbiAgICAgID4+PiBpbXBvcnQgcmVcbiAgICAgID4+PiBkZWYgdGl0bGVjYXNlKHMpOlxuICAgICAgICAgICAgICByZXR1cm4gcmUuc3ViKHIiW0EtWmEtel0rKFwnW0EtWmEtel0rKT8iLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhbWJkYSBtbzogbW8uZ3JvdXAoMClbMF0udXBwZXIoKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtby5ncm91cCgwKVsxOl0ubG93ZXIoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzKVxuXG4gICAgICA+Pj4gdGl0bGVjYXNlKCJ0aGV5XCdyZSBiaWxsXCdzIGZyaWVuZHMuIilcbiAgICAgICJUaGV5XCdyZSBCaWxsXCdzIEZyaWVuZHMuIlxuXG5zdHIudHJhbnNsYXRlKG1hcClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgKnMqIHdoZXJlIGFsbCBjaGFyYWN0ZXJzIGhhdmUgYmVlbiBtYXBwZWRcbiAgIHRocm91Z2ggdGhlICptYXAqIHdoaWNoIG11c3QgYmUgYSBkaWN0aW9uYXJ5IG9mIFVuaWNvZGUgb3JkaW5hbHNcbiAgIChpbnRlZ2VycykgdG8gVW5pY29kZSBvcmRpbmFscywgc3RyaW5ncyBvciBgYE5vbmVgYC4gIFVubWFwcGVkXG4gICBjaGFyYWN0ZXJzIGFyZSBsZWZ0IHVudG91Y2hlZC4gQ2hhcmFjdGVycyBtYXBwZWQgdG8gYGBOb25lYGAgYXJlXG4gICBkZWxldGVkLlxuXG4gICBZb3UgY2FuIHVzZSBgYHN0ci5tYWtldHJhbnMoKWBgIHRvIGNyZWF0ZSBhIHRyYW5zbGF0aW9uIG1hcCBmcm9tXG4gICBjaGFyYWN0ZXItdG8tY2hhcmFjdGVyIG1hcHBpbmdzIGluIGRpZmZlcmVudCBmb3JtYXRzLlxuXG4gICBOb3RlOiBBbiBldmVuIG1vcmUgZmxleGlibGUgYXBwcm9hY2ggaXMgdG8gY3JlYXRlIGEgY3VzdG9tIGNoYXJhY3RlclxuICAgICBtYXBwaW5nIGNvZGVjIHVzaW5nIHRoZSBgYGNvZGVjc2BgIG1vZHVsZSAoc2VlXG4gICAgIGBgZW5jb2RpbmdzLmNwMTI1MWBgIGZvciBhbiBleGFtcGxlKS5cblxuc3RyLnVwcGVyKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIGNvbnZlcnRlZCB0byB1cHBlcmNhc2UuXG5cbnN0ci56ZmlsbCh3aWR0aClcblxuICAgUmV0dXJuIHRoZSBudW1lcmljIHN0cmluZyBsZWZ0IGZpbGxlZCB3aXRoIHplcm9zIGluIGEgc3RyaW5nIG9mXG4gICBsZW5ndGggKndpZHRoKi4gIEEgc2lnbiBwcmVmaXggaXMgaGFuZGxlZCBjb3JyZWN0bHkuICBUaGUgb3JpZ2luYWxcbiAgIHN0cmluZyBpcyByZXR1cm5lZCBpZiAqd2lkdGgqIGlzIGxlc3MgdGhhbiBgYGxlbihzKWBgLlxuJywKICAnc3RyaW5ncyc6ICdcblN0cmluZyBhbmQgQnl0ZXMgbGl0ZXJhbHNcbioqKioqKioqKioqKioqKioqKioqKioqKipcblxuU3RyaW5nIGxpdGVyYWxzIGFyZSBkZXNjcmliZWQgYnkgdGhlIGZvbGxvd2luZyBsZXhpY2FsIGRlZmluaXRpb25zOlxuXG4gICBzdHJpbmdsaXRlcmFsICAgOjo9IFtzdHJpbmdwcmVmaXhdKHNob3J0c3RyaW5nIHwgbG9uZ3N0cmluZylcbiAgIHN0cmluZ3ByZWZpeCAgICA6Oj0gInIiIHwgIlIiXG4gICBzaG9ydHN0cmluZyAgICAgOjo9ICJcJyIgc2hvcnRzdHJpbmdpdGVtKiAiXCciIHwgXCciXCcgc2hvcnRzdHJpbmdpdGVtKiBcJyJcJ1xuICAgbG9uZ3N0cmluZyAgICAgIDo6PSAiXCdcJ1wnIiBsb25nc3RyaW5naXRlbSogIlwnXCdcJyIgfCBcJyIiIlwnIGxvbmdzdHJpbmdpdGVtKiBcJyIiIlwnXG4gICBzaG9ydHN0cmluZ2l0ZW0gOjo9IHNob3J0c3RyaW5nY2hhciB8IHN0cmluZ2VzY2FwZXNlcVxuICAgbG9uZ3N0cmluZ2l0ZW0gIDo6PSBsb25nc3RyaW5nY2hhciB8IHN0cmluZ2VzY2FwZXNlcVxuICAgc2hvcnRzdHJpbmdjaGFyIDo6PSA8YW55IHNvdXJjZSBjaGFyYWN0ZXIgZXhjZXB0ICJcXCIgb3IgbmV3bGluZSBvciB0aGUgcXVvdGU+XG4gICBsb25nc3RyaW5nY2hhciAgOjo9IDxhbnkgc291cmNlIGNoYXJhY3RlciBleGNlcHQgIlxcIj5cbiAgIHN0cmluZ2VzY2FwZXNlcSA6Oj0gIlxcIiA8YW55IHNvdXJjZSBjaGFyYWN0ZXI+XG5cbiAgIGJ5dGVzbGl0ZXJhbCAgIDo6PSBieXRlc3ByZWZpeChzaG9ydGJ5dGVzIHwgbG9uZ2J5dGVzKVxuICAgYnl0ZXNwcmVmaXggICAgOjo9ICJiIiB8ICJCIiB8ICJiciIgfCAiQnIiIHwgImJSIiB8ICJCUiJcbiAgIHNob3J0Ynl0ZXMgICAgIDo6PSAiXCciIHNob3J0Ynl0ZXNpdGVtKiAiXCciIHwgXCciXCcgc2hvcnRieXRlc2l0ZW0qIFwnIlwnXG4gICBsb25nYnl0ZXMgICAgICA6Oj0gIlwnXCdcJyIgbG9uZ2J5dGVzaXRlbSogIlwnXCdcJyIgfCBcJyIiIlwnIGxvbmdieXRlc2l0ZW0qIFwnIiIiXCdcbiAgIHNob3J0Ynl0ZXNpdGVtIDo6PSBzaG9ydGJ5dGVzY2hhciB8IGJ5dGVzZXNjYXBlc2VxXG4gICBsb25nYnl0ZXNpdGVtICA6Oj0gbG9uZ2J5dGVzY2hhciB8IGJ5dGVzZXNjYXBlc2VxXG4gICBzaG9ydGJ5dGVzY2hhciA6Oj0gPGFueSBBU0NJSSBjaGFyYWN0ZXIgZXhjZXB0ICJcXCIgb3IgbmV3bGluZSBvciB0aGUgcXVvdGU+XG4gICBsb25nYnl0ZXNjaGFyICA6Oj0gPGFueSBBU0NJSSBjaGFyYWN0ZXIgZXhjZXB0ICJcXCI+XG4gICBieXRlc2VzY2FwZXNlcSA6Oj0gIlxcIiA8YW55IEFTQ0lJIGNoYXJhY3Rlcj5cblxuT25lIHN5bnRhY3RpYyByZXN0cmljdGlvbiBub3QgaW5kaWNhdGVkIGJ5IHRoZXNlIHByb2R1Y3Rpb25zIGlzIHRoYXRcbndoaXRlc3BhY2UgaXMgbm90IGFsbG93ZWQgYmV0d2VlbiB0aGUgYGBzdHJpbmdwcmVmaXhgYCBvclxuYGBieXRlc3ByZWZpeGBgIGFuZCB0aGUgcmVzdCBvZiB0aGUgbGl0ZXJhbC4gVGhlIHNvdXJjZSBjaGFyYWN0ZXIgc2V0XG5pcyBkZWZpbmVkIGJ5IHRoZSBlbmNvZGluZyBkZWNsYXJhdGlvbjsgaXQgaXMgVVRGLTggaWYgbm8gZW5jb2RpbmdcbmRlY2xhcmF0aW9uIGlzIGdpdmVuIGluIHRoZSBzb3VyY2UgZmlsZTsgc2VlIHNlY3Rpb24gKkVuY29kaW5nXG5kZWNsYXJhdGlvbnMqLlxuXG5JbiBwbGFpbiBFbmdsaXNoOiBCb3RoIHR5cGVzIG9mIGxpdGVyYWxzIGNhbiBiZSBlbmNsb3NlZCBpbiBtYXRjaGluZ1xuc2luZ2xlIHF1b3RlcyAoYGBcJ2BgKSBvciBkb3VibGUgcXVvdGVzIChgYCJgYCkuICBUaGV5IGNhbiBhbHNvIGJlXG5lbmNsb3NlZCBpbiBtYXRjaGluZyBncm91cHMgb2YgdGhyZWUgc2luZ2xlIG9yIGRvdWJsZSBxdW90ZXMgKHRoZXNlXG5hcmUgZ2VuZXJhbGx5IHJlZmVycmVkIHRvIGFzICp0cmlwbGUtcXVvdGVkIHN0cmluZ3MqKS4gIFRoZSBiYWNrc2xhc2hcbihgYFxcYGApIGNoYXJhY3RlciBpcyB1c2VkIHRvIGVzY2FwZSBjaGFyYWN0ZXJzIHRoYXQgb3RoZXJ3aXNlIGhhdmUgYVxuc3BlY2lhbCBtZWFuaW5nLCBzdWNoIGFzIG5ld2xpbmUsIGJhY2tzbGFzaCBpdHNlbGYsIG9yIHRoZSBxdW90ZVxuY2hhcmFjdGVyLlxuXG5CeXRlcyBsaXRlcmFscyBhcmUgYWx3YXlzIHByZWZpeGVkIHdpdGggYGBcJ2JcJ2BgIG9yIGBgXCdCXCdgYDsgdGhleVxucHJvZHVjZSBhbiBpbnN0YW5jZSBvZiB0aGUgYGBieXRlc2BgIHR5cGUgaW5zdGVhZCBvZiB0aGUgYGBzdHJgYCB0eXBlLlxuVGhleSBtYXkgb25seSBjb250YWluIEFTQ0lJIGNoYXJhY3RlcnM7IGJ5dGVzIHdpdGggYSBudW1lcmljIHZhbHVlIG9mXG4xMjggb3IgZ3JlYXRlciBtdXN0IGJlIGV4cHJlc3NlZCB3aXRoIGVzY2FwZXMuXG5cbkJvdGggc3RyaW5nIGFuZCBieXRlcyBsaXRlcmFscyBtYXkgb3B0aW9uYWxseSBiZSBwcmVmaXhlZCB3aXRoIGFcbmxldHRlciBgYFwnclwnYGAgb3IgYGBcJ1JcJ2BgOyBzdWNoIHN0cmluZ3MgYXJlIGNhbGxlZCAqcmF3IHN0cmluZ3MqIGFuZFxudHJlYXQgYmFja3NsYXNoZXMgYXMgbGl0ZXJhbCBjaGFyYWN0ZXJzLiAgQXMgYSByZXN1bHQsIGluIHN0cmluZ1xubGl0ZXJhbHMsIGBgXCdcXFVcJ2BgIGFuZCBgYFwnXFx1XCdgYCBlc2NhcGVzIGluIHJhdyBzdHJpbmdzIGFyZSBub3QgdHJlYXRlZFxuc3BlY2lhbGx5LlxuXG5JbiB0cmlwbGUtcXVvdGVkIHN0cmluZ3MsIHVuZXNjYXBlZCBuZXdsaW5lcyBhbmQgcXVvdGVzIGFyZSBhbGxvd2VkXG4oYW5kIGFyZSByZXRhaW5lZCksIGV4Y2VwdCB0aGF0IHRocmVlIHVuZXNjYXBlZCBxdW90ZXMgaW4gYSByb3dcbnRlcm1pbmF0ZSB0aGUgc3RyaW5nLiAgKEEgInF1b3RlIiBpcyB0aGUgY2hhcmFjdGVyIHVzZWQgdG8gb3BlbiB0aGVcbnN0cmluZywgaS5lLiBlaXRoZXIgYGBcJ2BgIG9yIGBgImBgLilcblxuVW5sZXNzIGFuIGBgXCdyXCdgYCBvciBgYFwnUlwnYGAgcHJlZml4IGlzIHByZXNlbnQsIGVzY2FwZSBzZXF1ZW5jZXMgaW5cbnN0cmluZ3MgYXJlIGludGVycHJldGVkIGFjY29yZGluZyB0byBydWxlcyBzaW1pbGFyIHRvIHRob3NlIHVzZWQgYnlcblN0YW5kYXJkIEMuICBUaGUgcmVjb2duaXplZCBlc2NhcGUgc2VxdWVuY2VzIGFyZTpcblxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBFc2NhcGUgU2VxdWVuY2UgICB8IE1lYW5pbmcgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzICAgfFxuKz09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09K1xufCBgYFxcbmV3bGluZWBgICAgICAgfCBCYWNrc2xhc2ggYW5kIG5ld2xpbmUgaWdub3JlZCAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXFxcYGAgICAgICAgICAgICB8IEJhY2tzbGFzaCAoYGBcXGBgKSAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXFwnYGAgICAgICAgICAgICB8IFNpbmdsZSBxdW90ZSAoYGBcJ2BgKSAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXCJgYCAgICAgICAgICAgIHwgRG91YmxlIHF1b3RlIChgYCJgYCkgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFxhYGAgICAgICAgICAgICB8IEFTQ0lJIEJlbGwgKEJFTCkgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcYmBgICAgICAgICAgICAgfCBBU0NJSSBCYWNrc3BhY2UgKEJTKSAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXGZgYCAgICAgICAgICAgIHwgQVNDSUkgRm9ybWZlZWQgKEZGKSAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFxuYGAgICAgICAgICAgICB8IEFTQ0lJIExpbmVmZWVkIChMRikgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxccmBgICAgICAgICAgICAgfCBBU0NJSSBDYXJyaWFnZSBSZXR1cm4gKENSKSAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXHRgYCAgICAgICAgICAgIHwgQVNDSUkgSG9yaXpvbnRhbCBUYWIgKFRBQikgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFx2YGAgICAgICAgICAgICB8IEFTQ0lJIFZlcnRpY2FsIFRhYiAoVlQpICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcb29vYGAgICAgICAgICAgfCBDaGFyYWN0ZXIgd2l0aCBvY3RhbCB2YWx1ZSAqb29vKiAgfCAoMSwzKSAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcXHhoaGBgICAgICAgICAgIHwgQ2hhcmFjdGVyIHdpdGggaGV4IHZhbHVlICpoaCogICAgIHwgKDIsMykgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG5cbkVzY2FwZSBzZXF1ZW5jZXMgb25seSByZWNvZ25pemVkIGluIHN0cmluZyBsaXRlcmFscyBhcmU6XG5cbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgRXNjYXBlIFNlcXVlbmNlICAgfCBNZWFuaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyAgIHxcbis9PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PStcbnwgYGBcXE57bmFtZX1gYCAgICAgIHwgQ2hhcmFjdGVyIG5hbWVkICpuYW1lKiBpbiB0aGUgICAgIHwgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgIHwgVW5pY29kZSBkYXRhYmFzZSAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXFx1eHh4eGBgICAgICAgICB8IENoYXJhY3RlciB3aXRoIDE2LWJpdCBoZXggdmFsdWUgICB8ICg0KSAgICAgfFxufCAgICAgICAgICAgICAgICAgICB8ICp4eHh4KiAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFxcVXh4eHh4eHh4YGAgICAgfCBDaGFyYWN0ZXIgd2l0aCAzMi1iaXQgaGV4IHZhbHVlICAgfCAoNSkgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgfCAqeHh4eHh4eHgqICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcblxuTm90ZXM6XG5cbjEuIEFzIGluIFN0YW5kYXJkIEMsIHVwIHRvIHRocmVlIG9jdGFsIGRpZ2l0cyBhcmUgYWNjZXB0ZWQuXG5cbjIuIFVubGlrZSBpbiBTdGFuZGFyZCBDLCBleGFjdGx5IHR3byBoZXggZGlnaXRzIGFyZSByZXF1aXJlZC5cblxuMy4gSW4gYSBieXRlcyBsaXRlcmFsLCBoZXhhZGVjaW1hbCBhbmQgb2N0YWwgZXNjYXBlcyBkZW5vdGUgdGhlIGJ5dGVcbiAgIHdpdGggdGhlIGdpdmVuIHZhbHVlLiBJbiBhIHN0cmluZyBsaXRlcmFsLCB0aGVzZSBlc2NhcGVzIGRlbm90ZSBhXG4gICBVbmljb2RlIGNoYXJhY3RlciB3aXRoIHRoZSBnaXZlbiB2YWx1ZS5cblxuNC4gSW5kaXZpZHVhbCBjb2RlIHVuaXRzIHdoaWNoIGZvcm0gcGFydHMgb2YgYSBzdXJyb2dhdGUgcGFpciBjYW4gYmVcbiAgIGVuY29kZWQgdXNpbmcgdGhpcyBlc2NhcGUgc2VxdWVuY2UuICBFeGFjdGx5IGZvdXIgaGV4IGRpZ2l0cyBhcmVcbiAgIHJlcXVpcmVkLlxuXG41LiBBbnkgVW5pY29kZSBjaGFyYWN0ZXIgY2FuIGJlIGVuY29kZWQgdGhpcyB3YXksIGJ1dCBjaGFyYWN0ZXJzXG4gICBvdXRzaWRlIHRoZSBCYXNpYyBNdWx0aWxpbmd1YWwgUGxhbmUgKEJNUCkgd2lsbCBiZSBlbmNvZGVkIHVzaW5nIGFcbiAgIHN1cnJvZ2F0ZSBwYWlyIGlmIFB5dGhvbiBpcyBjb21waWxlZCB0byB1c2UgMTYtYml0IGNvZGUgdW5pdHMgKHRoZVxuICAgZGVmYXVsdCkuICBFeGFjdGx5IGVpZ2h0IGhleCBkaWdpdHMgYXJlIHJlcXVpcmVkLlxuXG5Vbmxpa2UgU3RhbmRhcmQgQywgYWxsIHVucmVjb2duaXplZCBlc2NhcGUgc2VxdWVuY2VzIGFyZSBsZWZ0IGluIHRoZVxuc3RyaW5nIHVuY2hhbmdlZCwgaS5lLiwgKnRoZSBiYWNrc2xhc2ggaXMgbGVmdCBpbiB0aGUgc3RyaW5nKi4gIChUaGlzXG5iZWhhdmlvciBpcyB1c2VmdWwgd2hlbiBkZWJ1Z2dpbmc6IGlmIGFuIGVzY2FwZSBzZXF1ZW5jZSBpcyBtaXN0eXBlZCxcbnRoZSByZXN1bHRpbmcgb3V0cHV0IGlzIG1vcmUgZWFzaWx5IHJlY29nbml6ZWQgYXMgYnJva2VuLikgIEl0IGlzIGFsc29cbmltcG9ydGFudCB0byBub3RlIHRoYXQgdGhlIGVzY2FwZSBzZXF1ZW5jZXMgb25seSByZWNvZ25pemVkIGluIHN0cmluZ1xubGl0ZXJhbHMgZmFsbCBpbnRvIHRoZSBjYXRlZ29yeSBvZiB1bnJlY29nbml6ZWQgZXNjYXBlcyBmb3IgYnl0ZXNcbmxpdGVyYWxzLlxuXG5FdmVuIGluIGEgcmF3IHN0cmluZywgc3RyaW5nIHF1b3RlcyBjYW4gYmUgZXNjYXBlZCB3aXRoIGEgYmFja3NsYXNoLFxuYnV0IHRoZSBiYWNrc2xhc2ggcmVtYWlucyBpbiB0aGUgc3RyaW5nOyBmb3IgZXhhbXBsZSwgYGByIlxcIiJgYCBpcyBhXG52YWxpZCBzdHJpbmcgbGl0ZXJhbCBjb25zaXN0aW5nIG9mIHR3byBjaGFyYWN0ZXJzOiBhIGJhY2tzbGFzaCBhbmQgYVxuZG91YmxlIHF1b3RlOyBgYHIiXFwiYGAgaXMgbm90IGEgdmFsaWQgc3RyaW5nIGxpdGVyYWwgKGV2ZW4gYSByYXdcbnN0cmluZyBjYW5ub3QgZW5kIGluIGFuIG9kZCBudW1iZXIgb2YgYmFja3NsYXNoZXMpLiAgU3BlY2lmaWNhbGx5LCAqYVxucmF3IHN0cmluZyBjYW5ub3QgZW5kIGluIGEgc2luZ2xlIGJhY2tzbGFzaCogKHNpbmNlIHRoZSBiYWNrc2xhc2hcbndvdWxkIGVzY2FwZSB0aGUgZm9sbG93aW5nIHF1b3RlIGNoYXJhY3RlcikuICBOb3RlIGFsc28gdGhhdCBhIHNpbmdsZVxuYmFja3NsYXNoIGZvbGxvd2VkIGJ5IGEgbmV3bGluZSBpcyBpbnRlcnByZXRlZCBhcyB0aG9zZSB0d28gY2hhcmFjdGVyc1xuYXMgcGFydCBvZiB0aGUgc3RyaW5nLCAqbm90KiBhcyBhIGxpbmUgY29udGludWF0aW9uLlxuJywKICAnc3Vic2NyaXB0aW9ucyc6ICdcblN1YnNjcmlwdGlvbnNcbioqKioqKioqKioqKipcblxuQSBzdWJzY3JpcHRpb24gc2VsZWN0cyBhbiBpdGVtIG9mIGEgc2VxdWVuY2UgKHN0cmluZywgdHVwbGUgb3IgbGlzdClcbm9yIG1hcHBpbmcgKGRpY3Rpb25hcnkpIG9iamVjdDpcblxuICAgc3Vic2NyaXB0aW9uIDo6PSBwcmltYXJ5ICJbIiBleHByZXNzaW9uX2xpc3QgIl0iXG5cblRoZSBwcmltYXJ5IG11c3QgZXZhbHVhdGUgdG8gYW4gb2JqZWN0IHRoYXQgc3VwcG9ydHMgc3Vic2NyaXB0aW9uLFxuZS5nLiBhIGxpc3Qgb3IgZGljdGlvbmFyeS4gIFVzZXItZGVmaW5lZCBvYmplY3RzIGNhbiBzdXBwb3J0XG5zdWJzY3JpcHRpb24gYnkgZGVmaW5pbmcgYSBgYF9fZ2V0aXRlbV9fKClgYCBtZXRob2QuXG5cbkZvciBidWlsdC1pbiBvYmplY3RzLCB0aGVyZSBhcmUgdHdvIHR5cGVzIG9mIG9iamVjdHMgdGhhdCBzdXBwb3J0XG5zdWJzY3JpcHRpb246XG5cbklmIHRoZSBwcmltYXJ5IGlzIGEgbWFwcGluZywgdGhlIGV4cHJlc3Npb24gbGlzdCBtdXN0IGV2YWx1YXRlIHRvIGFuXG5vYmplY3Qgd2hvc2UgdmFsdWUgaXMgb25lIG9mIHRoZSBrZXlzIG9mIHRoZSBtYXBwaW5nLCBhbmQgdGhlXG5zdWJzY3JpcHRpb24gc2VsZWN0cyB0aGUgdmFsdWUgaW4gdGhlIG1hcHBpbmcgdGhhdCBjb3JyZXNwb25kcyB0byB0aGF0XG5rZXkuICAoVGhlIGV4cHJlc3Npb24gbGlzdCBpcyBhIHR1cGxlIGV4Y2VwdCBpZiBpdCBoYXMgZXhhY3RseSBvbmVcbml0ZW0uKVxuXG5JZiB0aGUgcHJpbWFyeSBpcyBhIHNlcXVlbmNlLCB0aGUgZXhwcmVzc2lvbiAobGlzdCkgbXVzdCBldmFsdWF0ZSB0b1xuYW4gaW50ZWdlciBvciBhIHNsaWNlIChhcyBkaXNjdXNzZWQgaW4gdGhlIGZvbGxvd2luZyBzZWN0aW9uKS5cblxuVGhlIGZvcm1hbCBzeW50YXggbWFrZXMgbm8gc3BlY2lhbCBwcm92aXNpb24gZm9yIG5lZ2F0aXZlIGluZGljZXMgaW5cbnNlcXVlbmNlczsgaG93ZXZlciwgYnVpbHQtaW4gc2VxdWVuY2VzIGFsbCBwcm92aWRlIGEgYGBfX2dldGl0ZW1fXygpYGBcbm1ldGhvZCB0aGF0IGludGVycHJldHMgbmVnYXRpdmUgaW5kaWNlcyBieSBhZGRpbmcgdGhlIGxlbmd0aCBvZiB0aGVcbnNlcXVlbmNlIHRvIHRoZSBpbmRleCAoc28gdGhhdCBgYHhbLTFdYGAgc2VsZWN0cyB0aGUgbGFzdCBpdGVtIG9mXG5gYHhgYCkuICBUaGUgcmVzdWx0aW5nIHZhbHVlIG11c3QgYmUgYSBub25uZWdhdGl2ZSBpbnRlZ2VyIGxlc3MgdGhhblxudGhlIG51bWJlciBvZiBpdGVtcyBpbiB0aGUgc2VxdWVuY2UsIGFuZCB0aGUgc3Vic2NyaXB0aW9uIHNlbGVjdHMgdGhlXG5pdGVtIHdob3NlIGluZGV4IGlzIHRoYXQgdmFsdWUgKGNvdW50aW5nIGZyb20gemVybykuIFNpbmNlIHRoZSBzdXBwb3J0XG5mb3IgbmVnYXRpdmUgaW5kaWNlcyBhbmQgc2xpY2luZyBvY2N1cnMgaW4gdGhlIG9iamVjdFwnc1xuYGBfX2dldGl0ZW1fXygpYGAgbWV0aG9kLCBzdWJjbGFzc2VzIG92ZXJyaWRpbmcgdGhpcyBtZXRob2Qgd2lsbCBuZWVkXG50byBleHBsaWNpdGx5IGFkZCB0aGF0IHN1cHBvcnQuXG5cbkEgc3RyaW5nXCdzIGl0ZW1zIGFyZSBjaGFyYWN0ZXJzLiAgQSBjaGFyYWN0ZXIgaXMgbm90IGEgc2VwYXJhdGUgZGF0YVxudHlwZSBidXQgYSBzdHJpbmcgb2YgZXhhY3RseSBvbmUgY2hhcmFjdGVyLlxuJywKICAndHJ1dGgnOiAiXG5UcnV0aCBWYWx1ZSBUZXN0aW5nXG4qKioqKioqKioqKioqKioqKioqXG5cbkFueSBvYmplY3QgY2FuIGJlIHRlc3RlZCBmb3IgdHJ1dGggdmFsdWUsIGZvciB1c2UgaW4gYW4gYGBpZmBgIG9yXG5gYHdoaWxlYGAgY29uZGl0aW9uIG9yIGFzIG9wZXJhbmQgb2YgdGhlIEJvb2xlYW4gb3BlcmF0aW9ucyBiZWxvdy4gVGhlXG5mb2xsb3dpbmcgdmFsdWVzIGFyZSBjb25zaWRlcmVkIGZhbHNlOlxuXG4qIGBgTm9uZWBgXG5cbiogYGBGYWxzZWBgXG5cbiogemVybyBvZiBhbnkgbnVtZXJpYyB0eXBlLCBmb3IgZXhhbXBsZSwgYGAwYGAsIGBgMC4wYGAsIGBgMGpgYC5cblxuKiBhbnkgZW1wdHkgc2VxdWVuY2UsIGZvciBleGFtcGxlLCBgYCcnYGAsIGBgKClgYCwgYGBbXWBgLlxuXG4qIGFueSBlbXB0eSBtYXBwaW5nLCBmb3IgZXhhbXBsZSwgYGB7fWBgLlxuXG4qIGluc3RhbmNlcyBvZiB1c2VyLWRlZmluZWQgY2xhc3NlcywgaWYgdGhlIGNsYXNzIGRlZmluZXMgYVxuICBgYF9fYm9vbF9fKClgYCBvciBgYF9fbGVuX18oKWBgIG1ldGhvZCwgd2hlbiB0aGF0IG1ldGhvZCByZXR1cm5zIHRoZVxuICBpbnRlZ2VyIHplcm8gb3IgYGBib29sYGAgdmFsdWUgYGBGYWxzZWBgLiBbMV1cblxuQWxsIG90aGVyIHZhbHVlcyBhcmUgY29uc2lkZXJlZCB0cnVlIC0tLSBzbyBvYmplY3RzIG9mIG1hbnkgdHlwZXMgYXJlXG5hbHdheXMgdHJ1ZS5cblxuT3BlcmF0aW9ucyBhbmQgYnVpbHQtaW4gZnVuY3Rpb25zIHRoYXQgaGF2ZSBhIEJvb2xlYW4gcmVzdWx0IGFsd2F5c1xucmV0dXJuIGBgMGBgIG9yIGBgRmFsc2VgYCBmb3IgZmFsc2UgYW5kIGBgMWBgIG9yIGBgVHJ1ZWBgIGZvciB0cnVlLFxudW5sZXNzIG90aGVyd2lzZSBzdGF0ZWQuIChJbXBvcnRhbnQgZXhjZXB0aW9uOiB0aGUgQm9vbGVhbiBvcGVyYXRpb25zXG5gYG9yYGAgYW5kIGBgYW5kYGAgYWx3YXlzIHJldHVybiBvbmUgb2YgdGhlaXIgb3BlcmFuZHMuKVxuIiwKICAndHJ5JzogJ1xuVGhlIGBgdHJ5YGAgc3RhdGVtZW50XG4qKioqKioqKioqKioqKioqKioqKipcblxuVGhlIGBgdHJ5YGAgc3RhdGVtZW50IHNwZWNpZmllcyBleGNlcHRpb24gaGFuZGxlcnMgYW5kL29yIGNsZWFudXAgY29kZVxuZm9yIGEgZ3JvdXAgb2Ygc3RhdGVtZW50czpcblxuICAgdHJ5X3N0bXQgIDo6PSB0cnkxX3N0bXQgfCB0cnkyX3N0bXRcbiAgIHRyeTFfc3RtdCA6Oj0gInRyeSIgIjoiIHN1aXRlXG4gICAgICAgICAgICAgICAgICgiZXhjZXB0IiBbZXhwcmVzc2lvbiBbImFzIiB0YXJnZXRdXSAiOiIgc3VpdGUpK1xuICAgICAgICAgICAgICAgICBbImVsc2UiICI6IiBzdWl0ZV1cbiAgICAgICAgICAgICAgICAgWyJmaW5hbGx5IiAiOiIgc3VpdGVdXG4gICB0cnkyX3N0bXQgOjo9ICJ0cnkiICI6IiBzdWl0ZVxuICAgICAgICAgICAgICAgICAiZmluYWxseSIgIjoiIHN1aXRlXG5cblRoZSBgYGV4Y2VwdGBgIGNsYXVzZShzKSBzcGVjaWZ5IG9uZSBvciBtb3JlIGV4Y2VwdGlvbiBoYW5kbGVycy4gV2hlblxubm8gZXhjZXB0aW9uIG9jY3VycyBpbiB0aGUgYGB0cnlgYCBjbGF1c2UsIG5vIGV4Y2VwdGlvbiBoYW5kbGVyIGlzXG5leGVjdXRlZC4gV2hlbiBhbiBleGNlcHRpb24gb2NjdXJzIGluIHRoZSBgYHRyeWBgIHN1aXRlLCBhIHNlYXJjaCBmb3JcbmFuIGV4Y2VwdGlvbiBoYW5kbGVyIGlzIHN0YXJ0ZWQuICBUaGlzIHNlYXJjaCBpbnNwZWN0cyB0aGUgZXhjZXB0XG5jbGF1c2VzIGluIHR1cm4gdW50aWwgb25lIGlzIGZvdW5kIHRoYXQgbWF0Y2hlcyB0aGUgZXhjZXB0aW9uLiAgQW5cbmV4cHJlc3Npb24tbGVzcyBleGNlcHQgY2xhdXNlLCBpZiBwcmVzZW50LCBtdXN0IGJlIGxhc3Q7IGl0IG1hdGNoZXNcbmFueSBleGNlcHRpb24uICBGb3IgYW4gZXhjZXB0IGNsYXVzZSB3aXRoIGFuIGV4cHJlc3Npb24sIHRoYXRcbmV4cHJlc3Npb24gaXMgZXZhbHVhdGVkLCBhbmQgdGhlIGNsYXVzZSBtYXRjaGVzIHRoZSBleGNlcHRpb24gaWYgdGhlXG5yZXN1bHRpbmcgb2JqZWN0IGlzICJjb21wYXRpYmxlIiB3aXRoIHRoZSBleGNlcHRpb24uICBBbiBvYmplY3QgaXNcbmNvbXBhdGlibGUgd2l0aCBhbiBleGNlcHRpb24gaWYgaXQgaXMgdGhlIGNsYXNzIG9yIGEgYmFzZSBjbGFzcyBvZiB0aGVcbmV4Y2VwdGlvbiBvYmplY3Qgb3IgYSB0dXBsZSBjb250YWluaW5nIGFuIGl0ZW0gY29tcGF0aWJsZSB3aXRoIHRoZVxuZXhjZXB0aW9uLlxuXG5JZiBubyBleGNlcHQgY2xhdXNlIG1hdGNoZXMgdGhlIGV4Y2VwdGlvbiwgdGhlIHNlYXJjaCBmb3IgYW4gZXhjZXB0aW9uXG5oYW5kbGVyIGNvbnRpbnVlcyBpbiB0aGUgc3Vycm91bmRpbmcgY29kZSBhbmQgb24gdGhlIGludm9jYXRpb24gc3RhY2suXG5bMV1cblxuSWYgdGhlIGV2YWx1YXRpb24gb2YgYW4gZXhwcmVzc2lvbiBpbiB0aGUgaGVhZGVyIG9mIGFuIGV4Y2VwdCBjbGF1c2VcbnJhaXNlcyBhbiBleGNlcHRpb24sIHRoZSBvcmlnaW5hbCBzZWFyY2ggZm9yIGEgaGFuZGxlciBpcyBjYW5jZWxlZCBhbmRcbmEgc2VhcmNoIHN0YXJ0cyBmb3IgdGhlIG5ldyBleGNlcHRpb24gaW4gdGhlIHN1cnJvdW5kaW5nIGNvZGUgYW5kIG9uXG50aGUgY2FsbCBzdGFjayAoaXQgaXMgdHJlYXRlZCBhcyBpZiB0aGUgZW50aXJlIGBgdHJ5YGAgc3RhdGVtZW50XG5yYWlzZWQgdGhlIGV4Y2VwdGlvbikuXG5cbldoZW4gYSBtYXRjaGluZyBleGNlcHQgY2xhdXNlIGlzIGZvdW5kLCB0aGUgZXhjZXB0aW9uIGlzIGFzc2lnbmVkIHRvXG50aGUgdGFyZ2V0IHNwZWNpZmllZCBhZnRlciB0aGUgYGBhc2BgIGtleXdvcmQgaW4gdGhhdCBleGNlcHQgY2xhdXNlLFxuaWYgcHJlc2VudCwgYW5kIHRoZSBleGNlcHQgY2xhdXNlXCdzIHN1aXRlIGlzIGV4ZWN1dGVkLiAgQWxsIGV4Y2VwdFxuY2xhdXNlcyBtdXN0IGhhdmUgYW4gZXhlY3V0YWJsZSBibG9jay4gIFdoZW4gdGhlIGVuZCBvZiB0aGlzIGJsb2NrIGlzXG5yZWFjaGVkLCBleGVjdXRpb24gY29udGludWVzIG5vcm1hbGx5IGFmdGVyIHRoZSBlbnRpcmUgdHJ5IHN0YXRlbWVudC5cbihUaGlzIG1lYW5zIHRoYXQgaWYgdHdvIG5lc3RlZCBoYW5kbGVycyBleGlzdCBmb3IgdGhlIHNhbWUgZXhjZXB0aW9uLFxuYW5kIHRoZSBleGNlcHRpb24gb2NjdXJzIGluIHRoZSB0cnkgY2xhdXNlIG9mIHRoZSBpbm5lciBoYW5kbGVyLCB0aGVcbm91dGVyIGhhbmRsZXIgd2lsbCBub3QgaGFuZGxlIHRoZSBleGNlcHRpb24uKVxuXG5XaGVuIGFuIGV4Y2VwdGlvbiBoYXMgYmVlbiBhc3NpZ25lZCB1c2luZyBgYGFzIHRhcmdldGBgLCBpdCBpcyBjbGVhcmVkXG5hdCB0aGUgZW5kIG9mIHRoZSBleGNlcHQgY2xhdXNlLiAgVGhpcyBpcyBhcyBpZlxuXG4gICBleGNlcHQgRSBhcyBOOlxuICAgICAgIGZvb1xuXG53YXMgdHJhbnNsYXRlZCB0b1xuXG4gICBleGNlcHQgRSBhcyBOOlxuICAgICAgIHRyeTpcbiAgICAgICAgICAgZm9vXG4gICAgICAgZmluYWxseTpcbiAgICAgICAgICAgZGVsIE5cblxuVGhpcyBtZWFucyB0aGUgZXhjZXB0aW9uIG11c3QgYmUgYXNzaWduZWQgdG8gYSBkaWZmZXJlbnQgbmFtZSB0byBiZVxuYWJsZSB0byByZWZlciB0byBpdCBhZnRlciB0aGUgZXhjZXB0IGNsYXVzZS4gIEV4Y2VwdGlvbnMgYXJlIGNsZWFyZWRcbmJlY2F1c2Ugd2l0aCB0aGUgdHJhY2ViYWNrIGF0dGFjaGVkIHRvIHRoZW0sIHRoZXkgZm9ybSBhIHJlZmVyZW5jZVxuY3ljbGUgd2l0aCB0aGUgc3RhY2sgZnJhbWUsIGtlZXBpbmcgYWxsIGxvY2FscyBpbiB0aGF0IGZyYW1lIGFsaXZlXG51bnRpbCB0aGUgbmV4dCBnYXJiYWdlIGNvbGxlY3Rpb24gb2NjdXJzLlxuXG5CZWZvcmUgYW4gZXhjZXB0IGNsYXVzZVwncyBzdWl0ZSBpcyBleGVjdXRlZCwgZGV0YWlscyBhYm91dCB0aGVcbmV4Y2VwdGlvbiBhcmUgc3RvcmVkIGluIHRoZSBgYHN5c2BgIG1vZHVsZSBhbmQgY2FuIGJlIGFjY2VzcyB2aWFcbmBgc3lzLmV4Y19pbmZvKClgYC4gYGBzeXMuZXhjX2luZm8oKWBgIHJldHVybnMgYSAzLXR1cGxlIGNvbnNpc3Rpbmcgb2ZcbnRoZSBleGNlcHRpb24gY2xhc3MsIHRoZSBleGNlcHRpb24gaW5zdGFuY2UgYW5kIGEgdHJhY2ViYWNrIG9iamVjdFxuKHNlZSBzZWN0aW9uICpUaGUgc3RhbmRhcmQgdHlwZSBoaWVyYXJjaHkqKSBpZGVudGlmeWluZyB0aGUgcG9pbnQgaW5cbnRoZSBwcm9ncmFtIHdoZXJlIHRoZSBleGNlcHRpb24gb2NjdXJyZWQuICBgYHN5cy5leGNfaW5mbygpYGAgdmFsdWVzXG5hcmUgcmVzdG9yZWQgdG8gdGhlaXIgcHJldmlvdXMgdmFsdWVzIChiZWZvcmUgdGhlIGNhbGwpIHdoZW4gcmV0dXJuaW5nXG5mcm9tIGEgZnVuY3Rpb24gdGhhdCBoYW5kbGVkIGFuIGV4Y2VwdGlvbi5cblxuVGhlIG9wdGlvbmFsIGBgZWxzZWBgIGNsYXVzZSBpcyBleGVjdXRlZCBpZiBhbmQgd2hlbiBjb250cm9sIGZsb3dzIG9mZlxudGhlIGVuZCBvZiB0aGUgYGB0cnlgYCBjbGF1c2UuIFsyXSBFeGNlcHRpb25zIGluIHRoZSBgYGVsc2VgYCBjbGF1c2VcbmFyZSBub3QgaGFuZGxlZCBieSB0aGUgcHJlY2VkaW5nIGBgZXhjZXB0YGAgY2xhdXNlcy5cblxuSWYgYGBmaW5hbGx5YGAgaXMgcHJlc2VudCwgaXQgc3BlY2lmaWVzIGEgXCdjbGVhbnVwXCcgaGFuZGxlci4gIFRoZVxuYGB0cnlgYCBjbGF1c2UgaXMgZXhlY3V0ZWQsIGluY2x1ZGluZyBhbnkgYGBleGNlcHRgYCBhbmQgYGBlbHNlYGBcbmNsYXVzZXMuICBJZiBhbiBleGNlcHRpb24gb2NjdXJzIGluIGFueSBvZiB0aGUgY2xhdXNlcyBhbmQgaXMgbm90XG5oYW5kbGVkLCB0aGUgZXhjZXB0aW9uIGlzIHRlbXBvcmFyaWx5IHNhdmVkLiBUaGUgYGBmaW5hbGx5YGAgY2xhdXNlIGlzXG5leGVjdXRlZC4gIElmIHRoZXJlIGlzIGEgc2F2ZWQgZXhjZXB0aW9uLCBpdCBpcyByZS1yYWlzZWQgYXQgdGhlIGVuZFxub2YgdGhlIGBgZmluYWxseWBgIGNsYXVzZS4gSWYgdGhlIGBgZmluYWxseWBgIGNsYXVzZSByYWlzZXMgYW5vdGhlclxuZXhjZXB0aW9uIG9yIGV4ZWN1dGVzIGEgYGByZXR1cm5gYCBvciBgYGJyZWFrYGAgc3RhdGVtZW50LCB0aGUgc2F2ZWRcbmV4Y2VwdGlvbiBpcyBsb3N0LiAgVGhlIGV4Y2VwdGlvbiBpbmZvcm1hdGlvbiBpcyBub3QgYXZhaWxhYmxlIHRvIHRoZVxucHJvZ3JhbSBkdXJpbmcgZXhlY3V0aW9uIG9mIHRoZSBgYGZpbmFsbHlgYCBjbGF1c2UuXG5cbldoZW4gYSBgYHJldHVybmBgLCBgYGJyZWFrYGAgb3IgYGBjb250aW51ZWBgIHN0YXRlbWVudCBpcyBleGVjdXRlZCBpblxudGhlIGBgdHJ5YGAgc3VpdGUgb2YgYSBgYHRyeWBgLi4uYGBmaW5hbGx5YGAgc3RhdGVtZW50LCB0aGVcbmBgZmluYWxseWBgIGNsYXVzZSBpcyBhbHNvIGV4ZWN1dGVkIFwnb24gdGhlIHdheSBvdXQuXCcgQSBgYGNvbnRpbnVlYGBcbnN0YXRlbWVudCBpcyBpbGxlZ2FsIGluIHRoZSBgYGZpbmFsbHlgYCBjbGF1c2UuIChUaGUgcmVhc29uIGlzIGFcbnByb2JsZW0gd2l0aCB0aGUgY3VycmVudCBpbXBsZW1lbnRhdGlvbiAtLS0gdGhpcyByZXN0cmljdGlvbiBtYXkgYmVcbmxpZnRlZCBpbiB0aGUgZnV0dXJlKS5cblxuQWRkaXRpb25hbCBpbmZvcm1hdGlvbiBvbiBleGNlcHRpb25zIGNhbiBiZSBmb3VuZCBpbiBzZWN0aW9uXG4qRXhjZXB0aW9ucyosIGFuZCBpbmZvcm1hdGlvbiBvbiB1c2luZyB0aGUgYGByYWlzZWBgIHN0YXRlbWVudCB0b1xuZ2VuZXJhdGUgZXhjZXB0aW9ucyBtYXkgYmUgZm91bmQgaW4gc2VjdGlvbiAqVGhlIHJhaXNlIHN0YXRlbWVudCouXG4nLAogICd0eXBlcyc6ICdcblRoZSBzdGFuZGFyZCB0eXBlIGhpZXJhcmNoeVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbkJlbG93IGlzIGEgbGlzdCBvZiB0aGUgdHlwZXMgdGhhdCBhcmUgYnVpbHQgaW50byBQeXRob24uICBFeHRlbnNpb25cbm1vZHVsZXMgKHdyaXR0ZW4gaW4gQywgSmF2YSwgb3Igb3RoZXIgbGFuZ3VhZ2VzLCBkZXBlbmRpbmcgb24gdGhlXG5pbXBsZW1lbnRhdGlvbikgY2FuIGRlZmluZSBhZGRpdGlvbmFsIHR5cGVzLiAgRnV0dXJlIHZlcnNpb25zIG9mXG5QeXRob24gbWF5IGFkZCB0eXBlcyB0byB0aGUgdHlwZSBoaWVyYXJjaHkgKGUuZy4sIHJhdGlvbmFsIG51bWJlcnMsXG5lZmZpY2llbnRseSBzdG9yZWQgYXJyYXlzIG9mIGludGVnZXJzLCBldGMuKSwgYWx0aG91Z2ggc3VjaCBhZGRpdGlvbnNcbndpbGwgb2Z0ZW4gYmUgcHJvdmlkZWQgdmlhIHRoZSBzdGFuZGFyZCBsaWJyYXJ5IGluc3RlYWQuXG5cblNvbWUgb2YgdGhlIHR5cGUgZGVzY3JpcHRpb25zIGJlbG93IGNvbnRhaW4gYSBwYXJhZ3JhcGggbGlzdGluZ1xuXCdzcGVjaWFsIGF0dHJpYnV0ZXMuXCcgIFRoZXNlIGFyZSBhdHRyaWJ1dGVzIHRoYXQgcHJvdmlkZSBhY2Nlc3MgdG8gdGhlXG5pbXBsZW1lbnRhdGlvbiBhbmQgYXJlIG5vdCBpbnRlbmRlZCBmb3IgZ2VuZXJhbCB1c2UuICBUaGVpciBkZWZpbml0aW9uXG5tYXkgY2hhbmdlIGluIHRoZSBmdXR1cmUuXG5cbk5vbmVcbiAgIFRoaXMgdHlwZSBoYXMgYSBzaW5nbGUgdmFsdWUuICBUaGVyZSBpcyBhIHNpbmdsZSBvYmplY3Qgd2l0aCB0aGlzXG4gICB2YWx1ZS4gVGhpcyBvYmplY3QgaXMgYWNjZXNzZWQgdGhyb3VnaCB0aGUgYnVpbHQtaW4gbmFtZSBgYE5vbmVgYC5cbiAgIEl0IGlzIHVzZWQgdG8gc2lnbmlmeSB0aGUgYWJzZW5jZSBvZiBhIHZhbHVlIGluIG1hbnkgc2l0dWF0aW9ucyxcbiAgIGUuZy4sIGl0IGlzIHJldHVybmVkIGZyb20gZnVuY3Rpb25zIHRoYXQgZG9uXCd0IGV4cGxpY2l0bHkgcmV0dXJuXG4gICBhbnl0aGluZy4gSXRzIHRydXRoIHZhbHVlIGlzIGZhbHNlLlxuXG5Ob3RJbXBsZW1lbnRlZFxuICAgVGhpcyB0eXBlIGhhcyBhIHNpbmdsZSB2YWx1ZS4gIFRoZXJlIGlzIGEgc2luZ2xlIG9iamVjdCB3aXRoIHRoaXNcbiAgIHZhbHVlLiBUaGlzIG9iamVjdCBpcyBhY2Nlc3NlZCB0aHJvdWdoIHRoZSBidWlsdC1pbiBuYW1lXG4gICBgYE5vdEltcGxlbWVudGVkYGAuIE51bWVyaWMgbWV0aG9kcyBhbmQgcmljaCBjb21wYXJpc29uIG1ldGhvZHMgbWF5XG4gICByZXR1cm4gdGhpcyB2YWx1ZSBpZiB0aGV5IGRvIG5vdCBpbXBsZW1lbnQgdGhlIG9wZXJhdGlvbiBmb3IgdGhlXG4gICBvcGVyYW5kcyBwcm92aWRlZC4gIChUaGUgaW50ZXJwcmV0ZXIgd2lsbCB0aGVuIHRyeSB0aGUgcmVmbGVjdGVkXG4gICBvcGVyYXRpb24sIG9yIHNvbWUgb3RoZXIgZmFsbGJhY2ssIGRlcGVuZGluZyBvbiB0aGUgb3BlcmF0b3IuKSAgSXRzXG4gICB0cnV0aCB2YWx1ZSBpcyB0cnVlLlxuXG5FbGxpcHNpc1xuICAgVGhpcyB0eXBlIGhhcyBhIHNpbmdsZSB2YWx1ZS4gIFRoZXJlIGlzIGEgc2luZ2xlIG9iamVjdCB3aXRoIHRoaXNcbiAgIHZhbHVlLiBUaGlzIG9iamVjdCBpcyBhY2Nlc3NlZCB0aHJvdWdoIHRoZSBsaXRlcmFsIGBgLi4uYGAgb3IgdGhlXG4gICBidWlsdC1pbiBuYW1lIGBgRWxsaXBzaXNgYC4gIEl0cyB0cnV0aCB2YWx1ZSBpcyB0cnVlLlxuXG5gYG51bWJlcnMuTnVtYmVyYGBcbiAgIFRoZXNlIGFyZSBjcmVhdGVkIGJ5IG51bWVyaWMgbGl0ZXJhbHMgYW5kIHJldHVybmVkIGFzIHJlc3VsdHMgYnlcbiAgIGFyaXRobWV0aWMgb3BlcmF0b3JzIGFuZCBhcml0aG1ldGljIGJ1aWx0LWluIGZ1bmN0aW9ucy4gIE51bWVyaWNcbiAgIG9iamVjdHMgYXJlIGltbXV0YWJsZTsgb25jZSBjcmVhdGVkIHRoZWlyIHZhbHVlIG5ldmVyIGNoYW5nZXMuXG4gICBQeXRob24gbnVtYmVycyBhcmUgb2YgY291cnNlIHN0cm9uZ2x5IHJlbGF0ZWQgdG8gbWF0aGVtYXRpY2FsXG4gICBudW1iZXJzLCBidXQgc3ViamVjdCB0byB0aGUgbGltaXRhdGlvbnMgb2YgbnVtZXJpY2FsIHJlcHJlc2VudGF0aW9uXG4gICBpbiBjb21wdXRlcnMuXG5cbiAgIFB5dGhvbiBkaXN0aW5ndWlzaGVzIGJldHdlZW4gaW50ZWdlcnMsIGZsb2F0aW5nIHBvaW50IG51bWJlcnMsIGFuZFxuICAgY29tcGxleCBudW1iZXJzOlxuXG4gICBgYG51bWJlcnMuSW50ZWdyYWxgYFxuICAgICAgVGhlc2UgcmVwcmVzZW50IGVsZW1lbnRzIGZyb20gdGhlIG1hdGhlbWF0aWNhbCBzZXQgb2YgaW50ZWdlcnNcbiAgICAgIChwb3NpdGl2ZSBhbmQgbmVnYXRpdmUpLlxuXG4gICAgICBUaGVyZSBhcmUgdHdvIHR5cGVzIG9mIGludGVnZXJzOlxuXG4gICAgICBJbnRlZ2VycyAoYGBpbnRgYClcblxuICAgICAgICAgVGhlc2UgcmVwcmVzZW50IG51bWJlcnMgaW4gYW4gdW5saW1pdGVkIHJhbmdlLCBzdWJqZWN0IHRvXG4gICAgICAgICBhdmFpbGFibGUgKHZpcnR1YWwpIG1lbW9yeSBvbmx5LiAgRm9yIHRoZSBwdXJwb3NlIG9mIHNoaWZ0XG4gICAgICAgICBhbmQgbWFzayBvcGVyYXRpb25zLCBhIGJpbmFyeSByZXByZXNlbnRhdGlvbiBpcyBhc3N1bWVkLCBhbmRcbiAgICAgICAgIG5lZ2F0aXZlIG51bWJlcnMgYXJlIHJlcHJlc2VudGVkIGluIGEgdmFyaWFudCBvZiAyXCdzXG4gICAgICAgICBjb21wbGVtZW50IHdoaWNoIGdpdmVzIHRoZSBpbGx1c2lvbiBvZiBhbiBpbmZpbml0ZSBzdHJpbmcgb2ZcbiAgICAgICAgIHNpZ24gYml0cyBleHRlbmRpbmcgdG8gdGhlIGxlZnQuXG5cbiAgICAgIEJvb2xlYW5zIChgYGJvb2xgYClcbiAgICAgICAgIFRoZXNlIHJlcHJlc2VudCB0aGUgdHJ1dGggdmFsdWVzIEZhbHNlIGFuZCBUcnVlLiAgVGhlIHR3b1xuICAgICAgICAgb2JqZWN0cyByZXByZXNlbnRpbmcgdGhlIHZhbHVlcyBGYWxzZSBhbmQgVHJ1ZSBhcmUgdGhlIG9ubHlcbiAgICAgICAgIEJvb2xlYW4gb2JqZWN0cy4gVGhlIEJvb2xlYW4gdHlwZSBpcyBhIHN1YnR5cGUgb2YgdGhlIGludGVnZXJcbiAgICAgICAgIHR5cGUsIGFuZCBCb29sZWFuIHZhbHVlcyBiZWhhdmUgbGlrZSB0aGUgdmFsdWVzIDAgYW5kIDEsXG4gICAgICAgICByZXNwZWN0aXZlbHksIGluIGFsbW9zdCBhbGwgY29udGV4dHMsIHRoZSBleGNlcHRpb24gYmVpbmdcbiAgICAgICAgIHRoYXQgd2hlbiBjb252ZXJ0ZWQgdG8gYSBzdHJpbmcsIHRoZSBzdHJpbmdzIGBgIkZhbHNlImBgIG9yXG4gICAgICAgICBgYCJUcnVlImBgIGFyZSByZXR1cm5lZCwgcmVzcGVjdGl2ZWx5LlxuXG4gICAgICBUaGUgcnVsZXMgZm9yIGludGVnZXIgcmVwcmVzZW50YXRpb24gYXJlIGludGVuZGVkIHRvIGdpdmUgdGhlXG4gICAgICBtb3N0IG1lYW5pbmdmdWwgaW50ZXJwcmV0YXRpb24gb2Ygc2hpZnQgYW5kIG1hc2sgb3BlcmF0aW9uc1xuICAgICAgaW52b2x2aW5nIG5lZ2F0aXZlIGludGVnZXJzLlxuXG4gICBgYG51bWJlcnMuUmVhbGBgIChgYGZsb2F0YGApXG4gICAgICBUaGVzZSByZXByZXNlbnQgbWFjaGluZS1sZXZlbCBkb3VibGUgcHJlY2lzaW9uIGZsb2F0aW5nIHBvaW50XG4gICAgICBudW1iZXJzLiBZb3UgYXJlIGF0IHRoZSBtZXJjeSBvZiB0aGUgdW5kZXJseWluZyBtYWNoaW5lXG4gICAgICBhcmNoaXRlY3R1cmUgKGFuZCBDIG9yIEphdmEgaW1wbGVtZW50YXRpb24pIGZvciB0aGUgYWNjZXB0ZWRcbiAgICAgIHJhbmdlIGFuZCBoYW5kbGluZyBvZiBvdmVyZmxvdy4gUHl0aG9uIGRvZXMgbm90IHN1cHBvcnQgc2luZ2xlLVxuICAgICAgcHJlY2lzaW9uIGZsb2F0aW5nIHBvaW50IG51bWJlcnM7IHRoZSBzYXZpbmdzIGluIHByb2Nlc3NvciBhbmRcbiAgICAgIG1lbW9yeSB1c2FnZSB0aGF0IGFyZSB1c3VhbGx5IHRoZSByZWFzb24gZm9yIHVzaW5nIHRoZXNlIGlzXG4gICAgICBkd2FyZmVkIGJ5IHRoZSBvdmVyaGVhZCBvZiB1c2luZyBvYmplY3RzIGluIFB5dGhvbiwgc28gdGhlcmUgaXNcbiAgICAgIG5vIHJlYXNvbiB0byBjb21wbGljYXRlIHRoZSBsYW5ndWFnZSB3aXRoIHR3byBraW5kcyBvZiBmbG9hdGluZ1xuICAgICAgcG9pbnQgbnVtYmVycy5cblxuICAgYGBudW1iZXJzLkNvbXBsZXhgYCAoYGBjb21wbGV4YGApXG4gICAgICBUaGVzZSByZXByZXNlbnQgY29tcGxleCBudW1iZXJzIGFzIGEgcGFpciBvZiBtYWNoaW5lLWxldmVsXG4gICAgICBkb3VibGUgcHJlY2lzaW9uIGZsb2F0aW5nIHBvaW50IG51bWJlcnMuICBUaGUgc2FtZSBjYXZlYXRzIGFwcGx5XG4gICAgICBhcyBmb3IgZmxvYXRpbmcgcG9pbnQgbnVtYmVycy4gVGhlIHJlYWwgYW5kIGltYWdpbmFyeSBwYXJ0cyBvZiBhXG4gICAgICBjb21wbGV4IG51bWJlciBgYHpgYCBjYW4gYmUgcmV0cmlldmVkIHRocm91Z2ggdGhlIHJlYWQtb25seVxuICAgICAgYXR0cmlidXRlcyBgYHoucmVhbGBgIGFuZCBgYHouaW1hZ2BgLlxuXG5TZXF1ZW5jZXNcbiAgIFRoZXNlIHJlcHJlc2VudCBmaW5pdGUgb3JkZXJlZCBzZXRzIGluZGV4ZWQgYnkgbm9uLW5lZ2F0aXZlXG4gICBudW1iZXJzLiBUaGUgYnVpbHQtaW4gZnVuY3Rpb24gYGBsZW4oKWBgIHJldHVybnMgdGhlIG51bWJlciBvZlxuICAgaXRlbXMgb2YgYSBzZXF1ZW5jZS4gV2hlbiB0aGUgbGVuZ3RoIG9mIGEgc2VxdWVuY2UgaXMgKm4qLCB0aGVcbiAgIGluZGV4IHNldCBjb250YWlucyB0aGUgbnVtYmVycyAwLCAxLCAuLi4sICpuKi0xLiAgSXRlbSAqaSogb2ZcbiAgIHNlcXVlbmNlICphKiBpcyBzZWxlY3RlZCBieSBgYGFbaV1gYC5cblxuICAgU2VxdWVuY2VzIGFsc28gc3VwcG9ydCBzbGljaW5nOiBgYGFbaTpqXWBgIHNlbGVjdHMgYWxsIGl0ZW1zIHdpdGhcbiAgIGluZGV4ICprKiBzdWNoIHRoYXQgKmkqIGBgPD1gYCAqayogYGA8YGAgKmoqLiAgV2hlbiB1c2VkIGFzIGFuXG4gICBleHByZXNzaW9uLCBhIHNsaWNlIGlzIGEgc2VxdWVuY2Ugb2YgdGhlIHNhbWUgdHlwZS4gIFRoaXMgaW1wbGllc1xuICAgdGhhdCB0aGUgaW5kZXggc2V0IGlzIHJlbnVtYmVyZWQgc28gdGhhdCBpdCBzdGFydHMgYXQgMC5cblxuICAgU29tZSBzZXF1ZW5jZXMgYWxzbyBzdXBwb3J0ICJleHRlbmRlZCBzbGljaW5nIiB3aXRoIGEgdGhpcmQgInN0ZXAiXG4gICBwYXJhbWV0ZXI6IGBgYVtpOmo6a11gYCBzZWxlY3RzIGFsbCBpdGVtcyBvZiAqYSogd2l0aCBpbmRleCAqeCpcbiAgIHdoZXJlIGBgeCA9IGkgKyBuKmtgYCwgKm4qIGBgPj1gYCBgYDBgYCBhbmQgKmkqIGBgPD1gYCAqeCogYGA8YGBcbiAgICpqKi5cblxuICAgU2VxdWVuY2VzIGFyZSBkaXN0aW5ndWlzaGVkIGFjY29yZGluZyB0byB0aGVpciBtdXRhYmlsaXR5OlxuXG4gICBJbW11dGFibGUgc2VxdWVuY2VzXG4gICAgICBBbiBvYmplY3Qgb2YgYW4gaW1tdXRhYmxlIHNlcXVlbmNlIHR5cGUgY2Fubm90IGNoYW5nZSBvbmNlIGl0IGlzXG4gICAgICBjcmVhdGVkLiAgKElmIHRoZSBvYmplY3QgY29udGFpbnMgcmVmZXJlbmNlcyB0byBvdGhlciBvYmplY3RzLFxuICAgICAgdGhlc2Ugb3RoZXIgb2JqZWN0cyBtYXkgYmUgbXV0YWJsZSBhbmQgbWF5IGJlIGNoYW5nZWQ7IGhvd2V2ZXIsXG4gICAgICB0aGUgY29sbGVjdGlvbiBvZiBvYmplY3RzIGRpcmVjdGx5IHJlZmVyZW5jZWQgYnkgYW4gaW1tdXRhYmxlXG4gICAgICBvYmplY3QgY2Fubm90IGNoYW5nZS4pXG5cbiAgICAgIFRoZSBmb2xsb3dpbmcgdHlwZXMgYXJlIGltbXV0YWJsZSBzZXF1ZW5jZXM6XG5cbiAgICAgIFN0cmluZ3NcbiAgICAgICAgIFRoZSBpdGVtcyBvZiBhIHN0cmluZyBvYmplY3QgYXJlIFVuaWNvZGUgY29kZSB1bml0cy4gIEFcbiAgICAgICAgIFVuaWNvZGUgY29kZSB1bml0IGlzIHJlcHJlc2VudGVkIGJ5IGEgc3RyaW5nIG9iamVjdCBvZiBvbmVcbiAgICAgICAgIGl0ZW0gYW5kIGNhbiBob2xkIGVpdGhlciBhIDE2LWJpdCBvciAzMi1iaXQgdmFsdWVcbiAgICAgICAgIHJlcHJlc2VudGluZyBhIFVuaWNvZGUgb3JkaW5hbCAodGhlIG1heGltdW0gdmFsdWUgZm9yIHRoZVxuICAgICAgICAgb3JkaW5hbCBpcyBnaXZlbiBpbiBgYHN5cy5tYXh1bmljb2RlYGAsIGFuZCBkZXBlbmRzIG9uIGhvd1xuICAgICAgICAgUHl0aG9uIGlzIGNvbmZpZ3VyZWQgYXQgY29tcGlsZSB0aW1lKS4gIFN1cnJvZ2F0ZSBwYWlycyBtYXlcbiAgICAgICAgIGJlIHByZXNlbnQgaW4gdGhlIFVuaWNvZGUgb2JqZWN0LCBhbmQgd2lsbCBiZSByZXBvcnRlZCBhcyB0d29cbiAgICAgICAgIHNlcGFyYXRlIGl0ZW1zLiAgVGhlIGJ1aWx0LWluIGZ1bmN0aW9ucyBgYGNocigpYGAgYW5kXG4gICAgICAgICBgYG9yZCgpYGAgY29udmVydCBiZXR3ZWVuIGNvZGUgdW5pdHMgYW5kIG5vbm5lZ2F0aXZlIGludGVnZXJzXG4gICAgICAgICByZXByZXNlbnRpbmcgdGhlIFVuaWNvZGUgb3JkaW5hbHMgYXMgZGVmaW5lZCBpbiB0aGUgVW5pY29kZVxuICAgICAgICAgU3RhbmRhcmQgMy4wLiBDb252ZXJzaW9uIGZyb20gYW5kIHRvIG90aGVyIGVuY29kaW5ncyBhcmVcbiAgICAgICAgIHBvc3NpYmxlIHRocm91Z2ggdGhlIHN0cmluZyBtZXRob2QgYGBlbmNvZGUoKWBgLlxuXG4gICAgICBUdXBsZXNcbiAgICAgICAgIFRoZSBpdGVtcyBvZiBhIHR1cGxlIGFyZSBhcmJpdHJhcnkgUHl0aG9uIG9iamVjdHMuIFR1cGxlcyBvZlxuICAgICAgICAgdHdvIG9yIG1vcmUgaXRlbXMgYXJlIGZvcm1lZCBieSBjb21tYS1zZXBhcmF0ZWQgbGlzdHMgb2ZcbiAgICAgICAgIGV4cHJlc3Npb25zLiAgQSB0dXBsZSBvZiBvbmUgaXRlbSAoYSBcJ3NpbmdsZXRvblwnKSBjYW4gYmVcbiAgICAgICAgIGZvcm1lZCBieSBhZmZpeGluZyBhIGNvbW1hIHRvIGFuIGV4cHJlc3Npb24gKGFuIGV4cHJlc3Npb24gYnlcbiAgICAgICAgIGl0c2VsZiBkb2VzIG5vdCBjcmVhdGUgYSB0dXBsZSwgc2luY2UgcGFyZW50aGVzZXMgbXVzdCBiZVxuICAgICAgICAgdXNhYmxlIGZvciBncm91cGluZyBvZiBleHByZXNzaW9ucykuICBBbiBlbXB0eSB0dXBsZSBjYW4gYmVcbiAgICAgICAgIGZvcm1lZCBieSBhbiBlbXB0eSBwYWlyIG9mIHBhcmVudGhlc2VzLlxuXG4gICAgICBCeXRlc1xuICAgICAgICAgQSBieXRlcyBvYmplY3QgaXMgYW4gaW1tdXRhYmxlIGFycmF5LiAgVGhlIGl0ZW1zIGFyZSA4LWJpdFxuICAgICAgICAgYnl0ZXMsIHJlcHJlc2VudGVkIGJ5IGludGVnZXJzIGluIHRoZSByYW5nZSAwIDw9IHggPCAyNTYuXG4gICAgICAgICBCeXRlcyBsaXRlcmFscyAobGlrZSBgYGJcJ2FiY1wnYGAgYW5kIHRoZSBidWlsdC1pbiBmdW5jdGlvblxuICAgICAgICAgYGBieXRlcygpYGAgY2FuIGJlIHVzZWQgdG8gY29uc3RydWN0IGJ5dGVzIG9iamVjdHMuICBBbHNvLFxuICAgICAgICAgYnl0ZXMgb2JqZWN0cyBjYW4gYmUgZGVjb2RlZCB0byBzdHJpbmdzIHZpYSB0aGUgYGBkZWNvZGUoKWBgXG4gICAgICAgICBtZXRob2QuXG5cbiAgIE11dGFibGUgc2VxdWVuY2VzXG4gICAgICBNdXRhYmxlIHNlcXVlbmNlcyBjYW4gYmUgY2hhbmdlZCBhZnRlciB0aGV5IGFyZSBjcmVhdGVkLiAgVGhlXG4gICAgICBzdWJzY3JpcHRpb24gYW5kIHNsaWNpbmcgbm90YXRpb25zIGNhbiBiZSB1c2VkIGFzIHRoZSB0YXJnZXQgb2ZcbiAgICAgIGFzc2lnbm1lbnQgYW5kIGBgZGVsYGAgKGRlbGV0ZSkgc3RhdGVtZW50cy5cblxuICAgICAgVGhlcmUgYXJlIGN1cnJlbnRseSB0d28gaW50cmluc2ljIG11dGFibGUgc2VxdWVuY2UgdHlwZXM6XG5cbiAgICAgIExpc3RzXG4gICAgICAgICBUaGUgaXRlbXMgb2YgYSBsaXN0IGFyZSBhcmJpdHJhcnkgUHl0aG9uIG9iamVjdHMuICBMaXN0cyBhcmVcbiAgICAgICAgIGZvcm1lZCBieSBwbGFjaW5nIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgZXhwcmVzc2lvbnMgaW5cbiAgICAgICAgIHNxdWFyZSBicmFja2V0cy4gKE5vdGUgdGhhdCB0aGVyZSBhcmUgbm8gc3BlY2lhbCBjYXNlcyBuZWVkZWRcbiAgICAgICAgIHRvIGZvcm0gbGlzdHMgb2YgbGVuZ3RoIDAgb3IgMS4pXG5cbiAgICAgIEJ5dGUgQXJyYXlzXG4gICAgICAgICBBIGJ5dGVhcnJheSBvYmplY3QgaXMgYSBtdXRhYmxlIGFycmF5LiBUaGV5IGFyZSBjcmVhdGVkIGJ5XG4gICAgICAgICB0aGUgYnVpbHQtaW4gYGBieXRlYXJyYXkoKWBgIGNvbnN0cnVjdG9yLiAgQXNpZGUgZnJvbSBiZWluZ1xuICAgICAgICAgbXV0YWJsZSAoYW5kIGhlbmNlIHVuaGFzaGFibGUpLCBieXRlIGFycmF5cyBvdGhlcndpc2UgcHJvdmlkZVxuICAgICAgICAgdGhlIHNhbWUgaW50ZXJmYWNlIGFuZCBmdW5jdGlvbmFsaXR5IGFzIGltbXV0YWJsZSBieXRlc1xuICAgICAgICAgb2JqZWN0cy5cblxuICAgICAgVGhlIGV4dGVuc2lvbiBtb2R1bGUgYGBhcnJheWBgIHByb3ZpZGVzIGFuIGFkZGl0aW9uYWwgZXhhbXBsZSBvZlxuICAgICAgYSBtdXRhYmxlIHNlcXVlbmNlIHR5cGUsIGFzIGRvZXMgdGhlIGBgY29sbGVjdGlvbnNgYCBtb2R1bGUuXG5cblNldCB0eXBlc1xuICAgVGhlc2UgcmVwcmVzZW50IHVub3JkZXJlZCwgZmluaXRlIHNldHMgb2YgdW5pcXVlLCBpbW11dGFibGVcbiAgIG9iamVjdHMuIEFzIHN1Y2gsIHRoZXkgY2Fubm90IGJlIGluZGV4ZWQgYnkgYW55IHN1YnNjcmlwdC4gSG93ZXZlcixcbiAgIHRoZXkgY2FuIGJlIGl0ZXJhdGVkIG92ZXIsIGFuZCB0aGUgYnVpbHQtaW4gZnVuY3Rpb24gYGBsZW4oKWBgXG4gICByZXR1cm5zIHRoZSBudW1iZXIgb2YgaXRlbXMgaW4gYSBzZXQuIENvbW1vbiB1c2VzIGZvciBzZXRzIGFyZSBmYXN0XG4gICBtZW1iZXJzaGlwIHRlc3RpbmcsIHJlbW92aW5nIGR1cGxpY2F0ZXMgZnJvbSBhIHNlcXVlbmNlLCBhbmRcbiAgIGNvbXB1dGluZyBtYXRoZW1hdGljYWwgb3BlcmF0aW9ucyBzdWNoIGFzIGludGVyc2VjdGlvbiwgdW5pb24sXG4gICBkaWZmZXJlbmNlLCBhbmQgc3ltbWV0cmljIGRpZmZlcmVuY2UuXG5cbiAgIEZvciBzZXQgZWxlbWVudHMsIHRoZSBzYW1lIGltbXV0YWJpbGl0eSBydWxlcyBhcHBseSBhcyBmb3JcbiAgIGRpY3Rpb25hcnkga2V5cy4gTm90ZSB0aGF0IG51bWVyaWMgdHlwZXMgb2JleSB0aGUgbm9ybWFsIHJ1bGVzIGZvclxuICAgbnVtZXJpYyBjb21wYXJpc29uOiBpZiB0d28gbnVtYmVycyBjb21wYXJlIGVxdWFsIChlLmcuLCBgYDFgYCBhbmRcbiAgIGBgMS4wYGApLCBvbmx5IG9uZSBvZiB0aGVtIGNhbiBiZSBjb250YWluZWQgaW4gYSBzZXQuXG5cbiAgIFRoZXJlIGFyZSBjdXJyZW50bHkgdHdvIGludHJpbnNpYyBzZXQgdHlwZXM6XG5cbiAgIFNldHNcbiAgICAgIFRoZXNlIHJlcHJlc2VudCBhIG11dGFibGUgc2V0LiBUaGV5IGFyZSBjcmVhdGVkIGJ5IHRoZSBidWlsdC1pblxuICAgICAgYGBzZXQoKWBgIGNvbnN0cnVjdG9yIGFuZCBjYW4gYmUgbW9kaWZpZWQgYWZ0ZXJ3YXJkcyBieSBzZXZlcmFsXG4gICAgICBtZXRob2RzLCBzdWNoIGFzIGBgYWRkKClgYC5cblxuICAgRnJvemVuIHNldHNcbiAgICAgIFRoZXNlIHJlcHJlc2VudCBhbiBpbW11dGFibGUgc2V0LiAgVGhleSBhcmUgY3JlYXRlZCBieSB0aGVcbiAgICAgIGJ1aWx0LWluIGBgZnJvemVuc2V0KClgYCBjb25zdHJ1Y3Rvci4gIEFzIGEgZnJvemVuc2V0IGlzXG4gICAgICBpbW11dGFibGUgYW5kICpoYXNoYWJsZSosIGl0IGNhbiBiZSB1c2VkIGFnYWluIGFzIGFuIGVsZW1lbnQgb2ZcbiAgICAgIGFub3RoZXIgc2V0LCBvciBhcyBhIGRpY3Rpb25hcnkga2V5LlxuXG5NYXBwaW5nc1xuICAgVGhlc2UgcmVwcmVzZW50IGZpbml0ZSBzZXRzIG9mIG9iamVjdHMgaW5kZXhlZCBieSBhcmJpdHJhcnkgaW5kZXhcbiAgIHNldHMuIFRoZSBzdWJzY3JpcHQgbm90YXRpb24gYGBhW2tdYGAgc2VsZWN0cyB0aGUgaXRlbSBpbmRleGVkIGJ5XG4gICBgYGtgYCBmcm9tIHRoZSBtYXBwaW5nIGBgYWBgOyB0aGlzIGNhbiBiZSB1c2VkIGluIGV4cHJlc3Npb25zIGFuZFxuICAgYXMgdGhlIHRhcmdldCBvZiBhc3NpZ25tZW50cyBvciBgYGRlbGBgIHN0YXRlbWVudHMuIFRoZSBidWlsdC1pblxuICAgZnVuY3Rpb24gYGBsZW4oKWBgIHJldHVybnMgdGhlIG51bWJlciBvZiBpdGVtcyBpbiBhIG1hcHBpbmcuXG5cbiAgIFRoZXJlIGlzIGN1cnJlbnRseSBhIHNpbmdsZSBpbnRyaW5zaWMgbWFwcGluZyB0eXBlOlxuXG4gICBEaWN0aW9uYXJpZXNcbiAgICAgIFRoZXNlIHJlcHJlc2VudCBmaW5pdGUgc2V0cyBvZiBvYmplY3RzIGluZGV4ZWQgYnkgbmVhcmx5XG4gICAgICBhcmJpdHJhcnkgdmFsdWVzLiAgVGhlIG9ubHkgdHlwZXMgb2YgdmFsdWVzIG5vdCBhY2NlcHRhYmxlIGFzXG4gICAgICBrZXlzIGFyZSB2YWx1ZXMgY29udGFpbmluZyBsaXN0cyBvciBkaWN0aW9uYXJpZXMgb3Igb3RoZXJcbiAgICAgIG11dGFibGUgdHlwZXMgdGhhdCBhcmUgY29tcGFyZWQgYnkgdmFsdWUgcmF0aGVyIHRoYW4gYnkgb2JqZWN0XG4gICAgICBpZGVudGl0eSwgdGhlIHJlYXNvbiBiZWluZyB0aGF0IHRoZSBlZmZpY2llbnQgaW1wbGVtZW50YXRpb24gb2ZcbiAgICAgIGRpY3Rpb25hcmllcyByZXF1aXJlcyBhIGtleVwncyBoYXNoIHZhbHVlIHRvIHJlbWFpbiBjb25zdGFudC5cbiAgICAgIE51bWVyaWMgdHlwZXMgdXNlZCBmb3Iga2V5cyBvYmV5IHRoZSBub3JtYWwgcnVsZXMgZm9yIG51bWVyaWNcbiAgICAgIGNvbXBhcmlzb246IGlmIHR3byBudW1iZXJzIGNvbXBhcmUgZXF1YWwgKGUuZy4sIGBgMWBgIGFuZFxuICAgICAgYGAxLjBgYCkgdGhlbiB0aGV5IGNhbiBiZSB1c2VkIGludGVyY2hhbmdlYWJseSB0byBpbmRleCB0aGUgc2FtZVxuICAgICAgZGljdGlvbmFyeSBlbnRyeS5cblxuICAgICAgRGljdGlvbmFyaWVzIGFyZSBtdXRhYmxlOyB0aGV5IGNhbiBiZSBjcmVhdGVkIGJ5IHRoZSBgYHsuLi59YGBcbiAgICAgIG5vdGF0aW9uIChzZWUgc2VjdGlvbiAqRGljdGlvbmFyeSBkaXNwbGF5cyopLlxuXG4gICAgICBUaGUgZXh0ZW5zaW9uIG1vZHVsZXMgYGBkYm0ubmRibWBgIGFuZCBgYGRibS5nbnVgYCBwcm92aWRlXG4gICAgICBhZGRpdGlvbmFsIGV4YW1wbGVzIG9mIG1hcHBpbmcgdHlwZXMsIGFzIGRvZXMgdGhlXG4gICAgICBgYGNvbGxlY3Rpb25zYGAgbW9kdWxlLlxuXG5DYWxsYWJsZSB0eXBlc1xuICAgVGhlc2UgYXJlIHRoZSB0eXBlcyB0byB3aGljaCB0aGUgZnVuY3Rpb24gY2FsbCBvcGVyYXRpb24gKHNlZVxuICAgc2VjdGlvbiAqQ2FsbHMqKSBjYW4gYmUgYXBwbGllZDpcblxuICAgVXNlci1kZWZpbmVkIGZ1bmN0aW9uc1xuICAgICAgQSB1c2VyLWRlZmluZWQgZnVuY3Rpb24gb2JqZWN0IGlzIGNyZWF0ZWQgYnkgYSBmdW5jdGlvblxuICAgICAgZGVmaW5pdGlvbiAoc2VlIHNlY3Rpb24gKkZ1bmN0aW9uIGRlZmluaXRpb25zKikuICBJdCBzaG91bGQgYmVcbiAgICAgIGNhbGxlZCB3aXRoIGFuIGFyZ3VtZW50IGxpc3QgY29udGFpbmluZyB0aGUgc2FtZSBudW1iZXIgb2YgaXRlbXNcbiAgICAgIGFzIHRoZSBmdW5jdGlvblwncyBmb3JtYWwgcGFyYW1ldGVyIGxpc3QuXG5cbiAgICAgIFNwZWNpYWwgYXR0cmlidXRlczpcblxuICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLStcbiAgICAgIHwgQXR0cmlidXRlICAgICAgICAgICAgICAgICB8IE1lYW5pbmcgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICB8XG4gICAgICArPT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09K1xuICAgICAgfCBgYF9fZG9jX19gYCAgICAgICAgICAgICAgIHwgVGhlIGZ1bmN0aW9uXCdzIGRvY3VtZW50YXRpb24gICAgfCBXcml0YWJsZSAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBzdHJpbmcsIG9yIGBgTm9uZWBgIGlmICAgICAgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgdW5hdmFpbGFibGUgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19uYW1lX19gYCAgICAgICAgICAgICAgfCBUaGUgZnVuY3Rpb25cJ3MgbmFtZSAgICAgICAgICAgICB8IFdyaXRhYmxlICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19tb2R1bGVfX2BgICAgICAgICAgICAgfCBUaGUgbmFtZSBvZiB0aGUgbW9kdWxlIHRoZSAgICAgIHwgV3JpdGFibGUgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgZnVuY3Rpb24gd2FzIGRlZmluZWQgaW4sIG9yICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgTm9uZWBgIGlmIHVuYXZhaWxhYmxlLiAgICAgICAgfCAgICAgICAgICAgICB8XG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBgYF9fZGVmYXVsdHNfX2BgICAgICAgICAgIHwgQSB0dXBsZSBjb250YWluaW5nIGRlZmF1bHQgICAgICB8IFdyaXRhYmxlICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGFyZ3VtZW50IHZhbHVlcyBmb3IgdGhvc2UgICAgICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhcmd1bWVudHMgdGhhdCBoYXZlIGRlZmF1bHRzLCAgIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb3IgYGBOb25lYGAgaWYgbm8gYXJndW1lbnRzICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGhhdmUgYSBkZWZhdWx0IHZhbHVlICAgICAgICAgICAgfCAgICAgICAgICAgICB8XG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBgYF9fY29kZV9fYGAgICAgICAgICAgICAgIHwgVGhlIGNvZGUgb2JqZWN0IHJlcHJlc2VudGluZyAgICB8IFdyaXRhYmxlICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHRoZSBjb21waWxlZCBmdW5jdGlvbiBib2R5LiAgICAgfCAgICAgICAgICAgICB8XG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBgYF9fZ2xvYmFsc19fYGAgICAgICAgICAgIHwgQSByZWZlcmVuY2UgdG8gdGhlIGRpY3Rpb25hcnkgICB8IFJlYWQtb25seSAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHRoYXQgaG9sZHMgdGhlIGZ1bmN0aW9uXCdzICAgICAgIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgZ2xvYmFsIHZhcmlhYmxlcyAtLS0gdGhlIGdsb2JhbCB8ICAgICAgICAgICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IG5hbWVzcGFjZSBvZiB0aGUgbW9kdWxlIGluICAgICAgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB3aGljaCB0aGUgZnVuY3Rpb24gd2FzIGRlZmluZWQuIHwgICAgICAgICAgICAgfFxuICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLStcbiAgICAgIHwgYGBfX2RpY3RfX2BgICAgICAgICAgICAgICB8IFRoZSBuYW1lc3BhY2Ugc3VwcG9ydGluZyAgICAgICAgfCBXcml0YWJsZSAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBhcmJpdHJhcnkgZnVuY3Rpb24gYXR0cmlidXRlcy4gIHwgICAgICAgICAgICAgfFxuICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLStcbiAgICAgIHwgYGBfX2Nsb3N1cmVfX2BgICAgICAgICAgICB8IGBgTm9uZWBgIG9yIGEgdHVwbGUgb2YgY2VsbHMgICAgfCBSZWFkLW9ubHkgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB0aGF0IGNvbnRhaW4gYmluZGluZ3MgZm9yIHRoZSAgIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgZnVuY3Rpb25cJ3MgZnJlZSB2YXJpYWJsZXMuICAgICAgfCAgICAgICAgICAgICB8XG4gICAgICArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tK1xuICAgICAgfCBgYF9fYW5ub3RhdGlvbnNfX2BgICAgICAgIHwgQSBkaWN0IGNvbnRhaW5pbmcgYW5ub3RhdGlvbnMgICB8IFdyaXRhYmxlICAgIHxcbiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICB8IG9mIHBhcmFtZXRlcnMuICBUaGUga2V5cyBvZiB0aGUgfCAgICAgICAgICAgICB8XG4gICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBkaWN0IGFyZSB0aGUgcGFyYW1ldGVyIG5hbWVzLCAgIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb3IgYGBcJ3JldHVyblwnYGAgZm9yIHRoZSByZXR1cm4gIHwgICAgICAgICAgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYW5ub3RhdGlvbiwgaWYgcHJvdmlkZWQuICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG4gICAgICB8IGBgX19rd2RlZmF1bHRzX19gYCAgICAgICAgfCBBIGRpY3QgY29udGFpbmluZyBkZWZhdWx0cyBmb3IgIHwgV3JpdGFibGUgICAgfFxuICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwga2V5d29yZC1vbmx5IHBhcmFtZXRlcnMuICAgICAgICB8ICAgICAgICAgICAgIHxcbiAgICAgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0rXG5cbiAgICAgIE1vc3Qgb2YgdGhlIGF0dHJpYnV0ZXMgbGFiZWxsZWQgIldyaXRhYmxlIiBjaGVjayB0aGUgdHlwZSBvZiB0aGVcbiAgICAgIGFzc2lnbmVkIHZhbHVlLlxuXG4gICAgICBGdW5jdGlvbiBvYmplY3RzIGFsc28gc3VwcG9ydCBnZXR0aW5nIGFuZCBzZXR0aW5nIGFyYml0cmFyeVxuICAgICAgYXR0cmlidXRlcywgd2hpY2ggY2FuIGJlIHVzZWQsIGZvciBleGFtcGxlLCB0byBhdHRhY2ggbWV0YWRhdGFcbiAgICAgIHRvIGZ1bmN0aW9ucy4gIFJlZ3VsYXIgYXR0cmlidXRlIGRvdC1ub3RhdGlvbiBpcyB1c2VkIHRvIGdldCBhbmRcbiAgICAgIHNldCBzdWNoIGF0dHJpYnV0ZXMuICpOb3RlIHRoYXQgdGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gb25seVxuICAgICAgc3VwcG9ydHMgZnVuY3Rpb24gYXR0cmlidXRlcyBvbiB1c2VyLWRlZmluZWQgZnVuY3Rpb25zLiBGdW5jdGlvblxuICAgICAgYXR0cmlidXRlcyBvbiBidWlsdC1pbiBmdW5jdGlvbnMgbWF5IGJlIHN1cHBvcnRlZCBpbiB0aGVcbiAgICAgIGZ1dHVyZS4qXG5cbiAgICAgIEFkZGl0aW9uYWwgaW5mb3JtYXRpb24gYWJvdXQgYSBmdW5jdGlvblwncyBkZWZpbml0aW9uIGNhbiBiZVxuICAgICAgcmV0cmlldmVkIGZyb20gaXRzIGNvZGUgb2JqZWN0OyBzZWUgdGhlIGRlc2NyaXB0aW9uIG9mIGludGVybmFsXG4gICAgICB0eXBlcyBiZWxvdy5cblxuICAgSW5zdGFuY2UgbWV0aG9kc1xuICAgICAgQW4gaW5zdGFuY2UgbWV0aG9kIG9iamVjdCBjb21iaW5lcyBhIGNsYXNzLCBhIGNsYXNzIGluc3RhbmNlIGFuZFxuICAgICAgYW55IGNhbGxhYmxlIG9iamVjdCAobm9ybWFsbHkgYSB1c2VyLWRlZmluZWQgZnVuY3Rpb24pLlxuXG4gICAgICBTcGVjaWFsIHJlYWQtb25seSBhdHRyaWJ1dGVzOiBgYF9fc2VsZl9fYGAgaXMgdGhlIGNsYXNzIGluc3RhbmNlXG4gICAgICBvYmplY3QsIGBgX19mdW5jX19gYCBpcyB0aGUgZnVuY3Rpb24gb2JqZWN0OyBgYF9fZG9jX19gYCBpcyB0aGVcbiAgICAgIG1ldGhvZFwncyBkb2N1bWVudGF0aW9uIChzYW1lIGFzIGBgX19mdW5jX18uX19kb2NfX2BgKTtcbiAgICAgIGBgX19uYW1lX19gYCBpcyB0aGUgbWV0aG9kIG5hbWUgKHNhbWUgYXMgYGBfX2Z1bmNfXy5fX25hbWVfX2BgKTtcbiAgICAgIGBgX19tb2R1bGVfX2BgIGlzIHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgdGhlIG1ldGhvZCB3YXMgZGVmaW5lZFxuICAgICAgaW4sIG9yIGBgTm9uZWBgIGlmIHVuYXZhaWxhYmxlLlxuXG4gICAgICBNZXRob2RzIGFsc28gc3VwcG9ydCBhY2Nlc3NpbmcgKGJ1dCBub3Qgc2V0dGluZykgdGhlIGFyYml0cmFyeVxuICAgICAgZnVuY3Rpb24gYXR0cmlidXRlcyBvbiB0aGUgdW5kZXJseWluZyBmdW5jdGlvbiBvYmplY3QuXG5cbiAgICAgIFVzZXItZGVmaW5lZCBtZXRob2Qgb2JqZWN0cyBtYXkgYmUgY3JlYXRlZCB3aGVuIGdldHRpbmcgYW5cbiAgICAgIGF0dHJpYnV0ZSBvZiBhIGNsYXNzIChwZXJoYXBzIHZpYSBhbiBpbnN0YW5jZSBvZiB0aGF0IGNsYXNzKSwgaWZcbiAgICAgIHRoYXQgYXR0cmlidXRlIGlzIGEgdXNlci1kZWZpbmVkIGZ1bmN0aW9uIG9iamVjdCBvciBhIGNsYXNzXG4gICAgICBtZXRob2Qgb2JqZWN0LlxuXG4gICAgICBXaGVuIGFuIGluc3RhbmNlIG1ldGhvZCBvYmplY3QgaXMgY3JlYXRlZCBieSByZXRyaWV2aW5nIGEgdXNlci1cbiAgICAgIGRlZmluZWQgZnVuY3Rpb24gb2JqZWN0IGZyb20gYSBjbGFzcyB2aWEgb25lIG9mIGl0cyBpbnN0YW5jZXMsXG4gICAgICBpdHMgYGBfX3NlbGZfX2BgIGF0dHJpYnV0ZSBpcyB0aGUgaW5zdGFuY2UsIGFuZCB0aGUgbWV0aG9kXG4gICAgICBvYmplY3QgaXMgc2FpZCB0byBiZSBib3VuZC4gIFRoZSBuZXcgbWV0aG9kXCdzIGBgX19mdW5jX19gYFxuICAgICAgYXR0cmlidXRlIGlzIHRoZSBvcmlnaW5hbCBmdW5jdGlvbiBvYmplY3QuXG5cbiAgICAgIFdoZW4gYSB1c2VyLWRlZmluZWQgbWV0aG9kIG9iamVjdCBpcyBjcmVhdGVkIGJ5IHJldHJpZXZpbmdcbiAgICAgIGFub3RoZXIgbWV0aG9kIG9iamVjdCBmcm9tIGEgY2xhc3Mgb3IgaW5zdGFuY2UsIHRoZSBiZWhhdmlvdXIgaXNcbiAgICAgIHRoZSBzYW1lIGFzIGZvciBhIGZ1bmN0aW9uIG9iamVjdCwgZXhjZXB0IHRoYXQgdGhlIGBgX19mdW5jX19gYFxuICAgICAgYXR0cmlidXRlIG9mIHRoZSBuZXcgaW5zdGFuY2UgaXMgbm90IHRoZSBvcmlnaW5hbCBtZXRob2Qgb2JqZWN0XG4gICAgICBidXQgaXRzIGBgX19mdW5jX19gYCBhdHRyaWJ1dGUuXG5cbiAgICAgIFdoZW4gYW4gaW5zdGFuY2UgbWV0aG9kIG9iamVjdCBpcyBjcmVhdGVkIGJ5IHJldHJpZXZpbmcgYSBjbGFzc1xuICAgICAgbWV0aG9kIG9iamVjdCBmcm9tIGEgY2xhc3Mgb3IgaW5zdGFuY2UsIGl0cyBgYF9fc2VsZl9fYGBcbiAgICAgIGF0dHJpYnV0ZSBpcyB0aGUgY2xhc3MgaXRzZWxmLCBhbmQgaXRzIGBgX19mdW5jX19gYCBhdHRyaWJ1dGUgaXNcbiAgICAgIHRoZSBmdW5jdGlvbiBvYmplY3QgdW5kZXJseWluZyB0aGUgY2xhc3MgbWV0aG9kLlxuXG4gICAgICBXaGVuIGFuIGluc3RhbmNlIG1ldGhvZCBvYmplY3QgaXMgY2FsbGVkLCB0aGUgdW5kZXJseWluZ1xuICAgICAgZnVuY3Rpb24gKGBgX19mdW5jX19gYCkgaXMgY2FsbGVkLCBpbnNlcnRpbmcgdGhlIGNsYXNzIGluc3RhbmNlXG4gICAgICAoYGBfX3NlbGZfX2BgKSBpbiBmcm9udCBvZiB0aGUgYXJndW1lbnQgbGlzdC4gIEZvciBpbnN0YW5jZSxcbiAgICAgIHdoZW4gYGBDYGAgaXMgYSBjbGFzcyB3aGljaCBjb250YWlucyBhIGRlZmluaXRpb24gZm9yIGEgZnVuY3Rpb25cbiAgICAgIGBgZigpYGAsIGFuZCBgYHhgYCBpcyBhbiBpbnN0YW5jZSBvZiBgYENgYCwgY2FsbGluZyBgYHguZigxKWBgXG4gICAgICBpcyBlcXVpdmFsZW50IHRvIGNhbGxpbmcgYGBDLmYoeCwgMSlgYC5cblxuICAgICAgV2hlbiBhbiBpbnN0YW5jZSBtZXRob2Qgb2JqZWN0IGlzIGRlcml2ZWQgZnJvbSBhIGNsYXNzIG1ldGhvZFxuICAgICAgb2JqZWN0LCB0aGUgImNsYXNzIGluc3RhbmNlIiBzdG9yZWQgaW4gYGBfX3NlbGZfX2BgIHdpbGxcbiAgICAgIGFjdHVhbGx5IGJlIHRoZSBjbGFzcyBpdHNlbGYsIHNvIHRoYXQgY2FsbGluZyBlaXRoZXIgYGB4LmYoMSlgYFxuICAgICAgb3IgYGBDLmYoMSlgYCBpcyBlcXVpdmFsZW50IHRvIGNhbGxpbmcgYGBmKEMsMSlgYCB3aGVyZSBgYGZgYCBpc1xuICAgICAgdGhlIHVuZGVybHlpbmcgZnVuY3Rpb24uXG5cbiAgICAgIE5vdGUgdGhhdCB0aGUgdHJhbnNmb3JtYXRpb24gZnJvbSBmdW5jdGlvbiBvYmplY3QgdG8gaW5zdGFuY2VcbiAgICAgIG1ldGhvZCBvYmplY3QgaGFwcGVucyBlYWNoIHRpbWUgdGhlIGF0dHJpYnV0ZSBpcyByZXRyaWV2ZWQgZnJvbVxuICAgICAgdGhlIGluc3RhbmNlLiAgSW4gc29tZSBjYXNlcywgYSBmcnVpdGZ1bCBvcHRpbWl6YXRpb24gaXMgdG9cbiAgICAgIGFzc2lnbiB0aGUgYXR0cmlidXRlIHRvIGEgbG9jYWwgdmFyaWFibGUgYW5kIGNhbGwgdGhhdCBsb2NhbFxuICAgICAgdmFyaWFibGUuIEFsc28gbm90aWNlIHRoYXQgdGhpcyB0cmFuc2Zvcm1hdGlvbiBvbmx5IGhhcHBlbnMgZm9yXG4gICAgICB1c2VyLWRlZmluZWQgZnVuY3Rpb25zOyBvdGhlciBjYWxsYWJsZSBvYmplY3RzIChhbmQgYWxsIG5vbi1cbiAgICAgIGNhbGxhYmxlIG9iamVjdHMpIGFyZSByZXRyaWV2ZWQgd2l0aG91dCB0cmFuc2Zvcm1hdGlvbi4gIEl0IGlzXG4gICAgICBhbHNvIGltcG9ydGFudCB0byBub3RlIHRoYXQgdXNlci1kZWZpbmVkIGZ1bmN0aW9ucyB3aGljaCBhcmVcbiAgICAgIGF0dHJpYnV0ZXMgb2YgYSBjbGFzcyBpbnN0YW5jZSBhcmUgbm90IGNvbnZlcnRlZCB0byBib3VuZFxuICAgICAgbWV0aG9kczsgdGhpcyAqb25seSogaGFwcGVucyB3aGVuIHRoZSBmdW5jdGlvbiBpcyBhbiBhdHRyaWJ1dGVcbiAgICAgIG9mIHRoZSBjbGFzcy5cblxuICAgR2VuZXJhdG9yIGZ1bmN0aW9uc1xuICAgICAgQSBmdW5jdGlvbiBvciBtZXRob2Qgd2hpY2ggdXNlcyB0aGUgYGB5aWVsZGBgIHN0YXRlbWVudCAoc2VlXG4gICAgICBzZWN0aW9uICpUaGUgeWllbGQgc3RhdGVtZW50KikgaXMgY2FsbGVkIGEgKmdlbmVyYXRvciBmdW5jdGlvbiouXG4gICAgICBTdWNoIGEgZnVuY3Rpb24sIHdoZW4gY2FsbGVkLCBhbHdheXMgcmV0dXJucyBhbiBpdGVyYXRvciBvYmplY3RcbiAgICAgIHdoaWNoIGNhbiBiZSB1c2VkIHRvIGV4ZWN1dGUgdGhlIGJvZHkgb2YgdGhlIGZ1bmN0aW9uOiAgY2FsbGluZ1xuICAgICAgdGhlIGl0ZXJhdG9yXCdzIGBgX19uZXh0X18oKWBgIG1ldGhvZCB3aWxsIGNhdXNlIHRoZSBmdW5jdGlvbiB0b1xuICAgICAgZXhlY3V0ZSB1bnRpbCBpdCBwcm92aWRlcyBhIHZhbHVlIHVzaW5nIHRoZSBgYHlpZWxkYGAgc3RhdGVtZW50LlxuICAgICAgV2hlbiB0aGUgZnVuY3Rpb24gZXhlY3V0ZXMgYSBgYHJldHVybmBgIHN0YXRlbWVudCBvciBmYWxscyBvZmZcbiAgICAgIHRoZSBlbmQsIGEgYGBTdG9wSXRlcmF0aW9uYGAgZXhjZXB0aW9uIGlzIHJhaXNlZCBhbmQgdGhlXG4gICAgICBpdGVyYXRvciB3aWxsIGhhdmUgcmVhY2hlZCB0aGUgZW5kIG9mIHRoZSBzZXQgb2YgdmFsdWVzIHRvIGJlXG4gICAgICByZXR1cm5lZC5cblxuICAgQnVpbHQtaW4gZnVuY3Rpb25zXG4gICAgICBBIGJ1aWx0LWluIGZ1bmN0aW9uIG9iamVjdCBpcyBhIHdyYXBwZXIgYXJvdW5kIGEgQyBmdW5jdGlvbi5cbiAgICAgIEV4YW1wbGVzIG9mIGJ1aWx0LWluIGZ1bmN0aW9ucyBhcmUgYGBsZW4oKWBgIGFuZCBgYG1hdGguc2luKClgYFxuICAgICAgKGBgbWF0aGBgIGlzIGEgc3RhbmRhcmQgYnVpbHQtaW4gbW9kdWxlKS4gVGhlIG51bWJlciBhbmQgdHlwZSBvZlxuICAgICAgdGhlIGFyZ3VtZW50cyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgQyBmdW5jdGlvbi4gU3BlY2lhbCByZWFkLVxuICAgICAgb25seSBhdHRyaWJ1dGVzOiBgYF9fZG9jX19gYCBpcyB0aGUgZnVuY3Rpb25cJ3MgZG9jdW1lbnRhdGlvblxuICAgICAgc3RyaW5nLCBvciBgYE5vbmVgYCBpZiB1bmF2YWlsYWJsZTsgYGBfX25hbWVfX2BgIGlzIHRoZVxuICAgICAgZnVuY3Rpb25cJ3MgbmFtZTsgYGBfX3NlbGZfX2BgIGlzIHNldCB0byBgYE5vbmVgYCAoYnV0IHNlZSB0aGVcbiAgICAgIG5leHQgaXRlbSk7IGBgX19tb2R1bGVfX2BgIGlzIHRoZSBuYW1lIG9mIHRoZSBtb2R1bGUgdGhlXG4gICAgICBmdW5jdGlvbiB3YXMgZGVmaW5lZCBpbiBvciBgYE5vbmVgYCBpZiB1bmF2YWlsYWJsZS5cblxuICAgQnVpbHQtaW4gbWV0aG9kc1xuICAgICAgVGhpcyBpcyByZWFsbHkgYSBkaWZmZXJlbnQgZGlzZ3Vpc2Ugb2YgYSBidWlsdC1pbiBmdW5jdGlvbiwgdGhpc1xuICAgICAgdGltZSBjb250YWluaW5nIGFuIG9iamVjdCBwYXNzZWQgdG8gdGhlIEMgZnVuY3Rpb24gYXMgYW5cbiAgICAgIGltcGxpY2l0IGV4dHJhIGFyZ3VtZW50LiAgQW4gZXhhbXBsZSBvZiBhIGJ1aWx0LWluIG1ldGhvZCBpc1xuICAgICAgYGBhbGlzdC5hcHBlbmQoKWBgLCBhc3N1bWluZyAqYWxpc3QqIGlzIGEgbGlzdCBvYmplY3QuIEluIHRoaXNcbiAgICAgIGNhc2UsIHRoZSBzcGVjaWFsIHJlYWQtb25seSBhdHRyaWJ1dGUgYGBfX3NlbGZfX2BgIGlzIHNldCB0byB0aGVcbiAgICAgIG9iamVjdCBkZW5vdGVkIGJ5ICphbGlzdCouXG5cbiAgIENsYXNzZXNcbiAgICAgIENsYXNzZXMgYXJlIGNhbGxhYmxlLiAgVGhlc2Ugb2JqZWN0cyBub3JtYWxseSBhY3QgYXMgZmFjdG9yaWVzXG4gICAgICBmb3IgbmV3IGluc3RhbmNlcyBvZiB0aGVtc2VsdmVzLCBidXQgdmFyaWF0aW9ucyBhcmUgcG9zc2libGUgZm9yXG4gICAgICBjbGFzcyB0eXBlcyB0aGF0IG92ZXJyaWRlIGBgX19uZXdfXygpYGAuICBUaGUgYXJndW1lbnRzIG9mIHRoZVxuICAgICAgY2FsbCBhcmUgcGFzc2VkIHRvIGBgX19uZXdfXygpYGAgYW5kLCBpbiB0aGUgdHlwaWNhbCBjYXNlLCB0b1xuICAgICAgYGBfX2luaXRfXygpYGAgdG8gaW5pdGlhbGl6ZSB0aGUgbmV3IGluc3RhbmNlLlxuXG4gICBDbGFzcyBJbnN0YW5jZXNcbiAgICAgIEluc3RhbmNlcyBvZiBhcmJpdHJhcnkgY2xhc3NlcyBjYW4gYmUgbWFkZSBjYWxsYWJsZSBieSBkZWZpbmluZ1xuICAgICAgYSBgYF9fY2FsbF9fKClgYCBtZXRob2QgaW4gdGhlaXIgY2xhc3MuXG5cbk1vZHVsZXNcbiAgIE1vZHVsZXMgYXJlIGltcG9ydGVkIGJ5IHRoZSBgYGltcG9ydGBgIHN0YXRlbWVudCAoc2VlIHNlY3Rpb24gKlRoZVxuICAgaW1wb3J0IHN0YXRlbWVudCopLiBBIG1vZHVsZSBvYmplY3QgaGFzIGEgbmFtZXNwYWNlIGltcGxlbWVudGVkIGJ5XG4gICBhIGRpY3Rpb25hcnkgb2JqZWN0ICh0aGlzIGlzIHRoZSBkaWN0aW9uYXJ5IHJlZmVyZW5jZWQgYnkgdGhlXG4gICBfX2dsb2JhbHNfXyBhdHRyaWJ1dGUgb2YgZnVuY3Rpb25zIGRlZmluZWQgaW4gdGhlIG1vZHVsZSkuXG4gICBBdHRyaWJ1dGUgcmVmZXJlbmNlcyBhcmUgdHJhbnNsYXRlZCB0byBsb29rdXBzIGluIHRoaXMgZGljdGlvbmFyeSxcbiAgIGUuZy4sIGBgbS54YGAgaXMgZXF1aXZhbGVudCB0byBgYG0uX19kaWN0X19bIngiXWBgLiBBIG1vZHVsZSBvYmplY3RcbiAgIGRvZXMgbm90IGNvbnRhaW4gdGhlIGNvZGUgb2JqZWN0IHVzZWQgdG8gaW5pdGlhbGl6ZSB0aGUgbW9kdWxlXG4gICAoc2luY2UgaXQgaXNuXCd0IG5lZWRlZCBvbmNlIHRoZSBpbml0aWFsaXphdGlvbiBpcyBkb25lKS5cblxuICAgQXR0cmlidXRlIGFzc2lnbm1lbnQgdXBkYXRlcyB0aGUgbW9kdWxlXCdzIG5hbWVzcGFjZSBkaWN0aW9uYXJ5LFxuICAgZS5nLiwgYGBtLnggPSAxYGAgaXMgZXF1aXZhbGVudCB0byBgYG0uX19kaWN0X19bIngiXSA9IDFgYC5cblxuICAgU3BlY2lhbCByZWFkLW9ubHkgYXR0cmlidXRlOiBgYF9fZGljdF9fYGAgaXMgdGhlIG1vZHVsZVwncyBuYW1lc3BhY2VcbiAgIGFzIGEgZGljdGlvbmFyeSBvYmplY3QuXG5cbiAgICoqQ1B5dGhvbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWw6KiogQmVjYXVzZSBvZiB0aGUgd2F5IENQeXRob25cbiAgIGNsZWFycyBtb2R1bGUgZGljdGlvbmFyaWVzLCB0aGUgbW9kdWxlIGRpY3Rpb25hcnkgd2lsbCBiZSBjbGVhcmVkXG4gICB3aGVuIHRoZSBtb2R1bGUgZmFsbHMgb3V0IG9mIHNjb3BlIGV2ZW4gaWYgdGhlIGRpY3Rpb25hcnkgc3RpbGwgaGFzXG4gICBsaXZlIHJlZmVyZW5jZXMuICBUbyBhdm9pZCB0aGlzLCBjb3B5IHRoZSBkaWN0aW9uYXJ5IG9yIGtlZXAgdGhlXG4gICBtb2R1bGUgYXJvdW5kIHdoaWxlIHVzaW5nIGl0cyBkaWN0aW9uYXJ5IGRpcmVjdGx5LlxuXG4gICBQcmVkZWZpbmVkICh3cml0YWJsZSkgYXR0cmlidXRlczogYGBfX25hbWVfX2BgIGlzIHRoZSBtb2R1bGVcJ3NcbiAgIG5hbWU7IGBgX19kb2NfX2BgIGlzIHRoZSBtb2R1bGVcJ3MgZG9jdW1lbnRhdGlvbiBzdHJpbmcsIG9yIGBgTm9uZWBgXG4gICBpZiB1bmF2YWlsYWJsZTsgYGBfX2ZpbGVfX2BgIGlzIHRoZSBwYXRobmFtZSBvZiB0aGUgZmlsZSBmcm9tIHdoaWNoXG4gICB0aGUgbW9kdWxlIHdhcyBsb2FkZWQsIGlmIGl0IHdhcyBsb2FkZWQgZnJvbSBhIGZpbGUuIFRoZVxuICAgYGBfX2ZpbGVfX2BgIGF0dHJpYnV0ZSBpcyBub3QgcHJlc2VudCBmb3IgQyBtb2R1bGVzIHRoYXQgYXJlXG4gICBzdGF0aWNhbGx5IGxpbmtlZCBpbnRvIHRoZSBpbnRlcnByZXRlcjsgZm9yIGV4dGVuc2lvbiBtb2R1bGVzXG4gICBsb2FkZWQgZHluYW1pY2FsbHkgZnJvbSBhIHNoYXJlZCBsaWJyYXJ5LCBpdCBpcyB0aGUgcGF0aG5hbWUgb2YgdGhlXG4gICBzaGFyZWQgbGlicmFyeSBmaWxlLlxuXG5DdXN0b20gY2xhc3Nlc1xuICAgQ3VzdG9tIGNsYXNzIHR5cGVzIGFyZSB0eXBpY2FsbHkgY3JlYXRlZCBieSBjbGFzcyBkZWZpbml0aW9ucyAoc2VlXG4gICBzZWN0aW9uICpDbGFzcyBkZWZpbml0aW9ucyopLiAgQSBjbGFzcyBoYXMgYSBuYW1lc3BhY2UgaW1wbGVtZW50ZWRcbiAgIGJ5IGEgZGljdGlvbmFyeSBvYmplY3QuIENsYXNzIGF0dHJpYnV0ZSByZWZlcmVuY2VzIGFyZSB0cmFuc2xhdGVkXG4gICB0byBsb29rdXBzIGluIHRoaXMgZGljdGlvbmFyeSwgZS5nLiwgYGBDLnhgYCBpcyB0cmFuc2xhdGVkIHRvXG4gICBgYEMuX19kaWN0X19bIngiXWBgIChhbHRob3VnaCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgaG9va3Mgd2hpY2hcbiAgIGFsbG93IGZvciBvdGhlciBtZWFucyBvZiBsb2NhdGluZyBhdHRyaWJ1dGVzKS4gV2hlbiB0aGUgYXR0cmlidXRlXG4gICBuYW1lIGlzIG5vdCBmb3VuZCB0aGVyZSwgdGhlIGF0dHJpYnV0ZSBzZWFyY2ggY29udGludWVzIGluIHRoZSBiYXNlXG4gICBjbGFzc2VzLiBUaGlzIHNlYXJjaCBvZiB0aGUgYmFzZSBjbGFzc2VzIHVzZXMgdGhlIEMzIG1ldGhvZFxuICAgcmVzb2x1dGlvbiBvcmRlciB3aGljaCBiZWhhdmVzIGNvcnJlY3RseSBldmVuIGluIHRoZSBwcmVzZW5jZSBvZlxuICAgXCdkaWFtb25kXCcgaW5oZXJpdGFuY2Ugc3RydWN0dXJlcyB3aGVyZSB0aGVyZSBhcmUgbXVsdGlwbGVcbiAgIGluaGVyaXRhbmNlIHBhdGhzIGxlYWRpbmcgYmFjayB0byBhIGNvbW1vbiBhbmNlc3Rvci4gQWRkaXRpb25hbFxuICAgZGV0YWlscyBvbiB0aGUgQzMgTVJPIHVzZWQgYnkgUHl0aG9uIGNhbiBiZSBmb3VuZCBpbiB0aGVcbiAgIGRvY3VtZW50YXRpb24gYWNjb21wYW55aW5nIHRoZSAyLjMgcmVsZWFzZSBhdFxuICAgaHR0cDovL3d3dy5weXRob24ub3JnL2Rvd25sb2FkL3JlbGVhc2VzLzIuMy9tcm8vLlxuXG4gICBXaGVuIGEgY2xhc3MgYXR0cmlidXRlIHJlZmVyZW5jZSAoZm9yIGNsYXNzIGBgQ2BgLCBzYXkpIHdvdWxkIHlpZWxkXG4gICBhIGNsYXNzIG1ldGhvZCBvYmplY3QsIGl0IGlzIHRyYW5zZm9ybWVkIGludG8gYW4gaW5zdGFuY2UgbWV0aG9kXG4gICBvYmplY3Qgd2hvc2UgYGBfX3NlbGZfX2BgIGF0dHJpYnV0ZXMgaXMgYGBDYGAuICBXaGVuIGl0IHdvdWxkIHlpZWxkXG4gICBhIHN0YXRpYyBtZXRob2Qgb2JqZWN0LCBpdCBpcyB0cmFuc2Zvcm1lZCBpbnRvIHRoZSBvYmplY3Qgd3JhcHBlZFxuICAgYnkgdGhlIHN0YXRpYyBtZXRob2Qgb2JqZWN0LiBTZWUgc2VjdGlvbiAqSW1wbGVtZW50aW5nIERlc2NyaXB0b3JzKlxuICAgZm9yIGFub3RoZXIgd2F5IGluIHdoaWNoIGF0dHJpYnV0ZXMgcmV0cmlldmVkIGZyb20gYSBjbGFzcyBtYXlcbiAgIGRpZmZlciBmcm9tIHRob3NlIGFjdHVhbGx5IGNvbnRhaW5lZCBpbiBpdHMgYGBfX2RpY3RfX2BgLlxuXG4gICBDbGFzcyBhdHRyaWJ1dGUgYXNzaWdubWVudHMgdXBkYXRlIHRoZSBjbGFzc1wncyBkaWN0aW9uYXJ5LCBuZXZlclxuICAgdGhlIGRpY3Rpb25hcnkgb2YgYSBiYXNlIGNsYXNzLlxuXG4gICBBIGNsYXNzIG9iamVjdCBjYW4gYmUgY2FsbGVkIChzZWUgYWJvdmUpIHRvIHlpZWxkIGEgY2xhc3MgaW5zdGFuY2VcbiAgIChzZWUgYmVsb3cpLlxuXG4gICBTcGVjaWFsIGF0dHJpYnV0ZXM6IGBgX19uYW1lX19gYCBpcyB0aGUgY2xhc3MgbmFtZTsgYGBfX21vZHVsZV9fYGBcbiAgIGlzIHRoZSBtb2R1bGUgbmFtZSBpbiB3aGljaCB0aGUgY2xhc3Mgd2FzIGRlZmluZWQ7IGBgX19kaWN0X19gYCBpc1xuICAgdGhlIGRpY3Rpb25hcnkgY29udGFpbmluZyB0aGUgY2xhc3NcJ3MgbmFtZXNwYWNlOyBgYF9fYmFzZXNfX2BgIGlzIGFcbiAgIHR1cGxlIChwb3NzaWJseSBlbXB0eSBvciBhIHNpbmdsZXRvbikgY29udGFpbmluZyB0aGUgYmFzZSBjbGFzc2VzLFxuICAgaW4gdGhlIG9yZGVyIG9mIHRoZWlyIG9jY3VycmVuY2UgaW4gdGhlIGJhc2UgY2xhc3MgbGlzdDtcbiAgIGBgX19kb2NfX2BgIGlzIHRoZSBjbGFzc1wncyBkb2N1bWVudGF0aW9uIHN0cmluZywgb3IgTm9uZSBpZlxuICAgdW5kZWZpbmVkLlxuXG5DbGFzcyBpbnN0YW5jZXNcbiAgIEEgY2xhc3MgaW5zdGFuY2UgaXMgY3JlYXRlZCBieSBjYWxsaW5nIGEgY2xhc3Mgb2JqZWN0IChzZWUgYWJvdmUpLlxuICAgQSBjbGFzcyBpbnN0YW5jZSBoYXMgYSBuYW1lc3BhY2UgaW1wbGVtZW50ZWQgYXMgYSBkaWN0aW9uYXJ5IHdoaWNoXG4gICBpcyB0aGUgZmlyc3QgcGxhY2UgaW4gd2hpY2ggYXR0cmlidXRlIHJlZmVyZW5jZXMgYXJlIHNlYXJjaGVkLlxuICAgV2hlbiBhbiBhdHRyaWJ1dGUgaXMgbm90IGZvdW5kIHRoZXJlLCBhbmQgdGhlIGluc3RhbmNlXCdzIGNsYXNzIGhhc1xuICAgYW4gYXR0cmlidXRlIGJ5IHRoYXQgbmFtZSwgdGhlIHNlYXJjaCBjb250aW51ZXMgd2l0aCB0aGUgY2xhc3NcbiAgIGF0dHJpYnV0ZXMuICBJZiBhIGNsYXNzIGF0dHJpYnV0ZSBpcyBmb3VuZCB0aGF0IGlzIGEgdXNlci1kZWZpbmVkXG4gICBmdW5jdGlvbiBvYmplY3QsIGl0IGlzIHRyYW5zZm9ybWVkIGludG8gYW4gaW5zdGFuY2UgbWV0aG9kIG9iamVjdFxuICAgd2hvc2UgYGBfX3NlbGZfX2BgIGF0dHJpYnV0ZSBpcyB0aGUgaW5zdGFuY2UuICBTdGF0aWMgbWV0aG9kIGFuZFxuICAgY2xhc3MgbWV0aG9kIG9iamVjdHMgYXJlIGFsc28gdHJhbnNmb3JtZWQ7IHNlZSBhYm92ZSB1bmRlclxuICAgIkNsYXNzZXMiLiAgU2VlIHNlY3Rpb24gKkltcGxlbWVudGluZyBEZXNjcmlwdG9ycyogZm9yIGFub3RoZXIgd2F5XG4gICBpbiB3aGljaCBhdHRyaWJ1dGVzIG9mIGEgY2xhc3MgcmV0cmlldmVkIHZpYSBpdHMgaW5zdGFuY2VzIG1heVxuICAgZGlmZmVyIGZyb20gdGhlIG9iamVjdHMgYWN0dWFsbHkgc3RvcmVkIGluIHRoZSBjbGFzc1wnc1xuICAgYGBfX2RpY3RfX2BgLiAgSWYgbm8gY2xhc3MgYXR0cmlidXRlIGlzIGZvdW5kLCBhbmQgdGhlIG9iamVjdFwnc1xuICAgY2xhc3MgaGFzIGEgYGBfX2dldGF0dHJfXygpYGAgbWV0aG9kLCB0aGF0IGlzIGNhbGxlZCB0byBzYXRpc2Z5IHRoZVxuICAgbG9va3VwLlxuXG4gICBBdHRyaWJ1dGUgYXNzaWdubWVudHMgYW5kIGRlbGV0aW9ucyB1cGRhdGUgdGhlIGluc3RhbmNlXCdzXG4gICBkaWN0aW9uYXJ5LCBuZXZlciBhIGNsYXNzXCdzIGRpY3Rpb25hcnkuICBJZiB0aGUgY2xhc3MgaGFzIGFcbiAgIGBgX19zZXRhdHRyX18oKWBgIG9yIGBgX19kZWxhdHRyX18oKWBgIG1ldGhvZCwgdGhpcyBpcyBjYWxsZWRcbiAgIGluc3RlYWQgb2YgdXBkYXRpbmcgdGhlIGluc3RhbmNlIGRpY3Rpb25hcnkgZGlyZWN0bHkuXG5cbiAgIENsYXNzIGluc3RhbmNlcyBjYW4gcHJldGVuZCB0byBiZSBudW1iZXJzLCBzZXF1ZW5jZXMsIG9yIG1hcHBpbmdzXG4gICBpZiB0aGV5IGhhdmUgbWV0aG9kcyB3aXRoIGNlcnRhaW4gc3BlY2lhbCBuYW1lcy4gIFNlZSBzZWN0aW9uXG4gICAqU3BlY2lhbCBtZXRob2QgbmFtZXMqLlxuXG4gICBTcGVjaWFsIGF0dHJpYnV0ZXM6IGBgX19kaWN0X19gYCBpcyB0aGUgYXR0cmlidXRlIGRpY3Rpb25hcnk7XG4gICBgYF9fY2xhc3NfX2BgIGlzIHRoZSBpbnN0YW5jZVwncyBjbGFzcy5cblxuSS9PIG9iamVjdHMgKGFsc28ga25vd24gYXMgZmlsZSBvYmplY3RzKVxuICAgQSAqZmlsZSBvYmplY3QqIHJlcHJlc2VudHMgYW4gb3BlbiBmaWxlLiAgVmFyaW91cyBzaG9ydGN1dHMgYXJlXG4gICBhdmFpbGFibGUgdG8gY3JlYXRlIGZpbGUgb2JqZWN0czogdGhlIGBgb3BlbigpYGAgYnVpbHQtaW4gZnVuY3Rpb24sXG4gICBhbmQgYWxzbyBgYG9zLnBvcGVuKClgYCwgYGBvcy5mZG9wZW4oKWBgLCBhbmQgdGhlIGBgbWFrZWZpbGUoKWBgXG4gICBtZXRob2Qgb2Ygc29ja2V0IG9iamVjdHMgKGFuZCBwZXJoYXBzIGJ5IG90aGVyIGZ1bmN0aW9ucyBvciBtZXRob2RzXG4gICBwcm92aWRlZCBieSBleHRlbnNpb24gbW9kdWxlcykuXG5cbiAgIFRoZSBvYmplY3RzIGBgc3lzLnN0ZGluYGAsIGBgc3lzLnN0ZG91dGBgIGFuZCBgYHN5cy5zdGRlcnJgYCBhcmVcbiAgIGluaXRpYWxpemVkIHRvIGZpbGUgb2JqZWN0cyBjb3JyZXNwb25kaW5nIHRvIHRoZSBpbnRlcnByZXRlclwnc1xuICAgc3RhbmRhcmQgaW5wdXQsIG91dHB1dCBhbmQgZXJyb3Igc3RyZWFtczsgdGhleSBhcmUgYWxsIG9wZW4gaW4gdGV4dFxuICAgbW9kZSBhbmQgdGhlcmVmb3JlIGZvbGxvdyB0aGUgaW50ZXJmYWNlIGRlZmluZWQgYnkgdGhlXG4gICBgYGlvLlRleHRJT0Jhc2VgYCBhYnN0cmFjdCBjbGFzcy5cblxuSW50ZXJuYWwgdHlwZXNcbiAgIEEgZmV3IHR5cGVzIHVzZWQgaW50ZXJuYWxseSBieSB0aGUgaW50ZXJwcmV0ZXIgYXJlIGV4cG9zZWQgdG8gdGhlXG4gICB1c2VyLiBUaGVpciBkZWZpbml0aW9ucyBtYXkgY2hhbmdlIHdpdGggZnV0dXJlIHZlcnNpb25zIG9mIHRoZVxuICAgaW50ZXJwcmV0ZXIsIGJ1dCB0aGV5IGFyZSBtZW50aW9uZWQgaGVyZSBmb3IgY29tcGxldGVuZXNzLlxuXG4gICBDb2RlIG9iamVjdHNcbiAgICAgIENvZGUgb2JqZWN0cyByZXByZXNlbnQgKmJ5dGUtY29tcGlsZWQqIGV4ZWN1dGFibGUgUHl0aG9uIGNvZGUsXG4gICAgICBvciAqYnl0ZWNvZGUqLiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGEgY29kZSBvYmplY3QgYW5kIGFcbiAgICAgIGZ1bmN0aW9uIG9iamVjdCBpcyB0aGF0IHRoZSBmdW5jdGlvbiBvYmplY3QgY29udGFpbnMgYW4gZXhwbGljaXRcbiAgICAgIHJlZmVyZW5jZSB0byB0aGUgZnVuY3Rpb25cJ3MgZ2xvYmFscyAodGhlIG1vZHVsZSBpbiB3aGljaCBpdCB3YXNcbiAgICAgIGRlZmluZWQpLCB3aGlsZSBhIGNvZGUgb2JqZWN0IGNvbnRhaW5zIG5vIGNvbnRleHQ7IGFsc28gdGhlXG4gICAgICBkZWZhdWx0IGFyZ3VtZW50IHZhbHVlcyBhcmUgc3RvcmVkIGluIHRoZSBmdW5jdGlvbiBvYmplY3QsIG5vdFxuICAgICAgaW4gdGhlIGNvZGUgb2JqZWN0IChiZWNhdXNlIHRoZXkgcmVwcmVzZW50IHZhbHVlcyBjYWxjdWxhdGVkIGF0XG4gICAgICBydW4tdGltZSkuICBVbmxpa2UgZnVuY3Rpb24gb2JqZWN0cywgY29kZSBvYmplY3RzIGFyZSBpbW11dGFibGVcbiAgICAgIGFuZCBjb250YWluIG5vIHJlZmVyZW5jZXMgKGRpcmVjdGx5IG9yIGluZGlyZWN0bHkpIHRvIG11dGFibGVcbiAgICAgIG9iamVjdHMuXG5cbiAgICAgIFNwZWNpYWwgcmVhZC1vbmx5IGF0dHJpYnV0ZXM6IGBgY29fbmFtZWBgIGdpdmVzIHRoZSBmdW5jdGlvblxuICAgICAgbmFtZTsgYGBjb19hcmdjb3VudGBgIGlzIHRoZSBudW1iZXIgb2YgcG9zaXRpb25hbCBhcmd1bWVudHNcbiAgICAgIChpbmNsdWRpbmcgYXJndW1lbnRzIHdpdGggZGVmYXVsdCB2YWx1ZXMpOyBgYGNvX25sb2NhbHNgYCBpcyB0aGVcbiAgICAgIG51bWJlciBvZiBsb2NhbCB2YXJpYWJsZXMgdXNlZCBieSB0aGUgZnVuY3Rpb24gKGluY2x1ZGluZ1xuICAgICAgYXJndW1lbnRzKTsgYGBjb192YXJuYW1lc2BgIGlzIGEgdHVwbGUgY29udGFpbmluZyB0aGUgbmFtZXMgb2ZcbiAgICAgIHRoZSBsb2NhbCB2YXJpYWJsZXMgKHN0YXJ0aW5nIHdpdGggdGhlIGFyZ3VtZW50IG5hbWVzKTtcbiAgICAgIGBgY29fY2VsbHZhcnNgYCBpcyBhIHR1cGxlIGNvbnRhaW5pbmcgdGhlIG5hbWVzIG9mIGxvY2FsXG4gICAgICB2YXJpYWJsZXMgdGhhdCBhcmUgcmVmZXJlbmNlZCBieSBuZXN0ZWQgZnVuY3Rpb25zO1xuICAgICAgYGBjb19mcmVldmFyc2BgIGlzIGEgdHVwbGUgY29udGFpbmluZyB0aGUgbmFtZXMgb2YgZnJlZVxuICAgICAgdmFyaWFibGVzOyBgYGNvX2NvZGVgYCBpcyBhIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIHNlcXVlbmNlIG9mXG4gICAgICBieXRlY29kZSBpbnN0cnVjdGlvbnM7IGBgY29fY29uc3RzYGAgaXMgYSB0dXBsZSBjb250YWluaW5nIHRoZVxuICAgICAgbGl0ZXJhbHMgdXNlZCBieSB0aGUgYnl0ZWNvZGU7IGBgY29fbmFtZXNgYCBpcyBhIHR1cGxlXG4gICAgICBjb250YWluaW5nIHRoZSBuYW1lcyB1c2VkIGJ5IHRoZSBieXRlY29kZTsgYGBjb19maWxlbmFtZWBgIGlzXG4gICAgICB0aGUgZmlsZW5hbWUgZnJvbSB3aGljaCB0aGUgY29kZSB3YXMgY29tcGlsZWQ7XG4gICAgICBgYGNvX2ZpcnN0bGluZW5vYGAgaXMgdGhlIGZpcnN0IGxpbmUgbnVtYmVyIG9mIHRoZSBmdW5jdGlvbjtcbiAgICAgIGBgY29fbG5vdGFiYGAgaXMgYSBzdHJpbmcgZW5jb2RpbmcgdGhlIG1hcHBpbmcgZnJvbSBieXRlY29kZVxuICAgICAgb2Zmc2V0cyB0byBsaW5lIG51bWJlcnMgKGZvciBkZXRhaWxzIHNlZSB0aGUgc291cmNlIGNvZGUgb2YgdGhlXG4gICAgICBpbnRlcnByZXRlcik7IGBgY29fc3RhY2tzaXplYGAgaXMgdGhlIHJlcXVpcmVkIHN0YWNrIHNpemVcbiAgICAgIChpbmNsdWRpbmcgbG9jYWwgdmFyaWFibGVzKTsgYGBjb19mbGFnc2BgIGlzIGFuIGludGVnZXIgZW5jb2RpbmdcbiAgICAgIGEgbnVtYmVyIG9mIGZsYWdzIGZvciB0aGUgaW50ZXJwcmV0ZXIuXG5cbiAgICAgIFRoZSBmb2xsb3dpbmcgZmxhZyBiaXRzIGFyZSBkZWZpbmVkIGZvciBgYGNvX2ZsYWdzYGA6IGJpdFxuICAgICAgYGAweDA0YGAgaXMgc2V0IGlmIHRoZSBmdW5jdGlvbiB1c2VzIHRoZSBgYCphcmd1bWVudHNgYCBzeW50YXhcbiAgICAgIHRvIGFjY2VwdCBhbiBhcmJpdHJhcnkgbnVtYmVyIG9mIHBvc2l0aW9uYWwgYXJndW1lbnRzOyBiaXRcbiAgICAgIGBgMHgwOGBgIGlzIHNldCBpZiB0aGUgZnVuY3Rpb24gdXNlcyB0aGUgYGAqKmtleXdvcmRzYGAgc3ludGF4XG4gICAgICB0byBhY2NlcHQgYXJiaXRyYXJ5IGtleXdvcmQgYXJndW1lbnRzOyBiaXQgYGAweDIwYGAgaXMgc2V0IGlmXG4gICAgICB0aGUgZnVuY3Rpb24gaXMgYSBnZW5lcmF0b3IuXG5cbiAgICAgIEZ1dHVyZSBmZWF0dXJlIGRlY2xhcmF0aW9ucyAoYGBmcm9tIF9fZnV0dXJlX18gaW1wb3J0XG4gICAgICBkaXZpc2lvbmBgKSBhbHNvIHVzZSBiaXRzIGluIGBgY29fZmxhZ3NgYCB0byBpbmRpY2F0ZSB3aGV0aGVyIGFcbiAgICAgIGNvZGUgb2JqZWN0IHdhcyBjb21waWxlZCB3aXRoIGEgcGFydGljdWxhciBmZWF0dXJlIGVuYWJsZWQ6IGJpdFxuICAgICAgYGAweDIwMDBgYCBpcyBzZXQgaWYgdGhlIGZ1bmN0aW9uIHdhcyBjb21waWxlZCB3aXRoIGZ1dHVyZVxuICAgICAgZGl2aXNpb24gZW5hYmxlZDsgYml0cyBgYDB4MTBgYCBhbmQgYGAweDEwMDBgYCB3ZXJlIHVzZWQgaW5cbiAgICAgIGVhcmxpZXIgdmVyc2lvbnMgb2YgUHl0aG9uLlxuXG4gICAgICBPdGhlciBiaXRzIGluIGBgY29fZmxhZ3NgYCBhcmUgcmVzZXJ2ZWQgZm9yIGludGVybmFsIHVzZS5cblxuICAgICAgSWYgYSBjb2RlIG9iamVjdCByZXByZXNlbnRzIGEgZnVuY3Rpb24sIHRoZSBmaXJzdCBpdGVtIGluXG4gICAgICBgYGNvX2NvbnN0c2BgIGlzIHRoZSBkb2N1bWVudGF0aW9uIHN0cmluZyBvZiB0aGUgZnVuY3Rpb24sIG9yXG4gICAgICBgYE5vbmVgYCBpZiB1bmRlZmluZWQuXG5cbiAgIEZyYW1lIG9iamVjdHNcbiAgICAgIEZyYW1lIG9iamVjdHMgcmVwcmVzZW50IGV4ZWN1dGlvbiBmcmFtZXMuICBUaGV5IG1heSBvY2N1ciBpblxuICAgICAgdHJhY2ViYWNrIG9iamVjdHMgKHNlZSBiZWxvdykuXG5cbiAgICAgIFNwZWNpYWwgcmVhZC1vbmx5IGF0dHJpYnV0ZXM6IGBgZl9iYWNrYGAgaXMgdG8gdGhlIHByZXZpb3VzXG4gICAgICBzdGFjayBmcmFtZSAodG93YXJkcyB0aGUgY2FsbGVyKSwgb3IgYGBOb25lYGAgaWYgdGhpcyBpcyB0aGVcbiAgICAgIGJvdHRvbSBzdGFjayBmcmFtZTsgYGBmX2NvZGVgYCBpcyB0aGUgY29kZSBvYmplY3QgYmVpbmcgZXhlY3V0ZWRcbiAgICAgIGluIHRoaXMgZnJhbWU7IGBgZl9sb2NhbHNgYCBpcyB0aGUgZGljdGlvbmFyeSB1c2VkIHRvIGxvb2sgdXBcbiAgICAgIGxvY2FsIHZhcmlhYmxlczsgYGBmX2dsb2JhbHNgYCBpcyB1c2VkIGZvciBnbG9iYWwgdmFyaWFibGVzO1xuICAgICAgYGBmX2J1aWx0aW5zYGAgaXMgdXNlZCBmb3IgYnVpbHQtaW4gKGludHJpbnNpYykgbmFtZXM7XG4gICAgICBgYGZfbGFzdGlgYCBnaXZlcyB0aGUgcHJlY2lzZSBpbnN0cnVjdGlvbiAodGhpcyBpcyBhbiBpbmRleCBpbnRvXG4gICAgICB0aGUgYnl0ZWNvZGUgc3RyaW5nIG9mIHRoZSBjb2RlIG9iamVjdCkuXG5cbiAgICAgIFNwZWNpYWwgd3JpdGFibGUgYXR0cmlidXRlczogYGBmX3RyYWNlYGAsIGlmIG5vdCBgYE5vbmVgYCwgaXMgYVxuICAgICAgZnVuY3Rpb24gY2FsbGVkIGF0IHRoZSBzdGFydCBvZiBlYWNoIHNvdXJjZSBjb2RlIGxpbmUgKHRoaXMgaXNcbiAgICAgIHVzZWQgYnkgdGhlIGRlYnVnZ2VyKTsgYGBmX2xpbmVub2BgIGlzIHRoZSBjdXJyZW50IGxpbmUgbnVtYmVyXG4gICAgICBvZiB0aGUgZnJhbWUgLS0tIHdyaXRpbmcgdG8gdGhpcyBmcm9tIHdpdGhpbiBhIHRyYWNlIGZ1bmN0aW9uXG4gICAgICBqdW1wcyB0byB0aGUgZ2l2ZW4gbGluZSAob25seSBmb3IgdGhlIGJvdHRvbS1tb3N0IGZyYW1lKS4gIEFcbiAgICAgIGRlYnVnZ2VyIGNhbiBpbXBsZW1lbnQgYSBKdW1wIGNvbW1hbmQgKGFrYSBTZXQgTmV4dCBTdGF0ZW1lbnQpXG4gICAgICBieSB3cml0aW5nIHRvIGZfbGluZW5vLlxuXG4gICBUcmFjZWJhY2sgb2JqZWN0c1xuICAgICAgVHJhY2ViYWNrIG9iamVjdHMgcmVwcmVzZW50IGEgc3RhY2sgdHJhY2Ugb2YgYW4gZXhjZXB0aW9uLiAgQVxuICAgICAgdHJhY2ViYWNrIG9iamVjdCBpcyBjcmVhdGVkIHdoZW4gYW4gZXhjZXB0aW9uIG9jY3Vycy4gIFdoZW4gdGhlXG4gICAgICBzZWFyY2ggZm9yIGFuIGV4Y2VwdGlvbiBoYW5kbGVyIHVud2luZHMgdGhlIGV4ZWN1dGlvbiBzdGFjaywgYXRcbiAgICAgIGVhY2ggdW53b3VuZCBsZXZlbCBhIHRyYWNlYmFjayBvYmplY3QgaXMgaW5zZXJ0ZWQgaW4gZnJvbnQgb2ZcbiAgICAgIHRoZSBjdXJyZW50IHRyYWNlYmFjay4gIFdoZW4gYW4gZXhjZXB0aW9uIGhhbmRsZXIgaXMgZW50ZXJlZCxcbiAgICAgIHRoZSBzdGFjayB0cmFjZSBpcyBtYWRlIGF2YWlsYWJsZSB0byB0aGUgcHJvZ3JhbS4gKFNlZSBzZWN0aW9uXG4gICAgICAqVGhlIHRyeSBzdGF0ZW1lbnQqLikgSXQgaXMgYWNjZXNzaWJsZSBhcyB0aGUgdGhpcmQgaXRlbSBvZiB0aGVcbiAgICAgIHR1cGxlIHJldHVybmVkIGJ5IGBgc3lzLmV4Y19pbmZvKClgYC4gV2hlbiB0aGUgcHJvZ3JhbSBjb250YWluc1xuICAgICAgbm8gc3VpdGFibGUgaGFuZGxlciwgdGhlIHN0YWNrIHRyYWNlIGlzIHdyaXR0ZW4gKG5pY2VseVxuICAgICAgZm9ybWF0dGVkKSB0byB0aGUgc3RhbmRhcmQgZXJyb3Igc3RyZWFtOyBpZiB0aGUgaW50ZXJwcmV0ZXIgaXNcbiAgICAgIGludGVyYWN0aXZlLCBpdCBpcyBhbHNvIG1hZGUgYXZhaWxhYmxlIHRvIHRoZSB1c2VyIGFzXG4gICAgICBgYHN5cy5sYXN0X3RyYWNlYmFja2BgLlxuXG4gICAgICBTcGVjaWFsIHJlYWQtb25seSBhdHRyaWJ1dGVzOiBgYHRiX25leHRgYCBpcyB0aGUgbmV4dCBsZXZlbCBpblxuICAgICAgdGhlIHN0YWNrIHRyYWNlICh0b3dhcmRzIHRoZSBmcmFtZSB3aGVyZSB0aGUgZXhjZXB0aW9uXG4gICAgICBvY2N1cnJlZCksIG9yIGBgTm9uZWBgIGlmIHRoZXJlIGlzIG5vIG5leHQgbGV2ZWw7IGBgdGJfZnJhbWVgYFxuICAgICAgcG9pbnRzIHRvIHRoZSBleGVjdXRpb24gZnJhbWUgb2YgdGhlIGN1cnJlbnQgbGV2ZWw7XG4gICAgICBgYHRiX2xpbmVub2BgIGdpdmVzIHRoZSBsaW5lIG51bWJlciB3aGVyZSB0aGUgZXhjZXB0aW9uXG4gICAgICBvY2N1cnJlZDsgYGB0Yl9sYXN0aWBgIGluZGljYXRlcyB0aGUgcHJlY2lzZSBpbnN0cnVjdGlvbi4gIFRoZVxuICAgICAgbGluZSBudW1iZXIgYW5kIGxhc3QgaW5zdHJ1Y3Rpb24gaW4gdGhlIHRyYWNlYmFjayBtYXkgZGlmZmVyXG4gICAgICBmcm9tIHRoZSBsaW5lIG51bWJlciBvZiBpdHMgZnJhbWUgb2JqZWN0IGlmIHRoZSBleGNlcHRpb25cbiAgICAgIG9jY3VycmVkIGluIGEgYGB0cnlgYCBzdGF0ZW1lbnQgd2l0aCBubyBtYXRjaGluZyBleGNlcHQgY2xhdXNlXG4gICAgICBvciB3aXRoIGEgZmluYWxseSBjbGF1c2UuXG5cbiAgIFNsaWNlIG9iamVjdHNcbiAgICAgIFNsaWNlIG9iamVjdHMgYXJlIHVzZWQgdG8gcmVwcmVzZW50IHNsaWNlcyBmb3IgYGBfX2dldGl0ZW1fXygpYGBcbiAgICAgIG1ldGhvZHMuICBUaGV5IGFyZSBhbHNvIGNyZWF0ZWQgYnkgdGhlIGJ1aWx0LWluIGBgc2xpY2UoKWBgXG4gICAgICBmdW5jdGlvbi5cblxuICAgICAgU3BlY2lhbCByZWFkLW9ubHkgYXR0cmlidXRlczogYGBzdGFydGBgIGlzIHRoZSBsb3dlciBib3VuZDtcbiAgICAgIGBgc3RvcGBgIGlzIHRoZSB1cHBlciBib3VuZDsgYGBzdGVwYGAgaXMgdGhlIHN0ZXAgdmFsdWU7IGVhY2ggaXNcbiAgICAgIGBgTm9uZWBgIGlmIG9taXR0ZWQuIFRoZXNlIGF0dHJpYnV0ZXMgY2FuIGhhdmUgYW55IHR5cGUuXG5cbiAgICAgIFNsaWNlIG9iamVjdHMgc3VwcG9ydCBvbmUgbWV0aG9kOlxuXG4gICAgICBzbGljZS5pbmRpY2VzKHNlbGYsIGxlbmd0aClcblxuICAgICAgICAgVGhpcyBtZXRob2QgdGFrZXMgYSBzaW5nbGUgaW50ZWdlciBhcmd1bWVudCAqbGVuZ3RoKiBhbmRcbiAgICAgICAgIGNvbXB1dGVzIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzbGljZSB0aGF0IHRoZSBzbGljZSBvYmplY3RcbiAgICAgICAgIHdvdWxkIGRlc2NyaWJlIGlmIGFwcGxpZWQgdG8gYSBzZXF1ZW5jZSBvZiAqbGVuZ3RoKiBpdGVtcy5cbiAgICAgICAgIEl0IHJldHVybnMgYSB0dXBsZSBvZiB0aHJlZSBpbnRlZ2VyczsgcmVzcGVjdGl2ZWx5IHRoZXNlIGFyZVxuICAgICAgICAgdGhlICpzdGFydCogYW5kICpzdG9wKiBpbmRpY2VzIGFuZCB0aGUgKnN0ZXAqIG9yIHN0cmlkZVxuICAgICAgICAgbGVuZ3RoIG9mIHRoZSBzbGljZS4gTWlzc2luZyBvciBvdXQtb2YtYm91bmRzIGluZGljZXMgYXJlXG4gICAgICAgICBoYW5kbGVkIGluIGEgbWFubmVyIGNvbnNpc3RlbnQgd2l0aCByZWd1bGFyIHNsaWNlcy5cblxuICAgU3RhdGljIG1ldGhvZCBvYmplY3RzXG4gICAgICBTdGF0aWMgbWV0aG9kIG9iamVjdHMgcHJvdmlkZSBhIHdheSBvZiBkZWZlYXRpbmcgdGhlXG4gICAgICB0cmFuc2Zvcm1hdGlvbiBvZiBmdW5jdGlvbiBvYmplY3RzIHRvIG1ldGhvZCBvYmplY3RzIGRlc2NyaWJlZFxuICAgICAgYWJvdmUuIEEgc3RhdGljIG1ldGhvZCBvYmplY3QgaXMgYSB3cmFwcGVyIGFyb3VuZCBhbnkgb3RoZXJcbiAgICAgIG9iamVjdCwgdXN1YWxseSBhIHVzZXItZGVmaW5lZCBtZXRob2Qgb2JqZWN0LiBXaGVuIGEgc3RhdGljXG4gICAgICBtZXRob2Qgb2JqZWN0IGlzIHJldHJpZXZlZCBmcm9tIGEgY2xhc3Mgb3IgYSBjbGFzcyBpbnN0YW5jZSwgdGhlXG4gICAgICBvYmplY3QgYWN0dWFsbHkgcmV0dXJuZWQgaXMgdGhlIHdyYXBwZWQgb2JqZWN0LCB3aGljaCBpcyBub3RcbiAgICAgIHN1YmplY3QgdG8gYW55IGZ1cnRoZXIgdHJhbnNmb3JtYXRpb24uIFN0YXRpYyBtZXRob2Qgb2JqZWN0cyBhcmVcbiAgICAgIG5vdCB0aGVtc2VsdmVzIGNhbGxhYmxlLCBhbHRob3VnaCB0aGUgb2JqZWN0cyB0aGV5IHdyYXAgdXN1YWxseVxuICAgICAgYXJlLiBTdGF0aWMgbWV0aG9kIG9iamVjdHMgYXJlIGNyZWF0ZWQgYnkgdGhlIGJ1aWx0LWluXG4gICAgICBgYHN0YXRpY21ldGhvZCgpYGAgY29uc3RydWN0b3IuXG5cbiAgIENsYXNzIG1ldGhvZCBvYmplY3RzXG4gICAgICBBIGNsYXNzIG1ldGhvZCBvYmplY3QsIGxpa2UgYSBzdGF0aWMgbWV0aG9kIG9iamVjdCwgaXMgYSB3cmFwcGVyXG4gICAgICBhcm91bmQgYW5vdGhlciBvYmplY3QgdGhhdCBhbHRlcnMgdGhlIHdheSBpbiB3aGljaCB0aGF0IG9iamVjdFxuICAgICAgaXMgcmV0cmlldmVkIGZyb20gY2xhc3NlcyBhbmQgY2xhc3MgaW5zdGFuY2VzLiBUaGUgYmVoYXZpb3VyIG9mXG4gICAgICBjbGFzcyBtZXRob2Qgb2JqZWN0cyB1cG9uIHN1Y2ggcmV0cmlldmFsIGlzIGRlc2NyaWJlZCBhYm92ZSxcbiAgICAgIHVuZGVyICJVc2VyLWRlZmluZWQgbWV0aG9kcyIuIENsYXNzIG1ldGhvZCBvYmplY3RzIGFyZSBjcmVhdGVkXG4gICAgICBieSB0aGUgYnVpbHQtaW4gYGBjbGFzc21ldGhvZCgpYGAgY29uc3RydWN0b3IuXG4nLAogICd0eXBlc2Z1bmN0aW9ucyc6ICdcbkZ1bmN0aW9uc1xuKioqKioqKioqXG5cbkZ1bmN0aW9uIG9iamVjdHMgYXJlIGNyZWF0ZWQgYnkgZnVuY3Rpb24gZGVmaW5pdGlvbnMuICBUaGUgb25seVxub3BlcmF0aW9uIG9uIGEgZnVuY3Rpb24gb2JqZWN0IGlzIHRvIGNhbGwgaXQ6IGBgZnVuYyhhcmd1bWVudC1saXN0KWBgLlxuXG5UaGVyZSBhcmUgcmVhbGx5IHR3byBmbGF2b3JzIG9mIGZ1bmN0aW9uIG9iamVjdHM6IGJ1aWx0LWluIGZ1bmN0aW9uc1xuYW5kIHVzZXItZGVmaW5lZCBmdW5jdGlvbnMuICBCb3RoIHN1cHBvcnQgdGhlIHNhbWUgb3BlcmF0aW9uICh0byBjYWxsXG50aGUgZnVuY3Rpb24pLCBidXQgdGhlIGltcGxlbWVudGF0aW9uIGlzIGRpZmZlcmVudCwgaGVuY2UgdGhlXG5kaWZmZXJlbnQgb2JqZWN0IHR5cGVzLlxuXG5TZWUgKkZ1bmN0aW9uIGRlZmluaXRpb25zKiBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbicsCi0gJ3R5cGVzbWFwcGluZyc6ICdcbk1hcHBpbmcgVHlwZXMgLS0tIGBgZGljdGBgXG4qKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5BICptYXBwaW5nKiBvYmplY3QgbWFwcyAqaGFzaGFibGUqIHZhbHVlcyB0byBhcmJpdHJhcnkgb2JqZWN0cy5cbk1hcHBpbmdzIGFyZSBtdXRhYmxlIG9iamVjdHMuICBUaGVyZSBpcyBjdXJyZW50bHkgb25seSBvbmUgc3RhbmRhcmRcbm1hcHBpbmcgdHlwZSwgdGhlICpkaWN0aW9uYXJ5Ki4gIChGb3Igb3RoZXIgY29udGFpbmVycyBzZWUgdGhlIGJ1aWx0XG5pbiBgYGxpc3RgYCwgYGBzZXRgYCwgYW5kIGBgdHVwbGVgYCBjbGFzc2VzLCBhbmQgdGhlIGBgY29sbGVjdGlvbnNgYFxubW9kdWxlLilcblxuQSBkaWN0aW9uYXJ5XCdzIGtleXMgYXJlICphbG1vc3QqIGFyYml0cmFyeSB2YWx1ZXMuICBWYWx1ZXMgdGhhdCBhcmVcbm5vdCAqaGFzaGFibGUqLCB0aGF0IGlzLCB2YWx1ZXMgY29udGFpbmluZyBsaXN0cywgZGljdGlvbmFyaWVzIG9yXG5vdGhlciBtdXRhYmxlIHR5cGVzICh0aGF0IGFyZSBjb21wYXJlZCBieSB2YWx1ZSByYXRoZXIgdGhhbiBieSBvYmplY3RcbmlkZW50aXR5KSBtYXkgbm90IGJlIHVzZWQgYXMga2V5cy4gIE51bWVyaWMgdHlwZXMgdXNlZCBmb3Iga2V5cyBvYmV5XG50aGUgbm9ybWFsIHJ1bGVzIGZvciBudW1lcmljIGNvbXBhcmlzb246IGlmIHR3byBudW1iZXJzIGNvbXBhcmUgZXF1YWxcbihzdWNoIGFzIGBgMWBgIGFuZCBgYDEuMGBgKSB0aGVuIHRoZXkgY2FuIGJlIHVzZWQgaW50ZXJjaGFuZ2VhYmx5IHRvXG5pbmRleCB0aGUgc2FtZSBkaWN0aW9uYXJ5IGVudHJ5LiAgKE5vdGUgaG93ZXZlciwgdGhhdCBzaW5jZSBjb21wdXRlcnNcbnN0b3JlIGZsb2F0aW5nLXBvaW50IG51bWJlcnMgYXMgYXBwcm94aW1hdGlvbnMgaXQgaXMgdXN1YWxseSB1bndpc2UgdG9cbnVzZSB0aGVtIGFzIGRpY3Rpb25hcnkga2V5cy4pXG5cbkRpY3Rpb25hcmllcyBjYW4gYmUgY3JlYXRlZCBieSBwbGFjaW5nIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2ZcbmBga2V5OiB2YWx1ZWBgIHBhaXJzIHdpdGhpbiBicmFjZXMsIGZvciBleGFtcGxlOiBgYHtcJ2phY2tcJzogNDA5OCxcblwnc2pvZXJkXCc6IDQxMjd9YGAgb3IgYGB7NDA5ODogXCdqYWNrXCcsIDQxMjc6IFwnc2pvZXJkXCd9YGAsIG9yIGJ5IHRoZVxuYGBkaWN0YGAgY29uc3RydWN0b3IuXG5cbmNsYXNzIGNsYXNzIGRpY3QoW2FyZ10pXG5cbiAgIFJldHVybiBhIG5ldyBkaWN0aW9uYXJ5IGluaXRpYWxpemVkIGZyb20gYW4gb3B0aW9uYWwgcG9zaXRpb25hbFxuICAgYXJndW1lbnQgb3IgZnJvbSBhIHNldCBvZiBrZXl3b3JkIGFyZ3VtZW50cy4gIElmIG5vIGFyZ3VtZW50cyBhcmVcbiAgIGdpdmVuLCByZXR1cm4gYSBuZXcgZW1wdHkgZGljdGlvbmFyeS4gIElmIHRoZSBwb3NpdGlvbmFsIGFyZ3VtZW50XG4gICAqYXJnKiBpcyBhIG1hcHBpbmcgb2JqZWN0LCByZXR1cm4gYSBkaWN0aW9uYXJ5IG1hcHBpbmcgdGhlIHNhbWVcbiAgIGtleXMgdG8gdGhlIHNhbWUgdmFsdWVzIGFzIGRvZXMgdGhlIG1hcHBpbmcgb2JqZWN0LiAgT3RoZXJ3aXNlIHRoZVxuICAgcG9zaXRpb25hbCBhcmd1bWVudCBtdXN0IGJlIGEgc2VxdWVuY2UsIGEgY29udGFpbmVyIHRoYXQgc3VwcG9ydHNcbiAgIGl0ZXJhdGlvbiwgb3IgYW4gaXRlcmF0b3Igb2JqZWN0LiAgVGhlIGVsZW1lbnRzIG9mIHRoZSBhcmd1bWVudFxuICAgbXVzdCBlYWNoIGFsc28gYmUgb2Ygb25lIG9mIHRob3NlIGtpbmRzLCBhbmQgZWFjaCBtdXN0IGluIHR1cm5cbiAgIGNvbnRhaW4gZXhhY3RseSB0d28gb2JqZWN0cy4gIFRoZSBmaXJzdCBpcyB1c2VkIGFzIGEga2V5IGluIHRoZSBuZXdcbiAgIGRpY3Rpb25hcnksIGFuZCB0aGUgc2Vjb25kIGFzIHRoZSBrZXlcJ3MgdmFsdWUuICBJZiBhIGdpdmVuIGtleSBpc1xuICAgc2VlbiBtb3JlIHRoYW4gb25jZSwgdGhlIGxhc3QgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIGl0IGlzIHJldGFpbmVkXG4gICBpbiB0aGUgbmV3IGRpY3Rpb25hcnkuXG5cbiAgIElmIGtleXdvcmQgYXJndW1lbnRzIGFyZSBnaXZlbiwgdGhlIGtleXdvcmRzIHRoZW1zZWx2ZXMgd2l0aCB0aGVpclxuICAgYXNzb2NpYXRlZCB2YWx1ZXMgYXJlIGFkZGVkIGFzIGl0ZW1zIHRvIHRoZSBkaWN0aW9uYXJ5LiAgSWYgYSBrZXlcbiAgIGlzIHNwZWNpZmllZCBib3RoIGluIHRoZSBwb3NpdGlvbmFsIGFyZ3VtZW50IGFuZCBhcyBhIGtleXdvcmRcbiAgIGFyZ3VtZW50LCB0aGUgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIHRoZSBrZXl3b3JkIGlzIHJldGFpbmVkIGluIHRoZVxuICAgZGljdGlvbmFyeS4gIEZvciBleGFtcGxlLCB0aGVzZSBhbGwgcmV0dXJuIGEgZGljdGlvbmFyeSBlcXVhbCB0b1xuICAgYGB7Im9uZSI6IDEsICJ0d28iOiAyfWBgOlxuXG4gICAqIGBgZGljdChvbmU9MSwgdHdvPTIpYGBcblxuICAgKiBgYGRpY3Qoe1wnb25lXCc6IDEsIFwndHdvXCc6IDJ9KWBgXG5cbiAgICogYGBkaWN0KHppcCgoXCdvbmVcJywgXCd0d29cJyksICgxLCAyKSkpYGBcblxuICAgKiBgYGRpY3QoW1tcJ3R3b1wnLCAyXSwgW1wnb25lXCcsIDFdXSlgYFxuXG4gICBUaGUgZmlyc3QgZXhhbXBsZSBvbmx5IHdvcmtzIGZvciBrZXlzIHRoYXQgYXJlIHZhbGlkIFB5dGhvblxuICAgaWRlbnRpZmllcnM7IHRoZSBvdGhlcnMgd29yayB3aXRoIGFueSB2YWxpZCBrZXlzLlxuXG4gICBUaGVzZSBhcmUgdGhlIG9wZXJhdGlvbnMgdGhhdCBkaWN0aW9uYXJpZXMgc3VwcG9ydCAoYW5kIHRoZXJlZm9yZSxcbiAgIGN1c3RvbSBtYXBwaW5nIHR5cGVzIHNob3VsZCBzdXBwb3J0IHRvbyk6XG5cbiAgIGxlbihkKVxuXG4gICAgICBSZXR1cm4gdGhlIG51bWJlciBvZiBpdGVtcyBpbiB0aGUgZGljdGlvbmFyeSAqZCouXG5cbiAgIGRba2V5XVxuXG4gICAgICBSZXR1cm4gdGhlIGl0ZW0gb2YgKmQqIHdpdGgga2V5ICprZXkqLiAgUmFpc2VzIGEgYGBLZXlFcnJvcmBgIGlmXG4gICAgICAqa2V5KiBpcyBub3QgaW4gdGhlIG1hcC5cblxuICAgICAgSWYgYSBzdWJjbGFzcyBvZiBkaWN0IGRlZmluZXMgYSBtZXRob2QgYGBfX21pc3NpbmdfXygpYGAsIGlmIHRoZVxuICAgICAga2V5ICprZXkqIGlzIG5vdCBwcmVzZW50LCB0aGUgYGBkW2tleV1gYCBvcGVyYXRpb24gY2FsbHMgdGhhdFxuICAgICAgbWV0aG9kIHdpdGggdGhlIGtleSAqa2V5KiBhcyBhcmd1bWVudC4gIFRoZSBgYGRba2V5XWBgIG9wZXJhdGlvblxuICAgICAgdGhlbiByZXR1cm5zIG9yIHJhaXNlcyB3aGF0ZXZlciBpcyByZXR1cm5lZCBvciByYWlzZWQgYnkgdGhlXG4gICAgICBgYF9fbWlzc2luZ19fKGtleSlgYCBjYWxsIGlmIHRoZSBrZXkgaXMgbm90IHByZXNlbnQuIE5vIG90aGVyXG4gICAgICBvcGVyYXRpb25zIG9yIG1ldGhvZHMgaW52b2tlIGBgX19taXNzaW5nX18oKWBgLiBJZlxuICAgICAgYGBfX21pc3NpbmdfXygpYGAgaXMgbm90IGRlZmluZWQsIGBgS2V5RXJyb3JgYCBpcyByYWlzZWQuXG4gICAgICBgYF9fbWlzc2luZ19fKClgYCBtdXN0IGJlIGEgbWV0aG9kOyBpdCBjYW5ub3QgYmUgYW4gaW5zdGFuY2VcbiAgICAgIHZhcmlhYmxlOlxuXG4gICAgICAgICA+Pj4gY2xhc3MgQ291bnRlcihkaWN0KTpcbiAgICAgICAgIC4uLiAgICAgZGVmIF9fbWlzc2luZ19fKHNlbGYsIGtleSk6XG4gICAgICAgICAuLi4gICAgICAgICByZXR1cm4gMFxuICAgICAgICAgPj4+IGMgPSBDb3VudGVyKClcbiAgICAgICAgID4+PiBjW1wncmVkXCddXG4gICAgICAgICAwXG4gICAgICAgICA+Pj4gY1tcJ3JlZFwnXSArPSAxXG4gICAgICAgICA+Pj4gY1tcJ3JlZFwnXVxuICAgICAgICAgMVxuXG4gICAgICBTZWUgYGBjb2xsZWN0aW9ucy5Db3VudGVyYGAgZm9yIGEgY29tcGxldGUgaW1wbGVtZW50YXRpb25cbiAgICAgIGluY2x1ZGluZyBvdGhlciBtZXRob2RzIGhlbHBmdWwgZm9yIGFjY3VtdWxhdGluZyBhbmQgbWFuYWdpbmdcbiAgICAgIHRhbGxpZXMuXG5cbiAgIGRba2V5XSA9IHZhbHVlXG5cbiAgICAgIFNldCBgYGRba2V5XWBgIHRvICp2YWx1ZSouXG5cbiAgIGRlbCBkW2tleV1cblxuICAgICAgUmVtb3ZlIGBgZFtrZXldYGAgZnJvbSAqZCouICBSYWlzZXMgYSBgYEtleUVycm9yYGAgaWYgKmtleSogaXNcbiAgICAgIG5vdCBpbiB0aGUgbWFwLlxuXG4gICBrZXkgaW4gZFxuXG4gICAgICBSZXR1cm4gYGBUcnVlYGAgaWYgKmQqIGhhcyBhIGtleSAqa2V5KiwgZWxzZSBgYEZhbHNlYGAuXG5cbiAgIGtleSBub3QgaW4gZFxuXG4gICAgICBFcXVpdmFsZW50IHRvIGBgbm90IGtleSBpbiBkYGAuXG5cbiAgIGl0ZXIoZClcblxuICAgICAgUmV0dXJuIGFuIGl0ZXJhdG9yIG92ZXIgdGhlIGtleXMgb2YgdGhlIGRpY3Rpb25hcnkuICBUaGlzIGlzIGFcbiAgICAgIHNob3J0Y3V0IGZvciBgYGl0ZXIoZC5rZXlzKCkpYGAuXG5cbiAgIGNsZWFyKClcblxuICAgICAgUmVtb3ZlIGFsbCBpdGVtcyBmcm9tIHRoZSBkaWN0aW9uYXJ5LlxuXG4gICBjb3B5KClcblxuICAgICAgUmV0dXJuIGEgc2hhbGxvdyBjb3B5IG9mIHRoZSBkaWN0aW9uYXJ5LlxuXG4gICBjbGFzc21ldGhvZCBmcm9ta2V5cyhzZXFbLCB2YWx1ZV0pXG5cbiAgICAgIENyZWF0ZSBhIG5ldyBkaWN0aW9uYXJ5IHdpdGgga2V5cyBmcm9tICpzZXEqIGFuZCB2YWx1ZXMgc2V0IHRvXG4gICAgICAqdmFsdWUqLlxuXG4gICAgICBgYGZyb21rZXlzKClgYCBpcyBhIGNsYXNzIG1ldGhvZCB0aGF0IHJldHVybnMgYSBuZXcgZGljdGlvbmFyeS5cbiAgICAgICp2YWx1ZSogZGVmYXVsdHMgdG8gYGBOb25lYGAuXG5cbiAgIGdldChrZXlbLCBkZWZhdWx0XSlcblxuICAgICAgUmV0dXJuIHRoZSB2YWx1ZSBmb3IgKmtleSogaWYgKmtleSogaXMgaW4gdGhlIGRpY3Rpb25hcnksIGVsc2VcbiAgICAgICpkZWZhdWx0Ki4gSWYgKmRlZmF1bHQqIGlzIG5vdCBnaXZlbiwgaXQgZGVmYXVsdHMgdG8gYGBOb25lYGAsXG4gICAgICBzbyB0aGF0IHRoaXMgbWV0aG9kIG5ldmVyIHJhaXNlcyBhIGBgS2V5RXJyb3JgYC5cblxuICAgaXRlbXMoKVxuXG4gICAgICBSZXR1cm4gYSBuZXcgdmlldyBvZiB0aGUgZGljdGlvbmFyeVwncyBpdGVtcyAoYGAoa2V5LCB2YWx1ZSlgYFxuICAgICAgcGFpcnMpLiAgU2VlIGJlbG93IGZvciBkb2N1bWVudGF0aW9uIG9mIHZpZXcgb2JqZWN0cy5cblxuICAga2V5cygpXG5cbiAgICAgIFJldHVybiBhIG5ldyB2aWV3IG9mIHRoZSBkaWN0aW9uYXJ5XCdzIGtleXMuICBTZWUgYmVsb3cgZm9yXG4gICAgICBkb2N1bWVudGF0aW9uIG9mIHZpZXcgb2JqZWN0cy5cblxuICAgcG9wKGtleVssIGRlZmF1bHRdKVxuXG4gICAgICBJZiAqa2V5KiBpcyBpbiB0aGUgZGljdGlvbmFyeSwgcmVtb3ZlIGl0IGFuZCByZXR1cm4gaXRzIHZhbHVlLFxuICAgICAgZWxzZSByZXR1cm4gKmRlZmF1bHQqLiAgSWYgKmRlZmF1bHQqIGlzIG5vdCBnaXZlbiBhbmQgKmtleSogaXNcbiAgICAgIG5vdCBpbiB0aGUgZGljdGlvbmFyeSwgYSBgYEtleUVycm9yYGAgaXMgcmFpc2VkLlxuXG4gICBwb3BpdGVtKClcblxuICAgICAgUmVtb3ZlIGFuZCByZXR1cm4gYW4gYXJiaXRyYXJ5IGBgKGtleSwgdmFsdWUpYGAgcGFpciBmcm9tIHRoZVxuICAgICAgZGljdGlvbmFyeS5cblxuICAgICAgYGBwb3BpdGVtKClgYCBpcyB1c2VmdWwgdG8gZGVzdHJ1Y3RpdmVseSBpdGVyYXRlIG92ZXIgYVxuICAgICAgZGljdGlvbmFyeSwgYXMgb2Z0ZW4gdXNlZCBpbiBzZXQgYWxnb3JpdGhtcy4gIElmIHRoZSBkaWN0aW9uYXJ5XG4gICAgICBpcyBlbXB0eSwgY2FsbGluZyBgYHBvcGl0ZW0oKWBgIHJhaXNlcyBhIGBgS2V5RXJyb3JgYC5cblxuICAgc2V0ZGVmYXVsdChrZXlbLCBkZWZhdWx0XSlcblxuICAgICAgSWYgKmtleSogaXMgaW4gdGhlIGRpY3Rpb25hcnksIHJldHVybiBpdHMgdmFsdWUuICBJZiBub3QsIGluc2VydFxuICAgICAgKmtleSogd2l0aCBhIHZhbHVlIG9mICpkZWZhdWx0KiBhbmQgcmV0dXJuICpkZWZhdWx0Ki4gICpkZWZhdWx0KlxuICAgICAgZGVmYXVsdHMgdG8gYGBOb25lYGAuXG5cbiAgIHVwZGF0ZShbb3RoZXJdKVxuXG4gICAgICBVcGRhdGUgdGhlIGRpY3Rpb25hcnkgd2l0aCB0aGUga2V5L3ZhbHVlIHBhaXJzIGZyb20gKm90aGVyKixcbiAgICAgIG92ZXJ3cml0aW5nIGV4aXN0aW5nIGtleXMuICBSZXR1cm4gYGBOb25lYGAuXG5cbiAgICAgIGBgdXBkYXRlKClgYCBhY2NlcHRzIGVpdGhlciBhbm90aGVyIGRpY3Rpb25hcnkgb2JqZWN0IG9yIGFuXG4gICAgICBpdGVyYWJsZSBvZiBrZXkvdmFsdWUgcGFpcnMgKGFzIHR1cGxlcyBvciBvdGhlciBpdGVyYWJsZXMgb2ZcbiAgICAgIGxlbmd0aCB0d28pLiAgSWYga2V5d29yZCBhcmd1bWVudHMgYXJlIHNwZWNpZmllZCwgdGhlIGRpY3Rpb25hcnlcbiAgICAgIGlzIHRoZW4gdXBkYXRlZCB3aXRoIHRob3NlIGtleS92YWx1ZSBwYWlyczogYGBkLnVwZGF0ZShyZWQ9MSxcbiAgICAgIGJsdWU9MilgYC5cblxuICAgdmFsdWVzKClcblxuICAgICAgUmV0dXJuIGEgbmV3IHZpZXcgb2YgdGhlIGRpY3Rpb25hcnlcJ3MgdmFsdWVzLiAgU2VlIGJlbG93IGZvclxuICAgICAgZG9jdW1lbnRhdGlvbiBvZiB2aWV3IG9iamVjdHMuXG5cblxuRGljdGlvbmFyeSB2aWV3IG9iamVjdHNcbj09PT09PT09PT09PT09PT09PT09PT09XG5cblRoZSBvYmplY3RzIHJldHVybmVkIGJ5IGBgZGljdC5rZXlzKClgYCwgYGBkaWN0LnZhbHVlcygpYGAgYW5kXG5gYGRpY3QuaXRlbXMoKWBgIGFyZSAqdmlldyBvYmplY3RzKi4gIFRoZXkgcHJvdmlkZSBhIGR5bmFtaWMgdmlldyBvblxudGhlIGRpY3Rpb25hcnlcJ3MgZW50cmllcywgd2hpY2ggbWVhbnMgdGhhdCB3aGVuIHRoZSBkaWN0aW9uYXJ5XG5jaGFuZ2VzLCB0aGUgdmlldyByZWZsZWN0cyB0aGVzZSBjaGFuZ2VzLlxuXG5EaWN0aW9uYXJ5IHZpZXdzIGNhbiBiZSBpdGVyYXRlZCBvdmVyIHRvIHlpZWxkIHRoZWlyIHJlc3BlY3RpdmUgZGF0YSxcbmFuZCBzdXBwb3J0IG1lbWJlcnNoaXAgdGVzdHM6XG5cbmxlbihkaWN0dmlldylcblxuICAgUmV0dXJuIHRoZSBudW1iZXIgb2YgZW50cmllcyBpbiB0aGUgZGljdGlvbmFyeS5cblxuaXRlcihkaWN0dmlldylcblxuICAgUmV0dXJuIGFuIGl0ZXJhdG9yIG92ZXIgdGhlIGtleXMsIHZhbHVlcyBvciBpdGVtcyAocmVwcmVzZW50ZWQgYXNcbiAgIHR1cGxlcyBvZiBgYChrZXksIHZhbHVlKWBgKSBpbiB0aGUgZGljdGlvbmFyeS5cblxuICAgS2V5cyBhbmQgdmFsdWVzIGFyZSBpdGVyYXRlZCBvdmVyIGluIGFuIGFyYml0cmFyeSBvcmRlciB3aGljaCBpc1xuICAgbm9uLXJhbmRvbSwgdmFyaWVzIGFjcm9zcyBQeXRob24gaW1wbGVtZW50YXRpb25zLCBhbmQgZGVwZW5kcyBvblxuICAgdGhlIGRpY3Rpb25hcnlcJ3MgaGlzdG9yeSBvZiBpbnNlcnRpb25zIGFuZCBkZWxldGlvbnMuIElmIGtleXMsXG4gICB2YWx1ZXMgYW5kIGl0ZW1zIHZpZXdzIGFyZSBpdGVyYXRlZCBvdmVyIHdpdGggbm8gaW50ZXJ2ZW5pbmdcbiAgIG1vZGlmaWNhdGlvbnMgdG8gdGhlIGRpY3Rpb25hcnksIHRoZSBvcmRlciBvZiBpdGVtcyB3aWxsIGRpcmVjdGx5XG4gICBjb3JyZXNwb25kLiAgVGhpcyBhbGxvd3MgdGhlIGNyZWF0aW9uIG9mIGBgKHZhbHVlLCBrZXkpYGAgcGFpcnNcbiAgIHVzaW5nIGBgemlwKClgYDogYGBwYWlycyA9IHppcChkLnZhbHVlcygpLCBkLmtleXMoKSlgYC4gIEFub3RoZXJcbiAgIHdheSB0byBjcmVhdGUgdGhlIHNhbWUgbGlzdCBpcyBgYHBhaXJzID0gWyh2LCBrKSBmb3IgKGssIHYpIGluXG4gICBkLml0ZW1zKCldYGAuXG5cbiAgIEl0ZXJhdGluZyB2aWV3cyB3aGlsZSBhZGRpbmcgb3IgZGVsZXRpbmcgZW50cmllcyBpbiB0aGUgZGljdGlvbmFyeVxuICAgbWF5IHJhaXNlIGEgYGBSdW50aW1lRXJyb3JgYCBvciBmYWlsIHRvIGl0ZXJhdGUgb3ZlciBhbGwgZW50cmllcy5cblxueCBpbiBkaWN0dmlld1xuXG4gICBSZXR1cm4gYGBUcnVlYGAgaWYgKngqIGlzIGluIHRoZSB1bmRlcmx5aW5nIGRpY3Rpb25hcnlcJ3Mga2V5cyxcbiAgIHZhbHVlcyBvciBpdGVtcyAoaW4gdGhlIGxhdHRlciBjYXNlLCAqeCogc2hvdWxkIGJlIGEgYGAoa2V5LFxuICAgdmFsdWUpYGAgdHVwbGUpLlxuXG5LZXlzIHZpZXdzIGFyZSBzZXQtbGlrZSBzaW5jZSB0aGVpciBlbnRyaWVzIGFyZSB1bmlxdWUgYW5kIGhhc2hhYmxlLlxuSWYgYWxsIHZhbHVlcyBhcmUgaGFzaGFibGUsIHNvIHRoYXQgYGAoa2V5LCB2YWx1ZSlgYCBwYWlycyBhcmUgdW5pcXVlXG5hbmQgaGFzaGFibGUsIHRoZW4gdGhlIGl0ZW1zIHZpZXcgaXMgYWxzbyBzZXQtbGlrZS4gIChWYWx1ZXMgdmlld3MgYXJlXG5ub3QgdHJlYXRlZCBhcyBzZXQtbGlrZSBzaW5jZSB0aGUgZW50cmllcyBhcmUgZ2VuZXJhbGx5IG5vdCB1bmlxdWUuKVxuRm9yIHNldC1saWtlIHZpZXdzLCBhbGwgb2YgdGhlIG9wZXJhdGlvbnMgZGVmaW5lZCBmb3IgdGhlIGFic3RyYWN0XG5iYXNlIGNsYXNzIGBgY29sbGVjdGlvbnMuU2V0YGAgYXJlIGF2YWlsYWJsZSAoZm9yIGV4YW1wbGUsIGBgPT1gYCxcbmBgPGBgLCBvciBgYF5gYCkuXG5cbkFuIGV4YW1wbGUgb2YgZGljdGlvbmFyeSB2aWV3IHVzYWdlOlxuXG4gICA+Pj4gZGlzaGVzID0ge1wnZWdnc1wnOiAyLCBcJ3NhdXNhZ2VcJzogMSwgXCdiYWNvblwnOiAxLCBcJ3NwYW1cJzogNTAwfVxuICAgPj4+IGtleXMgPSBkaXNoZXMua2V5cygpXG4gICA+Pj4gdmFsdWVzID0gZGlzaGVzLnZhbHVlcygpXG5cbiAgID4+PiAjIGl0ZXJhdGlvblxuICAgPj4+IG4gPSAwXG4gICA+Pj4gZm9yIHZhbCBpbiB2YWx1ZXM6XG4gICAuLi4gICAgIG4gKz0gdmFsXG4gICA+Pj4gcHJpbnQobilcbiAgIDUwNFxuXG4gICA+Pj4gIyBrZXlzIGFuZCB2YWx1ZXMgYXJlIGl0ZXJhdGVkIG92ZXIgaW4gdGhlIHNhbWUgb3JkZXJcbiAgID4+PiBsaXN0KGtleXMpXG4gICBbXCdlZ2dzXCcsIFwnYmFjb25cJywgXCdzYXVzYWdlXCcsIFwnc3BhbVwnXVxuICAgPj4+IGxpc3QodmFsdWVzKVxuICAgWzIsIDEsIDEsIDUwMF1cblxuICAgPj4+ICMgdmlldyBvYmplY3RzIGFyZSBkeW5hbWljIGFuZCByZWZsZWN0IGRpY3QgY2hhbmdlc1xuICAgPj4+IGRlbCBkaXNoZXNbXCdlZ2dzXCddXG4gICA+Pj4gZGVsIGRpc2hlc1tcJ3NhdXNhZ2VcJ11cbiAgID4+PiBsaXN0KGtleXMpXG4gICBbXCdzcGFtXCcsIFwnYmFjb25cJ11cblxuICAgPj4+ICMgc2V0IG9wZXJhdGlvbnNcbiAgID4+PiBrZXlzICYge1wnZWdnc1wnLCBcJ2JhY29uXCcsIFwnc2FsYWRcJ31cbiAgIHtcJ2JhY29uXCd9XG4gICA+Pj4ga2V5cyBeIHtcJ3NhdXNhZ2VcJywgXCdqdWljZVwnfVxuICAge1wnanVpY2VcJywgXCdzYXVzYWdlXCcsIFwnYmFjb25cJywgXCdzcGFtXCd9XG4nLAorICd0eXBlc21hcHBpbmcnOiAnXG5NYXBwaW5nIFR5cGVzIC0tLSBgYGRpY3RgYFxuKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuQSAqbWFwcGluZyogb2JqZWN0IG1hcHMgKmhhc2hhYmxlKiB2YWx1ZXMgdG8gYXJiaXRyYXJ5IG9iamVjdHMuXG5NYXBwaW5ncyBhcmUgbXV0YWJsZSBvYmplY3RzLiAgVGhlcmUgaXMgY3VycmVudGx5IG9ubHkgb25lIHN0YW5kYXJkXG5tYXBwaW5nIHR5cGUsIHRoZSAqZGljdGlvbmFyeSouICAoRm9yIG90aGVyIGNvbnRhaW5lcnMgc2VlIHRoZSBidWlsdFxuaW4gYGBsaXN0YGAsIGBgc2V0YGAsIGFuZCBgYHR1cGxlYGAgY2xhc3NlcywgYW5kIHRoZSBgYGNvbGxlY3Rpb25zYGBcbm1vZHVsZS4pXG5cbkEgZGljdGlvbmFyeVwncyBrZXlzIGFyZSAqYWxtb3N0KiBhcmJpdHJhcnkgdmFsdWVzLiAgVmFsdWVzIHRoYXQgYXJlXG5ub3QgKmhhc2hhYmxlKiwgdGhhdCBpcywgdmFsdWVzIGNvbnRhaW5pbmcgbGlzdHMsIGRpY3Rpb25hcmllcyBvclxub3RoZXIgbXV0YWJsZSB0eXBlcyAodGhhdCBhcmUgY29tcGFyZWQgYnkgdmFsdWUgcmF0aGVyIHRoYW4gYnkgb2JqZWN0XG5pZGVudGl0eSkgbWF5IG5vdCBiZSB1c2VkIGFzIGtleXMuICBOdW1lcmljIHR5cGVzIHVzZWQgZm9yIGtleXMgb2JleVxudGhlIG5vcm1hbCBydWxlcyBmb3IgbnVtZXJpYyBjb21wYXJpc29uOiBpZiB0d28gbnVtYmVycyBjb21wYXJlIGVxdWFsXG4oc3VjaCBhcyBgYDFgYCBhbmQgYGAxLjBgYCkgdGhlbiB0aGV5IGNhbiBiZSB1c2VkIGludGVyY2hhbmdlYWJseSB0b1xuaW5kZXggdGhlIHNhbWUgZGljdGlvbmFyeSBlbnRyeS4gIChOb3RlIGhvd2V2ZXIsIHRoYXQgc2luY2UgY29tcHV0ZXJzXG5zdG9yZSBmbG9hdGluZy1wb2ludCBudW1iZXJzIGFzIGFwcHJveGltYXRpb25zIGl0IGlzIHVzdWFsbHkgdW53aXNlIHRvXG51c2UgdGhlbSBhcyBkaWN0aW9uYXJ5IGtleXMuKVxuXG5EaWN0aW9uYXJpZXMgY2FuIGJlIGNyZWF0ZWQgYnkgcGxhY2luZyBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mXG5gYGtleTogdmFsdWVgYCBwYWlycyB3aXRoaW4gYnJhY2VzLCBmb3IgZXhhbXBsZTogYGB7XCdqYWNrXCc6IDQwOTgsXG5cJ3Nqb2VyZFwnOiA0MTI3fWBgIG9yIGBgezQwOTg6IFwnamFja1wnLCA0MTI3OiBcJ3Nqb2VyZFwnfWBgLCBvciBieSB0aGVcbmBgZGljdGBgIGNvbnN0cnVjdG9yLlxuXG5jbGFzcyBjbGFzcyBkaWN0KFthcmddKVxuXG4gICBSZXR1cm4gYSBuZXcgZGljdGlvbmFyeSBpbml0aWFsaXplZCBmcm9tIGFuIG9wdGlvbmFsIHBvc2l0aW9uYWxcbiAgIGFyZ3VtZW50IG9yIGZyb20gYSBzZXQgb2Yga2V5d29yZCBhcmd1bWVudHMuICBJZiBubyBhcmd1bWVudHMgYXJlXG4gICBnaXZlbiwgcmV0dXJuIGEgbmV3IGVtcHR5IGRpY3Rpb25hcnkuICBJZiB0aGUgcG9zaXRpb25hbCBhcmd1bWVudFxuICAgKmFyZyogaXMgYSBtYXBwaW5nIG9iamVjdCwgcmV0dXJuIGEgZGljdGlvbmFyeSBtYXBwaW5nIHRoZSBzYW1lXG4gICBrZXlzIHRvIHRoZSBzYW1lIHZhbHVlcyBhcyBkb2VzIHRoZSBtYXBwaW5nIG9iamVjdC4gIE90aGVyd2lzZSB0aGVcbiAgIHBvc2l0aW9uYWwgYXJndW1lbnQgbXVzdCBiZSBhIHNlcXVlbmNlLCBhIGNvbnRhaW5lciB0aGF0IHN1cHBvcnRzXG4gICBpdGVyYXRpb24sIG9yIGFuIGl0ZXJhdG9yIG9iamVjdC4gIFRoZSBlbGVtZW50cyBvZiB0aGUgYXJndW1lbnRcbiAgIG11c3QgZWFjaCBhbHNvIGJlIG9mIG9uZSBvZiB0aG9zZSBraW5kcywgYW5kIGVhY2ggbXVzdCBpbiB0dXJuXG4gICBjb250YWluIGV4YWN0bHkgdHdvIG9iamVjdHMuICBUaGUgZmlyc3QgaXMgdXNlZCBhcyBhIGtleSBpbiB0aGUgbmV3XG4gICBkaWN0aW9uYXJ5LCBhbmQgdGhlIHNlY29uZCBhcyB0aGUga2V5XCdzIHZhbHVlLiAgSWYgYSBnaXZlbiBrZXkgaXNcbiAgIHNlZW4gbW9yZSB0aGFuIG9uY2UsIHRoZSBsYXN0IHZhbHVlIGFzc29jaWF0ZWQgd2l0aCBpdCBpcyByZXRhaW5lZFxuICAgaW4gdGhlIG5ldyBkaWN0aW9uYXJ5LlxuXG4gICBJZiBrZXl3b3JkIGFyZ3VtZW50cyBhcmUgZ2l2ZW4sIHRoZSBrZXl3b3JkcyB0aGVtc2VsdmVzIHdpdGggdGhlaXJcbiAgIGFzc29jaWF0ZWQgdmFsdWVzIGFyZSBhZGRlZCBhcyBpdGVtcyB0byB0aGUgZGljdGlvbmFyeS4gIElmIGEga2V5XG4gICBpcyBzcGVjaWZpZWQgYm90aCBpbiB0aGUgcG9zaXRpb25hbCBhcmd1bWVudCBhbmQgYXMgYSBrZXl3b3JkXG4gICBhcmd1bWVudCwgdGhlIHZhbHVlIGFzc29jaWF0ZWQgd2l0aCB0aGUga2V5d29yZCBpcyByZXRhaW5lZCBpbiB0aGVcbiAgIGRpY3Rpb25hcnkuICBGb3IgZXhhbXBsZSwgdGhlc2UgYWxsIHJldHVybiBhIGRpY3Rpb25hcnkgZXF1YWwgdG9cbiAgIGBgeyJvbmUiOiAxLCAidHdvIjogMn1gYDpcblxuICAgKiBgYGRpY3Qob25lPTEsIHR3bz0yKWBgXG5cbiAgICogYGBkaWN0KHtcJ29uZVwnOiAxLCBcJ3R3b1wnOiAyfSlgYFxuXG4gICAqIGBgZGljdCh6aXAoKFwnb25lXCcsIFwndHdvXCcpLCAoMSwgMikpKWBgXG5cbiAgICogYGBkaWN0KFtbXCd0d29cJywgMl0sIFtcJ29uZVwnLCAxXV0pYGBcblxuICAgVGhlIGZpcnN0IGV4YW1wbGUgb25seSB3b3JrcyBmb3Iga2V5cyB0aGF0IGFyZSB2YWxpZCBQeXRob25cbiAgIGlkZW50aWZpZXJzOyB0aGUgb3RoZXJzIHdvcmsgd2l0aCBhbnkgdmFsaWQga2V5cy5cblxuICAgVGhlc2UgYXJlIHRoZSBvcGVyYXRpb25zIHRoYXQgZGljdGlvbmFyaWVzIHN1cHBvcnQgKGFuZCB0aGVyZWZvcmUsXG4gICBjdXN0b20gbWFwcGluZyB0eXBlcyBzaG91bGQgc3VwcG9ydCB0b28pOlxuXG4gICBsZW4oZClcblxuICAgICAgUmV0dXJuIHRoZSBudW1iZXIgb2YgaXRlbXMgaW4gdGhlIGRpY3Rpb25hcnkgKmQqLlxuXG4gICBkW2tleV1cblxuICAgICAgUmV0dXJuIHRoZSBpdGVtIG9mICpkKiB3aXRoIGtleSAqa2V5Ki4gIFJhaXNlcyBhIGBgS2V5RXJyb3JgYCBpZlxuICAgICAgKmtleSogaXMgbm90IGluIHRoZSBtYXAuXG5cbiAgICAgIElmIGEgc3ViY2xhc3Mgb2YgZGljdCBkZWZpbmVzIGEgbWV0aG9kIGBgX19taXNzaW5nX18oKWBgLCBpZiB0aGVcbiAgICAgIGtleSAqa2V5KiBpcyBub3QgcHJlc2VudCwgdGhlIGBgZFtrZXldYGAgb3BlcmF0aW9uIGNhbGxzIHRoYXRcbiAgICAgIG1ldGhvZCB3aXRoIHRoZSBrZXkgKmtleSogYXMgYXJndW1lbnQuICBUaGUgYGBkW2tleV1gYCBvcGVyYXRpb25cbiAgICAgIHRoZW4gcmV0dXJucyBvciByYWlzZXMgd2hhdGV2ZXIgaXMgcmV0dXJuZWQgb3IgcmFpc2VkIGJ5IHRoZVxuICAgICAgYGBfX21pc3NpbmdfXyhrZXkpYGAgY2FsbCBpZiB0aGUga2V5IGlzIG5vdCBwcmVzZW50LiBObyBvdGhlclxuICAgICAgb3BlcmF0aW9ucyBvciBtZXRob2RzIGludm9rZSBgYF9fbWlzc2luZ19fKClgYC4gSWZcbiAgICAgIGBgX19taXNzaW5nX18oKWBgIGlzIG5vdCBkZWZpbmVkLCBgYEtleUVycm9yYGAgaXMgcmFpc2VkLlxuICAgICAgYGBfX21pc3NpbmdfXygpYGAgbXVzdCBiZSBhIG1ldGhvZDsgaXQgY2Fubm90IGJlIGFuIGluc3RhbmNlXG4gICAgICB2YXJpYWJsZTpcblxuICAgICAgICAgPj4+IGNsYXNzIENvdW50ZXIoZGljdCk6XG4gICAgICAgICAuLi4gICAgIGRlZiBfX21pc3NpbmdfXyhzZWxmLCBrZXkpOlxuICAgICAgICAgLi4uICAgICAgICAgcmV0dXJuIDBcbiAgICAgICAgID4+PiBjID0gQ291bnRlcigpXG4gICAgICAgICA+Pj4gY1tcJ3JlZFwnXVxuICAgICAgICAgMFxuICAgICAgICAgPj4+IGNbXCdyZWRcJ10gKz0gMVxuICAgICAgICAgPj4+IGNbXCdyZWRcJ11cbiAgICAgICAgIDFcblxuICAgICAgU2VlIGBgY29sbGVjdGlvbnMuQ291bnRlcmBgIGZvciBhIGNvbXBsZXRlIGltcGxlbWVudGF0aW9uXG4gICAgICBpbmNsdWRpbmcgb3RoZXIgbWV0aG9kcyBoZWxwZnVsIGZvciBhY2N1bXVsYXRpbmcgYW5kIG1hbmFnaW5nXG4gICAgICB0YWxsaWVzLlxuXG4gICBkW2tleV0gPSB2YWx1ZVxuXG4gICAgICBTZXQgYGBkW2tleV1gYCB0byAqdmFsdWUqLlxuXG4gICBkZWwgZFtrZXldXG5cbiAgICAgIFJlbW92ZSBgYGRba2V5XWBgIGZyb20gKmQqLiAgUmFpc2VzIGEgYGBLZXlFcnJvcmBgIGlmICprZXkqIGlzXG4gICAgICBub3QgaW4gdGhlIG1hcC5cblxuICAga2V5IGluIGRcblxuICAgICAgUmV0dXJuIGBgVHJ1ZWBgIGlmICpkKiBoYXMgYSBrZXkgKmtleSosIGVsc2UgYGBGYWxzZWBgLlxuXG4gICBrZXkgbm90IGluIGRcblxuICAgICAgRXF1aXZhbGVudCB0byBgYG5vdCBrZXkgaW4gZGBgLlxuXG4gICBpdGVyKGQpXG5cbiAgICAgIFJldHVybiBhbiBpdGVyYXRvciBvdmVyIHRoZSBrZXlzIG9mIHRoZSBkaWN0aW9uYXJ5LiAgVGhpcyBpcyBhXG4gICAgICBzaG9ydGN1dCBmb3IgYGBpdGVyKGQua2V5cygpKWBgLlxuXG4gICBjbGVhcigpXG5cbiAgICAgIFJlbW92ZSBhbGwgaXRlbXMgZnJvbSB0aGUgZGljdGlvbmFyeS5cblxuICAgY29weSgpXG5cbiAgICAgIFJldHVybiBhIHNoYWxsb3cgY29weSBvZiB0aGUgZGljdGlvbmFyeS5cblxuICAgY2xhc3NtZXRob2QgZnJvbWtleXMoc2VxWywgdmFsdWVdKVxuXG4gICAgICBDcmVhdGUgYSBuZXcgZGljdGlvbmFyeSB3aXRoIGtleXMgZnJvbSAqc2VxKiBhbmQgdmFsdWVzIHNldCB0b1xuICAgICAgKnZhbHVlKi5cblxuICAgICAgYGBmcm9ta2V5cygpYGAgaXMgYSBjbGFzcyBtZXRob2QgdGhhdCByZXR1cm5zIGEgbmV3IGRpY3Rpb25hcnkuXG4gICAgICAqdmFsdWUqIGRlZmF1bHRzIHRvIGBgTm9uZWBgLlxuXG4gICBnZXQoa2V5WywgZGVmYXVsdF0pXG5cbiAgICAgIFJldHVybiB0aGUgdmFsdWUgZm9yICprZXkqIGlmICprZXkqIGlzIGluIHRoZSBkaWN0aW9uYXJ5LCBlbHNlXG4gICAgICAqZGVmYXVsdCouIElmICpkZWZhdWx0KiBpcyBub3QgZ2l2ZW4sIGl0IGRlZmF1bHRzIHRvIGBgTm9uZWBgLFxuICAgICAgc28gdGhhdCB0aGlzIG1ldGhvZCBuZXZlciByYWlzZXMgYSBgYEtleUVycm9yYGAuXG5cbiAgIGl0ZW1zKClcblxuICAgICAgUmV0dXJuIGEgbmV3IHZpZXcgb2YgdGhlIGRpY3Rpb25hcnlcJ3MgaXRlbXMgKGBgKGtleSwgdmFsdWUpYGBcbiAgICAgIHBhaXJzKS4gIFNlZSBiZWxvdyBmb3IgZG9jdW1lbnRhdGlvbiBvZiB2aWV3IG9iamVjdHMuXG5cbiAgIGtleXMoKVxuXG4gICAgICBSZXR1cm4gYSBuZXcgdmlldyBvZiB0aGUgZGljdGlvbmFyeVwncyBrZXlzLiAgU2VlIGJlbG93IGZvclxuICAgICAgZG9jdW1lbnRhdGlvbiBvZiB2aWV3IG9iamVjdHMuXG5cbiAgIHBvcChrZXlbLCBkZWZhdWx0XSlcblxuICAgICAgSWYgKmtleSogaXMgaW4gdGhlIGRpY3Rpb25hcnksIHJlbW92ZSBpdCBhbmQgcmV0dXJuIGl0cyB2YWx1ZSxcbiAgICAgIGVsc2UgcmV0dXJuICpkZWZhdWx0Ki4gIElmICpkZWZhdWx0KiBpcyBub3QgZ2l2ZW4gYW5kICprZXkqIGlzXG4gICAgICBub3QgaW4gdGhlIGRpY3Rpb25hcnksIGEgYGBLZXlFcnJvcmBgIGlzIHJhaXNlZC5cblxuICAgcG9waXRlbSgpXG5cbiAgICAgIFJlbW92ZSBhbmQgcmV0dXJuIGFuIGFyYml0cmFyeSBgYChrZXksIHZhbHVlKWBgIHBhaXIgZnJvbSB0aGVcbiAgICAgIGRpY3Rpb25hcnkuXG5cbiAgICAgIGBgcG9waXRlbSgpYGAgaXMgdXNlZnVsIHRvIGRlc3RydWN0aXZlbHkgaXRlcmF0ZSBvdmVyIGFcbiAgICAgIGRpY3Rpb25hcnksIGFzIG9mdGVuIHVzZWQgaW4gc2V0IGFsZ29yaXRobXMuICBJZiB0aGUgZGljdGlvbmFyeVxuICAgICAgaXMgZW1wdHksIGNhbGxpbmcgYGBwb3BpdGVtKClgYCByYWlzZXMgYSBgYEtleUVycm9yYGAuXG5cbiAgIHNldGRlZmF1bHQoa2V5WywgZGVmYXVsdF0pXG5cbiAgICAgIElmICprZXkqIGlzIGluIHRoZSBkaWN0aW9uYXJ5LCByZXR1cm4gaXRzIHZhbHVlLiAgSWYgbm90LCBpbnNlcnRcbiAgICAgICprZXkqIHdpdGggYSB2YWx1ZSBvZiAqZGVmYXVsdCogYW5kIHJldHVybiAqZGVmYXVsdCouICAqZGVmYXVsdCpcbiAgICAgIGRlZmF1bHRzIHRvIGBgTm9uZWBgLlxuXG4gICB1cGRhdGUoW290aGVyXSlcblxuICAgICAgVXBkYXRlIHRoZSBkaWN0aW9uYXJ5IHdpdGggdGhlIGtleS92YWx1ZSBwYWlycyBmcm9tICpvdGhlciosXG4gICAgICBvdmVyd3JpdGluZyBleGlzdGluZyBrZXlzLiAgUmV0dXJuIGBgTm9uZWBgLlxuXG4gICAgICBgYHVwZGF0ZSgpYGAgYWNjZXB0cyBlaXRoZXIgYW5vdGhlciBkaWN0aW9uYXJ5IG9iamVjdCBvciBhblxuICAgICAgaXRlcmFibGUgb2Yga2V5L3ZhbHVlIHBhaXJzIChhcyB0dXBsZXMgb3Igb3RoZXIgaXRlcmFibGVzIG9mXG4gICAgICBsZW5ndGggdHdvKS4gIElmIGtleXdvcmQgYXJndW1lbnRzIGFyZSBzcGVjaWZpZWQsIHRoZSBkaWN0aW9uYXJ5XG4gICAgICBpcyB0aGVuIHVwZGF0ZWQgd2l0aCB0aG9zZSBrZXkvdmFsdWUgcGFpcnM6IGBgZC51cGRhdGUocmVkPTEsXG4gICAgICBibHVlPTIpYGAuXG5cbiAgIHZhbHVlcygpXG5cbiAgICAgIFJldHVybiBhIG5ldyB2aWV3IG9mIHRoZSBkaWN0aW9uYXJ5XCdzIHZhbHVlcy4gIFNlZSBiZWxvdyBmb3JcbiAgICAgIGRvY3VtZW50YXRpb24gb2YgdmlldyBvYmplY3RzLlxuXG5cbkRpY3Rpb25hcnkgdmlldyBvYmplY3RzXG49PT09PT09PT09PT09PT09PT09PT09PVxuXG5UaGUgb2JqZWN0cyByZXR1cm5lZCBieSBgYGRpY3Qua2V5cygpYGAsIGBgZGljdC52YWx1ZXMoKWBgIGFuZFxuYGBkaWN0Lml0ZW1zKClgYCBhcmUgKnZpZXcgb2JqZWN0cyouICBUaGV5IHByb3ZpZGUgYSBkeW5hbWljIHZpZXcgb25cbnRoZSBkaWN0aW9uYXJ5XCdzIGVudHJpZXMsIHdoaWNoIG1lYW5zIHRoYXQgd2hlbiB0aGUgZGljdGlvbmFyeVxuY2hhbmdlcywgdGhlIHZpZXcgcmVmbGVjdHMgdGhlc2UgY2hhbmdlcy5cblxuRGljdGlvbmFyeSB2aWV3cyBjYW4gYmUgaXRlcmF0ZWQgb3ZlciB0byB5aWVsZCB0aGVpciByZXNwZWN0aXZlIGRhdGEsXG5hbmQgc3VwcG9ydCBtZW1iZXJzaGlwIHRlc3RzOlxuXG5sZW4oZGljdHZpZXcpXG5cbiAgIFJldHVybiB0aGUgbnVtYmVyIG9mIGVudHJpZXMgaW4gdGhlIGRpY3Rpb25hcnkuXG5cbml0ZXIoZGljdHZpZXcpXG5cbiAgIFJldHVybiBhbiBpdGVyYXRvciBvdmVyIHRoZSBrZXlzLCB2YWx1ZXMgb3IgaXRlbXMgKHJlcHJlc2VudGVkIGFzXG4gICB0dXBsZXMgb2YgYGAoa2V5LCB2YWx1ZSlgYCkgaW4gdGhlIGRpY3Rpb25hcnkuXG5cbiAgIEtleXMgYW5kIHZhbHVlcyBhcmUgaXRlcmF0ZWQgb3ZlciBpbiBhbiBhcmJpdHJhcnkgb3JkZXIgd2hpY2ggaXNcbiAgIG5vbi1yYW5kb20sIHZhcmllcyBhY3Jvc3MgUHl0aG9uIGltcGxlbWVudGF0aW9ucywgYW5kIGRlcGVuZHMgb25cbiAgIHRoZSBkaWN0aW9uYXJ5XCdzIGhpc3Rvcnkgb2YgaW5zZXJ0aW9ucyBhbmQgZGVsZXRpb25zLiBJZiBrZXlzLFxuICAgdmFsdWVzIGFuZCBpdGVtcyB2aWV3cyBhcmUgaXRlcmF0ZWQgb3ZlciB3aXRoIG5vIGludGVydmVuaW5nXG4gICBtb2RpZmljYXRpb25zIHRvIHRoZSBkaWN0aW9uYXJ5LCB0aGUgb3JkZXIgb2YgaXRlbXMgd2lsbCBkaXJlY3RseVxuICAgY29ycmVzcG9uZC4gIFRoaXMgYWxsb3dzIHRoZSBjcmVhdGlvbiBvZiBgYCh2YWx1ZSwga2V5KWBgIHBhaXJzXG4gICB1c2luZyBgYHppcCgpYGA6IGBgcGFpcnMgPSB6aXAoZC52YWx1ZXMoKSwgZC5rZXlzKCkpYGAuICBBbm90aGVyXG4gICB3YXkgdG8gY3JlYXRlIHRoZSBzYW1lIGxpc3QgaXMgYGBwYWlycyA9IFsodiwgaykgZm9yIChrLCB2KSBpblxuICAgZC5pdGVtcygpXWBgLlxuXG4gICBJdGVyYXRpbmcgdmlld3Mgd2hpbGUgYWRkaW5nIG9yIGRlbGV0aW5nIGVudHJpZXMgaW4gdGhlIGRpY3Rpb25hcnlcbiAgIG1heSByYWlzZSBhIGBgUnVudGltZUVycm9yYGAgb3IgZmFpbCB0byBpdGVyYXRlIG92ZXIgYWxsIGVudHJpZXMuXG5cbnggaW4gZGljdHZpZXdcblxuICAgUmV0dXJuIGBgVHJ1ZWBgIGlmICp4KiBpcyBpbiB0aGUgdW5kZXJseWluZyBkaWN0aW9uYXJ5XCdzIGtleXMsXG4gICB2YWx1ZXMgb3IgaXRlbXMgKGluIHRoZSBsYXR0ZXIgY2FzZSwgKngqIHNob3VsZCBiZSBhIGBgKGtleSxcbiAgIHZhbHVlKWBgIHR1cGxlKS5cblxuS2V5cyB2aWV3cyBhcmUgc2V0LWxpa2Ugc2luY2UgdGhlaXIgZW50cmllcyBhcmUgdW5pcXVlIGFuZCBoYXNoYWJsZS5cbklmIGFsbCB2YWx1ZXMgYXJlIGhhc2hhYmxlLCBzbyB0aGF0IGBgKGtleSwgdmFsdWUpYGAgcGFpcnMgYXJlIHVuaXF1ZVxuYW5kIGhhc2hhYmxlLCB0aGVuIHRoZSBpdGVtcyB2aWV3IGlzIGFsc28gc2V0LWxpa2UuICAoVmFsdWVzIHZpZXdzIGFyZVxubm90IHRyZWF0ZWQgYXMgc2V0LWxpa2Ugc2luY2UgdGhlIGVudHJpZXMgYXJlIGdlbmVyYWxseSBub3QgdW5pcXVlLilcbkZvciBzZXQtbGlrZSB2aWV3cywgYWxsIG9mIHRoZSBvcGVyYXRpb25zIGRlZmluZWQgZm9yIHRoZSBhYnN0cmFjdFxuYmFzZSBjbGFzcyBgYGNvbGxlY3Rpb25zLlNldGBgIGFyZSBhdmFpbGFibGUgKGZvciBleGFtcGxlLCBgYD09YGAsXG5gYDxgYCwgb3IgYGBeYGApLlxuXG5BbiBleGFtcGxlIG9mIGRpY3Rpb25hcnkgdmlldyB1c2FnZTpcblxuICAgPj4+IGRpc2hlcyA9IHtcJ2VnZ3NcJzogMiwgXCdzYXVzYWdlXCc6IDEsIFwnYmFjb25cJzogMSwgXCdzcGFtXCc6IDUwMH1cbiAgID4+PiBrZXlzID0gZGlzaGVzLmtleXMoKVxuICAgPj4+IHZhbHVlcyA9IGRpc2hlcy52YWx1ZXMoKVxuXG4gICA+Pj4gIyBpdGVyYXRpb25cbiAgID4+PiBuID0gMFxuICAgPj4+IGZvciB2YWwgaW4gdmFsdWVzOlxuICAgLi4uICAgICBuICs9IHZhbFxuICAgPj4+IHByaW50KG4pXG4gICA1MDRcblxuICAgPj4+ICMga2V5cyBhbmQgdmFsdWVzIGFyZSBpdGVyYXRlZCBvdmVyIGluIHRoZSBzYW1lIG9yZGVyXG4gICA+Pj4gbGlzdChrZXlzKVxuICAgW1wnZWdnc1wnLCBcJ2JhY29uXCcsIFwnc2F1c2FnZVwnLCBcJ3NwYW1cJ11cbiAgID4+PiBsaXN0KHZhbHVlcylcbiAgIFsyLCAxLCAxLCA1MDBdXG5cbiAgID4+PiAjIHZpZXcgb2JqZWN0cyBhcmUgZHluYW1pYyBhbmQgcmVmbGVjdCBkaWN0IGNoYW5nZXNcbiAgID4+PiBkZWwgZGlzaGVzW1wnZWdnc1wnXVxuICAgPj4+IGRlbCBkaXNoZXNbXCdzYXVzYWdlXCddXG4gICA+Pj4gbGlzdChrZXlzKVxuICAgW1wnc3BhbVwnLCBcJ2JhY29uXCddXG5cbiAgID4+PiAjIHNldCBvcGVyYXRpb25zXG4gICA+Pj4ga2V5cyAmIHtcJ2VnZ3NcJywgXCdiYWNvblwnLCBcJ3NhbGFkXCd9XG4gICB7XCdiYWNvblwnfVxuICAgPj4+IGtleXMgXiB7XCdzYXVzYWdlXCcsIFwnanVpY2VcJ31cbiAgIHtcJ2p1aWNlXCcsIFwnZWdnc1wnLCBcJ2JhY29uXCcsIFwnc3BhbVwnfVxuJywKICAndHlwZXNtZXRob2RzJzogIlxuTWV0aG9kc1xuKioqKioqKlxuXG5NZXRob2RzIGFyZSBmdW5jdGlvbnMgdGhhdCBhcmUgY2FsbGVkIHVzaW5nIHRoZSBhdHRyaWJ1dGUgbm90YXRpb24uXG5UaGVyZSBhcmUgdHdvIGZsYXZvcnM6IGJ1aWx0LWluIG1ldGhvZHMgKHN1Y2ggYXMgYGBhcHBlbmQoKWBgIG9uXG5saXN0cykgYW5kIGNsYXNzIGluc3RhbmNlIG1ldGhvZHMuICBCdWlsdC1pbiBtZXRob2RzIGFyZSBkZXNjcmliZWRcbndpdGggdGhlIHR5cGVzIHRoYXQgc3VwcG9ydCB0aGVtLlxuXG5JZiB5b3UgYWNjZXNzIGEgbWV0aG9kIChhIGZ1bmN0aW9uIGRlZmluZWQgaW4gYSBjbGFzcyBuYW1lc3BhY2UpXG50aHJvdWdoIGFuIGluc3RhbmNlLCB5b3UgZ2V0IGEgc3BlY2lhbCBvYmplY3Q6IGEgKmJvdW5kIG1ldGhvZCogKGFsc29cbmNhbGxlZCAqaW5zdGFuY2UgbWV0aG9kKikgb2JqZWN0LiBXaGVuIGNhbGxlZCwgaXQgd2lsbCBhZGQgdGhlXG5gYHNlbGZgYCBhcmd1bWVudCB0byB0aGUgYXJndW1lbnQgbGlzdC4gIEJvdW5kIG1ldGhvZHMgaGF2ZSB0d29cbnNwZWNpYWwgcmVhZC1vbmx5IGF0dHJpYnV0ZXM6IGBgbS5fX3NlbGZfX2BgIGlzIHRoZSBvYmplY3Qgb24gd2hpY2hcbnRoZSBtZXRob2Qgb3BlcmF0ZXMsIGFuZCBgYG0uX19mdW5jX19gYCBpcyB0aGUgZnVuY3Rpb24gaW1wbGVtZW50aW5nXG50aGUgbWV0aG9kLiAgQ2FsbGluZyBgYG0oYXJnLTEsIGFyZy0yLCAuLi4sIGFyZy1uKWBgIGlzIGNvbXBsZXRlbHlcbmVxdWl2YWxlbnQgdG8gY2FsbGluZyBgYG0uX19mdW5jX18obS5fX3NlbGZfXywgYXJnLTEsIGFyZy0yLCAuLi4sXG5hcmctbilgYC5cblxuTGlrZSBmdW5jdGlvbiBvYmplY3RzLCBib3VuZCBtZXRob2Qgb2JqZWN0cyBzdXBwb3J0IGdldHRpbmcgYXJiaXRyYXJ5XG5hdHRyaWJ1dGVzLiAgSG93ZXZlciwgc2luY2UgbWV0aG9kIGF0dHJpYnV0ZXMgYXJlIGFjdHVhbGx5IHN0b3JlZCBvblxudGhlIHVuZGVybHlpbmcgZnVuY3Rpb24gb2JqZWN0IChgYG1ldGguX19mdW5jX19gYCksIHNldHRpbmcgbWV0aG9kXG5hdHRyaWJ1dGVzIG9uIGJvdW5kIG1ldGhvZHMgaXMgZGlzYWxsb3dlZC4gIEF0dGVtcHRpbmcgdG8gc2V0IGEgbWV0aG9kXG5hdHRyaWJ1dGUgcmVzdWx0cyBpbiBhIGBgVHlwZUVycm9yYGAgYmVpbmcgcmFpc2VkLiAgSW4gb3JkZXIgdG8gc2V0IGFcbm1ldGhvZCBhdHRyaWJ1dGUsIHlvdSBuZWVkIHRvIGV4cGxpY2l0bHkgc2V0IGl0IG9uIHRoZSB1bmRlcmx5aW5nXG5mdW5jdGlvbiBvYmplY3Q6XG5cbiAgIGNsYXNzIEM6XG4gICAgICAgZGVmIG1ldGhvZChzZWxmKTpcbiAgICAgICAgICAgcGFzc1xuXG4gICBjID0gQygpXG4gICBjLm1ldGhvZC5fX2Z1bmNfXy53aG9hbWkgPSAnbXkgbmFtZSBpcyBjJ1xuXG5TZWUgKlRoZSBzdGFuZGFyZCB0eXBlIGhpZXJhcmNoeSogZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4iLAotICd0eXBlc21vZHVsZXMnOiAiXG5Nb2R1bGVzXG4qKioqKioqXG5cblRoZSBvbmx5IHNwZWNpYWwgb3BlcmF0aW9uIG9uIGEgbW9kdWxlIGlzIGF0dHJpYnV0ZSBhY2Nlc3M6XG5gYG0ubmFtZWBgLCB3aGVyZSAqbSogaXMgYSBtb2R1bGUgYW5kICpuYW1lKiBhY2Nlc3NlcyBhIG5hbWUgZGVmaW5lZFxuaW4gKm0qJ3Mgc3ltYm9sIHRhYmxlLiBNb2R1bGUgYXR0cmlidXRlcyBjYW4gYmUgYXNzaWduZWQgdG8uICAoTm90ZVxudGhhdCB0aGUgYGBpbXBvcnRgYCBzdGF0ZW1lbnQgaXMgbm90LCBzdHJpY3RseSBzcGVha2luZywgYW4gb3BlcmF0aW9uXG5vbiBhIG1vZHVsZSBvYmplY3Q7IGBgaW1wb3J0IGZvb2BgIGRvZXMgbm90IHJlcXVpcmUgYSBtb2R1bGUgb2JqZWN0XG5uYW1lZCAqZm9vKiB0byBleGlzdCwgcmF0aGVyIGl0IHJlcXVpcmVzIGFuIChleHRlcm5hbCkgKmRlZmluaXRpb24qXG5mb3IgYSBtb2R1bGUgbmFtZWQgKmZvbyogc29tZXdoZXJlLilcblxuQSBzcGVjaWFsIGF0dHJpYnV0ZSBvZiBldmVyeSBtb2R1bGUgaXMgYGBfX2RpY3RfX2BgLiBUaGlzIGlzIHRoZVxuZGljdGlvbmFyeSBjb250YWluaW5nIHRoZSBtb2R1bGUncyBzeW1ib2wgdGFibGUuIE1vZGlmeWluZyB0aGlzXG5kaWN0aW9uYXJ5IHdpbGwgYWN0dWFsbHkgY2hhbmdlIHRoZSBtb2R1bGUncyBzeW1ib2wgdGFibGUsIGJ1dCBkaXJlY3RcbmFzc2lnbm1lbnQgdG8gdGhlIGBgX19kaWN0X19gYCBhdHRyaWJ1dGUgaXMgbm90IHBvc3NpYmxlICh5b3UgY2FuXG53cml0ZSBgYG0uX19kaWN0X19bJ2EnXSA9IDFgYCwgd2hpY2ggZGVmaW5lcyBgYG0uYWBgIHRvIGJlIGBgMWBgLCBidXRcbnlvdSBjYW4ndCB3cml0ZSBgYG0uX19kaWN0X18gPSB7fWBgKS4gIE1vZGlmeWluZyBgYF9fZGljdF9fYGAgZGlyZWN0bHlcbmlzIG5vdCByZWNvbW1lbmRlZC5cblxuTW9kdWxlcyBidWlsdCBpbnRvIHRoZSBpbnRlcnByZXRlciBhcmUgd3JpdHRlbiBsaWtlIHRoaXM6IGBgPG1vZHVsZVxuJ3N5cycgKGJ1aWx0LWluKT5gYC4gIElmIGxvYWRlZCBmcm9tIGEgZmlsZSwgdGhleSBhcmUgd3JpdHRlbiBhc1xuYGA8bW9kdWxlICdvcycgZnJvbSAnL3Vzci9sb2NhbC9saWIvcHl0aG9uWC5ZL29zLnB5Yyc+YGAuXG4iLAotICd0eXBlc3NlcSc6ICdcblNlcXVlbmNlIFR5cGVzIC0tLSBgYHN0cmBgLCBgYGJ5dGVzYGAsIGBgYnl0ZWFycmF5YGAsIGBgbGlzdGBgLCBgYHR1cGxlYGAsIGBgcmFuZ2VgYFxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cblRoZXJlIGFyZSBzaXggc2VxdWVuY2UgdHlwZXM6IHN0cmluZ3MsIGJ5dGUgc2VxdWVuY2VzIChgYGJ5dGVzYGBcbm9iamVjdHMpLCBieXRlIGFycmF5cyAoYGBieXRlYXJyYXlgYCBvYmplY3RzKSwgbGlzdHMsIHR1cGxlcywgYW5kXG5yYW5nZSBvYmplY3RzLiAgRm9yIG90aGVyIGNvbnRhaW5lcnMgc2VlIHRoZSBidWlsdCBpbiBgYGRpY3RgYCBhbmRcbmBgc2V0YGAgY2xhc3NlcywgYW5kIHRoZSBgYGNvbGxlY3Rpb25zYGAgbW9kdWxlLlxuXG5TdHJpbmdzIGNvbnRhaW4gVW5pY29kZSBjaGFyYWN0ZXJzLiAgVGhlaXIgbGl0ZXJhbHMgYXJlIHdyaXR0ZW4gaW5cbnNpbmdsZSBvciBkb3VibGUgcXVvdGVzOiBgYFwneHl6enlcJ2BgLCBgYCJmcm9ib3p6ImBgLiAgU2VlICpTdHJpbmcgYW5kXG5CeXRlcyBsaXRlcmFscyogZm9yIG1vcmUgYWJvdXQgc3RyaW5nIGxpdGVyYWxzLiAgSW4gYWRkaXRpb24gdG8gdGhlXG5mdW5jdGlvbmFsaXR5IGRlc2NyaWJlZCBoZXJlLCB0aGVyZSBhcmUgYWxzbyBzdHJpbmctc3BlY2lmaWMgbWV0aG9kc1xuZGVzY3JpYmVkIGluIHRoZSAqU3RyaW5nIE1ldGhvZHMqIHNlY3Rpb24uXG5cbkJ5dGVzIGFuZCBieXRlYXJyYXkgb2JqZWN0cyBjb250YWluIHNpbmdsZSBieXRlcyAtLSB0aGUgZm9ybWVyIGlzXG5pbW11dGFibGUgd2hpbGUgdGhlIGxhdHRlciBpcyBhIG11dGFibGUgc2VxdWVuY2UuICBCeXRlcyBvYmplY3RzIGNhblxuYmUgY29uc3RydWN0ZWQgdGhlIGNvbnN0cnVjdG9yLCBgYGJ5dGVzKClgYCwgYW5kIGZyb20gbGl0ZXJhbHM7IHVzZSBhXG5gYGJgYCBwcmVmaXggd2l0aCBub3JtYWwgc3RyaW5nIHN5bnRheDogYGBiXCd4eXp6eVwnYGAuICBUbyBjb25zdHJ1Y3RcbmJ5dGUgYXJyYXlzLCB1c2UgdGhlIGBgYnl0ZWFycmF5KClgYCBmdW5jdGlvbi5cblxuV2hpbGUgc3RyaW5nIG9iamVjdHMgYXJlIHNlcXVlbmNlcyBvZiBjaGFyYWN0ZXJzIChyZXByZXNlbnRlZCBieVxuc3RyaW5ncyBvZiBsZW5ndGggMSksIGJ5dGVzIGFuZCBieXRlYXJyYXkgb2JqZWN0cyBhcmUgc2VxdWVuY2VzIG9mXG4qaW50ZWdlcnMqIChiZXR3ZWVuIDAgYW5kIDI1NSksIHJlcHJlc2VudGluZyB0aGUgQVNDSUkgdmFsdWUgb2Ygc2luZ2xlXG5ieXRlcy4gIFRoYXQgbWVhbnMgdGhhdCBmb3IgYSBieXRlcyBvciBieXRlYXJyYXkgb2JqZWN0ICpiKiwgYGBiWzBdYGBcbndpbGwgYmUgYW4gaW50ZWdlciwgd2hpbGUgYGBiWzA6MV1gYCB3aWxsIGJlIGEgYnl0ZXMgb3IgYnl0ZWFycmF5XG5vYmplY3Qgb2YgbGVuZ3RoIDEuICBUaGUgcmVwcmVzZW50YXRpb24gb2YgYnl0ZXMgb2JqZWN0cyB1c2VzIHRoZVxubGl0ZXJhbCBmb3JtYXQgKGBgYlwnLi4uXCdgYCkgc2luY2UgaXQgaXMgZ2VuZXJhbGx5IG1vcmUgdXNlZnVsIHRoYW5cbmUuZy4gYGBieXRlcyhbNTAsIDE5LCAxMDBdKWBgLiAgWW91IGNhbiBhbHdheXMgY29udmVydCBhIGJ5dGVzIG9iamVjdFxuaW50byBhIGxpc3Qgb2YgaW50ZWdlcnMgdXNpbmcgYGBsaXN0KGIpYGAuXG5cbkFsc28sIHdoaWxlIGluIHByZXZpb3VzIFB5dGhvbiB2ZXJzaW9ucywgYnl0ZSBzdHJpbmdzIGFuZCBVbmljb2RlXG5zdHJpbmdzIGNvdWxkIGJlIGV4Y2hhbmdlZCBmb3IgZWFjaCBvdGhlciByYXRoZXIgZnJlZWx5IChiYXJyaW5nXG5lbmNvZGluZyBpc3N1ZXMpLCBzdHJpbmdzIGFuZCBieXRlcyBhcmUgbm93IGNvbXBsZXRlbHkgc2VwYXJhdGVcbmNvbmNlcHRzLiAgVGhlcmVcJ3Mgbm8gaW1wbGljaXQgZW4tL2RlY29kaW5nIGlmIHlvdSBwYXNzIGFuIG9iamVjdCBvZlxudGhlIHdyb25nIHR5cGUuICBBIHN0cmluZyBhbHdheXMgY29tcGFyZXMgdW5lcXVhbCB0byBhIGJ5dGVzIG9yXG5ieXRlYXJyYXkgb2JqZWN0LlxuXG5MaXN0cyBhcmUgY29uc3RydWN0ZWQgd2l0aCBzcXVhcmUgYnJhY2tldHMsIHNlcGFyYXRpbmcgaXRlbXMgd2l0aFxuY29tbWFzOiBgYFthLCBiLCBjXWBgLiAgVHVwbGVzIGFyZSBjb25zdHJ1Y3RlZCBieSB0aGUgY29tbWEgb3BlcmF0b3Jcbihub3Qgd2l0aGluIHNxdWFyZSBicmFja2V0cyksIHdpdGggb3Igd2l0aG91dCBlbmNsb3NpbmcgcGFyZW50aGVzZXMsXG5idXQgYW4gZW1wdHkgdHVwbGUgbXVzdCBoYXZlIHRoZSBlbmNsb3NpbmcgcGFyZW50aGVzZXMsIHN1Y2ggYXMgYGBhLFxuYiwgY2BgIG9yIGBgKClgYC4gIEEgc2luZ2xlIGl0ZW0gdHVwbGUgbXVzdCBoYXZlIGEgdHJhaWxpbmcgY29tbWEsXG5zdWNoIGFzIGBgKGQsKWBgLlxuXG5PYmplY3RzIG9mIHR5cGUgcmFuZ2UgYXJlIGNyZWF0ZWQgdXNpbmcgdGhlIGBgcmFuZ2UoKWBgIGZ1bmN0aW9uLlxuVGhleSBkb25cJ3Qgc3VwcG9ydCBjb25jYXRlbmF0aW9uIG9yIHJlcGV0aXRpb24sIGFuZCB1c2luZyBgYG1pbigpYGAgb3JcbmBgbWF4KClgYCBvbiB0aGVtIGlzIGluZWZmaWNpZW50LlxuXG5Nb3N0IHNlcXVlbmNlIHR5cGVzIHN1cHBvcnQgdGhlIGZvbGxvd2luZyBvcGVyYXRpb25zLiAgVGhlIGBgaW5gYCBhbmRcbmBgbm90IGluYGAgb3BlcmF0aW9ucyBoYXZlIHRoZSBzYW1lIHByaW9yaXRpZXMgYXMgdGhlIGNvbXBhcmlzb25cbm9wZXJhdGlvbnMuICBUaGUgYGArYGAgYW5kIGBgKmBgIG9wZXJhdGlvbnMgaGF2ZSB0aGUgc2FtZSBwcmlvcml0eSBhc1xudGhlIGNvcnJlc3BvbmRpbmcgbnVtZXJpYyBvcGVyYXRpb25zLiBbM10gQWRkaXRpb25hbCBtZXRob2RzIGFyZVxucHJvdmlkZWQgZm9yICpNdXRhYmxlIFNlcXVlbmNlIFR5cGVzKi5cblxuVGhpcyB0YWJsZSBsaXN0cyB0aGUgc2VxdWVuY2Ugb3BlcmF0aW9ucyBzb3J0ZWQgaW4gYXNjZW5kaW5nIHByaW9yaXR5XG4ob3BlcmF0aW9ucyBpbiB0aGUgc2FtZSBib3ggaGF2ZSB0aGUgc2FtZSBwcmlvcml0eSkuICBJbiB0aGUgdGFibGUsXG4qcyogYW5kICp0KiBhcmUgc2VxdWVuY2VzIG9mIHRoZSBzYW1lIHR5cGU7ICpuKiwgKmkqLCAqaiogYW5kICprKiBhcmVcbmludGVnZXJzLlxuXG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IE9wZXJhdGlvbiAgICAgICAgICB8IFJlc3VsdCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgICAgICB8XG4rPT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT0rXG58IGBgeCBpbiBzYGAgICAgICAgICB8IGBgVHJ1ZWBgIGlmIGFuIGl0ZW0gb2YgKnMqIGlzICAgIHwgKDEpICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICB8IGVxdWFsIHRvICp4KiwgZWxzZSBgYEZhbHNlYGAgICAgIHwgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgeCBub3QgaW4gc2BgICAgICB8IGBgRmFsc2VgYCBpZiBhbiBpdGVtIG9mICpzKiBpcyAgIHwgKDEpICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICB8IGVxdWFsIHRvICp4KiwgZWxzZSBgYFRydWVgYCAgICAgIHwgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgcyArIHRgYCAgICAgICAgICB8IHRoZSBjb25jYXRlbmF0aW9uIG9mICpzKiBhbmQgKnQqIHwgKDYpICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgcyAqIG4sIG4gKiBzYGAgICB8ICpuKiBzaGFsbG93IGNvcGllcyBvZiAqcyogICAgICAgIHwgKDIpICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICB8IGNvbmNhdGVuYXRlZCAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgc1tpXWBgICAgICAgICAgICB8ICppKlwndGggaXRlbSBvZiAqcyosIG9yaWdpbiAwICAgICB8ICgzKSAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHNbaTpqXWBgICAgICAgICAgfCBzbGljZSBvZiAqcyogZnJvbSAqaSogdG8gKmoqICAgICB8ICgzKSg0KSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHNbaTpqOmtdYGAgICAgICAgfCBzbGljZSBvZiAqcyogZnJvbSAqaSogdG8gKmoqICAgICB8ICgzKSg1KSAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgfCB3aXRoIHN0ZXAgKmsqICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYGxlbihzKWBgICAgICAgICAgfCBsZW5ndGggb2YgKnMqICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYG1pbihzKWBgICAgICAgICAgfCBzbWFsbGVzdCBpdGVtIG9mICpzKiAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYG1heChzKWBgICAgICAgICAgfCBsYXJnZXN0IGl0ZW0gb2YgKnMqICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHMuaW5kZXgoaSlgYCAgICAgfCBpbmRleCBvZiB0aGUgZmlyc3Qgb2NjdXJlbmNlIG9mICB8ICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgfCAqaSogaW4gKnMqICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xufCBgYHMuY291bnQoaSlgYCAgICAgfCB0b3RhbCBudW1iZXIgb2Ygb2NjdXJlbmNlcyBvZiAgICB8ICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgfCAqaSogaW4gKnMqICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tK1xuXG5TZXF1ZW5jZSB0eXBlcyBhbHNvIHN1cHBvcnQgY29tcGFyaXNvbnMuICBJbiBwYXJ0aWN1bGFyLCB0dXBsZXMgYW5kXG5saXN0cyBhcmUgY29tcGFyZWQgbGV4aWNvZ3JhcGhpY2FsbHkgYnkgY29tcGFyaW5nIGNvcnJlc3BvbmRpbmdcbmVsZW1lbnRzLiAgVGhpcyBtZWFucyB0aGF0IHRvIGNvbXBhcmUgZXF1YWwsIGV2ZXJ5IGVsZW1lbnQgbXVzdFxuY29tcGFyZSBlcXVhbCBhbmQgdGhlIHR3byBzZXF1ZW5jZXMgbXVzdCBiZSBvZiB0aGUgc2FtZSB0eXBlIGFuZCBoYXZlXG50aGUgc2FtZSBsZW5ndGguICAoRm9yIGZ1bGwgZGV0YWlscyBzZWUgKkNvbXBhcmlzb25zKiBpbiB0aGUgbGFuZ3VhZ2VcbnJlZmVyZW5jZS4pXG5cbk5vdGVzOlxuXG4xLiBXaGVuICpzKiBpcyBhIHN0cmluZyBvYmplY3QsIHRoZSBgYGluYGAgYW5kIGBgbm90IGluYGAgb3BlcmF0aW9uc1xuICAgYWN0IGxpa2UgYSBzdWJzdHJpbmcgdGVzdC5cblxuMi4gVmFsdWVzIG9mICpuKiBsZXNzIHRoYW4gYGAwYGAgYXJlIHRyZWF0ZWQgYXMgYGAwYGAgKHdoaWNoIHlpZWxkcyBhblxuICAgZW1wdHkgc2VxdWVuY2Ugb2YgdGhlIHNhbWUgdHlwZSBhcyAqcyopLiAgTm90ZSBhbHNvIHRoYXQgdGhlIGNvcGllc1xuICAgYXJlIHNoYWxsb3c7IG5lc3RlZCBzdHJ1Y3R1cmVzIGFyZSBub3QgY29waWVkLiAgVGhpcyBvZnRlbiBoYXVudHNcbiAgIG5ldyBQeXRob24gcHJvZ3JhbW1lcnM7IGNvbnNpZGVyOlxuXG4gICA+Pj4gbGlzdHMgPSBbW11dICogM1xuICAgPj4+IGxpc3RzXG4gICBbW10sIFtdLCBbXV1cbiAgID4+PiBsaXN0c1swXS5hcHBlbmQoMylcbiAgID4+PiBsaXN0c1xuICAgW1szXSwgWzNdLCBbM11dXG5cbiAgIFdoYXQgaGFzIGhhcHBlbmVkIGlzIHRoYXQgYGBbW11dYGAgaXMgYSBvbmUtZWxlbWVudCBsaXN0IGNvbnRhaW5pbmdcbiAgIGFuIGVtcHR5IGxpc3QsIHNvIGFsbCB0aHJlZSBlbGVtZW50cyBvZiBgYFtbXV0gKiAzYGAgYXJlIChwb2ludGVyc1xuICAgdG8pIHRoaXMgc2luZ2xlIGVtcHR5IGxpc3QuICBNb2RpZnlpbmcgYW55IG9mIHRoZSBlbGVtZW50cyBvZlxuICAgYGBsaXN0c2BgIG1vZGlmaWVzIHRoaXMgc2luZ2xlIGxpc3QuIFlvdSBjYW4gY3JlYXRlIGEgbGlzdCBvZlxuICAgZGlmZmVyZW50IGxpc3RzIHRoaXMgd2F5OlxuXG4gICA+Pj4gbGlzdHMgPSBbW10gZm9yIGkgaW4gcmFuZ2UoMyldXG4gICA+Pj4gbGlzdHNbMF0uYXBwZW5kKDMpXG4gICA+Pj4gbGlzdHNbMV0uYXBwZW5kKDUpXG4gICA+Pj4gbGlzdHNbMl0uYXBwZW5kKDcpXG4gICA+Pj4gbGlzdHNcbiAgIFtbM10sIFs1XSwgWzddXVxuXG4zLiBJZiAqaSogb3IgKmoqIGlzIG5lZ2F0aXZlLCB0aGUgaW5kZXggaXMgcmVsYXRpdmUgdG8gdGhlIGVuZCBvZiB0aGVcbiAgIHN0cmluZzogYGBsZW4ocykgKyBpYGAgb3IgYGBsZW4ocykgKyBqYGAgaXMgc3Vic3RpdHV0ZWQuICBCdXQgbm90ZVxuICAgdGhhdCBgYC0wYGAgaXMgc3RpbGwgYGAwYGAuXG5cbjQuIFRoZSBzbGljZSBvZiAqcyogZnJvbSAqaSogdG8gKmoqIGlzIGRlZmluZWQgYXMgdGhlIHNlcXVlbmNlIG9mXG4gICBpdGVtcyB3aXRoIGluZGV4ICprKiBzdWNoIHRoYXQgYGBpIDw9IGsgPCBqYGAuICBJZiAqaSogb3IgKmoqIGlzXG4gICBncmVhdGVyIHRoYW4gYGBsZW4ocylgYCwgdXNlIGBgbGVuKHMpYGAuICBJZiAqaSogaXMgb21pdHRlZCBvclxuICAgYGBOb25lYGAsIHVzZSBgYDBgYC4gIElmICpqKiBpcyBvbWl0dGVkIG9yIGBgTm9uZWBgLCB1c2VcbiAgIGBgbGVuKHMpYGAuICBJZiAqaSogaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICpqKiwgdGhlIHNsaWNlIGlzXG4gICBlbXB0eS5cblxuNS4gVGhlIHNsaWNlIG9mICpzKiBmcm9tICppKiB0byAqaiogd2l0aCBzdGVwICprKiBpcyBkZWZpbmVkIGFzIHRoZVxuICAgc2VxdWVuY2Ugb2YgaXRlbXMgd2l0aCBpbmRleCAgYGB4ID0gaSArIG4qa2BgIHN1Y2ggdGhhdCBgYDAgPD0gbiA8XG4gICAoai1pKS9rYGAuICBJbiBvdGhlciB3b3JkcywgdGhlIGluZGljZXMgYXJlIGBgaWBgLCBgYGkra2BgLFxuICAgYGBpKzIqa2BgLCBgYGkrMyprYGAgYW5kIHNvIG9uLCBzdG9wcGluZyB3aGVuICpqKiBpcyByZWFjaGVkIChidXRcbiAgIG5ldmVyIGluY2x1ZGluZyAqaiopLiAgSWYgKmkqIG9yICpqKiBpcyBncmVhdGVyIHRoYW4gYGBsZW4ocylgYCxcbiAgIHVzZSBgYGxlbihzKWBgLiAgSWYgKmkqIG9yICpqKiBhcmUgb21pdHRlZCBvciBgYE5vbmVgYCwgdGhleSBiZWNvbWVcbiAgICJlbmQiIHZhbHVlcyAod2hpY2ggZW5kIGRlcGVuZHMgb24gdGhlIHNpZ24gb2YgKmsqKS4gIE5vdGUsICprKlxuICAgY2Fubm90IGJlIHplcm8uIElmICprKiBpcyBgYE5vbmVgYCwgaXQgaXMgdHJlYXRlZCBsaWtlIGBgMWBgLlxuXG42LiAqKkNQeXRob24gaW1wbGVtZW50YXRpb24gZGV0YWlsOioqIElmICpzKiBhbmQgKnQqIGFyZSBib3RoIHN0cmluZ3MsXG4gICBzb21lIFB5dGhvbiBpbXBsZW1lbnRhdGlvbnMgc3VjaCBhcyBDUHl0aG9uIGNhbiB1c3VhbGx5IHBlcmZvcm0gYW5cbiAgIGluLXBsYWNlIG9wdGltaXphdGlvbiBmb3IgYXNzaWdubWVudHMgb2YgdGhlIGZvcm0gYGBzID0gcyArIHRgYCBvclxuICAgYGBzICs9IHRgYC4gIFdoZW4gYXBwbGljYWJsZSwgdGhpcyBvcHRpbWl6YXRpb24gbWFrZXMgcXVhZHJhdGljXG4gICBydW4tdGltZSBtdWNoIGxlc3MgbGlrZWx5LiAgVGhpcyBvcHRpbWl6YXRpb24gaXMgYm90aCB2ZXJzaW9uIGFuZFxuICAgaW1wbGVtZW50YXRpb24gZGVwZW5kZW50LiAgRm9yIHBlcmZvcm1hbmNlIHNlbnNpdGl2ZSBjb2RlLCBpdCBpc1xuICAgcHJlZmVyYWJsZSB0byB1c2UgdGhlIGBgc3RyLmpvaW4oKWBgIG1ldGhvZCB3aGljaCBhc3N1cmVzXG4gICBjb25zaXN0ZW50IGxpbmVhciBjb25jYXRlbmF0aW9uIHBlcmZvcm1hbmNlIGFjcm9zcyB2ZXJzaW9ucyBhbmRcbiAgIGltcGxlbWVudGF0aW9ucy5cblxuXG5TdHJpbmcgTWV0aG9kc1xuPT09PT09PT09PT09PT1cblxuU3RyaW5nIG9iamVjdHMgc3VwcG9ydCB0aGUgbWV0aG9kcyBsaXN0ZWQgYmVsb3cuXG5cbkluIGFkZGl0aW9uLCBQeXRob25cJ3Mgc3RyaW5ncyBzdXBwb3J0IHRoZSBzZXF1ZW5jZSB0eXBlIG1ldGhvZHNcbmRlc2NyaWJlZCBpbiB0aGUgKlNlcXVlbmNlIFR5cGVzIC0tLSBzdHIsIGJ5dGVzLCBieXRlYXJyYXksIGxpc3QsXG50dXBsZSwgcmFuZ2UqIHNlY3Rpb24uIFRvIG91dHB1dCBmb3JtYXR0ZWQgc3RyaW5ncywgc2VlIHRoZSAqU3RyaW5nXG5Gb3JtYXR0aW5nKiBzZWN0aW9uLiBBbHNvLCBzZWUgdGhlIGBgcmVgYCBtb2R1bGUgZm9yIHN0cmluZyBmdW5jdGlvbnNcbmJhc2VkIG9uIHJlZ3VsYXIgZXhwcmVzc2lvbnMuXG5cbnN0ci5jYXBpdGFsaXplKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggaXRzIGZpcnN0IGNoYXJhY3RlciBjYXBpdGFsaXplZFxuICAgYW5kIHRoZSByZXN0IGxvd2VyY2FzZWQuXG5cbnN0ci5jZW50ZXIod2lkdGhbLCBmaWxsY2hhcl0pXG5cbiAgIFJldHVybiBjZW50ZXJlZCBpbiBhIHN0cmluZyBvZiBsZW5ndGggKndpZHRoKi4gUGFkZGluZyBpcyBkb25lXG4gICB1c2luZyB0aGUgc3BlY2lmaWVkICpmaWxsY2hhciogKGRlZmF1bHQgaXMgYSBzcGFjZSkuXG5cbnN0ci5jb3VudChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gdGhlIG51bWJlciBvZiBub24tb3ZlcmxhcHBpbmcgb2NjdXJyZW5jZXMgb2Ygc3Vic3RyaW5nICpzdWIqXG4gICBpbiB0aGUgcmFuZ2UgWypzdGFydCosICplbmQqXS4gIE9wdGlvbmFsIGFyZ3VtZW50cyAqc3RhcnQqIGFuZFxuICAgKmVuZCogYXJlIGludGVycHJldGVkIGFzIGluIHNsaWNlIG5vdGF0aW9uLlxuXG5zdHIuZW5jb2RlKGVuY29kaW5nPSJ1dGYtOCIsIGVycm9ycz0ic3RyaWN0IilcblxuICAgUmV0dXJuIGFuIGVuY29kZWQgdmVyc2lvbiBvZiB0aGUgc3RyaW5nIGFzIGEgYnl0ZXMgb2JqZWN0LiBEZWZhdWx0XG4gICBlbmNvZGluZyBpcyBgYFwndXRmLThcJ2BgLiAqZXJyb3JzKiBtYXkgYmUgZ2l2ZW4gdG8gc2V0IGEgZGlmZmVyZW50XG4gICBlcnJvciBoYW5kbGluZyBzY2hlbWUuIFRoZSBkZWZhdWx0IGZvciAqZXJyb3JzKiBpcyBgYFwnc3RyaWN0XCdgYCxcbiAgIG1lYW5pbmcgdGhhdCBlbmNvZGluZyBlcnJvcnMgcmFpc2UgYSBgYFVuaWNvZGVFcnJvcmBgLiBPdGhlclxuICAgcG9zc2libGUgdmFsdWVzIGFyZSBgYFwnaWdub3JlXCdgYCwgYGBcJ3JlcGxhY2VcJ2BgLFxuICAgYGBcJ3htbGNoYXJyZWZyZXBsYWNlXCdgYCwgYGBcJ2JhY2tzbGFzaHJlcGxhY2VcJ2BgIGFuZCBhbnkgb3RoZXIgbmFtZVxuICAgcmVnaXN0ZXJlZCB2aWEgYGBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoKWBgLCBzZWUgc2VjdGlvbiAqQ29kZWMgQmFzZVxuICAgQ2xhc3NlcyouIEZvciBhIGxpc3Qgb2YgcG9zc2libGUgZW5jb2RpbmdzLCBzZWUgc2VjdGlvbiAqU3RhbmRhcmRcbiAgIEVuY29kaW5ncyouXG5cbiAgIENoYW5nZWQgaW4gdmVyc2lvbiAzLjE6IFN1cHBvcnQgZm9yIGtleXdvcmQgYXJndW1lbnRzIGFkZGVkLlxuXG5zdHIuZW5kc3dpdGgoc3VmZml4Wywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIHRoZSBzdHJpbmcgZW5kcyB3aXRoIHRoZSBzcGVjaWZpZWQgKnN1ZmZpeCosXG4gICBvdGhlcndpc2UgcmV0dXJuIGBgRmFsc2VgYC4gICpzdWZmaXgqIGNhbiBhbHNvIGJlIGEgdHVwbGUgb2ZcbiAgIHN1ZmZpeGVzIHRvIGxvb2sgZm9yLiAgV2l0aCBvcHRpb25hbCAqc3RhcnQqLCB0ZXN0IGJlZ2lubmluZyBhdFxuICAgdGhhdCBwb3NpdGlvbi4gIFdpdGggb3B0aW9uYWwgKmVuZCosIHN0b3AgY29tcGFyaW5nIGF0IHRoYXRcbiAgIHBvc2l0aW9uLlxuXG5zdHIuZXhwYW5kdGFicyhbdGFic2l6ZV0pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aGVyZSBhbGwgdGFiIGNoYXJhY3RlcnMgYXJlIHJlcGxhY2VkXG4gICBieSBvbmUgb3IgbW9yZSBzcGFjZXMsIGRlcGVuZGluZyBvbiB0aGUgY3VycmVudCBjb2x1bW4gYW5kIHRoZVxuICAgZ2l2ZW4gdGFiIHNpemUuICBUaGUgY29sdW1uIG51bWJlciBpcyByZXNldCB0byB6ZXJvIGFmdGVyIGVhY2hcbiAgIG5ld2xpbmUgb2NjdXJyaW5nIGluIHRoZSBzdHJpbmcuIElmICp0YWJzaXplKiBpcyBub3QgZ2l2ZW4sIGEgdGFiXG4gICBzaXplIG9mIGBgOGBgIGNoYXJhY3RlcnMgaXMgYXNzdW1lZC4gIFRoaXMgZG9lc25cJ3QgdW5kZXJzdGFuZCBvdGhlclxuICAgbm9uLXByaW50aW5nIGNoYXJhY3RlcnMgb3IgZXNjYXBlIHNlcXVlbmNlcy5cblxuc3RyLmZpbmQoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIHRoZSBsb3dlc3QgaW5kZXggaW4gdGhlIHN0cmluZyB3aGVyZSBzdWJzdHJpbmcgKnN1YiogaXNcbiAgIGZvdW5kLCBzdWNoIHRoYXQgKnN1YiogaXMgY29udGFpbmVkIGluIHRoZSBzbGljZSBgYHNbc3RhcnQ6ZW5kXWBgLlxuICAgT3B0aW9uYWwgYXJndW1lbnRzICpzdGFydCogYW5kICplbmQqIGFyZSBpbnRlcnByZXRlZCBhcyBpbiBzbGljZVxuICAgbm90YXRpb24uICBSZXR1cm4gYGAtMWBgIGlmICpzdWIqIGlzIG5vdCBmb3VuZC5cblxuICAgTm90ZTogVGhlIGBgZmluZCgpYGAgbWV0aG9kIHNob3VsZCBiZSB1c2VkIG9ubHkgaWYgeW91IG5lZWQgdG8ga25vdyB0aGVcbiAgICAgcG9zaXRpb24gb2YgKnN1YiouICBUbyBjaGVjayBpZiAqc3ViKiBpcyBhIHN1YnN0cmluZyBvciBub3QsIHVzZVxuICAgICB0aGUgYGBpbmBgIG9wZXJhdG9yOlxuXG4gICAgICAgID4+PiBcJ1B5XCcgaW4gXCdQeXRob25cJ1xuICAgICAgICBUcnVlXG5cbnN0ci5mb3JtYXQoKmFyZ3MsICoqa3dhcmdzKVxuXG4gICBQZXJmb3JtIGEgc3RyaW5nIGZvcm1hdHRpbmcgb3BlcmF0aW9uLiAgVGhlIHN0cmluZyBvbiB3aGljaCB0aGlzXG4gICBtZXRob2QgaXMgY2FsbGVkIGNhbiBjb250YWluIGxpdGVyYWwgdGV4dCBvciByZXBsYWNlbWVudCBmaWVsZHNcbiAgIGRlbGltaXRlZCBieSBicmFjZXMgYGB7fWBgLiAgRWFjaCByZXBsYWNlbWVudCBmaWVsZCBjb250YWlucyBlaXRoZXJcbiAgIHRoZSBudW1lcmljIGluZGV4IG9mIGEgcG9zaXRpb25hbCBhcmd1bWVudCwgb3IgdGhlIG5hbWUgb2YgYVxuICAga2V5d29yZCBhcmd1bWVudC4gIFJldHVybnMgYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2hlcmUgZWFjaFxuICAgcmVwbGFjZW1lbnQgZmllbGQgaXMgcmVwbGFjZWQgd2l0aCB0aGUgc3RyaW5nIHZhbHVlIG9mIHRoZVxuICAgY29ycmVzcG9uZGluZyBhcmd1bWVudC5cblxuICAgPj4+ICJUaGUgc3VtIG9mIDEgKyAyIGlzIHswfSIuZm9ybWF0KDErMilcbiAgIFwnVGhlIHN1bSBvZiAxICsgMiBpcyAzXCdcblxuICAgU2VlICpGb3JtYXQgU3RyaW5nIFN5bnRheCogZm9yIGEgZGVzY3JpcHRpb24gb2YgdGhlIHZhcmlvdXNcbiAgIGZvcm1hdHRpbmcgb3B0aW9ucyB0aGF0IGNhbiBiZSBzcGVjaWZpZWQgaW4gZm9ybWF0IHN0cmluZ3MuXG5cbnN0ci5mb3JtYXRfbWFwKG1hcHBpbmcpXG5cbiAgIFNpbWlsYXIgdG8gYGBzdHIuZm9ybWF0KCoqbWFwcGluZylgYCwgZXhjZXB0IHRoYXQgYGBtYXBwaW5nYGAgaXNcbiAgIHVzZWQgZGlyZWN0bHkgYW5kIG5vdCBjb3BpZWQgdG8gYSBgYGRpY3RgYCAuICBUaGlzIGlzIHVzZWZ1bCBpZiBmb3JcbiAgIGV4YW1wbGUgYGBtYXBwaW5nYGAgaXMgYSBkaWN0IHN1YmNsYXNzOlxuXG4gICA+Pj4gY2xhc3MgRGVmYXVsdChkaWN0KTpcbiAgIC4uLiAgICAgZGVmIF9fbWlzc2luZ19fKHNlbGYsIGtleSk6XG4gICAuLi4gICAgICAgICByZXR1cm4ga2V5XG4gICAuLi5cbiAgID4+PiBcJ3tuYW1lfSB3YXMgYm9ybiBpbiB7Y291bnRyeX1cJy5mb3JtYXRfbWFwKERlZmF1bHQobmFtZT1cJ0d1aWRvXCcpKVxuICAgXCdHdWlkbyB3YXMgYm9ybiBpbiBjb3VudHJ5XCdcblxuICAgTmV3IGluIHZlcnNpb24gMy4yLlxuXG5zdHIuaW5kZXgoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgTGlrZSBgYGZpbmQoKWBgLCBidXQgcmFpc2UgYGBWYWx1ZUVycm9yYGAgd2hlbiB0aGUgc3Vic3RyaW5nIGlzIG5vdFxuICAgZm91bmQuXG5cbnN0ci5pc2FsbnVtKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgYWxwaGFudW1lcmljIGFuZFxuICAgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgQSBjaGFyYWN0ZXJcbiAgIGBgY2BgIGlzIGFscGhhbnVtZXJpYyBpZiBvbmUgb2YgdGhlIGZvbGxvd2luZyByZXR1cm5zIGBgVHJ1ZWBgOlxuICAgYGBjLmlzYWxwaGEoKWBgLCBgYGMuaXNkZWNpbWFsKClgYCwgYGBjLmlzZGlnaXQoKWBgLCBvclxuICAgYGBjLmlzbnVtZXJpYygpYGAuXG5cbnN0ci5pc2FscGhhKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgYWxwaGFiZXRpYyBhbmRcbiAgIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIEFscGhhYmV0aWNcbiAgIGNoYXJhY3RlcnMgYXJlIHRob3NlIGNoYXJhY3RlcnMgZGVmaW5lZCBpbiB0aGUgVW5pY29kZSBjaGFyYWN0ZXJcbiAgIGRhdGFiYXNlIGFzICJMZXR0ZXIiLCBpLmUuLCB0aG9zZSB3aXRoIGdlbmVyYWwgY2F0ZWdvcnkgcHJvcGVydHlcbiAgIGJlaW5nIG9uZSBvZiAiTG0iLCAiTHQiLCAiTHUiLCAiTGwiLCBvciAiTG8iLiAgTm90ZSB0aGF0IHRoaXMgaXNcbiAgIGRpZmZlcmVudCBmcm9tIHRoZSAiQWxwaGFiZXRpYyIgcHJvcGVydHkgZGVmaW5lZCBpbiB0aGUgVW5pY29kZVxuICAgU3RhbmRhcmQuXG5cbnN0ci5pc2RlY2ltYWwoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBkZWNpbWFsIGNoYXJhY3RlcnNcbiAgIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuIERlY2ltYWxcbiAgIGNoYXJhY3RlcnMgYXJlIHRob3NlIGZyb20gZ2VuZXJhbCBjYXRlZ29yeSAiTmQiLiBUaGlzIGNhdGVnb3J5XG4gICBpbmNsdWRlcyBkaWdpdCBjaGFyYWN0ZXJzLCBhbmQgYWxsIGNoYXJhY3RlcnMgdGhhdCB0aGF0IGNhbiBiZSB1c2VkXG4gICB0byBmb3JtIGRlY2ltYWwtcmFkaXggbnVtYmVycywgZS5nLiBVKzA2NjAsIEFSQUJJQy1JTkRJQyBESUdJVFxuICAgWkVSTy5cblxuc3RyLmlzZGlnaXQoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBkaWdpdHMgYW5kIHRoZXJlIGlzXG4gICBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBEaWdpdHMgaW5jbHVkZSBkZWNpbWFsXG4gICBjaGFyYWN0ZXJzIGFuZCBkaWdpdHMgdGhhdCBuZWVkIHNwZWNpYWwgaGFuZGxpbmcsIHN1Y2ggYXMgdGhlXG4gICBjb21wYXRpYmlsaXR5IHN1cGVyc2NyaXB0IGRpZ2l0cy4gIEZvcm1hbGx5LCBhIGRpZ2l0IGlzIGEgY2hhcmFjdGVyXG4gICB0aGF0IGhhcyB0aGUgcHJvcGVydHkgdmFsdWUgTnVtZXJpY19UeXBlPURpZ2l0IG9yXG4gICBOdW1lcmljX1R5cGU9RGVjaW1hbC5cblxuc3RyLmlzaWRlbnRpZmllcigpXG5cbiAgIFJldHVybiB0cnVlIGlmIHRoZSBzdHJpbmcgaXMgYSB2YWxpZCBpZGVudGlmaWVyIGFjY29yZGluZyB0byB0aGVcbiAgIGxhbmd1YWdlIGRlZmluaXRpb24sIHNlY3Rpb24gKklkZW50aWZpZXJzIGFuZCBrZXl3b3JkcyouXG5cbnN0ci5pc2xvd2VyKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNhc2VkIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgbG93ZXJjYXNlIGFuZFxuICAgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNhc2VkIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgQ2FzZWRcbiAgIGNoYXJhY3RlcnMgYXJlIHRob3NlIHdpdGggZ2VuZXJhbCBjYXRlZ29yeSBwcm9wZXJ0eSBiZWluZyBvbmUgb2ZcbiAgICJMdSIsICJMbCIsIG9yICJMdCIgYW5kIGxvd2VyY2FzZSBjaGFyYWN0ZXJzIGFyZSB0aG9zZSB3aXRoIGdlbmVyYWxcbiAgIGNhdGVnb3J5IHByb3BlcnR5ICJMbCIuXG5cbnN0ci5pc251bWVyaWMoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBudW1lcmljIGNoYXJhY3RlcnMsXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiBOdW1lcmljXG4gICBjaGFyYWN0ZXJzIGluY2x1ZGUgZGlnaXQgY2hhcmFjdGVycywgYW5kIGFsbCBjaGFyYWN0ZXJzIHRoYXQgaGF2ZVxuICAgdGhlIFVuaWNvZGUgbnVtZXJpYyB2YWx1ZSBwcm9wZXJ0eSwgZS5nLiBVKzIxNTUsIFZVTEdBUiBGUkFDVElPTlxuICAgT05FIEZJRlRILiAgRm9ybWFsbHksIG51bWVyaWMgY2hhcmFjdGVycyBhcmUgdGhvc2Ugd2l0aCB0aGVcbiAgIHByb3BlcnR5IHZhbHVlIE51bWVyaWNfVHlwZT1EaWdpdCwgTnVtZXJpY19UeXBlPURlY2ltYWwgb3JcbiAgIE51bWVyaWNfVHlwZT1OdW1lcmljLlxuXG5zdHIuaXNwcmludGFibGUoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSBwcmludGFibGUgb3IgdGhlXG4gICBzdHJpbmcgaXMgZW1wdHksIGZhbHNlIG90aGVyd2lzZS4gIE5vbnByaW50YWJsZSBjaGFyYWN0ZXJzIGFyZVxuICAgdGhvc2UgY2hhcmFjdGVycyBkZWZpbmVkIGluIHRoZSBVbmljb2RlIGNoYXJhY3RlciBkYXRhYmFzZSBhc1xuICAgIk90aGVyIiBvciAiU2VwYXJhdG9yIiwgZXhjZXB0aW5nIHRoZSBBU0NJSSBzcGFjZSAoMHgyMCkgd2hpY2ggaXNcbiAgIGNvbnNpZGVyZWQgcHJpbnRhYmxlLiAgKE5vdGUgdGhhdCBwcmludGFibGUgY2hhcmFjdGVycyBpbiB0aGlzXG4gICBjb250ZXh0IGFyZSB0aG9zZSB3aGljaCBzaG91bGQgbm90IGJlIGVzY2FwZWQgd2hlbiBgYHJlcHIoKWBgIGlzXG4gICBpbnZva2VkIG9uIGEgc3RyaW5nLiAgSXQgaGFzIG5vIGJlYXJpbmcgb24gdGhlIGhhbmRsaW5nIG9mIHN0cmluZ3NcbiAgIHdyaXR0ZW4gdG8gYGBzeXMuc3Rkb3V0YGAgb3IgYGBzeXMuc3RkZXJyYGAuKVxuXG5zdHIuaXNzcGFjZSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIHRoZXJlIGFyZSBvbmx5IHdoaXRlc3BhY2UgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgV2hpdGVzcGFjZVxuICAgY2hhcmFjdGVycyAgYXJlIHRob3NlIGNoYXJhY3RlcnMgZGVmaW5lZCBpbiB0aGUgVW5pY29kZSBjaGFyYWN0ZXJcbiAgIGRhdGFiYXNlIGFzICJPdGhlciIgb3IgIlNlcGFyYXRvciIgYW5kIHRob3NlIHdpdGggYmlkaXJlY3Rpb25hbFxuICAgcHJvcGVydHkgYmVpbmcgb25lIG9mICJXUyIsICJCIiwgb3IgIlMiLlxuXG5zdHIuaXN0aXRsZSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIHRoZSBzdHJpbmcgaXMgYSB0aXRsZWNhc2VkIHN0cmluZyBhbmQgdGhlcmUgaXMgYXRcbiAgIGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZvciBleGFtcGxlIHVwcGVyY2FzZSBjaGFyYWN0ZXJzIG1heSBvbmx5XG4gICBmb2xsb3cgdW5jYXNlZCBjaGFyYWN0ZXJzIGFuZCBsb3dlcmNhc2UgY2hhcmFjdGVycyBvbmx5IGNhc2VkIG9uZXMuXG4gICBSZXR1cm4gZmFsc2Ugb3RoZXJ3aXNlLlxuXG5zdHIuaXN1cHBlcigpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjYXNlZCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIHVwcGVyY2FzZSBhbmRcbiAgIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjYXNlZCBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gQ2FzZWRcbiAgIGNoYXJhY3RlcnMgYXJlIHRob3NlIHdpdGggZ2VuZXJhbCBjYXRlZ29yeSBwcm9wZXJ0eSBiZWluZyBvbmUgb2ZcbiAgICJMdSIsICJMbCIsIG9yICJMdCIgYW5kIHVwcGVyY2FzZSBjaGFyYWN0ZXJzIGFyZSB0aG9zZSB3aXRoIGdlbmVyYWxcbiAgIGNhdGVnb3J5IHByb3BlcnR5ICJMdSIuXG5cbnN0ci5qb2luKGl0ZXJhYmxlKVxuXG4gICBSZXR1cm4gYSBzdHJpbmcgd2hpY2ggaXMgdGhlIGNvbmNhdGVuYXRpb24gb2YgdGhlIHN0cmluZ3MgaW4gdGhlXG4gICAqaXRlcmFibGUqICppdGVyYWJsZSouICBBIGBgVHlwZUVycm9yYGAgd2lsbCBiZSByYWlzZWQgaWYgdGhlcmUgYXJlXG4gICBhbnkgbm9uLXN0cmluZyB2YWx1ZXMgaW4gKnNlcSosIGluY2x1ZGluZyBgYGJ5dGVzYGAgb2JqZWN0cy4gIFRoZVxuICAgc2VwYXJhdG9yIGJldHdlZW4gZWxlbWVudHMgaXMgdGhlIHN0cmluZyBwcm92aWRpbmcgdGhpcyBtZXRob2QuXG5cbnN0ci5sanVzdCh3aWR0aFssIGZpbGxjaGFyXSlcblxuICAgUmV0dXJuIHRoZSBzdHJpbmcgbGVmdCBqdXN0aWZpZWQgaW4gYSBzdHJpbmcgb2YgbGVuZ3RoICp3aWR0aCouXG4gICBQYWRkaW5nIGlzIGRvbmUgdXNpbmcgdGhlIHNwZWNpZmllZCAqZmlsbGNoYXIqIChkZWZhdWx0IGlzIGFcbiAgIHNwYWNlKS4gIFRoZSBvcmlnaW5hbCBzdHJpbmcgaXMgcmV0dXJuZWQgaWYgKndpZHRoKiBpcyBsZXNzIHRoYW5cbiAgIGBgbGVuKHMpYGAuXG5cbnN0ci5sb3dlcigpXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlLlxuXG5zdHIubHN0cmlwKFtjaGFyc10pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGxlYWRpbmcgY2hhcmFjdGVycyByZW1vdmVkLiAgVGhlXG4gICAqY2hhcnMqIGFyZ3VtZW50IGlzIGEgc3RyaW5nIHNwZWNpZnlpbmcgdGhlIHNldCBvZiBjaGFyYWN0ZXJzIHRvIGJlXG4gICByZW1vdmVkLiAgSWYgb21pdHRlZCBvciBgYE5vbmVgYCwgdGhlICpjaGFycyogYXJndW1lbnQgZGVmYXVsdHMgdG9cbiAgIHJlbW92aW5nIHdoaXRlc3BhY2UuICBUaGUgKmNoYXJzKiBhcmd1bWVudCBpcyBub3QgYSBwcmVmaXg7IHJhdGhlcixcbiAgIGFsbCBjb21iaW5hdGlvbnMgb2YgaXRzIHZhbHVlcyBhcmUgc3RyaXBwZWQ6XG5cbiAgID4+PiBcJyAgIHNwYWNpb3VzICAgXCcubHN0cmlwKClcbiAgIFwnc3BhY2lvdXMgICBcJ1xuICAgPj4+IFwnd3d3LmV4YW1wbGUuY29tXCcubHN0cmlwKFwnY21vd3ouXCcpXG4gICBcJ2V4YW1wbGUuY29tXCdcblxuc3RhdGljIHN0ci5tYWtldHJhbnMoeFssIHlbLCB6XV0pXG5cbiAgIFRoaXMgc3RhdGljIG1ldGhvZCByZXR1cm5zIGEgdHJhbnNsYXRpb24gdGFibGUgdXNhYmxlIGZvclxuICAgYGBzdHIudHJhbnNsYXRlKClgYC5cblxuICAgSWYgdGhlcmUgaXMgb25seSBvbmUgYXJndW1lbnQsIGl0IG11c3QgYmUgYSBkaWN0aW9uYXJ5IG1hcHBpbmdcbiAgIFVuaWNvZGUgb3JkaW5hbHMgKGludGVnZXJzKSBvciBjaGFyYWN0ZXJzIChzdHJpbmdzIG9mIGxlbmd0aCAxKSB0b1xuICAgVW5pY29kZSBvcmRpbmFscywgc3RyaW5ncyAob2YgYXJiaXRyYXJ5IGxlbmd0aHMpIG9yIE5vbmUuXG4gICBDaGFyYWN0ZXIga2V5cyB3aWxsIHRoZW4gYmUgY29udmVydGVkIHRvIG9yZGluYWxzLlxuXG4gICBJZiB0aGVyZSBhcmUgdHdvIGFyZ3VtZW50cywgdGhleSBtdXN0IGJlIHN0cmluZ3Mgb2YgZXF1YWwgbGVuZ3RoLFxuICAgYW5kIGluIHRoZSByZXN1bHRpbmcgZGljdGlvbmFyeSwgZWFjaCBjaGFyYWN0ZXIgaW4geCB3aWxsIGJlIG1hcHBlZFxuICAgdG8gdGhlIGNoYXJhY3RlciBhdCB0aGUgc2FtZSBwb3NpdGlvbiBpbiB5LiAgSWYgdGhlcmUgaXMgYSB0aGlyZFxuICAgYXJndW1lbnQsIGl0IG11c3QgYmUgYSBzdHJpbmcsIHdob3NlIGNoYXJhY3RlcnMgd2lsbCBiZSBtYXBwZWQgdG9cbiAgIE5vbmUgaW4gdGhlIHJlc3VsdC5cblxuc3RyLnBhcnRpdGlvbihzZXApXG5cbiAgIFNwbGl0IHRoZSBzdHJpbmcgYXQgdGhlIGZpcnN0IG9jY3VycmVuY2Ugb2YgKnNlcCosIGFuZCByZXR1cm4gYVxuICAgMy10dXBsZSBjb250YWluaW5nIHRoZSBwYXJ0IGJlZm9yZSB0aGUgc2VwYXJhdG9yLCB0aGUgc2VwYXJhdG9yXG4gICBpdHNlbGYsIGFuZCB0aGUgcGFydCBhZnRlciB0aGUgc2VwYXJhdG9yLiAgSWYgdGhlIHNlcGFyYXRvciBpcyBub3RcbiAgIGZvdW5kLCByZXR1cm4gYSAzLXR1cGxlIGNvbnRhaW5pbmcgdGhlIHN0cmluZyBpdHNlbGYsIGZvbGxvd2VkIGJ5XG4gICB0d28gZW1wdHkgc3RyaW5ncy5cblxuc3RyLnJlcGxhY2Uob2xkLCBuZXdbLCBjb3VudF0pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIGFsbCBvY2N1cnJlbmNlcyBvZiBzdWJzdHJpbmcgKm9sZCpcbiAgIHJlcGxhY2VkIGJ5ICpuZXcqLiAgSWYgdGhlIG9wdGlvbmFsIGFyZ3VtZW50ICpjb3VudCogaXMgZ2l2ZW4sIG9ubHlcbiAgIHRoZSBmaXJzdCAqY291bnQqIG9jY3VycmVuY2VzIGFyZSByZXBsYWNlZC5cblxuc3RyLnJmaW5kKHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiB0aGUgaGlnaGVzdCBpbmRleCBpbiB0aGUgc3RyaW5nIHdoZXJlIHN1YnN0cmluZyAqc3ViKiBpc1xuICAgZm91bmQsIHN1Y2ggdGhhdCAqc3ViKiBpcyBjb250YWluZWQgd2l0aGluIGBgc1tzdGFydDplbmRdYGAuXG4gICBPcHRpb25hbCBhcmd1bWVudHMgKnN0YXJ0KiBhbmQgKmVuZCogYXJlIGludGVycHJldGVkIGFzIGluIHNsaWNlXG4gICBub3RhdGlvbi4gIFJldHVybiBgYC0xYGAgb24gZmFpbHVyZS5cblxuc3RyLnJpbmRleChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBMaWtlIGBgcmZpbmQoKWBgIGJ1dCByYWlzZXMgYGBWYWx1ZUVycm9yYGAgd2hlbiB0aGUgc3Vic3RyaW5nICpzdWIqXG4gICBpcyBub3QgZm91bmQuXG5cbnN0ci5yanVzdCh3aWR0aFssIGZpbGxjaGFyXSlcblxuICAgUmV0dXJuIHRoZSBzdHJpbmcgcmlnaHQganVzdGlmaWVkIGluIGEgc3RyaW5nIG9mIGxlbmd0aCAqd2lkdGgqLlxuICAgUGFkZGluZyBpcyBkb25lIHVzaW5nIHRoZSBzcGVjaWZpZWQgKmZpbGxjaGFyKiAoZGVmYXVsdCBpcyBhXG4gICBzcGFjZSkuIFRoZSBvcmlnaW5hbCBzdHJpbmcgaXMgcmV0dXJuZWQgaWYgKndpZHRoKiBpcyBsZXNzIHRoYW5cbiAgIGBgbGVuKHMpYGAuXG5cbnN0ci5ycGFydGl0aW9uKHNlcClcblxuICAgU3BsaXQgdGhlIHN0cmluZyBhdCB0aGUgbGFzdCBvY2N1cnJlbmNlIG9mICpzZXAqLCBhbmQgcmV0dXJuIGFcbiAgIDMtdHVwbGUgY29udGFpbmluZyB0aGUgcGFydCBiZWZvcmUgdGhlIHNlcGFyYXRvciwgdGhlIHNlcGFyYXRvclxuICAgaXRzZWxmLCBhbmQgdGhlIHBhcnQgYWZ0ZXIgdGhlIHNlcGFyYXRvci4gIElmIHRoZSBzZXBhcmF0b3IgaXMgbm90XG4gICBmb3VuZCwgcmV0dXJuIGEgMy10dXBsZSBjb250YWluaW5nIHR3byBlbXB0eSBzdHJpbmdzLCBmb2xsb3dlZCBieVxuICAgdGhlIHN0cmluZyBpdHNlbGYuXG5cbnN0ci5yc3BsaXQoW3NlcFssIG1heHNwbGl0XV0pXG5cbiAgIFJldHVybiBhIGxpc3Qgb2YgdGhlIHdvcmRzIGluIHRoZSBzdHJpbmcsIHVzaW5nICpzZXAqIGFzIHRoZVxuICAgZGVsaW1pdGVyIHN0cmluZy4gSWYgKm1heHNwbGl0KiBpcyBnaXZlbiwgYXQgbW9zdCAqbWF4c3BsaXQqIHNwbGl0c1xuICAgYXJlIGRvbmUsIHRoZSAqcmlnaHRtb3N0KiBvbmVzLiAgSWYgKnNlcCogaXMgbm90IHNwZWNpZmllZCBvclxuICAgYGBOb25lYGAsIGFueSB3aGl0ZXNwYWNlIHN0cmluZyBpcyBhIHNlcGFyYXRvci4gIEV4Y2VwdCBmb3JcbiAgIHNwbGl0dGluZyBmcm9tIHRoZSByaWdodCwgYGByc3BsaXQoKWBgIGJlaGF2ZXMgbGlrZSBgYHNwbGl0KClgYFxuICAgd2hpY2ggaXMgZGVzY3JpYmVkIGluIGRldGFpbCBiZWxvdy5cblxuc3RyLnJzdHJpcChbY2hhcnNdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCB0cmFpbGluZyBjaGFyYWN0ZXJzIHJlbW92ZWQuICBUaGVcbiAgICpjaGFycyogYXJndW1lbnQgaXMgYSBzdHJpbmcgc3BlY2lmeWluZyB0aGUgc2V0IG9mIGNoYXJhY3RlcnMgdG8gYmVcbiAgIHJlbW92ZWQuICBJZiBvbWl0dGVkIG9yIGBgTm9uZWBgLCB0aGUgKmNoYXJzKiBhcmd1bWVudCBkZWZhdWx0cyB0b1xuICAgcmVtb3Zpbmcgd2hpdGVzcGFjZS4gIFRoZSAqY2hhcnMqIGFyZ3VtZW50IGlzIG5vdCBhIHN1ZmZpeDsgcmF0aGVyLFxuICAgYWxsIGNvbWJpbmF0aW9ucyBvZiBpdHMgdmFsdWVzIGFyZSBzdHJpcHBlZDpcblxuICAgPj4+IFwnICAgc3BhY2lvdXMgICBcJy5yc3RyaXAoKVxuICAgXCcgICBzcGFjaW91c1wnXG4gICA+Pj4gXCdtaXNzaXNzaXBwaVwnLnJzdHJpcChcJ2lwelwnKVxuICAgXCdtaXNzaXNzXCdcblxuc3RyLnNwbGl0KFtzZXBbLCBtYXhzcGxpdF1dKVxuXG4gICBSZXR1cm4gYSBsaXN0IG9mIHRoZSB3b3JkcyBpbiB0aGUgc3RyaW5nLCB1c2luZyAqc2VwKiBhcyB0aGVcbiAgIGRlbGltaXRlciBzdHJpbmcuICBJZiAqbWF4c3BsaXQqIGlzIGdpdmVuLCBhdCBtb3N0ICptYXhzcGxpdCpcbiAgIHNwbGl0cyBhcmUgZG9uZSAodGh1cywgdGhlIGxpc3Qgd2lsbCBoYXZlIGF0IG1vc3QgYGBtYXhzcGxpdCsxYGBcbiAgIGVsZW1lbnRzKS4gIElmICptYXhzcGxpdCogaXMgbm90IHNwZWNpZmllZCwgdGhlbiB0aGVyZSBpcyBubyBsaW1pdFxuICAgb24gdGhlIG51bWJlciBvZiBzcGxpdHMgKGFsbCBwb3NzaWJsZSBzcGxpdHMgYXJlIG1hZGUpLlxuXG4gICBJZiAqc2VwKiBpcyBnaXZlbiwgY29uc2VjdXRpdmUgZGVsaW1pdGVycyBhcmUgbm90IGdyb3VwZWQgdG9nZXRoZXJcbiAgIGFuZCBhcmUgZGVlbWVkIHRvIGRlbGltaXQgZW1wdHkgc3RyaW5ncyAoZm9yIGV4YW1wbGUsXG4gICBgYFwnMSwsMlwnLnNwbGl0KFwnLFwnKWBgIHJldHVybnMgYGBbXCcxXCcsIFwnXCcsIFwnMlwnXWBgKS4gIFRoZSAqc2VwKlxuICAgYXJndW1lbnQgbWF5IGNvbnNpc3Qgb2YgbXVsdGlwbGUgY2hhcmFjdGVycyAoZm9yIGV4YW1wbGUsXG4gICBgYFwnMTw+Mjw+M1wnLnNwbGl0KFwnPD5cJylgYCByZXR1cm5zIGBgW1wnMVwnLCBcJzJcJywgXCczXCddYGApLiBTcGxpdHRpbmdcbiAgIGFuIGVtcHR5IHN0cmluZyB3aXRoIGEgc3BlY2lmaWVkIHNlcGFyYXRvciByZXR1cm5zIGBgW1wnXCddYGAuXG5cbiAgIElmICpzZXAqIGlzIG5vdCBzcGVjaWZpZWQgb3IgaXMgYGBOb25lYGAsIGEgZGlmZmVyZW50IHNwbGl0dGluZ1xuICAgYWxnb3JpdGhtIGlzIGFwcGxpZWQ6IHJ1bnMgb2YgY29uc2VjdXRpdmUgd2hpdGVzcGFjZSBhcmUgcmVnYXJkZWRcbiAgIGFzIGEgc2luZ2xlIHNlcGFyYXRvciwgYW5kIHRoZSByZXN1bHQgd2lsbCBjb250YWluIG5vIGVtcHR5IHN0cmluZ3NcbiAgIGF0IHRoZSBzdGFydCBvciBlbmQgaWYgdGhlIHN0cmluZyBoYXMgbGVhZGluZyBvciB0cmFpbGluZ1xuICAgd2hpdGVzcGFjZS4gIENvbnNlcXVlbnRseSwgc3BsaXR0aW5nIGFuIGVtcHR5IHN0cmluZyBvciBhIHN0cmluZ1xuICAgY29uc2lzdGluZyBvZiBqdXN0IHdoaXRlc3BhY2Ugd2l0aCBhIGBgTm9uZWBgIHNlcGFyYXRvciByZXR1cm5zXG4gICBgYFtdYGAuXG5cbiAgIEZvciBleGFtcGxlLCBgYFwnIDEgIDIgICAzICBcJy5zcGxpdCgpYGAgcmV0dXJucyBgYFtcJzFcJywgXCcyXCcsIFwnM1wnXWBgLFxuICAgYW5kIGBgXCcgIDEgIDIgICAzICBcJy5zcGxpdChOb25lLCAxKWBgIHJldHVybnMgYGBbXCcxXCcsIFwnMiAgIDMgIFwnXWBgLlxuXG5zdHIuc3BsaXRsaW5lcyhba2VlcGVuZHNdKVxuXG4gICBSZXR1cm4gYSBsaXN0IG9mIHRoZSBsaW5lcyBpbiB0aGUgc3RyaW5nLCBicmVha2luZyBhdCBsaW5lXG4gICBib3VuZGFyaWVzLiAgTGluZSBicmVha3MgYXJlIG5vdCBpbmNsdWRlZCBpbiB0aGUgcmVzdWx0aW5nIGxpc3RcbiAgIHVubGVzcyAqa2VlcGVuZHMqIGlzIGdpdmVuIGFuZCB0cnVlLlxuXG5zdHIuc3RhcnRzd2l0aChwcmVmaXhbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gYGBUcnVlYGAgaWYgc3RyaW5nIHN0YXJ0cyB3aXRoIHRoZSAqcHJlZml4Kiwgb3RoZXJ3aXNlXG4gICByZXR1cm4gYGBGYWxzZWBgLiAqcHJlZml4KiBjYW4gYWxzbyBiZSBhIHR1cGxlIG9mIHByZWZpeGVzIHRvIGxvb2tcbiAgIGZvci4gIFdpdGggb3B0aW9uYWwgKnN0YXJ0KiwgdGVzdCBzdHJpbmcgYmVnaW5uaW5nIGF0IHRoYXRcbiAgIHBvc2l0aW9uLiAgV2l0aCBvcHRpb25hbCAqZW5kKiwgc3RvcCBjb21wYXJpbmcgc3RyaW5nIGF0IHRoYXRcbiAgIHBvc2l0aW9uLlxuXG5zdHIuc3RyaXAoW2NoYXJzXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggdGhlIGxlYWRpbmcgYW5kIHRyYWlsaW5nXG4gICBjaGFyYWN0ZXJzIHJlbW92ZWQuIFRoZSAqY2hhcnMqIGFyZ3VtZW50IGlzIGEgc3RyaW5nIHNwZWNpZnlpbmcgdGhlXG4gICBzZXQgb2YgY2hhcmFjdGVycyB0byBiZSByZW1vdmVkLiBJZiBvbWl0dGVkIG9yIGBgTm9uZWBgLCB0aGVcbiAgICpjaGFycyogYXJndW1lbnQgZGVmYXVsdHMgdG8gcmVtb3Zpbmcgd2hpdGVzcGFjZS4gVGhlICpjaGFycypcbiAgIGFyZ3VtZW50IGlzIG5vdCBhIHByZWZpeCBvciBzdWZmaXg7IHJhdGhlciwgYWxsIGNvbWJpbmF0aW9ucyBvZiBpdHNcbiAgIHZhbHVlcyBhcmUgc3RyaXBwZWQ6XG5cbiAgID4+PiBcJyAgIHNwYWNpb3VzICAgXCcuc3RyaXAoKVxuICAgXCdzcGFjaW91c1wnXG4gICA+Pj4gXCd3d3cuZXhhbXBsZS5jb21cJy5zdHJpcChcJ2Ntb3d6LlwnKVxuICAgXCdleGFtcGxlXCdcblxuc3RyLnN3YXBjYXNlKClcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggdXBwZXJjYXNlIGNoYXJhY3RlcnMgY29udmVydGVkIHRvXG4gICBsb3dlcmNhc2UgYW5kIHZpY2UgdmVyc2EuXG5cbnN0ci50aXRsZSgpXG5cbiAgIFJldHVybiBhIHRpdGxlY2FzZWQgdmVyc2lvbiBvZiB0aGUgc3RyaW5nIHdoZXJlIHdvcmRzIHN0YXJ0IHdpdGggYW5cbiAgIHVwcGVyY2FzZSBjaGFyYWN0ZXIgYW5kIHRoZSByZW1haW5pbmcgY2hhcmFjdGVycyBhcmUgbG93ZXJjYXNlLlxuXG4gICBUaGUgYWxnb3JpdGhtIHVzZXMgYSBzaW1wbGUgbGFuZ3VhZ2UtaW5kZXBlbmRlbnQgZGVmaW5pdGlvbiBvZiBhXG4gICB3b3JkIGFzIGdyb3VwcyBvZiBjb25zZWN1dGl2ZSBsZXR0ZXJzLiAgVGhlIGRlZmluaXRpb24gd29ya3MgaW5cbiAgIG1hbnkgY29udGV4dHMgYnV0IGl0IG1lYW5zIHRoYXQgYXBvc3Ryb3BoZXMgaW4gY29udHJhY3Rpb25zIGFuZFxuICAgcG9zc2Vzc2l2ZXMgZm9ybSB3b3JkIGJvdW5kYXJpZXMsIHdoaWNoIG1heSBub3QgYmUgdGhlIGRlc2lyZWRcbiAgIHJlc3VsdDpcblxuICAgICAgPj4+ICJ0aGV5XCdyZSBiaWxsXCdzIGZyaWVuZHMgZnJvbSB0aGUgVUsiLnRpdGxlKClcbiAgICAgICJUaGV5XCdSZSBCaWxsXCdTIEZyaWVuZHMgRnJvbSBUaGUgVWsiXG5cbiAgIEEgd29ya2Fyb3VuZCBmb3IgYXBvc3Ryb3BoZXMgY2FuIGJlIGNvbnN0cnVjdGVkIHVzaW5nIHJlZ3VsYXJcbiAgIGV4cHJlc3Npb25zOlxuXG4gICAgICA+Pj4gaW1wb3J0IHJlXG4gICAgICA+Pj4gZGVmIHRpdGxlY2FzZShzKTpcbiAgICAgICAgICAgICAgcmV0dXJuIHJlLnN1YihyIltBLVphLXpdKyhcJ1tBLVphLXpdKyk/IixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGEgbW86IG1vLmdyb3VwKDApWzBdLnVwcGVyKCkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW8uZ3JvdXAoMClbMTpdLmxvd2VyKCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcylcblxuICAgICAgPj4+IHRpdGxlY2FzZSgidGhleVwncmUgYmlsbFwncyBmcmllbmRzLiIpXG4gICAgICAiVGhleVwncmUgQmlsbFwncyBGcmllbmRzLiJcblxuc3RyLnRyYW5zbGF0ZShtYXApXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlICpzKiB3aGVyZSBhbGwgY2hhcmFjdGVycyBoYXZlIGJlZW4gbWFwcGVkXG4gICB0aHJvdWdoIHRoZSAqbWFwKiB3aGljaCBtdXN0IGJlIGEgZGljdGlvbmFyeSBvZiBVbmljb2RlIG9yZGluYWxzXG4gICAoaW50ZWdlcnMpIHRvIFVuaWNvZGUgb3JkaW5hbHMsIHN0cmluZ3Mgb3IgYGBOb25lYGAuICBVbm1hcHBlZFxuICAgY2hhcmFjdGVycyBhcmUgbGVmdCB1bnRvdWNoZWQuIENoYXJhY3RlcnMgbWFwcGVkIHRvIGBgTm9uZWBgIGFyZVxuICAgZGVsZXRlZC5cblxuICAgWW91IGNhbiB1c2UgYGBzdHIubWFrZXRyYW5zKClgYCB0byBjcmVhdGUgYSB0cmFuc2xhdGlvbiBtYXAgZnJvbVxuICAgY2hhcmFjdGVyLXRvLWNoYXJhY3RlciBtYXBwaW5ncyBpbiBkaWZmZXJlbnQgZm9ybWF0cy5cblxuICAgTm90ZTogQW4gZXZlbiBtb3JlIGZsZXhpYmxlIGFwcHJvYWNoIGlzIHRvIGNyZWF0ZSBhIGN1c3RvbSBjaGFyYWN0ZXJcbiAgICAgbWFwcGluZyBjb2RlYyB1c2luZyB0aGUgYGBjb2RlY3NgYCBtb2R1bGUgKHNlZVxuICAgICBgYGVuY29kaW5ncy5jcDEyNTFgYCBmb3IgYW4gZXhhbXBsZSkuXG5cbnN0ci51cHBlcigpXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyBjb252ZXJ0ZWQgdG8gdXBwZXJjYXNlLlxuXG5zdHIuemZpbGwod2lkdGgpXG5cbiAgIFJldHVybiB0aGUgbnVtZXJpYyBzdHJpbmcgbGVmdCBmaWxsZWQgd2l0aCB6ZXJvcyBpbiBhIHN0cmluZyBvZlxuICAgbGVuZ3RoICp3aWR0aCouICBBIHNpZ24gcHJlZml4IGlzIGhhbmRsZWQgY29ycmVjdGx5LiAgVGhlIG9yaWdpbmFsXG4gICBzdHJpbmcgaXMgcmV0dXJuZWQgaWYgKndpZHRoKiBpcyBsZXNzIHRoYW4gYGBsZW4ocylgYC5cblxuXG5PbGQgU3RyaW5nIEZvcm1hdHRpbmcgT3BlcmF0aW9uc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuTm90ZTogVGhlIGZvcm1hdHRpbmcgb3BlcmF0aW9ucyBkZXNjcmliZWQgaGVyZSBhcmUgb2Jzb2xldGUgYW5kIG1heSBnb1xuICBhd2F5IGluIGZ1dHVyZSB2ZXJzaW9ucyBvZiBQeXRob24uICBVc2UgdGhlIG5ldyAqU3RyaW5nIEZvcm1hdHRpbmcqXG4gIGluIG5ldyBjb2RlLlxuXG5TdHJpbmcgb2JqZWN0cyBoYXZlIG9uZSB1bmlxdWUgYnVpbHQtaW4gb3BlcmF0aW9uOiB0aGUgYGAlYGAgb3BlcmF0b3Jcbihtb2R1bG8pLiBUaGlzIGlzIGFsc28ga25vd24gYXMgdGhlIHN0cmluZyAqZm9ybWF0dGluZyogb3JcbippbnRlcnBvbGF0aW9uKiBvcGVyYXRvci4gR2l2ZW4gYGBmb3JtYXQgJSB2YWx1ZXNgYCAod2hlcmUgKmZvcm1hdCogaXNcbmEgc3RyaW5nKSwgYGAlYGAgY29udmVyc2lvbiBzcGVjaWZpY2F0aW9ucyBpbiAqZm9ybWF0KiBhcmUgcmVwbGFjZWRcbndpdGggemVybyBvciBtb3JlIGVsZW1lbnRzIG9mICp2YWx1ZXMqLiBUaGUgZWZmZWN0IGlzIHNpbWlsYXIgdG8gdGhlXG51c2luZyBgYHNwcmludGYoKWBgIGluIHRoZSBDIGxhbmd1YWdlLlxuXG5JZiAqZm9ybWF0KiByZXF1aXJlcyBhIHNpbmdsZSBhcmd1bWVudCwgKnZhbHVlcyogbWF5IGJlIGEgc2luZ2xlIG5vbi1cbnR1cGxlIG9iamVjdC4gWzRdICBPdGhlcndpc2UsICp2YWx1ZXMqIG11c3QgYmUgYSB0dXBsZSB3aXRoIGV4YWN0bHlcbnRoZSBudW1iZXIgb2YgaXRlbXMgc3BlY2lmaWVkIGJ5IHRoZSBmb3JtYXQgc3RyaW5nLCBvciBhIHNpbmdsZVxubWFwcGluZyBvYmplY3QgKGZvciBleGFtcGxlLCBhIGRpY3Rpb25hcnkpLlxuXG5BIGNvbnZlcnNpb24gc3BlY2lmaWVyIGNvbnRhaW5zIHR3byBvciBtb3JlIGNoYXJhY3RlcnMgYW5kIGhhcyB0aGVcbmZvbGxvd2luZyBjb21wb25lbnRzLCB3aGljaCBtdXN0IG9jY3VyIGluIHRoaXMgb3JkZXI6XG5cbjEuIFRoZSBgYFwnJVwnYGAgY2hhcmFjdGVyLCB3aGljaCBtYXJrcyB0aGUgc3RhcnQgb2YgdGhlIHNwZWNpZmllci5cblxuMi4gTWFwcGluZyBrZXkgKG9wdGlvbmFsKSwgY29uc2lzdGluZyBvZiBhIHBhcmVudGhlc2lzZWQgc2VxdWVuY2Ugb2ZcbiAgIGNoYXJhY3RlcnMgKGZvciBleGFtcGxlLCBgYChzb21lbmFtZSlgYCkuXG5cbjMuIENvbnZlcnNpb24gZmxhZ3MgKG9wdGlvbmFsKSwgd2hpY2ggYWZmZWN0IHRoZSByZXN1bHQgb2Ygc29tZVxuICAgY29udmVyc2lvbiB0eXBlcy5cblxuNC4gTWluaW11bSBmaWVsZCB3aWR0aCAob3B0aW9uYWwpLiAgSWYgc3BlY2lmaWVkIGFzIGFuIGBgXCcqXCdgYFxuICAgKGFzdGVyaXNrKSwgdGhlIGFjdHVhbCB3aWR0aCBpcyByZWFkIGZyb20gdGhlIG5leHQgZWxlbWVudCBvZiB0aGVcbiAgIHR1cGxlIGluICp2YWx1ZXMqLCBhbmQgdGhlIG9iamVjdCB0byBjb252ZXJ0IGNvbWVzIGFmdGVyIHRoZVxuICAgbWluaW11bSBmaWVsZCB3aWR0aCBhbmQgb3B0aW9uYWwgcHJlY2lzaW9uLlxuXG41LiBQcmVjaXNpb24gKG9wdGlvbmFsKSwgZ2l2ZW4gYXMgYSBgYFwnLlwnYGAgKGRvdCkgZm9sbG93ZWQgYnkgdGhlXG4gICBwcmVjaXNpb24uICBJZiBzcGVjaWZpZWQgYXMgYGBcJypcJ2BgIChhbiBhc3RlcmlzayksIHRoZSBhY3R1YWxcbiAgIHByZWNpc2lvbiBpcyByZWFkIGZyb20gdGhlIG5leHQgZWxlbWVudCBvZiB0aGUgdHVwbGUgaW4gKnZhbHVlcyosXG4gICBhbmQgdGhlIHZhbHVlIHRvIGNvbnZlcnQgY29tZXMgYWZ0ZXIgdGhlIHByZWNpc2lvbi5cblxuNi4gTGVuZ3RoIG1vZGlmaWVyIChvcHRpb25hbCkuXG5cbjcuIENvbnZlcnNpb24gdHlwZS5cblxuV2hlbiB0aGUgcmlnaHQgYXJndW1lbnQgaXMgYSBkaWN0aW9uYXJ5IChvciBvdGhlciBtYXBwaW5nIHR5cGUpLCB0aGVuXG50aGUgZm9ybWF0cyBpbiB0aGUgc3RyaW5nICptdXN0KiBpbmNsdWRlIGEgcGFyZW50aGVzaXNlZCBtYXBwaW5nIGtleVxuaW50byB0aGF0IGRpY3Rpb25hcnkgaW5zZXJ0ZWQgaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIGBgXCclXCdgYCBjaGFyYWN0ZXIuXG5UaGUgbWFwcGluZyBrZXkgc2VsZWN0cyB0aGUgdmFsdWUgdG8gYmUgZm9ybWF0dGVkIGZyb20gdGhlIG1hcHBpbmcuXG5Gb3IgZXhhbXBsZTpcblxuPj4+IHByaW50KFwnJShsYW5ndWFnZSlzIGhhcyAlKG51bWJlcikwM2QgcXVvdGUgdHlwZXMuXCcgJVxuLi4uICAgICAgIHtcJ2xhbmd1YWdlXCc6ICJQeXRob24iLCAibnVtYmVyIjogMn0pXG5QeXRob24gaGFzIDAwMiBxdW90ZSB0eXBlcy5cblxuSW4gdGhpcyBjYXNlIG5vIGBgKmBgIHNwZWNpZmllcnMgbWF5IG9jY3VyIGluIGEgZm9ybWF0IChzaW5jZSB0aGV5XG5yZXF1aXJlIGEgc2VxdWVudGlhbCBwYXJhbWV0ZXIgbGlzdCkuXG5cblRoZSBjb252ZXJzaW9uIGZsYWcgY2hhcmFjdGVycyBhcmU6XG5cbistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgRmxhZyAgICAgIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbis9PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PStcbnwgYGBcJyNcJ2BgICAgfCBUaGUgdmFsdWUgY29udmVyc2lvbiB3aWxsIHVzZSB0aGUgImFsdGVybmF0ZSBmb3JtIiAod2hlcmUgZGVmaW5lZCAgICAgfFxufCAgICAgICAgICAgfCBiZWxvdykuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYFwnMFwnYGAgICB8IFRoZSBjb252ZXJzaW9uIHdpbGwgYmUgemVybyBwYWRkZWQgZm9yIG51bWVyaWMgdmFsdWVzLiAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgXCctXCdgYCAgIHwgVGhlIGNvbnZlcnRlZCB2YWx1ZSBpcyBsZWZ0IGFkanVzdGVkIChvdmVycmlkZXMgdGhlIGBgXCcwXCdgYCAgICAgICAgICAgfFxufCAgICAgICAgICAgfCBjb252ZXJzaW9uIGlmIGJvdGggYXJlIGdpdmVuKS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYFwnIFwnYGAgICB8IChhIHNwYWNlKSBBIGJsYW5rIHNob3VsZCBiZSBsZWZ0IGJlZm9yZSBhIHBvc2l0aXZlIG51bWJlciAob3IgZW1wdHkgICB8XG58ICAgICAgICAgICB8IHN0cmluZykgcHJvZHVjZWQgYnkgYSBzaWduZWQgY29udmVyc2lvbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgXCcrXCdgYCAgIHwgQSBzaWduIGNoYXJhY3RlciAoYGBcJytcJ2BgIG9yIGBgXCctXCdgYCkgd2lsbCBwcmVjZWRlIHRoZSBjb252ZXJzaW9uICAgICB8XG58ICAgICAgICAgICB8IChvdmVycmlkZXMgYSAic3BhY2UiIGZsYWcpLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG5cbkEgbGVuZ3RoIG1vZGlmaWVyIChgYGhgYCwgYGBsYGAsIG9yIGBgTGBgKSBtYXkgYmUgcHJlc2VudCwgYnV0IGlzXG5pZ25vcmVkIGFzIGl0IGlzIG5vdCBuZWNlc3NhcnkgZm9yIFB5dGhvbiAtLSBzbyBlLmcuIGBgJWxkYGAgaXNcbmlkZW50aWNhbCB0byBgYCVkYGAuXG5cblRoZSBjb252ZXJzaW9uIHR5cGVzIGFyZTpcblxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBDb252ZXJzaW9uICAgfCBNZWFuaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzICAgfFxuKz09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09K1xufCBgYFwnZFwnYGAgICAgICB8IFNpZ25lZCBpbnRlZ2VyIGRlY2ltYWwuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdpXCdgYCAgICAgIHwgU2lnbmVkIGludGVnZXIgZGVjaW1hbC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ29cJ2BgICAgICAgfCBTaWduZWQgb2N0YWwgdmFsdWUuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICgxKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwndVwnYGAgICAgICB8IE9ic29sZXRlIHR5cGUgLS0gaXQgaXMgaWRlbnRpY2FsIHRvIGBgXCdkXCdgYC4gICAgICAgICAgfCAoNykgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ3hcJ2BgICAgICAgfCBTaWduZWQgaGV4YWRlY2ltYWwgKGxvd2VyY2FzZSkuICAgICAgICAgICAgICAgICAgICAgICB8ICgyKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnWFwnYGAgICAgICB8IFNpZ25lZCBoZXhhZGVjaW1hbCAodXBwZXJjYXNlKS4gICAgICAgICAgICAgICAgICAgICAgIHwgKDIpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdlXCdgYCAgICAgIHwgRmxvYXRpbmcgcG9pbnQgZXhwb25lbnRpYWwgZm9ybWF0IChsb3dlcmNhc2UpLiAgICAgICAgfCAoMykgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ0VcJ2BgICAgICAgfCBGbG9hdGluZyBwb2ludCBleHBvbmVudGlhbCBmb3JtYXQgKHVwcGVyY2FzZSkuICAgICAgICB8ICgzKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnZlwnYGAgICAgICB8IEZsb2F0aW5nIHBvaW50IGRlY2ltYWwgZm9ybWF0LiAgICAgICAgICAgICAgICAgICAgICAgIHwgKDMpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdGXCdgYCAgICAgIHwgRmxvYXRpbmcgcG9pbnQgZGVjaW1hbCBmb3JtYXQuICAgICAgICAgICAgICAgICAgICAgICAgfCAoMykgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ2dcJ2BgICAgICAgfCBGbG9hdGluZyBwb2ludCBmb3JtYXQuIFVzZXMgbG93ZXJjYXNlIGV4cG9uZW50aWFsICAgICB8ICg0KSAgICAgfFxufCAgICAgICAgICAgICAgfCBmb3JtYXQgaWYgZXhwb25lbnQgaXMgbGVzcyB0aGFuIC00IG9yIG5vdCBsZXNzIHRoYW4gICB8ICAgICAgICAgfFxufCAgICAgICAgICAgICAgfCBwcmVjaXNpb24sIGRlY2ltYWwgZm9ybWF0IG90aGVyd2lzZS4gICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnR1wnYGAgICAgICB8IEZsb2F0aW5nIHBvaW50IGZvcm1hdC4gVXNlcyB1cHBlcmNhc2UgZXhwb25lbnRpYWwgICAgIHwgKDQpICAgICB8XG58ICAgICAgICAgICAgICB8IGZvcm1hdCBpZiBleHBvbmVudCBpcyBsZXNzIHRoYW4gLTQgb3Igbm90IGxlc3MgdGhhbiAgIHwgICAgICAgICB8XG58ICAgICAgICAgICAgICB8IHByZWNpc2lvbiwgZGVjaW1hbCBmb3JtYXQgb3RoZXJ3aXNlLiAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdjXCdgYCAgICAgIHwgU2luZ2xlIGNoYXJhY3RlciAoYWNjZXB0cyBpbnRlZ2VyIG9yIHNpbmdsZSBjaGFyYWN0ZXIgfCAgICAgICAgIHxcbnwgICAgICAgICAgICAgIHwgc3RyaW5nKS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ3JcJ2BgICAgICAgfCBTdHJpbmcgKGNvbnZlcnRzIGFueSBQeXRob24gb2JqZWN0IHVzaW5nIGBgcmVwcigpYGApLiB8ICg1KSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnc1wnYGAgICAgICB8IFN0cmluZyAoY29udmVydHMgYW55IFB5dGhvbiBvYmplY3QgdXNpbmcgYGBzdHIoKWBgKS4gIHwgKDUpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdhXCdgYCAgICAgIHwgU3RyaW5nIChjb252ZXJ0cyBhbnkgUHl0aG9uIG9iamVjdCB1c2luZyAgICAgICAgICAgICAgfCAoNSkgICAgIHxcbnwgICAgICAgICAgICAgIHwgYGBhc2NpaSgpYGApLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJyVcJ2BgICAgICAgfCBObyBhcmd1bWVudCBpcyBjb252ZXJ0ZWQsIHJlc3VsdHMgaW4gYSBgYFwnJVwnYGAgICAgICAgIHwgICAgICAgICB8XG58ICAgICAgICAgICAgICB8IGNoYXJhY3RlciBpbiB0aGUgcmVzdWx0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG5cbk5vdGVzOlxuXG4xLiBUaGUgYWx0ZXJuYXRlIGZvcm0gY2F1c2VzIGEgbGVhZGluZyB6ZXJvIChgYFwnMFwnYGApIHRvIGJlIGluc2VydGVkXG4gICBiZXR3ZWVuIGxlZnQtaGFuZCBwYWRkaW5nIGFuZCB0aGUgZm9ybWF0dGluZyBvZiB0aGUgbnVtYmVyIGlmIHRoZVxuICAgbGVhZGluZyBjaGFyYWN0ZXIgb2YgdGhlIHJlc3VsdCBpcyBub3QgYWxyZWFkeSBhIHplcm8uXG5cbjIuIFRoZSBhbHRlcm5hdGUgZm9ybSBjYXVzZXMgYSBsZWFkaW5nIGBgXCcweFwnYGAgb3IgYGBcJzBYXCdgYCAoZGVwZW5kaW5nXG4gICBvbiB3aGV0aGVyIHRoZSBgYFwneFwnYGAgb3IgYGBcJ1hcJ2BgIGZvcm1hdCB3YXMgdXNlZCkgdG8gYmUgaW5zZXJ0ZWRcbiAgIGJldHdlZW4gbGVmdC1oYW5kIHBhZGRpbmcgYW5kIHRoZSBmb3JtYXR0aW5nIG9mIHRoZSBudW1iZXIgaWYgdGhlXG4gICBsZWFkaW5nIGNoYXJhY3RlciBvZiB0aGUgcmVzdWx0IGlzIG5vdCBhbHJlYWR5IGEgemVyby5cblxuMy4gVGhlIGFsdGVybmF0ZSBmb3JtIGNhdXNlcyB0aGUgcmVzdWx0IHRvIGFsd2F5cyBjb250YWluIGEgZGVjaW1hbFxuICAgcG9pbnQsIGV2ZW4gaWYgbm8gZGlnaXRzIGZvbGxvdyBpdC5cblxuICAgVGhlIHByZWNpc2lvbiBkZXRlcm1pbmVzIHRoZSBudW1iZXIgb2YgZGlnaXRzIGFmdGVyIHRoZSBkZWNpbWFsXG4gICBwb2ludCBhbmQgZGVmYXVsdHMgdG8gNi5cblxuNC4gVGhlIGFsdGVybmF0ZSBmb3JtIGNhdXNlcyB0aGUgcmVzdWx0IHRvIGFsd2F5cyBjb250YWluIGEgZGVjaW1hbFxuICAgcG9pbnQsIGFuZCB0cmFpbGluZyB6ZXJvZXMgYXJlIG5vdCByZW1vdmVkIGFzIHRoZXkgd291bGQgb3RoZXJ3aXNlXG4gICBiZS5cblxuICAgVGhlIHByZWNpc2lvbiBkZXRlcm1pbmVzIHRoZSBudW1iZXIgb2Ygc2lnbmlmaWNhbnQgZGlnaXRzIGJlZm9yZVxuICAgYW5kIGFmdGVyIHRoZSBkZWNpbWFsIHBvaW50IGFuZCBkZWZhdWx0cyB0byA2LlxuXG41LiBJZiBwcmVjaXNpb24gaXMgYGBOYGAsIHRoZSBvdXRwdXQgaXMgdHJ1bmNhdGVkIHRvIGBgTmBgIGNoYXJhY3RlcnMuXG5cbjEuIFNlZSAqKlBFUCAyMzcqKi5cblxuU2luY2UgUHl0aG9uIHN0cmluZ3MgaGF2ZSBhbiBleHBsaWNpdCBsZW5ndGgsIGBgJXNgYCBjb252ZXJzaW9ucyBkb1xubm90IGFzc3VtZSB0aGF0IGBgXCdcXDBcJ2BgIGlzIHRoZSBlbmQgb2YgdGhlIHN0cmluZy5cblxuQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogYGAlZmBgIGNvbnZlcnNpb25zIGZvciBudW1iZXJzIHdob3NlIGFic29sdXRlXG52YWx1ZSBpcyBvdmVyIDFlNTAgYXJlIG5vIGxvbmdlciByZXBsYWNlZCBieSBgYCVnYGAgY29udmVyc2lvbnMuXG5cbkFkZGl0aW9uYWwgc3RyaW5nIG9wZXJhdGlvbnMgYXJlIGRlZmluZWQgaW4gc3RhbmRhcmQgbW9kdWxlc1xuYGBzdHJpbmdgYCBhbmQgYGByZWBgLlxuXG5cblJhbmdlIFR5cGVcbj09PT09PT09PT1cblxuVGhlIGBgcmFuZ2VgYCB0eXBlIGlzIGFuIGltbXV0YWJsZSBzZXF1ZW5jZSB3aGljaCBpcyBjb21tb25seSB1c2VkIGZvclxubG9vcGluZy4gIFRoZSBhZHZhbnRhZ2Ugb2YgdGhlIGBgcmFuZ2VgYCB0eXBlIGlzIHRoYXQgYW4gYGByYW5nZWBgXG5vYmplY3Qgd2lsbCBhbHdheXMgdGFrZSB0aGUgc2FtZSBhbW91bnQgb2YgbWVtb3J5LCBubyBtYXR0ZXIgdGhlIHNpemVcbm9mIHRoZSByYW5nZSBpdCByZXByZXNlbnRzLlxuXG5SYW5nZSBvYmplY3RzIGhhdmUgcmVsYXRpdmVseSBsaXR0bGUgYmVoYXZpb3I6IHRoZXkgc3VwcG9ydCBpbmRleGluZyxcbmNvbnRhaW5zLCBpdGVyYXRpb24sIHRoZSBgYGxlbigpYGAgZnVuY3Rpb24sIGFuZCB0aGUgZm9sbG93aW5nXG5tZXRob2RzOlxuXG5yYW5nZS5jb3VudCh4KVxuXG4gICBSZXR1cm4gdGhlIG51bWJlciBvZiAqaSpcJ3MgZm9yIHdoaWNoIGBgc1tpXSA9PSB4YGAuXG5cbiAgICAgIE5ldyBpbiB2ZXJzaW9uIDMuMi5cblxucmFuZ2UuaW5kZXgoeClcblxuICAgUmV0dXJuIHRoZSBzbWFsbGVzdCAqaSogc3VjaCB0aGF0IGBgc1tpXSA9PSB4YGAuICBSYWlzZXNcbiAgIGBgVmFsdWVFcnJvcmBgIHdoZW4gKngqIGlzIG5vdCBpbiB0aGUgcmFuZ2UuXG5cbiAgICAgIE5ldyBpbiB2ZXJzaW9uIDMuMi5cblxuXG5NdXRhYmxlIFNlcXVlbmNlIFR5cGVzXG49PT09PT09PT09PT09PT09PT09PT09XG5cbkxpc3QgYW5kIGJ5dGVhcnJheSBvYmplY3RzIHN1cHBvcnQgYWRkaXRpb25hbCBvcGVyYXRpb25zIHRoYXQgYWxsb3dcbmluLXBsYWNlIG1vZGlmaWNhdGlvbiBvZiB0aGUgb2JqZWN0LiAgT3RoZXIgbXV0YWJsZSBzZXF1ZW5jZSB0eXBlc1xuKHdoZW4gYWRkZWQgdG8gdGhlIGxhbmd1YWdlKSBzaG91bGQgYWxzbyBzdXBwb3J0IHRoZXNlIG9wZXJhdGlvbnMuXG5TdHJpbmdzIGFuZCB0dXBsZXMgYXJlIGltbXV0YWJsZSBzZXF1ZW5jZSB0eXBlczogc3VjaCBvYmplY3RzIGNhbm5vdFxuYmUgbW9kaWZpZWQgb25jZSBjcmVhdGVkLiBUaGUgZm9sbG93aW5nIG9wZXJhdGlvbnMgYXJlIGRlZmluZWQgb25cbm11dGFibGUgc2VxdWVuY2UgdHlwZXMgKHdoZXJlICp4KiBpcyBhbiBhcmJpdHJhcnkgb2JqZWN0KS5cblxuTm90ZSB0aGF0IHdoaWxlIGxpc3RzIGFsbG93IHRoZWlyIGl0ZW1zIHRvIGJlIG9mIGFueSB0eXBlLCBieXRlYXJyYXlcbm9iamVjdCAiaXRlbXMiIGFyZSBhbGwgaW50ZWdlcnMgaW4gdGhlIHJhbmdlIDAgPD0geCA8IDI1Ni5cblxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IE9wZXJhdGlvbiAgICAgICAgICAgICAgICAgICAgICB8IFJlc3VsdCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgICAgICAgICAgICAgICAgIHxcbis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09K1xufCBgYHNbaV0gPSB4YGAgICAgICAgICAgICAgICAgICAgfCBpdGVtICppKiBvZiAqcyogaXMgcmVwbGFjZWQgYnkgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICp4KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHNbaTpqXSA9IHRgYCAgICAgICAgICAgICAgICAgfCBzbGljZSBvZiAqcyogZnJvbSAqaSogdG8gKmoqIGlzICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHJlcGxhY2VkIGJ5IHRoZSBjb250ZW50cyBvZiB0aGUgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgaXRlcmFibGUgKnQqICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgZGVsIHNbaTpqXWBgICAgICAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2k6al0gPSBbXWBgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHNbaTpqOmtdID0gdGBgICAgICAgICAgICAgICAgfCB0aGUgZWxlbWVudHMgb2YgYGBzW2k6ajprXWBgIGFyZSB8ICgxKSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHJlcGxhY2VkIGJ5IHRob3NlIG9mICp0KiAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYGRlbCBzW2k6ajprXWBgICAgICAgICAgICAgICAgfCByZW1vdmVzIHRoZSBlbGVtZW50cyBvZiAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1tpOmo6a11gYCBmcm9tIHRoZSBsaXN0ICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuYXBwZW5kKHgpYGAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tsZW4ocyk6bGVuKHMpXSA9ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFt4XWBgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuZXh0ZW5kKHgpYGAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tsZW4ocyk6bGVuKHMpXSA9IHhgYCB8ICgyKSAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmNvdW50KHgpYGAgICAgICAgICAgICAgICAgIHwgcmV0dXJuIG51bWJlciBvZiAqaSpcJ3MgZm9yIHdoaWNoIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBzW2ldID09IHhgYCAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5pbmRleCh4WywgaVssIGpdXSlgYCAgICAgICB8IHJldHVybiBzbWFsbGVzdCAqayogc3VjaCB0aGF0ICAgIHwgKDMpICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBzW2tdID09IHhgYCBhbmQgYGBpIDw9IGsgPCBqYGAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5pbnNlcnQoaSwgeClgYCAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2k6aV0gPSBbeF1gYCAgICAgICAgIHwgKDQpICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMucG9wKFtpXSlgYCAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgeCA9IHNbaV07IGRlbCBzW2ldOyAgICB8ICg1KSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHJldHVybiB4YGAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMucmVtb3ZlKHgpYGAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgZGVsIHNbcy5pbmRleCh4KV1gYCAgICB8ICgzKSAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnJldmVyc2UoKWBgICAgICAgICAgICAgICAgIHwgcmV2ZXJzZXMgdGhlIGl0ZW1zIG9mICpzKiBpbiAgICAgfCAoNikgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBwbGFjZSAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnNvcnQoW2tleVssIHJldmVyc2VdXSlgYCAgIHwgc29ydCB0aGUgaXRlbXMgb2YgKnMqIGluIHBsYWNlICAgfCAoNiksICg3KSwgKDgpICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG5cbk5vdGVzOlxuXG4xLiAqdCogbXVzdCBoYXZlIHRoZSBzYW1lIGxlbmd0aCBhcyB0aGUgc2xpY2UgaXQgaXMgcmVwbGFjaW5nLlxuXG4yLiAqeCogY2FuIGJlIGFueSBpdGVyYWJsZSBvYmplY3QuXG5cbjMuIFJhaXNlcyBgYFZhbHVlRXJyb3JgYCB3aGVuICp4KiBpcyBub3QgZm91bmQgaW4gKnMqLiBXaGVuIGEgbmVnYXRpdmVcbiAgIGluZGV4IGlzIHBhc3NlZCBhcyB0aGUgc2Vjb25kIG9yIHRoaXJkIHBhcmFtZXRlciB0byB0aGUgYGBpbmRleCgpYGBcbiAgIG1ldGhvZCwgdGhlIHNlcXVlbmNlIGxlbmd0aCBpcyBhZGRlZCwgYXMgZm9yIHNsaWNlIGluZGljZXMuICBJZiBpdFxuICAgaXMgc3RpbGwgbmVnYXRpdmUsIGl0IGlzIHRydW5jYXRlZCB0byB6ZXJvLCBhcyBmb3Igc2xpY2UgaW5kaWNlcy5cblxuNC4gV2hlbiBhIG5lZ2F0aXZlIGluZGV4IGlzIHBhc3NlZCBhcyB0aGUgZmlyc3QgcGFyYW1ldGVyIHRvIHRoZVxuICAgYGBpbnNlcnQoKWBgIG1ldGhvZCwgdGhlIHNlcXVlbmNlIGxlbmd0aCBpcyBhZGRlZCwgYXMgZm9yIHNsaWNlXG4gICBpbmRpY2VzLiAgSWYgaXQgaXMgc3RpbGwgbmVnYXRpdmUsIGl0IGlzIHRydW5jYXRlZCB0byB6ZXJvLCBhcyBmb3JcbiAgIHNsaWNlIGluZGljZXMuXG5cbjUuIFRoZSBvcHRpb25hbCBhcmd1bWVudCAqaSogZGVmYXVsdHMgdG8gYGAtMWBgLCBzbyB0aGF0IGJ5IGRlZmF1bHRcbiAgIHRoZSBsYXN0IGl0ZW0gaXMgcmVtb3ZlZCBhbmQgcmV0dXJuZWQuXG5cbjYuIFRoZSBgYHNvcnQoKWBgIGFuZCBgYHJldmVyc2UoKWBgIG1ldGhvZHMgbW9kaWZ5IHRoZSBzZXF1ZW5jZSBpblxuICAgcGxhY2UgZm9yIGVjb25vbXkgb2Ygc3BhY2Ugd2hlbiBzb3J0aW5nIG9yIHJldmVyc2luZyBhIGxhcmdlXG4gICBzZXF1ZW5jZS4gIFRvIHJlbWluZCB5b3UgdGhhdCB0aGV5IG9wZXJhdGUgYnkgc2lkZSBlZmZlY3QsIHRoZXlcbiAgIGRvblwndCByZXR1cm4gdGhlIHNvcnRlZCBvciByZXZlcnNlZCBzZXF1ZW5jZS5cblxuNy4gVGhlIGBgc29ydCgpYGAgbWV0aG9kIHRha2VzIG9wdGlvbmFsIGFyZ3VtZW50cyBmb3IgY29udHJvbGxpbmcgdGhlXG4gICBjb21wYXJpc29ucy4gIEVhY2ggbXVzdCBiZSBzcGVjaWZpZWQgYXMgYSBrZXl3b3JkIGFyZ3VtZW50LlxuXG4gICAqa2V5KiBzcGVjaWZpZXMgYSBmdW5jdGlvbiBvZiBvbmUgYXJndW1lbnQgdGhhdCBpcyB1c2VkIHRvIGV4dHJhY3RcbiAgIGEgY29tcGFyaXNvbiBrZXkgZnJvbSBlYWNoIGxpc3QgZWxlbWVudDogYGBrZXk9c3RyLmxvd2VyYGAuICBUaGVcbiAgIGRlZmF1bHQgdmFsdWUgaXMgYGBOb25lYGAuIFVzZSBgYGZ1bmN0b29scy5jbXBfdG9fa2V5KClgYCB0b1xuICAgY29udmVydCBhbiBvbGQtc3R5bGUgKmNtcCogZnVuY3Rpb24gdG8gYSAqa2V5KiBmdW5jdGlvbi5cblxuICAgKnJldmVyc2UqIGlzIGEgYm9vbGVhbiB2YWx1ZS4gIElmIHNldCB0byBgYFRydWVgYCwgdGhlbiB0aGUgbGlzdFxuICAgZWxlbWVudHMgYXJlIHNvcnRlZCBhcyBpZiBlYWNoIGNvbXBhcmlzb24gd2VyZSByZXZlcnNlZC5cblxuICAgVGhlIGBgc29ydCgpYGAgbWV0aG9kIGlzIGd1YXJhbnRlZWQgdG8gYmUgc3RhYmxlLiAgQSBzb3J0IGlzIHN0YWJsZVxuICAgaWYgaXQgZ3VhcmFudGVlcyBub3QgdG8gY2hhbmdlIHRoZSByZWxhdGl2ZSBvcmRlciBvZiBlbGVtZW50cyB0aGF0XG4gICBjb21wYXJlIGVxdWFsIC0tLSB0aGlzIGlzIGhlbHBmdWwgZm9yIHNvcnRpbmcgaW4gbXVsdGlwbGUgcGFzc2VzXG4gICAoZm9yIGV4YW1wbGUsIHNvcnQgYnkgZGVwYXJ0bWVudCwgdGhlbiBieSBzYWxhcnkgZ3JhZGUpLlxuXG4gICAqKkNQeXRob24gaW1wbGVtZW50YXRpb24gZGV0YWlsOioqIFdoaWxlIGEgbGlzdCBpcyBiZWluZyBzb3J0ZWQsXG4gICB0aGUgZWZmZWN0IG9mIGF0dGVtcHRpbmcgdG8gbXV0YXRlLCBvciBldmVuIGluc3BlY3QsIHRoZSBsaXN0IGlzXG4gICB1bmRlZmluZWQuICBUaGUgQyBpbXBsZW1lbnRhdGlvbiBvZiBQeXRob24gbWFrZXMgdGhlIGxpc3QgYXBwZWFyXG4gICBlbXB0eSBmb3IgdGhlIGR1cmF0aW9uLCBhbmQgcmFpc2VzIGBgVmFsdWVFcnJvcmBgIGlmIGl0IGNhbiBkZXRlY3RcbiAgIHRoYXQgdGhlIGxpc3QgaGFzIGJlZW4gbXV0YXRlZCBkdXJpbmcgYSBzb3J0LlxuXG44LiBgYHNvcnQoKWBgIGlzIG5vdCBzdXBwb3J0ZWQgYnkgYGBieXRlYXJyYXlgYCBvYmplY3RzLlxuXG5cbkJ5dGVzIGFuZCBCeXRlIEFycmF5IE1ldGhvZHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzLCBiZWluZyAic3RyaW5ncyBvZiBieXRlcyIsIGhhdmUgYWxsXG5tZXRob2RzIGZvdW5kIG9uIHN0cmluZ3MsIHdpdGggdGhlIGV4Y2VwdGlvbiBvZiBgYGVuY29kZSgpYGAsXG5gYGZvcm1hdCgpYGAgYW5kIGBgaXNpZGVudGlmaWVyKClgYCwgd2hpY2ggZG8gbm90IG1ha2Ugc2Vuc2Ugd2l0aFxudGhlc2UgdHlwZXMuICBGb3IgY29udmVydGluZyB0aGUgb2JqZWN0cyB0byBzdHJpbmdzLCB0aGV5IGhhdmUgYVxuYGBkZWNvZGUoKWBgIG1ldGhvZC5cblxuV2hlcmV2ZXIgb25lIG9mIHRoZXNlIG1ldGhvZHMgbmVlZHMgdG8gaW50ZXJwcmV0IHRoZSBieXRlcyBhc1xuY2hhcmFjdGVycyAoZS5nLiB0aGUgYGBpcy4uLigpYGAgbWV0aG9kcyksIHRoZSBBU0NJSSBjaGFyYWN0ZXIgc2V0IGlzXG5hc3N1bWVkLlxuXG5Ob3RlOiBUaGUgbWV0aG9kcyBvbiBieXRlcyBhbmQgYnl0ZWFycmF5IG9iamVjdHMgZG9uXCd0IGFjY2VwdCBzdHJpbmdzIGFzXG4gIHRoZWlyIGFyZ3VtZW50cywganVzdCBhcyB0aGUgbWV0aG9kcyBvbiBzdHJpbmdzIGRvblwndCBhY2NlcHQgYnl0ZXNcbiAgYXMgdGhlaXIgYXJndW1lbnRzLiAgRm9yIGV4YW1wbGUsIHlvdSBoYXZlIHRvIHdyaXRlXG5cbiAgICAgYSA9ICJhYmMiXG4gICAgIGIgPSBhLnJlcGxhY2UoImEiLCAiZiIpXG5cbiAgYW5kXG5cbiAgICAgYSA9IGIiYWJjIlxuICAgICBiID0gYS5yZXBsYWNlKGIiYSIsIGIiZiIpXG5cbmJ5dGVzLmRlY29kZShlbmNvZGluZz0idXRmLTgiLCBlcnJvcnM9InN0cmljdCIpXG5ieXRlYXJyYXkuZGVjb2RlKGVuY29kaW5nPSJ1dGYtOCIsIGVycm9ycz0ic3RyaWN0IilcblxuICAgUmV0dXJuIGEgc3RyaW5nIGRlY29kZWQgZnJvbSB0aGUgZ2l2ZW4gYnl0ZXMuICBEZWZhdWx0IGVuY29kaW5nIGlzXG4gICBgYFwndXRmLThcJ2BgLiAqZXJyb3JzKiBtYXkgYmUgZ2l2ZW4gdG8gc2V0IGEgZGlmZmVyZW50IGVycm9yXG4gICBoYW5kbGluZyBzY2hlbWUuICBUaGUgZGVmYXVsdCBmb3IgKmVycm9ycyogaXMgYGBcJ3N0cmljdFwnYGAsIG1lYW5pbmdcbiAgIHRoYXQgZW5jb2RpbmcgZXJyb3JzIHJhaXNlIGEgYGBVbmljb2RlRXJyb3JgYC4gIE90aGVyIHBvc3NpYmxlXG4gICB2YWx1ZXMgYXJlIGBgXCdpZ25vcmVcJ2BgLCBgYFwncmVwbGFjZVwnYGAgYW5kIGFueSBvdGhlciBuYW1lXG4gICByZWdpc3RlcmVkIHZpYSBgYGNvZGVjcy5yZWdpc3Rlcl9lcnJvcigpYGAsIHNlZSBzZWN0aW9uICpDb2RlYyBCYXNlXG4gICBDbGFzc2VzKi4gRm9yIGEgbGlzdCBvZiBwb3NzaWJsZSBlbmNvZGluZ3MsIHNlZSBzZWN0aW9uICpTdGFuZGFyZFxuICAgRW5jb2RpbmdzKi5cblxuICAgQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogQWRkZWQgc3VwcG9ydCBmb3Iga2V5d29yZCBhcmd1bWVudHMuXG5cblRoZSBieXRlcyBhbmQgYnl0ZWFycmF5IHR5cGVzIGhhdmUgYW4gYWRkaXRpb25hbCBjbGFzcyBtZXRob2Q6XG5cbmNsYXNzbWV0aG9kIGJ5dGVzLmZyb21oZXgoc3RyaW5nKVxuY2xhc3NtZXRob2QgYnl0ZWFycmF5LmZyb21oZXgoc3RyaW5nKVxuXG4gICBUaGlzIGBgYnl0ZXNgYCBjbGFzcyBtZXRob2QgcmV0dXJucyBhIGJ5dGVzIG9yIGJ5dGVhcnJheSBvYmplY3QsXG4gICBkZWNvZGluZyB0aGUgZ2l2ZW4gc3RyaW5nIG9iamVjdC4gIFRoZSBzdHJpbmcgbXVzdCBjb250YWluIHR3b1xuICAgaGV4YWRlY2ltYWwgZGlnaXRzIHBlciBieXRlLCBzcGFjZXMgYXJlIGlnbm9yZWQuXG5cbiAgID4+PiBieXRlcy5mcm9taGV4KFwnZjAgZjFmMiAgXCcpXG4gICBiXCdcXHhmMFxceGYxXFx4ZjJcJ1xuXG5UaGUgbWFrZXRyYW5zIGFuZCB0cmFuc2xhdGUgbWV0aG9kcyBkaWZmZXIgaW4gc2VtYW50aWNzIGZyb20gdGhlXG52ZXJzaW9ucyBhdmFpbGFibGUgb24gc3RyaW5nczpcblxuYnl0ZXMudHJhbnNsYXRlKHRhYmxlWywgZGVsZXRlXSlcbmJ5dGVhcnJheS50cmFuc2xhdGUodGFibGVbLCBkZWxldGVdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBieXRlcyBvciBieXRlYXJyYXkgb2JqZWN0IHdoZXJlIGFsbCBieXRlc1xuICAgb2NjdXJyaW5nIGluIHRoZSBvcHRpb25hbCBhcmd1bWVudCAqZGVsZXRlKiBhcmUgcmVtb3ZlZCwgYW5kIHRoZVxuICAgcmVtYWluaW5nIGJ5dGVzIGhhdmUgYmVlbiBtYXBwZWQgdGhyb3VnaCB0aGUgZ2l2ZW4gdHJhbnNsYXRpb25cbiAgIHRhYmxlLCB3aGljaCBtdXN0IGJlIGEgYnl0ZXMgb2JqZWN0IG9mIGxlbmd0aCAyNTYuXG5cbiAgIFlvdSBjYW4gdXNlIHRoZSBgYGJ5dGVzLm1ha2V0cmFucygpYGAgbWV0aG9kIHRvIGNyZWF0ZSBhXG4gICB0cmFuc2xhdGlvbiB0YWJsZS5cblxuICAgU2V0IHRoZSAqdGFibGUqIGFyZ3VtZW50IHRvIGBgTm9uZWBgIGZvciB0cmFuc2xhdGlvbnMgdGhhdCBvbmx5XG4gICBkZWxldGUgY2hhcmFjdGVyczpcblxuICAgICAgPj4+IGJcJ3JlYWQgdGhpcyBzaG9ydCB0ZXh0XCcudHJhbnNsYXRlKE5vbmUsIGJcJ2FlaW91XCcpXG4gICAgICBiXCdyZCB0aHMgc2hydCB0eHRcJ1xuXG5zdGF0aWMgYnl0ZXMubWFrZXRyYW5zKGZyb20sIHRvKVxuc3RhdGljIGJ5dGVhcnJheS5tYWtldHJhbnMoZnJvbSwgdG8pXG5cbiAgIFRoaXMgc3RhdGljIG1ldGhvZCByZXR1cm5zIGEgdHJhbnNsYXRpb24gdGFibGUgdXNhYmxlIGZvclxuICAgYGBieXRlcy50cmFuc2xhdGUoKWBgIHRoYXQgd2lsbCBtYXAgZWFjaCBjaGFyYWN0ZXIgaW4gKmZyb20qIGludG9cbiAgIHRoZSBjaGFyYWN0ZXIgYXQgdGhlIHNhbWUgcG9zaXRpb24gaW4gKnRvKjsgKmZyb20qIGFuZCAqdG8qIG11c3QgYmVcbiAgIGJ5dGVzIG9iamVjdHMgYW5kIGhhdmUgdGhlIHNhbWUgbGVuZ3RoLlxuXG4gICBOZXcgaW4gdmVyc2lvbiAzLjEuXG4nLAotICd0eXBlc3NlcS1tdXRhYmxlJzogJ1xuTXV0YWJsZSBTZXF1ZW5jZSBUeXBlc1xuKioqKioqKioqKioqKioqKioqKioqKlxuXG5MaXN0IGFuZCBieXRlYXJyYXkgb2JqZWN0cyBzdXBwb3J0IGFkZGl0aW9uYWwgb3BlcmF0aW9ucyB0aGF0IGFsbG93XG5pbi1wbGFjZSBtb2RpZmljYXRpb24gb2YgdGhlIG9iamVjdC4gIE90aGVyIG11dGFibGUgc2VxdWVuY2UgdHlwZXNcbih3aGVuIGFkZGVkIHRvIHRoZSBsYW5ndWFnZSkgc2hvdWxkIGFsc28gc3VwcG9ydCB0aGVzZSBvcGVyYXRpb25zLlxuU3RyaW5ncyBhbmQgdHVwbGVzIGFyZSBpbW11dGFibGUgc2VxdWVuY2UgdHlwZXM6IHN1Y2ggb2JqZWN0cyBjYW5ub3RcbmJlIG1vZGlmaWVkIG9uY2UgY3JlYXRlZC4gVGhlIGZvbGxvd2luZyBvcGVyYXRpb25zIGFyZSBkZWZpbmVkIG9uXG5tdXRhYmxlIHNlcXVlbmNlIHR5cGVzICh3aGVyZSAqeCogaXMgYW4gYXJiaXRyYXJ5IG9iamVjdCkuXG5cbk5vdGUgdGhhdCB3aGlsZSBsaXN0cyBhbGxvdyB0aGVpciBpdGVtcyB0byBiZSBvZiBhbnkgdHlwZSwgYnl0ZWFycmF5XG5vYmplY3QgIml0ZW1zIiBhcmUgYWxsIGludGVnZXJzIGluIHRoZSByYW5nZSAwIDw9IHggPCAyNTYuXG5cbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBPcGVyYXRpb24gICAgICAgICAgICAgICAgICAgICAgfCBSZXN1bHQgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzICAgICAgICAgICAgICAgICB8XG4rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PStcbnwgYGBzW2ldID0geGBgICAgICAgICAgICAgICAgICAgIHwgaXRlbSAqaSogb2YgKnMqIGlzIHJlcGxhY2VkIGJ5ICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAqeCogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzW2k6al0gPSB0YGAgICAgICAgICAgICAgICAgIHwgc2xpY2Ugb2YgKnMqIGZyb20gKmkqIHRvICpqKiBpcyAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCByZXBsYWNlZCBieSB0aGUgY29udGVudHMgb2YgdGhlICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGl0ZXJhYmxlICp0KiAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYGRlbCBzW2k6al1gYCAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tpOmpdID0gW11gYCAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzW2k6ajprXSA9IHRgYCAgICAgICAgICAgICAgIHwgdGhlIGVsZW1lbnRzIG9mIGBgc1tpOmo6a11gYCBhcmUgfCAoMSkgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCByZXBsYWNlZCBieSB0aG9zZSBvZiAqdCogICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBkZWwgc1tpOmo6a11gYCAgICAgICAgICAgICAgIHwgcmVtb3ZlcyB0aGUgZWxlbWVudHMgb2YgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBgYHNbaTpqOmtdYGAgZnJvbSB0aGUgbGlzdCAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmFwcGVuZCh4KWBgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHNbbGVuKHMpOmxlbihzKV0gPSAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBbeF1gYCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmV4dGVuZCh4KWBgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHNbbGVuKHMpOmxlbihzKV0gPSB4YGAgfCAoMikgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5jb3VudCh4KWBgICAgICAgICAgICAgICAgICB8IHJldHVybiBudW1iZXIgb2YgKmkqXCdzIGZvciB3aGljaCB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1tpXSA9PSB4YGAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuaW5kZXgoeFssIGlbLCBqXV0pYGAgICAgICAgfCByZXR1cm4gc21hbGxlc3QgKmsqIHN1Y2ggdGhhdCAgICB8ICgzKSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1trXSA9PSB4YGAgYW5kIGBgaSA8PSBrIDwgamBgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuaW5zZXJ0KGksIHgpYGAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tpOmldID0gW3hdYGAgICAgICAgICB8ICg0KSAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnBvcChbaV0pYGAgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHggPSBzW2ldOyBkZWwgc1tpXTsgICAgfCAoNSkgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCByZXR1cm4geGBgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnJlbW92ZSh4KWBgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYGRlbCBzW3MuaW5kZXgoeCldYGAgICAgfCAoMykgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5yZXZlcnNlKClgYCAgICAgICAgICAgICAgICB8IHJldmVyc2VzIHRoZSBpdGVtcyBvZiAqcyogaW4gICAgIHwgKDYpICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcGxhY2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5zb3J0KFtrZXlbLCByZXZlcnNlXV0pYGAgICB8IHNvcnQgdGhlIGl0ZW1zIG9mICpzKiBpbiBwbGFjZSAgIHwgKDYpLCAoNyksICg4KSAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuXG5Ob3RlczpcblxuMS4gKnQqIG11c3QgaGF2ZSB0aGUgc2FtZSBsZW5ndGggYXMgdGhlIHNsaWNlIGl0IGlzIHJlcGxhY2luZy5cblxuMi4gKngqIGNhbiBiZSBhbnkgaXRlcmFibGUgb2JqZWN0LlxuXG4zLiBSYWlzZXMgYGBWYWx1ZUVycm9yYGAgd2hlbiAqeCogaXMgbm90IGZvdW5kIGluICpzKi4gV2hlbiBhIG5lZ2F0aXZlXG4gICBpbmRleCBpcyBwYXNzZWQgYXMgdGhlIHNlY29uZCBvciB0aGlyZCBwYXJhbWV0ZXIgdG8gdGhlIGBgaW5kZXgoKWBgXG4gICBtZXRob2QsIHRoZSBzZXF1ZW5jZSBsZW5ndGggaXMgYWRkZWQsIGFzIGZvciBzbGljZSBpbmRpY2VzLiAgSWYgaXRcbiAgIGlzIHN0aWxsIG5lZ2F0aXZlLCBpdCBpcyB0cnVuY2F0ZWQgdG8gemVybywgYXMgZm9yIHNsaWNlIGluZGljZXMuXG5cbjQuIFdoZW4gYSBuZWdhdGl2ZSBpbmRleCBpcyBwYXNzZWQgYXMgdGhlIGZpcnN0IHBhcmFtZXRlciB0byB0aGVcbiAgIGBgaW5zZXJ0KClgYCBtZXRob2QsIHRoZSBzZXF1ZW5jZSBsZW5ndGggaXMgYWRkZWQsIGFzIGZvciBzbGljZVxuICAgaW5kaWNlcy4gIElmIGl0IGlzIHN0aWxsIG5lZ2F0aXZlLCBpdCBpcyB0cnVuY2F0ZWQgdG8gemVybywgYXMgZm9yXG4gICBzbGljZSBpbmRpY2VzLlxuXG41LiBUaGUgb3B0aW9uYWwgYXJndW1lbnQgKmkqIGRlZmF1bHRzIHRvIGBgLTFgYCwgc28gdGhhdCBieSBkZWZhdWx0XG4gICB0aGUgbGFzdCBpdGVtIGlzIHJlbW92ZWQgYW5kIHJldHVybmVkLlxuXG42LiBUaGUgYGBzb3J0KClgYCBhbmQgYGByZXZlcnNlKClgYCBtZXRob2RzIG1vZGlmeSB0aGUgc2VxdWVuY2UgaW5cbiAgIHBsYWNlIGZvciBlY29ub215IG9mIHNwYWNlIHdoZW4gc29ydGluZyBvciByZXZlcnNpbmcgYSBsYXJnZVxuICAgc2VxdWVuY2UuICBUbyByZW1pbmQgeW91IHRoYXQgdGhleSBvcGVyYXRlIGJ5IHNpZGUgZWZmZWN0LCB0aGV5XG4gICBkb25cJ3QgcmV0dXJuIHRoZSBzb3J0ZWQgb3IgcmV2ZXJzZWQgc2VxdWVuY2UuXG5cbjcuIFRoZSBgYHNvcnQoKWBgIG1ldGhvZCB0YWtlcyBvcHRpb25hbCBhcmd1bWVudHMgZm9yIGNvbnRyb2xsaW5nIHRoZVxuICAgY29tcGFyaXNvbnMuICBFYWNoIG11c3QgYmUgc3BlY2lmaWVkIGFzIGEga2V5d29yZCBhcmd1bWVudC5cblxuICAgKmtleSogc3BlY2lmaWVzIGEgZnVuY3Rpb24gb2Ygb25lIGFyZ3VtZW50IHRoYXQgaXMgdXNlZCB0byBleHRyYWN0XG4gICBhIGNvbXBhcmlzb24ga2V5IGZyb20gZWFjaCBsaXN0IGVsZW1lbnQ6IGBga2V5PXN0ci5sb3dlcmBgLiAgVGhlXG4gICBkZWZhdWx0IHZhbHVlIGlzIGBgTm9uZWBgLiBVc2UgYGBmdW5jdG9vbHMuY21wX3RvX2tleSgpYGAgdG9cbiAgIGNvbnZlcnQgYW4gb2xkLXN0eWxlICpjbXAqIGZ1bmN0aW9uIHRvIGEgKmtleSogZnVuY3Rpb24uXG5cbiAgICpyZXZlcnNlKiBpcyBhIGJvb2xlYW4gdmFsdWUuICBJZiBzZXQgdG8gYGBUcnVlYGAsIHRoZW4gdGhlIGxpc3RcbiAgIGVsZW1lbnRzIGFyZSBzb3J0ZWQgYXMgaWYgZWFjaCBjb21wYXJpc29uIHdlcmUgcmV2ZXJzZWQuXG5cbiAgIFRoZSBgYHNvcnQoKWBgIG1ldGhvZCBpcyBndWFyYW50ZWVkIHRvIGJlIHN0YWJsZS4gIEEgc29ydCBpcyBzdGFibGVcbiAgIGlmIGl0IGd1YXJhbnRlZXMgbm90IHRvIGNoYW5nZSB0aGUgcmVsYXRpdmUgb3JkZXIgb2YgZWxlbWVudHMgdGhhdFxuICAgY29tcGFyZSBlcXVhbCAtLS0gdGhpcyBpcyBoZWxwZnVsIGZvciBzb3J0aW5nIGluIG11bHRpcGxlIHBhc3Nlc1xuICAgKGZvciBleGFtcGxlLCBzb3J0IGJ5IGRlcGFydG1lbnQsIHRoZW4gYnkgc2FsYXJ5IGdyYWRlKS5cblxuICAgKipDUHl0aG9uIGltcGxlbWVudGF0aW9uIGRldGFpbDoqKiBXaGlsZSBhIGxpc3QgaXMgYmVpbmcgc29ydGVkLFxuICAgdGhlIGVmZmVjdCBvZiBhdHRlbXB0aW5nIHRvIG11dGF0ZSwgb3IgZXZlbiBpbnNwZWN0LCB0aGUgbGlzdCBpc1xuICAgdW5kZWZpbmVkLiAgVGhlIEMgaW1wbGVtZW50YXRpb24gb2YgUHl0aG9uIG1ha2VzIHRoZSBsaXN0IGFwcGVhclxuICAgZW1wdHkgZm9yIHRoZSBkdXJhdGlvbiwgYW5kIHJhaXNlcyBgYFZhbHVlRXJyb3JgYCBpZiBpdCBjYW4gZGV0ZWN0XG4gICB0aGF0IHRoZSBsaXN0IGhhcyBiZWVuIG11dGF0ZWQgZHVyaW5nIGEgc29ydC5cblxuOC4gYGBzb3J0KClgYCBpcyBub3Qgc3VwcG9ydGVkIGJ5IGBgYnl0ZWFycmF5YGAgb2JqZWN0cy5cbicsCisgJ3R5cGVzbW9kdWxlcyc6ICJcbk1vZHVsZXNcbioqKioqKipcblxuVGhlIG9ubHkgc3BlY2lhbCBvcGVyYXRpb24gb24gYSBtb2R1bGUgaXMgYXR0cmlidXRlIGFjY2VzczpcbmBgbS5uYW1lYGAsIHdoZXJlICptKiBpcyBhIG1vZHVsZSBhbmQgKm5hbWUqIGFjY2Vzc2VzIGEgbmFtZSBkZWZpbmVkXG5pbiAqbSoncyBzeW1ib2wgdGFibGUuIE1vZHVsZSBhdHRyaWJ1dGVzIGNhbiBiZSBhc3NpZ25lZCB0by4gIChOb3RlXG50aGF0IHRoZSBgYGltcG9ydGBgIHN0YXRlbWVudCBpcyBub3QsIHN0cmljdGx5IHNwZWFraW5nLCBhbiBvcGVyYXRpb25cbm9uIGEgbW9kdWxlIG9iamVjdDsgYGBpbXBvcnQgZm9vYGAgZG9lcyBub3QgcmVxdWlyZSBhIG1vZHVsZSBvYmplY3Rcbm5hbWVkICpmb28qIHRvIGV4aXN0LCByYXRoZXIgaXQgcmVxdWlyZXMgYW4gKGV4dGVybmFsKSAqZGVmaW5pdGlvbipcbmZvciBhIG1vZHVsZSBuYW1lZCAqZm9vKiBzb21ld2hlcmUuKVxuXG5BIHNwZWNpYWwgbWVtYmVyIG9mIGV2ZXJ5IG1vZHVsZSBpcyBgYF9fZGljdF9fYGAuIFRoaXMgaXMgdGhlXG5kaWN0aW9uYXJ5IGNvbnRhaW5pbmcgdGhlIG1vZHVsZSdzIHN5bWJvbCB0YWJsZS4gTW9kaWZ5aW5nIHRoaXNcbmRpY3Rpb25hcnkgd2lsbCBhY3R1YWxseSBjaGFuZ2UgdGhlIG1vZHVsZSdzIHN5bWJvbCB0YWJsZSwgYnV0IGRpcmVjdFxuYXNzaWdubWVudCB0byB0aGUgYGBfX2RpY3RfX2BgIGF0dHJpYnV0ZSBpcyBub3QgcG9zc2libGUgKHlvdSBjYW5cbndyaXRlIGBgbS5fX2RpY3RfX1snYSddID0gMWBgLCB3aGljaCBkZWZpbmVzIGBgbS5hYGAgdG8gYmUgYGAxYGAsIGJ1dFxueW91IGNhbid0IHdyaXRlIGBgbS5fX2RpY3RfXyA9IHt9YGApLiAgTW9kaWZ5aW5nIGBgX19kaWN0X19gYCBkaXJlY3RseVxuaXMgbm90IHJlY29tbWVuZGVkLlxuXG5Nb2R1bGVzIGJ1aWx0IGludG8gdGhlIGludGVycHJldGVyIGFyZSB3cml0dGVuIGxpa2UgdGhpczogYGA8bW9kdWxlXG4nc3lzJyAoYnVpbHQtaW4pPmBgLiAgSWYgbG9hZGVkIGZyb20gYSBmaWxlLCB0aGV5IGFyZSB3cml0dGVuIGFzXG5gYDxtb2R1bGUgJ29zJyBmcm9tICcvdXNyL2xvY2FsL2xpYi9weXRob25YLlkvb3MucHljJz5gYC5cbiIsCisgJ3R5cGVzc2VxJzogJ1xuU2VxdWVuY2UgVHlwZXMgLS0tIGBgc3RyYGAsIGBgYnl0ZXNgYCwgYGBieXRlYXJyYXlgYCwgYGBsaXN0YGAsIGBgdHVwbGVgYCwgYGByYW5nZWBgXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuVGhlcmUgYXJlIHNpeCBzZXF1ZW5jZSB0eXBlczogc3RyaW5ncywgYnl0ZSBzZXF1ZW5jZXMgKGBgYnl0ZXNgYFxub2JqZWN0cyksIGJ5dGUgYXJyYXlzIChgYGJ5dGVhcnJheWBgIG9iamVjdHMpLCBsaXN0cywgdHVwbGVzLCBhbmRcbnJhbmdlIG9iamVjdHMuICBGb3Igb3RoZXIgY29udGFpbmVycyBzZWUgdGhlIGJ1aWx0IGluIGBgZGljdGBgIGFuZFxuYGBzZXRgYCBjbGFzc2VzLCBhbmQgdGhlIGBgY29sbGVjdGlvbnNgYCBtb2R1bGUuXG5cblN0cmluZ3MgY29udGFpbiBVbmljb2RlIGNoYXJhY3RlcnMuICBUaGVpciBsaXRlcmFscyBhcmUgd3JpdHRlbiBpblxuc2luZ2xlIG9yIGRvdWJsZSBxdW90ZXM6IGBgXCd4eXp6eVwnYGAsIGBgImZyb2JvenoiYGAuICBTZWUgKlN0cmluZyBhbmRcbkJ5dGVzIGxpdGVyYWxzKiBmb3IgbW9yZSBhYm91dCBzdHJpbmcgbGl0ZXJhbHMuICBJbiBhZGRpdGlvbiB0byB0aGVcbmZ1bmN0aW9uYWxpdHkgZGVzY3JpYmVkIGhlcmUsIHRoZXJlIGFyZSBhbHNvIHN0cmluZy1zcGVjaWZpYyBtZXRob2RzXG5kZXNjcmliZWQgaW4gdGhlICpTdHJpbmcgTWV0aG9kcyogc2VjdGlvbi5cblxuQnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzIGNvbnRhaW4gc2luZ2xlIGJ5dGVzIC0tIHRoZSBmb3JtZXIgaXNcbmltbXV0YWJsZSB3aGlsZSB0aGUgbGF0dGVyIGlzIGEgbXV0YWJsZSBzZXF1ZW5jZS4gIEJ5dGVzIG9iamVjdHMgY2FuXG5iZSBjb25zdHJ1Y3RlZCB0aGUgY29uc3RydWN0b3IsIGBgYnl0ZXMoKWBgLCBhbmQgZnJvbSBsaXRlcmFsczsgdXNlIGFcbmBgYmBgIHByZWZpeCB3aXRoIG5vcm1hbCBzdHJpbmcgc3ludGF4OiBgYGJcJ3h5enp5XCdgYC4gIFRvIGNvbnN0cnVjdFxuYnl0ZSBhcnJheXMsIHVzZSB0aGUgYGBieXRlYXJyYXkoKWBgIGZ1bmN0aW9uLlxuXG5XaGlsZSBzdHJpbmcgb2JqZWN0cyBhcmUgc2VxdWVuY2VzIG9mIGNoYXJhY3RlcnMgKHJlcHJlc2VudGVkIGJ5XG5zdHJpbmdzIG9mIGxlbmd0aCAxKSwgYnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzIGFyZSBzZXF1ZW5jZXMgb2ZcbippbnRlZ2VycyogKGJldHdlZW4gMCBhbmQgMjU1KSwgcmVwcmVzZW50aW5nIHRoZSBBU0NJSSB2YWx1ZSBvZiBzaW5nbGVcbmJ5dGVzLiAgVGhhdCBtZWFucyB0aGF0IGZvciBhIGJ5dGVzIG9yIGJ5dGVhcnJheSBvYmplY3QgKmIqLCBgYGJbMF1gYFxud2lsbCBiZSBhbiBpbnRlZ2VyLCB3aGlsZSBgYGJbMDoxXWBgIHdpbGwgYmUgYSBieXRlcyBvciBieXRlYXJyYXlcbm9iamVjdCBvZiBsZW5ndGggMS4gIFRoZSByZXByZXNlbnRhdGlvbiBvZiBieXRlcyBvYmplY3RzIHVzZXMgdGhlXG5saXRlcmFsIGZvcm1hdCAoYGBiXCcuLi5cJ2BgKSBzaW5jZSBpdCBpcyBnZW5lcmFsbHkgbW9yZSB1c2VmdWwgdGhhblxuZS5nLiBgYGJ5dGVzKFs1MCwgMTksIDEwMF0pYGAuICBZb3UgY2FuIGFsd2F5cyBjb252ZXJ0IGEgYnl0ZXMgb2JqZWN0XG5pbnRvIGEgbGlzdCBvZiBpbnRlZ2VycyB1c2luZyBgYGxpc3QoYilgYC5cblxuQWxzbywgd2hpbGUgaW4gcHJldmlvdXMgUHl0aG9uIHZlcnNpb25zLCBieXRlIHN0cmluZ3MgYW5kIFVuaWNvZGVcbnN0cmluZ3MgY291bGQgYmUgZXhjaGFuZ2VkIGZvciBlYWNoIG90aGVyIHJhdGhlciBmcmVlbHkgKGJhcnJpbmdcbmVuY29kaW5nIGlzc3VlcyksIHN0cmluZ3MgYW5kIGJ5dGVzIGFyZSBub3cgY29tcGxldGVseSBzZXBhcmF0ZVxuY29uY2VwdHMuICBUaGVyZVwncyBubyBpbXBsaWNpdCBlbi0vZGVjb2RpbmcgaWYgeW91IHBhc3MgYW4gb2JqZWN0IG9mXG50aGUgd3JvbmcgdHlwZS4gIEEgc3RyaW5nIGFsd2F5cyBjb21wYXJlcyB1bmVxdWFsIHRvIGEgYnl0ZXMgb3JcbmJ5dGVhcnJheSBvYmplY3QuXG5cbkxpc3RzIGFyZSBjb25zdHJ1Y3RlZCB3aXRoIHNxdWFyZSBicmFja2V0cywgc2VwYXJhdGluZyBpdGVtcyB3aXRoXG5jb21tYXM6IGBgW2EsIGIsIGNdYGAuICBUdXBsZXMgYXJlIGNvbnN0cnVjdGVkIGJ5IHRoZSBjb21tYSBvcGVyYXRvclxuKG5vdCB3aXRoaW4gc3F1YXJlIGJyYWNrZXRzKSwgd2l0aCBvciB3aXRob3V0IGVuY2xvc2luZyBwYXJlbnRoZXNlcyxcbmJ1dCBhbiBlbXB0eSB0dXBsZSBtdXN0IGhhdmUgdGhlIGVuY2xvc2luZyBwYXJlbnRoZXNlcywgc3VjaCBhcyBgYGEsXG5iLCBjYGAgb3IgYGAoKWBgLiAgQSBzaW5nbGUgaXRlbSB0dXBsZSBtdXN0IGhhdmUgYSB0cmFpbGluZyBjb21tYSxcbnN1Y2ggYXMgYGAoZCwpYGAuXG5cbk9iamVjdHMgb2YgdHlwZSByYW5nZSBhcmUgY3JlYXRlZCB1c2luZyB0aGUgYGByYW5nZSgpYGAgZnVuY3Rpb24uXG5UaGV5IGRvblwndCBzdXBwb3J0IGNvbmNhdGVuYXRpb24gb3IgcmVwZXRpdGlvbiwgYW5kIHVzaW5nIGBgbWluKClgYCBvclxuYGBtYXgoKWBgIG9uIHRoZW0gaXMgaW5lZmZpY2llbnQuXG5cbk1vc3Qgc2VxdWVuY2UgdHlwZXMgc3VwcG9ydCB0aGUgZm9sbG93aW5nIG9wZXJhdGlvbnMuICBUaGUgYGBpbmBgIGFuZFxuYGBub3QgaW5gYCBvcGVyYXRpb25zIGhhdmUgdGhlIHNhbWUgcHJpb3JpdGllcyBhcyB0aGUgY29tcGFyaXNvblxub3BlcmF0aW9ucy4gIFRoZSBgYCtgYCBhbmQgYGAqYGAgb3BlcmF0aW9ucyBoYXZlIHRoZSBzYW1lIHByaW9yaXR5IGFzXG50aGUgY29ycmVzcG9uZGluZyBudW1lcmljIG9wZXJhdGlvbnMuIFszXSBBZGRpdGlvbmFsIG1ldGhvZHMgYXJlXG5wcm92aWRlZCBmb3IgKk11dGFibGUgU2VxdWVuY2UgVHlwZXMqLlxuXG5UaGlzIHRhYmxlIGxpc3RzIHRoZSBzZXF1ZW5jZSBvcGVyYXRpb25zIHNvcnRlZCBpbiBhc2NlbmRpbmcgcHJpb3JpdHlcbihvcGVyYXRpb25zIGluIHRoZSBzYW1lIGJveCBoYXZlIHRoZSBzYW1lIHByaW9yaXR5KS4gIEluIHRoZSB0YWJsZSxcbipzKiBhbmQgKnQqIGFyZSBzZXF1ZW5jZXMgb2YgdGhlIHNhbWUgdHlwZTsgKm4qLCAqaSosICpqKiBhbmQgKmsqIGFyZVxuaW50ZWdlcnMuXG5cbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgT3BlcmF0aW9uICAgICAgICAgIHwgUmVzdWx0ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyAgICAgIHxcbis9PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PStcbnwgYGB4IGluIHNgYCAgICAgICAgIHwgYGBUcnVlYGAgaWYgYW4gaXRlbSBvZiAqcyogaXMgICAgfCAoMSkgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgIHwgZXF1YWwgdG8gKngqLCBlbHNlIGBgRmFsc2VgYCAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGB4IG5vdCBpbiBzYGAgICAgIHwgYGBGYWxzZWBgIGlmIGFuIGl0ZW0gb2YgKnMqIGlzICAgfCAoMSkgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgIHwgZXF1YWwgdG8gKngqLCBlbHNlIGBgVHJ1ZWBgICAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBzICsgdGBgICAgICAgICAgIHwgdGhlIGNvbmNhdGVuYXRpb24gb2YgKnMqIGFuZCAqdCogfCAoNikgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBzICogbiwgbiAqIHNgYCAgIHwgKm4qIHNoYWxsb3cgY29waWVzIG9mICpzKiAgICAgICAgfCAoMikgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgIHwgY29uY2F0ZW5hdGVkICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLStcbnwgYGBzW2ldYGAgICAgICAgICAgIHwgKmkqXCd0aCBpdGVtIG9mICpzKiwgb3JpZ2luIDAgICAgIHwgKDMpICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgc1tpOmpdYGAgICAgICAgICB8IHNsaWNlIG9mICpzKiBmcm9tICppKiB0byAqaiogICAgIHwgKDMpKDQpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgc1tpOmo6a11gYCAgICAgICB8IHNsaWNlIG9mICpzKiBmcm9tICppKiB0byAqaiogICAgIHwgKDMpKDUpICAgICB8XG58ICAgICAgICAgICAgICAgICAgICB8IHdpdGggc3RlcCAqayogICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgbGVuKHMpYGAgICAgICAgICB8IGxlbmd0aCBvZiAqcyogICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgbWluKHMpYGAgICAgICAgICB8IHNtYWxsZXN0IGl0ZW0gb2YgKnMqICAgICAgICAgICAgIHwgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgbWF4KHMpYGAgICAgICAgICB8IGxhcmdlc3QgaXRlbSBvZiAqcyogICAgICAgICAgICAgIHwgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgcy5pbmRleChpKWBgICAgICB8IGluZGV4IG9mIHRoZSBmaXJzdCBvY2N1cmVuY2Ugb2YgIHwgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICB8ICppKiBpbiAqcyogICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG58IGBgcy5jb3VudChpKWBgICAgICB8IHRvdGFsIG51bWJlciBvZiBvY2N1cmVuY2VzIG9mICAgIHwgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICB8ICppKiBpbiAqcyogICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rXG5cblNlcXVlbmNlIHR5cGVzIGFsc28gc3VwcG9ydCBjb21wYXJpc29ucy4gIEluIHBhcnRpY3VsYXIsIHR1cGxlcyBhbmRcbmxpc3RzIGFyZSBjb21wYXJlZCBsZXhpY29ncmFwaGljYWxseSBieSBjb21wYXJpbmcgY29ycmVzcG9uZGluZ1xuZWxlbWVudHMuICBUaGlzIG1lYW5zIHRoYXQgdG8gY29tcGFyZSBlcXVhbCwgZXZlcnkgZWxlbWVudCBtdXN0XG5jb21wYXJlIGVxdWFsIGFuZCB0aGUgdHdvIHNlcXVlbmNlcyBtdXN0IGJlIG9mIHRoZSBzYW1lIHR5cGUgYW5kIGhhdmVcbnRoZSBzYW1lIGxlbmd0aC4gIChGb3IgZnVsbCBkZXRhaWxzIHNlZSAqQ29tcGFyaXNvbnMqIGluIHRoZSBsYW5ndWFnZVxucmVmZXJlbmNlLilcblxuTm90ZXM6XG5cbjEuIFdoZW4gKnMqIGlzIGEgc3RyaW5nIG9iamVjdCwgdGhlIGBgaW5gYCBhbmQgYGBub3QgaW5gYCBvcGVyYXRpb25zXG4gICBhY3QgbGlrZSBhIHN1YnN0cmluZyB0ZXN0LlxuXG4yLiBWYWx1ZXMgb2YgKm4qIGxlc3MgdGhhbiBgYDBgYCBhcmUgdHJlYXRlZCBhcyBgYDBgYCAod2hpY2ggeWllbGRzIGFuXG4gICBlbXB0eSBzZXF1ZW5jZSBvZiB0aGUgc2FtZSB0eXBlIGFzICpzKikuICBOb3RlIGFsc28gdGhhdCB0aGUgY29waWVzXG4gICBhcmUgc2hhbGxvdzsgbmVzdGVkIHN0cnVjdHVyZXMgYXJlIG5vdCBjb3BpZWQuICBUaGlzIG9mdGVuIGhhdW50c1xuICAgbmV3IFB5dGhvbiBwcm9ncmFtbWVyczsgY29uc2lkZXI6XG5cbiAgID4+PiBsaXN0cyA9IFtbXV0gKiAzXG4gICA+Pj4gbGlzdHNcbiAgIFtbXSwgW10sIFtdXVxuICAgPj4+IGxpc3RzWzBdLmFwcGVuZCgzKVxuICAgPj4+IGxpc3RzXG4gICBbWzNdLCBbM10sIFszXV1cblxuICAgV2hhdCBoYXMgaGFwcGVuZWQgaXMgdGhhdCBgYFtbXV1gYCBpcyBhIG9uZS1lbGVtZW50IGxpc3QgY29udGFpbmluZ1xuICAgYW4gZW1wdHkgbGlzdCwgc28gYWxsIHRocmVlIGVsZW1lbnRzIG9mIGBgW1tdXSAqIDNgYCBhcmUgKHBvaW50ZXJzXG4gICB0bykgdGhpcyBzaW5nbGUgZW1wdHkgbGlzdC4gIE1vZGlmeWluZyBhbnkgb2YgdGhlIGVsZW1lbnRzIG9mXG4gICBgYGxpc3RzYGAgbW9kaWZpZXMgdGhpcyBzaW5nbGUgbGlzdC4gWW91IGNhbiBjcmVhdGUgYSBsaXN0IG9mXG4gICBkaWZmZXJlbnQgbGlzdHMgdGhpcyB3YXk6XG5cbiAgID4+PiBsaXN0cyA9IFtbXSBmb3IgaSBpbiByYW5nZSgzKV1cbiAgID4+PiBsaXN0c1swXS5hcHBlbmQoMylcbiAgID4+PiBsaXN0c1sxXS5hcHBlbmQoNSlcbiAgID4+PiBsaXN0c1syXS5hcHBlbmQoNylcbiAgID4+PiBsaXN0c1xuICAgW1szXSwgWzVdLCBbN11dXG5cbjMuIElmICppKiBvciAqaiogaXMgbmVnYXRpdmUsIHRoZSBpbmRleCBpcyByZWxhdGl2ZSB0byB0aGUgZW5kIG9mIHRoZVxuICAgc3RyaW5nOiBgYGxlbihzKSArIGlgYCBvciBgYGxlbihzKSArIGpgYCBpcyBzdWJzdGl0dXRlZC4gIEJ1dCBub3RlXG4gICB0aGF0IGBgLTBgYCBpcyBzdGlsbCBgYDBgYC5cblxuNC4gVGhlIHNsaWNlIG9mICpzKiBmcm9tICppKiB0byAqaiogaXMgZGVmaW5lZCBhcyB0aGUgc2VxdWVuY2Ugb2ZcbiAgIGl0ZW1zIHdpdGggaW5kZXggKmsqIHN1Y2ggdGhhdCBgYGkgPD0gayA8IGpgYC4gIElmICppKiBvciAqaiogaXNcbiAgIGdyZWF0ZXIgdGhhbiBgYGxlbihzKWBgLCB1c2UgYGBsZW4ocylgYC4gIElmICppKiBpcyBvbWl0dGVkIG9yXG4gICBgYE5vbmVgYCwgdXNlIGBgMGBgLiAgSWYgKmoqIGlzIG9taXR0ZWQgb3IgYGBOb25lYGAsIHVzZVxuICAgYGBsZW4ocylgYC4gIElmICppKiBpcyBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gKmoqLCB0aGUgc2xpY2UgaXNcbiAgIGVtcHR5LlxuXG41LiBUaGUgc2xpY2Ugb2YgKnMqIGZyb20gKmkqIHRvICpqKiB3aXRoIHN0ZXAgKmsqIGlzIGRlZmluZWQgYXMgdGhlXG4gICBzZXF1ZW5jZSBvZiBpdGVtcyB3aXRoIGluZGV4ICBgYHggPSBpICsgbiprYGAgc3VjaCB0aGF0IGBgMCA8PSBuIDxcbiAgIChqLWkpL2tgYC4gIEluIG90aGVyIHdvcmRzLCB0aGUgaW5kaWNlcyBhcmUgYGBpYGAsIGBgaStrYGAsXG4gICBgYGkrMiprYGAsIGBgaSszKmtgYCBhbmQgc28gb24sIHN0b3BwaW5nIHdoZW4gKmoqIGlzIHJlYWNoZWQgKGJ1dFxuICAgbmV2ZXIgaW5jbHVkaW5nICpqKikuICBJZiAqaSogb3IgKmoqIGlzIGdyZWF0ZXIgdGhhbiBgYGxlbihzKWBgLFxuICAgdXNlIGBgbGVuKHMpYGAuICBJZiAqaSogb3IgKmoqIGFyZSBvbWl0dGVkIG9yIGBgTm9uZWBgLCB0aGV5IGJlY29tZVxuICAgImVuZCIgdmFsdWVzICh3aGljaCBlbmQgZGVwZW5kcyBvbiB0aGUgc2lnbiBvZiAqayopLiAgTm90ZSwgKmsqXG4gICBjYW5ub3QgYmUgemVyby4gSWYgKmsqIGlzIGBgTm9uZWBgLCBpdCBpcyB0cmVhdGVkIGxpa2UgYGAxYGAuXG5cbjYuICoqQ1B5dGhvbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWw6KiogSWYgKnMqIGFuZCAqdCogYXJlIGJvdGggc3RyaW5ncyxcbiAgIHNvbWUgUHl0aG9uIGltcGxlbWVudGF0aW9ucyBzdWNoIGFzIENQeXRob24gY2FuIHVzdWFsbHkgcGVyZm9ybSBhblxuICAgaW4tcGxhY2Ugb3B0aW1pemF0aW9uIGZvciBhc3NpZ25tZW50cyBvZiB0aGUgZm9ybSBgYHMgPSBzICsgdGBgIG9yXG4gICBgYHMgKz0gdGBgLiAgV2hlbiBhcHBsaWNhYmxlLCB0aGlzIG9wdGltaXphdGlvbiBtYWtlcyBxdWFkcmF0aWNcbiAgIHJ1bi10aW1lIG11Y2ggbGVzcyBsaWtlbHkuICBUaGlzIG9wdGltaXphdGlvbiBpcyBib3RoIHZlcnNpb24gYW5kXG4gICBpbXBsZW1lbnRhdGlvbiBkZXBlbmRlbnQuICBGb3IgcGVyZm9ybWFuY2Ugc2Vuc2l0aXZlIGNvZGUsIGl0IGlzXG4gICBwcmVmZXJhYmxlIHRvIHVzZSB0aGUgYGBzdHIuam9pbigpYGAgbWV0aG9kIHdoaWNoIGFzc3VyZXNcbiAgIGNvbnNpc3RlbnQgbGluZWFyIGNvbmNhdGVuYXRpb24gcGVyZm9ybWFuY2UgYWNyb3NzIHZlcnNpb25zIGFuZFxuICAgaW1wbGVtZW50YXRpb25zLlxuXG5cblN0cmluZyBNZXRob2RzXG49PT09PT09PT09PT09PVxuXG5TdHJpbmcgb2JqZWN0cyBzdXBwb3J0IHRoZSBtZXRob2RzIGxpc3RlZCBiZWxvdy5cblxuSW4gYWRkaXRpb24sIFB5dGhvblwncyBzdHJpbmdzIHN1cHBvcnQgdGhlIHNlcXVlbmNlIHR5cGUgbWV0aG9kc1xuZGVzY3JpYmVkIGluIHRoZSAqU2VxdWVuY2UgVHlwZXMgLS0tIHN0ciwgYnl0ZXMsIGJ5dGVhcnJheSwgbGlzdCxcbnR1cGxlLCByYW5nZSogc2VjdGlvbi4gVG8gb3V0cHV0IGZvcm1hdHRlZCBzdHJpbmdzLCBzZWUgdGhlICpTdHJpbmdcbkZvcm1hdHRpbmcqIHNlY3Rpb24uIEFsc28sIHNlZSB0aGUgYGByZWBgIG1vZHVsZSBmb3Igc3RyaW5nIGZ1bmN0aW9uc1xuYmFzZWQgb24gcmVndWxhciBleHByZXNzaW9ucy5cblxuc3RyLmNhcGl0YWxpemUoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCBpdHMgZmlyc3QgY2hhcmFjdGVyIGNhcGl0YWxpemVkXG4gICBhbmQgdGhlIHJlc3QgbG93ZXJjYXNlZC5cblxuc3RyLmNlbnRlcih3aWR0aFssIGZpbGxjaGFyXSlcblxuICAgUmV0dXJuIGNlbnRlcmVkIGluIGEgc3RyaW5nIG9mIGxlbmd0aCAqd2lkdGgqLiBQYWRkaW5nIGlzIGRvbmVcbiAgIHVzaW5nIHRoZSBzcGVjaWZpZWQgKmZpbGxjaGFyKiAoZGVmYXVsdCBpcyBhIHNwYWNlKS5cblxuc3RyLmNvdW50KHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIFJldHVybiB0aGUgbnVtYmVyIG9mIG5vbi1vdmVybGFwcGluZyBvY2N1cnJlbmNlcyBvZiBzdWJzdHJpbmcgKnN1YipcbiAgIGluIHRoZSByYW5nZSBbKnN0YXJ0KiwgKmVuZCpdLiAgT3B0aW9uYWwgYXJndW1lbnRzICpzdGFydCogYW5kXG4gICAqZW5kKiBhcmUgaW50ZXJwcmV0ZWQgYXMgaW4gc2xpY2Ugbm90YXRpb24uXG5cbnN0ci5lbmNvZGUoZW5jb2Rpbmc9InV0Zi04IiwgZXJyb3JzPSJzdHJpY3QiKVxuXG4gICBSZXR1cm4gYW4gZW5jb2RlZCB2ZXJzaW9uIG9mIHRoZSBzdHJpbmcgYXMgYSBieXRlcyBvYmplY3QuIERlZmF1bHRcbiAgIGVuY29kaW5nIGlzIGBgXCd1dGYtOFwnYGAuICplcnJvcnMqIG1heSBiZSBnaXZlbiB0byBzZXQgYSBkaWZmZXJlbnRcbiAgIGVycm9yIGhhbmRsaW5nIHNjaGVtZS4gVGhlIGRlZmF1bHQgZm9yICplcnJvcnMqIGlzIGBgXCdzdHJpY3RcJ2BgLFxuICAgbWVhbmluZyB0aGF0IGVuY29kaW5nIGVycm9ycyByYWlzZSBhIGBgVW5pY29kZUVycm9yYGAuIE90aGVyXG4gICBwb3NzaWJsZSB2YWx1ZXMgYXJlIGBgXCdpZ25vcmVcJ2BgLCBgYFwncmVwbGFjZVwnYGAsXG4gICBgYFwneG1sY2hhcnJlZnJlcGxhY2VcJ2BgLCBgYFwnYmFja3NsYXNocmVwbGFjZVwnYGAgYW5kIGFueSBvdGhlciBuYW1lXG4gICByZWdpc3RlcmVkIHZpYSBgYGNvZGVjcy5yZWdpc3Rlcl9lcnJvcigpYGAsIHNlZSBzZWN0aW9uICpDb2RlYyBCYXNlXG4gICBDbGFzc2VzKi4gRm9yIGEgbGlzdCBvZiBwb3NzaWJsZSBlbmNvZGluZ3MsIHNlZSBzZWN0aW9uICpTdGFuZGFyZFxuICAgRW5jb2RpbmdzKi5cblxuICAgQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogU3VwcG9ydCBmb3Iga2V5d29yZCBhcmd1bWVudHMgYWRkZWQuXG5cbnN0ci5lbmRzd2l0aChzdWZmaXhbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gYGBUcnVlYGAgaWYgdGhlIHN0cmluZyBlbmRzIHdpdGggdGhlIHNwZWNpZmllZCAqc3VmZml4KixcbiAgIG90aGVyd2lzZSByZXR1cm4gYGBGYWxzZWBgLiAgKnN1ZmZpeCogY2FuIGFsc28gYmUgYSB0dXBsZSBvZlxuICAgc3VmZml4ZXMgdG8gbG9vayBmb3IuICBXaXRoIG9wdGlvbmFsICpzdGFydCosIHRlc3QgYmVnaW5uaW5nIGF0XG4gICB0aGF0IHBvc2l0aW9uLiAgV2l0aCBvcHRpb25hbCAqZW5kKiwgc3RvcCBjb21wYXJpbmcgYXQgdGhhdFxuICAgcG9zaXRpb24uXG5cbnN0ci5leHBhbmR0YWJzKFt0YWJzaXplXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdoZXJlIGFsbCB0YWIgY2hhcmFjdGVycyBhcmUgcmVwbGFjZWRcbiAgIGJ5IG9uZSBvciBtb3JlIHNwYWNlcywgZGVwZW5kaW5nIG9uIHRoZSBjdXJyZW50IGNvbHVtbiBhbmQgdGhlXG4gICBnaXZlbiB0YWIgc2l6ZS4gIFRoZSBjb2x1bW4gbnVtYmVyIGlzIHJlc2V0IHRvIHplcm8gYWZ0ZXIgZWFjaFxuICAgbmV3bGluZSBvY2N1cnJpbmcgaW4gdGhlIHN0cmluZy4gSWYgKnRhYnNpemUqIGlzIG5vdCBnaXZlbiwgYSB0YWJcbiAgIHNpemUgb2YgYGA4YGAgY2hhcmFjdGVycyBpcyBhc3N1bWVkLiAgVGhpcyBkb2VzblwndCB1bmRlcnN0YW5kIG90aGVyXG4gICBub24tcHJpbnRpbmcgY2hhcmFjdGVycyBvciBlc2NhcGUgc2VxdWVuY2VzLlxuXG5zdHIuZmluZChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gdGhlIGxvd2VzdCBpbmRleCBpbiB0aGUgc3RyaW5nIHdoZXJlIHN1YnN0cmluZyAqc3ViKiBpc1xuICAgZm91bmQsIHN1Y2ggdGhhdCAqc3ViKiBpcyBjb250YWluZWQgaW4gdGhlIHNsaWNlIGBgc1tzdGFydDplbmRdYGAuXG4gICBPcHRpb25hbCBhcmd1bWVudHMgKnN0YXJ0KiBhbmQgKmVuZCogYXJlIGludGVycHJldGVkIGFzIGluIHNsaWNlXG4gICBub3RhdGlvbi4gIFJldHVybiBgYC0xYGAgaWYgKnN1YiogaXMgbm90IGZvdW5kLlxuXG5zdHIuZm9ybWF0KCphcmdzLCAqKmt3YXJncylcblxuICAgUGVyZm9ybSBhIHN0cmluZyBmb3JtYXR0aW5nIG9wZXJhdGlvbi4gIFRoZSBzdHJpbmcgb24gd2hpY2ggdGhpc1xuICAgbWV0aG9kIGlzIGNhbGxlZCBjYW4gY29udGFpbiBsaXRlcmFsIHRleHQgb3IgcmVwbGFjZW1lbnQgZmllbGRzXG4gICBkZWxpbWl0ZWQgYnkgYnJhY2VzIGBge31gYC4gIEVhY2ggcmVwbGFjZW1lbnQgZmllbGQgY29udGFpbnMgZWl0aGVyXG4gICB0aGUgbnVtZXJpYyBpbmRleCBvZiBhIHBvc2l0aW9uYWwgYXJndW1lbnQsIG9yIHRoZSBuYW1lIG9mIGFcbiAgIGtleXdvcmQgYXJndW1lbnQuICBSZXR1cm5zIGEgY29weSBvZiB0aGUgc3RyaW5nIHdoZXJlIGVhY2hcbiAgIHJlcGxhY2VtZW50IGZpZWxkIGlzIHJlcGxhY2VkIHdpdGggdGhlIHN0cmluZyB2YWx1ZSBvZiB0aGVcbiAgIGNvcnJlc3BvbmRpbmcgYXJndW1lbnQuXG5cbiAgID4+PiAiVGhlIHN1bSBvZiAxICsgMiBpcyB7MH0iLmZvcm1hdCgxKzIpXG4gICBcJ1RoZSBzdW0gb2YgMSArIDIgaXMgM1wnXG5cbiAgIFNlZSAqRm9ybWF0IFN0cmluZyBTeW50YXgqIGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZSB2YXJpb3VzXG4gICBmb3JtYXR0aW5nIG9wdGlvbnMgdGhhdCBjYW4gYmUgc3BlY2lmaWVkIGluIGZvcm1hdCBzdHJpbmdzLlxuXG5zdHIuZm9ybWF0X21hcChtYXBwaW5nKVxuXG4gICBTaW1pbGFyIHRvIGBgc3RyLmZvcm1hdCgqKm1hcHBpbmcpYGAsIGV4Y2VwdCB0aGF0IGBgbWFwcGluZ2BgIGlzXG4gICB1c2VkIGRpcmVjdGx5IGFuZCBub3QgY29waWVkIHRvIGEgYGBkaWN0YGAgLiAgVGhpcyBpcyB1c2VmdWwgaWYgZm9yXG4gICBleGFtcGxlIGBgbWFwcGluZ2BgIGlzIGEgZGljdCBzdWJjbGFzczpcblxuICAgPj4+IGNsYXNzIERlZmF1bHQoZGljdCk6XG4gICAuLi4gICAgIGRlZiBfX21pc3NpbmdfXyhzZWxmLCBrZXkpOlxuICAgLi4uICAgICAgICAgcmV0dXJuIGtleVxuICAgLi4uXG4gICA+Pj4gXCd7bmFtZX0gd2FzIGJvcm4gaW4ge2NvdW50cnl9XCcuZm9ybWF0X21hcChEZWZhdWx0KG5hbWU9XCdHdWlkb1wnKSlcbiAgIFwnR3VpZG8gd2FzIGJvcm4gaW4gY291bnRyeVwnXG5cbiAgIE5ldyBpbiB2ZXJzaW9uIDMuMi5cblxuc3RyLmluZGV4KHN1YlssIHN0YXJ0WywgZW5kXV0pXG5cbiAgIExpa2UgYGBmaW5kKClgYCwgYnV0IHJhaXNlIGBgVmFsdWVFcnJvcmBgIHdoZW4gdGhlIHN1YnN0cmluZyBpcyBub3RcbiAgIGZvdW5kLlxuXG5zdHIuaXNhbG51bSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGFscGhhbnVtZXJpYyBhbmRcbiAgIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIEEgY2hhcmFjdGVyXG4gICBgYGNgYCBpcyBhbHBoYW51bWVyaWMgaWYgb25lIG9mIHRoZSBmb2xsb3dpbmcgcmV0dXJucyBgYFRydWVgYDpcbiAgIGBgYy5pc2FscGhhKClgYCwgYGBjLmlzZGVjaW1hbCgpYGAsIGBgYy5pc2RpZ2l0KClgYCwgb3JcbiAgIGBgYy5pc251bWVyaWMoKWBgLlxuXG5zdHIuaXNhbHBoYSgpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGFscGhhYmV0aWMgYW5kXG4gICB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuICBBbHBoYWJldGljXG4gICBjaGFyYWN0ZXJzIGFyZSB0aG9zZSBjaGFyYWN0ZXJzIGRlZmluZWQgaW4gdGhlIFVuaWNvZGUgY2hhcmFjdGVyXG4gICBkYXRhYmFzZSBhcyAiTGV0dGVyIiwgaS5lLiwgdGhvc2Ugd2l0aCBnZW5lcmFsIGNhdGVnb3J5IHByb3BlcnR5XG4gICBiZWluZyBvbmUgb2YgIkxtIiwgIkx0IiwgIkx1IiwgIkxsIiwgb3IgIkxvIi4gIE5vdGUgdGhhdCB0aGlzIGlzXG4gICBkaWZmZXJlbnQgZnJvbSB0aGUgIkFscGhhYmV0aWMiIHByb3BlcnR5IGRlZmluZWQgaW4gdGhlIFVuaWNvZGVcbiAgIFN0YW5kYXJkLlxuXG5zdHIuaXNkZWNpbWFsKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgZGVjaW1hbCBjaGFyYWN0ZXJzXG4gICBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiBEZWNpbWFsXG4gICBjaGFyYWN0ZXJzIGFyZSB0aG9zZSBmcm9tIGdlbmVyYWwgY2F0ZWdvcnkgIk5kIi4gVGhpcyBjYXRlZ29yeVxuICAgaW5jbHVkZXMgZGlnaXQgY2hhcmFjdGVycywgYW5kIGFsbCBjaGFyYWN0ZXJzIHRoYXQgdGhhdCBjYW4gYmUgdXNlZFxuICAgdG8gZm9ybSBkZWNpbWFsLXJhZGl4IG51bWJlcnMsIGUuZy4gVSswNjYwLCBBUkFCSUMtSU5ESUMgRElHSVRcbiAgIFpFUk8uXG5cbnN0ci5pc2RpZ2l0KClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgZGlnaXRzIGFuZCB0aGVyZSBpc1xuICAgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciwgZmFsc2Ugb3RoZXJ3aXNlLiAgRGlnaXRzIGluY2x1ZGUgZGVjaW1hbFxuICAgY2hhcmFjdGVycyBhbmQgZGlnaXRzIHRoYXQgbmVlZCBzcGVjaWFsIGhhbmRsaW5nLCBzdWNoIGFzIHRoZVxuICAgY29tcGF0aWJpbGl0eSBzdXBlcnNjcmlwdCBkaWdpdHMuICBGb3JtYWxseSwgYSBkaWdpdCBpcyBhIGNoYXJhY3RlclxuICAgdGhhdCBoYXMgdGhlIHByb3BlcnR5IHZhbHVlIE51bWVyaWNfVHlwZT1EaWdpdCBvclxuICAgTnVtZXJpY19UeXBlPURlY2ltYWwuXG5cbnN0ci5pc2lkZW50aWZpZXIoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiB0aGUgc3RyaW5nIGlzIGEgdmFsaWQgaWRlbnRpZmllciBhY2NvcmRpbmcgdG8gdGhlXG4gICBsYW5ndWFnZSBkZWZpbml0aW9uLCBzZWN0aW9uICpJZGVudGlmaWVycyBhbmQga2V5d29yZHMqLlxuXG5zdHIuaXNsb3dlcigpXG5cbiAgIFJldHVybiB0cnVlIGlmIGFsbCBjYXNlZCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJpbmcgYXJlIGxvd2VyY2FzZSBhbmRcbiAgIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjYXNlZCBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIENhc2VkXG4gICBjaGFyYWN0ZXJzIGFyZSB0aG9zZSB3aXRoIGdlbmVyYWwgY2F0ZWdvcnkgcHJvcGVydHkgYmVpbmcgb25lIG9mXG4gICAiTHUiLCAiTGwiLCBvciAiTHQiIGFuZCBsb3dlcmNhc2UgY2hhcmFjdGVycyBhcmUgdGhvc2Ugd2l0aCBnZW5lcmFsXG4gICBjYXRlZ29yeSBwcm9wZXJ0eSAiTGwiLlxuXG5zdHIuaXNudW1lcmljKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgbnVtZXJpYyBjaGFyYWN0ZXJzLFxuICAgYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gTnVtZXJpY1xuICAgY2hhcmFjdGVycyBpbmNsdWRlIGRpZ2l0IGNoYXJhY3RlcnMsIGFuZCBhbGwgY2hhcmFjdGVycyB0aGF0IGhhdmVcbiAgIHRoZSBVbmljb2RlIG51bWVyaWMgdmFsdWUgcHJvcGVydHksIGUuZy4gVSsyMTU1LCBWVUxHQVIgRlJBQ1RJT05cbiAgIE9ORSBGSUZUSC4gIEZvcm1hbGx5LCBudW1lcmljIGNoYXJhY3RlcnMgYXJlIHRob3NlIHdpdGggdGhlXG4gICBwcm9wZXJ0eSB2YWx1ZSBOdW1lcmljX1R5cGU9RGlnaXQsIE51bWVyaWNfVHlwZT1EZWNpbWFsIG9yXG4gICBOdW1lcmljX1R5cGU9TnVtZXJpYy5cblxuc3RyLmlzcHJpbnRhYmxlKClcblxuICAgUmV0dXJuIHRydWUgaWYgYWxsIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZyBhcmUgcHJpbnRhYmxlIG9yIHRoZVxuICAgc3RyaW5nIGlzIGVtcHR5LCBmYWxzZSBvdGhlcndpc2UuICBOb25wcmludGFibGUgY2hhcmFjdGVycyBhcmVcbiAgIHRob3NlIGNoYXJhY3RlcnMgZGVmaW5lZCBpbiB0aGUgVW5pY29kZSBjaGFyYWN0ZXIgZGF0YWJhc2UgYXNcbiAgICJPdGhlciIgb3IgIlNlcGFyYXRvciIsIGV4Y2VwdGluZyB0aGUgQVNDSUkgc3BhY2UgKDB4MjApIHdoaWNoIGlzXG4gICBjb25zaWRlcmVkIHByaW50YWJsZS4gIChOb3RlIHRoYXQgcHJpbnRhYmxlIGNoYXJhY3RlcnMgaW4gdGhpc1xuICAgY29udGV4dCBhcmUgdGhvc2Ugd2hpY2ggc2hvdWxkIG5vdCBiZSBlc2NhcGVkIHdoZW4gYGByZXByKClgYCBpc1xuICAgaW52b2tlZCBvbiBhIHN0cmluZy4gIEl0IGhhcyBubyBiZWFyaW5nIG9uIHRoZSBoYW5kbGluZyBvZiBzdHJpbmdzXG4gICB3cml0dGVuIHRvIGBgc3lzLnN0ZG91dGBgIG9yIGBgc3lzLnN0ZGVycmBgLilcblxuc3RyLmlzc3BhY2UoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiB0aGVyZSBhcmUgb25seSB3aGl0ZXNwYWNlIGNoYXJhY3RlcnMgaW4gdGhlIHN0cmluZ1xuICAgYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIsIGZhbHNlIG90aGVyd2lzZS4gIFdoaXRlc3BhY2VcbiAgIGNoYXJhY3RlcnMgIGFyZSB0aG9zZSBjaGFyYWN0ZXJzIGRlZmluZWQgaW4gdGhlIFVuaWNvZGUgY2hhcmFjdGVyXG4gICBkYXRhYmFzZSBhcyAiT3RoZXIiIG9yICJTZXBhcmF0b3IiIGFuZCB0aG9zZSB3aXRoIGJpZGlyZWN0aW9uYWxcbiAgIHByb3BlcnR5IGJlaW5nIG9uZSBvZiAiV1MiLCAiQiIsIG9yICJTIi5cblxuc3RyLmlzdGl0bGUoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiB0aGUgc3RyaW5nIGlzIGEgdGl0bGVjYXNlZCBzdHJpbmcgYW5kIHRoZXJlIGlzIGF0XG4gICBsZWFzdCBvbmUgY2hhcmFjdGVyLCBmb3IgZXhhbXBsZSB1cHBlcmNhc2UgY2hhcmFjdGVycyBtYXkgb25seVxuICAgZm9sbG93IHVuY2FzZWQgY2hhcmFjdGVycyBhbmQgbG93ZXJjYXNlIGNoYXJhY3RlcnMgb25seSBjYXNlZCBvbmVzLlxuICAgUmV0dXJuIGZhbHNlIG90aGVyd2lzZS5cblxuc3RyLmlzdXBwZXIoKVxuXG4gICBSZXR1cm4gdHJ1ZSBpZiBhbGwgY2FzZWQgY2hhcmFjdGVycyBpbiB0aGUgc3RyaW5nIGFyZSB1cHBlcmNhc2UgYW5kXG4gICB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyLCBmYWxzZSBvdGhlcndpc2UuIENhc2VkXG4gICBjaGFyYWN0ZXJzIGFyZSB0aG9zZSB3aXRoIGdlbmVyYWwgY2F0ZWdvcnkgcHJvcGVydHkgYmVpbmcgb25lIG9mXG4gICAiTHUiLCAiTGwiLCBvciAiTHQiIGFuZCB1cHBlcmNhc2UgY2hhcmFjdGVycyBhcmUgdGhvc2Ugd2l0aCBnZW5lcmFsXG4gICBjYXRlZ29yeSBwcm9wZXJ0eSAiTHUiLlxuXG5zdHIuam9pbihpdGVyYWJsZSlcblxuICAgUmV0dXJuIGEgc3RyaW5nIHdoaWNoIGlzIHRoZSBjb25jYXRlbmF0aW9uIG9mIHRoZSBzdHJpbmdzIGluIHRoZVxuICAgKml0ZXJhYmxlKiAqaXRlcmFibGUqLiAgQSBgYFR5cGVFcnJvcmBgIHdpbGwgYmUgcmFpc2VkIGlmIHRoZXJlIGFyZVxuICAgYW55IG5vbi1zdHJpbmcgdmFsdWVzIGluICpzZXEqLCBpbmNsdWRpbmcgYGBieXRlc2BgIG9iamVjdHMuICBUaGVcbiAgIHNlcGFyYXRvciBiZXR3ZWVuIGVsZW1lbnRzIGlzIHRoZSBzdHJpbmcgcHJvdmlkaW5nIHRoaXMgbWV0aG9kLlxuXG5zdHIubGp1c3Qod2lkdGhbLCBmaWxsY2hhcl0pXG5cbiAgIFJldHVybiB0aGUgc3RyaW5nIGxlZnQganVzdGlmaWVkIGluIGEgc3RyaW5nIG9mIGxlbmd0aCAqd2lkdGgqLlxuICAgUGFkZGluZyBpcyBkb25lIHVzaW5nIHRoZSBzcGVjaWZpZWQgKmZpbGxjaGFyKiAoZGVmYXVsdCBpcyBhXG4gICBzcGFjZSkuICBUaGUgb3JpZ2luYWwgc3RyaW5nIGlzIHJldHVybmVkIGlmICp3aWR0aCogaXMgbGVzcyB0aGFuXG4gICBgYGxlbihzKWBgLlxuXG5zdHIubG93ZXIoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgY29udmVydGVkIHRvIGxvd2VyY2FzZS5cblxuc3RyLmxzdHJpcChbY2hhcnNdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCBsZWFkaW5nIGNoYXJhY3RlcnMgcmVtb3ZlZC4gIFRoZVxuICAgKmNoYXJzKiBhcmd1bWVudCBpcyBhIHN0cmluZyBzcGVjaWZ5aW5nIHRoZSBzZXQgb2YgY2hhcmFjdGVycyB0byBiZVxuICAgcmVtb3ZlZC4gIElmIG9taXR0ZWQgb3IgYGBOb25lYGAsIHRoZSAqY2hhcnMqIGFyZ3VtZW50IGRlZmF1bHRzIHRvXG4gICByZW1vdmluZyB3aGl0ZXNwYWNlLiAgVGhlICpjaGFycyogYXJndW1lbnQgaXMgbm90IGEgcHJlZml4OyByYXRoZXIsXG4gICBhbGwgY29tYmluYXRpb25zIG9mIGl0cyB2YWx1ZXMgYXJlIHN0cmlwcGVkOlxuXG4gICA+Pj4gXCcgICBzcGFjaW91cyAgIFwnLmxzdHJpcCgpXG4gICBcJ3NwYWNpb3VzICAgXCdcbiAgID4+PiBcJ3d3dy5leGFtcGxlLmNvbVwnLmxzdHJpcChcJ2Ntb3d6LlwnKVxuICAgXCdleGFtcGxlLmNvbVwnXG5cbnN0YXRpYyBzdHIubWFrZXRyYW5zKHhbLCB5Wywgel1dKVxuXG4gICBUaGlzIHN0YXRpYyBtZXRob2QgcmV0dXJucyBhIHRyYW5zbGF0aW9uIHRhYmxlIHVzYWJsZSBmb3JcbiAgIGBgc3RyLnRyYW5zbGF0ZSgpYGAuXG5cbiAgIElmIHRoZXJlIGlzIG9ubHkgb25lIGFyZ3VtZW50LCBpdCBtdXN0IGJlIGEgZGljdGlvbmFyeSBtYXBwaW5nXG4gICBVbmljb2RlIG9yZGluYWxzIChpbnRlZ2Vycykgb3IgY2hhcmFjdGVycyAoc3RyaW5ncyBvZiBsZW5ndGggMSkgdG9cbiAgIFVuaWNvZGUgb3JkaW5hbHMsIHN0cmluZ3MgKG9mIGFyYml0cmFyeSBsZW5ndGhzKSBvciBOb25lLlxuICAgQ2hhcmFjdGVyIGtleXMgd2lsbCB0aGVuIGJlIGNvbnZlcnRlZCB0byBvcmRpbmFscy5cblxuICAgSWYgdGhlcmUgYXJlIHR3byBhcmd1bWVudHMsIHRoZXkgbXVzdCBiZSBzdHJpbmdzIG9mIGVxdWFsIGxlbmd0aCxcbiAgIGFuZCBpbiB0aGUgcmVzdWx0aW5nIGRpY3Rpb25hcnksIGVhY2ggY2hhcmFjdGVyIGluIHggd2lsbCBiZSBtYXBwZWRcbiAgIHRvIHRoZSBjaGFyYWN0ZXIgYXQgdGhlIHNhbWUgcG9zaXRpb24gaW4geS4gIElmIHRoZXJlIGlzIGEgdGhpcmRcbiAgIGFyZ3VtZW50LCBpdCBtdXN0IGJlIGEgc3RyaW5nLCB3aG9zZSBjaGFyYWN0ZXJzIHdpbGwgYmUgbWFwcGVkIHRvXG4gICBOb25lIGluIHRoZSByZXN1bHQuXG5cbnN0ci5wYXJ0aXRpb24oc2VwKVxuXG4gICBTcGxpdCB0aGUgc3RyaW5nIGF0IHRoZSBmaXJzdCBvY2N1cnJlbmNlIG9mICpzZXAqLCBhbmQgcmV0dXJuIGFcbiAgIDMtdHVwbGUgY29udGFpbmluZyB0aGUgcGFydCBiZWZvcmUgdGhlIHNlcGFyYXRvciwgdGhlIHNlcGFyYXRvclxuICAgaXRzZWxmLCBhbmQgdGhlIHBhcnQgYWZ0ZXIgdGhlIHNlcGFyYXRvci4gIElmIHRoZSBzZXBhcmF0b3IgaXMgbm90XG4gICBmb3VuZCwgcmV0dXJuIGEgMy10dXBsZSBjb250YWluaW5nIHRoZSBzdHJpbmcgaXRzZWxmLCBmb2xsb3dlZCBieVxuICAgdHdvIGVtcHR5IHN0cmluZ3MuXG5cbnN0ci5yZXBsYWNlKG9sZCwgbmV3WywgY291bnRdKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgd2l0aCBhbGwgb2NjdXJyZW5jZXMgb2Ygc3Vic3RyaW5nICpvbGQqXG4gICByZXBsYWNlZCBieSAqbmV3Ki4gIElmIHRoZSBvcHRpb25hbCBhcmd1bWVudCAqY291bnQqIGlzIGdpdmVuLCBvbmx5XG4gICB0aGUgZmlyc3QgKmNvdW50KiBvY2N1cnJlbmNlcyBhcmUgcmVwbGFjZWQuXG5cbnN0ci5yZmluZChzdWJbLCBzdGFydFssIGVuZF1dKVxuXG4gICBSZXR1cm4gdGhlIGhpZ2hlc3QgaW5kZXggaW4gdGhlIHN0cmluZyB3aGVyZSBzdWJzdHJpbmcgKnN1YiogaXNcbiAgIGZvdW5kLCBzdWNoIHRoYXQgKnN1YiogaXMgY29udGFpbmVkIHdpdGhpbiBgYHNbc3RhcnQ6ZW5kXWBgLlxuICAgT3B0aW9uYWwgYXJndW1lbnRzICpzdGFydCogYW5kICplbmQqIGFyZSBpbnRlcnByZXRlZCBhcyBpbiBzbGljZVxuICAgbm90YXRpb24uICBSZXR1cm4gYGAtMWBgIG9uIGZhaWx1cmUuXG5cbnN0ci5yaW5kZXgoc3ViWywgc3RhcnRbLCBlbmRdXSlcblxuICAgTGlrZSBgYHJmaW5kKClgYCBidXQgcmFpc2VzIGBgVmFsdWVFcnJvcmBgIHdoZW4gdGhlIHN1YnN0cmluZyAqc3ViKlxuICAgaXMgbm90IGZvdW5kLlxuXG5zdHIucmp1c3Qod2lkdGhbLCBmaWxsY2hhcl0pXG5cbiAgIFJldHVybiB0aGUgc3RyaW5nIHJpZ2h0IGp1c3RpZmllZCBpbiBhIHN0cmluZyBvZiBsZW5ndGggKndpZHRoKi5cbiAgIFBhZGRpbmcgaXMgZG9uZSB1c2luZyB0aGUgc3BlY2lmaWVkICpmaWxsY2hhciogKGRlZmF1bHQgaXMgYVxuICAgc3BhY2UpLiBUaGUgb3JpZ2luYWwgc3RyaW5nIGlzIHJldHVybmVkIGlmICp3aWR0aCogaXMgbGVzcyB0aGFuXG4gICBgYGxlbihzKWBgLlxuXG5zdHIucnBhcnRpdGlvbihzZXApXG5cbiAgIFNwbGl0IHRoZSBzdHJpbmcgYXQgdGhlIGxhc3Qgb2NjdXJyZW5jZSBvZiAqc2VwKiwgYW5kIHJldHVybiBhXG4gICAzLXR1cGxlIGNvbnRhaW5pbmcgdGhlIHBhcnQgYmVmb3JlIHRoZSBzZXBhcmF0b3IsIHRoZSBzZXBhcmF0b3JcbiAgIGl0c2VsZiwgYW5kIHRoZSBwYXJ0IGFmdGVyIHRoZSBzZXBhcmF0b3IuICBJZiB0aGUgc2VwYXJhdG9yIGlzIG5vdFxuICAgZm91bmQsIHJldHVybiBhIDMtdHVwbGUgY29udGFpbmluZyB0d28gZW1wdHkgc3RyaW5ncywgZm9sbG93ZWQgYnlcbiAgIHRoZSBzdHJpbmcgaXRzZWxmLlxuXG5zdHIucnNwbGl0KFtzZXBbLCBtYXhzcGxpdF1dKVxuXG4gICBSZXR1cm4gYSBsaXN0IG9mIHRoZSB3b3JkcyBpbiB0aGUgc3RyaW5nLCB1c2luZyAqc2VwKiBhcyB0aGVcbiAgIGRlbGltaXRlciBzdHJpbmcuIElmICptYXhzcGxpdCogaXMgZ2l2ZW4sIGF0IG1vc3QgKm1heHNwbGl0KiBzcGxpdHNcbiAgIGFyZSBkb25lLCB0aGUgKnJpZ2h0bW9zdCogb25lcy4gIElmICpzZXAqIGlzIG5vdCBzcGVjaWZpZWQgb3JcbiAgIGBgTm9uZWBgLCBhbnkgd2hpdGVzcGFjZSBzdHJpbmcgaXMgYSBzZXBhcmF0b3IuICBFeGNlcHQgZm9yXG4gICBzcGxpdHRpbmcgZnJvbSB0aGUgcmlnaHQsIGBgcnNwbGl0KClgYCBiZWhhdmVzIGxpa2UgYGBzcGxpdCgpYGBcbiAgIHdoaWNoIGlzIGRlc2NyaWJlZCBpbiBkZXRhaWwgYmVsb3cuXG5cbnN0ci5yc3RyaXAoW2NoYXJzXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgc3RyaW5nIHdpdGggdHJhaWxpbmcgY2hhcmFjdGVycyByZW1vdmVkLiAgVGhlXG4gICAqY2hhcnMqIGFyZ3VtZW50IGlzIGEgc3RyaW5nIHNwZWNpZnlpbmcgdGhlIHNldCBvZiBjaGFyYWN0ZXJzIHRvIGJlXG4gICByZW1vdmVkLiAgSWYgb21pdHRlZCBvciBgYE5vbmVgYCwgdGhlICpjaGFycyogYXJndW1lbnQgZGVmYXVsdHMgdG9cbiAgIHJlbW92aW5nIHdoaXRlc3BhY2UuICBUaGUgKmNoYXJzKiBhcmd1bWVudCBpcyBub3QgYSBzdWZmaXg7IHJhdGhlcixcbiAgIGFsbCBjb21iaW5hdGlvbnMgb2YgaXRzIHZhbHVlcyBhcmUgc3RyaXBwZWQ6XG5cbiAgID4+PiBcJyAgIHNwYWNpb3VzICAgXCcucnN0cmlwKClcbiAgIFwnICAgc3BhY2lvdXNcJ1xuICAgPj4+IFwnbWlzc2lzc2lwcGlcJy5yc3RyaXAoXCdpcHpcJylcbiAgIFwnbWlzc2lzc1wnXG5cbnN0ci5zcGxpdChbc2VwWywgbWF4c3BsaXRdXSlcblxuICAgUmV0dXJuIGEgbGlzdCBvZiB0aGUgd29yZHMgaW4gdGhlIHN0cmluZywgdXNpbmcgKnNlcCogYXMgdGhlXG4gICBkZWxpbWl0ZXIgc3RyaW5nLiAgSWYgKm1heHNwbGl0KiBpcyBnaXZlbiwgYXQgbW9zdCAqbWF4c3BsaXQqXG4gICBzcGxpdHMgYXJlIGRvbmUgKHRodXMsIHRoZSBsaXN0IHdpbGwgaGF2ZSBhdCBtb3N0IGBgbWF4c3BsaXQrMWBgXG4gICBlbGVtZW50cykuICBJZiAqbWF4c3BsaXQqIGlzIG5vdCBzcGVjaWZpZWQsIHRoZW4gdGhlcmUgaXMgbm8gbGltaXRcbiAgIG9uIHRoZSBudW1iZXIgb2Ygc3BsaXRzIChhbGwgcG9zc2libGUgc3BsaXRzIGFyZSBtYWRlKS5cblxuICAgSWYgKnNlcCogaXMgZ2l2ZW4sIGNvbnNlY3V0aXZlIGRlbGltaXRlcnMgYXJlIG5vdCBncm91cGVkIHRvZ2V0aGVyXG4gICBhbmQgYXJlIGRlZW1lZCB0byBkZWxpbWl0IGVtcHR5IHN0cmluZ3MgKGZvciBleGFtcGxlLFxuICAgYGBcJzEsLDJcJy5zcGxpdChcJyxcJylgYCByZXR1cm5zIGBgW1wnMVwnLCBcJ1wnLCBcJzJcJ11gYCkuICBUaGUgKnNlcCpcbiAgIGFyZ3VtZW50IG1heSBjb25zaXN0IG9mIG11bHRpcGxlIGNoYXJhY3RlcnMgKGZvciBleGFtcGxlLFxuICAgYGBcJzE8PjI8PjNcJy5zcGxpdChcJzw+XCcpYGAgcmV0dXJucyBgYFtcJzFcJywgXCcyXCcsIFwnM1wnXWBgKS4gU3BsaXR0aW5nXG4gICBhbiBlbXB0eSBzdHJpbmcgd2l0aCBhIHNwZWNpZmllZCBzZXBhcmF0b3IgcmV0dXJucyBgYFtcJ1wnXWBgLlxuXG4gICBJZiAqc2VwKiBpcyBub3Qgc3BlY2lmaWVkIG9yIGlzIGBgTm9uZWBgLCBhIGRpZmZlcmVudCBzcGxpdHRpbmdcbiAgIGFsZ29yaXRobSBpcyBhcHBsaWVkOiBydW5zIG9mIGNvbnNlY3V0aXZlIHdoaXRlc3BhY2UgYXJlIHJlZ2FyZGVkXG4gICBhcyBhIHNpbmdsZSBzZXBhcmF0b3IsIGFuZCB0aGUgcmVzdWx0IHdpbGwgY29udGFpbiBubyBlbXB0eSBzdHJpbmdzXG4gICBhdCB0aGUgc3RhcnQgb3IgZW5kIGlmIHRoZSBzdHJpbmcgaGFzIGxlYWRpbmcgb3IgdHJhaWxpbmdcbiAgIHdoaXRlc3BhY2UuICBDb25zZXF1ZW50bHksIHNwbGl0dGluZyBhbiBlbXB0eSBzdHJpbmcgb3IgYSBzdHJpbmdcbiAgIGNvbnNpc3Rpbmcgb2YganVzdCB3aGl0ZXNwYWNlIHdpdGggYSBgYE5vbmVgYCBzZXBhcmF0b3IgcmV0dXJuc1xuICAgYGBbXWBgLlxuXG4gICBGb3IgZXhhbXBsZSwgYGBcJyAxICAyICAgMyAgXCcuc3BsaXQoKWBgIHJldHVybnMgYGBbXCcxXCcsIFwnMlwnLCBcJzNcJ11gYCxcbiAgIGFuZCBgYFwnICAxICAyICAgMyAgXCcuc3BsaXQoTm9uZSwgMSlgYCByZXR1cm5zIGBgW1wnMVwnLCBcJzIgICAzICBcJ11gYC5cblxuc3RyLnNwbGl0bGluZXMoW2tlZXBlbmRzXSlcblxuICAgUmV0dXJuIGEgbGlzdCBvZiB0aGUgbGluZXMgaW4gdGhlIHN0cmluZywgYnJlYWtpbmcgYXQgbGluZVxuICAgYm91bmRhcmllcy4gIExpbmUgYnJlYWtzIGFyZSBub3QgaW5jbHVkZWQgaW4gdGhlIHJlc3VsdGluZyBsaXN0XG4gICB1bmxlc3MgKmtlZXBlbmRzKiBpcyBnaXZlbiBhbmQgdHJ1ZS5cblxuc3RyLnN0YXJ0c3dpdGgocHJlZml4Wywgc3RhcnRbLCBlbmRdXSlcblxuICAgUmV0dXJuIGBgVHJ1ZWBgIGlmIHN0cmluZyBzdGFydHMgd2l0aCB0aGUgKnByZWZpeCosIG90aGVyd2lzZVxuICAgcmV0dXJuIGBgRmFsc2VgYC4gKnByZWZpeCogY2FuIGFsc28gYmUgYSB0dXBsZSBvZiBwcmVmaXhlcyB0byBsb29rXG4gICBmb3IuICBXaXRoIG9wdGlvbmFsICpzdGFydCosIHRlc3Qgc3RyaW5nIGJlZ2lubmluZyBhdCB0aGF0XG4gICBwb3NpdGlvbi4gIFdpdGggb3B0aW9uYWwgKmVuZCosIHN0b3AgY29tcGFyaW5nIHN0cmluZyBhdCB0aGF0XG4gICBwb3NpdGlvbi5cblxuc3RyLnN0cmlwKFtjaGFyc10pXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIHRoZSBsZWFkaW5nIGFuZCB0cmFpbGluZ1xuICAgY2hhcmFjdGVycyByZW1vdmVkLiBUaGUgKmNoYXJzKiBhcmd1bWVudCBpcyBhIHN0cmluZyBzcGVjaWZ5aW5nIHRoZVxuICAgc2V0IG9mIGNoYXJhY3RlcnMgdG8gYmUgcmVtb3ZlZC4gSWYgb21pdHRlZCBvciBgYE5vbmVgYCwgdGhlXG4gICAqY2hhcnMqIGFyZ3VtZW50IGRlZmF1bHRzIHRvIHJlbW92aW5nIHdoaXRlc3BhY2UuIFRoZSAqY2hhcnMqXG4gICBhcmd1bWVudCBpcyBub3QgYSBwcmVmaXggb3Igc3VmZml4OyByYXRoZXIsIGFsbCBjb21iaW5hdGlvbnMgb2YgaXRzXG4gICB2YWx1ZXMgYXJlIHN0cmlwcGVkOlxuXG4gICA+Pj4gXCcgICBzcGFjaW91cyAgIFwnLnN0cmlwKClcbiAgIFwnc3BhY2lvdXNcJ1xuICAgPj4+IFwnd3d3LmV4YW1wbGUuY29tXCcuc3RyaXAoXCdjbW93ei5cJylcbiAgIFwnZXhhbXBsZVwnXG5cbnN0ci5zd2FwY2FzZSgpXG5cbiAgIFJldHVybiBhIGNvcHkgb2YgdGhlIHN0cmluZyB3aXRoIHVwcGVyY2FzZSBjaGFyYWN0ZXJzIGNvbnZlcnRlZCB0b1xuICAgbG93ZXJjYXNlIGFuZCB2aWNlIHZlcnNhLlxuXG5zdHIudGl0bGUoKVxuXG4gICBSZXR1cm4gYSB0aXRsZWNhc2VkIHZlcnNpb24gb2YgdGhlIHN0cmluZyB3aGVyZSB3b3JkcyBzdGFydCB3aXRoIGFuXG4gICB1cHBlcmNhc2UgY2hhcmFjdGVyIGFuZCB0aGUgcmVtYWluaW5nIGNoYXJhY3RlcnMgYXJlIGxvd2VyY2FzZS5cblxuICAgVGhlIGFsZ29yaXRobSB1c2VzIGEgc2ltcGxlIGxhbmd1YWdlLWluZGVwZW5kZW50IGRlZmluaXRpb24gb2YgYVxuICAgd29yZCBhcyBncm91cHMgb2YgY29uc2VjdXRpdmUgbGV0dGVycy4gIFRoZSBkZWZpbml0aW9uIHdvcmtzIGluXG4gICBtYW55IGNvbnRleHRzIGJ1dCBpdCBtZWFucyB0aGF0IGFwb3N0cm9waGVzIGluIGNvbnRyYWN0aW9ucyBhbmRcbiAgIHBvc3Nlc3NpdmVzIGZvcm0gd29yZCBib3VuZGFyaWVzLCB3aGljaCBtYXkgbm90IGJlIHRoZSBkZXNpcmVkXG4gICByZXN1bHQ6XG5cbiAgICAgID4+PiAidGhleVwncmUgYmlsbFwncyBmcmllbmRzIGZyb20gdGhlIFVLIi50aXRsZSgpXG4gICAgICAiVGhleVwnUmUgQmlsbFwnUyBGcmllbmRzIEZyb20gVGhlIFVrIlxuXG4gICBBIHdvcmthcm91bmQgZm9yIGFwb3N0cm9waGVzIGNhbiBiZSBjb25zdHJ1Y3RlZCB1c2luZyByZWd1bGFyXG4gICBleHByZXNzaW9uczpcblxuICAgICAgPj4+IGltcG9ydCByZVxuICAgICAgPj4+IGRlZiB0aXRsZWNhc2Uocyk6XG4gICAgICAgICAgICAgIHJldHVybiByZS5zdWIociJbQS1aYS16XSsoXCdbQS1aYS16XSspPyIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhIG1vOiBtby5ncm91cCgwKVswXS51cHBlcigpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vLmdyb3VwKDApWzE6XS5sb3dlcigpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMpXG5cbiAgICAgID4+PiB0aXRsZWNhc2UoInRoZXlcJ3JlIGJpbGxcJ3MgZnJpZW5kcy4iKVxuICAgICAgIlRoZXlcJ3JlIEJpbGxcJ3MgRnJpZW5kcy4iXG5cbnN0ci50cmFuc2xhdGUobWFwKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSAqcyogd2hlcmUgYWxsIGNoYXJhY3RlcnMgaGF2ZSBiZWVuIG1hcHBlZFxuICAgdGhyb3VnaCB0aGUgKm1hcCogd2hpY2ggbXVzdCBiZSBhIGRpY3Rpb25hcnkgb2YgVW5pY29kZSBvcmRpbmFsc1xuICAgKGludGVnZXJzKSB0byBVbmljb2RlIG9yZGluYWxzLCBzdHJpbmdzIG9yIGBgTm9uZWBgLiAgVW5tYXBwZWRcbiAgIGNoYXJhY3RlcnMgYXJlIGxlZnQgdW50b3VjaGVkLiBDaGFyYWN0ZXJzIG1hcHBlZCB0byBgYE5vbmVgYCBhcmVcbiAgIGRlbGV0ZWQuXG5cbiAgIFlvdSBjYW4gdXNlIGBgc3RyLm1ha2V0cmFucygpYGAgdG8gY3JlYXRlIGEgdHJhbnNsYXRpb24gbWFwIGZyb21cbiAgIGNoYXJhY3Rlci10by1jaGFyYWN0ZXIgbWFwcGluZ3MgaW4gZGlmZmVyZW50IGZvcm1hdHMuXG5cbiAgIE5vdGU6IEFuIGV2ZW4gbW9yZSBmbGV4aWJsZSBhcHByb2FjaCBpcyB0byBjcmVhdGUgYSBjdXN0b20gY2hhcmFjdGVyXG4gICAgIG1hcHBpbmcgY29kZWMgdXNpbmcgdGhlIGBgY29kZWNzYGAgbW9kdWxlIChzZWVcbiAgICAgYGBlbmNvZGluZ3MuY3AxMjUxYGAgZm9yIGFuIGV4YW1wbGUpLlxuXG5zdHIudXBwZXIoKVxuXG4gICBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgY29udmVydGVkIHRvIHVwcGVyY2FzZS5cblxuc3RyLnpmaWxsKHdpZHRoKVxuXG4gICBSZXR1cm4gdGhlIG51bWVyaWMgc3RyaW5nIGxlZnQgZmlsbGVkIHdpdGggemVyb3MgaW4gYSBzdHJpbmcgb2ZcbiAgIGxlbmd0aCAqd2lkdGgqLiAgQSBzaWduIHByZWZpeCBpcyBoYW5kbGVkIGNvcnJlY3RseS4gIFRoZSBvcmlnaW5hbFxuICAgc3RyaW5nIGlzIHJldHVybmVkIGlmICp3aWR0aCogaXMgbGVzcyB0aGFuIGBgbGVuKHMpYGAuXG5cblxuT2xkIFN0cmluZyBGb3JtYXR0aW5nIE9wZXJhdGlvbnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbk5vdGU6IFRoZSBmb3JtYXR0aW5nIG9wZXJhdGlvbnMgZGVzY3JpYmVkIGhlcmUgYXJlIG9ic29sZXRlIGFuZCBtYXkgZ29cbiAgYXdheSBpbiBmdXR1cmUgdmVyc2lvbnMgb2YgUHl0aG9uLiAgVXNlIHRoZSBuZXcgKlN0cmluZyBGb3JtYXR0aW5nKlxuICBpbiBuZXcgY29kZS5cblxuU3RyaW5nIG9iamVjdHMgaGF2ZSBvbmUgdW5pcXVlIGJ1aWx0LWluIG9wZXJhdGlvbjogdGhlIGBgJWBgIG9wZXJhdG9yXG4obW9kdWxvKS4gVGhpcyBpcyBhbHNvIGtub3duIGFzIHRoZSBzdHJpbmcgKmZvcm1hdHRpbmcqIG9yXG4qaW50ZXJwb2xhdGlvbiogb3BlcmF0b3IuIEdpdmVuIGBgZm9ybWF0ICUgdmFsdWVzYGAgKHdoZXJlICpmb3JtYXQqIGlzXG5hIHN0cmluZyksIGBgJWBgIGNvbnZlcnNpb24gc3BlY2lmaWNhdGlvbnMgaW4gKmZvcm1hdCogYXJlIHJlcGxhY2VkXG53aXRoIHplcm8gb3IgbW9yZSBlbGVtZW50cyBvZiAqdmFsdWVzKi4gVGhlIGVmZmVjdCBpcyBzaW1pbGFyIHRvIHRoZVxudXNpbmcgYGBzcHJpbnRmKClgYCBpbiB0aGUgQyBsYW5ndWFnZS5cblxuSWYgKmZvcm1hdCogcmVxdWlyZXMgYSBzaW5nbGUgYXJndW1lbnQsICp2YWx1ZXMqIG1heSBiZSBhIHNpbmdsZSBub24tXG50dXBsZSBvYmplY3QuIFs0XSAgT3RoZXJ3aXNlLCAqdmFsdWVzKiBtdXN0IGJlIGEgdHVwbGUgd2l0aCBleGFjdGx5XG50aGUgbnVtYmVyIG9mIGl0ZW1zIHNwZWNpZmllZCBieSB0aGUgZm9ybWF0IHN0cmluZywgb3IgYSBzaW5nbGVcbm1hcHBpbmcgb2JqZWN0IChmb3IgZXhhbXBsZSwgYSBkaWN0aW9uYXJ5KS5cblxuQSBjb252ZXJzaW9uIHNwZWNpZmllciBjb250YWlucyB0d28gb3IgbW9yZSBjaGFyYWN0ZXJzIGFuZCBoYXMgdGhlXG5mb2xsb3dpbmcgY29tcG9uZW50cywgd2hpY2ggbXVzdCBvY2N1ciBpbiB0aGlzIG9yZGVyOlxuXG4xLiBUaGUgYGBcJyVcJ2BgIGNoYXJhY3Rlciwgd2hpY2ggbWFya3MgdGhlIHN0YXJ0IG9mIHRoZSBzcGVjaWZpZXIuXG5cbjIuIE1hcHBpbmcga2V5IChvcHRpb25hbCksIGNvbnNpc3Rpbmcgb2YgYSBwYXJlbnRoZXNpc2VkIHNlcXVlbmNlIG9mXG4gICBjaGFyYWN0ZXJzIChmb3IgZXhhbXBsZSwgYGAoc29tZW5hbWUpYGApLlxuXG4zLiBDb252ZXJzaW9uIGZsYWdzIChvcHRpb25hbCksIHdoaWNoIGFmZmVjdCB0aGUgcmVzdWx0IG9mIHNvbWVcbiAgIGNvbnZlcnNpb24gdHlwZXMuXG5cbjQuIE1pbmltdW0gZmllbGQgd2lkdGggKG9wdGlvbmFsKS4gIElmIHNwZWNpZmllZCBhcyBhbiBgYFwnKlwnYGBcbiAgIChhc3RlcmlzayksIHRoZSBhY3R1YWwgd2lkdGggaXMgcmVhZCBmcm9tIHRoZSBuZXh0IGVsZW1lbnQgb2YgdGhlXG4gICB0dXBsZSBpbiAqdmFsdWVzKiwgYW5kIHRoZSBvYmplY3QgdG8gY29udmVydCBjb21lcyBhZnRlciB0aGVcbiAgIG1pbmltdW0gZmllbGQgd2lkdGggYW5kIG9wdGlvbmFsIHByZWNpc2lvbi5cblxuNS4gUHJlY2lzaW9uIChvcHRpb25hbCksIGdpdmVuIGFzIGEgYGBcJy5cJ2BgIChkb3QpIGZvbGxvd2VkIGJ5IHRoZVxuICAgcHJlY2lzaW9uLiAgSWYgc3BlY2lmaWVkIGFzIGBgXCcqXCdgYCAoYW4gYXN0ZXJpc2spLCB0aGUgYWN0dWFsIHdpZHRoXG4gICBpcyByZWFkIGZyb20gdGhlIG5leHQgZWxlbWVudCBvZiB0aGUgdHVwbGUgaW4gKnZhbHVlcyosIGFuZCB0aGVcbiAgIHZhbHVlIHRvIGNvbnZlcnQgY29tZXMgYWZ0ZXIgdGhlIHByZWNpc2lvbi5cblxuNi4gTGVuZ3RoIG1vZGlmaWVyIChvcHRpb25hbCkuXG5cbjcuIENvbnZlcnNpb24gdHlwZS5cblxuV2hlbiB0aGUgcmlnaHQgYXJndW1lbnQgaXMgYSBkaWN0aW9uYXJ5IChvciBvdGhlciBtYXBwaW5nIHR5cGUpLCB0aGVuXG50aGUgZm9ybWF0cyBpbiB0aGUgc3RyaW5nICptdXN0KiBpbmNsdWRlIGEgcGFyZW50aGVzaXNlZCBtYXBwaW5nIGtleVxuaW50byB0aGF0IGRpY3Rpb25hcnkgaW5zZXJ0ZWQgaW1tZWRpYXRlbHkgYWZ0ZXIgdGhlIGBgXCclXCdgYCBjaGFyYWN0ZXIuXG5UaGUgbWFwcGluZyBrZXkgc2VsZWN0cyB0aGUgdmFsdWUgdG8gYmUgZm9ybWF0dGVkIGZyb20gdGhlIG1hcHBpbmcuXG5Gb3IgZXhhbXBsZTpcblxuPj4+IHByaW50KFwnJShsYW5ndWFnZSlzIGhhcyAlKG51bWJlcikwM2QgcXVvdGUgdHlwZXMuXCcgJVxuLi4uICAgICAgIHtcJ2xhbmd1YWdlXCc6ICJQeXRob24iLCAibnVtYmVyIjogMn0pXG5QeXRob24gaGFzIDAwMiBxdW90ZSB0eXBlcy5cblxuSW4gdGhpcyBjYXNlIG5vIGBgKmBgIHNwZWNpZmllcnMgbWF5IG9jY3VyIGluIGEgZm9ybWF0IChzaW5jZSB0aGV5XG5yZXF1aXJlIGEgc2VxdWVudGlhbCBwYXJhbWV0ZXIgbGlzdCkuXG5cblRoZSBjb252ZXJzaW9uIGZsYWcgY2hhcmFjdGVycyBhcmU6XG5cbistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgRmxhZyAgICAgIHwgTWVhbmluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbis9PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PStcbnwgYGBcJyNcJ2BgICAgfCBUaGUgdmFsdWUgY29udmVyc2lvbiB3aWxsIHVzZSB0aGUgImFsdGVybmF0ZSBmb3JtIiAod2hlcmUgZGVmaW5lZCAgICAgfFxufCAgICAgICAgICAgfCBiZWxvdykuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYFwnMFwnYGAgICB8IFRoZSBjb252ZXJzaW9uIHdpbGwgYmUgemVybyBwYWRkZWQgZm9yIG51bWVyaWMgdmFsdWVzLiAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgXCctXCdgYCAgIHwgVGhlIGNvbnZlcnRlZCB2YWx1ZSBpcyBsZWZ0IGFkanVzdGVkIChvdmVycmlkZXMgdGhlIGBgXCcwXCdgYCAgICAgICAgICAgfFxufCAgICAgICAgICAgfCBjb252ZXJzaW9uIGlmIGJvdGggYXJlIGdpdmVuKS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYFwnIFwnYGAgICB8IChhIHNwYWNlKSBBIGJsYW5rIHNob3VsZCBiZSBsZWZ0IGJlZm9yZSBhIHBvc2l0aXZlIG51bWJlciAob3IgZW1wdHkgICB8XG58ICAgICAgICAgICB8IHN0cmluZykgcHJvZHVjZWQgYnkgYSBzaWduZWQgY29udmVyc2lvbi4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgXCcrXCdgYCAgIHwgQSBzaWduIGNoYXJhY3RlciAoYGBcJytcJ2BgIG9yIGBgXCctXCdgYCkgd2lsbCBwcmVjZWRlIHRoZSBjb252ZXJzaW9uICAgICB8XG58ICAgICAgICAgICB8IChvdmVycmlkZXMgYSAic3BhY2UiIGZsYWcpLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG5cbkEgbGVuZ3RoIG1vZGlmaWVyIChgYGhgYCwgYGBsYGAsIG9yIGBgTGBgKSBtYXkgYmUgcHJlc2VudCwgYnV0IGlzXG5pZ25vcmVkIGFzIGl0IGlzIG5vdCBuZWNlc3NhcnkgZm9yIFB5dGhvbiAtLSBzbyBlLmcuIGBgJWxkYGAgaXNcbmlkZW50aWNhbCB0byBgYCVkYGAuXG5cblRoZSBjb252ZXJzaW9uIHR5cGVzIGFyZTpcblxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBDb252ZXJzaW9uICAgfCBNZWFuaW5nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5vdGVzICAgfFxuKz09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09K1xufCBgYFwnZFwnYGAgICAgICB8IFNpZ25lZCBpbnRlZ2VyIGRlY2ltYWwuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdpXCdgYCAgICAgIHwgU2lnbmVkIGludGVnZXIgZGVjaW1hbC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ29cJ2BgICAgICAgfCBTaWduZWQgb2N0YWwgdmFsdWUuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICgxKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwndVwnYGAgICAgICB8IE9ic29sZXRlIHR5cGUgLS0gaXQgaXMgaWRlbnRpY2FsIHRvIGBgXCdkXCdgYC4gICAgICAgICAgfCAoNykgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ3hcJ2BgICAgICAgfCBTaWduZWQgaGV4YWRlY2ltYWwgKGxvd2VyY2FzZSkuICAgICAgICAgICAgICAgICAgICAgICB8ICgyKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnWFwnYGAgICAgICB8IFNpZ25lZCBoZXhhZGVjaW1hbCAodXBwZXJjYXNlKS4gICAgICAgICAgICAgICAgICAgICAgIHwgKDIpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdlXCdgYCAgICAgIHwgRmxvYXRpbmcgcG9pbnQgZXhwb25lbnRpYWwgZm9ybWF0IChsb3dlcmNhc2UpLiAgICAgICAgfCAoMykgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ0VcJ2BgICAgICAgfCBGbG9hdGluZyBwb2ludCBleHBvbmVudGlhbCBmb3JtYXQgKHVwcGVyY2FzZSkuICAgICAgICB8ICgzKSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnZlwnYGAgICAgICB8IEZsb2F0aW5nIHBvaW50IGRlY2ltYWwgZm9ybWF0LiAgICAgICAgICAgICAgICAgICAgICAgIHwgKDMpICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdGXCdgYCAgICAgIHwgRmxvYXRpbmcgcG9pbnQgZGVjaW1hbCBmb3JtYXQuICAgICAgICAgICAgICAgICAgICAgICAgfCAoMykgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ2dcJ2BgICAgICAgfCBGbG9hdGluZyBwb2ludCBmb3JtYXQuIFVzZXMgbG93ZXJjYXNlIGV4cG9uZW50aWFsICAgICB8ICg0KSAgICAgfFxufCAgICAgICAgICAgICAgfCBmb3JtYXQgaWYgZXhwb25lbnQgaXMgbGVzcyB0aGFuIC00IG9yIG5vdCBsZXNzIHRoYW4gICB8ICAgICAgICAgfFxufCAgICAgICAgICAgICAgfCBwcmVjaXNpb24sIGRlY2ltYWwgZm9ybWF0IG90aGVyd2lzZS4gICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnR1wnYGAgICAgICB8IEZsb2F0aW5nIHBvaW50IGZvcm1hdC4gVXNlcyB1cHBlcmNhc2UgZXhwb25lbnRpYWwgICAgIHwgKDQpICAgICB8XG58ICAgICAgICAgICAgICB8IGZvcm1hdCBpZiBleHBvbmVudCBpcyBsZXNzIHRoYW4gLTQgb3Igbm90IGxlc3MgdGhhbiAgIHwgICAgICAgICB8XG58ICAgICAgICAgICAgICB8IHByZWNpc2lvbiwgZGVjaW1hbCBmb3JtYXQgb3RoZXJ3aXNlLiAgICAgICAgICAgICAgICAgIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCdjXCdgYCAgICAgIHwgU2luZ2xlIGNoYXJhY3RlciAoYWNjZXB0cyBpbnRlZ2VyIG9yIHNpbmdsZSBjaGFyYWN0ZXIgfCAgICAgICAgIHxcbnwgICAgICAgICAgICAgIHwgc3RyaW5nKS4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLStcbnwgYGBcJ3JcJ2BgICAgICAgfCBTdHJpbmcgKGNvbnZlcnRzIGFueSBQeXRob24gb2JqZWN0IHVzaW5nIGBgcmVwcigpYGApLiB8ICg1KSAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xufCBgYFwnc1wnYGAgICAgICB8IFN0cmluZyAoY29udmVydHMgYW55IFB5dGhvbiBvYmplY3QgdXNpbmcgYGBzdHIoKWBgKS4gIHwgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0rXG58IGBgXCclXCdgYCAgICAgIHwgTm8gYXJndW1lbnQgaXMgY29udmVydGVkLCByZXN1bHRzIGluIGEgYGBcJyVcJ2BgICAgICAgICB8ICAgICAgICAgfFxufCAgICAgICAgICAgICAgfCBjaGFyYWN0ZXIgaW4gdGhlIHJlc3VsdC4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tK1xuXG5Ob3RlczpcblxuMS4gVGhlIGFsdGVybmF0ZSBmb3JtIGNhdXNlcyBhIGxlYWRpbmcgemVybyAoYGBcJzBcJ2BgKSB0byBiZSBpbnNlcnRlZFxuICAgYmV0d2VlbiBsZWZ0LWhhbmQgcGFkZGluZyBhbmQgdGhlIGZvcm1hdHRpbmcgb2YgdGhlIG51bWJlciBpZiB0aGVcbiAgIGxlYWRpbmcgY2hhcmFjdGVyIG9mIHRoZSByZXN1bHQgaXMgbm90IGFscmVhZHkgYSB6ZXJvLlxuXG4yLiBUaGUgYWx0ZXJuYXRlIGZvcm0gY2F1c2VzIGEgbGVhZGluZyBgYFwnMHhcJ2BgIG9yIGBgXCcwWFwnYGAgKGRlcGVuZGluZ1xuICAgb24gd2hldGhlciB0aGUgYGBcJ3hcJ2BgIG9yIGBgXCdYXCdgYCBmb3JtYXQgd2FzIHVzZWQpIHRvIGJlIGluc2VydGVkXG4gICBiZXR3ZWVuIGxlZnQtaGFuZCBwYWRkaW5nIGFuZCB0aGUgZm9ybWF0dGluZyBvZiB0aGUgbnVtYmVyIGlmIHRoZVxuICAgbGVhZGluZyBjaGFyYWN0ZXIgb2YgdGhlIHJlc3VsdCBpcyBub3QgYWxyZWFkeSBhIHplcm8uXG5cbjMuIFRoZSBhbHRlcm5hdGUgZm9ybSBjYXVzZXMgdGhlIHJlc3VsdCB0byBhbHdheXMgY29udGFpbiBhIGRlY2ltYWxcbiAgIHBvaW50LCBldmVuIGlmIG5vIGRpZ2l0cyBmb2xsb3cgaXQuXG5cbiAgIFRoZSBwcmVjaXNpb24gZGV0ZXJtaW5lcyB0aGUgbnVtYmVyIG9mIGRpZ2l0cyBhZnRlciB0aGUgZGVjaW1hbFxuICAgcG9pbnQgYW5kIGRlZmF1bHRzIHRvIDYuXG5cbjQuIFRoZSBhbHRlcm5hdGUgZm9ybSBjYXVzZXMgdGhlIHJlc3VsdCB0byBhbHdheXMgY29udGFpbiBhIGRlY2ltYWxcbiAgIHBvaW50LCBhbmQgdHJhaWxpbmcgemVyb2VzIGFyZSBub3QgcmVtb3ZlZCBhcyB0aGV5IHdvdWxkIG90aGVyd2lzZVxuICAgYmUuXG5cbiAgIFRoZSBwcmVjaXNpb24gZGV0ZXJtaW5lcyB0aGUgbnVtYmVyIG9mIHNpZ25pZmljYW50IGRpZ2l0cyBiZWZvcmVcbiAgIGFuZCBhZnRlciB0aGUgZGVjaW1hbCBwb2ludCBhbmQgZGVmYXVsdHMgdG8gNi5cblxuNS4gVGhlIHByZWNpc2lvbiBkZXRlcm1pbmVzIHRoZSBtYXhpbWFsIG51bWJlciBvZiBjaGFyYWN0ZXJzIHVzZWQuXG5cbjEuIFNlZSAqKlBFUCAyMzcqKi5cblxuU2luY2UgUHl0aG9uIHN0cmluZ3MgaGF2ZSBhbiBleHBsaWNpdCBsZW5ndGgsIGBgJXNgYCBjb252ZXJzaW9ucyBkb1xubm90IGFzc3VtZSB0aGF0IGBgXCdcXDBcJ2BgIGlzIHRoZSBlbmQgb2YgdGhlIHN0cmluZy5cblxuQ2hhbmdlZCBpbiB2ZXJzaW9uIDMuMTogYGAlZmBgIGNvbnZlcnNpb25zIGZvciBudW1iZXJzIHdob3NlIGFic29sdXRlXG52YWx1ZSBpcyBvdmVyIDFlNTAgYXJlIG5vIGxvbmdlciByZXBsYWNlZCBieSBgYCVnYGAgY29udmVyc2lvbnMuXG5cbkFkZGl0aW9uYWwgc3RyaW5nIG9wZXJhdGlvbnMgYXJlIGRlZmluZWQgaW4gc3RhbmRhcmQgbW9kdWxlc1xuYGBzdHJpbmdgYCBhbmQgYGByZWBgLlxuXG5cblJhbmdlIFR5cGVcbj09PT09PT09PT1cblxuVGhlIGBgcmFuZ2VgYCB0eXBlIGlzIGFuIGltbXV0YWJsZSBzZXF1ZW5jZSB3aGljaCBpcyBjb21tb25seSB1c2VkIGZvclxubG9vcGluZy4gIFRoZSBhZHZhbnRhZ2Ugb2YgdGhlIGBgcmFuZ2VgYCB0eXBlIGlzIHRoYXQgYW4gYGByYW5nZWBgXG5vYmplY3Qgd2lsbCBhbHdheXMgdGFrZSB0aGUgc2FtZSBhbW91bnQgb2YgbWVtb3J5LCBubyBtYXR0ZXIgdGhlIHNpemVcbm9mIHRoZSByYW5nZSBpdCByZXByZXNlbnRzLlxuXG5SYW5nZSBvYmplY3RzIGhhdmUgcmVsYXRpdmVseSBsaXR0bGUgYmVoYXZpb3I6IHRoZXkgc3VwcG9ydCBpbmRleGluZyxcbmNvbnRhaW5zLCBpdGVyYXRpb24sIHRoZSBgYGxlbigpYGAgZnVuY3Rpb24sIGFuZCB0aGUgZm9sbG93aW5nXG5tZXRob2RzOlxuXG5yYW5nZS5jb3VudCh4KVxuXG4gICBSZXR1cm4gdGhlIG51bWJlciBvZiAqaSpcJ3MgZm9yIHdoaWNoIGBgc1tpXSA9PSB4YGAuXG5cbiAgICAgIE5ldyBpbiB2ZXJzaW9uIDMuMi5cblxucmFuZ2UuaW5kZXgoeClcblxuICAgUmV0dXJuIHRoZSBzbWFsbGVzdCAqaSogc3VjaCB0aGF0IGBgc1tpXSA9PSB4YGAuICBSYWlzZXNcbiAgIGBgVmFsdWVFcnJvcmBgIHdoZW4gKngqIGlzIG5vdCBpbiB0aGUgcmFuZ2UuXG5cbiAgICAgIE5ldyBpbiB2ZXJzaW9uIDMuMi5cblxuXG5NdXRhYmxlIFNlcXVlbmNlIFR5cGVzXG49PT09PT09PT09PT09PT09PT09PT09XG5cbkxpc3QgYW5kIGJ5dGVhcnJheSBvYmplY3RzIHN1cHBvcnQgYWRkaXRpb25hbCBvcGVyYXRpb25zIHRoYXQgYWxsb3dcbmluLXBsYWNlIG1vZGlmaWNhdGlvbiBvZiB0aGUgb2JqZWN0LiAgT3RoZXIgbXV0YWJsZSBzZXF1ZW5jZSB0eXBlc1xuKHdoZW4gYWRkZWQgdG8gdGhlIGxhbmd1YWdlKSBzaG91bGQgYWxzbyBzdXBwb3J0IHRoZXNlIG9wZXJhdGlvbnMuXG5TdHJpbmdzIGFuZCB0dXBsZXMgYXJlIGltbXV0YWJsZSBzZXF1ZW5jZSB0eXBlczogc3VjaCBvYmplY3RzIGNhbm5vdFxuYmUgbW9kaWZpZWQgb25jZSBjcmVhdGVkLiBUaGUgZm9sbG93aW5nIG9wZXJhdGlvbnMgYXJlIGRlZmluZWQgb25cbm11dGFibGUgc2VxdWVuY2UgdHlwZXMgKHdoZXJlICp4KiBpcyBhbiBhcmJpdHJhcnkgb2JqZWN0KS5cblxuTm90ZSB0aGF0IHdoaWxlIGxpc3RzIGFsbG93IHRoZWlyIGl0ZW1zIHRvIGJlIG9mIGFueSB0eXBlLCBieXRlYXJyYXlcbm9iamVjdCAiaXRlbXMiIGFyZSBhbGwgaW50ZWdlcnMgaW4gdGhlIHJhbmdlIDAgPD0geCA8IDI1Ni5cblxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IE9wZXJhdGlvbiAgICAgICAgICAgICAgICAgICAgICB8IFJlc3VsdCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTm90ZXMgICAgICAgICAgICAgICAgIHxcbis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09K1xufCBgYHNbaV0gPSB4YGAgICAgICAgICAgICAgICAgICAgfCBpdGVtICppKiBvZiAqcyogaXMgcmVwbGFjZWQgYnkgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICp4KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHNbaTpqXSA9IHRgYCAgICAgICAgICAgICAgICAgfCBzbGljZSBvZiAqcyogZnJvbSAqaSogdG8gKmoqIGlzICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHJlcGxhY2VkIGJ5IHRoZSBjb250ZW50cyBvZiB0aGUgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgaXRlcmFibGUgKnQqICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgZGVsIHNbaTpqXWBgICAgICAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2k6al0gPSBbXWBgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHNbaTpqOmtdID0gdGBgICAgICAgICAgICAgICAgfCB0aGUgZWxlbWVudHMgb2YgYGBzW2k6ajprXWBgIGFyZSB8ICgxKSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHJlcGxhY2VkIGJ5IHRob3NlIG9mICp0KiAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYGRlbCBzW2k6ajprXWBgICAgICAgICAgICAgICAgfCByZW1vdmVzIHRoZSBlbGVtZW50cyBvZiAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1tpOmo6a11gYCBmcm9tIHRoZSBsaXN0ICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuYXBwZW5kKHgpYGAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tsZW4ocyk6bGVuKHMpXSA9ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFt4XWBgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuZXh0ZW5kKHgpYGAgICAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tsZW4ocyk6bGVuKHMpXSA9IHhgYCB8ICgyKSAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmNsZWFyKClgYCAgICAgICAgICAgICAgICAgIHwgcmVtb3ZlIGFsbCBpdGVtcyBmcm9tIGBgc2BgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5jb3B5KClgYCAgICAgICAgICAgICAgICAgICB8IHJldHVybiBhIHNoYWxsb3cgY29weSBvZiBgYHNgYCAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuY291bnQoeClgYCAgICAgICAgICAgICAgICAgfCByZXR1cm4gbnVtYmVyIG9mICppKlwncyBmb3Igd2hpY2ggfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBgYHNbaV0gPT0geGBgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmluZGV4KHhbLCBpWywgal1dKWBgICAgICAgIHwgcmV0dXJuIHNtYWxsZXN0ICprKiBzdWNoIHRoYXQgICAgfCAoMykgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBgYHNba10gPT0geGBgIGFuZCBgYGkgPD0gayA8IGpgYCB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmluc2VydChpLCB4KWBgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHNbaTppXSA9IFt4XWBgICAgICAgICAgfCAoNCkgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5wb3AoW2ldKWBgICAgICAgICAgICAgICAgICB8IHNhbWUgYXMgYGB4ID0gc1tpXTsgZGVsIHNbaV07ICAgIHwgKDUpICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcmV0dXJuIHhgYCAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5yZW1vdmUoeClgYCAgICAgICAgICAgICAgICB8IHNhbWUgYXMgYGBkZWwgc1tzLmluZGV4KHgpXWBgICAgIHwgKDMpICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMucmV2ZXJzZSgpYGAgICAgICAgICAgICAgICAgfCByZXZlcnNlcyB0aGUgaXRlbXMgb2YgKnMqIGluICAgICB8ICg2KSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHBsYWNlICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuc29ydChba2V5WywgcmV2ZXJzZV1dKWBgICAgfCBzb3J0IHRoZSBpdGVtcyBvZiAqcyogaW4gcGxhY2UgICB8ICg2KSwgKDcpLCAoOCkgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcblxuTm90ZXM6XG5cbjEuICp0KiBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoIGFzIHRoZSBzbGljZSBpdCBpcyByZXBsYWNpbmcuXG5cbjIuICp4KiBjYW4gYmUgYW55IGl0ZXJhYmxlIG9iamVjdC5cblxuMy4gUmFpc2VzIGBgVmFsdWVFcnJvcmBgIHdoZW4gKngqIGlzIG5vdCBmb3VuZCBpbiAqcyouIFdoZW4gYSBuZWdhdGl2ZVxuICAgaW5kZXggaXMgcGFzc2VkIGFzIHRoZSBzZWNvbmQgb3IgdGhpcmQgcGFyYW1ldGVyIHRvIHRoZSBgYGluZGV4KClgYFxuICAgbWV0aG9kLCB0aGUgc2VxdWVuY2UgbGVuZ3RoIGlzIGFkZGVkLCBhcyBmb3Igc2xpY2UgaW5kaWNlcy4gIElmIGl0XG4gICBpcyBzdGlsbCBuZWdhdGl2ZSwgaXQgaXMgdHJ1bmNhdGVkIHRvIHplcm8sIGFzIGZvciBzbGljZSBpbmRpY2VzLlxuXG40LiBXaGVuIGEgbmVnYXRpdmUgaW5kZXggaXMgcGFzc2VkIGFzIHRoZSBmaXJzdCBwYXJhbWV0ZXIgdG8gdGhlXG4gICBgYGluc2VydCgpYGAgbWV0aG9kLCB0aGUgc2VxdWVuY2UgbGVuZ3RoIGlzIGFkZGVkLCBhcyBmb3Igc2xpY2VcbiAgIGluZGljZXMuICBJZiBpdCBpcyBzdGlsbCBuZWdhdGl2ZSwgaXQgaXMgdHJ1bmNhdGVkIHRvIHplcm8sIGFzIGZvclxuICAgc2xpY2UgaW5kaWNlcy5cblxuNS4gVGhlIG9wdGlvbmFsIGFyZ3VtZW50ICppKiBkZWZhdWx0cyB0byBgYC0xYGAsIHNvIHRoYXQgYnkgZGVmYXVsdFxuICAgdGhlIGxhc3QgaXRlbSBpcyByZW1vdmVkIGFuZCByZXR1cm5lZC5cblxuNi4gVGhlIGBgc29ydCgpYGAgYW5kIGBgcmV2ZXJzZSgpYGAgbWV0aG9kcyBtb2RpZnkgdGhlIHNlcXVlbmNlIGluXG4gICBwbGFjZSBmb3IgZWNvbm9teSBvZiBzcGFjZSB3aGVuIHNvcnRpbmcgb3IgcmV2ZXJzaW5nIGEgbGFyZ2VcbiAgIHNlcXVlbmNlLiAgVG8gcmVtaW5kIHlvdSB0aGF0IHRoZXkgb3BlcmF0ZSBieSBzaWRlIGVmZmVjdCwgdGhleVxuICAgZG9uXCd0IHJldHVybiB0aGUgc29ydGVkIG9yIHJldmVyc2VkIHNlcXVlbmNlLlxuXG43LiBUaGUgYGBzb3J0KClgYCBtZXRob2QgdGFrZXMgb3B0aW9uYWwgYXJndW1lbnRzIGZvciBjb250cm9sbGluZyB0aGVcbiAgIGNvbXBhcmlzb25zLiAgRWFjaCBtdXN0IGJlIHNwZWNpZmllZCBhcyBhIGtleXdvcmQgYXJndW1lbnQuXG5cbiAgICprZXkqIHNwZWNpZmllcyBhIGZ1bmN0aW9uIG9mIG9uZSBhcmd1bWVudCB0aGF0IGlzIHVzZWQgdG8gZXh0cmFjdFxuICAgYSBjb21wYXJpc29uIGtleSBmcm9tIGVhY2ggbGlzdCBlbGVtZW50OiBgYGtleT1zdHIubG93ZXJgYC4gIFRoZVxuICAgZGVmYXVsdCB2YWx1ZSBpcyBgYE5vbmVgYC4gVXNlIGBgZnVuY3Rvb2xzLmNtcF90b19rZXkoKWBgIHRvXG4gICBjb252ZXJ0IGFuIG9sZC1zdHlsZSAqY21wKiBmdW5jdGlvbiB0byBhICprZXkqIGZ1bmN0aW9uLlxuXG4gICAqcmV2ZXJzZSogaXMgYSBib29sZWFuIHZhbHVlLiAgSWYgc2V0IHRvIGBgVHJ1ZWBgLCB0aGVuIHRoZSBsaXN0XG4gICBlbGVtZW50cyBhcmUgc29ydGVkIGFzIGlmIGVhY2ggY29tcGFyaXNvbiB3ZXJlIHJldmVyc2VkLlxuXG4gICBUaGUgYGBzb3J0KClgYCBtZXRob2QgaXMgZ3VhcmFudGVlZCB0byBiZSBzdGFibGUuICBBIHNvcnQgaXMgc3RhYmxlXG4gICBpZiBpdCBndWFyYW50ZWVzIG5vdCB0byBjaGFuZ2UgdGhlIHJlbGF0aXZlIG9yZGVyIG9mIGVsZW1lbnRzIHRoYXRcbiAgIGNvbXBhcmUgZXF1YWwgLS0tIHRoaXMgaXMgaGVscGZ1bCBmb3Igc29ydGluZyBpbiBtdWx0aXBsZSBwYXNzZXNcbiAgIChmb3IgZXhhbXBsZSwgc29ydCBieSBkZXBhcnRtZW50LCB0aGVuIGJ5IHNhbGFyeSBncmFkZSkuXG5cbiAgICoqQ1B5dGhvbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWw6KiogV2hpbGUgYSBsaXN0IGlzIGJlaW5nIHNvcnRlZCxcbiAgIHRoZSBlZmZlY3Qgb2YgYXR0ZW1wdGluZyB0byBtdXRhdGUsIG9yIGV2ZW4gaW5zcGVjdCwgdGhlIGxpc3QgaXNcbiAgIHVuZGVmaW5lZC4gIFRoZSBDIGltcGxlbWVudGF0aW9uIG9mIFB5dGhvbiBtYWtlcyB0aGUgbGlzdCBhcHBlYXJcbiAgIGVtcHR5IGZvciB0aGUgZHVyYXRpb24sIGFuZCByYWlzZXMgYGBWYWx1ZUVycm9yYGAgaWYgaXQgY2FuIGRldGVjdFxuICAgdGhhdCB0aGUgbGlzdCBoYXMgYmVlbiBtdXRhdGVkIGR1cmluZyBhIHNvcnQuXG5cbjguIGBgc29ydCgpYGAgaXMgbm90IHN1cHBvcnRlZCBieSBgYGJ5dGVhcnJheWBgIG9iamVjdHMuXG5cbiAgICAgIE5ldyBpbiB2ZXJzaW9uIDMuMzogYGBjbGVhcigpYGAgYW5kIGBgY29weSgpYGAgbWV0aG9kcy5cblxuXG5CeXRlcyBhbmQgQnl0ZSBBcnJheSBNZXRob2RzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkJ5dGVzIGFuZCBieXRlYXJyYXkgb2JqZWN0cywgYmVpbmcgInN0cmluZ3Mgb2YgYnl0ZXMiLCBoYXZlIGFsbFxubWV0aG9kcyBmb3VuZCBvbiBzdHJpbmdzLCB3aXRoIHRoZSBleGNlcHRpb24gb2YgYGBlbmNvZGUoKWBgLFxuYGBmb3JtYXQoKWBgIGFuZCBgYGlzaWRlbnRpZmllcigpYGAsIHdoaWNoIGRvIG5vdCBtYWtlIHNlbnNlIHdpdGhcbnRoZXNlIHR5cGVzLiAgRm9yIGNvbnZlcnRpbmcgdGhlIG9iamVjdHMgdG8gc3RyaW5ncywgdGhleSBoYXZlIGFcbmBgZGVjb2RlKClgYCBtZXRob2QuXG5cbldoZXJldmVyIG9uZSBvZiB0aGVzZSBtZXRob2RzIG5lZWRzIHRvIGludGVycHJldCB0aGUgYnl0ZXMgYXNcbmNoYXJhY3RlcnMgKGUuZy4gdGhlIGBgaXMuLi4oKWBgIG1ldGhvZHMpLCB0aGUgQVNDSUkgY2hhcmFjdGVyIHNldCBpc1xuYXNzdW1lZC5cblxuTm90ZTogVGhlIG1ldGhvZHMgb24gYnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzIGRvblwndCBhY2NlcHQgc3RyaW5ncyBhc1xuICB0aGVpciBhcmd1bWVudHMsIGp1c3QgYXMgdGhlIG1ldGhvZHMgb24gc3RyaW5ncyBkb25cJ3QgYWNjZXB0IGJ5dGVzXG4gIGFzIHRoZWlyIGFyZ3VtZW50cy4gIEZvciBleGFtcGxlLCB5b3UgaGF2ZSB0byB3cml0ZVxuXG4gICAgIGEgPSAiYWJjIlxuICAgICBiID0gYS5yZXBsYWNlKCJhIiwgImYiKVxuXG4gIGFuZFxuXG4gICAgIGEgPSBiImFiYyJcbiAgICAgYiA9IGEucmVwbGFjZShiImEiLCBiImYiKVxuXG5ieXRlcy5kZWNvZGUoZW5jb2Rpbmc9InV0Zi04IiwgZXJyb3JzPSJzdHJpY3QiKVxuYnl0ZWFycmF5LmRlY29kZShlbmNvZGluZz0idXRmLTgiLCBlcnJvcnM9InN0cmljdCIpXG5cbiAgIFJldHVybiBhIHN0cmluZyBkZWNvZGVkIGZyb20gdGhlIGdpdmVuIGJ5dGVzLiAgRGVmYXVsdCBlbmNvZGluZyBpc1xuICAgYGBcJ3V0Zi04XCdgYC4gKmVycm9ycyogbWF5IGJlIGdpdmVuIHRvIHNldCBhIGRpZmZlcmVudCBlcnJvclxuICAgaGFuZGxpbmcgc2NoZW1lLiAgVGhlIGRlZmF1bHQgZm9yICplcnJvcnMqIGlzIGBgXCdzdHJpY3RcJ2BgLCBtZWFuaW5nXG4gICB0aGF0IGVuY29kaW5nIGVycm9ycyByYWlzZSBhIGBgVW5pY29kZUVycm9yYGAuICBPdGhlciBwb3NzaWJsZVxuICAgdmFsdWVzIGFyZSBgYFwnaWdub3JlXCdgYCwgYGBcJ3JlcGxhY2VcJ2BgIGFuZCBhbnkgb3RoZXIgbmFtZVxuICAgcmVnaXN0ZXJlZCB2aWEgYGBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoKWBgLCBzZWUgc2VjdGlvbiAqQ29kZWMgQmFzZVxuICAgQ2xhc3NlcyouIEZvciBhIGxpc3Qgb2YgcG9zc2libGUgZW5jb2RpbmdzLCBzZWUgc2VjdGlvbiAqU3RhbmRhcmRcbiAgIEVuY29kaW5ncyouXG5cbiAgIENoYW5nZWQgaW4gdmVyc2lvbiAzLjE6IEFkZGVkIHN1cHBvcnQgZm9yIGtleXdvcmQgYXJndW1lbnRzLlxuXG5UaGUgYnl0ZXMgYW5kIGJ5dGVhcnJheSB0eXBlcyBoYXZlIGFuIGFkZGl0aW9uYWwgY2xhc3MgbWV0aG9kOlxuXG5jbGFzc21ldGhvZCBieXRlcy5mcm9taGV4KHN0cmluZylcbmNsYXNzbWV0aG9kIGJ5dGVhcnJheS5mcm9taGV4KHN0cmluZylcblxuICAgVGhpcyBgYGJ5dGVzYGAgY2xhc3MgbWV0aG9kIHJldHVybnMgYSBieXRlcyBvciBieXRlYXJyYXkgb2JqZWN0LFxuICAgZGVjb2RpbmcgdGhlIGdpdmVuIHN0cmluZyBvYmplY3QuICBUaGUgc3RyaW5nIG11c3QgY29udGFpbiB0d29cbiAgIGhleGFkZWNpbWFsIGRpZ2l0cyBwZXIgYnl0ZSwgc3BhY2VzIGFyZSBpZ25vcmVkLlxuXG4gICA+Pj4gYnl0ZXMuZnJvbWhleChcJ2YwIGYxZjIgIFwnKVxuICAgYlwnXFx4ZjBcXHhmMVxceGYyXCdcblxuVGhlIG1ha2V0cmFucyBhbmQgdHJhbnNsYXRlIG1ldGhvZHMgZGlmZmVyIGluIHNlbWFudGljcyBmcm9tIHRoZVxudmVyc2lvbnMgYXZhaWxhYmxlIG9uIHN0cmluZ3M6XG5cbmJ5dGVzLnRyYW5zbGF0ZSh0YWJsZVssIGRlbGV0ZV0pXG5ieXRlYXJyYXkudHJhbnNsYXRlKHRhYmxlWywgZGVsZXRlXSlcblxuICAgUmV0dXJuIGEgY29weSBvZiB0aGUgYnl0ZXMgb3IgYnl0ZWFycmF5IG9iamVjdCB3aGVyZSBhbGwgYnl0ZXNcbiAgIG9jY3VycmluZyBpbiB0aGUgb3B0aW9uYWwgYXJndW1lbnQgKmRlbGV0ZSogYXJlIHJlbW92ZWQsIGFuZCB0aGVcbiAgIHJlbWFpbmluZyBieXRlcyBoYXZlIGJlZW4gbWFwcGVkIHRocm91Z2ggdGhlIGdpdmVuIHRyYW5zbGF0aW9uXG4gICB0YWJsZSwgd2hpY2ggbXVzdCBiZSBhIGJ5dGVzIG9iamVjdCBvZiBsZW5ndGggMjU2LlxuXG4gICBZb3UgY2FuIHVzZSB0aGUgYGBieXRlcy5tYWtldHJhbnMoKWBgIG1ldGhvZCB0byBjcmVhdGUgYVxuICAgdHJhbnNsYXRpb24gdGFibGUuXG5cbiAgIFNldCB0aGUgKnRhYmxlKiBhcmd1bWVudCB0byBgYE5vbmVgYCBmb3IgdHJhbnNsYXRpb25zIHRoYXQgb25seVxuICAgZGVsZXRlIGNoYXJhY3RlcnM6XG5cbiAgICAgID4+PiBiXCdyZWFkIHRoaXMgc2hvcnQgdGV4dFwnLnRyYW5zbGF0ZShOb25lLCBiXCdhZWlvdVwnKVxuICAgICAgYlwncmQgdGhzIHNocnQgdHh0XCdcblxuc3RhdGljIGJ5dGVzLm1ha2V0cmFucyhmcm9tLCB0bylcbnN0YXRpYyBieXRlYXJyYXkubWFrZXRyYW5zKGZyb20sIHRvKVxuXG4gICBUaGlzIHN0YXRpYyBtZXRob2QgcmV0dXJucyBhIHRyYW5zbGF0aW9uIHRhYmxlIHVzYWJsZSBmb3JcbiAgIGBgYnl0ZXMudHJhbnNsYXRlKClgYCB0aGF0IHdpbGwgbWFwIGVhY2ggY2hhcmFjdGVyIGluICpmcm9tKiBpbnRvXG4gICB0aGUgY2hhcmFjdGVyIGF0IHRoZSBzYW1lIHBvc2l0aW9uIGluICp0byo7ICpmcm9tKiBhbmQgKnRvKiBtdXN0IGJlXG4gICBieXRlcyBvYmplY3RzIGFuZCBoYXZlIHRoZSBzYW1lIGxlbmd0aC5cblxuICAgTmV3IGluIHZlcnNpb24gMy4xLlxuJywKKyAndHlwZXNzZXEtbXV0YWJsZSc6ICdcbk11dGFibGUgU2VxdWVuY2UgVHlwZXNcbioqKioqKioqKioqKioqKioqKioqKipcblxuTGlzdCBhbmQgYnl0ZWFycmF5IG9iamVjdHMgc3VwcG9ydCBhZGRpdGlvbmFsIG9wZXJhdGlvbnMgdGhhdCBhbGxvd1xuaW4tcGxhY2UgbW9kaWZpY2F0aW9uIG9mIHRoZSBvYmplY3QuICBPdGhlciBtdXRhYmxlIHNlcXVlbmNlIHR5cGVzXG4od2hlbiBhZGRlZCB0byB0aGUgbGFuZ3VhZ2UpIHNob3VsZCBhbHNvIHN1cHBvcnQgdGhlc2Ugb3BlcmF0aW9ucy5cblN0cmluZ3MgYW5kIHR1cGxlcyBhcmUgaW1tdXRhYmxlIHNlcXVlbmNlIHR5cGVzOiBzdWNoIG9iamVjdHMgY2Fubm90XG5iZSBtb2RpZmllZCBvbmNlIGNyZWF0ZWQuIFRoZSBmb2xsb3dpbmcgb3BlcmF0aW9ucyBhcmUgZGVmaW5lZCBvblxubXV0YWJsZSBzZXF1ZW5jZSB0eXBlcyAod2hlcmUgKngqIGlzIGFuIGFyYml0cmFyeSBvYmplY3QpLlxuXG5Ob3RlIHRoYXQgd2hpbGUgbGlzdHMgYWxsb3cgdGhlaXIgaXRlbXMgdG8gYmUgb2YgYW55IHR5cGUsIGJ5dGVhcnJheVxub2JqZWN0ICJpdGVtcyIgYXJlIGFsbCBpbnRlZ2VycyBpbiB0aGUgcmFuZ2UgMCA8PSB4IDwgMjU2LlxuXG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgT3BlcmF0aW9uICAgICAgICAgICAgICAgICAgICAgIHwgUmVzdWx0ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOb3RlcyAgICAgICAgICAgICAgICAgfFxuKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0rPT09PT09PT09PT09PT09PT09PT09PT0rXG58IGBgc1tpXSA9IHhgYCAgICAgICAgICAgICAgICAgICB8IGl0ZW0gKmkqIG9mICpzKiBpcyByZXBsYWNlZCBieSAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKngqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgc1tpOmpdID0gdGBgICAgICAgICAgICAgICAgICB8IHNsaWNlIG9mICpzKiBmcm9tICppKiB0byAqaiogaXMgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcmVwbGFjZWQgYnkgdGhlIGNvbnRlbnRzIG9mIHRoZSAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBpdGVyYWJsZSAqdCogICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBkZWwgc1tpOmpdYGAgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHNbaTpqXSA9IFtdYGAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgc1tpOmo6a10gPSB0YGAgICAgICAgICAgICAgICB8IHRoZSBlbGVtZW50cyBvZiBgYHNbaTpqOmtdYGAgYXJlIHwgKDEpICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcmVwbGFjZWQgYnkgdGhvc2Ugb2YgKnQqICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgZGVsIHNbaTpqOmtdYGAgICAgICAgICAgICAgICB8IHJlbW92ZXMgdGhlIGVsZW1lbnRzIG9mICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgYGBzW2k6ajprXWBgIGZyb20gdGhlIGxpc3QgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5hcHBlbmQoeClgYCAgICAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2xlbihzKTpsZW4ocyldID0gICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW3hdYGAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5leHRlbmQoeClgYCAgICAgICAgICAgICAgICB8IHNhbWUgYXMgYGBzW2xlbihzKTpsZW4ocyldID0geGBgIHwgKDIpICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuY2xlYXIoKWBgICAgICAgICAgICAgICAgICAgfCByZW1vdmUgYWxsIGl0ZW1zIGZyb20gYGBzYGAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLmNvcHkoKWBgICAgICAgICAgICAgICAgICAgIHwgcmV0dXJuIGEgc2hhbGxvdyBjb3B5IG9mIGBgc2BgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5jb3VudCh4KWBgICAgICAgICAgICAgICAgICB8IHJldHVybiBudW1iZXIgb2YgKmkqXCdzIGZvciB3aGljaCB8ICAgICAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1tpXSA9PSB4YGAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuaW5kZXgoeFssIGlbLCBqXV0pYGAgICAgICAgfCByZXR1cm4gc21hbGxlc3QgKmsqIHN1Y2ggdGhhdCAgICB8ICgzKSAgICAgICAgICAgICAgICAgICB8XG58ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IGBgc1trXSA9PSB4YGAgYW5kIGBgaSA8PSBrIDwgamBgIHwgICAgICAgICAgICAgICAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xufCBgYHMuaW5zZXJ0KGksIHgpYGAgICAgICAgICAgICAgfCBzYW1lIGFzIGBgc1tpOmldID0gW3hdYGAgICAgICAgICB8ICg0KSAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnBvcChbaV0pYGAgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYHggPSBzW2ldOyBkZWwgc1tpXTsgICAgfCAoNSkgICAgICAgICAgICAgICAgICAgfFxufCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCByZXR1cm4geGBgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICB8XG4rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLStcbnwgYGBzLnJlbW92ZSh4KWBgICAgICAgICAgICAgICAgIHwgc2FtZSBhcyBgYGRlbCBzW3MuaW5kZXgoeCldYGAgICAgfCAoMykgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5yZXZlcnNlKClgYCAgICAgICAgICAgICAgICB8IHJldmVyc2VzIHRoZSBpdGVtcyBvZiAqcyogaW4gICAgIHwgKDYpICAgICAgICAgICAgICAgICAgIHxcbnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgcGxhY2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgfFxuKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXG58IGBgcy5zb3J0KFtrZXlbLCByZXZlcnNlXV0pYGAgICB8IHNvcnQgdGhlIGl0ZW1zIG9mICpzKiBpbiBwbGFjZSAgIHwgKDYpLCAoNyksICg4KSAgICAgICAgIHxcbistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tK1xuXG5Ob3RlczpcblxuMS4gKnQqIG11c3QgaGF2ZSB0aGUgc2FtZSBsZW5ndGggYXMgdGhlIHNsaWNlIGl0IGlzIHJlcGxhY2luZy5cblxuMi4gKngqIGNhbiBiZSBhbnkgaXRlcmFibGUgb2JqZWN0LlxuXG4zLiBSYWlzZXMgYGBWYWx1ZUVycm9yYGAgd2hlbiAqeCogaXMgbm90IGZvdW5kIGluICpzKi4gV2hlbiBhIG5lZ2F0aXZlXG4gICBpbmRleCBpcyBwYXNzZWQgYXMgdGhlIHNlY29uZCBvciB0aGlyZCBwYXJhbWV0ZXIgdG8gdGhlIGBgaW5kZXgoKWBgXG4gICBtZXRob2QsIHRoZSBzZXF1ZW5jZSBsZW5ndGggaXMgYWRkZWQsIGFzIGZvciBzbGljZSBpbmRpY2VzLiAgSWYgaXRcbiAgIGlzIHN0aWxsIG5lZ2F0aXZlLCBpdCBpcyB0cnVuY2F0ZWQgdG8gemVybywgYXMgZm9yIHNsaWNlIGluZGljZXMuXG5cbjQuIFdoZW4gYSBuZWdhdGl2ZSBpbmRleCBpcyBwYXNzZWQgYXMgdGhlIGZpcnN0IHBhcmFtZXRlciB0byB0aGVcbiAgIGBgaW5zZXJ0KClgYCBtZXRob2QsIHRoZSBzZXF1ZW5jZSBsZW5ndGggaXMgYWRkZWQsIGFzIGZvciBzbGljZVxuICAgaW5kaWNlcy4gIElmIGl0IGlzIHN0aWxsIG5lZ2F0aXZlLCBpdCBpcyB0cnVuY2F0ZWQgdG8gemVybywgYXMgZm9yXG4gICBzbGljZSBpbmRpY2VzLlxuXG41LiBUaGUgb3B0aW9uYWwgYXJndW1lbnQgKmkqIGRlZmF1bHRzIHRvIGBgLTFgYCwgc28gdGhhdCBieSBkZWZhdWx0XG4gICB0aGUgbGFzdCBpdGVtIGlzIHJlbW92ZWQgYW5kIHJldHVybmVkLlxuXG42LiBUaGUgYGBzb3J0KClgYCBhbmQgYGByZXZlcnNlKClgYCBtZXRob2RzIG1vZGlmeSB0aGUgc2VxdWVuY2UgaW5cbiAgIHBsYWNlIGZvciBlY29ub215IG9mIHNwYWNlIHdoZW4gc29ydGluZyBvciByZXZlcnNpbmcgYSBsYXJnZVxuICAgc2VxdWVuY2UuICBUbyByZW1pbmQgeW91IHRoYXQgdGhleSBvcGVyYXRlIGJ5IHNpZGUgZWZmZWN0LCB0aGV5XG4gICBkb25cJ3QgcmV0dXJuIHRoZSBzb3J0ZWQgb3IgcmV2ZXJzZWQgc2VxdWVuY2UuXG5cbjcuIFRoZSBgYHNvcnQoKWBgIG1ldGhvZCB0YWtlcyBvcHRpb25hbCBhcmd1bWVudHMgZm9yIGNvbnRyb2xsaW5nIHRoZVxuICAgY29tcGFyaXNvbnMuICBFYWNoIG11c3QgYmUgc3BlY2lmaWVkIGFzIGEga2V5d29yZCBhcmd1bWVudC5cblxuICAgKmtleSogc3BlY2lmaWVzIGEgZnVuY3Rpb24gb2Ygb25lIGFyZ3VtZW50IHRoYXQgaXMgdXNlZCB0byBleHRyYWN0XG4gICBhIGNvbXBhcmlzb24ga2V5IGZyb20gZWFjaCBsaXN0IGVsZW1lbnQ6IGBga2V5PXN0ci5sb3dlcmBgLiAgVGhlXG4gICBkZWZhdWx0IHZhbHVlIGlzIGBgTm9uZWBgLiBVc2UgYGBmdW5jdG9vbHMuY21wX3RvX2tleSgpYGAgdG9cbiAgIGNvbnZlcnQgYW4gb2xkLXN0eWxlICpjbXAqIGZ1bmN0aW9uIHRvIGEgKmtleSogZnVuY3Rpb24uXG5cbiAgICpyZXZlcnNlKiBpcyBhIGJvb2xlYW4gdmFsdWUuICBJZiBzZXQgdG8gYGBUcnVlYGAsIHRoZW4gdGhlIGxpc3RcbiAgIGVsZW1lbnRzIGFyZSBzb3J0ZWQgYXMgaWYgZWFjaCBjb21wYXJpc29uIHdlcmUgcmV2ZXJzZWQuXG5cbiAgIFRoZSBgYHNvcnQoKWBgIG1ldGhvZCBpcyBndWFyYW50ZWVkIHRvIGJlIHN0YWJsZS4gIEEgc29ydCBpcyBzdGFibGVcbiAgIGlmIGl0IGd1YXJhbnRlZXMgbm90IHRvIGNoYW5nZSB0aGUgcmVsYXRpdmUgb3JkZXIgb2YgZWxlbWVudHMgdGhhdFxuICAgY29tcGFyZSBlcXVhbCAtLS0gdGhpcyBpcyBoZWxwZnVsIGZvciBzb3J0aW5nIGluIG11bHRpcGxlIHBhc3Nlc1xuICAgKGZvciBleGFtcGxlLCBzb3J0IGJ5IGRlcGFydG1lbnQsIHRoZW4gYnkgc2FsYXJ5IGdyYWRlKS5cblxuICAgKipDUHl0aG9uIGltcGxlbWVudGF0aW9uIGRldGFpbDoqKiBXaGlsZSBhIGxpc3QgaXMgYmVpbmcgc29ydGVkLFxuICAgdGhlIGVmZmVjdCBvZiBhdHRlbXB0aW5nIHRvIG11dGF0ZSwgb3IgZXZlbiBpbnNwZWN0LCB0aGUgbGlzdCBpc1xuICAgdW5kZWZpbmVkLiAgVGhlIEMgaW1wbGVtZW50YXRpb24gb2YgUHl0aG9uIG1ha2VzIHRoZSBsaXN0IGFwcGVhclxuICAgZW1wdHkgZm9yIHRoZSBkdXJhdGlvbiwgYW5kIHJhaXNlcyBgYFZhbHVlRXJyb3JgYCBpZiBpdCBjYW4gZGV0ZWN0XG4gICB0aGF0IHRoZSBsaXN0IGhhcyBiZWVuIG11dGF0ZWQgZHVyaW5nIGEgc29ydC5cblxuOC4gYGBzb3J0KClgYCBpcyBub3Qgc3VwcG9ydGVkIGJ5IGBgYnl0ZWFycmF5YGAgb2JqZWN0cy5cblxuICAgICAgTmV3IGluIHZlcnNpb24gMy4zOiBgYGNsZWFyKClgYCBhbmQgYGBjb3B5KClgYCBtZXRob2RzLlxuJywKICAndW5hcnknOiAnXG5VbmFyeSBhcml0aG1ldGljIGFuZCBiaXR3aXNlIG9wZXJhdGlvbnNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5BbGwgdW5hcnkgYXJpdGhtZXRpYyBhbmQgYml0d2lzZSBvcGVyYXRpb25zIGhhdmUgdGhlIHNhbWUgcHJpb3JpdHk6XG5cbiAgIHVfZXhwciA6Oj0gcG93ZXIgfCAiLSIgdV9leHByIHwgIisiIHVfZXhwciB8ICJ+IiB1X2V4cHJcblxuVGhlIHVuYXJ5IGBgLWBgIChtaW51cykgb3BlcmF0b3IgeWllbGRzIHRoZSBuZWdhdGlvbiBvZiBpdHMgbnVtZXJpY1xuYXJndW1lbnQuXG5cblRoZSB1bmFyeSBgYCtgYCAocGx1cykgb3BlcmF0b3IgeWllbGRzIGl0cyBudW1lcmljIGFyZ3VtZW50IHVuY2hhbmdlZC5cblxuVGhlIHVuYXJ5IGBgfmBgIChpbnZlcnQpIG9wZXJhdG9yIHlpZWxkcyB0aGUgYml0d2lzZSBpbnZlcnNpb24gb2YgaXRzXG5pbnRlZ2VyIGFyZ3VtZW50LiAgVGhlIGJpdHdpc2UgaW52ZXJzaW9uIG9mIGBgeGBgIGlzIGRlZmluZWQgYXNcbmBgLSh4KzEpYGAuICBJdCBvbmx5IGFwcGxpZXMgdG8gaW50ZWdyYWwgbnVtYmVycy5cblxuSW4gYWxsIHRocmVlIGNhc2VzLCBpZiB0aGUgYXJndW1lbnQgZG9lcyBub3QgaGF2ZSB0aGUgcHJvcGVyIHR5cGUsIGFcbmBgVHlwZUVycm9yYGAgZXhjZXB0aW9uIGlzIHJhaXNlZC5cbicsCiAgJ3doaWxlJzogJ1xuVGhlIGBgd2hpbGVgYCBzdGF0ZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKioqXG5cblRoZSBgYHdoaWxlYGAgc3RhdGVtZW50IGlzIHVzZWQgZm9yIHJlcGVhdGVkIGV4ZWN1dGlvbiBhcyBsb25nIGFzIGFuXG5leHByZXNzaW9uIGlzIHRydWU6XG5cbiAgIHdoaWxlX3N0bXQgOjo9ICJ3aGlsZSIgZXhwcmVzc2lvbiAiOiIgc3VpdGVcbiAgICAgICAgICAgICAgICAgIFsiZWxzZSIgIjoiIHN1aXRlXVxuXG5UaGlzIHJlcGVhdGVkbHkgdGVzdHMgdGhlIGV4cHJlc3Npb24gYW5kLCBpZiBpdCBpcyB0cnVlLCBleGVjdXRlcyB0aGVcbmZpcnN0IHN1aXRlOyBpZiB0aGUgZXhwcmVzc2lvbiBpcyBmYWxzZSAod2hpY2ggbWF5IGJlIHRoZSBmaXJzdCB0aW1lXG5pdCBpcyB0ZXN0ZWQpIHRoZSBzdWl0ZSBvZiB0aGUgYGBlbHNlYGAgY2xhdXNlLCBpZiBwcmVzZW50LCBpc1xuZXhlY3V0ZWQgYW5kIHRoZSBsb29wIHRlcm1pbmF0ZXMuXG5cbkEgYGBicmVha2BgIHN0YXRlbWVudCBleGVjdXRlZCBpbiB0aGUgZmlyc3Qgc3VpdGUgdGVybWluYXRlcyB0aGUgbG9vcFxud2l0aG91dCBleGVjdXRpbmcgdGhlIGBgZWxzZWBgIGNsYXVzZVwncyBzdWl0ZS4gIEEgYGBjb250aW51ZWBgXG5zdGF0ZW1lbnQgZXhlY3V0ZWQgaW4gdGhlIGZpcnN0IHN1aXRlIHNraXBzIHRoZSByZXN0IG9mIHRoZSBzdWl0ZSBhbmRcbmdvZXMgYmFjayB0byB0ZXN0aW5nIHRoZSBleHByZXNzaW9uLlxuJywKICAnd2l0aCc6ICdcblRoZSBgYHdpdGhgYCBzdGF0ZW1lbnRcbioqKioqKioqKioqKioqKioqKioqKipcblxuVGhlIGBgd2l0aGBgIHN0YXRlbWVudCBpcyB1c2VkIHRvIHdyYXAgdGhlIGV4ZWN1dGlvbiBvZiBhIGJsb2NrIHdpdGhcbm1ldGhvZHMgZGVmaW5lZCBieSBhIGNvbnRleHQgbWFuYWdlciAoc2VlIHNlY3Rpb24gKldpdGggU3RhdGVtZW50XG5Db250ZXh0IE1hbmFnZXJzKikuIFRoaXMgYWxsb3dzIGNvbW1vblxuYGB0cnlgYC4uLmBgZXhjZXB0YGAuLi5gYGZpbmFsbHlgYCB1c2FnZSBwYXR0ZXJucyB0byBiZSBlbmNhcHN1bGF0ZWRcbmZvciBjb252ZW5pZW50IHJldXNlLlxuXG4gICB3aXRoX3N0bXQgOjo9ICJ3aXRoIiB3aXRoX2l0ZW0gKCIsIiB3aXRoX2l0ZW0pKiAiOiIgc3VpdGVcbiAgIHdpdGhfaXRlbSA6Oj0gZXhwcmVzc2lvbiBbImFzIiB0YXJnZXRdXG5cblRoZSBleGVjdXRpb24gb2YgdGhlIGBgd2l0aGBgIHN0YXRlbWVudCB3aXRoIG9uZSAiaXRlbSIgcHJvY2VlZHMgYXNcbmZvbGxvd3M6XG5cbjEuIFRoZSBjb250ZXh0IGV4cHJlc3Npb24gKHRoZSBleHByZXNzaW9uIGdpdmVuIGluIHRoZSBgYHdpdGhfaXRlbWBgKVxuICAgaXMgZXZhbHVhdGVkIHRvIG9idGFpbiBhIGNvbnRleHQgbWFuYWdlci5cblxuMi4gVGhlIGNvbnRleHQgbWFuYWdlclwncyBgYF9fZXhpdF9fKClgYCBpcyBsb2FkZWQgZm9yIGxhdGVyIHVzZS5cblxuMy4gVGhlIGNvbnRleHQgbWFuYWdlclwncyBgYF9fZW50ZXJfXygpYGAgbWV0aG9kIGlzIGludm9rZWQuXG5cbjQuIElmIGEgdGFyZ2V0IHdhcyBpbmNsdWRlZCBpbiB0aGUgYGB3aXRoYGAgc3RhdGVtZW50LCB0aGUgcmV0dXJuXG4gICB2YWx1ZSBmcm9tIGBgX19lbnRlcl9fKClgYCBpcyBhc3NpZ25lZCB0byBpdC5cblxuICAgTm90ZTogVGhlIGBgd2l0aGBgIHN0YXRlbWVudCBndWFyYW50ZWVzIHRoYXQgaWYgdGhlIGBgX19lbnRlcl9fKClgYFxuICAgICBtZXRob2QgcmV0dXJucyB3aXRob3V0IGFuIGVycm9yLCB0aGVuIGBgX19leGl0X18oKWBgIHdpbGwgYWx3YXlzXG4gICAgIGJlIGNhbGxlZC4gVGh1cywgaWYgYW4gZXJyb3Igb2NjdXJzIGR1cmluZyB0aGUgYXNzaWdubWVudCB0byB0aGVcbiAgICAgdGFyZ2V0IGxpc3QsIGl0IHdpbGwgYmUgdHJlYXRlZCB0aGUgc2FtZSBhcyBhbiBlcnJvciBvY2N1cnJpbmdcbiAgICAgd2l0aGluIHRoZSBzdWl0ZSB3b3VsZCBiZS4gU2VlIHN0ZXAgNiBiZWxvdy5cblxuNS4gVGhlIHN1aXRlIGlzIGV4ZWN1dGVkLlxuXG42LiBUaGUgY29udGV4dCBtYW5hZ2VyXCdzIGBgX19leGl0X18oKWBgIG1ldGhvZCBpcyBpbnZva2VkLiAgSWYgYW5cbiAgIGV4Y2VwdGlvbiBjYXVzZWQgdGhlIHN1aXRlIHRvIGJlIGV4aXRlZCwgaXRzIHR5cGUsIHZhbHVlLCBhbmRcbiAgIHRyYWNlYmFjayBhcmUgcGFzc2VkIGFzIGFyZ3VtZW50cyB0byBgYF9fZXhpdF9fKClgYC4gT3RoZXJ3aXNlLFxuICAgdGhyZWUgYGBOb25lYGAgYXJndW1lbnRzIGFyZSBzdXBwbGllZC5cblxuICAgSWYgdGhlIHN1aXRlIHdhcyBleGl0ZWQgZHVlIHRvIGFuIGV4Y2VwdGlvbiwgYW5kIHRoZSByZXR1cm4gdmFsdWVcbiAgIGZyb20gdGhlIGBgX19leGl0X18oKWBgIG1ldGhvZCB3YXMgZmFsc2UsIHRoZSBleGNlcHRpb24gaXNcbiAgIHJlcmFpc2VkLiAgSWYgdGhlIHJldHVybiB2YWx1ZSB3YXMgdHJ1ZSwgdGhlIGV4Y2VwdGlvbiBpc1xuICAgc3VwcHJlc3NlZCwgYW5kIGV4ZWN1dGlvbiBjb250aW51ZXMgd2l0aCB0aGUgc3RhdGVtZW50IGZvbGxvd2luZ1xuICAgdGhlIGBgd2l0aGBgIHN0YXRlbWVudC5cblxuICAgSWYgdGhlIHN1aXRlIHdhcyBleGl0ZWQgZm9yIGFueSByZWFzb24gb3RoZXIgdGhhbiBhbiBleGNlcHRpb24sIHRoZVxuICAgcmV0dXJuIHZhbHVlIGZyb20gYGBfX2V4aXRfXygpYGAgaXMgaWdub3JlZCwgYW5kIGV4ZWN1dGlvbiBwcm9jZWVkc1xuICAgYXQgdGhlIG5vcm1hbCBsb2NhdGlvbiBmb3IgdGhlIGtpbmQgb2YgZXhpdCB0aGF0IHdhcyB0YWtlbi5cblxuV2l0aCBtb3JlIHRoYW4gb25lIGl0ZW0sIHRoZSBjb250ZXh0IG1hbmFnZXJzIGFyZSBwcm9jZXNzZWQgYXMgaWZcbm11bHRpcGxlIGBgd2l0aGBgIHN0YXRlbWVudHMgd2VyZSBuZXN0ZWQ6XG5cbiAgIHdpdGggQSgpIGFzIGEsIEIoKSBhcyBiOlxuICAgICAgIHN1aXRlXG5cbmlzIGVxdWl2YWxlbnQgdG9cblxuICAgd2l0aCBBKCkgYXMgYTpcbiAgICAgICB3aXRoIEIoKSBhcyBiOlxuICAgICAgICAgICBzdWl0ZVxuXG5DaGFuZ2VkIGluIHZlcnNpb24gMy4xOiBTdXBwb3J0IGZvciBtdWx0aXBsZSBjb250ZXh0IGV4cHJlc3Npb25zLlxuXG5TZWUgYWxzbzpcblxuICAgKipQRVAgMDM0MyoqIC0gVGhlICJ3aXRoIiBzdGF0ZW1lbnRcbiAgICAgIFRoZSBzcGVjaWZpY2F0aW9uLCBiYWNrZ3JvdW5kLCBhbmQgZXhhbXBsZXMgZm9yIHRoZSBQeXRob25cbiAgICAgIGBgd2l0aGBgIHN0YXRlbWVudC5cbicsCmRpZmYgLS1naXQgYS9MaWIvcXVldWUucHkgYi9MaWIvcXVldWUucHkKaW5kZXggYmVlN2VkNC4uYmE2MDhjNSAxMDA2NDQKLS0tIGEvTGliL3F1ZXVlLnB5CisrKyBiL0xpYi9xdWV1ZS5weQpAQCAtMSw0OSArMSw1NCBAQAotIiIiQSBtdWx0aS1wcm9kdWNlciwgbXVsdGktY29uc3VtZXIgcXVldWUuIiIiCisnJydBIG11bHRpLXByb2R1Y2VyLCBtdWx0aS1jb25zdW1lciBxdWV1ZS4nJycKIAotZnJvbSB0aW1lIGltcG9ydCB0aW1lIGFzIF90aW1lCiB0cnk6Ci0gICAgaW1wb3J0IHRocmVhZGluZyBhcyBfdGhyZWFkaW5nCisgICAgaW1wb3J0IHRocmVhZGluZwogZXhjZXB0IEltcG9ydEVycm9yOgotICAgIGltcG9ydCBkdW1teV90aHJlYWRpbmcgYXMgX3RocmVhZGluZworICAgIGltcG9ydCBkdW1teV90aHJlYWRpbmcgYXMgdGhyZWFkaW5nCiBmcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBkZXF1ZQotaW1wb3J0IGhlYXBxCitmcm9tIGhlYXBxIGltcG9ydCBoZWFwcHVzaCwgaGVhcHBvcAorZnJvbSB0aW1lIGltcG9ydCB0aW1lCiAKIF9fYWxsX18gPSBbJ0VtcHR5JywgJ0Z1bGwnLCAnUXVldWUnLCAnUHJpb3JpdHlRdWV1ZScsICdMaWZvUXVldWUnXQogCiBjbGFzcyBFbXB0eShFeGNlcHRpb24pOgotICAgICJFeGNlcHRpb24gcmFpc2VkIGJ5IFF1ZXVlLmdldChibG9jaz0wKS9nZXRfbm93YWl0KCkuIgorICAgICdFeGNlcHRpb24gcmFpc2VkIGJ5IFF1ZXVlLmdldChibG9jaz0wKS9nZXRfbm93YWl0KCkuJwogICAgIHBhc3MKIAogY2xhc3MgRnVsbChFeGNlcHRpb24pOgotICAgICJFeGNlcHRpb24gcmFpc2VkIGJ5IFF1ZXVlLnB1dChibG9jaz0wKS9wdXRfbm93YWl0KCkuIgorICAgICdFeGNlcHRpb24gcmFpc2VkIGJ5IFF1ZXVlLnB1dChibG9jaz0wKS9wdXRfbm93YWl0KCkuJwogICAgIHBhc3MKIAogY2xhc3MgUXVldWU6Ci0gICAgIiIiQ3JlYXRlIGEgcXVldWUgb2JqZWN0IHdpdGggYSBnaXZlbiBtYXhpbXVtIHNpemUuCisgICAgJycnQ3JlYXRlIGEgcXVldWUgb2JqZWN0IHdpdGggYSBnaXZlbiBtYXhpbXVtIHNpemUuCiAKICAgICBJZiBtYXhzaXplIGlzIDw9IDAsIHRoZSBxdWV1ZSBzaXplIGlzIGluZmluaXRlLgotICAgICIiIgorICAgICcnJworCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIG1heHNpemU9MCk6CiAgICAgICAgIHNlbGYubWF4c2l6ZSA9IG1heHNpemUKICAgICAgICAgc2VsZi5faW5pdChtYXhzaXplKQorCiAgICAgICAgICMgbXV0ZXggbXVzdCBiZSBoZWxkIHdoZW5ldmVyIHRoZSBxdWV1ZSBpcyBtdXRhdGluZy4gIEFsbCBtZXRob2RzCiAgICAgICAgICMgdGhhdCBhY3F1aXJlIG11dGV4IG11c3QgcmVsZWFzZSBpdCBiZWZvcmUgcmV0dXJuaW5nLiAgbXV0ZXgKICAgICAgICAgIyBpcyBzaGFyZWQgYmV0d2VlbiB0aGUgdGhyZWUgY29uZGl0aW9ucywgc28gYWNxdWlyaW5nIGFuZAogICAgICAgICAjIHJlbGVhc2luZyB0aGUgY29uZGl0aW9ucyBhbHNvIGFjcXVpcmVzIGFuZCByZWxlYXNlcyBtdXRleC4KLSAgICAgICAgc2VsZi5tdXRleCA9IF90aHJlYWRpbmcuTG9jaygpCisgICAgICAgIHNlbGYubXV0ZXggPSB0aHJlYWRpbmcuTG9jaygpCisKICAgICAgICAgIyBOb3RpZnkgbm90X2VtcHR5IHdoZW5ldmVyIGFuIGl0ZW0gaXMgYWRkZWQgdG8gdGhlIHF1ZXVlOyBhCiAgICAgICAgICMgdGhyZWFkIHdhaXRpbmcgdG8gZ2V0IGlzIG5vdGlmaWVkIHRoZW4uCi0gICAgICAgIHNlbGYubm90X2VtcHR5ID0gX3RocmVhZGluZy5Db25kaXRpb24oc2VsZi5tdXRleCkKKyAgICAgICAgc2VsZi5ub3RfZW1wdHkgPSB0aHJlYWRpbmcuQ29uZGl0aW9uKHNlbGYubXV0ZXgpCisKICAgICAgICAgIyBOb3RpZnkgbm90X2Z1bGwgd2hlbmV2ZXIgYW4gaXRlbSBpcyByZW1vdmVkIGZyb20gdGhlIHF1ZXVlOwogICAgICAgICAjIGEgdGhyZWFkIHdhaXRpbmcgdG8gcHV0IGlzIG5vdGlmaWVkIHRoZW4uCi0gICAgICAgIHNlbGYubm90X2Z1bGwgPSBfdGhyZWFkaW5nLkNvbmRpdGlvbihzZWxmLm11dGV4KQorICAgICAgICBzZWxmLm5vdF9mdWxsID0gdGhyZWFkaW5nLkNvbmRpdGlvbihzZWxmLm11dGV4KQorCiAgICAgICAgICMgTm90aWZ5IGFsbF90YXNrc19kb25lIHdoZW5ldmVyIHRoZSBudW1iZXIgb2YgdW5maW5pc2hlZCB0YXNrcwogICAgICAgICAjIGRyb3BzIHRvIHplcm87IHRocmVhZCB3YWl0aW5nIHRvIGpvaW4oKSBpcyBub3RpZmllZCB0byByZXN1bWUKLSAgICAgICAgc2VsZi5hbGxfdGFza3NfZG9uZSA9IF90aHJlYWRpbmcuQ29uZGl0aW9uKHNlbGYubXV0ZXgpCisgICAgICAgIHNlbGYuYWxsX3Rhc2tzX2RvbmUgPSB0aHJlYWRpbmcuQ29uZGl0aW9uKHNlbGYubXV0ZXgpCiAgICAgICAgIHNlbGYudW5maW5pc2hlZF90YXNrcyA9IDAKIAogICAgIGRlZiB0YXNrX2RvbmUoc2VsZik6Ci0gICAgICAgICIiIkluZGljYXRlIHRoYXQgYSBmb3JtZXJseSBlbnF1ZXVlZCB0YXNrIGlzIGNvbXBsZXRlLgorICAgICAgICAnJydJbmRpY2F0ZSB0aGF0IGEgZm9ybWVybHkgZW5xdWV1ZWQgdGFzayBpcyBjb21wbGV0ZS4KIAogICAgICAgICBVc2VkIGJ5IFF1ZXVlIGNvbnN1bWVyIHRocmVhZHMuICBGb3IgZWFjaCBnZXQoKSB1c2VkIHRvIGZldGNoIGEgdGFzaywKICAgICAgICAgYSBzdWJzZXF1ZW50IGNhbGwgdG8gdGFza19kb25lKCkgdGVsbHMgdGhlIHF1ZXVlIHRoYXQgdGhlIHByb2Nlc3NpbmcKQEAgLTU1LDQzICs2MCwzNSBAQAogCiAgICAgICAgIFJhaXNlcyBhIFZhbHVlRXJyb3IgaWYgY2FsbGVkIG1vcmUgdGltZXMgdGhhbiB0aGVyZSB3ZXJlIGl0ZW1zCiAgICAgICAgIHBsYWNlZCBpbiB0aGUgcXVldWUuCi0gICAgICAgICIiIgotICAgICAgICBzZWxmLmFsbF90YXNrc19kb25lLmFjcXVpcmUoKQotICAgICAgICB0cnk6CisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYuYWxsX3Rhc2tzX2RvbmU6CiAgICAgICAgICAgICB1bmZpbmlzaGVkID0gc2VsZi51bmZpbmlzaGVkX3Rhc2tzIC0gMQogICAgICAgICAgICAgaWYgdW5maW5pc2hlZCA8PSAwOgogICAgICAgICAgICAgICAgIGlmIHVuZmluaXNoZWQgPCAwOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCd0YXNrX2RvbmUoKSBjYWxsZWQgdG9vIG1hbnkgdGltZXMnKQogICAgICAgICAgICAgICAgIHNlbGYuYWxsX3Rhc2tzX2RvbmUubm90aWZ5X2FsbCgpCiAgICAgICAgICAgICBzZWxmLnVuZmluaXNoZWRfdGFza3MgPSB1bmZpbmlzaGVkCi0gICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICBzZWxmLmFsbF90YXNrc19kb25lLnJlbGVhc2UoKQogCiAgICAgZGVmIGpvaW4oc2VsZik6Ci0gICAgICAgICIiIkJsb2NrcyB1bnRpbCBhbGwgaXRlbXMgaW4gdGhlIFF1ZXVlIGhhdmUgYmVlbiBnb3R0ZW4gYW5kIHByb2Nlc3NlZC4KKyAgICAgICAgJycnQmxvY2tzIHVudGlsIGFsbCBpdGVtcyBpbiB0aGUgUXVldWUgaGF2ZSBiZWVuIGdvdHRlbiBhbmQgcHJvY2Vzc2VkLgogCiAgICAgICAgIFRoZSBjb3VudCBvZiB1bmZpbmlzaGVkIHRhc2tzIGdvZXMgdXAgd2hlbmV2ZXIgYW4gaXRlbSBpcyBhZGRlZCB0byB0aGUKICAgICAgICAgcXVldWUuIFRoZSBjb3VudCBnb2VzIGRvd24gd2hlbmV2ZXIgYSBjb25zdW1lciB0aHJlYWQgY2FsbHMgdGFza19kb25lKCkKICAgICAgICAgdG8gaW5kaWNhdGUgdGhlIGl0ZW0gd2FzIHJldHJpZXZlZCBhbmQgYWxsIHdvcmsgb24gaXQgaXMgY29tcGxldGUuCiAKICAgICAgICAgV2hlbiB0aGUgY291bnQgb2YgdW5maW5pc2hlZCB0YXNrcyBkcm9wcyB0byB6ZXJvLCBqb2luKCkgdW5ibG9ja3MuCi0gICAgICAgICIiIgotICAgICAgICBzZWxmLmFsbF90YXNrc19kb25lLmFjcXVpcmUoKQotICAgICAgICB0cnk6CisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYuYWxsX3Rhc2tzX2RvbmU6CiAgICAgICAgICAgICB3aGlsZSBzZWxmLnVuZmluaXNoZWRfdGFza3M6CiAgICAgICAgICAgICAgICAgc2VsZi5hbGxfdGFza3NfZG9uZS53YWl0KCkKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIHNlbGYuYWxsX3Rhc2tzX2RvbmUucmVsZWFzZSgpCiAKICAgICBkZWYgcXNpemUoc2VsZik6Ci0gICAgICAgICIiIlJldHVybiB0aGUgYXBwcm94aW1hdGUgc2l6ZSBvZiB0aGUgcXVldWUgKG5vdCByZWxpYWJsZSEpLiIiIgotICAgICAgICBzZWxmLm11dGV4LmFjcXVpcmUoKQotICAgICAgICBuID0gc2VsZi5fcXNpemUoKQotICAgICAgICBzZWxmLm11dGV4LnJlbGVhc2UoKQotICAgICAgICByZXR1cm4gbgorICAgICAgICAnJydSZXR1cm4gdGhlIGFwcHJveGltYXRlIHNpemUgb2YgdGhlIHF1ZXVlIChub3QgcmVsaWFibGUhKS4nJycKKyAgICAgICAgd2l0aCBzZWxmLm11dGV4OgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3FzaXplKCkKIAogICAgIGRlZiBlbXB0eShzZWxmKToKLSAgICAgICAgIiIiUmV0dXJuIFRydWUgaWYgdGhlIHF1ZXVlIGlzIGVtcHR5LCBGYWxzZSBvdGhlcndpc2UgKG5vdCByZWxpYWJsZSEpLgorICAgICAgICAnJydSZXR1cm4gVHJ1ZSBpZiB0aGUgcXVldWUgaXMgZW1wdHksIEZhbHNlIG90aGVyd2lzZSAobm90IHJlbGlhYmxlISkuCiAKICAgICAgICAgVGhpcyBtZXRob2QgaXMgbGlrZWx5IHRvIGJlIHJlbW92ZWQgYXQgc29tZSBwb2ludC4gIFVzZSBxc2l6ZSgpID09IDAKICAgICAgICAgYXMgYSBkaXJlY3Qgc3Vic3RpdHV0ZSwgYnV0IGJlIGF3YXJlIHRoYXQgZWl0aGVyIGFwcHJvYWNoIHJpc2tzIGEgcmFjZQpAQCAtMTAwLDI5ICs5NywyMyBAQAogCiAgICAgICAgIFRvIGNyZWF0ZSBjb2RlIHRoYXQgbmVlZHMgdG8gd2FpdCBmb3IgYWxsIHF1ZXVlZCB0YXNrcyB0byBiZQogICAgICAgICBjb21wbGV0ZWQsIHRoZSBwcmVmZXJyZWQgdGVjaG5pcXVlIGlzIHRvIHVzZSB0aGUgam9pbigpIG1ldGhvZC4KLQotICAgICAgICAiIiIKLSAgICAgICAgc2VsZi5tdXRleC5hY3F1aXJlKCkKLSAgICAgICAgbiA9IG5vdCBzZWxmLl9xc2l6ZSgpCi0gICAgICAgIHNlbGYubXV0ZXgucmVsZWFzZSgpCi0gICAgICAgIHJldHVybiBuCisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYubXV0ZXg6CisgICAgICAgICAgICByZXR1cm4gbm90IHNlbGYuX3FzaXplKCkKIAogICAgIGRlZiBmdWxsKHNlbGYpOgotICAgICAgICAiIiJSZXR1cm4gVHJ1ZSBpZiB0aGUgcXVldWUgaXMgZnVsbCwgRmFsc2Ugb3RoZXJ3aXNlIChub3QgcmVsaWFibGUhKS4KKyAgICAgICAgJycnUmV0dXJuIFRydWUgaWYgdGhlIHF1ZXVlIGlzIGZ1bGwsIEZhbHNlIG90aGVyd2lzZSAobm90IHJlbGlhYmxlISkuCiAKICAgICAgICAgVGhpcyBtZXRob2QgaXMgbGlrZWx5IHRvIGJlIHJlbW92ZWQgYXQgc29tZSBwb2ludC4gIFVzZSBxc2l6ZSgpID49IG4KICAgICAgICAgYXMgYSBkaXJlY3Qgc3Vic3RpdHV0ZSwgYnV0IGJlIGF3YXJlIHRoYXQgZWl0aGVyIGFwcHJvYWNoIHJpc2tzIGEgcmFjZQogICAgICAgICBjb25kaXRpb24gd2hlcmUgYSBxdWV1ZSBjYW4gc2hyaW5rIGJlZm9yZSB0aGUgcmVzdWx0IG9mIGZ1bGwoKSBvcgogICAgICAgICBxc2l6ZSgpIGNhbiBiZSB1c2VkLgotCi0gICAgICAgICIiIgotICAgICAgICBzZWxmLm11dGV4LmFjcXVpcmUoKQotICAgICAgICBuID0gMCA8IHNlbGYubWF4c2l6ZSA8PSBzZWxmLl9xc2l6ZSgpCi0gICAgICAgIHNlbGYubXV0ZXgucmVsZWFzZSgpCi0gICAgICAgIHJldHVybiBuCisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYubXV0ZXg6CisgICAgICAgICAgICByZXR1cm4gMCA8IHNlbGYubWF4c2l6ZSA8PSBzZWxmLl9xc2l6ZSgpCiAKICAgICBkZWYgcHV0KHNlbGYsIGl0ZW0sIGJsb2NrPVRydWUsIHRpbWVvdXQ9Tm9uZSk6Ci0gICAgICAgICIiIlB1dCBhbiBpdGVtIGludG8gdGhlIHF1ZXVlLgorICAgICAgICAnJydQdXQgYW4gaXRlbSBpbnRvIHRoZSBxdWV1ZS4KIAogICAgICAgICBJZiBvcHRpb25hbCBhcmdzICdibG9jaycgaXMgdHJ1ZSBhbmQgJ3RpbWVvdXQnIGlzIE5vbmUgKHRoZSBkZWZhdWx0KSwKICAgICAgICAgYmxvY2sgaWYgbmVjZXNzYXJ5IHVudGlsIGEgZnJlZSBzbG90IGlzIGF2YWlsYWJsZS4gSWYgJ3RpbWVvdXQnIGlzCkBAIC0xMzEsOSArMTIyLDggQEAKICAgICAgICAgT3RoZXJ3aXNlICgnYmxvY2snIGlzIGZhbHNlKSwgcHV0IGFuIGl0ZW0gb24gdGhlIHF1ZXVlIGlmIGEgZnJlZSBzbG90CiAgICAgICAgIGlzIGltbWVkaWF0ZWx5IGF2YWlsYWJsZSwgZWxzZSByYWlzZSB0aGUgRnVsbCBleGNlcHRpb24gKCd0aW1lb3V0JwogICAgICAgICBpcyBpZ25vcmVkIGluIHRoYXQgY2FzZSkuCi0gICAgICAgICIiIgotICAgICAgICBzZWxmLm5vdF9mdWxsLmFjcXVpcmUoKQotICAgICAgICB0cnk6CisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYubm90X2Z1bGw6CiAgICAgICAgICAgICBpZiBzZWxmLm1heHNpemUgPiAwOgogICAgICAgICAgICAgICAgIGlmIG5vdCBibG9jazoKICAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi5fcXNpemUoKSA+PSBzZWxmLm1heHNpemU6CkBAIC0xNDQsMjggKzEzNCwxOCBAQAogICAgICAgICAgICAgICAgIGVsaWYgdGltZW91dCA8IDA6CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIid0aW1lb3V0JyBtdXN0IGJlIGEgcG9zaXRpdmUgbnVtYmVyIikKICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICBlbmR0aW1lID0gX3RpbWUoKSArIHRpbWVvdXQKKyAgICAgICAgICAgICAgICAgICAgZW5kdGltZSA9IHRpbWUoKSArIHRpbWVvdXQKICAgICAgICAgICAgICAgICAgICAgd2hpbGUgc2VsZi5fcXNpemUoKSA+PSBzZWxmLm1heHNpemU6Ci0gICAgICAgICAgICAgICAgICAgICAgICByZW1haW5pbmcgPSBlbmR0aW1lIC0gX3RpbWUoKQorICAgICAgICAgICAgICAgICAgICAgICAgcmVtYWluaW5nID0gZW5kdGltZSAtIHRpbWUoKQogICAgICAgICAgICAgICAgICAgICAgICAgaWYgcmVtYWluaW5nIDw9IDAuMDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBGdWxsCiAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLm5vdF9mdWxsLndhaXQocmVtYWluaW5nKQogICAgICAgICAgICAgc2VsZi5fcHV0KGl0ZW0pCiAgICAgICAgICAgICBzZWxmLnVuZmluaXNoZWRfdGFza3MgKz0gMQogICAgICAgICAgICAgc2VsZi5ub3RfZW1wdHkubm90aWZ5KCkKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIHNlbGYubm90X2Z1bGwucmVsZWFzZSgpCi0KLSAgICBkZWYgcHV0X25vd2FpdChzZWxmLCBpdGVtKToKLSAgICAgICAgIiIiUHV0IGFuIGl0ZW0gaW50byB0aGUgcXVldWUgd2l0aG91dCBibG9ja2luZy4KLQotICAgICAgICBPbmx5IGVucXVldWUgdGhlIGl0ZW0gaWYgYSBmcmVlIHNsb3QgaXMgaW1tZWRpYXRlbHkgYXZhaWxhYmxlLgotICAgICAgICBPdGhlcndpc2UgcmFpc2UgdGhlIEZ1bGwgZXhjZXB0aW9uLgotICAgICAgICAiIiIKLSAgICAgICAgcmV0dXJuIHNlbGYucHV0KGl0ZW0sIEZhbHNlKQogCiAgICAgZGVmIGdldChzZWxmLCBibG9jaz1UcnVlLCB0aW1lb3V0PU5vbmUpOgotICAgICAgICAiIiJSZW1vdmUgYW5kIHJldHVybiBhbiBpdGVtIGZyb20gdGhlIHF1ZXVlLgorICAgICAgICAnJydSZW1vdmUgYW5kIHJldHVybiBhbiBpdGVtIGZyb20gdGhlIHF1ZXVlLgogCiAgICAgICAgIElmIG9wdGlvbmFsIGFyZ3MgJ2Jsb2NrJyBpcyB0cnVlIGFuZCAndGltZW91dCcgaXMgTm9uZSAodGhlIGRlZmF1bHQpLAogICAgICAgICBibG9jayBpZiBuZWNlc3NhcnkgdW50aWwgYW4gaXRlbSBpcyBhdmFpbGFibGUuIElmICd0aW1lb3V0JyBpcwpAQCAtMTc0LDkgKzE1NCw4IEBACiAgICAgICAgIE90aGVyd2lzZSAoJ2Jsb2NrJyBpcyBmYWxzZSksIHJldHVybiBhbiBpdGVtIGlmIG9uZSBpcyBpbW1lZGlhdGVseQogICAgICAgICBhdmFpbGFibGUsIGVsc2UgcmFpc2UgdGhlIEVtcHR5IGV4Y2VwdGlvbiAoJ3RpbWVvdXQnIGlzIGlnbm9yZWQKICAgICAgICAgaW4gdGhhdCBjYXNlKS4KLSAgICAgICAgIiIiCi0gICAgICAgIHNlbGYubm90X2VtcHR5LmFjcXVpcmUoKQotICAgICAgICB0cnk6CisgICAgICAgICcnJworICAgICAgICB3aXRoIHNlbGYubm90X2VtcHR5OgogICAgICAgICAgICAgaWYgbm90IGJsb2NrOgogICAgICAgICAgICAgICAgIGlmIG5vdCBzZWxmLl9xc2l6ZSgpOgogICAgICAgICAgICAgICAgICAgICByYWlzZSBFbXB0eQpAQCAtMTg2LDI1ICsxNjUsMzEgQEAKICAgICAgICAgICAgIGVsaWYgdGltZW91dCA8IDA6CiAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiJ3RpbWVvdXQnIG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXIiKQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBlbmR0aW1lID0gX3RpbWUoKSArIHRpbWVvdXQKKyAgICAgICAgICAgICAgICBlbmR0aW1lID0gdGltZSgpICsgdGltZW91dAogICAgICAgICAgICAgICAgIHdoaWxlIG5vdCBzZWxmLl9xc2l6ZSgpOgotICAgICAgICAgICAgICAgICAgICByZW1haW5pbmcgPSBlbmR0aW1lIC0gX3RpbWUoKQorICAgICAgICAgICAgICAgICAgICByZW1haW5pbmcgPSBlbmR0aW1lIC0gdGltZSgpCiAgICAgICAgICAgICAgICAgICAgIGlmIHJlbWFpbmluZyA8PSAwLjA6CiAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZSBFbXB0eQogICAgICAgICAgICAgICAgICAgICBzZWxmLm5vdF9lbXB0eS53YWl0KHJlbWFpbmluZykKICAgICAgICAgICAgIGl0ZW0gPSBzZWxmLl9nZXQoKQogICAgICAgICAgICAgc2VsZi5ub3RfZnVsbC5ub3RpZnkoKQogICAgICAgICAgICAgcmV0dXJuIGl0ZW0KLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIHNlbGYubm90X2VtcHR5LnJlbGVhc2UoKQorCisgICAgZGVmIHB1dF9ub3dhaXQoc2VsZiwgaXRlbSk6CisgICAgICAgICcnJ1B1dCBhbiBpdGVtIGludG8gdGhlIHF1ZXVlIHdpdGhvdXQgYmxvY2tpbmcuCisKKyAgICAgICAgT25seSBlbnF1ZXVlIHRoZSBpdGVtIGlmIGEgZnJlZSBzbG90IGlzIGltbWVkaWF0ZWx5IGF2YWlsYWJsZS4KKyAgICAgICAgT3RoZXJ3aXNlIHJhaXNlIHRoZSBGdWxsIGV4Y2VwdGlvbi4KKyAgICAgICAgJycnCisgICAgICAgIHJldHVybiBzZWxmLnB1dChpdGVtLCBibG9jaz1GYWxzZSkKIAogICAgIGRlZiBnZXRfbm93YWl0KHNlbGYpOgotICAgICAgICAiIiJSZW1vdmUgYW5kIHJldHVybiBhbiBpdGVtIGZyb20gdGhlIHF1ZXVlIHdpdGhvdXQgYmxvY2tpbmcuCisgICAgICAgICcnJ1JlbW92ZSBhbmQgcmV0dXJuIGFuIGl0ZW0gZnJvbSB0aGUgcXVldWUgd2l0aG91dCBibG9ja2luZy4KIAogICAgICAgICBPbmx5IGdldCBhbiBpdGVtIGlmIG9uZSBpcyBpbW1lZGlhdGVseSBhdmFpbGFibGUuIE90aGVyd2lzZQogICAgICAgICByYWlzZSB0aGUgRW1wdHkgZXhjZXB0aW9uLgotICAgICAgICAiIiIKLSAgICAgICAgcmV0dXJuIHNlbGYuZ2V0KEZhbHNlKQorICAgICAgICAnJycKKyAgICAgICAgcmV0dXJuIHNlbGYuZ2V0KGJsb2NrPUZhbHNlKQogCiAgICAgIyBPdmVycmlkZSB0aGVzZSBtZXRob2RzIHRvIGltcGxlbWVudCBvdGhlciBxdWV1ZSBvcmdhbml6YXRpb25zCiAgICAgIyAoZS5nLiBzdGFjayBvciBwcmlvcml0eSBxdWV1ZSkuCkBAIC0yMTQsNyArMTk5LDcgQEAKICAgICBkZWYgX2luaXQoc2VsZiwgbWF4c2l6ZSk6CiAgICAgICAgIHNlbGYucXVldWUgPSBkZXF1ZSgpCiAKLSAgICBkZWYgX3FzaXplKHNlbGYsIGxlbj1sZW4pOgorICAgIGRlZiBfcXNpemUoc2VsZik6CiAgICAgICAgIHJldHVybiBsZW4oc2VsZi5xdWV1ZSkKIAogICAgICMgUHV0IGEgbmV3IGl0ZW0gaW4gdGhlIHF1ZXVlCkBAIC0yMzUsMTMgKzIyMCwxMyBAQAogICAgIGRlZiBfaW5pdChzZWxmLCBtYXhzaXplKToKICAgICAgICAgc2VsZi5xdWV1ZSA9IFtdCiAKLSAgICBkZWYgX3FzaXplKHNlbGYsIGxlbj1sZW4pOgorICAgIGRlZiBfcXNpemUoc2VsZik6CiAgICAgICAgIHJldHVybiBsZW4oc2VsZi5xdWV1ZSkKIAotICAgIGRlZiBfcHV0KHNlbGYsIGl0ZW0sIGhlYXBwdXNoPWhlYXBxLmhlYXBwdXNoKToKKyAgICBkZWYgX3B1dChzZWxmLCBpdGVtKToKICAgICAgICAgaGVhcHB1c2goc2VsZi5xdWV1ZSwgaXRlbSkKIAotICAgIGRlZiBfZ2V0KHNlbGYsIGhlYXBwb3A9aGVhcHEuaGVhcHBvcCk6CisgICAgZGVmIF9nZXQoc2VsZik6CiAgICAgICAgIHJldHVybiBoZWFwcG9wKHNlbGYucXVldWUpCiAKIApAQCAtMjUxLDcgKzIzNiw3IEBACiAgICAgZGVmIF9pbml0KHNlbGYsIG1heHNpemUpOgogICAgICAgICBzZWxmLnF1ZXVlID0gW10KIAotICAgIGRlZiBfcXNpemUoc2VsZiwgbGVuPWxlbik6CisgICAgZGVmIF9xc2l6ZShzZWxmKToKICAgICAgICAgcmV0dXJuIGxlbihzZWxmLnF1ZXVlKQogCiAgICAgZGVmIF9wdXQoc2VsZiwgaXRlbSk6CmRpZmYgLS1naXQgYS9MaWIvcmFuZG9tLnB5IGIvTGliL3JhbmRvbS5weQppbmRleCBkNDAwNmU1Li5hYzgwY2E3IDEwMDY0NAotLS0gYS9MaWIvcmFuZG9tLnB5CisrKyBiL0xpYi9yYW5kb20ucHkKQEAgLTQxLDcgKzQxLDcgQEAKIGZyb20gbWF0aCBpbXBvcnQgbG9nIGFzIF9sb2csIGV4cCBhcyBfZXhwLCBwaSBhcyBfcGksIGUgYXMgX2UsIGNlaWwgYXMgX2NlaWwKIGZyb20gbWF0aCBpbXBvcnQgc3FydCBhcyBfc3FydCwgYWNvcyBhcyBfYWNvcywgY29zIGFzIF9jb3MsIHNpbiBhcyBfc2luCiBmcm9tIG9zIGltcG9ydCB1cmFuZG9tIGFzIF91cmFuZG9tCi1mcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBTZXQgYXMgX1NldCwgU2VxdWVuY2UgYXMgX1NlcXVlbmNlCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgU2V0IGFzIF9TZXQsIFNlcXVlbmNlIGFzIF9TZXF1ZW5jZQogZnJvbSBoYXNobGliIGltcG9ydCBzaGE1MTIgYXMgX3NoYTUxMgogCiBfX2FsbF9fID0gWyJSYW5kb20iLCJzZWVkIiwicmFuZG9tIiwidW5pZm9ybSIsInJhbmRpbnQiLCJjaG9pY2UiLCJzYW1wbGUiLApkaWZmIC0tZ2l0IGEvTGliL3JlLnB5IGIvTGliL3JlLnB5CmluZGV4IDRmZTNiZDguLjIyOGM0ZjEgMTAwNjQ0Ci0tLSBhL0xpYi9yZS5weQorKysgYi9MaWIvcmUucHkKQEAgLTIwNyw3ICsyMDcsNyBAQAogCiBkZWYgcHVyZ2UoKToKICAgICAiQ2xlYXIgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbiBjYWNoZXMiCi0gICAgX2NvbXBpbGVfdHlwZWQuY2FjaGVfY2xlYXIoKQorICAgIF9jb21waWxlLmNhY2hlX2NsZWFyKCkKICAgICBfY29tcGlsZV9yZXBsLmNhY2hlX2NsZWFyKCkKIAogZGVmIHRlbXBsYXRlKHBhdHRlcm4sIGZsYWdzPTApOgpAQCAtMjE1LDEyICsyMTUsMTQgQEAKICAgICByZXR1cm4gX2NvbXBpbGUocGF0dGVybiwgZmxhZ3N8VCkKIAogX2FscGhhbnVtX3N0ciA9IGZyb3plbnNldCgKLSAgICAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY3ODkwIikKKyAgICAiX2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5MCIpCiBfYWxwaGFudW1fYnl0ZXMgPSBmcm96ZW5zZXQoCi0gICAgYiJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OTAiKQorICAgIGIiX2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5MCIpCiAKIGRlZiBlc2NhcGUocGF0dGVybik6Ci0gICAgIkVzY2FwZSBhbGwgbm9uLWFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGluIHBhdHRlcm4uIgorICAgICIiIgorICAgIEVzY2FwZSBhbGwgdGhlIGNoYXJhY3RlcnMgaW4gcGF0dGVybiBleGNlcHQgQVNDSUkgbGV0dGVycywgbnVtYmVycyBhbmQgJ18nLgorICAgICIiIgogICAgIGlmIGlzaW5zdGFuY2UocGF0dGVybiwgc3RyKToKICAgICAgICAgYWxwaGFudW0gPSBfYWxwaGFudW1fc3RyCiAgICAgICAgIHMgPSBsaXN0KHBhdHRlcm4pCkBAIC0yNTEsMTEgKzI1Myw4IEBACiAKIF9wYXR0ZXJuX3R5cGUgPSB0eXBlKHNyZV9jb21waWxlLmNvbXBpbGUoIiIsIDApKQogCitAZnVuY3Rvb2xzLmxydV9jYWNoZShtYXhzaXplPTUwMCwgdHlwZWQ9VHJ1ZSkKIGRlZiBfY29tcGlsZShwYXR0ZXJuLCBmbGFncyk6Ci0gICAgcmV0dXJuIF9jb21waWxlX3R5cGVkKHR5cGUocGF0dGVybiksIHBhdHRlcm4sIGZsYWdzKQotCi1AZnVuY3Rvb2xzLmxydV9jYWNoZShtYXhzaXplPTUwMCkKLWRlZiBfY29tcGlsZV90eXBlZCh0ZXh0X2J5dGVzX3R5cGUsIHBhdHRlcm4sIGZsYWdzKToKICAgICAjIGludGVybmFsOiBjb21waWxlIHBhdHRlcm4KICAgICBpZiBpc2luc3RhbmNlKHBhdHRlcm4sIF9wYXR0ZXJuX3R5cGUpOgogICAgICAgICBpZiBmbGFnczoKZGlmZiAtLWdpdCBhL0xpYi9zY2hlZC5weSBiL0xpYi9zY2hlZC5weQppbmRleCBhMTE5ODkyLi5iZDFmNDI3IDEwMDY0NAotLS0gYS9MaWIvc2NoZWQucHkKKysrIGIvTGliL3NjaGVkLnB5CkBAIC0yOCwxMiArMjgsMTcgQEAKICMgWFhYIGluc3RlYWQgb2YgaGF2aW5nIHRvIGRlZmluZSBhIG1vZHVsZSBvciBjbGFzcyBqdXN0IHRvIGhvbGQKICMgWFhYIHRoZSBnbG9iYWwgc3RhdGUgb2YgeW91ciBwYXJ0aWN1bGFyIHRpbWUgYW5kIGRlbGF5IGZ1bmN0aW9ucy4KIAoraW1wb3J0IHRpbWUKIGltcG9ydCBoZWFwcQogZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgbmFtZWR0dXBsZQordHJ5OgorICAgIGltcG9ydCB0aHJlYWRpbmcKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBpbXBvcnQgZHVtbXlfdGhyZWFkaW5nIGFzIHRocmVhZGluZwogCiBfX2FsbF9fID0gWyJzY2hlZHVsZXIiXQogCi1jbGFzcyBFdmVudChuYW1lZHR1cGxlKCdFdmVudCcsICd0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCcpKToKK2NsYXNzIEV2ZW50KG5hbWVkdHVwbGUoJ0V2ZW50JywgJ3RpbWUsIHByaW9yaXR5LCBhY3Rpb24sIGFyZ3VtZW50LCBrd2FyZ3MnKSk6CiAgICAgZGVmIF9fZXFfXyhzLCBvKTogcmV0dXJuIChzLnRpbWUsIHMucHJpb3JpdHkpID09IChvLnRpbWUsIG8ucHJpb3JpdHkpCiAgICAgZGVmIF9fbmVfXyhzLCBvKTogcmV0dXJuIChzLnRpbWUsIHMucHJpb3JpdHkpICE9IChvLnRpbWUsIG8ucHJpb3JpdHkpCiAgICAgZGVmIF9fbHRfXyhzLCBvKTogcmV0dXJuIChzLnRpbWUsIHMucHJpb3JpdHkpIDwgIChvLnRpbWUsIG8ucHJpb3JpdHkpCkBAIC00MiwzMiArNDcsMzYgQEAKICAgICBkZWYgX19nZV9fKHMsIG8pOiByZXR1cm4gKHMudGltZSwgcy5wcmlvcml0eSkgPj0gKG8udGltZSwgby5wcmlvcml0eSkKIAogY2xhc3Mgc2NoZWR1bGVyOgotICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0aW1lZnVuYywgZGVsYXlmdW5jKToKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCB0aW1lZnVuYz10aW1lLnRpbWUsIGRlbGF5ZnVuYz10aW1lLnNsZWVwKToKICAgICAgICAgIiIiSW5pdGlhbGl6ZSBhIG5ldyBpbnN0YW5jZSwgcGFzc2luZyB0aGUgdGltZSBhbmQgZGVsYXkKICAgICAgICAgZnVuY3Rpb25zIiIiCiAgICAgICAgIHNlbGYuX3F1ZXVlID0gW10KKyAgICAgICAgc2VsZi5fbG9jayA9IHRocmVhZGluZy5STG9jaygpCiAgICAgICAgIHNlbGYudGltZWZ1bmMgPSB0aW1lZnVuYwogICAgICAgICBzZWxmLmRlbGF5ZnVuYyA9IGRlbGF5ZnVuYwogCi0gICAgZGVmIGVudGVyYWJzKHNlbGYsIHRpbWUsIHByaW9yaXR5LCBhY3Rpb24sIGFyZ3VtZW50KToKKyAgICBkZWYgZW50ZXJhYnMoc2VsZiwgdGltZSwgcHJpb3JpdHksIGFjdGlvbiwgYXJndW1lbnQ9W10sIGt3YXJncz17fSk6CiAgICAgICAgICIiIkVudGVyIGEgbmV3IGV2ZW50IGluIHRoZSBxdWV1ZSBhdCBhbiBhYnNvbHV0ZSB0aW1lLgogCiAgICAgICAgIFJldHVybnMgYW4gSUQgZm9yIHRoZSBldmVudCB3aGljaCBjYW4gYmUgdXNlZCB0byByZW1vdmUgaXQsCiAgICAgICAgIGlmIG5lY2Vzc2FyeS4KIAogICAgICAgICAiIiIKLSAgICAgICAgZXZlbnQgPSBFdmVudCh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCkKLSAgICAgICAgaGVhcHEuaGVhcHB1c2goc2VsZi5fcXVldWUsIGV2ZW50KQotICAgICAgICByZXR1cm4gZXZlbnQgIyBUaGUgSUQKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgZXZlbnQgPSBFdmVudCh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCwga3dhcmdzKQorICAgICAgICAgICAgaGVhcHEuaGVhcHB1c2goc2VsZi5fcXVldWUsIGV2ZW50KQorICAgICAgICAgICAgcmV0dXJuIGV2ZW50ICMgVGhlIElECiAKLSAgICBkZWYgZW50ZXIoc2VsZiwgZGVsYXksIHByaW9yaXR5LCBhY3Rpb24sIGFyZ3VtZW50KToKKyAgICBkZWYgZW50ZXIoc2VsZiwgZGVsYXksIHByaW9yaXR5LCBhY3Rpb24sIGFyZ3VtZW50PVtdLCBrd2FyZ3M9e30pOgogICAgICAgICAiIiJBIHZhcmlhbnQgdGhhdCBzcGVjaWZpZXMgdGhlIHRpbWUgYXMgYSByZWxhdGl2ZSB0aW1lLgogCiAgICAgICAgIFRoaXMgaXMgYWN0dWFsbHkgdGhlIG1vcmUgY29tbW9ubHkgdXNlZCBpbnRlcmZhY2UuCiAKICAgICAgICAgIiIiCi0gICAgICAgIHRpbWUgPSBzZWxmLnRpbWVmdW5jKCkgKyBkZWxheQotICAgICAgICByZXR1cm4gc2VsZi5lbnRlcmFicyh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCkKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgdGltZSA9IHNlbGYudGltZWZ1bmMoKSArIGRlbGF5CisgICAgICAgICAgICByZXR1cm4gc2VsZi5lbnRlcmFicyh0aW1lLCBwcmlvcml0eSwgYWN0aW9uLCBhcmd1bWVudCwga3dhcmdzKQogCiAgICAgZGVmIGNhbmNlbChzZWxmLCBldmVudCk6CiAgICAgICAgICIiIlJlbW92ZSBhbiBldmVudCBmcm9tIHRoZSBxdWV1ZS4KQEAgLTc2LDE1ICs4NSwxOSBAQAogICAgICAgICBJZiB0aGUgZXZlbnQgaXMgbm90IGluIHRoZSBxdWV1ZSwgdGhpcyByYWlzZXMgVmFsdWVFcnJvci4KIAogICAgICAgICAiIiIKLSAgICAgICAgc2VsZi5fcXVldWUucmVtb3ZlKGV2ZW50KQotICAgICAgICBoZWFwcS5oZWFwaWZ5KHNlbGYuX3F1ZXVlKQorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICBzZWxmLl9xdWV1ZS5yZW1vdmUoZXZlbnQpCisgICAgICAgICAgICBoZWFwcS5oZWFwaWZ5KHNlbGYuX3F1ZXVlKQogCiAgICAgZGVmIGVtcHR5KHNlbGYpOgogICAgICAgICAiIiJDaGVjayB3aGV0aGVyIHRoZSBxdWV1ZSBpcyBlbXB0eS4iIiIKLSAgICAgICAgcmV0dXJuIG5vdCBzZWxmLl9xdWV1ZQorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICByZXR1cm4gbm90IHNlbGYuX3F1ZXVlCiAKLSAgICBkZWYgcnVuKHNlbGYpOgorICAgIGRlZiBydW4oc2VsZiwgYmxvY2tpbmc9VHJ1ZSk6CiAgICAgICAgICIiIkV4ZWN1dGUgZXZlbnRzIHVudGlsIHRoZSBxdWV1ZSBpcyBlbXB0eS4KKyAgICAgICAgSWYgYmxvY2tpbmcgaXMgRmFsc2UgZXhlY3V0ZXMgdGhlIHNjaGVkdWxlZCBldmVudHMgZHVlIHRvCisgICAgICAgIGV4cGlyZSBzb29uZXN0IChpZiBhbnkpIGFuZCB0aGVuIHJldHVybi4KIAogICAgICAgICBXaGVuIHRoZXJlIGlzIGEgcG9zaXRpdmUgZGVsYXkgdW50aWwgdGhlIGZpcnN0IGV2ZW50LCB0aGUKICAgICAgICAgZGVsYXkgZnVuY3Rpb24gaXMgY2FsbGVkIGFuZCB0aGUgZXZlbnQgaXMgbGVmdCBpbiB0aGUgcXVldWU7CkBAIC0xMDYsMjQgKzExOSwyNyBAQAogICAgICAgICAiIiIKICAgICAgICAgIyBsb2NhbGl6ZSB2YXJpYWJsZSBhY2Nlc3MgdG8gbWluaW1pemUgb3ZlcmhlYWQKICAgICAgICAgIyBhbmQgdG8gaW1wcm92ZSB0aHJlYWQgc2FmZXR5Ci0gICAgICAgIHEgPSBzZWxmLl9xdWV1ZQotICAgICAgICBkZWxheWZ1bmMgPSBzZWxmLmRlbGF5ZnVuYwotICAgICAgICB0aW1lZnVuYyA9IHNlbGYudGltZWZ1bmMKLSAgICAgICAgcG9wID0gaGVhcHEuaGVhcHBvcAotICAgICAgICB3aGlsZSBxOgotICAgICAgICAgICAgdGltZSwgcHJpb3JpdHksIGFjdGlvbiwgYXJndW1lbnQgPSBjaGVja2VkX2V2ZW50ID0gcVswXQotICAgICAgICAgICAgbm93ID0gdGltZWZ1bmMoKQotICAgICAgICAgICAgaWYgbm93IDwgdGltZToKLSAgICAgICAgICAgICAgICBkZWxheWZ1bmModGltZSAtIG5vdykKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgZXZlbnQgPSBwb3AocSkKLSAgICAgICAgICAgICAgICAjIFZlcmlmeSB0aGF0IHRoZSBldmVudCB3YXMgbm90IHJlbW92ZWQgb3IgYWx0ZXJlZAotICAgICAgICAgICAgICAgICMgYnkgYW5vdGhlciB0aHJlYWQgYWZ0ZXIgd2UgbGFzdCBsb29rZWQgYXQgcVswXS4KLSAgICAgICAgICAgICAgICBpZiBldmVudCBpcyBjaGVja2VkX2V2ZW50OgotICAgICAgICAgICAgICAgICAgICBhY3Rpb24oKmFyZ3VtZW50KQotICAgICAgICAgICAgICAgICAgICBkZWxheWZ1bmMoMCkgICAjIExldCBvdGhlciB0aHJlYWRzIHJ1bgorICAgICAgICB3aXRoIHNlbGYuX2xvY2s6CisgICAgICAgICAgICBxID0gc2VsZi5fcXVldWUKKyAgICAgICAgICAgIGRlbGF5ZnVuYyA9IHNlbGYuZGVsYXlmdW5jCisgICAgICAgICAgICB0aW1lZnVuYyA9IHNlbGYudGltZWZ1bmMKKyAgICAgICAgICAgIHBvcCA9IGhlYXBxLmhlYXBwb3AKKyAgICAgICAgICAgIHdoaWxlIHE6CisgICAgICAgICAgICAgICAgdGltZSwgcHJpb3JpdHksIGFjdGlvbiwgYXJndW1lbnQsIGt3YXJncyA9IGNoZWNrZWRfZXZlbnQgPSBxWzBdCisgICAgICAgICAgICAgICAgbm93ID0gdGltZWZ1bmMoKQorICAgICAgICAgICAgICAgIGlmIG5vdyA8IHRpbWU6CisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBibG9ja2luZzoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgICAgICAgICBkZWxheWZ1bmModGltZSAtIG5vdykKICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICBoZWFwcS5oZWFwcHVzaChxLCBldmVudCkKKyAgICAgICAgICAgICAgICAgICAgZXZlbnQgPSBwb3AocSkKKyAgICAgICAgICAgICAgICAgICAgIyBWZXJpZnkgdGhhdCB0aGUgZXZlbnQgd2FzIG5vdCByZW1vdmVkIG9yIGFsdGVyZWQKKyAgICAgICAgICAgICAgICAgICAgIyBieSBhbm90aGVyIHRocmVhZCBhZnRlciB3ZSBsYXN0IGxvb2tlZCBhdCBxWzBdLgorICAgICAgICAgICAgICAgICAgICBpZiBldmVudCBpcyBjaGVja2VkX2V2ZW50OgorICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uKCphcmd1bWVudCwgKiprd2FyZ3MpCisgICAgICAgICAgICAgICAgICAgICAgICBkZWxheWZ1bmMoMCkgICAjIExldCBvdGhlciB0aHJlYWRzIHJ1bgorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgaGVhcHEuaGVhcHB1c2gocSwgZXZlbnQpCiAKICAgICBAcHJvcGVydHkKICAgICBkZWYgcXVldWUoc2VsZik6CkBAIC0xMzYsNSArMTUyLDYgQEAKICAgICAgICAgIyBVc2UgaGVhcHEgdG8gc29ydCB0aGUgcXVldWUgcmF0aGVyIHRoYW4gdXNpbmcgJ3NvcnRlZChzZWxmLl9xdWV1ZSknLgogICAgICAgICAjIFdpdGggaGVhcHEsIHR3byBldmVudHMgc2NoZWR1bGVkIGF0IHRoZSBzYW1lIHRpbWUgd2lsbCBzaG93IGluCiAgICAgICAgICMgdGhlIGFjdHVhbCBvcmRlciB0aGV5IHdvdWxkIGJlIHJldHJpZXZlZC4KLSAgICAgICAgZXZlbnRzID0gc2VsZi5fcXVldWVbOl0KLSAgICAgICAgcmV0dXJuIG1hcChoZWFwcS5oZWFwcG9wLCBbZXZlbnRzXSpsZW4oZXZlbnRzKSkKKyAgICAgICAgd2l0aCBzZWxmLl9sb2NrOgorICAgICAgICAgICAgZXZlbnRzID0gc2VsZi5fcXVldWVbOl0KKyAgICAgICAgICAgIHJldHVybiBtYXAoaGVhcHEuaGVhcHBvcCwgW2V2ZW50c10qbGVuKGV2ZW50cykpCmRpZmYgLS1naXQgYS9MaWIvc2hsZXgucHkgYi9MaWIvc2hsZXgucHkKaW5kZXggM2VkZDNkYi4uNjlmM2I0NSAxMDA2NDQKLS0tIGEvTGliL3NobGV4LnB5CisrKyBiL0xpYi9zaGxleC5weQpAQCAtNiwxMyArNiwxNCBAQAogIyBQb3NpeCBjb21wbGlhbmNlLCBzcGxpdCgpLCBzdHJpbmcgYXJndW1lbnRzLCBhbmQKICMgaXRlcmF0b3IgaW50ZXJmYWNlIGJ5IEd1c3Rhdm8gTmllbWV5ZXIsIEFwcmlsIDIwMDMuCiAKLWltcG9ydCBvcy5wYXRoCitpbXBvcnQgb3MKK2ltcG9ydCByZQogaW1wb3J0IHN5cwogZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgZGVxdWUKIAogZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KIAotX19hbGxfXyA9IFsic2hsZXgiLCAic3BsaXQiXQorX19hbGxfXyA9IFsic2hsZXgiLCAic3BsaXQiLCAicXVvdGUiXQogCiBjbGFzcyBzaGxleDoKICAgICAiQSBsZXhpY2FsIGFuYWx5emVyIGNsYXNzIGZvciBzaW1wbGUgc2hlbGwtbGlrZSBzeW50YXhlcy4iCkBAIC0yNzQsNiArMjc1LDIxIEBACiAgICAgICAgIGxleC5jb21tZW50ZXJzID0gJycKICAgICByZXR1cm4gbGlzdChsZXgpCiAKKworX2ZpbmRfdW5zYWZlID0gcmUuY29tcGlsZShyJ1teXHdAJSs9OiwuLy1dJywgcmUuQVNDSUkpLnNlYXJjaAorCitkZWYgcXVvdGUocyk6CisgICAgIiIiUmV0dXJuIGEgc2hlbGwtZXNjYXBlZCB2ZXJzaW9uIG9mIHRoZSBzdHJpbmcgKnMqLiIiIgorICAgIGlmIG5vdCBzOgorICAgICAgICByZXR1cm4gIicnIgorICAgIGlmIF9maW5kX3Vuc2FmZShzKSBpcyBOb25lOgorICAgICAgICByZXR1cm4gcworCisgICAgIyB1c2Ugc2luZ2xlIHF1b3RlcywgYW5kIHB1dCBzaW5nbGUgcXVvdGVzIGludG8gZG91YmxlIHF1b3RlcworICAgICMgdGhlIHN0cmluZyAkJ2IgaXMgdGhlbiBxdW90ZWQgYXMgJyQnIiciJ2InCisgICAgcmV0dXJuICInIiArIHMucmVwbGFjZSgiJyIsICInXCInXCInIikgKyAiJyIKKworCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgogICAgIGlmIGxlbihzeXMuYXJndikgPT0gMToKICAgICAgICAgbGV4ZXIgPSBzaGxleCgpCmRpZmYgLS1naXQgYS9MaWIvc2h1dGlsLnB5IGIvTGliL3NodXRpbC5weQppbmRleCAwMGJmZmU1Li41ZjY5ZmI3IDEwMDY0NAotLS0gYS9MaWIvc2h1dGlsLnB5CisrKyBiL0xpYi9zaHV0aWwucHkKQEAgLTE1LDYgKzE1LDcgQEAKIAogdHJ5OgogICAgIGltcG9ydCBiejIKKyAgICBkZWwgYnoyCiAgICAgX0JaMl9TVVBQT1JURUQgPSBUcnVlCiBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgX0JaMl9TVVBQT1JURUQgPSBGYWxzZQpAQCAtMzQsNyArMzUsOSBAQAogICAgICAgICAgICAiRXhlY0Vycm9yIiwgIm1ha2VfYXJjaGl2ZSIsICJnZXRfYXJjaGl2ZV9mb3JtYXRzIiwKICAgICAgICAgICAgInJlZ2lzdGVyX2FyY2hpdmVfZm9ybWF0IiwgInVucmVnaXN0ZXJfYXJjaGl2ZV9mb3JtYXQiLAogICAgICAgICAgICAiZ2V0X3VucGFja19mb3JtYXRzIiwgInJlZ2lzdGVyX3VucGFja19mb3JtYXQiLAotICAgICAgICAgICAidW5yZWdpc3Rlcl91bnBhY2tfZm9ybWF0IiwgInVucGFja19hcmNoaXZlIiwgImlnbm9yZV9wYXR0ZXJucyJdCisgICAgICAgICAgICJ1bnJlZ2lzdGVyX3VucGFja19mb3JtYXQiLCAidW5wYWNrX2FyY2hpdmUiLAorICAgICAgICAgICAiaWdub3JlX3BhdHRlcm5zIiwgImNob3duIl0KKyAgICAgICAgICAgIyBkaXNrX3VzYWdlIGlzIGFkZGVkIGxhdGVyLCBpZiBhdmFpbGFibGUgb24gdGhlIHBsYXRmb3JtCiAKIGNsYXNzIEVycm9yKEVudmlyb25tZW50RXJyb3IpOgogICAgIHBhc3MKQEAgLTc5LDggKzgyLDEzIEBACiAgICAgcmV0dXJuIChvcy5wYXRoLm5vcm1jYXNlKG9zLnBhdGguYWJzcGF0aChzcmMpKSA9PQogICAgICAgICAgICAgb3MucGF0aC5ub3JtY2FzZShvcy5wYXRoLmFic3BhdGgoZHN0KSkpCiAKLWRlZiBjb3B5ZmlsZShzcmMsIGRzdCk6Ci0gICAgIiIiQ29weSBkYXRhIGZyb20gc3JjIHRvIGRzdCIiIgorZGVmIGNvcHlmaWxlKHNyYywgZHN0LCBzeW1saW5rcz1GYWxzZSk6CisgICAgIiIiQ29weSBkYXRhIGZyb20gc3JjIHRvIGRzdC4KKworICAgIElmIG9wdGlvbmFsIGZsYWcgYHN5bWxpbmtzYCBpcyBzZXQgYW5kIGBzcmNgIGlzIGEgc3ltYm9saWMgbGluaywgYSBuZXcKKyAgICBzeW1saW5rIHdpbGwgYmUgY3JlYXRlZCBpbnN0ZWFkIG9mIGNvcHlpbmcgdGhlIGZpbGUgaXQgcG9pbnRzIHRvLgorCisgICAgIiIiCiAgICAgaWYgX3NhbWVmaWxlKHNyYywgZHN0KToKICAgICAgICAgcmFpc2UgRXJyb3IoImAlc2AgYW5kIGAlc2AgYXJlIHRoZSBzYW1lIGZpbGUiICUgKHNyYywgZHN0KSkKIApAQCAtOTUsNTQgKzEwMyw5NCBAQAogICAgICAgICAgICAgaWYgc3RhdC5TX0lTRklGTyhzdC5zdF9tb2RlKToKICAgICAgICAgICAgICAgICByYWlzZSBTcGVjaWFsRmlsZUVycm9yKCJgJXNgIGlzIGEgbmFtZWQgcGlwZSIgJSBmbikKIAotICAgIHdpdGggb3BlbihzcmMsICdyYicpIGFzIGZzcmM6Ci0gICAgICAgIHdpdGggb3Blbihkc3QsICd3YicpIGFzIGZkc3Q6Ci0gICAgICAgICAgICBjb3B5ZmlsZW9iaihmc3JjLCBmZHN0KQorICAgIGlmIHN5bWxpbmtzIGFuZCBvcy5wYXRoLmlzbGluayhzcmMpOgorICAgICAgICBvcy5zeW1saW5rKG9zLnJlYWRsaW5rKHNyYyksIGRzdCkKKyAgICBlbHNlOgorICAgICAgICB3aXRoIG9wZW4oc3JjLCAncmInKSBhcyBmc3JjOgorICAgICAgICAgICAgd2l0aCBvcGVuKGRzdCwgJ3diJykgYXMgZmRzdDoKKyAgICAgICAgICAgICAgICBjb3B5ZmlsZW9iaihmc3JjLCBmZHN0KQogCi1kZWYgY29weW1vZGUoc3JjLCBkc3QpOgotICAgICIiIkNvcHkgbW9kZSBiaXRzIGZyb20gc3JjIHRvIGRzdCIiIgotICAgIGlmIGhhc2F0dHIob3MsICdjaG1vZCcpOgotICAgICAgICBzdCA9IG9zLnN0YXQoc3JjKQotICAgICAgICBtb2RlID0gc3RhdC5TX0lNT0RFKHN0LnN0X21vZGUpCi0gICAgICAgIG9zLmNobW9kKGRzdCwgbW9kZSkKK2RlZiBjb3B5bW9kZShzcmMsIGRzdCwgc3ltbGlua3M9RmFsc2UpOgorICAgICIiIkNvcHkgbW9kZSBiaXRzIGZyb20gc3JjIHRvIGRzdC4KIAotZGVmIGNvcHlzdGF0KHNyYywgZHN0KToKLSAgICAiIiJDb3B5IGFsbCBzdGF0IGluZm8gKG1vZGUgYml0cywgYXRpbWUsIG10aW1lLCBmbGFncykgZnJvbSBzcmMgdG8gZHN0IiIiCi0gICAgc3QgPSBvcy5zdGF0KHNyYykKKyAgICBJZiB0aGUgb3B0aW9uYWwgZmxhZyBgc3ltbGlua3NgIGlzIHNldCwgc3ltbGlua3MgYXJlbid0IGZvbGxvd2VkIGlmIGFuZAorICAgIG9ubHkgaWYgYm90aCBgc3JjYCBhbmQgYGRzdGAgYXJlIHN5bWxpbmtzLiBJZiBgbGNobW9kYCBpc24ndCBhdmFpbGFibGUgKGVnLgorICAgIExpbnV4KSwgaW4gdGhlc2UgY2FzZXMsIHRoaXMgbWV0aG9kIGRvZXMgbm90aGluZy4KKworICAgICIiIgorICAgIGlmIHN5bWxpbmtzIGFuZCBvcy5wYXRoLmlzbGluayhzcmMpIGFuZCBvcy5wYXRoLmlzbGluayhkc3QpOgorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJyk6CisgICAgICAgICAgICBzdGF0X2Z1bmMsIGNobW9kX2Z1bmMgPSBvcy5sc3RhdCwgb3MubGNobW9kCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4KKyAgICBlbGlmIGhhc2F0dHIob3MsICdjaG1vZCcpOgorICAgICAgICBzdGF0X2Z1bmMsIGNobW9kX2Z1bmMgPSBvcy5zdGF0LCBvcy5jaG1vZAorICAgIGVsc2U6CisgICAgICAgIHJldHVybgorCisgICAgc3QgPSBzdGF0X2Z1bmMoc3JjKQorICAgIGNobW9kX2Z1bmMoZHN0LCBzdGF0LlNfSU1PREUoc3Quc3RfbW9kZSkpCisKK2RlZiBjb3B5c3RhdChzcmMsIGRzdCwgc3ltbGlua3M9RmFsc2UpOgorICAgICIiIkNvcHkgYWxsIHN0YXQgaW5mbyAobW9kZSBiaXRzLCBhdGltZSwgbXRpbWUsIGZsYWdzKSBmcm9tIHNyYyB0byBkc3QuCisKKyAgICBJZiB0aGUgb3B0aW9uYWwgZmxhZyBgc3ltbGlua3NgIGlzIHNldCwgc3ltbGlua3MgYXJlbid0IGZvbGxvd2VkIGlmIGFuZAorICAgIG9ubHkgaWYgYm90aCBgc3JjYCBhbmQgYGRzdGAgYXJlIHN5bWxpbmtzLgorCisgICAgIiIiCisgICAgZGVmIF9ub3AoKmFyZ3MpOgorICAgICAgICBwYXNzCisKKyAgICBpZiBzeW1saW5rcyBhbmQgb3MucGF0aC5pc2xpbmsoc3JjKSBhbmQgb3MucGF0aC5pc2xpbmsoZHN0KToKKyAgICAgICAgc3RhdF9mdW5jID0gb3MubHN0YXQKKyAgICAgICAgdXRpbWVfZnVuYyA9IG9zLmx1dGltZXMgaWYgaGFzYXR0cihvcywgJ2x1dGltZXMnKSBlbHNlIF9ub3AKKyAgICAgICAgY2htb2RfZnVuYyA9IG9zLmxjaG1vZCBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJykgZWxzZSBfbm9wCisgICAgICAgIGNoZmxhZ3NfZnVuYyA9IG9zLmxjaGZsYWdzIGlmIGhhc2F0dHIob3MsICdsY2hmbGFncycpIGVsc2UgX25vcAorICAgIGVsc2U6CisgICAgICAgIHN0YXRfZnVuYyA9IG9zLnN0YXQKKyAgICAgICAgdXRpbWVfZnVuYyA9IG9zLnV0aW1lIGlmIGhhc2F0dHIob3MsICd1dGltZScpIGVsc2UgX25vcAorICAgICAgICBjaG1vZF9mdW5jID0gb3MuY2htb2QgaWYgaGFzYXR0cihvcywgJ2NobW9kJykgZWxzZSBfbm9wCisgICAgICAgIGNoZmxhZ3NfZnVuYyA9IG9zLmNoZmxhZ3MgaWYgaGFzYXR0cihvcywgJ2NoZmxhZ3MnKSBlbHNlIF9ub3AKKworICAgIHN0ID0gc3RhdF9mdW5jKHNyYykKICAgICBtb2RlID0gc3RhdC5TX0lNT0RFKHN0LnN0X21vZGUpCi0gICAgaWYgaGFzYXR0cihvcywgJ3V0aW1lJyk6Ci0gICAgICAgIG9zLnV0aW1lKGRzdCwgKHN0LnN0X2F0aW1lLCBzdC5zdF9tdGltZSkpCi0gICAgaWYgaGFzYXR0cihvcywgJ2NobW9kJyk6Ci0gICAgICAgIG9zLmNobW9kKGRzdCwgbW9kZSkKLSAgICBpZiBoYXNhdHRyKG9zLCAnY2hmbGFncycpIGFuZCBoYXNhdHRyKHN0LCAnc3RfZmxhZ3MnKToKKyAgICB1dGltZV9mdW5jKGRzdCwgKHN0LnN0X2F0aW1lLCBzdC5zdF9tdGltZSkpCisgICAgY2htb2RfZnVuYyhkc3QsIG1vZGUpCisgICAgaWYgaGFzYXR0cihzdCwgJ3N0X2ZsYWdzJyk6CiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIG9zLmNoZmxhZ3MoZHN0LCBzdC5zdF9mbGFncykKKyAgICAgICAgICAgIGNoZmxhZ3NfZnVuYyhkc3QsIHN0LnN0X2ZsYWdzKQogICAgICAgICBleGNlcHQgT1NFcnJvciBhcyB3aHk6CiAgICAgICAgICAgICBpZiAobm90IGhhc2F0dHIoZXJybm8sICdFT1BOT1RTVVBQJykgb3IKICAgICAgICAgICAgICAgICB3aHkuZXJybm8gIT0gZXJybm8uRU9QTk9UU1VQUCk6CiAgICAgICAgICAgICAgICAgcmFpc2UKIAotZGVmIGNvcHkoc3JjLCBkc3QpOgorZGVmIGNvcHkoc3JjLCBkc3QsIHN5bWxpbmtzPUZhbHNlKToKICAgICAiIiJDb3B5IGRhdGEgYW5kIG1vZGUgYml0cyAoImNwIHNyYyBkc3QiKS4KIAogICAgIFRoZSBkZXN0aW5hdGlvbiBtYXkgYmUgYSBkaXJlY3RvcnkuCiAKKyAgICBJZiB0aGUgb3B0aW9uYWwgZmxhZyBgc3ltbGlua3NgIGlzIHNldCwgc3ltbGlua3Mgd29uJ3QgYmUgZm9sbG93ZWQuIFRoaXMKKyAgICByZXNlbWJsZXMgR05VJ3MgImNwIC1QIHNyYyBkc3QiLgorCiAgICAgIiIiCiAgICAgaWYgb3MucGF0aC5pc2Rpcihkc3QpOgogICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4oZHN0LCBvcy5wYXRoLmJhc2VuYW1lKHNyYykpCi0gICAgY29weWZpbGUoc3JjLCBkc3QpCi0gICAgY29weW1vZGUoc3JjLCBkc3QpCisgICAgY29weWZpbGUoc3JjLCBkc3QsIHN5bWxpbmtzPXN5bWxpbmtzKQorICAgIGNvcHltb2RlKHNyYywgZHN0LCBzeW1saW5rcz1zeW1saW5rcykKIAotZGVmIGNvcHkyKHNyYywgZHN0KToKK2RlZiBjb3B5MihzcmMsIGRzdCwgc3ltbGlua3M9RmFsc2UpOgogICAgICIiIkNvcHkgZGF0YSBhbmQgYWxsIHN0YXQgaW5mbyAoImNwIC1wIHNyYyBkc3QiKS4KIAogICAgIFRoZSBkZXN0aW5hdGlvbiBtYXkgYmUgYSBkaXJlY3RvcnkuCiAKKyAgICBJZiB0aGUgb3B0aW9uYWwgZmxhZyBgc3ltbGlua3NgIGlzIHNldCwgc3ltbGlua3Mgd29uJ3QgYmUgZm9sbG93ZWQuIFRoaXMKKyAgICByZXNlbWJsZXMgR05VJ3MgImNwIC1QIHNyYyBkc3QiLgorCiAgICAgIiIiCiAgICAgaWYgb3MucGF0aC5pc2Rpcihkc3QpOgogICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4oZHN0LCBvcy5wYXRoLmJhc2VuYW1lKHNyYykpCi0gICAgY29weWZpbGUoc3JjLCBkc3QpCi0gICAgY29weXN0YXQoc3JjLCBkc3QpCisgICAgY29weWZpbGUoc3JjLCBkc3QsIHN5bWxpbmtzPXN5bWxpbmtzKQorICAgIGNvcHlzdGF0KHNyYywgZHN0LCBzeW1saW5rcz1zeW1saW5rcykKIAogZGVmIGlnbm9yZV9wYXR0ZXJucygqcGF0dGVybnMpOgogICAgICIiIkZ1bmN0aW9uIHRoYXQgY2FuIGJlIHVzZWQgYXMgY29weXRyZWUoKSBpZ25vcmUgcGFyYW1ldGVyLgpAQCAtMjA5LDcgKzI1NywxMSBAQAogICAgICAgICAgICAgaWYgb3MucGF0aC5pc2xpbmsoc3JjbmFtZSk6CiAgICAgICAgICAgICAgICAgbGlua3RvID0gb3MucmVhZGxpbmsoc3JjbmFtZSkKICAgICAgICAgICAgICAgICBpZiBzeW1saW5rczoKKyAgICAgICAgICAgICAgICAgICAgIyBXZSBjYW4ndCBqdXN0IGxlYXZlIGl0IHRvIGBjb3B5X2Z1bmN0aW9uYCBiZWNhdXNlIGxlZ2FjeQorICAgICAgICAgICAgICAgICAgICAjIGNvZGUgd2l0aCBhIGN1c3RvbSBgY29weV9mdW5jdGlvbmAgbWF5IHJlbHkgb24gY29weXRyZWUKKyAgICAgICAgICAgICAgICAgICAgIyBkb2luZyB0aGUgcmlnaHQgdGhpbmcuCiAgICAgICAgICAgICAgICAgICAgIG9zLnN5bWxpbmsobGlua3RvLCBkc3RuYW1lKQorICAgICAgICAgICAgICAgICAgICBjb3B5c3RhdChzcmNuYW1lLCBkc3RuYW1lLCBzeW1saW5rcz1zeW1saW5rcykKICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICAjIGlnbm9yZSBkYW5nbGluZyBzeW1saW5rIGlmIHRoZSBmbGFnIGlzIG9uCiAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyhsaW5rdG8pIGFuZCBpZ25vcmVfZGFuZ2xpbmdfc3ltbGlua3M6CkBAIC0yNjYsNyArMzE4LDcgQEAKICAgICBuYW1lcyA9IFtdCiAgICAgdHJ5OgogICAgICAgICBuYW1lcyA9IG9zLmxpc3RkaXIocGF0aCkKLSAgICBleGNlcHQgb3MuZXJyb3IgYXMgZXJyOgorICAgIGV4Y2VwdCBvcy5lcnJvcjoKICAgICAgICAgb25lcnJvcihvcy5saXN0ZGlyLCBwYXRoLCBzeXMuZXhjX2luZm8oKSkKICAgICBmb3IgbmFtZSBpbiBuYW1lczoKICAgICAgICAgZnVsbG5hbWUgPSBvcy5wYXRoLmpvaW4ocGF0aCwgbmFtZSkKQEAgLTI3OSw3ICszMzEsNyBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIG9zLnJlbW92ZShmdWxsbmFtZSkKLSAgICAgICAgICAgIGV4Y2VwdCBvcy5lcnJvciBhcyBlcnI6CisgICAgICAgICAgICBleGNlcHQgb3MuZXJyb3I6CiAgICAgICAgICAgICAgICAgb25lcnJvcihvcy5yZW1vdmUsIGZ1bGxuYW1lLCBzeXMuZXhjX2luZm8oKSkKICAgICB0cnk6CiAgICAgICAgIG9zLnJtZGlyKHBhdGgpCkBAIC0zMDQsNyArMzU2LDEwIEBACiAgICAgb3ZlcndyaXR0ZW4gZGVwZW5kaW5nIG9uIG9zLnJlbmFtZSgpIHNlbWFudGljcy4KIAogICAgIElmIHRoZSBkZXN0aW5hdGlvbiBpcyBvbiBvdXIgY3VycmVudCBmaWxlc3lzdGVtLCB0aGVuIHJlbmFtZSgpIGlzIHVzZWQuCi0gICAgT3RoZXJ3aXNlLCBzcmMgaXMgY29waWVkIHRvIHRoZSBkZXN0aW5hdGlvbiBhbmQgdGhlbiByZW1vdmVkLgorICAgIE90aGVyd2lzZSwgc3JjIGlzIGNvcGllZCB0byB0aGUgZGVzdGluYXRpb24gYW5kIHRoZW4gcmVtb3ZlZC4gU3ltbGlua3MgYXJlCisgICAgcmVjcmVhdGVkIHVuZGVyIHRoZSBuZXcgbmFtZSBpZiBvcy5yZW5hbWUoKSBmYWlscyBiZWNhdXNlIG9mIGNyb3NzCisgICAgZmlsZXN5c3RlbSByZW5hbWVzLgorCiAgICAgQSBsb3QgbW9yZSBjb3VsZCBiZSBkb25lIGhlcmUuLi4gIEEgbG9vayBhdCBhIG12LmMgc2hvd3MgYSBsb3Qgb2YKICAgICB0aGUgaXNzdWVzIHRoaXMgaW1wbGVtZW50YXRpb24gZ2xvc3NlcyBvdmVyLgogCkBAIC0zMjIsOCArMzc3LDEyIEBACiAgICAgICAgICAgICByYWlzZSBFcnJvcigiRGVzdGluYXRpb24gcGF0aCAnJXMnIGFscmVhZHkgZXhpc3RzIiAlIHJlYWxfZHN0KQogICAgIHRyeToKICAgICAgICAgb3MucmVuYW1lKHNyYywgcmVhbF9kc3QpCi0gICAgZXhjZXB0IE9TRXJyb3IgYXMgZXhjOgotICAgICAgICBpZiBvcy5wYXRoLmlzZGlyKHNyYyk6CisgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgIGlmIG9zLnBhdGguaXNsaW5rKHNyYyk6CisgICAgICAgICAgICBsaW5rdG8gPSBvcy5yZWFkbGluayhzcmMpCisgICAgICAgICAgICBvcy5zeW1saW5rKGxpbmt0bywgcmVhbF9kc3QpCisgICAgICAgICAgICBvcy51bmxpbmsoc3JjKQorICAgICAgICBlbGlmIG9zLnBhdGguaXNkaXIoc3JjKToKICAgICAgICAgICAgIGlmIF9kZXN0aW5zcmMoc3JjLCBkc3QpOgogICAgICAgICAgICAgICAgIHJhaXNlIEVycm9yKCJDYW5ub3QgbW92ZSBhIGRpcmVjdG9yeSAnJXMnIGludG8gaXRzZWxmICclcycuIiAlIChzcmMsIGRzdCkpCiAgICAgICAgICAgICBjb3B5dHJlZShzcmMsIHJlYWxfZHN0LCBzeW1saW5rcz1UcnVlKQpAQCAtMzg5LDcgKzQ0OCw3IEBACiAgICAgICAgIGNvbXByZXNzX2V4dFsnYnppcDInXSA9ICcuYnoyJwogCiAgICAgIyBmbGFncyBmb3IgY29tcHJlc3Npb24gcHJvZ3JhbSwgZWFjaCBlbGVtZW50IG9mIGxpc3Qgd2lsbCBiZSBhbiBhcmd1bWVudAotICAgIGlmIGNvbXByZXNzIGlzIG5vdCBOb25lIGFuZCBjb21wcmVzcyBub3QgaW4gY29tcHJlc3NfZXh0LmtleXMoKToKKyAgICBpZiBjb21wcmVzcyBpcyBub3QgTm9uZSBhbmQgY29tcHJlc3Mgbm90IGluIGNvbXByZXNzX2V4dDoKICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiYmFkIHZhbHVlIGZvciAnY29tcHJlc3MnLCBvciBjb21wcmVzc2lvbiBmb3JtYXQgbm90ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAic3VwcG9ydGVkIDogezB9Ii5mb3JtYXQoY29tcHJlc3MpKQogCkBAIC00OTUsNyArNTU0LDcgQEAKICAgICAnZ3p0YXInOiAoX21ha2VfdGFyYmFsbCwgWygnY29tcHJlc3MnLCAnZ3ppcCcpXSwgImd6aXAnZWQgdGFyLWZpbGUiKSwKICAgICAnYnp0YXInOiAoX21ha2VfdGFyYmFsbCwgWygnY29tcHJlc3MnLCAnYnppcDInKV0sICJiemlwMidlZCB0YXItZmlsZSIpLAogICAgICd0YXInOiAgIChfbWFrZV90YXJiYWxsLCBbKCdjb21wcmVzcycsIE5vbmUpXSwgInVuY29tcHJlc3NlZCB0YXIgZmlsZSIpLAotICAgICd6aXAnOiAgIChfbWFrZV96aXBmaWxlLCBbXSwiWklQIGZpbGUiKQorICAgICd6aXAnOiAgIChfbWFrZV96aXBmaWxlLCBbXSwgIlpJUCBmaWxlIikKICAgICB9CiAKIGlmIF9CWjJfU1VQUE9SVEVEOgpAQCAtNTI4LDcgKzU4Nyw3IEBACiAgICAgaWYgbm90IGlzaW5zdGFuY2UoZXh0cmFfYXJncywgKHR1cGxlLCBsaXN0KSk6CiAgICAgICAgIHJhaXNlIFR5cGVFcnJvcignZXh0cmFfYXJncyBuZWVkcyB0byBiZSBhIHNlcXVlbmNlJykKICAgICBmb3IgZWxlbWVudCBpbiBleHRyYV9hcmdzOgotICAgICAgICBpZiBub3QgaXNpbnN0YW5jZShlbGVtZW50LCAodHVwbGUsIGxpc3QpKSBvciBsZW4oZWxlbWVudCkgIT0yIDoKKyAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoZWxlbWVudCwgKHR1cGxlLCBsaXN0KSkgb3IgbGVuKGVsZW1lbnQpICE9MjoKICAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcignZXh0cmFfYXJncyBlbGVtZW50cyBhcmUgOiAoYXJnX25hbWUsIHZhbHVlKScpCiAKICAgICBfQVJDSElWRV9GT1JNQVRTW25hbWVdID0gKGZ1bmN0aW9uLCBleHRyYV9hcmdzLCBkZXNjcmlwdGlvbikKQEAgLTY4MCw3ICs3MzksNyBAQAogICAgICAgICAgICAgaWYgbm90IG5hbWUuZW5kc3dpdGgoJy8nKToKICAgICAgICAgICAgICAgICAjIGZpbGUKICAgICAgICAgICAgICAgICBkYXRhID0gemlwLnJlYWQoaW5mby5maWxlbmFtZSkKLSAgICAgICAgICAgICAgICBmID0gb3Blbih0YXJnZXQsJ3diJykKKyAgICAgICAgICAgICAgICBmID0gb3Blbih0YXJnZXQsICd3YicpCiAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICBmLndyaXRlKGRhdGEpCiAgICAgICAgICAgICAgICAgZmluYWxseToKQEAgLTc1NCwzICs4MTMsNjkgQEAKICAgICAgICAgZnVuYyA9IF9VTlBBQ0tfRk9STUFUU1tmb3JtYXRdWzFdCiAgICAgICAgIGt3YXJncyA9IGRpY3QoX1VOUEFDS19GT1JNQVRTW2Zvcm1hdF1bMl0pCiAgICAgICAgIGZ1bmMoZmlsZW5hbWUsIGV4dHJhY3RfZGlyLCAqKmt3YXJncykKKworCitpZiBoYXNhdHRyKG9zLCAnc3RhdHZmcycpOgorCisgICAgX19hbGxfXy5hcHBlbmQoJ2Rpc2tfdXNhZ2UnKQorICAgIF9udHVwbGVfZGlza3VzYWdlID0gY29sbGVjdGlvbnMubmFtZWR0dXBsZSgndXNhZ2UnLCAndG90YWwgdXNlZCBmcmVlJykKKworICAgIGRlZiBkaXNrX3VzYWdlKHBhdGgpOgorICAgICAgICAiIiJSZXR1cm4gZGlzayB1c2FnZSBzdGF0aXN0aWNzIGFib3V0IHRoZSBnaXZlbiBwYXRoLgorCisgICAgICAgIFJldHVybmVkIHZhbHVzIGlzIGEgbmFtZWQgdHVwbGUgd2l0aCBhdHRyaWJ1dGVzICd0b3RhbCcsICd1c2VkJyBhbmQKKyAgICAgICAgJ2ZyZWUnLCB3aGljaCBhcmUgdGhlIGFtb3VudCBvZiB0b3RhbCwgdXNlZCBhbmQgZnJlZSBzcGFjZSwgaW4gYnl0ZXMuCisgICAgICAgICIiIgorICAgICAgICBzdCA9IG9zLnN0YXR2ZnMocGF0aCkKKyAgICAgICAgZnJlZSA9IHN0LmZfYmF2YWlsICogc3QuZl9mcnNpemUKKyAgICAgICAgdG90YWwgPSBzdC5mX2Jsb2NrcyAqIHN0LmZfZnJzaXplCisgICAgICAgIHVzZWQgPSAoc3QuZl9ibG9ja3MgLSBzdC5mX2JmcmVlKSAqIHN0LmZfZnJzaXplCisgICAgICAgIHJldHVybiBfbnR1cGxlX2Rpc2t1c2FnZSh0b3RhbCwgdXNlZCwgZnJlZSkKKworZWxpZiBvcy5uYW1lID09ICdudCc6CisKKyAgICBpbXBvcnQgbnQKKyAgICBfX2FsbF9fLmFwcGVuZCgnZGlza191c2FnZScpCisgICAgX250dXBsZV9kaXNrdXNhZ2UgPSBjb2xsZWN0aW9ucy5uYW1lZHR1cGxlKCd1c2FnZScsICd0b3RhbCB1c2VkIGZyZWUnKQorCisgICAgZGVmIGRpc2tfdXNhZ2UocGF0aCk6CisgICAgICAgICIiIlJldHVybiBkaXNrIHVzYWdlIHN0YXRpc3RpY3MgYWJvdXQgdGhlIGdpdmVuIHBhdGguCisKKyAgICAgICAgUmV0dXJuZWQgdmFsdXMgaXMgYSBuYW1lZCB0dXBsZSB3aXRoIGF0dHJpYnV0ZXMgJ3RvdGFsJywgJ3VzZWQnIGFuZAorICAgICAgICAnZnJlZScsIHdoaWNoIGFyZSB0aGUgYW1vdW50IG9mIHRvdGFsLCB1c2VkIGFuZCBmcmVlIHNwYWNlLCBpbiBieXRlcy4KKyAgICAgICAgIiIiCisgICAgICAgIHRvdGFsLCBmcmVlID0gbnQuX2dldGRpc2t1c2FnZShwYXRoKQorICAgICAgICB1c2VkID0gdG90YWwgLSBmcmVlCisgICAgICAgIHJldHVybiBfbnR1cGxlX2Rpc2t1c2FnZSh0b3RhbCwgdXNlZCwgZnJlZSkKKworCitkZWYgY2hvd24ocGF0aCwgdXNlcj1Ob25lLCBncm91cD1Ob25lKToKKyAgICAiIiJDaGFuZ2Ugb3duZXIgdXNlciBhbmQgZ3JvdXAgb2YgdGhlIGdpdmVuIHBhdGguCisKKyAgICB1c2VyIGFuZCBncm91cCBjYW4gYmUgdGhlIHVpZC9naWQgb3IgdGhlIHVzZXIvZ3JvdXAgbmFtZXMsIGFuZCBpbiB0aGF0IGNhc2UsCisgICAgdGhleSBhcmUgY29udmVydGVkIHRvIHRoZWlyIHJlc3BlY3RpdmUgdWlkL2dpZC4KKyAgICAiIiIKKworICAgIGlmIHVzZXIgaXMgTm9uZSBhbmQgZ3JvdXAgaXMgTm9uZToKKyAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigidXNlciBhbmQvb3IgZ3JvdXAgbXVzdCBiZSBzZXQiKQorCisgICAgX3VzZXIgPSB1c2VyCisgICAgX2dyb3VwID0gZ3JvdXAKKworICAgICMgLTEgbWVhbnMgZG9uJ3QgY2hhbmdlIGl0CisgICAgaWYgdXNlciBpcyBOb25lOgorICAgICAgICBfdXNlciA9IC0xCisgICAgIyB1c2VyIGNhbiBlaXRoZXIgYmUgYW4gaW50ICh0aGUgdWlkKSBvciBhIHN0cmluZyAodGhlIHN5c3RlbSB1c2VybmFtZSkKKyAgICBlbGlmIGlzaW5zdGFuY2UodXNlciwgc3RyKToKKyAgICAgICAgX3VzZXIgPSBfZ2V0X3VpZCh1c2VyKQorICAgICAgICBpZiBfdXNlciBpcyBOb25lOgorICAgICAgICAgICAgcmFpc2UgTG9va3VwRXJyb3IoIm5vIHN1Y2ggdXNlcjogeyFyfSIuZm9ybWF0KHVzZXIpKQorCisgICAgaWYgZ3JvdXAgaXMgTm9uZToKKyAgICAgICAgX2dyb3VwID0gLTEKKyAgICBlbGlmIG5vdCBpc2luc3RhbmNlKGdyb3VwLCBpbnQpOgorICAgICAgICBfZ3JvdXAgPSBfZ2V0X2dpZChncm91cCkKKyAgICAgICAgaWYgX2dyb3VwIGlzIE5vbmU6CisgICAgICAgICAgICByYWlzZSBMb29rdXBFcnJvcigibm8gc3VjaCBncm91cDogeyFyfSIuZm9ybWF0KGdyb3VwKSkKKworICAgIG9zLmNob3duKHBhdGgsIF91c2VyLCBfZ3JvdXApCmRpZmYgLS1naXQgYS9MaWIvc2l0ZS5weSBiL0xpYi9zaXRlLnB5CmluZGV4IGEyYzBiZWMuLjZlZjFlMGIgMTAwNjQ0Ci0tLSBhL0xpYi9zaXRlLnB5CisrKyBiL0xpYi9zaXRlLnB5CkBAIC0xMzgsNyArMTM4LDcgQEAKICAgICAgICAgcmVzZXQgPSAwCiAgICAgZnVsbG5hbWUgPSBvcy5wYXRoLmpvaW4oc2l0ZWRpciwgbmFtZSkKICAgICB0cnk6Ci0gICAgICAgIGYgPSBvcGVuKGZ1bGxuYW1lLCAiclUiKQorICAgICAgICBmID0gb3BlbihmdWxsbmFtZSwgInIiKQogICAgIGV4Y2VwdCBJT0Vycm9yOgogICAgICAgICByZXR1cm4KICAgICB3aXRoIGY6CkBAIC0xNTQsNyArMTU0LDcgQEAKICAgICAgICAgICAgICAgICBpZiBub3QgZGlyY2FzZSBpbiBrbm93bl9wYXRocyBhbmQgb3MucGF0aC5leGlzdHMoZGlyKToKICAgICAgICAgICAgICAgICAgICAgc3lzLnBhdGguYXBwZW5kKGRpcikKICAgICAgICAgICAgICAgICAgICAga25vd25fcGF0aHMuYWRkKGRpcmNhc2UpCi0gICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGVycjoKKyAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb246CiAgICAgICAgICAgICAgICAgcHJpbnQoIkVycm9yIHByb2Nlc3NpbmcgbGluZSB7OmR9IG9mIHt9OlxuIi5mb3JtYXQobisxLCBmdWxsbmFtZSksCiAgICAgICAgICAgICAgICAgICAgICAgZmlsZT1zeXMuc3RkZXJyKQogICAgICAgICAgICAgICAgIGZvciByZWNvcmQgaW4gdHJhY2ViYWNrLmZvcm1hdF9leGNlcHRpb24oKnN5cy5leGNfaW5mbygpKToKQEAgLTI0MSw3ICsyNDEsNiBAQAogICAgICAgICByZXR1cm4gVVNFUl9TSVRFCiAKICAgICBmcm9tIHN5c2NvbmZpZyBpbXBvcnQgZ2V0X3BhdGgKLSAgICBpbXBvcnQgb3MKIAogICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnZGFyd2luJzoKICAgICAgICAgZnJvbSBzeXNjb25maWcgaW1wb3J0IGdldF9jb25maWdfdmFyCkBAIC0zODUsNyArMzg0LDcgQEAKICAgICAgICAgICAgIGZvciBmaWxlbmFtZSBpbiBzZWxmLl9fZmlsZXM6CiAgICAgICAgICAgICAgICAgZmlsZW5hbWUgPSBvcy5wYXRoLmpvaW4oZGlyLCBmaWxlbmFtZSkKICAgICAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgICAgIGZwID0gb3BlbihmaWxlbmFtZSwgInJVIikKKyAgICAgICAgICAgICAgICAgICAgZnAgPSBvcGVuKGZpbGVuYW1lLCAiciIpCiAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBmcC5yZWFkKCkKICAgICAgICAgICAgICAgICAgICAgZnAuY2xvc2UoKQogICAgICAgICAgICAgICAgICAgICBicmVhawpAQCAtNTA4LDYgKzUwNywxMSBAQAogCiAKIGRlZiBtYWluKCk6CisgICAgIiIiQWRkIHN0YW5kYXJkIHNpdGUtc3BlY2lmaWMgZGlyZWN0b3JpZXMgdG8gdGhlIG1vZHVsZSBzZWFyY2ggcGF0aC4KKworICAgIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGF1dG9tYXRpY2FsbHkgd2hlbiB0aGlzIG1vZHVsZSBpcyBpbXBvcnRlZCwKKyAgICB1bmxlc3MgdGhlIHB5dGhvbiBpbnRlcnByZXRlciB3YXMgc3RhcnRlZCB3aXRoIHRoZSAtUyBmbGFnLgorICAgICIiIgogICAgIGdsb2JhbCBFTkFCTEVfVVNFUl9TSVRFCiAKICAgICBhYnNfcGF0aHMoKQpAQCAtNTI2LDcgKzUzMCwxMCBAQAogICAgIGlmIEVOQUJMRV9VU0VSX1NJVEU6CiAgICAgICAgIGV4ZWN1c2VyY3VzdG9taXplKCkKIAotbWFpbigpCisjIFByZXZlbnQgZWRpdGlvbiBvZiBzeXMucGF0aCB3aGVuIHB5dGhvbiB3YXMgc3RhcnRlZCB3aXRoIC1TIGFuZAorIyBzaXRlIGlzIGltcG9ydGVkIGxhdGVyLgoraWYgbm90IHN5cy5mbGFncy5ub19zaXRlOgorICAgIG1haW4oKQogCiBkZWYgX3NjcmlwdCgpOgogICAgIGhlbHAgPSAiIiJcCmRpZmYgLS1naXQgYS9MaWIvc210cGQucHkgYi9MaWIvc210cGQucHkKaW5kZXggOGNkNDA1Yy4uZDY2YjBkNyAxMDA3NTUKLS0tIGEvTGliL3NtdHBkLnB5CisrKyBiL0xpYi9zbXRwZC5weQpAQCAtMTQyLDEyMiArMTQyLDEyMiBAQAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX3NlcnZlcihzZWxmKToKICAgICAgICAgd2FybigiQWNjZXNzIHRvIF9fc2VydmVyIGF0dHJpYnV0ZSBvbiBTTVRQQ2hhbm5lbCBpcyBkZXByZWNhdGVkLCAiCi0gICAgICAgICAgICAidXNlICdzbXRwX3NlcnZlcicgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAidXNlICdzbXRwX3NlcnZlcicgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgcmV0dXJuIHNlbGYuc210cF9zZXJ2ZXIKICAgICBAX19zZXJ2ZXIuc2V0dGVyCiAgICAgZGVmIF9fc2VydmVyKHNlbGYsIHZhbHVlKToKICAgICAgICAgd2FybigiU2V0dGluZyBfX3NlcnZlciBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInNldCAnc210cF9zZXJ2ZXInIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInNldCAnc210cF9zZXJ2ZXInIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHNlbGYuc210cF9zZXJ2ZXIgPSB2YWx1ZQogCiAgICAgQHByb3BlcnR5CiAgICAgZGVmIF9fbGluZShzZWxmKToKICAgICAgICAgd2FybigiQWNjZXNzIHRvIF9fbGluZSBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAncmVjZWl2ZWRfbGluZXMnIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInVzZSAncmVjZWl2ZWRfbGluZXMnIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHJldHVybiBzZWxmLnJlY2VpdmVkX2xpbmVzCiAgICAgQF9fbGluZS5zZXR0ZXIKICAgICBkZWYgX19saW5lKHNlbGYsIHZhbHVlKToKICAgICAgICAgd2FybigiU2V0dGluZyBfX2xpbmUgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ3JlY2VpdmVkX2xpbmVzJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJzZXQgJ3JlY2VpdmVkX2xpbmVzJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICBzZWxmLnJlY2VpdmVkX2xpbmVzID0gdmFsdWUKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX3N0YXRlKHNlbGYpOgogICAgICAgICB3YXJuKCJBY2Nlc3MgdG8gX19zdGF0ZSBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAnc210cF9zdGF0ZScgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAidXNlICdzbXRwX3N0YXRlJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICByZXR1cm4gc2VsZi5zbXRwX3N0YXRlCiAgICAgQF9fc3RhdGUuc2V0dGVyCiAgICAgZGVmIF9fc3RhdGUoc2VsZiwgdmFsdWUpOgogICAgICAgICB3YXJuKCJTZXR0aW5nIF9fc3RhdGUgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ3NtdHBfc3RhdGUnIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInNldCAnc210cF9zdGF0ZScgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgc2VsZi5zbXRwX3N0YXRlID0gdmFsdWUKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX2dyZWV0aW5nKHNlbGYpOgogICAgICAgICB3YXJuKCJBY2Nlc3MgdG8gX19ncmVldGluZyBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAnc2Vlbl9ncmVldGluZycgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAidXNlICdzZWVuX2dyZWV0aW5nJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICByZXR1cm4gc2VsZi5zZWVuX2dyZWV0aW5nCiAgICAgQF9fZ3JlZXRpbmcuc2V0dGVyCiAgICAgZGVmIF9fZ3JlZXRpbmcoc2VsZiwgdmFsdWUpOgogICAgICAgICB3YXJuKCJTZXR0aW5nIF9fZ3JlZXRpbmcgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ3NlZW5fZ3JlZXRpbmcnIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInNldCAnc2Vlbl9ncmVldGluZycgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgc2VsZi5zZWVuX2dyZWV0aW5nID0gdmFsdWUKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX21haWxmcm9tKHNlbGYpOgogICAgICAgICB3YXJuKCJBY2Nlc3MgdG8gX19tYWlsZnJvbSBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAnbWFpbGZyb20nIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInVzZSAnbWFpbGZyb20nIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHJldHVybiBzZWxmLm1haWxmcm9tCiAgICAgQF9fbWFpbGZyb20uc2V0dGVyCiAgICAgZGVmIF9fbWFpbGZyb20oc2VsZiwgdmFsdWUpOgogICAgICAgICB3YXJuKCJTZXR0aW5nIF9fbWFpbGZyb20gYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ21haWxmcm9tJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJzZXQgJ21haWxmcm9tJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICBzZWxmLm1haWxmcm9tID0gdmFsdWUKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX3JjcHR0b3Moc2VsZik6CiAgICAgICAgIHdhcm4oIkFjY2VzcyB0byBfX3JjcHR0b3MgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJ1c2UgJ3JjcHR0b3MnIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInVzZSAncmNwdHRvcycgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgcmV0dXJuIHNlbGYucmNwdHRvcwogICAgIEBfX3JjcHR0b3Muc2V0dGVyCiAgICAgZGVmIF9fcmNwdHRvcyhzZWxmLCB2YWx1ZSk6CiAgICAgICAgIHdhcm4oIlNldHRpbmcgX19yY3B0dG9zIGF0dHJpYnV0ZSBvbiBTTVRQQ2hhbm5lbCBpcyBkZXByZWNhdGVkLCAiCi0gICAgICAgICAgICAic2V0ICdyY3B0dG9zJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJzZXQgJ3JjcHR0b3MnIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHNlbGYucmNwdHRvcyA9IHZhbHVlCiAKICAgICBAcHJvcGVydHkKICAgICBkZWYgX19kYXRhKHNlbGYpOgogICAgICAgICB3YXJuKCJBY2Nlc3MgdG8gX19kYXRhIGF0dHJpYnV0ZSBvbiBTTVRQQ2hhbm5lbCBpcyBkZXByZWNhdGVkLCAiCi0gICAgICAgICAgICAidXNlICdyZWNlaXZlZF9kYXRhJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJ1c2UgJ3JlY2VpdmVkX2RhdGEnIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHJldHVybiBzZWxmLnJlY2VpdmVkX2RhdGEKICAgICBAX19kYXRhLnNldHRlcgogICAgIGRlZiBfX2RhdGEoc2VsZiwgdmFsdWUpOgogICAgICAgICB3YXJuKCJTZXR0aW5nIF9fZGF0YSBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInNldCAncmVjZWl2ZWRfZGF0YScgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAic2V0ICdyZWNlaXZlZF9kYXRhJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICBzZWxmLnJlY2VpdmVkX2RhdGEgPSB2YWx1ZQogCiAgICAgQHByb3BlcnR5CiAgICAgZGVmIF9fZnFkbihzZWxmKToKICAgICAgICAgd2FybigiQWNjZXNzIHRvIF9fZnFkbiBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAnZnFkbicgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAidXNlICdmcWRuJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICByZXR1cm4gc2VsZi5mcWRuCiAgICAgQF9fZnFkbi5zZXR0ZXIKICAgICBkZWYgX19mcWRuKHNlbGYsIHZhbHVlKToKICAgICAgICAgd2FybigiU2V0dGluZyBfX2ZxZG4gYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ2ZxZG4nIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInNldCAnZnFkbicgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgc2VsZi5mcWRuID0gdmFsdWUKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBfX3BlZXIoc2VsZik6CiAgICAgICAgIHdhcm4oIkFjY2VzcyB0byBfX3BlZXIgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJ1c2UgJ3BlZXInIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInVzZSAncGVlcicgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgcmV0dXJuIHNlbGYucGVlcgogICAgIEBfX3BlZXIuc2V0dGVyCiAgICAgZGVmIF9fcGVlcihzZWxmLCB2YWx1ZSk6CiAgICAgICAgIHdhcm4oIlNldHRpbmcgX19wZWVyIGF0dHJpYnV0ZSBvbiBTTVRQQ2hhbm5lbCBpcyBkZXByZWNhdGVkLCAiCi0gICAgICAgICAgICAic2V0ICdwZWVyJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJzZXQgJ3BlZXInIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHNlbGYucGVlciA9IHZhbHVlCiAKICAgICBAcHJvcGVydHkKICAgICBkZWYgX19jb25uKHNlbGYpOgogICAgICAgICB3YXJuKCJBY2Nlc3MgdG8gX19jb25uIGF0dHJpYnV0ZSBvbiBTTVRQQ2hhbm5lbCBpcyBkZXByZWNhdGVkLCAiCi0gICAgICAgICAgICAidXNlICdjb25uJyBpbnN0ZWFkIiwgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZywgMikKKyAgICAgICAgICAgICJ1c2UgJ2Nvbm4nIGluc3RlYWQiLCBEZXByZWNhdGlvbldhcm5pbmcsIDIpCiAgICAgICAgIHJldHVybiBzZWxmLmNvbm4KICAgICBAX19jb25uLnNldHRlcgogICAgIGRlZiBfX2Nvbm4oc2VsZiwgdmFsdWUpOgogICAgICAgICB3YXJuKCJTZXR0aW5nIF9fY29ubiBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInNldCAnY29ubicgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAic2V0ICdjb25uJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICBzZWxmLmNvbm4gPSB2YWx1ZQogCiAgICAgQHByb3BlcnR5CiAgICAgZGVmIF9fYWRkcihzZWxmKToKICAgICAgICAgd2FybigiQWNjZXNzIHRvIF9fYWRkciBhdHRyaWJ1dGUgb24gU01UUENoYW5uZWwgaXMgZGVwcmVjYXRlZCwgIgotICAgICAgICAgICAgInVzZSAnYWRkcicgaW5zdGVhZCIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsIDIpCisgICAgICAgICAgICAidXNlICdhZGRyJyBpbnN0ZWFkIiwgRGVwcmVjYXRpb25XYXJuaW5nLCAyKQogICAgICAgICByZXR1cm4gc2VsZi5hZGRyCiAgICAgQF9fYWRkci5zZXR0ZXIKICAgICBkZWYgX19hZGRyKHNlbGYsIHZhbHVlKToKICAgICAgICAgd2FybigiU2V0dGluZyBfX2FkZHIgYXR0cmlidXRlIG9uIFNNVFBDaGFubmVsIGlzIGRlcHJlY2F0ZWQsICIKLSAgICAgICAgICAgICJzZXQgJ2FkZHInIGluc3RlYWQiLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nLCAyKQorICAgICAgICAgICAgInNldCAnYWRkcicgaW5zdGVhZCIsIERlcHJlY2F0aW9uV2FybmluZywgMikKICAgICAgICAgc2VsZi5hZGRyID0gdmFsdWUKIAogICAgICMgT3ZlcnJpZGVzIGJhc2UgY2xhc3MgZm9yIGNvbnZlbmllbmNlCkBAIC0yNzUsNyArMjc1LDcgQEAKICAgICAgICAgICAgIHJldHVybgogICAgICAgICBlbGlmIGxpbWl0OgogICAgICAgICAgICAgc2VsZi5udW1fYnl0ZXMgKz0gbGVuKGRhdGEpCi0gICAgICAgIHNlbGYucmVjZWl2ZWRfbGluZXMuYXBwZW5kKHN0cihkYXRhLCAidXRmOCIpKQorICAgICAgICBzZWxmLnJlY2VpdmVkX2xpbmVzLmFwcGVuZChzdHIoZGF0YSwgInV0Zi04IikpCiAKICAgICAjIEltcGxlbWVudGF0aW9uIG9mIGJhc2UgY2xhc3MgYWJzdHJhY3QgbWV0aG9kCiAgICAgZGVmIGZvdW5kX3Rlcm1pbmF0b3Ioc2VsZik6CmRpZmYgLS1naXQgYS9MaWIvc210cGxpYi5weSBiL0xpYi9zbXRwbGliLnB5CmluZGV4IGZiZWY5NmUuLmQzN2IwZTIgMTAwNjQ0Ci0tLSBhL0xpYi9zbXRwbGliLnB5CisrKyBiL0xpYi9zbXRwbGliLnB5CkBAIC0xMzMsMjQgKzEzMywxOCBAQAogICAgIGNvbWJpbmF0aW9uIHByb3ZpZGVkLgogICAgICIiIgogCi1kZWYgcXVvdGVhZGRyKGFkZHIpOgorZGVmIHF1b3RlYWRkcihhZGRyc3RyaW5nKToKICAgICAiIiJRdW90ZSBhIHN1YnNldCBvZiB0aGUgZW1haWwgYWRkcmVzc2VzIGRlZmluZWQgYnkgUkZDIDgyMS4KIAogICAgIFNob3VsZCBiZSBhYmxlIHRvIGhhbmRsZSBhbnl0aGluZyBlbWFpbC51dGlscy5wYXJzZWFkZHIgY2FuIGhhbmRsZS4KICAgICAiIiIKLSAgICBtID0gKE5vbmUsIE5vbmUpCi0gICAgdHJ5OgotICAgICAgICBtID0gZW1haWwudXRpbHMucGFyc2VhZGRyKGFkZHIpWzFdCi0gICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgotICAgICAgICBwYXNzCi0gICAgaWYgbSA9PSAoTm9uZSwgTm9uZSk6ICAjIEluZGljYXRlcyBwYXJzZSBmYWlsdXJlIG9yIEF0dHJpYnV0ZUVycm9yCi0gICAgICAgICMgc29tZXRoaW5nIHdlaXJkIGhlcmUuLiBwdW50IC1kZG0KLSAgICAgICAgcmV0dXJuICI8JXM+IiAlIGFkZHIKLSAgICBlbGlmIG0gaXMgTm9uZToKLSAgICAgICAgIyB0aGUgc2VuZGVyIHdhbnRzIGFuIGVtcHR5IHJldHVybiBhZGRyZXNzCi0gICAgICAgIHJldHVybiAiPD4iCi0gICAgZWxzZToKLSAgICAgICAgcmV0dXJuICI8JXM+IiAlIG0KKyAgICBkaXNwbGF5bmFtZSwgYWRkciA9IGVtYWlsLnV0aWxzLnBhcnNlYWRkcihhZGRyc3RyaW5nKQorICAgIGlmIChkaXNwbGF5bmFtZSwgYWRkcikgPT0gKCcnLCAnJyk6CisgICAgICAgICMgcGFyc2VhZGRyIGNvdWxkbid0IHBhcnNlIGl0LCB1c2UgaXQgYXMgaXMgYW5kIGhvcGUgZm9yIHRoZSBiZXN0LgorICAgICAgICBpZiBhZGRyc3RyaW5nLnN0cmlwKCkuc3RhcnRzd2l0aCgnPCcpOgorICAgICAgICAgICAgcmV0dXJuIGFkZHJzdHJpbmcKKyAgICAgICAgcmV0dXJuICI8JXM+IiAlIGFkZHJzdHJpbmcKKyAgICByZXR1cm4gIjwlcz4iICUgYWRkcgogCiBkZWYgX2FkZHJfb25seShhZGRyc3RyaW5nKToKICAgICBkaXNwbGF5bmFtZSwgYWRkciA9IGVtYWlsLnV0aWxzLnBhcnNlYWRkcihhZGRyc3RyaW5nKQpAQCAtMTgwLDI3ICsxNzQsNiBAQAogZXhjZXB0IEltcG9ydEVycm9yOgogICAgIF9oYXZlX3NzbCA9IEZhbHNlCiBlbHNlOgotICAgIGNsYXNzIFNTTEZha2VGaWxlOgotICAgICAgICAiIiJBIGZha2UgZmlsZSBsaWtlIG9iamVjdCB0aGF0IHJlYWxseSB3cmFwcyBhIFNTTE9iamVjdC4KLQotICAgICAgICBJdCBvbmx5IHN1cHBvcnRzIHdoYXQgaXMgbmVlZGVkIGluIHNtdHBsaWIuCi0gICAgICAgICIiIgotICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgc3Nsb2JqKToKLSAgICAgICAgICAgIHNlbGYuc3Nsb2JqID0gc3Nsb2JqCi0KLSAgICAgICAgZGVmIHJlYWRsaW5lKHNlbGYpOgotICAgICAgICAgICAgc3RyID0gYiIiCi0gICAgICAgICAgICBjaHIgPSBOb25lCi0gICAgICAgICAgICB3aGlsZSBjaHIgIT0gYiJcbiI6Ci0gICAgICAgICAgICAgICAgY2hyID0gc2VsZi5zc2xvYmoucmVhZCgxKQotICAgICAgICAgICAgICAgIGlmIG5vdCBjaHI6Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgc3RyICs9IGNocgotICAgICAgICAgICAgcmV0dXJuIHN0cgotCi0gICAgICAgIGRlZiBjbG9zZShzZWxmKToKLSAgICAgICAgICAgIHBhc3MKLQogICAgIF9oYXZlX3NzbCA9IFRydWUKIAogCkBAIC0yNDIsNyArMjE1LDggQEAKICAgICBkZWZhdWx0X3BvcnQgPSBTTVRQX1BPUlQKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBob3N0PScnLCBwb3J0PTAsIGxvY2FsX2hvc3RuYW1lPU5vbmUsCi0gICAgICAgICAgICAgICAgIHRpbWVvdXQ9c29ja2V0Ll9HTE9CQUxfREVGQVVMVF9USU1FT1VUKToKKyAgICAgICAgICAgICAgICAgdGltZW91dD1zb2NrZXQuX0dMT0JBTF9ERUZBVUxUX1RJTUVPVVQsCisgICAgICAgICAgICAgICAgIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgICAgICAiIiJJbml0aWFsaXplIGEgbmV3IGluc3RhbmNlLgogCiAgICAgICAgIElmIHNwZWNpZmllZCwgYGhvc3QnIGlzIHRoZSBuYW1lIG9mIHRoZSByZW1vdGUgaG9zdCB0byB3aGljaCB0bwpAQCAtMjUwLDExICsyMjQsMTYgQEAKICAgICAgICAgQnkgZGVmYXVsdCwgc210cGxpYi5TTVRQX1BPUlQgaXMgdXNlZC4gIEFuIFNNVFBDb25uZWN0RXJyb3IgaXMgcmFpc2VkCiAgICAgICAgIGlmIHRoZSBzcGVjaWZpZWQgYGhvc3QnIGRvZXNuJ3QgcmVzcG9uZCBjb3JyZWN0bHkuICBJZiBzcGVjaWZpZWQsCiAgICAgICAgIGBsb2NhbF9ob3N0bmFtZWAgaXMgdXNlZCBhcyB0aGUgRlFETiBvZiB0aGUgbG9jYWwgaG9zdC4gIEJ5IGRlZmF1bHQsCi0gICAgICAgIHRoZSBsb2NhbCBob3N0bmFtZSBpcyBmb3VuZCB1c2luZyBzb2NrZXQuZ2V0ZnFkbigpLgorICAgICAgICB0aGUgbG9jYWwgaG9zdG5hbWUgaXMgZm91bmQgdXNpbmcgc29ja2V0LmdldGZxZG4oKS4gVGhlCisgICAgICAgIGBzb3VyY2VfYWRkcmVzc2AgcGFyYW1ldGVyIHRha2VzIGEgMi10dXBsZSAoaG9zdCwgcG9ydCkgZm9yIHRoZSBzb2NrZXQKKyAgICAgICAgdG8gYmluZCB0byBhcyBpdHMgc291cmNlIGFkZHJlc3MgYmVmb3JlIGNvbm5lY3RpbmcuIElmIHRoZSBob3N0IGlzICcnCisgICAgICAgIGFuZCBwb3J0IGlzIDAsIHRoZSBPUyBkZWZhdWx0IGJlaGF2aW9yIHdpbGwgYmUgdXNlZC4KIAogICAgICAgICAiIiIKICAgICAgICAgc2VsZi50aW1lb3V0ID0gdGltZW91dAogICAgICAgICBzZWxmLmVzbXRwX2ZlYXR1cmVzID0ge30KKyAgICAgICAgc2VsZi5zb3VyY2VfYWRkcmVzcyA9IHNvdXJjZV9hZGRyZXNzCisKICAgICAgICAgaWYgaG9zdDoKICAgICAgICAgICAgIChjb2RlLCBtc2cpID0gc2VsZi5jb25uZWN0KGhvc3QsIHBvcnQpCiAgICAgICAgICAgICBpZiBjb2RlICE9IDIyMDoKQEAgLTI3Nyw2ICsyNTYsMTkgQEAKICAgICAgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICAgICAgICAgIHNlbGYubG9jYWxfaG9zdG5hbWUgPSAnWyVzXScgJSBhZGRyCiAKKyAgICBkZWYgX19lbnRlcl9fKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZgorCisgICAgZGVmIF9fZXhpdF9fKHNlbGYsICphcmdzKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY29kZSwgbWVzc2FnZSA9IHNlbGYuZG9jbWQoIlFVSVQiKQorICAgICAgICAgICAgaWYgY29kZSAhPSAyMjE6CisgICAgICAgICAgICAgICAgcmFpc2UgU01UUFJlc3BvbnNlRXhjZXB0aW9uKGNvZGUsIG1lc3NhZ2UpCisgICAgICAgIGV4Y2VwdCBTTVRQU2VydmVyRGlzY29ubmVjdGVkOgorICAgICAgICAgICAgcGFzcworICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc2VsZi5jbG9zZSgpCisKICAgICBkZWYgc2V0X2RlYnVnbGV2ZWwoc2VsZiwgZGVidWdsZXZlbCk6CiAgICAgICAgICIiIlNldCB0aGUgZGVidWcgb3V0cHV0IGxldmVsLgogCkBAIC0yOTAsMTAgKzI4MiwxMiBAQAogICAgICAgICAjIFRoaXMgbWFrZXMgaXQgc2ltcGxlciBmb3IgU01UUF9TU0wgdG8gdXNlIHRoZSBTTVRQIGNvbm5lY3QgY29kZQogICAgICAgICAjIGFuZCBqdXN0IGFsdGVyIHRoZSBzb2NrZXQgY29ubmVjdGlvbiBiaXQuCiAgICAgICAgIGlmIHNlbGYuZGVidWdsZXZlbCA+IDA6Ci0gICAgICAgICAgICBwcmludCgnY29ubmVjdDonLCAoaG9zdCwgcG9ydCksIGZpbGU9c3RkZXJyKQotICAgICAgICByZXR1cm4gc29ja2V0LmNyZWF0ZV9jb25uZWN0aW9uKChob3N0LCBwb3J0KSwgdGltZW91dCkKKyAgICAgICAgICAgIHByaW50KCdjb25uZWN0OiB0bycsIChob3N0LCBwb3J0KSwgc2VsZi5zb3VyY2VfYWRkcmVzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGU9c3RkZXJyKQorICAgICAgICByZXR1cm4gc29ja2V0LmNyZWF0ZV9jb25uZWN0aW9uKChob3N0LCBwb3J0KSwgdGltZW91dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnNvdXJjZV9hZGRyZXNzKQogCi0gICAgZGVmIGNvbm5lY3Qoc2VsZiwgaG9zdD0nbG9jYWxob3N0JywgcG9ydD0wKToKKyAgICBkZWYgY29ubmVjdChzZWxmLCBob3N0PSdsb2NhbGhvc3QnLCBwb3J0PTAsIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgICAgICAiIiJDb25uZWN0IHRvIGEgaG9zdCBvbiBhIGdpdmVuIHBvcnQuCiAKICAgICAgICAgSWYgdGhlIGhvc3RuYW1lIGVuZHMgd2l0aCBhIGNvbG9uIChgOicpIGZvbGxvd2VkIGJ5IGEgbnVtYmVyLCBhbmQKQEAgLTMwNCw2ICsyOTgsMTAgQEAKICAgICAgICAgc3BlY2lmaWVkIGR1cmluZyBpbnN0YW50aWF0aW9uLgogCiAgICAgICAgICIiIgorCisgICAgICAgIGlmIHNvdXJjZV9hZGRyZXNzOgorICAgICAgICAgICAgc2VsZi5zb3VyY2VfYWRkcmVzcyA9IHNvdXJjZV9hZGRyZXNzCisKICAgICAgICAgaWYgbm90IHBvcnQgYW5kIChob3N0LmZpbmQoJzonKSA9PSBob3N0LnJmaW5kKCc6JykpOgogICAgICAgICAgICAgaSA9IGhvc3QucmZpbmQoJzonKQogICAgICAgICAgICAgaWYgaSA+PSAwOgpAQCAtMzE3LDYgKzMxNSw3IEBACiAgICAgICAgIGlmIHNlbGYuZGVidWdsZXZlbCA+IDA6CiAgICAgICAgICAgICBwcmludCgnY29ubmVjdDonLCAoaG9zdCwgcG9ydCksIGZpbGU9c3RkZXJyKQogICAgICAgICBzZWxmLnNvY2sgPSBzZWxmLl9nZXRfc29ja2V0KGhvc3QsIHBvcnQsIHNlbGYudGltZW91dCkKKyAgICAgICAgc2VsZi5maWxlID0gTm9uZQogICAgICAgICAoY29kZSwgbXNnKSA9IHNlbGYuZ2V0cmVwbHkoKQogICAgICAgICBpZiBzZWxmLmRlYnVnbGV2ZWwgPiAwOgogICAgICAgICAgICAgcHJpbnQoImNvbm5lY3Q6IiwgbXNnLCBmaWxlPXN0ZGVycikKQEAgLTM4OCw3ICszODcsOCBAQAogCiAgICAgICAgIGVycm1zZyA9IGIiXG4iLmpvaW4ocmVzcCkKICAgICAgICAgaWYgc2VsZi5kZWJ1Z2xldmVsID4gMDoKLSAgICAgICAgICAgIHByaW50KCdyZXBseTogcmV0Y29kZSAoJXMpOyBNc2c6ICVzJyAlIChlcnJjb2RlLCBlcnJtc2cpLCBmaWxlPXN0ZGVycikKKyAgICAgICAgICAgIHByaW50KCdyZXBseTogcmV0Y29kZSAoJXMpOyBNc2c6ICVzJyAlIChlcnJjb2RlLCBlcnJtc2cpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGU9c3RkZXJyKQogICAgICAgICByZXR1cm4gZXJyY29kZSwgZXJybXNnCiAKICAgICBkZWYgZG9jbWQoc2VsZiwgY21kLCBhcmdzPSIiKToKQEAgLTYzMiw3ICs2MzIsNyBAQAogICAgICAgICAjIFdlIGNvdWxkIG5vdCBsb2dpbiBzdWNlc3NmdWxseS4gUmV0dXJuIHJlc3VsdCBvZiBsYXN0IGF0dGVtcHQuCiAgICAgICAgIHJhaXNlIFNNVFBBdXRoZW50aWNhdGlvbkVycm9yKGNvZGUsIHJlc3ApCiAKLSAgICBkZWYgc3RhcnR0bHMoc2VsZiwga2V5ZmlsZT1Ob25lLCBjZXJ0ZmlsZT1Ob25lKToKKyAgICBkZWYgc3RhcnR0bHMoc2VsZiwga2V5ZmlsZT1Ob25lLCBjZXJ0ZmlsZT1Ob25lLCBjb250ZXh0PU5vbmUpOgogICAgICAgICAiIiJQdXRzIHRoZSBjb25uZWN0aW9uIHRvIHRoZSBTTVRQIHNlcnZlciBpbnRvIFRMUyBtb2RlLgogCiAgICAgICAgIElmIHRoZXJlIGhhcyBiZWVuIG5vIHByZXZpb3VzIEVITE8gb3IgSEVMTyBjb21tYW5kIHRoaXMgc2Vzc2lvbiwgdGhpcwpAQCAtNjU2LDggKzY1NiwxNyBAQAogICAgICAgICBpZiByZXNwID09IDIyMDoKICAgICAgICAgICAgIGlmIG5vdCBfaGF2ZV9zc2w6CiAgICAgICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJObyBTU0wgc3VwcG9ydCBpbmNsdWRlZCBpbiB0aGlzIFB5dGhvbiIpCi0gICAgICAgICAgICBzZWxmLnNvY2sgPSBzc2wud3JhcF9zb2NrZXQoc2VsZi5zb2NrLCBrZXlmaWxlLCBjZXJ0ZmlsZSkKLSAgICAgICAgICAgIHNlbGYuZmlsZSA9IFNTTEZha2VGaWxlKHNlbGYuc29jaykKKyAgICAgICAgICAgIGlmIGNvbnRleHQgaXMgbm90IE5vbmUgYW5kIGtleWZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY29udGV4dCBhbmQga2V5ZmlsZSBhcmd1bWVudHMgYXJlIG11dHVhbGx5ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleGNsdXNpdmUiKQorICAgICAgICAgICAgaWYgY29udGV4dCBpcyBub3QgTm9uZSBhbmQgY2VydGZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY29udGV4dCBhbmQgY2VydGZpbGUgYXJndW1lbnRzIGFyZSBtdXR1YWxseSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhjbHVzaXZlIikKKyAgICAgICAgICAgIGlmIGNvbnRleHQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5zb2NrID0gY29udGV4dC53cmFwX3NvY2tldChzZWxmLnNvY2spCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuc29jayA9IHNzbC53cmFwX3NvY2tldChzZWxmLnNvY2ssIGtleWZpbGUsIGNlcnRmaWxlKQorICAgICAgICAgICAgc2VsZi5maWxlID0gTm9uZQogICAgICAgICAgICAgIyBSRkMgMzIwNzoKICAgICAgICAgICAgICMgVGhlIGNsaWVudCBNVVNUIGRpc2NhcmQgYW55IGtub3dsZWRnZSBvYnRhaW5lZCBmcm9tCiAgICAgICAgICAgICAjIHRoZSBzZXJ2ZXIsIHN1Y2ggYXMgdGhlIGxpc3Qgb2YgU01UUCBzZXJ2aWNlIGV4dGVuc2lvbnMsCkBAIC03ODYsNyArNzk1LDggQEAKICAgICAgICAgIyBUT0RPIGltcGxlbWVudCBoZXVyaXN0aWNzIHRvIGd1ZXNzIHRoZSBjb3JyZWN0IFJlc2VudC0qIGJsb2NrIHdpdGggYW4KICAgICAgICAgIyBvcHRpb24gYWxsb3dpbmcgdGhlIHVzZXIgdG8gZW5hYmxlIHRoZSBoZXVyaXN0aWNzLiAgKEl0IHNob3VsZCBiZQogICAgICAgICAjIHBvc3NpYmxlIHRvIGd1ZXNzIGNvcnJlY3RseSBhbG1vc3QgYWxsIG9mIHRoZSB0aW1lLikKLSAgICAgICAgcmVzZW50ID1tc2cuZ2V0X2FsbCgnUmVzZW50LURhdGUnKQorCisgICAgICAgIHJlc2VudCA9IG1zZy5nZXRfYWxsKCdSZXNlbnQtRGF0ZScpCiAgICAgICAgIGlmIHJlc2VudCBpcyBOb25lOgogICAgICAgICAgICAgaGVhZGVyX3ByZWZpeCA9ICcnCiAgICAgICAgIGVsaWYgbGVuKHJlc2VudCkgPT0gMToKQEAgLTc5NSwxMyArODA1LDEzIEBACiAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJtZXNzYWdlIGhhcyBtb3JlIHRoYW4gb25lICdSZXNlbnQtJyBoZWFkZXIgYmxvY2siKQogICAgICAgICBpZiBmcm9tX2FkZHIgaXMgTm9uZToKICAgICAgICAgICAgICMgUHJlZmVyIHRoZSBzZW5kZXIgZmllbGQgcGVyIFJGQyAyODIyOjMuNi4yLgotICAgICAgICAgICAgZnJvbV9hZGRyID0gKG1zZ1toZWFkZXJfcHJlZml4KydTZW5kZXInXQotICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGhlYWRlcl9wcmVmaXgrJ1NlbmRlcicpIGluIG1zZwotICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBtc2dbaGVhZGVyX3ByZWZpeCsnRnJvbSddKQorICAgICAgICAgICAgZnJvbV9hZGRyID0gKG1zZ1toZWFkZXJfcHJlZml4ICsgJ1NlbmRlciddCisgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGVhZGVyX3ByZWZpeCArICdTZW5kZXInKSBpbiBtc2cKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgbXNnW2hlYWRlcl9wcmVmaXggKyAnRnJvbSddKQogICAgICAgICBpZiB0b19hZGRycyBpcyBOb25lOgotICAgICAgICAgICAgYWRkcl9maWVsZHMgPSBbZiBmb3IgZiBpbiAobXNnW2hlYWRlcl9wcmVmaXgrJ1RvJ10sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2dbaGVhZGVyX3ByZWZpeCsnQmNjJ10sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2dbaGVhZGVyX3ByZWZpeCsnQ2MnXSkgaWYgZiBpcyBub3QgTm9uZV0KKyAgICAgICAgICAgIGFkZHJfZmllbGRzID0gW2YgZm9yIGYgaW4gKG1zZ1toZWFkZXJfcHJlZml4ICsgJ1RvJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2dbaGVhZGVyX3ByZWZpeCArICdCY2MnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZ1toZWFkZXJfcHJlZml4ICsgJ0NjJ10pIGlmIGYgaXMgbm90IE5vbmVdCiAgICAgICAgICAgICB0b19hZGRycyA9IFthWzFdIGZvciBhIGluIGVtYWlsLnV0aWxzLmdldGFkZHJlc3NlcyhhZGRyX2ZpZWxkcyldCiAgICAgICAgICMgTWFrZSBhIGxvY2FsIGNvcHkgc28gd2UgY2FuIGRlbGV0ZSB0aGUgYmNjIGhlYWRlcnMuCiAgICAgICAgIG1zZ19jb3B5ID0gY29weS5jb3B5KG1zZykKQEAgLTgzNSwyNiArODQ1LDQxIEBACiAgICAgICAgICIiIiBUaGlzIGlzIGEgc3ViY2xhc3MgZGVyaXZlZCBmcm9tIFNNVFAgdGhhdCBjb25uZWN0cyBvdmVyIGFuIFNTTCBlbmNyeXB0ZWQKICAgICAgICAgc29ja2V0ICh0byB1c2UgdGhpcyBjbGFzcyB5b3UgbmVlZCBhIHNvY2tldCBtb2R1bGUgdGhhdCB3YXMgY29tcGlsZWQgd2l0aCBTU0wKICAgICAgICAgc3VwcG9ydCkuIElmIGhvc3QgaXMgbm90IHNwZWNpZmllZCwgJycgKHRoZSBsb2NhbCBob3N0KSBpcyB1c2VkLiBJZiBwb3J0IGlzCi0gICAgICAgIG9taXR0ZWQsIHRoZSBzdGFuZGFyZCBTTVRQLW92ZXItU1NMIHBvcnQgKDQ2NSkgaXMgdXNlZC4ga2V5ZmlsZSBhbmQgY2VydGZpbGUKKyAgICAgICAgb21pdHRlZCwgdGhlIHN0YW5kYXJkIFNNVFAtb3Zlci1TU0wgcG9ydCAoNDY1KSBpcyB1c2VkLiBUaGUgb3B0aW9uYWwKKyAgICAgICAgc291cmNlX2FkZHJlc3MgdGFrZXMgYSB0d28tdHVwbGUgKGhvc3QscG9ydCkgZm9yIHNvY2tldCB0byBiaW5kIHRvLiBrZXlmaWxlIGFuZCBjZXJ0ZmlsZQogICAgICAgICBhcmUgYWxzbyBvcHRpb25hbCAtIHRoZXkgY2FuIGNvbnRhaW4gYSBQRU0gZm9ybWF0dGVkIHByaXZhdGUga2V5IGFuZAotICAgICAgICBjZXJ0aWZpY2F0ZSBjaGFpbiBmaWxlIGZvciB0aGUgU1NMIGNvbm5lY3Rpb24uCisgICAgICAgIGNlcnRpZmljYXRlIGNoYWluIGZpbGUgZm9yIHRoZSBTU0wgY29ubmVjdGlvbi4gY29udGV4dCBhbHNvIG9wdGlvbmFsLCBjYW4gY29udGFpbgorICAgICAgICBhIFNTTENvbnRleHQsIGFuZCBpcyBhbiBhbHRlcm5hdGl2ZSB0byBrZXlmaWxlIGFuZCBjZXJ0ZmlsZTsgSWYgaXQgaXMgc3BlY2lmaWVkIGJvdGgKKyAgICAgICAga2V5ZmlsZSBhbmQgY2VydGZpbGUgbXVzdCBiZSBOb25lLgogICAgICAgICAiIiIKIAogICAgICAgICBkZWZhdWx0X3BvcnQgPSBTTVRQX1NTTF9QT1JUCiAKICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGhvc3Q9JycsIHBvcnQ9MCwgbG9jYWxfaG9zdG5hbWU9Tm9uZSwKICAgICAgICAgICAgICAgICAgICAgIGtleWZpbGU9Tm9uZSwgY2VydGZpbGU9Tm9uZSwKLSAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9c29ja2V0Ll9HTE9CQUxfREVGQVVMVF9USU1FT1VUKToKKyAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9c29ja2V0Ll9HTE9CQUxfREVGQVVMVF9USU1FT1VULAorICAgICAgICAgICAgICAgICAgICAgc291cmNlX2FkZHJlc3M9Tm9uZSwgY29udGV4dD1Ob25lKToKKyAgICAgICAgICAgIGlmIGNvbnRleHQgaXMgbm90IE5vbmUgYW5kIGtleWZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY29udGV4dCBhbmQga2V5ZmlsZSBhcmd1bWVudHMgYXJlIG11dHVhbGx5ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleGNsdXNpdmUiKQorICAgICAgICAgICAgaWYgY29udGV4dCBpcyBub3QgTm9uZSBhbmQgY2VydGZpbGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiY29udGV4dCBhbmQgY2VydGZpbGUgYXJndW1lbnRzIGFyZSBtdXR1YWxseSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhjbHVzaXZlIikKICAgICAgICAgICAgIHNlbGYua2V5ZmlsZSA9IGtleWZpbGUKICAgICAgICAgICAgIHNlbGYuY2VydGZpbGUgPSBjZXJ0ZmlsZQotICAgICAgICAgICAgU01UUC5fX2luaXRfXyhzZWxmLCBob3N0LCBwb3J0LCBsb2NhbF9ob3N0bmFtZSwgdGltZW91dCkKKyAgICAgICAgICAgIHNlbGYuY29udGV4dCA9IGNvbnRleHQKKyAgICAgICAgICAgIFNNVFAuX19pbml0X18oc2VsZiwgaG9zdCwgcG9ydCwgbG9jYWxfaG9zdG5hbWUsIHRpbWVvdXQsCisgICAgICAgICAgICAgICAgICAgIHNvdXJjZV9hZGRyZXNzKQogCiAgICAgICAgIGRlZiBfZ2V0X3NvY2tldChzZWxmLCBob3N0LCBwb3J0LCB0aW1lb3V0KToKICAgICAgICAgICAgIGlmIHNlbGYuZGVidWdsZXZlbCA+IDA6CiAgICAgICAgICAgICAgICAgcHJpbnQoJ2Nvbm5lY3Q6JywgKGhvc3QsIHBvcnQpLCBmaWxlPXN0ZGVycikKLSAgICAgICAgICAgIG5ld19zb2NrZXQgPSBzb2NrZXQuY3JlYXRlX2Nvbm5lY3Rpb24oKGhvc3QsIHBvcnQpLCB0aW1lb3V0KQotICAgICAgICAgICAgbmV3X3NvY2tldCA9IHNzbC53cmFwX3NvY2tldChuZXdfc29ja2V0LCBzZWxmLmtleWZpbGUsIHNlbGYuY2VydGZpbGUpCi0gICAgICAgICAgICBzZWxmLmZpbGUgPSBTU0xGYWtlRmlsZShuZXdfc29ja2V0KQorICAgICAgICAgICAgbmV3X3NvY2tldCA9IHNvY2tldC5jcmVhdGVfY29ubmVjdGlvbigoaG9zdCwgcG9ydCksIHRpbWVvdXQsCisgICAgICAgICAgICAgICAgICAgIHNlbGYuc291cmNlX2FkZHJlc3MpCisgICAgICAgICAgICBpZiBzZWxmLmNvbnRleHQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgbmV3X3NvY2tldCA9IHNlbGYuY29udGV4dC53cmFwX3NvY2tldChuZXdfc29ja2V0KQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBuZXdfc29ja2V0ID0gc3NsLndyYXBfc29ja2V0KG5ld19zb2NrZXQsIHNlbGYua2V5ZmlsZSwgc2VsZi5jZXJ0ZmlsZSkKICAgICAgICAgICAgIHJldHVybiBuZXdfc29ja2V0CiAKICAgICBfX2FsbF9fLmFwcGVuZCgiU01UUF9TU0wiKQpAQCAtODc5LDE4ICs5MDQsMjEgQEAKIAogICAgIGVobG9fbXNnID0gImxobG8iCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdD0nJywgcG9ydD1MTVRQX1BPUlQsIGxvY2FsX2hvc3RuYW1lPU5vbmUpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBob3N0PScnLCBwb3J0PUxNVFBfUE9SVCwgbG9jYWxfaG9zdG5hbWU9Tm9uZSwKKyAgICAgICAgICAgIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgICAgICAiIiJJbml0aWFsaXplIGEgbmV3IGluc3RhbmNlLiIiIgotICAgICAgICBTTVRQLl9faW5pdF9fKHNlbGYsIGhvc3QsIHBvcnQsIGxvY2FsX2hvc3RuYW1lKQorICAgICAgICBTTVRQLl9faW5pdF9fKHNlbGYsIGhvc3QsIHBvcnQsIGxvY2FsX2hvc3RuYW1lPWxvY2FsX2hvc3RuYW1lLAorICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZV9hZGRyZXNzPXNvdXJjZV9hZGRyZXNzKQogCi0gICAgZGVmIGNvbm5lY3Qoc2VsZiwgaG9zdD0nbG9jYWxob3N0JywgcG9ydD0wKToKKyAgICBkZWYgY29ubmVjdChzZWxmLCBob3N0PSdsb2NhbGhvc3QnLCBwb3J0PTAsIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgICAgICAiIiJDb25uZWN0IHRvIHRoZSBMTVRQIGRhZW1vbiwgb24gZWl0aGVyIGEgVW5peCBvciBhIFRDUCBzb2NrZXQuIiIiCiAgICAgICAgIGlmIGhvc3RbMF0gIT0gJy8nOgotICAgICAgICAgICAgcmV0dXJuIFNNVFAuY29ubmVjdChzZWxmLCBob3N0LCBwb3J0KQorICAgICAgICAgICAgcmV0dXJuIFNNVFAuY29ubmVjdChzZWxmLCBob3N0LCBwb3J0LCBzb3VyY2VfYWRkcmVzcz1zb3VyY2VfYWRkcmVzcykKIAogICAgICAgICAjIEhhbmRsZSBVbml4LWRvbWFpbiBzb2NrZXRzLgogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzZWxmLnNvY2sgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9VTklYLCBzb2NrZXQuU09DS19TVFJFQU0pCisgICAgICAgICAgICBzZWxmLmZpbGUgPSBOb25lCiAgICAgICAgICAgICBzZWxmLnNvY2suY29ubmVjdChob3N0KQogICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIG1zZzoKICAgICAgICAgICAgIGlmIHNlbGYuZGVidWdsZXZlbCA+IDA6CmRpZmYgLS1naXQgYS9MaWIvc29ja2V0LnB5IGIvTGliL3NvY2tldC5weQppbmRleCAxZTI4NTQ5Li5iMjk1NGI1IDEwMDY0NAotLS0gYS9MaWIvc29ja2V0LnB5CisrKyBiL0xpYi9zb2NrZXQucHkKQEAgLTUzLDcgKzUzLDYgQEAKIGV4Y2VwdCBJbXBvcnRFcnJvcjoKICAgICBlcnJubyA9IE5vbmUKIEVCQURGID0gZ2V0YXR0cihlcnJubywgJ0VCQURGJywgOSkKLUVJTlRSID0gZ2V0YXR0cihlcnJubywgJ0VJTlRSJywgNCkKIEVBR0FJTiA9IGdldGF0dHIoZXJybm8sICdFQUdBSU4nLCAxMSkKIEVXT1VMREJMT0NLID0gZ2V0YXR0cihlcnJubywgJ0VXT1VMREJMT0NLJywgMTEpCiAKQEAgLTExMiw2ICsxMTEsOSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzWzc6XSkKICAgICAgICAgcmV0dXJuIHMKIAorICAgIGRlZiBfX2dldHN0YXRlX18oc2VsZik6CisgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiQ2Fubm90IHNlcmlhbGl6ZSBzb2NrZXQgb2JqZWN0IikKKwogICAgIGRlZiBkdXAoc2VsZik6CiAgICAgICAgICIiImR1cCgpIC0+IHNvY2tldCBvYmplY3QKIApAQCAtMjc3LDExICsyNzksMTAgQEAKICAgICAgICAgICAgIGV4Y2VwdCB0aW1lb3V0OgogICAgICAgICAgICAgICAgIHNlbGYuX3RpbWVvdXRfb2NjdXJyZWQgPSBUcnVlCiAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgIGV4Y2VwdCBJbnRlcnJ1cHRlZEVycm9yOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCiAgICAgICAgICAgICBleGNlcHQgZXJyb3IgYXMgZToKLSAgICAgICAgICAgICAgICBuID0gZS5hcmdzWzBdCi0gICAgICAgICAgICAgICAgaWYgbiA9PSBFSU5UUjoKLSAgICAgICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgICAgICBpZiBuIGluIF9ibG9ja2luZ19lcnJub3M6CisgICAgICAgICAgICAgICAgaWYgZS5hcmdzWzBdIGluIF9ibG9ja2luZ19lcnJub3M6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOb25lCiAgICAgICAgICAgICAgICAgcmFpc2UKIApkaWZmIC0tZ2l0IGEvTGliL3NvY2tldHNlcnZlci5weSBiL0xpYi9zb2NrZXRzZXJ2ZXIucHkKaW5kZXggY2QzNjdmMS4uYTQ4N2U2MyAxMDA2NDQKLS0tIGEvTGliL3NvY2tldHNlcnZlci5weQorKysgYi9MaWIvc29ja2V0c2VydmVyLnB5CkBAIC0xNzAsNiArMTcwLDcgQEAKICAgICAtIHByb2Nlc3NfcmVxdWVzdChyZXF1ZXN0LCBjbGllbnRfYWRkcmVzcykKICAgICAtIHNodXRkb3duX3JlcXVlc3QocmVxdWVzdCkKICAgICAtIGNsb3NlX3JlcXVlc3QocmVxdWVzdCkKKyAgICAtIHNlcnZpY2VfYWN0aW9ucygpCiAgICAgLSBoYW5kbGVfZXJyb3IoKQogCiAgICAgTWV0aG9kcyBmb3IgZGVyaXZlZCBjbGFzc2VzOgpAQCAtMjI1LDYgKzIyNiw4IEBACiAgICAgICAgICAgICAgICAgciwgdywgZSA9IHNlbGVjdC5zZWxlY3QoW3NlbGZdLCBbXSwgW10sIHBvbGxfaW50ZXJ2YWwpCiAgICAgICAgICAgICAgICAgaWYgc2VsZiBpbiByOgogICAgICAgICAgICAgICAgICAgICBzZWxmLl9oYW5kbGVfcmVxdWVzdF9ub2Jsb2NrKCkKKworICAgICAgICAgICAgICAgIHNlbGYuc2VydmljZV9hY3Rpb25zKCkKICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgIHNlbGYuX19zaHV0ZG93bl9yZXF1ZXN0ID0gRmFsc2UKICAgICAgICAgICAgIHNlbGYuX19pc19zaHV0X2Rvd24uc2V0KCkKQEAgLTIzOSw2ICsyNDIsMTQgQEAKICAgICAgICAgc2VsZi5fX3NodXRkb3duX3JlcXVlc3QgPSBUcnVlCiAgICAgICAgIHNlbGYuX19pc19zaHV0X2Rvd24ud2FpdCgpCiAKKyAgICBkZWYgc2VydmljZV9hY3Rpb25zKHNlbGYpOgorICAgICAgICAiIiJDYWxsZWQgYnkgdGhlIHNlcnZlX2ZvcmV2ZXIoKSBsb29wLgorCisgICAgICAgIE1heSBiZSBvdmVycmlkZGVuIGJ5IGEgc3ViY2xhc3MgLyBNaXhpbiB0byBpbXBsZW1lbnQgYW55IGNvZGUgdGhhdAorICAgICAgICBuZWVkcyB0byBiZSBydW4gZHVyaW5nIHRoZSBsb29wLgorICAgICAgICAiIiIKKyAgICAgICAgcGFzcworCiAgICAgIyBUaGUgZGlzdGluY3Rpb24gYmV0d2VlbiBoYW5kbGluZywgZ2V0dGluZywgcHJvY2Vzc2luZyBhbmQKICAgICAjIGZpbmlzaGluZyBhIHJlcXVlc3QgaXMgZmFpcmx5IGFyYml0cmFyeS4gIFJlbWVtYmVyOgogICAgICMKQEAgLTUzOSw5ICs1NTAsMTUgQEAKICAgICAgICAgIiIiCiAgICAgICAgIHNlbGYuY29sbGVjdF9jaGlsZHJlbigpCiAKKyAgICBkZWYgc2VydmljZV9hY3Rpb25zKHNlbGYpOgorICAgICAgICAiIiJDb2xsZWN0IHRoZSB6b21iaWUgY2hpbGQgcHJvY2Vzc2VzIHJlZ3VsYXJseSBpbiB0aGUgRm9ya2luZ01peGluLgorCisgICAgICAgIHNlcnZpY2VfYWN0aW9ucyBpcyBjYWxsZWQgaW4gdGhlIEJhc2VTZXJ2ZXIncyBzZXJ2ZV9mb3J2ZXIgbG9vcC4KKyAgICAgICAgIiIiCisgICAgICAgIHNlbGYuY29sbGVjdF9jaGlsZHJlbigpCisKICAgICBkZWYgcHJvY2Vzc19yZXF1ZXN0KHNlbGYsIHJlcXVlc3QsIGNsaWVudF9hZGRyZXNzKToKICAgICAgICAgIiIiRm9yayBhIG5ldyBzdWJwcm9jZXNzIHRvIHByb2Nlc3MgdGhlIHJlcXVlc3QuIiIiCi0gICAgICAgIHNlbGYuY29sbGVjdF9jaGlsZHJlbigpCiAgICAgICAgIHBpZCA9IG9zLmZvcmsoKQogICAgICAgICBpZiBwaWQ6CiAgICAgICAgICAgICAjIFBhcmVudCBwcm9jZXNzCkBAIC01NDksNiArNTY2LDcgQEAKICAgICAgICAgICAgICAgICBzZWxmLmFjdGl2ZV9jaGlsZHJlbiA9IFtdCiAgICAgICAgICAgICBzZWxmLmFjdGl2ZV9jaGlsZHJlbi5hcHBlbmQocGlkKQogICAgICAgICAgICAgc2VsZi5jbG9zZV9yZXF1ZXN0KHJlcXVlc3QpCisgICAgICAgICAgICByZXR1cm4KICAgICAgICAgZWxzZToKICAgICAgICAgICAgICMgQ2hpbGQgcHJvY2Vzcy4KICAgICAgICAgICAgICMgVGhpcyBtdXN0IG5ldmVyIHJldHVybiwgaGVuY2Ugb3MuX2V4aXQoKSEKZGlmZiAtLWdpdCBhL0xpYi9zcWxpdGUzL3Rlc3QvZGJhcGkucHkgYi9MaWIvc3FsaXRlMy90ZXN0L2RiYXBpLnB5CmluZGV4IDIwMmJkMzguLmI3ZWMxYWQgMTAwNjQ0Ci0tLSBhL0xpYi9zcWxpdGUzL3Rlc3QvZGJhcGkucHkKKysrIGIvTGliL3NxbGl0ZTMvdGVzdC9kYmFwaS5weQpAQCAtMSw0ICsxLDQgQEAKLSMtKi0gY29kaW5nOiBJU08tODg1OS0xIC0qLQorIy0qLSBjb2Rpbmc6IGlzby04ODU5LTEgLSotCiAjIHB5c3FsaXRlMi90ZXN0L2RiYXBpLnB5OiB0ZXN0cyBmb3IgREItQVBJIGNvbXBsaWFuY2UKICMKICMgQ29weXJpZ2h0IChDKSAyMDA0LTIwMTAgR2VyaGFyZCBI5HJpbmcgPGdoQGdoYWVyaW5nLmRlPgpkaWZmIC0tZ2l0IGEvTGliL3NxbGl0ZTMvdGVzdC9mYWN0b3J5LnB5IGIvTGliL3NxbGl0ZTMvdGVzdC9mYWN0b3J5LnB5CmluZGV4IDdmNmYzNDcuLjU1Njk1ODUgMTAwNjQ0Ci0tLSBhL0xpYi9zcWxpdGUzL3Rlc3QvZmFjdG9yeS5weQorKysgYi9MaWIvc3FsaXRlMy90ZXN0L2ZhY3RvcnkucHkKQEAgLTEsNCArMSw0IEBACi0jLSotIGNvZGluZzogSVNPLTg4NTktMSAtKi0KKyMtKi0gY29kaW5nOiBpc28tODg1OS0xIC0qLQogIyBweXNxbGl0ZTIvdGVzdC9mYWN0b3J5LnB5OiB0ZXN0cyBmb3IgdGhlIHZhcmlvdXMgZmFjdG9yaWVzIGluIHB5c3FsaXRlCiAjCiAjIENvcHlyaWdodCAoQykgMjAwNS0yMDA3IEdlcmhhcmQgSORyaW5nIDxnaEBnaGFlcmluZy5kZT4KZGlmZiAtLWdpdCBhL0xpYi9zcWxpdGUzL3Rlc3QvaG9va3MucHkgYi9MaWIvc3FsaXRlMy90ZXN0L2hvb2tzLnB5CmluZGV4IGE2MTYxZmEuLjk3YWJlNWYgMTAwNjQ0Ci0tLSBhL0xpYi9zcWxpdGUzL3Rlc3QvaG9va3MucHkKKysrIGIvTGliL3NxbGl0ZTMvdGVzdC9ob29rcy5weQpAQCAtMSw0ICsxLDQgQEAKLSMtKi0gY29kaW5nOiBJU08tODg1OS0xIC0qLQorIy0qLSBjb2Rpbmc6IGlzby04ODU5LTEgLSotCiAjIHB5c3FsaXRlMi90ZXN0L2hvb2tzLnB5OiB0ZXN0cyBmb3IgdmFyaW91cyBTUUxpdGUtc3BlY2lmaWMgaG9va3MKICMKICMgQ29weXJpZ2h0IChDKSAyMDA2LTIwMDcgR2VyaGFyZCBI5HJpbmcgPGdoQGdoYWVyaW5nLmRlPgpAQCAtMTc1LDEwICsxNzUsNjAgQEAKICAgICAgICAgY29uLmV4ZWN1dGUoInNlbGVjdCAxIHVuaW9uIHNlbGVjdCAyIHVuaW9uIHNlbGVjdCAzIikuZmV0Y2hhbGwoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFjdGlvbiwgMCwgInByb2dyZXNzIGhhbmRsZXIgd2FzIG5vdCBjbGVhcmVkIikKIAorY2xhc3MgVHJhY2VDYWxsYmFja1Rlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBkZWYgQ2hlY2tUcmFjZUNhbGxiYWNrVXNlZChzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgdGhhdCB0aGUgdHJhY2UgY2FsbGJhY2sgaXMgaW52b2tlZCBvbmNlIGl0IGlzIHNldC4KKyAgICAgICAgIiIiCisgICAgICAgIGNvbiA9IHNxbGl0ZS5jb25uZWN0KCI6bWVtb3J5OiIpCisgICAgICAgIHRyYWNlZF9zdGF0ZW1lbnRzID0gW10KKyAgICAgICAgZGVmIHRyYWNlKHN0YXRlbWVudCk6CisgICAgICAgICAgICB0cmFjZWRfc3RhdGVtZW50cy5hcHBlbmQoc3RhdGVtZW50KQorICAgICAgICBjb24uc2V0X3RyYWNlX2NhbGxiYWNrKHRyYWNlKQorICAgICAgICBjb24uZXhlY3V0ZSgiY3JlYXRlIHRhYmxlIGZvbyhhLCBiKSIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh0cmFjZWRfc3RhdGVtZW50cykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGFueSgiY3JlYXRlIHRhYmxlIGZvbyIgaW4gc3RtdCBmb3Igc3RtdCBpbiB0cmFjZWRfc3RhdGVtZW50cykpCisKKyAgICBkZWYgQ2hlY2tDbGVhclRyYWNlQ2FsbGJhY2soc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IHRoYXQgc2V0dGluZyB0aGUgdHJhY2UgY2FsbGJhY2sgdG8gTm9uZSBjbGVhcnMgdGhlIHByZXZpb3VzbHkgc2V0IGNhbGxiYWNrLgorICAgICAgICAiIiIKKyAgICAgICAgY29uID0gc3FsaXRlLmNvbm5lY3QoIjptZW1vcnk6IikKKyAgICAgICAgdHJhY2VkX3N0YXRlbWVudHMgPSBbXQorICAgICAgICBkZWYgdHJhY2Uoc3RhdGVtZW50KToKKyAgICAgICAgICAgIHRyYWNlZF9zdGF0ZW1lbnRzLmFwcGVuZChzdGF0ZW1lbnQpCisgICAgICAgIGNvbi5zZXRfdHJhY2VfY2FsbGJhY2sodHJhY2UpCisgICAgICAgIGNvbi5zZXRfdHJhY2VfY2FsbGJhY2soTm9uZSkKKyAgICAgICAgY29uLmV4ZWN1dGUoImNyZWF0ZSB0YWJsZSBmb28oYSwgYikiKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHRyYWNlZF9zdGF0ZW1lbnRzLCAidHJhY2UgY2FsbGJhY2sgd2FzIG5vdCBjbGVhcmVkIikKKworICAgIGRlZiBDaGVja1VuaWNvZGVDb250ZW50KHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCB0aGF0IHRoZSBzdGF0ZW1lbnQgY2FuIGNvbnRhaW4gdW5pY29kZSBsaXRlcmFscy4KKyAgICAgICAgIiIiCisgICAgICAgIHVuaWNvZGVfdmFsdWUgPSAnXHhmNlx4ZTRceGZjXHhkNlx4YzRceGRjXHhkZlx1MjBhYycKKyAgICAgICAgY29uID0gc3FsaXRlLmNvbm5lY3QoIjptZW1vcnk6IikKKyAgICAgICAgdHJhY2VkX3N0YXRlbWVudHMgPSBbXQorICAgICAgICBkZWYgdHJhY2Uoc3RhdGVtZW50KToKKyAgICAgICAgICAgIHRyYWNlZF9zdGF0ZW1lbnRzLmFwcGVuZChzdGF0ZW1lbnQpCisgICAgICAgIGNvbi5zZXRfdHJhY2VfY2FsbGJhY2sodHJhY2UpCisgICAgICAgIGNvbi5leGVjdXRlKCJjcmVhdGUgdGFibGUgZm9vKHgpIikKKyAgICAgICAgIyBDYW4ndCBleGVjdXRlIGJvdW5kIHBhcmFtZXRlcnMgYXMgdGhlaXIgdmFsdWVzIGRvbid0IGFwcGVhcgorICAgICAgICAjIGluIHRyYWNlZCBzdGF0ZW1lbnRzIGJlZm9yZSBTUUxpdGUgMy42LjIxCisgICAgICAgICMgKGNmLiBodHRwOi8vd3d3LnNxbGl0ZS5vcmcvZHJhZnQvcmVsZWFzZWxvZy8zXzZfMjEuaHRtbCkKKyAgICAgICAgY29uLmV4ZWN1dGUoJ2luc2VydCBpbnRvIGZvbyh4KSB2YWx1ZXMgKCIlcyIpJyAlIHVuaWNvZGVfdmFsdWUpCisgICAgICAgIGNvbi5jb21taXQoKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoYW55KHVuaWNvZGVfdmFsdWUgaW4gc3RtdCBmb3Igc3RtdCBpbiB0cmFjZWRfc3RhdGVtZW50cyksCisgICAgICAgICAgICAgICAgICAgICAgICAiVW5pY29kZSBkYXRhICVzIGdhcmJsZWQgaW4gdHJhY2UgY2FsbGJhY2s6ICVzIgorICAgICAgICAgICAgICAgICAgICAgICAgJSAoYXNjaWkodW5pY29kZV92YWx1ZSksICcsICcuam9pbihtYXAoYXNjaWksIHRyYWNlZF9zdGF0ZW1lbnRzKSkpKQorCisKKwogZGVmIHN1aXRlKCk6CiAgICAgY29sbGF0aW9uX3N1aXRlID0gdW5pdHRlc3QubWFrZVN1aXRlKENvbGxhdGlvblRlc3RzLCAiQ2hlY2siKQogICAgIHByb2dyZXNzX3N1aXRlID0gdW5pdHRlc3QubWFrZVN1aXRlKFByb2dyZXNzVGVzdHMsICJDaGVjayIpCi0gICAgcmV0dXJuIHVuaXR0ZXN0LlRlc3RTdWl0ZSgoY29sbGF0aW9uX3N1aXRlLCBwcm9ncmVzc19zdWl0ZSkpCisgICAgdHJhY2Vfc3VpdGUgPSB1bml0dGVzdC5tYWtlU3VpdGUoVHJhY2VDYWxsYmFja1Rlc3RzLCAiQ2hlY2siKQorICAgIHJldHVybiB1bml0dGVzdC5UZXN0U3VpdGUoKGNvbGxhdGlvbl9zdWl0ZSwgcHJvZ3Jlc3Nfc3VpdGUsIHRyYWNlX3N1aXRlKSkKIAogZGVmIHRlc3QoKToKICAgICBydW5uZXIgPSB1bml0dGVzdC5UZXh0VGVzdFJ1bm5lcigpCmRpZmYgLS1naXQgYS9MaWIvc3FsaXRlMy90ZXN0L3JlZ3Jlc3Npb24ucHkgYi9MaWIvc3FsaXRlMy90ZXN0L3JlZ3Jlc3Npb24ucHkKaW5kZXggN2QwNTUzZC4uOWQ3YjI3NiAxMDA2NDQKLS0tIGEvTGliL3NxbGl0ZTMvdGVzdC9yZWdyZXNzaW9uLnB5CisrKyBiL0xpYi9zcWxpdGUzL3Rlc3QvcmVncmVzc2lvbi5weQpAQCAtMSw0ICsxLDQgQEAKLSMtKi0gY29kaW5nOiBJU08tODg1OS0xIC0qLQorIy0qLSBjb2Rpbmc6IGlzby04ODU5LTEgLSotCiAjIHB5c3FsaXRlMi90ZXN0L3JlZ3Jlc3Npb24ucHk6IHB5c3FsaXRlIHJlZ3Jlc3Npb24gdGVzdHMKICMKICMgQ29weXJpZ2h0IChDKSAyMDA2LTIwMTAgR2VyaGFyZCBI5HJpbmcgPGdoQGdoYWVyaW5nLmRlPgpAQCAtMjgxLDYgKzI4MSwyOCBAQAogICAgICAgICAgICAgIyBMb25lIHN1cnJvZ2F0ZSBjYW5ub3QgYmUgZW5jb2RlZCB0byB0aGUgZGVmYXVsdCBlbmNvZGluZyAodXRmOCkKICAgICAgICAgICAgICJcdURDODAiLCBjb2xsYXRpb25fY2IpCiAKKyAgICBkZWYgQ2hlY2tSZWN1cnNpdmVDdXJzb3JVc2Uoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBodHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlMTA4MTEKKworICAgICAgICBSZWN1cnNpdmVseSB1c2luZyBhIGN1cnNvciwgc3VjaCBhcyB3aGVuIHJldXNpbmcgaXQgZnJvbSBhIGdlbmVyYXRvciBsZWQgdG8gc2VnZmF1bHRzLgorICAgICAgICBOb3cgd2UgY2F0Y2ggcmVjdXJzaXZlIGN1cnNvciB1c2FnZSBhbmQgcmFpc2UgYSBQcm9ncmFtbWluZ0Vycm9yLgorICAgICAgICAiIiIKKyAgICAgICAgY29uID0gc3FsaXRlLmNvbm5lY3QoIjptZW1vcnk6IikKKworICAgICAgICBjdXIgPSBjb24uY3Vyc29yKCkKKyAgICAgICAgY3VyLmV4ZWN1dGUoImNyZWF0ZSB0YWJsZSBhIChiYXIpIikKKyAgICAgICAgY3VyLmV4ZWN1dGUoImNyZWF0ZSB0YWJsZSBiIChiYXopIikKKworICAgICAgICBkZWYgZm9vKCk6CisgICAgICAgICAgICBjdXIuZXhlY3V0ZSgiaW5zZXJ0IGludG8gYSAoYmFyKSB2YWx1ZXMgKD8pIiwgKDEsKSkKKyAgICAgICAgICAgIHlpZWxkIDEKKworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKHNxbGl0ZS5Qcm9ncmFtbWluZ0Vycm9yKToKKyAgICAgICAgICAgIGN1ci5leGVjdXRlbWFueSgiaW5zZXJ0IGludG8gYiAoYmF6KSB2YWx1ZXMgKD8pIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKGksKSBmb3IgaSBpbiBmb28oKSkpCisKKwogZGVmIHN1aXRlKCk6CiAgICAgcmVncmVzc2lvbl9zdWl0ZSA9IHVuaXR0ZXN0Lm1ha2VTdWl0ZShSZWdyZXNzaW9uVGVzdHMsICJDaGVjayIpCiAgICAgcmV0dXJuIHVuaXR0ZXN0LlRlc3RTdWl0ZSgocmVncmVzc2lvbl9zdWl0ZSwpKQpkaWZmIC0tZ2l0IGEvTGliL3NxbGl0ZTMvdGVzdC90cmFuc2FjdGlvbnMucHkgYi9MaWIvc3FsaXRlMy90ZXN0L3RyYW5zYWN0aW9ucy5weQppbmRleCA3MGU5NmExLi5mZWI0ZmExIDEwMDY0NAotLS0gYS9MaWIvc3FsaXRlMy90ZXN0L3RyYW5zYWN0aW9ucy5weQorKysgYi9MaWIvc3FsaXRlMy90ZXN0L3RyYW5zYWN0aW9ucy5weQpAQCAtMSw0ICsxLDQgQEAKLSMtKi0gY29kaW5nOiBJU08tODg1OS0xIC0qLQorIy0qLSBjb2Rpbmc6IGlzby04ODU5LTEgLSotCiAjIHB5c3FsaXRlMi90ZXN0L3RyYW5zYWN0aW9ucy5weTogdGVzdHMgdHJhbnNhY3Rpb25zCiAjCiAjIENvcHlyaWdodCAoQykgMjAwNS0yMDA3IEdlcmhhcmQgSORyaW5nIDxnaEBnaGFlcmluZy5kZT4KZGlmZiAtLWdpdCBhL0xpYi9zcWxpdGUzL3Rlc3QvdHlwZXMucHkgYi9MaWIvc3FsaXRlMy90ZXN0L3R5cGVzLnB5CmluZGV4IDI5NDEzZTEuLjNiNGNiNmQgMTAwNjQ0Ci0tLSBhL0xpYi9zcWxpdGUzL3Rlc3QvdHlwZXMucHkKKysrIGIvTGliL3NxbGl0ZTMvdGVzdC90eXBlcy5weQpAQCAtMSw0ICsxLDQgQEAKLSMtKi0gY29kaW5nOiBJU08tODg1OS0xIC0qLQorIy0qLSBjb2Rpbmc6IGlzby04ODU5LTEgLSotCiAjIHB5c3FsaXRlMi90ZXN0L3R5cGVzLnB5OiB0ZXN0cyBmb3IgdHlwZSBjb252ZXJzaW9uIGFuZCBkZXRlY3Rpb24KICMKICMgQ29weXJpZ2h0IChDKSAyMDA1IEdlcmhhcmQgSORyaW5nIDxnaEBnaGFlcmluZy5kZT4KQEAgLTg1LDcgKzg1LDcgQEAKICAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UoX3ZhbCwgYnl0ZXMpOgogICAgICAgICAgICAgICAgICMgc3FsaXRlMyBhbHdheXMgY2FsbHMgX19pbml0X18gd2l0aCBhIGJ5dGVzIGNyZWF0ZWQgZnJvbSBhCiAgICAgICAgICAgICAgICAgIyBVVEYtOCBzdHJpbmcgd2hlbiBfX2NvbmZvcm1fXyB3YXMgdXNlZCB0byBzdG9yZSB0aGUgb2JqZWN0LgotICAgICAgICAgICAgICAgIF92YWwgPSBfdmFsLmRlY29kZSgndXRmOCcpCisgICAgICAgICAgICAgICAgX3ZhbCA9IF92YWwuZGVjb2RlKCd1dGYtOCcpCiAgICAgICAgICAgICBzZWxmLnZhbCA9IF92YWwKIAogICAgICAgICBkZWYgX19jbXBfXyhzZWxmLCBvdGhlcik6CmRpZmYgLS1naXQgYS9MaWIvc3FsaXRlMy90ZXN0L3VzZXJmdW5jdGlvbnMucHkgYi9MaWIvc3FsaXRlMy90ZXN0L3VzZXJmdW5jdGlvbnMucHkKaW5kZXggOGJmYzU5MS4uMDU0MWUyNSAxMDA2NDQKLS0tIGEvTGliL3NxbGl0ZTMvdGVzdC91c2VyZnVuY3Rpb25zLnB5CisrKyBiL0xpYi9zcWxpdGUzL3Rlc3QvdXNlcmZ1bmN0aW9ucy5weQpAQCAtMSw0ICsxLDQgQEAKLSMtKi0gY29kaW5nOiBJU08tODg1OS0xIC0qLQorIy0qLSBjb2Rpbmc6IGlzby04ODU5LTEgLSotCiAjIHB5c3FsaXRlMi90ZXN0L3VzZXJmdW5jdGlvbnMucHk6IHRlc3RzIGZvciB1c2VyLWRlZmluZWQgZnVuY3Rpb25zIGFuZAogIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhZ2dyZWdhdGVzLgogIwpkaWZmIC0tZ2l0IGEvTGliL3NyZV9jb21waWxlLnB5IGIvTGliL3NyZV9jb21waWxlLnB5CmluZGV4IGY1MmVhMDEuLjc1ZjNhMDkgMTAwNjQ0Ci0tLSBhL0xpYi9zcmVfY29tcGlsZS5weQorKysgYi9MaWIvc3JlX2NvbXBpbGUucHkKQEAgLTMxOCwxMSArMzE4LDEzIEBACiAgICAgICAgICAgICAgICAgIyBYWFg6IGNvdWxkIGV4cGFuZCBjYXRlZ29yeQogICAgICAgICAgICAgICAgIHJldHVybiBjaGFyc2V0ICMgY2Fubm90IGNvbXByZXNzCiAgICAgZXhjZXB0IEluZGV4RXJyb3I6Ci0gICAgICAgICMgbm9uLUJNUCBjaGFyYWN0ZXJzCisgICAgICAgICMgbm9uLUJNUCBjaGFyYWN0ZXJzOyBYWFggbm93IHRoZXkgc2hvdWxkIHdvcmsKICAgICAgICAgcmV0dXJuIGNoYXJzZXQKICAgICBpZiBuZWdhdGU6CiAgICAgICAgIGlmIHN5cy5tYXh1bmljb2RlICE9IDY1NTM1OgogICAgICAgICAgICAgIyBYWFg6IG5lZ2F0aW9uIGRvZXMgbm90IHdvcmsgd2l0aCBiaWcgY2hhcnNldHMKKyAgICAgICAgICAgICMgWFhYMjogbm93IHRoZXkgc2hvdWxkIHdvcmssIGJ1dCByZW1vdmluZyB0aGlzIHdpbGwgbWFrZSB0aGUKKyAgICAgICAgICAgICMgY2hhcm1hcCAxNyB0aW1lcyBiaWdnZXIKICAgICAgICAgICAgIHJldHVybiBjaGFyc2V0CiAgICAgICAgIGZvciBpIGluIHJhbmdlKDY1NTM2KToKICAgICAgICAgICAgIGNoYXJtYXBbaV0gPSBub3QgY2hhcm1hcFtpXQpkaWZmIC0tZ2l0IGEvTGliL3NyZV9wYXJzZS5weSBiL0xpYi9zcmVfcGFyc2UucHkKaW5kZXggMTM3MzdjYS4uYWU2M2MzMSAxMDA2NDQKLS0tIGEvTGliL3NyZV9wYXJzZS5weQorKysgYi9MaWIvc3JlX3BhcnNlLnB5CkBAIC03OTEsNyArNzkxLDcgQEAKICAgICBlbHNlOgogICAgICAgICAjIFRoZSB0b2tlbml6ZXIgaW1wbGljaXRseSBkZWNvZGVzIGJ5dGVzIG9iamVjdHMgYXMgbGF0aW4tMSwgd2UgbXVzdAogICAgICAgICAjIHRoZXJlZm9yZSByZS1lbmNvZGUgdGhlIGZpbmFsIHJlcHJlc2VudGF0aW9uLgotICAgICAgICBlbmNvZGUgPSBsYW1iZGEgeDogeC5lbmNvZGUoJ2xhdGluMScpCisgICAgICAgIGVuY29kZSA9IGxhbWJkYSB4OiB4LmVuY29kZSgnbGF0aW4tMScpCiAgICAgZm9yIGMsIHMgaW4gcDoKICAgICAgICAgaWYgYyBpcyBNQVJLOgogICAgICAgICAgICAgZ3JvdXBzYXBwZW5kKChpLCBzKSkKZGlmZiAtLWdpdCBhL0xpYi9zc2wucHkgYi9MaWIvc3NsLnB5CmluZGV4IDgxMzcyMzEuLjAyODJlZTkgMTAwNjQ0Ci0tLSBhL0xpYi9zc2wucHkKKysrIGIvTGliL3NzbC5weQpAQCAtNjAsMTAgKzYwLDIxIEBACiBpbXBvcnQgX3NzbCAgICAgICAgICAgICAjIGlmIHdlIGNhbid0IGltcG9ydCBpdCwgbGV0IHRoZSBlcnJvciBwcm9wYWdhdGUKIAogZnJvbSBfc3NsIGltcG9ydCBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSLCBPUEVOU1NMX1ZFUlNJT05fSU5GTywgT1BFTlNTTF9WRVJTSU9OCi1mcm9tIF9zc2wgaW1wb3J0IF9TU0xDb250ZXh0LCBTU0xFcnJvcgorZnJvbSBfc3NsIGltcG9ydCBfU1NMQ29udGV4dAorZnJvbSBfc3NsIGltcG9ydCAoCisgICAgU1NMRXJyb3IsIFNTTFplcm9SZXR1cm5FcnJvciwgU1NMV2FudFJlYWRFcnJvciwgU1NMV2FudFdyaXRlRXJyb3IsCisgICAgU1NMU3lzY2FsbEVycm9yLCBTU0xFT0ZFcnJvciwKKyAgICApCiBmcm9tIF9zc2wgaW1wb3J0IENFUlRfTk9ORSwgQ0VSVF9PUFRJT05BTCwgQ0VSVF9SRVFVSVJFRAotZnJvbSBfc3NsIGltcG9ydCBPUF9BTEwsIE9QX05PX1NTTHYyLCBPUF9OT19TU0x2MywgT1BfTk9fVExTdjEKLWZyb20gX3NzbCBpbXBvcnQgUkFORF9zdGF0dXMsIFJBTkRfZWdkLCBSQU5EX2FkZAorZnJvbSBfc3NsIGltcG9ydCAoCisgICAgT1BfQUxMLCBPUF9OT19TU0x2MiwgT1BfTk9fU1NMdjMsIE9QX05PX1RMU3YxLAorICAgIE9QX0NJUEhFUl9TRVJWRVJfUFJFRkVSRU5DRSwgT1BfU0lOR0xFX0RIX1VTRSwgT1BfU0lOR0xFX0VDREhfVVNFLAorICAgICkKK3RyeToKKyAgICBmcm9tIF9zc2wgaW1wb3J0IE9QX05PX0NPTVBSRVNTSU9OCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgcGFzcworZnJvbSBfc3NsIGltcG9ydCBSQU5EX3N0YXR1cywgUkFORF9lZ2QsIFJBTkRfYWRkLCBSQU5EX2J5dGVzLCBSQU5EX3BzZXVkb19ieXRlcwogZnJvbSBfc3NsIGltcG9ydCAoCiAgICAgU1NMX0VSUk9SX1pFUk9fUkVUVVJOLAogICAgIFNTTF9FUlJPUl9XQU5UX1JFQUQsCkBAIC03NSw4ICs4Niw5IEBACiAgICAgU1NMX0VSUk9SX0VPRiwKICAgICBTU0xfRVJST1JfSU5WQUxJRF9FUlJPUl9DT0RFLAogICAgICkKLWZyb20gX3NzbCBpbXBvcnQgSEFTX1NOSQotZnJvbSBfc3NsIGltcG9ydCBQUk9UT0NPTF9TU0x2MywgUFJPVE9DT0xfU1NMdjIzLCBQUk9UT0NPTF9UTFN2MQorZnJvbSBfc3NsIGltcG9ydCBIQVNfU05JLCBIQVNfRUNESAorZnJvbSBfc3NsIGltcG9ydCAoUFJPVE9DT0xfU1NMdjMsIFBST1RPQ09MX1NTTHYyMywKKyAgICAgICAgICAgICAgICAgIFBST1RPQ09MX1RMU3YxKQogZnJvbSBfc3NsIGltcG9ydCBfT1BFTlNTTF9BUElfVkVSU0lPTgogCiBfUFJPVE9DT0xfTkFNRVMgPSB7CkBAIC05NCwxMSArMTA2LDE2IEBACiAKIGZyb20gc29ja2V0IGltcG9ydCBnZXRuYW1laW5mbyBhcyBfZ2V0bmFtZWluZm8KIGZyb20gc29ja2V0IGltcG9ydCBlcnJvciBhcyBzb2NrZXRfZXJyb3IKLWZyb20gc29ja2V0IGltcG9ydCBzb2NrZXQsIEFGX0lORVQsIFNPQ0tfU1RSRUFNCitmcm9tIHNvY2tldCBpbXBvcnQgc29ja2V0LCBBRl9JTkVULCBTT0NLX1NUUkVBTSwgY3JlYXRlX2Nvbm5lY3Rpb24KIGltcG9ydCBiYXNlNjQgICAgICAgICMgZm9yIERFUi10by1QRU0gdHJhbnNsYXRpb24KIGltcG9ydCB0cmFjZWJhY2sKIGltcG9ydCBlcnJubwogCitpZiBfc3NsLkhBU19UTFNfVU5JUVVFOgorICAgIENIQU5ORUxfQklORElOR19UWVBFUyA9IFsndGxzLXVuaXF1ZSddCitlbHNlOgorICAgIENIQU5ORUxfQklORElOR19UWVBFUyA9IFtdCisKICMgRGlzYWJsZSB3ZWFrIG9yIGluc2VjdXJlIGNpcGhlcnMgYnkgZGVmYXVsdAogIyAoT3BlblNTTCdzIGRlZmF1bHQgc2V0dGluZyBpcyAnREVGQVVMVDohYU5VTEw6IWVOVUxMJykKIF9ERUZBVUxUX0NJUEhFUlMgPSAnREVGQVVMVDohYU5VTEw6IWVOVUxMOiFMT1c6IUVYUE9SVDohU1NMdjInCkBAIC0zMjYsNiArMzQzLDEzIEBACiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICByZXR1cm4gc2VsZi5fc3Nsb2JqLmNpcGhlcigpCiAKKyAgICBkZWYgY29tcHJlc3Npb24oc2VsZik6CisgICAgICAgIHNlbGYuX2NoZWNrQ2xvc2VkKCkKKyAgICAgICAgaWYgbm90IHNlbGYuX3NzbG9iajoKKyAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gc2VsZi5fc3Nsb2JqLmNvbXByZXNzaW9uKCkKKwogICAgIGRlZiBzZW5kKHNlbGYsIGRhdGEsIGZsYWdzPTApOgogICAgICAgICBzZWxmLl9jaGVja0Nsb3NlZCgpCiAgICAgICAgIGlmIHNlbGYuX3NzbG9iajoKQEAgLTM1OCw2ICszODIsMTIgQEAKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHJldHVybiBzb2NrZXQuc2VuZHRvKHNlbGYsIGRhdGEsIGZsYWdzX29yX2FkZHIsIGFkZHIpCiAKKyAgICBkZWYgc2VuZG1zZyhzZWxmLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAjIEVuc3VyZSBwcm9ncmFtcyBkb24ndCBzZW5kIGRhdGEgdW5lbmNyeXB0ZWQgaWYgdGhleSB0cnkgdG8KKyAgICAgICAgIyB1c2UgdGhpcyBtZXRob2QuCisgICAgICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IoInNlbmRtc2cgbm90IGFsbG93ZWQgb24gaW5zdGFuY2VzIG9mICVzIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fX2NsYXNzX18pCisKICAgICBkZWYgc2VuZGFsbChzZWxmLCBkYXRhLCBmbGFncz0wKToKICAgICAgICAgc2VsZi5fY2hlY2tDbG9zZWQoKQogICAgICAgICBpZiBzZWxmLl9zc2xvYmo6CkBAIC00MTYsNiArNDQ2LDE0IEBACiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICByZXR1cm4gc29ja2V0LnJlY3Zmcm9tX2ludG8oc2VsZiwgYnVmZmVyLCBuYnl0ZXMsIGZsYWdzKQogCisgICAgZGVmIHJlY3Ztc2coc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcigicmVjdm1zZyBub3QgYWxsb3dlZCBvbiBpbnN0YW5jZXMgb2YgJXMiICUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9fY2xhc3NfXykKKworICAgIGRlZiByZWN2bXNnX2ludG8oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcmFpc2UgTm90SW1wbGVtZW50ZWRFcnJvcigicmVjdm1zZ19pbnRvIG5vdCBhbGxvd2VkIG9uIGluc3RhbmNlcyBvZiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiVzIiAlIHNlbGYuX19jbGFzc19fKQorCiAgICAgZGVmIHBlbmRpbmcoc2VsZik6CiAgICAgICAgIHNlbGYuX2NoZWNrQ2xvc2VkKCkKICAgICAgICAgaWYgc2VsZi5fc3Nsb2JqOgpAQCAtNTAyLDYgKzU0MCwyMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5kb19oYW5kc2hha2Vfb25fY29ubmVjdCksCiAgICAgICAgICAgICAgICAgYWRkcikKIAorICAgIGRlZiBnZXRfY2hhbm5lbF9iaW5kaW5nKHNlbGYsIGNiX3R5cGU9InRscy11bmlxdWUiKToKKyAgICAgICAgIiIiR2V0IGNoYW5uZWwgYmluZGluZyBkYXRhIGZvciBjdXJyZW50IGNvbm5lY3Rpb24uICBSYWlzZSBWYWx1ZUVycm9yCisgICAgICAgIGlmIHRoZSByZXF1ZXN0ZWQgYGNiX3R5cGVgIGlzIG5vdCBzdXBwb3J0ZWQuICBSZXR1cm4gYnl0ZXMgb2YgdGhlIGRhdGEKKyAgICAgICAgb3IgTm9uZSBpZiB0aGUgZGF0YSBpcyBub3QgYXZhaWxhYmxlIChlLmcuIGJlZm9yZSB0aGUgaGFuZHNoYWtlKS4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIGNiX3R5cGUgbm90IGluIENIQU5ORUxfQklORElOR19UWVBFUzoKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIlVuc3VwcG9ydGVkIGNoYW5uZWwgYmluZGluZyB0eXBlIikKKyAgICAgICAgaWYgY2JfdHlwZSAhPSAidGxzLXVuaXF1ZSI6CisgICAgICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ7MH0gY2hhbm5lbCBiaW5kaW5nIHR5cGUgbm90IGltcGxlbWVudGVkIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mb3JtYXQoY2JfdHlwZSkpCisgICAgICAgIGlmIHNlbGYuX3NzbG9iaiBpcyBOb25lOgorICAgICAgICAgICAgcmV0dXJuIE5vbmUKKyAgICAgICAgcmV0dXJuIHNlbGYuX3NzbG9iai50bHNfdW5pcXVlX2NiKCkKKwogICAgIGRlZiBfX2RlbF9fKHNlbGYpOgogICAgICAgICAjIHN5cy5zdGRlcnIud3JpdGUoIl9fZGVsX18gb24gJXNcbiIgJSByZXByKHNlbGYpKQogICAgICAgICBzZWxmLl9yZWFsX2Nsb3NlKCkKQEAgLTU2Niw5ICs2MTksOSBAQAogICAgICAgICBjZXJ0X3JlcXMgPSBDRVJUX1JFUVVJUkVECiAgICAgZWxzZToKICAgICAgICAgY2VydF9yZXFzID0gQ0VSVF9OT05FCi0gICAgcyA9IHdyYXBfc29ja2V0KHNvY2tldCgpLCBzc2xfdmVyc2lvbj1zc2xfdmVyc2lvbiwKKyAgICBzID0gY3JlYXRlX2Nvbm5lY3Rpb24oYWRkcikKKyAgICBzID0gd3JhcF9zb2NrZXQocywgc3NsX3ZlcnNpb249c3NsX3ZlcnNpb24sCiAgICAgICAgICAgICAgICAgICAgIGNlcnRfcmVxcz1jZXJ0X3JlcXMsIGNhX2NlcnRzPWNhX2NlcnRzKQotICAgIHMuY29ubmVjdChhZGRyKQogICAgIGRlcmNlcnQgPSBzLmdldHBlZXJjZXJ0KFRydWUpCiAgICAgcy5jbG9zZSgpCiAgICAgcmV0dXJuIERFUl9jZXJ0X3RvX1BFTV9jZXJ0KGRlcmNlcnQpCmRpZmYgLS1naXQgYS9MaWIvc3RyaW5nLnB5IGIvTGliL3N0cmluZy5weQppbmRleCBlZjAzMzRjLi44YmNkMWRjIDEwMDY0NAotLS0gYS9MaWIvc3RyaW5nLnB5CisrKyBiL0xpYi9zdHJpbmcucHkKQEAgLTQ2LDIzICs0Niw3IEBACiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiBpbXBvcnQgcmUgYXMgX3JlCi0KLWNsYXNzIF9tdWx0aW1hcDoKLSAgICAiIiJIZWxwZXIgY2xhc3MgZm9yIGNvbWJpbmluZyBtdWx0aXBsZSBtYXBwaW5ncy4KLQotICAgIFVzZWQgYnkgLntzYWZlXyx9c3Vic3RpdHV0ZSgpIHRvIGNvbWJpbmUgdGhlIG1hcHBpbmcgYW5kIGtleXdvcmQKLSAgICBhcmd1bWVudHMuCi0gICAgIiIiCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIHByaW1hcnksIHNlY29uZGFyeSk6Ci0gICAgICAgIHNlbGYuX3ByaW1hcnkgPSBwcmltYXJ5Ci0gICAgICAgIHNlbGYuX3NlY29uZGFyeSA9IHNlY29uZGFyeQotCi0gICAgZGVmIF9fZ2V0aXRlbV9fKHNlbGYsIGtleSk6Ci0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHJldHVybiBzZWxmLl9wcmltYXJ5W2tleV0KLSAgICAgICAgZXhjZXB0IEtleUVycm9yOgotICAgICAgICAgICAgcmV0dXJuIHNlbGYuX3NlY29uZGFyeVtrZXldCi0KK2Zyb20gY29sbGVjdGlvbnMgaW1wb3J0IENoYWluTWFwCiAKIGNsYXNzIF9UZW1wbGF0ZU1ldGFjbGFzcyh0eXBlKToKICAgICBwYXR0ZXJuID0gciIiIgpAQCAtMTAwLDcgKzg0LDcgQEAKIAogICAgIGRlZiBfaW52YWxpZChzZWxmLCBtbyk6CiAgICAgICAgIGkgPSBtby5zdGFydCgnaW52YWxpZCcpCi0gICAgICAgIGxpbmVzID0gc2VsZi50ZW1wbGF0ZVs6aV0uc3BsaXRsaW5lcyhUcnVlKQorICAgICAgICBsaW5lcyA9IHNlbGYudGVtcGxhdGVbOmldLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkKICAgICAgICAgaWYgbm90IGxpbmVzOgogICAgICAgICAgICAgY29sbm8gPSAxCiAgICAgICAgICAgICBsaW5lbm8gPSAxCkBAIC0xMTYsNyArMTAwLDcgQEAKICAgICAgICAgaWYgbm90IGFyZ3M6CiAgICAgICAgICAgICBtYXBwaW5nID0ga3dzCiAgICAgICAgIGVsaWYga3dzOgotICAgICAgICAgICAgbWFwcGluZyA9IF9tdWx0aW1hcChrd3MsIGFyZ3NbMF0pCisgICAgICAgICAgICBtYXBwaW5nID0gQ2hhaW5NYXAoa3dzLCBhcmdzWzBdKQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgbWFwcGluZyA9IGFyZ3NbMF0KICAgICAgICAgIyBIZWxwZXIgZnVuY3Rpb24gZm9yIC5zdWIoKQpAQCAtMTQyLDcgKzEyNiw3IEBACiAgICAgICAgIGlmIG5vdCBhcmdzOgogICAgICAgICAgICAgbWFwcGluZyA9IGt3cwogICAgICAgICBlbGlmIGt3czoKLSAgICAgICAgICAgIG1hcHBpbmcgPSBfbXVsdGltYXAoa3dzLCBhcmdzWzBdKQorICAgICAgICAgICAgbWFwcGluZyA9IENoYWluTWFwKGt3cywgYXJnc1swXSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG1hcHBpbmcgPSBhcmdzWzBdCiAgICAgICAgICMgSGVscGVyIGZ1bmN0aW9uIGZvciAuc3ViKCkKZGlmZiAtLWdpdCBhL0xpYi9zdWJwcm9jZXNzLnB5IGIvTGliL3N1YnByb2Nlc3MucHkKaW5kZXggMDE3ZjU4ZC4uYTBhYWRiOSAxMDA2NDQKLS0tIGEvTGliL3N1YnByb2Nlc3MucHkKKysrIGIvTGliL3N1YnByb2Nlc3MucHkKQEAgLTE5MSw4ICsxOTEsMTAgQEAKIAogQSBWYWx1ZUVycm9yIHdpbGwgYmUgcmFpc2VkIGlmIFBvcGVuIGlzIGNhbGxlZCB3aXRoIGludmFsaWQgYXJndW1lbnRzLgogCi1jaGVja19jYWxsKCkgYW5kIGNoZWNrX291dHB1dCgpIHdpbGwgcmFpc2UgQ2FsbGVkUHJvY2Vzc0Vycm9yLCBpZiB0aGUKLWNhbGxlZCBwcm9jZXNzIHJldHVybnMgYSBub24temVybyByZXR1cm4gY29kZS4KK0V4Y2VwdGlvbnMgZGVmaW5lZCB3aXRoaW4gdGhpcyBtb2R1bGUgaW5oZXJpdCBmcm9tIFN1YnByb2Nlc3NFcnJvci4KK2NoZWNrX2NhbGwoKSBhbmQgY2hlY2tfb3V0cHV0KCkgd2lsbCByYWlzZSBDYWxsZWRQcm9jZXNzRXJyb3IgaWYgdGhlCitjYWxsZWQgcHJvY2VzcyByZXR1cm5zIGEgbm9uLXplcm8gcmV0dXJuIGNvZGUuICBUaW1lb3V0RXhwaXJlZAorYmUgcmFpc2VkIGlmIGEgdGltZW91dCB3YXMgc3BlY2lmaWVkIGFuZCBleHBpcmVkLgogCiAKIFNlY3VyaXR5CkBAIC0zNDAsNiArMzQyLDcgQEAKIAogaW1wb3J0IGlvCiBpbXBvcnQgb3MKK2ltcG9ydCB0aW1lCiBpbXBvcnQgdHJhY2ViYWNrCiBpbXBvcnQgZ2MKIGltcG9ydCBzaWduYWwKQEAgLTM0OCw3ICszNTEsMTAgQEAKIGltcG9ydCBlcnJubwogCiAjIEV4Y2VwdGlvbiBjbGFzc2VzIHVzZWQgYnkgdGhpcyBtb2R1bGUuCi1jbGFzcyBDYWxsZWRQcm9jZXNzRXJyb3IoRXhjZXB0aW9uKToKK2NsYXNzIFN1YnByb2Nlc3NFcnJvcihFeGNlcHRpb24pOiBwYXNzCisKKworY2xhc3MgQ2FsbGVkUHJvY2Vzc0Vycm9yKFN1YnByb2Nlc3NFcnJvcik6CiAgICAgIiIiVGhpcyBleGNlcHRpb24gaXMgcmFpc2VkIHdoZW4gYSBwcm9jZXNzIHJ1biBieSBjaGVja19jYWxsKCkgb3IKICAgICBjaGVja19vdXRwdXQoKSByZXR1cm5zIGEgbm9uLXplcm8gZXhpdCBzdGF0dXMuCiAgICAgVGhlIGV4aXQgc3RhdHVzIHdpbGwgYmUgc3RvcmVkIGluIHRoZSByZXR1cm5jb2RlIGF0dHJpYnV0ZTsKQEAgLTM2Miw2ICszNjgsMjAgQEAKICAgICAgICAgcmV0dXJuICJDb21tYW5kICclcycgcmV0dXJuZWQgbm9uLXplcm8gZXhpdCBzdGF0dXMgJWQiICUgKHNlbGYuY21kLCBzZWxmLnJldHVybmNvZGUpCiAKIAorY2xhc3MgVGltZW91dEV4cGlyZWQoU3VicHJvY2Vzc0Vycm9yKToKKyAgICAiIiJUaGlzIGV4Y2VwdGlvbiBpcyByYWlzZWQgd2hlbiB0aGUgdGltZW91dCBleHBpcmVzIHdoaWxlIHdhaXRpbmcgZm9yIGEKKyAgICBjaGlsZCBwcm9jZXNzLgorICAgICIiIgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBjbWQsIHRpbWVvdXQsIG91dHB1dD1Ob25lKToKKyAgICAgICAgc2VsZi5jbWQgPSBjbWQKKyAgICAgICAgc2VsZi50aW1lb3V0ID0gdGltZW91dAorICAgICAgICBzZWxmLm91dHB1dCA9IG91dHB1dAorCisgICAgZGVmIF9fc3RyX18oc2VsZik6CisgICAgICAgIHJldHVybiAoIkNvbW1hbmQgJyVzJyB0aW1lZCBvdXQgYWZ0ZXIgJXMgc2Vjb25kcyIgJQorICAgICAgICAgICAgICAgIChzZWxmLmNtZCwgc2VsZi50aW1lb3V0KSkKKworCiBpZiBtc3dpbmRvd3M6CiAgICAgaW1wb3J0IHRocmVhZGluZwogICAgIGltcG9ydCBtc3ZjcnQKQEAgLTM3Nyw0MiArMzk3LDE3IEBACiBlbHNlOgogICAgIGltcG9ydCBzZWxlY3QKICAgICBfaGFzX3BvbGwgPSBoYXNhdHRyKHNlbGVjdCwgJ3BvbGwnKQotICAgIGltcG9ydCBmY250bAotICAgIGltcG9ydCBwaWNrbGUKLQotICAgIHRyeToKLSAgICAgICAgaW1wb3J0IF9wb3NpeHN1YnByb2Nlc3MKLSAgICBleGNlcHQgSW1wb3J0RXJyb3I6Ci0gICAgICAgIF9wb3NpeHN1YnByb2Nlc3MgPSBOb25lCi0gICAgICAgIHdhcm5pbmdzLndhcm4oIlRoZSBfcG9zaXhzdWJwcm9jZXNzIG1vZHVsZSBpcyBub3QgYmVpbmcgdXNlZC4gIgotICAgICAgICAgICAgICAgICAgICAgICJDaGlsZCBwcm9jZXNzIHJlbGlhYmlsaXR5IG1heSBzdWZmZXIgaWYgeW91ciAiCi0gICAgICAgICAgICAgICAgICAgICAgInByb2dyYW0gdXNlcyB0aHJlYWRzLiIsIFJ1bnRpbWVXYXJuaW5nKQorICAgIGltcG9ydCBfcG9zaXhzdWJwcm9jZXNzCisgICAgX2NyZWF0ZV9waXBlID0gX3Bvc2l4c3VicHJvY2Vzcy5jbG9leGVjX3BpcGUKIAogICAgICMgV2hlbiBzZWxlY3Qgb3IgcG9sbCBoYXMgaW5kaWNhdGVkIHRoYXQgdGhlIGZpbGUgaXMgd3JpdGFibGUsCiAgICAgIyB3ZSBjYW4gd3JpdGUgdXAgdG8gX1BJUEVfQlVGIGJ5dGVzIHdpdGhvdXQgcmlzayBvZiBibG9ja2luZy4KICAgICAjIFBPU0lYIGRlZmluZXMgUElQRV9CVUYgYXMgPj0gNTEyLgogICAgIF9QSVBFX0JVRiA9IGdldGF0dHIoc2VsZWN0LCAnUElQRV9CVUYnLCA1MTIpCiAKLSAgICBfRkRfQ0xPRVhFQyA9IGdldGF0dHIoZmNudGwsICdGRF9DTE9FWEVDJywgMSkKLQotICAgIGRlZiBfc2V0X2Nsb2V4ZWMoZmQsIGNsb2V4ZWMpOgotICAgICAgICBvbGQgPSBmY250bC5mY250bChmZCwgZmNudGwuRl9HRVRGRCkKLSAgICAgICAgaWYgY2xvZXhlYzoKLSAgICAgICAgICAgIGZjbnRsLmZjbnRsKGZkLCBmY250bC5GX1NFVEZELCBvbGQgfCBfRkRfQ0xPRVhFQykKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGZjbnRsLmZjbnRsKGZkLCBmY250bC5GX1NFVEZELCBvbGQgJiB+X0ZEX0NMT0VYRUMpCi0KLSAgICBpZiBfcG9zaXhzdWJwcm9jZXNzOgotICAgICAgICBfY3JlYXRlX3BpcGUgPSBfcG9zaXhzdWJwcm9jZXNzLmNsb2V4ZWNfcGlwZQotICAgIGVsc2U6Ci0gICAgICAgIGRlZiBfY3JlYXRlX3BpcGUoKToKLSAgICAgICAgICAgIGZkcyA9IG9zLnBpcGUoKQotICAgICAgICAgICAgX3NldF9jbG9leGVjKGZkc1swXSwgVHJ1ZSkKLSAgICAgICAgICAgIF9zZXRfY2xvZXhlYyhmZHNbMV0sIFRydWUpCi0gICAgICAgICAgICByZXR1cm4gZmRzCiAKIF9fYWxsX18gPSBbIlBvcGVuIiwgIlBJUEUiLCAiU1RET1VUIiwgImNhbGwiLCAiY2hlY2tfY2FsbCIsICJnZXRzdGF0dXNvdXRwdXQiLAotICAgICAgICAgICAiZ2V0b3V0cHV0IiwgImNoZWNrX291dHB1dCIsICJDYWxsZWRQcm9jZXNzRXJyb3IiXQorICAgICAgICAgICAiZ2V0b3V0cHV0IiwgImNoZWNrX291dHB1dCIsICJDYWxsZWRQcm9jZXNzRXJyb3IiLCAiREVWTlVMTCJdCiAKIGlmIG1zd2luZG93czoKICAgICBmcm9tIF9zdWJwcm9jZXNzIGltcG9ydCAoQ1JFQVRFX05FV19DT05TT0xFLCBDUkVBVEVfTkVXX1BST0NFU1NfR1JPVVAsCkBAIC00NDgsMjcgKzQ0MywzMiBAQAogCiBQSVBFID0gLTEKIFNURE9VVCA9IC0yCitERVZOVUxMID0gLTMKIAogCiBkZWYgX2VpbnRyX3JldHJ5X2NhbGwoZnVuYywgKmFyZ3MpOgogICAgIHdoaWxlIFRydWU6CiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHJldHVybiBmdW5jKCphcmdzKQotICAgICAgICBleGNlcHQgKE9TRXJyb3IsIElPRXJyb3IpIGFzIGU6Ci0gICAgICAgICAgICBpZiBlLmVycm5vID09IGVycm5vLkVJTlRSOgotICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICByYWlzZQorICAgICAgICBleGNlcHQgSW50ZXJydXB0ZWRFcnJvcjoKKyAgICAgICAgICAgIGNvbnRpbnVlCiAKIAotZGVmIGNhbGwoKnBvcGVuYXJncywgKiprd2FyZ3MpOgotICAgICIiIlJ1biBjb21tYW5kIHdpdGggYXJndW1lbnRzLiAgV2FpdCBmb3IgY29tbWFuZCB0byBjb21wbGV0ZSwgdGhlbgotICAgIHJldHVybiB0aGUgcmV0dXJuY29kZSBhdHRyaWJ1dGUuCitkZWYgY2FsbCgqcG9wZW5hcmdzLCB0aW1lb3V0PU5vbmUsICoqa3dhcmdzKToKKyAgICAiIiJSdW4gY29tbWFuZCB3aXRoIGFyZ3VtZW50cy4gIFdhaXQgZm9yIGNvbW1hbmQgdG8gY29tcGxldGUgb3IKKyAgICB0aW1lb3V0LCB0aGVuIHJldHVybiB0aGUgcmV0dXJuY29kZSBhdHRyaWJ1dGUuCiAKICAgICBUaGUgYXJndW1lbnRzIGFyZSB0aGUgc2FtZSBhcyBmb3IgdGhlIFBvcGVuIGNvbnN0cnVjdG9yLiAgRXhhbXBsZToKIAogICAgIHJldGNvZGUgPSBjYWxsKFsibHMiLCAiLWwiXSkKICAgICAiIiIKLSAgICByZXR1cm4gUG9wZW4oKnBvcGVuYXJncywgKiprd2FyZ3MpLndhaXQoKQorICAgIHdpdGggUG9wZW4oKnBvcGVuYXJncywgKiprd2FyZ3MpIGFzIHA6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJldHVybiBwLndhaXQodGltZW91dD10aW1lb3V0KQorICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBwLmtpbGwoKQorICAgICAgICAgICAgcC53YWl0KCkKKyAgICAgICAgICAgIHJhaXNlCiAKIAogZGVmIGNoZWNrX2NhbGwoKnBvcGVuYXJncywgKiprd2FyZ3MpOgpAQCAtNDc3LDcgKzQ3Nyw3IEBACiAgICAgQ2FsbGVkUHJvY2Vzc0Vycm9yLiAgVGhlIENhbGxlZFByb2Nlc3NFcnJvciBvYmplY3Qgd2lsbCBoYXZlIHRoZQogICAgIHJldHVybiBjb2RlIGluIHRoZSByZXR1cm5jb2RlIGF0dHJpYnV0ZS4KIAotICAgIFRoZSBhcmd1bWVudHMgYXJlIHRoZSBzYW1lIGFzIGZvciB0aGUgUG9wZW4gY29uc3RydWN0b3IuICBFeGFtcGxlOgorICAgIFRoZSBhcmd1bWVudHMgYXJlIHRoZSBzYW1lIGFzIGZvciB0aGUgY2FsbCBmdW5jdGlvbi4gIEV4YW1wbGU6CiAKICAgICBjaGVja19jYWxsKFsibHMiLCAiLWwiXSkKICAgICAiIiIKQEAgLTQ5MCw3ICs0OTAsNyBAQAogICAgIHJldHVybiAwCiAKIAotZGVmIGNoZWNrX291dHB1dCgqcG9wZW5hcmdzLCAqKmt3YXJncyk6CitkZWYgY2hlY2tfb3V0cHV0KCpwb3BlbmFyZ3MsIHRpbWVvdXQ9Tm9uZSwgKiprd2FyZ3MpOgogICAgIHIiIiJSdW4gY29tbWFuZCB3aXRoIGFyZ3VtZW50cyBhbmQgcmV0dXJuIGl0cyBvdXRwdXQgYXMgYSBieXRlIHN0cmluZy4KIAogICAgIElmIHRoZSBleGl0IGNvZGUgd2FzIG5vbi16ZXJvIGl0IHJhaXNlcyBhIENhbGxlZFByb2Nlc3NFcnJvci4gIFRoZQpAQCAtNTEyLDE0ICs1MTIsMjAgQEAKICAgICAiIiIKICAgICBpZiAnc3Rkb3V0JyBpbiBrd2FyZ3M6CiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoJ3N0ZG91dCBhcmd1bWVudCBub3QgYWxsb3dlZCwgaXQgd2lsbCBiZSBvdmVycmlkZGVuLicpCi0gICAgcHJvY2VzcyA9IFBvcGVuKCpwb3BlbmFyZ3MsIHN0ZG91dD1QSVBFLCAqKmt3YXJncykKLSAgICBvdXRwdXQsIHVudXNlZF9lcnIgPSBwcm9jZXNzLmNvbW11bmljYXRlKCkKLSAgICByZXRjb2RlID0gcHJvY2Vzcy5wb2xsKCkKLSAgICBpZiByZXRjb2RlOgotICAgICAgICBjbWQgPSBrd2FyZ3MuZ2V0KCJhcmdzIikKLSAgICAgICAgaWYgY21kIGlzIE5vbmU6Ci0gICAgICAgICAgICBjbWQgPSBwb3BlbmFyZ3NbMF0KLSAgICAgICAgcmFpc2UgQ2FsbGVkUHJvY2Vzc0Vycm9yKHJldGNvZGUsIGNtZCwgb3V0cHV0PW91dHB1dCkKKyAgICB3aXRoIFBvcGVuKCpwb3BlbmFyZ3MsIHN0ZG91dD1QSVBFLCAqKmt3YXJncykgYXMgcHJvY2VzczoKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3V0cHV0LCB1bnVzZWRfZXJyID0gcHJvY2Vzcy5jb21tdW5pY2F0ZSh0aW1lb3V0PXRpbWVvdXQpCisgICAgICAgIGV4Y2VwdCBUaW1lb3V0RXhwaXJlZDoKKyAgICAgICAgICAgIHByb2Nlc3Mua2lsbCgpCisgICAgICAgICAgICBvdXRwdXQsIHVudXNlZF9lcnIgPSBwcm9jZXNzLmNvbW11bmljYXRlKCkKKyAgICAgICAgICAgIHJhaXNlIFRpbWVvdXRFeHBpcmVkKHByb2Nlc3MuYXJncywgdGltZW91dCwgb3V0cHV0PW91dHB1dCkKKyAgICAgICAgZXhjZXB0OgorICAgICAgICAgICAgcHJvY2Vzcy5raWxsKCkKKyAgICAgICAgICAgIHByb2Nlc3Mud2FpdCgpCisgICAgICAgICAgICByYWlzZQorICAgICAgICByZXRjb2RlID0gcHJvY2Vzcy5wb2xsKCkKKyAgICAgICAgaWYgcmV0Y29kZToKKyAgICAgICAgICAgIHJhaXNlIENhbGxlZFByb2Nlc3NFcnJvcihyZXRjb2RlLCBwcm9jZXNzLmFyZ3MsIG91dHB1dD1vdXRwdXQpCiAgICAgcmV0dXJuIG91dHB1dAogCiAKQEAgLTYxNCwxMSArNjIwLDE5IEBACiAgICAgPj4+IHN1YnByb2Nlc3MuZ2V0c3RhdHVzb3V0cHV0KCcvYmluL2p1bmsnKQogICAgICgyNTYsICdzaDogL2Jpbi9qdW5rOiBub3QgZm91bmQnKQogICAgICIiIgotICAgIHBpcGUgPSBvcy5wb3BlbigneyAnICsgY21kICsgJzsgfSAyPiYxJywgJ3InKQotICAgIHRleHQgPSBwaXBlLnJlYWQoKQotICAgIHN0cyA9IHBpcGUuY2xvc2UoKQotICAgIGlmIHN0cyBpcyBOb25lOiBzdHMgPSAwCi0gICAgaWYgdGV4dFstMTpdID09ICdcbic6IHRleHQgPSB0ZXh0WzotMV0KKyAgICB3aXRoIG9zLnBvcGVuKCd7ICcgKyBjbWQgKyAnOyB9IDI+JjEnLCAncicpIGFzIHBpcGU6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHRleHQgPSBwaXBlLnJlYWQoKQorICAgICAgICAgICAgc3RzID0gcGlwZS5jbG9zZSgpCisgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgIHByb2Nlc3MgPSBwaXBlLl9wcm9jCisgICAgICAgICAgICBwcm9jZXNzLmtpbGwoKQorICAgICAgICAgICAgcHJvY2Vzcy53YWl0KCkKKyAgICAgICAgICAgIHJhaXNlCisgICAgaWYgc3RzIGlzIE5vbmU6CisgICAgICAgIHN0cyA9IDAKKyAgICBpZiB0ZXh0Wy0xOl0gPT0gJ1xuJzoKKyAgICAgICAgdGV4dCA9IHRleHRbOi0xXQogICAgIHJldHVybiBzdHMsIHRleHQKIAogCkBAIC02NTAsNiArNjY0LDggQEAKICAgICAgICAgX2NsZWFudXAoKQogCiAgICAgICAgIHNlbGYuX2NoaWxkX2NyZWF0ZWQgPSBGYWxzZQorICAgICAgICBzZWxmLl9pbnB1dCA9IE5vbmUKKyAgICAgICAgc2VsZi5fY29tbXVuaWNhdGlvbl9zdGFydGVkID0gRmFsc2UKICAgICAgICAgaWYgYnVmc2l6ZSBpcyBOb25lOgogICAgICAgICAgICAgYnVmc2l6ZSA9IDAgICMgUmVzdG9yZSBkZWZhdWx0CiAgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKGJ1ZnNpemUsIGludCk6CkBAIC02ODQsNiArNzAwLDcgQEAKICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJjcmVhdGlvbmZsYWdzIGlzIG9ubHkgc3VwcG9ydGVkIG9uIFdpbmRvd3MgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBsYXRmb3JtcyIpCiAKKyAgICAgICAgc2VsZi5hcmdzID0gYXJncwogICAgICAgICBzZWxmLnN0ZGluID0gTm9uZQogICAgICAgICBzZWxmLnN0ZG91dCA9IE5vbmUKICAgICAgICAgc2VsZi5zdGRlcnIgPSBOb25lCkBAIC03ODQsMTkgKzgwMSwyOCBAQAogICAgICAgICAgICAgIyBDaGlsZCBpcyBzdGlsbCBydW5uaW5nLCBrZWVwIHVzIGFsaXZlIHVudGlsIHdlIGNhbiB3YWl0IG9uIGl0LgogICAgICAgICAgICAgX2FjdGl2ZS5hcHBlbmQoc2VsZikKIAorICAgIGRlZiBfZ2V0X2Rldm51bGwoc2VsZik6CisgICAgICAgIGlmIG5vdCBoYXNhdHRyKHNlbGYsICdfZGV2bnVsbCcpOgorICAgICAgICAgICAgc2VsZi5fZGV2bnVsbCA9IG9zLm9wZW4ob3MuZGV2bnVsbCwgb3MuT19SRFdSKQorICAgICAgICByZXR1cm4gc2VsZi5fZGV2bnVsbAogCi0gICAgZGVmIGNvbW11bmljYXRlKHNlbGYsIGlucHV0PU5vbmUpOgorICAgIGRlZiBjb21tdW5pY2F0ZShzZWxmLCBpbnB1dD1Ob25lLCB0aW1lb3V0PU5vbmUpOgogICAgICAgICAiIiJJbnRlcmFjdCB3aXRoIHByb2Nlc3M6IFNlbmQgZGF0YSB0byBzdGRpbi4gIFJlYWQgZGF0YSBmcm9tCiAgICAgICAgIHN0ZG91dCBhbmQgc3RkZXJyLCB1bnRpbCBlbmQtb2YtZmlsZSBpcyByZWFjaGVkLiAgV2FpdCBmb3IKLSAgICAgICAgcHJvY2VzcyB0byB0ZXJtaW5hdGUuICBUaGUgb3B0aW9uYWwgaW5wdXQgYXJndW1lbnQgc2hvdWxkIGJlIGEKLSAgICAgICAgc3RyaW5nIHRvIGJlIHNlbnQgdG8gdGhlIGNoaWxkIHByb2Nlc3MsIG9yIE5vbmUsIGlmIG5vIGRhdGEKKyAgICAgICAgcHJvY2VzcyB0byB0ZXJtaW5hdGUuICBUaGUgb3B0aW9uYWwgaW5wdXQgYXJndW1lbnQgc2hvdWxkIGJlCisgICAgICAgIGJ5dGVzIHRvIGJlIHNlbnQgdG8gdGhlIGNoaWxkIHByb2Nlc3MsIG9yIE5vbmUsIGlmIG5vIGRhdGEKICAgICAgICAgc2hvdWxkIGJlIHNlbnQgdG8gdGhlIGNoaWxkLgogCiAgICAgICAgIGNvbW11bmljYXRlKCkgcmV0dXJucyBhIHR1cGxlIChzdGRvdXQsIHN0ZGVycikuIiIiCiAKLSAgICAgICAgIyBPcHRpbWl6YXRpb246IElmIHdlIGFyZSBvbmx5IHVzaW5nIG9uZSBwaXBlLCBvciBubyBwaXBlIGF0Ci0gICAgICAgICMgYWxsLCB1c2luZyBzZWxlY3QoKSBvciB0aHJlYWRzIGlzIHVubmVjZXNzYXJ5LgotICAgICAgICBpZiBbc2VsZi5zdGRpbiwgc2VsZi5zdGRvdXQsIHNlbGYuc3RkZXJyXS5jb3VudChOb25lKSA+PSAyOgorICAgICAgICBpZiBzZWxmLl9jb21tdW5pY2F0aW9uX3N0YXJ0ZWQgYW5kIGlucHV0OgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiQ2Fubm90IHNlbmQgaW5wdXQgYWZ0ZXIgc3RhcnRpbmcgY29tbXVuaWNhdGlvbiIpCisKKyAgICAgICAgIyBPcHRpbWl6YXRpb246IElmIHdlIGFyZSBub3Qgd29ycmllZCBhYm91dCB0aW1lb3V0cywgd2UgaGF2ZW4ndAorICAgICAgICAjIHN0YXJ0ZWQgY29tbXVuaWNhdGluZywgYW5kIHdlIGhhdmUgb25lIG9yIHplcm8gcGlwZXMsIHVzaW5nIHNlbGVjdCgpCisgICAgICAgICMgb3IgdGhyZWFkcyBpcyB1bm5lY2Vzc2FyeS4KKyAgICAgICAgaWYgKHRpbWVvdXQgaXMgTm9uZSBhbmQgbm90IHNlbGYuX2NvbW11bmljYXRpb25fc3RhcnRlZCBhbmQKKyAgICAgICAgICAgIFtzZWxmLnN0ZGluLCBzZWxmLnN0ZG91dCwgc2VsZi5zdGRlcnJdLmNvdW50KE5vbmUpID49IDIpOgogICAgICAgICAgICAgc3Rkb3V0ID0gTm9uZQogICAgICAgICAgICAgc3RkZXJyID0gTm9uZQogICAgICAgICAgICAgaWYgc2VsZi5zdGRpbjoKQEAgLTgxNCwxNSArODQwLDQyIEBACiAgICAgICAgICAgICAgICAgc3RkZXJyID0gX2VpbnRyX3JldHJ5X2NhbGwoc2VsZi5zdGRlcnIucmVhZCkKICAgICAgICAgICAgICAgICBzZWxmLnN0ZGVyci5jbG9zZSgpCiAgICAgICAgICAgICBzZWxmLndhaXQoKQotICAgICAgICAgICAgcmV0dXJuIChzdGRvdXQsIHN0ZGVycikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIHRpbWVvdXQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgZW5kdGltZSA9IHRpbWUudGltZSgpICsgdGltZW91dAorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBlbmR0aW1lID0gTm9uZQogCi0gICAgICAgIHJldHVybiBzZWxmLl9jb21tdW5pY2F0ZShpbnB1dCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzdGRvdXQsIHN0ZGVyciA9IHNlbGYuX2NvbW11bmljYXRlKGlucHV0LCBlbmR0aW1lLCB0aW1lb3V0KQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICBzZWxmLl9jb21tdW5pY2F0aW9uX3N0YXJ0ZWQgPSBUcnVlCisKKyAgICAgICAgICAgIHN0cyA9IHNlbGYud2FpdCh0aW1lb3V0PXNlbGYuX3JlbWFpbmluZ190aW1lKGVuZHRpbWUpKQorCisgICAgICAgIHJldHVybiAoc3Rkb3V0LCBzdGRlcnIpCiAKIAogICAgIGRlZiBwb2xsKHNlbGYpOgogICAgICAgICByZXR1cm4gc2VsZi5faW50ZXJuYWxfcG9sbCgpCiAKIAorICAgIGRlZiBfcmVtYWluaW5nX3RpbWUoc2VsZiwgZW5kdGltZSk6CisgICAgICAgICIiIkNvbnZlbmllbmNlIGZvciBfY29tbXVuaWNhdGUgd2hlbiBjb21wdXRpbmcgdGltZW91dHMuIiIiCisgICAgICAgIGlmIGVuZHRpbWUgaXMgTm9uZToKKyAgICAgICAgICAgIHJldHVybiBOb25lCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByZXR1cm4gZW5kdGltZSAtIHRpbWUudGltZSgpCisKKworICAgIGRlZiBfY2hlY2tfdGltZW91dChzZWxmLCBlbmR0aW1lLCBvcmlnX3RpbWVvdXQpOgorICAgICAgICAiIiJDb252ZW5pZW5jZSBmb3IgY2hlY2tpbmcgaWYgYSB0aW1lb3V0IGhhcyBleHBpcmVkLiIiIgorICAgICAgICBpZiBlbmR0aW1lIGlzIE5vbmU6CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgaWYgdGltZS50aW1lKCkgPiBlbmR0aW1lOgorICAgICAgICAgICAgcmFpc2UgVGltZW91dEV4cGlyZWQoc2VsZi5hcmdzLCBvcmlnX3RpbWVvdXQpCisKKwogICAgIGlmIG1zd2luZG93czoKICAgICAgICAgIwogICAgICAgICAjIFdpbmRvd3MgbWV0aG9kcwpAQCAtODQ0LDYgKzg5Nyw4IEBACiAgICAgICAgICAgICAgICAgICAgIHAyY3JlYWQsIF8gPSBfc3VicHJvY2Vzcy5DcmVhdGVQaXBlKE5vbmUsIDApCiAgICAgICAgICAgICBlbGlmIHN0ZGluID09IFBJUEU6CiAgICAgICAgICAgICAgICAgcDJjcmVhZCwgcDJjd3JpdGUgPSBfc3VicHJvY2Vzcy5DcmVhdGVQaXBlKE5vbmUsIDApCisgICAgICAgICAgICBlbGlmIHN0ZGluID09IERFVk5VTEw6CisgICAgICAgICAgICAgICAgcDJjcmVhZCA9IG1zdmNydC5nZXRfb3NmaGFuZGxlKHNlbGYuX2dldF9kZXZudWxsKCkpCiAgICAgICAgICAgICBlbGlmIGlzaW5zdGFuY2Uoc3RkaW4sIGludCk6CiAgICAgICAgICAgICAgICAgcDJjcmVhZCA9IG1zdmNydC5nZXRfb3NmaGFuZGxlKHN0ZGluKQogICAgICAgICAgICAgZWxzZToKQEAgLTg1Nyw2ICs5MTIsOCBAQAogICAgICAgICAgICAgICAgICAgICBfLCBjMnB3cml0ZSA9IF9zdWJwcm9jZXNzLkNyZWF0ZVBpcGUoTm9uZSwgMCkKICAgICAgICAgICAgIGVsaWYgc3Rkb3V0ID09IFBJUEU6CiAgICAgICAgICAgICAgICAgYzJwcmVhZCwgYzJwd3JpdGUgPSBfc3VicHJvY2Vzcy5DcmVhdGVQaXBlKE5vbmUsIDApCisgICAgICAgICAgICBlbGlmIHN0ZG91dCA9PSBERVZOVUxMOgorICAgICAgICAgICAgICAgIGMycHdyaXRlID0gbXN2Y3J0LmdldF9vc2ZoYW5kbGUoc2VsZi5fZ2V0X2Rldm51bGwoKSkKICAgICAgICAgICAgIGVsaWYgaXNpbnN0YW5jZShzdGRvdXQsIGludCk6CiAgICAgICAgICAgICAgICAgYzJwd3JpdGUgPSBtc3ZjcnQuZ2V0X29zZmhhbmRsZShzdGRvdXQpCiAgICAgICAgICAgICBlbHNlOgpAQCAtODcyLDYgKzkyOSw4IEBACiAgICAgICAgICAgICAgICAgZXJycmVhZCwgZXJyd3JpdGUgPSBfc3VicHJvY2Vzcy5DcmVhdGVQaXBlKE5vbmUsIDApCiAgICAgICAgICAgICBlbGlmIHN0ZGVyciA9PSBTVERPVVQ6CiAgICAgICAgICAgICAgICAgZXJyd3JpdGUgPSBjMnB3cml0ZQorICAgICAgICAgICAgZWxpZiBzdGRlcnIgPT0gREVWTlVMTDoKKyAgICAgICAgICAgICAgICBlcnJ3cml0ZSA9IG1zdmNydC5nZXRfb3NmaGFuZGxlKHNlbGYuX2dldF9kZXZudWxsKCkpCiAgICAgICAgICAgICBlbGlmIGlzaW5zdGFuY2Uoc3RkZXJyLCBpbnQpOgogICAgICAgICAgICAgICAgIGVycndyaXRlID0gbXN2Y3J0LmdldF9vc2ZoYW5kbGUoc3RkZXJyKQogICAgICAgICAgICAgZWxzZToKQEAgLTk4MSw2ICsxMDQwLDggQEAKICAgICAgICAgICAgICAgICAgICAgYzJwd3JpdGUuQ2xvc2UoKQogICAgICAgICAgICAgICAgIGlmIGVycndyaXRlICE9IC0xOgogICAgICAgICAgICAgICAgICAgICBlcnJ3cml0ZS5DbG9zZSgpCisgICAgICAgICAgICAgICAgaWYgaGFzYXR0cihzZWxmLCAnX2Rldm51bGwnKToKKyAgICAgICAgICAgICAgICAgICAgb3MuY2xvc2Uoc2VsZi5fZGV2bnVsbCkKIAogICAgICAgICAgICAgIyBSZXRhaW4gdGhlIHByb2Nlc3MgaGFuZGxlLCBidXQgY2xvc2UgdGhlIHRocmVhZCBoYW5kbGUKICAgICAgICAgICAgIHNlbGYuX2NoaWxkX2NyZWF0ZWQgPSBUcnVlCkBAIC0xMDA1LDEyICsxMDY2LDIwIEBACiAgICAgICAgICAgICByZXR1cm4gc2VsZi5yZXR1cm5jb2RlCiAKIAotICAgICAgICBkZWYgd2FpdChzZWxmKToKKyAgICAgICAgZGVmIHdhaXQoc2VsZiwgdGltZW91dD1Ob25lLCBlbmR0aW1lPU5vbmUpOgogICAgICAgICAgICAgIiIiV2FpdCBmb3IgY2hpbGQgcHJvY2VzcyB0byB0ZXJtaW5hdGUuICBSZXR1cm5zIHJldHVybmNvZGUKICAgICAgICAgICAgIGF0dHJpYnV0ZS4iIiIKKyAgICAgICAgICAgIGlmIGVuZHRpbWUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgdGltZW91dCA9IHNlbGYuX3JlbWFpbmluZ190aW1lKGVuZHRpbWUpCisgICAgICAgICAgICBpZiB0aW1lb3V0IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgdGltZW91dF9taWxsaXMgPSBfc3VicHJvY2Vzcy5JTkZJTklURQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICB0aW1lb3V0X21pbGxpcyA9IGludCh0aW1lb3V0ICogMTAwMCkKICAgICAgICAgICAgIGlmIHNlbGYucmV0dXJuY29kZSBpcyBOb25lOgotICAgICAgICAgICAgICAgIF9zdWJwcm9jZXNzLldhaXRGb3JTaW5nbGVPYmplY3Qoc2VsZi5faGFuZGxlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX3N1YnByb2Nlc3MuSU5GSU5JVEUpCisgICAgICAgICAgICAgICAgcmVzdWx0ID0gX3N1YnByb2Nlc3MuV2FpdEZvclNpbmdsZU9iamVjdChzZWxmLl9oYW5kbGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lb3V0X21pbGxpcykKKyAgICAgICAgICAgICAgICBpZiByZXN1bHQgPT0gX3N1YnByb2Nlc3MuV0FJVF9USU1FT1VUOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBUaW1lb3V0RXhwaXJlZChzZWxmLmFyZ3MsIHRpbWVvdXQpCiAgICAgICAgICAgICAgICAgc2VsZi5yZXR1cm5jb2RlID0gX3N1YnByb2Nlc3MuR2V0RXhpdENvZGVQcm9jZXNzKHNlbGYuX2hhbmRsZSkKICAgICAgICAgICAgIHJldHVybiBzZWxmLnJldHVybmNvZGUKIApAQCAtMTAyMCwyMiArMTA4OSwyMyBAQAogICAgICAgICAgICAgZmguY2xvc2UoKQogCiAKLSAgICAgICAgZGVmIF9jb21tdW5pY2F0ZShzZWxmLCBpbnB1dCk6Ci0gICAgICAgICAgICBzdGRvdXQgPSBOb25lICMgUmV0dXJuCi0gICAgICAgICAgICBzdGRlcnIgPSBOb25lICMgUmV0dXJuCi0KLSAgICAgICAgICAgIGlmIHNlbGYuc3Rkb3V0OgotICAgICAgICAgICAgICAgIHN0ZG91dCA9IFtdCi0gICAgICAgICAgICAgICAgc3Rkb3V0X3RocmVhZCA9IHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PXNlbGYuX3JlYWRlcnRocmVhZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzPShzZWxmLnN0ZG91dCwgc3Rkb3V0KSkKLSAgICAgICAgICAgICAgICBzdGRvdXRfdGhyZWFkLmRhZW1vbiA9IFRydWUKLSAgICAgICAgICAgICAgICBzdGRvdXRfdGhyZWFkLnN0YXJ0KCkKLSAgICAgICAgICAgIGlmIHNlbGYuc3RkZXJyOgotICAgICAgICAgICAgICAgIHN0ZGVyciA9IFtdCi0gICAgICAgICAgICAgICAgc3RkZXJyX3RocmVhZCA9IHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PXNlbGYuX3JlYWRlcnRocmVhZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzPShzZWxmLnN0ZGVyciwgc3RkZXJyKSkKLSAgICAgICAgICAgICAgICBzdGRlcnJfdGhyZWFkLmRhZW1vbiA9IFRydWUKLSAgICAgICAgICAgICAgICBzdGRlcnJfdGhyZWFkLnN0YXJ0KCkKKyAgICAgICAgZGVmIF9jb21tdW5pY2F0ZShzZWxmLCBpbnB1dCwgZW5kdGltZSwgb3JpZ190aW1lb3V0KToKKyAgICAgICAgICAgICMgU3RhcnQgcmVhZGVyIHRocmVhZHMgZmVlZGluZyBpbnRvIGEgbGlzdCBoYW5naW5nIG9mZiBvZiB0aGlzCisgICAgICAgICAgICAjIG9iamVjdCwgdW5sZXNzIHRoZXkndmUgYWxyZWFkeSBiZWVuIHN0YXJ0ZWQuCisgICAgICAgICAgICBpZiBzZWxmLnN0ZG91dCBhbmQgbm90IGhhc2F0dHIoc2VsZiwgIl9zdGRvdXRfYnVmZiIpOgorICAgICAgICAgICAgICAgIHNlbGYuX3N0ZG91dF9idWZmID0gW10KKyAgICAgICAgICAgICAgICBzZWxmLnN0ZG91dF90aHJlYWQgPSBcCisgICAgICAgICAgICAgICAgICAgICAgICB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1zZWxmLl9yZWFkZXJ0aHJlYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3M9KHNlbGYuc3Rkb3V0LCBzZWxmLl9zdGRvdXRfYnVmZikpCisgICAgICAgICAgICAgICAgc2VsZi5zdGRvdXRfdGhyZWFkLmRhZW1vbiA9IFRydWUKKyAgICAgICAgICAgICAgICBzZWxmLnN0ZG91dF90aHJlYWQuc3RhcnQoKQorICAgICAgICAgICAgaWYgc2VsZi5zdGRlcnIgYW5kIG5vdCBoYXNhdHRyKHNlbGYsICJfc3RkZXJyX2J1ZmYiKToKKyAgICAgICAgICAgICAgICBzZWxmLl9zdGRlcnJfYnVmZiA9IFtdCisgICAgICAgICAgICAgICAgc2VsZi5zdGRlcnJfdGhyZWFkID0gXAorICAgICAgICAgICAgICAgICAgICAgICAgdGhyZWFkaW5nLlRocmVhZCh0YXJnZXQ9c2VsZi5fcmVhZGVydGhyZWFkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzPShzZWxmLnN0ZGVyciwgc2VsZi5fc3RkZXJyX2J1ZmYpKQorICAgICAgICAgICAgICAgIHNlbGYuc3RkZXJyX3RocmVhZC5kYWVtb24gPSBUcnVlCisgICAgICAgICAgICAgICAgc2VsZi5zdGRlcnJfdGhyZWFkLnN0YXJ0KCkKIAogICAgICAgICAgICAgaWYgc2VsZi5zdGRpbjoKICAgICAgICAgICAgICAgICBpZiBpbnB1dCBpcyBub3QgTm9uZToKQEAgLTEwNDYsMTAgKzExMTYsMjggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZQogICAgICAgICAgICAgICAgIHNlbGYuc3RkaW4uY2xvc2UoKQogCisgICAgICAgICAgICAjIFdhaXQgZm9yIHRoZSByZWFkZXIgdGhyZWFkcywgb3IgdGltZSBvdXQuICBJZiB3ZSB0aW1lIG91dCwgdGhlCisgICAgICAgICAgICAjIHRocmVhZHMgcmVtYWluIHJlYWRpbmcgYW5kIHRoZSBmZHMgbGVmdCBvcGVuIGluIGNhc2UgdGhlIHVzZXIKKyAgICAgICAgICAgICMgY2FsbHMgY29tbXVuaWNhdGUgYWdhaW4uCisgICAgICAgICAgICBpZiBzZWxmLnN0ZG91dCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBzZWxmLnN0ZG91dF90aHJlYWQuam9pbihzZWxmLl9yZW1haW5pbmdfdGltZShlbmR0aW1lKSkKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnN0ZG91dF90aHJlYWQuaXNBbGl2ZSgpOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBUaW1lb3V0RXhwaXJlZChzZWxmLmFyZ3MsIG9yaWdfdGltZW91dCkKKyAgICAgICAgICAgIGlmIHNlbGYuc3RkZXJyIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHNlbGYuc3RkZXJyX3RocmVhZC5qb2luKHNlbGYuX3JlbWFpbmluZ190aW1lKGVuZHRpbWUpKQorICAgICAgICAgICAgICAgIGlmIHNlbGYuc3RkZXJyX3RocmVhZC5pc0FsaXZlKCk6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFRpbWVvdXRFeHBpcmVkKHNlbGYuYXJncywgb3JpZ190aW1lb3V0KQorCisgICAgICAgICAgICAjIENvbGxlY3QgdGhlIG91dHB1dCBmcm9tIGFuZCBjbG9zZSBib3RoIHBpcGVzLCBub3cgdGhhdCB3ZSBrbm93CisgICAgICAgICAgICAjIGJvdGggaGF2ZSBiZWVuIHJlYWQgc3VjY2Vzc2Z1bGx5LgorICAgICAgICAgICAgc3Rkb3V0ID0gTm9uZQorICAgICAgICAgICAgc3RkZXJyID0gTm9uZQogICAgICAgICAgICAgaWYgc2VsZi5zdGRvdXQ6Ci0gICAgICAgICAgICAgICAgc3Rkb3V0X3RocmVhZC5qb2luKCkKKyAgICAgICAgICAgICAgICBzdGRvdXQgPSBzZWxmLl9zdGRvdXRfYnVmZgorICAgICAgICAgICAgICAgIHNlbGYuc3Rkb3V0LmNsb3NlKCkKICAgICAgICAgICAgIGlmIHNlbGYuc3RkZXJyOgotICAgICAgICAgICAgICAgIHN0ZGVycl90aHJlYWQuam9pbigpCisgICAgICAgICAgICAgICAgc3RkZXJyID0gc2VsZi5fc3RkZXJyX2J1ZmYKKyAgICAgICAgICAgICAgICBzZWxmLnN0ZGVyci5jbG9zZSgpCiAKICAgICAgICAgICAgICMgQWxsIGRhdGEgZXhjaGFuZ2VkLiAgVHJhbnNsYXRlIGxpc3RzIGludG8gc3RyaW5ncy4KICAgICAgICAgICAgIGlmIHN0ZG91dCBpcyBub3QgTm9uZToKQEAgLTEwNTcsNyArMTE0NSw2IEBACiAgICAgICAgICAgICBpZiBzdGRlcnIgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICAgICAgc3RkZXJyID0gc3RkZXJyWzBdCiAKLSAgICAgICAgICAgIHNlbGYud2FpdCgpCiAgICAgICAgICAgICByZXR1cm4gKHN0ZG91dCwgc3RkZXJyKQogCiAgICAgICAgIGRlZiBzZW5kX3NpZ25hbChzZWxmLCBzaWcpOgpAQCAtMTA5NSw2ICsxMTgyLDggQEAKICAgICAgICAgICAgICAgICBwYXNzCiAgICAgICAgICAgICBlbGlmIHN0ZGluID09IFBJUEU6CiAgICAgICAgICAgICAgICAgcDJjcmVhZCwgcDJjd3JpdGUgPSBfY3JlYXRlX3BpcGUoKQorICAgICAgICAgICAgZWxpZiBzdGRpbiA9PSBERVZOVUxMOgorICAgICAgICAgICAgICAgIHAyY3JlYWQgPSBzZWxmLl9nZXRfZGV2bnVsbCgpCiAgICAgICAgICAgICBlbGlmIGlzaW5zdGFuY2Uoc3RkaW4sIGludCk6CiAgICAgICAgICAgICAgICAgcDJjcmVhZCA9IHN0ZGluCiAgICAgICAgICAgICBlbHNlOgpAQCAtMTEwNSw2ICsxMTk0LDggQEAKICAgICAgICAgICAgICAgICBwYXNzCiAgICAgICAgICAgICBlbGlmIHN0ZG91dCA9PSBQSVBFOgogICAgICAgICAgICAgICAgIGMycHJlYWQsIGMycHdyaXRlID0gX2NyZWF0ZV9waXBlKCkKKyAgICAgICAgICAgIGVsaWYgc3Rkb3V0ID09IERFVk5VTEw6CisgICAgICAgICAgICAgICAgYzJwd3JpdGUgPSBzZWxmLl9nZXRfZGV2bnVsbCgpCiAgICAgICAgICAgICBlbGlmIGlzaW5zdGFuY2Uoc3Rkb3V0LCBpbnQpOgogICAgICAgICAgICAgICAgIGMycHdyaXRlID0gc3Rkb3V0CiAgICAgICAgICAgICBlbHNlOgpAQCAtMTExNyw2ICsxMjA4LDggQEAKICAgICAgICAgICAgICAgICBlcnJyZWFkLCBlcnJ3cml0ZSA9IF9jcmVhdGVfcGlwZSgpCiAgICAgICAgICAgICBlbGlmIHN0ZGVyciA9PSBTVERPVVQ6CiAgICAgICAgICAgICAgICAgZXJyd3JpdGUgPSBjMnB3cml0ZQorICAgICAgICAgICAgZWxpZiBzdGRlcnIgPT0gREVWTlVMTDoKKyAgICAgICAgICAgICAgICBlcnJ3cml0ZSA9IHNlbGYuX2dldF9kZXZudWxsKCkKICAgICAgICAgICAgIGVsaWYgaXNpbnN0YW5jZShzdGRlcnIsIGludCk6CiAgICAgICAgICAgICAgICAgZXJyd3JpdGUgPSBzdGRlcnIKICAgICAgICAgICAgIGVsc2U6CkBAIC0xMTQ3LDcgKzEyNDAsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdG9yZV9zaWduYWxzLCBzdGFydF9uZXdfc2Vzc2lvbik6CiAgICAgICAgICAgICAiIiJFeGVjdXRlIHByb2dyYW0gKFBPU0lYIHZlcnNpb24pIiIiCiAKLSAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UoYXJncywgc3RyKToKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UoYXJncywgKHN0ciwgYnl0ZXMpKToKICAgICAgICAgICAgICAgICBhcmdzID0gW2FyZ3NdCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIGFyZ3MgPSBsaXN0KGFyZ3MpCkBAIC0xMTY2LDE0OSArMTI1OSwzNCBAQAogICAgICAgICAgICAgZXJycGlwZV9yZWFkLCBlcnJwaXBlX3dyaXRlID0gX2NyZWF0ZV9waXBlKCkKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgICMgV2UgbXVzdCBhdm9pZCBjb21wbGV4IHdvcmsgdGhhdCBjb3VsZCBpbnZvbHZlCisgICAgICAgICAgICAgICAgICAgICMgbWFsbG9jIG9yIGZyZWUgaW4gdGhlIGNoaWxkIHByb2Nlc3MgdG8gYXZvaWQKKyAgICAgICAgICAgICAgICAgICAgIyBwb3RlbnRpYWwgZGVhZGxvY2tzLCB0aHVzIHdlIGRvIGFsbCB0aGlzIGhlcmUuCisgICAgICAgICAgICAgICAgICAgICMgYW5kIHBhc3MgaXQgdG8gZm9ya19leGVjKCkKIAotICAgICAgICAgICAgICAgICAgICBpZiBfcG9zaXhzdWJwcm9jZXNzOgotICAgICAgICAgICAgICAgICAgICAgICAgIyBXZSBtdXN0IGF2b2lkIGNvbXBsZXggd29yayB0aGF0IGNvdWxkIGludm9sdmUKLSAgICAgICAgICAgICAgICAgICAgICAgICMgbWFsbG9jIG9yIGZyZWUgaW4gdGhlIGNoaWxkIHByb2Nlc3MgdG8gYXZvaWQKLSAgICAgICAgICAgICAgICAgICAgICAgICMgcG90ZW50aWFsIGRlYWRsb2NrcywgdGh1cyB3ZSBkbyBhbGwgdGhpcyBoZXJlLgotICAgICAgICAgICAgICAgICAgICAgICAgIyBhbmQgcGFzcyBpdCB0byBmb3JrX2V4ZWMoKQotCi0gICAgICAgICAgICAgICAgICAgICAgICBpZiBlbnYgaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW52X2xpc3QgPSBbb3MuZnNlbmNvZGUoaykgKyBiJz0nICsgb3MuZnNlbmNvZGUodikKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgaywgdiBpbiBlbnYuaXRlbXMoKV0KLSAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW52X2xpc3QgPSBOb25lICAjIFVzZSBleGVjdiBpbnN0ZWFkIG9mIGV4ZWN2ZS4KLSAgICAgICAgICAgICAgICAgICAgICAgIGV4ZWN1dGFibGUgPSBvcy5mc2VuY29kZShleGVjdXRhYmxlKQotICAgICAgICAgICAgICAgICAgICAgICAgaWYgb3MucGF0aC5kaXJuYW1lKGV4ZWN1dGFibGUpOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4ZWN1dGFibGVfbGlzdCA9IChleGVjdXRhYmxlLCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBUaGlzIG1hdGNoZXMgdGhlIGJlaGF2aW9yIG9mIG9zLl9leGVjdnBlKCkuCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhlY3V0YWJsZV9saXN0ID0gdHVwbGUoCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbihvcy5mc2VuY29kZShkaXIpLCBleGVjdXRhYmxlKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgZGlyIGluIG9zLmdldF9leGVjX3BhdGgoZW52KSkKLSAgICAgICAgICAgICAgICAgICAgICAgIGZkc190b19rZWVwID0gc2V0KHBhc3NfZmRzKQotICAgICAgICAgICAgICAgICAgICAgICAgZmRzX3RvX2tlZXAuYWRkKGVycnBpcGVfd3JpdGUpCi0gICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnBpZCA9IF9wb3NpeHN1YnByb2Nlc3MuZm9ya19leGVjKAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzLCBleGVjdXRhYmxlX2xpc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsb3NlX2Zkcywgc29ydGVkKGZkc190b19rZWVwKSwgY3dkLCBlbnZfbGlzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJjcmVhZCwgcDJjd3JpdGUsIGMycHJlYWQsIGMycHdyaXRlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJyZWFkLCBlcnJ3cml0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJycGlwZV9yZWFkLCBlcnJwaXBlX3dyaXRlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN0b3JlX3NpZ25hbHMsIHN0YXJ0X25ld19zZXNzaW9uLCBwcmVleGVjX2ZuKQotICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fY2hpbGRfY3JlYXRlZCA9IFRydWUKKyAgICAgICAgICAgICAgICAgICAgaWYgZW52IGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgICAgICAgICAgZW52X2xpc3QgPSBbb3MuZnNlbmNvZGUoaykgKyBiJz0nICsgb3MuZnNlbmNvZGUodikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBrLCB2IGluIGVudi5pdGVtcygpXQogICAgICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgIyBQdXJlIFB5dGhvbiBpbXBsZW1lbnRhdGlvbjogSXQgaXMgbm90IHRocmVhZCBzYWZlLgotICAgICAgICAgICAgICAgICAgICAgICAgIyBUaGlzIGltcGxlbWVudGF0aW9uIG1heSBkZWFkbG9jayBpbiB0aGUgY2hpbGQgaWYgeW91cgotICAgICAgICAgICAgICAgICAgICAgICAgIyBwYXJlbnQgcHJvY2VzcyBoYXMgYW55IG90aGVyIHRocmVhZHMgcnVubmluZy4KLQotICAgICAgICAgICAgICAgICAgICAgICAgZ2Nfd2FzX2VuYWJsZWQgPSBnYy5pc2VuYWJsZWQoKQotICAgICAgICAgICAgICAgICAgICAgICAgIyBEaXNhYmxlIGdjIHRvIGF2b2lkIGJ1ZyB3aGVyZSBnYyAtPiBmaWxlX2RlYWxsb2MgLT4KLSAgICAgICAgICAgICAgICAgICAgICAgICMgd3JpdGUgdG8gc3RkZXJyIC0+IGhhbmcuICBTZWUgaXNzdWUxMzM2Ci0gICAgICAgICAgICAgICAgICAgICAgICBnYy5kaXNhYmxlKCkKLSAgICAgICAgICAgICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnBpZCA9IG9zLmZvcmsoKQotICAgICAgICAgICAgICAgICAgICAgICAgZXhjZXB0OgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGdjX3dhc19lbmFibGVkOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYy5lbmFibGUoKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCi0gICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9jaGlsZF9jcmVhdGVkID0gVHJ1ZQotICAgICAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi5waWQgPT0gMDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIENoaWxkCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIENsb3NlIHBhcmVudCdzIHBpcGUgZW5kcwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBwMmN3cml0ZSAhPSAtMToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmNsb3NlKHAyY3dyaXRlKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBjMnByZWFkICE9IC0xOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3MuY2xvc2UoYzJwcmVhZCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgZXJycmVhZCAhPSAtMToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmNsb3NlKGVycnJlYWQpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmNsb3NlKGVycnBpcGVfcmVhZCkKLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIFdoZW4gZHVwaW5nIGZkcywgaWYgdGhlcmUgYXJpc2VzIGEgc2l0dWF0aW9uCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgd2hlcmUgb25lIG9mIHRoZSBmZHMgaXMgZWl0aGVyIDAsIDEgb3IgMiwgaXQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBpcyBwb3NzaWJsZSB0aGF0IGl0IGlzIG92ZXJ3cml0dGVuICgjMTI2MDcpLgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBjMnB3cml0ZSA9PSAwOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYzJwd3JpdGUgPSBvcy5kdXAoYzJwd3JpdGUpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGVycndyaXRlID09IDAgb3IgZXJyd3JpdGUgPT0gMToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycndyaXRlID0gb3MuZHVwKGVycndyaXRlKQotCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgRHVwIGZkcyBmb3IgY2hpbGQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmIF9kdXAyKGEsIGIpOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBkdXAyKCkgcmVtb3ZlcyB0aGUgQ0xPRVhFQyBmbGFnIGJ1dAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyB3ZSBtdXN0IGRvIGl0IG91cnNlbHZlcyBpZiBkdXAyKCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgd291bGQgYmUgYSBuby1vcCAoaXNzdWUgIzEwODA2KS4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGEgPT0gYjoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfc2V0X2Nsb2V4ZWMoYSwgRmFsc2UpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGlmIGEgIT0gLTE6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3MuZHVwMihhLCBiKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfZHVwMihwMmNyZWFkLCAwKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfZHVwMihjMnB3cml0ZSwgMSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2R1cDIoZXJyd3JpdGUsIDIpCi0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBDbG9zZSBwaXBlIGZkcy4gIE1ha2Ugc3VyZSB3ZSBkb24ndCBjbG9zZSB0aGUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBzYW1lIGZkIG1vcmUgdGhhbiBvbmNlLCBvciBzdGFuZGFyZCBmZHMuCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsb3NlZCA9IHNldCgpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciBmZCBpbiBbcDJjcmVhZCwgYzJwd3JpdGUsIGVycndyaXRlXToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGZkID4gMiBhbmQgZmQgbm90IGluIGNsb3NlZDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5jbG9zZShmZCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZWQuYWRkKGZkKQotCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgQ2xvc2UgYWxsIG90aGVyIGZkcywgaWYgYXNrZWQgZm9yCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGNsb3NlX2ZkczoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkc190b19rZWVwID0gc2V0KHBhc3NfZmRzKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmRzX3RvX2tlZXAuYWRkKGVycnBpcGVfd3JpdGUpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9jbG9zZV9mZHMoZmRzX3RvX2tlZXApCi0KLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBjd2QgaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5jaGRpcihjd2QpCi0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBUaGlzIGlzIGEgY29weSBvZiBQeXRob24vcHl0aG9ucnVuLmMKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBfUHlfUmVzdG9yZVNpZ25hbHMoKS4gIElmIHRoYXQgd2VyZSBleHBvc2VkCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgYXMgYSBzeXMuX3B5X3Jlc3RvcmVzaWduYWxzIGZ1bmMgaXQgd291bGQgYmUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBiZXR0ZXIuLiBidXQgdGhpcyBwdXJlIHB5dGhvbiBpbXBsZW1lbnRhdGlvbgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGlzbid0IGxpa2VseSB0byBiZSB1c2VkIG11Y2ggYW55bW9yZS4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgcmVzdG9yZV9zaWduYWxzOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lnbmFscyA9ICgnU0lHUElQRScsICdTSUdYRlonLCAnU0lHWEZTWicpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3Igc2lnIGluIHNpZ25hbHM6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgaGFzYXR0cihzaWduYWwsIHNpZyk6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpZ25hbC5zaWduYWwoZ2V0YXR0cihzaWduYWwsIHNpZyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2lnbmFsLlNJR19ERkwpCi0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgc3RhcnRfbmV3X3Nlc3Npb24gYW5kIGhhc2F0dHIob3MsICdzZXRzaWQnKToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnNldHNpZCgpCi0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgcHJlZXhlY19mbjoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZWV4ZWNfZm4oKQotCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGVudiBpcyBOb25lOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3MuZXhlY3ZwKGV4ZWN1dGFibGUsIGFyZ3MpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5leGVjdnBlKGV4ZWN1dGFibGUsIGFyZ3MsIGVudikKLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2VwdDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhjX3R5cGUsIGV4Y192YWx1ZSA9IHN5cy5leGNfaW5mbygpWzoyXQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShleGNfdmFsdWUsIE9TRXJyb3IpOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm5vX251bSA9IGV4Y192YWx1ZS5lcnJubwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJub19udW0gPSAwCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlID0gJyVzOiV4OiVzJyAlIChleGNfdHlwZS5fX25hbWVfXywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm5vX251bSwgZXhjX3ZhbHVlKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZSA9IG1lc3NhZ2UuZW5jb2RlKGVycm9ycz0ic3Vycm9nYXRlcGFzcyIpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy53cml0ZShlcnJwaXBlX3dyaXRlLCBtZXNzYWdlKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBXZSBNVVNUIG5vdCBhbGxvdyBhbnl0aGluZyBvZGQgaGFwcGVuaW5nCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGFib3ZlIHRvIHByZXZlbnQgdXMgZnJvbSBleGl0aW5nIGJlbG93LgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFzcwotCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBUaGlzIGV4aXRjb2RlIHdvbid0IGJlIHJlcG9ydGVkIHRvIGFwcGxpY2F0aW9ucwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgc28gaXQgcmVhbGx5IGRvZXNuJ3QgbWF0dGVyIHdoYXQgd2UgcmV0dXJuLgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLl9leGl0KDI1NSkKLQotICAgICAgICAgICAgICAgICAgICAgICAgIyBQYXJlbnQKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIGdjX3dhc19lbmFibGVkOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdjLmVuYWJsZSgpCisgICAgICAgICAgICAgICAgICAgICAgICBlbnZfbGlzdCA9IE5vbmUgICMgVXNlIGV4ZWN2IGluc3RlYWQgb2YgZXhlY3ZlLgorICAgICAgICAgICAgICAgICAgICBleGVjdXRhYmxlID0gb3MuZnNlbmNvZGUoZXhlY3V0YWJsZSkKKyAgICAgICAgICAgICAgICAgICAgaWYgb3MucGF0aC5kaXJuYW1lKGV4ZWN1dGFibGUpOgorICAgICAgICAgICAgICAgICAgICAgICAgZXhlY3V0YWJsZV9saXN0ID0gKGV4ZWN1dGFibGUsKQorICAgICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgIyBUaGlzIG1hdGNoZXMgdGhlIGJlaGF2aW9yIG9mIG9zLl9leGVjdnBlKCkuCisgICAgICAgICAgICAgICAgICAgICAgICBleGVjdXRhYmxlX2xpc3QgPSB0dXBsZSgKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4ob3MuZnNlbmNvZGUoZGlyKSwgZXhlY3V0YWJsZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgZGlyIGluIG9zLmdldF9leGVjX3BhdGgoZW52KSkKKyAgICAgICAgICAgICAgICAgICAgZmRzX3RvX2tlZXAgPSBzZXQocGFzc19mZHMpCisgICAgICAgICAgICAgICAgICAgIGZkc190b19rZWVwLmFkZChlcnJwaXBlX3dyaXRlKQorICAgICAgICAgICAgICAgICAgICBzZWxmLnBpZCA9IF9wb3NpeHN1YnByb2Nlc3MuZm9ya19leGVjKAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MsIGV4ZWN1dGFibGVfbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZV9mZHMsIHNvcnRlZChmZHNfdG9fa2VlcCksIGN3ZCwgZW52X2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJjcmVhZCwgcDJjd3JpdGUsIGMycHJlYWQsIGMycHdyaXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycnJlYWQsIGVycndyaXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycnBpcGVfcmVhZCwgZXJycGlwZV93cml0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN0b3JlX3NpZ25hbHMsIHN0YXJ0X25ld19zZXNzaW9uLCBwcmVleGVjX2ZuKQorICAgICAgICAgICAgICAgICAgICBzZWxmLl9jaGlsZF9jcmVhdGVkID0gVHJ1ZQogICAgICAgICAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICAgICAgICAgICMgYmUgc3VyZSB0aGUgRkQgaXMgY2xvc2VkIG5vIG1hdHRlciB3aGF0CiAgICAgICAgICAgICAgICAgICAgIG9zLmNsb3NlKGVycnBpcGVfd3JpdGUpCkBAIC0xMzE5LDYgKzEyOTcsOCBAQAogICAgICAgICAgICAgICAgICAgICBvcy5jbG9zZShjMnB3cml0ZSkKICAgICAgICAgICAgICAgICBpZiBlcnJ3cml0ZSAhPSAtMSBhbmQgZXJycmVhZCAhPSAtMToKICAgICAgICAgICAgICAgICAgICAgb3MuY2xvc2UoZXJyd3JpdGUpCisgICAgICAgICAgICAgICAgaWYgaGFzYXR0cihzZWxmLCAnX2Rldm51bGwnKToKKyAgICAgICAgICAgICAgICAgICAgb3MuY2xvc2Uoc2VsZi5fZGV2bnVsbCkKIAogICAgICAgICAgICAgICAgICMgV2FpdCBmb3IgZXhlYyB0byBmYWlsIG9yIHN1Y2NlZWQ7IHBvc3NpYmx5IHJhaXNpbmcgYW4KICAgICAgICAgICAgICAgICAjIGV4Y2VwdGlvbiAobGltaXRlZCBpbiBzaXplKQpAQCAtMTM5NiwyNSArMTM3Niw1NyBAQAogICAgICAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuY29kZQogCiAKLSAgICAgICAgZGVmIHdhaXQoc2VsZik6CisgICAgICAgIGRlZiBfdHJ5X3dhaXQoc2VsZiwgd2FpdF9mbGFncyk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgKHBpZCwgc3RzKSA9IF9laW50cl9yZXRyeV9jYWxsKG9zLndhaXRwaWQsIHNlbGYucGlkLCB3YWl0X2ZsYWdzKQorICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKKyAgICAgICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVDSElMRDoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICAjIFRoaXMgaGFwcGVucyBpZiBTSUdDTEQgaXMgc2V0IHRvIGJlIGlnbm9yZWQgb3Igd2FpdGluZworICAgICAgICAgICAgICAgICMgZm9yIGNoaWxkIHByb2Nlc3NlcyBoYXMgb3RoZXJ3aXNlIGJlZW4gZGlzYWJsZWQgZm9yIG91cgorICAgICAgICAgICAgICAgICMgcHJvY2Vzcy4gIFRoaXMgY2hpbGQgaXMgZGVhZCwgd2UgY2FuJ3QgZ2V0IHRoZSBzdGF0dXMuCisgICAgICAgICAgICAgICAgcGlkID0gc2VsZi5waWQKKyAgICAgICAgICAgICAgICBzdHMgPSAwCisgICAgICAgICAgICByZXR1cm4gKHBpZCwgc3RzKQorCisKKyAgICAgICAgZGVmIHdhaXQoc2VsZiwgdGltZW91dD1Ob25lLCBlbmR0aW1lPU5vbmUpOgogICAgICAgICAgICAgIiIiV2FpdCBmb3IgY2hpbGQgcHJvY2VzcyB0byB0ZXJtaW5hdGUuICBSZXR1cm5zIHJldHVybmNvZGUKICAgICAgICAgICAgIGF0dHJpYnV0ZS4iIiIKLSAgICAgICAgICAgIGlmIHNlbGYucmV0dXJuY29kZSBpcyBOb25lOgotICAgICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICAgICAgcGlkLCBzdHMgPSBfZWludHJfcmV0cnlfY2FsbChvcy53YWl0cGlkLCBzZWxmLnBpZCwgMCkKLSAgICAgICAgICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlOgotICAgICAgICAgICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVDSElMRDoKLSAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCi0gICAgICAgICAgICAgICAgICAgICMgVGhpcyBoYXBwZW5zIGlmIFNJR0NMRCBpcyBzZXQgdG8gYmUgaWdub3JlZCBvciB3YWl0aW5nCi0gICAgICAgICAgICAgICAgICAgICMgZm9yIGNoaWxkIHByb2Nlc3NlcyBoYXMgb3RoZXJ3aXNlIGJlZW4gZGlzYWJsZWQgZm9yIG91cgotICAgICAgICAgICAgICAgICAgICAjIHByb2Nlc3MuICBUaGlzIGNoaWxkIGlzIGRlYWQsIHdlIGNhbid0IGdldCB0aGUgc3RhdHVzLgotICAgICAgICAgICAgICAgICAgICBzdHMgPSAwCisgICAgICAgICAgICBpZiBzZWxmLnJldHVybmNvZGUgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuY29kZQorCisgICAgICAgICAgICAjIGVuZHRpbWUgaXMgcHJlZmVycmVkIHRvIHRpbWVvdXQuICB0aW1lb3V0IGlzIG9ubHkgdXNlZCBmb3IKKyAgICAgICAgICAgICMgcHJpbnRpbmcuCisgICAgICAgICAgICBpZiBlbmR0aW1lIGlzIG5vdCBOb25lIG9yIHRpbWVvdXQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgaWYgZW5kdGltZSBpcyBOb25lOgorICAgICAgICAgICAgICAgICAgICBlbmR0aW1lID0gdGltZS50aW1lKCkgKyB0aW1lb3V0CisgICAgICAgICAgICAgICAgZWxpZiB0aW1lb3V0IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBzZWxmLl9yZW1haW5pbmdfdGltZShlbmR0aW1lKQorCisgICAgICAgICAgICBpZiBlbmR0aW1lIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgICMgRW50ZXIgYSBidXN5IGxvb3AgaWYgd2UgaGF2ZSBhIHRpbWVvdXQuICBUaGlzIGJ1c3kgbG9vcCB3YXMKKyAgICAgICAgICAgICAgICAjIGNyaWJiZWQgZnJvbSBMaWIvdGhyZWFkaW5nLnB5IGluIFRocmVhZC53YWl0KCkgYXQgcjcxMDY1LgorICAgICAgICAgICAgICAgIGRlbGF5ID0gMC4wMDA1ICMgNTAwIHVzIC0+IGluaXRpYWwgZGVsYXkgb2YgMSBtcworICAgICAgICAgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICAgICAgICAgIChwaWQsIHN0cykgPSBzZWxmLl90cnlfd2FpdChvcy5XTk9IQU5HKQorICAgICAgICAgICAgICAgICAgICBhc3NlcnQgcGlkID09IHNlbGYucGlkIG9yIHBpZCA9PSAwCisgICAgICAgICAgICAgICAgICAgIGlmIHBpZCA9PSBzZWxmLnBpZDoKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2hhbmRsZV9leGl0c3RhdHVzKHN0cykKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgICAgIHJlbWFpbmluZyA9IHNlbGYuX3JlbWFpbmluZ190aW1lKGVuZHRpbWUpCisgICAgICAgICAgICAgICAgICAgIGlmIHJlbWFpbmluZyA8PSAwOgorICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgVGltZW91dEV4cGlyZWQoc2VsZi5hcmdzLCB0aW1lb3V0KQorICAgICAgICAgICAgICAgICAgICBkZWxheSA9IG1pbihkZWxheSAqIDIsIHJlbWFpbmluZywgLjA1KQorICAgICAgICAgICAgICAgICAgICB0aW1lLnNsZWVwKGRlbGF5KQorICAgICAgICAgICAgZWxpZiBzZWxmLnJldHVybmNvZGUgaXMgTm9uZToKKyAgICAgICAgICAgICAgICAocGlkLCBzdHMpID0gc2VsZi5fdHJ5X3dhaXQoMCkKICAgICAgICAgICAgICAgICBzZWxmLl9oYW5kbGVfZXhpdHN0YXR1cyhzdHMpCiAgICAgICAgICAgICByZXR1cm4gc2VsZi5yZXR1cm5jb2RlCiAKIAotICAgICAgICBkZWYgX2NvbW11bmljYXRlKHNlbGYsIGlucHV0KToKLSAgICAgICAgICAgIGlmIHNlbGYuc3RkaW46CisgICAgICAgIGRlZiBfY29tbXVuaWNhdGUoc2VsZiwgaW5wdXQsIGVuZHRpbWUsIG9yaWdfdGltZW91dCk6CisgICAgICAgICAgICBpZiBzZWxmLnN0ZGluIGFuZCBub3Qgc2VsZi5fY29tbXVuaWNhdGlvbl9zdGFydGVkOgogICAgICAgICAgICAgICAgICMgRmx1c2ggc3RkaW8gYnVmZmVyLiAgVGhpcyBtaWdodCBibG9jaywgaWYgdGhlIHVzZXIgaGFzCiAgICAgICAgICAgICAgICAgIyBiZWVuIHdyaXRpbmcgdG8gLnN0ZGluIGluIGFuIHVuY29udHJvbGxlZCBmYXNoaW9uLgogICAgICAgICAgICAgICAgIHNlbGYuc3RkaW4uZmx1c2goKQpAQCAtMTQyMiw5ICsxNDM0LDEzIEBACiAgICAgICAgICAgICAgICAgICAgIHNlbGYuc3RkaW4uY2xvc2UoKQogCiAgICAgICAgICAgICBpZiBfaGFzX3BvbGw6Ci0gICAgICAgICAgICAgICAgc3Rkb3V0LCBzdGRlcnIgPSBzZWxmLl9jb21tdW5pY2F0ZV93aXRoX3BvbGwoaW5wdXQpCisgICAgICAgICAgICAgICAgc3Rkb3V0LCBzdGRlcnIgPSBzZWxmLl9jb21tdW5pY2F0ZV93aXRoX3BvbGwoaW5wdXQsIGVuZHRpbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ190aW1lb3V0KQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBzdGRvdXQsIHN0ZGVyciA9IHNlbGYuX2NvbW11bmljYXRlX3dpdGhfc2VsZWN0KGlucHV0KQorICAgICAgICAgICAgICAgIHN0ZG91dCwgc3RkZXJyID0gc2VsZi5fY29tbXVuaWNhdGVfd2l0aF9zZWxlY3QoaW5wdXQsIGVuZHRpbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmlnX3RpbWVvdXQpCisKKyAgICAgICAgICAgIHNlbGYud2FpdCh0aW1lb3V0PXNlbGYuX3JlbWFpbmluZ190aW1lKGVuZHRpbWUpKQogCiAgICAgICAgICAgICAjIEFsbCBkYXRhIGV4Y2hhbmdlZC4gIFRyYW5zbGF0ZSBsaXN0cyBpbnRvIHN0cmluZ3MuCiAgICAgICAgICAgICBpZiBzdGRvdXQgaXMgbm90IE5vbmU6CkBAIC0xNDQyLDY3ICsxNDU4LDg3IEBACiAgICAgICAgICAgICAgICAgICAgIHN0ZGVyciA9IHNlbGYuX3RyYW5zbGF0ZV9uZXdsaW5lcyhzdGRlcnIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnN0ZGVyci5lbmNvZGluZykKIAotICAgICAgICAgICAgc2VsZi53YWl0KCkKICAgICAgICAgICAgIHJldHVybiAoc3Rkb3V0LCBzdGRlcnIpCiAKIAotICAgICAgICBkZWYgX2NvbW11bmljYXRlX3dpdGhfcG9sbChzZWxmLCBpbnB1dCk6CisgICAgICAgIGRlZiBfY29tbXVuaWNhdGVfd2l0aF9wb2xsKHNlbGYsIGlucHV0LCBlbmR0aW1lLCBvcmlnX3RpbWVvdXQpOgogICAgICAgICAgICAgc3Rkb3V0ID0gTm9uZSAjIFJldHVybgogICAgICAgICAgICAgc3RkZXJyID0gTm9uZSAjIFJldHVybgotICAgICAgICAgICAgZmQyZmlsZSA9IHt9Ci0gICAgICAgICAgICBmZDJvdXRwdXQgPSB7fQorCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5fY29tbXVuaWNhdGlvbl9zdGFydGVkOgorICAgICAgICAgICAgICAgIHNlbGYuX2ZkMmZpbGUgPSB7fQogCiAgICAgICAgICAgICBwb2xsZXIgPSBzZWxlY3QucG9sbCgpCiAgICAgICAgICAgICBkZWYgcmVnaXN0ZXJfYW5kX2FwcGVuZChmaWxlX29iaiwgZXZlbnRtYXNrKToKICAgICAgICAgICAgICAgICBwb2xsZXIucmVnaXN0ZXIoZmlsZV9vYmouZmlsZW5vKCksIGV2ZW50bWFzaykKLSAgICAgICAgICAgICAgICBmZDJmaWxlW2ZpbGVfb2JqLmZpbGVubygpXSA9IGZpbGVfb2JqCisgICAgICAgICAgICAgICAgc2VsZi5fZmQyZmlsZVtmaWxlX29iai5maWxlbm8oKV0gPSBmaWxlX29iagogCiAgICAgICAgICAgICBkZWYgY2xvc2VfdW5yZWdpc3Rlcl9hbmRfcmVtb3ZlKGZkKToKICAgICAgICAgICAgICAgICBwb2xsZXIudW5yZWdpc3RlcihmZCkKLSAgICAgICAgICAgICAgICBmZDJmaWxlW2ZkXS5jbG9zZSgpCi0gICAgICAgICAgICAgICAgZmQyZmlsZS5wb3AoZmQpCisgICAgICAgICAgICAgICAgc2VsZi5fZmQyZmlsZVtmZF0uY2xvc2UoKQorICAgICAgICAgICAgICAgIHNlbGYuX2ZkMmZpbGUucG9wKGZkKQogCiAgICAgICAgICAgICBpZiBzZWxmLnN0ZGluIGFuZCBpbnB1dDoKICAgICAgICAgICAgICAgICByZWdpc3Rlcl9hbmRfYXBwZW5kKHNlbGYuc3RkaW4sIHNlbGVjdC5QT0xMT1VUKQogCisgICAgICAgICAgICAjIE9ubHkgY3JlYXRlIHRoaXMgbWFwcGluZyBpZiB3ZSBoYXZlbid0IGFscmVhZHkuCisgICAgICAgICAgICBpZiBub3Qgc2VsZi5fY29tbXVuaWNhdGlvbl9zdGFydGVkOgorICAgICAgICAgICAgICAgIHNlbGYuX2ZkMm91dHB1dCA9IHt9CisgICAgICAgICAgICAgICAgaWYgc2VsZi5zdGRvdXQ6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX2ZkMm91dHB1dFtzZWxmLnN0ZG91dC5maWxlbm8oKV0gPSBbXQorICAgICAgICAgICAgICAgIGlmIHNlbGYuc3RkZXJyOgorICAgICAgICAgICAgICAgICAgICBzZWxmLl9mZDJvdXRwdXRbc2VsZi5zdGRlcnIuZmlsZW5vKCldID0gW10KKwogICAgICAgICAgICAgc2VsZWN0X1BPTExJTl9QT0xMUFJJID0gc2VsZWN0LlBPTExJTiB8IHNlbGVjdC5QT0xMUFJJCiAgICAgICAgICAgICBpZiBzZWxmLnN0ZG91dDoKICAgICAgICAgICAgICAgICByZWdpc3Rlcl9hbmRfYXBwZW5kKHNlbGYuc3Rkb3V0LCBzZWxlY3RfUE9MTElOX1BPTExQUkkpCi0gICAgICAgICAgICAgICAgZmQyb3V0cHV0W3NlbGYuc3Rkb3V0LmZpbGVubygpXSA9IHN0ZG91dCA9IFtdCisgICAgICAgICAgICAgICAgc3Rkb3V0ID0gc2VsZi5fZmQyb3V0cHV0W3NlbGYuc3Rkb3V0LmZpbGVubygpXQogICAgICAgICAgICAgaWYgc2VsZi5zdGRlcnI6CiAgICAgICAgICAgICAgICAgcmVnaXN0ZXJfYW5kX2FwcGVuZChzZWxmLnN0ZGVyciwgc2VsZWN0X1BPTExJTl9QT0xMUFJJKQotICAgICAgICAgICAgICAgIGZkMm91dHB1dFtzZWxmLnN0ZGVyci5maWxlbm8oKV0gPSBzdGRlcnIgPSBbXQorICAgICAgICAgICAgICAgIHN0ZGVyciA9IHNlbGYuX2ZkMm91dHB1dFtzZWxmLnN0ZGVyci5maWxlbm8oKV0KIAotICAgICAgICAgICAgaW5wdXRfb2Zmc2V0ID0gMAotICAgICAgICAgICAgd2hpbGUgZmQyZmlsZToKKyAgICAgICAgICAgICMgU2F2ZSB0aGUgaW5wdXQgaGVyZSBzbyB0aGF0IGlmIHdlIHRpbWUgb3V0IHdoaWxlIGNvbW11bmljYXRpbmcsCisgICAgICAgICAgICAjIHdlIGNhbiBjb250aW51ZSBzZW5kaW5nIGlucHV0IGlmIHdlIHJldHJ5LgorICAgICAgICAgICAgaWYgc2VsZi5zdGRpbiBhbmQgc2VsZi5faW5wdXQgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBzZWxmLl9pbnB1dF9vZmZzZXQgPSAwCisgICAgICAgICAgICAgICAgc2VsZi5faW5wdXQgPSBpbnB1dAorICAgICAgICAgICAgICAgIGlmIHNlbGYudW5pdmVyc2FsX25ld2xpbmVzOgorICAgICAgICAgICAgICAgICAgICBzZWxmLl9pbnB1dCA9IHNlbGYuX2lucHV0LmVuY29kZShzZWxmLnN0ZGluLmVuY29kaW5nKQorCisgICAgICAgICAgICB3aGlsZSBzZWxmLl9mZDJmaWxlOgorICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBzZWxmLl9yZW1haW5pbmdfdGltZShlbmR0aW1lKQorICAgICAgICAgICAgICAgIGlmIHRpbWVvdXQgaXMgbm90IE5vbmUgYW5kIHRpbWVvdXQgPCAwOgorICAgICAgICAgICAgICAgICAgICByYWlzZSBUaW1lb3V0RXhwaXJlZChzZWxmLmFyZ3MsIG9yaWdfdGltZW91dCkKICAgICAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgICAgIHJlYWR5ID0gcG9sbGVyLnBvbGwoKQorICAgICAgICAgICAgICAgICAgICByZWFkeSA9IHBvbGxlci5wb2xsKHRpbWVvdXQpCiAgICAgICAgICAgICAgICAgZXhjZXB0IHNlbGVjdC5lcnJvciBhcyBlOgogICAgICAgICAgICAgICAgICAgICBpZiBlLmFyZ3NbMF0gPT0gZXJybm8uRUlOVFI6CiAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgICAgIHNlbGYuX2NoZWNrX3RpbWVvdXQoZW5kdGltZSwgb3JpZ190aW1lb3V0KQogCiAgICAgICAgICAgICAgICAgIyBYWFggUmV3cml0ZSB0aGVzZSB0byB1c2Ugbm9uLWJsb2NraW5nIEkvTyBvbiB0aGUKICAgICAgICAgICAgICAgICAjIGZpbGUgb2JqZWN0czsgdGhleSBhcmUgbm8gbG9uZ2VyIHVzaW5nIEMgc3RkaW8hCiAKICAgICAgICAgICAgICAgICBmb3IgZmQsIG1vZGUgaW4gcmVhZHk6CiAgICAgICAgICAgICAgICAgICAgIGlmIG1vZGUgJiBzZWxlY3QuUE9MTE9VVDoKLSAgICAgICAgICAgICAgICAgICAgICAgIGNodW5rID0gaW5wdXRbaW5wdXRfb2Zmc2V0IDogaW5wdXRfb2Zmc2V0ICsgX1BJUEVfQlVGXQorICAgICAgICAgICAgICAgICAgICAgICAgY2h1bmsgPSBzZWxmLl9pbnB1dFtzZWxmLl9pbnB1dF9vZmZzZXQgOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9pbnB1dF9vZmZzZXQgKyBfUElQRV9CVUZdCiAgICAgICAgICAgICAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRfb2Zmc2V0ICs9IG9zLndyaXRlKGZkLCBjaHVuaykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9pbnB1dF9vZmZzZXQgKz0gb3Mud3JpdGUoZmQsIGNodW5rKQogICAgICAgICAgICAgICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBlLmVycm5vID09IGVycm5vLkVQSVBFOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZV91bnJlZ2lzdGVyX2FuZF9yZW1vdmUoZmQpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgaW5wdXRfb2Zmc2V0ID49IGxlbihpbnB1dCk6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgc2VsZi5faW5wdXRfb2Zmc2V0ID49IGxlbihzZWxmLl9pbnB1dCk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsb3NlX3VucmVnaXN0ZXJfYW5kX3JlbW92ZShmZCkKICAgICAgICAgICAgICAgICAgICAgZWxpZiBtb2RlICYgc2VsZWN0X1BPTExJTl9QT0xMUFJJOgogICAgICAgICAgICAgICAgICAgICAgICAgZGF0YSA9IG9zLnJlYWQoZmQsIDQwOTYpCiAgICAgICAgICAgICAgICAgICAgICAgICBpZiBub3QgZGF0YToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbG9zZV91bnJlZ2lzdGVyX2FuZF9yZW1vdmUoZmQpCi0gICAgICAgICAgICAgICAgICAgICAgICBmZDJvdXRwdXRbZmRdLmFwcGVuZChkYXRhKQorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fZmQyb3V0cHV0W2ZkXS5hcHBlbmQoZGF0YSkKICAgICAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgICAgICMgSWdub3JlIGhhbmcgdXAgb3IgZXJyb3JzLgogICAgICAgICAgICAgICAgICAgICAgICAgY2xvc2VfdW5yZWdpc3Rlcl9hbmRfcmVtb3ZlKGZkKQpAQCAtMTUxMCw2MSArMTU0Niw4NyBAQAogICAgICAgICAgICAgcmV0dXJuIChzdGRvdXQsIHN0ZGVycikKIAogCi0gICAgICAgIGRlZiBfY29tbXVuaWNhdGVfd2l0aF9zZWxlY3Qoc2VsZiwgaW5wdXQpOgotICAgICAgICAgICAgcmVhZF9zZXQgPSBbXQotICAgICAgICAgICAgd3JpdGVfc2V0ID0gW10KKyAgICAgICAgZGVmIF9jb21tdW5pY2F0ZV93aXRoX3NlbGVjdChzZWxmLCBpbnB1dCwgZW5kdGltZSwgb3JpZ190aW1lb3V0KToKKyAgICAgICAgICAgIGlmIG5vdCBzZWxmLl9jb21tdW5pY2F0aW9uX3N0YXJ0ZWQ6CisgICAgICAgICAgICAgICAgc2VsZi5fcmVhZF9zZXQgPSBbXQorICAgICAgICAgICAgICAgIHNlbGYuX3dyaXRlX3NldCA9IFtdCisgICAgICAgICAgICAgICAgaWYgc2VsZi5zdGRpbiBhbmQgaW5wdXQ6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX3dyaXRlX3NldC5hcHBlbmQoc2VsZi5zdGRpbikKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnN0ZG91dDoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fcmVhZF9zZXQuYXBwZW5kKHNlbGYuc3Rkb3V0KQorICAgICAgICAgICAgICAgIGlmIHNlbGYuc3RkZXJyOgorICAgICAgICAgICAgICAgICAgICBzZWxmLl9yZWFkX3NldC5hcHBlbmQoc2VsZi5zdGRlcnIpCisKKyAgICAgICAgICAgIGlmIHNlbGYuc3RkaW4gYW5kIHNlbGYuX2lucHV0IGlzIE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5faW5wdXRfb2Zmc2V0ID0gMAorICAgICAgICAgICAgICAgIHNlbGYuX2lucHV0ID0gaW5wdXQKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnVuaXZlcnNhbF9uZXdsaW5lczoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5faW5wdXQgPSBzZWxmLl9pbnB1dC5lbmNvZGUoc2VsZi5zdGRpbi5lbmNvZGluZykKKwogICAgICAgICAgICAgc3Rkb3V0ID0gTm9uZSAjIFJldHVybgogICAgICAgICAgICAgc3RkZXJyID0gTm9uZSAjIFJldHVybgogCi0gICAgICAgICAgICBpZiBzZWxmLnN0ZGluIGFuZCBpbnB1dDoKLSAgICAgICAgICAgICAgICB3cml0ZV9zZXQuYXBwZW5kKHNlbGYuc3RkaW4pCiAgICAgICAgICAgICBpZiBzZWxmLnN0ZG91dDoKLSAgICAgICAgICAgICAgICByZWFkX3NldC5hcHBlbmQoc2VsZi5zdGRvdXQpCi0gICAgICAgICAgICAgICAgc3Rkb3V0ID0gW10KKyAgICAgICAgICAgICAgICBpZiBub3Qgc2VsZi5fY29tbXVuaWNhdGlvbl9zdGFydGVkOgorICAgICAgICAgICAgICAgICAgICBzZWxmLl9zdGRvdXRfYnVmZiA9IFtdCisgICAgICAgICAgICAgICAgc3Rkb3V0ID0gc2VsZi5fc3Rkb3V0X2J1ZmYKICAgICAgICAgICAgIGlmIHNlbGYuc3RkZXJyOgotICAgICAgICAgICAgICAgIHJlYWRfc2V0LmFwcGVuZChzZWxmLnN0ZGVycikKLSAgICAgICAgICAgICAgICBzdGRlcnIgPSBbXQorICAgICAgICAgICAgICAgIGlmIG5vdCBzZWxmLl9jb21tdW5pY2F0aW9uX3N0YXJ0ZWQ6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX3N0ZGVycl9idWZmID0gW10KKyAgICAgICAgICAgICAgICBzdGRlcnIgPSBzZWxmLl9zdGRlcnJfYnVmZgogCi0gICAgICAgICAgICBpbnB1dF9vZmZzZXQgPSAwCi0gICAgICAgICAgICB3aGlsZSByZWFkX3NldCBvciB3cml0ZV9zZXQ6CisgICAgICAgICAgICB3aGlsZSBzZWxmLl9yZWFkX3NldCBvciBzZWxmLl93cml0ZV9zZXQ6CisgICAgICAgICAgICAgICAgdGltZW91dCA9IHNlbGYuX3JlbWFpbmluZ190aW1lKGVuZHRpbWUpCisgICAgICAgICAgICAgICAgaWYgdGltZW91dCBpcyBub3QgTm9uZSBhbmQgdGltZW91dCA8IDA6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIFRpbWVvdXRFeHBpcmVkKHNlbGYuYXJncywgb3JpZ190aW1lb3V0KQogICAgICAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICAgICAgcmxpc3QsIHdsaXN0LCB4bGlzdCA9IHNlbGVjdC5zZWxlY3QocmVhZF9zZXQsIHdyaXRlX3NldCwgW10pCisgICAgICAgICAgICAgICAgICAgIChybGlzdCwgd2xpc3QsIHhsaXN0KSA9IFwKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC5zZWxlY3Qoc2VsZi5fcmVhZF9zZXQsIHNlbGYuX3dyaXRlX3NldCwgW10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQpCiAgICAgICAgICAgICAgICAgZXhjZXB0IHNlbGVjdC5lcnJvciBhcyBlOgogICAgICAgICAgICAgICAgICAgICBpZiBlLmFyZ3NbMF0gPT0gZXJybm8uRUlOVFI6CiAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgICAgICAgICByYWlzZQogCisgICAgICAgICAgICAgICAgIyBBY2NvcmRpbmcgdG8gdGhlIGRvY3MsIHJldHVybmluZyB0aHJlZSBlbXB0eSBsaXN0cyBpbmRpY2F0ZXMKKyAgICAgICAgICAgICAgICAjIHRoYXQgdGhlIHRpbWVvdXQgZXhwaXJlZC4KKyAgICAgICAgICAgICAgICBpZiBub3QgKHJsaXN0IG9yIHdsaXN0IG9yIHhsaXN0KToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgVGltZW91dEV4cGlyZWQoc2VsZi5hcmdzLCBvcmlnX3RpbWVvdXQpCisgICAgICAgICAgICAgICAgIyBXZSBhbHNvIGNoZWNrIHdoYXQgdGltZSBpdCBpcyBvdXJzZWx2ZXMgZm9yIGdvb2QgbWVhc3VyZS4KKyAgICAgICAgICAgICAgICBzZWxmLl9jaGVja190aW1lb3V0KGVuZHRpbWUsIG9yaWdfdGltZW91dCkKKwogICAgICAgICAgICAgICAgICMgWFhYIFJld3JpdGUgdGhlc2UgdG8gdXNlIG5vbi1ibG9ja2luZyBJL08gb24gdGhlCiAgICAgICAgICAgICAgICAgIyBmaWxlIG9iamVjdHM7IHRoZXkgYXJlIG5vIGxvbmdlciB1c2luZyBDIHN0ZGlvIQogCiAgICAgICAgICAgICAgICAgaWYgc2VsZi5zdGRpbiBpbiB3bGlzdDoKLSAgICAgICAgICAgICAgICAgICAgY2h1bmsgPSBpbnB1dFtpbnB1dF9vZmZzZXQgOiBpbnB1dF9vZmZzZXQgKyBfUElQRV9CVUZdCisgICAgICAgICAgICAgICAgICAgIGNodW5rID0gc2VsZi5faW5wdXRbc2VsZi5faW5wdXRfb2Zmc2V0IDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9pbnB1dF9vZmZzZXQgKyBfUElQRV9CVUZdCiAgICAgICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgICAgIGJ5dGVzX3dyaXR0ZW4gPSBvcy53cml0ZShzZWxmLnN0ZGluLmZpbGVubygpLCBjaHVuaykKICAgICAgICAgICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gZXJybm8uRVBJUEU6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zdGRpbi5jbG9zZSgpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgd3JpdGVfc2V0LnJlbW92ZShzZWxmLnN0ZGluKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX3dyaXRlX3NldC5yZW1vdmUoc2VsZi5zdGRpbikKICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKICAgICAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0X29mZnNldCArPSBieXRlc193cml0dGVuCi0gICAgICAgICAgICAgICAgICAgICAgICBpZiBpbnB1dF9vZmZzZXQgPj0gbGVuKGlucHV0KToKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX2lucHV0X29mZnNldCArPSBieXRlc193cml0dGVuCisgICAgICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLl9pbnB1dF9vZmZzZXQgPj0gbGVuKHNlbGYuX2lucHV0KToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnN0ZGluLmNsb3NlKCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB3cml0ZV9zZXQucmVtb3ZlKHNlbGYuc3RkaW4pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fd3JpdGVfc2V0LnJlbW92ZShzZWxmLnN0ZGluKQogCiAgICAgICAgICAgICAgICAgaWYgc2VsZi5zdGRvdXQgaW4gcmxpc3Q6CiAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBvcy5yZWFkKHNlbGYuc3Rkb3V0LmZpbGVubygpLCAxMDI0KQogICAgICAgICAgICAgICAgICAgICBpZiBub3QgZGF0YToKICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc3Rkb3V0LmNsb3NlKCkKLSAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRfc2V0LnJlbW92ZShzZWxmLnN0ZG91dCkKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX3JlYWRfc2V0LnJlbW92ZShzZWxmLnN0ZG91dCkKICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0LmFwcGVuZChkYXRhKQogCiAgICAgICAgICAgICAgICAgaWYgc2VsZi5zdGRlcnIgaW4gcmxpc3Q6CiAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBvcy5yZWFkKHNlbGYuc3RkZXJyLmZpbGVubygpLCAxMDI0KQogICAgICAgICAgICAgICAgICAgICBpZiBub3QgZGF0YToKICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc3RkZXJyLmNsb3NlKCkKLSAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRfc2V0LnJlbW92ZShzZWxmLnN0ZGVycikKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuX3JlYWRfc2V0LnJlbW92ZShzZWxmLnN0ZGVycikKICAgICAgICAgICAgICAgICAgICAgc3RkZXJyLmFwcGVuZChkYXRhKQogCiAgICAgICAgICAgICByZXR1cm4gKHN0ZG91dCwgc3RkZXJyKQpAQCAtMTU4NCw2OCArMTY0NiwzIEBACiAgICAgICAgICAgICAiIiJLaWxsIHRoZSBwcm9jZXNzIHdpdGggU0lHS0lMTAogICAgICAgICAgICAgIiIiCiAgICAgICAgICAgICBzZWxmLnNlbmRfc2lnbmFsKHNpZ25hbC5TSUdLSUxMKQotCi0KLWRlZiBfZGVtb19wb3NpeCgpOgotICAgICMKLSAgICAjIEV4YW1wbGUgMTogU2ltcGxlIHJlZGlyZWN0aW9uOiBHZXQgcHJvY2VzcyBsaXN0Ci0gICAgIwotICAgIHBsaXN0ID0gUG9wZW4oWyJwcyJdLCBzdGRvdXQ9UElQRSkuY29tbXVuaWNhdGUoKVswXQotICAgIHByaW50KCJQcm9jZXNzIGxpc3Q6IikKLSAgICBwcmludChwbGlzdCkKLQotICAgICMKLSAgICAjIEV4YW1wbGUgMjogQ2hhbmdlIHVpZCBiZWZvcmUgZXhlY3V0aW5nIGNoaWxkCi0gICAgIwotICAgIGlmIG9zLmdldHVpZCgpID09IDA6Ci0gICAgICAgIHAgPSBQb3BlbihbImlkIl0sIHByZWV4ZWNfZm49bGFtYmRhOiBvcy5zZXR1aWQoMTAwKSkKLSAgICAgICAgcC53YWl0KCkKLQotICAgICMKLSAgICAjIEV4YW1wbGUgMzogQ29ubmVjdGluZyBzZXZlcmFsIHN1YnByb2Nlc3NlcwotICAgICMKLSAgICBwcmludCgiTG9va2luZyBmb3IgJ2hkYScuLi4iKQotICAgIHAxID0gUG9wZW4oWyJkbWVzZyJdLCBzdGRvdXQ9UElQRSkKLSAgICBwMiA9IFBvcGVuKFsiZ3JlcCIsICJoZGEiXSwgc3RkaW49cDEuc3Rkb3V0LCBzdGRvdXQ9UElQRSkKLSAgICBwcmludChyZXByKHAyLmNvbW11bmljYXRlKClbMF0pKQotCi0gICAgIwotICAgICMgRXhhbXBsZSA0OiBDYXRjaCBleGVjdXRpb24gZXJyb3IKLSAgICAjCi0gICAgcHJpbnQoKQotICAgIHByaW50KCJUcnlpbmcgYSB3ZWlyZCBmaWxlLi4uIikKLSAgICB0cnk6Ci0gICAgICAgIHByaW50KFBvcGVuKFsiL3RoaXMvcGF0aC9kb2VzL25vdC9leGlzdCJdKS5jb21tdW5pY2F0ZSgpKQotICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6Ci0gICAgICAgIGlmIGUuZXJybm8gPT0gZXJybm8uRU5PRU5UOgotICAgICAgICAgICAgcHJpbnQoIlRoZSBmaWxlIGRpZG4ndCBleGlzdC4gIEkgdGhvdWdodCBzby4uLiIpCi0gICAgICAgICAgICBwcmludCgiQ2hpbGQgdHJhY2ViYWNrOiIpCi0gICAgICAgICAgICBwcmludChlLmNoaWxkX3RyYWNlYmFjaykKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHByaW50KCJFcnJvciIsIGUuZXJybm8pCi0gICAgZWxzZToKLSAgICAgICAgcHJpbnQoIkdvc2guICBObyBlcnJvci4iLCBmaWxlPXN5cy5zdGRlcnIpCi0KLQotZGVmIF9kZW1vX3dpbmRvd3MoKToKLSAgICAjCi0gICAgIyBFeGFtcGxlIDE6IENvbm5lY3Rpbmcgc2V2ZXJhbCBzdWJwcm9jZXNzZXMKLSAgICAjCi0gICAgcHJpbnQoIkxvb2tpbmcgZm9yICdQUk9NUFQnIGluIHNldCBvdXRwdXQuLi4iKQotICAgIHAxID0gUG9wZW4oInNldCIsIHN0ZG91dD1QSVBFLCBzaGVsbD1UcnVlKQotICAgIHAyID0gUG9wZW4oJ2ZpbmQgIlBST01QVCInLCBzdGRpbj1wMS5zdGRvdXQsIHN0ZG91dD1QSVBFKQotICAgIHByaW50KHJlcHIocDIuY29tbXVuaWNhdGUoKVswXSkpCi0KLSAgICAjCi0gICAgIyBFeGFtcGxlIDI6IFNpbXBsZSBleGVjdXRpb24gb2YgcHJvZ3JhbQotICAgICMKLSAgICBwcmludCgiRXhlY3V0aW5nIGNhbGMuLi4iKQotICAgIHAgPSBQb3BlbigiY2FsYyIpCi0gICAgcC53YWl0KCkKLQotCi1pZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgotICAgIGlmIG1zd2luZG93czoKLSAgICAgICAgX2RlbW9fd2luZG93cygpCi0gICAgZWxzZToKLSAgICAgICAgX2RlbW9fcG9zaXgoKQpkaWZmIC0tZ2l0IGEvTGliL3N5c2NvbmZpZy5jZmcgYi9MaWIvc3lzY29uZmlnLmNmZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41NjVjMGViCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3N5c2NvbmZpZy5jZmcKQEAgLTAsMCArMSwxMTEgQEAKK1tnbG9iYWxzXQorIyBUaGVzZSBhcmUgdXNlZnVsIGNhdGVnb3JpZXMgdGhhdCBjYW4gYmUgcmVmZXJlbmNlZCBhdCBydW4gdGltZSwKKyMgdXNpbmcgcGFja2FnaW5nLmRhdGFiYXNlLmdldF9maWxlLgorIyBDb25maWd1cmF0aW9uIGZpbGVzCitjb25maWcgPSB7Y29uZmRpcn0ve2Rpc3RyaWJ1dGlvbi5uYW1lfQorIyBOb24td3JpdGFibGUgZGF0YSB0aGF0IGlzIGluZGVwZW5kZW50IG9mIGFyY2hpdGVjdHVyZSAoaW1hZ2VzLCBtYW55IHhtbC90ZXh0IGZpbGVzKQorYXBwZGF0YSA9IHtkYXRhZGlyfS97ZGlzdHJpYnV0aW9uLm5hbWV9CisjIE5vbi13cml0YWJsZSBkYXRhIHRoYXQgaXMgYXJjaGl0ZWN0dXJlLWRlcGVuZGVudCAoc29tZSBiaW5hcnkgZGF0YSBmb3JtYXRzKQorYXBwZGF0YS5hcmNoID0ge2xpYmRpcn0ve2Rpc3RyaWJ1dGlvbi5uYW1lfQorIyBEYXRhLCB3cml0dGVuIGJ5IHRoZSBhcHAvbGliLCB0aGF0IG11c3QgYmUgcHJlc2VydmVkIChkYXRhYmFzZXMpCithcHBkYXRhLnBlcnNpc3RlbnQgPSB7c3RhdGVkaXJ9L2xpYi97ZGlzdHJpYnV0aW9uLm5hbWV9CisjIERhdGEsIHdyaXR0ZW4gYnkgdGhlIGFwcC9saWIsIHRoYXQgY2FuIGJlIHNhZmVseSBkaXNjYXJkZWQgKGNhY2hlKQorYXBwZGF0YS5kaXNwb3NhYmxlID0ge3N0YXRlZGlyfS9jYWNoZS97ZGlzdHJpYnV0aW9uLm5hbWV9CisjIEhlbHAgb3IgZG9jdW1lbnRhdGlvbiBmaWxlcworaGVscCA9IHtkYXRhZGlyfS97ZGlzdHJpYnV0aW9uLm5hbWV9CitpY29uID0ge2RhdGFkaXJ9L3BpeG1hcHMKK3NjcmlwdHMgPSB7YmFzZX0vYmluCisKKyMgTm9uLXJ1bnRpbWUgZmlsZXMuICBUaGVzZSBhcmUgdmFsaWQgY2F0ZWdvcmllcyBmb3IgbWFya2luZyBmaWxlcyBmb3IKKyMgaW5zdGFsbCwgYnV0IHRoZXkgc2hvdWxkIG5vdCBiZSByZWZlcmVuY2VkIGJ5IHRoZSBhcHAvbGliIGF0IHJ1biB0aW1lLgorIyBIZWxwIG9yIGRvY3VtZW50YXRpb24gZmlsZXMKK2RvYyA9IHtkYXRhZGlyfS9kb2Mve2Rpc3RyaWJ1dGlvbi5uYW1lfQorIyBHTlUgaW5mbyBkb2N1bWVudGF0aW9uIGZpbGVzCitpbmZvID0ge2RhdGFkaXJ9L2luZm8KKyMgbWFuIHBhZ2VzCittYW4gPSB7ZGF0YWRpcn0vbWFuCisKK1twb3NpeF9wcmVmaXhdCisjIENvbmZpZ3VyYXRpb24gZGlyZWN0b3JpZXMuICBTb21lIG9mIHRoZXNlIGNvbWUgc3RyYWlnaHQgb3V0IG9mIHRoZQorIyBjb25maWd1cmUgc2NyaXB0LiAgVGhleSBhcmUgZm9yIGltcGxlbWVudGluZyB0aGUgb3RoZXIgdmFyaWFibGVzLCBub3QgdG8KKyMgYmUgdXNlZCBkaXJlY3RseSBpbiBbcmVzb3VyY2VfbG9jYXRpb25zXS4KK2NvbmZkaXIgPSAvZXRjCitkYXRhZGlyID0gL3Vzci9zaGFyZQorbGliZGlyID0gL3Vzci9saWIKK3N0YXRlZGlyID0gL3ZhcgorIyBVc2VyIHJlc291cmNlIGRpcmVjdG9yeQorbG9jYWwgPSB+Ly5sb2NhbC97ZGlzdHJpYnV0aW9uLm5hbWV9CisKK3N0ZGxpYiA9IHtiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9CitwbGF0c3RkbGliID0ge3BsYXRiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9CitwdXJlbGliID0ge2Jhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0vc2l0ZS1wYWNrYWdlcworcGxhdGxpYiA9IHtwbGF0YmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fS9zaXRlLXBhY2thZ2VzCitpbmNsdWRlID0ge2Jhc2V9L2luY2x1ZGUvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9e2FiaWZsYWdzfQorcGxhdGluY2x1ZGUgPSB7cGxhdGJhc2V9L2luY2x1ZGUvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9e2FiaWZsYWdzfQorZGF0YSA9IHtiYXNlfQorCitbcG9zaXhfaG9tZV0KK3N0ZGxpYiA9IHtiYXNlfS9saWIvcHl0aG9uCitwbGF0c3RkbGliID0ge2Jhc2V9L2xpYi9weXRob24KK3B1cmVsaWIgPSB7YmFzZX0vbGliL3B5dGhvbgorcGxhdGxpYiA9IHtiYXNlfS9saWIvcHl0aG9uCitpbmNsdWRlID0ge2Jhc2V9L2luY2x1ZGUvcHl0aG9uCitwbGF0aW5jbHVkZSA9IHtiYXNlfS9pbmNsdWRlL3B5dGhvbgorc2NyaXB0cyA9IHtiYXNlfS9iaW4KK2RhdGEgPSB7YmFzZX0KKworW250XQorc3RkbGliID0ge2Jhc2V9L0xpYgorcGxhdHN0ZGxpYiA9IHtiYXNlfS9MaWIKK3B1cmVsaWIgPSB7YmFzZX0vTGliL3NpdGUtcGFja2FnZXMKK3BsYXRsaWIgPSB7YmFzZX0vTGliL3NpdGUtcGFja2FnZXMKK2luY2x1ZGUgPSB7YmFzZX0vSW5jbHVkZQorcGxhdGluY2x1ZGUgPSB7YmFzZX0vSW5jbHVkZQorc2NyaXB0cyA9IHtiYXNlfS9TY3JpcHRzCitkYXRhID0ge2Jhc2V9CisKK1tvczJdCitzdGRsaWIgPSB7YmFzZX0vTGliCitwbGF0c3RkbGliID0ge2Jhc2V9L0xpYgorcHVyZWxpYiA9IHtiYXNlfS9MaWIvc2l0ZS1wYWNrYWdlcworcGxhdGxpYiA9IHtiYXNlfS9MaWIvc2l0ZS1wYWNrYWdlcworaW5jbHVkZSA9IHtiYXNlfS9JbmNsdWRlCitwbGF0aW5jbHVkZSA9IHtiYXNlfS9JbmNsdWRlCitzY3JpcHRzID0ge2Jhc2V9L1NjcmlwdHMKK2RhdGEgPSB7YmFzZX0KKworW29zMl9ob21lXQorc3RkbGliID0ge3VzZXJiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9CitwbGF0c3RkbGliID0ge3VzZXJiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9CitwdXJlbGliID0ge3VzZXJiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9L3NpdGUtcGFja2FnZXMKK3BsYXRsaWIgPSB7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0vc2l0ZS1wYWNrYWdlcworaW5jbHVkZSA9IHt1c2VyYmFzZX0vaW5jbHVkZS9weXRob257cHlfdmVyc2lvbl9zaG9ydH0KK3NjcmlwdHMgPSB7dXNlcmJhc2V9L2JpbgorZGF0YSA9IHt1c2VyYmFzZX0KKworW250X3VzZXJdCitzdGRsaWIgPSB7dXNlcmJhc2V9L1B5dGhvbntweV92ZXJzaW9uX25vZG90fQorcGxhdHN0ZGxpYiA9IHt1c2VyYmFzZX0vUHl0aG9ue3B5X3ZlcnNpb25fbm9kb3R9CitwdXJlbGliID0ge3VzZXJiYXNlfS9QeXRob257cHlfdmVyc2lvbl9ub2RvdH0vc2l0ZS1wYWNrYWdlcworcGxhdGxpYiA9IHt1c2VyYmFzZX0vUHl0aG9ue3B5X3ZlcnNpb25fbm9kb3R9L3NpdGUtcGFja2FnZXMKK2luY2x1ZGUgPSB7dXNlcmJhc2V9L1B5dGhvbntweV92ZXJzaW9uX25vZG90fS9JbmNsdWRlCitzY3JpcHRzID0ge3VzZXJiYXNlfS9TY3JpcHRzCitkYXRhID0ge3VzZXJiYXNlfQorCitbcG9zaXhfdXNlcl0KK3N0ZGxpYiA9IHt1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fQorcGxhdHN0ZGxpYiA9IHt1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fQorcHVyZWxpYiA9IHt1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fS9zaXRlLXBhY2thZ2VzCitwbGF0bGliID0ge3VzZXJiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9L3NpdGUtcGFja2FnZXMKK2luY2x1ZGUgPSB7dXNlcmJhc2V9L2luY2x1ZGUvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9CitzY3JpcHRzID0ge3VzZXJiYXNlfS9iaW4KK2RhdGEgPSB7dXNlcmJhc2V9CisKK1tvc3hfZnJhbWV3b3JrX3VzZXJdCitzdGRsaWIgPSB7dXNlcmJhc2V9L2xpYi9weXRob24KK3BsYXRzdGRsaWIgPSB7dXNlcmJhc2V9L2xpYi9weXRob24KK3B1cmVsaWIgPSB7dXNlcmJhc2V9L2xpYi9weXRob24vc2l0ZS1wYWNrYWdlcworcGxhdGxpYiA9IHt1c2VyYmFzZX0vbGliL3B5dGhvbi9zaXRlLXBhY2thZ2VzCitpbmNsdWRlID0ge3VzZXJiYXNlfS9pbmNsdWRlCitzY3JpcHRzID0ge3VzZXJiYXNlfS9iaW4KK2RhdGEgPSB7dXNlcmJhc2V9CmRpZmYgLS1naXQgYS9MaWIvc3lzY29uZmlnLnB5IGIvTGliL3N5c2NvbmZpZy5weQppbmRleCBiMjE4M2Q4Li5lNWMxZTYwIDEwMDY0NAotLS0gYS9MaWIvc3lzY29uZmlnLnB5CisrKyBiL0xpYi9zeXNjb25maWcucHkKQEAgLTEsOSArMSwxMCBAQAotIiIiUHJvdmlkZSBhY2Nlc3MgdG8gUHl0aG9uJ3MgY29uZmlndXJhdGlvbiBpbmZvcm1hdGlvbi4KKyIiIkFjY2VzcyB0byBQeXRob24ncyBjb25maWd1cmF0aW9uIGluZm9ybWF0aW9uLiIiIgogCi0iIiIKLWltcG9ydCBzeXMKIGltcG9ydCBvcworaW1wb3J0IHJlCitpbXBvcnQgc3lzCiBmcm9tIG9zLnBhdGggaW1wb3J0IHBhcmRpciwgcmVhbHBhdGgKK2Zyb20gY29uZmlncGFyc2VyIGltcG9ydCBSYXdDb25maWdQYXJzZXIKIAogX19hbGxfXyA9IFsKICAgICAnZ2V0X2NvbmZpZ19oX2ZpbGVuYW1lJywKQEAgLTE3LDkxICsxOCw1MSBAQAogICAgICdnZXRfcHl0aG9uX3ZlcnNpb24nLAogICAgICdnZXRfc2NoZW1lX25hbWVzJywKICAgICAncGFyc2VfY29uZmlnX2gnLAotICAgIF0KK10KIAotX0lOU1RBTExfU0NIRU1FUyA9IHsKLSAgICAncG9zaXhfcHJlZml4JzogewotICAgICAgICAnc3RkbGliJzogJ3tiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9JywKLSAgICAgICAgJ3BsYXRzdGRsaWInOiAne3BsYXRiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9JywKLSAgICAgICAgJ3B1cmVsaWInOiAne2Jhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0vc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdwbGF0bGliJzogJ3twbGF0YmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fS9zaXRlLXBhY2thZ2VzJywKLSAgICAgICAgJ2luY2x1ZGUnOgotICAgICAgICAgICAgJ3tiYXNlfS9pbmNsdWRlL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fXthYmlmbGFnc30nLAotICAgICAgICAncGxhdGluY2x1ZGUnOgotICAgICAgICAgICAgJ3twbGF0YmFzZX0vaW5jbHVkZS9weXRob257cHlfdmVyc2lvbl9zaG9ydH17YWJpZmxhZ3N9JywKLSAgICAgICAgJ3NjcmlwdHMnOiAne2Jhc2V9L2JpbicsCi0gICAgICAgICdkYXRhJzogJ3tiYXNlfScsCi0gICAgICAgIH0sCi0gICAgJ3Bvc2l4X2hvbWUnOiB7Ci0gICAgICAgICdzdGRsaWInOiAne2Jhc2V9L2xpYi9weXRob24nLAotICAgICAgICAncGxhdHN0ZGxpYic6ICd7YmFzZX0vbGliL3B5dGhvbicsCi0gICAgICAgICdwdXJlbGliJzogJ3tiYXNlfS9saWIvcHl0aG9uJywKLSAgICAgICAgJ3BsYXRsaWInOiAne2Jhc2V9L2xpYi9weXRob24nLAotICAgICAgICAnaW5jbHVkZSc6ICd7YmFzZX0vaW5jbHVkZS9weXRob24nLAotICAgICAgICAncGxhdGluY2x1ZGUnOiAne2Jhc2V9L2luY2x1ZGUvcHl0aG9uJywKLSAgICAgICAgJ3NjcmlwdHMnOiAne2Jhc2V9L2JpbicsCi0gICAgICAgICdkYXRhJyAgIDogJ3tiYXNlfScsCi0gICAgICAgIH0sCi0gICAgJ250JzogewotICAgICAgICAnc3RkbGliJzogJ3tiYXNlfS9MaWInLAotICAgICAgICAncGxhdHN0ZGxpYic6ICd7YmFzZX0vTGliJywKLSAgICAgICAgJ3B1cmVsaWInOiAne2Jhc2V9L0xpYi9zaXRlLXBhY2thZ2VzJywKLSAgICAgICAgJ3BsYXRsaWInOiAne2Jhc2V9L0xpYi9zaXRlLXBhY2thZ2VzJywKLSAgICAgICAgJ2luY2x1ZGUnOiAne2Jhc2V9L0luY2x1ZGUnLAotICAgICAgICAncGxhdGluY2x1ZGUnOiAne2Jhc2V9L0luY2x1ZGUnLAotICAgICAgICAnc2NyaXB0cyc6ICd7YmFzZX0vU2NyaXB0cycsCi0gICAgICAgICdkYXRhJyAgIDogJ3tiYXNlfScsCi0gICAgICAgIH0sCi0gICAgJ29zMic6IHsKLSAgICAgICAgJ3N0ZGxpYic6ICd7YmFzZX0vTGliJywKLSAgICAgICAgJ3BsYXRzdGRsaWInOiAne2Jhc2V9L0xpYicsCi0gICAgICAgICdwdXJlbGliJzogJ3tiYXNlfS9MaWIvc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdwbGF0bGliJzogJ3tiYXNlfS9MaWIvc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdpbmNsdWRlJzogJ3tiYXNlfS9JbmNsdWRlJywKLSAgICAgICAgJ3BsYXRpbmNsdWRlJzogJ3tiYXNlfS9JbmNsdWRlJywKLSAgICAgICAgJ3NjcmlwdHMnOiAne2Jhc2V9L1NjcmlwdHMnLAotICAgICAgICAnZGF0YScgICA6ICd7YmFzZX0nLAotICAgICAgICB9LAotICAgICdvczJfaG9tZSc6IHsKLSAgICAgICAgJ3N0ZGxpYic6ICd7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0nLAotICAgICAgICAncGxhdHN0ZGxpYic6ICd7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0nLAotICAgICAgICAncHVyZWxpYic6ICd7dXNlcmJhc2V9L2xpYi9weXRob257cHlfdmVyc2lvbl9zaG9ydH0vc2l0ZS1wYWNrYWdlcycsCi0gICAgICAgICdwbGF0bGliJzogJ3t1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fS9zaXRlLXBhY2thZ2VzJywKLSAgICAgICAgJ2luY2x1ZGUnOiAne3VzZXJiYXNlfS9pbmNsdWRlL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fScsCi0gICAgICAgICdzY3JpcHRzJzogJ3t1c2VyYmFzZX0vYmluJywKLSAgICAgICAgJ2RhdGEnICAgOiAne3VzZXJiYXNlfScsCi0gICAgICAgIH0sCi0gICAgJ250X3VzZXInOiB7Ci0gICAgICAgICdzdGRsaWInOiAne3VzZXJiYXNlfS9QeXRob257cHlfdmVyc2lvbl9ub2RvdH0nLAotICAgICAgICAncGxhdHN0ZGxpYic6ICd7dXNlcmJhc2V9L1B5dGhvbntweV92ZXJzaW9uX25vZG90fScsCi0gICAgICAgICdwdXJlbGliJzogJ3t1c2VyYmFzZX0vUHl0aG9ue3B5X3ZlcnNpb25fbm9kb3R9L3NpdGUtcGFja2FnZXMnLAotICAgICAgICAncGxhdGxpYic6ICd7dXNlcmJhc2V9L1B5dGhvbntweV92ZXJzaW9uX25vZG90fS9zaXRlLXBhY2thZ2VzJywKLSAgICAgICAgJ2luY2x1ZGUnOiAne3VzZXJiYXNlfS9QeXRob257cHlfdmVyc2lvbl9ub2RvdH0vSW5jbHVkZScsCi0gICAgICAgICdzY3JpcHRzJzogJ3t1c2VyYmFzZX0vU2NyaXB0cycsCi0gICAgICAgICdkYXRhJyAgIDogJ3t1c2VyYmFzZX0nLAotICAgICAgICB9LAotICAgICdwb3NpeF91c2VyJzogewotICAgICAgICAnc3RkbGliJzogJ3t1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fScsCi0gICAgICAgICdwbGF0c3RkbGliJzogJ3t1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fScsCi0gICAgICAgICdwdXJlbGliJzogJ3t1c2VyYmFzZX0vbGliL3B5dGhvbntweV92ZXJzaW9uX3Nob3J0fS9zaXRlLXBhY2thZ2VzJywKLSAgICAgICAgJ3BsYXRsaWInOiAne3VzZXJiYXNlfS9saWIvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9L3NpdGUtcGFja2FnZXMnLAotICAgICAgICAnaW5jbHVkZSc6ICd7dXNlcmJhc2V9L2luY2x1ZGUvcHl0aG9ue3B5X3ZlcnNpb25fc2hvcnR9JywKLSAgICAgICAgJ3NjcmlwdHMnOiAne3VzZXJiYXNlfS9iaW4nLAotICAgICAgICAnZGF0YScgICA6ICd7dXNlcmJhc2V9JywKLSAgICAgICAgfSwKLSAgICAnb3N4X2ZyYW1ld29ya191c2VyJzogewotICAgICAgICAnc3RkbGliJzogJ3t1c2VyYmFzZX0vbGliL3B5dGhvbicsCi0gICAgICAgICdwbGF0c3RkbGliJzogJ3t1c2VyYmFzZX0vbGliL3B5dGhvbicsCi0gICAgICAgICdwdXJlbGliJzogJ3t1c2VyYmFzZX0vbGliL3B5dGhvbi9zaXRlLXBhY2thZ2VzJywKLSAgICAgICAgJ3BsYXRsaWInOiAne3VzZXJiYXNlfS9saWIvcHl0aG9uL3NpdGUtcGFja2FnZXMnLAotICAgICAgICAnaW5jbHVkZSc6ICd7dXNlcmJhc2V9L2luY2x1ZGUnLAotICAgICAgICAnc2NyaXB0cyc6ICd7dXNlcmJhc2V9L2JpbicsCi0gICAgICAgICdkYXRhJyAgIDogJ3t1c2VyYmFzZX0nLAotICAgICAgICB9LAotICAgIH0KKyMgbGV0J3MgcmVhZCB0aGUgY29uZmlndXJhdGlvbiBmaWxlCisjIFhYWCBfQ09ORklHX0RJUiB3aWxsIGJlIHNldCBieSB0aGUgTWFrZWZpbGUgbGF0ZXIKK19DT05GSUdfRElSID0gb3MucGF0aC5ub3JtcGF0aChvcy5wYXRoLmRpcm5hbWUoX19maWxlX18pKQorX0NPTkZJR19GSUxFID0gb3MucGF0aC5qb2luKF9DT05GSUdfRElSLCAnc3lzY29uZmlnLmNmZycpCitfU0NIRU1FUyA9IFJhd0NvbmZpZ1BhcnNlcihkaWN0X3R5cGU9ZGljdCkgICAjIEZhc3RlciB0aGFuIE9yZGVyZWREaWN0CitfU0NIRU1FUy5yZWFkKF9DT05GSUdfRklMRSkKK19WQVJfUkVQTCA9IHJlLmNvbXBpbGUocidceyhbXntdKj8pXH0nKQogCi1fU0NIRU1FX0tFWVMgPSAoJ3N0ZGxpYicsICdwbGF0c3RkbGliJywgJ3B1cmVsaWInLCAncGxhdGxpYicsICdpbmNsdWRlJywKLSAgICAgICAgICAgICAgICAnc2NyaXB0cycsICdkYXRhJykKKworZGVmIF9leHBhbmRfZ2xvYmFscyhjb25maWcpOgorICAgIGlmIGNvbmZpZy5oYXNfc2VjdGlvbignZ2xvYmFscycpOgorICAgICAgICBnbG9iYWxzID0gY29uZmlnLml0ZW1zKCdnbG9iYWxzJykKKyAgICBlbHNlOgorICAgICAgICBnbG9iYWxzID0gdHVwbGUoKQorCisgICAgc2VjdGlvbnMgPSBjb25maWcuc2VjdGlvbnMoKQorICAgIGZvciBzZWN0aW9uIGluIHNlY3Rpb25zOgorICAgICAgICBpZiBzZWN0aW9uID09ICdnbG9iYWxzJzoKKyAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgIGZvciBvcHRpb24sIHZhbHVlIGluIGdsb2JhbHM6CisgICAgICAgICAgICBpZiBjb25maWcuaGFzX29wdGlvbihzZWN0aW9uLCBvcHRpb24pOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBjb25maWcuc2V0KHNlY3Rpb24sIG9wdGlvbiwgdmFsdWUpCisgICAgY29uZmlnLnJlbW92ZV9zZWN0aW9uKCdnbG9iYWxzJykKKworICAgICMgbm93IGV4cGFuZGluZyBsb2NhbCB2YXJpYWJsZXMgZGVmaW5lZCBpbiB0aGUgY2ZnIGZpbGUKKyAgICAjCisgICAgZm9yIHNlY3Rpb24gaW4gY29uZmlnLnNlY3Rpb25zKCk6CisgICAgICAgIHZhcmlhYmxlcyA9IGRpY3QoY29uZmlnLml0ZW1zKHNlY3Rpb24pKQorCisgICAgICAgIGRlZiBfcmVwbGFjZXIobWF0Y2hvYmopOgorICAgICAgICAgICAgbmFtZSA9IG1hdGNob2JqLmdyb3VwKDEpCisgICAgICAgICAgICBpZiBuYW1lIGluIHZhcmlhYmxlczoKKyAgICAgICAgICAgICAgICByZXR1cm4gdmFyaWFibGVzW25hbWVdCisgICAgICAgICAgICByZXR1cm4gbWF0Y2hvYmouZ3JvdXAoMCkKKworICAgICAgICBmb3Igb3B0aW9uLCB2YWx1ZSBpbiBjb25maWcuaXRlbXMoc2VjdGlvbik6CisgICAgICAgICAgICBjb25maWcuc2V0KHNlY3Rpb24sIG9wdGlvbiwgX1ZBUl9SRVBMLnN1YihfcmVwbGFjZXIsIHZhbHVlKSkKKworX2V4cGFuZF9nbG9iYWxzKF9TQ0hFTUVTKQorCisgIyBGSVhNRSBkb24ndCByZWx5IG9uIHN5cy52ZXJzaW9uIGhlcmUsIGl0cyBmb3JtYXQgaXMgYW4gaW1wbGVtZW50YXRpbiBkZXRhaWwKKyAjIG9mIENQeXRob24sIHVzZSBzeXMudmVyc2lvbl9pbmZvIG9yIHN5cy5oZXh2ZXJzaW9uCiBfUFlfVkVSU0lPTiA9IHN5cy52ZXJzaW9uLnNwbGl0KClbMF0KIF9QWV9WRVJTSU9OX1NIT1JUID0gc3lzLnZlcnNpb25bOjNdCiBfUFlfVkVSU0lPTl9TSE9SVF9OT19ET1QgPSBfUFlfVkVSU0lPTlswXSArIF9QWV9WRVJTSU9OWzJdCkBAIC0xMTAsNiArNzEsNyBAQAogX0NPTkZJR19WQVJTID0gTm9uZQogX1VTRVJfQkFTRSA9IE5vbmUKIAorCiBkZWYgX3NhZmVfcmVhbHBhdGgocGF0aCk6CiAgICAgdHJ5OgogICAgICAgICByZXR1cm4gcmVhbHBhdGgocGF0aCkKQEAgLTEzMiw2ICs5NCw3IEBACiBpZiBvcy5uYW1lID09ICJudCIgYW5kICJcXHBjYnVpbGRcXGFtZDY0IiBpbiBfUFJPSkVDVF9CQVNFWy0xNDpdLmxvd2VyKCk6CiAgICAgX1BST0pFQ1RfQkFTRSA9IF9zYWZlX3JlYWxwYXRoKG9zLnBhdGguam9pbihfUFJPSkVDVF9CQVNFLCBwYXJkaXIsIHBhcmRpcikpCiAKKwogZGVmIGlzX3B5dGhvbl9idWlsZCgpOgogICAgIGZvciBmbiBpbiAoIlNldHVwLmRpc3QiLCAiU2V0dXAubG9jYWwiKToKICAgICAgICAgaWYgb3MucGF0aC5pc2ZpbGUob3MucGF0aC5qb2luKF9QUk9KRUNUX0JBU0UsICJNb2R1bGVzIiwgZm4pKToKQEAgLTE0MiwxNyArMTA1LDI1IEBACiAKIGlmIF9QWVRIT05fQlVJTEQ6CiAgICAgZm9yIHNjaGVtZSBpbiAoJ3Bvc2l4X3ByZWZpeCcsICdwb3NpeF9ob21lJyk6Ci0gICAgICAgIF9JTlNUQUxMX1NDSEVNRVNbc2NoZW1lXVsnaW5jbHVkZSddID0gJ3tzcmNkaXJ9L0luY2x1ZGUnCi0gICAgICAgIF9JTlNUQUxMX1NDSEVNRVNbc2NoZW1lXVsncGxhdGluY2x1ZGUnXSA9ICd7cHJvamVjdGJhc2V9Ly4nCisgICAgICAgIF9TQ0hFTUVTLnNldChzY2hlbWUsICdpbmNsdWRlJywgJ3tzcmNkaXJ9L0luY2x1ZGUnKQorICAgICAgICBfU0NIRU1FUy5zZXQoc2NoZW1lLCAncGxhdGluY2x1ZGUnLCAne3Byb2plY3RiYXNlfS8uJykKIAotZGVmIF9zdWJzdF92YXJzKHMsIGxvY2FsX3ZhcnMpOgotICAgIHRyeToKLSAgICAgICAgcmV0dXJuIHMuZm9ybWF0KCoqbG9jYWxfdmFycykKLSAgICBleGNlcHQgS2V5RXJyb3I6Ci0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHJldHVybiBzLmZvcm1hdCgqKm9zLmVudmlyb24pCi0gICAgICAgIGV4Y2VwdCBLZXlFcnJvciBhcyB2YXI6Ci0gICAgICAgICAgICByYWlzZSBBdHRyaWJ1dGVFcnJvcigneyVzfScgJSB2YXIpCisKK2RlZiBfc3Vic3RfdmFycyhwYXRoLCBsb2NhbF92YXJzKToKKyAgICAiIiJJbiB0aGUgc3RyaW5nIGBwYXRoYCwgcmVwbGFjZSB0b2tlbnMgbGlrZSB7c29tZS50aGluZ30gd2l0aCB0aGUKKyAgICBjb3JyZXNwb25kaW5nIHZhbHVlIGZyb20gdGhlIG1hcCBgbG9jYWxfdmFyc2AuCisKKyAgICBJZiB0aGVyZSBpcyBubyBjb3JyZXNwb25kaW5nIHZhbHVlLCBsZWF2ZSB0aGUgdG9rZW4gdW5jaGFuZ2VkLgorICAgICIiIgorICAgIGRlZiBfcmVwbGFjZXIobWF0Y2hvYmopOgorICAgICAgICBuYW1lID0gbWF0Y2hvYmouZ3JvdXAoMSkKKyAgICAgICAgaWYgbmFtZSBpbiBsb2NhbF92YXJzOgorICAgICAgICAgICAgcmV0dXJuIGxvY2FsX3ZhcnNbbmFtZV0KKyAgICAgICAgZWxpZiBuYW1lIGluIG9zLmVudmlyb246CisgICAgICAgICAgICByZXR1cm4gb3MuZW52aXJvbltuYW1lXQorICAgICAgICByZXR1cm4gbWF0Y2hvYmouZ3JvdXAoMCkKKyAgICByZXR1cm4gX1ZBUl9SRVBMLnN1YihfcmVwbGFjZXIsIHBhdGgpCisKIAogZGVmIF9leHRlbmRfZGljdCh0YXJnZXRfZGljdCwgb3RoZXJfZGljdCk6CiAgICAgdGFyZ2V0X2tleXMgPSB0YXJnZXRfZGljdC5rZXlzKCkKQEAgLTE2MSw0MSArMTMyLDYzIEBACiAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICB0YXJnZXRfZGljdFtrZXldID0gdmFsdWUKIAorCiBkZWYgX2V4cGFuZF92YXJzKHNjaGVtZSwgdmFycyk6CiAgICAgcmVzID0ge30KICAgICBpZiB2YXJzIGlzIE5vbmU6CiAgICAgICAgIHZhcnMgPSB7fQogICAgIF9leHRlbmRfZGljdCh2YXJzLCBnZXRfY29uZmlnX3ZhcnMoKSkKIAotICAgIGZvciBrZXksIHZhbHVlIGluIF9JTlNUQUxMX1NDSEVNRVNbc2NoZW1lXS5pdGVtcygpOgorICAgIGZvciBrZXksIHZhbHVlIGluIF9TQ0hFTUVTLml0ZW1zKHNjaGVtZSk6CiAgICAgICAgIGlmIG9zLm5hbWUgaW4gKCdwb3NpeCcsICdudCcpOgogICAgICAgICAgICAgdmFsdWUgPSBvcy5wYXRoLmV4cGFuZHVzZXIodmFsdWUpCiAgICAgICAgIHJlc1trZXldID0gb3MucGF0aC5ub3JtcGF0aChfc3Vic3RfdmFycyh2YWx1ZSwgdmFycykpCiAgICAgcmV0dXJuIHJlcwogCisKK2RlZiBmb3JtYXRfdmFsdWUodmFsdWUsIHZhcnMpOgorICAgIGRlZiBfcmVwbGFjZXIobWF0Y2hvYmopOgorICAgICAgICBuYW1lID0gbWF0Y2hvYmouZ3JvdXAoMSkKKyAgICAgICAgaWYgbmFtZSBpbiB2YXJzOgorICAgICAgICAgICAgcmV0dXJuIHZhcnNbbmFtZV0KKyAgICAgICAgcmV0dXJuIG1hdGNob2JqLmdyb3VwKDApCisgICAgcmV0dXJuIF9WQVJfUkVQTC5zdWIoX3JlcGxhY2VyLCB2YWx1ZSkKKworCiBkZWYgX2dldF9kZWZhdWx0X3NjaGVtZSgpOgogICAgIGlmIG9zLm5hbWUgPT0gJ3Bvc2l4JzoKICAgICAgICAgIyB0aGUgZGVmYXVsdCBzY2hlbWUgZm9yIHBvc2l4IGlzIHBvc2l4X3ByZWZpeAogICAgICAgICByZXR1cm4gJ3Bvc2l4X3ByZWZpeCcKICAgICByZXR1cm4gb3MubmFtZQogCisKIGRlZiBfZ2V0dXNlcmJhc2UoKToKICAgICBlbnZfYmFzZSA9IG9zLmVudmlyb24uZ2V0KCJQWVRIT05VU0VSQkFTRSIsIE5vbmUpCisKICAgICBkZWYgam9pbnVzZXIoKmFyZ3MpOgogICAgICAgICByZXR1cm4gb3MucGF0aC5leHBhbmR1c2VyKG9zLnBhdGguam9pbigqYXJncykpCiAKICAgICAjIHdoYXQgYWJvdXQgJ29zMmVteCcsICdyaXNjb3MnID8KICAgICBpZiBvcy5uYW1lID09ICJudCI6CiAgICAgICAgIGJhc2UgPSBvcy5lbnZpcm9uLmdldCgiQVBQREFUQSIpIG9yICJ+IgotICAgICAgICByZXR1cm4gZW52X2Jhc2UgaWYgZW52X2Jhc2UgZWxzZSBqb2ludXNlcihiYXNlLCAiUHl0aG9uIikKKyAgICAgICAgaWYgZW52X2Jhc2U6CisgICAgICAgICAgICByZXR1cm4gZW52X2Jhc2UKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiBqb2ludXNlcihiYXNlLCAiUHl0aG9uIikKIAogICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAiZGFyd2luIjoKICAgICAgICAgZnJhbWV3b3JrID0gZ2V0X2NvbmZpZ192YXIoIlBZVEhPTkZSQU1FV09SSyIpCiAgICAgICAgIGlmIGZyYW1ld29yazoKLSAgICAgICAgICAgIHJldHVybiBlbnZfYmFzZSBpZiBlbnZfYmFzZSBlbHNlIGpvaW51c2VyKCJ+IiwgIkxpYnJhcnkiLCBmcmFtZXdvcmssICIlZC4lZCIlKAotICAgICAgICAgICAgICAgIHN5cy52ZXJzaW9uX2luZm9bOjJdKSkKKyAgICAgICAgICAgIGlmIGVudl9iYXNlOgorICAgICAgICAgICAgICAgIHJldHVybiBlbnZfYmFzZQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByZXR1cm4gam9pbnVzZXIoIn4iLCAiTGlicmFyeSIsIGZyYW1ld29yaywgIiVkLiVkIiAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5cy52ZXJzaW9uX2luZm9bOjJdKQogCi0gICAgcmV0dXJuIGVudl9iYXNlIGlmIGVudl9iYXNlIGVsc2Ugam9pbnVzZXIoIn4iLCAiLmxvY2FsIikKKyAgICBpZiBlbnZfYmFzZToKKyAgICAgICAgcmV0dXJuIGVudl9iYXNlCisgICAgZWxzZToKKyAgICAgICAgcmV0dXJuIGpvaW51c2VyKCJ+IiwgIi5sb2NhbCIpCiAKIAogZGVmIF9wYXJzZV9tYWtlZmlsZShmaWxlbmFtZSwgdmFycz1Ob25lKToKQEAgLTIwNSw3ICsxOTgsNiBAQAogICAgIG9wdGlvbmFsIGRpY3Rpb25hcnkgaXMgcGFzc2VkIGluIGFzIHRoZSBzZWNvbmQgYXJndW1lbnQsIGl0IGlzCiAgICAgdXNlZCBpbnN0ZWFkIG9mIGEgbmV3IGRpY3Rpb25hcnkuCiAgICAgIiIiCi0gICAgaW1wb3J0IHJlCiAgICAgIyBSZWdleGVzIG5lZWRlZCBmb3IgcGFyc2luZyBNYWtlZmlsZSAoYW5kIHNpbWlsYXIgc3ludGF4ZXMsCiAgICAgIyBsaWtlIG9sZC1zdHlsZSBTZXR1cCBmaWxlcykuCiAgICAgX3ZhcmlhYmxlX3J4ID0gcmUuY29tcGlsZSgiKFthLXpBLVpdW2EtekEtWjAtOV9dKylccyo9XHMqKC4qKSIpCkBAIC0yNjcsNyArMjU5LDggQEAKICAgICAgICAgICAgICAgICAgICAgaXRlbSA9IG9zLmVudmlyb25bbl0KIAogICAgICAgICAgICAgICAgIGVsaWYgbiBpbiByZW5hbWVkX3ZhcmlhYmxlczoKLSAgICAgICAgICAgICAgICAgICAgaWYgbmFtZS5zdGFydHN3aXRoKCdQWV8nKSBhbmQgbmFtZVszOl0gaW4gcmVuYW1lZF92YXJpYWJsZXM6CisgICAgICAgICAgICAgICAgICAgIGlmIChuYW1lLnN0YXJ0c3dpdGgoJ1BZXycpIGFuZAorICAgICAgICAgICAgICAgICAgICAgICAgbmFtZVszOl0gaW4gcmVuYW1lZF92YXJpYWJsZXMpOgogICAgICAgICAgICAgICAgICAgICAgICAgaXRlbSA9ICIiCiAKICAgICAgICAgICAgICAgICAgICAgZWxpZiAnUFlfJyArIG4gaW4gbm90ZG9uZToKQEAgLTMwMCw3ICsyOTMsNiBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIG5hbWUgbm90IGluIGRvbmU6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvbmVbbmFtZV0gPSB2YWx1ZQogCi0KICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgIyBib2d1cyB2YXJpYWJsZSByZWZlcmVuY2UgKGUuZy4gInByZWZpeD0kL29wdC9weXRob24iKTsKICAgICAgICAgICAgICAgICAjIGp1c3QgZHJvcCBpdCBzaW5jZSB3ZSBjYW4ndCBkZWFsCkBAIC0zMjEsMTMgKzMxMywxNiBAQAogICAgICIiIlJldHVybiB0aGUgcGF0aCBvZiB0aGUgTWFrZWZpbGUuIiIiCiAgICAgaWYgX1BZVEhPTl9CVUlMRDoKICAgICAgICAgcmV0dXJuIG9zLnBhdGguam9pbihfUFJPSkVDVF9CQVNFLCAiTWFrZWZpbGUiKQotICAgIHJldHVybiBvcy5wYXRoLmpvaW4oZ2V0X3BhdGgoJ3N0ZGxpYicpLAotICAgICAgICAgICAgICAgICAgICAgICAgJ2NvbmZpZy17fXt9Jy5mb3JtYXQoX1BZX1ZFUlNJT05fU0hPUlQsIHN5cy5hYmlmbGFncyksCi0gICAgICAgICAgICAgICAgICAgICAgICAnTWFrZWZpbGUnKQorICAgIGlmIGhhc2F0dHIoc3lzLCAnYWJpZmxhZ3MnKToKKyAgICAgICAgY29uZmlnX2Rpcl9uYW1lID0gJ2NvbmZpZy0lcyVzJyAlIChfUFlfVkVSU0lPTl9TSE9SVCwgc3lzLmFiaWZsYWdzKQorICAgIGVsc2U6CisgICAgICAgIGNvbmZpZ19kaXJfbmFtZSA9ICdjb25maWcnCisgICAgcmV0dXJuIG9zLnBhdGguam9pbihnZXRfcGF0aCgnc3RkbGliJyksIGNvbmZpZ19kaXJfbmFtZSwgJ01ha2VmaWxlJykKIAotCi1kZWYgX2luaXRfcG9zaXgodmFycyk6Ci0gICAgIiIiSW5pdGlhbGl6ZSB0aGUgbW9kdWxlIGFzIGFwcHJvcHJpYXRlIGZvciBQT1NJWCBzeXN0ZW1zLiIiIgorZGVmIF9nZW5lcmF0ZV9wb3NpeF92YXJzKCk6CisgICAgIiIiR2VuZXJhdGUgdGhlIFB5dGhvbiBtb2R1bGUgY29udGFpbmluZyBidWlsZC10aW1lIHZhcmlhYmxlcy4iIiIKKyAgICBpbXBvcnQgcHByaW50CisgICAgdmFycyA9IHt9CiAgICAgIyBsb2FkIHRoZSBpbnN0YWxsZWQgTWFrZWZpbGU6CiAgICAgbWFrZWZpbGUgPSBnZXRfbWFrZWZpbGVfZmlsZW5hbWUoKQogICAgIHRyeToKQEAgLTM1Myw2ICszNDgsMTkgQEAKICAgICBpZiBfUFlUSE9OX0JVSUxEOgogICAgICAgICB2YXJzWydMRFNIQVJFRCddID0gdmFyc1snQkxEU0hBUkVEJ10KIAorICAgIGRlc3RmaWxlID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICdfc3lzY29uZmlnZGF0YS5weScpCisgICAgd2l0aCBvcGVuKGRlc3RmaWxlLCAndycsIGVuY29kaW5nPSd1dGY4JykgYXMgZjoKKyAgICAgICAgZi53cml0ZSgnIyBzeXN0ZW0gY29uZmlndXJhdGlvbiBnZW5lcmF0ZWQgYW5kIHVzZWQgYnknCisgICAgICAgICAgICAgICAgJyB0aGUgc3lzY29uZmlnIG1vZHVsZVxuJykKKyAgICAgICAgZi53cml0ZSgnYnVpbGRfdGltZV92YXJzID0gJykKKyAgICAgICAgcHByaW50LnBwcmludCh2YXJzLCBzdHJlYW09ZikKKworZGVmIF9pbml0X3Bvc2l4KHZhcnMpOgorICAgICIiIkluaXRpYWxpemUgdGhlIG1vZHVsZSBhcyBhcHByb3ByaWF0ZSBmb3IgUE9TSVggc3lzdGVtcy4iIiIKKyAgICAjIF9zeXNjb25maWdkYXRhIGlzIGdlbmVyYXRlZCBhdCBidWlsZCB0aW1lLCBzZWUgX2dlbmVyYXRlX3Bvc2l4X3ZhcnMoKQorICAgIGZyb20gX3N5c2NvbmZpZ2RhdGEgaW1wb3J0IGJ1aWxkX3RpbWVfdmFycworICAgIHZhcnMudXBkYXRlKGJ1aWxkX3RpbWVfdmFycykKKwogZGVmIF9pbml0X25vbl9wb3NpeCh2YXJzKToKICAgICAiIiJJbml0aWFsaXplIHRoZSBtb2R1bGUgYXMgYXBwcm9wcmlhdGUgZm9yIE5UIiIiCiAgICAgIyBzZXQgYmFzaWMgaW5zdGFsbCBkaXJlY3RvcmllcwpAQCAtMzc2LDcgKzM4NCw2IEBACiAgICAgb3B0aW9uYWwgZGljdGlvbmFyeSBpcyBwYXNzZWQgaW4gYXMgdGhlIHNlY29uZCBhcmd1bWVudCwgaXQgaXMKICAgICB1c2VkIGluc3RlYWQgb2YgYSBuZXcgZGljdGlvbmFyeS4KICAgICAiIiIKLSAgICBpbXBvcnQgcmUKICAgICBpZiB2YXJzIGlzIE5vbmU6CiAgICAgICAgIHZhcnMgPSB7fQogICAgIGRlZmluZV9yeCA9IHJlLmNvbXBpbGUoIiNkZWZpbmUgKFtBLVpdW0EtWmEtejAtOV9dKykgKC4qKVxuIikKQEAgLTM4OSw4ICszOTYsMTAgQEAKICAgICAgICAgbSA9IGRlZmluZV9yeC5tYXRjaChsaW5lKQogICAgICAgICBpZiBtOgogICAgICAgICAgICAgbiwgdiA9IG0uZ3JvdXAoMSwgMikKLSAgICAgICAgICAgIHRyeTogdiA9IGludCh2KQotICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6IHBhc3MKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB2ID0gaW50KHYpCisgICAgICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCiAgICAgICAgICAgICB2YXJzW25dID0gdgogICAgICAgICBlbHNlOgogICAgICAgICAgICAgbSA9IHVuZGVmX3J4Lm1hdGNoKGxpbmUpCkBAIC0zOTgsNiArNDA3LDcgQEAKICAgICAgICAgICAgICAgICB2YXJzW20uZ3JvdXAoMSldID0gMAogICAgIHJldHVybiB2YXJzCiAKKwogZGVmIGdldF9jb25maWdfaF9maWxlbmFtZSgpOgogICAgICIiIlJldHVybiB0aGUgcGF0aCBvZiBweWNvbmZpZy5oLiIiIgogICAgIGlmIF9QWVRIT05fQlVJTEQ6CkBAIC00MDksMTUgKzQxOSwxNyBAQAogICAgICAgICBpbmNfZGlyID0gZ2V0X3BhdGgoJ3BsYXRpbmNsdWRlJykKICAgICByZXR1cm4gb3MucGF0aC5qb2luKGluY19kaXIsICdweWNvbmZpZy5oJykKIAorCiBkZWYgZ2V0X3NjaGVtZV9uYW1lcygpOgogICAgICIiIlJldHVybiBhIHR1cGxlIGNvbnRhaW5pbmcgdGhlIHNjaGVtZXMgbmFtZXMuIiIiCi0gICAgc2NoZW1lcyA9IGxpc3QoX0lOU1RBTExfU0NIRU1FUy5rZXlzKCkpCi0gICAgc2NoZW1lcy5zb3J0KCkKLSAgICByZXR1cm4gdHVwbGUoc2NoZW1lcykKKyAgICByZXR1cm4gdHVwbGUoc29ydGVkKF9TQ0hFTUVTLnNlY3Rpb25zKCkpKQorCiAKIGRlZiBnZXRfcGF0aF9uYW1lcygpOgogICAgICIiIlJldHVybiBhIHR1cGxlIGNvbnRhaW5pbmcgdGhlIHBhdGhzIG5hbWVzLiIiIgotICAgIHJldHVybiBfU0NIRU1FX0tFWVMKKyAgICAjIHh4eCBzZWUgaWYgd2Ugd2FudCBhIHN0YXRpYyBsaXN0CisgICAgcmV0dXJuIF9TQ0hFTUVTLm9wdGlvbnMoJ3Bvc2l4X3ByZWZpeCcpCisKIAogZGVmIGdldF9wYXRocyhzY2hlbWU9X2dldF9kZWZhdWx0X3NjaGVtZSgpLCB2YXJzPU5vbmUsIGV4cGFuZD1UcnVlKToKICAgICAiIiJSZXR1cm4gYSBtYXBwaW5nIGNvbnRhaW5pbmcgYW4gaW5zdGFsbCBzY2hlbWUuCkBAIC00MjgsNyArNDQwLDggQEAKICAgICBpZiBleHBhbmQ6CiAgICAgICAgIHJldHVybiBfZXhwYW5kX3ZhcnMoc2NoZW1lLCB2YXJzKQogICAgIGVsc2U6Ci0gICAgICAgIHJldHVybiBfSU5TVEFMTF9TQ0hFTUVTW3NjaGVtZV0KKyAgICAgICAgcmV0dXJuIGRpY3QoX1NDSEVNRVMuaXRlbXMoc2NoZW1lKSkKKwogCiBkZWYgZ2V0X3BhdGgobmFtZSwgc2NoZW1lPV9nZXRfZGVmYXVsdF9zY2hlbWUoKSwgdmFycz1Ob25lLCBleHBhbmQ9VHJ1ZSk6CiAgICAgIiIiUmV0dXJuIGEgcGF0aCBjb3JyZXNwb25kaW5nIHRvIHRoZSBzY2hlbWUuCkBAIC00MzcsNiArNDUwLDcgQEAKICAgICAiIiIKICAgICByZXR1cm4gZ2V0X3BhdGhzKHNjaGVtZSwgdmFycywgZXhwYW5kKVtuYW1lXQogCisKIGRlZiBnZXRfY29uZmlnX3ZhcnMoKmFyZ3MpOgogICAgICIiIldpdGggbm8gYXJndW1lbnRzLCByZXR1cm4gYSBkaWN0aW9uYXJ5IG9mIGFsbCBjb25maWd1cmF0aW9uCiAgICAgdmFyaWFibGVzIHJlbGV2YW50IGZvciB0aGUgY3VycmVudCBwbGF0Zm9ybS4KQEAgLTQ0NywxMyArNDYxLDEyIEBACiAgICAgV2l0aCBhcmd1bWVudHMsIHJldHVybiBhIGxpc3Qgb2YgdmFsdWVzIHRoYXQgcmVzdWx0IGZyb20gbG9va2luZyB1cAogICAgIGVhY2ggYXJndW1lbnQgaW4gdGhlIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgZGljdGlvbmFyeS4KICAgICAiIiIKLSAgICBpbXBvcnQgcmUKICAgICBnbG9iYWwgX0NPTkZJR19WQVJTCiAgICAgaWYgX0NPTkZJR19WQVJTIGlzIE5vbmU6CiAgICAgICAgIF9DT05GSUdfVkFSUyA9IHt9CiAgICAgICAgICMgTm9ybWFsaXplZCB2ZXJzaW9ucyBvZiBwcmVmaXggYW5kIGV4ZWNfcHJlZml4IGFyZSBoYW5keSB0byBoYXZlOwogICAgICAgICAjIGluIGZhY3QsIHRoZXNlIGFyZSB0aGUgc3RhbmRhcmQgdmVyc2lvbnMgdXNlZCBtb3N0IHBsYWNlcyBpbiB0aGUKLSAgICAgICAgIyBEaXN0dXRpbHMuCisgICAgICAgICMgcGFja2FnaW5nIG1vZHVsZS4KICAgICAgICAgX0NPTkZJR19WQVJTWydwcmVmaXgnXSA9IF9QUkVGSVgKICAgICAgICAgX0NPTkZJR19WQVJTWydleGVjX3ByZWZpeCddID0gX0VYRUNfUFJFRklYCiAgICAgICAgIF9DT05GSUdfVkFSU1sncHlfdmVyc2lvbiddID0gX1BZX1ZFUlNJT04KQEAgLTQ4Miw3ICs0OTUsNiBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgX0NPTkZJR19WQVJTWydzcmNkaXInXSA9IF9zYWZlX3JlYWxwYXRoKF9DT05GSUdfVkFSU1snc3JjZGlyJ10pCiAKLQogICAgICAgICAjIENvbnZlcnQgc3JjZGlyIGludG8gYW4gYWJzb2x1dGUgcGF0aCBpZiBpdCBhcHBlYXJzIG5lY2Vzc2FyeS4KICAgICAgICAgIyBOb3JtYWxseSBpdCBpcyByZWxhdGl2ZSB0byB0aGUgYnVpbGQgZGlyZWN0b3J5LiAgSG93ZXZlciwgZHVyaW5nCiAgICAgICAgICMgdGVzdGluZywgZm9yIGV4YW1wbGUsIHdlIG1pZ2h0IGJlIHJ1bm5pbmcgYSBub24taW5zdGFsbGVkIHB5dGhvbgpAQCAtNTAyLDcgKzUxNCw3IEBACiAgICAgICAgICAgICAgICAgX0NPTkZJR19WQVJTWydzcmNkaXInXSA9IG9zLnBhdGgubm9ybXBhdGgoc3JjZGlyKQogCiAgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnZGFyd2luJzoKLSAgICAgICAgICAgIGtlcm5lbF92ZXJzaW9uID0gb3MudW5hbWUoKVsyXSAjIEtlcm5lbCB2ZXJzaW9uICg4LjQuMykKKyAgICAgICAgICAgIGtlcm5lbF92ZXJzaW9uID0gb3MudW5hbWUoKVsyXSAgIyBLZXJuZWwgdmVyc2lvbiAoOC40LjMpCiAgICAgICAgICAgICBtYWpvcl92ZXJzaW9uID0gaW50KGtlcm5lbF92ZXJzaW9uLnNwbGl0KCcuJylbMF0pCiAKICAgICAgICAgICAgIGlmIG1ham9yX3ZlcnNpb24gPCA4OgpAQCAtNTY4LDYgKzU4MCw3IEBACiAgICAgZWxzZToKICAgICAgICAgcmV0dXJuIF9DT05GSUdfVkFSUwogCisKIGRlZiBnZXRfY29uZmlnX3ZhcihuYW1lKToKICAgICAiIiJSZXR1cm4gdGhlIHZhbHVlIG9mIGEgc2luZ2xlIHZhcmlhYmxlIHVzaW5nIHRoZSBkaWN0aW9uYXJ5IHJldHVybmVkIGJ5CiAgICAgJ2dldF9jb25maWdfdmFycygpJy4KQEAgLTU3Niw2ICs1ODksNyBAQAogICAgICIiIgogICAgIHJldHVybiBnZXRfY29uZmlnX3ZhcnMoKS5nZXQobmFtZSkKIAorCiBkZWYgZ2V0X3BsYXRmb3JtKCk6CiAgICAgIiIiUmV0dXJuIGEgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgY3VycmVudCBwbGF0Zm9ybS4KIApAQCAtNjAxLDcgKzYxNSw2IEBACiAKICAgICBGb3Igb3RoZXIgbm9uLVBPU0lYIHBsYXRmb3JtcywgY3VycmVudGx5IGp1c3QgcmV0dXJucyAnc3lzLnBsYXRmb3JtJy4KICAgICAiIiIKLSAgICBpbXBvcnQgcmUKICAgICBpZiBvcy5uYW1lID09ICdudCc6CiAgICAgICAgICMgc25pZmYgc3lzLnZlcnNpb24gZm9yIGFyY2hpdGVjdHVyZS4KICAgICAgICAgcHJlZml4ID0gIiBiaXQgKCIKQEAgLTY1MSw3ICs2NjQsNyBAQAogICAgICAgICByZXR1cm4gIiVzLSVzLiVzIiAlIChvc25hbWUsIHZlcnNpb24sIHJlbGVhc2UpCiAgICAgZWxpZiBvc25hbWVbOjZdID09ICJjeWd3aW4iOgogICAgICAgICBvc25hbWUgPSAiY3lnd2luIgotICAgICAgICByZWxfcmUgPSByZS5jb21waWxlIChyJ1tcZC5dKycpCisgICAgICAgIHJlbF9yZSA9IHJlLmNvbXBpbGUocidbXGQuXSsnKQogICAgICAgICBtID0gcmVsX3JlLm1hdGNoKHJlbGVhc2UpCiAgICAgICAgIGlmIG06CiAgICAgICAgICAgICByZWxlYXNlID0gbS5ncm91cCgpCkBAIC02NjIsMTEgKzY3NSwxMCBAQAogICAgICAgICAjIHRvLiBUaGlzIG1ha2VzIHRoZSBjb21wYXRpYmlsaXR5IHN0b3J5IGEgYml0IG1vcmUgc2FuZSBiZWNhdXNlIHRoZQogICAgICAgICAjIG1hY2hpbmUgaXMgZ29pbmcgdG8gY29tcGlsZSBhbmQgbGluayBhcyBpZiBpdCB3ZXJlCiAgICAgICAgICMgTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VULgotICAgICAgICAjCiAgICAgICAgIGNmZ3ZhcnMgPSBnZXRfY29uZmlnX3ZhcnMoKQogICAgICAgICBtYWN2ZXIgPSBjZmd2YXJzLmdldCgnTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUJykKIAotICAgICAgICBpZiAxOgorICAgICAgICBpZiBUcnVlOgogICAgICAgICAgICAgIyBBbHdheXMgY2FsY3VsYXRlIHRoZSByZWxlYXNlIG9mIHRoZSBydW5uaW5nIG1hY2hpbmUsCiAgICAgICAgICAgICAjIG5lZWRlZCB0byBkZXRlcm1pbmUgaWYgd2UgY2FuIGJ1aWxkIGZhdCBiaW5hcmllcyBvciBub3QuCiAKQEAgLTY4MiwxNCArNjk0LDEzIEBACiAgICAgICAgICAgICAgICAgcGFzcwogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgICAgIG0gPSByZS5zZWFyY2goCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcic8a2V5PlByb2R1Y3RVc2VyVmlzaWJsZVZlcnNpb248L2tleT5ccyonICsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByJzxzdHJpbmc+KC4qPyk8L3N0cmluZz4nLCBmLnJlYWQoKSkKLSAgICAgICAgICAgICAgICAgICAgaWYgbSBpcyBub3QgTm9uZToKLSAgICAgICAgICAgICAgICAgICAgICAgIG1hY3JlbGVhc2UgPSAnLicuam9pbihtLmdyb3VwKDEpLnNwbGl0KCcuJylbOjJdKQotICAgICAgICAgICAgICAgICAgICAjIGVsc2U6IGZhbGwgYmFjayB0byB0aGUgZGVmYXVsdCBiZWhhdmlvdXIKKyAgICAgICAgICAgICAgICAgICAgbSA9IHJlLnNlYXJjaChyJzxrZXk+UHJvZHVjdFVzZXJWaXNpYmxlVmVyc2lvbjwva2V5PlxzKicKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByJzxzdHJpbmc+KC4qPyk8L3N0cmluZz4nLCBmLnJlYWQoKSkKICAgICAgICAgICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBpZiBtIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgICAgICBtYWNyZWxlYXNlID0gJy4nLmpvaW4obS5ncm91cCgxKS5zcGxpdCgnLicpWzoyXSkKKyAgICAgICAgICAgICAgICAjIGVsc2U6IGZhbGwgYmFjayB0byB0aGUgZGVmYXVsdCBiZWhhdmlvdXIKIAogICAgICAgICBpZiBub3QgbWFjdmVyOgogICAgICAgICAgICAgbWFjdmVyID0gbWFjcmVsZWFzZQpAQCAtNjk4LDggKzcwOSw4IEBACiAgICAgICAgICAgICByZWxlYXNlID0gbWFjdmVyCiAgICAgICAgICAgICBvc25hbWUgPSAibWFjb3N4IgogCi0gICAgICAgICAgICBpZiAobWFjcmVsZWFzZSArICcuJykgPj0gJzEwLjQuJyBhbmQgXAotICAgICAgICAgICAgICAgICAgICAnLWFyY2gnIGluIGdldF9jb25maWdfdmFycygpLmdldCgnQ0ZMQUdTJywgJycpLnN0cmlwKCk6CisgICAgICAgICAgICBpZiAoKG1hY3JlbGVhc2UgKyAnLicpID49ICcxMC40LicgYW5kCisgICAgICAgICAgICAgICAgJy1hcmNoJyBpbiBnZXRfY29uZmlnX3ZhcnMoKS5nZXQoJ0NGTEFHUycsICcnKS5zdHJpcCgpKToKICAgICAgICAgICAgICAgICAjIFRoZSB1bml2ZXJzYWwgYnVpbGQgd2lsbCBidWlsZCBmYXQgYmluYXJpZXMsIGJ1dCBub3Qgb24KICAgICAgICAgICAgICAgICAjIHN5c3RlbXMgYmVmb3JlIDEwLjQKICAgICAgICAgICAgICAgICAjCkBAIC03MjYsNyArNzM3LDcgQEAKICAgICAgICAgICAgICAgICAgICAgbWFjaGluZSA9ICd1bml2ZXJzYWwnCiAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigKLSAgICAgICAgICAgICAgICAgICAgICAgIkRvbid0IGtub3cgbWFjaGluZSB2YWx1ZSBmb3IgYXJjaHM9JXIiJShhcmNocywpKQorICAgICAgICAgICAgICAgICAgICAgICAiRG9uJ3Qga25vdyBtYWNoaW5lIHZhbHVlIGZvciBhcmNocz0lciIgJSAoYXJjaHMsKSkKIAogICAgICAgICAgICAgZWxpZiBtYWNoaW5lID09ICdpMzg2JzoKICAgICAgICAgICAgICAgICAjIE9uIE9TWCB0aGUgbWFjaGluZSB0eXBlIHJldHVybmVkIGJ5IHVuYW1lIGlzIGFsd2F5cyB0aGUKQEAgLTc0OSwyMSArNzYwLDI3IEBACiBkZWYgZ2V0X3B5dGhvbl92ZXJzaW9uKCk6CiAgICAgcmV0dXJuIF9QWV9WRVJTSU9OX1NIT1JUCiAKKwogZGVmIF9wcmludF9kaWN0KHRpdGxlLCBkYXRhKToKICAgICBmb3IgaW5kZXgsIChrZXksIHZhbHVlKSBpbiBlbnVtZXJhdGUoc29ydGVkKGRhdGEuaXRlbXMoKSkpOgogICAgICAgICBpZiBpbmRleCA9PSAwOgotICAgICAgICAgICAgcHJpbnQoJ3swfTogJy5mb3JtYXQodGl0bGUpKQotICAgICAgICBwcmludCgnXHR7MH0gPSAiezF9IicuZm9ybWF0KGtleSwgdmFsdWUpKQorICAgICAgICAgICAgcHJpbnQoJyVzOiAnICUgKHRpdGxlKSkKKyAgICAgICAgcHJpbnQoJ1x0JXMgPSAiJXMiJyAlIChrZXksIHZhbHVlKSkKKwogCiBkZWYgX21haW4oKToKICAgICAiIiJEaXNwbGF5IGFsbCBpbmZvcm1hdGlvbiBzeXNjb25maWcgZGV0YWlucy4iIiIKLSAgICBwcmludCgnUGxhdGZvcm06ICJ7MH0iJy5mb3JtYXQoZ2V0X3BsYXRmb3JtKCkpKQotICAgIHByaW50KCdQeXRob24gdmVyc2lvbjogInswfSInLmZvcm1hdChnZXRfcHl0aG9uX3ZlcnNpb24oKSkpCi0gICAgcHJpbnQoJ0N1cnJlbnQgaW5zdGFsbGF0aW9uIHNjaGVtZTogInswfSInLmZvcm1hdChfZ2V0X2RlZmF1bHRfc2NoZW1lKCkpKQotICAgIHByaW50KCcnKQorICAgIGlmICctLWdlbmVyYXRlLXBvc2l4LXZhcnMnIGluIHN5cy5hcmd2OgorICAgICAgICBfZ2VuZXJhdGVfcG9zaXhfdmFycygpCisgICAgICAgIHJldHVybgorICAgIHByaW50KCdQbGF0Zm9ybTogIiVzIicgJSBnZXRfcGxhdGZvcm0oKSkKKyAgICBwcmludCgnUHl0aG9uIHZlcnNpb246ICIlcyInICUgZ2V0X3B5dGhvbl92ZXJzaW9uKCkpCisgICAgcHJpbnQoJ0N1cnJlbnQgaW5zdGFsbGF0aW9uIHNjaGVtZTogIiVzIicgJSBfZ2V0X2RlZmF1bHRfc2NoZW1lKCkpCisgICAgcHJpbnQoKQogICAgIF9wcmludF9kaWN0KCdQYXRocycsIGdldF9wYXRocygpKQotICAgIHByaW50KCcnKQorICAgIHByaW50KCkKICAgICBfcHJpbnRfZGljdCgnVmFyaWFibGVzJywgZ2V0X2NvbmZpZ192YXJzKCkpCiAKKwogaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKICAgICBfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGFibmFubnkucHkgYi9MaWIvdGFibmFubnkucHkKaW5kZXggNDZmODE2My4uNGE1NGY4OSAxMDA3NTUKLS0tIGEvTGliL3RhYm5hbm55LnB5CisrKyBiL0xpYi90YWJuYW5ueS5weQpAQCAtMTI2LDYgKzEyNiw5IEBACiAgICAgICAgICAgICBlbHNlOiBwcmludChmaWxlLCBiYWRsaW5lLCByZXByKGxpbmUpKQogICAgICAgICByZXR1cm4KIAorICAgIGZpbmFsbHk6CisgICAgICAgIGYuY2xvc2UoKQorCiAgICAgaWYgdmVyYm9zZToKICAgICAgICAgcHJpbnQoIiVyOiBDbGVhbiBiaWxsIG9mIGhlYWx0aC4iICUgKGZpbGUsKSkKIApkaWZmIC0tZ2l0IGEvTGliL3RhcmZpbGUucHkgYi9MaWIvdGFyZmlsZS5weQppbmRleCBhZjMyYjBmLi5lMzM4MGEyIDEwMDY0NAotLS0gYS9MaWIvdGFyZmlsZS5weQorKysgYi9MaWIvdGFyZmlsZS5weQpAQCAtMjksOCArMjksNiBAQAogIiIiUmVhZCBmcm9tIGFuZCB3cml0ZSB0byB0YXIgZm9ybWF0IGFyY2hpdmVzLgogIiIiCiAKLV9fdmVyc2lvbl9fID0gIiRSZXZpc2lvbiQiCi0KIHZlcnNpb24gICAgID0gIjAuOS4wIgogX19hdXRob3JfXyAgPSAiTGFycyBHdXN0XHUwMGU0YmVsIChsYXJzQGd1c3RhZWJlbC5kZSkiCiBfX2RhdGVfXyAgICA9ICIkRGF0ZTogMjAxMS0wMi0yNSAxNzo0MjowMSArMDIwMCAoRnJpLCAyNSBGZWIgMjAxMSkgJCIKQEAgLTQyLDkgKzQwLDkgQEAKICMtLS0tLS0tLS0KIGltcG9ydCBzeXMKIGltcG9ydCBvcworaW1wb3J0IGlvCiBpbXBvcnQgc2h1dGlsCiBpbXBvcnQgc3RhdAotaW1wb3J0IGVycm5vCiBpbXBvcnQgdGltZQogaW1wb3J0IHN0cnVjdAogaW1wb3J0IGNvcHkKQEAgLTQyMywxMCArNDIxLDExIEBACiAgICAgICAgICAgICAgICAgc2VsZi5jcmMgPSB6bGliLmNyYzMyKGIiIikKICAgICAgICAgICAgICAgICBpZiBtb2RlID09ICJyIjoKICAgICAgICAgICAgICAgICAgICAgc2VsZi5faW5pdF9yZWFkX2d6KCkKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5leGNlcHRpb24gPSB6bGliLmVycm9yCiAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgc2VsZi5faW5pdF93cml0ZV9neigpCiAKLSAgICAgICAgICAgIGlmIGNvbXB0eXBlID09ICJiejIiOgorICAgICAgICAgICAgZWxpZiBjb21wdHlwZSA9PSAiYnoyIjoKICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgIGltcG9ydCBiejIKICAgICAgICAgICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CkBAIC00MzQsOCArNDMzLDI1IEBACiAgICAgICAgICAgICAgICAgaWYgbW9kZSA9PSAiciI6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYuZGJ1ZiA9IGIiIgogICAgICAgICAgICAgICAgICAgICBzZWxmLmNtcCA9IGJ6Mi5CWjJEZWNvbXByZXNzb3IoKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmV4Y2VwdGlvbiA9IElPRXJyb3IKICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICBzZWxmLmNtcCA9IGJ6Mi5CWjJDb21wcmVzc29yKCkKKworICAgICAgICAgICAgZWxpZiBjb21wdHlwZSA9PSAieHoiOgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgaW1wb3J0IGx6bWEKKyAgICAgICAgICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlIENvbXByZXNzaW9uRXJyb3IoImx6bWEgbW9kdWxlIGlzIG5vdCBhdmFpbGFibGUiKQorICAgICAgICAgICAgICAgIGlmIG1vZGUgPT0gInIiOgorICAgICAgICAgICAgICAgICAgICBzZWxmLmRidWYgPSBiIiIKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5jbXAgPSBsem1hLkxaTUFEZWNvbXByZXNzb3IoKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmV4Y2VwdGlvbiA9IGx6bWEuTFpNQUVycm9yCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5jbXAgPSBsem1hLkxaTUFDb21wcmVzc29yKCkKKworICAgICAgICAgICAgZWxpZiBjb21wdHlwZSAhPSAidGFyIjoKKyAgICAgICAgICAgICAgICByYWlzZSBDb21wcmVzc2lvbkVycm9yKCJ1bmtub3duIGNvbXByZXNzaW9uIHR5cGUgJXIiICUgY29tcHR5cGUpCisKICAgICAgICAgZXhjZXB0OgogICAgICAgICAgICAgaWYgbm90IHNlbGYuX2V4dGZpbGVvYmo6CiAgICAgICAgICAgICAgICAgc2VsZi5maWxlb2JqLmNsb3NlKCkKQEAgLTU4Nyw3ICs2MDMsNyBAQAogICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgYnVmID0gc2VsZi5jbXAuZGVjb21wcmVzcyhidWYpCi0gICAgICAgICAgICBleGNlcHQgSU9FcnJvcjoKKyAgICAgICAgICAgIGV4Y2VwdCBzZWxmLmV4Y2VwdGlvbjoKICAgICAgICAgICAgICAgICByYWlzZSBSZWFkRXJyb3IoImludmFsaWQgY29tcHJlc3NlZCBkYXRhIikKICAgICAgICAgICAgIHNlbGYuZGJ1ZiArPSBidWYKICAgICAgICAgICAgIGMgKz0gbGVuKGJ1ZikKQEAgLTYyNSw3NiArNjQxLDE5IEBACiAgICAgICAgIHJldHVybiBzZWxmLmJ1ZgogCiAgICAgZGVmIGdldGNvbXB0eXBlKHNlbGYpOgotICAgICAgICBpZiBzZWxmLmJ1Zi5zdGFydHN3aXRoKGIiXDAzN1wyMTNcMDEwIik6CisgICAgICAgIGlmIHNlbGYuYnVmLnN0YXJ0c3dpdGgoYiJceDFmXHg4Ylx4MDgiKToKICAgICAgICAgICAgIHJldHVybiAiZ3oiCi0gICAgICAgIGlmIHNlbGYuYnVmWzA6M10gPT0gYiJCWmgiIGFuZCBzZWxmLmJ1Zls0OjEwXSA9PSBiIjFBWSZTWSI6CisgICAgICAgIGVsaWYgc2VsZi5idWZbMDozXSA9PSBiIkJaaCIgYW5kIHNlbGYuYnVmWzQ6MTBdID09IGIiMUFZJlNZIjoKICAgICAgICAgICAgIHJldHVybiAiYnoyIgotICAgICAgICByZXR1cm4gInRhciIKKyAgICAgICAgZWxpZiBzZWxmLmJ1Zi5zdGFydHN3aXRoKChiIlx4NWRceDAwXHgwMFx4ODAiLCBiIlx4ZmQ3elhaIikpOgorICAgICAgICAgICAgcmV0dXJuICJ4eiIKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJldHVybiAidGFyIgogCiAgICAgZGVmIGNsb3NlKHNlbGYpOgogICAgICAgICBzZWxmLmZpbGVvYmouY2xvc2UoKQogIyBjbGFzcyBTdHJlYW1Qcm94eQogCi1jbGFzcyBfQloyUHJveHkob2JqZWN0KToKLSAgICAiIiJTbWFsbCBwcm94eSBjbGFzcyB0aGF0IGVuYWJsZXMgZXh0ZXJuYWwgZmlsZSBvYmplY3QKLSAgICAgICBzdXBwb3J0IGZvciAicjpiejIiIGFuZCAidzpiejIiIG1vZGVzLiBUaGlzIGlzIGFjdHVhbGx5Ci0gICAgICAgYSB3b3JrYXJvdW5kIGZvciBhIGxpbWl0YXRpb24gaW4gYnoyIG1vZHVsZSdzIEJaMkZpbGUKLSAgICAgICBjbGFzcyB3aGljaCAodW5saWtlIGd6aXAuR3ppcEZpbGUpIGhhcyBubyBzdXBwb3J0IGZvcgotICAgICAgIGEgZmlsZSBvYmplY3QgYXJndW1lbnQuCi0gICAgIiIiCi0KLSAgICBibG9ja3NpemUgPSAxNiAqIDEwMjQKLQotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBmaWxlb2JqLCBtb2RlKToKLSAgICAgICAgc2VsZi5maWxlb2JqID0gZmlsZW9iagotICAgICAgICBzZWxmLm1vZGUgPSBtb2RlCi0gICAgICAgIHNlbGYubmFtZSA9IGdldGF0dHIoc2VsZi5maWxlb2JqLCAibmFtZSIsIE5vbmUpCi0gICAgICAgIHNlbGYuaW5pdCgpCi0KLSAgICBkZWYgaW5pdChzZWxmKToKLSAgICAgICAgaW1wb3J0IGJ6MgotICAgICAgICBzZWxmLnBvcyA9IDAKLSAgICAgICAgaWYgc2VsZi5tb2RlID09ICJyIjoKLSAgICAgICAgICAgIHNlbGYuYnoyb2JqID0gYnoyLkJaMkRlY29tcHJlc3NvcigpCi0gICAgICAgICAgICBzZWxmLmZpbGVvYmouc2VlaygwKQotICAgICAgICAgICAgc2VsZi5idWYgPSBiIiIKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHNlbGYuYnoyb2JqID0gYnoyLkJaMkNvbXByZXNzb3IoKQotCi0gICAgZGVmIHJlYWQoc2VsZiwgc2l6ZSk6Ci0gICAgICAgIHggPSBsZW4oc2VsZi5idWYpCi0gICAgICAgIHdoaWxlIHggPCBzaXplOgotICAgICAgICAgICAgcmF3ID0gc2VsZi5maWxlb2JqLnJlYWQoc2VsZi5ibG9ja3NpemUpCi0gICAgICAgICAgICBpZiBub3QgcmF3OgotICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICBkYXRhID0gc2VsZi5iejJvYmouZGVjb21wcmVzcyhyYXcpCi0gICAgICAgICAgICBzZWxmLmJ1ZiArPSBkYXRhCi0gICAgICAgICAgICB4ICs9IGxlbihkYXRhKQotCi0gICAgICAgIGJ1ZiA9IHNlbGYuYnVmWzpzaXplXQotICAgICAgICBzZWxmLmJ1ZiA9IHNlbGYuYnVmW3NpemU6XQotICAgICAgICBzZWxmLnBvcyArPSBsZW4oYnVmKQotICAgICAgICByZXR1cm4gYnVmCi0KLSAgICBkZWYgc2VlayhzZWxmLCBwb3MpOgotICAgICAgICBpZiBwb3MgPCBzZWxmLnBvczoKLSAgICAgICAgICAgIHNlbGYuaW5pdCgpCi0gICAgICAgIHNlbGYucmVhZChwb3MgLSBzZWxmLnBvcykKLQotICAgIGRlZiB0ZWxsKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5wb3MKLQotICAgIGRlZiB3cml0ZShzZWxmLCBkYXRhKToKLSAgICAgICAgc2VsZi5wb3MgKz0gbGVuKGRhdGEpCi0gICAgICAgIHJhdyA9IHNlbGYuYnoyb2JqLmNvbXByZXNzKGRhdGEpCi0gICAgICAgIHNlbGYuZmlsZW9iai53cml0ZShyYXcpCi0KLSAgICBkZWYgY2xvc2Uoc2VsZik6Ci0gICAgICAgIGlmIHNlbGYubW9kZSA9PSAidyI6Ci0gICAgICAgICAgICByYXcgPSBzZWxmLmJ6Mm9iai5mbHVzaCgpCi0gICAgICAgICAgICBzZWxmLmZpbGVvYmoud3JpdGUocmF3KQotIyBjbGFzcyBfQloyUHJveHkKLQogIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIyBFeHRyYWN0aW9uIGZpbGUgb2JqZWN0CiAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkBAIC04NzUsMjAgKzgzNCwyMCBAQAogCiAgICAgICAgIHJldHVybiBzZWxmLnBvc2l0aW9uCiAKLSAgICBkZWYgc2VlayhzZWxmLCBwb3MsIHdoZW5jZT1vcy5TRUVLX1NFVCk6CisgICAgZGVmIHNlZWsoc2VsZiwgcG9zLCB3aGVuY2U9aW8uU0VFS19TRVQpOgogICAgICAgICAiIiJTZWVrIHRvIGEgcG9zaXRpb24gaW4gdGhlIGZpbGUuCiAgICAgICAgICIiIgogICAgICAgICBpZiBzZWxmLmNsb3NlZDoKICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkkvTyBvcGVyYXRpb24gb24gY2xvc2VkIGZpbGUiKQogCi0gICAgICAgIGlmIHdoZW5jZSA9PSBvcy5TRUVLX1NFVDoKKyAgICAgICAgaWYgd2hlbmNlID09IGlvLlNFRUtfU0VUOgogICAgICAgICAgICAgc2VsZi5wb3NpdGlvbiA9IG1pbihtYXgocG9zLCAwKSwgc2VsZi5zaXplKQotICAgICAgICBlbGlmIHdoZW5jZSA9PSBvcy5TRUVLX0NVUjoKKyAgICAgICAgZWxpZiB3aGVuY2UgPT0gaW8uU0VFS19DVVI6CiAgICAgICAgICAgICBpZiBwb3MgPCAwOgogICAgICAgICAgICAgICAgIHNlbGYucG9zaXRpb24gPSBtYXgoc2VsZi5wb3NpdGlvbiArIHBvcywgMCkKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgc2VsZi5wb3NpdGlvbiA9IG1pbihzZWxmLnBvc2l0aW9uICsgcG9zLCBzZWxmLnNpemUpCi0gICAgICAgIGVsaWYgd2hlbmNlID09IG9zLlNFRUtfRU5EOgorICAgICAgICBlbGlmIHdoZW5jZSA9PSBpby5TRUVLX0VORDoKICAgICAgICAgICAgIHNlbGYucG9zaXRpb24gPSBtYXgobWluKHNlbGYuc2l6ZSArIHBvcywgc2VsZi5zaXplKSwgMCkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkludmFsaWQgYXJndW1lbnQiKQpAQCAtMTA4Nyw3ICsxMDQ2LDcgQEAKICAgICBkZWYgY3JlYXRlX3BheF9nbG9iYWxfaGVhZGVyKGNscywgcGF4X2hlYWRlcnMpOgogICAgICAgICAiIiJSZXR1cm4gdGhlIG9iamVjdCBhcyBhIHBheCBnbG9iYWwgaGVhZGVyIGJsb2NrIHNlcXVlbmNlLgogICAgICAgICAiIiIKLSAgICAgICAgcmV0dXJuIGNscy5fY3JlYXRlX3BheF9nZW5lcmljX2hlYWRlcihwYXhfaGVhZGVycywgWEdMVFlQRSwgInV0ZjgiKQorICAgICAgICByZXR1cm4gY2xzLl9jcmVhdGVfcGF4X2dlbmVyaWNfaGVhZGVyKHBheF9oZWFkZXJzLCBYR0xUWVBFLCAidXRmLTgiKQogCiAgICAgZGVmIF9wb3NpeF9zcGxpdF9uYW1lKHNlbGYsIG5hbWUpOgogICAgICAgICAiIiJTcGxpdCBhIG5hbWUgbG9uZ2VyIHRoYW4gMTAwIGNoYXJzIGludG8gYSBwcmVmaXgKQEAgLTExNzAsNyArMTEyOSw3IEBACiAgICAgICAgIGJpbmFyeSA9IEZhbHNlCiAgICAgICAgIGZvciBrZXl3b3JkLCB2YWx1ZSBpbiBwYXhfaGVhZGVycy5pdGVtcygpOgogICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHZhbHVlLmVuY29kZSgidXRmOCIsICJzdHJpY3QiKQorICAgICAgICAgICAgICAgIHZhbHVlLmVuY29kZSgidXRmLTgiLCAic3RyaWN0IikKICAgICAgICAgICAgIGV4Y2VwdCBVbmljb2RlRW5jb2RlRXJyb3I6CiAgICAgICAgICAgICAgICAgYmluYXJ5ID0gVHJ1ZQogICAgICAgICAgICAgICAgIGJyZWFrCkBAIC0xMTgxLDEzICsxMTQwLDEzIEBACiAgICAgICAgICAgICByZWNvcmRzICs9IGIiMjEgaGRyY2hhcnNldD1CSU5BUllcbiIKIAogICAgICAgICBmb3Iga2V5d29yZCwgdmFsdWUgaW4gcGF4X2hlYWRlcnMuaXRlbXMoKToKLSAgICAgICAgICAgIGtleXdvcmQgPSBrZXl3b3JkLmVuY29kZSgidXRmOCIpCisgICAgICAgICAgICBrZXl3b3JkID0ga2V5d29yZC5lbmNvZGUoInV0Zi04IikKICAgICAgICAgICAgIGlmIGJpbmFyeToKICAgICAgICAgICAgICAgICAjIFRyeSB0byByZXN0b3JlIHRoZSBvcmlnaW5hbCBieXRlIHJlcHJlc2VudGF0aW9uIG9mIGB2YWx1ZScuCiAgICAgICAgICAgICAgICAgIyBOZWVkbGVzcyB0byBzYXksIHRoYXQgdGhlIGVuY29kaW5nIG11c3QgbWF0Y2ggdGhlIHN0cmluZy4KICAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlLmVuY29kZShlbmNvZGluZywgInN1cnJvZ2F0ZWVzY2FwZSIpCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHZhbHVlID0gdmFsdWUuZW5jb2RlKCJ1dGY4IikKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlLmVuY29kZSgidXRmLTgiKQogCiAgICAgICAgICAgICBsID0gbGVuKGtleXdvcmQpICsgbGVuKHZhbHVlKSArIDMgICAjICcgJyArICc9JyArICdcbicKICAgICAgICAgICAgIG4gPSBwID0gMApAQCAtMTM5Niw3ICsxMzU1LDcgQEAKICAgICAgICAgIyB0aGUgdHJhbnNsYXRpb24gdG8gVVRGLTggZmFpbHMuCiAgICAgICAgIG1hdGNoID0gcmUuc2VhcmNoKGJyIlxkKyBoZHJjaGFyc2V0PShbXlxuXSspXG4iLCBidWYpCiAgICAgICAgIGlmIG1hdGNoIGlzIG5vdCBOb25lOgotICAgICAgICAgICAgcGF4X2hlYWRlcnNbImhkcmNoYXJzZXQiXSA9IG1hdGNoLmdyb3VwKDEpLmRlY29kZSgidXRmOCIpCisgICAgICAgICAgICBwYXhfaGVhZGVyc1siaGRyY2hhcnNldCJdID0gbWF0Y2guZ3JvdXAoMSkuZGVjb2RlKCJ1dGYtOCIpCiAKICAgICAgICAgIyBGb3IgdGhlIHRpbWUgYmVpbmcsIHdlIGRvbid0IGNhcmUgYWJvdXQgYW55dGhpbmcgb3RoZXIgdGhhbiAiQklOQVJZIi4KICAgICAgICAgIyBUaGUgb25seSBvdGhlciB2YWx1ZSB0aGF0IGlzIGN1cnJlbnRseSBhbGxvd2VkIGJ5IHRoZSBzdGFuZGFyZCBpcwpAQCAtMTQwNSw3ICsxMzY0LDcgQEAKICAgICAgICAgaWYgaGRyY2hhcnNldCA9PSAiQklOQVJZIjoKICAgICAgICAgICAgIGVuY29kaW5nID0gdGFyZmlsZS5lbmNvZGluZwogICAgICAgICBlbHNlOgotICAgICAgICAgICAgZW5jb2RpbmcgPSAidXRmOCIKKyAgICAgICAgICAgIGVuY29kaW5nID0gInV0Zi04IgogCiAgICAgICAgICMgUGFyc2UgcGF4IGhlYWRlciBpbmZvcm1hdGlvbi4gQSByZWNvcmQgbG9va3MgbGlrZSB0aGF0OgogICAgICAgICAjICIlZCAlcz0lc1xuIiAlIChsZW5ndGgsIGtleXdvcmQsIHZhbHVlKS4gbGVuZ3RoIGlzIHRoZSBzaXplCkBAIC0xNDIyLDIwICsxMzgxLDIwIEBACiAgICAgICAgICAgICBsZW5ndGggPSBpbnQobGVuZ3RoKQogICAgICAgICAgICAgdmFsdWUgPSBidWZbbWF0Y2guZW5kKDIpICsgMTptYXRjaC5zdGFydCgxKSArIGxlbmd0aCAtIDFdCiAKLSAgICAgICAgICAgICMgTm9ybWFsbHksIHdlIGNvdWxkIGp1c3QgdXNlICJ1dGY4IiBhcyB0aGUgZW5jb2RpbmcgYW5kICJzdHJpY3QiCisgICAgICAgICAgICAjIE5vcm1hbGx5LCB3ZSBjb3VsZCBqdXN0IHVzZSAidXRmLTgiIGFzIHRoZSBlbmNvZGluZyBhbmQgInN0cmljdCIKICAgICAgICAgICAgICMgYXMgdGhlIGVycm9yIGhhbmRsZXIsIGJ1dCB3ZSBiZXR0ZXIgbm90IHRha2UgdGhlIHJpc2suIEZvcgogICAgICAgICAgICAgIyBleGFtcGxlLCBHTlUgdGFyIDw9IDEuMjMgaXMga25vd24gdG8gc3RvcmUgZmlsZW5hbWVzIGl0IGNhbm5vdAogICAgICAgICAgICAgIyB0cmFuc2xhdGUgdG8gVVRGLTggYXMgcmF3IHN0cmluZ3MgKHVuZm9ydHVuYXRlbHkgd2l0aG91dCBhCiAgICAgICAgICAgICAjIGhkcmNoYXJzZXQ9QklOQVJZIGhlYWRlcikuCiAgICAgICAgICAgICAjIFdlIGZpcnN0IHRyeSB0aGUgc3RyaWN0IHN0YW5kYXJkIGVuY29kaW5nLCBhbmQgaWYgdGhhdCBmYWlscyB3ZQogICAgICAgICAgICAgIyBmYWxsIGJhY2sgb24gdGhlIHVzZXIncyBlbmNvZGluZyBhbmQgZXJyb3IgaGFuZGxlci4KLSAgICAgICAgICAgIGtleXdvcmQgPSBzZWxmLl9kZWNvZGVfcGF4X2ZpZWxkKGtleXdvcmQsICJ1dGY4IiwgInV0ZjgiLAorICAgICAgICAgICAga2V5d29yZCA9IHNlbGYuX2RlY29kZV9wYXhfZmllbGQoa2V5d29yZCwgInV0Zi04IiwgInV0Zi04IiwKICAgICAgICAgICAgICAgICAgICAgdGFyZmlsZS5lcnJvcnMpCiAgICAgICAgICAgICBpZiBrZXl3b3JkIGluIFBBWF9OQU1FX0ZJRUxEUzoKICAgICAgICAgICAgICAgICB2YWx1ZSA9IHNlbGYuX2RlY29kZV9wYXhfZmllbGQodmFsdWUsIGVuY29kaW5nLCB0YXJmaWxlLmVuY29kaW5nLAogICAgICAgICAgICAgICAgICAgICAgICAgdGFyZmlsZS5lcnJvcnMpCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHZhbHVlID0gc2VsZi5fZGVjb2RlX3BheF9maWVsZCh2YWx1ZSwgInV0ZjgiLCAidXRmOCIsCisgICAgICAgICAgICAgICAgdmFsdWUgPSBzZWxmLl9kZWNvZGVfcGF4X2ZpZWxkKHZhbHVlLCAidXRmLTgiLCAidXRmLTgiLAogICAgICAgICAgICAgICAgICAgICAgICAgdGFyZmlsZS5lcnJvcnMpCiAKICAgICAgICAgICAgIHBheF9oZWFkZXJzW2tleXdvcmRdID0gdmFsdWUKQEAgLTE3MTQsMTggKzE2NzMsMjIgQEAKICAgICAgICAgICAgJ3I6JyAgICAgICAgIG9wZW4gZm9yIHJlYWRpbmcgZXhjbHVzaXZlbHkgdW5jb21wcmVzc2VkCiAgICAgICAgICAgICdyOmd6JyAgICAgICBvcGVuIGZvciByZWFkaW5nIHdpdGggZ3ppcCBjb21wcmVzc2lvbgogICAgICAgICAgICAncjpiejInICAgICAgb3BlbiBmb3IgcmVhZGluZyB3aXRoIGJ6aXAyIGNvbXByZXNzaW9uCisgICAgICAgICAgICdyOnh6JyAgICAgICBvcGVuIGZvciByZWFkaW5nIHdpdGggbHptYSBjb21wcmVzc2lvbgogICAgICAgICAgICAnYScgb3IgJ2E6JyAgb3BlbiBmb3IgYXBwZW5kaW5nLCBjcmVhdGluZyB0aGUgZmlsZSBpZiBuZWNlc3NhcnkKICAgICAgICAgICAgJ3cnIG9yICd3OicgIG9wZW4gZm9yIHdyaXRpbmcgd2l0aG91dCBjb21wcmVzc2lvbgogICAgICAgICAgICAndzpneicgICAgICAgb3BlbiBmb3Igd3JpdGluZyB3aXRoIGd6aXAgY29tcHJlc3Npb24KICAgICAgICAgICAgJ3c6YnoyJyAgICAgIG9wZW4gZm9yIHdyaXRpbmcgd2l0aCBiemlwMiBjb21wcmVzc2lvbgorICAgICAgICAgICAndzp4eicgICAgICAgb3BlbiBmb3Igd3JpdGluZyB3aXRoIGx6bWEgY29tcHJlc3Npb24KIAogICAgICAgICAgICAncnwqJyAgICAgICAgb3BlbiBhIHN0cmVhbSBvZiB0YXIgYmxvY2tzIHdpdGggdHJhbnNwYXJlbnQgY29tcHJlc3Npb24KICAgICAgICAgICAgJ3J8JyAgICAgICAgIG9wZW4gYW4gdW5jb21wcmVzc2VkIHN0cmVhbSBvZiB0YXIgYmxvY2tzIGZvciByZWFkaW5nCiAgICAgICAgICAgICdyfGd6JyAgICAgICBvcGVuIGEgZ3ppcCBjb21wcmVzc2VkIHN0cmVhbSBvZiB0YXIgYmxvY2tzCiAgICAgICAgICAgICdyfGJ6MicgICAgICBvcGVuIGEgYnppcDIgY29tcHJlc3NlZCBzdHJlYW0gb2YgdGFyIGJsb2NrcworICAgICAgICAgICAncnx4eicgICAgICAgb3BlbiBhbiBsem1hIGNvbXByZXNzZWQgc3RyZWFtIG9mIHRhciBibG9ja3MKICAgICAgICAgICAgJ3d8JyAgICAgICAgIG9wZW4gYW4gdW5jb21wcmVzc2VkIHN0cmVhbSBmb3Igd3JpdGluZwogICAgICAgICAgICAnd3xneicgICAgICAgb3BlbiBhIGd6aXAgY29tcHJlc3NlZCBzdHJlYW0gZm9yIHdyaXRpbmcKICAgICAgICAgICAgJ3d8YnoyJyAgICAgIG9wZW4gYSBiemlwMiBjb21wcmVzc2VkIHN0cmVhbSBmb3Igd3JpdGluZworICAgICAgICAgICAnd3x4eicgICAgICAgb3BlbiBhbiBsem1hIGNvbXByZXNzZWQgc3RyZWFtIGZvciB3cml0aW5nCiAgICAgICAgICIiIgogCiAgICAgICAgIGlmIG5vdCBuYW1lIGFuZCBub3QgZmlsZW9iajoKQEAgLTE4MzIsMTAgKzE3OTUsOCBAQAogICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgICAgICAgICByYWlzZSBDb21wcmVzc2lvbkVycm9yKCJiejIgbW9kdWxlIGlzIG5vdCBhdmFpbGFibGUiKQogCi0gICAgICAgIGlmIGZpbGVvYmogaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICBmaWxlb2JqID0gX0JaMlByb3h5KGZpbGVvYmosIG1vZGUpCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBmaWxlb2JqID0gYnoyLkJaMkZpbGUobmFtZSwgbW9kZSwgY29tcHJlc3NsZXZlbD1jb21wcmVzc2xldmVsKQorICAgICAgICBmaWxlb2JqID0gYnoyLkJaMkZpbGUoZmlsZW5hbWU9bmFtZSBpZiBmaWxlb2JqIGlzIE5vbmUgZWxzZSBOb25lLAorICAgICAgICAgICAgICAgIG1vZGU9bW9kZSwgZmlsZW9iaj1maWxlb2JqLCBjb21wcmVzc2xldmVsPWNvbXByZXNzbGV2ZWwpCiAKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgdCA9IGNscy50YXJvcGVuKG5hbWUsIG1vZGUsIGZpbGVvYmosICoqa3dhcmdzKQpAQCAtMTg0NSwxMSArMTgwNiwzNiBAQAogICAgICAgICB0Ll9leHRmaWxlb2JqID0gRmFsc2UKICAgICAgICAgcmV0dXJuIHQKIAorICAgIEBjbGFzc21ldGhvZAorICAgIGRlZiB4em9wZW4oY2xzLCBuYW1lLCBtb2RlPSJyIiwgZmlsZW9iaj1Ob25lLCBwcmVzZXQ9Tm9uZSwgKiprd2FyZ3MpOgorICAgICAgICAiIiJPcGVuIGx6bWEgY29tcHJlc3NlZCB0YXIgYXJjaGl2ZSBuYW1lIGZvciByZWFkaW5nIG9yIHdyaXRpbmcuCisgICAgICAgICAgIEFwcGVuZGluZyBpcyBub3QgYWxsb3dlZC4KKyAgICAgICAgIiIiCisgICAgICAgIGlmIG1vZGUgbm90IGluICgiciIsICJ3Iik6CisgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJtb2RlIG11c3QgYmUgJ3InIG9yICd3JyIpCisKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgaW1wb3J0IGx6bWEKKyAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgorICAgICAgICAgICAgcmFpc2UgQ29tcHJlc3Npb25FcnJvcigibHptYSBtb2R1bGUgaXMgbm90IGF2YWlsYWJsZSIpCisKKyAgICAgICAgZmlsZW9iaiA9IGx6bWEuTFpNQUZpbGUoZmlsZW5hbWU9bmFtZSBpZiBmaWxlb2JqIGlzIE5vbmUgZWxzZSBOb25lLAorICAgICAgICAgICAgICAgIG1vZGU9bW9kZSwgZmlsZW9iaj1maWxlb2JqLCBwcmVzZXQ9cHJlc2V0KQorCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHQgPSBjbHMudGFyb3BlbihuYW1lLCBtb2RlLCBmaWxlb2JqLCAqKmt3YXJncykKKyAgICAgICAgZXhjZXB0IChsem1hLkxaTUFFcnJvciwgRU9GRXJyb3IpOgorICAgICAgICAgICAgZmlsZW9iai5jbG9zZSgpCisgICAgICAgICAgICByYWlzZSBSZWFkRXJyb3IoIm5vdCBhbiBsem1hIGZpbGUiKQorICAgICAgICB0Ll9leHRmaWxlb2JqID0gRmFsc2UKKyAgICAgICAgcmV0dXJuIHQKKwogICAgICMgQWxsICpvcGVuKCkgbWV0aG9kcyBhcmUgcmVnaXN0ZXJlZCBoZXJlLgogICAgIE9QRU5fTUVUSCA9IHsKICAgICAgICAgInRhciI6ICJ0YXJvcGVuIiwgICAjIHVuY29tcHJlc3NlZCB0YXIKICAgICAgICAgImd6IjogICJnem9wZW4iLCAgICAjIGd6aXAgY29tcHJlc3NlZCB0YXIKLSAgICAgICAgImJ6MiI6ICJiejJvcGVuIiAgICAjIGJ6aXAyIGNvbXByZXNzZWQgdGFyCisgICAgICAgICJiejIiOiAiYnoyb3BlbiIsICAgIyBiemlwMiBjb21wcmVzc2VkIHRhcgorICAgICAgICAieHoiOiAgInh6b3BlbiIgICAgICMgbHptYSBjb21wcmVzc2VkIHRhcgogICAgIH0KIAogICAgICMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMjI4Myw5ICsyMjY5LDggQEAKICAgICAgICAgICAgICMgVXNlIGEgc2FmZSBtb2RlIGZvciB0aGUgZGlyZWN0b3J5LCB0aGUgcmVhbCBtb2RlIGlzIHNldAogICAgICAgICAgICAgIyBsYXRlciBpbiBfZXh0cmFjdF9tZW1iZXIoKS4KICAgICAgICAgICAgIG9zLm1rZGlyKHRhcmdldHBhdGgsIDBvNzAwKQotICAgICAgICBleGNlcHQgRW52aXJvbm1lbnRFcnJvciBhcyBlOgotICAgICAgICAgICAgaWYgZS5lcnJubyAhPSBlcnJuby5FRVhJU1Q6Ci0gICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgZXhjZXB0IEZpbGVFeGlzdHNFcnJvcjoKKyAgICAgICAgICAgIHBhc3MKIAogICAgIGRlZiBtYWtlZmlsZShzZWxmLCB0YXJpbmZvLCB0YXJnZXRwYXRoKToKICAgICAgICAgIiIiTWFrZSBhIGZpbGUgY2FsbGVkIHRhcmdldHBhdGguCmRpZmYgLS1naXQgYS9MaWIvdGVtcGZpbGUucHkgYi9MaWIvdGVtcGZpbGUucHkKaW5kZXggMzRkZmYzMC4uMzllYmY1YSAxMDA2NDQKLS0tIGEvTGliL3RlbXBmaWxlLnB5CisrKyBiL0xpYi90ZW1wZmlsZS5weQpAQCAtMTAsOCArMTAsNiBAQAogCiAgIFRNUF9NQVggIC0gbWF4aW11bSBudW1iZXIgb2YgbmFtZXMgdGhhdCB3aWxsIGJlIHRyaWVkIGJlZm9yZQogICAgICAgICAgICAgIGdpdmluZyB1cC4KLSAgdGVtcGxhdGUgLSB0aGUgZGVmYXVsdCBwcmVmaXggZm9yIGFsbCB0ZW1wb3JhcnkgbmFtZXMuCi0gICAgICAgICAgICAgWW91IG1heSBjaGFuZ2UgdGhpcyB0byBjb250cm9sIHRoZSBkZWZhdWx0IHByZWZpeC4KICAgdGVtcGRpciAgLSBJZiB0aGlzIGlzIHNldCB0byBhIHN0cmluZyBiZWZvcmUgdGhlIGZpcnN0IHVzZSBvZgogICAgICAgICAgICAgIGFueSByb3V0aW5lIGZyb20gdGhpcyBtb2R1bGUsIGl0IHdpbGwgYmUgY29uc2lkZXJlZCBhcwogICAgICAgICAgICAgIGFub3RoZXIgY2FuZGlkYXRlIGxvY2F0aW9uIHRvIHN0b3JlIHRlbXBvcmFyeSBmaWxlcy4KQEAgLTMzLDcgKzMxLDYgQEAKIGltcG9ydCBzeXMgYXMgX3N5cwogaW1wb3J0IGlvIGFzIF9pbwogaW1wb3J0IG9zIGFzIF9vcwotaW1wb3J0IGVycm5vIGFzIF9lcnJubwogZnJvbSByYW5kb20gaW1wb3J0IFJhbmRvbSBhcyBfUmFuZG9tCiAKIHRyeToKQEAgLTQ1LDcgKzQyLDcgQEAKICAgICBkZWYgX3NldF9jbG9leGVjKGZkKToKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgZmxhZ3MgPSBfZmNudGwuZmNudGwoZmQsIF9mY250bC5GX0dFVEZELCAwKQotICAgICAgICBleGNlcHQgSU9FcnJvcjoKKyAgICAgICAgZXhjZXB0IE9TRXJyb3I6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAjIGZsYWdzIHJlYWQgc3VjY2Vzc2Z1bGx5LCBtb2RpZnkKQEAgLTc0LDYgKzcxLDggQEAKIGVsc2U6CiAgICAgVE1QX01BWCA9IDEwMDAwCiAKKyMgQWx0aG91Z2ggaXQgZG9lcyBub3QgaGF2ZSBhbiB1bmRlcnNjb3JlIGZvciBoaXN0b3JpY2FsIHJlYXNvbnMsIHRoaXMKKyMgdmFyaWFibGUgaXMgYW4gaW50ZXJuYWwgaW1wbGVtZW50YXRpb24gZGV0YWlsIChzZWUgaXNzdWUgMTAzNTQpLgogdGVtcGxhdGUgPSAidG1wIgogCiAjIEludGVybmFsIHJvdXRpbmVzLgpAQCAtODUsMTkgKzg0LDE2IEBACiBlbGlmIGhhc2F0dHIoX29zLCAic3RhdCIpOgogICAgIF9zdGF0ID0gX29zLnN0YXQKIGVsc2U6Ci0gICAgIyBGYWxsYmFjay4gIEFsbCB3ZSBuZWVkIGlzIHNvbWV0aGluZyB0aGF0IHJhaXNlcyBvcy5lcnJvciBpZiB0aGUKKyAgICAjIEZhbGxiYWNrLiAgQWxsIHdlIG5lZWQgaXMgc29tZXRoaW5nIHRoYXQgcmFpc2VzIE9TRXJyb3IgaWYgdGhlCiAgICAgIyBmaWxlIGRvZXNuJ3QgZXhpc3QuCiAgICAgZGVmIF9zdGF0KGZuKToKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgZiA9IG9wZW4oZm4pCi0gICAgICAgIGV4Y2VwdCBJT0Vycm9yOgotICAgICAgICAgICAgcmFpc2UgX29zLmVycm9yCisgICAgICAgIGYgPSBvcGVuKGZuKQogICAgICAgICBmLmNsb3NlKCkKIAogZGVmIF9leGlzdHMoZm4pOgogICAgIHRyeToKICAgICAgICAgX3N0YXQoZm4pCi0gICAgZXhjZXB0IF9vcy5lcnJvcjoKKyAgICBleGNlcHQgT1NFcnJvcjoKICAgICAgICAgcmV0dXJuIEZhbHNlCiAgICAgZWxzZToKICAgICAgICAgcmV0dXJuIFRydWUKQEAgLTE0OSw3ICsxNDUsNyBAQAogICAgICMgQXMgYSBsYXN0IHJlc29ydCwgdGhlIGN1cnJlbnQgZGlyZWN0b3J5LgogICAgIHRyeToKICAgICAgICAgZGlybGlzdC5hcHBlbmQoX29zLmdldGN3ZCgpKQotICAgIGV4Y2VwdCAoQXR0cmlidXRlRXJyb3IsIF9vcy5lcnJvcik6CisgICAgZXhjZXB0IChBdHRyaWJ1dGVFcnJvciwgT1NFcnJvcik6CiAgICAgICAgIGRpcmxpc3QuYXBwZW5kKF9vcy5jdXJkaXIpCiAKICAgICByZXR1cm4gZGlybGlzdApAQCAtMTgxLDEyICsxNzcsMTEgQEAKICAgICAgICAgICAgICAgICBfb3MudW5saW5rKGZpbGVuYW1lKQogICAgICAgICAgICAgICAgIGRlbCBmcCwgZmQKICAgICAgICAgICAgICAgICByZXR1cm4gZGlyCi0gICAgICAgICAgICBleGNlcHQgKE9TRXJyb3IsIElPRXJyb3IpIGFzIGU6Ci0gICAgICAgICAgICAgICAgaWYgZS5hcmdzWzBdICE9IF9lcnJuby5FRVhJU1Q6Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrICMgbm8gcG9pbnQgdHJ5aW5nIG1vcmUgbmFtZXMgaW4gdGhpcyBkaXJlY3RvcnkKKyAgICAgICAgICAgIGV4Y2VwdCBGaWxlRXhpc3RzRXJyb3I6CiAgICAgICAgICAgICAgICAgcGFzcwotICAgIHJhaXNlIElPRXJyb3IoX2Vycm5vLkVOT0VOVCwKLSAgICAgICAgICAgICAgICAgICJObyB1c2FibGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSBmb3VuZCBpbiAlcyIgJSBkaXJsaXN0KQorICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgICAgICAgICAgYnJlYWsgICAjIG5vIHBvaW50IHRyeWluZyBtb3JlIG5hbWVzIGluIHRoaXMgZGlyZWN0b3J5CisgICAgcmFpc2UgRmlsZU5vdEZvdW5kRXJyb3IoIk5vIHVzYWJsZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IGZvdW5kIGluICVzIiAlIGRpcmxpc3QpCiAKIF9uYW1lX3NlcXVlbmNlID0gTm9uZQogCkBAIC0yMTYsMTIgKzIxMSwxMCBAQAogICAgICAgICAgICAgZmQgPSBfb3Mub3BlbihmaWxlLCBmbGFncywgMG82MDApCiAgICAgICAgICAgICBfc2V0X2Nsb2V4ZWMoZmQpCiAgICAgICAgICAgICByZXR1cm4gKGZkLCBfb3MucGF0aC5hYnNwYXRoKGZpbGUpKQotICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlOgotICAgICAgICAgICAgaWYgZS5lcnJubyA9PSBfZXJybm8uRUVYSVNUOgotICAgICAgICAgICAgICAgIGNvbnRpbnVlICMgdHJ5IGFnYWluCi0gICAgICAgICAgICByYWlzZQorICAgICAgICBleGNlcHQgRmlsZUV4aXN0c0Vycm9yOgorICAgICAgICAgICAgY29udGludWUgICAgIyB0cnkgYWdhaW4KIAotICAgIHJhaXNlIElPRXJyb3IoX2Vycm5vLkVFWElTVCwgIk5vIHVzYWJsZSB0ZW1wb3JhcnkgZmlsZSBuYW1lIGZvdW5kIikKKyAgICByYWlzZSBGaWxlRXhpc3RzRXJyb3IoIk5vIHVzYWJsZSB0ZW1wb3JhcnkgZmlsZSBuYW1lIGZvdW5kIikKIAogCiAjIFVzZXIgdmlzaWJsZSBpbnRlcmZhY2VzLgpAQCAtMzA1LDEyICsyOTgsMTAgQEAKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgX29zLm1rZGlyKGZpbGUsIDBvNzAwKQogICAgICAgICAgICAgcmV0dXJuIGZpbGUKLSAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKLSAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gX2Vycm5vLkVFWElTVDoKLSAgICAgICAgICAgICAgICBjb250aW51ZSAjIHRyeSBhZ2FpbgotICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgZXhjZXB0IEZpbGVFeGlzdHNFcnJvcjoKKyAgICAgICAgICAgIGNvbnRpbnVlICAgICMgdHJ5IGFnYWluCiAKLSAgICByYWlzZSBJT0Vycm9yKF9lcnJuby5FRVhJU1QsICJObyB1c2FibGUgdGVtcG9yYXJ5IGRpcmVjdG9yeSBuYW1lIGZvdW5kIikKKyAgICByYWlzZSBGaWxlRXhpc3RzRXJyb3IoIk5vIHVzYWJsZSB0ZW1wb3JhcnkgZGlyZWN0b3J5IG5hbWUgZm91bmQiKQogCiBkZWYgbWt0ZW1wKHN1ZmZpeD0iIiwgcHJlZml4PXRlbXBsYXRlLCBkaXI9Tm9uZSk6CiAgICAgIiIiVXNlci1jYWxsYWJsZSBmdW5jdGlvbiB0byByZXR1cm4gYSB1bmlxdWUgdGVtcG9yYXJ5IGZpbGUgbmFtZS4gIFRoZQpAQCAtMzM5LDcgKzMzMCw3IEBACiAgICAgICAgIGlmIG5vdCBfZXhpc3RzKGZpbGUpOgogICAgICAgICAgICAgcmV0dXJuIGZpbGUKIAotICAgIHJhaXNlIElPRXJyb3IoX2Vycm5vLkVFWElTVCwgIk5vIHVzYWJsZSB0ZW1wb3JhcnkgZmlsZW5hbWUgZm91bmQiKQorICAgIHJhaXNlIEZpbGVFeGlzdHNFcnJvcigiTm8gdXNhYmxlIHRlbXBvcmFyeSBmaWxlbmFtZSBmb3VuZCIpCiAKIAogY2xhc3MgX1RlbXBvcmFyeUZpbGVXcmFwcGVyOgpAQCAtNTkyLDggKzU4MywxMyBAQAogICAgIGRlZiB0ZWxsKHNlbGYpOgogICAgICAgICByZXR1cm4gc2VsZi5fZmlsZS50ZWxsKCkKIAotICAgIGRlZiB0cnVuY2F0ZShzZWxmKToKLSAgICAgICAgc2VsZi5fZmlsZS50cnVuY2F0ZSgpCisgICAgZGVmIHRydW5jYXRlKHNlbGYsIHNpemU9Tm9uZSk6CisgICAgICAgIGlmIHNpemUgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuX2ZpbGUudHJ1bmNhdGUoKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgaWYgc2l6ZSA+IHNlbGYuX21heF9zaXplOgorICAgICAgICAgICAgICAgIHNlbGYucm9sbG92ZXIoKQorICAgICAgICAgICAgc2VsZi5fZmlsZS50cnVuY2F0ZShzaXplKQogCiAgICAgZGVmIHdyaXRlKHNlbGYsIHMpOgogICAgICAgICBmaWxlID0gc2VsZi5fZmlsZQpAQCAtNjY5LDcgKzY2NSw3IEBACiAgICAgX2lzbGluayA9IHN0YXRpY21ldGhvZChfb3MucGF0aC5pc2xpbmspCiAgICAgX3JlbW92ZSA9IHN0YXRpY21ldGhvZChfb3MucmVtb3ZlKQogICAgIF9ybWRpciA9IHN0YXRpY21ldGhvZChfb3Mucm1kaXIpCi0gICAgX29zX2Vycm9yID0gX29zLmVycm9yCisgICAgX29zX2Vycm9yID0gT1NFcnJvcgogICAgIF93YXJuID0gX3dhcm5pbmdzLndhcm4KIAogICAgIGRlZiBfcm10cmVlKHNlbGYsIHBhdGgpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvYnVmZmVyX3Rlc3RzLnB5IGIvTGliL3Rlc3QvYnVmZmVyX3Rlc3RzLnB5CmluZGV4IDZkMjBmN2QuLmNmNTRjMjggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L2J1ZmZlcl90ZXN0cy5weQorKysgYi9MaWIvdGVzdC9idWZmZXJfdGVzdHMucHkKQEAgLTIwMCw3ICsyMDAsMTMgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLm1hcnNoYWwoYidhYmNcbmRlZlxyXG5naGlcblxyJykuc3BsaXRsaW5lcygpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFtiJycsIGInYWJjJywgYidkZWYnLCBiJ2doaScsIGInJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5tYXJzaGFsKGInXG5hYmNcbmRlZlxyXG5naGlcblxyJykuc3BsaXRsaW5lcygpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFtiJycsIGInYWJjJywgYidkZWYnLCBiJ2doaScsIGInJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5tYXJzaGFsKGInXG5hYmNcbmRlZlxyXG5naGlcblxyJykuc3BsaXRsaW5lcyhGYWxzZSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW2InXG4nLCBiJ2FiY1xuJywgYidkZWZcclxuJywgYidnaGlcbicsIGInXHInXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLm1hcnNoYWwoYidcbmFiY1xuZGVmXHJcbmdoaVxuXHInKS5zcGxpdGxpbmVzKDEpKQorICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYubWFyc2hhbChiJ1xuYWJjXG5kZWZcclxuZ2hpXG5ccicpLnNwbGl0bGluZXMoVHJ1ZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW2InJywgYidhYmMnLCBiJ2RlZicsIGInZ2hpJywgYicnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLm1hcnNoYWwoYidcbmFiY1xuZGVmXHJcbmdoaVxuXHInKS5zcGxpdGxpbmVzKGtlZXBlbmRzPUZhbHNlKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbYidcbicsIGInYWJjXG4nLCBiJ2RlZlxyXG4nLCBiJ2doaVxuJywgYidcciddLAorICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYubWFyc2hhbChiJ1xuYWJjXG5kZWZcclxuZ2hpXG5ccicpLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkpCiAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLm1hcnNoYWwoYidhYmMnKS5zcGxpdGxpbmVzLCA0MiwgNDIpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9jcmFzaGVycy9SRUFETUUgYi9MaWIvdGVzdC9jcmFzaGVycy9SRUFETUUKaW5kZXggMmE3M2UxYi4uMDI1OWEwNiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvY3Jhc2hlcnMvUkVBRE1FCisrKyBiL0xpYi90ZXN0L2NyYXNoZXJzL1JFQURNRQpAQCAtMTQsMyArMTQsNyBAQAogT25jZSB0aGUgY3Jhc2ggaXMgZml4ZWQsIHRoZSB0ZXN0IGNhc2Ugc2hvdWxkIGJlIG1vdmVkIGludG8gYW4gYXBwcm9wcmlhdGUgdGVzdAogKGV2ZW4gaWYgaXQgd2FzIG9yaWdpbmFsbHkgZnJvbSB0aGUgdGVzdCBzdWl0ZSkuICBUaGlzIGVuc3VyZXMgdGhlIHJlZ3Jlc3Npb24KIGRvZXNuJ3QgaGFwcGVuIGFnYWluLiAgQW5kIGlmIGl0IGRvZXMsIGl0IHNob3VsZCBiZSBlYXNpZXIgdG8gdHJhY2sgZG93bi4KKworQWxzbyBzZWUgTGliL3Rlc3RfY3Jhc2hlcnMucHkgd2hpY2ggZXhlcmNpc2VzIHRoZSBjcmFzaGVycyBpbiB0aGlzIGRpcmVjdG9yeS4KK0luIHBhcnRpY3VsYXIsIG1ha2Ugc3VyZSB0byBhZGQgYW55IG5ldyBpbmZpbml0ZSBsb29wIGNyYXNoZXJzIHRvIHRoZSBibGFjaworbGlzdCBzbyBpdCBkb2Vzbid0IHRyeSB0byBydW4gdGhlbS4KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2NyYXNoZXJzL2NvbXBpbGVyX3JlY3Vyc2lvbi5weSBiL0xpYi90ZXN0L2NyYXNoZXJzL2NvbXBpbGVyX3JlY3Vyc2lvbi5weQppbmRleCA0OTU0YmRkLi4zMWYyOGE5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC9jcmFzaGVycy9jb21waWxlcl9yZWN1cnNpb24ucHkKKysrIGIvTGliL3Rlc3QvY3Jhc2hlcnMvY29tcGlsZXJfcmVjdXJzaW9uLnB5CkBAIC0xLDUgKzEsMTMgQEAKICIiIgotVGhlIGNvbXBpbGVyICg+PSAyLjUpIHJlY3Vyc2VzIGhhcHBpbHkuCitUaGUgY29tcGlsZXIgKD49IDIuNSkgcmVjdXJzZXMgaGFwcGlseSB1bnRpbCBpdCBibG93cyB0aGUgc3RhY2suCisKK1JlY29yZGVkIG9uIHRoZSB0cmFja2VyIGFzIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWUxMTM4MwogIiIiCiAKLWNvbXBpbGUoJygpJyo5Kio1LCAnPycsICdleGVjJykKKyMgVGhlIHZhcmlhbnQgYmVsb3cgYmxvd3MgdXAgaW4gY29tcGlsZXJfY2FsbCwgYnV0IHRoZXJlIGFyZSBhc3NvcnRlZAorIyBvdGhlciB2YXJpYXRpb25zIHRoYXQgYmxvdyB1cCBpbiBvdGhlciBmdW5jdGlvbnMKKyMgZS5nLiAnMSonKjEwKio1KycxJyB3aWxsIGRpZSBpbiBjb21waWxlcl92aXNpdF9leHByCisKKyMgVGhlIGV4YWN0IGxpbWl0IHRvIGRlc3Ryb3kgdGhlIHN0YWNrIHdpbGwgdmFyeSBieSBwbGF0Zm9ybQorIyBidXQgMTBNIHNob3VsZCBkbyB0aGUgdHJpY2sgZXZlbiB3aXRoIGh1Z2Ugc3RhY2sgYWxsb2NhdGlvbnMKK2NvbXBpbGUoJygpJyoxMCoqNywgJz8nLCAnZXhlYycpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9kYXRldGltZXRlc3Rlci5weSBiL0xpYi90ZXN0L2RhdGV0aW1ldGVzdGVyLnB5CmluZGV4IDM4ZjNiOGYuLjg1MDM2YWEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L2RhdGV0aW1ldGVzdGVyLnB5CisrKyBiL0xpYi90ZXN0L2RhdGV0aW1ldGVzdGVyLnB5CkBAIC0xMjg5LDEyICsxMjg5LDE4IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLnRoZWNsYXNzLm1pbikKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYudGhlY2xhc3MubWF4KQogCi0gICAgZGVmIHRlc3Rfc3RyZnRpbWVfb3V0X29mX3JhbmdlKHNlbGYpOgotICAgICAgICAjIEZvciBuYXN0eSB0ZWNobmljYWwgcmVhc29ucywgd2UgY2FuJ3QgaGFuZGxlIHllYXJzIGJlZm9yZSAxMDAwLgotICAgICAgICBjbHMgPSBzZWxmLnRoZWNsYXNzCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2xzKDEwMDAsIDEsIDEpLnN0cmZ0aW1lKCIlWSIpLCAiMTAwMCIpCi0gICAgICAgIGZvciB5IGluIDEsIDQ5LCA1MSwgOTksIDEwMCwgOTk5OgotICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgY2xzKHksIDEsIDEpLnN0cmZ0aW1lLCAiJVkiKQorICAgIGRlZiB0ZXN0X3N0cmZ0aW1lX3kyayhzZWxmKToKKyAgICAgICAgZm9yIHkgaW4gKDEsIDQ5LCA3MCwgOTksIDEwMCwgOTk5LCAxMDAwLCAxOTcwKToKKyAgICAgICAgICAgIGQgPSBzZWxmLnRoZWNsYXNzKHksIDEsIDEpCisgICAgICAgICAgICAjIElzc3VlIDEzMzA1OiAgRm9yIHllYXJzIDwgMTAwMCwgdGhlIHZhbHVlIGlzIG5vdCBhbHdheXMKKyAgICAgICAgICAgICMgcGFkZGVkIHRvIDQgZGlnaXRzIGFjcm9zcyBwbGF0Zm9ybXMuICBUaGUgQyBzdGFuZGFyZAorICAgICAgICAgICAgIyBhc3N1bWVzIHllYXIgPj0gMTkwMCwgc28gaXQgZG9lcyBub3Qgc3BlY2lmeSB0aGUgbnVtYmVyCisgICAgICAgICAgICAjIG9mIGRpZ2l0cy4KKyAgICAgICAgICAgIGlmIGQuc3RyZnRpbWUoIiVZIikgIT0gJyUwNGQnICUgeToKKyAgICAgICAgICAgICAgICAjIFllYXIgNDIgcmV0dXJucyAnNDInLCBub3QgcGFkZGVkCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkLnN0cmZ0aW1lKCIlWSIpLCAnJWQnICUgeSkKKyAgICAgICAgICAgICAgICAjICcwMDQyJyBpcyBvYnRhaW5lZCBhbnl3YXkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGQuc3RyZnRpbWUoIiU0WSIpLCAnJTA0ZCcgJSB5KQogCiAgICAgZGVmIHRlc3RfcmVwbGFjZShzZWxmKToKICAgICAgICAgY2xzID0gc2VsZi50aGVjbGFzcwpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvZGVjaW1hbHRlc3RkYXRhL2V4dHJhLmRlY1Rlc3QgYi9MaWIvdGVzdC9kZWNpbWFsdGVzdGRhdGEvZXh0cmEuZGVjVGVzdAppbmRleCBmZThiNzdhLi5iNjMwZDhlIDEwMDY0NAotLS0gYS9MaWIvdGVzdC9kZWNpbWFsdGVzdGRhdGEvZXh0cmEuZGVjVGVzdAorKysgYi9MaWIvdGVzdC9kZWNpbWFsdGVzdGRhdGEvZXh0cmEuZGVjVGVzdApAQCAtMjIyLDEyICsyMjIsMjUgQEAKIGV4dHIxNzAxIHBvd2VyIDEwMC4wIC01NTcuNzFlLTc0Mjg4ODg4OCAtPiAxLjAwMDAwMDAwMDAwMDAwMCBJbmV4YWN0IFJvdW5kZWQKIGV4dHIxNzAyIHBvd2VyIDEwIDFlLTEwMCAtPiAxLjAwMDAwMDAwMDAwMDAwMCBJbmV4YWN0IFJvdW5kZWQKIAorLS0gQW5vdGhlciBvbmUgKHNlZSBpc3N1ZSAjMTIwODApLiAgVGhhbmtzIGFnYWluIHRvIFN0ZWZhbiBLcmFoLgorZXh0cjE3MDMgcG93ZXIgNCAtMS4yZS05OTk5OTk5OTkgLT4gMS4wMDAwMDAwMDAwMDAwMDAgSW5leGFjdCBSb3VuZGVkCisKIC0tIEEgY291cGxlIG9mIGludGVyZXN0aW5nIGV4YWN0IGNhc2VzIGZvciBwb3dlci4gIE5vdGUgdGhhdCB0aGUgc3BlY2lmaWNhdGlvbgogLS0gcmVxdWlyZXMgdGhlc2UgdG8gYmUgcmVwb3J0ZWQgYXMgSW5leGFjdC4KIGV4dHIxNzEwIHBvd2VyIDFlMzc1IDU2ZS0zIC0+IDEuMDAwMDAwMDAwMDAwMDAwRSsyMSBJbmV4YWN0IFJvdW5kZWQKIGV4dHIxNzExIHBvd2VyIDEwMDAwIDAuNzUgLT4gMTAwMC4wMDAwMDAwMDAwMDAgSW5leGFjdCBSb3VuZGVkCiBleHRyMTcxMiBwb3dlciAxZS0yNCAwLjg3NSAtPiAxLjAwMDAwMDAwMDAwMDAwMEUtMjEgSW5leGFjdCBSb3VuZGVkCiAKKy0tIFNvbWUgbW9yZSBleGFjdCBjYXNlcywgZXhlcmNpc2luZyBwb3dlciB3aXRoIG5lZ2F0aXZlIHNlY29uZCBhcmd1bWVudC4KK2V4dHIxNzIwIHBvd2VyIDQwMCAtMC41IC0+IDAuMDUwMDAwMDAwMDAwMDAwMDAgSW5leGFjdCBSb3VuZGVkCitleHRyMTcyMSBwb3dlciA0MDk2IC0wLjc1IC0+IDAuMDAxOTUzMTI1MDAwMDAwMDAwIEluZXhhY3QgUm91bmRlZAorZXh0cjE3MjIgcG93ZXIgNjI1ZTQgLTAuMjUgLT4gMC4wMjAwMDAwMDAwMDAwMDAwMCBJbmV4YWN0IFJvdW5kZWQKKworLS0gTm9uZXhhY3QgY2FzZXMsIHRvIGV4ZXJjaXNlIHNvbWUgb2YgdGhlIGVhcmx5IGV4aXQgY29uZGl0aW9ucyBmcm9tCistLSBfcG93ZXJfZXhhY3QuCitleHRyMTczMCBwb3dlciAyMDQ4IC0wLjc1IC0+IDAuMDAzMjg0NzUxNjIyMDg0ODIyIEluZXhhY3QgUm91bmRlZAorCisKIC0tIFRlc3RzIGZvciB0aGUgaXNfKiBib29sZWFuIG9wZXJhdGlvbnMKIHByZWNpc2lvbjogOQogbWF4RXhwb25lbnQ6IDk5OQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvZGg1MTIucGVtIGIvTGliL3Rlc3QvZGg1MTIucGVtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwMGQxNmMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC9kaDUxMi5wZW0KQEAgLTAsMCArMSw5IEBACistLS0tLUJFR0lOIERIIFBBUkFNRVRFUlMtLS0tLQorTUVZQ1FRRDFLdjg4NGJFcFFCZ1JqWHlFcHdweTFvYkVBeG5JQnlsNnlwVU0yWmFmcTlBS1VKc0NSdE1JUFdhaworWFVHZm5IeTlpVXNpR1NhNnE2SmV3MVhwS2dWZkFnRUMKKy0tLS0tRU5EIERIIFBBUkFNRVRFUlMtLS0tLQorCitUaGVzZSBhcmUgdGhlIDUxMiBiaXQgREggcGFyYW1ldGVycyBmcm9tICJBc3NpZ25lZCBOdW1iZXIgZm9yIFNLSVAgUHJvdG9jb2xzIgorKGh0dHA6Ly93d3cuc2tpcC12cG4ub3JnL3NwZWMvbnVtYmVycy5odG1sKS4KK1NlZSB0aGVyZSBmb3IgaG93IHRoZXkgd2VyZSBnZW5lcmF0ZWQuCitOb3RlIHRoYXQgZyBpcyBub3QgYSBnZW5lcmF0b3IsIGJ1dCB0aGlzIGlzIG5vdCBhIHByb2JsZW0gc2luY2UgcCBpcyBhIHNhZmUgcHJpbWUuCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9leGNlcHRpb25faGllcmFyY2h5LnR4dCBiL0xpYi90ZXN0L2V4Y2VwdGlvbl9oaWVyYXJjaHkudHh0CmluZGV4IDUwMzdiMzMuLjFjMWY2OWYgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L2V4Y2VwdGlvbl9oaWVyYXJjaHkudHh0CisrKyBiL0xpYi90ZXN0L2V4Y2VwdGlvbl9oaWVyYXJjaHkudHh0CkBAIC0xMSwxMSArMTEsNiBAQAogICAgICAgKy0tIEFzc2VydGlvbkVycm9yCiAgICAgICArLS0gQXR0cmlidXRlRXJyb3IKICAgICAgICstLSBCdWZmZXJFcnJvcgotICAgICAgKy0tIEVudmlyb25tZW50RXJyb3IKLSAgICAgIHwgICAgKy0tIElPRXJyb3IKLSAgICAgIHwgICAgKy0tIE9TRXJyb3IKLSAgICAgIHwgICAgICAgICArLS0gV2luZG93c0Vycm9yIChXaW5kb3dzKQotICAgICAgfCAgICAgICAgICstLSBWTVNFcnJvciAoVk1TKQogICAgICAgKy0tIEVPRkVycm9yCiAgICAgICArLS0gSW1wb3J0RXJyb3IKICAgICAgICstLSBMb29rdXBFcnJvcgpAQCAtMjQsNiArMTksMjIgQEAKICAgICAgICstLSBNZW1vcnlFcnJvcgogICAgICAgKy0tIE5hbWVFcnJvcgogICAgICAgfCAgICArLS0gVW5ib3VuZExvY2FsRXJyb3IKKyAgICAgICstLSBPU0Vycm9yCisgICAgICB8ICAgICstLSBCbG9ja2luZ0lPRXJyb3IKKyAgICAgIHwgICAgKy0tIENoaWxkUHJvY2Vzc0Vycm9yCisgICAgICB8ICAgICstLSBDb25uZWN0aW9uRXJyb3IKKyAgICAgIHwgICAgfCAgICArLS0gQnJva2VuUGlwZUVycm9yCisgICAgICB8ICAgIHwgICAgKy0tIENvbm5lY3Rpb25BYm9ydGVkRXJyb3IKKyAgICAgIHwgICAgfCAgICArLS0gQ29ubmVjdGlvblJlZnVzZWRFcnJvcgorICAgICAgfCAgICB8ICAgICstLSBDb25uZWN0aW9uUmVzZXRFcnJvcgorICAgICAgfCAgICArLS0gRmlsZUV4aXN0c0Vycm9yCisgICAgICB8ICAgICstLSBGaWxlTm90Rm91bmRFcnJvcgorICAgICAgfCAgICArLS0gSW50ZXJydXB0ZWRFcnJvcgorICAgICAgfCAgICArLS0gSXNBRGlyZWN0b3J5RXJyb3IKKyAgICAgIHwgICAgKy0tIE5vdEFEaXJlY3RvcnlFcnJvcgorICAgICAgfCAgICArLS0gUGVybWlzc2lvbkVycm9yCisgICAgICB8ICAgICstLSBQcm9jZXNzTG9va3VwRXJyb3IKKyAgICAgIHwgICAgKy0tIFRpbWVvdXRFcnJvcgogICAgICAgKy0tIFJlZmVyZW5jZUVycm9yCiAgICAgICArLS0gUnVudGltZUVycm9yCiAgICAgICB8ICAgICstLSBOb3RJbXBsZW1lbnRlZEVycm9yCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9mb3JrX3dhaXQucHkgYi9MaWIvdGVzdC9mb3JrX3dhaXQucHkKaW5kZXggMWNhYWIxYy4uODg1MjdkZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvZm9ya193YWl0LnB5CisrKyBiL0xpYi90ZXN0L2Zvcmtfd2FpdC5weQpAQCAtNDMsNiArNDMsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNwaWQsIGNwaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RhdHVzLCAwLCAiY2F1c2UgPSAlZCwgZXhpdCA9ICVkIiAlIChzdGF0dXMmMHhmZiwgc3RhdHVzPj44KSkKIAorICAgIEBzdXBwb3J0LnJlYXBfdGhyZWFkcwogICAgIGRlZiB0ZXN0X3dhaXQoc2VsZik6CiAgICAgICAgIGZvciBpIGluIHJhbmdlKE5VTV9USFJFQURTKToKICAgICAgICAgICAgIF90aHJlYWQuc3RhcnRfbmV3KHNlbGYuZiwgKGksKSkKQEAgLTY5LDcgKzcwLDggQEAKICAgICAgICAgICAgIG9zLl9leGl0KG4pCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAjIFBhcmVudAotICAgICAgICAgICAgc2VsZi53YWl0X2ltcGwoY3BpZCkKLSAgICAgICAgICAgICMgVGVsbCB0aHJlYWRzIHRvIGRpZQotICAgICAgICAgICAgc2VsZi5zdG9wID0gMQotICAgICAgICAgICAgdGltZS5zbGVlcCgyKlNIT1JUU0xFRVApICMgV2FpdCBmb3IgdGhyZWFkcyB0byBkaWUKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzZWxmLndhaXRfaW1wbChjcGlkKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICAjIFRlbGwgdGhyZWFkcyB0byBkaWUKKyAgICAgICAgICAgICAgICBzZWxmLnN0b3AgPSAxCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2Z1dHVyZTEucHkgYi9MaWIvdGVzdC9mdXR1cmVfdGVzdDEucHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi90ZXN0L3Rlc3RfZnV0dXJlMS5weQpyZW5hbWUgdG8gTGliL3Rlc3QvZnV0dXJlX3Rlc3QxLnB5CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2Z1dHVyZTIucHkgYi9MaWIvdGVzdC9mdXR1cmVfdGVzdDIucHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi90ZXN0L3Rlc3RfZnV0dXJlMi5weQpyZW5hbWUgdG8gTGliL3Rlc3QvZnV0dXJlX3Rlc3QyLnB5CmRpZmYgLS1naXQgYS9MaWIvdGVzdC9qc29uX3Rlc3RzL3Rlc3RfZHVtcC5weSBiL0xpYi90ZXN0L2pzb25fdGVzdHMvdGVzdF9kdW1wLnB5CmluZGV4IDA4M2MxMWYuLjRiMzM4NmYgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L2pzb25fdGVzdHMvdGVzdF9kdW1wLnB5CisrKyBiL0xpYi90ZXN0L2pzb25fdGVzdHMvdGVzdF9kdW1wLnB5CkBAIC0xLDYgKzEsNyBAQAogZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KIGZyb20gdGVzdC5qc29uX3Rlc3RzIGltcG9ydCBQeVRlc3QsIENUZXN0CiAKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBiaWdtZW10ZXN0LCBfMUcKIAogY2xhc3MgVGVzdER1bXA6CiAgICAgZGVmIHRlc3RfZHVtcChzZWxmKToKQEAgLTIxLDQgKzIyLDIwIEBACiAKIAogY2xhc3MgVGVzdFB5RHVtcChUZXN0RHVtcCwgUHlUZXN0KTogcGFzcwotY2xhc3MgVGVzdENEdW1wKFRlc3REdW1wLCBDVGVzdCk6IHBhc3MKKworY2xhc3MgVGVzdENEdW1wKFRlc3REdW1wLCBDVGVzdCk6CisKKyAgICAjIFRoZSBzaXplIHJlcXVpcmVtZW50IGhlcmUgaXMgaG9wZWZ1bGx5IG92ZXItZXN0aW1hdGVkIChhY3R1YWwKKyAgICAjIG1lbW9yeSBjb25zdW1wdGlvbiBkZXBlbmRpbmcgb24gaW1wbGVtZW50YXRpb24gZGV0YWlscywgYW5kIGFsc28KKyAgICAjIHN5c3RlbSBtZW1vcnkgbWFuYWdlbWVudCwgc2luY2UgdGhpcyBtYXkgYWxsb2NhdGUgYSBsb3Qgb2YKKyAgICAjIHNtYWxsIG9iamVjdHMpLgorCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMUcsIG1lbXVzZT0xKQorICAgIGRlZiB0ZXN0X2xhcmdlX2xpc3Qoc2VsZiwgc2l6ZSk6CisgICAgICAgIE4gPSBpbnQoMzAgKiAxMDI0ICogMTAyNCAqIChzaXplIC8gXzFHKSkKKyAgICAgICAgbCA9IFsxXSAqIE4KKyAgICAgICAgZW5jb2RlZCA9IHNlbGYuZHVtcHMobCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oZW5jb2RlZCksIE4gKiAzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVuY29kZWRbOjFdLCAiWyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW5jb2RlZFstMjpdLCAiMV0iKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVuY29kZWRbMTotMl0sICIxLCAiICogKE4gLSAxKSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2pzb25fdGVzdHMvdGVzdF9zY2Fuc3RyaW5nLnB5IGIvTGliL3Rlc3QvanNvbl90ZXN0cy90ZXN0X3NjYW5zdHJpbmcucHkKaW5kZXggZjgyY2RlZS4uNDI2YzhkZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvanNvbl90ZXN0cy90ZXN0X3NjYW5zdHJpbmcucHkKKysrIGIvTGliL3Rlc3QvanNvbl90ZXN0cy90ZXN0X3NjYW5zdHJpbmcucHkKQEAgLTksMTQgKzksOSBAQAogICAgICAgICAgICAgc2NhbnN0cmluZygnInpcXHVkODM0XFx1ZGQyMHgiJywgMSwgVHJ1ZSksCiAgICAgICAgICAgICAoJ3pcVTAwMDFkMTIweCcsIDE2KSkKIAotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA9PSA2NTUzNToKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICAgICAgc2NhbnN0cmluZygnInpcVTAwMDFkMTIweCInLCAxLCBUcnVlKSwKLSAgICAgICAgICAgICAgICAoJ3pcVTAwMDFkMTIweCcsIDYpKQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKLSAgICAgICAgICAgICAgICBzY2Fuc3RyaW5nKCcielxVMDAwMWQxMjB4IicsIDEsIFRydWUpLAotICAgICAgICAgICAgICAgICgnelxVMDAwMWQxMjB4JywgNSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBzY2Fuc3RyaW5nKCcielxVMDAwMWQxMjB4IicsIDEsIFRydWUpLAorICAgICAgICAgICAgKCd6XFUwMDAxZDEyMHgnLCA1KSkKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAgICAgICAgc2NhbnN0cmluZygnIlxcdTAwN2IiJywgMSwgVHJ1ZSksCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9rZXljZXJ0LnBhc3N3ZC5wZW0gYi9MaWIvdGVzdC9rZXljZXJ0LnBhc3N3ZC5wZW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTkwNTc0OAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L2tleWNlcnQucGFzc3dkLnBlbQpAQCAtMCwwICsxLDMzIEBACistLS0tLUJFR0lOIFJTQSBQUklWQVRFIEtFWS0tLS0tCitQcm9jLVR5cGU6IDQsRU5DUllQVEVECitERUstSW5mbzogREVTLUVERTMtQ0JDLDFBOEQ5RDJBMDJFQzY5OEEKKwora0pZYmZaOEwwc2ZlOU90eTNndzBhbG9Oblk1RThmZWdSZlFMWmxOb3hUbDZqTnQwbkl3SThrREozNkNaZ1I5YwordTNGREptL0txcmZVb3o4dlcrcUVuV2hTRzdRUFgyd1dHUEhkNEs5NFl6L0ZnclJ6WjBEb0s3WHhYcTlnT3RWQQorQVZHUWhuejMycCs2V2hmR3NDcjlBclhFd1JaclRrL0Z2ekVQYVU1Zkhjb1Nrck5WQUdYOElwU1ZrU0R3RURRcgorR3YxNytjZms5OVVWMU9DemE2eUtIb0ZrVHRyQytQWlU3MUxvbUJhYml2UzJPYzRCOWhZdVNSMmhGMDF3VEhQKworWWxXTmFnWk9PVnROejRvS0s5eDllTlFwbWZRWFF2UFBUZnVzZXhLSWJLZlpyTXZKb3hjbTFnZmNaMEgvd0s2UAorNndtWFNHMzVxTU9PenRDWk50cGVyanMxd3pFQlh6bnlLOFFtTGNBSkJqa2ZhckFCSlg5dkJFelpWME9VS2h5Kworbm9PUkZ3SFRsbHBoYm15ZExodTZlaExVWk1IUGh6QVM1VU43c3J0cFNOODFlZXJETXkwUk1VQXdBNy9Qb2ZYMQorOTRNZTg1UThqUDBQQzlFVGRzSmNQcUx6QVBFVEVZdTBFTGV3S1JjcmR5V2krdGxMRnJwRTVLVC9zNWVjYmw5bAorN0I2MVU0S2ZkMVBJWGMvc2lJTmhVM0EzYllLKzg0NVl5VUFyVU9uS2Yxa0VveDdwMVJwRDd5RnFWVDA0bFJUbworY2liTktBVEJ1c1hTdUJycDJHNkdOdWhXRU9TYWZXQ0tKUUF6Z0NZSXA2WlRWMmtoaE1VR3BwYy8ySDNDRjZjTworelgwS3RsUFZaQzdoTGtCNkhUOFN4WVV3RjF6cVdZNysvWFBQZGMzN01lRVo4N1EzVXVad3FPUkxZK1owaHBndAorTDVKWEJDb2tsWmhDQWFOMkdxd0ZMWHRHaVJTUkZHWTd4WEloYkRUbEU2NVd2MVdHR2dETE1LR0UxZ096M3lBbworMmpqRzEreUFISlVkRTY5WFRGSFNxU2t2YWxvQTFXMDNMZE1YWjlWdVFKL3lTWENpZTZBQkFRPT0KKy0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCistLS0tLUJFR0lOIENFUlRJRklDQVRFLS0tLS0KK01JSUNWRENDQWIyZ0F3SUJBZ0lKQU5mSE9Ca1pyOEpPTUEwR0NTcUdTSWIzRFFFQkJRVUFNRjh4Q3pBSkJnTlYKK0JBWVRBbGhaTVJjd0ZRWURWUVFIRXc1RFlYTjBiR1VnUVc1MGFISmhlREVqTUNFR0ExVUVDaE1hVUhsMGFHOXUKK0lGTnZablIzWVhKbElFWnZkVzVrWVhScGIyNHhFakFRQmdOVkJBTVRDV3h2WTJGc2FHOXpkREFlRncweE1ERXcKK01EZ3lNekF4TlRaYUZ3MHlNREV3TURVeU16QXhOVFphTUY4eEN6QUpCZ05WQkFZVEFsaFpNUmN3RlFZRFZRUUgKK0V3NURZWE4wYkdVZ1FXNTBhSEpoZURFak1DRUdBMVVFQ2hNYVVIbDBhRzl1SUZOdlpuUjNZWEpsSUVadmRXNWsKK1lYUnBiMjR4RWpBUUJnTlZCQU1UQ1d4dlkyRnNhRzl6ZERDQm56QU5CZ2txaGtpRzl3MEJBUUVGQUFPQmpRQXcKK2dZa0NnWUVBMjF2VDVpc3E3RjY4YW1ZdXVOcFNGbEtEUHJNVUNhNFlXWXFaUnQyT1orLzNOS2FaMnhBaVN3cjcKKzZNclFGNzB0NW5MYlNQcHFFNSs1VnJTNThTWStnL3NYTGlGZDZBcGxIMXdKWndoNzhEb2ZiRllYVWdna3RGTXQKK3BUeWlYOGp0UDY2YmtjUGtEQURBMDg5UkkxVFFSNkNhK243SEZhN2MxZmFiVlY2aTN6a0NBd0VBQWFNWU1CWXcKK0ZBWURWUjBSQkEwd0M0SUpiRzlqWVd4b2IzTjBNQTBHQ1NxR1NJYjNEUUVCQlFVQUE0R0JBSFBjdFFCRVE0d2QKK0JKNitKY3BJcmFvcExuOEJHaGJqTldqNDBtbVJxV0IvTkFXRjZNNW5lN0twR0F1N3RMZUc0aGIxekxhbGRLOEcKK2x4eTJHUFNSRjZMRlM0OGRwRWoySGJNdjJudnY2eHhhbERNSjkrRGljV2dBS1RRNmJjWDJqM0dVa0NSMGcvVDEKK0NSbE5CQUFsdmhLek83Q2xwZjlsMFlLQkVmcmFKQnlYCistLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9saXN0X3Rlc3RzLnB5IGIvTGliL3Rlc3QvbGlzdF90ZXN0cy5weQppbmRleCBiZTA1NGVhLi40MmUxMThiIDEwMDY0NAotLS0gYS9MaWIvdGVzdC9saXN0X3Rlc3RzLnB5CisrKyBiL0xpYi90ZXN0L2xpc3RfdGVzdHMucHkKQEAgLTQxOCw2ICs0MTgsNDcgQEAKIAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHUucmV2ZXJzZSwgNDIpCiAKKyAgICBkZWYgdGVzdF9jbGVhcihzZWxmKToKKyAgICAgICAgdSA9IHNlbGYudHlwZTJ0ZXN0KFsyLCAzLCA0XSkKKyAgICAgICAgdS5jbGVhcigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodSwgW10pCisKKyAgICAgICAgdSA9IHNlbGYudHlwZTJ0ZXN0KFtdKQorICAgICAgICB1LmNsZWFyKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1LCBbXSkKKworICAgICAgICB1ID0gc2VsZi50eXBlMnRlc3QoW10pCisgICAgICAgIHUuYXBwZW5kKDEpCisgICAgICAgIHUuY2xlYXIoKQorICAgICAgICB1LmFwcGVuZCgyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHUsIFsyXSkKKworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHUuY2xlYXIsIE5vbmUpCisKKyAgICBkZWYgdGVzdF9jb3B5KHNlbGYpOgorICAgICAgICB1ID0gc2VsZi50eXBlMnRlc3QoWzEsIDIsIDNdKQorICAgICAgICB2ID0gdS5jb3B5KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBbMSwgMiwgM10pCisKKyAgICAgICAgdSA9IHNlbGYudHlwZTJ0ZXN0KFtdKQorICAgICAgICB2ID0gdS5jb3B5KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCBbXSkKKworICAgICAgICAjIHRlc3QgdGhhdCBpdCdzIGluZGVlZCBhIGNvcHkgYW5kIG5vdCBhIHJlZmVyZW5jZQorICAgICAgICB1ID0gc2VsZi50eXBlMnRlc3QoWydhJywgJ2InXSkKKyAgICAgICAgdiA9IHUuY29weSgpCisgICAgICAgIHYuYXBwZW5kKCdpJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1LCBbJ2EnLCAnYiddKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHYsIHUgKyBbJ2knXSkKKworICAgICAgICAjIHRlc3QgdGhhdCBpdCdzIGEgc2hhbGxvdywgbm90IGEgZGVlcCBjb3B5CisgICAgICAgIHUgPSBzZWxmLnR5cGUydGVzdChbMSwgMiwgWzMsIDRdLCA1XSkKKyAgICAgICAgdiA9IHUuY29weSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodSwgdikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh2WzNdLCB1WzNdKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdS5jb3B5LCBOb25lKQorCiAgICAgZGVmIHRlc3Rfc29ydChzZWxmKToKICAgICAgICAgdSA9IHNlbGYudHlwZTJ0ZXN0KFsxLCAwXSkKICAgICAgICAgdS5zb3J0KCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L2xvY2tfdGVzdHMucHkgYi9MaWIvdGVzdC9sb2NrX3Rlc3RzLnB5CmluZGV4IDA5NGNjN2EuLmQ4OGYzNjQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L2xvY2tfdGVzdHMucHkKKysrIGIvTGliL3Rlc3QvbG9ja190ZXN0cy5weQpAQCAtNCw3ICs0LDcgQEAKIAogaW1wb3J0IHN5cwogaW1wb3J0IHRpbWUKLWZyb20gX3RocmVhZCBpbXBvcnQgc3RhcnRfbmV3X3RocmVhZCwgZ2V0X2lkZW50LCBUSU1FT1VUX01BWAorZnJvbSBfdGhyZWFkIGltcG9ydCBzdGFydF9uZXdfdGhyZWFkLCBUSU1FT1VUX01BWAogaW1wb3J0IHRocmVhZGluZwogaW1wb3J0IHVuaXR0ZXN0CiAKQEAgLTMxLDcgKzMxLDcgQEAKICAgICAgICAgc2VsZi5maW5pc2hlZCA9IFtdCiAgICAgICAgIHNlbGYuX2Nhbl9leGl0ID0gbm90IHdhaXRfYmVmb3JlX2V4aXQKICAgICAgICAgZGVmIHRhc2soKToKLSAgICAgICAgICAgIHRpZCA9IGdldF9pZGVudCgpCisgICAgICAgICAgICB0aWQgPSB0aHJlYWRpbmcuZ2V0X2lkZW50KCkKICAgICAgICAgICAgIHNlbGYuc3RhcnRlZC5hcHBlbmQodGlkKQogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIGYoKQpAQCAtMjQ3LDYgKzI0Nyw3IEBACiAgICAgICAgICMgQ2Fubm90IHJlbGVhc2UgYW4gdW5hY3F1aXJlZCBsb2NrCiAgICAgICAgIGxvY2sgPSBzZWxmLmxvY2t0eXBlKCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBsb2NrLnJlbGVhc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvciwgbG9jay5fcmVsZWFzZV9zYXZlKQogICAgICAgICBsb2NrLmFjcXVpcmUoKQogICAgICAgICBsb2NrLmFjcXVpcmUoKQogICAgICAgICBsb2NrLnJlbGVhc2UoKQpAQCAtMjU0LDYgKzI1NSw3IEBACiAgICAgICAgIGxvY2sucmVsZWFzZSgpCiAgICAgICAgIGxvY2sucmVsZWFzZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvciwgbG9jay5yZWxlYXNlKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIGxvY2suX3JlbGVhc2Vfc2F2ZSkKIAogICAgIGRlZiB0ZXN0X2RpZmZlcmVudF90aHJlYWQoc2VsZik6CiAgICAgICAgICMgQ2Fubm90IHJlbGVhc2UgZnJvbSBhIGRpZmZlcmVudCB0aHJlYWQKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L21haWxjYXAudHh0IGIvTGliL3Rlc3QvbWFpbGNhcC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjYxMTM1ZAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L21haWxjYXAudHh0CkBAIC0wLDAgKzEsMzkgQEAKKyMgTWFpbGNhcCBmaWxlIGZvciB0ZXN0X21haWxjYXA7IGJhc2VkIG9uIFJGQyAxNTI0CisjIFJlZmVycmVkIHRvIGJ5IHRlc3RfbWFpbGNhcC5weQorCisjCisjIFRoaXMgaXMgYSBjb21tZW50LgorIworCithcHBsaWNhdGlvbi9mcmFtZTsgc2hvd2ZyYW1lICVzOyBwcmludD0iY2F0ICVzIHwgbHAiCithcHBsaWNhdGlvbi9wb3N0c2NyaXB0OyBwcy10by10ZXJtaW5hbCAlcztcCisgICAgbmVlZHN0ZXJtaW5hbAorYXBwbGljYXRpb24vcG9zdHNjcmlwdDsgcHMtdG8tdGVybWluYWwgJXM7IFwKKyAgICBjb21wb3NlPWlkcmF3ICVzCithcHBsaWNhdGlvbi94LWR2aTsgeGR2aSAlcworYXBwbGljYXRpb24veC1tb3ZpZTsgbW92aWVwbGF5ZXIgJXM7IGNvbXBvc2U9bW92aWVtYWtlciAlczsgXAorICAgICAgIGRlc2NyaXB0aW9uPSJNb3ZpZSI7IFwKKyAgICAgICB4MTEtYml0bWFwPSIvdXNyL2xpYi9abWFpbC9iaXRtYXBzL21vdmllLnhibSIKK2FwcGxpY2F0aW9uLyo7IGVjaG8gIlRoaXMgaXMgXCIldFwiIGJ1dCBcCisgICAgICAgaXMgNTAgXCUgR3JlZWsgdG8gbWUiIFw7IGNhdCAlczsgY29waW91c291dHB1dAorCithdWRpby9iYXNpYzsgc2hvd2F1ZGlvICVzOyBjb21wb3NlPWF1ZGlvY29tcG9zZSAlczsgZWRpdD1hdWRpb2NvbXBvc2UgJXM7XAorZGVzY3JpcHRpb249IkFuIGF1ZGlvIGZyYWdtZW50IgorYXVkaW8vKiA7IC91c3IvbG9jYWwvYmluL3Nob3dhdWRpbyAldAorCitpbWFnZS9yZ2I7IGRpc3BsYXkgJXMKKyNpbWFnZS9naWY7IGRpc3BsYXkgJXMKK2ltYWdlL3gteHdpbmRvd2R1bXA7IGRpc3BsYXkgJXMKKworIyBUaGUgY29udGludWF0aW9uIGNoYXIgc2hvdWxkbid0IFwKKyMgbWFrZSBhIGRpZmZlcmVuY2UgaW4gYSBjb21tZW50LgorCittZXNzYWdlL2V4dGVybmFsLWJvZHk7IHNob3dleHRlcm5hbCAlcyAle2FjY2Vzcy10eXBlfSAle25hbWV9ICV7c2l0ZX0gXAorICAgICV7ZGlyZWN0b3J5fSAle21vZGV9ICV7c2VydmVyfTsgbmVlZHN0ZXJtaW5hbDsgY29tcG9zZXR5cGVkID0gZXh0Y29tcG9zZSAlczsgXAorICAgIGRlc2NyaXB0aW9uPSJBIHJlZmVyZW5jZSB0byBkYXRhIHN0b3JlZCBpbiBhbiBleHRlcm5hbCBsb2NhdGlvbiIKKwordGV4dC9yaWNodGV4dDsgc2hvd25vbmFzY2lpIGlzby04ODU5LTggLWUgcmljaHRleHQgLXAgJXM7IHRlc3Q9dGVzdCAiYGVjaG8gXAorICAgICV7Y2hhcnNldH0gfCB0ciAnW0EtWl0nICdbYS16XSdgIiAgPSBpc28tODg1OS04OyBjb3Bpb3Vzb3V0cHV0CisKK3ZpZGVvL21wZWc7IG1wZWdfcGxheSAlcwordmlkZW8vKjsgYW5pbWF0ZSAlcwpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvbWF0aF90ZXN0Y2FzZXMudHh0IGIvTGliL3Rlc3QvbWF0aF90ZXN0Y2FzZXMudHh0CmluZGV4IDVlMjQzMzUuLjk1ODUxODggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L21hdGhfdGVzdGNhc2VzLnR4dAorKysgYi9MaWIvdGVzdC9tYXRoX3Rlc3RjYXNlcy50eHQKQEAgLTUxNywzICs1MTcsMTE3IEBACiAKIC0tIHdlYWtlciB2ZXJzaW9uIG9mIGV4cG0xMDMwMgogZXhwbTEwMzA3IGV4cG0xIDcwOS41IC0+IDEuMzU0OTg2MzE5MzE0NjMyOGUrMzA4CisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKy0tIGxvZzI6IGxvZyB0byBiYXNlIDIgLS0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworLS0gc3BlY2lhbCB2YWx1ZXMKK2xvZzIwMDAwIGxvZzIgMC4wIC0+IC1pbmYgICAgICAgICAgICAgICBkaXZpZGUtYnktemVybworbG9nMjAwMDEgbG9nMiAtMC4wIC0+IC1pbmYgICAgICAgICAgICAgIGRpdmlkZS1ieS16ZXJvCitsb2cyMDAwMiBsb2cyIGluZiAtPiBpbmYKK2xvZzIwMDAzIGxvZzIgLWluZiAtPiBuYW4gICAgICAgICAgICAgICBpbnZhbGlkCitsb2cyMDAwNCBsb2cyIG5hbiAtPiBuYW4KKworLS0gZXhhY3QgdmFsdWUgYXQgMS4wCitsb2cyMDAxMCBsb2cyIDEuMCAtPiAwLjAKKworLS0gbmVnYXRpdmVzCitsb2cyMDAyMCBsb2cyIC01ZS0zMjQgLT4gbmFuICAgICAgICAgICAgaW52YWxpZAorbG9nMjAwMjEgbG9nMiAtMS4wIC0+IG5hbiAgICAgICAgICAgICAgIGludmFsaWQKK2xvZzIwMDIyIGxvZzIgLTEuN2UtMzA4IC0+IG5hbiAgICAgICAgICBpbnZhbGlkCisKKy0tIGV4YWN0IHZhbHVlcyBhdCBwb3dlcnMgb2YgMgorbG9nMjAxMDAgbG9nMiAyLjAgLT4gMS4wCitsb2cyMDEwMSBsb2cyIDQuMCAtPiAyLjAKK2xvZzIwMTAyIGxvZzIgOC4wIC0+IDMuMAorbG9nMjAxMDMgbG9nMiAxNi4wIC0+IDQuMAorbG9nMjAxMDQgbG9nMiAzMi4wIC0+IDUuMAorbG9nMjAxMDUgbG9nMiA2NC4wIC0+IDYuMAorbG9nMjAxMDYgbG9nMiAxMjguMCAtPiA3LjAKK2xvZzIwMTA3IGxvZzIgMjU2LjAgLT4gOC4wCitsb2cyMDEwOCBsb2cyIDUxMi4wIC0+IDkuMAorbG9nMjAxMDkgbG9nMiAxMDI0LjAgLT4gMTAuMAorbG9nMjAxMTAgbG9nMiAyMDQ4LjAgLT4gMTEuMAorCitsb2cyMDIwMCBsb2cyIDAuNSAtPiAtMS4wCitsb2cyMDIwMSBsb2cyIDAuMjUgLT4gLTIuMAorbG9nMjAyMDIgbG9nMiAwLjEyNSAtPiAtMy4wCitsb2cyMDIwMyBsb2cyIDAuMDYyNSAtPiAtNC4wCisKKy0tIHZhbHVlcyBjbG9zZSB0byAxLjAKK2xvZzIwMzAwIGxvZzIgMS4wMDAwMDAwMDAwMDAwMDAyIC0+IDMuMjAzNDI2NTAzODE0OTE3MWUtMTYKK2xvZzIwMzAxIGxvZzIgMS4wMDAwMDAwMDAxIC0+IDEuNDQyNjk1MTYwMTg1OTUxNmUtMTAKK2xvZzIwMzAyIGxvZzIgMS4wMDAwMSAtPiAxLjQ0MjY4NzgyNzQ3MTI5OTdlLTUKKworbG9nMjAzMTAgbG9nMiAwLjk5OTk5OTk5OTk5OTk5OTkgLT4gLTEuNjAxNzEzMjUxOTA3NDU4OGUtMTYKK2xvZzIwMzExIGxvZzIgMC45OTk5OTk5OTk5IC0+IC0xLjQ0MjY5NTE2MDMzMDIyMTBlLTEwCitsb2cyMDMxMiBsb2cyIDAuOTk5OTkgLT4gLTEuNDQyNzAyMjU0NDA1NjkyMmUtNQorCistLSB0aW55IHZhbHVlcworbG9nMjA0MDAgbG9nMiA1ZS0zMjQgLT4gLTEwNzQuMAorbG9nMjA0MDEgbG9nMiAxZS0zMjMgLT4gLTEwNzMuMAorbG9nMjA0MDIgbG9nMiAxLjVlLTMyMyAtPiAtMTA3Mi40MTUwMzc0OTkyNzg5Citsb2cyMDQwMyBsb2cyIDJlLTMyMyAtPiAtMTA3Mi4wCisKK2xvZzIwNDEwIGxvZzIgMWUtMzA4IC0+IC0xMDIzLjE1Mzg1MzIyNTMwNzYKK2xvZzIwNDExIGxvZzIgMi4yMjUwNzM4NTg1MDcyMDE0ZS0zMDggLT4gLTEwMjIuMAorbG9nMjA0MTIgbG9nMiA0LjQ1MDE0NzcxNzAxNDQwMjhlLTMwOCAtPiAtMTAyMS4wCitsb2cyMDQxMyBsb2cyIDFlLTMwNyAtPiAtMTAxOS44MzE5MjUxMzA0MjAyCisKKy0tIGh1Z2UgdmFsdWVzCitsb2cyMDUwMCBsb2cyIDEuNzk3NjkzMTM0ODYyMzE1N2UrMzA4IC0+IDEwMjQuMAorbG9nMjA1MDEgbG9nMiAxLjdlKzMwOCAtPiAxMDIzLjkxOTM4Nzk3MTY3MDYKK2xvZzIwNTAyIGxvZzIgOC45ODg0NjU2NzQzMTE1Nzk1ZSszMDcgLT4gMTAyMy4wCisKKy0tIHNlbGVjdGlvbiBvZiByYW5kb20gdmFsdWVzCitsb2cyMDYwMCBsb2cyIC03LjIxNzQzMjQ4NDEwMzk4MzhlKzI4OSAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYwMSBsb2cyIC0yLjg2MTMxOTczNDA4OTYxN2UrMjY1IC0+IG5hbiAgICBpbnZhbGlkCitsb2cyMDYwMiBsb2cyIC00LjM1MDc2NDY4OTQwMDg5NjJlKzI1NyAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYwMyBsb2cyIC02LjY3MTcyNjUzMDc1MjAyMjRlKzIzNCAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYwNCBsb2cyIC0zLjkxMTgwMjM3ODY2MTkyOTRlKzIyOSAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYwNSBsb2cyIC0xLjU0NzgyMjEzMDI1MDUxNjFlKzIwNiAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYwNiBsb2cyIC0xLjQzODA0ODUxMzEzNjQ2MDJlKzIwMCAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYwNyBsb2cyIC0zLjcyMzUxOTg3MzAzODI2NDVlKzE4NSAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYwOCBsb2cyIC0xLjA0NzIyNDIyMzUwOTU3MjRlKzE4NCAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYwOSBsb2cyIC01LjAxNDE3ODE5NTYxNjM4ODRlKzE2MCAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYxMCBsb2cyIC0yLjExNTc5NTgwMzExNjAzMjRlKzEyNCAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYxMSBsb2cyIC03Ljk2Nzc1NTg2MTI1Njc3MThlKzkwIC0+IG5hbiAgICBpbnZhbGlkCitsb2cyMDYxMiBsb2cyIC01LjU1NTM5MDYxOTQwNjM3MzJlKzQ1IC0+IG5hbiAgICBpbnZhbGlkCitsb2cyMDYxMyBsb2cyIC0xNjU3MzkwMDk1MjYwNy45NTMgLT4gbmFuICAgICAgICBpbnZhbGlkCitsb2cyMDYxNCBsb2cyIC0zNzE5ODM3MTAxOS44ODg2MTggLT4gbmFuICAgICAgICBpbnZhbGlkCitsb2cyMDYxNSBsb2cyIC02LjA3MjcxMTUxMjE0MjI2NzRlLTMyIC0+IG5hbiAgICBpbnZhbGlkCitsb2cyMDYxNiBsb2cyIC0yLjU0MDY4NDE2NTY1MjYwNTdlLTM4IC0+IG5hbiAgICBpbnZhbGlkCitsb2cyMDYxNyBsb2cyIC00LjkwNTY3NjY3MDMyNjc2NTdlLTQzIC0+IG5hbiAgICBpbnZhbGlkCitsb2cyMDYxOCBsb2cyIC0yLjE2NDY3ODYwNzUyMjgzMDVlLTcxIC0+IG5hbiAgICBpbnZhbGlkCitsb2cyMDYxOSBsb2cyIC0yLjQ3MDgyNjc5MDQ4ODU3M2UtNzggLT4gbmFuICAgICBpbnZhbGlkCitsb2cyMDYyMCBsb2cyIC0zLjg2NjE3MDkzMDM0ODkwNjRlLTE2NSAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYyMSBsb2cyIC0xLjA1MTY0OTY5NzY2NDk5ODZlLTE4MiAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYyMiBsb2cyIC0xLjU5MzU0NTg2MTQzMTc5OTZlLTI1NSAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYyMyBsb2cyIC0yLjg3NTA5NzcyNjczMzY2NTRlLTI5MyAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYyNCBsb2cyIC03LjYwNzk0NjY3OTQ3MzI1ODVlLTI5NiAtPiBuYW4gICBpbnZhbGlkCitsb2cyMDYyNSBsb2cyIDMuMjA3MzI1MzUzOTk4ODU0NWUtMzA3IC0+IC0xMDE4LjE1MDU1NDQyMDkyMTMKK2xvZzIwNjI2IGxvZzIgMS42NzQ5Mzc4ODU0NzIyNDllLTI0NCAtPiAtODA5LjgwNjM0NzU1NzgzMTI2Citsb2cyMDYyNyBsb2cyIDEuMDkxMTI1OTA0NDkzMTI4M2UtMjE0IC0+IC03MTAuNzY2Nzk0NzIyNzQyMTMKK2xvZzIwNjI4IGxvZzIgMi4wMjc1MzcyNjI0ODA5NzA5ZS0xNTQgLT4gLTUxMC41NTcxOTgxODM4MzI3MgorbG9nMjA2MjkgbG9nMiA3LjM5MjYwODczNjk2MzE4NDFlLTExNSAtPiAtMzc5LjEzNTY0NzM1MzEyMjkyCitsb2cyMDYzMCBsb2cyIDEuMzQ4MDE5ODIwNjM0MjQyM2UtODYgLT4gLTI4NS4yNTQ5NzQ0NTA5NDQzNgorbG9nMjA2MzEgbG9nMiA4Ljk5MjczODQ2NTU3MTk5NDdlLTgzIC0+IC0yNzIuNTUxMjcxMzY0MDE2MzcKK2xvZzIwNjMyIGxvZzIgMy4xNDUyMzk4NzEzNTk3NDg3ZS02MCAtPiAtMTk3LjY2MjUxNTY0NDk2ODc1Citsb2cyMDYzMyBsb2cyIDcuMDcwNjU3MzIxNTQ1NzM1MWUtNTUgLT4gLTE3OS44ODQyMDA4Nzc4MjIxNworbG9nMjA2MzQgbG9nMiAzLjEyNTgyODUzOTA3MzE2NjllLTQ5IC0+IC0xNjEuMTMwMjM4MDA1MDU2NTMKK2xvZzIwNjM1IGxvZzIgOC4yMjUzMDQ2NjI3ODI5OTQyZS00MSAtPiAtMTMzLjE1ODk4Mjc3MzU1ODc5Citsb2cyMDYzNiBsb2cyIDcuODY5MTM2NzM5NzUxOTg5N2UrNDkgLT4gMTY1Ljc1MDY4MjAyNzMyNDE5Citsb2cyMDYzNyBsb2cyIDIuOTkyMDU2MTk4MzkyNTAxM2UrNjQgLT4gMjE0LjE4NDUzNTM0NTczNzU3Citsb2cyMDYzOCBsb2cyIDQuNzgyNzI1NDU1Mzk0Njg0MWUrNzcgLT4gMjU4LjA0NjI5NjI4NDQ1NjczCitsb2cyMDYzOSBsb2cyIDMuMTkwMzU2NjQ5NjQ4MTg2OGUrMTA1IC0+IDM1MC40NzYxNjc2NzQ5MTE2NgorbG9nMjA2NDAgbG9nMiA1LjYxOTUwODI0NDk1MDI0MTllKzExMyAtPiAzNzcuODY4MzE4NjEwMDgyNTAKK2xvZzIwNjQxIGxvZzIgOS45NjI1NjU4MjUwNjUxMDQ3ZSsxMjUgLT4gNDE4LjU1NzUyOTIxMjI4NzUzCitsb2cyMDY0MiBsb2cyIDIuNzM1ODk0NTIyMDk2MTUzMmUrMTQ1IC0+IDQ4My4xMzE1ODYzNjkyMzQxMworbG9nMjA2NDMgbG9nMiAyLjc4NTg0MjM4NzkyNjkzMWUrMTc0IC0+IDU3OS40OTM2MDIxNDg2MDI4MAorbG9nMjA2NDQgbG9nMiAyLjQxNjkxNzI1MDcyNTI3NTFlKzE5MyAtPiA2NDIuNDA1MjkwMzkyODk2NTIKK2xvZzIwNjQ1IGxvZzIgMy4xNjg5MDkxMjA2Mzk1NjMyZSsyMDUgLT4gNjgyLjY1OTI0NTczNzk4Mzk1Citsb2cyMDY0NiBsb2cyIDIuNTM1OTk1NTkyMzY1MzkxZSsyMDggLT4gNjkyLjMwMzU5NTk3NDYwNDYwCitsb2cyMDY0NyBsb2cyIDYuMjAxMTIzNjU2NjA4OTkxNmUrMjMzIC0+IDc3Ni42NDE3NzU3NjczMDkxMworbG9nMjA2NDggbG9nMiAyLjE4NDMyNzQ4MjA2Nzc2MzJlKzI1MyAtPiA4NDEuNTc0OTk3MTcyODk2NDcKK2xvZzIwNjQ5IGxvZzIgOC43NDkzOTMxMDYzNDc0NzkxZSsyOTcgLT4gOTg5Ljc0MTgyNzEzMDczOTgxCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9tb2NrX3NvY2tldC5weSBiL0xpYi90ZXN0L21vY2tfc29ja2V0LnB5CmluZGV4IDgwMzY5MzIuLmQwOWU3OGMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L21vY2tfc29ja2V0LnB5CisrKyBiL0xpYi90ZXN0L21vY2tfc29ja2V0LnB5CkBAIC0xMDYsNyArMTA2LDggQEAKICAgICByZXR1cm4gTW9ja1NvY2tldCgpCiAKIAotZGVmIGNyZWF0ZV9jb25uZWN0aW9uKGFkZHJlc3MsIHRpbWVvdXQ9c29ja2V0X21vZHVsZS5fR0xPQkFMX0RFRkFVTFRfVElNRU9VVCk6CitkZWYgY3JlYXRlX2Nvbm5lY3Rpb24oYWRkcmVzcywgdGltZW91dD1zb2NrZXRfbW9kdWxlLl9HTE9CQUxfREVGQVVMVF9USU1FT1VULAorICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZV9hZGRyZXNzPU5vbmUpOgogICAgIHRyeToKICAgICAgICAgaW50X3BvcnQgPSBpbnQoYWRkcmVzc1sxXSkKICAgICBleGNlcHQgVmFsdWVFcnJvcjoKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3BpY2tsZXRlc3Rlci5weSBiL0xpYi90ZXN0L3BpY2tsZXRlc3Rlci5weQppbmRleCBjYWIwNTIzLi44MzEzMDZmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC9waWNrbGV0ZXN0ZXIucHkKKysrIGIvTGliL3Rlc3QvcGlja2xldGVzdGVyLnB5CkBAIC00LDEwICs0LDExIEBACiBpbXBvcnQgcGlja2xldG9vbHMKIGltcG9ydCBzeXMKIGltcG9ydCBjb3B5cmVnCitpbXBvcnQgd2Vha3JlZgogZnJvbSBodHRwLmNvb2tpZXMgaW1wb3J0IFNpbXBsZUNvb2tpZQogCiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgKAotICAgIFRlc3RGYWlsZWQsIFRFU1RGTiwgcnVuX3dpdGhfbG9jYWxlLAorICAgIFRlc3RGYWlsZWQsIFRFU1RGTiwgcnVuX3dpdGhfbG9jYWxlLCBub190cmFjaW5nLAogICAgIF8yRywgXzRHLCBiaWdtZW10ZXN0LAogICAgICkKIApAQCAtMTgsNyArMTksNyBAQAogIyBraW5kIG9mIG91dGVyIGxvb3AuCiBwcm90b2NvbHMgPSByYW5nZShwaWNrbGUuSElHSEVTVF9QUk9UT0NPTCArIDEpCiAKLWNoYXJhY3Rlcl9zaXplID0gNCBpZiBzeXMubWF4dW5pY29kZSA+IDB4RkZGRiBlbHNlIDIKK2FzY2lpX2NoYXJfc2l6ZSA9IDEKIAogCiAjIFJldHVybiBUcnVlIGlmIG9wY29kZSBjb2RlIGFwcGVhcnMgaW4gdGhlIHBpY2tsZSwgZWxzZSBGYWxzZS4KQEAgLTg3NSw2ICs4NzYsMjUgQEAKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEIoeCksIEIoeSksIGRldGFpbCkKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHguX19kaWN0X18sIHkuX19kaWN0X18sIGRldGFpbCkKIAorICAgIGRlZiB0ZXN0X25ld29ial9wcm94aWVzKHNlbGYpOgorICAgICAgICAjIE5FV09CSiBzaG91bGQgdXNlIHRoZSBfX2NsYXNzX18gcmF0aGVyIHRoYW4gdGhlIHJhdyB0eXBlCisgICAgICAgIGNsYXNzZXMgPSBteWNsYXNzZXNbOl0KKyAgICAgICAgIyBDYW5ub3QgY3JlYXRlIHdlYWtwcm94aWVzIHRvIHRoZXNlIGNsYXNzZXMKKyAgICAgICAgZm9yIGMgaW4gKE15SW50LCBNeVR1cGxlKToKKyAgICAgICAgICAgIGNsYXNzZXMucmVtb3ZlKGMpCisgICAgICAgIGZvciBwcm90byBpbiBwcm90b2NvbHM6CisgICAgICAgICAgICBmb3IgQyBpbiBjbGFzc2VzOgorICAgICAgICAgICAgICAgIEIgPSBDLl9fYmFzZV9fCisgICAgICAgICAgICAgICAgeCA9IEMoQy5zYW1wbGUpCisgICAgICAgICAgICAgICAgeC5mb28gPSA0MgorICAgICAgICAgICAgICAgIHAgPSB3ZWFrcmVmLnByb3h5KHgpCisgICAgICAgICAgICAgICAgcyA9IHNlbGYuZHVtcHMocCwgcHJvdG8pCisgICAgICAgICAgICAgICAgeSA9IHNlbGYubG9hZHMocykKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHR5cGUoeSksIHR5cGUoeCkpICAjIHJhdGhlciB0aGFuIHR5cGUocCkKKyAgICAgICAgICAgICAgICBkZXRhaWwgPSAocHJvdG8sIEMsIEIsIHgsIHksIHR5cGUoeSkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChCKHgpLCBCKHkpLCBkZXRhaWwpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4Ll9fZGljdF9fLCB5Ll9fZGljdF9fLCBkZXRhaWwpCisKICAgICAjIFJlZ2lzdGVyIGEgdHlwZSB3aXRoIGNvcHlyZWcsIHdpdGggZXh0ZW5zaW9uIGNvZGUgZXh0Y29kZS4gIFBpY2tsZQogICAgICMgYW4gb2JqZWN0IG9mIHRoYXQgdHlwZS4gIENoZWNrIHRoYXQgdGhlIHJlc3VsdGluZyBwaWNrbGUgdXNlcyBvcGNvZGUKICAgICAjIChFWFRbMTI0XSkgdW5kZXIgcHJvdG8gMiwgYW5kIG5vdCBpbiBwcm90byAxLgpAQCAtMTAzNSwxMyArMTA1NSwxMyBAQAogICAgICAgICAgICAgeSA9IHNlbGYubG9hZHMocykKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeS5fcmVkdWNlX2NhbGxlZCwgMSkKIAorICAgIEBub190cmFjaW5nCiAgICAgZGVmIHRlc3RfYmFkX2dldGF0dHIoc2VsZik6CiAgICAgICAgIHggPSBCYWRHZXRhdHRyKCkKICAgICAgICAgZm9yIHByb3RvIGluIDAsIDE6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIHNlbGYuZHVtcHMsIHgsIHByb3RvKQogICAgICAgICAjIHByb3RvY29sIDIgZG9uJ3QgcmFpc2UgYSBSdW50aW1lRXJyb3IuCiAgICAgICAgIGQgPSBzZWxmLmR1bXBzKHgsIDIpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvciwgc2VsZi5sb2FkcywgZCkKIAogICAgIGRlZiB0ZXN0X3JlZHVjZV9iYWRfaXRlcmF0b3Ioc2VsZik6CiAgICAgICAgICMgSXNzdWU0MTc2OiBjcmFzaCB3aGVuIDR0aCBhbmQgNXRoIGl0ZW1zIG9mIF9fcmVkdWNlX18oKQpAQCAtMTEzMSw2ICsxMTUxLDE1IEBACiAgICAgICAgIGVtcHR5ID0gc2VsZi5sb2FkcyhiJ1x4ODBceDAzVVx4MDBxXHgwMC4nLCBlbmNvZGluZz0na29pOC1yJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbXB0eSwgJycpCiAKKyAgICBkZWYgdGVzdF9pbnRfcGlja2xpbmdfZWZmaWNpZW5jeShzZWxmKToKKyAgICAgICAgIyBUZXN0IGNvbXBhY2l0eSBvZiBpbnQgcmVwcmVzZW50YXRpb24gKHNlZSBpc3N1ZSAjMTI3NDQpCisgICAgICAgIGZvciBwcm90byBpbiBwcm90b2NvbHM6CisgICAgICAgICAgICBzaXplcyA9IFtsZW4oc2VsZi5kdW1wcygyKipuLCBwcm90bykpIGZvciBuIGluIHJhbmdlKDcwKV0KKyAgICAgICAgICAgICMgdGhlIHNpemUgZnVuY3Rpb24gaXMgbW9ub3RvbmljCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNvcnRlZChzaXplcyksIHNpemVzKQorICAgICAgICAgICAgaWYgcHJvdG8gPj0gMjoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChzaXplc1stMV0sIDE0KQorCiAgICAgZGVmIGNoZWNrX25lZ2F0aXZlXzMyYl9iaW5YWFgoc2VsZiwgZHVtcGVkKToKICAgICAgICAgaWYgc3lzLm1heHNpemUgPiAyKiozMjoKICAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoInRlc3QgaXMgb25seSBtZWFuaW5nZnVsIG9uIDMyLWJpdCBidWlsZHMiKQpAQCAtMTIxMiw3ICsxMjQxLDcgQEAKICAgICAjIEFsbCBwcm90b2NvbHMgdXNlIDEtYnl0ZSBwZXIgcHJpbnRhYmxlIEFTQ0lJIGNoYXJhY3Rlcjsgd2UgYWRkIGFub3RoZXIKICAgICAjIGJ5dGUgYmVjYXVzZSB0aGUgZW5jb2RlZCBmb3JtIGhhcyB0byBiZSBjb3BpZWQgaW50byB0aGUgaW50ZXJuYWwgYnVmZmVyLgogCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcsIG1lbXVzZT0yICsgY2hhcmFjdGVyX3NpemUsIGRyeV9ydW49RmFsc2UpCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcsIG1lbXVzZT0yICsgYXNjaWlfY2hhcl9zaXplLCBkcnlfcnVuPUZhbHNlKQogICAgIGRlZiB0ZXN0X2h1Z2Vfc3RyXzMyYihzZWxmLCBzaXplKToKICAgICAgICAgZGF0YSA9ICJhYmNkIiAqIChzaXplIC8vIDQpCiAgICAgICAgIHRyeToKQEAgLTEyMjksNyArMTI1OCw3IEBACiAgICAgIyBCSU5VTklDT0RFIChwcm90b2NvbHMgMSwgMiBhbmQgMykgY2Fubm90IGNhcnJ5IG1vcmUgdGhhbgogICAgICMgMioqMzIgLSAxIGJ5dGVzIG9mIHV0Zi04IGVuY29kZWQgdW5pY29kZS4KIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzRHLCBtZW11c2U9MSArIGNoYXJhY3Rlcl9zaXplLCBkcnlfcnVuPUZhbHNlKQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzRHLCBtZW11c2U9MSArIGFzY2lpX2NoYXJfc2l6ZSwgZHJ5X3J1bj1GYWxzZSkKICAgICBkZWYgdGVzdF9odWdlX3N0cl82NGIoc2VsZiwgc2l6ZSk6CiAgICAgICAgIGRhdGEgPSAiYSIgKiBzaXplCiAgICAgICAgIHRyeToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3JlZ3J0ZXN0LnB5IGIvTGliL3Rlc3QvcmVncnRlc3QucHkKaW5kZXggMTM1YTkwZS4uODcxYWU2MSAxMDA3NTUKLS0tIGEvTGliL3Rlc3QvcmVncnRlc3QucHkKKysrIGIvTGliL3Rlc3QvcmVncnRlc3QucHkKQEAgLTIwLDYgKzIwLDExIEBACiBPcHRpb25zOgogCiAtaC8tLWhlbHAgICAgICAgLS0gcHJpbnQgdGhpcyB0ZXh0IGFuZCBleGl0CistLXRpbWVvdXQgVElNRU9VVAorICAgICAgICAgICAgICAgIC0tIGR1bXAgdGhlIHRyYWNlYmFjayBhbmQgZXhpdCBpZiBhIHRlc3QgdGFrZXMgbW9yZQorICAgICAgICAgICAgICAgICAgIHRoYW4gVElNRU9VVCBzZWNvbmRzOyBkaXNhYmxlZCBpZiBUSU1FT1VUIGlzIG5lZ2F0aXZlCisgICAgICAgICAgICAgICAgICAgb3IgZXF1YWxzIHRvIHplcm8KKy0td2FpdCAgICAgICAgICAtLSB3YWl0IGZvciB1c2VyIGlucHV0LCBlLmcuLCBhbGxvdyBhIGRlYnVnZ2VyIHRvIGJlIGF0dGFjaGVkCiAKIFZlcmJvc2l0eQogCkBAIC00NCw2ICs0OSw5IEBACiAgICAgICAgICAgICAgICAgLS0gc3BlY2lmeSB3aGljaCBzcGVjaWFsIHJlc291cmNlIGludGVuc2l2ZSB0ZXN0cyB0byBydW4KIC1NLy0tbWVtbGltaXQgTElNSVQKICAgICAgICAgICAgICAgICAtLSBydW4gdmVyeSBsYXJnZSBtZW1vcnktY29uc3VtaW5nIHRlc3RzCisgICAtLXRlc3RkaXIgRElSCisgICAgICAgICAgICAgICAgLS0gZXhlY3V0ZSB0ZXN0IGZpbGVzIGluIHRoZSBzcGVjaWZpZWQgZGlyZWN0b3J5IChpbnN0ZWFkCisgICAgICAgICAgICAgICAgICAgb2YgdGhlIFB5dGhvbiBzdGRsaWIgdGVzdCBzdWl0ZSkKIAogU3BlY2lhbCBydW5zCiAKQEAgLTEyNSw2ICsxMzMsOCBAQAogCiAgICAgYWxsIC0gICAgICAgRW5hYmxlIGFsbCBzcGVjaWFsIHJlc291cmNlcy4KIAorICAgIG5vbmUgLSAgICAgIERpc2FibGUgYWxsIHNwZWNpYWwgcmVzb3VyY2VzICh0aGlzIGlzIHRoZSBkZWZhdWx0KS4KKwogICAgIGF1ZGlvIC0gICAgIFRlc3RzIHRoYXQgdXNlIHRoZSBhdWRpbyBkZXZpY2UuICAoVGhlcmUgYXJlIGtub3duCiAgICAgICAgICAgICAgICAgY2FzZXMgb2YgYnJva2VuIGF1ZGlvIGRyaXZlcnMgdGhhdCBjYW4gY3Jhc2ggUHl0aG9uIG9yCiAgICAgICAgICAgICAgICAgZXZlbiB0aGUgTGludXgga2VybmVsLikKQEAgLTE1NiwxNiArMTY2LDE5IEBACiAiIiIKIAogaW1wb3J0IGJ1aWx0aW5zCi1pbXBvcnQgZXJybm8KK2ltcG9ydCBmYXVsdGhhbmRsZXIKIGltcG9ydCBnZXRvcHQKIGltcG9ydCBpbwogaW1wb3J0IGpzb24KIGltcG9ydCBsb2dnaW5nCiBpbXBvcnQgb3MKK2ltcG9ydCBwYWNrYWdpbmcuY29tbWFuZAoraW1wb3J0IHBhY2thZ2luZy5kYXRhYmFzZQogaW1wb3J0IHBsYXRmb3JtCiBpbXBvcnQgcmFuZG9tCiBpbXBvcnQgcmUKIGltcG9ydCBzaHV0aWwKK2ltcG9ydCBzaWduYWwKIGltcG9ydCBzeXMKIGltcG9ydCBzeXNjb25maWcKIGltcG9ydCB0ZW1wZmlsZQpAQCAtMjI1LDYgKzIzOCw3IEBACiBTS0lQUEVEID0gLTIKIFJFU09VUkNFX0RFTklFRCA9IC0zCiBJTlRFUlJVUFRFRCA9IC00CitDSElMRF9FUlJPUiA9IC01ICAgIyBlcnJvciBpbiBhIGNoaWxkIHByb2Nlc3MKIAogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiAKQEAgLTI2OCw2ICsyODIsMTggQEAKICAgICBvbiB0aGUgY29tbWFuZCBsaW5lLgogICAgICIiIgogCisgICAgIyBEaXNwbGF5IHRoZSBQeXRob24gdHJhY2ViYWNrIG9uIGZhdGFsIGVycm9ycyAoZS5nLiBzZWdmYXVsdCkKKyAgICBmYXVsdGhhbmRsZXIuZW5hYmxlKGFsbF90aHJlYWRzPVRydWUpCisKKyAgICAjIERpc3BsYXkgdGhlIFB5dGhvbiB0cmFjZWJhY2sgb24gU0lHQUxSTSBvciBTSUdVU1IxIHNpZ25hbAorICAgIHNpZ25hbHMgPSBbXQorICAgIGlmIGhhc2F0dHIoc2lnbmFsLCAnU0lHQUxSTScpOgorICAgICAgICBzaWduYWxzLmFwcGVuZChzaWduYWwuU0lHQUxSTSkKKyAgICBpZiBoYXNhdHRyKHNpZ25hbCwgJ1NJR1VTUjEnKToKKyAgICAgICAgc2lnbmFscy5hcHBlbmQoc2lnbmFsLlNJR1VTUjEpCisgICAgZm9yIHNpZ251bSBpbiBzaWduYWxzOgorICAgICAgICBmYXVsdGhhbmRsZXIucmVnaXN0ZXIoc2lnbnVtLCBjaGFpbj1UcnVlKQorCiAgICAgcmVwbGFjZV9zdGRvdXQoKQogCiAgICAgc3VwcG9ydC5yZWNvcmRfb3JpZ2luYWxfc3Rkb3V0KHN5cy5zdGRvdXQpCkBAIC0yNzgsNyArMzA0LDggQEAKICAgICAgICAgICAgICAndXNlPScsICd0aHJlc2hvbGQ9JywgJ2NvdmVyZGlyPScsICdub2NvdmVyZGlyJywKICAgICAgICAgICAgICAncnVubGVha3MnLCAnaHVudHJsZWFrcz0nLCAnbWVtbGltaXQ9JywgJ3JhbmRzZWVkPScsCiAgICAgICAgICAgICAgJ211bHRpcHJvY2Vzcz0nLCAnY292ZXJhZ2UnLCAnc2xhdmVhcmdzPScsICdmb3JldmVyJywgJ2RlYnVnJywKLSAgICAgICAgICAgICAnc3RhcnQ9JywgJ25vd2luZG93cycsICdoZWFkZXInLCAnZmFpbGZhc3QnLCAnbWF0Y2gnXSkKKyAgICAgICAgICAgICAnc3RhcnQ9JywgJ25vd2luZG93cycsICdoZWFkZXInLCAndGVzdGRpcj0nLCAndGltZW91dD0nLCAnd2FpdCcsCisgICAgICAgICAgICAgJ2ZhaWxmYXN0JywgJ21hdGNoJ10pCiAgICAgZXhjZXB0IGdldG9wdC5lcnJvciBhcyBtc2c6CiAgICAgICAgIHVzYWdlKG1zZykKIApAQCAtMjg5LDYgKzMxNiw3IEBACiAgICAgICAgIHVzZV9yZXNvdXJjZXMgPSBbXQogICAgIGRlYnVnID0gRmFsc2UKICAgICBzdGFydCA9IE5vbmUKKyAgICB0aW1lb3V0ID0gTm9uZQogICAgIGZvciBvLCBhIGluIG9wdHM6CiAgICAgICAgIGlmIG8gaW4gKCctaCcsICctLWhlbHAnKToKICAgICAgICAgICAgIHByaW50KF9fZG9jX18pCkBAIC0zMzIsNyArMzYwLDkgQEAKICAgICAgICAgZWxpZiBvIGluICgnLVQnLCAnLS1jb3ZlcmFnZScpOgogICAgICAgICAgICAgdHJhY2UgPSBUcnVlCiAgICAgICAgIGVsaWYgbyBpbiAoJy1EJywgJy0tY292ZXJkaXInKToKLSAgICAgICAgICAgIGNvdmVyZGlyID0gb3MucGF0aC5qb2luKG9zLmdldGN3ZCgpLCBhKQorICAgICAgICAgICAgIyBDV0QgaXMgcmVwbGFjZWQgd2l0aCBhIHRlbXBvcmFyeSBkaXIgYmVmb3JlIGNhbGxpbmcgbWFpbigpLCBzbyB3ZQorICAgICAgICAgICAgIyBuZWVkICBqb2luIGl0IHdpdGggdGhlIHNhdmVkIENXRCBzbyBpdCBnb2VzIHdoZXJlIHRoZSB1c2VyIGV4cGVjdHMuCisgICAgICAgICAgICBjb3ZlcmRpciA9IG9zLnBhdGguam9pbihzdXBwb3J0LlNBVkVEQ1dELCBhKQogICAgICAgICBlbGlmIG8gaW4gKCctTicsICctLW5vY292ZXJkaXInKToKICAgICAgICAgICAgIGNvdmVyZGlyID0gTm9uZQogICAgICAgICBlbGlmIG8gaW4gKCctUicsICctLWh1bnRybGVha3MnKToKQEAgLTM2MSw2ICszOTEsOSBAQAogICAgICAgICAgICAgICAgIGlmIHIgPT0gJ2FsbCc6CiAgICAgICAgICAgICAgICAgICAgIHVzZV9yZXNvdXJjZXNbOl0gPSBSRVNPVVJDRV9OQU1FUwogICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGlmIHIgPT0gJ25vbmUnOgorICAgICAgICAgICAgICAgICAgICBkZWwgdXNlX3Jlc291cmNlc1s6XQorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICAgICAgICAgIHJlbW92ZSA9IEZhbHNlCiAgICAgICAgICAgICAgICAgaWYgclswXSA9PSAnLSc6CiAgICAgICAgICAgICAgICAgICAgIHJlbW92ZSA9IFRydWUKQEAgLTM5MSw2ICs0MjQsMTUgQEAKICAgICAgICAgICAgIGZvcmV2ZXIgPSBUcnVlCiAgICAgICAgIGVsaWYgbyBpbiAoJy1qJywgJy0tbXVsdGlwcm9jZXNzJyk6CiAgICAgICAgICAgICB1c2VfbXAgPSBpbnQoYSkKKyAgICAgICAgICAgIGlmIHVzZV9tcCA8PSAwOgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgaW1wb3J0IG11bHRpcHJvY2Vzc2luZworICAgICAgICAgICAgICAgICAgICAjIFVzZSBhbGwgY29yZXMgKyBleHRyYXMgZm9yIHRlc3RzIHRoYXQgbGlrZSB0byBzbGVlcAorICAgICAgICAgICAgICAgICAgICB1c2VfbXAgPSAyICsgbXVsdGlwcm9jZXNzaW5nLmNwdV9jb3VudCgpCisgICAgICAgICAgICAgICAgZXhjZXB0IChJbXBvcnRFcnJvciwgTm90SW1wbGVtZW50ZWRFcnJvcik6CisgICAgICAgICAgICAgICAgICAgIHVzZV9tcCA9IDMKKyAgICAgICAgICAgIGlmIHVzZV9tcCA9PSAxOgorICAgICAgICAgICAgICAgIHVzZV9tcCA9IE5vbmUKICAgICAgICAgZWxpZiBvID09ICctLWhlYWRlcic6CiAgICAgICAgICAgICBoZWFkZXIgPSBUcnVlCiAgICAgICAgIGVsaWYgbyA9PSAnLS1zbGF2ZWFyZ3MnOgpAQCAtNDAzLDYgKzQ0NSwyMSBAQAogICAgICAgICAgICAgcHJpbnQoKSAgICMgRm9yY2UgYSBuZXdsaW5lIChqdXN0IGluIGNhc2UpCiAgICAgICAgICAgICBwcmludChqc29uLmR1bXBzKHJlc3VsdCkpCiAgICAgICAgICAgICBzeXMuZXhpdCgwKQorICAgICAgICBlbGlmIG8gPT0gJy0tdGVzdGRpcic6CisgICAgICAgICAgICAjIENXRCBpcyByZXBsYWNlZCB3aXRoIGEgdGVtcG9yYXJ5IGRpciBiZWZvcmUgY2FsbGluZyBtYWluKCksIHNvIHdlCisgICAgICAgICAgICAjIGpvaW4gaXQgd2l0aCB0aGUgc2F2ZWQgQ1dEIHNvIGl0IGVuZHMgdXAgd2hlcmUgdGhlIHVzZXIgZXhwZWN0cy4KKyAgICAgICAgICAgIHRlc3RkaXIgPSBvcy5wYXRoLmpvaW4oc3VwcG9ydC5TQVZFRENXRCwgYSkKKyAgICAgICAgZWxpZiBvID09ICctLXRpbWVvdXQnOgorICAgICAgICAgICAgaWYgaGFzYXR0cihmYXVsdGhhbmRsZXIsICdkdW1wX3RyYWNlYmFja3NfbGF0ZXInKToKKyAgICAgICAgICAgICAgICB0aW1lb3V0ID0gZmxvYXQoYSkKKyAgICAgICAgICAgICAgICBpZiB0aW1lb3V0IDw9IDA6CisgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBOb25lCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHByaW50KCJXYXJuaW5nOiBUaGUgdGltZW91dCBvcHRpb24gcmVxdWlyZXMgIgorICAgICAgICAgICAgICAgICAgICAgICJmYXVsdGhhbmRsZXIuZHVtcF90cmFjZWJhY2tzX2xhdGVyIikKKyAgICAgICAgICAgICAgICB0aW1lb3V0ID0gTm9uZQorICAgICAgICBlbGlmIG8gPT0gJy0td2FpdCc6CisgICAgICAgICAgICBpbnB1dCgiUHJlc3MgYW55IGtleSB0byBjb250aW51ZS4uLiIpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBwcmludCgoIk5vIGhhbmRsZXIgZm9yIG9wdGlvbiB7fS4gIFBsZWFzZSByZXBvcnQgdGhpcyBhcyBhIGJ1ZyAiCiAgICAgICAgICAgICAgICAgICAgImF0IGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcuIikuZm9ybWF0KG8pLCBmaWxlPXN5cy5zdGRlcnIpCkBAIC00ODEsNyArNTM4LDEzIEBACiAgICAgICAgIHByaW50KCI9PSAgIiwgb3MuZ2V0Y3dkKCkpCiAgICAgICAgIHByaW50KCJUZXN0aW5nIHdpdGggZmxhZ3M6Iiwgc3lzLmZsYWdzKQogCi0gICAgYWxsdGVzdHMgPSBmaW5kdGVzdHModGVzdGRpciwgc3RkdGVzdHMsIG5vdHRlc3RzKQorICAgICMgaWYgdGVzdGRpciBpcyBzZXQsIHRoZW4gd2UgYXJlIG5vdCBydW5uaW5nIHRoZSBweXRob24gdGVzdHMgc3VpdGUsIHNvCisgICAgIyBkb24ndCBhZGQgZGVmYXVsdCB0ZXN0cyB0byBiZSBleGVjdXRlZCBvciBza2lwcGVkIChwYXNzIGVtcHR5IHZhbHVlcykKKyAgICBpZiB0ZXN0ZGlyOgorICAgICAgICBhbGx0ZXN0cyA9IGZpbmR0ZXN0cyh0ZXN0ZGlyLCBsaXN0KCksIHNldCgpKQorICAgIGVsc2U6CisgICAgICAgIGFsbHRlc3RzID0gZmluZHRlc3RzKHRlc3RkaXIsIHN0ZHRlc3RzLCBub3R0ZXN0cykKKwogICAgIHNlbGVjdGVkID0gdGVzdHMgb3IgYXJncyBvciBhbGx0ZXN0cwogICAgIGlmIHNpbmdsZToKICAgICAgICAgc2VsZWN0ZWQgPSBzZWxlY3RlZFs6MV0KQEAgLTU1Niw3ICs2MTksOCBAQAogICAgICAgICAgICAgICAgICAgICAodGVzdCwgdmVyYm9zZSwgcXVpZXQpLAogICAgICAgICAgICAgICAgICAgICBkaWN0KGh1bnRybGVha3M9aHVudHJsZWFrcywgdXNlX3Jlc291cmNlcz11c2VfcmVzb3VyY2VzLAogICAgICAgICAgICAgICAgICAgICAgICAgIGRlYnVnPWRlYnVnLCBvdXRwdXRfb25fZmFpbHVyZT12ZXJib3NlMywKLSAgICAgICAgICAgICAgICAgICAgICAgICBmYWlsZmFzdD1mYWlsZmFzdCwgbWF0Y2hfdGVzdHM9bWF0Y2hfdGVzdHMpCisgICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dD10aW1lb3V0LCBmYWlsZmFzdD1mYWlsZmFzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBtYXRjaF90ZXN0cz1tYXRjaF90ZXN0cykKICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgeWllbGQgKHRlc3QsIGFyZ3NfdHVwbGUpCiAgICAgICAgIHBlbmRpbmcgPSB0ZXN0c19hbmRfYXJncygpCkBAIC01NzcsMTAgKzY0MSwxNSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml2ZXJzYWxfbmV3bGluZXM9VHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xvc2VfZmRzPShvcy5uYW1lICE9ICdudCcpKQogICAgICAgICAgICAgICAgICAgICBzdGRvdXQsIHN0ZGVyciA9IHBvcGVuLmNvbW11bmljYXRlKCkKKyAgICAgICAgICAgICAgICAgICAgcmV0Y29kZSA9IHBvcGVuLndhaXQoKQogICAgICAgICAgICAgICAgICAgICAjIFN0cmlwIGxhc3QgcmVmY291bnQgb3V0cHV0IGxpbmUgaWYgaXQgZXhpc3RzLCBzaW5jZSBpdAogICAgICAgICAgICAgICAgICAgICAjIGNvbWVzIGZyb20gdGhlIHNodXRkb3duIG9mIHRoZSBpbnRlcnByZXRlciBpbiB0aGUgc3ViY29tbWFuZC4KICAgICAgICAgICAgICAgICAgICAgc3RkZXJyID0gZGVidWdfb3V0cHV0X3BhdC5zdWIoIiIsIHN0ZGVycikKICAgICAgICAgICAgICAgICAgICAgc3Rkb3V0LCBfLCByZXN1bHQgPSBzdGRvdXQuc3RyaXAoKS5ycGFydGl0aW9uKCJcbiIpCisgICAgICAgICAgICAgICAgICAgIGlmIHJldGNvZGUgIT0gMDoKKyAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IChDSElMRF9FUlJPUiwgIkV4aXQgY29kZSAlcyIgJSByZXRjb2RlKQorICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0LnB1dCgodGVzdCwgc3Rkb3V0LnJzdHJpcCgpLCBzdGRlcnIucnN0cmlwKCksIHJlc3VsdCkpCisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4KICAgICAgICAgICAgICAgICAgICAgaWYgbm90IHJlc3VsdDoKICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dC5wdXQoKE5vbmUsIE5vbmUsIE5vbmUsIE5vbmUpKQogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuCkBAIC02MTMsNiArNjgyLDggQEAKICAgICAgICAgICAgICAgICBpZiByZXN1bHRbMF0gPT0gSU5URVJSVVBURUQ6CiAgICAgICAgICAgICAgICAgICAgIGFzc2VydCByZXN1bHRbMV0gPT0gJ0tleWJvYXJkSW50ZXJydXB0JwogICAgICAgICAgICAgICAgICAgICByYWlzZSBLZXlib2FyZEludGVycnVwdCAgICMgV2hhdCBlbHNlPworICAgICAgICAgICAgICAgIGlmIHJlc3VsdFswXSA9PSBDSElMRF9FUlJPUjoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJDaGlsZCBlcnJvciBvbiB7fToge30iLmZvcm1hdCh0ZXN0LCByZXN1bHRbMV0pKQogICAgICAgICAgICAgICAgIHRlc3RfaW5kZXggKz0gMQogICAgICAgICBleGNlcHQgS2V5Ym9hcmRJbnRlcnJ1cHQ6CiAgICAgICAgICAgICBpbnRlcnJ1cHRlZCA9IFRydWUKQEAgLTYyOSwxMyArNzAwLDE0IEBACiAgICAgICAgICAgICBpZiB0cmFjZToKICAgICAgICAgICAgICAgICAjIElmIHdlJ3JlIHRyYWNpbmcgY29kZSBjb3ZlcmFnZSwgdGhlbiB3ZSBkb24ndCBleGl0IHdpdGggc3RhdHVzCiAgICAgICAgICAgICAgICAgIyBpZiBvbiBhIGZhbHNlIHJldHVybiB2YWx1ZSBmcm9tIG1haW4uCi0gICAgICAgICAgICAgICAgdHJhY2VyLnJ1bmN0eCgncnVudGVzdCh0ZXN0LCB2ZXJib3NlLCBxdWlldCknLAorICAgICAgICAgICAgICAgIHRyYWNlci5ydW5jdHgoJ3J1bnRlc3QodGVzdCwgdmVyYm9zZSwgcXVpZXQsIHRpbWVvdXQ9dGltZW91dCknLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2xvYmFscz1nbG9iYWxzKCksIGxvY2Fscz12YXJzKCkpCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gcnVudGVzdCh0ZXN0LCB2ZXJib3NlLCBxdWlldCwgaHVudHJsZWFrcywgZGVidWcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0cHV0X29uX2ZhaWx1cmU9dmVyYm9zZTMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFpbGZhc3Q9ZmFpbGZhc3QsIG1hdGNoX3Rlc3RzPW1hdGNoX3Rlc3RzKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9dGltZW91dCwgZmFpbGZhc3Q9ZmFpbGZhc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0Y2hfdGVzdHM9bWF0Y2hfdGVzdHMpCiAgICAgICAgICAgICAgICAgICAgIGFjY3VtdWxhdGVfcmVzdWx0KHRlc3QsIHJlc3VsdCkKICAgICAgICAgICAgICAgICBleGNlcHQgS2V5Ym9hcmRJbnRlcnJ1cHQ6CiAgICAgICAgICAgICAgICAgICAgIGludGVycnVwdGVkID0gVHJ1ZQpAQCAtNzA2LDcgKzc3OCw3IEBACiAgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICB2ZXJib3NlID0gVHJ1ZQotICAgICAgICAgICAgICAgIG9rID0gcnVudGVzdCh0ZXN0LCBUcnVlLCBxdWlldCwgaHVudHJsZWFrcywgZGVidWcpCisgICAgICAgICAgICAgICAgb2sgPSBydW50ZXN0KHRlc3QsIFRydWUsIHF1aWV0LCBodW50cmxlYWtzLCBkZWJ1ZywgdGltZW91dD10aW1lb3V0KQogICAgICAgICAgICAgZXhjZXB0IEtleWJvYXJkSW50ZXJydXB0OgogICAgICAgICAgICAgICAgICMgcHJpbnQgYSBuZXdsaW5lIHNlcGFyYXRlIGZyb20gdGhlIF5DCiAgICAgICAgICAgICAgICAgcHJpbnQoKQpAQCAtNzMxLDYgKzgwMyw4IEBACiAgICAgc3lzLmV4aXQobGVuKGJhZCkgPiAwIG9yIGludGVycnVwdGVkKQogCiAKKyMgc21hbGwgc2V0IG9mIHRlc3RzIHRvIGRldGVybWluZSBpZiB3ZSBoYXZlIGEgYmFzaWNhbGx5IGZ1bmN0aW9uaW5nIGludGVycHJldGVyCisjIChpLmUuIGlmIGFueSBvZiB0aGVzZSBmYWlsLCB0aGVuIGFueXRoaW5nIGVsc2UgaXMgbGlrZWx5IHRvIGZvbGxvdykKIFNURFRFU1RTID0gWwogICAgICd0ZXN0X2dyYW1tYXInLAogICAgICd0ZXN0X29wY29kZXMnLApAQCAtNzQxLDEyICs4MTUsMTEgQEAKICAgICAndGVzdF91bml0dGVzdCcsCiAgICAgJ3Rlc3RfZG9jdGVzdCcsCiAgICAgJ3Rlc3RfZG9jdGVzdDInLAorICAgICd0ZXN0X3N1cHBvcnQnCiBdCiAKLU5PVFRFU1RTID0gewotICAgICd0ZXN0X2Z1dHVyZTEnLAotICAgICd0ZXN0X2Z1dHVyZTInLAotfQorIyBzZXQgb2YgdGVzdHMgdGhhdCB3ZSBkb24ndCB3YW50IHRvIGJlIGV4ZWN1dGVkIHdoZW4gdXNpbmcgcmVncnRlc3QKK05PVFRFU1RTID0gc2V0KCkKIAogZGVmIGZpbmR0ZXN0cyh0ZXN0ZGlyPU5vbmUsIHN0ZHRlc3RzPVNURFRFU1RTLCBub3R0ZXN0cz1OT1RURVNUUyk6CiAgICAgIiIiUmV0dXJuIGEgbGlzdCBvZiBhbGwgYXBwbGljYWJsZSB0ZXN0IG1vZHVsZXMuIiIiCkBAIC03NTUsMjUgKzgyOCwyMiBAQAogICAgIHRlc3RzID0gW10KICAgICBvdGhlcnMgPSBzZXQoc3RkdGVzdHMpIHwgbm90dGVzdHMKICAgICBmb3IgbmFtZSBpbiBuYW1lczoKLSAgICAgICAgbW9kbmFtZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChuYW1lKQotICAgICAgICBpZiBtb2RuYW1lWzo1XSA9PSAidGVzdF8iIGFuZCBleHQgPT0gIi5weSIgYW5kIG1vZG5hbWUgbm90IGluIG90aGVyczoKLSAgICAgICAgICAgIHRlc3RzLmFwcGVuZChtb2RuYW1lKQorICAgICAgICBtb2QsIGV4dCA9IG9zLnBhdGguc3BsaXRleHQobmFtZSkKKyAgICAgICAgaWYgbW9kWzo1XSA9PSAidGVzdF8iIGFuZCBleHQgaW4gKCIucHkiLCAiIikgYW5kIG1vZCBub3QgaW4gb3RoZXJzOgorICAgICAgICAgICAgdGVzdHMuYXBwZW5kKG1vZCkKICAgICByZXR1cm4gc3RkdGVzdHMgKyBzb3J0ZWQodGVzdHMpCiAKIGRlZiByZXBsYWNlX3N0ZG91dCgpOgogICAgICIiIlNldCBzdGRvdXQgZW5jb2RlciBlcnJvciBoYW5kbGVyIHRvIGJhY2tzbGFzaHJlcGxhY2UgKGFzIHN0ZGVyciBlcnJvcgogICAgIGhhbmRsZXIpIHRvIGF2b2lkIFVuaWNvZGVFbmNvZGVFcnJvciB3aGVuIHByaW50aW5nIGEgdHJhY2ViYWNrIiIiCi0gICAgaWYgb3MubmFtZSA9PSAibnQiOgotICAgICAgICAjIFJlcGxhY2Ugc3lzLnN0ZG91dCBicmVha3MgdGhlIHN0ZG91dCBuZXdsaW5lcyBvbiBXaW5kb3dzOiBpc3N1ZSAjODUzMwotICAgICAgICByZXR1cm4KLQogICAgIGltcG9ydCBhdGV4aXQKIAogICAgIHN0ZG91dCA9IHN5cy5zdGRvdXQKICAgICBzeXMuc3Rkb3V0ID0gb3BlbihzdGRvdXQuZmlsZW5vKCksICd3JywKICAgICAgICAgZW5jb2Rpbmc9c3Rkb3V0LmVuY29kaW5nLAogICAgICAgICBlcnJvcnM9ImJhY2tzbGFzaHJlcGxhY2UiLAotICAgICAgICBjbG9zZWZkPUZhbHNlKQorICAgICAgICBjbG9zZWZkPUZhbHNlLAorICAgICAgICBuZXdsaW5lPSdcbicpCiAKICAgICBkZWYgcmVzdG9yZV9zdGRvdXQoKToKICAgICAgICAgc3lzLnN0ZG91dC5jbG9zZSgpCkBAIC03ODIsNyArODUyLDggQEAKIAogZGVmIHJ1bnRlc3QodGVzdCwgdmVyYm9zZSwgcXVpZXQsCiAgICAgICAgICAgICBodW50cmxlYWtzPUZhbHNlLCBkZWJ1Zz1GYWxzZSwgdXNlX3Jlc291cmNlcz1Ob25lLAotICAgICAgICAgICAgb3V0cHV0X29uX2ZhaWx1cmU9RmFsc2UsIGZhaWxmYXN0PUZhbHNlLCBtYXRjaF90ZXN0cz1Ob25lKToKKyAgICAgICAgICAgIG91dHB1dF9vbl9mYWlsdXJlPUZhbHNlLCBmYWlsZmFzdD1GYWxzZSwgbWF0Y2hfdGVzdHM9Tm9uZSwKKyAgICAgICAgICAgIHRpbWVvdXQ9Tm9uZSk6CiAgICAgIiIiUnVuIGEgc2luZ2xlIHRlc3QuCiAKICAgICB0ZXN0IC0tIHRoZSBuYW1lIG9mIHRoZSB0ZXN0CkBAIC03OTIsNiArODYzLDggQEAKICAgICBodW50cmxlYWtzIC0tIHJ1biBtdWx0aXBsZSB0aW1lcyB0byB0ZXN0IGZvciBsZWFrczsgcmVxdWlyZXMgYSBkZWJ1ZwogICAgICAgICAgICAgICAgICAgYnVpbGQ7IGEgdHJpcGxlIGNvcnJlc3BvbmRpbmcgdG8gLVIncyB0aHJlZSBhcmd1bWVudHMKICAgICBvdXRwdXRfb25fZmFpbHVyZSAtLSBpZiB0cnVlLCBkaXNwbGF5IHRlc3Qgb3V0cHV0IG9uIGZhaWx1cmUKKyAgICB0aW1lb3V0IC0tIGR1bXAgdGhlIHRyYWNlYmFjayBhbmQgZXhpdCBpZiBhIHRlc3QgdGFrZXMgbW9yZSB0aGFuCisgICAgICAgICAgICAgICB0aW1lb3V0IHNlY29uZHMKIAogICAgIFJldHVybnMgb25lIG9mIHRoZSB0ZXN0IHJlc3VsdCBjb25zdGFudHM6CiAgICAgICAgIElOVEVSUlVQVEVEICAgICAgS2V5Ym9hcmRJbnRlcnJ1cHQgd2hlbiBydW4gdW5kZXIgLWoKQEAgLTgwNCw2ICs4NzcsOSBAQAogCiAgICAgaWYgdXNlX3Jlc291cmNlcyBpcyBub3QgTm9uZToKICAgICAgICAgc3VwcG9ydC51c2VfcmVzb3VyY2VzID0gdXNlX3Jlc291cmNlcworICAgIHVzZV90aW1lb3V0ID0gKHRpbWVvdXQgaXMgbm90IE5vbmUpCisgICAgaWYgdXNlX3RpbWVvdXQ6CisgICAgICAgIGZhdWx0aGFuZGxlci5kdW1wX3RyYWNlYmFja3NfbGF0ZXIodGltZW91dCwgZXhpdD1UcnVlKQogICAgIHRyeToKICAgICAgICAgc3VwcG9ydC5tYXRjaF90ZXN0cyA9IG1hdGNoX3Rlc3RzCiAgICAgICAgIGlmIGZhaWxmYXN0OgpAQCAtODQyLDYgKzkxOCw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXlfZmFpbHVyZT1ub3QgdmVyYm9zZSkKICAgICAgICAgcmV0dXJuIHJlc3VsdAogICAgIGZpbmFsbHk6CisgICAgICAgIGlmIHVzZV90aW1lb3V0OgorICAgICAgICAgICAgZmF1bHRoYW5kbGVyLmNhbmNlbF9kdW1wX3RyYWNlYmFja3NfbGF0ZXIoKQogICAgICAgICBjbGVhbnVwX3Rlc3RfZHJvcHBpbmdzKHRlc3QsIHZlcmJvc2UpCiBydW50ZXN0LnN0cmluZ2lvID0gTm9uZQogCkBAIC04ODcsMTAgKzk2NSwxMiBAQAogICAgIHJlc291cmNlcyA9ICgnc3lzLmFyZ3YnLCAnY3dkJywgJ3N5cy5zdGRpbicsICdzeXMuc3Rkb3V0JywgJ3N5cy5zdGRlcnInLAogICAgICAgICAgICAgICAgICAnb3MuZW52aXJvbicsICdzeXMucGF0aCcsICdzeXMucGF0aF9ob29rcycsICdfX2ltcG9ydF9fJywKICAgICAgICAgICAgICAgICAgJ3dhcm5pbmdzLmZpbHRlcnMnLCAnYXN5bmNvcmUuc29ja2V0X21hcCcsCi0gICAgICAgICAgICAgICAgICdsb2dnaW5nLl9oYW5kbGVycycsICdsb2dnaW5nLl9oYW5kbGVyTGlzdCcsCi0gICAgICAgICAgICAgICAgICdzaHV0aWwuYXJjaGl2ZV9mb3JtYXRzJywgJ3NodXRpbC51bnBhY2tfZm9ybWF0cycsCisgICAgICAgICAgICAgICAgICdsb2dnaW5nLl9oYW5kbGVycycsICdsb2dnaW5nLl9oYW5kbGVyTGlzdCcsICdzeXMuZ2V0dHJhY2UnLAogICAgICAgICAgICAgICAgICAnc3lzLndhcm5vcHRpb25zJywgJ3RocmVhZGluZy5fZGFuZ2xpbmcnLAotICAgICAgICAgICAgICAgICAnbXVsdGlwcm9jZXNzaW5nLnByb2Nlc3MuX2RhbmdsaW5nJykKKyAgICAgICAgICAgICAgICAgJ211bHRpcHJvY2Vzc2luZy5wcm9jZXNzLl9kYW5nbGluZycsCisgICAgICAgICAgICAgICAgICdzeXNjb25maWcuX0NPTkZJR19WQVJTJywgJ3N5c2NvbmZpZy5fU0NIRU1FUycsCisgICAgICAgICAgICAgICAgICdwYWNrYWdpbmcuY29tbWFuZC5fQ09NTUFORFMnLCAncGFja2FnaW5nLmRhdGFiYXNlX2NhY2hlcycsCisgICAgICAgICAgICAgICAgKQogCiAgICAgZGVmIGdldF9zeXNfYXJndihzZWxmKToKICAgICAgICAgcmV0dXJuIGlkKHN5cy5hcmd2KSwgc3lzLmFyZ3YsIHN5cy5hcmd2WzpdCkBAIC05MzcsNiArMTAxNywxMSBAQAogICAgICAgICBzeXMucGF0aF9ob29rcyA9IHNhdmVkX2hvb2tzWzFdCiAgICAgICAgIHN5cy5wYXRoX2hvb2tzWzpdID0gc2F2ZWRfaG9va3NbMl0KIAorICAgIGRlZiBnZXRfc3lzX2dldHRyYWNlKHNlbGYpOgorICAgICAgICByZXR1cm4gc3lzLmdldHRyYWNlKCkKKyAgICBkZWYgcmVzdG9yZV9zeXNfZ2V0dHJhY2Uoc2VsZiwgdHJhY2VfZnhuKToKKyAgICAgICAgc3lzLnNldHRyYWNlKHRyYWNlX2Z4bikKKwogICAgIGRlZiBnZXRfX19pbXBvcnRfXyhzZWxmKToKICAgICAgICAgcmV0dXJuIGJ1aWx0aW5zLl9faW1wb3J0X18KICAgICBkZWYgcmVzdG9yZV9fX2ltcG9ydF9fKHNlbGYsIGltcG9ydF8pOgpAQCAtOTg5LDYgKzEwNzQsNDQgQEAKICAgICAgICAgIyBDYW4ndCBlYXNpbHkgcmV2ZXJ0IHRoZSBsb2dnaW5nIHN0YXRlCiAgICAgICAgIHBhc3MKIAorICAgIGRlZiBnZXRfcGFja2FnaW5nX2NvbW1hbmRfX0NPTU1BTkRTKHNlbGYpOgorICAgICAgICAjIHJlZ2lzdHJ5IG1hcHBpbmcgY29tbWFuZCBuYW1lcyB0byBmdWxsIGRvdHRlZCBwYXRoIG9yIHRvIHRoZSBhY3R1YWwKKyAgICAgICAgIyBjbGFzcyAocmVzb2x2ZWQgb24gZGVtYW5kKTsgdGhpcyBjaGVjayBvbmx5IGxvb2tzIGF0IHRoZSBuYW1lcywgbm90CisgICAgICAgICMgdGhlIHR5cGVzIG9mIHRoZSB2YWx1ZXMgKElPVywgaWYgYSB2YWx1ZSBjaGFuZ2VzIGZyb20gYSBzdHJpbmcKKyAgICAgICAgIyAoZG90dGVkIHBhdGgpIHRvIGEgY2xhc3MgaXQncyBva2F5IGJ1dCBpZiBhIGtleSAoaS5lLiBjb21tYW5kIGNsYXNzKQorICAgICAgICAjIGlzIGFkZGVkIHdlIGNvbXBsYWluKQorICAgICAgICBpZF8gPSBpZChwYWNrYWdpbmcuY29tbWFuZC5fQ09NTUFORFMpCisgICAgICAgIGtleXMgPSBzZXQocGFja2FnaW5nLmNvbW1hbmQuX0NPTU1BTkRTKQorICAgICAgICByZXR1cm4gaWRfLCBrZXlzCisgICAgZGVmIHJlc3RvcmVfcGFja2FnaW5nX2NvbW1hbmRfX0NPTU1BTkRTKHNlbGYsIHNhdmVkKToKKyAgICAgICAgIyBpZiBjb21tYW5kLl9DT01NQU5EUyB3YXMgYm91bmQgdG8gYW5vdGhlciBkaWN0IG9iamVjdCwgd2UgY2FuJ3QKKyAgICAgICAgIyByZXN0b3JlIHRoZSBwcmV2aW91cyBvYmplY3QgYW5kIGNvbnRlbnRzLCBiZWNhdXNlIHRoZSBnZXRfIG1ldGhvZAorICAgICAgICAjIGFib3ZlIGRvZXMgbm90IHJldHVybiB0aGUgZGljdCBvYmplY3QgKHRvIGlnbm9yZSBjaGFuZ2VzIGluIHZhbHVlcykKKyAgICAgICAgZm9yIGtleSBpbiBwYWNrYWdpbmcuY29tbWFuZC5fQ09NTUFORFMua2V5cygpIC0gc2F2ZWRbMV06CisgICAgICAgICAgICBkZWwgcGFja2FnaW5nLmNvbW1hbmQuX0NPTU1BTkRTW2tleV0KKworICAgIGRlZiBnZXRfcGFja2FnaW5nX2RhdGFiYXNlX2NhY2hlcyhzZWxmKToKKyAgICAgICAgIyBjYWNoaW5nIHN5c3RlbSB1c2VkIGJ5IHRoZSBQRVAgMzc2IGltcGxlbWVudGF0aW9uCisgICAgICAgICMgd2UgaGF2ZSBvbmUgYm9vbGVhbiBhbmQgZm91ciBkaWN0aW9uYXJpZXMsIGluaXRpYWxseSBlbXB0eQorICAgICAgICBzd2l0Y2ggPSBwYWNrYWdpbmcuZGF0YWJhc2UuX2NhY2hlX2VuYWJsZWQKKyAgICAgICAgc2F2ZWQgPSBbXQorICAgICAgICBmb3IgbmFtZSBpbiAoJ19jYWNoZV9uYW1lJywgJ19jYWNoZV9uYW1lX2VnZycsCisgICAgICAgICAgICAgICAgICAgICAnX2NhY2hlX3BhdGgnLCAnX2NhY2hlX3BhdGhfZWdnJyk6CisgICAgICAgICAgICBjYWNoZSA9IGdldGF0dHIocGFja2FnaW5nLmRhdGFiYXNlLCBuYW1lKQorICAgICAgICAgICAgc2F2ZWQuYXBwZW5kKChpZChjYWNoZSksIGNhY2hlLCBjYWNoZS5jb3B5KCkpKQorICAgICAgICByZXR1cm4gc3dpdGNoLCBzYXZlZAorICAgIGRlZiByZXN0b3JlX3BhY2thZ2luZ19kYXRhYmFzZV9jYWNoZXMoc2VsZiwgc2F2ZWQpOgorICAgICAgICBzd2l0Y2gsIHNhdmVkX2NhY2hlcyA9IHNhdmVkCisgICAgICAgIHBhY2thZ2luZy5kYXRhYmFzZS5fY2FjaGVfZW5hYmxlZCA9IHN3aXRjaAorICAgICAgICBmb3Igb2Zmc2V0LCBuYW1lIGluIGVudW1lcmF0ZSgoJ19jYWNoZV9uYW1lJywgJ19jYWNoZV9uYW1lX2VnZycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX2NhY2hlX3BhdGgnLCAnX2NhY2hlX3BhdGhfZWdnJykpOgorICAgICAgICAgICAgXywgY2FjaGUsIGl0ZW1zID0gc2F2ZWRfY2FjaGVzW29mZnNldF0KKyAgICAgICAgICAgICMgcHV0IGJhY2sgdGhlIHNhbWUgb2JqZWN0IGluIHBsYWNlCisgICAgICAgICAgICBzZXRhdHRyKHBhY2thZ2luZy5kYXRhYmFzZSwgbmFtZSwgY2FjaGUpCisgICAgICAgICAgICAjIG5vdyByZXN0b3JlIGl0cyBpdGVtcworICAgICAgICAgICAgY2FjaGUuY2xlYXIoKQorICAgICAgICAgICAgY2FjaGUudXBkYXRlKGl0ZW1zKQorCiAgICAgZGVmIGdldF9zeXNfd2Fybm9wdGlvbnMoc2VsZik6CiAgICAgICAgIHJldHVybiBpZChzeXMud2Fybm9wdGlvbnMpLCBzeXMud2Fybm9wdGlvbnMsIHN5cy53YXJub3B0aW9uc1s6XQogICAgIGRlZiByZXN0b3JlX3N5c193YXJub3B0aW9ucyhzZWxmLCBzYXZlZF9vcHRpb25zKToKQEAgLTEwMjAsNiArMTE0MywyNyBAQAogICAgICAgICBtdWx0aXByb2Nlc3NpbmcucHJvY2Vzcy5fZGFuZ2xpbmcuY2xlYXIoKQogICAgICAgICBtdWx0aXByb2Nlc3NpbmcucHJvY2Vzcy5fZGFuZ2xpbmcudXBkYXRlKHNhdmVkKQogCisgICAgZGVmIGdldF9zeXNjb25maWdfX0NPTkZJR19WQVJTKHNlbGYpOgorICAgICAgICAjIG1ha2Ugc3VyZSB0aGUgZGljdCBpcyBpbml0aWFsaXplZAorICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ3ByZWZpeCcpCisgICAgICAgIHJldHVybiAoaWQoc3lzY29uZmlnLl9DT05GSUdfVkFSUyksIHN5c2NvbmZpZy5fQ09ORklHX1ZBUlMsCisgICAgICAgICAgICAgICAgZGljdChzeXNjb25maWcuX0NPTkZJR19WQVJTKSkKKyAgICBkZWYgcmVzdG9yZV9zeXNjb25maWdfX0NPTkZJR19WQVJTKHNlbGYsIHNhdmVkKToKKyAgICAgICAgc3lzY29uZmlnLl9DT05GSUdfVkFSUyA9IHNhdmVkWzFdCisgICAgICAgIHN5c2NvbmZpZy5fQ09ORklHX1ZBUlMuY2xlYXIoKQorICAgICAgICBzeXNjb25maWcuX0NPTkZJR19WQVJTLnVwZGF0ZShzYXZlZFsyXSkKKworICAgIGRlZiBnZXRfc3lzY29uZmlnX19TQ0hFTUVTKHNlbGYpOgorICAgICAgICAjIGl0J3MgbWlsZGx5IGV2aWwgdG8gbG9vayBhdCB0aGUgaW50ZXJuYWwgYXR0cmlidXRlLCBidXQgaXQncyBlYXNpZXIKKyAgICAgICAgIyB0aGFuIGNvcHlpbmcgYSBSYXdDb25maWdQYXJzZXIgb2JqZWN0CisgICAgICAgIHJldHVybiAoaWQoc3lzY29uZmlnLl9TQ0hFTUVTKSwgc3lzY29uZmlnLl9TQ0hFTUVTLl9zZWN0aW9ucywKKyAgICAgICAgICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuX3NlY3Rpb25zLmNvcHkoKSkKKyAgICBkZWYgcmVzdG9yZV9zeXNjb25maWdfX1NDSEVNRVMoc2VsZiwgc2F2ZWQpOgorICAgICAgICBzeXNjb25maWcuX1NDSEVNRVMuX3NlY3Rpb25zID0gc2F2ZWRbMV0KKyAgICAgICAgc3lzY29uZmlnLl9TQ0hFTUVTLl9zZWN0aW9ucy5jbGVhcigpCisgICAgICAgIHN5c2NvbmZpZy5fU0NIRU1FUy5fc2VjdGlvbnMudXBkYXRlKHNhdmVkWzJdKQorCisKICAgICBkZWYgcmVzb3VyY2VfaW5mbyhzZWxmKToKICAgICAgICAgZm9yIG5hbWUgaW4gc2VsZi5yZXNvdXJjZXM6CiAgICAgICAgICAgICBtZXRob2Rfc3VmZml4ID0gbmFtZS5yZXBsYWNlKCcuJywgJ18nKQpAQCAtMTE1OSw3ICsxMzAzLDggQEAKICAgICAgICAgRmFsc2UgaWYgdGhlIHRlc3QgZGlkbid0IGxlYWsgcmVmZXJlbmNlczsgVHJ1ZSBpZiB3ZSBkZXRlY3RlZCByZWZsZWFrcy4KICAgICAiIiIKICAgICAjIFRoaXMgY29kZSBpcyBoYWNraXNoIGFuZCBpbmVsZWdhbnQsIGJ1dCBpdCBzZWVtcyB0byBkbyB0aGUgam9iLgotICAgIGltcG9ydCBjb3B5cmVnLCBfYWJjb2xsCisgICAgaW1wb3J0IGNvcHlyZWcKKyAgICBpbXBvcnQgY29sbGVjdGlvbnMuYWJjCiAKICAgICBpZiBub3QgaGFzYXR0cihzeXMsICdnZXR0b3RhbHJlZmNvdW50Jyk6CiAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiVHJhY2tpbmcgcmVmZXJlbmNlIGxlYWtzIHJlcXVpcmVzIGEgZGVidWcgYnVpbGQgIgpAQCAtMTE3Niw3ICsxMzIxLDcgQEAKICAgICBlbHNlOgogICAgICAgICB6ZGMgPSB6aXBpbXBvcnQuX3ppcF9kaXJlY3RvcnlfY2FjaGUuY29weSgpCiAgICAgYWJjcyA9IHt9Ci0gICAgZm9yIGFiYyBpbiBbZ2V0YXR0cihfYWJjb2xsLCBhKSBmb3IgYSBpbiBfYWJjb2xsLl9fYWxsX19dOgorICAgIGZvciBhYmMgaW4gW2dldGF0dHIoY29sbGVjdGlvbnMuYWJjLCBhKSBmb3IgYSBpbiBjb2xsZWN0aW9ucy5hYmMuX19hbGxfX106CiAgICAgICAgIGlmIG5vdCBpc2Fic3RyYWN0KGFiYyk6CiAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICBmb3Igb2JqIGluIGFiYy5fX3N1YmNsYXNzZXNfXygpICsgW2FiY106CkBAIC0xMjIyLDcgKzEzNjcsNyBAQAogICAgIGltcG9ydCBnYywgY29weXJlZwogICAgIGltcG9ydCBfc3RycHRpbWUsIGxpbmVjYWNoZQogICAgIGltcG9ydCB1cmxsaWIucGFyc2UsIHVybGxpYi5yZXF1ZXN0LCBtaW1ldHlwZXMsIGRvY3Rlc3QKLSAgICBpbXBvcnQgc3RydWN0LCBmaWxlY21wLCBfYWJjb2xsCisgICAgaW1wb3J0IHN0cnVjdCwgZmlsZWNtcCwgY29sbGVjdGlvbnMuYWJjCiAgICAgZnJvbSBkaXN0dXRpbHMuZGlyX3V0aWwgaW1wb3J0IF9wYXRoX2NyZWF0ZWQKICAgICBmcm9tIHdlYWtyZWYgaW1wb3J0IFdlYWtTZXQKIApAQCAtMTI0OSw3ICsxMzk0LDcgQEAKICAgICBzeXMuX2NsZWFyX3R5cGVfY2FjaGUoKQogCiAgICAgIyBDbGVhciBBQkMgcmVnaXN0cmllcywgcmVzdG9yaW5nIHByZXZpb3VzbHkgc2F2ZWQgQUJDIHJlZ2lzdHJpZXMuCi0gICAgZm9yIGFiYyBpbiBbZ2V0YXR0cihfYWJjb2xsLCBhKSBmb3IgYSBpbiBfYWJjb2xsLl9fYWxsX19dOgorICAgIGZvciBhYmMgaW4gW2dldGF0dHIoY29sbGVjdGlvbnMuYWJjLCBhKSBmb3IgYSBpbiBjb2xsZWN0aW9ucy5hYmMuX19hbGxfX106CiAgICAgICAgIGlmIG5vdCBpc2Fic3RyYWN0KGFiYyk6CiAgICAgICAgICAgICBjb250aW51ZQogICAgICAgICBmb3Igb2JqIGluIGFiYy5fX3N1YmNsYXNzZXNfXygpICsgW2FiY106CkBAIC0xMzM1LDEzICsxNDgwLDE0IEBACiAjIFRlc3RzIHRoYXQgYXJlIGV4cGVjdGVkIHRvIGJlIHNraXBwZWQgZXZlcnl3aGVyZSBleGNlcHQgb24gb25lIHBsYXRmb3JtCiAjIGFyZSBhbHNvIGhhbmRsZWQgc2VwYXJhdGVseS4KIAotX2V4cGVjdGF0aW9ucyA9IHsKLSAgICAnd2luMzInOgorX2V4cGVjdGF0aW9ucyA9ICgKKyAgICAoJ3dpbjMyJywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfX2xvY2FsZQogICAgICAgICB0ZXN0X2NyeXB0CiAgICAgICAgIHRlc3RfY3Vyc2VzCiAgICAgICAgIHRlc3RfZGJtCisgICAgICAgIHRlc3RfZGV2cG9sbAogICAgICAgICB0ZXN0X2ZjbnRsCiAgICAgICAgIHRlc3RfZm9yazEKICAgICAgICAgdGVzdF9lcG9sbApAQCAtMTM2NCwxNSArMTUxMCwxNiBAQAogICAgICAgICB0ZXN0X3RocmVhZHNpZ25hbHMKICAgICAgICAgdGVzdF93YWl0MwogICAgICAgICB0ZXN0X3dhaXQ0Ci0gICAgICAgICIiIiwKLSAgICAnbGludXgyJzoKKyAgICAgICAgIiIiKSwKKyAgICAoJ2xpbnV4JywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfY3Vyc2VzCisgICAgICAgIHRlc3RfZGV2cG9sbAogICAgICAgICB0ZXN0X2xhcmdlZmlsZQogICAgICAgICB0ZXN0X2txdWV1ZQogICAgICAgICB0ZXN0X29zc2F1ZGlvZGV2Ci0gICAgICAgICIiIiwKLSAgICAndW5peHdhcmU3JzoKKyAgICAgICAgIiIiKSwKKyAgICAoJ3VuaXh3YXJlJywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfZXBvbGwKICAgICAgICAgdGVzdF9sYXJnZWZpbGUKQEAgLTEzODIsOCArMTUyOSw4IEBACiAgICAgICAgIHRlc3RfcHlleHBhdAogICAgICAgICB0ZXN0X3NheAogICAgICAgICB0ZXN0X3N1bmRyeQotICAgICAgICAiIiIsCi0gICAgJ29wZW51bml4OCc6CisgICAgICAgICIiIiksCisgICAgKCdvcGVudW5peCcsCiAgICAgICAgICIiIgogICAgICAgICB0ZXN0X2Vwb2xsCiAgICAgICAgIHRlc3RfbGFyZ2VmaWxlCkBAIC0xMzkzLDggKzE1NDAsOCBAQAogICAgICAgICB0ZXN0X3B5ZXhwYXQKICAgICAgICAgdGVzdF9zYXgKICAgICAgICAgdGVzdF9zdW5kcnkKLSAgICAgICAgIiIiLAotICAgICdzY29fc3YzJzoKKyAgICAgICAgIiIiKSwKKyAgICAoJ3Njb19zdicsCiAgICAgICAgICIiIgogICAgICAgICB0ZXN0X2FzeW5jaGF0CiAgICAgICAgIHRlc3RfZm9yazEKQEAgLTE0MTMsMTEgKzE1NjAsMTIgQEAKICAgICAgICAgdGVzdF90aHJlYWRlZF9pbXBvcnQKICAgICAgICAgdGVzdF90aHJlYWRlZHRlbXBmaWxlCiAgICAgICAgIHRlc3RfdGhyZWFkaW5nCi0gICAgICAgICIiIiwKLSAgICAnZGFyd2luJzoKKyAgICAgICAgIiIiKSwKKyAgICAoJ2RhcndpbicsCiAgICAgICAgICIiIgogICAgICAgICB0ZXN0X19sb2NhbGUKICAgICAgICAgdGVzdF9jdXJzZXMKKyAgICAgICAgdGVzdF9kZXZwb2xsCiAgICAgICAgIHRlc3RfZXBvbGwKICAgICAgICAgdGVzdF9kYm1fZ251CiAgICAgICAgIHRlc3RfZ2RiCkBAIC0xNDI2LDggKzE1NzQsOCBAQAogICAgICAgICB0ZXN0X21pbmlkb20KICAgICAgICAgdGVzdF9vc3NhdWRpb2RldgogICAgICAgICB0ZXN0X3BvbGwKLSAgICAgICAgIiIiLAotICAgICdzdW5vczUnOgorICAgICAgICAiIiIpLAorICAgICgnc3Vub3MnLAogICAgICAgICAiIiIKICAgICAgICAgdGVzdF9jdXJzZXMKICAgICAgICAgdGVzdF9kYm0KQEAgLTE0MzgsOCArMTU4Niw4IEBACiAgICAgICAgIHRlc3Rfb3BlbnB0eQogICAgICAgICB0ZXN0X3ppcGZpbGUKICAgICAgICAgdGVzdF96bGliCi0gICAgICAgICIiIiwKLSAgICAnaHAtdXgxMSc6CisgICAgICAgICIiIiksCisgICAgKCdocC11eCcsCiAgICAgICAgICIiIgogICAgICAgICB0ZXN0X2N1cnNlcwogICAgICAgICB0ZXN0X2Vwb2xsCkBAIC0xNDU0LDExICsxNjAyLDEyIEBACiAgICAgICAgIHRlc3Rfc2F4CiAgICAgICAgIHRlc3RfemlwZmlsZQogICAgICAgICB0ZXN0X3psaWIKLSAgICAgICAgIiIiLAotICAgICdjeWd3aW4nOgorICAgICAgICAiIiIpLAorICAgICgnY3lnd2luJywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfY3Vyc2VzCiAgICAgICAgIHRlc3RfZGJtCisgICAgICAgIHRlc3RfZGV2cG9sbAogICAgICAgICB0ZXN0X2Vwb2xsCiAgICAgICAgIHRlc3RfaW9jdGwKICAgICAgICAgdGVzdF9rcXVldWUKQEAgLTE0NjYsOCArMTYxNSw4IEBACiAgICAgICAgIHRlc3RfbG9jYWxlCiAgICAgICAgIHRlc3Rfb3NzYXVkaW9kZXYKICAgICAgICAgdGVzdF9zb2NrZXRzZXJ2ZXIKLSAgICAgICAgIiIiLAotICAgICdvczJlbXgnOgorICAgICAgICAiIiIpLAorICAgICgnb3MyZW14JywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfYXVkaW9vcAogICAgICAgICB0ZXN0X2N1cnNlcwpAQCAtMTQ4MCw5ICsxNjI5LDEwIEBACiAgICAgICAgIHRlc3RfcHR5CiAgICAgICAgIHRlc3RfcmVzb3VyY2UKICAgICAgICAgdGVzdF9zaWduYWwKLSAgICAgICAgIiIiLAotICAgICdmcmVlYnNkNCc6CisgICAgICAgICIiIiksCisgICAgKCdmcmVlYnNkJywKICAgICAgICAgIiIiCisgICAgICAgIHRlc3RfZGV2cG9sbAogICAgICAgICB0ZXN0X2Vwb2xsCiAgICAgICAgIHRlc3RfZGJtX2dudQogICAgICAgICB0ZXN0X2xvY2FsZQpAQCAtMTQ5Nyw4ICsxNjQ3LDggQEAKICAgICAgICAgdGVzdF90aW1lb3V0CiAgICAgICAgIHRlc3RfdXJsbGlibmV0CiAgICAgICAgIHRlc3RfbXVsdGlwcm9jZXNzaW5nCi0gICAgICAgICIiIiwKLSAgICAnYWl4NSc6CisgICAgICAgICIiIiksCisgICAgKCdhaXgnLAogICAgICAgICAiIiIKICAgICAgICAgdGVzdF9iejIKICAgICAgICAgdGVzdF9lcG9sbApAQCAtMTUxMiwxMCArMTY2MiwxMSBAQAogICAgICAgICB0ZXN0X3R0a190ZXh0b25seQogICAgICAgICB0ZXN0X3ppcGltcG9ydAogICAgICAgICB0ZXN0X3psaWIKLSAgICAgICAgIiIiLAotICAgICdvcGVuYnNkMyc6CisgICAgICAgICIiIiksCisgICAgKCdvcGVuYnNkJywKICAgICAgICAgIiIiCiAgICAgICAgIHRlc3RfY3R5cGVzCisgICAgICAgIHRlc3RfZGV2cG9sbAogICAgICAgICB0ZXN0X2Vwb2xsCiAgICAgICAgIHRlc3RfZGJtX2dudQogICAgICAgICB0ZXN0X2xvY2FsZQpAQCAtMTUyNywxMSArMTY3OCwxMiBAQAogICAgICAgICB0ZXN0X3R0a19ndWlvbmx5CiAgICAgICAgIHRlc3RfdHRrX3RleHRvbmx5CiAgICAgICAgIHRlc3RfbXVsdGlwcm9jZXNzaW5nCi0gICAgICAgICIiIiwKLSAgICAnbmV0YnNkMyc6CisgICAgICAgICIiIiksCisgICAgKCduZXRic2QnLAogICAgICAgICAiIiIKICAgICAgICAgdGVzdF9jdHlwZXMKICAgICAgICAgdGVzdF9jdXJzZXMKKyAgICAgICAgdGVzdF9kZXZwb2xsCiAgICAgICAgIHRlc3RfZXBvbGwKICAgICAgICAgdGVzdF9kYm1fZ251CiAgICAgICAgIHRlc3RfbG9jYWxlCkBAIC0xNTQyLDEyICsxNjk0LDggQEAKICAgICAgICAgdGVzdF90dGtfZ3Vpb25seQogICAgICAgICB0ZXN0X3R0a190ZXh0b25seQogICAgICAgICB0ZXN0X211bHRpcHJvY2Vzc2luZwotICAgICAgICAiIiIsCi19Ci1fZXhwZWN0YXRpb25zWydmcmVlYnNkNSddID0gX2V4cGVjdGF0aW9uc1snZnJlZWJzZDQnXQotX2V4cGVjdGF0aW9uc1snZnJlZWJzZDYnXSA9IF9leHBlY3RhdGlvbnNbJ2ZyZWVic2Q0J10KLV9leHBlY3RhdGlvbnNbJ2ZyZWVic2Q3J10gPSBfZXhwZWN0YXRpb25zWydmcmVlYnNkNCddCi1fZXhwZWN0YXRpb25zWydmcmVlYnNkOCddID0gX2V4cGVjdGF0aW9uc1snZnJlZWJzZDQnXQorICAgICAgICAiIiIpLAorKQogCiBjbGFzcyBfRXhwZWN0ZWRTa2lwczoKICAgICBkZWYgX19pbml0X18oc2VsZik6CkBAIC0xNTU1LDkgKzE3MDMsMTMgQEAKICAgICAgICAgZnJvbSB0ZXN0IGltcG9ydCB0ZXN0X3RpbWVvdXQKIAogICAgICAgICBzZWxmLnZhbGlkID0gRmFsc2UKLSAgICAgICAgaWYgc3lzLnBsYXRmb3JtIGluIF9leHBlY3RhdGlvbnM6Ci0gICAgICAgICAgICBzID0gX2V4cGVjdGF0aW9uc1tzeXMucGxhdGZvcm1dCi0gICAgICAgICAgICBzZWxmLmV4cGVjdGVkID0gc2V0KHMuc3BsaXQoKSkKKyAgICAgICAgZXhwZWN0ZWQgPSBOb25lCisgICAgICAgIGZvciBpdGVtIGluIF9leHBlY3RhdGlvbnM6CisgICAgICAgICAgICBpZiBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aChpdGVtWzBdKToKKyAgICAgICAgICAgICAgICBleHBlY3RlZCA9IGl0ZW1bMV0KKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICBpZiBleHBlY3RlZCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIHNlbGYuZXhwZWN0ZWQgPSBzZXQoZXhwZWN0ZWQuc3BsaXQoKSkKIAogICAgICAgICAgICAgIyBUaGVzZSBhcmUgYnJva2VuIHRlc3RzLCBmb3Igbm93IHNraXBwZWQgb24gZXZlcnkgcGxhdGZvcm0uCiAgICAgICAgICAgICAjIFhYWCBGaXggdGhlc2UhCkBAIC0xNjE3LDkgKzE3NjksOCBAQAogICAgICAgICBURU1QRElSID0gb3MucGF0aC5hYnNwYXRoKFRFTVBESVIpCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIG9zLm1rZGlyKFRFTVBESVIpCi0gICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6Ci0gICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVFWElTVDoKLSAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICBleGNlcHQgRmlsZUV4aXN0c0Vycm9yOgorICAgICAgICAgICAgcGFzcwogCiAgICAgIyBEZWZpbmUgYSB3cml0YWJsZSB0ZW1wIGRpciB0aGF0IHdpbGwgYmUgdXNlZCBhcyBjd2Qgd2hpbGUgcnVubmluZwogICAgICMgdGhlIHRlc3RzLiBUaGUgbmFtZSBvZiB0aGUgZGlyIGluY2x1ZGVzIHRoZSBwaWQgdG8gYWxsb3cgcGFyYWxsZWwKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3NjcmlwdF9oZWxwZXIucHkgYi9MaWIvdGVzdC9zY3JpcHRfaGVscGVyLnB5CmluZGV4IDM3MWMzM2QuLmU1NTZlY2EgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3NjcmlwdF9oZWxwZXIucHkKKysrIGIvTGliL3Rlc3Qvc2NyaXB0X2hlbHBlci5weQpAQCAtNTYsMTEgKzU2LDEyIEBACiAgICAgIiIiCiAgICAgcmV0dXJuIF9hc3NlcnRfcHl0aG9uKEZhbHNlLCAqYXJncywgKiplbnZfdmFycykKIAotZGVmIHNwYXduX3B5dGhvbigqYXJncyk6CitkZWYgc3Bhd25fcHl0aG9uKCphcmdzLCAqKmt3KToKICAgICBjbWRfbGluZSA9IFtzeXMuZXhlY3V0YWJsZSwgJy1FJ10KICAgICBjbWRfbGluZS5leHRlbmQoYXJncykKICAgICByZXR1cm4gc3VicHJvY2Vzcy5Qb3BlbihjbWRfbGluZSwgc3RkaW49c3VicHJvY2Vzcy5QSVBFLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsIHN0ZGVycj1zdWJwcm9jZXNzLlNURE9VVCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLCBzdGRlcnI9c3VicHJvY2Vzcy5TVERPVVQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiprdykKIAogZGVmIGtpbGxfcHl0aG9uKHApOgogICAgIHAuc3RkaW4uY2xvc2UoKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3Qvc3NsX2tleS5wYXNzd2QucGVtIGIvTGliL3Rlc3Qvc3NsX2tleS5wYXNzd2QucGVtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI1MjQ2NzIKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC9zc2xfa2V5LnBhc3N3ZC5wZW0KQEAgLTAsMCArMSwxOCBAQAorLS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQorUHJvYy1UeXBlOiA0LEVOQ1JZUFRFRAorREVLLUluZm86IERFUy1FREUzLUNCQywxQThEOUQyQTAyRUM2OThBCisKK2tKWWJmWjhMMHNmZTlPdHkzZ3cwYWxvTm5ZNUU4ZmVnUmZRTFpsTm94VGw2ak50MG5Jd0k4a0RKMzZDWmdSOWMKK3UzRkRKbS9LcXJmVW96OHZXK3FFbldoU0c3UVBYMndXR1BIZDRLOTRZei9GZ3JSelowRG9LN1h4WHE5Z090VkEKK0FWR1FobnozMnArNldoZkdzQ3I5QXJYRXdSWnJUay9GdnpFUGFVNWZIY29Ta3JOVkFHWDhJcFNWa1NEd0VEUXIKK0d2MTcrY2ZrOTlVVjFPQ3phNnlLSG9Ga1R0ckMrUFpVNzFMb21CYWJpdlMyT2M0QjloWXVTUjJoRjAxd1RIUCsKK1lsV05hZ1pPT1Z0Tno0b0tLOXg5ZU5RcG1mUVhRdlBQVGZ1c2V4S0liS2Zack12Sm94Y20xZ2ZjWjBIL3dLNlAKKzZ3bVhTRzM1cU1PT3p0Q1pOdHBlcmpzMXd6RUJYem55SzhRbUxjQUpCamtmYXJBQkpYOXZCRXpaVjBPVUtoeSsKK25vT1JGd0hUbGxwaGJteWRMaHU2ZWhMVVpNSFBoekFTNVVON3NydHBTTjgxZWVyRE15MFJNVUF3QTcvUG9mWDEKKzk0TWU4NVE4alAwUEM5RVRkc0pjUHFMekFQRVRFWXUwRUxld0tSY3JkeVdpK3RsTEZycEU1S1QvczVlY2JsOWwKKzdCNjFVNEtmZDFQSVhjL3NpSU5oVTNBM2JZSys4NDVZeVVBclVPbktmMWtFb3g3cDFScEQ3eUZxVlQwNGxSVG8KK2NpYk5LQVRCdXNYU3VCcnAyRzZHTnVoV0VPU2FmV0NLSlFBemdDWUlwNlpUVjJraGhNVUdwcGMvMkgzQ0Y2Y08KK3pYMEt0bFBWWkM3aExrQjZIVDhTeFlVd0YxenFXWTcrL1hQUGRjMzdNZUVaODdRM1V1WndxT1JMWStaMGhwZ3QKK0w1SlhCQ29rbFpoQ0FhTjJHcXdGTFh0R2lSU1JGR1k3eFhJaGJEVGxFNjVXdjFXR0dnRExNS0dFMWdPejN5QW8KKzJqakcxK3lBSEpVZEU2OVhURkhTcVNrdmFsb0ExVzAzTGRNWFo5VnVRSi95U1hDaWU2QUJBUT09CistLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3Qvc3NsX3NlcnZlcnMucHkgYi9MaWIvdGVzdC9zc2xfc2VydmVycy5weQppbmRleCA3N2MwNTQyLi44Njg2MTUzIDEwMDY0NAotLS0gYS9MaWIvdGVzdC9zc2xfc2VydmVycy5weQorKysgYi9MaWIvdGVzdC9zc2xfc2VydmVycy5weQpAQCAtOTQsNyArOTQsMTIgQEAKICAgICAgICAgIiIiU2VydmUgYSBHRVQgcmVxdWVzdC4iIiIKICAgICAgICAgc29jayA9IHNlbGYucmZpbGUucmF3Ll9zb2NrCiAgICAgICAgIGNvbnRleHQgPSBzb2NrLmNvbnRleHQKLSAgICAgICAgYm9keSA9IHBwcmludC5wZm9ybWF0KGNvbnRleHQuc2Vzc2lvbl9zdGF0cygpKQorICAgICAgICBzdGF0cyA9IHsKKyAgICAgICAgICAgICdzZXNzaW9uX2NhY2hlJzogY29udGV4dC5zZXNzaW9uX3N0YXRzKCksCisgICAgICAgICAgICAnY2lwaGVyJzogc29jay5jaXBoZXIoKSwKKyAgICAgICAgICAgICdjb21wcmVzc2lvbic6IHNvY2suY29tcHJlc3Npb24oKSwKKyAgICAgICAgICAgIH0KKyAgICAgICAgYm9keSA9IHBwcmludC5wZm9ybWF0KHN0YXRzKQogICAgICAgICBib2R5ID0gYm9keS5lbmNvZGUoJ3V0Zi04JykKICAgICAgICAgc2VsZi5zZW5kX3Jlc3BvbnNlKDIwMCkKICAgICAgICAgc2VsZi5zZW5kX2hlYWRlcigiQ29udGVudC10eXBlIiwgInRleHQvcGxhaW47IGNoYXJzZXQ9dXRmLTgiKQpAQCAtMTcyLDYgKzE3NywxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uPSdzdG9yZV9mYWxzZScsIGhlbHA9J2JlIGxlc3MgdmVyYm9zZScpCiAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLXMnLCAnLS1zdGF0cycsIGRlc3Q9J3VzZV9zdGF0c19oYW5kbGVyJywgZGVmYXVsdD1GYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgIGFjdGlvbj0nc3RvcmVfdHJ1ZScsIGhlbHA9J2Fsd2F5cyByZXR1cm4gc3RhdHMgcGFnZScpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1jdXJ2ZS1uYW1lJywgZGVzdD0nY3VydmVfbmFtZScsIHR5cGU9c3RyLAorICAgICAgICAgICAgICAgICAgICAgICAgYWN0aW9uPSdzdG9yZScsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdjdXJ2ZSBuYW1lIGZvciBFQy1iYXNlZCBEaWZmaWUtSGVsbG1hbicpCisgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1kaCcsIGRlc3Q9J2RoX2ZpbGUnLCB0eXBlPXN0ciwgYWN0aW9uPSdzdG9yZScsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdQRU0gZmlsZSBjb250YWluaW5nIERIIHBhcmFtZXRlcnMnKQogICAgIGFyZ3MgPSBwYXJzZXIucGFyc2VfYXJncygpCiAKICAgICBzdXBwb3J0LnZlcmJvc2UgPSBhcmdzLnZlcmJvc2UKQEAgLTE4Miw2ICsxOTIsMTAgQEAKICAgICAgICAgaGFuZGxlcl9jbGFzcy5yb290ID0gb3MuZ2V0Y3dkKCkKICAgICBjb250ZXh0ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1RMU3YxKQogICAgIGNvbnRleHQubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFKQorICAgIGlmIGFyZ3MuY3VydmVfbmFtZToKKyAgICAgICAgY29udGV4dC5zZXRfZWNkaF9jdXJ2ZShhcmdzLmN1cnZlX25hbWUpCisgICAgaWYgYXJncy5kaF9maWxlOgorICAgICAgICBjb250ZXh0LmxvYWRfZGhfcGFyYW1zKGFyZ3MuZGhfZmlsZSkKIAogICAgIHNlcnZlciA9IEhUVFBTU2VydmVyKCgiIiwgYXJncy5wb3J0KSwgaGFuZGxlcl9jbGFzcywgY29udGV4dCkKICAgICBpZiBhcmdzLnZlcmJvc2U6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC9zdHJpbmdfdGVzdHMucHkgYi9MaWIvdGVzdC9zdHJpbmdfdGVzdHMucHkKaW5kZXggZDc5MjUyOS4uZmVlYjRjZSAxMDA2NDQKLS0tIGEvTGliL3Rlc3Qvc3RyaW5nX3Rlc3RzLnB5CisrKyBiL0xpYi90ZXN0L3N0cmluZ190ZXN0cy5weQpAQCAtMjgsNiArMjgsMTEgQEAKICAgICAjIENoYW5nZSBpbiBzdWJjbGFzc2VzIHRvIGNoYW5nZSB0aGUgYmVoYXZpb3VyIG9mIGZpeHRlc3R0eXBlKCkKICAgICB0eXBlMnRlc3QgPSBOb25lCiAKKyAgICAjIFdoZXRoZXIgdGhlICJjb250YWluZWQgaXRlbXMiIG9mIHRoZSBjb250YWluZXIgYXJlIGludGVnZXJzIGluCisgICAgIyByYW5nZSgwLCAyNTYpIChpLmUuIGJ5dGVzLCBieXRlYXJyYXkpIG9yIHN0cmluZ3Mgb2YgbGVuZ3RoIDEKKyAgICAjIChzdHIpCisgICAgY29udGFpbnNfYnl0ZXMgPSBGYWxzZQorCiAgICAgIyBBbGwgdGVzdHMgcGFzcyB0aGVpciBhcmd1bWVudHMgdG8gdGhlIHRlc3RpbmcgbWV0aG9kcwogICAgICMgYXMgc3RyIG9iamVjdHMuIGZpeHRlc3R0eXBlKCkgY2FuIGJlIHVzZWQgdG8gcHJvcGFnYXRlCiAgICAgIyB0aGVzZSBhcmd1bWVudHMgdG8gdGhlIGFwcHJvcHJpYXRlIHR5cGUKQEAgLTQ3LDExICs1MiwxMiBAQAogICAgICAgICAgICAgcmV0dXJuIG9iagogCiAgICAgIyBjaGVjayB0aGF0IG9iai5tZXRob2QoKmFyZ3MpIHJldHVybnMgcmVzdWx0Ci0gICAgZGVmIGNoZWNrZXF1YWwoc2VsZiwgcmVzdWx0LCBvYmosIG1ldGhvZG5hbWUsICphcmdzKToKKyAgICBkZWYgY2hlY2tlcXVhbChzZWxmLCByZXN1bHQsIG9iaiwgbWV0aG9kbmFtZSwgKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgcmVzdWx0ID0gc2VsZi5maXh0eXBlKHJlc3VsdCkKICAgICAgICAgb2JqID0gc2VsZi5maXh0eXBlKG9iaikKICAgICAgICAgYXJncyA9IHNlbGYuZml4dHlwZShhcmdzKQotICAgICAgICByZWFscmVzdWx0ID0gZ2V0YXR0cihvYmosIG1ldGhvZG5hbWUpKCphcmdzKQorICAgICAgICBrd2FyZ3MgPSBzZWxmLmZpeHR5cGUoa3dhcmdzKQorICAgICAgICByZWFscmVzdWx0ID0gZ2V0YXR0cihvYmosIG1ldGhvZG5hbWUpKCphcmdzLCAqKmt3YXJncykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKICAgICAgICAgICAgIHJlc3VsdCwKICAgICAgICAgICAgIHJlYWxyZXN1bHQKQEAgLTExNiw3ICsxMjIsMTEgQEAKICAgICAgICAgc2VsZi5jaGVja2VxdWFsKDAsICcnLCAnY291bnQnLCAneHgnLCBzeXMubWF4c2l6ZSwgMCkKIAogICAgICAgICBzZWxmLmNoZWNrcmFpc2VzKFR5cGVFcnJvciwgJ2hlbGxvJywgJ2NvdW50JykKLSAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdjb3VudCcsIDQyKQorCisgICAgICAgIGlmIHNlbGYuY29udGFpbnNfYnl0ZXM6CisgICAgICAgICAgICBzZWxmLmNoZWNrZXF1YWwoMCwgJ2hlbGxvJywgJ2NvdW50JywgNDIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmNoZWNrcmFpc2VzKFR5cGVFcnJvciwgJ2hlbGxvJywgJ2NvdW50JywgNDIpCiAKICAgICAgICAgIyBGb3IgYSB2YXJpZXR5IG9mIGNvbWJpbmF0aW9ucywKICAgICAgICAgIyAgICB2ZXJpZnkgdGhhdCBzdHIuY291bnQoKSBtYXRjaGVzIGFuIGVxdWl2YWxlbnQgZnVuY3Rpb24KQEAgLTE2Miw3ICsxNzIsMTEgQEAKICAgICAgICAgc2VsZi5jaGVja2VxdWFsKCAyLCAncnJhcnJycnJycnJyYScsICdmaW5kJywgJ2EnLCBOb25lLCA2KQogCiAgICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAnZmluZCcpCi0gICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAnZmluZCcsIDQyKQorCisgICAgICAgIGlmIHNlbGYuY29udGFpbnNfYnl0ZXM6CisgICAgICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdoZWxsbycsICdmaW5kJywgNDIpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmNoZWNrcmFpc2VzKFR5cGVFcnJvciwgJ2hlbGxvJywgJ2ZpbmQnLCA0MikKIAogICAgICAgICBzZWxmLmNoZWNrZXF1YWwoMCwgJycsICdmaW5kJywgJycpCiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgtMSwgJycsICdmaW5kJywgJycsIDEsIDEpCkBAIC0yMTYsNyArMjMwLDExIEBACiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbCggMiwgJ3JyYXJycnJycnJycmEnLCAncmZpbmQnLCAnYScsIE5vbmUsIDYpCiAKICAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdyZmluZCcpCi0gICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAncmZpbmQnLCA0MikKKworICAgICAgICBpZiBzZWxmLmNvbnRhaW5zX2J5dGVzOgorICAgICAgICAgICAgc2VsZi5jaGVja2VxdWFsKC0xLCAnaGVsbG8nLCAncmZpbmQnLCA0MikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAncmZpbmQnLCA0MikKIAogICAgICAgICAjIEZvciBhIHZhcmlldHkgb2YgY29tYmluYXRpb25zLAogICAgICAgICAjICAgIHZlcmlmeSB0aGF0IHN0ci5yZmluZCgpIG1hdGNoZXMgX19jb250YWluc19fCkBAIC0yNjMsNyArMjgxLDExIEBACiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbCggMiwgJ3JyYXJycnJycnJycmEnLCAnaW5kZXgnLCAnYScsIE5vbmUsIDYpCiAKICAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdpbmRleCcpCi0gICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAnaW5kZXgnLCA0MikKKworICAgICAgICBpZiBzZWxmLmNvbnRhaW5zX2J5dGVzOgorICAgICAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhWYWx1ZUVycm9yLCAnaGVsbG8nLCAnaW5kZXgnLCA0MikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAnaW5kZXgnLCA0MikKIAogICAgIGRlZiB0ZXN0X3JpbmRleChzZWxmKToKICAgICAgICAgc2VsZi5jaGVja2VxdWFsKDEyLCAnYWJjZGVmZ2hpYWJjJywgJ3JpbmRleCcsICcnKQpAQCAtMjg1LDcgKzMwNywxMSBAQAogICAgICAgICBzZWxmLmNoZWNrZXF1YWwoIDIsICdycmFycnJycnJycnJhJywgJ3JpbmRleCcsICdhJywgTm9uZSwgNikKIAogICAgICAgICBzZWxmLmNoZWNrcmFpc2VzKFR5cGVFcnJvciwgJ2hlbGxvJywgJ3JpbmRleCcpCi0gICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVHlwZUVycm9yLCAnaGVsbG8nLCAncmluZGV4JywgNDIpCisKKyAgICAgICAgaWYgc2VsZi5jb250YWluc19ieXRlczoKKyAgICAgICAgICAgIHNlbGYuY2hlY2tyYWlzZXMoVmFsdWVFcnJvciwgJ2hlbGxvJywgJ3JpbmRleCcsIDQyKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5jaGVja3JhaXNlcyhUeXBlRXJyb3IsICdoZWxsbycsICdyaW5kZXgnLCA0MikKIAogICAgIGRlZiB0ZXN0X2xvd2VyKHNlbGYpOgogICAgICAgICBzZWxmLmNoZWNrZXF1YWwoJ2hlbGxvJywgJ0hlTExvJywgJ2xvd2VyJykKQEAgLTY0Myw3ICs2NjksNyBAQAogCiAgICAgICAgICMgY2hlY2sgdGhhdCB0aXRsZWNhc2VkIGNoYXJzIGFyZSBsb3dlcmVkIGNvcnJlY3RseQogICAgICAgICAjIFx1MWZmYyBpcyB0aGUgdGl0bGVjYXNlZCBjaGFyCi0gICAgICAgIHNlbGYuY2hlY2tlcXVhbCgnXHUxZmZjXHUxZmYzXHUxZmYzXHUxZmYzJywKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKCdcdTAzYTlcdTAzOTlcdTFmZjNcdTFmZjNcdTFmZjMnLAogICAgICAgICAgICAgICAgICAgICAgICAgJ1x1MWZmM1x1MWZmM1x1MWZmY1x1MWZmYycsICdjYXBpdGFsaXplJykKICAgICAgICAgIyBjaGVjayB3aXRoIGNhc2VkIG5vbi1sZXR0ZXIgY2hhcnMKICAgICAgICAgc2VsZi5jaGVja2VxdWFsKCdcdTI0YzVcdTI0ZThcdTI0ZTNcdTI0ZDdcdTI0ZGVcdTI0ZGQnLApAQCAtOTA4LDcgKzkzNCwxNCBAQAogICAgICAgICBzZWxmLmNoZWNrZXF1YWwoWydhYmMnLCAnZGVmJywgJ2doaSddLCAiYWJjXG5kZWZcclxuZ2hpXG4iLCAnc3BsaXRsaW5lcycpCiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbChbJ2FiYycsICdkZWYnLCAnZ2hpJywgJyddLCAiYWJjXG5kZWZcclxuZ2hpXG5cciIsICdzcGxpdGxpbmVzJykKICAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnJywgJ2FiYycsICdkZWYnLCAnZ2hpJywgJyddLCAiXG5hYmNcbmRlZlxyXG5naGlcblxyIiwgJ3NwbGl0bGluZXMnKQotICAgICAgICBzZWxmLmNoZWNrZXF1YWwoWydcbicsICdhYmNcbicsICdkZWZcclxuJywgJ2doaVxuJywgJ1xyJ10sICJcbmFiY1xuZGVmXHJcbmdoaVxuXHIiLCAnc3BsaXRsaW5lcycsIDEpCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbChbJycsICdhYmMnLCAnZGVmJywgJ2doaScsICcnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICJcbmFiY1xuZGVmXHJcbmdoaVxuXHIiLCAnc3BsaXRsaW5lcycsIEZhbHNlKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoWydcbicsICdhYmNcbicsICdkZWZcclxuJywgJ2doaVxuJywgJ1xyJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAiXG5hYmNcbmRlZlxyXG5naGlcblxyIiwgJ3NwbGl0bGluZXMnLCBUcnVlKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoWycnLCAnYWJjJywgJ2RlZicsICdnaGknLCAnJ10sICJcbmFiY1xuZGVmXHJcbmdoaVxuXHIiLAorICAgICAgICAgICAgICAgICAgICAgICAgJ3NwbGl0bGluZXMnLCBrZWVwZW5kcz1GYWxzZSkKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKFsnXG4nLCAnYWJjXG4nLCAnZGVmXHJcbicsICdnaGlcbicsICdcciddLAorICAgICAgICAgICAgICAgICAgICAgICAgIlxuYWJjXG5kZWZcclxuZ2hpXG5cciIsICdzcGxpdGxpbmVzJywga2VlcGVuZHM9VHJ1ZSkKIAogICAgICAgICBzZWxmLmNoZWNrcmFpc2VzKFR5cGVFcnJvciwgJ2FiYycsICdzcGxpdGxpbmVzJywgNDIsIDQyKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC9zdXBwb3J0LnB5IGIvTGliL3Rlc3Qvc3VwcG9ydC5weQppbmRleCA1MTM3NWQ1Li4yYzU2ZTEyIDEwMDY0NAotLS0gYS9MaWIvdGVzdC9zdXBwb3J0LnB5CisrKyBiL0xpYi90ZXN0L3N1cHBvcnQucHkKQEAgLTE1LDcgKzE1LDcgQEAKIGltcG9ydCB3YXJuaW5ncwogaW1wb3J0IHVuaXR0ZXN0CiBpbXBvcnQgaW1wb3J0bGliCi1pbXBvcnQgY29sbGVjdGlvbnMKK2ltcG9ydCBjb2xsZWN0aW9ucy5hYmMKIGltcG9ydCByZQogaW1wb3J0IHN1YnByb2Nlc3MKIGltcG9ydCBpbXAKQEAgLTIzLDYgKzIzLDcgQEAKIGltcG9ydCBzeXNjb25maWcKIGltcG9ydCBmbm1hdGNoCiBpbXBvcnQgbG9nZ2luZy5oYW5kbGVycworaW1wb3J0IHN0cnVjdAogCiB0cnk6CiAgICAgaW1wb3J0IF90aHJlYWQsIHRocmVhZGluZwpAQCAtMzQsMjYgKzM1LDM0IEBACiBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgbXVsdGlwcm9jZXNzaW5nID0gTm9uZQogCit0cnk6CisgICAgaW1wb3J0IGZhdWx0aGFuZGxlcgorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIGZhdWx0aGFuZGxlciA9IE5vbmUKKwordHJ5OgorICAgIGltcG9ydCB6bGliCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgemxpYiA9IE5vbmUKIAogX19hbGxfXyA9IFsKICAgICAiRXJyb3IiLCAiVGVzdEZhaWxlZCIsICJSZXNvdXJjZURlbmllZCIsICJpbXBvcnRfbW9kdWxlIiwKICAgICAidmVyYm9zZSIsICJ1c2VfcmVzb3VyY2VzIiwgIm1heF9tZW11c2UiLCAicmVjb3JkX29yaWdpbmFsX3N0ZG91dCIsCiAgICAgImdldF9vcmlnaW5hbF9zdGRvdXQiLCAidW5sb2FkIiwgInVubGluayIsICJybXRyZWUiLCAiZm9yZ2V0IiwKLSAgICAiaXNfcmVzb3VyY2VfZW5hYmxlZCIsICJyZXF1aXJlcyIsICJyZXF1aXJlc19tYWNfdmVyIiwKLSAgICAiZmluZF91bnVzZWRfcG9ydCIsICJiaW5kX3BvcnQiLAotICAgICJmY21wIiwgImlzX2p5dGhvbiIsICJURVNURk4iLCAiSE9TVCIsICJGVVpaIiwgIlNBVkVEQ1dEIiwgInRlbXBfY3dkIiwKLSAgICAiZmluZGZpbGUiLCAic29ydGRpY3QiLCAiY2hlY2tfc3ludGF4X2Vycm9yIiwgIm9wZW5fdXJscmVzb3VyY2UiLAotICAgICJjaGVja193YXJuaW5ncyIsICJDbGVhbkltcG9ydCIsICJFbnZpcm9ubWVudFZhckd1YXJkIiwKLSAgICAiVHJhbnNpZW50UmVzb3VyY2UiLCAiY2FwdHVyZWRfb3V0cHV0IiwgImNhcHR1cmVkX3N0ZG91dCIsCi0gICAgImNhcHR1cmVkX3N0ZGluIiwgImNhcHR1cmVkX3N0ZGVyciIsCi0gICAgInRpbWVfb3V0IiwgInNvY2tldF9wZWVyX3Jlc2V0IiwgImlvZXJyb3JfcGVlcl9yZXNldCIsCi0gICAgInJ1bl93aXRoX2xvY2FsZSIsICd0ZW1wX3VtYXNrJywgInRyYW5zaWVudF9pbnRlcm5ldCIsCi0gICAgInNldF9tZW1saW1pdCIsICJiaWdtZW10ZXN0IiwgImJpZ2FkZHJzcGFjZXRlc3QiLCAiQmFzaWNUZXN0UnVubmVyIiwKLSAgICAicnVuX3VuaXR0ZXN0IiwgInJ1bl9kb2N0ZXN0IiwgInRocmVhZGluZ19zZXR1cCIsICJ0aHJlYWRpbmdfY2xlYW51cCIsCi0gICAgInJlYXBfY2hpbGRyZW4iLCAiY3B5dGhvbl9vbmx5IiwgImNoZWNrX2ltcGxfZGV0YWlsIiwgImdldF9hdHRyaWJ1dGUiLAotICAgICJzd2FwX2l0ZW0iLCAic3dhcF9hdHRyIiwgInJlcXVpcmVzX0lFRUVfNzU0IiwKKyAgICAiaXNfcmVzb3VyY2VfZW5hYmxlZCIsICJyZXF1aXJlcyIsICJyZXF1aXJlc19mcmVlYnNkX3ZlcnNpb24iLAorICAgICJyZXF1aXJlc19saW51eF92ZXJzaW9uIiwgInJlcXVpcmVzX21hY192ZXIiLCAiZmluZF91bnVzZWRfcG9ydCIsICJiaW5kX3BvcnQiLAorICAgICJJUFY2X0VOQUJMRUQiLCAiaXNfanl0aG9uIiwgIlRFU1RGTiIsICJIT1NUIiwgIlNBVkVEQ1dEIiwgInRlbXBfY3dkIiwKKyAgICAiZmluZGZpbGUiLCAiY3JlYXRlX2VtcHR5X2ZpbGUiLCAic29ydGRpY3QiLCAiY2hlY2tfc3ludGF4X2Vycm9yIiwgIm9wZW5fdXJscmVzb3VyY2UiLAorICAgICJjaGVja193YXJuaW5ncyIsICJDbGVhbkltcG9ydCIsICJFbnZpcm9ubWVudFZhckd1YXJkIiwgIlRyYW5zaWVudFJlc291cmNlIiwKKyAgICAiY2FwdHVyZWRfc3Rkb3V0IiwgImNhcHR1cmVkX3N0ZGluIiwgImNhcHR1cmVkX3N0ZGVyciIsICJ0aW1lX291dCIsCisgICAgInNvY2tldF9wZWVyX3Jlc2V0IiwgImlvZXJyb3JfcGVlcl9yZXNldCIsICJydW5fd2l0aF9sb2NhbGUiLCAndGVtcF91bWFzaycsCisgICAgInRyYW5zaWVudF9pbnRlcm5ldCIsICJzZXRfbWVtbGltaXQiLCAiYmlnbWVtdGVzdCIsICJiaWdhZGRyc3BhY2V0ZXN0IiwKKyAgICAiQmFzaWNUZXN0UnVubmVyIiwgInJ1bl91bml0dGVzdCIsICJydW5fZG9jdGVzdCIsICJ0aHJlYWRpbmdfc2V0dXAiLAorICAgICJ0aHJlYWRpbmdfY2xlYW51cCIsICJyZWFwX2NoaWxkcmVuIiwgImNweXRob25fb25seSIsICJjaGVja19pbXBsX2RldGFpbCIsCisgICAgImdldF9hdHRyaWJ1dGUiLCAic3dhcF9pdGVtIiwgInN3YXBfYXR0ciIsICJyZXF1aXJlc19JRUVFXzc1NCIsCiAgICAgIlRlc3RIYW5kbGVyIiwgIk1hdGNoZXIiLCAiY2FuX3N5bWxpbmsiLCAic2tpcF91bmxlc3Nfc3ltbGluayIsCi0gICAgImltcG9ydF9mcmVzaF9tb2R1bGUiLCAiZmFpbGZhc3QiLAorICAgICJpbXBvcnRfZnJlc2hfbW9kdWxlIiwgInJlcXVpcmVzX3psaWIiLCAiUElQRV9NQVhfU0laRSIsICJmYWlsZmFzdCIsCisgICAgImFudGljaXBhdGVfZmFpbHVyZSIKICAgICBdCiAKIGNsYXNzIEVycm9yKEV4Y2VwdGlvbik6CkBAIC0xMjQsNiArMTMzLDE3IEBACiAgICAgcmV0dXJuIHNhdmVkCiAKIAorZGVmIGFudGljaXBhdGVfZmFpbHVyZShjb25kaXRpb24pOgorICAgICIiIkRlY29yYXRvciB0byBtYXJrIGEgdGVzdCB0aGF0IGlzIGtub3duIHRvIGJlIGJyb2tlbiBpbiBzb21lIGNhc2VzCisKKyAgICAgICBBbnkgdXNlIG9mIHRoaXMgZGVjb3JhdG9yIHNob3VsZCBoYXZlIGEgY29tbWVudCBpZGVudGlmeWluZyB0aGUKKyAgICAgICBhc3NvY2lhdGVkIHRyYWNrZXIgaXNzdWUuCisgICAgIiIiCisgICAgaWYgY29uZGl0aW9uOgorICAgICAgICByZXR1cm4gdW5pdHRlc3QuZXhwZWN0ZWRGYWlsdXJlCisgICAgcmV0dXJuIGxhbWJkYSBmOiBmCisKKwogZGVmIGltcG9ydF9mcmVzaF9tb2R1bGUobmFtZSwgZnJlc2g9KCksIGJsb2NrZWQ9KCksIGRlcHJlY2F0ZWQ9RmFsc2UpOgogICAgICIiIkltcG9ydHMgYW5kIHJldHVybnMgYSBtb2R1bGUsIGRlbGliZXJhdGVseSBieXBhc3NpbmcgdGhlIHN5cy5tb2R1bGVzIGNhY2hlCiAgICAgYW5kIGltcG9ydGluZyBhIGZyZXNoIGNvcHkgb2YgdGhlIG1vZHVsZS4gT25jZSB0aGUgaW1wb3J0IGlzIGNvbXBsZXRlLApAQCAtMTY3LDggKzE4Nyw3IEBACiAgICAgdHJ5OgogICAgICAgICBhdHRyaWJ1dGUgPSBnZXRhdHRyKG9iaiwgbmFtZSkKICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6Ci0gICAgICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJtb2R1bGUgJXMgaGFzIG5vIGF0dHJpYnV0ZSAlcyIgJSAoCi0gICAgICAgICAgICBvYmouX19uYW1lX18sIG5hbWUpKQorICAgICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgib2JqZWN0ICVyIGhhcyBubyBhdHRyaWJ1dGUgJXIiICUgKG9iaiwgbmFtZSkpCiAgICAgZWxzZToKICAgICAgICAgcmV0dXJuIGF0dHJpYnV0ZQogCkBAIC0yMDksOCArMjI4LDcgQEAKICAgICB0cnk6CiAgICAgICAgIHNodXRpbC5ybXRyZWUocGF0aCkKICAgICBleGNlcHQgT1NFcnJvciBhcyBlcnJvcjoKLSAgICAgICAgIyBVbml4IHJldHVybnMgRU5PRU5ULCBXaW5kb3dzIHJldHVybnMgRVNSQ0guCi0gICAgICAgIGlmIGVycm9yLmVycm5vIG5vdCBpbiAoZXJybm8uRU5PRU5ULCBlcnJuby5FU1JDSCk6CisgICAgICAgIGlmIGVycm9yLmVycm5vICE9IGVycm5vLkVOT0VOVDoKICAgICAgICAgICAgIHJhaXNlCiAKIGRlZiBtYWtlX2xlZ2FjeV9weWMoc291cmNlKToKQEAgLTI5NSw5ICszMTMsNTIgQEAKICAgICAgICAgcmV0dXJuCiAgICAgaWYgbm90IGlzX3Jlc291cmNlX2VuYWJsZWQocmVzb3VyY2UpOgogICAgICAgICBpZiBtc2cgaXMgTm9uZToKLSAgICAgICAgICAgIG1zZyA9ICJVc2Ugb2YgdGhlIGAlcycgcmVzb3VyY2Ugbm90IGVuYWJsZWQiICUgcmVzb3VyY2UKKyAgICAgICAgICAgIG1zZyA9ICJVc2Ugb2YgdGhlICVyIHJlc291cmNlIG5vdCBlbmFibGVkIiAlIHJlc291cmNlCiAgICAgICAgIHJhaXNlIFJlc291cmNlRGVuaWVkKG1zZykKIAorZGVmIF9yZXF1aXJlc191bml4X3ZlcnNpb24oc3lzbmFtZSwgbWluX3ZlcnNpb24pOgorICAgICIiIkRlY29yYXRvciByYWlzaW5nIFNraXBUZXN0IGlmIHRoZSBPUyBpcyBgc3lzbmFtZWAgYW5kIHRoZSB2ZXJzaW9uIGlzIGxlc3MKKyAgICB0aGFuIGBtaW5fdmVyc2lvbmAuCisKKyAgICBGb3IgZXhhbXBsZSwgQF9yZXF1aXJlc191bml4X3ZlcnNpb24oJ0ZyZWVCU0QnLCAoNywgMikpIHJhaXNlcyBTa2lwVGVzdCBpZgorICAgIHRoZSBGcmVlQlNEIHZlcnNpb24gaXMgbGVzcyB0aGFuIDcuMi4KKyAgICAiIiIKKyAgICBkZWYgZGVjb3JhdG9yKGZ1bmMpOgorICAgICAgICBAZnVuY3Rvb2xzLndyYXBzKGZ1bmMpCisgICAgICAgIGRlZiB3cmFwcGVyKCphcmdzLCAqKmt3KToKKyAgICAgICAgICAgIGlmIHBsYXRmb3JtLnN5c3RlbSgpID09IHN5c25hbWU6CisgICAgICAgICAgICAgICAgdmVyc2lvbl90eHQgPSBwbGF0Zm9ybS5yZWxlYXNlKCkuc3BsaXQoJy0nLCAxKVswXQorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgdmVyc2lvbiA9IHR1cGxlKG1hcChpbnQsIHZlcnNpb25fdHh0LnNwbGl0KCcuJykpKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgorICAgICAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgaWYgdmVyc2lvbiA8IG1pbl92ZXJzaW9uOgorICAgICAgICAgICAgICAgICAgICAgICAgbWluX3ZlcnNpb25fdHh0ID0gJy4nLmpvaW4obWFwKHN0ciwgbWluX3ZlcnNpb24pKQorICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiVzIHZlcnNpb24gJXMgb3IgaGlnaGVyIHJlcXVpcmVkLCBub3QgJXMiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJSAoc3lzbmFtZSwgbWluX3ZlcnNpb25fdHh0LCB2ZXJzaW9uX3R4dCkpCisgICAgICAgIHJldHVybiB3cmFwcGVyCisgICAgcmV0dXJuIGRlY29yYXRvcgorCitkZWYgcmVxdWlyZXNfZnJlZWJzZF92ZXJzaW9uKCptaW5fdmVyc2lvbik6CisgICAgIiIiRGVjb3JhdG9yIHJhaXNpbmcgU2tpcFRlc3QgaWYgdGhlIE9TIGlzIEZyZWVCU0QgYW5kIHRoZSBGcmVlQlNEIHZlcnNpb24gaXMKKyAgICBsZXNzIHRoYW4gYG1pbl92ZXJzaW9uYC4KKworICAgIEZvciBleGFtcGxlLCBAcmVxdWlyZXNfZnJlZWJzZF92ZXJzaW9uKDcsIDIpIHJhaXNlcyBTa2lwVGVzdCBpZiB0aGUgRnJlZUJTRAorICAgIHZlcnNpb24gaXMgbGVzcyB0aGFuIDcuMi4KKyAgICAiIiIKKyAgICByZXR1cm4gX3JlcXVpcmVzX3VuaXhfdmVyc2lvbignRnJlZUJTRCcsIG1pbl92ZXJzaW9uKQorCitkZWYgcmVxdWlyZXNfbGludXhfdmVyc2lvbigqbWluX3ZlcnNpb24pOgorICAgICIiIkRlY29yYXRvciByYWlzaW5nIFNraXBUZXN0IGlmIHRoZSBPUyBpcyBMaW51eCBhbmQgdGhlIExpbnV4IHZlcnNpb24gaXMKKyAgICBsZXNzIHRoYW4gYG1pbl92ZXJzaW9uYC4KKworICAgIEZvciBleGFtcGxlLCBAcmVxdWlyZXNfbGludXhfdmVyc2lvbigyLCA2LCAzMikgcmFpc2VzIFNraXBUZXN0IGlmIHRoZSBMaW51eAorICAgIHZlcnNpb24gaXMgbGVzcyB0aGFuIDIuNi4zMi4KKyAgICAiIiIKKyAgICByZXR1cm4gX3JlcXVpcmVzX3VuaXhfdmVyc2lvbignTGludXgnLCBtaW5fdmVyc2lvbikKKwogZGVmIHJlcXVpcmVzX21hY192ZXIoKm1pbl92ZXJzaW9uKToKICAgICAiIiJEZWNvcmF0b3IgcmFpc2luZyBTa2lwVGVzdCBpZiB0aGUgT1MgaXMgTWFjIE9TIFggYW5kIHRoZSBPUyBYCiAgICAgdmVyc2lvbiBpZiBsZXNzIHRoYW4gbWluX3ZlcnNpb24uCkBAIC0zMjUsNiArMzg2LDcgQEAKICAgICAgICAgcmV0dXJuIHdyYXBwZXIKICAgICByZXR1cm4gZGVjb3JhdG9yCiAKKwogSE9TVCA9ICdsb2NhbGhvc3QnCiAKIGRlZiBmaW5kX3VudXNlZF9wb3J0KGZhbWlseT1zb2NrZXQuQUZfSU5FVCwgc29ja3R5cGU9c29ja2V0LlNPQ0tfU1RSRUFNKToKQEAgLTQyMCwyOSArNDgyLDM1IEBACiAgICAgcG9ydCA9IHNvY2suZ2V0c29ja25hbWUoKVsxXQogICAgIHJldHVybiBwb3J0CiAKLUZVWlogPSAxZS02Ci0KLWRlZiBmY21wKHgsIHkpOiAjIGZ1enp5IGNvbXBhcmlzb24gZnVuY3Rpb24KLSAgICBpZiBpc2luc3RhbmNlKHgsIGZsb2F0KSBvciBpc2luc3RhbmNlKHksIGZsb2F0KToKK2RlZiBfaXNfaXB2Nl9lbmFibGVkKCk6CisgICAgIiIiQ2hlY2sgd2hldGhlciBJUHY2IGlzIGVuYWJsZWQgb24gdGhpcyBob3N0LiIiIgorICAgIGlmIHNvY2tldC5oYXNfaXB2NjoKICAgICAgICAgdHJ5OgotICAgICAgICAgICAgZnV6eiA9IChhYnMoeCkgKyBhYnMoeSkpICogRlVaWgotICAgICAgICAgICAgaWYgYWJzKHgteSkgPD0gZnV6ejoKLSAgICAgICAgICAgICAgICByZXR1cm4gMAotICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBzb2NrID0gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVDYsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgICAgIHNvY2suYmluZCgoJzo6MScsIDApKQorICAgICAgICBleGNlcHQgKHNvY2tldC5lcnJvciwgc29ja2V0LmdhaWVycm9yKToKICAgICAgICAgICAgIHBhc3MKLSAgICBlbGlmIHR5cGUoeCkgPT0gdHlwZSh5KSBhbmQgaXNpbnN0YW5jZSh4LCAodHVwbGUsIGxpc3QpKToKLSAgICAgICAgZm9yIGkgaW4gcmFuZ2UobWluKGxlbih4KSwgbGVuKHkpKSk6Ci0gICAgICAgICAgICBvdXRjb21lID0gZmNtcCh4W2ldLCB5W2ldKQotICAgICAgICAgICAgaWYgb3V0Y29tZSAhPSAwOgotICAgICAgICAgICAgICAgIHJldHVybiBvdXRjb21lCi0gICAgICAgIHJldHVybiAobGVuKHgpID4gbGVuKHkpKSAtIChsZW4oeCkgPCBsZW4oeSkpCi0gICAgcmV0dXJuICh4ID4geSkgLSAoeCA8IHkpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzb2NrLmNsb3NlKCkKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisgICAgcmV0dXJuIEZhbHNlCisKK0lQVjZfRU5BQkxFRCA9IF9pc19pcHY2X2VuYWJsZWQoKQorCisKKyMgQSBjb25zdGFudCBsaWtlbHkgbGFyZ2VyIHRoYW4gdGhlIHVuZGVybHlpbmcgT1MgcGlwZSBidWZmZXIgc2l6ZS4KKyMgV2luZG93cyBsaW1pdCBzZWVtcyB0byBiZSBhcm91bmQgNTEyQiwgYW5kIG1vc3QgVW5peCBrZXJuZWxzIGhhdmUgYSA2NEsgcGlwZQorIyBidWZmZXIgc2l6ZTogdGFrZSAxTSB0byBiZSBzdXJlLgorUElQRV9NQVhfU0laRSA9IDEwMjQgKiAxMDI0CisKIAogIyBkZWNvcmF0b3IgZm9yIHNraXBwaW5nIHRlc3RzIG9uIG5vbi1JRUVFIDc1NCBwbGF0Zm9ybXMKIHJlcXVpcmVzX0lFRUVfNzU0ID0gdW5pdHRlc3Quc2tpcFVubGVzcygKICAgICBmbG9hdC5fX2dldGZvcm1hdF9fKCJkb3VibGUiKS5zdGFydHN3aXRoKCJJRUVFIiksCiAgICAgInRlc3QgcmVxdWlyZXMgSUVFRSA3NTQgZG91YmxlcyIpCiAKK3JlcXVpcmVzX3psaWIgPSB1bml0dGVzdC5za2lwVW5sZXNzKHpsaWIsICdyZXF1aXJlcyB6bGliJykKKwogaXNfanl0aG9uID0gc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ2phdmEnKQogCiAjIEZpbGVuYW1lIHVzZWQgZm9yIHRlc3RpbmcKQEAgLTU0MywxNCArNjExLDE1IEBACiAgICAgICAgICAgICBybXRyZWUobmFtZSkKIAogCi1AY29udGV4dGxpYi5jb250ZXh0bWFuYWdlcgotZGVmIHRlbXBfdW1hc2sodW1hc2spOgotICAgICIiIkNvbnRleHQgbWFuYWdlciB0aGF0IHRlbXBvcmFyaWx5IHNldHMgdGhlIHByb2Nlc3MgdW1hc2suIiIiCi0gICAgb2xkbWFzayA9IG9zLnVtYXNrKHVtYXNrKQotICAgIHRyeToKLSAgICAgICAgeWllbGQKLSAgICBmaW5hbGx5OgotICAgICAgICBvcy51bWFzayhvbGRtYXNrKQoraWYgaGFzYXR0cihvcywgInVtYXNrIik6CisgICAgQGNvbnRleHRsaWIuY29udGV4dG1hbmFnZXIKKyAgICBkZWYgdGVtcF91bWFzayh1bWFzayk6CisgICAgICAgICIiIkNvbnRleHQgbWFuYWdlciB0aGF0IHRlbXBvcmFyaWx5IHNldHMgdGhlIHByb2Nlc3MgdW1hc2suIiIiCisgICAgICAgIG9sZG1hc2sgPSBvcy51bWFzayh1bWFzaykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgeWllbGQKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLnVtYXNrKG9sZG1hc2spCiAKIAogZGVmIGZpbmRmaWxlKGZpbGUsIGhlcmU9X19maWxlX18sIHN1YmRpcj1Ob25lKToKQEAgLTU2OCw2ICs2MzcsMTEgQEAKICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMoZm4pOiByZXR1cm4gZm4KICAgICByZXR1cm4gZmlsZQogCitkZWYgY3JlYXRlX2VtcHR5X2ZpbGUoZmlsZW5hbWUpOgorICAgICIiIkNyZWF0ZSBhbiBlbXB0eSBmaWxlLiBJZiB0aGUgZmlsZSBhbHJlYWR5IGV4aXN0cywgdHJ1bmNhdGUgaXQuIiIiCisgICAgZmQgPSBvcy5vcGVuKGZpbGVuYW1lLCBvcy5PX1dST05MWSB8IG9zLk9fQ1JFQVQgfCBvcy5PX1RSVU5DKQorICAgIG9zLmNsb3NlKGZkKQorCiBkZWYgc29ydGRpY3QoZGljdCk6CiAgICAgIkxpa2UgcmVwcihkaWN0KSwgYnV0IGluIHNvcnRlZCBvcmRlci4iCiAgICAgaXRlbXMgPSBzb3J0ZWQoZGljdC5pdGVtcygpKQpAQCAtNjMyLDcgKzcwNiw3IEBACiAgICAgZiA9IGNoZWNrX3ZhbGlkX2ZpbGUoZm4pCiAgICAgaWYgZiBpcyBub3QgTm9uZToKICAgICAgICAgcmV0dXJuIGYKLSAgICByYWlzZSBUZXN0RmFpbGVkKCdpbnZhbGlkIHJlc291cmNlICIlcyInICUgZm4pCisgICAgcmFpc2UgVGVzdEZhaWxlZCgnaW52YWxpZCByZXNvdXJjZSAlcicgJSBmbikKIAogCiBjbGFzcyBXYXJuaW5nc1JlY29yZGVyKG9iamVjdCk6CkBAIC03NTMsNyArODI3LDcgQEAKICAgICAgICAgc3lzLm1vZHVsZXMudXBkYXRlKHNlbGYub3JpZ2luYWxfbW9kdWxlcykKIAogCi1jbGFzcyBFbnZpcm9ubWVudFZhckd1YXJkKGNvbGxlY3Rpb25zLk11dGFibGVNYXBwaW5nKToKK2NsYXNzIEVudmlyb25tZW50VmFyR3VhcmQoY29sbGVjdGlvbnMuYWJjLk11dGFibGVNYXBwaW5nKToKIAogICAgICIiIkNsYXNzIHRvIGhlbHAgcHJvdGVjdCB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgcHJvcGVybHkuICBDYW4gYmUgdXNlZCBhcwogICAgIGEgY29udGV4dCBtYW5hZ2VyLiIiIgpAQCAtODg0LDcgKzk1OCw3IEBACiAgICAgICAgICgnV1NBTk9fREFUQScsIDExMDA0KSwKICAgICBdCiAKLSAgICBkZW5pZWQgPSBSZXNvdXJjZURlbmllZCgiUmVzb3VyY2UgJyVzJyBpcyBub3QgYXZhaWxhYmxlIiAlIHJlc291cmNlX25hbWUpCisgICAgZGVuaWVkID0gUmVzb3VyY2VEZW5pZWQoIlJlc291cmNlICVyIGlzIG5vdCBhdmFpbGFibGUiICUgcmVzb3VyY2VfbmFtZSkKICAgICBjYXB0dXJlZF9lcnJub3MgPSBlcnJub3MKICAgICBnYWlfZXJybm9zID0gW10KICAgICBpZiBub3QgY2FwdHVyZWRfZXJybm9zOgpAQCAtOTczLDYgKzEwNDcsMTYgQEAKICAgICBnYy5jb2xsZWN0KCkKICAgICBnYy5jb2xsZWN0KCkKIAorQGNvbnRleHRsaWIuY29udGV4dG1hbmFnZXIKK2RlZiBkaXNhYmxlX2djKCk6CisgICAgaGF2ZV9nYyA9IGdjLmlzZW5hYmxlZCgpCisgICAgZ2MuZGlzYWJsZSgpCisgICAgdHJ5OgorICAgICAgICB5aWVsZAorICAgIGZpbmFsbHk6CisgICAgICAgIGlmIGhhdmVfZ2M6CisgICAgICAgICAgICBnYy5lbmFibGUoKQorCiAKIGRlZiBweXRob25faXNfb3B0aW1pemVkKCk6CiAgICAgIiIiRmluZCBpZiBQeXRob24gd2FzIGJ1aWx0IHdpdGggb3B0aW1pemF0aW9ucy4iIiIKQEAgLTk4MSw3ICsxMDY1LDcgQEAKICAgICBmb3Igb3B0IGluIGNmbGFncy5zcGxpdCgpOgogICAgICAgICBpZiBvcHQuc3RhcnRzd2l0aCgnLU8nKToKICAgICAgICAgICAgIGZpbmFsX29wdCA9IG9wdAotICAgIHJldHVybiBmaW5hbF9vcHQgYW5kIGZpbmFsX29wdCAhPSAnLU8wJworICAgIHJldHVybiBmaW5hbF9vcHQgIT0gJycgYW5kIGZpbmFsX29wdCAhPSAnLU8wJwogCiAKICM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpAQCAtMTA1NCw0MSArMTEzOCw2NiBAQAogICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdNZW1vcnkgbGltaXQgJXIgdG9vIGxvdyB0byBiZSB1c2VmdWwnICUgKGxpbWl0LCkpCiAgICAgbWF4X21lbXVzZSA9IG1lbWxpbWl0CiAKLWRlZiBfbWVtb3J5X3dhdGNoZG9nKHN0YXJ0X2V2dCwgZmluaXNoX2V2dCwgcGVyaW9kPTEwLjApOgotICAgICIiIkEgZnVuY3Rpb24gd2hpY2ggcGVyaW9kaWNhbGx5IHdhdGNoZXMgdGhlIHByb2Nlc3MnIG1lbW9yeSBjb25zdW1wdGlvbgorY2xhc3MgX01lbW9yeVdhdGNoZG9nOgorICAgICIiIkFuIG9iamVjdCB3aGljaCBwZXJpb2RpY2FsbHkgd2F0Y2hlcyB0aGUgcHJvY2VzcycgbWVtb3J5IGNvbnN1bXB0aW9uCiAgICAgYW5kIHByaW50cyBpdCBvdXQuCiAgICAgIiIiCi0gICAgIyBYWFg6IGJlY2F1c2Ugb2YgdGhlIEdJTCwgYW5kIGJlY2F1c2UgdGhlIHZlcnkgbG9uZyBvcGVyYXRpb25zIHRlc3RlZAotICAgICMgaW4gbW9zdCBiaWdtZW0gdGVzdHMgYXJlIHVuaW50ZXJydXB0aWJsZSwgdGhlIGxvb3AgYmVsb3cgZ2V0cyB3b2tlbiB1cAotICAgICMgbXVjaCBsZXNzIG9mdGVuIHRoYW4gZXhwZWN0ZWQuCi0gICAgIyBUaGUgcG9sbGluZyBjb2RlIHNob3VsZCBiZSByZXdyaXR0ZW4gaW4gcmF3IEMsIHdpdGhvdXQgaG9sZGluZyB0aGUgR0lMLAotICAgICMgYW5kIHB1c2ggcmVzdWx0cyBvbnRvIGFuIGFub255bW91cyBwaXBlLgotICAgIHRyeToKLSAgICAgICAgcGFnZV9zaXplID0gb3Muc3lzY29uZignU0NfUEFHRVNJWkUnKQotICAgIGV4Y2VwdCAoVmFsdWVFcnJvciwgQXR0cmlidXRlRXJyb3IpOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICBzZWxmLnByb2NmaWxlID0gJy9wcm9jL3twaWR9L3N0YXRtJy5mb3JtYXQocGlkPW9zLmdldHBpZCgpKQorICAgICAgICBzZWxmLnN0YXJ0ZWQgPSBGYWxzZQorICAgICAgICBzZWxmLnRocmVhZCA9IE5vbmUKICAgICAgICAgdHJ5OgotICAgICAgICAgICAgcGFnZV9zaXplID0gb3Muc3lzY29uZignU0NfUEFHRV9TSVpFJykKKyAgICAgICAgICAgIHNlbGYucGFnZV9zaXplID0gb3Muc3lzY29uZignU0NfUEFHRVNJWkUnKQogICAgICAgICBleGNlcHQgKFZhbHVlRXJyb3IsIEF0dHJpYnV0ZUVycm9yKToKLSAgICAgICAgICAgIHBhZ2Vfc2l6ZSA9IDQwOTYKLSAgICBwcm9jZmlsZSA9ICcvcHJvYy97cGlkfS9zdGF0bScuZm9ybWF0KHBpZD1vcy5nZXRwaWQoKSkKLSAgICB0cnk6Ci0gICAgICAgIGYgPSBvcGVuKHByb2NmaWxlLCAncmInKQotICAgIGV4Y2VwdCBJT0Vycm9yIGFzIGU6Ci0gICAgICAgIHdhcm5pbmdzLndhcm4oJy9wcm9jIG5vdCBhdmFpbGFibGUgZm9yIHN0YXRzOiB7fScuZm9ybWF0KGUpLAotICAgICAgICAgICAgICAgICAgICAgIFJ1bnRpbWVXYXJuaW5nKQotICAgICAgICBzeXMuc3RkZXJyLmZsdXNoKCkKLSAgICAgICAgcmV0dXJuCi0gICAgd2l0aCBmOgotICAgICAgICBzdGFydF9ldnQuc2V0KCkKLSAgICAgICAgb2xkX2RhdGEgPSAtMQotICAgICAgICB3aGlsZSBub3QgZmluaXNoX2V2dC53YWl0KHBlcmlvZCk6Ci0gICAgICAgICAgICBmLnNlZWsoMCkKLSAgICAgICAgICAgIHN0YXRtID0gZi5yZWFkKCkuZGVjb2RlKCdhc2NpaScpCi0gICAgICAgICAgICBkYXRhID0gaW50KHN0YXRtLnNwbGl0KClbNV0pCi0gICAgICAgICAgICBpZiBkYXRhICE9IG9sZF9kYXRhOgotICAgICAgICAgICAgICAgIG9sZF9kYXRhID0gZGF0YQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYucGFnZV9zaXplID0gb3Muc3lzY29uZignU0NfUEFHRV9TSVpFJykKKyAgICAgICAgICAgIGV4Y2VwdCAoVmFsdWVFcnJvciwgQXR0cmlidXRlRXJyb3IpOgorICAgICAgICAgICAgICAgIHNlbGYucGFnZV9zaXplID0gNDA5NgorCisgICAgZGVmIGNvbnN1bWVyKHNlbGYsIGZkKToKKyAgICAgICAgSEVBREVSID0gImwiCisgICAgICAgIGhlYWRlcl9zaXplID0gc3RydWN0LmNhbGNzaXplKEhFQURFUikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICBoZWFkZXIgPSBvcy5yZWFkKGZkLCBoZWFkZXJfc2l6ZSkKKyAgICAgICAgICAgICAgICBpZiBsZW4oaGVhZGVyKSA8IGhlYWRlcl9zaXplOgorICAgICAgICAgICAgICAgICAgICAjIFBpcGUgY2xvc2VkIG9uIG90aGVyIGVuZAorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGRhdGFfbGVuLCA9IHN0cnVjdC51bnBhY2soSEVBREVSLCBoZWFkZXIpCisgICAgICAgICAgICAgICAgZGF0YSA9IG9zLnJlYWQoZmQsIGRhdGFfbGVuKQorICAgICAgICAgICAgICAgIHN0YXRtID0gZGF0YS5kZWNvZGUoJ2FzY2lpJykKKyAgICAgICAgICAgICAgICBkYXRhID0gaW50KHN0YXRtLnNwbGl0KClbNV0pCiAgICAgICAgICAgICAgICAgcHJpbnQoIiAuLi4gcHJvY2VzcyBkYXRhIHNpemU6IHtkYXRhOi4xZn1HIgotICAgICAgICAgICAgICAgICAgICAgICAuZm9ybWF0KGRhdGE9ZGF0YSAqIHBhZ2Vfc2l6ZSAvICgxMDI0ICoqIDMpKSkKKyAgICAgICAgICAgICAgICAgICAgICAgLmZvcm1hdChkYXRhPWRhdGEgKiBzZWxmLnBhZ2Vfc2l6ZSAvICgxMDI0ICoqIDMpKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorCisgICAgZGVmIHN0YXJ0KHNlbGYpOgorICAgICAgICBpZiBub3QgZmF1bHRoYW5kbGVyIG9yIG5vdCBoYXNhdHRyKGZhdWx0aGFuZGxlciwgJ19maWxlX3dhdGNoZG9nJyk6CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmZkID0gb3Mub3BlbihzZWxmLnByb2NmaWxlLCBvcy5PX1JET05MWSkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHdhcm5pbmdzLndhcm4oJy9wcm9jIG5vdCBhdmFpbGFibGUgZm9yIHN0YXRzOiB7fScuZm9ybWF0KGUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICBSdW50aW1lV2FybmluZykKKyAgICAgICAgICAgIHN5cy5zdGRlcnIuZmx1c2goKQorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIHBpcGVfZmQsIHdmZCA9IG9zLnBpcGUoKQorICAgICAgICAjIF9maWxlX3dhdGNoZG9nKCkgZG9lc24ndCB0YWtlIHRoZSBHSUwgaW4gaXRzIGNoaWxkIHRocmVhZCwgYW5kCisgICAgICAgICMgdGhlcmVmb3JlIGNvbGxlY3RzIHN0YXRpc3RpY3MgdGltZWx5CisgICAgICAgIGZhdWx0aGFuZGxlci5fZmlsZV93YXRjaGRvZyhyZmQsIHdmZCwgMS4wKQorICAgICAgICBzZWxmLnN0YXJ0ZWQgPSBUcnVlCisgICAgICAgIHNlbGYudGhyZWFkID0gdGhyZWFkaW5nLlRocmVhZCh0YXJnZXQ9c2VsZi5jb25zdW1lciwgYXJncz0ocGlwZV9mZCwpKQorICAgICAgICBzZWxmLnRocmVhZC5kYWVtb24gPSBUcnVlCisgICAgICAgIHNlbGYudGhyZWFkLnN0YXJ0KCkKKworICAgIGRlZiBzdG9wKHNlbGYpOgorICAgICAgICBpZiBub3Qgc2VsZi5zdGFydGVkOgorICAgICAgICAgICAgcmV0dXJuCisgICAgICAgIGZhdWx0aGFuZGxlci5fY2FuY2VsX2ZpbGVfd2F0Y2hkb2coKQorICAgICAgICBzZWxmLnRocmVhZC5qb2luKCkKKwogCiBkZWYgYmlnbWVtdGVzdChzaXplLCBtZW11c2UsIGRyeV9ydW49VHJ1ZSk6CiAgICAgIiIiRGVjb3JhdG9yIGZvciBiaWdtZW0gdGVzdHMuCkBAIC0xMTE1LDI3ICsxMjI0LDIwIEBACiAgICAgICAgICAgICAgICAgICAgICJub3QgZW5vdWdoIG1lbW9yeTogJS4xZkcgbWluaW11bSBuZWVkZWQiCiAgICAgICAgICAgICAgICAgICAgICUgKHNpemUgKiBtZW11c2UgLyAoMTAyNCAqKiAzKSkpCiAKLSAgICAgICAgICAgIGlmIHJlYWxfbWF4X21lbXVzZSBhbmQgdmVyYm9zZSBhbmQgdGhyZWFkaW5nOgorICAgICAgICAgICAgaWYgcmVhbF9tYXhfbWVtdXNlIGFuZCB2ZXJib3NlIGFuZCBmYXVsdGhhbmRsZXIgYW5kIHRocmVhZGluZzoKICAgICAgICAgICAgICAgICBwcmludCgpCiAgICAgICAgICAgICAgICAgcHJpbnQoIiAuLi4gZXhwZWN0ZWQgcGVhayBtZW1vcnkgdXNlOiB7cGVhazouMWZ9RyIKICAgICAgICAgICAgICAgICAgICAgICAuZm9ybWF0KHBlYWs9c2l6ZSAqIG1lbXVzZSAvICgxMDI0ICoqIDMpKSkKLSAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LmZsdXNoKCkKLSAgICAgICAgICAgICAgICBzdGFydF9ldnQgPSB0aHJlYWRpbmcuRXZlbnQoKQotICAgICAgICAgICAgICAgIGZpbmlzaF9ldnQgPSB0aHJlYWRpbmcuRXZlbnQoKQotICAgICAgICAgICAgICAgIHQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1fbWVtb3J5X3dhdGNoZG9nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3M9KHN0YXJ0X2V2dCwgZmluaXNoX2V2dCwgMC41KSkKLSAgICAgICAgICAgICAgICB0LmRhZW1vbiA9IFRydWUKLSAgICAgICAgICAgICAgICB0LnN0YXJ0KCkKLSAgICAgICAgICAgICAgICBzdGFydF9ldnQuc2V0KCkKKyAgICAgICAgICAgICAgICB3YXRjaGRvZyA9IF9NZW1vcnlXYXRjaGRvZygpCisgICAgICAgICAgICAgICAgd2F0Y2hkb2cuc3RhcnQoKQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICB0ID0gTm9uZQorICAgICAgICAgICAgICAgIHdhdGNoZG9nID0gTm9uZQogCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgcmV0dXJuIGYoc2VsZiwgbWF4c2l6ZSkKICAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgaWYgdDoKLSAgICAgICAgICAgICAgICAgICAgZmluaXNoX2V2dC5zZXQoKQotICAgICAgICAgICAgICAgICAgICB0LmpvaW4oKQorICAgICAgICAgICAgICAgIGlmIHdhdGNoZG9nOgorICAgICAgICAgICAgICAgICAgICB3YXRjaGRvZy5zdG9wKCkKIAogICAgICAgICB3cmFwcGVyLnNpemUgPSBzaXplCiAgICAgICAgIHdyYXBwZXIubWVtdXNlID0gbWVtdXNlCkBAIC0xMjE3LDYgKzEzMTksMzMgQEAKICAgICByZXR1cm4gZ3VhcmRzLmdldChwbGF0Zm9ybS5weXRob25faW1wbGVtZW50YXRpb24oKS5sb3dlcigpLCBkZWZhdWx0KQogCiAKK2RlZiBub190cmFjaW5nKGZ1bmMpOgorICAgICIiIkRlY29yYXRvciB0byB0ZW1wb3JhcmlseSB0dXJuIG9mZiB0cmFjaW5nIGZvciB0aGUgZHVyYXRpb24gb2YgYSB0ZXN0LiIiIgorICAgIGlmIG5vdCBoYXNhdHRyKHN5cywgJ2dldHRyYWNlJyk6CisgICAgICAgIHJldHVybiBmdW5jCisgICAgZWxzZToKKyAgICAgICAgQGZ1bmN0b29scy53cmFwcyhmdW5jKQorICAgICAgICBkZWYgd3JhcHBlcigqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAgICAgb3JpZ2luYWxfdHJhY2UgPSBzeXMuZ2V0dHJhY2UoKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHN5cy5zZXR0cmFjZShOb25lKQorICAgICAgICAgICAgICAgIHJldHVybiBmdW5jKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgc3lzLnNldHRyYWNlKG9yaWdpbmFsX3RyYWNlKQorICAgICAgICByZXR1cm4gd3JhcHBlcgorCisKK2RlZiByZWZjb3VudF90ZXN0KHRlc3QpOgorICAgICIiIkRlY29yYXRvciBmb3IgdGVzdHMgd2hpY2ggaW52b2x2ZSByZWZlcmVuY2UgY291bnRpbmcuCisKKyAgICBUbyBzdGFydCwgdGhlIGRlY29yYXRvciBkb2VzIG5vdCBydW4gdGhlIHRlc3QgaWYgaXMgbm90IHJ1biBieSBDUHl0aG9uLgorICAgIEFmdGVyIHRoYXQsIGFueSB0cmFjZSBmdW5jdGlvbiBpcyB1bnNldCBkdXJpbmcgdGhlIHRlc3QgdG8gcHJldmVudAorICAgIHVuZXhwZWN0ZWQgcmVmY291bnRzIGNhdXNlZCBieSB0aGUgdHJhY2UgZnVuY3Rpb24uCisKKyAgICAiIiIKKyAgICByZXR1cm4gbm9fdHJhY2luZyhjcHl0aG9uX29ubHkodGVzdCkpCisKKwogZGVmIF9maWx0ZXJfc3VpdGUoc3VpdGUsIHByZWQpOgogICAgICIiIlJlY3Vyc2l2ZWx5IGZpbHRlciB0ZXN0IGNhc2VzIGluIGEgc3VpdGUgYmFzZWQgb24gYSBwcmVkaWNhdGUuIiIiCiAgICAgbmV3dGVzdHMgPSBbXQpAQCAtMTIyOSw3ICsxMzU4LDYgQEAKICAgICAgICAgICAgICAgICBuZXd0ZXN0cy5hcHBlbmQodGVzdCkKICAgICBzdWl0ZS5fdGVzdHMgPSBuZXd0ZXN0cwogCi0KIGRlZiBfcnVuX3N1aXRlKHN1aXRlKToKICAgICAiIiJSdW4gdGVzdHMgZnJvbSBhIHVuaXR0ZXN0LlRlc3RTdWl0ZS1kZXJpdmVkIGNsYXNzLiIiIgogICAgIGlmIHZlcmJvc2U6CkBAIC0xNDU2LDcgKzE1ODQsNyBAQAogCiBkZWYgYXJnc19mcm9tX2ludGVycHJldGVyX2ZsYWdzKCk6CiAgICAgIiIiUmV0dXJuIGEgbGlzdCBvZiBjb21tYW5kLWxpbmUgYXJndW1lbnRzIHJlcHJvZHVjaW5nIHRoZSBjdXJyZW50Ci0gICAgc2V0dGluZ3MgaW4gc3lzLmZsYWdzLiIiIgorICAgIHNldHRpbmdzIGluIHN5cy5mbGFncyBhbmQgc3lzLndhcm5vcHRpb25zLiIiIgogICAgIGZsYWdfb3B0X21hcCA9IHsKICAgICAgICAgJ2J5dGVzX3dhcm5pbmcnOiAnYicsCiAgICAgICAgICdkb250X3dyaXRlX2J5dGVjb2RlJzogJ0InLApAQCAtMTQ3MSw2ICsxNTk5LDggQEAKICAgICAgICAgdiA9IGdldGF0dHIoc3lzLmZsYWdzLCBmbGFnKQogICAgICAgICBpZiB2ID4gMDoKICAgICAgICAgICAgIGFyZ3MuYXBwZW5kKCctJyArIG9wdCAqIHYpCisgICAgZm9yIG9wdCBpbiBzeXMud2Fybm9wdGlvbnM6CisgICAgICAgIGFyZ3MuYXBwZW5kKCctVycgKyBvcHQpCiAgICAgcmV0dXJuIGFyZ3MKIAogIz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9fbG9jYWxlLnB5IGIvTGliL3Rlc3QvdGVzdF9fbG9jYWxlLnB5CmluZGV4IDNmYWRiNTcuLmY3ZjFhYmQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfX2xvY2FsZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X19sb2NhbGUucHkKQEAgLTEsMTMgKzEsMTUgQEAKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QKIGZyb20gX2xvY2FsZSBpbXBvcnQgKHNldGxvY2FsZSwgTENfQUxMLCBMQ19DVFlQRSwgTENfTlVNRVJJQywgbG9jYWxlY29udiwgRXJyb3IpCiB0cnk6CiAgICAgZnJvbSBfbG9jYWxlIGltcG9ydCAoUkFESVhDSEFSLCBUSE9VU0VQLCBubF9sYW5naW5mbykKIGV4Y2VwdCBJbXBvcnRFcnJvcjoKICAgICBubF9sYW5naW5mbyA9IE5vbmUKIAotaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgY29kZWNzCitpbXBvcnQgbG9jYWxlCiBpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKIGZyb20gcGxhdGZvcm0gaW1wb3J0IHVuYW1lCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgcnVuX3VuaXR0ZXN0CiAKIGlmIHVuYW1lKClbMF0gPT0gIkRhcndpbiI6CiAgICAgbWFqLCBtaW4sIG1pYyA9IFtpbnQocGFydCkgZm9yIHBhcnQgaW4gdW5hbWUoKVsyXS5zcGxpdCgiLiIpXQpAQCAtMTcsNyArMTksNyBAQAogY2FuZGlkYXRlX2xvY2FsZXMgPSBbJ2VzX1VZJywgJ2ZyX0ZSJywgJ2ZpX0ZJJywgJ2VzX0NPJywgJ3B0X1BUJywgJ2l0X0lUJywKICAgICAnZXRfRUUnLCAnZXNfUFknLCAnbm9fTk8nLCAnbmxfTkwnLCAnbHZfTFYnLCAnZWxfR1InLCAnYmVfQlknLCAnZnJfQkUnLAogICAgICdyb19STycsICdydV9VQScsICdydV9SVScsICdlc19WRScsICdjYV9FUycsICdzZV9OTycsICdlc19FQycsICdpZF9JRCcsCi0gICAgJ2thX0dFJywgJ2VzX0NMJywgJ2h1X0hVJywgJ3dhX0JFJywgJ2x0X0xUJywgJ3NsX1NJJywgJ2hyX0hSJywgJ2VzX0FSJywKKyAgICAna2FfR0UnLCAnZXNfQ0wnLCAnd2FfQkUnLCAnaHVfSFUnLCAnbHRfTFQnLCAnc2xfU0knLCAnaHJfSFInLCAnZXNfQVInLAogICAgICdlc19FUycsICdvY19GUicsICdnbF9FUycsICdiZ19CRycsICdpc19JUycsICdta19NSycsICdkZV9BVCcsICdwdF9CUicsCiAgICAgJ2RhX0RLJywgJ25uX05PJywgJ2NzX0NaJywgJ2RlX0xVJywgJ2VzX0JPJywgJ3NxX0FMJywgJ3NrX1NLJywgJ2ZyX0NIJywKICAgICAnZGVfREUnLCAnc3JfWVUnLCAnYnJfRlInLCAnbmxfQkUnLCAnc3ZfRkknLCAncGxfUEwnLCAnZnJfQ0EnLCAnZm9fRk8nLApAQCAtMjUsNiArMjcsMzEgQEAKICAgICAnZXVfRVMnLCAndmlfVk4nLCAnYWZfWkEnLCAnbmJfTk8nLCAnZW5fREsnLCAndGdfVEonLCAnZW5fVVMnLAogICAgICdlc19FUy5JU084ODU5LTEnLCAnZnJfRlIuSVNPODg1OS0xNScsICdydV9SVS5LT0k4LVInLCAna29fS1IuZXVjS1InXQogCisjIElzc3VlICMxMzQ0MTogU2tpcCBzb21lIGxvY2FsZXMgKGUuZy4gY3NfQ1ogYW5kIGh1X0hVKSBvbiBTb2xhcmlzIHRvCisjIHdvcmthcm91bmQgYSBtYnN0b3djcygpIGJ1Zy4gRm9yIGV4YW1wbGUsIG9uIFNvbGFyaXMsIHRoZSBodV9IVSBsb2NhbGUgdXNlcworIyB0aGUgbG9jYWxlIGVuY29kaW5nIElTTy04ODU5LTIsIHRoZSB0aG91c2F1ZHMgc2VwYXJhdG9yIGlzIGInXHhBMCcgYW5kIGl0IGlzCisjIGRlY29kZWQgYXMgVSszMDAwMDAyMCAoYW4gaW52YWxpZCBjaGFyYWN0ZXIpIGJ5IG1ic3Rvd2NzKCkuCitpZiBzeXMucGxhdGZvcm0gPT0gJ3N1bm9zNSc6CisgICAgb2xkX2xvY2FsZSA9IGxvY2FsZS5zZXRsb2NhbGUobG9jYWxlLkxDX0FMTCkKKyAgICB0cnk6CisgICAgICAgIGxvY2FsZXMgPSBbXQorICAgICAgICBmb3IgbG9jIGluIGNhbmRpZGF0ZV9sb2NhbGVzOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGxvY2FsZS5zZXRsb2NhbGUobG9jYWxlLkxDX0FMTCwgbG9jKQorICAgICAgICAgICAgZXhjZXB0IEVycm9yOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBlbmNvZGluZyA9IGxvY2FsZS5nZXRwcmVmZXJyZWRlbmNvZGluZyhGYWxzZSkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBsb2NhbGVjb252KCkKKyAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZXJyOgorICAgICAgICAgICAgICAgIHByaW50KCJXQVJOSU5HOiBTa2lwIGxvY2FsZSAlcyAoZW5jb2RpbmcgJXMpOiBbJXNdICVzIgorICAgICAgICAgICAgICAgICAgICAgICUgKGxvYywgZW5jb2RpbmcsIHR5cGUoZXJyKSwgZXJyKSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgbG9jYWxlcy5hcHBlbmQobG9jKQorICAgICAgICBjYW5kaWRhdGVfbG9jYWxlcyA9IGxvY2FsZXMKKyAgICBmaW5hbGx5OgorICAgICAgICBsb2NhbGUuc2V0bG9jYWxlKGxvY2FsZS5MQ19BTEwsIG9sZF9sb2NhbGUpCisKICMgV29ya2Fyb3VuZCBmb3IgTVNWQzYoZGVidWcpIGNyYXNoIGJ1ZwogaWYgIk1TQyB2LjEyMDAiIGluIHN5cy52ZXJzaW9uOgogICAgIGRlZiBhY2NlcHQobG9jKToKQEAgLTg2LDkgKzExMywxMCBAQAogICAgICAgICAgICAgICAgIHNldGxvY2FsZShMQ19DVFlQRSwgbG9jKQogICAgICAgICAgICAgZXhjZXB0IEVycm9yOgogICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBmb3JtYXR0aW5nID0gbG9jYWxlY29udigpCiAgICAgICAgICAgICBmb3IgbGMgaW4gKCJkZWNpbWFsX3BvaW50IiwKICAgICAgICAgICAgICAgICAgICAgICAgICJ0aG91c2FuZHNfc2VwIik6Ci0gICAgICAgICAgICAgICAgc2VsZi5udW1lcmljX3Rlc3RlcignbG9jYWxlY29udicsIGxvY2FsZWNvbnYoKVtsY10sIGxjLCBsb2MpCisgICAgICAgICAgICAgICAgc2VsZi5udW1lcmljX3Rlc3RlcignbG9jYWxlY29udicsIGZvcm1hdHRpbmdbbGNdLCBsYywgbG9jKQogCiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MobmxfbGFuZ2luZm8sICJubF9sYW5naW5mbyBpcyBub3QgYXZhaWxhYmxlIikKICAgICBkZWYgdGVzdF9sY19udW1lcmljX2Jhc2ljKHNlbGYpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9hYmMucHkgYi9MaWIvdGVzdC90ZXN0X2FiYy5weQppbmRleCBkODZmOTdjLi42NTNjOTU3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2FiYy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2FiYy5weQpAQCAtMTAsMTQgKzEwLDcgQEAKIGZyb20gaW5zcGVjdCBpbXBvcnQgaXNhYnN0cmFjdAogCiAKLWNsYXNzIFRlc3RBQkModW5pdHRlc3QuVGVzdENhc2UpOgotCi0gICAgZGVmIHRlc3RfYWJzdHJhY3RtZXRob2RfYmFzaWNzKHNlbGYpOgotICAgICAgICBAYWJjLmFic3RyYWN0bWV0aG9kCi0gICAgICAgIGRlZiBmb28oc2VsZik6IHBhc3MKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvby5fX2lzYWJzdHJhY3RtZXRob2RfXykKLSAgICAgICAgZGVmIGJhcihzZWxmKTogcGFzcwotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIoYmFyLCAiX19pc2Fic3RyYWN0bWV0aG9kX18iKSkKK2NsYXNzIFRlc3RMZWdhY3lBUEkodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHRlc3RfYWJzdHJhY3Rwcm9wZXJ0eV9iYXNpY3Moc2VsZik6CiAgICAgICAgIEBhYmMuYWJzdHJhY3Rwcm9wZXJ0eQpAQCAtMjksMTAgKzIyLDEyIEBACiAgICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToKICAgICAgICAgICAgIEBhYmMuYWJzdHJhY3Rwcm9wZXJ0eQogICAgICAgICAgICAgZGVmIGZvbyhzZWxmKTogcmV0dXJuIDMKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBDKQogICAgICAgICBjbGFzcyBEKEMpOgogICAgICAgICAgICAgQHByb3BlcnR5CiAgICAgICAgICAgICBkZWYgZm9vKHNlbGYpOiByZXR1cm4gc3VwZXIoKS5mb28KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChEKCkuZm9vLCAzKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGdldGF0dHIoRC5mb28sICJfX2lzYWJzdHJhY3RtZXRob2RfXyIsIEZhbHNlKSkKIAogICAgIGRlZiB0ZXN0X2Fic3RyYWN0Y2xhc3NtZXRob2RfYmFzaWNzKHNlbGYpOgogICAgICAgICBAYWJjLmFic3RyYWN0Y2xhc3NtZXRob2QKQEAgLTQwLDcgKzM1LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvby5fX2lzYWJzdHJhY3RtZXRob2RfXykKICAgICAgICAgQGNsYXNzbWV0aG9kCiAgICAgICAgIGRlZiBiYXIoY2xzKTogcGFzcwotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIoYmFyLCAiX19pc2Fic3RyYWN0bWV0aG9kX18iKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShnZXRhdHRyKGJhciwgIl9faXNhYnN0cmFjdG1ldGhvZF9fIiwgRmFsc2UpKQogCiAgICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToKICAgICAgICAgICAgIEBhYmMuYWJzdHJhY3RjbGFzc21ldGhvZApAQCAtNTgsNyArNTMsNyBAQAogICAgICAgICBzZWxmLmFzc2VydFRydWUoZm9vLl9faXNhYnN0cmFjdG1ldGhvZF9fKQogICAgICAgICBAc3RhdGljbWV0aG9kCiAgICAgICAgIGRlZiBiYXIoKTogcGFzcwotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIoYmFyLCAiX19pc2Fic3RyYWN0bWV0aG9kX18iKSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShnZXRhdHRyKGJhciwgIl9faXNhYnN0cmFjdG1ldGhvZF9fIiwgRmFsc2UpKQogCiAgICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToKICAgICAgICAgICAgIEBhYmMuYWJzdHJhY3RzdGF0aWNtZXRob2QKQEAgLTk4LDYgKzkzLDE2MyBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBGKSAgIyBiZWNhdXNlIGJhciBpcyBhYnN0cmFjdCBub3cKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2Fic3RyYWN0KEYpKQogCisKK2NsYXNzIFRlc3RBQkModW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfYWJzdHJhY3RtZXRob2RfYmFzaWNzKHNlbGYpOgorICAgICAgICBAYWJjLmFic3RyYWN0bWV0aG9kCisgICAgICAgIGRlZiBmb28oc2VsZik6IHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvby5fX2lzYWJzdHJhY3RtZXRob2RfXykKKyAgICAgICAgZGVmIGJhcihzZWxmKTogcGFzcworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIoYmFyLCAiX19pc2Fic3RyYWN0bWV0aG9kX18iKSkKKworICAgIGRlZiB0ZXN0X2Fic3RyYWN0cHJvcGVydHlfYmFzaWNzKHNlbGYpOgorICAgICAgICBAcHJvcGVydHkKKyAgICAgICAgQGFiYy5hYnN0cmFjdG1ldGhvZAorICAgICAgICBkZWYgZm9vKHNlbGYpOiBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmb28uX19pc2Fic3RyYWN0bWV0aG9kX18pCisgICAgICAgIGRlZiBiYXIoc2VsZik6IHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShnZXRhdHRyKGJhciwgIl9faXNhYnN0cmFjdG1ldGhvZF9fIiwgRmFsc2UpKQorCisgICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToKKyAgICAgICAgICAgIEBwcm9wZXJ0eQorICAgICAgICAgICAgQGFiYy5hYnN0cmFjdG1ldGhvZAorICAgICAgICAgICAgZGVmIGZvbyhzZWxmKTogcmV0dXJuIDMKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBDKQorICAgICAgICBjbGFzcyBEKEMpOgorICAgICAgICAgICAgQEMuZm9vLmdldHRlcgorICAgICAgICAgICAgZGVmIGZvbyhzZWxmKTogcmV0dXJuIHN1cGVyKCkuZm9vCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoRCgpLmZvbywgMykKKworICAgIGRlZiB0ZXN0X2Fic3RyYWN0Y2xhc3NtZXRob2RfYmFzaWNzKHNlbGYpOgorICAgICAgICBAY2xhc3NtZXRob2QKKyAgICAgICAgQGFiYy5hYnN0cmFjdG1ldGhvZAorICAgICAgICBkZWYgZm9vKGNscyk6IHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvby5fX2lzYWJzdHJhY3RtZXRob2RfXykKKyAgICAgICAgQGNsYXNzbWV0aG9kCisgICAgICAgIGRlZiBiYXIoY2xzKTogcGFzcworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGdldGF0dHIoYmFyLCAiX19pc2Fic3RyYWN0bWV0aG9kX18iLCBGYWxzZSkpCisKKyAgICAgICAgY2xhc3MgQyhtZXRhY2xhc3M9YWJjLkFCQ01ldGEpOgorICAgICAgICAgICAgQGNsYXNzbWV0aG9kCisgICAgICAgICAgICBAYWJjLmFic3RyYWN0bWV0aG9kCisgICAgICAgICAgICBkZWYgZm9vKGNscyk6IHJldHVybiBjbHMuX19uYW1lX18KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBDKQorICAgICAgICBjbGFzcyBEKEMpOgorICAgICAgICAgICAgQGNsYXNzbWV0aG9kCisgICAgICAgICAgICBkZWYgZm9vKGNscyk6IHJldHVybiBzdXBlcigpLmZvbygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoRC5mb28oKSwgJ0QnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEQoKS5mb28oKSwgJ0QnKQorCisgICAgZGVmIHRlc3RfYWJzdHJhY3RzdGF0aWNtZXRob2RfYmFzaWNzKHNlbGYpOgorICAgICAgICBAc3RhdGljbWV0aG9kCisgICAgICAgIEBhYmMuYWJzdHJhY3RtZXRob2QKKyAgICAgICAgZGVmIGZvbygpOiBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmb28uX19pc2Fic3RyYWN0bWV0aG9kX18pCisgICAgICAgIEBzdGF0aWNtZXRob2QKKyAgICAgICAgZGVmIGJhcigpOiBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZ2V0YXR0cihiYXIsICJfX2lzYWJzdHJhY3RtZXRob2RfXyIsIEZhbHNlKSkKKworICAgICAgICBjbGFzcyBDKG1ldGFjbGFzcz1hYmMuQUJDTWV0YSk6CisgICAgICAgICAgICBAc3RhdGljbWV0aG9kCisgICAgICAgICAgICBAYWJjLmFic3RyYWN0bWV0aG9kCisgICAgICAgICAgICBkZWYgZm9vKCk6IHJldHVybiAzCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgQykKKyAgICAgICAgY2xhc3MgRChDKToKKyAgICAgICAgICAgIEBzdGF0aWNtZXRob2QKKyAgICAgICAgICAgIGRlZiBmb28oKTogcmV0dXJuIDQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChELmZvbygpLCA0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEQoKS5mb28oKSwgNCkKKworICAgIGRlZiB0ZXN0X2Fic3RyYWN0bWV0aG9kX2ludGVncmF0aW9uKHNlbGYpOgorICAgICAgICBmb3IgYWJzdHJhY3R0aGluZyBpbiBbYWJjLmFic3RyYWN0bWV0aG9kLCBhYmMuYWJzdHJhY3Rwcm9wZXJ0eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFiYy5hYnN0cmFjdGNsYXNzbWV0aG9kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWJjLmFic3RyYWN0c3RhdGljbWV0aG9kXToKKyAgICAgICAgICAgIGNsYXNzIEMobWV0YWNsYXNzPWFiYy5BQkNNZXRhKToKKyAgICAgICAgICAgICAgICBAYWJzdHJhY3R0aGluZworICAgICAgICAgICAgICAgIGRlZiBmb28oc2VsZik6IHBhc3MgICMgYWJzdHJhY3QKKyAgICAgICAgICAgICAgICBkZWYgYmFyKHNlbGYpOiBwYXNzICAjIGNvbmNyZXRlCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEMuX19hYnN0cmFjdG1ldGhvZHNfXywgeyJmb28ifSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgQykgICMgYmVjYXVzZSBmb28gaXMgYWJzdHJhY3QKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2Fic3RyYWN0KEMpKQorICAgICAgICAgICAgY2xhc3MgRChDKToKKyAgICAgICAgICAgICAgICBkZWYgYmFyKHNlbGYpOiBwYXNzICAjIGNvbmNyZXRlIG92ZXJyaWRlIG9mIGNvbmNyZXRlCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEQuX19hYnN0cmFjdG1ldGhvZHNfXywgeyJmb28ifSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgRCkgICMgYmVjYXVzZSBmb28gaXMgc3RpbGwgYWJzdHJhY3QKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2Fic3RyYWN0KEQpKQorICAgICAgICAgICAgY2xhc3MgRShEKToKKyAgICAgICAgICAgICAgICBkZWYgZm9vKHNlbGYpOiBwYXNzCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEUuX19hYnN0cmFjdG1ldGhvZHNfXywgc2V0KCkpCisgICAgICAgICAgICBFKCkgICMgbm93IGZvbyBpcyBjb25jcmV0ZSwgdG9vCisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzYWJzdHJhY3QoRSkpCisgICAgICAgICAgICBjbGFzcyBGKEUpOgorICAgICAgICAgICAgICAgIEBhYnN0cmFjdHRoaW5nCisgICAgICAgICAgICAgICAgZGVmIGJhcihzZWxmKTogcGFzcyAgIyBhYnN0cmFjdCBvdmVycmlkZSBvZiBjb25jcmV0ZQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChGLl9fYWJzdHJhY3RtZXRob2RzX18sIHsiYmFyIn0pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIEYpICAjIGJlY2F1c2UgYmFyIGlzIGFic3RyYWN0IG5vdworICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzYWJzdHJhY3QoRikpCisKKyAgICBkZWYgdGVzdF9kZXNjcmlwdG9yc193aXRoX2Fic3RyYWN0bWV0aG9kKHNlbGYpOgorICAgICAgICBjbGFzcyBDKG1ldGFjbGFzcz1hYmMuQUJDTWV0YSk6CisgICAgICAgICAgICBAcHJvcGVydHkKKyAgICAgICAgICAgIEBhYmMuYWJzdHJhY3RtZXRob2QKKyAgICAgICAgICAgIGRlZiBmb28oc2VsZik6IHJldHVybiAzCisgICAgICAgICAgICBAZm9vLnNldHRlcgorICAgICAgICAgICAgQGFiYy5hYnN0cmFjdG1ldGhvZAorICAgICAgICAgICAgZGVmIGZvbyhzZWxmLCB2YWwpOiBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgQykKKyAgICAgICAgY2xhc3MgRChDKToKKyAgICAgICAgICAgIEBDLmZvby5nZXR0ZXIKKyAgICAgICAgICAgIGRlZiBmb28oc2VsZik6IHJldHVybiBzdXBlcigpLmZvbworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIEQpCisgICAgICAgIGNsYXNzIEUoRCk6CisgICAgICAgICAgICBARC5mb28uc2V0dGVyCisgICAgICAgICAgICBkZWYgZm9vKHNlbGYsIHZhbCk6IHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChFKCkuZm9vLCAzKQorICAgICAgICAjIGNoZWNrIHRoYXQgdGhlIHByb3BlcnR5J3MgX19pc2Fic3RyYWN0bWV0aG9kX18gZGVzY3JpcHRvciBkb2VzIHRoZQorICAgICAgICAjIHJpZ2h0IHRoaW5nIHdoZW4gcHJlc2VudGVkIHdpdGggYSB2YWx1ZSB0aGF0IGZhaWxzIHRydXRoIHRlc3Rpbmc6CisgICAgICAgIGNsYXNzIE5vdEJvb2wob2JqZWN0KToKKyAgICAgICAgICAgIGRlZiBfX25vbnplcm9fXyhzZWxmKToKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCkKKyAgICAgICAgICAgIF9fbGVuX18gPSBfX25vbnplcm9fXworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgY2xhc3MgRihDKToKKyAgICAgICAgICAgICAgICBkZWYgYmFyKHNlbGYpOgorICAgICAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICAgICAgYmFyLl9faXNhYnN0cmFjdG1ldGhvZF9fID0gTm90Qm9vbCgpCisgICAgICAgICAgICAgICAgZm9vID0gcHJvcGVydHkoYmFyKQorCisKKyAgICBkZWYgdGVzdF9jdXN0b21kZXNjcmlwdG9yc193aXRoX2Fic3RyYWN0bWV0aG9kKHNlbGYpOgorICAgICAgICBjbGFzcyBEZXNjcmlwdG9yOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZnZXQsIGZzZXQ9Tm9uZSk6CisgICAgICAgICAgICAgICAgc2VsZi5fZmdldCA9IGZnZXQKKyAgICAgICAgICAgICAgICBzZWxmLl9mc2V0ID0gZnNldAorICAgICAgICAgICAgZGVmIGdldHRlcihzZWxmLCBjYWxsYWJsZSk6CisgICAgICAgICAgICAgICAgcmV0dXJuIERlc2NyaXB0b3IoY2FsbGFibGUsIHNlbGYuX2ZnZXQpCisgICAgICAgICAgICBkZWYgc2V0dGVyKHNlbGYsIGNhbGxhYmxlKToKKyAgICAgICAgICAgICAgICByZXR1cm4gRGVzY3JpcHRvcihzZWxmLl9mZ2V0LCBjYWxsYWJsZSkKKyAgICAgICAgICAgIEBwcm9wZXJ0eQorICAgICAgICAgICAgZGVmIF9faXNhYnN0cmFjdG1ldGhvZF9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiAoZ2V0YXR0cihzZWxmLl9mZ2V0LCAnX19pc2Fic3RyYWN0bWV0aG9kX18nLCBGYWxzZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIG9yIGdldGF0dHIoc2VsZi5fZnNldCwgJ19faXNhYnN0cmFjdG1ldGhvZF9fJywgRmFsc2UpKQorICAgICAgICBjbGFzcyBDKG1ldGFjbGFzcz1hYmMuQUJDTWV0YSk6CisgICAgICAgICAgICBARGVzY3JpcHRvcgorICAgICAgICAgICAgQGFiYy5hYnN0cmFjdG1ldGhvZAorICAgICAgICAgICAgZGVmIGZvbyhzZWxmKTogcmV0dXJuIDMKKyAgICAgICAgICAgIEBmb28uc2V0dGVyCisgICAgICAgICAgICBAYWJjLmFic3RyYWN0bWV0aG9kCisgICAgICAgICAgICBkZWYgZm9vKHNlbGYsIHZhbCk6IHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBDKQorICAgICAgICBjbGFzcyBEKEMpOgorICAgICAgICAgICAgQEMuZm9vLmdldHRlcgorICAgICAgICAgICAgZGVmIGZvbyhzZWxmKTogcmV0dXJuIHN1cGVyKCkuZm9vCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgRCkKKyAgICAgICAgY2xhc3MgRShEKToKKyAgICAgICAgICAgIEBELmZvby5zZXR0ZXIKKyAgICAgICAgICAgIGRlZiBmb28oc2VsZiwgdmFsKTogcGFzcworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKEUuZm9vLl9faXNhYnN0cmFjdG1ldGhvZF9fKQorCiAgICAgZGVmIHRlc3RfbWV0YWNsYXNzX2FiYyhzZWxmKToKICAgICAgICAgIyBNZXRhY2xhc3NlcyBjYW4gYmUgQUJDcywgdG9vLgogICAgICAgICBjbGFzcyBBKG1ldGFjbGFzcz1hYmMuQUJDTWV0YSk6CkBAIC0xMjEsMTEgKzI3MywxMiBAQAogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzc3ViY2xhc3MoQiwgKEEsKSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SXNJbnN0YW5jZShiLCBBKQogICAgICAgICBzZWxmLmFzc2VydE5vdElzSW5zdGFuY2UoYiwgKEEsKSkKLSAgICAgICAgQS5yZWdpc3RlcihCKQorICAgICAgICBCMSA9IEEucmVnaXN0ZXIoQikKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzc3ViY2xhc3MoQiwgQSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc3N1YmNsYXNzKEIsIChBLCkpKQogICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYiwgQSkKICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGIsIChBLCkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoQjEsIEIpCiAgICAgICAgIGNsYXNzIEMoQik6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIGMgPSBDKCkKQEAgLTEzNCw2ICsyODcsMjcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGMsIEEpCiAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShjLCAoQSwpKQogCisgICAgZGVmIHRlc3RfcmVnaXN0ZXJfYXNfY2xhc3NfZGVjbyhzZWxmKToKKyAgICAgICAgY2xhc3MgQShtZXRhY2xhc3M9YWJjLkFCQ01ldGEpOgorICAgICAgICAgICAgcGFzcworICAgICAgICBAQS5yZWdpc3RlcgorICAgICAgICBjbGFzcyBCKG9iamVjdCk6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGIgPSBCKCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzc3ViY2xhc3MoQiwgQSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc3N1YmNsYXNzKEIsIChBLCkpKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYiwgQSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGIsIChBLCkpCisgICAgICAgIEBBLnJlZ2lzdGVyCisgICAgICAgIGNsYXNzIEMoQik6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGMgPSBDKCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzc3ViY2xhc3MoQywgQSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc3N1YmNsYXNzKEMsIChBLCkpKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYywgQSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGMsIChBLCkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoQywgQS5yZWdpc3RlcihDKSkKKwogICAgIGRlZiB0ZXN0X2lzaW5zdGFuY2VfaW52YWxpZGF0aW9uKHNlbGYpOgogICAgICAgICBjbGFzcyBBKG1ldGFjbGFzcz1hYmMuQUJDTWV0YSk6CiAgICAgICAgICAgICBwYXNzCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2Fic3RyYWN0X251bWJlcnMucHkgYi9MaWIvdGVzdC90ZXN0X2Fic3RyYWN0X251bWJlcnMucHkKaW5kZXggMmEzOTZjZC4uMjUzZTZmMCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9hYnN0cmFjdF9udW1iZXJzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYWJzdHJhY3RfbnVtYmVycy5weQpAQCAtMTQsNiArMTQsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDcsIGludCg3KS5yZWFsKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDAsIGludCg3KS5pbWFnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDcsIGludCg3KS5jb25qdWdhdGUoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgtNywgaW50KC03KS5jb25qdWdhdGUoKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg3LCBpbnQoNykubnVtZXJhdG9yKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDEsIGludCg3KS5kZW5vbWluYXRvcikKIApAQCAtMjQsNiArMjUsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDcuMywgZmxvYXQoNy4zKS5yZWFsKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDAsIGZsb2F0KDcuMykuaW1hZykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg3LjMsIGZsb2F0KDcuMykuY29uanVnYXRlKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoLTcuMywgZmxvYXQoLTcuMykuY29uanVnYXRlKCkpCiAKICAgICBkZWYgdGVzdF9jb21wbGV4KHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzc3ViY2xhc3MoY29tcGxleCwgUmVhbCkpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2FyZ3BhcnNlLnB5IGIvTGliL3Rlc3QvdGVzdF9hcmdwYXJzZS5weQppbmRleCA4NTI5OTFjLi5mNDU2NzA5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2FyZ3BhcnNlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYXJncGFyc2UucHkKQEAgLTQwMjEsNiArNDAyMSwzNyBAQAogICAgICAgICAnJycKIAogCisKK2NsYXNzIFRlc3RIZWxwTWV0YXZhclR5cGVGb3JtYXR0ZXIoSGVscFRlc3RDYXNlKToKKyAgICAiIiIiIiIKKworICAgIGRlZiBjdXN0b21fdHlwZShzdHJpbmcpOgorICAgICAgICByZXR1cm4gc3RyaW5nCisKKyAgICBwYXJzZXJfc2lnbmF0dXJlID0gU2lnKHByb2c9J1BST0cnLCBkZXNjcmlwdGlvbj0nZGVzY3JpcHRpb24nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0dGVyX2NsYXNzPWFyZ3BhcnNlLk1ldGF2YXJUeXBlSGVscEZvcm1hdHRlcikKKyAgICBhcmd1bWVudF9zaWduYXR1cmVzID0gW1NpZygnYScsIHR5cGU9aW50KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpZygnLWInLCB0eXBlPWN1c3RvbV90eXBlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFNpZygnLWMnLCB0eXBlPWZsb2F0LCBtZXRhdmFyPSdTT01FIEZMT0FUJyldCisgICAgYXJndW1lbnRfZ3JvdXBfc2lnbmF0dXJlcyA9IFtdCisgICAgdXNhZ2UgPSAnJydcCisgICAgICAgIHVzYWdlOiBQUk9HIFstaF0gWy1iIGN1c3RvbV90eXBlXSBbLWMgU09NRSBGTE9BVF0gaW50CisgICAgICAgICcnJworICAgIGhlbHAgPSB1c2FnZSArICcnJ1wKKworICAgICAgICBkZXNjcmlwdGlvbgorCisgICAgICAgIHBvc2l0aW9uYWwgYXJndW1lbnRzOgorICAgICAgICAgIGludAorCisgICAgICAgIG9wdGlvbmFsIGFyZ3VtZW50czoKKyAgICAgICAgICAtaCwgLS1oZWxwICAgICAgc2hvdyB0aGlzIGhlbHAgbWVzc2FnZSBhbmQgZXhpdAorICAgICAgICAgIC1iIGN1c3RvbV90eXBlCisgICAgICAgICAgLWMgU09NRSBGTE9BVAorICAgICAgICAnJycKKyAgICB2ZXJzaW9uID0gJycKKworCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICMgT3B0aW9uYWwvUG9zaXRpb25hbCBjb25zdHJ1Y3RvciB0ZXN0cwogIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkBAIC00NDExLDcgKzQ0NDIsNyBAQAogICAgIGRlZiBfdGVzdF9tb2R1bGVfZW5jb2Rpbmcoc2VsZiwgcGF0aCk6CiAgICAgICAgIHBhdGgsIF8gPSBvcy5wYXRoLnNwbGl0ZXh0KHBhdGgpCiAgICAgICAgIHBhdGggKz0gIi5weSIKLSAgICAgICAgd2l0aCBjb2RlY3Mub3BlbihwYXRoLCAncicsICd1dGY4JykgYXMgZjoKKyAgICAgICAgd2l0aCBjb2RlY3Mub3BlbihwYXRoLCAncicsICd1dGYtOCcpIGFzIGY6CiAgICAgICAgICAgICBmLnJlYWQoKQogCiAgICAgZGVmIHRlc3RfYXJncGFyc2VfbW9kdWxlX2VuY29kaW5nKHNlbGYpOgpAQCAtNDQ1Myw2ICs0NDg0LDY3IEBACiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBzZWxmLmZhaWwoKQogCisjID09PT09PT09PT09PT09PT09PT09PT09PT0KKyMgTWVzc2FnZUNvbnRlbnRFcnJvciB0ZXN0cworIyA9PT09PT09PT09PT09PT09PT09PT09PT09CisKK2NsYXNzIFRlc3RNZXNzYWdlQ29udGVudEVycm9yKFRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X21pc3NpbmdfYXJndW1lbnRfbmFtZV9pbl9tZXNzYWdlKHNlbGYpOgorICAgICAgICBwYXJzZXIgPSBFcnJvclJhaXNpbmdBcmd1bWVudFBhcnNlcihwcm9nPSdQUk9HJywgdXNhZ2U9JycpCisgICAgICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJ3JlcV9wb3MnLCB0eXBlPXN0cikKKyAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLXJlcV9vcHQnLCB0eXBlPWludCwgcmVxdWlyZWQ9VHJ1ZSkKKyAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnbmVlZF9vbmUnLCB0eXBlPXN0ciwgbmFyZ3M9JysnKQorCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXJndW1lbnRQYXJzZXJFcnJvcikgYXMgY206CisgICAgICAgICAgICBwYXJzZXIucGFyc2VfYXJncyhbXSkKKyAgICAgICAgbXNnID0gc3RyKGNtLmV4Y2VwdGlvbikKKyAgICAgICAgc2VsZi5hc3NlcnRSZWdleChtc2csICdyZXFfcG9zJykKKyAgICAgICAgc2VsZi5hc3NlcnRSZWdleChtc2csICdyZXFfb3B0JykKKyAgICAgICAgc2VsZi5hc3NlcnRSZWdleChtc2csICduZWVkX29uZScpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXJndW1lbnRQYXJzZXJFcnJvcikgYXMgY206CisgICAgICAgICAgICBwYXJzZXIucGFyc2VfYXJncyhbJ215WGFyZ3VtZW50J10pCisgICAgICAgIG1zZyA9IHN0cihjbS5leGNlcHRpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAncmVxX3BvcycpCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAncmVxX29wdCcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAnbmVlZF9vbmUnKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEFyZ3VtZW50UGFyc2VyRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgcGFyc2VyLnBhcnNlX2FyZ3MoWydteVhhcmd1bWVudCcsICctcmVxX29wdD0xJ10pCisgICAgICAgIG1zZyA9IHN0cihjbS5leGNlcHRpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAncmVxX3BvcycpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAncmVxX29wdCcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAnbmVlZF9vbmUnKQorCisgICAgZGVmIHRlc3Rfb3B0aW9uYWxfb3B0aW9uYWxfbm90X2luX21lc3NhZ2Uoc2VsZik6CisgICAgICAgIHBhcnNlciA9IEVycm9yUmFpc2luZ0FyZ3VtZW50UGFyc2VyKHByb2c9J1BST0cnLCB1c2FnZT0nJykKKyAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgncmVxX3BvcycsIHR5cGU9c3RyKQorICAgICAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCctLXJlcV9vcHQnLCB0eXBlPWludCwgcmVxdWlyZWQ9VHJ1ZSkKKyAgICAgICAgcGFyc2VyLmFkZF9hcmd1bWVudCgnLS1vcHRfb3B0JywgdHlwZT1ib29sLCBuYXJncz0nPycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdD1UcnVlKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEFyZ3VtZW50UGFyc2VyRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgcGFyc2VyLnBhcnNlX2FyZ3MoW10pCisgICAgICAgIG1zZyA9IHN0cihjbS5leGNlcHRpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAncmVxX3BvcycpCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAncmVxX29wdCcpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAnb3B0X29wdCcpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXJndW1lbnRQYXJzZXJFcnJvcikgYXMgY206CisgICAgICAgICAgICBwYXJzZXIucGFyc2VfYXJncyhbJy0tcmVxX29wdD0xJ10pCisgICAgICAgIG1zZyA9IHN0cihjbS5leGNlcHRpb24pCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgobXNnLCAncmVxX3BvcycpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAncmVxX29wdCcpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4obXNnLCAnb3B0X29wdCcpCisKKyAgICBkZWYgdGVzdF9vcHRpb25hbF9wb3NpdGlvbmFsX25vdF9pbl9tZXNzYWdlKHNlbGYpOgorICAgICAgICBwYXJzZXIgPSBFcnJvclJhaXNpbmdBcmd1bWVudFBhcnNlcihwcm9nPSdQUk9HJywgdXNhZ2U9JycpCisgICAgICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJ3JlcV9wb3MnKQorICAgICAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCdvcHRpb25hbF9wb3NpdGlvbmFsJywgbmFyZ3M9Jz8nLCBkZWZhdWx0PSdlZ2dzJykKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBcmd1bWVudFBhcnNlckVycm9yKSBhcyBjbToKKyAgICAgICAgICAgIHBhcnNlci5wYXJzZV9hcmdzKFtdKQorICAgICAgICBtc2cgPSBzdHIoY20uZXhjZXB0aW9uKQorICAgICAgICBzZWxmLmFzc2VydFJlZ2V4KG1zZywgJ3JlcV9wb3MnKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKG1zZywgJ29wdGlvbmFsX3Bvc2l0aW9uYWwnKQorCisKICMgPT09PT09PT09PT09PT09PT09PT09PQogIyBwYXJzZV9rbm93bl9hcmdzIHRlc3RzCiAjID09PT09PT09PT09PT09PT09PT09PT0KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfYXJyYXkucHkgYi9MaWIvdGVzdC90ZXN0X2FycmF5LnB5CmluZGV4IDUxOTBjMzUuLjQzNGU0OTUgMTAwNzU1Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfYXJyYXkucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9hcnJheS5weQpAQCAtMTYsNiArMTYsMTMgQEAKIGltcG9ydCBhcnJheQogZnJvbSBhcnJheSBpbXBvcnQgX2FycmF5X3JlY29uc3RydWN0b3IgYXMgYXJyYXlfcmVjb25zdHJ1Y3RvcgogCit0cnk6CisgICAgIyBUcnkgdG8gZGV0ZXJtaW5lIGF2YWlsYWJpbGl0eSBvZiBsb25nIGxvbmcgaW5kZXBlbmRlbnRseQorICAgICMgb2YgdGhlIGFycmF5IG1vZHVsZSB1bmRlciB0ZXN0CisgICAgc3RydWN0LmNhbGNzaXplKCdAcScpCisgICAgaGF2ZV9sb25nX2xvbmcgPSBUcnVlCitleGNlcHQgc3RydWN0LmVycm9yOgorICAgIGhhdmVfbG9uZ19sb25nID0gRmFsc2UKIAogY2xhc3MgQXJyYXlTdWJjbGFzcyhhcnJheS5hcnJheSk6CiAgICAgcGFzcwpAQCAtMjYsNiArMzMsOCBAQAogCiB0ZXN0cyA9IFtdICMgbGlzdCB0byBhY2N1bXVsYXRlIGFsbCB0ZXN0cwogdHlwZWNvZGVzID0gInViQmhIaUlsTGZkIgoraWYgaGF2ZV9sb25nX2xvbmc6CisgICAgdHlwZWNvZGVzICs9ICdxUScKIAogY2xhc3MgQmFkQ29uc3RydWN0b3JUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtMjA5LDEwICsyMTgsMTQgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiaVsxXSwgbGVuKGEpKQogCiAgICAgZGVmIHRlc3RfYnl0ZXN3YXAoc2VsZik6Ci0gICAgICAgIGEgPSBhcnJheS5hcnJheShzZWxmLnR5cGVjb2RlLCBzZWxmLmV4YW1wbGUpCisgICAgICAgIGlmIHNlbGYudHlwZWNvZGUgPT0gJ3UnOgorICAgICAgICAgICAgZXhhbXBsZSA9ICdcVTAwMTAwMTAwJworICAgICAgICBlbHNlOgorICAgICAgICAgICAgZXhhbXBsZSA9IHNlbGYuZXhhbXBsZQorICAgICAgICBhID0gYXJyYXkuYXJyYXkoc2VsZi50eXBlY29kZSwgZXhhbXBsZSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBhLmJ5dGVzd2FwLCA0MikKICAgICAgICAgaWYgYS5pdGVtc2l6ZSBpbiAoMSwgMiwgNCwgOCk6Ci0gICAgICAgICAgICBiID0gYXJyYXkuYXJyYXkoc2VsZi50eXBlY29kZSwgc2VsZi5leGFtcGxlKQorICAgICAgICAgICAgYiA9IGFycmF5LmFycmF5KHNlbGYudHlwZWNvZGUsIGV4YW1wbGUpCiAgICAgICAgICAgICBiLmJ5dGVzd2FwKCkKICAgICAgICAgICAgIGlmIGEuaXRlbXNpemU9PTE6CiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhLCBiKQpAQCAtMTAwMiw3ICsxMDE1LDcgQEAKICAgICBzbWFsbGVyZXhhbXBsZSA9ICdceDAxXHUyNjNhXHgwMFx1ZmVmZScKICAgICBiaWdnZXJleGFtcGxlID0gJ1x4MDFcdTI2M2FceDAxXHVmZWZmJwogICAgIG91dHNpZGUgPSBzdHIoJ1x4MzMnKQotICAgIG1pbml0ZW1zaXplID0gMgorICAgIG1pbml0ZW1zaXplID0gNAogCiAgICAgZGVmIHRlc3RfdW5pY29kZShzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBhcnJheS5hcnJheSwgJ2InLCAnZm9vJykKQEAgLTEwMTQsNiArMTAyNyw3IEBACiAgICAgICAgIGEuZnJvbXVuaWNvZGUoJ1x4MTFhYmNceGZmXHUxMjM0JykKICAgICAgICAgcyA9IGEudG91bmljb2RlKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLCAnXHhhMFx4YzJcdTEyMzQgXHgxMWFiY1x4ZmZcdTEyMzQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGEuaXRlbXNpemUsIDQpCiAKICAgICAgICAgcyA9ICdceDAwPSJcJ2FcXGJceDgwXHhmZlx1MDAwMFx1MDAwMVx1MTIzNCcKICAgICAgICAgYSA9IGFycmF5LmFycmF5KCd1JywgcykKQEAgLTEyMDUsNiArMTIxOSwxOCBAQAogICAgIG1pbml0ZW1zaXplID0gNAogdGVzdHMuYXBwZW5kKFVuc2lnbmVkTG9uZ1Rlc3QpCiAKK0B1bml0dGVzdC5za2lwSWYobm90IGhhdmVfbG9uZ19sb25nLCAnbmVlZCBsb25nIGxvbmcgc3VwcG9ydCcpCitjbGFzcyBMb25nTG9uZ1Rlc3QoU2lnbmVkTnVtYmVyVGVzdCk6CisgICAgdHlwZWNvZGUgPSAncScKKyAgICBtaW5pdGVtc2l6ZSA9IDgKK3Rlc3RzLmFwcGVuZChMb25nTG9uZ1Rlc3QpCisKK0B1bml0dGVzdC5za2lwSWYobm90IGhhdmVfbG9uZ19sb25nLCAnbmVlZCBsb25nIGxvbmcgc3VwcG9ydCcpCitjbGFzcyBVbnNpZ25lZExvbmdMb25nVGVzdChVbnNpZ25lZE51bWJlclRlc3QpOgorICAgIHR5cGVjb2RlID0gJ1EnCisgICAgbWluaXRlbXNpemUgPSA4Cit0ZXN0cy5hcHBlbmQoVW5zaWduZWRMb25nTG9uZ1Rlc3QpCisKIGNsYXNzIEZQVGVzdChOdW1iZXJUZXN0KToKICAgICBleGFtcGxlID0gWy00Mi4wLCAwLCA0MiwgMWU1LCAtMWUxMF0KICAgICBzbWFsbGVyZXhhbXBsZSA9IFstNDIuMCwgMCwgNDIsIDFlNSwgLTJlMTBdCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2FzdC5weSBiL0xpYi90ZXN0L3Rlc3RfYXN0LnB5CmluZGV4IGJlOWYwNWUuLmI4MDlkMjQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfYXN0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYXN0LnB5CkBAIC0xLDQgKzEsNiBAQAotaW1wb3J0IHN5cywgdW5pdHRlc3QKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHVuaXR0ZXN0CiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIGltcG9ydCBhc3QKIApAQCAtNTIsNiArNTQsOSBAQAogICAgICJ3aGlsZSB2OnBhc3MiLAogICAgICMgSWYKICAgICAiaWYgdjpwYXNzIiwKKyAgICAjIFdpdGgKKyAgICAid2l0aCB4IGFzIHk6IHBhc3MiLAorICAgICJ3aXRoIHggYXMgeSwgeiBhcyBxOiBwYXNzIiwKICAgICAjIFJhaXNlCiAgICAgInJhaXNlIEV4Y2VwdGlvbignc3RyaW5nJykiLAogICAgICMgVHJ5RXhjZXB0CkBAIC00OTgsOCArNTAzLDQxMyBAQAogICAgICAgICBzZWxmLmFzc2VydEluKCJpbnZhbGlkIGludGVnZXIgdmFsdWU6IE5vbmUiLCBzdHIoY20uZXhjZXB0aW9uKSkKIAogCitjbGFzcyBBU1RWYWxpZGF0b3JUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgbW9kKHNlbGYsIG1vZCwgbXNnPU5vbmUsIG1vZGU9ImV4ZWMiLCAqLCBleGM9VmFsdWVFcnJvcik6CisgICAgICAgIG1vZC5saW5lbm8gPSBtb2QuY29sX29mZnNldCA9IDAKKyAgICAgICAgYXN0LmZpeF9taXNzaW5nX2xvY2F0aW9ucyhtb2QpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoZXhjKSBhcyBjbToKKyAgICAgICAgICAgIGNvbXBpbGUobW9kLCAiPHRlc3Q+IiwgbW9kZSkKKyAgICAgICAgaWYgbXNnIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihtc2csIHN0cihjbS5leGNlcHRpb24pKQorCisgICAgZGVmIGV4cHIoc2VsZiwgbm9kZSwgbXNnPU5vbmUsICosIGV4Yz1WYWx1ZUVycm9yKToKKyAgICAgICAgbW9kID0gYXN0Lk1vZHVsZShbYXN0LkV4cHIobm9kZSldKQorICAgICAgICBzZWxmLm1vZChtb2QsIG1zZywgZXhjPWV4YykKKworICAgIGRlZiBzdG10KHNlbGYsIHN0bXQsIG1zZz1Ob25lKToKKyAgICAgICAgbW9kID0gYXN0Lk1vZHVsZShbc3RtdF0pCisgICAgICAgIHNlbGYubW9kKG1vZCwgbXNnKQorCisgICAgZGVmIHRlc3RfbW9kdWxlKHNlbGYpOgorICAgICAgICBtID0gYXN0LkludGVyYWN0aXZlKFthc3QuRXhwcihhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSldKQorICAgICAgICBzZWxmLm1vZChtLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIsICJzaW5nbGUiKQorICAgICAgICBtID0gYXN0LkV4cHJlc3Npb24oYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkpCisgICAgICAgIHNlbGYubW9kKG0sICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IiwgImV2YWwiKQorCisgICAgZGVmIF9jaGVja19hcmd1bWVudHMoc2VsZiwgZmFjLCBjaGVjayk6CisgICAgICAgIGRlZiBhcmd1bWVudHMoYXJncz1Ob25lLCB2YXJhcmc9Tm9uZSwgdmFyYXJnYW5ub3RhdGlvbj1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgIGt3b25seWFyZ3M9Tm9uZSwga3dhcmc9Tm9uZSwga3dhcmdhbm5vdGF0aW9uPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdHM9Tm9uZSwga3dfZGVmYXVsdHM9Tm9uZSk6CisgICAgICAgICAgICBpZiBhcmdzIGlzIE5vbmU6CisgICAgICAgICAgICAgICAgYXJncyA9IFtdCisgICAgICAgICAgICBpZiBrd29ubHlhcmdzIGlzIE5vbmU6CisgICAgICAgICAgICAgICAga3dvbmx5YXJncyA9IFtdCisgICAgICAgICAgICBpZiBkZWZhdWx0cyBpcyBOb25lOgorICAgICAgICAgICAgICAgIGRlZmF1bHRzID0gW10KKyAgICAgICAgICAgIGlmIGt3X2RlZmF1bHRzIGlzIE5vbmU6CisgICAgICAgICAgICAgICAga3dfZGVmYXVsdHMgPSBbXQorICAgICAgICAgICAgYXJncyA9IGFzdC5hcmd1bWVudHMoYXJncywgdmFyYXJnLCB2YXJhcmdhbm5vdGF0aW9uLCBrd29ubHlhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dhcmcsIGt3YXJnYW5ub3RhdGlvbiwgZGVmYXVsdHMsIGt3X2RlZmF1bHRzKQorICAgICAgICAgICAgcmV0dXJuIGZhYyhhcmdzKQorICAgICAgICBhcmdzID0gW2FzdC5hcmcoIngiLCBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSldCisgICAgICAgIGNoZWNrKGFyZ3VtZW50cyhhcmdzPWFyZ3MpLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGNoZWNrKGFyZ3VtZW50cyh2YXJhcmdhbm5vdGF0aW9uPWFzdC5OdW0oMykpLAorICAgICAgICAgICAgICAidmFyYXJnYW5ub3RhdGlvbiBidXQgbm8gdmFyYXJnIikKKyAgICAgICAgY2hlY2soYXJndW1lbnRzKHZhcmFyZ2Fubm90YXRpb249YXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSksIHZhcmFyZz0ieCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgY2hlY2soYXJndW1lbnRzKGt3b25seWFyZ3M9YXJncyksICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgY2hlY2soYXJndW1lbnRzKGt3YXJnYW5ub3RhdGlvbj1hc3QuTnVtKDQyKSksCisgICAgICAgICAgICAgICAgICAgICAgICJrd2FyZ2Fubm90YXRpb24gYnV0IG5vIGt3YXJnIikKKyAgICAgICAgY2hlY2soYXJndW1lbnRzKGt3YXJnYW5ub3RhdGlvbj1hc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAga3dhcmc9IngiKSwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBjaGVjayhhcmd1bWVudHMoZGVmYXVsdHM9W2FzdC5OdW0oMyldKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIm1vcmUgcG9zaXRpb25hbCBkZWZhdWx0cyB0aGFuIGFyZ3MiKQorICAgICAgICBjaGVjayhhcmd1bWVudHMoa3dfZGVmYXVsdHM9W2FzdC5OdW0oNCldKSwKKyAgICAgICAgICAgICAgICAgICAgICAgImxlbmd0aCBvZiBrd29ubHlhcmdzIGlzIG5vdCB0aGUgc2FtZSBhcyBrd19kZWZhdWx0cyIpCisgICAgICAgIGFyZ3MgPSBbYXN0LmFyZygieCIsIGFzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSkpXQorICAgICAgICBjaGVjayhhcmd1bWVudHMoYXJncz1hcmdzLCBkZWZhdWx0cz1bYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSldKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBhcmdzID0gW2FzdC5hcmcoImEiLCBhc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpKSwKKyAgICAgICAgICAgICAgICBhc3QuYXJnKCJiIiwgYXN0Lk5hbWUoInkiLCBhc3QuTG9hZCgpKSldCisgICAgICAgIGNoZWNrKGFyZ3VtZW50cyhrd29ubHlhcmdzPWFyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGt3X2RlZmF1bHRzPVtOb25lLCBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKV0pLAorICAgICAgICAgICAgICAgICAgICAgICAgICAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF9mdW5jZGVmKHNlbGYpOgorICAgICAgICBhID0gYXN0LmFyZ3VtZW50cyhbXSwgTm9uZSwgTm9uZSwgW10sIE5vbmUsIE5vbmUsIFtdLCBbXSkKKyAgICAgICAgZiA9IGFzdC5GdW5jdGlvbkRlZigieCIsIGEsIFtdLCBbXSwgTm9uZSkKKyAgICAgICAgc2VsZi5zdG10KGYsICJlbXB0eSBib2R5IG9uIEZ1bmN0aW9uRGVmIikKKyAgICAgICAgZiA9IGFzdC5GdW5jdGlvbkRlZigieCIsIGEsIFthc3QuUGFzcygpXSwgW2FzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBOb25lKQorICAgICAgICBzZWxmLnN0bXQoZiwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBmID0gYXN0LkZ1bmN0aW9uRGVmKCJ4IiwgYSwgW2FzdC5QYXNzKCldLCBbXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSkKKyAgICAgICAgc2VsZi5zdG10KGYsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgZGVmIGZhYyhhcmdzKToKKyAgICAgICAgICAgIHJldHVybiBhc3QuRnVuY3Rpb25EZWYoIngiLCBhcmdzLCBbYXN0LlBhc3MoKV0sIFtdLCBOb25lKQorICAgICAgICBzZWxmLl9jaGVja19hcmd1bWVudHMoZmFjLCBzZWxmLnN0bXQpCisKKyAgICBkZWYgdGVzdF9jbGFzc2RlZihzZWxmKToKKyAgICAgICAgZGVmIGNscyhiYXNlcz1Ob25lLCBrZXl3b3Jkcz1Ob25lLCBzdGFyYXJncz1Ob25lLCBrd2FyZ3M9Tm9uZSwKKyAgICAgICAgICAgICAgICBib2R5PU5vbmUsIGRlY29yYXRvcl9saXN0PU5vbmUpOgorICAgICAgICAgICAgaWYgYmFzZXMgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBiYXNlcyA9IFtdCisgICAgICAgICAgICBpZiBrZXl3b3JkcyBpcyBOb25lOgorICAgICAgICAgICAgICAgIGtleXdvcmRzID0gW10KKyAgICAgICAgICAgIGlmIGJvZHkgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBib2R5ID0gW2FzdC5QYXNzKCldCisgICAgICAgICAgICBpZiBkZWNvcmF0b3JfbGlzdCBpcyBOb25lOgorICAgICAgICAgICAgICAgIGRlY29yYXRvcl9saXN0ID0gW10KKyAgICAgICAgICAgIHJldHVybiBhc3QuQ2xhc3NEZWYoIm15Y2xhc3MiLCBiYXNlcywga2V5d29yZHMsIHN0YXJhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2FyZ3MsIGJvZHksIGRlY29yYXRvcl9saXN0KQorICAgICAgICBzZWxmLnN0bXQoY2xzKGJhc2VzPVthc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKV0pLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBzZWxmLnN0bXQoY2xzKGtleXdvcmRzPVthc3Qua2V5d29yZCgieCIsIGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpKV0pLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBzZWxmLnN0bXQoY2xzKHN0YXJhcmdzPWFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpKSwKKyAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgc2VsZi5zdG10KGNscyhrd2FyZ3M9YXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkpLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBzZWxmLnN0bXQoY2xzKGJvZHk9W10pLCAiZW1wdHkgYm9keSBvbiBDbGFzc0RlZiIpCisgICAgICAgIHNlbGYuc3RtdChjbHMoYm9keT1bTm9uZV0pLCAiTm9uZSBkaXNhbGxvd2VkIikKKyAgICAgICAgc2VsZi5zdG10KGNscyhkZWNvcmF0b3JfbGlzdD1bYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSldKSwKKyAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2RlbGV0ZShzZWxmKToKKyAgICAgICAgc2VsZi5zdG10KGFzdC5EZWxldGUoW10pLCAiZW1wdHkgdGFyZ2V0cyBvbiBEZWxldGUiKQorICAgICAgICBzZWxmLnN0bXQoYXN0LkRlbGV0ZShbTm9uZV0pLCAiTm9uZSBkaXNhbGxvd2VkIikKKyAgICAgICAgc2VsZi5zdG10KGFzdC5EZWxldGUoW2FzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSldKSwKKyAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgRGVsIGNvbnRleHQiKQorCisgICAgZGVmIHRlc3RfYXNzaWduKHNlbGYpOgorICAgICAgICBzZWxmLnN0bXQoYXN0LkFzc2lnbihbXSwgYXN0Lk51bSgzKSksICJlbXB0eSB0YXJnZXRzIG9uIEFzc2lnbiIpCisgICAgICAgIHNlbGYuc3RtdChhc3QuQXNzaWduKFtOb25lXSwgYXN0Lk51bSgzKSksICJOb25lIGRpc2FsbG93ZWQiKQorICAgICAgICBzZWxmLnN0bXQoYXN0LkFzc2lnbihbYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKV0sIGFzdC5OdW0oMykpLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBTdG9yZSBjb250ZXh0IikKKyAgICAgICAgc2VsZi5zdG10KGFzdC5Bc3NpZ24oW2FzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Lk5hbWUoInkiLCBhc3QuU3RvcmUoKSkpLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorCisgICAgZGVmIHRlc3RfYXVnYXNzaWduKHNlbGYpOgorICAgICAgICBhdWcgPSBhc3QuQXVnQXNzaWduKGFzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSksIGFzdC5BZGQoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3QuTmFtZSgieSIsIGFzdC5Mb2FkKCkpKQorICAgICAgICBzZWxmLnN0bXQoYXVnLCAibXVzdCBoYXZlIFN0b3JlIGNvbnRleHQiKQorICAgICAgICBhdWcgPSBhc3QuQXVnQXNzaWduKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLCBhc3QuQWRkKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Lk5hbWUoInkiLCBhc3QuU3RvcmUoKSkpCisgICAgICAgIHNlbGYuc3RtdChhdWcsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2ZvcihzZWxmKToKKyAgICAgICAgeCA9IGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpCisgICAgICAgIHkgPSBhc3QuTmFtZSgieSIsIGFzdC5Mb2FkKCkpCisgICAgICAgIHAgPSBhc3QuUGFzcygpCisgICAgICAgIHNlbGYuc3RtdChhc3QuRm9yKHgsIHksIFtdLCBbXSksICJlbXB0eSBib2R5IG9uIEZvciIpCisgICAgICAgIHNlbGYuc3RtdChhc3QuRm9yKGFzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSksIHksIFtwXSwgW10pLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBTdG9yZSBjb250ZXh0IikKKyAgICAgICAgc2VsZi5zdG10KGFzdC5Gb3IoeCwgYXN0Lk5hbWUoInkiLCBhc3QuU3RvcmUoKSksIFtwXSwgW10pLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBlID0gYXN0LkV4cHIoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkpCisgICAgICAgIHNlbGYuc3RtdChhc3QuRm9yKHgsIHksIFtlXSwgW10pLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIHNlbGYuc3RtdChhc3QuRm9yKHgsIHksIFtwXSwgW2VdKSwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorCisgICAgZGVmIHRlc3Rfd2hpbGUoc2VsZik6CisgICAgICAgIHNlbGYuc3RtdChhc3QuV2hpbGUoYXN0Lk51bSgzKSwgW10sIFtdKSwgImVtcHR5IGJvZHkgb24gV2hpbGUiKQorICAgICAgICBzZWxmLnN0bXQoYXN0LldoaWxlKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLCBbYXN0LlBhc3MoKV0sIFtdKSwKKyAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgc2VsZi5zdG10KGFzdC5XaGlsZShhc3QuTnVtKDMpLCBbYXN0LlBhc3MoKV0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthc3QuRXhwcihhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSldKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorCisgICAgZGVmIHRlc3RfaWYoc2VsZik6CisgICAgICAgIHNlbGYuc3RtdChhc3QuSWYoYXN0Lk51bSgzKSwgW10sIFtdKSwgImVtcHR5IGJvZHkgb24gSWYiKQorICAgICAgICBpID0gYXN0LklmKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLCBbYXN0LlBhc3MoKV0sIFtdKQorICAgICAgICBzZWxmLnN0bXQoaSwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBpID0gYXN0LklmKGFzdC5OdW0oMyksIFthc3QuRXhwcihhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSldLCBbXSkKKyAgICAgICAgc2VsZi5zdG10KGksICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgaSA9IGFzdC5JZihhc3QuTnVtKDMpLCBbYXN0LlBhc3MoKV0sCisgICAgICAgICAgICAgICAgICAgW2FzdC5FeHByKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpKV0pCisgICAgICAgIHNlbGYuc3RtdChpLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF93aXRoKHNlbGYpOgorICAgICAgICBwID0gYXN0LlBhc3MoKQorICAgICAgICBzZWxmLnN0bXQoYXN0LldpdGgoW10sIFtwXSksICJlbXB0eSBpdGVtcyBvbiBXaXRoIikKKyAgICAgICAgaSA9IGFzdC53aXRoaXRlbShhc3QuTnVtKDMpLCBOb25lKQorICAgICAgICBzZWxmLnN0bXQoYXN0LldpdGgoW2ldLCBbXSksICJlbXB0eSBib2R5IG9uIFdpdGgiKQorICAgICAgICBpID0gYXN0LndpdGhpdGVtKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLCBOb25lKQorICAgICAgICBzZWxmLnN0bXQoYXN0LldpdGgoW2ldLCBbcF0pLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGkgPSBhc3Qud2l0aGl0ZW0oYXN0Lk51bSgzKSwgYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKSkKKyAgICAgICAgc2VsZi5zdG10KGFzdC5XaXRoKFtpXSwgW3BdKSwgIm11c3QgaGF2ZSBTdG9yZSBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X3JhaXNlKHNlbGYpOgorICAgICAgICByID0gYXN0LlJhaXNlKE5vbmUsIGFzdC5OdW0oMykpCisgICAgICAgIHNlbGYuc3RtdChyLCAiUmFpc2Ugd2l0aCBjYXVzZSBidXQgbm8gZXhjZXB0aW9uIikKKyAgICAgICAgciA9IGFzdC5SYWlzZShhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSwgTm9uZSkKKyAgICAgICAgc2VsZi5zdG10KHIsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgciA9IGFzdC5SYWlzZShhc3QuTnVtKDQpLCBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSkKKyAgICAgICAgc2VsZi5zdG10KHIsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X3RyeShzZWxmKToKKyAgICAgICAgcCA9IGFzdC5QYXNzKCkKKyAgICAgICAgdCA9IGFzdC5UcnkoW10sIFtdLCBbXSwgW3BdKQorICAgICAgICBzZWxmLnN0bXQodCwgImVtcHR5IGJvZHkgb24gVHJ5IikKKyAgICAgICAgdCA9IGFzdC5UcnkoW2FzdC5FeHByKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpKV0sIFtdLCBbXSwgW3BdKQorICAgICAgICBzZWxmLnN0bXQodCwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICB0ID0gYXN0LlRyeShbcF0sIFtdLCBbXSwgW10pCisgICAgICAgIHNlbGYuc3RtdCh0LCAiVHJ5IGhhcyBuZWl0aGVyIGV4Y2VwdCBoYW5kbGVycyBub3IgZmluYWxib2R5IikKKyAgICAgICAgdCA9IGFzdC5UcnkoW3BdLCBbXSwgW3BdLCBbcF0pCisgICAgICAgIHNlbGYuc3RtdCh0LCAiVHJ5IGhhcyBvcmVsc2UgYnV0IG5vIGV4Y2VwdCBoYW5kbGVycyIpCisgICAgICAgIHQgPSBhc3QuVHJ5KFtwXSwgW2FzdC5FeGNlcHRIYW5kbGVyKE5vbmUsICJ4IiwgW10pXSwgW10sIFtdKQorICAgICAgICBzZWxmLnN0bXQodCwgImVtcHR5IGJvZHkgb24gRXhjZXB0SGFuZGxlciIpCisgICAgICAgIGUgPSBbYXN0LkV4Y2VwdEhhbmRsZXIoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSksICJ5IiwgW3BdKV0KKyAgICAgICAgc2VsZi5zdG10KGFzdC5UcnkoW3BdLCBlLCBbXSwgW10pLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGUgPSBbYXN0LkV4Y2VwdEhhbmRsZXIoTm9uZSwgIngiLCBbcF0pXQorICAgICAgICB0ID0gYXN0LlRyeShbcF0sIGUsIFthc3QuRXhwcihhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSldLCBbcF0pCisgICAgICAgIHNlbGYuc3RtdCh0LCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIHQgPSBhc3QuVHJ5KFtwXSwgZSwgW3BdLCBbYXN0LkV4cHIoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkpXSkKKyAgICAgICAgc2VsZi5zdG10KHQsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2Fzc2VydChzZWxmKToKKyAgICAgICAgc2VsZi5zdG10KGFzdC5Bc3NlcnQoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSksIE5vbmUpLAorICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBhc3NydCA9IGFzdC5Bc3NlcnQoYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzdC5OYW1lKCJ5IiwgYXN0LlN0b3JlKCkpKQorICAgICAgICBzZWxmLnN0bXQoYXNzcnQsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2ltcG9ydChzZWxmKToKKyAgICAgICAgc2VsZi5zdG10KGFzdC5JbXBvcnQoW10pLCAiZW1wdHkgbmFtZXMgb24gSW1wb3J0IikKKworICAgIGRlZiB0ZXN0X2ltcG9ydGZyb20oc2VsZik6CisgICAgICAgIGltcCA9IGFzdC5JbXBvcnRGcm9tKE5vbmUsIFthc3QuYWxpYXMoIngiLCBOb25lKV0sIC00MikKKyAgICAgICAgc2VsZi5zdG10KGltcCwgImxldmVsIGxlc3MgdGhhbiAtMSIpCisgICAgICAgIHNlbGYuc3RtdChhc3QuSW1wb3J0RnJvbShOb25lLCBbXSwgMCksICJlbXB0eSBuYW1lcyBvbiBJbXBvcnRGcm9tIikKKworICAgIGRlZiB0ZXN0X2dsb2JhbChzZWxmKToKKyAgICAgICAgc2VsZi5zdG10KGFzdC5HbG9iYWwoW10pLCAiZW1wdHkgbmFtZXMgb24gR2xvYmFsIikKKworICAgIGRlZiB0ZXN0X25vbmxvY2FsKHNlbGYpOgorICAgICAgICBzZWxmLnN0bXQoYXN0Lk5vbmxvY2FsKFtdKSwgImVtcHR5IG5hbWVzIG9uIE5vbmxvY2FsIikKKworICAgIGRlZiB0ZXN0X2V4cHIoc2VsZik6CisgICAgICAgIGUgPSBhc3QuRXhwcihhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSkKKyAgICAgICAgc2VsZi5zdG10KGUsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2Jvb2xvcChzZWxmKToKKyAgICAgICAgYiA9IGFzdC5Cb29sT3AoYXN0LkFuZCgpLCBbXSkKKyAgICAgICAgc2VsZi5leHByKGIsICJsZXNzIHRoYW4gMiB2YWx1ZXMiKQorICAgICAgICBiID0gYXN0LkJvb2xPcChhc3QuQW5kKCksIFthc3QuTnVtKDMpXSkKKyAgICAgICAgc2VsZi5leHByKGIsICJsZXNzIHRoYW4gMiB2YWx1ZXMiKQorICAgICAgICBiID0gYXN0LkJvb2xPcChhc3QuQW5kKCksIFthc3QuTnVtKDQpLCBOb25lXSkKKyAgICAgICAgc2VsZi5leHByKGIsICJOb25lIGRpc2FsbG93ZWQiKQorICAgICAgICBiID0gYXN0LkJvb2xPcChhc3QuQW5kKCksIFthc3QuTnVtKDQpLCBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKV0pCisgICAgICAgIHNlbGYuZXhwcihiLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF91bmFyeW9wKHNlbGYpOgorICAgICAgICB1ID0gYXN0LlVuYXJ5T3AoYXN0Lk5vdCgpLCBhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSkKKyAgICAgICAgc2VsZi5leHByKHUsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X2xhbWJkYShzZWxmKToKKyAgICAgICAgYSA9IGFzdC5hcmd1bWVudHMoW10sIE5vbmUsIE5vbmUsIFtdLCBOb25lLCBOb25lLCBbXSwgW10pCisgICAgICAgIHNlbGYuZXhwcihhc3QuTGFtYmRhKGEsIGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpKSwKKyAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgZGVmIGZhYyhhcmdzKToKKyAgICAgICAgICAgIHJldHVybiBhc3QuTGFtYmRhKGFyZ3MsIGFzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSkpCisgICAgICAgIHNlbGYuX2NoZWNrX2FyZ3VtZW50cyhmYWMsIHNlbGYuZXhwcikKKworICAgIGRlZiB0ZXN0X2lmZXhwKHNlbGYpOgorICAgICAgICBsID0gYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKQorICAgICAgICBzID0gYXN0Lk5hbWUoInkiLCBhc3QuU3RvcmUoKSkKKyAgICAgICAgZm9yIGFyZ3MgaW4gKHMsIGwsIGwpLCAobCwgcywgbCksIChsLCBsLCBzKToKKyAgICAgICAgICAgIHNlbGYuZXhwcihhc3QuSWZFeHAoKmFyZ3MpLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF9kaWN0KHNlbGYpOgorICAgICAgICBkID0gYXN0LkRpY3QoW10sIFthc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpXSkKKyAgICAgICAgc2VsZi5leHByKGQsICJzYW1lIG51bWJlciBvZiBrZXlzIGFzIHZhbHVlcyIpCisgICAgICAgIGQgPSBhc3QuRGljdChbTm9uZV0sIFthc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpXSkKKyAgICAgICAgc2VsZi5leHByKGQsICJOb25lIGRpc2FsbG93ZWQiKQorICAgICAgICBkID0gYXN0LkRpY3QoW2FzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSldLCBbTm9uZV0pCisgICAgICAgIHNlbGYuZXhwcihkLCAiTm9uZSBkaXNhbGxvd2VkIikKKworICAgIGRlZiB0ZXN0X3NldChzZWxmKToKKyAgICAgICAgc2VsZi5leHByKGFzdC5TZXQoW05vbmVdKSwgIk5vbmUgZGlzYWxsb3dlZCIpCisgICAgICAgIHMgPSBhc3QuU2V0KFthc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKV0pCisgICAgICAgIHNlbGYuZXhwcihzLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgX2NoZWNrX2NvbXByZWhlbnNpb24oc2VsZiwgZmFjKToKKyAgICAgICAgc2VsZi5leHByKGZhYyhbXSksICJjb21wcmVoZW5zaW9uIHdpdGggbm8gZ2VuZXJhdG9ycyIpCisgICAgICAgIGcgPSBhc3QuY29tcHJlaGVuc2lvbihhc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKSwgW10pCisgICAgICAgIHNlbGYuZXhwcihmYWMoW2ddKSwgIm11c3QgaGF2ZSBTdG9yZSBjb250ZXh0IikKKyAgICAgICAgZyA9IGFzdC5jb21wcmVoZW5zaW9uKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSksIFtdKQorICAgICAgICBzZWxmLmV4cHIoZmFjKFtnXSksICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgeCA9IGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpCisgICAgICAgIHkgPSBhc3QuTmFtZSgieSIsIGFzdC5Mb2FkKCkpCisgICAgICAgIGcgPSBhc3QuY29tcHJlaGVuc2lvbih4LCB5LCBbTm9uZV0pCisgICAgICAgIHNlbGYuZXhwcihmYWMoW2ddKSwgIk5vbmUgZGlzYWxsb3dlZCIpCisgICAgICAgIGcgPSBhc3QuY29tcHJlaGVuc2lvbih4LCB5LCBbYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSldKQorICAgICAgICBzZWxmLmV4cHIoZmFjKFtnXSksICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiBfc2ltcGxlX2NvbXAoc2VsZiwgZmFjKToKKyAgICAgICAgZyA9IGFzdC5jb21wcmVoZW5zaW9uKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKSwgW10pCisgICAgICAgIHNlbGYuZXhwcihmYWMoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSksIFtnXSksCisgICAgICAgICAgICAgICAgICAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGRlZiB3cmFwKGdlbnMpOgorICAgICAgICAgICAgcmV0dXJuIGZhYyhhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSwgZ2VucykKKyAgICAgICAgc2VsZi5fY2hlY2tfY29tcHJlaGVuc2lvbih3cmFwKQorCisgICAgZGVmIHRlc3RfbGlzdGNvbXAoc2VsZik6CisgICAgICAgIHNlbGYuX3NpbXBsZV9jb21wKGFzdC5MaXN0Q29tcCkKKworICAgIGRlZiB0ZXN0X3NldGNvbXAoc2VsZik6CisgICAgICAgIHNlbGYuX3NpbXBsZV9jb21wKGFzdC5TZXRDb21wKQorCisgICAgZGVmIHRlc3RfZ2VuZXJhdG9yZXhwKHNlbGYpOgorICAgICAgICBzZWxmLl9zaW1wbGVfY29tcChhc3QuR2VuZXJhdG9yRXhwKQorCisgICAgZGVmIHRlc3RfZGljdGNvbXAoc2VsZik6CisgICAgICAgIGcgPSBhc3QuY29tcHJlaGVuc2lvbihhc3QuTmFtZSgieSIsIGFzdC5TdG9yZSgpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzdC5OYW1lKCJwIiwgYXN0LkxvYWQoKSksIFtdKQorICAgICAgICBjID0gYXN0LkRpY3RDb21wKGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGFzdC5OYW1lKCJ5IiwgYXN0LkxvYWQoKSksIFtnXSkKKyAgICAgICAgc2VsZi5leHByKGMsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgYyA9IGFzdC5EaWN0Q29tcChhc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGFzdC5OYW1lKCJ5IiwgYXN0LlN0b3JlKCkpLCBbZ10pCisgICAgICAgIHNlbGYuZXhwcihjLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGRlZiBmYWN0b3J5KGNvbXBzKToKKyAgICAgICAgICAgIGsgPSBhc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpCisgICAgICAgICAgICB2ID0gYXN0Lk5hbWUoInkiLCBhc3QuTG9hZCgpKQorICAgICAgICAgICAgcmV0dXJuIGFzdC5EaWN0Q29tcChrLCB2LCBjb21wcykKKyAgICAgICAgc2VsZi5fY2hlY2tfY29tcHJlaGVuc2lvbihmYWN0b3J5KQorCisgICAgZGVmIHRlc3RfeWllbGQoc2VsZik6CisgICAgICAgIHNlbGYuZXhwcihhc3QuWWllbGQoYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkpLCAibXVzdCBoYXZlIExvYWQiKQorICAgICAgICBzZWxmLmV4cHIoYXN0LllpZWxkRnJvbShhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSksICJtdXN0IGhhdmUgTG9hZCIpCisKKyAgICBkZWYgdGVzdF9jb21wYXJlKHNlbGYpOgorICAgICAgICBsZWZ0ID0gYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKQorICAgICAgICBjb21wID0gYXN0LkNvbXBhcmUobGVmdCwgW2FzdC5JbigpXSwgW10pCisgICAgICAgIHNlbGYuZXhwcihjb21wLCAibm8gY29tcGFyYXRvcnMiKQorICAgICAgICBjb21wID0gYXN0LkNvbXBhcmUobGVmdCwgW2FzdC5JbigpXSwgW2FzdC5OdW0oNCksIGFzdC5OdW0oNSldKQorICAgICAgICBzZWxmLmV4cHIoY29tcCwgImRpZmZlcmVudCBudW1iZXIgb2YgY29tcGFyYXRvcnMgYW5kIG9wZXJhbmRzIikKKyAgICAgICAgY29tcCA9IGFzdC5Db21wYXJlKGFzdC5OdW0oImJsYWgiKSwgW2FzdC5JbigpXSwgW2xlZnRdKQorICAgICAgICBzZWxmLmV4cHIoY29tcCwgIm5vbi1udW1lcmljIiwgZXhjPVR5cGVFcnJvcikKKyAgICAgICAgY29tcCA9IGFzdC5Db21wYXJlKGxlZnQsIFthc3QuSW4oKV0sIFthc3QuTnVtKCJibGFoIildKQorICAgICAgICBzZWxmLmV4cHIoY29tcCwgIm5vbi1udW1lcmljIiwgZXhjPVR5cGVFcnJvcikKKworICAgIGRlZiB0ZXN0X2NhbGwoc2VsZik6CisgICAgICAgIGZ1bmMgPSBhc3QuTmFtZSgieCIsIGFzdC5Mb2FkKCkpCisgICAgICAgIGFyZ3MgPSBbYXN0Lk5hbWUoInkiLCBhc3QuTG9hZCgpKV0KKyAgICAgICAga2V5d29yZHMgPSBbYXN0LmtleXdvcmQoInciLCBhc3QuTmFtZSgieiIsIGFzdC5Mb2FkKCkpKV0KKyAgICAgICAgc3RhcmFyZyA9IGFzdC5OYW1lKCJwIiwgYXN0LkxvYWQoKSkKKyAgICAgICAga3dhcmcgPSBhc3QuTmFtZSgicSIsIGFzdC5Mb2FkKCkpCisgICAgICAgIGNhbGwgPSBhc3QuQ2FsbChhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSwgYXJncywga2V5d29yZHMsIHN0YXJhcmcsCisgICAgICAgICAgICAgICAgICAgICAgICBrd2FyZykKKyAgICAgICAgc2VsZi5leHByKGNhbGwsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgY2FsbCA9IGFzdC5DYWxsKGZ1bmMsIFtOb25lXSwga2V5d29yZHMsIHN0YXJhcmcsIGt3YXJnKQorICAgICAgICBzZWxmLmV4cHIoY2FsbCwgIk5vbmUgZGlzYWxsb3dlZCIpCisgICAgICAgIGJhZF9rZXl3b3JkcyA9IFthc3Qua2V5d29yZCgidyIsIGFzdC5OYW1lKCJ6IiwgYXN0LlN0b3JlKCkpKV0KKyAgICAgICAgY2FsbCA9IGFzdC5DYWxsKGZ1bmMsIGFyZ3MsIGJhZF9rZXl3b3Jkcywgc3RhcmFyZywga3dhcmcpCisgICAgICAgIHNlbGYuZXhwcihjYWxsLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisgICAgICAgIGNhbGwgPSBhc3QuQ2FsbChmdW5jLCBhcmdzLCBrZXl3b3JkcywgYXN0Lk5hbWUoInoiLCBhc3QuU3RvcmUoKSksIGt3YXJnKQorICAgICAgICBzZWxmLmV4cHIoY2FsbCwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBjYWxsID0gYXN0LkNhbGwoZnVuYywgYXJncywga2V5d29yZHMsIHN0YXJhcmcsCisgICAgICAgICAgICAgICAgICAgICAgICBhc3QuTmFtZSgidyIsIGFzdC5TdG9yZSgpKSkKKyAgICAgICAgc2VsZi5leHByKGNhbGwsICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKworICAgIGRlZiB0ZXN0X251bShzZWxmKToKKyAgICAgICAgY2xhc3Mgc3ViaW50KGludCk6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGNsYXNzIHN1YmZsb2F0KGZsb2F0KToKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgY2xhc3Mgc3ViY29tcGxleChjb21wbGV4KToKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgZm9yIG9iaiBpbiAiMCIsICJoZWxsbyIsIHN1YmludCgpLCBzdWJmbG9hdCgpLCBzdWJjb21wbGV4KCk6CisgICAgICAgICAgICBzZWxmLmV4cHIoYXN0Lk51bShvYmopLCAibm9uLW51bWVyaWMiLCBleGM9VHlwZUVycm9yKQorCisgICAgZGVmIHRlc3RfYXR0cmlidXRlKHNlbGYpOgorICAgICAgICBhdHRyID0gYXN0LkF0dHJpYnV0ZShhc3QuTmFtZSgieCIsIGFzdC5TdG9yZSgpKSwgInkiLCBhc3QuTG9hZCgpKQorICAgICAgICBzZWxmLmV4cHIoYXR0ciwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorCisgICAgZGVmIHRlc3Rfc3Vic2NyaXB0KHNlbGYpOgorICAgICAgICBzdWIgPSBhc3QuU3Vic2NyaXB0KGFzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpLCBhc3QuSW5kZXgoYXN0Lk51bSgzKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0LkxvYWQoKSkKKyAgICAgICAgc2VsZi5leHByKHN1YiwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICB4ID0gYXN0Lk5hbWUoIngiLCBhc3QuTG9hZCgpKQorICAgICAgICBzdWIgPSBhc3QuU3Vic2NyaXB0KHgsIGFzdC5JbmRleChhc3QuTmFtZSgieSIsIGFzdC5TdG9yZSgpKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0LkxvYWQoKSkKKyAgICAgICAgc2VsZi5leHByKHN1YiwgIm11c3QgaGF2ZSBMb2FkIGNvbnRleHQiKQorICAgICAgICBzID0gYXN0Lk5hbWUoIngiLCBhc3QuU3RvcmUoKSkKKyAgICAgICAgZm9yIGFyZ3MgaW4gKHMsIE5vbmUsIE5vbmUpLCAoTm9uZSwgcywgTm9uZSksIChOb25lLCBOb25lLCBzKToKKyAgICAgICAgICAgIHNsID0gYXN0LlNsaWNlKCphcmdzKQorICAgICAgICAgICAgc2VsZi5leHByKGFzdC5TdWJzY3JpcHQoeCwgc2wsIGFzdC5Mb2FkKCkpLAorICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGhhdmUgTG9hZCBjb250ZXh0IikKKyAgICAgICAgc2wgPSBhc3QuRXh0U2xpY2UoW10pCisgICAgICAgIHNlbGYuZXhwcihhc3QuU3Vic2NyaXB0KHgsIHNsLCBhc3QuTG9hZCgpKSwgImVtcHR5IGRpbXMgb24gRXh0U2xpY2UiKQorICAgICAgICBzbCA9IGFzdC5FeHRTbGljZShbYXN0LkluZGV4KHMpXSkKKyAgICAgICAgc2VsZi5leHByKGFzdC5TdWJzY3JpcHQoeCwgc2wsIGFzdC5Mb2FkKCkpLCAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF9zdGFycmVkKHNlbGYpOgorICAgICAgICBsZWZ0ID0gYXN0Lkxpc3QoW2FzdC5TdGFycmVkKGFzdC5OYW1lKCJ4IiwgYXN0LkxvYWQoKSksIGFzdC5TdG9yZSgpKV0sCisgICAgICAgICAgICAgICAgICAgICAgICBhc3QuU3RvcmUoKSkKKyAgICAgICAgYXNzaWduID0gYXN0LkFzc2lnbihbbGVmdF0sIGFzdC5OdW0oNCkpCisgICAgICAgIHNlbGYuc3RtdChhc3NpZ24sICJtdXN0IGhhdmUgU3RvcmUgY29udGV4dCIpCisKKyAgICBkZWYgX3NlcXVlbmNlKHNlbGYsIGZhYyk6CisgICAgICAgIHNlbGYuZXhwcihmYWMoW05vbmVdLCBhc3QuTG9hZCgpKSwgIk5vbmUgZGlzYWxsb3dlZCIpCisgICAgICAgIHNlbGYuZXhwcihmYWMoW2FzdC5OYW1lKCJ4IiwgYXN0LlN0b3JlKCkpXSwgYXN0LkxvYWQoKSksCisgICAgICAgICAgICAgICAgICAibXVzdCBoYXZlIExvYWQgY29udGV4dCIpCisKKyAgICBkZWYgdGVzdF9saXN0KHNlbGYpOgorICAgICAgICBzZWxmLl9zZXF1ZW5jZShhc3QuTGlzdCkKKworICAgIGRlZiB0ZXN0X3R1cGxlKHNlbGYpOgorICAgICAgICBzZWxmLl9zZXF1ZW5jZShhc3QuVHVwbGUpCisKKyAgICBkZWYgdGVzdF9zdGRsaWJfdmFsaWRhdGVzKHNlbGYpOgorICAgICAgICBzdGRsaWIgPSBvcy5wYXRoLmRpcm5hbWUoYXN0Ll9fZmlsZV9fKQorICAgICAgICB0ZXN0cyA9IFtmbiBmb3IgZm4gaW4gb3MubGlzdGRpcihzdGRsaWIpIGlmIGZuLmVuZHN3aXRoKCIucHkiKV0KKyAgICAgICAgdGVzdHMuZXh0ZW5kKFsidGVzdC90ZXN0X2dyYW1tYXIucHkiLCAidGVzdC90ZXN0X3VucGFja19leC5weSJdKQorICAgICAgICBmb3IgbW9kdWxlIGluIHRlc3RzOgorICAgICAgICAgICAgZm4gPSBvcy5wYXRoLmpvaW4oc3RkbGliLCBtb2R1bGUpCisgICAgICAgICAgICB3aXRoIG9wZW4oZm4sICJyIiwgZW5jb2Rpbmc9InV0Zi04IikgYXMgZnA6CisgICAgICAgICAgICAgICAgc291cmNlID0gZnAucmVhZCgpCisgICAgICAgICAgICBtb2QgPSBhc3QucGFyc2Uoc291cmNlKQorICAgICAgICAgICAgY29tcGlsZShtb2QsIGZuLCAiZXhlYyIpCisKKwogZGVmIHRlc3RfbWFpbigpOgotICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KEFTVF9UZXN0cywgQVNUSGVscGVyc19UZXN0KQorICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KEFTVF9UZXN0cywgQVNUSGVscGVyc19UZXN0LCBBU1RWYWxpZGF0b3JUZXN0cykKIAogZGVmIG1haW4oKToKICAgICBpZiBfX25hbWVfXyAhPSAnX19tYWluX18nOgpAQCAtNTMzLDkgKzk0MywxMSBAQAogKCdNb2R1bGUnLCBbKCdGb3InLCAoMSwgMCksICgnTmFtZScsICgxLCA0KSwgJ3YnLCAoJ1N0b3JlJywpKSwgKCdOYW1lJywgKDEsIDkpLCAndicsICgnTG9hZCcsKSksIFsoJ1Bhc3MnLCAoMSwgMTEpKV0sIFtdKV0pLAogKCdNb2R1bGUnLCBbKCdXaGlsZScsICgxLCAwKSwgKCdOYW1lJywgKDEsIDYpLCAndicsICgnTG9hZCcsKSksIFsoJ1Bhc3MnLCAoMSwgOCkpXSwgW10pXSksCiAoJ01vZHVsZScsIFsoJ0lmJywgKDEsIDApLCAoJ05hbWUnLCAoMSwgMyksICd2JywgKCdMb2FkJywpKSwgWygnUGFzcycsICgxLCA1KSldLCBbXSldKSwKKygnTW9kdWxlJywgWygnV2l0aCcsICgxLCAwKSwgWygnd2l0aGl0ZW0nLCAoJ05hbWUnLCAoMSwgNSksICd4JywgKCdMb2FkJywpKSwgKCdOYW1lJywgKDEsIDEwKSwgJ3knLCAoJ1N0b3JlJywpKSldLCBbKCdQYXNzJywgKDEsIDEzKSldKV0pLAorKCdNb2R1bGUnLCBbKCdXaXRoJywgKDEsIDApLCBbKCd3aXRoaXRlbScsICgnTmFtZScsICgxLCA1KSwgJ3gnLCAoJ0xvYWQnLCkpLCAoJ05hbWUnLCAoMSwgMTApLCAneScsICgnU3RvcmUnLCkpKSwgKCd3aXRoaXRlbScsICgnTmFtZScsICgxLCAxMyksICd6JywgKCdMb2FkJywpKSwgKCdOYW1lJywgKDEsIDE4KSwgJ3EnLCAoJ1N0b3JlJywpKSldLCBbKCdQYXNzJywgKDEsIDIxKSldKV0pLAogKCdNb2R1bGUnLCBbKCdSYWlzZScsICgxLCAwKSwgKCdDYWxsJywgKDEsIDYpLCAoJ05hbWUnLCAoMSwgNiksICdFeGNlcHRpb24nLCAoJ0xvYWQnLCkpLCBbKCdTdHInLCAoMSwgMTYpLCAnc3RyaW5nJyldLCBbXSwgTm9uZSwgTm9uZSksIE5vbmUpXSksCi0oJ01vZHVsZScsIFsoJ1RyeUV4Y2VwdCcsICgxLCAwKSwgWygnUGFzcycsICgyLCAyKSldLCBbKCdFeGNlcHRIYW5kbGVyJywgKDMsIDApLCAoJ05hbWUnLCAoMywgNyksICdFeGNlcHRpb24nLCAoJ0xvYWQnLCkpLCBOb25lLCBbKCdQYXNzJywgKDQsIDIpKV0pXSwgW10pXSksCi0oJ01vZHVsZScsIFsoJ1RyeUZpbmFsbHknLCAoMSwgMCksIFsoJ1Bhc3MnLCAoMiwgMikpXSwgWygnUGFzcycsICg0LCAyKSldKV0pLAorKCdNb2R1bGUnLCBbKCdUcnknLCAoMSwgMCksIFsoJ1Bhc3MnLCAoMiwgMikpXSwgWygnRXhjZXB0SGFuZGxlcicsICgzLCAwKSwgKCdOYW1lJywgKDMsIDcpLCAnRXhjZXB0aW9uJywgKCdMb2FkJywpKSwgTm9uZSwgWygnUGFzcycsICg0LCAyKSldKV0sIFtdLCBbXSldKSwKKygnTW9kdWxlJywgWygnVHJ5JywgKDEsIDApLCBbKCdQYXNzJywgKDIsIDIpKV0sIFtdLCBbXSwgWygnUGFzcycsICg0LCAyKSldKV0pLAogKCdNb2R1bGUnLCBbKCdBc3NlcnQnLCAoMSwgMCksICgnTmFtZScsICgxLCA3KSwgJ3YnLCAoJ0xvYWQnLCkpLCBOb25lKV0pLAogKCdNb2R1bGUnLCBbKCdJbXBvcnQnLCAoMSwgMCksIFsoJ2FsaWFzJywgJ3N5cycsIE5vbmUpXSldKSwKICgnTW9kdWxlJywgWygnSW1wb3J0RnJvbScsICgxLCAwKSwgJ3N5cycsIFsoJ2FsaWFzJywgJ3YnLCBOb25lKV0sIDApXSksCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2FzeW5jb3JlLnB5IGIvTGliL3Rlc3QvdGVzdF9hc3luY29yZS5weQppbmRleCA1M2M0OWE4Li41MmRmZjBmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2FzeW5jb3JlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYXN5bmNvcmUucHkKQEAgLTIwLDYgKzIwLDggQEAKIAogSE9TVCA9IHN1cHBvcnQuSE9TVAogCitIQVNfVU5JWF9TT0NLRVRTID0gaGFzYXR0cihzb2NrZXQsICdBRl9VTklYJykKKwogY2xhc3MgZHVtbXlzb2NrZXQ6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgogICAgICAgICBzZWxmLmNsb3NlZCA9IEZhbHNlCkBAIC04Nyw2ICs4OSwxMyBAQAogICAgICAgICBzZXJ2LmNsb3NlKCkKICAgICAgICAgZXZ0LnNldCgpCiAKK2RlZiBiaW5kX2FmX2F3YXJlKHNvY2ssIGFkZHIpOgorICAgICIiIkhlbHBlciBmdW5jdGlvbiB0byBiaW5kIGEgc29ja2V0IGFjY29yZGluZyB0byBpdHMgZmFtaWx5LiIiIgorICAgIGlmIEhBU19VTklYX1NPQ0tFVFMgYW5kIHNvY2suZmFtaWx5ID09IHNvY2tldC5BRl9VTklYOgorICAgICAgICAjIE1ha2Ugc3VyZSB0aGUgcGF0aCBkb2Vzbid0IGV4aXN0LgorICAgICAgICB1bmxpbmsoYWRkcikKKyAgICBzb2NrLmJpbmQoYWRkcikKKwogCiBjbGFzcyBIZWxwZXJGdW5jdGlvblRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgdGVzdF9yZWFkd3JpdGVleGMoc2VsZik6CkBAIC0zNTIsNyArMzYxLDcgQEAKICAgICBAc3VwcG9ydC5yZWFwX3RocmVhZHMKICAgICBkZWYgdGVzdF9zZW5kKHNlbGYpOgogICAgICAgICBldnQgPSB0aHJlYWRpbmcuRXZlbnQoKQotICAgICAgICBzb2NrID0gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNKQorICAgICAgICBzb2NrID0gc29ja2V0LnNvY2tldCgpCiAgICAgICAgIHNvY2suc2V0dGltZW91dCgzKQogICAgICAgICBwb3J0ID0gc3VwcG9ydC5iaW5kX3BvcnQoc29jaykKIApAQCAtMzY3LDcgKzM3Niw3IEBACiAKICAgICAgICAgICAgIGRhdGEgPSBiIlN1cHBvc2UgdGhlcmUgaXNuJ3QgYSAxNi10b24gd2VpZ2h0PyIKICAgICAgICAgICAgIGQgPSBkaXNwYXRjaGVyd2l0aHNlbmRfbm9yZWFkKCkKLSAgICAgICAgICAgIGQuY3JlYXRlX3NvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNKQorICAgICAgICAgICAgZC5jcmVhdGVfc29ja2V0KCkKICAgICAgICAgICAgIGQuY29ubmVjdCgoSE9TVCwgcG9ydCkpCiAKICAgICAgICAgICAgICMgZ2l2ZSB0aW1lIGZvciBzb2NrZXQgdG8gY29ubmVjdApAQCAtNDY3LDIyICs0NzYsMjIgQEAKICAgICAgICAgcmFpc2UKIAogCi1jbGFzcyBUQ1BTZXJ2ZXIoYXN5bmNvcmUuZGlzcGF0Y2hlcik6CitjbGFzcyBCYXNlU2VydmVyKGFzeW5jb3JlLmRpc3BhdGNoZXIpOgogICAgICIiIkEgc2VydmVyIHdoaWNoIGxpc3RlbnMgb24gYW4gYWRkcmVzcyBhbmQgZGlzcGF0Y2hlcyB0aGUKICAgICBjb25uZWN0aW9uIHRvIGEgaGFuZGxlci4KICAgICAiIiIKIAotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBoYW5kbGVyPUJhc2VUZXN0SGFuZGxlciwgaG9zdD1IT1NULCBwb3J0PTApOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBmYW1pbHksIGFkZHIsIGhhbmRsZXI9QmFzZVRlc3RIYW5kbGVyKToKICAgICAgICAgYXN5bmNvcmUuZGlzcGF0Y2hlci5fX2luaXRfXyhzZWxmKQotICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgc2VsZi5jcmVhdGVfc29ja2V0KGZhbWlseSkKICAgICAgICAgc2VsZi5zZXRfcmV1c2VfYWRkcigpCi0gICAgICAgIHNlbGYuYmluZCgoaG9zdCwgcG9ydCkpCisgICAgICAgIGJpbmRfYWZfYXdhcmUoc2VsZi5zb2NrZXQsIGFkZHIpCiAgICAgICAgIHNlbGYubGlzdGVuKDUpCiAgICAgICAgIHNlbGYuaGFuZGxlciA9IGhhbmRsZXIKIAogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBhZGRyZXNzKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5zb2NrZXQuZ2V0c29ja25hbWUoKVs6Ml0KKyAgICAgICAgcmV0dXJuIHNlbGYuc29ja2V0LmdldHNvY2tuYW1lKCkKIAogICAgIGRlZiBoYW5kbGVfYWNjZXB0ZWQoc2VsZiwgc29jaywgYWRkcik6CiAgICAgICAgIHNlbGYuaGFuZGxlcihzb2NrKQpAQCAtNDkzLDkgKzUwMiw5IEBACiAKIGNsYXNzIEJhc2VDbGllbnQoQmFzZVRlc3RIYW5kbGVyKToKIAotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhZGRyZXNzKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZmFtaWx5LCBhZGRyZXNzKToKICAgICAgICAgQmFzZVRlc3RIYW5kbGVyLl9faW5pdF9fKHNlbGYpCi0gICAgICAgIHNlbGYuY3JlYXRlX3NvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNKQorICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoZmFtaWx5KQogICAgICAgICBzZWxmLmNvbm5lY3QoYWRkcmVzcykKIAogICAgIGRlZiBoYW5kbGVfY29ubmVjdChzZWxmKToKQEAgLTUyNSw4ICs1MzQsOCBAQAogICAgICAgICAgICAgZGVmIGhhbmRsZV9jb25uZWN0KHNlbGYpOgogICAgICAgICAgICAgICAgIHNlbGYuZmxhZyA9IFRydWUKIAotICAgICAgICBzZXJ2ZXIgPSBUQ1BTZXJ2ZXIoKQotICAgICAgICBjbGllbnQgPSBUZXN0Q2xpZW50KHNlcnZlci5hZGRyZXNzKQorICAgICAgICBzZXJ2ZXIgPSBCYXNlU2VydmVyKHNlbGYuZmFtaWx5LCBzZWxmLmFkZHIpCisgICAgICAgIGNsaWVudCA9IFRlc3RDbGllbnQoc2VsZi5mYW1pbHksIHNlcnZlci5hZGRyZXNzKQogICAgICAgICBzZWxmLmxvb3Bfd2FpdGluZ19mb3JfZmxhZyhjbGllbnQpCiAKICAgICBkZWYgdGVzdF9oYW5kbGVfYWNjZXB0KHNlbGYpOgpAQCAtNTM0LDE4ICs1NDMsMTggQEAKIAogICAgICAgICBjbGFzcyBUZXN0TGlzdGVuZXIoQmFzZVRlc3RIYW5kbGVyKToKIAotICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZhbWlseSwgYWRkcik6CiAgICAgICAgICAgICAgICAgQmFzZVRlc3RIYW5kbGVyLl9faW5pdF9fKHNlbGYpCi0gICAgICAgICAgICAgICAgc2VsZi5jcmVhdGVfc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCi0gICAgICAgICAgICAgICAgc2VsZi5iaW5kKChIT1NULCAwKSkKKyAgICAgICAgICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoZmFtaWx5KQorICAgICAgICAgICAgICAgIGJpbmRfYWZfYXdhcmUoc2VsZi5zb2NrZXQsIGFkZHIpCiAgICAgICAgICAgICAgICAgc2VsZi5saXN0ZW4oNSkKLSAgICAgICAgICAgICAgICBzZWxmLmFkZHJlc3MgPSBzZWxmLnNvY2tldC5nZXRzb2NrbmFtZSgpWzoyXQorICAgICAgICAgICAgICAgIHNlbGYuYWRkcmVzcyA9IHNlbGYuc29ja2V0LmdldHNvY2tuYW1lKCkKIAogICAgICAgICAgICAgZGVmIGhhbmRsZV9hY2NlcHQoc2VsZik6CiAgICAgICAgICAgICAgICAgc2VsZi5mbGFnID0gVHJ1ZQogCi0gICAgICAgIHNlcnZlciA9IFRlc3RMaXN0ZW5lcigpCi0gICAgICAgIGNsaWVudCA9IEJhc2VDbGllbnQoc2VydmVyLmFkZHJlc3MpCisgICAgICAgIHNlcnZlciA9IFRlc3RMaXN0ZW5lcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyKQorICAgICAgICBjbGllbnQgPSBCYXNlQ2xpZW50KHNlbGYuZmFtaWx5LCBzZXJ2ZXIuYWRkcmVzcykKICAgICAgICAgc2VsZi5sb29wX3dhaXRpbmdfZm9yX2ZsYWcoc2VydmVyKQogCiAgICAgZGVmIHRlc3RfaGFuZGxlX2FjY2VwdGVkKHNlbGYpOgpAQCAtNTUzLDEyICs1NjIsMTIgQEAKIAogICAgICAgICBjbGFzcyBUZXN0TGlzdGVuZXIoQmFzZVRlc3RIYW5kbGVyKToKIAotICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZhbWlseSwgYWRkcik6CiAgICAgICAgICAgICAgICAgQmFzZVRlc3RIYW5kbGVyLl9faW5pdF9fKHNlbGYpCi0gICAgICAgICAgICAgICAgc2VsZi5jcmVhdGVfc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0pCi0gICAgICAgICAgICAgICAgc2VsZi5iaW5kKChIT1NULCAwKSkKKyAgICAgICAgICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoZmFtaWx5KQorICAgICAgICAgICAgICAgIGJpbmRfYWZfYXdhcmUoc2VsZi5zb2NrZXQsIGFkZHIpCiAgICAgICAgICAgICAgICAgc2VsZi5saXN0ZW4oNSkKLSAgICAgICAgICAgICAgICBzZWxmLmFkZHJlc3MgPSBzZWxmLnNvY2tldC5nZXRzb2NrbmFtZSgpWzoyXQorICAgICAgICAgICAgICAgIHNlbGYuYWRkcmVzcyA9IHNlbGYuc29ja2V0LmdldHNvY2tuYW1lKCkKIAogICAgICAgICAgICAgZGVmIGhhbmRsZV9hY2NlcHQoc2VsZik6CiAgICAgICAgICAgICAgICAgYXN5bmNvcmUuZGlzcGF0Y2hlci5oYW5kbGVfYWNjZXB0KHNlbGYpCkBAIC01NjcsOCArNTc2LDggQEAKICAgICAgICAgICAgICAgICBzb2NrLmNsb3NlKCkKICAgICAgICAgICAgICAgICBzZWxmLmZsYWcgPSBUcnVlCiAKLSAgICAgICAgc2VydmVyID0gVGVzdExpc3RlbmVyKCkKLSAgICAgICAgY2xpZW50ID0gQmFzZUNsaWVudChzZXJ2ZXIuYWRkcmVzcykKKyAgICAgICAgc2VydmVyID0gVGVzdExpc3RlbmVyKHNlbGYuZmFtaWx5LCBzZWxmLmFkZHIpCisgICAgICAgIGNsaWVudCA9IEJhc2VDbGllbnQoc2VsZi5mYW1pbHksIHNlcnZlci5hZGRyZXNzKQogICAgICAgICBzZWxmLmxvb3Bfd2FpdGluZ19mb3JfZmxhZyhzZXJ2ZXIpCiAKIApAQCAtNTg0LDggKzU5Myw4IEBACiAgICAgICAgICAgICAgICAgQmFzZVRlc3RIYW5kbGVyLl9faW5pdF9fKHNlbGYsIGNvbm4pCiAgICAgICAgICAgICAgICAgc2VsZi5zZW5kKGIneCcgKiAxMDI0KQogCi0gICAgICAgIHNlcnZlciA9IFRDUFNlcnZlcihUZXN0SGFuZGxlcikKLSAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZXJ2ZXIuYWRkcmVzcykKKyAgICAgICAgc2VydmVyID0gQmFzZVNlcnZlcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyLCBUZXN0SGFuZGxlcikKKyAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZWxmLmZhbWlseSwgc2VydmVyLmFkZHJlc3MpCiAgICAgICAgIHNlbGYubG9vcF93YWl0aW5nX2Zvcl9mbGFnKGNsaWVudCkKIAogICAgIGRlZiB0ZXN0X2hhbmRsZV93cml0ZShzZWxmKToKQEAgLTU5NSw4ICs2MDQsOCBAQAogICAgICAgICAgICAgZGVmIGhhbmRsZV93cml0ZShzZWxmKToKICAgICAgICAgICAgICAgICBzZWxmLmZsYWcgPSBUcnVlCiAKLSAgICAgICAgc2VydmVyID0gVENQU2VydmVyKCkKLSAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZXJ2ZXIuYWRkcmVzcykKKyAgICAgICAgc2VydmVyID0gQmFzZVNlcnZlcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyKQorICAgICAgICBjbGllbnQgPSBUZXN0Q2xpZW50KHNlbGYuZmFtaWx5LCBzZXJ2ZXIuYWRkcmVzcykKICAgICAgICAgc2VsZi5sb29wX3dhaXRpbmdfZm9yX2ZsYWcoY2xpZW50KQogCiAgICAgZGVmIHRlc3RfaGFuZGxlX2Nsb3NlKHNlbGYpOgpAQCAtNjE5LDggKzYyOCw0MCBAQAogICAgICAgICAgICAgICAgIEJhc2VUZXN0SGFuZGxlci5fX2luaXRfXyhzZWxmLCBjb25uKQogICAgICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQogCi0gICAgICAgIHNlcnZlciA9IFRDUFNlcnZlcihUZXN0SGFuZGxlcikKLSAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZXJ2ZXIuYWRkcmVzcykKKyAgICAgICAgc2VydmVyID0gQmFzZVNlcnZlcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyLCBUZXN0SGFuZGxlcikKKyAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZWxmLmZhbWlseSwgc2VydmVyLmFkZHJlc3MpCisgICAgICAgIHNlbGYubG9vcF93YWl0aW5nX2Zvcl9mbGFnKGNsaWVudCkKKworICAgIGRlZiB0ZXN0X2hhbmRsZV9jbG9zZV9hZnRlcl9jb25uX2Jyb2tlbihzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IEVDT05OUkVTRVQvRVBJUEUgaXMgY29ycmVjdGx5IGhhbmRsZWQgKGlzc3VlcyAjNTY2MSBhbmQKKyAgICAgICAgIyAjMTEyNjUpLgorCisgICAgICAgIGRhdGEgPSBiJ1wwJyAqIDEyOAorCisgICAgICAgIGNsYXNzIFRlc3RDbGllbnQoQmFzZUNsaWVudCk6CisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVfd3JpdGUoc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5zZW5kKGRhdGEpCisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVfY2xvc2Uoc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5mbGFnID0gVHJ1ZQorICAgICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorCisgICAgICAgICAgICBkZWYgaGFuZGxlX2V4cHQoc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5mbGFnID0gVHJ1ZQorICAgICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorCisgICAgICAgIGNsYXNzIFRlc3RIYW5kbGVyKEJhc2VUZXN0SGFuZGxlcik6CisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVfcmVhZChzZWxmKToKKyAgICAgICAgICAgICAgICBzZWxmLnJlY3YobGVuKGRhdGEpKQorICAgICAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorCisgICAgICAgICAgICBkZWYgd3JpdGFibGUoc2VsZik6CisgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisKKyAgICAgICAgc2VydmVyID0gQmFzZVNlcnZlcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyLCBUZXN0SGFuZGxlcikKKyAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZWxmLmZhbWlseSwgc2VydmVyLmFkZHJlc3MpCiAgICAgICAgIHNlbGYubG9vcF93YWl0aW5nX2Zvcl9mbGFnKGNsaWVudCkKIAogICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoInN1bm9zIiksCkBAIC02MjksOSArNjcwLDEyIEBACiAgICAgICAgICMgTWFrZSBzdXJlIGhhbmRsZV9leHB0IGlzIGNhbGxlZCBvbiBPT0IgZGF0YSByZWNlaXZlZC4KICAgICAgICAgIyBOb3RlOiB0aGlzIG1pZ2h0IGZhaWwgb24gc29tZSBwbGF0Zm9ybXMgYXMgT09CIGRhdGEgaXMKICAgICAgICAgIyB0ZW51b3VzbHkgc3VwcG9ydGVkIGFuZCByYXJlbHkgdXNlZC4KKyAgICAgICAgaWYgSEFTX1VOSVhfU09DS0VUUyBhbmQgc2VsZi5mYW1pbHkgPT0gc29ja2V0LkFGX1VOSVg6CisgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJOb3QgYXBwbGljYWJsZSB0byBBRl9VTklYIHNvY2tldHMuIikKIAogICAgICAgICBjbGFzcyBUZXN0Q2xpZW50KEJhc2VDbGllbnQpOgogICAgICAgICAgICAgZGVmIGhhbmRsZV9leHB0KHNlbGYpOgorICAgICAgICAgICAgICAgIHNlbGYuc29ja2V0LnJlY3YoMTAyNCwgc29ja2V0Lk1TR19PT0IpCiAgICAgICAgICAgICAgICAgc2VsZi5mbGFnID0gVHJ1ZQogCiAgICAgICAgIGNsYXNzIFRlc3RIYW5kbGVyKEJhc2VUZXN0SGFuZGxlcik6CkBAIC02MzksOCArNjgzLDggQEAKICAgICAgICAgICAgICAgICBCYXNlVGVzdEhhbmRsZXIuX19pbml0X18oc2VsZiwgY29ubikKICAgICAgICAgICAgICAgICBzZWxmLnNvY2tldC5zZW5kKGJ5dGVzKGNocigyNDQpLCAnbGF0aW4tMScpLCBzb2NrZXQuTVNHX09PQikKIAotICAgICAgICBzZXJ2ZXIgPSBUQ1BTZXJ2ZXIoVGVzdEhhbmRsZXIpCi0gICAgICAgIGNsaWVudCA9IFRlc3RDbGllbnQoc2VydmVyLmFkZHJlc3MpCisgICAgICAgIHNlcnZlciA9IEJhc2VTZXJ2ZXIoc2VsZi5mYW1pbHksIHNlbGYuYWRkciwgVGVzdEhhbmRsZXIpCisgICAgICAgIGNsaWVudCA9IFRlc3RDbGllbnQoc2VsZi5mYW1pbHksIHNlcnZlci5hZGRyZXNzKQogICAgICAgICBzZWxmLmxvb3Bfd2FpdGluZ19mb3JfZmxhZyhjbGllbnQpCiAKICAgICBkZWYgdGVzdF9oYW5kbGVfZXJyb3Ioc2VsZik6CkBAIC02NTcsMTMgKzcwMSwxMyBAQAogICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiZXhjZXB0aW9uIG5vdCByYWlzZWQiKQogCi0gICAgICAgIHNlcnZlciA9IFRDUFNlcnZlcigpCi0gICAgICAgIGNsaWVudCA9IFRlc3RDbGllbnQoc2VydmVyLmFkZHJlc3MpCisgICAgICAgIHNlcnZlciA9IEJhc2VTZXJ2ZXIoc2VsZi5mYW1pbHksIHNlbGYuYWRkcikKKyAgICAgICAgY2xpZW50ID0gVGVzdENsaWVudChzZWxmLmZhbWlseSwgc2VydmVyLmFkZHJlc3MpCiAgICAgICAgIHNlbGYubG9vcF93YWl0aW5nX2Zvcl9mbGFnKGNsaWVudCkKIAogICAgIGRlZiB0ZXN0X2Nvbm5lY3Rpb25fYXR0cmlidXRlcyhzZWxmKToKLSAgICAgICAgc2VydmVyID0gVENQU2VydmVyKCkKLSAgICAgICAgY2xpZW50ID0gQmFzZUNsaWVudChzZXJ2ZXIuYWRkcmVzcykKKyAgICAgICAgc2VydmVyID0gQmFzZVNlcnZlcihzZWxmLmZhbWlseSwgc2VsZi5hZGRyKQorICAgICAgICBjbGllbnQgPSBCYXNlQ2xpZW50KHNlbGYuZmFtaWx5LCBzZXJ2ZXIuYWRkcmVzcykKIAogICAgICAgICAjIHdlIHN0YXJ0IGRpc2Nvbm5lY3RlZAogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNlcnZlci5jb25uZWN0ZWQpCkBAIC02OTMsMjUgKzczNywyOSBAQAogCiAgICAgZGVmIHRlc3RfY3JlYXRlX3NvY2tldChzZWxmKToKICAgICAgICAgcyA9IGFzeW5jb3JlLmRpc3BhdGNoZXIoKQotICAgICAgICBzLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLnNvY2tldC5mYW1pbHksIHNvY2tldC5BRl9JTkVUKQorICAgICAgICBzLmNyZWF0ZV9zb2NrZXQoc2VsZi5mYW1pbHkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5zb2NrZXQuZmFtaWx5LCBzZWxmLmZhbWlseSkKICAgICAgICAgU09DS19OT05CTE9DSyA9IGdldGF0dHIoc29ja2V0LCAnU09DS19OT05CTE9DSycsIDApCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5zb2NrZXQudHlwZSwgc29ja2V0LlNPQ0tfU1RSRUFNIHwgU09DS19OT05CTE9DSykKIAogICAgIGRlZiB0ZXN0X2JpbmQoc2VsZik6CisgICAgICAgIGlmIEhBU19VTklYX1NPQ0tFVFMgYW5kIHNlbGYuZmFtaWx5ID09IHNvY2tldC5BRl9VTklYOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiTm90IGFwcGxpY2FibGUgdG8gQUZfVU5JWCBzb2NrZXRzLiIpCiAgICAgICAgIHMxID0gYXN5bmNvcmUuZGlzcGF0Y2hlcigpCi0gICAgICAgIHMxLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKLSAgICAgICAgczEuYmluZCgoSE9TVCwgMCkpCisgICAgICAgIHMxLmNyZWF0ZV9zb2NrZXQoc2VsZi5mYW1pbHkpCisgICAgICAgIHMxLmJpbmQoc2VsZi5hZGRyKQogICAgICAgICBzMS5saXN0ZW4oNSkKICAgICAgICAgcG9ydCA9IHMxLnNvY2tldC5nZXRzb2NrbmFtZSgpWzFdCiAKICAgICAgICAgczIgPSBhc3luY29yZS5kaXNwYXRjaGVyKCkKLSAgICAgICAgczIuY3JlYXRlX3NvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNKQorICAgICAgICBzMi5jcmVhdGVfc29ja2V0KHNlbGYuZmFtaWx5KQogICAgICAgICAjIEVBRERSSU5VU0UgaW5kaWNhdGVzIHRoZSBzb2NrZXQgd2FzIGNvcnJlY3RseSBib3VuZAotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHMyLmJpbmQsIChIT1NULCBwb3J0KSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yLCBzMi5iaW5kLCAoc2VsZi5hZGRyWzBdLCBwb3J0KSkKIAogICAgIGRlZiB0ZXN0X3NldF9yZXVzZV9hZGRyKHNlbGYpOgotICAgICAgICBzb2NrID0gc29ja2V0LnNvY2tldCgpCisgICAgICAgIGlmIEhBU19VTklYX1NPQ0tFVFMgYW5kIHNlbGYuZmFtaWx5ID09IHNvY2tldC5BRl9VTklYOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiTm90IGFwcGxpY2FibGUgdG8gQUZfVU5JWCBzb2NrZXRzLiIpCisgICAgICAgIHNvY2sgPSBzb2NrZXQuc29ja2V0KHNlbGYuZmFtaWx5KQogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzb2NrLnNldHNvY2tvcHQoc29ja2V0LlNPTF9TT0NLRVQsIHNvY2tldC5TT19SRVVTRUFERFIsIDEpCiAgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6CkBAIC03MTksMTEgKzc2NywxMSBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgIyBpZiBTT19SRVVTRUFERFIgc3VjY2VlZGVkIGZvciBzb2NrIHdlIGV4cGVjdCBhc3luY29yZQogICAgICAgICAgICAgIyB0byBkbyB0aGUgc2FtZQotICAgICAgICAgICAgcyA9IGFzeW5jb3JlLmRpc3BhdGNoZXIoc29ja2V0LnNvY2tldCgpKQorICAgICAgICAgICAgcyA9IGFzeW5jb3JlLmRpc3BhdGNoZXIoc29ja2V0LnNvY2tldChzZWxmLmZhbWlseSkpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHMuc29ja2V0LmdldHNvY2tvcHQoc29ja2V0LlNPTF9TT0NLRVQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LlNPX1JFVVNFQUREUikpCiAgICAgICAgICAgICBzLnNvY2tldC5jbG9zZSgpCi0gICAgICAgICAgICBzLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgICAgIHMuY3JlYXRlX3NvY2tldChzZWxmLmZhbWlseSkKICAgICAgICAgICAgIHMuc2V0X3JldXNlX2FkZHIoKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHMuc29ja2V0LmdldHNvY2tvcHQoc29ja2V0LlNPTF9TT0NLRVQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LlNPX1JFVVNFQUREUikpCkBAIC03MzEsMTggKzc3OSw1MiBAQAogICAgICAgICAgICAgc29jay5jbG9zZSgpCiAKIAotY2xhc3MgVGVzdEFQSV9Vc2VTZWxlY3QoQmFzZVRlc3RBUEkpOgorY2xhc3MgVGVzdEFQSV9Vc2VJUHY0U29ja2V0cyhCYXNlVGVzdEFQSSk6CisgICAgZmFtaWx5ID0gc29ja2V0LkFGX0lORVQKKyAgICBhZGRyID0gKEhPU1QsIDApCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKHN1cHBvcnQuSVBWNl9FTkFCTEVELCAnSVB2NiBzdXBwb3J0IHJlcXVpcmVkJykKK2NsYXNzIFRlc3RBUElfVXNlSVB2NlNvY2tldHMoQmFzZVRlc3RBUEkpOgorICAgIGZhbWlseSA9IHNvY2tldC5BRl9JTkVUNgorICAgIGFkZHIgPSAoJzo6MScsIDApCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKEhBU19VTklYX1NPQ0tFVFMsICdVbml4IHNvY2tldHMgcmVxdWlyZWQnKQorY2xhc3MgVGVzdEFQSV9Vc2VVbml4U29ja2V0cyhCYXNlVGVzdEFQSSk6CisgICAgaWYgSEFTX1VOSVhfU09DS0VUUzoKKyAgICAgICAgZmFtaWx5ID0gc29ja2V0LkFGX1VOSVgKKyAgICBhZGRyID0gc3VwcG9ydC5URVNURk4KKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgdW5saW5rKHNlbGYuYWRkcikKKyAgICAgICAgQmFzZVRlc3RBUEkudGVhckRvd24oc2VsZikKKworY2xhc3MgVGVzdEFQSV9Vc2VJUHY0U2VsZWN0KFRlc3RBUElfVXNlSVB2NFNvY2tldHMpOgogICAgIHVzZV9wb2xsID0gRmFsc2UKIAogQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzZWxlY3QsICdwb2xsJyksICdzZWxlY3QucG9sbCByZXF1aXJlZCcpCi1jbGFzcyBUZXN0QVBJX1VzZVBvbGwoQmFzZVRlc3RBUEkpOgorY2xhc3MgVGVzdEFQSV9Vc2VJUHY0UG9sbChUZXN0QVBJX1VzZUlQdjRTb2NrZXRzKToKICAgICB1c2VfcG9sbCA9IFRydWUKIAorY2xhc3MgVGVzdEFQSV9Vc2VJUHY2U2VsZWN0KFRlc3RBUElfVXNlSVB2NlNvY2tldHMpOgorICAgIHVzZV9wb2xsID0gRmFsc2UKKworQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzZWxlY3QsICdwb2xsJyksICdzZWxlY3QucG9sbCByZXF1aXJlZCcpCitjbGFzcyBUZXN0QVBJX1VzZUlQdjZQb2xsKFRlc3RBUElfVXNlSVB2NlNvY2tldHMpOgorICAgIHVzZV9wb2xsID0gVHJ1ZQorCitjbGFzcyBUZXN0QVBJX1VzZVVuaXhTb2NrZXRzU2VsZWN0KFRlc3RBUElfVXNlVW5peFNvY2tldHMpOgorICAgIHVzZV9wb2xsID0gRmFsc2UKKworQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzZWxlY3QsICdwb2xsJyksICdzZWxlY3QucG9sbCByZXF1aXJlZCcpCitjbGFzcyBUZXN0QVBJX1VzZVVuaXhTb2NrZXRzUG9sbChUZXN0QVBJX1VzZVVuaXhTb2NrZXRzKToKKyAgICB1c2VfcG9sbCA9IFRydWUKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHRlc3RzID0gW0hlbHBlckZ1bmN0aW9uVGVzdHMsIERpc3BhdGNoZXJUZXN0cywgRGlzcGF0Y2hlcldpdGhTZW5kVGVzdHMsCi0gICAgICAgICAgICAgRGlzcGF0Y2hlcldpdGhTZW5kVGVzdHNfVXNlUG9sbCwgVGVzdEFQSV9Vc2VTZWxlY3QsCi0gICAgICAgICAgICAgVGVzdEFQSV9Vc2VQb2xsLCBGaWxlV3JhcHBlclRlc3RdCisgICAgICAgICAgICBEaXNwYXRjaGVyV2l0aFNlbmRUZXN0c19Vc2VQb2xsLCBGaWxlV3JhcHBlclRlc3QsCisgICAgICAgICAgICBUZXN0QVBJX1VzZUlQdjRTZWxlY3QsIFRlc3RBUElfVXNlSVB2NFBvbGwsIFRlc3RBUElfVXNlSVB2NlNlbGVjdCwKKyAgICAgICAgICAgIFRlc3RBUElfVXNlSVB2NlBvbGwsIFRlc3RBUElfVXNlVW5peFNvY2tldHNTZWxlY3QsCisgICAgICAgICAgICBUZXN0QVBJX1VzZVVuaXhTb2NrZXRzUG9sbF0KICAgICBydW5fdW5pdHRlc3QoKnRlc3RzKQogCiBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9iaWdtZW0ucHkgYi9MaWIvdGVzdC90ZXN0X2JpZ21lbS5weQppbmRleCBmM2M2ZWJiLi4yOGU2OWEwIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2JpZ21lbS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2JpZ21lbS5weQpAQCAtMSwzICsxLDEzIEBACisiIiJCaWdtZW0gdGVzdHMgLSB0ZXN0cyBmb3IgdGhlIDMyLWJpdCBib3VuZGFyeSBpbiBjb250YWluZXJzLgorCitUaGVzZSB0ZXN0cyB0cnkgdG8gZXhlcmNpc2UgdGhlIDMyLWJpdCBib3VuZGFyeSB0aGF0IGlzIHNvbWV0aW1lcywgaWYKK3JhcmVseSwgZXhjZWVkZWQgaW4gcHJhY3RpY2UsIGJ1dCBhbG1vc3QgbmV2ZXIgdGVzdGVkLiAgVGhleSBhcmUgcmVhbGx5IG9ubHkKK21lYW5pbmdmdWwgb24gNjQtYml0IGJ1aWxkcyBvbiBtYWNoaW5lcyB3aXRoIGEgKmxvdCogb2YgbWVtb3J5LCBidXQgdGhlCit0ZXN0cyBhcmUgYWx3YXlzIHJ1biwgdXN1YWxseSB3aXRoIHZlcnkgbG93IG1lbW9yeSBsaW1pdHMgdG8gbWFrZSBzdXJlIHRoZQordGVzdHMgdGhlbXNlbHZlcyBkb24ndCBzdWZmZXIgZnJvbSBiaXRyb3QuICBUbyBydW4gdGhlbSBmb3IgcmVhbCwgcGFzcyBhCitoaWdoIG1lbW9yeSBsaW1pdCB0byByZWdydGVzdCwgd2l0aCB0aGUgLU0gb3B0aW9uLgorIiIiCisKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGJpZ21lbXRlc3QsIF8xRywgXzJHLCBfNEcKIApAQCAtNiwyMCArMTYsMzUgQEAKIGltcG9ydCBzeXMKIGltcG9ydCBmdW5jdG9vbHMKIAorIyBUaGVzZSB0ZXN0cyBhbGwgdXNlIG9uZSBvZiB0aGUgYmlnbWVtdGVzdCBkZWNvcmF0b3JzIHRvIGluZGljYXRlIGhvdyBtdWNoCisjIG1lbW9yeSB0aGV5IHVzZSBhbmQgaG93IG11Y2ggbWVtb3J5IHRoZXkgbmVlZCB0byBiZSBldmVuIG1lYW5pbmdmdWwuICBUaGUKKyMgZGVjb3JhdG9ycyB0YWtlIHR3byBhcmd1bWVudHM6IGEgJ21lbXVzZScgaW5kaWNhdG9yIGRlY2xhcmluZworIyAoYXBwcm94aW1hdGUpIGJ5dGVzIHBlciBzaXplLXVuaXQgdGhlIHRlc3Qgd2lsbCB1c2UgKGF0IHBlYWsgdXNhZ2UpLCBhbmQgYQorIyAnbWluc2l6ZScgaW5kaWNhdG9yIGRlY2xhcmluZyBhIG1pbmltdW0gKnVzZWZ1bCogc2l6ZS4gIEEgdGVzdCB0aGF0CisjIGFsbG9jYXRlcyBhIGJ5dGVzdHJpbmcgdG8gdGVzdCB2YXJpb3VzIG9wZXJhdGlvbnMgbmVhciB0aGUgZW5kIHdpbGwgaGF2ZSBhCisjIG1pbnNpemUgb2YgYXQgbGVhc3QgMkdiIChvciBpdCB3b3VsZG4ndCByZWFjaCB0aGUgMzItYml0IGxpbWl0LCBzbyB0aGUKKyMgdGVzdCB3b3VsZG4ndCBiZSB2ZXJ5IHVzZWZ1bCkgYW5kIGEgbWVtdXNlIG9mIDEgKG9uZSBieXRlIHBlciBzaXplLXVuaXQsCisjIGlmIGl0IGFsbG9jYXRlcyBvbmx5IG9uZSBiaWcgc3RyaW5nIGF0IGEgdGltZS4pCisjCisjIFdoZW4gcnVuIHdpdGggYSBtZW1vcnkgbGltaXQgc2V0LCBib3RoIGRlY29yYXRvcnMgc2tpcCB0ZXN0cyB0aGF0IG5lZWQKKyMgbW9yZSBtZW1vcnkgdGhhbiBhdmFpbGFibGUgdG8gYmUgbWVhbmluZ2Z1bC4gIFRoZSBwcmVjaXNpb25iaWdtZW10ZXN0IHdpbGwKKyMgYWx3YXlzIHBhc3MgbWluc2l6ZSBhcyBzaXplLCBldmVuIGlmIHRoZXJlIGlzIG11Y2ggbW9yZSBtZW1vcnkgYXZhaWxhYmxlLgorIyBUaGUgYmlnbWVtdGVzdCBkZWNvcmF0b3Igd2lsbCBzY2FsZSBzaXplIHVwd2FyZCB0byBmaWxsIGF2YWlsYWJsZSBtZW1vcnkuCisjCiAjIEJpZ21lbSB0ZXN0aW5nIGhvdXNlcnVsZXM6CiAjCiAjICAtIFRyeSBub3QgdG8gYWxsb2NhdGUgdG9vIG1hbnkgbGFyZ2Ugb2JqZWN0cy4gSXQncyBva2F5IHRvIHJlbHkgb24KLSMgICAgcmVmY291bnRpbmcgc2VtYW50aWNzLCBidXQgZG9uJ3QgZm9yZ2V0IHRoYXQgJ3MgPSBjcmVhdGVfbGFyZ2VzdHJpbmcoKScKKyMgICAgcmVmY291bnRpbmcgc2VtYW50aWNzLCBhbmQgZG9uJ3QgZm9yZ2V0IHRoYXQgJ3MgPSBjcmVhdGVfbGFyZ2VzdHJpbmcoKScKICMgICAgZG9lc24ndCByZWxlYXNlIHRoZSBvbGQgJ3MnIChpZiBpdCBleGlzdHMpIHVudGlsIHdlbGwgYWZ0ZXIgaXRzIG5ldwogIyAgICB2YWx1ZSBoYXMgYmVlbiBjcmVhdGVkLiBVc2UgJ2RlbCBzJyBiZWZvcmUgdGhlIGNyZWF0ZV9sYXJnZXN0cmluZyBjYWxsLgogIwotIyAgLSBEbyAqbm90KiBjb21wYXJlIGxhcmdlIG9iamVjdHMgdXNpbmcgYXNzZXJ0RXF1YWwgb3Igc2ltaWxhci4gSXQncyBhCi0jICAgIGxlbmd0aHkgb3BlcmF0aW9uIGFuZCB0aGUgZXJyb3JtZXNzYWdlIHdpbGwgYmUgdXR0ZXJseSB1c2VsZXNzIGR1ZSB0bwotIyAgICBpdHMgc2l6ZS4gVG8gbWFrZSBzdXJlIHdoZXRoZXIgYSByZXN1bHQgaGFzIHRoZSByaWdodCBjb250ZW50cywgYmV0dGVyCi0jICAgIHRvIHVzZSB0aGUgc3RyaXAgb3IgY291bnQgbWV0aG9kcywgb3IgY29tcGFyZSBtZWFuaW5nZnVsIHNsaWNlcy4KKyMgIC0gRG8gKm5vdCogY29tcGFyZSBsYXJnZSBvYmplY3RzIHVzaW5nIGFzc2VydEVxdWFsLCBhc3NlcnRJbiBvciBzaW1pbGFyLgorIyAgICBJdCdzIGEgbGVuZ3RoeSBvcGVyYXRpb24gYW5kIHRoZSBlcnJvcm1lc3NhZ2Ugd2lsbCBiZSB1dHRlcmx5IHVzZWxlc3MKKyMgICAgZHVlIHRvIGl0cyBzaXplLiAgVG8gbWFrZSBzdXJlIHdoZXRoZXIgYSByZXN1bHQgaGFzIHRoZSByaWdodCBjb250ZW50cywKKyMgICAgYmV0dGVyIHRvIHVzZSB0aGUgc3RyaXAgb3IgY291bnQgbWV0aG9kcywgb3IgY29tcGFyZSBtZWFuaW5nZnVsIHNsaWNlcy4KICMKICMgIC0gRG9uJ3QgZm9yZ2V0IHRvIHRlc3QgZm9yIGxhcmdlIGluZGljZXMsIG9mZnNldHMgYW5kIHJlc3VsdHMgYW5kIHN1Y2gsCi0jICAgIGluIGFkZGl0aW9uIHRvIGxhcmdlIHNpemVzLgorIyAgICBpbiBhZGRpdGlvbiB0byBsYXJnZSBzaXplcy4gQW55dGhpbmcgdGhhdCBwcm9iZXMgdGhlIDMyLWJpdCBib3VuZGFyeS4KICMKICMgIC0gV2hlbiByZXBlYXRpbmcgYW4gb2JqZWN0IChzYXksIGEgc3Vic3RyaW5nLCBvciBhIHNtYWxsIGxpc3QpIHRvIGNyZWF0ZQogIyAgICBhIGxhcmdlIG9iamVjdCwgbWFrZSB0aGUgc3Vib2JqZWN0IG9mIGEgbGVuZ3RoIHRoYXQgaXMgbm90IGEgcG93ZXIgb2YKQEAgLTM3LDcgKzYyLDkgQEAKICMgZmFpbCBhcyB3ZWxsLiBJIGRvIG5vdCBrbm93IHdoZXRoZXIgaXQgaXMgZHVlIHRvIG1lbW9yeSBmcmFnbWVudGF0aW9uCiAjIGlzc3Vlcywgb3Igb3RoZXIgc3BlY2lmaWNzIG9mIHRoZSBwbGF0Zm9ybSBtYWxsb2MoKSByb3V0aW5lLgogCi1jaGFyYWN0ZXJfc2l6ZSA9IDQgaWYgc3lzLm1heHVuaWNvZGUgPiAweEZGRkYgZWxzZSAyCithc2NpaV9jaGFyX3NpemUgPSAxCit1Y3MyX2NoYXJfc2l6ZSA9IDIKK3VjczRfY2hhcl9zaXplID0gNAogCiAKIGNsYXNzIEJhc2VTdHJUZXN0OgpAQCAtOTIsNyArMTE5LDcgQEAKICAgICAgICAgXyA9IHNlbGYuZnJvbV9sYXRpbjEKICAgICAgICAgcyA9IF8oJy0nKSAqIHNpemUKICAgICAgICAgdGFic2l6ZSA9IDgKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmV4cGFuZHRhYnMoKSwgcykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHMuZXhwYW5kdGFicygpID09IHMpCiAgICAgICAgIGRlbCBzCiAgICAgICAgIHNsZW4sIHJlbWFpbmRlciA9IGRpdm1vZChzaXplLCB0YWJzaXplKQogICAgICAgICBzID0gXygnICAgICAgIFx0JykgKiBzbGVuCkBAIC0zNDcsNyArMzc0LDcgQEAKICAgICAjIHN1ZmZlciBmb3IgdGhlIGxpc3Qgc2l6ZS4gKE90aGVyd2lzZSwgaXQnZCBjb3N0IGFub3RoZXIgNDggdGltZXMKICAgICAjIHNpemUgaW4gYnl0ZXMhKSBOZXZlcnRoZWxlc3MsIGEgbGlzdCBvZiBzaXplIHRha2VzCiAgICAgIyA4KnNpemUgYnl0ZXMuCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgKyA1LCBtZW11c2U9MTApCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgKyA1LCBtZW11c2U9MiAqIGFzY2lpX2NoYXJfc2l6ZSArIDgpCiAgICAgZGVmIHRlc3Rfc3BsaXRfbGFyZ2Uoc2VsZiwgc2l6ZSk6CiAgICAgICAgIF8gPSBzZWxmLmZyb21fbGF0aW4xCiAgICAgICAgIHMgPSBfKCcgYScpICogc2l6ZSArIF8oJyAnKQpAQCAtMzY2LDkgKzM5Myw5IEBACiAgICAgICAgICMgdGFrZSB1cCBhbiBpbm9yZGluYXRlIGFtb3VudCBvZiBtZW1vcnkKICAgICAgICAgY2h1bmtzaXplID0gaW50KHNpemUgKiogMC41ICsgMikgLy8gMgogICAgICAgICBTVUJTVFIgPSBfKCcgJykgKiBjaHVua3NpemUgKyBfKCdcbicpICsgXygnICcpICogY2h1bmtzaXplICsgXygnXHJcbicpCi0gICAgICAgIHMgPSBTVUJTVFIgKiBjaHVua3NpemUKKyAgICAgICAgcyA9IFNVQlNUUiAqIChjaHVua3NpemUgKiAyKQogICAgICAgICBsID0gcy5zcGxpdGxpbmVzKCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obCksIGNodW5rc2l6ZSAqIDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGwpLCBjaHVua3NpemUgKiA0KQogICAgICAgICBleHBlY3RlZCA9IF8oJyAnKSAqIGNodW5rc2l6ZQogICAgICAgICBmb3IgaXRlbSBpbiBsOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpdGVtLCBleHBlY3RlZCkKQEAgLTQxOSwxNCArNDQ2LDcgQEAKICAgICBkZWYgdGVzdF90cmFuc2xhdGUoc2VsZiwgc2l6ZSk6CiAgICAgICAgIF8gPSBzZWxmLmZyb21fbGF0aW4xCiAgICAgICAgIFNVQlNUUiA9IF8oJ2Faei56LkFhei4nKQotICAgICAgICBpZiBpc2luc3RhbmNlKFNVQlNUUiwgc3RyKToKLSAgICAgICAgICAgIHRyYW5zID0gewotICAgICAgICAgICAgICAgIG9yZChfKCcuJykpOiBfKCctJyksCi0gICAgICAgICAgICAgICAgb3JkKF8oJ2EnKSk6IF8oJyEnKSwKLSAgICAgICAgICAgICAgICBvcmQoXygnWicpKTogXygnJCcpLAotICAgICAgICAgICAgfQotICAgICAgICBlbHNlOgotICAgICAgICAgICAgdHJhbnMgPSBieXRlcy5tYWtldHJhbnMoYicuYVonLCBiJy0hJCcpCisgICAgICAgIHRyYW5zID0gYnl0ZXMubWFrZXRyYW5zKGInLmFaJywgYictISQnKQogICAgICAgICBzdWJsZW4gPSBsZW4oU1VCU1RSKQogICAgICAgICByZXBlYXRzID0gc2l6ZSAvLyBzdWJsZW4gKyAyCiAgICAgICAgIHMgPSBTVUJTVFIgKiByZXBlYXRzCkBAIC01MTksMTkgKzUzOSwxOSBAQAogICAgICAgICBlZGdlID0gXygnLScpICogKHNpemUgLy8gMikKICAgICAgICAgcyA9IF8oJycpLmpvaW4oW2VkZ2UsIFNVQlNUUiwgZWRnZV0pCiAgICAgICAgIGRlbCBlZGdlCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oU1VCU1RSLCBzKQotICAgICAgICBzZWxmLmFzc2VydE5vdEluKFNVQlNUUiAqIDIsIHMpCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oXygnLScpLCBzKQotICAgICAgICBzZWxmLmFzc2VydE5vdEluKF8oJ2EnKSwgcykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFNVQlNUUiBpbiBzKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKFNVQlNUUiAqIDIgaW4gcykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKF8oJy0nKSBpbiBzKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKF8oJ2EnKSBpbiBzKQogICAgICAgICBzICs9IF8oJ2EnKQotICAgICAgICBzZWxmLmFzc2VydEluKF8oJ2EnKSwgcykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKF8oJ2EnKSBpbiBzKQogCiAgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgKyAxMCwgbWVtdXNlPTIpCiAgICAgZGVmIHRlc3RfY29tcGFyZShzZWxmLCBzaXplKToKICAgICAgICAgXyA9IHNlbGYuZnJvbV9sYXRpbjEKICAgICAgICAgczEgPSBfKCctJykgKiBzaXplCiAgICAgICAgIHMyID0gXygnLScpICogc2l6ZQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMxLCBzMikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHMxID09IHMyKQogICAgICAgICBkZWwgczIKICAgICAgICAgczIgPSBzMSArIF8oJ2EnKQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHMxID09IHMyKQpAQCAtNTUyLDcgKzU3Miw3IEBACiAgICAgICAgIGgxID0gaGFzaChzKQogICAgICAgICBkZWwgcwogICAgICAgICBzID0gXygnXHgwMCcpICogKHNpemUgKyAxKQotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGgxID09IGhhc2gocykpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoaDEsIGhhc2gocykpCiAKIAogY2xhc3MgU3RyVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSwgQmFzZVN0clRlc3QpOgpAQCAtNTYzLDcgKzU4Myw2IEBACiAgICAgZGVmIGJhc2ljX2VuY29kZV90ZXN0KHNlbGYsIHNpemUsIGVuYywgYz0nLicsIGV4cGVjdGVkc2l6ZT1Ob25lKToKICAgICAgICAgaWYgZXhwZWN0ZWRzaXplIGlzIE5vbmU6CiAgICAgICAgICAgICBleHBlY3RlZHNpemUgPSBzaXplCi0KICAgICAgICAgdHJ5OgogICAgICAgICAgICAgcyA9IGMgKiBzaXplCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzLmVuY29kZShlbmMpKSwgZXhwZWN0ZWRzaXplKQpAQCAtNTgyLDQ4ICs2MDEsNTIgQEAKICAgICAgICAgICAgICAgICBtZW11c2UgPSBtZXRoLm1lbXVzZQogICAgICAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgogICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICBtZXRoLm1lbXVzZSA9IGNoYXJhY3Rlcl9zaXplICogbWVtdXNlCisgICAgICAgICAgICBtZXRoLm1lbXVzZSA9IGFzY2lpX2NoYXJfc2l6ZSAqIG1lbXVzZQogICAgICAgICAgICAgc2VsZi5fYWRqdXN0ZWRbbmFtZV0gPSBtZW11c2UKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKICAgICAgICAgZm9yIG5hbWUsIG1lbXVzZSBpbiBzZWxmLl9hZGp1c3RlZC5pdGVtcygpOgogICAgICAgICAgICAgZ2V0YXR0cih0eXBlKHNlbGYpLCBuYW1lKS5tZW11c2UgPSBtZW11c2UKIAotICAgICMgdGhlIHV0ZjggZW5jb2RlciBwcmVhbGxvY2F0ZXMgYmlnIHRpbWUgKDR4IHRoZSBudW1iZXIgb2YgY2hhcmFjdGVycykKLSAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDIsIG1lbXVzZT1jaGFyYWN0ZXJfc2l6ZSArIDQpCisgICAgIyBNYW55IGNvZGVjcyBjb252ZXJ0IHRvIHRoZSBsZWdhY3kgcmVwcmVzZW50YXRpb24gZmlyc3QsIGV4cGxhaW5pbmcKKyAgICAjIHdoeSB3ZSBhZGQgJ3VjczRfY2hhcl9zaXplJyB0byB0aGUgJ21lbXVzZScgYmVsb3cuCisKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDIsIG1lbXVzZT1hc2NpaV9jaGFyX3NpemUgKyAxKQogICAgIGRlZiB0ZXN0X2VuY29kZShzZWxmLCBzaXplKToKICAgICAgICAgcmV0dXJuIHNlbGYuYmFzaWNfZW5jb2RlX3Rlc3Qoc2l6ZSwgJ3V0Zi04JykKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzRHIC8vIDYgKyAyLCBtZW11c2U9Y2hhcmFjdGVyX3NpemUgKyAxKQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzRHIC8vIDYgKyAyLCBtZW11c2U9YXNjaWlfY2hhcl9zaXplICsgdWNzNF9jaGFyX3NpemUgKyAxKQogICAgIGRlZiB0ZXN0X2VuY29kZV9yYXdfdW5pY29kZV9lc2NhcGUoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX2VuY29kZV90ZXN0KHNpemUsICdyYXdfdW5pY29kZV9lc2NhcGUnKQogICAgICAgICBleGNlcHQgTWVtb3J5RXJyb3I6CiAgICAgICAgICAgICBwYXNzICMgYWNjZXB0YWJsZSBvbiAzMi1iaXQKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzRHIC8vIDUgKyA3MCwgbWVtdXNlPWNoYXJhY3Rlcl9zaXplICsgMSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV80RyAvLyA1ICsgNzAsIG1lbXVzZT1hc2NpaV9jaGFyX3NpemUgKyB1Y3M0X2NoYXJfc2l6ZSArIDEpCiAgICAgZGVmIHRlc3RfZW5jb2RlX3V0Zjcoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX2VuY29kZV90ZXN0KHNpemUsICd1dGY3JykKICAgICAgICAgZXhjZXB0IE1lbW9yeUVycm9yOgogICAgICAgICAgICAgcGFzcyAjIGFjY2VwdGFibGUgb24gMzItYml0CiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV80RyAvLyA0ICsgNSwgbWVtdXNlPWNoYXJhY3Rlcl9zaXplICsgNCkKKyAgICBAYmlnbWVtdGVzdChzaXplPV80RyAvLyA0ICsgNSwgbWVtdXNlPWFzY2lpX2NoYXJfc2l6ZSArIHVjczRfY2hhcl9zaXplICsgNCkKICAgICBkZWYgdGVzdF9lbmNvZGVfdXRmMzIoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX2VuY29kZV90ZXN0KHNpemUsICd1dGYzMicsIGV4cGVjdGVkc2l6ZT00KnNpemUrNCkKKyAgICAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX2VuY29kZV90ZXN0KHNpemUsICd1dGYzMicsIGV4cGVjdGVkc2l6ZT00ICogc2l6ZSArIDQpCiAgICAgICAgIGV4Y2VwdCBNZW1vcnlFcnJvcjoKICAgICAgICAgICAgIHBhc3MgIyBhY2NlcHRhYmxlIG9uIDMyLWJpdAogCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgLSAxLCBtZW11c2U9Y2hhcmFjdGVyX3NpemUgKyAxKQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHIC0gMSwgbWVtdXNlPWFzY2lpX2NoYXJfc2l6ZSArIDEpCiAgICAgZGVmIHRlc3RfZW5jb2RlX2FzY2lpKHNlbGYsIHNpemUpOgogICAgICAgICByZXR1cm4gc2VsZi5iYXNpY19lbmNvZGVfdGVzdChzaXplLCAnYXNjaWknLCBjPSdBJykKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT1jaGFyYWN0ZXJfc2l6ZSAqIDIpCisgICAgIyBzdHIgJSAoLi4uKSB1c2VzIGEgUHlfVUNTNCBpbnRlcm1lZGlhdGUgcmVwcmVzZW50YXRpb24KKworICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT1hc2NpaV9jaGFyX3NpemUgKiAyICsgdWNzNF9jaGFyX3NpemUpCiAgICAgZGVmIHRlc3RfZm9ybWF0KHNlbGYsIHNpemUpOgogICAgICAgICBzID0gJy0nICogc2l6ZQogICAgICAgICBzZiA9ICclcycgJSAocywpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocywgc2YpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzID09IHNmKQogICAgICAgICBkZWwgc2YKICAgICAgICAgc2YgPSAnLi4lcy4uJyAlIChzLCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2YpLCBsZW4ocykgKyA0KQpAQCAtNjQwLDcgKzY2Myw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5jb3VudCgnLicpLCAzKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoJy0nKSwgc2l6ZSAqIDIpCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDEwLCBtZW11c2U9Y2hhcmFjdGVyX3NpemUgKiAyKQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT1hc2NpaV9jaGFyX3NpemUgKiAyKQogICAgIGRlZiB0ZXN0X3JlcHJfc21hbGwoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHMgPSAnLScgKiBzaXplCiAgICAgICAgIHMgPSByZXByKHMpCkBAIC02NjEsNyArNjg0LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmNvdW50KCdcXCcpLCBzaXplKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoJzAnKSwgc2l6ZSAqIDIpCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDEwLCBtZW11c2U9Y2hhcmFjdGVyX3NpemUgKiA1KQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT1hc2NpaV9jaGFyX3NpemUgKiA1KQogICAgIGRlZiB0ZXN0X3JlcHJfbGFyZ2Uoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHMgPSAnXHgwMCcgKiBzaXplCiAgICAgICAgIHMgPSByZXByKHMpCkBAIC02NzEsNyArNjk0LDEzIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5jb3VudCgnXFwnKSwgc2l6ZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmNvdW50KCcwJyksIHNpemUgKiAyKQogCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgLy8gNSArIDEsIG1lbXVzZT1jaGFyYWN0ZXJfc2l6ZSAqIDcpCisgICAgIyBhc2NpaSgpIGNhbGxzIGVuY29kZSgnYXNjaWknLCAnYmFja3NsYXNocmVwbGFjZScpLCB3aGljaCBpdHNlbGYKKyAgICAjIGNyZWF0ZXMgYSB0ZW1wb3JhcnkgUHlfVU5JQ09ERSByZXByZXNlbnRhdGlvbiBpbiBhZGRpdGlvbiB0byB0aGUKKyAgICAjIG9yaWdpbmFsIChQeV9VQ1MyKSBvbmUKKyAgICAjIFRoZXJlJ3MgYWxzbyBzb21lIG92ZXJhbGxvY2F0aW9uIHdoZW4gcmVzaXppbmcgdGhlIGFzY2lpKCkgcmVzdWx0CisgICAgIyB0aGF0IGlzbid0IHRha2VuIGludG8gYWNjb3VudCBoZXJlLgorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHIC8vIDUgKyAxLCBtZW11c2U9dWNzMl9jaGFyX3NpemUgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWNzNF9jaGFyX3NpemUgKyBhc2NpaV9jaGFyX3NpemUgKiA2KQogICAgIGRlZiB0ZXN0X3VuaWNvZGVfcmVwcihzZWxmLCBzaXplKToKICAgICAgICAgIyBVc2UgYW4gYXNzaWduZWQsIGJ1dCBub3QgcHJpbnRhYmxlIGNvZGUgcG9pbnQuCiAgICAgICAgICMgSXQgaXMgaW4gdGhlIHJhbmdlIG9mIHRoZSBsb3cgc3Vycm9nYXRlcyBcdURDMDAtXHVERkZGLgpAQCAtNjg2LDkgKzcxNSw3IEBACiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICByID0gcyA9IE5vbmUKIAotICAgICMgVGhlIGNoYXJhY3RlciB0YWtlcyA0IGJ5dGVzIGV2ZW4gaW4gVUNTLTIgYnVpbGRzIGJlY2F1c2UgaXQgd2lsbAotICAgICMgYmUgZGVjb21wb3NlZCBpbnRvIHN1cnJvZ2F0ZXMuCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgLy8gNSArIDEsIG1lbXVzZT00ICsgY2hhcmFjdGVyX3NpemUgKiA5KQorICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHIC8vIDUgKyAxLCBtZW11c2U9dWNzNF9jaGFyX3NpemUgKiAyICsgYXNjaWlfY2hhcl9zaXplICogMTApCiAgICAgZGVmIHRlc3RfdW5pY29kZV9yZXByX3dpZGUoc2VsZiwgc2l6ZSk6CiAgICAgICAgIGNoYXIgPSAiXFUwMDAxRENCQSIKICAgICAgICAgcyA9IGNoYXIgKiBzaXplCkBAIC03MDEsMjQgKzcyOCwzNyBAQAogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgciA9IHMgPSBOb25lCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV80RyAvLyA1LCBtZW11c2U9Y2hhcmFjdGVyX3NpemUgKiAoNiArIDEpKQotICAgIGRlZiBfdGVzdF91bmljb2RlX3JlcHJfb3ZlcmZsb3coc2VsZiwgc2l6ZSk6Ci0gICAgICAgICMgWFhYIG5vdCBzdXJlIHdoYXQgdGhpcyB0ZXN0IGlzIGFib3V0Ci0gICAgICAgIGNoYXIgPSAiXHVEQ0JBIgotICAgICAgICBzID0gY2hhciAqIHNpemUKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgciA9IHJlcHIocykKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzID09IGV2YWwocikpCi0gICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICByID0gcyA9IE5vbmUKKyAgICAjIFRoZSBvcmlnaW5hbCB0ZXN0X3RyYW5zbGF0ZSBpcyBvdmVycmlkZW4gaGVyZSwgc28gYXMgdG8gZ2V0IHRoZQorICAgICMgY29ycmVjdCBzaXplIGVzdGltYXRlOiBzdHIudHJhbnNsYXRlKCkgdXNlcyBhbiBpbnRlcm1lZGlhdGUgUHlfVUNTNAorICAgICMgcmVwcmVzZW50YXRpb24uCisKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRywgbWVtdXNlPWFzY2lpX2NoYXJfc2l6ZSAqIDIgKyB1Y3M0X2NoYXJfc2l6ZSkKKyAgICBkZWYgdGVzdF90cmFuc2xhdGUoc2VsZiwgc2l6ZSk6CisgICAgICAgIF8gPSBzZWxmLmZyb21fbGF0aW4xCisgICAgICAgIFNVQlNUUiA9IF8oJ2Faei56LkFhei4nKQorICAgICAgICB0cmFucyA9IHsKKyAgICAgICAgICAgIG9yZChfKCcuJykpOiBfKCctJyksCisgICAgICAgICAgICBvcmQoXygnYScpKTogXygnIScpLAorICAgICAgICAgICAgb3JkKF8oJ1onKSk6IF8oJyQnKSwKKyAgICAgICAgfQorICAgICAgICBzdWJsZW4gPSBsZW4oU1VCU1RSKQorICAgICAgICByZXBlYXRzID0gc2l6ZSAvLyBzdWJsZW4gKyAyCisgICAgICAgIHMgPSBTVUJTVFIgKiByZXBlYXRzCisgICAgICAgIHMgPSBzLnRyYW5zbGF0ZSh0cmFucykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4ocyksIHJlcGVhdHMgKiBzdWJsZW4pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc1s6c3VibGVuXSwgU1VCU1RSLnRyYW5zbGF0ZSh0cmFucykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc1stc3VibGVuOl0sIFNVQlNUUi50cmFuc2xhdGUodHJhbnMpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoXygnLicpKSwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmNvdW50KF8oJyEnKSksIHJlcGVhdHMgKiAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoXygneicpKSwgcmVwZWF0cyAqIDMpCiAKIAogY2xhc3MgQnl0ZXNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlLCBCYXNlU3RyVGVzdCk6CiAKICAgICBkZWYgZnJvbV9sYXRpbjEoc2VsZiwgcyk6Ci0gICAgICAgIHJldHVybiBzLmVuY29kZSgibGF0aW4xIikKKyAgICAgICAgcmV0dXJuIHMuZW5jb2RlKCJsYXRpbi0xIikKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMiwgbWVtdXNlPTEgKyBjaGFyYWN0ZXJfc2l6ZSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDIsIG1lbXVzZT0xICsgYXNjaWlfY2hhcl9zaXplKQogICAgIGRlZiB0ZXN0X2RlY29kZShzZWxmLCBzaXplKToKICAgICAgICAgcyA9IHNlbGYuZnJvbV9sYXRpbjEoJy4nKSAqIHNpemUKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4ocy5kZWNvZGUoJ3V0Zi04JykpLCBzaXplKQpAQCAtNzI3LDkgKzc2Nyw5IEBACiBjbGFzcyBCeXRlYXJyYXlUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlLCBCYXNlU3RyVGVzdCk6CiAKICAgICBkZWYgZnJvbV9sYXRpbjEoc2VsZiwgcyk6Ci0gICAgICAgIHJldHVybiBieXRlYXJyYXkocy5lbmNvZGUoImxhdGluMSIpKQorICAgICAgICByZXR1cm4gYnl0ZWFycmF5KHMuZW5jb2RlKCJsYXRpbi0xIikpCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDIsIG1lbXVzZT0xICsgY2hhcmFjdGVyX3NpemUpCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgKyAyLCBtZW11c2U9MSArIGFzY2lpX2NoYXJfc2l6ZSkKICAgICBkZWYgdGVzdF9kZWNvZGUoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHMgPSBzZWxmLmZyb21fbGF0aW4xKCcuJykgKiBzaXplCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHMuZGVjb2RlKCd1dGYtOCcpKSwgc2l6ZSkKQEAgLTc1Miw3ICs3OTIsNyBAQAogICAgIGRlZiB0ZXN0X2NvbXBhcmUoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHQxID0gKCcnLCkgKiBzaXplCiAgICAgICAgIHQyID0gKCcnLCkgKiBzaXplCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodDEsIHQyKQorICAgICAgICBzZWxmLmFzc2VydFRydWUodDEgPT0gdDIpCiAgICAgICAgIGRlbCB0MgogICAgICAgICB0MiA9ICgnJywpICogKHNpemUgKyAxKQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHQxID09IHQyKQpAQCAtNzgzLDkgKzgyMyw5IEBACiAgICAgZGVmIHRlc3RfY29udGFpbnMoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHQgPSAoMSwgMiwgMywgNCwgNSkgKiBzaXplCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHQpLCBzaXplICogNSkKLSAgICAgICAgc2VsZi5hc3NlcnRJbig1LCB0KQotICAgICAgICBzZWxmLmFzc2VydE5vdEluKCgxLCAyLCAzLCA0LCA1KSwgdCkKLSAgICAgICAgc2VsZi5hc3NlcnROb3RJbigwLCB0KQorICAgICAgICBzZWxmLmFzc2VydFRydWUoNSBpbiB0KQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKCgxLCAyLCAzLCA0LCA1KSBpbiB0KQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKDAgaW4gdCkKIAogICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT04KQogICAgIGRlZiB0ZXN0X2hhc2goc2VsZiwgc2l6ZSk6CkBAIC04NjksMTEgKzkwOSwxMSBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNbLTU6XSwgJzAsIDApJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmNvdW50KCcwJyksIHNpemUpCiAKLSAgICBAYmlnbWVtdGVzdChzaXplPV8yRyAvLyAzICsgMiwgbWVtdXNlPTggKyAzICogY2hhcmFjdGVyX3NpemUpCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgLy8gMyArIDIsIG1lbXVzZT04ICsgMyAqIGFzY2lpX2NoYXJfc2l6ZSkKICAgICBkZWYgdGVzdF9yZXByX3NtYWxsKHNlbGYsIHNpemUpOgogICAgICAgICByZXR1cm4gc2VsZi5iYXNpY190ZXN0X3JlcHIoc2l6ZSkKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMiwgbWVtdXNlPTggKyAzICogY2hhcmFjdGVyX3NpemUpCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgKyAyLCBtZW11c2U9OCArIDMgKiBhc2NpaV9jaGFyX3NpemUpCiAgICAgZGVmIHRlc3RfcmVwcl9sYXJnZShzZWxmLCBzaXplKToKICAgICAgICAgcmV0dXJuIHNlbGYuYmFzaWNfdGVzdF9yZXByKHNpemUpCiAKQEAgLTg4OCw3ICs5MjgsNyBAQAogICAgIGRlZiB0ZXN0X2NvbXBhcmUoc2VsZiwgc2l6ZSk6CiAgICAgICAgIGwxID0gWycnXSAqIHNpemUKICAgICAgICAgbDIgPSBbJyddICogc2l6ZQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGwxLCBsMikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGwxID09IGwyKQogICAgICAgICBkZWwgbDIKICAgICAgICAgbDIgPSBbJyddICogKHNpemUgKyAxKQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGwxID09IGwyKQpAQCAtOTM0LDkgKzk3NCw5IEBACiAgICAgZGVmIHRlc3RfY29udGFpbnMoc2VsZiwgc2l6ZSk6CiAgICAgICAgIGwgPSBbMSwgMiwgMywgNCwgNV0gKiBzaXplCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGwpLCBzaXplICogNSkKLSAgICAgICAgc2VsZi5hc3NlcnRJbig1LCBsKQotICAgICAgICBzZWxmLmFzc2VydE5vdEluKFsxLCAyLCAzLCA0LCA1XSwgbCkKLSAgICAgICAgc2VsZi5hc3NlcnROb3RJbigwLCBsKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoNSBpbiBsKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKFsxLCAyLCAzLCA0LCA1XSBpbiBsKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKDAgaW4gbCkKIAogICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHICsgMTAsIG1lbXVzZT04KQogICAgIGRlZiB0ZXN0X2hhc2goc2VsZiwgc2l6ZSk6CkBAIC0xMDQ0LDExICsxMDg0LDExIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc1stNTpdLCAnMCwgMF0nKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoJzAnKSwgc2l6ZSkKIAotICAgIEBiaWdtZW10ZXN0KHNpemU9XzJHIC8vIDMgKyAyLCBtZW11c2U9OCArIDMgKiBjaGFyYWN0ZXJfc2l6ZSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRyAvLyAzICsgMiwgbWVtdXNlPTggKyAzICogYXNjaWlfY2hhcl9zaXplKQogICAgIGRlZiB0ZXN0X3JlcHJfc21hbGwoc2VsZiwgc2l6ZSk6CiAgICAgICAgIHJldHVybiBzZWxmLmJhc2ljX3Rlc3RfcmVwcihzaXplKQogCi0gICAgQGJpZ21lbXRlc3Qoc2l6ZT1fMkcgKyAyLCBtZW11c2U9OCArIDMgKiBjaGFyYWN0ZXJfc2l6ZSkKKyAgICBAYmlnbWVtdGVzdChzaXplPV8yRyArIDIsIG1lbXVzZT04ICsgMyAqIGFzY2lpX2NoYXJfc2l6ZSkKICAgICBkZWYgdGVzdF9yZXByX2xhcmdlKHNlbGYsIHNpemUpOgogICAgICAgICByZXR1cm4gc2VsZi5iYXNpY190ZXN0X3JlcHIoc2l6ZSkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9iaW5hc2NpaS5weSBiL0xpYi90ZXN0L3Rlc3RfYmluYXNjaWkucHkKaW5kZXggMWU5ZTg4OC4uMDRkOGY5ZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9iaW5hc2NpaS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2JpbmFzY2lpLnB5CkBAIC0yMDgsOSArMjA4LDkgQEAKICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZXJyOgogICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgie30oeyFyfSkgcmFpc2VzIHshcn0iLmZvcm1hdChmdW5jLCBlbXB0eSwgZXJyKSkKIAotICAgIGRlZiB0ZXN0X3VuaWNvZGVfc3RyaW5ncyhzZWxmKToKLSAgICAgICAgIyBVbmljb2RlIHN0cmluZ3MgYXJlIG5vdCBhY2NlcHRlZC4KLSAgICAgICAgZm9yIGZ1bmMgaW4gYWxsX2Z1bmN0aW9uczoKKyAgICBkZWYgdGVzdF91bmljb2RlX2IyYShzZWxmKToKKyAgICAgICAgIyBVbmljb2RlIHN0cmluZ3MgYXJlIG5vdCBhY2NlcHRlZCBieSBiMmFfKiBmdW5jdGlvbnMuCisgICAgICAgIGZvciBmdW5jIGluIHNldChhbGxfZnVuY3Rpb25zKSAtIHNldChhMmJfZnVuY3Rpb25zKSB8IHsncmxlZGVjb2RlX2hxeCd9OgogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZ2V0YXR0cihiaW5hc2NpaSwgZnVuYyksICJ0ZXN0IikKICAgICAgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZXJyOgpAQCAtMjE4LDYgKzIxOCwzNCBAQAogICAgICAgICAjIGNyY19ocXggbmVlZHMgMiBhcmd1bWVudHMKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiaW5hc2NpaS5jcmNfaHF4LCAidGVzdCIsIDApCiAKKyAgICBkZWYgdGVzdF91bmljb2RlX2EyYihzZWxmKToKKyAgICAgICAgIyBVbmljb2RlIHN0cmluZ3MgYXJlIGFjY2VwdGVkIGJ5IGEyYl8qIGZ1bmN0aW9ucy4KKyAgICAgICAgTUFYX0FMTCA9IDQ1CisgICAgICAgIHJhdyA9IHNlbGYucmF3ZGF0YVs6TUFYX0FMTF0KKyAgICAgICAgZm9yIGZhLCBmYiBpbiB6aXAoYTJiX2Z1bmN0aW9ucywgYjJhX2Z1bmN0aW9ucyk6CisgICAgICAgICAgICBpZiBmYSA9PSAncmxlZGVjb2RlX2hxeCc6CisgICAgICAgICAgICAgICAgIyBUYWtlcyBub24tQVNDSUkgZGF0YQorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBhMmIgPSBnZXRhdHRyKGJpbmFzY2lpLCBmYSkKKyAgICAgICAgICAgIGIyYSA9IGdldGF0dHIoYmluYXNjaWksIGZiKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGEgPSBiMmEoc2VsZi50eXBlMnRlc3QocmF3KSkKKyAgICAgICAgICAgICAgICBiaW5hcnlfcmVzID0gYTJiKGEpCisgICAgICAgICAgICAgICAgYSA9IGEuZGVjb2RlKCdhc2NpaScpCisgICAgICAgICAgICAgICAgcmVzID0gYTJiKGEpCisgICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGVycjoKKyAgICAgICAgICAgICAgICBzZWxmLmZhaWwoInt9L3t9IGNvbnZlcnNpb24gcmFpc2VzIHshcn0iLmZvcm1hdChmYiwgZmEsIGVycikpCisgICAgICAgICAgICBpZiBmYiA9PSAnYjJhX2hxeCc6CisgICAgICAgICAgICAgICAgIyBiMmFfaHF4IHJldHVybnMgYSB0dXBsZQorICAgICAgICAgICAgICAgIHJlcywgXyA9IHJlcworICAgICAgICAgICAgICAgIGJpbmFyeV9yZXMsIF8gPSBiaW5hcnlfcmVzCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcywgcmF3LCAie30ve30gY29udmVyc2lvbjogIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieyFyfSAhPSB7IXJ9Ii5mb3JtYXQoZmIsIGZhLCByZXMsIHJhdykpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcywgYmluYXJ5X3JlcykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShyZXMsIGJ5dGVzKQorICAgICAgICAgICAgIyBub24tQVNDSUkgc3RyaW5nCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBhMmIsICJceDgwIikKKwogCiBjbGFzcyBBcnJheUJpbkFTQ0lJVGVzdChCaW5BU0NJSVRlc3QpOgogICAgIGRlZiB0eXBlMnRlc3Qoc2VsZiwgcyk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2Jvb2wucHkgYi9MaWIvdGVzdC90ZXN0X2Jvb2wucHkKaW5kZXggYjI5Njg3MC4uNGJhYjI4YiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9ib29sLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYm9vbC5weQpAQCAtMzMwLDYgKzMzMCwxNiBAQAogICAgICAgICAgICAgICAgIGV4Y2VwdCAoRXhjZXB0aW9uKSBhcyBlX2xlbjoKICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoZV9ib29sKSwgc3RyKGVfbGVuKSkKIAorICAgIGRlZiB0ZXN0X3JlYWxfYW5kX2ltYWcoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoVHJ1ZS5yZWFsLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFRydWUuaW1hZywgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKFRydWUucmVhbCksIGludCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKFRydWUuaW1hZyksIGludCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChGYWxzZS5yZWFsLCAwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEZhbHNlLmltYWcsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShGYWxzZS5yZWFsKSwgaW50KQorICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUoRmFsc2UuaW1hZyksIGludCkKKwogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KEJvb2xUZXN0KQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2J1aWx0aW4ucHkgYi9MaWIvdGVzdC90ZXN0X2J1aWx0aW4ucHkKaW5kZXggNTVmYjYzYS4uYmZhNWVlNyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9idWlsdGluLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfYnVpbHRpbi5weQpAQCAtMTIsNyArMTIsNyBAQAogaW1wb3J0IGJ1aWx0aW5zCiBpbXBvcnQgcmFuZG9tCiBpbXBvcnQgdHJhY2ViYWNrCi1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgZmNtcCwgVEVTVEZOLCB1bmxpbmssICBydW5fdW5pdHRlc3QsIGNoZWNrX3dhcm5pbmdzCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgVEVTVEZOLCB1bmxpbmssICBydW5fdW5pdHRlc3QsIGNoZWNrX3dhcm5pbmdzCiBmcm9tIG9wZXJhdG9yIGltcG9ydCBuZWcKIHRyeToKICAgICBpbXBvcnQgcHR5LCBzaWduYWwKQEAgLTI1NSw4ICsyNTUsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNocigweGZmKSwgJ1x4ZmYnKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjaHIsIDE8PDI0KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNocihzeXMubWF4dW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgc3RyKCgnXFxVJTA4eCcgJSAoc3lzLm1heHVuaWNvZGUpKS5lbmNvZGUoImFzY2lpIiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICd1bmljb2RlLWVzY2FwZScpKQorICAgICAgICAgICAgICAgICAgICAgICAgIHN0cignXFxVMDAxMGZmZmYnLmVuY29kZSgiYXNjaWkiKSwgJ3VuaWNvZGUtZXNjYXBlJykpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgY2hyKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNocigweDAwMDBGRkZGKSwgIlxVMDAwMEZGRkYiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNocigweDAwMDEwMDAwKSwgIlxVMDAwMTAwMDAiKQpAQCAtMzc4LDcgKzM3NywxNSBAQAogICAgICAgICBmID0gRm9vKCkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGRpcihmKSA9PSBbImdhIiwgImthbiIsICJyb28iXSkKIAotICAgICAgICAjIGRpcihvYmpfX2Rpcl9fbm90X2xpc3QpCisgICAgICAgICMgZGlyKG9ial9fZGlyX190dXBsZSkKKyAgICAgICAgY2xhc3MgRm9vKG9iamVjdCk6CisgICAgICAgICAgICBkZWYgX19kaXJfXyhzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4gKCJiIiwgImMiLCAiYSIpCisgICAgICAgIHJlcyA9IGRpcihGb28oKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHJlcywgbGlzdCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlcyA9PSBbImEiLCAiYiIsICJjIl0pCisKKyAgICAgICAgIyBkaXIob2JqX19kaXJfX25vdF9zZXF1ZW5jZSkKICAgICAgICAgY2xhc3MgRm9vKG9iamVjdCk6CiAgICAgICAgICAgICBkZWYgX19kaXJfXyhzZWxmKToKICAgICAgICAgICAgICAgICByZXR1cm4gNwpAQCAtMzkxLDYgKzM5OCw4IEBACiAgICAgICAgIGV4Y2VwdDoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGRpcihzeXMuZXhjX2luZm8oKVsyXSkpLCA0KQogCisgICAgICAgICMgdGVzdCB0aGF0IG9iamVjdCBoYXMgYSBfX2Rpcl9fKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQoW10uX19kaXJfXygpKSwgZGlyKFtdKSkKIAogICAgIGRlZiB0ZXN0X2Rpdm1vZChzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXZtb2QoMTIsIDcpLCAoMSwgNSkpCkBAIC00MDAsMTAgKzQwOSwxMyBAQAogCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGl2bW9kKC1zeXMubWF4c2l6ZS0xLCAtMSksIChzeXMubWF4c2l6ZSsxLCAwKSkKIAotICAgICAgICBzZWxmLmFzc2VydFRydWUobm90IGZjbXAoZGl2bW9kKDMuMjUsIDEuMCksICgzLjAsIDAuMjUpKSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdCBmY21wKGRpdm1vZCgtMy4yNSwgMS4wKSwgKC00LjAsIDAuNzUpKSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdCBmY21wKGRpdm1vZCgzLjI1LCAtMS4wKSwgKC00LjAsIC0wLjc1KSkpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3QgZmNtcChkaXZtb2QoLTMuMjUsIC0xLjApLCAoMy4wLCAtMC4yNSkpKQorICAgICAgICBmb3IgbnVtLCBkZW5vbSwgZXhwX3Jlc3VsdCBpbiBbICgzLjI1LCAxLjAsICgzLjAsIDAuMjUpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoLTMuMjUsIDEuMCwgKC00LjAsIDAuNzUpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMy4yNSwgLTEuMCwgKC00LjAsIC0wLjc1KSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKC0zLjI1LCAtMS4wLCAoMy4wLCAtMC4yNSkpXToKKyAgICAgICAgICAgIHJlc3VsdCA9IGRpdm1vZChudW0sIGRlbm9tKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRBbG1vc3RFcXVhbChyZXN1bHRbMF0sIGV4cF9yZXN1bHRbMF0pCisgICAgICAgICAgICBzZWxmLmFzc2VydEFsbW9zdEVxdWFsKHJlc3VsdFsxXSwgZXhwX3Jlc3VsdFsxXSkKIAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGRpdm1vZCkKIApAQCAtMTE5Nyw2ICsxMjA5LDkgQEAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzdW0sIDQyKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHN1bSwgWydhJywgJ2InLCAnYyddKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHN1bSwgWydhJywgJ2InLCAnYyddLCAnJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzdW0sIFtiJ2EnLCBiJ2MnXSwgYicnKQorICAgICAgICB2YWx1ZXMgPSBbYnl0ZWFycmF5KGInYScpLCBieXRlYXJyYXkoYidiJyldCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc3VtLCB2YWx1ZXMsIGJ5dGVhcnJheShiJycpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHN1bSwgW1sxXSwgWzJdLCBbM11dKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHN1bSwgW3syOjN9XSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzdW0sIFt7MjozfV0qMiwgezI6M30pCkBAIC0xMzU4LDE0ICsxMzczLDE0IEBACiAKICAgICAgICAgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICAgICAgICAjIElzc3VlICM3OTk0OiBvYmplY3QuX19mb3JtYXRfXyB3aXRoIGEgbm9uLWVtcHR5IGZvcm1hdCBzdHJpbmcgaXMKLSAgICAgICAgIyAgcGVuZGluZyBkZXByZWNhdGVkCisgICAgICAgICMgIGRlcHJlY2F0ZWQKICAgICAgICAgZGVmIHRlc3RfZGVwcmVjYXRlZF9mb3JtYXRfc3RyaW5nKG9iaiwgZm10X3N0ciwgc2hvdWxkX3JhaXNlX3dhcm5pbmcpOgogICAgICAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncyhyZWNvcmQ9VHJ1ZSkgYXMgdzoKLSAgICAgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImFsd2F5cyIsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJhbHdheXMiLCBEZXByZWNhdGlvbldhcm5pbmcpCiAgICAgICAgICAgICAgICAgZm9ybWF0KG9iaiwgZm10X3N0cikKICAgICAgICAgICAgIGlmIHNob3VsZF9yYWlzZV93YXJuaW5nOgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHcpLCAxKQotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZSh3WzBdLm1lc3NhZ2UsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHdbMF0ubWVzc2FnZSwgRGVwcmVjYXRpb25XYXJuaW5nKQogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ29iamVjdC5fX2Zvcm1hdF9fIHdpdGggYSBub24tZW1wdHkgZm9ybWF0ICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzdHJpbmcnLCBzdHIod1swXS5tZXNzYWdlKSkKICAgICAgICAgICAgIGVsc2U6CkBAIC0xNDA5LDYgKzE0MjQsMTMgQEAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgeC50cmFuc2xhdGUsIGIiMSIsIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgeC50cmFuc2xhdGUsIGIiMSIqMjU2LCAxKQogCisgICAgZGVmIHRlc3RfY29uc3RydWN0X3NpbmdsZXRvbnMoc2VsZik6CisgICAgICAgIGZvciBjb25zdCBpbiBOb25lLCBFbGxpcHNpcywgTm90SW1wbGVtZW50ZWQ6CisgICAgICAgICAgICB0cCA9IHR5cGUoY29uc3QpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzKHRwKCksIGNvbnN0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCB0cCwgMSwgMikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdHAsIGE9MSwgYj0yKQorCiBjbGFzcyBUZXN0U29ydGVkKHVuaXR0ZXN0LlRlc3RDYXNlKToKIAogICAgIGRlZiB0ZXN0X2Jhc2ljKHNlbGYpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9ieXRlcy5weSBiL0xpYi90ZXN0L3Rlc3RfYnl0ZXMucHkKaW5kZXggNWVhYjhmNS4uYmZiODhkZSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9ieXRlcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2J5dGVzLnB5CkBAIC0xODgsMjQgKzE4OCwyNiBAQAogCiAgICAgZGVmIHRlc3RfZW5jb2Rpbmcoc2VsZik6CiAgICAgICAgIHNhbXBsZSA9ICJIZWxsbyB3b3JsZFxuXHUxMjM0XHU1Njc4XHU5YWJjIgotICAgICAgICBmb3IgZW5jIGluICgidXRmOCIsICJ1dGYxNiIpOgorICAgICAgICBmb3IgZW5jIGluICgidXRmLTgiLCAidXRmLTE2Iik6CiAgICAgICAgICAgICBiID0gc2VsZi50eXBlMnRlc3Qoc2FtcGxlLCBlbmMpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIsIHNlbGYudHlwZTJ0ZXN0KHNhbXBsZS5lbmNvZGUoZW5jKSkpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuaWNvZGVFbmNvZGVFcnJvciwgc2VsZi50eXBlMnRlc3QsIHNhbXBsZSwgImxhdGluMSIpCi0gICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChzYW1wbGUsICJsYXRpbjEiLCAiaWdub3JlIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZUVuY29kZUVycm9yLCBzZWxmLnR5cGUydGVzdCwgc2FtcGxlLCAibGF0aW4tMSIpCisgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChzYW1wbGUsICJsYXRpbi0xIiwgImlnbm9yZSIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiwgc2VsZi50eXBlMnRlc3Qoc2FtcGxlWzotM10sICJ1dGYtOCIpKQogCiAgICAgZGVmIHRlc3RfZGVjb2RlKHNlbGYpOgogICAgICAgICBzYW1wbGUgPSAiSGVsbG8gd29ybGRcblx1MTIzNFx1NTY3OFx1OWFiY1xkZWYwXGRlZjAiCi0gICAgICAgIGZvciBlbmMgaW4gKCJ1dGY4IiwgInV0ZjE2Iik6CisgICAgICAgIGZvciBlbmMgaW4gKCJ1dGYtOCIsICJ1dGYtMTYiKToKICAgICAgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChzYW1wbGUsIGVuYykKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5kZWNvZGUoZW5jKSwgc2FtcGxlKQogICAgICAgICBzYW1wbGUgPSAiSGVsbG8gd29ybGRcblx4ODBceDgxXHhmZVx4ZmYiCi0gICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChzYW1wbGUsICJsYXRpbjEiKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRGVjb2RlRXJyb3IsIGIuZGVjb2RlLCAidXRmOCIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5kZWNvZGUoInV0ZjgiLCAiaWdub3JlIiksICJIZWxsbyB3b3JsZFxuIikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmRlY29kZShlcnJvcnM9Imlnbm9yZSIsIGVuY29kaW5nPSJ1dGY4IiksCisgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChzYW1wbGUsICJsYXRpbi0xIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZURlY29kZUVycm9yLCBiLmRlY29kZSwgInV0Zi04IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmRlY29kZSgidXRmLTgiLCAiaWdub3JlIiksICJIZWxsbyB3b3JsZFxuIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmRlY29kZShlcnJvcnM9Imlnbm9yZSIsIGVuY29kaW5nPSJ1dGYtOCIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICJIZWxsbyB3b3JsZFxuIikKKyAgICAgICAgIyBEZWZhdWx0IGVuY29kaW5nIGlzIHV0Zi04CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi50eXBlMnRlc3QoYidceGUyXHg5OFx4ODMnKS5kZWNvZGUoKSwgJ1x1MjYwMycpCiAKICAgICBkZWYgdGVzdF9mcm9tX2ludChzZWxmKToKICAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KDApCkBAIC0yOTEsMTAgKzI5MywyNyBAQAogCiAgICAgZGVmIHRlc3RfY291bnQoc2VsZik6CiAgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChiJ21pc3Npc3NpcHBpJykKKyAgICAgICAgaSA9IDEwNQorICAgICAgICBwID0gMTEyCisgICAgICAgIHcgPSAxMTkKKwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY291bnQoYidpJyksIDQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudChiJ3NzJyksIDIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudChiJ3cnKSwgMCkKIAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY291bnQoaSksIDQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudCh3KSwgMCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY291bnQoYidpJywgNiksIDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudChiJ3AnLCA2KSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KGInaScsIDEsIDMpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY291bnQoYidwJywgNywgOSksIDEpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KGksIDYpLCAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuY291bnQocCwgNiksIDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudChpLCAxLCAzKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KHAsIDcsIDkpLCAxKQorCiAgICAgZGVmIHRlc3Rfc3RhcnRzd2l0aChzZWxmKToKICAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInaGVsbG8nKQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNlbGYudHlwZTJ0ZXN0KCkuc3RhcnRzd2l0aChiImFueXRoaW5nIikpCkBAIC0zMjUsMzUgKzM0NCw4NiBAQAogCiAgICAgZGVmIHRlc3RfZmluZChzZWxmKToKICAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInbWlzc2lzc2lwcGknKQorICAgICAgICBpID0gMTA1CisgICAgICAgIHcgPSAxMTkKKwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZmluZChiJ3NzJyksIDIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5maW5kKGInc3MnLCAzKSwgNSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmZpbmQoYidzcycsIDEsIDcpLCAyKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZmluZChiJ3NzJywgMSwgMyksIC0xKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZmluZChiJ3cnKSwgLTEpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5maW5kKGInbWlzc2lzc2lwcGlhbicpLCAtMSkKIAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZmluZChpKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmZpbmQodyksIC0xKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5maW5kKGInc3MnLCAzKSwgNSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmZpbmQoYidzcycsIDEsIDcpLCAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZmluZChiJ3NzJywgMSwgMyksIC0xKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5maW5kKGksIDYpLCA3KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuZmluZChpLCAxLCAzKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmZpbmQodywgMSwgMyksIC0xKQorCisgICAgICAgIGZvciBpbmRleCBpbiAoLTEsIDI1Niwgc3lzLm1heHNpemUgKyAxKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoCisgICAgICAgICAgICAgICAgVmFsdWVFcnJvciwgcidieXRlIG11c3QgYmUgaW4gcmFuZ2VcKDAsIDI1NlwpJywKKyAgICAgICAgICAgICAgICBiLmZpbmQsIGluZGV4KQorCiAgICAgZGVmIHRlc3RfcmZpbmQoc2VsZik6CiAgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChiJ21pc3Npc3NpcHBpJykKKyAgICAgICAgaSA9IDEwNQorICAgICAgICB3ID0gMTE5CisKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJmaW5kKGInc3MnKSwgNSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJmaW5kKGInc3MnLCAzKSwgNSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJmaW5kKGInc3MnLCAwLCA2KSwgMikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJmaW5kKGIndycpLCAtMSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJmaW5kKGInbWlzc2lzc2lwcGlhbicpLCAtMSkKIAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmZpbmQoaSksIDEwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmZpbmQodyksIC0xKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yZmluZChiJ3NzJywgMyksIDUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yZmluZChiJ3NzJywgMCwgNiksIDIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJmaW5kKGksIDEsIDMpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmZpbmQoaSwgMywgOSksIDcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yZmluZCh3LCAxLCAzKSwgLTEpCisKICAgICBkZWYgdGVzdF9pbmRleChzZWxmKToKLSAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInd29ybGQnKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuaW5kZXgoYid3JyksIDApCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5pbmRleChiJ29ybCcpLCAxKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiLmluZGV4LCBiJ3dvcm0nKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiLmluZGV4LCBiJ2xkbycpCisgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChiJ21pc3Npc3NpcHBpJykKKyAgICAgICAgaSA9IDEwNQorICAgICAgICB3ID0gMTE5CisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmluZGV4KGInc3MnKSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYi5pbmRleCwgYid3JykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYi5pbmRleCwgYidtaXNzaXNzaXBwaWFuJykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuaW5kZXgoaSksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGIuaW5kZXgsIHcpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmluZGV4KGInc3MnLCAzKSwgNSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmluZGV4KGInc3MnLCAxLCA3KSwgMikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYi5pbmRleCwgYidzcycsIDEsIDMpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmluZGV4KGksIDYpLCA3KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIuaW5kZXgoaSwgMSwgMyksIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGIuaW5kZXgsIHcsIDEsIDMpCiAKICAgICBkZWYgdGVzdF9yaW5kZXgoc2VsZik6Ci0gICAgICAgICMgWFhYIGNvdWxkIGJlIG1vcmUgcmlnb3JvdXMKLSAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInd29ybGQnKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmluZGV4KGIndycpLCAwKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmluZGV4KGInb3JsJyksIDEpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGIucmluZGV4LCBiJ3dvcm0nKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiLnJpbmRleCwgYidsZG8nKQorICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoYidtaXNzaXNzaXBwaScpCisgICAgICAgIGkgPSAxMDUKKyAgICAgICAgdyA9IDExOQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yaW5kZXgoYidzcycpLCA1KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiLnJpbmRleCwgYid3JykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYi5yaW5kZXgsIGInbWlzc2lzc2lwcGlhbicpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLnJpbmRleChpKSwgMTApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGIucmluZGV4LCB3KQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yaW5kZXgoYidzcycsIDMpLCA1KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmluZGV4KGInc3MnLCAwLCA2KSwgMikKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmluZGV4KGksIDEsIDMpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIucmluZGV4KGksIDMsIDkpLCA3KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiLnJpbmRleCwgdywgMSwgMykKIAogICAgIGRlZiB0ZXN0X3JlcGxhY2Uoc2VsZik6CiAgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChiJ21pc3Npc3NpcHBpJykKQEAgLTQ3Myw2ICs1NDMsMjcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnR5cGUydGVzdChiJ2FiYycpLmxzdHJpcCwgJ2InKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYudHlwZTJ0ZXN0KGInYWJjJykucnN0cmlwLCAnYicpCiAKKyAgICBkZWYgdGVzdF9jZW50ZXIoc2VsZik6CisgICAgICAgICMgRmlsbCBjaGFyYWN0ZXIgY2FuIGJlIGVpdGhlciBieXRlcyBvciBieXRlYXJyYXkgKGlzc3VlIDEyMzgwKQorICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoYidhYmMnKQorICAgICAgICBmb3IgZmlsbF90eXBlIGluIChieXRlcywgYnl0ZWFycmF5KToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jZW50ZXIoNywgZmlsbF90eXBlKGInLScpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi50eXBlMnRlc3QoYictLWFiYy0tJykpCisKKyAgICBkZWYgdGVzdF9sanVzdChzZWxmKToKKyAgICAgICAgIyBGaWxsIGNoYXJhY3RlciBjYW4gYmUgZWl0aGVyIGJ5dGVzIG9yIGJ5dGVhcnJheSAoaXNzdWUgMTIzODApCisgICAgICAgIGIgPSBzZWxmLnR5cGUydGVzdChiJ2FiYycpCisgICAgICAgIGZvciBmaWxsX3R5cGUgaW4gKGJ5dGVzLCBieXRlYXJyYXkpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmxqdXN0KDcsIGZpbGxfdHlwZShiJy0nKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYudHlwZTJ0ZXN0KGInYWJjLS0tLScpKQorCisgICAgZGVmIHRlc3Rfcmp1c3Qoc2VsZik6CisgICAgICAgICMgRmlsbCBjaGFyYWN0ZXIgY2FuIGJlIGVpdGhlciBieXRlcyBvciBieXRlYXJyYXkgKGlzc3VlIDEyMzgwKQorICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoYidhYmMnKQorICAgICAgICBmb3IgZmlsbF90eXBlIGluIChieXRlcywgYnl0ZWFycmF5KToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5yanVzdCg3LCBmaWxsX3R5cGUoYictJykpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnR5cGUydGVzdChiJy0tLS1hYmMnKSkKKwogICAgIGRlZiB0ZXN0X29yZChzZWxmKToKICAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInXDBBXHg3Zlx4ODBceGZmJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbb3JkKGJbaTppKzFdKSBmb3IgaSBpbiByYW5nZShsZW4oYikpXSwKQEAgLTUyOSw2ICs2MjAsMTQgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChUcnVlLCBiLnN0YXJ0c3dpdGgoaCwgTm9uZSwgLTIpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKEZhbHNlLCBiLnN0YXJ0c3dpdGgoeCwgTm9uZSwgTm9uZSkpCiAKKyAgICBkZWYgdGVzdF9pbnRlZ2VyX2FyZ3VtZW50c19vdXRfb2ZfYnl0ZV9yYW5nZShzZWxmKToKKyAgICAgICAgYiA9IHNlbGYudHlwZTJ0ZXN0KGInaGVsbG8nKQorCisgICAgICAgIGZvciBtZXRob2QgaW4gKGIuY291bnQsIGIuZmluZCwgYi5pbmRleCwgYi5yZmluZCwgYi5yaW5kZXgpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbWV0aG9kLCAtMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG1ldGhvZCwgMjU2KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbWV0aG9kLCA5OTk5KQorCiAgICAgZGVmIHRlc3RfZmluZF9ldGNfcmFpc2VfY29ycmVjdF9lcnJvcl9tZXNzYWdlcyhzZWxmKToKICAgICAgICAgIyBpc3N1ZSAxMTgyOAogICAgICAgICBiID0gc2VsZi50eXBlMnRlc3QoYidoZWxsbycpCkBAIC02MzQsNiArNzMzLDM5IEBACiAgICAgICAgIGIucmV2ZXJzZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoYikKIAorICAgIGRlZiB0ZXN0X2NsZWFyKHNlbGYpOgorICAgICAgICBiID0gYnl0ZWFycmF5KGIncHl0aG9uJykKKyAgICAgICAgYi5jbGVhcigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiwgYicnKQorCisgICAgICAgIGIgPSBieXRlYXJyYXkoYicnKQorICAgICAgICBiLmNsZWFyKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLCBiJycpCisKKyAgICAgICAgYiA9IGJ5dGVhcnJheShiJycpCisgICAgICAgIGIuYXBwZW5kKG9yZCgncicpKQorICAgICAgICBiLmNsZWFyKCkKKyAgICAgICAgYi5hcHBlbmQob3JkKCdwJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiwgYidwJykKKworICAgIGRlZiB0ZXN0X2NvcHkoc2VsZik6CisgICAgICAgIGIgPSBieXRlYXJyYXkoYidhYmMnKQorICAgICAgICBiYiA9IGIuY29weSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYmIsIGInYWJjJykKKworICAgICAgICBiID0gYnl0ZWFycmF5KGInJykKKyAgICAgICAgYmIgPSBiLmNvcHkoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJiLCBiJycpCisKKyAgICAgICAgIyB0ZXN0IHRoYXQgaXQncyBpbmRlZWQgYSBjb3B5IGFuZCBub3QgYSByZWZlcmVuY2UKKyAgICAgICAgYiA9IGJ5dGVhcnJheShiJ2FiYycpCisgICAgICAgIGJiID0gYi5jb3B5KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLCBiYikKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdChiLCBiYikKKyAgICAgICAgYmIuYXBwZW5kKG9yZCgnZCcpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJiLCBiJ2FiY2QnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIsIGInYWJjJykKKwogICAgIGRlZiB0ZXN0X3JlZ2V4cHMoc2VsZik6CiAgICAgICAgIGRlZiBieShzKToKICAgICAgICAgICAgIHJldHVybiBieXRlYXJyYXkobWFwKG9yZCwgcykpCkBAIC0xMTA1LDkgKzEyMzcsMTEgQEAKIAogY2xhc3MgQnl0ZUFycmF5QXNTdHJpbmdUZXN0KEZpeGVkU3RyaW5nVGVzdCk6CiAgICAgdHlwZTJ0ZXN0ID0gYnl0ZWFycmF5CisgICAgY29udGFpbnNfYnl0ZXMgPSBUcnVlCiAKIGNsYXNzIEJ5dGVzQXNTdHJpbmdUZXN0KEZpeGVkU3RyaW5nVGVzdCk6CiAgICAgdHlwZTJ0ZXN0ID0gYnl0ZXMKKyAgICBjb250YWluc19ieXRlcyA9IFRydWUKIAogCiBjbGFzcyBTdWJjbGFzc1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9iejIucHkgYi9MaWIvdGVzdC90ZXN0X2J6Mi5weQppbmRleCBiZTM1NTgwLi4wZjhkMTQ5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2J6Mi5weQorKysgYi9MaWIvdGVzdC90ZXN0X2J6Mi5weQpAQCAtMSwxMCArMSwxMSBAQAogIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMwogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0Ci1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgVEVTVEZOCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgVEVTVEZOLCBiaWdtZW10ZXN0LCBfNEcKIAogaW1wb3J0IHVuaXR0ZXN0CiBmcm9tIGlvIGltcG9ydCBCeXRlc0lPCiBpbXBvcnQgb3MKK2ltcG9ydCByYW5kb20KIGltcG9ydCBzdWJwcm9jZXNzCiBpbXBvcnQgc3lzCiAKQEAgLTIxLDkgKzIyLDMxIEBACiAKIGNsYXNzIEJhc2VUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAiQmFzZSBmb3Igb3RoZXIgdGVzdGNhc2VzLiIKLSAgICBURVhUID0gYidyb290Ong6MDowOnJvb3Q6L3Jvb3Q6L2Jpbi9iYXNoXG5iaW46eDoxOjE6YmluOi9iaW46XG5kYWVtb246eDoyOjI6ZGFlbW9uOi9zYmluOlxuYWRtOng6Mzo0OmFkbTovdmFyL2FkbTpcbmxwOng6NDo3OmxwOi92YXIvc3Bvb2wvbHBkOlxuc3luYzp4OjU6MDpzeW5jOi9zYmluOi9iaW4vc3luY1xuc2h1dGRvd246eDo2OjA6c2h1dGRvd246L3NiaW46L3NiaW4vc2h1dGRvd25cbmhhbHQ6eDo3OjA6aGFsdDovc2Jpbjovc2Jpbi9oYWx0XG5tYWlsOng6ODoxMjptYWlsOi92YXIvc3Bvb2wvbWFpbDpcbm5ld3M6eDo5OjEzOm5ld3M6L3Zhci9zcG9vbC9uZXdzOlxudXVjcDp4OjEwOjE0OnV1Y3A6L3Zhci9zcG9vbC91dWNwOlxub3BlcmF0b3I6eDoxMTowOm9wZXJhdG9yOi9yb290OlxuZ2FtZXM6eDoxMjoxMDA6Z2FtZXM6L3Vzci9nYW1lczpcbmdvcGhlcjp4OjEzOjMwOmdvcGhlcjovdXNyL2xpYi9nb3BoZXItZGF0YTpcbmZ0cDp4OjE0OjUwOkZUUCBVc2VyOi92YXIvZnRwOi9iaW4vYmFzaFxubm9ib2R5Ong6NjU1MzQ6NjU1MzQ6Tm9ib2R5Oi9ob21lOlxucG9zdGZpeDp4OjEwMDoxMDE6cG9zdGZpeDovdmFyL3Nwb29sL3Bvc3RmaXg6XG5uaWVtZXllcjp4OjUwMDo1MDA6Oi9ob21lL25pZW1leWVyOi9iaW4vYmFzaFxucG9zdGdyZXM6eDoxMDE6MTAyOlBvc3RncmVTUUwgU2VydmVyOi92YXIvbGliL3Bnc3FsOi9iaW4vYmFzaFxubXlzcWw6eDoxMDI6MTAzOk15U1FMIHNlcnZlcjovdmFyL2xpYi9teXNxbDovYmluL2Jhc2hcbnd3dzp4OjEwMzoxMDQ6Oi92YXIvd3d3Oi9iaW4vZmFsc2VcbicKKyAgICBURVhUX0xJTkVTID0gWworICAgICAgICBiJ3Jvb3Q6eDowOjA6cm9vdDovcm9vdDovYmluL2Jhc2hcbicsCisgICAgICAgIGInYmluOng6MToxOmJpbjovYmluOlxuJywKKyAgICAgICAgYidkYWVtb246eDoyOjI6ZGFlbW9uOi9zYmluOlxuJywKKyAgICAgICAgYidhZG06eDozOjQ6YWRtOi92YXIvYWRtOlxuJywKKyAgICAgICAgYidscDp4OjQ6NzpscDovdmFyL3Nwb29sL2xwZDpcbicsCisgICAgICAgIGInc3luYzp4OjU6MDpzeW5jOi9zYmluOi9iaW4vc3luY1xuJywKKyAgICAgICAgYidzaHV0ZG93bjp4OjY6MDpzaHV0ZG93bjovc2Jpbjovc2Jpbi9zaHV0ZG93blxuJywKKyAgICAgICAgYidoYWx0Ong6NzowOmhhbHQ6L3NiaW46L3NiaW4vaGFsdFxuJywKKyAgICAgICAgYidtYWlsOng6ODoxMjptYWlsOi92YXIvc3Bvb2wvbWFpbDpcbicsCisgICAgICAgIGInbmV3czp4Ojk6MTM6bmV3czovdmFyL3Nwb29sL25ld3M6XG4nLAorICAgICAgICBiJ3V1Y3A6eDoxMDoxNDp1dWNwOi92YXIvc3Bvb2wvdXVjcDpcbicsCisgICAgICAgIGInb3BlcmF0b3I6eDoxMTowOm9wZXJhdG9yOi9yb290OlxuJywKKyAgICAgICAgYidnYW1lczp4OjEyOjEwMDpnYW1lczovdXNyL2dhbWVzOlxuJywKKyAgICAgICAgYidnb3BoZXI6eDoxMzozMDpnb3BoZXI6L3Vzci9saWIvZ29waGVyLWRhdGE6XG4nLAorICAgICAgICBiJ2Z0cDp4OjE0OjUwOkZUUCBVc2VyOi92YXIvZnRwOi9iaW4vYmFzaFxuJywKKyAgICAgICAgYidub2JvZHk6eDo2NTUzNDo2NTUzNDpOb2JvZHk6L2hvbWU6XG4nLAorICAgICAgICBiJ3Bvc3RmaXg6eDoxMDA6MTAxOnBvc3RmaXg6L3Zhci9zcG9vbC9wb3N0Zml4OlxuJywKKyAgICAgICAgYiduaWVtZXllcjp4OjUwMDo1MDA6Oi9ob21lL25pZW1leWVyOi9iaW4vYmFzaFxuJywKKyAgICAgICAgYidwb3N0Z3Jlczp4OjEwMToxMDI6UG9zdGdyZVNRTCBTZXJ2ZXI6L3Zhci9saWIvcGdzcWw6L2Jpbi9iYXNoXG4nLAorICAgICAgICBiJ215c3FsOng6MTAyOjEwMzpNeVNRTCBzZXJ2ZXI6L3Zhci9saWIvbXlzcWw6L2Jpbi9iYXNoXG4nLAorICAgICAgICBiJ3d3dzp4OjEwMzoxMDQ6Oi92YXIvd3d3Oi9iaW4vZmFsc2VcbicsCisgICAgICAgIF0KKyAgICBURVhUID0gYicnLmpvaW4oVEVYVF9MSU5FUykKICAgICBEQVRBID0gYidCWmg5MUFZJlNZLlx4YzhOXHgxOFx4MDBceDAxPl9ceDgwXHgwMFx4MTBAXHgwMlx4ZmZceGYwXHgwMVx4MDduXHgwMD9ceGU3XHhmZlx4ZTAwXHgwMVx4OTlceGFhXHgwMFx4YzBceDAzRlx4ODZceDhjIyZceDgzRlx4OWFceDAzXHgwNlx4YTZceGQwXHhhNlx4OTNNXHgwZlFceGE3XHhhOFx4MDZceDgwNGhoXHgxMiRceDExXHhhNGk0XHhmMTRTXHhkMjxRXHhiNVx4MGZIXHhkM1x4ZDRceGRkXHhkNVx4ODdceGJiXHhmOFx4OTRcclx4OGZceGFmSVx4MTJceGUxXHhjOVx4ZjgvRVx4MDBwdVx4ODlceDEyXVx4YzlceGJiRExcblFceDBlXHQxXHgxMlx4ZGZceGEwXHhjMFx4OTdceGFjMk85XHg4OVx4MTNceDk0XHgwZVx4MWM3XHgwZWRceDk1SVx4MGNceGFhSlx4YTRceDE4TFx4MTBceDA1I1x4OWNceGFmXHhiYVx4YmMvXHg5N1x4OGEjQ1x4YzhceGUxXHg4Y1dceGY5XHhlMlx4ZDBceGQ2TVx4YTdceDhiWGE8ZVx4ODR0XHhjYkxceGIzXHhhN1x4ZDlceGNkXHhkMVx4Y2JceDg0Llx4YWZceGIzXHhhYlx4YWJceGFkYG59XHhhMGxoXHRFLFx4OGVaXHgxNVx4MTdWSD5ceDg4XHhlNVx4Y2Q5Z2Q2XHgwYlxuXHhlOVx4OWJceGQ1XHg4YVx4OTlceGY3XHgwOC5LXHg4ZXZceGZiXHhmN3h3XHhiYlx4ZGZceGExXHg5Mlx4ZjFceGRkfC8iO1x4YTJceGJhXHg5Zlx4ZDVceGIxI0FceGI2XHhmNlx4YjNvXHhjOVx4YzV5XFxceGViT1x4ZTdceDg1XHg5YVx4YmNceGI2ZjhceDk1Mlx4ZDVceGQ3IiVceDg5PlYsXHhmN1x4YTZ6XHhlMlx4OWZceGEzXHhkZlx4MTFceDExIlx4ZDZFKUlceGE5XHgxM15ceGNhXHhmM3JceGQwXHgwM1VceDkyMlx4ZjI2XHhlY1x4YjZceGVkXHg4Ylx4YzNVXHgxM1x4OWRceGM1XHgxNzBceGE0XHhmYV5ceDkyXHhhY0RGXHg4YVx4OTdceGQ2XHgxOVx4ZmVceGRkXHhiOFx4YmRceDFhXHg5YVx4MTlceGEzXHg4MGFua1JceDhiXHhlNVx4ZDgzXVx4YTlceGM2XHgwOFx4ODJmXHhmNlx4YjkiNmwkXHhiOGpAXHhjMFx4OGFceGIwbDEuLlx4YmFrXHg4M2xzXHgxNVx4YmNceGY0XHhjMVx4MTNceGJlXHhmOEVceGI4XHg5ZFxyXHhhOFx4OWRrXHg4NFx4ZDNuXHhmYVx4YWNRXHgwN1x4YjEleVx4YWF2XHhiNFx4MDhceGUwelx4MWJceDE2XHhmNVx4MDRceGU5XHhjY1x4YjlceDA4elx4MWVuNy5HXHhmY11ceGM5XHgxNFx4ZTFCQFx4YmIhOGAnCi0gICAgREFUQV9DUkxGID0gYidCWmg5MUFZJlNZXHhhZXpceGJiTlx4MDBceDAxSFx4ZGZceDgwXHgwMFx4MTJAXHgwMlx4ZmZceGYwXHgwMVx4MDduXHgwMD9ceGU3XHhmZlx4ZTBAXHgwMVx4YmNceGM2YFx4ODYqXHg4ZD1NXHhhOVx4OWFceDg2XHhkMExAXHgwZklceGE2IVx4YTFceDEzXHhjOFx4ODhqZGlceDhkQFx4MDNAXHgxYVx4MWFceDBjXHgwY1x4ODMgXHgwMFx4YzRoMlx4MTlceDAxXHg4MkRceDg0ZVx0XHhlOFx4OTlceDg5XHgxOVx4MWFoXHgwMFxyXHgxYVx4MTFceGFmXHg5Ylx4MGZHXHhmNShceDFiXHgxZj9cdFx4MTJceGNmXHhiNVx4ZmNceDk1RVx4MDBwc1x4ODlceDEyXlx4YTRceGRkXHhhMiZceDA1KFx4ODdceDA0XHg5OFx4ODl1XHhlNDAlXHhiNlx4MTlcJ1x4OGNceGM0XHg4OVx4Y2FceDA3XHgwZVx4MWIhXHg5MVVJRlUlQ1x4OTk0IURJXHhkMlx4ZmFceGYwXHhmMU44V1x4ZGVceDEzQVx4ZjVceDljciU/XHg5ZjM7STQ1QVx4ZDFceDhiVFx4YjE8bFx4YmFceGNiX1x4YzAweFlceDE3clx4MTdceDg4XHgwOFx4MDhAXHhhMFxyeUBceDEwXHgwNCQpYFx4ZjJceGNlXHg4OXpceGIwc1x4ZWNceDliLmlXXHg5ZFx4ODFceGI1LSt0XHg5Zlx4MWFcJ1x4OTdkQlx4ZjV4XHhiNVx4YmUuWy5ceGQ3XHgwZVx4ODFceGU3XHgwOFx4MWNOYFx4ODhceDEwXHhjYVx4ODdceGMzISJceDgwXHg5MlJceGExL1x4ZDFceGMwXHhlNm1mXHhhY1x4YmRceDk5XHhjY2FceGIzXHg4NzgwPlx4YTRceGM3XHg4ZFx4MWFcXCJceGFkXHhhMVx4YWJ5QmdceDE1XHhiOWxceDg4XHg4OFx4OTFrIlx4OTRceGE0XHhkNFx4ODlceGFlKlx4YTZceDBiXHgxMFx4MGNceGQ2XHhkNG1ceGU4Nlx4ZWNceGI1alx4OGFceDg2alwnO1x4Y2EuXHgwMUlceGYyXHhhYUpceGU4XHg4OFx4OGNVK3QzXHhmYlx4MGNcblx4YTMzXHgxM3IyXHJceDE2XHhlMFx4YjMoXHhiZlx4MWRceDgzclx4ZTdNXHhmMERceDEzNjVceGQ4XHg4OFx4ZDNceGE0XHg5Mlx4Y2IyXHgwNlx4MDRcXFx4YzFceGIwXHhlYS8vXHhiZWsmXHhkOFx4ZTYrdFx4ZTVceGExXHgxM1x4YWRhXHgxNlx4ZGVyNSJ3XVx4YTJpXHhiN1tceDk3UiBceGUySVRceGNkO1pceDA0ZGs0XHhhZFx4OGFcdFx4ZDNceDgxelx4MTBceGYxOl5gXHhhYlx4MWZceGM1XHhkY1x4OTFOXHgxNCQrXHg5ZVx4YWVceGQzXHg4MCcKIAogICAgIGlmIGhhc19jbWRsaW5lX2J1bnppcDI6CiAgICAgICAgIGRlZiBkZWNvbXByZXNzKHNlbGYsIGRhdGEpOgpAQCAtNTQsODMgKzc3LDEzNSBAQAogICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShzZWxmLmZpbGVuYW1lKToKICAgICAgICAgICAgIG9zLnVubGluayhzZWxmLmZpbGVuYW1lKQogCi0gICAgZGVmIGNyZWF0ZVRlbXBGaWxlKHNlbGYsIGNybGY9MCk6CisgICAgZGVmIGNyZWF0ZVRlbXBGaWxlKHNlbGYsIHN0cmVhbXM9MSk6CiAgICAgICAgIHdpdGggb3BlbihzZWxmLmZpbGVuYW1lLCAid2IiKSBhcyBmOgotICAgICAgICAgICAgaWYgY3JsZjoKLSAgICAgICAgICAgICAgICBkYXRhID0gc2VsZi5EQVRBX0NSTEYKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgZGF0YSA9IHNlbGYuREFUQQotICAgICAgICAgICAgZi53cml0ZShkYXRhKQorICAgICAgICAgICAgZi53cml0ZShzZWxmLkRBVEEgKiBzdHJlYW1zKQogCiAgICAgZGVmIHRlc3RSZWFkKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkZpbGUucmVhZCgpIgogICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmYucmVhZCwgTm9uZSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVCkKIAorICAgIGRlZiB0ZXN0UmVhZE11bHRpU3RyZWFtKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKHN0cmVhbXM9NSkKKyAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmYucmVhZCwgTm9uZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVCAqIDUpCisKKyAgICBkZWYgdGVzdFJlYWRNb25rZXlNdWx0aVN0cmVhbShzZWxmKToKKyAgICAgICAgIyBUZXN0IEJaMkZpbGUucmVhZCgpIG9uIGEgbXVsdGktc3RyZWFtIGFyY2hpdmUgd2hlcmUgYSBzdHJlYW0KKyAgICAgICAgIyBib3VuZGFyeSBjb2luY2lkZXMgd2l0aCB0aGUgZW5kIG9mIHRoZSByYXcgcmVhZCBidWZmZXIuCisgICAgICAgIGJ1ZmZlcl9zaXplID0gYnoyLl9CVUZGRVJfU0laRQorICAgICAgICBiejIuX0JVRkZFUl9TSVpFID0gbGVuKHNlbGYuREFUQSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZShzdHJlYW1zPTUpCisgICAgICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmYucmVhZCwgTm9uZSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFQgKiA1KQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgYnoyLl9CVUZGRVJfU0laRSA9IGJ1ZmZlcl9zaXplCisKICAgICBkZWYgdGVzdFJlYWQwKHNlbGYpOgotICAgICAgICAjIFRlc3QgQkJaMkZpbGUucmVhZCgwKSIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLnJlYWQsIE5vbmUpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgwKSwgYiIiKQogCiAgICAgZGVmIHRlc3RSZWFkQ2h1bmsxMChzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLnJlYWQoKSBpbiBjaHVua3Mgb2YgMTAgYnl0ZXMiCiAgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQogICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKICAgICAgICAgICAgIHRleHQgPSBiJycKLSAgICAgICAgICAgIHdoaWxlIDE6CisgICAgICAgICAgICB3aGlsZSBUcnVlOgogICAgICAgICAgICAgICAgIHN0ciA9IGJ6MmYucmVhZCgxMCkKICAgICAgICAgICAgICAgICBpZiBub3Qgc3RyOgogICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgIHRleHQgKz0gc3RyCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRleHQsIHNlbGYuVEVYVCkKIAorICAgIGRlZiB0ZXN0UmVhZENodW5rMTBNdWx0aVN0cmVhbShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZShzdHJlYW1zPTUpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgdGV4dCA9IGInJworICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICBzdHIgPSBiejJmLnJlYWQoMTApCisgICAgICAgICAgICAgICAgaWYgbm90IHN0cjoKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICB0ZXh0ICs9IHN0cgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXh0LCBzZWxmLlRFWFQgKiA1KQorCiAgICAgZGVmIHRlc3RSZWFkMTAwKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkZpbGUucmVhZCgxMDApIgogICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgxMDApLCBzZWxmLlRFWFRbOjEwMF0pCiAKKyAgICBkZWYgdGVzdFBlZWsoc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIHBkYXRhID0gYnoyZi5wZWVrKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwobGVuKHBkYXRhKSwgMCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLlRFWFQuc3RhcnRzd2l0aChwZGF0YSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFQpCisKKyAgICBkZWYgdGVzdFJlYWRJbnRvKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKKyAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICBuID0gMTI4CisgICAgICAgICAgICBiID0gYnl0ZWFycmF5KG4pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZGludG8oYiksIG4pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIsIHNlbGYuVEVYVFs6bl0pCisgICAgICAgICAgICBuID0gbGVuKHNlbGYuVEVYVCkgLSBuCisgICAgICAgICAgICBiID0gYnl0ZWFycmF5KGxlbihzZWxmLlRFWFQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWRpbnRvKGIpLCBuKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiWzpuXSwgc2VsZi5URVhUWy1uOl0pCisKICAgICBkZWYgdGVzdFJlYWRMaW5lKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkZpbGUucmVhZGxpbmUoKSIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLnJlYWRsaW5lLCBOb25lKQotICAgICAgICAgICAgc2lvID0gQnl0ZXNJTyhzZWxmLlRFWFQpCi0gICAgICAgICAgICBmb3IgbGluZSBpbiBzaW8ucmVhZGxpbmVzKCk6CisgICAgICAgICAgICBmb3IgbGluZSBpbiBzZWxmLlRFWFRfTElORVM6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWRsaW5lKCksIGxpbmUpCisKKyAgICBkZWYgdGVzdFJlYWRMaW5lTXVsdGlTdHJlYW0oc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoc3RyZWFtcz01KQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZi5yZWFkbGluZSwgTm9uZSkKKyAgICAgICAgICAgIGZvciBsaW5lIGluIHNlbGYuVEVYVF9MSU5FUyAqIDU6CiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWRsaW5lKCksIGxpbmUpCiAKICAgICBkZWYgdGVzdFJlYWRMaW5lcyhzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLnJlYWRsaW5lcygpIgogICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmYucmVhZGxpbmVzLCBOb25lKQotICAgICAgICAgICAgc2lvID0gQnl0ZXNJTyhzZWxmLlRFWFQpCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZGxpbmVzKCksIHNpby5yZWFkbGluZXMoKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkbGluZXMoKSwgc2VsZi5URVhUX0xJTkVTKQorCisgICAgZGVmIHRlc3RSZWFkTGluZXNNdWx0aVN0cmVhbShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZShzdHJlYW1zPTUpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLnJlYWRsaW5lcywgTm9uZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkbGluZXMoKSwgc2VsZi5URVhUX0xJTkVTICogNSkKIAogICAgIGRlZiB0ZXN0SXRlcmF0b3Ioc2VsZik6Ci0gICAgICAgICMgIlRlc3QgaXRlcihCWjJGaWxlKSIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgotICAgICAgICAgICAgc2lvID0gQnl0ZXNJTyhzZWxmLlRFWFQpCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoaXRlcihiejJmKSksIHNpby5yZWFkbGluZXMoKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGlzdChpdGVyKGJ6MmYpKSwgc2VsZi5URVhUX0xJTkVTKQorCisgICAgZGVmIHRlc3RJdGVyYXRvck11bHRpU3RyZWFtKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKHN0cmVhbXM9NSkKKyAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoaXRlcihiejJmKSksIHNlbGYuVEVYVF9MSU5FUyAqIDUpCiAKICAgICBkZWYgdGVzdENsb3NlZEl0ZXJhdG9yRGVhZGxvY2soc2VsZik6Ci0gICAgICAgICMgIlRlc3QgdGhhdCBpdGVyYXRpb24gb24gYSBjbG9zZWQgYnoyZmlsZSByZWxlYXNlcyB0aGUgbG9jay4iCi0gICAgICAgICMgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTMzMDkKKyAgICAgICAgIyBJc3N1ZSAjMzMwOTogSXRlcmF0aW9uIG9uIGEgY2xvc2VkIEJaMkZpbGUgc2hvdWxkIHJlbGVhc2UgdGhlIGxvY2suCiAgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQogICAgICAgICBiejJmID0gQloyRmlsZShzZWxmLmZpbGVuYW1lKQogICAgICAgICBiejJmLmNsb3NlKCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYnoyZi5fX25leHRfXykKLSAgICAgICAgIyBUaGlzIGNhbGwgd2lsbCBkZWFkbG9jayBvZiB0aGUgYWJvdmUgLl9fbmV4dF9fIGNhbGwgZmFpbGVkIHRvCisgICAgICAgICMgVGhpcyBjYWxsIHdpbGwgZGVhZGxvY2sgaWYgdGhlIGFib3ZlIC5fX25leHRfXyBjYWxsIGZhaWxlZCB0bwogICAgICAgICAjIHJlbGVhc2UgdGhlIGxvY2suCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGJ6MmYucmVhZGxpbmVzKQogCiAgICAgZGVmIHRlc3RXcml0ZShzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLndyaXRlKCkiCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lLCAidyIpIGFzIGJ6MmY6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmYud3JpdGUpCiAgICAgICAgICAgICBiejJmLndyaXRlKHNlbGYuVEVYVCkKQEAgLTEzOCwxMCArMjEzLDkgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kZWNvbXByZXNzKGYucmVhZCgpKSwgc2VsZi5URVhUKQogCiAgICAgZGVmIHRlc3RXcml0ZUNodW5rczEwKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkZpbGUud3JpdGUoKSB3aXRoIGNodW5rcyBvZiAxMCBieXRlcyIKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUsICJ3IikgYXMgYnoyZjoKICAgICAgICAgICAgIG4gPSAwCi0gICAgICAgICAgICB3aGlsZSAxOgorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgICAgICAgICBzdHIgPSBzZWxmLlRFWFRbbioxMDoobisxKSoxMF0KICAgICAgICAgICAgICAgICBpZiBub3Qgc3RyOgogICAgICAgICAgICAgICAgICAgICBicmVhawpAQCAtMTUwLDEzICsyMjQsMTkgQEAKICAgICAgICAgd2l0aCBvcGVuKHNlbGYuZmlsZW5hbWUsICdyYicpIGFzIGY6CiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGVjb21wcmVzcyhmLnJlYWQoKSksIHNlbGYuVEVYVCkKIAorICAgIGRlZiB0ZXN0V3JpdGVOb25EZWZhdWx0Q29tcHJlc3NMZXZlbChzZWxmKToKKyAgICAgICAgZXhwZWN0ZWQgPSBiejIuY29tcHJlc3Moc2VsZi5URVhULCBjb21wcmVzc2xldmVsPTUpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lLCAidyIsIGNvbXByZXNzbGV2ZWw9NSkgYXMgYnoyZjoKKyAgICAgICAgICAgIGJ6MmYud3JpdGUoc2VsZi5URVhUKQorICAgICAgICB3aXRoIG9wZW4oc2VsZi5maWxlbmFtZSwgInJiIikgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIGV4cGVjdGVkKQorCiAgICAgZGVmIHRlc3RXcml0ZUxpbmVzKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkZpbGUud3JpdGVsaW5lcygpIgogICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSwgInciKSBhcyBiejJmOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLndyaXRlbGluZXMpCi0gICAgICAgICAgICBzaW8gPSBCeXRlc0lPKHNlbGYuVEVYVCkKLSAgICAgICAgICAgIGJ6MmYud3JpdGVsaW5lcyhzaW8ucmVhZGxpbmVzKCkpCi0gICAgICAgICMgcGF0Y2ggIzE1MzU1MDAKKyAgICAgICAgICAgIGJ6MmYud3JpdGVsaW5lcyhzZWxmLlRFWFRfTElORVMpCisgICAgICAgICMgSXNzdWUgIzE1MzU1MDA6IENhbGxpbmcgd3JpdGVsaW5lcygpIG9uIGEgY2xvc2VkIEJaMkZpbGUKKyAgICAgICAgIyBzaG91bGQgcmFpc2UgYW4gZXhjZXB0aW9uLgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiejJmLndyaXRlbGluZXMsIFsiYSJdKQogICAgICAgICB3aXRoIG9wZW4oc2VsZi5maWxlbmFtZSwgJ3JiJykgYXMgZjoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kZWNvbXByZXNzKGYucmVhZCgpKSwgc2VsZi5URVhUKQpAQCAtMTY5LDM5ICsyNDksNzMgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKElPRXJyb3IsIGJ6MmYud3JpdGUsIGIiYSIpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhJT0Vycm9yLCBiejJmLndyaXRlbGluZXMsIFtiImEiXSkKIAorICAgIGRlZiB0ZXN0QXBwZW5kKHNlbGYpOgorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSwgInciKSBhcyBiejJmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLndyaXRlKQorICAgICAgICAgICAgYnoyZi53cml0ZShzZWxmLlRFWFQpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lLCAiYSIpIGFzIGJ6MmY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmYud3JpdGUpCisgICAgICAgICAgICBiejJmLndyaXRlKHNlbGYuVEVYVCkKKyAgICAgICAgd2l0aCBvcGVuKHNlbGYuZmlsZW5hbWUsICdyYicpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGVjb21wcmVzcyhmLnJlYWQoKSksIHNlbGYuVEVYVCAqIDIpCisKICAgICBkZWYgdGVzdFNlZWtGb3J3YXJkKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkZpbGUuc2VlaygxNTAsIDApIgogICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGJ6MmYuc2VlaykKICAgICAgICAgICAgIGJ6MmYuc2VlaygxNTApCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFRbMTUwOl0pCiAKKyAgICBkZWYgdGVzdFNlZWtGb3J3YXJkQWNyb3NzU3RyZWFtcyhzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZShzdHJlYW1zPTIpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLnNlZWspCisgICAgICAgICAgICBiejJmLnNlZWsobGVuKHNlbGYuVEVYVCkgKyAxNTApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFRbMTUwOl0pCisKICAgICBkZWYgdGVzdFNlZWtCYWNrd2FyZHMoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyRmlsZS5zZWVrKC0xNTAsIDEpIgogICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CiAgICAgICAgICAgICBiejJmLnJlYWQoNTAwKQogICAgICAgICAgICAgYnoyZi5zZWVrKC0xNTAsIDEpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBzZWxmLlRFWFRbNTAwLTE1MDpdKQogCisgICAgZGVmIHRlc3RTZWVrQmFja3dhcmRzQWNyb3NzU3RyZWFtcyhzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZShzdHJlYW1zPTIpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgcmVhZHRvID0gbGVuKHNlbGYuVEVYVCkgKyAxMDAKKyAgICAgICAgICAgIHdoaWxlIHJlYWR0byA+IDA6CisgICAgICAgICAgICAgICAgcmVhZHRvIC09IGxlbihiejJmLnJlYWQocmVhZHRvKSkKKyAgICAgICAgICAgIGJ6MmYuc2VlaygtMTUwLCAxKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgc2VsZi5URVhUWzEwMC0xNTA6XSArIHNlbGYuVEVYVCkKKwogICAgIGRlZiB0ZXN0U2Vla0JhY2t3YXJkc0Zyb21FbmQoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyRmlsZS5zZWVrKC0xNTAsIDIpIgogICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKCkKICAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CiAgICAgICAgICAgICBiejJmLnNlZWsoLTE1MCwgMikKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVFtsZW4oc2VsZi5URVhUKS0xNTA6XSkKIAorICAgIGRlZiB0ZXN0U2Vla0JhY2t3YXJkc0Zyb21FbmRBY3Jvc3NTdHJlYW1zKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZVRlbXBGaWxlKHN0cmVhbXM9MikKKyAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICBiejJmLnNlZWsoLTEwMDAsIDIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCAoc2VsZi5URVhUICogMilbLTEwMDA6XSkKKwogICAgIGRlZiB0ZXN0U2Vla1Bvc3RFbmQoc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyRmlsZS5zZWVrKDE1MDAwMCkiCiAgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQogICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKICAgICAgICAgICAgIGJ6MmYuc2VlaygxNTAwMDApCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYudGVsbCgpLCBsZW4oc2VsZi5URVhUKSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIGIiIikKIAorICAgIGRlZiB0ZXN0U2Vla1Bvc3RFbmRNdWx0aVN0cmVhbShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZShzdHJlYW1zPTUpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgYnoyZi5zZWVrKDE1MDAwMCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi50ZWxsKCksIGxlbihzZWxmLlRFWFQpICogNSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIGIiIikKKwogICAgIGRlZiB0ZXN0U2Vla1Bvc3RFbmRUd2ljZShzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLnNlZWsoMTUwMDAwKSB0d2ljZSIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgogICAgICAgICAgICAgYnoyZi5zZWVrKDE1MDAwMCkKQEAgLTIwOSwyNyArMzIzLDEwMCBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnRlbGwoKSwgbGVuKHNlbGYuVEVYVCkpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBiIiIpCiAKKyAgICBkZWYgdGVzdFNlZWtQb3N0RW5kVHdpY2VNdWx0aVN0cmVhbShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZShzdHJlYW1zPTUpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgYnoyZi5zZWVrKDE1MDAwMCkKKyAgICAgICAgICAgIGJ6MmYuc2VlaygxNTAwMDApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYudGVsbCgpLCBsZW4oc2VsZi5URVhUKSAqIDUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZCgpLCBiIiIpCisKICAgICBkZWYgdGVzdFNlZWtQcmVTdGFydChzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJGaWxlLnNlZWsoLTE1MCwgMCkiCiAgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQogICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKICAgICAgICAgICAgIGJ6MmYuc2VlaygtMTUwKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnRlbGwoKSwgMCkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVCkKIAorICAgIGRlZiB0ZXN0U2Vla1ByZVN0YXJ0TXVsdGlTdHJlYW0oc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoc3RyZWFtcz0yKQorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIGJ6MmYuc2VlaygtMTUwKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnRlbGwoKSwgMCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVCAqIDIpCisKKyAgICBkZWYgdGVzdEZpbGVubyhzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCisgICAgICAgIHdpdGggb3BlbihzZWxmLmZpbGVuYW1lLCAncmInKSBhcyByYXdmOgorICAgICAgICAgICAgYnoyZiA9IEJaMkZpbGUoZmlsZW9iaj1yYXdmKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5maWxlbm8oKSwgcmF3Zi5maWxlbm8oKSkKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgYnoyZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGJ6MmYuZmlsZW5vKQorCisgICAgZGVmIHRlc3RTZWVrYWJsZShzZWxmKToKKyAgICAgICAgYnoyZiA9IEJaMkZpbGUoZmlsZW9iaj1CeXRlc0lPKHNlbGYuREFUQSkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShiejJmLnNlZWthYmxlKCkpCisgICAgICAgICAgICBiejJmLnJlYWQoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGJ6MmYuc2Vla2FibGUoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGJ6MmYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiejJmLnNlZWthYmxlKQorCisgICAgICAgIGJ6MmYgPSBCWjJGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShiejJmLnNlZWthYmxlKCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBiejJmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYnoyZi5zZWVrYWJsZSkKKworICAgIGRlZiB0ZXN0UmVhZGFibGUoc2VsZik6CisgICAgICAgIGJ6MmYgPSBCWjJGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhzZWxmLkRBVEEpKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoYnoyZi5yZWFkYWJsZSgpKQorICAgICAgICAgICAgYnoyZi5yZWFkKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShiejJmLnJlYWRhYmxlKCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBiejJmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYnoyZi5yZWFkYWJsZSkKKworICAgICAgICBiejJmID0gQloyRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoYnoyZi5yZWFkYWJsZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgYnoyZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGJ6MmYucmVhZGFibGUpCisKKyAgICBkZWYgdGVzdFdyaXRhYmxlKHNlbGYpOgorICAgICAgICBiejJmID0gQloyRmlsZShmaWxlb2JqPUJ5dGVzSU8oc2VsZi5EQVRBKSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShiejJmLndyaXRhYmxlKCkpCisgICAgICAgICAgICBiejJmLnJlYWQoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShiejJmLndyaXRhYmxlKCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBiejJmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYnoyZi53cml0YWJsZSkKKworICAgICAgICBiejJmID0gQloyRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShiejJmLndyaXRhYmxlKCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBiejJmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgYnoyZi53cml0YWJsZSkKKwogICAgIGRlZiB0ZXN0T3BlbkRlbChzZWxmKToKLSAgICAgICAgIyAiVGVzdCBvcGVuaW5nIGFuZCBkZWxldGluZyBhIGZpbGUgbWFueSB0aW1lcyIKICAgICAgICAgc2VsZi5jcmVhdGVUZW1wRmlsZSgpCiAgICAgICAgIGZvciBpIGluIHJhbmdlKDEwMDAwKToKICAgICAgICAgICAgIG8gPSBCWjJGaWxlKHNlbGYuZmlsZW5hbWUpCiAgICAgICAgICAgICBkZWwgbwogCiAgICAgZGVmIHRlc3RPcGVuTm9uZXhpc3RlbnQoc2VsZik6Ci0gICAgICAgICMgIlRlc3Qgb3BlbmluZyBhIG5vbmV4aXN0ZW50IGZpbGUiCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKElPRXJyb3IsIEJaMkZpbGUsICIvbm9uL2V4aXN0ZW50IikKIAotICAgIGRlZiB0ZXN0QnVnMTE5MTA0MyhzZWxmKToKLSAgICAgICAgIyByZWFkbGluZXMoKSBmb3IgZmlsZXMgY29udGFpbmluZyBubyBuZXdsaW5lCisgICAgZGVmIHRlc3RSZWFkbGluZXNOb05ld2xpbmUoc2VsZik6CisgICAgICAgICMgSXNzdWUgIzExOTEwNDM6IHJlYWRsaW5lcygpIGZhaWxzIG9uIGEgZmlsZSBjb250YWluaW5nIG5vIG5ld2xpbmUuCiAgICAgICAgIGRhdGEgPSBiJ0JaaDkxQVkmU1lceGQ5Ylx4ODldXHgwMFx4MDBceDAwXHgwM1x4ODBceDA0XHgwMFx4MDJceDAwXHgwY1x4MDAgXHgwMCFceDlhaDNNXHgxMzxdXHhjOVx4MTRceGUxQkNlXHg4YSV0JwogICAgICAgICB3aXRoIG9wZW4oc2VsZi5maWxlbmFtZSwgIndiIikgYXMgZjoKICAgICAgICAgICAgIGYud3JpdGUoZGF0YSkKQEAgLTI0MSw3ICs0MjgsNiBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHhsaW5lcywgW2InVGVzdCddKQogCiAgICAgZGVmIHRlc3RDb250ZXh0UHJvdG9jb2woc2VsZik6Ci0gICAgICAgICMgQloyRmlsZSBzdXBwb3J0cyB0aGUgY29udGV4dCBtYW5hZ2VtZW50IHByb3RvY29sCiAgICAgICAgIGYgPSBOb25lCiAgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lLCAid2IiKSBhcyBmOgogICAgICAgICAgICAgZi53cml0ZShiInh4eCIpCkBAIC0yNjQsNyArNDUwLDcgQEAKIAogICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZGluZywgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCiAgICAgZGVmIHRlc3RUaHJlYWRpbmcoc2VsZik6Ci0gICAgICAgICMgVXNpbmcgYSBCWjJGaWxlIGZyb20gc2V2ZXJhbCB0aHJlYWRzIGRvZXNuJ3QgZGVhZGxvY2sgKGlzc3VlICM3MjA1KS4KKyAgICAgICAgIyBJc3N1ZSAjNzIwNTogVXNpbmcgYSBCWjJGaWxlIGZyb20gc2V2ZXJhbCB0aHJlYWRzIHNob3VsZG4ndCBkZWFkbG9jay4KICAgICAgICAgZGF0YSA9IGIiMSIgKiAyKioyMAogICAgICAgICBudGhyZWFkcyA9IDEwCiAgICAgICAgIHdpdGggYnoyLkJaMkZpbGUoc2VsZi5maWxlbmFtZSwgJ3diJykgYXMgZjoKQEAgLTI3NywyMiArNDYzLDgzIEBACiAgICAgICAgICAgICBmb3IgdCBpbiB0aHJlYWRzOgogICAgICAgICAgICAgICAgIHQuam9pbigpCiAKLSAgICBkZWYgdGVzdE1peGVkSXRlcmF0aW9uUmVhZHMoc2VsZik6Ci0gICAgICAgICMgSXNzdWUgIzgzOTc6IG1peGVkIGl0ZXJhdGlvbiBhbmQgcmVhZHMgc2hvdWxkIGJlIGZvcmJpZGRlbi4KLSAgICAgICAgd2l0aCBiejIuQloyRmlsZShzZWxmLmZpbGVuYW1lLCAnd2InKSBhcyBmOgotICAgICAgICAgICAgIyBUaGUgaW50ZXJuYWwgYnVmZmVyIHNpemUgaXMgaGFyZC13aXJlZCB0byA4MTkyIGJ5dGVzLCB3ZSBtdXN0Ci0gICAgICAgICAgICAjIHdyaXRlIG91dCBtb3JlIHRoYW4gdGhhdCBmb3IgdGhlIHRlc3QgdG8gc3RvcCBoYWxmIHRocm91Z2gKLSAgICAgICAgICAgICMgdGhlIGJ1ZmZlci4KLSAgICAgICAgICAgIGYud3JpdGUoc2VsZi5URVhUICogMTAwKQotICAgICAgICB3aXRoIGJ6Mi5CWjJGaWxlKHNlbGYuZmlsZW5hbWUsICdyYicpIGFzIGY6Ci0gICAgICAgICAgICBuZXh0KGYpCi0gICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnJlYWQpCi0gICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnJlYWRsaW5lKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5yZWFkbGluZXMpCisgICAgZGVmIHRlc3RXaXRob3V0VGhyZWFkaW5nKHNlbGYpOgorICAgICAgICBiejIgPSBzdXBwb3J0LmltcG9ydF9mcmVzaF9tb2R1bGUoImJ6MiIsIGJsb2NrZWQ9KCJ0aHJlYWRpbmciLCkpCisgICAgICAgIHdpdGggYnoyLkJaMkZpbGUoc2VsZi5maWxlbmFtZSwgIndiIikgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoYiJhYmMiKQorICAgICAgICB3aXRoIGJ6Mi5CWjJGaWxlKHNlbGYuZmlsZW5hbWUsICJyYiIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBiImFiYyIpCisKKyAgICBkZWYgdGVzdE1peGVkSXRlcmF0aW9uQW5kUmVhZHMoc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlVGVtcEZpbGUoKQorICAgICAgICBsaW5lbGVuID0gbGVuKHNlbGYuVEVYVF9MSU5FU1swXSkKKyAgICAgICAgaGFsZmxlbiA9IGxpbmVsZW4gLy8gMgorICAgICAgICB3aXRoIGJ6Mi5CWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICBiejJmLnJlYWQoaGFsZmxlbikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV4dChiejJmKSwgc2VsZi5URVhUX0xJTkVTWzBdW2hhbGZsZW46XSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVFtsaW5lbGVuOl0pCisgICAgICAgIHdpdGggYnoyLkJaMkZpbGUoc2VsZi5maWxlbmFtZSkgYXMgYnoyZjoKKyAgICAgICAgICAgIGJ6MmYucmVhZGxpbmUoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZXh0KGJ6MmYpLCBzZWxmLlRFWFRfTElORVNbMV0pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ6MmYucmVhZGxpbmUoKSwgc2VsZi5URVhUX0xJTkVTWzJdKQorICAgICAgICB3aXRoIGJ6Mi5CWjJGaWxlKHNlbGYuZmlsZW5hbWUpIGFzIGJ6MmY6CisgICAgICAgICAgICBiejJmLnJlYWRsaW5lcygpCisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFN0b3BJdGVyYXRpb24pOgorICAgICAgICAgICAgICAgIG5leHQoYnoyZikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkbGluZXMoKSwgW10pCisKKyAgICBkZWYgdGVzdE11bHRpU3RyZWFtT3JkZXJpbmcoc2VsZik6CisgICAgICAgICMgVGVzdCB0aGUgb3JkZXJpbmcgb2Ygc3RyZWFtcyB3aGVuIHJlYWRpbmcgYSBtdWx0aS1zdHJlYW0gYXJjaGl2ZS4KKyAgICAgICAgZGF0YTEgPSBiImZvbyIgKiAxMDAwCisgICAgICAgIGRhdGEyID0gYiJiYXIiICogMTAwMAorICAgICAgICB3aXRoIEJaMkZpbGUoc2VsZi5maWxlbmFtZSwgInciKSBhcyBiejJmOgorICAgICAgICAgICAgYnoyZi53cml0ZShkYXRhMSkKKyAgICAgICAgd2l0aCBCWjJGaWxlKHNlbGYuZmlsZW5hbWUsICJhIikgYXMgYnoyZjoKKyAgICAgICAgICAgIGJ6MmYud3JpdGUoZGF0YTIpCisgICAgICAgIHdpdGggQloyRmlsZShzZWxmLmZpbGVuYW1lKSBhcyBiejJmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgZGF0YTEgKyBkYXRhMikKKworICAgICMgVGVzdHMgZm9yIGEgQloyRmlsZSB3cmFwcGluZyBhbm90aGVyIGZpbGUgb2JqZWN0OgorCisgICAgZGVmIHRlc3RSZWFkQnl0ZXNJTyhzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKHNlbGYuREFUQSkgYXMgYmlvOgorICAgICAgICAgICAgd2l0aCBCWjJGaWxlKGZpbGVvYmo9YmlvKSBhcyBiejJmOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZi5yZWFkLCBOb25lKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZi5yZWFkKCksIHNlbGYuVEVYVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoYmlvLmNsb3NlZCkKKworICAgIGRlZiB0ZXN0UGVla0J5dGVzSU8oc2VsZik6CisgICAgICAgIHdpdGggQnl0ZXNJTyhzZWxmLkRBVEEpIGFzIGJpbzoKKyAgICAgICAgICAgIHdpdGggQloyRmlsZShmaWxlb2JqPWJpbykgYXMgYnoyZjoKKyAgICAgICAgICAgICAgICBwZGF0YSA9IGJ6MmYucGVlaygpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChsZW4ocGRhdGEpLCAwKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLlRFWFQuc3RhcnRzd2l0aChwZGF0YSkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgc2VsZi5URVhUKQorCisgICAgZGVmIHRlc3RXcml0ZUJ5dGVzSU8oc2VsZik6CisgICAgICAgIHdpdGggQnl0ZXNJTygpIGFzIGJpbzoKKyAgICAgICAgICAgIHdpdGggQloyRmlsZShmaWxlb2JqPWJpbywgbW9kZT0idyIpIGFzIGJ6MmY6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJmLndyaXRlKQorICAgICAgICAgICAgICAgIGJ6MmYud3JpdGUoc2VsZi5URVhUKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRlY29tcHJlc3MoYmlvLmdldHZhbHVlKCkpLCBzZWxmLlRFWFQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGJpby5jbG9zZWQpCisKKyAgICBkZWYgdGVzdFNlZWtGb3J3YXJkQnl0ZXNJTyhzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKHNlbGYuREFUQSkgYXMgYmlvOgorICAgICAgICAgICAgd2l0aCBCWjJGaWxlKGZpbGVvYmo9YmlvKSBhcyBiejJmOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZi5zZWVrKQorICAgICAgICAgICAgICAgIGJ6MmYuc2VlaygxNTApCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgc2VsZi5URVhUWzE1MDpdKQorCisgICAgZGVmIHRlc3RTZWVrQmFja3dhcmRzQnl0ZXNJTyhzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKHNlbGYuREFUQSkgYXMgYmlvOgorICAgICAgICAgICAgd2l0aCBCWjJGaWxlKGZpbGVvYmo9YmlvKSBhcyBiejJmOgorICAgICAgICAgICAgICAgIGJ6MmYucmVhZCg1MDApCisgICAgICAgICAgICAgICAgYnoyZi5zZWVrKC0xNTAsIDEpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiejJmLnJlYWQoKSwgc2VsZi5URVhUWzUwMC0xNTA6XSkKIAogY2xhc3MgQloyQ29tcHJlc3NvclRlc3QoQmFzZVRlc3QpOgogICAgIGRlZiB0ZXN0Q29tcHJlc3Moc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyQ29tcHJlc3Nvci5jb21wcmVzcygpL2ZsdXNoKCkiCiAgICAgICAgIGJ6MmMgPSBCWjJDb21wcmVzc29yKCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBiejJjLmNvbXByZXNzKQogICAgICAgICBkYXRhID0gYnoyYy5jb21wcmVzcyhzZWxmLlRFWFQpCkBAIC0zMDAsMTEgKzU0NywxMCBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGVjb21wcmVzcyhkYXRhKSwgc2VsZi5URVhUKQogCiAgICAgZGVmIHRlc3RDb21wcmVzc0NodW5rczEwKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkNvbXByZXNzb3IuY29tcHJlc3MoKS9mbHVzaCgpIHdpdGggY2h1bmtzIG9mIDEwIGJ5dGVzIgogICAgICAgICBiejJjID0gQloyQ29tcHJlc3NvcigpCiAgICAgICAgIG4gPSAwCiAgICAgICAgIGRhdGEgPSBiJycKLSAgICAgICAgd2hpbGUgMToKKyAgICAgICAgd2hpbGUgVHJ1ZToKICAgICAgICAgICAgIHN0ciA9IHNlbGYuVEVYVFtuKjEwOihuKzEpKjEwXQogICAgICAgICAgICAgaWYgbm90IHN0cjoKICAgICAgICAgICAgICAgICBicmVhawpAQCAtMzEzLDIzICs1NTksMzggQEAKICAgICAgICAgZGF0YSArPSBiejJjLmZsdXNoKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRlY29tcHJlc3MoZGF0YSksIHNlbGYuVEVYVCkKIAorICAgIEBiaWdtZW10ZXN0KHNpemU9XzRHICsgMTAwLCBtZW11c2U9MikKKyAgICBkZWYgdGVzdENvbXByZXNzNEcoc2VsZiwgc2l6ZSk6CisgICAgICAgICMgIlRlc3QgQloyQ29tcHJlc3Nvci5jb21wcmVzcygpL2ZsdXNoKCkgd2l0aCA+NEdpQiBpbnB1dCIKKyAgICAgICAgYnoyYyA9IEJaMkNvbXByZXNzb3IoKQorICAgICAgICBkYXRhID0gYiJ4IiAqIHNpemUKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY29tcHJlc3NlZCA9IGJ6MmMuY29tcHJlc3MoZGF0YSkKKyAgICAgICAgICAgIGNvbXByZXNzZWQgKz0gYnoyYy5mbHVzaCgpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBkYXRhID0gTm9uZSAgIyBSZWxlYXNlIG1lbW9yeQorICAgICAgICBkYXRhID0gYnoyLmRlY29tcHJlc3MoY29tcHJlc3NlZCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oZGF0YSksIHNpemUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihkYXRhLnN0cmlwKGIieCIpKSwgMCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGRhdGEgPSBOb25lCisKIGNsYXNzIEJaMkRlY29tcHJlc3NvclRlc3QoQmFzZVRlc3QpOgogICAgIGRlZiB0ZXN0X0NvbnN0cnVjdG9yKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIEJaMkRlY29tcHJlc3NvciwgNDIpCiAKICAgICBkZWYgdGVzdERlY29tcHJlc3Moc2VsZik6Ci0gICAgICAgICMgIlRlc3QgQloyRGVjb21wcmVzc29yLmRlY29tcHJlc3MoKSIKICAgICAgICAgYnoyZCA9IEJaMkRlY29tcHJlc3NvcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYnoyZC5kZWNvbXByZXNzKQogICAgICAgICB0ZXh0ID0gYnoyZC5kZWNvbXByZXNzKHNlbGYuREFUQSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXh0LCBzZWxmLlRFWFQpCiAKICAgICBkZWYgdGVzdERlY29tcHJlc3NDaHVua3MxMChzZWxmKToKLSAgICAgICAgIyAiVGVzdCBCWjJEZWNvbXByZXNzb3IuZGVjb21wcmVzcygpIHdpdGggY2h1bmtzIG9mIDEwIGJ5dGVzIgogICAgICAgICBiejJkID0gQloyRGVjb21wcmVzc29yKCkKICAgICAgICAgdGV4dCA9IGInJwogICAgICAgICBuID0gMAotICAgICAgICB3aGlsZSAxOgorICAgICAgICB3aGlsZSBUcnVlOgogICAgICAgICAgICAgc3RyID0gc2VsZi5EQVRBW24qMTA6KG4rMSkqMTBdCiAgICAgICAgICAgICBpZiBub3Qgc3RyOgogICAgICAgICAgICAgICAgIGJyZWFrCkBAIC0zMzgsNyArNTk5LDYgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXh0LCBzZWxmLlRFWFQpCiAKICAgICBkZWYgdGVzdERlY29tcHJlc3NVbnVzZWREYXRhKHNlbGYpOgotICAgICAgICAjICJUZXN0IEJaMkRlY29tcHJlc3Nvci5kZWNvbXByZXNzKCkgd2l0aCB1bnVzZWQgZGF0YSIKICAgICAgICAgYnoyZCA9IEJaMkRlY29tcHJlc3NvcigpCiAgICAgICAgIHVudXNlZF9kYXRhID0gYiJ0aGlzIGlzIHVudXNlZCBkYXRhIgogICAgICAgICB0ZXh0ID0gYnoyZC5kZWNvbXByZXNzKHNlbGYuREFUQSt1bnVzZWRfZGF0YSkKQEAgLTM0NiwzNCArNjA2LDQ5IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnoyZC51bnVzZWRfZGF0YSwgdW51c2VkX2RhdGEpCiAKICAgICBkZWYgdGVzdEVPRkVycm9yKHNlbGYpOgotICAgICAgICAjICJDYWxsaW5nIEJaMkRlY29tcHJlc3Nvci5kZWNvbXByZXNzKCkgYWZ0ZXIgRU9TIG11c3QgcmFpc2UgRU9GRXJyb3IiCiAgICAgICAgIGJ6MmQgPSBCWjJEZWNvbXByZXNzb3IoKQogICAgICAgICB0ZXh0ID0gYnoyZC5kZWNvbXByZXNzKHNlbGYuREFUQSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoRU9GRXJyb3IsIGJ6MmQuZGVjb21wcmVzcywgYiJhbnl0aGluZyIpCiAKKyAgICBAYmlnbWVtdGVzdChzaXplPV80RyArIDEwMCwgbWVtdXNlPTMpCisgICAgZGVmIHRlc3REZWNvbXByZXNzNEcoc2VsZiwgc2l6ZSk6CisgICAgICAgICMgIlRlc3QgQloyRGVjb21wcmVzc29yLmRlY29tcHJlc3MoKSB3aXRoID40R2lCIGlucHV0IgorICAgICAgICBibG9ja3NpemUgPSAxMCAqIDEwMjQgKiAxMDI0CisgICAgICAgIGJsb2NrID0gcmFuZG9tLmdldHJhbmRiaXRzKGJsb2Nrc2l6ZSAqIDgpLnRvX2J5dGVzKGJsb2Nrc2l6ZSwgJ2xpdHRsZScpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGRhdGEgPSBibG9jayAqIChzaXplIC8vIGJsb2Nrc2l6ZSArIDEpCisgICAgICAgICAgICBjb21wcmVzc2VkID0gYnoyLmNvbXByZXNzKGRhdGEpCisgICAgICAgICAgICBiejJkID0gQloyRGVjb21wcmVzc29yKCkKKyAgICAgICAgICAgIGRlY29tcHJlc3NlZCA9IGJ6MmQuZGVjb21wcmVzcyhjb21wcmVzc2VkKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGRlY29tcHJlc3NlZCA9PSBkYXRhKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZGF0YSA9IE5vbmUKKyAgICAgICAgICAgIGNvbXByZXNzZWQgPSBOb25lCisgICAgICAgICAgICBkZWNvbXByZXNzZWQgPSBOb25lCisKIAogY2xhc3MgRnVuY1Rlc3QoQmFzZVRlc3QpOgogICAgICJUZXN0IG1vZHVsZSBmdW5jdGlvbnMiCiAKICAgICBkZWYgdGVzdENvbXByZXNzKHNlbGYpOgotICAgICAgICAjICJUZXN0IGNvbXByZXNzKCkgZnVuY3Rpb24iCiAgICAgICAgIGRhdGEgPSBiejIuY29tcHJlc3Moc2VsZi5URVhUKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGVjb21wcmVzcyhkYXRhKSwgc2VsZi5URVhUKQogCiAgICAgZGVmIHRlc3REZWNvbXByZXNzKHNlbGYpOgotICAgICAgICAjICJUZXN0IGRlY29tcHJlc3MoKSBmdW5jdGlvbiIKICAgICAgICAgdGV4dCA9IGJ6Mi5kZWNvbXByZXNzKHNlbGYuREFUQSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXh0LCBzZWxmLlRFWFQpCiAKICAgICBkZWYgdGVzdERlY29tcHJlc3NFbXB0eShzZWxmKToKLSAgICAgICAgIyAiVGVzdCBkZWNvbXByZXNzKCkgZnVuY3Rpb24gd2l0aCBlbXB0eSBzdHJpbmciCiAgICAgICAgIHRleHQgPSBiejIuZGVjb21wcmVzcyhiIiIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgYiIiKQogCiAgICAgZGVmIHRlc3REZWNvbXByZXNzSW5jb21wbGV0ZShzZWxmKToKLSAgICAgICAgIyAiVGVzdCBkZWNvbXByZXNzKCkgZnVuY3Rpb24gd2l0aCBpbmNvbXBsZXRlIGRhdGEiCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGJ6Mi5kZWNvbXByZXNzLCBzZWxmLkRBVEFbOi0xMF0pCiAKKyAgICBkZWYgdGVzdERlY29tcHJlc3NNdWx0aVN0cmVhbShzZWxmKToKKyAgICAgICAgdGV4dCA9IGJ6Mi5kZWNvbXByZXNzKHNlbGYuREFUQSAqIDUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgc2VsZi5URVhUICogNSkKKwogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KAogICAgICAgICBCWjJGaWxlVGVzdCwKQEAgLTM4NSw1ICs2NjAsMyBAQAogCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgogICAgIHRlc3RfbWFpbigpCi0KLSMgdmltOnRzPTQ6c3c9NApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jYWxlbmRhci5weSBiL0xpYi90ZXN0L3Rlc3RfY2FsZW5kYXIucHkKaW5kZXggZDMwOTNhYy4uNzE4MGFmZSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jYWxlbmRhci5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NhbGVuZGFyLnB5CkBAIC0xNzcsNyArMTc3LDcgQEAKICAgICAgICAgICAgIHJldHVybiBub3QgYy5pc3NwYWNlKCkgYW5kIG5vdCBjLmlzZGlnaXQoKQogCiAgICAgICAgIGxpbmVzID0gW10KLSAgICAgICAgZm9yIGxpbmUgaW4gcy5zcGxpdGxpbmVzKEZhbHNlKToKKyAgICAgICAgZm9yIGxpbmUgaW4gcy5zcGxpdGxpbmVzKGtlZXBlbmRzPUZhbHNlKToKICAgICAgICAgICAgICMgRHJvcCB0ZXh0cywgYXMgdGhleSBhcmUgbG9jYWxlIGRlcGVuZGVudAogICAgICAgICAgICAgaWYgbGluZSBhbmQgbm90IGZpbHRlcihuZWl0aGVyc3BhY2Vub3JkaWdpdCwgbGluZSk6CiAgICAgICAgICAgICAgICAgbGluZXMuYXBwZW5kKGxpbmUpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2NhcGkucHkgYi9MaWIvdGVzdC90ZXN0X2NhcGkucHkKaW5kZXggYzJjNjMzZi4uMmY5NGY5MCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jYXBpLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfY2FwaS5weQpAQCAtMjEwLDE4ICsyMTAsMTcgQEAKICAgICAgICAgaWRlbnRzID0gW10KIAogICAgICAgICBkZWYgY2FsbGJhY2soKToKLSAgICAgICAgICAgIGlkZW50cy5hcHBlbmQoX3RocmVhZC5nZXRfaWRlbnQoKSkKKyAgICAgICAgICAgIGlkZW50cy5hcHBlbmQodGhyZWFkaW5nLmdldF9pZGVudCgpKQogCiAgICAgICAgIF90ZXN0Y2FwaS5fdGVzdF90aHJlYWRfc3RhdGUoY2FsbGJhY2spCiAgICAgICAgIGEgPSBiID0gY2FsbGJhY2sKICAgICAgICAgdGltZS5zbGVlcCgxKQogICAgICAgICAjIENoZWNrIG91ciBtYWluIHRocmVhZCBpcyBpbiB0aGUgbGlzdCBleGFjdGx5IDMgdGltZXMuCi0gICAgICAgIGlmIGlkZW50cy5jb3VudChfdGhyZWFkLmdldF9pZGVudCgpKSAhPSAzOgorICAgICAgICBpZiBpZGVudHMuY291bnQodGhyZWFkaW5nLmdldF9pZGVudCgpKSAhPSAzOgogICAgICAgICAgICAgcmFpc2Ugc3VwcG9ydC5UZXN0RmFpbGVkKAogICAgICAgICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGZpbmQgbWFpbiB0aHJlYWQgY29ycmVjdGx5IGluIHRoZSBsaXN0IikKIAogICAgIGlmIHRocmVhZGluZzoKLSAgICAgICAgaW1wb3J0IF90aHJlYWQKICAgICAgICAgaW1wb3J0IHRpbWUKICAgICAgICAgVGVzdFRocmVhZFN0YXRlKCkKICAgICAgICAgdCA9IHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PVRlc3RUaHJlYWRTdGF0ZSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY2dpLnB5IGIvTGliL3Rlc3QvdGVzdF9jZ2kucHkKaW5kZXggOTk1MWU5My4uY2I1OTAwOCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jZ2kucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jZ2kucHkKQEAgLTE1NSwxMyArMTU1LDcgQEAKICAgICAgICAgICAgIGNnaS5sb2dmcCA9IE5vbmUKICAgICAgICAgICAgIGNnaS5sb2dmaWxlID0gIi9kZXYvbnVsbCIKICAgICAgICAgICAgIGNnaS5pbml0bG9nKCIlcyIsICJUZXN0aW5nIGxvZyAzIikKLSAgICAgICAgICAgIGRlZiBsb2dfY2xlYW51cCgpOgotICAgICAgICAgICAgICAgICIiIlJlc3RvcmUgdGhlIGdsb2JhbCBzdGF0ZSBvZiB0aGUgbG9nIHZhcnMuIiIiCi0gICAgICAgICAgICAgICAgY2dpLmxvZ2ZpbGUgPSAnJwotICAgICAgICAgICAgICAgIGNnaS5sb2dmcC5jbG9zZSgpCi0gICAgICAgICAgICAgICAgY2dpLmxvZ2ZwID0gTm9uZQotICAgICAgICAgICAgICAgIGNnaS5sb2cgPSBjZ2kuaW5pdGxvZwotICAgICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKGxvZ19jbGVhbnVwKQorICAgICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKGNnaS5jbG9zZWxvZykKICAgICAgICAgICAgIGNnaS5sb2coIlRlc3RpbmcgbG9nIDQiKQogCiAgICAgZGVmIHRlc3RfZmllbGRzdG9yYWdlX3JlYWRsaW5lKHNlbGYpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jZ2l0Yi5weSBiL0xpYi90ZXN0L3Rlc3RfY2dpdGIucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTZhNGIxYQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L3Rlc3RfY2dpdGIucHkKQEAgLTAsMCArMSw1NSBAQAorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdAoraW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgc3lzCitpbXBvcnQgc3VicHJvY2VzcworaW1wb3J0IGNnaXRiCisKK2NsYXNzIFRlc3RDZ2l0Yih1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9mb250cyhzZWxmKToKKyAgICAgICAgdGV4dCA9ICJIZWxsbyBSb2JiaWUhIgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNnaXRiLnNtYWxsKHRleHQpLCAiPHNtYWxsPnt9PC9zbWFsbD4iLmZvcm1hdCh0ZXh0KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjZ2l0Yi5zdHJvbmcodGV4dCksICI8c3Ryb25nPnt9PC9zdHJvbmc+Ii5mb3JtYXQodGV4dCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2dpdGIuZ3JleSh0ZXh0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnPGZvbnQgY29sb3I9IiM5MDkwOTAiPnt9PC9mb250PicuZm9ybWF0KHRleHQpKQorCisgICAgZGVmIHRlc3RfYmxhbmtzKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNnaXRiLnNtYWxsKCIiKSwgIiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2dpdGIuc3Ryb25nKCIiKSwgIiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2dpdGIuZ3JleSgiIiksICIiKQorCisgICAgZGVmIHRlc3RfaHRtbChzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiSGVsbG8gV29ybGQiKQorICAgICAgICBleGNlcHQgVmFsdWVFcnJvciBhcyBlcnI6CisgICAgICAgICAgICAjIElmIHRoZSBodG1sIHdhcyB0ZW1wbGF0ZWQgd2UgY291bGQgZG8gYSBiaXQgbW9yZSBoZXJlLgorICAgICAgICAgICAgIyBBdCBsZWFzdCBjaGVjayB0aGF0IHdlIGdldCBkZXRhaWxzIG9uIHdoYXQgd2UganVzdCByYWlzZWQuCisgICAgICAgICAgICBodG1sID0gY2dpdGIuaHRtbChzeXMuZXhjX2luZm8oKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oIlZhbHVlRXJyb3IiLCBodG1sKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihzdHIoZXJyKSwgaHRtbCkKKworICAgIGRlZiB0ZXN0X3RleHQoc2VsZik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkhlbGxvIFdvcmxkIikKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZXJyOgorICAgICAgICAgICAgdGV4dCA9IGNnaXRiLnRleHQoc3lzLmV4Y19pbmZvKCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEluKCJWYWx1ZUVycm9yIiwgdGV4dCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oIkhlbGxvIFdvcmxkIiwgdGV4dCkKKworICAgIGRlZiB0ZXN0X2hvb2soc2VsZik6CisgICAgICAgIHByb2MgPSBzdWJwcm9jZXNzLlBvcGVuKFtzeXMuZXhlY3V0YWJsZSwgJy1jJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnaW1wb3J0IGNnaXRiOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY2dpdGIuZW5hYmxlKCk7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdyYWlzZSBWYWx1ZUVycm9yKCJIZWxsbyBXb3JsZCIpJyldLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFKQorICAgICAgICBvdXQgPSBwcm9jLnN0ZG91dC5yZWFkKCkuZGVjb2RlKHN5cy5nZXRmaWxlc3lzdGVtZW5jb2RpbmcoKSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHByb2Muc3Rkb3V0LmNsb3NlKQorICAgICAgICBzZWxmLmFzc2VydEluKCJWYWx1ZUVycm9yIiwgb3V0KQorICAgICAgICBzZWxmLmFzc2VydEluKCJIZWxsbyBXb3JsZCIsIG91dCkKKworCitkZWYgdGVzdF9tYWluKCk6CisgICAgcnVuX3VuaXR0ZXN0KFRlc3RDZ2l0YikKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jbWRfbGluZS5weSBiL0xpYi90ZXN0L3Rlc3RfY21kX2xpbmUucHkKaW5kZXggMmZjYTI1ZS4uNzBkZmIxNyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jbWRfbGluZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NtZF9saW5lLnB5CkBAIC0zMSwxMiArMzEsNiBAQAogICAgICAgICBzZWxmLnZlcmlmeV92YWxpZF9mbGFnKCctTycpCiAgICAgICAgIHNlbGYudmVyaWZ5X3ZhbGlkX2ZsYWcoJy1PTycpCiAKLSAgICBkZWYgdGVzdF9xKHNlbGYpOgotICAgICAgICBzZWxmLnZlcmlmeV92YWxpZF9mbGFnKCctUW9sZCcpCi0gICAgICAgIHNlbGYudmVyaWZ5X3ZhbGlkX2ZsYWcoJy1RbmV3JykKLSAgICAgICAgc2VsZi52ZXJpZnlfdmFsaWRfZmxhZygnLVF3YXJuJykKLSAgICAgICAgc2VsZi52ZXJpZnlfdmFsaWRfZmxhZygnLVF3YXJuYWxsJykKLQogICAgIGRlZiB0ZXN0X3NpdGVfZmxhZyhzZWxmKToKICAgICAgICAgc2VsZi52ZXJpZnlfdmFsaWRfZmxhZygnLVMnKQogCkBAIC0xNTEsNyArMTQ1LDcgQEAKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gJ2RhcndpbicsICd0ZXN0IHNwZWNpZmljIHRvIE1hYyBPUyBYJykKICAgICBkZWYgdGVzdF9vc3hfdXRmOChzZWxmKToKICAgICAgICAgZGVmIGNoZWNrX291dHB1dCh0ZXh0KToKLSAgICAgICAgICAgIGRlY29kZWQgPSB0ZXh0LmRlY29kZSgndXRmOCcsICdzdXJyb2dhdGVlc2NhcGUnKQorICAgICAgICAgICAgZGVjb2RlZCA9IHRleHQuZGVjb2RlKCd1dGYtOCcsICdzdXJyb2dhdGVlc2NhcGUnKQogICAgICAgICAgICAgZXhwZWN0ZWQgPSBhc2NpaShkZWNvZGVkKS5lbmNvZGUoJ2FzY2lpJykgKyBiJ1xuJwogCiAgICAgICAgICAgICBlbnYgPSBvcy5lbnZpcm9uLmNvcHkoKQpAQCAtMjIzLDcgKzIxNyw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0SW4ocGF0aDIuZW5jb2RlKCdhc2NpaScpLCBvdXQpCiAKICAgICBkZWYgdGVzdF9kaXNwbGF5aG9va191bmVuY29kYWJsZShzZWxmKToKLSAgICAgICAgZm9yIGVuY29kaW5nIGluICgnYXNjaWknLCAnbGF0aW4xJywgJ3V0ZjgnKToKKyAgICAgICAgZm9yIGVuY29kaW5nIGluICgnYXNjaWknLCAnbGF0aW4tMScsICd1dGYtOCcpOgogICAgICAgICAgICAgZW52ID0gb3MuZW52aXJvbi5jb3B5KCkKICAgICAgICAgICAgIGVudlsnUFlUSE9OSU9FTkNPRElORyddID0gZW5jb2RpbmcKICAgICAgICAgICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKApAQCAtMjgyLDcgKzI3Niw3IEBACiAgICAgICAgIHJjLCBvdXQsIGVyciA9IGFzc2VydF9weXRob25fb2soJy1jJywgY29kZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiJycsIG91dCkKICAgICAgICAgc2VsZi5hc3NlcnRSZWdleChlcnIuZGVjb2RlKCdhc2NpaScsICdpZ25vcmUnKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAnRXhjZXB0aW9uIElPRXJyb3I6IC4qIGlnbm9yZWQnKQorICAgICAgICAgICAgICAgICAgICAgICAgICdFeGNlcHRpb24gT1NFcnJvcjogLiogaWdub3JlZCcpCiAKICAgICBkZWYgdGVzdF9jbG9zZWRfc3Rkb3V0KHNlbGYpOgogICAgICAgICAjIElzc3VlICMxMzQ0NDogaWYgc3Rkb3V0IGhhcyBiZWVuIGV4cGxpY2l0bHkgY2xvc2VkLCB3ZSBzaG91bGQKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY29kZS5weSBiL0xpYi90ZXN0L3Rlc3RfY29kZS5weQppbmRleCBlMWM3YTc4Li4zMzc3YTdiIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2NvZGUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jb2RlLnB5CkBAIC0xNiw3ICsxNiw3IEBACiBmcmVldmFyczogKCkKIG5sb2NhbHM6IDIKIGZsYWdzOiAzCi1jb25zdHM6ICgnTm9uZScsICc8Y29kZSBvYmplY3QgZz4nKQorY29uc3RzOiAoJ05vbmUnLCAnPGNvZGUgb2JqZWN0IGc+JywgIidmLjxsb2NhbHM+LmcnIikKIAogPj4+IGR1bXAoZig0KS5fX2NvZGVfXykKIG5hbWU6IGcKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY29kZWNjYWxsYmFja3MucHkgYi9MaWIvdGVzdC90ZXN0X2NvZGVjY2FsbGJhY2tzLnB5CmluZGV4IGM1YjFlMjUuLjgxYmY4MGQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29kZWNjYWxsYmFja3MucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jb2RlY2NhbGxiYWNrcy5weQpAQCAtMSw1ICsxLDE4IEBACi1pbXBvcnQgdGVzdC5zdXBwb3J0LCB1bml0dGVzdAotaW1wb3J0IHN5cywgY29kZWNzLCBodG1sLmVudGl0aWVzLCB1bmljb2RlZGF0YQoraW1wb3J0IGNvZGVjcworaW1wb3J0IGh0bWwuZW50aXRpZXMKK2ltcG9ydCBzeXMKK2ltcG9ydCB0ZXN0LnN1cHBvcnQKK2ltcG9ydCB1bmljb2RlZGF0YQoraW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgd2FybmluZ3MKKwordHJ5OgorICAgIGltcG9ydCBjdHlwZXMKK2V4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICBjdHlwZXMgPSBOb25lCisgICAgU0laRU9GX1dDSEFSX1QgPSAtMQorZWxzZToKKyAgICBTSVpFT0ZfV0NIQVJfVCA9IGN0eXBlcy5zaXplb2YoY3R5cGVzLmNfd2NoYXIpCiAKIGNsYXNzIFBvc1JldHVybjoKICAgICAjIHRoaXMgY2FuIGJlIHVzZWQgZm9yIGNvbmZpZ3VyYWJsZSBjYWxsYmFja3MKQEAgLTEzNSwyMiArMTQ4LDE0IEBACiAgICAgZGVmIHRlc3RfYmFja3NsYXNoZXNjYXBlKHNlbGYpOgogICAgICAgICAjIERvZXMgdGhlIHNhbWUgYXMgdGhlICJ1bmljb2RlLWVzY2FwZSIgZW5jb2RpbmcsIGJ1dCB3aXRoIGRpZmZlcmVudAogICAgICAgICAjIGJhc2UgZW5jb2RpbmdzLgotICAgICAgICBzaW4gPSAiYVx4YWNcdTEyMzRcdTIwYWNcdTgwMDAiCi0gICAgICAgIGlmIHN5cy5tYXh1bmljb2RlID4gMHhmZmZmOgotICAgICAgICAgICAgc2luICs9IGNocihzeXMubWF4dW5pY29kZSkKLSAgICAgICAgc291dCA9IGIiYVxceGFjXFx1MTIzNFxcdTIwYWNcXHU4MDAwIgotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKLSAgICAgICAgICAgIHNvdXQgKz0gYnl0ZXMoIlxcVSUwOHgiICUgc3lzLm1heHVuaWNvZGUsICJhc2NpaSIpCisgICAgICAgIHNpbiA9ICJhXHhhY1x1MTIzNFx1MjBhY1x1ODAwMFxVMDAxMGZmZmYiCisgICAgICAgIHNvdXQgPSBiImFcXHhhY1xcdTEyMzRcXHUyMGFjXFx1ODAwMFxcVTAwMTBmZmZmIgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpbi5lbmNvZGUoImFzY2lpIiwgImJhY2tzbGFzaHJlcGxhY2UiKSwgc291dCkKIAotICAgICAgICBzb3V0ID0gYiJhXHhhY1xcdTEyMzRcXHUyMGFjXFx1ODAwMCIKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPiAweGZmZmY6Ci0gICAgICAgICAgICBzb3V0ICs9IGJ5dGVzKCJcXFUlMDh4IiAlIHN5cy5tYXh1bmljb2RlLCAiYXNjaWkiKQorICAgICAgICBzb3V0ID0gYiJhXHhhY1xcdTEyMzRcXHUyMGFjXFx1ODAwMFxcVTAwMTBmZmZmIgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpbi5lbmNvZGUoImxhdGluLTEiLCAiYmFja3NsYXNocmVwbGFjZSIpLCBzb3V0KQogCi0gICAgICAgIHNvdXQgPSBiImFceGFjXFx1MTIzNFx4YTRcXHU4MDAwIgotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKLSAgICAgICAgICAgIHNvdXQgKz0gYnl0ZXMoIlxcVSUwOHgiICUgc3lzLm1heHVuaWNvZGUsICJhc2NpaSIpCisgICAgICAgIHNvdXQgPSBiImFceGFjXFx1MTIzNFx4YTRcXHU4MDAwXFxVMDAxMGZmZmYiCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2luLmVuY29kZSgiaXNvLTg4NTktMTUiLCAiYmFja3NsYXNocmVwbGFjZSIpLCBzb3V0KQogCiAgICAgZGVmIHRlc3RfZGVjb2RpbmdfY2FsbGJhY2tzKHNlbGYpOgpAQCAtMjAwLDMzICsyMDUsMzcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjb2RlY3MuY2hhcm1hcF9lbmNvZGUsIHNpbiwgInJlcGxhY2UiLCBjaGFybWFwKQogCiAgICAgZGVmIHRlc3RfZGVjb2RldW5pY29kZWludGVybmFsKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcygKLSAgICAgICAgICAgIFVuaWNvZGVEZWNvZGVFcnJvciwKLSAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLmRlY29kZSwKLSAgICAgICAgICAgICJ1bmljb2RlLWludGVybmFsIiwKLSAgICAgICAgKQotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKKyAgICAgICAgd2l0aCB0ZXN0LnN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCd1bmljb2RlX2ludGVybmFsIGNvZGVjIGhhcyBiZWVuICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZXByZWNhdGVkJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcygKKyAgICAgICAgICAgICAgICBVbmljb2RlRGVjb2RlRXJyb3IsCisgICAgICAgICAgICAgICAgYiJceDAwXHgwMFx4MDBceDAwXHgwMCIuZGVjb2RlLAorICAgICAgICAgICAgICAgICJ1bmljb2RlLWludGVybmFsIiwKKyAgICAgICAgICAgICkKKyAgICAgICAgaWYgU0laRU9GX1dDSEFSX1QgPT0gNDoKICAgICAgICAgICAgIGRlZiBoYW5kbGVyX3VuaWNvZGVpbnRlcm5hbChleGMpOgogICAgICAgICAgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKGV4YywgVW5pY29kZURlY29kZUVycm9yKToKICAgICAgICAgICAgICAgICAgICAgcmFpc2UgVHlwZUVycm9yKCJkb24ndCBrbm93IGhvdyB0byBoYW5kbGUgJXIiICUgZXhjKQogICAgICAgICAgICAgICAgIHJldHVybiAoIlx4MDEiLCAxKQogCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLmRlY29kZSgidW5pY29kZS1pbnRlcm5hbCIsICJpZ25vcmUiKSwKLSAgICAgICAgICAgICAgICAiXHUwMDAwIgotICAgICAgICAgICAgKQorICAgICAgICAgICAgd2l0aCB0ZXN0LnN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCd1bmljb2RlX2ludGVybmFsIGNvZGVjIGhhcyBiZWVuICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVwcmVjYXRlZCcsIERlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLmRlY29kZSgidW5pY29kZS1pbnRlcm5hbCIsICJpZ25vcmUiKSwKKyAgICAgICAgICAgICAgICAgICAgIlx1MDAwMCIKKyAgICAgICAgICAgICAgICApCiAKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICAgICAgYiJceDAwXHgwMFx4MDBceDAwXHgwMCIuZGVjb2RlKCJ1bmljb2RlLWludGVybmFsIiwgInJlcGxhY2UiKSwKLSAgICAgICAgICAgICAgICAiXHUwMDAwXHVmZmZkIgotICAgICAgICAgICAgKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLmRlY29kZSgidW5pY29kZS1pbnRlcm5hbCIsICJyZXBsYWNlIiksCisgICAgICAgICAgICAgICAgICAgICJcdTAwMDBcdWZmZmQiCisgICAgICAgICAgICAgICAgKQogCi0gICAgICAgICAgICBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoInRlc3QuaHVpIiwgaGFuZGxlcl91bmljb2RlaW50ZXJuYWwpCisgICAgICAgICAgICAgICAgY29kZWNzLnJlZ2lzdGVyX2Vycm9yKCJ0ZXN0Lmh1aSIsIGhhbmRsZXJfdW5pY29kZWludGVybmFsKQogCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLmRlY29kZSgidW5pY29kZS1pbnRlcm5hbCIsICJ0ZXN0Lmh1aSIpLAotICAgICAgICAgICAgICAgICJcdTAwMDBcdTAwMDFcdTAwMDAiCi0gICAgICAgICAgICApCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgICAgICAgICAgYiJceDAwXHgwMFx4MDBceDAwXHgwMCIuZGVjb2RlKCJ1bmljb2RlLWludGVybmFsIiwgInRlc3QuaHVpIiksCisgICAgICAgICAgICAgICAgICAgICJcdTAwMDBcdTAwMDFcdTAwMDAiCisgICAgICAgICAgICAgICAgKQogCiAgICAgZGVmIHRlc3RfY2FsbGJhY2tzKHNlbGYpOgogICAgICAgICBkZWYgaGFuZGxlcjEoZXhjKToKQEAgLTM1NSw3ICszNjQsNyBAQAogICAgICAgICAgICAgWyJhc2NpaSIsICJcdWZmZmZ4IiwgMCwgMSwgIm91Y2giXSwKICAgICAgICAgICAgICInYXNjaWknIGNvZGVjIGNhbid0IGVuY29kZSBjaGFyYWN0ZXIgJ1xcdWZmZmYnIGluIHBvc2l0aW9uIDA6IG91Y2giCiAgICAgICAgICkKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPiAweGZmZmY6CisgICAgICAgIGlmIFNJWkVPRl9XQ0hBUl9UID09IDQ6CiAgICAgICAgICAgICBzZWxmLmNoZWNrX2V4Y2VwdGlvbm9iamVjdGFyZ3MoCiAgICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yLAogICAgICAgICAgICAgICAgIFsiYXNjaWkiLCAiXFUwMDAxMDAwMHgiLCAwLCAxLCAib3VjaCJdLApAQCAtMzkwLDcgKzM5OSw3IEBACiAgICAgICAgICAgICBbImdcdWZmZmZyayIsIDEsIDIsICJvdWNoIl0sCiAgICAgICAgICAgICAiY2FuJ3QgdHJhbnNsYXRlIGNoYXJhY3RlciAnXFx1ZmZmZicgaW4gcG9zaXRpb24gMTogb3VjaCIKICAgICAgICAgKQotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKKyAgICAgICAgaWYgU0laRU9GX1dDSEFSX1QgPT0gNDoKICAgICAgICAgICAgIHNlbGYuY2hlY2tfZXhjZXB0aW9ub2JqZWN0YXJncygKICAgICAgICAgICAgICAgICBVbmljb2RlVHJhbnNsYXRlRXJyb3IsCiAgICAgICAgICAgICAgICAgWyJnXFUwMDAxMDAwMHJrIiwgMSwgMiwgIm91Y2giXSwKQEAgLTU3NywzMSArNTg2LDMwIEBACiAgICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcdWZmZmYiLCAwLCAxLCAib3VjaCIpKSwKICAgICAgICAgICAgICgiXFx1ZmZmZiIsIDEpCiAgICAgICAgICkKLSAgICAgICAgIyAxIG9uIFVDUy00IGJ1aWxkcywgMiBvbiBVQ1MtMgotICAgICAgICBsZW5fd2lkZSA9IGxlbigiXFUwMDAxMDAwMCIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICBjb2RlY3MuYmFja3NsYXNocmVwbGFjZV9lcnJvcnMoCi0gICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcVTAwMDEwMDAwIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgbGVuX3dpZGUsICJvdWNoIikpLAotICAgICAgICAgICAgKCJcXFUwMDAxMDAwMCIsIGxlbl93aWRlKQotICAgICAgICApCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICBjb2RlY3MuYmFja3NsYXNocmVwbGFjZV9lcnJvcnMoCi0gICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcVTAwMTBmZmZmIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgbGVuX3dpZGUsICJvdWNoIikpLAotICAgICAgICAgICAgKCJcXFUwMDEwZmZmZiIsIGxlbl93aWRlKQotICAgICAgICApCi0gICAgICAgICMgTG9uZSBzdXJyb2dhdGVzIChyZWdhcmRsZXNzIG9mIHVuaWNvZGUgd2lkdGgpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCi0gICAgICAgICAgICBjb2RlY3MuYmFja3NsYXNocmVwbGFjZV9lcnJvcnMoCi0gICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcdWQ4MDAiLCAwLCAxLCAib3VjaCIpKSwKLSAgICAgICAgICAgICgiXFx1ZDgwMCIsIDEpCi0gICAgICAgICkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKLSAgICAgICAgICAgIGNvZGVjcy5iYWNrc2xhc2hyZXBsYWNlX2Vycm9ycygKLSAgICAgICAgICAgICAgICBVbmljb2RlRW5jb2RlRXJyb3IoImFzY2lpIiwgIlx1ZGZmZiIsIDAsIDEsICJvdWNoIikpLAotICAgICAgICAgICAgKCJcXHVkZmZmIiwgMSkKLSAgICAgICAgKQorICAgICAgICBpZiBTSVpFT0ZfV0NIQVJfVCA+IDA6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgICAgIGNvZGVjcy5iYWNrc2xhc2hyZXBsYWNlX2Vycm9ycygKKyAgICAgICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcVTAwMDEwMDAwIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDEsICJvdWNoIikpLAorICAgICAgICAgICAgICAgICgiXFxVMDAwMTAwMDAiLCAxKQorICAgICAgICAgICAgKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgICAgICBjb2RlY3MuYmFja3NsYXNocmVwbGFjZV9lcnJvcnMoCisgICAgICAgICAgICAgICAgICAgIFVuaWNvZGVFbmNvZGVFcnJvcigiYXNjaWkiLCAiXFUwMDEwZmZmZiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLCAxLCAib3VjaCIpKSwKKyAgICAgICAgICAgICAgICAoIlxcVTAwMTBmZmZmIiwgMSkKKyAgICAgICAgICAgICkKKyAgICAgICAgICAgICMgTG9uZSBzdXJyb2dhdGVzIChyZWdhcmRsZXNzIG9mIHVuaWNvZGUgd2lkdGgpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgICAgIGNvZGVjcy5iYWNrc2xhc2hyZXBsYWNlX2Vycm9ycygKKyAgICAgICAgICAgICAgICAgICAgVW5pY29kZUVuY29kZUVycm9yKCJhc2NpaSIsICJcdWQ4MDAiLCAwLCAxLCAib3VjaCIpKSwKKyAgICAgICAgICAgICAgICAoIlxcdWQ4MDAiLCAxKQorICAgICAgICAgICAgKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgICAgICBjb2RlY3MuYmFja3NsYXNocmVwbGFjZV9lcnJvcnMoCisgICAgICAgICAgICAgICAgICAgIFVuaWNvZGVFbmNvZGVFcnJvcigiYXNjaWkiLCAiXHVkZmZmIiwgMCwgMSwgIm91Y2giKSksCisgICAgICAgICAgICAgICAgKCJcXHVkZmZmIiwgMSkKKyAgICAgICAgICAgICkKIAogICAgIGRlZiB0ZXN0X2JhZGhhbmRsZXJyZXN1bHRzKHNlbGYpOgogICAgICAgICByZXN1bHRzID0gKCA0MiwgImZvbyIsICgxLDIsMyksICgiZm9vIiwgMSwgMyksICgiZm9vIiwgTm9uZSksICgiZm9vIiwpLCAoImZvbyIsIDEsIDMpLCAoImZvbyIsIE5vbmUpLCAoImZvbyIsKSApCkBAIC02MjIsMTIgKzYzMCwxNCBAQAogICAgICAgICAgICAgICAgICgidXRmLTciLCBiIit4LSIpLAogICAgICAgICAgICAgICAgICgidW5pY29kZS1pbnRlcm5hbCIsIGIiXHgwMCIpLAogICAgICAgICAgICAgKToKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcygKLSAgICAgICAgICAgICAgICAgICAgVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICBieXRlcy5kZWNvZGUsCi0gICAgICAgICAgICAgICAgICAgIGVuYywKLSAgICAgICAgICAgICAgICAgICAgInRlc3QuYmFkaGFuZGxlciIKLSAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgd2l0aCB0ZXN0LnN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKToKKyAgICAgICAgICAgICAgICAgICAgIyB1bmljb2RlLWludGVybmFsIGhhcyBiZWVuIGRlcHJlY2F0ZWQKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoCisgICAgICAgICAgICAgICAgICAgICAgICBUeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICBieXRlcy5kZWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICBlbmMsCisgICAgICAgICAgICAgICAgICAgICAgICAidGVzdC5iYWRoYW5kbGVyIgorICAgICAgICAgICAgICAgICAgICApCiAKICAgICBkZWYgdGVzdF9sb29rdXAoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29kZWNzLnN0cmljdF9lcnJvcnMsIGNvZGVjcy5sb29rdXBfZXJyb3IoInN0cmljdCIpKQpAQCAtNjc5LDcgKzY4OSw3IEBACiAgICAgICAgICMgUHl0aG9uL2NvZGVjcy5jOjpQeUNvZGVjX1hNTENoYXJSZWZSZXBsYWNlRXJyb3JzKCkKICAgICAgICAgIyBhbmQgaW5saW5lIGltcGxlbWVudGF0aW9ucwogICAgICAgICB2ID0gKDEsIDUsIDEwLCA1MCwgMTAwLCA1MDAsIDEwMDAsIDUwMDAsIDEwMDAwLCA1MDAwMCkKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGU+PTEwMDAwMDoKKyAgICAgICAgaWYgU0laRU9GX1dDSEFSX1QgPT0gNDoKICAgICAgICAgICAgIHYgKz0gKDEwMDAwMCwgNTAwMDAwLCAxMDAwMDAwKQogICAgICAgICBzID0gIiIuam9pbihbY2hyKHgpIGZvciB4IGluIHZdKQogICAgICAgICBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoInRlc3QueG1sY2hhcnJlZnJlcGxhY2UiLCBjb2RlY3MueG1sY2hhcnJlZnJlcGxhY2VfZXJyb3JzKQpAQCAtODQzLDggKzg1MywxMiBAQAogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoImRvbid0IGtub3cgaG93IHRvIGhhbmRsZSAlciIgJSBleGMpCiAgICAgICAgIGNvZGVjcy5yZWdpc3Rlcl9lcnJvcigidGVzdC5yZXBsYWNpbmciLCByZXBsYWNpbmcpCi0gICAgICAgIGZvciAoZW5jb2RpbmcsIGRhdGEpIGluIGJhZGRhdGE6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGRhdGEuZGVjb2RlLCBlbmNvZGluZywgInRlc3QucmVwbGFjaW5nIikKKworICAgICAgICB3aXRoIHRlc3Quc3VwcG9ydC5jaGVja193YXJuaW5ncygpOgorICAgICAgICAgICAgIyB1bmljb2RlLWludGVybmFsIGhhcyBiZWVuIGRlcHJlY2F0ZWQKKyAgICAgICAgICAgIGZvciAoZW5jb2RpbmcsIGRhdGEpIGluIGJhZGRhdGE6CisgICAgICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAgICAgICAgICBkYXRhLmRlY29kZShlbmNvZGluZywgInRlc3QucmVwbGFjaW5nIikKIAogICAgICAgICBkZWYgbXV0YXRpbmcoZXhjKToKICAgICAgICAgICAgIGlmIGlzaW5zdGFuY2UoZXhjLCBVbmljb2RlRGVjb2RlRXJyb3IpOgpAQCAtODU1LDggKzg2OSwxMSBAQAogICAgICAgICBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoInRlc3QubXV0YXRpbmciLCBtdXRhdGluZykKICAgICAgICAgIyBJZiB0aGUgZGVjb2RlciBkb2Vzbid0IHBpY2sgdXAgdGhlIG1vZGlmaWVkIGlucHV0IHRoZSBmb2xsb3dpbmcKICAgICAgICAgIyB3aWxsIGxlYWQgdG8gYW4gZW5kbGVzcyBsb29wCi0gICAgICAgIGZvciAoZW5jb2RpbmcsIGRhdGEpIGluIGJhZGRhdGE6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGRhdGEuZGVjb2RlLCBlbmNvZGluZywgInRlc3QucmVwbGFjaW5nIikKKyAgICAgICAgd2l0aCB0ZXN0LnN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKToKKyAgICAgICAgICAgICMgdW5pY29kZS1pbnRlcm5hbCBoYXMgYmVlbiBkZXByZWNhdGVkCisgICAgICAgICAgICBmb3IgKGVuY29kaW5nLCBkYXRhKSBpbiBiYWRkYXRhOgorICAgICAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgICAgICAgICAgZGF0YS5kZWNvZGUoZW5jb2RpbmcsICJ0ZXN0LnJlcGxhY2luZyIpCiAKIGRlZiB0ZXN0X21haW4oKToKICAgICB0ZXN0LnN1cHBvcnQucnVuX3VuaXR0ZXN0KENvZGVjQ2FsbGJhY2tUZXN0KQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19jbi5weSBiL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfY24ucHkKaW5kZXggZGNhOWYxMC4uZWUzZDE2NSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19jbi5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvZGVjZW5jb2RpbmdzX2NuLnB5CkBAIC0xNSw4ICsxNSw4IEBACiAgICAgICAgICMgaW52YWxpZCBieXRlcwogICAgICAgICAoYiJhYmNceDgxXHg4MVx4YzFceGM0IiwgInN0cmljdCIsICBOb25lKSwKICAgICAgICAgKGIiYWJjXHhjOCIsICJzdHJpY3QiLCAgTm9uZSksCi0gICAgICAgIChiImFiY1x4ODFceDgxXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdTgwNGEiKSwKLSAgICAgICAgKGIiYWJjXHg4MVx4ODFceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdTgwNGFcdWZmZmQiKSwKKyAgICAgICAgKGIiYWJjXHg4MVx4ODFceGMxXHhjNCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmZmZFx1ODA0YSIpLAorICAgICAgICAoYiJhYmNceDgxXHg4MVx4YzFceGM0XHhjOCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmZmZFx1ODA0YVx1ZmZmZCIpLAogICAgICAgICAoYiJhYmNceDgxXHg4MVx4YzFceGM0IiwgImlnbm9yZSIsICAiYWJjXHU4MDRhIiksCiAgICAgICAgIChiIlx4YzFceDY0IiwgInN0cmljdCIsIE5vbmUpLAogICAgICkKQEAgLTI4LDggKzI4LDggQEAKICAgICAgICAgIyBpbnZhbGlkIGJ5dGVzCiAgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAic3RyaWN0IiwgIE5vbmUpLAogICAgICAgICAoYiJhYmNceGM4IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ODA0YSIpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0XHhjOCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ODA0YVx1ZmZmZCIpLAorICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHU4MDRhIiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHU4MDRhXHVmZmZkIiksCiAgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAiaWdub3JlIiwgICJhYmNcdTgwNGEiKSwKICAgICAgICAgKGIiXHg4M1x4MzRceDgzXHgzMSIsICJzdHJpY3QiLCBOb25lKSwKICAgICAgICAgKCJcdTMwZmIiLCAic3RyaWN0IiwgTm9uZSksCkBAIC00MiwxMSArNDIsMTQgQEAKICAgICAgICAgIyBpbnZhbGlkIGJ5dGVzCiAgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAic3RyaWN0IiwgIE5vbmUpLAogICAgICAgICAoYiJhYmNceGM4IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ODA0YSIpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0XHhjOCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ODA0YVx1ZmZmZCIpLAorICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHU4MDRhIiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHU4MDRhXHVmZmZkIiksCiAgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAiaWdub3JlIiwgICJhYmNcdTgwNGEiKSwKLSAgICAgICAgKGIiYWJjXHg4NFx4MzlceDg0XHgzOVx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU4MDRhIiksCisgICAgICAgIChiImFiY1x4ODRceDM5XHg4NFx4MzlceGMxXHhjNCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZDlcdWZmZmQ5XHU4MDRhIiksCiAgICAgICAgICgiXHUzMGZiIiwgInN0cmljdCIsIGIiXHg4MTlceGE3OSIpLAorICAgICAgICAoYiJhYmNceDg0XHgzMlx4ODBceDgwZGVmIiwgInJlcGxhY2UiLCAnYWJjXHVmZmZkMlx1ZmZmZFx1ZmZmZGRlZicpLAorICAgICAgICAoYiJhYmNceDgxXHgzMFx4ODFceDMwZGVmIiwgInN0cmljdCIsICdhYmNceDgwZGVmJyksCisgICAgICAgIChiImFiY1x4ODZceDMwXHg4MVx4MzBkZWYiLCAicmVwbGFjZSIsICdhYmNcdWZmZmQwXHVmZmZkMGRlZicpLAogICAgICkKICAgICBoYXNfaXNvMTA2NDYgPSBUcnVlCiAKQEAgLTc0LDkgKzc3LDExIEBACiAgICAgICAgICAnXHU1ZGYxXHU2MjQwXHU0ZTBkXHU2YjMyXHVmZjBjXHU1MmZmXHU2NWJkXHU2NWJjXHU0ZWJhXHUzMDAyJwogICAgICAgICAgJ0J5ZS5cbicpLAogICAgICAgICAjIGludmFsaWQgYnl0ZXMKLSAgICAgICAgKGInYWJ+Y2QnLCAncmVwbGFjZScsICdhYlx1RkZGRGQnKSwKKyAgICAgICAgKGInYWJ+Y2QnLCAncmVwbGFjZScsICdhYlx1RkZGRGNkJyksCiAgICAgICAgIChiJ2FiXHhmZmNkJywgJ3JlcGxhY2UnLCAnYWJcdUZGRkRjZCcpLAogICAgICAgICAoYidhYn57XHg4MVx4ODFceDQxXHg0NH59Y2QnLCAncmVwbGFjZScsICdhYlx1RkZGRFx1RkZGRFx1ODA0QWNkJyksCisgICAgICAgIChiJ2FifntceDQxXHg0NH59Y2QnLCAncmVwbGFjZScsICdhYlx1ODA0QWNkJyksCisgICAgICAgIChiImFifntceDc5XHg3OVx4NDFceDQ0fn1jZCIsICJyZXBsYWNlIiwgImFiXHVmZmZkXHVmZmZkXHU4MDRhY2QiKSwKICAgICApCiAKIGRlZiB0ZXN0X21haW4oKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfaGsucHkgYi9MaWIvdGVzdC90ZXN0X2NvZGVjZW5jb2RpbmdzX2hrLnB5CmluZGV4IGNjZGMwYjQuLjUyMGRmNDMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfaGsucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19oay5weQpAQCAtMTUsOCArMTUsOCBAQAogICAgICAgICAjIGludmFsaWQgYnl0ZXMKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJzdHJpY3QiLCAgTm9uZSksCiAgICAgICAgIChiImFiY1x4YzgiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU4YjEwIiksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU4YjEwXHVmZmZkIiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdThiMTAiKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdThiMTBcdWZmZmQiKSwKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJpZ25vcmUiLCAgImFiY1x1OGIxMCIpLAogICAgICkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19qcC5weSBiL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfanAucHkKaW5kZXggZjU2YTM3My4uODdlNDgxMiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19qcC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvZGVjZW5jb2RpbmdzX2pwLnB5CkBAIC0xNSw1MCArMTUsNTcgQEAKICAgICAgICAgIyBpbnZhbGlkIGJ5dGVzCiAgICAgICAgIChiImFiY1x4ODFceDAwXHg4MVx4MDBceDgyXHg4NCIsICJzdHJpY3QiLCAgTm9uZSksCiAgICAgICAgIChiImFiY1x4ZjgiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceDgxXHgwMFx4ODJceDg0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZjQ0IiksCi0gICAgICAgIChiImFiY1x4ODFceDAwXHg4Mlx4ODRceDg4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZjQ0XHVmZmZkIiksCi0gICAgICAgIChiImFiY1x4ODFceDAwXHg4Mlx4ODQiLCAiaWdub3JlIiwgICJhYmNcdWZmNDQiKSwKKyAgICAgICAgKGIiYWJjXHg4MVx4MDBceDgyXHg4NCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx4MDBcdWZmNDQiKSwKKyAgICAgICAgKGIiYWJjXHg4MVx4MDBceDgyXHg4NFx4ODgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRceDAwXHVmZjQ0XHVmZmZkIiksCisgICAgICAgIChiImFiY1x4ODFceDAwXHg4Mlx4ODQiLCAiaWdub3JlIiwgICJhYmNceDAwXHVmZjQ0IiksCisgICAgICAgIChiImFiXHhFQnh5IiwgInJlcGxhY2UiLCAiYWJcdUZGRkR4eSIpLAorICAgICAgICAoYiJhYlx4RjBceDM5eHkiLCAicmVwbGFjZSIsICJhYlx1RkZGRDl4eSIpLAorICAgICAgICAoYiJhYlx4RUFceEYweHkiLCAicmVwbGFjZSIsICdhYlx1ZmZmZFx1ZTAzOHknKSwKICAgICAgICAgIyBzamlzIHZzIGNwOTMyCiAgICAgICAgIChiIlxcXHg3ZSIsICJyZXBsYWNlIiwgIlxcXHg3ZSIpLAogICAgICAgICAoYiJceDgxXHg1Zlx4ODFceDYxXHg4MVx4N2MiLCAicmVwbGFjZSIsICJcdWZmM2NcdTIyMjVcdWZmMGQiKSwKICAgICApCiAKK2V1Y19jb21tb250ZXN0cyA9ICgKKyAgICAjIGludmFsaWQgYnl0ZXMKKyAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInN0cmljdCIsICBOb25lKSwKKyAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHU3OTU2IiksCisgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdTc5NTZcdWZmZmQiKSwKKyAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgImlnbm9yZSIsICAiYWJjXHU3OTU2IiksCisgICAgKGIiYWJjXHhjOCIsICJzdHJpY3QiLCAgTm9uZSksCisgICAgKGIiYWJjXHg4Zlx4ODNceDgzIiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHVmZmZkIiksCisgICAgKGIiXHg4Mlx4RkN4eSIsICJyZXBsYWNlIiwgIlx1ZmZmZFx1ZmZmZHh5IiksCisgICAgKGIiXHhjMVx4NjQiLCAic3RyaWN0IiwgTm9uZSksCisgICAgKGIiXHhhMVx4YzAiLCAic3RyaWN0IiwgIlx1ZmYzYyIpLAorICAgIChiIlx4YTFceGMwXFwiLCAic3RyaWN0IiwgIlx1ZmYzY1xcIiksCisgICAgKGIiXHg4ZVhZIiwgInJlcGxhY2UiLCAiXHVmZmZkWFkiKSwKKykKKworY2xhc3MgVGVzdF9FVUNfSklTXzIwMDQodGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LlRlc3RCYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGVuY29kaW5nID0gJ2V1Y19qaXNfMjAwNCcKKyAgICB0c3RyaW5nID0gdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LmxvYWRfdGVzdHN0cmluZygnZXVjX2ppc3gwMjEzJykKKyAgICBjb2RlY3Rlc3RzID0gZXVjX2NvbW1vbnRlc3RzCisgICAgeG1sY2hhcm5hbWV0ZXN0ID0gKAorICAgICAgICAiXHhhYlx1MjExY1x4YmIgPSBcdTIzMjlcdTEyMzRcdTIzMmEiLAorICAgICAgICBiIlx4YTlceGE4JnJlYWw7XHhhOVx4YjIgPSAmbGFuZzsmIzQ2NjA7JnJhbmc7IgorICAgICkKKwogY2xhc3MgVGVzdF9FVUNfSklTWDAyMTModGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LlRlc3RCYXNlLAogICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGVuY29kaW5nID0gJ2V1Y19qaXN4MDIxMycKICAgICB0c3RyaW5nID0gdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LmxvYWRfdGVzdHN0cmluZygnZXVjX2ppc3gwMjEzJykKLSAgICBjb2RlY3Rlc3RzID0gKAotICAgICAgICAjIGludmFsaWQgYnl0ZXMKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJzdHJpY3QiLCAgTm9uZSksCi0gICAgICAgIChiImFiY1x4YzgiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU3OTU2IiksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU3OTU2XHVmZmZkIiksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAiaWdub3JlIiwgICJhYmNcdTc5NTYiKSwKLSAgICAgICAgKGIiYWJjXHg4Zlx4ODNceDgzIiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkIiksCi0gICAgICAgIChiIlx4YzFceDY0IiwgInN0cmljdCIsIE5vbmUpLAotICAgICAgICAoYiJceGExXHhjMCIsICJzdHJpY3QiLCAiXHVmZjNjIiksCi0gICAgKQorICAgIGNvZGVjdGVzdHMgPSBldWNfY29tbW9udGVzdHMKICAgICB4bWxjaGFybmFtZXRlc3QgPSAoCiAgICAgICAgICJceGFiXHUyMTFjXHhiYiA9IFx1MjMyOVx1MTIzNFx1MjMyYSIsCiAgICAgICAgIGIiXHhhOVx4YTgmcmVhbDtceGE5XHhiMiA9ICZsYW5nOyYjNDY2MDsmcmFuZzsiCiAgICAgKQogCi1ldWNqcF9jb21tb250ZXN0cyA9ICgKLSAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAoYiJhYmNceGM4IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU3OTU2IiksCi0gICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdTc5NTZcdWZmZmQiKSwKLSAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgImlnbm9yZSIsICAiYWJjXHU3OTU2IiksCi0gICAgKGIiYWJjXHg4Zlx4ODNceDgzIiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkIiksCi0gICAgKGIiXHhjMVx4NjQiLCAic3RyaWN0IiwgTm9uZSksCi0pCi0KIGNsYXNzIFRlc3RfRVVDX0pQX0NPTVBBVCh0ZXN0X211bHRpYnl0ZWNvZGVjX3N1cHBvcnQuVGVzdEJhc2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGVuY29kaW5nID0gJ2V1Y19qcCcKICAgICB0c3RyaW5nID0gdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LmxvYWRfdGVzdHN0cmluZygnZXVjX2pwJykKLSAgICBjb2RlY3Rlc3RzID0gZXVjanBfY29tbW9udGVzdHMgKyAoCi0gICAgICAgIChiIlx4YTFceGMwXFwiLCAic3RyaWN0IiwgIlx1ZmYzY1xcIiksCisgICAgY29kZWN0ZXN0cyA9IGV1Y19jb21tb250ZXN0cyArICgKICAgICAgICAgKCJceGE1IiwgInN0cmljdCIsIGIiXHg1YyIpLAogICAgICAgICAoIlx1MjAzZSIsICJzdHJpY3QiLCBiIlx4N2UiKSwKICAgICApCkBAIC02Niw4ICs3Myw2IEBACiBzaGlmdGppc19jb21tb25lbmN0ZXN0cyA9ICgKICAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0IiwgInN0cmljdCIsICBOb25lKSwKICAgICAoYiJhYmNceGY4IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZjQ0IiksCi0gICAgKGIiYWJjXHg4MFx4ODBceDgyXHg4NFx4ODgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmNDRcdWZmZmQiKSwKICAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0ZGVmIiwgImlnbm9yZSIsICAiYWJjXHVmZjQ0ZGVmIiksCiApCiAKQEAgLTc1LDIwICs4MCw0MSBAQAogICAgIGVuY29kaW5nID0gJ3NoaWZ0X2ppcycKICAgICB0c3RyaW5nID0gdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LmxvYWRfdGVzdHN0cmluZygnc2hpZnRfamlzJykKICAgICBjb2RlY3Rlc3RzID0gc2hpZnRqaXNfY29tbW9uZW5jdGVzdHMgKyAoCisgICAgICAgIChiImFiY1x4ODBceDgwXHg4Mlx4ODQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdWZmNDQiKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceDgyXHg4NFx4ODgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdWZmNDRcdWZmZmQiKSwKKwogICAgICAgICAoYiJcXFx4N2UiLCAic3RyaWN0IiwgIlxcXHg3ZSIpLAogICAgICAgICAoYiJceDgxXHg1Zlx4ODFceDYxXHg4MVx4N2MiLCAic3RyaWN0IiwgIlx1ZmYzY1x1MjAxNlx1MjIxMiIpLAorICAgICAgICAoYiJhYmNceDgxXHgzOSIsICJyZXBsYWNlIiwgICJhYmNcdWZmZmQ5IiksCisgICAgICAgIChiImFiY1x4RUFceEZDIiwgInJlcGxhY2UiLCAgImFiY1x1ZmZmZFx1ZmZmZCIpLAorICAgICAgICAoYiJhYmNceEZGXHg1OCIsICJyZXBsYWNlIiwgICJhYmNcdWZmZmRYIiksCisgICAgKQorCitjbGFzcyBUZXN0X1NKSVNfMjAwNCh0ZXN0X211bHRpYnl0ZWNvZGVjX3N1cHBvcnQuVGVzdEJhc2UsIHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBlbmNvZGluZyA9ICdzaGlmdF9qaXNfMjAwNCcKKyAgICB0c3RyaW5nID0gdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LmxvYWRfdGVzdHN0cmluZygnc2hpZnRfamlzJykKKyAgICBjb2RlY3Rlc3RzID0gc2hpZnRqaXNfY29tbW9uZW5jdGVzdHMgKyAoCisgICAgICAgIChiIlxcXHg3ZSIsICJzdHJpY3QiLCAiXHhhNVx1MjAzZSIpLAorICAgICAgICAoYiJceDgxXHg1Zlx4ODFceDYxXHg4MVx4N2MiLCAic3RyaWN0IiwgIlxcXHUyMDE2XHUyMjEyIiksCisgICAgICAgIChiImFiY1x4RUFceEZDIiwgInN0cmljdCIsICAiYWJjXHU2NGJmIiksCisgICAgICAgIChiIlx4ODFceDM5eHkiLCAicmVwbGFjZSIsICAiXHVmZmZkOXh5IiksCisgICAgICAgIChiIlx4RkZceDU4eHkiLCAicmVwbGFjZSIsICAiXHVmZmZkWHh5IiksCisgICAgICAgIChiIlx4ODBceDgwXHg4Mlx4ODR4eSIsICJyZXBsYWNlIiwgIlx1ZmZmZFx1ZmZmZFx1ZmY0NHh5IiksCisgICAgICAgIChiIlx4ODBceDgwXHg4Mlx4ODRceDg4eHkiLCAicmVwbGFjZSIsICJcdWZmZmRcdWZmZmRcdWZmNDRcdTU4NjR5IiksCisgICAgICAgIChiIlx4RkNceEZCeHkiLCAicmVwbGFjZSIsICdcdWZmZmRcdTk1YjR5JyksCisgICAgKQorICAgIHhtbGNoYXJuYW1ldGVzdCA9ICgKKyAgICAgICAgIlx4YWJcdTIxMWNceGJiID0gXHUyMzI5XHUxMjM0XHUyMzJhIiwKKyAgICAgICAgYiJceDg1RyZyZWFsO1x4ODVRID0gJmxhbmc7JiM0NjYwOyZyYW5nOyIKICAgICApCiAKIGNsYXNzIFRlc3RfU0pJU1gwMjEzKHRlc3RfbXVsdGlieXRlY29kZWNfc3VwcG9ydC5UZXN0QmFzZSwgdW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGVuY29kaW5nID0gJ3NoaWZ0X2ppc3gwMjEzJwogICAgIHRzdHJpbmcgPSB0ZXN0X211bHRpYnl0ZWNvZGVjX3N1cHBvcnQubG9hZF90ZXN0c3RyaW5nKCdzaGlmdF9qaXN4MDIxMycpCi0gICAgY29kZWN0ZXN0cyA9ICgKLSAgICAgICAgIyBpbnZhbGlkIGJ5dGVzCi0gICAgICAgIChiImFiY1x4ODBceDgwXHg4Mlx4ODQiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceGY4IiwgInN0cmljdCIsICBOb25lKSwKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceDgyXHg4NCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmY0NCIpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0XHg4OCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmY0NFx1ZmZmZCIpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0ZGVmIiwgImlnbm9yZSIsICAiYWJjXHVmZjQ0ZGVmIiksCisgICAgY29kZWN0ZXN0cyA9IHNoaWZ0amlzX2NvbW1vbmVuY3Rlc3RzICsgKAorICAgICAgICAoYiJhYmNceDgwXHg4MFx4ODJceDg0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHVmZjQ0IiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHg4Mlx4ODRceDg4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVmZmZkXHVmZjQ0XHVmZmZkIiksCisKICAgICAgICAgIyBzamlzIHZzIGNwOTMyCiAgICAgICAgIChiIlxcXHg3ZSIsICJyZXBsYWNlIiwgIlx4YTVcdTIwM2UiKSwKICAgICAgICAgKGIiXHg4MVx4NWZceDgxXHg2MVx4ODFceDdjIiwgInJlcGxhY2UiLCAiXHg1Y1x1MjAxNlx1MjIxMiIpLApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19rci5weSBiL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3Nfa3IucHkKaW5kZXggZGU0ZGE3Zi4uNDk5N2U4MyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc19rci5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvZGVjZW5jb2RpbmdzX2tyLnB5CkBAIC0xNSw4ICsxNSw4IEBACiAgICAgICAgICMgaW52YWxpZCBieXRlcwogICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInN0cmljdCIsICBOb25lKSwKICAgICAgICAgKGIiYWJjXHhjOCIsICJzdHJpY3QiLCAgTm9uZSksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWM4OTQiKSwKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWM4OTRcdWZmZmQiKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmZmZFx1Yzg5NCIpLAorICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0XHhjOCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmZmZFx1Yzg5NFx1ZmZmZCIpLAogICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgImlnbm9yZSIsICAiYWJjXHVjODk0IiksCiAgICAgKQogCkBAIC0yNyw4ICsyNyw4IEBACiAgICAgICAgICMgaW52YWxpZCBieXRlcwogICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInN0cmljdCIsICBOb25lKSwKICAgICAgICAgKGIiYWJjXHhjOCIsICJzdHJpY3QiLCAgTm9uZSksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWM4OTQiKSwKLSAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWM4OTRcdWZmZmQiKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJyZXBsYWNlIiwgJ2FiY1x1ZmZmZFx1ZmZmZFx1Yzg5NCcpLAorICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0XHhjOCIsICJyZXBsYWNlIiwgImFiY1x1ZmZmZFx1ZmZmZFx1Yzg5NFx1ZmZmZCIpLAogICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgImlnbm9yZSIsICAiYWJjXHVjODk0IiksCiAKICAgICAgICAgIyBjb21wb3NlZCBtYWtlLXVwIHNlcXVlbmNlIGVycm9ycwpAQCAtNDAsMTMgKzQwLDE0IEBACiAgICAgICAgIChiIlx4YTRceGQ0XHhhNFx4YjZceGE0XHhkMFx4YTQiLCAic3RyaWN0IiwgTm9uZSksCiAgICAgICAgIChiIlx4YTRceGQ0XHhhNFx4YjZceGE0XHhkMFx4YTRceGQ0IiwgInN0cmljdCIsICJcdWM0ZDQiKSwKICAgICAgICAgKGIiXHhhNFx4ZDRceGE0XHhiNlx4YTRceGQwXHhhNFx4ZDR4IiwgInN0cmljdCIsICJcdWM0ZDR4IiksCi0gICAgICAgIChiImFceGE0XHhkNFx4YTRceGI2XHhhNCIsICJyZXBsYWNlIiwgImFcdWZmZmQiKSwKKyAgICAgICAgKGIiYVx4YTRceGQ0XHhhNFx4YjZceGE0IiwgInJlcGxhY2UiLCAnYVx1ZmZmZCcpLAogICAgICAgICAoYiJceGE0XHhkNFx4YTNceGI2XHhhNFx4ZDBceGE0XHhkNCIsICJzdHJpY3QiLCBOb25lKSwKICAgICAgICAgKGIiXHhhNFx4ZDRceGE0XHhiNlx4YTNceGQwXHhhNFx4ZDQiLCAic3RyaWN0IiwgTm9uZSksCiAgICAgICAgIChiIlx4YTRceGQ0XHhhNFx4YjZceGE0XHhkMFx4YTNceGQ0IiwgInN0cmljdCIsIE5vbmUpLAotICAgICAgICAoYiJceGE0XHhkNFx4YTRceGZmXHhhNFx4ZDBceGE0XHhkNCIsICJyZXBsYWNlIiwgIlx1ZmZmZCIpLAotICAgICAgICAoYiJceGE0XHhkNFx4YTRceGI2XHhhNFx4ZmZceGE0XHhkNCIsICJyZXBsYWNlIiwgIlx1ZmZmZCIpLAotICAgICAgICAoYiJceGE0XHhkNFx4YTRceGI2XHhhNFx4ZDBceGE0XHhmZiIsICJyZXBsYWNlIiwgIlx1ZmZmZCIpLAorICAgICAgICAoYiJceGE0XHhkNFx4YTRceGZmXHhhNFx4ZDBceGE0XHhkNCIsICJyZXBsYWNlIiwgJ1x1ZmZmZFx1NmUyMVx1ZmZmZFx1MzE2MFx1ZmZmZCcpLAorICAgICAgICAoYiJceGE0XHhkNFx4YTRceGI2XHhhNFx4ZmZceGE0XHhkNCIsICJyZXBsYWNlIiwgJ1x1ZmZmZFx1NmUyMVx1YjU0NFx1ZmZmZFx1ZmZmZCcpLAorICAgICAgICAoYiJceGE0XHhkNFx4YTRceGI2XHhhNFx4ZDBceGE0XHhmZiIsICJyZXBsYWNlIiwgJ1x1ZmZmZFx1NmUyMVx1YjU0NFx1NTcyZFx1ZmZmZCcpLAorICAgICAgICAoYiJceGE0XHhkNFx4ZmZceGE0XHhkNFx4YTRceGI2XHhhNFx4ZDBceGE0XHhkNCIsICJyZXBsYWNlIiwgJ1x1ZmZmZFx1ZmZmZFx1ZmZmZFx1YzRkNCcpLAogICAgICAgICAoYiJceGMxXHhjNCIsICJzdHJpY3QiLCAiXHVjODk0IiksCiAgICAgKQogCkBAIC01Nyw5ICs1OCwxMyBAQAogICAgICAgICAjIGludmFsaWQgYnl0ZXMKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJzdHJpY3QiLCAgTm9uZSksCiAgICAgICAgIChiImFiY1x4YzgiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVjZDI3IiksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHVjZDI3XHVmZmZkIiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdWNkMjciKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdWNkMjdcdWZmZmQiKSwKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJpZ25vcmUiLCAgImFiY1x1Y2QyNyIpLAorICAgICAgICAoYiJceEQ4YWJjIiwgInJlcGxhY2UiLCAgIlx1RkZGRGFiYyIpLAorICAgICAgICAoYiJceEQ4XHhGRmFiYyIsICJyZXBsYWNlIiwgICJcdUZGRkRcdUZGRkRhYmMiKSwKKyAgICAgICAgKGIiXHg4NGJ4eSIsICJyZXBsYWNlIiwgICJcdUZGRkRieHkiKSwKKyAgICAgICAgKGIiXHg4Q0J4eSIsICJyZXBsYWNlIiwgICJcdUZGRkRCeHkiKSwKICAgICApCiAKIGRlZiB0ZXN0X21haW4oKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfdHcucHkgYi9MaWIvdGVzdC90ZXN0X2NvZGVjZW5jb2RpbmdzX3R3LnB5CmluZGV4IDEyZDNjOWYuLmYyZjNjMTggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29kZWNlbmNvZGluZ3NfdHcucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jb2RlY2VuY29kaW5nc190dy5weQpAQCAtMTUsOCArMTUsOCBAQAogICAgICAgICAjIGludmFsaWQgYnl0ZXMKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJzdHJpY3QiLCAgTm9uZSksCiAgICAgICAgIChiImFiY1x4YzgiLCAic3RyaWN0IiwgIE5vbmUpLAotICAgICAgICAoYiJhYmNceDgwXHg4MFx4YzFceGM0IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU4YjEwIiksCi0gICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzRceGM4IiwgInJlcGxhY2UiLCAiYWJjXHVmZmZkXHU4YjEwXHVmZmZkIiksCisgICAgICAgIChiImFiY1x4ODBceDgwXHhjMVx4YzQiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdThiMTAiKSwKKyAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNFx4YzgiLCAicmVwbGFjZSIsICJhYmNcdWZmZmRcdWZmZmRcdThiMTBcdWZmZmQiKSwKICAgICAgICAgKGIiYWJjXHg4MFx4ODBceGMxXHhjNCIsICJpZ25vcmUiLCAgImFiY1x1OGIxMCIpLAogICAgICkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb2RlY21hcHNfdHcucHkgYi9MaWIvdGVzdC90ZXN0X2NvZGVjbWFwc190dy5weQppbmRleCA2ZGI1MDkxLi40MTJiOWRlIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2NvZGVjbWFwc190dy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvZGVjbWFwc190dy5weQpAQCAtMjMsNiArMjMsOSBAQAogICAgICAgICAoYidceGEyXHhjYycsICdcdTUzNDEnKSwKICAgICAgICAgKGInXHhhMlx4Y2UnLCAnXHU1MzQ1JyksCiAgICAgXQorICAgIGNvZGVjdGVzdHMgPSAoCisgICAgICAgIChiIlx4RkZ4eSIsICJyZXBsYWNlIiwgICJcdWZmZmR4eSIpLAorICAgICkKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KF9fbmFtZV9fKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb2RlY3MucHkgYi9MaWIvdGVzdC90ZXN0X2NvZGVjcy5weQppbmRleCA0ODk5YTU5Li41ZGFhYTE5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2NvZGVjcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvZGVjcy5weQpAQCAtMSw4ICsxLDI1IEBACi1mcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKLWltcG9ydCB1bml0dGVzdAoraW1wb3J0IF90ZXN0Y2FwaQogaW1wb3J0IGNvZGVjcworaW1wb3J0IGlvCiBpbXBvcnQgbG9jYWxlCi1pbXBvcnQgc3lzLCBfdGVzdGNhcGksIGlvCitpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKK2ltcG9ydCB3YXJuaW5ncworCitmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKKworaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CisgICAgVklTVEFfT1JfTEFURVIgPSAoc3lzLmdldHdpbmRvd3N2ZXJzaW9uKCkubWFqb3IgPj0gNikKK2Vsc2U6CisgICAgVklTVEFfT1JfTEFURVIgPSBGYWxzZQorCit0cnk6CisgICAgaW1wb3J0IGN0eXBlcworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIGN0eXBlcyA9IE5vbmUKKyAgICBTSVpFT0ZfV0NIQVJfVCA9IC0xCitlbHNlOgorICAgIFNJWkVPRl9XQ0hBUl9UID0gY3R5cGVzLnNpemVvZihjdHlwZXMuY193Y2hhcikKIAogY2xhc3MgUXVldWUob2JqZWN0KToKICAgICAiIiIKQEAgLTYyMiw4ICs2MzksMTEzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgYiJhYmNceGVkXHhhMFx4ODBkZWYiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIiYWJjXHhlZFx4YTBceDgwZGVmIi5kZWNvZGUoInV0Zi04IiwgInN1cnJvZ2F0ZXBhc3MiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAiYWJjXHVkODAwZGVmIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiXFUwMDAxMGZmZlx1RDgwMCIuZW5jb2RlKCJ1dGYtOCIsICJzdXJyb2dhdGVwYXNzIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgYiJceGYwXHg5MFx4YmZceGJmXHhlZFx4YTBceDgwIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiIlx4ZjBceDkwXHhiZlx4YmZceGVkXHhhMFx4ODAiLmRlY29kZSgidXRmLTgiLCAic3Vycm9nYXRlcGFzcyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJcVTAwMDEwZmZmXHVEODAwIikKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNvZGVjcy5sb29rdXBfZXJyb3IoInN1cnJvZ2F0ZXBhc3MiKSkKIAorQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICd3aW4zMicsCisgICAgICAgICAgICAgICAgICAgICAnY3A2NTAwMSBpcyBhIFdpbmRvd3Mtb25seSBjb2RlYycpCitjbGFzcyBDUDY1MDAxVGVzdChSZWFkVGVzdCk6CisgICAgZW5jb2RpbmcgPSAiY3A2NTAwMSIKKworICAgIGRlZiB0ZXN0X2VuY29kZShzZWxmKToKKyAgICAgICAgdGVzdHMgPSBbCisgICAgICAgICAgICAoJ2FiYycsICdzdHJpY3QnLCBiJ2FiYycpLAorICAgICAgICAgICAgKCdceGU5XHUyMGFjJywgJ3N0cmljdCcsICBiJ1x4YzNceGE5XHhlMlx4ODJceGFjJyksCisgICAgICAgICAgICAoJ1xVMDAxMGZmZmYnLCAnc3RyaWN0JywgYidceGY0XHg4Zlx4YmZceGJmJyksCisgICAgICAgIF0KKyAgICAgICAgaWYgVklTVEFfT1JfTEFURVI6CisgICAgICAgICAgICB0ZXN0cy5leHRlbmQoKAorICAgICAgICAgICAgICAgICgnXHVkYzgwJywgJ3N0cmljdCcsIE5vbmUpLAorICAgICAgICAgICAgICAgICgnXHVkYzgwJywgJ2lnbm9yZScsIGInJyksCisgICAgICAgICAgICAgICAgKCdcdWRjODAnLCAncmVwbGFjZScsIGInPycpLAorICAgICAgICAgICAgICAgICgnXHVkYzgwJywgJ2JhY2tzbGFzaHJlcGxhY2UnLCBiJ1xcdWRjODAnKSwKKyAgICAgICAgICAgICAgICAoJ1x1ZGM4MCcsICdzdXJyb2dhdGVwYXNzJywgYidceGVkXHhiMlx4ODAnKSwKKyAgICAgICAgICAgICkpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICB0ZXN0cy5hcHBlbmQoKCdcdWRjODAnLCAnc3RyaWN0JywgYidceGVkXHhiMlx4ODAnKSkKKyAgICAgICAgZm9yIHRleHQsIGVycm9ycywgZXhwZWN0ZWQgaW4gdGVzdHM6CisgICAgICAgICAgICBpZiBleHBlY3RlZCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGVuY29kZWQgPSB0ZXh0LmVuY29kZSgnY3A2NTAwMScsIGVycm9ycykKKyAgICAgICAgICAgICAgICBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yIGFzIGVycjoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdVbmFibGUgdG8gZW5jb2RlICVhIHRvIGNwNjUwMDEgd2l0aCAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZXJyb3JzPSVyOiAlcycgJSAodGV4dCwgZXJyb3JzLCBlcnIpKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW5jb2RlZCwgZXhwZWN0ZWQsCisgICAgICAgICAgICAgICAgICAgICclYS5lbmNvZGUoImNwNjUwMDEiLCAlcik9JWEgIT0gJWEnCisgICAgICAgICAgICAgICAgICAgICUgKHRleHQsIGVycm9ycywgZW5jb2RlZCwgZXhwZWN0ZWQpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRW5jb2RlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgIHRleHQuZW5jb2RlLCAiY3A2NTAwMSIsIGVycm9ycykKKworICAgIGRlZiB0ZXN0X2RlY29kZShzZWxmKToKKyAgICAgICAgdGVzdHMgPSBbCisgICAgICAgICAgICAoYidhYmMnLCAnc3RyaWN0JywgJ2FiYycpLAorICAgICAgICAgICAgKGInXHhjM1x4YTlceGUyXHg4Mlx4YWMnLCAnc3RyaWN0JywgJ1x4ZTlcdTIwYWMnKSwKKyAgICAgICAgICAgIChiJ1x4ZjRceDhmXHhiZlx4YmYnLCAnc3RyaWN0JywgJ1xVMDAxMGZmZmYnKSwKKyAgICAgICAgICAgIChiJ1x4ZWZceGJmXHhiZCcsICdzdHJpY3QnLCAnXHVmZmZkJyksCisgICAgICAgICAgICAoYidbXHhjM1x4YTldJywgJ3N0cmljdCcsICdbXHhlOV0nKSwKKyAgICAgICAgICAgICMgaW52YWxpZCBieXRlcworICAgICAgICAgICAgKGInW1x4ZmZdJywgJ3N0cmljdCcsIE5vbmUpLAorICAgICAgICAgICAgKGInW1x4ZmZdJywgJ2lnbm9yZScsICdbXScpLAorICAgICAgICAgICAgKGInW1x4ZmZdJywgJ3JlcGxhY2UnLCAnW1x1ZmZmZF0nKSwKKyAgICAgICAgICAgIChiJ1tceGZmXScsICdzdXJyb2dhdGVlc2NhcGUnLCAnW1x1ZGNmZl0nKSwKKyAgICAgICAgXQorICAgICAgICBpZiBWSVNUQV9PUl9MQVRFUjoKKyAgICAgICAgICAgIHRlc3RzLmV4dGVuZCgoCisgICAgICAgICAgICAgICAgKGInW1x4ZWRceGIyXHg4MF0nLCAnc3RyaWN0JywgTm9uZSksCisgICAgICAgICAgICAgICAgKGInW1x4ZWRceGIyXHg4MF0nLCAnaWdub3JlJywgJ1tdJyksCisgICAgICAgICAgICAgICAgKGInW1x4ZWRceGIyXHg4MF0nLCAncmVwbGFjZScsICdbXHVmZmZkXHVmZmZkXHVmZmZkXScpLAorICAgICAgICAgICAgKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHRlc3RzLmV4dGVuZCgoCisgICAgICAgICAgICAgICAgKGInW1x4ZWRceGIyXHg4MF0nLCAnc3RyaWN0JywgJ1tcdWRjODBdJyksCisgICAgICAgICAgICApKQorICAgICAgICBmb3IgcmF3LCBlcnJvcnMsIGV4cGVjdGVkIGluIHRlc3RzOgorICAgICAgICAgICAgaWYgZXhwZWN0ZWQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBkZWNvZGVkID0gcmF3LmRlY29kZSgnY3A2NTAwMScsIGVycm9ycykKKyAgICAgICAgICAgICAgICBleGNlcHQgVW5pY29kZURlY29kZUVycm9yIGFzIGVycjoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdVbmFibGUgdG8gZGVjb2RlICVhIGZyb20gY3A2NTAwMSB3aXRoICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdlcnJvcnM9JXI6ICVzJyAlIChyYXcsIGVycm9ycywgZXJyKSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRlY29kZWQsIGV4cGVjdGVkLAorICAgICAgICAgICAgICAgICAgICAnJWEuZGVjb2RlKCJjcDY1MDAxIiwgJXIpPSVhICE9ICVhJworICAgICAgICAgICAgICAgICAgICAlIChyYXcsIGVycm9ycywgZGVjb2RlZCwgZXhwZWN0ZWQpKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRGVjb2RlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgIHJhdy5kZWNvZGUsICdjcDY1MDAxJywgZXJyb3JzKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoVklTVEFfT1JfTEFURVIsICdyZXF1aXJlIFdpbmRvd3MgVmlzdGEgb3IgbGF0ZXInKQorICAgIGRlZiB0ZXN0X2xvbmVfc3Vycm9nYXRlcyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZUVuY29kZUVycm9yLCAiXHVkODAwIi5lbmNvZGUsICJjcDY1MDAxIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZURlY29kZUVycm9yLCBiIlx4ZWRceGEwXHg4MCIuZGVjb2RlLCAiY3A2NTAwMSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIltcdURDODBdIi5lbmNvZGUoImNwNjUwMDEiLCAiYmFja3NsYXNocmVwbGFjZSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGInW1xcdWRjODBdJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiW1x1REM4MF0iLmVuY29kZSgiY3A2NTAwMSIsICJ4bWxjaGFycmVmcmVwbGFjZSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGInWyYjNTY0NDg7XScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIltcdURDODBdIi5lbmNvZGUoImNwNjUwMDEiLCAic3Vycm9nYXRlZXNjYXBlIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgYidbXHg4MF0nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJbXHVEQzgwXSIuZW5jb2RlKCJjcDY1MDAxIiwgImlnbm9yZSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGInW10nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJbXHVEQzgwXSIuZW5jb2RlKCJjcDY1MDAxIiwgInJlcGxhY2UiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBiJ1s/XScpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhWSVNUQV9PUl9MQVRFUiwgJ3JlcXVpcmUgV2luZG93cyBWaXN0YSBvciBsYXRlcicpCisgICAgZGVmIHRlc3Rfc3Vycm9nYXRlcGFzc19oYW5kbGVyKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJhYmNcdWQ4MDBkZWYiLmVuY29kZSgiY3A2NTAwMSIsICJzdXJyb2dhdGVwYXNzIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgYiJhYmNceGVkXHhhMFx4ODBkZWYiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIiYWJjXHhlZFx4YTBceDgwZGVmIi5kZWNvZGUoImNwNjUwMDEiLCAic3Vycm9nYXRlcGFzcyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJhYmNcdWQ4MDBkZWYiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJcVTAwMDEwZmZmXHVEODAwIi5lbmNvZGUoImNwNjUwMDEiLCAic3Vycm9nYXRlcGFzcyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGIiXHhmMFx4OTBceGJmXHhiZlx4ZWRceGEwXHg4MCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiJceGYwXHg5MFx4YmZceGJmXHhlZFx4YTBceDgwIi5kZWNvZGUoImNwNjUwMDEiLCAic3Vycm9nYXRlcGFzcyIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJcVTAwMDEwZmZmXHVEODAwIikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNvZGVjcy5sb29rdXBfZXJyb3IoInN1cnJvZ2F0ZXBhc3MiKSkKKworCisKIGNsYXNzIFVURjdUZXN0KFJlYWRUZXN0KToKICAgICBlbmNvZGluZyA9ICJ1dGYtNyIKIApAQCAtODg0LDYxICsxMDA2LDgwIEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaSwgcHVueS5kZWNvZGUoInB1bnljb2RlIikpCiAKIGNsYXNzIFVuaWNvZGVJbnRlcm5hbFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKFNJWkVPRl9XQ0hBUl9UID09IDQsICdzcGVjaWZpYyB0byAzMi1iaXQgd2NoYXJfdCcpCiAgICAgZGVmIHRlc3RfYnVnMTI1MTMwMChzZWxmKToKICAgICAgICAgIyBEZWNvZGluZyB3aXRoIHVuaWNvZGVfaW50ZXJuYWwgdXNlZCB0byBub3QgY29ycmVjdGx5IGhhbmRsZSAiY29kZQogICAgICAgICAjIHBvaW50cyIgYWJvdmUgMHgxMGZmZmYgb24gVUNTLTQgYnVpbGRzLgotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKLSAgICAgICAgICAgIG9rID0gWwotICAgICAgICAgICAgICAgIChiIlx4MDBceDEwXHhmZlx4ZmYiLCAiXFUwMDEwZmZmZiIpLAotICAgICAgICAgICAgICAgIChiIlx4MDBceDAwXHgwMVx4MDEiLCAiXFUwMDAwMDEwMSIpLAotICAgICAgICAgICAgICAgIChiIiIsICIiKSwKLSAgICAgICAgICAgIF0KLSAgICAgICAgICAgIG5vdF9vayA9IFsKLSAgICAgICAgICAgICAgICBiIlx4N2ZceGZmXHhmZlx4ZmYiLAotICAgICAgICAgICAgICAgIGIiXHg4MFx4MDBceDAwXHgwMCIsCi0gICAgICAgICAgICAgICAgYiJceDgxXHgwMFx4MDBceDAwIiwKLSAgICAgICAgICAgICAgICBiIlx4MDAiLAotICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDAiLAotICAgICAgICAgICAgXQotICAgICAgICAgICAgZm9yIGludGVybmFsLCB1bmkgaW4gb2s6Ci0gICAgICAgICAgICAgICAgaWYgc3lzLmJ5dGVvcmRlciA9PSAibGl0dGxlIjoKLSAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWwgPSBieXRlcyhyZXZlcnNlZChpbnRlcm5hbCkpCisgICAgICAgIG9rID0gWworICAgICAgICAgICAgKGIiXHgwMFx4MTBceGZmXHhmZiIsICJcVTAwMTBmZmZmIiksCisgICAgICAgICAgICAoYiJceDAwXHgwMFx4MDFceDAxIiwgIlxVMDAwMDAxMDEiKSwKKyAgICAgICAgICAgIChiIiIsICIiKSwKKyAgICAgICAgXQorICAgICAgICBub3Rfb2sgPSBbCisgICAgICAgICAgICBiIlx4N2ZceGZmXHhmZlx4ZmYiLAorICAgICAgICAgICAgYiJceDgwXHgwMFx4MDBceDAwIiwKKyAgICAgICAgICAgIGIiXHg4MVx4MDBceDAwXHgwMCIsCisgICAgICAgICAgICBiIlx4MDAiLAorICAgICAgICAgICAgYiJceDAwXHgwMFx4MDBceDAwXHgwMCIsCisgICAgICAgIF0KKyAgICAgICAgZm9yIGludGVybmFsLCB1bmkgaW4gb2s6CisgICAgICAgICAgICBpZiBzeXMuYnl0ZW9yZGVyID09ICJsaXR0bGUiOgorICAgICAgICAgICAgICAgIGludGVybmFsID0gYnl0ZXMocmV2ZXJzZWQoaW50ZXJuYWwpKQorICAgICAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCk6CiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmksIGludGVybmFsLmRlY29kZSgidW5pY29kZV9pbnRlcm5hbCIpKQotICAgICAgICAgICAgZm9yIGludGVybmFsIGluIG5vdF9vazoKLSAgICAgICAgICAgICAgICBpZiBzeXMuYnl0ZW9yZGVyID09ICJsaXR0bGUiOgotICAgICAgICAgICAgICAgICAgICBpbnRlcm5hbCA9IGJ5dGVzKHJldmVyc2VkKGludGVybmFsKSkKKyAgICAgICAgZm9yIGludGVybmFsIGluIG5vdF9vazoKKyAgICAgICAgICAgIGlmIHN5cy5ieXRlb3JkZXIgPT0gImxpdHRsZSI6CisgICAgICAgICAgICAgICAgaW50ZXJuYWwgPSBieXRlcyhyZXZlcnNlZChpbnRlcm5hbCkpCisgICAgICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCd1bmljb2RlX2ludGVybmFsIGNvZGVjIGhhcyBiZWVuICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2RlcHJlY2F0ZWQnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRGVjb2RlRXJyb3IsIGludGVybmFsLmRlY29kZSwKLSAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVfaW50ZXJuYWwiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1bmljb2RlX2ludGVybmFsIikKKyAgICAgICAgaWYgc3lzLmJ5dGVvcmRlciA9PSAibGl0dGxlIjoKKyAgICAgICAgICAgIGludmFsaWQgPSBiIlx4MDBceDAwXHgxMVx4MDAiCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpbnZhbGlkID0gYiJceDAwXHgxMVx4MDBceDAwIgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuaWNvZGVEZWNvZGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludmFsaWQuZGVjb2RlLCAidW5pY29kZV9pbnRlcm5hbCIpCisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpbnZhbGlkLmRlY29kZSgidW5pY29kZV9pbnRlcm5hbCIsICJyZXBsYWNlIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdcdWZmZmQnKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoU0laRU9GX1dDSEFSX1QgPT0gNCwgJ3NwZWNpZmljIHRvIDMyLWJpdCB3Y2hhcl90JykKICAgICBkZWYgdGVzdF9kZWNvZGVfZXJyb3JfYXR0cmlidXRlcyhzZWxmKToKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPiAweGZmZmY6Ci0gICAgICAgICAgICB0cnk6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJ3VuaWNvZGVfaW50ZXJuYWwgY29kZWMgaGFzIGJlZW4gJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVwcmVjYXRlZCcsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgICAgIGIiXHgwMFx4MDBceDAwXHgwMFx4MDBceDExXHgxMVx4MDAiLmRlY29kZSgidW5pY29kZV9pbnRlcm5hbCIpCi0gICAgICAgICAgICBleGNlcHQgVW5pY29kZURlY29kZUVycm9yIGFzIGV4OgotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInVuaWNvZGVfaW50ZXJuYWwiLCBleC5lbmNvZGluZykKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIiXHgwMFx4MDBceDAwXHgwMFx4MDBceDExXHgxMVx4MDAiLCBleC5vYmplY3QpCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCg0LCBleC5zdGFydCkKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDgsIGV4LmVuZCkKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgc2VsZi5mYWlsKCkKKyAgICAgICAgZXhjZXB0IFVuaWNvZGVEZWNvZGVFcnJvciBhcyBleDoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInVuaWNvZGVfaW50ZXJuYWwiLCBleC5lbmNvZGluZykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiJceDAwXHgwMFx4MDBceDAwXHgwMFx4MTFceDExXHgwMCIsIGV4Lm9iamVjdCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoNCwgZXguc3RhcnQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDgsIGV4LmVuZCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuZmFpbCgpCiAKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhTSVpFT0ZfV0NIQVJfVCA9PSA0LCAnc3BlY2lmaWMgdG8gMzItYml0IHdjaGFyX3QnKQogICAgIGRlZiB0ZXN0X2RlY29kZV9jYWxsYmFjayhzZWxmKToKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPiAweGZmZmY6Ci0gICAgICAgICAgICBjb2RlY3MucmVnaXN0ZXJfZXJyb3IoIlVuaWNvZGVJbnRlcm5hbFRlc3QiLCBjb2RlY3MuaWdub3JlX2Vycm9ycykKLSAgICAgICAgICAgIGRlY29kZXIgPSBjb2RlY3MuZ2V0ZGVjb2RlcigidW5pY29kZV9pbnRlcm5hbCIpCisgICAgICAgIGNvZGVjcy5yZWdpc3Rlcl9lcnJvcigiVW5pY29kZUludGVybmFsVGVzdCIsIGNvZGVjcy5pZ25vcmVfZXJyb3JzKQorICAgICAgICBkZWNvZGVyID0gY29kZWNzLmdldGRlY29kZXIoInVuaWNvZGVfaW50ZXJuYWwiKQorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCd1bmljb2RlX2ludGVybmFsIGNvZGVjIGhhcyBiZWVuICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVwcmVjYXRlZCcsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgYWIgPSAiYWIiLmVuY29kZSgidW5pY29kZV9pbnRlcm5hbCIpLmRlY29kZSgpCiAgICAgICAgICAgICBpZ25vcmVkID0gZGVjb2RlcihieXRlcygiJXNceDIyXHgyMlx4MjJceDIyJXMiICUgKGFiWzo0XSwgYWJbNDpdKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhc2NpaSIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlVuaWNvZGVJbnRlcm5hbFRlc3QiKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgoImFiIiwgMTIpLCBpZ25vcmVkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgiYWIiLCAxMiksIGlnbm9yZWQpCiAKICAgICBkZWYgdGVzdF9lbmNvZGVfbGVuZ3RoKHNlbGYpOgotICAgICAgICAjIElzc3VlIDM3MzkKLSAgICAgICAgZW5jb2RlciA9IGNvZGVjcy5nZXRlbmNvZGVyKCJ1bmljb2RlX2ludGVybmFsIikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbmNvZGVyKCJhIilbMV0sIDEpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW5jb2RlcigiXHhlOVx1MDE0MiIpWzFdLCAyKQorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCd1bmljb2RlX2ludGVybmFsIGNvZGVjIGhhcyBiZWVuICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGVwcmVjYXRlZCcsIERlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICAgICAgIyBJc3N1ZSAzNzM5CisgICAgICAgICAgICBlbmNvZGVyID0gY29kZWNzLmdldGVuY29kZXIoInVuaWNvZGVfaW50ZXJuYWwiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbmNvZGVyKCJhIilbMV0sIDEpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVuY29kZXIoIlx4ZTlcdTAxNDIiKVsxXSwgMikKIAotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvZGVjcy5lc2NhcGVfZW5jb2RlKGJyJ1x4MDAnKVsxXSwgNCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29kZWNzLmVzY2FwZV9lbmNvZGUoYnInXHgwMCcpWzFdLCA0KQogCiAjIEZyb20gaHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL2xpYmlkbi9kcmFmdC1qb3NlZnNzb24taWRuLXRlc3QtdmVjdG9ycy5odG1sCiBuYW1lcHJlcF90ZXN0cyA9IFsKQEAgLTEyNjIsNyArMTQwMyw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZWYucmVhZCgpLCBiJ1xcXHhkNVxuXHgwMFx4MDBceGFlJykKIAogICAgICAgICBmID0gaW8uQnl0ZXNJTygpCi0gICAgICAgIGVmID0gY29kZWNzLkVuY29kZWRGaWxlKGYsICd1dGYtOCcsICdsYXRpbjEnKQorICAgICAgICBlZiA9IGNvZGVjcy5FbmNvZGVkRmlsZShmLCAndXRmLTgnLCAnbGF0aW4tMScpCiAgICAgICAgIGVmLndyaXRlKGInXHhjM1x4YmMnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYuZ2V0dmFsdWUoKSwgYidceGZjJykKIApAQCAtMTM5NCwxMCArMTUzNSwxMyBAQAogICAgICAgICAgICAgZWxpZiBlbmNvZGluZyA9PSAibGF0aW5fMSI6CiAgICAgICAgICAgICAgICAgbmFtZSA9ICJsYXRpbl8xIgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbmNvZGluZy5yZXBsYWNlKCJfIiwgIi0iKSwgbmFtZS5yZXBsYWNlKCJfIiwgIi0iKSkKLSAgICAgICAgICAgIChiLCBzaXplKSA9IGNvZGVjcy5nZXRlbmNvZGVyKGVuY29kaW5nKShzKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaXplLCBsZW4ocyksICIlciAhPSAlciAoZW5jb2Rpbmc9JXIpIiAlIChzaXplLCBsZW4ocyksIGVuY29kaW5nKSkKLSAgICAgICAgICAgIChjaGFycywgc2l6ZSkgPSBjb2RlY3MuZ2V0ZGVjb2RlcihlbmNvZGluZykoYikKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hhcnMsIHMsICIlciAhPSAlciAoZW5jb2Rpbmc9JXIpIiAlIChjaGFycywgcywgZW5jb2RpbmcpKQorCisgICAgICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKToKKyAgICAgICAgICAgICAgICAjIHVuaWNvZGUtaW50ZXJuYWwgaGFzIGJlZW4gZGVwcmVjYXRlZAorICAgICAgICAgICAgICAgIChiLCBzaXplKSA9IGNvZGVjcy5nZXRlbmNvZGVyKGVuY29kaW5nKShzKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2l6ZSwgbGVuKHMpLCAiJXIgIT0gJXIgKGVuY29kaW5nPSVyKSIgJSAoc2l6ZSwgbGVuKHMpLCBlbmNvZGluZykpCisgICAgICAgICAgICAgICAgKGNoYXJzLCBzaXplKSA9IGNvZGVjcy5nZXRkZWNvZGVyKGVuY29kaW5nKShiKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2hhcnMsIHMsICIlciAhPSAlciAoZW5jb2Rpbmc9JXIpIiAlIChjaGFycywgcywgZW5jb2RpbmcpKQogCiAgICAgICAgICAgICBpZiBlbmNvZGluZyBub3QgaW4gYnJva2VuX3VuaWNvZGVfd2l0aF9zdHJlYW1zOgogICAgICAgICAgICAgICAgICMgY2hlY2sgc3RyZWFtIHJlYWRlci93cml0ZXIKQEAgLTE1MDEsNyArMTY0NSw5IEBACiAgICAgZGVmIHRlc3RfYmFkX2VuY29kZV9hcmdzKHNlbGYpOgogICAgICAgICBmb3IgZW5jb2RpbmcgaW4gYWxsX3VuaWNvZGVfZW5jb2RpbmdzOgogICAgICAgICAgICAgZW5jb2RlciA9IGNvZGVjcy5nZXRlbmNvZGVyKGVuY29kaW5nKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBlbmNvZGVyKQorICAgICAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCk6CisgICAgICAgICAgICAgICAgIyB1bmljb2RlLWludGVybmFsIGhhcyBiZWVuIGRlcHJlY2F0ZWQKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGVuY29kZXIpCiAKICAgICBkZWYgdGVzdF9lbmNvZGluZ19tYXBfdHlwZV9pbml0aWFsaXplZChzZWxmKToKICAgICAgICAgZnJvbSBlbmNvZGluZ3MgaW1wb3J0IGNwMTE0MApAQCAtMTU5Myw2ICsxNzM5LDEyIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29kZWNzLnJhd191bmljb2RlX2VzY2FwZV9kZWNvZGUociJcdTEyMzQiKSwgKCJcdTEyMzQiLCA2KSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb2RlY3MucmF3X3VuaWNvZGVfZXNjYXBlX2RlY29kZShiciJcdTEyMzQiKSwgKCJcdTEyMzQiLCA2KSkKIAorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRGVjb2RlRXJyb3IsIGNvZGVjcy51bmljb2RlX2VzY2FwZV9kZWNvZGUsIGJyIlxVMDAxMTAwMDAiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvZGVjcy51bmljb2RlX2VzY2FwZV9kZWNvZGUociJcVTAwMTEwMDAwIiwgInJlcGxhY2UiKSwgKCJcdWZmZmQiLCAxMCkpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZURlY29kZUVycm9yLCBjb2RlY3MucmF3X3VuaWNvZGVfZXNjYXBlX2RlY29kZSwgYnIiXFUwMDExMDAwMCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY29kZWNzLnJhd191bmljb2RlX2VzY2FwZV9kZWNvZGUociJcVTAwMTEwMDAwIiwgInJlcGxhY2UiKSwgKCJcdWZmZmQiLCAxMCkpCisKIGNsYXNzIFN1cnJvZ2F0ZUVzY2FwZVRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHRlc3RfdXRmOChzZWxmKToKQEAgLTE2MjMsNyArMTc3NSw3IEBACiAKICAgICBkZWYgdGVzdF9sYXRpbjEoc2VsZik6CiAgICAgICAgICMgSXNzdWU2MzczCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIlx1ZGNlNFx1ZGNlYlx1ZGNlZlx1ZGNmNlx1ZGNmYyIuZW5jb2RlKCJsYXRpbjEiLCAic3Vycm9nYXRlZXNjYXBlIiksCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIlx1ZGNlNFx1ZGNlYlx1ZGNlZlx1ZGNmNlx1ZGNmYyIuZW5jb2RlKCJsYXRpbi0xIiwgInN1cnJvZ2F0ZWVzY2FwZSIpLAogICAgICAgICAgICAgICAgICAgICAgICAgIGIiXHhlNFx4ZWJceGVmXHhmNlx4ZmMiKQogCiAKQEAgLTE3MzIsNiArMTg4NCwxNTUgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc291dCwgYiJceDgwIikKIAogCitAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJywKKyAgICAgICAgICAgICAgICAgICAgICdjb2RlIHBhZ2VzIGFyZSBzcGVjaWZpYyB0byBXaW5kb3dzJykKK2NsYXNzIENvZGVQYWdlVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIyBDUF9VVEY4IGlzIGFscmVhZHkgdGVzdGVkIGJ5IENQNjUwMDFUZXN0CisgICAgQ1BfVVRGOCA9IDY1MDAxCisKKyAgICBkZWYgdGVzdF9pbnZhbGlkX2NvZGVfcGFnZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgY29kZWNzLmNvZGVfcGFnZV9lbmNvZGUsIC0xLCAnYScpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGNvZGVjcy5jb2RlX3BhZ2VfZGVjb2RlLCAtMSwgYidhJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoV2luZG93c0Vycm9yLCBjb2RlY3MuY29kZV9wYWdlX2VuY29kZSwgMTIzLCAnYScpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFdpbmRvd3NFcnJvciwgY29kZWNzLmNvZGVfcGFnZV9kZWNvZGUsIDEyMywgYidhJykKKworICAgIGRlZiB0ZXN0X2NvZGVfcGFnZV9uYW1lKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4KFVuaWNvZGVFbmNvZGVFcnJvciwgJ2NwOTMyJywKKyAgICAgICAgICAgIGNvZGVjcy5jb2RlX3BhZ2VfZW5jb2RlLCA5MzIsICdceGZmJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXNSZWdleChVbmljb2RlRGVjb2RlRXJyb3IsICdjcDkzMicsCisgICAgICAgICAgICBjb2RlY3MuY29kZV9wYWdlX2RlY29kZSwgOTMyLCBiJ1x4ODFceDAwJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXNSZWdleChVbmljb2RlRGVjb2RlRXJyb3IsICdDUF9VVEY4JywKKyAgICAgICAgICAgIGNvZGVjcy5jb2RlX3BhZ2VfZGVjb2RlLCBzZWxmLkNQX1VURjgsIGInXHhmZicpCisKKyAgICBkZWYgY2hlY2tfZGVjb2RlKHNlbGYsIGNwLCB0ZXN0cyk6CisgICAgICAgIGZvciByYXcsIGVycm9ycywgZXhwZWN0ZWQgaW4gdGVzdHM6CisgICAgICAgICAgICBpZiBleHBlY3RlZCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIGRlY29kZWQgPSBjb2RlY3MuY29kZV9wYWdlX2RlY29kZShjcCwgcmF3LCBlcnJvcnMpCisgICAgICAgICAgICAgICAgZXhjZXB0IFVuaWNvZGVEZWNvZGVFcnJvciBhcyBlcnI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgnVW5hYmxlIHRvIGRlY29kZSAlYSBmcm9tICJjcCVzIiB3aXRoICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdlcnJvcnM9JXI6ICVzJyAlIChyYXcsIGNwLCBlcnJvcnMsIGVycikpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZWNvZGVkWzBdLCBleHBlY3RlZCwKKyAgICAgICAgICAgICAgICAgICAgJyVhLmRlY29kZSgiY3AlcyIsICVyKT0lYSAhPSAlYScKKyAgICAgICAgICAgICAgICAgICAgJSAocmF3LCBjcCwgZXJyb3JzLCBkZWNvZGVkWzBdLCBleHBlY3RlZCkpCisgICAgICAgICAgICAgICAgIyBhc3NlcnQgMCA8PSBkZWNvZGVkWzFdIDw9IGxlbihyYXcpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwoZGVjb2RlZFsxXSwgMCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChkZWNvZGVkWzFdLCBsZW4ocmF3KSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZURlY29kZUVycm9yLAorICAgICAgICAgICAgICAgICAgICBjb2RlY3MuY29kZV9wYWdlX2RlY29kZSwgY3AsIHJhdywgZXJyb3JzKQorCisgICAgZGVmIGNoZWNrX2VuY29kZShzZWxmLCBjcCwgdGVzdHMpOgorICAgICAgICBmb3IgdGV4dCwgZXJyb3JzLCBleHBlY3RlZCBpbiB0ZXN0czoKKyAgICAgICAgICAgIGlmIGV4cGVjdGVkIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgZW5jb2RlZCA9IGNvZGVjcy5jb2RlX3BhZ2VfZW5jb2RlKGNwLCB0ZXh0LCBlcnJvcnMpCisgICAgICAgICAgICAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvciBhcyBlcnI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgnVW5hYmxlIHRvIGVuY29kZSAlYSB0byAiY3AlcyIgd2l0aCAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZXJyb3JzPSVyOiAlcycgJSAodGV4dCwgY3AsIGVycm9ycywgZXJyKSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVuY29kZWRbMF0sIGV4cGVjdGVkLAorICAgICAgICAgICAgICAgICAgICAnJWEuZW5jb2RlKCJjcCVzIiwgJXIpPSVhICE9ICVhJworICAgICAgICAgICAgICAgICAgICAlICh0ZXh0LCBjcCwgZXJyb3JzLCBlbmNvZGVkWzBdLCBleHBlY3RlZCkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlbmNvZGVkWzFdLCBsZW4odGV4dCkpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuaWNvZGVFbmNvZGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgY29kZWNzLmNvZGVfcGFnZV9lbmNvZGUsIGNwLCB0ZXh0LCBlcnJvcnMpCisKKyAgICBkZWYgdGVzdF9jcDkzMihzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19lbmNvZGUoOTMyLCAoCisgICAgICAgICAgICAoJ2FiYycsICdzdHJpY3QnLCBiJ2FiYycpLAorICAgICAgICAgICAgKCdcdWZmNDRcdTlhM2UnLCAnc3RyaWN0JywgYidceDgyXHg4NFx4ZTlceDgwJyksCisgICAgICAgICAgICAjIHRlc3QgZXJyb3IgaGFuZGxlcnMKKyAgICAgICAgICAgICgnXHhmZicsICdzdHJpY3QnLCBOb25lKSwKKyAgICAgICAgICAgICgnW1x4ZmZdJywgJ2lnbm9yZScsIGInW10nKSwKKyAgICAgICAgICAgICgnW1x4ZmZdJywgJ3JlcGxhY2UnLCBiJ1t5XScpLAorICAgICAgICAgICAgKCdbXHUyMGFjXScsICdyZXBsYWNlJywgYidbP10nKSwKKyAgICAgICAgICAgICgnW1x4ZmZdJywgJ2JhY2tzbGFzaHJlcGxhY2UnLCBiJ1tcXHhmZl0nKSwKKyAgICAgICAgICAgICgnW1x4ZmZdJywgJ3htbGNoYXJyZWZyZXBsYWNlJywgYidbJiMyNTU7XScpLAorICAgICAgICApKQorICAgICAgICBzZWxmLmNoZWNrX2RlY29kZSg5MzIsICgKKyAgICAgICAgICAgIChiJ2FiYycsICdzdHJpY3QnLCAnYWJjJyksCisgICAgICAgICAgICAoYidceDgyXHg4NFx4ZTlceDgwJywgJ3N0cmljdCcsICdcdWZmNDRcdTlhM2UnKSwKKyAgICAgICAgICAgICMgaW52YWxpZCBieXRlcworICAgICAgICAgICAgKGInW1x4ZmZdJywgJ3N0cmljdCcsIE5vbmUpLAorICAgICAgICAgICAgKGInW1x4ZmZdJywgJ2lnbm9yZScsICdbXScpLAorICAgICAgICAgICAgKGInW1x4ZmZdJywgJ3JlcGxhY2UnLCAnW1x1ZmZmZF0nKSwKKyAgICAgICAgICAgIChiJ1tceGZmXScsICdzdXJyb2dhdGVlc2NhcGUnLCAnW1x1ZGNmZl0nKSwKKyAgICAgICAgICAgIChiJ1x4ODFceDAwYWJjJywgJ3N0cmljdCcsIE5vbmUpLAorICAgICAgICAgICAgKGInXHg4MVx4MDBhYmMnLCAnaWdub3JlJywgJ1x4MDBhYmMnKSwKKyAgICAgICAgICAgIChiJ1x4ODFceDAwYWJjJywgJ3JlcGxhY2UnLCAnXHVmZmZkXHgwMGFiYycpLAorICAgICAgICApKQorCisgICAgZGVmIHRlc3RfY3AxMjUyKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2VuY29kZSgxMjUyLCAoCisgICAgICAgICAgICAoJ2FiYycsICdzdHJpY3QnLCBiJ2FiYycpLAorICAgICAgICAgICAgKCdceGU5XHUyMGFjJywgJ3N0cmljdCcsICBiJ1x4ZTlceDgwJyksCisgICAgICAgICAgICAoJ1x4ZmYnLCAnc3RyaWN0JywgYidceGZmJyksCisgICAgICAgICAgICAoJ1x1MDE0MScsICdzdHJpY3QnLCBOb25lKSwKKyAgICAgICAgICAgICgnXHUwMTQxJywgJ2lnbm9yZScsIGInJyksCisgICAgICAgICAgICAoJ1x1MDE0MScsICdyZXBsYWNlJywgYidMJyksCisgICAgICAgICkpCisgICAgICAgIHNlbGYuY2hlY2tfZGVjb2RlKDEyNTIsICgKKyAgICAgICAgICAgIChiJ2FiYycsICdzdHJpY3QnLCAnYWJjJyksCisgICAgICAgICAgICAoYidceGU5XHg4MCcsICdzdHJpY3QnLCAnXHhlOVx1MjBhYycpLAorICAgICAgICAgICAgKGInXHhmZicsICdzdHJpY3QnLCAnXHhmZicpLAorICAgICAgICApKQorCisgICAgZGVmIHRlc3RfY3BfdXRmNyhzZWxmKToKKyAgICAgICAgY3AgPSA2NTAwMAorICAgICAgICBzZWxmLmNoZWNrX2VuY29kZShjcCwgKAorICAgICAgICAgICAgKCdhYmMnLCAnc3RyaWN0JywgYidhYmMnKSwKKyAgICAgICAgICAgICgnXHhlOVx1MjBhYycsICdzdHJpY3QnLCAgYicrQU9rZ3JBLScpLAorICAgICAgICAgICAgKCdcVTAwMTBmZmZmJywgJ3N0cmljdCcsICBiJysyLy9mL3ctJyksCisgICAgICAgICAgICAoJ1x1ZGM4MCcsICdzdHJpY3QnLCBiJyszSUEtJyksCisgICAgICAgICAgICAoJ1x1ZmZmZCcsICdzdHJpY3QnLCBiJysvLzAtJyksCisgICAgICAgICkpCisgICAgICAgIHNlbGYuY2hlY2tfZGVjb2RlKGNwLCAoCisgICAgICAgICAgICAoYidhYmMnLCAnc3RyaWN0JywgJ2FiYycpLAorICAgICAgICAgICAgKGInK0FPa2dyQS0nLCAnc3RyaWN0JywgJ1x4ZTlcdTIwYWMnKSwKKyAgICAgICAgICAgIChiJysyLy9mL3ctJywgJ3N0cmljdCcsICdcVTAwMTBmZmZmJyksCisgICAgICAgICAgICAoYicrM0lBLScsICdzdHJpY3QnLCAnXHVkYzgwJyksCisgICAgICAgICAgICAoYicrLy8wLScsICdzdHJpY3QnLCAnXHVmZmZkJyksCisgICAgICAgICAgICAjIGludmFsaWQgYnl0ZXMKKyAgICAgICAgICAgIChiJ1srL10nLCAnc3RyaWN0JywgJ1tdJyksCisgICAgICAgICAgICAoYidbXHhmZl0nLCAnc3RyaWN0JywgJ1tceGZmXScpLAorICAgICAgICApKQorCisgICAgZGVmIHRlc3RfbXVsdGlieXRlX2VuY29kaW5nKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2RlY29kZSg5MzIsICgKKyAgICAgICAgICAgIChiJ1x4ODRceGU5XHg4MCcsICdpZ25vcmUnLCAnXHU5YTNlJyksCisgICAgICAgICAgICAoYidceDg0XHhlOVx4ODAnLCAncmVwbGFjZScsICdcdWZmZmRcdTlhM2UnKSwKKyAgICAgICAgKSkKKyAgICAgICAgc2VsZi5jaGVja19kZWNvZGUoc2VsZi5DUF9VVEY4LCAoCisgICAgICAgICAgICAoYidceGZmXHhmNFx4OGZceGJmXHhiZicsICdpZ25vcmUnLCAnXFUwMDEwZmZmZicpLAorICAgICAgICAgICAgKGInXHhmZlx4ZjRceDhmXHhiZlx4YmYnLCAncmVwbGFjZScsICdcdWZmZmRcVTAwMTBmZmZmJyksCisgICAgICAgICkpCisgICAgICAgIGlmIFZJU1RBX09SX0xBVEVSOgorICAgICAgICAgICAgc2VsZi5jaGVja19lbmNvZGUoc2VsZi5DUF9VVEY4LCAoCisgICAgICAgICAgICAgICAgKCdbXFUwMDEwZmZmZlx1REM4MF0nLCAnaWdub3JlJywgYidbXHhmNFx4OGZceGJmXHhiZl0nKSwKKyAgICAgICAgICAgICAgICAoJ1tcVTAwMTBmZmZmXHVEQzgwXScsICdyZXBsYWNlJywgYidbXHhmNFx4OGZceGJmXHhiZj9dJyksCisgICAgICAgICAgICApKQorCisgICAgZGVmIHRlc3RfaW5jcmVtZW50YWwoc2VsZik6CisgICAgICAgIGRlY29kZWQgPSBjb2RlY3MuY29kZV9wYWdlX2RlY29kZSg5MzIsIGInXHg4MicsICdzdHJpY3QnLCBGYWxzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZWNvZGVkLCAoJycsIDApKQorCisgICAgICAgIGRlY29kZWQgPSBjb2RlY3MuY29kZV9wYWdlX2RlY29kZSg5MzIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiJ1x4ZTlceDgwXHhlOScsICdzdHJpY3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGVjb2RlZCwgKCdcdTlhM2UnLCAyKSkKKworICAgICAgICBkZWNvZGVkID0gY29kZWNzLmNvZGVfcGFnZV9kZWNvZGUoOTMyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYidceGU5XHg4MFx4ZTlceDgwJywgJ3N0cmljdCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGYWxzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZWNvZGVkLCAoJ1x1OWEzZVx1OWEzZScsIDQpKQorCisgICAgICAgIGRlY29kZWQgPSBjb2RlY3MuY29kZV9wYWdlX2RlY29kZSg5MzIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiJ2FiYycsICdzdHJpY3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGVjb2RlZCwgKCdhYmMnLCAzKSkKKworCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoCiAgICAgICAgIFVURjMyVGVzdCwKQEAgLTE3NDIsNiArMjA0Myw3IEBACiAgICAgICAgIFVURjE2QkVUZXN0LAogICAgICAgICBVVEY4VGVzdCwKICAgICAgICAgVVRGOFNpZ1Rlc3QsCisgICAgICAgIENQNjUwMDFUZXN0LAogICAgICAgICBVVEY3VGVzdCwKICAgICAgICAgVVRGMTZFeFRlc3QsCiAgICAgICAgIFJlYWRCdWZmZXJUZXN0LApAQCAtMTc2MCw2ICsyMDYyLDcgQEAKICAgICAgICAgU3Vycm9nYXRlRXNjYXBlVGVzdCwKICAgICAgICAgQm9tVGVzdCwKICAgICAgICAgVHJhbnNmb3JtQ29kZWNUZXN0LAorICAgICAgICBDb2RlUGFnZVRlc3QsCiAgICAgKQogCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY29sbGVjdGlvbnMucHkgYi9MaWIvdGVzdC90ZXN0X2NvbGxlY3Rpb25zLnB5CmluZGV4IDhkYzU1NTkuLjg4YzMxMjkgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29sbGVjdGlvbnMucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jb2xsZWN0aW9ucy5weQpAQCAtMSw2ICsxLDcgQEAKICIiIlVuaXQgdGVzdHMgZm9yIGNvbGxlY3Rpb25zLnB5LiIiIgogCiBpbXBvcnQgdW5pdHRlc3QsIGRvY3Rlc3QsIG9wZXJhdG9yCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgVEVTVEZOLCBmb3JnZXQsIHVubGluawogaW1wb3J0IGluc3BlY3QKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgbmFtZWR0dXBsZSwgQ291bnRlciwgT3JkZXJlZERpY3QsIF9jb3VudF9lbGVtZW50cwpAQCAtMTAsMjEgKzExLDIwIEBACiBpbXBvcnQga2V5d29yZAogaW1wb3J0IHJlCiBpbXBvcnQgc3lzCi1mcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBfQ2hhaW5NYXAKLWZyb20gY29sbGVjdGlvbnMgaW1wb3J0IEhhc2hhYmxlLCBJdGVyYWJsZSwgSXRlcmF0b3IKLWZyb20gY29sbGVjdGlvbnMgaW1wb3J0IFNpemVkLCBDb250YWluZXIsIENhbGxhYmxlCi1mcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBTZXQsIE11dGFibGVTZXQKLWZyb20gY29sbGVjdGlvbnMgaW1wb3J0IE1hcHBpbmcsIE11dGFibGVNYXBwaW5nLCBLZXlzVmlldywgSXRlbXNWaWV3LCBVc2VyRGljdAotZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgU2VxdWVuY2UsIE11dGFibGVTZXF1ZW5jZQotZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgQnl0ZVN0cmluZworZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgVXNlckRpY3QKK2Zyb20gY29sbGVjdGlvbnMgaW1wb3J0IENoYWluTWFwCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgSGFzaGFibGUsIEl0ZXJhYmxlLCBJdGVyYXRvcgorZnJvbSBjb2xsZWN0aW9ucy5hYmMgaW1wb3J0IFNpemVkLCBDb250YWluZXIsIENhbGxhYmxlCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgU2V0LCBNdXRhYmxlU2V0Citmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgTWFwcGluZywgTXV0YWJsZU1hcHBpbmcsIEtleXNWaWV3LCBJdGVtc1ZpZXcKK2Zyb20gY29sbGVjdGlvbnMuYWJjIGltcG9ydCBTZXF1ZW5jZSwgTXV0YWJsZVNlcXVlbmNlCitmcm9tIGNvbGxlY3Rpb25zLmFiYyBpbXBvcnQgQnl0ZVN0cmluZwogCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCi0jIyMgX0NoYWluTWFwIChoZWxwZXIgY2xhc3MgZm9yIGNvbmZpZ3BhcnNlcikKKyMjIyBDaGFpbk1hcCAoaGVscGVyIGNsYXNzIGZvciBjb25maWdwYXJzZXIgYW5kIHRoZSBzdHJpbmcgbW9kdWxlKQogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAotQ2hhaW5NYXAgPSBfQ2hhaW5NYXAgICMgcmVuYW1lIHRvIGtlZXAgdGVzdCBjb2RlIGluIHN5bmMgd2l0aCAzLjMgdmVyc2lvbgotCiBjbGFzcyBUZXN0Q2hhaW5NYXAodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHRlc3RfYmFzaWNzKHNlbGYpOgpAQCAtMTI4LDYgKzEyOCw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUG9pbnQuX19tb2R1bGVfXywgX19uYW1lX18pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUG9pbnQuX19nZXRpdGVtX18sIHR1cGxlLl9fZ2V0aXRlbV9fKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFBvaW50Ll9maWVsZHMsICgneCcsICd5JykpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ2NsYXNzIFBvaW50KHR1cGxlKScsIFBvaW50Ll9zb3VyY2UpCiAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbmFtZWR0dXBsZSwgJ2FiYyUnLCAnZWZnIGdoaScpICAgICAgICMgdHlwZSBoYXMgbm9uLWFscGhhIGNoYXIKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbmFtZWR0dXBsZSwgJ2NsYXNzJywgJ2VmZyBnaGknKSAgICAgICMgdHlwZSBoYXMga2V5d29yZApAQCAtMzI3LDYgKzMyOCwxNyBAQAogICAgICAgICAgICAgcGFzcwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcHIoQigxKSksICdCKHg9MSknKQogCisgICAgZGVmIHRlc3Rfc291cmNlKHNlbGYpOgorICAgICAgICAjIHZlcmlmeSB0aGF0IF9zb3VyY2UgY2FuIGJlIHJ1biB0aHJvdWdoIGV4ZWMoKQorICAgICAgICB0bXAgPSBuYW1lZHR1cGxlKCdOVENvbG9yJywgJ3JlZCBncmVlbiBibHVlJykKKyAgICAgICAgZ2xvYmFscygpLnBvcCgnTlRDb2xvcicsIE5vbmUpICAgICAgICAgICMgcmVtb3ZlIGFydGlmYWN0cyBmcm9tIG90aGVyIHRlc3RzCisgICAgICAgIGV4ZWModG1wLl9zb3VyY2UsIGdsb2JhbHMoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignTlRDb2xvcicsIGdsb2JhbHMoKSkKKyAgICAgICAgYyA9IE5UQ29sb3IoMTAsIDIwLCAzMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgoYy5yZWQsIGMuZ3JlZW4sIGMuYmx1ZSksICgxMCwgMjAsIDMwKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChOVENvbG9yLl9maWVsZHMsICgncmVkJywgJ2dyZWVuJywgJ2JsdWUnKSkKKyAgICAgICAgZ2xvYmFscygpLnBvcCgnTlRDb2xvcicsIE5vbmUpICAgICAgICAgICMgY2xlYW4tdXAgYWZ0ZXIgdGhpcyB0ZXN0CisKIAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMjIyBBYnN0cmFjdCBCYXNlIENsYXNzZXMKQEAgLTcyOSw2ICs3NDEsNDQgQEAKICAgICAgICAgc2VsZi52YWxpZGF0ZV9hYnN0cmFjdF9tZXRob2RzKE11dGFibGVTZXF1ZW5jZSwgJ19fY29udGFpbnNfXycsICdfX2l0ZXJfXycsCiAgICAgICAgICAgICAnX19sZW5fXycsICdfX2dldGl0ZW1fXycsICdfX3NldGl0ZW1fXycsICdfX2RlbGl0ZW1fXycsICdpbnNlcnQnKQogCisgICAgZGVmIHRlc3RfTXV0YWJsZVNlcXVlbmNlX21peGlucyhzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoZSBtaXhpbnMgb2YgTXV0YWJsZVNlcXVlbmNlIGJ5IGNyZWF0aW5nIGEgbWltaW5hbCBjb25jcmV0ZQorICAgICAgICAjIGNsYXNzIGluaGVyaXRlZCBmcm9tIGl0LgorICAgICAgICBjbGFzcyBNdXRhYmxlU2VxdWVuY2VTdWJjbGFzcyhNdXRhYmxlU2VxdWVuY2UpOgorICAgICAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHNlbGYubHN0ID0gW10KKworICAgICAgICAgICAgZGVmIF9fc2V0aXRlbV9fKHNlbGYsIGluZGV4LCB2YWx1ZSk6CisgICAgICAgICAgICAgICAgc2VsZi5sc3RbaW5kZXhdID0gdmFsdWUKKworICAgICAgICAgICAgZGVmIF9fZ2V0aXRlbV9fKHNlbGYsIGluZGV4KToKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5sc3RbaW5kZXhdCisKKyAgICAgICAgICAgIGRlZiBfX2xlbl9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiBsZW4oc2VsZi5sc3QpCisKKyAgICAgICAgICAgIGRlZiBfX2RlbGl0ZW1fXyhzZWxmLCBpbmRleCk6CisgICAgICAgICAgICAgICAgZGVsIHNlbGYubHN0W2luZGV4XQorCisgICAgICAgICAgICBkZWYgaW5zZXJ0KHNlbGYsIGluZGV4LCB2YWx1ZSk6CisgICAgICAgICAgICAgICAgc2VsZi5sc3QuaW5zZXJ0KGluZGV4LCB2YWx1ZSkKKworICAgICAgICBtc3MgPSBNdXRhYmxlU2VxdWVuY2VTdWJjbGFzcygpCisgICAgICAgIG1zcy5hcHBlbmQoMCkKKyAgICAgICAgbXNzLmV4dGVuZCgoMSwgMiwgMywgNCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG1zcyksIDUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNzWzNdLCAzKQorICAgICAgICBtc3MucmV2ZXJzZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNzWzNdLCAxKQorICAgICAgICBtc3MucG9wKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obXNzKSwgNCkKKyAgICAgICAgbXNzLnJlbW92ZSgzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtc3MpLCAzKQorICAgICAgICBtc3MgKz0gKDEwLCAyMCwgMzApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG1zcyksIDYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNzWy0xXSwgMzApCisgICAgICAgIG1zcy5jbGVhcigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKG1zcyksIDApCiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjIyMgQ291bnRlcgpAQCAtODgyLDYgKzkzMiwyNyBAQAogICAgICAgICAgICAgICAgIHNldF9yZXN1bHQgPSBzZXRvcChzZXQocC5lbGVtZW50cygpKSwgc2V0KHEuZWxlbWVudHMoKSkpCiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb3VudGVyX3Jlc3VsdCwgZGljdC5mcm9ta2V5cyhzZXRfcmVzdWx0LCAxKSkKIAorICAgIGRlZiB0ZXN0X2lucGxhY2Vfb3BlcmF0aW9ucyhzZWxmKToKKyAgICAgICAgZWxlbWVudHMgPSAnYWJjZCcKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMTAwMCk6CisgICAgICAgICAgICAjIHRlc3QgcmFuZG9tIHBhaXJzIG9mIG11bHRpc2V0cworICAgICAgICAgICAgcCA9IENvdW50ZXIoZGljdCgoZWxlbSwgcmFuZHJhbmdlKC0yLDQpKSBmb3IgZWxlbSBpbiBlbGVtZW50cykpCisgICAgICAgICAgICBwLnVwZGF0ZShlPTEsIGY9LTEsIGc9MCkKKyAgICAgICAgICAgIHEgPSBDb3VudGVyKGRpY3QoKGVsZW0sIHJhbmRyYW5nZSgtMiw0KSkgZm9yIGVsZW0gaW4gZWxlbWVudHMpKQorICAgICAgICAgICAgcS51cGRhdGUoaD0xLCBpPS0xLCBqPTApCisgICAgICAgICAgICBmb3IgaW5wbGFjZV9vcCwgcmVndWxhcl9vcCBpbiBbCisgICAgICAgICAgICAgICAgKENvdW50ZXIuX19pYWRkX18sIENvdW50ZXIuX19hZGRfXyksCisgICAgICAgICAgICAgICAgKENvdW50ZXIuX19pc3ViX18sIENvdW50ZXIuX19zdWJfXyksCisgICAgICAgICAgICAgICAgKENvdW50ZXIuX19pb3JfXywgQ291bnRlci5fX29yX18pLAorICAgICAgICAgICAgICAgIChDb3VudGVyLl9faWFuZF9fLCBDb3VudGVyLl9fYW5kX18pLAorICAgICAgICAgICAgXToKKyAgICAgICAgICAgICAgICBjID0gcC5jb3B5KCkKKyAgICAgICAgICAgICAgICBjX2lkID0gaWQoYykKKyAgICAgICAgICAgICAgICByZWd1bGFyX3Jlc3VsdCA9IHJlZ3VsYXJfb3AoYywgcSkKKyAgICAgICAgICAgICAgICBpbnBsYWNlX3Jlc3VsdCA9IGlucGxhY2Vfb3AoYywgcSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGlucGxhY2VfcmVzdWx0LCByZWd1bGFyX3Jlc3VsdCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGlkKGlucGxhY2VfcmVzdWx0KSwgY19pZCkKKwogICAgIGRlZiB0ZXN0X3N1YnRyYWN0KHNlbGYpOgogICAgICAgICBjID0gQ291bnRlcihhPS01LCBiPTAsIGM9NSwgZD0xMCwgZT0xNSxnPTQwKQogICAgICAgICBjLnN1YnRyYWN0KGE9MSwgYj0yLCBjPS0zLCBkPTEwLCBlPTIwLCBmPTMwLCBoPS01MCkKQEAgLTg5Myw2ICs5NjQsMTEgQEAKICAgICAgICAgYy5zdWJ0cmFjdCgnYWFhYWJiY2NlJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLCBDb3VudGVyKGE9LTEsIGI9MCwgYz0tMSwgZD0xLCBlPS0xKSkKIAorICAgIGRlZiB0ZXN0X3VuYXJ5KHNlbGYpOgorICAgICAgICBjID0gQ291bnRlcihhPS01LCBiPTAsIGM9NSwgZD0xMCwgZT0xNSxnPTQwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpY3QoK2MpLCBkaWN0KGM9NSwgZD0xMCwgZT0xNSwgZz00MCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGljdCgtYyksIGRpY3QoYT01KSkKKwogICAgIGRlZiB0ZXN0X3JlcHJfbm9uc29ydGFibGUoc2VsZik6CiAgICAgICAgIGMgPSBDb3VudGVyKGE9MiwgYj1Ob25lKQogICAgICAgICByID0gcmVwcihjKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb21waWxlLnB5IGIvTGliL3Rlc3QvdGVzdF9jb21waWxlLnB5CmluZGV4IDU4ZWYyOTcuLjcyMzQyZjggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29tcGlsZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvbXBpbGUucHkKQEAgLTEsMTAgKzEsMTcgQEAKIGltcG9ydCB1bml0dGVzdAogaW1wb3J0IHN5cwogaW1wb3J0IF9hc3QKK2ltcG9ydCB0eXBlcwogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiAKIGNsYXNzIFRlc3RTcGVjaWZpY3ModW5pdHRlc3QuVGVzdENhc2UpOgogCisgICAgZGVmIGNvbXBpbGVfc2luZ2xlKHNlbGYsIHNvdXJjZSk6CisgICAgICAgIGNvbXBpbGUoc291cmNlLCAiPHNpbmdsZT4iLCAic2luZ2xlIikKKworICAgIGRlZiBhc3NlcnRJbnZhbGlkU2luZ2xlKHNlbGYsIHNvdXJjZSk6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFN5bnRheEVycm9yLCBzZWxmLmNvbXBpbGVfc2luZ2xlLCBzb3VyY2UpCisKICAgICBkZWYgdGVzdF9ub19lbmRpbmdfbmV3bGluZShzZWxmKToKICAgICAgICAgY29tcGlsZSgiaGkiLCAiPHRlc3Q+IiwgImV4ZWMiKQogICAgICAgICBjb21waWxlKCJoaVxyIiwgIjx0ZXN0PiIsICJleGVjIikKQEAgLTQzMyw2ICs0NDAsMzkgQEAKICAgICAgICAgYXN0LmJvZHkgPSBbX2FzdC5Cb29sT3AoKV0KICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjb21waWxlLCBhc3QsICc8YXN0PicsICdleGVjJykKIAorICAgIEBzdXBwb3J0LmNweXRob25fb25seQorICAgIGRlZiB0ZXN0X3NhbWVfZmlsZW5hbWVfdXNlZChzZWxmKToKKyAgICAgICAgcyA9ICIiImRlZiBmKCk6IHBhc3NcbmRlZiBnKCk6IHBhc3MiIiIKKyAgICAgICAgYyA9IGNvbXBpbGUocywgIm15ZmlsZSIsICJleGVjIikKKyAgICAgICAgZm9yIG9iaiBpbiBjLmNvX2NvbnN0czoKKyAgICAgICAgICAgIGlmIGlzaW5zdGFuY2Uob2JqLCB0eXBlcy5Db2RlVHlwZSk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhvYmouY29fZmlsZW5hbWUsIGMuY29fZmlsZW5hbWUpCisKKyAgICBkZWYgdGVzdF9zaW5nbGVfc3RhdGVtZW50KHNlbGYpOgorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCIxICsgMiIpCisgICAgICAgIHNlbGYuY29tcGlsZV9zaW5nbGUoIlxuMSArIDIiKQorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCIxICsgMlxuIikKKyAgICAgICAgc2VsZi5jb21waWxlX3NpbmdsZSgiMSArIDJcblxuIikKKyAgICAgICAgc2VsZi5jb21waWxlX3NpbmdsZSgiMSArIDJcdFx0XG4iKQorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCIxICsgMlx0XHRcbiAgICAgICAgIikKKyAgICAgICAgc2VsZi5jb21waWxlX3NpbmdsZSgiMSArIDIgIyBvbmUgcGx1cyB0d28iKQorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCIxOyAyIikKKyAgICAgICAgc2VsZi5jb21waWxlX3NpbmdsZSgiaW1wb3J0IHN5czsgc3lzIikKKyAgICAgICAgc2VsZi5jb21waWxlX3NpbmdsZSgiZGVmIGYoKTpcbiAgIHBhc3MiKQorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCJ3aGlsZSBGYWxzZTpcbiAgIHBhc3MiKQorICAgICAgICBzZWxmLmNvbXBpbGVfc2luZ2xlKCJpZiB4OlxuICAgZih4KSIpCisgICAgICAgIHNlbGYuY29tcGlsZV9zaW5nbGUoImlmIHg6XG4gICBmKHgpXG5lbHNlOlxuICAgZyh4KSIpCisgICAgICAgIHNlbGYuY29tcGlsZV9zaW5nbGUoImNsYXNzIFQ6XG4gICBwYXNzIikKKworICAgIGRlZiB0ZXN0X2JhZF9zaW5nbGVfc3RhdGVtZW50KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEludmFsaWRTaW5nbGUoJzFcbjInKQorICAgICAgICBzZWxmLmFzc2VydEludmFsaWRTaW5nbGUoJ2RlZiBmKCk6IHBhc3MnKQorICAgICAgICBzZWxmLmFzc2VydEludmFsaWRTaW5nbGUoJ2EgPSAxM1xuYiA9IDE4NycpCisgICAgICAgIHNlbGYuYXNzZXJ0SW52YWxpZFNpbmdsZSgnZGVsIHhcbmRlbCB5JykKKyAgICAgICAgc2VsZi5hc3NlcnRJbnZhbGlkU2luZ2xlKCdmKClcbmcoKScpCisgICAgICAgIHNlbGYuYXNzZXJ0SW52YWxpZFNpbmdsZSgnZigpXG4jIGJsYWhcbmJsYWgoKScpCisgICAgICAgIHNlbGYuYXNzZXJ0SW52YWxpZFNpbmdsZSgnZigpXG54eSAjIGJsYWhcbmJsYWgoKScpCisgICAgICAgIHNlbGYuYXNzZXJ0SW52YWxpZFNpbmdsZSgneCA9IDUgIyBjb21tZW50XG54ID0gNlxuJykKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KFRlc3RTcGVjaWZpY3MpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2NvbmN1cnJlbnRfZnV0dXJlcy5weSBiL0xpYi90ZXN0L3Rlc3RfY29uY3VycmVudF9mdXR1cmVzLnB5CmluZGV4IDM3MmRhMjcuLjA0ZWUyNDYgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29uY3VycmVudF9mdXR1cmVzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfY29uY3VycmVudF9mdXR1cmVzLnB5CkBAIC0xOSw3ICsxOSw3IEBACiBmcm9tIGNvbmN1cnJlbnQgaW1wb3J0IGZ1dHVyZXMKIGZyb20gY29uY3VycmVudC5mdXR1cmVzLl9iYXNlIGltcG9ydCAoCiAgICAgUEVORElORywgUlVOTklORywgQ0FOQ0VMTEVELCBDQU5DRUxMRURfQU5EX05PVElGSUVELCBGSU5JU0hFRCwgRnV0dXJlKQotaW1wb3J0IGNvbmN1cnJlbnQuZnV0dXJlcy5wcm9jZXNzCitmcm9tIGNvbmN1cnJlbnQuZnV0dXJlcy5wcm9jZXNzIGltcG9ydCBCcm9rZW5Qcm9jZXNzUG9vbAogCiAKIGRlZiBjcmVhdGVfZnV0dXJlKHN0YXRlPVBFTkRJTkcsIGV4Y2VwdGlvbj1Ob25lLCByZXN1bHQ9Tm9uZSk6CkBAIC0zNCw3ICszNCw3IEBACiBSVU5OSU5HX0ZVVFVSRSA9IGNyZWF0ZV9mdXR1cmUoc3RhdGU9UlVOTklORykKIENBTkNFTExFRF9GVVRVUkUgPSBjcmVhdGVfZnV0dXJlKHN0YXRlPUNBTkNFTExFRCkKIENBTkNFTExFRF9BTkRfTk9USUZJRURfRlVUVVJFID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1DQU5DRUxMRURfQU5EX05PVElGSUVEKQotRVhDRVBUSU9OX0ZVVFVSRSA9IGNyZWF0ZV9mdXR1cmUoc3RhdGU9RklOSVNIRUQsIGV4Y2VwdGlvbj1JT0Vycm9yKCkpCitFWENFUFRJT05fRlVUVVJFID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1GSU5JU0hFRCwgZXhjZXB0aW9uPU9TRXJyb3IoKSkKIFNVQ0NFU1NGVUxfRlVUVVJFID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1GSU5JU0hFRCwgcmVzdWx0PTQyKQogCiAKQEAgLTE2MCw3ICsxNjAsNyBAQAogICAgICAgICBwcm9jZXNzZXMgPSBzZWxmLmV4ZWN1dG9yLl9wcm9jZXNzZXMKICAgICAgICAgc2VsZi5leGVjdXRvci5zaHV0ZG93bigpCiAKLSAgICAgICAgZm9yIHAgaW4gcHJvY2Vzc2VzOgorICAgICAgICBmb3IgcCBpbiBwcm9jZXNzZXMudmFsdWVzKCk6CiAgICAgICAgICAgICBwLmpvaW4oKQogCiAgICAgZGVmIHRlc3RfY29udGV4dF9tYW5hZ2VyX3NodXRkb3duKHNlbGYpOgpAQCAtMTY5LDcgKzE2OSw3IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoZS5tYXAoYWJzLCByYW5nZSgtNSwgNSkpKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWzUsIDQsIDMsIDIsIDEsIDAsIDEsIDIsIDMsIDRdKQogCi0gICAgICAgIGZvciBwIGluIHByb2Nlc3NlczoKKyAgICAgICAgZm9yIHAgaW4gcHJvY2Vzc2VzLnZhbHVlcygpOgogICAgICAgICAgICAgcC5qb2luKCkKIAogICAgIGRlZiB0ZXN0X2RlbF9zaHV0ZG93bihzZWxmKToKQEAgLTE4MCw3ICsxODAsNyBAQAogICAgICAgICBkZWwgZXhlY3V0b3IKIAogICAgICAgICBxdWV1ZV9tYW5hZ2VtZW50X3RocmVhZC5qb2luKCkKLSAgICAgICAgZm9yIHAgaW4gcHJvY2Vzc2VzOgorICAgICAgICBmb3IgcCBpbiBwcm9jZXNzZXMudmFsdWVzKCk6CiAgICAgICAgICAgICBwLmpvaW4oKQogCiBjbGFzcyBXYWl0VGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtMjY2LDE0ICsyNjYsMTQgQEAKIAogICAgIGRlZiB0ZXN0X3RpbWVvdXQoc2VsZik6CiAgICAgICAgIGZ1dHVyZTEgPSBzZWxmLmV4ZWN1dG9yLnN1Ym1pdChtdWwsIDYsIDcpCi0gICAgICAgIGZ1dHVyZTIgPSBzZWxmLmV4ZWN1dG9yLnN1Ym1pdCh0aW1lLnNsZWVwLCAzKQorICAgICAgICBmdXR1cmUyID0gc2VsZi5leGVjdXRvci5zdWJtaXQodGltZS5zbGVlcCwgNikKIAogICAgICAgICBmaW5pc2hlZCwgcGVuZGluZyA9IGZ1dHVyZXMud2FpdCgKICAgICAgICAgICAgICAgICBbQ0FOQ0VMTEVEX0FORF9OT1RJRklFRF9GVVRVUkUsCiAgICAgICAgICAgICAgICAgIEVYQ0VQVElPTl9GVVRVUkUsCiAgICAgICAgICAgICAgICAgIFNVQ0NFU1NGVUxfRlVUVVJFLAogICAgICAgICAgICAgICAgICBmdXR1cmUxLCBmdXR1cmUyXSwKLSAgICAgICAgICAgICAgICB0aW1lb3V0PTEuNSwKKyAgICAgICAgICAgICAgICB0aW1lb3V0PTUsCiAgICAgICAgICAgICAgICAgcmV0dXJuX3doZW49ZnV0dXJlcy5BTExfQ09NUExFVEVEKQogCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2V0KFtDQU5DRUxMRURfQU5EX05PVElGSUVEX0ZVVFVSRSwKQEAgLTM2Myw4ICszNjMsOCBAQAogICAgICAgICByZXN1bHRzID0gW10KICAgICAgICAgdHJ5OgogICAgICAgICAgICAgZm9yIGkgaW4gc2VsZi5leGVjdXRvci5tYXAodGltZS5zbGVlcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFswLCAwLCAzXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9MS41KToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFswLCAwLCA2XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ9NSk6CiAgICAgICAgICAgICAgICAgcmVzdWx0cy5hcHBlbmQoaSkKICAgICAgICAgZXhjZXB0IGZ1dHVyZXMuVGltZW91dEVycm9yOgogICAgICAgICAgICAgcGFzcwpAQCAtMzczLDEzICszNzMsMzggQEAKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFtOb25lLCBOb25lXSwgcmVzdWx0cykKIAorICAgIGRlZiB0ZXN0X3NodXRkb3duX3JhY2VfaXNzdWUxMjQ1NihzZWxmKToKKyAgICAgICAgIyBJc3N1ZSAjMTI0NTY6IHJhY2UgY29uZGl0aW9uIGF0IHNodXRkb3duIHdoZXJlIHRyeWluZyB0byBwb3N0IGEKKyAgICAgICAgIyBzZW50aW5lbCBpbiB0aGUgY2FsbCBxdWV1ZSBibG9ja3MgKHRoZSBxdWV1ZSBpcyBmdWxsIHdoaWxlIHByb2Nlc3NlcworICAgICAgICAjIGhhdmUgZXhpdGVkKS4KKyAgICAgICAgc2VsZi5leGVjdXRvci5tYXAoc3RyLCBbMl0gKiAoc2VsZi53b3JrZXJfY291bnQgKyAxKSkKKyAgICAgICAgc2VsZi5leGVjdXRvci5zaHV0ZG93bigpCisKIAogY2xhc3MgVGhyZWFkUG9vbEV4ZWN1dG9yVGVzdChUaHJlYWRQb29sTWl4aW4sIEV4ZWN1dG9yVGVzdCk6Ci0gICAgcGFzcworICAgIGRlZiB0ZXN0X21hcF9zdWJtaXRzX3dpdGhvdXRfaXRlcmF0aW9uKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyB2ZXJpZnlpbmcgaXNzdWUgMTE3NzcuIiIiCisgICAgICAgIGZpbmlzaGVkID0gW10KKyAgICAgICAgZGVmIHJlY29yZF9maW5pc2hlZChuKToKKyAgICAgICAgICAgIGZpbmlzaGVkLmFwcGVuZChuKQorCisgICAgICAgIHNlbGYuZXhlY3V0b3IubWFwKHJlY29yZF9maW5pc2hlZCwgcmFuZ2UoMTApKQorICAgICAgICBzZWxmLmV4ZWN1dG9yLnNodXRkb3duKHdhaXQ9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRDb3VudEVxdWFsKGZpbmlzaGVkLCByYW5nZSgxMCkpCiAKIAogY2xhc3MgUHJvY2Vzc1Bvb2xFeGVjdXRvclRlc3QoUHJvY2Vzc1Bvb2xNaXhpbiwgRXhlY3V0b3JUZXN0KToKLSAgICBwYXNzCisgICAgZGVmIHRlc3Rfa2lsbGVkX2NoaWxkKHNlbGYpOgorICAgICAgICAjIFdoZW4gYSBjaGlsZCBwcm9jZXNzIGlzIGFicnVwdGx5IHRlcm1pbmF0ZWQsIHRoZSB3aG9sZSBwb29sIGdldHMKKyAgICAgICAgIyAiYnJva2VuIi4KKyAgICAgICAgZnV0dXJlcyA9IFtzZWxmLmV4ZWN1dG9yLnN1Ym1pdCh0aW1lLnNsZWVwLCAzKV0KKyAgICAgICAgIyBHZXQgb25lIG9mIHRoZSBwcm9jZXNzZXMsIGFuZCB0ZXJtaW5hdGUgKGtpbGwpIGl0CisgICAgICAgIHAgPSBuZXh0KGl0ZXIoc2VsZi5leGVjdXRvci5fcHJvY2Vzc2VzLnZhbHVlcygpKSkKKyAgICAgICAgcC50ZXJtaW5hdGUoKQorICAgICAgICBmb3IgZnV0IGluIGZ1dHVyZXM6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhCcm9rZW5Qcm9jZXNzUG9vbCwgZnV0LnJlc3VsdCkKKyAgICAgICAgIyBTdWJtaXR0aW5nIG90aGVyIGpvYnMgZmFpbHMgYXMgd2VsbC4KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoQnJva2VuUHJvY2Vzc1Bvb2wsIHNlbGYuZXhlY3V0b3Iuc3VibWl0LCBwb3csIDIsIDgpCiAKIAogY2xhc3MgRnV0dXJlVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtNDgyLDcgKzUwNyw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgJzxGdXR1cmUgYXQgMHhbMC05YS1mXSsgc3RhdGU9Y2FuY2VsbGVkPicpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgoCiAgICAgICAgICAgICAgICAgcmVwcihFWENFUFRJT05fRlVUVVJFKSwKLSAgICAgICAgICAgICAgICAnPEZ1dHVyZSBhdCAweFswLTlhLWZdKyBzdGF0ZT1maW5pc2hlZCByYWlzZWQgSU9FcnJvcj4nKQorICAgICAgICAgICAgICAgICc8RnV0dXJlIGF0IDB4WzAtOWEtZl0rIHN0YXRlPWZpbmlzaGVkIHJhaXNlZCBPU0Vycm9yPicpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgoCiAgICAgICAgICAgICAgICAgcmVwcihTVUNDRVNTRlVMX0ZVVFVSRSksCiAgICAgICAgICAgICAgICAgJzxGdXR1cmUgYXQgMHhbMC05YS1mXSsgc3RhdGU9ZmluaXNoZWQgcmV0dXJuZWQgaW50PicpCkBAIC00OTMsNyArNTE4LDcgQEAKICAgICAgICAgZjIgPSBjcmVhdGVfZnV0dXJlKHN0YXRlPVJVTk5JTkcpCiAgICAgICAgIGYzID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1DQU5DRUxMRUQpCiAgICAgICAgIGY0ID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1DQU5DRUxMRURfQU5EX05PVElGSUVEKQotICAgICAgICBmNSA9IGNyZWF0ZV9mdXR1cmUoc3RhdGU9RklOSVNIRUQsIGV4Y2VwdGlvbj1JT0Vycm9yKCkpCisgICAgICAgIGY1ID0gY3JlYXRlX2Z1dHVyZShzdGF0ZT1GSU5JU0hFRCwgZXhjZXB0aW9uPU9TRXJyb3IoKSkKICAgICAgICAgZjYgPSBjcmVhdGVfZnV0dXJlKHN0YXRlPUZJTklTSEVELCByZXN1bHQ9NSkKIAogICAgICAgICBzZWxmLmFzc2VydFRydWUoZjEuY2FuY2VsKCkpCkBAIC01NDcsNyArNTcyLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgQ0FOQ0VMTEVEX0ZVVFVSRS5yZXN1bHQsIHRpbWVvdXQ9MCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoZnV0dXJlcy5DYW5jZWxsZWRFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgQ0FOQ0VMTEVEX0FORF9OT1RJRklFRF9GVVRVUkUucmVzdWx0LCB0aW1lb3V0PTApCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKElPRXJyb3IsIEVYQ0VQVElPTl9GVVRVUkUucmVzdWx0LCB0aW1lb3V0PTApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIEVYQ0VQVElPTl9GVVRVUkUucmVzdWx0LCB0aW1lb3V0PTApCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoU1VDQ0VTU0ZVTF9GVVRVUkUucmVzdWx0KHRpbWVvdXQ9MCksIDQyKQogCiAgICAgZGVmIHRlc3RfcmVzdWx0X3dpdGhfc3VjY2VzcyhzZWxmKToKQEAgLTU4Niw3ICs2MTEsNyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhmdXR1cmVzLkNhbmNlbGxlZEVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICBDQU5DRUxMRURfQU5EX05PVElGSUVEX0ZVVFVSRS5leGNlcHRpb24sIHRpbWVvdXQ9MCkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzaW5zdGFuY2UoRVhDRVBUSU9OX0ZVVFVSRS5leGNlcHRpb24odGltZW91dD0wKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU9FcnJvcikpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9TRXJyb3IpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFNVQ0NFU1NGVUxfRlVUVVJFLmV4Y2VwdGlvbih0aW1lb3V0PTApLCBOb25lKQogCiAgICAgZGVmIHRlc3RfZXhjZXB0aW9uX3dpdGhfc3VjY2VzcyhzZWxmKToKQEAgLTU5NSwxNCArNjIwLDE0IEBACiAgICAgICAgICAgICB0aW1lLnNsZWVwKDEpCiAgICAgICAgICAgICB3aXRoIGYxLl9jb25kaXRpb246CiAgICAgICAgICAgICAgICAgZjEuX3N0YXRlID0gRklOSVNIRUQKLSAgICAgICAgICAgICAgICBmMS5fZXhjZXB0aW9uID0gSU9FcnJvcigpCisgICAgICAgICAgICAgICAgZjEuX2V4Y2VwdGlvbiA9IE9TRXJyb3IoKQogICAgICAgICAgICAgICAgIGYxLl9jb25kaXRpb24ubm90aWZ5X2FsbCgpCiAKICAgICAgICAgZjEgPSBjcmVhdGVfZnV0dXJlKHN0YXRlPVBFTkRJTkcpCiAgICAgICAgIHQgPSB0aHJlYWRpbmcuVGhyZWFkKHRhcmdldD1ub3RpZmljYXRpb24pCiAgICAgICAgIHQuc3RhcnQoKQogCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2luc3RhbmNlKGYxLmV4Y2VwdGlvbih0aW1lb3V0PTUpLCBJT0Vycm9yKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzaW5zdGFuY2UoZjEuZXhjZXB0aW9uKHRpbWVvdXQ9NSksIE9TRXJyb3IpKQogCiBAdGVzdC5zdXBwb3J0LnJlYXBfdGhyZWFkcwogZGVmIHRlc3RfbWFpbigpOgpAQCAtNjE1LDcgKzY0MCw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhyZWFkUG9vbEFzQ29tcGxldGVkVGVzdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRnV0dXJlVGVzdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJvY2Vzc1Bvb2xTaHV0ZG93blRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhyZWFkUG9vbFNodXRkb3duVGVzdCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaHJlYWRQb29sU2h1dGRvd25UZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICBmaW5hbGx5OgogICAgICAgICB0ZXN0LnN1cHBvcnQucmVhcF9jaGlsZHJlbigpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY2ZncGFyc2VyLnB5IGIvTGliL3Rlc3QvdGVzdF9jb25maWdwYXJzZXIucHkKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi90ZXN0L3Rlc3RfY2ZncGFyc2VyLnB5CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2NvbmZpZ3BhcnNlci5weQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jb3B5LnB5IGIvTGliL3Rlc3QvdGVzdF9jb3B5LnB5CmluZGV4IGE4NGMxMDkuLmM0YmFhZTQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY29weS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NvcHkucHkKQEAgLTE3LDcgKzE3LDcgQEAKICAgICAjIEF0dGVtcHQgZnVsbCBsaW5lIGNvdmVyYWdlIG9mIGNvcHkucHkgZnJvbSB0b3AgdG8gYm90dG9tCiAKICAgICBkZWYgdGVzdF9leGNlcHRpb25zKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFRydWUoY29weS5FcnJvciBpcyBjb3B5LmVycm9yKQorICAgICAgICBzZWxmLmFzc2VydElzKGNvcHkuRXJyb3IsIGNvcHkuZXJyb3IpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc3N1YmNsYXNzKGNvcHkuRXJyb3IsIEV4Y2VwdGlvbikpCiAKICAgICAjIFRoZSBjb3B5KCkgbWV0aG9kCkBAIC01NCwyMCArNTQsMjYgQEAKICAgICBkZWYgdGVzdF9jb3B5X3JlZHVjZV9leChzZWxmKToKICAgICAgICAgY2xhc3MgQyhvYmplY3QpOgogICAgICAgICAgICAgZGVmIF9fcmVkdWNlX2V4X18oc2VsZiwgcHJvdG8pOgorICAgICAgICAgICAgICAgIGMuYXBwZW5kKDEpCiAgICAgICAgICAgICAgICAgcmV0dXJuICIiCiAgICAgICAgICAgICBkZWYgX19yZWR1Y2VfXyhzZWxmKToKLSAgICAgICAgICAgICAgICByYWlzZSBzdXBwb3J0LlRlc3RGYWlsZWQoInNob3VsZG4ndCBjYWxsIHRoaXMiKQorICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgic2hvdWxkbid0IGNhbGwgdGhpcyIpCisgICAgICAgIGMgPSBbXQogICAgICAgICB4ID0gQygpCiAgICAgICAgIHkgPSBjb3B5LmNvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5LCB4KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGMsIFsxXSkKIAogICAgIGRlZiB0ZXN0X2NvcHlfcmVkdWNlKHNlbGYpOgogICAgICAgICBjbGFzcyBDKG9iamVjdCk6CiAgICAgICAgICAgICBkZWYgX19yZWR1Y2VfXyhzZWxmKToKKyAgICAgICAgICAgICAgICBjLmFwcGVuZCgxKQogICAgICAgICAgICAgICAgIHJldHVybiAiIgorICAgICAgICBjID0gW10KICAgICAgICAgeCA9IEMoKQogICAgICAgICB5ID0gY29weS5jb3B5KHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeSwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLCBbMV0pCiAKICAgICBkZWYgdGVzdF9jb3B5X2NhbnQoc2VsZik6CiAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKQEAgLTkxLDcgKzk3LDcgQEAKICAgICAgICAgICAgICAgICAgImhlbGxvIiwgImhlbGxvXHUxMjM0IiwgZi5fX2NvZGVfXywKICAgICAgICAgICAgICAgICAgTmV3U3R5bGUsIHJhbmdlKDEwKSwgQ2xhc3NpYywgbWF4XQogICAgICAgICBmb3IgeCBpbiB0ZXN0czoKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjb3B5LmNvcHkoeCkgaXMgeCwgcmVwcih4KSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoY29weS5jb3B5KHgpLCB4KQogCiAgICAgZGVmIHRlc3RfY29weV9saXN0KHNlbGYpOgogICAgICAgICB4ID0gWzEsIDIsIDNdCkBAIC0xODUsOSArMTkxLDkgQEAKICAgICAgICAgeCA9IFt4LCB4XQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeVswXSBpcyBub3QgeFswXSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHlbMF0gaXMgeVsxXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh5LCB4KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHlbMF0sIHhbMF0pCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeVswXSwgeVsxXSkKIAogICAgIGRlZiB0ZXN0X2RlZXBjb3B5X2lzc3ViY2xhc3Moc2VsZik6CiAgICAgICAgICMgWFhYIE5vdGU6IHRoZXJlJ3Mgbm8gd2F5IHRvIHRlc3QgdGhlIFR5cGVFcnJvciBjb21pbmcgb3V0IG9mCkBAIC0yMjcsMjAgKzIzMywyNiBAQAogICAgIGRlZiB0ZXN0X2RlZXBjb3B5X3JlZHVjZV9leChzZWxmKToKICAgICAgICAgY2xhc3MgQyhvYmplY3QpOgogICAgICAgICAgICAgZGVmIF9fcmVkdWNlX2V4X18oc2VsZiwgcHJvdG8pOgorICAgICAgICAgICAgICAgIGMuYXBwZW5kKDEpCiAgICAgICAgICAgICAgICAgcmV0dXJuICIiCiAgICAgICAgICAgICBkZWYgX19yZWR1Y2VfXyhzZWxmKToKLSAgICAgICAgICAgICAgICByYWlzZSBzdXBwb3J0LlRlc3RGYWlsZWQoInNob3VsZG4ndCBjYWxsIHRoaXMiKQorICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgic2hvdWxkbid0IGNhbGwgdGhpcyIpCisgICAgICAgIGMgPSBbXQogICAgICAgICB4ID0gQygpCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeSwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLCBbMV0pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9yZWR1Y2Uoc2VsZik6CiAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKICAgICAgICAgICAgIGRlZiBfX3JlZHVjZV9fKHNlbGYpOgorICAgICAgICAgICAgICAgIGMuYXBwZW5kKDEpCiAgICAgICAgICAgICAgICAgcmV0dXJuICIiCisgICAgICAgIGMgPSBbXQogICAgICAgICB4ID0gQygpCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeSwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLCBbMV0pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9jYW50KHNlbGYpOgogICAgICAgICBjbGFzcyBDKG9iamVjdCk6CkBAIC0yNjQsMTQgKzI3NiwxNCBAQAogICAgICAgICAgICAgICAgICAiaGVsbG8iLCAiaGVsbG9cdTEyMzQiLCBmLl9fY29kZV9fLAogICAgICAgICAgICAgICAgICBOZXdTdHlsZSwgcmFuZ2UoMTApLCBDbGFzc2ljLCBtYXhdCiAgICAgICAgIGZvciB4IGluIHRlc3RzOgotICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGNvcHkuZGVlcGNvcHkoeCkgaXMgeCwgcmVwcih4KSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoY29weS5kZWVwY29weSh4KSwgeCkKIAogICAgIGRlZiB0ZXN0X2RlZXBjb3B5X2xpc3Qoc2VsZik6CiAgICAgICAgIHggPSBbWzEsIDJdLCAzXQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4IGlzIG5vdCB5KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeFswXSBpcyBub3QgeVswXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LCB5KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHhbMF0sIHlbMF0pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9yZWZsZXhpdmVfbGlzdChzZWxmKToKICAgICAgICAgeCA9IFtdCkBAIC0yNzksMTYgKzI5MSwyNiBAQAogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBmb3Igb3AgaW4gY29tcGFyaXNvbnM6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIG9wLCB5LCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeSBpcyBub3QgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHlbMF0gaXMgeSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh5LCB4KQorICAgICAgICBzZWxmLmFzc2VydElzKHlbMF0sIHkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHkpLCAxKQogCisgICAgZGVmIHRlc3RfZGVlcGNvcHlfZW1wdHlfdHVwbGUoc2VsZik6CisgICAgICAgIHggPSAoKQorICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQorICAgICAgICBzZWxmLmFzc2VydElzKHgsIHkpCisKICAgICBkZWYgdGVzdF9kZWVwY29weV90dXBsZShzZWxmKToKICAgICAgICAgeCA9IChbMSwgMl0sIDMpCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeSwgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHggaXMgbm90IHkpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4WzBdIGlzIG5vdCB5WzBdKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHgsIHkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeFswXSwgeVswXSkKKworICAgIGRlZiB0ZXN0X2RlZXBjb3B5X3R1cGxlX29mX2ltbXV0YWJsZXMoc2VsZik6CisgICAgICAgIHggPSAoKDEsIDIpLCAzKQorICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQorICAgICAgICBzZWxmLmFzc2VydElzKHgsIHkpCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9yZWZsZXhpdmVfdHVwbGUoc2VsZik6CiAgICAgICAgIHggPSAoW10sKQpAQCAtMjk2LDE2ICszMTgsMTYgQEAKICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKICAgICAgICAgZm9yIG9wIGluIGNvbXBhcmlzb25zOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBvcCwgeSwgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgbm90IHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5WzBdIGlzIG5vdCB4WzBdKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeVswXVswXSBpcyB5KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeVswXSwgeFswXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5WzBdWzBdLCB5KQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfZGljdChzZWxmKToKICAgICAgICAgeCA9IHsiZm9vIjogWzEsIDJdLCAiYmFyIjogM30KICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh5LCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBub3QgeSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHhbImZvbyJdIGlzIG5vdCB5WyJmb28iXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LCB5KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHhbImZvbyJdLCB5WyJmb28iXSkKIAogICAgIGRlZiB0ZXN0X2RlZXBjb3B5X3JlZmxleGl2ZV9kaWN0KHNlbGYpOgogICAgICAgICB4ID0ge30KQEAgLTMxNSwxNSArMzM3LDMwIEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG9wLCB5LCB4KQogICAgICAgICBmb3Igb3AgaW4gZXF1YWxpdHlfY29tcGFyaXNvbnM6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIG9wLCB5LCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeSBpcyBub3QgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHlbJ2ZvbyddIGlzIHkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeSwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5Wydmb28nXSwgeSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oeSksIDEpCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9rZWVwYWxpdmUoc2VsZik6CiAgICAgICAgIG1lbW8gPSB7fQotICAgICAgICB4ID0gNDIKKyAgICAgICAgeCA9IFtdCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgsIG1lbW8pCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtZW1vW2lkKHgpXSBpcyB4KQorICAgICAgICBzZWxmLmFzc2VydElzKG1lbW9baWQobWVtbyldWzBdLCB4KQorCisgICAgZGVmIHRlc3RfZGVlcGNvcHlfZG9udF9tZW1vX2ltbXV0YWJsZShzZWxmKToKKyAgICAgICAgbWVtbyA9IHt9CisgICAgICAgIHggPSBbMSwgMiwgMywgNF0KKyAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCwgbWVtbykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh5LCB4KQorICAgICAgICAjIFRoZXJlJ3MgdGhlIGVudHJ5IGZvciB0aGUgbmV3IGxpc3QsIGFuZCB0aGUga2VlcCBhbGl2ZS4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obWVtbyksIDIpCisKKyAgICAgICAgbWVtbyA9IHt9CisgICAgICAgIHggPSBbKDEsIDIpXQorICAgICAgICB5ID0gY29weS5kZWVwY29weSh4LCBtZW1vKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCisgICAgICAgICMgVHVwbGVzIHdpdGggaW1tdXRhYmxlIGNvbnRlbnRzIGFyZSBpbW11dGFibGUgZm9yIGRlZXBjb3B5LgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtZW1vKSwgMikKIAogICAgIGRlZiB0ZXN0X2RlZXBjb3B5X2luc3RfdmFuaWxsYShzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTMzNCw3ICszNzEsNyBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5LmZvbyBpcyBub3QgeC5mb28pCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfaW5zdF9kZWVwY29weShzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTM0Nyw4ICszODQsOCBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeS5mb28gaXMgbm90IHguZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfaW5zdF9nZXRpbml0YXJncyhzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTM2MSw4ICszOTgsOCBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeS5mb28gaXMgbm90IHguZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfaW5zdF9nZXRzdGF0ZShzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTM3NSw4ICs0MTIsOCBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeS5mb28gaXMgbm90IHguZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfaW5zdF9zZXRzdGF0ZShzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTM4OSw4ICs0MjYsOCBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeS5mb28gaXMgbm90IHguZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfaW5zdF9nZXRzdGF0ZV9zZXRzdGF0ZShzZWxmKToKICAgICAgICAgY2xhc3MgQzoKQEAgLTQwNSw4ICs0NDIsOCBAQAogICAgICAgICB4ID0gQyhbNDJdKQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5IGlzIG5vdCB4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeS5mb28gaXMgbm90IHguZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfZGVlcGNvcHlfcmVmbGV4aXZlX2luc3Qoc2VsZik6CiAgICAgICAgIGNsYXNzIEM6CkBAIC00MTQsOCArNDUxLDggQEAKICAgICAgICAgeCA9IEMoKQogICAgICAgICB4LmZvbyA9IHgKICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgbm90IHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5LmZvbyBpcyB5KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHksIHgpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeS5mb28sIHkpCiAKICAgICAjIF9yZWNvbnN0cnVjdCgpCiAKQEAgLTQyNSw5ICs0NjIsOSBAQAogICAgICAgICAgICAgICAgIHJldHVybiAiIgogICAgICAgICB4ID0gQygpCiAgICAgICAgIHkgPSBjb3B5LmNvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5LCB4KQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeSBpcyB4KQorICAgICAgICBzZWxmLmFzc2VydElzKHksIHgpCiAKICAgICBkZWYgdGVzdF9yZWNvbnN0cnVjdF9ub3N0YXRlKHNlbGYpOgogICAgICAgICBjbGFzcyBDKG9iamVjdCk6CkBAIC00MzYsOSArNDczLDkgQEAKICAgICAgICAgeCA9IEMoKQogICAgICAgICB4LmZvbyA9IDQyCiAgICAgICAgIHkgPSBjb3B5LmNvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkuX19jbGFzc19fIGlzIHguX19jbGFzc19fKQorICAgICAgICBzZWxmLmFzc2VydElzKHkuX19jbGFzc19fLCB4Ll9fY2xhc3NfXykKICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkuX19jbGFzc19fIGlzIHguX19jbGFzc19fKQorICAgICAgICBzZWxmLmFzc2VydElzKHkuX19jbGFzc19fLCB4Ll9fY2xhc3NfXykKIAogICAgIGRlZiB0ZXN0X3JlY29uc3RydWN0X3N0YXRlKHNlbGYpOgogICAgICAgICBjbGFzcyBDKG9iamVjdCk6CkBAIC00NTIsNyArNDg5LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh5LCB4KQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh5LmZvbyBpcyBub3QgeC5mb28pCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeS5mb28sIHguZm9vKQogCiAgICAgZGVmIHRlc3RfcmVjb25zdHJ1Y3Rfc3RhdGVfc2V0c3RhdGUoc2VsZik6CiAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKQEAgLTQ2OCw3ICs1MDUsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHksIHgpCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeSwgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkuZm9vIGlzIG5vdCB4LmZvbykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh5LmZvbywgeC5mb28pCiAKICAgICBkZWYgdGVzdF9yZWNvbnN0cnVjdF9yZWZsZXhpdmUoc2VsZik6CiAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKQEAgLTQ3Niw4ICs1MTMsOCBAQAogICAgICAgICB4ID0gQygpCiAgICAgICAgIHguZm9vID0geAogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeSBpcyBub3QgeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkuZm9vIGlzIHkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeSwgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5LmZvbywgeSkKIAogICAgICMgQWRkaXRpb25zIGZvciBQeXRob24gMi4zIGFuZCBwaWNrbGUgcHJvdG9jb2wgMgogCkBAIC00OTEsMTIgKzUyOCwxMiBAQAogICAgICAgICB4ID0gQyhbWzEsIDJdLCAzXSkKICAgICAgICAgeSA9IGNvcHkuY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHgsIHkpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4IGlzIG5vdCB5KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeFswXSBpcyB5WzBdKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHgsIHkpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeFswXSwgeVswXSkKICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LCB5KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBub3QgeSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHhbMF0gaXMgbm90IHlbMF0pCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeCwgeSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4WzBdLCB5WzBdKQogCiAgICAgZGVmIHRlc3RfcmVkdWNlXzV0dXBsZShzZWxmKToKICAgICAgICAgY2xhc3MgQyhkaWN0KToKQEAgLTUwOCwxMiArNTQ1LDEyIEBACiAgICAgICAgIHggPSBDKFsoImZvbyIsIFsxLCAyXSksICgiYmFyIiwgMyldKQogICAgICAgICB5ID0gY29weS5jb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeCwgeSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHggaXMgbm90IHkpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4WyJmb28iXSBpcyB5WyJmb28iXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LCB5KQorICAgICAgICBzZWxmLmFzc2VydElzKHhbImZvbyJdLCB5WyJmb28iXSkKICAgICAgICAgeSA9IGNvcHkuZGVlcGNvcHkoeCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LCB5KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBub3QgeSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHhbImZvbyJdIGlzIG5vdCB5WyJmb28iXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LCB5KQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHhbImZvbyJdLCB5WyJmb28iXSkKIAogICAgIGRlZiB0ZXN0X2NvcHlfc2xvdHMoc2VsZik6CiAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKQEAgLTUyMSw3ICs1NTgsNyBAQAogICAgICAgICB4ID0gQygpCiAgICAgICAgIHguZm9vID0gWzQyXQogICAgICAgICB5ID0gY29weS5jb3B5KHgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4LmZvbyBpcyB5LmZvbykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh4LmZvbywgeS5mb28pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9zbG90cyhzZWxmKToKICAgICAgICAgY2xhc3MgQyhvYmplY3QpOgpAQCAtNTMwLDcgKzU2Nyw3IEBACiAgICAgICAgIHguZm9vID0gWzQyXQogICAgICAgICB5ID0gY29weS5kZWVwY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHguZm9vLCB5LmZvbykKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHguZm9vIGlzIG5vdCB5LmZvbykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LmZvbywgeS5mb28pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9kaWN0X3N1YmNsYXNzKHNlbGYpOgogICAgICAgICBjbGFzcyBDKGRpY3QpOgpAQCAtNTQ3LDcgKzU4NCw3IEBACiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeCwgeSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4Ll9rZXlzLCB5Ll9rZXlzKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBub3QgeSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4LCB5KQogICAgICAgICB4WydiYXInXSA9IDEKICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh4LCB5KQogICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHguX2tleXMsIHkuX2tleXMpCkBAIC01NjAsOCArNTk3LDggQEAKICAgICAgICAgeSA9IGNvcHkuY29weSh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoeCksIGxpc3QoeSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeC5mb28sIHkuZm9vKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeFswXSBpcyB5WzBdKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeC5mb28gaXMgeS5mb28pCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeFswXSwgeVswXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh4LmZvbywgeS5mb28pCiAKICAgICBkZWYgdGVzdF9kZWVwY29weV9saXN0X3N1YmNsYXNzKHNlbGYpOgogICAgICAgICBjbGFzcyBDKGxpc3QpOgpAQCAtNTcxLDggKzYwOCw4IEBACiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGlzdCh4KSwgbGlzdCh5KSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LmZvbywgeS5mb28pCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh4WzBdIGlzIG5vdCB5WzBdKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeC5mb28gaXMgbm90IHkuZm9vKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHhbMF0sIHlbMF0pCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeC5mb28sIHkuZm9vKQogCiAgICAgZGVmIHRlc3RfY29weV90dXBsZV9zdWJjbGFzcyhzZWxmKToKICAgICAgICAgY2xhc3MgQyh0dXBsZSk6CkBAIC01ODksOCArNjI2LDggQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0dXBsZSh4KSwgKFsxLCAyXSwgMykpCiAgICAgICAgIHkgPSBjb3B5LmRlZXBjb3B5KHgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHVwbGUoeSksIChbMSwgMl0sIDMpKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBub3QgeSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHhbMF0gaXMgbm90IHlbMF0pCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeCwgeSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh4WzBdLCB5WzBdKQogCiAgICAgZGVmIHRlc3RfZ2V0c3RhdGVfZXhjKHNlbGYpOgogICAgICAgICBjbGFzcyBFdmlsU3RhdGUob2JqZWN0KToKQEAgLTYxOCwxMCArNjU1LDEwIEBACiAgICAgICAgIG9iaiA9IEMoKQogICAgICAgICB4ID0gd2Vha3JlZi5yZWYob2JqKQogICAgICAgICB5ID0gX2NvcHkoeCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgeCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh5LCB4KQogICAgICAgICBkZWwgb2JqCiAgICAgICAgIHkgPSBfY29weSh4KQotICAgICAgICBzZWxmLmFzc2VydFRydWUoeSBpcyB4KQorICAgICAgICBzZWxmLmFzc2VydElzKHksIHgpCiAKICAgICBkZWYgdGVzdF9jb3B5X3dlYWtyZWYoc2VsZik6CiAgICAgICAgIHNlbGYuX2NoZWNrX3dlYWtyZWYoY29weS5jb3B5KQpAQCAtNjM3LDcgKzY3NCw3IEBACiAgICAgICAgIHVbYV0gPSBiCiAgICAgICAgIHVbY10gPSBkCiAgICAgICAgIHYgPSBjb3B5LmNvcHkodSkKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh2IGlzIHUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QodiwgdSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh2LCB1KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHZbYV0sIGIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodltjXSwgZCkKQEAgLTY2Nyw4ICs3MDQsOCBAQAogICAgICAgICB2ID0gY29weS5kZWVwY29weSh1KQogICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHYsIHUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHYpLCAyKQotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHZbYV0gaXMgYikKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh2W2NdIGlzIGQpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QodlthXSwgYikKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh2W2NdLCBkKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHZbYV0uaSwgYi5pKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHZbY10uaSwgZC5pKQogICAgICAgICBkZWwgYwpAQCAtNjg3LDEyICs3MjQsMTIgQEAKICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh2LCB1KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbih2KSwgMikKICAgICAgICAgKHgsIHkpLCAoeiwgdCkgPSBzb3J0ZWQodi5pdGVtcygpLCBrZXk9bGFtYmRhIHBhaXI6IHBhaXJbMF0uaSkKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh4IGlzIGEpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3QoeCwgYSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LmksIGEuaSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHkgaXMgYikKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh6IGlzIGMpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoeSwgYikKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdCh6LCBjKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHouaSwgYy5pKQotICAgICAgICBzZWxmLmFzc2VydFRydWUodCBpcyBkKQorICAgICAgICBzZWxmLmFzc2VydElzKHQsIGQpCiAgICAgICAgIGRlbCB4LCB5LCB6LCB0CiAgICAgICAgIGRlbCBkCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHYpLCAxKQpAQCAtNzA1LDcgKzc0Miw3IEBACiAgICAgICAgIGYuYiA9IGYubQogICAgICAgICBnID0gY29weS5kZWVwY29weShmKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGcubSwgZy5iKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoZy5iLl9fc2VsZl9fIGlzIGcpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZy5iLl9fc2VsZl9fLCBnKQogICAgICAgICBnLmIoKQogCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfY3Byb2ZpbGUucHkgYi9MaWIvdGVzdC90ZXN0X2Nwcm9maWxlLnB5CmluZGV4IGFlMTdjMmIuLjU2NzY2NjggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfY3Byb2ZpbGUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9jcHJvZmlsZS5weQpAQCAtMTgsMTYgKzE4LDE5IEBACiAgICAgZGVmIHRlc3RfYmFkX2NvdW50ZXJfZHVyaW5nX2RlYWxsb2Moc2VsZik6CiAgICAgICAgIGltcG9ydCBfbHNwcm9mCiAgICAgICAgICMgTXVzdCB1c2UgYSBmaWxlIGFzIFN0cmluZ0lPIGRvZXNuJ3QgdHJpZ2dlciB0aGUgYnVnLgotICAgICAgICB3aXRoIG9wZW4oVEVTVEZOLCAndycpIGFzIGZpbGU6Ci0gICAgICAgICAgICBzeXMuc3RkZXJyID0gZmlsZQotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIG9iaiA9IF9sc3Byb2YuUHJvZmlsZXIobGFtYmRhOiBpbnQpCi0gICAgICAgICAgICAgICAgb2JqLmVuYWJsZSgpCi0gICAgICAgICAgICAgICAgb2JqID0gX2xzcHJvZi5Qcm9maWxlcigxKQotICAgICAgICAgICAgICAgIG9iai5kaXNhYmxlKCkKLSAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgc3lzLnN0ZGVyciA9IHN5cy5fX3N0ZGVycl9fCi0gICAgICAgIHVubGluayhURVNURk4pCisgICAgICAgIG9yaWdfc3RkZXJyID0gc3lzLnN0ZGVycgorICAgICAgICB0cnk6CisgICAgICAgICAgICB3aXRoIG9wZW4oVEVTVEZOLCAndycpIGFzIGZpbGU6CisgICAgICAgICAgICAgICAgc3lzLnN0ZGVyciA9IGZpbGUKKyAgICAgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgICAgIG9iaiA9IF9sc3Byb2YuUHJvZmlsZXIobGFtYmRhOiBpbnQpCisgICAgICAgICAgICAgICAgICAgIG9iai5lbmFibGUoKQorICAgICAgICAgICAgICAgICAgICBvYmogPSBfbHNwcm9mLlByb2ZpbGVyKDEpCisgICAgICAgICAgICAgICAgICAgIG9iai5kaXNhYmxlKCkKKyAgICAgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgICAgICBzeXMuc3RkZXJyID0gb3JpZ19zdGRlcnIKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHVubGluayhURVNURk4pCiAKIAogZGVmIHRlc3RfbWFpbigpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jcmFzaGVycy5weSBiL0xpYi90ZXN0L3Rlc3RfY3Jhc2hlcnMucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzM2Y2NiZQotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L3Rlc3RfY3Jhc2hlcnMucHkKQEAgLTAsMCArMSwzOCBAQAorIyBUZXN0cyB0aGF0IHRoZSBjcmFzaGVycyBpbiB0aGUgTGliL3Rlc3QvY3Jhc2hlcnMgZGlyZWN0b3J5IGFjdHVhbGx5CisjIGRvIGNyYXNoIHRoZSBpbnRlcnByZXRlciBhcyBleHBlY3RlZAorIworIyBJZiBhIGNyYXNoZXIgaXMgZml4ZWQsIGl0IHNob3VsZCBiZSBtb3ZlZCBlbHNld2hlcmUgaW4gdGhlIHRlc3Qgc3VpdGUgdG8KKyMgZW5zdXJlIGl0IGNvbnRpbnVlcyB0byB3b3JrIGNvcnJlY3RseS4KKworaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgZ2xvYgoraW1wb3J0IG9zLnBhdGgKK2ltcG9ydCB0ZXN0LnN1cHBvcnQKK2Zyb20gdGVzdC5zY3JpcHRfaGVscGVyIGltcG9ydCBhc3NlcnRfcHl0aG9uX2ZhaWx1cmUKKworQ1JBU0hFUl9ESVIgPSBvcy5wYXRoLmpvaW4ob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSwgImNyYXNoZXJzIikKK0NSQVNIRVJfRklMRVMgPSBvcy5wYXRoLmpvaW4oQ1JBU0hFUl9ESVIsICIqLnB5IikKKworaW5maW5pdGVfbG9vcHMgPSBbImluZmluaXRlX2xvb3BfcmUucHkiLCAibmFzdHlfZXFfdnNfZGljdC5weSJdCisKK2NsYXNzIENyYXNoZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIEB1bml0dGVzdC5za2lwKCJ0aGVzZSB0ZXN0cyBhcmUgdG9vIGZyYWdpbGUiKQorICAgIEB0ZXN0LnN1cHBvcnQuY3B5dGhvbl9vbmx5CisgICAgZGVmIHRlc3RfY3Jhc2hlcnNfY3Jhc2goc2VsZik6CisgICAgICAgIGZvciBmbmFtZSBpbiBnbG9iLmdsb2IoQ1JBU0hFUl9GSUxFUyk6CisgICAgICAgICAgICBpZiBvcy5wYXRoLmJhc2VuYW1lKGZuYW1lKSBpbiBpbmZpbml0ZV9sb29wczoKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgIyBTb21lICJjcmFzaGVycyIgb25seSB0cmlnZ2VyIGFuIGV4Y2VwdGlvbiByYXRoZXIgdGhhbiBhCisgICAgICAgICAgICAjIHNlZ2ZhdWx0LiBDb25zaWRlciB0aGF0IGFuIGFjY2VwdGFibGUgb3V0Y29tZS4KKyAgICAgICAgICAgIGlmIHRlc3Quc3VwcG9ydC52ZXJib3NlOgorICAgICAgICAgICAgICAgIHByaW50KCJDaGVja2luZyBjcmFzaGVyOiIsIGZuYW1lKQorICAgICAgICAgICAgYXNzZXJ0X3B5dGhvbl9mYWlsdXJlKGZuYW1lKQorCisKK2RlZiB0ZXN0X21haW4oKToKKyAgICB0ZXN0LnN1cHBvcnQucnVuX3VuaXR0ZXN0KENyYXNoZXJUZXN0KQorICAgIHRlc3Quc3VwcG9ydC5yZWFwX2NoaWxkcmVuKCkKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jcnlwdC5weSBiL0xpYi90ZXN0L3Rlc3RfY3J5cHQucHkKaW5kZXggMmFkYjI4ZC4uZGMxMDdkOCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9jcnlwdC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2NyeXB0LnB5CkBAIC0xMCw2ICsxMCwyNSBAQAogICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6CiAgICAgICAgICAgICBwcmludCgnVGVzdCBlbmNyeXB0aW9uOiAnLCBjKQogCisgICAgZGVmIHRlc3Rfc2FsdChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY3J5cHQuX3NhbHRjaGFycyksIDY0KQorICAgICAgICBmb3IgbWV0aG9kIGluIGNyeXB0Lm1ldGhvZHM6CisgICAgICAgICAgICBzYWx0ID0gY3J5cHQubWtzYWx0KG1ldGhvZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNhbHQpLAorICAgICAgICAgICAgICAgICAgICBtZXRob2Quc2FsdF9jaGFycyArICgzIGlmIG1ldGhvZC5pZGVudCBlbHNlIDApKQorCisgICAgZGVmIHRlc3Rfc2FsdGVkY3J5cHQoc2VsZik6CisgICAgICAgIGZvciBtZXRob2QgaW4gY3J5cHQubWV0aG9kczoKKyAgICAgICAgICAgIHB3ID0gY3J5cHQuY3J5cHQoJ2Fzc3dvcmQnLCBtZXRob2QpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihwdyksIG1ldGhvZC50b3RhbF9zaXplKQorICAgICAgICAgICAgcHcgPSBjcnlwdC5jcnlwdCgnYXNzd29yZCcsIGNyeXB0Lm1rc2FsdChtZXRob2QpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4ocHcpLCBtZXRob2QudG90YWxfc2l6ZSkKKworICAgIGRlZiB0ZXN0X21ldGhvZHMoc2VsZik6CisgICAgICAgICMgR3VyYW50ZWUgdGhhdCBNRVRIT0RfQ1JZUFQgaXMgdGhlIGxhc3QgbWV0aG9kIGluIGNyeXB0Lm1ldGhvZHMuCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShsZW4oY3J5cHQubWV0aG9kcykgPj0gMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjcnlwdC5NRVRIT0RfQ1JZUFQsIGNyeXB0Lm1ldGhvZHNbLTFdKQorCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoQ3J5cHRUZXN0Q2FzZSkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9jdXJzZXMucHkgYi9MaWIvdGVzdC90ZXN0X2N1cnNlcy5weQppbmRleCA1ODEyMTQ3Li4yMWFjNjA4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2N1cnNlcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2N1cnNlcy5weQpAQCAtMjY0LDExICsyNjQsNTUgQEAKICAgICBjdXJzZXMudW5nZXRjaCgxMDI1KQogICAgIHN0ZHNjci5nZXRrZXkoKQogCitkZWYgdGVzdF91bmdldF93Y2goc3Rkc2NyKToKKyAgICBpZiBub3QgaGFzYXR0cihjdXJzZXMsICd1bmdldF93Y2gnKToKKyAgICAgICAgcmV0dXJuCisgICAgaW1wb3J0IGxvY2FsZQorICAgIGVuY29kaW5nID0gbG9jYWxlLmdldHByZWZlcnJlZGVuY29kaW5nKCkKKyAgICBmb3IgY2ggaW4gKCdhJywgJ1x4ZTknLCAnXHUyMGFjJywgJ1xVMDAxMEZGRkYnKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY2guZW5jb2RlKGVuY29kaW5nKQorICAgICAgICBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yOgorICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgY3Vyc2VzLnVuZ2V0X3djaChjaCkKKyAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlcnI6CisgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oInVuZ2V0X3djaCglYSkgZmFpbGVkIHdpdGggbG9jYWxlIGVuY29kaW5nICVzOiAlcyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIChjaCwgZW5jb2RpbmcsIGVycikpCisgICAgICAgIHJlYWQgPSBzdGRzY3IuZ2V0X3djaCgpCisgICAgICAgIHJlYWQgPSBjaHIocmVhZCkKKyAgICAgICAgaWYgcmVhZCAhPSBjaDoKKyAgICAgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCIlciAhPSAlciIgJSAocmVhZCwgY2gpKQorCisgICAgICAgIGNvZGUgPSBvcmQoY2gpCisgICAgICAgIGN1cnNlcy51bmdldF93Y2goY29kZSkKKyAgICAgICAgcmVhZCA9IHN0ZHNjci5nZXRfd2NoKCkKKyAgICAgICAgaWYgcmVhZCAhPSBjb2RlOgorICAgICAgICAgICAgcmFpc2UgQXNzZXJ0aW9uRXJyb3IoIiVyICE9ICVyIiAlIChyZWFkLCBjb2RlKSkKKwogZGVmIHRlc3RfaXNzdWUxMDU3MCgpOgogICAgIGIgPSBjdXJzZXMudHBhcm0oY3Vyc2VzLnRpZ2V0c3RyKCJjdXAiKSwgNSwgMykKICAgICBhc3NlcnQgdHlwZShiKSBpcyBieXRlcwogICAgIGN1cnNlcy5wdXRwKGIpCiAKK2RlZiB0ZXN0X2VuY29kaW5nKHN0ZHNjcik6CisgICAgaW1wb3J0IGNvZGVjcworICAgIGVuY29kaW5nID0gc3Rkc2NyLmVuY29kaW5nCisgICAgY29kZWNzLmxvb2t1cChlbmNvZGluZykKKyAgICB0cnk6CisgICAgICAgIHN0ZHNjci5lbmNvZGluZyA9IDEwCisgICAgZXhjZXB0IFR5cGVFcnJvcjoKKyAgICAgICAgcGFzcworICAgIGVsc2U6CisgICAgICAgIHJhaXNlIEFzc2VydGlvbkVycm9yKCJUeXBlRXJyb3Igbm90IHJhaXNlZCIpCisgICAgc3Rkc2NyLmVuY29kaW5nID0gZW5jb2RpbmcKKyAgICB0cnk6CisgICAgICAgIGRlbCBzdGRzY3IuZW5jb2RpbmcKKyAgICBleGNlcHQgVHlwZUVycm9yOgorICAgICAgICBwYXNzCisgICAgZWxzZToKKyAgICAgICAgcmFpc2UgQXNzZXJ0aW9uRXJyb3IoIlR5cGVFcnJvciBub3QgcmFpc2VkIikKKwogZGVmIG1haW4oc3Rkc2NyKToKICAgICBjdXJzZXMuc2F2ZXR0eSgpCiAgICAgdHJ5OgpAQCAtMjc3LDE2ICszMjEsMTggQEAKICAgICAgICAgdGVzdF91c2VycHRyX3dpdGhvdXRfc2V0KHN0ZHNjcikKICAgICAgICAgdGVzdF9yZXNpemVfdGVybShzdGRzY3IpCiAgICAgICAgIHRlc3RfaXNzdWU2MjQzKHN0ZHNjcikKKyAgICAgICAgdGVzdF91bmdldF93Y2goc3Rkc2NyKQogICAgICAgICB0ZXN0X2lzc3VlMTA1NzAoKQorICAgICAgICB0ZXN0X2VuY29kaW5nKHN0ZHNjcikKICAgICBmaW5hbGx5OgogICAgICAgICBjdXJzZXMucmVzZXR0eSgpCiAKIGRlZiB0ZXN0X21haW4oKToKLSAgICBpZiBub3Qgc3lzLnN0ZG91dC5pc2F0dHkoKToKLSAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoInN5cy5zdGRvdXQgaXMgbm90IGEgdHR5IikKKyAgICBpZiBub3Qgc3lzLl9fc3Rkb3V0X18uaXNhdHR5KCk6CisgICAgICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJzeXMuX19zdGRvdXRfXyBpcyBub3QgYSB0dHkiKQogICAgICMgdGVzdGluZyBzZXR1cHRlcm0oKSBpbnNpZGUgaW5pdHNjci9lbmR3aW4KICAgICAjIGNhdXNlcyB0ZXJtaW5hbCBicmVha2FnZQotICAgIGN1cnNlcy5zZXR1cHRlcm0oZmQ9c3lzLnN0ZG91dC5maWxlbm8oKSkKKyAgICBjdXJzZXMuc2V0dXB0ZXJtKGZkPXN5cy5fX3N0ZG91dF9fLmZpbGVubygpKQogICAgIHRyeToKICAgICAgICAgc3Rkc2NyID0gY3Vyc2VzLmluaXRzY3IoKQogICAgICAgICBtYWluKHN0ZHNjcikKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZGJtLnB5IGIvTGliL3Rlc3QvdGVzdF9kYm0ucHkKaW5kZXggMjZkNGMxNC4uMDJkZjdlMyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9kYm0ucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9kYm0ucHkKQEAgLTcxLDggKzcxLDggQEAKICAgICAgICAgZi5jbG9zZSgpCiAKICAgICBkZWYgdGVzdF9hbnlkYm1fY3JlYXRpb25fbl9maWxlX2V4aXN0c193aXRoX2ludmFsaWRfY29udGVudHMoc2VsZik6Ci0gICAgICAgIHdpdGggb3BlbihfZm5hbWUsICJ3IikgYXMgdzoKLSAgICAgICAgICAgIHBhc3MgIyBjcmVhdGUgYW4gZW1wdHkgZmlsZQorICAgICAgICAjIGNyZWF0ZSBhbiBlbXB0eSBmaWxlCisgICAgICAgIHRlc3Quc3VwcG9ydC5jcmVhdGVfZW1wdHlfZmlsZShfZm5hbWUpCiAKICAgICAgICAgZiA9IGRibS5vcGVuKF9mbmFtZSwgJ24nKQogICAgICAgICBzZWxmLmFkZENsZWFudXAoZi5jbG9zZSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZGVjaW1hbC5weSBiL0xpYi90ZXN0L3Rlc3RfZGVjaW1hbC5weQppbmRleCBlNDZjZDkxLi4wMTRlOWM3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2RlY2ltYWwucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9kZWNpbWFsLnB5CkBAIC0xODM0LDE4ICsxODM0LDkgQEAKICAgICAgICAgIyBvbmx5LCB0aGUgYXR0cmlidXRlIHNob3VsZCBiZSBnZXR0YWJsZS9zZXR0YWJsZSB2aWEgYm90aAogICAgICAgICAjIGBjbGFtcGAgYW5kIGBfY2xhbXBgOyBpbiBQeXRob24gMy4zLCBgX2NsYW1wYCBzaG91bGQgYmUKICAgICAgICAgIyByZW1vdmVkLgotICAgICAgICBjID0gQ29udGV4dChjbGFtcCA9IDApCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYy5jbGFtcCwgMCkKLQotICAgICAgICB3aXRoIGNoZWNrX3dhcm5pbmdzKCgiIiwgRGVwcmVjYXRpb25XYXJuaW5nKSk6Ci0gICAgICAgICAgICBjLl9jbGFtcCA9IDEKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjLmNsYW1wLCAxKQotICAgICAgICB3aXRoIGNoZWNrX3dhcm5pbmdzKCgiIiwgRGVwcmVjYXRpb25XYXJuaW5nKSk6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGMuX2NsYW1wLCAxKQotICAgICAgICBjLmNsYW1wID0gMAotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGMuY2xhbXAsIDApCi0gICAgICAgIHdpdGggY2hlY2tfd2FybmluZ3MoKCIiLCBEZXByZWNhdGlvbldhcm5pbmcpKToKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYy5fY2xhbXAsIDApCisgICAgICAgIGMgPSBDb250ZXh0KCkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICBjbGFtcF92YWx1ZSA9IGMuX2NsYW1wCiAKICAgICBkZWYgdGVzdF9hYnMoc2VsZik6CiAgICAgICAgIGMgPSBDb250ZXh0KCkKQEAgLTE5NzAsNiArMTk2MSwxNyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMuZm1hLCAyLCAnMycsIDQpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYy5mbWEsIDIsIDMsICc0JykKIAorICAgICAgICAjIElzc3VlIDEyMDc5IGZvciBDb250ZXh0LmZtYSAuLi4KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjLmZtYSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgRGVjaW1hbCgnSW5maW5pdHknKSwgRGVjaW1hbCgwKSwgIm5vdCBhIGRlY2ltYWwiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGMuZm1hLAorICAgICAgICAgICAgICAgICAgICAgICAgICBEZWNpbWFsKDEpLCBEZWNpbWFsKCdzbmFuJyksIDEuMjIyKQorICAgICAgICAjIC4uLiBhbmQgZm9yIERlY2ltYWwuZm1hLgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIERlY2ltYWwoJ0luZmluaXR5JykuZm1hLAorICAgICAgICAgICAgICAgICAgICAgICAgICBEZWNpbWFsKDApLCAibm90IGEgZGVjaW1hbCIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgRGVjaW1hbCgxKS5mbWEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIERlY2ltYWwoJ3NuYW4nKSwgMS4yMjIpCisKICAgICBkZWYgdGVzdF9pc19maW5pdGUoc2VsZik6CiAgICAgICAgIGMgPSBDb250ZXh0KCkKICAgICAgICAgZCA9IGMuaXNfZmluaXRlKERlY2ltYWwoMTApKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9kZXNjci5weSBiL0xpYi90ZXN0L3Rlc3RfZGVzY3IucHkKaW5kZXggYjIxNDk5Ni4uMmIyMDI2YyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9kZXNjci5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Rlc2NyLnB5CkBAIC02NTIsMTkgKzY1MiwxOSBAQAogICAgICAgICBjbGFzcyBBKG1ldGFjbGFzcz1BTWV0YSk6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydBTWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAKICAgICAgICAgY2xhc3MgQihtZXRhY2xhc3M9Qk1ldGEpOgogICAgICAgICAgICAgcGFzcwogICAgICAgICAjIEJNZXRhLl9fbmV3X18gY2FsbHMgQU1ldGEuX19uZXdfXyB3aXRoIHN1cGVyOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk1ldGEnLCAnQU1ldGEnXSwgbmV3X2NhbGxzKQotICAgICAgICBuZXdfY2FsbHNbOl0gPSBbXQorICAgICAgICBuZXdfY2FsbHMuY2xlYXIoKQogCiAgICAgICAgIGNsYXNzIEMoQSwgQik6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgICMgVGhlIG1vc3QgZGVyaXZlZCBtZXRhY2xhc3MgaXMgQk1ldGE6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTWV0YScsICdBTWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAgICAgICAgICMgQk1ldGEuX19wcmVwYXJlX18gc2hvdWxkJ3ZlIGJlZW4gY2FsbGVkOgogICAgICAgICBzZWxmLmFzc2VydEluKCdCTWV0YV93YXNfaGVyZScsIEMuX19kaWN0X18pCiAKQEAgLTY3MiwyMCArNjcyLDIwIEBACiAgICAgICAgIGNsYXNzIEMyKEIsIEEpOgogICAgICAgICAgICAgcGFzcwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk1ldGEnLCAnQU1ldGEnXSwgbmV3X2NhbGxzKQotICAgICAgICBuZXdfY2FsbHNbOl0gPSBbXQorICAgICAgICBuZXdfY2FsbHMuY2xlYXIoKQogICAgICAgICBzZWxmLmFzc2VydEluKCdCTWV0YV93YXNfaGVyZScsIEMyLl9fZGljdF9fKQogCiAgICAgICAgICMgQ2hlY2sgY29ycmVjdCBtZXRhY2xhc3MgY2FsY3VsYXRpb24gd2hlbiBhIG1ldGFjbGFzcyBpcyBkZWNsYXJlZDoKICAgICAgICAgY2xhc3MgRChDLCBtZXRhY2xhc3M9dHlwZSk6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTWV0YScsICdBTWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ0JNZXRhX3dhc19oZXJlJywgRC5fX2RpY3RfXykKIAogICAgICAgICBjbGFzcyBFKEMsIG1ldGFjbGFzcz1BTWV0YSk6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTWV0YScsICdBTWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ0JNZXRhX3dhc19oZXJlJywgRS5fX2RpY3RfXykKIAogICAgICAgICAjIFNwZWNpYWwgY2FzZTogdGhlIGdpdmVuIG1ldGFjbGFzcyBpc24ndCBhIGNsYXNzLApAQCAtNzI3LDMzICs3MjcsMzMgQEAKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRJcyhBTm90TWV0YSwgdHlwZShBKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ0FOb3RNZXRhJ10sIHByZXBhcmVfY2FsbHMpCi0gICAgICAgIHByZXBhcmVfY2FsbHNbOl0gPSBbXQorICAgICAgICBwcmVwYXJlX2NhbGxzLmNsZWFyKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ0FOb3RNZXRhJ10sIG5ld19jYWxscykKLSAgICAgICAgbmV3X2NhbGxzWzpdID0gW10KKyAgICAgICAgbmV3X2NhbGxzLmNsZWFyKCkKIAogICAgICAgICBjbGFzcyBCKG1ldGFjbGFzcz1CTm90TWV0YSk6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuYXNzZXJ0SXMoQk5vdE1ldGEsIHR5cGUoQikpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBwcmVwYXJlX2NhbGxzKQotICAgICAgICBwcmVwYXJlX2NhbGxzWzpdID0gW10KKyAgICAgICAgcHJlcGFyZV9jYWxscy5jbGVhcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAKICAgICAgICAgY2xhc3MgQyhBLCBCKToKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRJcyhCTm90TWV0YSwgdHlwZShDKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ0JOb3RNZXRhJywgJ0FOb3RNZXRhJ10sIG5ld19jYWxscykKLSAgICAgICAgbmV3X2NhbGxzWzpdID0gW10KKyAgICAgICAgbmV3X2NhbGxzLmNsZWFyKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbJ0JOb3RNZXRhJywgJ0FOb3RNZXRhJ10sIHByZXBhcmVfY2FsbHMpCi0gICAgICAgIHByZXBhcmVfY2FsbHNbOl0gPSBbXQorICAgICAgICBwcmVwYXJlX2NhbGxzLmNsZWFyKCkKIAogICAgICAgICBjbGFzcyBDMihCLCBBKToKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRJcyhCTm90TWV0YSwgdHlwZShDMikpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBwcmVwYXJlX2NhbGxzKQotICAgICAgICBwcmVwYXJlX2NhbGxzWzpdID0gW10KKyAgICAgICAgcHJlcGFyZV9jYWxscy5jbGVhcigpCiAKICAgICAgICAgIyBUaGlzIGlzIGEgVHlwZUVycm9yLCBiZWNhdXNlIG9mIGEgbWV0YWNsYXNzIGNvbmZsaWN0OgogICAgICAgICAjIEJOb3RNZXRhIGlzIG5laXRoZXIgYSBzdWJjbGFzcywgbm9yIGEgc3VwZXJjbGFzcyBvZiB0eXBlCkBAIC03NjUsMjUgKzc2NSwyNSBAQAogICAgICAgICAgICAgcGFzcwogICAgICAgICBzZWxmLmFzc2VydElzKEJOb3RNZXRhLCB0eXBlKEUpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk5vdE1ldGEnLCAnQU5vdE1ldGEnXSwgbmV3X2NhbGxzKQotICAgICAgICBuZXdfY2FsbHNbOl0gPSBbXQorICAgICAgICBuZXdfY2FsbHMuY2xlYXIoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk5vdE1ldGEnLCAnQU5vdE1ldGEnXSwgcHJlcGFyZV9jYWxscykKLSAgICAgICAgcHJlcGFyZV9jYWxsc1s6XSA9IFtdCisgICAgICAgIHByZXBhcmVfY2FsbHMuY2xlYXIoKQogCiAgICAgICAgIGNsYXNzIEYob2JqZWN0KCksIEMpOgogICAgICAgICAgICAgcGFzcwogICAgICAgICBzZWxmLmFzc2VydElzKEJOb3RNZXRhLCB0eXBlKEYpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk5vdE1ldGEnLCAnQU5vdE1ldGEnXSwgbmV3X2NhbGxzKQotICAgICAgICBuZXdfY2FsbHNbOl0gPSBbXQorICAgICAgICBuZXdfY2FsbHMuY2xlYXIoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsnQk5vdE1ldGEnLCAnQU5vdE1ldGEnXSwgcHJlcGFyZV9jYWxscykKLSAgICAgICAgcHJlcGFyZV9jYWxsc1s6XSA9IFtdCisgICAgICAgIHByZXBhcmVfY2FsbHMuY2xlYXIoKQogCiAgICAgICAgIGNsYXNzIEYyKEMsIG9iamVjdCgpKToKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRJcyhCTm90TWV0YSwgdHlwZShGMikpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBuZXdfY2FsbHMpCi0gICAgICAgIG5ld19jYWxsc1s6XSA9IFtdCisgICAgICAgIG5ld19jYWxscy5jbGVhcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoWydCTm90TWV0YScsICdBTm90TWV0YSddLCBwcmVwYXJlX2NhbGxzKQotICAgICAgICBwcmVwYXJlX2NhbGxzWzpdID0gW10KKyAgICAgICAgcHJlcGFyZV9jYWxscy5jbGVhcigpCiAKICAgICAgICAgIyBUeXBlRXJyb3I6IEJOb3RNZXRhIGlzIG5laXRoZXIgYQogICAgICAgICAjIHN1YmNsYXNzLCBub3IgYSBzdXBlcmNsYXNzIG9mIGludApAQCAtMTc5OSwxMiArMTc5OSw3IEBACiAgICAgICAgICAgICBmb3IgYXR0ciwgb2JqIGluIGVudi5pdGVtcygpOgogICAgICAgICAgICAgICAgIHNldGF0dHIoWCwgYXR0ciwgb2JqKQogICAgICAgICAgICAgc2V0YXR0cihYLCBuYW1lLCBFcnJEZXNjcigpKQotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHJ1bm5lcihYKCkpCi0gICAgICAgICAgICBleGNlcHQgTXlFeGNlcHRpb246Ci0gICAgICAgICAgICAgICAgcGFzcwotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBzZWxmLmZhaWwoInswIXJ9IGRpZG4ndCByYWlzZSIuZm9ybWF0KG5hbWUpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTXlFeGNlcHRpb24sIHJ1bm5lciwgWCgpKQogCiAgICAgZGVmIHRlc3Rfc3BlY2lhbHMoc2VsZik6CiAgICAgICAgICMgVGVzdGluZyBzcGVjaWFsIG9wZXJhdG9ycy4uLgpAQCAtMjI0MSw5ICsyMjM2LDYgQEAKICAgICAgICAgIyBUd28gZXNzZW50aWFsbHkgZmVhdHVyZWxlc3Mgb2JqZWN0cywganVzdCBpbmhlcml0aW5nIHN0dWZmIGZyb20KICAgICAgICAgIyBvYmplY3QuCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlyKE5vdEltcGxlbWVudGVkKSwgZGlyKEVsbGlwc2lzKSkKLSAgICAgICAgaWYgc3VwcG9ydC5jaGVja19pbXBsX2RldGFpbCgpOgotICAgICAgICAgICAgIyBOb25lIGRpZmZlcnMgaW4gUHlQeTogaXQgaGFzIGEgX19ub256ZXJvX18KLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlyKE5vbmUpLCBkaXIoRWxsaXBzaXMpKQogCiAgICAgICAgICMgTmFzdHkgdGVzdCBjYXNlIGZvciBwcm94aWVkIG9iamVjdHMKICAgICAgICAgY2xhc3MgV3JhcHBlcihvYmplY3QpOgpAQCAtNDQyOSw2ICs0NDIxLDQ1IEBACiAgICAgICAgIGZvbyA9IEZvbygpCiAgICAgICAgIHN0cihmb28pCiAKKyAgICBkZWYgdGVzdF9zbG90X3NoYWRvd3NfY2xhc3NfdmFyaWFibGUoc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcikgYXMgY206CisgICAgICAgICAgICBjbGFzcyBYOgorICAgICAgICAgICAgICAgIF9fc2xvdHNfXyA9IFsiZm9vIl0KKyAgICAgICAgICAgICAgICBmb28gPSBOb25lCisgICAgICAgIG0gPSBzdHIoY20uZXhjZXB0aW9uKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCInZm9vJyBpbiBfX3Nsb3RzX18gY29uZmxpY3RzIHdpdGggY2xhc3MgdmFyaWFibGUiLCBtKQorCisgICAgZGVmIHRlc3Rfc2V0X2RvYyhzZWxmKToKKyAgICAgICAgY2xhc3MgWDoKKyAgICAgICAgICAgICJlbGVwaGFudCIKKyAgICAgICAgWC5fX2RvY19fID0gImJhbmFuYSIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChYLl9fZG9jX18sICJiYW5hbmEiKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcikgYXMgY206CisgICAgICAgICAgICB0eXBlKGxpc3QpLl9fZGljdF9fWyJfX2RvY19fIl0uX19zZXRfXyhsaXN0LCAiYmxhaCIpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oImNhbid0IHNldCBsaXN0Ll9fZG9jX18iLCBzdHIoY20uZXhjZXB0aW9uKSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgdHlwZShYKS5fX2RpY3RfX1siX19kb2NfXyJdLl9fZGVsZXRlX18oWCkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiY2FuJ3QgZGVsZXRlIFguX19kb2NfXyIsIHN0cihjbS5leGNlcHRpb24pKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFguX19kb2NfXywgImJhbmFuYSIpCisKKyAgICBkZWYgdGVzdF9xdWFsbmFtZShzZWxmKToKKyAgICAgICAgZGVzY3JpcHRvcnMgPSBbc3RyLmxvd2VyLCBjb21wbGV4LnJlYWwsIGZsb2F0LnJlYWwsIGludC5fX2FkZF9fXQorICAgICAgICB0eXBlcyA9IFsnbWV0aG9kJywgJ21lbWJlcicsICdnZXRzZXQnLCAnd3JhcHBlciddCisKKyAgICAgICAgIyBtYWtlIHN1cmUgd2UgaGF2ZSBhbiBleGFtcGxlIG9mIGVhY2ggdHlwZSBvZiBkZXNjcmlwdG9yCisgICAgICAgIGZvciBkLCBuIGluIHppcChkZXNjcmlwdG9ycywgdHlwZXMpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0eXBlKGQpLl9fbmFtZV9fLCBuICsgJ19kZXNjcmlwdG9yJykKKworICAgICAgICBmb3IgZCBpbiBkZXNjcmlwdG9yczoKKyAgICAgICAgICAgIHF1YWxuYW1lID0gZC5fX29iamNsYXNzX18uX19xdWFsbmFtZV9fICsgJy4nICsgZC5fX25hbWVfXworICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkLl9fcXVhbG5hbWVfXywgcXVhbG5hbWUpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIubG93ZXIuX19xdWFsbmFtZV9fLCAnc3RyLmxvd2VyJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjb21wbGV4LnJlYWwuX19xdWFsbmFtZV9fLCAnY29tcGxleC5yZWFsJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbG9hdC5yZWFsLl9fcXVhbG5hbWVfXywgJ2Zsb2F0LnJlYWwnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGludC5fX2FkZF9fLl9fcXVhbG5hbWVfXywgJ2ludC5fX2FkZF9fJykKKworCiBjbGFzcyBEaWN0UHJveHlUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgZGVmIHNldFVwKHNlbGYpOgogICAgICAgICBjbGFzcyBDKG9iamVjdCk6CkBAIC00NDM2LDYgKzQ0NjcsOCBAQAogICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5DID0gQwogCisgICAgQHVuaXR0ZXN0LnNraXBJZihoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgYW5kIHN5cy5nZXR0cmFjZSgpLAorICAgICAgICAgICAgICAgICAgICAgICAgJ3RyYWNlIGZ1bmN0aW9uIGludHJvZHVjZXMgX19sb2NhbF9fJykKICAgICBkZWYgdGVzdF9pdGVyX2tleXMoc2VsZik6CiAgICAgICAgICMgVGVzdGluZyBkaWN0LXByb3h5IGtleXMuLi4KICAgICAgICAgaXQgPSBzZWxmLkMuX19kaWN0X18ua2V5cygpCkBAIC00NDQ1LDYgKzQ0NzgsOCBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGtleXMsIFsnX19kaWN0X18nLCAnX19kb2NfXycsICdfX21vZHVsZV9fJywKICAgICAgICAgICAgICdfX3dlYWtyZWZfXycsICdtZXRoJ10pCiAKKyAgICBAdW5pdHRlc3Quc2tpcElmKGhhc2F0dHIoc3lzLCAnZ2V0dHJhY2UnKSBhbmQgc3lzLmdldHRyYWNlKCksCisgICAgICAgICAgICAgICAgICAgICAgICAndHJhY2UgZnVuY3Rpb24gaW50cm9kdWNlcyBfX2xvY2FsX18nKQogICAgIGRlZiB0ZXN0X2l0ZXJfdmFsdWVzKHNlbGYpOgogICAgICAgICAjIFRlc3RpbmcgZGljdC1wcm94eSB2YWx1ZXMuLi4KICAgICAgICAgaXQgPSBzZWxmLkMuX19kaWN0X18udmFsdWVzKCkKQEAgLTQ0NTIsNiArNDQ4Nyw4IEBACiAgICAgICAgIHZhbHVlcyA9IGxpc3QoaXQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHZhbHVlcyksIDUpCiAKKyAgICBAdW5pdHRlc3Quc2tpcElmKGhhc2F0dHIoc3lzLCAnZ2V0dHJhY2UnKSBhbmQgc3lzLmdldHRyYWNlKCksCisgICAgICAgICAgICAgICAgICAgICAgICAndHJhY2UgZnVuY3Rpb24gaW50cm9kdWNlcyBfX2xvY2FsX18nKQogICAgIGRlZiB0ZXN0X2l0ZXJfaXRlbXMoc2VsZik6CiAgICAgICAgICMgVGVzdGluZyBkaWN0LXByb3h5IGl0ZXJpdGVtcy4uLgogICAgICAgICBpdCA9IHNlbGYuQy5fX2RpY3RfXy5pdGVtcygpCkBAIC00NDczLDkgKzQ1MTAsMTQgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0eXBlKEMuX19kaWN0X18pLCB0eXBlKEIuX19kaWN0X18pKQogCiAgICAgZGVmIHRlc3RfcmVwcihzZWxmKToKLSAgICAgICAgIyBUZXN0aW5nIGRpY3RfcHJveHkuX19yZXByX18KLSAgICAgICAgZGljdF8gPSB7azogdiBmb3IgaywgdiBpbiBzZWxmLkMuX19kaWN0X18uaXRlbXMoKX0KLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXByKHNlbGYuQy5fX2RpY3RfXyksICdkaWN0X3Byb3h5KHshcn0pJy5mb3JtYXQoZGljdF8pKQorICAgICAgICAjIFRlc3RpbmcgZGljdF9wcm94eS5fX3JlcHJfXy4KKyAgICAgICAgIyBXZSBjYW4ndCBibGluZGx5IGNvbXBhcmUgd2l0aCB0aGUgcmVwciBvZiBhbm90aGVyIGRpY3QgYXMgb3JkZXJpbmcKKyAgICAgICAgIyBvZiBrZXlzIGFuZCB2YWx1ZXMgaXMgYXJiaXRyYXJ5IGFuZCBtYXkgZGlmZmVyLgorICAgICAgICByID0gcmVwcihzZWxmLkMuX19kaWN0X18pCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyLnN0YXJ0c3dpdGgoJ2RpY3RfcHJveHkoJyksIHIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyLmVuZHN3aXRoKCcpJyksIHIpCisgICAgICAgIGZvciBrLCB2IGluIHNlbGYuQy5fX2RpY3RfXy5pdGVtcygpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigneyFyfTogeyFyfScuZm9ybWF0KGssIHYpLCByKQogCiAKIGNsYXNzIFBUeXBlc0xvbmdJbml0VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2Rlc2NydHV0LnB5IGIvTGliL3Rlc3QvdGVzdF9kZXNjcnR1dC5weQppbmRleCAyZGIzZDMzLi5mNDk1ZTE4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Rlc2NydHV0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZGVzY3J0dXQucHkKQEAgLTE3MCw2ICsxNzAsNyBAQAogICAgICAnX19jb250YWluc19fJywKICAgICAgJ19fZGVsYXR0cl9fJywKICAgICAgJ19fZGVsaXRlbV9fJywKKyAgICAgJ19fZGlyX18nLAogICAgICAnX19kb2NfXycsCiAgICAgICdfX2VxX18nLAogICAgICAnX19mb3JtYXRfXycsCkBAIC0xOTksNiArMjAwLDggQEAKICAgICAgJ19fc3RyX18nLAogICAgICAnX19zdWJjbGFzc2hvb2tfXycsCiAgICAgICdhcHBlbmQnLAorICAgICAnY2xlYXInLAorICAgICAnY29weScsCiAgICAgICdjb3VudCcsCiAgICAgICdleHRlbmQnLAogICAgICAnaW5kZXgnLApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9kZXZwb2xsLnB5IGIvTGliL3Rlc3QvdGVzdF9kZXZwb2xsLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJlZjRlMTgKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X2RldnBvbGwucHkKQEAgLTAsMCArMSw5NCBAQAorIyBUZXN0IGNhc2UgZm9yIHRoZSBzZWxlY3QuZGV2cG9sbCgpIGZ1bmN0aW9uCisKKyMgSW5pdGlhbCB0ZXN0cyBhcmUgY29waWVkIGFzIGlzIGZyb20gInRlc3RfcG9sbC5weSIKKworaW1wb3J0IG9zLCBzZWxlY3QsIHJhbmRvbSwgdW5pdHRlc3QsIHN5cworZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTiwgcnVuX3VuaXR0ZXN0CisKK3RyeToKKyAgICBzZWxlY3QuZGV2cG9sbAorZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJzZWxlY3QuZGV2cG9sbCBub3QgZGVmaW5lZCAtLSBza2lwcGluZyB0ZXN0X2RldnBvbGwiKQorCisKK2RlZiBmaW5kX3JlYWR5X21hdGNoaW5nKHJlYWR5LCBmbGFnKToKKyAgICBtYXRjaCA9IFtdCisgICAgZm9yIGZkLCBtb2RlIGluIHJlYWR5OgorICAgICAgICBpZiBtb2RlICYgZmxhZzoKKyAgICAgICAgICAgIG1hdGNoLmFwcGVuZChmZCkKKyAgICByZXR1cm4gbWF0Y2gKKworY2xhc3MgRGV2UG9sbFRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2RldnBvbGwxKHNlbGYpOgorICAgICAgICAjIEJhc2ljIGZ1bmN0aW9uYWwgdGVzdCBvZiBwb2xsIG9iamVjdAorICAgICAgICAjIENyZWF0ZSBhIGJ1bmNoIG9mIHBpcGUgYW5kIHRlc3QgdGhhdCBwb2xsIHdvcmtzIHdpdGggdGhlbS4KKworICAgICAgICBwID0gc2VsZWN0LmRldnBvbGwoKQorCisgICAgICAgIE5VTV9QSVBFUyA9IDEyCisgICAgICAgIE1TRyA9IGIiIFRoaXMgaXMgYSB0ZXN0LiIKKyAgICAgICAgTVNHX0xFTiA9IGxlbihNU0cpCisgICAgICAgIHJlYWRlcnMgPSBbXQorICAgICAgICB3cml0ZXJzID0gW10KKyAgICAgICAgcjJ3ID0ge30KKyAgICAgICAgdzJyID0ge30KKworICAgICAgICBmb3IgaSBpbiByYW5nZShOVU1fUElQRVMpOgorICAgICAgICAgICAgcmQsIHdyID0gb3MucGlwZSgpCisgICAgICAgICAgICBwLnJlZ2lzdGVyKHJkKQorICAgICAgICAgICAgcC5tb2RpZnkocmQsIHNlbGVjdC5QT0xMSU4pCisgICAgICAgICAgICBwLnJlZ2lzdGVyKHdyLCBzZWxlY3QuUE9MTE9VVCkKKyAgICAgICAgICAgIHJlYWRlcnMuYXBwZW5kKHJkKQorICAgICAgICAgICAgd3JpdGVycy5hcHBlbmQod3IpCisgICAgICAgICAgICByMndbcmRdID0gd3IKKyAgICAgICAgICAgIHcyclt3cl0gPSByZAorCisgICAgICAgIGJ1ZnMgPSBbXQorCisgICAgICAgIHdoaWxlIHdyaXRlcnM6CisgICAgICAgICAgICByZWFkeSA9IHAucG9sbCgpCisgICAgICAgICAgICByZWFkeV93cml0ZXJzID0gZmluZF9yZWFkeV9tYXRjaGluZyhyZWFkeSwgc2VsZWN0LlBPTExPVVQpCisgICAgICAgICAgICBpZiBub3QgcmVhZHlfd3JpdGVyczoKKyAgICAgICAgICAgICAgICBzZWxmLmZhaWwoIm5vIHBpcGVzIHJlYWR5IGZvciB3cml0aW5nIikKKyAgICAgICAgICAgIHdyID0gcmFuZG9tLmNob2ljZShyZWFkeV93cml0ZXJzKQorICAgICAgICAgICAgb3Mud3JpdGUod3IsIE1TRykKKworICAgICAgICAgICAgcmVhZHkgPSBwLnBvbGwoKQorICAgICAgICAgICAgcmVhZHlfcmVhZGVycyA9IGZpbmRfcmVhZHlfbWF0Y2hpbmcocmVhZHksIHNlbGVjdC5QT0xMSU4pCisgICAgICAgICAgICBpZiBub3QgcmVhZHlfcmVhZGVyczoKKyAgICAgICAgICAgICAgICBzZWxmLmZhaWwoIm5vIHBpcGVzIHJlYWR5IGZvciByZWFkaW5nIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW3cyclt3cl1dLCByZWFkeV9yZWFkZXJzKQorICAgICAgICAgICAgcmQgPSByZWFkeV9yZWFkZXJzWzBdCisgICAgICAgICAgICBidWYgPSBvcy5yZWFkKHJkLCBNU0dfTEVOKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oYnVmKSwgTVNHX0xFTikKKyAgICAgICAgICAgIGJ1ZnMuYXBwZW5kKGJ1ZikKKyAgICAgICAgICAgIG9zLmNsb3NlKHIyd1tyZF0pIDsgb3MuY2xvc2UocmQpCisgICAgICAgICAgICBwLnVucmVnaXN0ZXIocjJ3W3JkXSkKKyAgICAgICAgICAgIHAudW5yZWdpc3RlcihyZCkKKyAgICAgICAgICAgIHdyaXRlcnMucmVtb3ZlKHIyd1tyZF0pCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChidWZzLCBbTVNHXSAqIE5VTV9QSVBFUykKKworICAgIGRlZiB0ZXN0X3RpbWVvdXRfb3ZlcmZsb3coc2VsZik6CisgICAgICAgIHBvbGxzdGVyID0gc2VsZWN0LmRldnBvbGwoKQorICAgICAgICB3LCByID0gb3MucGlwZSgpCisgICAgICAgIHBvbGxzdGVyLnJlZ2lzdGVyKHcpCisKKyAgICAgICAgcG9sbHN0ZXIucG9sbCgtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgcG9sbHN0ZXIucG9sbCwgLTIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHBvbGxzdGVyLnBvbGwsIC0xIDw8IDMxKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBwb2xsc3Rlci5wb2xsLCAtMSA8PCA2NCkKKworICAgICAgICBwb2xsc3Rlci5wb2xsKDApCisgICAgICAgIHBvbGxzdGVyLnBvbGwoMSkKKyAgICAgICAgcG9sbHN0ZXIucG9sbCgxIDw8IDMwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBwb2xsc3Rlci5wb2xsLCAxIDw8IDMxKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBwb2xsc3Rlci5wb2xsLCAxIDw8IDYzKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBwb2xsc3Rlci5wb2xsLCAxIDw8IDY0KQorCitkZWYgdGVzdF9tYWluKCk6CisgICAgcnVuX3VuaXR0ZXN0KERldlBvbGxUZXN0cykKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9kaXMucHkgYi9MaWIvdGVzdC90ZXN0X2Rpcy5weQppbmRleCA3YTYxNDkzLi5iZTM4MDA3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Rpcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Rpcy5weQpAQCAtMSwxMSArMSwzNSBAQAogIyBNaW5pbWFsIHRlc3RzIGZvciBkaXMgbW9kdWxlCiAKIGZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QsIGNhcHR1cmVkX3N0ZG91dAoraW1wb3J0IGRpZmZsaWIKIGltcG9ydCB1bml0dGVzdAogaW1wb3J0IHN5cwogaW1wb3J0IGRpcwogaW1wb3J0IGlvCiAKK2NsYXNzIF9DOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCB4KToKKyAgICAgICAgc2VsZi54ID0geCA9PSAxCisKK2Rpc19jX2luc3RhbmNlX21ldGhvZCA9ICIiIlwKKyAlLTRkICAgICAgICAgMCBMT0FEX0ZBU1QgICAgICAgICAgICAgICAgMSAoeCkKKyAgICAgICAgICAgICAgMyBMT0FEX0NPTlNUICAgICAgICAgICAgICAgMSAoMSkKKyAgICAgICAgICAgICAgNiBDT01QQVJFX09QICAgICAgICAgICAgICAgMiAoPT0pCisgICAgICAgICAgICAgIDkgTE9BRF9GQVNUICAgICAgICAgICAgICAgIDAgKHNlbGYpCisgICAgICAgICAgICAgMTIgU1RPUkVfQVRUUiAgICAgICAgICAgICAgIDAgKHgpCisgICAgICAgICAgICAgMTUgTE9BRF9DT05TVCAgICAgICAgICAgICAgIDAgKE5vbmUpCisgICAgICAgICAgICAgMTggUkVUVVJOX1ZBTFVFCisiIiIgJSAoX0MuX19pbml0X18uX19jb2RlX18uY29fZmlyc3RsaW5lbm8gKyAxLCkKKworZGlzX2NfaW5zdGFuY2VfbWV0aG9kX2J5dGVzID0gIiIiXAorICAgICAgICAgIDAgTE9BRF9GQVNUICAgICAgICAgICAxICgxKQorICAgICAgICAgIDMgTE9BRF9DT05TVCAgICAgICAgICAxICgxKQorICAgICAgICAgIDYgQ09NUEFSRV9PUCAgICAgICAgICAyICg9PSkKKyAgICAgICAgICA5IExPQURfRkFTVCAgICAgICAgICAgMCAoMCkKKyAgICAgICAgIDEyIFNUT1JFX0FUVFIgICAgICAgICAgMCAoMCkKKyAgICAgICAgIDE1IExPQURfQ09OU1QgICAgICAgICAgMCAoMCkKKyAgICAgICAgIDE4IFJFVFVSTl9WQUxVRQorIiIiCiAKIGRlZiBfZihhKToKICAgICBwcmludChhKQpAQCAtMjMsNiArNDcsMTYgQEAKICAgICAgICBfZi5fX2NvZGVfXy5jb19maXJzdGxpbmVubyArIDIpCiAKIAorZGlzX2ZfY29fY29kZSA9ICIiIlwKKyAgICAgICAgICAwIExPQURfR0xPQkFMICAgICAgICAgMCAoMCkKKyAgICAgICAgICAzIExPQURfRkFTVCAgICAgICAgICAgMCAoMCkKKyAgICAgICAgICA2IENBTExfRlVOQ1RJT04gICAgICAgMQorICAgICAgICAgIDkgUE9QX1RPUAorICAgICAgICAgMTAgTE9BRF9DT05TVCAgICAgICAgICAxICgxKQorICAgICAgICAgMTMgUkVUVVJOX1ZBTFVFCisiIiIKKworCiBkZWYgYnVnNzA4OTAxKCk6CiAgICAgZm9yIHJlcyBpbiByYW5nZSgxLAogICAgICAgICAgICAgICAgICAgICAgMTApOgpAQCAtMTM4LDE4ICsxNzIsMjcgQEAKICIiIgogCiBjbGFzcyBEaXNUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0gICAgZGVmIGRvX2Rpc2Fzc2VtYmx5X3Rlc3Qoc2VsZiwgZnVuYywgZXhwZWN0ZWQpOgorCisgICAgZGVmIGdldF9kaXNhc3NlbWJseShzZWxmLCBmdW5jLCBsYXN0aT0tMSwgd3JhcHBlcj1UcnVlKToKICAgICAgICAgcyA9IGlvLlN0cmluZ0lPKCkKICAgICAgICAgc2F2ZV9zdGRvdXQgPSBzeXMuc3Rkb3V0CiAgICAgICAgIHN5cy5zdGRvdXQgPSBzCi0gICAgICAgIGRpcy5kaXMoZnVuYykKLSAgICAgICAgc3lzLnN0ZG91dCA9IHNhdmVfc3Rkb3V0Ci0gICAgICAgIGdvdCA9IHMuZ2V0dmFsdWUoKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBpZiB3cmFwcGVyOgorICAgICAgICAgICAgICAgIGRpcy5kaXMoZnVuYykKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZGlzLmRpc2Fzc2VtYmxlKGZ1bmMsIGxhc3RpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc3lzLnN0ZG91dCA9IHNhdmVfc3Rkb3V0CiAgICAgICAgICMgVHJpbSB0cmFpbGluZyBibGFua3MgKGlmIGFueSkuCi0gICAgICAgIGxpbmVzID0gZ290LnNwbGl0KCdcbicpCi0gICAgICAgIGxpbmVzID0gW2xpbmUucnN0cmlwKCkgZm9yIGxpbmUgaW4gbGluZXNdCi0gICAgICAgIGV4cGVjdGVkID0gZXhwZWN0ZWQuc3BsaXQoIlxuIikKLSAgICAgICAgaW1wb3J0IGRpZmZsaWIKKyAgICAgICAgcmV0dXJuIFtsaW5lLnJzdHJpcCgpIGZvciBsaW5lIGluIHMuZ2V0dmFsdWUoKS5zcGxpdGxpbmVzKCldCisKKyAgICBkZWYgZ2V0X2Rpc2Fzc2VtYmxlX2FzX3N0cmluZyhzZWxmLCBmdW5jLCBsYXN0aT0tMSk6CisgICAgICAgIHJldHVybiAnXG4nLmpvaW4oc2VsZi5nZXRfZGlzYXNzZW1ibHkoZnVuYywgbGFzdGksIEZhbHNlKSkKKworICAgIGRlZiBkb19kaXNhc3NlbWJseV90ZXN0KHNlbGYsIGZ1bmMsIGV4cGVjdGVkKToKKyAgICAgICAgbGluZXMgPSBzZWxmLmdldF9kaXNhc3NlbWJseShmdW5jKQorICAgICAgICBleHBlY3RlZCA9IGV4cGVjdGVkLnNwbGl0bGluZXMoKQogICAgICAgICBpZiBleHBlY3RlZCAhPSBsaW5lczoKICAgICAgICAgICAgIHNlbGYuZmFpbCgKICAgICAgICAgICAgICAgICAiZXZlbnRzIGRpZCBub3QgbWF0Y2ggZXhwZWN0YXRpb246XG4iICsKQEAgLTE1Nyw3ICsyMDAsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVzKSkpCiAKICAgICBkZWYgdGVzdF9vcG1hcChzZWxmKToKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkaXMub3BtYXBbIlNUT1BfQ09ERSJdLCAwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpcy5vcG1hcFsiTk9QIl0sIDkpCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oZGlzLm9wbWFwWyJMT0FEX0NPTlNUIl0sIGRpcy5oYXNjb25zdCkKICAgICAgICAgc2VsZi5hc3NlcnRJbihkaXMub3BtYXBbIlNUT1JFX05BTUUiXSwgZGlzLmhhc25hbWUpCiAKQEAgLTIxMSw2ICsyNTQsNDQgQEAKICAgICAgICAgc2VsZi5kb19kaXNhc3NlbWJseV90ZXN0KHNpbXBsZV9zdG10X3N0ciwgZGlzX3NpbXBsZV9zdG10X3N0cikKICAgICAgICAgc2VsZi5kb19kaXNhc3NlbWJseV90ZXN0KGNvbXBvdW5kX3N0bXRfc3RyLCBkaXNfY29tcG91bmRfc3RtdF9zdHIpCiAKKyAgICBkZWYgdGVzdF9kaXNhc3NlbWJsZV9ieXRlcyhzZWxmKToKKyAgICAgICAgc2VsZi5kb19kaXNhc3NlbWJseV90ZXN0KF9mLl9fY29kZV9fLmNvX2NvZGUsIGRpc19mX2NvX2NvZGUpCisKKyAgICBkZWYgdGVzdF9kaXNhc3NlbWJsZV9tZXRob2Qoc2VsZik6CisgICAgICAgIHNlbGYuZG9fZGlzYXNzZW1ibHlfdGVzdChfQygxKS5fX2luaXRfXywgZGlzX2NfaW5zdGFuY2VfbWV0aG9kKQorCisgICAgZGVmIHRlc3RfZGlzYXNzZW1ibGVfbWV0aG9kX2J5dGVzKHNlbGYpOgorICAgICAgICBtZXRob2RfYnl0ZWNvZGUgPSBfQygxKS5fX2luaXRfXy5fX2NvZGVfXy5jb19jb2RlCisgICAgICAgIHNlbGYuZG9fZGlzYXNzZW1ibHlfdGVzdChtZXRob2RfYnl0ZWNvZGUsIGRpc19jX2luc3RhbmNlX21ldGhvZF9ieXRlcykKKworICAgIGRlZiB0ZXN0X2Rpc19ub25lKHNlbGYpOgorICAgICAgICB0cnk6CisgICAgICAgICAgICBkZWwgc3lzLmxhc3RfdHJhY2ViYWNrCisgICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBkaXMuZGlzLCBOb25lKQorCisgICAgZGVmIHRlc3RfZGlzX29iamVjdChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBkaXMuZGlzLCBvYmplY3QoKSkKKworICAgIGRlZiB0ZXN0X2Rpc190cmFjZWJhY2soc2VsZik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGRlbCBzeXMubGFzdF90cmFjZWJhY2sKKyAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yOgorICAgICAgICAgICAgcGFzcworCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIDEvMAorICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CisgICAgICAgICAgICB0YiA9IGUuX190cmFjZWJhY2tfXworICAgICAgICAgICAgc3lzLmxhc3RfdHJhY2ViYWNrID0gdGIKKworICAgICAgICB0Yl9kaXMgPSBzZWxmLmdldF9kaXNhc3NlbWJsZV9hc19zdHJpbmcodGIudGJfZnJhbWUuZl9jb2RlLCB0Yi50Yl9sYXN0aSkKKyAgICAgICAgc2VsZi5kb19kaXNhc3NlbWJseV90ZXN0KE5vbmUsIHRiX2RpcykKKworICAgIGRlZiB0ZXN0X2Rpc19vYmplY3Qoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZGlzLmRpcywgb2JqZWN0KCkpCisKIGNvZGVfaW5mb19jb2RlX2luZm8gPSAiIiJcCiBOYW1lOiAgICAgICAgICAgICAgY29kZV9pbmZvCiBGaWxlbmFtZTogICAgICAgICAgKC4qKQpAQCAtMjU4LDYgKzMzOSw3IEBACiBDb25zdGFudHM6CiAgICAwOiBOb25lCiAgICAxOiA8Y29kZSBvYmplY3QgZiBhdCAoLiopLCBmaWxlICIoLiopIiwgbGluZSAoLiopPgorICAgMjogJ3RyaWNreS48bG9jYWxzPi5mJwogVmFyaWFibGUgbmFtZXM6CiAgICAwOiB4CiAgICAxOiB5CkBAIC0zNjMsNiArNDQ1LDEzIEBACiAgICAgICAgICAgICAgICAgZGlzLnNob3dfY29kZSh4KQogICAgICAgICAgICAgc2VsZi5hc3NlcnRSZWdleChvdXRwdXQuZ2V0dmFsdWUoKSwgZXhwZWN0ZWQrIlxuIikKIAorICAgIGRlZiB0ZXN0X2NvZGVfaW5mb19vYmplY3Qoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZGlzLmNvZGVfaW5mbywgb2JqZWN0KCkpCisKKyAgICBkZWYgdGVzdF9wcmV0dHlfZmxhZ3Nfbm9fZmxhZ3Moc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGlzLnByZXR0eV9mbGFncygwKSwgJzB4MCcpCisKKwogZGVmIHRlc3RfbWFpbigpOgogICAgIHJ1bl91bml0dGVzdChEaXNUZXN0cywgQ29kZUluZm9UZXN0cykKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9kb2N0ZXN0LnB5IGIvTGliL3Rlc3QvdGVzdF9kb2N0ZXN0LnB5CmluZGV4IDU5NjljZTIuLmNkY2QzODkgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZG9jdGVzdC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2RvY3Rlc3QucHkKQEAgLTUsNiArNSw3IEBACiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIGltcG9ydCBkb2N0ZXN0CiBpbXBvcnQgb3MKK2ltcG9ydCBzeXMKIAogCiAjIE5PVEU6IFRoZXJlIGFyZSBzb21lIGFkZGl0aW9uYWwgdGVzdHMgcmVsYXRpbmcgdG8gaW50ZXJhY3Rpb24gd2l0aApAQCAtNDMyLDcgKzQzMyw3IEBACiAgICAgPj4+IHRlc3RzID0gZmluZGVyLmZpbmQoc2FtcGxlX2Z1bmMpCiAKICAgICA+Pj4gcHJpbnQodGVzdHMpICAjIGRvY3Rlc3Q6ICtFTExJUFNJUwotICAgIFs8RG9jVGVzdCBzYW1wbGVfZnVuYyBmcm9tIC4uLjoxNyAoMSBleGFtcGxlKT5dCisgICAgWzxEb2NUZXN0IHNhbXBsZV9mdW5jIGZyb20gLi4uOjE4ICgxIGV4YW1wbGUpPl0KIAogVGhlIGV4YWN0IG5hbWUgZGVwZW5kcyBvbiBob3cgdGVzdF9kb2N0ZXN0IHdhcyBpbnZva2VkLCBzbyBhbGxvdyBmb3IKIGxlYWRpbmcgcGF0aCBjb21wb25lbnRzLgpAQCAtMTc0NSwyMjYgKzE3NDYsMjI3IEBACiAKICIiIgogCi1kZWYgdGVzdF9wZGJfc2V0X3RyYWNlKCk6Ci0gICAgIiIiVXNpbmcgcGRiLnNldF90cmFjZSBmcm9tIGEgZG9jdGVzdC4KK2lmIG5vdCBoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgb3Igbm90IHN5cy5nZXR0cmFjZSgpOgorICAgIGRlZiB0ZXN0X3BkYl9zZXRfdHJhY2UoKToKKyAgICAgICAgIiIiVXNpbmcgcGRiLnNldF90cmFjZSBmcm9tIGEgZG9jdGVzdC4KIAotICAgIFlvdSBjYW4gdXNlIHBkYi5zZXRfdHJhY2UgZnJvbSBhIGRvY3Rlc3QuICBUbyBkbyBzbywgeW91IG11c3QKLSAgICByZXRyaWV2ZSB0aGUgc2V0X3RyYWNlIGZ1bmN0aW9uIGZyb20gdGhlIHBkYiBtb2R1bGUgYXQgdGhlIHRpbWUKLSAgICB5b3UgdXNlIGl0LiAgVGhlIGRvY3Rlc3QgbW9kdWxlIGNoYW5nZXMgc3lzLnN0ZG91dCBzbyB0aGF0IGl0IGNhbgotICAgIGNhcHR1cmUgcHJvZ3JhbSBvdXRwdXQuICBJdCBhbHNvIHRlbXBvcmFyaWx5IHJlcGxhY2VzIHBkYi5zZXRfdHJhY2UKLSAgICB3aXRoIGEgdmVyc2lvbiB0aGF0IHJlc3RvcmVzIHN0ZG91dC4gIFRoaXMgaXMgbmVjZXNzYXJ5IGZvciB5b3UgdG8KLSAgICBzZWUgZGVidWdnZXIgb3V0cHV0LgorICAgICAgICBZb3UgY2FuIHVzZSBwZGIuc2V0X3RyYWNlIGZyb20gYSBkb2N0ZXN0LiAgVG8gZG8gc28sIHlvdSBtdXN0CisgICAgICAgIHJldHJpZXZlIHRoZSBzZXRfdHJhY2UgZnVuY3Rpb24gZnJvbSB0aGUgcGRiIG1vZHVsZSBhdCB0aGUgdGltZQorICAgICAgICB5b3UgdXNlIGl0LiAgVGhlIGRvY3Rlc3QgbW9kdWxlIGNoYW5nZXMgc3lzLnN0ZG91dCBzbyB0aGF0IGl0IGNhbgorICAgICAgICBjYXB0dXJlIHByb2dyYW0gb3V0cHV0LiAgSXQgYWxzbyB0ZW1wb3JhcmlseSByZXBsYWNlcyBwZGIuc2V0X3RyYWNlCisgICAgICAgIHdpdGggYSB2ZXJzaW9uIHRoYXQgcmVzdG9yZXMgc3Rkb3V0LiAgVGhpcyBpcyBuZWNlc3NhcnkgZm9yIHlvdSB0bworICAgICAgICBzZWUgZGVidWdnZXIgb3V0cHV0LgogCi0gICAgICA+Pj4gZG9jID0gJycnCi0gICAgICAuLi4gPj4+IHggPSA0MgotICAgICAgLi4uID4+PiByYWlzZSBFeGNlcHRpb24oJ2Nsw6knKQotICAgICAgLi4uIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgICAgIC4uLiBFeGNlcHRpb246IGNsw6kKLSAgICAgIC4uLiA+Pj4gaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCi0gICAgICAuLi4gJycnCi0gICAgICA+Pj4gcGFyc2VyID0gZG9jdGVzdC5Eb2NUZXN0UGFyc2VyKCkKLSAgICAgID4+PiB0ZXN0ID0gcGFyc2VyLmdldF9kb2N0ZXN0KGRvYywge30sICJmb28tYmFyQGJheiIsICJmb28tYmFyQGJhei5weSIsIDApCi0gICAgICA+Pj4gcnVubmVyID0gZG9jdGVzdC5Eb2NUZXN0UnVubmVyKHZlcmJvc2U9RmFsc2UpCisgICAgICAgICAgPj4+IGRvYyA9ICcnJworICAgICAgICAgIC4uLiA+Pj4geCA9IDQyCisgICAgICAgICAgLi4uID4+PiByYWlzZSBFeGNlcHRpb24oJ2Nsw6knKQorICAgICAgICAgIC4uLiBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAgICAgLi4uIEV4Y2VwdGlvbjogY2zDqQorICAgICAgICAgIC4uLiA+Pj4gaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCisgICAgICAgICAgLi4uICcnJworICAgICAgICAgID4+PiBwYXJzZXIgPSBkb2N0ZXN0LkRvY1Rlc3RQYXJzZXIoKQorICAgICAgICAgID4+PiB0ZXN0ID0gcGFyc2VyLmdldF9kb2N0ZXN0KGRvYywge30sICJmb28tYmFyQGJheiIsICJmb28tYmFyQGJhei5weSIsIDApCisgICAgICAgICAgPj4+IHJ1bm5lciA9IGRvY3Rlc3QuRG9jVGVzdFJ1bm5lcih2ZXJib3NlPUZhbHNlKQogCi0gICAgVG8gZGVtb25zdHJhdGUgdGhpcywgd2UnbGwgY3JlYXRlIGEgZmFrZSBzdGFuZGFyZCBpbnB1dCB0aGF0Ci0gICAgY2FwdHVyZXMgb3VyIGRlYnVnZ2VyIGlucHV0OgorICAgICAgICBUbyBkZW1vbnN0cmF0ZSB0aGlzLCB3ZSdsbCBjcmVhdGUgYSBmYWtlIHN0YW5kYXJkIGlucHV0IHRoYXQKKyAgICAgICAgY2FwdHVyZXMgb3VyIGRlYnVnZ2VyIGlucHV0OgogCi0gICAgICA+Pj4gaW1wb3J0IHRlbXBmaWxlCi0gICAgICA+Pj4gcmVhbF9zdGRpbiA9IHN5cy5zdGRpbgotICAgICAgPj4+IHN5cy5zdGRpbiA9IF9GYWtlSW5wdXQoWwotICAgICAgLi4uICAgICdwcmludCh4KScsICAjIHByaW50IGRhdGEgZGVmaW5lZCBieSB0aGUgZXhhbXBsZQotICAgICAgLi4uICAgICdjb250aW51ZScsICMgc3RvcCBkZWJ1Z2dpbmcKLSAgICAgIC4uLiAgICAnJ10pCisgICAgICAgICAgPj4+IGltcG9ydCB0ZW1wZmlsZQorICAgICAgICAgID4+PiByZWFsX3N0ZGluID0gc3lzLnN0ZGluCisgICAgICAgICAgPj4+IHN5cy5zdGRpbiA9IF9GYWtlSW5wdXQoWworICAgICAgICAgIC4uLiAgICAncHJpbnQoeCknLCAgIyBwcmludCBkYXRhIGRlZmluZWQgYnkgdGhlIGV4YW1wbGUKKyAgICAgICAgICAuLi4gICAgJ2NvbnRpbnVlJywgIyBzdG9wIGRlYnVnZ2luZworICAgICAgICAgIC4uLiAgICAnJ10pCiAKLSAgICAgID4+PiB0cnk6IHJ1bm5lci5ydW4odGVzdCkKLSAgICAgIC4uLiBmaW5hbGx5OiBzeXMuc3RkaW4gPSByZWFsX3N0ZGluCi0gICAgICAtLVJldHVybi0tCi0gICAgICA+IDxkb2N0ZXN0IGZvby1iYXJAYmF6WzJdPigxKTxtb2R1bGU+KCktPk5vbmUKLSAgICAgIC0+IGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQotICAgICAgKFBkYikgcHJpbnQoeCkKLSAgICAgIDQyCi0gICAgICAoUGRiKSBjb250aW51ZQotICAgICAgVGVzdFJlc3VsdHMoZmFpbGVkPTAsIGF0dGVtcHRlZD0zKQorICAgICAgICAgID4+PiB0cnk6IHJ1bm5lci5ydW4odGVzdCkKKyAgICAgICAgICAuLi4gZmluYWxseTogc3lzLnN0ZGluID0gcmVhbF9zdGRpbgorICAgICAgICAgIC0tUmV0dXJuLS0KKyAgICAgICAgICA+IDxkb2N0ZXN0IGZvby1iYXJAYmF6WzJdPigxKTxtb2R1bGU+KCktPk5vbmUKKyAgICAgICAgICAtPiBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKCkKKyAgICAgICAgICAoUGRiKSBwcmludCh4KQorICAgICAgICAgIDQyCisgICAgICAgICAgKFBkYikgY29udGludWUKKyAgICAgICAgICBUZXN0UmVzdWx0cyhmYWlsZWQ9MCwgYXR0ZW1wdGVkPTMpCiAKLSAgICAgIFlvdSBjYW4gYWxzbyBwdXQgcGRiLnNldF90cmFjZSBpbiBhIGZ1bmN0aW9uIGNhbGxlZCBmcm9tIGEgdGVzdDoKKyAgICAgICAgICBZb3UgY2FuIGFsc28gcHV0IHBkYi5zZXRfdHJhY2UgaW4gYSBmdW5jdGlvbiBjYWxsZWQgZnJvbSBhIHRlc3Q6CiAKLSAgICAgID4+PiBkZWYgY2FsbHNfc2V0X3RyYWNlKCk6Ci0gICAgICAuLi4gICAgeT0yCi0gICAgICAuLi4gICAgaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCisgICAgICAgICAgPj4+IGRlZiBjYWxsc19zZXRfdHJhY2UoKToKKyAgICAgICAgICAuLi4gICAgeT0yCisgICAgICAgICAgLi4uICAgIGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQogCi0gICAgICA+Pj4gZG9jID0gJycnCi0gICAgICAuLi4gPj4+IHg9MQotICAgICAgLi4uID4+PiBjYWxsc19zZXRfdHJhY2UoKQotICAgICAgLi4uICcnJwotICAgICAgPj4+IHRlc3QgPSBwYXJzZXIuZ2V0X2RvY3Rlc3QoZG9jLCBnbG9iYWxzKCksICJmb28tYmFyQGJheiIsICJmb28tYmFyQGJhei5weSIsIDApCi0gICAgICA+Pj4gcmVhbF9zdGRpbiA9IHN5cy5zdGRpbgotICAgICAgPj4+IHN5cy5zdGRpbiA9IF9GYWtlSW5wdXQoWwotICAgICAgLi4uICAgICdwcmludCh5KScsICAjIHByaW50IGRhdGEgZGVmaW5lZCBpbiB0aGUgZnVuY3Rpb24KLSAgICAgIC4uLiAgICAndXAnLCAgICAgICAjIG91dCBvZiBmdW5jdGlvbgotICAgICAgLi4uICAgICdwcmludCh4KScsICAjIHByaW50IGRhdGEgZGVmaW5lZCBieSB0aGUgZXhhbXBsZQotICAgICAgLi4uICAgICdjb250aW51ZScsICMgc3RvcCBkZWJ1Z2dpbmcKLSAgICAgIC4uLiAgICAnJ10pCisgICAgICAgICAgPj4+IGRvYyA9ICcnJworICAgICAgICAgIC4uLiA+Pj4geD0xCisgICAgICAgICAgLi4uID4+PiBjYWxsc19zZXRfdHJhY2UoKQorICAgICAgICAgIC4uLiAnJycKKyAgICAgICAgICA+Pj4gdGVzdCA9IHBhcnNlci5nZXRfZG9jdGVzdChkb2MsIGdsb2JhbHMoKSwgImZvby1iYXJAYmF6IiwgImZvby1iYXJAYmF6LnB5IiwgMCkKKyAgICAgICAgICA+Pj4gcmVhbF9zdGRpbiA9IHN5cy5zdGRpbgorICAgICAgICAgID4+PiBzeXMuc3RkaW4gPSBfRmFrZUlucHV0KFsKKyAgICAgICAgICAuLi4gICAgJ3ByaW50KHkpJywgICMgcHJpbnQgZGF0YSBkZWZpbmVkIGluIHRoZSBmdW5jdGlvbgorICAgICAgICAgIC4uLiAgICAndXAnLCAgICAgICAjIG91dCBvZiBmdW5jdGlvbgorICAgICAgICAgIC4uLiAgICAncHJpbnQoeCknLCAgIyBwcmludCBkYXRhIGRlZmluZWQgYnkgdGhlIGV4YW1wbGUKKyAgICAgICAgICAuLi4gICAgJ2NvbnRpbnVlJywgIyBzdG9wIGRlYnVnZ2luZworICAgICAgICAgIC4uLiAgICAnJ10pCiAKLSAgICAgID4+PiB0cnk6Ci0gICAgICAuLi4gICAgIHJ1bm5lci5ydW4odGVzdCkKLSAgICAgIC4uLiBmaW5hbGx5OgotICAgICAgLi4uICAgICBzeXMuc3RkaW4gPSByZWFsX3N0ZGluCi0gICAgICAtLVJldHVybi0tCi0gICAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZVs4XT4oMyljYWxsc19zZXRfdHJhY2UoKS0+Tm9uZQotICAgICAgLT4gaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCi0gICAgICAoUGRiKSBwcmludCh5KQotICAgICAgMgotICAgICAgKFBkYikgdXAKLSAgICAgID4gPGRvY3Rlc3QgZm9vLWJhckBiYXpbMV0+KDEpPG1vZHVsZT4oKQotICAgICAgLT4gY2FsbHNfc2V0X3RyYWNlKCkKLSAgICAgIChQZGIpIHByaW50KHgpCi0gICAgICAxCi0gICAgICAoUGRiKSBjb250aW51ZQotICAgICAgVGVzdFJlc3VsdHMoZmFpbGVkPTAsIGF0dGVtcHRlZD0yKQorICAgICAgICAgID4+PiB0cnk6CisgICAgICAgICAgLi4uICAgICBydW5uZXIucnVuKHRlc3QpCisgICAgICAgICAgLi4uIGZpbmFsbHk6CisgICAgICAgICAgLi4uICAgICBzeXMuc3RkaW4gPSByZWFsX3N0ZGluCisgICAgICAgICAgLS1SZXR1cm4tLQorICAgICAgICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlWzhdPigzKWNhbGxzX3NldF90cmFjZSgpLT5Ob25lCisgICAgICAgICAgLT4gaW1wb3J0IHBkYjsgcGRiLnNldF90cmFjZSgpCisgICAgICAgICAgKFBkYikgcHJpbnQoeSkKKyAgICAgICAgICAyCisgICAgICAgICAgKFBkYikgdXAKKyAgICAgICAgICA+IDxkb2N0ZXN0IGZvby1iYXJAYmF6WzFdPigxKTxtb2R1bGU+KCkKKyAgICAgICAgICAtPiBjYWxsc19zZXRfdHJhY2UoKQorICAgICAgICAgIChQZGIpIHByaW50KHgpCisgICAgICAgICAgMQorICAgICAgICAgIChQZGIpIGNvbnRpbnVlCisgICAgICAgICAgVGVzdFJlc3VsdHMoZmFpbGVkPTAsIGF0dGVtcHRlZD0yKQogCi0gICAgRHVyaW5nIGludGVyYWN0aXZlIGRlYnVnZ2luZywgc291cmNlIGNvZGUgaXMgc2hvd24sIGV2ZW4gZm9yCi0gICAgZG9jdGVzdCBleGFtcGxlczoKKyAgICAgICAgRHVyaW5nIGludGVyYWN0aXZlIGRlYnVnZ2luZywgc291cmNlIGNvZGUgaXMgc2hvd24sIGV2ZW4gZm9yCisgICAgICAgIGRvY3Rlc3QgZXhhbXBsZXM6CiAKLSAgICAgID4+PiBkb2MgPSAnJycKLSAgICAgIC4uLiA+Pj4gZGVmIGYoeCk6Ci0gICAgICAuLi4gLi4uICAgICBnKHgqMikKLSAgICAgIC4uLiA+Pj4gZGVmIGcoeCk6Ci0gICAgICAuLi4gLi4uICAgICBwcmludCh4KzMpCi0gICAgICAuLi4gLi4uICAgICBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKCkKLSAgICAgIC4uLiA+Pj4gZigzKQotICAgICAgLi4uICcnJwotICAgICAgPj4+IHRlc3QgPSBwYXJzZXIuZ2V0X2RvY3Rlc3QoZG9jLCBnbG9iYWxzKCksICJmb28tYmFyQGJheiIsICJmb28tYmFyQGJhei5weSIsIDApCi0gICAgICA+Pj4gcmVhbF9zdGRpbiA9IHN5cy5zdGRpbgotICAgICAgPj4+IHN5cy5zdGRpbiA9IF9GYWtlSW5wdXQoWwotICAgICAgLi4uICAgICdsaXN0JywgICAgICMgbGlzdCBzb3VyY2UgZnJvbSBleGFtcGxlIDIKLSAgICAgIC4uLiAgICAnbmV4dCcsICAgICAjIHJldHVybiBmcm9tIGcoKQotICAgICAgLi4uICAgICdsaXN0JywgICAgICMgbGlzdCBzb3VyY2UgZnJvbSBleGFtcGxlIDEKLSAgICAgIC4uLiAgICAnbmV4dCcsICAgICAjIHJldHVybiBmcm9tIGYoKQotICAgICAgLi4uICAgICdsaXN0JywgICAgICMgbGlzdCBzb3VyY2UgZnJvbSBleGFtcGxlIDMKLSAgICAgIC4uLiAgICAnY29udGludWUnLCAjIHN0b3AgZGVidWdnaW5nCi0gICAgICAuLi4gICAgJyddKQotICAgICAgPj4+IHRyeTogcnVubmVyLnJ1bih0ZXN0KQotICAgICAgLi4uIGZpbmFsbHk6IHN5cy5zdGRpbiA9IHJlYWxfc3RkaW4KLSAgICAgIC4uLiAjIGRvY3Rlc3Q6ICtOT1JNQUxJWkVfV0hJVEVTUEFDRQotICAgICAgLS1SZXR1cm4tLQotICAgICAgPiA8ZG9jdGVzdCBmb28tYmFyQGJhelsxXT4oMylnKCktPk5vbmUKLSAgICAgIC0+IGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQotICAgICAgKFBkYikgbGlzdAotICAgICAgICAxICAgICBkZWYgZyh4KToKLSAgICAgICAgMiAgICAgICAgIHByaW50KHgrMykKLSAgICAgICAgMyAgLT4gICAgIGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQotICAgICAgW0VPRl0KLSAgICAgIChQZGIpIG5leHQKLSAgICAgIC0tUmV0dXJuLS0KLSAgICAgID4gPGRvY3Rlc3QgZm9vLWJhckBiYXpbMF0+KDIpZigpLT5Ob25lCi0gICAgICAtPiBnKHgqMikKLSAgICAgIChQZGIpIGxpc3QKLSAgICAgICAgMSAgICAgZGVmIGYoeCk6Ci0gICAgICAgIDIgIC0+ICAgICBnKHgqMikKLSAgICAgIFtFT0ZdCi0gICAgICAoUGRiKSBuZXh0Ci0gICAgICAtLVJldHVybi0tCi0gICAgICA+IDxkb2N0ZXN0IGZvby1iYXJAYmF6WzJdPigxKTxtb2R1bGU+KCktPk5vbmUKLSAgICAgIC0+IGYoMykKLSAgICAgIChQZGIpIGxpc3QKLSAgICAgICAgMSAgLT4gZigzKQotICAgICAgW0VPRl0KLSAgICAgIChQZGIpIGNvbnRpbnVlCi0gICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gICAgICBGaWxlICJmb28tYmFyQGJhei5weSIsIGxpbmUgNywgaW4gZm9vLWJhckBiYXoKLSAgICAgIEZhaWxlZCBleGFtcGxlOgotICAgICAgICAgIGYoMykKLSAgICAgIEV4cGVjdGVkIG5vdGhpbmcKLSAgICAgIEdvdDoKLSAgICAgICAgICA5Ci0gICAgICBUZXN0UmVzdWx0cyhmYWlsZWQ9MSwgYXR0ZW1wdGVkPTMpCi0gICAgICAiIiIKKyAgICAgICAgICA+Pj4gZG9jID0gJycnCisgICAgICAgICAgLi4uID4+PiBkZWYgZih4KToKKyAgICAgICAgICAuLi4gLi4uICAgICBnKHgqMikKKyAgICAgICAgICAuLi4gPj4+IGRlZiBnKHgpOgorICAgICAgICAgIC4uLiAuLi4gICAgIHByaW50KHgrMykKKyAgICAgICAgICAuLi4gLi4uICAgICBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKCkKKyAgICAgICAgICAuLi4gPj4+IGYoMykKKyAgICAgICAgICAuLi4gJycnCisgICAgICAgICAgPj4+IHRlc3QgPSBwYXJzZXIuZ2V0X2RvY3Rlc3QoZG9jLCBnbG9iYWxzKCksICJmb28tYmFyQGJheiIsICJmb28tYmFyQGJhei5weSIsIDApCisgICAgICAgICAgPj4+IHJlYWxfc3RkaW4gPSBzeXMuc3RkaW4KKyAgICAgICAgICA+Pj4gc3lzLnN0ZGluID0gX0Zha2VJbnB1dChbCisgICAgICAgICAgLi4uICAgICdsaXN0JywgICAgICMgbGlzdCBzb3VyY2UgZnJvbSBleGFtcGxlIDIKKyAgICAgICAgICAuLi4gICAgJ25leHQnLCAgICAgIyByZXR1cm4gZnJvbSBnKCkKKyAgICAgICAgICAuLi4gICAgJ2xpc3QnLCAgICAgIyBsaXN0IHNvdXJjZSBmcm9tIGV4YW1wbGUgMQorICAgICAgICAgIC4uLiAgICAnbmV4dCcsICAgICAjIHJldHVybiBmcm9tIGYoKQorICAgICAgICAgIC4uLiAgICAnbGlzdCcsICAgICAjIGxpc3Qgc291cmNlIGZyb20gZXhhbXBsZSAzCisgICAgICAgICAgLi4uICAgICdjb250aW51ZScsICMgc3RvcCBkZWJ1Z2dpbmcKKyAgICAgICAgICAuLi4gICAgJyddKQorICAgICAgICAgID4+PiB0cnk6IHJ1bm5lci5ydW4odGVzdCkKKyAgICAgICAgICAuLi4gZmluYWxseTogc3lzLnN0ZGluID0gcmVhbF9zdGRpbgorICAgICAgICAgIC4uLiAjIGRvY3Rlc3Q6ICtOT1JNQUxJWkVfV0hJVEVTUEFDRQorICAgICAgICAgIC0tUmV0dXJuLS0KKyAgICAgICAgICA+IDxkb2N0ZXN0IGZvby1iYXJAYmF6WzFdPigzKWcoKS0+Tm9uZQorICAgICAgICAgIC0+IGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQorICAgICAgICAgIChQZGIpIGxpc3QKKyAgICAgICAgICAgIDEgICAgIGRlZiBnKHgpOgorICAgICAgICAgICAgMiAgICAgICAgIHByaW50KHgrMykKKyAgICAgICAgICAgIDMgIC0+ICAgICBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKCkKKyAgICAgICAgICBbRU9GXQorICAgICAgICAgIChQZGIpIG5leHQKKyAgICAgICAgICAtLVJldHVybi0tCisgICAgICAgICAgPiA8ZG9jdGVzdCBmb28tYmFyQGJhelswXT4oMilmKCktPk5vbmUKKyAgICAgICAgICAtPiBnKHgqMikKKyAgICAgICAgICAoUGRiKSBsaXN0CisgICAgICAgICAgICAxICAgICBkZWYgZih4KToKKyAgICAgICAgICAgIDIgIC0+ICAgICBnKHgqMikKKyAgICAgICAgICBbRU9GXQorICAgICAgICAgIChQZGIpIG5leHQKKyAgICAgICAgICAtLVJldHVybi0tCisgICAgICAgICAgPiA8ZG9jdGVzdCBmb28tYmFyQGJhelsyXT4oMSk8bW9kdWxlPigpLT5Ob25lCisgICAgICAgICAgLT4gZigzKQorICAgICAgICAgIChQZGIpIGxpc3QKKyAgICAgICAgICAgIDEgIC0+IGYoMykKKyAgICAgICAgICBbRU9GXQorICAgICAgICAgIChQZGIpIGNvbnRpbnVlCisgICAgICAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICAgICAgICAgIEZpbGUgImZvby1iYXJAYmF6LnB5IiwgbGluZSA3LCBpbiBmb28tYmFyQGJhegorICAgICAgICAgIEZhaWxlZCBleGFtcGxlOgorICAgICAgICAgICAgICBmKDMpCisgICAgICAgICAgRXhwZWN0ZWQgbm90aGluZworICAgICAgICAgIEdvdDoKKyAgICAgICAgICAgICAgOQorICAgICAgICAgIFRlc3RSZXN1bHRzKGZhaWxlZD0xLCBhdHRlbXB0ZWQ9MykKKyAgICAgICAgICAiIiIKIAotZGVmIHRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWQoKToKLSAgICAiIiJUaGlzIGlsbHVzdHJhdGVzIG1vcmUtZGVtYW5kaW5nIHVzZSBvZiBzZXRfdHJhY2Ugd2l0aCBuZXN0ZWQgZnVuY3Rpb25zLgorICAgIGRlZiB0ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkKCk6CisgICAgICAgICIiIlRoaXMgaWxsdXN0cmF0ZXMgbW9yZS1kZW1hbmRpbmcgdXNlIG9mIHNldF90cmFjZSB3aXRoIG5lc3RlZCBmdW5jdGlvbnMuCiAKLSAgICA+Pj4gY2xhc3MgQyhvYmplY3QpOgotICAgIC4uLiAgICAgZGVmIGNhbGxzX3NldF90cmFjZShzZWxmKToKLSAgICAuLi4gICAgICAgICB5ID0gMQotICAgIC4uLiAgICAgICAgIGltcG9ydCBwZGI7IHBkYi5zZXRfdHJhY2UoKQotICAgIC4uLiAgICAgICAgIHNlbGYuZjEoKQotICAgIC4uLiAgICAgICAgIHkgPSAyCi0gICAgLi4uICAgICBkZWYgZjEoc2VsZik6Ci0gICAgLi4uICAgICAgICAgeCA9IDEKLSAgICAuLi4gICAgICAgICBzZWxmLmYyKCkKLSAgICAuLi4gICAgICAgICB4ID0gMgotICAgIC4uLiAgICAgZGVmIGYyKHNlbGYpOgotICAgIC4uLiAgICAgICAgIHogPSAxCi0gICAgLi4uICAgICAgICAgeiA9IDIKKyAgICAgICAgPj4+IGNsYXNzIEMob2JqZWN0KToKKyAgICAgICAgLi4uICAgICBkZWYgY2FsbHNfc2V0X3RyYWNlKHNlbGYpOgorICAgICAgICAuLi4gICAgICAgICB5ID0gMQorICAgICAgICAuLi4gICAgICAgICBpbXBvcnQgcGRiOyBwZGIuc2V0X3RyYWNlKCkKKyAgICAgICAgLi4uICAgICAgICAgc2VsZi5mMSgpCisgICAgICAgIC4uLiAgICAgICAgIHkgPSAyCisgICAgICAgIC4uLiAgICAgZGVmIGYxKHNlbGYpOgorICAgICAgICAuLi4gICAgICAgICB4ID0gMQorICAgICAgICAuLi4gICAgICAgICBzZWxmLmYyKCkKKyAgICAgICAgLi4uICAgICAgICAgeCA9IDIKKyAgICAgICAgLi4uICAgICBkZWYgZjIoc2VsZik6CisgICAgICAgIC4uLiAgICAgICAgIHogPSAxCisgICAgICAgIC4uLiAgICAgICAgIHogPSAyCiAKLSAgICA+Pj4gY2FsbHNfc2V0X3RyYWNlID0gQygpLmNhbGxzX3NldF90cmFjZQorICAgICAgICA+Pj4gY2FsbHNfc2V0X3RyYWNlID0gQygpLmNhbGxzX3NldF90cmFjZQogCi0gICAgPj4+IGRvYyA9ICcnJwotICAgIC4uLiA+Pj4gYSA9IDEKLSAgICAuLi4gPj4+IGNhbGxzX3NldF90cmFjZSgpCi0gICAgLi4uICcnJwotICAgID4+PiBwYXJzZXIgPSBkb2N0ZXN0LkRvY1Rlc3RQYXJzZXIoKQotICAgID4+PiBydW5uZXIgPSBkb2N0ZXN0LkRvY1Rlc3RSdW5uZXIodmVyYm9zZT1GYWxzZSkKLSAgICA+Pj4gdGVzdCA9IHBhcnNlci5nZXRfZG9jdGVzdChkb2MsIGdsb2JhbHMoKSwgImZvby1iYXJAYmF6IiwgImZvby1iYXJAYmF6LnB5IiwgMCkKLSAgICA+Pj4gcmVhbF9zdGRpbiA9IHN5cy5zdGRpbgotICAgID4+PiBzeXMuc3RkaW4gPSBfRmFrZUlucHV0KFsKLSAgICAuLi4gICAgJ3ByaW50KHkpJywgICMgcHJpbnQgZGF0YSBkZWZpbmVkIGluIHRoZSBmdW5jdGlvbgotICAgIC4uLiAgICAnc3RlcCcsICdzdGVwJywgJ3N0ZXAnLCAnc3RlcCcsICdzdGVwJywgJ3N0ZXAnLCAncHJpbnQoeiknLAotICAgIC4uLiAgICAndXAnLCAncHJpbnQoeCknLAotICAgIC4uLiAgICAndXAnLCAncHJpbnQoeSknLAotICAgIC4uLiAgICAndXAnLCAncHJpbnQoZm9vKScsCi0gICAgLi4uICAgICdjb250aW51ZScsICMgc3RvcCBkZWJ1Z2dpbmcKLSAgICAuLi4gICAgJyddKQorICAgICAgICA+Pj4gZG9jID0gJycnCisgICAgICAgIC4uLiA+Pj4gYSA9IDEKKyAgICAgICAgLi4uID4+PiBjYWxsc19zZXRfdHJhY2UoKQorICAgICAgICAuLi4gJycnCisgICAgICAgID4+PiBwYXJzZXIgPSBkb2N0ZXN0LkRvY1Rlc3RQYXJzZXIoKQorICAgICAgICA+Pj4gcnVubmVyID0gZG9jdGVzdC5Eb2NUZXN0UnVubmVyKHZlcmJvc2U9RmFsc2UpCisgICAgICAgID4+PiB0ZXN0ID0gcGFyc2VyLmdldF9kb2N0ZXN0KGRvYywgZ2xvYmFscygpLCAiZm9vLWJhckBiYXoiLCAiZm9vLWJhckBiYXoucHkiLCAwKQorICAgICAgICA+Pj4gcmVhbF9zdGRpbiA9IHN5cy5zdGRpbgorICAgICAgICA+Pj4gc3lzLnN0ZGluID0gX0Zha2VJbnB1dChbCisgICAgICAgIC4uLiAgICAncHJpbnQoeSknLCAgIyBwcmludCBkYXRhIGRlZmluZWQgaW4gdGhlIGZ1bmN0aW9uCisgICAgICAgIC4uLiAgICAnc3RlcCcsICdzdGVwJywgJ3N0ZXAnLCAnc3RlcCcsICdzdGVwJywgJ3N0ZXAnLCAncHJpbnQoeiknLAorICAgICAgICAuLi4gICAgJ3VwJywgJ3ByaW50KHgpJywKKyAgICAgICAgLi4uICAgICd1cCcsICdwcmludCh5KScsCisgICAgICAgIC4uLiAgICAndXAnLCAncHJpbnQoZm9vKScsCisgICAgICAgIC4uLiAgICAnY29udGludWUnLCAjIHN0b3AgZGVidWdnaW5nCisgICAgICAgIC4uLiAgICAnJ10pCiAKLSAgICA+Pj4gdHJ5OgotICAgIC4uLiAgICAgcnVubmVyLnJ1bih0ZXN0KQotICAgIC4uLiBmaW5hbGx5OgotICAgIC4uLiAgICAgc3lzLnN0ZGluID0gcmVhbF9zdGRpbgotICAgIC4uLiAjIGRvY3Rlc3Q6ICtSRVBPUlRfTkRJRkYKLSAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDUpY2FsbHNfc2V0X3RyYWNlKCkKLSAgICAtPiBzZWxmLmYxKCkKLSAgICAoUGRiKSBwcmludCh5KQotICAgIDEKLSAgICAoUGRiKSBzdGVwCi0gICAgLS1DYWxsLS0KLSAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDcpZjEoKQotICAgIC0+IGRlZiBmMShzZWxmKToKLSAgICAoUGRiKSBzdGVwCi0gICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPig4KWYxKCkKLSAgICAtPiB4ID0gMQotICAgIChQZGIpIHN0ZXAKLSAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDkpZjEoKQotICAgIC0+IHNlbGYuZjIoKQotICAgIChQZGIpIHN0ZXAKLSAgICAtLUNhbGwtLQotICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oMTEpZjIoKQotICAgIC0+IGRlZiBmMihzZWxmKToKLSAgICAoUGRiKSBzdGVwCi0gICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPigxMilmMigpCi0gICAgLT4geiA9IDEKLSAgICAoUGRiKSBzdGVwCi0gICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPigxMylmMigpCi0gICAgLT4geiA9IDIKLSAgICAoUGRiKSBwcmludCh6KQotICAgIDEKLSAgICAoUGRiKSB1cAotICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oOSlmMSgpCi0gICAgLT4gc2VsZi5mMigpCi0gICAgKFBkYikgcHJpbnQoeCkKLSAgICAxCi0gICAgKFBkYikgdXAKLSAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDUpY2FsbHNfc2V0X3RyYWNlKCkKLSAgICAtPiBzZWxmLmYxKCkKLSAgICAoUGRiKSBwcmludCh5KQotICAgIDEKLSAgICAoUGRiKSB1cAotICAgID4gPGRvY3Rlc3QgZm9vLWJhckBiYXpbMV0+KDEpPG1vZHVsZT4oKQotICAgIC0+IGNhbGxzX3NldF90cmFjZSgpCi0gICAgKFBkYikgcHJpbnQoZm9vKQotICAgICoqKiBOYW1lRXJyb3I6IG5hbWUgJ2ZvbycgaXMgbm90IGRlZmluZWQKLSAgICAoUGRiKSBjb250aW51ZQotICAgIFRlc3RSZXN1bHRzKGZhaWxlZD0wLCBhdHRlbXB0ZWQ9MikKLSIiIgorICAgICAgICA+Pj4gdHJ5OgorICAgICAgICAuLi4gICAgIHJ1bm5lci5ydW4odGVzdCkKKyAgICAgICAgLi4uIGZpbmFsbHk6CisgICAgICAgIC4uLiAgICAgc3lzLnN0ZGluID0gcmVhbF9zdGRpbgorICAgICAgICAuLi4gIyBkb2N0ZXN0OiArUkVQT1JUX05ESUZGCisgICAgICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oNSljYWxsc19zZXRfdHJhY2UoKQorICAgICAgICAtPiBzZWxmLmYxKCkKKyAgICAgICAgKFBkYikgcHJpbnQoeSkKKyAgICAgICAgMQorICAgICAgICAoUGRiKSBzdGVwCisgICAgICAgIC0tQ2FsbC0tCisgICAgICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oNylmMSgpCisgICAgICAgIC0+IGRlZiBmMShzZWxmKToKKyAgICAgICAgKFBkYikgc3RlcAorICAgICAgICA+IDxkb2N0ZXN0IHRlc3QudGVzdF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZV9uZXN0ZWRbMF0+KDgpZjEoKQorICAgICAgICAtPiB4ID0gMQorICAgICAgICAoUGRiKSBzdGVwCisgICAgICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oOSlmMSgpCisgICAgICAgIC0+IHNlbGYuZjIoKQorICAgICAgICAoUGRiKSBzdGVwCisgICAgICAgIC0tQ2FsbC0tCisgICAgICAgID4gPGRvY3Rlc3QgdGVzdC50ZXN0X2RvY3Rlc3QudGVzdF9wZGJfc2V0X3RyYWNlX25lc3RlZFswXT4oMTEpZjIoKQorICAgICAgICAtPiBkZWYgZjIoc2VsZik6CisgICAgICAgIChQZGIpIHN0ZXAKKyAgICAgICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPigxMilmMigpCisgICAgICAgIC0+IHogPSAxCisgICAgICAgIChQZGIpIHN0ZXAKKyAgICAgICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPigxMylmMigpCisgICAgICAgIC0+IHogPSAyCisgICAgICAgIChQZGIpIHByaW50KHopCisgICAgICAgIDEKKyAgICAgICAgKFBkYikgdXAKKyAgICAgICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPig5KWYxKCkKKyAgICAgICAgLT4gc2VsZi5mMigpCisgICAgICAgIChQZGIpIHByaW50KHgpCisgICAgICAgIDEKKyAgICAgICAgKFBkYikgdXAKKyAgICAgICAgPiA8ZG9jdGVzdCB0ZXN0LnRlc3RfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkWzBdPig1KWNhbGxzX3NldF90cmFjZSgpCisgICAgICAgIC0+IHNlbGYuZjEoKQorICAgICAgICAoUGRiKSBwcmludCh5KQorICAgICAgICAxCisgICAgICAgIChQZGIpIHVwCisgICAgICAgID4gPGRvY3Rlc3QgZm9vLWJhckBiYXpbMV0+KDEpPG1vZHVsZT4oKQorICAgICAgICAtPiBjYWxsc19zZXRfdHJhY2UoKQorICAgICAgICAoUGRiKSBwcmludChmb28pCisgICAgICAgICoqKiBOYW1lRXJyb3I6IG5hbWUgJ2ZvbycgaXMgbm90IGRlZmluZWQKKyAgICAgICAgKFBkYikgY29udGludWUKKyAgICAgICAgVGVzdFJlc3VsdHMoZmFpbGVkPTAsIGF0dGVtcHRlZD0yKQorICAgICIiIgogCiBkZWYgdGVzdF9Eb2NUZXN0U3VpdGUoKToKICAgICAiIiJEb2NUZXN0U3VpdGUgY3JlYXRlcyBhIHVuaXR0ZXN0IHRlc3Qgc3VpdGUgZnJvbSBhIGRvY3Rlc3QuCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2R1bW15X3RocmVhZC5weSBiL0xpYi90ZXN0L3Rlc3RfZHVtbXlfdGhyZWFkLnB5CmluZGV4IGM2MTA3OGQuLjJmYWZlMWQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZHVtbXlfdGhyZWFkLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZHVtbXlfdGhyZWFkLnB5CkBAIC0zNSw4ICszNSw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAiTG9jayBvYmplY3QgZGlkIG5vdCByZWxlYXNlIHByb3Blcmx5LiIpCiAKICAgICBkZWYgdGVzdF9pbXByb3Blcl9yZWxlYXNlKHNlbGYpOgotICAgICAgICAjTWFrZSBzdXJlIHJlbGVhc2Ugb2YgYW4gdW5sb2NrZWQgdGhyZWFkIHJhaXNlcyBfdGhyZWFkLmVycm9yCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKF90aHJlYWQuZXJyb3IsIHNlbGYubG9jay5yZWxlYXNlKQorICAgICAgICAjTWFrZSBzdXJlIHJlbGVhc2Ugb2YgYW4gdW5sb2NrZWQgdGhyZWFkIHJhaXNlcyBSdW50aW1lRXJyb3IKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBzZWxmLmxvY2sucmVsZWFzZSkKIAogICAgIGRlZiB0ZXN0X2NvbmRfYWNxdWlyZV9zdWNjZXNzKHNlbGYpOgogICAgICAgICAjTWFrZSBzdXJlIHRoZSBjb25kaXRpb25hbCBhY3F1aXJpbmcgb2YgdGhlIGxvY2sgd29ya3MuCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2VtYWlsLnB5IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC5weQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWVlYmJhNS4uMDAwMDAwMAotLS0gYS9MaWIvdGVzdC90ZXN0X2VtYWlsLnB5CisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotIyBDb3B5cmlnaHQgKEMpIDIwMDEtMjAwNyBQeXRob24gU29mdHdhcmUgRm91bmRhdGlvbgotIyBlbWFpbCBwYWNrYWdlIHVuaXQgdGVzdHMKLQotIyBUaGUgc3BlY2lmaWMgdGVzdHMgbm93IGxpdmUgaW4gTGliL2VtYWlsL3Rlc3QKLWZyb20gZW1haWwudGVzdC50ZXN0X2VtYWlsIGltcG9ydCBzdWl0ZQotZnJvbSBlbWFpbC50ZXN0LnRlc3RfZW1haWxfY29kZWNzIGltcG9ydCBzdWl0ZSBhcyBjb2RlY3Nfc3VpdGUKLWZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAotCi1kZWYgdGVzdF9tYWluKCk6Ci0gICAgc3VwcG9ydC5ydW5fdW5pdHRlc3Qoc3VpdGUoKSkKLSAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChjb2RlY3Nfc3VpdGUoKSkKLQotaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKLSAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9lbWFpbC9fX2luaXRfXy5weSBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvX19pbml0X18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjgwYWZiZAotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvX19pbml0X18ucHkKQEAgLTAsMCArMSw0NSBAQAoraW1wb3J0IG9zCitpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKK2ltcG9ydCB0ZXN0LnN1cHBvcnQKK2ltcG9ydCBlbWFpbAorZnJvbSB0ZXN0LnRlc3RfZW1haWwgaW1wb3J0IF9fZmlsZV9fIGFzIGxhbmRtYXJrCisKKyMgdXNlZCBieSByZWdydGVzdCBhbmQgX19tYWluX18uCitkZWYgdGVzdF9tYWluKCk6CisgICAgaGVyZSA9IG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykKKyAgICAjIFVuaXR0ZXN0IG11Y2tzIHdpdGggdGhlIHBhdGgsIHNvIHdlIGhhdmUgdG8gc2F2ZSBhbmQgcmVzdG9yZQorICAgICMgaXQgdG8ga2VlcCByZWdydGVzdCBoYXBweS4KKyAgICBzYXZlcGF0aCA9IHN5cy5wYXRoWzpdCisgICAgdGVzdC5zdXBwb3J0Ll9ydW5fc3VpdGUodW5pdHRlc3QuZGVmYXVsdFRlc3RMb2FkZXIuZGlzY292ZXIoaGVyZSkpCisgICAgc3lzLnBhdGhbOl0gPSBzYXZlcGF0aAorCisKKyMgaGVscGVyIGNvZGUgdXNlZCBieSBhIG51bWJlciBvZiB0ZXN0IG1vZHVsZXMuCisKK2RlZiBvcGVuZmlsZShmaWxlbmFtZSwgKmFyZ3MsICoqa3dzKToKKyAgICBwYXRoID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShsYW5kbWFyayksICdkYXRhJywgZmlsZW5hbWUpCisgICAgcmV0dXJuIG9wZW4ocGF0aCwgKmFyZ3MsICoqa3dzKQorCisKKyMgQmFzZSB0ZXN0IGNsYXNzCitjbGFzcyBUZXN0RW1haWxCYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIG1heERpZmYgPSBOb25lCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3cpOgorICAgICAgICBzdXBlcigpLl9faW5pdF9fKCphcmdzLCAqKmt3KQorICAgICAgICBzZWxmLmFkZFR5cGVFcXVhbGl0eUZ1bmMoYnl0ZXMsIHNlbGYuYXNzZXJ0Qnl0ZXNFcXVhbCkKKworICAgIG5kaWZmQXNzZXJ0RXF1YWwgPSB1bml0dGVzdC5UZXN0Q2FzZS5hc3NlcnRFcXVhbAorCisgICAgZGVmIF9tc2dvYmooc2VsZiwgZmlsZW5hbWUpOgorICAgICAgICB3aXRoIG9wZW5maWxlKGZpbGVuYW1lKSBhcyBmcDoKKyAgICAgICAgICAgIHJldHVybiBlbWFpbC5tZXNzYWdlX2Zyb21fZmlsZShmcCkKKworICAgIGRlZiBfYnl0ZXNfcmVwcihzZWxmLCBiKToKKyAgICAgICAgcmV0dXJuIFtyZXByKHgpIGZvciB4IGluIGIuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKV0KKworICAgIGRlZiBhc3NlcnRCeXRlc0VxdWFsKHNlbGYsIGZpcnN0LCBzZWNvbmQsIG1zZyk6CisgICAgICAgICIiIk91ciBieXRlIHN0cmluZ3MgYXJlIHJlYWxseSBlbmNvZGVkIHN0cmluZ3M7IGltcHJvdmUgZGlmZiBvdXRwdXQiIiIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLl9ieXRlc19yZXByKGZpcnN0KSwgc2VsZi5fYnl0ZXNfcmVwcihzZWNvbmQpKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9lbWFpbC9fX21haW5fXy5weSBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvX19tYWluX18ucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOThhZjllYwotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvX19tYWluX18ucHkKQEAgLTAsMCArMSwzIEBACitmcm9tIHRlc3QudGVzdF9lbWFpbCBpbXBvcnQgdGVzdF9tYWluCisKK3Rlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL1B5QmFubmVyMDQ4LmdpZiBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9QeUJhbm5lcjA0OC5naWYKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvUHlCYW5uZXIwNDguZ2lmCnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvUHlCYW5uZXIwNDguZ2lmCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvYXVkaW90ZXN0LmF1IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL2F1ZGlvdGVzdC5hdQpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9hdWRpb3Rlc3QuYXUKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9hdWRpb3Rlc3QuYXUKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDEudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wMS50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzAxLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wMS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzAyLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDIudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wMi50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDIudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wMy50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzAzLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDMudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzAzLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDQudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wNC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzA0LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wNC50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzA1LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDUudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wNS50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDUudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wNi50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzA2LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDYudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzA2LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDcudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wNy50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzA3LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18wNy50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzA4LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDgudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wOC50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMDgudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18wOS50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzA5LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMDkudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzA5LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTAudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xMC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzEwLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xMC50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzExLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTEudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xMS50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTEudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xMi50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzEyLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTIudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzEyLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTJhLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTJhLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTJhLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xMmEudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xMy50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzEzLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTMudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzEzLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTQudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xNC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzE0LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xNC50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzE1LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTUudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xNS50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTUudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xNi50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzE2LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTYudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzE2LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTcudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xNy50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzE3LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18xNy50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzE4LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTgudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xOC50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMTgudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18xOS50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzE5LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMTkudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzE5LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjAudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yMC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzIwLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yMC50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzIxLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjEudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yMS50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjEudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yMi50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzIyLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjIudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzIyLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjMudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yMy50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzIzLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yMy50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzI0LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjQudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yNC50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjQudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yNS50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzI1LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjUudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzI1LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjYudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yNi50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzI2LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yNi50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzI3LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjcudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yNy50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMjcudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18yOC50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzI4LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjgudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzI4LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMjkudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yOS50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzI5LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18yOS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzMwLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzAudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zMC50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzAudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zMS50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzMxLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzEudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzMxLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzIudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zMi50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzMyLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zMi50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzMzLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzMudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zMy50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzMudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zNC50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzM0LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzQudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzM0LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzUudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zNS50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzM1LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zNS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzM2LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzYudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zNi50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzYudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zNy50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzM3LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzcudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzM3LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfMzgudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zOC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzM4LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ18zOC50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzM5LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzkudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ18zOS50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfMzkudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ180MC50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzQwLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfNDAudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzQwLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfNDEudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ180MS50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzQxLnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ180MS50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzQyLnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfNDIudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ180Mi50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfNDIudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ180My50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzQzLnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfNDMudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzQzLnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfNDQudHh0IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ180NC50eHQKc2ltaWxhcml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzQ0LnR4dApyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC9kYXRhL21zZ180NC50eHQKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L2RhdGEvbXNnXzQ1LnR4dCBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfNDUudHh0CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMaWIvZW1haWwvdGVzdC9kYXRhL21zZ180NS50eHQKcmVuYW1lIHRvIExpYi90ZXN0L3Rlc3RfZW1haWwvZGF0YS9tc2dfNDUudHh0CmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC9kYXRhL21zZ180Ni50eHQgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzQ2LnR4dApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvZGF0YS9tc2dfNDYudHh0CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL2RhdGEvbXNnXzQ2LnR4dApkaWZmIC0tZ2l0IGEvTGliL2VtYWlsL3Rlc3QvdGVzdF9lbWFpbF9jb2RlY3MucHkgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfYXNpYW5fY29kZWNzLnB5CnNpbWlsYXJpdHkgaW5kZXggOTElCnJlbmFtZSBmcm9tIExpYi9lbWFpbC90ZXN0L3Rlc3RfZW1haWxfY29kZWNzLnB5CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfYXNpYW5fY29kZWNzLnB5CmluZGV4IGNhODVmNTcuLmE0ZGQ5YTkgMTAwNjQ0Ci0tLSBhL0xpYi9lbWFpbC90ZXN0L3Rlc3RfZW1haWxfY29kZWNzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZW1haWwvdGVzdF9hc2lhbl9jb2RlY3MucHkKQEAgLTUsNyArNSw3IEBACiBpbXBvcnQgdW5pdHRlc3QKIGZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QKIAotZnJvbSBlbWFpbC50ZXN0LnRlc3RfZW1haWwgaW1wb3J0IFRlc3RFbWFpbEJhc2UKK2Zyb20gdGVzdC50ZXN0X2VtYWlsLnRlc3RfZW1haWwgaW1wb3J0IFRlc3RFbWFpbEJhc2UKIGZyb20gZW1haWwuY2hhcnNldCBpbXBvcnQgQ2hhcnNldAogZnJvbSBlbWFpbC5oZWFkZXIgaW1wb3J0IEhlYWRlciwgZGVjb2RlX2hlYWRlcgogZnJvbSBlbWFpbC5tZXNzYWdlIGltcG9ydCBNZXNzYWdlCkBAIC03OCwxNiArNzgsNSBAQAogCiAKIAwKLWRlZiBzdWl0ZSgpOgotICAgIHN1aXRlID0gdW5pdHRlc3QuVGVzdFN1aXRlKCkKLSAgICBzdWl0ZS5hZGRUZXN0KHVuaXR0ZXN0Lm1ha2VTdWl0ZShUZXN0RW1haWxBc2lhbkNvZGVjcykpCi0gICAgcmV0dXJuIHN1aXRlCi0KLQotZGVmIHRlc3RfbWFpbigpOgotICAgIHJ1bl91bml0dGVzdChUZXN0RW1haWxBc2lhbkNvZGVjcykKLQotCi0MCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgotICAgIHVuaXR0ZXN0Lm1haW4oZGVmYXVsdFRlc3Q9J3N1aXRlJykKKyAgICB1bml0dGVzdC5tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi9lbWFpbC90ZXN0L3Rlc3RfZW1haWwucHkgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfZW1haWwucHkKc2ltaWxhcml0eSBpbmRleCA5NCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvdGVzdF9lbWFpbC5weQpyZW5hbWUgdG8gTGliL3Rlc3QvdGVzdF9lbWFpbC90ZXN0X2VtYWlsLnB5CmluZGV4IDEwMmUxNWIuLjEyMWM5MzkgMTAwNjQ0Ci0tLSBhL0xpYi9lbWFpbC90ZXN0L3Rlc3RfZW1haWwucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9lbWFpbC90ZXN0X2VtYWlsLnB5CkBAIC0zNiw0MCArMzYsMTQgQEAKIGZyb20gZW1haWwgaW1wb3J0IGJhc2U2NG1pbWUKIGZyb20gZW1haWwgaW1wb3J0IHF1b3ByaW1pbWUKIAotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGZpbmRmaWxlLCBydW5fdW5pdHRlc3QsIHVubGluawotZnJvbSBlbWFpbC50ZXN0IGltcG9ydCBfX2ZpbGVfXyBhcyBsYW5kbWFyawotCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgcnVuX3VuaXR0ZXN0LCB1bmxpbmsKK2Zyb20gdGVzdC50ZXN0X2VtYWlsIGltcG9ydCBvcGVuZmlsZSwgVGVzdEVtYWlsQmFzZQogCiBOTCA9ICdcbicKIEVNUFRZU1RSSU5HID0gJycKIFNQQUNFID0gJyAnCiAKIAotCi1kZWYgb3BlbmZpbGUoZmlsZW5hbWUsICphcmdzLCAqKmt3cyk6Ci0gICAgcGF0aCA9IG9zLnBhdGguam9pbihvcy5wYXRoLmRpcm5hbWUobGFuZG1hcmspLCAnZGF0YScsIGZpbGVuYW1lKQotICAgIHJldHVybiBvcGVuKHBhdGgsICphcmdzLCAqKmt3cykKLQotCi0KLSMgQmFzZSB0ZXN0IGNsYXNzCi1jbGFzcyBUZXN0RW1haWxCYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKLSAgICBkZWYgbmRpZmZBc3NlcnRFcXVhbChzZWxmLCBmaXJzdCwgc2Vjb25kKToKLSAgICAgICAgIiIiTGlrZSBhc3NlcnRFcXVhbCBleGNlcHQgdXNlIG5kaWZmIGZvciByZWFkYWJsZSBvdXRwdXQuIiIiCi0gICAgICAgIGlmIGZpcnN0ICE9IHNlY29uZDoKLSAgICAgICAgICAgIHNmaXJzdCA9IHN0cihmaXJzdCkKLSAgICAgICAgICAgIHNzZWNvbmQgPSBzdHIoc2Vjb25kKQotICAgICAgICAgICAgcmZpcnN0ID0gW3JlcHIobGluZSkgZm9yIGxpbmUgaW4gc2ZpcnN0LnNwbGl0bGluZXMoKV0KLSAgICAgICAgICAgIHJzZWNvbmQgPSBbcmVwcihsaW5lKSBmb3IgbGluZSBpbiBzc2Vjb25kLnNwbGl0bGluZXMoKV0KLSAgICAgICAgICAgIGRpZmYgPSBkaWZmbGliLm5kaWZmKHJmaXJzdCwgcnNlY29uZCkKLSAgICAgICAgICAgIHJhaXNlIHNlbGYuZmFpbHVyZUV4Y2VwdGlvbihOTCArIE5MLmpvaW4oZGlmZikpCi0KLSAgICBkZWYgX21zZ29iaihzZWxmLCBmaWxlbmFtZSk6Ci0gICAgICAgIHdpdGggb3BlbmZpbGUoZmluZGZpbGUoZmlsZW5hbWUpKSBhcyBmcDoKLSAgICAgICAgICAgIHJldHVybiBlbWFpbC5tZXNzYWdlX2Zyb21fZmlsZShmcCkKLQotCi0KICMgVGVzdCB2YXJpb3VzIGFzcGVjdHMgb2YgdGhlIE1lc3NhZ2UgY2xhc3MncyBBUEkKIGNsYXNzIFRlc3RNZXNzYWdlQVBJKFRlc3RFbWFpbEJhc2UpOgogICAgIGRlZiB0ZXN0X2dldF9hbGwoc2VsZik6CkBAIC0xOTQsNyArMTY4LDcgQEAKICAgICBkZWYgdGVzdF9tZXNzYWdlX3JmYzgyMl9vbmx5KHNlbGYpOgogICAgICAgICAjIElzc3VlIDc5NzA6IG1lc3NhZ2UvcmZjODIyIG5vdCBpbiBtdWx0aXBhcnQgcGFyc2VkIGJ5CiAgICAgICAgICMgSGVhZGVyUGFyc2VyIGNhdXNlZCBhbiBleGNlcHRpb24gd2hlbiBmbGF0dGVuZWQuCi0gICAgICAgIHdpdGggb3BlbmZpbGUoZmluZGZpbGUoJ21zZ180Ni50eHQnKSkgYXMgZnA6CisgICAgICAgIHdpdGggb3BlbmZpbGUoJ21zZ180Ni50eHQnKSBhcyBmcDoKICAgICAgICAgICAgIG1zZ2RhdGEgPSBmcC5yZWFkKCkKICAgICAgICAgcGFyc2VyID0gSGVhZGVyUGFyc2VyKCkKICAgICAgICAgbXNnID0gcGFyc2VyLnBhcnNlc3RyKG1zZ2RhdGEpCkBAIC0yMDMsNiArMTc3LDE3IEBACiAgICAgICAgIGdlbi5mbGF0dGVuKG1zZywgRmFsc2UpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0LmdldHZhbHVlKCksIG1zZ2RhdGEpCiAKKyAgICBkZWYgdGVzdF9ieXRlX21lc3NhZ2VfcmZjODIyX29ubHkoc2VsZik6CisgICAgICAgICMgTWFrZSBzdXJlIG5ldyBieXRlcyBoZWFkZXIgcGFyc2VyIGFsc28gcGFzc2VzIHRoaXMuCisgICAgICAgIHdpdGggb3BlbmZpbGUoJ21zZ180Ni50eHQnLCAncmInKSBhcyBmcDoKKyAgICAgICAgICAgIG1zZ2RhdGEgPSBmcC5yZWFkKCkKKyAgICAgICAgcGFyc2VyID0gZW1haWwucGFyc2VyLkJ5dGVzSGVhZGVyUGFyc2VyKCkKKyAgICAgICAgbXNnID0gcGFyc2VyLnBhcnNlYnl0ZXMobXNnZGF0YSkKKyAgICAgICAgb3V0ID0gQnl0ZXNJTygpCisgICAgICAgIGdlbiA9IGVtYWlsLmdlbmVyYXRvci5CeXRlc0dlbmVyYXRvcihvdXQpCisgICAgICAgIGdlbi5mbGF0dGVuKG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXQuZ2V0dmFsdWUoKSwgbXNnZGF0YSkKKwogICAgIGRlZiB0ZXN0X2dldF9kZWNvZGVkX3BheWxvYWQoc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbAogICAgICAgICBtc2cgPSBzZWxmLl9tc2dvYmooJ21zZ18xMC50eHQnKQpAQCAtMTI2NCwxMyArMTI0OSw3IEBACiAjIFRlc3QgdGhlIGJhc2ljIE1JTUVBdWRpbyBjbGFzcwogY2xhc3MgVGVzdE1JTUVBdWRpbyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgZGVmIHNldFVwKHNlbGYpOgotICAgICAgICAjIE1ha2Ugc3VyZSB3ZSBwaWNrIHVwIHRoZSBhdWRpb3Rlc3QuYXUgdGhhdCBsaXZlcyBpbiBlbWFpbC90ZXN0L2RhdGEuCi0gICAgICAgICMgSW4gUHl0aG9uLCB0aGVyZSdzIGFuIGF1ZGlvdGVzdC5hdSBsaXZpbmcgaW4gTGliL3Rlc3QgYnV0IHRoYXQgaXNuJ3QKLSAgICAgICAgIyBpbmNsdWRlZCBpbiBzb21lIGJpbmFyeSBkaXN0cm9zIHRoYXQgZG9uJ3QgaW5jbHVkZSB0aGUgdGVzdAotICAgICAgICAjIHBhY2thZ2UuICBUaGUgdHJhaWxpbmcgZW1wdHkgc3RyaW5nIG9uIHRoZSAuam9pbigpIGlzIHNpZ25pZmljYW50Ci0gICAgICAgICMgc2luY2UgZmluZGZpbGUoKSB3aWxsIGRvIGEgZGlybmFtZSgpLgotICAgICAgICBkYXRhZGlyID0gb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShsYW5kbWFyayksICdkYXRhJywgJycpCi0gICAgICAgIHdpdGggb3BlbihmaW5kZmlsZSgnYXVkaW90ZXN0LmF1JywgZGF0YWRpciksICdyYicpIGFzIGZwOgorICAgICAgICB3aXRoIG9wZW5maWxlKCdhdWRpb3Rlc3QuYXUnLCAncmInKSBhcyBmcDoKICAgICAgICAgICAgIHNlbGYuX2F1ZGlvZGF0YSA9IGZwLnJlYWQoKQogICAgICAgICBzZWxmLl9hdSA9IE1JTUVBdWRpbyhzZWxmLl9hdWRpb2RhdGEpCiAKQEAgLTE3OTcsNyArMTc3NiwxMiBAQAogCiAKICMgVGVzdCBzb21lIGJhZGx5IGZvcm1hdHRlZCBtZXNzYWdlcwotY2xhc3MgVGVzdE5vbkNvbmZvcm1hbnQoVGVzdEVtYWlsQmFzZSk6CitjbGFzcyBUZXN0Tm9uQ29uZm9ybWFudEJhc2U6CisKKyAgICBkZWYgX21zZ29iaihzZWxmLCBmaWxlbmFtZSk6CisgICAgICAgIHdpdGggb3BlbmZpbGUoZmlsZW5hbWUpIGFzIGZwOgorICAgICAgICAgICAgcmV0dXJuIGVtYWlsLm1lc3NhZ2VfZnJvbV9maWxlKGZwLCBwb2xpY3k9c2VsZi5wb2xpY3kpCisKICAgICBkZWYgdGVzdF9wYXJzZV9taXNzaW5nX21pbm9yX3R5cGUoc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbAogICAgICAgICBtc2cgPSBzZWxmLl9tc2dvYmooJ21zZ18xNC50eHQnKQpAQCAtMTgxMSwxOSArMTc5NSw2NSBAQAogICAgICAgICAjIFhYWCBXZSBjYW4gcHJvYmFibHkgZXZlbnR1YWxseSBkbyBiZXR0ZXIKICAgICAgICAgaW5uZXIgPSBtc2cuZ2V0X3BheWxvYWQoMCkKICAgICAgICAgdW5sZXNzKGhhc2F0dHIoaW5uZXIsICdkZWZlY3RzJykpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGlubmVyLmRlZmVjdHMpLCAxKQotICAgICAgICB1bmxlc3MoaXNpbnN0YW5jZShpbm5lci5kZWZlY3RzWzBdLAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLmdldF9kZWZlY3RzKGlubmVyKSksIDEpCisgICAgICAgIHVubGVzcyhpc2luc3RhbmNlKHNlbGYuZ2V0X2RlZmVjdHMoaW5uZXIpWzBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMuU3RhcnRCb3VuZGFyeU5vdEZvdW5kRGVmZWN0KSkKIAogICAgIGRlZiB0ZXN0X211bHRpcGFydF9ub19ib3VuZGFyeShzZWxmKToKICAgICAgICAgdW5sZXNzID0gc2VsZi5hc3NlcnRUcnVlCiAgICAgICAgIG1zZyA9IHNlbGYuX21zZ29iaignbXNnXzI1LnR4dCcpCiAgICAgICAgIHVubGVzcyhpc2luc3RhbmNlKG1zZy5nZXRfcGF5bG9hZCgpLCBzdHIpKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihtc2cuZGVmZWN0cyksIDIpCi0gICAgICAgIHVubGVzcyhpc2luc3RhbmNlKG1zZy5kZWZlY3RzWzBdLCBlcnJvcnMuTm9Cb3VuZGFyeUluTXVsdGlwYXJ0RGVmZWN0KSkKLSAgICAgICAgdW5sZXNzKGlzaW5zdGFuY2UobXNnLmRlZmVjdHNbMV0sCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYuZ2V0X2RlZmVjdHMobXNnKSksIDIpCisgICAgICAgIHVubGVzcyhpc2luc3RhbmNlKHNlbGYuZ2V0X2RlZmVjdHMobXNnKVswXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLk5vQm91bmRhcnlJbk11bHRpcGFydERlZmVjdCkpCisgICAgICAgIHVubGVzcyhpc2luc3RhbmNlKHNlbGYuZ2V0X2RlZmVjdHMobXNnKVsxXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLk11bHRpcGFydEludmFyaWFudFZpb2xhdGlvbkRlZmVjdCkpCiAKKyAgICBtdWx0aXBhcnRfbXNnID0gdGV4dHdyYXAuZGVkZW50KCIiIlwKKyAgICAgICAgRGF0ZTogV2VkLCAxNCBOb3YgMjAwNyAxMjo1NjoyMyBHTVQKKyAgICAgICAgRnJvbTogZm9vQGJhci5pbnZhbGlkCisgICAgICAgIFRvOiBmb29AYmFyLmludmFsaWQKKyAgICAgICAgU3ViamVjdDogQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogYmFzZTY0IGFuZCBtdWx0aXBhcnQKKyAgICAgICAgTUlNRS1WZXJzaW9uOiAxLjAKKyAgICAgICAgQ29udGVudC1UeXBlOiBtdWx0aXBhcnQvbWl4ZWQ7CisgICAgICAgICAgICBib3VuZGFyeT0iPT09PT09PT09PT09PT09MzM0NDQzODc4NDQ1ODExOTg2MT09Int9CisKKyAgICAgICAgLS09PT09PT09PT09PT09PT0zMzQ0NDM4Nzg0NDU4MTE5ODYxPT0KKyAgICAgICAgQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluCisKKyAgICAgICAgVGVzdCBtZXNzYWdlCisKKyAgICAgICAgLS09PT09PT09PT09PT09PT0zMzQ0NDM4Nzg0NDU4MTE5ODYxPT0KKyAgICAgICAgQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KKyAgICAgICAgQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogYmFzZTY0CisKKyAgICAgICAgWVdKagorCisgICAgICAgIC0tPT09PT09PT09PT09PT09MzM0NDQzODc4NDQ1ODExOTg2MT09LS0KKyAgICAgICAgIiIiKQorCisgICAgZGVmIHRlc3RfbXVsdGlwYXJ0X2ludmFsaWRfY3RlKHNlbGYpOgorICAgICAgICBtc2cgPSBlbWFpbC5tZXNzYWdlX2Zyb21fc3RyaW5nKAorICAgICAgICAgICAgc2VsZi5tdWx0aXBhcnRfbXNnLmZvcm1hdCgiXG5Db250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBiYXNlNjQiKSwKKyAgICAgICAgICAgIHBvbGljeSA9IHNlbGYucG9saWN5KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLmdldF9kZWZlY3RzKG1zZykpLCAxKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc2VsZi5nZXRfZGVmZWN0cyhtc2cpWzBdLAorICAgICAgICAgICAgZXJyb3JzLkludmFsaWRNdWx0aXBhcnRDb250ZW50VHJhbnNmZXJFbmNvZGluZ0RlZmVjdCkKKworICAgIGRlZiB0ZXN0X211bHRpcGFydF9ub19jdGVfbm9fZGVmZWN0KHNlbGYpOgorICAgICAgICBtc2cgPSBlbWFpbC5tZXNzYWdlX2Zyb21fc3RyaW5nKAorICAgICAgICAgICAgc2VsZi5tdWx0aXBhcnRfbXNnLmZvcm1hdCgnJyksCisgICAgICAgICAgICBwb2xpY3kgPSBzZWxmLnBvbGljeSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5nZXRfZGVmZWN0cyhtc2cpKSwgMCkKKworICAgIGRlZiB0ZXN0X211bHRpcGFydF92YWxpZF9jdGVfbm9fZGVmZWN0KHNlbGYpOgorICAgICAgICBmb3IgY3RlIGluICgnN2JpdCcsICc4Yml0JywgJ0JJTmFyeScpOgorICAgICAgICAgICAgbXNnID0gZW1haWwubWVzc2FnZV9mcm9tX3N0cmluZygKKyAgICAgICAgICAgICAgICBzZWxmLm11bHRpcGFydF9tc2cuZm9ybWF0KAorICAgICAgICAgICAgICAgICAgICAiXG5Db250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiB7fSIuZm9ybWF0KGN0ZSkpLAorICAgICAgICAgICAgICAgIHBvbGljeSA9IHNlbGYucG9saWN5KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5nZXRfZGVmZWN0cyhtc2cpKSwgMCkKKwogICAgIGRlZiB0ZXN0X2ludmFsaWRfY29udGVudF90eXBlKHNlbGYpOgogICAgICAgICBlcSA9IHNlbGYuYXNzZXJ0RXF1YWwKICAgICAgICAgbmVxID0gc2VsZi5uZGlmZkFzc2VydEVxdWFsCkBAIC0xODc3LDkgKzE5MDcsMTAgQEAKICAgICAgICAgdW5sZXNzID0gc2VsZi5hc3NlcnRUcnVlCiAgICAgICAgIG1zZyA9IHNlbGYuX21zZ29iaignbXNnXzQxLnR4dCcpCiAgICAgICAgIHVubGVzcyhoYXNhdHRyKG1zZywgJ2RlZmVjdHMnKSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obXNnLmRlZmVjdHMpLCAyKQotICAgICAgICB1bmxlc3MoaXNpbnN0YW5jZShtc2cuZGVmZWN0c1swXSwgZXJyb3JzLk5vQm91bmRhcnlJbk11bHRpcGFydERlZmVjdCkpCi0gICAgICAgIHVubGVzcyhpc2luc3RhbmNlKG1zZy5kZWZlY3RzWzFdLAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLmdldF9kZWZlY3RzKG1zZykpLCAyKQorICAgICAgICB1bmxlc3MoaXNpbnN0YW5jZShzZWxmLmdldF9kZWZlY3RzKG1zZylbMF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycy5Ob0JvdW5kYXJ5SW5NdWx0aXBhcnREZWZlY3QpKQorICAgICAgICB1bmxlc3MoaXNpbnN0YW5jZShzZWxmLmdldF9kZWZlY3RzKG1zZylbMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycy5NdWx0aXBhcnRJbnZhcmlhbnRWaW9sYXRpb25EZWZlY3QpKQogCiAgICAgZGVmIHRlc3RfbWlzc2luZ19zdGFydF9ib3VuZGFyeShzZWxmKToKQEAgLTE4OTMsMjIgKzE5MjQsNzIgQEAKICAgICAgICAgIwogICAgICAgICAjIFsqXSBUaGlzIG1lc3NhZ2UgaXMgbWlzc2luZyBpdHMgc3RhcnQgYm91bmRhcnkKICAgICAgICAgYmFkID0gb3V0ZXIuZ2V0X3BheWxvYWQoMSkuZ2V0X3BheWxvYWQoMCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oYmFkLmRlZmVjdHMpLCAxKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNpbnN0YW5jZShiYWQuZGVmZWN0c1swXSwKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5nZXRfZGVmZWN0cyhiYWQpKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzaW5zdGFuY2Uoc2VsZi5nZXRfZGVmZWN0cyhiYWQpWzBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMuU3RhcnRCb3VuZGFyeU5vdEZvdW5kRGVmZWN0KSkKIAogICAgIGRlZiB0ZXN0X2ZpcnN0X2xpbmVfaXNfY29udGludWF0aW9uX2hlYWRlcihzZWxmKToKICAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCiAgICAgICAgIG0gPSAnIExpbmUgMVxuTGluZSAyXG5MaW5lIDMnCi0gICAgICAgIG1zZyA9IGVtYWlsLm1lc3NhZ2VfZnJvbV9zdHJpbmcobSkKKyAgICAgICAgbXNnID0gZW1haWwubWVzc2FnZV9mcm9tX3N0cmluZyhtLCBwb2xpY3k9c2VsZi5wb2xpY3kpCiAgICAgICAgIGVxKG1zZy5rZXlzKCksIFtdKQogICAgICAgICBlcShtc2cuZ2V0X3BheWxvYWQoKSwgJ0xpbmUgMlxuTGluZSAzJykKLSAgICAgICAgZXEobGVuKG1zZy5kZWZlY3RzKSwgMSkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzaW5zdGFuY2UobXNnLmRlZmVjdHNbMF0sCisgICAgICAgIGVxKGxlbihzZWxmLmdldF9kZWZlY3RzKG1zZykpLCAxKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNpbnN0YW5jZShzZWxmLmdldF9kZWZlY3RzKG1zZylbMF0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycy5GaXJzdEhlYWRlckxpbmVJc0NvbnRpbnVhdGlvbkRlZmVjdCkpCi0gICAgICAgIGVxKG1zZy5kZWZlY3RzWzBdLmxpbmUsICcgTGluZSAxXG4nKQorICAgICAgICBlcShzZWxmLmdldF9kZWZlY3RzKG1zZylbMF0ubGluZSwgJyBMaW5lIDFcbicpCiAKIAorY2xhc3MgVGVzdE5vbkNvbmZvcm1hbnQoVGVzdE5vbkNvbmZvcm1hbnRCYXNlLCBUZXN0RW1haWxCYXNlKToKKworICAgIHBvbGljeT1lbWFpbC5wb2xpY3kuZGVmYXVsdAorCisgICAgZGVmIGdldF9kZWZlY3RzKHNlbGYsIG9iaik6CisgICAgICAgIHJldHVybiBvYmouZGVmZWN0cworCisKK2NsYXNzIFRlc3ROb25Db25mb3JtYW50Q2FwdHVyZShUZXN0Tm9uQ29uZm9ybWFudEJhc2UsIFRlc3RFbWFpbEJhc2UpOgorCisgICAgY2xhc3MgQ2FwdHVyZVBvbGljeShlbWFpbC5wb2xpY3kuUG9saWN5KToKKyAgICAgICAgY2FwdHVyZWQgPSBOb25lCisgICAgICAgIGRlZiByZWdpc3Rlcl9kZWZlY3Qoc2VsZiwgb2JqLCBkZWZlY3QpOgorICAgICAgICAgICAgc2VsZi5jYXB0dXJlZC5hcHBlbmQoZGVmZWN0KQorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLnBvbGljeSA9IHNlbGYuQ2FwdHVyZVBvbGljeShjYXB0dXJlZD1saXN0KCkpCisKKyAgICBkZWYgZ2V0X2RlZmVjdHMoc2VsZiwgb2JqKToKKyAgICAgICAgcmV0dXJuIHNlbGYucG9saWN5LmNhcHR1cmVkCisKKworY2xhc3MgVGVzdFJhaXNpbmdEZWZlY3RzKFRlc3RFbWFpbEJhc2UpOgorCisgICAgZGVmIF9tc2dvYmooc2VsZiwgZmlsZW5hbWUpOgorICAgICAgICB3aXRoIG9wZW5maWxlKGZpbGVuYW1lKSBhcyBmcDoKKyAgICAgICAgICAgIHJldHVybiBlbWFpbC5tZXNzYWdlX2Zyb21fZmlsZShmcCwgcG9saWN5PWVtYWlsLnBvbGljeS5zdHJpY3QpCisKKyAgICBkZWYgdGVzdF9zYW1lX2JvdW5kYXJ5X2lubmVyX291dGVyKHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKGVycm9ycy5TdGFydEJvdW5kYXJ5Tm90Rm91bmREZWZlY3QpOgorICAgICAgICAgICAgc2VsZi5fbXNnb2JqKCdtc2dfMTUudHh0JykKKworICAgIGRlZiB0ZXN0X211bHRpcGFydF9ub19ib3VuZGFyeShzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhlcnJvcnMuTm9Cb3VuZGFyeUluTXVsdGlwYXJ0RGVmZWN0KToKKyAgICAgICAgICAgIHNlbGYuX21zZ29iaignbXNnXzI1LnR4dCcpCisKKyAgICBkZWYgdGVzdF9seWluZ19tdWx0aXBhcnQoc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoZXJyb3JzLk5vQm91bmRhcnlJbk11bHRpcGFydERlZmVjdCk6CisgICAgICAgICAgICBzZWxmLl9tc2dvYmooJ21zZ180MS50eHQnKQorCisKKyAgICBkZWYgdGVzdF9taXNzaW5nX3N0YXJ0X2JvdW5kYXJ5KHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKGVycm9ycy5TdGFydEJvdW5kYXJ5Tm90Rm91bmREZWZlY3QpOgorICAgICAgICAgICAgc2VsZi5fbXNnb2JqKCdtc2dfNDIudHh0JykKKworICAgIGRlZiB0ZXN0X2ZpcnN0X2xpbmVfaXNfY29udGludWF0aW9uX2hlYWRlcihzZWxmKToKKyAgICAgICAgbSA9ICcgTGluZSAxXG5MaW5lIDJcbkxpbmUgMycKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhlcnJvcnMuRmlyc3RIZWFkZXJMaW5lSXNDb250aW51YXRpb25EZWZlY3QpOgorICAgICAgICAgICAgbXNnID0gZW1haWwubWVzc2FnZV9mcm9tX3N0cmluZyhtLCBwb2xpY3k9ZW1haWwucG9saWN5LnN0cmljdCkKKwogCiAjIFRlc3QgUkZDIDIwNDcgaGVhZGVyIGVuY29kaW5nIGFuZCBkZWNvZGluZwogY2xhc3MgVGVzdFJGQzIwNDcoVGVzdEVtYWlsQmFzZSk6CkBAIC0yNTYxLDYgKzI2NDIsMTMgQEAKICAgICAgICAgICAgKDIwMDIsIDQsIDMsIDE0LCA1OCwgMjYsIDAsIDEsIC0xLCAtMjg4MDApKQogCiAKKyAgICBkZWYgdGVzdF9wYXJzZWRhdGVfYWNjZXB0c190aW1lX3dpdGhfZG90cyhzZWxmKToKKyAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCisgICAgICAgIGVxKHV0aWxzLnBhcnNlZGF0ZV90eignNSBGZWIgMjAwMyAxMy40Ny4yNiAtMDgwMCcpLAorICAgICAgICAgICAoMjAwMywgMiwgNSwgMTMsIDQ3LCAyNiwgMCwgMSwgLTEsIC0yODgwMCkpCisgICAgICAgIGVxKHV0aWxzLnBhcnNlZGF0ZV90eignNSBGZWIgMjAwMyAxMy40NyAtMDgwMCcpLAorICAgICAgICAgICAoMjAwMywgMiwgNSwgMTMsIDQ3LCAwLCAwLCAxLCAtMSwgLTI4ODAwKSkKKwogICAgIGRlZiB0ZXN0X3BhcnNlZGF0ZV9hY2NlcHRhYmxlX3RvX3RpbWVfZnVuY3Rpb25zKHNlbGYpOgogICAgICAgICBlcSA9IHNlbGYuYXNzZXJ0RXF1YWwKICAgICAgICAgdGltZXR1cCA9IHV0aWxzLnBhcnNlZGF0ZSgnNSBGZWIgMjAwMyAxMzo0NzoyNiAtMDgwMCcpCkBAIC0yNjEwLDYgKzI2OTgsNDYgQEAKICAgICAgICAgYiA9ICdwZXJzb25AZG9tLmFpbicKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1dGlscy5wYXJzZWFkZHIodXRpbHMuZm9ybWF0YWRkcigoYSwgYikpKSwgKGEsIGIpKQogCisgICAgZGVmIHRlc3RfcXVvdGVzX3VuaWNvZGVfbmFtZXMoc2VsZik6CisgICAgICAgICMgaXNzdWUgMTY5MDYwOC4gIGVtYWlsLnV0aWxzLmZvcm1hdGFkZHIoKSBzaG91bGQgYmUgcmZjMjA0NyBhd2FyZS4KKyAgICAgICAgbmFtZSA9ICJIXHUwMGU0bnMgV1x1MDBmY3JzdCIKKyAgICAgICAgYWRkciA9ICdwZXJzb25AZG9tLmFpbicKKyAgICAgICAgdXRmOF9iYXNlNjQgPSAiPT91dGYtOD9iP1NNT2tibk1nVjhPOGNuTjA/PSA8cGVyc29uQGRvbS5haW4+IgorICAgICAgICBsYXRpbjFfcXVvcHJpID0gIj0/aXNvLTg4NTktMT9xP0g9RTRuc19XPUZDcnN0Pz0gPHBlcnNvbkBkb20uYWluPiIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1dGlscy5mb3JtYXRhZGRyKChuYW1lLCBhZGRyKSksIHV0ZjhfYmFzZTY0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHV0aWxzLmZvcm1hdGFkZHIoKG5hbWUsIGFkZHIpLCAnaXNvLTg4NTktMScpLAorICAgICAgICAgICAgbGF0aW4xX3F1b3ByaSkKKworICAgIGRlZiB0ZXN0X2FjY2VwdHNfYW55X2NoYXJzZXRfbGlrZV9vYmplY3Qoc2VsZik6CisgICAgICAgICMgaXNzdWUgMTY5MDYwOC4gIGVtYWlsLnV0aWxzLmZvcm1hdGFkZHIoKSBzaG91bGQgYmUgcmZjMjA0NyBhd2FyZS4KKyAgICAgICAgbmFtZSA9ICJIXHUwMGU0bnMgV1x1MDBmY3JzdCIKKyAgICAgICAgYWRkciA9ICdwZXJzb25AZG9tLmFpbicKKyAgICAgICAgdXRmOF9iYXNlNjQgPSAiPT91dGYtOD9iP1NNT2tibk1nVjhPOGNuTjA/PSA8cGVyc29uQGRvbS5haW4+IgorICAgICAgICBmb29iYXIgPSAiRk9PQkFSIgorICAgICAgICBjbGFzcyBDaGFyc2V0TW9jazoKKyAgICAgICAgICAgIGRlZiBoZWFkZXJfZW5jb2RlKHNlbGYsIHN0cmluZyk6CisgICAgICAgICAgICAgICAgcmV0dXJuIGZvb2JhcgorICAgICAgICBtb2NrID0gQ2hhcnNldE1vY2soKQorICAgICAgICBtb2NrX2V4cGVjdGVkID0gIiVzIDwlcz4iICUgKGZvb2JhciwgYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1dGlscy5mb3JtYXRhZGRyKChuYW1lLCBhZGRyKSwgbW9jayksIG1vY2tfZXhwZWN0ZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodXRpbHMuZm9ybWF0YWRkcigobmFtZSwgYWRkciksIENoYXJzZXQoJ3V0Zi04JykpLAorICAgICAgICAgICAgdXRmOF9iYXNlNjQpCisKKyAgICBkZWYgdGVzdF9pbnZhbGlkX2NoYXJzZXRfbGlrZV9vYmplY3RfcmFpc2VzX2Vycm9yKHNlbGYpOgorICAgICAgICAjIGlzc3VlIDE2OTA2MDguICBlbWFpbC51dGlscy5mb3JtYXRhZGRyKCkgc2hvdWxkIGJlIHJmYzIwNDcgYXdhcmUuCisgICAgICAgIG5hbWUgPSAiSFx1MDBlNG5zIFdcdTAwZmNyc3QiCisgICAgICAgIGFkZHIgPSAncGVyc29uQGRvbS5haW4nCisgICAgICAgICMgQSBvYmplY3Qgd2l0aG91dCBhIGhlYWRlcl9lbmNvZGUgbWV0aG9kOgorICAgICAgICBiYWRfY2hhcnNldCA9IG9iamVjdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEF0dHJpYnV0ZUVycm9yLCB1dGlscy5mb3JtYXRhZGRyLCAobmFtZSwgYWRkciksCisgICAgICAgICAgICBiYWRfY2hhcnNldCkKKworICAgIGRlZiB0ZXN0X3VuaWNvZGVfYWRkcmVzc19yYWlzZXNfZXJyb3Ioc2VsZik6CisgICAgICAgICMgaXNzdWUgMTY5MDYwOC4gIGVtYWlsLnV0aWxzLmZvcm1hdGFkZHIoKSBzaG91bGQgYmUgcmZjMjA0NyBhd2FyZS4KKyAgICAgICAgYWRkciA9ICdwZXJzXHUwMGY2bkBkb20uaW4nCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuaWNvZGVFcnJvciwgdXRpbHMuZm9ybWF0YWRkciwgKE5vbmUsIGFkZHIpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRXJyb3IsIHV0aWxzLmZvcm1hdGFkZHIsICgiTmFtZSIsIGFkZHIpKQorCiAgICAgZGVmIHRlc3RfbmFtZV93aXRoX2RvdChzZWxmKToKICAgICAgICAgeCA9ICdKb2huIFguIERvZSA8anhkQGV4YW1wbGUuY29tPicKICAgICAgICAgeSA9ICciSm9obiBYLiBEb2UiIDxqeGRAZXhhbXBsZS5jb20+JwpAQCAtMjg5MCw2ICszMDE4LDcgQEAKIAogCiBjbGFzcyBUZXN0UGFyc2VycyhUZXN0RW1haWxCYXNlKToKKwogICAgIGRlZiB0ZXN0X2hlYWRlcl9wYXJzZXIoc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbAogICAgICAgICAjIFBhcnNlIG9ubHkgdGhlIGhlYWRlcnMgb2YgYSBjb21wbGV4IG11bHRpcGFydCBNSU1FIGRvY3VtZW50CkBAIC0yOTAxLDYgKzMwMzAsMTggQEAKICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShtc2cuaXNfbXVsdGlwYXJ0KCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc2luc3RhbmNlKG1zZy5nZXRfcGF5bG9hZCgpLCBzdHIpKQogCisgICAgZGVmIHRlc3RfYnl0ZXNfaGVhZGVyX3BhcnNlcihzZWxmKToKKyAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCisgICAgICAgICMgUGFyc2Ugb25seSB0aGUgaGVhZGVycyBvZiBhIGNvbXBsZXggbXVsdGlwYXJ0IE1JTUUgZG9jdW1lbnQKKyAgICAgICAgd2l0aCBvcGVuZmlsZSgnbXNnXzAyLnR4dCcsICdyYicpIGFzIGZwOgorICAgICAgICAgICAgbXNnID0gZW1haWwucGFyc2VyLkJ5dGVzSGVhZGVyUGFyc2VyKCkucGFyc2UoZnApCisgICAgICAgIGVxKG1zZ1snZnJvbSddLCAncHBwLXJlcXVlc3RAenp6Lm9yZycpCisgICAgICAgIGVxKG1zZ1sndG8nXSwgJ3BwcEB6enoub3JnJykKKyAgICAgICAgZXEobXNnLmdldF9jb250ZW50X3R5cGUoKSwgJ211bHRpcGFydC9taXhlZCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UobXNnLmlzX211bHRpcGFydCgpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNpbnN0YW5jZShtc2cuZ2V0X3BheWxvYWQoKSwgc3RyKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzaW5zdGFuY2UobXNnLmdldF9wYXlsb2FkKGRlY29kZT1UcnVlKSwgYnl0ZXMpKQorCiAgICAgZGVmIHRlc3Rfd2hpdGVzcGFjZV9jb250aW51YXRpb24oc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbAogICAgICAgICAjIFRoaXMgbWVzc2FnZSBjb250YWlucyBhIGxpbmUgYWZ0ZXIgdGhlIFN1YmplY3Q6IGhlYWRlciB0aGF0IGhhcyBvbmx5CkBAIC0yOTU4LDYgKzMwOTksMjUgQEAKICAgICAgICAgZy5mbGF0dGVuKG1zZywgbGluZXNlcD0nXHJcbicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXR2YWx1ZSgpLCB0ZXh0KQogCisgICAgZGVmIHRlc3RfY3JsZl9jb250cm9sX3ZpYV9wb2xpY3koc2VsZik6CisgICAgICAgIHdpdGggb3BlbmZpbGUoJ21zZ18yNi50eHQnLCBuZXdsaW5lPSdcbicpIGFzIGZwOgorICAgICAgICAgICAgdGV4dCA9IGZwLnJlYWQoKQorICAgICAgICBtc2cgPSBlbWFpbC5tZXNzYWdlX2Zyb21fc3RyaW5nKHRleHQpCisgICAgICAgIHMgPSBTdHJpbmdJTygpCisgICAgICAgIGcgPSBlbWFpbC5nZW5lcmF0b3IuR2VuZXJhdG9yKHMsIHBvbGljeT1lbWFpbC5wb2xpY3kuU01UUCkKKyAgICAgICAgZy5mbGF0dGVuKG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHZhbHVlKCksIHRleHQpCisKKyAgICBkZWYgdGVzdF9mbGF0dGVuX2xpbmVzZXBfb3ZlcnJpZGVzX3BvbGljeShzZWxmKToKKyAgICAgICAgIyBtc2dfMjcgaXMgbGYgc2VwYXJhdGVkCisgICAgICAgIHdpdGggb3BlbmZpbGUoJ21zZ18yNy50eHQnLCBuZXdsaW5lPSdcbicpIGFzIGZwOgorICAgICAgICAgICAgdGV4dCA9IGZwLnJlYWQoKQorICAgICAgICBtc2cgPSBlbWFpbC5tZXNzYWdlX2Zyb21fc3RyaW5nKHRleHQpCisgICAgICAgIHMgPSBTdHJpbmdJTygpCisgICAgICAgIGcgPSBlbWFpbC5nZW5lcmF0b3IuR2VuZXJhdG9yKHMsIHBvbGljeT1lbWFpbC5wb2xpY3kuU01UUCkKKyAgICAgICAgZy5mbGF0dGVuKG1zZywgbGluZXNlcD0nXG4nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuZ2V0dmFsdWUoKSwgdGV4dCkKKwogICAgIG1heERpZmYgPSBOb25lCiAKICAgICBkZWYgdGVzdF9tdWx0aXBhcnRfZGlnZXN0X3dpdGhfZXh0cmFfbWltZV9oZWFkZXJzKHNlbGYpOgpAQCAtMzQyNCw2ICszNTg0LDQ0IEBACiAgICAgICAgIGcuZmxhdHRlbihtc2cpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXR2YWx1ZSgpLCBzb3VyY2UpCiAKKyAgICBkZWYgdGVzdF9jcmxmX2NvbnRyb2xfdmlhX3BvbGljeShzZWxmKToKKyAgICAgICAgIyBtc2dfMjYgaXMgY3JsZiB0ZXJtaW5hdGVkCisgICAgICAgIHdpdGggb3BlbmZpbGUoJ21zZ18yNi50eHQnLCAncmInKSBhcyBmcDoKKyAgICAgICAgICAgIHRleHQgPSBmcC5yZWFkKCkKKyAgICAgICAgbXNnID0gZW1haWwubWVzc2FnZV9mcm9tX2J5dGVzKHRleHQpCisgICAgICAgIHMgPSBCeXRlc0lPKCkKKyAgICAgICAgZyA9IGVtYWlsLmdlbmVyYXRvci5CeXRlc0dlbmVyYXRvcihzLCBwb2xpY3k9ZW1haWwucG9saWN5LlNNVFApCisgICAgICAgIGcuZmxhdHRlbihtc2cpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXR2YWx1ZSgpLCB0ZXh0KQorCisgICAgZGVmIHRlc3RfZmxhdHRlbl9saW5lc2VwX292ZXJyaWRlc19wb2xpY3koc2VsZik6CisgICAgICAgICMgbXNnXzI3IGlzIGxmIHNlcGFyYXRlZAorICAgICAgICB3aXRoIG9wZW5maWxlKCdtc2dfMjcudHh0JywgJ3JiJykgYXMgZnA6CisgICAgICAgICAgICB0ZXh0ID0gZnAucmVhZCgpCisgICAgICAgIG1zZyA9IGVtYWlsLm1lc3NhZ2VfZnJvbV9ieXRlcyh0ZXh0KQorICAgICAgICBzID0gQnl0ZXNJTygpCisgICAgICAgIGcgPSBlbWFpbC5nZW5lcmF0b3IuQnl0ZXNHZW5lcmF0b3IocywgcG9saWN5PWVtYWlsLnBvbGljeS5TTVRQKQorICAgICAgICBnLmZsYXR0ZW4obXNnLCBsaW5lc2VwPSdcbicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXR2YWx1ZSgpLCB0ZXh0KQorCisgICAgZGVmIHRlc3RfbXVzdF9iZV83Yml0X2hhbmRsZXNfdW5rbm93bl84Yml0KHNlbGYpOgorICAgICAgICBtc2cgPSBlbWFpbC5tZXNzYWdlX2Zyb21fYnl0ZXMoc2VsZi5ub25fbGF0aW5fYmluX21zZykKKyAgICAgICAgb3V0ID0gQnl0ZXNJTygpCisgICAgICAgIGcgPSBlbWFpbC5nZW5lcmF0b3IuQnl0ZXNHZW5lcmF0b3Iob3V0LAorICAgICAgICAgICAgICAgICAgICAgICAgcG9saWN5PWVtYWlsLnBvbGljeS5kZWZhdWx0LmNsb25lKG11c3RfYmVfN2JpdD1UcnVlKSkKKyAgICAgICAgZy5mbGF0dGVuKG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXQuZ2V0dmFsdWUoKSwKKyAgICAgICAgICAgIHNlbGYubm9uX2xhdGluX2Jpbl9tc2dfYXM3Yml0X3dyYXBwZWQuZW5jb2RlKCdhc2NpaScpKQorCisgICAgZGVmIHRlc3RfbXVzdF9iZV83Yml0X3RyYW5zZm9ybXNfOGJpdF9jdGUoc2VsZik6CisgICAgICAgIG1zZyA9IGVtYWlsLm1lc3NhZ2VfZnJvbV9ieXRlcyhzZWxmLmxhdGluX2Jpbl9tc2cpCisgICAgICAgIG91dCA9IEJ5dGVzSU8oKQorICAgICAgICBnID0gZW1haWwuZ2VuZXJhdG9yLkJ5dGVzR2VuZXJhdG9yKG91dCwKKyAgICAgICAgICAgICAgICAgICAgICAgIHBvbGljeT1lbWFpbC5wb2xpY3kuZGVmYXVsdC5jbG9uZShtdXN0X2JlXzdiaXQ9VHJ1ZSkpCisgICAgICAgIGcuZmxhdHRlbihtc2cpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0LmdldHZhbHVlKCksCisgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmxhdGluX2Jpbl9tc2dfYXM3Yml0LmVuY29kZSgnYXNjaWknKSkKKwogICAgIG1heERpZmYgPSBOb25lCiAKIApAQCAtMzQ0MiwxMiArMzY0MCw3IEBACiAgICAgICAgIGIgPSBCeXRlc0lPKCkKICAgICAgICAgZyA9IGVtYWlsLmdlbmVyYXRvci5CeXRlc0dlbmVyYXRvcihiLCBtYXhoZWFkZXJsZW49MCkKICAgICAgICAgZy5mbGF0dGVuKG1zZywgdW5peGZyb209dW5peGZyb20sIGxpbmVzZXA9c2VsZi5saW5lc2VwKQotICAgICAgICBzZWxmLmFzc2VydEJ5dGVTdHJpbmdzRXF1YWwoZGF0YSwgYi5nZXR2YWx1ZSgpKQotCi0gICAgZGVmIGFzc2VydEJ5dGVTdHJpbmdzRXF1YWwoc2VsZiwgc3RyMSwgc3RyMik6Ci0gICAgICAgICMgTm90IHVzaW5nIHNlbGYuYmxpbmVzZXAgaGVyZSBpcyBpbnRlbnRpb25hbC4gIFRoaXMgd2F5IHRoZSBvdXRwdXQKLSAgICAgICAgIyBpcyBtb3JlIHVzZWZ1bCB3aGVuIHRoZSBmYWlsdXJlIHJlc3VsdHMgaW4gbWl4ZWQgbGluZSBlbmRpbmdzLgotICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChzdHIxLnNwbGl0KGInXG4nKSwgc3RyMi5zcGxpdChiJ1xuJykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGF0YSwgYi5nZXR2YWx1ZSgpKQogCiAKIGNsYXNzIFRlc3RCeXRlc0dlbmVyYXRvcklkZW1wb3RlbnROTChCYXNlVGVzdEJ5dGVzR2VuZXJhdG9ySWRlbXBvdGVudCwKQEAgLTQ1OTksNyArNDc5Miw3IEBACiBjbGFzcyBUZXN0U2lnbmVkKFRlc3RFbWFpbEJhc2UpOgogCiAgICAgZGVmIF9tc2dfYW5kX29iaihzZWxmLCBmaWxlbmFtZSk6Ci0gICAgICAgIHdpdGggb3BlbmZpbGUoZmluZGZpbGUoZmlsZW5hbWUpKSBhcyBmcDoKKyAgICAgICAgd2l0aCBvcGVuZmlsZShmaWxlbmFtZSkgYXMgZnA6CiAgICAgICAgICAgICBvcmlnaW5hbCA9IGZwLnJlYWQoKQogICAgICAgICAgICAgbXNnID0gZW1haWwubWVzc2FnZV9mcm9tX3N0cmluZyhvcmlnaW5hbCkKICAgICAgICAgcmV0dXJuIG9yaWdpbmFsLCBtc2cKQEAgLTQ2MzEsMjMgKzQ4MjQsNSBAQAogCiAKIAotZGVmIF90ZXN0Y2xhc3NlcygpOgotICAgIG1vZCA9IHN5cy5tb2R1bGVzW19fbmFtZV9fXQotICAgIHJldHVybiBbZ2V0YXR0cihtb2QsIG5hbWUpIGZvciBuYW1lIGluIGRpcihtb2QpIGlmIG5hbWUuc3RhcnRzd2l0aCgnVGVzdCcpXQotCi0KLWRlZiBzdWl0ZSgpOgotICAgIHN1aXRlID0gdW5pdHRlc3QuVGVzdFN1aXRlKCkKLSAgICBmb3IgdGVzdGNsYXNzIGluIF90ZXN0Y2xhc3NlcygpOgotICAgICAgICBzdWl0ZS5hZGRUZXN0KHVuaXR0ZXN0Lm1ha2VTdWl0ZSh0ZXN0Y2xhc3MpKQotICAgIHJldHVybiBzdWl0ZQotCi0KLWRlZiB0ZXN0X21haW4oKToKLSAgICBmb3IgdGVzdGNsYXNzIGluIF90ZXN0Y2xhc3NlcygpOgotICAgICAgICBydW5fdW5pdHRlc3QodGVzdGNsYXNzKQotCi0KLQogaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKLSAgICB1bml0dGVzdC5tYWluKGRlZmF1bHRUZXN0PSdzdWl0ZScpCisgICAgdW5pdHRlc3QubWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfZ2VuZXJhdG9yLnB5IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC90ZXN0X2dlbmVyYXRvci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNWNhNmM1Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvdGVzdF9lbWFpbC90ZXN0X2dlbmVyYXRvci5weQpAQCAtMCwwICsxLDEzNiBAQAoraW1wb3J0IGlvCitpbXBvcnQgdGV4dHdyYXAKK2ltcG9ydCB1bml0dGVzdAorZnJvbSBlbWFpbCBpbXBvcnQgbWVzc2FnZV9mcm9tX3N0cmluZywgbWVzc2FnZV9mcm9tX2J5dGVzCitmcm9tIGVtYWlsLmdlbmVyYXRvciBpbXBvcnQgR2VuZXJhdG9yLCBCeXRlc0dlbmVyYXRvcgorZnJvbSBlbWFpbCBpbXBvcnQgcG9saWN5Citmcm9tIHRlc3QudGVzdF9lbWFpbCBpbXBvcnQgVGVzdEVtYWlsQmFzZQorCisjIFhYWDogbW92ZSBnZW5lcmF0b3IgdGVzdHMgZnJvbSB0ZXN0X2VtYWlsIGludG8gaGVyZSBhdCBzb21lIHBvaW50LgorCisKK2NsYXNzIFRlc3RHZW5lcmF0b3JCYXNlKCk6CisKKyAgICBsb25nX3N1YmplY3QgPSB7CisgICAgICAgIDA6IHRleHR3cmFwLmRlZGVudCgiIiJcCisgICAgICAgICAgICBUbzogd2hvbV9pdF9tYXlfY29uY2VybkBleGFtcGxlLmNvbQorICAgICAgICAgICAgRnJvbTogbm9ib2R5X3lvdV93YW50X3RvX2tub3dAZXhhbXBsZS5jb20KKyAgICAgICAgICAgIFN1YmplY3Q6IFdlIHRoZSB3aWxsaW5nIGxlZCBieSB0aGUgdW5rbm93aW5nIGFyZSBkb2luZyB0aGUKKyAgICAgICAgICAgICBpbXBvc3NpYmxlIGZvciB0aGUgdW5ncmF0ZWZ1bC4gV2UgaGF2ZSBkb25lIHNvIG11Y2ggZm9yIHNvIGxvbmcgd2l0aCBzbyBsaXR0bGUKKyAgICAgICAgICAgICB3ZSBhcmUgbm93IHF1YWxpZmllZCB0byBkbyBhbnl0aGluZyB3aXRoIG5vdGhpbmcuCisKKyAgICAgICAgICAgIE5vbmUKKyAgICAgICAgICAgICIiIiksCisgICAgICAgIDQwOiB0ZXh0d3JhcC5kZWRlbnQoIiIiXAorICAgICAgICAgICAgVG86IHdob21faXRfbWF5X2NvbmNlcm5AZXhhbXBsZS5jb20KKyAgICAgICAgICAgIEZyb206XHgyMAorICAgICAgICAgICAgIG5vYm9keV95b3Vfd2FudF90b19rbm93QGV4YW1wbGUuY29tCisgICAgICAgICAgICBTdWJqZWN0OiBXZSB0aGUgd2lsbGluZyBsZWQgYnkgdGhlCisgICAgICAgICAgICAgdW5rbm93aW5nIGFyZSBkb2luZyB0aGUKKyAgICAgICAgICAgICBpbXBvc3NpYmxlIGZvciB0aGUgdW5ncmF0ZWZ1bC4gV2UgaGF2ZQorICAgICAgICAgICAgIGRvbmUgc28gbXVjaCBmb3Igc28gbG9uZyB3aXRoIHNvIGxpdHRsZQorICAgICAgICAgICAgIHdlIGFyZSBub3cgcXVhbGlmaWVkIHRvIGRvIGFueXRoaW5nCisgICAgICAgICAgICAgd2l0aCBub3RoaW5nLgorCisgICAgICAgICAgICBOb25lCisgICAgICAgICAgICAiIiIpLAorICAgICAgICAyMDogdGV4dHdyYXAuZGVkZW50KCIiIlwKKyAgICAgICAgICAgIFRvOlx4MjAKKyAgICAgICAgICAgICB3aG9tX2l0X21heV9jb25jZXJuQGV4YW1wbGUuY29tCisgICAgICAgICAgICBGcm9tOlx4MjAKKyAgICAgICAgICAgICBub2JvZHlfeW91X3dhbnRfdG9fa25vd0BleGFtcGxlLmNvbQorICAgICAgICAgICAgU3ViamVjdDogV2UgdGhlCisgICAgICAgICAgICAgd2lsbGluZyBsZWQgYnkgdGhlCisgICAgICAgICAgICAgdW5rbm93aW5nIGFyZSBkb2luZworICAgICAgICAgICAgIHRoZQorICAgICAgICAgICAgIGltcG9zc2libGUgZm9yIHRoZQorICAgICAgICAgICAgIHVuZ3JhdGVmdWwuIFdlIGhhdmUKKyAgICAgICAgICAgICBkb25lIHNvIG11Y2ggZm9yIHNvCisgICAgICAgICAgICAgbG9uZyB3aXRoIHNvIGxpdHRsZQorICAgICAgICAgICAgIHdlIGFyZSBub3cKKyAgICAgICAgICAgICBxdWFsaWZpZWQgdG8gZG8KKyAgICAgICAgICAgICBhbnl0aGluZyB3aXRoCisgICAgICAgICAgICAgbm90aGluZy4KKworICAgICAgICAgICAgTm9uZQorICAgICAgICAgICAgIiIiKSwKKyAgICAgICAgfQorICAgIGxvbmdfc3ViamVjdFsxMDBdID0gbG9uZ19zdWJqZWN0WzBdCisKKyAgICBkZWYgbWF4aGVhZGVybGVuX3BhcmFtZXRlcl90ZXN0KHNlbGYsIG4pOgorICAgICAgICBtc2cgPSBzZWxmLm1zZ21ha2VyKHNlbGYubG9uZ19zdWJqZWN0WzBdKQorICAgICAgICBzID0gc2VsZi5pb2NsYXNzKCkKKyAgICAgICAgZyA9IHNlbGYuZ2VuY2xhc3MocywgbWF4aGVhZGVybGVuPW4pCisgICAgICAgIGcuZmxhdHRlbihtc2cpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXR2YWx1ZSgpLCBzZWxmLmxvbmdfc3ViamVjdFtuXSkKKworICAgIGRlZiB0ZXN0X21heGhlYWRlcmxlbl9wYXJhbWV0ZXJfMChzZWxmKToKKyAgICAgICAgc2VsZi5tYXhoZWFkZXJsZW5fcGFyYW1ldGVyX3Rlc3QoMCkKKworICAgIGRlZiB0ZXN0X21heGhlYWRlcmxlbl9wYXJhbWV0ZXJfMTAwKHNlbGYpOgorICAgICAgICBzZWxmLm1heGhlYWRlcmxlbl9wYXJhbWV0ZXJfdGVzdCgxMDApCisKKyAgICBkZWYgdGVzdF9tYXhoZWFkZXJsZW5fcGFyYW1ldGVyXzQwKHNlbGYpOgorICAgICAgICBzZWxmLm1heGhlYWRlcmxlbl9wYXJhbWV0ZXJfdGVzdCg0MCkKKworICAgIGRlZiB0ZXN0X21heGhlYWRlcmxlbl9wYXJhbWV0ZXJfMjAoc2VsZik6CisgICAgICAgIHNlbGYubWF4aGVhZGVybGVuX3BhcmFtZXRlcl90ZXN0KDIwKQorCisgICAgZGVmIG1heGhlYWRlcmxlbl9wb2xpY3lfdGVzdChzZWxmLCBuKToKKyAgICAgICAgbXNnID0gc2VsZi5tc2dtYWtlcihzZWxmLmxvbmdfc3ViamVjdFswXSkKKyAgICAgICAgcyA9IHNlbGYuaW9jbGFzcygpCisgICAgICAgIGcgPSBzZWxmLmdlbmNsYXNzKHMsIHBvbGljeT1wb2xpY3kuZGVmYXVsdC5jbG9uZShtYXhfbGluZV9sZW5ndGg9bikpCisgICAgICAgIGcuZmxhdHRlbihtc2cpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXR2YWx1ZSgpLCBzZWxmLmxvbmdfc3ViamVjdFtuXSkKKworICAgIGRlZiB0ZXN0X21heGhlYWRlcmxlbl9wb2xpY3lfMChzZWxmKToKKyAgICAgICAgc2VsZi5tYXhoZWFkZXJsZW5fcG9saWN5X3Rlc3QoMCkKKworICAgIGRlZiB0ZXN0X21heGhlYWRlcmxlbl9wb2xpY3lfMTAwKHNlbGYpOgorICAgICAgICBzZWxmLm1heGhlYWRlcmxlbl9wb2xpY3lfdGVzdCgxMDApCisKKyAgICBkZWYgdGVzdF9tYXhoZWFkZXJsZW5fcG9saWN5XzQwKHNlbGYpOgorICAgICAgICBzZWxmLm1heGhlYWRlcmxlbl9wb2xpY3lfdGVzdCg0MCkKKworICAgIGRlZiB0ZXN0X21heGhlYWRlcmxlbl9wb2xpY3lfMjAoc2VsZik6CisgICAgICAgIHNlbGYubWF4aGVhZGVybGVuX3BvbGljeV90ZXN0KDIwKQorCisgICAgZGVmIG1heGhlYWRlcmxlbl9wYXJtX292ZXJyaWRlc19wb2xpY3lfdGVzdChzZWxmLCBuKToKKyAgICAgICAgbXNnID0gc2VsZi5tc2dtYWtlcihzZWxmLmxvbmdfc3ViamVjdFswXSkKKyAgICAgICAgcyA9IHNlbGYuaW9jbGFzcygpCisgICAgICAgIGcgPSBzZWxmLmdlbmNsYXNzKHMsIG1heGhlYWRlcmxlbj1uLAorICAgICAgICAgICAgICAgICAgICAgICAgICBwb2xpY3k9cG9saWN5LmRlZmF1bHQuY2xvbmUobWF4X2xpbmVfbGVuZ3RoPTEwKSkKKyAgICAgICAgZy5mbGF0dGVuKG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHZhbHVlKCksIHNlbGYubG9uZ19zdWJqZWN0W25dKQorCisgICAgZGVmIHRlc3RfbWF4aGVhZGVybGVuX3Bhcm1fb3ZlcnJpZGVzX3BvbGljeV8wKHNlbGYpOgorICAgICAgICBzZWxmLm1heGhlYWRlcmxlbl9wYXJtX292ZXJyaWRlc19wb2xpY3lfdGVzdCgwKQorCisgICAgZGVmIHRlc3RfbWF4aGVhZGVybGVuX3Bhcm1fb3ZlcnJpZGVzX3BvbGljeV8xMDAoc2VsZik6CisgICAgICAgIHNlbGYubWF4aGVhZGVybGVuX3Bhcm1fb3ZlcnJpZGVzX3BvbGljeV90ZXN0KDEwMCkKKworICAgIGRlZiB0ZXN0X21heGhlYWRlcmxlbl9wYXJtX292ZXJyaWRlc19wb2xpY3lfNDAoc2VsZik6CisgICAgICAgIHNlbGYubWF4aGVhZGVybGVuX3Bhcm1fb3ZlcnJpZGVzX3BvbGljeV90ZXN0KDQwKQorCisgICAgZGVmIHRlc3RfbWF4aGVhZGVybGVuX3Bhcm1fb3ZlcnJpZGVzX3BvbGljeV8yMChzZWxmKToKKyAgICAgICAgc2VsZi5tYXhoZWFkZXJsZW5fcGFybV9vdmVycmlkZXNfcG9saWN5X3Rlc3QoMjApCisKKworY2xhc3MgVGVzdEdlbmVyYXRvcihUZXN0R2VuZXJhdG9yQmFzZSwgVGVzdEVtYWlsQmFzZSk6CisKKyAgICBtc2dtYWtlciA9IHN0YXRpY21ldGhvZChtZXNzYWdlX2Zyb21fc3RyaW5nKQorICAgIGdlbmNsYXNzID0gR2VuZXJhdG9yCisgICAgaW9jbGFzcyA9IGlvLlN0cmluZ0lPCisKKworY2xhc3MgVGVzdEJ5dGVzR2VuZXJhdG9yKFRlc3RHZW5lcmF0b3JCYXNlLCBUZXN0RW1haWxCYXNlKToKKworICAgIG1zZ21ha2VyID0gc3RhdGljbWV0aG9kKG1lc3NhZ2VfZnJvbV9ieXRlcykKKyAgICBnZW5jbGFzcyA9IEJ5dGVzR2VuZXJhdG9yCisgICAgaW9jbGFzcyA9IGlvLkJ5dGVzSU8KKyAgICBsb25nX3N1YmplY3QgPSB7a2V5OiB4LmVuY29kZSgnYXNjaWknKQorICAgICAgICBmb3Iga2V5LCB4IGluIFRlc3RHZW5lcmF0b3JCYXNlLmxvbmdfc3ViamVjdC5pdGVtcygpfQorCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdW5pdHRlc3QubWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfcG9saWN5LnB5IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC90ZXN0X3BvbGljeS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wODZjZTQwCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvdGVzdF9lbWFpbC90ZXN0X3BvbGljeS5weQpAQCAtMCwwICsxLDE0OCBAQAoraW1wb3J0IHR5cGVzCitpbXBvcnQgdW5pdHRlc3QKK2ltcG9ydCBlbWFpbC5wb2xpY3kKKworY2xhc3MgUG9saWN5QVBJVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgbG9uZ01lc3NhZ2UgPSBUcnVlCisKKyAgICAjIFRoZXNlIGRlZmF1bHQgdmFsdWVzIGFyZSB0aGUgb25lcyBzZXQgb24gZW1haWwucG9saWN5LmRlZmF1bHQuCisgICAgIyBJZiBhbnkgb2YgdGhlc2UgZGVmYXVsdHMgY2hhbmdlLCB0aGUgZG9jcyBtdXN0IGJlIHVwZGF0ZWQuCisgICAgcG9saWN5X2RlZmF1bHRzID0geworICAgICAgICAnbWF4X2xpbmVfbGVuZ3RoJzogICAgICAgICAgNzgsCisgICAgICAgICdsaW5lc2VwJzogICAgICAgICAgICAgICAgICAnXG4nLAorICAgICAgICAnbXVzdF9iZV83Yml0JzogICAgICAgICAgICAgRmFsc2UsCisgICAgICAgICdyYWlzZV9vbl9kZWZlY3QnOiAgICAgICAgICBGYWxzZSwKKyAgICAgICAgfQorCisgICAgIyBGb3IgZWFjaCBwb2xpY3kgdW5kZXIgdGVzdCwgd2UgZ2l2ZSBoZXJlIHRoZSB2YWx1ZXMgb2YgdGhlIGF0dHJpYnV0ZXMKKyAgICAjIHRoYXQgYXJlIGRpZmZlcmVudCBmcm9tIHRoZSBkZWZhdWx0cyBmb3IgdGhhdCBwb2xpY3kuCisgICAgcG9saWNpZXMgPSB7CisgICAgICAgIGVtYWlsLnBvbGljeS5Qb2xpY3koKToge30sCisgICAgICAgIGVtYWlsLnBvbGljeS5kZWZhdWx0OiB7fSwKKyAgICAgICAgZW1haWwucG9saWN5LlNNVFA6IHsnbGluZXNlcCc6ICdcclxuJ30sCisgICAgICAgIGVtYWlsLnBvbGljeS5IVFRQOiB7J2xpbmVzZXAnOiAnXHJcbicsICdtYXhfbGluZV9sZW5ndGgnOiBOb25lfSwKKyAgICAgICAgZW1haWwucG9saWN5LnN0cmljdDogeydyYWlzZV9vbl9kZWZlY3QnOiBUcnVlfSwKKyAgICAgICAgfQorCisgICAgZGVmIHRlc3RfZGVmYXVsdHMoc2VsZik6CisgICAgICAgIGZvciBwb2xpY3ksIGNoYW5nZWRfZGVmYXVsdHMgaW4gc2VsZi5wb2xpY2llcy5pdGVtcygpOgorICAgICAgICAgICAgZXhwZWN0ZWQgPSBzZWxmLnBvbGljeV9kZWZhdWx0cy5jb3B5KCkKKyAgICAgICAgICAgIGV4cGVjdGVkLnVwZGF0ZShjaGFuZ2VkX2RlZmF1bHRzKQorICAgICAgICAgICAgZm9yIGF0dHIsIHZhbHVlIGluIGV4cGVjdGVkLml0ZW1zKCk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRhdHRyKHBvbGljeSwgYXR0ciksIHZhbHVlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoImNoYW5nZSB7fSBkb2NzL2RvY3N0cmluZ3MgaWYgZGVmYXVsdHMgaGF2ZSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjaGFuZ2VkIikuZm9ybWF0KHBvbGljeSkpCisKKyAgICBkZWYgdGVzdF9hbGxfYXR0cmlidXRlc19jb3ZlcmVkKHNlbGYpOgorICAgICAgICBmb3IgYXR0ciBpbiBkaXIoZW1haWwucG9saWN5LmRlZmF1bHQpOgorICAgICAgICAgICAgaWYgKGF0dHIuc3RhcnRzd2l0aCgnXycpIG9yCisgICAgICAgICAgICAgICBpc2luc3RhbmNlKGdldGF0dHIoZW1haWwucG9saWN5LlBvbGljeSwgYXR0ciksCisgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVzLkZ1bmN0aW9uVHlwZSkpOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oYXR0ciwgc2VsZi5wb2xpY3lfZGVmYXVsdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAie30gaXMgbm90IGZ1bGx5IHRlc3RlZCIuZm9ybWF0KGF0dHIpKQorCisgICAgZGVmIHRlc3RfcG9saWN5X2lzX2ltbXV0YWJsZShzZWxmKToKKyAgICAgICAgZm9yIHBvbGljeSBpbiBzZWxmLnBvbGljaWVzOgorICAgICAgICAgICAgZm9yIGF0dHIgaW4gc2VsZi5wb2xpY3lfZGVmYXVsdHM6CisgICAgICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4KEF0dHJpYnV0ZUVycm9yLCBhdHRyKyIuKnJlYWQtb25seSIpOgorICAgICAgICAgICAgICAgICAgICBzZXRhdHRyKHBvbGljeSwgYXR0ciwgTm9uZSkKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXNSZWdleChBdHRyaWJ1dGVFcnJvciwgJ25vIGF0dHJpYnV0ZS4qZm9vJyk6CisgICAgICAgICAgICAgICAgcG9saWN5LmZvbyA9IE5vbmUKKworICAgIGRlZiB0ZXN0X3NldF9wb2xpY3lfYXR0cnNfd2hlbl9jYWxsZWRsKHNlbGYpOgorICAgICAgICB0ZXN0YXR0cmRpY3QgPSB7IGF0dHI6IE5vbmUgZm9yIGF0dHIgaW4gc2VsZi5wb2xpY3lfZGVmYXVsdHMgfQorICAgICAgICBmb3IgcG9saWN5Y2xhc3MgaW4gc2VsZi5wb2xpY2llczoKKyAgICAgICAgICAgIHBvbGljeSA9IHBvbGljeWNsYXNzLmNsb25lKCoqdGVzdGF0dHJkaWN0KQorICAgICAgICAgICAgZm9yIGF0dHIgaW4gc2VsZi5wb2xpY3lfZGVmYXVsdHM6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZ2V0YXR0cihwb2xpY3ksIGF0dHIpKQorCisgICAgZGVmIHRlc3RfcmVqZWN0X25vbl9wb2xpY3lfa2V5d29yZF93aGVuX2NhbGxlZChzZWxmKToKKyAgICAgICAgZm9yIHBvbGljeWNsYXNzIGluIHNlbGYucG9saWNpZXM6CisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICAgICAgcG9saWN5Y2xhc3ModGhpc19rZXl3b3JkX3Nob3VsZF9ub3RfYmVfdmFsaWQ9Tm9uZSkKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgICAgICBwb2xpY3ljbGFzcyhuZXd0bGluZT1Ob25lKQorCisgICAgZGVmIHRlc3RfcG9saWN5X2FkZGl0aW9uKHNlbGYpOgorICAgICAgICBleHBlY3RlZCA9IHNlbGYucG9saWN5X2RlZmF1bHRzLmNvcHkoKQorICAgICAgICBwMSA9IGVtYWlsLnBvbGljeS5kZWZhdWx0LmNsb25lKG1heF9saW5lX2xlbmd0aD0xMDApCisgICAgICAgIHAyID0gZW1haWwucG9saWN5LmRlZmF1bHQuY2xvbmUobWF4X2xpbmVfbGVuZ3RoPTUwKQorICAgICAgICBhZGRlZCA9IHAxICsgcDIKKyAgICAgICAgZXhwZWN0ZWQudXBkYXRlKG1heF9saW5lX2xlbmd0aD01MCkKKyAgICAgICAgZm9yIGF0dHIsIHZhbHVlIGluIGV4cGVjdGVkLml0ZW1zKCk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldGF0dHIoYWRkZWQsIGF0dHIpLCB2YWx1ZSkKKyAgICAgICAgYWRkZWQgPSBwMiArIHAxCisgICAgICAgIGV4cGVjdGVkLnVwZGF0ZShtYXhfbGluZV9sZW5ndGg9MTAwKQorICAgICAgICBmb3IgYXR0ciwgdmFsdWUgaW4gZXhwZWN0ZWQuaXRlbXMoKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0YXR0cihhZGRlZCwgYXR0ciksIHZhbHVlKQorICAgICAgICBhZGRlZCA9IGFkZGVkICsgZW1haWwucG9saWN5LmRlZmF1bHQKKyAgICAgICAgZm9yIGF0dHIsIHZhbHVlIGluIGV4cGVjdGVkLml0ZW1zKCk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldGF0dHIoYWRkZWQsIGF0dHIpLCB2YWx1ZSkKKworICAgIGRlZiB0ZXN0X3JlZ2lzdGVyX2RlZmVjdChzZWxmKToKKyAgICAgICAgY2xhc3MgRHVtbXk6CisgICAgICAgICAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5kZWZlY3RzID0gW10KKyAgICAgICAgb2JqID0gRHVtbXkoKQorICAgICAgICBkZWZlY3QgPSBvYmplY3QoKQorICAgICAgICBwb2xpY3kgPSBlbWFpbC5wb2xpY3kuUG9saWN5KCkKKyAgICAgICAgcG9saWN5LnJlZ2lzdGVyX2RlZmVjdChvYmosIGRlZmVjdCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvYmouZGVmZWN0cywgW2RlZmVjdF0pCisgICAgICAgIGRlZmVjdDIgPSBvYmplY3QoKQorICAgICAgICBwb2xpY3kucmVnaXN0ZXJfZGVmZWN0KG9iaiwgZGVmZWN0MikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvYmouZGVmZWN0cywgW2RlZmVjdCwgZGVmZWN0Ml0pCisKKyAgICBjbGFzcyBNeU9iajoKKyAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICAgICAgc2VsZi5kZWZlY3RzID0gW10KKworICAgIGNsYXNzIE15RGVmZWN0KEV4Y2VwdGlvbik6CisgICAgICAgIHBhc3MKKworICAgIGRlZiB0ZXN0X2hhbmRsZV9kZWZlY3RfcmFpc2VzX29uX3N0cmljdChzZWxmKToKKyAgICAgICAgZm9vID0gc2VsZi5NeU9iaigpCisgICAgICAgIGRlZmVjdCA9IHNlbGYuTXlEZWZlY3QoInRoZSB0ZWxseSBpcyBicm9rZW4iKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoc2VsZi5NeURlZmVjdCwgInRoZSB0ZWxseSBpcyBicm9rZW4iKToKKyAgICAgICAgICAgIGVtYWlsLnBvbGljeS5zdHJpY3QuaGFuZGxlX2RlZmVjdChmb28sIGRlZmVjdCkKKworICAgIGRlZiB0ZXN0X2hhbmRsZV9kZWZlY3RfcmVnaXN0ZXJzX2RlZmVjdChzZWxmKToKKyAgICAgICAgZm9vID0gc2VsZi5NeU9iaigpCisgICAgICAgIGRlZmVjdDEgPSBzZWxmLk15RGVmZWN0KCJvbmUiKQorICAgICAgICBlbWFpbC5wb2xpY3kuZGVmYXVsdC5oYW5kbGVfZGVmZWN0KGZvbywgZGVmZWN0MSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb28uZGVmZWN0cywgW2RlZmVjdDFdKQorICAgICAgICBkZWZlY3QyID0gc2VsZi5NeURlZmVjdCgidHdvIikKKyAgICAgICAgZW1haWwucG9saWN5LmRlZmF1bHQuaGFuZGxlX2RlZmVjdChmb28sIGRlZmVjdDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9vLmRlZmVjdHMsIFtkZWZlY3QxLCBkZWZlY3QyXSkKKworICAgIGNsYXNzIE15UG9saWN5KGVtYWlsLnBvbGljeS5Qb2xpY3kpOgorICAgICAgICBkZWZlY3RzID0gW10KKyAgICAgICAgZGVmIHJlZ2lzdGVyX2RlZmVjdChzZWxmLCBvYmosIGRlZmVjdCk6CisgICAgICAgICAgICBzZWxmLmRlZmVjdHMuYXBwZW5kKGRlZmVjdCkKKworICAgIGRlZiB0ZXN0X292ZXJyaWRkZW5fcmVnaXN0ZXJfZGVmZWN0X3N0aWxsX3JhaXNlcyhzZWxmKToKKyAgICAgICAgZm9vID0gc2VsZi5NeU9iaigpCisgICAgICAgIGRlZmVjdCA9IHNlbGYuTXlEZWZlY3QoInRoZSB0ZWxseSBpcyBicm9rZW4iKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoc2VsZi5NeURlZmVjdCwgInRoZSB0ZWxseSBpcyBicm9rZW4iKToKKyAgICAgICAgICAgIHNlbGYuTXlQb2xpY3kocmFpc2Vfb25fZGVmZWN0PVRydWUpLmhhbmRsZV9kZWZlY3QoZm9vLCBkZWZlY3QpCisKKyAgICBkZWYgdGVzdF9vdmVycmlkZW5fcmVnaXN0ZXJfZGVmZWN0X3dvcmtzKHNlbGYpOgorICAgICAgICBmb28gPSBzZWxmLk15T2JqKCkKKyAgICAgICAgZGVmZWN0MSA9IHNlbGYuTXlEZWZlY3QoIm9uZSIpCisgICAgICAgIG15X3BvbGljeSA9IHNlbGYuTXlQb2xpY3koKQorICAgICAgICBteV9wb2xpY3kuaGFuZGxlX2RlZmVjdChmb28sIGRlZmVjdDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXlfcG9saWN5LmRlZmVjdHMsIFtkZWZlY3QxXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb28uZGVmZWN0cywgW10pCisgICAgICAgIGRlZmVjdDIgPSBzZWxmLk15RGVmZWN0KCJ0d28iKQorICAgICAgICBteV9wb2xpY3kuaGFuZGxlX2RlZmVjdChmb28sIGRlZmVjdDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXlfcG9saWN5LmRlZmVjdHMsIFtkZWZlY3QxLCBkZWZlY3QyXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb28uZGVmZWN0cywgW10pCisKKyAgICAjIFhYWDogTmVlZCBzdWJjbGFzc2luZyB0ZXN0cy4KKyAgICAjIEZvciBhZGRpbmcgc3ViY2xhc3NlZCBvYmplY3RzLCBtYWtlIHN1cmUgdGhlIHVzdWFsIHJ1bGVzIGFwcGx5IChzdWJjbGFzcworICAgICMgd2lucyksIGJ1dCB0aGF0IHRoZSBvcmRlciBzdGlsbCB3b3JrcyAocmlnaHQgb3ZlcnJpZGVzIGxlZnQpLgorCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHVuaXR0ZXN0Lm1haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9lbWFpbC90ZXN0X3V0aWxzLnB5IGIvTGliL3Rlc3QvdGVzdF9lbWFpbC90ZXN0X3V0aWxzLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmUwMDNhNjQKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL3Rlc3RfdXRpbHMucHkKQEAgLTAsMCArMSw0NSBAQAoraW1wb3J0IGRhdGV0aW1lCitmcm9tIGVtYWlsIGltcG9ydCB1dGlscworaW1wb3J0IHVuaXR0ZXN0CisKK2NsYXNzIERhdGVUaW1lVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGF0ZXN0cmluZyA9ICdTdW4sIDIzIFNlcCAyMDAxIDIwOjEwOjU1JworICAgIGRhdGVhcmdzID0gKDIwMDEsIDksIDIzLCAyMCwgMTAsIDU1KQorICAgIG9mZnNldHN0cmluZyA9ICcgLTA3MDAnCisgICAgdXRjb2Zmc2V0ID0gZGF0ZXRpbWUudGltZWRlbHRhKGhvdXJzPS03KQorICAgIHR6ID0gZGF0ZXRpbWUudGltZXpvbmUodXRjb2Zmc2V0KQorICAgIG5haXZlX2R0ID0gZGF0ZXRpbWUuZGF0ZXRpbWUoKmRhdGVhcmdzKQorICAgIGF3YXJlX2R0ID0gZGF0ZXRpbWUuZGF0ZXRpbWUoKmRhdGVhcmdzLCB0emluZm89dHopCisKKyAgICBkZWYgdGVzdF9uYWl2ZV9kYXRldGltZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1dGlscy5mb3JtYXRfZGF0ZXRpbWUoc2VsZi5uYWl2ZV9kdCksCisgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5kYXRlc3RyaW5nICsgJyAtMDAwMCcpCisKKyAgICBkZWYgdGVzdF9hd2FyZV9kYXRldGltZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1dGlscy5mb3JtYXRfZGF0ZXRpbWUoc2VsZi5hd2FyZV9kdCksCisgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5kYXRlc3RyaW5nICsgc2VsZi5vZmZzZXRzdHJpbmcpCisKKyAgICBkZWYgdGVzdF91c2VnbXQoc2VsZik6CisgICAgICAgIHV0Y19kdCA9IGRhdGV0aW1lLmRhdGV0aW1lKCpzZWxmLmRhdGVhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0emluZm89ZGF0ZXRpbWUudGltZXpvbmUudXRjKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHV0aWxzLmZvcm1hdF9kYXRldGltZSh1dGNfZHQsIHVzZWdtdD1UcnVlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmRhdGVzdHJpbmcgKyAnIEdNVCcpCisKKyAgICBkZWYgdGVzdF91c2VnbXRfd2l0aF9uYWl2ZV9kYXRldGltZV9yYWlzZXMoc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICB1dGlscy5mb3JtYXRfZGF0ZXRpbWUoc2VsZi5uYWl2ZV9kdCwgdXNlZ210PVRydWUpCisKKyAgICBkZWYgdGVzdF91c2VnbXRfd2l0aF9ub25fdXRjX2RhdGV0aW1lX3JhaXNlcyhzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIHV0aWxzLmZvcm1hdF9kYXRldGltZShzZWxmLmF3YXJlX2R0LCB1c2VnbXQ9VHJ1ZSkKKworICAgIGRlZiB0ZXN0X3BhcnNlZGF0ZV90b19kYXRldGltZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIHV0aWxzLnBhcnNlZGF0ZV90b19kYXRldGltZShzZWxmLmRhdGVzdHJpbmcgKyBzZWxmLm9mZnNldHN0cmluZyksCisgICAgICAgICAgICBzZWxmLmF3YXJlX2R0KQorCisgICAgZGVmIHRlc3RfcGFyc2VkYXRlX3RvX2RhdGV0aW1lX25haXZlKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgdXRpbHMucGFyc2VkYXRlX3RvX2RhdGV0aW1lKHNlbGYuZGF0ZXN0cmluZyArICcgLTAwMDAnKSwKKyAgICAgICAgICAgIHNlbGYubmFpdmVfZHQpCmRpZmYgLS1naXQgYS9MaWIvZW1haWwvdGVzdC90ZXN0X2VtYWlsX3RvcnR1cmUucHkgYi9MaWIvdGVzdC90ZXN0X2VtYWlsL3RvcnR1cmVfdGVzdC5weQpzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gTGliL2VtYWlsL3Rlc3QvdGVzdF9lbWFpbF90b3J0dXJlLnB5CnJlbmFtZSB0byBMaWIvdGVzdC90ZXN0X2VtYWlsL3RvcnR1cmVfdGVzdC5weQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9lcG9sbC5weSBiL0xpYi90ZXN0L3Rlc3RfZXBvbGwucHkKaW5kZXggMDgzZmQ3Zi4uN2Y5NTQ3ZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9lcG9sbC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Vwb2xsLnB5CkBAIC03NSw2ICs3NSw5IEBACiAgICAgICAgIGVwLmNsb3NlKCkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGVwLmNsb3NlZCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZXAuZmlsZW5vKQorICAgICAgICBpZiBoYXNhdHRyKHNlbGVjdCwgIkVQT0xMX0NMT0VYRUMiKToKKyAgICAgICAgICAgIHNlbGVjdC5lcG9sbChzZWxlY3QuRVBPTExfQ0xPRVhFQykuY2xvc2UoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgc2VsZWN0LmVwb2xsLCBmbGFncz0xMjM1NikKIAogICAgIGRlZiB0ZXN0X2JhZGNyZWF0ZShzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxlY3QuZXBvbGwsIDEsIDIsIDMpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2V4Y2VwdGlvbnMucHkgYi9MaWIvdGVzdC90ZXN0X2V4Y2VwdGlvbnMucHkKaW5kZXggMGE3ZGRkNC4uYTc2ODNhYyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9leGNlcHRpb25zLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZXhjZXB0aW9ucy5weQpAQCAtOCw3ICs4LDcgQEAKIGltcG9ydCBlcnJubwogCiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgKFRFU1RGTiwgdW5saW5rLCBydW5fdW5pdHRlc3QsIGNhcHR1cmVkX291dHB1dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZ2NfY29sbGVjdCwgY3B5dGhvbl9vbmx5KQorICAgICAgICAgICAgICAgICAgICAgICAgICBnY19jb2xsZWN0LCBjcHl0aG9uX29ubHksIG5vX3RyYWNpbmcpCiAKICMgWFhYIFRoaXMgaXMgbm90IHJlYWxseSBlbm91Z2gsIGVhY2ggKm9wZXJhdGlvbiogc2hvdWxkIGJlIHRlc3RlZCEKIApAQCAtNDYsOCArNDYsOCBAQAogICAgICAgICAgICAgZnAuY2xvc2UoKQogICAgICAgICAgICAgdW5saW5rKFRFU1RGTikKIAotICAgICAgICBzZWxmLnJhaXNlX2NhdGNoKElPRXJyb3IsICJJT0Vycm9yIikKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSU9FcnJvciwgb3BlbiwgJ3RoaXMgZmlsZSBkb2VzIG5vdCBleGlzdCcsICdyJykKKyAgICAgICAgc2VsZi5yYWlzZV9jYXRjaChPU0Vycm9yLCAiT1NFcnJvciIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIG9wZW4sICd0aGlzIGZpbGUgZG9lcyBub3QgZXhpc3QnLCAncicpCiAKICAgICAgICAgc2VsZi5yYWlzZV9jYXRjaChJbXBvcnRFcnJvciwgIkltcG9ydEVycm9yIikKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW1wb3J0RXJyb3IsIF9faW1wb3J0X18sICJ1bmRlZmluZWRfbW9kdWxlIikKQEAgLTE5MiwxMSArMTkyLDM1IEBACiAgICAgICAgIGV4Y2VwdCBOYW1lRXJyb3I6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihXaW5kb3dzRXJyb3IoMTAwMSkpLCAiMTAwMSIpCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihXaW5kb3dzRXJyb3IoMTAwMSwgIm1lc3NhZ2UiKSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICJbRXJyb3IgMTAwMV0gbWVzc2FnZSIpCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFdpbmRvd3NFcnJvcigxMDAxLCAibWVzc2FnZSIpLmVycm5vLCAyMikKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoV2luZG93c0Vycm9yKDEwMDEsICJtZXNzYWdlIikud2luZXJyb3IsIDEwMDEpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzKFdpbmRvd3NFcnJvciwgT1NFcnJvcikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKE9TRXJyb3IoMTAwMSkpLCAiMTAwMSIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihPU0Vycm9yKDEwMDEsICJtZXNzYWdlIikpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiW0Vycm5vIDEwMDFdIG1lc3NhZ2UiKQorICAgICAgICAgICAgIyBQT1NJWCBlcnJubyAoOSBha2EgRUJBREYpIGlzIHVudHJhbnNsYXRlZAorICAgICAgICAgICAgdyA9IE9TRXJyb3IoOSwgJ2ZvbycsICdiYXInKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LmVycm5vLCA5KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LndpbmVycm9yLCBOb25lKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIodyksICJbRXJybm8gOV0gZm9vOiAnYmFyJyIpCisgICAgICAgICAgICAjIEVSUk9SX1BBVEhfTk9UX0ZPVU5EICh3aW4gZXJyb3IgMykgYmVjb21lcyBFTk9FTlQgKDIpCisgICAgICAgICAgICB3ID0gT1NFcnJvcigwLCAnZm9vJywgJ2JhcicsIDMpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcuZXJybm8sIDIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcud2luZXJyb3IsIDMpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcuc3RyZXJyb3IsICdmb28nKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LmZpbGVuYW1lLCAnYmFyJykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKHcpLCAiW0Vycm9yIDNdIGZvbzogJ2JhciciKQorICAgICAgICAgICAgIyBVbmtub3duIHdpbiBlcnJvciBiZWNvbWVzIEVJTlZBTCAoMjIpCisgICAgICAgICAgICB3ID0gT1NFcnJvcigwLCAnZm9vJywgTm9uZSwgMTAwMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwody5lcnJubywgMjIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcud2luZXJyb3IsIDEwMDEpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcuc3RyZXJyb3IsICdmb28nKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LmZpbGVuYW1lLCBOb25lKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIodyksICJbRXJyb3IgMTAwMV0gZm9vIikKKyAgICAgICAgICAgICMgTm9uLW51bWVyaWMgImVycm5vIgorICAgICAgICAgICAgdyA9IE9TRXJyb3IoJ2JhcicsICdmb28nKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3LmVycm5vLCAnYmFyJykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwody53aW5lcnJvciwgTm9uZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwody5zdHJlcnJvciwgJ2ZvbycpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHcuZmlsZW5hbWUsIE5vbmUpCiAKICAgICBkZWYgdGVzdEF0dHJpYnV0ZXMoc2VsZik6CiAgICAgICAgICMgdGVzdCB0aGF0IGV4Y2VwdGlvbiBhdHRyaWJ1dGVzIGFyZSBoYXBweQpAQCAtMjc0LDExICsyOTgsMTIgQEAKICAgICAgICAgICAgICAgICAgJ3N0YXJ0JyA6IDAsICdlbmQnIDogMX0pLAogICAgICAgICBdCiAgICAgICAgIHRyeToKKyAgICAgICAgICAgICMgTW9yZSB0ZXN0cyBhcmUgaW4gdGVzdF9XaW5kb3dzRXJyb3IKICAgICAgICAgICAgIGV4Y2VwdGlvbkxpc3QuYXBwZW5kKAogICAgICAgICAgICAgICAgIChXaW5kb3dzRXJyb3IsICgxLCAnc3RyRXJyb3JTdHInLCAnZmlsZW5hbWVTdHInKSwKICAgICAgICAgICAgICAgICAgICAgeydhcmdzJyA6ICgxLCAnc3RyRXJyb3JTdHInKSwKLSAgICAgICAgICAgICAgICAgICAgICdzdHJlcnJvcicgOiAnc3RyRXJyb3JTdHInLCAnd2luZXJyb3InIDogMSwKLSAgICAgICAgICAgICAgICAgICAgICdlcnJubycgOiAyMiwgJ2ZpbGVuYW1lJyA6ICdmaWxlbmFtZVN0cid9KQorICAgICAgICAgICAgICAgICAgICAgJ3N0cmVycm9yJyA6ICdzdHJFcnJvclN0cicsICd3aW5lcnJvcicgOiBOb25lLAorICAgICAgICAgICAgICAgICAgICAgJ2Vycm5vJyA6IDEsICdmaWxlbmFtZScgOiAnZmlsZW5hbWVTdHInfSkKICAgICAgICAgICAgICkKICAgICAgICAgZXhjZXB0IE5hbWVFcnJvcjoKICAgICAgICAgICAgIHBhc3MKQEAgLTM4OSw2ICs0MTQsNyBAQAogICAgICAgICB4ID0gRGVyaXZlZEV4Y2VwdGlvbihmYW5jeV9hcmc9NDIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeC5mYW5jeV9hcmcsIDQyKQogCisgICAgQG5vX3RyYWNpbmcKICAgICBkZWYgdGVzdEluZmluaXRlUmVjdXJzaW9uKHNlbGYpOgogICAgICAgICBkZWYgZigpOgogICAgICAgICAgICAgcmV0dXJuIGYoKQpAQCAtNzIxLDYgKzc0Nyw3IEBACiAgICAgICAgIHUuc3RhcnQgPSAxMDAwCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKHUpLCAiY2FuJ3QgdHJhbnNsYXRlIGNoYXJhY3RlcnMgaW4gcG9zaXRpb24gMTAwMC00OiA5NjUyMzA5NTE0NDM2ODU3MjQ5OTciKQogCisgICAgQG5vX3RyYWNpbmcKICAgICBkZWYgdGVzdF9iYWRpc2luc3RhbmNlKHNlbGYpOgogICAgICAgICAjIEJ1ZyAjMjU0MjogaWYgaXNzdWJjbGFzcyhlLCBNeUV4Y2VwdGlvbikgcmFpc2VzIGFuIGV4Y2VwdGlvbiwKICAgICAgICAgIyBpdCBzaG91bGQgYmUgaWdub3JlZApAQCAtODMxLDYgKzg1OCw3IEBACiAgICAgICAgICAgICBzZWxmLmZhaWwoIk1lbW9yeUVycm9yIG5vdCByYWlzZWQiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyKCksIE5vbmUpCiAKKyAgICBAbm9fdHJhY2luZwogICAgIGRlZiB0ZXN0X3JlY3Vyc2lvbl9lcnJvcl9jbGVhbnVwKHNlbGYpOgogICAgICAgICAjIFNhbWUgdGVzdCBhcyBhYm92ZSwgYnV0IHdpdGggInJlY3Vyc2lvbiBleGNlZWRlZCIgZXJyb3JzCiAgICAgICAgIGNsYXNzIEM6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2V4dGNhbGwucHkgYi9MaWIvdGVzdC90ZXN0X2V4dGNhbGwucHkKaW5kZXggMWY3ZjYzMC4uNmI2YzEyZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9leHRjYWxsLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZXh0Y2FsbC5weQpAQCAtNjYsMTcgKzY2LDE3IEBACiAgICAgPj4+IGcoKQogICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgIC4uLgotICAgIFR5cGVFcnJvcjogZygpIHRha2VzIGF0IGxlYXN0IDEgYXJndW1lbnQgKDAgZ2l2ZW4pCisgICAgVHlwZUVycm9yOiBnKCkgbWlzc2luZyAxIHJlcXVpcmVkIHBvc2l0aW9uYWwgYXJndW1lbnQ6ICd4JwogCiAgICAgPj4+IGcoKigpKQogICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgIC4uLgotICAgIFR5cGVFcnJvcjogZygpIHRha2VzIGF0IGxlYXN0IDEgYXJndW1lbnQgKDAgZ2l2ZW4pCisgICAgVHlwZUVycm9yOiBnKCkgbWlzc2luZyAxIHJlcXVpcmVkIHBvc2l0aW9uYWwgYXJndW1lbnQ6ICd4JwogCiAgICAgPj4+IGcoKigpLCAqKnt9KQogICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgIC4uLgotICAgIFR5cGVFcnJvcjogZygpIHRha2VzIGF0IGxlYXN0IDEgYXJndW1lbnQgKDAgZ2l2ZW4pCisgICAgVHlwZUVycm9yOiBnKCkgbWlzc2luZyAxIHJlcXVpcmVkIHBvc2l0aW9uYWwgYXJndW1lbnQ6ICd4JwogCiAgICAgPj4+IGcoMSkKICAgICAxICgpIHt9CkBAIC0xNTEsNyArMTUxLDcgQEAKICAgICA+Pj4gZygxLCAyLCAzLCAqKnsneCc6IDQsICd5JzogNX0pCiAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgogICAgICAgLi4uCi0gICAgVHlwZUVycm9yOiBnKCkgZ290IG11bHRpcGxlIHZhbHVlcyBmb3Iga2V5d29yZCBhcmd1bWVudCAneCcKKyAgICBUeXBlRXJyb3I6IGcoKSBnb3QgbXVsdGlwbGUgdmFsdWVzIGZvciBhcmd1bWVudCAneCcKIAogICAgID4+PiBmKCoqezE6Mn0pCiAgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgpAQCAtMjYzLDI5ICsyNjMsODAgQEAKICAgICA+Pj4gZigqKngpCiAgICAgMSAyCiAKLUEgb2JzY3VyZSBtZXNzYWdlOgorVG9vIG1hbnkgYXJndW1lbnRzOgogCi0gICAgPj4+IGRlZiBmKGEsIGIpOgotICAgIC4uLiAgICBwYXNzCi0gICAgPj4+IGYoYj0xKQorICAgID4+PiBkZWYgZigpOiBwYXNzCisgICAgPj4+IGYoMSkKICAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgICAgICAuLi4KLSAgICBUeXBlRXJyb3I6IGYoKSB0YWtlcyBleGFjdGx5IDIgYXJndW1lbnRzICgxIGdpdmVuKQotCi1UaGUgbnVtYmVyIG9mIGFyZ3VtZW50cyBwYXNzZWQgaW4gaW5jbHVkZXMga2V5d29yZHM6Ci0KLSAgICA+Pj4gZGVmIGYoYSk6Ci0gICAgLi4uICAgIHBhc3MKLSAgICA+Pj4gZig2LCBhPTQsICooMSwgMiwgMykpCisgICAgVHlwZUVycm9yOiBmKCkgdGFrZXMgMCBwb3NpdGlvbmFsIGFyZ3VtZW50cyBidXQgMSB3YXMgZ2l2ZW4KKyAgICA+Pj4gZGVmIGYoYSk6IHBhc3MKKyAgICA+Pj4gZigxLCAyKQogICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgIC4uLgotICAgIFR5cGVFcnJvcjogZigpIHRha2VzIGV4YWN0bHkgMSBwb3NpdGlvbmFsIGFyZ3VtZW50ICg1IGdpdmVuKQotICAgID4+PiBkZWYgZihhLCAqLCBrdyk6Ci0gICAgLi4uICAgIHBhc3MKLSAgICA+Pj4gZig2LCA0LCBrdz00KQorICAgIFR5cGVFcnJvcjogZigpIHRha2VzIDEgcG9zaXRpb25hbCBhcmd1bWVudCBidXQgMiB3ZXJlIGdpdmVuCisgICAgPj4+IGRlZiBmKGEsIGI9MSk6IHBhc3MKKyAgICA+Pj4gZigxLCAyLCAzKQogICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgIC4uLgotICAgIFR5cGVFcnJvcjogZigpIHRha2VzIGV4YWN0bHkgMSBwb3NpdGlvbmFsIGFyZ3VtZW50ICgzIGdpdmVuKQorICAgIFR5cGVFcnJvcjogZigpIHRha2VzIGZyb20gMSB0byAyIHBvc2l0aW9uYWwgYXJndW1lbnRzIGJ1dCAzIHdlcmUgZ2l2ZW4KKyAgICA+Pj4gZGVmIGYoKiwga3cpOiBwYXNzCisgICAgPj4+IGYoMSwga3c9MykKKyAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAuLi4KKyAgICBUeXBlRXJyb3I6IGYoKSB0YWtlcyAwIHBvc2l0aW9uYWwgYXJndW1lbnRzIGJ1dCAxIHBvc2l0aW9uYWwgYXJndW1lbnQgKGFuZCAxIGtleXdvcmQtb25seSBhcmd1bWVudCkgd2VyZSBnaXZlbgorICAgID4+PiBkZWYgZigqLCBrdywgYik6IHBhc3MKKyAgICA+Pj4gZigxLCAyLCAzLCBiPTMsIGt3PTMpCisgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgLi4uCisgICAgVHlwZUVycm9yOiBmKCkgdGFrZXMgMCBwb3NpdGlvbmFsIGFyZ3VtZW50cyBidXQgMyBwb3NpdGlvbmFsIGFyZ3VtZW50cyAoYW5kIDIga2V5d29yZC1vbmx5IGFyZ3VtZW50cykgd2VyZSBnaXZlbgorICAgID4+PiBkZWYgZihhLCBiPTIsICosIGt3KTogcGFzcworICAgID4+PiBmKDIsIDMsIDQsIGt3PTQpCisgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgLi4uCisgICAgVHlwZUVycm9yOiBmKCkgdGFrZXMgZnJvbSAxIHRvIDIgcG9zaXRpb25hbCBhcmd1bWVudHMgYnV0IDMgcG9zaXRpb25hbCBhcmd1bWVudHMgKGFuZCAxIGtleXdvcmQtb25seSBhcmd1bWVudCkgd2VyZSBnaXZlbgorCitUb28gZmV3IGFuZCBtaXNzaW5nIGFyZ3VtZW50czoKKworICAgID4+PiBkZWYgZihhKTogcGFzcworICAgID4+PiBmKCkKKyAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAuLi4KKyAgICBUeXBlRXJyb3I6IGYoKSBtaXNzaW5nIDEgcmVxdWlyZWQgcG9zaXRpb25hbCBhcmd1bWVudDogJ2EnCisgICAgPj4+IGRlZiBmKGEsIGIpOiBwYXNzCisgICAgPj4+IGYoKQorICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKKyAgICAgIC4uLgorICAgIFR5cGVFcnJvcjogZigpIG1pc3NpbmcgMiByZXF1aXJlZCBwb3NpdGlvbmFsIGFyZ3VtZW50czogJ2EnIGFuZCAnYicKKyAgICA+Pj4gZGVmIGYoYSwgYiwgYyk6IHBhc3MKKyAgICA+Pj4gZigpCisgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgLi4uCisgICAgVHlwZUVycm9yOiBmKCkgbWlzc2luZyAzIHJlcXVpcmVkIHBvc2l0aW9uYWwgYXJndW1lbnRzOiAnYScsICdiJywgYW5kICdjJworICAgID4+PiBkZWYgZihhLCBiLCBjLCBkLCBlKTogcGFzcworICAgID4+PiBmKCkKKyAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAuLi4KKyAgICBUeXBlRXJyb3I6IGYoKSBtaXNzaW5nIDUgcmVxdWlyZWQgcG9zaXRpb25hbCBhcmd1bWVudHM6ICdhJywgJ2InLCAnYycsICdkJywgYW5kICdlJworICAgID4+PiBkZWYgZihhLCBiPTQsIGM9NSwgZD01KTogcGFzcworICAgID4+PiBmKGM9MTIsIGI9OSkKKyAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAuLi4KKyAgICBUeXBlRXJyb3I6IGYoKSBtaXNzaW5nIDEgcmVxdWlyZWQgcG9zaXRpb25hbCBhcmd1bWVudDogJ2EnCisKK1NhbWUgd2l0aCBrZXl3b3JkIG9ubHkgYXJnczoKKworICAgID4+PiBkZWYgZigqLCB3KTogcGFzcworICAgID4+PiBmKCkKKyAgICBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CisgICAgICAuLi4KKyAgICBUeXBlRXJyb3I6IGYoKSBtaXNzaW5nIDEgcmVxdWlyZWQga2V5d29yZC1vbmx5IGFyZ3VtZW50OiAndycKKyAgICA+Pj4gZGVmIGYoKiwgYSwgYiwgYywgZCwgZSk6IHBhc3MKKyAgICA+Pj4gZigpCisgICAgVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgorICAgICAgLi4uCisgICAgVHlwZUVycm9yOiBmKCkgbWlzc2luZyA1IHJlcXVpcmVkIGtleXdvcmQtb25seSBhcmd1bWVudHM6ICdhJywgJ2InLCAnYycsICdkJywgYW5kICdlJworCiAiIiIKIAogaW1wb3J0IHN5cwpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9mYXVsdGhhbmRsZXIucHkgYi9MaWIvdGVzdC90ZXN0X2ZhdWx0aGFuZGxlci5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45NzdjYjM5Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvdGVzdF9mYXVsdGhhbmRsZXIucHkKQEAgLTAsMCArMSw1NTQgQEAKK2Zyb20gY29udGV4dGxpYiBpbXBvcnQgY29udGV4dG1hbmFnZXIKK2ltcG9ydCBkYXRldGltZQoraW1wb3J0IGZhdWx0aGFuZGxlcgoraW1wb3J0IG9zCitpbXBvcnQgcmUKK2ltcG9ydCBzaWduYWwKK2ltcG9ydCBzdWJwcm9jZXNzCitpbXBvcnQgc3lzCitmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQsIHNjcmlwdF9oZWxwZXIKK2ltcG9ydCB0ZW1wZmlsZQoraW1wb3J0IHVuaXR0ZXN0CisKK3RyeToKKyAgICBpbXBvcnQgdGhyZWFkaW5nCisgICAgSEFWRV9USFJFQURTID0gVHJ1ZQorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIEhBVkVfVEhSRUFEUyA9IEZhbHNlCisKK1RJTUVPVVQgPSAwLjUKKwordHJ5OgorICAgIGZyb20gcmVzb3VyY2UgaW1wb3J0IHNldHJsaW1pdCwgUkxJTUlUX0NPUkUsIGVycm9yIGFzIHJlc291cmNlX2Vycm9yCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgcHJlcGFyZV9zdWJwcm9jZXNzID0gTm9uZQorZWxzZToKKyAgICBkZWYgcHJlcGFyZV9zdWJwcm9jZXNzKCk6CisgICAgICAgICMgZG9uJ3QgY3JlYXRlIGNvcmUgZmlsZQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZXRybGltaXQoUkxJTUlUX0NPUkUsICgwLCAwKSkKKyAgICAgICAgZXhjZXB0IChWYWx1ZUVycm9yLCByZXNvdXJjZV9lcnJvcik6CisgICAgICAgICAgICBwYXNzCisKK2RlZiBleHBlY3RlZF90cmFjZWJhY2sobGluZW5vMSwgbGluZW5vMiwgaGVhZGVyLCBtaW5fY291bnQ9MSk6CisgICAgcmVnZXggPSBoZWFkZXIKKyAgICByZWdleCArPSAnICBGaWxlICI8c3RyaW5nPiIsIGxpbmUgJXMgaW4gZnVuY1xuJyAlIGxpbmVubzEKKyAgICByZWdleCArPSAnICBGaWxlICI8c3RyaW5nPiIsIGxpbmUgJXMgaW4gPG1vZHVsZT4nICUgbGluZW5vMgorICAgIGlmIDEgPCBtaW5fY291bnQ6CisgICAgICAgIHJldHVybiAnXicgKyAocmVnZXggKyAnXG4nKSAqIChtaW5fY291bnQgLSAxKSArIHJlZ2V4CisgICAgZWxzZToKKyAgICAgICAgcmV0dXJuICdeJyArIHJlZ2V4ICsgJyQnCisKK0Bjb250ZXh0bWFuYWdlcgorZGVmIHRlbXBvcmFyeV9maWxlbmFtZSgpOgorICAgIGZpbGVuYW1lID0gdGVtcGZpbGUubWt0ZW1wKCkKKyAgICB0cnk6CisgICAgICAgIHlpZWxkIGZpbGVuYW1lCisgICAgZmluYWxseToKKyAgICAgICAgc3VwcG9ydC51bmxpbmsoZmlsZW5hbWUpCisKK2NsYXNzIEZhdWx0SGFuZGxlclRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBkZWYgZ2V0X291dHB1dChzZWxmLCBjb2RlLCBmaWxlbmFtZT1Ob25lKToKKyAgICAgICAgIiIiCisgICAgICAgIFJ1biB0aGUgc3BlY2lmaWVkIGNvZGUgaW4gUHl0aG9uIChpbiBhIG5ldyBjaGlsZCBwcm9jZXNzKSBhbmQgcmVhZCB0aGUKKyAgICAgICAgb3V0cHV0IGZyb20gdGhlIHN0YW5kYXJkIGVycm9yIG9yIGZyb20gYSBmaWxlIChpZiBmaWxlbmFtZSBpcyBzZXQpLgorICAgICAgICBSZXR1cm4gdGhlIG91dHB1dCBsaW5lcyBhcyBhIGxpc3QuCisKKyAgICAgICAgU3RyaXAgdGhlIHJlZmVyZW5jZSBjb3VudCBmcm9tIHRoZSBzdGFuZGFyZCBlcnJvciBmb3IgUHl0aG9uIGRlYnVnCisgICAgICAgIGJ1aWxkLCBhbmQgcmVwbGFjZSAiQ3VycmVudCB0aHJlYWQgMHgwMDAwN2Y4ZDhmYmQ5NzAwIiBieSAiQ3VycmVudAorICAgICAgICB0aHJlYWQgWFhYIi4KKyAgICAgICAgIiIiCisgICAgICAgIG9wdGlvbnMgPSB7fQorICAgICAgICBpZiBwcmVwYXJlX3N1YnByb2Nlc3M6CisgICAgICAgICAgICBvcHRpb25zWydwcmVleGVjX2ZuJ10gPSBwcmVwYXJlX3N1YnByb2Nlc3MKKyAgICAgICAgcHJvY2VzcyA9IHNjcmlwdF9oZWxwZXIuc3Bhd25fcHl0aG9uKCctYycsIGNvZGUsICoqb3B0aW9ucykKKyAgICAgICAgc3Rkb3V0LCBzdGRlcnIgPSBwcm9jZXNzLmNvbW11bmljYXRlKCkKKyAgICAgICAgZXhpdGNvZGUgPSBwcm9jZXNzLndhaXQoKQorICAgICAgICBvdXRwdXQgPSBzdXBwb3J0LnN0cmlwX3B5dGhvbl9zdGRlcnIoc3Rkb3V0KQorICAgICAgICBvdXRwdXQgPSBvdXRwdXQuZGVjb2RlKCdhc2NpaScsICdiYWNrc2xhc2hyZXBsYWNlJykKKyAgICAgICAgaWYgZmlsZW5hbWU6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG91dHB1dCwgJycpCisgICAgICAgICAgICB3aXRoIG9wZW4oZmlsZW5hbWUsICJyYiIpIGFzIGZwOgorICAgICAgICAgICAgICAgIG91dHB1dCA9IGZwLnJlYWQoKQorICAgICAgICAgICAgb3V0cHV0ID0gb3V0cHV0LmRlY29kZSgnYXNjaWknLCAnYmFja3NsYXNocmVwbGFjZScpCisgICAgICAgIG91dHB1dCA9IHJlLnN1YignQ3VycmVudCB0aHJlYWQgMHhbMC05YS1mXSsnLAorICAgICAgICAgICAgICAgICAgICAgICAgJ0N1cnJlbnQgdGhyZWFkIFhYWCcsCisgICAgICAgICAgICAgICAgICAgICAgICBvdXRwdXQpCisgICAgICAgIHJldHVybiBvdXRwdXQuc3BsaXRsaW5lcygpLCBleGl0Y29kZQorCisgICAgZGVmIGNoZWNrX2ZhdGFsX2Vycm9yKHNlbGYsIGNvZGUsIGxpbmVfbnVtYmVyLCBuYW1lX3JlZ2V4LAorICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlbmFtZT1Ob25lLCBhbGxfdGhyZWFkcz1UcnVlLCBvdGhlcl9yZWdleD1Ob25lKToKKyAgICAgICAgIiIiCisgICAgICAgIENoZWNrIHRoYXQgdGhlIGZhdWx0IGhhbmRsZXIgZm9yIGZhdGFsIGVycm9ycyBpcyBlbmFibGVkIGFuZCBjaGVjayB0aGUKKyAgICAgICAgdHJhY2ViYWNrIGZyb20gdGhlIGNoaWxkIHByb2Nlc3Mgb3V0cHV0LgorCisgICAgICAgIFJhaXNlIGFuIGVycm9yIGlmIHRoZSBvdXRwdXQgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LgorICAgICAgICAiIiIKKyAgICAgICAgaWYgYWxsX3RocmVhZHM6CisgICAgICAgICAgICBoZWFkZXIgPSAnQ3VycmVudCB0aHJlYWQgWFhYJworICAgICAgICBlbHNlOgorICAgICAgICAgICAgaGVhZGVyID0gJ1RyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBmaXJzdCknCisgICAgICAgIHJlZ2V4ID0gIiIiCiteRmF0YWwgUHl0aG9uIGVycm9yOiB7bmFtZX0KKwore2hlYWRlcn06CisgIEZpbGUgIjxzdHJpbmc+IiwgbGluZSB7bGluZW5vfSBpbiA8bW9kdWxlPiQKKyIiIi5zdHJpcCgpCisgICAgICAgIHJlZ2V4ID0gcmVnZXguZm9ybWF0KAorICAgICAgICAgICAgbGluZW5vPWxpbmVfbnVtYmVyLAorICAgICAgICAgICAgbmFtZT1uYW1lX3JlZ2V4LAorICAgICAgICAgICAgaGVhZGVyPXJlLmVzY2FwZShoZWFkZXIpKQorICAgICAgICBpZiBvdGhlcl9yZWdleDoKKyAgICAgICAgICAgIHJlZ2V4ICs9ICd8JyArIG90aGVyX3JlZ2V4CisgICAgICAgIG91dHB1dCwgZXhpdGNvZGUgPSBzZWxmLmdldF9vdXRwdXQoY29kZSwgZmlsZW5hbWUpCisgICAgICAgIG91dHB1dCA9ICdcbicuam9pbihvdXRwdXQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgob3V0cHV0LCByZWdleCkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChleGl0Y29kZSwgMCkKKworICAgIGRlZiB0ZXN0X3JlYWRfbnVsbChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19mYXRhbF9lcnJvcigiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK2ZhdWx0aGFuZGxlci5lbmFibGUoKQorZmF1bHRoYW5kbGVyLl9yZWFkX251bGwoKQorIiIiLnN0cmlwKCksCisgICAgICAgICAgICAzLAorICAgICAgICAgICAgIyBJc3N1ZSAjMTI3MDA6IFJlYWQgTlVMTCByYWlzZXMgU0lHSUxMIG9uIE1hYyBPUyBYIExpb24KKyAgICAgICAgICAgICcoPzpTZWdtZW50YXRpb24gZmF1bHR8QnVzIGVycm9yfElsbGVnYWwgaW5zdHJ1Y3Rpb24pJykKKworICAgIGRlZiB0ZXN0X3NpZ3NlZ3Yoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZmF0YWxfZXJyb3IoIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitmYXVsdGhhbmRsZXIuZW5hYmxlKCkKK2ZhdWx0aGFuZGxlci5fc2lnc2VndigpCisiIiIuc3RyaXAoKSwKKyAgICAgICAgICAgIDMsCisgICAgICAgICAgICAnU2VnbWVudGF0aW9uIGZhdWx0JykKKworICAgIGRlZiB0ZXN0X3NpZ2FicnQoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZmF0YWxfZXJyb3IoIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitmYXVsdGhhbmRsZXIuZW5hYmxlKCkKK2ZhdWx0aGFuZGxlci5fc2lnYWJydCgpCisiIiIuc3RyaXAoKSwKKyAgICAgICAgICAgIDMsCisgICAgICAgICAgICAnQWJvcnRlZCcpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSA9PSAnd2luMzInLAorICAgICAgICAgICAgICAgICAgICAgIlNJR0ZQRSBjYW5ub3QgYmUgY2F1Z2h0IG9uIFdpbmRvd3MiKQorICAgIGRlZiB0ZXN0X3NpZ2ZwZShzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19mYXRhbF9lcnJvcigiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK2ZhdWx0aGFuZGxlci5lbmFibGUoKQorZmF1bHRoYW5kbGVyLl9zaWdmcGUoKQorIiIiLnN0cmlwKCksCisgICAgICAgICAgICAzLAorICAgICAgICAgICAgJ0Zsb2F0aW5nIHBvaW50IGV4Y2VwdGlvbicpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKG5vdCBoYXNhdHRyKGZhdWx0aGFuZGxlciwgJ19zaWdidXMnKSwKKyAgICAgICAgICAgICAgICAgICAgICJuZWVkIGZhdWx0aGFuZGxlci5fc2lnYnVzKCkiKQorICAgIGRlZiB0ZXN0X3NpZ2J1cyhzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19mYXRhbF9lcnJvcigiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK2ZhdWx0aGFuZGxlci5lbmFibGUoKQorZmF1bHRoYW5kbGVyLl9zaWdidXMoKQorIiIiLnN0cmlwKCksCisgICAgICAgICAgICAzLAorICAgICAgICAgICAgJ0J1cyBlcnJvcicpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKG5vdCBoYXNhdHRyKGZhdWx0aGFuZGxlciwgJ19zaWdpbGwnKSwKKyAgICAgICAgICAgICAgICAgICAgICJuZWVkIGZhdWx0aGFuZGxlci5fc2lnaWxsKCkiKQorICAgIGRlZiB0ZXN0X3NpZ2lsbChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19mYXRhbF9lcnJvcigiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK2ZhdWx0aGFuZGxlci5lbmFibGUoKQorZmF1bHRoYW5kbGVyLl9zaWdpbGwoKQorIiIiLnN0cmlwKCksCisgICAgICAgICAgICAzLAorICAgICAgICAgICAgJ0lsbGVnYWwgaW5zdHJ1Y3Rpb24nKQorCisgICAgZGVmIHRlc3RfZmF0YWxfZXJyb3Ioc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZmF0YWxfZXJyb3IoIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitmYXVsdGhhbmRsZXIuX2ZhdGFsX2Vycm9yKGIneHl6JykKKyIiIi5zdHJpcCgpLAorICAgICAgICAgICAgMiwKKyAgICAgICAgICAgICd4eXonKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnb3BlbmJzZCcpIGFuZCBIQVZFX1RIUkVBRFMsCisgICAgICAgICAgICAgICAgICAgICAiSXNzdWUgIzEyODY4OiBzaWdhbHRzdGFjaygpIGRvZXNuJ3Qgd29yayBvbiAiCisgICAgICAgICAgICAgICAgICAgICAiT3BlbkJTRCBpZiBQeXRob24gaXMgY29tcGlsZWQgd2l0aCBwdGhyZWFkIikKKyAgICBAdW5pdHRlc3Quc2tpcElmKG5vdCBoYXNhdHRyKGZhdWx0aGFuZGxlciwgJ19zdGFja19vdmVyZmxvdycpLAorICAgICAgICAgICAgICAgICAgICAgJ25lZWQgZmF1bHRoYW5kbGVyLl9zdGFja19vdmVyZmxvdygpJykKKyAgICBkZWYgdGVzdF9zdGFja19vdmVyZmxvdyhzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19mYXRhbF9lcnJvcigiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK2ZhdWx0aGFuZGxlci5lbmFibGUoKQorZmF1bHRoYW5kbGVyLl9zdGFja19vdmVyZmxvdygpCisiIiIuc3RyaXAoKSwKKyAgICAgICAgICAgIDMsCisgICAgICAgICAgICAnKD86U2VnbWVudGF0aW9uIGZhdWx0fEJ1cyBlcnJvciknLAorICAgICAgICAgICAgb3RoZXJfcmVnZXg9J3VuYWJsZSB0byByYWlzZSBhIHN0YWNrIG92ZXJmbG93JykKKworICAgIGRlZiB0ZXN0X2dpbF9yZWxlYXNlZChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19mYXRhbF9lcnJvcigiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK2ZhdWx0aGFuZGxlci5lbmFibGUoKQorZmF1bHRoYW5kbGVyLl9yZWFkX251bGwoVHJ1ZSkKKyIiIi5zdHJpcCgpLAorICAgICAgICAgICAgMywKKyAgICAgICAgICAgICcoPzpTZWdtZW50YXRpb24gZmF1bHR8QnVzIGVycm9yfElsbGVnYWwgaW5zdHJ1Y3Rpb24pJykKKworICAgIGRlZiB0ZXN0X2VuYWJsZV9maWxlKHNlbGYpOgorICAgICAgICB3aXRoIHRlbXBvcmFyeV9maWxlbmFtZSgpIGFzIGZpbGVuYW1lOgorICAgICAgICAgICAgc2VsZi5jaGVja19mYXRhbF9lcnJvcigiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK291dHB1dCA9IG9wZW4oe2ZpbGVuYW1lfSwgJ3diJykKK2ZhdWx0aGFuZGxlci5lbmFibGUob3V0cHV0KQorZmF1bHRoYW5kbGVyLl9yZWFkX251bGwoKQorIiIiLnN0cmlwKCkuZm9ybWF0KGZpbGVuYW1lPXJlcHIoZmlsZW5hbWUpKSwKKyAgICAgICAgICAgICAgICA0LAorICAgICAgICAgICAgICAgICcoPzpTZWdtZW50YXRpb24gZmF1bHR8QnVzIGVycm9yfElsbGVnYWwgaW5zdHJ1Y3Rpb24pJywKKyAgICAgICAgICAgICAgICBmaWxlbmFtZT1maWxlbmFtZSkKKworICAgIGRlZiB0ZXN0X2VuYWJsZV9zaW5nbGVfdGhyZWFkKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2ZhdGFsX2Vycm9yKCIiIgoraW1wb3J0IGZhdWx0aGFuZGxlcgorZmF1bHRoYW5kbGVyLmVuYWJsZShhbGxfdGhyZWFkcz1GYWxzZSkKK2ZhdWx0aGFuZGxlci5fcmVhZF9udWxsKCkKKyIiIi5zdHJpcCgpLAorICAgICAgICAgICAgMywKKyAgICAgICAgICAgICcoPzpTZWdtZW50YXRpb24gZmF1bHR8QnVzIGVycm9yfElsbGVnYWwgaW5zdHJ1Y3Rpb24pJywKKyAgICAgICAgICAgIGFsbF90aHJlYWRzPUZhbHNlKQorCisgICAgZGVmIHRlc3RfZGlzYWJsZShzZWxmKToKKyAgICAgICAgY29kZSA9ICIiIgoraW1wb3J0IGZhdWx0aGFuZGxlcgorZmF1bHRoYW5kbGVyLmVuYWJsZSgpCitmYXVsdGhhbmRsZXIuZGlzYWJsZSgpCitmYXVsdGhhbmRsZXIuX3JlYWRfbnVsbCgpCisiIiIuc3RyaXAoKQorICAgICAgICBub3RfZXhwZWN0ZWQgPSAnRmF0YWwgUHl0aG9uIGVycm9yJworICAgICAgICBzdGRlcnIsIGV4aXRjb2RlID0gc2VsZi5nZXRfb3V0cHV0KGNvZGUpCisgICAgICAgIHN0ZGVyID0gJ1xuJy5qb2luKHN0ZGVycikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdF9leHBlY3RlZCBub3QgaW4gc3RkZXJyLAorICAgICAgICAgICAgICAgICAgICAgIiVyIGlzIHByZXNlbnQgaW4gJXIiICUgKG5vdF9leHBlY3RlZCwgc3RkZXJyKSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChleGl0Y29kZSwgMCkKKworICAgIGRlZiB0ZXN0X2lzX2VuYWJsZWQoc2VsZik6CisgICAgICAgIG9yaWdfc3RkZXJyID0gc3lzLnN0ZGVycgorICAgICAgICB0cnk6CisgICAgICAgICAgICAjIHJlZ3J0ZXN0IG1heSByZXBsYWNlIHN5cy5zdGRlcnIgYnkgaW8uU3RyaW5nSU8gb2JqZWN0LCBidXQKKyAgICAgICAgICAgICMgZmF1bHRoYW5kbGVyLmVuYWJsZSgpIHJlcXVpcmVzIHRoYXQgc3lzLnN0ZGVyciBoYXMgYSBmaWxlbm8oKQorICAgICAgICAgICAgIyBtZXRob2QKKyAgICAgICAgICAgIHN5cy5zdGRlcnIgPSBzeXMuX19zdGRlcnJfXworCisgICAgICAgICAgICB3YXNfZW5hYmxlZCA9IGZhdWx0aGFuZGxlci5pc19lbmFibGVkKCkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBmYXVsdGhhbmRsZXIuZW5hYmxlKCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoZmF1bHRoYW5kbGVyLmlzX2VuYWJsZWQoKSkKKyAgICAgICAgICAgICAgICBmYXVsdGhhbmRsZXIuZGlzYWJsZSgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShmYXVsdGhhbmRsZXIuaXNfZW5hYmxlZCgpKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICBpZiB3YXNfZW5hYmxlZDoKKyAgICAgICAgICAgICAgICAgICAgZmF1bHRoYW5kbGVyLmVuYWJsZSgpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgZmF1bHRoYW5kbGVyLmRpc2FibGUoKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc3lzLnN0ZGVyciA9IG9yaWdfc3RkZXJyCisKKyAgICBkZWYgY2hlY2tfZHVtcF90cmFjZWJhY2soc2VsZiwgZmlsZW5hbWUpOgorICAgICAgICAiIiIKKyAgICAgICAgRXhwbGljaXRseSBjYWxsIGR1bXBfdHJhY2ViYWNrKCkgZnVuY3Rpb24gYW5kIGNoZWNrIGl0cyBvdXRwdXQuCisgICAgICAgIFJhaXNlIGFuIGVycm9yIGlmIHRoZSBvdXRwdXQgZG9lc24ndCBtYXRjaCB0aGUgZXhwZWN0ZWQgZm9ybWF0LgorICAgICAgICAiIiIKKyAgICAgICAgY29kZSA9ICIiIgoraW1wb3J0IGZhdWx0aGFuZGxlcgorCitkZWYgZnVuY0IoKToKKyAgICBpZiB7aGFzX2ZpbGVuYW1lfToKKyAgICAgICAgd2l0aCBvcGVuKHtmaWxlbmFtZX0sICJ3YiIpIGFzIGZwOgorICAgICAgICAgICAgZmF1bHRoYW5kbGVyLmR1bXBfdHJhY2ViYWNrKGZwLCBhbGxfdGhyZWFkcz1GYWxzZSkKKyAgICBlbHNlOgorICAgICAgICBmYXVsdGhhbmRsZXIuZHVtcF90cmFjZWJhY2soYWxsX3RocmVhZHM9RmFsc2UpCisKK2RlZiBmdW5jQSgpOgorICAgIGZ1bmNCKCkKKworZnVuY0EoKQorIiIiLnN0cmlwKCkKKyAgICAgICAgY29kZSA9IGNvZGUuZm9ybWF0KAorICAgICAgICAgICAgZmlsZW5hbWU9cmVwcihmaWxlbmFtZSksCisgICAgICAgICAgICBoYXNfZmlsZW5hbWU9Ym9vbChmaWxlbmFtZSksCisgICAgICAgICkKKyAgICAgICAgaWYgZmlsZW5hbWU6CisgICAgICAgICAgICBsaW5lbm8gPSA2CisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBsaW5lbm8gPSA4CisgICAgICAgIGV4cGVjdGVkID0gWworICAgICAgICAgICAgJ1RyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBmaXJzdCk6JywKKyAgICAgICAgICAgICcgIEZpbGUgIjxzdHJpbmc+IiwgbGluZSAlcyBpbiBmdW5jQicgJSBsaW5lbm8sCisgICAgICAgICAgICAnICBGaWxlICI8c3RyaW5nPiIsIGxpbmUgMTEgaW4gZnVuY0EnLAorICAgICAgICAgICAgJyAgRmlsZSAiPHN0cmluZz4iLCBsaW5lIDEzIGluIDxtb2R1bGU+JworICAgICAgICBdCisgICAgICAgIHRyYWNlLCBleGl0Y29kZSA9IHNlbGYuZ2V0X291dHB1dChjb2RlLCBmaWxlbmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSwgZXhwZWN0ZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhpdGNvZGUsIDApCisKKyAgICBkZWYgdGVzdF9kdW1wX3RyYWNlYmFjayhzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19kdW1wX3RyYWNlYmFjayhOb25lKQorCisgICAgZGVmIHRlc3RfZHVtcF90cmFjZWJhY2tfZmlsZShzZWxmKToKKyAgICAgICAgd2l0aCB0ZW1wb3JhcnlfZmlsZW5hbWUoKSBhcyBmaWxlbmFtZToKKyAgICAgICAgICAgIHNlbGYuY2hlY2tfZHVtcF90cmFjZWJhY2soZmlsZW5hbWUpCisKKyAgICBAdW5pdHRlc3Quc2tpcElmKG5vdCBIQVZFX1RIUkVBRFMsICduZWVkIHRocmVhZHMnKQorICAgIGRlZiBjaGVja19kdW1wX3RyYWNlYmFja190aHJlYWRzKHNlbGYsIGZpbGVuYW1lKToKKyAgICAgICAgIiIiCisgICAgICAgIENhbGwgZXhwbGljaXRseSBkdW1wX3RyYWNlYmFjayhhbGxfdGhyZWFkcz1UcnVlKSBhbmQgY2hlY2sgdGhlIG91dHB1dC4KKyAgICAgICAgUmFpc2UgYW4gZXJyb3IgaWYgdGhlIG91dHB1dCBkb2Vzbid0IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuCisgICAgICAgICIiIgorICAgICAgICBjb2RlID0gIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitmcm9tIHRocmVhZGluZyBpbXBvcnQgVGhyZWFkLCBFdmVudAoraW1wb3J0IHRpbWUKKworZGVmIGR1bXAoKToKKyAgICBpZiB7ZmlsZW5hbWV9OgorICAgICAgICB3aXRoIG9wZW4oe2ZpbGVuYW1lfSwgIndiIikgYXMgZnA6CisgICAgICAgICAgICBmYXVsdGhhbmRsZXIuZHVtcF90cmFjZWJhY2soZnAsIGFsbF90aHJlYWRzPVRydWUpCisgICAgZWxzZToKKyAgICAgICAgZmF1bHRoYW5kbGVyLmR1bXBfdHJhY2ViYWNrKGFsbF90aHJlYWRzPVRydWUpCisKK2NsYXNzIFdhaXRlcihUaHJlYWQpOgorICAgICMgYXZvaWQgYmxvY2tpbmcgaWYgdGhlIG1haW4gdGhyZWFkIHJhaXNlcyBhbiBleGNlcHRpb24uCisgICAgZGFlbW9uID0gVHJ1ZQorCisgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICBUaHJlYWQuX19pbml0X18oc2VsZikKKyAgICAgICAgc2VsZi5ydW5uaW5nID0gRXZlbnQoKQorICAgICAgICBzZWxmLnN0b3AgPSBFdmVudCgpCisKKyAgICBkZWYgcnVuKHNlbGYpOgorICAgICAgICBzZWxmLnJ1bm5pbmcuc2V0KCkKKyAgICAgICAgc2VsZi5zdG9wLndhaXQoKQorCit3YWl0ZXIgPSBXYWl0ZXIoKQord2FpdGVyLnN0YXJ0KCkKK3dhaXRlci5ydW5uaW5nLndhaXQoKQorZHVtcCgpCit3YWl0ZXIuc3RvcC5zZXQoKQord2FpdGVyLmpvaW4oKQorIiIiLnN0cmlwKCkKKyAgICAgICAgY29kZSA9IGNvZGUuZm9ybWF0KGZpbGVuYW1lPXJlcHIoZmlsZW5hbWUpKQorICAgICAgICBvdXRwdXQsIGV4aXRjb2RlID0gc2VsZi5nZXRfb3V0cHV0KGNvZGUsIGZpbGVuYW1lKQorICAgICAgICBvdXRwdXQgPSAnXG4nLmpvaW4ob3V0cHV0KQorICAgICAgICBpZiBmaWxlbmFtZToKKyAgICAgICAgICAgIGxpbmVubyA9IDgKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxpbmVubyA9IDEwCisgICAgICAgIHJlZ2V4ID0gIiIiCiteVGhyZWFkIDB4WzAtOWEtZl0rOgorKD86ICBGaWxlICIuKnRocmVhZGluZy5weSIsIGxpbmUgWzAtOV0rIGluIFtfYS16XSsKKyl7ezEsM319ICBGaWxlICI8c3RyaW5nPiIsIGxpbmUgMjMgaW4gcnVuCisgIEZpbGUgIi4qdGhyZWFkaW5nLnB5IiwgbGluZSBbMC05XSsgaW4gX2Jvb3RzdHJhcF9pbm5lcgorICBGaWxlICIuKnRocmVhZGluZy5weSIsIGxpbmUgWzAtOV0rIGluIF9ib290c3RyYXAKKworQ3VycmVudCB0aHJlYWQgWFhYOgorICBGaWxlICI8c3RyaW5nPiIsIGxpbmUge2xpbmVub30gaW4gZHVtcAorICBGaWxlICI8c3RyaW5nPiIsIGxpbmUgMjggaW4gPG1vZHVsZT4kCisiIiIuc3RyaXAoKQorICAgICAgICByZWdleCA9IHJlZ2V4LmZvcm1hdChsaW5lbm89bGluZW5vKQorICAgICAgICBzZWxmLmFzc2VydFJlZ2V4KG91dHB1dCwgcmVnZXgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhpdGNvZGUsIDApCisKKyAgICBkZWYgdGVzdF9kdW1wX3RyYWNlYmFja190aHJlYWRzKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2R1bXBfdHJhY2ViYWNrX3RocmVhZHMoTm9uZSkKKworICAgIGRlZiB0ZXN0X2R1bXBfdHJhY2ViYWNrX3RocmVhZHNfZmlsZShzZWxmKToKKyAgICAgICAgd2l0aCB0ZW1wb3JhcnlfZmlsZW5hbWUoKSBhcyBmaWxlbmFtZToKKyAgICAgICAgICAgIHNlbGYuY2hlY2tfZHVtcF90cmFjZWJhY2tfdGhyZWFkcyhmaWxlbmFtZSkKKworICAgIGRlZiBfY2hlY2tfZHVtcF90cmFjZWJhY2tzX2xhdGVyKHNlbGYsIHJlcGVhdCwgY2FuY2VsLCBmaWxlbmFtZSwgbG9vcHMpOgorICAgICAgICAiIiIKKyAgICAgICAgQ2hlY2sgaG93IG1hbnkgdGltZXMgdGhlIHRyYWNlYmFjayBpcyB3cml0dGVuIGluIHRpbWVvdXQgeCAyLjUgc2Vjb25kcywKKyAgICAgICAgb3IgdGltZW91dCB4IDMuNSBzZWNvbmRzIGlmIGNhbmNlbCBpcyBUcnVlOiAxLCAyIG9yIDMgdGltZXMgZGVwZW5kaW5nCisgICAgICAgIG9uIHJlcGVhdCBhbmQgY2FuY2VsIG9wdGlvbnMuCisKKyAgICAgICAgUmFpc2UgYW4gZXJyb3IgaWYgdGhlIG91dHB1dCBkb2Vzbid0IG1hdGNoIHRoZSBleHBlY3QgZm9ybWF0LgorICAgICAgICAiIiIKKyAgICAgICAgdGltZW91dF9zdHIgPSBzdHIoZGF0ZXRpbWUudGltZWRlbHRhKHNlY29uZHM9VElNRU9VVCkpCisgICAgICAgIGNvZGUgPSAiIiIKK2ltcG9ydCBmYXVsdGhhbmRsZXIKK2ltcG9ydCB0aW1lCisKK2RlZiBmdW5jKHRpbWVvdXQsIHJlcGVhdCwgY2FuY2VsLCBmaWxlLCBsb29wcyk6CisgICAgZm9yIGxvb3AgaW4gcmFuZ2UobG9vcHMpOgorICAgICAgICBmYXVsdGhhbmRsZXIuZHVtcF90cmFjZWJhY2tzX2xhdGVyKHRpbWVvdXQsIHJlcGVhdD1yZXBlYXQsIGZpbGU9ZmlsZSkKKyAgICAgICAgaWYgY2FuY2VsOgorICAgICAgICAgICAgZmF1bHRoYW5kbGVyLmNhbmNlbF9kdW1wX3RyYWNlYmFja3NfbGF0ZXIoKQorICAgICAgICB0aW1lLnNsZWVwKHRpbWVvdXQgKiA1KQorICAgICAgICBmYXVsdGhhbmRsZXIuY2FuY2VsX2R1bXBfdHJhY2ViYWNrc19sYXRlcigpCisKK3RpbWVvdXQgPSB7dGltZW91dH0KK3JlcGVhdCA9IHtyZXBlYXR9CitjYW5jZWwgPSB7Y2FuY2VsfQorbG9vcHMgPSB7bG9vcHN9CitpZiB7aGFzX2ZpbGVuYW1lfToKKyAgICBmaWxlID0gb3Blbih7ZmlsZW5hbWV9LCAid2IiKQorZWxzZToKKyAgICBmaWxlID0gTm9uZQorZnVuYyh0aW1lb3V0LCByZXBlYXQsIGNhbmNlbCwgZmlsZSwgbG9vcHMpCitpZiBmaWxlIGlzIG5vdCBOb25lOgorICAgIGZpbGUuY2xvc2UoKQorIiIiLnN0cmlwKCkKKyAgICAgICAgY29kZSA9IGNvZGUuZm9ybWF0KAorICAgICAgICAgICAgdGltZW91dD1USU1FT1VULAorICAgICAgICAgICAgcmVwZWF0PXJlcGVhdCwKKyAgICAgICAgICAgIGNhbmNlbD1jYW5jZWwsCisgICAgICAgICAgICBsb29wcz1sb29wcywKKyAgICAgICAgICAgIGhhc19maWxlbmFtZT1ib29sKGZpbGVuYW1lKSwKKyAgICAgICAgICAgIGZpbGVuYW1lPXJlcHIoZmlsZW5hbWUpLAorICAgICAgICApCisgICAgICAgIHRyYWNlLCBleGl0Y29kZSA9IHNlbGYuZ2V0X291dHB1dChjb2RlLCBmaWxlbmFtZSkKKyAgICAgICAgdHJhY2UgPSAnXG4nLmpvaW4odHJhY2UpCisKKyAgICAgICAgaWYgbm90IGNhbmNlbDoKKyAgICAgICAgICAgIGNvdW50ID0gbG9vcHMKKyAgICAgICAgICAgIGlmIHJlcGVhdDoKKyAgICAgICAgICAgICAgICBjb3VudCAqPSAyCisgICAgICAgICAgICBoZWFkZXIgPSByJ1RpbWVvdXQgXCglc1wpIVxuVGhyZWFkIDB4WzAtOWEtZl0rOlxuJyAlIHRpbWVvdXRfc3RyCisgICAgICAgICAgICByZWdleCA9IGV4cGVjdGVkX3RyYWNlYmFjayg5LCAyMCwgaGVhZGVyLCBtaW5fY291bnQ9Y291bnQpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJlZ2V4KHRyYWNlLCByZWdleCkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsICcnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4aXRjb2RlLCAwKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihub3QgaGFzYXR0cihmYXVsdGhhbmRsZXIsICdkdW1wX3RyYWNlYmFja3NfbGF0ZXInKSwKKyAgICAgICAgICAgICAgICAgICAgICduZWVkIGZhdWx0aGFuZGxlci5kdW1wX3RyYWNlYmFja3NfbGF0ZXIoKScpCisgICAgZGVmIGNoZWNrX2R1bXBfdHJhY2ViYWNrc19sYXRlcihzZWxmLCByZXBlYXQ9RmFsc2UsIGNhbmNlbD1GYWxzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGU9RmFsc2UsIHR3aWNlPUZhbHNlKToKKyAgICAgICAgaWYgdHdpY2U6CisgICAgICAgICAgICBsb29wcyA9IDIKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvb3BzID0gMQorICAgICAgICBpZiBmaWxlOgorICAgICAgICAgICAgd2l0aCB0ZW1wb3JhcnlfZmlsZW5hbWUoKSBhcyBmaWxlbmFtZToKKyAgICAgICAgICAgICAgICBzZWxmLl9jaGVja19kdW1wX3RyYWNlYmFja3NfbGF0ZXIocmVwZWF0LCBjYW5jZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVuYW1lLCBsb29wcykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuX2NoZWNrX2R1bXBfdHJhY2ViYWNrc19sYXRlcihyZXBlYXQsIGNhbmNlbCwgTm9uZSwgbG9vcHMpCisKKyAgICBkZWYgdGVzdF9kdW1wX3RyYWNlYmFja3NfbGF0ZXIoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZHVtcF90cmFjZWJhY2tzX2xhdGVyKCkKKworICAgIGRlZiB0ZXN0X2R1bXBfdHJhY2ViYWNrc19sYXRlcl9yZXBlYXQoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfZHVtcF90cmFjZWJhY2tzX2xhdGVyKHJlcGVhdD1UcnVlKQorCisgICAgZGVmIHRlc3RfZHVtcF90cmFjZWJhY2tzX2xhdGVyX2NhbmNlbChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19kdW1wX3RyYWNlYmFja3NfbGF0ZXIoY2FuY2VsPVRydWUpCisKKyAgICBkZWYgdGVzdF9kdW1wX3RyYWNlYmFja3NfbGF0ZXJfZmlsZShzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19kdW1wX3RyYWNlYmFja3NfbGF0ZXIoZmlsZT1UcnVlKQorCisgICAgZGVmIHRlc3RfZHVtcF90cmFjZWJhY2tzX2xhdGVyX3R3aWNlKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX2R1bXBfdHJhY2ViYWNrc19sYXRlcih0d2ljZT1UcnVlKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihub3QgaGFzYXR0cihmYXVsdGhhbmRsZXIsICJyZWdpc3RlciIpLAorICAgICAgICAgICAgICAgICAgICAgIm5lZWQgZmF1bHRoYW5kbGVyLnJlZ2lzdGVyIikKKyAgICBkZWYgY2hlY2tfcmVnaXN0ZXIoc2VsZiwgZmlsZW5hbWU9RmFsc2UsIGFsbF90aHJlYWRzPUZhbHNlLAorICAgICAgICAgICAgICAgICAgICAgICB1bnJlZ2lzdGVyPUZhbHNlLCBjaGFpbj1GYWxzZSk6CisgICAgICAgICIiIgorICAgICAgICBSZWdpc3RlciBhIGhhbmRsZXIgZGlzcGxheWluZyB0aGUgdHJhY2ViYWNrIG9uIGEgdXNlciBzaWduYWwuIFJhaXNlIHRoZQorICAgICAgICBzaWduYWwgYW5kIGNoZWNrIHRoZSB3cml0dGVuIHRyYWNlYmFjay4KKworICAgICAgICBJZiBjaGFpbiBpcyBUcnVlLCBjaGVjayB0aGF0IHRoZSBwcmV2aW91cyBzaWduYWwgaGFuZGxlciBpcyBjYWxsZWQuCisKKyAgICAgICAgUmFpc2UgYW4gZXJyb3IgaWYgdGhlIG91dHB1dCBkb2Vzbid0IG1hdGNoIHRoZSBleHBlY3RlZCBmb3JtYXQuCisgICAgICAgICIiIgorICAgICAgICBzaWdudW0gPSBzaWduYWwuU0lHVVNSMQorICAgICAgICBjb2RlID0gIiIiCitpbXBvcnQgZmF1bHRoYW5kbGVyCitpbXBvcnQgb3MKK2ltcG9ydCBzaWduYWwKK2ltcG9ydCBzeXMKKworZGVmIGZ1bmMoc2lnbnVtKToKKyAgICBvcy5raWxsKG9zLmdldHBpZCgpLCBzaWdudW0pCisKK2RlZiBoYW5kbGVyKHNpZ251bSwgZnJhbWUpOgorICAgIGhhbmRsZXIuY2FsbGVkID0gVHJ1ZQoraGFuZGxlci5jYWxsZWQgPSBGYWxzZQorCitleGl0Y29kZSA9IDAKK3NpZ251bSA9IHtzaWdudW19Cit1bnJlZ2lzdGVyID0ge3VucmVnaXN0ZXJ9CitjaGFpbiA9IHtjaGFpbn0KKworaWYge2hhc19maWxlbmFtZX06CisgICAgZmlsZSA9IG9wZW4oe2ZpbGVuYW1lfSwgIndiIikKK2Vsc2U6CisgICAgZmlsZSA9IE5vbmUKK2lmIGNoYWluOgorICAgIHNpZ25hbC5zaWduYWwoc2lnbnVtLCBoYW5kbGVyKQorZmF1bHRoYW5kbGVyLnJlZ2lzdGVyKHNpZ251bSwgZmlsZT1maWxlLAorICAgICAgICAgICAgICAgICAgICAgIGFsbF90aHJlYWRzPXthbGxfdGhyZWFkc30sIGNoYWluPXtjaGFpbn0pCitpZiB1bnJlZ2lzdGVyOgorICAgIGZhdWx0aGFuZGxlci51bnJlZ2lzdGVyKHNpZ251bSkKK2Z1bmMoc2lnbnVtKQoraWYgY2hhaW4gYW5kIG5vdCBoYW5kbGVyLmNhbGxlZDoKKyAgICBpZiBmaWxlIGlzIG5vdCBOb25lOgorICAgICAgICBvdXRwdXQgPSBmaWxlCisgICAgZWxzZToKKyAgICAgICAgb3V0cHV0ID0gc3lzLnN0ZGVycgorICAgIHByaW50KCJFcnJvcjogc2lnbmFsIGhhbmRsZXIgbm90IGNhbGxlZCEiLCBmaWxlPW91dHB1dCkKKyAgICBleGl0Y29kZSA9IDEKK2lmIGZpbGUgaXMgbm90IE5vbmU6CisgICAgZmlsZS5jbG9zZSgpCitzeXMuZXhpdChleGl0Y29kZSkKKyIiIi5zdHJpcCgpCisgICAgICAgIGNvZGUgPSBjb2RlLmZvcm1hdCgKKyAgICAgICAgICAgIGZpbGVuYW1lPXJlcHIoZmlsZW5hbWUpLAorICAgICAgICAgICAgaGFzX2ZpbGVuYW1lPWJvb2woZmlsZW5hbWUpLAorICAgICAgICAgICAgYWxsX3RocmVhZHM9YWxsX3RocmVhZHMsCisgICAgICAgICAgICBzaWdudW09c2lnbnVtLAorICAgICAgICAgICAgdW5yZWdpc3Rlcj11bnJlZ2lzdGVyLAorICAgICAgICAgICAgY2hhaW49Y2hhaW4sCisgICAgICAgICkKKyAgICAgICAgdHJhY2UsIGV4aXRjb2RlID0gc2VsZi5nZXRfb3V0cHV0KGNvZGUsIGZpbGVuYW1lKQorICAgICAgICB0cmFjZSA9ICdcbicuam9pbih0cmFjZSkKKyAgICAgICAgaWYgbm90IHVucmVnaXN0ZXI6CisgICAgICAgICAgICBpZiBhbGxfdGhyZWFkczoKKyAgICAgICAgICAgICAgICByZWdleCA9ICdDdXJyZW50IHRocmVhZCBYWFg6XG4nCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJlZ2V4ID0gJ1RyYWNlYmFjayBcKG1vc3QgcmVjZW50IGNhbGwgZmlyc3RcKTpcbicKKyAgICAgICAgICAgIHJlZ2V4ID0gZXhwZWN0ZWRfdHJhY2ViYWNrKDcsIDI4LCByZWdleCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmVnZXgodHJhY2UsIHJlZ2V4KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSwgJycpCisgICAgICAgIGlmIHVucmVnaXN0ZXI6CisgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGV4aXRjb2RlLCAwKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleGl0Y29kZSwgMCkKKworICAgIGRlZiB0ZXN0X3JlZ2lzdGVyKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX3JlZ2lzdGVyKCkKKworICAgIGRlZiB0ZXN0X3VucmVnaXN0ZXIoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfcmVnaXN0ZXIodW5yZWdpc3Rlcj1UcnVlKQorCisgICAgZGVmIHRlc3RfcmVnaXN0ZXJfZmlsZShzZWxmKToKKyAgICAgICAgd2l0aCB0ZW1wb3JhcnlfZmlsZW5hbWUoKSBhcyBmaWxlbmFtZToKKyAgICAgICAgICAgIHNlbGYuY2hlY2tfcmVnaXN0ZXIoZmlsZW5hbWU9ZmlsZW5hbWUpCisKKyAgICBkZWYgdGVzdF9yZWdpc3Rlcl90aHJlYWRzKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrX3JlZ2lzdGVyKGFsbF90aHJlYWRzPVRydWUpCisKKyAgICBkZWYgdGVzdF9yZWdpc3Rlcl9jaGFpbihzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja19yZWdpc3RlcihjaGFpbj1UcnVlKQorCisKK2RlZiB0ZXN0X21haW4oKToKKyAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChGYXVsdEhhbmRsZXJUZXN0cykKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9maWxlaW5wdXQucHkgYi9MaWIvdGVzdC90ZXN0X2ZpbGVpbnB1dC5weQppbmRleCBmMzEyODgyLi4xZTcwNjQxIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2ZpbGVpbnB1dC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2ZpbGVpbnB1dC5weQpAQCAtMiwxOCArMiwzMyBAQAogVGVzdHMgZm9yIGZpbGVpbnB1dCBtb2R1bGUuCiBOaWNrIE1hdGhld3NvbgogJycnCi0KK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHJlCitpbXBvcnQgZmlsZWlucHV0CitpbXBvcnQgY29sbGVjdGlvbnMKK2ltcG9ydCBidWlsdGlucwogaW1wb3J0IHVuaXR0ZXN0Ci1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgdmVyYm9zZSwgVEVTVEZOLCBydW5fdW5pdHRlc3QKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCB1bmxpbmsgYXMgc2FmZV91bmxpbmsKLWltcG9ydCBzeXMsIHJlCisKK3RyeToKKyAgICBpbXBvcnQgYnoyCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgYnoyID0gTm9uZQordHJ5OgorICAgIGltcG9ydCBnemlwCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgZ3ppcCA9IE5vbmUKKwogZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KIGZyb20gZmlsZWlucHV0IGltcG9ydCBGaWxlSW5wdXQsIGhvb2tfZW5jb2RlZAogCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgdmVyYm9zZSwgVEVTVEZOLCBydW5fdW5pdHRlc3QKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCB1bmxpbmsgYXMgc2FmZV91bmxpbmsKKworCiAjIFRoZSBmaWxlaW5wdXQgbW9kdWxlIGhhcyAyIGludGVyZmFjZXM6IHRoZSBGaWxlSW5wdXQgY2xhc3Mgd2hpY2ggZG9lcwogIyBhbGwgdGhlIHdvcmssIGFuZCBhIGZldyBmdW5jdGlvbnMgKGlucHV0LCBldGMuKSB0aGF0IHVzZSBhIGdsb2JhbCBfc3RhdGUKLSMgdmFyaWFibGUuICBXZSBvbmx5IHRlc3QgdGhlIEZpbGVJbnB1dCBjbGFzcywgc2luY2UgdGhlIG90aGVyIGZ1bmN0aW9ucwotIyBvbmx5IHByb3ZpZGUgYSB0aGluIGZhY2FkZSBvdmVyIEZpbGVJbnB1dC4KKyMgdmFyaWFibGUuCiAKICMgV3JpdGUgbGluZXMgKGEgbGlzdCBvZiBsaW5lcykgdG8gdGVtcCBmaWxlIG51bWJlciBpLCBhbmQgcmV0dXJuIHRoZQogIyB0ZW1wIGZpbGUncyBuYW1lLgpAQCAtMTIxLDcgKzEzNiwxNiBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpbnQobS5ncm91cCgxKSksIGZpLmZpbGVsaW5lbm8oKSkKICAgICAgICAgZmkuY2xvc2UoKQogCitjbGFzcyBVbmNvbmRpdGlvbmFsbHlSYWlzZToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgZXhjZXB0aW9uX3R5cGUpOgorICAgICAgICBzZWxmLmV4Y2VwdGlvbl90eXBlID0gZXhjZXB0aW9uX3R5cGUKKyAgICAgICAgc2VsZi5pbnZva2VkID0gRmFsc2UKKyAgICBkZWYgX19jYWxsX18oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgc2VsZi5pbnZva2VkID0gVHJ1ZQorICAgICAgICByYWlzZSBzZWxmLmV4Y2VwdGlvbl90eXBlKCkKKwogY2xhc3MgRmlsZUlucHV0VGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgorCiAgICAgZGVmIHRlc3RfemVyb19ieXRlX2ZpbGVzKHNlbGYpOgogICAgICAgICB0MSA9IHQyID0gdDMgPSB0NCA9IE5vbmUKICAgICAgICAgdHJ5OgpAQCAtMjE5LDE3ICsyNDMsMjAgQEAKICAgICAgICAgICAgIHNlbGYuZmFpbCgiRmlsZUlucHV0IHNob3VsZCBjaGVjayBvcGVuaG9vayBmb3IgYmVpbmcgY2FsbGFibGUiKQogICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKICAgICAgICAgICAgIHBhc3MKLSAgICAgICAgIyBYWFggVGhlIHJvdDEzIGNvZGVjIHdhcyByZW1vdmVkLgotICAgICAgICAjICAgICBTbyB0aGlzIHRlc3QgbmVlZHMgdG8gYmUgY2hhbmdlZCB0byB1c2Ugc29tZXRoaW5nIGVsc2UuCi0gICAgICAgICMgICAgIChPciBwZXJoYXBzIHRoZSBBUEkgbmVlZHMgdG8gY2hhbmdlIHNvIHdlIGNhbiBqdXN0IHBhc3MKLSAgICAgICAgIyAgICAgYW4gZW5jb2RpbmcgcmF0aGVyIHRoYW4gdXNpbmcgYSBob29rPykKLSMjICAgICAgICAgdHJ5OgotIyMgICAgICAgICAgICAgdDEgPSB3cml0ZVRtcCgxLCBbIkFcbkIiXSwgbW9kZT0id2IiKQotIyMgICAgICAgICAgICAgZmkgPSBGaWxlSW5wdXQoZmlsZXM9dDEsIG9wZW5ob29rPWhvb2tfZW5jb2RlZCgicm90MTMiKSkKLSMjICAgICAgICAgICAgIGxpbmVzID0gbGlzdChmaSkKLSMjICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGluZXMsIFsiTlxuIiwgIk8iXSkKLSMjICAgICAgICAgZmluYWxseToKLSMjICAgICAgICAgICAgIHJlbW92ZV90ZW1wZmlsZXModDEpCisKKyAgICAgICAgY2xhc3MgQ3VzdG9tT3Blbkhvb2s6CisgICAgICAgICAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5pbnZva2VkID0gRmFsc2UKKyAgICAgICAgICAgIGRlZiBfX2NhbGxfXyhzZWxmLCAqYXJncyk6CisgICAgICAgICAgICAgICAgc2VsZi5pbnZva2VkID0gVHJ1ZQorICAgICAgICAgICAgICAgIHJldHVybiBvcGVuKCphcmdzKQorCisgICAgICAgIHQgPSB3cml0ZVRtcCgxLCBbIlxuIl0pCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChyZW1vdmVfdGVtcGZpbGVzLCB0KQorICAgICAgICBjdXN0b21fb3Blbl9ob29rID0gQ3VzdG9tT3Blbkhvb2soKQorICAgICAgICB3aXRoIEZpbGVJbnB1dChbdF0sIG9wZW5ob29rPWN1c3RvbV9vcGVuX2hvb2spIGFzIGZpOgorICAgICAgICAgICAgZmkucmVhZGxpbmUoKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoY3VzdG9tX29wZW5faG9vay5pbnZva2VkLCAib3Blbmhvb2sgbm90IGludm9rZWQiKQogCiAgICAgZGVmIHRlc3RfY29udGV4dF9tYW5hZ2VyKHNlbGYpOgogICAgICAgICB0cnk6CkBAIC0yNTQsOSArMjgxLDU3NiBAQAogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgcmVtb3ZlX3RlbXBmaWxlcyh0MSkKIAorICAgIGRlZiB0ZXN0X2VtcHR5X2ZpbGVzX2xpc3Rfc3BlY2lmaWVkX3RvX2NvbnN0cnVjdG9yKHNlbGYpOgorICAgICAgICB3aXRoIEZpbGVJbnB1dChmaWxlcz1bXSkgYXMgZmk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZpLl9maWxlcywgKCctJywpKQorCisgICAgZGVmIHRlc3RfX2dldGl0ZW1fXyhzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgaW52b2tpbmcgRmlsZUlucHV0Ll9fZ2V0aXRlbV9fKCkgd2l0aCB0aGUgY3VycmVudAorICAgICAgICAgICBsaW5lIG51bWJlciIiIgorICAgICAgICB0ID0gd3JpdGVUbXAoMSwgWyJsaW5lMVxuIiwgImxpbmUyXG4iXSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHJlbW92ZV90ZW1wZmlsZXMsIHQpCisgICAgICAgIHdpdGggRmlsZUlucHV0KGZpbGVzPVt0XSkgYXMgZmk6CisgICAgICAgICAgICByZXR2YWwxID0gZmlbMF0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmV0dmFsMSwgImxpbmUxXG4iKQorICAgICAgICAgICAgcmV0dmFsMiA9IGZpWzFdCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJldHZhbDIsICJsaW5lMlxuIikKKworICAgIGRlZiB0ZXN0X19nZXRpdGVtX19pbnZhbGlkX2tleShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgaW52b2tpbmcgRmlsZUlucHV0Ll9fZ2V0aXRlbV9fKCkgd2l0aCBhbiBpbmRleCB1bmVxdWFsIHRvCisgICAgICAgICAgIHRoZSBsaW5lIG51bWJlciIiIgorICAgICAgICB0ID0gd3JpdGVUbXAoMSwgWyJsaW5lMVxuIiwgImxpbmUyXG4iXSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHJlbW92ZV90ZW1wZmlsZXMsIHQpCisgICAgICAgIHdpdGggRmlsZUlucHV0KGZpbGVzPVt0XSkgYXMgZmk6CisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvcikgYXMgY206CisgICAgICAgICAgICAgICAgZmlbMV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbS5leGNlcHRpb24uYXJncywgKCJhY2Nlc3NpbmcgbGluZXMgb3V0IG9mIG9yZGVyIiwpKQorCisgICAgZGVmIHRlc3RfX2dldGl0ZW1fX2VvZihzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgaW52b2tpbmcgRmlsZUlucHV0Ll9fZ2V0aXRlbV9fKCkgd2l0aCB0aGUgbGluZSBudW1iZXIgYnV0IGF0CisgICAgICAgICAgIGVuZC1vZi1pbnB1dCIiIgorICAgICAgICB0ID0gd3JpdGVUbXAoMSwgW10pCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChyZW1vdmVfdGVtcGZpbGVzLCB0KQorICAgICAgICB3aXRoIEZpbGVJbnB1dChmaWxlcz1bdF0pIGFzIGZpOgorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhJbmRleEVycm9yKSBhcyBjbToKKyAgICAgICAgICAgICAgICBmaVswXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtLmV4Y2VwdGlvbi5hcmdzLCAoImVuZCBvZiBpbnB1dCByZWFjaGVkIiwpKQorCisgICAgZGVmIHRlc3RfbmV4dGZpbGVfb3NlcnJvcl9kZWxldGluZ19iYWNrdXAoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGludm9raW5nIEZpbGVJbnB1dC5uZXh0ZmlsZSgpIHdoZW4gdGhlIGF0dGVtcHQgdG8gZGVsZXRlCisgICAgICAgICAgIHRoZSBiYWNrdXAgZmlsZSB3b3VsZCByYWlzZSBPU0Vycm9yLiAgVGhpcyBlcnJvciBpcyBleHBlY3RlZCB0byBiZQorICAgICAgICAgICBzaWxlbnRseSBpZ25vcmVkIiIiCisKKyAgICAgICAgb3NfdW5saW5rX29yaWcgPSBvcy51bmxpbmsKKyAgICAgICAgb3NfdW5saW5rX3JlcGxhY2VtZW50ID0gVW5jb25kaXRpb25hbGx5UmFpc2UoT1NFcnJvcikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdCA9IHdyaXRlVG1wKDEsIFsiXG4iXSkKKyAgICAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChyZW1vdmVfdGVtcGZpbGVzLCB0KQorICAgICAgICAgICAgd2l0aCBGaWxlSW5wdXQoZmlsZXM9W3RdLCBpbnBsYWNlPVRydWUpIGFzIGZpOgorICAgICAgICAgICAgICAgIG5leHQoZmkpICMgbWFrZSBzdXJlIHRoZSBmaWxlIGlzIG9wZW5lZAorICAgICAgICAgICAgICAgIG9zLnVubGluayA9IG9zX3VubGlua19yZXBsYWNlbWVudAorICAgICAgICAgICAgICAgIGZpLm5leHRmaWxlKCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLnVubGluayA9IG9zX3VubGlua19vcmlnCisKKyAgICAgICAgIyBzYW5pdHkgY2hlY2sgdG8gbWFrZSBzdXJlIHRoYXQgb3VyIHRlc3Qgc2NlbmFyaW8gd2FzIGFjdHVhbGx5IGhpdAorICAgICAgICBzZWxmLmFzc2VydFRydWUob3NfdW5saW5rX3JlcGxhY2VtZW50Lmludm9rZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAib3MudW5saW5rKCkgd2FzIG5vdCBpbnZva2VkIikKKworICAgIGRlZiB0ZXN0X3JlYWRsaW5lX29zX2ZzdGF0X3JhaXNlc19PU0Vycm9yKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBpbnZva2luZyBGaWxlSW5wdXQucmVhZGxpbmUoKSB3aGVuIG9zLmZzdGF0KCkgcmFpc2VzIE9TRXJyb3IuCisgICAgICAgICAgIFRoaXMgZXhjZXB0aW9uIHNob3VsZCBiZSBzaWxlbnRseSBkaXNjYXJkZWQuIiIiCisKKyAgICAgICAgb3NfZnN0YXRfb3JpZyA9IG9zLmZzdGF0CisgICAgICAgIG9zX2ZzdGF0X3JlcGxhY2VtZW50ID0gVW5jb25kaXRpb25hbGx5UmFpc2UoT1NFcnJvcikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdCA9IHdyaXRlVG1wKDEsIFsiXG4iXSkKKyAgICAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChyZW1vdmVfdGVtcGZpbGVzLCB0KQorICAgICAgICAgICAgd2l0aCBGaWxlSW5wdXQoZmlsZXM9W3RdLCBpbnBsYWNlPVRydWUpIGFzIGZpOgorICAgICAgICAgICAgICAgIG9zLmZzdGF0ID0gb3NfZnN0YXRfcmVwbGFjZW1lbnQKKyAgICAgICAgICAgICAgICBmaS5yZWFkbGluZSgpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5mc3RhdCA9IG9zX2ZzdGF0X29yaWcKKworICAgICAgICAjIHNhbml0eSBjaGVjayB0byBtYWtlIHN1cmUgdGhhdCBvdXIgdGVzdCBzY2VuYXJpbyB3YXMgYWN0dWFsbHkgaGl0CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvc19mc3RhdF9yZXBsYWNlbWVudC5pbnZva2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgIm9zLmZzdGF0KCkgd2FzIG5vdCBpbnZva2VkIikKKworICAgIEB1bml0dGVzdC5za2lwSWYobm90IGhhc2F0dHIob3MsICJjaG1vZCIpLCAib3MuY2htb2QgZG9lcyBub3QgZXhpc3QiKQorICAgIGRlZiB0ZXN0X3JlYWRsaW5lX29zX2NobW9kX3JhaXNlc19PU0Vycm9yKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBpbnZva2luZyBGaWxlSW5wdXQucmVhZGxpbmUoKSB3aGVuIG9zLmNobW9kKCkgcmFpc2VzIE9TRXJyb3IuCisgICAgICAgICAgIFRoaXMgZXhjZXB0aW9uIHNob3VsZCBiZSBzaWxlbnRseSBkaXNjYXJkZWQuIiIiCisKKyAgICAgICAgb3NfY2htb2Rfb3JpZyA9IG9zLmNobW9kCisgICAgICAgIG9zX2NobW9kX3JlcGxhY2VtZW50ID0gVW5jb25kaXRpb25hbGx5UmFpc2UoT1NFcnJvcikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdCA9IHdyaXRlVG1wKDEsIFsiXG4iXSkKKyAgICAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChyZW1vdmVfdGVtcGZpbGVzLCB0KQorICAgICAgICAgICAgd2l0aCBGaWxlSW5wdXQoZmlsZXM9W3RdLCBpbnBsYWNlPVRydWUpIGFzIGZpOgorICAgICAgICAgICAgICAgIG9zLmNobW9kID0gb3NfY2htb2RfcmVwbGFjZW1lbnQKKyAgICAgICAgICAgICAgICBmaS5yZWFkbGluZSgpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jaG1vZCA9IG9zX2NobW9kX29yaWcKKworICAgICAgICAjIHNhbml0eSBjaGVjayB0byBtYWtlIHN1cmUgdGhhdCBvdXIgdGVzdCBzY2VuYXJpbyB3YXMgYWN0dWFsbHkgaGl0CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvc19jaG1vZF9yZXBsYWNlbWVudC5pbnZva2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgIm9zLmZzdGF0KCkgd2FzIG5vdCBpbnZva2VkIikKKworICAgIGRlZiB0ZXN0X2ZpbGVub193aGVuX1ZhbHVlRXJyb3JfcmFpc2VkKHNlbGYpOgorICAgICAgICBjbGFzcyBGaWxlbm9SYWlzZXNWYWx1ZUVycm9yKFVuY29uZGl0aW9uYWxseVJhaXNlKToKKyAgICAgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgICAgICAgICBVbmNvbmRpdGlvbmFsbHlSYWlzZS5fX2luaXRfXyhzZWxmLCBWYWx1ZUVycm9yKQorICAgICAgICAgICAgZGVmIGZpbGVubyhzZWxmKToKKyAgICAgICAgICAgICAgICBzZWxmLl9fY2FsbF9fKCkKKworICAgICAgICB1bmNvbmRpdGlvbmFsbHlfcmFpc2VfVmFsdWVFcnJvciA9IEZpbGVub1JhaXNlc1ZhbHVlRXJyb3IoKQorICAgICAgICB0ID0gd3JpdGVUbXAoMSwgWyJcbiJdKQorICAgICAgICBzZWxmLmFkZENsZWFudXAocmVtb3ZlX3RlbXBmaWxlcywgdCkKKyAgICAgICAgd2l0aCBGaWxlSW5wdXQoZmlsZXM9W3RdKSBhcyBmaToKKyAgICAgICAgICAgIGZpbGVfYmFja3VwID0gZmkuX2ZpbGUKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBmaS5fZmlsZSA9IHVuY29uZGl0aW9uYWxseV9yYWlzZV9WYWx1ZUVycm9yCisgICAgICAgICAgICAgICAgcmVzdWx0ID0gZmkuZmlsZW5vKCkKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgZmkuX2ZpbGUgPSBmaWxlX2JhY2t1cCAjIG1ha2Ugc3VyZSB0aGUgZmlsZSBnZXRzIGNsZWFuZWQgdXAKKworICAgICAgICAjIHNhbml0eSBjaGVjayB0byBtYWtlIHN1cmUgdGhhdCBvdXIgdGVzdCBzY2VuYXJpbyB3YXMgYWN0dWFsbHkgaGl0CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh1bmNvbmRpdGlvbmFsbHlfcmFpc2VfVmFsdWVFcnJvci5pbnZva2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgIl9maWxlLmZpbGVubygpIHdhcyBub3QgaW52b2tlZCIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQsIC0xLCAiZmlsZW5vKCkgc2hvdWxkIHJldHVybiAtMSIpCisKK2NsYXNzIE1vY2tGaWxlSW5wdXQ6CisgICAgIiIiQSBjbGFzcyB0aGF0IG1vY2tzIG91dCBmaWxlaW5wdXQuRmlsZUlucHV0IGZvciB1c2UgZHVyaW5nIHVuaXQgdGVzdHMiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBmaWxlcz1Ob25lLCBpbnBsYWNlPUZhbHNlLCBiYWNrdXA9IiIsIGJ1ZnNpemU9MCwKKyAgICAgICAgICAgICAgICAgbW9kZT0iciIsIG9wZW5ob29rPU5vbmUpOgorICAgICAgICBzZWxmLmZpbGVzID0gZmlsZXMKKyAgICAgICAgc2VsZi5pbnBsYWNlID0gaW5wbGFjZQorICAgICAgICBzZWxmLmJhY2t1cCA9IGJhY2t1cAorICAgICAgICBzZWxmLmJ1ZnNpemUgPSBidWZzaXplCisgICAgICAgIHNlbGYubW9kZSA9IG1vZGUKKyAgICAgICAgc2VsZi5vcGVuaG9vayA9IG9wZW5ob29rCisgICAgICAgIHNlbGYuX2ZpbGUgPSBOb25lCisgICAgICAgIHNlbGYuaW52b2NhdGlvbl9jb3VudHMgPSBjb2xsZWN0aW9ucy5kZWZhdWx0ZGljdChsYW1iZGE6IDApCisgICAgICAgIHNlbGYucmV0dXJuX3ZhbHVlcyA9IHt9CisKKyAgICBkZWYgY2xvc2Uoc2VsZik6CisgICAgICAgIHNlbGYuaW52b2NhdGlvbl9jb3VudHNbImNsb3NlIl0gKz0gMQorCisgICAgZGVmIG5leHRmaWxlKHNlbGYpOgorICAgICAgICBzZWxmLmludm9jYXRpb25fY291bnRzWyJuZXh0ZmlsZSJdICs9IDEKKyAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuX3ZhbHVlc1sibmV4dGZpbGUiXQorCisgICAgZGVmIGZpbGVuYW1lKHNlbGYpOgorICAgICAgICBzZWxmLmludm9jYXRpb25fY291bnRzWyJmaWxlbmFtZSJdICs9IDEKKyAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuX3ZhbHVlc1siZmlsZW5hbWUiXQorCisgICAgZGVmIGxpbmVubyhzZWxmKToKKyAgICAgICAgc2VsZi5pbnZvY2F0aW9uX2NvdW50c1sibGluZW5vIl0gKz0gMQorICAgICAgICByZXR1cm4gc2VsZi5yZXR1cm5fdmFsdWVzWyJsaW5lbm8iXQorCisgICAgZGVmIGZpbGVsaW5lbm8oc2VsZik6CisgICAgICAgIHNlbGYuaW52b2NhdGlvbl9jb3VudHNbImZpbGVsaW5lbm8iXSArPSAxCisgICAgICAgIHJldHVybiBzZWxmLnJldHVybl92YWx1ZXNbImZpbGVsaW5lbm8iXQorCisgICAgZGVmIGZpbGVubyhzZWxmKToKKyAgICAgICAgc2VsZi5pbnZvY2F0aW9uX2NvdW50c1siZmlsZW5vIl0gKz0gMQorICAgICAgICByZXR1cm4gc2VsZi5yZXR1cm5fdmFsdWVzWyJmaWxlbm8iXQorCisgICAgZGVmIGlzZmlyc3RsaW5lKHNlbGYpOgorICAgICAgICBzZWxmLmludm9jYXRpb25fY291bnRzWyJpc2ZpcnN0bGluZSJdICs9IDEKKyAgICAgICAgcmV0dXJuIHNlbGYucmV0dXJuX3ZhbHVlc1siaXNmaXJzdGxpbmUiXQorCisgICAgZGVmIGlzc3RkaW4oc2VsZik6CisgICAgICAgIHNlbGYuaW52b2NhdGlvbl9jb3VudHNbImlzc3RkaW4iXSArPSAxCisgICAgICAgIHJldHVybiBzZWxmLnJldHVybl92YWx1ZXNbImlzc3RkaW4iXQorCitjbGFzcyBCYXNlRmlsZUlucHV0R2xvYmFsTWV0aG9kc1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorICAgICIiIkJhc2UgY2xhc3MgZm9yIHVuaXQgdGVzdHMgZm9yIHRoZSBnbG9iYWwgZnVuY3Rpb24gb2YKKyAgICAgICB0aGUgZmlsZWlucHV0IG1vZHVsZS4iIiIKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5fb3JpZ19zdGF0ZSA9IGZpbGVpbnB1dC5fc3RhdGUKKyAgICAgICAgc2VsZi5fb3JpZ19GaWxlSW5wdXQgPSBmaWxlaW5wdXQuRmlsZUlucHV0CisgICAgICAgIGZpbGVpbnB1dC5GaWxlSW5wdXQgPSBNb2NrRmlsZUlucHV0CisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIGZpbGVpbnB1dC5GaWxlSW5wdXQgPSBzZWxmLl9vcmlnX0ZpbGVJbnB1dAorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gc2VsZi5fb3JpZ19zdGF0ZQorCisgICAgZGVmIGFzc2VydEV4YWN0bHlPbmVJbnZvY2F0aW9uKHNlbGYsIG1vY2tfZmlsZV9pbnB1dCwgbWV0aG9kX25hbWUpOgorICAgICAgICAjIGFzc2VydCB0aGF0IHRoZSBtZXRob2Qgd2l0aCB0aGUgZ2l2ZW4gbmFtZSB3YXMgaW52b2tlZCBvbmNlCisgICAgICAgIGFjdHVhbF9jb3VudCA9IG1vY2tfZmlsZV9pbnB1dC5pbnZvY2F0aW9uX2NvdW50c1ttZXRob2RfbmFtZV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhY3R1YWxfY291bnQsIDEsIG1ldGhvZF9uYW1lKQorICAgICAgICAjIGFzc2VydCB0aGF0IG5vIG90aGVyIHVuZXhwZWN0ZWQgbWV0aG9kcyB3ZXJlIGludm9rZWQKKyAgICAgICAgYWN0dWFsX3RvdGFsX2NvdW50ID0gbGVuKG1vY2tfZmlsZV9pbnB1dC5pbnZvY2F0aW9uX2NvdW50cykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhY3R1YWxfdG90YWxfY291bnQsIDEpCisKK2NsYXNzIFRlc3RfZmlsZWlucHV0X2lucHV0KEJhc2VGaWxlSW5wdXRHbG9iYWxNZXRob2RzVGVzdCk6CisgICAgIiIiVW5pdCB0ZXN0cyBmb3IgZmlsZWlucHV0LmlucHV0KCkiIiIKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX25vdF9Ob25lX2FuZF9zdGF0ZV9maWxlX2lzX25vdF9Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBpbnZva2luZyBmaWxlaW5wdXQuaW5wdXQoKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgbm90IE5vbmUKKyAgICAgICAgICAgYW5kIGl0cyBfZmlsZSBhdHRyaWJ1dGUgaXMgYWxzbyBub3QgTm9uZS4gIEV4cGVjdCBSdW50aW1lRXJyb3IgdG8KKyAgICAgICAgICAgYmUgcmFpc2VkIHdpdGggYSBtZWFuaW5nZnVsIGVycm9yIG1lc3NhZ2UgYW5kIGZvciBmaWxlaW5wdXQuX3N0YXRlCisgICAgICAgICAgIHRvICpub3QqIGJlIG1vZGlmaWVkLiIiIgorICAgICAgICBpbnN0YW5jZSA9IE1vY2tGaWxlSW5wdXQoKQorICAgICAgICBpbnN0YW5jZS5fZmlsZSA9IG9iamVjdCgpCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBpbnN0YW5jZQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvcikgYXMgY206CisgICAgICAgICAgICBmaWxlaW5wdXQuaW5wdXQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgiaW5wdXQoKSBhbHJlYWR5IGFjdGl2ZSIsKSwgY20uZXhjZXB0aW9uLmFyZ3MpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoaW5zdGFuY2UsIGZpbGVpbnB1dC5fc3RhdGUsICJmaWxlaW5wdXQuX3N0YXRlIikKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX25vdF9Ob25lX2FuZF9zdGF0ZV9maWxlX2lzX05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGludm9raW5nIGZpbGVpbnB1dC5pbnB1dCgpIHdoZW4gZmlsZWlucHV0Ll9zdGF0ZSBpcyBub3QgTm9uZQorICAgICAgICAgICBidXQgaXRzIF9maWxlIGF0dHJpYnV0ZSAqaXMqIE5vbmUuICBFeHBlY3QgaXQgdG8gY3JlYXRlIGFuZCByZXR1cm4KKyAgICAgICAgICAgYSBuZXcgZmlsZWlucHV0LkZpbGVJbnB1dCBvYmplY3Qgd2l0aCBhbGwgbWV0aG9kIHBhcmFtZXRlcnMgcGFzc2VkCisgICAgICAgICAgIGV4cGxpY2l0bHkgdG8gdGhlIF9faW5pdF9fKCkgbWV0aG9kOyBhbHNvIGVuc3VyZSB0aGF0CisgICAgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgaXMgc2V0IHRvIHRoZSByZXR1cm5lZCBpbnN0YW5jZS4iIiIKKyAgICAgICAgaW5zdGFuY2UgPSBNb2NrRmlsZUlucHV0KCkKKyAgICAgICAgaW5zdGFuY2UuX2ZpbGUgPSBOb25lCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBpbnN0YW5jZQorICAgICAgICBzZWxmLmRvX3Rlc3RfY2FsbF9pbnB1dCgpCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBpbnZva2luZyBmaWxlaW5wdXQuaW5wdXQoKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgTm9uZQorICAgICAgICAgICBFeHBlY3QgaXQgdG8gY3JlYXRlIGFuZCByZXR1cm4gYSBuZXcgZmlsZWlucHV0LkZpbGVJbnB1dCBvYmplY3QKKyAgICAgICAgICAgd2l0aCBhbGwgbWV0aG9kIHBhcmFtZXRlcnMgcGFzc2VkIGV4cGxpY2l0bHkgdG8gdGhlIF9faW5pdF9fKCkKKyAgICAgICAgICAgbWV0aG9kOyBhbHNvIGVuc3VyZSB0aGF0IGZpbGVpbnB1dC5fc3RhdGUgaXMgc2V0IHRvIHRoZSByZXR1cm5lZAorICAgICAgICAgICBpbnN0YW5jZS4iIiIKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IE5vbmUKKyAgICAgICAgc2VsZi5kb190ZXN0X2NhbGxfaW5wdXQoKQorCisgICAgZGVmIGRvX3Rlc3RfY2FsbF9pbnB1dChzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgdGhhdCBmaWxlaW5wdXQuaW5wdXQoKSBjcmVhdGVzIGEgbmV3IGZpbGVpbnB1dC5GaWxlSW5wdXQKKyAgICAgICAgICAgb2JqZWN0LCBwYXNzaW5nIHRoZSBnaXZlbiBwYXJhbWV0ZXJzIHVubW9kaWZpZWQgdG8KKyAgICAgICAgICAgZmlsZWlucHV0LkZpbGVJbnB1dC5fX2luaXRfXygpLiAgTm90ZSB0aGF0IHRoaXMgdGVzdCBkZXBlbmRzIG9uIHRoZQorICAgICAgICAgICBtb25rZXkgcGF0Y2hpbmcgb2YgZmlsZWlucHV0LkZpbGVJbnB1dCBkb25lIGJ5IHNldFVwKCkuIiIiCisgICAgICAgIGZpbGVzID0gb2JqZWN0KCkKKyAgICAgICAgaW5wbGFjZSA9IG9iamVjdCgpCisgICAgICAgIGJhY2t1cCA9IG9iamVjdCgpCisgICAgICAgIGJ1ZnNpemUgPSBvYmplY3QoKQorICAgICAgICBtb2RlID0gb2JqZWN0KCkKKyAgICAgICAgb3Blbmhvb2sgPSBvYmplY3QoKQorCisgICAgICAgICMgY2FsbCBmaWxlaW5wdXQuaW5wdXQoKSB3aXRoIGRpZmZlcmVudCB2YWx1ZXMgZm9yIGVhY2ggYXJndW1lbnQKKyAgICAgICAgcmVzdWx0ID0gZmlsZWlucHV0LmlucHV0KGZpbGVzPWZpbGVzLCBpbnBsYWNlPWlucGxhY2UsIGJhY2t1cD1iYWNrdXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWZzaXplPWJ1ZnNpemUsCisgICAgICAgICAgICBtb2RlPW1vZGUsIG9wZW5ob29rPW9wZW5ob29rKQorCisgICAgICAgICMgZW5zdXJlIGZpbGVpbnB1dC5fc3RhdGUgd2FzIHNldCB0byB0aGUgcmV0dXJuZWQgb2JqZWN0CisgICAgICAgIHNlbGYuYXNzZXJ0SXMocmVzdWx0LCBmaWxlaW5wdXQuX3N0YXRlLCAiZmlsZWlucHV0Ll9zdGF0ZSIpCisKKyAgICAgICAgIyBlbnN1cmUgdGhlIHBhcmFtZXRlcnMgdG8gZmlsZWlucHV0LmlucHV0KCkgd2VyZSBwYXNzZWQgZGlyZWN0bHkKKyAgICAgICAgIyB0byBGaWxlSW5wdXQuX19pbml0X18oKQorICAgICAgICBzZWxmLmFzc2VydElzKGZpbGVzLCByZXN1bHQuZmlsZXMsICJmaWxlcyIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoaW5wbGFjZSwgcmVzdWx0LmlucGxhY2UsICJpbnBsYWNlIikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhiYWNrdXAsIHJlc3VsdC5iYWNrdXAsICJiYWNrdXAiKQorICAgICAgICBzZWxmLmFzc2VydElzKGJ1ZnNpemUsIHJlc3VsdC5idWZzaXplLCAiYnVmc2l6ZSIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMobW9kZSwgcmVzdWx0Lm1vZGUsICJtb2RlIikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhvcGVuaG9vaywgcmVzdWx0Lm9wZW5ob29rLCAib3Blbmhvb2siKQorCitjbGFzcyBUZXN0X2ZpbGVpbnB1dF9jbG9zZShCYXNlRmlsZUlucHV0R2xvYmFsTWV0aG9kc1Rlc3QpOgorICAgICIiIlVuaXQgdGVzdHMgZm9yIGZpbGVpbnB1dC5jbG9zZSgpIiIiCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyB0aGF0IGZpbGVpbnB1dC5jbG9zZSgpIGRvZXMgbm90aGluZyBpZiBmaWxlaW5wdXQuX3N0YXRlCisgICAgICAgICAgIGlzIE5vbmUiIiIKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IE5vbmUKKyAgICAgICAgZmlsZWlucHV0LmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmlsZWlucHV0Ll9zdGF0ZSkKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX25vdF9Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyB0aGF0IGZpbGVpbnB1dC5jbG9zZSgpIGludm9rZXMgY2xvc2UoKSBvbiBmaWxlaW5wdXQuX3N0YXRlCisgICAgICAgICAgIGFuZCBzZXRzIF9zdGF0ZT1Ob25lIiIiCisgICAgICAgIGluc3RhbmNlID0gTW9ja0ZpbGVJbnB1dCgpCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBpbnN0YW5jZQorICAgICAgICBmaWxlaW5wdXQuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0bHlPbmVJbnZvY2F0aW9uKGluc3RhbmNlLCAiY2xvc2UiKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShmaWxlaW5wdXQuX3N0YXRlKQorCitjbGFzcyBUZXN0X2ZpbGVpbnB1dF9uZXh0ZmlsZShCYXNlRmlsZUlucHV0R2xvYmFsTWV0aG9kc1Rlc3QpOgorICAgICIiIlVuaXQgdGVzdHMgZm9yIGZpbGVpbnB1dC5uZXh0ZmlsZSgpIiIiCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBmaWxlaW5wdXQubmV4dGZpbGUoKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgTm9uZS4KKyAgICAgICAgICAgRW5zdXJlIHRoYXQgaXQgcmFpc2VzIFJ1bnRpbWVFcnJvciB3aXRoIGEgbWVhbmluZ2Z1bCBlcnJvciBtZXNzYWdlCisgICAgICAgICAgIGFuZCBkb2VzIG5vdCBtb2RpZnkgZmlsZWlucHV0Ll9zdGF0ZSIiIgorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gTm9uZQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvcikgYXMgY206CisgICAgICAgICAgICBmaWxlaW5wdXQubmV4dGZpbGUoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgibm8gYWN0aXZlIGlucHV0KCkiLCksIGNtLmV4Y2VwdGlvbi5hcmdzKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShmaWxlaW5wdXQuX3N0YXRlKQorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfbm90X05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5uZXh0ZmlsZSgpIHdoZW4gZmlsZWlucHV0Ll9zdGF0ZSBpcyBub3QgTm9uZS4KKyAgICAgICAgICAgRW5zdXJlIHRoYXQgaXQgaW52b2tlcyBmaWxlaW5wdXQuX3N0YXRlLm5leHRmaWxlKCkgZXhhY3RseSBvbmNlLAorICAgICAgICAgICByZXR1cm5zIHdoYXRldmVyIGl0IHJldHVybnMsIGFuZCBkb2VzIG5vdCBtb2RpZnkgZmlsZWlucHV0Ll9zdGF0ZQorICAgICAgICAgICB0byBwb2ludCB0byBhIGRpZmZlcmVudCBvYmplY3QuIiIiCisgICAgICAgIG5leHRmaWxlX3JldHZhbCA9IG9iamVjdCgpCisgICAgICAgIGluc3RhbmNlID0gTW9ja0ZpbGVJbnB1dCgpCisgICAgICAgIGluc3RhbmNlLnJldHVybl92YWx1ZXNbIm5leHRmaWxlIl0gPSBuZXh0ZmlsZV9yZXR2YWwKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IGluc3RhbmNlCisgICAgICAgIHJldHZhbCA9IGZpbGVpbnB1dC5uZXh0ZmlsZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RseU9uZUludm9jYXRpb24oaW5zdGFuY2UsICJuZXh0ZmlsZSIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocmV0dmFsLCBuZXh0ZmlsZV9yZXR2YWwpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZmlsZWlucHV0Ll9zdGF0ZSwgaW5zdGFuY2UpCisKK2NsYXNzIFRlc3RfZmlsZWlucHV0X2ZpbGVuYW1lKEJhc2VGaWxlSW5wdXRHbG9iYWxNZXRob2RzVGVzdCk6CisgICAgIiIiVW5pdCB0ZXN0cyBmb3IgZmlsZWlucHV0LmZpbGVuYW1lKCkiIiIKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5maWxlbmFtZSgpIHdoZW4gZmlsZWlucHV0Ll9zdGF0ZSBpcyBOb25lLgorICAgICAgICAgICBFbnN1cmUgdGhhdCBpdCByYWlzZXMgUnVudGltZUVycm9yIHdpdGggYSBtZWFuaW5nZnVsIGVycm9yIG1lc3NhZ2UKKyAgICAgICAgICAgYW5kIGRvZXMgbm90IG1vZGlmeSBmaWxlaW5wdXQuX3N0YXRlIiIiCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBOb25lCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yKSBhcyBjbToKKyAgICAgICAgICAgIGZpbGVpbnB1dC5maWxlbmFtZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCJubyBhY3RpdmUgaW5wdXQoKSIsKSwgY20uZXhjZXB0aW9uLmFyZ3MpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGZpbGVpbnB1dC5fc3RhdGUpCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19ub3RfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0LmZpbGVuYW1lKCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIG5vdCBOb25lLgorICAgICAgICAgICBFbnN1cmUgdGhhdCBpdCBpbnZva2VzIGZpbGVpbnB1dC5fc3RhdGUuZmlsZW5hbWUoKSBleGFjdGx5IG9uY2UsCisgICAgICAgICAgIHJldHVybnMgd2hhdGV2ZXIgaXQgcmV0dXJucywgYW5kIGRvZXMgbm90IG1vZGlmeSBmaWxlaW5wdXQuX3N0YXRlCisgICAgICAgICAgIHRvIHBvaW50IHRvIGEgZGlmZmVyZW50IG9iamVjdC4iIiIKKyAgICAgICAgZmlsZW5hbWVfcmV0dmFsID0gb2JqZWN0KCkKKyAgICAgICAgaW5zdGFuY2UgPSBNb2NrRmlsZUlucHV0KCkKKyAgICAgICAgaW5zdGFuY2UucmV0dXJuX3ZhbHVlc1siZmlsZW5hbWUiXSA9IGZpbGVuYW1lX3JldHZhbAorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gaW5zdGFuY2UKKyAgICAgICAgcmV0dmFsID0gZmlsZWlucHV0LmZpbGVuYW1lKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdGx5T25lSW52b2NhdGlvbihpbnN0YW5jZSwgImZpbGVuYW1lIikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyZXR2YWwsIGZpbGVuYW1lX3JldHZhbCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhmaWxlaW5wdXQuX3N0YXRlLCBpbnN0YW5jZSkKKworY2xhc3MgVGVzdF9maWxlaW5wdXRfbGluZW5vKEJhc2VGaWxlSW5wdXRHbG9iYWxNZXRob2RzVGVzdCk6CisgICAgIiIiVW5pdCB0ZXN0cyBmb3IgZmlsZWlucHV0LmxpbmVubygpIiIiCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBmaWxlaW5wdXQubGluZW5vKCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IHJhaXNlcyBSdW50aW1lRXJyb3Igd2l0aCBhIG1lYW5pbmdmdWwgZXJyb3IgbWVzc2FnZQorICAgICAgICAgICBhbmQgZG9lcyBub3QgbW9kaWZ5IGZpbGVpbnB1dC5fc3RhdGUiIiIKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IE5vbmUKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgZmlsZWlucHV0LmxpbmVubygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCJubyBhY3RpdmUgaW5wdXQoKSIsKSwgY20uZXhjZXB0aW9uLmFyZ3MpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGZpbGVpbnB1dC5fc3RhdGUpCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19ub3RfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0LmxpbmVubygpIHdoZW4gZmlsZWlucHV0Ll9zdGF0ZSBpcyBub3QgTm9uZS4KKyAgICAgICAgICAgRW5zdXJlIHRoYXQgaXQgaW52b2tlcyBmaWxlaW5wdXQuX3N0YXRlLmxpbmVubygpIGV4YWN0bHkgb25jZSwKKyAgICAgICAgICAgcmV0dXJucyB3aGF0ZXZlciBpdCByZXR1cm5zLCBhbmQgZG9lcyBub3QgbW9kaWZ5IGZpbGVpbnB1dC5fc3RhdGUKKyAgICAgICAgICAgdG8gcG9pbnQgdG8gYSBkaWZmZXJlbnQgb2JqZWN0LiIiIgorICAgICAgICBsaW5lbm9fcmV0dmFsID0gb2JqZWN0KCkKKyAgICAgICAgaW5zdGFuY2UgPSBNb2NrRmlsZUlucHV0KCkKKyAgICAgICAgaW5zdGFuY2UucmV0dXJuX3ZhbHVlc1sibGluZW5vIl0gPSBsaW5lbm9fcmV0dmFsCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBpbnN0YW5jZQorICAgICAgICByZXR2YWwgPSBmaWxlaW5wdXQubGluZW5vKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdGx5T25lSW52b2NhdGlvbihpbnN0YW5jZSwgImxpbmVubyIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocmV0dmFsLCBsaW5lbm9fcmV0dmFsKQorICAgICAgICBzZWxmLmFzc2VydElzKGZpbGVpbnB1dC5fc3RhdGUsIGluc3RhbmNlKQorCitjbGFzcyBUZXN0X2ZpbGVpbnB1dF9maWxlbGluZW5vKEJhc2VGaWxlSW5wdXRHbG9iYWxNZXRob2RzVGVzdCk6CisgICAgIiIiVW5pdCB0ZXN0cyBmb3IgZmlsZWlucHV0LmZpbGVsaW5lbm8oKSIiIgorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0LmZpbGVsaW5lbm8oKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgTm9uZS4KKyAgICAgICAgICAgRW5zdXJlIHRoYXQgaXQgcmFpc2VzIFJ1bnRpbWVFcnJvciB3aXRoIGEgbWVhbmluZ2Z1bCBlcnJvciBtZXNzYWdlCisgICAgICAgICAgIGFuZCBkb2VzIG5vdCBtb2RpZnkgZmlsZWlucHV0Ll9zdGF0ZSIiIgorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gTm9uZQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvcikgYXMgY206CisgICAgICAgICAgICBmaWxlaW5wdXQuZmlsZWxpbmVubygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCJubyBhY3RpdmUgaW5wdXQoKSIsKSwgY20uZXhjZXB0aW9uLmFyZ3MpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGZpbGVpbnB1dC5fc3RhdGUpCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19ub3RfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0LmZpbGVsaW5lbm8oKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgbm90IE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IGludm9rZXMgZmlsZWlucHV0Ll9zdGF0ZS5maWxlbGluZW5vKCkgZXhhY3RseSBvbmNlLAorICAgICAgICAgICByZXR1cm5zIHdoYXRldmVyIGl0IHJldHVybnMsIGFuZCBkb2VzIG5vdCBtb2RpZnkgZmlsZWlucHV0Ll9zdGF0ZQorICAgICAgICAgICB0byBwb2ludCB0byBhIGRpZmZlcmVudCBvYmplY3QuIiIiCisgICAgICAgIGZpbGVsaW5lbm9fcmV0dmFsID0gb2JqZWN0KCkKKyAgICAgICAgaW5zdGFuY2UgPSBNb2NrRmlsZUlucHV0KCkKKyAgICAgICAgaW5zdGFuY2UucmV0dXJuX3ZhbHVlc1siZmlsZWxpbmVubyJdID0gZmlsZWxpbmVub19yZXR2YWwKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IGluc3RhbmNlCisgICAgICAgIHJldHZhbCA9IGZpbGVpbnB1dC5maWxlbGluZW5vKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdGx5T25lSW52b2NhdGlvbihpbnN0YW5jZSwgImZpbGVsaW5lbm8iKQorICAgICAgICBzZWxmLmFzc2VydElzKHJldHZhbCwgZmlsZWxpbmVub19yZXR2YWwpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZmlsZWlucHV0Ll9zdGF0ZSwgaW5zdGFuY2UpCisKK2NsYXNzIFRlc3RfZmlsZWlucHV0X2ZpbGVubyhCYXNlRmlsZUlucHV0R2xvYmFsTWV0aG9kc1Rlc3QpOgorICAgICIiIlVuaXQgdGVzdHMgZm9yIGZpbGVpbnB1dC5maWxlbm8oKSIiIgorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0LmZpbGVubygpIHdoZW4gZmlsZWlucHV0Ll9zdGF0ZSBpcyBOb25lLgorICAgICAgICAgICBFbnN1cmUgdGhhdCBpdCByYWlzZXMgUnVudGltZUVycm9yIHdpdGggYSBtZWFuaW5nZnVsIGVycm9yIG1lc3NhZ2UKKyAgICAgICAgICAgYW5kIGRvZXMgbm90IG1vZGlmeSBmaWxlaW5wdXQuX3N0YXRlIiIiCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBOb25lCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yKSBhcyBjbToKKyAgICAgICAgICAgIGZpbGVpbnB1dC5maWxlbm8oKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgibm8gYWN0aXZlIGlucHV0KCkiLCksIGNtLmV4Y2VwdGlvbi5hcmdzKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShmaWxlaW5wdXQuX3N0YXRlKQorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfbm90X05vbmUoc2VsZik6CisgICAgICAgICIiIlRlc3RzIGZpbGVpbnB1dC5maWxlbm8oKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgbm90IE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IGludm9rZXMgZmlsZWlucHV0Ll9zdGF0ZS5maWxlbm8oKSBleGFjdGx5IG9uY2UsCisgICAgICAgICAgIHJldHVybnMgd2hhdGV2ZXIgaXQgcmV0dXJucywgYW5kIGRvZXMgbm90IG1vZGlmeSBmaWxlaW5wdXQuX3N0YXRlCisgICAgICAgICAgIHRvIHBvaW50IHRvIGEgZGlmZmVyZW50IG9iamVjdC4iIiIKKyAgICAgICAgZmlsZW5vX3JldHZhbCA9IG9iamVjdCgpCisgICAgICAgIGluc3RhbmNlID0gTW9ja0ZpbGVJbnB1dCgpCisgICAgICAgIGluc3RhbmNlLnJldHVybl92YWx1ZXNbImZpbGVubyJdID0gZmlsZW5vX3JldHZhbAorICAgICAgICBpbnN0YW5jZS5maWxlbm9fcmV0dmFsID0gZmlsZW5vX3JldHZhbAorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gaW5zdGFuY2UKKyAgICAgICAgcmV0dmFsID0gZmlsZWlucHV0LmZpbGVubygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RseU9uZUludm9jYXRpb24oaW5zdGFuY2UsICJmaWxlbm8iKQorICAgICAgICBzZWxmLmFzc2VydElzKHJldHZhbCwgZmlsZW5vX3JldHZhbCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhmaWxlaW5wdXQuX3N0YXRlLCBpbnN0YW5jZSkKKworY2xhc3MgVGVzdF9maWxlaW5wdXRfaXNmaXJzdGxpbmUoQmFzZUZpbGVJbnB1dEdsb2JhbE1ldGhvZHNUZXN0KToKKyAgICAiIiJVbml0IHRlc3RzIGZvciBmaWxlaW5wdXQuaXNmaXJzdGxpbmUoKSIiIgorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0LmlzZmlyc3RsaW5lKCkgd2hlbiBmaWxlaW5wdXQuX3N0YXRlIGlzIE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IHJhaXNlcyBSdW50aW1lRXJyb3Igd2l0aCBhIG1lYW5pbmdmdWwgZXJyb3IgbWVzc2FnZQorICAgICAgICAgICBhbmQgZG9lcyBub3QgbW9kaWZ5IGZpbGVpbnB1dC5fc3RhdGUiIiIKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IE5vbmUKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgZmlsZWlucHV0LmlzZmlyc3RsaW5lKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgoIm5vIGFjdGl2ZSBpbnB1dCgpIiwpLCBjbS5leGNlcHRpb24uYXJncykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmlsZWlucHV0Ll9zdGF0ZSkKKworICAgIGRlZiB0ZXN0X3N0YXRlX2lzX25vdF9Ob25lKHNlbGYpOgorICAgICAgICAiIiJUZXN0cyBmaWxlaW5wdXQuaXNmaXJzdGxpbmUoKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgbm90IE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IGludm9rZXMgZmlsZWlucHV0Ll9zdGF0ZS5pc2ZpcnN0bGluZSgpIGV4YWN0bHkgb25jZSwKKyAgICAgICAgICAgcmV0dXJucyB3aGF0ZXZlciBpdCByZXR1cm5zLCBhbmQgZG9lcyBub3QgbW9kaWZ5IGZpbGVpbnB1dC5fc3RhdGUKKyAgICAgICAgICAgdG8gcG9pbnQgdG8gYSBkaWZmZXJlbnQgb2JqZWN0LiIiIgorICAgICAgICBpc2ZpcnN0bGluZV9yZXR2YWwgPSBvYmplY3QoKQorICAgICAgICBpbnN0YW5jZSA9IE1vY2tGaWxlSW5wdXQoKQorICAgICAgICBpbnN0YW5jZS5yZXR1cm5fdmFsdWVzWyJpc2ZpcnN0bGluZSJdID0gaXNmaXJzdGxpbmVfcmV0dmFsCisgICAgICAgIGZpbGVpbnB1dC5fc3RhdGUgPSBpbnN0YW5jZQorICAgICAgICByZXR2YWwgPSBmaWxlaW5wdXQuaXNmaXJzdGxpbmUoKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0bHlPbmVJbnZvY2F0aW9uKGluc3RhbmNlLCAiaXNmaXJzdGxpbmUiKQorICAgICAgICBzZWxmLmFzc2VydElzKHJldHZhbCwgaXNmaXJzdGxpbmVfcmV0dmFsKQorICAgICAgICBzZWxmLmFzc2VydElzKGZpbGVpbnB1dC5fc3RhdGUsIGluc3RhbmNlKQorCitjbGFzcyBUZXN0X2ZpbGVpbnB1dF9pc3N0ZGluKEJhc2VGaWxlSW5wdXRHbG9iYWxNZXRob2RzVGVzdCk6CisgICAgIiIiVW5pdCB0ZXN0cyBmb3IgZmlsZWlucHV0Lmlzc3RkaW4oKSIiIgorCisgICAgZGVmIHRlc3Rfc3RhdGVfaXNfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0Lmlzc3RkaW4oKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgTm9uZS4KKyAgICAgICAgICAgRW5zdXJlIHRoYXQgaXQgcmFpc2VzIFJ1bnRpbWVFcnJvciB3aXRoIGEgbWVhbmluZ2Z1bCBlcnJvciBtZXNzYWdlCisgICAgICAgICAgIGFuZCBkb2VzIG5vdCBtb2RpZnkgZmlsZWlucHV0Ll9zdGF0ZSIiIgorICAgICAgICBmaWxlaW5wdXQuX3N0YXRlID0gTm9uZQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvcikgYXMgY206CisgICAgICAgICAgICBmaWxlaW5wdXQuaXNzdGRpbigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoKCJubyBhY3RpdmUgaW5wdXQoKSIsKSwgY20uZXhjZXB0aW9uLmFyZ3MpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGZpbGVpbnB1dC5fc3RhdGUpCisKKyAgICBkZWYgdGVzdF9zdGF0ZV9pc19ub3RfTm9uZShzZWxmKToKKyAgICAgICAgIiIiVGVzdHMgZmlsZWlucHV0Lmlzc3RkaW4oKSB3aGVuIGZpbGVpbnB1dC5fc3RhdGUgaXMgbm90IE5vbmUuCisgICAgICAgICAgIEVuc3VyZSB0aGF0IGl0IGludm9rZXMgZmlsZWlucHV0Ll9zdGF0ZS5pc3N0ZGluKCkgZXhhY3RseSBvbmNlLAorICAgICAgICAgICByZXR1cm5zIHdoYXRldmVyIGl0IHJldHVybnMsIGFuZCBkb2VzIG5vdCBtb2RpZnkgZmlsZWlucHV0Ll9zdGF0ZQorICAgICAgICAgICB0byBwb2ludCB0byBhIGRpZmZlcmVudCBvYmplY3QuIiIiCisgICAgICAgIGlzc3RkaW5fcmV0dmFsID0gb2JqZWN0KCkKKyAgICAgICAgaW5zdGFuY2UgPSBNb2NrRmlsZUlucHV0KCkKKyAgICAgICAgaW5zdGFuY2UucmV0dXJuX3ZhbHVlc1siaXNzdGRpbiJdID0gaXNzdGRpbl9yZXR2YWwKKyAgICAgICAgZmlsZWlucHV0Ll9zdGF0ZSA9IGluc3RhbmNlCisgICAgICAgIHJldHZhbCA9IGZpbGVpbnB1dC5pc3N0ZGluKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdGx5T25lSW52b2NhdGlvbihpbnN0YW5jZSwgImlzc3RkaW4iKQorICAgICAgICBzZWxmLmFzc2VydElzKHJldHZhbCwgaXNzdGRpbl9yZXR2YWwpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZmlsZWlucHV0Ll9zdGF0ZSwgaW5zdGFuY2UpCisKK2NsYXNzIEludm9jYXRpb25SZWNvcmRlcjoKKyAgICBkZWYgX19pbml0X18oc2VsZik6CisgICAgICAgIHNlbGYuaW52b2NhdGlvbl9jb3VudCA9IDAKKyAgICBkZWYgX19jYWxsX18oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgc2VsZi5pbnZvY2F0aW9uX2NvdW50ICs9IDEKKyAgICAgICAgc2VsZi5sYXN0X2ludm9jYXRpb24gPSAoYXJncywga3dhcmdzKQorCitjbGFzcyBUZXN0X2hvb2tfY29tcHJlc3NlZCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIiIiVW5pdCB0ZXN0cyBmb3IgZmlsZWlucHV0Lmhvb2tfY29tcHJlc3NlZCgpIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuZmFrZV9vcGVuID0gSW52b2NhdGlvblJlY29yZGVyKCkKKworICAgIGRlZiB0ZXN0X2VtcHR5X3N0cmluZyhzZWxmKToKKyAgICAgICAgc2VsZi5kb190ZXN0X3VzZV9idWlsdGluX29wZW4oIiIsIDEpCisKKyAgICBkZWYgdGVzdF9ub19leHQoc2VsZik6CisgICAgICAgIHNlbGYuZG9fdGVzdF91c2VfYnVpbHRpbl9vcGVuKCJhYmNkIiwgMikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGd6aXAsICJSZXF1aXJlcyBnemlwIGFuZCB6bGliIikKKyAgICBkZWYgdGVzdF9nel9leHRfZmFrZShzZWxmKToKKyAgICAgICAgb3JpZ2luYWxfb3BlbiA9IGd6aXAub3BlbgorICAgICAgICBnemlwLm9wZW4gPSBzZWxmLmZha2Vfb3BlbgorICAgICAgICB0cnk6CisgICAgICAgICAgICByZXN1bHQgPSBmaWxlaW5wdXQuaG9va19jb21wcmVzc2VkKCJ0ZXN0Lmd6IiwgMykKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGd6aXAub3BlbiA9IG9yaWdpbmFsX29wZW4KKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZmFrZV9vcGVuLmludm9jYXRpb25fY291bnQsIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5mYWtlX29wZW4ubGFzdF9pbnZvY2F0aW9uLCAoKCJ0ZXN0Lmd6IiwgMyksIHt9KSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGJ6MiwgIlJlcXVpcmVzIGJ6MiIpCisgICAgZGVmIHRlc3RfYnoyX2V4dF9mYWtlKHNlbGYpOgorICAgICAgICBvcmlnaW5hbF9vcGVuID0gYnoyLkJaMkZpbGUKKyAgICAgICAgYnoyLkJaMkZpbGUgPSBzZWxmLmZha2Vfb3BlbgorICAgICAgICB0cnk6CisgICAgICAgICAgICByZXN1bHQgPSBmaWxlaW5wdXQuaG9va19jb21wcmVzc2VkKCJ0ZXN0LmJ6MiIsIDQpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBiejIuQloyRmlsZSA9IG9yaWdpbmFsX29wZW4KKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZmFrZV9vcGVuLmludm9jYXRpb25fY291bnQsIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5mYWtlX29wZW4ubGFzdF9pbnZvY2F0aW9uLCAoKCJ0ZXN0LmJ6MiIsIDQpLCB7fSkpCisKKyAgICBkZWYgdGVzdF9ibGFoX2V4dChzZWxmKToKKyAgICAgICAgc2VsZi5kb190ZXN0X3VzZV9idWlsdGluX29wZW4oImFiY2QuYmxhaCIsIDUpCisKKyAgICBkZWYgdGVzdF9nel9leHRfYnVpbHRpbihzZWxmKToKKyAgICAgICAgc2VsZi5kb190ZXN0X3VzZV9idWlsdGluX29wZW4oImFiY2QuR3oiLCA2KQorCisgICAgZGVmIHRlc3RfYnoyX2V4dF9idWlsdGluKHNlbGYpOgorICAgICAgICBzZWxmLmRvX3Rlc3RfdXNlX2J1aWx0aW5fb3BlbigiYWJjZC5CejIiLCA3KQorCisgICAgZGVmIGRvX3Rlc3RfdXNlX2J1aWx0aW5fb3BlbihzZWxmLCBmaWxlbmFtZSwgbW9kZSk6CisgICAgICAgIG9yaWdpbmFsX29wZW4gPSBzZWxmLnJlcGxhY2VfYnVpbHRpbl9vcGVuKHNlbGYuZmFrZV9vcGVuKQorICAgICAgICB0cnk6CisgICAgICAgICAgICByZXN1bHQgPSBmaWxlaW5wdXQuaG9va19jb21wcmVzc2VkKGZpbGVuYW1lLCBtb2RlKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc2VsZi5yZXBsYWNlX2J1aWx0aW5fb3BlbihvcmlnaW5hbF9vcGVuKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5mYWtlX29wZW4uaW52b2NhdGlvbl9jb3VudCwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmZha2Vfb3Blbi5sYXN0X2ludm9jYXRpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgKChmaWxlbmFtZSwgbW9kZSksIHt9KSkKKworICAgIEBzdGF0aWNtZXRob2QKKyAgICBkZWYgcmVwbGFjZV9idWlsdGluX29wZW4obmV3X29wZW5fZnVuYyk6CisgICAgICAgIG9yaWdpbmFsX29wZW4gPSBidWlsdGlucy5vcGVuCisgICAgICAgIGJ1aWx0aW5zLm9wZW4gPSBuZXdfb3Blbl9mdW5jCisgICAgICAgIHJldHVybiBvcmlnaW5hbF9vcGVuCisKK2NsYXNzIFRlc3RfaG9va19lbmNvZGVkKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAiIiJVbml0IHRlc3RzIGZvciBmaWxlaW5wdXQuaG9va19lbmNvZGVkKCkiIiIKKworICAgIGRlZiB0ZXN0KHNlbGYpOgorICAgICAgICBlbmNvZGluZyA9IG9iamVjdCgpCisgICAgICAgIHJlc3VsdCA9IGZpbGVpbnB1dC5ob29rX2VuY29kZWQoZW5jb2RpbmcpCisKKyAgICAgICAgZmFrZV9vcGVuID0gSW52b2NhdGlvblJlY29yZGVyKCkKKyAgICAgICAgb3JpZ2luYWxfb3BlbiA9IGJ1aWx0aW5zLm9wZW4KKyAgICAgICAgYnVpbHRpbnMub3BlbiA9IGZha2Vfb3BlbgorICAgICAgICB0cnk6CisgICAgICAgICAgICBmaWxlbmFtZSA9IG9iamVjdCgpCisgICAgICAgICAgICBtb2RlID0gb2JqZWN0KCkKKyAgICAgICAgICAgIG9wZW5fcmVzdWx0ID0gcmVzdWx0KGZpbGVuYW1lLCBtb2RlKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgYnVpbHRpbnMub3BlbiA9IG9yaWdpbmFsX29wZW4KKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZha2Vfb3Blbi5pbnZvY2F0aW9uX2NvdW50LCAxKQorCisgICAgICAgIGFyZ3MsIGt3YXJncyA9IGZha2Vfb3Blbi5sYXN0X2ludm9jYXRpb24KKyAgICAgICAgc2VsZi5hc3NlcnRJcyhhcmdzWzBdLCBmaWxlbmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhhcmdzWzFdLCBtb2RlKQorICAgICAgICBzZWxmLmFzc2VydElzKGt3YXJncy5wb3AoJ2VuY29kaW5nJyksIGVuY29kaW5nKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGt3YXJncykKIAogZGVmIHRlc3RfbWFpbigpOgotICAgIHJ1bl91bml0dGVzdChCdWZmZXJTaXplc1Rlc3RzLCBGaWxlSW5wdXRUZXN0cykKKyAgICBydW5fdW5pdHRlc3QoCisgICAgICAgIEJ1ZmZlclNpemVzVGVzdHMsCisgICAgICAgIEZpbGVJbnB1dFRlc3RzLAorICAgICAgICBUZXN0X2ZpbGVpbnB1dF9pbnB1dCwKKyAgICAgICAgVGVzdF9maWxlaW5wdXRfY2xvc2UsCisgICAgICAgIFRlc3RfZmlsZWlucHV0X25leHRmaWxlLAorICAgICAgICBUZXN0X2ZpbGVpbnB1dF9maWxlbmFtZSwKKyAgICAgICAgVGVzdF9maWxlaW5wdXRfbGluZW5vLAorICAgICAgICBUZXN0X2ZpbGVpbnB1dF9maWxlbGluZW5vLAorICAgICAgICBUZXN0X2ZpbGVpbnB1dF9maWxlbm8sCisgICAgICAgIFRlc3RfZmlsZWlucHV0X2lzZmlyc3RsaW5lLAorICAgICAgICBUZXN0X2ZpbGVpbnB1dF9pc3N0ZGluLAorICAgICAgICBUZXN0X2hvb2tfY29tcHJlc3NlZCwKKyAgICAgICAgVGVzdF9ob29rX2VuY29kZWQsCisgICAgKQogCiBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2ZpbGVpby5weSBiL0xpYi90ZXN0L3Rlc3RfZmlsZWlvLnB5CmluZGV4IDM1ODhmYjQuLjk4NTRkMGMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZmlsZWlvLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZmlsZWlvLnB5CkBAIC0yLDYgKzIsNyBAQAogCiBpbXBvcnQgc3lzCiBpbXBvcnQgb3MKK2ltcG9ydCBpbwogaW1wb3J0IGVycm5vCiBpbXBvcnQgdW5pdHRlc3QKIGZyb20gYXJyYXkgaW1wb3J0IGFycmF5CkBAIC0zMzksMTAgKzM0MCwxMCBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCAxMCkKICAgICAgICAgZi50cnVuY2F0ZSg1KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCAxMCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnNlZWsoMCwgb3MuU0VFS19FTkQpLCA1KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYuc2VlaygwLCBpby5TRUVLX0VORCksIDUpCiAgICAgICAgIGYudHJ1bmNhdGUoMTUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi50ZWxsKCksIDUpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5zZWVrKDAsIG9zLlNFRUtfRU5EKSwgMTUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5zZWVrKDAsIGlvLlNFRUtfRU5EKSwgMTUpCiAgICAgICAgIGYuY2xvc2UoKQogCiAgICAgZGVmIHRlc3RUcnVuY2F0ZU9uV2luZG93cyhzZWxmKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZmxvYXQucHkgYi9MaWIvdGVzdC90ZXN0X2Zsb2F0LnB5CmluZGV4IDRkN2JiYmEuLmRjMGMyOTEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZmxvYXQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9mbG9hdC5weQpAQCAtODgsNyArODgsNyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmbG9hdCwgIiAgLTB4My5wLTEgICIpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZsb2F0LCAiICArMHgzLnAtMSAgIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbG9hdCgiICAyNS5lLTEgICIpLCAyLjUpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3VwcG9ydC5mY21wKGZsb2F0KCIgIC4yNWUtMSAgIiksIC4wMjUpLCAwKQorICAgICAgICBzZWxmLmFzc2VydEFsbW9zdEVxdWFsKGZsb2F0KCIgIC4yNWUtMSAgIiksIC4wMjUpCiAKICAgICBkZWYgdGVzdF9mbG9hdGNvbnZlcnNpb24oc2VsZik6CiAgICAgICAgICMgTWFrZSBzdXJlIHRoYXQgY2FsbHMgdG8gX19mbG9hdF9fKCkgd29yayBwcm9wZXJseQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9mb3JtYXQucHkgYi9MaWIvdGVzdC90ZXN0X2Zvcm1hdC5weQppbmRleCA3ZmE5NTBkLi43MzQ1YjMwIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Zvcm1hdC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Zvcm1hdC5weQpAQCAtMjYzLDYgKzI2MywyNiBAQAogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByYWlzZSBUZXN0RmFpbGVkKCciJSpkIiUobWF4c2l6ZSwgLTEyNykgc2hvdWxkIGZhaWwnKQogCisgICAgZGVmIHRlc3Rfbm9uX2FzY2lpKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdCgiYWJjIiwgIlx1MjAwNzw1IiksICJhYmNcdTIwMDdcdTIwMDciKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdCgxMjMsICJcdTIwMDc8NSIpLCAiMTIzXHUyMDA3XHUyMDA3IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXQoMTIuMywgIlx1MjAwNzw2IiksICIxMi4zXHUyMDA3XHUyMDA3IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXQoMGosICJcdTIwMDc8NCIpLCAiMGpcdTIwMDdcdTIwMDciKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdCgxKzJqLCAiXHUyMDA3PDgiKSwgIigxKzJqKVx1MjAwN1x1MjAwNyIpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXQoImFiYyIsICJcdTIwMDc+NSIpLCAiXHUyMDA3XHUyMDA3YWJjIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXQoMTIzLCAiXHUyMDA3PjUiKSwgIlx1MjAwN1x1MjAwNzEyMyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0KDEyLjMsICJcdTIwMDc+NiIpLCAiXHUyMDA3XHUyMDA3MTIuMyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0KDErMmosICJcdTIwMDc+OCIpLCAiXHUyMDA3XHUyMDA3KDErMmopIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXQoMGosICJcdTIwMDc+NCIpLCAiXHUyMDA3XHUyMDA3MGoiKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0KCJhYmMiLCAiXHUyMDA3XjUiKSwgIlx1MjAwN2FiY1x1MjAwNyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0KDEyMywgIlx1MjAwN141IiksICJcdTIwMDcxMjNcdTIwMDciKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdCgxMi4zLCAiXHUyMDA3XjYiKSwgIlx1MjAwNzEyLjNcdTIwMDciKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdCgxKzJqLCAiXHUyMDA3XjgiKSwgIlx1MjAwNygxKzJqKVx1MjAwNyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm9ybWF0KDBqLCAiXHUyMDA3XjQiKSwgIlx1MjAwNzBqXHUyMDA3IikKKworCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoRm9ybWF0VGVzdCkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9mdHBsaWIucHkgYi9MaWIvdGVzdC90ZXN0X2Z0cGxpYi5weQppbmRleCA3MWJjMjNlLi43MDI4ZjQ2IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Z0cGxpYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Z0cGxpYi5weQpAQCAtMjIsMTAgKzIyLDI1IEBACiB0aHJlYWRpbmcgPSBzdXBwb3J0LmltcG9ydF9tb2R1bGUoJ3RocmVhZGluZycpCiAKICMgdGhlIGR1bW15IGRhdGEgcmV0dXJuZWQgYnkgc2VydmVyIG92ZXIgdGhlIGRhdGEgY2hhbm5lbCB3aGVuCi0jIFJFVFIsIExJU1QgYW5kIE5MU1QgY29tbWFuZHMgYXJlIGlzc3VlZAorIyBSRVRSLCBMSVNULCBOTFNULCBNTFNEIGNvbW1hbmRzIGFyZSBpc3N1ZWQKIFJFVFJfREFUQSA9ICdhYmNkZTEyMzQ1XHJcbicgKiAxMDAwCiBMSVNUX0RBVEEgPSAnZm9vXHJcbmJhclxyXG4nCiBOTFNUX0RBVEEgPSAnZm9vXHJcbmJhclxyXG4nCitNTFNEX0RBVEEgPSAoInR5cGU9Y2RpcjtwZXJtPWVsO3VuaXF1ZT09a2VWTzErWkY0OyB0ZXN0XHJcbiIKKyAgICAgICAgICAgICAidHlwZT1wZGlyO3Blcm09ZTt1bmlxdWU9PWtlVk8xK2Q/MzsgLi5cclxuIgorICAgICAgICAgICAgICJ0eXBlPU9TLnVuaXg9c2xpbms6L2Zvb2JhcjtwZXJtPTt1bmlxdWU9PWtlVk8xKzRHNDsgZm9vYmFyXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1PUy51bml4PWNoci0xMy8yOTtwZXJtPTt1bmlxdWU9PWtlVk8xKzVHNDsgZGV2aWNlXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1PUy51bml4PWJsay0xMS8xMDg7cGVybT07dW5pcXVlPT1rZVZPMSs2RzQ7IGJsb2NrXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1maWxlO3Blcm09YXdyO3VuaXF1ZT09a2VWTzErOEc0OyB3cml0YWJsZVxyXG4iCisgICAgICAgICAgICAgInR5cGU9ZGlyO3Blcm09Y3BtZWw7dW5pcXVlPT1rZVZPMSs3RzQ7IHByb21pc2N1b3VzXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1kaXI7cGVybT07dW5pcXVlPT1rZVZPMSsxdDI7IG5vLWV4ZWNcclxuIgorICAgICAgICAgICAgICJ0eXBlPWZpbGU7cGVybT1yO3VuaXF1ZT09a2VWTzErRUc0OyB0d28gd29yZHNcclxuIgorICAgICAgICAgICAgICJ0eXBlPWZpbGU7cGVybT1yO3VuaXF1ZT09a2VWTzErSUg0OyAgbGVhZGluZyBzcGFjZVxyXG4iCisgICAgICAgICAgICAgInR5cGU9ZmlsZTtwZXJtPXI7dW5pcXVlPT1rZVZPMSsxRzQ7IGZpbGUxXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1kaXI7cGVybT1jcG1lbDt1bmlxdWU9PWtlVk8xKzdHNDsgaW5jb21pbmdcclxuIgorICAgICAgICAgICAgICJ0eXBlPWZpbGU7cGVybT1yO3VuaXF1ZT09a2VWTzErMUc0OyBmaWxlMlxyXG4iCisgICAgICAgICAgICAgInR5cGU9ZmlsZTtwZXJtPXI7dW5pcXVlPT1rZVZPMSsxRzQ7IGZpbGUzXHJcbiIKKyAgICAgICAgICAgICAidHlwZT1maWxlO3Blcm09cjt1bmlxdWU9PWtlVk8xKzFHNDsgZmlsZTRcclxuIikKIAogCiBjbGFzcyBEdW1teURUUEhhbmRsZXIoYXN5bmNoYXQuYXN5bmNfY2hhdCk6CkBAIC00OSw2ICs2NCwxMSBAQAogICAgICAgICAgICAgc2VsZi5kdHBfY29ubl9jbG9zZWQgPSBUcnVlCiAKICAgICBkZWYgcHVzaChzZWxmLCB3aGF0KToKKyAgICAgICAgaWYgc2VsZi5iYXNlY2xhc3MubmV4dF9kYXRhIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgd2hhdCA9IHNlbGYuYmFzZWNsYXNzLm5leHRfZGF0YQorICAgICAgICAgICAgc2VsZi5iYXNlY2xhc3MubmV4dF9kYXRhID0gTm9uZQorICAgICAgICBpZiBub3Qgd2hhdDoKKyAgICAgICAgICAgIHJldHVybiBzZWxmLmNsb3NlX3doZW5fZG9uZSgpCiAgICAgICAgIHN1cGVyKER1bW15RFRQSGFuZGxlciwgc2VsZikucHVzaCh3aGF0LmVuY29kZSgnYXNjaWknKSkKIAogICAgIGRlZiBoYW5kbGVfZXJyb3Ioc2VsZik6CkBAIC02OSw2ICs4OSw3IEBACiAgICAgICAgIHNlbGYubGFzdF9yZWNlaXZlZF9jbWQgPSBOb25lCiAgICAgICAgIHNlbGYubGFzdF9yZWNlaXZlZF9kYXRhID0gJycKICAgICAgICAgc2VsZi5uZXh0X3Jlc3BvbnNlID0gJycKKyAgICAgICAgc2VsZi5uZXh0X2RhdGEgPSBOb25lCiAgICAgICAgIHNlbGYucmVzdCA9IE5vbmUKICAgICAgICAgc2VsZi5wdXNoKCcyMjAgd2VsY29tZScpCiAKQEAgLTEwNCw3ICsxMjUsNyBAQAogICAgICAgICBhZGRyID0gbGlzdChtYXAoaW50LCBhcmcuc3BsaXQoJywnKSkpCiAgICAgICAgIGlwID0gJyVkLiVkLiVkLiVkJyAldHVwbGUoYWRkcls6NF0pCiAgICAgICAgIHBvcnQgPSAoYWRkcls0XSAqIDI1NikgKyBhZGRyWzVdCi0gICAgICAgIHMgPSBzb2NrZXQuY3JlYXRlX2Nvbm5lY3Rpb24oKGlwLCBwb3J0KSwgdGltZW91dD0xMCkKKyAgICAgICAgcyA9IHNvY2tldC5jcmVhdGVfY29ubmVjdGlvbigoaXAsIHBvcnQpLCB0aW1lb3V0PTIpCiAgICAgICAgIHNlbGYuZHRwID0gc2VsZi5kdHBfaGFuZGxlcihzLCBiYXNlY2xhc3M9c2VsZikKICAgICAgICAgc2VsZi5wdXNoKCcyMDAgYWN0aXZlIGRhdGEgY29ubmVjdGlvbiBlc3RhYmxpc2hlZCcpCiAKQEAgLTEyMiw3ICsxNDMsNyBAQAogICAgIGRlZiBjbWRfZXBydChzZWxmLCBhcmcpOgogICAgICAgICBhZiwgaXAsIHBvcnQgPSBhcmcuc3BsaXQoYXJnWzBdKVsxOi0xXQogICAgICAgICBwb3J0ID0gaW50KHBvcnQpCi0gICAgICAgIHMgPSBzb2NrZXQuY3JlYXRlX2Nvbm5lY3Rpb24oKGlwLCBwb3J0KSwgdGltZW91dD0xMCkKKyAgICAgICAgcyA9IHNvY2tldC5jcmVhdGVfY29ubmVjdGlvbigoaXAsIHBvcnQpLCB0aW1lb3V0PTIpCiAgICAgICAgIHNlbGYuZHRwID0gc2VsZi5kdHBfaGFuZGxlcihzLCBiYXNlY2xhc3M9c2VsZikKICAgICAgICAgc2VsZi5wdXNoKCcyMDAgYWN0aXZlIGRhdGEgY29ubmVjdGlvbiBlc3RhYmxpc2hlZCcpCiAKQEAgLTIxMyw2ICsyMzQsMTQgQEAKICAgICAgICAgc2VsZi5kdHAucHVzaChOTFNUX0RBVEEpCiAgICAgICAgIHNlbGYuZHRwLmNsb3NlX3doZW5fZG9uZSgpCiAKKyAgICBkZWYgY21kX29wdHMoc2VsZiwgYXJnKToKKyAgICAgICAgc2VsZi5wdXNoKCcyMDAgb3B0cyBvaycpCisKKyAgICBkZWYgY21kX21sc2Qoc2VsZiwgYXJnKToKKyAgICAgICAgc2VsZi5wdXNoKCcxMjUgbWxzZCBvaycpCisgICAgICAgIHNlbGYuZHRwLnB1c2goTUxTRF9EQVRBKQorICAgICAgICBzZWxmLmR0cC5jbG9zZV93aGVuX2RvbmUoKQorCiAKIGNsYXNzIER1bW15RlRQU2VydmVyKGFzeW5jb3JlLmRpc3BhdGNoZXIsIHRocmVhZGluZy5UaHJlYWQpOgogCkBAIC0yNzQsMTEgKzMwMywxMSBAQAogICAgICAgICBfc3NsX2Nsb3NpbmcgPSBGYWxzZQogCiAgICAgICAgIGRlZiBzZWN1cmVfY29ubmVjdGlvbihzZWxmKToKLSAgICAgICAgICAgIHNlbGYuZGVsX2NoYW5uZWwoKQogICAgICAgICAgICAgc29ja2V0ID0gc3NsLndyYXBfc29ja2V0KHNlbGYuc29ja2V0LCBzdXBwcmVzc19yYWdnZWRfZW9mcz1GYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0ZmlsZT1DRVJURklMRSwgc2VydmVyX3NpZGU9VHJ1ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb19oYW5kc2hha2Vfb25fY29ubmVjdD1GYWxzZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzc2xfdmVyc2lvbj1zc2wuUFJPVE9DT0xfU1NMdjIzKQorICAgICAgICAgICAgc2VsZi5kZWxfY2hhbm5lbCgpCiAgICAgICAgICAgICBzZWxmLnNldF9zb2NrZXQoc29ja2V0KQogICAgICAgICAgICAgc2VsZi5fc3NsX2FjY2VwdGluZyA9IFRydWUKIApAQCAtMzEzLDcgKzM0MiwxMCBAQAogICAgICAgICAgICAgICAgICMgaHR0cDovL3d3dy5tYWlsLWFyY2hpdmUuY29tL29wZW5zc2wtdXNlcnNAb3BlbnNzbC5vcmcvbXNnNjA3MTAuaHRtbAogICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgIHNlbGYuX3NzbF9jbG9zaW5nID0gRmFsc2UKLSAgICAgICAgICAgIHN1cGVyKFNTTENvbm5lY3Rpb24sIHNlbGYpLmNsb3NlKCkKKyAgICAgICAgICAgIGlmIGdldGF0dHIoc2VsZiwgJ19jY2MnLCBGYWxzZSkgPT0gRmFsc2U6CisgICAgICAgICAgICAgICAgc3VwZXIoU1NMQ29ubmVjdGlvbiwgc2VsZikuY2xvc2UoKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBwYXNzCiAKICAgICAgICAgZGVmIGhhbmRsZV9yZWFkX2V2ZW50KHNlbGYpOgogICAgICAgICAgICAgaWYgc2VsZi5fc3NsX2FjY2VwdGluZzoKQEAgLTM4MSwxMiArNDEzLDE4IEBACiAgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBjb25uKToKICAgICAgICAgICAgIER1bW15RlRQSGFuZGxlci5fX2luaXRfXyhzZWxmLCBjb25uKQogICAgICAgICAgICAgc2VsZi5zZWN1cmVfZGF0YV9jaGFubmVsID0gRmFsc2UKKyAgICAgICAgICAgIHNlbGYuX2NjYyA9IEZhbHNlCiAKICAgICAgICAgZGVmIGNtZF9hdXRoKHNlbGYsIGxpbmUpOgogICAgICAgICAgICAgIiIiU2V0IHVwIHNlY3VyZSBjb250cm9sIGNoYW5uZWwuIiIiCiAgICAgICAgICAgICBzZWxmLnB1c2goJzIzNCBBVVRIIFRMUyBzdWNjZXNzZnVsJykKICAgICAgICAgICAgIHNlbGYuc2VjdXJlX2Nvbm5lY3Rpb24oKQogCisgICAgICAgIGRlZiBjbWRfY2NjKHNlbGYsIGxpbmUpOgorICAgICAgICAgICAgc2VsZi5wdXNoKCcyMjAgUmV2ZXJ0aW5nIGJhY2sgdG8gY2xlYXItdGV4dCcpCisgICAgICAgICAgICBzZWxmLl9jY2MgPSBUcnVlCisgICAgICAgICAgICBzZWxmLl9kb19zc2xfc2h1dGRvd24oKQorCiAgICAgICAgIGRlZiBjbWRfcGJzeihzZWxmLCBsaW5lKToKICAgICAgICAgICAgICIiIk5lZ290aWF0ZSBzaXplIG9mIGJ1ZmZlciBmb3Igc2VjdXJlIGRhdGEgdHJhbnNmZXIuCiAgICAgICAgICAgICBGb3IgVExTL1NTTCB0aGUgb25seSB2YWxpZCB2YWx1ZSBmb3IgdGhlIHBhcmFtZXRlciBpcyAnMCcuCkBAIC00MTYsMTMgKzQ1NCwxNyBAQAogICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgc2VsZi5zZXJ2ZXIgPSBEdW1teUZUUFNlcnZlcigoSE9TVCwgMCkpCiAgICAgICAgIHNlbGYuc2VydmVyLnN0YXJ0KCkKLSAgICAgICAgc2VsZi5jbGllbnQgPSBmdHBsaWIuRlRQKHRpbWVvdXQ9MTApCisgICAgICAgIHNlbGYuY2xpZW50ID0gZnRwbGliLkZUUCh0aW1lb3V0PTIpCiAgICAgICAgIHNlbGYuY2xpZW50LmNvbm5lY3Qoc2VsZi5zZXJ2ZXIuaG9zdCwgc2VsZi5zZXJ2ZXIucG9ydCkKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKICAgICAgICAgc2VsZi5jbGllbnQuY2xvc2UoKQogICAgICAgICBzZWxmLnNlcnZlci5zdG9wKCkKIAorICAgIGRlZiBjaGVja19kYXRhKHNlbGYsIHJlY2VpdmVkLCBleHBlY3RlZCk6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHJlY2VpdmVkKSwgbGVuKGV4cGVjdGVkKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNlaXZlZCwgZXhwZWN0ZWQpCisKICAgICBkZWYgdGVzdF9nZXR3ZWxjb21lKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2xpZW50LmdldHdlbGNvbWUoKSwgJzIyMCB3ZWxjb21lJykKIApAQCAtNTA0LDcgKzU0Niw3IEBACiAgICAgICAgICAgICByZWNlaXZlZC5hcHBlbmQoZGF0YS5kZWNvZGUoJ2FzY2lpJykpCiAgICAgICAgIHJlY2VpdmVkID0gW10KICAgICAgICAgc2VsZi5jbGllbnQucmV0cmJpbmFyeSgncmV0cicsIGNhbGxiYWNrKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcnLmpvaW4ocmVjZWl2ZWQpLCBSRVRSX0RBVEEpCisgICAgICAgIHNlbGYuY2hlY2tfZGF0YSgnJy5qb2luKHJlY2VpdmVkKSwgUkVUUl9EQVRBKQogCiAgICAgZGVmIHRlc3RfcmV0cmJpbmFyeV9yZXN0KHNlbGYpOgogICAgICAgICBkZWYgY2FsbGJhY2soZGF0YSk6CkBAIC01MTIsMjAgKzU1NCwxNyBAQAogICAgICAgICBmb3IgcmVzdCBpbiAoMCwgMTAsIDIwKToKICAgICAgICAgICAgIHJlY2VpdmVkID0gW10KICAgICAgICAgICAgIHNlbGYuY2xpZW50LnJldHJiaW5hcnkoJ3JldHInLCBjYWxsYmFjaywgcmVzdD1yZXN0KQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnJy5qb2luKHJlY2VpdmVkKSwgUkVUUl9EQVRBW3Jlc3Q6XSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSdyZXN0IHRlc3QgY2FzZSAlZCAlZCAlZCcgJSAocmVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKCcnLmpvaW4ocmVjZWl2ZWQpKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKFJFVFJfREFUQVtyZXN0Ol0pKSkKKyAgICAgICAgICAgIHNlbGYuY2hlY2tfZGF0YSgnJy5qb2luKHJlY2VpdmVkKSwgUkVUUl9EQVRBW3Jlc3Q6XSkKIAogICAgIGRlZiB0ZXN0X3JldHJsaW5lcyhzZWxmKToKICAgICAgICAgcmVjZWl2ZWQgPSBbXQogICAgICAgICBzZWxmLmNsaWVudC5yZXRybGluZXMoJ3JldHInLCByZWNlaXZlZC5hcHBlbmQpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJycuam9pbihyZWNlaXZlZCksIFJFVFJfREFUQS5yZXBsYWNlKCdcclxuJywgJycpKQorICAgICAgICBzZWxmLmNoZWNrX2RhdGEoJycuam9pbihyZWNlaXZlZCksIFJFVFJfREFUQS5yZXBsYWNlKCdcclxuJywgJycpKQogCiAgICAgZGVmIHRlc3Rfc3RvcmJpbmFyeShzZWxmKToKICAgICAgICAgZiA9IGlvLkJ5dGVzSU8oUkVUUl9EQVRBLmVuY29kZSgnYXNjaWknKSkKICAgICAgICAgc2VsZi5jbGllbnQuc3RvcmJpbmFyeSgnc3RvcicsIGYpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5sYXN0X3JlY2VpdmVkX2RhdGEsIFJFVFJfREFUQSkKKyAgICAgICAgc2VsZi5jaGVja19kYXRhKHNlbGYuc2VydmVyLmhhbmRsZXJfaW5zdGFuY2UubGFzdF9yZWNlaXZlZF9kYXRhLCBSRVRSX0RBVEEpCiAgICAgICAgICMgdGVzdCBuZXcgY2FsbGJhY2sgYXJnCiAgICAgICAgIGZsYWcgPSBbXQogICAgICAgICBmLnNlZWsoMCkKQEAgLTU0Miw3ICs1ODEsNyBAQAogICAgIGRlZiB0ZXN0X3N0b3JsaW5lcyhzZWxmKToKICAgICAgICAgZiA9IGlvLkJ5dGVzSU8oUkVUUl9EQVRBLnJlcGxhY2UoJ1xyXG4nLCAnXG4nKS5lbmNvZGUoJ2FzY2lpJykpCiAgICAgICAgIHNlbGYuY2xpZW50LnN0b3JsaW5lcygnc3RvcicsIGYpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5sYXN0X3JlY2VpdmVkX2RhdGEsIFJFVFJfREFUQSkKKyAgICAgICAgc2VsZi5jaGVja19kYXRhKHNlbGYuc2VydmVyLmhhbmRsZXJfaW5zdGFuY2UubGFzdF9yZWNlaXZlZF9kYXRhLCBSRVRSX0RBVEEpCiAgICAgICAgICMgdGVzdCBuZXcgY2FsbGJhY2sgYXJnCiAgICAgICAgIGZsYWcgPSBbXQogICAgICAgICBmLnNlZWsoMCkKQEAgLTU1OCw2ICs1OTcsNjQgQEAKICAgICAgICAgc2VsZi5jbGllbnQuZGlyKGxhbWJkYSB4OiBsLmFwcGVuZCh4KSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnJy5qb2luKGwpLCBMSVNUX0RBVEEucmVwbGFjZSgnXHJcbicsICcnKSkKIAorICAgIGRlZiB0ZXN0X21sc2Qoc2VsZik6CisgICAgICAgIGxpc3Qoc2VsZi5jbGllbnQubWxzZCgpKQorICAgICAgICBsaXN0KHNlbGYuY2xpZW50Lm1sc2QocGF0aD0nLycpKQorICAgICAgICBsaXN0KHNlbGYuY2xpZW50Lm1sc2QocGF0aD0nLycsIGZhY3RzPVsnc2l6ZScsICd0eXBlJ10pKQorCisgICAgICAgIGxzID0gbGlzdChzZWxmLmNsaWVudC5tbHNkKCkpCisgICAgICAgIGZvciBuYW1lLCBmYWN0cyBpbiBsczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShuYW1lLCBzdHIpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZmFjdHMsIGRpY3QpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUobmFtZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3R5cGUnLCBmYWN0cykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3Blcm0nLCBmYWN0cykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3VuaXF1ZScsIGZhY3RzKQorCisgICAgICAgIGRlZiBzZXRfZGF0YShkYXRhKToKKyAgICAgICAgICAgIHNlbGYuc2VydmVyLmhhbmRsZXJfaW5zdGFuY2UubmV4dF9kYXRhID0gZGF0YQorCisgICAgICAgIGRlZiB0ZXN0X2VudHJ5KGxpbmUsIHR5cGU9Tm9uZSwgcGVybT1Ob25lLCB1bmlxdWU9Tm9uZSwgbmFtZT1Ob25lKToKKyAgICAgICAgICAgIHR5cGUgPSAndHlwZScgaWYgdHlwZSBpcyBOb25lIGVsc2UgdHlwZQorICAgICAgICAgICAgcGVybSA9ICdwZXJtJyBpZiBwZXJtIGlzIE5vbmUgZWxzZSBwZXJtCisgICAgICAgICAgICB1bmlxdWUgPSAndW5pcXVlJyBpZiB1bmlxdWUgaXMgTm9uZSBlbHNlIHVuaXF1ZQorICAgICAgICAgICAgbmFtZSA9ICduYW1lJyBpZiBuYW1lIGlzIE5vbmUgZWxzZSBuYW1lCisgICAgICAgICAgICBzZXRfZGF0YShsaW5lKQorICAgICAgICAgICAgX25hbWUsIGZhY3RzID0gbmV4dChzZWxmLmNsaWVudC5tbHNkKCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKF9uYW1lLCBuYW1lKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmYWN0c1sndHlwZSddLCB0eXBlKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmYWN0c1sncGVybSddLCBwZXJtKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmYWN0c1sndW5pcXVlJ10sIHVuaXF1ZSkKKworICAgICAgICAjIHBsYWluCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHlwZTtwZXJtPXBlcm07dW5pcXVlPXVuaXF1ZTsgbmFtZVxyXG4nKQorICAgICAgICAjICI9IiBpbiBmYWN0IHZhbHVlCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHk9cGU7cGVybT1wZXJtO3VuaXF1ZT11bmlxdWU7IG5hbWVcclxuJywgdHlwZT0idHk9cGUiKQorICAgICAgICB0ZXN0X2VudHJ5KCd0eXBlPT10eXBlO3Blcm09cGVybTt1bmlxdWU9dW5pcXVlOyBuYW1lXHJcbicsIHR5cGU9Ij10eXBlIikKKyAgICAgICAgdGVzdF9lbnRyeSgndHlwZT10PXk9cGU7cGVybT1wZXJtO3VuaXF1ZT11bmlxdWU7IG5hbWVcclxuJywgdHlwZT0idD15PXBlIikKKyAgICAgICAgdGVzdF9lbnRyeSgndHlwZT09PT09O3Blcm09cGVybTt1bmlxdWU9dW5pcXVlOyBuYW1lXHJcbicsIHR5cGU9Ij09PT0iKQorICAgICAgICAjIHNwYWNlcyBpbiBuYW1lCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHlwZTtwZXJtPXBlcm07dW5pcXVlPXVuaXF1ZTsgbmEgbWVcclxuJywgbmFtZT0ibmEgbWUiKQorICAgICAgICB0ZXN0X2VudHJ5KCd0eXBlPXR5cGU7cGVybT1wZXJtO3VuaXF1ZT11bmlxdWU7IG5hbWUgXHJcbicsIG5hbWU9Im5hbWUgIikKKyAgICAgICAgdGVzdF9lbnRyeSgndHlwZT10eXBlO3Blcm09cGVybTt1bmlxdWU9dW5pcXVlOyAgbmFtZVxyXG4nLCBuYW1lPSIgbmFtZSIpCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHlwZTtwZXJtPXBlcm07dW5pcXVlPXVuaXF1ZTsgbiBhbSAgZVxyXG4nLCBuYW1lPSJuIGFtICBlIikKKyAgICAgICAgIyAiOyIgaW4gbmFtZQorICAgICAgICB0ZXN0X2VudHJ5KCd0eXBlPXR5cGU7cGVybT1wZXJtO3VuaXF1ZT11bmlxdWU7IG5hO21lXHJcbicsIG5hbWU9Im5hO21lIikKKyAgICAgICAgdGVzdF9lbnRyeSgndHlwZT10eXBlO3Blcm09cGVybTt1bmlxdWU9dW5pcXVlOyA7bmFtZVxyXG4nLCBuYW1lPSI7bmFtZSIpCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHlwZTtwZXJtPXBlcm07dW5pcXVlPXVuaXF1ZTsgO25hbWU7XHJcbicsIG5hbWU9IjtuYW1lOyIpCisgICAgICAgIHRlc3RfZW50cnkoJ3R5cGU9dHlwZTtwZXJtPXBlcm07dW5pcXVlPXVuaXF1ZTsgOzs7O1xyXG4nLCBuYW1lPSI7Ozs7IikKKyAgICAgICAgIyBjYXNlIHNlbnNpdGl2ZW5lc3MKKyAgICAgICAgc2V0X2RhdGEoJ1R5cGU9dHlwZTtUeVBlPXBlcm07VU5JUVVFPXVuaXF1ZTsgbmFtZVxyXG4nKQorICAgICAgICBfbmFtZSwgZmFjdHMgPSBuZXh0KHNlbGYuY2xpZW50Lm1sc2QoKSkKKyAgICAgICAgZm9yIHggaW4gZmFjdHM6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoeC5pc2xvd2VyKCkpCisgICAgICAgICMgbm8gZGF0YSAoZGlyZWN0b3J5IGVtcHR5KQorICAgICAgICBzZXRfZGF0YSgnJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3RvcEl0ZXJhdGlvbiwgbmV4dCwgc2VsZi5jbGllbnQubWxzZCgpKQorICAgICAgICBzZXRfZGF0YSgnJykKKyAgICAgICAgZm9yIHggaW4gc2VsZi5jbGllbnQubWxzZCgpOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJ1bmV4cGVjdGVkIGRhdGEgJXMiICUgZGF0YSkKKwogICAgIGRlZiB0ZXN0X21ha2Vwb3J0KHNlbGYpOgogICAgICAgICB3aXRoIHNlbGYuY2xpZW50Lm1ha2Vwb3J0KCk6CiAgICAgICAgICAgICAjIElQdjQgaXMgaW4gdXNlLCBqdXN0IG1ha2Ugc3VyZSBzZW5kX2VwcnQgaGFzIG5vdCBiZWVuIHVzZWQKQEAgLTU4NCw3ICs2ODEsNyBAQAogICAgICAgICAgICAgcmV0dXJuIFRydWUKIAogICAgICAgICAjIGJhc2UgdGVzdAotICAgICAgICB3aXRoIGZ0cGxpYi5GVFAodGltZW91dD0xMCkgYXMgc2VsZi5jbGllbnQ6CisgICAgICAgIHdpdGggZnRwbGliLkZUUCh0aW1lb3V0PTIpIGFzIHNlbGYuY2xpZW50OgogICAgICAgICAgICAgc2VsZi5jbGllbnQuY29ubmVjdChzZWxmLnNlcnZlci5ob3N0LCBzZWxmLnNlcnZlci5wb3J0KQogICAgICAgICAgICAgc2VsZi5jbGllbnQuc2VuZGNtZCgnbm9vcCcpCiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNfY2xpZW50X2Nvbm5lY3RlZCgpKQpAQCAtNTkyLDcgKzY4OSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaXNfY2xpZW50X2Nvbm5lY3RlZCgpKQogCiAgICAgICAgICMgUVVJVCBzZW50IGluc2lkZSB0aGUgd2l0aCBibG9jawotICAgICAgICB3aXRoIGZ0cGxpYi5GVFAodGltZW91dD0xMCkgYXMgc2VsZi5jbGllbnQ6CisgICAgICAgIHdpdGggZnRwbGliLkZUUCh0aW1lb3V0PTIpIGFzIHNlbGYuY2xpZW50OgogICAgICAgICAgICAgc2VsZi5jbGllbnQuY29ubmVjdChzZWxmLnNlcnZlci5ob3N0LCBzZWxmLnNlcnZlci5wb3J0KQogICAgICAgICAgICAgc2VsZi5jbGllbnQuc2VuZGNtZCgnbm9vcCcpCiAgICAgICAgICAgICBzZWxmLmNsaWVudC5xdWl0KCkKQEAgLTYwMiw3ICs2OTksNyBAQAogICAgICAgICAjIGZvcmNlIGEgd3JvbmcgcmVzcG9uc2UgY29kZSB0byBiZSBzZW50IG9uIFFVSVQ6IGVycm9yX3Blcm0KICAgICAgICAgIyBpcyBleHBlY3RlZCBhbmQgdGhlIGNvbm5lY3Rpb24gaXMgc3VwcG9zZWQgdG8gYmUgY2xvc2VkCiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHdpdGggZnRwbGliLkZUUCh0aW1lb3V0PTEwKSBhcyBzZWxmLmNsaWVudDoKKyAgICAgICAgICAgIHdpdGggZnRwbGliLkZUUCh0aW1lb3V0PTIpIGFzIHNlbGYuY2xpZW50OgogICAgICAgICAgICAgICAgIHNlbGYuY2xpZW50LmNvbm5lY3Qoc2VsZi5zZXJ2ZXIuaG9zdCwgc2VsZi5zZXJ2ZXIucG9ydCkKICAgICAgICAgICAgICAgICBzZWxmLmNsaWVudC5zZW5kY21kKCdub29wJykKICAgICAgICAgICAgICAgICBzZWxmLnNlcnZlci5oYW5kbGVyX2luc3RhbmNlLm5leHRfcmVzcG9uc2UgPSAnNTUwIGVycm9yIG9uIHF1aXQnCkBAIC02MTYsNiArNzEzLDMwIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5sYXN0X3JlY2VpdmVkX2NtZCwgJ3F1aXQnKQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzX2NsaWVudF9jb25uZWN0ZWQoKSkKIAorICAgIGRlZiB0ZXN0X3NvdXJjZV9hZGRyZXNzKHNlbGYpOgorICAgICAgICBzZWxmLmNsaWVudC5xdWl0KCkKKyAgICAgICAgcG9ydCA9IHN1cHBvcnQuZmluZF91bnVzZWRfcG9ydCgpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuY2xpZW50LmNvbm5lY3Qoc2VsZi5zZXJ2ZXIuaG9zdCwgc2VsZi5zZXJ2ZXIucG9ydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlX2FkZHJlc3M9KEhPU1QsIHBvcnQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNsaWVudC5zb2NrLmdldHNvY2tuYW1lKClbMV0sIHBvcnQpCisgICAgICAgICAgICBzZWxmLmNsaWVudC5xdWl0KCkKKyAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZToKKyAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gZXJybm8uRUFERFJJTlVTRToKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJjb3VsZG4ndCBiaW5kIHRvIHBvcnQgJWQiICUgcG9ydCkKKyAgICAgICAgICAgIHJhaXNlCisKKyAgICBkZWYgdGVzdF9zb3VyY2VfYWRkcmVzc19wYXNzaXZlX2Nvbm5lY3Rpb24oc2VsZik6CisgICAgICAgIHBvcnQgPSBzdXBwb3J0LmZpbmRfdW51c2VkX3BvcnQoKQorICAgICAgICBzZWxmLmNsaWVudC5zb3VyY2VfYWRkcmVzcyA9IChIT1NULCBwb3J0KQorICAgICAgICB0cnk6CisgICAgICAgICAgICB3aXRoIHNlbGYuY2xpZW50LnRyYW5zZmVyY21kKCdsaXN0JykgYXMgc29jazoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNvY2suZ2V0c29ja25hbWUoKVsxXSwgcG9ydCkKKyAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZToKKyAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gZXJybm8uRUFERFJJTlVTRToKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJjb3VsZG4ndCBiaW5kIHRvIHBvcnQgJWQiICUgcG9ydCkKKyAgICAgICAgICAgIHJhaXNlCisKICAgICBkZWYgdGVzdF9wYXJzZTI1NyhzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmdHBsaWIucGFyc2UyNTcoJzI1NyAiL2Zvby9iYXIiJyksICcvZm9vL2JhcicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnRwbGliLnBhcnNlMjU3KCcyNTcgIi9mb28vYmFyIiBjcmVhdGVkJyksICcvZm9vL2JhcicpCkBAIC02MzIsNyArNzUzLDcgQEAKIGNsYXNzIFRlc3RJUHY2RW52aXJvbm1lbnQoVGVzdENhc2UpOgogCiAgICAgZGVmIHNldFVwKHNlbGYpOgotICAgICAgICBzZWxmLnNlcnZlciA9IER1bW15RlRQU2VydmVyKChIT1NULCAwKSwgYWY9c29ja2V0LkFGX0lORVQ2KQorICAgICAgICBzZWxmLnNlcnZlciA9IER1bW15RlRQU2VydmVyKCgnOjoxJywgMCksIGFmPXNvY2tldC5BRl9JTkVUNikKICAgICAgICAgc2VsZi5zZXJ2ZXIuc3RhcnQoKQogICAgICAgICBzZWxmLmNsaWVudCA9IGZ0cGxpYi5GVFAoKQogICAgICAgICBzZWxmLmNsaWVudC5jb25uZWN0KHNlbGYuc2VydmVyLmhvc3QsIHNlbGYuc2VydmVyLnBvcnQpCkBAIC02NjEsNiArNzgyLDcgQEAKICAgICAgICAgICAgICAgICByZWNlaXZlZC5hcHBlbmQoZGF0YS5kZWNvZGUoJ2FzY2lpJykpCiAgICAgICAgICAgICByZWNlaXZlZCA9IFtdCiAgICAgICAgICAgICBzZWxmLmNsaWVudC5yZXRyYmluYXJ5KCdyZXRyJywgY2FsbGJhY2spCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbignJy5qb2luKHJlY2VpdmVkKSksIGxlbihSRVRSX0RBVEEpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnJy5qb2luKHJlY2VpdmVkKSwgUkVUUl9EQVRBKQogICAgICAgICBzZWxmLmNsaWVudC5zZXRfcGFzdihUcnVlKQogICAgICAgICByZXRyKCkKQEAgLTY3Niw3ICs3OTgsNyBAQAogICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgc2VsZi5zZXJ2ZXIgPSBEdW1teVRMU19GVFBTZXJ2ZXIoKEhPU1QsIDApKQogICAgICAgICBzZWxmLnNlcnZlci5zdGFydCgpCi0gICAgICAgIHNlbGYuY2xpZW50ID0gZnRwbGliLkZUUF9UTFModGltZW91dD0xMCkKKyAgICAgICAgc2VsZi5jbGllbnQgPSBmdHBsaWIuRlRQX1RMUyh0aW1lb3V0PTIpCiAgICAgICAgIHNlbGYuY2xpZW50LmNvbm5lY3Qoc2VsZi5zZXJ2ZXIuaG9zdCwgc2VsZi5zZXJ2ZXIucG9ydCkKICAgICAgICAgIyBlbmFibGUgVExTCiAgICAgICAgIHNlbGYuY2xpZW50LmF1dGgoKQpAQCAtNjg5LDcgKzgxMSw3IEBACiAgICAgZGVmIHNldFVwKHNlbGYpOgogICAgICAgICBzZWxmLnNlcnZlciA9IER1bW15VExTX0ZUUFNlcnZlcigoSE9TVCwgMCkpCiAgICAgICAgIHNlbGYuc2VydmVyLnN0YXJ0KCkKLSAgICAgICAgc2VsZi5jbGllbnQgPSBmdHBsaWIuRlRQX1RMUyh0aW1lb3V0PTEwKQorICAgICAgICBzZWxmLmNsaWVudCA9IGZ0cGxpYi5GVFBfVExTKHRpbWVvdXQ9MikKICAgICAgICAgc2VsZi5jbGllbnQuY29ubmVjdChzZWxmLnNlcnZlci5ob3N0LCBzZWxmLnNlcnZlci5wb3J0KQogCiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgpAQCAtNzQ5LDcgKzg3MSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ0cGxpYi5GVFBfVExTLCBjZXJ0ZmlsZT1DRVJURklMRSwKICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5ZmlsZT1DRVJURklMRSwgY29udGV4dD1jdHgpCiAKLSAgICAgICAgc2VsZi5jbGllbnQgPSBmdHBsaWIuRlRQX1RMUyhjb250ZXh0PWN0eCwgdGltZW91dD0xMCkKKyAgICAgICAgc2VsZi5jbGllbnQgPSBmdHBsaWIuRlRQX1RMUyhjb250ZXh0PWN0eCwgdGltZW91dD0yKQogICAgICAgICBzZWxmLmNsaWVudC5jb25uZWN0KHNlbGYuc2VydmVyLmhvc3QsIHNlbGYuc2VydmVyLnBvcnQpCiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SXNJbnN0YW5jZShzZWxmLmNsaWVudC5zb2NrLCBzc2wuU1NMU29ja2V0KQogICAgICAgICBzZWxmLmNsaWVudC5hdXRoKCkKQEAgLTc2MSw2ICs4ODMsMTMgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMoc29jay5jb250ZXh0LCBjdHgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc29jaywgc3NsLlNTTFNvY2tldCkKIAorICAgIGRlZiB0ZXN0X2NjYyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgc2VsZi5jbGllbnQuY2NjKQorICAgICAgICBzZWxmLmNsaWVudC5sb2dpbihzZWN1cmU9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHNlbGYuY2xpZW50LnNvY2ssIHNzbC5TU0xTb2NrZXQpCisgICAgICAgIHNlbGYuY2xpZW50LmNjYygpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNlbGYuY2xpZW50LnNvY2sudW53cmFwKQorCiAKIGNsYXNzIFRlc3RUaW1lb3V0cyhUZXN0Q2FzZSk6CiAKQEAgLTg1NywxMyArOTg2LDggQEAKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHRlc3RzID0gW1Rlc3RGVFBDbGFzcywgVGVzdFRpbWVvdXRzXQotICAgIGlmIHNvY2tldC5oYXNfaXB2NjoKLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgRHVtbXlGVFBTZXJ2ZXIoKEhPU1QsIDApLCBhZj1zb2NrZXQuQUZfSU5FVDYpCi0gICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6Ci0gICAgICAgICAgICBwYXNzCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICB0ZXN0cy5hcHBlbmQoVGVzdElQdjZFbnZpcm9ubWVudCkKKyAgICBpZiBzdXBwb3J0LklQVjZfRU5BQkxFRDoKKyAgICAgICAgdGVzdHMuYXBwZW5kKFRlc3RJUHY2RW52aXJvbm1lbnQpCiAKICAgICBpZiBzc2wgaXMgbm90IE5vbmU6CiAgICAgICAgIHRlc3RzLmV4dGVuZChbVGVzdFRMU19GVFBDbGFzc01peGluLCBUZXN0VExTX0ZUUENsYXNzXSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZnVuY2F0dHJzLnB5IGIvTGliL3Rlc3QvdGVzdF9mdW5jYXR0cnMucHkKaW5kZXggNGQxOTM2OC4uYzhlZDgzMCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9mdW5jYXR0cnMucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9mdW5jYXR0cnMucHkKQEAgLTIsNiArMiwxNSBAQAogaW1wb3J0IHR5cGVzCiBpbXBvcnQgdW5pdHRlc3QKIAorCitkZWYgZ2xvYmFsX2Z1bmN0aW9uKCk6CisgICAgZGVmIGlubmVyX2Z1bmN0aW9uKCk6CisgICAgICAgIGNsYXNzIExvY2FsQ2xhc3M6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIHJldHVybiBMb2NhbENsYXNzCisgICAgcmV0dXJuIGxhbWJkYTogaW5uZXJfZnVuY3Rpb24KKworCiBjbGFzcyBGdW5jQXR0cnNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgc2V0VXAoc2VsZik6CiAgICAgICAgIGNsYXNzIEY6CkBAIC05Niw2ICsxMDUsMjQgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmZpLmEuX19uYW1lX18sICdhJykKICAgICAgICAgc2VsZi5jYW5ub3Rfc2V0X2F0dHIoc2VsZi5maS5hLCAiX19uYW1lX18iLCAnYScsIEF0dHJpYnV0ZUVycm9yKQogCisgICAgZGVmIHRlc3RfX19xdWFsbmFtZV9fKHNlbGYpOgorICAgICAgICAjIFBFUCAzMTU1CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5iLl9fcXVhbG5hbWVfXywgJ0Z1bmNBdHRyc1Rlc3Quc2V0VXAuPGxvY2Fscz4uYicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoRnVuY0F0dHJzVGVzdC5zZXRVcC5fX3F1YWxuYW1lX18sICdGdW5jQXR0cnNUZXN0LnNldFVwJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnbG9iYWxfZnVuY3Rpb24uX19xdWFsbmFtZV9fLCAnZ2xvYmFsX2Z1bmN0aW9uJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnbG9iYWxfZnVuY3Rpb24oKS5fX3F1YWxuYW1lX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgJ2dsb2JhbF9mdW5jdGlvbi48bG9jYWxzPi48bGFtYmRhPicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2xvYmFsX2Z1bmN0aW9uKCkoKS5fX3F1YWxuYW1lX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgJ2dsb2JhbF9mdW5jdGlvbi48bG9jYWxzPi5pbm5lcl9mdW5jdGlvbicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2xvYmFsX2Z1bmN0aW9uKCkoKSgpLl9fcXVhbG5hbWVfXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAnZ2xvYmFsX2Z1bmN0aW9uLjxsb2NhbHM+LmlubmVyX2Z1bmN0aW9uLjxsb2NhbHM+LkxvY2FsQ2xhc3MnKQorICAgICAgICBzZWxmLmIuX19xdWFsbmFtZV9fID0gJ2MnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5iLl9fcXVhbG5hbWVfXywgJ2MnKQorICAgICAgICBzZWxmLmIuX19xdWFsbmFtZV9fID0gJ2QnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5iLl9fcXVhbG5hbWVfXywgJ2QnKQorICAgICAgICAjIF9fcXVhbG5hbWVfXyBtdXN0IGJlIGEgc3RyaW5nCisgICAgICAgIHNlbGYuY2Fubm90X3NldF9hdHRyKHNlbGYuYiwgJ19fcXVhbG5hbWVfXycsIDcsIFR5cGVFcnJvcikKKwogICAgIGRlZiB0ZXN0X19fY29kZV9fKHNlbGYpOgogICAgICAgICBudW1fb25lLCBudW1fdHdvID0gNywgOAogICAgICAgICBkZWYgYSgpOiBwYXNzCkBAIC0zMTUsMTEgKzM0MiwzNyBAQAogICAgICAgICBzZWxmLmFzc2VydFRydWUocy5fX2Z1bmNfXyBpcyBmKQogCiAKK2NsYXNzIEJ1aWx0aW5GdW5jdGlvblByb3BlcnRpZXNUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAjIFhYWCBOb3Qgc3VyZSB3aGVyZSB0aGlzIHNob3VsZCByZWFsbHkgZ28gc2luY2UgSSBjYW4ndCBmaW5kIGEKKyAgICAjIHRlc3QgbW9kdWxlIHNwZWNpZmljYWxseSBmb3IgYnVpbHRpbl9mdW5jdGlvbl9vcl9tZXRob2QuCisKKyAgICBkZWYgdGVzdF9idWlsdGluX19xdWFsbmFtZV9fKHNlbGYpOgorICAgICAgICBpbXBvcnQgdGltZQorCisgICAgICAgICMgYnVpbHRpbiBmdW5jdGlvbjoKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4uX19xdWFsbmFtZV9fLCAnbGVuJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0aW1lLnRpbWUuX19xdWFsbmFtZV9fLCAndGltZScpCisKKyAgICAgICAgIyBidWlsdGluIGNsYXNzbWV0aG9kOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRpY3QuZnJvbWtleXMuX19xdWFsbmFtZV9fLCAnZGljdC5mcm9ta2V5cycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmxvYXQuX19nZXRmb3JtYXRfXy5fX3F1YWxuYW1lX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgJ2Zsb2F0Ll9fZ2V0Zm9ybWF0X18nKQorCisgICAgICAgICMgYnVpbHRpbiBzdGF0aWNtZXRob2Q6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyLm1ha2V0cmFucy5fX3F1YWxuYW1lX18sICdzdHIubWFrZXRyYW5zJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChieXRlcy5tYWtldHJhbnMuX19xdWFsbmFtZV9fLCAnYnl0ZXMubWFrZXRyYW5zJykKKworICAgICAgICAjIGJ1aWx0aW4gYm91bmQgaW5zdGFuY2UgbWV0aG9kOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFsxLCAyLCAzXS5hcHBlbmQuX19xdWFsbmFtZV9fLCAnbGlzdC5hcHBlbmQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHsnZm9vJzogJ2Jhcid9LnBvcC5fX3F1YWxuYW1lX18sICdkaWN0LnBvcCcpCisKKwogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KEZ1bmN0aW9uUHJvcGVydGllc1Rlc3QsIEluc3RhbmNlbWV0aG9kQXR0clRlc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBcmJpdHJhcnlGdW5jdGlvbkF0dHJUZXN0LCBGdW5jdGlvbkRpY3RzVGVzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZ1bmN0aW9uRG9jc3RyaW5nVGVzdCwgQ2VsbFRlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGF0aWNNZXRob2RBdHRyc1Rlc3QpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGF0aWNNZXRob2RBdHRyc1Rlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdWlsdGluRnVuY3Rpb25Qcm9wZXJ0aWVzVGVzdCkKIAogaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKICAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9mdW5jdG9vbHMucHkgYi9MaWIvdGVzdC90ZXN0X2Z1bmN0b29scy5weQppbmRleCAyNzBjYWIwLi5jNDkxMGE3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Z1bmN0b29scy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Z1bmN0b29scy5weQpAQCAtMjI2LDYgKzIyNiw3IEBACiAgICAgICAgIHNlbGYuY2hlY2tfd3JhcHBlcih3cmFwcGVyLCBmKQogICAgICAgICBzZWxmLmFzc2VydElzKHdyYXBwZXIuX193cmFwcGVkX18sIGYpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX25hbWVfXywgJ2YnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuX19xdWFsbmFtZV9fLCBmLl9fcXVhbG5hbWVfXykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLmF0dHIsICdUaGlzIGlzIGFsc28gYSB0ZXN0JykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLl9fYW5ub3RhdGlvbnNfX1snYSddLCAnVGhpcyBpcyBhIG5ldyBhbm5vdGF0aW9uJykKICAgICAgICAgc2VsZi5hc3NlcnROb3RJbignYicsIHdyYXBwZXIuX19hbm5vdGF0aW9uc19fKQpAQCAtMjQ2LDYgKzI0Nyw3IEBACiAgICAgICAgIGZ1bmN0b29scy51cGRhdGVfd3JhcHBlcih3cmFwcGVyLCBmLCAoKSwgKCkpCiAgICAgICAgIHNlbGYuY2hlY2tfd3JhcHBlcih3cmFwcGVyLCBmLCAoKSwgKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX25hbWVfXywgJ3dyYXBwZXInKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHdyYXBwZXIuX19xdWFsbmFtZV9fLCBmLl9fcXVhbG5hbWVfXykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLl9fZG9jX18sIE5vbmUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX2Fubm90YXRpb25zX18sIHt9KQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhhc2F0dHIod3JhcHBlciwgJ2F0dHInKSkKQEAgLTI2Myw2ICsyNjUsNyBAQAogICAgICAgICBmdW5jdG9vbHMudXBkYXRlX3dyYXBwZXIod3JhcHBlciwgZiwgYXNzaWduLCB1cGRhdGUpCiAgICAgICAgIHNlbGYuY2hlY2tfd3JhcHBlcih3cmFwcGVyLCBmLCBhc3NpZ24sIHVwZGF0ZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLl9fbmFtZV9fLCAnd3JhcHBlcicpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwod3JhcHBlci5fX3F1YWxuYW1lX18sIGYuX19xdWFsbmFtZV9fKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuX19kb2NfXywgTm9uZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLmF0dHIsICdUaGlzIGlzIGEgZGlmZmVyZW50IHRlc3QnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuZGljdF9hdHRyLCBmLmRpY3RfYXR0cikKQEAgLTMwOSwxNyArMzEyLDE4IEBACiAgICAgICAgIGRlZiB3cmFwcGVyKCk6CiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuY2hlY2tfd3JhcHBlcih3cmFwcGVyLCBmKQotICAgICAgICByZXR1cm4gd3JhcHBlcgorICAgICAgICByZXR1cm4gd3JhcHBlciwgZgogCiAgICAgZGVmIHRlc3RfZGVmYXVsdF91cGRhdGUoc2VsZik6Ci0gICAgICAgIHdyYXBwZXIgPSBzZWxmLl9kZWZhdWx0X3VwZGF0ZSgpCisgICAgICAgIHdyYXBwZXIsIGYgPSBzZWxmLl9kZWZhdWx0X3VwZGF0ZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX25hbWVfXywgJ2YnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuX19xdWFsbmFtZV9fLCBmLl9fcXVhbG5hbWVfXykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLmF0dHIsICdUaGlzIGlzIGFsc28gYSB0ZXN0JykKIAogICAgIEB1bml0dGVzdC5za2lwSWYobm90IHN5cy5mbGFncy5vcHRpbWl6ZSA8PSAxLAogICAgICAgICAgICAgICAgICAgICAgIkRvY3N0cmluZ3MgYXJlIG9taXR0ZWQgd2l0aCAtTzIgYW5kIGFib3ZlIikKICAgICBkZWYgdGVzdF9kZWZhdWx0X3VwZGF0ZV9kb2Moc2VsZik6Ci0gICAgICAgIHdyYXBwZXIgPSBzZWxmLl9kZWZhdWx0X3VwZGF0ZSgpCisgICAgICAgIHdyYXBwZXIsIF8gPSBzZWxmLl9kZWZhdWx0X3VwZGF0ZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX2RvY19fLCAnVGhpcyBpcyBhIHRlc3QnKQogCiAgICAgZGVmIHRlc3Rfbm9fdXBkYXRlKHNlbGYpOgpAQCAtMzMyLDYgKzMzNiw3IEBACiAgICAgICAgICAgICBwYXNzCiAgICAgICAgIHNlbGYuY2hlY2tfd3JhcHBlcih3cmFwcGVyLCBmLCAoKSwgKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX25hbWVfXywgJ3dyYXBwZXInKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHdyYXBwZXIuX19xdWFsbmFtZV9fLCBmLl9fcXVhbG5hbWVfXykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3cmFwcGVyLl9fZG9jX18sIE5vbmUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaGFzYXR0cih3cmFwcGVyLCAnYXR0cicpKQogCkBAIC0zNTEsNiArMzU2LDcgQEAKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5jaGVja193cmFwcGVyKHdyYXBwZXIsIGYsIGFzc2lnbiwgdXBkYXRlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuX19uYW1lX18sICd3cmFwcGVyJykKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh3cmFwcGVyLl9fcXVhbG5hbWVfXywgZi5fX3F1YWxuYW1lX18pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5fX2RvY19fLCBOb25lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHdyYXBwZXIuYXR0ciwgJ1RoaXMgaXMgYSBkaWZmZXJlbnQgdGVzdCcpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwod3JhcHBlci5kaWN0X2F0dHIsIGYuZGljdF9hdHRyKQpAQCAtNDM2LDE5ICs0NDIsODIgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmZ1bmMoYWRkLCBkKSwgIiIuam9pbihkLmtleXMoKSkpCiAKIGNsYXNzIFRlc3RDbXBUb0tleSh1bml0dGVzdC5UZXN0Q2FzZSk6CisKICAgICBkZWYgdGVzdF9jbXBfdG9fa2V5KHNlbGYpOgorICAgICAgICBkZWYgY21wMSh4LCB5KToKKyAgICAgICAgICAgIHJldHVybiAoeCA+IHkpIC0gKHggPCB5KQorICAgICAgICBrZXkgPSBmdW5jdG9vbHMuY21wX3RvX2tleShjbXAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGtleSgzKSwga2V5KDMpKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIoa2V5KDMpLCBrZXkoMSkpCisgICAgICAgIGRlZiBjbXAyKHgsIHkpOgorICAgICAgICAgICAgcmV0dXJuIGludCh4KSAtIGludCh5KQorICAgICAgICBrZXkgPSBmdW5jdG9vbHMuY21wX3RvX2tleShjbXAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGtleSg0LjApLCBrZXkoJzQnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzKGtleSgyKSwga2V5KCczNScpKQorCisgICAgZGVmIHRlc3RfY21wX3RvX2tleV9hcmd1bWVudHMoc2VsZik6CisgICAgICAgIGRlZiBjbXAxKHgsIHkpOgorICAgICAgICAgICAgcmV0dXJuICh4ID4geSkgLSAoeCA8IHkpCisgICAgICAgIGtleSA9IGZ1bmN0b29scy5jbXBfdG9fa2V5KG15Y21wPWNtcDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoa2V5KG9iaj0zKSwga2V5KG9iaj0zKSkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGtleShvYmo9MyksIGtleShvYmo9MSkpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoKFR5cGVFcnJvciwgQXR0cmlidXRlRXJyb3IpKToKKyAgICAgICAgICAgIGtleSgzKSA+IDEgICAgIyByaHMgaXMgbm90IGEgSyBvYmplY3QKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcygoVHlwZUVycm9yLCBBdHRyaWJ1dGVFcnJvcikpOgorICAgICAgICAgICAgMSA8IGtleSgzKSAgICAjIGxocyBpcyBub3QgYSBLIG9iamVjdAorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBrZXkgPSBmdW5jdG9vbHMuY21wX3RvX2tleSgpICAgICAgICAgICAgICMgdG9vIGZldyBhcmdzCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIGtleSA9IGZ1bmN0b29scy5jbXBfdG9fa2V5KGNtcDEsIE5vbmUpICAgIyB0b28gbWFueSBhcmdzCisgICAgICAgIGtleSA9IGZ1bmN0b29scy5jbXBfdG9fa2V5KGNtcDEpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIGtleSgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyB0b28gZmV3IGFyZ3MKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAga2V5KE5vbmUsIE5vbmUpICAgICAgICAgICAgICAgICAgICAgICAgICAjIHRvbyBtYW55IGFyZ3MKKworICAgIGRlZiB0ZXN0X2JhZF9jbXAoc2VsZik6CisgICAgICAgIGRlZiBjbXAxKHgsIHkpOgorICAgICAgICAgICAgcmFpc2UgWmVyb0RpdmlzaW9uRXJyb3IKKyAgICAgICAga2V5ID0gZnVuY3Rvb2xzLmNtcF90b19rZXkoY21wMSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhaZXJvRGl2aXNpb25FcnJvcik6CisgICAgICAgICAgICBrZXkoMykgPiBrZXkoMSkKKworICAgICAgICBjbGFzcyBCYWRDbXA6CisgICAgICAgICAgICBkZWYgX19sdF9fKHNlbGYsIG90aGVyKToKKyAgICAgICAgICAgICAgICByYWlzZSBaZXJvRGl2aXNpb25FcnJvcgorICAgICAgICBkZWYgY21wMSh4LCB5KToKKyAgICAgICAgICAgIHJldHVybiBCYWRDbXAoKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFplcm9EaXZpc2lvbkVycm9yKToKKyAgICAgICAgICAgIGtleSgzKSA+IGtleSgxKQorCisgICAgZGVmIHRlc3Rfb2JqX2ZpZWxkKHNlbGYpOgorICAgICAgICBkZWYgY21wMSh4LCB5KToKKyAgICAgICAgICAgIHJldHVybiAoeCA+IHkpIC0gKHggPCB5KQorICAgICAgICBrZXkgPSBmdW5jdG9vbHMuY21wX3RvX2tleShteWNtcD1jbXAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGtleSg1MCkub2JqLCA1MCkKKworICAgIGRlZiB0ZXN0X3NvcnRfaW50KHNlbGYpOgogICAgICAgICBkZWYgbXljbXAoeCwgeSk6CiAgICAgICAgICAgICByZXR1cm4geSAtIHgKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb3J0ZWQocmFuZ2UoNSksIGtleT1mdW5jdG9vbHMuY21wX3RvX2tleShteWNtcCkpLAogICAgICAgICAgICAgICAgICAgICAgICAgIFs0LCAzLCAyLCAxLCAwXSkKIAorICAgIGRlZiB0ZXN0X3NvcnRfaW50X3N0cihzZWxmKToKKyAgICAgICAgZGVmIG15Y21wKHgsIHkpOgorICAgICAgICAgICAgeCwgeSA9IGludCh4KSwgaW50KHkpCisgICAgICAgICAgICByZXR1cm4gKHggPiB5KSAtICh4IDwgeSkKKyAgICAgICAgdmFsdWVzID0gWzUsICczJywgNywgMiwgJzAnLCAnMScsIDQsICcxMCcsIDFdCisgICAgICAgIHZhbHVlcyA9IHNvcnRlZCh2YWx1ZXMsIGtleT1mdW5jdG9vbHMuY21wX3RvX2tleShteWNtcCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW2ludCh2YWx1ZSkgZm9yIHZhbHVlIGluIHZhbHVlc10sCisgICAgICAgICAgICAgICAgICAgICAgICAgWzAsIDEsIDEsIDIsIDMsIDQsIDUsIDcsIDEwXSkKKwogICAgIGRlZiB0ZXN0X2hhc2goc2VsZik6CiAgICAgICAgIGRlZiBteWNtcCh4LCB5KToKICAgICAgICAgICAgIHJldHVybiB5IC0geAogICAgICAgICBrZXkgPSBmdW5jdG9vbHMuY21wX3RvX2tleShteWNtcCkKICAgICAgICAgayA9IGtleSgxMCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBoYXNoLCBrKQotICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzaW5zdGFuY2UoaywgY29sbGVjdGlvbnMuSGFzaGFibGUpKQorICAgICAgICBzZWxmLmFzc2VydE5vdElzSW5zdGFuY2UoaywgY29sbGVjdGlvbnMuSGFzaGFibGUpCiAKIGNsYXNzIFRlc3RUb3RhbE9yZGVyaW5nKHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtNjcxLDYgKzc0MCwyMiBAQAogICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhJbmRleEVycm9yKToKICAgICAgICAgICAgICAgICBmdW5jKDE1KQogCisgICAgZGVmIHRlc3RfbHJ1X3dpdGhfdHlwZXMoc2VsZik6CisgICAgICAgIGZvciBtYXhzaXplIGluIChOb25lLCAxMDApOgorICAgICAgICAgICAgQGZ1bmN0b29scy5scnVfY2FjaGUobWF4c2l6ZT1tYXhzaXplLCB0eXBlZD1UcnVlKQorICAgICAgICAgICAgZGVmIHNxdWFyZSh4KToKKyAgICAgICAgICAgICAgICByZXR1cm4geCAqIHgKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3F1YXJlKDMpLCA5KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0eXBlKHNxdWFyZSgzKSksIHR5cGUoOSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNxdWFyZSgzLjApLCA5LjApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHR5cGUoc3F1YXJlKDMuMCkpLCB0eXBlKDkuMCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNxdWFyZSh4PTMpLCA5KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0eXBlKHNxdWFyZSh4PTMpKSwgdHlwZSg5KSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3F1YXJlKHg9My4wKSwgOS4wKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0eXBlKHNxdWFyZSh4PTMuMCkpLCB0eXBlKDkuMCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNxdWFyZS5jYWNoZV9pbmZvKCkuaGl0cywgNCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3F1YXJlLmNhY2hlX2luZm8oKS5taXNzZXMsIDQpCisKIGRlZiB0ZXN0X21haW4odmVyYm9zZT1Ob25lKToKICAgICB0ZXN0X2NsYXNzZXMgPSAoCiAgICAgICAgIFRlc3RQYXJ0aWFsLApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9mdXR1cmUucHkgYi9MaWIvdGVzdC90ZXN0X2Z1dHVyZS5weQppbmRleCBjNjY4OWExLi4zYTI1ZWIxIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2Z1dHVyZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X2Z1dHVyZS5weQpAQCAtMTMsMTQgKzEzLDE0IEBACiBjbGFzcyBGdXR1cmVUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKIAogICAgIGRlZiB0ZXN0X2Z1dHVyZTEoc2VsZik6Ci0gICAgICAgIHN1cHBvcnQudW5sb2FkKCd0ZXN0X2Z1dHVyZTEnKQotICAgICAgICBmcm9tIHRlc3QgaW1wb3J0IHRlc3RfZnV0dXJlMQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRlc3RfZnV0dXJlMS5yZXN1bHQsIDYpCisgICAgICAgIHN1cHBvcnQudW5sb2FkKCdmdXR1cmVfdGVzdDEnKQorICAgICAgICBmcm9tIHRlc3QgaW1wb3J0IGZ1dHVyZV90ZXN0MQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZ1dHVyZV90ZXN0MS5yZXN1bHQsIDYpCiAKICAgICBkZWYgdGVzdF9mdXR1cmUyKHNlbGYpOgotICAgICAgICBzdXBwb3J0LnVubG9hZCgndGVzdF9mdXR1cmUyJykKLSAgICAgICAgZnJvbSB0ZXN0IGltcG9ydCB0ZXN0X2Z1dHVyZTIKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0ZXN0X2Z1dHVyZTIucmVzdWx0LCA2KQorICAgICAgICBzdXBwb3J0LnVubG9hZCgnZnV0dXJlX3Rlc3QyJykKKyAgICAgICAgZnJvbSB0ZXN0IGltcG9ydCBmdXR1cmVfdGVzdDIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmdXR1cmVfdGVzdDIucmVzdWx0LCA2KQogCiAgICAgZGVmIHRlc3RfZnV0dXJlMyhzZWxmKToKICAgICAgICAgc3VwcG9ydC51bmxvYWQoJ3Rlc3RfZnV0dXJlMycpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2djLnB5IGIvTGliL3Rlc3QvdGVzdF9nYy5weQppbmRleCAxMDBjNzY3Li4xOTMxM2RiIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2djLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZ2MucHkKQEAgLTEsNSArMSw2IEBACiBpbXBvcnQgdW5pdHRlc3QKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCB2ZXJib3NlLCBydW5fdW5pdHRlc3QsIHN0cmlwX3B5dGhvbl9zdGRlcnIKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCAodmVyYm9zZSwgcmVmY291bnRfdGVzdCwgcnVuX3VuaXR0ZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmlwX3B5dGhvbl9zdGRlcnIpCiBpbXBvcnQgc3lzCiBpbXBvcnQgZ2MKIGltcG9ydCB3ZWFrcmVmCkBAIC0xNzUsNiArMTc2LDcgQEAKICAgICAgICAgZGVsIGQKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnYy5jb2xsZWN0KCksIDIpCiAKKyAgICBAcmVmY291bnRfdGVzdAogICAgIGRlZiB0ZXN0X2ZyYW1lKHNlbGYpOgogICAgICAgICBkZWYgZigpOgogICAgICAgICAgICAgZnJhbWUgPSBzeXMuX2dldGZyYW1lKCkKQEAgLTI0Miw2ICsyNDQsNyBAQAogICAgICMgRm9yIGV4YW1wbGUsIGRpc3Bvc2VkIHR1cGxlcyBhcmUgbm90IGZyZWVkLCBidXQgcmV1c2VkLgogICAgICMgVG8gbWluaW1pemUgdmFyaWF0aW9ucywgdGhvdWdoLCB3ZSBmaXJzdCBzdG9yZSB0aGUgZ2V0X2NvdW50KCkgcmVzdWx0cwogICAgICMgYW5kIGNoZWNrIHRoZW0gYXQgdGhlIGVuZC4KKyAgICBAcmVmY291bnRfdGVzdAogICAgIGRlZiB0ZXN0X2dldF9jb3VudChzZWxmKToKICAgICAgICAgZ2MuY29sbGVjdCgpCiAgICAgICAgIGEsIGIsIGMgPSBnYy5nZXRfY291bnQoKQpAQCAtMjU1LDYgKzI1OCw3IEBACiAgICAgICAgICMgY3JlYXRlZCAodGhlIGxpc3QpLgogICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIoZCwgYSkKIAorICAgIEByZWZjb3VudF90ZXN0CiAgICAgZGVmIHRlc3RfY29sbGVjdF9nZW5lcmF0aW9ucyhzZWxmKToKICAgICAgICAgZ2MuY29sbGVjdCgpCiAgICAgICAgICMgVGhpcyBvYmplY3Qgd2lsbCAidHJpY2tsZSIgaW50byBnZW5lcmF0aW9uIE4gKyAxIGFmdGVyCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2dkYi5weSBiL0xpYi90ZXN0L3Rlc3RfZ2RiLnB5CmluZGV4IDY1MWFhZWMuLmQ1MDdhMTIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZ2RiLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZ2RiLnB5CkBAIC0zMTUsNyArMzE1LDcgQEAKIGZvbyA9IEZvbygpCiBmb28uYW5faW50ID0gNDIKIGlkKGZvbyknJycpCi0gICAgICAgIG0gPSByZS5tYXRjaChyJzxGb29cKGFuX2ludD00MlwpIGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLCBnZGJfcmVwcikKKyAgICAgICAgbSA9IHJlLm1hdGNoKHInPEZvb1woYW5faW50PTQyXCkgYXQgcmVtb3RlIDB4LT9bMC05YS1mXSs+JywgZ2RiX3JlcHIpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtLAogICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSdVbmV4cGVjdGVkIG5ldy1zdHlsZSBjbGFzcyByZW5kZXJpbmcgJXInICUgZ2RiX3JlcHIpCiAKQEAgLTMyOCw3ICszMjgsNyBAQAogZm9vICs9IFsxLCAyLCAzXQogZm9vLmFuX2ludCA9IDQyCiBpZChmb28pJycnKQotICAgICAgICBtID0gcmUubWF0Y2gocic8Rm9vXChhbl9pbnQ9NDJcKSBhdCByZW1vdGUgMHhbMC05YS1mXSs+JywgZ2RiX3JlcHIpCisgICAgICAgIG0gPSByZS5tYXRjaChyJzxGb29cKGFuX2ludD00MlwpIGF0IHJlbW90ZSAweC0/WzAtOWEtZl0rPicsIGdkYl9yZXByKQogCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtLAogICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSdVbmV4cGVjdGVkIG5ldy1zdHlsZSBjbGFzcyByZW5kZXJpbmcgJXInICUgZ2RiX3JlcHIpCkBAIC0zNDMsNyArMzQzLDcgQEAKIGZvbyA9IEZvbygoMSwgMiwgMykpCiBmb28uYW5faW50ID0gNDIKIGlkKGZvbyknJycpCi0gICAgICAgIG0gPSByZS5tYXRjaChyJzxGb29cKGFuX2ludD00MlwpIGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLCBnZGJfcmVwcikKKyAgICAgICAgbSA9IHJlLm1hdGNoKHInPEZvb1woYW5faW50PTQyXCkgYXQgcmVtb3RlIDB4LT9bMC05YS1mXSs+JywgZ2RiX3JlcHIpCiAKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG0sCiAgICAgICAgICAgICAgICAgICAgICAgICBtc2c9J1VuZXhwZWN0ZWQgbmV3LXN0eWxlIGNsYXNzIHJlbmRlcmluZyAlcicgJSBnZGJfcmVwcikKQEAgLTM3MCw3ICszNzAsNyBAQAogCiAgICAgICAgICMgTWF0Y2ggYW55dGhpbmcgZm9yIHRoZSB0eXBlIG5hbWU7IDB4REVBREJFRUYgY291bGQgcG9pbnQgdG8KICAgICAgICAgIyBzb21ldGhpbmcgYXJiaXRyYXJ5IChzZWUgIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWU4MzMwKQotICAgICAgICBwYXR0ZXJuID0gJzwuKiBhdCByZW1vdGUgMHhbMC05YS1mXSs+JworICAgICAgICBwYXR0ZXJuID0gJzwuKiBhdCByZW1vdGUgMHgtP1swLTlhLWZdKz4nCiAKICAgICAgICAgbSA9IHJlLm1hdGNoKHBhdHRlcm4sIGdkYl9yZXByKQogICAgICAgICBpZiBub3QgbToKQEAgLTQxNiw3ICs0MTYsNyBAQAogICAgICAgICAjICBodHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlODAzMiNtc2cxMDA1MzcgKQogICAgICAgICBnZGJfcmVwciwgZ2RiX291dHB1dCA9IHNlbGYuZ2V0X2dkYl9yZXByKCdpZChfX2J1aWx0aW5zX18uaGVscCknLCBpbXBvcnRfc2l0ZT1UcnVlKQogCi0gICAgICAgIG0gPSByZS5tYXRjaChyJzxfSGVscGVyIGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLCBnZGJfcmVwcikKKyAgICAgICAgbSA9IHJlLm1hdGNoKHInPF9IZWxwZXIgYXQgcmVtb3RlIDB4LT9bMC05YS1mXSs+JywgZ2RiX3JlcHIpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtLAogICAgICAgICAgICAgICAgICAgICAgICAgbXNnPSdVbmV4cGVjdGVkIHJlbmRlcmluZyAlcicgJSBnZGJfcmVwcikKIApAQCAtNDQ3LDcgKzQ0Nyw3IEBACiBmb28gPSBGb28oKQogZm9vLmFuX2F0dHIgPSBmb28KIGlkKGZvbyknJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZS5tYXRjaCgnPEZvb1woYW5fYXR0cj08XC5cLlwuPlwpIGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLAorICAgICAgICBzZWxmLmFzc2VydFRydWUocmUubWF0Y2goJzxGb29cKGFuX2F0dHI9PFwuXC5cLj5cKSBhdCByZW1vdGUgMHgtP1swLTlhLWZdKz4nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2RiX3JlcHIpLAogICAgICAgICAgICAgICAgICAgICAgICAgJ1VuZXhwZWN0ZWQgZ2RiIHJlcHJlc2VudGF0aW9uOiAlclxuJXMnICUgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIChnZGJfcmVwciwgZ2RiX291dHB1dCkpCkBAIC00NjAsNyArNDYwLDcgQEAKIGZvbyA9IEZvbygpCiBmb28uYW5fYXR0ciA9IGZvbwogaWQoZm9vKScnJykKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlLm1hdGNoKCc8Rm9vXChhbl9hdHRyPTxcLlwuXC4+XCkgYXQgcmVtb3RlIDB4WzAtOWEtZl0rPicsCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZS5tYXRjaCgnPEZvb1woYW5fYXR0cj08XC5cLlwuPlwpIGF0IHJlbW90ZSAweC0/WzAtOWEtZl0rPicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZGJfcmVwciksCiAgICAgICAgICAgICAgICAgICAgICAgICAnVW5leHBlY3RlZCBnZGIgcmVwcmVzZW50YXRpb246ICVyXG4lcycgJSBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGdkYl9yZXByLCBnZGJfb3V0cHV0KSkKQEAgLTQ3NCw3ICs0NzQsNyBAQAogYS5hbl9hdHRyID0gYgogYi5hbl9hdHRyID0gYQogaWQoYSknJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZS5tYXRjaCgnPEZvb1woYW5fYXR0cj08Rm9vXChhbl9hdHRyPTxcLlwuXC4+XCkgYXQgcmVtb3RlIDB4WzAtOWEtZl0rPlwpIGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLAorICAgICAgICBzZWxmLmFzc2VydFRydWUocmUubWF0Y2goJzxGb29cKGFuX2F0dHI9PEZvb1woYW5fYXR0cj08XC5cLlwuPlwpIGF0IHJlbW90ZSAweC0/WzAtOWEtZl0rPlwpIGF0IHJlbW90ZSAweC0/WzAtOWEtZl0rPicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZGJfcmVwciksCiAgICAgICAgICAgICAgICAgICAgICAgICAnVW5leHBlY3RlZCBnZGIgcmVwcmVzZW50YXRpb246ICVyXG4lcycgJSBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGdkYl9yZXByLCBnZGJfb3V0cHV0KSkKQEAgLTUwOSw3ICs1MDksNyBAQAogCiAgICAgZGVmIHRlc3RfYnVpbHRpbl9tZXRob2Qoc2VsZik6CiAgICAgICAgIGdkYl9yZXByLCBnZGJfb3V0cHV0ID0gc2VsZi5nZXRfZ2RiX3JlcHIoJ2ltcG9ydCBzeXM7IGlkKHN5cy5zdGRvdXQucmVhZGxpbmVzKScpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZS5tYXRjaCgnPGJ1aWx0LWluIG1ldGhvZCByZWFkbGluZXMgb2YgX2lvLlRleHRJT1dyYXBwZXIgb2JqZWN0IGF0IHJlbW90ZSAweFswLTlhLWZdKz4nLAorICAgICAgICBzZWxmLmFzc2VydFRydWUocmUubWF0Y2goJzxidWlsdC1pbiBtZXRob2QgcmVhZGxpbmVzIG9mIF9pby5UZXh0SU9XcmFwcGVyIG9iamVjdCBhdCByZW1vdGUgMHgtP1swLTlhLWZdKz4nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2RiX3JlcHIpLAogICAgICAgICAgICAgICAgICAgICAgICAgJ1VuZXhwZWN0ZWQgZ2RiIHJlcHJlc2VudGF0aW9uOiAlclxuJXMnICUgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIChnZGJfcmVwciwgZ2RiX291dHB1dCkpCkBAIC01MjQsNyArNTI0LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrcG9pbnQ9J2J1aWx0aW5faWQnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY21kc19hZnRlcl9icmVha3BvaW50PVsncHJpbnQgKFB5RnJhbWVPYmplY3QqKSgoKFB5Q29kZU9iamVjdCopdiktPmNvX3pvbWJpZWZyYW1lKSddCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZS5tYXRjaCgnLipccytcJDEgPVxzK0ZyYW1lIDB4WzAtOWEtZl0rLCBmb3IgZmlsZSA8c3RyaW5nPiwgbGluZSAzLCBpbiBmb28gXChcKVxzKy4qJywKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlLm1hdGNoKCcuKlxzK1wkMSA9XHMrRnJhbWUgMHgtP1swLTlhLWZdKywgZm9yIGZpbGUgPHN0cmluZz4sIGxpbmUgMywgaW4gZm9vIFwoXClccysuKicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZGJfb3V0cHV0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmUuRE9UQUxMKSwKICAgICAgICAgICAgICAgICAgICAgICAgICdVbmV4cGVjdGVkIGdkYiByZXByZXNlbnRhdGlvbjogJXJcbiVzJyAlIChnZGJfb3V0cHV0LCBnZGJfb3V0cHV0KSkKQEAgLTU4MSw3ICs1ODEsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNtZHNfYWZ0ZXJfYnJlYWtwb2ludD1bJ3B5LXVwJ10pCiAgICAgICAgIHNlbGYuYXNzZXJ0TXVsdGlsaW5lTWF0Y2hlcyhidCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHInJydeLioKLSNbMC05XSsgRnJhbWUgMHhbMC05YS1mXSssIGZvciBmaWxlIC4qZ2RiX3NhbXBsZS5weSwgbGluZSA3LCBpbiBiYXIgXChhPTEsIGI9MiwgYz0zXCkKKyNbMC05XSsgRnJhbWUgMHgtP1swLTlhLWZdKywgZm9yIGZpbGUgLipnZGJfc2FtcGxlLnB5LCBsaW5lIDcsIGluIGJhciBcKGE9MSwgYj0yLCBjPTNcKQogICAgIGJhelwoYSwgYiwgY1wpCiAkJycnKQogCkBAIC02MTAsOSArNjEwLDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbWRzX2FmdGVyX2JyZWFrcG9pbnQ9WydweS11cCcsICdweS1kb3duJ10pCiAgICAgICAgIHNlbGYuYXNzZXJ0TXVsdGlsaW5lTWF0Y2hlcyhidCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHInJydeLioKLSNbMC05XSsgRnJhbWUgMHhbMC05YS1mXSssIGZvciBmaWxlIC4qZ2RiX3NhbXBsZS5weSwgbGluZSA3LCBpbiBiYXIgXChhPTEsIGI9MiwgYz0zXCkKKyNbMC05XSsgRnJhbWUgMHgtP1swLTlhLWZdKywgZm9yIGZpbGUgLipnZGJfc2FtcGxlLnB5LCBsaW5lIDcsIGluIGJhciBcKGE9MSwgYj0yLCBjPTNcKQogICAgIGJhelwoYSwgYiwgY1wpCi0jWzAtOV0rIEZyYW1lIDB4WzAtOWEtZl0rLCBmb3IgZmlsZSAuKmdkYl9zYW1wbGUucHksIGxpbmUgMTAsIGluIGJheiBcKGFyZ3M9XCgxLCAyLCAzXClcKQorI1swLTldKyBGcmFtZSAweC0/WzAtOWEtZl0rLCBmb3IgZmlsZSAuKmdkYl9zYW1wbGUucHksIGxpbmUgMTAsIGluIGJheiBcKGFyZ3M9XCgxLCAyLCAzXClcKQogICAgIGlkXCg0MlwpCiAkJycnKQogCkBAIC02NDQsMTEgKzY0NCwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNtZHNfYWZ0ZXJfYnJlYWtwb2ludD1bJ3B5LWJ0LWZ1bGwnXSkKICAgICAgICAgc2VsZi5hc3NlcnRNdWx0aWxpbmVNYXRjaGVzKGJ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcicnJ14uKgotI1swLTldKyBGcmFtZSAweFswLTlhLWZdKywgZm9yIGZpbGUgLipnZGJfc2FtcGxlLnB5LCBsaW5lIDcsIGluIGJhciBcKGE9MSwgYj0yLCBjPTNcKQorI1swLTldKyBGcmFtZSAweC0/WzAtOWEtZl0rLCBmb3IgZmlsZSAuKmdkYl9zYW1wbGUucHksIGxpbmUgNywgaW4gYmFyIFwoYT0xLCBiPTIsIGM9M1wpCiAgICAgYmF6XChhLCBiLCBjXCkKLSNbMC05XSsgRnJhbWUgMHhbMC05YS1mXSssIGZvciBmaWxlIC4qZ2RiX3NhbXBsZS5weSwgbGluZSA0LCBpbiBmb28gXChhPTEsIGI9MiwgYz0zXCkKKyNbMC05XSsgRnJhbWUgMHgtP1swLTlhLWZdKywgZm9yIGZpbGUgLipnZGJfc2FtcGxlLnB5LCBsaW5lIDQsIGluIGZvbyBcKGE9MSwgYj0yLCBjPTNcKQogICAgIGJhclwoYSwgYiwgY1wpCi0jWzAtOV0rIEZyYW1lIDB4WzAtOWEtZl0rLCBmb3IgZmlsZSAuKmdkYl9zYW1wbGUucHksIGxpbmUgMTIsIGluIDxtb2R1bGU+IFwoXCkKKyNbMC05XSsgRnJhbWUgMHgtP1swLTlhLWZdKywgZm9yIGZpbGUgLipnZGJfc2FtcGxlLnB5LCBsaW5lIDEyLCBpbiA8bW9kdWxlPiBcKFwpCiAgICAgZm9vXCgxLCAyLCAzXCkKICcnJykKIApAQCAtNjg1LDcgKzY4NSw3IEBACiAgICAgICAgIGJ0ID0gc2VsZi5nZXRfc3RhY2tfdHJhY2Uoc2NyaXB0PXNlbGYuZ2V0X3NhbXBsZV9zY3JpcHQoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbWRzX2FmdGVyX2JyZWFrcG9pbnQ9WydweS1wcmludCBsZW4nXSkKICAgICAgICAgc2VsZi5hc3NlcnRNdWx0aWxpbmVNYXRjaGVzKGJ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciIuKlxuYnVpbHRpbiAnbGVuJyA9IDxidWlsdC1pbiBtZXRob2QgbGVuIG9mIG1vZHVsZSBvYmplY3QgYXQgcmVtb3RlIDB4WzAtOWEtZl0rPlxuLioiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciIuKlxuYnVpbHRpbiAnbGVuJyA9IDxidWlsdC1pbiBtZXRob2QgbGVuIG9mIG1vZHVsZSBvYmplY3QgYXQgcmVtb3RlIDB4LT9bMC05YS1mXSs+XG4uKiIpCiAKIGNsYXNzIFB5TG9jYWxzVGVzdHMoRGVidWdnZXJUZXN0cyk6CiAgICAgQHVuaXR0ZXN0LnNraXBJZihweXRob25faXNfb3B0aW1pemVkKCksCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2dlbmVyYXRvcnMucHkgYi9MaWIvdGVzdC90ZXN0X2dlbmVyYXRvcnMucHkKaW5kZXggNWY0N2IzZS4uMDZmNjdjMiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9nZW5lcmF0b3JzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZ2VuZXJhdG9ycy5weQpAQCAtNzI4LDI5ICs3MjgsNiBAQAogCiBzeW50YXhfdGVzdHMgPSAiIiIKIAotPj4+IGRlZiBmKCk6Ci0uLi4gICAgIHJldHVybiAyMgotLi4uICAgICB5aWVsZCAxCi1UcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6Ci0gIC4uCi1TeW50YXhFcnJvcjogJ3JldHVybicgd2l0aCBhcmd1bWVudCBpbnNpZGUgZ2VuZXJhdG9yCi0KLT4+PiBkZWYgZigpOgotLi4uICAgICB5aWVsZCAxCi0uLi4gICAgIHJldHVybiAyMgotVHJhY2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOgotICAuLgotU3ludGF4RXJyb3I6ICdyZXR1cm4nIHdpdGggYXJndW1lbnQgaW5zaWRlIGdlbmVyYXRvcgotCi0icmV0dXJuIE5vbmUiIGlzIG5vdCB0aGUgc2FtZSBhcyAicmV0dXJuIiBpbiBhIGdlbmVyYXRvcjoKLQotPj4+IGRlZiBmKCk6Ci0uLi4gICAgIHlpZWxkIDEKLS4uLiAgICAgcmV0dXJuIE5vbmUKLVRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgLi4KLVN5bnRheEVycm9yOiAncmV0dXJuJyB3aXRoIGFyZ3VtZW50IGluc2lkZSBnZW5lcmF0b3IKLQogVGhlc2UgYXJlIGZpbmU6CiAKID4+PiBkZWYgZigpOgpAQCAtODY2LDIwICs4NDMsNiBAQAogPj4+IHR5cGUoZigpKQogPGNsYXNzICdnZW5lcmF0b3InPgogCi0KLT4+PiBkZWYgZigpOgotLi4uICAgICBpZiAwOgotLi4uICAgICAgICAgbGFtYmRhIHg6ICB4ICAgICAgICAjIHNob3VsZG4ndCB0cmlnZ2VyIGhlcmUKLS4uLiAgICAgICAgIHJldHVybiAgICAgICAgICAgICAgIyBvciBoZXJlCi0uLi4gICAgICAgICBkZWYgZihpKToKLS4uLiAgICAgICAgICAgICByZXR1cm4gMippICAgICAgIyBvciBoZXJlCi0uLi4gICAgICAgICBpZiAwOgotLi4uICAgICAgICAgICAgIHJldHVybiAzICAgICAgICAjIGJ1dCAqdGhpcyogc3Vja3MgKGxpbmUgOCkKLS4uLiAgICAgaWYgMDoKLS4uLiAgICAgICAgIHlpZWxkIDIgICAgICAgICAgICAgIyBiZWNhdXNlIGl0J3MgYSBnZW5lcmF0b3IgKGxpbmUgMTApCi1UcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6Ci1TeW50YXhFcnJvcjogJ3JldHVybicgd2l0aCBhcmd1bWVudCBpbnNpZGUgZ2VuZXJhdG9yCi0KIFRoaXMgb25lIGNhdXNlZCBhIGNyYXNoIChzZWUgU0YgYnVnIDU2NzUzOCk6CiAKID4+PiBkZWYgZigpOgpAQCAtMTU2NiwxMSArMTUyOSw2IEBACiAgIC4uLgogU3ludGF4RXJyb3I6ICd5aWVsZCcgb3V0c2lkZSBmdW5jdGlvbgogCi0+Pj4gZGVmIGYoKTogcmV0dXJuIGxhbWJkYSB4PSh5aWVsZCk6IDEKLVRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgLi4uCi1TeW50YXhFcnJvcjogJ3JldHVybicgd2l0aCBhcmd1bWVudCBpbnNpZGUgZ2VuZXJhdG9yCi0KID4+PiBkZWYgZigpOiB4ID0geWllbGQgPSB5CiBUcmFjZWJhY2sgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCk6CiAgIC4uLgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9nZW5lcmljcGF0aC5weSBiL0xpYi90ZXN0L3Rlc3RfZ2VuZXJpY3BhdGgucHkKaW5kZXggNTA2MzhhMS4uZWJiODM5NiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9nZW5lcmljcGF0aC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2dlbmVyaWNwYXRoLnB5CkBAIC0yLDExICsyLDEyIEBACiBUZXN0cyBjb21tb24gdG8gZ2VuZXJpY3BhdGgsIG1hY3BhdGgsIG50cGF0aCBhbmQgcG9zaXhwYXRoCiAiIiIKIAotaW1wb3J0IHVuaXR0ZXN0Ci1mcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKLWltcG9ydCBvcwogaW1wb3J0IGdlbmVyaWNwYXRoCitpbXBvcnQgb3MKIGltcG9ydCBzeXMKK2ltcG9ydCB1bml0dGVzdAoraW1wb3J0IHdhcm5pbmdzCitmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIAogCiBkZWYgc2FmZV9ybWRpcihkaXJuYW1lKToKQEAgLTI1OCwxNSArMjU5LDIxIEBACiAKICAgICBkZWYgdGVzdF9hYnNwYXRoKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEluKCJmb28iLCBzZWxmLnBhdGhtb2R1bGUuYWJzcGF0aCgiZm9vIikpCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oYiJmb28iLCBzZWxmLnBhdGhtb2R1bGUuYWJzcGF0aChiImZvbyIpKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oYiJmb28iLCBzZWxmLnBhdGhtb2R1bGUuYWJzcGF0aChiImZvbyIpKQogCiAgICAgICAgICMgQWJzcGF0aCByZXR1cm5zIGJ5dGVzIHdoZW4gdGhlIGFyZyBpcyBieXRlcwotICAgICAgICBmb3IgcGF0aCBpbiAoYicnLCBiJ2ZvbycsIGInZlx4ZjJceGYyJywgYicvZm9vJywgYidDOlxcJyk6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc2VsZi5wYXRobW9kdWxlLmFic3BhdGgocGF0aCksIGJ5dGVzKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIGZvciBwYXRoIGluIChiJycsIGInZm9vJywgYidmXHhmMlx4ZjInLCBiJy9mb28nLCBiJ0M6XFwnKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc2VsZi5wYXRobW9kdWxlLmFic3BhdGgocGF0aCksIGJ5dGVzKQogCiAgICAgZGVmIHRlc3RfcmVhbHBhdGgoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oImZvbyIsIHNlbGYucGF0aG1vZHVsZS5yZWFscGF0aCgiZm9vIikpCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oYiJmb28iLCBzZWxmLnBhdGhtb2R1bGUucmVhbHBhdGgoYiJmb28iKSkKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJpZ25vcmUiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICBzZWxmLmFzc2VydEluKGIiZm9vIiwgc2VsZi5wYXRobW9kdWxlLnJlYWxwYXRoKGIiZm9vIikpCiAKICAgICBkZWYgdGVzdF9ub3JtcGF0aF9pc3N1ZTU4Mjcoc2VsZik6CiAgICAgICAgICMgTWFrZSBzdXJlIG5vcm1wYXRoIHByZXNlcnZlcyB1bmljb2RlCkBAIC0yOTYsOCArMzAzLDEwIEBACiAgICAgICAgICJNYWMgT1MgWCBkZW5pZXMgdGhlIGNyZWF0aW9uIG9mIGEgZGlyZWN0b3J5IHdpdGggYW4gaW52YWxpZCB1dGY4IG5hbWUiKQogICAgIGRlZiB0ZXN0X25vbmFzY2lpX2Fic3BhdGgoc2VsZik6CiAgICAgICAgICMgVGVzdCBub24tQVNDSUksIG5vbi1VVEY4IGJ5dGVzIGluIHRoZSBwYXRoLgotICAgICAgICB3aXRoIHN1cHBvcnQudGVtcF9jd2QoYidceGU3d1x4ZjAnKToKLSAgICAgICAgICAgIHNlbGYudGVzdF9hYnNwYXRoKCkKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJpZ25vcmUiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICB3aXRoIHN1cHBvcnQudGVtcF9jd2QoYidceGU3d1x4ZjAnKToKKyAgICAgICAgICAgICAgICBzZWxmLnRlc3RfYWJzcGF0aCgpCiAKIAogZGVmIHRlc3RfbWFpbigpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9nZW5leHBzLnB5IGIvTGliL3Rlc3QvdGVzdF9nZW5leHBzLnB5CmluZGV4IDFmNDZhZjEuLjQxMzA0M2MgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZ2VuZXhwcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2dlbmV4cHMucHkKQEAgLTI1NywxMSArMjU3LDE1IEBACiAKICIiIgogCitpbXBvcnQgc3lzCiAKLV9fdGVzdF9fID0geydkb2N0ZXN0cycgOiBkb2N0ZXN0c30KKyMgVHJhY2UgZnVuY3Rpb24gY2FuIHRocm93IG9mZiB0aGUgdHVwbGUgcmV1c2UgdGVzdC4KK2lmIGhhc2F0dHIoc3lzLCAnZ2V0dHJhY2UnKSBhbmQgc3lzLmdldHRyYWNlKCk6CisgICAgX190ZXN0X18gPSB7fQorZWxzZToKKyAgICBfX3Rlc3RfXyA9IHsnZG9jdGVzdHMnIDogZG9jdGVzdHN9CiAKIGRlZiB0ZXN0X21haW4odmVyYm9zZT1Ob25lKToKLSAgICBpbXBvcnQgc3lzCiAgICAgZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiAgICAgZnJvbSB0ZXN0IGltcG9ydCB0ZXN0X2dlbmV4cHMKICAgICBzdXBwb3J0LnJ1bl9kb2N0ZXN0KHRlc3RfZ2VuZXhwcywgdmVyYm9zZSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfZ2V0YXJnczIucHkgYi9MaWIvdGVzdC90ZXN0X2dldGFyZ3MyLnB5CmluZGV4IDNkOWMwNmEuLjc2OGVhOGQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZ2V0YXJnczIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9nZXRhcmdzMi5weQpAQCAtMjk0LDYgKzI5NCwxNSBAQAogICAgICAgICAgICAgc2VsZi5mYWlsKCdUeXBlRXJyb3Igc2hvdWxkIGhhdmUgYmVlbiByYWlzZWQnKQogCiBjbGFzcyBCeXRlc19UZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHRlc3RfYyhzZWxmKToKKyAgICAgICAgZnJvbSBfdGVzdGNhcGkgaW1wb3J0IGdldGFyZ3NfYworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGdldGFyZ3NfYywgYidhYmMnKSAgIyBsZW4gPiAxCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0YXJnc19jKGInYScpLCBiJ2EnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldGFyZ3NfYyhieXRlYXJyYXkoYidhJykpLCBiJ2EnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGdldGFyZ3NfYywgbWVtb3J5dmlldyhiJ2EnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBnZXRhcmdzX2MsICdzJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBnZXRhcmdzX2MsIE5vbmUpCisKICAgICBkZWYgdGVzdF9zKHNlbGYpOgogICAgICAgICBmcm9tIF90ZXN0Y2FwaSBpbXBvcnQgZ2V0YXJnc19zCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0YXJnc19zKCdhYmNceGU5JyksIGInYWJjXHhjM1x4YTknKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9nbG9iLnB5IGIvTGliL3Rlc3QvdGVzdF9nbG9iLnB5CmluZGV4IDE1NjBhNmIuLjZlZTA4ZGIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfZ2xvYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X2dsb2IucHkKQEAgLTEsNSArMSw2IEBACiBpbXBvcnQgdW5pdHRlc3QKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBydW5fdW5pdHRlc3QsIFRFU1RGTiwgc2tpcF91bmxlc3Nfc3ltbGluaywgY2FuX3N5bWxpbmsKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCAocnVuX3VuaXR0ZXN0LCBURVNURk4sIHNraXBfdW5sZXNzX3N5bWxpbmssCisgICAgY2FuX3N5bWxpbmssIGNyZWF0ZV9lbXB0eV9maWxlKQogaW1wb3J0IGdsb2IKIGltcG9ydCBvcwogaW1wb3J0IHNodXRpbApAQCAtMTQsOCArMTUsNyBAQAogICAgICAgICBiYXNlLCBmaWxlID0gb3MucGF0aC5zcGxpdChmaWxlbmFtZSkKICAgICAgICAgaWYgbm90IG9zLnBhdGguZXhpc3RzKGJhc2UpOgogICAgICAgICAgICAgb3MubWFrZWRpcnMoYmFzZSkKLSAgICAgICAgZiA9IG9wZW4oZmlsZW5hbWUsICd3JykKLSAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIGNyZWF0ZV9lbXB0eV9maWxlKGZpbGVuYW1lKQogCiAgICAgZGVmIHNldFVwKHNlbGYpOgogICAgICAgICBzZWxmLnRlbXBkaXIgPSBURVNURk4rIl9kaXIiCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2dyYW1tYXIucHkgYi9MaWIvdGVzdC90ZXN0X2dyYW1tYXIucHkKaW5kZXggMjY4YTYzMy4uNmIzMjZiZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9ncmFtbWFyLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZ3JhbW1hci5weQpAQCAtMTAsNyArMTAsNyBAQAogCiBjbGFzcyBUb2tlblRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKIAotICAgIGRlZiB0ZXN0QmFja3NsYXNoKHNlbGYpOgorICAgIGRlZiB0ZXN0X2JhY2tzbGFzaChzZWxmKToKICAgICAgICAgIyBCYWNrc2xhc2ggbWVhbnMgbGluZSBjb250aW51YXRpb246CiAgICAgICAgIHggPSAxIFwKICAgICAgICAgKyAxCkBAIC0yMCw3ICsyMCw3IEBACiAgICAgICAgIHggPSAwCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeCwgMCwgJ2JhY2tzbGFzaCBlbmRpbmcgY29tbWVudCcpCiAKLSAgICBkZWYgdGVzdFBsYWluSW50ZWdlcnMoc2VsZik6CisgICAgZGVmIHRlc3RfcGxhaW5faW50ZWdlcnMoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHlwZSgwMDApLCB0eXBlKDApKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDB4ZmYsIDI1NSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgwbzM3NywgMjU1KQpAQCAtNTYsNyArNTYsNyBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgc2VsZi5mYWlsKCdXZWlyZCBtYXhzaXplIHZhbHVlICVyJyAlIG1heHNpemUpCiAKLSAgICBkZWYgdGVzdExvbmdJbnRlZ2VycyhzZWxmKToKKyAgICBkZWYgdGVzdF9sb25nX2ludGVnZXJzKHNlbGYpOgogICAgICAgICB4ID0gMAogICAgICAgICB4ID0gMHhmZmZmZmZmZmZmZmZmZmZmCiAgICAgICAgIHggPSAwWGZmZmZmZmZmZmZmZmZmZmYKQEAgLTY2LDcgKzY2LDcgQEAKICAgICAgICAgeCA9IDBiMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCiAgICAgICAgIHggPSAwQjExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMQogCi0gICAgZGVmIHRlc3RGbG9hdHMoc2VsZik6CisgICAgZGVmIHRlc3RfZmxvYXRzKHNlbGYpOgogICAgICAgICB4ID0gMy4xNAogICAgICAgICB4ID0gMzE0LgogICAgICAgICB4ID0gMC4zMTQKQEAgLTgwLDcgKzgwLDcgQEAKICAgICAgICAgeCA9IC4zZTE0CiAgICAgICAgIHggPSAzLjFlNAogCi0gICAgZGVmIHRlc3RTdHJpbmdMaXRlcmFscyhzZWxmKToKKyAgICBkZWYgdGVzdF9zdHJpbmdfbGl0ZXJhbHMoc2VsZik6CiAgICAgICAgIHggPSAnJzsgeSA9ICIiOyBzZWxmLmFzc2VydFRydWUobGVuKHgpID09IDAgYW5kIHggPT0geSkKICAgICAgICAgeCA9ICdcJyc7IHkgPSAiJyI7IHNlbGYuYXNzZXJ0VHJ1ZShsZW4oeCkgPT0gMSBhbmQgeCA9PSB5IGFuZCBvcmQoeCkgPT0gMzkpCiAgICAgICAgIHggPSAnIic7IHkgPSAiXCIiOyBzZWxmLmFzc2VydFRydWUobGVuKHgpID09IDEgYW5kIHggPT0geSBhbmQgb3JkKHgpID09IDM0KQpAQCAtMTIwLDExICsxMjAsMTggQEAKICcKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh4LCB5KQogCi0gICAgZGVmIHRlc3RFbGxpcHNpcyhzZWxmKToKKyAgICBkZWYgdGVzdF9lbGxpcHNpcyhzZWxmKToKICAgICAgICAgeCA9IC4uLgogICAgICAgICBzZWxmLmFzc2VydFRydWUoeCBpcyBFbGxpcHNpcykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIuLiAuIikKIAorICAgIGRlZiB0ZXN0X2VvZl9lcnJvcihzZWxmKToKKyAgICAgICAgc2FtcGxlcyA9ICgiZGVmIGZvbygiLCAiXG5kZWYgZm9vKCIsICJkZWYgZm9vKFxuIikKKyAgICAgICAgZm9yIHMgaW4gc2FtcGxlczoKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgICAgIGNvbXBpbGUocywgIjx0ZXN0PiIsICJleGVjIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oInVuZXhwZWN0ZWQgRU9GIiwgc3RyKGNtLmV4Y2VwdGlvbikpCisKIGNsYXNzIEdyYW1tYXJUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKICAgICAjIHNpbmdsZV9pbnB1dDogTkVXTElORSB8IHNpbXBsZV9zdG10IHwgY29tcG91bmRfc3RtdCBORVdMSU5FCkBAIC0xMzYsMTEgKzE0MywxMSBAQAogICAgICMgZXhwcl9pbnB1dDogdGVzdGxpc3QgTkVXTElORQogICAgICMgWFhYIEhhcmQgdG8gdGVzdCAtLSB1c2VkIG9ubHkgaW4gY2FsbHMgdG8gaW5wdXQoKQogCi0gICAgZGVmIHRlc3RFdmFsSW5wdXQoc2VsZik6CisgICAgZGVmIHRlc3RfZXZhbF9pbnB1dChzZWxmKToKICAgICAgICAgIyB0ZXN0bGlzdCBFTkRNQVJLRVIKICAgICAgICAgeCA9IGV2YWwoJzEsIDAgb3IgMScpCiAKLSAgICBkZWYgdGVzdEZ1bmNkZWYoc2VsZik6CisgICAgZGVmIHRlc3RfZnVuY2RlZihzZWxmKToKICAgICAgICAgIyMjIFtkZWNvcmF0b3JzXSAnZGVmJyBOQU1FIHBhcmFtZXRlcnMgWyctPicgdGVzdF0gJzonIHN1aXRlCiAgICAgICAgICMjIyBkZWNvcmF0b3I6ICdAJyBkb3R0ZWRfbmFtZSBbICcoJyBbYXJnbGlzdF0gJyknIF0gTkVXTElORQogICAgICAgICAjIyMgZGVjb3JhdG9yczogZGVjb3JhdG9yKwpAQCAtMzI0LDcgKzMzMSw3IEBACiAgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZigqZygxPTIpKSIpCiAgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZigqKmcoMT0yKSkiKQogCi0gICAgZGVmIHRlc3RMYW1iZGVmKHNlbGYpOgorICAgIGRlZiB0ZXN0X2xhbWJkZWYoc2VsZik6CiAgICAgICAgICMjIyBsYW1iZGVmOiAnbGFtYmRhJyBbdmFyYXJnc2xpc3RdICc6JyB0ZXN0CiAgICAgICAgIGwxID0gbGFtYmRhIDogMAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGwxKCksIDApCkBAIC0zNDYsNyArMzUzLDcgQEAKICAgICAjIyMgc3RtdDogc2ltcGxlX3N0bXQgfCBjb21wb3VuZF9zdG10CiAgICAgIyBUZXN0ZWQgYmVsb3cKIAotICAgIGRlZiB0ZXN0U2ltcGxlU3RtdChzZWxmKToKKyAgICBkZWYgdGVzdF9zaW1wbGVfc3RtdChzZWxmKToKICAgICAgICAgIyMjIHNpbXBsZV9zdG10OiBzbWFsbF9zdG10ICgnOycgc21hbGxfc3RtdCkqIFsnOyddCiAgICAgICAgIHggPSAxOyBwYXNzOyBkZWwgeAogICAgICAgICBkZWYgZm9vKCk6CkBAIC0zNTcsNyArMzY0LDcgQEAKICAgICAjIyMgc21hbGxfc3RtdDogZXhwcl9zdG10IHwgcGFzc19zdG10IHwgZGVsX3N0bXQgfCBmbG93X3N0bXQgfCBpbXBvcnRfc3RtdCB8IGdsb2JhbF9zdG10IHwgYWNjZXNzX3N0bXQKICAgICAjIFRlc3RlZCBiZWxvdwogCi0gICAgZGVmIHRlc3RFeHByU3RtdChzZWxmKToKKyAgICBkZWYgdGVzdF9leHByX3N0bXQoc2VsZik6CiAgICAgICAgICMgKGV4cHJsaXN0ICc9JykqIGV4cHJsaXN0CiAgICAgICAgIDEKICAgICAgICAgMSwgMiwgMwpAQCAtMzcwLDcgKzM3Nyw3IEBACiAgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAieCArIDEgPSAxIikKICAgICAgICAgY2hlY2tfc3ludGF4X2Vycm9yKHNlbGYsICJhICsgMSA9IGIgKyAyIikKIAotICAgIGRlZiB0ZXN0RGVsU3RtdChzZWxmKToKKyAgICBkZWYgdGVzdF9kZWxfc3RtdChzZWxmKToKICAgICAgICAgIyAnZGVsJyBleHBybGlzdAogICAgICAgICBhYmMgPSBbMSwyLDNdCiAgICAgICAgIHgsIHksIHogPSBhYmMKQEAgLTM3OSwxOCArMzg2LDE4IEBACiAgICAgICAgIGRlbCBhYmMKICAgICAgICAgZGVsIHgsIHksICh6LCB4eXopCiAKLSAgICBkZWYgdGVzdFBhc3NTdG10KHNlbGYpOgorICAgIGRlZiB0ZXN0X3Bhc3Nfc3RtdChzZWxmKToKICAgICAgICAgIyAncGFzcycKICAgICAgICAgcGFzcwogCiAgICAgIyBmbG93X3N0bXQ6IGJyZWFrX3N0bXQgfCBjb250aW51ZV9zdG10IHwgcmV0dXJuX3N0bXQgfCByYWlzZV9zdG10CiAgICAgIyBUZXN0ZWQgYmVsb3cKIAotICAgIGRlZiB0ZXN0QnJlYWtTdG10KHNlbGYpOgorICAgIGRlZiB0ZXN0X2JyZWFrX3N0bXQoc2VsZik6CiAgICAgICAgICMgJ2JyZWFrJwogICAgICAgICB3aGlsZSAxOiBicmVhawogCi0gICAgZGVmIHRlc3RDb250aW51ZVN0bXQoc2VsZik6CisgICAgZGVmIHRlc3RfY29udGludWVfc3RtdChzZWxmKToKICAgICAgICAgIyAnY29udGludWUnCiAgICAgICAgIGkgPSAxCiAgICAgICAgIHdoaWxlIGk6IGkgPSAwOyBjb250aW51ZQpAQCAtNDQyLDcgKzQ0OSw3IEBACiAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJjb250aW51ZSB0aGVuIGJyZWFrIGluIHRyeS9leGNlcHQgaW4gbG9vcCBicm9rZW4hIikKICAgICAgICAgdGVzdF9pbm5lcigpCiAKLSAgICBkZWYgdGVzdFJldHVybihzZWxmKToKKyAgICBkZWYgdGVzdF9yZXR1cm4oc2VsZik6CiAgICAgICAgICMgJ3JldHVybicgW3Rlc3RsaXN0XQogICAgICAgICBkZWYgZzEoKTogcmV0dXJuCiAgICAgICAgIGRlZiBnMigpOiByZXR1cm4gMQpAQCAtNDUwLDE3ICs0NTcsNDkgQEAKICAgICAgICAgeCA9IGcyKCkKICAgICAgICAgY2hlY2tfc3ludGF4X2Vycm9yKHNlbGYsICJjbGFzcyBmb286cmV0dXJuIDEiKQogCi0gICAgZGVmIHRlc3RZaWVsZChzZWxmKToKKyAgICBkZWYgdGVzdF95aWVsZChzZWxmKToKKyAgICAgICAgIyBBbGxvd2VkIGFzIHN0YW5kYWxvbmUgc3RhdGVtZW50CisgICAgICAgIGRlZiBnKCk6IHlpZWxkIDEKKyAgICAgICAgZGVmIGcoKTogeWllbGQgZnJvbSAoKQorICAgICAgICAjIEFsbG93ZWQgYXMgUkhTIG9mIGFzc2lnbm1lbnQKKyAgICAgICAgZGVmIGcoKTogeCA9IHlpZWxkIDEKKyAgICAgICAgZGVmIGcoKTogeCA9IHlpZWxkIGZyb20gKCkKKyAgICAgICAgIyBPcmRpbmFyeSB5aWVsZCBhY2NlcHRzIGltcGxpY2l0IHR1cGxlcworICAgICAgICBkZWYgZygpOiB5aWVsZCAxLCAxCisgICAgICAgIGRlZiBnKCk6IHggPSB5aWVsZCAxLCAxCisgICAgICAgICMgJ3lpZWxkIGZyb20nIGRvZXMgbm90CisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogeWllbGQgZnJvbSAoKSwgMSIpCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogeCA9IHlpZWxkIGZyb20gKCksIDEiKQorICAgICAgICAjIFJlcXVpcmVzIHBhcmVudGhlc2VzIGFzIHN1YmV4cHJlc3Npb24KKyAgICAgICAgZGVmIGcoKTogMSwgKHlpZWxkIDEpCisgICAgICAgIGRlZiBnKCk6IDEsICh5aWVsZCBmcm9tICgpKQorICAgICAgICBjaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgImRlZiBnKCk6IDEsIHlpZWxkIDEiKQorICAgICAgICBjaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgImRlZiBnKCk6IDEsIHlpZWxkIGZyb20gKCkiKQorICAgICAgICAjIFJlcXVpcmVzIHBhcmVudGhlc2VzIGFzIGNhbGwgYXJndW1lbnQKKyAgICAgICAgZGVmIGcoKTogZigoeWllbGQgMSkpCisgICAgICAgIGRlZiBnKCk6IGYoKHlpZWxkIDEpLCAxKQorICAgICAgICBkZWYgZygpOiBmKCh5aWVsZCBmcm9tICgpKSkKKyAgICAgICAgZGVmIGcoKTogZigoeWllbGQgZnJvbSAoKSksIDEpCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogZih5aWVsZCAxKSIpCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogZih5aWVsZCAxLCAxKSIpCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogZih5aWVsZCBmcm9tICgpKSIpCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZGVmIGcoKTogZih5aWVsZCBmcm9tICgpLCAxKSIpCisgICAgICAgICMgTm90IGFsbG93ZWQgYXQgdG9wIGxldmVsCisgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAieWllbGQiKQorICAgICAgICBjaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgInlpZWxkIGZyb20iKQorICAgICAgICAjIE5vdCBhbGxvd2VkIGF0IGNsYXNzIHNjb3BlCiAgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiY2xhc3MgZm9vOnlpZWxkIDEiKQorICAgICAgICBjaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgImNsYXNzIGZvbzp5aWVsZCBmcm9tICgpIikKIAotICAgIGRlZiB0ZXN0UmFpc2Uoc2VsZik6CisKKyAgICBkZWYgdGVzdF9yYWlzZShzZWxmKToKICAgICAgICAgIyAncmFpc2UnIHRlc3QgWycsJyB0ZXN0XQogICAgICAgICB0cnk6IHJhaXNlIFJ1bnRpbWVFcnJvcignanVzdCB0ZXN0aW5nJykKICAgICAgICAgZXhjZXB0IFJ1bnRpbWVFcnJvcjogcGFzcwogICAgICAgICB0cnk6IHJhaXNlIEtleWJvYXJkSW50ZXJydXB0CiAgICAgICAgIGV4Y2VwdCBLZXlib2FyZEludGVycnVwdDogcGFzcwogCi0gICAgZGVmIHRlc3RJbXBvcnQoc2VsZik6CisgICAgZGVmIHRlc3RfaW1wb3J0KHNlbGYpOgogICAgICAgICAjICdpbXBvcnQnIGRvdHRlZF9hc19uYW1lcwogICAgICAgICBpbXBvcnQgc3lzCiAgICAgICAgIGltcG9ydCB0aW1lLCBzeXMKQEAgLTQ3MywxMyArNTEyLDEzIEBACiAgICAgICAgIGZyb20gc3lzIGltcG9ydCAocGF0aCwgYXJndikKICAgICAgICAgZnJvbSBzeXMgaW1wb3J0IChwYXRoLCBhcmd2LCkKIAotICAgIGRlZiB0ZXN0R2xvYmFsKHNlbGYpOgorICAgIGRlZiB0ZXN0X2dsb2JhbChzZWxmKToKICAgICAgICAgIyAnZ2xvYmFsJyBOQU1FICgnLCcgTkFNRSkqCiAgICAgICAgIGdsb2JhbCBhCiAgICAgICAgIGdsb2JhbCBhLCBiCiAgICAgICAgIGdsb2JhbCBvbmUsIHR3bywgdGhyZWUsIGZvdXIsIGZpdmUsIHNpeCwgc2V2ZW4sIGVpZ2h0LCBuaW5lLCB0ZW4KIAotICAgIGRlZiB0ZXN0Tm9ubG9jYWwoc2VsZik6CisgICAgZGVmIHRlc3Rfbm9ubG9jYWwoc2VsZik6CiAgICAgICAgICMgJ25vbmxvY2FsJyBOQU1FICgnLCcgTkFNRSkqCiAgICAgICAgIHggPSAwCiAgICAgICAgIHkgPSAwCkBAIC00ODcsNyArNTI2LDcgQEAKICAgICAgICAgICAgIG5vbmxvY2FsIHgKICAgICAgICAgICAgIG5vbmxvY2FsIHgsIHkKIAotICAgIGRlZiB0ZXN0QXNzZXJ0KHNlbGYpOgorICAgIGRlZiB0ZXN0X2Fzc2VydChzZWxmKToKICAgICAgICAgIyBhc3NlcnRUcnVlc3RtdDogJ2Fzc2VydCcgdGVzdCBbJywnIHRlc3RdCiAgICAgICAgIGFzc2VydCAxCiAgICAgICAgIGFzc2VydCAxLCAxCkBAIC01MjYsNyArNTY1LDcgQEAKICAgICAjIyMgY29tcG91bmRfc3RtdDogaWZfc3RtdCB8IHdoaWxlX3N0bXQgfCBmb3Jfc3RtdCB8IHRyeV9zdG10IHwgZnVuY2RlZiB8IGNsYXNzZGVmCiAgICAgIyBUZXN0ZWQgYmVsb3cKIAotICAgIGRlZiB0ZXN0SWYoc2VsZik6CisgICAgZGVmIHRlc3RfaWYoc2VsZik6CiAgICAgICAgICMgJ2lmJyB0ZXN0ICc6JyBzdWl0ZSAoJ2VsaWYnIHRlc3QgJzonIHN1aXRlKSogWydlbHNlJyAnOicgc3VpdGVdCiAgICAgICAgIGlmIDE6IHBhc3MKICAgICAgICAgaWYgMTogcGFzcwpAQCAtNTM5LDcgKzU3OCw3IEBACiAgICAgICAgIGVsaWYgMDogcGFzcwogICAgICAgICBlbHNlOiBwYXNzCiAKLSAgICBkZWYgdGVzdFdoaWxlKHNlbGYpOgorICAgIGRlZiB0ZXN0X3doaWxlKHNlbGYpOgogICAgICAgICAjICd3aGlsZScgdGVzdCAnOicgc3VpdGUgWydlbHNlJyAnOicgc3VpdGVdCiAgICAgICAgIHdoaWxlIDA6IHBhc3MKICAgICAgICAgd2hpbGUgMDogcGFzcwpAQCAtNTU0LDcgKzU5Myw3IEBACiAgICAgICAgICAgICB4ID0gMgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHgsIDIpCiAKLSAgICBkZWYgdGVzdEZvcihzZWxmKToKKyAgICBkZWYgdGVzdF9mb3Ioc2VsZik6CiAgICAgICAgICMgJ2ZvcicgZXhwcmxpc3QgJ2luJyBleHBybGlzdCAnOicgc3VpdGUgWydlbHNlJyAnOicgc3VpdGVdCiAgICAgICAgIGZvciBpIGluIDEsIDIsIDM6IHBhc3MKICAgICAgICAgZm9yIGksIGosIGsgaW4gKCk6IHBhc3MKQEAgLTU4MSw3ICs2MjAsNyBAQAogICAgICAgICAgICAgcmVzdWx0LmFwcGVuZCh4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdCwgWzEsIDIsIDNdKQogCi0gICAgZGVmIHRlc3RUcnkoc2VsZik6CisgICAgZGVmIHRlc3RfdHJ5KHNlbGYpOgogICAgICAgICAjIyMgdHJ5X3N0bXQ6ICd0cnknICc6JyBzdWl0ZSAoZXhjZXB0X2NsYXVzZSAnOicgc3VpdGUpKyBbJ2Vsc2UnICc6JyBzdWl0ZV0KICAgICAgICAgIyMjICAgICAgICAgfCAndHJ5JyAnOicgc3VpdGUgJ2ZpbmFsbHknICc6JyBzdWl0ZQogICAgICAgICAjIyMgZXhjZXB0X2NsYXVzZTogJ2V4Y2VwdCcgW2V4cHIgWydhcycgZXhwcl1dCkBAIC02MDQsNyArNjQzLDcgQEAKICAgICAgICAgdHJ5OiBwYXNzCiAgICAgICAgIGZpbmFsbHk6IHBhc3MKIAotICAgIGRlZiB0ZXN0U3VpdGUoc2VsZik6CisgICAgZGVmIHRlc3Rfc3VpdGUoc2VsZik6CiAgICAgICAgICMgc2ltcGxlX3N0bXQgfCBORVdMSU5FIElOREVOVCBORVdMSU5FKiAoc3RtdCBORVdMSU5FKikrIERFREVOVAogICAgICAgICBpZiAxOiBwYXNzCiAgICAgICAgIGlmIDE6CkBAIC02MTksNyArNjU4LDcgQEAKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgICMKIAotICAgIGRlZiB0ZXN0VGVzdChzZWxmKToKKyAgICBkZWYgdGVzdF90ZXN0KHNlbGYpOgogICAgICAgICAjIyMgYW5kX3Rlc3QgKCdvcicgYW5kX3Rlc3QpKgogICAgICAgICAjIyMgYW5kX3Rlc3Q6IG5vdF90ZXN0ICgnYW5kJyBub3RfdGVzdCkqCiAgICAgICAgICMjIyBub3RfdGVzdDogJ25vdCcgbm90X3Rlc3QgfCBjb21wYXJpc29uCkBAIC02MzAsNyArNjY5LDcgQEAKICAgICAgICAgaWYgbm90IDEgYW5kIDEgYW5kIDE6IHBhc3MKICAgICAgICAgaWYgMSBhbmQgMSBvciAxIGFuZCAxIGFuZCAxIG9yIG5vdCAxIGFuZCAxOiBwYXNzCiAKLSAgICBkZWYgdGVzdENvbXBhcmlzb24oc2VsZik6CisgICAgZGVmIHRlc3RfY29tcGFyaXNvbihzZWxmKToKICAgICAgICAgIyMjIGNvbXBhcmlzb246IGV4cHIgKGNvbXBfb3AgZXhwcikqCiAgICAgICAgICMjIyBjb21wX29wOiAnPCd8Jz4nfCc9PSd8Jz49J3wnPD0nfCchPSd8J2luJ3wnbm90JyAnaW4nfCdpcyd8J2lzJyAnbm90JwogICAgICAgICBpZiAxOiBwYXNzCkBAIC02NDcsMzYgKzY4NiwzNiBAQAogICAgICAgICBpZiAxIG5vdCBpbiAoKTogcGFzcwogICAgICAgICBpZiAxIDwgMSA+IDEgPT0gMSA+PSAxIDw9IDEgIT0gMSBpbiAxIG5vdCBpbiAxIGlzIDEgaXMgbm90IDE6IHBhc3MKIAotICAgIGRlZiB0ZXN0QmluYXJ5TWFza09wcyhzZWxmKToKKyAgICBkZWYgdGVzdF9iaW5hcnlfbWFza19vcHMoc2VsZik6CiAgICAgICAgIHggPSAxICYgMQogICAgICAgICB4ID0gMSBeIDEKICAgICAgICAgeCA9IDEgfCAxCiAKLSAgICBkZWYgdGVzdFNoaWZ0T3BzKHNlbGYpOgorICAgIGRlZiB0ZXN0X3NoaWZ0X29wcyhzZWxmKToKICAgICAgICAgeCA9IDEgPDwgMQogICAgICAgICB4ID0gMSA+PiAxCiAgICAgICAgIHggPSAxIDw8IDEgPj4gMQogCi0gICAgZGVmIHRlc3RBZGRpdGl2ZU9wcyhzZWxmKToKKyAgICBkZWYgdGVzdF9hZGRpdGl2ZV9vcHMoc2VsZik6CiAgICAgICAgIHggPSAxCiAgICAgICAgIHggPSAxICsgMQogICAgICAgICB4ID0gMSAtIDEgLSAxCiAgICAgICAgIHggPSAxIC0gMSArIDEgLSAxICsgMQogCi0gICAgZGVmIHRlc3RNdWx0aXBsaWNhdGl2ZU9wcyhzZWxmKToKKyAgICBkZWYgdGVzdF9tdWx0aXBsaWNhdGl2ZV9vcHMoc2VsZik6CiAgICAgICAgIHggPSAxICogMQogICAgICAgICB4ID0gMSAvIDEKICAgICAgICAgeCA9IDEgJSAxCiAgICAgICAgIHggPSAxIC8gMSAqIDEgJSAxCiAKLSAgICBkZWYgdGVzdFVuYXJ5T3BzKHNlbGYpOgorICAgIGRlZiB0ZXN0X3VuYXJ5X29wcyhzZWxmKToKICAgICAgICAgeCA9ICsxCiAgICAgICAgIHggPSAtMQogICAgICAgICB4ID0gfjEKICAgICAgICAgeCA9IH4xIF4gMSAmIDEgfCAxICYgMSBeIC0xCiAgICAgICAgIHggPSAtMSoxLzEgKyAxKjEgLSAtLS0xKjEKIAotICAgIGRlZiB0ZXN0U2VsZWN0b3JzKHNlbGYpOgorICAgIGRlZiB0ZXN0X3NlbGVjdG9ycyhzZWxmKToKICAgICAgICAgIyMjIHRyYWlsZXI6ICcoJyBbdGVzdGxpc3RdICcpJyB8ICdbJyBzdWJzY3JpcHQgJ10nIHwgJy4nIE5BTUUKICAgICAgICAgIyMjIHN1YnNjcmlwdDogZXhwciB8IFtleHByXSAnOicgW2V4cHJdCiAKQEAgLTcwNiw3ICs3NDUsNyBAQAogICAgICAgICBMLnNvcnQoa2V5PWxhbWJkYSB4OiB4IGlmIGlzaW5zdGFuY2UoeCwgdHVwbGUpIGVsc2UgKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKEwpLCAnWzEsICgxLCksICgxLCAyKSwgKDEsIDIsIDMpXScpCiAKLSAgICBkZWYgdGVzdEF0b21zKHNlbGYpOgorICAgIGRlZiB0ZXN0X2F0b21zKHNlbGYpOgogICAgICAgICAjIyMgYXRvbTogJygnIFt0ZXN0bGlzdF0gJyknIHwgJ1snIFt0ZXN0bGlzdF0gJ10nIHwgJ3snIFtkaWN0c2V0bWFrZXJdICd9JyB8IE5BTUUgfCBOVU1CRVIgfCBTVFJJTkcKICAgICAgICAgIyMjIGRpY3RzZXRtYWtlcjogKHRlc3QgJzonIHRlc3QgKCcsJyB0ZXN0ICc6JyB0ZXN0KSogWycsJ10pIHwgKHRlc3QgKCcsJyB0ZXN0KSogWycsJ10pCiAKQEAgLTc0MSw3ICs3ODAsNyBAQAogICAgICMjIyB0ZXN0bGlzdDogdGVzdCAoJywnIHRlc3QpKiBbJywnXQogICAgICMgVGhlc2UgaGF2ZSBiZWVuIGV4ZXJjaXNlZCBlbm91Z2ggYWJvdmUKIAotICAgIGRlZiB0ZXN0Q2xhc3NkZWYoc2VsZik6CisgICAgZGVmIHRlc3RfY2xhc3NkZWYoc2VsZik6CiAgICAgICAgICMgJ2NsYXNzJyBOQU1FIFsnKCcgW3Rlc3RsaXN0XSAnKSddICc6JyBzdWl0ZQogICAgICAgICBjbGFzcyBCOiBwYXNzCiAgICAgICAgIGNsYXNzIEIyKCk6IHBhc3MKQEAgLTc2MCwxNCArNzk5LDE0IEBACiAgICAgICAgIEBjbGFzc19kZWNvcmF0b3IKICAgICAgICAgY2xhc3MgRzogcGFzcwogCi0gICAgZGVmIHRlc3REaWN0Y29tcHMoc2VsZik6CisgICAgZGVmIHRlc3RfZGljdGNvbXBzKHNlbGYpOgogICAgICAgICAjIGRpY3RvcnNldG1ha2VyOiAoICh0ZXN0ICc6JyB0ZXN0IChjb21wX2ZvciB8CiAgICAgICAgICMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnLCcgdGVzdCAnOicgdGVzdCkqIFsnLCddKSkgfAogICAgICAgICAjICAgICAgICAgICAgICAgICAgICh0ZXN0IChjb21wX2ZvciB8ICgnLCcgdGVzdCkqIFsnLCddKSkgKQogICAgICAgICBudW1zID0gWzEsIDIsIDNdCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoe2k6aSsxIGZvciBpIGluIG51bXN9LCB7MTogMiwgMjogMywgMzogNH0pCiAKLSAgICBkZWYgdGVzdExpc3Rjb21wcyhzZWxmKToKKyAgICBkZWYgdGVzdF9saXN0Y29tcHMoc2VsZik6CiAgICAgICAgICMgbGlzdCBjb21wcmVoZW5zaW9uIHRlc3RzCiAgICAgICAgIG51bXMgPSBbMSwgMiwgMywgNCwgNV0KICAgICAgICAgc3RycyA9IFsiQXBwbGUiLCAiQmFuYW5hIiwgIkNvY29udXQiXQpAQCAtODMwLDcgKzg2OSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeCwgWygnQm9laW5nJywgJ0FpcmxpbmVyJyksICgnQm9laW5nJywgJ0VuZ2luZScpLCAoJ0ZvcmQnLCAnRW5naW5lJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgnTWFjZG9uYWxkcycsICdDaGVlc2VidXJnZXInKV0pCiAKLSAgICBkZWYgdGVzdEdlbmV4cHMoc2VsZik6CisgICAgZGVmIHRlc3RfZ2VuZXhwcyhzZWxmKToKICAgICAgICAgIyBnZW5lcmF0b3IgZXhwcmVzc2lvbiB0ZXN0cwogICAgICAgICBnID0gKFt4IGZvciB4IGluIHJhbmdlKDEwKV0gZm9yIHggaW4gcmFuZ2UoMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV4dChnKSwgW3ggZm9yIHggaW4gcmFuZ2UoMTApXSkKQEAgLTg2NSw3ICs5MDQsNyBAQAogICAgICAgICBjaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgImZvbyh4IGZvciB4IGluIHJhbmdlKDEwKSwgMTAwKSIpCiAgICAgICAgIGNoZWNrX3N5bnRheF9lcnJvcihzZWxmLCAiZm9vKDEwMCwgeCBmb3IgeCBpbiByYW5nZSgxMCkpIikKIAotICAgIGRlZiB0ZXN0Q29tcHJlaGVuc2lvblNwZWNpYWxzKHNlbGYpOgorICAgIGRlZiB0ZXN0X2NvbXByZWhlbnNpb25fc3BlY2lhbHMoc2VsZik6CiAgICAgICAgICMgdGVzdCBmb3Igb3V0bW9zdCBpdGVyYWJsZSBwcmVjb21wdXRhdGlvbgogICAgICAgICB4ID0gMTA7IGcgPSAoaSBmb3IgaSBpbiByYW5nZSh4KSk7IHggPSA1CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGxpc3QoZykpLCAxMCkKQEAgLTkwNCw3ICs5NDMsNyBAQAogICAgICAgICB3aXRoIG1hbmFnZXIoKSBhcyB4LCBtYW5hZ2VyKCk6CiAgICAgICAgICAgICBwYXNzCiAKLSAgICBkZWYgdGVzdElmRWxzZUV4cHIoc2VsZik6CisgICAgZGVmIHRlc3RfaWZfZWxzZV9leHByKHNlbGYpOgogICAgICAgICAjIFRlc3QgaWZlbHNlIGV4cHJlc3Npb25zIGluIHZhcmlvdXMgY2FzZXMKICAgICAgICAgZGVmIF9jaGVja2V2YWwobXNnLCByZXQpOgogICAgICAgICAgICAgImhlbHBlciB0byBjaGVjayB0aGF0IGV2YWx1YXRpb24gb2YgZXhwcmVzc2lvbnMgaXMgZG9uZSBjb3JyZWN0bHkiCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2d6aXAucHkgYi9MaWIvdGVzdC90ZXN0X2d6aXAucHkKaW5kZXggNWFlNzQ2Ny4uZDJiNDg3MSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9nemlwLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfZ3ppcC5weQpAQCAtNjQsNiArNjQsMjEgQEAKICAgICAgICAgICAgIGQgPSBmLnJlYWQoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGQsIGRhdGExKjUwKQogCisgICAgZGVmIHRlc3RfcmVhZDEoc2VsZik6CisgICAgICAgIHNlbGYudGVzdF93cml0ZSgpCisgICAgICAgIGJsb2NrcyA9IFtdCisgICAgICAgIG5yZWFkID0gMAorICAgICAgICB3aXRoIGd6aXAuR3ppcEZpbGUoc2VsZi5maWxlbmFtZSwgJ3InKSBhcyBmOgorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICBkID0gZi5yZWFkMSgpCisgICAgICAgICAgICAgICAgaWYgbm90IGQ6CisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgYmxvY2tzLmFwcGVuZChkKQorICAgICAgICAgICAgICAgIG5yZWFkICs9IGxlbihkKQorICAgICAgICAgICAgICAgICMgQ2hlY2sgdGhhdCBwb3NpdGlvbiB3YXMgdXBkYXRlZCBjb3JyZWN0bHkgKHNlZSBpc3N1ZTEwNzkxKS4KKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCBucmVhZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiJycuam9pbihibG9ja3MpLCBkYXRhMSAqIDUwKQorCiAgICAgZGVmIHRlc3RfaW9fb25fY2xvc2VkX29iamVjdChzZWxmKToKICAgICAgICAgIyBUZXN0IHRoYXQgSS9PIG9wZXJhdGlvbnMgb24gY2xvc2VkIEd6aXBGaWxlIG9iamVjdHMgcmFpc2UgYQogICAgICAgICAjIFZhbHVlRXJyb3IsIGp1c3QgbGlrZSB0aGUgY29ycmVzcG9uZGluZyBmdW5jdGlvbnMgb24gZmlsZSBvYmplY3RzLgpAQCAtMTI0LDcgKzEzOSw3IEBACiAgICAgICAgICAgICB3aXRoIGlvLkJ1ZmZlcmVkUmVhZGVyKGYpIGFzIHI6CiAgICAgICAgICAgICAgICAgbGluZXMgPSBbbGluZSBmb3IgbGluZSBpbiByXQogCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGluZXMsIDUwICogZGF0YTEuc3BsaXRsaW5lcyhUcnVlKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaW5lcywgNTAgKiBkYXRhMS5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpKQogCiAgICAgZGVmIHRlc3RfcmVhZGxpbmUoc2VsZik6CiAgICAgICAgIHNlbGYudGVzdF93cml0ZSgpCkBAIC0zMjMsNiArMzM4LDE0IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgxMDApLCBiJycpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5yZWFkLCBsZW4odW5jb21wcmVzc2VkKSkKIAorICAgIGRlZiB0ZXN0X3RleHRpb19yZWFkbGluZXMoc2VsZik6CisgICAgICAgICMgSXNzdWUgIzEwNzkxOiBUZXh0SU9XcmFwcGVyLnJlYWRsaW5lcygpIGZhaWxzIHdoZW4gd3JhcHBpbmcgR3ppcEZpbGUuCisgICAgICAgIGxpbmVzID0gKGRhdGExICogNTApLmRlY29kZSgiYXNjaWkiKS5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCisgICAgICAgIHNlbGYudGVzdF93cml0ZSgpCisgICAgICAgIHdpdGggZ3ppcC5HemlwRmlsZShzZWxmLmZpbGVuYW1lLCAncicpIGFzIGY6CisgICAgICAgICAgICB3aXRoIGlvLlRleHRJT1dyYXBwZXIoZiwgZW5jb2Rpbmc9ImFzY2lpIikgYXMgdDoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHQucmVhZGxpbmVzKCksIGxpbmVzKQorCiAgICAgZGVmIHRlc3RfZmlsZW9ial9mcm9tX2Zkb3BlbihzZWxmKToKICAgICAgICAgIyBJc3N1ZSAjMTM3ODE6IE9wZW5pbmcgYSBHemlwRmlsZSBmb3Igd3JpdGluZyBmYWlscyB3aGVuIHVzaW5nIGEKICAgICAgICAgIyBmaWxlb2JqIGNyZWF0ZWQgd2l0aCBvcy5mZG9wZW4oKS4KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfaGFzaC5weSBiL0xpYi90ZXN0L3Rlc3RfaGFzaC5weQppbmRleCBmZWExMDI1Li43NzllNDg1IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2hhc2gucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9oYXNoLnB5CkBAIC0xMDcsOCArMTA3LDcgQEAKICAgICAgICAgcmV0dXJuIHNlbGYuc2VxW2luZGV4XQogCiBjbGFzcyBIYXNoQnVpbHRpbnNUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6Ci0gICAgaGFzaGVzX3RvX2NoZWNrID0gW3JhbmdlKDEwKSwKLSAgICAgICAgICAgICAgICAgICAgICAgZW51bWVyYXRlKHJhbmdlKDEwKSksCisgICAgaGFzaGVzX3RvX2NoZWNrID0gW2VudW1lcmF0ZShyYW5nZSgxMCkpLAogICAgICAgICAgICAgICAgICAgICAgICBpdGVyKERlZmF1bHRJdGVyU2VxKCkpLAogICAgICAgICAgICAgICAgICAgICAgICBpdGVyKGxhbWJkYTogMCwgMCksCiAgICAgICAgICAgICAgICAgICAgICAgXQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9odHRwX2Nvb2tpZWphci5weSBiL0xpYi90ZXN0L3Rlc3RfaHR0cF9jb29raWVqYXIucHkKaW5kZXggNDFlMGRmZC4uYTM1ZWM5NSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9odHRwX2Nvb2tpZWphci5weQorKysgYi9MaWIvdGVzdC90ZXN0X2h0dHBfY29va2llamFyLnB5CkBAIC0yNDgsMTggKzI0OCwxOSBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGMuX2Nvb2tpZXNbInd3dy5hY21lLmNvbSJdWyIvIl1bImJvbyJdLnZhbHVlLCBOb25lKQogCiAgICAgZGVmIHRlc3RfYmFkX21hZ2ljKHNlbGYpOgotICAgICAgICAjIElPRXJyb3JzIChlZy4gZmlsZSBkb2Vzbid0IGV4aXN0KSBhcmUgYWxsb3dlZCB0byBwcm9wYWdhdGUKKyAgICAgICAgIyBPU0Vycm9ycyAoZWcuIGZpbGUgZG9lc24ndCBleGlzdCkgYXJlIGFsbG93ZWQgdG8gcHJvcGFnYXRlCiAgICAgICAgIGZpbGVuYW1lID0gdGVzdC5zdXBwb3J0LlRFU1RGTgogICAgICAgICBmb3IgY29va2llamFyX2NsYXNzIGluIExXUENvb2tpZUphciwgTW96aWxsYUNvb2tpZUphcjoKICAgICAgICAgICAgIGMgPSBjb29raWVqYXJfY2xhc3MoKQogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIGMubG9hZChmaWxlbmFtZT0iZm9yIHRoaXMgdGVzdCB0byB3b3JrLCBhIGZpbGUgd2l0aCB0aGlzICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZpbGVuYW1lIHNob3VsZCBub3QgZXhpc3QiKQotICAgICAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZXhjOgotICAgICAgICAgICAgICAgICMgZXhhY3RseSBJT0Vycm9yLCBub3QgTG9hZEVycm9yCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyhleGMuX19jbGFzc19fLCBJT0Vycm9yKQorICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZXhjOgorICAgICAgICAgICAgICAgICMgYW4gT1NFcnJvciBzdWJjbGFzcyAobGlrZWx5IEZpbGVOb3RGb3VuZEVycm9yKSwgYnV0IG5vdAorICAgICAgICAgICAgICAgICMgTG9hZEVycm9yCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vdChleGMuX19jbGFzc19fLCBMb2FkRXJyb3IpCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgiZXhwZWN0ZWQgSU9FcnJvciBmb3IgaW52YWxpZCBmaWxlbmFtZSIpCisgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCJleHBlY3RlZCBPU0Vycm9yIGZvciBpbnZhbGlkIGZpbGVuYW1lIikKICAgICAgICAgIyBJbnZhbGlkIGNvbnRlbnRzIG9mIGNvb2tpZXMgZmlsZSAoZWcuIGJhZCBtYWdpYyBzdHJpbmcpCiAgICAgICAgICMgY2F1c2VzIGEgTG9hZEVycm9yLgogICAgICAgICB0cnk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2h0dHBsaWIucHkgYi9MaWIvdGVzdC90ZXN0X2h0dHBsaWIucHkKaW5kZXggZmYwMzMyMS4uMmEwYjNlMyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9odHRwbGliLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfaHR0cGxpYi5weQpAQCAtMTU4LDYgKzE1OCwyMyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3AucmVhZCgyKSwgYid4dCcpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZXNwLmlzY2xvc2VkKCkpCiAKKyAgICBkZWYgdGVzdF9wYXJ0aWFsX3JlYWRpbnRvcyhzZWxmKToKKyAgICAgICAgIyBpZiB3ZSBoYXZlIGEgbGVuZ2h0LCB0aGUgc3lzdGVtIGtub3dzIHdoZW4gdG8gY2xvc2UgaXRzZWxmCisgICAgICAgICMgc2FtZSBiZWhhdmlvdXIgdGhhbiB3aGVuIHdlIHJlYWQgdGhlIHdob2xlIHRoaW5nIHdpdGggcmVhZCgpCisgICAgICAgIGJvZHkgPSAiSFRUUC8xLjEgMjAwIE9rXHJcbkNvbnRlbnQtTGVuZ3RoOiA0XHJcblxyXG5UZXh0IgorICAgICAgICBzb2NrID0gRmFrZVNvY2tldChib2R5KQorICAgICAgICByZXNwID0gY2xpZW50LkhUVFBSZXNwb25zZShzb2NrKQorICAgICAgICByZXNwLmJlZ2luKCkKKyAgICAgICAgYiA9IGJ5dGVhcnJheSgyKQorICAgICAgICBuID0gcmVzcC5yZWFkaW50byhiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG4sIDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYnl0ZXMoYiksIGInVGUnKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHJlc3AuaXNjbG9zZWQoKSkKKyAgICAgICAgbiA9IHJlc3AucmVhZGludG8oYikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuLCAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ5dGVzKGIpLCBiJ3h0JykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlc3AuaXNjbG9zZWQoKSkKKwogICAgIGRlZiB0ZXN0X2hvc3RfcG9ydChzZWxmKToKICAgICAgICAgIyBDaGVjayBpbnZhbGlkIGhvc3RfcG9ydAogCkBAIC0yMDYsNiArMjIzLDIxIEBACiAgICAgICAgIGlmIHJlc3AucmVhZCgpOgogICAgICAgICAgICAgc2VsZi5mYWlsKCJEaWQgbm90IGV4cGVjdCByZXNwb25zZSBmcm9tIEhFQUQgcmVxdWVzdCIpCiAKKyAgICBkZWYgdGVzdF9yZWFkaW50b19oZWFkKHNlbGYpOgorICAgICAgICAjIFRlc3QgdGhhdCB0aGUgbGlicmFyeSBkb2Vzbid0IGF0dGVtcHQgdG8gcmVhZCBhbnkgZGF0YQorICAgICAgICAjIGZyb20gYSBIRUFEIHJlcXVlc3QuICAoVGlja2xlcyBTRiBidWcgIzYyMjA0Mi4pCisgICAgICAgIHNvY2sgPSBGYWtlU29ja2V0KAorICAgICAgICAgICAgJ0hUVFAvMS4xIDIwMCBPS1xyXG4nCisgICAgICAgICAgICAnQ29udGVudC1MZW5ndGg6IDE0NDMyXHJcbicKKyAgICAgICAgICAgICdcclxuJywKKyAgICAgICAgICAgIE5vRU9GU3RyaW5nSU8pCisgICAgICAgIHJlc3AgPSBjbGllbnQuSFRUUFJlc3BvbnNlKHNvY2ssIG1ldGhvZD0iSEVBRCIpCisgICAgICAgIHJlc3AuYmVnaW4oKQorICAgICAgICBiID0gYnl0ZWFycmF5KDUpCisgICAgICAgIGlmIHJlc3AucmVhZGludG8oYikgIT0gMDoKKyAgICAgICAgICAgIHNlbGYuZmFpbCgiRGlkIG5vdCBleHBlY3QgcmVzcG9uc2UgZnJvbSBIRUFEIHJlcXVlc3QiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ5dGVzKGIpLCBiJ1x4MDAnKjUpCisKICAgICBkZWYgdGVzdF9zZW5kX2ZpbGUoc2VsZik6CiAgICAgICAgIGV4cGVjdGVkID0gKGInR0VUIC9mb28gSFRUUC8xLjFcclxuSG9zdDogZXhhbXBsZS5jb21cclxuJwogICAgICAgICAgICAgICAgICAgICBiJ0FjY2VwdC1FbmNvZGluZzogaWRlbnRpdHlcclxuQ29udGVudC1MZW5ndGg6JykKQEAgLTI2MSwxNSArMjkzLDI4IEBACiAgICAgICAgICAgICAnVHJhbnNmZXItRW5jb2Rpbmc6IGNodW5rZWRcclxuXHJcbicKICAgICAgICAgICAgICdhXHJcbicKICAgICAgICAgICAgICdoZWxsbyB3b3JsXHJcbicKLSAgICAgICAgICAgICcxXHJcbicKLSAgICAgICAgICAgICdkXHJcbicKKyAgICAgICAgICAgICczXHJcbicKKyAgICAgICAgICAgICdkISBcclxuJworICAgICAgICAgICAgJzhcclxuJworICAgICAgICAgICAgJ2FuZCBub3cgXHJcbicKKyAgICAgICAgICAgICcyMlxyXG4nCisgICAgICAgICAgICAnZm9yIHNvbWV0aGluZyBjb21wbGV0ZWx5IGRpZmZlcmVudFxyXG4nCiAgICAgICAgICkKKyAgICAgICAgZXhwZWN0ZWQgPSBiJ2hlbGxvIHdvcmxkISBhbmQgbm93IGZvciBzb21ldGhpbmcgY29tcGxldGVseSBkaWZmZXJlbnQnCiAgICAgICAgIHNvY2sgPSBGYWtlU29ja2V0KGNodW5rZWRfc3RhcnQgKyAnMFxyXG4nKQogICAgICAgICByZXNwID0gY2xpZW50LkhUVFBSZXNwb25zZShzb2NrLCBtZXRob2Q9IkdFVCIpCiAgICAgICAgIHJlc3AuYmVnaW4oKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3AucmVhZCgpLCBiJ2hlbGxvIHdvcmxkJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNwLnJlYWQoKSwgZXhwZWN0ZWQpCiAgICAgICAgIHJlc3AuY2xvc2UoKQogCisgICAgICAgICMgVmFyaW91cyByZWFkIHNpemVzCisgICAgICAgIGZvciBuIGluIHJhbmdlKDEsIDEyKToKKyAgICAgICAgICAgIHNvY2sgPSBGYWtlU29ja2V0KGNodW5rZWRfc3RhcnQgKyAnMFxyXG4nKQorICAgICAgICAgICAgcmVzcCA9IGNsaWVudC5IVFRQUmVzcG9uc2Uoc29jaywgbWV0aG9kPSJHRVQiKQorICAgICAgICAgICAgcmVzcC5iZWdpbigpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3AucmVhZChuKSArIHJlc3AucmVhZChuKSArIHJlc3AucmVhZCgpLCBleHBlY3RlZCkKKyAgICAgICAgICAgIHJlc3AuY2xvc2UoKQorCiAgICAgICAgIGZvciB4IGluICgnJywgJ2Zvb1xyXG4nKToKICAgICAgICAgICAgIHNvY2sgPSBGYWtlU29ja2V0KGNodW5rZWRfc3RhcnQgKyB4KQogICAgICAgICAgICAgcmVzcCA9IGNsaWVudC5IVFRQUmVzcG9uc2Uoc29jaywgbWV0aG9kPSJHRVQiKQpAQCAtMjc3LDkgKzMyMiw2NCBAQAogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHJlc3AucmVhZCgpCiAgICAgICAgICAgICBleGNlcHQgY2xpZW50LkluY29tcGxldGVSZWFkIGFzIGk6Ci0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpLnBhcnRpYWwsIGInaGVsbG8gd29ybGQnKQotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVwcihpKSwnSW5jb21wbGV0ZVJlYWQoMTEgYnl0ZXMgcmVhZCknKQotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKGkpLCdJbmNvbXBsZXRlUmVhZCgxMSBieXRlcyByZWFkKScpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpLnBhcnRpYWwsIGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIGV4cGVjdGVkX21lc3NhZ2UgPSAnSW5jb21wbGV0ZVJlYWQoJWQgYnl0ZXMgcmVhZCknICUgbGVuKGV4cGVjdGVkKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVwcihpKSwgZXhwZWN0ZWRfbWVzc2FnZSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihpKSwgZXhwZWN0ZWRfbWVzc2FnZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdJbmNvbXBsZXRlUmVhZCBleHBlY3RlZCcpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHJlc3AuY2xvc2UoKQorCisgICAgZGVmIHRlc3RfcmVhZGludG9fY2h1bmtlZChzZWxmKToKKyAgICAgICAgY2h1bmtlZF9zdGFydCA9ICgKKyAgICAgICAgICAgICdIVFRQLzEuMSAyMDAgT0tcclxuJworICAgICAgICAgICAgJ1RyYW5zZmVyLUVuY29kaW5nOiBjaHVua2VkXHJcblxyXG4nCisgICAgICAgICAgICAnYVxyXG4nCisgICAgICAgICAgICAnaGVsbG8gd29ybFxyXG4nCisgICAgICAgICAgICAnM1xyXG4nCisgICAgICAgICAgICAnZCEgXHJcbicKKyAgICAgICAgICAgICc4XHJcbicKKyAgICAgICAgICAgICdhbmQgbm93IFxyXG4nCisgICAgICAgICAgICAnMjJcclxuJworICAgICAgICAgICAgJ2ZvciBzb21ldGhpbmcgY29tcGxldGVseSBkaWZmZXJlbnRcclxuJworICAgICAgICApCisgICAgICAgIGV4cGVjdGVkID0gYidoZWxsbyB3b3JsZCEgYW5kIG5vdyBmb3Igc29tZXRoaW5nIGNvbXBsZXRlbHkgZGlmZmVyZW50JworICAgICAgICBuZXhwZWN0ZWQgPSBsZW4oZXhwZWN0ZWQpCisgICAgICAgIGIgPSBieXRlYXJyYXkoMTI4KQorCisgICAgICAgIHNvY2sgPSBGYWtlU29ja2V0KGNodW5rZWRfc3RhcnQgKyAnMFxyXG4nKQorICAgICAgICByZXNwID0gY2xpZW50LkhUVFBSZXNwb25zZShzb2NrLCBtZXRob2Q9IkdFVCIpCisgICAgICAgIHJlc3AuYmVnaW4oKQorICAgICAgICBuID0gcmVzcC5yZWFkaW50byhiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJbOm5leHBlY3RlZF0sIGV4cGVjdGVkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG4sIG5leHBlY3RlZCkKKyAgICAgICAgcmVzcC5jbG9zZSgpCisKKyAgICAgICAgIyBWYXJpb3VzIHJlYWQgc2l6ZXMKKyAgICAgICAgZm9yIG4gaW4gcmFuZ2UoMSwgMTIpOgorICAgICAgICAgICAgc29jayA9IEZha2VTb2NrZXQoY2h1bmtlZF9zdGFydCArICcwXHJcbicpCisgICAgICAgICAgICByZXNwID0gY2xpZW50LkhUVFBSZXNwb25zZShzb2NrLCBtZXRob2Q9IkdFVCIpCisgICAgICAgICAgICByZXNwLmJlZ2luKCkKKyAgICAgICAgICAgIG0gPSBtZW1vcnl2aWV3KGIpCisgICAgICAgICAgICBpID0gcmVzcC5yZWFkaW50byhtWzA6bl0pCisgICAgICAgICAgICBpICs9IHJlc3AucmVhZGludG8obVtpOm4gKyBpXSkKKyAgICAgICAgICAgIGkgKz0gcmVzcC5yZWFkaW50byhtW2k6XSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYls6bmV4cGVjdGVkXSwgZXhwZWN0ZWQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGksIG5leHBlY3RlZCkKKyAgICAgICAgICAgIHJlc3AuY2xvc2UoKQorCisgICAgICAgIGZvciB4IGluICgnJywgJ2Zvb1xyXG4nKToKKyAgICAgICAgICAgIHNvY2sgPSBGYWtlU29ja2V0KGNodW5rZWRfc3RhcnQgKyB4KQorICAgICAgICAgICAgcmVzcCA9IGNsaWVudC5IVFRQUmVzcG9uc2Uoc29jaywgbWV0aG9kPSJHRVQiKQorICAgICAgICAgICAgcmVzcC5iZWdpbigpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgbiA9IHJlc3AucmVhZGludG8oYikKKyAgICAgICAgICAgIGV4Y2VwdCBjbGllbnQuSW5jb21wbGV0ZVJlYWQgYXMgaToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGkucGFydGlhbCwgZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAgZXhwZWN0ZWRfbWVzc2FnZSA9ICdJbmNvbXBsZXRlUmVhZCglZCBieXRlcyByZWFkKScgJSBsZW4oZXhwZWN0ZWQpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXByKGkpLCBleHBlY3RlZF9tZXNzYWdlKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKGkpLCBleHBlY3RlZF9tZXNzYWdlKQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBzZWxmLmZhaWwoJ0luY29tcGxldGVSZWFkIGV4cGVjdGVkJykKICAgICAgICAgICAgIGZpbmFsbHk6CkBAIC0zMDIsNiArNDAyLDI2IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzcC5yZWFzb24sICdPSycpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZXNwLmlzY2xvc2VkKCkpCiAKKyAgICBkZWYgdGVzdF9yZWFkaW50b19jaHVua2VkX2hlYWQoc2VsZik6CisgICAgICAgIGNodW5rZWRfc3RhcnQgPSAoCisgICAgICAgICAgICAnSFRUUC8xLjEgMjAwIE9LXHJcbicKKyAgICAgICAgICAgICdUcmFuc2Zlci1FbmNvZGluZzogY2h1bmtlZFxyXG5cclxuJworICAgICAgICAgICAgJ2FcclxuJworICAgICAgICAgICAgJ2hlbGxvIHdvcmxkXHJcbicKKyAgICAgICAgICAgICcxXHJcbicKKyAgICAgICAgICAgICdkXHJcbicKKyAgICAgICAgKQorICAgICAgICBzb2NrID0gRmFrZVNvY2tldChjaHVua2VkX3N0YXJ0ICsgJzBcclxuJykKKyAgICAgICAgcmVzcCA9IGNsaWVudC5IVFRQUmVzcG9uc2Uoc29jaywgbWV0aG9kPSJIRUFEIikKKyAgICAgICAgcmVzcC5iZWdpbigpCisgICAgICAgIGIgPSBieXRlYXJyYXkoNSkKKyAgICAgICAgbiA9IHJlc3AucmVhZGludG8oYikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuLCAwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ5dGVzKGIpLCBiJ1x4MDAnKjUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzcC5zdGF0dXMsIDIwMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNwLnJlYXNvbiwgJ09LJykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlc3AuaXNjbG9zZWQoKSkKKwogICAgIGRlZiB0ZXN0X25lZ2F0aXZlX2NvbnRlbnRfbGVuZ3RoKHNlbGYpOgogICAgICAgICBzb2NrID0gRmFrZVNvY2tldCgKICAgICAgICAgICAgICdIVFRQLzEuMSAyMDAgT0tcclxuQ29udGVudC1MZW5ndGg6IC0xXHJcblxyXG5IZWxsb1xyXG4nKQpAQCAtNTA4LDggKzYyOCw3IEBACiAgICAgZGVmIHRlc3RfbG9jYWxfZ29vZF9ob3N0bmFtZShzZWxmKToKICAgICAgICAgIyBUaGUgKHZhbGlkKSBjZXJ0IHZhbGlkYXRlcyB0aGUgSFRUUCBob3N0bmFtZQogICAgICAgICBpbXBvcnQgc3NsCi0gICAgICAgIGZyb20gdGVzdC5zc2xfc2VydmVycyBpbXBvcnQgbWFrZV9odHRwc19zZXJ2ZXIKLSAgICAgICAgc2VydmVyID0gbWFrZV9odHRwc19zZXJ2ZXIoc2VsZiwgQ0VSVF9sb2NhbGhvc3QpCisgICAgICAgIHNlcnZlciA9IHNlbGYubWFrZV9zZXJ2ZXIoQ0VSVF9sb2NhbGhvc3QpCiAgICAgICAgIGNvbnRleHQgPSBzc2wuU1NMQ29udGV4dChzc2wuUFJPVE9DT0xfVExTdjEpCiAgICAgICAgIGNvbnRleHQudmVyaWZ5X21vZGUgPSBzc2wuQ0VSVF9SRVFVSVJFRAogICAgICAgICBjb250ZXh0LmxvYWRfdmVyaWZ5X2xvY2F0aW9ucyhDRVJUX2xvY2FsaG9zdCkKQEAgLTUxNywxMiArNjM2LDEyIEBACiAgICAgICAgIGgucmVxdWVzdCgnR0VUJywgJy9ub25leGlzdGVudCcpCiAgICAgICAgIHJlc3AgPSBoLmdldHJlc3BvbnNlKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNwLnN0YXR1cywgNDA0KQorICAgICAgICBkZWwgc2VydmVyCiAKICAgICBkZWYgdGVzdF9sb2NhbF9iYWRfaG9zdG5hbWUoc2VsZik6CiAgICAgICAgICMgVGhlICh2YWxpZCkgY2VydCBkb2Vzbid0IHZhbGlkYXRlIHRoZSBIVFRQIGhvc3RuYW1lCiAgICAgICAgIGltcG9ydCBzc2wKLSAgICAgICAgZnJvbSB0ZXN0LnNzbF9zZXJ2ZXJzIGltcG9ydCBtYWtlX2h0dHBzX3NlcnZlcgotICAgICAgICBzZXJ2ZXIgPSBtYWtlX2h0dHBzX3NlcnZlcihzZWxmLCBDRVJUX2Zha2Vob3N0bmFtZSkKKyAgICAgICAgc2VydmVyID0gc2VsZi5tYWtlX3NlcnZlcihDRVJUX2Zha2Vob3N0bmFtZSkKICAgICAgICAgY29udGV4dCA9IHNzbC5TU0xDb250ZXh0KHNzbC5QUk9UT0NPTF9UTFN2MSkKICAgICAgICAgY29udGV4dC52ZXJpZnlfbW9kZSA9IHNzbC5DRVJUX1JFUVVJUkVECiAgICAgICAgIGNvbnRleHQubG9hZF92ZXJpZnlfbG9jYXRpb25zKENFUlRfZmFrZWhvc3RuYW1lKQpAQCAtNTQwLDYgKzY1OSw3IEBACiAgICAgICAgIGgucmVxdWVzdCgnR0VUJywgJy9ub25leGlzdGVudCcpCiAgICAgICAgIHJlc3AgPSBoLmdldHJlc3BvbnNlKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXNwLnN0YXR1cywgNDA0KQorICAgICAgICBkZWwgc2VydmVyCiAKICAgICBAdW5pdHRlc3Quc2tpcElmKG5vdCBoYXNhdHRyKGNsaWVudCwgJ0hUVFBTQ29ubmVjdGlvbicpLAogICAgICAgICAgICAgICAgICAgICAgJ2h0dHAuY2xpZW50LkhUVFBTQ29ubmVjdGlvbiBub3QgYXZhaWxhYmxlJykKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfaHR0cHNlcnZlcnMucHkgYi9MaWIvdGVzdC90ZXN0X2h0dHBzZXJ2ZXJzLnB5CmluZGV4IGU4M2MwNDguLmNjMTVkZDYgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfaHR0cHNlcnZlcnMucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9odHRwc2VydmVycy5weQpAQCAtNDY1LDYgKzQ2NSwyMyBAQAogICAgICAgICBzZWxmLnNlbmRfZXJyb3IoNDE3KQogICAgICAgICByZXR1cm4gRmFsc2UKIAorCitjbGFzcyBBdWRpdGFibGVCeXRlc0lPOgorCisgICAgZGVmIF9faW5pdF9fKHNlbGYpOgorICAgICAgICBzZWxmLmRhdGFzID0gW10KKworICAgIGRlZiB3cml0ZShzZWxmLCBkYXRhKToKKyAgICAgICAgc2VsZi5kYXRhcy5hcHBlbmQoZGF0YSkKKworICAgIGRlZiBnZXREYXRhKHNlbGYpOgorICAgICAgICByZXR1cm4gYicnLmpvaW4oc2VsZi5kYXRhcykKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBudW1Xcml0ZXMoc2VsZik6CisgICAgICAgIHJldHVybiBsZW4oc2VsZi5kYXRhcykKKworCiBjbGFzcyBCYXNlSFRUUFJlcXVlc3RIYW5kbGVyVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICIiIlRlc3QgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIEJhc2VIVFRQU2VydmVyLgogCkBAIC01MzEsMjcgKzU0OCw0OSBAQAogICAgICAgICBzZWxmLnZlcmlmeV9nZXRfY2FsbGVkKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHRbLTFdLCBiJzxodG1sPjxib2R5PkRhdGE8L2JvZHk+PC9odG1sPlxyXG4nKQogCi0gICAgZGVmIHRlc3RfaGVhZGVyX2J1ZmZlcmluZyhzZWxmKToKLQotICAgICAgICBkZWYgX3JlYWRBbmRSZXNlZWsoZik6Ci0gICAgICAgICAgICBwb3MgPSBmLnRlbGwoKQotICAgICAgICAgICAgZi5zZWVrKDApCi0gICAgICAgICAgICBkYXRhID0gZi5yZWFkKCkKLSAgICAgICAgICAgIGYuc2Vlayhwb3MpCi0gICAgICAgICAgICByZXR1cm4gZGF0YQorICAgIGRlZiB0ZXN0X2hlYWRlcl9idWZmZXJpbmdfb2Zfc2VuZF9lcnJvcihzZWxmKToKIAogICAgICAgICBpbnB1dCA9IEJ5dGVzSU8oYidHRVQgLyBIVFRQLzEuMVxyXG5cclxuJykKLSAgICAgICAgb3V0cHV0ID0gQnl0ZXNJTygpCi0gICAgICAgIHNlbGYuaGFuZGxlci5yZmlsZSA9IGlucHV0Ci0gICAgICAgIHNlbGYuaGFuZGxlci53ZmlsZSA9IG91dHB1dAotICAgICAgICBzZWxmLmhhbmRsZXIucmVxdWVzdF92ZXJzaW9uID0gJ0hUVFAvMS4xJworICAgICAgICBvdXRwdXQgPSBBdWRpdGFibGVCeXRlc0lPKCkKKyAgICAgICAgaGFuZGxlciA9IFNvY2tldGxlc3NSZXF1ZXN0SGFuZGxlcigpCisgICAgICAgIGhhbmRsZXIucmZpbGUgPSBpbnB1dAorICAgICAgICBoYW5kbGVyLndmaWxlID0gb3V0cHV0CisgICAgICAgIGhhbmRsZXIucmVxdWVzdF92ZXJzaW9uID0gJ0hUVFAvMS4xJworICAgICAgICBoYW5kbGVyLnJlcXVlc3RsaW5lID0gJycKKyAgICAgICAgaGFuZGxlci5jb21tYW5kID0gTm9uZQogCi0gICAgICAgIHNlbGYuaGFuZGxlci5zZW5kX2hlYWRlcignRm9vJywgJ2ZvbycpCi0gICAgICAgIHNlbGYuaGFuZGxlci5zZW5kX2hlYWRlcignYmFyJywgJ2JhcicpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoX3JlYWRBbmRSZXNlZWsob3V0cHV0KSwgYicnKQotICAgICAgICBzZWxmLmhhbmRsZXIuZW5kX2hlYWRlcnMoKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKF9yZWFkQW5kUmVzZWVrKG91dHB1dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgYidGb286IGZvb1xyXG5iYXI6IGJhclxyXG5cclxuJykKKyAgICAgICAgaGFuZGxlci5zZW5kX2Vycm9yKDQxOCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXRwdXQubnVtV3JpdGVzLCAyKQorCisgICAgZGVmIHRlc3RfaGVhZGVyX2J1ZmZlcmluZ19vZl9zZW5kX3Jlc3BvbnNlX29ubHkoc2VsZik6CisKKyAgICAgICAgaW5wdXQgPSBCeXRlc0lPKGInR0VUIC8gSFRUUC8xLjFcclxuXHJcbicpCisgICAgICAgIG91dHB1dCA9IEF1ZGl0YWJsZUJ5dGVzSU8oKQorICAgICAgICBoYW5kbGVyID0gU29ja2V0bGVzc1JlcXVlc3RIYW5kbGVyKCkKKyAgICAgICAgaGFuZGxlci5yZmlsZSA9IGlucHV0CisgICAgICAgIGhhbmRsZXIud2ZpbGUgPSBvdXRwdXQKKyAgICAgICAgaGFuZGxlci5yZXF1ZXN0X3ZlcnNpb24gPSAnSFRUUC8xLjEnCisKKyAgICAgICAgaGFuZGxlci5zZW5kX3Jlc3BvbnNlX29ubHkoNDE4KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG91dHB1dC5udW1Xcml0ZXMsIDApCisgICAgICAgIGhhbmRsZXIuZW5kX2hlYWRlcnMoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG91dHB1dC5udW1Xcml0ZXMsIDEpCisKKyAgICBkZWYgdGVzdF9oZWFkZXJfYnVmZmVyaW5nX29mX3NlbmRfaGVhZGVyKHNlbGYpOgorCisgICAgICAgIGlucHV0ID0gQnl0ZXNJTyhiJ0dFVCAvIEhUVFAvMS4xXHJcblxyXG4nKQorICAgICAgICBvdXRwdXQgPSBBdWRpdGFibGVCeXRlc0lPKCkKKyAgICAgICAgaGFuZGxlciA9IFNvY2tldGxlc3NSZXF1ZXN0SGFuZGxlcigpCisgICAgICAgIGhhbmRsZXIucmZpbGUgPSBpbnB1dAorICAgICAgICBoYW5kbGVyLndmaWxlID0gb3V0cHV0CisgICAgICAgIGhhbmRsZXIucmVxdWVzdF92ZXJzaW9uID0gJ0hUVFAvMS4xJworCisgICAgICAgIGhhbmRsZXIuc2VuZF9oZWFkZXIoJ0ZvbycsICdmb28nKQorICAgICAgICBoYW5kbGVyLnNlbmRfaGVhZGVyKCdiYXInLCAnYmFyJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXRwdXQubnVtV3JpdGVzLCAwKQorICAgICAgICBoYW5kbGVyLmVuZF9oZWFkZXJzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXRwdXQuZ2V0RGF0YSgpLCBiJ0ZvbzogZm9vXHJcbmJhcjogYmFyXHJcblxyXG4nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG91dHB1dC5udW1Xcml0ZXMsIDEpCiAKICAgICBkZWYgdGVzdF9oZWFkZXJfdW5idWZmZXJlZF93aGVuX2NvbnRpbnVlKHNlbGYpOgogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2ltYXBsaWIucHkgYi9MaWIvdGVzdC90ZXN0X2ltYXBsaWIucHkKaW5kZXggODAzNDAwMC4uYzRjN2VjYyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9pbWFwbGliLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfaW1hcGxpYi5weQpAQCAtMjU4LDExICsyNTgsNTggQEAKICAgICBwb3J0ID0gOTkzCiAgICAgaW1hcF9jbGFzcyA9IElNQVA0X1NTTAogCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBwYXNzCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIHBhc3MKKworICAgIGRlZiBjcmVhdGVfc3NsX2NvbnRleHQoc2VsZik6CisgICAgICAgIHNzbF9jb250ZXh0ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1NTTHYyMykKKyAgICAgICAgc3NsX2NvbnRleHQubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFKQorICAgICAgICByZXR1cm4gc3NsX2NvbnRleHQKKworICAgIGRlZiBjaGVja19sb2dpbmNhcGEoc2VsZiwgc2VydmVyKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZm9yIGNhcCBpbiBzZXJ2ZXIuY2FwYWJpbGl0aWVzOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShjYXAsIHN0cikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoJ0xPR0lORElTQUJMRUQnIGluIHNlcnZlci5jYXBhYmlsaXRpZXMpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoJ0FVVEg9UExBSU4nIGluIHNlcnZlci5jYXBhYmlsaXRpZXMpCisgICAgICAgICAgICBycyA9IHNlcnZlci5sb2dpbihzZWxmLnVzZXJuYW1lLCBzZWxmLnBhc3N3b3JkKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyc1swXSwgJ09LJykKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHNlcnZlci5sb2dvdXQoKQorCiAgICAgZGVmIHRlc3RfbG9naW5jYXBhKHNlbGYpOgotICAgICAgICBmb3IgY2FwIGluIHNlbGYuc2VydmVyLmNhcGFiaWxpdGllczoKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShjYXAsIHN0cikKLSAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSgnTE9HSU5ESVNBQkxFRCcgaW4gc2VsZi5zZXJ2ZXIuY2FwYWJpbGl0aWVzKQotICAgICAgICBzZWxmLmFzc2VydFRydWUoJ0FVVEg9UExBSU4nIGluIHNlbGYuc2VydmVyLmNhcGFiaWxpdGllcykKKyAgICAgICAgd2l0aCB0cmFuc2llbnRfaW50ZXJuZXQoc2VsZi5ob3N0KToKKyAgICAgICAgICAgIF9zZXJ2ZXIgPSBzZWxmLmltYXBfY2xhc3Moc2VsZi5ob3N0LCBzZWxmLnBvcnQpCisgICAgICAgICAgICBzZWxmLmNoZWNrX2xvZ2luY2FwYShfc2VydmVyKQorCisgICAgZGVmIHRlc3RfbG9naW5jYXBhX3dpdGhfY2xpZW50X2NlcnRmaWxlKHNlbGYpOgorICAgICAgICB3aXRoIHRyYW5zaWVudF9pbnRlcm5ldChzZWxmLmhvc3QpOgorICAgICAgICAgICAgX3NlcnZlciA9IHNlbGYuaW1hcF9jbGFzcyhzZWxmLmhvc3QsIHNlbGYucG9ydCwgY2VydGZpbGU9Q0VSVEZJTEUpCisgICAgICAgICAgICBzZWxmLmNoZWNrX2xvZ2luY2FwYShfc2VydmVyKQorCisgICAgZGVmIHRlc3RfbG9naW5jYXBhX3dpdGhfY2xpZW50X3NzbF9jb250ZXh0KHNlbGYpOgorICAgICAgICB3aXRoIHRyYW5zaWVudF9pbnRlcm5ldChzZWxmLmhvc3QpOgorICAgICAgICAgICAgX3NlcnZlciA9IHNlbGYuaW1hcF9jbGFzcyhzZWxmLmhvc3QsIHNlbGYucG9ydCwgc3NsX2NvbnRleHQ9c2VsZi5jcmVhdGVfc3NsX2NvbnRleHQoKSkKKyAgICAgICAgICAgIHNlbGYuY2hlY2tfbG9naW5jYXBhKF9zZXJ2ZXIpCisKKyAgICBkZWYgdGVzdF9sb2dvdXQoc2VsZik6CisgICAgICAgIHdpdGggdHJhbnNpZW50X2ludGVybmV0KHNlbGYuaG9zdCk6CisgICAgICAgICAgICBfc2VydmVyID0gc2VsZi5pbWFwX2NsYXNzKHNlbGYuaG9zdCwgc2VsZi5wb3J0KQorICAgICAgICAgICAgcnMgPSBfc2VydmVyLmxvZ291dCgpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJzWzBdLCAnQllFJykKKworICAgIGRlZiB0ZXN0X3NzbF9jb250ZXh0X2NlcnRmaWxlX2V4Y2x1c2l2ZShzZWxmKToKKyAgICAgICAgd2l0aCB0cmFuc2llbnRfaW50ZXJuZXQoc2VsZi5ob3N0KToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNlbGYuaW1hcF9jbGFzcywgc2VsZi5ob3N0LCBzZWxmLnBvcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0ZmlsZT1DRVJURklMRSwgc3NsX2NvbnRleHQ9c2VsZi5jcmVhdGVfc3NsX2NvbnRleHQoKSkKKworICAgIGRlZiB0ZXN0X3NzbF9jb250ZXh0X2tleWZpbGVfZXhjbHVzaXZlKHNlbGYpOgorICAgICAgICB3aXRoIHRyYW5zaWVudF9pbnRlcm5ldChzZWxmLmhvc3QpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgc2VsZi5pbWFwX2NsYXNzLCBzZWxmLmhvc3QsIHNlbGYucG9ydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleWZpbGU9Q0VSVEZJTEUsIHNzbF9jb250ZXh0PXNlbGYuY3JlYXRlX3NzbF9jb250ZXh0KCkpCiAKIAogZGVmIHRlc3RfbWFpbigpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9pbXAucHkgYi9MaWIvdGVzdC90ZXN0X2ltcC5weQppbmRleCA1NTFhZDFiLi4zMDQxMjE4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2ltcC5weQorKysgYi9MaWIvdGVzdC90ZXN0X2ltcC5weQpAQCAtNTgsNiArNTgsMTIgQEAKICAgICAgICAgICAgIHdpdGggaW1wLmZpbmRfbW9kdWxlKCdtb2R1bGVfJyArIG1vZCwgc2VsZi50ZXN0X3BhdGgpWzBdIGFzIGZkOgogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZmQuZW5jb2RpbmcsIGVuY29kaW5nKQogCisgICAgICAgIHBhdGggPSBbb3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKV0KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXNSZWdleChTeW50YXhFcnJvciwKKyAgICAgICAgICAgIHIiTm9uLVVURi04IGNvZGUgc3RhcnRpbmcgd2l0aCAnXFx4ZjYnIgorICAgICAgICAgICAgciIgaW4gZmlsZSAuKmJhZHN5bnRheF9wZXAzMTIwLnB5IiwKKyAgICAgICAgICAgIGltcC5maW5kX21vZHVsZSwgJ2JhZHN5bnRheF9wZXAzMTIwJywgcGF0aCkKKwogICAgIGRlZiB0ZXN0X2lzc3VlMTI2NyhzZWxmKToKICAgICAgICAgZm9yIG1vZCwgZW5jb2RpbmcsIF8gaW4gc2VsZi50ZXN0X3N0cmluZ3M6CiAgICAgICAgICAgICBmcCwgZmlsZW5hbWUsIGluZm8gID0gaW1wLmZpbmRfbW9kdWxlKCdtb2R1bGVfJyArIG1vZCwKQEAgLTIxNSw2ICsyMjEsMTAgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKICAgICAgICAgICAgIGltcC5jYWNoZV9mcm9tX3NvdXJjZSgnL2Zvby9iYXIvYmF6L3F1eC5weScsIFRydWUpLAogICAgICAgICAgICAgJy9mb28vYmFyL2Jhei9fX3B5Y2FjaGVfXy9xdXgue30ucHljJy5mb3JtYXQoc2VsZi50YWcpKQorICAgICAgICAjIERpcmVjdG9yeSB3aXRoIGEgZG90LCBmaWxlbmFtZSB3aXRob3V0IGRvdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgaW1wLmNhY2hlX2Zyb21fc291cmNlKCcvZm9vLmJhci9maWxlJywgVHJ1ZSksCisgICAgICAgICAgICAnL2Zvby5iYXIvX19weWNhY2hlX18vZmlsZXt9LnB5YycuZm9ybWF0KHNlbGYudGFnKSkKIAogICAgIGRlZiB0ZXN0X2NhY2hlX2Zyb21fc291cmNlX29wdGltaXplZChzZWxmKToKICAgICAgICAgIyBHaXZlbiB0aGUgcGF0aCB0byBhIC5weSBmaWxlLCByZXR1cm4gdGhlIHBhdGggdG8gaXRzIFBFUCAzMTQ3CkBAIC0zMTQsOCArMzI0LDcgQEAKICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoJ3BlcDMxNDcnKQogICAgICAgICBzZWxmLmFkZENsZWFudXAoY2xlYW51cCkKICAgICAgICAgIyBUb3VjaCB0aGUgX19pbml0X18ucHkgZmlsZS4KLSAgICAgICAgd2l0aCBvcGVuKCdwZXAzMTQ3L19faW5pdF9fLnB5JywgJ3cnKToKLSAgICAgICAgICAgIHBhc3MKKyAgICAgICAgc3VwcG9ydC5jcmVhdGVfZW1wdHlfZmlsZSgncGVwMzE0Ny9fX2luaXRfXy5weScpCiAgICAgICAgIG0gPSBfX2ltcG9ydF9fKCdwZXAzMTQ3JykKICAgICAgICAgIyBFbnN1cmUgd2UgbG9hZCB0aGUgcHljIGZpbGUuCiAgICAgICAgIHN1cHBvcnQuZm9yZ2V0KCdwZXAzMTQ3JykKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfaW1wb3J0LnB5IGIvTGliL3Rlc3QvdGVzdF9pbXBvcnQucHkKaW5kZXggNDg0NDNlYS4uNjJmZGY0YiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9pbXBvcnQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9pbXBvcnQucHkKQEAgLTE2LDcgKzE2LDcgQEAKIGZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCAoCiAgICAgRW52aXJvbm1lbnRWYXJHdWFyZCwgVEVTVEZOLCBjaGVja193YXJuaW5ncywgZm9yZ2V0LCBpc19qeXRob24sCiAgICAgbWFrZV9sZWdhY3lfcHljLCBybXRyZWUsIHJ1bl91bml0dGVzdCwgc3dhcF9hdHRyLCBzd2FwX2l0ZW0sIHRlbXBfdW1hc2ssCi0gICAgdW5saW5rLCB1bmxvYWQpCisgICAgdW5saW5rLCB1bmxvYWQsIGNyZWF0ZV9lbXB0eV9maWxlKQogZnJvbSB0ZXN0IGltcG9ydCBzY3JpcHRfaGVscGVyCiAKIApAQCAtOTgsMTYgKzk4LDEzIEBACiAKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhvcy5uYW1lID09ICdwb3NpeCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgInRlc3QgbWVhbmluZ2Z1bCBvbmx5IG9uIHBvc2l4IHN5c3RlbXMiKQotICAgIGRlZiB0ZXN0X2V4ZWN1dGVfYml0X25vdF9jb3BpZWQoc2VsZik6Ci0gICAgICAgICMgSXNzdWUgNjA3MDogdW5kZXIgcG9zaXggLnB5YyBmaWxlcyBnb3QgdGhlaXIgZXhlY3V0ZSBiaXQgc2V0IGlmCi0gICAgICAgICMgdGhlIC5weSBmaWxlIGhhZCB0aGUgZXhlY3V0ZSBiaXQgc2V0LCBidXQgdGhleSBhcmVuJ3QgZXhlY3V0YWJsZS4KLSAgICAgICAgd2l0aCB0ZW1wX3VtYXNrKDBvMDIyKToKKyAgICBkZWYgdGVzdF9jcmVhdGlvbl9tb2RlKHNlbGYpOgorICAgICAgICBtYXNrID0gMG8wMjIKKyAgICAgICAgd2l0aCB0ZW1wX3VtYXNrKG1hc2spOgogICAgICAgICAgICAgc3lzLnBhdGguaW5zZXJ0KDAsIG9zLmN1cmRpcikKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBmbmFtZSA9IFRFU1RGTiArIG9zLmV4dHNlcCArICJweSIKLSAgICAgICAgICAgICAgICBvcGVuKGZuYW1lLCAndycpLmNsb3NlKCkKLSAgICAgICAgICAgICAgICBvcy5jaG1vZChmbmFtZSwgKHN0YXQuU19JUlVTUiB8IHN0YXQuU19JUkdSUCB8IHN0YXQuU19JUk9USCB8Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0LlNfSVhVU1IgfCBzdGF0LlNfSVhHUlAgfCBzdGF0LlNfSVhPVEgpKQorICAgICAgICAgICAgICAgIGNyZWF0ZV9lbXB0eV9maWxlKGZuYW1lKQogICAgICAgICAgICAgICAgIGZuID0gaW1wLmNhY2hlX2Zyb21fc291cmNlKGZuYW1lKQogICAgICAgICAgICAgICAgIHVubGluayhmbikKICAgICAgICAgICAgICAgICBfX2ltcG9ydF9fKFRFU1RGTikKQEAgLTExNSw4ICsxMTIsOSBAQAogICAgICAgICAgICAgICAgICAgICBzZWxmLmZhaWwoIl9faW1wb3J0X18gZGlkIG5vdCByZXN1bHQgaW4gY3JlYXRpb24gb2YgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImVpdGhlciBhIC5weWMgb3IgLnB5byBmaWxlIikKICAgICAgICAgICAgICAgICBzID0gb3Muc3RhdChmbikKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0YXQuU19JTU9ERShzLnN0X21vZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdC5TX0lSVVNSIHwgc3RhdC5TX0lSR1JQIHwgc3RhdC5TX0lST1RIKQorICAgICAgICAgICAgICAgICMgQ2hlY2sgdGhhdCB0aGUgdW1hc2sgaXMgcmVzcGVjdGVkLCBhbmQgdGhlIGV4ZWN1dGFibGUgYml0cworICAgICAgICAgICAgICAgICMgYXJlbid0IHNldC4KKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0YXQuU19JTU9ERShzLnN0X21vZGUpLCAwbzY2NiAmIH5tYXNrKQogICAgICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgICAgICBkZWwgc3lzLnBhdGhbMF0KICAgICAgICAgICAgICAgICByZW1vdmVfZmlsZXMoVEVTVEZOKQpAQCAtMjk3LDggKzI5NSw2IEBACiAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCdwYXRoIGlzIG5vdCBlbmNvZGFibGUgdG8ge30nLmZvcm1hdChlbmNvZGluZykpCiAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoSW1wb3J0RXJyb3IpIGFzIGM6CiAgICAgICAgICAgICBfX2ltcG9ydF9fKHBhdGgpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIkltcG9ydCBieSBmaWxlbmFtZSBpcyBub3Qgc3VwcG9ydGVkLiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgYy5leGNlcHRpb24uYXJnc1swXSkKIAogICAgIGRlZiB0ZXN0X2ltcG9ydF9pbl9kZWxfZG9lc19ub3RfY3Jhc2goc2VsZik6CiAgICAgICAgICMgSXNzdWUgNDIzNgpAQCAtNDA5LDcgKzQwNSw3IEBACiAgICAgZGVmIHRlc3RfZm9yZWlnbl9jb2RlKHNlbGYpOgogICAgICAgICBweV9jb21waWxlLmNvbXBpbGUoc2VsZi5maWxlX25hbWUpCiAgICAgICAgIHdpdGggb3BlbihzZWxmLmNvbXBpbGVkX25hbWUsICJyYiIpIGFzIGY6Ci0gICAgICAgICAgICBoZWFkZXIgPSBmLnJlYWQoOCkKKyAgICAgICAgICAgIGhlYWRlciA9IGYucmVhZCgxMikKICAgICAgICAgICAgIGNvZGUgPSBtYXJzaGFsLmxvYWQoZikKICAgICAgICAgY29uc3RhbnRzID0gbGlzdChjb2RlLmNvX2NvbnN0cykKICAgICAgICAgZm9yZWlnbl9jb2RlID0gdGVzdF9tYWluLl9fY29kZV9fCkBAIC02NzMsNiArNjY5LDE2IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3lzLm1vZHVsZXNbJ3BlcDMxNDcuZm9vJ10uX19jYWNoZWRfXywKICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4ob3MuY3VyZGlyLCBmb29fcHljKSkKIAorICAgIGRlZiB0ZXN0X3JlY29tcHV0ZV9weWNfc2FtZV9zZWNvbmQoc2VsZik6CisgICAgICAgICMgRXZlbiB3aGVuIHRoZSBzb3VyY2UgZmlsZSBkb2Vzbid0IGNoYW5nZSB0aW1lc3RhbXAsIGEgY2hhbmdlIGluCisgICAgICAgICMgc291cmNlIHNpemUgaXMgZW5vdWdoIHRvIHRyaWdnZXIgcmVjb21wdXRhdGlvbiBvZiB0aGUgcHljIGZpbGUuCisgICAgICAgIF9faW1wb3J0X18oVEVTVEZOKQorICAgICAgICB1bmxvYWQoVEVTVEZOKQorICAgICAgICB3aXRoIG9wZW4oc2VsZi5zb3VyY2UsICdhJykgYXMgZnA6CisgICAgICAgICAgICBwcmludCgieCA9IDUiLCBmaWxlPWZwKQorICAgICAgICBtID0gX19pbXBvcnRfXyhURVNURk4pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS54LCA1KQorCiAKIGNsYXNzIFJlbGF0aXZlSW1wb3J0RnJvbUltcG9ydGxpYlRlc3RzKHRlc3RfcmVsYXRpdmVfaW1wb3J0cy5SZWxhdGl2ZUltcG9ydHMpOgogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2ltcG9ydGhvb2tzLnB5IGIvTGliL3Rlc3QvdGVzdF9pbXBvcnRob29rcy5weQppbmRleCBlYzY3MzBlLi43YTI1NjU3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2ltcG9ydGhvb2tzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfaW1wb3J0aG9va3MucHkKQEAgLTUxLDcgKzUxLDcgQEAKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwYXRoPXRlc3RfcGF0aCk6CiAgICAgICAgIGlmIHBhdGggIT0gdGVzdF9wYXRoOgotICAgICAgICAgICAgIyBpZiBvdXQgY2xhc3MgaXMgb24gc3lzLnBhdGhfaG9va3MsIHdlIG11c3QgcmFpc2UKKyAgICAgICAgICAgICMgaWYgb3VyIGNsYXNzIGlzIG9uIHN5cy5wYXRoX2hvb2tzLCB3ZSBtdXN0IHJhaXNlCiAgICAgICAgICAgICAjIEltcG9ydEVycm9yIGZvciBhbnkgcGF0aCBpdGVtIHRoYXQgd2UgY2FuJ3QgaGFuZGxlLgogICAgICAgICAgICAgcmFpc2UgSW1wb3J0RXJyb3IKICAgICAgICAgc2VsZi5wYXRoID0gcGF0aApAQCAtMjI5LDcgKzIyOSw5IEBACiAgICAgICAgIGkgPSBJbXBXcmFwcGVyKCkKICAgICAgICAgc3lzLm1ldGFfcGF0aC5hcHBlbmQoaSkKICAgICAgICAgc3lzLnBhdGhfaG9va3MuYXBwZW5kKEltcFdyYXBwZXIpCi0gICAgICAgIG1uYW1lcyA9ICgiY29sb3JzeXMiLCAidXJsbGliLnBhcnNlIiwgImRpc3R1dGlscy5jb3JlIikKKyAgICAgICAgbW5hbWVzID0gKAorICAgICAgICAgICAgImNvbG9yc3lzIiwgInVybGxpYi5wYXJzZSIsICJkaXN0dXRpbHMuY29yZSIsICJzeXMiLAorICAgICAgICApCiAgICAgICAgIGZvciBtbmFtZSBpbiBtbmFtZXM6CiAgICAgICAgICAgICBwYXJlbnQgPSBtbmFtZS5zcGxpdCgiLiIpWzBdCiAgICAgICAgICAgICBmb3IgbiBpbiBsaXN0KHN5cy5tb2R1bGVzKToKQEAgLTIzNyw3ICsyMzksOCBAQAogICAgICAgICAgICAgICAgICAgICBkZWwgc3lzLm1vZHVsZXNbbl0KICAgICAgICAgZm9yIG1uYW1lIGluIG1uYW1lczoKICAgICAgICAgICAgIG0gPSBfX2ltcG9ydF9fKG1uYW1lLCBnbG9iYWxzKCksIGxvY2FscygpLCBbIl9fZHVtbXlfXyJdKQotICAgICAgICAgICAgbS5fX2xvYWRlcl9fICAjIHRvIG1ha2Ugc3VyZSB3ZSBhY3R1YWxseSBoYW5kbGVkIHRoZSBpbXBvcnQKKyAgICAgICAgICAgICMgdG8gbWFrZSBzdXJlIHdlIGFjdHVhbGx5IGhhbmRsZWQgdGhlIGltcG9ydAorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhc2F0dHIobSwgIl9fbG9hZGVyX18iKSkKIAogCiBkZWYgdGVzdF9tYWluKCk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2luc3BlY3QucHkgYi9MaWIvdGVzdC90ZXN0X2luc3BlY3QucHkKaW5kZXggZjUzMThlMS4uNzQwN2MxYyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9pbnNwZWN0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfaW5zcGVjdC5weQpAQCAtMzA0LDcgKzMwNCw3IEBACiAgICAgICAgIGdldGxpbmVzID0gbGluZWNhY2hlLmdldGxpbmVzCiAgICAgICAgIGRlZiBtb25rZXkoZmlsZW5hbWUsIG1vZHVsZV9nbG9iYWxzPU5vbmUpOgogICAgICAgICAgICAgaWYgZmlsZW5hbWUgPT0gZm46Ci0gICAgICAgICAgICAgICAgcmV0dXJuIHNvdXJjZS5zcGxpdGxpbmVzKFRydWUpCisgICAgICAgICAgICAgICAgcmV0dXJuIHNvdXJjZS5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHJldHVybiBnZXRsaW5lcyhmaWxlbmFtZSwgbW9kdWxlX2dsb2JhbHMpCiAgICAgICAgIGxpbmVjYWNoZS5nZXRsaW5lcyA9IG1vbmtleQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9pby5weSBiL0xpYi90ZXN0L3Rlc3RfaW8ucHkKaW5kZXggZWE4MmNlYS4uOTYyNThiNCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9pby5weQorKysgYi9MaWIvdGVzdC90ZXN0X2lvLnB5CkBAIC00OSw3ICs0OSw3IEBACiAKIGRlZiBfZGVmYXVsdF9jaHVua19zaXplKCk6CiAgICAgIiIiR2V0IHRoZSBkZWZhdWx0IFRleHRJT1dyYXBwZXIgY2h1bmsgc2l6ZSIiIgotICAgIHdpdGggb3BlbihfX2ZpbGVfXywgInIiLCBlbmNvZGluZz0ibGF0aW4xIikgYXMgZjoKKyAgICB3aXRoIG9wZW4oX19maWxlX18sICJyIiwgZW5jb2Rpbmc9ImxhdGluLTEiKSBhcyBmOgogICAgICAgICByZXR1cm4gZi5fQ0hVTktfU0laRQogCiAKQEAgLTYzNCw2ICs2MzQsMTUgQEAKICAgICAgICAgZm9yIG9iaiBpbiB0ZXN0OgogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGhhc2F0dHIob2JqLCAiX19kaWN0X18iKSkKIAorICAgIGRlZiB0ZXN0X29wZW5lcihzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLm9wZW4oc3VwcG9ydC5URVNURk4sICJ3IikgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoImVnZ1xuIikKKyAgICAgICAgZmQgPSBvcy5vcGVuKHN1cHBvcnQuVEVTVEZOLCBvcy5PX1JET05MWSkKKyAgICAgICAgZGVmIG9wZW5lcihwYXRoLCBmbGFncyk6CisgICAgICAgICAgICByZXR1cm4gZmQKKyAgICAgICAgd2l0aCBzZWxmLm9wZW4oIm5vbi1leGlzdGVudCIsICJyIiwgb3BlbmVyPW9wZW5lcikgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksICJlZ2dcbiIpCisKIGNsYXNzIENJT1Rlc3QoSU9UZXN0KToKIAogICAgIGRlZiB0ZXN0X0lPQmFzZV9maW5hbGl6ZShzZWxmKToKQEAgLTgzNSw2ICs4NDQsMTIgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLCBiImdmIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChidWZpby5yZWFkaW50byhiKSwgMCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLCBiImdmIikKKyAgICAgICAgcmF3aW8gPSBzZWxmLk1vY2tSYXdJTygoYiJhYmMiLCBOb25lKSkKKyAgICAgICAgYnVmaW8gPSBzZWxmLnRwKHJhd2lvKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ1ZmlvLnJlYWRpbnRvKGIpLCAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIsIGIiYWIiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ1ZmlvLnJlYWRpbnRvKGIpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIsIGIiY2IiKQogCiAgICAgZGVmIHRlc3RfcmVhZGxpbmVzKHNlbGYpOgogICAgICAgICBkZWYgYnVmaW8oKToKQEAgLTE4MDIsMTEgKzE4MTcsMTEgQEAKICAgICAgICAgciA9IHNlbGYuQnl0ZXNJTyhiIlx4YzNceGE5XG5cbiIpCiAgICAgICAgIGIgPSBzZWxmLkJ1ZmZlcmVkUmVhZGVyKHIsIDEwMDApCiAgICAgICAgIHQgPSBzZWxmLlRleHRJT1dyYXBwZXIoYikKLSAgICAgICAgdC5fX2luaXRfXyhiLCBlbmNvZGluZz0ibGF0aW4xIiwgbmV3bGluZT0iXHJcbiIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodC5lbmNvZGluZywgImxhdGluMSIpCisgICAgICAgIHQuX19pbml0X18oYiwgZW5jb2Rpbmc9ImxhdGluLTEiLCBuZXdsaW5lPSJcclxuIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0LmVuY29kaW5nLCAibGF0aW4tMSIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodC5saW5lX2J1ZmZlcmluZywgRmFsc2UpCi0gICAgICAgIHQuX19pbml0X18oYiwgZW5jb2Rpbmc9InV0ZjgiLCBsaW5lX2J1ZmZlcmluZz1UcnVlKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHQuZW5jb2RpbmcsICJ1dGY4IikKKyAgICAgICAgdC5fX2luaXRfXyhiLCBlbmNvZGluZz0idXRmLTgiLCBsaW5lX2J1ZmZlcmluZz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHQuZW5jb2RpbmcsICJ1dGYtOCIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodC5saW5lX2J1ZmZlcmluZywgVHJ1ZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiXHhlOVxuIiwgdC5yZWFkbGluZSgpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHQuX19pbml0X18sIGIsIG5ld2xpbmU9NDIpCkBAIC0xODU2LDggKzE4NzEsOCBAQAogICAgIGRlZiB0ZXN0X2VuY29kaW5nKHNlbGYpOgogICAgICAgICAjIENoZWNrIHRoZSBlbmNvZGluZyBhdHRyaWJ1dGUgaXMgYWx3YXlzIHNldCwgYW5kIHZhbGlkCiAgICAgICAgIGIgPSBzZWxmLkJ5dGVzSU8oKQotICAgICAgICB0ID0gc2VsZi5UZXh0SU9XcmFwcGVyKGIsIGVuY29kaW5nPSJ1dGY4IikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0LmVuY29kaW5nLCAidXRmOCIpCisgICAgICAgIHQgPSBzZWxmLlRleHRJT1dyYXBwZXIoYiwgZW5jb2Rpbmc9InV0Zi04IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0LmVuY29kaW5nLCAidXRmLTgiKQogICAgICAgICB0ID0gc2VsZi5UZXh0SU9XcmFwcGVyKGIpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh0LmVuY29kaW5nIGlzIG5vdCBOb25lKQogICAgICAgICBjb2RlY3MubG9va3VwKHQuZW5jb2RpbmcpCkBAIC0xOTUwLDggKzE5NjUsOCBAQAogICAgICAgICB0ZXN0ZGF0YSA9IGIiQUFBXG5CQlx4MDBCXG5DQ0NcckRERFxyRUVFXHJcbkZGRlxyXG5HR0ciCiAgICAgICAgIG5vcm1hbGl6ZWQgPSB0ZXN0ZGF0YS5yZXBsYWNlKGIiXHJcbiIsIGIiXG4iKS5yZXBsYWNlKGIiXHIiLCBiIlxuIikKICAgICAgICAgZm9yIG5ld2xpbmUsIGV4cGVjdGVkIGluIFsKLSAgICAgICAgICAgIChOb25lLCBub3JtYWxpemVkLmRlY29kZSgiYXNjaWkiKS5zcGxpdGxpbmVzKFRydWUpKSwKLSAgICAgICAgICAgICgiIiwgdGVzdGRhdGEuZGVjb2RlKCJhc2NpaSIpLnNwbGl0bGluZXMoVHJ1ZSkpLAorICAgICAgICAgICAgKE5vbmUsIG5vcm1hbGl6ZWQuZGVjb2RlKCJhc2NpaSIpLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkpLAorICAgICAgICAgICAgKCIiLCB0ZXN0ZGF0YS5kZWNvZGUoImFzY2lpIikuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKSksCiAgICAgICAgICAgICAoIlxuIiwgWyJBQUFcbiIsICJCQlx4MDBCXG4iLCAiQ0NDXHJERERcckVFRVxyXG4iLCAiRkZGXHJcbiIsICJHR0ciXSksCiAgICAgICAgICAgICAoIlxyXG4iLCBbIkFBQVxuQkJceDAwQlxuQ0NDXHJERERcckVFRVxyXG4iLCAiRkZGXHJcbiIsICJHR0ciXSksCiAgICAgICAgICAgICAoIlxyIiwgIFsiQUFBXG5CQlx4MDBCXG5DQ0NcciIsICJERERcciIsICJFRUVcciIsICJcbkZGRlxyIiwgIlxuR0dHIl0pLApAQCAtMjAzNiw3ICsyMDUxLDcgQEAKIAogICAgIGRlZiB0ZXN0X2Jhc2ljX2lvKHNlbGYpOgogICAgICAgICBmb3IgY2h1bmtzaXplIGluICgxLCAyLCAzLCA0LCA1LCAxNSwgMTYsIDE3LCAzMSwgMzIsIDMzLCA2MywgNjQsIDY1KToKLSAgICAgICAgICAgIGZvciBlbmMgaW4gImFzY2lpIiwgImxhdGluMSIsICJ1dGY4IiA6IyAsICJ1dGYtMTYtYmUiLCAidXRmLTE2LWxlIjoKKyAgICAgICAgICAgIGZvciBlbmMgaW4gImFzY2lpIiwgImxhdGluLTEiLCAidXRmLTgiIDojICwgInV0Zi0xNi1iZSIsICJ1dGYtMTYtbGUiOgogICAgICAgICAgICAgICAgIGYgPSBzZWxmLm9wZW4oc3VwcG9ydC5URVNURk4sICJ3KyIsIGVuY29kaW5nPWVuYykKICAgICAgICAgICAgICAgICBmLl9DSFVOS19TSVpFID0gY2h1bmtzaXplCiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLndyaXRlKCJhYmMiKSwgMykKQEAgLTIwODYsNyArMjEwMSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmxpbmVzLCB3bGluZXMpCiAKICAgICBkZWYgdGVzdF90ZWxsaW5nKHNlbGYpOgotICAgICAgICBmID0gc2VsZi5vcGVuKHN1cHBvcnQuVEVTVEZOLCAidysiLCBlbmNvZGluZz0idXRmOCIpCisgICAgICAgIGYgPSBzZWxmLm9wZW4oc3VwcG9ydC5URVNURk4sICJ3KyIsIGVuY29kaW5nPSJ1dGYtOCIpCiAgICAgICAgIHAwID0gZi50ZWxsKCkKICAgICAgICAgZi53cml0ZSgiXHhmZlxuIikKICAgICAgICAgcDEgPSBmLnRlbGwoKQpAQCAtMjMzMiw2ICsyMzQ3LDcgQEAKICAgICAgICAgd2l0aCBzZWxmLm9wZW4oc3VwcG9ydC5URVNURk4sICJ3IiwgZXJyb3JzPSJyZXBsYWNlIikgYXMgZjoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5lcnJvcnMsICJyZXBsYWNlIikKIAorICAgIEBzdXBwb3J0Lm5vX3RyYWNpbmcKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWRpbmcsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQogICAgIGRlZiB0ZXN0X3RocmVhZHNfd3JpdGUoc2VsZik6CiAgICAgICAgICMgSXNzdWU2NzUwOiBjb25jdXJyZW50IHdyaXRlcyBjb3VsZCBkdXBsaWNhdGUgZGF0YQpAQCAtMjY0OSwxMiArMjY2NSw2IEBACiAKICAgICBkZWYgdGVzdF9ibG9ja2luZ2lvZXJyb3Ioc2VsZik6CiAgICAgICAgICMgVmFyaW91cyBCbG9ja2luZ0lPRXJyb3IgaXNzdWVzCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5CbG9ja2luZ0lPRXJyb3IpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5CbG9ja2luZ0lPRXJyb3IsIDEpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5CbG9ja2luZ0lPRXJyb3IsIDEsIDIsIDMsIDQpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5CbG9ja2luZ0lPRXJyb3IsIDEsICIiLCBOb25lKQotICAgICAgICBiID0gc2VsZi5CbG9ja2luZ0lPRXJyb3IoMSwgIiIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jaGFyYWN0ZXJzX3dyaXR0ZW4sIDApCiAgICAgICAgIGNsYXNzIEMoc3RyKToKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgYyA9IEMoIiIpCkBAIC0yNzk2LDYgKzI4MDYsNyBAQAogCiAgICAgICAgICAgICAgICAgZXhjZXB0IHNlbGYuQmxvY2tpbmdJT0Vycm9yIGFzIGU6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzBdLCBlcnJuby5FQUdBSU4pCisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzJdLCBlLmNoYXJhY3RlcnNfd3JpdHRlbikKICAgICAgICAgICAgICAgICAgICAgc2VudFstMV0gPSBzZW50Wy0xXVs6ZS5jaGFyYWN0ZXJzX3dyaXR0ZW5dCiAgICAgICAgICAgICAgICAgICAgIHJlY2VpdmVkLmFwcGVuZChyZi5yZWFkKCkpCiAgICAgICAgICAgICAgICAgICAgIG1zZyA9IGInQkxPQ0tFRCcKQEAgLTI4MDgsNiArMjgxOSw3IEBACiAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICAgZXhjZXB0IHNlbGYuQmxvY2tpbmdJT0Vycm9yIGFzIGU6CiAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzBdLCBlcnJuby5FQUdBSU4pCisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzJdLCBlLmNoYXJhY3RlcnNfd3JpdHRlbikKICAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmNoYXJhY3RlcnNfd3JpdHRlbiwgMCkKICAgICAgICAgICAgICAgICAgICAgcmVjZWl2ZWQuYXBwZW5kKHJmLnJlYWQoKSkKIApAQCAtMjgxOCw2ICsyODMwLDE5IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSh3Zi5jbG9zZWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZi5jbG9zZWQpCiAKKyAgICBkZWYgdGVzdF9jcmVhdGVfZmFpbChzZWxmKToKKyAgICAgICAgIyAneCcgbW9kZSBmYWlscyBpZiBmaWxlIGlzIGV4aXN0aW5nCisgICAgICAgIHdpdGggc2VsZi5vcGVuKHN1cHBvcnQuVEVTVEZOLCAndycpOgorICAgICAgICAgICAgcGFzcworICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhGaWxlRXhpc3RzRXJyb3IsIHNlbGYub3Blbiwgc3VwcG9ydC5URVNURk4sICd4JykKKworICAgIGRlZiB0ZXN0X2NyZWF0ZV93cml0ZXMoc2VsZik6CisgICAgICAgICMgJ3gnIG1vZGUgb3BlbnMgZm9yIHdyaXRpbmcKKyAgICAgICAgd2l0aCBzZWxmLm9wZW4oc3VwcG9ydC5URVNURk4sICd4YicpIGFzIGY6CisgICAgICAgICAgICBmLndyaXRlKGIic3BhbSIpCisgICAgICAgIHdpdGggc2VsZi5vcGVuKHN1cHBvcnQuVEVTVEZOLCAncmInKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiInNwYW0iLCBmLnJlYWQoKSkKKwogY2xhc3MgQ01pc2NJT1Rlc3QoTWlzY0lPVGVzdCk6CiAgICAgaW8gPSBpbwogCkBAIC0yODM4LDE0ICsyODYzLDE0IEBACiAgICAgICAgIDEvMAogCiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkaW5nLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKLSAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSBpbiAoJ2ZyZWVic2Q1JywgJ2ZyZWVic2Q2JywgJ2ZyZWVic2Q3JyksCi0gICAgICAgICAgICAgICAgICAgICAnaXNzdWUgIzEyNDI5OiBza2lwIHRlc3Qgb24gRnJlZUJTRCA8PSA3JykKICAgICBkZWYgY2hlY2tfaW50ZXJydXB0ZWRfd3JpdGUoc2VsZiwgaXRlbSwgYnl0ZXMsICoqZmRvcGVuX2t3YXJncyk6CiAgICAgICAgICIiIkNoZWNrIHRoYXQgYSBwYXJ0aWFsIHdyaXRlLCB3aGVuIGl0IGdldHMgaW50ZXJydXB0ZWQsIHByb3Blcmx5CiAgICAgICAgIGludm9rZXMgdGhlIHNpZ25hbCBoYW5kbGVyLCBhbmQgYnViYmxlcyB1cCB0aGUgZXhjZXB0aW9uIHJhaXNlZAogICAgICAgICBpbiB0aGUgbGF0dGVyLiIiIgogICAgICAgICByZWFkX3Jlc3VsdHMgPSBbXQogICAgICAgICBkZWYgX3JlYWQoKToKKyAgICAgICAgICAgIGlmIGhhc2F0dHIoc2lnbmFsLCAncHRocmVhZF9zaWdtYXNrJyk6CisgICAgICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX0JMT0NLLCBbc2lnbmFsLlNJR0FMUk1dKQogICAgICAgICAgICAgcyA9IG9zLnJlYWQociwgMSkKICAgICAgICAgICAgIHJlYWRfcmVzdWx0cy5hcHBlbmQocykKICAgICAgICAgdCA9IHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PV9yZWFkKQpAQCAtMjg2Myw3ICsyODg4LDcgQEAKICAgICAgICAgICAgICMgVGhlIGJ1ZmZlcmVkIElPIGxheWVyIG11c3QgY2hlY2sgZm9yIHBlbmRpbmcgc2lnbmFsCiAgICAgICAgICAgICAjIGhhbmRsZXJzLCB3aGljaCBpbiB0aGlzIGNhc2Ugd2lsbCBpbnZva2UgYWxhcm1faW50ZXJydXB0KCkuCiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhaZXJvRGl2aXNpb25FcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpby53cml0ZSwgaXRlbSAqICgxMDI0ICogMTAyNCkpCisgICAgICAgICAgICAgICAgICAgICAgICB3aW8ud3JpdGUsIGl0ZW0gKiAoc3VwcG9ydC5QSVBFX01BWF9TSVpFIC8vIGxlbihpdGVtKSkpCiAgICAgICAgICAgICB0LmpvaW4oKQogICAgICAgICAgICAgIyBXZSBnb3Qgb25lIGJ5dGUsIGdldCBhbm90aGVyIG9uZSBhbmQgY2hlY2sgdGhhdCBpdCBpc24ndCBhCiAgICAgICAgICAgICAjIHJlcGVhdCBvZiB0aGUgZmlyc3Qgb25lLgpAQCAtMjg5MCw2ICsyOTE1LDcgQEAKICAgICBkZWYgdGVzdF9pbnRlcnJ1cHRlZF93cml0ZV90ZXh0KHNlbGYpOgogICAgICAgICBzZWxmLmNoZWNrX2ludGVycnVwdGVkX3dyaXRlKCJ4eSIsIGIieHkiLCBtb2RlPSJ3IiwgZW5jb2Rpbmc9ImFzY2lpIikKIAorICAgIEBzdXBwb3J0Lm5vX3RyYWNpbmcKICAgICBkZWYgY2hlY2tfcmVlbnRyYW50X3dyaXRlKHNlbGYsIGRhdGEsICoqZmRvcGVuX2t3YXJncyk6CiAgICAgICAgIGRlZiBvbl9hbGFybSgqYXJncyk6CiAgICAgICAgICAgICAjIFdpbGwgYmUgY2FsbGVkIHJlZW50cmFudGx5IGZyb20gdGhlIHNhbWUgdGhyZWFkCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2l0ZXJ0b29scy5weSBiL0xpYi90ZXN0L3Rlc3RfaXRlcnRvb2xzLnB5CmluZGV4IDhjZGM1OTcuLjk1Nzk5MWMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfaXRlcnRvb2xzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfaXRlcnRvb2xzLnB5CkBAIC02OSwxMSArNjksMjEgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaXN0KGFjY3VtdWxhdGUoJ2FiYycpKSwgWydhJywgJ2FiJywgJ2FiYyddKSAgICMgd29ya3Mgd2l0aCBub24tbnVtZXJpYwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoYWNjdW11bGF0ZShbXSkpLCBbXSkgICAgICAgICAgICAgICAgICAjIGVtcHR5IGl0ZXJhYmxlCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGlzdChhY2N1bXVsYXRlKFs3XSkpLCBbN10pICAgICAgICAgICAgICAgICMgaXRlcmFibGUgb2YgbGVuZ3RoIG9uZQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGFjY3VtdWxhdGUsIHJhbmdlKDEwKSwgNSkgICAgICAjIHRvbyBtYW55IGFyZ3MKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBhY2N1bXVsYXRlLCByYW5nZSgxMCksIDUsIDYpICAgIyB0b28gbWFueSBhcmdzCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYWNjdW11bGF0ZSkgICAgICAgICAgICAgICAgICAgICMgdG9vIGZldyBhcmdzCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgYWNjdW11bGF0ZSwgeD1yYW5nZSgxMCkpICAgICAgICMgdW5leHBlY3RlZCBrd2QgYXJnCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbGlzdCwgYWNjdW11bGF0ZShbMSwgW11dKSkgICAgICMgYXJncyB0aGF0IGRvbid0IGFkZAogCisgICAgICAgIHMgPSBbMiwgOCwgOSwgNSwgNywgMCwgMywgNCwgMSwgNl0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaXN0KGFjY3VtdWxhdGUocywgbWluKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgWzIsIDIsIDIsIDIsIDIsIDAsIDAsIDAsIDAsIDBdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoYWNjdW11bGF0ZShzLCBtYXgpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBbMiwgOCwgOSwgOSwgOSwgOSwgOSwgOSwgOSwgOV0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGlzdChhY2N1bXVsYXRlKHMsIG9wZXJhdG9yLm11bCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgIFsyLCAxNiwgMTQ0LCA3MjAsIDUwNDAsIDAsIDAsIDAsIDAsIDBdKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBsaXN0KGFjY3VtdWxhdGUocywgY2hyKSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgdW5hcnktb3BlcmF0aW9uCisKICAgICBkZWYgdGVzdF9jaGFpbihzZWxmKToKIAogICAgICAgICBkZWYgY2hhaW4yKCppdGVyYWJsZXMpOgpAQCAtMTU4LDcgKzE2OCw4IEBACiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQsIGxpc3QoY29tYmluYXRpb25zMih2YWx1ZXMsIHIpKSkgIyBtYXRjaGVzIHNlY29uZCBwdXJlIHB5dGhvbiB2ZXJzaW9uCiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQsIGxpc3QoY29tYmluYXRpb25zMyh2YWx1ZXMsIHIpKSkgIyBtYXRjaGVzIHNlY29uZCBwdXJlIHB5dGhvbiB2ZXJzaW9uCiAKLSAgICAgICAgIyBUZXN0IGltcGxlbWVudGF0aW9uIGRldGFpbDogIHR1cGxlIHJlLXVzZQorICAgIEBzdXBwb3J0LmltcGxfZGV0YWlsKCJ0dXBsZSByZXVzZSBpcyBzcGVjaWZpYyB0byBDUHl0aG9uIikKKyAgICBkZWYgdGVzdF9jb21iaW5hdGlvbnNfdHVwbGVfcmV1c2Uoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNldChtYXAoaWQsIGNvbWJpbmF0aW9ucygnYWJjZGUnLCAzKSkpKSwgMSkKICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChsZW4oc2V0KG1hcChpZCwgbGlzdChjb21iaW5hdGlvbnMoJ2FiY2RlJywgMykpKSkpLCAxKQogCkBAIC0yMjgsNyArMjM5LDkgQEAKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdCwgbGlzdChjd3IxKHZhbHVlcywgcikpKSAgICAgICAgICMgbWF0Y2hlcyBmaXJzdCBwdXJlIHB5dGhvbiB2ZXJzaW9uCiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQsIGxpc3QoY3dyMih2YWx1ZXMsIHIpKSkgICAgICAgICAjIG1hdGNoZXMgc2Vjb25kIHB1cmUgcHl0aG9uIHZlcnNpb24KIAotICAgICAgICAjIFRlc3QgaW1wbGVtZW50YXRpb24gZGV0YWlsOiAgdHVwbGUgcmUtdXNlCisgICAgQHN1cHBvcnQuaW1wbF9kZXRhaWwoInR1cGxlIHJldXNlIGlzIHNwZWNpZmljIHRvIENQeXRob24iKQorICAgIGRlZiB0ZXN0X2NvbWJpbmF0aW9uc193aXRoX3JlcGxhY2VtZW50X3R1cGxlX3JldXNlKHNlbGYpOgorICAgICAgICBjd3IgPSBjb21iaW5hdGlvbnNfd2l0aF9yZXBsYWNlbWVudAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZXQobWFwKGlkLCBjd3IoJ2FiY2RlJywgMykpKSksIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwobGVuKHNldChtYXAoaWQsIGxpc3QoY3dyKCdhYmNkZScsIDMpKSkpKSwgMSkKIApAQCAtMjkyLDcgKzMwNSw4IEBACiAgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0LCBsaXN0KHBlcm11dGF0aW9ucyh2YWx1ZXMsIE5vbmUpKSkgIyB0ZXN0IHIgYXMgTm9uZQogICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3VsdCwgbGlzdChwZXJtdXRhdGlvbnModmFsdWVzKSkpICAgICAgICMgdGVzdCBkZWZhdWx0IHIKIAotICAgICAgICAjIFRlc3QgaW1wbGVtZW50YXRpb24gZGV0YWlsOiAgdHVwbGUgcmUtdXNlCisgICAgQHN1cHBvcnQuaW1wbF9kZXRhaWwoInR1cGxlIHJlc3VzZSBpcyBDUHl0aG9uIHNwZWNpZmljIikKKyAgICBkZWYgdGVzdF9wZXJtdXRhdGlvbnNfdHVwbGVfcmV1c2Uoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNldChtYXAoaWQsIHBlcm11dGF0aW9ucygnYWJjZGUnLCAzKSkpKSwgMSkKICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChsZW4oc2V0KG1hcChpZCwgbGlzdChwZXJtdXRhdGlvbnMoJ2FiY2RlJywgMykpKSkpLCAxKQogCkBAIC01NTYsMTEgKzU3MCwxMyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpc3QoemlwKCkpLCBsemlwKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgemlwLCAzKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHppcCwgcmFuZ2UoMyksIDMpCi0gICAgICAgICMgQ2hlY2sgdHVwbGUgcmUtdXNlIChpbXBsZW1lbnRhdGlvbiBkZXRhaWwpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW3R1cGxlKGxpc3QocGFpcikpIGZvciBwYWlyIGluIHppcCgnYWJjJywgJ2RlZicpXSwKICAgICAgICAgICAgICAgICAgICAgICAgICBsemlwKCdhYmMnLCAnZGVmJykpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoW3BhaXIgZm9yIHBhaXIgaW4gemlwKCdhYmMnLCAnZGVmJyldLAogICAgICAgICAgICAgICAgICAgICAgICAgIGx6aXAoJ2FiYycsICdkZWYnKSkKKworICAgIEBzdXBwb3J0LmltcGxfZGV0YWlsKCJ0dXBsZSByZXVzZSBpcyBzcGVjaWZpYyB0byBDUHl0aG9uIikKKyAgICBkZWYgdGVzdF96aXBfdHVwbGVfcmV1c2Uoc2VsZik6CiAgICAgICAgIGlkcyA9IGxpc3QobWFwKGlkLCB6aXAoJ2FiYycsICdkZWYnKSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWluKGlkcyksIG1heChpZHMpKQogICAgICAgICBpZHMgPSBsaXN0KG1hcChpZCwgbGlzdCh6aXAoJ2FiYycsICdkZWYnKSkpKQpAQCAtNjAzLDExICs2MTksMTMgQEAKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgc2VsZi5mYWlsKCdEaWQgbm90IHJhaXNlIFR5cGUgaW46ICAnICsgc3RtdCkKIAotICAgICAgICAjIENoZWNrIHR1cGxlIHJlLXVzZSAoaW1wbGVtZW50YXRpb24gZGV0YWlsKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFt0dXBsZShsaXN0KHBhaXIpKSBmb3IgcGFpciBpbiB6aXBfbG9uZ2VzdCgnYWJjJywgJ2RlZicpXSwKICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0KHppcCgnYWJjJywgJ2RlZicpKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbcGFpciBmb3IgcGFpciBpbiB6aXBfbG9uZ2VzdCgnYWJjJywgJ2RlZicpXSwKICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0KHppcCgnYWJjJywgJ2RlZicpKSkKKworICAgIEBzdXBwb3J0LmltcGxfZGV0YWlsKCJ0dXBsZSByZXVzZSBpcyBzcGVjaWZpYyB0byBDUHl0aG9uIikKKyAgICBkZWYgdGVzdF96aXBfbG9uZ2VzdF90dXBsZV9yZXVzZShzZWxmKToKICAgICAgICAgaWRzID0gbGlzdChtYXAoaWQsIHppcF9sb25nZXN0KCdhYmMnLCAnZGVmJykpKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1pbihpZHMpLCBtYXgoaWRzKSkKICAgICAgICAgaWRzID0gbGlzdChtYXAoaWQsIGxpc3QoemlwX2xvbmdlc3QoJ2FiYycsICdkZWYnKSkpKQpAQCAtNzExLDcgKzcyOSw4IEBACiAgICAgICAgICAgICBhcmdzID0gbWFwKGl0ZXIsIGFyZ3MpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihsaXN0KHByb2R1Y3QoKmFyZ3MpKSksIGV4cGVjdGVkX2xlbikKIAotICAgICAgICAjIFRlc3QgaW1wbGVtZW50YXRpb24gZGV0YWlsOiAgdHVwbGUgcmUtdXNlCisgICAgQHN1cHBvcnQuaW1wbF9kZXRhaWwoInR1cGxlIHJldXNlIGlzIHNwZWNpZmljIHRvIENQeXRob24iKQorICAgIGRlZiB0ZXN0X3Byb2R1Y3RfdHVwbGVfcmV1c2Uoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNldChtYXAoaWQsIHByb2R1Y3QoJ2FiYycsICdkZWYnKSkpKSwgMSkKICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChsZW4oc2V0KG1hcChpZCwgbGlzdChwcm9kdWN0KCdhYmMnLCAnZGVmJykpKSkpLCAxKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2tleXdvcmRvbmx5YXJnLnB5IGIvTGliL3Rlc3QvdGVzdF9rZXl3b3Jkb25seWFyZy5weQppbmRleCAzYWViZDY4Li42MWQ0MGY5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2tleXdvcmRvbmx5YXJnLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfa2V5d29yZG9ubHlhcmcucHkKQEAgLTc4LDcgKzc4LDcgQEAKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpIGFzIGV4YzoKICAgICAgICAgICAgIGYoMSwgMiwgMykKLSAgICAgICAgZXhwZWN0ZWQgPSAiZigpIHRha2VzIGF0IG1vc3QgMiBwb3NpdGlvbmFsIGFyZ3VtZW50cyAoMyBnaXZlbikiCisgICAgICAgIGV4cGVjdGVkID0gImYoKSB0YWtlcyBmcm9tIDEgdG8gMiBwb3NpdGlvbmFsIGFyZ3VtZW50cyBidXQgMyB3ZXJlIGdpdmVuIgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihleGMuZXhjZXB0aW9uKSwgZXhwZWN0ZWQpCiAKICAgICBkZWYgdGVzdFN5bnRheEVycm9yRm9yRnVuY3Rpb25DYWxsKHNlbGYpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9saWIydG8zLnB5IGIvTGliL3Rlc3QvdGVzdF9saWIydG8zLnB5CmluZGV4IDFhZmFmNzAuLmRmNGMzN2IgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbGliMnRvMy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2xpYjJ0bzMucHkKQEAgLTksOCArOSw4IEBACiBkZWYgc3VpdGUoKToKICAgICB0ZXN0cyA9IHVuaXR0ZXN0LlRlc3RTdWl0ZSgpCiAgICAgbG9hZGVyID0gdW5pdHRlc3QuVGVzdExvYWRlcigpCi0gICAgZm9yIG0gaW4gKHRlc3RfZml4ZXJzLCB0ZXN0X3B5dHJlZSx0ZXN0X3V0aWwsIHRlc3RfcmVmYWN0b3IsCi0gICAgICAgICAgICAgIHRlc3RfcGFyc2VyLCB0ZXN0X21haW5fKToKKyAgICBmb3IgbSBpbiAodGVzdF9maXhlcnMsIHRlc3RfcHl0cmVlLCB0ZXN0X3V0aWwsIHRlc3RfcmVmYWN0b3IsIHRlc3RfcGFyc2VyLAorICAgICAgICAgICAgICB0ZXN0X21haW5fKToKICAgICAgICAgdGVzdHMuYWRkVGVzdHMobG9hZGVyLmxvYWRUZXN0c0Zyb21Nb2R1bGUobSkpCiAgICAgcmV0dXJuIHRlc3RzCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbG9jYWxlLnB5IGIvTGliL3Rlc3QvdGVzdF9sb2NhbGUucHkKaW5kZXggOGY3NTc0Yi4uN2ZkYjZkYSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9sb2NhbGUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9sb2NhbGUucHkKQEAgLTQwMSw2ICs0MDEsOCBAQAogICAgICAgICAgICAgIyBVbnN1cHBvcnRlZCBsb2NhbGUgb24gdGhpcyBzeXN0ZW0KICAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoJ3Rlc3QgbmVlZHMgVHVya2lzaCBsb2NhbGUnKQogICAgICAgICBsb2MgPSBsb2NhbGUuZ2V0bG9jYWxlKGxvY2FsZS5MQ19DVFlQRSkKKyAgICAgICAgaWYgdmVyYm9zZToKKyAgICAgICAgICAgIHByaW50KCdnb3QgbG9jYWxlICVhJyAlIChsb2MsKSkKICAgICAgICAgbG9jYWxlLnNldGxvY2FsZShsb2NhbGUuTENfQ1RZUEUsIGxvYykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsb2MsIGxvY2FsZS5nZXRsb2NhbGUobG9jYWxlLkxDX0NUWVBFKSkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9sb2dnaW5nLnB5IGIvTGliL3Rlc3QvdGVzdF9sb2dnaW5nLnB5CmluZGV4IGFiNjY1OTYuLmU3MWEwZmUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbG9nZ2luZy5weQorKysgYi9MaWIvdGVzdC90ZXN0X2xvZ2dpbmcucHkKQEAgLTM2LDIwICszNiw0MCBAQAogaW1wb3J0IHJlCiBpbXBvcnQgc2VsZWN0CiBpbXBvcnQgc29ja2V0Ci1mcm9tIHNvY2tldHNlcnZlciBpbXBvcnQgVGhyZWFkaW5nVENQU2VydmVyLCBTdHJlYW1SZXF1ZXN0SGFuZGxlcgogaW1wb3J0IHN0cnVjdAogaW1wb3J0IHN5cwogaW1wb3J0IHRlbXBmaWxlCi1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgY2FwdHVyZWRfc3Rkb3V0LCBydW5fd2l0aF9sb2NhbGUsIHJ1bl91bml0dGVzdAorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGNhcHR1cmVkX3N0ZG91dCwgcnVuX3dpdGhfbG9jYWxlLCBydW5fdW5pdHRlc3QsIHBhdGNoCiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgVGVzdEhhbmRsZXIsIE1hdGNoZXIKIGltcG9ydCB0ZXh0d3JhcAoraW1wb3J0IHRpbWUKIGltcG9ydCB1bml0dGVzdAogaW1wb3J0IHdhcm5pbmdzCiBpbXBvcnQgd2Vha3JlZgoraW1wb3J0IHpsaWIKIHRyeToKICAgICBpbXBvcnQgdGhyZWFkaW5nCisgICAgIyBUaGUgZm9sbG93aW5nIGltcG9ydHMgYXJlIG5lZWRlZCBvbmx5IGZvciB0ZXN0cyB3aGljaAorICAgICMgcmVxdWlyZSB0aHJlYWRpbmcKKyAgICBpbXBvcnQgYXN5bmNoYXQKKyAgICBpbXBvcnQgYXN5bmNvcmUKKyAgICBpbXBvcnQgZXJybm8KKyAgICBmcm9tIGh0dHAuc2VydmVyIGltcG9ydCBIVFRQU2VydmVyLCBCYXNlSFRUUFJlcXVlc3RIYW5kbGVyCisgICAgaW1wb3J0IHNtdHBkCisgICAgZnJvbSB1cmxsaWIucGFyc2UgaW1wb3J0IHVybHBhcnNlLCBwYXJzZV9xcworICAgIGZyb20gc29ja2V0c2VydmVyIGltcG9ydCAoVGhyZWFkaW5nVURQU2VydmVyLCBEYXRhZ3JhbVJlcXVlc3RIYW5kbGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhyZWFkaW5nVENQU2VydmVyLCBTdHJlYW1SZXF1ZXN0SGFuZGxlcikKIGV4Y2VwdCBJbXBvcnRFcnJvcjoKICAgICB0aHJlYWRpbmcgPSBOb25lCit0cnk6CisgICAgaW1wb3J0IHdpbjMyZXZ0bG9nCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgd2luMzJldnRsb2cgPSBOb25lCit0cnk6CisgICAgaW1wb3J0IHdpbjMyZXZ0bG9ndXRpbAorZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHdpbjMyZXZ0bG9ndXRpbCA9IE5vbmUKKyAgICB3aW4zMmV2dGxvZyA9IE5vbmUKIAogCiBjbGFzcyBCYXNlVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CkBAIC03Nyw5ICs5Nyw3IEBACiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICBsb2dnaW5nLl9yZWxlYXNlTG9jaygpCiAKLSAgICAgICAgIyBTZXQgdHdvIHVudXNlZCBsb2dnZXJzOiBvbmUgbm9uLUFTQ0lJIGFuZCBvbmUgVW5pY29kZS4KLSAgICAgICAgIyBUaGlzIGlzIHRvIHRlc3QgY29ycmVjdCBvcGVyYXRpb24gd2hlbiBzb3J0aW5nIGV4aXN0aW5nCi0gICAgICAgICMgbG9nZ2VycyBpbiB0aGUgY29uZmlndXJhdGlvbiBjb2RlLiBTZWUgaXNzdWUgODIwMS4KKyAgICAgICAgIyBTZXQgdHdvIHVudXNlZCBsb2dnZXJzCiAgICAgICAgIHNlbGYubG9nZ2VyMSA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKCJceGFiXHhkN1x4YmIiKQogICAgICAgICBzZWxmLmxvZ2dlcjIgPSBsb2dnaW5nLmdldExvZ2dlcigiXHUwMTNmXHUwMGQ2XHUwMDQ3IikKIApAQCAtMTQwLDggKzE1OCw3IEBACiAgICAgICAgIGV4Y2VwdCBBdHRyaWJ1dGVFcnJvcjoKICAgICAgICAgICAgICMgU3RyaW5nSU8uU3RyaW5nSU8gbGFja3MgYSByZXNldCgpIG1ldGhvZC4KICAgICAgICAgICAgIGFjdHVhbF9saW5lcyA9IHN0cmVhbS5nZXR2YWx1ZSgpLnNwbGl0bGluZXMoKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihhY3R1YWxfbGluZXMpLCBsZW4oZXhwZWN0ZWRfdmFsdWVzKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJyVzIHZzLiAlcycgJSAoYWN0dWFsX2xpbmVzLCBleHBlY3RlZF92YWx1ZXMpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihhY3R1YWxfbGluZXMpLCBsZW4oZXhwZWN0ZWRfdmFsdWVzKSkKICAgICAgICAgZm9yIGFjdHVhbCwgZXhwZWN0ZWQgaW4gemlwKGFjdHVhbF9saW5lcywgZXhwZWN0ZWRfdmFsdWVzKToKICAgICAgICAgICAgIG1hdGNoID0gcGF0LnNlYXJjaChhY3R1YWwpCiAgICAgICAgICAgICBpZiBub3QgbWF0Y2g6CkBAIC0xNzksMTcgKzE5NiwxNyBAQAogCiAgICAgICAgIElORi5sb2cobG9nZ2luZy5DUklUSUNBTCwgbSgpKQogICAgICAgICBJTkYuZXJyb3IobSgpKQotICAgICAgICBJTkYud2FybihtKCkpCisgICAgICAgIElORi53YXJuaW5nKG0oKSkKICAgICAgICAgSU5GLmluZm8obSgpKQogCiAgICAgICAgIERFQi5sb2cobG9nZ2luZy5DUklUSUNBTCwgbSgpKQogICAgICAgICBERUIuZXJyb3IobSgpKQotICAgICAgICBERUIud2FybiAobSgpKQotICAgICAgICBERUIuaW5mbyAobSgpKQorICAgICAgICBERUIud2FybmluZyhtKCkpCisgICAgICAgIERFQi5pbmZvKG0oKSkKICAgICAgICAgREVCLmRlYnVnKG0oKSkKIAogICAgICAgICAjIFRoZXNlIHNob3VsZCBub3QgbG9nLgotICAgICAgICBFUlIud2FybihtKCkpCisgICAgICAgIEVSUi53YXJuaW5nKG0oKSkKICAgICAgICAgRVJSLmluZm8obSgpKQogICAgICAgICBFUlIuZGVidWcobSgpKQogCkBAIC0yMjMsNyArMjQwLDcgQEAKICAgICAgICAgSU5GX0VSUi5lcnJvcihtKCkpCiAKICAgICAgICAgIyBUaGVzZSBzaG91bGQgbm90IGxvZy4KLSAgICAgICAgSU5GX0VSUi53YXJuKG0oKSkKKyAgICAgICAgSU5GX0VSUi53YXJuaW5nKG0oKSkKICAgICAgICAgSU5GX0VSUi5pbmZvKG0oKSkKICAgICAgICAgSU5GX0VSUi5kZWJ1ZyhtKCkpCiAKQEAgLTI0NywxNCArMjY0LDE0IEBACiAgICAgICAgICMgVGhlc2Ugc2hvdWxkIGxvZy4KICAgICAgICAgSU5GX1VOREVGLmxvZyhsb2dnaW5nLkNSSVRJQ0FMLCBtKCkpCiAgICAgICAgIElORl9VTkRFRi5lcnJvcihtKCkpCi0gICAgICAgIElORl9VTkRFRi53YXJuKG0oKSkKKyAgICAgICAgSU5GX1VOREVGLndhcm5pbmcobSgpKQogICAgICAgICBJTkZfVU5ERUYuaW5mbyhtKCkpCiAgICAgICAgIElORl9FUlJfVU5ERUYubG9nKGxvZ2dpbmcuQ1JJVElDQUwsIG0oKSkKICAgICAgICAgSU5GX0VSUl9VTkRFRi5lcnJvcihtKCkpCiAKICAgICAgICAgIyBUaGVzZSBzaG91bGQgbm90IGxvZy4KICAgICAgICAgSU5GX1VOREVGLmRlYnVnKG0oKSkKLSAgICAgICAgSU5GX0VSUl9VTkRFRi53YXJuKG0oKSkKKyAgICAgICAgSU5GX0VSUl9VTkRFRi53YXJuaW5nKG0oKSkKICAgICAgICAgSU5GX0VSUl9VTkRFRi5pbmZvKG0oKSkKICAgICAgICAgSU5GX0VSUl9VTkRFRi5kZWJ1ZyhtKCkpCiAKQEAgLTI5Myw4ICszMTAsNiBAQAogICAgICAgICAgICAgKCdJTkYuQkFEUEFSRU5UJywgJ0lORk8nLCAnNCcpLAogICAgICAgICBdKQogCi0gICAgZGVmIHRlc3RfaW52YWxpZF9uYW1lKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGxvZ2dpbmcuZ2V0TG9nZ2VyLCBhbnkpCiAKIGNsYXNzIEJhc2ljRmlsdGVyVGVzdChCYXNlVGVzdCk6CiAKQEAgLTM1Myw2ICszNjgsMTAgQEAKICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgIGhhbmRsZXIucmVtb3ZlRmlsdGVyKGZpbHRlcmZ1bmMpCiAKKyAgICBkZWYgdGVzdF9lbXB0eV9maWx0ZXIoc2VsZik6CisgICAgICAgIGYgPSBsb2dnaW5nLkZpbHRlcigpCisgICAgICAgIHIgPSBsb2dnaW5nLm1ha2VMb2dSZWNvcmQoeyduYW1lJzogJ3NwYW0uZWdncyd9KQorICAgICAgICBzZWxmLmFzc2VydFRydWUoZi5maWx0ZXIocikpCiAKICMKICMgICBGaXJzdCwgd2UgZGVmaW5lIG91ciBsZXZlbHMuIFRoZXJlIGNhbiBiZSBhcyBtYW55IGFzIHlvdSB3YW50IC0gdGhlIG9ubHkKQEAgLTQ5Niw2ICs1MTUsNDM4IEBACiAgICAgICAgICAgICBoYW5kbGVyLnJlbW92ZUZpbHRlcihnYXJyKQogCiAKK2NsYXNzIEhhbmRsZXJUZXN0KEJhc2VUZXN0KToKKyAgICBkZWYgdGVzdF9uYW1lKHNlbGYpOgorICAgICAgICBoID0gbG9nZ2luZy5IYW5kbGVyKCkKKyAgICAgICAgaC5uYW1lID0gJ2dlbmVyaWMnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaC5uYW1lLCAnZ2VuZXJpYycpCisgICAgICAgIGgubmFtZSA9ICdhbm90aGVyZ2VuZXJpYycKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoLm5hbWUsICdhbm90aGVyZ2VuZXJpYycpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE5vdEltcGxlbWVudGVkRXJyb3IsIGguZW1pdCwgTm9uZSkKKworICAgIGRlZiB0ZXN0X2J1aWx0aW5faGFuZGxlcnMoc2VsZik6CisgICAgICAgICMgV2UgY2FuJ3QgYWN0dWFsbHkgKnVzZSogdG9vIG1hbnkgaGFuZGxlcnMgaW4gdGhlIHRlc3RzLAorICAgICAgICAjIGJ1dCB3ZSBjYW4gdHJ5IGluc3RhbnRpYXRpbmcgdGhlbSB3aXRoIHZhcmlvdXMgb3B0aW9ucworICAgICAgICBpZiBzeXMucGxhdGZvcm0gaW4gKCdsaW51eCcsICdkYXJ3aW4nKToKKyAgICAgICAgICAgIGZvciBleGlzdGluZyBpbiAoVHJ1ZSwgRmFsc2UpOgorICAgICAgICAgICAgICAgIGZkLCBmbiA9IHRlbXBmaWxlLm1rc3RlbXAoKQorICAgICAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorICAgICAgICAgICAgICAgIGlmIG5vdCBleGlzdGluZzoKKyAgICAgICAgICAgICAgICAgICAgb3MudW5saW5rKGZuKQorICAgICAgICAgICAgICAgIGggPSBsb2dnaW5nLmhhbmRsZXJzLldhdGNoZWRGaWxlSGFuZGxlcihmbiwgZGVsYXk9VHJ1ZSkKKyAgICAgICAgICAgICAgICBpZiBleGlzdGluZzoKKyAgICAgICAgICAgICAgICAgICAgZGV2LCBpbm8gPSBoLmRldiwgaC5pbm8KKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChkZXYsIC0xKQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGlubywgLTEpCisgICAgICAgICAgICAgICAgICAgIHIgPSBsb2dnaW5nLm1ha2VMb2dSZWNvcmQoeydtc2cnOiAnVGVzdCd9KQorICAgICAgICAgICAgICAgICAgICBoLmhhbmRsZShyKQorICAgICAgICAgICAgICAgICAgICAjIE5vdyByZW1vdmUgdGhlIGZpbGUuCisgICAgICAgICAgICAgICAgICAgIG9zLnVubGluayhmbikKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhmbikpCisgICAgICAgICAgICAgICAgICAgICMgVGhlIG5leHQgY2FsbCBzaG91bGQgcmVjcmVhdGUgdGhlIGZpbGUuCisgICAgICAgICAgICAgICAgICAgIGguaGFuZGxlKHIpCisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhmbikpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoLmRldiwgLTEpCisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaC5pbm8sIC0xKQorICAgICAgICAgICAgICAgIGguY2xvc2UoKQorICAgICAgICAgICAgICAgIGlmIGV4aXN0aW5nOgorICAgICAgICAgICAgICAgICAgICBvcy51bmxpbmsoZm4pCisgICAgICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ2Rhcndpbic6CisgICAgICAgICAgICAgICAgc29ja25hbWUgPSAnL3Zhci9ydW4vc3lzbG9nJworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzb2NrbmFtZSA9ICcvZGV2L2xvZycKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBoID0gbG9nZ2luZy5oYW5kbGVycy5TeXNMb2dIYW5kbGVyKHNvY2tuYW1lKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaC5mYWNpbGl0eSwgaC5MT0dfVVNFUikKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoaC51bml4c29ja2V0KQorICAgICAgICAgICAgICAgIGguY2xvc2UoKQorICAgICAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvcjogIyBzeXNsb2dkIG1pZ2h0IG5vdCBiZSBhdmFpbGFibGUKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgIGZvciBtZXRob2QgaW4gKCdHRVQnLCAnUE9TVCcsICdQVVQnKToKKyAgICAgICAgICAgIGlmIG1ldGhvZCA9PSAnUFVUJzoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBsb2dnaW5nLmhhbmRsZXJzLkhUVFBIYW5kbGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsb2NhbGhvc3QnLCAnL2xvZycsIG1ldGhvZCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgaCA9IGxvZ2dpbmcuaGFuZGxlcnMuSFRUUEhhbmRsZXIoJ2xvY2FsaG9zdCcsICcvbG9nJywgbWV0aG9kKQorICAgICAgICAgICAgICAgIGguY2xvc2UoKQorICAgICAgICBoID0gbG9nZ2luZy5oYW5kbGVycy5CdWZmZXJpbmdIYW5kbGVyKDApCisgICAgICAgIHIgPSBsb2dnaW5nLm1ha2VMb2dSZWNvcmQoe30pCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShoLnNob3VsZEZsdXNoKHIpKQorICAgICAgICBoLmNsb3NlKCkKKyAgICAgICAgaCA9IGxvZ2dpbmcuaGFuZGxlcnMuQnVmZmVyaW5nSGFuZGxlcigxKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGguc2hvdWxkRmx1c2gocikpCisgICAgICAgIGguY2xvc2UoKQorCitjbGFzcyBCYWRTdHJlYW0ob2JqZWN0KToKKyAgICBkZWYgd3JpdGUoc2VsZiwgZGF0YSk6CisgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcignZGVsaWJlcmF0ZSBtaXN0YWtlJykKKworY2xhc3MgVGVzdFN0cmVhbUhhbmRsZXIobG9nZ2luZy5TdHJlYW1IYW5kbGVyKToKKyAgICBkZWYgaGFuZGxlRXJyb3Ioc2VsZiwgcmVjb3JkKToKKyAgICAgICAgc2VsZi5lcnJvcl9yZWNvcmQgPSByZWNvcmQKKworY2xhc3MgU3RyZWFtSGFuZGxlclRlc3QoQmFzZVRlc3QpOgorICAgIGRlZiB0ZXN0X2Vycm9yX2hhbmRsaW5nKHNlbGYpOgorICAgICAgICBoID0gVGVzdFN0cmVhbUhhbmRsZXIoQmFkU3RyZWFtKCkpCisgICAgICAgIHIgPSBsb2dnaW5nLm1ha2VMb2dSZWNvcmQoe30pCisgICAgICAgIG9sZF9yYWlzZSA9IGxvZ2dpbmcucmFpc2VFeGNlcHRpb25zCisgICAgICAgIG9sZF9zdGRlcnIgPSBzeXMuc3RkZXJyCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGguaGFuZGxlKHIpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzKGguZXJyb3JfcmVjb3JkLCByKQorICAgICAgICAgICAgaCA9IGxvZ2dpbmcuU3RyZWFtSGFuZGxlcihCYWRTdHJlYW0oKSkKKyAgICAgICAgICAgIHN5cy5zdGRlcnIgPSBzaW8gPSBpby5TdHJpbmdJTygpCisgICAgICAgICAgICBoLmhhbmRsZShyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbignXG5SdW50aW1lRXJyb3I6IGRlbGliZXJhdGUgbWlzdGFrZVxuJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc2lvLmdldHZhbHVlKCkpCisgICAgICAgICAgICBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucyA9IEZhbHNlCisgICAgICAgICAgICBzeXMuc3RkZXJyID0gc2lvID0gaW8uU3RyaW5nSU8oKQorICAgICAgICAgICAgaC5oYW5kbGUocikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJycsIHNpby5nZXR2YWx1ZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMgPSBvbGRfcmFpc2UKKyAgICAgICAgICAgIHN5cy5zdGRlcnIgPSBvbGRfc3RkZXJyCisKKyMgLS0gVGhlIGZvbGxvd2luZyBzZWN0aW9uIGNvdWxkIGJlIG1vdmVkIGludG8gYSBzZXJ2ZXJfaGVscGVyLnB5IG1vZHVsZQorIyAtLSBpZiBpdCBwcm92ZXMgdG8gYmUgb2Ygd2lkZXIgdXRpbGl0eSB0aGFuIGp1c3QgdGVzdF9sb2dnaW5nCisKK2lmIHRocmVhZGluZzoKKyAgICBjbGFzcyBUZXN0U01UUENoYW5uZWwoc210cGQuU01UUENoYW5uZWwpOgorICAgICAgICAiIiIKKyAgICAgICAgVGhpcyBkZXJpdmVkIGNsYXNzIGhhcyBoYWQgdG8gYmUgY3JlYXRlZCBiZWNhdXNlIHNtdHBkIGRvZXMgbm90CisgICAgICAgIHN1cHBvcnQgdXNlIG9mIGN1c3RvbSBjaGFubmVsIG1hcHMsIGFsdGhvdWdoIHRoZXkgYXJlIGFsbG93ZWQgYnkKKyAgICAgICAgYXN5bmNvcmUncyBkZXNpZ24uIElzc3VlICMxMTk1OSBoYXMgYmVlbiByYWlzZWQgdG8gYWRkcmVzcyB0aGlzLAorICAgICAgICBhbmQgaWYgcmVzb2x2ZWQgc2F0aXNmYWN0b3JpbHksIHNvbWUgb2YgdGhpcyBjb2RlIGNhbiBiZSByZW1vdmVkLgorICAgICAgICAiIiIKKyAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHNlcnZlciwgY29ubiwgYWRkciwgc29ja21hcCk6CisgICAgICAgICAgICBhc3luY2hhdC5hc3luY19jaGF0Ll9faW5pdF9fKHNlbGYsIGNvbm4sIHNvY2ttYXApCisgICAgICAgICAgICBzZWxmLnNtdHBfc2VydmVyID0gc2VydmVyCisgICAgICAgICAgICBzZWxmLmNvbm4gPSBjb25uCisgICAgICAgICAgICBzZWxmLmFkZHIgPSBhZGRyCisgICAgICAgICAgICBzZWxmLnJlY2VpdmVkX2xpbmVzID0gW10KKyAgICAgICAgICAgIHNlbGYuc210cF9zdGF0ZSA9IHNlbGYuQ09NTUFORAorICAgICAgICAgICAgc2VsZi5zZWVuX2dyZWV0aW5nID0gJycKKyAgICAgICAgICAgIHNlbGYubWFpbGZyb20gPSBOb25lCisgICAgICAgICAgICBzZWxmLnJjcHR0b3MgPSBbXQorICAgICAgICAgICAgc2VsZi5yZWNlaXZlZF9kYXRhID0gJycKKyAgICAgICAgICAgIHNlbGYuZnFkbiA9IHNvY2tldC5nZXRmcWRuKCkKKyAgICAgICAgICAgIHNlbGYubnVtX2J5dGVzID0gMAorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGYucGVlciA9IGNvbm4uZ2V0cGVlcm5hbWUoKQorICAgICAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBlcnI6CisgICAgICAgICAgICAgICAgIyBhIHJhY2UgY29uZGl0aW9uICBtYXkgb2NjdXIgaWYgdGhlIG90aGVyIGVuZCBpcyBjbG9zaW5nCisgICAgICAgICAgICAgICAgIyBiZWZvcmUgd2UgY2FuIGdldCB0aGUgcGVlcm5hbWUKKyAgICAgICAgICAgICAgICBzZWxmLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBpZiBlcnIuYXJnc1swXSAhPSBlcnJuby5FTk9UQ09OTjoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgICAgIHNlbGYucHVzaCgnMjIwICVzICVzJyAlIChzZWxmLmZxZG4sIHNtdHBkLl9fdmVyc2lvbl9fKSkKKyAgICAgICAgICAgIHNlbGYuc2V0X3Rlcm1pbmF0b3IoYidcclxuJykKKworCisgICAgY2xhc3MgVGVzdFNNVFBTZXJ2ZXIoc210cGQuU01UUFNlcnZlcik6CisgICAgICAgICIiIgorICAgICAgICBUaGlzIGNsYXNzIGltcGxlbWVudHMgYSB0ZXN0IFNNVFAgc2VydmVyLgorCisgICAgICAgIDpwYXJhbSBhZGRyOiBBIChob3N0LCBwb3J0KSB0dXBsZSB3aGljaCB0aGUgc2VydmVyIGxpc3RlbnMgb24uCisgICAgICAgICAgICAgICAgICAgICBZb3UgY2FuIHNwZWNpZnkgYSBwb3J0IHZhbHVlIG9mIHplcm86IHRoZSBzZXJ2ZXIncworICAgICAgICAgICAgICAgICAgICAgKnBvcnQqIGF0dHJpYnV0ZSB3aWxsIGhvbGQgdGhlIGFjdHVhbCBwb3J0IG51bWJlcgorICAgICAgICAgICAgICAgICAgICAgdXNlZCwgd2hpY2ggY2FuIGJlIHVzZWQgaW4gY2xpZW50IGNvbm5lY3Rpb25zLgorICAgICAgICA6cGFyYW0gaGFuZGxlcjogQSBjYWxsYWJsZSB3aGljaCB3aWxsIGJlIGNhbGxlZCB0byBwcm9jZXNzCisgICAgICAgICAgICAgICAgICAgICAgICBpbmNvbWluZyBtZXNzYWdlcy4gVGhlIGhhbmRsZXIgd2lsbCBiZSBwYXNzZWQKKyAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBjbGllbnQgYWRkcmVzcyB0dXBsZSwgd2hvIHRoZSBtZXNzYWdlIGlzIGZyb20sCisgICAgICAgICAgICAgICAgICAgICAgICBhIGxpc3Qgb2YgcmVjaXBpZW50cyBhbmQgdGhlIG1lc3NhZ2UgZGF0YS4KKyAgICAgICAgOnBhcmFtIHBvbGxfaW50ZXJ2YWw6IFRoZSBpbnRlcnZhbCwgaW4gc2Vjb25kcywgdXNlZCBpbiB0aGUgdW5kZXJseWluZworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOmZ1bmM6YHNlbGVjdGAgb3IgOmZ1bmM6YHBvbGxgIGNhbGwgYnkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpmdW5jOmBhc3luY29yZS5sb29wYC4KKyAgICAgICAgOnBhcmFtIHNvY2ttYXA6IEEgZGljdGlvbmFyeSB3aGljaCB3aWxsIGJlIHVzZWQgdG8gaG9sZAorICAgICAgICAgICAgICAgICAgICAgICAgOmNsYXNzOmBhc3luY29yZS5kaXNwYXRjaGVyYCBpbnN0YW5jZXMgdXNlZCBieQorICAgICAgICAgICAgICAgICAgICAgICAgOmZ1bmM6YGFzeW5jb3JlLmxvb3BgLiBUaGlzIGF2b2lkcyBjaGFuZ2luZyB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgIDptb2Q6YGFzeW5jb3JlYCBtb2R1bGUncyBnbG9iYWwgc3RhdGUuCisgICAgICAgICIiIgorICAgICAgICBjaGFubmVsX2NsYXNzID0gVGVzdFNNVFBDaGFubmVsCisKKyAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGFkZHIsIGhhbmRsZXIsIHBvbGxfaW50ZXJ2YWwsIHNvY2ttYXApOgorICAgICAgICAgICAgc2VsZi5fbG9jYWxhZGRyID0gYWRkcgorICAgICAgICAgICAgc2VsZi5fcmVtb3RlYWRkciA9IE5vbmUKKyAgICAgICAgICAgIHNlbGYuc29ja21hcCA9IHNvY2ttYXAKKyAgICAgICAgICAgIGFzeW5jb3JlLmRpc3BhdGNoZXIuX19pbml0X18oc2VsZiwgbWFwPXNvY2ttYXApCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc29jayA9IHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgICAgICAgICBzb2NrLnNldGJsb2NraW5nKDApCisgICAgICAgICAgICAgICAgc2VsZi5zZXRfc29ja2V0KHNvY2ssIG1hcD1zb2NrbWFwKQorICAgICAgICAgICAgICAgICMgdHJ5IHRvIHJlLXVzZSBhIHNlcnZlciBwb3J0IGlmIHBvc3NpYmxlCisgICAgICAgICAgICAgICAgc2VsZi5zZXRfcmV1c2VfYWRkcigpCisgICAgICAgICAgICAgICAgc2VsZi5iaW5kKGFkZHIpCisgICAgICAgICAgICAgICAgc2VsZi5wb3J0ID0gc29jay5nZXRzb2NrbmFtZSgpWzFdCisgICAgICAgICAgICAgICAgc2VsZi5saXN0ZW4oNSkKKyAgICAgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgICAgICBzZWxmLmNsb3NlKCkKKyAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgc2VsZi5faGFuZGxlciA9IGhhbmRsZXIKKyAgICAgICAgICAgIHNlbGYuX3RocmVhZCA9IE5vbmUKKyAgICAgICAgICAgIHNlbGYucG9sbF9pbnRlcnZhbCA9IHBvbGxfaW50ZXJ2YWwKKworICAgICAgICBkZWYgaGFuZGxlX2FjY2VwdGVkKHNlbGYsIGNvbm4sIGFkZHIpOgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBSZWRlZmluZWQgb25seSBiZWNhdXNlIHRoZSBiYXNlIGNsYXNzIGRvZXMgbm90IHBhc3MgaW4gYQorICAgICAgICAgICAgbWFwLCBmb3JjaW5nIHVzZSBvZiBhIGdsb2JhbCBpbiA6bW9kOmBhc3luY29yZWAuCisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIGNoYW5uZWwgPSBzZWxmLmNoYW5uZWxfY2xhc3Moc2VsZiwgY29ubiwgYWRkciwgc2VsZi5zb2NrbWFwKQorCisgICAgICAgIGRlZiBwcm9jZXNzX21lc3NhZ2Uoc2VsZiwgcGVlciwgbWFpbGZyb20sIHJjcHR0b3MsIGRhdGEpOgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBEZWxlZ2F0ZXMgdG8gdGhlIGhhbmRsZXIgcGFzc2VkIGluIHRvIHRoZSBzZXJ2ZXIncyBjb25zdHJ1Y3Rvci4KKworICAgICAgICAgICAgVHlwaWNhbGx5LCB0aGlzIHdpbGwgYmUgYSB0ZXN0IGNhc2UgbWV0aG9kLgorICAgICAgICAgICAgOnBhcmFtIHBlZXI6IFRoZSBjbGllbnQgKGhvc3QsIHBvcnQpIHR1cGxlLgorICAgICAgICAgICAgOnBhcmFtIG1haWxmcm9tOiBUaGUgYWRkcmVzcyBvZiB0aGUgc2VuZGVyLgorICAgICAgICAgICAgOnBhcmFtIHJjcHR0b3M6IFRoZSBhZGRyZXNzZXMgb2YgdGhlIHJlY2lwaWVudHMuCisgICAgICAgICAgICA6cGFyYW0gZGF0YTogVGhlIG1lc3NhZ2UuCisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIHNlbGYuX2hhbmRsZXIocGVlciwgbWFpbGZyb20sIHJjcHR0b3MsIGRhdGEpCisKKyAgICAgICAgZGVmIHN0YXJ0KHNlbGYpOgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBTdGFydCB0aGUgc2VydmVyIHJ1bm5pbmcgb24gYSBzZXBhcmF0ZSBkYWVtb24gdGhyZWFkLgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBzZWxmLl90aHJlYWQgPSB0ID0gdGhyZWFkaW5nLlRocmVhZCh0YXJnZXQ9c2VsZi5zZXJ2ZV9mb3JldmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncz0oc2VsZi5wb2xsX2ludGVydmFsLCkpCisgICAgICAgICAgICB0LnNldERhZW1vbihUcnVlKQorICAgICAgICAgICAgdC5zdGFydCgpCisKKyAgICAgICAgZGVmIHNlcnZlX2ZvcmV2ZXIoc2VsZiwgcG9sbF9pbnRlcnZhbCk6CisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIFJ1biB0aGUgOm1vZDpgYXN5bmNvcmVgIGxvb3AgdW50aWwgbm9ybWFsIHRlcm1pbmF0aW9uCisgICAgICAgICAgICBjb25kaXRpb25zIGFyaXNlLgorICAgICAgICAgICAgOnBhcmFtIHBvbGxfaW50ZXJ2YWw6IFRoZSBpbnRlcnZhbCwgaW4gc2Vjb25kcywgdXNlZCBpbiB0aGUgdW5kZXJseWluZworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDpmdW5jOmBzZWxlY3RgIG9yIDpmdW5jOmBwb2xsYCBjYWxsIGJ5CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOmZ1bmM6YGFzeW5jb3JlLmxvb3BgLgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgYXN5bmNvcmUubG9vcChwb2xsX2ludGVydmFsLCBtYXA9c2VsZi5zb2NrbWFwKQorICAgICAgICAgICAgZXhjZXB0IHNlbGVjdC5lcnJvcjoKKyAgICAgICAgICAgICAgICAjIE9uIEZyZWVCU0QgOCwgY2xvc2luZyB0aGUgc2VydmVyIHJlcGVhdGFibHkKKyAgICAgICAgICAgICAgICAjIHJhaXNlcyB0aGlzIGVycm9yLiBXZSBzd2FsbG93IGl0IGlmIHRoZQorICAgICAgICAgICAgICAgICMgc2VydmVyIGhhcyBiZWVuIGNsb3NlZC4KKyAgICAgICAgICAgICAgICBpZiBzZWxmLmNvbm5lY3RlZCBvciBzZWxmLmFjY2VwdGluZzoKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UKKworICAgICAgICBkZWYgc3RvcChzZWxmLCB0aW1lb3V0PU5vbmUpOgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBTdG9wIHRoZSB0aHJlYWQgYnkgY2xvc2luZyB0aGUgc2VydmVyIGluc3RhbmNlLgorICAgICAgICAgICAgV2FpdCBmb3IgdGhlIHNlcnZlciB0aHJlYWQgdG8gdGVybWluYXRlLgorCisgICAgICAgICAgICA6cGFyYW0gdGltZW91dDogSG93IGxvbmcgdG8gd2FpdCBmb3IgdGhlIHNlcnZlciB0aHJlYWQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0byB0ZXJtaW5hdGUuCisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIHNlbGYuY2xvc2UoKQorICAgICAgICAgICAgc2VsZi5fdGhyZWFkLmpvaW4odGltZW91dCkKKyAgICAgICAgICAgIHNlbGYuX3RocmVhZCA9IE5vbmUKKworICAgIGNsYXNzIENvbnRyb2xNaXhpbihvYmplY3QpOgorICAgICAgICAiIiIKKyAgICAgICAgVGhpcyBtaXhpbiBpcyB1c2VkIHRvIHN0YXJ0IGEgc2VydmVyIG9uIGEgc2VwYXJhdGUgdGhyZWFkLCBhbmQKKyAgICAgICAgc2h1dCBpdCBkb3duIHByb2dyYW1tYXRpY2FsbHkuIFJlcXVlc3QgaGFuZGxpbmcgaXMgc2ltcGxpZmllZCAtIGluc3RlYWQKKyAgICAgICAgb2YgbmVlZGluZyB0byBkZXJpdmUgYSBzdWl0YWJsZSBSZXF1ZXN0SGFuZGxlciBzdWJjbGFzcywgeW91IGp1c3QKKyAgICAgICAgcHJvdmlkZSBhIGNhbGxhYmxlIHdoaWNoIHdpbGwgYmUgcGFzc2VkIGVhY2ggcmVjZWl2ZWQgcmVxdWVzdCB0byBiZQorICAgICAgICBwcm9jZXNzZWQuCisKKyAgICAgICAgOnBhcmFtIGhhbmRsZXI6IEEgaGFuZGxlciBjYWxsYWJsZSB3aGljaCB3aWxsIGJlIGNhbGxlZCB3aXRoIGEKKyAgICAgICAgICAgICAgICAgICAgICAgIHNpbmdsZSBwYXJhbWV0ZXIgLSB0aGUgcmVxdWVzdCAtIGluIG9yZGVyIHRvCisgICAgICAgICAgICAgICAgICAgICAgICBwcm9jZXNzIHRoZSByZXF1ZXN0LiBUaGlzIGhhbmRsZXIgaXMgY2FsbGVkIG9uIHRoZQorICAgICAgICAgICAgICAgICAgICAgICAgc2VydmVyIHRocmVhZCwgZWZmZWN0aXZlbHkgbWVhbmluZyB0aGF0IHJlcXVlc3RzIGFyZQorICAgICAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc2VkIHNlcmlhbGx5LiBXaGlsZSBub3QgcXVpdGUgV2ViIHNjYWxlIDstKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMgc2hvdWxkIGJlIGZpbmUgZm9yIHRlc3RpbmcgYXBwbGljYXRpb25zLgorICAgICAgICA6cGFyYW0gcG9sbF9pbnRlcnZhbDogVGhlIHBvbGxpbmcgaW50ZXJ2YWwgaW4gc2Vjb25kcy4KKyAgICAgICAgIiIiCisgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBoYW5kbGVyLCBwb2xsX2ludGVydmFsKToKKyAgICAgICAgICAgIHNlbGYuX3RocmVhZCA9IE5vbmUKKyAgICAgICAgICAgIHNlbGYucG9sbF9pbnRlcnZhbCA9IHBvbGxfaW50ZXJ2YWwKKyAgICAgICAgICAgIHNlbGYuX2hhbmRsZXIgPSBoYW5kbGVyCisgICAgICAgICAgICBzZWxmLnJlYWR5ID0gdGhyZWFkaW5nLkV2ZW50KCkKKworICAgICAgICBkZWYgc3RhcnQoc2VsZik6CisgICAgICAgICAgICAiIiIKKyAgICAgICAgICAgIENyZWF0ZSBhIGRhZW1vbiB0aHJlYWQgdG8gcnVuIHRoZSBzZXJ2ZXIsIGFuZCBzdGFydCBpdC4KKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgc2VsZi5fdGhyZWFkID0gdCA9IHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PXNlbGYuc2VydmVfZm9yZXZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3M9KHNlbGYucG9sbF9pbnRlcnZhbCwpKQorICAgICAgICAgICAgdC5zZXREYWVtb24oVHJ1ZSkKKyAgICAgICAgICAgIHQuc3RhcnQoKQorCisgICAgICAgIGRlZiBzZXJ2ZV9mb3JldmVyKHNlbGYsIHBvbGxfaW50ZXJ2YWwpOgorICAgICAgICAgICAgIiIiCisgICAgICAgICAgICBSdW4gdGhlIHNlcnZlci4gU2V0IHRoZSByZWFkeSBmbGFnIGJlZm9yZSBlbnRlcmluZyB0aGUKKyAgICAgICAgICAgIHNlcnZpY2UgbG9vcC4KKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgc2VsZi5yZWFkeS5zZXQoKQorICAgICAgICAgICAgc3VwZXIoQ29udHJvbE1peGluLCBzZWxmKS5zZXJ2ZV9mb3JldmVyKHBvbGxfaW50ZXJ2YWwpCisKKyAgICAgICAgZGVmIHN0b3Aoc2VsZiwgdGltZW91dD1Ob25lKToKKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgVGVsbCB0aGUgc2VydmVyIHRocmVhZCB0byBzdG9wLCBhbmQgd2FpdCBmb3IgaXQgdG8gZG8gc28uCisKKyAgICAgICAgICAgIDpwYXJhbSB0aW1lb3V0OiBIb3cgbG9uZyB0byB3YWl0IGZvciB0aGUgc2VydmVyIHRocmVhZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvIHRlcm1pbmF0ZS4KKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgc2VsZi5zaHV0ZG93bigpCisgICAgICAgICAgICBpZiBzZWxmLl90aHJlYWQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5fdGhyZWFkLmpvaW4odGltZW91dCkKKyAgICAgICAgICAgICAgICBzZWxmLl90aHJlYWQgPSBOb25lCisgICAgICAgICAgICBzZWxmLnNlcnZlcl9jbG9zZSgpCisgICAgICAgICAgICBzZWxmLnJlYWR5LmNsZWFyKCkKKworICAgIGNsYXNzIFRlc3RIVFRQU2VydmVyKENvbnRyb2xNaXhpbiwgSFRUUFNlcnZlcik6CisgICAgICAgICIiIgorICAgICAgICBBbiBIVFRQIHNlcnZlciB3aGljaCBpcyBjb250cm9sbGFibGUgdXNpbmcgOmNsYXNzOmBDb250cm9sTWl4aW5gLgorCisgICAgICAgIDpwYXJhbSBhZGRyOiBBIHR1cGxlIHdpdGggdGhlIElQIGFkZHJlc3MgYW5kIHBvcnQgdG8gbGlzdGVuIG9uLgorICAgICAgICA6cGFyYW0gaGFuZGxlcjogQSBoYW5kbGVyIGNhbGxhYmxlIHdoaWNoIHdpbGwgYmUgY2FsbGVkIHdpdGggYQorICAgICAgICAgICAgICAgICAgICAgICAgc2luZ2xlIHBhcmFtZXRlciAtIHRoZSByZXF1ZXN0IC0gaW4gb3JkZXIgdG8KKyAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3MgdGhlIHJlcXVlc3QuCisgICAgICAgIDpwYXJhbSBwb2xsX2ludGVydmFsOiBUaGUgcG9sbGluZyBpbnRlcnZhbCBpbiBzZWNvbmRzLgorICAgICAgICA6cGFyYW0gbG9nOiBQYXNzIGBgVHJ1ZWBgIHRvIGVuYWJsZSBsb2cgbWVzc2FnZXMuCisgICAgICAgICIiIgorICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgYWRkciwgaGFuZGxlciwgcG9sbF9pbnRlcnZhbD0wLjUsCisgICAgICAgICAgICAgICAgICAgICBsb2c9RmFsc2UsIHNzbGN0eD1Ob25lKToKKyAgICAgICAgICAgIGNsYXNzIERlbGVnYXRpbmdIVFRQUmVxdWVzdEhhbmRsZXIoQmFzZUhUVFBSZXF1ZXN0SGFuZGxlcik6CisgICAgICAgICAgICAgICAgZGVmIF9fZ2V0YXR0cl9fKHNlbGYsIG5hbWUsIGRlZmF1bHQ9Tm9uZSk6CisgICAgICAgICAgICAgICAgICAgIGlmIG5hbWUuc3RhcnRzd2l0aCgnZG9fJyk6CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5wcm9jZXNzX3JlcXVlc3QKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgQXR0cmlidXRlRXJyb3IobmFtZSkKKworICAgICAgICAgICAgICAgIGRlZiBwcm9jZXNzX3JlcXVlc3Qoc2VsZik6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuc2VydmVyLl9oYW5kbGVyKHNlbGYpCisKKyAgICAgICAgICAgICAgICBkZWYgbG9nX21lc3NhZ2Uoc2VsZiwgZm9ybWF0LCAqYXJncyk6CisgICAgICAgICAgICAgICAgICAgIGlmIGxvZzoKKyAgICAgICAgICAgICAgICAgICAgICAgIHN1cGVyKERlbGVnYXRpbmdIVFRQUmVxdWVzdEhhbmRsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmKS5sb2dfbWVzc2FnZShmb3JtYXQsICphcmdzKQorICAgICAgICAgICAgSFRUUFNlcnZlci5fX2luaXRfXyhzZWxmLCBhZGRyLCBEZWxlZ2F0aW5nSFRUUFJlcXVlc3RIYW5kbGVyKQorICAgICAgICAgICAgQ29udHJvbE1peGluLl9faW5pdF9fKHNlbGYsIGhhbmRsZXIsIHBvbGxfaW50ZXJ2YWwpCisgICAgICAgICAgICBzZWxmLnNzbGN0eCA9IHNzbGN0eAorCisgICAgICAgIGRlZiBnZXRfcmVxdWVzdChzZWxmKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzb2NrLCBhZGRyID0gc2VsZi5zb2NrZXQuYWNjZXB0KCkKKyAgICAgICAgICAgICAgICBpZiBzZWxmLnNzbGN0eDoKKyAgICAgICAgICAgICAgICAgICAgc29jayA9IHNlbGYuc3NsY3R4LndyYXBfc29ja2V0KHNvY2ssIHNlcnZlcl9zaWRlPVRydWUpCisgICAgICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIGU6CisgICAgICAgICAgICAgICAgIyBzb2NrZXQgZXJyb3JzIGFyZSBzaWxlbmNlZCBieSB0aGUgY2FsbGVyLCBwcmludCB0aGVtIGhlcmUKKyAgICAgICAgICAgICAgICBzeXMuc3RkZXJyLndyaXRlKCJHb3QgYW4gZXJyb3I6XG4lc1xuIiAlIGUpCisgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgIHJldHVybiBzb2NrLCBhZGRyCisKKyAgICBjbGFzcyBUZXN0VENQU2VydmVyKENvbnRyb2xNaXhpbiwgVGhyZWFkaW5nVENQU2VydmVyKToKKyAgICAgICAgIiIiCisgICAgICAgIEEgVENQIHNlcnZlciB3aGljaCBpcyBjb250cm9sbGFibGUgdXNpbmcgOmNsYXNzOmBDb250cm9sTWl4aW5gLgorCisgICAgICAgIDpwYXJhbSBhZGRyOiBBIHR1cGxlIHdpdGggdGhlIElQIGFkZHJlc3MgYW5kIHBvcnQgdG8gbGlzdGVuIG9uLgorICAgICAgICA6cGFyYW0gaGFuZGxlcjogQSBoYW5kbGVyIGNhbGxhYmxlIHdoaWNoIHdpbGwgYmUgY2FsbGVkIHdpdGggYSBzaW5nbGUKKyAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlciAtIHRoZSByZXF1ZXN0IC0gaW4gb3JkZXIgdG8gcHJvY2VzcyB0aGUgcmVxdWVzdC4KKyAgICAgICAgOnBhcmFtIHBvbGxfaW50ZXJ2YWw6IFRoZSBwb2xsaW5nIGludGVydmFsIGluIHNlY29uZHMuCisgICAgICAgIDpiaW5kX2FuZF9hY3RpdmF0ZTogSWYgVHJ1ZSAodGhlIGRlZmF1bHQpLCBiaW5kcyB0aGUgc2VydmVyIGFuZCBzdGFydHMgaXQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0ZW5pbmcuIElmIEZhbHNlLCB5b3UgbmVlZCB0byBjYWxsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgOm1ldGg6YHNlcnZlcl9iaW5kYCBhbmQgOm1ldGg6YHNlcnZlcl9hY3RpdmF0ZWAgYXQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb21lIGxhdGVyIHRpbWUgYmVmb3JlIGNhbGxpbmcgOm1ldGg6YHN0YXJ0YCwgc28gdGhhdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBzZXJ2ZXIgd2lsbCBzZXQgdXAgdGhlIHNvY2tldCBhbmQgbGlzdGVuIG9uIGl0LgorICAgICAgICAiIiIKKworICAgICAgICBhbGxvd19yZXVzZV9hZGRyZXNzID0gVHJ1ZQorCisgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhZGRyLCBoYW5kbGVyLCBwb2xsX2ludGVydmFsPTAuNSwKKyAgICAgICAgICAgICAgICAgICAgIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUpOgorICAgICAgICAgICAgY2xhc3MgRGVsZWdhdGluZ1RDUFJlcXVlc3RIYW5kbGVyKFN0cmVhbVJlcXVlc3RIYW5kbGVyKToKKworICAgICAgICAgICAgICAgIGRlZiBoYW5kbGUoc2VsZik6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuc2VydmVyLl9oYW5kbGVyKHNlbGYpCisgICAgICAgICAgICBUaHJlYWRpbmdUQ1BTZXJ2ZXIuX19pbml0X18oc2VsZiwgYWRkciwgRGVsZWdhdGluZ1RDUFJlcXVlc3RIYW5kbGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJpbmRfYW5kX2FjdGl2YXRlKQorICAgICAgICAgICAgQ29udHJvbE1peGluLl9faW5pdF9fKHNlbGYsIGhhbmRsZXIsIHBvbGxfaW50ZXJ2YWwpCisKKyAgICAgICAgZGVmIHNlcnZlcl9iaW5kKHNlbGYpOgorICAgICAgICAgICAgc3VwZXIoVGVzdFRDUFNlcnZlciwgc2VsZikuc2VydmVyX2JpbmQoKQorICAgICAgICAgICAgc2VsZi5wb3J0ID0gc2VsZi5zb2NrZXQuZ2V0c29ja25hbWUoKVsxXQorCisgICAgY2xhc3MgVGVzdFVEUFNlcnZlcihDb250cm9sTWl4aW4sIFRocmVhZGluZ1VEUFNlcnZlcik6CisgICAgICAgICIiIgorICAgICAgICBBIFVEUCBzZXJ2ZXIgd2hpY2ggaXMgY29udHJvbGxhYmxlIHVzaW5nIDpjbGFzczpgQ29udHJvbE1peGluYC4KKworICAgICAgICA6cGFyYW0gYWRkcjogQSB0dXBsZSB3aXRoIHRoZSBJUCBhZGRyZXNzIGFuZCBwb3J0IHRvIGxpc3RlbiBvbi4KKyAgICAgICAgOnBhcmFtIGhhbmRsZXI6IEEgaGFuZGxlciBjYWxsYWJsZSB3aGljaCB3aWxsIGJlIGNhbGxlZCB3aXRoIGEKKyAgICAgICAgICAgICAgICAgICAgICAgIHNpbmdsZSBwYXJhbWV0ZXIgLSB0aGUgcmVxdWVzdCAtIGluIG9yZGVyIHRvCisgICAgICAgICAgICAgICAgICAgICAgICBwcm9jZXNzIHRoZSByZXF1ZXN0LgorICAgICAgICA6cGFyYW0gcG9sbF9pbnRlcnZhbDogVGhlIHBvbGxpbmcgaW50ZXJ2YWwgZm9yIHNodXRkb3duIHJlcXVlc3RzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gc2Vjb25kcy4KKyAgICAgICAgOmJpbmRfYW5kX2FjdGl2YXRlOiBJZiBUcnVlICh0aGUgZGVmYXVsdCksIGJpbmRzIHRoZSBzZXJ2ZXIgYW5kCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRzIGl0IGxpc3RlbmluZy4gSWYgRmFsc2UsIHlvdSBuZWVkIHRvCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbCA6bWV0aDpgc2VydmVyX2JpbmRgIGFuZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDptZXRoOmBzZXJ2ZXJfYWN0aXZhdGVgIGF0IHNvbWUgbGF0ZXIgdGltZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlZm9yZSBjYWxsaW5nIDptZXRoOmBzdGFydGAsIHNvIHRoYXQgdGhlIHNlcnZlciB3aWxsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0IHVwIHRoZSBzb2NrZXQgYW5kIGxpc3RlbiBvbiBpdC4KKyAgICAgICAgIiIiCisgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhZGRyLCBoYW5kbGVyLCBwb2xsX2ludGVydmFsPTAuNSwKKyAgICAgICAgICAgICAgICAgICAgIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUpOgorICAgICAgICAgICAgY2xhc3MgRGVsZWdhdGluZ1VEUFJlcXVlc3RIYW5kbGVyKERhdGFncmFtUmVxdWVzdEhhbmRsZXIpOgorCisgICAgICAgICAgICAgICAgZGVmIGhhbmRsZShzZWxmKToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5zZXJ2ZXIuX2hhbmRsZXIoc2VsZikKKworICAgICAgICAgICAgICAgIGRlZiBmaW5pc2goc2VsZik6CisgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBzZWxmLndmaWxlLmdldHZhbHVlKCkKKyAgICAgICAgICAgICAgICAgICAgaWYgZGF0YToKKyAgICAgICAgICAgICAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBlcihEZWxlZ2F0aW5nVURQUmVxdWVzdEhhbmRsZXIsIHNlbGYpLmZpbmlzaCgpCisgICAgICAgICAgICAgICAgICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBzZWxmLnNlcnZlci5fY2xvc2VkOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZQorCisgICAgICAgICAgICBUaHJlYWRpbmdVRFBTZXJ2ZXIuX19pbml0X18oc2VsZiwgYWRkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWxlZ2F0aW5nVURQUmVxdWVzdEhhbmRsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmluZF9hbmRfYWN0aXZhdGUpCisgICAgICAgICAgICBDb250cm9sTWl4aW4uX19pbml0X18oc2VsZiwgaGFuZGxlciwgcG9sbF9pbnRlcnZhbCkKKyAgICAgICAgICAgIHNlbGYuX2Nsb3NlZCA9IEZhbHNlCisKKyAgICAgICAgZGVmIHNlcnZlcl9iaW5kKHNlbGYpOgorICAgICAgICAgICAgc3VwZXIoVGVzdFVEUFNlcnZlciwgc2VsZikuc2VydmVyX2JpbmQoKQorICAgICAgICAgICAgc2VsZi5wb3J0ID0gc2VsZi5zb2NrZXQuZ2V0c29ja25hbWUoKVsxXQorCisgICAgICAgIGRlZiBzZXJ2ZXJfY2xvc2Uoc2VsZik6CisgICAgICAgICAgICBzdXBlcihUZXN0VURQU2VydmVyLCBzZWxmKS5zZXJ2ZXJfY2xvc2UoKQorICAgICAgICAgICAgc2VsZi5fY2xvc2VkID0gVHJ1ZQorCisjIC0gZW5kIG9mIHNlcnZlcl9oZWxwZXIgc2VjdGlvbgorCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWRpbmcsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgU01UUEhhbmRsZXJUZXN0KEJhc2VUZXN0KToKKyAgICBkZWYgdGVzdF9iYXNpYyhzZWxmKToKKyAgICAgICAgc29ja21hcCA9IHt9CisgICAgICAgIHNlcnZlciA9IFRlc3RTTVRQU2VydmVyKCgnbG9jYWxob3N0JywgMCksIHNlbGYucHJvY2Vzc19tZXNzYWdlLCAwLjAwMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja21hcCkKKyAgICAgICAgc2VydmVyLnN0YXJ0KCkKKyAgICAgICAgYWRkciA9ICgnbG9jYWxob3N0Jywgc2VydmVyLnBvcnQpCisgICAgICAgIGggPSBsb2dnaW5nLmhhbmRsZXJzLlNNVFBIYW5kbGVyKGFkZHIsICdtZScsICd5b3UnLCAnTG9nJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoLnRvYWRkcnMsIFsneW91J10pCisgICAgICAgIHNlbGYubWVzc2FnZXMgPSBbXQorICAgICAgICByID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHsnbXNnJzogJ0hlbGxvJ30pCisgICAgICAgIHNlbGYuaGFuZGxlZCA9IHRocmVhZGluZy5FdmVudCgpCisgICAgICAgIGguaGFuZGxlKHIpCisgICAgICAgIHNlbGYuaGFuZGxlZC53YWl0KCkKKyAgICAgICAgc2VydmVyLnN0b3AoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLm1lc3NhZ2VzKSwgMSkKKyAgICAgICAgcGVlciwgbWFpbGZyb20sIHJjcHR0b3MsIGRhdGEgPSBzZWxmLm1lc3NhZ2VzWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFpbGZyb20sICdtZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmNwdHRvcywgWyd5b3UnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbignXG5TdWJqZWN0OiBMb2dcbicsIGRhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShkYXRhLmVuZHN3aXRoKCdcblxuSGVsbG8nKSkKKyAgICAgICAgaC5jbG9zZSgpCisKKyAgICBkZWYgcHJvY2Vzc19tZXNzYWdlKHNlbGYsICphcmdzKToKKyAgICAgICAgc2VsZi5tZXNzYWdlcy5hcHBlbmQoYXJncykKKyAgICAgICAgc2VsZi5oYW5kbGVkLnNldCgpCisKIGNsYXNzIE1lbW9yeUhhbmRsZXJUZXN0KEJhc2VUZXN0KToKIAogICAgICIiIlRlc3RzIGZvciB0aGUgTWVtb3J5SGFuZGxlci4iIiIKQEAgLTUyMyw3ICs5NzQsNyBAQAogICAgICAgICBzZWxmLm1lbV9sb2dnZXIuaW5mbyhzZWxmLm5leHRfbWVzc2FnZSgpKQogICAgICAgICBzZWxmLmFzc2VydF9sb2dfbGluZXMoW10pCiAgICAgICAgICMgVGhpcyB3aWxsIGZsdXNoIGJlY2F1c2UgdGhlIGxldmVsIGlzID49IGxvZ2dpbmcuV0FSTklORwotICAgICAgICBzZWxmLm1lbV9sb2dnZXIud2FybihzZWxmLm5leHRfbWVzc2FnZSgpKQorICAgICAgICBzZWxmLm1lbV9sb2dnZXIud2FybmluZyhzZWxmLm5leHRfbWVzc2FnZSgpKQogICAgICAgICBsaW5lcyA9IFsKICAgICAgICAgICAgICgnREVCVUcnLCAnMScpLAogICAgICAgICAgICAgKCdJTkZPJywgJzInKSwKQEAgLTg2OCw2OCArMTMxOSw2IEBACiAgICAgICAgICAgICAjIE9yaWdpbmFsIGxvZ2dlciBvdXRwdXQgaXMgZW1wdHkuCiAgICAgICAgICAgICBzZWxmLmFzc2VydF9sb2dfbGluZXMoW10pCiAKLWNsYXNzIExvZ1JlY29yZFN0cmVhbUhhbmRsZXIoU3RyZWFtUmVxdWVzdEhhbmRsZXIpOgotCi0gICAgIiIiSGFuZGxlciBmb3IgYSBzdHJlYW1pbmcgbG9nZ2luZyByZXF1ZXN0LiBJdCBzYXZlcyB0aGUgbG9nIG1lc3NhZ2UgaW4gdGhlCi0gICAgVENQIHNlcnZlcidzICdsb2dfb3V0cHV0JyBhdHRyaWJ1dGUuIiIiCi0KLSAgICBUQ1BfTE9HX0VORCA9ICIhISFFTkQhISEiCi0KLSAgICBkZWYgaGFuZGxlKHNlbGYpOgotICAgICAgICAiIiJIYW5kbGUgbXVsdGlwbGUgcmVxdWVzdHMgLSBlYWNoIGV4cGVjdGVkIHRvIGJlIG9mIDQtYnl0ZSBsZW5ndGgsCi0gICAgICAgIGZvbGxvd2VkIGJ5IHRoZSBMb2dSZWNvcmQgaW4gcGlja2xlIGZvcm1hdC4gTG9ncyB0aGUgcmVjb3JkCi0gICAgICAgIGFjY29yZGluZyB0byB3aGF0ZXZlciBwb2xpY3kgaXMgY29uZmlndXJlZCBsb2NhbGx5LiIiIgotICAgICAgICB3aGlsZSBUcnVlOgotICAgICAgICAgICAgY2h1bmsgPSBzZWxmLmNvbm5lY3Rpb24ucmVjdig0KQotICAgICAgICAgICAgaWYgbGVuKGNodW5rKSA8IDQ6Ci0gICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgIHNsZW4gPSBzdHJ1Y3QudW5wYWNrKCI+TCIsIGNodW5rKVswXQotICAgICAgICAgICAgY2h1bmsgPSBzZWxmLmNvbm5lY3Rpb24ucmVjdihzbGVuKQotICAgICAgICAgICAgd2hpbGUgbGVuKGNodW5rKSA8IHNsZW46Ci0gICAgICAgICAgICAgICAgY2h1bmsgPSBjaHVuayArIHNlbGYuY29ubmVjdGlvbi5yZWN2KHNsZW4gLSBsZW4oY2h1bmspKQotICAgICAgICAgICAgb2JqID0gc2VsZi51bnBpY2tsZShjaHVuaykKLSAgICAgICAgICAgIHJlY29yZCA9IGxvZ2dpbmcubWFrZUxvZ1JlY29yZChvYmopCi0gICAgICAgICAgICBzZWxmLmhhbmRsZV9sb2dfcmVjb3JkKHJlY29yZCkKLQotICAgIGRlZiB1bnBpY2tsZShzZWxmLCBkYXRhKToKLSAgICAgICAgcmV0dXJuIHBpY2tsZS5sb2FkcyhkYXRhKQotCi0gICAgZGVmIGhhbmRsZV9sb2dfcmVjb3JkKHNlbGYsIHJlY29yZCk6Ci0gICAgICAgICMgSWYgdGhlIGVuZC1vZi1tZXNzYWdlcyBzZW50aW5lbCBpcyBzZWVuLCB0ZWxsIHRoZSBzZXJ2ZXIgdG8KLSAgICAgICAgIyAgdGVybWluYXRlLgotICAgICAgICBpZiBzZWxmLlRDUF9MT0dfRU5EIGluIHJlY29yZC5tc2c6Ci0gICAgICAgICAgICBzZWxmLnNlcnZlci5hYm9ydCA9IDEKLSAgICAgICAgICAgIHJldHVybgotICAgICAgICBzZWxmLnNlcnZlci5sb2dfb3V0cHV0ICs9IHJlY29yZC5tc2cgKyAiXG4iCi0KLQotY2xhc3MgTG9nUmVjb3JkU29ja2V0UmVjZWl2ZXIoVGhyZWFkaW5nVENQU2VydmVyKToKLQotICAgICIiIkEgc2ltcGxlLW1pbmRlZCBUQ1Agc29ja2V0LWJhc2VkIGxvZ2dpbmcgcmVjZWl2ZXIgc3VpdGFibGUgZm9yIHRlc3QKLSAgICBwdXJwb3Nlcy4iIiIKLQotICAgIGFsbG93X3JldXNlX2FkZHJlc3MgPSAxCi0gICAgbG9nX291dHB1dCA9ICIiCi0KLSAgICBkZWYgX19pbml0X18oc2VsZiwgaG9zdD0nbG9jYWxob3N0JywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9ydD1sb2dnaW5nLmhhbmRsZXJzLkRFRkFVTFRfVENQX0xPR0dJTkdfUE9SVCwKLSAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXI9TG9nUmVjb3JkU3RyZWFtSGFuZGxlcik6Ci0gICAgICAgIFRocmVhZGluZ1RDUFNlcnZlci5fX2luaXRfXyhzZWxmLCAoaG9zdCwgcG9ydCksIGhhbmRsZXIpCi0gICAgICAgIHNlbGYuYWJvcnQgPSBGYWxzZQotICAgICAgICBzZWxmLnRpbWVvdXQgPSAwLjEKLSAgICAgICAgc2VsZi5maW5pc2hlZCA9IHRocmVhZGluZy5FdmVudCgpCi0KLSAgICBkZWYgc2VydmVfdW50aWxfc3RvcHBlZChzZWxmKToKLSAgICAgICAgd2hpbGUgbm90IHNlbGYuYWJvcnQ6Ci0gICAgICAgICAgICByZCwgd3IsIGV4ID0gc2VsZWN0LnNlbGVjdChbc2VsZi5zb2NrZXQuZmlsZW5vKCldLCBbXSwgW10sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnRpbWVvdXQpCi0gICAgICAgICAgICBpZiByZDoKLSAgICAgICAgICAgICAgICBzZWxmLmhhbmRsZV9yZXF1ZXN0KCkKLSAgICAgICAgIyBOb3RpZnkgdGhlIG1haW4gdGhyZWFkIHRoYXQgd2UncmUgYWJvdXQgdG8gZXhpdAotICAgICAgICBzZWxmLmZpbmlzaGVkLnNldCgpCi0gICAgICAgICMgY2xvc2UgdGhlIGxpc3RlbiBzb2NrZXQKLSAgICAgICAgc2VsZi5zZXJ2ZXJfY2xvc2UoKQotCiAKIEB1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZGluZywgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCiBjbGFzcyBTb2NrZXRIYW5kbGVyVGVzdChCYXNlVGVzdCk6CkBAIC05NDAsNDQgKzEzMjksMjcwIEBACiAgICAgICAgICIiIlNldCB1cCBhIFRDUCBzZXJ2ZXIgdG8gcmVjZWl2ZSBsb2cgbWVzc2FnZXMsIGFuZCBhIFNvY2tldEhhbmRsZXIKICAgICAgICAgcG9pbnRpbmcgdG8gdGhhdCBzZXJ2ZXIncyBhZGRyZXNzIGFuZCBwb3J0LiIiIgogICAgICAgICBCYXNlVGVzdC5zZXRVcChzZWxmKQotICAgICAgICBzZWxmLnRjcHNlcnZlciA9IExvZ1JlY29yZFNvY2tldFJlY2VpdmVyKHBvcnQ9MCkKLSAgICAgICAgc2VsZi5wb3J0ID0gc2VsZi50Y3BzZXJ2ZXIuc29ja2V0LmdldHNvY2tuYW1lKClbMV0KLSAgICAgICAgc2VsZi50aHJlYWRzID0gWwotICAgICAgICAgICAgICAgIHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PXNlbGYudGNwc2VydmVyLnNlcnZlX3VudGlsX3N0b3BwZWQpXQotICAgICAgICBmb3IgdGhyZWFkIGluIHNlbGYudGhyZWFkczoKLSAgICAgICAgICAgIHRocmVhZC5zdGFydCgpCi0KLSAgICAgICAgc2VsZi5zb2NrX2hkbHIgPSBsb2dnaW5nLmhhbmRsZXJzLlNvY2tldEhhbmRsZXIoJ2xvY2FsaG9zdCcsIHNlbGYucG9ydCkKLSAgICAgICAgc2VsZi5zb2NrX2hkbHIuc2V0Rm9ybWF0dGVyKHNlbGYucm9vdF9mb3JtYXR0ZXIpCisgICAgICAgIGFkZHIgPSAoJ2xvY2FsaG9zdCcsIDApCisgICAgICAgIHNlbGYuc2VydmVyID0gc2VydmVyID0gVGVzdFRDUFNlcnZlcihhZGRyLCBzZWxmLmhhbmRsZV9zb2NrZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjAxKQorICAgICAgICBzZXJ2ZXIuc3RhcnQoKQorICAgICAgICBzZXJ2ZXIucmVhZHkud2FpdCgpCisgICAgICAgIHNlbGYuc29ja19oZGxyID0gbG9nZ2luZy5oYW5kbGVycy5Tb2NrZXRIYW5kbGVyKCdsb2NhbGhvc3QnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXJ2ZXIucG9ydCkKKyAgICAgICAgc2VsZi5sb2dfb3V0cHV0ID0gJycKICAgICAgICAgc2VsZi5yb290X2xvZ2dlci5yZW1vdmVIYW5kbGVyKHNlbGYucm9vdF9sb2dnZXIuaGFuZGxlcnNbMF0pCiAgICAgICAgIHNlbGYucm9vdF9sb2dnZXIuYWRkSGFuZGxlcihzZWxmLnNvY2tfaGRscikKKyAgICAgICAgc2VsZi5oYW5kbGVkID0gdGhyZWFkaW5nLlNlbWFwaG9yZSgwKQogCiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgogICAgICAgICAiIiJTaHV0ZG93biB0aGUgVENQIHNlcnZlci4iIiIKICAgICAgICAgdHJ5OgotICAgICAgICAgICAgc2VsZi50Y3BzZXJ2ZXIuYWJvcnQgPSBUcnVlCi0gICAgICAgICAgICBkZWwgc2VsZi50Y3BzZXJ2ZXIKKyAgICAgICAgICAgIHNlbGYuc2VydmVyLnN0b3AoMi4wKQogICAgICAgICAgICAgc2VsZi5yb290X2xvZ2dlci5yZW1vdmVIYW5kbGVyKHNlbGYuc29ja19oZGxyKQogICAgICAgICAgICAgc2VsZi5zb2NrX2hkbHIuY2xvc2UoKQotICAgICAgICAgICAgZm9yIHRocmVhZCBpbiBzZWxmLnRocmVhZHM6Ci0gICAgICAgICAgICAgICAgdGhyZWFkLmpvaW4oMi4wKQogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgQmFzZVRlc3QudGVhckRvd24oc2VsZikKIAotICAgIGRlZiBnZXRfb3V0cHV0KHNlbGYpOgotICAgICAgICAiIiJHZXQgdGhlIGxvZyBvdXRwdXQgYXMgcmVjZWl2ZWQgYnkgdGhlIFRDUCBzZXJ2ZXIuIiIiCi0gICAgICAgICMgU2lnbmFsIHRoZSBUQ1AgcmVjZWl2ZXIgYW5kIHdhaXQgZm9yIGl0IHRvIHRlcm1pbmF0ZS4KLSAgICAgICAgc2VsZi5yb290X2xvZ2dlci5jcml0aWNhbChMb2dSZWNvcmRTdHJlYW1IYW5kbGVyLlRDUF9MT0dfRU5EKQotICAgICAgICBzZWxmLnRjcHNlcnZlci5maW5pc2hlZC53YWl0KDIuMCkKLSAgICAgICAgcmV0dXJuIHNlbGYudGNwc2VydmVyLmxvZ19vdXRwdXQKKyAgICBkZWYgaGFuZGxlX3NvY2tldChzZWxmLCByZXF1ZXN0KToKKyAgICAgICAgY29ubiA9IHJlcXVlc3QuY29ubmVjdGlvbgorICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgY2h1bmsgPSBjb25uLnJlY3YoNCkKKyAgICAgICAgICAgIGlmIGxlbihjaHVuaykgPCA0OgorICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICBzbGVuID0gc3RydWN0LnVucGFjaygiPkwiLCBjaHVuaylbMF0KKyAgICAgICAgICAgIGNodW5rID0gY29ubi5yZWN2KHNsZW4pCisgICAgICAgICAgICB3aGlsZSBsZW4oY2h1bmspIDwgc2xlbjoKKyAgICAgICAgICAgICAgICBjaHVuayA9IGNodW5rICsgY29ubi5yZWN2KHNsZW4gLSBsZW4oY2h1bmspKQorICAgICAgICAgICAgb2JqID0gcGlja2xlLmxvYWRzKGNodW5rKQorICAgICAgICAgICAgcmVjb3JkID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKG9iaikKKyAgICAgICAgICAgIHNlbGYubG9nX291dHB1dCArPSByZWNvcmQubXNnICsgJ1xuJworICAgICAgICAgICAgc2VsZi5oYW5kbGVkLnJlbGVhc2UoKQogCiAgICAgZGVmIHRlc3Rfb3V0cHV0KHNlbGYpOgogICAgICAgICAjIFRoZSBsb2cgbWVzc2FnZSBzZW50IHRvIHRoZSBTb2NrZXRIYW5kbGVyIGlzIHByb3Blcmx5IHJlY2VpdmVkLgogICAgICAgICBsb2dnZXIgPSBsb2dnaW5nLmdldExvZ2dlcigidGNwIikKICAgICAgICAgbG9nZ2VyLmVycm9yKCJzcGFtIikKKyAgICAgICAgc2VsZi5oYW5kbGVkLmFjcXVpcmUoKQogICAgICAgICBsb2dnZXIuZGVidWcoImVnZ3MiKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZ2V0X291dHB1dCgpLCAic3BhbVxuZWdnc1xuIikKKyAgICAgICAgc2VsZi5oYW5kbGVkLmFjcXVpcmUoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYubG9nX291dHB1dCwgInNwYW1cbmVnZ3NcbiIpCiAKKyAgICBkZWYgdGVzdF9ub3NlcnZlcihzZWxmKToKKyAgICAgICAgIyBLaWxsIHRoZSBzZXJ2ZXIKKyAgICAgICAgc2VsZi5zZXJ2ZXIuc3RvcCgyLjApCisgICAgICAgICNUaGUgbG9nZ2luZyBjYWxsIHNob3VsZCB0cnkgdG8gY29ubmVjdCwgd2hpY2ggc2hvdWxkIGZhaWwKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCdEZWxpYmVyYXRlIG1pc3Rha2UnKQorICAgICAgICBleGNlcHQgUnVudGltZUVycm9yOgorICAgICAgICAgICAgc2VsZi5yb290X2xvZ2dlci5leGNlcHRpb24oJ05ldmVyIHNlbnQnKQorICAgICAgICBzZWxmLnJvb3RfbG9nZ2VyLmVycm9yKCdOZXZlciBzZW50LCBlaXRoZXInKQorICAgICAgICBub3cgPSB0aW1lLnRpbWUoKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5zb2NrX2hkbHIucmV0cnlUaW1lID4gbm93KQorICAgICAgICB0aW1lLnNsZWVwKHNlbGYuc29ja19oZGxyLnJldHJ5VGltZSAtIG5vdyArIDAuMDAxKQorICAgICAgICBzZWxmLnJvb3RfbG9nZ2VyLmVycm9yKCdOb3IgdGhpcycpCisKKworQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkaW5nLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIERhdGFncmFtSGFuZGxlclRlc3QoQmFzZVRlc3QpOgorCisgICAgIiIiVGVzdCBmb3IgRGF0YWdyYW1IYW5kbGVyLiIiIgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICAiIiJTZXQgdXAgYSBVRFAgc2VydmVyIHRvIHJlY2VpdmUgbG9nIG1lc3NhZ2VzLCBhbmQgYSBEYXRhZ3JhbUhhbmRsZXIKKyAgICAgICAgcG9pbnRpbmcgdG8gdGhhdCBzZXJ2ZXIncyBhZGRyZXNzIGFuZCBwb3J0LiIiIgorICAgICAgICBCYXNlVGVzdC5zZXRVcChzZWxmKQorICAgICAgICBhZGRyID0gKCdsb2NhbGhvc3QnLCAwKQorICAgICAgICBzZWxmLnNlcnZlciA9IHNlcnZlciA9IFRlc3RVRFBTZXJ2ZXIoYWRkciwgc2VsZi5oYW5kbGVfZGF0YWdyYW0sIDAuMDEpCisgICAgICAgIHNlcnZlci5zdGFydCgpCisgICAgICAgIHNlcnZlci5yZWFkeS53YWl0KCkKKyAgICAgICAgc2VsZi5zb2NrX2hkbHIgPSBsb2dnaW5nLmhhbmRsZXJzLkRhdGFncmFtSGFuZGxlcignbG9jYWxob3N0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXJ2ZXIucG9ydCkKKyAgICAgICAgc2VsZi5sb2dfb3V0cHV0ID0gJycKKyAgICAgICAgc2VsZi5yb290X2xvZ2dlci5yZW1vdmVIYW5kbGVyKHNlbGYucm9vdF9sb2dnZXIuaGFuZGxlcnNbMF0pCisgICAgICAgIHNlbGYucm9vdF9sb2dnZXIuYWRkSGFuZGxlcihzZWxmLnNvY2tfaGRscikKKyAgICAgICAgc2VsZi5oYW5kbGVkID0gdGhyZWFkaW5nLkV2ZW50KCkKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgIiIiU2h1dGRvd24gdGhlIFVEUCBzZXJ2ZXIuIiIiCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuc2VydmVyLnN0b3AoMi4wKQorICAgICAgICAgICAgc2VsZi5yb290X2xvZ2dlci5yZW1vdmVIYW5kbGVyKHNlbGYuc29ja19oZGxyKQorICAgICAgICAgICAgc2VsZi5zb2NrX2hkbHIuY2xvc2UoKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgQmFzZVRlc3QudGVhckRvd24oc2VsZikKKworICAgIGRlZiBoYW5kbGVfZGF0YWdyYW0oc2VsZiwgcmVxdWVzdCk6CisgICAgICAgIHNsZW4gPSBzdHJ1Y3QucGFjaygnPkwnLCAwKSAjIGxlbmd0aCBvZiBwcmVmaXgKKyAgICAgICAgcGFja2V0ID0gcmVxdWVzdC5wYWNrZXRbbGVuKHNsZW4pOl0KKyAgICAgICAgb2JqID0gcGlja2xlLmxvYWRzKHBhY2tldCkKKyAgICAgICAgcmVjb3JkID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKG9iaikKKyAgICAgICAgc2VsZi5sb2dfb3V0cHV0ICs9IHJlY29yZC5tc2cgKyAnXG4nCisgICAgICAgIHNlbGYuaGFuZGxlZC5zZXQoKQorCisgICAgZGVmIHRlc3Rfb3V0cHV0KHNlbGYpOgorICAgICAgICAjIFRoZSBsb2cgbWVzc2FnZSBzZW50IHRvIHRoZSBEYXRhZ3JhbUhhbmRsZXIgaXMgcHJvcGVybHkgcmVjZWl2ZWQuCisgICAgICAgIGxvZ2dlciA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKCJ1ZHAiKQorICAgICAgICBsb2dnZXIuZXJyb3IoInNwYW0iKQorICAgICAgICBzZWxmLmhhbmRsZWQud2FpdCgpCisgICAgICAgIHNlbGYuaGFuZGxlZC5jbGVhcigpCisgICAgICAgIGxvZ2dlci5lcnJvcigiZWdncyIpCisgICAgICAgIHNlbGYuaGFuZGxlZC53YWl0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmxvZ19vdXRwdXQsICJzcGFtXG5lZ2dzXG4iKQorCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZGluZywgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBTeXNMb2dIYW5kbGVyVGVzdChCYXNlVGVzdCk6CisKKyAgICAiIiJUZXN0IGZvciBTeXNMb2dIYW5kbGVyIHVzaW5nIFVEUC4iIiIKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgIiIiU2V0IHVwIGEgVURQIHNlcnZlciB0byByZWNlaXZlIGxvZyBtZXNzYWdlcywgYW5kIGEgU3lzTG9nSGFuZGxlcgorICAgICAgICBwb2ludGluZyB0byB0aGF0IHNlcnZlcidzIGFkZHJlc3MgYW5kIHBvcnQuIiIiCisgICAgICAgIEJhc2VUZXN0LnNldFVwKHNlbGYpCisgICAgICAgIGFkZHIgPSAoJ2xvY2FsaG9zdCcsIDApCisgICAgICAgIHNlbGYuc2VydmVyID0gc2VydmVyID0gVGVzdFVEUFNlcnZlcihhZGRyLCBzZWxmLmhhbmRsZV9kYXRhZ3JhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAuMDEpCisgICAgICAgIHNlcnZlci5zdGFydCgpCisgICAgICAgIHNlcnZlci5yZWFkeS53YWl0KCkKKyAgICAgICAgc2VsZi5zbF9oZGxyID0gbG9nZ2luZy5oYW5kbGVycy5TeXNMb2dIYW5kbGVyKCgnbG9jYWxob3N0JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXJ2ZXIucG9ydCkpCisgICAgICAgIHNlbGYubG9nX291dHB1dCA9ICcnCisgICAgICAgIHNlbGYucm9vdF9sb2dnZXIucmVtb3ZlSGFuZGxlcihzZWxmLnJvb3RfbG9nZ2VyLmhhbmRsZXJzWzBdKQorICAgICAgICBzZWxmLnJvb3RfbG9nZ2VyLmFkZEhhbmRsZXIoc2VsZi5zbF9oZGxyKQorICAgICAgICBzZWxmLmhhbmRsZWQgPSB0aHJlYWRpbmcuRXZlbnQoKQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICAiIiJTaHV0ZG93biB0aGUgVURQIHNlcnZlci4iIiIKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5zZXJ2ZXIuc3RvcCgyLjApCisgICAgICAgICAgICBzZWxmLnJvb3RfbG9nZ2VyLnJlbW92ZUhhbmRsZXIoc2VsZi5zbF9oZGxyKQorICAgICAgICAgICAgc2VsZi5zbF9oZGxyLmNsb3NlKCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIEJhc2VUZXN0LnRlYXJEb3duKHNlbGYpCisKKyAgICBkZWYgaGFuZGxlX2RhdGFncmFtKHNlbGYsIHJlcXVlc3QpOgorICAgICAgICBzZWxmLmxvZ19vdXRwdXQgPSByZXF1ZXN0LnBhY2tldAorICAgICAgICBzZWxmLmhhbmRsZWQuc2V0KCkKKworICAgIGRlZiB0ZXN0X291dHB1dChzZWxmKToKKyAgICAgICAgIyBUaGUgbG9nIG1lc3NhZ2Ugc2VudCB0byB0aGUgU3lzTG9nSGFuZGxlciBpcyBwcm9wZXJseSByZWNlaXZlZC4KKyAgICAgICAgbG9nZ2VyID0gbG9nZ2luZy5nZXRMb2dnZXIoInNsaCIpCisgICAgICAgIGxvZ2dlci5lcnJvcigic3BceGU0bSIpCisgICAgICAgIHNlbGYuaGFuZGxlZC53YWl0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmxvZ19vdXRwdXQsIGInPDExPlx4ZWZceGJiXHhiZnNwXHhjM1x4YTRtXHgwMCcpCisgICAgICAgIHNlbGYuaGFuZGxlZC5jbGVhcigpCisgICAgICAgIHNlbGYuc2xfaGRsci5hcHBlbmRfbnVsID0gRmFsc2UKKyAgICAgICAgbG9nZ2VyLmVycm9yKCJzcFx4ZTRtIikKKyAgICAgICAgc2VsZi5oYW5kbGVkLndhaXQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYubG9nX291dHB1dCwgYic8MTE+XHhlZlx4YmJceGJmc3BceGMzXHhhNG0nKQorICAgICAgICBzZWxmLmhhbmRsZWQuY2xlYXIoKQorICAgICAgICBzZWxmLnNsX2hkbHIuaWRlbnQgPSAiaFx4ZTRtLSIKKyAgICAgICAgbG9nZ2VyLmVycm9yKCJzcFx4ZTRtIikKKyAgICAgICAgc2VsZi5oYW5kbGVkLndhaXQoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYubG9nX291dHB1dCwgYic8MTE+XHhlZlx4YmJceGJmaFx4YzNceGE0bS1zcFx4YzNceGE0bScpCisKKworQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkaW5nLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIEhUVFBIYW5kbGVyVGVzdChCYXNlVGVzdCk6CisgICAgIiIiVGVzdCBmb3IgSFRUUEhhbmRsZXIuIiIiCisKKyAgICBQRU1GSUxFID0gIiIiLS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQorTUlJQ1hRSUJBQUtCZ1FER1Q0eFM1cjkxcmJMSlFLMm5VRGVuQmhCRzZxRmsrYlZPanVBR0MvTFNIbEFvQm52RworelFHM2FnT0crZTdjNXoyWFQ4bTJrdE9STHFHM0U0bVltYnhneWhEcnpQNmVpMkFuYytwc3ptbnhQb0szUHVoNQorYVhWK1hLdDBiVTBDMW0yK0FDbUdHSjB0M1A0MDhhcnQ4Mm5PeEJ3OFpIZ0lnOUR0cDZ4SVVDeU9xd0lEQVFBQgorQW9HQkFKRlRuRmJvYUtoNWVVckl6am1OcktzRzQ0akV5eSt2V3ZITi9GZ1NDNGwxMDNIeGhtV2l1TDVMdjNmNworMHRNcDF0WDdENnh2SHdJRzlWV3Z5S2IvQ3E5ckpzRGlibURWSU9zbG5PV2VRaEcrWHdKeWl0UjBwcS9LbEpJQgorNUxqT1JjQnc3OTVvS1dPQWk2UmNPYjFPTjU5dHlzRUZZaEFHUU85azZWTDYyMWdSQWtFQS9HYitZWFVMTHBicworcGlYTjNxNHpjSHplYVZBTm82OXRVWjZUamFRcU1lVHhFNHRPWU0wRzBab1NlSEVkYVA1OUFPWkdLWFhOR1NReQorMnovTWRkY1lHUUpCQU1rakxTWUlwT0xKWTExamE4T3d3c3dGRzJoRXpIZTBjUzliem8rK1IvamMxYkhBNVIwWQoraTZ2QTVpUGkrd29wUEZ2cHl0ZEJvbDdVdUVCZTV4WnJ4V01DUVFDV3hFTFJIaVAyeVdwRWVMSjNnR0R6b1hNTgorUHlkV2poUmp1N0J4M0F6a1R0ZitENmxhd3oxK2VHVHVFc3M1aTBKS0JrTUV3dnduTjJzMWNlK0V1RjRKQWtCYgorRTk2aDFsQXprVlc1T0FmWU9QWThSQ1BBOTBaTy9ob3lnN1BwU3hSMEVDdURyZ0VSUjhnWEllWVVZZmVqQmtFYQorcmFiNENmUm9WSktLTTI4WXEveFpBa0J2dXE2NzBKUkN3T2dmVVRkd3c3V3BkT1FCWVBrelFjY3NLTkNzbFFXOAorL0R5VzZ5MDZvUXVzU0VOVXZ5blQ2ZHIzTEp4dC9OZ1pQaFpYMitrMWVZRFYKKy0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCistLS0tLUJFR0lOIENFUlRJRklDQVRFLS0tLS0KK01JSUNHekNDQVlTZ0F3SUJBZ0lKQUlxODRhMlEvT3ZsTUEwR0NTcUdTSWIzRFFFQkJRVUFNQlF4RWpBUUJnTlYKK0JBTVRDV3h2WTJGc2FHOXpkREFlRncweE1UQTFNakV4TURJek16TmFGdzAzTlRBek1qRXdNelUxTVRkYU1CUXgKK0VqQVFCZ05WQkFNVENXeHZZMkZzYUc5emREQ0JuekFOQmdrcWhraUc5dzBCQVFFRkFBT0JqUUF3Z1lrQ2dZRUEKK3hrK01VdWEvZGEyeXlVQ3RwMUEzcHdZUVJ1cWhaUG0xVG83Z0JndnkwaDVRS0FaN3hzMEJ0Mm9EaHZudTNPYzkKK2wwL0p0cExUa1M2aHR4T0ptSm04WU1vUTY4eitub3RnSjNQcWJNNXA4VDZDdHo3b2VXbDFmbHlyZEcxTkF0WnQKK3ZnQXBoaGlkTGR6K05QR3E3Zk5wenNRY1BHUjRDSVBRN2Flc1NGQXNqcXNDQXdFQUFhTjFNSE13SFFZRFZSME8KK0JCWUVGTFdhVVBPNk43ZWZHaXVvUzlpM0RWWWNVd24wTUVRR0ExVWRJd1E5TUR1QUZMV2FVUE82TjdlZkdpdW8KK1M5aTNEVlljVXduMG9SaWtGakFVTVJJd0VBWURWUVFERXdsc2IyTmhiR2h2YzNTQ0NRQ0t2T0d0a1B6cjVUQU0KK0JnTlZIUk1FQlRBREFRSC9NQTBHQ1NxR1NJYjNEUUVCQlFVQUE0R0JBTUs1d2hQakxOUUsxSXZ2azg4b3FKcXEKKzRmODg5T3dpa0dQMGVVaE9CaGJGbHNacytqcTVZWkMyVXpIeitldnpLQmxnQVAxdTRsUC9jQjg1Q25qdldxTSsKKzFjL2x5d0ZIUTZIT2REZVExTDcydFNZTXJOT0c0WE5tTG4waDdyeDZHb1RVN2RjRlJmc2VhaEJDcThtdjBJRHQKK0lSYlRwdmxIV1Bqc1N2SHowWk9ICistLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgICIiIlNldCB1cCBhbiBIVFRQIHNlcnZlciB0byByZWNlaXZlIGxvZyBtZXNzYWdlcywgYW5kIGEgSFRUUEhhbmRsZXIKKyAgICAgICAgcG9pbnRpbmcgdG8gdGhhdCBzZXJ2ZXIncyBhZGRyZXNzIGFuZCBwb3J0LiIiIgorICAgICAgICBCYXNlVGVzdC5zZXRVcChzZWxmKQorICAgICAgICBzZWxmLmhhbmRsZWQgPSB0aHJlYWRpbmcuRXZlbnQoKQorCisgICAgZGVmIGhhbmRsZV9yZXF1ZXN0KHNlbGYsIHJlcXVlc3QpOgorICAgICAgICBzZWxmLmNvbW1hbmQgPSByZXF1ZXN0LmNvbW1hbmQKKyAgICAgICAgc2VsZi5sb2dfZGF0YSA9IHVybHBhcnNlKHJlcXVlc3QucGF0aCkKKyAgICAgICAgaWYgc2VsZi5jb21tYW5kID09ICdQT1NUJzoKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBybGVuID0gaW50KHJlcXVlc3QuaGVhZGVyc1snQ29udGVudC1MZW5ndGgnXSkKKyAgICAgICAgICAgICAgICBzZWxmLnBvc3RfZGF0YSA9IHJlcXVlc3QucmZpbGUucmVhZChybGVuKQorICAgICAgICAgICAgZXhjZXB0OgorICAgICAgICAgICAgICAgIHNlbGYucG9zdF9kYXRhID0gTm9uZQorICAgICAgICByZXF1ZXN0LnNlbmRfcmVzcG9uc2UoMjAwKQorICAgICAgICByZXF1ZXN0LmVuZF9oZWFkZXJzKCkKKyAgICAgICAgc2VsZi5oYW5kbGVkLnNldCgpCisKKyAgICBkZWYgdGVzdF9vdXRwdXQoc2VsZik6CisgICAgICAgICMgVGhlIGxvZyBtZXNzYWdlIHNlbnQgdG8gdGhlIEhUVFBIYW5kbGVyIGlzIHByb3Blcmx5IHJlY2VpdmVkLgorICAgICAgICBsb2dnZXIgPSBsb2dnaW5nLmdldExvZ2dlcigiaHR0cCIpCisgICAgICAgIHJvb3RfbG9nZ2VyID0gc2VsZi5yb290X2xvZ2dlcgorICAgICAgICByb290X2xvZ2dlci5yZW1vdmVIYW5kbGVyKHNlbGYucm9vdF9sb2dnZXIuaGFuZGxlcnNbMF0pCisgICAgICAgIGZvciBzZWN1cmUgaW4gKEZhbHNlLCBUcnVlKToKKyAgICAgICAgICAgIGFkZHIgPSAoJ2xvY2FsaG9zdCcsIDApCisgICAgICAgICAgICBpZiBzZWN1cmU6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBpbXBvcnQgc3NsCisgICAgICAgICAgICAgICAgICAgIGZkLCBmbiA9IHRlbXBmaWxlLm1rc3RlbXAoKQorICAgICAgICAgICAgICAgICAgICBvcy5jbG9zZShmZCkKKyAgICAgICAgICAgICAgICAgICAgd2l0aCBvcGVuKGZuLCAndycpIGFzIGY6CisgICAgICAgICAgICAgICAgICAgICAgICBmLndyaXRlKHNlbGYuUEVNRklMRSkKKyAgICAgICAgICAgICAgICAgICAgc3NsY3R4ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1NTTHYyMykKKyAgICAgICAgICAgICAgICAgICAgc3NsY3R4LmxvYWRfY2VydF9jaGFpbihmbikKKyAgICAgICAgICAgICAgICAgICAgb3MudW5saW5rKGZuKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgc3NsY3R4ID0gTm9uZQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzc2xjdHggPSBOb25lCisgICAgICAgICAgICBzZWxmLnNlcnZlciA9IHNlcnZlciA9IFRlc3RIVFRQU2VydmVyKGFkZHIsIHNlbGYuaGFuZGxlX3JlcXVlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMC4wMSwgc3NsY3R4PXNzbGN0eCkKKyAgICAgICAgICAgIHNlcnZlci5zdGFydCgpCisgICAgICAgICAgICBzZXJ2ZXIucmVhZHkud2FpdCgpCisgICAgICAgICAgICBob3N0ID0gJ2xvY2FsaG9zdDolZCcgJSBzZXJ2ZXIuc2VydmVyX3BvcnQKKyAgICAgICAgICAgIHNlY3VyZV9jbGllbnQgPSBzZWN1cmUgYW5kIHNzbGN0eAorICAgICAgICAgICAgc2VsZi5oX2hkbHIgPSBsb2dnaW5nLmhhbmRsZXJzLkhUVFBIYW5kbGVyKGhvc3QsICcvZnJvYicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VjdXJlPXNlY3VyZV9jbGllbnQpCisgICAgICAgICAgICBzZWxmLmxvZ19kYXRhID0gTm9uZQorICAgICAgICAgICAgcm9vdF9sb2dnZXIuYWRkSGFuZGxlcihzZWxmLmhfaGRscikKKworICAgICAgICAgICAgZm9yIG1ldGhvZCBpbiAoJ0dFVCcsICdQT1NUJyk6CisgICAgICAgICAgICAgICAgc2VsZi5oX2hkbHIubWV0aG9kID0gbWV0aG9kCisgICAgICAgICAgICAgICAgc2VsZi5oYW5kbGVkLmNsZWFyKCkKKyAgICAgICAgICAgICAgICBtc2cgPSAic3BceGU0bSIKKyAgICAgICAgICAgICAgICBsb2dnZXIuZXJyb3IobXNnKQorICAgICAgICAgICAgICAgIHNlbGYuaGFuZGxlZC53YWl0KCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYubG9nX2RhdGEucGF0aCwgJy9mcm9iJykKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY29tbWFuZCwgbWV0aG9kKQorICAgICAgICAgICAgICAgIGlmIG1ldGhvZCA9PSAnR0VUJzoKKyAgICAgICAgICAgICAgICAgICAgZCA9IHBhcnNlX3FzKHNlbGYubG9nX2RhdGEucXVlcnkpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgZCA9IHBhcnNlX3FzKHNlbGYucG9zdF9kYXRhLmRlY29kZSgndXRmLTgnKSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRbJ25hbWUnXSwgWydodHRwJ10pCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkWydmdW5jTmFtZSddLCBbJ3Rlc3Rfb3V0cHV0J10pCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkWydtc2cnXSwgW21zZ10pCisKKyAgICAgICAgICAgIHNlbGYuc2VydmVyLnN0b3AoMi4wKQorICAgICAgICAgICAgc2VsZi5yb290X2xvZ2dlci5yZW1vdmVIYW5kbGVyKHNlbGYuaF9oZGxyKQorICAgICAgICAgICAgc2VsZi5oX2hkbHIuY2xvc2UoKQogCiBjbGFzcyBNZW1vcnlUZXN0KEJhc2VUZXN0KToKIApAQCAtMTA4NSwyOCArMTcwMCwzOSBAQAogICAgIGRlZiB0ZXN0X3dhcm5pbmdzKHNlbGYpOgogICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CiAgICAgICAgICAgICBsb2dnaW5nLmNhcHR1cmVXYXJuaW5ncyhUcnVlKQotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIHdhcm5pbmdzLmZpbHRlcndhcm5pbmdzKCJhbHdheXMiLCBjYXRlZ29yeT1Vc2VyV2FybmluZykKLSAgICAgICAgICAgICAgICBmaWxlID0gaW8uU3RyaW5nSU8oKQotICAgICAgICAgICAgICAgIGggPSBsb2dnaW5nLlN0cmVhbUhhbmRsZXIoZmlsZSkKLSAgICAgICAgICAgICAgICBsb2dnZXIgPSBsb2dnaW5nLmdldExvZ2dlcigicHkud2FybmluZ3MiKQotICAgICAgICAgICAgICAgIGxvZ2dlci5hZGRIYW5kbGVyKGgpCi0gICAgICAgICAgICAgICAgd2FybmluZ3Mud2FybigiSSdtIHdhcm5pbmcgeW91Li4uIikKLSAgICAgICAgICAgICAgICBsb2dnZXIucmVtb3ZlSGFuZGxlcihoKQotICAgICAgICAgICAgICAgIHMgPSBmaWxlLmdldHZhbHVlKCkKLSAgICAgICAgICAgICAgICBoLmNsb3NlKCkKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUocy5maW5kKCJVc2VyV2FybmluZzogSSdtIHdhcm5pbmcgeW91Li4uXG4iKSA+IDApCisgICAgICAgICAgICBzZWxmLmFkZENsZWFudXAobG9nZ2luZy5jYXB0dXJlV2FybmluZ3MsIEZhbHNlKQorICAgICAgICAgICAgd2FybmluZ3MuZmlsdGVyd2FybmluZ3MoImFsd2F5cyIsIGNhdGVnb3J5PVVzZXJXYXJuaW5nKQorICAgICAgICAgICAgc3RyZWFtID0gaW8uU3RyaW5nSU8oKQorICAgICAgICAgICAgaCA9IGxvZ2dpbmcuU3RyZWFtSGFuZGxlcihzdHJlYW0pCisgICAgICAgICAgICBsb2dnZXIgPSBsb2dnaW5nLmdldExvZ2dlcigicHkud2FybmluZ3MiKQorICAgICAgICAgICAgbG9nZ2VyLmFkZEhhbmRsZXIoaCkKKyAgICAgICAgICAgIHdhcm5pbmdzLndhcm4oIkknbSB3YXJuaW5nIHlvdS4uLiIpCisgICAgICAgICAgICBsb2dnZXIucmVtb3ZlSGFuZGxlcihoKQorICAgICAgICAgICAgcyA9IHN0cmVhbS5nZXR2YWx1ZSgpCisgICAgICAgICAgICBoLmNsb3NlKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzLmZpbmQoIlVzZXJXYXJuaW5nOiBJJ20gd2FybmluZyB5b3UuLi5cbiIpID4gMCkKIAotICAgICAgICAgICAgICAgICNTZWUgaWYgYW4gZXhwbGljaXQgZmlsZSB1c2VzIHRoZSBvcmlnaW5hbCBpbXBsZW1lbnRhdGlvbgotICAgICAgICAgICAgICAgIGZpbGUgPSBpby5TdHJpbmdJTygpCi0gICAgICAgICAgICAgICAgd2FybmluZ3Muc2hvd3dhcm5pbmcoIkV4cGxpY2l0IiwgVXNlcldhcm5pbmcsICJkdW1teS5weSIsIDQyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGUsICJEdW1teSBsaW5lIikKLSAgICAgICAgICAgICAgICBzID0gZmlsZS5nZXR2YWx1ZSgpCi0gICAgICAgICAgICAgICAgZmlsZS5jbG9zZSgpCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLAotICAgICAgICAgICAgICAgICAgICAgICAgImR1bW15LnB5OjQyOiBVc2VyV2FybmluZzogRXhwbGljaXRcbiAgRHVtbXkgbGluZVxuIikKLSAgICAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICAgICAgbG9nZ2luZy5jYXB0dXJlV2FybmluZ3MoRmFsc2UpCisgICAgICAgICAgICAjU2VlIGlmIGFuIGV4cGxpY2l0IGZpbGUgdXNlcyB0aGUgb3JpZ2luYWwgaW1wbGVtZW50YXRpb24KKyAgICAgICAgICAgIGFfZmlsZSA9IGlvLlN0cmluZ0lPKCkKKyAgICAgICAgICAgIHdhcm5pbmdzLnNob3d3YXJuaW5nKCJFeHBsaWNpdCIsIFVzZXJXYXJuaW5nLCAiZHVtbXkucHkiLCA0MiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFfZmlsZSwgIkR1bW15IGxpbmUiKQorICAgICAgICAgICAgcyA9IGFfZmlsZS5nZXR2YWx1ZSgpCisgICAgICAgICAgICBhX2ZpbGUuY2xvc2UoKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLAorICAgICAgICAgICAgICAgICJkdW1teS5weTo0MjogVXNlcldhcm5pbmc6IEV4cGxpY2l0XG4gIER1bW15IGxpbmVcbiIpCisKKyAgICBkZWYgdGVzdF93YXJuaW5nc19ub19oYW5kbGVycyhzZWxmKToKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgbG9nZ2luZy5jYXB0dXJlV2FybmluZ3MoVHJ1ZSkKKyAgICAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChsb2dnaW5nLmNhcHR1cmVXYXJuaW5ncywgRmFsc2UpCisKKyAgICAgICAgICAgICMgY29uZmlybSBvdXIgYXNzdW1wdGlvbjogbm8gbG9nZ2VycyBhcmUgc2V0CisgICAgICAgICAgICBsb2dnZXIgPSBsb2dnaW5nLmdldExvZ2dlcigicHkud2FybmluZ3MiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsb2dnZXIuaGFuZGxlcnMsIFtdKQorCisgICAgICAgICAgICB3YXJuaW5ncy5zaG93d2FybmluZygiRXhwbGljaXQiLCBVc2VyV2FybmluZywgImR1bW15LnB5IiwgNDIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihsb2dnZXIuaGFuZGxlcnMpLCAxKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGxvZ2dlci5oYW5kbGVyc1swXSwgbG9nZ2luZy5OdWxsSGFuZGxlcikKIAogCiBkZWYgZm9ybWF0RnVuYyhmb3JtYXQsIGRhdGVmbXQ9Tm9uZSk6CkBAIC0xOTU5LDYgKzI1ODUsNyBAQAogICAgICAgICAgICAgbG9nZ2luZy5jb25maWcuc3RvcExpc3RlbmluZygpCiAgICAgICAgICAgICB0LmpvaW4oMi4wKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkaW5nLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKICAgICBkZWYgdGVzdF9saXN0ZW5fY29uZmlnXzEwX29rKHNlbGYpOgogICAgICAgICB3aXRoIGNhcHR1cmVkX3N0ZG91dCgpIGFzIG91dHB1dDoKICAgICAgICAgICAgIHNlbGYuc2V0dXBfdmlhX2xpc3RlbmVyKGpzb24uZHVtcHMoc2VsZi5jb25maWcxMCkpCkBAIC0xOTc4LDYgKzI2MDUsNyBAQAogICAgICAgICAgICAgICAgICgnRVJST1InLCAnNCcpLAogICAgICAgICAgICAgXSwgc3RyZWFtPW91dHB1dCkKIAorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZGluZywgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCiAgICAgZGVmIHRlc3RfbGlzdGVuX2NvbmZpZ18xX29rKHNlbGYpOgogICAgICAgICB3aXRoIGNhcHR1cmVkX3N0ZG91dCgpIGFzIG91dHB1dDoKICAgICAgICAgICAgIHNlbGYuc2V0dXBfdmlhX2xpc3RlbmVyKHRleHR3cmFwLmRlZGVudChDb25maWdGaWxlVGVzdC5jb25maWcxKSkKQEAgLTE5OTIsNiArMjYyMCwyNyBAQAogICAgICAgICAgICAgIyBPcmlnaW5hbCBsb2dnZXIgb3V0cHV0IGlzIGVtcHR5LgogICAgICAgICAgICAgc2VsZi5hc3NlcnRfbG9nX2xpbmVzKFtdKQogCisgICAgZGVmIHRlc3RfYmFzZWNvbmZpZyhzZWxmKToKKyAgICAgICAgZCA9IHsKKyAgICAgICAgICAgICdhdHVwbGUnOiAoMSwgMiwgMyksCisgICAgICAgICAgICAnYWxpc3QnOiBbJ2EnLCAnYicsICdjJ10sCisgICAgICAgICAgICAnYWRpY3QnOiB7J2QnOiAnZScsICdmJzogMyB9LAorICAgICAgICAgICAgJ25lc3QxJzogKCdnJywgKCdoJywgJ2knKSwgJ2onKSwKKyAgICAgICAgICAgICduZXN0Mic6IFsnaycsIFsnbCcsICdtJ10sICduJ10sCisgICAgICAgICAgICAnbmVzdDMnOiBbJ28nLCAnY2ZnOi8vYWxpc3QnLCAncCddLAorICAgICAgICB9CisgICAgICAgIGJjID0gbG9nZ2luZy5jb25maWcuQmFzZUNvbmZpZ3VyYXRvcihkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJjLmNvbnZlcnQoJ2NmZzovL2F0dXBsZVsxXScpLCAyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJjLmNvbnZlcnQoJ2NmZzovL2FsaXN0WzFdJyksICdiJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiYy5jb252ZXJ0KCdjZmc6Ly9uZXN0MVsxXVswXScpLCAnaCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYmMuY29udmVydCgnY2ZnOi8vbmVzdDJbMV1bMV0nKSwgJ20nKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJjLmNvbnZlcnQoJ2NmZzovL2FkaWN0LmQnKSwgJ2UnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJjLmNvbnZlcnQoJ2NmZzovL2FkaWN0W2ZdJyksIDMpCisgICAgICAgIHYgPSBiYy5jb252ZXJ0KCdjZmc6Ly9uZXN0MycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodi5wb3AoMSksIFsnYScsICdiJywgJ2MnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoS2V5RXJyb3IsIGJjLmNvbnZlcnQsICdjZmc6Ly9ub3N1Y2gnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBiYy5jb252ZXJ0LCAnY2ZnOi8vIScpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEtleUVycm9yLCBiYy5jb252ZXJ0LCAnY2ZnOi8vYWRpY3RbMl0nKQogCiBjbGFzcyBNYW5hZ2VyVGVzdChCYXNlVGVzdCk6CiAgICAgZGVmIHRlc3RfbWFuYWdlcl9sb2dnZXJjbGFzcyhzZWxmKToKQEAgLTIwMTAsNiArMjY1OSwxMSBAQAogCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobG9nZ2VkLCBbJ3Nob3VsZCBhcHBlYXIgaW4gbG9nZ2VkJ10pCiAKKyAgICBkZWYgdGVzdF9zZXRfbG9nX3JlY29yZF9mYWN0b3J5KHNlbGYpOgorICAgICAgICBtYW4gPSBsb2dnaW5nLk1hbmFnZXIoTm9uZSkKKyAgICAgICAgZXhwZWN0ZWQgPSBvYmplY3QoKQorICAgICAgICBtYW4uc2V0TG9nUmVjb3JkRmFjdG9yeShleHBlY3RlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYW4ubG9nUmVjb3JkRmFjdG9yeSwgZXhwZWN0ZWQpCiAKIGNsYXNzIENoaWxkTG9nZ2VyVGVzdChCYXNlVGVzdCk6CiAgICAgZGVmIHRlc3RfY2hpbGRfbG9nZ2VycyhzZWxmKToKQEAgLTIxMTEsNiArMjc2NSwxOCBAQAogICAgICAgICBzZWxmLmFzc2VydFRydWUoaGFuZGxlci5tYXRjaGVzKGxldmVsbm89bG9nZ2luZy5FUlJPUiwgbWVzc2FnZT0nMicpKQogICAgICAgICBzZWxmLmFzc2VydFRydWUoaGFuZGxlci5tYXRjaGVzKGxldmVsbm89bG9nZ2luZy5DUklUSUNBTCwgbWVzc2FnZT0nMycpKQogCitaRVJPID0gZGF0ZXRpbWUudGltZWRlbHRhKDApCisKK2NsYXNzIFVUQyhkYXRldGltZS50emluZm8pOgorICAgIGRlZiB1dGNvZmZzZXQoc2VsZiwgZHQpOgorICAgICAgICByZXR1cm4gWkVSTworCisgICAgZHN0ID0gdXRjb2Zmc2V0CisKKyAgICBkZWYgdHpuYW1lKHNlbGYsIGR0KToKKyAgICAgICAgcmV0dXJuICdVVEMnCisKK3V0YyA9IFVUQygpCiAKIGNsYXNzIEZvcm1hdHRlclRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiBzZXRVcChzZWxmKToKQEAgLTIxODQsNiArMjg1MCw2OSBAQAogICAgICAgICBmID0gbG9nZ2luZy5Gb3JtYXR0ZXIoJ2FzY3RpbWUnLCBzdHlsZT0nJCcpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZi51c2VzVGltZSgpKQogCisgICAgZGVmIHRlc3RfaW52YWxpZF9zdHlsZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbG9nZ2luZy5Gb3JtYXR0ZXIsIE5vbmUsIE5vbmUsICd4JykKKworICAgIGRlZiB0ZXN0X3RpbWUoc2VsZik6CisgICAgICAgIHIgPSBzZWxmLmdldF9yZWNvcmQoKQorICAgICAgICBkdCA9IGRhdGV0aW1lLmRhdGV0aW1lKDE5OTMsNCwyMSw4LDMsMCwwLHV0YykKKyAgICAgICAgci5jcmVhdGVkID0gdGltZS5ta3RpbWUoZHQudGltZXR1cGxlKCkpIC0gdGltZS50aW1lem9uZQorICAgICAgICByLm1zZWNzID0gMTIzCisgICAgICAgIGYgPSBsb2dnaW5nLkZvcm1hdHRlcignJShhc2N0aW1lKXMgJShtZXNzYWdlKXMnKQorICAgICAgICBmLmNvbnZlcnRlciA9IHRpbWUuZ210aW1lCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5mb3JtYXRUaW1lKHIpLCAnMTk5My0wNC0yMSAwODowMzowMCwxMjMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYuZm9ybWF0VGltZShyLCAnJVk6JWQnKSwgJzE5OTM6MjEnKQorICAgICAgICBmLmZvcm1hdChyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHIuYXNjdGltZSwgJzE5OTMtMDQtMjEgMDg6MDM6MDAsMTIzJykKKworY2xhc3MgVGVzdEJ1ZmZlcmluZ0Zvcm1hdHRlcihsb2dnaW5nLkJ1ZmZlcmluZ0Zvcm1hdHRlcik6CisgICAgZGVmIGZvcm1hdEhlYWRlcihzZWxmLCByZWNvcmRzKToKKyAgICAgICAgcmV0dXJuICdbKCVkKScgJSBsZW4ocmVjb3JkcykKKworICAgIGRlZiBmb3JtYXRGb290ZXIoc2VsZiwgcmVjb3Jkcyk6CisgICAgICAgIHJldHVybiAnKCVkKV0nICUgbGVuKHJlY29yZHMpCisKK2NsYXNzIEJ1ZmZlcmluZ0Zvcm1hdHRlclRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5yZWNvcmRzID0gWworICAgICAgICAgICAgbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHsnbXNnJzogJ29uZSd9KSwKKyAgICAgICAgICAgIGxvZ2dpbmcubWFrZUxvZ1JlY29yZCh7J21zZyc6ICd0d28nfSksCisgICAgICAgIF0KKworICAgIGRlZiB0ZXN0X2RlZmF1bHQoc2VsZik6CisgICAgICAgIGYgPSBsb2dnaW5nLkJ1ZmZlcmluZ0Zvcm1hdHRlcigpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJycsIGYuZm9ybWF0KFtdKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnb25ldHdvJywgZi5mb3JtYXQoc2VsZi5yZWNvcmRzKSkKKworICAgIGRlZiB0ZXN0X2N1c3RvbShzZWxmKToKKyAgICAgICAgZiA9IFRlc3RCdWZmZXJpbmdGb3JtYXR0ZXIoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdbKDIpb25ldHdvKDIpXScsIGYuZm9ybWF0KHNlbGYucmVjb3JkcykpCisgICAgICAgIGxmID0gbG9nZ2luZy5Gb3JtYXR0ZXIoJzwlKG1lc3NhZ2Upcz4nKQorICAgICAgICBmID0gVGVzdEJ1ZmZlcmluZ0Zvcm1hdHRlcihsZikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnWygyKTxvbmU+PHR3bz4oMildJywgZi5mb3JtYXQoc2VsZi5yZWNvcmRzKSkKKworY2xhc3MgRXhjZXB0aW9uVGVzdChCYXNlVGVzdCk6CisgICAgZGVmIHRlc3RfZm9ybWF0dGluZyhzZWxmKToKKyAgICAgICAgciA9IHNlbGYucm9vdF9sb2dnZXIKKyAgICAgICAgaCA9IFJlY29yZGluZ0hhbmRsZXIoKQorICAgICAgICByLmFkZEhhbmRsZXIoaCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCdkZWxpYmVyYXRlIG1pc3Rha2UnKQorICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBsb2dnaW5nLmV4Y2VwdGlvbignZmFpbGVkJywgc3RhY2tfaW5mbz1UcnVlKQorICAgICAgICByLnJlbW92ZUhhbmRsZXIoaCkKKyAgICAgICAgaC5jbG9zZSgpCisgICAgICAgIHIgPSBoLnJlY29yZHNbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHIuZXhjX3RleHQuc3RhcnRzd2l0aCgnVHJhY2ViYWNrIChtb3N0IHJlY2VudCAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NhbGwgbGFzdCk6XG4nKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHIuZXhjX3RleHQuZW5kc3dpdGgoJ1xuUnVudGltZUVycm9yOiAnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZWxpYmVyYXRlIG1pc3Rha2UnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHIuc3RhY2tfaW5mby5zdGFydHN3aXRoKCdTdGFjayAobW9zdCByZWNlbnQgJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjYWxsIGxhc3QpOlxuJykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyLnN0YWNrX2luZm8uZW5kc3dpdGgoJ2xvZ2dpbmcuZXhjZXB0aW9uKFwnZmFpbGVkXCcsICcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N0YWNrX2luZm89VHJ1ZSknKSkKKworCiBjbGFzcyBMYXN0UmVzb3J0VGVzdChCYXNlVGVzdCk6CiAgICAgZGVmIHRlc3RfbGFzdF9yZXNvcnQoc2VsZik6CiAgICAgICAgICMgVGVzdCB0aGUgbGFzdCByZXNvcnQgaGFuZGxlcgpAQCAtMjE5NCw2ICsyOTIzLDggQEAKICAgICAgICAgb2xkX3JhaXNlX2V4Y2VwdGlvbnMgPSBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucwogICAgICAgICB0cnk6CiAgICAgICAgICAgICBzeXMuc3RkZXJyID0gc2lvID0gaW8uU3RyaW5nSU8oKQorICAgICAgICAgICAgcm9vdC5kZWJ1ZygnVGhpcyBzaG91bGQgbm90IGFwcGVhcicpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpby5nZXR2YWx1ZSgpLCAnJykKICAgICAgICAgICAgIHJvb3Qud2FybmluZygnVGhpcyBpcyB5b3VyIGZpbmFsIGNoYW5jZSEnKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaW8uZ2V0dmFsdWUoKSwgJ1RoaXMgaXMgeW91ciBmaW5hbCBjaGFuY2UhXG4nKQogICAgICAgICAgICAgI05vIGhhbmRsZXJzIGFuZCBubyBsYXN0IHJlc29ydCwgc28gJ05vIGhhbmRsZXJzJyBtZXNzYWdlCkBAIC0yMjE4LDYgKzI5NDksNTg2IEBACiAgICAgICAgICAgICBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucyA9IG9sZF9yYWlzZV9leGNlcHRpb25zCiAKIAorY2xhc3MgRmFrZUhhbmRsZXI6CisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgaWRlbnRpZmllciwgY2FsbGVkKToKKyAgICAgICAgZm9yIG1ldGhvZCBpbiAoJ2FjcXVpcmUnLCAnZmx1c2gnLCAnY2xvc2UnLCAncmVsZWFzZScpOgorICAgICAgICAgICAgc2V0YXR0cihzZWxmLCBtZXRob2QsIHNlbGYucmVjb3JkX2NhbGwoaWRlbnRpZmllciwgbWV0aG9kLCBjYWxsZWQpKQorCisgICAgZGVmIHJlY29yZF9jYWxsKHNlbGYsIGlkZW50aWZpZXIsIG1ldGhvZF9uYW1lLCBjYWxsZWQpOgorICAgICAgICBkZWYgaW5uZXIoKToKKyAgICAgICAgICAgIGNhbGxlZC5hcHBlbmQoJ3t9IC0ge30nLmZvcm1hdChpZGVudGlmaWVyLCBtZXRob2RfbmFtZSkpCisgICAgICAgIHJldHVybiBpbm5lcgorCisKK2NsYXNzIFJlY29yZGluZ0hhbmRsZXIobG9nZ2luZy5OdWxsSGFuZGxlcik6CisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgc3VwZXIoUmVjb3JkaW5nSGFuZGxlciwgc2VsZikuX19pbml0X18oKmFyZ3MsICoqa3dhcmdzKQorICAgICAgICBzZWxmLnJlY29yZHMgPSBbXQorCisgICAgZGVmIGhhbmRsZShzZWxmLCByZWNvcmQpOgorICAgICAgICAiIiJLZWVwIHRyYWNrIG9mIGFsbCB0aGUgZW1pdHRlZCByZWNvcmRzLiIiIgorICAgICAgICBzZWxmLnJlY29yZHMuYXBwZW5kKHJlY29yZCkKKworCitjbGFzcyBTaHV0ZG93blRlc3QoQmFzZVRlc3QpOgorCisgICAgIiIiVGVzdCBzdWl0ZSBmb3IgdGhlIHNodXRkb3duIG1ldGhvZC4iIiIKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoU2h1dGRvd25UZXN0LCBzZWxmKS5zZXRVcCgpCisgICAgICAgIHNlbGYuY2FsbGVkID0gW10KKworICAgICAgICByYWlzZV9leGNlcHRpb25zID0gbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNldGF0dHIsIGxvZ2dpbmcsICdyYWlzZUV4Y2VwdGlvbnMnLCByYWlzZV9leGNlcHRpb25zKQorCisgICAgZGVmIHJhaXNlX2Vycm9yKHNlbGYsIGVycm9yKToKKyAgICAgICAgZGVmIGlubmVyKCk6CisgICAgICAgICAgICByYWlzZSBlcnJvcigpCisgICAgICAgIHJldHVybiBpbm5lcgorCisgICAgZGVmIHRlc3Rfbm9fZmFpbHVyZShzZWxmKToKKyAgICAgICAgIyBjcmVhdGUgc29tZSBmYWtlIGhhbmRsZXJzCisgICAgICAgIGhhbmRsZXIwID0gRmFrZUhhbmRsZXIoMCwgc2VsZi5jYWxsZWQpCisgICAgICAgIGhhbmRsZXIxID0gRmFrZUhhbmRsZXIoMSwgc2VsZi5jYWxsZWQpCisgICAgICAgIGhhbmRsZXIyID0gRmFrZUhhbmRsZXIoMiwgc2VsZi5jYWxsZWQpCisKKyAgICAgICAgIyBjcmVhdGUgbGl2ZSB3ZWFrcmVmIHRvIHRob3NlIGhhbmRsZXJzCisgICAgICAgIGhhbmRsZXJzID0gbWFwKGxvZ2dpbmcud2Vha3JlZi5yZWYsIFtoYW5kbGVyMCwgaGFuZGxlcjEsIGhhbmRsZXIyXSkKKworICAgICAgICBsb2dnaW5nLnNodXRkb3duKGhhbmRsZXJMaXN0PWxpc3QoaGFuZGxlcnMpKQorCisgICAgICAgIGV4cGVjdGVkID0gWycyIC0gYWNxdWlyZScsICcyIC0gZmx1c2gnLCAnMiAtIGNsb3NlJywgJzIgLSByZWxlYXNlJywKKyAgICAgICAgICAgICAgICAgICAgJzEgLSBhY3F1aXJlJywgJzEgLSBmbHVzaCcsICcxIC0gY2xvc2UnLCAnMSAtIHJlbGVhc2UnLAorICAgICAgICAgICAgICAgICAgICAnMCAtIGFjcXVpcmUnLCAnMCAtIGZsdXNoJywgJzAgLSBjbG9zZScsICcwIC0gcmVsZWFzZSddCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXhwZWN0ZWQsIHNlbGYuY2FsbGVkKQorCisgICAgZGVmIF90ZXN0X3dpdGhfZmFpbHVyZV9pbl9tZXRob2Qoc2VsZiwgbWV0aG9kLCBlcnJvcik6CisgICAgICAgIGhhbmRsZXIgPSBGYWtlSGFuZGxlcigwLCBzZWxmLmNhbGxlZCkKKyAgICAgICAgc2V0YXR0cihoYW5kbGVyLCBtZXRob2QsIHNlbGYucmFpc2VfZXJyb3IoZXJyb3IpKQorICAgICAgICBoYW5kbGVycyA9IFtsb2dnaW5nLndlYWtyZWYucmVmKGhhbmRsZXIpXQorCisgICAgICAgIGxvZ2dpbmcuc2h1dGRvd24oaGFuZGxlckxpc3Q9bGlzdChoYW5kbGVycykpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnMCAtIHJlbGVhc2UnLCBzZWxmLmNhbGxlZFstMV0pCisKKyAgICBkZWYgdGVzdF93aXRoX2lvZXJyb3JfaW5fYWNxdWlyZShzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF93aXRoX2ZhaWx1cmVfaW5fbWV0aG9kKCdhY3F1aXJlJywgSU9FcnJvcikKKworICAgIGRlZiB0ZXN0X3dpdGhfaW9lcnJvcl9pbl9mbHVzaChzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF93aXRoX2ZhaWx1cmVfaW5fbWV0aG9kKCdmbHVzaCcsIElPRXJyb3IpCisKKyAgICBkZWYgdGVzdF93aXRoX2lvZXJyb3JfaW5fY2xvc2Uoc2VsZik6CisgICAgICAgIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCgnY2xvc2UnLCBJT0Vycm9yKQorCisgICAgZGVmIHRlc3Rfd2l0aF92YWx1ZWVycm9yX2luX2FjcXVpcmUoc2VsZik6CisgICAgICAgIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCgnYWNxdWlyZScsIFZhbHVlRXJyb3IpCisKKyAgICBkZWYgdGVzdF93aXRoX3ZhbHVlZXJyb3JfaW5fZmx1c2goc2VsZik6CisgICAgICAgIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCgnZmx1c2gnLCBWYWx1ZUVycm9yKQorCisgICAgZGVmIHRlc3Rfd2l0aF92YWx1ZWVycm9yX2luX2Nsb3NlKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X3dpdGhfZmFpbHVyZV9pbl9tZXRob2QoJ2Nsb3NlJywgVmFsdWVFcnJvcikKKworICAgIGRlZiB0ZXN0X3dpdGhfb3RoZXJfZXJyb3JfaW5fYWNxdWlyZV93aXRob3V0X3JhaXNlKHNlbGYpOgorICAgICAgICBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucyA9IEZhbHNlCisgICAgICAgIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCgnYWNxdWlyZScsIEluZGV4RXJyb3IpCisKKyAgICBkZWYgdGVzdF93aXRoX290aGVyX2Vycm9yX2luX2ZsdXNoX3dpdGhvdXRfcmFpc2Uoc2VsZik6CisgICAgICAgIGxvZ2dpbmcucmFpc2VFeGNlcHRpb25zID0gRmFsc2UKKyAgICAgICAgc2VsZi5fdGVzdF93aXRoX2ZhaWx1cmVfaW5fbWV0aG9kKCdmbHVzaCcsIEluZGV4RXJyb3IpCisKKyAgICBkZWYgdGVzdF93aXRoX290aGVyX2Vycm9yX2luX2Nsb3NlX3dpdGhvdXRfcmFpc2Uoc2VsZik6CisgICAgICAgIGxvZ2dpbmcucmFpc2VFeGNlcHRpb25zID0gRmFsc2UKKyAgICAgICAgc2VsZi5fdGVzdF93aXRoX2ZhaWx1cmVfaW5fbWV0aG9kKCdjbG9zZScsIEluZGV4RXJyb3IpCisKKyAgICBkZWYgdGVzdF93aXRoX290aGVyX2Vycm9yX2luX2FjcXVpcmVfd2l0aF9yYWlzZShzZWxmKToKKyAgICAgICAgbG9nZ2luZy5yYWlzZUV4Y2VwdGlvbnMgPSBUcnVlCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IsIHNlbGYuX3Rlc3Rfd2l0aF9mYWlsdXJlX2luX21ldGhvZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FjcXVpcmUnLCBJbmRleEVycm9yKQorCisgICAgZGVmIHRlc3Rfd2l0aF9vdGhlcl9lcnJvcl9pbl9mbHVzaF93aXRoX3JhaXNlKHNlbGYpOgorICAgICAgICBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucyA9IFRydWUKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW5kZXhFcnJvciwgc2VsZi5fdGVzdF93aXRoX2ZhaWx1cmVfaW5fbWV0aG9kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnZmx1c2gnLCBJbmRleEVycm9yKQorCisgICAgZGVmIHRlc3Rfd2l0aF9vdGhlcl9lcnJvcl9pbl9jbG9zZV93aXRoX3JhaXNlKHNlbGYpOgorICAgICAgICBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucyA9IFRydWUKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSW5kZXhFcnJvciwgc2VsZi5fdGVzdF93aXRoX2ZhaWx1cmVfaW5fbWV0aG9kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAnY2xvc2UnLCBJbmRleEVycm9yKQorCisKK2NsYXNzIE1vZHVsZUxldmVsTWlzY1Rlc3QoQmFzZVRlc3QpOgorCisgICAgIiIiVGVzdCBzdWl0ZSBmb3Igc29tZSBtb2R1bGUgbGV2ZWwgbWV0aG9kcy4iIiIKKworICAgIGRlZiB0ZXN0X2Rpc2FibGUoc2VsZik6CisgICAgICAgIG9sZF9kaXNhYmxlID0gbG9nZ2luZy5yb290Lm1hbmFnZXIuZGlzYWJsZQorICAgICAgICAjIGNvbmZpcm0gb3VyIGFzc3VtcHRpb25zIGFyZSBjb3JyZWN0CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob2xkX2Rpc2FibGUsIDApCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChsb2dnaW5nLmRpc2FibGUsIG9sZF9kaXNhYmxlKQorCisgICAgICAgIGxvZ2dpbmcuZGlzYWJsZSg4MykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsb2dnaW5nLnJvb3QubWFuYWdlci5kaXNhYmxlLCA4MykKKworICAgIGRlZiBfdGVzdF9sb2coc2VsZiwgbWV0aG9kLCBsZXZlbD1Ob25lKToKKyAgICAgICAgY2FsbGVkID0gW10KKyAgICAgICAgcGF0Y2goc2VsZiwgbG9nZ2luZywgJ2Jhc2ljQ29uZmlnJywKKyAgICAgICAgICAgICAgbGFtYmRhICphLCAqKmt3OiBjYWxsZWQuYXBwZW5kKChhLCBrdykpKQorCisgICAgICAgIHJlY29yZGluZyA9IFJlY29yZGluZ0hhbmRsZXIoKQorICAgICAgICBsb2dnaW5nLnJvb3QuYWRkSGFuZGxlcihyZWNvcmRpbmcpCisKKyAgICAgICAgbG9nX21ldGhvZCA9IGdldGF0dHIobG9nZ2luZywgbWV0aG9kKQorICAgICAgICBpZiBsZXZlbCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgIGxvZ19tZXRob2QobGV2ZWwsICJ0ZXN0IG1lOiAlciIsIHJlY29yZGluZykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGxvZ19tZXRob2QoInRlc3QgbWU6ICVyIiwgcmVjb3JkaW5nKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHJlY29yZGluZy5yZWNvcmRzKSwgMSkKKyAgICAgICAgcmVjb3JkID0gcmVjb3JkaW5nLnJlY29yZHNbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQuZ2V0TWVzc2FnZSgpLCAidGVzdCBtZTogJXIiICUgcmVjb3JkaW5nKQorCisgICAgICAgIGV4cGVjdGVkX2xldmVsID0gbGV2ZWwgaWYgbGV2ZWwgaXMgbm90IE5vbmUgZWxzZSBnZXRhdHRyKGxvZ2dpbmcsIG1ldGhvZC51cHBlcigpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZC5sZXZlbG5vLCBleHBlY3RlZF9sZXZlbCkKKworICAgICAgICAjIGJhc2ljQ29uZmlnIHdhcyBub3QgY2FsbGVkIQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNhbGxlZCwgW10pCisKKyAgICBkZWYgdGVzdF9sb2coc2VsZik6CisgICAgICAgIHNlbGYuX3Rlc3RfbG9nKCdsb2cnLCBsb2dnaW5nLkVSUk9SKQorCisgICAgZGVmIHRlc3RfZGVidWcoc2VsZik6CisgICAgICAgIHNlbGYuX3Rlc3RfbG9nKCdkZWJ1ZycpCisKKyAgICBkZWYgdGVzdF9pbmZvKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X2xvZygnaW5mbycpCisKKyAgICBkZWYgdGVzdF93YXJuaW5nKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X2xvZygnd2FybmluZycpCisKKyAgICBkZWYgdGVzdF9lcnJvcihzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF9sb2coJ2Vycm9yJykKKworICAgIGRlZiB0ZXN0X2NyaXRpY2FsKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X2xvZygnY3JpdGljYWwnKQorCisgICAgZGVmIHRlc3Rfc2V0X2xvZ2dlcl9jbGFzcyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsb2dnaW5nLnNldExvZ2dlckNsYXNzLCBvYmplY3QpCisKKyAgICAgICAgY2xhc3MgTXlMb2dnZXIobG9nZ2luZy5Mb2dnZXIpOgorICAgICAgICAgICAgcGFzcworCisgICAgICAgIGxvZ2dpbmcuc2V0TG9nZ2VyQ2xhc3MoTXlMb2dnZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobG9nZ2luZy5nZXRMb2dnZXJDbGFzcygpLCBNeUxvZ2dlcikKKworICAgICAgICBsb2dnaW5nLnNldExvZ2dlckNsYXNzKGxvZ2dpbmcuTG9nZ2VyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxvZ2dpbmcuZ2V0TG9nZ2VyQ2xhc3MoKSwgbG9nZ2luZy5Mb2dnZXIpCisKK2NsYXNzIExvZ1JlY29yZFRlc3QoQmFzZVRlc3QpOgorICAgIGRlZiB0ZXN0X3N0cl9yZXAoc2VsZik6CisgICAgICAgIHIgPSBsb2dnaW5nLm1ha2VMb2dSZWNvcmQoe30pCisgICAgICAgIHMgPSBzdHIocikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHMuc3RhcnRzd2l0aCgnPExvZ1JlY29yZDogJykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzLmVuZHN3aXRoKCc+JykpCisKKyAgICBkZWYgdGVzdF9kaWN0X2FyZyhzZWxmKToKKyAgICAgICAgaCA9IFJlY29yZGluZ0hhbmRsZXIoKQorICAgICAgICByID0gbG9nZ2luZy5nZXRMb2dnZXIoKQorICAgICAgICByLmFkZEhhbmRsZXIoaCkKKyAgICAgICAgZCA9IHsnbGVzcycgOiAnbW9yZScgfQorICAgICAgICBsb2dnaW5nLndhcm5pbmcoJ2xlc3MgaXMgJShsZXNzKXMnLCBkKQorICAgICAgICBzZWxmLmFzc2VydElzKGgucmVjb3Jkc1swXS5hcmdzLCBkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGgucmVjb3Jkc1swXS5tZXNzYWdlLCAnbGVzcyBpcyBtb3JlJykKKyAgICAgICAgci5yZW1vdmVIYW5kbGVyKGgpCisgICAgICAgIGguY2xvc2UoKQorCisgICAgZGVmIHRlc3RfbXVsdGlwcm9jZXNzaW5nKHNlbGYpOgorICAgICAgICByID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHt9KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHIucHJvY2Vzc05hbWUsICdNYWluUHJvY2VzcycpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGltcG9ydCBtdWx0aXByb2Nlc3NpbmcgYXMgbXAKKyAgICAgICAgICAgIHIgPSBsb2dnaW5nLm1ha2VMb2dSZWNvcmQoe30pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHIucHJvY2Vzc05hbWUsIG1wLmN1cnJlbnRfcHJvY2VzcygpLm5hbWUpCisgICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKworICAgIGRlZiB0ZXN0X29wdGlvbmFsKHNlbGYpOgorICAgICAgICByID0gbG9nZ2luZy5tYWtlTG9nUmVjb3JkKHt9KQorICAgICAgICBOT1RfTk9ORSA9IHNlbGYuYXNzZXJ0SXNOb3ROb25lCisgICAgICAgIGlmIHRocmVhZGluZzoKKyAgICAgICAgICAgIE5PVF9OT05FKHIudGhyZWFkKQorICAgICAgICAgICAgTk9UX05PTkUoci50aHJlYWROYW1lKQorICAgICAgICBOT1RfTk9ORShyLnByb2Nlc3MpCisgICAgICAgIE5PVF9OT05FKHIucHJvY2Vzc05hbWUpCisgICAgICAgIGxvZ190aHJlYWRzID0gbG9nZ2luZy5sb2dUaHJlYWRzCisgICAgICAgIGxvZ19wcm9jZXNzZXMgPSBsb2dnaW5nLmxvZ1Byb2Nlc3NlcworICAgICAgICBsb2dfbXVsdGlwcm9jZXNzaW5nID0gbG9nZ2luZy5sb2dNdWx0aXByb2Nlc3NpbmcKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgbG9nZ2luZy5sb2dUaHJlYWRzID0gRmFsc2UKKyAgICAgICAgICAgIGxvZ2dpbmcubG9nUHJvY2Vzc2VzID0gRmFsc2UKKyAgICAgICAgICAgIGxvZ2dpbmcubG9nTXVsdGlwcm9jZXNzaW5nID0gRmFsc2UKKyAgICAgICAgICAgIHIgPSBsb2dnaW5nLm1ha2VMb2dSZWNvcmQoe30pCisgICAgICAgICAgICBOT05FID0gc2VsZi5hc3NlcnRJc05vbmUKKyAgICAgICAgICAgIE5PTkUoci50aHJlYWQpCisgICAgICAgICAgICBOT05FKHIudGhyZWFkTmFtZSkKKyAgICAgICAgICAgIE5PTkUoci5wcm9jZXNzKQorICAgICAgICAgICAgTk9ORShyLnByb2Nlc3NOYW1lKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgbG9nZ2luZy5sb2dUaHJlYWRzID0gbG9nX3RocmVhZHMKKyAgICAgICAgICAgIGxvZ2dpbmcubG9nUHJvY2Vzc2VzID0gbG9nX3Byb2Nlc3NlcworICAgICAgICAgICAgbG9nZ2luZy5sb2dNdWx0aXByb2Nlc3NpbmcgPSBsb2dfbXVsdGlwcm9jZXNzaW5nCisKK2NsYXNzIEJhc2ljQ29uZmlnVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICAiIiJUZXN0IHN1aXRlIGZvciBsb2dnaW5nLmJhc2ljQ29uZmlnLiIiIgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcihCYXNpY0NvbmZpZ1Rlc3QsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi5oYW5kbGVycyA9IGxvZ2dpbmcucm9vdC5oYW5kbGVycworICAgICAgICBzZWxmLnNhdmVkX2hhbmRsZXJzID0gbG9nZ2luZy5faGFuZGxlcnMuY29weSgpCisgICAgICAgIHNlbGYuc2F2ZWRfaGFuZGxlcl9saXN0ID0gbG9nZ2luZy5faGFuZGxlckxpc3RbOl0KKyAgICAgICAgc2VsZi5vcmlnaW5hbF9sb2dnaW5nX2xldmVsID0gbG9nZ2luZy5yb290LmxldmVsCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLmNsZWFudXApCisgICAgICAgIGxvZ2dpbmcucm9vdC5oYW5kbGVycyA9IFtdCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIGZvciBoIGluIGxvZ2dpbmcucm9vdC5oYW5kbGVyc1s6XToKKyAgICAgICAgICAgIGxvZ2dpbmcucm9vdC5yZW1vdmVIYW5kbGVyKGgpCisgICAgICAgICAgICBoLmNsb3NlKCkKKyAgICAgICAgc3VwZXIoQmFzaWNDb25maWdUZXN0LCBzZWxmKS50ZWFyRG93bigpCisKKyAgICBkZWYgY2xlYW51cChzZWxmKToKKyAgICAgICAgc2V0YXR0cihsb2dnaW5nLnJvb3QsICdoYW5kbGVycycsIHNlbGYuaGFuZGxlcnMpCisgICAgICAgIGxvZ2dpbmcuX2hhbmRsZXJzLmNsZWFyKCkKKyAgICAgICAgbG9nZ2luZy5faGFuZGxlcnMudXBkYXRlKHNlbGYuc2F2ZWRfaGFuZGxlcnMpCisgICAgICAgIGxvZ2dpbmcuX2hhbmRsZXJMaXN0WzpdID0gc2VsZi5zYXZlZF9oYW5kbGVyX2xpc3QKKyAgICAgICAgbG9nZ2luZy5yb290LmxldmVsID0gc2VsZi5vcmlnaW5hbF9sb2dnaW5nX2xldmVsCisKKyAgICBkZWYgdGVzdF9ub19rd2FyZ3Moc2VsZik6CisgICAgICAgIGxvZ2dpbmcuYmFzaWNDb25maWcoKQorCisgICAgICAgICMgaGFuZGxlciBkZWZhdWx0cyB0byBhIFN0cmVhbUhhbmRsZXIgdG8gc3lzLnN0ZGVycgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihsb2dnaW5nLnJvb3QuaGFuZGxlcnMpLCAxKQorICAgICAgICBoYW5kbGVyID0gbG9nZ2luZy5yb290LmhhbmRsZXJzWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShoYW5kbGVyLCBsb2dnaW5nLlN0cmVhbUhhbmRsZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFuZGxlci5zdHJlYW0sIHN5cy5zdGRlcnIpCisKKyAgICAgICAgZm9ybWF0dGVyID0gaGFuZGxlci5mb3JtYXR0ZXIKKyAgICAgICAgIyBmb3JtYXQgZGVmYXVsdHMgdG8gbG9nZ2luZy5CQVNJQ19GT1JNQVQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3JtYXR0ZXIuX3N0eWxlLl9mbXQsIGxvZ2dpbmcuQkFTSUNfRk9STUFUKQorICAgICAgICAjIGRhdGVmbXQgZGVmYXVsdHMgdG8gTm9uZQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShmb3JtYXR0ZXIuZGF0ZWZtdCkKKyAgICAgICAgIyBzdHlsZSBkZWZhdWx0cyB0byAlCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShmb3JtYXR0ZXIuX3N0eWxlLCBsb2dnaW5nLlBlcmNlbnRTdHlsZSkKKworICAgICAgICAjIGxldmVsIGlzIG5vdCBleHBsaWNpdGx5IHNldAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxvZ2dpbmcucm9vdC5sZXZlbCwgc2VsZi5vcmlnaW5hbF9sb2dnaW5nX2xldmVsKQorCisgICAgZGVmIHRlc3RfZmlsZW5hbWUoc2VsZik6CisgICAgICAgIGxvZ2dpbmcuYmFzaWNDb25maWcoZmlsZW5hbWU9J3Rlc3QubG9nJykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihsb2dnaW5nLnJvb3QuaGFuZGxlcnMpLCAxKQorICAgICAgICBoYW5kbGVyID0gbG9nZ2luZy5yb290LmhhbmRsZXJzWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShoYW5kbGVyLCBsb2dnaW5nLkZpbGVIYW5kbGVyKQorCisgICAgICAgIGV4cGVjdGVkID0gbG9nZ2luZy5GaWxlSGFuZGxlcigndGVzdC5sb2cnLCAnYScpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChleHBlY3RlZC5jbG9zZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYW5kbGVyLnN0cmVhbS5tb2RlLCBleHBlY3RlZC5zdHJlYW0ubW9kZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYW5kbGVyLnN0cmVhbS5uYW1lLCBleHBlY3RlZC5zdHJlYW0ubmFtZSkKKworICAgIGRlZiB0ZXN0X2ZpbGVtb2RlKHNlbGYpOgorICAgICAgICBsb2dnaW5nLmJhc2ljQ29uZmlnKGZpbGVuYW1lPSd0ZXN0LmxvZycsIGZpbGVtb2RlPSd3YicpCisKKyAgICAgICAgaGFuZGxlciA9IGxvZ2dpbmcucm9vdC5oYW5kbGVyc1swXQorICAgICAgICBleHBlY3RlZCA9IGxvZ2dpbmcuRmlsZUhhbmRsZXIoJ3Rlc3QubG9nJywgJ3diJykKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKGV4cGVjdGVkLmNsb3NlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhbmRsZXIuc3RyZWFtLm1vZGUsIGV4cGVjdGVkLnN0cmVhbS5tb2RlKQorCisgICAgZGVmIHRlc3Rfc3RyZWFtKHNlbGYpOgorICAgICAgICBzdHJlYW0gPSBpby5TdHJpbmdJTygpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzdHJlYW0uY2xvc2UpCisgICAgICAgIGxvZ2dpbmcuYmFzaWNDb25maWcoc3RyZWFtPXN0cmVhbSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihsb2dnaW5nLnJvb3QuaGFuZGxlcnMpLCAxKQorICAgICAgICBoYW5kbGVyID0gbG9nZ2luZy5yb290LmhhbmRsZXJzWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShoYW5kbGVyLCBsb2dnaW5nLlN0cmVhbUhhbmRsZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFuZGxlci5zdHJlYW0sIHN0cmVhbSkKKworICAgIGRlZiB0ZXN0X2Zvcm1hdChzZWxmKToKKyAgICAgICAgbG9nZ2luZy5iYXNpY0NvbmZpZyhmb3JtYXQ9J2ZvbycpCisKKyAgICAgICAgZm9ybWF0dGVyID0gbG9nZ2luZy5yb290LmhhbmRsZXJzWzBdLmZvcm1hdHRlcgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdHRlci5fc3R5bGUuX2ZtdCwgJ2ZvbycpCisKKyAgICBkZWYgdGVzdF9kYXRlZm10KHNlbGYpOgorICAgICAgICBsb2dnaW5nLmJhc2ljQ29uZmlnKGRhdGVmbXQ9J2JhcicpCisKKyAgICAgICAgZm9ybWF0dGVyID0gbG9nZ2luZy5yb290LmhhbmRsZXJzWzBdLmZvcm1hdHRlcgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZvcm1hdHRlci5kYXRlZm10LCAnYmFyJykKKworICAgIGRlZiB0ZXN0X3N0eWxlKHNlbGYpOgorICAgICAgICBsb2dnaW5nLmJhc2ljQ29uZmlnKHN0eWxlPSckJykKKworICAgICAgICBmb3JtYXR0ZXIgPSBsb2dnaW5nLnJvb3QuaGFuZGxlcnNbMF0uZm9ybWF0dGVyCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShmb3JtYXR0ZXIuX3N0eWxlLCBsb2dnaW5nLlN0cmluZ1RlbXBsYXRlU3R5bGUpCisKKyAgICBkZWYgdGVzdF9sZXZlbChzZWxmKToKKyAgICAgICAgb2xkX2xldmVsID0gbG9nZ2luZy5yb290LmxldmVsCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChsb2dnaW5nLnJvb3Quc2V0TGV2ZWwsIG9sZF9sZXZlbCkKKworICAgICAgICBsb2dnaW5nLmJhc2ljQ29uZmlnKGxldmVsPTU3KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxvZ2dpbmcucm9vdC5sZXZlbCwgNTcpCisgICAgICAgICMgVGVzdCB0aGF0IHNlY29uZCBjYWxsIGhhcyBubyBlZmZlY3QKKyAgICAgICAgbG9nZ2luZy5iYXNpY0NvbmZpZyhsZXZlbD01OCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsb2dnaW5nLnJvb3QubGV2ZWwsIDU3KQorCisgICAgZGVmIHRlc3RfaW5jb21wYXRpYmxlKHNlbGYpOgorICAgICAgICBhc3NlcnRSYWlzZXMgPSBzZWxmLmFzc2VydFJhaXNlcworICAgICAgICBoYW5kbGVycyA9IFtsb2dnaW5nLlN0cmVhbUhhbmRsZXIoKV0KKyAgICAgICAgc3RyZWFtID0gc3lzLnN0ZGVycgorICAgICAgICBhc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbG9nZ2luZy5iYXNpY0NvbmZpZywgZmlsZW5hbWU9J3Rlc3QubG9nJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyZWFtPXN0cmVhbSkKKyAgICAgICAgYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGxvZ2dpbmcuYmFzaWNDb25maWcsIGZpbGVuYW1lPSd0ZXN0LmxvZycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXJzPWhhbmRsZXJzKQorICAgICAgICBhc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbG9nZ2luZy5iYXNpY0NvbmZpZywgc3RyZWFtPXN0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlcnM9aGFuZGxlcnMpCisKKyAgICBkZWYgdGVzdF9oYW5kbGVycyhzZWxmKToKKyAgICAgICAgaGFuZGxlcnMgPSBbCisgICAgICAgICAgICBsb2dnaW5nLlN0cmVhbUhhbmRsZXIoKSwKKyAgICAgICAgICAgIGxvZ2dpbmcuU3RyZWFtSGFuZGxlcihzeXMuc3Rkb3V0KSwKKyAgICAgICAgICAgIGxvZ2dpbmcuU3RyZWFtSGFuZGxlcigpLAorICAgICAgICBdCisgICAgICAgIGYgPSBsb2dnaW5nLkZvcm1hdHRlcigpCisgICAgICAgIGhhbmRsZXJzWzJdLnNldEZvcm1hdHRlcihmKQorICAgICAgICBsb2dnaW5nLmJhc2ljQ29uZmlnKGhhbmRsZXJzPWhhbmRsZXJzKQorICAgICAgICBzZWxmLmFzc2VydElzKGhhbmRsZXJzWzBdLCBsb2dnaW5nLnJvb3QuaGFuZGxlcnNbMF0pCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoaGFuZGxlcnNbMV0sIGxvZ2dpbmcucm9vdC5oYW5kbGVyc1sxXSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhoYW5kbGVyc1syXSwgbG9nZ2luZy5yb290LmhhbmRsZXJzWzJdKQorICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShoYW5kbGVyc1swXS5mb3JtYXR0ZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3ROb25lKGhhbmRsZXJzWzFdLmZvcm1hdHRlcikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhoYW5kbGVyc1syXS5mb3JtYXR0ZXIsIGYpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoaGFuZGxlcnNbMF0uZm9ybWF0dGVyLCBoYW5kbGVyc1sxXS5mb3JtYXR0ZXIpCisKKyAgICBkZWYgX3Rlc3RfbG9nKHNlbGYsIG1ldGhvZCwgbGV2ZWw9Tm9uZSk6CisgICAgICAgICMgbG9nZ2luZy5yb290IGhhcyBubyBoYW5kbGVycyBzbyBiYXNpY0NvbmZpZyBzaG91bGQgYmUgY2FsbGVkCisgICAgICAgIGNhbGxlZCA9IFtdCisKKyAgICAgICAgb2xkX2Jhc2ljX2NvbmZpZyA9IGxvZ2dpbmcuYmFzaWNDb25maWcKKyAgICAgICAgZGVmIG15X2Jhc2ljX2NvbmZpZygqYSwgKiprdyk6CisgICAgICAgICAgICBvbGRfYmFzaWNfY29uZmlnKCkKKyAgICAgICAgICAgIG9sZF9sZXZlbCA9IGxvZ2dpbmcucm9vdC5sZXZlbAorICAgICAgICAgICAgbG9nZ2luZy5yb290LnNldExldmVsKDEwMCkgICMgYXZvaWQgaGF2aW5nIG1lc3NhZ2VzIGluIHN0ZGVycgorICAgICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKGxvZ2dpbmcucm9vdC5zZXRMZXZlbCwgb2xkX2xldmVsKQorICAgICAgICAgICAgY2FsbGVkLmFwcGVuZCgoYSwga3cpKQorCisgICAgICAgIHBhdGNoKHNlbGYsIGxvZ2dpbmcsICdiYXNpY0NvbmZpZycsIG15X2Jhc2ljX2NvbmZpZykKKworICAgICAgICBsb2dfbWV0aG9kID0gZ2V0YXR0cihsb2dnaW5nLCBtZXRob2QpCisgICAgICAgIGlmIGxldmVsIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgbG9nX21ldGhvZChsZXZlbCwgInRlc3QgbWUiKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbG9nX21ldGhvZCgidGVzdCBtZSIpCisKKyAgICAgICAgIyBiYXNpY0NvbmZpZyB3YXMgY2FsbGVkIHdpdGggbm8gYXJndW1lbnRzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY2FsbGVkLCBbKCgpLCB7fSldKQorCisgICAgZGVmIHRlc3RfbG9nKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X2xvZygnbG9nJywgbG9nZ2luZy5XQVJOSU5HKQorCisgICAgZGVmIHRlc3RfZGVidWcoc2VsZik6CisgICAgICAgIHNlbGYuX3Rlc3RfbG9nKCdkZWJ1ZycpCisKKyAgICBkZWYgdGVzdF9pbmZvKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X2xvZygnaW5mbycpCisKKyAgICBkZWYgdGVzdF93YXJuaW5nKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X2xvZygnd2FybmluZycpCisKKyAgICBkZWYgdGVzdF9lcnJvcihzZWxmKToKKyAgICAgICAgc2VsZi5fdGVzdF9sb2coJ2Vycm9yJykKKworICAgIGRlZiB0ZXN0X2NyaXRpY2FsKHNlbGYpOgorICAgICAgICBzZWxmLl90ZXN0X2xvZygnY3JpdGljYWwnKQorCisKK2NsYXNzIExvZ2dlckFkYXB0ZXJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoTG9nZ2VyQWRhcHRlclRlc3QsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgb2xkX2hhbmRsZXJfbGlzdCA9IGxvZ2dpbmcuX2hhbmRsZXJMaXN0WzpdCisKKyAgICAgICAgc2VsZi5yZWNvcmRpbmcgPSBSZWNvcmRpbmdIYW5kbGVyKCkKKyAgICAgICAgc2VsZi5sb2dnZXIgPSBsb2dnaW5nLnJvb3QKKyAgICAgICAgc2VsZi5sb2dnZXIuYWRkSGFuZGxlcihzZWxmLnJlY29yZGluZykKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNlbGYubG9nZ2VyLnJlbW92ZUhhbmRsZXIsIHNlbGYucmVjb3JkaW5nKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2VsZi5yZWNvcmRpbmcuY2xvc2UpCisKKyAgICAgICAgZGVmIGNsZWFudXAoKToKKyAgICAgICAgICAgIGxvZ2dpbmcuX2hhbmRsZXJMaXN0WzpdID0gb2xkX2hhbmRsZXJfbGlzdAorCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChjbGVhbnVwKQorICAgICAgICBzZWxmLmFkZENsZWFudXAobG9nZ2luZy5zaHV0ZG93bikKKyAgICAgICAgc2VsZi5hZGFwdGVyID0gbG9nZ2luZy5Mb2dnZXJBZGFwdGVyKGxvZ2dlcj1zZWxmLmxvZ2dlciwgZXh0cmE9Tm9uZSkKKworICAgIGRlZiB0ZXN0X2V4Y2VwdGlvbihzZWxmKToKKyAgICAgICAgbXNnID0gJ3Rlc3RpbmcgZXhjZXB0aW9uOiAlcicKKyAgICAgICAgZXhjID0gTm9uZQorICAgICAgICB0cnk6CisgICAgICAgICAgICAxIC8gMAorICAgICAgICBleGNlcHQgWmVyb0RpdmlzaW9uRXJyb3IgYXMgZToKKyAgICAgICAgICAgIGV4YyA9IGUKKyAgICAgICAgICAgIHNlbGYuYWRhcHRlci5leGNlcHRpb24obXNnLCBzZWxmLnJlY29yZGluZykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzZWxmLnJlY29yZGluZy5yZWNvcmRzKSwgMSkKKyAgICAgICAgcmVjb3JkID0gc2VsZi5yZWNvcmRpbmcucmVjb3Jkc1swXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZC5sZXZlbG5vLCBsb2dnaW5nLkVSUk9SKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZC5tc2csIG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQuYXJncywgKHNlbGYucmVjb3JkaW5nLCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVjb3JkLmV4Y19pbmZvLAorICAgICAgICAgICAgICAgICAgICAgICAgIChleGMuX19jbGFzc19fLCBleGMsIGV4Yy5fX3RyYWNlYmFja19fKSkKKworICAgIGRlZiB0ZXN0X2NyaXRpY2FsKHNlbGYpOgorICAgICAgICBtc2cgPSAnY3JpdGljYWwgdGVzdCEgJXInCisgICAgICAgIHNlbGYuYWRhcHRlci5jcml0aWNhbChtc2csIHNlbGYucmVjb3JkaW5nKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHNlbGYucmVjb3JkaW5nLnJlY29yZHMpLCAxKQorICAgICAgICByZWNvcmQgPSBzZWxmLnJlY29yZGluZy5yZWNvcmRzWzBdCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVjb3JkLmxldmVsbm8sIGxvZ2dpbmcuQ1JJVElDQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVjb3JkLm1zZywgbXNnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZC5hcmdzLCAoc2VsZi5yZWNvcmRpbmcsKSkKKworICAgIGRlZiB0ZXN0X2lzX2VuYWJsZWRfZm9yKHNlbGYpOgorICAgICAgICBvbGRfZGlzYWJsZSA9IHNlbGYuYWRhcHRlci5sb2dnZXIubWFuYWdlci5kaXNhYmxlCisgICAgICAgIHNlbGYuYWRhcHRlci5sb2dnZXIubWFuYWdlci5kaXNhYmxlID0gMzMKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNldGF0dHIsIHNlbGYuYWRhcHRlci5sb2dnZXIubWFuYWdlciwgJ2Rpc2FibGUnLAorICAgICAgICAgICAgICAgICAgICAgICAgb2xkX2Rpc2FibGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uoc2VsZi5hZGFwdGVyLmlzRW5hYmxlZEZvcigzMikpCisKKyAgICBkZWYgdGVzdF9oYXNfaGFuZGxlcnMoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLmFkYXB0ZXIuaGFzSGFuZGxlcnMoKSkKKworICAgICAgICBmb3IgaGFuZGxlciBpbiBzZWxmLmxvZ2dlci5oYW5kbGVyczoKKyAgICAgICAgICAgIHNlbGYubG9nZ2VyLnJlbW92ZUhhbmRsZXIoaGFuZGxlcikKKworICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNlbGYubG9nZ2VyLmhhc0hhbmRsZXJzKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uoc2VsZi5hZGFwdGVyLmhhc0hhbmRsZXJzKCkpCisKKworY2xhc3MgTG9nZ2VyVGVzdChCYXNlVGVzdCk6CisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKExvZ2dlclRlc3QsIHNlbGYpLnNldFVwKCkKKyAgICAgICAgc2VsZi5yZWNvcmRpbmcgPSBSZWNvcmRpbmdIYW5kbGVyKCkKKyAgICAgICAgc2VsZi5sb2dnZXIgPSBsb2dnaW5nLkxvZ2dlcihuYW1lPSdibGFoJykKKyAgICAgICAgc2VsZi5sb2dnZXIuYWRkSGFuZGxlcihzZWxmLnJlY29yZGluZykKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNlbGYubG9nZ2VyLnJlbW92ZUhhbmRsZXIsIHNlbGYucmVjb3JkaW5nKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2VsZi5yZWNvcmRpbmcuY2xvc2UpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChsb2dnaW5nLnNodXRkb3duKQorCisgICAgZGVmIHRlc3Rfc2V0X2ludmFsaWRfbGV2ZWwoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5sb2dnZXIuc2V0TGV2ZWwsIG9iamVjdCgpKQorCisgICAgZGVmIHRlc3RfZXhjZXB0aW9uKHNlbGYpOgorICAgICAgICBtc2cgPSAndGVzdGluZyBleGNlcHRpb246ICVyJworICAgICAgICBleGMgPSBOb25lCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIDEgLyAwCisgICAgICAgIGV4Y2VwdCBaZXJvRGl2aXNpb25FcnJvciBhcyBlOgorICAgICAgICAgICAgZXhjID0gZQorICAgICAgICAgICAgc2VsZi5sb2dnZXIuZXhjZXB0aW9uKG1zZywgc2VsZi5yZWNvcmRpbmcpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5yZWNvcmRpbmcucmVjb3JkcyksIDEpCisgICAgICAgIHJlY29yZCA9IHNlbGYucmVjb3JkaW5nLnJlY29yZHNbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQubGV2ZWxubywgbG9nZ2luZy5FUlJPUikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZWNvcmQubXNnLCBtc2cpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVjb3JkLmFyZ3MsIChzZWxmLnJlY29yZGluZywpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlY29yZC5leGNfaW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAoZXhjLl9fY2xhc3NfXywgZXhjLCBleGMuX190cmFjZWJhY2tfXykpCisKKyAgICBkZWYgdGVzdF9sb2dfaW52YWxpZF9sZXZlbF93aXRoX3JhaXNlKHNlbGYpOgorICAgICAgICBvbGRfcmFpc2UgPSBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucworICAgICAgICBzZWxmLmFkZENsZWFudXAoc2V0YXR0ciwgbG9nZ2luZywgJ3JhaXNlRXhlY3B0aW9ucycsIG9sZF9yYWlzZSkKKworICAgICAgICBsb2dnaW5nLnJhaXNlRXhjZXB0aW9ucyA9IFRydWUKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLmxvZ2dlci5sb2csICcxMCcsICd0ZXN0IG1lc3NhZ2UnKQorCisgICAgZGVmIHRlc3RfbG9nX2ludmFsaWRfbGV2ZWxfbm9fcmFpc2Uoc2VsZik6CisgICAgICAgIG9sZF9yYWlzZSA9IGxvZ2dpbmcucmFpc2VFeGNlcHRpb25zCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZXRhdHRyLCBsb2dnaW5nLCAncmFpc2VFeGVjcHRpb25zJywgb2xkX3JhaXNlKQorCisgICAgICAgIGxvZ2dpbmcucmFpc2VFeGNlcHRpb25zID0gRmFsc2UKKyAgICAgICAgc2VsZi5sb2dnZXIubG9nKCcxMCcsICd0ZXN0IG1lc3NhZ2UnKSAgIyBubyBleGNlcHRpb24gaGFwcGVucworCisgICAgZGVmIHRlc3RfZmluZF9jYWxsZXJfd2l0aF9zdGFja19pbmZvKHNlbGYpOgorICAgICAgICBjYWxsZWQgPSBbXQorICAgICAgICBwYXRjaChzZWxmLCBsb2dnaW5nLnRyYWNlYmFjaywgJ3ByaW50X3N0YWNrJywKKyAgICAgICAgICAgICAgbGFtYmRhIGYsIGZpbGU6IGNhbGxlZC5hcHBlbmQoZmlsZS5nZXR2YWx1ZSgpKSkKKworICAgICAgICBzZWxmLmxvZ2dlci5maW5kQ2FsbGVyKHN0YWNrX2luZm89VHJ1ZSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjYWxsZWQpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdTdGFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KTpcbicsIGNhbGxlZFswXSkKKworICAgIGRlZiB0ZXN0X21ha2VfcmVjb3JkX3dpdGhfZXh0cmFfb3ZlcndyaXRlKHNlbGYpOgorICAgICAgICBuYW1lID0gJ215IHJlY29yZCcKKyAgICAgICAgbGV2ZWwgPSAxMworICAgICAgICBmbiA9IGxubyA9IG1zZyA9IGFyZ3MgPSBleGNfaW5mbyA9IGZ1bmMgPSBzaW5mbyA9IE5vbmUKKyAgICAgICAgcnYgPSBsb2dnaW5nLl9sb2dSZWNvcmRGYWN0b3J5KG5hbWUsIGxldmVsLCBmbiwgbG5vLCBtc2csIGFyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGNfaW5mbywgZnVuYywgc2luZm8pCisKKyAgICAgICAgZm9yIGtleSBpbiAoJ21lc3NhZ2UnLCAnYXNjdGltZScpICsgdHVwbGUocnYuX19kaWN0X18ua2V5cygpKToKKyAgICAgICAgICAgIGV4dHJhID0ge2tleTogJ3NvbWUgdmFsdWUnfQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoS2V5RXJyb3IsIHNlbGYubG9nZ2VyLm1ha2VSZWNvcmQsIG5hbWUsIGxldmVsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm4sIGxubywgbXNnLCBhcmdzLCBleGNfaW5mbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhPWV4dHJhLCBzaW5mbz1zaW5mbykKKworICAgIGRlZiB0ZXN0X21ha2VfcmVjb3JkX3dpdGhfZXh0cmFfbm9fb3ZlcndyaXRlKHNlbGYpOgorICAgICAgICBuYW1lID0gJ215IHJlY29yZCcKKyAgICAgICAgbGV2ZWwgPSAxMworICAgICAgICBmbiA9IGxubyA9IG1zZyA9IGFyZ3MgPSBleGNfaW5mbyA9IGZ1bmMgPSBzaW5mbyA9IE5vbmUKKyAgICAgICAgZXh0cmEgPSB7J3ZhbGlkX2tleSc6ICdzb21lIHZhbHVlJ30KKyAgICAgICAgcmVzdWx0ID0gc2VsZi5sb2dnZXIubWFrZVJlY29yZChuYW1lLCBsZXZlbCwgZm4sIGxubywgbXNnLCBhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4Y19pbmZvLCBleHRyYT1leHRyYSwgc2luZm89c2luZm8pCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oJ3ZhbGlkX2tleScsIHJlc3VsdC5fX2RpY3RfXykKKworICAgIGRlZiB0ZXN0X2hhc19oYW5kbGVycyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubG9nZ2VyLmhhc0hhbmRsZXJzKCkpCisKKyAgICAgICAgZm9yIGhhbmRsZXIgaW4gc2VsZi5sb2dnZXIuaGFuZGxlcnM6CisgICAgICAgICAgICBzZWxmLmxvZ2dlci5yZW1vdmVIYW5kbGVyKGhhbmRsZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uoc2VsZi5sb2dnZXIuaGFzSGFuZGxlcnMoKSkKKworICAgIGRlZiB0ZXN0X2hhc19oYW5kbGVyc19ub19wcm9wYWdhdGUoc2VsZik6CisgICAgICAgIGNoaWxkX2xvZ2dlciA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKCdibGFoLmNoaWxkJykKKyAgICAgICAgY2hpbGRfbG9nZ2VyLnByb3BhZ2F0ZSA9IEZhbHNlCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoY2hpbGRfbG9nZ2VyLmhhc0hhbmRsZXJzKCkpCisKKyAgICBkZWYgdGVzdF9pc19lbmFibGVkX2ZvcihzZWxmKToKKyAgICAgICAgb2xkX2Rpc2FibGUgPSBzZWxmLmxvZ2dlci5tYW5hZ2VyLmRpc2FibGUKKyAgICAgICAgc2VsZi5sb2dnZXIubWFuYWdlci5kaXNhYmxlID0gMjMKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNldGF0dHIsIHNlbGYubG9nZ2VyLm1hbmFnZXIsICdkaXNhYmxlJywgb2xkX2Rpc2FibGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uoc2VsZi5sb2dnZXIuaXNFbmFibGVkRm9yKDIyKSkKKworICAgIGRlZiB0ZXN0X3Jvb3RfbG9nZ2VyX2FsaWFzZXMoc2VsZik6CisgICAgICAgIHJvb3QgPSBsb2dnaW5nLmdldExvZ2dlcigpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocm9vdCwgbG9nZ2luZy5yb290KQorICAgICAgICBzZWxmLmFzc2VydElzKHJvb3QsIGxvZ2dpbmcuZ2V0TG9nZ2VyKE5vbmUpKQorICAgICAgICBzZWxmLmFzc2VydElzKHJvb3QsIGxvZ2dpbmcuZ2V0TG9nZ2VyKCcnKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyb290LCBsb2dnaW5nLmdldExvZ2dlcignZm9vJykucm9vdCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyb290LCBsb2dnaW5nLmdldExvZ2dlcignZm9vLmJhcicpLnJvb3QpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocm9vdCwgbG9nZ2luZy5nZXRMb2dnZXIoJ2ZvbycpLnBhcmVudCkKKworICAgICAgICBzZWxmLmFzc2VydElzTm90KHJvb3QsIGxvZ2dpbmcuZ2V0TG9nZ2VyKCdcMCcpKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KHJvb3QsIGxvZ2dpbmcuZ2V0TG9nZ2VyKCdmb28uYmFyJykucGFyZW50KQorCisgICAgZGVmIHRlc3RfaW52YWxpZF9uYW1lcyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsb2dnaW5nLmdldExvZ2dlciwgYW55KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGxvZ2dpbmcuZ2V0TG9nZ2VyLCBiJ2ZvbycpCisKKwogY2xhc3MgQmFzZUZpbGVUZXN0KEJhc2VUZXN0KToKICAgICAiQmFzZSBjbGFzcyBmb3IgaGFuZGxlciB0ZXN0cyB0aGF0IHdyaXRlIGxvZyBmaWxlcyIKIApAQCAtMjIzNywxMCArMzU0OCwyMSBAQAogICAgIGRlZiBhc3NlcnRMb2dGaWxlKHNlbGYsIGZpbGVuYW1lKToKICAgICAgICAgIkFzc2VydCBhIGxvZyBmaWxlIGlzIHRoZXJlIGFuZCByZWdpc3RlciBpdCBmb3IgZGVsZXRpb24iCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhmaWxlbmFtZSksCi0gICAgICAgICAgICAgICAgICAgICAgICBtc2c9IkxvZyBmaWxlICVyIGRvZXMgbm90IGV4aXN0IikKKyAgICAgICAgICAgICAgICAgICAgICAgIG1zZz0iTG9nIGZpbGUgJXIgZG9lcyBub3QgZXhpc3QiICUgZmlsZW5hbWUpCiAgICAgICAgIHNlbGYucm1maWxlcy5hcHBlbmQoZmlsZW5hbWUpCiAKIAorY2xhc3MgRmlsZUhhbmRsZXJUZXN0KEJhc2VGaWxlVGVzdCk6CisgICAgZGVmIHRlc3RfZGVsYXkoc2VsZik6CisgICAgICAgIG9zLnVubGluayhzZWxmLmZuKQorICAgICAgICBmaCA9IGxvZ2dpbmcuRmlsZUhhbmRsZXIoc2VsZi5mbiwgZGVsYXk9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoZmguc3RyZWFtKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKHNlbGYuZm4pKQorICAgICAgICBmaC5oYW5kbGUobG9nZ2luZy5tYWtlTG9nUmVjb3JkKHt9KSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdE5vbmUoZmguc3RyZWFtKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMoc2VsZi5mbikpCisgICAgICAgIGZoLmNsb3NlKCkKKwogY2xhc3MgUm90YXRpbmdGaWxlSGFuZGxlclRlc3QoQmFzZUZpbGVUZXN0KToKICAgICBkZWYgbmV4dF9yZWMoc2VsZik6CiAgICAgICAgIHJldHVybiBsb2dnaW5nLkxvZ1JlY29yZCgnbicsIGxvZ2dpbmcuREVCVUcsICdwJywgMSwKQEAgLTIyNjYsMjAgKzM1ODgsMTA4IEBACiAgICAgICAgIHJoLmNsb3NlKCkKIAogICAgIGRlZiB0ZXN0X3JvbGxvdmVyX2ZpbGVuYW1lcyhzZWxmKToKKyAgICAgICAgZGVmIG5hbWVyKG5hbWUpOgorICAgICAgICAgICAgcmV0dXJuIG5hbWUgKyAiLnRlc3QiCiAgICAgICAgIHJoID0gbG9nZ2luZy5oYW5kbGVycy5Sb3RhdGluZ0ZpbGVIYW5kbGVyKAogICAgICAgICAgICAgc2VsZi5mbiwgYmFja3VwQ291bnQ9MiwgbWF4Qnl0ZXM9MSkKKyAgICAgICAgcmgubmFtZXIgPSBuYW1lcgogICAgICAgICByaC5lbWl0KHNlbGYubmV4dF9yZWMoKSkKICAgICAgICAgc2VsZi5hc3NlcnRMb2dGaWxlKHNlbGYuZm4pCiAgICAgICAgIHJoLmVtaXQoc2VsZi5uZXh0X3JlYygpKQotICAgICAgICBzZWxmLmFzc2VydExvZ0ZpbGUoc2VsZi5mbiArICIuMSIpCisgICAgICAgIHNlbGYuYXNzZXJ0TG9nRmlsZShuYW1lcihzZWxmLmZuICsgIi4xIikpCiAgICAgICAgIHJoLmVtaXQoc2VsZi5uZXh0X3JlYygpKQotICAgICAgICBzZWxmLmFzc2VydExvZ0ZpbGUoc2VsZi5mbiArICIuMiIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoc2VsZi5mbiArICIuMyIpKQorICAgICAgICBzZWxmLmFzc2VydExvZ0ZpbGUobmFtZXIoc2VsZi5mbiArICIuMiIpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKG5hbWVyKHNlbGYuZm4gKyAiLjMiKSkpCisgICAgICAgIHJoLmNsb3NlKCkKKworICAgIGRlZiB0ZXN0X3JvdGF0b3Ioc2VsZik6CisgICAgICAgIGRlZiBuYW1lcihuYW1lKToKKyAgICAgICAgICAgIHJldHVybiBuYW1lICsgIi5neiIKKworICAgICAgICBkZWYgcm90YXRvcihzb3VyY2UsIGRlc3QpOgorICAgICAgICAgICAgd2l0aCBvcGVuKHNvdXJjZSwgInJiIikgYXMgc2Y6CisgICAgICAgICAgICAgICAgZGF0YSA9IHNmLnJlYWQoKQorICAgICAgICAgICAgICAgIGNvbXByZXNzZWQgPSB6bGliLmNvbXByZXNzKGRhdGEsIDkpCisgICAgICAgICAgICAgICAgd2l0aCBvcGVuKGRlc3QsICJ3YiIpIGFzIGRmOgorICAgICAgICAgICAgICAgICAgICBkZi53cml0ZShjb21wcmVzc2VkKQorICAgICAgICAgICAgb3MucmVtb3ZlKHNvdXJjZSkKKworICAgICAgICByaCA9IGxvZ2dpbmcuaGFuZGxlcnMuUm90YXRpbmdGaWxlSGFuZGxlcigKKyAgICAgICAgICAgIHNlbGYuZm4sIGJhY2t1cENvdW50PTIsIG1heEJ5dGVzPTEpCisgICAgICAgIHJoLnJvdGF0b3IgPSByb3RhdG9yCisgICAgICAgIHJoLm5hbWVyID0gbmFtZXIKKyAgICAgICAgbTEgPSBzZWxmLm5leHRfcmVjKCkKKyAgICAgICAgcmguZW1pdChtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRMb2dGaWxlKHNlbGYuZm4pCisgICAgICAgIG0yID0gc2VsZi5uZXh0X3JlYygpCisgICAgICAgIHJoLmVtaXQobTIpCisgICAgICAgIGZuID0gbmFtZXIoc2VsZi5mbiArICIuMSIpCisgICAgICAgIHNlbGYuYXNzZXJ0TG9nRmlsZShmbikKKyAgICAgICAgbmV3bGluZSA9IG9zLmxpbmVzZXAKKyAgICAgICAgd2l0aCBvcGVuKGZuLCAicmIiKSBhcyBmOgorICAgICAgICAgICAgY29tcHJlc3NlZCA9IGYucmVhZCgpCisgICAgICAgICAgICBkYXRhID0gemxpYi5kZWNvbXByZXNzKGNvbXByZXNzZWQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRhdGEuZGVjb2RlKCJhc2NpaSIpLCBtMS5tc2cgKyBuZXdsaW5lKQorICAgICAgICByaC5lbWl0KHNlbGYubmV4dF9yZWMoKSkKKyAgICAgICAgZm4gPSBuYW1lcihzZWxmLmZuICsgIi4yIikKKyAgICAgICAgc2VsZi5hc3NlcnRMb2dGaWxlKGZuKQorICAgICAgICB3aXRoIG9wZW4oZm4sICJyYiIpIGFzIGY6CisgICAgICAgICAgICBjb21wcmVzc2VkID0gZi5yZWFkKCkKKyAgICAgICAgICAgIGRhdGEgPSB6bGliLmRlY29tcHJlc3MoY29tcHJlc3NlZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGF0YS5kZWNvZGUoImFzY2lpIiksIG0xLm1zZyArIG5ld2xpbmUpCisgICAgICAgIHJoLmVtaXQoc2VsZi5uZXh0X3JlYygpKQorICAgICAgICBmbiA9IG5hbWVyKHNlbGYuZm4gKyAiLjIiKQorICAgICAgICB3aXRoIG9wZW4oZm4sICJyYiIpIGFzIGY6CisgICAgICAgICAgICBjb21wcmVzc2VkID0gZi5yZWFkKCkKKyAgICAgICAgICAgIGRhdGEgPSB6bGliLmRlY29tcHJlc3MoY29tcHJlc3NlZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGF0YS5kZWNvZGUoImFzY2lpIiksIG0yLm1zZyArIG5ld2xpbmUpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMobmFtZXIoc2VsZi5mbiArICIuMyIpKSkKICAgICAgICAgcmguY2xvc2UoKQogCiBjbGFzcyBUaW1lZFJvdGF0aW5nRmlsZUhhbmRsZXJUZXN0KEJhc2VGaWxlVGVzdCk6Ci0gICAgIyB0ZXN0IG1ldGhvZHMgYWRkZWQgYmVsb3cKLSAgICBwYXNzCisgICAgIyBvdGhlciB0ZXN0IG1ldGhvZHMgYWRkZWQgYmVsb3cKKyAgICBkZWYgdGVzdF9yb2xsb3ZlcihzZWxmKToKKyAgICAgICAgZmggPSBsb2dnaW5nLmhhbmRsZXJzLlRpbWVkUm90YXRpbmdGaWxlSGFuZGxlcihzZWxmLmZuLCAnUycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja3VwQ291bnQ9MSkKKyAgICAgICAgciA9IGxvZ2dpbmcubWFrZUxvZ1JlY29yZCh7J21zZyc6ICd0ZXN0aW5nJ30pCisgICAgICAgIGZoLmVtaXQocikKKyAgICAgICAgc2VsZi5hc3NlcnRMb2dGaWxlKHNlbGYuZm4pCisgICAgICAgIHRpbWUuc2xlZXAoMS4wMSkgICAgIyBqdXN0IGEgbGl0dGxlIG92ZXIgYSBzZWNvbmQgLi4uCisgICAgICAgIGZoLmVtaXQocikKKyAgICAgICAgZmguY2xvc2UoKQorICAgICAgICAjIEF0IHRoaXMgcG9pbnQsIHdlIHNob3VsZCBoYXZlIGEgcmVjZW50IHJvdGF0ZWQgZmlsZSB3aGljaCB3ZQorICAgICAgICAjIGNhbiB0ZXN0IGZvciB0aGUgZXhpc3RlbmNlIG9mLiBIb3dldmVyLCBpbiBwcmFjdGljZSwgb24gc29tZQorICAgICAgICAjIG1hY2hpbmVzIHdoaWNoIHJ1biByZWFsbHkgc2xvd2x5LCB3ZSBkb24ndCBrbm93IGhvdyBmYXIgYmFjaworICAgICAgICAjIGluIHRpbWUgdG8gZ28gdG8gbG9vayBmb3IgdGhlIGxvZyBmaWxlLiBTbywgd2UgZ28gYmFjayBhIGZhaXIKKyAgICAgICAgIyBiaXQsIGFuZCBzdG9wIGFzIHNvb24gYXMgd2Ugc2VlIGEgcm90YXRlZCBmaWxlLiBJbiB0aGVvcnkgdGhpcworICAgICAgICAjIGNvdWxkIG9mIGNvdXJzZSBzdGlsbCBmYWlsLCBidXQgdGhlIGNoYW5jZXMgYXJlIGxvd2VyLgorICAgICAgICBmb3VuZCA9IEZhbHNlCisgICAgICAgIG5vdyA9IGRhdGV0aW1lLmRhdGV0aW1lLm5vdygpCisgICAgICAgIEdPX0JBQ0sgPSA1ICogNjAgIyBzZWNvbmRzCisgICAgICAgIGZvciBzZWNzIGluIHJhbmdlKEdPX0JBQ0spOgorICAgICAgICAgICAgcHJldiA9IG5vdyAtIGRhdGV0aW1lLnRpbWVkZWx0YShzZWNvbmRzPXNlY3MpCisgICAgICAgICAgICBmbiA9IHNlbGYuZm4gKyBwcmV2LnN0cmZ0aW1lKCIuJVktJW0tJWRfJUgtJU0tJVMiKQorICAgICAgICAgICAgZm91bmQgPSBvcy5wYXRoLmV4aXN0cyhmbikKKyAgICAgICAgICAgIGlmIGZvdW5kOgorICAgICAgICAgICAgICAgIHNlbGYucm1maWxlcy5hcHBlbmQoZm4pCisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgbXNnID0gJ05vIHJvdGF0ZWQgZmlsZXMgZm91bmQsIHdlbnQgYmFjayAlZCBzZWNvbmRzJyAlIEdPX0JBQ0sKKyAgICAgICAgaWYgbm90IGZvdW5kOgorICAgICAgICAgICAgI3ByaW50IGFkZGl0aW9uYWwgZGlhZ25vc3RpY3MKKyAgICAgICAgICAgIGRuLCBmbiA9IG9zLnBhdGguc3BsaXQoc2VsZi5mbikKKyAgICAgICAgICAgIGZpbGVzID0gW2YgZm9yIGYgaW4gb3MubGlzdGRpcihkbikgaWYgZi5zdGFydHN3aXRoKGZuKV0KKyAgICAgICAgICAgIHByaW50KCdUZXN0IHRpbWU6ICVzJyAlIG5vdy5zdHJmdGltZSgiJVktJW0tJWQgJUgtJU0tJVMiKSwgZmlsZT1zeXMuc3RkZXJyKQorICAgICAgICAgICAgcHJpbnQoJ1RoZSBvbmx5IG1hdGNoaW5nIGZpbGVzIGFyZTogJXMnICUgZmlsZXMsIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGZvdW5kLCBtc2c9bXNnKQorCisgICAgZGVmIHRlc3RfaW52YWxpZChzZWxmKToKKyAgICAgICAgYXNzZXJ0UmFpc2VzID0gc2VsZi5hc3NlcnRSYWlzZXMKKyAgICAgICAgYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGxvZ2dpbmcuaGFuZGxlcnMuVGltZWRSb3RhdGluZ0ZpbGVIYW5kbGVyLAorICAgICAgICAgICAgICAgICAgICAgc2VsZi5mbiwgJ1gnLCBkZWxheT1UcnVlKQorICAgICAgICBhc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbG9nZ2luZy5oYW5kbGVycy5UaW1lZFJvdGF0aW5nRmlsZUhhbmRsZXIsCisgICAgICAgICAgICAgICAgICAgICBzZWxmLmZuLCAnVycsIGRlbGF5PVRydWUpCisgICAgICAgIGFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBsb2dnaW5nLmhhbmRsZXJzLlRpbWVkUm90YXRpbmdGaWxlSGFuZGxlciwKKyAgICAgICAgICAgICAgICAgICAgIHNlbGYuZm4sICdXNycsIGRlbGF5PVRydWUpCiAKIGRlZiBzZWNzKCoqa3cpOgogICAgIHJldHVybiBkYXRldGltZS50aW1lZGVsdGEoKiprdykgLy8gZGF0ZXRpbWUudGltZWRlbHRhKHNlY29uZHM9MSkKQEAgLTIzMjgsMTkgKzM3MzgsNTEgQEAKICAgICAgICAgcmguY2xvc2UoKQogICAgIHNldGF0dHIoVGltZWRSb3RhdGluZ0ZpbGVIYW5kbGVyVGVzdCwgInRlc3RfY29tcHV0ZV9yb2xsb3Zlcl8lcyIgJSB3aGVuLCB0ZXN0X2NvbXB1dGVfcm9sbG92ZXIpCiAKKworQHVuaXR0ZXN0LnNraXBVbmxlc3Mod2luMzJldnRsb2csICd3aW4zMmV2dGxvZy93aW4zMmV2dGxvZ3V0aWwgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgTlRFdmVudExvZ0hhbmRsZXJUZXN0KEJhc2VUZXN0KToKKyAgICBkZWYgdGVzdF9iYXNpYyhzZWxmKToKKyAgICAgICAgbG9ndHlwZSA9ICdBcHBsaWNhdGlvbicKKyAgICAgICAgZWxoID0gd2luMzJldnRsb2cuT3BlbkV2ZW50TG9nKE5vbmUsIGxvZ3R5cGUpCisgICAgICAgIG51bV9yZWNzID0gd2luMzJldnRsb2cuR2V0TnVtYmVyT2ZFdmVudExvZ1JlY29yZHMoZWxoKQorICAgICAgICBoID0gbG9nZ2luZy5oYW5kbGVycy5OVEV2ZW50TG9nSGFuZGxlcigndGVzdF9sb2dnaW5nJykKKyAgICAgICAgciA9IGxvZ2dpbmcubWFrZUxvZ1JlY29yZCh7J21zZyc6ICdUZXN0IExvZyBNZXNzYWdlJ30pCisgICAgICAgIGguaGFuZGxlKHIpCisgICAgICAgIGguY2xvc2UoKQorICAgICAgICAjIE5vdyBzZWUgaWYgdGhlIGV2ZW50IGlzIHJlY29yZGVkCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShudW1fcmVjcyA8IHdpbjMyZXZ0bG9nLkdldE51bWJlck9mRXZlbnRMb2dSZWNvcmRzKGVsaCkpCisgICAgICAgIGZsYWdzID0gd2luMzJldnRsb2cuRVZFTlRMT0dfQkFDS1dBUkRTX1JFQUQgfCBcCisgICAgICAgICAgICAgICAgd2luMzJldnRsb2cuRVZFTlRMT0dfU0VRVUVOVElBTF9SRUFECisgICAgICAgIGZvdW5kID0gRmFsc2UKKyAgICAgICAgR09fQkFDSyA9IDEwMAorICAgICAgICBldmVudHMgPSB3aW4zMmV2dGxvZy5SZWFkRXZlbnRMb2coZWxoLCBmbGFncywgR09fQkFDSykKKyAgICAgICAgZm9yIGUgaW4gZXZlbnRzOgorICAgICAgICAgICAgaWYgZS5Tb3VyY2VOYW1lICE9ICd0ZXN0X2xvZ2dpbmcnOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBtc2cgPSB3aW4zMmV2dGxvZ3V0aWwuU2FmZUZvcm1hdE1lc3NhZ2UoZSwgbG9ndHlwZSkKKyAgICAgICAgICAgIGlmIG1zZyAhPSAnVGVzdCBMb2cgTWVzc2FnZVxyXG4nOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBmb3VuZCA9IFRydWUKKyAgICAgICAgICAgIGJyZWFrCisgICAgICAgIG1zZyA9ICdSZWNvcmQgbm90IGZvdW5kIGluIGV2ZW50IGxvZywgd2VudCBiYWNrICVkIHJlY29yZHMnICUgR09fQkFDSworICAgICAgICBzZWxmLmFzc2VydFRydWUoZm91bmQsIG1zZz1tc2cpCisKICMgU2V0IHRoZSBsb2NhbGUgdG8gdGhlIHBsYXRmb3JtLWRlcGVuZGVudCBkZWZhdWx0LiAgSSBoYXZlIG5vIGlkZWEKICMgd2h5IHRoZSB0ZXN0IGRvZXMgdGhpcywgYnV0IGluIGFueSBjYXNlIHdlIHNhdmUgdGhlIGN1cnJlbnQgbG9jYWxlCiAjIGZpcnN0IGFuZCByZXN0b3JlIGl0IGF0IHRoZSBlbmQuCiBAcnVuX3dpdGhfbG9jYWxlKCdMQ19BTEwnLCAnJykKIGRlZiB0ZXN0X21haW4oKToKICAgICBydW5fdW5pdHRlc3QoQnVpbHRpbkxldmVsc1Rlc3QsIEJhc2ljRmlsdGVyVGVzdCwKLSAgICAgICAgICAgICAgICAgQ3VzdG9tTGV2ZWxzQW5kRmlsdGVyc1Rlc3QsIE1lbW9yeUhhbmRsZXJUZXN0LAotICAgICAgICAgICAgICAgICBDb25maWdGaWxlVGVzdCwgU29ja2V0SGFuZGxlclRlc3QsIE1lbW9yeVRlc3QsCi0gICAgICAgICAgICAgICAgIEVuY29kaW5nVGVzdCwgV2FybmluZ3NUZXN0LCBDb25maWdEaWN0VGVzdCwgTWFuYWdlclRlc3QsCi0gICAgICAgICAgICAgICAgIEZvcm1hdHRlclRlc3QsCi0gICAgICAgICAgICAgICAgIExvZ1JlY29yZEZhY3RvcnlUZXN0LCBDaGlsZExvZ2dlclRlc3QsIFF1ZXVlSGFuZGxlclRlc3QsCi0gICAgICAgICAgICAgICAgIFJvdGF0aW5nRmlsZUhhbmRsZXJUZXN0LAotICAgICAgICAgICAgICAgICBMYXN0UmVzb3J0VGVzdCwKKyAgICAgICAgICAgICAgICAgQ3VzdG9tTGV2ZWxzQW5kRmlsdGVyc1Rlc3QsIEhhbmRsZXJUZXN0LCBNZW1vcnlIYW5kbGVyVGVzdCwKKyAgICAgICAgICAgICAgICAgQ29uZmlnRmlsZVRlc3QsIFNvY2tldEhhbmRsZXJUZXN0LCBEYXRhZ3JhbUhhbmRsZXJUZXN0LAorICAgICAgICAgICAgICAgICBNZW1vcnlUZXN0LCBFbmNvZGluZ1Rlc3QsIFdhcm5pbmdzVGVzdCwgQ29uZmlnRGljdFRlc3QsCisgICAgICAgICAgICAgICAgIE1hbmFnZXJUZXN0LCBGb3JtYXR0ZXJUZXN0LCBCdWZmZXJpbmdGb3JtYXR0ZXJUZXN0LAorICAgICAgICAgICAgICAgICBTdHJlYW1IYW5kbGVyVGVzdCwgTG9nUmVjb3JkRmFjdG9yeVRlc3QsIENoaWxkTG9nZ2VyVGVzdCwKKyAgICAgICAgICAgICAgICAgUXVldWVIYW5kbGVyVGVzdCwgU2h1dGRvd25UZXN0LCBNb2R1bGVMZXZlbE1pc2NUZXN0LAorICAgICAgICAgICAgICAgICBCYXNpY0NvbmZpZ1Rlc3QsIExvZ2dlckFkYXB0ZXJUZXN0LCBMb2dnZXJUZXN0LAorICAgICAgICAgICAgICAgICBTTVRQSGFuZGxlclRlc3QsIEZpbGVIYW5kbGVyVGVzdCwgUm90YXRpbmdGaWxlSGFuZGxlclRlc3QsCisgICAgICAgICAgICAgICAgIExhc3RSZXNvcnRUZXN0LCBMb2dSZWNvcmRUZXN0LCBFeGNlcHRpb25UZXN0LAorICAgICAgICAgICAgICAgICBTeXNMb2dIYW5kbGVyVGVzdCwgSFRUUEhhbmRsZXJUZXN0LCBOVEV2ZW50TG9nSGFuZGxlclRlc3QsCiAgICAgICAgICAgICAgICAgIFRpbWVkUm90YXRpbmdGaWxlSGFuZGxlclRlc3QKICAgICAgICAgICAgICAgICApCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbG9uZy5weSBiL0xpYi90ZXN0L3Rlc3RfbG9uZy5weQppbmRleCAwNDA2NmVjLi4wNWIzZTNlIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X2xvbmcucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9sb25nLnB5CkBAIC00Myw2ICs0Myw1MyBAQAogREJMX01BTlRfRElHID0gc3lzLmZsb2F0X2luZm8ubWFudF9kaWcKIERCTF9NSU5fT1ZFUkZMT1cgPSAyKipEQkxfTUFYX0VYUCAtIDIqKihEQkxfTUFYX0VYUCAtIERCTF9NQU5UX0RJRyAtIDEpCiAKKworIyBQdXJlIFB5dGhvbiB2ZXJzaW9uIG9mIGNvcnJlY3RseS1yb3VuZGVkIGludGVnZXItdG8tZmxvYXQgY29udmVyc2lvbi4KK2RlZiBpbnRfdG9fZmxvYXQobik6CisgICAgIiIiCisgICAgQ29ycmVjdGx5LXJvdW5kZWQgaW50ZWdlci10by1mbG9hdCBjb252ZXJzaW9uLgorCisgICAgIiIiCisgICAgIyBDb25zdGFudHMsIGRlcGVuZGluZyBvbmx5IG9uIHRoZSBmbG9hdGluZy1wb2ludCBmb3JtYXQgaW4gdXNlLgorICAgICMgV2UgdXNlIGFuIGV4dHJhIDIgYml0cyBvZiBwcmVjaXNpb24gZm9yIHJvdW5kaW5nIHB1cnBvc2VzLgorICAgIFBSRUNJU0lPTiA9IHN5cy5mbG9hdF9pbmZvLm1hbnRfZGlnICsgMgorICAgIFNISUZUX01BWCA9IHN5cy5mbG9hdF9pbmZvLm1heF9leHAgLSBQUkVDSVNJT04KKyAgICBRX01BWCA9IDEgPDwgUFJFQ0lTSU9OCisgICAgUk9VTkRfSEFMRl9UT19FVkVOX0NPUlJFQ1RJT04gPSBbMCwgLTEsIC0yLCAxLCAwLCAtMSwgMiwgMV0KKworICAgICMgUmVkdWNlIHRvIHRoZSBjYXNlIHdoZXJlIG4gaXMgcG9zaXRpdmUuCisgICAgaWYgbiA9PSAwOgorICAgICAgICByZXR1cm4gMC4wCisgICAgZWxpZiBuIDwgMDoKKyAgICAgICAgcmV0dXJuIC1pbnRfdG9fZmxvYXQoLW4pCisKKyAgICAjIENvbnZlcnQgbiB0byBhICdmbG9hdGluZy1wb2ludCcgbnVtYmVyIHEgKiAyKipzaGlmdCwgd2hlcmUgcSBpcyBhbgorICAgICMgaW50ZWdlciB3aXRoICdQUkVDSVNJT04nIHNpZ25pZmljYW50IGJpdHMuICBXaGVuIHNoaWZ0aW5nIG4gdG8gY3JlYXRlIHEsCisgICAgIyB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQgYml0IG9mIHEgaXMgdHJlYXRlZCBhcyAnc3RpY2t5Jy4gIFRoYXQgaXMsIHRoZQorICAgICMgbGVhc3Qgc2lnbmlmaWNhbnQgYml0IG9mIHEgaXMgc2V0IGlmIGVpdGhlciB0aGUgY29ycmVzcG9uZGluZyBiaXQgb2YgbgorICAgICMgd2FzIGFscmVhZHkgc2V0LCBvciBhbnkgb25lIG9mIHRoZSBiaXRzIG9mIG4gbG9zdCBpbiB0aGUgc2hpZnQgd2FzIHNldC4KKyAgICBzaGlmdCA9IG4uYml0X2xlbmd0aCgpIC0gUFJFQ0lTSU9OCisgICAgcSA9IG4gPDwgLXNoaWZ0IGlmIHNoaWZ0IDwgMCBlbHNlIChuID4+IHNoaWZ0KSB8IGJvb2wobiAmIH4oLTEgPDwgc2hpZnQpKQorCisgICAgIyBSb3VuZCBoYWxmIHRvIGV2ZW4gKGFjdHVhbGx5IHJvdW5kcyB0byB0aGUgbmVhcmVzdCBtdWx0aXBsZSBvZiA0LAorICAgICMgcm91bmRpbmcgdGllcyB0byBhIG11bHRpcGxlIG9mIDgpLgorICAgIHEgKz0gUk9VTkRfSEFMRl9UT19FVkVOX0NPUlJFQ1RJT05bcSAmIDddCisKKyAgICAjIERldGVjdCBvdmVyZmxvdy4KKyAgICBpZiBzaGlmdCArIChxID09IFFfTUFYKSA+IFNISUZUX01BWDoKKyAgICAgICAgcmFpc2UgT3ZlcmZsb3dFcnJvcigiaW50ZWdlciB0b28gbGFyZ2UgdG8gY29udmVydCB0byBmbG9hdCIpCisKKyAgICAjIENoZWNrczogcSBpcyBleGFjdGx5IHJlcHJlc2VudGFibGUsIGFuZCBxKioyKipzaGlmdCBkb2Vzbid0IG92ZXJmbG93LgorICAgIGFzc2VydCBxICUgNCA9PSAwIGFuZCBxIC8vIDQgPD0gMioqKHN5cy5mbG9hdF9pbmZvLm1hbnRfZGlnKQorICAgIGFzc2VydCBxICogMioqc2hpZnQgPD0gc3lzLmZsb2F0X2luZm8ubWF4CisKKyAgICAjIFNvbWUgY2lyY3VsYXJpdHkgaGVyZSwgc2luY2UgZmxvYXQocSkgaXMgZG9pbmcgYW4gaW50LXRvLWZsb2F0CisgICAgIyBjb252ZXJzaW9uLiAgQnV0IGhlcmUgcSBpcyBvZiBib3VuZGVkIHNpemUsIGFuZCBpcyBleGFjdGx5IHJlcHJlc2VudGFibGUKKyAgICAjIGFzIGEgZmxvYXQuICBJbiBhIGxvdy1sZXZlbCBDLWxpa2UgbGFuZ3VhZ2UsIHRoaXMgb3BlcmF0aW9uIHdvdWxkIGJlIGEKKyAgICAjIHNpbXBsZSBjYXN0IChlLmcuLCBmcm9tIHVuc2lnbmVkIGxvbmcgbG9uZyB0byBkb3VibGUpLgorICAgIHJldHVybiBtYXRoLmxkZXhwKGZsb2F0KHEpLCBzaGlmdCkKKworCiAjIHB1cmUgUHl0aG9uIHZlcnNpb24gb2YgY29ycmVjdGx5LXJvdW5kZWQgdHJ1ZSBkaXZpc2lvbgogZGVmIHRydWVkaXYoYSwgYik6CiAgICAgIiIiQ29ycmVjdGx5LXJvdW5kZWQgdHJ1ZSBkaXZpc2lvbiBmb3IgaW50ZWdlcnMuIiIiCkBAIC0zNjcsNiArNDE0LDIzIEBACiAgICAgICAgICAgICAgICAgcmV0dXJuIDE3MjkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpbnQoTG9uZ1RydW5jKCkpLCAxNzI5KQogCisgICAgZGVmIGNoZWNrX2Zsb2F0X2NvbnZlcnNpb24oc2VsZiwgbik6CisgICAgICAgICMgQ2hlY2sgdGhhdCBpbnQgLT4gZmxvYXQgY29udmVyc2lvbiBiZWhhdmlvdXIgbWF0Y2hlcworICAgICAgICAjIHRoYXQgb2YgdGhlIHB1cmUgUHl0aG9uIHZlcnNpb24gYWJvdmUuCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGFjdHVhbCA9IGZsb2F0KG4pCisgICAgICAgIGV4Y2VwdCBPdmVyZmxvd0Vycm9yOgorICAgICAgICAgICAgYWN0dWFsID0gJ292ZXJmbG93JworCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGV4cGVjdGVkID0gaW50X3RvX2Zsb2F0KG4pCisgICAgICAgIGV4Y2VwdCBPdmVyZmxvd0Vycm9yOgorICAgICAgICAgICAgZXhwZWN0ZWQgPSAnb3ZlcmZsb3cnCisKKyAgICAgICAgbXNnID0gKCJFcnJvciBpbiBjb252ZXJzaW9uIG9mIGludGVnZXIge30gdG8gZmxvYXQuICAiCisgICAgICAgICAgICAgICAiR290IHt9LCBleHBlY3RlZCB7fS4iLmZvcm1hdChuLCBhY3R1YWwsIGV4cGVjdGVkKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhY3R1YWwsIGV4cGVjdGVkLCBtc2cpCisKICAgICBAc3VwcG9ydC5yZXF1aXJlc19JRUVFXzc1NAogICAgIGRlZiB0ZXN0X2Zsb2F0X2NvbnZlcnNpb24oc2VsZik6CiAKQEAgLTQyMSw2ICs0ODUsMjIgQEAKICAgICAgICAgICAgIHkgPSAyKipwICogMioqNTMKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaW50KGZsb2F0KHgpKSwgeSkKIAorICAgICAgICAjIENvbXBhcmUgYnVpbHRpbiBmbG9hdCBjb252ZXJzaW9uIHdpdGggcHVyZSBQeXRob24gaW50X3RvX2Zsb2F0CisgICAgICAgICMgZnVuY3Rpb24gYWJvdmUuCisgICAgICAgIHRlc3RfdmFsdWVzID0gWworICAgICAgICAgICAgaW50X2RibF9tYXgtMSwgaW50X2RibF9tYXgsIGludF9kYmxfbWF4KzEsCisgICAgICAgICAgICBoYWxmd2F5LTEsIGhhbGZ3YXksIGhhbGZ3YXkgKyAxLAorICAgICAgICAgICAgdG9wX3Bvd2VyLTEsIHRvcF9wb3dlciwgdG9wX3Bvd2VyKzEsCisgICAgICAgICAgICAyKnRvcF9wb3dlci0xLCAyKnRvcF9wb3dlciwgdG9wX3Bvd2VyKnRvcF9wb3dlciwKKyAgICAgICAgXQorICAgICAgICB0ZXN0X3ZhbHVlcy5leHRlbmQoZXhhY3RfdmFsdWVzKQorICAgICAgICBmb3IgcCBpbiByYW5nZSgtNCwgOCk6CisgICAgICAgICAgICBmb3IgeCBpbiByYW5nZSgtMTI4LCAxMjgpOgorICAgICAgICAgICAgICAgIHRlc3RfdmFsdWVzLmFwcGVuZCgyKioocCs1MykgKyB4KQorICAgICAgICBmb3IgdmFsdWUgaW4gdGVzdF92YWx1ZXM6CisgICAgICAgICAgICBzZWxmLmNoZWNrX2Zsb2F0X2NvbnZlcnNpb24odmFsdWUpCisgICAgICAgICAgICBzZWxmLmNoZWNrX2Zsb2F0X2NvbnZlcnNpb24oLXZhbHVlKQorCiAgICAgZGVmIHRlc3RfZmxvYXRfb3ZlcmZsb3coc2VsZik6CiAgICAgICAgIGZvciB4IGluIC0yLjAsIC0xLjAsIDAuMCwgMS4wLCAyLjA6CiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZsb2F0KGludCh4KSksIHgpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X2x6bWEucHkgYi9MaWIvdGVzdC90ZXN0X2x6bWEucHkKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGQzZGY5MgotLS0gL2Rldi9udWxsCisrKyBiL0xpYi90ZXN0L3Rlc3RfbHptYS5weQpAQCAtMCwwICsxLDEzMzUgQEAKK2Zyb20gaW8gaW1wb3J0IEJ5dGVzSU8sIFVuc3VwcG9ydGVkT3BlcmF0aW9uCitpbXBvcnQgb3MKK2ltcG9ydCByYW5kb20KK2ltcG9ydCB1bml0dGVzdAorCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgKAorICAgIF80RywgVEVTVEZOLCBpbXBvcnRfbW9kdWxlLCBiaWdtZW10ZXN0LCBydW5fdW5pdHRlc3QsIHVubGluaworKQorCitsem1hID0gaW1wb3J0X21vZHVsZSgibHptYSIpCitmcm9tIGx6bWEgaW1wb3J0IExaTUFDb21wcmVzc29yLCBMWk1BRGVjb21wcmVzc29yLCBMWk1BRXJyb3IsIExaTUFGaWxlCisKKworY2xhc3MgQ29tcHJlc3NvckRlY29tcHJlc3NvclRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgICMgVGVzdCBlcnJvciBjYXNlcy4KKworICAgIGRlZiB0ZXN0X3NpbXBsZV9iYWRfYXJncyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBMWk1BQ29tcHJlc3NvciwgW10pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTFpNQUNvbXByZXNzb3IsIGZvcm1hdD0zLjQ1KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIExaTUFDb21wcmVzc29yLCBjaGVjaz0iIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBMWk1BQ29tcHJlc3NvciwgcHJlc2V0PSJhc2RmIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBMWk1BQ29tcHJlc3NvciwgZmlsdGVycz0zKQorICAgICAgICAjIENhbid0IHNwZWNpZnkgRk9STUFUX0FVVE8gd2hlbiBjb21wcmVzc2luZy4KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgTFpNQUNvbXByZXNzb3IsIGZvcm1hdD1sem1hLkZPUk1BVF9BVVRPKQorICAgICAgICAjIENhbid0IHNwZWNpZnkgYSBwcmVzZXQgYW5kIGEgY3VzdG9tIGZpbHRlciBjaGFpbiBhdCB0aGUgc2FtZSB0aW1lLgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUNvbXByZXNzb3IocHJlc2V0PTcsIGZpbHRlcnM9W3siaWQiOiBsem1hLkZJTFRFUl9MWk1BMn1dKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTFpNQURlY29tcHJlc3NvciwgKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgTFpNQURlY29tcHJlc3NvciwgbWVtbGltaXQ9YiJxdyIpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPSJ6enoiKQorICAgICAgICAjIENhbm5vdCBzcGVjaWZ5IGEgbWVtb3J5IGxpbWl0IHdpdGggRklMVEVSX1JBVy4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfUkFXLCBtZW1saW1pdD0weDEwMDAwMDApCisgICAgICAgICMgQ2FuIG9ubHkgc3BlY2lmeSBhIGN1c3RvbSBmaWx0ZXIgY2hhaW4gd2l0aCBGSUxURVJfUkFXLgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBMWk1BRGVjb21wcmVzc29yLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzEpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRGVjb21wcmVzc29yKGZvcm1hdD1sem1hLkZPUk1BVF9YWiwgZmlsdGVycz1GSUxURVJTX1JBV18xKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQURlY29tcHJlc3Nvcihmb3JtYXQ9bHptYS5GT1JNQVRfQUxPTkUsIGZpbHRlcnM9RklMVEVSU19SQVdfMSkKKworICAgICAgICBsemMgPSBMWk1BQ29tcHJlc3NvcigpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbHpjLmNvbXByZXNzKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGx6Yy5jb21wcmVzcywgYiJmb28iLCBiImJhciIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbHpjLmZsdXNoLCBiImJsYWgiKQorICAgICAgICBlbXB0eSA9IGx6Yy5mbHVzaCgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGx6Yy5jb21wcmVzcywgYiJxdXV4IikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbHpjLmZsdXNoKQorCisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGx6ZC5kZWNvbXByZXNzKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGx6ZC5kZWNvbXByZXNzLCBiImZvbyIsIGIiYmFyIikKKyAgICAgICAgbHpkLmRlY29tcHJlc3MoZW1wdHkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEVPRkVycm9yLCBsemQuZGVjb21wcmVzcywgYiJxdXV4IikKKworICAgIGRlZiB0ZXN0X2JhZF9maWx0ZXJfc3BlYyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBMWk1BQ29tcHJlc3NvciwgZmlsdGVycz1bYiJ3b2JzaXRlIl0pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIExaTUFDb21wcmVzc29yLCBmaWx0ZXJzPVt7Inh5enp5IjogM31dKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBMWk1BQ29tcHJlc3NvciwgZmlsdGVycz1beyJpZCI6IDk4NzY1fV0pCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BQ29tcHJlc3NvcihmaWx0ZXJzPVt7ImlkIjogbHptYS5GSUxURVJfTFpNQTIsICJmb28iOiAwfV0pCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BQ29tcHJlc3NvcihmaWx0ZXJzPVt7ImlkIjogbHptYS5GSUxURVJfREVMVEEsICJmb28iOiAwfV0pCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BQ29tcHJlc3NvcihmaWx0ZXJzPVt7ImlkIjogbHptYS5GSUxURVJfWDg2LCAiZm9vIjogMH1dKQorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc29yX2FmdGVyX2VvZihzZWxmKToKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3NvcigpCisgICAgICAgIGx6ZC5kZWNvbXByZXNzKENPTVBSRVNTRURfWFopCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEVPRkVycm9yLCBsemQuZGVjb21wcmVzcywgYiJueWFuIikKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3Nvcl9tZW1saW1pdChzZWxmKToKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3NvcihtZW1saW1pdD0xMDI0KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IsIGx6ZC5kZWNvbXByZXNzLCBDT01QUkVTU0VEX1haKQorCisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfWFosIG1lbWxpbWl0PTEwMjQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvciwgbHpkLmRlY29tcHJlc3MsIENPTVBSRVNTRURfWFopCisKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3Nvcihsem1hLkZPUk1BVF9BTE9ORSwgbWVtbGltaXQ9MTAyNCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yLCBsemQuZGVjb21wcmVzcywgQ09NUFJFU1NFRF9BTE9ORSkKKworICAgICMgVGVzdCBMWk1BRGVjb21wcmVzc29yIG9uIGtub3duLWdvb2QgaW5wdXQgZGF0YS4KKworICAgIGRlZiBfdGVzdF9kZWNvbXByZXNzb3Ioc2VsZiwgbHpkLCBkYXRhLCBjaGVjaywgdW51c2VkX2RhdGE9YiIiKToKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShsemQuZW9mKQorICAgICAgICBvdXQgPSBsemQuZGVjb21wcmVzcyhkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG91dCwgSU5QVVQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobHpkLmNoZWNrLCBjaGVjaykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGx6ZC5lb2YpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobHpkLnVudXNlZF9kYXRhLCB1bnVzZWRfZGF0YSkKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3Nvcl9hdXRvKHNlbGYpOgorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBDT01QUkVTU0VEX1haLCBsem1hLkNIRUNLX0NSQzY0KQorCisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IoKQorICAgICAgICBzZWxmLl90ZXN0X2RlY29tcHJlc3NvcihsemQsIENPTVBSRVNTRURfQUxPTkUsIGx6bWEuQ0hFQ0tfTk9ORSkKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3Nvcl94eihzZWxmKToKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3Nvcihsem1hLkZPUk1BVF9YWikKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBDT01QUkVTU0VEX1haLCBsem1hLkNIRUNLX0NSQzY0KQorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc29yX2Fsb25lKHNlbGYpOgorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKGx6bWEuRk9STUFUX0FMT05FKQorICAgICAgICBzZWxmLl90ZXN0X2RlY29tcHJlc3NvcihsemQsIENPTVBSRVNTRURfQUxPTkUsIGx6bWEuQ0hFQ0tfTk9ORSkKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3Nvcl9yYXdfMShzZWxmKToKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3Nvcihsem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMSkKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBDT01QUkVTU0VEX1JBV18xLCBsem1hLkNIRUNLX05PTkUpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfcmF3XzIoc2VsZik6CisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzIpCisgICAgICAgIHNlbGYuX3Rlc3RfZGVjb21wcmVzc29yKGx6ZCwgQ09NUFJFU1NFRF9SQVdfMiwgbHptYS5DSEVDS19OT05FKQorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc29yX3Jhd18zKHNlbGYpOgorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKGx6bWEuRk9STUFUX1JBVywgZmlsdGVycz1GSUxURVJTX1JBV18zKQorICAgICAgICBzZWxmLl90ZXN0X2RlY29tcHJlc3NvcihsemQsIENPTVBSRVNTRURfUkFXXzMsIGx6bWEuQ0hFQ0tfTk9ORSkKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3Nvcl9yYXdfNChzZWxmKToKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3Nvcihsem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfNCkKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBDT01QUkVTU0VEX1JBV180LCBsem1hLkNIRUNLX05PTkUpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfY2h1bmtzKHNlbGYpOgorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgb3V0ID0gW10KKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMCwgbGVuKENPTVBSRVNTRURfWFopLCAxMCk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGx6ZC5lb2YpCisgICAgICAgICAgICBvdXQuYXBwZW5kKGx6ZC5kZWNvbXByZXNzKENPTVBSRVNTRURfWFpbaTppKzEwXSkpCisgICAgICAgIG91dCA9IGIiIi5qb2luKG91dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXQsIElOUFVUKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGx6ZC5jaGVjaywgbHptYS5DSEVDS19DUkM2NCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGx6ZC5lb2YpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobHpkLnVudXNlZF9kYXRhLCBiIiIpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfdW51c2VkX2RhdGEoc2VsZik6CisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IoKQorICAgICAgICBleHRyYSA9IGIiZm9vYmxpYmFyIgorICAgICAgICBzZWxmLl90ZXN0X2RlY29tcHJlc3NvcihsemQsIENPTVBSRVNTRURfWFogKyBleHRyYSwgbHptYS5DSEVDS19DUkM2NCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW51c2VkX2RhdGE9ZXh0cmEpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfYmFkX2lucHV0KHNlbGYpOgorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yLCBsemQuZGVjb21wcmVzcywgQ09NUFJFU1NFRF9SQVdfMSkKKworICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKGx6bWEuRk9STUFUX1haKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IsIGx6ZC5kZWNvbXByZXNzLCBDT01QUkVTU0VEX0FMT05FKQorCisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IobHptYS5GT1JNQVRfQUxPTkUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvciwgbHpkLmRlY29tcHJlc3MsIENPTVBSRVNTRURfWFopCisKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3Nvcihsem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yLCBsemQuZGVjb21wcmVzcywgQ09NUFJFU1NFRF9YWikKKworICAgICMgVGVzdCB0aGF0IExaTUFDb21wcmVzc29yLT5MWk1BRGVjb21wcmVzc29yIHByZXNlcnZlcyB0aGUgaW5wdXQgZGF0YS4KKworICAgIGRlZiB0ZXN0X3JvdW5kdHJpcF94eihzZWxmKToKKyAgICAgICAgbHpjID0gTFpNQUNvbXByZXNzb3IoKQorICAgICAgICBjZGF0YSA9IGx6Yy5jb21wcmVzcyhJTlBVVCkgKyBsemMuZmx1c2goKQorICAgICAgICBsemQgPSBMWk1BRGVjb21wcmVzc29yKCkKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBjZGF0YSwgbHptYS5DSEVDS19DUkM2NCkKKworICAgIGRlZiB0ZXN0X3JvdW5kdHJpcF9hbG9uZShzZWxmKToKKyAgICAgICAgbHpjID0gTFpNQUNvbXByZXNzb3IobHptYS5GT1JNQVRfQUxPTkUpCisgICAgICAgIGNkYXRhID0gbHpjLmNvbXByZXNzKElOUFVUKSArIGx6Yy5mbHVzaCgpCisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IoKQorICAgICAgICBzZWxmLl90ZXN0X2RlY29tcHJlc3NvcihsemQsIGNkYXRhLCBsem1hLkNIRUNLX05PTkUpCisKKyAgICBkZWYgdGVzdF9yb3VuZHRyaXBfcmF3KHNlbGYpOgorICAgICAgICBsemMgPSBMWk1BQ29tcHJlc3Nvcihsem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfNCkKKyAgICAgICAgY2RhdGEgPSBsemMuY29tcHJlc3MoSU5QVVQpICsgbHpjLmZsdXNoKCkKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3Nvcihsem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfNCkKKyAgICAgICAgc2VsZi5fdGVzdF9kZWNvbXByZXNzb3IobHpkLCBjZGF0YSwgbHptYS5DSEVDS19OT05FKQorCisgICAgZGVmIHRlc3Rfcm91bmR0cmlwX2NodW5rcyhzZWxmKToKKyAgICAgICAgbHpjID0gTFpNQUNvbXByZXNzb3IoKQorICAgICAgICBjZGF0YSA9IFtdCisgICAgICAgIGZvciBpIGluIHJhbmdlKDAsIGxlbihJTlBVVCksIDEwKToKKyAgICAgICAgICAgIGNkYXRhLmFwcGVuZChsemMuY29tcHJlc3MoSU5QVVRbaTppKzEwXSkpCisgICAgICAgIGNkYXRhLmFwcGVuZChsemMuZmx1c2goKSkKKyAgICAgICAgY2RhdGEgPSBiIiIuam9pbihjZGF0YSkKKyAgICAgICAgbHpkID0gTFpNQURlY29tcHJlc3NvcigpCisgICAgICAgIHNlbGYuX3Rlc3RfZGVjb21wcmVzc29yKGx6ZCwgY2RhdGEsIGx6bWEuQ0hFQ0tfQ1JDNjQpCisKKyAgICAjIExaTUFEZWNvbXByZXNzb3IgaW50ZW50aW9uYWxseSBkb2VzIG5vdCBoYW5kbGUgY29uY2F0ZW5hdGVkIHN0cmVhbXMuCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzb3JfbXVsdGlzdHJlYW0oc2VsZik6CisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IoKQorICAgICAgICBzZWxmLl90ZXN0X2RlY29tcHJlc3NvcihsemQsIENPTVBSRVNTRURfWFogKyBDT01QUkVTU0VEX0FMT05FLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsem1hLkNIRUNLX0NSQzY0LCB1bnVzZWRfZGF0YT1DT01QUkVTU0VEX0FMT05FKQorCisgICAgIyBUZXN0IHdpdGggaW5wdXRzIGxhcmdlciB0aGFuIDRHaUIuCisKKyAgICBAYmlnbWVtdGVzdChzaXplPV80RyArIDEwMCwgbWVtdXNlPTIpCisgICAgZGVmIHRlc3RfY29tcHJlc3Nvcl9iaWdtZW0oc2VsZiwgc2l6ZSk6CisgICAgICAgIGx6YyA9IExaTUFDb21wcmVzc29yKCkKKyAgICAgICAgY2RhdGEgPSBsemMuY29tcHJlc3MoYiJ4IiAqIHNpemUpICsgbHpjLmZsdXNoKCkKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoY2RhdGEpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGRkYXRhKSwgc2l6ZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGRkYXRhLnN0cmlwKGIieCIpKSwgMCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGRkYXRhID0gTm9uZQorCisgICAgQGJpZ21lbXRlc3Qoc2l6ZT1fNEcgKyAxMDAsIG1lbXVzZT0zKQorICAgIGRlZiB0ZXN0X2RlY29tcHJlc3Nvcl9iaWdtZW0oc2VsZiwgc2l6ZSk6CisgICAgICAgIGx6ZCA9IExaTUFEZWNvbXByZXNzb3IoKQorICAgICAgICBibG9ja3NpemUgPSAxMCAqIDEwMjQgKiAxMDI0CisgICAgICAgIGJsb2NrID0gcmFuZG9tLmdldHJhbmRiaXRzKGJsb2Nrc2l6ZSAqIDgpLnRvX2J5dGVzKGJsb2Nrc2l6ZSwgImxpdHRsZSIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGlucHV0ID0gYmxvY2sgKiAoc2l6ZSAvLyBibG9ja3NpemUgKyAxKQorICAgICAgICAgICAgY2RhdGEgPSBsem1hLmNvbXByZXNzKGlucHV0KQorICAgICAgICAgICAgZGRhdGEgPSBsemQuZGVjb21wcmVzcyhjZGF0YSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIGlucHV0KQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgaW5wdXQgPSBjZGF0YSA9IGRkYXRhID0gTm9uZQorCisKK2NsYXNzIENvbXByZXNzRGVjb21wcmVzc0Z1bmN0aW9uVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgIyBUZXN0IGVycm9yIGNhc2VzOgorCisgICAgZGVmIHRlc3RfYmFkX2FyZ3Moc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbHptYS5jb21wcmVzcykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsem1hLmNvbXByZXNzLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsem1hLmNvbXByZXNzLCBiIiIsIGZvcm1hdD0ieHoiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGx6bWEuY29tcHJlc3MsIGIiIiwgY2hlY2s9Im5vbmUiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGx6bWEuY29tcHJlc3MsIGIiIiwgcHJlc2V0PSJibGFoIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsem1hLmNvbXByZXNzLCBiIiIsIGZpbHRlcnM9MTAyNCkKKyAgICAgICAgIyBDYW4ndCBzcGVjaWZ5IGEgcHJlc2V0IGFuZCBhIGN1c3RvbSBmaWx0ZXIgY2hhaW4gYXQgdGhlIHNhbWUgdGltZS4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuY29tcHJlc3MoYiIiLCBwcmVzZXQ9MywgZmlsdGVycz1beyJpZCI6IGx6bWEuRklMVEVSX0xaTUEyfV0pCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsem1hLmRlY29tcHJlc3MpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbHptYS5kZWNvbXByZXNzLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsem1hLmRlY29tcHJlc3MsIGIiIiwgZm9ybWF0PSJsem1hIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBsem1hLmRlY29tcHJlc3MsIGIiIiwgbWVtbGltaXQ9Ny4zZTkpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuZGVjb21wcmVzcyhiIiIsIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9e30pCisgICAgICAgICMgQ2Fubm90IHNwZWNpZnkgYSBtZW1vcnkgbGltaXQgd2l0aCBGSUxURVJfUkFXLgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgbHptYS5kZWNvbXByZXNzKGIiIiwgZm9ybWF0PWx6bWEuRk9STUFUX1JBVywgbWVtbGltaXQ9MHgxMDAwMDAwKQorICAgICAgICAjIENhbiBvbmx5IHNwZWNpZnkgYSBjdXN0b20gZmlsdGVyIGNoYWluIHdpdGggRklMVEVSX1JBVy4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuZGVjb21wcmVzcyhiIiIsIGZpbHRlcnM9RklMVEVSU19SQVdfMSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuZGVjb21wcmVzcyhiIiIsIGZvcm1hdD1sem1hLkZPUk1BVF9YWiwgZmlsdGVycz1GSUxURVJTX1JBV18xKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgbHptYS5kZWNvbXByZXNzKAorICAgICAgICAgICAgICAgICAgICBiIiIsIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSwgZmlsdGVycz1GSUxURVJTX1JBV18xKQorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc19tZW1saW1pdChzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IpOgorICAgICAgICAgICAgbHptYS5kZWNvbXByZXNzKENPTVBSRVNTRURfWFosIG1lbWxpbWl0PTEwMjQpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yKToKKyAgICAgICAgICAgIGx6bWEuZGVjb21wcmVzcygKKyAgICAgICAgICAgICAgICAgICAgQ09NUFJFU1NFRF9YWiwgZm9ybWF0PWx6bWEuRk9STUFUX1haLCBtZW1saW1pdD0xMDI0KQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvcik6CisgICAgICAgICAgICBsem1hLmRlY29tcHJlc3MoCisgICAgICAgICAgICAgICAgICAgIENPTVBSRVNTRURfQUxPTkUsIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSwgbWVtbGltaXQ9MTAyNCkKKworICAgICMgVGVzdCBMWk1BRGVjb21wcmVzc29yIG9uIGtub3duLWdvb2QgaW5wdXQgZGF0YS4KKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3NfZ29vZF9pbnB1dChzZWxmKToKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoQ09NUFJFU1NFRF9YWikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZGF0YSwgSU5QVVQpCisKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoQ09NUFJFU1NFRF9BTE9ORSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZGF0YSwgSU5QVVQpCisKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoQ09NUFJFU1NFRF9YWiwgbHptYS5GT1JNQVRfWFopCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIElOUFVUKQorCisgICAgICAgIGRkYXRhID0gbHptYS5kZWNvbXByZXNzKENPTVBSRVNTRURfQUxPTkUsIGx6bWEuRk9STUFUX0FMT05FKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRkYXRhLCBJTlBVVCkKKworICAgICAgICBkZGF0YSA9IGx6bWEuZGVjb21wcmVzcygKKyAgICAgICAgICAgICAgICBDT01QUkVTU0VEX1JBV18xLCBsem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZGF0YSwgSU5QVVQpCisKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoCisgICAgICAgICAgICAgICAgQ09NUFJFU1NFRF9SQVdfMiwgbHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIElOUFVUKQorCisgICAgICAgIGRkYXRhID0gbHptYS5kZWNvbXByZXNzKAorICAgICAgICAgICAgICAgIENPTVBSRVNTRURfUkFXXzMsIGx6bWEuRk9STUFUX1JBVywgZmlsdGVycz1GSUxURVJTX1JBV18zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRkYXRhLCBJTlBVVCkKKworICAgICAgICBkZGF0YSA9IGx6bWEuZGVjb21wcmVzcygKKyAgICAgICAgICAgICAgICBDT01QUkVTU0VEX1JBV180LCBsem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfNCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZGF0YSwgSU5QVVQpCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzX2luY29tcGxldGVfaW5wdXQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvciwgbHptYS5kZWNvbXByZXNzLCBDT01QUkVTU0VEX1haWzoxMjhdKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IsIGx6bWEuZGVjb21wcmVzcywgQ09NUFJFU1NFRF9BTE9ORVs6MTI4XSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yLCBsem1hLmRlY29tcHJlc3MsIENPTVBSRVNTRURfUkFXXzFbOjEyOF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yLCBsem1hLmRlY29tcHJlc3MsIENPTVBSRVNTRURfUkFXXzJbOjEyOF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yLCBsem1hLmRlY29tcHJlc3MsIENPTVBSRVNTRURfUkFXXzNbOjEyOF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yLCBsem1hLmRlY29tcHJlc3MsIENPTVBSRVNTRURfUkFXXzRbOjEyOF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfNCkKKworICAgIGRlZiB0ZXN0X2RlY29tcHJlc3NfYmFkX2lucHV0KHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvcik6CisgICAgICAgICAgICBsem1hLmRlY29tcHJlc3MoQ09NUFJFU1NFRF9SQVdfMSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IpOgorICAgICAgICAgICAgbHptYS5kZWNvbXByZXNzKENPTVBSRVNTRURfQUxPTkUsIGZvcm1hdD1sem1hLkZPUk1BVF9YWikKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IpOgorICAgICAgICAgICAgbHptYS5kZWNvbXByZXNzKENPTVBSRVNTRURfWFosIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IpOgorICAgICAgICAgICAgbHptYS5kZWNvbXByZXNzKENPTVBSRVNTRURfWFosIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVycz1GSUxURVJTX1JBV18xKQorCisgICAgIyBUZXN0IHRoYXQgY29tcHJlc3MoKS0+ZGVjb21wcmVzcygpIHByZXNlcnZlcyB0aGUgaW5wdXQgZGF0YS4KKworICAgIGRlZiB0ZXN0X3JvdW5kdHJpcChzZWxmKToKKyAgICAgICAgY2RhdGEgPSBsem1hLmNvbXByZXNzKElOUFVUKQorICAgICAgICBkZGF0YSA9IGx6bWEuZGVjb21wcmVzcyhjZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZGF0YSwgSU5QVVQpCisKKyAgICAgICAgY2RhdGEgPSBsem1hLmNvbXByZXNzKElOUFVULCBsem1hLkZPUk1BVF9YWikKKyAgICAgICAgZGRhdGEgPSBsem1hLmRlY29tcHJlc3MoY2RhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIElOUFVUKQorCisgICAgICAgIGNkYXRhID0gbHptYS5jb21wcmVzcyhJTlBVVCwgbHptYS5GT1JNQVRfQUxPTkUpCisgICAgICAgIGRkYXRhID0gbHptYS5kZWNvbXByZXNzKGNkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRkYXRhLCBJTlBVVCkKKworICAgICAgICBjZGF0YSA9IGx6bWEuY29tcHJlc3MoSU5QVVQsIGx6bWEuRk9STUFUX1JBVywgZmlsdGVycz1GSUxURVJTX1JBV180KQorICAgICAgICBkZGF0YSA9IGx6bWEuZGVjb21wcmVzcyhjZGF0YSwgbHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZGRhdGEsIElOUFVUKQorCisgICAgIyBVbmxpa2UgTFpNQURlY29tcHJlc3NvciwgZGVjb21wcmVzcygpICpkb2VzKiBoYW5kbGUgY29uY2F0ZW5hdGVkIHN0cmVhbXMuCisKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzX211bHRpc3RyZWFtKHNlbGYpOgorICAgICAgICBkZGF0YSA9IGx6bWEuZGVjb21wcmVzcyhDT01QUkVTU0VEX1haICsgQ09NUFJFU1NFRF9BTE9ORSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkZGF0YSwgSU5QVVQgKiAyKQorCisKK2NsYXNzIFRlbXBGaWxlOgorICAgICIiIkNvbnRleHQgbWFuYWdlciAtIGNyZWF0ZXMgYSBmaWxlLCBhbmQgZGVsZXRlcyBpdCBvbiBfX2V4aXRfXy4iIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBmaWxlbmFtZSwgZGF0YT1iIiIpOgorICAgICAgICBzZWxmLmZpbGVuYW1lID0gZmlsZW5hbWUKKyAgICAgICAgc2VsZi5kYXRhID0gZGF0YQorCisgICAgZGVmIF9fZW50ZXJfXyhzZWxmKToKKyAgICAgICAgd2l0aCBvcGVuKHNlbGYuZmlsZW5hbWUsICJ3YiIpIGFzIGY6CisgICAgICAgICAgICBmLndyaXRlKHNlbGYuZGF0YSkKKworICAgIGRlZiBfX2V4aXRfXyhzZWxmLCAqYXJncyk6CisgICAgICAgIHVubGluayhzZWxmLmZpbGVuYW1lKQorCisKK2NsYXNzIEZpbGVUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9pbml0KHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9ImEiKSBhcyBmOgorICAgICAgICAgICAgcGFzcworCisgICAgZGVmIHRlc3RfaW5pdF93aXRoX2ZpbGVuYW1lKHNlbGYpOgorICAgICAgICB3aXRoIFRlbXBGaWxlKFRFU1RGTiwgQ09NUFJFU1NFRF9YWik6CisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKFRFU1RGTikgYXMgZjoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKFRFU1RGTiwgInciKSBhcyBmOgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoVEVTVEZOLCAiYSIpIGFzIGY6CisgICAgICAgICAgICAgICAgcGFzcworCisgICAgZGVmIHRlc3RfaW5pdF9iYWRfbW9kZShzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgbW9kZT0oMywgIngiKSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgbW9kZT0iIikKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgbW9kZT0ieCIpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksIG1vZGU9InJiIikKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgbW9kZT0icisiKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLCBtb2RlPSJ3YiIpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksIG1vZGU9IncrIikKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgbW9kZT0icnciKQorCisgICAgZGVmIHRlc3RfaW5pdF9iYWRfY2hlY2soc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwgY2hlY2s9YiJhc2QiKQorICAgICAgICAjIENIRUNLX1VOS05PV04gYW5kIGFueXRoaW5nIGFib3ZlIENIRUNLX0lEX01BWCBzaG91bGQgYmUgaW52YWxpZC4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciLCBjaGVjaz1sem1hLkNIRUNLX1VOS05PV04pCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoTFpNQUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwgY2hlY2s9bHptYS5DSEVDS19JRF9NQVggKyAzKQorICAgICAgICAjIENhbm5vdCBzcGVjaWZ5IGEgY2hlY2sgd2l0aCBtb2RlPSJyIi4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgY2hlY2s9bHptYS5DSEVDS19OT05FKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLCBjaGVjaz1sem1hLkNIRUNLX0NSQzMyKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLCBjaGVjaz1sem1hLkNIRUNLX0NSQzY0KQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLCBjaGVjaz1sem1hLkNIRUNLX1NIQTI1NikKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSwgY2hlY2s9bHptYS5DSEVDS19VTktOT1dOKQorCisgICAgZGVmIHRlc3RfaW5pdF9iYWRfcHJlc2V0KHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsIHByZXNldD00LjM5KQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKExaTUFFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsIHByZXNldD0xMCkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhMWk1BRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciLCBwcmVzZXQ9MjMpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsIHByZXNldD0tMSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwgcHJlc2V0PS03KQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsIHByZXNldD0iZm9vIikKKyAgICAgICAgIyBDYW5ub3Qgc3BlY2lmeSBhIHByZXNldCB3aXRoIG1vZGU9InIiLgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLCBwcmVzZXQ9MykKKworICAgIGRlZiB0ZXN0X2luaXRfYmFkX2ZpbHRlcl9zcGVjKHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIsIGZpbHRlcnM9W2Iid29ic2l0ZSJdKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciLCBmaWx0ZXJzPVt7Inh5enp5IjogM31dKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciLCBmaWx0ZXJzPVt7ImlkIjogOTg3NjV9XSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwKKyAgICAgICAgICAgICAgICAgICAgIGZpbHRlcnM9W3siaWQiOiBsem1hLkZJTFRFUl9MWk1BMiwgImZvbyI6IDB9XSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwKKyAgICAgICAgICAgICAgICAgICAgIGZpbHRlcnM9W3siaWQiOiBsem1hLkZJTFRFUl9ERUxUQSwgImZvbyI6IDB9XSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IiwKKyAgICAgICAgICAgICAgICAgICAgIGZpbHRlcnM9W3siaWQiOiBsem1hLkZJTFRFUl9YODYsICJmb28iOiAwfV0pCisKKyAgICBkZWYgdGVzdF9pbml0X3dpdGhfcHJlc2V0X2FuZF9maWx0ZXJzKHNlbGYpOgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciLCBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLAorICAgICAgICAgICAgICAgICAgICAgcHJlc2V0PTYsICBmaWx0ZXJzPUZJTFRFUlNfUkFXXzEpCisKKyAgICBkZWYgdGVzdF9pbml0X3dpdGhfZmlsZW5hbWVfYW5kX2ZpbGVvYmooc2VsZik6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcik6CisgICAgICAgICAgICBMWk1BRmlsZSgiL2Rldi9udWxsIiwgZmlsZW9iaj1CeXRlc0lPKCkpCisKKyAgICBkZWYgdGVzdF9jbG9zZShzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKENPTVBSRVNTRURfWFopIGFzIHNyYzoKKyAgICAgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPXNyYykKKyAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICAgICAgIyBMWk1BRmlsZS5jbG9zZSgpIHNob3VsZCBub3QgY2xvc2UgdGhlIHVuZGVybHlpbmcgZmlsZSBvYmplY3QuCisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNyYy5jbG9zZWQpCisgICAgICAgICAgICAjIFRyeSBjbG9zaW5nIGFuIGFscmVhZHktY2xvc2VkIExaTUFGaWxlLgorICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHNyYy5jbG9zZWQpCisKKyAgICAgICAgIyBUZXN0IHdpdGggYSByZWFsIGZpbGUgb24gZGlzaywgb3BlbmVkIGRpcmVjdGx5IGJ5IExaTUFGaWxlLgorICAgICAgICB3aXRoIFRlbXBGaWxlKFRFU1RGTiwgQ09NUFJFU1NFRF9YWik6CisgICAgICAgICAgICBmID0gTFpNQUZpbGUoVEVTVEZOKQorICAgICAgICAgICAgZnAgPSBmLl9mcAorICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgICAgICAjIEhlcmUsIExaTUFGaWxlLmNsb3NlKCkgKnNob3VsZCogY2xvc2UgdGhlIHVuZGVybHlpbmcgZmlsZSBvYmplY3QuCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoZnAuY2xvc2VkKQorICAgICAgICAgICAgIyBUcnkgY2xvc2luZyBhbiBhbHJlYWR5LWNsb3NlZCBMWk1BRmlsZS4KKyAgICAgICAgICAgIGYuY2xvc2UoKQorCisgICAgZGVmIHRlc3RfY2xvc2VkKHNlbGYpOgorICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGYuY2xvc2VkKQorICAgICAgICAgICAgZi5yZWFkKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZi5jbG9zZWQpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGYuY2xvc2VkKQorCisgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZi5jbG9zZWQpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGYuY2xvc2VkKQorCisgICAgZGVmIHRlc3RfZmlsZW5vKHNlbGYpOgorICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbnN1cHBvcnRlZE9wZXJhdGlvbiwgZi5maWxlbm8pCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5maWxlbm8pCisgICAgICAgIHdpdGggVGVtcEZpbGUoVEVTVEZOLCBDT01QUkVTU0VEX1haKToKKyAgICAgICAgICAgIGYgPSBMWk1BRmlsZShURVNURk4pCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLmZpbGVubygpLCBmLl9mcC5maWxlbm8oKSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoZi5maWxlbm8oKSwgaW50KQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5maWxlbm8pCisKKyAgICBkZWYgdGVzdF9zZWVrYWJsZShzZWxmKToKKyAgICAgICAgZiA9IExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGYuc2Vla2FibGUoKSkKKyAgICAgICAgICAgIGYucmVhZCgpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoZi5zZWVrYWJsZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYuc2Vla2FibGUpCisKKyAgICAgICAgZiA9IExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShmLnNlZWthYmxlKCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5zZWVrYWJsZSkKKworICAgIGRlZiB0ZXN0X3JlYWRhYmxlKHNlbGYpOgorICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoZi5yZWFkYWJsZSgpKQorICAgICAgICAgICAgZi5yZWFkKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmLnJlYWRhYmxlKCkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5yZWFkYWJsZSkKKworICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKCksIG1vZGU9InciKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGYucmVhZGFibGUoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnJlYWRhYmxlKQorCisgICAgZGVmIHRlc3Rfd3JpdGFibGUoc2VsZik6CisgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZi53cml0YWJsZSgpKQorICAgICAgICAgICAgZi5yZWFkKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZi53cml0YWJsZSgpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYud3JpdGFibGUpCisKKyAgICAgICAgZiA9IExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGYud3JpdGFibGUoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIGYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLndyaXRhYmxlKQorCisgICAgZGVmIHRlc3RfcmVhZChzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIGIiIikKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9BTE9ORSkpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksCisgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0PWx6bWEuRk9STUFUX1haKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBiIiIpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfQUxPTkUpLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgYiIiKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1JBV18xKSwKKyAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzEpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIGIiIikKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9SQVdfMiksCisgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0PWx6bWEuRk9STUFUX1JBVywgZmlsdGVycz1GSUxURVJTX1JBV18yKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBiIiIpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfUkFXXzMpLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMykgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgYiIiKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1JBV180KSwKKyAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzQpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIGIiIikKKworICAgIGRlZiB0ZXN0X3JlYWRfMChzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgwKSwgYiIiKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX0FMT05FKSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKDApLCBiIiIpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9YWikgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKDApLCBiIiIpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfQUxPTkUpLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKDApLCBiIiIpCisKKyAgICBkZWYgdGVzdF9yZWFkXzEwKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGNodW5rcyA9IFtdCisgICAgICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgICAgIHJlc3VsdCA9IGYucmVhZCgxMCkKKyAgICAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKGxlbihyZXN1bHQpLCAxMCkKKyAgICAgICAgICAgICAgICBjaHVua3MuYXBwZW5kKHJlc3VsdCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiIiLmpvaW4oY2h1bmtzKSwgSU5QVVQpCisKKyAgICBkZWYgdGVzdF9yZWFkX211bHRpc3RyZWFtKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haICogNSkpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCAqIDUpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFogKyBDT01QUkVTU0VEX0FMT05FKSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUICogMikKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9SQVdfMyAqIDQpLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsIGZpbHRlcnM9RklMVEVSU19SQVdfMykgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUICogNCkKKworICAgIGRlZiB0ZXN0X3JlYWRfbXVsdGlzdHJlYW1fYnVmZmVyX3NpemVfYWxpZ25lZChzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoZSBjYXNlIHdoZXJlIGEgc3RyZWFtIGJvdW5kYXJ5IGNvaW5jaWRlcyB3aXRoIHRoZSBlbmQKKyAgICAgICAgIyBvZiB0aGUgcmF3IHJlYWQgYnVmZmVyLgorICAgICAgICBzYXZlZF9idWZmZXJfc2l6ZSA9IGx6bWEuX0JVRkZFUl9TSVpFCisgICAgICAgIGx6bWEuX0JVRkZFUl9TSVpFID0gbGVuKENPTVBSRVNTRURfWFopCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFogKiAgNSkpIGFzIGY6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVQgKiA1KQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgbHptYS5fQlVGRkVSX1NJWkUgPSBzYXZlZF9idWZmZXJfc2l6ZQorCisgICAgZGVmIHRlc3RfcmVhZF9mcm9tX2ZpbGUoc2VsZik6CisgICAgICAgIHdpdGggVGVtcEZpbGUoVEVTVEZOLCBDT01QUkVTU0VEX1haKToKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoVEVTVEZOKSBhcyBmOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIGIiIikKKworICAgIGRlZiB0ZXN0X3JlYWRfaW5jb21wbGV0ZShzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWls6MTI4XSkpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhFT0ZFcnJvciwgZi5yZWFkKQorCisgICAgZGVmIHRlc3RfcmVhZF9iYWRfYXJncyhzZWxmKToKKyAgICAgICAgZiA9IExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkKKyAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYucmVhZCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnJlYWQpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBmLnJlYWQsIE5vbmUpCisKKyAgICBkZWYgdGVzdF9yZWFkMShzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBibG9ja3MgPSBbXQorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBmLnJlYWQxKCkKKyAgICAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQocmVzdWx0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiIiIuam9pbihibG9ja3MpLCBJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkMSgpLCBiIiIpCisKKyAgICBkZWYgdGVzdF9yZWFkMV8wKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkMSgwKSwgYiIiKQorCisgICAgZGVmIHRlc3RfcmVhZDFfMTAoc2VsZik6CisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgYmxvY2tzID0gW10KKyAgICAgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gZi5yZWFkMSgxMCkKKyAgICAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIGJsb2Nrcy5hcHBlbmQocmVzdWx0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiIiIuam9pbihibG9ja3MpLCBJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkMSgpLCBiIiIpCisKKyAgICBkZWYgdGVzdF9yZWFkMV9tdWx0aXN0cmVhbShzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiAqIDUpKSBhcyBmOgorICAgICAgICAgICAgYmxvY2tzID0gW10KKyAgICAgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gZi5yZWFkMSgpCisgICAgICAgICAgICAgICAgaWYgbm90IHJlc3VsdDoKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICBibG9ja3MuYXBwZW5kKHJlc3VsdCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiIiLmpvaW4oYmxvY2tzKSwgSU5QVVQgKiA1KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQxKCksIGIiIikKKworICAgIGRlZiB0ZXN0X3JlYWQxX2JhZF9hcmdzKHNlbGYpOgorICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKQorICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5yZWFkMSkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnJlYWQxKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZi5yZWFkMSwgTm9uZSkKKworICAgIGRlZiB0ZXN0X3BlZWsoc2VsZik6CisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgcmVzdWx0ID0gZi5wZWVrKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihsZW4ocmVzdWx0KSwgMCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShJTlBVVC5zdGFydHN3aXRoKHJlc3VsdCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICByZXN1bHQgPSBmLnBlZWsoMTApCisgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIobGVuKHJlc3VsdCksIDApCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoSU5QVVQuc3RhcnRzd2l0aChyZXN1bHQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVQpCisKKyAgICBkZWYgdGVzdF9wZWVrX2JhZF9hcmdzKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IikgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYucGVlaykKKworICAgIGRlZiB0ZXN0X2l0ZXJhdG9yKHNlbGYpOgorICAgICAgICB3aXRoIEJ5dGVzSU8oSU5QVVQpIGFzIGY6CisgICAgICAgICAgICBsaW5lcyA9IGYucmVhZGxpbmVzKCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChsaXN0KGl0ZXIoZikpLCBsaW5lcykKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9BTE9ORSkpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChsaXN0KGl0ZXIoZikpLCBsaW5lcykKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiksCisgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0PWx6bWEuRk9STUFUX1haKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRMaXN0RXF1YWwobGlzdChpdGVyKGYpKSwgbGluZXMpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfQUxPTkUpLAorICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSkgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGlzdEVxdWFsKGxpc3QoaXRlcihmKSksIGxpbmVzKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1JBV18yKSwKKyAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQ9bHptYS5GT1JNQVRfUkFXLCBmaWx0ZXJzPUZJTFRFUlNfUkFXXzIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChsaXN0KGl0ZXIoZikpLCBsaW5lcykKKworICAgIGRlZiB0ZXN0X3JlYWRsaW5lKHNlbGYpOgorICAgICAgICB3aXRoIEJ5dGVzSU8oSU5QVVQpIGFzIGY6CisgICAgICAgICAgICBsaW5lcyA9IGYucmVhZGxpbmVzKCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBmb3IgbGluZSBpbiBsaW5lczoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZGxpbmUoKSwgbGluZSkKKworICAgIGRlZiB0ZXN0X3JlYWRsaW5lcyhzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKElOUFVUKSBhcyBmOgorICAgICAgICAgICAgbGluZXMgPSBmLnJlYWRsaW5lcygpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRMaXN0RXF1YWwoZi5yZWFkbGluZXMoKSwgbGluZXMpCisKKyAgICBkZWYgdGVzdF93cml0ZShzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKCkgYXMgZHN0OgorICAgICAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPWRzdCwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShJTlBVVCkKKyAgICAgICAgICAgIGV4cGVjdGVkID0gbHptYS5jb21wcmVzcyhJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0LmdldHZhbHVlKCksIGV4cGVjdGVkKQorICAgICAgICB3aXRoIEJ5dGVzSU8oKSBhcyBkc3Q6CisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9ZHN0LCBtb2RlPSJ3IiwgZm9ybWF0PWx6bWEuRk9STUFUX1haKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUoSU5QVVQpCisgICAgICAgICAgICBleHBlY3RlZCA9IGx6bWEuY29tcHJlc3MoSU5QVVQsIGZvcm1hdD1sem1hLkZPUk1BVF9YWikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0LmdldHZhbHVlKCksIGV4cGVjdGVkKQorICAgICAgICB3aXRoIEJ5dGVzSU8oKSBhcyBkc3Q6CisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9ZHN0LCBtb2RlPSJ3IiwgZm9ybWF0PWx6bWEuRk9STUFUX0FMT05FKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUoSU5QVVQpCisgICAgICAgICAgICBleHBlY3RlZCA9IGx6bWEuY29tcHJlc3MoSU5QVVQsIGZvcm1hdD1sem1hLkZPUk1BVF9BTE9ORSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0LmdldHZhbHVlKCksIGV4cGVjdGVkKQorICAgICAgICB3aXRoIEJ5dGVzSU8oKSBhcyBkc3Q6CisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9ZHN0LCBtb2RlPSJ3IiwgZm9ybWF0PWx6bWEuRk9STUFUX1JBVywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVycz1GSUxURVJTX1JBV18yKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUoSU5QVVQpCisgICAgICAgICAgICBleHBlY3RlZCA9IGx6bWEuY29tcHJlc3MoSU5QVVQsIGZvcm1hdD1sem1hLkZPUk1BVF9SQVcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVycz1GSUxURVJTX1JBV18yKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkc3QuZ2V0dmFsdWUoKSwgZXhwZWN0ZWQpCisKKyAgICBkZWYgdGVzdF93cml0ZV8xMChzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKCkgYXMgZHN0OgorICAgICAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPWRzdCwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICAgICAgZm9yIHN0YXJ0IGluIHJhbmdlKDAsIGxlbihJTlBVVCksIDEwKToKKyAgICAgICAgICAgICAgICAgICAgZi53cml0ZShJTlBVVFtzdGFydDpzdGFydCsxMF0pCisgICAgICAgICAgICBleHBlY3RlZCA9IGx6bWEuY29tcHJlc3MoSU5QVVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRzdC5nZXR2YWx1ZSgpLCBleHBlY3RlZCkKKworICAgIGRlZiB0ZXN0X3dyaXRlX2FwcGVuZChzZWxmKToKKyAgICAgICAgcGFydDEgPSBJTlBVVFs6MTAyNF0KKyAgICAgICAgcGFydDIgPSBJTlBVVFsxMDI0OjE1MzZdCisgICAgICAgIHBhcnQzID0gSU5QVVRbMTUzNjpdCisgICAgICAgIGV4cGVjdGVkID0gYiIiLmpvaW4obHptYS5jb21wcmVzcyh4KSBmb3IgeCBpbiAocGFydDEsIHBhcnQyLCBwYXJ0MykpCisgICAgICAgIHdpdGggQnl0ZXNJTygpIGFzIGRzdDoKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1kc3QsIG1vZGU9InciKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGUocGFydDEpCisgICAgICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9ZHN0LCBtb2RlPSJhIikgYXMgZjoKKyAgICAgICAgICAgICAgICBmLndyaXRlKHBhcnQyKQorICAgICAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPWRzdCwgbW9kZT0iYSIpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShwYXJ0MykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0LmdldHZhbHVlKCksIGV4cGVjdGVkKQorCisgICAgZGVmIHRlc3Rfd3JpdGVfdG9fZmlsZShzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgd2l0aCBMWk1BRmlsZShURVNURk4sICJ3IikgYXMgZjoKKyAgICAgICAgICAgICAgICBmLndyaXRlKElOUFVUKQorICAgICAgICAgICAgZXhwZWN0ZWQgPSBsem1hLmNvbXByZXNzKElOUFVUKQorICAgICAgICAgICAgd2l0aCBvcGVuKFRFU1RGTiwgInJiIikgYXMgZjoKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBleHBlY3RlZCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHVubGluayhURVNURk4pCisKKyAgICBkZWYgdGVzdF93cml0ZV9hcHBlbmRfdG9fZmlsZShzZWxmKToKKyAgICAgICAgcGFydDEgPSBJTlBVVFs6MTAyNF0KKyAgICAgICAgcGFydDIgPSBJTlBVVFsxMDI0OjE1MzZdCisgICAgICAgIHBhcnQzID0gSU5QVVRbMTUzNjpdCisgICAgICAgIGV4cGVjdGVkID0gYiIiLmpvaW4obHptYS5jb21wcmVzcyh4KSBmb3IgeCBpbiAocGFydDEsIHBhcnQyLCBwYXJ0MykpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoVEVTVEZOLCAidyIpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShwYXJ0MSkKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoVEVTVEZOLCAiYSIpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShwYXJ0MikKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoVEVTVEZOLCAiYSIpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShwYXJ0MykKKyAgICAgICAgICAgIHdpdGggb3BlbihURVNURk4sICJyYiIpIGFzIGY6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgZXhwZWN0ZWQpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICB1bmxpbmsoVEVTVEZOKQorCisgICAgZGVmIHRlc3Rfd3JpdGVfYmFkX2FyZ3Moc2VsZik6CisgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpCisgICAgICAgIGYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLndyaXRlLCBiImZvbyIpCisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopLCBtb2RlPSJyIikgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYud3JpdGUsIGIiYmFyIikKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGYud3JpdGUsIE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGYud3JpdGUsICJ0ZXh0IikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgZi53cml0ZSwgNzg5KQorCisgICAgZGVmIHRlc3Rfd3JpdGVsaW5lcyhzZWxmKToKKyAgICAgICAgd2l0aCBCeXRlc0lPKElOUFVUKSBhcyBmOgorICAgICAgICAgICAgbGluZXMgPSBmLnJlYWRsaW5lcygpCisgICAgICAgIHdpdGggQnl0ZXNJTygpIGFzIGRzdDoKKyAgICAgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1kc3QsIG1vZGU9InciKSBhcyBmOgorICAgICAgICAgICAgICAgIGYud3JpdGVsaW5lcyhsaW5lcykKKyAgICAgICAgICAgIGV4cGVjdGVkID0gbHptYS5jb21wcmVzcyhJTlBVVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHN0LmdldHZhbHVlKCksIGV4cGVjdGVkKQorCisgICAgZGVmIHRlc3Rfc2Vla19mb3J3YXJkKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGYuc2Vlayg1NTUpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVFs1NTU6XSkKKworICAgIGRlZiB0ZXN0X3NlZWtfZm9yd2FyZF9hY3Jvc3Nfc3RyZWFtcyhzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiAqIDIpKSBhcyBmOgorICAgICAgICAgICAgZi5zZWVrKGxlbihJTlBVVCkgKyAxMjMpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVFsxMjM6XSkKKworICAgIGRlZiB0ZXN0X3NlZWtfZm9yd2FyZF9yZWxhdGl2ZV90b19jdXJyZW50KHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGYucmVhZCgxMDApCisgICAgICAgICAgICBmLnNlZWsoMTIzNiwgMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUWzEzMzY6XSkKKworICAgIGRlZiB0ZXN0X3NlZWtfZm9yd2FyZF9yZWxhdGl2ZV90b19lbmQoc2VsZik6CisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgZi5zZWVrKC01NTUsIDIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBJTlBVVFstNTU1Ol0pCisKKyAgICBkZWYgdGVzdF9zZWVrX2JhY2t3YXJkKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGYucmVhZCgxMDAxKQorICAgICAgICAgICAgZi5zZWVrKDIxMSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5yZWFkKCksIElOUFVUWzIxMTpdKQorCisgICAgZGVmIHRlc3Rfc2Vla19iYWNrd2FyZF9hY3Jvc3Nfc3RyZWFtcyhzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWiAqIDIpKSBhcyBmOgorICAgICAgICAgICAgZi5yZWFkKGxlbihJTlBVVCkgKyAzMzMpCisgICAgICAgICAgICBmLnNlZWsoNzM3KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVRbNzM3Ol0gKyBJTlBVVCkKKworICAgIGRlZiB0ZXN0X3NlZWtfYmFja3dhcmRfcmVsYXRpdmVfdG9fZW5kKHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGYuc2VlaygtMTUwLCAyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVRbLTE1MDpdKQorCisgICAgZGVmIHRlc3Rfc2Vla19wYXN0X2VuZChzZWxmKToKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBmLnNlZWsobGVuKElOUFVUKSArIDkwMDEpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCBsZW4oSU5QVVQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgYiIiKQorCisgICAgZGVmIHRlc3Rfc2Vla19wYXN0X3N0YXJ0KHNlbGYpOgorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTyhDT01QUkVTU0VEX1haKSkgYXMgZjoKKyAgICAgICAgICAgIGYuc2VlaygtODgpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCAwKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnJlYWQoKSwgSU5QVVQpCisKKyAgICBkZWYgdGVzdF9zZWVrX2JhZF9hcmdzKHNlbGYpOgorICAgICAgICBmID0gTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKQorICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZi5zZWVrLCAwKQorICAgICAgICB3aXRoIExaTUFGaWxlKGZpbGVvYmo9Qnl0ZXNJTygpLCBtb2RlPSJ3IikgYXMgZjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGYuc2VlaywgMCkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnNlZWssIDAsIDMpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnNlZWssIDksICgpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBmLnNlZWssIE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGYuc2VlaywgYiJkZXJwIikKKworICAgIGRlZiB0ZXN0X3RlbGwoc2VsZik6CisgICAgICAgIHdpdGggTFpNQUZpbGUoZmlsZW9iaj1CeXRlc0lPKENPTVBSRVNTRURfWFopKSBhcyBmOgorICAgICAgICAgICAgcG9zID0gMAorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYudGVsbCgpLCBwb3MpCisgICAgICAgICAgICAgICAgcmVzdWx0ID0gZi5yZWFkKDE4MykKKyAgICAgICAgICAgICAgICBpZiBub3QgcmVzdWx0OgorICAgICAgICAgICAgICAgICAgICBicmVhaworICAgICAgICAgICAgICAgIHBvcyArPSBsZW4ocmVzdWx0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnRlbGwoKSwgbGVuKElOUFVUKSkKKyAgICAgICAgd2l0aCBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oKSwgbW9kZT0idyIpIGFzIGY6CisgICAgICAgICAgICBmb3IgcG9zIGluIHJhbmdlKDAsIGxlbihJTlBVVCksIDE0NCk6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnRlbGwoKSwgcG9zKQorICAgICAgICAgICAgICAgIGYud3JpdGUoSU5QVVRbcG9zOnBvcysxNDRdKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLnRlbGwoKSwgbGVuKElOUFVUKSkKKworICAgIGRlZiB0ZXN0X3RlbGxfYmFkX2FyZ3Moc2VsZik6CisgICAgICAgIGYgPSBMWk1BRmlsZShmaWxlb2JqPUJ5dGVzSU8oQ09NUFJFU1NFRF9YWikpCisgICAgICAgIGYuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmLnRlbGwpCisKKworY2xhc3MgTWlzY2VsbGFuZW91c1Rlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2lzX2NoZWNrX3N1cHBvcnRlZChzZWxmKToKKyAgICAgICAgIyBDSEVDS19OT05FIGFuZCBDSEVDS19DUkMzMiBzaG91bGQgYWx3YXlzIGJlIHN1cHBvcnRlZCwKKyAgICAgICAgIyByZWdhcmRsZXNzIG9mIHRoZSBvcHRpb25zIGxpYmx6bWEgd2FzIGNvbXBpbGVkIHdpdGguCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShsem1hLmNoZWNrX2lzX3N1cHBvcnRlZChsem1hLkNIRUNLX05PTkUpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUobHptYS5jaGVja19pc19zdXBwb3J0ZWQobHptYS5DSEVDS19DUkMzMikpCisKKyAgICAgICAgIyBUaGUgLnh6IGZvcm1hdCBzcGVjIGNhbm5vdCBzdG9yZSBjaGVjayBJRHMgYWJvdmUgdGhpcyB2YWx1ZS4KKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShsem1hLmNoZWNrX2lzX3N1cHBvcnRlZChsem1hLkNIRUNLX0lEX01BWCArIDEpKQorCisgICAgICAgICMgVGhpcyB2YWx1ZSBzaG91bGQgbm90IGJlIGEgdmFsaWQgY2hlY2sgSUQuCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UobHptYS5jaGVja19pc19zdXBwb3J0ZWQobHptYS5DSEVDS19VTktOT1dOKSkKKworCisjIFRlc3QgZGF0YToKKworSU5QVVQgPSBiIiIiCitMQUVSVEVTCisKKyAgICAgICBPLCBmZWFyIG1lIG5vdC4KKyAgICAgICBJIHN0YXkgdG9vIGxvbmc6IGJ1dCBoZXJlIG15IGZhdGhlciBjb21lcy4KKworICAgICAgIEVudGVyIFBPTE9OSVVTCisKKyAgICAgICBBIGRvdWJsZSBibGVzc2luZyBpcyBhIGRvdWJsZSBncmFjZSwKKyAgICAgICBPY2Nhc2lvbiBzbWlsZXMgdXBvbiBhIHNlY29uZCBsZWF2ZS4KKworTE9SRCBQT0xPTklVUworCisgICAgICAgWWV0IGhlcmUsIExhZXJ0ZXMhIGFib2FyZCwgYWJvYXJkLCBmb3Igc2hhbWUhCisgICAgICAgVGhlIHdpbmQgc2l0cyBpbiB0aGUgc2hvdWxkZXIgb2YgeW91ciBzYWlsLAorICAgICAgIEFuZCB5b3UgYXJlIHN0YXknZCBmb3IuIFRoZXJlOyBteSBibGVzc2luZyB3aXRoIHRoZWUhCisgICAgICAgQW5kIHRoZXNlIGZldyBwcmVjZXB0cyBpbiB0aHkgbWVtb3J5CisgICAgICAgU2VlIHRob3UgY2hhcmFjdGVyLiBHaXZlIHRoeSB0aG91Z2h0cyBubyB0b25ndWUsCisgICAgICAgTm9yIGFueSB1bnByb3BvcnRpb25lZCB0aG91Z2h0IGhpcyBhY3QuCisgICAgICAgQmUgdGhvdSBmYW1pbGlhciwgYnV0IGJ5IG5vIG1lYW5zIHZ1bGdhci4KKyAgICAgICBUaG9zZSBmcmllbmRzIHRob3UgaGFzdCwgYW5kIHRoZWlyIGFkb3B0aW9uIHRyaWVkLAorICAgICAgIEdyYXBwbGUgdGhlbSB0byB0aHkgc291bCB3aXRoIGhvb3BzIG9mIHN0ZWVsOworICAgICAgIEJ1dCBkbyBub3QgZHVsbCB0aHkgcGFsbSB3aXRoIGVudGVydGFpbm1lbnQKKyAgICAgICBPZiBlYWNoIG5ldy1oYXRjaCdkLCB1bmZsZWRnZWQgY29tcmFkZS4gQmV3YXJlCisgICAgICAgT2YgZW50cmFuY2UgdG8gYSBxdWFycmVsLCBidXQgYmVpbmcgaW4sCisgICAgICAgQmVhcid0IHRoYXQgdGhlIG9wcG9zZWQgbWF5IGJld2FyZSBvZiB0aGVlLgorICAgICAgIEdpdmUgZXZlcnkgbWFuIHRoeSBlYXIsIGJ1dCBmZXcgdGh5IHZvaWNlOworICAgICAgIFRha2UgZWFjaCBtYW4ncyBjZW5zdXJlLCBidXQgcmVzZXJ2ZSB0aHkganVkZ21lbnQuCisgICAgICAgQ29zdGx5IHRoeSBoYWJpdCBhcyB0aHkgcHVyc2UgY2FuIGJ1eSwKKyAgICAgICBCdXQgbm90IGV4cHJlc3MnZCBpbiBmYW5jeTsgcmljaCwgbm90IGdhdWR5OworICAgICAgIEZvciB0aGUgYXBwYXJlbCBvZnQgcHJvY2xhaW1zIHRoZSBtYW4sCisgICAgICAgQW5kIHRoZXkgaW4gRnJhbmNlIG9mIHRoZSBiZXN0IHJhbmsgYW5kIHN0YXRpb24KKyAgICAgICBBcmUgb2YgYSBtb3N0IHNlbGVjdCBhbmQgZ2VuZXJvdXMgY2hpZWYgaW4gdGhhdC4KKyAgICAgICBOZWl0aGVyIGEgYm9ycm93ZXIgbm9yIGEgbGVuZGVyIGJlOworICAgICAgIEZvciBsb2FuIG9mdCBsb3NlcyBib3RoIGl0c2VsZiBhbmQgZnJpZW5kLAorICAgICAgIEFuZCBib3Jyb3dpbmcgZHVsbHMgdGhlIGVkZ2Ugb2YgaHVzYmFuZHJ5LgorICAgICAgIFRoaXMgYWJvdmUgYWxsOiB0byB0aGluZSBvd25zZWxmIGJlIHRydWUsCisgICAgICAgQW5kIGl0IG11c3QgZm9sbG93LCBhcyB0aGUgbmlnaHQgdGhlIGRheSwKKyAgICAgICBUaG91IGNhbnN0IG5vdCB0aGVuIGJlIGZhbHNlIHRvIGFueSBtYW4uCisgICAgICAgRmFyZXdlbGw6IG15IGJsZXNzaW5nIHNlYXNvbiB0aGlzIGluIHRoZWUhCisKK0xBRVJURVMKKworICAgICAgIE1vc3QgaHVtYmx5IGRvIEkgdGFrZSBteSBsZWF2ZSwgbXkgbG9yZC4KKworTE9SRCBQT0xPTklVUworCisgICAgICAgVGhlIHRpbWUgaW52aXRlcyB5b3U7IGdvOyB5b3VyIHNlcnZhbnRzIHRlbmQuCisKK0xBRVJURVMKKworICAgICAgIEZhcmV3ZWxsLCBPcGhlbGlhOyBhbmQgcmVtZW1iZXIgd2VsbAorICAgICAgIFdoYXQgSSBoYXZlIHNhaWQgdG8geW91LgorCitPUEhFTElBCisKKyAgICAgICAnVGlzIGluIG15IG1lbW9yeSBsb2NrJ2QsCisgICAgICAgQW5kIHlvdSB5b3Vyc2VsZiBzaGFsbCBrZWVwIHRoZSBrZXkgb2YgaXQuCisKK0xBRVJURVMKKworICAgICAgIEZhcmV3ZWxsLgorIiIiCisKK0NPTVBSRVNTRURfWFogPSAoCisgICAgYiJceGZkN3pYWlx4MDBceDAwXHgwNFx4ZTZceGQ2XHhiNEZceDAyXHgwMCFceDAxXHgxNlx4MDBceDAwXHgwMHQvXHhlNVx4YTMiCisgICAgYiJceGUwXHgwN1x4ODBceDAzXHhkZl1ceDAwXHgwNVx4MTRceDA3YlhceDE5XHhjZFx4ZGRuXHg5OFx4MTVceGU0XHhiNFx4OWQiCisgICAgYiJvXHgxZFx4YzRceGU1XG5ceDAzXHhjYzJoXHhjN1xcXHg4Nlx4ZmZceGY4XHhlMlx4ZmNceGU3XHhkOVx4ZmU2XHhiOCgiCisgICAgYiJceGE4d2RceGMyXCJ1Lm5ceDFlXHhjM1x4ZjJceDhlXHg4ZFx4OGZceDAyXHgxNy9ceGE2PVx4ZjBceGEyXHhkZi9NXHg4OSIKKyAgICBiIlx4YmVceGRlXHhhN1x4MWN6XHgxOC1dXHhkNVx4ZWZceDEzXHg4ZnJaXHgxNVx4ODBceDhjXHhmOFx4OGRvXHhmYVx4MTIiCisgICAgYiJceDliI3ovXHhlZlx4ZjBceGZhRlx4MDFceDgyXHhhM01ceDhlXHhhMXRceGNhNiBCRiRceGU1UVx4YTRceDk4XHhlZVx4ZGUiCisgICAgYiJsXHhlOFx4N2ZceGYwXHg5ZCxiblx4MGJceDEzXHhkNFx4YThceDgxXHhlNE5ceGM4XHg4Nlx4MTUzXHhmNXgyXHhhMk8iCisgICAgYiJceDEzQFFceGExXHgwMC9ceGE1XHhkME9ceDk3XHhkY29ceGFlXHhmN3pceGM0XHhjZFNceGI2dDxceDE2XHhmMlx4OWNJIyIKKyAgICBiIlx4ODl1ZFx4YzY2WVx4ZDlceGVlXHhlNlx4Y2VceDEyXVx4ZTVceGYwXHhhYVx4OTYtUGVceGFkZTpceDA0XHRceDFiXHhmNyIKKyAgICBiIlx4ZGI3XG5ceDg2XHgxZnBceGM4Slx4YmFceGY0XHhmMFZceGE5XHhkY1x4ZjBceDAyJUdceGY5XHhkZj0/XHgxNVx4MWIiCisgICAgYiJceGUxKFx4Y2VceDgyPVx4ZDZJXHhhYzNceDEyXHgwY1JceGI3XHhhZVxyXHhiMWlceDAzXHg5NVx4MDFceGJkXHhiZVx4ZmEiCisgICAgYiJceDAyc1x4MDFQXHg5ZFx4OTZYXHhiMTJqXHhjOExceGE4XHg4NGJceGY2XHhjM1x4ZDRjLUhceDkzb0psXHhkMGlRXHhlNGsiCisgICAgYiJceDg0XHgwYlx4YzFceGI3XHhiY1x4YjFceDE3XHg4OFx4YjFceGNhP0BceGY2XHgwN1x4ZWFceGU2eFx4ZjFIMTJQXHgwZiIKKyAgICBiIlx4OGFceGM5XHhlYXV3XHhlM1x4YmVceGFhaVx4YTlXXHhkMFx4ODBceGNkI2NiNVx4OTlceGQ4XVx4YTlkXHgwY1x4YmQiCisgICAgYiJceGEyXHhkY1dsXHhlZFVHXHhiZlx4ODl5Rlx4Zjc3XHg4MXZceGJkNVx4OThceGJlaDhceDE4V1x4MDhceGYwXHgxYlx4OTkiCisgICAgYiI1Olx4MWE/ckRceDk2XHhhMVx4MDRceDBmXHhhZVx4YmFceDg1XHhlYlx4OWQ1QFx4ZjVceDgzXHhkMzdceDgzXHg4YWMiCisgICAgYiJceDA2XHhkNFx4OTdpXHhjZHRceDE2U1x4ODJrXHhmNktceDAxdnlceDg4XHg5MVx4OWI2VFx4ZGFlXHJceGZkXTprXHhiYWwiCisgICAgYiJceGE5XHhiYmFceGMzNFx4ZjlyXHhlYn1yXHhkYlx4YzdceGRiKlx4OGZceDAzelx4ZGM4aFx4Y2NceGM5XHhkM1x4YmNsIgorICAgIGIiXHhhNS1ceGNiXHhlYUtceGEyXHhjNVx4MTVceGMwXHhlM1x4YzFceDg2Wlx4ZmJceGViTFx4ZTEzXHhjZlx4OWNceGUzIgorICAgIGIiXHgxZFx4YzlceGVkXHhjMlx4MDZceGNjXHhjZSFceDkyXHhlNVx4ZmVceDljXlx4YTU5dyBceDliUFx4YTNQS1x4MDhkIgorICAgIGIiXHhmOVx4ZTJafVx4YTdceGJmXHhlZFx4ZWIlJFx4MGNceDgyXHhiOC9ceGIwXHgwMVx4YTkmLFx4ZjdxaHtRXHg5NilceGYyIgorICAgIGIicVx4OTZceGMzXHg4MFx4YjRceDEyXHhiMFx4YmFceGU2b1x4ZjQhXHhiNFtceGQ0XHg4YXdceDEwXHhmN3RceDBjXHhiMyIKKyAgICBiIlx4ZDlceGQ1XHhjM2BeXHg4MVx4MTE/P1xcXHhhNFx4OTlceDg1Ulx4ZDRceDhlXHg4M1x4YzlceDFlWFx4YmZhXHhmMSIKKyAgICBiIlx4YWNceGIwXHhlYVx4ZWFceGQ3XHhkMFx4YWJceDE4XHhlMlx4ZjJceGVkXHhlMVx4YjdceGM5XHgxOFx4Y2JTXHhlND4iCisgICAgYiJceGM5XHg5NUhceGU4XHhjYlx0XHIlXHhlYlx4YzckLm9ceGYxXHhmM1JceDE3XHgxZGJceGJiXHhkOFVceGE1Xlx4Y2NTIgorICAgIGIiXHgxNlx4MDFceDg3XHhmMy9ceDkzXHhkMVx4ZjB2XHhjMHJceGQ3XHhjY1x4YTJHa3pceGNhXHg4MFx4MGVceGZkXHhkMCIKKyAgICBiIlx4OGJceGJiXHhkMkl4XHhiM1x4MWV5XHhjYS0wXHhlM3peXHhkNlx4ZDZceDhmX1x4ZjFceDlkUFx4OWZpXHhhN1x4ZDEiCisgICAgYiJceGU4XHg5MFx4ODRceGRjXHhiZlx4Y2RreVx4OGVceGRjXHg4MVx4N2ZceGEzXHhiMitceGJmXHgwNFx4ZWZceGQ4XFwiCisgICAgYiJceGM0XHhkZlx4ZTFceGIwXHgwMVx4ZTlceDkzXHhlM1lceGYxXHgxZFlceGU4aFx4ODFceGNmXHhmMXdceGNjXHhiNFx4ZWYiCisgICAgYiIgXHg4YnxceDA0XHhlYVx4ODNlalx4YmVceDFmXHhkNHpceDljYFx4ZDNceDFhXHg5MkFceDA2XHhlNVx4OGZceGE5XHgxMyIKKyAgICBiIlx0XHg5ZT1ceGZhXHgxY1x4ZTVfXHg5ZiV2XHgxYm9ceDExWk9ceGQ4XHhmNFx0XHhkZE1ceDE2LVx4MDRceGZjXHgxODxcIiIKKyAgICBiIkNNXHhkZGd+Ylx4ZjZceGVmXHg4ZVx4MGNceGQwXHhkZXxceGEwJ1x4OGFceDBjXHhkNnhceGFlIUpceGE2Rlx4ODhceDE1dSIKKyAgICBiIlx4MDA4XHgxN1x4YmM3eVx4YjNceGQ4dVx4YWNfXHg4NVx4OGRceGU3XHhjMUBceDljXHhlY3FjXHhhMyNceGFkXHhmMSIKKyAgICBiIlx4OTM1XHhiNSlfXHJceGVjM11ceDBmb101XHhkMG15XHgwN1x4OWJceGVlXHg4MVx4YjVceDBmXHhjZksrXHgwMFx4YzAiCisgICAgYiJceGU0Ylx4MTBceGU0XHgwY1x4MWEgXHg5Ylx4ZTBceDk3dFx4ZjZceGExXHg5ZVx4ODUwXHhiYVx4MGNceDlhXHg4ZFx4YzgiCisgICAgYiJceDhmXHgwN1x4ZDdceGFlXHhjOFx4ZjkraVx4ZGNceGI5a1x4YjA+Zlx4MTlceGI4XHJceGE4XHhmOFx4MWYkXHhhNXtwIgorICAgIGIiXHhjNlx4ODgwXHhjZVx4ZGJceGNmXHhjYV9ceDg2XHhhY1x4ODhoNlx4OGJaJSdceGQwXG5ceGJmXHgwZlx4OWNcIlx4YmEiCisgICAgYiJceGU1XHg4Nlx4OWZceDBmN1g9bU5YW1x4Y2NceDE5RlVceGM5XHg4NjBceGJjXHg5MGErKiBceGFlXyRceDAzXHgxZVx4ZDMiCisgICAgYiJceGNkX1x4YTBceDljXHhkZVx4YWY0NnFceGE1XHhjOVx4OTJceGQ3XHhjYVx4ZTNgXHg5ZFx4ODV9XHhiNFx4ZmZceGIzIgorICAgIGIiXHg4M1x4ZmJceGI2XHhjYVx4YWVgXHgwYndceDdmXHhmY1x4ZDhceGFjVmVceDE5XHhjOFx4MTdceDBiWlx4YWRceDg4IgorICAgIGIiXHhlYiNceDk3XHgwM1x4MTNceGIxZFx4MGZ7XHgwY1x4MDR3XHgwN1xyXHg5N1x4YmRceGQ2XHhjMVx4YzNCOlx4OTVceDA4IgorICAgIGIiXlx4MTBWXHhhZWFIXHgwMlx4ZDlceGUzXG5cXFx4MDFYXHhmNlx4OWNceDhhXHgwNnUjJVx4YmUqXHhhMVx4MTh2XHg4NSIKKyAgICBiIlx4ZWMhXHQ0XHgwMFx4MDBceDAwXHgwMFZqP3VMVVx4ZjNceGE2XHgwMFx4MDFceGZiXHgwN1x4ODFceDBmXHgwMFx4MDB0dyIKKyAgICBiIlx4OTlQXHhiMVx4YzRnXHhmYlx4MDJceDAwXHgwMFx4MDBceDAwXHgwNFlaIgorKQorCitDT01QUkVTU0VEX0FMT05FID0gKAorICAgIGIiXVx4MDBceDAwXHg4MFx4MDBceGZmXHhmZlx4ZmZceGZmXHhmZlx4ZmZceGZmXHhmZlx4MDBceDA1XHgxNFx4MDdiWFx4MTkiCisgICAgYiJceGNkXHhkZG5ceDk4XHgxNVx4ZTRceGI0XHg5ZG9ceDFkXHhjNFx4ZTVcblx4MDNceGNjMmhceGM3XFxceDg2XHhmZlx4ZjgiCisgICAgYiJceGUyXHhmY1x4ZTdceGQ5XHhmZTZceGI4KFx4YTh3ZFx4YzJcInUublx4MWVceGMzXHhmMlx4OGVceDhkXHg4Zlx4MDIiCisgICAgYiJceDE3L1x4YTY9XHhmMFx4YTJceGRmL01ceDg5XHhiZVx4ZGVceGE3XHgxY3pceDE4LV1ceGQ1XHhlZlx4MTNceDhmcloiCisgICAgYiJceDE1XHg4MFx4OGNceGY4XHg4ZG9ceGZhXHgxMlx4OWIjei9ceGVmXHhmMFx4ZmFGXHgwMVx4ODJceGEzTVx4OGVceGExdCIKKyAgICBiIlx4Y2E2IEJGJFx4ZTVRXHhhNFx4OThceGVlXHhkZWxceGU4XHg3Zlx4ZjBceDlkLGJuXHgwYlx4MTNceGQ0XHhhOFx4ODEiCisgICAgYiJceGU0Tlx4YzhceDg2XHgxNTNceGY1eDJceGEyT1x4MTNAUVx4YTFceDAwL1x4YTVceGQwT1x4OTdceGRjb1x4YWVceGY3eiIKKyAgICBiIlx4YzRceGNkU1x4YjZ0PFx4MTZceGYyXHg5Y0kjXHg4OXVkXHhjNjZZXHhkOVx4ZWVceGU2XHhjZVx4MTJdXHhlNVx4ZjAiCisgICAgYiJceGFhXHg5Ni1QZVx4YWRlOlx4MDRcdFx4MWJceGY3XHhkYjdcblx4ODZceDFmcFx4YzhKXHhiYVx4ZjRceGYwVlx4YTkiCisgICAgYiJceGRjXHhmMFx4MDIlR1x4ZjlceGRmPT9ceDE1XHgxYlx4ZTEoXHhjZVx4ODI9XHhkNklceGFjM1x4MTJceDBjUlx4YjciCisgICAgYiJceGFlXHJceGIxaVx4MDNceDk1XHgwMVx4YmRceGJlXHhmYVx4MDJzXHgwMVBceDlkXHg5NlhceGIxMmpceGM4TFx4YTgiCisgICAgYiJceDg0Ylx4ZjhceDFlcGxceGVhanJceGQxPVx0XHgwM1x4ZGRceDEzXHgxYjMhRVx4Zjl2Vlx4ZGFGXHhmM1x4ZDdceGI0IgorICAgIGIiXHgwY1x4YTlQflx4ZWNceGRlRVx4ZTM3XHhmNlx4MWRceGM2XHhiYlx4ZGRjJVx4YjZceDBmSVx4MDdceGYwO1x4YWZceGU3IgorICAgIGIiXHhhMFx4OGJceGE3Wlx4OTkoXHhlOVx4ZTJceGYwb1x4MTg+YFx4ZTFceGFhXHhhOFx4ZDlceGExXHhiMn1ceGU3XHg4ZCIKKyAgICBiIlx4ODM0VFx4YjZceGVmXHhjMVx4ZGVceGUzXHg5OFx4YmNEXHgwM01BQFx4ZDhceGVkXHhkY1x4YzhceDkzXHgwM1x4MWEiCisgICAgYiJceDkzXHgwYlx4N2ZceDk0XHgxMlx4MGJceDAyU2FceDE4XHhjOVx4YzVceDliVEpFfVx4ZjZceGM4Z1x4MTcjWlZceDAxIgorICAgIGIiXHhjOVx4OWRjXHg4M1x4MGU+MFx4MTZceDkwU1x4YjgvXHgwM3lfXHgxOFx4ZmEoXHhkN1x4MGJyXHhhMlx4YjBceGJhPyIKKyAgICBiIlx4OGNceGU2XHg4M0BceDg0XHhkZlx4MDI6XHhjNXpceDllXHhhNlx4ODRceGM5XHhmNUJleVhceDgzXHgxYVx4ZjEgOlx0IgorICAgIGIiXHhmN1x4MTlceGZleERcXCZHXHhmM1x4ODVZXHhhMkpceGY5XHgwYnZ7XHg4OVx4ZjZceGU3KUFceGFmXHgwNG9ceDAwIgorICAgIGIiXHgwNzVceGQzXHhlMFx4N2ZceDk3XHg5OEZceDBmP3ZceDkzXHhlZFZ0VGZceGI1XHg5N1x4ODNceGVkXHgxOVx4ZDdceDFhIgorICAgIGIiJ2tceGQ3XHhkOVx4YzVcXFlceGQxXHhkY1x4MDdceDE1fHdceGJjXHhhY2RceDg3XHgwOGRceGVjXHhhN1x4ZjZceDgyIgorICAgIGIiXHhmY1x4YjNceDkzXHhlYlx4YjkgXHg4ZFx4YmMgLFx4YjNYXHhiMFx4ZDJzXHhkN1x4ZDFceGZmdlx4MDVceGRmfVx4YTIiCisgICAgYiJceDk2XHhmYiVcblx4ZGZceGEyXHg3Zlx4MDguXHhhMTZcblx4ZTBceDE5XHg5M1x4N2ZoXG5ceDFjXHg4Y1x4MGYgXHgxMSIKKyAgICBiIlx4YzZCbFx4OTVceDE5VX1ceGU0c1x4YjVceDEwSFx4ZWFceDg2cEJceGU4OFx4OTVceGJlXHg4Y1pceGRiXHhlNFx4OTRBIgorICAgIGIiXHg5Mlx4Yjk7elx4YWFceGE3e1x4MWM1IVx4YzBceGFmXHhjMUFceGY5XHhkYVx4ZjAkXHhiMFx4MDJxZ1x4YzhceGM3L3wiCisgICAgYiJceGFmclx4OTleXHg5MVx4ODhceGJmXHgwM1x4ZDk9XHhkN25ceGRhNns+OFxuXHhjNzpceGE5J1x4YmEuXHgwYlx4ZTIiCisgICAgYiJceGI1XHgxZFx4MGVcblx4OWFceDhlXHgwNlx4OGY6XHhkZFx4ODInW1x4YzNcIndEJFx4YTd3XHhlY3FceDhjLDFceDkzIgorICAgIGIiXHhkMCxceGFlMndceDkzXHgxMiRKZFx4MTltZ1x4MDJceDkzXHg5Y0FceDk1XHg5ZCZceGNhOGlceDljXHhiMDtceGU3TlEiCisgICAgYiJceDFmcmhceDhiZUw7XHhiMG1ceGVlXHgwN1FceDliXHhjNlx4ZDhceDAzXHhiNVx4ZGVOXHhkNFx4ZmVceDk4XHhkMFx4ZGMiCisgICAgYiJceDFhW1x4MDRceGRlXHgxYVx4ZjZceDkxalx4ZjhFT2xpXHg4ZUJeXHgxZFx4ODJceDA3XHhiMlx4YjVSXVx4YjdceGQ3IgorICAgIGIiXHhlOVx4YTZceGMzLlx4ZmJceGYwLVx4YjRlXHg5Ylx4ZGVceDAzXHg4OFx4YzZceGMxaU5ceDBlXHg4NHdiUVx4ZGZ+IgorICAgIGIiXHhlOVx4YTRceDg4NFx4OTZrTVx4YmMpVFx4ZjNceDg5XHg5N1x4MGZceDE0M1x4ZTcpXHhhMFx4YjNCXHgwMFx4YThceGFmIgorICAgIGIiXHg4Ml5ceGNiXHhjNy4uXHhkYlx4YzdcdFx4OWRIXHhlZTVceGU5I1x4ZTZOVlx4OTRceGNiJEtrXHhlM1x4N2Zcclx4ZTN0IgorICAgIGIiXHgxMlx4Y2YnXHhlZlJceDhiXHhmNDJceGNmLUxIXHhhY1x4ZTVceDFmMH4/U09ceGViXHhjMUVceDFhXHgxY11ceGYyIgorICAgIGIiXHhjNDxceDExXHgwMlx4MTBaMGEqP1x4ZTRyXHhmZlx4ZmJceGZmXHhmNlx4MTRuR1x4ZWFkXlx4ZDZceGVmOFx4YjZ1RUkiCisgICAgYiJceDk5XG5WXHhlMlx4YjNceDk1XHg4ZVx4ODNceGY2aSFceGI1JjFGXHhiMURQXHhmNCBTTzNEIXdceDk5X0dceDdmK1x4OTAiCisgICAgYiIuXHhhYlx4YmJdXHg5MT5ceGM5I2g7XHgwZjVKXHg5MUtceGY0Xi1bXHg5ZVx4OGFcXFx4OTRceGNhXHhhZlx4ZjZceDE5IgorICAgIGIiXHhkNFx4YTFceDliXHhjNFx4YjhwXHhhMVx4YWVceDE1XHhlOXJceDg0XHhlMFx4Y2FyLmwgW11ceDhiXHhhZiswXHhmMmciCisgICAgYiJceDAxYUtZXHhkZklceGNmLFxuXHhlOFx4ZjBceGU3Vlx4ODBfI1x4YjJceGYyXHhhOVx4MDZceDhjPndceGUyVyxceGY0IgorICAgIGIiXHg4Y1xyXHhmOTYzXHhmNUpceGNjMlx4MDU9a1RceGVhVXRpXHhlNV9ceGNlXHgxYlx4ZmFceDhkbFx4MDJoXHhlZlx4YTgiCisgICAgYiJceGZiZlx4N2ZceGZmXHhmMFx4MTlceGVheCIKKykKKworRklMVEVSU19SQVdfMSA9IFt7ImlkIjogbHptYS5GSUxURVJfTFpNQTIsICJwcmVzZXQiOiAzfV0KK0NPTVBSRVNTRURfUkFXXzEgPSAoCisgICAgYiJceGUwXHgwN1x4ODBceDAzXHhmZF1ceDAwXHgwNVx4MTRceDA3YlhceDE5XHhjZFx4ZGRuXHg5NmN5cVx4YTFceGRkXHhlZSIKKyAgICBiIlx4ZjhceGZhbVx4ZTMnXHg4OFx4ZDNceGZmXHhlNFx4OWUgXHhjZVFceDkxXHhhNFx4MTRJXHhmNlx4YjlceDlkVkw4XHgxNSIKKyAgICBiIl9ceDBlXHgxMlx4YzNceGViXHhiY1x4YTVceGNkXG5XXHgxZCQ9UjtceDFkXHhmOGs4XHRceGIxe1x4ZDRceGM1K1x4OWQiCisgICAgYiJceDg3Y1x4ZTVceGVmXHg5OFx4YjRceGQ3UzNceGNkXHhjY1x4ZDJceGVkXHhhNFx4MGVtXHhlNVx4ZjRceGRkXHhkMGIiCisgICAgYiJceGJlNCpceGFhXHgwYlx4YzVceDA4XHgxMFx4ODUrXHg4MS5ceDE3XHhhZjlceGM5Ylx4ZWFackFceGUyMFx4N2ZzXCJyIgorICAgIGIiXHhkYUdceDgxXHhkZVx4OTBjdVx4YTVceGRiXHhhOS5BXHgwOGxceGIwPFx4ZjZceDAzXHhkZE9pXHhkMFx4YzVceGI0IgorICAgIGIiXHhlY1x4ZWNnNHQ2XCJceGE2XHhiOG9ceGI1P1x4MThefVx4YjZ9XHgwM1s6XHhlYlx4MDNceGE5XG5bXHg4OWxceDE5ZyIKKyAgICBiIlx4MTZceGM4Mlx4ZWRceDBiXHhmYlx4ODZuXHhhMlx4ODU3QFx4OTNceGNkNlRceGMzdVx4YjBcdFx4ZjlceDFiXHg5MTgiCisgICAgYiJceGZjW1x4MWJceDFlNFx4YjNceDE0XHgwNlBDVlx4YThcIlx4ZjVceDgxeH5ceGU5XHhiNU5ceDljS1x4OWZceGM2XHhjMyUiCisgICAgYiJceGM4azp7Nlx4ZTdceGY3XHhiZFx4MDVceDAyXHhiNFx4YzRceGMzXHhkM1x4ZmRceGMzXHhhOFxcXHhmY0BceGIxRl8iCisgICAgYiJceGM4XHg5MFx4ZDlzVVx4OThceGFkOFx4MDVceDA3XHhkZTdKXHg4Yk1ceGQwXHhiMztYXHhlY1x4ODdceGVmXHhhZVx4YjMiCisgICAgYiJlTyxceGIxeixkXHgxMXlceGVlamxCXHgwMlx4MWRceGYyOFx4MWYjXHg4OTZceGNlXHgwYlx4ZjBceGY1XHhhOVBLXHgwZiIKKyAgICBiIlx4YjNceDEzUFx4ZDhceDg4XHhkMlx4YTFceDA4XHgwNEM/XHhkYlx4OTRfXHg5YVwiXHhlOVx4ZTNlXHgxZFx4ZGVceDliIgorICAgIGIiXHhhMVx4ZTg+SFx4OThceDEwO1x4YzVceDAzI1x4YjVceDlkNFx4MDFceGU3XHhjNVx4YmEldlx4YTQ5XHg5N0FceGUwXCIiCisgICAgYiJceDhjXHhjMjJceGUzaVx4YzFceDlkXHhhYjNceGRmXHhiZVx4ZmREbTdceDFiXHg5ZFx4YWJceGI1XHgxNW86Slx4OTIiCisgICAgYiJceGRiXHg4MTZceDE3XHhjMk9ceDk5XHgxYlx4MGVceDhkXHhmM1x0UVx4ZWRceDhlXHg5NVMvXHgxNk1ceGIyU1x4MDQiCisgICAgYiJceDBmXHhjM0pceGM2XHhjN1x4ZTRceGNiXHhjNVx4ZjRceGU3ZFx4MTRceGU0PV5CXHhmYlx4ZDNFXHhkM1x4MWVceGNkIgorICAgIGIiXHg5MVx4YTVceGQwR1x4OGYuXHhmNlx4ZjlceDBiYiZceGQ5XHg5Zlx4YzJceGZkalx4YTJceDllXHhjNFxcXHgwZVx4MWRDIgorICAgIGIidlx4ZThceGQyXHg4YT9eSFx4ZWNceGFlXHhlYj5ceGZlXHhiOFx4YWJceGQ0SXFZXHg4Y1x4ZDRLN1x4MTFceGY0RFx4ZDBXIgorICAgIGIiXHhhNVx4YmVceGVhT1x4YmZceGQwXHgwNFx4ZmRsXHgxMFx4YWU1XHhkNFVceDE5XHgwNlx4Zjl7XHhhYVx4ZTBceDgxIgorICAgIGIiXHgwZlx4Y2ZceGEza3tceDk1XHhiZFx4MTlceGEyXHhmOFx4ZTRceGEzXHgwOE8qXHhmMVx4ZjFCLVx4YzcoXHgwZVJceGZkIgorICAgIGIiQEVceDlmXHhkM1x4MWU6XHhmZFZceGI3XHgwNFlceDk0XHhlYl1ceDgzXHhjNFx4YTVceGQ3XHhjMGdYXHg5OFx4Y2ZceDBmIgorICAgIGIiXHhjZDNceDAwXW5ceDE3XHhlY1x4YmRceGEzWVx4ODZceGM1XHhmM3VceGY2Klx4YmRUXHhlZEEkQVx4ZDlBXHhlN1x4OTgiCisgICAgYiJceGVmXHgxNFx4MDJceDlhXHhmZGl3XHhlY1x4YTBceDg3XHgxMVx4ZDklXHhjNVx4ZWJceDhhPVx4YWVceGMwXHhjNFx4YzYiCisgICAgYiJEXHg4MFx4OGZceGE4XHhkMVx4YmJxXHhiMlx4YzBceGEwXHhmNUNxcFx4ZWVMXHhlM1x4ZTVceGRjIFx4ODRcIlx4ZTkiCisgICAgYiJceDgwdFx4ODNceDA1XHhiYVx4ZjFceGM1flx4OTNceGM5XHhmMFx4MDFjXHhjZWl4XHg5ZFx4ZWRceGM1KWxceDE2KVx4ZDEiCisgICAgYiJceDAzQGxceDA0XHg3Zlx4ODdceGE1eW5ceDFiXHgwMURceGFhOlx4ZDJceDk2XHhiNFx4YjM/XHhiMFx4ZjlceGNlXHgwNyIKKyAgICBiIlx4ZWJceDgxXHgwMFx4ZTRceGMzXHhmNSVfXHhhZVx4ZDRceGY5XHhlYlx4ZTJccmhceGIyI1x4ZDY3UVx4MTZEXHg4MmhuIgorICAgIGIiXHhkMVx4YTNfP3FceGYwXHhlMlx4YWNceGYzMTdceDllXHhkMF9ceDgzfFx4ZjFceGNhXHhiN1x4OTVTXHhhYldceDEyIgorICAgIGIiXHhmZlx4ZGR0XHhmNjlMXHgwMVx4ZjJ8XHhkYVdceGRhXHhlZXNceDk4TFx4MThceGI4X1x4ZTgkXHg4Mlx4ZWFceGQ2IgorICAgIGIiXHhkMUZceGQ0XHgwYlx4Y2RrXHgwMXZmXHg4OGhceGMzXHhhZVx4YjkxXHhjN1FceDlmXHhhNUdceGQ5XHhjY1x4MWZceGUzIgorICAgIGIiNVx4YjFceGRjeVx4N2ZJXHg4YmN3XHg4ZVx4MTBySXBceDAyOlx4MTlwX1x4Yzh2XHhjZWFcIlx4YzFceGQ5XHg5MVx4MDMiCisgICAgYiJceGJmZVx4YmVceGE2XHhiM1x4YThceDE0XHgxOFx4YzNceGFiSCptfVx4YzJceGMxXHg5YX0+bCVceGNlXHg4NFx4OTkiCisgICAgYiJceGIzZFx4YWZceGQzXHg4Mlx4MTVceGRmXHhjMVx4ZmM1Zk9nXHg5Ylx4ZmNceDhlXiZcdEBceGNlXHg5Zlx4MDZKXHhiOCIKKyAgICBiIlx4YjVceDg2XHgxZFx4ZGF7XHg5Zlx4YWVceGIwXHhmZlx4MDJceDgxclx4OTJ6XHg4Y01ceGI3aG9ceGM5Xlx4OWNceGI2IgorICAgIGIiXHg5Y1x4YWVceGQxXHhjOVx4ZjRceGRmVTdceGQ2XFwhXHhlYVx4MGJceDk0a1x4YjlVZH5ceDk4XHhlN1x4ODZceDhheiIKKyAgICBiIlx4MTA7XHhlM1x4MWRceGU1UEdceGY4XHhhNFx4MTJceDA1d1x4OTheXHhjNFx4YjFceGJiXHhmYlx4Y2ZceGUwXHg3ZiIKKyAgICBiIlx4MDMzU2ZceDBjIFx4YjFceGY2QFx4OTRceGU1XHhhM1x4YjJceGE3XHgxMFx4OWFceGMwXHgxNFx4YzNzXHhiNXhSRCIKKyAgICBiIlx4ZjRgV1x4ZDlceGU1XHhkM1x4Y2ZceDkxXHJUWi1YXHhiZVx4YmZceGI1XHhlMlx4ZWV8XHgxYVx4YmZceGZiXHgwOCIKKyAgICBiIlx4OTFceGUxXHhmY1x4OWFceDE4XHhhM1x4OGJceGQ2Xlx4ODlceGY1W1x4ZWZceDg3XHhkMVx4MDZceDFjN1x4ZDZceGEyIgorICAgIGIiXHRcdFE1L0BTXHhjMDVceGQyVmhBS1x4MDNWQ1xyXHg5Ylx4OTNceGQ2TVx4ZjF4T1x4YWFPXHhlZFx4Yjk8XHgwY1x4ZGFlIgorICAgIGIiKlx4ZDBceDA3SGs2XHg5ZkcrXHhhMSlceGNkXHg5Y2xceDg3XHhkYlx4ZTFceGU3XHhlZkt9XHg4NzVceGFiXHhhMFx4MTl1IgorICAgIGIiXHhmNipGXHhiMzJceDAwXHgwMFx4MDAiCispCisKK0ZJTFRFUlNfUkFXXzIgPSBbeyJpZCI6IGx6bWEuRklMVEVSX0RFTFRBLCAiZGlzdCI6IDJ9LAorICAgICAgICAgICAgICAgICB7ImlkIjogbHptYS5GSUxURVJfTFpNQTIsCisgICAgICAgICAgICAgICAgICAicHJlc2V0IjogbHptYS5QUkVTRVRfREVGQVVMVCB8IGx6bWEuUFJFU0VUX0VYVFJFTUV9XQorQ09NUFJFU1NFRF9SQVdfMiA9ICgKKyAgICBiIlx4ZTBceDA3XHg4MFx4MDVceDkxXVx4MDBceDA1XHgxNFx4MDYtXHhkNFx4YThkP1x4ZWZceGJlXHhhZkhceGVlXHgwNDIiCisgICAgYiJceGNiLlx4YjVnXHg4Zlx4ZmJceDE0XHhhYlx4YTVceDlmXHgwMjV6XHhhNFx4ZGRceGQ4XHRbfVdceGY4XHgwY1x4MWRtSCIKKyAgICBiIlx4ZmFceDA1XHhmY2dceGJhXHhlNVx4MDFRXHgwYlx4ODNSXHhiNkFceDg4NVx4YzBceGJhXHhlZVxuXHgxY3Z+XHhkZTpvIgorICAgIGIiXHgwNjpKXHhhN1x4MTFDY1x4ZWFceGY3XHhlNSpvXHhmN1x4ODNcXGxceGJkRVx4MTlceDFmXHJceGE4XHgxMFx4YjQyIgorICAgIGIiXHgwY2FVe1x4ZDdceGI4d1x4ZGNceGJlXHgxYlx4ZmM4XHhiNFx4Y2NceGQzOFxcXHhmNlx4MTNceGY2XHhlN1x4OThceGZhIgorICAgIGIiXHhjN1tceDE3XzlceDg2JVx4YThceGY4XHhhYVx4YjhceDhkZnMjXHgxZT1ceGVkPFx4OTJceDEwXFx0XHhmZlx4ODZceGZiIgorICAgIGIiPVx4OWU3XHgxOFx4MWRmdFxcXHhiNVx4MDFceDk1UVx4YzVceDE5XHhiMzhceGUwXHhkNFx4YWFceDA3XHhjM1x4N2ZceGQ4IgorICAgIGIiXHhhMlx4MDA+LVx4ZDNceDhlXHhhMSNceGZhXHg4M0FyQW1ceGRiSn5ceDkzXHhhM0JceDgyXHhlMFx4YzdceGNjKFx4MDhgIgorICAgIGIiV0tceGFkXHgxYlx4OTRrYWpceDA0IFx4ZGVceGZjXHhlMVx4ZWRceGIwXHg4Mlx4OTFceGVmU1x4ODQlXHg4Nlx4ZmJpIgorICAgIGIiXHg5OVhceGYxQlx4ZTdceDkwO0VceGZkZVx4OThceGRhXHhjYVx4ZDZUXHhiNGJnXHhhNFxuXHg5YWpceGQxXHg4M1x4OWVdIgorICAgIGIiXCJceDdmTVx4YjVceDBmclx4ZDJcXFx4YTVqflBceDEwR0hceGJmTipaXHgxMC5ceDgxXHRwRVx4OGFceDA4XHhiZTFceGJkIgorICAgIGIiXHhjZFx4YTlceGUxXHg4ZFx4MWZceDA0XHhmOVx4MGVIXHhiOVx4YWVceGQ2XHhjM1x4YzFceGE1XHhhOVx4OTVQXHhkY34iCisgICAgYiJceGZmXHgwMVx4OTMwXHhhOVx4MDRceGY2XHgwM1x4ZmVceGI1SktceGMzXVx4ZGQ5XHhiMVx4ZDNceGQ3Rlx4ZjVceGQxIgorICAgIGIiXHgxZVx4YTBceDFjX1x4ZWRbXHgwY1x4YWVceGQ0XHg4Ylx4OTQ2XHhlYlx4YmZceGJiXHhlMyRrU3tceGI1XHg4MCxmOlNqIgorICAgIGIiXHgwZlx4MDh6XHgxY1x4ZjVceGU4XHhlNlx4YWVceDk4XHhiMFF+clx4MGZceGIwXHgwNT9ceGI2XHg5MFx4MTlceDAyJiIKKyAgICBiIlx4Y2JceDgwXHRceGM0XHhlYVx4OWN8eFx4Y2VceDEwXHg5Y1x4YzV8XHhjYmRoaCtceDBjJ1x4YzVceDgxXHhjMzNceGI1IgorICAgIGIiXHgxNHFceGQ2XHhjNVx4ZTNgWiNceGRjXHg4YVx4YWJceGRkXHhlYVx4MDhceGMySVx4ZTdceDAybHtceGVjXHgxOTZceDA2IgorICAgIGIiXHg5MVx4OGRceGRjXHhkNVx4YjN4XHhlMWh6JVx4ZDFceGY4XHhhNVx4ZGRceDk4IVx4OGNceDFjXHhjMVx4MTdSVWFceGJiIgorICAgIGIiXHg5NVx4MGZceGU0WFx4ZWExXHgwY1x4ZjE9Ulx4YmVceGM2MFx4ZTNceGE0XHg5YVx4OTBiZFx4OTckXUJceDAxXHhkZCIKKyAgICBiIlx4MWZceGUzaDJjXHgxZVx4YTBMYDRceGM2eFx4YTNaXHg4YVxyXHgxNF1UXlx4ZDhceDg5XHgxYlx4OTJccjtceGVkWSIKKyAgICBiIlx4MGNceGVmXHg4ZDl6XHhmM29ceGI2KWZceGE5XSRuXHJwXHg5M1x4ZDBceDEwXHhhNFx4MDhceGI4XHhiMlx4OGJceGI2IgorICAgIGIiXHg4Zlx4ODBceGFlO1x4ZGNRXHhmMVx4ZmFceDlhXHgwNlx4OGVceGE1XHgwZVx4OGNLXHg5YyBAXHhhYTpVY1hcbiFceGM2IgorICAgIGIiXHgwMlx4MTJceGNiXHgxYlwiPVx4MTYuXHgxZlx4MTc2XHhmMmc9XHhlMVduXHhlOVx4ZTFceGQ0XHhmMU9ceGFkXHgxNSIKKyAgICBiIlx4ODZceGU5XHhhM1RceGFmXHhhOVx4ZDdEXHhiNVx4ZDFXM3BudFx4MTFceGM3Vk9qXHhiN01ceGM0aVx4YTFceGYxJDMiCisgICAgYiJceGJiXHhkY1x4OGFmXHhiMFx4YzVZXHJceGQxXHhmYlx4ZjJceGU3S1x4ZTZceGM1aHdPXHhmZVx4OGMyXiZceDA3XHhkNSIKKyAgICBiIlx4MWZWXHgxOVx4ZmRcclx4MTRceGQyaT15Wlx4ZTZvXHhhZlx4YzZceGI2XHg5Mlx4OWRceGM0XHJceGIzXHhhZndceGFjJSIKKyAgICBiIlx4Y2ZjXHgxYVx4ZjFgXVx4ZjJceDFhXHg5ZVx4ODA4XHhlZG1ceGVkUVx4YjJceGZlXHhlNGhgW3FceGFlXHhlMFx4MGYiCisgICAgYiJceGJhMGdceGI2XCJOXHhjM1x4ZmJceGNmUlx4MTFceGM1XHgxOCkoXHhjNDBcXFx4YTNceDAyXHhkOUchXHhjZVx4MWIiCisgICAgYiJceGMxXHg5NnhceGI1XHhjOHpceDFmXHgwMVx4YjRceGFmXHhkZVx4YzJceGNkXHgwN1x4ZTdIXHhiM3lceGE4TVxuXFxBXHQiCisgICAgYiJhclx4ZGRNXHg4Ylx4OWFceGVhXHg4NFx4OWIhXHhmMVx4OGRceGIxXHhmMX5ceDFlXHJceGE1SFx4YmFceGYxXHg4NG8iCisgICAgYiJceGRhXHg4N1x4MDFoXHhlOVx4YTJceGJlXHhiZXFOXHg5ZFx4ODRceDBiIVdHXHhkYVx4YTFceGE1QVx4YjdceGM3YGoiCisgICAgYiJceDE1XHhmMlx4ZTlceGRkP1x4MDE1Qlx4ZDJ+RVx4MDZceDExXHhlMFx4OTEhXHgwNV5ceDgwXHhkZFx4YTh5XHgxNX0iCisgICAgYiJceGExKVx4YjEpXHg4MVx4MThceGY0XHhmNFx4ZjhceGMwXHhlZkRceGUzXHhkYjJmXHgxZVx4MTJceGFidVx4YzlceDk3IgorICAgIGIiXHhjZFx4MWVceGE3XHgwY1x4MDJ4NF82XHgwM1x4YzQkdFx4ZjM5XHg5NFx4MWQ9XHhjYlx4YmZ2XFxceGY1XHhhM1x4MWQiCisgICAgYiJceDlkOGprXHg5NVx4MTMpZmZceGY5blx4YzRceGE5XHhlM1x4MDFceGI4XHhkYVx4ZmJceGFiXHhkZk1ceDk5XHhmYlx4MDUiCisgICAgYiJceGUwXHhlOVx4YjBJXHhmNEVceGFiXHhlMlx4MTVceGEzXHgwMzVceGU3XHhkZVRceGVlXHg4MnBceGI0XHg4OFx4ZDMiCisgICAgYiJceDg5M1x4OWMvXHhjMFx4ZDZceDhmb3U7XHhmNlx4OTVQUlx4YTlceGIyXHhjMVx4ZWZGalx4ZTJceGE3JFx4ZjdoXHhmMSIKKyAgICBiIlx4ZGZLKFx4YzljXHhiYTdceGU4XHhlMylceGRkXHhiMixceDgzXHhmYlx4ODRceDE4LnlceDE4UWlceDg4XHhmOGBoLSIKKyAgICBiIlx4ZWZceGQ1XHhlZFx4OGNcdFx4ZDhceGMzXlx4MGZceDAwXHhiN1x4ZDBbIVx4YWZNXHg5Ylx4ZDcuXHgwN1x4ZDhceGZiIgorICAgIGIiXHhkOVx4ZTItUytceGFhOCxceGEwXHgwM1x4MWIgXHhlYVx4YThceDAwXHhjM1x4YWJ+XHhkMCRlXHhhNVx4N2ZceGY3IgorICAgIGIiXHg5NVBdXHgxMlx4MTlpXHhkOVx4N2ZvXHgwY1x4ZDhnXlxyRVx4YTVceDgwXHgxOFx4YzVceDAxXHg4MFx4YWVrYFx4ZmZ+IgorICAgIGIiXHhiNnlceGU3K1x4ZTVceDExXkRceGE3XHg4NVx4MThcIiFceGQ2XHhkMlx4YTdceGY0XHgxZVRceGRiXHgwMlx4ZTE1IgorICAgIGIiXHgwMllceGJjXHgxNzRaXHhlN1x4OWNIXHgxY1x4YmZceDBmXHhjNlx4ZTlmXVx4Y2ZceDhjeFx4YmNceGU1XHgxNVx4OTQiCisgICAgYiJceGZjM1x4YmNceGE3VFVIXHhmMVx4ODRceDFiXHhmN1x4YTl5XHhjMDdceDg0XHhmOFhceGQ4XHhlZlx4ZmMgXHgxY1x4ZDgiCisgICAgYiIoIC9ceGYyXHhiN1x4ZWNceGMxXFxceDhjXHhmNlx4OTVceGExXHgwM0pceDgzdlA4XHhlMVx4ZTNceGJiflx4YzI0a0EiCisgICAgYiJceDk4eVx4YTFceGYyUFx4ZTlceDlkXHhjOUpceGY4Tlx4OTlceGI0XHhjZWFPXHhkZVx4MTZceDFlXHhjMlx4MTlceGE3IgorICAgIGIiXHgwM1x4ZDJceGUwXHg4ZjpceDE1XHhmM1x4ODRceDllXHhlZVx4ZTZlXHhiOFx4MDJxXHhjN0FDXHgxZW13XHhmZFx0IgorICAgIGIiXHg5YVx4MWV1XHhjMVx4YTlceGNhQ3dVUFx4MDBceGE1XHhmNzhMNHchXHg5MUwyIFx4ODdceGQwXHhmMlx4MDZceDgxaiIKKyAgICBiIlx4ODA7XHgwM1ZceDA2XHg4N1x4OTJceGNiXHg5MGx2QEVceDhkXHg4ZFx4YTVceGE2XHhlN1pbXHhkZlx4ZDZFXHgwM2A+IgorICAgIGIiXHg4Zlx4ZGVceGExYlpceDg0XHhkMFx4YTlgXHgwNVx4MGV7XHg4MDtceGUzXHhiZWZceDhkXHgxZFx4ZWJrMS5ceGUzIgorICAgIGIiXHhlOU5ceDE1XHhmN1x4ZDQoXHhmYVx4YmJceDE1XHhiZHVceGY3XHg3Zlx4ODZceGFlIVx4MDNMXHgxZFx4YjVceGMxIgorICAgIGIiXHhiOVx4MTFceGRiXHhkMFx4OTNceGU0XHgwMlx4ZTFceGQyXHhjYkJqY19ceGU4fWRceGRiXHhjM1x4YTBZXHhiZVx4YzkvIgorICAgIGIiXHg5NVx4MDFceGEzLFx4ZTZibEBceDAxXHhkYnBceGMyXHhjZVx4MTRceDE2OFx4YzJxXHhlM3VIXHg4OVhceGE0XHhhOSIKKyAgICBiIlx4MTlceDFkXHhjMX1ceDdmT1hceDE5XHg5Zlx4ZGRceGJlXHg4NVx4ODNceGZmXHg5Nlx4MWVlXHg4Mk9gQ0Y9S1x4ZWIkSSIKKyAgICBiIlx4MTdfXHhlZlhceDhiSid2XHhkZVx4MWYrXHhkOS52XHhmOFR2XHgxN1x4ZjJceDlmNVx4MTlceGUxXHhiOVx4OTFceGE4UyIKKyAgICBiIlx4ODZceGJkXHgxYVwiKFx4YTV4XHg4ZENceDAzWFx4ODFceDkxXHhhOFx4MTFceGM0cFNceDEzXHhiY1x4ZjInSlx4YWUhIgorICAgIGIiXHhlZlx4ZWZceDg0R1x0XHg4ZFx4YzRceDEwXHgxMzJceDAwb1NceDllXHhlMFx4ZTRkXHg4Zlx4Yjh5XHhhY1x4YTZceDlmIgorICAgIGIiLFx4YjhmXHg4N1xyXHhkZlx4OWVFXHgwZlx4ZTFceGQwXFxMXHgwMFx4YjJceGUxaFx4ODRceGVmfVx4OThceGE4XHgxMSIKKyAgICBiIlx4Y2NXI1xcXHg4M1x4N2ZvXHhiYnpceDhmXHgwMCIKKykKKworRklMVEVSU19SQVdfMyA9IFt7ImlkIjogbHptYS5GSUxURVJfSUE2NCwgInN0YXJ0X29mZnNldCI6IDB4MTAwfSwKKyAgICAgICAgICAgICAgICAgeyJpZCI6IGx6bWEuRklMVEVSX0xaTUEyfV0KK0NPTVBSRVNTRURfUkFXXzMgPSAoCisgICAgYiJceGUwXHgwN1x4ODBceDAzXHhkZl1ceDAwXHgwNVx4MTRceDA3YlhceDE5XHhjZFx4ZGRuXHg5OFx4MTVceGU0XHhiNFx4OWQiCisgICAgYiJvXHgxZFx4YzRceGU1XG5ceDAzXHhjYzJoXHhjN1xcXHg4Nlx4ZmZceGY4XHhlMlx4ZmNceGU3XHhkOVx4ZmU2XHhiOCgiCisgICAgYiJceGE4d2RceGMyXCJ1Lm5ceDFlXHhjM1x4ZjJceDhlXHg4ZFx4OGZceDAyXHgxNy9ceGE2PVx4ZjBceGEyXHhkZi9NXHg4OSIKKyAgICBiIlx4YmVceGRlXHhhN1x4MWN6XHgxOC1dXHhkNVx4ZWZceDEzXHg4ZnJaXHgxNVx4ODBceDhjXHhmOFx4OGRvXHhmYVx4MTIiCisgICAgYiJceDliI3ovXHhlZlx4ZjBceGZhRlx4MDFceDgyXHhhM01ceDhlXHhhMXRceGNhNiBCRiRceGU1UVx4YTRceDk4XHhlZVx4ZGUiCisgICAgYiJsXHhlOFx4N2ZceGYwXHg5ZCxiblx4MGJceDEzXHhkNFx4YThceDgxXHhlNE5ceGM4XHg4Nlx4MTUzXHhmNXgyXHhhMk8iCisgICAgYiJceDEzQFFceGExXHgwMC9ceGE1XHhkME9ceDk3XHhkY29ceGFlXHhmN3pceGM0XHhjZFNceGI2dDxceDE2XHhmMlx4OWNJIyIKKyAgICBiIlx4ODl1ZFx4YzY2WVx4ZDlceGVlXHhlNlx4Y2VceDEyXVx4ZTVceGYwXHhhYVx4OTYtUGVceGFkZTpceDA0XHRceDFiXHhmNyIKKyAgICBiIlx4ZGI3XG5ceDg2XHgxZnBceGM4Slx4YmFceGY0XHhmMFZceGE5XHhkY1x4ZjBceDAyJUdceGY5XHhkZj0/XHgxNVx4MWIiCisgICAgYiJceGUxKFx4Y2VceDgyPVx4ZDZJXHhhYzNceDEyXHgwY1JceGI3XHhhZVxyXHhiMWlceDAzXHg5NVx4MDFceGJkXHhiZVx4ZmEiCisgICAgYiJceDAyc1x4MDFQXHg5ZFx4OTZYXHhiMTJqXHhjOExceGE4XHg4NGJceGY2XHhjM1x4ZDRjLUhceDkzb0psXHhkMGlRXHhlNGsiCisgICAgYiJceDg0XHgwYlx4YzFceGI3XHhiY1x4YjFceDE3XHg4OFx4YjFceGNhP0BceGY2XHgwN1x4ZWFceGU2eFx4ZjFIMTJQXHgwZiIKKyAgICBiIlx4OGFceGM5XHhlYXV3XHhlM1x4YmVceGFhaVx4YTlXXHhkMFx4ODBceGNkI2NiNVx4OTlceGQ4XVx4YTlkXHgwY1x4YmQiCisgICAgYiJceGEyXHhkY1dsXHhlZFVHXHhiZlx4ODl5Rlx4Zjc3XHg4MXZceGJkNVx4OThceGJlaDhceDE4V1x4MDhceGYwXHgxYlx4OTkiCisgICAgYiI1Olx4MWE/ckRceDk2XHhhMVx4MDRceDBmXHhhZVx4YmFceDg1XHhlYlx4OWQ1QFx4ZjVceDgzXHhkMzdceDgzXHg4YWMiCisgICAgYiJceDA2XHhkNFx4OTdpXHhjZHRceDE2U1x4ODJrXHhmNktceDAxdnlceDg4XHg5MVx4OWI2VFx4ZGFlXHJceGZkXTprXHhiYWwiCisgICAgYiJceGE5XHhiYmFceGMzNFx4ZjlyXHhlYn1yXHhkYlx4YzdceGRiKlx4OGZceDAzelx4ZGM4aFx4Y2NceGM5XHhkM1x4YmNsIgorICAgIGIiXHhhNS1ceGNiXHhlYUtceGEyXHhjNVx4MTVceGMwXHhlM1x4YzFceDg2Wlx4ZmJceGViTFx4ZTEzXHhjZlx4OWNceGUzIgorICAgIGIiXHgxZFx4YzlceGVkXHhjMlx4MDZceGNjXHhjZSFceDkyXHhlNVx4ZmVceDljXlx4YTU5dyBceDliUFx4YTNQS1x4MDhkIgorICAgIGIiXHhmOVx4ZTJafVx4YTdceGJmXHhlZFx4ZWIlJFx4MGNceDgyXHhiOC9ceGIwXHgwMVx4YTkmLFx4ZjdxaHtRXHg5NilceGYyIgorICAgIGIicVx4OTZceGMzXHg4MFx4YjRceDEyXHhiMFx4YmFceGU2b1x4ZjQhXHhiNFtceGQ0XHg4YXdceDEwXHhmN3RceDBjXHhiMyIKKyAgICBiIlx4ZDlceGQ1XHhjM2BeXHg4MVx4MTE/P1xcXHhhNFx4OTlceDg1Ulx4ZDRceDhlXHg4M1x4YzlceDFlWFx4YmZhXHhmMSIKKyAgICBiIlx4YWNceGIwXHhlYVx4ZWFceGQ3XHhkMFx4YWJceDE4XHhlMlx4ZjJceGVkXHhlMVx4YjdceGM5XHgxOFx4Y2JTXHhlND4iCisgICAgYiJceGM5XHg5NUhceGU4XHhjYlx0XHIlXHhlYlx4YzckLm9ceGYxXHhmM1JceDE3XHgxZGJceGJiXHhkOFVceGE1Xlx4Y2NTIgorICAgIGIiXHgxNlx4MDFceDg3XHhmMy9ceDkzXHhkMVx4ZjB2XHhjMHJceGQ3XHhjY1x4YTJHa3pceGNhXHg4MFx4MGVceGZkXHhkMCIKKyAgICBiIlx4OGJceGJiXHhkMkl4XHhiM1x4MWV5XHhjYS0wXHhlM3peXHhkNlx4ZDZceDhmX1x4ZjFceDlkUFx4OWZpXHhhN1x4ZDEiCisgICAgYiJceGU4XHg5MFx4ODRceGRjXHhiZlx4Y2RreVx4OGVceGRjXHg4MVx4N2ZceGEzXHhiMitceGJmXHgwNFx4ZWZceGQ4XFwiCisgICAgYiJceGM0XHhkZlx4ZTFceGIwXHgwMVx4ZTlceDkzXHhlM1lceGYxXHgxZFlceGU4aFx4ODFceGNmXHhmMXdceGNjXHhiNFx4ZWYiCisgICAgYiIgXHg4YnxceDA0XHhlYVx4ODNlalx4YmVceDFmXHhkNHpceDljYFx4ZDNceDFhXHg5MkFceDA2XHhlNVx4OGZceGE5XHgxMyIKKyAgICBiIlx0XHg5ZT1ceGZhXHgxY1x4ZTVfXHg5ZiV2XHgxYm9ceDExWk9ceGQ4XHhmNFx0XHhkZE1ceDE2LVx4MDRceGZjXHgxODxcIiIKKyAgICBiIkNNXHhkZGd+Ylx4ZjZceGVmXHg4ZVx4MGNceGQwXHhkZXxceGEwJ1x4OGFceDBjXHhkNnhceGFlIUpceGE2Rlx4ODhceDE1dSIKKyAgICBiIlx4MDA4XHgxN1x4YmM3eVx4YjNceGQ4dVx4YWNfXHg4NVx4OGRceGU3XHhjMUBceDljXHhlY3FjXHhhMyNceGFkXHhmMSIKKyAgICBiIlx4OTM1XHhiNSlfXHJceGVjM11ceDBmb101XHhkMG15XHgwN1x4OWJceGVlXHg4MVx4YjVceDBmXHhjZksrXHgwMFx4YzAiCisgICAgYiJceGU0Ylx4MTBceGU0XHgwY1x4MWEgXHg5Ylx4ZTBceDk3dFx4ZjZceGExXHg5ZVx4ODUwXHhiYVx4MGNceDlhXHg4ZFx4YzgiCisgICAgYiJceDhmXHgwN1x4ZDdceGFlXHhjOFx4ZjkraVx4ZGNceGI5a1x4YjA+Zlx4MTlceGI4XHJceGE4XHhmOFx4MWYkXHhhNXtwIgorICAgIGIiXHhjNlx4ODgwXHhjZVx4ZGJceGNmXHhjYV9ceDg2XHhhY1x4ODhoNlx4OGJaJSdceGQwXG5ceGJmXHgwZlx4OWNcIlx4YmEiCisgICAgYiJceGU1XHg4Nlx4OWZceDBmN1g9bU5YW1x4Y2NceDE5RlVceGM5XHg4NjBceGJjXHg5MGErKiBceGFlXyRceDAzXHgxZVx4ZDMiCisgICAgYiJceGNkX1x4YTBceDljXHhkZVx4YWY0NnFceGE1XHhjOVx4OTJceGQ3XHhjYVx4ZTNgXHg5ZFx4ODV9XHhiNFx4ZmZceGIzIgorICAgIGIiXHg4M1x4ZmJceGI2XHhjYVx4YWVgXHgwYndceDdmXHhmY1x4ZDhceGFjVmVceDE5XHhjOFx4MTdceDBiWlx4YWRceDg4IgorICAgIGIiXHhlYiNceDk3XHgwM1x4MTNceGIxZFx4MGZ7XHgwY1x4MDR3XHgwN1xyXHg5N1x4YmRceGQ2XHhjMVx4YzNCOlx4OTVceDA4IgorICAgIGIiXlx4MTBWXHhhZWFIXHgwMlx4ZDlceGUzXG5cXFx4MDFYXHhmNlx4OWNceDhhXHgwNnUjJVx4YmUqXHhhMVx4MTh2XHg4NSIKKyAgICBiIlx4ZWMhXHQ0XHgwMFx4MDBceDAwIgorKQorCitGSUxURVJTX1JBV180ID0gW3siaWQiOiBsem1hLkZJTFRFUl9ERUxUQSwgImRpc3QiOiA0fSwKKyAgICAgICAgICAgICAgICAgeyJpZCI6IGx6bWEuRklMVEVSX1g4NiwgInN0YXJ0X29mZnNldCI6IDB4NDB9LAorICAgICAgICAgICAgICAgICB7ImlkIjogbHptYS5GSUxURVJfTFpNQTIsICJwcmVzZXQiOiA0LCAibGMiOiAyfV0KK0NPTVBSRVNTRURfUkFXXzQgPSAoCisgICAgYiJceGUwXHgwN1x4ODBceDA2XHgwZVxcXHgwMFx4MDVceDE0XHgwN2JXXHhhYWhceGRkXHgxMFx4ZGMnXHhkNlx4OTAsXHhjNnYiCisgICAgYiJKcSBceDE0bFx4YjdceDgzeEJceDBiXHg5N2Y9JmZ4XHhiYVxuPlRuXHhiZlx4OGZceGZiXHgxZEZceGNhXHhjM3ZfXHhjYT8iCisgICAgYiJceGZiVjxceDkyI1x4ZDR3XHhhNlx4OGFceGViXHhmNlx4MDNceGMwXHgwMVx4OTRceGQ4XHg5ZVx4MTNceDEyXHg5OFx4ZDEiCisgICAgYiIqXHhmYV1jXHhlOFx4MWV+XHhhZlx4YjVdRWdceGZiXHg5ZVx4MDFcIjhceGIyXHg5MFx4MDY9flx4ZTlceDkxV1x4Y2QiCisgICAgYiJceGVjRFx4MTJceGM3XHhmYVx4ZTFceDkxXHgwNlx4YzdceDk5XHhiOVx4ZTNceDkwMVx4ODdceDE5dVx4MGZceDg2OVx4ZmYiCisgICAgYiJceGMxXHhiMGh3fFx4YjBceGRjbFx4Y2NrXHhiMTZvN1x4ODVceGVle1lfYlx4YmZceGJjJFx4ZjM9XHg4ZFx4OGJ3XHhlNVoiCisgICAgYiJceDA4QFx4YzRrbUVceGFkXHhmYlx4ZjYqXHhkOFx4YWRceGExXHhmYlx4YzV7XHhkZWosKVx4MWVtQlx4MWY8XHhhZWNhIgorICAgIGIiXHg4MChceGVlXHgwNyBceGRmXHhlOVx4ZjhceGViXHgwZS1ceDk3XHg4Nlx4OTBjXHhmOVx4ZWEnQlx4ZjdgXHhkN1x4YjAiCisgICAgYiJceDkyXHhiZFx4YTBceDgyXVx4YmRceDBlXHgwZUJceDE5XHhkY1x4OTZceGM2XHgxOVx4ZDg2RFx4ZjBceGQ1XHg4MzEiCisgICAgYiJceDAzXHhiN1x4MWNceGY3JjVceDFhXHg4ZiBQWiZqXHhmOFx4OThceDFib1x4Y2NceDg2XHg5YlNceGQzXHhhNVx4Y2R1IgorICAgIGIiXHhmOSRceGNjXHg5N29ceGU1Vn5ceGZiXHg5N1x4YjVceDBiXHgxN1x4OWNceGZkeFdceDEwXHhmZXA0XHg4MFx4ZGFIRFkiCisgICAgYiJceGZhKVx4ZmV0XHhiNVwiXHhkNFx4ZDNGXHg4MVx4ZjRceDEzXHgxZlx4ZWNceGRmXHhhNVx4MTNceGZjXCJceDkxeFx4YjciCisgICAgYiJceDk5XHhjZVx4YzhceDkyXG5ceGViW1x4MTBsKllceGQ4XHhiMUBceDA2XHhjOG9ceDhkN3JceGVidVx4ZmQ1XHgwZVx4N2YiCisgICAgYiJceGYxJFV7XHR9XHgxZlFceGNmeE5ceDlkXHg5ZlhYXHhlOWBceDgzXHhjMVx4MDZceGY0XHg4N3YtZlx4MTFceGRiL1xcIgorICAgIGIiXHgwNlx4ZmZceGQ3KUJceGYzZ1x4MDZceDg4IzJceDFlQjI0NFx4N2Y0cVx0XHhjODkzP21QWFx4OTVceGE2YVx4ZmIpZCIKKyAgICBiIlx4OWJceGZjXHg5OFx4OWFqXHgwNFx4YWVceDliXHg5ZFx4MTl3XHhiYVx4ZjkyXHhmYUFceDExXFxceDE3XHg5N0MzXHhhNCIKKyAgICBiIlx4YmMhXHg4OFx4Y2RvW1x4ZWM6XHgwMzBceDkxLlx4ODVceGUwQFxcNFx4MTZceDEyXHg5ZFx4Y2FKdlx4OTdceGIwNCIKKyAgICBiIlx4YWNrXHhjYmtmXHhhM3NzXHhmY1x4MTZeXHg4Y2VceDg1YVx4YTU9Jlx4ZWNyXHhiM3BceGQxRVx4ZDVceDgweVx4YzciCisgICAgYiJceGRhXHhmNlx4ZmVrXHhiY1RceGJmSFx4ZWVceDE1b1x4YzVceDhjXHg4MzBceGVjXHgxZFx4MDFceGFlXHgwYy1lXFwiCisgICAgYiJceDkxXHg5MFx4OTRceGIyXHhmOFx4ODhceDkxXHhlOFx4MGJceGFlXHhhNz5ceDk4XHhmNlx4OWNrXHhkMlx4YzZceDA4IgorICAgIGIiXHhlNlx4YWJcdFx4OThceGYyIVx4YTBceDhjXlx4YWNxQVx4OTk8XHgxY0VHXHg5N1x4YzhceGYxXHhiNlx4YjlceDgyIgorICAgIGIiXHg4ZFx4ZjdceDA4c1x4OThhXHhmZlx4ZTNceGNjXHg5Mlx4MGVceGQyXHhiNlVceGQ3XHhkOVx4ODZceDdmYVx4ZTVceDFjIgorICAgIGIiXHg4ZFRHQFx0XHgxZVx4MGU3Klx4ZmNceGRlXHhiY102Tlx4ZjdceGYxXHg4NFx4OWVceDlmXHhjZlx4ZTlceDFlXHhiNSciCisgICAgYiJceGY0PFx4ZGZceDk5c3FceGQwXHg5ZFx4YmRceDk5XHgwYlx4YjQlcDRceGJme1x4YmJceDhhXHhkMlx4MGJceGJjPU0iCisgICAgYiJceDk0SDpceGY1XHhhOFx4ZDZceGE0XHhjOTBceGMyRFx4YjlceGQzXHhhOFx4YjBTXHg4NyBgXHhhMlx4ZWJceGYzV1x4Y2UiCisgICAgYiIgN1x4ZjlOI1xyXHhlNlx4YmVcdFx4OWRceGU3XHg4MTFceGY5XHgxMFx4YzFceGMyXHgxNFx4ZjZceGZjXHhjYmFceGI3IgorICAgIGIiXHhiMVx4N2ZceDk1bFx4ZTRcdGpBXHhlYzpceDEwXHhlNVx4ZmVceGMyXFw9RFx4ZTJceDBjXHgwYjNdXHhmN1x4YzFceGY3IgorICAgIGIiXHhiY2VaXHhiMUFceGVhXHgxNlx4ZTVceGZkZGdGUVx4ZWRceGFmXHgwNFx4YTNceGQzXHhmOFx4YTJxXHgxOUJceGQ0ciIKKyAgICBiIlx4YzVceDBjXHg5YVx4MTRceDk0XHhlYVx4OTFceGM0b1x4ZTRceGJiXHhiNFx4OTlceGY0QFx4ZDFceGU2XHgwY1x4ZTMiCisgICAgYiJceGM2ZFx4YTBRXG5ceGYyL1x4ZDhceGI4UzVceDhhXHgxODpceGI1Z1x4YWNceDk1RFx4Y2VceDE3XHgwN1x4ZDR6XHhkYSIKKyAgICBiIlx4OTBceGU2NVx4MDdceDE5SCFcdFx4ZmR1XHgxNlx4OGVceDBlUlx4MTlceGY0XHg4Y2xceDBjXHhmOVFceGYxXHg4MCIKKyAgICBiIlx4ZTNceGJmXHhkN09ceGY4XHg4Y1x4MThceDBiXHg5Y1x4ZjFceDFmYlx4ZTFcdFJceGIyXHhmMVx4ZTFBXHhlYSBceGNmLSIKKyAgICBiIklHRVx4ZjFceDE0XHg5OCRceDgzXHgxNVx4YzlceGQ4alx4YmZceDE5XHgwZlx4ZDVceGQxXHhhYVx4YjNceGYzXHhhNUkycyIKKyAgICBiIlx4OGRceDE0NVx4Y2FceGQ1XHhkOTNceDljXHhiOEQwXHhlNlx4YWElXHhkMFx4YzBQfUpPXmhceDhlXHgwOFx4YWRsVi4iCisgICAgYiJceDE4XHg4OFx4MTNceDA1b1x4YjBceDA3XHhlYXdceGUwXHhiNlx4YTRceGQ1Klx4ZTRyXHhlZlx4MDdHK1x4YzFceGJlaVsiCisgICAgYiJ3XHhlOFx4YWJAX1x4ZWZceDE1eVx4ZTVceDEyXHhjOVdceDFiLlx4YWRceDg1LVx4YzJceGY3XHhlM21VNmdceDhlU0EiCisgICAgYiJceDAxKFx4ZDNceGRiXHgxNlx4MTM9XHhkZVx4OTJceGY5LERceGI4XHg4YVx4YjJceGI0XHhjOVx4YzNceGVmbkVceGU4XFwiCisgICAgYiJceGE2XHhlMllceGQyXHhjZlx4Y2JceDhjXHhiNlx4ZDVceGU5XHgxZFx4MWVceDlhXHg4Yn5ceGUyXHhhNlxyRVx4ODR1ViIKKyAgICBiIlx4ZWRceGM2XHg5OVx4ZGRtPFx4MTBbXHgwZnVceDFmXHhjMVx4MWQxXG5ceGNmd1x4YjIlIVx4ZjBbXHhjZVx4ODdceDgzQiIKKyAgICBiIlx4MDhceGFhLFx4MDglZFx4Y2VmXHg5NFwiXHhkOWcuXHhjODNceGNiWFkrNFx4ZWNceDg1cUFcblx4MWQ9OVx4ZjAqXHhiMSIKKyAgICBiIlx4MWYvXHhmM3NceGQ2MWJceDdmQFx4ZmJceDlkXHhlM0ZRXFxceGJkXHg4Mlx4MWVceDAwXHhmM1x4Y2VceGQzXHhlMSIKKyAgICBiIlx4Y2EsRVx4ZmQ3W1x4YWJceGI2XHhiN1x4YWMhbUF9XHhiZFx4OWQzUjVceDljRlx4YWJIXHhlYlx4OTIpY2NceDEzXHhkMCIKKyAgICBiIlx4YmRceGVlXHhlOW57XHgxZElKQlx4YTVceGViXHgxMVx4ZThgdyZgXHg4Yn1AT3hlXHRceDhhXHgwN1x4MDJceDk1XHhmMiIKKyAgICBiIlx4ZWRceGRhfFx4YjFlXHhiZVx4YWFceGJiZ1x4MTlAXHhlMVlceDg3OFx4ODRceDBmXHg4Y1x4ZTNceGM5OFx4ZjJceDllIgorICAgIGIiXHhkNU5ceGI1Slx4ZWZceGFiIVx4ZTJceDhkcVx4ZTFceGU1cVx4YzVceGVlXHgxMVdceGI3XHhlNGsqXHgwMjdceGEwIgorICAgIGIiXHhhM0pceGY0XHhkOG1ceGQwcVx4OTRceGNiXHgwN1xuOlx4YjZgLlx4ZTRceDljXHgxNStceGMwKVx4ZGVceDgwWFx4ZDQiCisgICAgYiJceGNmUW1ceDAxXHhjMmNQXHgxY0FceDg1J1x4YzlceGFjXHg4Ylx4ZTZceGIyKVx4ZTZceDg0dFx4MWNceDkyXHhlNFoiCisgICAgYiJceDFjUlx4YjBceDllXHg5Nlx4ZDFceGZiXHgxY1x4YTZceDhiXHhjYmBceDEwXHgxMl1ceGYyZ1JceDliRlRceGUwXHhjOEgiCisgICAgYiJTXHhmYlx4YWM8XHgwNFx4YzdceGMxXHhlOFx4ZWRQXHhmNFx4MTZceGRiXHhjMFx4ZDdlXHhjMlx4MTdKXlx4MWZceGFiIgorICAgIGIiXHhmZltceDA4XHgxOVx4YjRceGY1XHhmYlx4MTlceGI0XHgwNFx4ZTVjfiddXHhjYlx4YzJBXHhlY1x4OTBceGQwXHhlZCIKKyAgICBiIlx4MDYsXHhjNUt7XHg4Nlx4MDNceGIxXHhjZE14XHhkZVFceDhjM1x4ZjlceDhhXHhlYT1ceDg5XHhhYmFceGQyXHhjODlhIgorICAgIGIiXHhkNzJceGYwXHhjM1x4MTlceDhhXHhkZnNceGQ0XHhmZFx4YmJceDgxYlx4ZWFFXCJceGQ4XHhmNGRceDBjRFx4ZjdJSiEiCisgICAgYiJceGU1ZFx4YmJHXHhlOVx4Y2FtXHhhYVx4MGZfclx4OTVceDkxTkJxXHhjYVBceGNlXHhhN1x4YTlceGI1XHgxMFx4OTRlUCEiCisgICAgYiJ8XHg4NTZceGNkXHhiZklpclx4YjhlXHg5YmpQXHg5N3FceGFid1M3XHgxYVx4MGVoTVx4ZTdceGNhXHg4Nj9ceGRlUH15fiIKKyAgICBiIlx4MGZceDk1SVx4ZmNceDEzXHhlMTxRXHgxYlx4ODY4XHgxZFx4MTFceGRmXHg5NFx4ZjRceDgyPnJceGE5a1x4ODhceGNiIgorICAgIGIiXHhmZFx4YzN2XHhlMlx4YjlceDhhXHgwMlx4OGVxXHg5MklceGY4XHhmNlx4ZjFceDAzc1x4OWJceGI4XHhlM1wiXHhlMyIKKyAgICBiIlx4YTlceGE1PkRceGI4XHg5NjtceGU3XHg5Mlx4ZDEzM1x4ZThceGRkJ2VceGM5Llx4ZGM7XHgxN1x4MWZceGY1SFx4MTNxIgorICAgIGIiXHhhNFdceDBjXHhkYn5ceDk4XHgwMVx4ZWJceGRmXHhlMzJceDEzXHgwZlx4ZGR4XG42XHhhMFx0XHgxMFx4YjZceGJiIgorICAgIGIiXHhiMFx4YzNceDE4XHhiNjtceDlmaltceGQ5XHhkNVx4YzlceDA2XHg4YVx4ODdceGNkXHhlNVx4ZWVceGZjXHg5Yy0lQCIKKyAgICBiIlx4ZWVceGUwXHhlYlx4ZDJceGUzXHhlOFx4ZmJceGMwXHgxMjJcXFx4YzdceGFmXHhjMlx4YTFPdGhceGIzXHg4Zlx4ODIiCisgICAgYiJceGIzXHgxOFx4YThceDA3XHhkNVx4ZWVfXHhiZVx4ZTBceDFjQVx4MWVfXHJceDlhXHhiMFx4MTdXJlx4YTJEXHg5MVx4OTQiCisgICAgYiJceDFhXHhiMlx4ZWZceGYyXHhkY1x4ODU7WFx4YjAsXHhlYj4tN1NceGU1XHhjYVx4MDcpXHgxZnBceDdmXHhjYVFCTFx4Y2EiCisgICAgYiJceGYzXHhiOWRceGZjXHhiNXN1XHhiMFx4YzhceDk1XHg5MFx4ZWIqKVx4YTB2XHhlNFx4OWF7RldceGY0bFx4ZGVceGNkaiIKKyAgICBiIlx4MDAiCispCisKKworZGVmIHRlc3RfbWFpbigpOgorICAgIHJ1bl91bml0dGVzdCgKKyAgICAgICAgQ29tcHJlc3NvckRlY29tcHJlc3NvclRlc3RDYXNlLAorICAgICAgICBDb21wcmVzc0RlY29tcHJlc3NGdW5jdGlvblRlc3RDYXNlLAorICAgICAgICBGaWxlVGVzdENhc2UsCisgICAgICAgIE1pc2NlbGxhbmVvdXNUZXN0Q2FzZSwKKyAgICApCisKK2lmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CisgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbWFpbGJveC5weSBiL0xpYi90ZXN0L3Rlc3RfbWFpbGJveC5weQppbmRleCBlZjY0MzY2Li40YmIwNWE0IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X21haWxib3gucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9tYWlsYm94LnB5CkBAIC05NSwxNCArOTUsMTQgQEAKICAgICAgICAgICAgICIiIikKIAogICAgIGRlZiB0ZXN0X2FkZF9pbnZhbGlkXzhiaXRfYnl0ZXNfaGVhZGVyKHNlbGYpOgotICAgICAgICBrZXkgPSBzZWxmLl9ib3guYWRkKHNlbGYuX25vbmFzY2lpX21zZy5lbmNvZGUoJ2xhdGluMScpKQorICAgICAgICBrZXkgPSBzZWxmLl9ib3guYWRkKHNlbGYuX25vbmFzY2lpX21zZy5lbmNvZGUoJ2xhdGluLTEnKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5fYm94KSwgMSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLl9ib3guZ2V0X2J5dGVzKGtleSksCi0gICAgICAgICAgICBzZWxmLl9ub25hc2NpaV9tc2cuZW5jb2RlKCdsYXRpbjEnKSkKKyAgICAgICAgICAgIHNlbGYuX25vbmFzY2lpX21zZy5lbmNvZGUoJ2xhdGluLTEnKSkKIAogICAgIGRlZiB0ZXN0X2ludmFsaWRfbm9uYXNjaWlfaGVhZGVyX2FzX3N0cmluZyhzZWxmKToKICAgICAgICAgc3ViaiA9IHNlbGYuX25vbmFzY2lpX21zZy5zcGxpdGxpbmVzKClbMV0KLSAgICAgICAga2V5ID0gc2VsZi5fYm94LmFkZChzdWJqLmVuY29kZSgnbGF0aW4xJykpCisgICAgICAgIGtleSA9IHNlbGYuX2JveC5hZGQoc3Viai5lbmNvZGUoJ2xhdGluLTEnKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLl9ib3guZ2V0X3N0cmluZyhrZXkpLAogICAgICAgICAgICAgJ1N1YmplY3Q6ID0/dW5rbm93bi04Yml0P2I/Um1Gc2FXNWhjSFRoY2lCbzRYcG9iM3B6ZXVGc2JPMTA0WE56JwogICAgICAgICAgICAgJ1lXd3VJRTNoY2lCeVpXNWtaV3gwNld3Lz89XG5cbicpCkBAIC05MjksOCArOTI5LDcgQEAKICAgICAgICAgIyB0aGUgbXRpbWUgYW5kIHNob3VsZCBjYXVzZSBhIHJlLXJlYWQuIE5vdGUgdGhhdCAic2xlZXAKICAgICAgICAgIyBlbXVsYXRpb24iIGlzIHN0aWxsIGluIGVmZmVjdCwgYXMgc2tld2ZhY3RvciBpcyAtMy4KICAgICAgICAgZmlsZW5hbWUgPSBvcy5wYXRoLmpvaW4oc2VsZi5fcGF0aCwgJ2N1cicsICdzdHJheS1maWxlJykKLSAgICAgICAgZiA9IG9wZW4oZmlsZW5hbWUsICd3JykKLSAgICAgICAgZi5jbG9zZSgpCisgICAgICAgIHN1cHBvcnQuY3JlYXRlX2VtcHR5X2ZpbGUoZmlsZW5hbWUpCiAgICAgICAgIG9zLnVubGluayhmaWxlbmFtZSkKICAgICAgICAgc2VsZi5fYm94Ll9yZWZyZXNoKCkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlZnJlc2hlZCgpKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tYWlsY2FwLnB5IGIvTGliL3Rlc3QvdGVzdF9tYWlsY2FwLnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE0Y2QwOWMKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X21haWxjYXAucHkKQEAgLTAsMCArMSwyMjEgQEAKK2ltcG9ydCBtYWlsY2FwCitpbXBvcnQgb3MKK2ltcG9ydCBzaHV0aWwKK2ltcG9ydCB0ZXN0LnN1cHBvcnQKK2ltcG9ydCB1bml0dGVzdAorCisjIExvY2F0aW9uIG9mIG1haWxjYXAgZmlsZQorTUFJTENBUEZJTEUgPSB0ZXN0LnN1cHBvcnQuZmluZGZpbGUoIm1haWxjYXAudHh0IikKKworIyBEaWN0IHRvIGFjdCBhcyBtb2NrIG1haWxjYXAgZW50cnkgZm9yIHRoaXMgdGVzdAorIyBUaGUga2V5cyBhbmQgdmFsdWVzIHNob3VsZCBtYXRjaCB0aGUgY29udGVudHMgb2YgTUFJTENBUEZJTEUKK01BSUxDQVBESUNUID0geworICAgICdhcHBsaWNhdGlvbi94LW1vdmllJzoKKyAgICAgICAgW3snY29tcG9zZSc6ICdtb3ZpZW1ha2VyICVzJywKKyAgICAgICAgICAneDExLWJpdG1hcCc6ICciL3Vzci9saWIvWm1haWwvYml0bWFwcy9tb3ZpZS54Ym0iJywKKyAgICAgICAgICAnZGVzY3JpcHRpb24nOiAnIk1vdmllIicsCisgICAgICAgICAgJ3ZpZXcnOiAnbW92aWVwbGF5ZXIgJXMnfV0sCisgICAgJ2FwcGxpY2F0aW9uLyonOgorICAgICAgICBbeydjb3Bpb3Vzb3V0cHV0JzogJycsCisgICAgICAgICAgJ3ZpZXcnOiAnZWNobyAiVGhpcyBpcyBcXCIldFxcIiBidXQgICAgICAgIGlzIDUwIFxcJSBHcmVlayB0byBtZSIgXFw7IGNhdCAlcyd9XSwKKyAgICAnYXVkaW8vYmFzaWMnOgorICAgICAgICBbeydlZGl0JzogJ2F1ZGlvY29tcG9zZSAlcycsCisgICAgICAgICAgJ2NvbXBvc2UnOiAnYXVkaW9jb21wb3NlICVzJywKKyAgICAgICAgICAnZGVzY3JpcHRpb24nOiAnIkFuIGF1ZGlvIGZyYWdtZW50IicsCisgICAgICAgICAgJ3ZpZXcnOiAnc2hvd2F1ZGlvICVzJ31dLAorICAgICd2aWRlby9tcGVnJzoKKyAgICAgICAgW3sndmlldyc6ICdtcGVnX3BsYXkgJXMnfV0sCisgICAgJ2FwcGxpY2F0aW9uL3Bvc3RzY3JpcHQnOgorICAgICAgICBbeyduZWVkc3Rlcm1pbmFsJzogJycsICd2aWV3JzogJ3BzLXRvLXRlcm1pbmFsICVzJ30sCisgICAgICAgICB7J2NvbXBvc2UnOiAnaWRyYXcgJXMnLCAndmlldyc6ICdwcy10by10ZXJtaW5hbCAlcyd9XSwKKyAgICAnYXBwbGljYXRpb24veC1kdmknOgorICAgICAgICBbeyd2aWV3JzogJ3hkdmkgJXMnfV0sCisgICAgJ21lc3NhZ2UvZXh0ZXJuYWwtYm9keSc6CisgICAgICAgIFt7J2NvbXBvc2V0eXBlZCc6ICdleHRjb21wb3NlICVzJywKKyAgICAgICAgICAnZGVzY3JpcHRpb24nOiAnIkEgcmVmZXJlbmNlIHRvIGRhdGEgc3RvcmVkIGluIGFuIGV4dGVybmFsIGxvY2F0aW9uIicsCisgICAgICAgICAgJ25lZWRzdGVybWluYWwnOiAnJywKKyAgICAgICAgICAndmlldyc6ICdzaG93ZXh0ZXJuYWwgJXMgJXthY2Nlc3MtdHlwZX0gJXtuYW1lfSAle3NpdGV9ICAgICAle2RpcmVjdG9yeX0gJXttb2RlfSAle3NlcnZlcn0nfV0sCisgICAgJ3RleHQvcmljaHRleHQnOgorICAgICAgICBbeyd0ZXN0JzogJ3Rlc3QgImBlY2hvICAgICAle2NoYXJzZXR9IHwgdHIgXCdbQS1aXVwnIFwnW2Etel1cJ2AiICA9IGlzby04ODU5LTgnLAorICAgICAgICAgICdjb3Bpb3Vzb3V0cHV0JzogJycsCisgICAgICAgICAgJ3ZpZXcnOiAnc2hvd25vbmFzY2lpIGlzby04ODU5LTggLWUgcmljaHRleHQgLXAgJXMnfV0sCisgICAgJ2ltYWdlL3gteHdpbmRvd2R1bXAnOgorICAgICAgICBbeyd2aWV3JzogJ2Rpc3BsYXkgJXMnfV0sCisgICAgJ2F1ZGlvLyonOgorICAgICAgICBbeyd2aWV3JzogJy91c3IvbG9jYWwvYmluL3Nob3dhdWRpbyAldCd9XSwKKyAgICAndmlkZW8vKic6CisgICAgICAgIFt7J3ZpZXcnOiAnYW5pbWF0ZSAlcyd9XSwKKyAgICAnYXBwbGljYXRpb24vZnJhbWUnOgorICAgICAgICBbeydwcmludCc6ICciY2F0ICVzIHwgbHAiJywgJ3ZpZXcnOiAnc2hvd2ZyYW1lICVzJ31dLAorICAgICdpbWFnZS9yZ2InOgorICAgICAgICBbeyd2aWV3JzogJ2Rpc3BsYXkgJXMnfV0KK30KKworCitjbGFzcyBIZWxwZXJGdW5jdGlvblRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfbGlzdG1haWxjYXBmaWxlcyhzZWxmKToKKyAgICAgICAgIyBUaGUgcmV0dXJuIHZhbHVlIGZvciBsaXN0bWFpbGNhcGZpbGVzKCkgd2lsbCB2YXJ5IGJ5IHN5c3RlbS4KKyAgICAgICAgIyBTbyB2ZXJpZnkgdGhhdCBsaXN0bWFpbGNhcGZpbGVzKCkgcmV0dXJucyBhIGxpc3Qgb2Ygc3RyaW5ncyB0aGF0IGlzIG9mCisgICAgICAgICMgbm9uLXplcm8gbGVuZ3RoLgorICAgICAgICBtY2ZpbGVzID0gbWFpbGNhcC5saXN0bWFpbGNhcGZpbGVzKCkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKG1jZmlsZXMsIGxpc3QpCisgICAgICAgIGZvciBtIGluIG1jZmlsZXM6CisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UobSwgc3RyKQorICAgICAgICB3aXRoIHRlc3Quc3VwcG9ydC5FbnZpcm9ubWVudFZhckd1YXJkKCkgYXMgZW52OgorICAgICAgICAgICAgIyBBY2NvcmRpbmcgdG8gUkZDIDE1MjQsIGlmIE1BSUxDQVBTIGVudiB2YXJpYWJsZSBleGlzdHMsIHVzZSB0aGF0CisgICAgICAgICAgICAjIGFuZCBvbmx5IHRoYXQuCisgICAgICAgICAgICBpZiAiTUFJTENBUFMiIGluIGVudjoKKyAgICAgICAgICAgICAgICBlbnZfbWFpbGNhcHMgPSBlbnZbIk1BSUxDQVBTIl0uc3BsaXQob3MucGF0aHNlcCkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgZW52X21haWxjYXBzID0gWyIvdGVzdGRpcjEvLm1haWxjYXAiLCAiL3Rlc3RkaXIyL21haWxjYXAiXQorICAgICAgICAgICAgICAgIGVudlsiTUFJTENBUFMiXSA9IG9zLnBhdGhzZXAuam9pbihlbnZfbWFpbGNhcHMpCisgICAgICAgICAgICAgICAgbWNmaWxlcyA9IG1haWxjYXAubGlzdG1haWxjYXBmaWxlcygpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW52X21haWxjYXBzLCBtY2ZpbGVzKQorCisgICAgZGVmIHRlc3RfcmVhZG1haWxjYXBmaWxlKHNlbGYpOgorICAgICAgICAjIFRlc3QgcmVhZG1haWxjYXBmaWxlKCkgdXNpbmcgdGVzdCBmaWxlLiBJdCBzaG91bGQgbWF0Y2ggTUFJTENBUERJQ1QuCisgICAgICAgIHdpdGggb3BlbihNQUlMQ0FQRklMRSwgJ3InKSBhcyBtY2Y6CisgICAgICAgICAgICBkID0gbWFpbGNhcC5yZWFkbWFpbGNhcGZpbGUobWNmKQorICAgICAgICBzZWxmLmFzc2VydERpY3RFcXVhbChkLCBNQUlMQ0FQRElDVCkKKworICAgIGRlZiB0ZXN0X2xvb2t1cChzZWxmKToKKyAgICAgICAgIyBUZXN0IHdpdGhvdXQga2V5CisgICAgICAgIGV4cGVjdGVkID0gW3sndmlldyc6ICdtcGVnX3BsYXkgJXMnfSwgeyd2aWV3JzogJ2FuaW1hdGUgJXMnfV0KKyAgICAgICAgYWN0dWFsID0gbWFpbGNhcC5sb29rdXAoTUFJTENBUERJQ1QsICd2aWRlby9tcGVnJykKKyAgICAgICAgc2VsZi5hc3NlcnRMaXN0RXF1YWwoZXhwZWN0ZWQsIGFjdHVhbCkKKworICAgICAgICAjIFRlc3Qgd2l0aCBrZXkKKyAgICAgICAga2V5ID0gJ2NvbXBvc2UnCisgICAgICAgIGV4cGVjdGVkID0gW3snZWRpdCc6ICdhdWRpb2NvbXBvc2UgJXMnLAorICAgICAgICAgICAgICAgICAgICAgJ2NvbXBvc2UnOiAnYXVkaW9jb21wb3NlICVzJywKKyAgICAgICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbic6ICciQW4gYXVkaW8gZnJhZ21lbnQiJywKKyAgICAgICAgICAgICAgICAgICAgICd2aWV3JzogJ3Nob3dhdWRpbyAlcyd9XQorICAgICAgICBhY3R1YWwgPSBtYWlsY2FwLmxvb2t1cChNQUlMQ0FQRElDVCwgJ2F1ZGlvL2Jhc2ljJywga2V5KQorICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChleHBlY3RlZCwgYWN0dWFsKQorCisgICAgZGVmIHRlc3Rfc3Vic3Qoc2VsZik6CisgICAgICAgIHBsaXN0ID0gWydpZD0xJywgJ251bWJlcj0yJywgJ3RvdGFsPTMnXQorICAgICAgICAjIHRlc3QgY2FzZTogKFtmaWVsZCwgTUlNRXR5cGUsIGZpbGVuYW1lLCBwbGlzdD1bXV0sIDxleHBlY3RlZCBzdHJpbmc+KQorICAgICAgICB0ZXN0X2Nhc2VzID0gWworICAgICAgICAgICAgKFsiIiwgImF1ZGlvLyoiLCAiZm9vLnR4dCJdLCAiIiksCisgICAgICAgICAgICAoWyJlY2hvIGZvbyIsICJhdWRpby8qIiwgImZvby50eHQiXSwgImVjaG8gZm9vIiksCisgICAgICAgICAgICAoWyJlY2hvICVzIiwgImF1ZGlvLyoiLCAiZm9vLnR4dCJdLCAiZWNobyBmb28udHh0IiksCisgICAgICAgICAgICAoWyJlY2hvICV0IiwgImF1ZGlvLyoiLCAiZm9vLnR4dCJdLCAiZWNobyBhdWRpby8qIiksCisgICAgICAgICAgICAoWyJlY2hvIFwldCIsICJhdWRpby8qIiwgImZvby50eHQiXSwgImVjaG8gJXQiKSwKKyAgICAgICAgICAgIChbImVjaG8gZm9vIiwgImF1ZGlvLyoiLCAiZm9vLnR4dCIsIHBsaXN0XSwgImVjaG8gZm9vIiksCisgICAgICAgICAgICAoWyJlY2hvICV7dG90YWx9IiwgImF1ZGlvLyoiLCAiZm9vLnR4dCIsIHBsaXN0XSwgImVjaG8gMyIpCisgICAgICAgIF0KKyAgICAgICAgZm9yIHRjIGluIHRlc3RfY2FzZXM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1haWxjYXAuc3Vic3QoKnRjWzBdKSwgdGNbMV0pCisKKworY2xhc3MgR2V0Y2Fwc1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfbW9ja19nZXRjYXBzKHNlbGYpOgorICAgICAgICAjIFRlc3QgbWFpbGNhcC5nZXRjYXBzKCkgdXNpbmcgbW9jayBtYWlsY2FwIGZpbGUgaW4gdGhpcyBkaXIuCisgICAgICAgICMgVGVtcG9yYXJpbHkgb3ZlcnJpZGUgYW55IGV4aXN0aW5nIHN5c3RlbSBtYWlsY2FwIGZpbGUgYnkgcG9pbnRpbmcgdGhlCisgICAgICAgICMgTUFJTENBUFMgZW52aXJvbm1lbnQgdmFyaWFibGUgdG8gb3VyIG1vY2sgZmlsZS4KKyAgICAgICAgd2l0aCB0ZXN0LnN1cHBvcnQuRW52aXJvbm1lbnRWYXJHdWFyZCgpIGFzIGVudjoKKyAgICAgICAgICAgIGVudlsiTUFJTENBUFMiXSA9IE1BSUxDQVBGSUxFCisgICAgICAgICAgICBjYXBzID0gbWFpbGNhcC5nZXRjYXBzKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RGljdEVxdWFsKGNhcHMsIE1BSUxDQVBESUNUKQorCisgICAgZGVmIHRlc3Rfc3lzdGVtX21haWxjYXAoc2VsZik6CisgICAgICAgICMgVGVzdCBtYWlsY2FwLmdldGNhcHMoKSB3aXRoIG1haWxjYXAgZmlsZShzKSBvbiBzeXN0ZW0sIGlmIGFueS4KKyAgICAgICAgY2FwcyA9IG1haWxjYXAuZ2V0Y2FwcygpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShjYXBzLCBkaWN0KQorICAgICAgICBtYWlsY2FwZmlsZXMgPSBtYWlsY2FwLmxpc3RtYWlsY2FwZmlsZXMoKQorICAgICAgICBleGlzdGluZ21jZmlsZXMgPSBbbWNmIGZvciBtY2YgaW4gbWFpbGNhcGZpbGVzIGlmIG9zLnBhdGguZXhpc3RzKG1jZildCisgICAgICAgIGlmIGV4aXN0aW5nbWNmaWxlczoKKyAgICAgICAgICAgICMgQXQgbGVhc3QgMSBtYWlsY2FwIGZpbGUgZXhpc3RzLCBzbyB0ZXN0IHRoYXQuCisgICAgICAgICAgICBmb3IgKGssIHYpIGluIGNhcHMuaXRlbXMoKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoaywgc3RyKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZSh2LCBsaXN0KQorICAgICAgICAgICAgICAgIGZvciBlIGluIHY6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShlLCBkaWN0KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyBObyBtYWlsY2FwIGZpbGVzIG9uIHN5c3RlbS4gZ2V0Y2FwcygpIHNob3VsZCByZXR1cm4gZW1wdHkgZGljdC4KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoe30sIGNhcHMpCisKKworY2xhc3MgRmluZG1hdGNoVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9maW5kbWF0Y2goc2VsZik6CisKKyAgICAgICAgIyBkZWZhdWx0IGZpbmRtYXRjaCBhcmd1bWVudHMKKyAgICAgICAgYyA9IE1BSUxDQVBESUNUCisgICAgICAgIGZuYW1lID0gImZvby50eHQiCisgICAgICAgIHBsaXN0ID0gWyJhY2Nlc3MtdHlwZT1kZWZhdWx0IiwgIm5hbWU9am9obiIsICJzaXRlPXB5dGhvbi5vcmciLAorICAgICAgICAgICAgICAgICAiZGlyZWN0b3J5PS90bXAiLCAibW9kZT1mb28iLCAic2VydmVyPWJhciJdCisgICAgICAgIGF1ZGlvX2Jhc2ljX2VudHJ5ID0geworICAgICAgICAgICAgJ2VkaXQnOiAnYXVkaW9jb21wb3NlICVzJywKKyAgICAgICAgICAgICdjb21wb3NlJzogJ2F1ZGlvY29tcG9zZSAlcycsCisgICAgICAgICAgICAnZGVzY3JpcHRpb24nOiAnIkFuIGF1ZGlvIGZyYWdtZW50IicsCisgICAgICAgICAgICAndmlldyc6ICdzaG93YXVkaW8gJXMnCisgICAgICAgIH0KKyAgICAgICAgYXVkaW9fZW50cnkgPSB7InZpZXciOiAiL3Vzci9sb2NhbC9iaW4vc2hvd2F1ZGlvICV0In0KKyAgICAgICAgdmlkZW9fZW50cnkgPSB7J3ZpZXcnOiAnYW5pbWF0ZSAlcyd9CisgICAgICAgIG1lc3NhZ2VfZW50cnkgPSB7CisgICAgICAgICAgICAnY29tcG9zZXR5cGVkJzogJ2V4dGNvbXBvc2UgJXMnLAorICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJzogJyJBIHJlZmVyZW5jZSB0byBkYXRhIHN0b3JlZCBpbiBhbiBleHRlcm5hbCBsb2NhdGlvbiInLCAnbmVlZHN0ZXJtaW5hbCc6ICcnLAorICAgICAgICAgICAgJ3ZpZXcnOiAnc2hvd2V4dGVybmFsICVzICV7YWNjZXNzLXR5cGV9ICV7bmFtZX0gJXtzaXRlfSAgICAgJXtkaXJlY3Rvcnl9ICV7bW9kZX0gJXtzZXJ2ZXJ9JworICAgICAgICB9CisKKyAgICAgICAgIyB0ZXN0IGNhc2U6IChmaW5kbWF0Y2ggYXJncywgZmluZG1hdGNoIGtleXdvcmQgYXJncywgZXhwZWN0ZWQgb3V0cHV0KQorICAgICAgICAjICAgcG9zaXRpb25hbCBhcmdzOiBjYXBzLCBNSU1FdHlwZQorICAgICAgICAjICAga2V5d29yZCBhcmdzOiBrZXk9InZpZXciLCBmaWxlbmFtZT0iL2Rldi9udWxsIiwgcGxpc3Q9W10KKyAgICAgICAgIyAgIG91dHB1dDogKGNvbW1hbmQgbGluZSwgbWFpbGNhcCBlbnRyeSkKKyAgICAgICAgY2FzZXMgPSBbCisgICAgICAgICAgICAoW3t9LCAidmlkZW8vbXBlZyJdLCB7fSwgKE5vbmUsIE5vbmUpKSwKKyAgICAgICAgICAgIChbYywgImZvby9iYXIiXSwge30sIChOb25lLCBOb25lKSksCisgICAgICAgICAgICAoW2MsICJ2aWRlby9tcGVnIl0sIHt9LCAoJ21wZWdfcGxheSAvZGV2L251bGwnLCB7J3ZpZXcnOiAnbXBlZ19wbGF5ICVzJ30pKSwKKyAgICAgICAgICAgIChbYywgImF1ZGlvL2Jhc2ljIiwgImVkaXQiXSwge30sICgiYXVkaW9jb21wb3NlIC9kZXYvbnVsbCIsIGF1ZGlvX2Jhc2ljX2VudHJ5KSksCisgICAgICAgICAgICAoW2MsICJhdWRpby9iYXNpYyIsICJjb21wb3NlIl0sIHt9LCAoImF1ZGlvY29tcG9zZSAvZGV2L251bGwiLCBhdWRpb19iYXNpY19lbnRyeSkpLAorICAgICAgICAgICAgKFtjLCAiYXVkaW8vYmFzaWMiLCAiZGVzY3JpcHRpb24iXSwge30sICgnIkFuIGF1ZGlvIGZyYWdtZW50IicsIGF1ZGlvX2Jhc2ljX2VudHJ5KSksCisgICAgICAgICAgICAoW2MsICJhdWRpby9iYXNpYyIsICJmb29iYXIiXSwge30sIChOb25lLCBOb25lKSksCisgICAgICAgICAgICAoW2MsICJ2aWRlby8qIl0sIHsiZmlsZW5hbWUiOiBmbmFtZX0sICgiYW5pbWF0ZSAlcyIgJSBmbmFtZSwgdmlkZW9fZW50cnkpKSwKKyAgICAgICAgICAgIChbYywgImF1ZGlvL2Jhc2ljIiwgImNvbXBvc2UiXSwKKyAgICAgICAgICAgICB7ImZpbGVuYW1lIjogZm5hbWV9LAorICAgICAgICAgICAgICgiYXVkaW9jb21wb3NlICVzIiAlIGZuYW1lLCBhdWRpb19iYXNpY19lbnRyeSkpLAorICAgICAgICAgICAgKFtjLCAiYXVkaW8vYmFzaWMiXSwKKyAgICAgICAgICAgICB7ImtleSI6ICJkZXNjcmlwdGlvbiIsICJmaWxlbmFtZSI6IGZuYW1lfSwKKyAgICAgICAgICAgICAoJyJBbiBhdWRpbyBmcmFnbWVudCInLCBhdWRpb19iYXNpY19lbnRyeSkpLAorICAgICAgICAgICAgKFtjLCAiYXVkaW8vKiJdLAorICAgICAgICAgICAgIHsiZmlsZW5hbWUiOiBmbmFtZX0sCisgICAgICAgICAgICAgKCIvdXNyL2xvY2FsL2Jpbi9zaG93YXVkaW8gYXVkaW8vKiIsIGF1ZGlvX2VudHJ5KSksCisgICAgICAgICAgICAoW2MsICJtZXNzYWdlL2V4dGVybmFsLWJvZHkiXSwKKyAgICAgICAgICAgICB7InBsaXN0IjogcGxpc3R9LAorICAgICAgICAgICAgICgic2hvd2V4dGVybmFsIC9kZXYvbnVsbCBkZWZhdWx0IGpvaG4gcHl0aG9uLm9yZyAgICAgL3RtcCBmb28gYmFyIiwgbWVzc2FnZV9lbnRyeSkpCisgICAgICAgIF0KKyAgICAgICAgc2VsZi5fcnVuX2Nhc2VzKGNhc2VzKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Mob3MubmFtZSA9PSAicG9zaXgiLCAiUmVxdWlyZXMgJ3Rlc3QnIGNvbW1hbmQgb24gc3lzdGVtIikKKyAgICBkZWYgdGVzdF90ZXN0KHNlbGYpOgorICAgICAgICAjIGZpbmRtYXRjaCgpIHdpbGwgYXV0b21hdGljYWxseSBjaGVjayBhbnkgInRlc3QiIGNvbmRpdGlvbnMgYW5kIHNraXAKKyAgICAgICAgIyB0aGUgZW50cnkgaWYgdGhlIGNoZWNrIGZhaWxzLgorICAgICAgICBjYXBzID0geyJ0ZXN0L3Bhc3MiOiBbeyJ0ZXN0IjogInRlc3QgMSAtZXEgMSJ9XSwKKyAgICAgICAgICAgICAgICAidGVzdC9mYWlsIjogW3sidGVzdCI6ICJ0ZXN0IDEgLWVxIDAifV19CisgICAgICAgICMgdGVzdCBjYXNlOiAoZmluZG1hdGNoIGFyZ3MsIGZpbmRtYXRjaCBrZXl3b3JkIGFyZ3MsIGV4cGVjdGVkIG91dHB1dCkKKyAgICAgICAgIyAgIHBvc2l0aW9uYWwgYXJnczogY2FwcywgTUlNRXR5cGUsIGtleSAoInRlc3QiKQorICAgICAgICAjICAga2V5d29yZCBhcmdzOiBOL0EKKyAgICAgICAgIyAgIG91dHB1dDogKGNvbW1hbmQgbGluZSwgbWFpbGNhcCBlbnRyeSkKKyAgICAgICAgY2FzZXMgPSBbCisgICAgICAgICAgICAjIGZpbmRtYXRjaCB3aWxsIHJldHVybiB0aGUgbWFpbGNhcCBlbnRyeSBmb3IgdGVzdC9wYXNzIGJlY2F1c2UgaXQgZXZhbHVhdGVzIHRvIHRydWUKKyAgICAgICAgICAgIChbY2FwcywgInRlc3QvcGFzcyIsICJ0ZXN0Il0sIHt9LCAoInRlc3QgMSAtZXEgMSIsIHsidGVzdCI6ICJ0ZXN0IDEgLWVxIDEifSkpLAorICAgICAgICAgICAgIyBmaW5kbWF0Y2ggd2lsbCByZXR1cm4gTm9uZSBiZWNhdXNlIHRlc3QvZmFpbCBldmFsdWF0ZXMgdG8gZmFsc2UKKyAgICAgICAgICAgIChbY2FwcywgInRlc3QvZmFpbCIsICJ0ZXN0Il0sIHt9LCAoTm9uZSwgTm9uZSkpCisgICAgICAgIF0KKyAgICAgICAgc2VsZi5fcnVuX2Nhc2VzKGNhc2VzKQorCisgICAgZGVmIF9ydW5fY2FzZXMoc2VsZiwgY2FzZXMpOgorICAgICAgICBmb3IgYyBpbiBjYXNlczoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWFpbGNhcC5maW5kbWF0Y2goKmNbMF0sICoqY1sxXSksIGNbMl0pCisKKworZGVmIHRlc3RfbWFpbigpOgorICAgIHRlc3Quc3VwcG9ydC5ydW5fdW5pdHRlc3QoSGVscGVyRnVuY3Rpb25UZXN0LCBHZXRjYXBzVGVzdCwgRmluZG1hdGNoVGVzdCkKKworCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X21hcnNoYWwucHkgYi9MaWIvdGVzdC90ZXN0X21hcnNoYWwucHkKaW5kZXggY2QxMDBmOS4uZGVjODEyOSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9tYXJzaGFsLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfbWFyc2hhbC5weQpAQCAtNSw2ICs1LDcgQEAKIGltcG9ydCBzeXMKIGltcG9ydCB1bml0dGVzdAogaW1wb3J0IG9zCitpbXBvcnQgdHlwZXMKIAogY2xhc3MgSGVscGVyTWl4aW46CiAgICAgZGVmIGhlbHBlcihzZWxmLCBzYW1wbGUsICpleHRyYSk6CkBAIC0xMTMsNiArMTE0LDIyIEBACiAgICAgICAgIGNvZGVzID0gKEV4Y2VwdGlvblRlc3RDYXNlLnRlc3RfZXhjZXB0aW9ucy5fX2NvZGVfXywpICogY291bnQKICAgICAgICAgbWFyc2hhbC5sb2FkcyhtYXJzaGFsLmR1bXBzKGNvZGVzKSkKIAorICAgIGRlZiB0ZXN0X2RpZmZlcmVudF9maWxlbmFtZXMoc2VsZik6CisgICAgICAgIGNvMSA9IGNvbXBpbGUoIngiLCAiZjEiLCAiZXhlYyIpCisgICAgICAgIGNvMiA9IGNvbXBpbGUoInkiLCAiZjIiLCAiZXhlYyIpCisgICAgICAgIGNvMSwgY28yID0gbWFyc2hhbC5sb2FkcyhtYXJzaGFsLmR1bXBzKChjbzEsIGNvMikpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvMS5jb19maWxlbmFtZSwgImYxIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbzIuY29fZmlsZW5hbWUsICJmMiIpCisKKyAgICBAc3VwcG9ydC5jcHl0aG9uX29ubHkKKyAgICBkZWYgdGVzdF9zYW1lX2ZpbGVuYW1lX3VzZWQoc2VsZik6CisgICAgICAgIHMgPSAiIiJkZWYgZigpOiBwYXNzXG5kZWYgZygpOiBwYXNzIiIiCisgICAgICAgIGNvID0gY29tcGlsZShzLCAibXlmaWxlIiwgImV4ZWMiKQorICAgICAgICBjbyA9IG1hcnNoYWwubG9hZHMobWFyc2hhbC5kdW1wcyhjbykpCisgICAgICAgIGZvciBvYmogaW4gY28uY29fY29uc3RzOgorICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShvYmosIHR5cGVzLkNvZGVUeXBlKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzKGNvLmNvX2ZpbGVuYW1lLCBvYmouY29fZmlsZW5hbWUpCisKIGNsYXNzIENvbnRhaW5lclRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlLCBIZWxwZXJNaXhpbik6CiAgICAgZCA9IHsnYXN0cmluZyc6ICdmb29AYmFyLmJhei5zcGFtJywKICAgICAgICAgICdhZmxvYXQnOiA3MjgzLjQzLApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tYXRoLnB5IGIvTGliL3Rlc3QvdGVzdF9tYXRoLnB5CmluZGV4IGRkZGM4ODkuLjcxNTAwM2EgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbWF0aC5weQorKysgYi9MaWIvdGVzdC90ZXN0X21hdGgucHkKQEAgLTIsMTEgKzIsMTIgQEAKICMgWFhYWCBTaG91bGQgbm90IGRvIHRlc3RzIGFyb3VuZCB6ZXJvIG9ubHkKIAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdCwgdmVyYm9zZSwgcmVxdWlyZXNfSUVFRV83NTQKK2Zyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogaW1wb3J0IHVuaXR0ZXN0CiBpbXBvcnQgbWF0aAogaW1wb3J0IG9zCitpbXBvcnQgcGxhdGZvcm0KIGltcG9ydCBzeXMKLWltcG9ydCByYW5kb20KIGltcG9ydCBzdHJ1Y3QKIGltcG9ydCBzeXNjb25maWcKIApAQCAtNDU3LDEyICs0NTgsMTIgQEAKIAogICAgIGRlZiB0ZXN0Rm1vZChzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtYXRoLmZtb2QpCi0gICAgICAgIHNlbGYuZnRlc3QoJ2Ztb2QoMTAsMSknLCBtYXRoLmZtb2QoMTAsMSksIDApCi0gICAgICAgIHNlbGYuZnRlc3QoJ2Ztb2QoMTAsMC41KScsIG1hdGguZm1vZCgxMCwwLjUpLCAwKQotICAgICAgICBzZWxmLmZ0ZXN0KCdmbW9kKDEwLDEuNSknLCBtYXRoLmZtb2QoMTAsMS41KSwgMSkKLSAgICAgICAgc2VsZi5mdGVzdCgnZm1vZCgtMTAsMSknLCBtYXRoLmZtb2QoLTEwLDEpLCAwKQotICAgICAgICBzZWxmLmZ0ZXN0KCdmbW9kKC0xMCwwLjUpJywgbWF0aC5mbW9kKC0xMCwwLjUpLCAwKQotICAgICAgICBzZWxmLmZ0ZXN0KCdmbW9kKC0xMCwxLjUpJywgbWF0aC5mbW9kKC0xMCwxLjUpLCAtMSkKKyAgICAgICAgc2VsZi5mdGVzdCgnZm1vZCgxMCwgMSknLCBtYXRoLmZtb2QoMTAsIDEpLCAwLjApCisgICAgICAgIHNlbGYuZnRlc3QoJ2Ztb2QoMTAsIDAuNSknLCBtYXRoLmZtb2QoMTAsIDAuNSksIDAuMCkKKyAgICAgICAgc2VsZi5mdGVzdCgnZm1vZCgxMCwgMS41KScsIG1hdGguZm1vZCgxMCwgMS41KSwgMS4wKQorICAgICAgICBzZWxmLmZ0ZXN0KCdmbW9kKC0xMCwgMSknLCBtYXRoLmZtb2QoLTEwLCAxKSwgLTAuMCkKKyAgICAgICAgc2VsZi5mdGVzdCgnZm1vZCgtMTAsIDAuNSknLCBtYXRoLmZtb2QoLTEwLCAwLjUpLCAtMC4wKQorICAgICAgICBzZWxmLmZ0ZXN0KCdmbW9kKC0xMCwgMS41KScsIG1hdGguZm1vZCgtMTAsIDEuNSksIC0xLjApCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYXRoLmlzbmFuKG1hdGguZm1vZChOQU4sIDEuKSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYXRoLmlzbmFuKG1hdGguZm1vZCgxLiwgTkFOKSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYXRoLmlzbmFuKG1hdGguZm1vZChOQU4sIE5BTikpKQpAQCAtNjUwLDYgKzY1MSwzMyBAQAogICAgICAgICBuPSAyKio5MAogICAgICAgICBzZWxmLmFzc2VydEFsbW9zdEVxdWFsKG1hdGgubG9nMXAobiksIG1hdGgubG9nMXAoZmxvYXQobikpKQogCisgICAgQHJlcXVpcmVzX0lFRUVfNzU0CisgICAgZGVmIHRlc3RMb2cyKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG1hdGgubG9nMikKKworICAgICAgICAjIENoZWNrIHNvbWUgaW50ZWdlciB2YWx1ZXMKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYXRoLmxvZzIoMSksIDAuMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYXRoLmxvZzIoMiksIDEuMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtYXRoLmxvZzIoNCksIDIuMCkKKworICAgICAgICAjIExhcmdlIGludGVnZXIgdmFsdWVzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWF0aC5sb2cyKDIqKjEwMjMpLCAxMDIzLjApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWF0aC5sb2cyKDIqKjEwMjQpLCAxMDI0LjApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobWF0aC5sb2cyKDIqKjIwMDApLCAyMDAwLjApCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgbWF0aC5sb2cyLCAtMS41KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBtYXRoLmxvZzIsIE5JTkYpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShtYXRoLmlzbmFuKG1hdGgubG9nMihOQU4pKSkKKworICAgIEByZXF1aXJlc19JRUVFXzc1NAorICAgICMgbG9nMigpIGlzIG5vdCBhY2N1cmF0ZSBlbm91Z2ggb24gTWFjIE9TIFggVGlnZXIgKDEwLjQpCisgICAgQHN1cHBvcnQucmVxdWlyZXNfbWFjX3ZlcigxMCwgNSkKKyAgICBkZWYgdGVzdExvZzJFeGFjdChzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHdlIGdldCBleGFjdCBlcXVhbGl0eSBmb3IgbG9nMiBvZiBwb3dlcnMgb2YgMi4KKyAgICAgICAgYWN0dWFsID0gW21hdGgubG9nMihtYXRoLmxkZXhwKDEuMCwgbikpIGZvciBuIGluIHJhbmdlKC0xMDc0LCAxMDI0KV0KKyAgICAgICAgZXhwZWN0ZWQgPSBbZmxvYXQobikgZm9yIG4gaW4gcmFuZ2UoLTEwNzQsIDEwMjQpXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFjdHVhbCwgZXhwZWN0ZWQpCisKICAgICBkZWYgdGVzdExvZzEwKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIG1hdGgubG9nMTApCiAgICAgICAgIHNlbGYuZnRlc3QoJ2xvZzEwKDAuMSknLCBtYXRoLmxvZzEwKDAuMSksIC0xKQpAQCAtMTAxMCw3ICsxMDM4LDYgQEAKIAogICAgIEByZXF1aXJlc19JRUVFXzc1NAogICAgIGRlZiB0ZXN0X210ZXN0ZmlsZShzZWxmKToKLSAgICAgICAgQUxMT1dFRF9FUlJPUiA9IDIwICAjIHBlcm1pdHRlZCBlcnJvciwgaW4gdWxwcwogICAgICAgICBmYWlsX2ZtdCA9ICJ7fTp7fSh7IXJ9KTogZXhwZWN0ZWQgeyFyfSwgZ290IHshcn0iCiAKICAgICAgICAgZmFpbHVyZXMgPSBbXQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tZW1vcnl2aWV3LnB5IGIvTGliL3Rlc3QvdGVzdF9tZW1vcnl2aWV3LnB5CmluZGV4IDBiZmRkZDkuLmE1YTBjYTEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbWVtb3J5dmlldy5weQorKysgYi9MaWIvdGVzdC90ZXN0X21lbW9yeXZpZXcucHkKQEAgLTI4Myw2ICsyODMsMzMgQEAKICAgICAgICAgaSA9IGlvLkJ5dGVzSU8oYidaWlpaJykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBpLnJlYWRpbnRvLCBtKQogCisgICAgZGVmIHRlc3RfaGFzaChzZWxmKToKKyAgICAgICAgIyBNZW1vcnl2aWV3cyBvZiByZWFkb25seSAoaGFzaGFibGUpIHR5cGVzIGFyZSBoYXNoYWJsZSwgYW5kIHRoZXkKKyAgICAgICAgIyBoYXNoIGFzIHRoZSBjb3JyZXNwb25kaW5nIG9iamVjdC4KKyAgICAgICAgdHAgPSBzZWxmLnJvX3R5cGUKKyAgICAgICAgaWYgdHAgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIm5vIHJlYWQtb25seSB0eXBlIHRvIHRlc3QiKQorICAgICAgICBiID0gdHAoc2VsZi5fc291cmNlKQorICAgICAgICBtID0gc2VsZi5fdmlldyhiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobSksIGhhc2goYiJhYmNkZWYiKSkKKyAgICAgICAgIyBSZWxlYXNpbmcgdGhlIG1lbW9yeXZpZXcga2VlcHMgdGhlIHN0b3JlZCBoYXNoIHZhbHVlIChhcyB3aXRoIHdlYWtyZWZzKQorICAgICAgICBtLnJlbGVhc2UoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhhc2gobSksIGhhc2goYiJhYmNkZWYiKSkKKyAgICAgICAgIyBIYXNoaW5nIGEgbWVtb3J5dmlldyBmb3IgdGhlIGZpcnN0IHRpbWUgYWZ0ZXIgaXQgaXMgcmVsZWFzZWQKKyAgICAgICAgIyByZXN1bHRzIGluIGFuIGVycm9yIChhcyB3aXRoIHdlYWtyZWZzKS4KKyAgICAgICAgbSA9IHNlbGYuX3ZpZXcoYikKKyAgICAgICAgbS5yZWxlYXNlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgaGFzaCwgbSkKKworICAgIGRlZiB0ZXN0X2hhc2hfd3JpdGFibGUoc2VsZik6CisgICAgICAgICMgTWVtb3J5dmlld3Mgb2Ygd3JpdGFibGUgdHlwZXMgYXJlIHVuaGFzaGFibGUKKyAgICAgICAgdHAgPSBzZWxmLnJ3X3R5cGUKKyAgICAgICAgaWYgdHAgaXMgTm9uZToKKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIm5vIHdyaXRhYmxlIHR5cGUgdG8gdGVzdCIpCisgICAgICAgIGIgPSB0cChzZWxmLl9zb3VyY2UpCisgICAgICAgIG0gPSBzZWxmLl92aWV3KGIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGhhc2gsIG0pCisKICMgVmFyaWF0aW9ucyBvbiBzb3VyY2Ugb2JqZWN0cyBmb3IgdGhlIGJ1ZmZlcjogYnl0ZXMtbGlrZSBvYmplY3RzLCB0aGVuIGFycmF5cwogIyB3aXRoIGl0ZW1zaXplID4gMS4KICMgTk9URTogc3VwcG9ydCBmb3IgbXVsdGktZGltZW5zaW9uYWwgb2JqZWN0cyBpcyB1bmltcGxlbWVudGVkLgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9tZXRhY2xhc3MucHkgYi9MaWIvdGVzdC90ZXN0X21ldGFjbGFzcy5weQppbmRleCAyMTlhYjk5Li5lNmZlMjBhIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X21ldGFjbGFzcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X21ldGFjbGFzcy5weQpAQCAtMTU5LDYgKzE1OSw3IEBACiAgICAgLi4uICAgICBiYXIgPSAxMjMKICAgICAuLi4KICAgICBkWydfX21vZHVsZV9fJ10gPSAndGVzdC50ZXN0X21ldGFjbGFzcycKKyAgICBkWydfX3F1YWxuYW1lX18nXSA9ICdDJwogICAgIGRbJ2ZvbyddID0gNAogICAgIGRbJ2ZvbyddID0gNDIKICAgICBkWydiYXInXSA9IDEyMwpAQCAtMTc3LDEyICsxNzgsMTIgQEAKICAgICAuLi4gICAgIGIgPSAyNAogICAgIC4uLgogICAgIG1ldGE6IEMgKCkKLSAgICBuczogWygnX19tb2R1bGVfXycsICd0ZXN0LnRlc3RfbWV0YWNsYXNzJyksICgnYScsIDQyKSwgKCdiJywgMjQpXQorICAgIG5zOiBbKCdfX21vZHVsZV9fJywgJ3Rlc3QudGVzdF9tZXRhY2xhc3MnKSwgKCdfX3F1YWxuYW1lX18nLCAnQycpLCAoJ2EnLCA0MiksICgnYicsIDI0KV0KICAgICBrdzogW10KICAgICA+Pj4gdHlwZShDKSBpcyBkaWN0CiAgICAgVHJ1ZQogICAgID4+PiBwcmludChzb3J0ZWQoQy5pdGVtcygpKSkKLSAgICBbKCdfX21vZHVsZV9fJywgJ3Rlc3QudGVzdF9tZXRhY2xhc3MnKSwgKCdhJywgNDIpLCAoJ2InLCAyNCldCisgICAgWygnX19tb2R1bGVfXycsICd0ZXN0LnRlc3RfbWV0YWNsYXNzJyksICgnX19xdWFsbmFtZV9fJywgJ0MnKSwgKCdhJywgNDIpLCAoJ2InLCAyNCldCiAgICAgPj4+CiAKIEFuZCBhZ2Fpbiwgd2l0aCBhIF9fcHJlcGFyZV9fIGF0dHJpYnV0ZS4KQEAgLTE5OSwxMSArMjAwLDEyIEBACiAgICAgLi4uCiAgICAgcHJlcGFyZTogQyAoKSBbKCdvdGhlcicsICdib29oJyldCiAgICAgZFsnX19tb2R1bGVfXyddID0gJ3Rlc3QudGVzdF9tZXRhY2xhc3MnCisgICAgZFsnX19xdWFsbmFtZV9fJ10gPSAnQycKICAgICBkWydhJ10gPSAxCiAgICAgZFsnYSddID0gMgogICAgIGRbJ2InXSA9IDMKICAgICBtZXRhOiBDICgpCi0gICAgbnM6IFsoJ19fbW9kdWxlX18nLCAndGVzdC50ZXN0X21ldGFjbGFzcycpLCAoJ2EnLCAyKSwgKCdiJywgMyldCisgICAgbnM6IFsoJ19fbW9kdWxlX18nLCAndGVzdC50ZXN0X21ldGFjbGFzcycpLCAoJ19fcXVhbG5hbWVfXycsICdDJyksICgnYScsIDIpLCAoJ2InLCAzKV0KICAgICBrdzogWygnb3RoZXInLCAnYm9vaCcpXQogICAgID4+PgogCkBAIC0yNDYsNyArMjQ4LDEzIEBACiAKICIiIgogCi1fX3Rlc3RfXyA9IHsnZG9jdGVzdHMnIDogZG9jdGVzdHN9CitpbXBvcnQgc3lzCisKKyMgVHJhY2UgZnVuY3Rpb24gaW50cm9kdWNlcyBfX2xvY2Fsc19fIHdoaWNoIGNhdXNlcyB2YXJpb3VzIHRlc3RzIHRvIGZhaWwuCitpZiBoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgYW5kIHN5cy5nZXR0cmFjZSgpOgorICAgIF9fdGVzdF9fID0ge30KK2Vsc2U6CisgICAgX190ZXN0X18gPSB7J2RvY3Rlc3RzJyA6IGRvY3Rlc3RzfQogCiBkZWYgdGVzdF9tYWluKHZlcmJvc2U9RmFsc2UpOgogICAgIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9taW5pZG9tLnB5IGIvTGliL3Rlc3QvdGVzdF9taW5pZG9tLnB5CmluZGV4IGYzZmExYjguLjc1MmE4NDAgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbWluaWRvbS5weQorKysgYi9MaWIvdGVzdC90ZXN0X21pbmlkb20ucHkKQEAgLTQsOSArNCw3IEBACiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgdmVyYm9zZSwgcnVuX3VuaXR0ZXN0LCBmaW5kZmlsZQogaW1wb3J0IHVuaXR0ZXN0CiAKLWltcG9ydCB4bWwuZG9tCiBpbXBvcnQgeG1sLmRvbS5taW5pZG9tCi1pbXBvcnQgeG1sLnBhcnNlcnMuZXhwYXQKIAogZnJvbSB4bWwuZG9tLm1pbmlkb20gaW1wb3J0IHBhcnNlLCBOb2RlLCBEb2N1bWVudCwgcGFyc2VTdHJpbmcKIGZyb20geG1sLmRvbS5taW5pZG9tIGltcG9ydCBnZXRET01JbXBsZW1lbnRhdGlvbgpAQCAtMTQsNyArMTIsNiBAQAogCiB0c3RmaWxlID0gZmluZGZpbGUoInRlc3QueG1sIiwgc3ViZGlyPSJ4bWx0ZXN0ZGF0YSIpCiAKLQogIyBUaGUgdGVzdHMgb2YgRG9jdW1lbnRUeXBlIGltcG9ydGluZyB1c2UgdGhlc2UgaGVscGVycyB0byBjb25zdHJ1Y3QKICMgdGhlIGRvY3VtZW50cyB0byB3b3JrIHdpdGgsIHNpbmNlIG5vdCBhbGwgRE9NIGJ1aWxkZXJzIGFjdHVhbGx5CiAjIGNyZWF0ZSB0aGUgRG9jdW1lbnRUeXBlIG5vZGVzLgpAQCAtNTAsNyArNDcsNyBAQAogCiAgICAgZGVmIGNoZWNrV2hvbGVUZXh0KHNlbGYsIG5vZGUsIHMpOgogICAgICAgICB0ID0gbm9kZS53aG9sZVRleHQKLSAgICAgICAgc2VsZi5jb25maXJtKHQgPT0gcywgImxvb2tpbmcgZm9yICVzLCBmb3VuZCAlcyIgJSAocmVwcihzKSwgcmVwcih0KSkpCisgICAgICAgIHNlbGYuY29uZmlybSh0ID09IHMsICJsb29raW5nIGZvciAlciwgZm91bmQgJXIiICUgKHMsIHQpKQogCiAgICAgZGVmIHRlc3RQYXJzZUZyb21GaWxlKHNlbGYpOgogICAgICAgICB3aXRoIG9wZW4odHN0ZmlsZSkgYXMgZmlsZToKQEAgLTI4Miw2ICsyNzksNyBAQAogCiAgICAgICAgIGNoaWxkLnNldEF0dHJpYnV0ZSgiZGVmIiwgImdoaSIpCiAgICAgICAgIHNlbGYuY29uZmlybShsZW4oY2hpbGQuYXR0cmlidXRlcykgPT0gMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoeG1sLmRvbS5Ob3RGb3VuZEVyciwgY2hpbGQucmVtb3ZlQXR0cmlidXRlLCAiZm9vIikKICAgICAgICAgY2hpbGQucmVtb3ZlQXR0cmlidXRlKCJkZWYiKQogICAgICAgICBzZWxmLmNvbmZpcm0obGVuKGNoaWxkLmF0dHJpYnV0ZXMpID09IDApCiAgICAgICAgIGRvbS51bmxpbmsoKQpAQCAtMjkzLDYgKzI5MSw4IEBACiAgICAgICAgIGNoaWxkLnNldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnczLm9yZyIsICJ4bWxuczpweXRob24iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImh0dHA6Ly93d3cucHl0aG9uLm9yZyIpCiAgICAgICAgIGNoaWxkLnNldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnB5dGhvbi5vcmciLCAicHl0aG9uOmFiY2F0dHIiLCAiZm9vIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoeG1sLmRvbS5Ob3RGb3VuZEVyciwgY2hpbGQucmVtb3ZlQXR0cmlidXRlTlMsCisgICAgICAgICAgICAiZm9vIiwgImh0dHA6Ly93d3cucHl0aG9uLm9yZyIpCiAgICAgICAgIHNlbGYuY29uZmlybShsZW4oY2hpbGQuYXR0cmlidXRlcykgPT0gMikKICAgICAgICAgY2hpbGQucmVtb3ZlQXR0cmlidXRlTlMoImh0dHA6Ly93d3cucHl0aG9uLm9yZyIsICJhYmNhdHRyIikKICAgICAgICAgc2VsZi5jb25maXJtKGxlbihjaGlsZC5hdHRyaWJ1dGVzKSA9PSAxKQpAQCAtMzA0LDExICszMDQsMjMgQEAKICAgICAgICAgY2hpbGQuc2V0QXR0cmlidXRlKCJzcGFtIiwgImphbSIpCiAgICAgICAgIHNlbGYuY29uZmlybShsZW4oY2hpbGQuYXR0cmlidXRlcykgPT0gMSkKICAgICAgICAgbm9kZSA9IGNoaWxkLmdldEF0dHJpYnV0ZU5vZGUoInNwYW0iKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyh4bWwuZG9tLk5vdEZvdW5kRXJyLCBjaGlsZC5yZW1vdmVBdHRyaWJ1dGVOb2RlLAorICAgICAgICAgICAgTm9uZSkKICAgICAgICAgY2hpbGQucmVtb3ZlQXR0cmlidXRlTm9kZShub2RlKQogICAgICAgICBzZWxmLmNvbmZpcm0obGVuKGNoaWxkLmF0dHJpYnV0ZXMpID09IDAKICAgICAgICAgICAgICAgICBhbmQgY2hpbGQuZ2V0QXR0cmlidXRlTm9kZSgic3BhbSIpIGlzIE5vbmUpCisgICAgICAgIGRvbTIgPSBEb2N1bWVudCgpCisgICAgICAgIGNoaWxkMiA9IGRvbTIuYXBwZW5kQ2hpbGQoZG9tLmNyZWF0ZUVsZW1lbnQoImZvbyIpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyh4bWwuZG9tLk5vdEZvdW5kRXJyLCBjaGlsZC5yZW1vdmVBdHRyaWJ1dGVOb2RlLAorICAgICAgICAgICAgbm9kZSkKICAgICAgICAgZG9tLnVubGluaygpCiAKKyAgICBkZWYgdGVzdEhhc0F0dHJpYnV0ZShzZWxmKToKKyAgICAgICAgZG9tID0gRG9jdW1lbnQoKQorICAgICAgICBjaGlsZCA9IGRvbS5hcHBlbmRDaGlsZChkb20uY3JlYXRlRWxlbWVudCgiZm9vIikpCisgICAgICAgIGNoaWxkLnNldEF0dHJpYnV0ZSgic3BhbSIsICJqYW0iKQorICAgICAgICBzZWxmLmNvbmZpcm0oY2hpbGQuaGFzQXR0cmlidXRlKCJzcGFtIikpCisKICAgICBkZWYgdGVzdENoYW5nZUF0dHIoc2VsZik6CiAgICAgICAgIGRvbSA9IHBhcnNlU3RyaW5nKCI8YWJjLz4iKQogICAgICAgICBlbCA9IGRvbS5kb2N1bWVudEVsZW1lbnQKQEAgLTM1Niw3ICszNjgsMTYgQEAKIAogICAgIGRlZiB0ZXN0R2V0QXR0cmlidXRlKHNlbGYpOiBwYXNzCiAKLSAgICBkZWYgdGVzdEdldEF0dHJpYnV0ZU5TKHNlbGYpOiBwYXNzCisgICAgZGVmIHRlc3RHZXRBdHRyaWJ1dGVOUyhzZWxmKToKKyAgICAgICAgZG9tID0gRG9jdW1lbnQoKQorICAgICAgICBjaGlsZCA9IGRvbS5hcHBlbmRDaGlsZCgKKyAgICAgICAgICAgICAgICBkb20uY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnB5dGhvbi5vcmciLCAicHl0aG9uOmFiYyIpKQorICAgICAgICBjaGlsZC5zZXRBdHRyaWJ1dGVOUygiaHR0cDovL3d3dy53My5vcmciLCAieG1sbnM6cHl0aG9uIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJodHRwOi8vd3d3LnB5dGhvbi5vcmciKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNoaWxkLmdldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnczLm9yZyIsICJweXRob24iKSwKKyAgICAgICAgICAgICdodHRwOi8vd3d3LnB5dGhvbi5vcmcnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNoaWxkLmdldEF0dHJpYnV0ZU5TKCJodHRwOi8vd3d3LnczLm9yZyIsICJvdGhlciIpLAorICAgICAgICAgICAgJycpCiAKICAgICBkZWYgdGVzdEdldEF0dHJpYnV0ZU5vZGUoc2VsZik6IHBhc3MKIApAQCAtNTc0LDcgKzU5NSwxMyBAQAogCiAgICAgZGVmIHRlc3RGaXJzdENoaWxkKHNlbGYpOiBwYXNzCiAKLSAgICBkZWYgdGVzdEhhc0NoaWxkTm9kZXMoc2VsZik6IHBhc3MKKyAgICBkZWYgdGVzdEhhc0NoaWxkTm9kZXMoc2VsZik6CisgICAgICAgIGRvbSA9IHBhcnNlU3RyaW5nKCI8ZG9jPjxmb28vPjwvZG9jPiIpCisgICAgICAgIGRvYyA9IGRvbS5kb2N1bWVudEVsZW1lbnQKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGRvbS5oYXNDaGlsZE5vZGVzKCkpCisgICAgICAgIGRvbTIgPSBwYXJzZVN0cmluZygiPGRvYy8+IikKKyAgICAgICAgZG9jMiA9IGRvbTIuZG9jdW1lbnRFbGVtZW50CisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZG9jMi5oYXNDaGlsZE5vZGVzKCkpCiAKICAgICBkZWYgX3Rlc3RDbG9uZUVsZW1lbnRDb3BpZXNBdHRyaWJ1dGVzKHNlbGYsIGUxLCBlMiwgdGVzdCk6CiAgICAgICAgIGF0dHJzMSA9IGUxLmF0dHJpYnV0ZXMKQEAgLTEwMjMsNDEgKzEwNTAsNiBAQAogICAgICAgICAgICAgICAgICJ0ZXN0IE5vZGVMaXN0Lml0ZW0oKSIpCiAgICAgICAgIGRvYy51bmxpbmsoKQogCi0gICAgZGVmIHRlc3RTQVgyRE9NKHNlbGYpOgotICAgICAgICBmcm9tIHhtbC5kb20gaW1wb3J0IHB1bGxkb20KLQotICAgICAgICBzYXgyZG9tID0gcHVsbGRvbS5TQVgyRE9NKCkKLSAgICAgICAgc2F4MmRvbS5zdGFydERvY3VtZW50KCkKLSAgICAgICAgc2F4MmRvbS5zdGFydEVsZW1lbnQoImRvYyIsIHt9KQotICAgICAgICBzYXgyZG9tLmNoYXJhY3RlcnMoInRleHQiKQotICAgICAgICBzYXgyZG9tLnN0YXJ0RWxlbWVudCgic3ViZWxtIiwge30pCi0gICAgICAgIHNheDJkb20uY2hhcmFjdGVycygidGV4dCIpCi0gICAgICAgIHNheDJkb20uZW5kRWxlbWVudCgic3ViZWxtIikKLSAgICAgICAgc2F4MmRvbS5jaGFyYWN0ZXJzKCJ0ZXh0IikKLSAgICAgICAgc2F4MmRvbS5lbmRFbGVtZW50KCJkb2MiKQotICAgICAgICBzYXgyZG9tLmVuZERvY3VtZW50KCkKLQotICAgICAgICBkb2MgPSBzYXgyZG9tLmRvY3VtZW50Ci0gICAgICAgIHJvb3QgPSBkb2MuZG9jdW1lbnRFbGVtZW50Ci0gICAgICAgICh0ZXh0MSwgZWxtMSwgdGV4dDIpID0gcm9vdC5jaGlsZE5vZGVzCi0gICAgICAgIHRleHQzID0gZWxtMS5jaGlsZE5vZGVzWzBdCi0KLSAgICAgICAgc2VsZi5jb25maXJtKHRleHQxLnByZXZpb3VzU2libGluZyBpcyBOb25lIGFuZAotICAgICAgICAgICAgICAgIHRleHQxLm5leHRTaWJsaW5nIGlzIGVsbTEgYW5kCi0gICAgICAgICAgICAgICAgZWxtMS5wcmV2aW91c1NpYmxpbmcgaXMgdGV4dDEgYW5kCi0gICAgICAgICAgICAgICAgZWxtMS5uZXh0U2libGluZyBpcyB0ZXh0MiBhbmQKLSAgICAgICAgICAgICAgICB0ZXh0Mi5wcmV2aW91c1NpYmxpbmcgaXMgZWxtMSBhbmQKLSAgICAgICAgICAgICAgICB0ZXh0Mi5uZXh0U2libGluZyBpcyBOb25lIGFuZAotICAgICAgICAgICAgICAgIHRleHQzLnByZXZpb3VzU2libGluZyBpcyBOb25lIGFuZAotICAgICAgICAgICAgICAgIHRleHQzLm5leHRTaWJsaW5nIGlzIE5vbmUsICJ0ZXN0U0FYMkRPTSAtIHNpYmxpbmdzIikKLQotICAgICAgICBzZWxmLmNvbmZpcm0ocm9vdC5wYXJlbnROb2RlIGlzIGRvYyBhbmQKLSAgICAgICAgICAgICAgICB0ZXh0MS5wYXJlbnROb2RlIGlzIHJvb3QgYW5kCi0gICAgICAgICAgICAgICAgZWxtMS5wYXJlbnROb2RlIGlzIHJvb3QgYW5kCi0gICAgICAgICAgICAgICAgdGV4dDIucGFyZW50Tm9kZSBpcyByb290IGFuZAotICAgICAgICAgICAgICAgIHRleHQzLnBhcmVudE5vZGUgaXMgZWxtMSwgInRlc3RTQVgyRE9NIC0gcGFyZW50cyIpCi0gICAgICAgIGRvYy51bmxpbmsoKQotCiAgICAgZGVmIHRlc3RFbmNvZGluZ3Moc2VsZik6CiAgICAgICAgIGRvYyA9IHBhcnNlU3RyaW5nKCc8Zm9vPiYjeDIwYWM7PC9mb28+JykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkb2MudG94bWwoKSwKQEAgLTE1MDQsMTIgKzE0OTYsMjEgQEAKICAgICAgICAgZG9jLmFwcGVuZENoaWxkKGRvYy5jcmVhdGVDb21tZW50KCJmb28tLWJhciIpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBkb2MudG94bWwpCiAKKwogICAgIGRlZiB0ZXN0RW1wdHlYTUxOU1ZhbHVlKHNlbGYpOgogICAgICAgICBkb2MgPSBwYXJzZVN0cmluZygiPGVsZW1lbnQgeG1sbnM9Jyc+XG4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICI8Zm9vLz5cbjwvZWxlbWVudD4iKQogICAgICAgICBkb2MyID0gcGFyc2VTdHJpbmcoZG9jLnRveG1sKCkpCiAgICAgICAgIHNlbGYuY29uZmlybShkb2MyLm5hbWVzcGFjZVVSSSA9PSB4bWwuZG9tLkVNUFRZX05BTUVTUEFDRSkKIAorICAgIGRlZiB0ZXN0RG9jUmVtb3ZlQ2hpbGQoc2VsZik6CisgICAgICAgIGRvYyA9IHBhcnNlKHRzdGZpbGUpCisgICAgICAgIHRpdGxlX3RhZyA9IGRvYy5kb2N1bWVudEVsZW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIlRJVExFIilbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoIHhtbC5kb20uTm90Rm91bmRFcnIsIGRvYy5yZW1vdmVDaGlsZCwgdGl0bGVfdGFnKQorICAgICAgICBudW1fY2hpbGRyZW5fYmVmb3JlID0gbGVuKGRvYy5jaGlsZE5vZGVzKQorICAgICAgICBkb2MucmVtb3ZlQ2hpbGQoZG9jLmNoaWxkTm9kZXNbMF0pCisgICAgICAgIG51bV9jaGlsZHJlbl9hZnRlciA9IGxlbihkb2MuY2hpbGROb2RlcykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG51bV9jaGlsZHJlbl9hZnRlciA9PSBudW1fY2hpbGRyZW5fYmVmb3JlIC0gMSkKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHJ1bl91bml0dGVzdChNaW5pZG9tVGVzdCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbW1hcC5weSBiL0xpYi90ZXN0L3Rlc3RfbW1hcC5weQppbmRleCAwZTE4YWFiLi4yMjMwMDI4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X21tYXAucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9tbWFwLnB5CkBAIC00MTcsNiArNDE3LDM1IEBACiAgICAgICAgICAgICBtW3hdID0gYgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtW3hdLCBiKQogCisgICAgZGVmIHRlc3RfcmVhZF9hbGwoc2VsZik6CisgICAgICAgIG0gPSBtbWFwLm1tYXAoLTEsIDE2KQorICAgICAgICBzZWxmLmFkZENsZWFudXAobS5jbG9zZSkKKworICAgICAgICAjIFdpdGggbm8gcGFyYW1ldGVycywgb3IgTm9uZSBvciBhIG5lZ2F0aXZlIGFyZ3VtZW50LCByZWFkcyBhbGwKKyAgICAgICAgbS53cml0ZShieXRlcyhyYW5nZSgxNikpKQorICAgICAgICBtLnNlZWsoMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnJlYWQoKSwgYnl0ZXMocmFuZ2UoMTYpKSkKKyAgICAgICAgbS5zZWVrKDgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobS5yZWFkKCksIGJ5dGVzKHJhbmdlKDgsIDE2KSkpCisgICAgICAgIG0uc2VlaygxNikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnJlYWQoKSwgYicnKQorICAgICAgICBtLnNlZWsoMykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLnJlYWQoTm9uZSksIGJ5dGVzKHJhbmdlKDMsIDE2KSkpCisgICAgICAgIG0uc2Vlayg0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0ucmVhZCgtMSksIGJ5dGVzKHJhbmdlKDQsIDE2KSkpCisgICAgICAgIG0uc2Vlayg1KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0ucmVhZCgtMiksIGJ5dGVzKHJhbmdlKDUsIDE2KSkpCisgICAgICAgIG0uc2Vlayg5KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0ucmVhZCgtNDIpLCBieXRlcyhyYW5nZSg5LCAxNikpKQorCisgICAgZGVmIHRlc3RfcmVhZF9pbnZhbGlkX2FyZyhzZWxmKToKKyAgICAgICAgbSA9IG1tYXAubW1hcCgtMSwgMTYpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChtLmNsb3NlKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgbS5yZWFkLCAnZm9vJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtLnJlYWQsIDUuNSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBtLnJlYWQsIFsxLCAyLCAzXSkKKwogICAgIGRlZiB0ZXN0X2V4dGVuZGVkX2dldHNsaWNlKHNlbGYpOgogICAgICAgICAjIFRlc3QgZXh0ZW5kZWQgc2xpY2luZyBieSBjb21wYXJpbmcgd2l0aCBsaXN0IHNsaWNpbmcuCiAgICAgICAgIHMgPSBieXRlcyhyZXZlcnNlZChyYW5nZSgyNTYpKSkKQEAgLTUzNCw4ICs1NjMsNyBAQAogICAgICAgICBmLmNsb3NlKCkKIAogICAgIGRlZiB0ZXN0X2Vycm9yKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFRydWUoaXNzdWJjbGFzcyhtbWFwLmVycm9yLCBFbnZpcm9ubWVudEVycm9yKSkKLSAgICAgICAgc2VsZi5hc3NlcnRJbigibW1hcC5lcnJvciIsIHN0cihtbWFwLmVycm9yKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhtbWFwLmVycm9yLCBPU0Vycm9yKQogCiAgICAgZGVmIHRlc3RfaW9fbWV0aG9kcyhzZWxmKToKICAgICAgICAgZGF0YSA9IGIiMDEyMzQ1Njc4OSIKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfbW9kdWxlLnB5IGIvTGliL3Rlc3QvdGVzdF9tb2R1bGUucHkKaW5kZXggNzczNGZiMC4uNTYxNzc4OSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9tb2R1bGUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9tb2R1bGUucHkKQEAgLTcwLDkgKzcwLDExIEBACiAgICAgICAgIG0gPSBNb2R1bGVUeXBlKCJmb28iKQogICAgICAgICBtLmRlc3Ryb3llZCA9IGRlc3Ryb3llZAogICAgICAgICBzID0gIiIiY2xhc3MgQToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbCk6CisgICAgICAgIHNlbGYubCA9IGwKICAgICBkZWYgX19kZWxfXyhzZWxmKToKLSAgICAgICAgZGVzdHJveWVkLmFwcGVuZCgxKQotYSA9IEEoKSIiIgorICAgICAgICBzZWxmLmwuYXBwZW5kKDEpCithID0gQShkZXN0cm95ZWQpIiIiCiAgICAgICAgIGV4ZWMocywgbS5fX2RpY3RfXykKICAgICAgICAgZGVsIG0KICAgICAgICAgZ2NfY29sbGVjdCgpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X21vZHVsZWZpbmRlci5weSBiL0xpYi90ZXN0L3Rlc3RfbW9kdWxlZmluZGVyLnB5CmluZGV4IGExODQyMTcuLmM1ZmMzMjAgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbW9kdWxlZmluZGVyLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfbW9kdWxlZmluZGVyLnB5CkBAIC0xLDcgKzEsNyBAQAotaW1wb3J0IF9fZnV0dXJlX18KIGltcG9ydCBvcworaW1wb3J0IGVycm5vCitpbXBvcnQgc2h1dGlsCiBpbXBvcnQgdW5pdHRlc3QKLWltcG9ydCBkaXN0dXRpbHMuZGlyX3V0aWwKIGltcG9ydCB0ZW1wZmlsZQogCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKQEAgLTksNyArOSw3IEBACiBpbXBvcnQgbW9kdWxlZmluZGVyCiAKIFRFU1RfRElSID0gdGVtcGZpbGUubWtkdGVtcCgpCi1URVNUX1BBVEggPSBbVEVTVF9ESVIsIG9zLnBhdGguZGlybmFtZShfX2Z1dHVyZV9fLl9fZmlsZV9fKV0KK1RFU1RfUEFUSCA9IFtURVNUX0RJUiwgb3MucGF0aC5kaXJuYW1lKHRlbXBmaWxlLl9fZmlsZV9fKV0KIAogIyBFYWNoIHRlc3QgZGVzY3JpcHRpb24gaXMgYSBsaXN0IG9mIDUgaXRlbXM6CiAjCkBAIC0xOTYsMTIgKzE5NiwxNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tIC4gaW1wb3J0IGJhcgogIiIiXQogCisKIGRlZiBvcGVuX2ZpbGUocGF0aCk6Ci0gICAgIyNwcmludCAiIyIsIG9zLnBhdGguYWJzcGF0aChwYXRoKQogICAgIGRpcm5hbWUgPSBvcy5wYXRoLmRpcm5hbWUocGF0aCkKLSAgICBkaXN0dXRpbHMuZGlyX3V0aWwubWtwYXRoKGRpcm5hbWUpCisgICAgdHJ5OgorICAgICAgICBvcy5tYWtlZGlycyhkaXJuYW1lKQorICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgIGlmIGUuZXJybm8gIT0gZXJybm8uRUVYSVNUOgorICAgICAgICAgICAgcmFpc2UKICAgICByZXR1cm4gb3BlbihwYXRoLCAidyIpCiAKKwogZGVmIGNyZWF0ZV9wYWNrYWdlKHNvdXJjZSk6CiAgICAgb2ZpID0gTm9uZQogICAgIHRyeToKQEAgLTIxNiw2ICsyMjEsNyBAQAogICAgICAgICBpZiBvZmk6CiAgICAgICAgICAgICBvZmkuY2xvc2UoKQogCisKIGNsYXNzIE1vZHVsZUZpbmRlclRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiBfZG9fdGVzdChzZWxmLCBpbmZvLCByZXBvcnQ9RmFsc2UpOgogICAgICAgICBpbXBvcnRfdGhpcywgbW9kdWxlcywgbWlzc2luZywgbWF5YmVfbWlzc2luZywgc291cmNlID0gaW5mbwpAQCAtMjM0LDE5ICsyNDAsMTcgQEAKICMjICAgICAgICAgICAgICAgICAgICBpbXBvcnQgdHJhY2ViYWNrOyB0cmFjZWJhY2sucHJpbnRfZXhjKCkKICMjICAgICAgICAgICAgICAgIHN5cy5wYXRoID0gb3BhdGgKICMjICAgICAgICAgICAgICAgIHJldHVybgotICAgICAgICAgICAgbW9kdWxlcyA9IHNldChtb2R1bGVzKQotICAgICAgICAgICAgZm91bmQgPSBzZXQobWYubW9kdWxlcy5rZXlzKCkpCi0gICAgICAgICAgICBtb3JlID0gbGlzdChmb3VuZCAtIG1vZHVsZXMpCi0gICAgICAgICAgICBsZXNzID0gbGlzdChtb2R1bGVzIC0gZm91bmQpCisgICAgICAgICAgICBtb2R1bGVzID0gc29ydGVkKHNldChtb2R1bGVzKSkKKyAgICAgICAgICAgIGZvdW5kID0gc29ydGVkKG1mLm1vZHVsZXMpCiAgICAgICAgICAgICAjIGNoZWNrIGlmIHdlIGZvdW5kIHdoYXQgd2UgZXhwZWN0ZWQsIG5vdCBtb3JlLCBub3QgbGVzcwotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgobW9yZSwgbGVzcyksIChbXSwgW10pKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmb3VuZCwgbW9kdWxlcykKIAogICAgICAgICAgICAgIyBjaGVjayBmb3IgbWlzc2luZyBhbmQgbWF5YmUgbWlzc2luZyBtb2R1bGVzCiAgICAgICAgICAgICBiYWQsIG1heWJlID0gbWYuYW55X21pc3NpbmdfbWF5YmUoKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiYWQsIG1pc3NpbmcpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1heWJlLCBtYXliZV9taXNzaW5nKQogICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgZGlzdHV0aWxzLmRpcl91dGlsLnJlbW92ZV90cmVlKFRFU1RfRElSKQorICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShURVNUX0RJUikKIAogICAgIGRlZiB0ZXN0X3BhY2thZ2Uoc2VsZik6CiAgICAgICAgIHNlbGYuX2RvX3Rlc3QocGFja2FnZV90ZXN0KQpAQCAtMjU0LDI1ICsyNTgsMjMgQEAKICAgICBkZWYgdGVzdF9tYXliZShzZWxmKToKICAgICAgICAgc2VsZi5fZG9fdGVzdChtYXliZV90ZXN0KQogCi0gICAgaWYgZ2V0YXR0cihfX2Z1dHVyZV9fLCAiYWJzb2x1dGVfaW1wb3J0IiwgTm9uZSk6CisgICAgZGVmIHRlc3RfbWF5YmVfbmV3KHNlbGYpOgorICAgICAgICBzZWxmLl9kb190ZXN0KG1heWJlX3Rlc3RfbmV3KQogCi0gICAgICAgIGRlZiB0ZXN0X21heWJlX25ldyhzZWxmKToKLSAgICAgICAgICAgIHNlbGYuX2RvX3Rlc3QobWF5YmVfdGVzdF9uZXcpCisgICAgZGVmIHRlc3RfYWJzb2x1dGVfaW1wb3J0cyhzZWxmKToKKyAgICAgICAgc2VsZi5fZG9fdGVzdChhYnNvbHV0ZV9pbXBvcnRfdGVzdCkKIAotICAgICAgICBkZWYgdGVzdF9hYnNvbHV0ZV9pbXBvcnRzKHNlbGYpOgotICAgICAgICAgICAgc2VsZi5fZG9fdGVzdChhYnNvbHV0ZV9pbXBvcnRfdGVzdCkKKyAgICBkZWYgdGVzdF9yZWxhdGl2ZV9pbXBvcnRzKHNlbGYpOgorICAgICAgICBzZWxmLl9kb190ZXN0KHJlbGF0aXZlX2ltcG9ydF90ZXN0KQogCi0gICAgICAgIGRlZiB0ZXN0X3JlbGF0aXZlX2ltcG9ydHMoc2VsZik6Ci0gICAgICAgICAgICBzZWxmLl9kb190ZXN0KHJlbGF0aXZlX2ltcG9ydF90ZXN0KQorICAgIGRlZiB0ZXN0X3JlbGF0aXZlX2ltcG9ydHNfMihzZWxmKToKKyAgICAgICAgc2VsZi5fZG9fdGVzdChyZWxhdGl2ZV9pbXBvcnRfdGVzdF8yKQogCi0gICAgICAgIGRlZiB0ZXN0X3JlbGF0aXZlX2ltcG9ydHNfMihzZWxmKToKLSAgICAgICAgICAgIHNlbGYuX2RvX3Rlc3QocmVsYXRpdmVfaW1wb3J0X3Rlc3RfMikKKyAgICBkZWYgdGVzdF9yZWxhdGl2ZV9pbXBvcnRzXzMoc2VsZik6CisgICAgICAgIHNlbGYuX2RvX3Rlc3QocmVsYXRpdmVfaW1wb3J0X3Rlc3RfMykKIAotICAgICAgICBkZWYgdGVzdF9yZWxhdGl2ZV9pbXBvcnRzXzMoc2VsZik6Ci0gICAgICAgICAgICBzZWxmLl9kb190ZXN0KHJlbGF0aXZlX2ltcG9ydF90ZXN0XzMpCiAKIGRlZiB0ZXN0X21haW4oKToKLSAgICBkaXN0dXRpbHMubG9nLnNldF90aHJlc2hvbGQoZGlzdHV0aWxzLmxvZy5XQVJOKQogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KE1vZHVsZUZpbmRlclRlc3QpCiAKIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X211bHRpYnl0ZWNvZGVjLnB5IGIvTGliL3Rlc3QvdGVzdF9tdWx0aWJ5dGVjb2RlYy5weQppbmRleCA4NmM2OGRjLi5mZWI3YmQ1IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X211bHRpYnl0ZWNvZGVjLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfbXVsdGlieXRlY29kZWMucHkKQEAgLTI0NywyMCArMjQ3LDE2IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGFueSh4ID4gMHg4MCBmb3IgeCBpbiBlKSkKIAogICAgIGRlZiB0ZXN0X2J1ZzE1NzI4MzIoc2VsZik6Ci0gICAgICAgIGlmIHN5cy5tYXh1bmljb2RlID49IDB4MTAwMDA6Ci0gICAgICAgICAgICBteXVuaWNociA9IGNocgotICAgICAgICBlbHNlOgotICAgICAgICAgICAgbXl1bmljaHIgPSBsYW1iZGEgeDogY2hyKDB4RDdDMCsoeD4+MTApKSArIGNocigweERDMDArKHgmMHgzRkYpKQotCiAgICAgICAgIGZvciB4IGluIHJhbmdlKDB4MTAwMDAsIDB4MTEwMDAwKToKICAgICAgICAgICAgICMgQW55IElTTyAyMDIyIGNvZGVjIHdpbGwgY2F1c2UgdGhlIHNlZ2ZhdWx0Ci0gICAgICAgICAgICBteXVuaWNocih4KS5lbmNvZGUoJ2lzb18yMDIyX2pwJywgJ2lnbm9yZScpCisgICAgICAgICAgICBjaHIoeCkuZW5jb2RlKCdpc29fMjAyMl9qcCcsICdpZ25vcmUnKQogCiBjbGFzcyBUZXN0U3RhdGVmdWwodW5pdHRlc3QuVGVzdENhc2UpOgogICAgIHRleHQgPSAnXHU0RTE2XHU0RTE2JwogICAgIGVuY29kaW5nID0gJ2lzby0yMDIyLWpwJwogICAgIGV4cGVjdGVkID0gYidceDFiJEJAJEAkJwotICAgIGV4cGVjdGVkX3Jlc2V0ID0gYidceDFiJEJAJEAkXHgxYihCJworICAgIHJlc2V0ID0gYidceDFiKEInCisgICAgZXhwZWN0ZWRfcmVzZXQgPSBleHBlY3RlZCArIHJlc2V0CiAKICAgICBkZWYgdGVzdF9lbmNvZGUoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi50ZXh0LmVuY29kZShzZWxmLmVuY29kaW5nKSwgc2VsZi5leHBlY3RlZF9yZXNldCkKQEAgLTI3MSw2ICsyNjcsOCBAQAogICAgICAgICAgICAgZW5jb2Rlci5lbmNvZGUoY2hhcikKICAgICAgICAgICAgIGZvciBjaGFyIGluIHNlbGYudGV4dCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXRwdXQsIHNlbGYuZXhwZWN0ZWQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW5jb2Rlci5lbmNvZGUoJycsIGZpbmFsPVRydWUpLCBzZWxmLnJlc2V0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGVuY29kZXIuZW5jb2RlKCcnLCBmaW5hbD1UcnVlKSwgYicnKQogCiAgICAgZGVmIHRlc3RfaW5jcmVtZW50YWxlbmNvZGVyX2ZpbmFsKHNlbGYpOgogICAgICAgICBlbmNvZGVyID0gY29kZWNzLmdldGluY3JlbWVudGFsZW5jb2RlcihzZWxmLmVuY29kaW5nKSgpCkBAIC0yNzksMTIgKzI3NywxNCBAQAogICAgICAgICAgICAgZW5jb2Rlci5lbmNvZGUoY2hhciwgaW5kZXggPT0gbGFzdF9pbmRleCkKICAgICAgICAgICAgIGZvciBpbmRleCwgY2hhciBpbiBlbnVtZXJhdGUoc2VsZi50ZXh0KSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvdXRwdXQsIHNlbGYuZXhwZWN0ZWRfcmVzZXQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZW5jb2Rlci5lbmNvZGUoJycsIGZpbmFsPVRydWUpLCBiJycpCiAKIGNsYXNzIFRlc3RIWlN0YXRlZnVsKFRlc3RTdGF0ZWZ1bCk6CiAgICAgdGV4dCA9ICdcdTgwNGFcdTgwNGEnCiAgICAgZW5jb2RpbmcgPSAnaHonCiAgICAgZXhwZWN0ZWQgPSBiJ357QURBRCcKLSAgICBleHBlY3RlZF9yZXNldCA9IGInfntBREFEfn0nCisgICAgcmVzZXQgPSBiJ359JworICAgIGV4cGVjdGVkX3Jlc2V0ID0gZXhwZWN0ZWQgKyByZXNldAogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoX19uYW1lX18pCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X211bHRpYnl0ZWNvZGVjX3N1cHBvcnQucHkgYi9MaWIvdGVzdC90ZXN0X211bHRpYnl0ZWNvZGVjX3N1cHBvcnQucHkKaW5kZXggZWY2M2I2OS4uYWMzYjkyYiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9tdWx0aWJ5dGVjb2RlY19zdXBwb3J0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfbXVsdGlieXRlY29kZWNfc3VwcG9ydC5weQpAQCAtMjY0LDIxICsyNjQsNiBAQAogCiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvc3RyZWFtLmdldHZhbHVlKCksIHNlbGYudHN0cmluZ1swXSkKIAotaWYgbGVuKCdcVTAwMDEyMzQ1JykgPT0gMjogIyB1Y3MyIGJ1aWxkCi0gICAgX3VuaWNociA9IGNocgotICAgIGRlZiBjaHIodik6Ci0gICAgICAgIGlmIHYgPj0gMHgxMDAwMDoKLSAgICAgICAgICAgIHJldHVybiBfdW5pY2hyKDB4ZDgwMCArICgodiAtIDB4MTAwMDApID4+IDEwKSkgKyBcCi0gICAgICAgICAgICAgICAgICAgX3VuaWNocigweGRjMDAgKyAoKHYgLSAweDEwMDAwKSAmIDB4M2ZmKSkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHJldHVybiBfdW5pY2hyKHYpCi0gICAgX29yZCA9IG9yZAotICAgIGRlZiBvcmQoYyk6Ci0gICAgICAgIGlmIGxlbihjKSA9PSAyOgotICAgICAgICAgICAgcmV0dXJuIDB4MTAwMDAgKyAoKF9vcmQoY1swXSkgLSAweGQ4MDApIDw8IDEwKSArIFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgKG9yZChjWzFdKSAtIDB4ZGMwMCkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHJldHVybiBfb3JkKGMpCiAKIGNsYXNzIFRlc3RCYXNlX01hcHBpbmcodW5pdHRlc3QuVGVzdENhc2UpOgogICAgIHBhc3NfZW5jdGVzdCA9IFtdCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X211bHRpcHJvY2Vzc2luZy5weSBiL0xpYi90ZXN0L3Rlc3RfbXVsdGlwcm9jZXNzaW5nLnB5CmluZGV4IDhlZGI0MjAuLmU1YmViOTcgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfbXVsdGlwcm9jZXNzaW5nLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfbXVsdGlwcm9jZXNzaW5nLnB5CkBAIC04LDYgKzgsNyBAQAogaW1wb3J0IHF1ZXVlIGFzIHB5cXVldWUKIGltcG9ydCB0aW1lCiBpbXBvcnQgaW8KK2ltcG9ydCBpdGVydG9vbHMKIGltcG9ydCBzeXMKIGltcG9ydCBvcwogaW1wb3J0IGdjCkBAIC04Miw2ICs4MywyMyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICdIQVZFX0JST0tFTl9TRU1fR0VUVkFMVUUnLCBGYWxzZSkKIAogV0lOMzIgPSAoc3lzLnBsYXRmb3JtID09ICJ3aW4zMiIpCitpZiBXSU4zMjoKKyAgICBmcm9tIF9zdWJwcm9jZXNzIGltcG9ydCBXYWl0Rm9yU2luZ2xlT2JqZWN0LCBJTkZJTklURSwgV0FJVF9PQkpFQ1RfMAorCisgICAgZGVmIHdhaXRfZm9yX2hhbmRsZShoYW5kbGUsIHRpbWVvdXQpOgorICAgICAgICBpZiB0aW1lb3V0IGlzIE5vbmUgb3IgdGltZW91dCA8IDAuMDoKKyAgICAgICAgICAgIHRpbWVvdXQgPSBJTkZJTklURQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgdGltZW91dCA9IGludCgxMDAwICogdGltZW91dCkKKyAgICAgICAgcmV0dXJuIFdhaXRGb3JTaW5nbGVPYmplY3QoaGFuZGxlLCB0aW1lb3V0KSA9PSBXQUlUX09CSkVDVF8wCitlbHNlOgorICAgIGZyb20gc2VsZWN0IGltcG9ydCBzZWxlY3QKKyAgICBfc2VsZWN0ID0gdXRpbC5fZWludHJfcmV0cnkoc2VsZWN0KQorCisgICAgZGVmIHdhaXRfZm9yX2hhbmRsZShoYW5kbGUsIHRpbWVvdXQpOgorICAgICAgICBpZiB0aW1lb3V0IGlzIG5vdCBOb25lIGFuZCB0aW1lb3V0IDwgMC4wOgorICAgICAgICAgICAgdGltZW91dCA9IE5vbmUKKyAgICAgICAgcmV0dXJuIGhhbmRsZSBpbiBfc2VsZWN0KFtoYW5kbGVdLCBbXSwgW10sIHRpbWVvdXQpWzBdCiAKIHRyeToKICAgICBNQVhGRCA9IG9zLnN5c2NvbmYoIlNDX09QRU5fTUFYIikKQEAgLTE5Niw2ICsyMTQsMTggQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjdXJyZW50LmlkZW50LCBvcy5nZXRwaWQoKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjdXJyZW50LmV4aXRjb2RlLCBOb25lKQogCisgICAgZGVmIHRlc3RfZGFlbW9uX2FyZ3VtZW50KHNlbGYpOgorICAgICAgICBpZiBzZWxmLlRZUEUgPT0gInRocmVhZHMiOgorICAgICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyBCeSBkZWZhdWx0IHVzZXMgdGhlIGN1cnJlbnQgcHJvY2VzcydzIGRhZW1vbiBmbGFnLgorICAgICAgICBwcm9jMCA9IHNlbGYuUHJvY2Vzcyh0YXJnZXQ9c2VsZi5fdGVzdCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwcm9jMC5kYWVtb24sIHNlbGYuY3VycmVudF9wcm9jZXNzKCkuZGFlbW9uKQorICAgICAgICBwcm9jMSA9IHNlbGYuUHJvY2Vzcyh0YXJnZXQ9c2VsZi5fdGVzdCwgZGFlbW9uPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShwcm9jMS5kYWVtb24pCisgICAgICAgIHByb2MyID0gc2VsZi5Qcm9jZXNzKHRhcmdldD1zZWxmLl90ZXN0LCBkYWVtb249RmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UocHJvYzIuZGFlbW9uKQorCiAgICAgQGNsYXNzbWV0aG9kCiAgICAgZGVmIF90ZXN0KGNscywgcSwgKmFyZ3MsICoqa3dkcyk6CiAgICAgICAgIGN1cnJlbnQgPSBjbHMuY3VycmVudF9wcm9jZXNzKCkKQEAgLTMyOCw2ICszNTgsMjYgQEAKICAgICAgICAgICAgIF0KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXN1bHQsIGV4cGVjdGVkKQogCisgICAgQGNsYXNzbWV0aG9kCisgICAgZGVmIF90ZXN0X3NlbnRpbmVsKGNscywgZXZlbnQpOgorICAgICAgICBldmVudC53YWl0KDEwLjApCisKKyAgICBkZWYgdGVzdF9zZW50aW5lbChzZWxmKToKKyAgICAgICAgaWYgc2VsZi5UWVBFID09ICJ0aHJlYWRzIjoKKyAgICAgICAgICAgIHJldHVybgorICAgICAgICBldmVudCA9IHNlbGYuRXZlbnQoKQorICAgICAgICBwID0gc2VsZi5Qcm9jZXNzKHRhcmdldD1zZWxmLl90ZXN0X3NlbnRpbmVsLCBhcmdzPShldmVudCwpKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgorICAgICAgICAgICAgcC5zZW50aW5lbAorICAgICAgICBwLnN0YXJ0KCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHAuam9pbikKKyAgICAgICAgc2VudGluZWwgPSBwLnNlbnRpbmVsCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShzZW50aW5lbCwgaW50KQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHdhaXRfZm9yX2hhbmRsZShzZW50aW5lbCwgdGltZW91dD0wLjApKQorICAgICAgICBldmVudC5zZXQoKQorICAgICAgICBwLmpvaW4oKQorICAgICAgICBzZWxmLmFzc2VydFRydWUod2FpdF9mb3JfaGFuZGxlKHNlbnRpbmVsLCB0aW1lb3V0PURFTFRBKSkKKwogIwogIwogIwpAQCAtMTA5OSw2ICsxMTQ5LDkgQEAKICAgICB0aW1lLnNsZWVwKHdhaXQpCiAgICAgcmV0dXJuIHgqeAogCitkZWYgbXVsKHgsIHkpOgorICAgIHJldHVybiB4KnkKKwogY2xhc3MgX1Rlc3RQb29sKEJhc2VUZXN0Q2FzZSk6CiAKICAgICBkZWYgdGVzdF9hcHBseShzZWxmKToKQEAgLTExMTIsNiArMTE2NSwyMCBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBtYXAoc3FyLCBsaXN0KHJhbmdlKDEwMCkpLCBjaHVua3NpemU9MjApLAogICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3QobWFwKHNxciwgbGlzdChyYW5nZSgxMDApKSkpKQogCisgICAgZGVmIHRlc3Rfc3Rhcm1hcChzZWxmKToKKyAgICAgICAgcHNtYXAgPSBzZWxmLnBvb2wuc3Rhcm1hcAorICAgICAgICB0dXBsZXMgPSBsaXN0KHppcChyYW5nZSgxMCksIHJhbmdlKDksLTEsIC0xKSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHNtYXAobXVsLCB0dXBsZXMpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3QoaXRlcnRvb2xzLnN0YXJtYXAobXVsLCB0dXBsZXMpKSkKKyAgICAgICAgdHVwbGVzID0gbGlzdCh6aXAocmFuZ2UoMTAwKSwgcmFuZ2UoOTksLTEsIC0xKSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHNtYXAobXVsLCB0dXBsZXMsIGNodW5rc2l6ZT0yMCksCisgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdChpdGVydG9vbHMuc3Rhcm1hcChtdWwsIHR1cGxlcykpKQorCisgICAgZGVmIHRlc3Rfc3Rhcm1hcF9hc3luYyhzZWxmKToKKyAgICAgICAgdHVwbGVzID0gbGlzdCh6aXAocmFuZ2UoMTAwKSwgcmFuZ2UoOTksLTEsIC0xKSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5wb29sLnN0YXJtYXBfYXN5bmMobXVsLCB0dXBsZXMpLmdldCgpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3QoaXRlcnRvb2xzLnN0YXJtYXAobXVsLCB0dXBsZXMpKSkKKwogICAgIGRlZiB0ZXN0X21hcF9jaHVua3NpemUoc2VsZik6CiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHNlbGYucG9vbC5tYXBfYXN5bmMoc3FyLCBbXSwgY2h1bmtzaXplPTEpLmdldCh0aW1lb3V0PVRJTUVPVVQxKQpAQCAtMjExNCw5ICsyMTgxLDE1IEBACiAKICAgICBAdW5pdHRlc3Quc2tpcElmKFdJTjMyLCAic2tpcHBlZCBvbiBXaW5kb3dzIikKICAgICBkZWYgdGVzdF9pbnZhbGlkX2hhbmRsZXMoc2VsZik6Ci0gICAgICAgIGNvbm4gPSBfbXVsdGlwcm9jZXNzaW5nLkNvbm5lY3Rpb24oNDQ5Nzc2MDgpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKElPRXJyb3IsIGNvbm4ucG9sbCkKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoSU9FcnJvciwgX211bHRpcHJvY2Vzc2luZy5Db25uZWN0aW9uLCAtMSkKKyAgICAgICAgY29ubiA9IG11bHRpcHJvY2Vzc2luZy5jb25uZWN0aW9uLkNvbm5lY3Rpb24oNDQ5Nzc2MDgpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKChWYWx1ZUVycm9yLCBJT0Vycm9yKSwgY29ubi5wb2xsKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgIyBIYWNrIHByaXZhdGUgYXR0cmlidXRlIF9oYW5kbGUgdG8gYXZvaWQgcHJpbnRpbmcgYW4gZXJyb3IKKyAgICAgICAgICAgICMgaW4gY29ubi5fX2RlbF9fCisgICAgICAgICAgICBjb25uLl9oYW5kbGUgPSBOb25lCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKChWYWx1ZUVycm9yLCBJT0Vycm9yKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbXVsdGlwcm9jZXNzaW5nLmNvbm5lY3Rpb24uQ29ubmVjdGlvbiwgLTEpCiAKICMKICMgRnVuY3Rpb25zIHVzZWQgdG8gY3JlYXRlIHRlc3QgY2FzZXMgZnJvbSB0aGUgYmFzZSBvbmVzIGluIHRoaXMgbW9kdWxlCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X25udHBsaWIucHkgYi9MaWIvdGVzdC90ZXN0X25udHBsaWIucHkKaW5kZXggNzg2YjVmMC4uMzE0MTM4OSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9ubnRwbGliLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfbm50cGxpYi5weQpAQCAtMSw0ICsxLDUgQEAKIGltcG9ydCBpbworaW1wb3J0IHNvY2tldAogaW1wb3J0IGRhdGV0aW1lCiBpbXBvcnQgdGV4dHdyYXAKIGltcG9ydCB1bml0dGVzdApAQCAtMjUxLDYgKzI1MiwyNiBAQAogICAgICAgICAgICAgIyB2YWx1ZQogICAgICAgICAgICAgc2V0YXR0cihjbHMsIG5hbWUsIHdyYXBfbWV0aChtZXRoKSkKIAorICAgIGRlZiB0ZXN0X3dpdGhfc3RhdGVtZW50KHNlbGYpOgorICAgICAgICBkZWYgaXNfY29ubmVjdGVkKCk6CisgICAgICAgICAgICBpZiBub3QgaGFzYXR0cihzZXJ2ZXIsICdmaWxlJyk6CisgICAgICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VydmVyLmhlbHAoKQorICAgICAgICAgICAgZXhjZXB0IChzb2NrZXQuZXJyb3IsIEVPRkVycm9yKToKKyAgICAgICAgICAgICAgICByZXR1cm4gRmFsc2UKKyAgICAgICAgICAgIHJldHVybiBUcnVlCisKKyAgICAgICAgd2l0aCBzZWxmLk5OVFBfQ0xBU1Moc2VsZi5OTlRQX0hPU1QsIHRpbWVvdXQ9VElNRU9VVCwgdXNlbmV0cmM9RmFsc2UpIGFzIHNlcnZlcjoKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShpc19jb25uZWN0ZWQoKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZXJ2ZXIuaGVscCgpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGlzX2Nvbm5lY3RlZCgpKQorCisgICAgICAgIHdpdGggc2VsZi5OTlRQX0NMQVNTKHNlbGYuTk5UUF9IT1NULCB0aW1lb3V0PVRJTUVPVVQsIHVzZW5ldHJjPUZhbHNlKSBhcyBzZXJ2ZXI6CisgICAgICAgICAgICBzZXJ2ZXIucXVpdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaXNfY29ubmVjdGVkKCkpCisKKwogTmV0d29ya2VkTk5UUFRlc3RzTWl4aW4ud3JhcF9tZXRob2RzKCkKIAogCkBAIC04MTIsNyArODMzLDcgQEAKIAogICAgIGRlZiBfY2hlY2tfYXJ0aWNsZV9ib2R5KHNlbGYsIGxpbmVzKToKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obGluZXMpLCA0KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpbmVzWy0xXS5kZWNvZGUoJ3V0ZjgnKSwgIi0tIFNpZ25lZCBieSBBbmRyw6kuIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaW5lc1stMV0uZGVjb2RlKCd1dGYtOCcpLCAiLS0gU2lnbmVkIGJ5IEFuZHLDqS4iKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpbmVzWy0yXSwgYiIiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxpbmVzWy0zXSwgYiIuSGVyZSBpcyBhIGRvdC1zdGFydGluZyBsaW5lLiIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGluZXNbLTRdLCBiIlRoaXMgaXMganVzdCBhIHRlc3QgYXJ0aWNsZS4iKQpAQCAtMTAxMSwxMiArMTAzMiwxMiBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3AsIHN1Y2Nlc3NfcmVzcCkKICAgICAgICAgIyBXaXRoIGFuIGl0ZXJhYmxlIG9mIHRlcm1pbmF0ZWQgbGluZXMKICAgICAgICAgZGVmIGl0ZXJsaW5lcyhiKToKLSAgICAgICAgICAgIHJldHVybiBpdGVyKGIuc3BsaXRsaW5lcyhUcnVlKSkKKyAgICAgICAgICAgIHJldHVybiBpdGVyKGIuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKSkKICAgICAgICAgcmVzcCA9IHNlbGYuX2NoZWNrX3Bvc3RfaWhhdmVfc3ViKGZ1bmMsICphcmdzLCBmaWxlX2ZhY3Rvcnk9aXRlcmxpbmVzKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3AsIHN1Y2Nlc3NfcmVzcCkKICAgICAgICAgIyBXaXRoIGFuIGl0ZXJhYmxlIG9mIG5vbi10ZXJtaW5hdGVkIGxpbmVzCiAgICAgICAgIGRlZiBpdGVybGluZXMoYik6Ci0gICAgICAgICAgICByZXR1cm4gaXRlcihiLnNwbGl0bGluZXMoRmFsc2UpKQorICAgICAgICAgICAgcmV0dXJuIGl0ZXIoYi5zcGxpdGxpbmVzKGtlZXBlbmRzPUZhbHNlKSkKICAgICAgICAgcmVzcCA9IHNlbGYuX2NoZWNrX3Bvc3RfaWhhdmVfc3ViKGZ1bmMsICphcmdzLCBmaWxlX2ZhY3Rvcnk9aXRlcmxpbmVzKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlc3AsIHN1Y2Nlc3NfcmVzcCkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9udHBhdGgucHkgYi9MaWIvdGVzdC90ZXN0X250cGF0aC5weQppbmRleCA2NDY0OTUwLi4yYzlkYWI5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X250cGF0aC5weQorKysgYi9MaWIvdGVzdC90ZXN0X250cGF0aC5weQpAQCAtMSwxMCArMSwxMSBAQAogaW1wb3J0IG50cGF0aAogaW1wb3J0IG9zCiBpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKK2ltcG9ydCB3YXJuaW5ncwogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRlc3RGYWlsZWQKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydCwgdGVzdF9nZW5lcmljcGF0aAogZnJvbSB0ZW1wZmlsZSBpbXBvcnQgVGVtcG9yYXJ5RmlsZQotaW1wb3J0IHVuaXR0ZXN0CiAKIAogZGVmIHRlc3Rlcihmbiwgd2FudFJlc3VsdCk6CkBAIC0yMSw3ICsyMiw5IEBACiAgICAgZm4gPSBmbi5yZXBsYWNlKCdbIicsICdbYiInKQogICAgIGZuID0gZm4ucmVwbGFjZSgiLCAnIiwgIiwgYiciKQogICAgIGZuID0gZm4ucmVwbGFjZSgnLCAiJywgJywgYiInKQotICAgIGdvdFJlc3VsdCA9IGV2YWwoZm4pCisgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgZ290UmVzdWx0ID0gZXZhbChmbikKICAgICBpZiBpc2luc3RhbmNlKHdhbnRSZXN1bHQsIHN0cik6CiAgICAgICAgIHdhbnRSZXN1bHQgPSB3YW50UmVzdWx0LmVuY29kZSgnYXNjaWknKQogICAgIGVsaWYgaXNpbnN0YW5jZSh3YW50UmVzdWx0LCB0dXBsZSk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X29wdHBhcnNlLnB5IGIvTGliL3Rlc3QvdGVzdF9vcHRwYXJzZS5weQppbmRleCA3Yjk1NjEyLi5kMWFlNzU3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X29wdHBhcnNlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfb3B0cGFyc2UucHkKQEAgLTYzMSw3ICs2MzEsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25fbGlzdD1vcHRpb25zKQogCiAgICAgZGVmIHRlc3RfcmVxdWlyZWRfdmFsdWUoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0UGFyc2VGYWlsKFsiLWEiXSwgIi1hIG9wdGlvbiByZXF1aXJlcyBhbiBhcmd1bWVudCIpCisgICAgICAgIHNlbGYuYXNzZXJ0UGFyc2VGYWlsKFsiLWEiXSwgIi1hIG9wdGlvbiByZXF1aXJlcyAxIGFyZ3VtZW50IikKIAogICAgIGRlZiB0ZXN0X2ludmFsaWRfaW50ZWdlcihzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRQYXJzZUZhaWwoWyItYiIsICI1eCJdLApAQCAtMTAyMyw3ICsxMDIzLDcgQEAKICAgICAgICAgVFlQRV9DSEVDS0VSWyJmaWxlIl0gPSBjaGVja19maWxlCiAKICAgICBkZWYgdGVzdF9maWxldHlwZV9vayhzZWxmKToKLSAgICAgICAgb3BlbihzdXBwb3J0LlRFU1RGTiwgInciKS5jbG9zZSgpCisgICAgICAgIHN1cHBvcnQuY3JlYXRlX2VtcHR5X2ZpbGUoc3VwcG9ydC5URVNURk4pCiAgICAgICAgIHNlbGYuYXNzZXJ0UGFyc2VPSyhbIi0tZmlsZSIsIHN1cHBvcnQuVEVTVEZOLCAiLWFmb28iXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsnZmlsZSc6IHN1cHBvcnQuVEVTVEZOLCAnYSc6ICdmb28nfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtdKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9vcy5weSBiL0xpYi90ZXN0L3Rlc3Rfb3MucHkKaW5kZXggZTU3M2JkMi4uMjkzMDA1YiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9vcy5weQorKysgYi9MaWIvdGVzdC90ZXN0X29zLnB5CkBAIC0xNCwxOCArMTQsMjUgQEAKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogaW1wb3J0IGNvbnRleHRsaWIKIGltcG9ydCBtbWFwCitpbXBvcnQgcGxhdGZvcm0KK2ltcG9ydCByZQogaW1wb3J0IHV1aWQKK2ltcG9ydCBhc3luY29yZQoraW1wb3J0IGFzeW5jaGF0CitpbXBvcnQgc29ja2V0Cit0cnk6CisgICAgaW1wb3J0IHRocmVhZGluZworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHRocmVhZGluZyA9IE5vbmUKIAogIyBEZXRlY3Qgd2hldGhlciB3ZSdyZSBvbiBhIExpbnV4IHN5c3RlbSB0aGF0IHVzZXMgdGhlIChub3cgb3V0ZGF0ZWQKICMgYW5kIHVubWFpbnRhaW5lZCkgbGludXh0aHJlYWRzIHRocmVhZGluZyBsaWJyYXJ5LiAgVGhlcmUncyBhbiBpc3N1ZQogIyB3aGVuIGNvbWJpbmluZyBsaW51eHRocmVhZHMgd2l0aCBhIGZhaWxlZCBleGVjdiBjYWxsOiBzZWUKICMgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTQ5NzAuCi1pZiAoaGFzYXR0cihvcywgImNvbmZzdHJfbmFtZXMiKSBhbmQKLSAgICAiQ1NfR05VX0xJQlBUSFJFQURfVkVSU0lPTiIgaW4gb3MuY29uZnN0cl9uYW1lcyk6Ci0gICAgbGlicHRocmVhZCA9IG9zLmNvbmZzdHIoIkNTX0dOVV9MSUJQVEhSRUFEX1ZFUlNJT04iKQotICAgIFVTSU5HX0xJTlVYVEhSRUFEUz0gbGlicHRocmVhZC5zdGFydHN3aXRoKCJsaW51eHRocmVhZHMiKQoraWYgaGFzYXR0cihzeXMsICd0aHJlYWRfaW5mbycpIGFuZCBzeXMudGhyZWFkX2luZm8udmVyc2lvbjoKKyAgICBVU0lOR19MSU5VWFRIUkVBRFMgPSBzeXMudGhyZWFkX2luZm8udmVyc2lvbi5zdGFydHN3aXRoKCJsaW51eHRocmVhZHMiKQogZWxzZToKLSAgICBVU0lOR19MSU5VWFRIUkVBRFM9IEZhbHNlCisgICAgVVNJTkdfTElOVVhUSFJFQURTID0gRmFsc2UKIAogIyBUZXN0cyBjcmVhdGluZyBURVNURk4KIGNsYXNzIEZpbGVUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CkBAIC0xMjIsNiArMTI5LDE4IEBACiAgICAgICAgIHNlbGYuZmRvcGVuX2hlbHBlcigncicpCiAgICAgICAgIHNlbGYuZmRvcGVuX2hlbHBlcigncicsIDEwMCkKIAorICAgIGRlZiB0ZXN0X3JlcGxhY2Uoc2VsZik6CisgICAgICAgIFRFU1RGTjIgPSBzdXBwb3J0LlRFU1RGTiArICIuMiIKKyAgICAgICAgd2l0aCBvcGVuKHN1cHBvcnQuVEVTVEZOLCAndycpIGFzIGY6CisgICAgICAgICAgICBmLndyaXRlKCIxIikKKyAgICAgICAgd2l0aCBvcGVuKFRFU1RGTjIsICd3JykgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoIjIiKQorICAgICAgICBzZWxmLmFkZENsZWFudXAob3MudW5saW5rLCBURVNURk4yKQorICAgICAgICBvcy5yZXBsYWNlKHN1cHBvcnQuVEVTVEZOLCBURVNURk4yKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhGaWxlTm90Rm91bmRFcnJvciwgb3Muc3RhdCwgc3VwcG9ydC5URVNURk4pCisgICAgICAgIHdpdGggb3BlbihURVNURk4yLCAncicpIGFzIGY6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCAiMSIpCisKIAogIyBUZXN0IGF0dHJpYnV0ZXMgb24gcmV0dXJuIHZhbHVlcyBmcm9tIG9zLipzdGF0KiBmYW1pbHkuCiBjbGFzcyBTdGF0QXR0cmlidXRlVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtMjA2LDcgKzIyNSw5IEBACiAgICAgICAgICAgICBmbmFtZSA9IHNlbGYuZm5hbWUuZW5jb2RlKHN5cy5nZXRmaWxlc3lzdGVtZW5jb2RpbmcoKSkKICAgICAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKICAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoImNhbm5vdCBlbmNvZGUgJWEgZm9yIHRoZSBmaWxlc3lzdGVtIiAlIHNlbGYuZm5hbWUpCi0gICAgICAgIHNlbGYuY2hlY2tfc3RhdF9hdHRyaWJ1dGVzKGZuYW1lKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIHNlbGYuY2hlY2tfc3RhdF9hdHRyaWJ1dGVzKGZuYW1lKQogCiAgICAgZGVmIHRlc3Rfc3RhdHZmc19hdHRyaWJ1dGVzKHNlbGYpOgogICAgICAgICBpZiBub3QgaGFzYXR0cihvcywgInN0YXR2ZnMiKToKQEAgLTI2Myw2ICsyODQsMjEgQEAKICAgICAgICAgc3QyID0gb3Muc3RhdChzdXBwb3J0LlRFU1RGTikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdDIuc3RfbXRpbWUsIGludChzdC5zdF9tdGltZS1kZWx0YSkpCiAKKyAgICBkZWYgdGVzdF91dGltZV9ub2FyZ3Moc2VsZik6CisgICAgICAgICMgSXNzdWUgIzEzMzI3IHJlbW92ZWQgdGhlIHJlcXVpcmVtZW50IHRvIHBhc3MgTm9uZSBhcyB0aGUKKyAgICAgICAgIyBzZWNvbmQgYXJndW1lbnQuIENoZWNrIHRoYXQgdGhlIHByZXZpb3VzIG1ldGhvZHMgb2YgcGFzc2luZworICAgICAgICAjIGEgdGltZSB0dXBsZSBvciBOb25lIHdvcmsgaW4gYWRkaXRpb24gdG8gbm8gYXJndW1lbnQuCisgICAgICAgIHN0ID0gb3Muc3RhdChzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgIyBEb2Vzbid0IHNldCBhbnl0aGluZyBuZXcsIGJ1dCBzZXRzIHRoZSB0aW1lIHR1cGxlIHdheQorICAgICAgICBvcy51dGltZShzdXBwb3J0LlRFU1RGTiwgKHN0LnN0X2F0aW1lLCBzdC5zdF9tdGltZSkpCisgICAgICAgICMgU2V0IHRvIHRoZSBjdXJyZW50IHRpbWUgaW4gdGhlIG9sZCBleHBsaWNpdCB3YXkuCisgICAgICAgIG9zLnV0aW1lKHN1cHBvcnQuVEVTVEZOLCBOb25lKQorICAgICAgICBzdDEgPSBvcy5zdGF0KHN1cHBvcnQuVEVTVEZOKQorICAgICAgICAjIFNldCB0byB0aGUgY3VycmVudCB0aW1lIGluIHRoZSBuZXcgd2F5CisgICAgICAgIG9zLnV0aW1lKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBzdDIgPSBvcy5zdGF0KHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBzZWxmLmFzc2VydEFsbW9zdEVxdWFsKHN0MS5zdF9tdGltZSwgc3QyLnN0X210aW1lLCBkZWx0YT0xMCkKKwogICAgICMgUmVzdHJpY3QgdGVzdCB0byBXaW4zMiwgc2luY2UgdGhlcmUgaXMgbm8gZ3VhcmFudGVlIG90aGVyCiAgICAgIyBzeXN0ZW1zIHN1cHBvcnQgY2VudGlzZWNvbmRzCiAgICAgaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CkBAIC00MjUsOCArNDYxLDggQEAKIAogICAgICMgT24gRnJlZUJTRCA8IDcgYW5kIE9TIFggPCAxMC42LCB1bnNldGVudigpIGRvZXNuJ3QgcmV0dXJuIGEgdmFsdWUgKGlzc3VlCiAgICAgIyAjMTM0MTUpLgotICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoKCdmcmVlYnNkJywgJ2RhcndpbicpKSwKLSAgICAgICAgICAgICAgICAgICAgICJkdWUgdG8ga25vd24gT1MgYnVnOiBzZWUgaXNzdWUgIzEzNDE1IikKKyAgICBAc3VwcG9ydC5yZXF1aXJlc19mcmVlYnNkX3ZlcnNpb24oNykKKyAgICBAc3VwcG9ydC5yZXF1aXJlc19tYWNfdmVyKDEwLCA2KQogICAgIGRlZiB0ZXN0X3Vuc2V0X2Vycm9yKHNlbGYpOgogICAgICAgICBpZiBzeXMucGxhdGZvcm0gPT0gIndpbjMyIjoKICAgICAgICAgICAgICMgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgbGltaXRlZCB0byAzMiw3NjcgY2hhcmFjdGVycwpAQCAtODM1LDcgKzg3MSw5IEBACiAgICAgICAgIHdpdGggb3BlbihmaWxlMSwgInciKSBhcyBmMToKICAgICAgICAgICAgIGYxLndyaXRlKCJ0ZXN0IikKIAotICAgICAgICBvcy5saW5rKGZpbGUxLCBmaWxlMikKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJpZ25vcmUiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICBvcy5saW5rKGZpbGUxLCBmaWxlMikKICAgICAgICAgd2l0aCBvcGVuKGZpbGUxLCAiciIpIGFzIGYxLCBvcGVuKGZpbGUyLCAiciIpIGFzIGYyOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguc2FtZW9wZW5maWxlKGYxLmZpbGVubygpLCBmMi5maWxlbm8oKSkpCiAKQEAgLTkzOCw4ICs5NzYsNyBAQAogICAgICAgICAgICAgb3MubWtkaXIoc2VsZi5kaXIpCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgZm9yIGZuIGluIGJ5dGVzZm46Ci0gICAgICAgICAgICAgICAgICAgIGYgPSBvcGVuKG9zLnBhdGguam9pbihzZWxmLmJkaXIsIGZuKSwgInciKQotICAgICAgICAgICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgICAgICAgICAgICAgc3VwcG9ydC5jcmVhdGVfZW1wdHlfZmlsZShvcy5wYXRoLmpvaW4oc2VsZi5iZGlyLCBmbikpCiAgICAgICAgICAgICAgICAgICAgIGZuID0gb3MuZnNkZWNvZGUoZm4pCiAgICAgICAgICAgICAgICAgICAgIGlmIGZuIGluIHNlbGYudW5pY29kZWZuOgogICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiZHVwbGljYXRlIGZpbGVuYW1lIikKQEAgLTExNTgsOCArMTE5NSwxMCBAQAogICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKG9zLmxzdGF0KGxpbmspLCBvcy5zdGF0KGxpbmspKQogCiAgICAgICAgIGJ5dGVzX2xpbmsgPSBvcy5mc2VuY29kZShsaW5rKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnN0YXQoYnl0ZXNfbGluayksIG9zLnN0YXQodGFyZ2V0KSkKLSAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChvcy5sc3RhdChieXRlc19saW5rKSwgb3Muc3RhdChieXRlc19saW5rKSkKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJpZ25vcmUiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnN0YXQoYnl0ZXNfbGluayksIG9zLnN0YXQodGFyZ2V0KSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwob3MubHN0YXQoYnl0ZXNfbGluayksIG9zLnN0YXQoYnl0ZXNfbGluaykpCiAKICAgICBkZWYgdGVzdF8xMjA4NChzZWxmKToKICAgICAgICAgbGV2ZWwxID0gb3MucGF0aC5hYnNwYXRoKHN1cHBvcnQuVEVTVEZOKQpAQCAtMTIzOSw2ICsxMjc4LDQyMiBAQAogICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGxlbih1c2VyX25hbWUpLCAwKQogCiAKK0B1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIob3MsICdnZXRwcmlvcml0eScpIGFuZCBoYXNhdHRyKG9zLCAnc2V0cHJpb3JpdHknKSwKKyAgICAgICAgICAgICAgICAgICAgICJuZWVkcyBvcy5nZXRwcmlvcml0eSBhbmQgb3Muc2V0cHJpb3JpdHkiKQorY2xhc3MgUHJvZ3JhbVByaW9yaXR5VGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgorICAgICIiIlRlc3RzIGZvciBvcy5nZXRwcmlvcml0eSgpIGFuZCBvcy5zZXRwcmlvcml0eSgpLiIiIgorCisgICAgZGVmIHRlc3Rfc2V0X2dldF9wcmlvcml0eShzZWxmKToKKworICAgICAgICBiYXNlID0gb3MuZ2V0cHJpb3JpdHkob3MuUFJJT19QUk9DRVNTLCBvcy5nZXRwaWQoKSkKKyAgICAgICAgb3Muc2V0cHJpb3JpdHkob3MuUFJJT19QUk9DRVNTLCBvcy5nZXRwaWQoKSwgYmFzZSArIDEpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG5ld19wcmlvID0gb3MuZ2V0cHJpb3JpdHkob3MuUFJJT19QUk9DRVNTLCBvcy5nZXRwaWQoKSkKKyAgICAgICAgICAgIGlmIGJhc2UgPj0gMTkgYW5kIG5ld19wcmlvIDw9IDE5OgorICAgICAgICAgICAgICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KAorICAgICAgInVuYWJsZSB0byByZWxpYWJseSB0ZXN0IHNldHByaW9yaXR5IGF0IGN1cnJlbnQgbmljZSBsZXZlbCBvZiAlcyIgJSBiYXNlKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld19wcmlvLCBiYXNlICsgMSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBvcy5zZXRwcmlvcml0eShvcy5QUklPX1BST0NFU1MsIG9zLmdldHBpZCgpLCBiYXNlKQorICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZXJyOgorICAgICAgICAgICAgICAgIGlmIGVyci5lcnJubyAhPSBlcnJuby5FQUNDRVM6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlCisKKworaWYgdGhyZWFkaW5nIGlzIG5vdCBOb25lOgorICAgIGNsYXNzIFNlbmRmaWxlVGVzdFNlcnZlcihhc3luY29yZS5kaXNwYXRjaGVyLCB0aHJlYWRpbmcuVGhyZWFkKToKKworICAgICAgICBjbGFzcyBIYW5kbGVyKGFzeW5jaGF0LmFzeW5jX2NoYXQpOgorCisgICAgICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgY29ubik6CisgICAgICAgICAgICAgICAgYXN5bmNoYXQuYXN5bmNfY2hhdC5fX2luaXRfXyhzZWxmLCBjb25uKQorICAgICAgICAgICAgICAgIHNlbGYuaW5fYnVmZmVyID0gW10KKyAgICAgICAgICAgICAgICBzZWxmLmNsb3NlZCA9IEZhbHNlCisgICAgICAgICAgICAgICAgc2VsZi5wdXNoKGIiMjIwIHJlYWR5XHJcbiIpCisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVfcmVhZChzZWxmKToKKyAgICAgICAgICAgICAgICBkYXRhID0gc2VsZi5yZWN2KDQwOTYpCisgICAgICAgICAgICAgICAgc2VsZi5pbl9idWZmZXIuYXBwZW5kKGRhdGEpCisKKyAgICAgICAgICAgIGRlZiBnZXRfZGF0YShzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4gYicnLmpvaW4oc2VsZi5pbl9idWZmZXIpCisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVfY2xvc2Uoc2VsZik6CisgICAgICAgICAgICAgICAgc2VsZi5jbG9zZSgpCisgICAgICAgICAgICAgICAgc2VsZi5jbG9zZWQgPSBUcnVlCisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVfZXJyb3Ioc2VsZik6CisgICAgICAgICAgICAgICAgcmFpc2UKKworICAgICAgICBkZWYgX19pbml0X18oc2VsZiwgYWRkcmVzcyk6CisgICAgICAgICAgICB0aHJlYWRpbmcuVGhyZWFkLl9faW5pdF9fKHNlbGYpCisgICAgICAgICAgICBhc3luY29yZS5kaXNwYXRjaGVyLl9faW5pdF9fKHNlbGYpCisgICAgICAgICAgICBzZWxmLmNyZWF0ZV9zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgICAgIHNlbGYuYmluZChhZGRyZXNzKQorICAgICAgICAgICAgc2VsZi5saXN0ZW4oNSkKKyAgICAgICAgICAgIHNlbGYuaG9zdCwgc2VsZi5wb3J0ID0gc2VsZi5zb2NrZXQuZ2V0c29ja25hbWUoKVs6Ml0KKyAgICAgICAgICAgIHNlbGYuaGFuZGxlcl9pbnN0YW5jZSA9IE5vbmUKKyAgICAgICAgICAgIHNlbGYuX2FjdGl2ZSA9IEZhbHNlCisgICAgICAgICAgICBzZWxmLl9hY3RpdmVfbG9jayA9IHRocmVhZGluZy5Mb2NrKCkKKworICAgICAgICAjIC0tLSBwdWJsaWMgQVBJCisKKyAgICAgICAgQHByb3BlcnR5CisgICAgICAgIGRlZiBydW5uaW5nKHNlbGYpOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYuX2FjdGl2ZQorCisgICAgICAgIGRlZiBzdGFydChzZWxmKToKKyAgICAgICAgICAgIGFzc2VydCBub3Qgc2VsZi5ydW5uaW5nCisgICAgICAgICAgICBzZWxmLl9fZmxhZyA9IHRocmVhZGluZy5FdmVudCgpCisgICAgICAgICAgICB0aHJlYWRpbmcuVGhyZWFkLnN0YXJ0KHNlbGYpCisgICAgICAgICAgICBzZWxmLl9fZmxhZy53YWl0KCkKKworICAgICAgICBkZWYgc3RvcChzZWxmKToKKyAgICAgICAgICAgIGFzc2VydCBzZWxmLnJ1bm5pbmcKKyAgICAgICAgICAgIHNlbGYuX2FjdGl2ZSA9IEZhbHNlCisgICAgICAgICAgICBzZWxmLmpvaW4oKQorCisgICAgICAgIGRlZiB3YWl0KHNlbGYpOgorICAgICAgICAgICAgIyB3YWl0IGZvciBoYW5kbGVyIGNvbm5lY3Rpb24gdG8gYmUgY2xvc2VkLCB0aGVuIHN0b3AgdGhlIHNlcnZlcgorICAgICAgICAgICAgd2hpbGUgbm90IGdldGF0dHIoc2VsZi5oYW5kbGVyX2luc3RhbmNlLCAiY2xvc2VkIiwgRmFsc2UpOgorICAgICAgICAgICAgICAgIHRpbWUuc2xlZXAoMC4wMDEpCisgICAgICAgICAgICBzZWxmLnN0b3AoKQorCisgICAgICAgICMgLS0tIGludGVybmFscworCisgICAgICAgIGRlZiBydW4oc2VsZik6CisgICAgICAgICAgICBzZWxmLl9hY3RpdmUgPSBUcnVlCisgICAgICAgICAgICBzZWxmLl9fZmxhZy5zZXQoKQorICAgICAgICAgICAgd2hpbGUgc2VsZi5fYWN0aXZlIGFuZCBhc3luY29yZS5zb2NrZXRfbWFwOgorICAgICAgICAgICAgICAgIHNlbGYuX2FjdGl2ZV9sb2NrLmFjcXVpcmUoKQorICAgICAgICAgICAgICAgIGFzeW5jb3JlLmxvb3AodGltZW91dD0wLjAwMSwgY291bnQ9MSkKKyAgICAgICAgICAgICAgICBzZWxmLl9hY3RpdmVfbG9jay5yZWxlYXNlKCkKKyAgICAgICAgICAgIGFzeW5jb3JlLmNsb3NlX2FsbCgpCisKKyAgICAgICAgZGVmIGhhbmRsZV9hY2NlcHQoc2VsZik6CisgICAgICAgICAgICBjb25uLCBhZGRyID0gc2VsZi5hY2NlcHQoKQorICAgICAgICAgICAgc2VsZi5oYW5kbGVyX2luc3RhbmNlID0gc2VsZi5IYW5kbGVyKGNvbm4pCisKKyAgICAgICAgZGVmIGhhbmRsZV9jb25uZWN0KHNlbGYpOgorICAgICAgICAgICAgc2VsZi5jbG9zZSgpCisgICAgICAgIGhhbmRsZV9yZWFkID0gaGFuZGxlX2Nvbm5lY3QKKworICAgICAgICBkZWYgd3JpdGFibGUoc2VsZik6CisgICAgICAgICAgICByZXR1cm4gMAorCisgICAgICAgIGRlZiBoYW5kbGVfZXJyb3Ioc2VsZik6CisgICAgICAgICAgICByYWlzZQorCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZGluZyBpcyBub3QgTm9uZSwgInRlc3QgbmVlZHMgdGhyZWFkaW5nIG1vZHVsZSIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnc2VuZGZpbGUnKSwgInRlc3QgbmVlZHMgb3Muc2VuZGZpbGUoKSIpCitjbGFzcyBUZXN0U2VuZGZpbGUodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgREFUQSA9IGIiMTIzNDVhYmNkZSIgKiAxNiAqIDEwMjQgICMgMTYwIEtCCisgICAgU1VQUE9SVF9IRUFERVJTX1RSQUlMRVJTID0gbm90IHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCJsaW51eCIpIGFuZCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm90IHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCJzb2xhcmlzIikgYW5kIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3Qgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoInN1bm9zIikKKworICAgIEBjbGFzc21ldGhvZAorICAgIGRlZiBzZXRVcENsYXNzKGNscyk6CisgICAgICAgIHdpdGggb3BlbihzdXBwb3J0LlRFU1RGTiwgIndiIikgYXMgZjoKKyAgICAgICAgICAgIGYud3JpdGUoY2xzLkRBVEEpCisKKyAgICBAY2xhc3NtZXRob2QKKyAgICBkZWYgdGVhckRvd25DbGFzcyhjbHMpOgorICAgICAgICBzdXBwb3J0LnVubGluayhzdXBwb3J0LlRFU1RGTikKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5zZXJ2ZXIgPSBTZW5kZmlsZVRlc3RTZXJ2ZXIoKHN1cHBvcnQuSE9TVCwgMCkpCisgICAgICAgIHNlbGYuc2VydmVyLnN0YXJ0KCkKKyAgICAgICAgc2VsZi5jbGllbnQgPSBzb2NrZXQuc29ja2V0KCkKKyAgICAgICAgc2VsZi5jbGllbnQuY29ubmVjdCgoc2VsZi5zZXJ2ZXIuaG9zdCwgc2VsZi5zZXJ2ZXIucG9ydCkpCisgICAgICAgIHNlbGYuY2xpZW50LnNldHRpbWVvdXQoMSkKKyAgICAgICAgIyBzeW5jaHJvbml6ZSBieSB3YWl0aW5nIGZvciAiMjIwIHJlYWR5IiByZXNwb25zZQorICAgICAgICBzZWxmLmNsaWVudC5yZWN2KDEwMjQpCisgICAgICAgIHNlbGYuc29ja25vID0gc2VsZi5jbGllbnQuZmlsZW5vKCkKKyAgICAgICAgc2VsZi5maWxlID0gb3BlbihzdXBwb3J0LlRFU1RGTiwgJ3JiJykKKyAgICAgICAgc2VsZi5maWxlbm8gPSBzZWxmLmZpbGUuZmlsZW5vKCkKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc2VsZi5maWxlLmNsb3NlKCkKKyAgICAgICAgc2VsZi5jbGllbnQuY2xvc2UoKQorICAgICAgICBpZiBzZWxmLnNlcnZlci5ydW5uaW5nOgorICAgICAgICAgICAgc2VsZi5zZXJ2ZXIuc3RvcCgpCisKKyAgICBkZWYgc2VuZGZpbGVfd3JhcHBlcihzZWxmLCBzb2NrLCBmaWxlLCBvZmZzZXQsIG5ieXRlcywgaGVhZGVycz1bXSwgdHJhaWxlcnM9W10pOgorICAgICAgICAiIiJBIGhpZ2hlciBsZXZlbCB3cmFwcGVyIHJlcHJlc2VudGluZyBob3cgYW4gYXBwbGljYXRpb24gaXMKKyAgICAgICAgc3VwcG9zZWQgdG8gdXNlIHNlbmRmaWxlKCkuCisgICAgICAgICIiIgorICAgICAgICB3aGlsZSAxOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGlmIHNlbGYuU1VQUE9SVF9IRUFERVJTX1RSQUlMRVJTOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gb3Muc2VuZGZpbGUoc29jaywgZmlsZSwgb2Zmc2V0LCBuYnl0ZXMsIGhlYWRlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFpbGVycykKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gb3Muc2VuZGZpbGUoc29jaywgZmlsZSwgb2Zmc2V0LCBuYnl0ZXMpCisgICAgICAgICAgICBleGNlcHQgT1NFcnJvciBhcyBlcnI6CisgICAgICAgICAgICAgICAgaWYgZXJyLmVycm5vID09IGVycm5vLkVDT05OUkVTRVQ6CisgICAgICAgICAgICAgICAgICAgICMgZGlzY29ubmVjdGVkCisgICAgICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICAgICAgZWxpZiBlcnIuZXJybm8gaW4gKGVycm5vLkVBR0FJTiwgZXJybm8uRUJVU1kpOgorICAgICAgICAgICAgICAgICAgICAjIHdlIGhhdmUgdG8gcmV0cnkgc2VuZCBkYXRhCisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UKKworICAgIGRlZiB0ZXN0X3NlbmRfd2hvbGVfZmlsZShzZWxmKToKKyAgICAgICAgIyBub3JtYWwgc2VuZAorICAgICAgICB0b3RhbF9zZW50ID0gMAorICAgICAgICBvZmZzZXQgPSAwCisgICAgICAgIG5ieXRlcyA9IDQwOTYKKyAgICAgICAgd2hpbGUgdG90YWxfc2VudCA8IGxlbihzZWxmLkRBVEEpOgorICAgICAgICAgICAgc2VudCA9IHNlbGYuc2VuZGZpbGVfd3JhcHBlcihzZWxmLnNvY2tubywgc2VsZi5maWxlbm8sIG9mZnNldCwgbmJ5dGVzKQorICAgICAgICAgICAgaWYgc2VudCA9PSAwOgorICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICBvZmZzZXQgKz0gc2VudAorICAgICAgICAgICAgdG90YWxfc2VudCArPSBzZW50CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VudCA8PSBuYnl0ZXMpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9mZnNldCwgdG90YWxfc2VudCkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRvdGFsX3NlbnQsIGxlbihzZWxmLkRBVEEpKQorICAgICAgICBzZWxmLmNsaWVudC5zaHV0ZG93bihzb2NrZXQuU0hVVF9SRFdSKQorICAgICAgICBzZWxmLmNsaWVudC5jbG9zZSgpCisgICAgICAgIHNlbGYuc2VydmVyLndhaXQoKQorICAgICAgICBkYXRhID0gc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5nZXRfZGF0YSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGRhdGEpLCBsZW4oc2VsZi5EQVRBKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkYXRhLCBzZWxmLkRBVEEpCisKKyAgICBkZWYgdGVzdF9zZW5kX2F0X2NlcnRhaW5fb2Zmc2V0KHNlbGYpOgorICAgICAgICAjIHN0YXJ0IHNlbmRpbmcgYSBmaWxlIGF0IGEgY2VydGFpbiBvZmZzZXQKKyAgICAgICAgdG90YWxfc2VudCA9IDAKKyAgICAgICAgb2Zmc2V0ID0gbGVuKHNlbGYuREFUQSkgLy8gMgorICAgICAgICBtdXN0X3NlbmQgPSBsZW4oc2VsZi5EQVRBKSAtIG9mZnNldAorICAgICAgICBuYnl0ZXMgPSA0MDk2CisgICAgICAgIHdoaWxlIHRvdGFsX3NlbnQgPCBtdXN0X3NlbmQ6CisgICAgICAgICAgICBzZW50ID0gc2VsZi5zZW5kZmlsZV93cmFwcGVyKHNlbGYuc29ja25vLCBzZWxmLmZpbGVubywgb2Zmc2V0LCBuYnl0ZXMpCisgICAgICAgICAgICBpZiBzZW50ID09IDA6CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgIG9mZnNldCArPSBzZW50CisgICAgICAgICAgICB0b3RhbF9zZW50ICs9IHNlbnQKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZW50IDw9IG5ieXRlcykKKworICAgICAgICBzZWxmLmNsaWVudC5zaHV0ZG93bihzb2NrZXQuU0hVVF9SRFdSKQorICAgICAgICBzZWxmLmNsaWVudC5jbG9zZSgpCisgICAgICAgIHNlbGYuc2VydmVyLndhaXQoKQorICAgICAgICBkYXRhID0gc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5nZXRfZGF0YSgpCisgICAgICAgIGV4cGVjdGVkID0gc2VsZi5EQVRBW2xlbihzZWxmLkRBVEEpIC8vIDI6XQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRvdGFsX3NlbnQsIGxlbihleHBlY3RlZCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGRhdGEpLCBsZW4oZXhwZWN0ZWQpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRhdGEsIGV4cGVjdGVkKQorCisgICAgZGVmIHRlc3Rfb2Zmc2V0X292ZXJmbG93KHNlbGYpOgorICAgICAgICAjIHNwZWNpZnkgYW4gb2Zmc2V0ID4gZmlsZSBzaXplCisgICAgICAgIG9mZnNldCA9IGxlbihzZWxmLkRBVEEpICsgNDA5NgorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZW50ID0gb3Muc2VuZGZpbGUoc2VsZi5zb2Nrbm8sIHNlbGYuZmlsZW5vLCBvZmZzZXQsIDQwOTYpCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICAjIFNvbGFyaXMgY2FuIHJhaXNlIEVJTlZBTCBpZiBvZmZzZXQgPj0gZmlsZSBsZW5ndGgsIGlnbm9yZS4KKyAgICAgICAgICAgIGlmIGUuZXJybm8gIT0gZXJybm8uRUlOVkFMOgorICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbnQsIDApCisgICAgICAgIHNlbGYuY2xpZW50LnNodXRkb3duKHNvY2tldC5TSFVUX1JEV1IpCisgICAgICAgIHNlbGYuY2xpZW50LmNsb3NlKCkKKyAgICAgICAgc2VsZi5zZXJ2ZXIud2FpdCgpCisgICAgICAgIGRhdGEgPSBzZWxmLnNlcnZlci5oYW5kbGVyX2luc3RhbmNlLmdldF9kYXRhKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkYXRhLCBiJycpCisKKyAgICBkZWYgdGVzdF9pbnZhbGlkX29mZnNldChzZWxmKToKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yKSBhcyBjbToKKyAgICAgICAgICAgIG9zLnNlbmRmaWxlKHNlbGYuc29ja25vLCBzZWxmLmZpbGVubywgLTEsIDQwOTYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmVycm5vLCBlcnJuby5FSU5WQUwpCisKKyAgICAjIC0tLSBoZWFkZXJzIC8gdHJhaWxlcnMgdGVzdHMKKworICAgIGlmIFNVUFBPUlRfSEVBREVSU19UUkFJTEVSUzoKKworICAgICAgICBkZWYgdGVzdF9oZWFkZXJzKHNlbGYpOgorICAgICAgICAgICAgdG90YWxfc2VudCA9IDAKKyAgICAgICAgICAgIHNlbnQgPSBvcy5zZW5kZmlsZShzZWxmLnNvY2tubywgc2VsZi5maWxlbm8sIDAsIDQwOTYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVycz1bYiJ4IiAqIDUxMl0pCisgICAgICAgICAgICB0b3RhbF9zZW50ICs9IHNlbnQKKyAgICAgICAgICAgIG9mZnNldCA9IDQwOTYKKyAgICAgICAgICAgIG5ieXRlcyA9IDQwOTYKKyAgICAgICAgICAgIHdoaWxlIDE6CisgICAgICAgICAgICAgICAgc2VudCA9IHNlbGYuc2VuZGZpbGVfd3JhcHBlcihzZWxmLnNvY2tubywgc2VsZi5maWxlbm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldCwgbmJ5dGVzKQorICAgICAgICAgICAgICAgIGlmIHNlbnQgPT0gMDoKKyAgICAgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgICAgICAgICB0b3RhbF9zZW50ICs9IHNlbnQKKyAgICAgICAgICAgICAgICBvZmZzZXQgKz0gc2VudAorCisgICAgICAgICAgICBleHBlY3RlZF9kYXRhID0gYiJ4IiAqIDUxMiArIHNlbGYuREFUQQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0b3RhbF9zZW50LCBsZW4oZXhwZWN0ZWRfZGF0YSkpCisgICAgICAgICAgICBzZWxmLmNsaWVudC5jbG9zZSgpCisgICAgICAgICAgICBzZWxmLnNlcnZlci53YWl0KCkKKyAgICAgICAgICAgIGRhdGEgPSBzZWxmLnNlcnZlci5oYW5kbGVyX2luc3RhbmNlLmdldF9kYXRhKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFzaChkYXRhKSwgaGFzaChleHBlY3RlZF9kYXRhKSkKKworICAgICAgICBkZWYgdGVzdF90cmFpbGVycyhzZWxmKToKKyAgICAgICAgICAgIFRFU1RGTjIgPSBzdXBwb3J0LlRFU1RGTiArICIyIgorICAgICAgICAgICAgd2l0aCBvcGVuKFRFU1RGTjIsICd3YicpIGFzIGY6CisgICAgICAgICAgICAgICAgZi53cml0ZShiImFiY2RlIikKKyAgICAgICAgICAgIHdpdGggb3BlbihURVNURk4yLCAncmInKWFzIGY6CisgICAgICAgICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG9zLnJlbW92ZSwgVEVTVEZOMikKKyAgICAgICAgICAgICAgICBvcy5zZW5kZmlsZShzZWxmLnNvY2tubywgZi5maWxlbm8oKSwgMCwgNDA5NiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFpbGVycz1bYiIxMjM0NSJdKQorICAgICAgICAgICAgICAgIHNlbGYuY2xpZW50LmNsb3NlKCkKKyAgICAgICAgICAgICAgICBzZWxmLnNlcnZlci53YWl0KCkKKyAgICAgICAgICAgICAgICBkYXRhID0gc2VsZi5zZXJ2ZXIuaGFuZGxlcl9pbnN0YW5jZS5nZXRfZGF0YSgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkYXRhLCBiImFiY2RlMTIzNDUiKQorCisgICAgICAgIGlmIGhhc2F0dHIob3MsICJTRl9OT0RJU0tJTyIpOgorICAgICAgICAgICAgZGVmIHRlc3RfZmxhZ3Moc2VsZik6CisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBvcy5zZW5kZmlsZShzZWxmLnNvY2tubywgc2VsZi5maWxlbm8sIDAsIDQwOTYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYWdzPW9zLlNGX05PRElTS0lPKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGVycjoKKyAgICAgICAgICAgICAgICAgICAgaWYgZXJyLmVycm5vIG5vdCBpbiAoZXJybm8uRUJVU1ksIGVycm5vLkVBR0FJTik6CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZQorCisKK2RlZiBzdXBwb3J0c19leHRlbmRlZF9hdHRyaWJ1dGVzKCk6CisgICAgaWYgbm90IGhhc2F0dHIob3MsICJzZXR4YXR0ciIpOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICB0cnk6CisgICAgICAgIHdpdGggb3BlbihzdXBwb3J0LlRFU1RGTiwgIndiIikgYXMgZnA6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgb3MuZnNldHhhdHRyKGZwLmZpbGVubygpLCBiInVzZXIudGVzdCIsIGIiIikKKyAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICAgICAgaWYgZS5lcnJubyAhPSBlcnJuby5FTk9UU1VQOgorICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQorICAgIGZpbmFsbHk6CisgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOKQorICAgICMgS2VybmVscyA8IDIuNi4zOSBkb24ndCByZXNwZWN0IHNldHhhdHRyIGZsYWdzLgorICAgIGtlcm5lbF92ZXJzaW9uID0gcGxhdGZvcm0ucmVsZWFzZSgpCisgICAgbSA9IHJlLm1hdGNoKCIyLjYuKFxkezEsMn0pIiwga2VybmVsX3ZlcnNpb24pCisgICAgcmV0dXJuIG0gaXMgTm9uZSBvciBpbnQobS5ncm91cCgxKSkgPj0gMzkKKworCitAdW5pdHRlc3Quc2tpcFVubGVzcyhzdXBwb3J0c19leHRlbmRlZF9hdHRyaWJ1dGVzKCksCisgICAgICAgICAgICAgICAgICAgICAibm8gbm9uLWJyb2tlbiBleHRlbmRlZCBhdHRyaWJ1dGUgc3VwcG9ydCIpCitjbGFzcyBFeHRlbmRlZEF0dHJpYnV0ZVRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc3VwcG9ydC51bmxpbmsoc3VwcG9ydC5URVNURk4pCisKKyAgICBkZWYgX2NoZWNrX3hhdHRyc19zdHIoc2VsZiwgcywgZ2V0eGF0dHIsIHNldHhhdHRyLCByZW1vdmV4YXR0ciwgbGlzdHhhdHRyKToKKyAgICAgICAgZm4gPSBzdXBwb3J0LlRFU1RGTgorICAgICAgICBvcGVuKGZuLCAid2IiKS5jbG9zZSgpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvcikgYXMgY206CisgICAgICAgICAgICBnZXR4YXR0cihmbiwgcygidXNlci50ZXN0IikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmVycm5vLCBlcnJuby5FTk9EQVRBKQorICAgICAgICBpbml0X3hhdHRyID0gbGlzdHhhdHRyKGZuKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoaW5pdF94YXR0ciwgbGlzdCkKKyAgICAgICAgc2V0eGF0dHIoZm4sIHMoInVzZXIudGVzdCIpLCBiIiIpCisgICAgICAgIHhhdHRyID0gc2V0KGluaXRfeGF0dHIpCisgICAgICAgIHhhdHRyLmFkZCgidXNlci50ZXN0IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZXQobGlzdHhhdHRyKGZuKSksIHhhdHRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldHhhdHRyKGZuLCBiInVzZXIudGVzdCIpLCBiIiIpCisgICAgICAgIHNldHhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QiKSwgYiJoZWxsbyIsIG9zLlhBVFRSX1JFUExBQ0UpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0eGF0dHIoZm4sIGIidXNlci50ZXN0IiksIGIiaGVsbG8iKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgc2V0eGF0dHIoZm4sIHMoInVzZXIudGVzdCIpLCBiImJ5ZSIsIG9zLlhBVFRSX0NSRUFURSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbS5leGNlcHRpb24uZXJybm8sIGVycm5vLkVFWElTVCkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yKSBhcyBjbToKKyAgICAgICAgICAgIHNldHhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QyIiksIGIiYnllIiwgb3MuWEFUVFJfUkVQTEFDRSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbS5leGNlcHRpb24uZXJybm8sIGVycm5vLkVOT0RBVEEpCisgICAgICAgIHNldHhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QyIiksIGIiZm9vIiwgb3MuWEFUVFJfQ1JFQVRFKQorICAgICAgICB4YXR0ci5hZGQoInVzZXIudGVzdDIiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNldChsaXN0eGF0dHIoZm4pKSwgeGF0dHIpCisgICAgICAgIHJlbW92ZXhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QiKSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yKSBhcyBjbToKKyAgICAgICAgICAgIGdldHhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbS5leGNlcHRpb24uZXJybm8sIGVycm5vLkVOT0RBVEEpCisgICAgICAgIHhhdHRyLnJlbW92ZSgidXNlci50ZXN0IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZXQobGlzdHhhdHRyKGZuKSksIHhhdHRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldHhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QyIikpLCBiImZvbyIpCisgICAgICAgIHNldHhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QiKSwgYiJhIioxMDI0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldHhhdHRyKGZuLCBzKCJ1c2VyLnRlc3QiKSksIGIiYSIqMTAyNCkKKyAgICAgICAgcmVtb3ZleGF0dHIoZm4sIHMoInVzZXIudGVzdCIpKQorICAgICAgICBtYW55ID0gc29ydGVkKCJ1c2VyLnRlc3R7fSIuZm9ybWF0KGkpIGZvciBpIGluIHJhbmdlKDEwMCkpCisgICAgICAgIGZvciB0aGluZyBpbiBtYW55OgorICAgICAgICAgICAgc2V0eGF0dHIoZm4sIHRoaW5nLCBiIngiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNldChsaXN0eGF0dHIoZm4pKSwgc2V0KGluaXRfeGF0dHIpIHwgc2V0KG1hbnkpKQorCisgICAgZGVmIF9jaGVja194YXR0cnMoc2VsZiwgKmFyZ3MpOgorICAgICAgICBkZWYgbWFrZV9ieXRlcyhzKToKKyAgICAgICAgICAgIHJldHVybiBieXRlcyhzLCAiYXNjaWkiKQorICAgICAgICBzZWxmLl9jaGVja194YXR0cnNfc3RyKHN0ciwgKmFyZ3MpCisgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBzZWxmLl9jaGVja194YXR0cnNfc3RyKG1ha2VfYnl0ZXMsICphcmdzKQorCisgICAgZGVmIHRlc3Rfc2ltcGxlKHNlbGYpOgorICAgICAgICBzZWxmLl9jaGVja194YXR0cnMob3MuZ2V0eGF0dHIsIG9zLnNldHhhdHRyLCBvcy5yZW1vdmV4YXR0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmxpc3R4YXR0cikKKworICAgIGRlZiB0ZXN0X2xwYXRoKHNlbGYpOgorICAgICAgICBzZWxmLl9jaGVja194YXR0cnMob3MubGdldHhhdHRyLCBvcy5sc2V0eGF0dHIsIG9zLmxyZW1vdmV4YXR0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmxsaXN0eGF0dHIpCisKKyAgICBkZWYgdGVzdF9mZHMoc2VsZik6CisgICAgICAgIGRlZiBnZXR4YXR0cihwYXRoLCAqYXJncyk6CisgICAgICAgICAgICB3aXRoIG9wZW4ocGF0aCwgInJiIikgYXMgZnA6CisgICAgICAgICAgICAgICAgcmV0dXJuIG9zLmZnZXR4YXR0cihmcC5maWxlbm8oKSwgKmFyZ3MpCisgICAgICAgIGRlZiBzZXR4YXR0cihwYXRoLCAqYXJncyk6CisgICAgICAgICAgICB3aXRoIG9wZW4ocGF0aCwgIndiIikgYXMgZnA6CisgICAgICAgICAgICAgICAgb3MuZnNldHhhdHRyKGZwLmZpbGVubygpLCAqYXJncykKKyAgICAgICAgZGVmIHJlbW92ZXhhdHRyKHBhdGgsICphcmdzKToKKyAgICAgICAgICAgIHdpdGggb3BlbihwYXRoLCAid2IiKSBhcyBmcDoKKyAgICAgICAgICAgICAgICBvcy5mcmVtb3ZleGF0dHIoZnAuZmlsZW5vKCksICphcmdzKQorICAgICAgICBkZWYgbGlzdHhhdHRyKHBhdGgsICphcmdzKToKKyAgICAgICAgICAgIHdpdGggb3BlbihwYXRoLCAicmIiKSBhcyBmcDoKKyAgICAgICAgICAgICAgICByZXR1cm4gb3MuZmxpc3R4YXR0cihmcC5maWxlbm8oKSwgKmFyZ3MpCisgICAgICAgIHNlbGYuX2NoZWNrX3hhdHRycyhnZXR4YXR0ciwgc2V0eGF0dHIsIHJlbW92ZXhhdHRyLCBsaXN0eGF0dHIpCisKKworQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICJ3aW4zMiIsICJXaW4zMiBzcGVjaWZpYyB0ZXN0cyIpCitjbGFzcyBXaW4zMkRlcHJlY2F0ZWRCeXRlc0FQSSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHRlc3RfZGVwcmVjYXRlZChzZWxmKToKKyAgICAgICAgaW1wb3J0IG50CisgICAgICAgIGZpbGVuYW1lID0gb3MuZnNlbmNvZGUoc3VwcG9ydC5URVNURk4pCisgICAgICAgIHdpdGggd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MoKToKKyAgICAgICAgICAgIHdhcm5pbmdzLnNpbXBsZWZpbHRlcigiZXJyb3IiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICBmb3IgZnVuYywgKmFyZ3MgaW4gKAorICAgICAgICAgICAgICAgIChudC5fZ2V0ZnVsbHBhdGhuYW1lLCBmaWxlbmFtZSksCisgICAgICAgICAgICAgICAgKG50Ll9pc2RpciwgZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgIChvcy5hY2Nlc3MsIGZpbGVuYW1lLCBvcy5SX09LKSwKKyAgICAgICAgICAgICAgICAob3MuY2hkaXIsIGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAob3MuY2htb2QsIGZpbGVuYW1lLCAwbzc3NyksCisgICAgICAgICAgICAgICAgKG9zLmdldGN3ZGIsKSwKKyAgICAgICAgICAgICAgICAob3MubGluaywgZmlsZW5hbWUsIGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAob3MubGlzdGRpciwgZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgIChvcy5sc3RhdCwgZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgIChvcy5ta2RpciwgZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgIChvcy5vcGVuLCBmaWxlbmFtZSwgb3MuT19SRE9OTFkpLAorICAgICAgICAgICAgICAgIChvcy5yZW5hbWUsIGZpbGVuYW1lLCBmaWxlbmFtZSksCisgICAgICAgICAgICAgICAgKG9zLnJtZGlyLCBmaWxlbmFtZSksCisgICAgICAgICAgICAgICAgKG9zLnN0YXJ0ZmlsZSwgZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgIChvcy5zdGF0LCBmaWxlbmFtZSksCisgICAgICAgICAgICAgICAgKG9zLnVubGluaywgZmlsZW5hbWUpLAorICAgICAgICAgICAgICAgIChvcy51dGltZSwgZmlsZW5hbWUpLAorICAgICAgICAgICAgKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhEZXByZWNhdGlvbldhcm5pbmcsIGZ1bmMsICphcmdzKQorCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIGRlZiB0ZXN0X3N5bWxpbmsoc2VsZik6CisgICAgICAgIGZpbGVuYW1lID0gb3MuZnNlbmNvZGUoc3VwcG9ydC5URVNURk4pCisgICAgICAgIHdpdGggd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MoKToKKyAgICAgICAgICAgIHdhcm5pbmdzLnNpbXBsZWZpbHRlcigiZXJyb3IiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhEZXByZWNhdGlvbldhcm5pbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5zeW1saW5rLCBmaWxlbmFtZSwgZmlsZW5hbWUpCisKKworQHN1cHBvcnQucmVhcF90aHJlYWRzCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoCiAgICAgICAgIEZpbGVUZXN0cywKQEAgLTEyNTksNiArMTcxNCwxMCBAQAogICAgICAgICBQaWRUZXN0cywKICAgICAgICAgTG9naW5UZXN0cywKICAgICAgICAgTGlua1Rlc3RzLAorICAgICAgICBUZXN0U2VuZGZpbGUsCisgICAgICAgIFByb2dyYW1Qcmlvcml0eVRlc3RzLAorICAgICAgICBFeHRlbmRlZEF0dHJpYnV0ZVRlc3RzLAorICAgICAgICBXaW4zMkRlcHJlY2F0ZWRCeXRlc0FQSSwKICAgICApCiAKIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X29zc2F1ZGlvZGV2LnB5IGIvTGliL3Rlc3QvdGVzdF9vc3NhdWRpb2Rldi5weQppbmRleCA5Y2I4OWQ2Li4zOTA4YTA1IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X29zc2F1ZGlvZGV2LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfb3NzYXVkaW9kZXYucHkKQEAgLTE3MCw2ICsxNzAsMjIgQEAKICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGRzcC5jbG9zZWQpCiAKKyAgICBkZWYgdGVzdF9vbl9jbG9zZWQoc2VsZik6CisgICAgICAgIGRzcCA9IG9zc2F1ZGlvZGV2Lm9wZW4oJ3cnKQorICAgICAgICBkc3AuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBkc3AuZmlsZW5vKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBkc3AucmVhZCwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZHNwLndyaXRlLCBiJ3gnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBkc3Aud3JpdGVhbGwsIGIneCcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGRzcC5idWZzaXplKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBkc3Aub2J1ZmNvdW50KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBkc3Aub2J1ZmNvdW50KQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBkc3Aub2J1ZmZyZWUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGRzcC5nZXRwdHIpCisKKyAgICAgICAgbWl4ZXIgPSBvc3NhdWRpb2Rldi5vcGVubWl4ZXIoKQorICAgICAgICBtaXhlci5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG1peGVyLmZpbGVubykKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHRyeToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfb3N4X2Vudi5weSBiL0xpYi90ZXN0L3Rlc3Rfb3N4X2Vudi5weQppbmRleCA4YjNkZjM3Li4yNGVjMmI0IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X29zeF9lbnYucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9vc3hfZW52LnB5CkBAIC01LDYgKzUsNyBAQAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IEVudmlyb25tZW50VmFyR3VhcmQsIHJ1bl91bml0dGVzdAogaW1wb3J0IHN1YnByb2Nlc3MKIGltcG9ydCBzeXMKK2ltcG9ydCBzeXNjb25maWcKIGltcG9ydCB1bml0dGVzdAogCiBjbGFzcyBPU1hFbnZpcm9ubWVudFZhcmlhYmxlVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtMjcsOCArMjgsNiBAQAogICAgICAgICBzZWxmLl9jaGVja19zeXMoJ1BZVEhPTkVYRUNVVEFCTEUnLCAnPT0nLCAnc3lzLmV4ZWN1dGFibGUnKQogCiBkZWYgdGVzdF9tYWluKCk6Ci0gICAgZnJvbSBkaXN0dXRpbHMgaW1wb3J0IHN5c2NvbmZpZwotCiAgICAgaWYgc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nIGFuZCBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ1dJVEhfTkVYVF9GUkFNRVdPUksnKToKICAgICAgICAgcnVuX3VuaXR0ZXN0KE9TWEVudmlyb25tZW50VmFyaWFibGVUZXN0Q2FzZSkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wYWNrYWdpbmcucHkgYi9MaWIvdGVzdC90ZXN0X3BhY2thZ2luZy5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNTBkNjYxCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvdGVzdF9wYWNrYWdpbmcucHkKQEAgLTAsMCArMSw1IEBACitpbXBvcnQgc3lzCitmcm9tIHBhY2thZ2luZy50ZXN0cy5fX21haW5fXyBpbXBvcnQgdGVzdF9tYWluCisKK2lmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcGFyc2VyLnB5IGIvTGliL3Rlc3QvdGVzdF9wYXJzZXIucHkKaW5kZXggMDIwYWNkNS4uYjZmODFmYiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9wYXJzZXIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9wYXJzZXIucHkKQEAgLTUwLDYgKzUwLDEwIEBACiAgICAgICAgIHNlbGYuY2hlY2tfc3VpdGUoImRlZiBmKCk6ICh5aWVsZCAxKSoyIikKICAgICAgICAgc2VsZi5jaGVja19zdWl0ZSgiZGVmIGYoKTogcmV0dXJuOyB5aWVsZCAxIikKICAgICAgICAgc2VsZi5jaGVja19zdWl0ZSgiZGVmIGYoKTogeWllbGQgMTsgcmV0dXJuIikKKyAgICAgICAgc2VsZi5jaGVja19zdWl0ZSgiZGVmIGYoKTogeWllbGQgZnJvbSAxIikKKyAgICAgICAgc2VsZi5jaGVja19zdWl0ZSgiZGVmIGYoKTogeCA9IHlpZWxkIGZyb20gMSIpCisgICAgICAgIHNlbGYuY2hlY2tfc3VpdGUoImRlZiBmKCk6IGYoKHlpZWxkIGZyb20gMSkpIikKKyAgICAgICAgc2VsZi5jaGVja19zdWl0ZSgiZGVmIGYoKTogeWllbGQgMTsgcmV0dXJuIDEiKQogICAgICAgICBzZWxmLmNoZWNrX3N1aXRlKCJkZWYgZigpOlxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICIgICAgZm9yIHggaW4gcmFuZ2UoMzApOlxuIgogICAgICAgICAgICAgICAgICAgICAgICAgICIgICAgICAgIHlpZWxkIHhcbiIpCkBAIC02MTQsNiArNjE4LDEyIEBACiAKICAgICAjIFhYWCB0ZXN0cyBmb3IgcGlja2xpbmcgYW5kIHVucGlja2xpbmcgb2YgU1Qgb2JqZWN0cyBzaG91bGQgZ28gaGVyZQogCitjbGFzcyBPdGhlclBhcnNlckNhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfdHdvX2FyZ3NfdG9fZXhwcihzZWxmKToKKyAgICAgICAgIyBTZWUgYnVnICMxMjI2NAorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBwYXJzZXIuZXhwcigiYSIsICJiIikKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KApAQCAtNjIyLDYgKzYzMiw3IEBACiAgICAgICAgIENvbXBpbGVUZXN0Q2FzZSwKICAgICAgICAgUGFyc2VyU3RhY2tMaW1pdFRlc3RDYXNlLAogICAgICAgICBTVE9iamVjdFRlc3RDYXNlLAorICAgICAgICBPdGhlclBhcnNlckNhc2UsCiAgICAgKQogCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcGRiLnB5IGIvTGliL3Rlc3QvdGVzdF9wZGIucHkKaW5kZXggZDg2MWRmNS4uYzE5N2FmZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9wZGIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9wZGIucHkKQEAgLTIwLDkgKzIwLDEyIEBACiAgICAgZGVmIF9fZW50ZXJfXyhzZWxmKToKICAgICAgICAgc2VsZi5yZWFsX3N0ZGluID0gc3lzLnN0ZGluCiAgICAgICAgIHN5cy5zdGRpbiA9IF9GYWtlSW5wdXQoc2VsZi5pbnB1dCkKKyAgICAgICAgc2VsZi5vcmlnX3RyYWNlID0gc3lzLmdldHRyYWNlKCkgaWYgaGFzYXR0cihzeXMsICdnZXR0cmFjZScpIGVsc2UgTm9uZQogCiAgICAgZGVmIF9fZXhpdF9fKHNlbGYsICpleGMpOgogICAgICAgICBzeXMuc3RkaW4gPSBzZWxmLnJlYWxfc3RkaW4KKyAgICAgICAgaWYgc2VsZi5vcmlnX3RyYWNlOgorICAgICAgICAgICAgc3lzLnNldHRyYWNlKHNlbGYub3JpZ190cmFjZSkKIAogCiBkZWYgdGVzdF9wZGJfZGlzcGxheWhvb2soKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcGVlcGhvbGVyLnB5IGIvTGliL3Rlc3QvdGVzdF9wZWVwaG9sZXIucHkKaW5kZXggNTM3MTlkMy4uMWU3ODJjZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9wZWVwaG9sZXIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9wZWVwaG9sZXIucHkKQEAgLTMsMTMgKzMsMTYgQEAKIGltcG9ydCBzeXMKIGZyb20gaW8gaW1wb3J0IFN0cmluZ0lPCiBpbXBvcnQgdW5pdHRlc3QKK2Zyb20gbWF0aCBpbXBvcnQgY29weXNpZ24KIAogZGVmIGRpc2Fzc2VtYmxlKGZ1bmMpOgogICAgIGYgPSBTdHJpbmdJTygpCiAgICAgdG1wID0gc3lzLnN0ZG91dAogICAgIHN5cy5zdGRvdXQgPSBmCi0gICAgZGlzLmRpcyhmdW5jKQotICAgIHN5cy5zdGRvdXQgPSB0bXAKKyAgICB0cnk6CisgICAgICAgIGRpcy5kaXMoZnVuYykKKyAgICBmaW5hbGx5OgorICAgICAgICBzeXMuc3Rkb3V0ID0gdG1wCiAgICAgcmVzdWx0ID0gZi5nZXR2YWx1ZSgpCiAgICAgZi5jbG9zZSgpCiAgICAgcmV0dXJuIHJlc3VsdApAQCAtMTcsNiArMjAsNyBAQAogZGVmIGRpc19zaW5nbGUobGluZSk6CiAgICAgcmV0dXJuIGRpc2Fzc2VtYmxlKGNvbXBpbGUobGluZSwgJycsICdzaW5nbGUnKSkKIAorCiBjbGFzcyBUZXN0VHJhbmZvcm1zKHVuaXR0ZXN0LlRlc3RDYXNlKToKIAogICAgIGRlZiB0ZXN0X3Vub3Qoc2VsZik6CkBAIC05OSw2ICsxMDMsMTIgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oZWxlbSwgYXNtKQogICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RJbignQlVJTERfVFVQTEUnLCBhc20pCiAKKyAgICAgICAgIyBMb25nIHR1cGxlcyBzaG91bGQgYmUgZm9sZGVkIHRvby4KKyAgICAgICAgYXNtID0gZGlzX3NpbmdsZShyZXByKHR1cGxlKHJhbmdlKDEwMDAwKSkpKQorICAgICAgICAjIE9uZSBMT0FEX0NPTlNUIGZvciB0aGUgdHVwbGUsIG9uZSBmb3IgdGhlIE5vbmUgcmV0dXJuIHZhbHVlCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXNtLmNvdW50KCdMT0FEX0NPTlNUJyksIDIpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ0JVSUxEX1RVUExFJywgYXNtKQorCiAgICAgICAgICMgQnVnIDEwNTM4MTk6ICBUdXBsZSBvZiBjb25zdGFudHMgbWlzaWRlbnRpZmllZCB3aGVuIHByZXNlbnRlZCB3aXRoOgogICAgICAgICAjIC4gLiAuIG9wY29kZV93aXRoX2FyZyAxMDAgICB1bmFyeV9vcGNvZGUgICBCVUlMRF9UVVBMRSAxICAuIC4gLgogICAgICAgICAjIFRoZSBmb2xsb3dpbmcgd291bGQgc2VnZmF1bHQgdXBvbiBjb21waWxhdGlvbgpAQCAtMjA4LDE0ICsyMTgsMTMgQEAKICAgICAgICAgIyBvdXQgb2YgcmFuZ2UKICAgICAgICAgYXNtID0gZGlzX3NpbmdsZSgnImZ1dSJbMTBdJykKICAgICAgICAgc2VsZi5hc3NlcnRJbignQklOQVJZX1NVQlNDUicsIGFzbSkKLSAgICAgICAgIyBub24tQk1QIGNoYXIgKHNlZSAjNTA1NykKLSAgICAgICAgYXNtID0gZGlzX3NpbmdsZSgnIlxVMDAwMTIzNDUiWzBdJykKLSAgICAgICAgc2VsZi5hc3NlcnRJbignQklOQVJZX1NVQlNDUicsIGFzbSkKLQogCiAgICAgZGVmIHRlc3RfZm9sZGluZ19vZl91bmFyeW9wc19vbl9jb25zdGFudHMoc2VsZik6CiAgICAgICAgIGZvciBsaW5lLCBlbGVtIGluICgKICAgICAgICAgICAgICgnLTAuNScsICcoLTAuNSknKSwgICAgICAgICAgICAgICAgICAgICAjIHVuYXJ5IG5lZ2F0aXZlCisgICAgICAgICAgICAoJy0wLjAnLCAnKC0wLjApJyksICAgICAgICAgICAgICAgICAgICAgIyAtMC4wCisgICAgICAgICAgICAoJy0oMS4wLTEuMCknLCcoLTAuMCknKSwgICAgICAgICAgICAgICAgIyAtMC4wIGFmdGVyIGZvbGRpbmcKKyAgICAgICAgICAgICgnLTAnLCAnKDApJyksICAgICAgICAgICAgICAgICAgICAgICAgICAjIC0wCiAgICAgICAgICAgICAoJ34tMicsICcoMSknKSwgICAgICAgICAgICAgICAgICAgICAgICAgIyB1bmFyeSBpbnZlcnQKICAgICAgICAgICAgICgnKzEnLCAnKDEpJyksICAgICAgICAgICAgICAgICAgICAgICAgICAjIHVuYXJ5IHBvc2l0aXZlCiAgICAgICAgICk6CkBAIC0yMjMsNiArMjMyLDEzIEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEluKGVsZW0sIGFzbSwgYXNtKQogICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RJbignVU5BUllfJywgYXNtKQogCisgICAgICAgICMgQ2hlY2sgdGhhdCAtMC4wIHdvcmtzIGFmdGVyIG1hcnNoYWxpbmcKKyAgICAgICAgZGVmIG5lZ3plcm8oKToKKyAgICAgICAgICAgIHJldHVybiAtKDEuMC0xLjApCisKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbignVU5BUllfJywgZGlzYXNzZW1ibGUobmVnemVybykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjb3B5c2lnbigxLjAsIG5lZ3plcm8oKSkgPCAwKQorCiAgICAgICAgICMgVmVyaWZ5IHRoYXQgdW5mb2xkYWJsZXMgYXJlIHNraXBwZWQKICAgICAgICAgZm9yIGxpbmUsIGVsZW0gaW4gKAogICAgICAgICAgICAgKCctImFiYyInLCAiKCdhYmMnKSIpLCAgICAgICAgICAgICAgICAgICMgdW5hcnkgbmVnYXRpdmUKQEAgLTI4NSw2ICszMDEsMjUgQEAKICAgICAgICAgYXNtID0gZGlzYXNzZW1ibGUoZikKICAgICAgICAgc2VsZi5hc3NlcnROb3RJbignQklOQVJZX0FERCcsIGFzbSkKIAorICAgIGRlZiB0ZXN0X2NvbnN0YW50X2ZvbGRpbmcoc2VsZik6CisgICAgICAgICMgSXNzdWUgIzExMjQ0OiBhZ2dyZXNzaXZlIGNvbnN0YW50IGZvbGRpbmcuCisgICAgICAgIGV4cHJzID0gWworICAgICAgICAgICAgIjMgKiAtNSIsCisgICAgICAgICAgICAiLTMgKiA1IiwKKyAgICAgICAgICAgICIyICogKDMgKiA0KSIsCisgICAgICAgICAgICAiKDIgKiAzKSAqIDQiLAorICAgICAgICAgICAgIigtMSwgMiwgMykiLAorICAgICAgICAgICAgIigxLCAtMiwgMykiLAorICAgICAgICAgICAgIigxLCAyLCAtMykiLAorICAgICAgICAgICAgIigxLCAyLCAtMykgKiA2IiwKKyAgICAgICAgICAgICJsYW1iZGEgeDogeCBpbiB7KDMgKiAtNSkgKyAoLTEgLSA2KSwgKDEsIC0yLCAzKSAqIDIsIE5vbmV9IiwKKyAgICAgICAgXQorICAgICAgICBmb3IgZSBpbiBleHByczoKKyAgICAgICAgICAgIGFzbSA9IGRpc19zaW5nbGUoZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ1VOQVJZXycsIGFzbSwgZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90SW4oJ0JJTkFSWV8nLCBhc20sIGUpCisgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEluKCdCVUlMRF8nLCBhc20sIGUpCisKIGNsYXNzIFRlc3RCdWdsZXRzKHVuaXR0ZXN0LlRlc3RDYXNlKToKIAogICAgIGRlZiB0ZXN0X2J1Z18xMTUxMChzZWxmKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcGVwMjc3LnB5IGIvTGliL3Rlc3QvdGVzdF9wZXAyNzcucHkKaW5kZXggNmQ4OTFlNS4uNGIxNmNiYiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9wZXAyNzcucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9wZXAyNzcucHkKQEAgLTEsNiArMSw5IEBACiAjIFRlc3QgdGhlIFVuaWNvZGUgdmVyc2lvbnMgb2Ygbm9ybWFsIGZpbGUgZnVuY3Rpb25zCiAjIG9wZW4sIG9zLm9wZW4sIG9zLnN0YXQuIG9zLmxpc3RkaXIsIG9zLnJlbmFtZSwgb3MucmVtb3ZlLCBvcy5ta2Rpciwgb3MuY2hkaXIsIG9zLnJtZGlyCi1pbXBvcnQgc3lzLCBvcywgdW5pdHRlc3QKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgd2FybmluZ3MKIGZyb20gdW5pY29kZWRhdGEgaW1wb3J0IG5vcm1hbGl6ZQogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiAKQEAgLTM4LDggKzQxLDggQEAKICAgICAgICAgJzE3X1x1MjAwMVx1MjAwMVx1MjAwMUEnLAogICAgICAgICAnMThfXHUyMDAzXHUyMDAzXHUyMDAzQScsICAjID09IE5GQygnXHUyMDAxXHUyMDAxXHUyMDAxQScpCiAgICAgICAgICcxOV9cdTAwMjBcdTAwMjBcdTAwMjBBJywgICMgJ1x1MDAyMCcgPT0gJyAnID09IE5GS0MoJ1x1MjAwMCcpID09Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgIE5GS0MoJ1x1MjAwMScpID09IE5GS0MoJ1x1MjAwMycpCi1dKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjICBORktDKCdcdTIwMDEnKSA9PSBORktDKCdcdTIwMDMnKQorICAgIF0pCiAKIAogIyBJcyBpdCBVbmljb2RlLWZyaWVuZGx5PwpAQCAtNzEsNyArNzQsNyBAQAogICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgb3MubWtkaXIoc3VwcG9ydC5URVNURk4pCi0gICAgICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICBleGNlcHQgRmlsZUV4aXN0c0Vycm9yOgogICAgICAgICAgICAgcGFzcwogICAgICAgICBmaWxlcyA9IHNldCgpCiAgICAgICAgIGZvciBuYW1lIGluIHNlbGYuZmlsZXM6CkBAIC05MCwxNSArOTMsMTcgQEAKICAgICAgICAgICAgIHJldHVybiBub3JtYWxpemUoc2VsZi5ub3JtYWxfZm9ybSwgcykKICAgICAgICAgcmV0dXJuIHMKIAotICAgIGRlZiBfYXBwbHlfZmFpbHVyZShzZWxmLCBmbiwgZmlsZW5hbWUsIGV4cGVjdGVkX2V4Y2VwdGlvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgY2hlY2tfZm5faW5fZXhjZXB0aW9uID0gVHJ1ZSk6CisgICAgZGVmIF9hcHBseV9mYWlsdXJlKHNlbGYsIGZuLCBmaWxlbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfZXhjZXB0aW9uPUZpbGVOb3RGb3VuZEVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICBjaGVja19maWxlbmFtZT1UcnVlKToKICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhleHBlY3RlZF9leGNlcHRpb24pIGFzIGM6CiAgICAgICAgICAgICBmbihmaWxlbmFtZSkKICAgICAgICAgZXhjX2ZpbGVuYW1lID0gYy5leGNlcHRpb24uZmlsZW5hbWUKLSAgICAgICAgIyB0aGUgImZpbGVuYW1lIiBleGNlcHRpb24gYXR0cmlidXRlIG1heSBiZSBlbmNvZGVkCi0gICAgICAgIGlmIGlzaW5zdGFuY2UoZXhjX2ZpbGVuYW1lLCBieXRlcyk6Ci0gICAgICAgICAgICBmaWxlbmFtZSA9IGZpbGVuYW1lLmVuY29kZShzeXMuZ2V0ZmlsZXN5c3RlbWVuY29kaW5nKCkpCi0gICAgICAgIGlmIGNoZWNrX2ZuX2luX2V4Y2VwdGlvbjoKKyAgICAgICAgIyBsaXN0ZGlyIG1heSBhcHBlbmQgYSB3aWxkY2FyZCB0byB0aGUgZmlsZW5hbWUKKyAgICAgICAgaWYgZm4gaXMgb3MubGlzdGRpciBhbmQgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CisgICAgICAgICAgICBleGNfZmlsZW5hbWUsIF8sIHdpbGRjYXJkID0gZXhjX2ZpbGVuYW1lLnJwYXJ0aXRpb24ob3Muc2VwKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3aWxkY2FyZCwgJyouKicpCisgICAgICAgIGlmIGNoZWNrX2ZpbGVuYW1lOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleGNfZmlsZW5hbWUsIGZpbGVuYW1lLCAiRnVuY3Rpb24gJyVzKCVhKSBmYWlsZWQgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid2l0aCBiYWQgZmlsZW5hbWUgaW4gdGhlIGV4Y2VwdGlvbjogJWEiICUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZuLl9fbmFtZV9fLCBmaWxlbmFtZSwgZXhjX2ZpbGVuYW1lKSkKQEAgLTEwNywxMyArMTEyLDE4IEBACiAgICAgICAgICMgUGFzcyBub24tZXhpc3RpbmcgVW5pY29kZSBmaWxlbmFtZXMgYWxsIG92ZXIgdGhlIHBsYWNlLgogICAgICAgICBmb3IgbmFtZSBpbiBzZWxmLmZpbGVzOgogICAgICAgICAgICAgbmFtZSA9ICJub3RfIiArIG5hbWUKLSAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3BlbiwgbmFtZSwgSU9FcnJvcikKLSAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3Muc3RhdCwgbmFtZSwgT1NFcnJvcikKLSAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3MuY2hkaXIsIG5hbWUsIE9TRXJyb3IpCi0gICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLnJtZGlyLCBuYW1lLCBPU0Vycm9yKQotICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5yZW1vdmUsIG5hbWUsIE9TRXJyb3IpCi0gICAgICAgICAgICAjIGxpc3RkaXIgbWF5IGFwcGVuZCBhIHdpbGRjYXJkIHRvIHRoZSBmaWxlbmFtZSwgc28gZG9udCBjaGVjawotICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5saXN0ZGlyLCBuYW1lLCBPU0Vycm9yLCBGYWxzZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3BlbiwgbmFtZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3Muc3RhdCwgbmFtZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3MuY2hkaXIsIG5hbWUpCisgICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLnJtZGlyLCBuYW1lKQorICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5yZW1vdmUsIG5hbWUpCisgICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLmxpc3RkaXIsIG5hbWUpCisKKyAgICBpZiBzeXMucGxhdGZvcm0gPT0gJ3dpbjMyJzoKKyAgICAgICAgIyBXaW5kb3dzIGlzIGx1bmF0aWMuIElzc3VlICMxMzM2Ni4KKyAgICAgICAgX2xpc3RkaXJfZmFpbHVyZSA9IE5vdEFEaXJlY3RvcnlFcnJvciwgRmlsZU5vdEZvdW5kRXJyb3IKKyAgICBlbHNlOgorICAgICAgICBfbGlzdGRpcl9mYWlsdXJlID0gTm90QURpcmVjdG9yeUVycm9yCiAKICAgICBkZWYgdGVzdF9vcGVuKHNlbGYpOgogICAgICAgICBmb3IgbmFtZSBpbiBzZWxmLmZpbGVzOgpAQCAtMTIxLDEyICsxMzEsMTMgQEAKICAgICAgICAgICAgIGYud3JpdGUoKG5hbWUrJ1xuJykuZW5jb2RlKCJ1dGYtOCIpKQogICAgICAgICAgICAgZi5jbG9zZSgpCiAgICAgICAgICAgICBvcy5zdGF0KG5hbWUpCisgICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLmxpc3RkaXIsIG5hbWUsIHNlbGYuX2xpc3RkaXJfZmFpbHVyZSkKIAogICAgICMgU2tpcCB0aGUgdGVzdCBvbiBkYXJ3aW4sIGJlY2F1c2UgZGFyd2luIGRvZXMgbm9ybWFsaXplIHRoZSBmaWxlbmFtZSB0bwogICAgICMgTkZEIChhIHZhcmlhbnQgb2YgVW5pY29kZSBORkQgZm9ybSkuIE5vcm1hbGl6ZSB0aGUgZmlsZW5hbWUgdG8gTkZDLCBORktDLAogICAgICMgTkZLRCBpbiBQeXRob24gaXMgdXNlbGVzcywgYmVjYXVzZSBkYXJ3aW4gd2lsbCBub3JtYWxpemUgaXQgbGF0ZXIgYW5kIHNvCiAgICAgIyBvcGVuKCksIG9zLnN0YXQoKSwgZXRjLiBkb24ndCByYWlzZSBhbnkgZXhjZXB0aW9uLgotICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLCAnaXJyZXZlbGFudCB0ZXN0IG9uIE1hYyBPUyBYJykKKyAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSA9PSAnZGFyd2luJywgJ2lycmVsZXZhbnQgdGVzdCBvbiBNYWMgT1MgWCcpCiAgICAgZGVmIHRlc3Rfbm9ybWFsaXplKHNlbGYpOgogICAgICAgICBmaWxlcyA9IHNldChzZWxmLmZpbGVzKQogICAgICAgICBvdGhlcnMgPSBzZXQoKQpAQCAtMTM0LDIxICsxNDUsMjIgQEAKICAgICAgICAgICAgIG90aGVycyB8PSBzZXQobm9ybWFsaXplKG5mLCBmaWxlKSBmb3IgZmlsZSBpbiBmaWxlcykKICAgICAgICAgb3RoZXJzIC09IGZpbGVzCiAgICAgICAgIGZvciBuYW1lIGluIG90aGVyczoKLSAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3BlbiwgbmFtZSwgSU9FcnJvcikKLSAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3Muc3RhdCwgbmFtZSwgT1NFcnJvcikKLSAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3MuY2hkaXIsIG5hbWUsIE9TRXJyb3IpCi0gICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLnJtZGlyLCBuYW1lLCBPU0Vycm9yKQotICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5yZW1vdmUsIG5hbWUsIE9TRXJyb3IpCi0gICAgICAgICAgICAjIGxpc3RkaXIgbWF5IGFwcGVuZCBhIHdpbGRjYXJkIHRvIHRoZSBmaWxlbmFtZSwgc28gZG9udCBjaGVjawotICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5saXN0ZGlyLCBuYW1lLCBPU0Vycm9yLCBGYWxzZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3BlbiwgbmFtZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3Muc3RhdCwgbmFtZSkKKyAgICAgICAgICAgIHNlbGYuX2FwcGx5X2ZhaWx1cmUob3MuY2hkaXIsIG5hbWUpCisgICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLnJtZGlyLCBuYW1lKQorICAgICAgICAgICAgc2VsZi5fYXBwbHlfZmFpbHVyZShvcy5yZW1vdmUsIG5hbWUpCisgICAgICAgICAgICBzZWxmLl9hcHBseV9mYWlsdXJlKG9zLmxpc3RkaXIsIG5hbWUpCiAKICAgICAjIFNraXAgdGhlIHRlc3Qgb24gZGFyd2luLCBiZWNhdXNlIGRhcndpbiB1c2VzIGEgbm9ybWFsaXphdGlvbiBkaWZmZXJlbnQKICAgICAjIHRoYW4gUHl0aG9uIE5GRCBub3JtYWxpemF0aW9uOiBmaWxlbmFtZXMgYXJlIGRpZmZlcmVudCBldmVuIGlmIHdlIHVzZQogICAgICMgUHl0aG9uIE5GRCBub3JtYWxpemF0aW9uLgotICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLCAnaXJyZXZlbGFudCB0ZXN0IG9uIE1hYyBPUyBYJykKKyAgICBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSA9PSAnZGFyd2luJywgJ2lycmVsZXZhbnQgdGVzdCBvbiBNYWMgT1MgWCcpCiAgICAgZGVmIHRlc3RfbGlzdGRpcihzZWxmKToKICAgICAgICAgc2YwID0gc2V0KHNlbGYuZmlsZXMpCi0gICAgICAgIGYxID0gb3MubGlzdGRpcihzdXBwb3J0LlRFU1RGTi5lbmNvZGUoc3lzLmdldGZpbGVzeXN0ZW1lbmNvZGluZygpKSkKKyAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgd2FybmluZ3Muc2ltcGxlZmlsdGVyKCJpZ25vcmUiLCBEZXByZWNhdGlvbldhcm5pbmcpCisgICAgICAgICAgICBmMSA9IG9zLmxpc3RkaXIoc3VwcG9ydC5URVNURk4uZW5jb2RlKHN5cy5nZXRmaWxlc3lzdGVtZW5jb2RpbmcoKSkpCiAgICAgICAgIGYyID0gb3MubGlzdGRpcihzdXBwb3J0LlRFU1RGTikKICAgICAgICAgc2YyID0gc2V0KG9zLnBhdGguam9pbihzdXBwb3J0LlRFU1RGTiwgZikgZm9yIGYgaW4gZjIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2YwLCBzZjIsICIlYSAhPSAlYSIgJSAoc2YwLCBzZjIpKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wZXAyOTIucHkgYi9MaWIvdGVzdC90ZXN0X3BlcDI5Mi5weQppbmRleCAxMTljN2VhLi42ZGE4ZDJlIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BlcDI5Mi5weQorKysgYi9MaWIvdGVzdC90ZXN0X3BlcDI5Mi5weQpAQCAtNDIsMTkgKzQyLDYgQEAKICAgICAgICAgcyA9IFRlbXBsYXRlKCckd2hvIGxpa2VzICQkJykKICAgICAgICAgZXEocy5zdWJzdGl0dXRlKGRpY3Qod2hvPSd0aW0nLCB3aGF0PSdoYW0nKSksICd0aW0gbGlrZXMgJCcpCiAKLSAgICBkZWYgdGVzdF9pbnZhbGlkKHNlbGYpOgotICAgICAgICBjbGFzcyBNeVBhdHRlcm4oVGVtcGxhdGUpOgotICAgICAgICAgICAgcGF0dGVybiA9IHIiIiIKLSAgICAgICAgICAgICg/OgotICAgICAgICAgICAgKD9QPGludmFsaWQ+KSAgICAgICAgICAgIHwKLSAgICAgICAgICAgICg/UDxlc2NhcGVkPiUoZGVsaW0pcykgICB8Ci0gICAgICAgICAgICBAKD9QPG5hbWVkPiUoaWQpcykgICAgICAgfAotICAgICAgICAgICAgQHsoP1A8YnJhY2VkPiUoaWQpcyl9ICAgIAotICAgICAgICAgICAgKQotICAgICAgICAgICAgIiIiCi0gICAgICAgIHMgPSBNeVBhdHRlcm4oJyQnKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzLnN1YnN0aXR1dGUsIGRpY3QoKSkgCi0KICAgICBkZWYgdGVzdF9wZXJjZW50cyhzZWxmKToKICAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCiAgICAgICAgIHMgPSBUZW1wbGF0ZSgnJShmb28pcyAkZm9vICR7Zm9vfScpCkBAIC0xNzIsNiArMTU5LDI2IEBACiAgICAgICAgIHZhbCA9IHQuc2FmZV9zdWJzdGl0dXRlKHsnbG9jYXRpb24nOiAnQ2xldmVsYW5kJ30pCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodmFsLCAnUHlDb24gaW4gQ2xldmVsYW5kJykKIAorICAgIGRlZiB0ZXN0X2ludmFsaWRfd2l0aF9ub19saW5lcyhzZWxmKToKKyAgICAgICAgIyBUaGUgZXJyb3IgZm9ybWF0dGluZyBmb3IgaW52YWxpZCB0ZW1wbGF0ZXMKKyAgICAgICAgIyBoYXMgYSBzcGVjaWFsIGNhc2UgZm9yIG5vIGRhdGEgdGhhdCB0aGUgZGVmYXVsdAorICAgICAgICAjIHBhdHRlcm4gY2FuJ3QgdHJpZ2dlciAoYWx3YXlzIGhhcyBhdCBsZWFzdCAnJCcpCisgICAgICAgICMgU28gd2UgY3JhZnQgYSBwYXR0ZXJuIHRoYXQgaXMgYWx3YXlzIGludmFsaWQKKyAgICAgICAgIyB3aXRoIG5vIGxlYWRpbmcgZGF0YS4KKyAgICAgICAgY2xhc3MgTXlUZW1wbGF0ZShUZW1wbGF0ZSk6CisgICAgICAgICAgICBwYXR0ZXJuID0gciIiIgorICAgICAgICAgICAgICAoP1A8aW52YWxpZD4pIHwKKyAgICAgICAgICAgICAgdW5yZWFjaGFibGUoCisgICAgICAgICAgICAgICAgKD9QPG5hbWVkPikgICB8CisgICAgICAgICAgICAgICAgKD9QPGJyYWNlZD4pICB8CisgICAgICAgICAgICAgICAgKD9QPGVzY2FwZWQ+KQorICAgICAgICAgICAgICApCisgICAgICAgICAgICAiIiIKKyAgICAgICAgcyA9IE15VGVtcGxhdGUoJycpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcikgYXMgZXJyOgorICAgICAgICAgICAgcy5zdWJzdGl0dXRlKHt9KQorICAgICAgICBzZWxmLmFzc2VydEluKCdsaW5lIDEsIGNvbCAxJywgc3RyKGVyci5leGNlcHRpb24pKQorCiAgICAgZGVmIHRlc3RfdW5pY29kZV92YWx1ZXMoc2VsZik6CiAgICAgICAgIHMgPSBUZW1wbGF0ZSgnJHdobyBsaWtlcyAkd2hhdCcpCiAgICAgICAgIGQgPSBkaWN0KHdobz0ndFx4ZmZtJywgd2hhdD0nZlx4ZmVcZmVkJykKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcGVwMzEyMC5weSBiL0xpYi90ZXN0L3Rlc3RfcGVwMzEyMC5weQppbmRleCAwOWZlZGYwLi40OTZmOGRhIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BlcDMxMjAucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9wZXAzMTIwLnB5CkBAIC0xOSw4ICsxOSw4IEBACiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGltcG9ydCB0ZXN0LmJhZHN5bnRheF9wZXAzMTIwCiAgICAgICAgIGV4Y2VwdCBTeW50YXhFcnJvciBhcyBtc2c6Ci0gICAgICAgICAgICBtc2cgPSBzdHIobXNnKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKCdVVEYtOCcgaW4gbXNnIG9yICd1dGY4JyBpbiBtc2cpCisgICAgICAgICAgICBtc2cgPSBzdHIobXNnKS5sb3dlcigpCisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoJ3V0Zi04JyBpbiBtc2cgb3IgJ3V0ZjgnIGluIG1zZykKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHNlbGYuZmFpbCgiZXhwZWN0ZWQgZXhjZXB0aW9uIGRpZG4ndCBvY2N1ciIpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcGVwMzEzMS5weSBiL0xpYi90ZXN0L3Rlc3RfcGVwMzEzMS5weQppbmRleCBkZjBmNjRkLi4yZTZiOTBhIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BlcDMxMzEucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9wZXAzMTMxLnB5CkBAIC0xNywxMiArMTcsNyBAQAogCiAgICAgZGVmIHRlc3Rfbm9uX2JtcF9ub3JtYWxpemVkKHNlbGYpOgogICAgICAgICDwnZSY8J2Uq/CdlKbwnZSg8J2UrPCdlKHwnZSiID0gMQotICAgICAgICAjIE9uIHdpZGUgYnVpbGRzLCB0aGlzIGlzIG5vcm1hbGl6ZWQsIGJ1dCBvbiBuYXJyb3cgb25lcyBpdCBpcyBub3QuIFNlZQotICAgICAgICAjICMxMjc0Ni4KLSAgICAgICAgdHJ5OgotICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigi8J2UmPCdlKvwnZSm8J2UoPCdlKzwnZSh8J2UoiIsIGRpcigpKQotICAgICAgICBleGNlcHQgQXNzZXJ0aW9uRXJyb3I6Ci0gICAgICAgICAgICByYWlzZSB1bml0dGVzdC5jYXNlLl9FeHBlY3RlZEZhaWx1cmUoc3lzLmV4Y19pbmZvKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oIlVuaWNvZGUiLCBkaXIoKSkKIAogICAgIGRlZiB0ZXN0X2ludmFsaWQoc2VsZik6CiAgICAgICAgIHRyeToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcGVwMzE1MS5weSBiL0xpYi90ZXN0L3Rlc3RfcGVwMzE1MS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YWY5ZTBjCi0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvdGVzdF9wZXAzMTUxLnB5CkBAIC0wLDAgKzEsMjAxIEBACitpbXBvcnQgYnVpbHRpbnMKK2ltcG9ydCBvcworaW1wb3J0IHNlbGVjdAoraW1wb3J0IHNvY2tldAoraW1wb3J0IHN5cworaW1wb3J0IHVuaXR0ZXN0CitpbXBvcnQgZXJybm8KK2Zyb20gZXJybm8gaW1wb3J0IEVFWElTVAorCitmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKKworY2xhc3MgU3ViT1NFcnJvcihPU0Vycm9yKToKKyAgICBwYXNzCisKK2NsYXNzIFN1Yk9TRXJyb3JXaXRoSW5pdChPU0Vycm9yKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbWVzc2FnZSwgYmFyKToKKyAgICAgICAgc2VsZi5iYXIgPSBiYXIKKyAgICAgICAgc3VwZXIoKS5fX2luaXRfXyhtZXNzYWdlKQorCitjbGFzcyBTdWJPU0Vycm9yV2l0aE5ldyhPU0Vycm9yKToKKyAgICBkZWYgX19uZXdfXyhjbHMsIG1lc3NhZ2UsIGJheik6CisgICAgICAgIHNlbGYgPSBzdXBlcigpLl9fbmV3X18oY2xzLCBtZXNzYWdlKQorICAgICAgICBzZWxmLmJheiA9IGJhegorICAgICAgICByZXR1cm4gc2VsZgorCitjbGFzcyBTdWJPU0Vycm9yQ29tYmluZWRJbml0Rmlyc3QoU3ViT1NFcnJvcldpdGhJbml0LCBTdWJPU0Vycm9yV2l0aE5ldyk6CisgICAgcGFzcworCitjbGFzcyBTdWJPU0Vycm9yQ29tYmluZWROZXdGaXJzdChTdWJPU0Vycm9yV2l0aE5ldywgU3ViT1NFcnJvcldpdGhJbml0KToKKyAgICBwYXNzCisKKworY2xhc3MgSGllcmFyY2h5VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9idWlsdGluX2Vycm9ycyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChPU0Vycm9yLl9fbmFtZV9fLCAnT1NFcnJvcicpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoSU9FcnJvciwgT1NFcnJvcikKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhFbnZpcm9ubWVudEVycm9yLCBPU0Vycm9yKQorCisgICAgZGVmIHRlc3Rfc29ja2V0X2Vycm9ycyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhzb2NrZXQuZXJyb3IsIElPRXJyb3IpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoc29ja2V0LmdhaWVycm9yLl9fYmFzZV9fLCBPU0Vycm9yKQorICAgICAgICBzZWxmLmFzc2VydElzKHNvY2tldC5oZXJyb3IuX19iYXNlX18sIE9TRXJyb3IpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoc29ja2V0LnRpbWVvdXQuX19iYXNlX18sIE9TRXJyb3IpCisKKyAgICBkZWYgdGVzdF9zZWxlY3RfZXJyb3Ioc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0SXMoc2VsZWN0LmVycm9yLCBPU0Vycm9yKQorCisgICAgIyBtbWFwLmVycm9yIGlzIHRlc3RlZCBpbiB0ZXN0X21tYXAKKworICAgIF9wZXBfbWFwID0gIiIiCisgICAgICAgICstLSBCbG9ja2luZ0lPRXJyb3IgICAgICAgIEVBR0FJTiwgRUFMUkVBRFksIEVXT1VMREJMT0NLLCBFSU5QUk9HUkVTUworICAgICAgICArLS0gQ2hpbGRQcm9jZXNzRXJyb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFQ0hJTEQKKyAgICAgICAgKy0tIENvbm5lY3Rpb25FcnJvcgorICAgICAgICAgICAgKy0tIEJyb2tlblBpcGVFcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVQSVBFLCBFU0hVVERPV04KKyAgICAgICAgICAgICstLSBDb25uZWN0aW9uQWJvcnRlZEVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgRUNPTk5BQk9SVEVECisgICAgICAgICAgICArLS0gQ29ubmVjdGlvblJlZnVzZWRFcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgIEVDT05OUkVGVVNFRAorICAgICAgICAgICAgKy0tIENvbm5lY3Rpb25SZXNldEVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVDT05OUkVTRVQKKyAgICAgICAgKy0tIEZpbGVFeGlzdHNFcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUVYSVNUCisgICAgICAgICstLSBGaWxlTm90Rm91bmRFcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVOT0VOVAorICAgICAgICArLS0gSW50ZXJydXB0ZWRFcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUlOVFIKKyAgICAgICAgKy0tIElzQURpcmVjdG9yeUVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUlTRElSCisgICAgICAgICstLSBOb3RBRGlyZWN0b3J5RXJyb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRU5PVERJUgorICAgICAgICArLS0gUGVybWlzc2lvbkVycm9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVBQ0NFUywgRVBFUk0KKyAgICAgICAgKy0tIFByb2Nlc3NMb29rdXBFcnJvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVTUkNICisgICAgICAgICstLSBUaW1lb3V0RXJyb3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVUSU1FRE9VVAorICAgICIiIgorICAgIGRlZiBfbWFrZV9tYXAocyk6CisgICAgICAgIF9tYXAgPSB7fQorICAgICAgICBmb3IgbGluZSBpbiBzLnNwbGl0bGluZXMoKToKKyAgICAgICAgICAgIGxpbmUgPSBsaW5lLnN0cmlwKCcrLSAnKQorICAgICAgICAgICAgaWYgbm90IGxpbmU6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGV4Y25hbWUsIF8sIGVycm5hbWVzID0gbGluZS5wYXJ0aXRpb24oJyAnKQorICAgICAgICAgICAgZm9yIGVycm5hbWUgaW4gZmlsdGVyKE5vbmUsIGVycm5hbWVzLnN0cmlwKCkuc3BsaXQoJywgJykpOgorICAgICAgICAgICAgICAgIF9tYXBbZ2V0YXR0cihlcnJubywgZXJybmFtZSldID0gZ2V0YXR0cihidWlsdGlucywgZXhjbmFtZSkKKyAgICAgICAgcmV0dXJuIF9tYXAKKyAgICBfbWFwID0gX21ha2VfbWFwKF9wZXBfbWFwKQorCisgICAgZGVmIHRlc3RfZXJybm9fbWFwcGluZyhzZWxmKToKKyAgICAgICAgIyBUaGUgT1NFcnJvciBjb25zdHJ1Y3RvciBtYXBzIGVycm5vcyB0byBzdWJjbGFzc2VzCisgICAgICAgICMgQSBzYW1wbGUgdGVzdCBmb3IgdGhlIGJhc2ljIGZ1bmN0aW9uYWxpdHkKKyAgICAgICAgZSA9IE9TRXJyb3IoRUVYSVNULCAiQmFkIGZpbGUgZGVzY3JpcHRvciIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShlKSwgRmlsZUV4aXN0c0Vycm9yKQorICAgICAgICAjIEV4aGF1c3RpdmUgdGVzdGluZworICAgICAgICBmb3IgZXJyY29kZSwgZXhjIGluIHNlbGYuX21hcC5pdGVtcygpOgorICAgICAgICAgICAgZSA9IE9TRXJyb3IoZXJyY29kZSwgIlNvbWUgbWVzc2FnZSIpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUoZSksIGV4YykKKyAgICAgICAgb3RoZXJjb2RlcyA9IHNldChlcnJuby5lcnJvcmNvZGUpIC0gc2V0KHNlbGYuX21hcCkKKyAgICAgICAgZm9yIGVycmNvZGUgaW4gb3RoZXJjb2RlczoKKyAgICAgICAgICAgIGUgPSBPU0Vycm9yKGVycmNvZGUsICJTb21lIG1lc3NhZ2UiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKGUpLCBPU0Vycm9yKQorCisgICAgZGVmIHRlc3RfdHJ5X2V4Y2VwdChzZWxmKToKKyAgICAgICAgZmlsZW5hbWUgPSAic29tZV9ob3BlZnVsbHlfbm9uX2V4aXN0aW5nX2ZpbGUiCisKKyAgICAgICAgIyBUaGlzIGNoZWNrcyB0aGF0IHRyeSAuLiBleGNlcHQgY2hlY2tzIHRoZSBjb25jcmV0ZSBleGNlcHRpb24KKyAgICAgICAgIyAoRmlsZU5vdEZvdW5kRXJyb3IpIGFuZCBub3QgdGhlIGJhc2UgdHlwZSBzcGVjaWZpZWQgd2hlbgorICAgICAgICAjIFB5RXJyX1NldEZyb21FcnJub1dpdGhGaWxlbmFtZU9iamVjdCB3YXMgY2FsbGVkLgorICAgICAgICAjIChpdCBpcyB0aGVyZWZvcmUgZGVsaWJlcmF0ZSB0aGF0IGl0IGRvZXNuJ3QgdXNlIGFzc2VydFJhaXNlcykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3BlbihmaWxlbmFtZSkKKyAgICAgICAgZXhjZXB0IEZpbGVOb3RGb3VuZEVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJzaG91bGQgaGF2ZSByYWlzZWQgYSBGaWxlTm90Rm91bmRFcnJvciIpCisKKyAgICAgICAgIyBBbm90aGVyIHRlc3QgZm9yIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyV2l0aEZpbGVuYW1lT2JqZWN0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhmaWxlbmFtZSkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG9zLnVubGluayhmaWxlbmFtZSkKKyAgICAgICAgZXhjZXB0IEZpbGVOb3RGb3VuZEVycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJzaG91bGQgaGF2ZSByYWlzZWQgYSBGaWxlTm90Rm91bmRFcnJvciIpCisKKworY2xhc3MgQXR0cmlidXRlc1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3Rfd2luZG93c19lcnJvcihzZWxmKToKKyAgICAgICAgaWYgb3MubmFtZSA9PSAibnQiOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbignd2luZXJyb3InLCBkaXIoT1NFcnJvcikpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEluKCd3aW5lcnJvcicsIGRpcihPU0Vycm9yKSkKKworICAgIGRlZiB0ZXN0X3Bvc2l4X2Vycm9yKHNlbGYpOgorICAgICAgICBlID0gT1NFcnJvcihFRVhJU1QsICJGaWxlIGFscmVhZHkgZXhpc3RzIiwgImZvby50eHQiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuZXJybm8sIEVFWElTVCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmFyZ3NbMF0sIEVFWElTVCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLnN0cmVycm9yLCAiRmlsZSBhbHJlYWR5IGV4aXN0cyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5maWxlbmFtZSwgImZvby50eHQiKQorICAgICAgICBpZiBvcy5uYW1lID09ICJudCI6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUud2luZXJyb3IsIE5vbmUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhvcy5uYW1lID09ICJudCIsICJXaW5kb3dzLXNwZWNpZmljIHRlc3QiKQorICAgIGRlZiB0ZXN0X2Vycm5vX3RyYW5zbGF0aW9uKHNlbGYpOgorICAgICAgICAjIEVSUk9SX0FMUkVBRFlfRVhJU1RTICgxODMpIC0+IEVFWElTVAorICAgICAgICBlID0gT1NFcnJvcigwLCAiRmlsZSBhbHJlYWR5IGV4aXN0cyIsICJmb28udHh0IiwgMTgzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUud2luZXJyb3IsIDE4MykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmVycm5vLCBFRVhJU1QpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzBdLCBFRVhJU1QpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5zdHJlcnJvciwgIkZpbGUgYWxyZWFkeSBleGlzdHMiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuZmlsZW5hbWUsICJmb28udHh0IikKKworICAgIGRlZiB0ZXN0X2Jsb2NraW5naW9lcnJvcihzZWxmKToKKyAgICAgICAgYXJncyA9ICgiYSIsICJiIiwgImMiLCAiZCIsICJlIikKKyAgICAgICAgZm9yIG4gaW4gcmFuZ2UoNik6CisgICAgICAgICAgICBlID0gQmxvY2tpbmdJT0Vycm9yKCphcmdzWzpuXSkKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXR0cmlidXRlRXJyb3IpOgorICAgICAgICAgICAgICAgIGUuY2hhcmFjdGVyc193cml0dGVuCisgICAgICAgIGUgPSBCbG9ja2luZ0lPRXJyb3IoImEiLCAiYiIsIDMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5jaGFyYWN0ZXJzX3dyaXR0ZW4sIDMpCisgICAgICAgIGUuY2hhcmFjdGVyc193cml0dGVuID0gNQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuY2hhcmFjdGVyc193cml0dGVuLCA1KQorCisgICAgIyBYWFggVk1TRXJyb3Igbm90IHRlc3RlZAorCisKK2NsYXNzIEV4cGxpY2l0U3ViY2xhc3NpbmdUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2Vycm5vX21hcHBpbmcoc2VsZik6CisgICAgICAgICMgV2hlbiBjb25zdHJ1Y3RpbmcgYW4gT1NFcnJvciBzdWJjbGFzcywgZXJybm8gbWFwcGluZyBpc24ndCBkb25lCisgICAgICAgIGUgPSBTdWJPU0Vycm9yKEVFWElTVCwgIkJhZCBmaWxlIGRlc2NyaXB0b3IiKQorICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUoZSksIFN1Yk9TRXJyb3IpCisKKyAgICBkZWYgdGVzdF9pbml0X292ZXJyaWRlbihzZWxmKToKKyAgICAgICAgZSA9IFN1Yk9TRXJyb3JXaXRoSW5pdCgic29tZSBtZXNzYWdlIiwgImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5iYXIsICJiYXoiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJncywgKCJzb21lIG1lc3NhZ2UiLCkpCisKKyAgICBkZWYgdGVzdF9pbml0X2t3ZGFyZ3Moc2VsZik6CisgICAgICAgIGUgPSBTdWJPU0Vycm9yV2l0aEluaXQoInNvbWUgbWVzc2FnZSIsIGJhcj0iYmF6IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmJhciwgImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzLCAoInNvbWUgbWVzc2FnZSIsKSkKKworICAgIGRlZiB0ZXN0X25ld19vdmVycmlkZW4oc2VsZik6CisgICAgICAgIGUgPSBTdWJPU0Vycm9yV2l0aE5ldygic29tZSBtZXNzYWdlIiwgImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5iYXosICJiYXoiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJncywgKCJzb21lIG1lc3NhZ2UiLCkpCisKKyAgICBkZWYgdGVzdF9uZXdfa3dkYXJncyhzZWxmKToKKyAgICAgICAgZSA9IFN1Yk9TRXJyb3JXaXRoTmV3KCJzb21lIG1lc3NhZ2UiLCBiYXo9ImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5iYXosICJiYXoiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJncywgKCJzb21lIG1lc3NhZ2UiLCkpCisKKyAgICBkZWYgdGVzdF9pbml0X25ld19vdmVycmlkZW4oc2VsZik6CisgICAgICAgIGUgPSBTdWJPU0Vycm9yQ29tYmluZWRJbml0Rmlyc3QoInNvbWUgbWVzc2FnZSIsICJiYXoiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYmFyLCAiYmF6IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmJheiwgImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzLCAoInNvbWUgbWVzc2FnZSIsKSkKKyAgICAgICAgZSA9IFN1Yk9TRXJyb3JDb21iaW5lZE5ld0ZpcnN0KCJzb21lIG1lc3NhZ2UiLCAiYmF6IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmJhciwgImJheiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5iYXosICJiYXoiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJncywgKCJzb21lIG1lc3NhZ2UiLCkpCisKKworZGVmIHRlc3RfbWFpbigpOgorICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KF9fbmFtZV9fKQorCitpZiBfX25hbWVfXz09Il9fbWFpbl9fIjoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wZXAzODAucHkgYi9MaWIvdGVzdC90ZXN0X3BlcDM4MC5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYTFkYjI5Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvdGVzdF9wZXAzODAucHkKQEAgLTAsMCArMSw4NTggQEAKKyMgLSotIGNvZGluZzogdXRmLTggLSotCisKKyIiIgorVGVzdCBzdWl0ZSBmb3IgUEVQIDM4MCBpbXBsZW1lbnRhdGlvbgorCithZGFwdGVkIGZyb20gb3JpZ2luYWwgdGVzdHMgd3JpdHRlbiBieSBHcmVnIEV3aW5nCitzZWUgPGh0dHA6Ly93d3cuY29zYy5jYW50ZXJidXJ5LmFjLm56L2dyZWcuZXdpbmcvcHl0aG9uL3lpZWxkLWZyb20vWWllbGRGcm9tLVB5dGhvbjMuMS4yLXJldjUuemlwPgorIiIiCisKK2ltcG9ydCB1bml0dGVzdAoraW1wb3J0IGlvCitpbXBvcnQgc3lzCitpbXBvcnQgdHJhY2ViYWNrCitpbXBvcnQgcGFyc2VyCisKK2Zyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBjYXB0dXJlZF9zdGRlcnIKKworY2xhc3MgVGVzdFBFUDM4ME9wZXJhdGlvbih1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIiIiCisgICAgVGVzdCBzZW1hbnRpY3MuCisgICAgIiIiCisKKyAgICBkZWYgdGVzdF9kZWxlZ2F0aW9uX29mX2luaXRpYWxfbmV4dF90b19zdWJnZW5lcmF0b3Ioc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IGRlbGVnYXRpb24gb2YgaW5pdGlhbCBuZXh0KCkgY2FsbCB0byBzdWJnZW5lcmF0b3IKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcxIikKKyAgICAgICAgICAgIHlpZWxkIGZyb20gZzIoKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzEiKQorICAgICAgICBkZWYgZzIoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzIiKQorICAgICAgICAgICAgeWllbGQgNDIKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcyIikKKyAgICAgICAgZm9yIHggaW4gZzEoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZCAlcyIgJSAoeCwpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJTdGFydGluZyBnMSIsCisgICAgICAgICAgICAiU3RhcnRpbmcgZzIiLAorICAgICAgICAgICAgIllpZWxkZWQgNDIiLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMiIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcxIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X3JhaXNpbmdfZXhjZXB0aW9uX2luX2luaXRpYWxfbmV4dF9jYWxsKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCByYWlzaW5nIGV4Y2VwdGlvbiBpbiBpbml0aWFsIG5leHQoKSBjYWxsCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnMSgpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzEiKQorICAgICAgICAgICAgICAgIHlpZWxkIGZyb20gZzIoKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMSIpCisgICAgICAgIGRlZiBnMigpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzIiKQorICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoInNwYW5pc2ggaW5xdWlzaXRpb24gb2NjdXJyZWQiKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMiIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGZvciB4IGluIGcxKCk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh4LCkpCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yIGFzIGU6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJnc1swXSwgInNwYW5pc2ggaW5xdWlzaXRpb24gb2NjdXJyZWQiKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJzdWJnZW5lcmF0b3IgZmFpbGVkIHRvIHJhaXNlIFZhbHVlRXJyb3IiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJTdGFydGluZyBnMSIsCisgICAgICAgICAgICAiU3RhcnRpbmcgZzIiLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMiIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcxIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X2RlbGVnYXRpb25fb2ZfbmV4dF9jYWxsX3RvX3N1YmdlbmVyYXRvcihzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgZGVsZWdhdGlvbiBvZiBuZXh0KCkgY2FsbCB0byBzdWJnZW5lcmF0b3IKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcxIikKKyAgICAgICAgICAgIHlpZWxkICJnMSBoYW0iCisgICAgICAgICAgICB5aWVsZCBmcm9tIGcyKCkKKyAgICAgICAgICAgIHlpZWxkICJnMSBlZ2dzIgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzEiKQorICAgICAgICBkZWYgZzIoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzIiKQorICAgICAgICAgICAgeWllbGQgImcyIHNwYW0iCisgICAgICAgICAgICB5aWVsZCAiZzIgbW9yZSBzcGFtIgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzIiKQorICAgICAgICBmb3IgeCBpbiBnMSgpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh4LCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0YXJ0aW5nIGcxIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcxIGhhbSIsCisgICAgICAgICAgICAiU3RhcnRpbmcgZzIiLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgc3BhbSIsCisgICAgICAgICAgICAiWWllbGRlZCBnMiBtb3JlIHNwYW0iLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMiIsCisgICAgICAgICAgICAiWWllbGRlZCBnMSBlZ2dzIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzEiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfcmFpc2luZ19leGNlcHRpb25faW5fZGVsZWdhdGVkX25leHRfY2FsbChzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgcmFpc2luZyBleGNlcHRpb24gaW4gZGVsZWdhdGVkIG5leHQoKSBjYWxsCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnMSgpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzEiKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMSBoYW0iCisgICAgICAgICAgICAgICAgeWllbGQgZnJvbSBnMigpCisgICAgICAgICAgICAgICAgeWllbGQgImcxIGVnZ3MiCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcxIikKKyAgICAgICAgZGVmIGcyKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMiIpCisgICAgICAgICAgICAgICAgeWllbGQgImcyIHNwYW0iCisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiaG92ZXJjcmFmdCBpcyBmdWxsIG9mIGVlbHMiKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMiBtb3JlIHNwYW0iCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcyIikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZm9yIHggaW4gZzEoKToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIllpZWxkZWQgJXMiICUgKHgsKSkKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzBdLCAiaG92ZXJjcmFmdCBpcyBmdWxsIG9mIGVlbHMiKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJzdWJnZW5lcmF0b3IgZmFpbGVkIHRvIHJhaXNlIFZhbHVlRXJyb3IiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJTdGFydGluZyBnMSIsCisgICAgICAgICAgICAiWWllbGRlZCBnMSBoYW0iLAorICAgICAgICAgICAgIlN0YXJ0aW5nIGcyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcyIHNwYW0iLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMiIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcxIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X2RlbGVnYXRpb25fb2Zfc2VuZChzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgZGVsZWdhdGlvbiBvZiBzZW5kKCkKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcxIikKKyAgICAgICAgICAgIHggPSB5aWVsZCAiZzEgaGFtIgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMSByZWNlaXZlZCAlcyIgJSAoeCwpKQorICAgICAgICAgICAgeWllbGQgZnJvbSBnMigpCisgICAgICAgICAgICB4ID0geWllbGQgImcxIGVnZ3MiCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcxIHJlY2VpdmVkICVzIiAlICh4LCkpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMSIpCisgICAgICAgIGRlZiBnMigpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMiIpCisgICAgICAgICAgICB4ID0geWllbGQgImcyIHNwYW0iCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcyIHJlY2VpdmVkICVzIiAlICh4LCkpCisgICAgICAgICAgICB4ID0geWllbGQgImcyIG1vcmUgc3BhbSIKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzIgcmVjZWl2ZWQgJXMiICUgKHgsKSkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcyIikKKyAgICAgICAgZyA9IGcxKCkKKyAgICAgICAgeSA9IG5leHQoZykKKyAgICAgICAgeCA9IDEKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgd2hpbGUgMToKKyAgICAgICAgICAgICAgICB5ID0gZy5zZW5kKHgpCisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh5LCkpCisgICAgICAgICAgICAgICAgeCArPSAxCisgICAgICAgIGV4Y2VwdCBTdG9wSXRlcmF0aW9uOgorICAgICAgICAgICAgcGFzcworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJTdGFydGluZyBnMSIsCisgICAgICAgICAgICAiZzEgcmVjZWl2ZWQgMSIsCisgICAgICAgICAgICAiU3RhcnRpbmcgZzIiLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgc3BhbSIsCisgICAgICAgICAgICAiZzIgcmVjZWl2ZWQgMiIsCisgICAgICAgICAgICAiWWllbGRlZCBnMiBtb3JlIHNwYW0iLAorICAgICAgICAgICAgImcyIHJlY2VpdmVkIDMiLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMiIsCisgICAgICAgICAgICAiWWllbGRlZCBnMSBlZ2dzIiwKKyAgICAgICAgICAgICJnMSByZWNlaXZlZCA0IiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzEiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfaGFuZGxpbmdfZXhjZXB0aW9uX3doaWxlX2RlbGVnYXRpbmdfc2VuZChzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgaGFuZGxpbmcgZXhjZXB0aW9uIHdoaWxlIGRlbGVnYXRpbmcgJ3NlbmQnCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnMSgpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMSIpCisgICAgICAgICAgICB4ID0geWllbGQgImcxIGhhbSIKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzEgcmVjZWl2ZWQgJXMiICUgKHgsKSkKKyAgICAgICAgICAgIHlpZWxkIGZyb20gZzIoKQorICAgICAgICAgICAgeCA9IHlpZWxkICJnMSBlZ2dzIgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMSByZWNlaXZlZCAlcyIgJSAoeCwpKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzEiKQorICAgICAgICBkZWYgZzIoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzIiKQorICAgICAgICAgICAgeCA9IHlpZWxkICJnMiBzcGFtIgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMiByZWNlaXZlZCAlcyIgJSAoeCwpKQorICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiaG92ZXJjcmFmdCBpcyBmdWxsIG9mIGVlbHMiKQorICAgICAgICAgICAgeCA9IHlpZWxkICJnMiBtb3JlIHNwYW0iCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcyIHJlY2VpdmVkICVzIiAlICh4LCkpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMiIpCisgICAgICAgIGRlZiBydW4oKToKKyAgICAgICAgICAgIGcgPSBnMSgpCisgICAgICAgICAgICB5ID0gbmV4dChnKQorICAgICAgICAgICAgeCA9IDEKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB3aGlsZSAxOgorICAgICAgICAgICAgICAgICAgICB5ID0gZy5zZW5kKHgpCisgICAgICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZCAlcyIgJSAoeSwpKQorICAgICAgICAgICAgICAgICAgICB4ICs9IDEKKyAgICAgICAgICAgIGV4Y2VwdCBTdG9wSXRlcmF0aW9uOgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RvcEl0ZXJhdGlvbiIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IscnVuKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJTdGFydGluZyBnMSIsCisgICAgICAgICAgICAiZzEgcmVjZWl2ZWQgMSIsCisgICAgICAgICAgICAiU3RhcnRpbmcgZzIiLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgc3BhbSIsCisgICAgICAgICAgICAiZzIgcmVjZWl2ZWQgMiIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9kZWxlZ2F0aW5nX2Nsb3NlKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBkZWxlZ2F0aW5nICdjbG9zZScKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMSIpCisgICAgICAgICAgICAgICAgeWllbGQgImcxIGhhbSIKKyAgICAgICAgICAgICAgICB5aWVsZCBmcm9tIGcyKCkKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzEgZWdncyIKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzEiKQorICAgICAgICBkZWYgZzIoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcyIikKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzIgc3BhbSIKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzIgbW9yZSBzcGFtIgorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMiIpCisgICAgICAgIGcgPSBnMSgpCisgICAgICAgIGZvciBpIGluIHJhbmdlKDIpOgorICAgICAgICAgICAgeCA9IG5leHQoZykKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZCAlcyIgJSAoeCwpKQorICAgICAgICBnLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiU3RhcnRpbmcgZzEiLAorICAgICAgICAgICAgIllpZWxkZWQgZzEgaGFtIiwKKyAgICAgICAgICAgICJTdGFydGluZyBnMiIsCisgICAgICAgICAgICAiWWllbGRlZCBnMiBzcGFtIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzIiLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMSIKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X2hhbmRpbmdfZXhjZXB0aW9uX3doaWxlX2RlbGVnYXRpbmdfY2xvc2Uoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IGhhbmRsaW5nIGV4Y2VwdGlvbiB3aGlsZSBkZWxlZ2F0aW5nICdjbG9zZScKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMSIpCisgICAgICAgICAgICAgICAgeWllbGQgImcxIGhhbSIKKyAgICAgICAgICAgICAgICB5aWVsZCBmcm9tIGcyKCkKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzEgZWdncyIKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzEiKQorICAgICAgICBkZWYgZzIoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcyIikKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzIgc3BhbSIKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzIgbW9yZSBzcGFtIgorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMiIpCisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigibnliYmxlcyBoYXZlIGV4cGxvZGVkIHdpdGggZGVsaWdodCIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGcgPSBnMSgpCisgICAgICAgICAgICBmb3IgaSBpbiByYW5nZSgyKToKKyAgICAgICAgICAgICAgICB4ID0gbmV4dChnKQorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZCAlcyIgJSAoeCwpKQorICAgICAgICAgICAgZy5jbG9zZSgpCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yIGFzIGU6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJnc1swXSwgIm55YmJsZXMgaGF2ZSBleHBsb2RlZCB3aXRoIGRlbGlnaHQiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGUuX19jb250ZXh0X18sIEdlbmVyYXRvckV4aXQpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmZhaWwoInN1YmdlbmVyYXRvciBmYWlsZWQgdG8gcmFpc2UgVmFsdWVFcnJvciIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0YXJ0aW5nIGcxIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcxIGhhbSIsCisgICAgICAgICAgICAiU3RhcnRpbmcgZzIiLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgc3BhbSIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcyIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzEiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfZGVsZWdhdGluZ190aHJvdyhzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgZGVsZWdhdGluZyAndGhyb3cnCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnMSgpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzEiKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMSBoYW0iCisgICAgICAgICAgICAgICAgeWllbGQgZnJvbSBnMigpCisgICAgICAgICAgICAgICAgeWllbGQgImcxIGVnZ3MiCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcxIikKKyAgICAgICAgZGVmIGcyKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnMiIpCisgICAgICAgICAgICAgICAgeWllbGQgImcyIHNwYW0iCisgICAgICAgICAgICAgICAgeWllbGQgImcyIG1vcmUgc3BhbSIKKyAgICAgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJGaW5pc2hpbmcgZzIiKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBnID0gZzEoKQorICAgICAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMik6CisgICAgICAgICAgICAgICAgeCA9IG5leHQoZykKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIllpZWxkZWQgJXMiICUgKHgsKSkKKyAgICAgICAgICAgIGUgPSBWYWx1ZUVycm9yKCJ0b21hdG8gZWplY3RlZCIpCisgICAgICAgICAgICBnLnRocm93KGUpCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yIGFzIGU6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJnc1swXSwgInRvbWF0byBlamVjdGVkIikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuZmFpbCgic3ViZ2VuZXJhdG9yIGZhaWxlZCB0byByYWlzZSBWYWx1ZUVycm9yIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiU3RhcnRpbmcgZzEiLAorICAgICAgICAgICAgIllpZWxkZWQgZzEgaGFtIiwKKyAgICAgICAgICAgICJTdGFydGluZyBnMiIsCisgICAgICAgICAgICAiWWllbGRlZCBnMiBzcGFtIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzIiLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMSIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF92YWx1ZV9hdHRyaWJ1dGVfb2ZfU3RvcEl0ZXJhdGlvbl9leGNlcHRpb24oc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0ICd2YWx1ZScgYXR0cmlidXRlIG9mIFN0b3BJdGVyYXRpb24gZXhjZXB0aW9uCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBwZXgoZSk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIiVzOiAlcyIgJSAoZS5fX2NsYXNzX18uX19uYW1lX18sIGUpKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJ2YWx1ZSA9ICVzIiAlIChlLnZhbHVlLCkpCisgICAgICAgIGUgPSBTdG9wSXRlcmF0aW9uKCkKKyAgICAgICAgcGV4KGUpCisgICAgICAgIGUgPSBTdG9wSXRlcmF0aW9uKCJzcGFtIikKKyAgICAgICAgcGV4KGUpCisgICAgICAgIGUudmFsdWUgPSAiZWdncyIKKyAgICAgICAgcGV4KGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIlN0b3BJdGVyYXRpb246ICIsCisgICAgICAgICAgICAidmFsdWUgPSBOb25lIiwKKyAgICAgICAgICAgICJTdG9wSXRlcmF0aW9uOiBzcGFtIiwKKyAgICAgICAgICAgICJ2YWx1ZSA9IHNwYW0iLAorICAgICAgICAgICAgIlN0b3BJdGVyYXRpb246IHNwYW0iLAorICAgICAgICAgICAgInZhbHVlID0gZWdncyIsCisgICAgICAgIF0pCisKKworICAgIGRlZiB0ZXN0X2V4Y2VwdGlvbl92YWx1ZV9jcmFzaChzZWxmKToKKyAgICAgICAgIyBUaGVyZSB1c2VkIHRvIGJlIGEgcmVmY291bnQgZXJyb3Igd2hlbiB0aGUgcmV0dXJuIHZhbHVlCisgICAgICAgICMgc3RvcmVkIGluIHRoZSBTdG9wSXRlcmF0aW9uIGhhcyBhIHJlZmNvdW50IG9mIDEuCisgICAgICAgIGRlZiBnMSgpOgorICAgICAgICAgICAgeWllbGQgZnJvbSBnMigpCisgICAgICAgIGRlZiBnMigpOgorICAgICAgICAgICAgeWllbGQgImcyIgorICAgICAgICAgICAgcmV0dXJuIFs0Ml0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsaXN0KGcxKCkpLCBbImcyIl0pCisKKworICAgIGRlZiB0ZXN0X2dlbmVyYXRvcl9yZXR1cm5fdmFsdWUoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IGdlbmVyYXRvciByZXR1cm4gdmFsdWUKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGcxKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcxIikKKyAgICAgICAgICAgIHlpZWxkICJnMSBoYW0iCisgICAgICAgICAgICByZXQgPSB5aWVsZCBmcm9tIGcyKCkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzIgcmV0dXJuZWQgJXMiICUgKHJldCwpKQorICAgICAgICAgICAgcmV0ID0geWllbGQgZnJvbSBnMig0MikKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzIgcmV0dXJuZWQgJXMiICUgKHJldCwpKQorICAgICAgICAgICAgeWllbGQgImcxIGVnZ3MiCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMSIpCisgICAgICAgIGRlZiBnMih2ID0gTm9uZSk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcyIikKKyAgICAgICAgICAgIHlpZWxkICJnMiBzcGFtIgorICAgICAgICAgICAgeWllbGQgImcyIG1vcmUgc3BhbSIKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRmluaXNoaW5nIGcyIikKKyAgICAgICAgICAgIGlmIHY6CisgICAgICAgICAgICAgICAgcmV0dXJuIHYKKyAgICAgICAgZm9yIHggaW4gZzEoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZCAlcyIgJSAoeCwpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJTdGFydGluZyBnMSIsCisgICAgICAgICAgICAiWWllbGRlZCBnMSBoYW0iLAorICAgICAgICAgICAgIlN0YXJ0aW5nIGcyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcyIHNwYW0iLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgbW9yZSBzcGFtIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzIiLAorICAgICAgICAgICAgImcyIHJldHVybmVkIE5vbmUiLAorICAgICAgICAgICAgIlN0YXJ0aW5nIGcyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcyIHNwYW0iLAorICAgICAgICAgICAgIllpZWxkZWQgZzIgbW9yZSBzcGFtIiwKKyAgICAgICAgICAgICJGaW5pc2hpbmcgZzIiLAorICAgICAgICAgICAgImcyIHJldHVybmVkIDQyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcxIGVnZ3MiLAorICAgICAgICAgICAgIkZpbmlzaGluZyBnMSIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9kZWxlZ2F0aW9uX29mX25leHRfdG9fbm9uX2dlbmVyYXRvcihzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgZGVsZWdhdGlvbiBvZiBuZXh0KCkgdG8gbm9uLWdlbmVyYXRvcgorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZygpOgorICAgICAgICAgICAgeWllbGQgZnJvbSByYW5nZSgzKQorICAgICAgICBmb3IgeCBpbiBnKCk6CisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIllpZWxkZWQgJXMiICUgKHgsKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiWWllbGRlZCAwIiwKKyAgICAgICAgICAgICJZaWVsZGVkIDEiLAorICAgICAgICAgICAgIllpZWxkZWQgMiIsCisgICAgICAgIF0pCisKKworICAgIGRlZiB0ZXN0X2NvbnZlcnNpb25fb2Zfc2VuZE5vbmVfdG9fbmV4dChzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgY29udmVyc2lvbiBvZiBzZW5kKE5vbmUpIHRvIG5leHQoKQorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZygpOgorICAgICAgICAgICAgeWllbGQgZnJvbSByYW5nZSgzKQorICAgICAgICBnaSA9IGcoKQorICAgICAgICBmb3IgeCBpbiByYW5nZSgzKToKKyAgICAgICAgICAgIHkgPSBnaS5zZW5kKE5vbmUpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIllpZWxkZWQ6ICVzIiAlICh5LCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIllpZWxkZWQ6IDAiLAorICAgICAgICAgICAgIllpZWxkZWQ6IDEiLAorICAgICAgICAgICAgIllpZWxkZWQ6IDIiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfZGVsZWdhdGlvbl9vZl9jbG9zZV90b19ub25fZ2VuZXJhdG9yKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBkZWxlZ2F0aW9uIG9mIGNsb3NlKCkgdG8gbm9uLWdlbmVyYXRvcgorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZygpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgic3RhcnRpbmcgZyIpCisgICAgICAgICAgICAgICAgeWllbGQgZnJvbSByYW5nZSgzKQorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZyBzaG91bGQgbm90IGJlIGhlcmUiKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImZpbmlzaGluZyBnIikKKyAgICAgICAgZ2kgPSBnKCkKKyAgICAgICAgbmV4dChnaSkKKyAgICAgICAgd2l0aCBjYXB0dXJlZF9zdGRlcnIoKSBhcyBvdXRwdXQ6CisgICAgICAgICAgICBnaS5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3V0cHV0LmdldHZhbHVlKCksICcnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJzdGFydGluZyBnIiwKKyAgICAgICAgICAgICJmaW5pc2hpbmcgZyIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9kZWxlZ2F0aW5nX3Rocm93X3RvX25vbl9nZW5lcmF0b3Ioc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IGRlbGVnYXRpbmcgJ3Rocm93JyB0byBub24tZ2VuZXJhdG9yCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJTdGFydGluZyBnIikKKyAgICAgICAgICAgICAgICB5aWVsZCBmcm9tIHJhbmdlKDEwKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnIikKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgZ2kgPSBnKCkKKyAgICAgICAgICAgIGZvciBpIGluIHJhbmdlKDUpOgorICAgICAgICAgICAgICAgIHggPSBuZXh0KGdpKQorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZCAlcyIgJSAoeCwpKQorICAgICAgICAgICAgZSA9IFZhbHVlRXJyb3IoInRvbWF0byBlamVjdGVkIikKKyAgICAgICAgICAgIGdpLnRocm93KGUpCisgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yIGFzIGU6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGUuYXJnc1swXSwidG9tYXRvIGVqZWN0ZWQiKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJzdWJnZW5lcmF0b3IgZmFpbGVkIHRvIHJhaXNlIFZhbHVlRXJyb3IiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJTdGFydGluZyBnIiwKKyAgICAgICAgICAgICJZaWVsZGVkIDAiLAorICAgICAgICAgICAgIllpZWxkZWQgMSIsCisgICAgICAgICAgICAiWWllbGRlZCAyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIDMiLAorICAgICAgICAgICAgIllpZWxkZWQgNCIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGciLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfYXR0ZW1wdGluZ190b19zZW5kX3RvX25vbl9nZW5lcmF0b3Ioc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IGF0dGVtcHRpbmcgdG8gc2VuZCB0byBub24tZ2VuZXJhdG9yCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJzdGFydGluZyBnIikKKyAgICAgICAgICAgICAgICB5aWVsZCBmcm9tIHJhbmdlKDMpCisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnIHNob3VsZCBub3QgYmUgaGVyZSIpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZmluaXNoaW5nIGciKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBnaSA9IGcoKQorICAgICAgICAgICAgbmV4dChnaSkKKyAgICAgICAgICAgIGZvciB4IGluIHJhbmdlKDMpOgorICAgICAgICAgICAgICAgIHkgPSBnaS5zZW5kKDQyKQorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU2hvdWxkIG5vdCBoYXZlIHlpZWxkZWQ6IiwgeSkKKyAgICAgICAgZXhjZXB0IEF0dHJpYnV0ZUVycm9yIGFzIGU6CisgICAgICAgICAgICBzZWxmLmFzc2VydEluKCJzZW5kIiwgZS5hcmdzWzBdKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJ3YXMgYWJsZSB0byBzZW5kIGludG8gbm9uLWdlbmVyYXRvciIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgInN0YXJ0aW5nIGciLAorICAgICAgICAgICAgImZpbmlzaGluZyBnIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X2Jyb2tlbl9nZXRhdHRyX2hhbmRsaW5nKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBzdWJpdGVyYXRvciB3aXRoIGEgYnJva2VuIGdldGF0dHIgaW1wbGVtZW50YXRpb24KKyAgICAgICAgIiIiCisgICAgICAgIGNsYXNzIEJyb2tlbjoKKyAgICAgICAgICAgIGRlZiBfX2l0ZXJfXyhzZWxmKToKKyAgICAgICAgICAgICAgICByZXR1cm4gc2VsZgorICAgICAgICAgICAgZGVmIF9fbmV4dF9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiAxCisgICAgICAgICAgICBkZWYgX19nZXRhdHRyX18oc2VsZiwgYXR0cik6CisgICAgICAgICAgICAgICAgMS8wCisKKyAgICAgICAgZGVmIGcoKToKKyAgICAgICAgICAgIHlpZWxkIGZyb20gQnJva2VuKCkKKworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFplcm9EaXZpc2lvbkVycm9yKToKKyAgICAgICAgICAgIGdpID0gZygpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5leHQoZ2kpLCAxKQorICAgICAgICAgICAgZ2kuc2VuZCgxKQorCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoWmVyb0RpdmlzaW9uRXJyb3IpOgorICAgICAgICAgICAgZ2kgPSBnKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV4dChnaSksIDEpCisgICAgICAgICAgICBnaS50aHJvdyhBdHRyaWJ1dGVFcnJvcikKKworICAgICAgICB3aXRoIGNhcHR1cmVkX3N0ZGVycigpIGFzIG91dHB1dDoKKyAgICAgICAgICAgIGdpID0gZygpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5leHQoZ2kpLCAxKQorICAgICAgICAgICAgZ2kuY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydEluKCdaZXJvRGl2aXNpb25FcnJvcicsIG91dHB1dC5nZXR2YWx1ZSgpKQorCisgICAgZGVmIHRlc3RfZXhjZXB0aW9uX2luX2luaXRpYWxfbmV4dF9jYWxsKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBleGNlcHRpb24gaW4gaW5pdGlhbCBuZXh0KCkgY2FsbAorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZzEoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzEgYWJvdXQgdG8geWllbGQgZnJvbSBnMiIpCisgICAgICAgICAgICB5aWVsZCBmcm9tIGcyKCkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzEgc2hvdWxkIG5vdCBiZSBoZXJlIikKKyAgICAgICAgZGVmIGcyKCk6CisgICAgICAgICAgICB5aWVsZCAxLzAKKyAgICAgICAgZGVmIHJ1bigpOgorICAgICAgICAgICAgZ2kgPSBnMSgpCisgICAgICAgICAgICBuZXh0KGdpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhaZXJvRGl2aXNpb25FcnJvcixydW4pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgImcxIGFib3V0IHRvIHlpZWxkIGZyb20gZzIiCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF9hdHRlbXB0ZWRfeWllbGRfZnJvbV9sb29wKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBhdHRlbXB0ZWQgeWllbGQtZnJvbSBsb29wCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBnMSgpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMTogc3RhcnRpbmciKQorICAgICAgICAgICAgeWllbGQgInkxIgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMTogYWJvdXQgdG8geWllbGQgZnJvbSBnMiIpCisgICAgICAgICAgICB5aWVsZCBmcm9tIGcyKCkKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzEgc2hvdWxkIG5vdCBiZSBoZXJlIikKKworICAgICAgICBkZWYgZzIoKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzI6IHN0YXJ0aW5nIikKKyAgICAgICAgICAgIHlpZWxkICJ5MiIKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZzI6IGFib3V0IHRvIHlpZWxkIGZyb20gZzEiKQorICAgICAgICAgICAgeWllbGQgZnJvbSBnaQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnMiBzaG91bGQgbm90IGJlIGhlcmUiKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBnaSA9IGcxKCkKKyAgICAgICAgICAgIGZvciB5IGluIGdpOgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZDogJXMiICUgKHksKSkKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzBdLCJnZW5lcmF0b3IgYWxyZWFkeSBleGVjdXRpbmciKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJzdWJnZW5lcmF0b3IgZGlkbid0IHJhaXNlIFZhbHVlRXJyb3IiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJnMTogc3RhcnRpbmciLAorICAgICAgICAgICAgIllpZWxkZWQ6IHkxIiwKKyAgICAgICAgICAgICJnMTogYWJvdXQgdG8geWllbGQgZnJvbSBnMiIsCisgICAgICAgICAgICAiZzI6IHN0YXJ0aW5nIiwKKyAgICAgICAgICAgICJZaWVsZGVkOiB5MiIsCisgICAgICAgICAgICAiZzI6IGFib3V0IHRvIHlpZWxkIGZyb20gZzEiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfcmV0dXJuaW5nX3ZhbHVlX2Zyb21fZGVsZWdhdGVkX3Rocm93KHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCByZXR1cm5pbmcgdmFsdWUgZnJvbSBkZWxlZ2F0ZWQgJ3Rocm93JworICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZzEoKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIlN0YXJ0aW5nIGcxIikKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzEgaGFtIgorICAgICAgICAgICAgICAgIHlpZWxkIGZyb20gZzIoKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMSBlZ2dzIgorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkZpbmlzaGluZyBnMSIpCisgICAgICAgIGRlZiBnMigpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiU3RhcnRpbmcgZzIiKQorICAgICAgICAgICAgICAgIHlpZWxkICJnMiBzcGFtIgorICAgICAgICAgICAgICAgIHlpZWxkICJnMiBtb3JlIHNwYW0iCisgICAgICAgICAgICBleGNlcHQgTHVuY2hFcnJvcjoKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkNhdWdodCBMdW5jaEVycm9yIGluIGcyIikKKyAgICAgICAgICAgICAgICB5aWVsZCAiZzIgbHVuY2ggc2F2ZWQiCisgICAgICAgICAgICAgICAgeWllbGQgImcyIHlldCBtb3JlIHNwYW0iCisgICAgICAgIGNsYXNzIEx1bmNoRXJyb3IoRXhjZXB0aW9uKToKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgZyA9IGcxKCkKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UoMik6CisgICAgICAgICAgICB4ID0gbmV4dChnKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJZaWVsZGVkICVzIiAlICh4LCkpCisgICAgICAgIGUgPSBMdW5jaEVycm9yKCJ0b21hdG8gZWplY3RlZCIpCisgICAgICAgIGcudGhyb3coZSkKKyAgICAgICAgZm9yIHggaW4gZzoKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiWWllbGRlZCAlcyIgJSAoeCwpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJTdGFydGluZyBnMSIsCisgICAgICAgICAgICAiWWllbGRlZCBnMSBoYW0iLAorICAgICAgICAgICAgIlN0YXJ0aW5nIGcyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcyIHNwYW0iLAorICAgICAgICAgICAgIkNhdWdodCBMdW5jaEVycm9yIGluIGcyIiwKKyAgICAgICAgICAgICJZaWVsZGVkIGcyIHlldCBtb3JlIHNwYW0iLAorICAgICAgICAgICAgIllpZWxkZWQgZzEgZWdncyIsCisgICAgICAgICAgICAiRmluaXNoaW5nIGcxIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X25leHRfYW5kX3JldHVybl93aXRoX3ZhbHVlKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBuZXh0IGFuZCByZXR1cm4gd2l0aCB2YWx1ZQorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZihyKToKKyAgICAgICAgICAgIGdpID0gZyhyKQorICAgICAgICAgICAgbmV4dChnaSkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImYgcmVzdW1pbmcgZyIpCisgICAgICAgICAgICAgICAgbmV4dChnaSkKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImYgU0hPVUxEIE5PVCBCRSBIRVJFIikKKyAgICAgICAgICAgIGV4Y2VwdCBTdG9wSXRlcmF0aW9uIGFzIGU6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJmIGNhdWdodCAlcyIgJSAocmVwcihlKSwpKQorICAgICAgICBkZWYgZyhyKToKKyAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZyBzdGFydGluZyIpCisgICAgICAgICAgICB5aWVsZAorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnIHJldHVybmluZyAlcyIgJSAociwpKQorICAgICAgICAgICAgcmV0dXJuIHIKKyAgICAgICAgZihOb25lKQorICAgICAgICBmKDQyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJnIHN0YXJ0aW5nIiwKKyAgICAgICAgICAgICJmIHJlc3VtaW5nIGciLAorICAgICAgICAgICAgImcgcmV0dXJuaW5nIE5vbmUiLAorICAgICAgICAgICAgImYgY2F1Z2h0IFN0b3BJdGVyYXRpb24oKSIsCisgICAgICAgICAgICAiZyBzdGFydGluZyIsCisgICAgICAgICAgICAiZiByZXN1bWluZyBnIiwKKyAgICAgICAgICAgICJnIHJldHVybmluZyA0MiIsCisgICAgICAgICAgICAiZiBjYXVnaHQgU3RvcEl0ZXJhdGlvbig0MiwpIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X3NlbmRfYW5kX3JldHVybl93aXRoX3ZhbHVlKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCBzZW5kIGFuZCByZXR1cm4gd2l0aCB2YWx1ZQorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZihyKToKKyAgICAgICAgICAgIGdpID0gZyhyKQorICAgICAgICAgICAgbmV4dChnaSkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImYgc2VuZGluZyBzcGFtIHRvIGciKQorICAgICAgICAgICAgICAgIGdpLnNlbmQoInNwYW0iKQorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiZiBTSE9VTEQgTk9UIEJFIEhFUkUiKQorICAgICAgICAgICAgZXhjZXB0IFN0b3BJdGVyYXRpb24gYXMgZToKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImYgY2F1Z2h0ICVyIiAlIChlLCkpCisgICAgICAgIGRlZiBnKHIpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnIHN0YXJ0aW5nIikKKyAgICAgICAgICAgIHggPSB5aWVsZAorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJnIHJlY2VpdmVkICVzIiAlICh4LCkpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoImcgcmV0dXJuaW5nICVzIiAlIChyLCkpCisgICAgICAgICAgICByZXR1cm4gcgorICAgICAgICBmKE5vbmUpCisgICAgICAgIGYoNDIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgImcgc3RhcnRpbmciLAorICAgICAgICAgICAgImYgc2VuZGluZyBzcGFtIHRvIGciLAorICAgICAgICAgICAgImcgcmVjZWl2ZWQgc3BhbSIsCisgICAgICAgICAgICAiZyByZXR1cm5pbmcgTm9uZSIsCisgICAgICAgICAgICAiZiBjYXVnaHQgU3RvcEl0ZXJhdGlvbigpIiwKKyAgICAgICAgICAgICJnIHN0YXJ0aW5nIiwKKyAgICAgICAgICAgICJmIHNlbmRpbmcgc3BhbSB0byBnIiwKKyAgICAgICAgICAgICJnIHJlY2VpdmVkIHNwYW0iLAorICAgICAgICAgICAgImcgcmV0dXJuaW5nIDQyIiwKKyAgICAgICAgICAgICJmIGNhdWdodCBTdG9wSXRlcmF0aW9uKDQyLCkiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfY2F0Y2hpbmdfZXhjZXB0aW9uX2Zyb21fc3ViZ2VuX2FuZF9yZXR1cm5pbmcoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IGNhdGNoaW5nIGFuIGV4Y2VwdGlvbiB0aHJvd24gaW50byBhCisgICAgICAgIHN1YmdlbmVyYXRvciBhbmQgcmV0dXJuaW5nIGEgdmFsdWUKKyAgICAgICAgIiIiCisgICAgICAgIHRyYWNlID0gW10KKyAgICAgICAgZGVmIGlubmVyKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgeWllbGQgMQorICAgICAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3I6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJpbm5lciBjYXVnaHQgVmFsdWVFcnJvciIpCisgICAgICAgICAgICByZXR1cm4gMgorCisgICAgICAgIGRlZiBvdXRlcigpOgorICAgICAgICAgICAgdiA9IHlpZWxkIGZyb20gaW5uZXIoKQorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJpbm5lciByZXR1cm5lZCAlciB0byBvdXRlciIgJSB2KQorICAgICAgICAgICAgeWllbGQgdgorICAgICAgICBnID0gb3V0ZXIoKQorICAgICAgICB0cmFjZS5hcHBlbmQobmV4dChnKSkKKyAgICAgICAgdHJhY2UuYXBwZW5kKGcudGhyb3coVmFsdWVFcnJvcikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgMSwKKyAgICAgICAgICAgICJpbm5lciBjYXVnaHQgVmFsdWVFcnJvciIsCisgICAgICAgICAgICAiaW5uZXIgcmV0dXJuZWQgMiB0byBvdXRlciIsCisgICAgICAgICAgICAyLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfdGhyb3dpbmdfR2VuZXJhdG9yRXhpdF9pbnRvX3N1Ymdlbl90aGF0X3JldHVybnMoc2VsZik6CisgICAgICAgICIiIgorICAgICAgICBUZXN0IHRocm93aW5nIEdlbmVyYXRvckV4aXQgaW50byBhIHN1YmdlbmVyYXRvciB0aGF0CisgICAgICAgIGNhdGNoZXMgaXQgYW5kIHJldHVybnMgbm9ybWFsbHkuCisgICAgICAgICIiIgorICAgICAgICB0cmFjZSA9IFtdCisgICAgICAgIGRlZiBmKCk6CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJFbnRlciBmIikKKyAgICAgICAgICAgICAgICB5aWVsZAorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRXhpdCBmIikKKyAgICAgICAgICAgIGV4Y2VwdCBHZW5lcmF0b3JFeGl0OgorICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICBkZWYgZygpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJFbnRlciBnIikKKyAgICAgICAgICAgIHlpZWxkIGZyb20gZigpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkV4aXQgZyIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGdpID0gZygpCisgICAgICAgICAgICBuZXh0KGdpKQorICAgICAgICAgICAgZ2kudGhyb3coR2VuZXJhdG9yRXhpdCkKKyAgICAgICAgZXhjZXB0IEdlbmVyYXRvckV4aXQ6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmZhaWwoInN1YmdlbmVyYXRvciBmYWlsZWQgdG8gcmFpc2UgR2VuZXJhdG9yRXhpdCIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodHJhY2UsWworICAgICAgICAgICAgIkVudGVyIGciLAorICAgICAgICAgICAgIkVudGVyIGYiLAorICAgICAgICBdKQorCisgICAgZGVmIHRlc3RfdGhyb3dpbmdfR2VuZXJhdG9yRXhpdF9pbnRvX3N1YmdlbmVyYXRvcl90aGF0X3lpZWxkcyhzZWxmKToKKyAgICAgICAgIiIiCisgICAgICAgIFRlc3QgdGhyb3dpbmcgR2VuZXJhdG9yRXhpdCBpbnRvIGEgc3ViZ2VuZXJhdG9yIHRoYXQKKyAgICAgICAgY2F0Y2hlcyBpdCBhbmQgeWllbGRzLgorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZigpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRW50ZXIgZiIpCisgICAgICAgICAgICAgICAgeWllbGQKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkV4aXQgZiIpCisgICAgICAgICAgICBleGNlcHQgR2VuZXJhdG9yRXhpdDoKKyAgICAgICAgICAgICAgICB5aWVsZAorICAgICAgICBkZWYgZygpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJFbnRlciBnIikKKyAgICAgICAgICAgIHlpZWxkIGZyb20gZigpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkV4aXQgZyIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGdpID0gZygpCisgICAgICAgICAgICBuZXh0KGdpKQorICAgICAgICAgICAgZ2kudGhyb3coR2VuZXJhdG9yRXhpdCkKKyAgICAgICAgZXhjZXB0IFJ1bnRpbWVFcnJvciBhcyBlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlLmFyZ3NbMF0sICJnZW5lcmF0b3IgaWdub3JlZCBHZW5lcmF0b3JFeGl0IikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuZmFpbCgic3ViZ2VuZXJhdG9yIGZhaWxlZCB0byByYWlzZSBHZW5lcmF0b3JFeGl0IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFjZSxbCisgICAgICAgICAgICAiRW50ZXIgZyIsCisgICAgICAgICAgICAiRW50ZXIgZiIsCisgICAgICAgIF0pCisKKyAgICBkZWYgdGVzdF90aHJvd2luZ19HZW5lcmF0b3JFeGl0X2ludG9fc3ViZ2VuX3RoYXRfcmFpc2VzKHNlbGYpOgorICAgICAgICAiIiIKKyAgICAgICAgVGVzdCB0aHJvd2luZyBHZW5lcmF0b3JFeGl0IGludG8gYSBzdWJnZW5lcmF0b3IgdGhhdAorICAgICAgICBjYXRjaGVzIGl0IGFuZCByYWlzZXMgYSBkaWZmZXJlbnQgZXhjZXB0aW9uLgorICAgICAgICAiIiIKKyAgICAgICAgdHJhY2UgPSBbXQorICAgICAgICBkZWYgZigpOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRyYWNlLmFwcGVuZCgiRW50ZXIgZiIpCisgICAgICAgICAgICAgICAgeWllbGQKKyAgICAgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkV4aXQgZiIpCisgICAgICAgICAgICBleGNlcHQgR2VuZXJhdG9yRXhpdDoKKyAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJWb3JwYWwgYnVubnkgZW5jb3VudGVyZWQiKQorICAgICAgICBkZWYgZygpOgorICAgICAgICAgICAgdHJhY2UuYXBwZW5kKCJFbnRlciBnIikKKyAgICAgICAgICAgIHlpZWxkIGZyb20gZigpCisgICAgICAgICAgICB0cmFjZS5hcHBlbmQoIkV4aXQgZyIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGdpID0gZygpCisgICAgICAgICAgICBuZXh0KGdpKQorICAgICAgICAgICAgZ2kudGhyb3coR2VuZXJhdG9yRXhpdCkKKyAgICAgICAgZXhjZXB0IFZhbHVlRXJyb3IgYXMgZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZS5hcmdzWzBdLCAiVm9ycGFsIGJ1bm55IGVuY291bnRlcmVkIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShlLl9fY29udGV4dF9fLCBHZW5lcmF0b3JFeGl0KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5mYWlsKCJzdWJnZW5lcmF0b3IgZmFpbGVkIHRvIHJhaXNlIFZhbHVlRXJyb3IiKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYWNlLFsKKyAgICAgICAgICAgICJFbnRlciBnIiwKKyAgICAgICAgICAgICJFbnRlciBmIiwKKyAgICAgICAgXSkKKworICAgIGRlZiB0ZXN0X3lpZWxkX2Zyb21fZW1wdHkoc2VsZik6CisgICAgICAgIGRlZiBnKCk6CisgICAgICAgICAgICB5aWVsZCBmcm9tICgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFN0b3BJdGVyYXRpb24sIG5leHQsIGcoKSkKKworCitkZWYgdGVzdF9tYWluKCk6CisgICAgZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CisgICAgdGVzdF9jbGFzc2VzID0gW1Rlc3RQRVAzODBPcGVyYXRpb25dCisgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoKnRlc3RfY2xhc3NlcykKKworCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3BpcGVzLnB5IGIvTGliL3Rlc3QvdGVzdF9waXBlcy5weQppbmRleCBkNWI4ODZmLi42YTdiNDVmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BpcGVzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcGlwZXMucHkKQEAgLTc5LDIxICs3OSw2IEBACiAgICAgICAgIHdpdGggb3BlbihURVNURk4pIGFzIGY6CiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYucmVhZCgpLCBkKQogCi0gICAgZGVmIHRlc3RRdW90aW5nKHNlbGYpOgotICAgICAgICBzYWZldW5xdW90ZWQgPSBzdHJpbmcuYXNjaWlfbGV0dGVycyArIHN0cmluZy5kaWdpdHMgKyAnQCVfLSs9OiwuLycKLSAgICAgICAgdW5pY29kZV9zYW1wbGUgPSAnXHhlOVx4ZTBceGRmJyAgIyBlICsgYWN1dGUgYWNjZW50LCBhICsgZ3JhdmUsIHNoYXJwIHMKLSAgICAgICAgdW5zYWZlID0gJyJgJFxcIScgKyB1bmljb2RlX3NhbXBsZQotCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocGlwZXMucXVvdGUoJycpLCAiJyciKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBpcGVzLnF1b3RlKHNhZmV1bnF1b3RlZCksIHNhZmV1bnF1b3RlZCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwaXBlcy5xdW90ZSgndGVzdCBmaWxlIG5hbWUnKSwgIid0ZXN0IGZpbGUgbmFtZSciKQotICAgICAgICBmb3IgdSBpbiB1bnNhZmU6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBpcGVzLnF1b3RlKCd0ZXN0JXNuYW1lJyAlIHUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIid0ZXN0JXNuYW1lJyIgJSB1KQotICAgICAgICBmb3IgdSBpbiB1bnNhZmU6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBpcGVzLnF1b3RlKCJ0ZXN0JXMnbmFtZSciICUgdSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICIndGVzdCVzJ1wiJ1wiJ25hbWUnXCInXCInJyIgJSB1KQotCiAgICAgZGVmIHRlc3RSZXByKHNlbGYpOgogICAgICAgICB0ID0gcGlwZXMuVGVtcGxhdGUoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcHIodCksICI8VGVtcGxhdGUgaW5zdGFuY2UsIHN0ZXBzPVtdPiIpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3BrZ2ltcG9ydC5weSBiL0xpYi90ZXN0L3Rlc3RfcGtnaW1wb3J0LnB5CmluZGV4IGMzN2U5MzYuLmE4NDI2YjUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcGtnaW1wb3J0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcGtnaW1wb3J0LnB5CkBAIC03LDcgKzcsNyBAQAogaW1wb3J0IHVuaXR0ZXN0CiAKIGZyb20gaW1wIGltcG9ydCBjYWNoZV9mcm9tX3NvdXJjZQotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdAorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IHJ1bl91bml0dGVzdCwgY3JlYXRlX2VtcHR5X2ZpbGUKIAogY2xhc3MgVGVzdEltcG9ydCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKQEAgLTI5LDcgKzI5LDcgQEAKICAgICAgICAgc2VsZi5wYWNrYWdlX2RpciA9IG9zLnBhdGguam9pbihzZWxmLnRlc3RfZGlyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYucGFja2FnZV9uYW1lKQogICAgICAgICBvcy5ta2RpcihzZWxmLnBhY2thZ2VfZGlyKQotICAgICAgICBvcGVuKG9zLnBhdGguam9pbihzZWxmLnBhY2thZ2VfZGlyLCAnX19pbml0X18ucHknKSwgJ3cnKS5jbG9zZSgpCisgICAgICAgIGNyZWF0ZV9lbXB0eV9maWxlKG9zLnBhdGguam9pbihzZWxmLnBhY2thZ2VfZGlyLCAnX19pbml0X18ucHknKSkKICAgICAgICAgc2VsZi5tb2R1bGVfcGF0aCA9IG9zLnBhdGguam9pbihzZWxmLnBhY2thZ2VfZGlyLCAnZm9vLnB5JykKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcGxhdGZvcm0ucHkgYi9MaWIvdGVzdC90ZXN0X3BsYXRmb3JtLnB5CmluZGV4IDg3NTFhYTguLmNmZTYyM2EgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcGxhdGZvcm0ucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9wbGF0Zm9ybS5weQpAQCAtMSw4ICsxLDkgQEAKLWltcG9ydCBzeXMKIGltcG9ydCBvcwotaW1wb3J0IHVuaXR0ZXN0CiBpbXBvcnQgcGxhdGZvcm0KIGltcG9ydCBzdWJwcm9jZXNzCitpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKK2ltcG9ydCB3YXJuaW5ncwogCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIApAQCAtNTYsMTMgKzU3LDExIEBACiAKICAgICBkZWYgc2V0VXAoc2VsZik6CiAgICAgICAgIHNlbGYuc2F2ZV92ZXJzaW9uID0gc3lzLnZlcnNpb24KLSAgICAgICAgc2VsZi5zYXZlX3N1YnZlcnNpb24gPSBzeXMuc3VidmVyc2lvbgogICAgICAgICBzZWxmLnNhdmVfbWVyY3VyaWFsID0gc3lzLl9tZXJjdXJpYWwKICAgICAgICAgc2VsZi5zYXZlX3BsYXRmb3JtID0gc3lzLnBsYXRmb3JtCiAKICAgICBkZWYgdGVhckRvd24oc2VsZik6CiAgICAgICAgIHN5cy52ZXJzaW9uID0gc2VsZi5zYXZlX3ZlcnNpb24KLSAgICAgICAgc3lzLnN1YnZlcnNpb24gPSBzZWxmLnNhdmVfc3VidmVyc2lvbgogICAgICAgICBzeXMuX21lcmN1cmlhbCA9IHNlbGYuc2F2ZV9tZXJjdXJpYWwKICAgICAgICAgc3lzLnBsYXRmb3JtID0gc2VsZi5zYXZlX3BsYXRmb3JtCiAKQEAgLTc3LDcgKzc2LDcgQEAKICAgICAgICAgICAgICAoJ0lyb25QeXRob24nLCAnMS4wLjAnLCAnJywgJycsICcnLCAnJywgJy5ORVQgMi4wLjUwNzI3LjQyJykpLAogICAgICAgICAgICAgKToKICAgICAgICAgICAgICMgYnJhbmNoIGFuZCByZXZpc2lvbiBhcmUgbm90ICJwYXJzZWQiLCBidXQgZmV0Y2hlZAotICAgICAgICAgICAgIyBmcm9tIHN5cy5zdWJ2ZXJzaW9uLiAgSWdub3JlIHRoZW0KKyAgICAgICAgICAgICMgZnJvbSBzeXMuX21lcmN1cmlhbC4gIElnbm9yZSB0aGVtCiAgICAgICAgICAgICAobmFtZSwgdmVyc2lvbiwgYnJhbmNoLCByZXZpc2lvbiwgYnVpbGRubywgYnVpbGRkYXRlLCBjb21waWxlcikgXAogICAgICAgICAgICAgICAgICAgID0gcGxhdGZvcm0uX3N5c192ZXJzaW9uKGlucHV0KQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKQEAgLTExMyw4ICsxMTIsNiBAQAogICAgICAgICAgICAgaWYgc3VidmVyc2lvbiBpcyBOb25lOgogICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIoc3lzLCAiX21lcmN1cmlhbCIpOgogICAgICAgICAgICAgICAgICAgICBkZWwgc3lzLl9tZXJjdXJpYWwKLSAgICAgICAgICAgICAgICBpZiBoYXNhdHRyKHN5cywgInN1YnZlcnNpb24iKToKLSAgICAgICAgICAgICAgICAgICAgZGVsIHN5cy5zdWJ2ZXJzaW9uCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHN5cy5fbWVyY3VyaWFsID0gc3VidmVyc2lvbgogICAgICAgICAgICAgaWYgc3lzX3BsYXRmb3JtIGlzIG5vdCBOb25lOgpAQCAtMjQ3LDYgKzI0NCwzOCBAQAogICAgICAgICAgICAgKToKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocGxhdGZvcm0uX3BhcnNlX3JlbGVhc2VfZmlsZShpbnB1dCksIG91dHB1dCkKIAorICAgIGRlZiB0ZXN0X3BvcGVuKHNlbGYpOgorICAgICAgICBtc3dpbmRvd3MgPSAoc3lzLnBsYXRmb3JtID09ICJ3aW4zMiIpCisKKyAgICAgICAgaWYgbXN3aW5kb3dzOgorICAgICAgICAgICAgY29tbWFuZCA9ICcie30iIC1jICJwcmludChcJ0hlbGxvXCcpIicuZm9ybWF0KHN5cy5leGVjdXRhYmxlKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgY29tbWFuZCA9ICIne30nIC1jICdwcmludChcIkhlbGxvXCIpJyIuZm9ybWF0KHN5cy5leGVjdXRhYmxlKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIHdpdGggcGxhdGZvcm0ucG9wZW4oY29tbWFuZCkgYXMgc3Rkb3V0OgorICAgICAgICAgICAgICAgIGhlbGxvID0gc3Rkb3V0LnJlYWQoKS5zdHJpcCgpCisgICAgICAgICAgICAgICAgc3Rkb3V0LmNsb3NlKCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGhlbGxvLCAiSGVsbG8iKQorCisgICAgICAgIGRhdGEgPSAncGxvcCcKKyAgICAgICAgaWYgbXN3aW5kb3dzOgorICAgICAgICAgICAgY29tbWFuZCA9ICcie30iIC1jICJpbXBvcnQgc3lzOyBkYXRhPXN5cy5zdGRpbi5yZWFkKCk7IGV4aXQobGVuKGRhdGEpKSInCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBjb21tYW5kID0gIid7fScgLWMgJ2ltcG9ydCBzeXM7IGRhdGE9c3lzLnN0ZGluLnJlYWQoKTsgZXhpdChsZW4oZGF0YSkpJyIKKyAgICAgICAgY29tbWFuZCA9IGNvbW1hbmQuZm9ybWF0KHN5cy5leGVjdXRhYmxlKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIHdpdGggcGxhdGZvcm0ucG9wZW4oY29tbWFuZCwgJ3cnKSBhcyBzdGRpbjoKKyAgICAgICAgICAgICAgICBzdGRvdXQgPSBzdGRpbi53cml0ZShkYXRhKQorICAgICAgICAgICAgICAgIHJldCA9IHN0ZGluLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShyZXQpCisgICAgICAgICAgICAgICAgaWYgb3MubmFtZSA9PSAnbnQnOgorICAgICAgICAgICAgICAgICAgICByZXR1cm5jb2RlID0gcmV0CisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuY29kZSA9IHJldCA+PiA4CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXR1cm5jb2RlLCBsZW4oZGF0YSkpCisKIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wb3BsaWIucHkgYi9MaWIvdGVzdC90ZXN0X3BvcGxpYi5weQppbmRleCBlMzkwMWI4Li5jMDkyOWEwIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3BvcGxpYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X3BvcGxpYi5weQpAQCAtMTA4LDYgKzEwOCwxMCBAQAogICAgIGRlZiBjbWRfYXBvcChzZWxmLCBhcmcpOgogICAgICAgICBzZWxmLnB1c2goJytPSyBkb25lIG5vdGhpbmcuJykKIAorICAgIGRlZiBjbWRfcXVpdChzZWxmLCBhcmcpOgorICAgICAgICBzZWxmLnB1c2goJytPSyBjbG9zaW5nLicpCisgICAgICAgIHNlbGYuY2xvc2Vfd2hlbl9kb25lKCkKKwogCiBjbGFzcyBEdW1teVBPUDNTZXJ2ZXIoYXN5bmNvcmUuZGlzcGF0Y2hlciwgdGhyZWFkaW5nLlRocmVhZCk6CiAKQEAgLTE2NSwxMCArMTY5LDEwIEBACiAgICAgZGVmIHNldFVwKHNlbGYpOgogICAgICAgICBzZWxmLnNlcnZlciA9IER1bW15UE9QM1NlcnZlcigoSE9TVCwgUE9SVCkpCiAgICAgICAgIHNlbGYuc2VydmVyLnN0YXJ0KCkKLSAgICAgICAgc2VsZi5jbGllbnQgPSBwb3BsaWIuUE9QMyhzZWxmLnNlcnZlci5ob3N0LCBzZWxmLnNlcnZlci5wb3J0KQorICAgICAgICBzZWxmLmNsaWVudCA9IHBvcGxpYi5QT1AzKHNlbGYuc2VydmVyLmhvc3QsIHNlbGYuc2VydmVyLnBvcnQsIHRpbWVvdXQ9MykKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKLSAgICAgICAgc2VsZi5jbGllbnQucXVpdCgpCisgICAgICAgIHNlbGYuY2xpZW50LmNsb3NlKCkKICAgICAgICAgc2VsZi5zZXJ2ZXIuc3RvcCgpCiAKICAgICBkZWYgdGVzdF9nZXR3ZWxjb21lKHNlbGYpOgpAQCAtMjI4LDYgKzIzMiwxMiBAQAogICAgICAgICBzZWxmLmNsaWVudC51aWRsKCkKICAgICAgICAgc2VsZi5jbGllbnQudWlkbCgnZm9vJykKIAorICAgIGRlZiB0ZXN0X3F1aXQoc2VsZik6CisgICAgICAgIHJlc3AgPSBzZWxmLmNsaWVudC5xdWl0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHJlc3ApCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKHNlbGYuY2xpZW50LnNvY2spCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKHNlbGYuY2xpZW50LmZpbGUpCisKIAogU1VQUE9SVFNfU1NMID0gRmFsc2UKIGlmIGhhc2F0dHIocG9wbGliLCAnUE9QM19TU0wnKToKQEAgLTI3NCw2ICsyODQsNyBAQAogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICBEdW1teVBPUDNIYW5kbGVyLmhhbmRsZV9yZWFkKHNlbGYpCiAKKwogICAgIGNsYXNzIFRlc3RQT1AzX1NTTENsYXNzKFRlc3RQT1AzQ2xhc3MpOgogICAgICAgICAjIHJlcGVhdCBwcmV2aW91cyB0ZXN0cyBieSB1c2luZyBwb3BsaWIuUE9QM19TU0wKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wb3NpeC5weSBiL0xpYi90ZXN0L3Rlc3RfcG9zaXgucHkKaW5kZXggMDlmMDRlYy4uZjhjNmJhYSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9wb3NpeC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3Bvc2l4LnB5CkBAIC05LDYgKzksNyBAQAogaW1wb3J0IHN5cwogaW1wb3J0IHRpbWUKIGltcG9ydCBvcworaW1wb3J0IGZjbnRsCiBpbXBvcnQgcHdkCiBpbXBvcnQgc2h1dGlsCiBpbXBvcnQgc3RhdApAQCAtNDIsNyArNDMsNyBAQAogICAgICAgICBOT19BUkdfRlVOQ1RJT05TID0gWyAiY3Rlcm1pZCIsICJnZXRjd2QiLCAiZ2V0Y3dkYiIsICJ1bmFtZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aW1lcyIsICJnZXRsb2FkYXZnIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdldGVnaWQiLCAiZ2V0ZXVpZCIsICJnZXRnaWQiLCAiZ2V0Z3JvdXBzIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdldHBpZCIsICJnZXRwZ3JwIiwgImdldHBwaWQiLCAiZ2V0dWlkIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdldHBpZCIsICJnZXRwZ3JwIiwgImdldHBwaWQiLCAiZ2V0dWlkIiwgInN5bmMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgXQogCiAgICAgICAgIGZvciBuYW1lIGluIE5PX0FSR19GVU5DVElPTlM6CkBAIC0xMzcsNiArMTM4LDE1OSBAQAogICAgICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgICAgICBmcC5jbG9zZSgpCiAKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAndHJ1bmNhdGUnKSwgInRlc3QgbmVlZHMgcG9zaXgudHJ1bmNhdGUoKSIpCisgICAgZGVmIHRlc3RfdHJ1bmNhdGUoc2VsZik6CisgICAgICAgIHdpdGggb3BlbihzdXBwb3J0LlRFU1RGTiwgJ3cnKSBhcyBmcDoKKyAgICAgICAgICAgIGZwLndyaXRlKCd0ZXN0JykKKyAgICAgICAgICAgIGZwLmZsdXNoKCkKKyAgICAgICAgcG9zaXgudHJ1bmNhdGUoc3VwcG9ydC5URVNURk4sIDApCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnZmV4ZWN2ZScpLCAidGVzdCBuZWVkcyBwb3NpeC5mZXhlY3ZlKCkiKQorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIob3MsICdmb3JrJyksICJ0ZXN0IG5lZWRzIG9zLmZvcmsoKSIpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ3dhaXRwaWQnKSwgInRlc3QgbmVlZHMgb3Mud2FpdHBpZCgpIikKKyAgICBkZWYgdGVzdF9mZXhlY3ZlKHNlbGYpOgorICAgICAgICBmcCA9IG9zLm9wZW4oc3lzLmV4ZWN1dGFibGUsIG9zLk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwaWQgPSBvcy5mb3JrKCkKKyAgICAgICAgICAgIGlmIHBpZCA9PSAwOgorICAgICAgICAgICAgICAgIG9zLmNoZGlyKG9zLnBhdGguc3BsaXQoc3lzLmV4ZWN1dGFibGUpWzBdKQorICAgICAgICAgICAgICAgIHBvc2l4LmZleGVjdmUoZnAsIFtzeXMuZXhlY3V0YWJsZSwgJy1jJywgJ3Bhc3MnXSwgb3MuZW52aXJvbikKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy53YWl0cGlkKHBpZCwgMCksIChwaWQsIDApKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgb3MuY2xvc2UoZnApCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnd2FpdGlkJyksICJ0ZXN0IG5lZWRzIHBvc2l4LndhaXRpZCgpIikKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnZm9yaycpLCAidGVzdCBuZWVkcyBvcy5mb3JrKCkiKQorICAgIGRlZiB0ZXN0X3dhaXRpZChzZWxmKToKKyAgICAgICAgcGlkID0gb3MuZm9yaygpCisgICAgICAgIGlmIHBpZCA9PSAwOgorICAgICAgICAgICAgb3MuY2hkaXIob3MucGF0aC5zcGxpdChzeXMuZXhlY3V0YWJsZSlbMF0pCisgICAgICAgICAgICBwb3NpeC5leGVjdmUoc3lzLmV4ZWN1dGFibGUsIFtzeXMuZXhlY3V0YWJsZSwgJy1jJywgJ3Bhc3MnXSwgb3MuZW52aXJvbikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJlcyA9IHBvc2l4LndhaXRpZChwb3NpeC5QX1BJRCwgcGlkLCBwb3NpeC5XRVhJVEVEKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwaWQsIHJlcy5zaV9waWQpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnbG9ja2YnKSwgInRlc3QgbmVlZHMgcG9zaXgubG9ja2YoKSIpCisgICAgZGVmIHRlc3RfbG9ja2Yoc2VsZik6CisgICAgICAgIGZkID0gb3Mub3BlbihzdXBwb3J0LlRFU1RGTiwgb3MuT19XUk9OTFkgfCBvcy5PX0NSRUFUKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBvcy53cml0ZShmZCwgYid0ZXN0JykKKyAgICAgICAgICAgIG9zLmxzZWVrKGZkLCAwLCBvcy5TRUVLX1NFVCkKKyAgICAgICAgICAgIHBvc2l4LmxvY2tmKGZkLCBwb3NpeC5GX0xPQ0ssIDQpCisgICAgICAgICAgICAjIHNlY3Rpb24gaXMgbG9ja2VkCisgICAgICAgICAgICBwb3NpeC5sb2NrZihmZCwgcG9zaXguRl9VTE9DSywgNCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3ByZWFkJyksICJ0ZXN0IG5lZWRzIHBvc2l4LnByZWFkKCkiKQorICAgIGRlZiB0ZXN0X3ByZWFkKHNlbGYpOgorICAgICAgICBmZCA9IG9zLm9wZW4oc3VwcG9ydC5URVNURk4sIG9zLk9fUkRXUiB8IG9zLk9fQ1JFQVQpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG9zLndyaXRlKGZkLCBiJ3Rlc3QnKQorICAgICAgICAgICAgb3MubHNlZWsoZmQsIDAsIG9zLlNFRUtfU0VUKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiJ2VzJywgcG9zaXgucHJlYWQoZmQsIDIsIDEpKQorICAgICAgICAgICAgIyB0aGUgZmlyc3QgcHJlYWQoKSBzaG91bGRuJ3QgZGlzdHVyYiB0aGUgZmlsZSBvZmZzZXQKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYid0ZScsIHBvc2l4LnJlYWQoZmQsIDIpKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgb3MuY2xvc2UoZmQpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAncHdyaXRlJyksICJ0ZXN0IG5lZWRzIHBvc2l4LnB3cml0ZSgpIikKKyAgICBkZWYgdGVzdF9wd3JpdGUoc2VsZik6CisgICAgICAgIGZkID0gb3Mub3BlbihzdXBwb3J0LlRFU1RGTiwgb3MuT19SRFdSIHwgb3MuT19DUkVBVCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3Mud3JpdGUoZmQsIGIndGVzdCcpCisgICAgICAgICAgICBvcy5sc2VlayhmZCwgMCwgb3MuU0VFS19TRVQpCisgICAgICAgICAgICBwb3NpeC5wd3JpdGUoZmQsIGIneHgnLCAxKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiJ3R4eHQnLCBwb3NpeC5yZWFkKGZkLCA0KSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3Bvc2l4X2ZhbGxvY2F0ZScpLAorICAgICAgICAidGVzdCBuZWVkcyBwb3NpeC5wb3NpeF9mYWxsb2NhdGUoKSIpCisgICAgZGVmIHRlc3RfcG9zaXhfZmFsbG9jYXRlKHNlbGYpOgorICAgICAgICBmZCA9IG9zLm9wZW4oc3VwcG9ydC5URVNURk4sIG9zLk9fV1JPTkxZIHwgb3MuT19DUkVBVCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcG9zaXgucG9zaXhfZmFsbG9jYXRlKGZkLCAwLCAxMCkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgaW5zdDoKKyAgICAgICAgICAgICMgaXNzdWUxMDgxMiwgWkZTIGRvZXNuJ3QgYXBwZWFyIHRvIHN1cHBvcnQgcG9zaXhfZmFsbG9jYXRlLAorICAgICAgICAgICAgIyBzbyBza2lwIFNvbGFyaXMtYmFzZWQgc2luY2UgdGhleSBhcmUgbGlrZWx5IHRvIGhhdmUgWkZTLgorICAgICAgICAgICAgaWYgaW5zdC5lcnJubyAhPSBlcnJuby5FSU5WQUwgb3Igbm90IHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCJzdW5vcyIpOgorICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jbG9zZShmZCkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdwb3NpeF9mYWR2aXNlJyksCisgICAgICAgICJ0ZXN0IG5lZWRzIHBvc2l4LnBvc2l4X2ZhZHZpc2UoKSIpCisgICAgZGVmIHRlc3RfcG9zaXhfZmFkdmlzZShzZWxmKToKKyAgICAgICAgZmQgPSBvcy5vcGVuKHN1cHBvcnQuVEVTVEZOLCBvcy5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcG9zaXgucG9zaXhfZmFkdmlzZShmZCwgMCwgMCwgcG9zaXguUE9TSVhfRkFEVl9XSUxMTkVFRCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ2Z1dGltZXMnKSwgInRlc3QgbmVlZHMgcG9zaXguZnV0aW1lcygpIikKKyAgICBkZWYgdGVzdF9mdXRpbWVzKHNlbGYpOgorICAgICAgICBub3cgPSB0aW1lLnRpbWUoKQorICAgICAgICBmZCA9IG9zLm9wZW4oc3VwcG9ydC5URVNURk4sIG9zLk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwb3NpeC5mdXRpbWVzKGZkLCBOb25lKQorICAgICAgICAgICAgcG9zaXguZnV0aW1lcyhmZCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXguZnV0aW1lcywgZmQsIChOb25lLCBOb25lKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXguZnV0aW1lcywgZmQsIChub3csIE5vbmUpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC5mdXRpbWVzLCBmZCwgKE5vbmUsIG5vdykpCisgICAgICAgICAgICBwb3NpeC5mdXRpbWVzKGZkLCAoaW50KG5vdyksIGludChub3cpKSkKKyAgICAgICAgICAgIHBvc2l4LmZ1dGltZXMoZmQsIChub3csIG5vdykpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBvcy5jbG9zZShmZCkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdsdXRpbWVzJyksICJ0ZXN0IG5lZWRzIHBvc2l4Lmx1dGltZXMoKSIpCisgICAgZGVmIHRlc3RfbHV0aW1lcyhzZWxmKToKKyAgICAgICAgbm93ID0gdGltZS50aW1lKCkKKyAgICAgICAgcG9zaXgubHV0aW1lcyhzdXBwb3J0LlRFU1RGTiwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC5sdXRpbWVzLCBzdXBwb3J0LlRFU1RGTiwgKE5vbmUsIE5vbmUpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4Lmx1dGltZXMsIHN1cHBvcnQuVEVTVEZOLCAobm93LCBOb25lKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC5sdXRpbWVzLCBzdXBwb3J0LlRFU1RGTiwgKE5vbmUsIG5vdykpCisgICAgICAgIHBvc2l4Lmx1dGltZXMoc3VwcG9ydC5URVNURk4sIChpbnQobm93KSwgaW50KG5vdykpKQorICAgICAgICBwb3NpeC5sdXRpbWVzKHN1cHBvcnQuVEVTVEZOLCAobm93LCBub3cpKQorICAgICAgICBwb3NpeC5sdXRpbWVzKHN1cHBvcnQuVEVTVEZOKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ2Z1dGltZW5zJyksICJ0ZXN0IG5lZWRzIHBvc2l4LmZ1dGltZW5zKCkiKQorICAgIGRlZiB0ZXN0X2Z1dGltZW5zKHNlbGYpOgorICAgICAgICBub3cgPSB0aW1lLnRpbWUoKQorICAgICAgICBmZCA9IG9zLm9wZW4oc3VwcG9ydC5URVNURk4sIG9zLk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LmZ1dGltZW5zLCBmZCwgKE5vbmUsIE5vbmUpLCAoTm9uZSwgTm9uZSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LmZ1dGltZW5zLCBmZCwgKG5vdywgMCksIE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LmZ1dGltZW5zLCBmZCwgTm9uZSwgKG5vdywgMCkpCisgICAgICAgICAgICBwb3NpeC5mdXRpbWVucyhmZCwgKGludChub3cpLCBpbnQoKG5vdyAtIGludChub3cpKSAqIDFlOSkpLAorICAgICAgICAgICAgICAgICAgICAoaW50KG5vdyksIGludCgobm93IC0gaW50KG5vdykpICogMWU5KSkpCisgICAgICAgICAgICBwb3NpeC5mdXRpbWVucyhmZCkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3dyaXRldicpLCAidGVzdCBuZWVkcyBwb3NpeC53cml0ZXYoKSIpCisgICAgZGVmIHRlc3Rfd3JpdGV2KHNlbGYpOgorICAgICAgICBmZCA9IG9zLm9wZW4oc3VwcG9ydC5URVNURk4sIG9zLk9fUkRXUiB8IG9zLk9fQ1JFQVQpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG9zLndyaXRldihmZCwgKGIndGVzdDEnLCBiJ3R0MicsIGIndDMnKSkKKyAgICAgICAgICAgIG9zLmxzZWVrKGZkLCAwLCBvcy5TRUVLX1NFVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYid0ZXN0MXR0MnQzJywgcG9zaXgucmVhZChmZCwgMTApKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgb3MuY2xvc2UoZmQpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAncmVhZHYnKSwgInRlc3QgbmVlZHMgcG9zaXgucmVhZHYoKSIpCisgICAgZGVmIHRlc3RfcmVhZHYoc2VsZik6CisgICAgICAgIGZkID0gb3Mub3BlbihzdXBwb3J0LlRFU1RGTiwgb3MuT19SRFdSIHwgb3MuT19DUkVBVCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgb3Mud3JpdGUoZmQsIGIndGVzdDF0dDJ0MycpCisgICAgICAgICAgICBvcy5sc2VlayhmZCwgMCwgb3MuU0VFS19TRVQpCisgICAgICAgICAgICBidWYgPSBbYnl0ZWFycmF5KGkpIGZvciBpIGluIFs1LCAzLCAyXV0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocG9zaXgucmVhZHYoZmQsIGJ1ZiksIDEwKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChbYid0ZXN0MScsIGIndHQyJywgYid0MyddLCBbYnl0ZXMoaSkgZm9yIGkgaW4gYnVmXSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorCiAgICAgZGVmIHRlc3RfZHVwKHNlbGYpOgogICAgICAgICBpZiBoYXNhdHRyKHBvc2l4LCAnZHVwJyk6CiAgICAgICAgICAgICBmcCA9IG9wZW4oc3VwcG9ydC5URVNURk4pCkBAIC0xNjIsNiArMzE2LDEzIEBACiAgICAgICAgICAgICAgICAgZnAxLmNsb3NlKCkKICAgICAgICAgICAgICAgICBmcDIuY2xvc2UoKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ09fQ0xPRVhFQycpLCAibmVlZHMgb3MuT19DTE9FWEVDIikKKyAgICBAc3VwcG9ydC5yZXF1aXJlc19saW51eF92ZXJzaW9uKDIsIDYsIDIzKQorICAgIGRlZiB0ZXN0X29zY2xvZXhlYyhzZWxmKToKKyAgICAgICAgZmQgPSBvcy5vcGVuKHN1cHBvcnQuVEVTVEZOLCBvcy5PX1JET05MWXxvcy5PX0NMT0VYRUMpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChvcy5jbG9zZSwgZmQpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmY250bC5mY250bChmZCwgZmNudGwuRl9HRVRGRCkgJiBmY250bC5GRF9DTE9FWEVDKQorCiAgICAgZGVmIHRlc3Rfb3NleGxvY2soc2VsZik6CiAgICAgICAgIGlmIGhhc2F0dHIocG9zaXgsICJPX0VYTE9DSyIpOgogICAgICAgICAgICAgZmQgPSBvcy5vcGVuKHN1cHBvcnQuVEVTVEZOLApAQCAtMjU0LDcgKzQxNSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHBvc2l4LmNob3duLCBzdXBwb3J0LlRFU1RGTiwgLTEsIC0xKQogCiAgICAgICAgICMgcmUtY3JlYXRlIHRoZSBmaWxlCi0gICAgICAgIG9wZW4oc3VwcG9ydC5URVNURk4sICd3JykuY2xvc2UoKQorICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKHN1cHBvcnQuVEVTVEZOKQogICAgICAgICBzZWxmLl90ZXN0X2FsbF9jaG93bl9jb21tb24ocG9zaXguY2hvd24sIHN1cHBvcnQuVEVTVEZOKQogCiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ2ZjaG93bicpLCAidGVzdCBuZWVkcyBvcy5mY2hvd24oKSIpCkBAIC0yOTAsNiArNDUxLDIwIEBACiAgICAgICAgIGlmIGhhc2F0dHIocG9zaXgsICdsaXN0ZGlyJyk6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoc3VwcG9ydC5URVNURk4gaW4gcG9zaXgubGlzdGRpcigpKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ2ZkbGlzdGRpcicpLCAidGVzdCBuZWVkcyBwb3NpeC5mZGxpc3RkaXIoKSIpCisgICAgZGVmIHRlc3RfZmRsaXN0ZGlyKHNlbGYpOgorICAgICAgICBmID0gcG9zaXgub3Blbihwb3NpeC5nZXRjd2QoKSwgcG9zaXguT19SRE9OTFkpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChwb3NpeC5jbG9zZSwgZikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIHNvcnRlZChwb3NpeC5saXN0ZGlyKCcuJykpLAorICAgICAgICAgICAgc29ydGVkKHBvc2l4LmZkbGlzdGRpcihmKSkKKyAgICAgICAgICAgICkKKyAgICAgICAgIyBDaGVjayB0aGF0IHRoZSBmZCBvZmZzZXQgd2FzIHJlc2V0IChpc3N1ZSAjMTM3MzkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBzb3J0ZWQocG9zaXgubGlzdGRpcignLicpKSwKKyAgICAgICAgICAgIHNvcnRlZChwb3NpeC5mZGxpc3RkaXIoZikpCisgICAgICAgICAgICApCisKICAgICBkZWYgdGVzdF9hY2Nlc3Moc2VsZik6CiAgICAgICAgIGlmIGhhc2F0dHIocG9zaXgsICdhY2Nlc3MnKToKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShwb3NpeC5hY2Nlc3Moc3VwcG9ydC5URVNURk4sIG9zLlJfT0spKQpAQCAtMzEwLDYgKzQ4NSwzMiBAQAogICAgICAgICAgICAgb3MuY2xvc2UocmVhZGVyKQogICAgICAgICAgICAgb3MuY2xvc2Uod3JpdGVyKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ3BpcGUyJyksICJ0ZXN0IG5lZWRzIG9zLnBpcGUyKCkiKQorICAgIEBzdXBwb3J0LnJlcXVpcmVzX2xpbnV4X3ZlcnNpb24oMiwgNiwgMjcpCisgICAgZGVmIHRlc3RfcGlwZTIoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgb3MucGlwZTIsICdERUFEQkVFRicpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgb3MucGlwZTIsIDAsIDApCisKKyAgICAgICAgIyB0cnkgY2FsbGluZyB3aXRoIGZsYWdzID0gMCwgbGlrZSBvcy5waXBlKCkKKyAgICAgICAgciwgdyA9IG9zLnBpcGUyKDApCisgICAgICAgIG9zLmNsb3NlKHIpCisgICAgICAgIG9zLmNsb3NlKHcpCisKKyAgICAgICAgIyB0ZXN0IGZsYWdzCisgICAgICAgIHIsIHcgPSBvcy5waXBlMihvcy5PX0NMT0VYRUN8b3MuT19OT05CTE9DSykKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG9zLmNsb3NlLCByKQorICAgICAgICBzZWxmLmFkZENsZWFudXAob3MuY2xvc2UsIHcpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmY250bC5mY250bChyLCBmY250bC5GX0dFVEZEKSAmIGZjbnRsLkZEX0NMT0VYRUMpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmY250bC5mY250bCh3LCBmY250bC5GX0dFVEZEKSAmIGZjbnRsLkZEX0NMT0VYRUMpCisgICAgICAgICMgdHJ5IHJlYWRpbmcgZnJvbSBhbiBlbXB0eSBwaXBlOiB0aGlzIHNob3VsZCBmYWlsLCBub3QgYmxvY2sKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgb3MucmVhZCwgciwgMSkKKyAgICAgICAgIyB0cnkgYSB3cml0ZSBiaWcgZW5vdWdoIHRvIGZpbGwtdXAgdGhlIHBpcGU6IHRoaXMgc2hvdWxkIGVpdGhlcgorICAgICAgICAjIGZhaWwgb3IgcGVyZm9ybSBhIHBhcnRpYWwgd3JpdGUsIG5vdCBibG9jaworICAgICAgICB0cnk6CisgICAgICAgICAgICBvcy53cml0ZSh3LCBiJ3gnICogc3VwcG9ydC5QSVBFX01BWF9TSVpFKQorICAgICAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKwogICAgIGRlZiB0ZXN0X3V0aW1lKHNlbGYpOgogICAgICAgICBpZiBoYXNhdHRyKHBvc2l4LCAndXRpbWUnKToKICAgICAgICAgICAgIG5vdyA9IHRpbWUudGltZSgpCkBAIC00MTAsNiArNjExLDIxIEBACiAgICAgICAgICAgICAgICAgb3MuY2hkaXIoY3VyZGlyKQogICAgICAgICAgICAgICAgIHN1cHBvcnQucm10cmVlKGJhc2VfcGF0aCkKIAorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdnZXRncm91cGxpc3QnKSwgInRlc3QgbmVlZHMgcG9zaXguZ2V0Z3JvdXBsaXN0KCkiKQorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocHdkLCAnZ2V0cHd1aWQnKSwgInRlc3QgbmVlZHMgcHdkLmdldHB3dWlkKCkiKQorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIob3MsICdnZXR1aWQnKSwgInRlc3QgbmVlZHMgb3MuZ2V0dWlkKCkiKQorICAgIGRlZiB0ZXN0X2dldGdyb3VwbGlzdChzZWxmKToKKyAgICAgICAgd2l0aCBvcy5wb3BlbignaWQgLUcnKSBhcyBpZGc6CisgICAgICAgICAgICBncm91cHMgPSBpZGcucmVhZCgpLnN0cmlwKCkKKworICAgICAgICBpZiBub3QgZ3JvdXBzOgorICAgICAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoIm5lZWQgd29ya2luZyAnaWQgLUcnIikKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgc2V0KFtpbnQoeCkgZm9yIHggaW4gZ3JvdXBzLnNwbGl0KCldKSwKKyAgICAgICAgICAgIHNldChwb3NpeC5nZXRncm91cGxpc3QocHdkLmdldHB3dWlkKG9zLmdldHVpZCgpKVswXSwKKyAgICAgICAgICAgICAgICBwd2QuZ2V0cHd1aWQob3MuZ2V0dWlkKCkpWzNdKSkpCisKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKG9zLCAnZ2V0ZWdpZCcpLCAidGVzdCBuZWVkcyBvcy5nZXRlZ2lkKCkiKQogICAgIGRlZiB0ZXN0X2dldGdyb3VwcyhzZWxmKToKICAgICAgICAgd2l0aCBvcy5wb3BlbignaWQgLUcnKSBhcyBpZGc6CkBAIC00MjYsNiArNjQyLDM2NiBAQAogICAgICAgICAgICAgICAgIHNldChbaW50KHgpIGZvciB4IGluIGdyb3Vwcy5zcGxpdCgpXSksCiAgICAgICAgICAgICAgICAgc2V0KHBvc2l4LmdldGdyb3VwcygpICsgW3Bvc2l4LmdldGVnaWQoKV0pKQogCisgICAgIyB0ZXN0cyBmb3IgdGhlIHBvc2l4ICphdCBmdW5jdGlvbnMgZm9sbG93CisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnZmFjY2Vzc2F0JyksICJ0ZXN0IG5lZWRzIHBvc2l4LmZhY2Nlc3NhdCgpIikKKyAgICBkZWYgdGVzdF9mYWNjZXNzYXQoc2VsZik6CisgICAgICAgIGYgPSBwb3NpeC5vcGVuKHBvc2l4LmdldGN3ZCgpLCBwb3NpeC5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHBvc2l4LmZhY2Nlc3NhdChmLCBzdXBwb3J0LlRFU1RGTiwgb3MuUl9PSykpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBwb3NpeC5jbG9zZShmKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ2ZjaG1vZGF0JyksICJ0ZXN0IG5lZWRzIHBvc2l4LmZjaG1vZGF0KCkiKQorICAgIGRlZiB0ZXN0X2ZjaG1vZGF0KHNlbGYpOgorICAgICAgICBvcy5jaG1vZChzdXBwb3J0LlRFU1RGTiwgc3RhdC5TX0lSVVNSKQorCisgICAgICAgIGYgPSBwb3NpeC5vcGVuKHBvc2l4LmdldGN3ZCgpLCBwb3NpeC5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcG9zaXguZmNobW9kYXQoZiwgc3VwcG9ydC5URVNURk4sIHN0YXQuU19JUlVTUiB8IHN0YXQuU19JV1VTUikKKworICAgICAgICAgICAgcyA9IHBvc2l4LnN0YXQoc3VwcG9ydC5URVNURk4pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNbMF0gJiBzdGF0LlNfSVJXWFUsIHN0YXQuU19JUlVTUiB8IHN0YXQuU19JV1VTUikKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnZmNob3duYXQnKSwgInRlc3QgbmVlZHMgcG9zaXguZmNob3duYXQoKSIpCisgICAgZGVmIHRlc3RfZmNob3duYXQoc2VsZik6CisgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKHN1cHBvcnQuVEVTVEZOKQorCisgICAgICAgIGYgPSBwb3NpeC5vcGVuKHBvc2l4LmdldGN3ZCgpLCBwb3NpeC5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcG9zaXguZmNob3duYXQoZiwgc3VwcG9ydC5URVNURk4sIG9zLmdldHVpZCgpLCBvcy5nZXRnaWQoKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnZnN0YXRhdCcpLCAidGVzdCBuZWVkcyBwb3NpeC5mc3RhdGF0KCkiKQorICAgIGRlZiB0ZXN0X2ZzdGF0YXQoc2VsZik6CisgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICB3aXRoIG9wZW4oc3VwcG9ydC5URVNURk4sICd3JykgYXMgb3V0ZmlsZToKKyAgICAgICAgICAgIG91dGZpbGUud3JpdGUoInRlc3RsaW5lXG4iKQorCisgICAgICAgIGYgPSBwb3NpeC5vcGVuKHBvc2l4LmdldGN3ZCgpLCBwb3NpeC5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgczEgPSBwb3NpeC5zdGF0KHN1cHBvcnQuVEVTVEZOKQorICAgICAgICAgICAgczIgPSBwb3NpeC5mc3RhdGF0KGYsIHN1cHBvcnQuVEVTVEZOKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzMSwgczIpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBwb3NpeC5jbG9zZShmKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ2Z1dGltZXNhdCcpLCAidGVzdCBuZWVkcyBwb3NpeC5mdXRpbWVzYXQoKSIpCisgICAgZGVmIHRlc3RfZnV0aW1lc2F0KHNlbGYpOgorICAgICAgICBmID0gcG9zaXgub3Blbihwb3NpeC5nZXRjd2QoKSwgcG9zaXguT19SRE9OTFkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG5vdyA9IHRpbWUudGltZSgpCisgICAgICAgICAgICBwb3NpeC5mdXRpbWVzYXQoZiwgc3VwcG9ydC5URVNURk4sIE5vbmUpCisgICAgICAgICAgICBwb3NpeC5mdXRpbWVzYXQoZiwgc3VwcG9ydC5URVNURk4pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LmZ1dGltZXNhdCwgZiwgc3VwcG9ydC5URVNURk4sIChOb25lLCBOb25lKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXguZnV0aW1lc2F0LCBmLCBzdXBwb3J0LlRFU1RGTiwgKG5vdywgTm9uZSkpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LmZ1dGltZXNhdCwgZiwgc3VwcG9ydC5URVNURk4sIChOb25lLCBub3cpKQorICAgICAgICAgICAgcG9zaXguZnV0aW1lc2F0KGYsIHN1cHBvcnQuVEVTVEZOLCAoaW50KG5vdyksIGludChub3cpKSkKKyAgICAgICAgICAgIHBvc2l4LmZ1dGltZXNhdChmLCBzdXBwb3J0LlRFU1RGTiwgKG5vdywgbm93KSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnbGlua2F0JyksICJ0ZXN0IG5lZWRzIHBvc2l4LmxpbmthdCgpIikKKyAgICBkZWYgdGVzdF9saW5rYXQoc2VsZik6CisgICAgICAgIGYgPSBwb3NpeC5vcGVuKHBvc2l4LmdldGN3ZCgpLCBwb3NpeC5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcG9zaXgubGlua2F0KGYsIHN1cHBvcnQuVEVTVEZOLCBmLCBzdXBwb3J0LlRFU1RGTiArICdsaW5rJykKKyAgICAgICAgICAgICMgc2hvdWxkIGhhdmUgc2FtZSBpbm9kZXMKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocG9zaXguc3RhdChzdXBwb3J0LlRFU1RGTilbMV0sCisgICAgICAgICAgICAgICAgcG9zaXguc3RhdChzdXBwb3J0LlRFU1RGTiArICdsaW5rJylbMV0pCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBwb3NpeC5jbG9zZShmKQorICAgICAgICAgICAgc3VwcG9ydC51bmxpbmsoc3VwcG9ydC5URVNURk4gKyAnbGluaycpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnbWtkaXJhdCcpLCAidGVzdCBuZWVkcyBwb3NpeC5ta2RpcmF0KCkiKQorICAgIGRlZiB0ZXN0X21rZGlyYXQoc2VsZik6CisgICAgICAgIGYgPSBwb3NpeC5vcGVuKHBvc2l4LmdldGN3ZCgpLCBwb3NpeC5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcG9zaXgubWtkaXJhdChmLCBzdXBwb3J0LlRFU1RGTiArICdkaXInKQorICAgICAgICAgICAgcG9zaXguc3RhdChzdXBwb3J0LlRFU1RGTiArICdkaXInKSAjIHNob3VsZCBub3QgcmFpc2UgZXhjZXB0aW9uCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBwb3NpeC5jbG9zZShmKQorICAgICAgICAgICAgc3VwcG9ydC5ybXRyZWUoc3VwcG9ydC5URVNURk4gKyAnZGlyJykKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdta25vZGF0JykgYW5kIGhhc2F0dHIoc3RhdCwgJ1NfSUZJRk8nKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiZG9uJ3QgaGF2ZSBta25vZGF0KCkvU19JRklGTyIpCisgICAgZGVmIHRlc3RfbWtub2RhdChzZWxmKToKKyAgICAgICAgIyBUZXN0IHVzaW5nIG1rbm9kYXQoKSB0byBjcmVhdGUgYSBGSUZPICh0aGUgb25seSB1c2Ugc3BlY2lmaWVkCisgICAgICAgICMgYnkgUE9TSVgpLgorICAgICAgICBzdXBwb3J0LnVubGluayhzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgbW9kZSA9IHN0YXQuU19JRklGTyB8IHN0YXQuU19JUlVTUiB8IHN0YXQuU19JV1VTUgorICAgICAgICBmID0gcG9zaXgub3Blbihwb3NpeC5nZXRjd2QoKSwgcG9zaXguT19SRE9OTFkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHBvc2l4Lm1rbm9kYXQoZiwgc3VwcG9ydC5URVNURk4sIG1vZGUsIDApCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICAjIFNvbWUgb2xkIHN5c3RlbXMgZG9uJ3QgYWxsb3cgdW5wcml2aWxlZ2VkIHVzZXJzIHRvIHVzZQorICAgICAgICAgICAgIyBta25vZCgpLCBvciBvbmx5IHN1cHBvcnQgY3JlYXRpbmcgZGV2aWNlIG5vZGVzLgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbihlLmVycm5vLCAoZXJybm8uRVBFUk0sIGVycm5vLkVJTlZBTCkpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoc3RhdC5TX0lTRklGTyhwb3NpeC5zdGF0KHN1cHBvcnQuVEVTVEZOKS5zdF9tb2RlKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnb3BlbmF0JyksICJ0ZXN0IG5lZWRzIHBvc2l4Lm9wZW5hdCgpIikKKyAgICBkZWYgdGVzdF9vcGVuYXQoc2VsZik6CisgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOKQorICAgICAgICB3aXRoIG9wZW4oc3VwcG9ydC5URVNURk4sICd3JykgYXMgb3V0ZmlsZToKKyAgICAgICAgICAgIG91dGZpbGUud3JpdGUoInRlc3RsaW5lXG4iKQorICAgICAgICBhID0gcG9zaXgub3Blbihwb3NpeC5nZXRjd2QoKSwgcG9zaXguT19SRE9OTFkpCisgICAgICAgIGIgPSBwb3NpeC5vcGVuYXQoYSwgc3VwcG9ydC5URVNURk4sIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICByZXMgPSBwb3NpeC5yZWFkKGIsIDkpLmRlY29kZShlbmNvZGluZz0idXRmLTgiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgidGVzdGxpbmVcbiIsIHJlcykKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGEpCisgICAgICAgICAgICBwb3NpeC5jbG9zZShiKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3JlYWRsaW5rYXQnKSwgInRlc3QgbmVlZHMgcG9zaXgucmVhZGxpbmthdCgpIikKKyAgICBkZWYgdGVzdF9yZWFkbGlua2F0KHNlbGYpOgorICAgICAgICBvcy5zeW1saW5rKHN1cHBvcnQuVEVTVEZOLCBzdXBwb3J0LlRFU1RGTiArICdsaW5rJykKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBvc2l4LnJlYWRsaW5rKHN1cHBvcnQuVEVTVEZOICsgJ2xpbmsnKSwKKyAgICAgICAgICAgICAgICBwb3NpeC5yZWFkbGlua2F0KGYsIHN1cHBvcnQuVEVTVEZOICsgJ2xpbmsnKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHN1cHBvcnQudW5saW5rKHN1cHBvcnQuVEVTVEZOICsgJ2xpbmsnKQorICAgICAgICAgICAgcG9zaXguY2xvc2UoZikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICdyZW5hbWVhdCcpLCAidGVzdCBuZWVkcyBwb3NpeC5yZW5hbWVhdCgpIikKKyAgICBkZWYgdGVzdF9yZW5hbWVhdChzZWxmKToKKyAgICAgICAgc3VwcG9ydC51bmxpbmsoc3VwcG9ydC5URVNURk4pCisgICAgICAgIHN1cHBvcnQuY3JlYXRlX2VtcHR5X2ZpbGUoc3VwcG9ydC5URVNURk4gKyAncmVuJykKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwb3NpeC5yZW5hbWVhdChmLCBzdXBwb3J0LlRFU1RGTiArICdyZW4nLCBmLCBzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgZXhjZXB0OgorICAgICAgICAgICAgcG9zaXgucmVuYW1lKHN1cHBvcnQuVEVTVEZOICsgJ3JlbicsIHN1cHBvcnQuVEVTVEZOKQorICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHBvc2l4LnN0YXQoc3VwcG9ydC5URVNURk4pICMgc2hvdWxkIG5vdCB0aHJvdyBleGNlcHRpb24KKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnc3ltbGlua2F0JyksICJ0ZXN0IG5lZWRzIHBvc2l4LnN5bWxpbmthdCgpIikKKyAgICBkZWYgdGVzdF9zeW1saW5rYXQoc2VsZik6CisgICAgICAgIGYgPSBwb3NpeC5vcGVuKHBvc2l4LmdldGN3ZCgpLCBwb3NpeC5PX1JET05MWSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcG9zaXguc3ltbGlua2F0KHN1cHBvcnQuVEVTVEZOLCBmLCBzdXBwb3J0LlRFU1RGTiArICdsaW5rJykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocG9zaXgucmVhZGxpbmsoc3VwcG9ydC5URVNURk4gKyAnbGluaycpLCBzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHBvc2l4LmNsb3NlKGYpCisgICAgICAgICAgICBzdXBwb3J0LnVubGluayhzdXBwb3J0LlRFU1RGTiArICdsaW5rJykKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICd1bmxpbmthdCcpLCAidGVzdCBuZWVkcyBwb3NpeC51bmxpbmthdCgpIikKKyAgICBkZWYgdGVzdF91bmxpbmthdChzZWxmKToKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKHN1cHBvcnQuVEVTVEZOICsgJ2RlbCcpCisgICAgICAgIHBvc2l4LnN0YXQoc3VwcG9ydC5URVNURk4gKyAnZGVsJykgIyBzaG91bGQgbm90IHRocm93IGV4Y2VwdGlvbgorICAgICAgICB0cnk6CisgICAgICAgICAgICBwb3NpeC51bmxpbmthdChmLCBzdXBwb3J0LlRFU1RGTiArICdkZWwnKQorICAgICAgICBleGNlcHQ6CisgICAgICAgICAgICBzdXBwb3J0LnVubGluayhzdXBwb3J0LlRFU1RGTiArICdkZWwnKQorICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHBvc2l4LnN0YXQsIHN1cHBvcnQuVEVTVEZOICsgJ2xpbmsnKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgcG9zaXguY2xvc2UoZikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICd1dGltZW5zYXQnKSwgInRlc3QgbmVlZHMgcG9zaXgudXRpbWVuc2F0KCkiKQorICAgIGRlZiB0ZXN0X3V0aW1lbnNhdChzZWxmKToKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBub3cgPSB0aW1lLnRpbWUoKQorICAgICAgICAgICAgcG9zaXgudXRpbWVuc2F0KGYsIHN1cHBvcnQuVEVTVEZOLCBOb25lLCBOb25lKQorICAgICAgICAgICAgcG9zaXgudXRpbWVuc2F0KGYsIHN1cHBvcnQuVEVTVEZOKQorICAgICAgICAgICAgcG9zaXgudXRpbWVuc2F0KGYsIHN1cHBvcnQuVEVTVEZOLCBmbGFncz1vcy5BVF9TWU1MSU5LX05PRk9MTE9XKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC51dGltZW5zYXQsIGYsIHN1cHBvcnQuVEVTVEZOLCAoTm9uZSwgTm9uZSksIChOb25lLCBOb25lKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgcG9zaXgudXRpbWVuc2F0LCBmLCBzdXBwb3J0LlRFU1RGTiwgKG5vdywgMCksIE5vbmUpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LnV0aW1lbnNhdCwgZiwgc3VwcG9ydC5URVNURk4sIE5vbmUsIChub3csIDApKQorICAgICAgICAgICAgcG9zaXgudXRpbWVuc2F0KGYsIHN1cHBvcnQuVEVTVEZOLCAoaW50KG5vdyksIGludCgobm93IC0gaW50KG5vdykpICogMWU5KSksCisgICAgICAgICAgICAgICAgICAgIChpbnQobm93KSwgaW50KChub3cgLSBpbnQobm93KSkgKiAxZTkpKSkKKyAgICAgICAgICAgIHBvc2l4LnV0aW1lbnNhdChkaXJmZD1mLCBwYXRoPXN1cHBvcnQuVEVTVEZOLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0aW1lPShpbnQobm93KSwgaW50KChub3cgLSBpbnQobm93KSkgKiAxZTkpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtdGltZT0oaW50KG5vdyksIGludCgobm93IC0gaW50KG5vdykpICogMWU5KSkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBwb3NpeC5jbG9zZShmKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ21rZmlmb2F0JyksICJkb24ndCBoYXZlIG1rZmlmb2F0KCkiKQorICAgIGRlZiB0ZXN0X21rZmlmb2F0KHNlbGYpOgorICAgICAgICBzdXBwb3J0LnVubGluayhzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgZiA9IHBvc2l4Lm9wZW4ocG9zaXguZ2V0Y3dkKCksIHBvc2l4Lk9fUkRPTkxZKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwb3NpeC5ta2ZpZm9hdChmLCBzdXBwb3J0LlRFU1RGTiwgc3RhdC5TX0lSVVNSIHwgc3RhdC5TX0lXVVNSKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHN0YXQuU19JU0ZJRk8ocG9zaXguc3RhdChzdXBwb3J0LlRFU1RGTikuc3RfbW9kZSkpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBwb3NpeC5jbG9zZShmKQorCisgICAgcmVxdWlyZXNfc2NoZWRfaCA9IHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ3NjaGVkX3lpZWxkJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRvbid0IGhhdmUgc2NoZWR1bGluZyBzdXBwb3J0IikKKyAgICByZXF1aXJlc19zY2hlZF9hZmZpbml0eSA9IHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihwb3NpeCwgJ2NwdV9zZXQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRvbid0IGhhdmUgc2NoZWQgYWZmaW5pdHkgc3VwcG9ydCIpCisKKyAgICBAcmVxdWlyZXNfc2NoZWRfaAorICAgIGRlZiB0ZXN0X3NjaGVkX3lpZWxkKHNlbGYpOgorICAgICAgICAjIFRoaXMgaGFzIG5vIGVycm9yIGNvbmRpdGlvbnMgKGF0IGxlYXN0IG9uIExpbnV4KS4KKyAgICAgICAgcG9zaXguc2NoZWRfeWllbGQoKQorCisgICAgQHJlcXVpcmVzX3NjaGVkX2gKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnc2NoZWRfZ2V0X3ByaW9yaXR5X21heCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJyZXF1aXJlcyBzY2hlZF9nZXRfcHJpb3JpdHlfbWF4KCkiKQorICAgIGRlZiB0ZXN0X3NjaGVkX3ByaW9yaXR5KHNlbGYpOgorICAgICAgICAjIFJvdW5kLXJvYmluIHVzdWFsbHkgaGFzIGludGVyZXN0aW5nIHByaW9yaXRpZXMuCisgICAgICAgIHBvbCA9IHBvc2l4LlNDSEVEX1JSCisgICAgICAgIGxvID0gcG9zaXguc2NoZWRfZ2V0X3ByaW9yaXR5X21pbihwb2wpCisgICAgICAgIGhpID0gcG9zaXguc2NoZWRfZ2V0X3ByaW9yaXR5X21heChwb2wpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShsbywgaW50KQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoaGksIGludCkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwoaGksIGxvKQorICAgICAgICAjIE9TWCBldmlkZW50bHkganVzdCByZXR1cm5zIDE1IHdpdGhvdXQgY2hlY2tpbmcgdGhlIGFyZ3VtZW50LgorICAgICAgICBpZiBzeXMucGxhdGZvcm0gIT0gImRhcndpbiI6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBwb3NpeC5zY2hlZF9nZXRfcHJpb3JpdHlfbWluLCAtMjMpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBwb3NpeC5zY2hlZF9nZXRfcHJpb3JpdHlfbWF4LCAtMjMpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHBvc2l4LCAnc2NoZWRfc2V0c2NoZWR1bGVyJyksICJjYW4ndCBjaGFuZ2Ugc2NoZWR1bGVyIikKKyAgICBkZWYgdGVzdF9nZXRfYW5kX3NldF9zY2hlZHVsZXJfYW5kX3BhcmFtKHNlbGYpOgorICAgICAgICBwb3NzaWJsZV9zY2hlZHVsZXJzID0gW3NjaGVkIGZvciBuYW1lLCBzY2hlZCBpbiBwb3NpeC5fX2RpY3RfXy5pdGVtcygpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgbmFtZS5zdGFydHN3aXRoKCJTQ0hFRF8iKV0KKyAgICAgICAgbWluZSA9IHBvc2l4LnNjaGVkX2dldHNjaGVkdWxlcigwKQorICAgICAgICBzZWxmLmFzc2VydEluKG1pbmUsIHBvc3NpYmxlX3NjaGVkdWxlcnMpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHBhcmVudCA9IHBvc2l4LnNjaGVkX2dldHNjaGVkdWxlcihvcy5nZXRwcGlkKCkpCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVQRVJNOgorICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzZWxmLmFzc2VydEluKHBhcmVudCwgcG9zc2libGVfc2NoZWR1bGVycykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgcG9zaXguc2NoZWRfZ2V0c2NoZWR1bGVyLCAtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgcG9zaXguc2NoZWRfZ2V0cGFyYW0sIC0xKQorICAgICAgICBwYXJhbSA9IHBvc2l4LnNjaGVkX2dldHBhcmFtKDApCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShwYXJhbS5zY2hlZF9wcmlvcml0eSwgaW50KQorICAgICAgICB0cnk6CisgICAgICAgICAgICBwb3NpeC5zY2hlZF9zZXRzY2hlZHVsZXIoMCwgbWluZSwgcGFyYW0pCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICBpZiBlLmVycm5vICE9IGVycm5vLkVQRVJNOgorICAgICAgICAgICAgICAgIHJhaXNlCisKKyAgICAgICAgIyBQT1NJWCBzdGF0ZXMgdGhhdCBjYWxsaW5nIHNjaGVkX3NldHBhcmFtKCkgb24gYSBwcm9jZXNzIHdpdGggYQorICAgICAgICAjIHNjaGVkdWxpbmcgcG9saWN5IG90aGVyIHRoYW4gU0NIRURfRklGTyBvciBTQ0hFRF9SUiBpcworICAgICAgICAjIGltcGxlbWVudGF0aW9uLWRlZmluZWQ6IEZyZWVCU0QgcmV0dXJucyBFSU5WQUwuCisgICAgICAgIGlmIG5vdCBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnZnJlZWJzZCcpOgorICAgICAgICAgICAgcG9zaXguc2NoZWRfc2V0cGFyYW0oMCwgcGFyYW0pCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBwb3NpeC5zY2hlZF9zZXRwYXJhbSwgLTEsIHBhcmFtKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHBvc2l4LnNjaGVkX3NldHNjaGVkdWxlciwgLTEsIG1pbmUsIHBhcmFtKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBvc2l4LnNjaGVkX3NldHNjaGVkdWxlciwgMCwgbWluZSwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC5zY2hlZF9zZXRwYXJhbSwgMCwgNDMpCisgICAgICAgIHBhcmFtID0gcG9zaXguc2NoZWRfcGFyYW0oTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBwb3NpeC5zY2hlZF9zZXRwYXJhbSwgMCwgcGFyYW0pCisgICAgICAgIGxhcmdlID0gMjE0NzQ4MzY0NzAwCisgICAgICAgIHBhcmFtID0gcG9zaXguc2NoZWRfcGFyYW0obGFyZ2UpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHBvc2l4LnNjaGVkX3NldHBhcmFtLCAwLCBwYXJhbSkKKyAgICAgICAgcGFyYW0gPSBwb3NpeC5zY2hlZF9wYXJhbShzY2hlZF9wcmlvcml0eT0tbGFyZ2UpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHBvc2l4LnNjaGVkX3NldHBhcmFtLCAwLCBwYXJhbSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIocG9zaXgsICJzY2hlZF9ycl9nZXRfaW50ZXJ2YWwiKSwgIm5vIGZ1bmN0aW9uIikKKyAgICBkZWYgdGVzdF9zY2hlZF9ycl9nZXRfaW50ZXJ2YWwoc2VsZik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGludGVydmFsID0gcG9zaXguc2NoZWRfcnJfZ2V0X2ludGVydmFsKDApCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICAjIFRoaXMgbGlrZWx5IG1lYW5zIHRoYXQgc2NoZWRfcnJfZ2V0X2ludGVydmFsIGlzIG9ubHkgdmFsaWQgZm9yCisgICAgICAgICAgICAjIHByb2Nlc3NlcyB3aXRoIHRoZSBTQ0hFRF9SUiBzY2hlZHVsZXIgaW4gZWZmZWN0LgorICAgICAgICAgICAgaWYgZS5lcnJubyAhPSBlcnJuby5FSU5WQUw6CisgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIm9ubHkgd29ya3Mgb24gU0NIRURfUlIgcHJvY2Vzc2VzIikKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGludGVydmFsLCBmbG9hdCkKKyAgICAgICAgIyBSZWFzb25hYmxlIGNvbnN0cmFpbnRzLCBJIHRoaW5rLgorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChpbnRlcnZhbCwgMC4pCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzcyhpbnRlcnZhbCwgMS4pCisKKyAgICBAcmVxdWlyZXNfc2NoZWRfYWZmaW5pdHkKKyAgICBkZWYgdGVzdF9zY2hlZF9hZmZpbml0eShzZWxmKToKKyAgICAgICAgbWFzayA9IHBvc2l4LnNjaGVkX2dldGFmZmluaXR5KDAsIDEwMjQpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKG1hc2suY291bnQoKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKG1hc2ssIHBvc2l4LmNwdV9zZXQpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHBvc2l4LnNjaGVkX2dldGFmZmluaXR5LCAtMSwgMTAyNCkKKyAgICAgICAgZW1wdHkgPSBwb3NpeC5jcHVfc2V0KDEwKQorICAgICAgICBwb3NpeC5zY2hlZF9zZXRhZmZpbml0eSgwLCBtYXNrKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBwb3NpeC5zY2hlZF9zZXRhZmZpbml0eSwgMCwgZW1wdHkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHBvc2l4LnNjaGVkX3NldGFmZmluaXR5LCAtMSwgbWFzaykKKworICAgIEByZXF1aXJlc19zY2hlZF9hZmZpbml0eQorICAgIGRlZiB0ZXN0X2NwdV9zZXRfYmFzaWMoc2VsZik6CisgICAgICAgIHMgPSBwb3NpeC5jcHVfc2V0KDEwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihzKSwgMTApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5jb3VudCgpLCAwKQorICAgICAgICBzLnNldCgwKQorICAgICAgICBzLnNldCg5KQorICAgICAgICBzZWxmLmFzc2VydFRydWUocy5pc3NldCgwKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHMuaXNzZXQoOSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uocy5pc3NldCg1KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmNvdW50KCksIDIpCisgICAgICAgIHMuY2xlYXIoMCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzLmlzc2V0KDApKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuY291bnQoKSwgMSkKKyAgICAgICAgcy56ZXJvKCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzLmlzc2V0KDApKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHMuaXNzZXQoOSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5jb3VudCgpLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzLnNldCwgLTEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHMuc2V0LCAxMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgcy5jbGVhciwgLTEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHMuY2xlYXIsIDEwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzLmlzc2V0LCAtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgcy5pc3NldCwgMTApCisKKyAgICBAcmVxdWlyZXNfc2NoZWRfYWZmaW5pdHkKKyAgICBkZWYgdGVzdF9jcHVfc2V0X2NtcChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChwb3NpeC5jcHVfc2V0KDExKSwgcG9zaXguY3B1X3NldCgxMikpCisgICAgICAgIGwgPSBwb3NpeC5jcHVfc2V0KDEwKQorICAgICAgICByID0gcG9zaXguY3B1X3NldCgxMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsLCByKQorICAgICAgICBsLnNldCgxKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGwsIHIpCisgICAgICAgIHIuc2V0KDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobCwgcikKKworICAgIEByZXF1aXJlc19zY2hlZF9hZmZpbml0eQorICAgIGRlZiB0ZXN0X2NwdV9zZXRfYml0d2lzZShzZWxmKToKKyAgICAgICAgbCA9IHBvc2l4LmNwdV9zZXQoNSkKKyAgICAgICAgbC5zZXQoMCkKKyAgICAgICAgbC5zZXQoMSkKKyAgICAgICAgciA9IHBvc2l4LmNwdV9zZXQoNSkKKyAgICAgICAgci5zZXQoMSkKKyAgICAgICAgci5zZXQoMikKKyAgICAgICAgYiA9IGwgJiByCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudCgpLCAxKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoYi5pc3NldCgxKSkKKyAgICAgICAgYiA9IGwgfCByCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYi5jb3VudCgpLCAzKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoYi5pc3NldCgwKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGIuaXNzZXQoMSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShiLmlzc2V0KDIpKQorICAgICAgICBiID0gbCBeIHIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiLmNvdW50KCksIDIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShiLmlzc2V0KDApKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGIuaXNzZXQoMSkpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShiLmlzc2V0KDIpKQorICAgICAgICBiID0gbAorICAgICAgICBiIHw9IHIKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhiLCBsKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGwuY291bnQoKSwgMykKKworICAgIGRlZiB0ZXN0X3J0bGRfY29uc3RhbnRzKHNlbGYpOgorICAgICAgICAjIGNoZWNrIHByZXNlbmNlIG9mIG1ham9yIFJUTERfKiBjb25zdGFudHMKKyAgICAgICAgcG9zaXguUlRMRF9MQVpZCisgICAgICAgIHBvc2l4LlJUTERfTk9XCisgICAgICAgIHBvc2l4LlJUTERfR0xPQkFMCisgICAgICAgIHBvc2l4LlJUTERfTE9DQUwKKwogY2xhc3MgUG9zaXhHcm91cHNUZXN0ZXIodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHNldFVwKHNlbGYpOgpAQCAtNDYxLDkgKzEwMzcsMTEgQEAKICAgICAgICAgICAgIHBvc2l4LnNldGdyb3Vwcyhncm91cHMpCiAgICAgICAgICAgICBzZWxmLmFzc2VydExpc3RFcXVhbChncm91cHMsIHBvc2l4LmdldGdyb3VwcygpKQogCi0KIGRlZiB0ZXN0X21haW4oKToKLSAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChQb3NpeFRlc3RlciwgUG9zaXhHcm91cHNUZXN0ZXIpCisgICAgdHJ5OgorICAgICAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChQb3NpeFRlc3RlciwgUG9zaXhHcm91cHNUZXN0ZXIpCisgICAgZmluYWxseToKKyAgICAgICAgc3VwcG9ydC5yZWFwX2NoaWxkcmVuKCkKIAogaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKICAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wb3NpeHBhdGgucHkgYi9MaWIvdGVzdC90ZXN0X3Bvc2l4cGF0aC5weQppbmRleCBiYjQ1NTljLi43MDllZjA0IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3Bvc2l4cGF0aC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3Bvc2l4cGF0aC5weQpAQCAtMSwxMCArMSwxMCBAQAotaW1wb3J0IHVuaXR0ZXN0Ci1mcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQsIHRlc3RfZ2VuZXJpY3BhdGgKLQotaW1wb3J0IHBvc2l4cGF0aAogaW1wb3J0IG9zCitpbXBvcnQgcG9zaXhwYXRoCiBpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKK2ltcG9ydCB3YXJuaW5ncwogZnJvbSBwb3NpeHBhdGggaW1wb3J0IHJlYWxwYXRoLCBhYnNwYXRoLCBkaXJuYW1lLCBiYXNlbmFtZQorZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0LCB0ZXN0X2dlbmVyaWNwYXRoCiAKIHRyeToKICAgICBpbXBvcnQgcG9zaXgKQEAgLTIzMSw3ICsyMzEsOSBAQAogCiAgICAgZGVmIHRlc3RfaXNtb3VudChzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRJcyhwb3NpeHBhdGguaXNtb3VudCgiLyIpLCBUcnVlKQotICAgICAgICBzZWxmLmFzc2VydElzKHBvc2l4cGF0aC5pc21vdW50KGIiLyIpLCBUcnVlKQorICAgICAgICB3aXRoIHdhcm5pbmdzLmNhdGNoX3dhcm5pbmdzKCk6CisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMocG9zaXhwYXRoLmlzbW91bnQoYiIvIiksIFRydWUpCiAKICAgICBkZWYgdGVzdF9pc21vdW50X25vbl9leGlzdGVudChzZWxmKToKICAgICAgICAgIyBOb24tZXhpc3RlbnQgbW91bnRwb2ludC4KZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcHJpbnQucHkgYi9MaWIvdGVzdC90ZXN0X3ByaW50LnB5CmluZGV4IDhkMzdiYmMuLjlkNmRiZWEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcHJpbnQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9wcmludC5weQpAQCAtMTExLDYgKzExMSwzMiBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHByaW50LCAnJywgZW5kPTMpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEF0dHJpYnV0ZUVycm9yLCBwcmludCwgJycsIGZpbGU9JycpCiAKKyAgICBkZWYgdGVzdF9wcmludF9mbHVzaChzZWxmKToKKyAgICAgICAgIyBvcGVyYXRpb24gb2YgdGhlIGZsdXNoIGZsYWcKKyAgICAgICAgY2xhc3MgZmlsZWxpa2UoKToKKyAgICAgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgICAgICAgICBzZWxmLndyaXR0ZW4gPSAnJworICAgICAgICAgICAgICAgIHNlbGYuZmx1c2hlZCA9IDAKKyAgICAgICAgICAgIGRlZiB3cml0ZShzZWxmLCBzdHIpOgorICAgICAgICAgICAgICAgIHNlbGYud3JpdHRlbiArPSBzdHIKKyAgICAgICAgICAgIGRlZiBmbHVzaChzZWxmKToKKyAgICAgICAgICAgICAgICBzZWxmLmZsdXNoZWQgKz0gMQorCisgICAgICAgIGYgPSBmaWxlbGlrZSgpCisgICAgICAgIHByaW50KDEsIGZpbGU9ZiwgZW5kPScnLCBmbHVzaD1UcnVlKQorICAgICAgICBwcmludCgyLCBmaWxlPWYsIGVuZD0nJywgZmx1c2g9VHJ1ZSkKKyAgICAgICAgcHJpbnQoMywgZmlsZT1mLCBmbHVzaD1GYWxzZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLndyaXR0ZW4sICcxMjNcbicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZi5mbHVzaGVkLCAyKQorCisgICAgICAgICMgZW5zdXJlIGV4Y2VwdGlvbnMgZnJvbSBmbHVzaCBhcmUgcGFzc2VkIHRocm91Z2gKKyAgICAgICAgY2xhc3Mgbm9mbHVzaCgpOgorICAgICAgICAgICAgZGVmIHdyaXRlKHNlbGYsIHN0cik6CisgICAgICAgICAgICAgICAgcGFzcworICAgICAgICAgICAgZGVmIGZsdXNoKHNlbGYpOgorICAgICAgICAgICAgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhSdW50aW1lRXJyb3IsIHByaW50LCAxLCBmaWxlPW5vZmx1c2goKSwgZmx1c2g9VHJ1ZSkKKwogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KFRlc3RQcmludCkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9wcm9wZXJ0eS5weSBiL0xpYi90ZXN0L3Rlc3RfcHJvcGVydHkucHkKaW5kZXggY2M2YTg3Mi4uNzI2ZDZmZSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9wcm9wZXJ0eS5weQorKysgYi9MaWIvdGVzdC90ZXN0X3Byb3BlcnR5LnB5CkBAIC0xMjgsNiArMTI4LDI5IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3Z2V0dGVyLnNwYW0sIDgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3Z2V0dGVyLl9fY2xhc3NfXy5zcGFtLl9fZG9jX18sICJuZXcgZG9jc3RyaW5nIikKIAorICAgIGRlZiB0ZXN0X3Byb3BlcnR5X19faXNhYnN0cmFjdG1ldGhvZF9fZGVzY3JpcHRvcihzZWxmKToKKyAgICAgICAgZm9yIHZhbCBpbiAoVHJ1ZSwgRmFsc2UsIFtdLCBbMV0sICcnLCAnMScpOgorICAgICAgICAgICAgY2xhc3MgQyhvYmplY3QpOgorICAgICAgICAgICAgICAgIGRlZiBmb28oc2VsZik6CisgICAgICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgICAgICBmb28uX19pc2Fic3RyYWN0bWV0aG9kX18gPSB2YWwKKyAgICAgICAgICAgICAgICBmb28gPSBwcm9wZXJ0eShmb28pCisgICAgICAgICAgICBzZWxmLmFzc2VydElzKEMuZm9vLl9faXNhYnN0cmFjdG1ldGhvZF9fLCBib29sKHZhbCkpCisKKyAgICAgICAgIyBjaGVjayB0aGF0IHRoZSBwcm9wZXJ0eSdzIF9faXNhYnN0cmFjdG1ldGhvZF9fIGRlc2NyaXB0b3IgZG9lcyB0aGUKKyAgICAgICAgIyByaWdodCB0aGluZyB3aGVuIHByZXNlbnRlZCB3aXRoIGEgdmFsdWUgdGhhdCBmYWlscyB0cnV0aCB0ZXN0aW5nOgorICAgICAgICBjbGFzcyBOb3RCb29sKG9iamVjdCk6CisgICAgICAgICAgICBkZWYgX19ub256ZXJvX18oc2VsZik6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigpCisgICAgICAgICAgICBfX2xlbl9fID0gX19ub256ZXJvX18KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIGNsYXNzIEMob2JqZWN0KToKKyAgICAgICAgICAgICAgICBkZWYgZm9vKHNlbGYpOgorICAgICAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICAgICAgZm9vLl9faXNhYnN0cmFjdG1ldGhvZF9fID0gTm90Qm9vbCgpCisgICAgICAgICAgICAgICAgZm9vID0gcHJvcGVydHkoZm9vKQorICAgICAgICAgICAgQy5mb28uX19pc2Fic3RyYWN0bWV0aG9kX18KKwogCiAjIElzc3VlIDU4OTA6IHN1YmNsYXNzZXMgb2YgcHJvcGVydHkgZG8gbm90IHByZXNlcnZlIG1ldGhvZCBfX2RvY19fIHN0cmluZ3MKIGNsYXNzIFByb3BlcnR5U3ViKHByb3BlcnR5KToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcHVsbGRvbS5weSBiL0xpYi90ZXN0L3Rlc3RfcHVsbGRvbS5weQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iODFhNTk1Ci0tLSAvZGV2L251bGwKKysrIGIvTGliL3Rlc3QvdGVzdF9wdWxsZG9tLnB5CkBAIC0wLDAgKzEsMzQ3IEBACitpbXBvcnQgaW8KK2ltcG9ydCB1bml0dGVzdAoraW1wb3J0IHN5cworaW1wb3J0IHhtbC5zYXgKKworZnJvbSB4bWwuc2F4LnhtbHJlYWRlciBpbXBvcnQgQXR0cmlidXRlc0ltcGwKK2Zyb20geG1sLmRvbSBpbXBvcnQgcHVsbGRvbQorCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgcnVuX3VuaXR0ZXN0LCBmaW5kZmlsZQorCisKK3RzdGZpbGUgPSBmaW5kZmlsZSgidGVzdC54bWwiLCBzdWJkaXI9InhtbHRlc3RkYXRhIikKKworIyBBIGhhbmR5IFhNTCBzbmlwcGV0LCBjb250YWluaW5nIGF0dHJpYnV0ZXMsIGEgbmFtZXNwYWNlIHByZWZpeCwgYW5kIGEKKyMgc2VsZi1jbG9zaW5nIHRhZzoKK1NNQUxMX1NBTVBMRSA9ICIiIjw/eG1sIHZlcnNpb249IjEuMCI/PgorPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiIHhtbG5zOnhkYz0iaHR0cDovL3d3dy54bWwuY29tL2Jvb2tzIj4KKzwhLS0gQSBjb21tZW50IC0tPgorPHRpdGxlPkludHJvZHVjdGlvbiB0byBYU0w8L3RpdGxlPgorPGhyLz4KKzxwPjx4ZGM6YXV0aG9yIHhkYzphdHRyaWI9InByZWZpeGVkIGF0dHJpYnV0ZSIgYXR0cmliPSJvdGhlciBhdHRyaWIiPkEuIE5hbWVzcGFjZTwveGRjOmF1dGhvcj48L3A+Cis8L2h0bWw+IiIiCisKKworY2xhc3MgUHVsbERPTVRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X3BhcnNlKHNlbGYpOgorICAgICAgICAiIiJNaW5pbWFsIHRlc3Qgb2YgRE9NRXZlbnRTdHJlYW0ucGFyc2UoKSIiIgorCisgICAgICAgICMgVGhpcyBqdXN0IHRlc3RzIHRoYXQgcGFyc2luZyBmcm9tIGEgc3RyZWFtIHdvcmtzLiBBY3R1YWwgcGFyc2VyCisgICAgICAgICMgc2VtYW50aWNzIGFyZSB0ZXN0ZWQgdXNpbmcgcGFyc2VTdHJpbmcgd2l0aCBhIG1vcmUgZm9jdXNlZCBYTUwKKyAgICAgICAgIyBmcmFnbWVudC4KKworICAgICAgICAjIFRlc3Qgd2l0aCBhIGZpbGVuYW1lOgorICAgICAgICBoYW5kbGVyID0gcHVsbGRvbS5wYXJzZSh0c3RmaWxlKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoaGFuZGxlci5zdHJlYW0uY2xvc2UpCisgICAgICAgIGxpc3QoaGFuZGxlcikKKworICAgICAgICAjIFRlc3Qgd2l0aCBhIGZpbGUgb2JqZWN0OgorICAgICAgICB3aXRoIG9wZW4odHN0ZmlsZSwgInJiIikgYXMgZmluOgorICAgICAgICAgICAgbGlzdChwdWxsZG9tLnBhcnNlKGZpbikpCisKKyAgICBkZWYgdGVzdF9wYXJzZV9zZW1hbnRpY3Moc2VsZik6CisgICAgICAgICIiIlRlc3QgRE9NRXZlbnRTdHJlYW0gcGFyc2luZyBzZW1hbnRpY3MuIiIiCisKKyAgICAgICAgaXRlbXMgPSBwdWxsZG9tLnBhcnNlU3RyaW5nKFNNQUxMX1NBTVBMRSkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgIyBKdXN0IGNoZWNrIHRoZSBub2RlIGlzIGEgRG9jdW1lbnQ6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShoYXNhdHRyKG5vZGUsICJjcmVhdGVFbGVtZW50IikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5TVEFSVF9ET0NVTUVOVCwgZXZ0KQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uU1RBUlRfRUxFTUVOVCwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJodG1sIiwgbm9kZS50YWdOYW1lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKDIsIGxlbihub2RlLmF0dHJpYnV0ZXMpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5vZGUuYXR0cmlidXRlcy5nZXROYW1lZEl0ZW0oInhtbG5zOnhkYyIpLnZhbHVlLAorICAgICAgICAgICAgICAiaHR0cDovL3d3dy54bWwuY29tL2Jvb2tzIikKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkNIQVJBQ1RFUlMsIGV2dCkgIyBMaW5lIGJyZWFrCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgICMgWFhYIC0gQSBjb21tZW50IHNob3VsZCBiZSByZXBvcnRlZCBoZXJlIQorICAgICAgICAjIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5DT01NRU5ULCBldnQpCisgICAgICAgICMgTGluZSBicmVhayBhZnRlciBzd2FsbG93ZWQgY29tbWVudDoKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkNIQVJBQ1RFUlMsIGV2dCkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgidGl0bGUiLCBub2RlLnRhZ05hbWUpCisgICAgICAgIHRpdGxlX25vZGUgPSBub2RlCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5DSEFSQUNURVJTLCBldnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoIkludHJvZHVjdGlvbiB0byBYU0wiLCBub2RlLmRhdGEpCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5FTkRfRUxFTUVOVCwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJ0aXRsZSIsIG5vZGUudGFnTmFtZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHRpdGxlX25vZGUgaXMgbm9kZSkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkNIQVJBQ1RFUlMsIGV2dCkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLlNUQVJUX0VMRU1FTlQsIGV2dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiaHIiLCBub2RlLnRhZ05hbWUpCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5FTkRfRUxFTUVOVCwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJociIsIG5vZGUudGFnTmFtZSkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkNIQVJBQ1RFUlMsIGV2dCkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLlNUQVJUX0VMRU1FTlQsIGV2dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgicCIsIG5vZGUudGFnTmFtZSkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLlNUQVJUX0VMRU1FTlQsIGV2dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgieGRjOmF1dGhvciIsIG5vZGUudGFnTmFtZSkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkNIQVJBQ1RFUlMsIGV2dCkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChpdGVtcykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkVORF9FTEVNRU5ULCBldnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInhkYzphdXRob3IiLCBub2RlLnRhZ05hbWUpCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5FTkRfRUxFTUVOVCwgZXZ0KQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uQ0hBUkFDVEVSUywgZXZ0KQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uRU5EX0VMRU1FTlQsIGV2dCkKKyAgICAgICAgIyBYWFggTm8gRU5EX0RPQ1VNRU5UIGl0ZW0gaXMgZXZlciBvYnRhaW5lZDoKKyAgICAgICAgI2V2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgICNzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uRU5EX0RPQ1VNRU5ULCBldnQpCisKKyAgICBkZWYgdGVzdF9leHBhbmRJdGVtKHNlbGYpOgorICAgICAgICAiIiJFbnN1cmUgZXhwYW5kSXRlbSB3b3JrcyBhcyBleHBlY3RlZC4iIiIKKyAgICAgICAgaXRlbXMgPSBwdWxsZG9tLnBhcnNlU3RyaW5nKFNNQUxMX1NBTVBMRSkKKyAgICAgICAgIyBMb29wIHRocm91Z2ggdGhlIG5vZGVzIHVudGlsIHdlIGdldCB0byBhICJ0aXRsZSIgc3RhcnQgdGFnOgorICAgICAgICBmb3IgZXZ0LCBpdGVtIGluIGl0ZW1zOgorICAgICAgICAgICAgaWYgZXZ0ID09IHB1bGxkb20uU1RBUlRfRUxFTUVOVCBhbmQgaXRlbS50YWdOYW1lID09ICJ0aXRsZSI6CisgICAgICAgICAgICAgICAgaXRlbXMuZXhwYW5kTm9kZShpdGVtKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMSwgbGVuKGl0ZW0uY2hpbGROb2RlcykpCisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuZmFpbCgiTm8gXCJ0aXRsZVwiIGVsZW1lbnQgZGV0ZWN0ZWQgaW4gU01BTExfU0FNUExFISIpCisgICAgICAgICMgTG9vcCB1bnRpbCB3ZSBnZXQgdG8gdGhlIG5leHQgc3RhcnQtZWxlbWVudDoKKyAgICAgICAgZm9yIGV2dCwgbm9kZSBpbiBpdGVtczoKKyAgICAgICAgICAgIGlmIGV2dCA9PSBwdWxsZG9tLlNUQVJUX0VMRU1FTlQ6CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiaHIiLCBub2RlLnRhZ05hbWUsCisgICAgICAgICAgICAiZXhwYW5kTm9kZSBkaWQgbm90IGxlYXZlIERPTUV2ZW50U3RyZWFtIGluIHRoZSBjb3JyZWN0IHN0YXRlLiIpCisgICAgICAgICMgQXR0ZW1wdCB0byBleHBhbmQgYSBzdGFuZGFsb25lIGVsZW1lbnQ6CisgICAgICAgIGl0ZW1zLmV4cGFuZE5vZGUobm9kZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZXh0KGl0ZW1zKVswXSwgcHVsbGRvbS5DSEFSQUNURVJTKQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5vZGUudGFnTmFtZSwgInAiKQorICAgICAgICBpdGVtcy5leHBhbmROb2RlKG5vZGUpCisgICAgICAgIG5leHQoaXRlbXMpICMgU2tpcCBjaGFyYWN0ZXIgZGF0YQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KGl0ZW1zKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5vZGUudGFnTmFtZSwgImh0bWwiKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFN0b3BJdGVyYXRpb24pOgorICAgICAgICAgICAgbmV4dChpdGVtcykKKyAgICAgICAgaXRlbXMuY2xlYXIoKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShpdGVtcy5wYXJzZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKGl0ZW1zLnN0cmVhbSkKKworICAgIEB1bml0dGVzdC5leHBlY3RlZEZhaWx1cmUKKyAgICBkZWYgdGVzdF9jb21tZW50KHNlbGYpOgorICAgICAgICAiIiJQdWxsRE9NIGRvZXMgbm90IHJlY2VpdmUgImNvbW1lbnQiIGV2ZW50cy4iIiIKKyAgICAgICAgaXRlbXMgPSBwdWxsZG9tLnBhcnNlU3RyaW5nKFNNQUxMX1NBTVBMRSkKKyAgICAgICAgZm9yIGV2dCwgXyBpbiBpdGVtczoKKyAgICAgICAgICAgIGlmIGV2dCA9PSBwdWxsZG9tLkNPTU1FTlQ6CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYuZmFpbCgiTm8gY29tbWVudCB3YXMgZW5jb3VudGVyZWQiKQorCisgICAgQHVuaXR0ZXN0LmV4cGVjdGVkRmFpbHVyZQorICAgIGRlZiB0ZXN0X2VuZF9kb2N1bWVudChzZWxmKToKKyAgICAgICAgIiIiUHVsbERPTSBkb2VzIG5vdCByZWNlaXZlICJlbmQtZG9jdW1lbnQiIGV2ZW50cy4iIiIKKyAgICAgICAgaXRlbXMgPSBwdWxsZG9tLnBhcnNlU3RyaW5nKFNNQUxMX1NBTVBMRSkKKyAgICAgICAgIyBSZWFkIGFsbCBvZiB0aGUgbm9kZXMgdXAgdG8gYW5kIGluY2x1ZGluZyA8L2h0bWw+OgorICAgICAgICBmb3IgZXZ0LCBub2RlIGluIGl0ZW1zOgorICAgICAgICAgICAgaWYgZXZ0ID09IHB1bGxkb20uRU5EX0VMRU1FTlQgYW5kIG5vZGUudGFnTmFtZSA9PSAiaHRtbCI6CisgICAgICAgICAgICAgICAgYnJlYWsKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBBc3NlcnQgdGhhdCB0aGUgbmV4dCBub2RlIGlzIEVORF9ET0NVTUVOVDoKKyAgICAgICAgICAgIGV2dCwgbm9kZSA9IG5leHQoaXRlbXMpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uRU5EX0RPQ1VNRU5ULCBldnQpCisgICAgICAgIGV4Y2VwdCBTdG9wSXRlcmF0aW9uOgorICAgICAgICAgICAgc2VsZi5mYWlsKAorICAgICAgICAgICAgICAgICJSYW4gb3V0IG9mIGV2ZW50cywgYnV0IHNob3VsZCBoYXZlIHJlY2VpdmVkIEVORF9ET0NVTUVOVCIpCisKKworY2xhc3MgVGhvcm91Z2hUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIiIiVGVzdCB0aGUgaGFyZC10by1yZWFjaCBwYXJ0cyBvZiBwdWxsZG9tLiIiIgorCisgICAgZGVmIHRlc3RfdGhvcm91Z2hfcGFyc2Uoc2VsZik6CisgICAgICAgICIiIlRlc3Qgc29tZSBvZiB0aGUgaGFyZC10by1yZWFjaCBwYXJ0cyBvZiBQdWxsRE9NLiIiIgorICAgICAgICBzZWxmLl90ZXN0X3Rob3JvdWdoKHB1bGxkb20ucGFyc2UoTm9uZSwgcGFyc2VyPVNBWEV4ZXJjaXNlcigpKSkKKworICAgIEB1bml0dGVzdC5leHBlY3RlZEZhaWx1cmUKKyAgICBkZWYgdGVzdF9zYXgyZG9tX2ZhaWwoc2VsZik6CisgICAgICAgICIiIlNBWDJET00gY2FuInQgaGFuZGxlIGEgUEkgYmVmb3JlIHRoZSByb290IGVsZW1lbnQuIiIiCisgICAgICAgIHBkID0gU0FYMkRPTVRlc3RIZWxwZXIoTm9uZSwgU0FYRXhlcmNpc2VyKCksIDEyKQorICAgICAgICBzZWxmLl90ZXN0X3Rob3JvdWdoKHBkKQorCisgICAgZGVmIHRlc3RfdGhvcm91Z2hfc2F4MmRvbShzZWxmKToKKyAgICAgICAgIiIiVGVzdCBzb21lIG9mIHRoZSBoYXJkLXRvLXJlYWNoIHBhcnRzIG9mIFNBWDJET00uIiIiCisgICAgICAgIHBkID0gU0FYMkRPTVRlc3RIZWxwZXIoTm9uZSwgU0FYMkRPTUV4ZXJjaXNlcigpLCAxMikKKyAgICAgICAgc2VsZi5fdGVzdF90aG9yb3VnaChwZCwgRmFsc2UpCisKKyAgICBkZWYgX3Rlc3RfdGhvcm91Z2goc2VsZiwgcGQsIGJlZm9yZV9yb290PVRydWUpOgorICAgICAgICAiIiJUZXN0IHNvbWUgb2YgdGhlIGhhcmQtdG8tcmVhY2ggcGFydHMgb2YgdGhlIHBhcnNlciwgdXNpbmcgYSBtb2NrCisgICAgICAgIHBhcnNlci4iIiIKKworICAgICAgICBldnQsIG5vZGUgPSBuZXh0KHBkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uU1RBUlRfRE9DVU1FTlQsIGV2dCkKKyAgICAgICAgIyBKdXN0IGNoZWNrIHRoZSBub2RlIGlzIGEgRG9jdW1lbnQ6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShoYXNhdHRyKG5vZGUsICJjcmVhdGVFbGVtZW50IikpCisKKyAgICAgICAgaWYgYmVmb3JlX3Jvb3Q6CisgICAgICAgICAgICBldnQsIG5vZGUgPSBuZXh0KHBkKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkNPTU1FTlQsIGV2dCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoImEgY29tbWVudCIsIG5vZGUuZGF0YSkKKyAgICAgICAgICAgIGV2dCwgbm9kZSA9IG5leHQocGQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uUFJPQ0VTU0lOR19JTlNUUlVDVElPTiwgZXZ0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgidGFyZ2V0Iiwgbm9kZS50YXJnZXQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJkYXRhIiwgbm9kZS5kYXRhKQorCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQocGQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5TVEFSVF9FTEVNRU5ULCBldnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoImh0bWwiLCBub2RlLnRhZ05hbWUpCisKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChwZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkNPTU1FTlQsIGV2dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiYSBjb21tZW50Iiwgbm9kZS5kYXRhKQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KHBkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uUFJPQ0VTU0lOR19JTlNUUlVDVElPTiwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJ0YXJnZXQiLCBub2RlLnRhcmdldCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiZGF0YSIsIG5vZGUuZGF0YSkKKworICAgICAgICBldnQsIG5vZGUgPSBuZXh0KHBkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uU1RBUlRfRUxFTUVOVCwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJwIiwgbm9kZS50YWdOYW1lKQorCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQocGQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5DSEFSQUNURVJTLCBldnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoInRleHQiLCBub2RlLmRhdGEpCisgICAgICAgIGV2dCwgbm9kZSA9IG5leHQocGQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHVsbGRvbS5FTkRfRUxFTUVOVCwgZXZ0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCJwIiwgbm9kZS50YWdOYW1lKQorICAgICAgICBldnQsIG5vZGUgPSBuZXh0KHBkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHB1bGxkb20uRU5EX0VMRU1FTlQsIGV2dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgiaHRtbCIsIG5vZGUudGFnTmFtZSkKKyAgICAgICAgZXZ0LCBub2RlID0gbmV4dChwZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwdWxsZG9tLkVORF9ET0NVTUVOVCwgZXZ0KQorCisKK2NsYXNzIFNBWEV4ZXJjaXNlcihvYmplY3QpOgorICAgICIiIkEgZmFrZSBzYXggcGFyc2VyIHRoYXQgY2FsbHMgc29tZSBvZiB0aGUgaGFyZGVyLXRvLXJlYWNoIHNheCBtZXRob2RzIHRvCisgICAgZW5zdXJlIGl0IGVtaXRzIHRoZSBjb3JyZWN0IGV2ZW50cyIiIgorCisgICAgZGVmIHNldENvbnRlbnRIYW5kbGVyKHNlbGYsIGhhbmRsZXIpOgorICAgICAgICBzZWxmLl9oYW5kbGVyID0gaGFuZGxlcgorCisgICAgZGVmIHBhcnNlKHNlbGYsIF8pOgorICAgICAgICBoID0gc2VsZi5faGFuZGxlcgorICAgICAgICBoLnN0YXJ0RG9jdW1lbnQoKQorCisgICAgICAgICMgVGhlIG5leHQgdHdvIGl0ZW1zIGVuc3VyZSB0aGF0IGl0ZW1zIHByZWNlZGluZyB0aGUgZmlyc3QKKyAgICAgICAgIyBzdGFydF9lbGVtZW50IGFyZSBwcm9wZXJseSBzdG9yZWQgYW5kIGVtaXR0ZWQ6CisgICAgICAgIGguY29tbWVudCgiYSBjb21tZW50IikKKyAgICAgICAgaC5wcm9jZXNzaW5nSW5zdHJ1Y3Rpb24oInRhcmdldCIsICJkYXRhIikKKworICAgICAgICBoLnN0YXJ0RWxlbWVudCgiaHRtbCIsIEF0dHJpYnV0ZXNJbXBsKHt9KSkKKworICAgICAgICBoLmNvbW1lbnQoImEgY29tbWVudCIpCisgICAgICAgIGgucHJvY2Vzc2luZ0luc3RydWN0aW9uKCJ0YXJnZXQiLCAiZGF0YSIpCisKKyAgICAgICAgaC5zdGFydEVsZW1lbnQoInAiLCBBdHRyaWJ1dGVzSW1wbCh7ImNsYXNzIjogInBhcmFjbGFzcyJ9KSkKKyAgICAgICAgaC5jaGFyYWN0ZXJzKCJ0ZXh0IikKKyAgICAgICAgaC5lbmRFbGVtZW50KCJwIikKKyAgICAgICAgaC5lbmRFbGVtZW50KCJodG1sIikKKyAgICAgICAgaC5lbmREb2N1bWVudCgpCisKKyAgICBkZWYgc3R1YihzZWxmLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAiIiJTdHViIG1ldGhvZC4gRG9lcyBub3RoaW5nLiIiIgorICAgICAgICBwYXNzCisgICAgc2V0UHJvcGVydHkgPSBzdHViCisgICAgc2V0RmVhdHVyZSA9IHN0dWIKKworCitjbGFzcyBTQVgyRE9NRXhlcmNpc2VyKFNBWEV4ZXJjaXNlcik6CisgICAgIiIiVGhlIHNhbWUgYXMgU0FYRXhlcmNpc2VyLCBidXQgd2l0aG91dCB0aGUgcHJvY2Vzc2luZyBpbnN0cnVjdGlvbiBhbmQKKyAgICBjb21tZW50IGJlZm9yZSB0aGUgcm9vdCBlbGVtZW50LCBiZWNhdXNlIFMyRCBjYW4idCBoYW5kbGUgaXQiIiIKKworICAgIGRlZiBwYXJzZShzZWxmLCBfKToKKyAgICAgICAgaCA9IHNlbGYuX2hhbmRsZXIKKyAgICAgICAgaC5zdGFydERvY3VtZW50KCkKKyAgICAgICAgaC5zdGFydEVsZW1lbnQoImh0bWwiLCBBdHRyaWJ1dGVzSW1wbCh7fSkpCisgICAgICAgIGguY29tbWVudCgiYSBjb21tZW50IikKKyAgICAgICAgaC5wcm9jZXNzaW5nSW5zdHJ1Y3Rpb24oInRhcmdldCIsICJkYXRhIikKKyAgICAgICAgaC5zdGFydEVsZW1lbnQoInAiLCBBdHRyaWJ1dGVzSW1wbCh7ImNsYXNzIjogInBhcmFjbGFzcyJ9KSkKKyAgICAgICAgaC5jaGFyYWN0ZXJzKCJ0ZXh0IikKKyAgICAgICAgaC5lbmRFbGVtZW50KCJwIikKKyAgICAgICAgaC5lbmRFbGVtZW50KCJodG1sIikKKyAgICAgICAgaC5lbmREb2N1bWVudCgpCisKKworY2xhc3MgU0FYMkRPTVRlc3RIZWxwZXIocHVsbGRvbS5ET01FdmVudFN0cmVhbSk6CisgICAgIiIiQWxsb3dzIHVzIHRvIGRyaXZlIFNBWDJET00gZnJvbSBhIERPTUV2ZW50U3RyZWFtLiIiIgorCisgICAgZGVmIHJlc2V0KHNlbGYpOgorICAgICAgICBzZWxmLnB1bGxkb20gPSBwdWxsZG9tLlNBWDJET00oKQorICAgICAgICAjIFRoaXMgY29udGVudCBoYW5kbGVyIHJlbGllcyBvbiBuYW1lc3BhY2Ugc3VwcG9ydAorICAgICAgICBzZWxmLnBhcnNlci5zZXRGZWF0dXJlKHhtbC5zYXguaGFuZGxlci5mZWF0dXJlX25hbWVzcGFjZXMsIDEpCisgICAgICAgIHNlbGYucGFyc2VyLnNldENvbnRlbnRIYW5kbGVyKHNlbGYucHVsbGRvbSkKKworCitjbGFzcyBTQVgyRE9NVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIGNvbmZpcm0oc2VsZiwgdGVzdCwgdGVzdG5hbWU9IlRlc3QiKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHRlc3QsIHRlc3RuYW1lKQorCisgICAgZGVmIHRlc3RfYmFzaWMoc2VsZik6CisgICAgICAgICIiIkVuc3VyZSBTQVgyRE9NIGNhbiBwYXJzZSBmcm9tIGEgc3RyZWFtLiIiIgorICAgICAgICB3aXRoIGlvLlN0cmluZ0lPKFNNQUxMX1NBTVBMRSkgYXMgZmluOgorICAgICAgICAgICAgc2QgPSBTQVgyRE9NVGVzdEhlbHBlcihmaW4sIHhtbC5zYXgubWFrZV9wYXJzZXIoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKFNNQUxMX1NBTVBMRSkpCisgICAgICAgICAgICBmb3IgZXZ0LCBub2RlIGluIHNkOgorICAgICAgICAgICAgICAgIGlmIGV2dCA9PSBwdWxsZG9tLlNUQVJUX0VMRU1FTlQgYW5kIG5vZGUudGFnTmFtZSA9PSAiaHRtbCI6CisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAjIEJlY2F1c2UgdGhlIGJ1ZmZlciBpcyB0aGUgc2FtZSBsZW5ndGggYXMgdGhlIFhNTCwgYWxsIHRoZQorICAgICAgICAgICAgIyBub2RlcyBzaG91bGQgaGF2ZSBiZWVuIHBhcnNlZCBhbmQgYWRkZWQ6CisgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIobGVuKG5vZGUuY2hpbGROb2RlcyksIDApCisKKyAgICBkZWYgdGVzdFNBWDJET00oc2VsZik6CisgICAgICAgICIiIkVuc3VyZSBTQVgyRE9NIGV4cGFuZHMgbm9kZXMgYXMgZXhwZWN0ZWQuIiIiCisgICAgICAgIHNheDJkb20gPSBwdWxsZG9tLlNBWDJET00oKQorICAgICAgICBzYXgyZG9tLnN0YXJ0RG9jdW1lbnQoKQorICAgICAgICBzYXgyZG9tLnN0YXJ0RWxlbWVudCgiZG9jIiwge30pCisgICAgICAgIHNheDJkb20uY2hhcmFjdGVycygidGV4dCIpCisgICAgICAgIHNheDJkb20uc3RhcnRFbGVtZW50KCJzdWJlbG0iLCB7fSkKKyAgICAgICAgc2F4MmRvbS5jaGFyYWN0ZXJzKCJ0ZXh0IikKKyAgICAgICAgc2F4MmRvbS5lbmRFbGVtZW50KCJzdWJlbG0iKQorICAgICAgICBzYXgyZG9tLmNoYXJhY3RlcnMoInRleHQiKQorICAgICAgICBzYXgyZG9tLmVuZEVsZW1lbnQoImRvYyIpCisgICAgICAgIHNheDJkb20uZW5kRG9jdW1lbnQoKQorCisgICAgICAgIGRvYyA9IHNheDJkb20uZG9jdW1lbnQKKyAgICAgICAgcm9vdCA9IGRvYy5kb2N1bWVudEVsZW1lbnQKKyAgICAgICAgKHRleHQxLCBlbG0xLCB0ZXh0MikgPSByb290LmNoaWxkTm9kZXMKKyAgICAgICAgdGV4dDMgPSBlbG0xLmNoaWxkTm9kZXNbMF0KKworICAgICAgICBzZWxmLmFzc2VydElzTm9uZSh0ZXh0MS5wcmV2aW91c1NpYmxpbmcpCisgICAgICAgIHNlbGYuYXNzZXJ0SXModGV4dDEubmV4dFNpYmxpbmcsIGVsbTEpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoZWxtMS5wcmV2aW91c1NpYmxpbmcsIHRleHQxKQorICAgICAgICBzZWxmLmFzc2VydElzKGVsbTEubmV4dFNpYmxpbmcsIHRleHQyKQorICAgICAgICBzZWxmLmFzc2VydElzKHRleHQyLnByZXZpb3VzU2libGluZywgZWxtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUodGV4dDIubmV4dFNpYmxpbmcpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKHRleHQzLnByZXZpb3VzU2libGluZykKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUodGV4dDMubmV4dFNpYmxpbmcpCisKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyb290LnBhcmVudE5vZGUsIGRvYykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0ZXh0MS5wYXJlbnROb2RlLCByb290KQorICAgICAgICBzZWxmLmFzc2VydElzKGVsbTEucGFyZW50Tm9kZSwgcm9vdCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0ZXh0Mi5wYXJlbnROb2RlLCByb290KQorICAgICAgICBzZWxmLmFzc2VydElzKHRleHQzLnBhcmVudE5vZGUsIGVsbTEpCisgICAgICAgIGRvYy51bmxpbmsoKQorCisKK2RlZiB0ZXN0X21haW4oKToKKyAgICBydW5fdW5pdHRlc3QoUHVsbERPTVRlc3RDYXNlLCBUaG9yb3VnaFRlc3RDYXNlLCBTQVgyRE9NVGVzdENhc2UpCisKKworaWYgX19uYW1lX18gPT0gIl9fbWFpbl9fIjoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9weWRvYy5weSBiL0xpYi90ZXN0L3Rlc3RfcHlkb2MucHkKaW5kZXggYzEzOWZhNC4uM2U1YzQ1MCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9weWRvYy5weQorKysgYi9MaWIvdGVzdC90ZXN0X3B5ZG9jLnB5CkBAIC0xOTgsNyArMTk4LDcgQEAKIG1pc3NpbmdfcGF0dGVybiA9ICJubyBQeXRob24gZG9jdW1lbnRhdGlvbiBmb3VuZCBmb3IgJyVzJyIKIAogIyBvdXRwdXQgcGF0dGVybiBmb3IgbW9kdWxlIHdpdGggYmFkIGltcG9ydHMKLWJhZGltcG9ydF9wYXR0ZXJuID0gInByb2JsZW0gaW4gJXMgLSBJbXBvcnRFcnJvcjogTm8gbW9kdWxlIG5hbWVkICVzIgorYmFkaW1wb3J0X3BhdHRlcm4gPSAicHJvYmxlbSBpbiAlcyAtIEltcG9ydEVycm9yOiBObyBtb2R1bGUgbmFtZWQgJXIiCiAKIGRlZiBydW5fcHlkb2MobW9kdWxlX25hbWUsICphcmdzLCAqKmVudik6CiAgICAgIiIiCkBAIC0yMzYsOCArMjM2LDggQEAKIGRlZiBwcmludF9kaWZmcyh0ZXh0MSwgdGV4dDIpOgogICAgICJQcmludHMgdW5pZmllZCBkaWZmcyBmb3IgdHdvIHRleHRzIgogICAgICMgWFhYIG5vdyBvYnNvbGV0ZSwgdXNlIHVuaXR0ZXN0IGJ1aWx0LWluIHN1cHBvcnQKLSAgICBsaW5lczEgPSB0ZXh0MS5zcGxpdGxpbmVzKFRydWUpCi0gICAgbGluZXMyID0gdGV4dDIuc3BsaXRsaW5lcyhUcnVlKQorICAgIGxpbmVzMSA9IHRleHQxLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSkKKyAgICBsaW5lczIgPSB0ZXh0Mi5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpCiAgICAgZGlmZnMgPSBkaWZmbGliLnVuaWZpZWRfZGlmZihsaW5lczEsIGxpbmVzMiwgbj0wLCBmcm9tZmlsZT0nZXhwZWN0ZWQnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9maWxlPSdnb3QnKQogICAgIHByaW50KCdcbicgKyAnJy5qb2luKGRpZmZzKSkKQEAgLTI1NCw2ICsyNTQsOCBAQAogCiAgICAgQHVuaXR0ZXN0LnNraXBJZihzeXMuZmxhZ3Mub3B0aW1pemUgPj0gMiwKICAgICAgICAgICAgICAgICAgICAgICJEb2NzdHJpbmdzIGFyZSBvbWl0dGVkIHdpdGggLU8yIGFuZCBhYm92ZSIpCisgICAgQHVuaXR0ZXN0LnNraXBJZihoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgYW5kIHN5cy5nZXR0cmFjZSgpLAorICAgICAgICAgICAgICAgICAgICAgJ3RyYWNlIGZ1bmN0aW9uIGludHJvZHVjZXMgX19sb2NhbHNfXyB1bmV4cGVjdGVkbHknKQogICAgIGRlZiB0ZXN0X2h0bWxfZG9jKHNlbGYpOgogICAgICAgICByZXN1bHQsIGRvY19sb2MgPSBnZXRfcHlkb2NfaHRtbChweWRvY19tb2QpCiAgICAgICAgIG1vZF9maWxlID0gaW5zcGVjdC5nZXRhYnNmaWxlKHB5ZG9jX21vZCkKQEAgLTI2OSw2ICsyNzEsOCBAQAogCiAgICAgQHVuaXR0ZXN0LnNraXBJZihzeXMuZmxhZ3Mub3B0aW1pemUgPj0gMiwKICAgICAgICAgICAgICAgICAgICAgICJEb2NzdHJpbmdzIGFyZSBvbWl0dGVkIHdpdGggLU8yIGFuZCBhYm92ZSIpCisgICAgQHVuaXR0ZXN0LnNraXBJZihoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgYW5kIHN5cy5nZXR0cmFjZSgpLAorICAgICAgICAgICAgICAgICAgICAgJ3RyYWNlIGZ1bmN0aW9uIGludHJvZHVjZXMgX19sb2NhbHNfXyB1bmV4cGVjdGVkbHknKQogICAgIGRlZiB0ZXN0X3RleHRfZG9jKHNlbGYpOgogICAgICAgICByZXN1bHQsIGRvY19sb2MgPSBnZXRfcHlkb2NfdGV4dChweWRvY19tb2QpCiAgICAgICAgIGV4cGVjdGVkX3RleHQgPSBleHBlY3RlZF90ZXh0X3BhdHRlcm4gJSBcCkBAIC0zMTAsNiArMzE0LDggQEAKIAogICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLmZsYWdzLm9wdGltaXplID49IDIsCiAgICAgICAgICAgICAgICAgICAgICAnRG9jc3RyaW5ncyBhcmUgb21pdHRlZCB3aXRoIC1PMiBhbmQgYWJvdmUnKQorICAgIEB1bml0dGVzdC5za2lwSWYoaGFzYXR0cihzeXMsICdnZXR0cmFjZScpIGFuZCBzeXMuZ2V0dHJhY2UoKSwKKyAgICAgICAgICAgICAgICAgICAgICd0cmFjZSBmdW5jdGlvbiBpbnRyb2R1Y2VzIF9fbG9jYWxzX18gdW5leHBlY3RlZGx5JykKICAgICBkZWYgdGVzdF9oZWxwX291dHB1dF9yZWRpcmVjdChzZWxmKToKICAgICAgICAgIyBpc3N1ZSA5NDAyODYsIGlmIG91dHB1dCBpcyBzZXQgaW4gSGVscGVyLCB0aGVuIGFsbCBvdXRwdXQgZnJvbQogICAgICAgICAjIEhlbHBlci5oZWxwIHNob3VsZCBiZSByZWRpcmVjdGVkCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3JhaXNlLnB5IGIvTGliL3Rlc3QvdGVzdF9yYWlzZS5weQppbmRleCBlMDJjMWFmLi45MmM1MGM3IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3JhaXNlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcmFpc2UucHkKQEAgLTEzMCw2ICsxMzAsMTMgQEAKICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgogICAgICAgICAgICAgcmFpc2UgTXlFeGNlcHRpb24KIAorICAgIGRlZiB0ZXN0X2Fzc2VydF93aXRoX3R1cGxlX2FyZyhzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgYXNzZXJ0IEZhbHNlLCAoMywpCisgICAgICAgIGV4Y2VwdCBBc3NlcnRpb25FcnJvciBhcyBlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoZSksICIoMywpIikKKworCiAKIGNsYXNzIFRlc3RDYXVzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgZGVmIHRlc3RfaW52YWxpZF9jYXVzZShzZWxmKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcmFuZ2UucHkgYi9MaWIvdGVzdC90ZXN0X3JhbmdlLnB5CmluZGV4IGVkZTA3OTEuLjJlMzM1Y2MgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfcmFuZ2UucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9yYW5nZS5weQpAQCAtNTA3LDYgKzUwNyw4NyBAQAogICAgICAgICAgICAgICAgIGZvciBrIGluIHZhbHVlcyAtIHswfToKICAgICAgICAgICAgICAgICAgICAgcltpOmo6a10KIAorICAgIGRlZiB0ZXN0X2NvbXBhcmlzb24oc2VsZik6CisgICAgICAgIHRlc3RfcmFuZ2VzID0gW3JhbmdlKDApLCByYW5nZSgwLCAtMSksIHJhbmdlKDEsIDEsIDMpLAorICAgICAgICAgICAgICAgICAgICAgICByYW5nZSgxKSwgcmFuZ2UoNSwgNiksIHJhbmdlKDUsIDYsIDIpLAorICAgICAgICAgICAgICAgICAgICAgICByYW5nZSg1LCA3LCAyKSwgcmFuZ2UoMiksIHJhbmdlKDAsIDQsIDIpLAorICAgICAgICAgICAgICAgICAgICAgICByYW5nZSgwLCA1LCAyKSwgcmFuZ2UoMCwgNiwgMildCisgICAgICAgIHRlc3RfdHVwbGVzID0gbGlzdChtYXAodHVwbGUsIHRlc3RfcmFuZ2VzKSkKKworICAgICAgICAjIENoZWNrIHRoYXQgZXF1YWxpdHkgb2YgcmFuZ2VzIG1hdGNoZXMgZXF1YWxpdHkgb2YgdGhlIGNvcnJlc3BvbmRpbmcKKyAgICAgICAgIyB0dXBsZXMgZm9yIGVhY2ggcGFpciBmcm9tIHRoZSB0ZXN0IGxpc3RzIGFib3ZlLgorICAgICAgICByYW5nZXNfZXEgPSBbYSA9PSBiIGZvciBhIGluIHRlc3RfcmFuZ2VzIGZvciBiIGluIHRlc3RfcmFuZ2VzXQorICAgICAgICB0dXBsZXNfZXEgPSBbYSA9PSBiIGZvciBhIGluIHRlc3RfdHVwbGVzIGZvciBiIGluIHRlc3RfdHVwbGVzXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJhbmdlc19lcSwgdHVwbGVzX2VxKQorCisgICAgICAgICMgQ2hlY2sgdGhhdCAhPSBjb3JyZWN0bHkgZ2l2ZXMgdGhlIGxvZ2ljYWwgbmVnYXRpb24gb2YgPT0KKyAgICAgICAgcmFuZ2VzX25lID0gW2EgIT0gYiBmb3IgYSBpbiB0ZXN0X3JhbmdlcyBmb3IgYiBpbiB0ZXN0X3Jhbmdlc10KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyYW5nZXNfbmUsIFtub3QgeCBmb3IgeCBpbiByYW5nZXNfZXFdKQorCisgICAgICAgICMgRXF1YWwgcmFuZ2VzIHNob3VsZCBoYXZlIGVxdWFsIGhhc2hlcy4KKyAgICAgICAgZm9yIGEgaW4gdGVzdF9yYW5nZXM6CisgICAgICAgICAgICBmb3IgYiBpbiB0ZXN0X3JhbmdlczoKKyAgICAgICAgICAgICAgICBpZiBhID09IGI6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaGFzaChhKSwgaGFzaChiKSkKKworICAgICAgICAjIFJhbmdlcyBhcmUgdW5lcXVhbCB0byBvdGhlciB0eXBlcyAoZXZlbiBzZXF1ZW5jZSB0eXBlcykKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyYW5nZSgwKSA9PSAoKSwgRmFsc2UpCisgICAgICAgIHNlbGYuYXNzZXJ0SXMoKCkgPT0gcmFuZ2UoMCksIEZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydElzKHJhbmdlKDIpID09IFswLCAxXSwgRmFsc2UpCisKKyAgICAgICAgIyBIdWdlIGludGVnZXJzIGFyZW4ndCBhIHByb2JsZW0uCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmFuZ2UoMCwgMioqMTAwIC0gMSwgMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgcmFuZ2UoMCwgMioqMTAwLCAyKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYXNoKHJhbmdlKDAsIDIqKjEwMCAtIDEsIDIpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBoYXNoKHJhbmdlKDAsIDIqKjEwMCwgMikpKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHJhbmdlKDAsIDIqKjEwMCwgMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFuZ2UoMCwgMioqMTAwICsgMSwgMikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmFuZ2UoMioqMjAwLCAyKioyMDEgLSAyKio5OSwgMioqMTAwKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICByYW5nZSgyKioyMDAsIDIqKjIwMSwgMioqMTAwKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChoYXNoKHJhbmdlKDIqKjIwMCwgMioqMjAxIC0gMioqOTksIDIqKjEwMCkpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGhhc2gocmFuZ2UoMioqMjAwLCAyKioyMDEsIDIqKjEwMCkpKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKHJhbmdlKDIqKjIwMCwgMioqMjAxLCAyKioxMDApLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhbmdlKDIqKjIwMCwgMioqMjAxICsgMSwgMioqMTAwKSkKKworICAgICAgICAjIE9yZGVyIGNvbXBhcmlzb25zIGFyZSBub3QgaW1wbGVtZW50ZWQgZm9yIHJhbmdlcy4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAgcmFuZ2UoMCkgPCByYW5nZSgwKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICByYW5nZSgwKSA+IHJhbmdlKDApCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIHJhbmdlKDApIDw9IHJhbmdlKDApCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yKToKKyAgICAgICAgICAgIHJhbmdlKDApID49IHJhbmdlKDApCisKKworICAgIGRlZiB0ZXN0X2F0dHJpYnV0ZXMoc2VsZik6CisgICAgICAgICMgdGVzdCB0aGUgc3RhcnQsIHN0b3AgYW5kIHN0ZXAgYXR0cmlidXRlcyBvZiByYW5nZSBvYmplY3RzCisgICAgICAgIHNlbGYuYXNzZXJ0X2F0dHJzKHJhbmdlKDApLCAwLCAwLCAxKQorICAgICAgICBzZWxmLmFzc2VydF9hdHRycyhyYW5nZSgxMCksIDAsIDEwLCAxKQorICAgICAgICBzZWxmLmFzc2VydF9hdHRycyhyYW5nZSgtMTApLCAwLCAtMTAsIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0X2F0dHJzKHJhbmdlKDAsIDEwLCAxKSwgMCwgMTAsIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0X2F0dHJzKHJhbmdlKDAsIDEwLCAzKSwgMCwgMTAsIDMpCisgICAgICAgIHNlbGYuYXNzZXJ0X2F0dHJzKHJhbmdlKDEwLCAwLCAtMSksIDEwLCAwLCAtMSkKKyAgICAgICAgc2VsZi5hc3NlcnRfYXR0cnMocmFuZ2UoMTAsIDAsIC0zKSwgMTAsIDAsIC0zKQorCisgICAgZGVmIGFzc2VydF9hdHRycyhzZWxmLCByYW5nZW9iaiwgc3RhcnQsIHN0b3AsIHN0ZXApOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJhbmdlb2JqLnN0YXJ0LCBzdGFydCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyYW5nZW9iai5zdG9wLCBzdG9wKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJhbmdlb2JqLnN0ZXAsIHN0ZXApCisKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICByYW5nZW9iai5zdGFydCA9IDAKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICByYW5nZW9iai5zdG9wID0gMTAKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICByYW5nZW9iai5zdGVwID0gMQorCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXR0cmlidXRlRXJyb3IpOgorICAgICAgICAgICAgZGVsIHJhbmdlb2JqLnN0YXJ0CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoQXR0cmlidXRlRXJyb3IpOgorICAgICAgICAgICAgZGVsIHJhbmdlb2JqLnN0b3AKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhBdHRyaWJ1dGVFcnJvcik6CisgICAgICAgICAgICBkZWwgcmFuZ2VvYmouc3RlcAogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgdGVzdC5zdXBwb3J0LnJ1bl91bml0dGVzdChSYW5nZVRlc3QpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3JlLnB5IGIvTGliL3Rlc3QvdGVzdF9yZS5weQppbmRleCBmZThiYzM0Li5kMjNjNDliIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3JlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcmUucHkKQEAgLTQyOCw3ICs0MjgsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0uc3BhbigpLCBzcGFuKQogCiAgICAgZGVmIHRlc3RfcmVfZXNjYXBlKHNlbGYpOgotICAgICAgICBhbG51bV9jaGFycyA9IHN0cmluZy5hc2NpaV9sZXR0ZXJzICsgc3RyaW5nLmRpZ2l0cworICAgICAgICBhbG51bV9jaGFycyA9IHN0cmluZy5hc2NpaV9sZXR0ZXJzICsgc3RyaW5nLmRpZ2l0cyArICdfJwogICAgICAgICBwID0gJycuam9pbihjaHIoaSkgZm9yIGkgaW4gcmFuZ2UoMjU2KSkKICAgICAgICAgZm9yIGMgaW4gcDoKICAgICAgICAgICAgIGlmIGMgaW4gYWxudW1fY2hhcnM6CkBAIC00NDEsNyArNDQxLDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRNYXRjaChyZS5lc2NhcGUocCksIHApCiAKICAgICBkZWYgdGVzdF9yZV9lc2NhcGVfYnl0ZShzZWxmKToKLSAgICAgICAgYWxudW1fY2hhcnMgPSAoc3RyaW5nLmFzY2lpX2xldHRlcnMgKyBzdHJpbmcuZGlnaXRzKS5lbmNvZGUoJ2FzY2lpJykKKyAgICAgICAgYWxudW1fY2hhcnMgPSAoc3RyaW5nLmFzY2lpX2xldHRlcnMgKyBzdHJpbmcuZGlnaXRzICsgJ18nKS5lbmNvZGUoJ2FzY2lpJykKICAgICAgICAgcCA9IGJ5dGVzKHJhbmdlKDI1NikpCiAgICAgICAgIGZvciBpIGluIHA6CiAgICAgICAgICAgICBiID0gYnl0ZXMoW2ldKQpAQCAtNzgwLDYgKzc4MCwxMyBAQAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBfc3JlLmNvbXBpbGUsICJhYmMiLCAwLCBbbG9uZ19vdmVyZmxvd10pCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgX3NyZS5jb21waWxlLCB7fSwgMCwgW10pCiAKKyAgICBkZWYgdGVzdF9zZWFyY2hfZG90X3VuaWNvZGUoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3ROb25lKHJlLnNlYXJjaCgiMTIzLiotIiwgJzEyM2FiYy0nKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdE5vbmUocmUuc2VhcmNoKCIxMjMuKi0iLCAnMTIzXHhlOS0nKSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vdE5vbmUocmUuc2VhcmNoKCIxMjMuKi0iLCAnMTIzXHUyMGFjLScpKQorICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShyZS5zZWFyY2goIjEyMy4qLSIsICcxMjNcVTAwMTBmZmZmLScpKQorICAgICAgICBzZWxmLmFzc2VydElzTm90Tm9uZShyZS5zZWFyY2goIjEyMy4qLSIsICcxMjNceGU5XHUyMGFjXFUwMDEwZmZmZi0nKSkKKwogZGVmIHJ1bl9yZV90ZXN0cygpOgogICAgIGZyb20gdGVzdC5yZV90ZXN0cyBpbXBvcnQgdGVzdHMsIFNVQ0NFRUQsIEZBSUwsIFNZTlRBWF9FUlJPUgogICAgIGlmIHZlcmJvc2U6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3JlcHJsaWIucHkgYi9MaWIvdGVzdC90ZXN0X3JlcHJsaWIucHkKaW5kZXggYjBkYzRkNy4uMDM2NWNlYSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9yZXBybGliLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfcmVwcmxpYi5weQpAQCAtOCw3ICs4LDcgQEAKIGltcG9ydCBzaHV0aWwKIGltcG9ydCB1bml0dGVzdAogCi1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgcnVuX3VuaXR0ZXN0Citmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgcnVuX3VuaXR0ZXN0LCBjcmVhdGVfZW1wdHlfZmlsZQogZnJvbSByZXBybGliIGltcG9ydCByZXByIGFzIHIgIyBEb24ndCBzaGFkb3cgYnVpbHRpbiByZXByCiBmcm9tIHJlcHJsaWIgaW1wb3J0IFJlcHIKIGZyb20gcmVwcmxpYiBpbXBvcnQgcmVjdXJzaXZlX3JlcHIKQEAgLTEyOSw4ICsxMjksOCBAQAogICAgICAgICBzZWxmLmFzc2VydEluKHMuZmluZCgiLi4uIiksIFsxMiwgMTNdKQogCiAgICAgZGVmIHRlc3RfbGFtYmRhKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFRydWUocmVwcihsYW1iZGEgeDogeCkuc3RhcnRzd2l0aCgKLSAgICAgICAgICAgICI8ZnVuY3Rpb24gPGxhbWJkYSIpKQorICAgICAgICByID0gcmVwcihsYW1iZGEgeDogeCkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHIuc3RhcnRzd2l0aCgiPGZ1bmN0aW9uIFJlcHJUZXN0cy50ZXN0X2xhbWJkYS48bG9jYWxzPi48bGFtYmRhIiksIHIpCiAgICAgICAgICMgWFhYIGFub255bW91cyBmdW5jdGlvbnM/ICBzZWUgZnVuY19yZXByCiAKICAgICBkZWYgdGVzdF9idWlsdGluX2Z1bmN0aW9uKHNlbGYpOgpAQCAtMTkzLDEwICsxOTMsOSBAQAogICAgICAgICByKHkpCiAgICAgICAgIHIoeikKIAotZGVmIHRvdWNoKHBhdGgsIHRleHQ9JycpOgotICAgIGZwID0gb3BlbihwYXRoLCAndycpCi0gICAgZnAud3JpdGUodGV4dCkKLSAgICBmcC5jbG9zZSgpCitkZWYgd3JpdGVfZmlsZShwYXRoLCB0ZXh0KToKKyAgICB3aXRoIG9wZW4ocGF0aCwgJ3cnLCBlbmNvZGluZz0nQVNDSUknKSBhcyBmcDoKKyAgICAgICAgZnAud3JpdGUodGV4dCkKIAogY2xhc3MgTG9uZ1JlcHJUZXN0KHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICBkZWYgc2V0VXAoc2VsZik6CkBAIC0yMDYsMTAgKzIwNSwxMCBAQAogICAgICAgICAjIE1ha2UgdGhlIHBhY2thZ2UgYW5kIHN1YnBhY2thZ2UKICAgICAgICAgc2h1dGlsLnJtdHJlZShzZWxmLnBrZ25hbWUsIGlnbm9yZV9lcnJvcnM9VHJ1ZSkKICAgICAgICAgb3MubWtkaXIoc2VsZi5wa2duYW1lKQotICAgICAgICB0b3VjaChvcy5wYXRoLmpvaW4oc2VsZi5wa2duYW1lLCAnX19pbml0X18ucHknKSkKKyAgICAgICAgY3JlYXRlX2VtcHR5X2ZpbGUob3MucGF0aC5qb2luKHNlbGYucGtnbmFtZSwgJ19faW5pdF9fLnB5JykpCiAgICAgICAgIHNodXRpbC5ybXRyZWUoc2VsZi5zdWJwa2duYW1lLCBpZ25vcmVfZXJyb3JzPVRydWUpCiAgICAgICAgIG9zLm1rZGlyKHNlbGYuc3VicGtnbmFtZSkKLSAgICAgICAgdG91Y2gob3MucGF0aC5qb2luKHNlbGYuc3VicGtnbmFtZSwgJ19faW5pdF9fLnB5JykpCisgICAgICAgIGNyZWF0ZV9lbXB0eV9maWxlKG9zLnBhdGguam9pbihzZWxmLnN1YnBrZ25hbWUsICdfX2luaXRfXy5weScpKQogICAgICAgICAjIFJlbWVtYmVyIHdoZXJlIHdlIGFyZQogICAgICAgICBzZWxmLmhlcmUgPSBvcy5nZXRjd2QoKQogICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgc2VsZi5oZXJlKQpAQCAtMjMxLDE1ICsyMzAsMTUgQEAKIAogICAgIGRlZiB0ZXN0X21vZHVsZShzZWxmKToKICAgICAgICAgZXEgPSBzZWxmLmFzc2VydEVxdWFsCi0gICAgICAgIHRvdWNoKG9zLnBhdGguam9pbihzZWxmLnN1YnBrZ25hbWUsIHNlbGYucGtnbmFtZSArICcucHknKSkKKyAgICAgICAgY3JlYXRlX2VtcHR5X2ZpbGUob3MucGF0aC5qb2luKHNlbGYuc3VicGtnbmFtZSwgc2VsZi5wa2duYW1lICsgJy5weScpKQogICAgICAgICBmcm9tIGFyZWFsbHlsb25ncGFja2FnZWFuZG1vZHVsZW5hbWV0b3Rlc3RyZXBydHJ1bmNhdGlvbi5hcmVhbGx5bG9uZ3BhY2thZ2VhbmRtb2R1bGVuYW1ldG90ZXN0cmVwcnRydW5jYXRpb24gaW1wb3J0IGFyZWFsbHlsb25ncGFja2FnZWFuZG1vZHVsZW5hbWV0b3Rlc3RyZXBydHJ1bmNhdGlvbgogICAgICAgICBlcShyZXByKGFyZWFsbHlsb25ncGFja2FnZWFuZG1vZHVsZW5hbWV0b3Rlc3RyZXBydHJ1bmNhdGlvbiksCi0gICAgICAgICAgICI8bW9kdWxlICclcycgZnJvbSAnJXMnPiIgJSAoYXJlYWxseWxvbmdwYWNrYWdlYW5kbW9kdWxlbmFtZXRvdGVzdHJlcHJ0cnVuY2F0aW9uLl9fbmFtZV9fLCBhcmVhbGx5bG9uZ3BhY2thZ2VhbmRtb2R1bGVuYW1ldG90ZXN0cmVwcnRydW5jYXRpb24uX19maWxlX18pKQorICAgICAgICAgICAiPG1vZHVsZSAlciBmcm9tICVyPiIgJSAoYXJlYWxseWxvbmdwYWNrYWdlYW5kbW9kdWxlbmFtZXRvdGVzdHJlcHJ0cnVuY2F0aW9uLl9fbmFtZV9fLCBhcmVhbGx5bG9uZ3BhY2thZ2VhbmRtb2R1bGVuYW1ldG90ZXN0cmVwcnRydW5jYXRpb24uX19maWxlX18pKQogICAgICAgICBlcShyZXByKHN5cyksICI8bW9kdWxlICdzeXMnIChidWlsdC1pbik+IikKIAogICAgIGRlZiB0ZXN0X3R5cGUoc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbAotICAgICAgICB0b3VjaChvcy5wYXRoLmpvaW4oc2VsZi5zdWJwa2duYW1lLCAnZm9vLnB5JyksICcnJ1wKKyAgICAgICAgd3JpdGVfZmlsZShvcy5wYXRoLmpvaW4oc2VsZi5zdWJwa2duYW1lLCAnZm9vLnB5JyksICcnJ1wKIGNsYXNzIGZvbyhvYmplY3QpOgogICAgIHBhc3MKICcnJykKQEAgLTI1Myw3ICsyNTIsNyBAQAogICAgICAgICBwYXNzCiAKICAgICBkZWYgdGVzdF9jbGFzcyhzZWxmKToKLSAgICAgICAgdG91Y2gob3MucGF0aC5qb2luKHNlbGYuc3VicGtnbmFtZSwgJ2Jhci5weScpLCAnJydcCisgICAgICAgIHdyaXRlX2ZpbGUob3MucGF0aC5qb2luKHNlbGYuc3VicGtnbmFtZSwgJ2Jhci5weScpLCAnJydcCiBjbGFzcyBiYXI6CiAgICAgcGFzcwogJycnKQpAQCAtMjYyLDcgKzI2MSw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVwcihiYXIuYmFyKSwgIjxjbGFzcyAnJXMuYmFyJz4iICUgYmFyLl9fbmFtZV9fKQogCiAgICAgZGVmIHRlc3RfaW5zdGFuY2Uoc2VsZik6Ci0gICAgICAgIHRvdWNoKG9zLnBhdGguam9pbihzZWxmLnN1YnBrZ25hbWUsICdiYXoucHknKSwgJycnXAorICAgICAgICB3cml0ZV9maWxlKG9zLnBhdGguam9pbihzZWxmLnN1YnBrZ25hbWUsICdiYXoucHknKSwgJycnXAogY2xhc3MgYmF6OgogICAgIHBhc3MKICcnJykKQEAgLTI3MywxOSArMjcyLDIwIEBACiAKICAgICBkZWYgdGVzdF9tZXRob2Qoc2VsZik6CiAgICAgICAgIGVxID0gc2VsZi5hc3NlcnRFcXVhbAotICAgICAgICB0b3VjaChvcy5wYXRoLmpvaW4oc2VsZi5zdWJwa2duYW1lLCAncXV4LnB5JyksICcnJ1wKKyAgICAgICAgd3JpdGVfZmlsZShvcy5wYXRoLmpvaW4oc2VsZi5zdWJwa2duYW1lLCAncXV4LnB5JyksICcnJ1wKIGNsYXNzIGFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhOgogICAgIGRlZiBhbWV0aG9kKHNlbGYpOiBwYXNzCiAnJycpCiAgICAgICAgIGZyb20gYXJlYWxseWxvbmdwYWNrYWdlYW5kbW9kdWxlbmFtZXRvdGVzdHJlcHJ0cnVuY2F0aW9uLmFyZWFsbHlsb25ncGFja2FnZWFuZG1vZHVsZW5hbWV0b3Rlc3RyZXBydHJ1bmNhdGlvbiBpbXBvcnQgcXV4CiAgICAgICAgICMgVW5ib3VuZCBtZXRob2RzIGZpcnN0Ci0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZXByKHF1eC5hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYS5hbWV0aG9kKS5zdGFydHN3aXRoKAotICAgICAgICAnPGZ1bmN0aW9uIGFtZXRob2QnKSkKKyAgICAgICAgciA9IHJlcHIocXV4LmFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhLmFtZXRob2QpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyLnN0YXJ0c3dpdGgoJzxmdW5jdGlvbiBhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYS5hbWV0aG9kJyksIHIpCiAgICAgICAgICMgQm91bmQgbWV0aG9kIG5leHQKICAgICAgICAgaXF1eCA9IHF1eC5hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYSgpCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShyZXByKGlxdXguYW1ldGhvZCkuc3RhcnRzd2l0aCgKKyAgICAgICAgciA9IHJlcHIoaXF1eC5hbWV0aG9kKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoci5zdGFydHN3aXRoKAogICAgICAgICAgICAgJzxib3VuZCBtZXRob2QgYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEuYW1ldGhvZCBvZiA8JXMuYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEgb2JqZWN0IGF0IDB4JyBcCi0gICAgICAgICAgICAlIChxdXguX19uYW1lX18sKSApKQorICAgICAgICAgICAgJSAocXV4Ll9fbmFtZV9fLCkgKSwgcikKIAogICAgIGRlZiB0ZXN0X2J1aWx0aW5fZnVuY3Rpb24oc2VsZik6CiAgICAgICAgICMgWFhYIHRlc3QgYnVpbHQtaW4gZnVuY3Rpb25zIGFuZCBtZXRob2RzIHdpdGggcmVhbGx5IGxvbmcgbmFtZXMKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfcmljaGNtcC5weSBiL0xpYi90ZXN0L3Rlc3RfcmljaGNtcC5weQppbmRleCBmOGYzNzE3Li4wYjYyOWRjIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3JpY2hjbXAucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9yaWNoY21wLnB5CkBAIC0yMjAsNiArMjIwLDcgQEAKICAgICAgICAgZm9yIGZ1bmMgaW4gKGRvLCBvcGVyYXRvci5ub3RfKToKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEV4YywgZnVuYywgQmFkKCkpCiAKKyAgICBAc3VwcG9ydC5ub190cmFjaW5nCiAgICAgZGVmIHRlc3RfcmVjdXJzaW9uKHNlbGYpOgogICAgICAgICAjIENoZWNrIHRoYXQgY29tcGFyaXNvbiBmb3IgcmVjdXJzaXZlIG9iamVjdHMgZmFpbHMgZ3JhY2VmdWxseQogICAgICAgICBmcm9tIGNvbGxlY3Rpb25zIGltcG9ydCBVc2VyTGlzdApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9ydW5weS5weSBiL0xpYi90ZXN0L3Rlc3RfcnVucHkucHkKaW5kZXggN2ZmYjZhZi4uMmNlZGUxOSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9ydW5weS5weQorKysgYi9MaWIvdGVzdC90ZXN0X3J1bnB5LnB5CkBAIC02LDcgKzYsOSBAQAogaW1wb3J0IHJlCiBpbXBvcnQgdGVtcGZpbGUKIGltcG9ydCBweV9jb21waWxlCi1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgZm9yZ2V0LCBtYWtlX2xlZ2FjeV9weWMsIHJ1bl91bml0dGVzdCwgdW5sb2FkLCB2ZXJib3NlCitmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgKAorICAgIGZvcmdldCwgbWFrZV9sZWdhY3lfcHljLCBydW5fdW5pdHRlc3QsIHVubG9hZCwgdmVyYm9zZSwgbm9fdHJhY2luZywKKyAgICBjcmVhdGVfZW1wdHlfZmlsZSkKIGZyb20gdGVzdC5zY3JpcHRfaGVscGVyIGltcG9ydCAoCiAgICAgbWFrZV9wa2csIG1ha2Vfc2NyaXB0LCBtYWtlX3ppcF9wa2csIG1ha2VfemlwX3NjcmlwdCwgdGVtcF9kaXIpCiAKQEAgLTExMiw4ICsxMTQsNyBAQAogICAgIGRlZiBfYWRkX3BrZ19kaXIoc2VsZiwgcGtnX2Rpcik6CiAgICAgICAgIG9zLm1rZGlyKHBrZ19kaXIpCiAgICAgICAgIHBrZ19mbmFtZSA9IG9zLnBhdGguam9pbihwa2dfZGlyLCAiX19pbml0X18ucHkiKQotICAgICAgICBwa2dfZmlsZSA9IG9wZW4ocGtnX2ZuYW1lLCAidyIpCi0gICAgICAgIHBrZ19maWxlLmNsb3NlKCkKKyAgICAgICAgY3JlYXRlX2VtcHR5X2ZpbGUocGtnX2ZuYW1lKQogICAgICAgICByZXR1cm4gcGtnX2ZuYW1lCiAKICAgICBkZWYgX21ha2VfcGtnKHNlbGYsIHNvdXJjZSwgZGVwdGgsIG1vZF9iYXNlPSJydW5weV90ZXN0Iik6CkBAIC0yMTgsOCArMjE5LDcgQEAKICAgICAgICAgICAgIG1vZHVsZV9kaXIgPSBvcy5wYXRoLmpvaW4obW9kdWxlX2RpciwgcGtnX25hbWUpCiAgICAgICAgICMgQWRkIHNpYmxpbmcgbW9kdWxlCiAgICAgICAgIHNpYmxpbmdfZm5hbWUgPSBvcy5wYXRoLmpvaW4obW9kdWxlX2RpciwgInNpYmxpbmcucHkiKQotICAgICAgICBzaWJsaW5nX2ZpbGUgPSBvcGVuKHNpYmxpbmdfZm5hbWUsICJ3IikKLSAgICAgICAgc2libGluZ19maWxlLmNsb3NlKCkKKyAgICAgICAgY3JlYXRlX2VtcHR5X2ZpbGUoc2libGluZ19mbmFtZSkKICAgICAgICAgaWYgdmVyYm9zZTogcHJpbnQoIiAgQWRkZWQgc2libGluZyBtb2R1bGU6Iiwgc2libGluZ19mbmFtZSkKICAgICAgICAgIyBBZGQgbmVwaGV3IG1vZHVsZQogICAgICAgICB1bmNsZV9kaXIgPSBvcy5wYXRoLmpvaW4ocGFyZW50X2RpciwgInVuY2xlIikKQEAgLTIyOSw4ICsyMjksNyBAQAogICAgICAgICBzZWxmLl9hZGRfcGtnX2Rpcihjb3VzaW5fZGlyKQogICAgICAgICBpZiB2ZXJib3NlOiBwcmludCgiICBBZGRlZCBjb3VzaW4gcGFja2FnZToiLCBjb3VzaW5fZGlyKQogICAgICAgICBuZXBoZXdfZm5hbWUgPSBvcy5wYXRoLmpvaW4oY291c2luX2RpciwgIm5lcGhldy5weSIpCi0gICAgICAgIG5lcGhld19maWxlID0gb3BlbihuZXBoZXdfZm5hbWUsICJ3IikKLSAgICAgICAgbmVwaGV3X2ZpbGUuY2xvc2UoKQorICAgICAgICBjcmVhdGVfZW1wdHlfZmlsZShuZXBoZXdfZm5hbWUpCiAgICAgICAgIGlmIHZlcmJvc2U6IHByaW50KCIgIEFkZGVkIG5lcGhldyBtb2R1bGU6IiwgbmVwaGV3X2ZuYW1lKQogCiAgICAgZGVmIF9jaGVja19yZWxhdGl2ZV9pbXBvcnRzKHNlbGYsIGRlcHRoLCBydW5fbmFtZT1Ob25lKToKQEAgLTM5NSw2ICszOTQsNyBAQAogICAgICAgICAgICAgbXNnID0gImNhbid0IGZpbmQgJ19fbWFpbl9fJyBtb2R1bGUgaW4gJXIiICUgemlwX25hbWUKICAgICAgICAgICAgIHNlbGYuX2NoZWNrX2ltcG9ydF9lcnJvcih6aXBfbmFtZSwgbXNnKQogCisgICAgQG5vX3RyYWNpbmcKICAgICBkZWYgdGVzdF9tYWluX3JlY3Vyc2lvbl9lcnJvcihzZWxmKToKICAgICAgICAgd2l0aCB0ZW1wX2RpcigpIGFzIHNjcmlwdF9kaXIsIHRlbXBfZGlyKCkgYXMgZHVtbXlfZGlyOgogICAgICAgICAgICAgbW9kX25hbWUgPSAnX19tYWluX18nCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3NheC5weSBiL0xpYi90ZXN0L3Rlc3Rfc2F4LnB5CmluZGV4IDEyMjVkNmUuLjhlMDA4ODkgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc2F4LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc2F4LnB5CkBAIC0yMCw4ICsyMCw4IEBACiBURVNUX1hNTEZJTEUgPSBmaW5kZmlsZSgidGVzdC54bWwiLCBzdWJkaXI9InhtbHRlc3RkYXRhIikKIFRFU1RfWE1MRklMRV9PVVQgPSBmaW5kZmlsZSgidGVzdC54bWwub3V0Iiwgc3ViZGlyPSJ4bWx0ZXN0ZGF0YSIpCiB0cnk6Ci0gICAgVEVTVF9YTUxGSUxFLmVuY29kZSgidXRmOCIpCi0gICAgVEVTVF9YTUxGSUxFX09VVC5lbmNvZGUoInV0ZjgiKQorICAgIFRFU1RfWE1MRklMRS5lbmNvZGUoInV0Zi04IikKKyAgICBURVNUX1hNTEZJTEVfT1VULmVuY29kZSgidXRmLTgiKQogZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKICAgICByYWlzZSB1bml0dGVzdC5Ta2lwVGVzdCgiZmlsZW5hbWUgaXMgbm90IGVuY29kYWJsZSB0byB1dGY4IikKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zY2hlZC5weSBiL0xpYi90ZXN0L3Rlc3Rfc2NoZWQucHkKaW5kZXggMjlmZDI3Ny4uYWU4MmY5NCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9zY2hlZC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3NjaGVkLnB5CkBAIC02MiwxNSArNjIsMzggQEAKIAogICAgIGRlZiB0ZXN0X3F1ZXVlKHNlbGYpOgogICAgICAgICBsID0gW10KLSAgICAgICAgZXZlbnRzID0gW10KICAgICAgICAgZnVuID0gbGFtYmRhIHg6IGwuYXBwZW5kKHgpCiAgICAgICAgIHNjaGVkdWxlciA9IHNjaGVkLnNjaGVkdWxlcih0aW1lLnRpbWUsIHRpbWUuc2xlZXApCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2NoZWR1bGVyLl9xdWV1ZSwgW10pCi0gICAgICAgIGZvciB4IGluIFswLjA1LCAwLjA0LCAwLjAzLCAwLjAyLCAwLjAxXToKLSAgICAgICAgICAgIGV2ZW50cy5hcHBlbmQoc2NoZWR1bGVyLmVudGVyYWJzKHgsIDEsIGZ1biwgKHgsKSkpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2NoZWR1bGVyLl9xdWV1ZS5zb3J0KCksIGV2ZW50cy5zb3J0KCkpCisgICAgICAgIGU1ID0gc2NoZWR1bGVyLmVudGVyKDAuMDUsIDEsIGZ1bikKKyAgICAgICAgZTEgPSBzY2hlZHVsZXIuZW50ZXIoMC4wMSwgMSwgZnVuKQorICAgICAgICBlMiA9IHNjaGVkdWxlci5lbnRlcigwLjAyLCAxLCBmdW4pCisgICAgICAgIGU0ID0gc2NoZWR1bGVyLmVudGVyKDAuMDQsIDEsIGZ1bikKKyAgICAgICAgZTMgPSBzY2hlZHVsZXIuZW50ZXIoMC4wMywgMSwgZnVuKQorICAgICAgICAjIHF1ZXVlIHByb3BlcnR5IGlzIHN1cHBvc2VkIHRvIHJldHVybiBhbiBvcmRlciBsaXN0IG9mCisgICAgICAgICMgdXBjb21pbmcgZXZlbnRzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGlzdChzY2hlZHVsZXIucXVldWUpLCBbZTEsIGUyLCBlMywgZTQsIGU1XSkKKworICAgIGRlZiB0ZXN0X2FyZ3Nfa3dhcmdzKHNlbGYpOgorICAgICAgICBmbGFnID0gW10KKworICAgICAgICBkZWYgZnVuKCphLCAqKmIpOgorICAgICAgICAgICAgZmxhZy5hcHBlbmQoTm9uZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYSwgKDEsMiwzKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYiwgeyJmb28iOjF9KQorCisgICAgICAgIHNjaGVkdWxlciA9IHNjaGVkLnNjaGVkdWxlcih0aW1lLnRpbWUsIHRpbWUuc2xlZXApCisgICAgICAgIHogPSBzY2hlZHVsZXIuZW50ZXJhYnMoMC4wMSwgMSwgZnVuLCBhcmd1bWVudD0oMSwyLDMpLCBrd2FyZ3M9eyJmb28iOjF9KQogICAgICAgICBzY2hlZHVsZXIucnVuKCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzY2hlZHVsZXIuX3F1ZXVlLCBbXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbGFnLCBbTm9uZV0pCisKKyAgICBkZWYgdGVzdF9ydW5fbm9uX2Jsb2NraW5nKHNlbGYpOgorICAgICAgICBsID0gW10KKyAgICAgICAgZnVuID0gbGFtYmRhIHg6IGwuYXBwZW5kKHgpCisgICAgICAgIHNjaGVkdWxlciA9IHNjaGVkLnNjaGVkdWxlcih0aW1lLnRpbWUsIHRpbWUuc2xlZXApCisgICAgICAgIGZvciB4IGluIFsxMCwgOSwgOCwgNywgNl06CisgICAgICAgICAgICBzY2hlZHVsZXIuZW50ZXIoeCwgMSwgZnVuLCAoeCwpKQorICAgICAgICBzY2hlZHVsZXIucnVuKGJsb2NraW5nPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGwsIFtdKQogCiAKIGRlZiB0ZXN0X21haW4oKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfc2NvcGUucHkgYi9MaWIvdGVzdC90ZXN0X3Njb3BlLnB5CmluZGV4IGZiYzg3YWEuLjEyOWExOGEgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc2NvcGUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9zY29wZS5weQpAQCAtMSw1ICsxLDUgQEAKIGltcG9ydCB1bml0dGVzdAotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IGNoZWNrX3N5bnRheF9lcnJvciwgcnVuX3VuaXR0ZXN0Citmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgY2hlY2tfc3ludGF4X2Vycm9yLCBjcHl0aG9uX29ubHksIHJ1bl91bml0dGVzdAogCiAKIGNsYXNzIFNjb3BlVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtNDk2LDIzICs0OTYsMjIgQEAKICAgICAgICAgc2VsZi5hc3NlcnROb3RJbigieCIsIHZhcm5hbWVzKQogICAgICAgICBzZWxmLmFzc2VydEluKCJ5IiwgdmFybmFtZXMpCiAKKyAgICBAY3B5dGhvbl9vbmx5CiAgICAgZGVmIHRlc3RMb2NhbHNDbGFzc19XaXRoVHJhY2Uoc2VsZik6CiAgICAgICAgICMgSXNzdWUyMzcyODogYWZ0ZXIgdGhlIHRyYWNlIGZ1bmN0aW9uIHJldHVybnMsIHRoZSBsb2NhbHMoKQogICAgICAgICAjIGRpY3Rpb25hcnkgaXMgdXNlZCB0byB1cGRhdGUgYWxsIHZhcmlhYmxlcywgdGhpcyB1c2VkIHRvCiAgICAgICAgICMgaW5jbHVkZSBmcmVlIHZhcmlhYmxlcy4gQnV0IGluIGNsYXNzIHN0YXRlbWVudHMsIGZyZWUKICAgICAgICAgIyB2YXJpYWJsZXMgYXJlIG5vdCBpbnNlcnRlZC4uLgogICAgICAgICBpbXBvcnQgc3lzCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzeXMuc2V0dHJhY2UsIHN5cy5nZXR0cmFjZSgpKQogICAgICAgICBzeXMuc2V0dHJhY2UobGFtYmRhIGEsYixjOk5vbmUpCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHggPSAxMgorICAgICAgICB4ID0gMTIKIAotICAgICAgICAgICAgY2xhc3MgQzoKLSAgICAgICAgICAgICAgICBkZWYgZihzZWxmKToKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHgKKyAgICAgICAgY2xhc3MgQzoKKyAgICAgICAgICAgIGRlZiBmKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiB4CiAKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeCwgMTIpICMgVXNlZCB0byByYWlzZSBVbmJvdW5kTG9jYWxFcnJvcgotICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgc3lzLnNldHRyYWNlKE5vbmUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeCwgMTIpICMgVXNlZCB0byByYWlzZSBVbmJvdW5kTG9jYWxFcnJvcgogCiAgICAgZGVmIHRlc3RCb3VuZEFuZEZyZWUoc2VsZik6CiAgICAgICAgICMgdmFyIGlzIGJvdW5kIGFuZCBmcmVlIGluIGNsYXNzCkBAIC01MjcsNiArNTI2LDcgQEAKICAgICAgICAgaW5zdCA9IGYoMykoKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGluc3QuYSwgaW5zdC5tKCkpCiAKKyAgICBAY3B5dGhvbl9vbmx5CiAgICAgZGVmIHRlc3RJbnRlcmFjdGlvbldpdGhUcmFjZUZ1bmMoc2VsZik6CiAKICAgICAgICAgaW1wb3J0IHN5cwpAQCAtNTQzLDYgKzU0Myw3IEBACiAgICAgICAgIGNsYXNzIFRlc3RDbGFzczoKICAgICAgICAgICAgIHBhc3MKIAorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnNldHRyYWNlLCBzeXMuZ2V0dHJhY2UoKSkKICAgICAgICAgc3lzLnNldHRyYWNlKHRyYWNlcikKICAgICAgICAgYWRhcHRnZXR0ZXIoImZvbyIsIFRlc3RDbGFzcywgKDEsICIiKSkKICAgICAgICAgc3lzLnNldHRyYWNlKE5vbmUpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3NlbGVjdC5weSBiL0xpYi90ZXN0L3Rlc3Rfc2VsZWN0LnB5CmluZGV4IGZlOTJmNDUuLjMxNDRjNTQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc2VsZWN0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc2VsZWN0LnB5CkBAIC0xLDggKzEsOSBAQAotZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0Ci1pbXBvcnQgdW5pdHRlc3QKLWltcG9ydCBzZWxlY3QKK2ltcG9ydCBlcnJubwogaW1wb3J0IG9zCitpbXBvcnQgc2VsZWN0CiBpbXBvcnQgc3lzCitpbXBvcnQgdW5pdHRlc3QKK2Zyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogCiBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybVs6M10gaW4gKCd3aW4nLCAnb3MyJywgJ3Jpc2NvcycpLAogICAgICAgICAgICAgICAgICAiY2FuJ3QgZWFzaWx5IHRlc3Qgb24gdGhpcyBzeXN0ZW0iKQpAQCAtMjAsNiArMjEsMjEgQEAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxlY3Quc2VsZWN0LCBbc2VsZi5Ob3BlKCldLCBbXSwgW10pCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZWN0LnNlbGVjdCwgW3NlbGYuQWxtb3N0KCldLCBbXSwgW10pCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZWN0LnNlbGVjdCwgW10sIFtdLCBbXSwgIm5vdCBhIG51bWJlciIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNlbGVjdC5zZWxlY3QsIFtdLCBbXSwgW10sIC0xKQorCisgICAgIyBJc3N1ZSAjMTIzNjc6IGh0dHA6Ly93d3cuZnJlZWJzZC5vcmcvY2dpL3F1ZXJ5LXByLmNnaT9wcj1rZXJuLzE1NTYwNgorICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ2ZyZWVic2QnKSwKKyAgICAgICAgICAgICAgICAgICAgICdza2lwIGJlY2F1c2Ugb2YgYSBGcmVlQlNEIGJ1Zzoga2Vybi8xNTU2MDYnKQorICAgIGRlZiB0ZXN0X2Vycm5vKHNlbGYpOgorICAgICAgICB3aXRoIG9wZW4oX19maWxlX18sICdyYicpIGFzIGZwOgorICAgICAgICAgICAgZmQgPSBmcC5maWxlbm8oKQorICAgICAgICAgICAgZnAuY2xvc2UoKQorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNlbGVjdC5zZWxlY3QoW2ZkXSwgW10sIFtdLCAwKQorICAgICAgICAgICAgZXhjZXB0IHNlbGVjdC5lcnJvciBhcyBlcnI6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlcnIuZXJybm8sIGVycm5vLkVCQURGKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzZWxmLmZhaWwoImV4Y2VwdGlvbiBub3QgcmFpc2VkIikKIAogICAgIGRlZiB0ZXN0X3JldHVybmVkX2xpc3RfaWRlbnRpdHkoc2VsZik6CiAgICAgICAgICMgU2VlIGlzc3VlICM4MzI5CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3NoZWx2ZS5weSBiL0xpYi90ZXN0L3Rlc3Rfc2hlbHZlLnB5CmluZGV4IDNlNzNmNTIuLjEzYzEyNjUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc2hlbHZlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc2hlbHZlLnB5CkBAIC0yLDcgKzIsNyBAQAogaW1wb3J0IHNoZWx2ZQogaW1wb3J0IGdsb2IKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAotZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgTXV0YWJsZU1hcHBpbmcKK2Zyb20gY29sbGVjdGlvbnMuYWJjIGltcG9ydCBNdXRhYmxlTWFwcGluZwogZnJvbSB0ZXN0LnRlc3RfZGJtIGltcG9ydCBkYm1faXRlcmF0b3IKIAogZGVmIEwxKHMpOgpAQCAtMTI5LDggKzEyOSw4IEBACiAgICAgICAgIHNoZWx2ZS5TaGVsZihkKVtrZXldID0gWzFdCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oa2V5LmVuY29kZSgndXRmLTgnKSwgZCkKICAgICAgICAgIyBidXQgYSBkaWZmZXJlbnQgb25lIGNhbiBiZSBnaXZlbgotICAgICAgICBzaGVsdmUuU2hlbGYoZCwga2V5ZW5jb2Rpbmc9J2xhdGluMScpW2tleV0gPSBbMV0KLSAgICAgICAgc2VsZi5hc3NlcnRJbihrZXkuZW5jb2RlKCdsYXRpbjEnKSwgZCkKKyAgICAgICAgc2hlbHZlLlNoZWxmKGQsIGtleWVuY29kaW5nPSdsYXRpbi0xJylba2V5XSA9IFsxXQorICAgICAgICBzZWxmLmFzc2VydEluKGtleS5lbmNvZGUoJ2xhdGluLTEnKSwgZCkKICAgICAgICAgIyB3aXRoIGFsbCBjb25zZXF1ZW5jZXMKICAgICAgICAgcyA9IHNoZWx2ZS5TaGVsZihkLCBrZXllbmNvZGluZz0nYXNjaWknKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhVbmljb2RlRW5jb2RlRXJyb3IsIHMuX19zZXRpdGVtX18sIGtleSwgWzFdKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zaGxleC5weSBiL0xpYi90ZXN0L3Rlc3Rfc2hsZXgucHkKaW5kZXggMjVlNGI2ZC4uZDQ0NjNmMyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9zaGxleC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3NobGV4LnB5CkBAIC0xLDYgKzEsNyBAQAotaW1wb3J0IHVuaXR0ZXN0Ci1pbXBvcnQgb3MsIHN5cywgaW8KK2ltcG9ydCBpbwogaW1wb3J0IHNobGV4CitpbXBvcnQgc3RyaW5nCitpbXBvcnQgdW5pdHRlc3QKIAogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiAKQEAgLTE3Myw2ICsxNzQsMjIgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiVzOiAlcyAhPSAlcyIgJQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2VsZi5kYXRhW2ldWzBdLCBsLCBzZWxmLmRhdGFbaV1bMTpdKSkKIAorICAgIGRlZiB0ZXN0UXVvdGUoc2VsZik6CisgICAgICAgIHNhZmV1bnF1b3RlZCA9IHN0cmluZy5hc2NpaV9sZXR0ZXJzICsgc3RyaW5nLmRpZ2l0cyArICdAJV8tKz06LC4vJworICAgICAgICB1bmljb2RlX3NhbXBsZSA9ICdceGU5XHhlMFx4ZGYnICAjIGUgKyBhY3V0ZSBhY2NlbnQsIGEgKyBncmF2ZSwgc2hhcnAgcworICAgICAgICB1bnNhZmUgPSAnImAkXFwhJyArIHVuaWNvZGVfc2FtcGxlCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaGxleC5xdW90ZSgnJyksICInJyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2hsZXgucXVvdGUoc2FmZXVucXVvdGVkKSwgc2FmZXVucXVvdGVkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNobGV4LnF1b3RlKCd0ZXN0IGZpbGUgbmFtZScpLCAiJ3Rlc3QgZmlsZSBuYW1lJyIpCisgICAgICAgIGZvciB1IGluIHVuc2FmZToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2hsZXgucXVvdGUoJ3Rlc3Qlc25hbWUnICUgdSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIndGVzdCVzbmFtZSciICUgdSkKKyAgICAgICAgZm9yIHUgaW4gdW5zYWZlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaGxleC5xdW90ZSgidGVzdCVzJ25hbWUnIiAlIHUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJ3Rlc3QlcydcIidcIiduYW1lJ1wiJ1wiJyciICUgdSkKKworCiAjIEFsbG93IHRoaXMgdGVzdCB0byBiZSB1c2VkIHdpdGggb2xkIHNobGV4LnB5CiBpZiBub3QgZ2V0YXR0cihzaGxleCwgInNwbGl0IiwgTm9uZSk6CiAgICAgZm9yIG1ldGhuYW1lIGluIGRpcihTaGxleFRlc3QpOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zaHV0aWwucHkgYi9MaWIvdGVzdC90ZXN0X3NodXRpbC5weQppbmRleCBlMjMxMGUyLi5jNzJiYWMyIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3NodXRpbC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3NodXRpbC5weQpAQCAtNyw2ICs3LDcgQEAKIGltcG9ydCBzdGF0CiBpbXBvcnQgb3MKIGltcG9ydCBvcy5wYXRoCitpbXBvcnQgZXJybm8KIGltcG9ydCBmdW5jdG9vbHMKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTgpAQCAtMjEsNyArMjIsNyBAQAogaW1wb3J0IHdhcm5pbmdzCiAKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTiwgY2hlY2tfd2FybmluZ3MsIGNhcHR1cmVkX3N0ZG91dAorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTiwgY2hlY2tfd2FybmluZ3MsIGNhcHR1cmVkX3N0ZG91dCwgcmVxdWlyZXNfemxpYgogCiB0cnk6CiAgICAgaW1wb3J0IGJ6MgpAQCAtMzksMTEgKzQwLDYgQEAKICAgICBVSURfR0lEX1NVUFBPUlQgPSBGYWxzZQogCiB0cnk6Ci0gICAgaW1wb3J0IHpsaWIKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICB6bGliID0gTm9uZQotCi10cnk6CiAgICAgaW1wb3J0IHppcGZpbGUKICAgICBaSVBfU1VQUE9SVCA9IFRydWUKIGV4Y2VwdCBJbXBvcnRFcnJvcjoKQEAgLTUxLDcgKzQ3LDcgQEAKIAogZGVmIF9mYWtlX3JlbmFtZSgqYXJncywgKiprd2FyZ3MpOgogICAgICMgUHJldGVuZCB0aGUgZGVzdGluYXRpb24gcGF0aCBpcyBvbiBhIGRpZmZlcmVudCBmaWxlc3lzdGVtLgotICAgIHJhaXNlIE9TRXJyb3IoKQorICAgIHJhaXNlIE9TRXJyb3IoZ2V0YXR0cihlcnJubywgJ0VYREVWJywgMTgpLCAiSW52YWxpZCBjcm9zcy1kZXZpY2UgbGluayIpCiAKIGRlZiBtb2NrX3JlbmFtZShmdW5jKToKICAgICBAZnVuY3Rvb2xzLndyYXBzKGZ1bmMpCkBAIC02NCw2ICs2MCwzMSBAQAogICAgICAgICAgICAgb3MucmVuYW1lID0gYnVpbHRpbl9yZW5hbWUKICAgICByZXR1cm4gd3JhcAogCitkZWYgd3JpdGVfZmlsZShwYXRoLCBjb250ZW50LCBiaW5hcnk9RmFsc2UpOgorICAgICIiIldyaXRlICpjb250ZW50KiB0byBhIGZpbGUgbG9jYXRlZCBhdCAqcGF0aCouCisKKyAgICBJZiAqcGF0aCogaXMgYSB0dXBsZSBpbnN0ZWFkIG9mIGEgc3RyaW5nLCBvcy5wYXRoLmpvaW4gd2lsbCBiZSB1c2VkIHRvCisgICAgbWFrZSBhIHBhdGguICBJZiAqYmluYXJ5KiBpcyB0cnVlLCB0aGUgZmlsZSB3aWxsIGJlIG9wZW5lZCBpbiBiaW5hcnkKKyAgICBtb2RlLgorICAgICIiIgorICAgIGlmIGlzaW5zdGFuY2UocGF0aCwgdHVwbGUpOgorICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKCpwYXRoKQorICAgIHdpdGggb3BlbihwYXRoLCAnd2InIGlmIGJpbmFyeSBlbHNlICd3JykgYXMgZnA6CisgICAgICAgIGZwLndyaXRlKGNvbnRlbnQpCisKK2RlZiByZWFkX2ZpbGUocGF0aCwgYmluYXJ5PUZhbHNlKToKKyAgICAiIiJSZXR1cm4gY29udGVudHMgZnJvbSBhIGZpbGUgbG9jYXRlZCBhdCAqcGF0aCouCisKKyAgICBJZiAqcGF0aCogaXMgYSB0dXBsZSBpbnN0ZWFkIG9mIGEgc3RyaW5nLCBvcy5wYXRoLmpvaW4gd2lsbCBiZSB1c2VkIHRvCisgICAgbWFrZSBhIHBhdGguICBJZiAqYmluYXJ5KiBpcyB0cnVlLCB0aGUgZmlsZSB3aWxsIGJlIG9wZW5lZCBpbiBiaW5hcnkKKyAgICBtb2RlLgorICAgICIiIgorICAgIGlmIGlzaW5zdGFuY2UocGF0aCwgdHVwbGUpOgorICAgICAgICBwYXRoID0gb3MucGF0aC5qb2luKCpwYXRoKQorICAgIHdpdGggb3BlbihwYXRoLCAncmInIGlmIGJpbmFyeSBlbHNlICdyJykgYXMgZnA6CisgICAgICAgIHJldHVybiBmcC5yZWFkKCkKKworCiBjbGFzcyBUZXN0U2h1dGlsKHVuaXR0ZXN0LlRlc3RDYXNlKToKIAogICAgIGRlZiBzZXRVcChzZWxmKToKQEAgLTc2LDE5ICs5Nyw2IEBACiAgICAgICAgICAgICBkID0gc2VsZi50ZW1wZGlycy5wb3AoKQogICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShkLCBvcy5uYW1lIGluICgnbnQnLCAnY3lnd2luJykpCiAKLSAgICBkZWYgd3JpdGVfZmlsZShzZWxmLCBwYXRoLCBjb250ZW50PSd4eHgnKToKLSAgICAgICAgIiIiV3JpdGVzIGEgZmlsZSBpbiB0aGUgZ2l2ZW4gcGF0aC4KLQotCi0gICAgICAgIHBhdGggY2FuIGJlIGEgc3RyaW5nIG9yIGEgc2VxdWVuY2UuCi0gICAgICAgICIiIgotICAgICAgICBpZiBpc2luc3RhbmNlKHBhdGgsIChsaXN0LCB0dXBsZSkpOgotICAgICAgICAgICAgcGF0aCA9IG9zLnBhdGguam9pbigqcGF0aCkKLSAgICAgICAgZiA9IG9wZW4ocGF0aCwgJ3cnKQotICAgICAgICB0cnk6Ci0gICAgICAgICAgICBmLndyaXRlKGNvbnRlbnQpCi0gICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICBmLmNsb3NlKCkKIAogICAgIGRlZiBta2R0ZW1wKHNlbGYpOgogICAgICAgICAiIiJDcmVhdGUgYSB0ZW1wb3JhcnkgZGlyZWN0b3J5IHRoYXQgd2lsbCBiZSBjbGVhbmVkIHVwLgpAQCAtMTEyLDggKzEyMCw3IEBACiAgICAgICAgICAgICBzZWxmLmVycm9yU3RhdGUgPSAwCiAgICAgICAgICAgICBvcy5ta2RpcihURVNURk4pCiAgICAgICAgICAgICBzZWxmLmNoaWxkcGF0aCA9IG9zLnBhdGguam9pbihURVNURk4sICdhJykKLSAgICAgICAgICAgIGYgPSBvcGVuKHNlbGYuY2hpbGRwYXRoLCAndycpCi0gICAgICAgICAgICBmLmNsb3NlKCkKKyAgICAgICAgICAgIHN1cHBvcnQuY3JlYXRlX2VtcHR5X2ZpbGUoc2VsZi5jaGlsZHBhdGgpCiAgICAgICAgICAgICBvbGRfZGlyX21vZGUgPSBvcy5zdGF0KFRFU1RGTikuc3RfbW9kZQogICAgICAgICAgICAgb2xkX2NoaWxkX21vZGUgPSBvcy5zdGF0KHNlbGYuY2hpbGRwYXRoKS5zdF9tb2RlCiAgICAgICAgICAgICAjIE1ha2UgdW53cml0YWJsZS4KQEAgLTE1OCw4NCArMTY1LDI2OCBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzc3ViY2xhc3MoZXhjWzBdLCBPU0Vycm9yKSkKICAgICAgICAgICAgIHNlbGYuZXJyb3JTdGF0ZSA9IDIKIAorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIob3MsICdjaG1vZCcpLCAncmVxdWlyZXMgb3MuY2htb2QnKQorICAgIEBzdXBwb3J0LnNraXBfdW5sZXNzX3N5bWxpbmsKKyAgICBkZWYgdGVzdF9jb3B5bW9kZV9mb2xsb3dfc3ltbGlua3Moc2VsZik6CisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzcmMgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2ZvbycpCisgICAgICAgIGRzdCA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnYmFyJykKKyAgICAgICAgc3JjX2xpbmsgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2JheicpCisgICAgICAgIGRzdF9saW5rID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdxdXV4JykKKyAgICAgICAgd3JpdGVfZmlsZShzcmMsICdmb28nKQorICAgICAgICB3cml0ZV9maWxlKGRzdCwgJ2ZvbycpCisgICAgICAgIG9zLnN5bWxpbmsoc3JjLCBzcmNfbGluaykKKyAgICAgICAgb3Muc3ltbGluayhkc3QsIGRzdF9saW5rKQorICAgICAgICBvcy5jaG1vZChzcmMsIHN0YXQuU19JUldYVXxzdGF0LlNfSVJXWEcpCisgICAgICAgICMgZmlsZSB0byBmaWxlCisgICAgICAgIG9zLmNobW9kKGRzdCwgc3RhdC5TX0lSV1hPKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKG9zLnN0YXQoc3JjKS5zdF9tb2RlLCBvcy5zdGF0KGRzdCkuc3RfbW9kZSkKKyAgICAgICAgc2h1dGlsLmNvcHltb2RlKHNyYywgZHN0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnN0YXQoc3JjKS5zdF9tb2RlLCBvcy5zdGF0KGRzdCkuc3RfbW9kZSkKKyAgICAgICAgIyBmb2xsb3cgc3JjIGxpbmsKKyAgICAgICAgb3MuY2htb2QoZHN0LCBzdGF0LlNfSVJXWE8pCisgICAgICAgIHNodXRpbC5jb3B5bW9kZShzcmNfbGluaywgZHN0KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnN0YXQoc3JjKS5zdF9tb2RlLCBvcy5zdGF0KGRzdCkuc3RfbW9kZSkKKyAgICAgICAgIyBmb2xsb3cgZHN0IGxpbmsKKyAgICAgICAgb3MuY2htb2QoZHN0LCBzdGF0LlNfSVJXWE8pCisgICAgICAgIHNodXRpbC5jb3B5bW9kZShzcmMsIGRzdF9saW5rKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnN0YXQoc3JjKS5zdF9tb2RlLCBvcy5zdGF0KGRzdCkuc3RfbW9kZSkKKyAgICAgICAgIyBmb2xsb3cgYm90aCBsaW5rcworICAgICAgICBvcy5jaG1vZChkc3QsIHN0YXQuU19JUldYTykKKyAgICAgICAgc2h1dGlsLmNvcHltb2RlKHNyY19saW5rLCBkc3QpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3Muc3RhdChzcmMpLnN0X21vZGUsIG9zLnN0YXQoZHN0KS5zdF9tb2RlKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ2xjaG1vZCcpLCAncmVxdWlyZXMgb3MubGNobW9kJykKKyAgICBAc3VwcG9ydC5za2lwX3VubGVzc19zeW1saW5rCisgICAgZGVmIHRlc3RfY29weW1vZGVfc3ltbGlua190b19zeW1saW5rKHNlbGYpOgorICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc3JjID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdmb28nKQorICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2JhcicpCisgICAgICAgIHNyY19saW5rID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdiYXonKQorICAgICAgICBkc3RfbGluayA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAncXV1eCcpCisgICAgICAgIHdyaXRlX2ZpbGUoc3JjLCAnZm9vJykKKyAgICAgICAgd3JpdGVfZmlsZShkc3QsICdmb28nKQorICAgICAgICBvcy5zeW1saW5rKHNyYywgc3JjX2xpbmspCisgICAgICAgIG9zLnN5bWxpbmsoZHN0LCBkc3RfbGluaykKKyAgICAgICAgb3MuY2htb2Qoc3JjLCBzdGF0LlNfSVJXWFV8c3RhdC5TX0lSV1hHKQorICAgICAgICBvcy5jaG1vZChkc3QsIHN0YXQuU19JUldYVSkKKyAgICAgICAgb3MubGNobW9kKHNyY19saW5rLCBzdGF0LlNfSVJXWE98c3RhdC5TX0lSV1hHKQorICAgICAgICAjIGxpbmsgdG8gbGluaworICAgICAgICBvcy5sY2htb2QoZHN0X2xpbmssIHN0YXQuU19JUldYTykKKyAgICAgICAgc2h1dGlsLmNvcHltb2RlKHNyY19saW5rLCBkc3RfbGluaywgc3ltbGlua3M9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5sc3RhdChzcmNfbGluaykuc3RfbW9kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBvcy5sc3RhdChkc3RfbGluaykuc3RfbW9kZSkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChvcy5zdGF0KHNyYykuc3RfbW9kZSwgb3Muc3RhdChkc3QpLnN0X21vZGUpCisgICAgICAgICMgc3JjIGxpbmsgLSB1c2UgY2htb2QKKyAgICAgICAgb3MubGNobW9kKGRzdF9saW5rLCBzdGF0LlNfSVJXWE8pCisgICAgICAgIHNodXRpbC5jb3B5bW9kZShzcmNfbGluaywgZHN0LCBzeW1saW5rcz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnN0YXQoc3JjKS5zdF9tb2RlLCBvcy5zdGF0KGRzdCkuc3RfbW9kZSkKKyAgICAgICAgIyBkc3QgbGluayAtIHVzZSBjaG1vZAorICAgICAgICBvcy5sY2htb2QoZHN0X2xpbmssIHN0YXQuU19JUldYTykKKyAgICAgICAgc2h1dGlsLmNvcHltb2RlKHNyYywgZHN0X2xpbmssIHN5bWxpbmtzPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3Muc3RhdChzcmMpLnN0X21vZGUsIG9zLnN0YXQoZHN0KS5zdF9tb2RlKQorCisgICAgQHVuaXR0ZXN0LnNraXBJZihoYXNhdHRyKG9zLCAnbGNobW9kJyksICdyZXF1aXJlcyBvcy5sY2htb2QgdG8gYmUgbWlzc2luZycpCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIGRlZiB0ZXN0X2NvcHltb2RlX3N5bWxpbmtfdG9fc3ltbGlua193b19sY2htb2Qoc2VsZik6CisgICAgICAgIHRtcF9kaXIgPSBzZWxmLm1rZHRlbXAoKQorICAgICAgICBzcmMgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2ZvbycpCisgICAgICAgIGRzdCA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnYmFyJykKKyAgICAgICAgc3JjX2xpbmsgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2JheicpCisgICAgICAgIGRzdF9saW5rID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdxdXV4JykKKyAgICAgICAgd3JpdGVfZmlsZShzcmMsICdmb28nKQorICAgICAgICB3cml0ZV9maWxlKGRzdCwgJ2ZvbycpCisgICAgICAgIG9zLnN5bWxpbmsoc3JjLCBzcmNfbGluaykKKyAgICAgICAgb3Muc3ltbGluayhkc3QsIGRzdF9saW5rKQorICAgICAgICBzaHV0aWwuY29weW1vZGUoc3JjX2xpbmssIGRzdF9saW5rLCBzeW1saW5rcz1UcnVlKSAgIyBzaWxlbnQgZmFpbAorCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIGRlZiB0ZXN0X2NvcHlzdGF0X3N5bWxpbmtzKHNlbGYpOgorICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc3JjID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdmb28nKQorICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2JhcicpCisgICAgICAgIHNyY19saW5rID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdiYXonKQorICAgICAgICBkc3RfbGluayA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAncXV4JykKKyAgICAgICAgd3JpdGVfZmlsZShzcmMsICdmb28nKQorICAgICAgICBzcmNfc3RhdCA9IG9zLnN0YXQoc3JjKQorICAgICAgICBvcy51dGltZShzcmMsIChzcmNfc3RhdC5zdF9hdGltZSwKKyAgICAgICAgICAgICAgICAgICAgICAgc3JjX3N0YXQuc3RfbXRpbWUgLSA0Mi4wKSkgICMgZW5zdXJlIGRpZmZlcmVudCBtdGltZXMKKyAgICAgICAgd3JpdGVfZmlsZShkc3QsICdiYXInKQorICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKG9zLnN0YXQoc3JjKS5zdF9tdGltZSwgb3Muc3RhdChkc3QpLnN0X210aW1lKQorICAgICAgICBvcy5zeW1saW5rKHNyYywgc3JjX2xpbmspCisgICAgICAgIG9zLnN5bWxpbmsoZHN0LCBkc3RfbGluaykKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaG1vZCcpOgorICAgICAgICAgICAgb3MubGNobW9kKHNyY19saW5rLCBzdGF0LlNfSVJXWE8pCisgICAgICAgIGlmIGhhc2F0dHIob3MsICdsY2hmbGFncycpIGFuZCBoYXNhdHRyKHN0YXQsICdVRl9OT0RVTVAnKToKKyAgICAgICAgICAgIG9zLmxjaGZsYWdzKHNyY19saW5rLCBzdGF0LlVGX05PRFVNUCkKKyAgICAgICAgc3JjX2xpbmtfc3RhdCA9IG9zLmxzdGF0KHNyY19saW5rKQorICAgICAgICAjIGZvbGxvdworICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJyk6CisgICAgICAgICAgICBzaHV0aWwuY29weXN0YXQoc3JjX2xpbmssIGRzdF9saW5rLCBzeW1saW5rcz1GYWxzZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoc3JjX2xpbmtfc3RhdC5zdF9tb2RlLCBvcy5zdGF0KGRzdCkuc3RfbW9kZSkKKyAgICAgICAgIyBkb24ndCBmb2xsb3cKKyAgICAgICAgc2h1dGlsLmNvcHlzdGF0KHNyY19saW5rLCBkc3RfbGluaywgc3ltbGlua3M9VHJ1ZSkKKyAgICAgICAgZHN0X2xpbmtfc3RhdCA9IG9zLmxzdGF0KGRzdF9saW5rKQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbHV0aW1lcycpOgorICAgICAgICAgICAgZm9yIGF0dHIgaW4gJ3N0X2F0aW1lJywgJ3N0X210aW1lJzoKKyAgICAgICAgICAgICAgICAjIFRoZSBtb2RpZmljYXRpb24gdGltZXMgbWF5IGJlIHRydW5jYXRlZCBpbiB0aGUgbmV3IGZpbGUuCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwoZ2V0YXR0cihzcmNfbGlua19zdGF0LCBhdHRyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXRhdHRyKGRzdF9saW5rX3N0YXQsIGF0dHIpICsgMSkKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaG1vZCcpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzcmNfbGlua19zdGF0LnN0X21vZGUsIGRzdF9saW5rX3N0YXQuc3RfbW9kZSkKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaGZsYWdzJykgYW5kIGhhc2F0dHIoc3JjX2xpbmtfc3RhdCwgJ3N0X2ZsYWdzJyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNyY19saW5rX3N0YXQuc3RfZmxhZ3MsIGRzdF9saW5rX3N0YXQuc3RfZmxhZ3MpCisgICAgICAgICMgdGVsbCB0byBmb2xsb3cgYnV0IGRzdCBpcyBub3QgYSBsaW5rCisgICAgICAgIHNodXRpbC5jb3B5c3RhdChzcmNfbGluaywgZHN0LCBzeW1saW5rcz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoYWJzKG9zLnN0YXQoc3JjKS5zdF9tdGltZSAtIG9zLnN0YXQoZHN0KS5zdF9tdGltZSkgPAorICAgICAgICAgICAgICAgICAgICAgICAgMDAwMDAuMSkKKworICAgIEBzdXBwb3J0LnNraXBfdW5sZXNzX3N5bWxpbmsKKyAgICBkZWYgdGVzdF9jb3B5X3N5bWxpbmtzKHNlbGYpOgorICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc3JjID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdmb28nKQorICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2JhcicpCisgICAgICAgIHNyY19saW5rID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdiYXonKQorICAgICAgICB3cml0ZV9maWxlKHNyYywgJ2ZvbycpCisgICAgICAgIG9zLnN5bWxpbmsoc3JjLCBzcmNfbGluaykKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaG1vZCcpOgorICAgICAgICAgICAgb3MubGNobW9kKHNyY19saW5rLCBzdGF0LlNfSVJXWFUgfCBzdGF0LlNfSVJXWE8pCisgICAgICAgICMgZG9uJ3QgZm9sbG93CisgICAgICAgIHNodXRpbC5jb3B5KHNyY19saW5rLCBkc3QsIHN5bWxpbmtzPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguaXNsaW5rKGRzdCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVhZF9maWxlKHNyYyksIHJlYWRfZmlsZShkc3QpKQorICAgICAgICBvcy5yZW1vdmUoZHN0KQorICAgICAgICAjIGZvbGxvdworICAgICAgICBzaHV0aWwuY29weShzcmNfbGluaywgZHN0LCBzeW1saW5rcz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2xpbmsoZHN0KSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5yZWFkbGluayhkc3QpLCBvcy5yZWFkbGluayhzcmNfbGluaykpCisgICAgICAgIGlmIGhhc2F0dHIob3MsICdsY2htb2QnKToKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3MubHN0YXQoc3JjX2xpbmspLnN0X21vZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLmxzdGF0KGRzdCkuc3RfbW9kZSkKKworICAgIEBzdXBwb3J0LnNraXBfdW5sZXNzX3N5bWxpbmsKKyAgICBkZWYgdGVzdF9jb3B5Ml9zeW1saW5rcyhzZWxmKToKKyAgICAgICAgdG1wX2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNyYyA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnZm9vJykKKyAgICAgICAgZHN0ID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdiYXInKQorICAgICAgICBzcmNfbGluayA9IG9zLnBhdGguam9pbih0bXBfZGlyLCAnYmF6JykKKyAgICAgICAgd3JpdGVfZmlsZShzcmMsICdmb28nKQorICAgICAgICBvcy5zeW1saW5rKHNyYywgc3JjX2xpbmspCisgICAgICAgIGlmIGhhc2F0dHIob3MsICdsY2htb2QnKToKKyAgICAgICAgICAgIG9zLmxjaG1vZChzcmNfbGluaywgc3RhdC5TX0lSV1hVIHwgc3RhdC5TX0lSV1hPKQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNoZmxhZ3MnKSBhbmQgaGFzYXR0cihzdGF0LCAnVUZfTk9EVU1QJyk6CisgICAgICAgICAgICBvcy5sY2hmbGFncyhzcmNfbGluaywgc3RhdC5VRl9OT0RVTVApCisgICAgICAgIHNyY19zdGF0ID0gb3Muc3RhdChzcmMpCisgICAgICAgIHNyY19saW5rX3N0YXQgPSBvcy5sc3RhdChzcmNfbGluaykKKyAgICAgICAgIyBmb2xsb3cKKyAgICAgICAgc2h1dGlsLmNvcHkyKHNyY19saW5rLCBkc3QsIHN5bWxpbmtzPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguaXNsaW5rKGRzdCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVhZF9maWxlKHNyYyksIHJlYWRfZmlsZShkc3QpKQorICAgICAgICBvcy5yZW1vdmUoZHN0KQorICAgICAgICAjIGRvbid0IGZvbGxvdworICAgICAgICBzaHV0aWwuY29weTIoc3JjX2xpbmssIGRzdCwgc3ltbGlua3M9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNsaW5rKGRzdCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3MucmVhZGxpbmsoZHN0KSwgb3MucmVhZGxpbmsoc3JjX2xpbmspKQorICAgICAgICBkc3Rfc3RhdCA9IG9zLmxzdGF0KGRzdCkKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2x1dGltZXMnKToKKyAgICAgICAgICAgIGZvciBhdHRyIGluICdzdF9hdGltZScsICdzdF9tdGltZSc6CisgICAgICAgICAgICAgICAgIyBUaGUgbW9kaWZpY2F0aW9uIHRpbWVzIG1heSBiZSB0cnVuY2F0ZWQgaW4gdGhlIG5ldyBmaWxlLgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKGdldGF0dHIoc3JjX2xpbmtfc3RhdCwgYXR0ciksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0YXR0cihkc3Rfc3RhdCwgYXR0cikgKyAxKQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNyY19saW5rX3N0YXQuc3RfbW9kZSwgZHN0X3N0YXQuc3RfbW9kZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwoc3JjX3N0YXQuc3RfbW9kZSwgZHN0X3N0YXQuc3RfbW9kZSkKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaGZsYWdzJykgYW5kIGhhc2F0dHIoc3JjX2xpbmtfc3RhdCwgJ3N0X2ZsYWdzJyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNyY19saW5rX3N0YXQuc3RfZmxhZ3MsIGRzdF9zdGF0LnN0X2ZsYWdzKQorCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIGRlZiB0ZXN0X2NvcHlmaWxlX3N5bWxpbmtzKHNlbGYpOgorICAgICAgICB0bXBfZGlyID0gc2VsZi5ta2R0ZW1wKCkKKyAgICAgICAgc3JjID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdzcmMnKQorICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2RzdCcpCisgICAgICAgIGRzdF9saW5rID0gb3MucGF0aC5qb2luKHRtcF9kaXIsICdkc3RfbGluaycpCisgICAgICAgIGxpbmsgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2xpbmsnKQorICAgICAgICB3cml0ZV9maWxlKHNyYywgJ2ZvbycpCisgICAgICAgIG9zLnN5bWxpbmsoc3JjLCBsaW5rKQorICAgICAgICAjIGRvbid0IGZvbGxvdworICAgICAgICBzaHV0aWwuY29weWZpbGUobGluaywgZHN0X2xpbmssIHN5bWxpbmtzPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzbGluayhkc3RfbGluaykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3MucmVhZGxpbmsobGluayksIG9zLnJlYWRsaW5rKGRzdF9saW5rKSkKKyAgICAgICAgIyBmb2xsb3cKKyAgICAgICAgc2h1dGlsLmNvcHlmaWxlKGxpbmssIGRzdCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmlzbGluayhkc3QpKQorCiAgICAgZGVmIHRlc3Rfcm10cmVlX2RvbnRfZGVsZXRlX2ZpbGUoc2VsZik6CiAgICAgICAgICMgV2hlbiBjYWxsZWQgb24gYSBmaWxlIGluc3RlYWQgb2YgYSBkaXJlY3RvcnksIGRvbid0IGRlbGV0ZSBpdC4KICAgICAgICAgaGFuZGxlLCBwYXRoID0gdGVtcGZpbGUubWtzdGVtcCgpCi0gICAgICAgIG9zLmZkb3BlbihoYW5kbGUpLmNsb3NlKCkKKyAgICAgICAgb3MuY2xvc2UoaGFuZGxlKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yLCBzaHV0aWwucm10cmVlLCBwYXRoKQogICAgICAgICBvcy5yZW1vdmUocGF0aCkKIAotICAgIGRlZiBfd3JpdGVfZGF0YShzZWxmLCBwYXRoLCBkYXRhKToKLSAgICAgICAgZiA9IG9wZW4ocGF0aCwgInciKQotICAgICAgICBmLndyaXRlKGRhdGEpCi0gICAgICAgIGYuY2xvc2UoKQotCiAgICAgZGVmIHRlc3RfY29weXRyZWVfc2ltcGxlKHNlbGYpOgotCi0gICAgICAgIGRlZiByZWFkX2RhdGEocGF0aCk6Ci0gICAgICAgICAgICBmID0gb3BlbihwYXRoKQotICAgICAgICAgICAgZGF0YSA9IGYucmVhZCgpCi0gICAgICAgICAgICBmLmNsb3NlKCkKLSAgICAgICAgICAgIHJldHVybiBkYXRhCi0KICAgICAgICAgc3JjX2RpciA9IHRlbXBmaWxlLm1rZHRlbXAoKQogICAgICAgICBkc3RfZGlyID0gb3MucGF0aC5qb2luKHRlbXBmaWxlLm1rZHRlbXAoKSwgJ2Rlc3RpbmF0aW9uJykKLSAgICAgICAgc2VsZi5fd3JpdGVfZGF0YShvcy5wYXRoLmpvaW4oc3JjX2RpciwgJ3Rlc3QudHh0JyksICcxMjMnKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2h1dGlsLnJtdHJlZSwgc3JjX2RpcikKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNodXRpbC5ybXRyZWUsIG9zLnBhdGguZGlybmFtZShkc3RfZGlyKSkKKyAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ3Rlc3QudHh0JyksICcxMjMnKQogICAgICAgICBvcy5ta2Rpcihvcy5wYXRoLmpvaW4oc3JjX2RpciwgJ3Rlc3RfZGlyJykpCi0gICAgICAgIHNlbGYuX3dyaXRlX2RhdGEob3MucGF0aC5qb2luKHNyY19kaXIsICd0ZXN0X2RpcicsICd0ZXN0LnR4dCcpLCAnNDU2JykKKyAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ3Rlc3RfZGlyJywgJ3Rlc3QudHh0JyksICc0NTYnKQogCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHNodXRpbC5jb3B5dHJlZShzcmNfZGlyLCBkc3RfZGlyKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxlKG9zLnBhdGguam9pbihkc3RfZGlyLCAndGVzdC50eHQnKSkpCi0gICAgICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2Rpcihvcy5wYXRoLmpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyJykpKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxlKG9zLnBhdGguam9pbihkc3RfZGlyLCAndGVzdF9kaXInLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndGVzdC50eHQnKSkpCi0gICAgICAgICAgICBhY3R1YWwgPSByZWFkX2RhdGEob3MucGF0aC5qb2luKGRzdF9kaXIsICd0ZXN0LnR4dCcpKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhY3R1YWwsICcxMjMnKQotICAgICAgICAgICAgYWN0dWFsID0gcmVhZF9kYXRhKG9zLnBhdGguam9pbihkc3RfZGlyLCAndGVzdF9kaXInLCAndGVzdC50eHQnKSkKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWN0dWFsLCAnNDU2JykKLSAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgIGZvciBwYXRoIGluICgKLSAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5qb2luKHNyY19kaXIsICd0ZXN0LnR4dCcpLAotICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4oZHN0X2RpciwgJ3Rlc3QudHh0JyksCi0gICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbihzcmNfZGlyLCAndGVzdF9kaXInLCAndGVzdC50eHQnKSwKLSAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5qb2luKGRzdF9kaXIsICd0ZXN0X2RpcicsICd0ZXN0LnR4dCcpLAotICAgICAgICAgICAgICAgICk6Ci0gICAgICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMocGF0aCk6Ci0gICAgICAgICAgICAgICAgICAgIG9zLnJlbW92ZShwYXRoKQotICAgICAgICAgICAgZm9yIHBhdGggaW4gKHNyY19kaXIsCi0gICAgICAgICAgICAgICAgICAgIG9zLnBhdGguZGlybmFtZShkc3RfZGlyKQotICAgICAgICAgICAgICAgICk6Ci0gICAgICAgICAgICAgICAgaWYgb3MucGF0aC5leGlzdHMocGF0aCk6Ci0gICAgICAgICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUocGF0aCkKKyAgICAgICAgc2h1dGlsLmNvcHl0cmVlKHNyY19kaXIsIGRzdF9kaXIpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShvcy5wYXRoLmpvaW4oZHN0X2RpciwgJ3Rlc3QudHh0JykpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2Rpcihvcy5wYXRoLmpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyJykpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2ZpbGUob3MucGF0aC5qb2luKGRzdF9kaXIsICd0ZXN0X2RpcicsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Rlc3QudHh0JykpKQorICAgICAgICBhY3R1YWwgPSByZWFkX2ZpbGUoKGRzdF9kaXIsICd0ZXN0LnR4dCcpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFjdHVhbCwgJzEyMycpCisgICAgICAgIGFjdHVhbCA9IHJlYWRfZmlsZSgoZHN0X2RpciwgJ3Rlc3RfZGlyJywgJ3Rlc3QudHh0JykpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYWN0dWFsLCAnNDU2JykKKworICAgIEBzdXBwb3J0LnNraXBfdW5sZXNzX3N5bWxpbmsKKyAgICBkZWYgdGVzdF9jb3B5dHJlZV9zeW1saW5rcyhzZWxmKToKKyAgICAgICAgdG1wX2RpciA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIHNyY19kaXIgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ3NyYycpCisgICAgICAgIGRzdF9kaXIgPSBvcy5wYXRoLmpvaW4odG1wX2RpciwgJ2RzdCcpCisgICAgICAgIHN1Yl9kaXIgPSBvcy5wYXRoLmpvaW4oc3JjX2RpciwgJ3N1YicpCisgICAgICAgIG9zLm1rZGlyKHNyY19kaXIpCisgICAgICAgIG9zLm1rZGlyKHN1Yl9kaXIpCisgICAgICAgIHdyaXRlX2ZpbGUoKHNyY19kaXIsICdmaWxlLnR4dCcpLCAnZm9vJykKKyAgICAgICAgc3JjX2xpbmsgPSBvcy5wYXRoLmpvaW4oc3ViX2RpciwgJ2xpbmsnKQorICAgICAgICBkc3RfbGluayA9IG9zLnBhdGguam9pbihkc3RfZGlyLCAnc3ViL2xpbmsnKQorICAgICAgICBvcy5zeW1saW5rKG9zLnBhdGguam9pbihzcmNfZGlyLCAnZmlsZS50eHQnKSwKKyAgICAgICAgICAgICAgICAgICBzcmNfbGluaykKKyAgICAgICAgaWYgaGFzYXR0cihvcywgJ2xjaG1vZCcpOgorICAgICAgICAgICAgb3MubGNobW9kKHNyY19saW5rLCBzdGF0LlNfSVJXWFUgfCBzdGF0LlNfSVJXWE8pCisgICAgICAgIGlmIGhhc2F0dHIob3MsICdsY2hmbGFncycpIGFuZCBoYXNhdHRyKHN0YXQsICdVRl9OT0RVTVAnKToKKyAgICAgICAgICAgIG9zLmxjaGZsYWdzKHNyY19saW5rLCBzdGF0LlVGX05PRFVNUCkKKyAgICAgICAgc3JjX3N0YXQgPSBvcy5sc3RhdChzcmNfbGluaykKKyAgICAgICAgc2h1dGlsLmNvcHl0cmVlKHNyY19kaXIsIGRzdF9kaXIsIHN5bWxpbmtzPVRydWUpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzbGluayhvcy5wYXRoLmpvaW4oZHN0X2RpciwgJ3N1YicsICdsaW5rJykpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnJlYWRsaW5rKG9zLnBhdGguam9pbihkc3RfZGlyLCAnc3ViJywgJ2xpbmsnKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5qb2luKHNyY19kaXIsICdmaWxlLnR4dCcpKQorICAgICAgICBkc3Rfc3RhdCA9IG9zLmxzdGF0KGRzdF9saW5rKQorICAgICAgICBpZiBoYXNhdHRyKG9zLCAnbGNobW9kJyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGRzdF9zdGF0LnN0X21vZGUsIHNyY19zdGF0LnN0X21vZGUpCisgICAgICAgIGlmIGhhc2F0dHIob3MsICdsY2hmbGFncycpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChkc3Rfc3RhdC5zdF9mbGFncywgc3JjX3N0YXQuc3RfZmxhZ3MpCiAKICAgICBkZWYgdGVzdF9jb3B5dHJlZV93aXRoX2V4Y2x1ZGUoc2VsZik6Ci0KLSAgICAgICAgZGVmIHJlYWRfZGF0YShwYXRoKToKLSAgICAgICAgICAgIGYgPSBvcGVuKHBhdGgpCi0gICAgICAgICAgICBkYXRhID0gZi5yZWFkKCkKLSAgICAgICAgICAgIGYuY2xvc2UoKQotICAgICAgICAgICAgcmV0dXJuIGRhdGEKLQogICAgICAgICAjIGNyZWF0aW5nIGRhdGEKICAgICAgICAgam9pbiA9IG9zLnBhdGguam9pbgogICAgICAgICBleGlzdHMgPSBvcy5wYXRoLmV4aXN0cwogICAgICAgICBzcmNfZGlyID0gdGVtcGZpbGUubWtkdGVtcCgpCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGRzdF9kaXIgPSBqb2luKHRlbXBmaWxlLm1rZHRlbXAoKSwgJ2Rlc3RpbmF0aW9uJykKLSAgICAgICAgICAgIHNlbGYuX3dyaXRlX2RhdGEoam9pbihzcmNfZGlyLCAndGVzdC50eHQnKSwgJzEyMycpCi0gICAgICAgICAgICBzZWxmLl93cml0ZV9kYXRhKGpvaW4oc3JjX2RpciwgJ3Rlc3QudG1wJyksICcxMjMnKQorICAgICAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ3Rlc3QudHh0JyksICcxMjMnKQorICAgICAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ3Rlc3QudG1wJyksICcxMjMnKQogICAgICAgICAgICAgb3MubWtkaXIoam9pbihzcmNfZGlyLCAndGVzdF9kaXInKSkKLSAgICAgICAgICAgIHNlbGYuX3dyaXRlX2RhdGEoam9pbihzcmNfZGlyLCAndGVzdF9kaXInLCAndGVzdC50eHQnKSwgJzQ1NicpCisgICAgICAgICAgICB3cml0ZV9maWxlKChzcmNfZGlyLCAndGVzdF9kaXInLCAndGVzdC50eHQnKSwgJzQ1NicpCiAgICAgICAgICAgICBvcy5ta2Rpcihqb2luKHNyY19kaXIsICd0ZXN0X2RpcjInKSkKLSAgICAgICAgICAgIHNlbGYuX3dyaXRlX2RhdGEoam9pbihzcmNfZGlyLCAndGVzdF9kaXIyJywgJ3Rlc3QudHh0JyksICc0NTYnKQorICAgICAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ3Rlc3RfZGlyMicsICd0ZXN0LnR4dCcpLCAnNDU2JykKICAgICAgICAgICAgIG9zLm1rZGlyKGpvaW4oc3JjX2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXInKSkKICAgICAgICAgICAgIG9zLm1rZGlyKGpvaW4oc3JjX2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXIyJykpCi0gICAgICAgICAgICBzZWxmLl93cml0ZV9kYXRhKGpvaW4oc3JjX2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXInLCAndGVzdC50eHQnKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJzQ1NicpCi0gICAgICAgICAgICBzZWxmLl93cml0ZV9kYXRhKGpvaW4oc3JjX2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXIyJywgJ3Rlc3QucHknKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJzQ1NicpCi0KKyAgICAgICAgICAgIHdyaXRlX2ZpbGUoKHNyY19kaXIsICd0ZXN0X2RpcjInLCAnc3ViZGlyJywgJ3Rlc3QudHh0JyksICc0NTYnKQorICAgICAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXIyJywgJ3Rlc3QucHknKSwgJzQ1NicpCiAKICAgICAgICAgICAgICMgdGVzdGluZyBnbG9iLWxpa2UgcGF0dGVybnMKICAgICAgICAgICAgIHRyeToKQEAgLTI0MywyMSArNDM0LDE5IEBACiAgICAgICAgICAgICAgICAgc2h1dGlsLmNvcHl0cmVlKHNyY19kaXIsIGRzdF9kaXIsIGlnbm9yZT1wYXR0ZXJucykKICAgICAgICAgICAgICAgICAjIGNoZWNraW5nIHRoZSByZXN1bHQ6IHNvbWUgZWxlbWVudHMgc2hvdWxkIG5vdCBiZSBjb3BpZWQKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUoZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3QudHh0JykpKQotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3QgZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3QudG1wJykpKQotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3QgZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyMicpKSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGV4aXN0cyhqb2luKGRzdF9kaXIsICd0ZXN0LnRtcCcpKSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGV4aXN0cyhqb2luKGRzdF9kaXIsICd0ZXN0X2RpcjInKSkpCiAgICAgICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGRzdF9kaXIpOgotICAgICAgICAgICAgICAgICAgICBzaHV0aWwucm10cmVlKGRzdF9kaXIpCisgICAgICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShkc3RfZGlyKQogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHBhdHRlcm5zID0gc2h1dGlsLmlnbm9yZV9wYXR0ZXJucygnKi50bXAnLCAnc3ViZGlyKicpCiAgICAgICAgICAgICAgICAgc2h1dGlsLmNvcHl0cmVlKHNyY19kaXIsIGRzdF9kaXIsIGlnbm9yZT1wYXR0ZXJucykKICAgICAgICAgICAgICAgICAjIGNoZWNraW5nIHRoZSByZXN1bHQ6IHNvbWUgZWxlbWVudHMgc2hvdWxkIG5vdCBiZSBjb3BpZWQKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUobm90IGV4aXN0cyhqb2luKGRzdF9kaXIsICd0ZXN0LnRtcCcpKSkKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUobm90IGV4aXN0cyhqb2luKGRzdF9kaXIsICd0ZXN0X2RpcjInLCAnc3ViZGlyMicpKSkKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFRydWUobm90IGV4aXN0cyhqb2luKGRzdF9kaXIsICd0ZXN0X2RpcjInLCAnc3ViZGlyJykpKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3QudG1wJykpKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXIyJykpKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXInKSkpCiAgICAgICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgICAgIGlmIG9zLnBhdGguZXhpc3RzKGRzdF9kaXIpOgotICAgICAgICAgICAgICAgICAgICBzaHV0aWwucm10cmVlKGRzdF9kaXIpCisgICAgICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShkc3RfZGlyKQogCiAgICAgICAgICAgICAjIHRlc3RpbmcgY2FsbGFibGUtc3R5bGUKICAgICAgICAgICAgIHRyeToKQEAgLTI3NiwxMyArNDY1LDEyIEBACiAgICAgICAgICAgICAgICAgc2h1dGlsLmNvcHl0cmVlKHNyY19kaXIsIGRzdF9kaXIsIGlnbm9yZT1fZmlsdGVyKQogCiAgICAgICAgICAgICAgICAgIyBjaGVja2luZyB0aGUgcmVzdWx0OiBzb21lIGVsZW1lbnRzIHNob3VsZCBub3QgYmUgY29waWVkCi0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdCBleGlzdHMoam9pbihkc3RfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcjInLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXN0LnB5JykpKQotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3QgZXhpc3RzKGpvaW4oZHN0X2RpciwgJ3Rlc3RfZGlyMicsICdzdWJkaXInKSkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShleGlzdHMoam9pbihkc3RfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcjInLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3Rlc3QucHknKSkpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShleGlzdHMoam9pbihkc3RfZGlyLCAndGVzdF9kaXIyJywgJ3N1YmRpcicpKSkKIAogICAgICAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhkc3RfZGlyKToKLSAgICAgICAgICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShkc3RfZGlyKQorICAgICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoZHN0X2RpcikKICAgICAgICAgZmluYWxseToKICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUoc3JjX2RpcikKICAgICAgICAgICAgIHNodXRpbC5ybXRyZWUob3MucGF0aC5kaXJuYW1lKGRzdF9kaXIpKQpAQCAtMzc3LDkgKzU2NSw5IEBACiAKICAgICAgICAgc3JjX2RpciA9IHNlbGYubWtkdGVtcCgpCiAgICAgICAgIGRzdF9kaXIgPSBvcy5wYXRoLmpvaW4oc2VsZi5ta2R0ZW1wKCksICdkZXN0aW5hdGlvbicpCi0gICAgICAgIHNlbGYuX3dyaXRlX2RhdGEob3MucGF0aC5qb2luKHNyY19kaXIsICd0ZXN0LnR4dCcpLCAnMTIzJykKKyAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ3Rlc3QudHh0JyksICcxMjMnKQogICAgICAgICBvcy5ta2Rpcihvcy5wYXRoLmpvaW4oc3JjX2RpciwgJ3Rlc3RfZGlyJykpCi0gICAgICAgIHNlbGYuX3dyaXRlX2RhdGEob3MucGF0aC5qb2luKHNyY19kaXIsICd0ZXN0X2RpcicsICd0ZXN0LnR4dCcpLCAnNDU2JykKKyAgICAgICAgd3JpdGVfZmlsZSgoc3JjX2RpciwgJ3Rlc3RfZGlyJywgJ3Rlc3QudHh0JyksICc0NTYnKQogCiAgICAgICAgIGNvcGllZCA9IFtdCiAgICAgICAgIGRlZiBfY29weShzcmMsIGRzdCk6CkBAIC0zOTYsNyArNTg0LDcgQEAKICAgICAgICAgZHN0X2RpciA9IG9zLnBhdGguam9pbihzZWxmLm1rZHRlbXAoKSwgJ2Rlc3RpbmF0aW9uJykKICAgICAgICAgb3Muc3ltbGluaygnSURPTlRFWElTVCcsIG9zLnBhdGguam9pbihzcmNfZGlyLCAndGVzdC50eHQnKSkKICAgICAgICAgb3MubWtkaXIob3MucGF0aC5qb2luKHNyY19kaXIsICd0ZXN0X2RpcicpKQotICAgICAgICBzZWxmLl93cml0ZV9kYXRhKG9zLnBhdGguam9pbihzcmNfZGlyLCAndGVzdF9kaXInLCAndGVzdC50eHQnKSwgJzQ1NicpCisgICAgICAgIHdyaXRlX2ZpbGUoKHNyY19kaXIsICd0ZXN0X2RpcicsICd0ZXN0LnR4dCcpLCAnNDU2JykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoRXJyb3IsIHNodXRpbC5jb3B5dHJlZSwgc3JjX2RpciwgZHN0X2RpcikKIAogICAgICAgICAjIGEgZGFuZ2xpbmcgc3ltbGluayBpcyBpZ25vcmVkIHdpdGggdGhlIHByb3BlciBmbGFnCkBAIC00MTIsNyArNjAwLDcgQEAKICAgICBkZWYgX2NvcHlfZmlsZShzZWxmLCBtZXRob2QpOgogICAgICAgICBmbmFtZSA9ICd0ZXN0LnR4dCcKICAgICAgICAgdG1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKLSAgICAgICAgc2VsZi53cml0ZV9maWxlKFt0bXBkaXIsIGZuYW1lXSkKKyAgICAgICAgd3JpdGVfZmlsZSgodG1wZGlyLCBmbmFtZSksICd4eHgnKQogICAgICAgICBmaWxlMSA9IG9zLnBhdGguam9pbih0bXBkaXIsIGZuYW1lKQogICAgICAgICB0bXBkaXIyID0gc2VsZi5ta2R0ZW1wKCkKICAgICAgICAgbWV0aG9kKGZpbGUxLCB0bXBkaXIyKQpAQCAtNDQ0LDE0ICs2MzIsMTQgQEAKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0YXR0cihmaWxlMV9zdGF0LCAnc3RfZmxhZ3MnKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0YXR0cihmaWxlMl9zdGF0LCAnc3RfZmxhZ3MnKSkKIAotICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X21ha2VfdGFyYmFsbChzZWxmKToKICAgICAgICAgIyBjcmVhdGluZyBzb21ldGhpbmcgdG8gdGFyCiAgICAgICAgIHRtcGRpciA9IHNlbGYubWtkdGVtcCgpCi0gICAgICAgIHNlbGYud3JpdGVfZmlsZShbdG1wZGlyLCAnZmlsZTEnXSwgJ3h4eCcpCi0gICAgICAgIHNlbGYud3JpdGVfZmlsZShbdG1wZGlyLCAnZmlsZTInXSwgJ3h4eCcpCisgICAgICAgIHdyaXRlX2ZpbGUoKHRtcGRpciwgJ2ZpbGUxJyksICd4eHgnKQorICAgICAgICB3cml0ZV9maWxlKCh0bXBkaXIsICdmaWxlMicpLCAneHh4JykKICAgICAgICAgb3MubWtkaXIob3MucGF0aC5qb2luKHRtcGRpciwgJ3N1YicpKQotICAgICAgICBzZWxmLndyaXRlX2ZpbGUoW3RtcGRpciwgJ3N1YicsICdmaWxlMyddLCAneHh4JykKKyAgICAgICAgd3JpdGVfZmlsZSgodG1wZGlyLCAnc3ViJywgJ2ZpbGUzJyksICd4eHgnKQogCiAgICAgICAgIHRtcGRpcjIgPSBzZWxmLm1rZHRlbXAoKQogICAgICAgICAjIGZvcmNlIHNodXRpbCB0byBjcmVhdGUgdGhlIGRpcmVjdG9yeQpAQCAtNDk4LDE2ICs2ODYsMTYgQEAKICAgICAgICAgdG1wZGlyID0gc2VsZi5ta2R0ZW1wKCkKICAgICAgICAgZGlzdCA9IG9zLnBhdGguam9pbih0bXBkaXIsICdkaXN0JykKICAgICAgICAgb3MubWtkaXIoZGlzdCkKLSAgICAgICAgc2VsZi53cml0ZV9maWxlKFtkaXN0LCAnZmlsZTEnXSwgJ3h4eCcpCi0gICAgICAgIHNlbGYud3JpdGVfZmlsZShbZGlzdCwgJ2ZpbGUyJ10sICd4eHgnKQorICAgICAgICB3cml0ZV9maWxlKChkaXN0LCAnZmlsZTEnKSwgJ3h4eCcpCisgICAgICAgIHdyaXRlX2ZpbGUoKGRpc3QsICdmaWxlMicpLCAneHh4JykKICAgICAgICAgb3MubWtkaXIob3MucGF0aC5qb2luKGRpc3QsICdzdWInKSkKLSAgICAgICAgc2VsZi53cml0ZV9maWxlKFtkaXN0LCAnc3ViJywgJ2ZpbGUzJ10sICd4eHgnKQorICAgICAgICB3cml0ZV9maWxlKChkaXN0LCAnc3ViJywgJ2ZpbGUzJyksICd4eHgnKQogICAgICAgICBvcy5ta2Rpcihvcy5wYXRoLmpvaW4oZGlzdCwgJ3N1YjInKSkKICAgICAgICAgdG1wZGlyMiA9IHNlbGYubWtkdGVtcCgpCiAgICAgICAgIGJhc2VfbmFtZSA9IG9zLnBhdGguam9pbih0bXBkaXIyLCAnYXJjaGl2ZScpCiAgICAgICAgIHJldHVybiB0bXBkaXIsIHRtcGRpcjIsIGJhc2VfbmFtZQogCi0gICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoemxpYiwgIlJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoZmluZF9leGVjdXRhYmxlKCd0YXInKSBhbmQgZmluZF9leGVjdXRhYmxlKCdnemlwJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgJ05lZWQgdGhlIHRhciBjb21tYW5kIHRvIHJ1bicpCiAgICAgZGVmIHRlc3RfdGFyZmlsZV92c190YXIoc2VsZik6CkBAIC01NjIsMTMgKzc1MCwxMyBAQAogICAgICAgICB0YXJiYWxsID0gYmFzZV9uYW1lICsgJy50YXInCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyh0YXJiYWxsKSkKIAotICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKHpsaWIsICJSZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKFpJUF9TVVBQT1JULCAnTmVlZCB6aXAgc3VwcG9ydCB0byBydW4nKQogICAgIGRlZiB0ZXN0X21ha2VfemlwZmlsZShzZWxmKToKICAgICAgICAgIyBjcmVhdGluZyBzb21ldGhpbmcgdG8gdGFyCiAgICAgICAgIHRtcGRpciA9IHNlbGYubWtkdGVtcCgpCi0gICAgICAgIHNlbGYud3JpdGVfZmlsZShbdG1wZGlyLCAnZmlsZTEnXSwgJ3h4eCcpCi0gICAgICAgIHNlbGYud3JpdGVfZmlsZShbdG1wZGlyLCAnZmlsZTInXSwgJ3h4eCcpCisgICAgICAgIHdyaXRlX2ZpbGUoKHRtcGRpciwgJ2ZpbGUxJyksICd4eHgnKQorICAgICAgICB3cml0ZV9maWxlKCh0bXBkaXIsICdmaWxlMicpLCAneHh4JykKIAogICAgICAgICB0bXBkaXIyID0gc2VsZi5ta2R0ZW1wKCkKICAgICAgICAgIyBmb3JjZSBzaHV0aWwgdG8gY3JlYXRlIHRoZSBkaXJlY3RvcnkKQEAgLTU4Niw3ICs3NzQsNyBAQAogICAgICAgICBiYXNlX25hbWUgPSBvcy5wYXRoLmpvaW4odG1wZGlyLCAnYXJjaGl2ZScpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIG1ha2VfYXJjaGl2ZSwgYmFzZV9uYW1lLCAneHh4JykKIAotICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKHpsaWIsICJSZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X21ha2VfYXJjaGl2ZV9vd25lcl9ncm91cChzZWxmKToKICAgICAgICAgIyB0ZXN0aW5nIG1ha2VfYXJjaGl2ZSB3aXRoIG93bmVyIGFuZCBncm91cCwgd2l0aCB2YXJpb3VzIGNvbWJpbmF0aW9ucwogICAgICAgICAjIHRoaXMgd29ya3MgZXZlbiBpZiB0aGVyZSdzIG5vdCBnaWQvdWlkIHN1cHBvcnQKQEAgLTYxNCw3ICs4MDIsNyBAQAogICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMocmVzKSkKIAogCi0gICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoemxpYiwgIlJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoVUlEX0dJRF9TVVBQT1JULCAiUmVxdWlyZXMgZ3JwIGFuZCBwd2Qgc3VwcG9ydCIpCiAgICAgZGVmIHRlc3RfdGFyZmlsZV9yb290X293bmVyKHNlbGYpOgogICAgICAgICB0bXBkaXIsIHRtcGRpcjIsIGJhc2VfbmFtZSA9ICBzZWxmLl9jcmVhdGVfZmlsZXMoKQpAQCAtNjgzLDcgKzg3MSw3IEBACiAgICAgICAgICAgICAgICAgICAgIGRpZmYuYXBwZW5kKGZpbGVfKQogICAgICAgICByZXR1cm4gZGlmZgogCi0gICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoemxpYiwgIlJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfdW5wYWNrX2FyY2hpdmUoc2VsZik6CiAgICAgICAgIGZvcm1hdHMgPSBbJ3RhcicsICdnenRhcicsICd6aXAnXQogICAgICAgICBpZiBCWjJfU1VQUE9SVEVEOgpAQCAtNzM0LDYgKzkyMiw3NSBAQAogICAgICAgICB1bnJlZ2lzdGVyX3VucGFja19mb3JtYXQoJ0JvbzInKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldF91bnBhY2tfZm9ybWF0cygpLCBmb3JtYXRzKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaHV0aWwsICdkaXNrX3VzYWdlJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2tfdXNhZ2Ugbm90IGF2YWlsYWJsZSBvbiB0aGlzIHBsYXRmb3JtIikKKyAgICBkZWYgdGVzdF9kaXNrX3VzYWdlKHNlbGYpOgorICAgICAgICB1c2FnZSA9IHNodXRpbC5kaXNrX3VzYWdlKG9zLmdldGN3ZCgpKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXIodXNhZ2UudG90YWwsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcih1c2FnZS51c2VkLCAwKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbCh1c2FnZS5mcmVlLCAwKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbCh1c2FnZS50b3RhbCwgdXNhZ2UudXNlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKHVzYWdlLnRvdGFsLCB1c2FnZS5mcmVlKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoVUlEX0dJRF9TVVBQT1JULCAiUmVxdWlyZXMgZ3JwIGFuZCBwd2Qgc3VwcG9ydCIpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihvcywgJ2Nob3duJyksICdyZXF1aXJlcyBvcy5jaG93bicpCisgICAgZGVmIHRlc3RfY2hvd24oc2VsZik6CisKKyAgICAgICAgIyBjbGVhbmVkLXVwIGF1dG9tYXRpY2FsbHkgYnkgVGVzdFNodXRpbC50ZWFyRG93biBtZXRob2QKKyAgICAgICAgZGlybmFtZSA9IHNlbGYubWtkdGVtcCgpCisgICAgICAgIGZpbGVuYW1lID0gdGVtcGZpbGUubWt0ZW1wKGRpcj1kaXJuYW1lKQorICAgICAgICB3cml0ZV9maWxlKGZpbGVuYW1lLCAndGVzdGluZyBjaG93biBmdW5jdGlvbicpCisKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIHNodXRpbC5jaG93bihmaWxlbmFtZSkKKworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKExvb2t1cEVycm9yKToKKyAgICAgICAgICAgIHNodXRpbC5jaG93bihmaWxlbmFtZSwgdXNlcj0nbm9uLWV4aXNpbmcgdXNlcm5hbWUnKQorCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoTG9va3VwRXJyb3IpOgorICAgICAgICAgICAgc2h1dGlsLmNob3duKGZpbGVuYW1lLCBncm91cD0nbm9uLWV4aXNpbmcgZ3JvdXBuYW1lJykKKworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvcik6CisgICAgICAgICAgICBzaHV0aWwuY2hvd24oZmlsZW5hbWUsIGInc3BhbScpCisKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IpOgorICAgICAgICAgICAgc2h1dGlsLmNob3duKGZpbGVuYW1lLCAzLjE0KQorCisgICAgICAgIHVpZCA9IG9zLmdldHVpZCgpCisgICAgICAgIGdpZCA9IG9zLmdldGdpZCgpCisKKyAgICAgICAgZGVmIGNoZWNrX2Nob3duKHBhdGgsIHVpZD1Ob25lLCBnaWQ9Tm9uZSk6CisgICAgICAgICAgICBzID0gb3Muc3RhdChmaWxlbmFtZSkKKyAgICAgICAgICAgIGlmIHVpZCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVpZCwgcy5zdF91aWQpCisgICAgICAgICAgICBpZiBnaWQgaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnaWQsIHMuc3RfZ2lkKQorCisgICAgICAgIHNodXRpbC5jaG93bihmaWxlbmFtZSwgdWlkLCBnaWQpCisgICAgICAgIGNoZWNrX2Nob3duKGZpbGVuYW1lLCB1aWQsIGdpZCkKKyAgICAgICAgc2h1dGlsLmNob3duKGZpbGVuYW1lLCB1aWQpCisgICAgICAgIGNoZWNrX2Nob3duKGZpbGVuYW1lLCB1aWQpCisgICAgICAgIHNodXRpbC5jaG93bihmaWxlbmFtZSwgdXNlcj11aWQpCisgICAgICAgIGNoZWNrX2Nob3duKGZpbGVuYW1lLCB1aWQpCisgICAgICAgIHNodXRpbC5jaG93bihmaWxlbmFtZSwgZ3JvdXA9Z2lkKQorICAgICAgICBjaGVja19jaG93bihmaWxlbmFtZSwgZ2lkPWdpZCkKKworICAgICAgICBzaHV0aWwuY2hvd24oZGlybmFtZSwgdWlkLCBnaWQpCisgICAgICAgIGNoZWNrX2Nob3duKGRpcm5hbWUsIHVpZCwgZ2lkKQorICAgICAgICBzaHV0aWwuY2hvd24oZGlybmFtZSwgdWlkKQorICAgICAgICBjaGVja19jaG93bihkaXJuYW1lLCB1aWQpCisgICAgICAgIHNodXRpbC5jaG93bihkaXJuYW1lLCB1c2VyPXVpZCkKKyAgICAgICAgY2hlY2tfY2hvd24oZGlybmFtZSwgdWlkKQorICAgICAgICBzaHV0aWwuY2hvd24oZGlybmFtZSwgZ3JvdXA9Z2lkKQorICAgICAgICBjaGVja19jaG93bihkaXJuYW1lLCBnaWQ9Z2lkKQorCisgICAgICAgIHVzZXIgPSBwd2QuZ2V0cHd1aWQodWlkKVswXQorICAgICAgICBncm91cCA9IGdycC5nZXRncmdpZChnaWQpWzBdCisgICAgICAgIHNodXRpbC5jaG93bihmaWxlbmFtZSwgdXNlciwgZ3JvdXApCisgICAgICAgIGNoZWNrX2Nob3duKGZpbGVuYW1lLCB1aWQsIGdpZCkKKyAgICAgICAgc2h1dGlsLmNob3duKGRpcm5hbWUsIHVzZXIsIGdyb3VwKQorICAgICAgICBjaGVja19jaG93bihkaXJuYW1lLCB1aWQsIGdpZCkKKwogCiBjbGFzcyBUZXN0TW92ZSh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKQEAgLTg0Nyw2ICsxMTA0LDQ5IEBACiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICBzaHV0aWwucm10cmVlKFRFU1RGTiwgaWdub3JlX2Vycm9ycz1UcnVlKQogCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIEBtb2NrX3JlbmFtZQorICAgIGRlZiB0ZXN0X21vdmVfZmlsZV9zeW1saW5rKHNlbGYpOgorICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4oc2VsZi5zcmNfZGlyLCAnYmFyJykKKyAgICAgICAgb3Muc3ltbGluayhzZWxmLnNyY19maWxlLCBkc3QpCisgICAgICAgIHNodXRpbC5tb3ZlKGRzdCwgc2VsZi5kc3RfZmlsZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNsaW5rKHNlbGYuZHN0X2ZpbGUpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5zYW1lZmlsZShzZWxmLnNyY19maWxlLCBzZWxmLmRzdF9maWxlKSkKKworICAgIEBzdXBwb3J0LnNraXBfdW5sZXNzX3N5bWxpbmsKKyAgICBAbW9ja19yZW5hbWUKKyAgICBkZWYgdGVzdF9tb3ZlX2ZpbGVfc3ltbGlua190b19kaXIoc2VsZik6CisgICAgICAgIGZpbGVuYW1lID0gImJhciIKKyAgICAgICAgZHN0ID0gb3MucGF0aC5qb2luKHNlbGYuc3JjX2RpciwgZmlsZW5hbWUpCisgICAgICAgIG9zLnN5bWxpbmsoc2VsZi5zcmNfZmlsZSwgZHN0KQorICAgICAgICBzaHV0aWwubW92ZShkc3QsIHNlbGYuZHN0X2RpcikKKyAgICAgICAgZmluYWxfbGluayA9IG9zLnBhdGguam9pbihzZWxmLmRzdF9kaXIsIGZpbGVuYW1lKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2xpbmsoZmluYWxfbGluaykpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLnNhbWVmaWxlKHNlbGYuc3JjX2ZpbGUsIGZpbmFsX2xpbmspKQorCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIEBtb2NrX3JlbmFtZQorICAgIGRlZiB0ZXN0X21vdmVfZGFuZ2xpbmdfc3ltbGluayhzZWxmKToKKyAgICAgICAgc3JjID0gb3MucGF0aC5qb2luKHNlbGYuc3JjX2RpciwgJ2JheicpCisgICAgICAgIGRzdCA9IG9zLnBhdGguam9pbihzZWxmLnNyY19kaXIsICdiYXInKQorICAgICAgICBvcy5zeW1saW5rKHNyYywgZHN0KQorICAgICAgICBkc3RfbGluayA9IG9zLnBhdGguam9pbihzZWxmLmRzdF9kaXIsICdxdXV4JykKKyAgICAgICAgc2h1dGlsLm1vdmUoZHN0LCBkc3RfbGluaykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNsaW5rKGRzdF9saW5rKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5wYXRoLnJlYWxwYXRoKHNyYyksIG9zLnBhdGgucmVhbHBhdGgoZHN0X2xpbmspKQorCisgICAgQHN1cHBvcnQuc2tpcF91bmxlc3Nfc3ltbGluaworICAgIEBtb2NrX3JlbmFtZQorICAgIGRlZiB0ZXN0X21vdmVfZGlyX3N5bWxpbmsoc2VsZik6CisgICAgICAgIHNyYyA9IG9zLnBhdGguam9pbihzZWxmLnNyY19kaXIsICdiYXonKQorICAgICAgICBkc3QgPSBvcy5wYXRoLmpvaW4oc2VsZi5zcmNfZGlyLCAnYmFyJykKKyAgICAgICAgb3MubWtkaXIoc3JjKQorICAgICAgICBvcy5zeW1saW5rKHNyYywgZHN0KQorICAgICAgICBkc3RfbGluayA9IG9zLnBhdGguam9pbihzZWxmLmRzdF9kaXIsICdxdXV4JykKKyAgICAgICAgc2h1dGlsLm1vdmUoZHN0LCBkc3RfbGluaykKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNsaW5rKGRzdF9saW5rKSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguc2FtZWZpbGUoc3JjLCBkc3RfbGluaykpCisKIAogY2xhc3MgVGVzdENvcHlGaWxlKHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtOTY1LDggKzEyNjUsNyBAQAogICAgICAgICAgICAgc2h1dGlsLm1vdmUoc2VsZi5zcmNfZGlyLCBkc3RfZGlyKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNkaXIoZHN0X2RpcikpCiAgICAgICAgIGZpbmFsbHk6Ci0gICAgICAgICAgICBpZiBvcy5wYXRoLmV4aXN0cyhkc3RfZGlyKToKLSAgICAgICAgICAgICAgICBvcy5ybWRpcihkc3RfZGlyKQorICAgICAgICAgICAgb3Mucm1kaXIoZHN0X2RpcikKIAogCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfc2lnbmFsLnB5IGIvTGliL3Rlc3QvdGVzdF9zaWduYWwucHkKaW5kZXggOGRmMWJmMC4uZmRlYjRjMiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9zaWduYWwucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9zaWduYWwucHkKQEAgLTEsMTcgKzEsMTkgQEAKLWltcG9ydCBlcnJubwotaW1wb3J0IGdjCi1pbXBvcnQgb3MKLWltcG9ydCBwaWNrbGUKLWltcG9ydCBzZWxlY3QKLWltcG9ydCBzaWduYWwKLWltcG9ydCBzdWJwcm9jZXNzCi1pbXBvcnQgc3lzCi1pbXBvcnQgdGltZQotaW1wb3J0IHRyYWNlYmFjawogaW1wb3J0IHVuaXR0ZXN0CiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKIGZyb20gY29udGV4dGxpYiBpbXBvcnQgY2xvc2luZworaW1wb3J0IGdjCitpbXBvcnQgcGlja2xlCitpbXBvcnQgc2VsZWN0CitpbXBvcnQgc2lnbmFsCitpbXBvcnQgc3RydWN0CitpbXBvcnQgc3VicHJvY2VzcworaW1wb3J0IHRyYWNlYmFjaworaW1wb3J0IHN5cywgb3MsIHRpbWUsIGVycm5vCiBmcm9tIHRlc3Quc2NyaXB0X2hlbHBlciBpbXBvcnQgYXNzZXJ0X3B5dGhvbl9vaywgc3Bhd25fcHl0aG9uCit0cnk6CisgICAgaW1wb3J0IHRocmVhZGluZworZXhjZXB0IEltcG9ydEVycm9yOgorICAgIHRocmVhZGluZyA9IE5vbmUKIAogaWYgc3lzLnBsYXRmb3JtIGluICgnb3MyJywgJ3Jpc2NvcycpOgogICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJDYW4ndCB0ZXN0IHNpZ25hbCBvbiAlcyIgJSBzeXMucGxhdGZvcm0pCkBAIC01NywxNSArNTksOSBAQAogCiAgICAgZGVmIGhhbmRsZXJBKHNlbGYsIHNpZ251bSwgZnJhbWUpOgogICAgICAgICBzZWxmLmFfY2FsbGVkID0gVHJ1ZQotICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6Ci0gICAgICAgICAgICBwcmludCgiaGFuZGxlckEgaW52b2tlZCBmcm9tIHNpZ25hbCAlcyBhdDpcbiVzIiAlICgKLSAgICAgICAgICAgICAgICBzaWdudW0sIHNlbGYuZm9ybWF0X2ZyYW1lKGZyYW1lLCBsaW1pdD0xKSkpCiAKICAgICBkZWYgaGFuZGxlckIoc2VsZiwgc2lnbnVtLCBmcmFtZSk6CiAgICAgICAgIHNlbGYuYl9jYWxsZWQgPSBUcnVlCi0gICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKLSAgICAgICAgICAgIHByaW50ICgiaGFuZGxlckIgaW52b2tlZCBmcm9tIHNpZ25hbCAlcyBhdDpcbiVzIiAlICgKLSAgICAgICAgICAgICAgICBzaWdudW0sIHNlbGYuZm9ybWF0X2ZyYW1lKGZyYW1lLCBsaW1pdD0xKSkpCiAgICAgICAgIHJhaXNlIEhhbmRsZXJCQ2FsbGVkKHNpZ251bSwgc2VsZi5mb3JtYXRfZnJhbWUoZnJhbWUpKQogCiAgICAgZGVmIHdhaXQoc2VsZiwgY2hpbGQpOgpAQCAtOTIsOCArODgsNiBAQAogCiAgICAgICAgICMgTGV0IHRoZSBzdWItcHJvY2Vzc2VzIGtub3cgd2hvIHRvIHNlbmQgc2lnbmFscyB0by4KICAgICAgICAgcGlkID0gb3MuZ2V0cGlkKCkKLSAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgotICAgICAgICAgICAgcHJpbnQoInRlc3QgcnVubmVyJ3MgcGlkIGlzIiwgcGlkKQogCiAgICAgICAgIGNoaWxkID0gaWdub3JpbmdfZWludHIoc3VicHJvY2Vzcy5Qb3BlbiwgWydraWxsJywgJy1IVVAnLCBzdHIocGlkKV0pCiAgICAgICAgIGlmIGNoaWxkOgpAQCAtMTE3LDggKzExMSw2IEBACiAgICAgICAgIGV4Y2VwdCBIYW5kbGVyQkNhbGxlZDoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLmJfY2FsbGVkKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShzZWxmLmFfY2FsbGVkKQotICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgotICAgICAgICAgICAgICAgIHByaW50KCJIYW5kbGVyQkNhbGxlZCBleGNlcHRpb24gY2F1Z2h0IikKIAogICAgICAgICBjaGlsZCA9IGlnbm9yaW5nX2VpbnRyKHN1YnByb2Nlc3MuUG9wZW4sIFsna2lsbCcsICctVVNSMicsIHN0cihwaWQpXSkKICAgICAgICAgaWYgY2hpbGQ6CkBAIC0xMzQsOCArMTI2LDcgQEAKICAgICAgICAgICAgICMgbWF5IHJldHVybiBlYXJseS4KICAgICAgICAgICAgIHRpbWUuc2xlZXAoMSkKICAgICAgICAgZXhjZXB0IEtleWJvYXJkSW50ZXJydXB0OgotICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgotICAgICAgICAgICAgICAgIHByaW50KCJLZXlib2FyZEludGVycnVwdCAodGhlIGFsYXJtKCkgd2VudCBvZmYpIikKKyAgICAgICAgICAgIHBhc3MKICAgICAgICAgZXhjZXB0OgogICAgICAgICAgICAgc2VsZi5mYWlsKCJTb21lIG90aGVyIGV4Y2VwdGlvbiB3b2tlIHVzIGZyb20gcGF1c2U6ICVzIiAlCiAgICAgICAgICAgICAgICAgICAgICAgdHJhY2ViYWNrLmZvcm1hdF9leGMoKSkKQEAgLTE5MSw3ICsxODIsNyBAQAogCiAKIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtID09ICJ3aW4zMiIsICJOb3QgdmFsaWQgb24gV2luZG93cyIpCi1jbGFzcyBCYXNpY1NpZ25hbFRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKK2NsYXNzIFBvc2l4VGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiB0cml2aWFsX3NpZ25hbF9oYW5kbGVyKHNlbGYsICphcmdzKToKICAgICAgICAgcGFzcwogCkBAIC0yMzMsMzEgKzIyNCw0NCBAQAogCiBAdW5pdHRlc3Quc2tpcElmKHN5cy5wbGF0Zm9ybSA9PSAid2luMzIiLCAiTm90IHZhbGlkIG9uIFdpbmRvd3MiKQogY2xhc3MgV2FrZXVwU2lnbmFsVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgotICAgIGRlZiBjaGVja193YWtldXAoc2VsZiwgdGVzdF9ib2R5KToKLSAgICAgICAgIyB1c2UgYSBzdWJwcm9jZXNzIHRvIGhhdmUgb25seSBvbmUgdGhyZWFkIGFuZCB0byBub3QgY2hhbmdlIHNpZ25hbAotICAgICAgICAjIGhhbmRsaW5nIG9mIHRoZSBwYXJlbnQgcHJvY2VzcworICAgIGRlZiBjaGVja193YWtldXAoc2VsZiwgdGVzdF9ib2R5LCAqc2lnbmFscywgb3JkZXJlZD1UcnVlKToKKyAgICAgICAgIyB1c2UgYSBzdWJwcm9jZXNzIHRvIGhhdmUgb25seSBvbmUgdGhyZWFkCiAgICAgICAgIGNvZGUgPSAiIiJpZiAxOgogICAgICAgICBpbXBvcnQgZmNudGwKICAgICAgICAgaW1wb3J0IG9zCiAgICAgICAgIGltcG9ydCBzaWduYWwKKyAgICAgICAgaW1wb3J0IHN0cnVjdAorCisgICAgICAgIHNpZ25hbHMgPSB7IXJ9CiAKICAgICAgICAgZGVmIGhhbmRsZXIoc2lnbnVtLCBmcmFtZSk6CiAgICAgICAgICAgICBwYXNzCiAKKyAgICAgICAgZGVmIGNoZWNrX3NpZ251bShzaWduYWxzKToKKyAgICAgICAgICAgIGRhdGEgPSBvcy5yZWFkKHJlYWQsIGxlbihzaWduYWxzKSsxKQorICAgICAgICAgICAgcmFpc2VkID0gc3RydWN0LnVucGFjaygnJXVCJyAlIGxlbihkYXRhKSwgZGF0YSkKKyAgICAgICAgICAgIGlmIG5vdCB7IXJ9OgorICAgICAgICAgICAgICAgIHJhaXNlZCA9IHNldChyYWlzZWQpCisgICAgICAgICAgICAgICAgc2lnbmFscyA9IHNldChzaWduYWxzKQorICAgICAgICAgICAgaWYgcmFpc2VkICE9IHNpZ25hbHM6CisgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCIlciAhPSAlciIgJSAocmFpc2VkLCBzaWduYWxzKSkKKwogICAgICAgICB7fQogCiAgICAgICAgIHNpZ25hbC5zaWduYWwoc2lnbmFsLlNJR0FMUk0sIGhhbmRsZXIpCiAgICAgICAgIHJlYWQsIHdyaXRlID0gb3MucGlwZSgpCi0gICAgICAgIGZsYWdzID0gZmNudGwuZmNudGwod3JpdGUsIGZjbnRsLkZfR0VURkwsIDApCi0gICAgICAgIGZsYWdzID0gZmxhZ3MgfCBvcy5PX05PTkJMT0NLCi0gICAgICAgIGZjbnRsLmZjbnRsKHdyaXRlLCBmY250bC5GX1NFVEZMLCBmbGFncykKKyAgICAgICAgZm9yIGZkIGluIChyZWFkLCB3cml0ZSk6CisgICAgICAgICAgICBmbGFncyA9IGZjbnRsLmZjbnRsKGZkLCBmY250bC5GX0dFVEZMLCAwKQorICAgICAgICAgICAgZmxhZ3MgPSBmbGFncyB8IG9zLk9fTk9OQkxPQ0sKKyAgICAgICAgICAgIGZjbnRsLmZjbnRsKGZkLCBmY250bC5GX1NFVEZMLCBmbGFncykKICAgICAgICAgc2lnbmFsLnNldF93YWtldXBfZmQod3JpdGUpCiAKICAgICAgICAgdGVzdCgpCisgICAgICAgIGNoZWNrX3NpZ251bShzaWduYWxzKQogCiAgICAgICAgIG9zLmNsb3NlKHJlYWQpCiAgICAgICAgIG9zLmNsb3NlKHdyaXRlKQotICAgICAgICAiIiIuZm9ybWF0KHRlc3RfYm9keSkKKyAgICAgICAgIiIiLmZvcm1hdChzaWduYWxzLCBvcmRlcmVkLCB0ZXN0X2JvZHkpCiAKICAgICAgICAgYXNzZXJ0X3B5dGhvbl9vaygnLWMnLCBjb2RlKQogCkBAIC0yODMsNyArMjg3LDcgQEAKICAgICAgICAgICAgIGR0ID0gYWZ0ZXJfdGltZSAtIG1pZF90aW1lCiAgICAgICAgICAgICBpZiBkdCA+PSBUSU1FT1VUX0hBTEY6CiAgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCIlcyA+PSAlcyIgJSAoZHQsIFRJTUVPVVRfSEFMRikpCi0gICAgICAgICIiIikKKyAgICAgICAgIiIiLCBzaWduYWwuU0lHQUxSTSkKIAogICAgIGRlZiB0ZXN0X3dha2V1cF9mZF9kdXJpbmcoc2VsZik6CiAgICAgICAgIHNlbGYuY2hlY2tfd2FrZXVwKCIiImRlZiB0ZXN0KCk6CkBAIC0zMDYsNyArMzEwLDMyIEBACiAgICAgICAgICAgICBkdCA9IGFmdGVyX3RpbWUgLSBiZWZvcmVfdGltZQogICAgICAgICAgICAgaWYgZHQgPj0gVElNRU9VVF9IQUxGOgogICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiJXMgPj0gJXMiICUgKGR0LCBUSU1FT1VUX0hBTEYpKQotICAgICAgICAiIiIpCisgICAgICAgICIiIiwgc2lnbmFsLlNJR0FMUk0pCisKKyAgICBkZWYgdGVzdF9zaWdudW0oc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tfd2FrZXVwKCIiImRlZiB0ZXN0KCk6CisgICAgICAgICAgICBzaWduYWwuc2lnbmFsKHNpZ25hbC5TSUdVU1IxLCBoYW5kbGVyKQorICAgICAgICAgICAgb3Mua2lsbChvcy5nZXRwaWQoKSwgc2lnbmFsLlNJR1VTUjEpCisgICAgICAgICAgICBvcy5raWxsKG9zLmdldHBpZCgpLCBzaWduYWwuU0lHQUxSTSkKKyAgICAgICAgIiIiLCBzaWduYWwuU0lHVVNSMSwgc2lnbmFsLlNJR0FMUk0pCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3B0aHJlYWRfc2lnbWFzaycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soKScpCisgICAgZGVmIHRlc3RfcGVuZGluZyhzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja193YWtldXAoIiIiZGVmIHRlc3QoKToKKyAgICAgICAgICAgIHNpZ251bTEgPSBzaWduYWwuU0lHVVNSMQorICAgICAgICAgICAgc2lnbnVtMiA9IHNpZ25hbC5TSUdVU1IyCisKKyAgICAgICAgICAgIHNpZ25hbC5zaWduYWwoc2lnbnVtMSwgaGFuZGxlcikKKyAgICAgICAgICAgIHNpZ25hbC5zaWduYWwoc2lnbnVtMiwgaGFuZGxlcikKKworICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX0JMT0NLLCAoc2lnbnVtMSwgc2lnbnVtMikpCisgICAgICAgICAgICBvcy5raWxsKG9zLmdldHBpZCgpLCBzaWdudW0xKQorICAgICAgICAgICAgb3Mua2lsbChvcy5nZXRwaWQoKSwgc2lnbnVtMikKKyAgICAgICAgICAgICMgVW5ibG9ja2luZyB0aGUgMiBzaWduYWxzIGNhbGxzIHRoZSBDIHNpZ25hbCBoYW5kbGVyIHR3aWNlCisgICAgICAgICAgICBzaWduYWwucHRocmVhZF9zaWdtYXNrKHNpZ25hbC5TSUdfVU5CTE9DSywgKHNpZ251bTEsIHNpZ251bTIpKQorICAgICAgICAiIiIsICBzaWduYWwuU0lHVVNSMSwgc2lnbmFsLlNJR1VTUjIsIG9yZGVyZWQ9RmFsc2UpCisKIAogQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm0gPT0gIndpbjMyIiwgIk5vdCB2YWxpZCBvbiBXaW5kb3dzIikKIGNsYXNzIFNpZ2ludGVycnVwdFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgpAQCAtMzE2LDkgKzM0NSw2IEBACiAgICAgICAgIHJlYWQgaXMgaW50ZXJydXB0ZWQgYnkgdGhlIHNpZ25hbCBhbmQgcmFpc2VzIGFuIGV4Y2VwdGlvbi4gIFJldHVybiBGYWxzZQogICAgICAgICBpZiBpdCByZXR1cm5zIG5vcm1hbGx5LgogICAgICAgICAiIiIKLSAgICAgICAgY2xhc3MgVGltZW91dChFeGNlcHRpb24pOgotICAgICAgICAgICAgcGFzcwotCiAgICAgICAgICMgdXNlIGEgc3VicHJvY2VzcyB0byBoYXZlIG9ubHkgb25lIHRocmVhZCwgdG8gaGF2ZSBhIHRpbWVvdXQgb24gdGhlCiAgICAgICAgICMgYmxvY2tpbmcgcmVhZCBhbmQgdG8gbm90IHRvdWNoIHNpZ25hbCBoYW5kbGluZyBpbiB0aGlzIHByb2Nlc3MKICAgICAgICAgY29kZSA9ICIiImlmIDE6CkBAIC0zNTksMTggKzM4NSw4IEBACiAgICAgICAgICAgICAgICAgIyB3YWl0IHVudGlsIHRoZSBjaGlsZCBwcm9jZXNzIGlzIGxvYWRlZCBhbmQgaGFzIHN0YXJ0ZWQKICAgICAgICAgICAgICAgICBmaXJzdF9saW5lID0gcHJvY2Vzcy5zdGRvdXQucmVhZGxpbmUoKQogCi0gICAgICAgICAgICAgICAgIyBXYWl0IHRoZSBwcm9jZXNzIHdpdGggYSB0aW1lb3V0IG9mIDUgc2Vjb25kcwotICAgICAgICAgICAgICAgIHRpbWVvdXQgPSB0aW1lLnRpbWUoKSArIDUuMAotICAgICAgICAgICAgICAgIHdoaWxlIFRydWU6Ci0gICAgICAgICAgICAgICAgICAgIGlmIHRpbWVvdXQgPCB0aW1lLnRpbWUoKToKLSAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlIFRpbWVvdXQoKQotICAgICAgICAgICAgICAgICAgICBzdGF0dXMgPSBwcm9jZXNzLnBvbGwoKQotICAgICAgICAgICAgICAgICAgICBpZiBzdGF0dXMgaXMgbm90IE5vbmU6Ci0gICAgICAgICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgICAgICAgICB0aW1lLnNsZWVwKDAuMSkKLQotICAgICAgICAgICAgICAgIHN0ZG91dCwgc3RkZXJyID0gcHJvY2Vzcy5jb21tdW5pY2F0ZSgpCi0gICAgICAgICAgICBleGNlcHQgVGltZW91dDoKKyAgICAgICAgICAgICAgICBzdGRvdXQsIHN0ZGVyciA9IHByb2Nlc3MuY29tbXVuaWNhdGUodGltZW91dD01LjApCisgICAgICAgICAgICBleGNlcHQgc3VicHJvY2Vzcy5UaW1lb3V0RXhwaXJlZDoKICAgICAgICAgICAgICAgICBwcm9jZXNzLmtpbGwoKQogICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZQogICAgICAgICAgICAgZWxzZToKQEAgLTQxOSw4ICs0MzUsNiBAQAogCiAgICAgZGVmIHNpZ19hbHJtKHNlbGYsICphcmdzKToKICAgICAgICAgc2VsZi5obmRsX2NhbGxlZCA9IFRydWUKLSAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgotICAgICAgICAgICAgcHJpbnQoIlNJR0FMUk0gaGFuZGxlciBpbnZva2VkIiwgYXJncykKIAogICAgIGRlZiBzaWdfdnRhbHJtKHNlbGYsICphcmdzKToKICAgICAgICAgc2VsZi5obmRsX2NhbGxlZCA9IFRydWUKQEAgLTQzMiwyMSArNDQ2LDEzIEBACiAgICAgICAgIGVsaWYgc2VsZi5obmRsX2NvdW50ID09IDM6CiAgICAgICAgICAgICAjIGRpc2FibGUgSVRJTUVSX1ZJUlRVQUwsIHRoaXMgZnVuY3Rpb24gc2hvdWxkbid0IGJlIGNhbGxlZCBhbnltb3JlCiAgICAgICAgICAgICBzaWduYWwuc2V0aXRpbWVyKHNpZ25hbC5JVElNRVJfVklSVFVBTCwgMCkKLSAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKLSAgICAgICAgICAgICAgICBwcmludCgibGFzdCBTSUdWVEFMUk0gaGFuZGxlciBjYWxsIikKIAogICAgICAgICBzZWxmLmhuZGxfY291bnQgKz0gMQogCi0gICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKLSAgICAgICAgICAgIHByaW50KCJTSUdWVEFMUk0gaGFuZGxlciBpbnZva2VkIiwgYXJncykKLQogICAgIGRlZiBzaWdfcHJvZihzZWxmLCAqYXJncyk6CiAgICAgICAgIHNlbGYuaG5kbF9jYWxsZWQgPSBUcnVlCiAgICAgICAgIHNpZ25hbC5zZXRpdGltZXIoc2lnbmFsLklUSU1FUl9QUk9GLCAwKQogCi0gICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKLSAgICAgICAgICAgIHByaW50KCJTSUdQUk9GIGhhbmRsZXIgaW52b2tlZCIsIGFyZ3MpCi0KICAgICBkZWYgdGVzdF9pdGltZXJfZXhjKHNlbGYpOgogICAgICAgICAjIFhYWCBJJ20gYXNzdW1pbmcgLTEgaXMgYW4gaW52YWxpZCBpdGltZXIsIGJ1dCBtYXliZSBzb21lIHBsYXRmb3JtCiAgICAgICAgICMgZGVmaW5lcyBpdCA/CkBAIC00NTksMTAgKzQ2NSw3IEBACiAgICAgZGVmIHRlc3RfaXRpbWVyX3JlYWwoc2VsZik6CiAgICAgICAgIHNlbGYuaXRpbWVyID0gc2lnbmFsLklUSU1FUl9SRUFMCiAgICAgICAgIHNpZ25hbC5zZXRpdGltZXIoc2VsZi5pdGltZXIsIDEuMCkKLSAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgotICAgICAgICAgICAgcHJpbnQoIlxuY2FsbCBwYXVzZSgpLi4uIikKICAgICAgICAgc2lnbmFsLnBhdXNlKCkKLQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuaG5kbF9jYWxsZWQsIFRydWUpCiAKICAgICAjIElzc3VlIDM4NjQsIHVua25vd24gaWYgdGhpcyBhZmZlY3RzIGVhcmxpZXIgdmVyc2lvbnMgb2YgZnJlZWJzZCBhbHNvCkBAIC01MTEsMTEgKzUxNCwzNjEgQEAKICAgICAgICAgIyBhbmQgdGhlIGhhbmRsZXIgc2hvdWxkIGhhdmUgYmVlbiBjYWxsZWQKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmhuZGxfY2FsbGVkLCBUcnVlKQogCisKK2NsYXNzIFBlbmRpbmdTaWduYWxzVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgorICAgICIiIgorICAgIFRlc3QgcHRocmVhZF9zaWdtYXNrKCksIHB0aHJlYWRfa2lsbCgpLCBzaWdwZW5kaW5nKCkgYW5kIHNpZ3dhaXQoKQorICAgIGZ1bmN0aW9ucy4KKyAgICAiIiIKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3NpZ3BlbmRpbmcnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwuc2lncGVuZGluZygpJykKKyAgICBkZWYgdGVzdF9zaWdwZW5kaW5nX2VtcHR5KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpZ25hbC5zaWdwZW5kaW5nKCksIHNldCgpKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaWduYWwsICdwdGhyZWFkX3NpZ21hc2snKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwucHRocmVhZF9zaWdtYXNrKCknKQorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAnc2lncGVuZGluZycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5zaWdwZW5kaW5nKCknKQorICAgIGRlZiB0ZXN0X3NpZ3BlbmRpbmcoc2VsZik6CisgICAgICAgIGNvZGUgPSAiIiJpZiAxOgorICAgICAgICAgICAgaW1wb3J0IG9zCisgICAgICAgICAgICBpbXBvcnQgc2lnbmFsCisKKyAgICAgICAgICAgIGRlZiBoYW5kbGVyKHNpZ251bSwgZnJhbWUpOgorICAgICAgICAgICAgICAgIDEvMAorCisgICAgICAgICAgICBzaWdudW0gPSBzaWduYWwuU0lHVVNSMQorICAgICAgICAgICAgc2lnbmFsLnNpZ25hbChzaWdudW0sIGhhbmRsZXIpCisKKyAgICAgICAgICAgIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soc2lnbmFsLlNJR19CTE9DSywgW3NpZ251bV0pCisgICAgICAgICAgICBvcy5raWxsKG9zLmdldHBpZCgpLCBzaWdudW0pCisgICAgICAgICAgICBwZW5kaW5nID0gc2lnbmFsLnNpZ3BlbmRpbmcoKQorICAgICAgICAgICAgaWYgcGVuZGluZyAhPSB7c2lnbnVtfToKKyAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oJyVzICE9IHslc30nICUgKHBlbmRpbmcsIHNpZ251bSkpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX1VOQkxPQ0ssIFtzaWdudW1dKQorICAgICAgICAgICAgZXhjZXB0IFplcm9EaXZpc2lvbkVycm9yOgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJaZXJvRGl2aXNpb25FcnJvciBub3QgcmFpc2VkIikKKyAgICAgICAgIiIiCisgICAgICAgIGFzc2VydF9weXRob25fb2soJy1jJywgY29kZSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAncHRocmVhZF9raWxsJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgc2lnbmFsLnB0aHJlYWRfa2lsbCgpJykKKyAgICBkZWYgdGVzdF9wdGhyZWFkX2tpbGwoc2VsZik6CisgICAgICAgIGNvZGUgPSAiIiJpZiAxOgorICAgICAgICAgICAgaW1wb3J0IHNpZ25hbAorICAgICAgICAgICAgaW1wb3J0IHRocmVhZGluZworICAgICAgICAgICAgaW1wb3J0IHN5cworCisgICAgICAgICAgICBzaWdudW0gPSBzaWduYWwuU0lHVVNSMQorCisgICAgICAgICAgICBkZWYgaGFuZGxlcihzaWdudW0sIGZyYW1lKToKKyAgICAgICAgICAgICAgICAxLzAKKworICAgICAgICAgICAgc2lnbmFsLnNpZ25hbChzaWdudW0sIGhhbmRsZXIpCisKKyAgICAgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnZnJlZWJzZDYnOgorICAgICAgICAgICAgICAgICMgSXNzdWUgIzEyMzkyIGFuZCAjMTI0Njk6IHNlbmQgYSBzaWduYWwgdG8gdGhlIG1haW4gdGhyZWFkCisgICAgICAgICAgICAgICAgIyBkb2Vzbid0IHdvcmsgYmVmb3JlIHRoZSBjcmVhdGlvbiBvZiB0aGUgZmlyc3QgdGhyZWFkIG9uCisgICAgICAgICAgICAgICAgIyBGcmVlQlNEIDYKKyAgICAgICAgICAgICAgICBkZWYgbm9vcCgpOgorICAgICAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICAgICAgdGhyZWFkID0gdGhyZWFkaW5nLlRocmVhZCh0YXJnZXQ9bm9vcCkKKyAgICAgICAgICAgICAgICB0aHJlYWQuc3RhcnQoKQorICAgICAgICAgICAgICAgIHRocmVhZC5qb2luKCkKKworICAgICAgICAgICAgdGlkID0gdGhyZWFkaW5nLmdldF9pZGVudCgpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfa2lsbCh0aWQsIHNpZ251bSkKKyAgICAgICAgICAgIGV4Y2VwdCBaZXJvRGl2aXNpb25FcnJvcjoKKyAgICAgICAgICAgICAgICBwYXNzCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiWmVyb0RpdmlzaW9uRXJyb3Igbm90IHJhaXNlZCIpCisgICAgICAgICIiIgorICAgICAgICBhc3NlcnRfcHl0aG9uX29rKCctYycsIGNvZGUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3B0aHJlYWRfc2lnbWFzaycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soKScpCisgICAgZGVmIHdhaXRfaGVscGVyKHNlbGYsIGJsb2NrZWQsIHRlc3QpOgorICAgICAgICAiIiIKKyAgICAgICAgdGVzdDogYm9keSBvZiB0aGUgImRlZiB0ZXN0KHNpZ251bSk6IiBmdW5jdGlvbi4KKyAgICAgICAgYmxvY2tlZDogbnVtYmVyIG9mIHRoZSBibG9ja2VkIHNpZ25hbAorICAgICAgICAiIiIKKyAgICAgICAgY29kZSA9ICcnJ2lmIDE6CisgICAgICAgIGltcG9ydCBzaWduYWwKKyAgICAgICAgaW1wb3J0IHN5cworCisgICAgICAgIGRlZiBoYW5kbGVyKHNpZ251bSwgZnJhbWUpOgorICAgICAgICAgICAgMS8wCisKKyAgICAgICAgJXMKKworICAgICAgICBibG9ja2VkID0gJXMKKyAgICAgICAgc2lnbnVtID0gc2lnbmFsLlNJR0FMUk0KKworICAgICAgICAjIGNoaWxkOiBibG9jayBhbmQgd2FpdCB0aGUgc2lnbmFsCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNpZ25hbC5zaWduYWwoc2lnbnVtLCBoYW5kbGVyKQorICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX0JMT0NLLCBbYmxvY2tlZF0pCisKKyAgICAgICAgICAgICMgRG8gdGhlIHRlc3RzCisgICAgICAgICAgICB0ZXN0KHNpZ251bSkKKworICAgICAgICAgICAgIyBUaGUgaGFuZGxlciBtdXN0IG5vdCBiZSBjYWxsZWQgb24gdW5ibG9jaworICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soc2lnbmFsLlNJR19VTkJMT0NLLCBbYmxvY2tlZF0pCisgICAgICAgICAgICBleGNlcHQgWmVyb0RpdmlzaW9uRXJyb3I6CisgICAgICAgICAgICAgICAgcHJpbnQoInRoZSBzaWduYWwgaGFuZGxlciBoYXMgYmVlbiBjYWxsZWQiLAorICAgICAgICAgICAgICAgICAgICAgIGZpbGU9c3lzLnN0ZGVycikKKyAgICAgICAgICAgICAgICBzeXMuZXhpdCgxKQorICAgICAgICBleGNlcHQgQmFzZUV4Y2VwdGlvbiBhcyBlcnI6CisgICAgICAgICAgICBwcmludCgiZXJyb3I6IHt9Ii5mb3JtYXQoZXJyKSwgZmlsZT1zeXMuc3RkZXJyKQorICAgICAgICAgICAgc3lzLnN0ZGVyci5mbHVzaCgpCisgICAgICAgICAgICBzeXMuZXhpdCgxKQorICAgICAgICAnJycgJSAodGVzdC5zdHJpcCgpLCBibG9ja2VkKQorCisgICAgICAgICMgc2lnKndhaXQqIG11c3QgYmUgY2FsbGVkIHdpdGggdGhlIHNpZ25hbCBibG9ja2VkOiBzaW5jZSB0aGUgY3VycmVudAorICAgICAgICAjIHByb2Nlc3MgbWlnaHQgaGF2ZSBzZXZlcmFsIHRocmVhZHMgcnVubmluZywgdXNlIGEgc3VicHJvY2VzcyB0byBoYXZlCisgICAgICAgICMgYSBzaW5nbGUgdGhyZWFkLgorICAgICAgICBhc3NlcnRfcHl0aG9uX29rKCctYycsIGNvZGUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3NpZ3dhaXQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCBzaWduYWwuc2lnd2FpdCgpJykKKyAgICBkZWYgdGVzdF9zaWd3YWl0KHNlbGYpOgorICAgICAgICBzZWxmLndhaXRfaGVscGVyKHNpZ25hbC5TSUdBTFJNLCAnJycKKyAgICAgICAgZGVmIHRlc3Qoc2lnbnVtKToKKyAgICAgICAgICAgIHNpZ25hbC5hbGFybSgxKQorICAgICAgICAgICAgcmVjZWl2ZWQgPSBzaWduYWwuc2lnd2FpdChbc2lnbnVtXSkKKyAgICAgICAgICAgIGlmIHJlY2VpdmVkICE9IHNpZ251bToKKyAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oJ3JlY2VpdmVkICVzLCBub3QgJXMnICUgKHJlY2VpdmVkLCBzaWdudW0pKQorICAgICAgICAnJycpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3NpZ3dhaXRpbmZvJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgc2lnbmFsLnNpZ3dhaXRpbmZvKCknKQorICAgIGRlZiB0ZXN0X3NpZ3dhaXRpbmZvKHNlbGYpOgorICAgICAgICBzZWxmLndhaXRfaGVscGVyKHNpZ25hbC5TSUdBTFJNLCAnJycKKyAgICAgICAgZGVmIHRlc3Qoc2lnbnVtKToKKyAgICAgICAgICAgIHNpZ25hbC5hbGFybSgxKQorICAgICAgICAgICAgaW5mbyA9IHNpZ25hbC5zaWd3YWl0aW5mbyhbc2lnbnVtXSkKKyAgICAgICAgICAgIGlmIGluZm8uc2lfc2lnbm8gIT0gc2lnbnVtOgorICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiaW5mby5zaV9zaWdubyAhPSAlcyIgJSBzaWdudW0pCisgICAgICAgICcnJykKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAnc2lndGltZWR3YWl0JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgc2lnbmFsLnNpZ3RpbWVkd2FpdCgpJykKKyAgICBkZWYgdGVzdF9zaWd0aW1lZHdhaXQoc2VsZik6CisgICAgICAgIHNlbGYud2FpdF9oZWxwZXIoc2lnbmFsLlNJR0FMUk0sICcnJworICAgICAgICBkZWYgdGVzdChzaWdudW0pOgorICAgICAgICAgICAgc2lnbmFsLmFsYXJtKDEpCisgICAgICAgICAgICBpbmZvID0gc2lnbmFsLnNpZ3RpbWVkd2FpdChbc2lnbnVtXSwgKDEwLCAxMDAwKSkKKyAgICAgICAgICAgIGlmIGluZm8uc2lfc2lnbm8gIT0gc2lnbnVtOgorICAgICAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbignaW5mby5zaV9zaWdubyAhPSAlcycgJSBzaWdudW0pCisgICAgICAgICcnJykKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAnc2lndGltZWR3YWl0JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgc2lnbmFsLnNpZ3RpbWVkd2FpdCgpJykKKyAgICBkZWYgdGVzdF9zaWd0aW1lZHdhaXRfcG9sbChzZWxmKToKKyAgICAgICAgIyBjaGVjayB0aGF0IHBvbGxpbmcgd2l0aCBzaWd0aW1lZHdhaXQgd29ya3MKKyAgICAgICAgc2VsZi53YWl0X2hlbHBlcihzaWduYWwuU0lHQUxSTSwgJycnCisgICAgICAgIGRlZiB0ZXN0KHNpZ251bSk6CisgICAgICAgICAgICBpbXBvcnQgb3MKKyAgICAgICAgICAgIG9zLmtpbGwob3MuZ2V0cGlkKCksIHNpZ251bSkKKyAgICAgICAgICAgIGluZm8gPSBzaWduYWwuc2lndGltZWR3YWl0KFtzaWdudW1dLCAoMCwgMCkpCisgICAgICAgICAgICBpZiBpbmZvLnNpX3NpZ25vICE9IHNpZ251bToKKyAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oJ2luZm8uc2lfc2lnbm8gIT0gJXMnICUgc2lnbnVtKQorICAgICAgICAnJycpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3NpZ3RpbWVkd2FpdCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5zaWd0aW1lZHdhaXQoKScpCisgICAgZGVmIHRlc3Rfc2lndGltZWR3YWl0X3RpbWVvdXQoc2VsZik6CisgICAgICAgIHNlbGYud2FpdF9oZWxwZXIoc2lnbmFsLlNJR0FMUk0sICcnJworICAgICAgICBkZWYgdGVzdChzaWdudW0pOgorICAgICAgICAgICAgcmVjZWl2ZWQgPSBzaWduYWwuc2lndGltZWR3YWl0KFtzaWdudW1dLCAoMSwgMCkpCisgICAgICAgICAgICBpZiByZWNlaXZlZCBpcyBub3QgTm9uZToKKyAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oInJlY2VpdmVkPSVyIiAlIChyZWNlaXZlZCwpKQorICAgICAgICAnJycpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3NpZ3RpbWVkd2FpdCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5zaWd0aW1lZHdhaXQoKScpCisgICAgZGVmIHRlc3Rfc2lndGltZWR3YWl0X25lZ2F0aXZlX3RpbWVvdXQoc2VsZik6CisgICAgICAgIHNpZ251bSA9IHNpZ25hbC5TSUdBTFJNCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNpZ25hbC5zaWd0aW1lZHdhaXQsIFtzaWdudW1dLCAoLTEsIC0xKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgc2lnbmFsLnNpZ3RpbWVkd2FpdCwgW3NpZ251bV0sICgwLCAtMSkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNpZ25hbC5zaWd0aW1lZHdhaXQsIFtzaWdudW1dLCAoLTEsIDApKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzaWduYWwsICdzaWd3YWl0aW5mbycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5zaWd3YWl0aW5mbygpJykKKyAgICBkZWYgdGVzdF9zaWd3YWl0aW5mb19pbnRlcnJ1cHRlZChzZWxmKToKKyAgICAgICAgc2VsZi53YWl0X2hlbHBlcihzaWduYWwuU0lHVVNSMSwgJycnCisgICAgICAgIGRlZiB0ZXN0KHNpZ251bSk6CisgICAgICAgICAgICBpbXBvcnQgZXJybm8KKworICAgICAgICAgICAgaG5kbF9jYWxsZWQgPSBUcnVlCisgICAgICAgICAgICBkZWYgYWxhcm1faGFuZGxlcihzaWdudW0sIGZyYW1lKToKKyAgICAgICAgICAgICAgICBobmRsX2NhbGxlZCA9IEZhbHNlCisKKyAgICAgICAgICAgIHNpZ25hbC5zaWduYWwoc2lnbmFsLlNJR0FMUk0sIGFsYXJtX2hhbmRsZXIpCisgICAgICAgICAgICBzaWduYWwuYWxhcm0oMSkKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICBzaWduYWwuc2lnd2FpdGluZm8oW3NpZ25hbC5TSUdVU1IxXSkKKyAgICAgICAgICAgIGV4Y2VwdCBPU0Vycm9yIGFzIGU6CisgICAgICAgICAgICAgICAgaWYgZS5lcnJubyA9PSBlcnJuby5FSU5UUjoKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IGhuZGxfY2FsbGVkOgorICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJTSUdBTFJNIGhhbmRsZXIgbm90IGNhbGxlZCIpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJFeHBlY3RlZCBFSU5UUiB0byBiZSByYWlzZWQgYnkgc2lnd2FpdGluZm8iKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oIkV4cGVjdGVkIEVJTlRSIHRvIGJlIHJhaXNlZCBieSBzaWd3YWl0aW5mbyIpCisgICAgICAgICcnJykKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAnc2lnd2FpdCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5zaWd3YWl0KCknKQorICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAncHRocmVhZF9zaWdtYXNrJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgc2lnbmFsLnB0aHJlYWRfc2lnbWFzaygpJykKKyAgICBAdW5pdHRlc3Quc2tpcElmKHRocmVhZGluZyBpcyBOb25lLCAidGVzdCBuZWVkcyB0aHJlYWRpbmcgbW9kdWxlIikKKyAgICBkZWYgdGVzdF9zaWd3YWl0X3RocmVhZChzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IGNhbGxpbmcgc2lnd2FpdCgpIGZyb20gYSB0aHJlYWQgZG9lc24ndCBzdXNwZW5kIHRoZSB3aG9sZQorICAgICAgICAjIHByb2Nlc3MuIEEgbmV3IGludGVycHJldGVyIGlzIHNwYXduZWQgdG8gYXZvaWQgcHJvYmxlbXMgd2hlbiBtaXhpbmcKKyAgICAgICAgIyB0aHJlYWRzIGFuZCBmb3JrKCk6IG9ubHkgYXN5bmMtc2FmZSBmdW5jdGlvbnMgYXJlIGFsbG93ZWQgYmV0d2VlbgorICAgICAgICAjIGZvcmsoKSBhbmQgZXhlYygpLgorICAgICAgICBhc3NlcnRfcHl0aG9uX29rKCItYyIsICIiImlmIFRydWU6CisgICAgICAgICAgICBpbXBvcnQgb3MsIHRocmVhZGluZywgc3lzLCB0aW1lLCBzaWduYWwKKworICAgICAgICAgICAgIyB0aGUgZGVmYXVsdCBoYW5kbGVyIHRlcm1pbmF0ZXMgdGhlIHByb2Nlc3MKKyAgICAgICAgICAgIHNpZ251bSA9IHNpZ25hbC5TSUdVU1IxCisKKyAgICAgICAgICAgIGRlZiBraWxsX2xhdGVyKCk6CisgICAgICAgICAgICAgICAgIyB3YWl0IHVudGlsIHRoZSBtYWluIHRocmVhZCBpcyB3YWl0aW5nIGluIHNpZ3dhaXQoKQorICAgICAgICAgICAgICAgIHRpbWUuc2xlZXAoMSkKKyAgICAgICAgICAgICAgICBvcy5raWxsKG9zLmdldHBpZCgpLCBzaWdudW0pCisKKyAgICAgICAgICAgICMgdGhlIHNpZ25hbCBtdXN0IGJlIGJsb2NrZWQgYnkgYWxsIHRoZSB0aHJlYWRzCisgICAgICAgICAgICBzaWduYWwucHRocmVhZF9zaWdtYXNrKHNpZ25hbC5TSUdfQkxPQ0ssIFtzaWdudW1dKQorICAgICAgICAgICAga2lsbGVyID0gdGhyZWFkaW5nLlRocmVhZCh0YXJnZXQ9a2lsbF9sYXRlcikKKyAgICAgICAgICAgIGtpbGxlci5zdGFydCgpCisgICAgICAgICAgICByZWNlaXZlZCA9IHNpZ25hbC5zaWd3YWl0KFtzaWdudW1dKQorICAgICAgICAgICAgaWYgcmVjZWl2ZWQgIT0gc2lnbnVtOgorICAgICAgICAgICAgICAgIHByaW50KCJzaWd3YWl0KCkgcmVjZWl2ZWQgJXMsIG5vdCAlcyIgJSAocmVjZWl2ZWQsIHNpZ251bSksCisgICAgICAgICAgICAgICAgICAgICAgZmlsZT1zeXMuc3RkZXJyKQorICAgICAgICAgICAgICAgIHN5cy5leGl0KDEpCisgICAgICAgICAgICBraWxsZXIuam9pbigpCisgICAgICAgICAgICAjIHVuYmxvY2sgdGhlIHNpZ25hbCwgd2hpY2ggc2hvdWxkIGhhdmUgYmVlbiBjbGVhcmVkIGJ5IHNpZ3dhaXQoKQorICAgICAgICAgICAgc2lnbmFsLnB0aHJlYWRfc2lnbWFzayhzaWduYWwuU0lHX1VOQkxPQ0ssIFtzaWdudW1dKQorICAgICAgICAiIiIpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3B0aHJlYWRfc2lnbWFzaycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soKScpCisgICAgZGVmIHRlc3RfcHRocmVhZF9zaWdtYXNrX2FyZ3VtZW50cyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzaWduYWwucHRocmVhZF9zaWdtYXNrKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2ssIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2lnbmFsLnB0aHJlYWRfc2lnbWFzaywgMSwgMiwgMykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgc2lnbmFsLnB0aHJlYWRfc2lnbWFzaywgMTcwMCwgW10pCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3B0aHJlYWRfc2lnbWFzaycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soKScpCisgICAgZGVmIHRlc3RfcHRocmVhZF9zaWdtYXNrKHNlbGYpOgorICAgICAgICBjb2RlID0gIiIiaWYgMToKKyAgICAgICAgaW1wb3J0IHNpZ25hbAorICAgICAgICBpbXBvcnQgb3M7IGltcG9ydCB0aHJlYWRpbmcKKworICAgICAgICBkZWYgaGFuZGxlcihzaWdudW0sIGZyYW1lKToKKyAgICAgICAgICAgIDEvMAorCisgICAgICAgIGRlZiBraWxsKHNpZ251bSk6CisgICAgICAgICAgICBvcy5raWxsKG9zLmdldHBpZCgpLCBzaWdudW0pCisKKyAgICAgICAgZGVmIHJlYWRfc2lnbWFzaygpOgorICAgICAgICAgICAgcmV0dXJuIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soc2lnbmFsLlNJR19CTE9DSywgW10pCisKKyAgICAgICAgc2lnbnVtID0gc2lnbmFsLlNJR1VTUjEKKworICAgICAgICAjIEluc3RhbGwgb3VyIHNpZ25hbCBoYW5kbGVyCisgICAgICAgIG9sZF9oYW5kbGVyID0gc2lnbmFsLnNpZ25hbChzaWdudW0sIGhhbmRsZXIpCisKKyAgICAgICAgIyBVbmJsb2NrIFNJR1VTUjEgKGFuZCBjb3B5IHRoZSBvbGQgbWFzaykgdG8gdGVzdCBvdXIgc2lnbmFsIGhhbmRsZXIKKyAgICAgICAgb2xkX21hc2sgPSBzaWduYWwucHRocmVhZF9zaWdtYXNrKHNpZ25hbC5TSUdfVU5CTE9DSywgW3NpZ251bV0pCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGtpbGwoc2lnbnVtKQorICAgICAgICBleGNlcHQgWmVyb0RpdmlzaW9uRXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oIlplcm9EaXZpc2lvbkVycm9yIG5vdCByYWlzZWQiKQorCisgICAgICAgICMgQmxvY2sgYW5kIHRoZW4gcmFpc2UgU0lHVVNSMS4gVGhlIHNpZ25hbCBpcyBibG9ja2VkOiB0aGUgc2lnbmFsCisgICAgICAgICMgaGFuZGxlciBpcyBub3QgY2FsbGVkLCBhbmQgdGhlIHNpZ25hbCBpcyBub3cgcGVuZGluZworICAgICAgICBzaWduYWwucHRocmVhZF9zaWdtYXNrKHNpZ25hbC5TSUdfQkxPQ0ssIFtzaWdudW1dKQorICAgICAgICBraWxsKHNpZ251bSkKKworICAgICAgICAjIENoZWNrIHRoZSBuZXcgbWFzaworICAgICAgICBibG9ja2VkID0gcmVhZF9zaWdtYXNrKCkKKyAgICAgICAgaWYgc2lnbnVtIG5vdCBpbiBibG9ja2VkOgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCIlcyBub3QgaW4gJXMiICUgKHNpZ251bSwgYmxvY2tlZCkpCisgICAgICAgIGlmIG9sZF9tYXNrIF4gYmxvY2tlZCAhPSB7c2lnbnVtfToKKyAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiJXMgXiAlcyAhPSB7JXN9IiAlIChvbGRfbWFzaywgYmxvY2tlZCwgc2lnbnVtKSkKKworICAgICAgICAjIFVuYmxvY2sgU0lHVVNSMQorICAgICAgICB0cnk6CisgICAgICAgICAgICAjIHVuYmxvY2sgdGhlIHBlbmRpbmcgc2lnbmFsIGNhbGxzIGltbWVkaWF0bHkgdGhlIHNpZ25hbCBoYW5kbGVyCisgICAgICAgICAgICBzaWduYWwucHRocmVhZF9zaWdtYXNrKHNpZ25hbC5TSUdfVU5CTE9DSywgW3NpZ251bV0pCisgICAgICAgIGV4Y2VwdCBaZXJvRGl2aXNpb25FcnJvcjoKKyAgICAgICAgICAgIHBhc3MKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHJhaXNlIEV4Y2VwdGlvbigiWmVyb0RpdmlzaW9uRXJyb3Igbm90IHJhaXNlZCIpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIGtpbGwoc2lnbnVtKQorICAgICAgICBleGNlcHQgWmVyb0RpdmlzaW9uRXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oIlplcm9EaXZpc2lvbkVycm9yIG5vdCByYWlzZWQiKQorCisgICAgICAgICMgQ2hlY2sgdGhlIG5ldyBtYXNrCisgICAgICAgIHVuYmxvY2tlZCA9IHJlYWRfc2lnbWFzaygpCisgICAgICAgIGlmIHNpZ251bSBpbiB1bmJsb2NrZWQ6CisgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oIiVzIGluICVzIiAlIChzaWdudW0sIHVuYmxvY2tlZCkpCisgICAgICAgIGlmIGJsb2NrZWQgXiB1bmJsb2NrZWQgIT0ge3NpZ251bX06CisgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oIiVzIF4gJXMgIT0geyVzfSIgJSAoYmxvY2tlZCwgdW5ibG9ja2VkLCBzaWdudW0pKQorICAgICAgICBpZiBvbGRfbWFzayAhPSB1bmJsb2NrZWQ6CisgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oIiVzICE9ICVzIiAlIChvbGRfbWFzaywgdW5ibG9ja2VkKSkKKyAgICAgICAgIiIiCisgICAgICAgIGFzc2VydF9weXRob25fb2soJy1jJywgY29kZSkKKworICAgIEB1bml0dGVzdC5za2lwSWYoc3lzLnBsYXRmb3JtID09ICdmcmVlYnNkNicsCisgICAgICAgICJpc3N1ZSAjMTIzOTI6IHNlbmQgYSBzaWduYWwgdG8gdGhlIG1haW4gdGhyZWFkIGRvZXNuJ3Qgd29yayAiCisgICAgICAgICJiZWZvcmUgdGhlIGNyZWF0aW9uIG9mIHRoZSBmaXJzdCB0aHJlYWQgb24gRnJlZUJTRCA2IikKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgJ3B0aHJlYWRfa2lsbCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHNpZ25hbC5wdGhyZWFkX2tpbGwoKScpCisgICAgZGVmIHRlc3RfcHRocmVhZF9raWxsX21haW5fdGhyZWFkKHNlbGYpOgorICAgICAgICAjIFRlc3QgdGhhdCBhIHNpZ25hbCBjYW4gYmUgc2VudCB0byB0aGUgbWFpbiB0aHJlYWQgd2l0aCBwdGhyZWFkX2tpbGwoKQorICAgICAgICAjIGJlZm9yZSBhbnkgb3RoZXIgdGhyZWFkIGhhcyBiZWVuIGNyZWF0ZWQgKHNlZSBpc3N1ZSAjMTIzOTIpLgorICAgICAgICBjb2RlID0gIiIiaWYgVHJ1ZToKKyAgICAgICAgICAgIGltcG9ydCB0aHJlYWRpbmcKKyAgICAgICAgICAgIGltcG9ydCBzaWduYWwKKyAgICAgICAgICAgIGltcG9ydCBzeXMKKworICAgICAgICAgICAgZGVmIGhhbmRsZXIoc2lnbnVtLCBmcmFtZSk6CisgICAgICAgICAgICAgICAgc3lzLmV4aXQoMykKKworICAgICAgICAgICAgc2lnbmFsLnNpZ25hbChzaWduYWwuU0lHVVNSMSwgaGFuZGxlcikKKyAgICAgICAgICAgIHNpZ25hbC5wdGhyZWFkX2tpbGwodGhyZWFkaW5nLmdldF9pZGVudCgpLCBzaWduYWwuU0lHVVNSMSkKKyAgICAgICAgICAgIHN5cy5leGl0KDIpCisgICAgICAgICIiIgorCisgICAgICAgIHdpdGggc3Bhd25fcHl0aG9uKCctYycsIGNvZGUpIGFzIHByb2Nlc3M6CisgICAgICAgICAgICBzdGRvdXQsIHN0ZGVyciA9IHByb2Nlc3MuY29tbXVuaWNhdGUoKQorICAgICAgICAgICAgZXhpdGNvZGUgPSBwcm9jZXNzLndhaXQoKQorICAgICAgICAgICAgaWYgZXhpdGNvZGUgIT0gMzoKKyAgICAgICAgICAgICAgICByYWlzZSBFeGNlcHRpb24oIkNoaWxkIGVycm9yIChleGl0IGNvZGUgJXMpOiAlcyIgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZXhpdGNvZGUsIHN0ZG91dCkpCisKKwogZGVmIHRlc3RfbWFpbigpOgogICAgIHRyeToKLSAgICAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoQmFzaWNTaWduYWxUZXN0cywgSW50ZXJQcm9jZXNzU2lnbmFsVGVzdHMsCisgICAgICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KFBvc2l4VGVzdHMsIEludGVyUHJvY2Vzc1NpZ25hbFRlc3RzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXYWtldXBTaWduYWxUZXN0cywgU2lnaW50ZXJydXB0VGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSXRpbWVyVGVzdCwgV2luZG93c1NpZ25hbFRlc3RzKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJdGltZXJUZXN0LCBXaW5kb3dzU2lnbmFsVGVzdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBlbmRpbmdTaWduYWxzVGVzdHMpCiAgICAgZmluYWxseToKICAgICAgICAgc3VwcG9ydC5yZWFwX2NoaWxkcmVuKCkKIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zbXRwZC5weSBiL0xpYi90ZXN0L3Rlc3Rfc210cGQucHkKaW5kZXggNjhjY2MyOS4uZGQyMzU2NSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9zbXRwZC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3NtdHBkLnB5CkBAIC0yMzksNDkgKzIzOSw0OSBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2hhbm5lbC5zb2NrZXQubGFzdCwgYic1MDEgU3ludGF4OiBSU0VUXHJcbicpCiAKICAgICBkZWYgdGVzdF9hdHRyaWJ1dGVfZGVwcmVjYXRpb25zKHNlbGYpOgotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc3BhbSA9IHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX3NlcnZlcgotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fc2VydmVyID0gJ3NwYW0nCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzcGFtID0gc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fbGluZQotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fbGluZSA9ICdzcGFtJwotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc3BhbSA9IHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX3N0YXRlCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19zdGF0ZSA9ICdzcGFtJwotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc3BhbSA9IHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX2dyZWV0aW5nCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19ncmVldGluZyA9ICdzcGFtJwotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc3BhbSA9IHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX21haWxmcm9tCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19tYWlsZnJvbSA9ICdzcGFtJwotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc3BhbSA9IHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX3JjcHR0b3MKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX3JjcHR0b3MgPSAnc3BhbScKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNwYW0gPSBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19kYXRhCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19kYXRhID0gJ3NwYW0nCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzcGFtID0gc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fZnFkbgotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fZnFkbiA9ICdzcGFtJwotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc3BhbSA9IHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX3BlZXIKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNlbGYuY2hhbm5lbC5fU01UUENoYW5uZWxfX3BlZXIgPSAnc3BhbScKLSAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBEZXByZWNhdGlvbldhcm5pbmcpKToKICAgICAgICAgICAgIHNwYW0gPSBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19jb25uCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzZWxmLmNoYW5uZWwuX1NNVFBDaGFubmVsX19jb25uID0gJ3NwYW0nCi0gICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcpKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCgnJywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzcGFtID0gc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fYWRkcgotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcnLCBQZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nKSk6CisgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygoJycsIERlcHJlY2F0aW9uV2FybmluZykpOgogICAgICAgICAgICAgc2VsZi5jaGFubmVsLl9TTVRQQ2hhbm5lbF9fYWRkciA9ICdzcGFtJwogCiBkZWYgdGVzdF9tYWluKCk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3NtdHBsaWIucHkgYi9MaWIvdGVzdC90ZXN0X3NtdHBsaWIucHkKaW5kZXggMmNiMGQxYS4uMDVkOTdlZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9zbXRwbGliLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc210cGxpYi5weQpAQCAtNzIsNiArNzIsMTQgQEAKICAgICAgICAgc210cCA9IHNtdHBsaWIuU01UUChIT1NULCBzZWxmLnBvcnQpCiAgICAgICAgIHNtdHAuY2xvc2UoKQogCisgICAgZGVmIHRlc3RTb3VyY2VBZGRyZXNzKHNlbGYpOgorICAgICAgICBtb2NrX3NvY2tldC5yZXBseV93aXRoKGIiMjIwIEhvbGEgbXVuZG8iKQorICAgICAgICAjIGNvbm5lY3RzCisgICAgICAgIHNtdHAgPSBzbXRwbGliLlNNVFAoSE9TVCwgc2VsZi5wb3J0LAorICAgICAgICAgICAgICAgIHNvdXJjZV9hZGRyZXNzPSgnMTI3LjAuMC4xJywxOTg3NikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc210cC5zb3VyY2VfYWRkcmVzcywgKCcxMjcuMC4wLjEnLCAxOTg3NikpCisgICAgICAgIHNtdHAuY2xvc2UoKQorCiAgICAgZGVmIHRlc3RCYXNpYzIoc2VsZik6CiAgICAgICAgIG1vY2tfc29ja2V0LnJlcGx5X3dpdGgoYiIyMjAgSG9sYSBtdW5kbyIpCiAgICAgICAgICMgY29ubmVjdHMsIGluY2x1ZGUgcG9ydCBpbiBob3N0IG5hbWUKQEAgLTIwNCw2ICsyMTIsMjAgQEAKICAgICAgICAgc210cCA9IHNtdHBsaWIuU01UUChIT1NULCBzZWxmLnBvcnQsIGxvY2FsX2hvc3RuYW1lPSdsb2NhbGhvc3QnLCB0aW1lb3V0PTMpCiAgICAgICAgIHNtdHAucXVpdCgpCiAKKyAgICBkZWYgdGVzdFNvdXJjZUFkZHJlc3Moc2VsZik6CisgICAgICAgICMgY29ubmVjdAorICAgICAgICBwb3J0ID0gc3VwcG9ydC5maW5kX3VudXNlZF9wb3J0KCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc210cCA9IHNtdHBsaWIuU01UUChIT1NULCBzZWxmLnBvcnQsIGxvY2FsX2hvc3RuYW1lPSdsb2NhbGhvc3QnLAorICAgICAgICAgICAgICAgICAgICB0aW1lb3V0PTMsIHNvdXJjZV9hZGRyZXNzPSgnMTI3LjAuMC4xJywgcG9ydCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNtdHAuc291cmNlX2FkZHJlc3MsICgnMTI3LjAuMC4xJywgcG9ydCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNtdHAubG9jYWxfaG9zdG5hbWUsICdsb2NhbGhvc3QnKQorICAgICAgICAgICAgc210cC5xdWl0KCkKKyAgICAgICAgZXhjZXB0IElPRXJyb3IgYXMgZToKKyAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gZXJybm8uRUFERFJJTlVTRToKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJjb3VsZG4ndCBiaW5kIHRvIHBvcnQgJWQiICUgcG9ydCkKKyAgICAgICAgICAgIHJhaXNlCisKICAgICBkZWYgdGVzdE5PT1Aoc2VsZik6CiAgICAgICAgIHNtdHAgPSBzbXRwbGliLlNNVFAoSE9TVCwgc2VsZi5wb3J0LCBsb2NhbF9ob3N0bmFtZT0nbG9jYWxob3N0JywgdGltZW91dD0zKQogICAgICAgICBleHBlY3RlZCA9ICgyNTAsIGInT2snKQpAQCAtNTYwLDYgKzU4Miw5IEBACiAjIFNpbXVsYXRlZCBTTVRQIGNoYW5uZWwgJiBzZXJ2ZXIKIGNsYXNzIFNpbVNNVFBDaGFubmVsKHNtdHBkLlNNVFBDaGFubmVsKToKIAorICAgICMgRm9yIHRlc3RpbmcgZmFpbHVyZXMgaW4gUVVJVCB3aGVuIHVzaW5nIHRoZSBjb250ZXh0IG1hbmFnZXIgQVBJLgorICAgIHF1aXRfcmVzcG9uc2UgPSBOb25lCisKICAgICBkZWYgX19pbml0X18oc2VsZiwgZXh0cmFfZmVhdHVyZXMsICphcmdzLCAqKmt3KToKICAgICAgICAgc2VsZi5fZXh0cmFmZWF0dXJlcyA9ICcnLmpvaW4oCiAgICAgICAgICAgICBbICIyNTAtezB9XHJcbiIuZm9ybWF0KHgpIGZvciB4IGluIGV4dHJhX2ZlYXR1cmVzIF0pCkBAIC02MTAsMTkgKzYzNSwzMSBAQAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgc2VsZi5wdXNoKCc1NTAgTm8gYWNjZXNzIGZvciB5b3UhJykKIAorICAgIGRlZiBzbXRwX1FVSVQoc2VsZiwgYXJnKToKKyAgICAgICAgIyBhcmdzIGlzIGlnbm9yZWQKKyAgICAgICAgaWYgc2VsZi5xdWl0X3Jlc3BvbnNlIGlzIE5vbmU6CisgICAgICAgICAgICBzdXBlcihTaW1TTVRQQ2hhbm5lbCwgc2VsZikuc210cF9RVUlUKGFyZykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHNlbGYucHVzaChzZWxmLnF1aXRfcmVzcG9uc2UpCisgICAgICAgICAgICBzZWxmLmNsb3NlX3doZW5fZG9uZSgpCisKICAgICBkZWYgaGFuZGxlX2Vycm9yKHNlbGYpOgogICAgICAgICByYWlzZQogCiAKIGNsYXNzIFNpbVNNVFBTZXJ2ZXIoc210cGQuU01UUFNlcnZlcik6CiAKKyAgICAjIEZvciB0ZXN0aW5nIGZhaWx1cmVzIGluIFFVSVQgd2hlbiB1c2luZyB0aGUgY29udGV4dCBtYW5hZ2VyIEFQSS4KKyAgICBxdWl0X3Jlc3BvbnNlID0gTm9uZQorCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsICphcmdzLCAqKmt3KToKICAgICAgICAgc2VsZi5fZXh0cmFfZmVhdHVyZXMgPSBbXQogICAgICAgICBzbXRwZC5TTVRQU2VydmVyLl9faW5pdF9fKHNlbGYsICphcmdzLCAqKmt3KQogCiAgICAgZGVmIGhhbmRsZV9hY2NlcHRlZChzZWxmLCBjb25uLCBhZGRyKToKLSAgICAgICAgc2VsZi5fU01UUGNoYW5uZWwgPSBTaW1TTVRQQ2hhbm5lbChzZWxmLl9leHRyYV9mZWF0dXJlcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLCBjb25uLCBhZGRyKQorICAgICAgICBzZWxmLl9TTVRQY2hhbm5lbCA9IFNpbVNNVFBDaGFubmVsKAorICAgICAgICAgICAgc2VsZi5fZXh0cmFfZmVhdHVyZXMsIHNlbGYsIGNvbm4sIGFkZHIpCisgICAgICAgIHNlbGYuX1NNVFBjaGFubmVsLnF1aXRfcmVzcG9uc2UgPSBzZWxmLnF1aXRfcmVzcG9uc2UKIAogICAgIGRlZiBwcm9jZXNzX21lc3NhZ2Uoc2VsZiwgcGVlciwgbWFpbGZyb20sIHJjcHR0b3MsIGRhdGEpOgogICAgICAgICBwYXNzCkBAIC03NTIsNiArNzg5LDI1IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEluKHNpbV9hdXRoX2NyZWRlbnRpYWxzWydjcmFtLW1kNSddLCBzdHIoZXJyKSkKICAgICAgICAgc210cC5jbG9zZSgpCiAKKyAgICBkZWYgdGVzdF93aXRoX3N0YXRlbWVudChzZWxmKToKKyAgICAgICAgd2l0aCBzbXRwbGliLlNNVFAoSE9TVCwgc2VsZi5wb3J0KSBhcyBzbXRwOgorICAgICAgICAgICAgY29kZSwgbWVzc2FnZSA9IHNtdHAubm9vcCgpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNvZGUsIDI1MCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc210cGxpYi5TTVRQU2VydmVyRGlzY29ubmVjdGVkLCBzbXRwLnNlbmQsIGInZm9vJykKKyAgICAgICAgd2l0aCBzbXRwbGliLlNNVFAoSE9TVCwgc2VsZi5wb3J0KSBhcyBzbXRwOgorICAgICAgICAgICAgc210cC5jbG9zZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHNtdHBsaWIuU01UUFNlcnZlckRpc2Nvbm5lY3RlZCwgc210cC5zZW5kLCBiJ2ZvbycpCisKKyAgICBkZWYgdGVzdF93aXRoX3N0YXRlbWVudF9RVUlUX2ZhaWx1cmUoc2VsZik6CisgICAgICAgIHNlbGYuc2Vydi5xdWl0X3Jlc3BvbnNlID0gJzQyMSBRVUlUIEZBSUxFRCcKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhzbXRwbGliLlNNVFBSZXNwb25zZUV4Y2VwdGlvbikgYXMgZXJyb3I6CisgICAgICAgICAgICB3aXRoIHNtdHBsaWIuU01UUChIT1NULCBzZWxmLnBvcnQpIGFzIHNtdHA6CisgICAgICAgICAgICAgICAgc210cC5ub29wKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChlcnJvci5leGNlcHRpb24uc210cF9jb2RlLCA0MjEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXJyb3IuZXhjZXB0aW9uLnNtdHBfZXJyb3IsIGInUVVJVCBGQUlMRUQnKQorICAgICAgICAjIFdlIGRvbid0IG5lZWQgdG8gY2xlYW4gdXAgc2VsZi5zZXJ2LnF1aXRfcmVzcG9uc2UgYmVjYXVzZSBhIG5ldworICAgICAgICAjIHNlcnZlciBpcyBhbHdheXMgaW5zdGFudGlhdGVkIGluIHRoZSBzZXRVcCgpLgorCiAgICAgI1RPRE86IGFkZCB0ZXN0cyBmb3IgY29ycmVjdCBBVVRIIG1ldGhvZCBmYWxsYmFjayBub3cgdGhhdCB0aGUKICAgICAjdGVzdCBpbmZyYXN0cnVjdHVyZSBjYW4gc3VwcG9ydCBpdC4KIApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zbXRwbmV0LnB5IGIvTGliL3Rlc3QvdGVzdF9zbXRwbmV0LnB5CmluZGV4IDAxOThhYjYuLjg2MjI0ZWYgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc210cG5ldC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3NtdHBuZXQucHkKQEAgLTQsMjggKzQsNjAgQEAKIGZyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAogaW1wb3J0IHNtdHBsaWIKIAorc3NsID0gc3VwcG9ydC5pbXBvcnRfbW9kdWxlKCJzc2wiKQorCiBzdXBwb3J0LnJlcXVpcmVzKCJuZXR3b3JrIikKIAorCitjbGFzcyBTbXRwVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgdGVzdFNlcnZlciA9ICdzbXRwLmdtYWlsLmNvbScKKyAgICByZW1vdGVQb3J0ID0gMjUKKyAgICBjb250ZXh0ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1NTTHYyMykKKworICAgIGRlZiB0ZXN0X2Nvbm5lY3Rfc3RhcnR0bHMoc2VsZik6CisgICAgICAgIHN1cHBvcnQuZ2V0X2F0dHJpYnV0ZShzbXRwbGliLCAnU01UUF9TU0wnKQorICAgICAgICB3aXRoIHN1cHBvcnQudHJhbnNpZW50X2ludGVybmV0KHNlbGYudGVzdFNlcnZlcik6CisgICAgICAgICAgICBzZXJ2ZXIgPSBzbXRwbGliLlNNVFAoc2VsZi50ZXN0U2VydmVyLCBzZWxmLnJlbW90ZVBvcnQpCisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAgc2VydmVyLnN0YXJ0dGxzKGNvbnRleHQ9c2VsZi5jb250ZXh0KQorICAgICAgICAgICAgZXhjZXB0IHNtdHBsaWIuU01UUEV4Y2VwdGlvbiBhcyBlOgorICAgICAgICAgICAgICAgIGlmIGUuYXJnc1swXSA9PSAnU1RBUlRUTFMgZXh0ZW5zaW9uIG5vdCBzdXBwb3J0ZWQgYnkgc2VydmVyLic6CisgICAgICAgICAgICAgICAgICAgIHVuaXR0ZXN0LnNraXAoZS5hcmdzWzBdKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICBzZXJ2ZXIuZWhsbygpCisgICAgICAgICAgICBzZXJ2ZXIucXVpdCgpCisKKwogY2xhc3MgU210cFNTTFRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogICAgIHRlc3RTZXJ2ZXIgPSAnc210cC5nbWFpbC5jb20nCiAgICAgcmVtb3RlUG9ydCA9IDQ2NQorICAgIGNvbnRleHQgPSBzc2wuU1NMQ29udGV4dChzc2wuUFJPVE9DT0xfU1NMdjIzKQogCiAgICAgZGVmIHRlc3RfY29ubmVjdChzZWxmKToKICAgICAgICAgc3VwcG9ydC5nZXRfYXR0cmlidXRlKHNtdHBsaWIsICdTTVRQX1NTTCcpCiAgICAgICAgIHdpdGggc3VwcG9ydC50cmFuc2llbnRfaW50ZXJuZXQoc2VsZi50ZXN0U2VydmVyKToKICAgICAgICAgICAgIHNlcnZlciA9IHNtdHBsaWIuU01UUF9TU0woc2VsZi50ZXN0U2VydmVyLCBzZWxmLnJlbW90ZVBvcnQpCi0gICAgICAgIHNlcnZlci5laGxvKCkKLSAgICAgICAgc2VydmVyLnF1aXQoKQorICAgICAgICAgICAgc2VydmVyLmVobG8oKQorICAgICAgICAgICAgc2VydmVyLnF1aXQoKQogCiAgICAgZGVmIHRlc3RfY29ubmVjdF9kZWZhdWx0X3BvcnQoc2VsZik6CiAgICAgICAgIHN1cHBvcnQuZ2V0X2F0dHJpYnV0ZShzbXRwbGliLCAnU01UUF9TU0wnKQogICAgICAgICB3aXRoIHN1cHBvcnQudHJhbnNpZW50X2ludGVybmV0KHNlbGYudGVzdFNlcnZlcik6CiAgICAgICAgICAgICBzZXJ2ZXIgPSBzbXRwbGliLlNNVFBfU1NMKHNlbGYudGVzdFNlcnZlcikKLSAgICAgICAgc2VydmVyLmVobG8oKQotICAgICAgICBzZXJ2ZXIucXVpdCgpCisgICAgICAgICAgICBzZXJ2ZXIuZWhsbygpCisgICAgICAgICAgICBzZXJ2ZXIucXVpdCgpCisKKyAgICBkZWYgdGVzdF9jb25uZWN0X3VzaW5nX3NzbGNvbnRleHQoc2VsZik6CisgICAgICAgIHN1cHBvcnQuZ2V0X2F0dHJpYnV0ZShzbXRwbGliLCAnU01UUF9TU0wnKQorICAgICAgICB3aXRoIHN1cHBvcnQudHJhbnNpZW50X2ludGVybmV0KHNlbGYudGVzdFNlcnZlcik6CisgICAgICAgICAgICBzZXJ2ZXIgPSBzbXRwbGliLlNNVFBfU1NMKHNlbGYudGVzdFNlcnZlciwgc2VsZi5yZW1vdGVQb3J0LCBjb250ZXh0PXNlbGYuY29udGV4dCkKKyAgICAgICAgICAgIHNlcnZlci5laGxvKCkKKyAgICAgICAgICAgIHNlcnZlci5xdWl0KCkKKwogCiBkZWYgdGVzdF9tYWluKCk6Ci0gICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoU210cFNTTFRlc3QpCisgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoU210cFRlc3QsIFNtdHBTU0xUZXN0KQogCiBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgogICAgIHRlc3RfbWFpbigpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3NvY2tldC5weSBiL0xpYi90ZXN0L3Rlc3Rfc29ja2V0LnB5CmluZGV4IGQ3N2I3ZGMuLmVkZTEwMzggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc29ja2V0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc29ja2V0LnB5CkBAIC03LDYgKzcsOCBAQAogaW1wb3J0IGlvCiBpbXBvcnQgc29ja2V0CiBpbXBvcnQgc2VsZWN0CitpbXBvcnQgdGVtcGZpbGUKK2ltcG9ydCBfdGVzdGNhcGkKIGltcG9ydCB0aW1lCiBpbXBvcnQgdHJhY2ViYWNrCiBpbXBvcnQgcXVldWUKQEAgLTE4LDM0ICsyMCwxNSBAQAogZnJvbSB3ZWFrcmVmIGltcG9ydCBwcm94eQogaW1wb3J0IHNpZ25hbAogaW1wb3J0IG1hdGgKK2ltcG9ydCBwaWNrbGUKK2ltcG9ydCBzdHJ1Y3QKIHRyeToKICAgICBpbXBvcnQgZmNudGwKIGV4Y2VwdCBJbXBvcnRFcnJvcjoKICAgICBmY250bCA9IEZhbHNlCiAKLWRlZiB0cnlfYWRkcmVzcyhob3N0LCBwb3J0PTAsIGZhbWlseT1zb2NrZXQuQUZfSU5FVCk6Ci0gICAgIiIiVHJ5IHRvIGJpbmQgYSBzb2NrZXQgb24gdGhlIGdpdmVuIGhvc3Q6cG9ydCBhbmQgcmV0dXJuIFRydWUKLSAgICBpZiB0aGF0IGhhcyBiZWVuIHBvc3NpYmxlLiIiIgotICAgIHRyeToKLSAgICAgICAgc29jayA9IHNvY2tldC5zb2NrZXQoZmFtaWx5LCBzb2NrZXQuU09DS19TVFJFQU0pCi0gICAgICAgIHNvY2suYmluZCgoaG9zdCwgcG9ydCkpCi0gICAgZXhjZXB0IChzb2NrZXQuZXJyb3IsIHNvY2tldC5nYWllcnJvcik6Ci0gICAgICAgIHJldHVybiBGYWxzZQotICAgIGVsc2U6Ci0gICAgICAgIHNvY2suY2xvc2UoKQotICAgICAgICByZXR1cm4gVHJ1ZQotCi1kZWYgbGludXhfdmVyc2lvbigpOgotICAgIHRyeToKLSAgICAgICAgIyBwbGF0Zm9ybS5yZWxlYXNlKCkgaXMgc29tZXRoaW5nIGxpa2UgJzIuNi4zMy43LWRlc2t0b3AtMm1uYicKLSAgICAgICAgdmVyc2lvbl9zdHJpbmcgPSBwbGF0Zm9ybS5yZWxlYXNlKCkuc3BsaXQoJy0nKVswXQotICAgICAgICByZXR1cm4gdHVwbGUobWFwKGludCwgdmVyc2lvbl9zdHJpbmcuc3BsaXQoJy4nKSkpCi0gICAgZXhjZXB0IFZhbHVlRXJyb3I6Ci0gICAgICAgIHJldHVybiAwLCAwLCAwCi0KIEhPU1QgPSBzdXBwb3J0LkhPU1QKLU1TRyA9ICdNaWNoYWVsIEdpbGZpeCB3YXMgaGVyZVx1MTIzNFxyXG4nLmVuY29kZSgndXRmOCcpICMjIHRlc3QgdW5pY29kZSBzdHJpbmcgYW5kIGNhcnJpYWdlIHJldHVybgotU1VQUE9SVFNfSVBWNiA9IHNvY2tldC5oYXNfaXB2NiBhbmQgdHJ5X2FkZHJlc3MoJzo6MScsIGZhbWlseT1zb2NrZXQuQUZfSU5FVDYpCitNU0cgPSAnTWljaGFlbCBHaWxmaXggd2FzIGhlcmVcdTEyMzRcclxuJy5lbmNvZGUoJ3V0Zi04JykgIyMgdGVzdCB1bmljb2RlIHN0cmluZyBhbmQgY2FycmlhZ2UgcmV0dXJuCiAKIHRyeToKICAgICBpbXBvcnQgX3RocmVhZCBhcyB0aHJlYWQKQEAgLTU0LDYgKzM3LDMzIEBACiAgICAgdGhyZWFkID0gTm9uZQogICAgIHRocmVhZGluZyA9IE5vbmUKIAorZGVmIF9oYXZlX3NvY2tldF9jYW4oKToKKyAgICAiIiJDaGVjayB3aGV0aGVyIENBTiBzb2NrZXRzIGFyZSBzdXBwb3J0ZWQgb24gdGhpcyBob3N0LiIiIgorICAgIHRyeToKKyAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoc29ja2V0LlBGX0NBTiwgc29ja2V0LlNPQ0tfUkFXLCBzb2NrZXQuQ0FOX1JBVykKKyAgICBleGNlcHQgKEF0dHJpYnV0ZUVycm9yLCBzb2NrZXQuZXJyb3IsIE9TRXJyb3IpOgorICAgICAgICByZXR1cm4gRmFsc2UKKyAgICBlbHNlOgorICAgICAgICBzLmNsb3NlKCkKKyAgICByZXR1cm4gVHJ1ZQorCitkZWYgX2hhdmVfc29ja2V0X3JkcygpOgorICAgICIiIkNoZWNrIHdoZXRoZXIgUkRTIHNvY2tldHMgYXJlIHN1cHBvcnRlZCBvbiB0aGlzIGhvc3QuIiIiCisgICAgdHJ5OgorICAgICAgICBzID0gc29ja2V0LnNvY2tldChzb2NrZXQuUEZfUkRTLCBzb2NrZXQuU09DS19TRVFQQUNLRVQsIDApCisgICAgZXhjZXB0IChBdHRyaWJ1dGVFcnJvciwgT1NFcnJvcik6CisgICAgICAgIHJldHVybiBGYWxzZQorICAgIGVsc2U6CisgICAgICAgIHMuY2xvc2UoKQorICAgIHJldHVybiBUcnVlCisKK0hBVkVfU09DS0VUX0NBTiA9IF9oYXZlX3NvY2tldF9jYW4oKQorCitIQVZFX1NPQ0tFVF9SRFMgPSBfaGF2ZV9zb2NrZXRfcmRzKCkKKworIyBTaXplIGluIGJ5dGVzIG9mIHRoZSBpbnQgdHlwZQorU0laRU9GX0lOVCA9IGFycmF5LmFycmF5KCJpIikuaXRlbXNpemUKKwogY2xhc3MgU29ja2V0VENQVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKICAgICBkZWYgc2V0VXAoc2VsZik6CkBAIC03NSw2ICs4NSw2MyBAQAogICAgICAgICBzZWxmLnNlcnYuY2xvc2UoKQogICAgICAgICBzZWxmLnNlcnYgPSBOb25lCiAKK2NsYXNzIFRocmVhZFNhZmVDbGVhbnVwVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorICAgICIiIlN1YmNsYXNzIG9mIHVuaXR0ZXN0LlRlc3RDYXNlIHdpdGggdGhyZWFkLXNhZmUgY2xlYW51cCBtZXRob2RzLgorCisgICAgVGhpcyBzdWJjbGFzcyBwcm90ZWN0cyB0aGUgYWRkQ2xlYW51cCgpIGFuZCBkb0NsZWFudXBzKCkgbWV0aG9kcworICAgIHdpdGggYSByZWN1cnNpdmUgbG9jay4KKyAgICAiIiIKKworICAgIGlmIHRocmVhZGluZzoKKyAgICAgICAgZGVmIF9faW5pdF9fKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICAgICBzdXBlcigpLl9faW5pdF9fKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgICAgIHNlbGYuX2NsZWFudXBfbG9jayA9IHRocmVhZGluZy5STG9jaygpCisKKyAgICAgICAgZGVmIGFkZENsZWFudXAoc2VsZiwgKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgICAgIHdpdGggc2VsZi5fY2xlYW51cF9sb2NrOgorICAgICAgICAgICAgICAgIHJldHVybiBzdXBlcigpLmFkZENsZWFudXAoKmFyZ3MsICoqa3dhcmdzKQorCisgICAgICAgIGRlZiBkb0NsZWFudXBzKHNlbGYsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICAgICB3aXRoIHNlbGYuX2NsZWFudXBfbG9jazoKKyAgICAgICAgICAgICAgICByZXR1cm4gc3VwZXIoKS5kb0NsZWFudXBzKCphcmdzLCAqKmt3YXJncykKKworY2xhc3MgU29ja2V0Q0FOVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICAiIiJUbyBiZSBhYmxlIHRvIHJ1biB0aGlzIHRlc3QsIGEgYHZjYW4wYCBDQU4gaW50ZXJmYWNlIGNhbiBiZSBjcmVhdGVkIHdpdGgKKyAgICB0aGUgZm9sbG93aW5nIGNvbW1hbmRzOgorICAgICMgbW9kcHJvYmUgdmNhbgorICAgICMgaXAgbGluayBhZGQgZGV2IHZjYW4wIHR5cGUgdmNhbgorICAgICMgaWZjb25maWcgdmNhbjAgdXAKKyAgICAiIiIKKyAgICBpbnRlcmZhY2UgPSAndmNhbjAnCisgICAgYnVmc2l6ZSA9IDEyOAorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLnMgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5QRl9DQU4sIHNvY2tldC5TT0NLX1JBVywgc29ja2V0LkNBTl9SQVcpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLnMuY2xvc2UpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYucy5iaW5kKChzZWxmLmludGVyZmFjZSwpKQorICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgnbmV0d29yayBpbnRlcmZhY2UgYCVzYCBkb2VzIG5vdCBleGlzdCcgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbnRlcmZhY2UpCisKKworY2xhc3MgU29ja2V0UkRTVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICAiIiJUbyBiZSBhYmxlIHRvIHJ1biB0aGlzIHRlc3QsIHRoZSBgcmRzYCBrZXJuZWwgbW9kdWxlIG11c3QgYmUgbG9hZGVkOgorICAgICMgbW9kcHJvYmUgcmRzCisgICAgIiIiCisgICAgYnVmc2l6ZSA9IDgxOTIKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5zZXJ2ID0gc29ja2V0LnNvY2tldChzb2NrZXQuUEZfUkRTLCBzb2NrZXQuU09DS19TRVFQQUNLRVQsIDApCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLnNlcnYuY2xvc2UpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYucG9ydCA9IHN1cHBvcnQuYmluZF9wb3J0KHNlbGYuc2VydikKKyAgICAgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCd1bmFibGUgdG8gYmluZCBSRFMgc29ja2V0JykKKworCiBjbGFzcyBUaHJlYWRhYmxlVGVzdDoKICAgICAiIiJUaHJlYWRhYmxlIFRlc3QgY2xhc3MKIApAQCAtMTMyLDYgKzE5OSw3IEBACiAgICAgICAgIHNlbGYuY2xpZW50X3JlYWR5ID0gdGhyZWFkaW5nLkV2ZW50KCkKICAgICAgICAgc2VsZi5kb25lID0gdGhyZWFkaW5nLkV2ZW50KCkKICAgICAgICAgc2VsZi5xdWV1ZSA9IHF1ZXVlLlF1ZXVlKDEpCisgICAgICAgIHNlbGYuc2VydmVyX2NyYXNoZWQgPSBGYWxzZQogCiAgICAgICAgICMgRG8gc29tZSBtdW5naW5nIHRvIHN0YXJ0IHRoZSBjbGllbnQgdGVzdC4KICAgICAgICAgbWV0aG9kbmFtZSA9IHNlbGYuaWQoKQpAQCAtMTQxLDggKzIwOSwxMiBAQAogICAgICAgICBzZWxmLmNsaWVudF90aHJlYWQgPSB0aHJlYWQuc3RhcnRfbmV3X3RocmVhZCgKICAgICAgICAgICAgIHNlbGYuY2xpZW50UnVuLCAodGVzdF9tZXRob2QsKSkKIAotICAgICAgICBzZWxmLl9fc2V0VXAoKQotICAgICAgICBpZiBub3Qgc2VsZi5zZXJ2ZXJfcmVhZHkuaXNfc2V0KCk6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuX19zZXRVcCgpCisgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgIHNlbGYuc2VydmVyX2NyYXNoZWQgPSBUcnVlCisgICAgICAgICAgICByYWlzZQorICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgc2VsZi5zZXJ2ZXJfcmVhZHkuc2V0KCkKICAgICAgICAgc2VsZi5jbGllbnRfcmVhZHkud2FpdCgpCiAKQEAgLTE1OCwxMCArMjMwLDE2IEBACiAgICAgICAgIHNlbGYuc2VydmVyX3JlYWR5LndhaXQoKQogICAgICAgICBzZWxmLmNsaWVudFNldFVwKCkKICAgICAgICAgc2VsZi5jbGllbnRfcmVhZHkuc2V0KCkKKyAgICAgICAgaWYgc2VsZi5zZXJ2ZXJfY3Jhc2hlZDoKKyAgICAgICAgICAgIHNlbGYuY2xpZW50VGVhckRvd24oKQorICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgIGlmIG5vdCBoYXNhdHRyKHRlc3RfZnVuYywgJ19fY2FsbF9fJyk6CiAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoInRlc3RfZnVuYyBtdXN0IGJlIGEgY2FsbGFibGUgZnVuY3Rpb24iKQogICAgICAgICB0cnk6CiAgICAgICAgICAgICB0ZXN0X2Z1bmMoKQorICAgICAgICBleGNlcHQgdW5pdHRlc3QuX0V4cGVjdGVkRmFpbHVyZToKKyAgICAgICAgICAgICMgV2UgZGVsaWJlcmF0ZWx5IGlnbm9yZSBleHBlY3RlZCBmYWlsdXJlcworICAgICAgICAgICAgcGFzcwogICAgICAgICBleGNlcHQgQmFzZUV4Y2VwdGlvbiBhcyBlOgogICAgICAgICAgICAgc2VsZi5xdWV1ZS5wdXQoZSkKICAgICAgICAgZmluYWxseToKQEAgLTIwMiw2ICsyODAsNDggQEAKICAgICAgICAgc2VsZi5jbGkgPSBOb25lCiAgICAgICAgIFRocmVhZGFibGVUZXN0LmNsaWVudFRlYXJEb3duKHNlbGYpCiAKK2NsYXNzIFRocmVhZGVkQ0FOU29ja2V0VGVzdChTb2NrZXRDQU5UZXN0LCBUaHJlYWRhYmxlVGVzdCk6CisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbWV0aG9kTmFtZT0ncnVuVGVzdCcpOgorICAgICAgICBTb2NrZXRDQU5UZXN0Ll9faW5pdF9fKHNlbGYsIG1ldGhvZE5hbWU9bWV0aG9kTmFtZSkKKyAgICAgICAgVGhyZWFkYWJsZVRlc3QuX19pbml0X18oc2VsZikKKworICAgIGRlZiBjbGllbnRTZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5jbGkgPSBzb2NrZXQuc29ja2V0KHNvY2tldC5QRl9DQU4sIHNvY2tldC5TT0NLX1JBVywgc29ja2V0LkNBTl9SQVcpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuY2xpLmJpbmQoKHNlbGYuaW50ZXJmYWNlLCkpCisgICAgICAgIGV4Y2VwdCBzb2NrZXQuZXJyb3I6CisgICAgICAgICAgICAjIHNraXBUZXN0IHNob3VsZCBub3QgYmUgY2FsbGVkIGhlcmUsIGFuZCB3aWxsIGJlIGNhbGxlZCBpbiB0aGUKKyAgICAgICAgICAgICMgc2VydmVyIGluc3RlYWQKKyAgICAgICAgICAgIHBhc3MKKworICAgIGRlZiBjbGllbnRUZWFyRG93bihzZWxmKToKKyAgICAgICAgc2VsZi5jbGkuY2xvc2UoKQorICAgICAgICBzZWxmLmNsaSA9IE5vbmUKKyAgICAgICAgVGhyZWFkYWJsZVRlc3QuY2xpZW50VGVhckRvd24oc2VsZikKKworY2xhc3MgVGhyZWFkZWRSRFNTb2NrZXRUZXN0KFNvY2tldFJEU1Rlc3QsIFRocmVhZGFibGVUZXN0KToKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCBtZXRob2ROYW1lPSdydW5UZXN0Jyk6CisgICAgICAgIFNvY2tldFJEU1Rlc3QuX19pbml0X18oc2VsZiwgbWV0aG9kTmFtZT1tZXRob2ROYW1lKQorICAgICAgICBUaHJlYWRhYmxlVGVzdC5fX2luaXRfXyhzZWxmKQorCisgICAgZGVmIGNsaWVudFNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLmNsaSA9IHNvY2tldC5zb2NrZXQoc29ja2V0LlBGX1JEUywgc29ja2V0LlNPQ0tfU0VRUEFDS0VULCAwKQorICAgICAgICB0cnk6CisgICAgICAgICAgICAjIFJEUyBzb2NrZXRzIG11c3QgYmUgYm91bmQgZXhwbGljaXRseSB0byBzZW5kIG9yIHJlY2VpdmUgZGF0YQorICAgICAgICAgICAgc2VsZi5jbGkuYmluZCgoSE9TVCwgMCkpCisgICAgICAgICAgICBzZWxmLmNsaV9hZGRyID0gc2VsZi5jbGkuZ2V0c29ja25hbWUoKQorICAgICAgICBleGNlcHQgT1NFcnJvcjoKKyAgICAgICAgICAgICMgc2tpcFRlc3Qgc2hvdWxkIG5vdCBiZSBjYWxsZWQgaGVyZSwgYW5kIHdpbGwgYmUgY2FsbGVkIGluIHRoZQorICAgICAgICAgICAgIyBzZXJ2ZXIgaW5zdGVhZAorICAgICAgICAgICAgcGFzcworCisgICAgZGVmIGNsaWVudFRlYXJEb3duKHNlbGYpOgorICAgICAgICBzZWxmLmNsaS5jbG9zZSgpCisgICAgICAgIHNlbGYuY2xpID0gTm9uZQorICAgICAgICBUaHJlYWRhYmxlVGVzdC5jbGllbnRUZWFyRG93bihzZWxmKQorCiBjbGFzcyBTb2NrZXRDb25uZWN0ZWRUZXN0KFRocmVhZGVkVENQU29ja2V0VGVzdCk6CiAgICAgIiIiU29ja2V0IHRlc3RzIGZvciBjbGllbnQtc2VydmVyIGNvbm5lY3Rpb24uCiAKQEAgLTI1Nyw2ICszNzcsMjQzIEBACiAgICAgICAgIFRocmVhZGFibGVUZXN0LmNsaWVudFRlYXJEb3duKHNlbGYpCiAKIAorIyBUaGUgZm9sbG93aW5nIGNsYXNzZXMgYXJlIHVzZWQgYnkgdGhlIHNlbmRtc2coKS9yZWN2bXNnKCkgdGVzdHMuCisjIENvbWJpbmluZywgZm9yIGluc3RhbmNlLCBDb25uZWN0ZWRTdHJlYW1UZXN0TWl4aW4gYW5kIFRDUFRlc3RCYXNlCisjIGdpdmVzIGEgZHJvcC1pbiByZXBsYWNlbWVudCBmb3IgU29ja2V0Q29ubmVjdGVkVGVzdCwgYnV0IGRpZmZlcmVudAorIyBhZGRyZXNzIGZhbWlsaWVzIGNhbiBiZSB1c2VkLCBhbmQgdGhlIGF0dHJpYnV0ZXMgc2Vydl9hZGRyIGFuZAorIyBjbGlfYWRkciB3aWxsIGJlIHNldCB0byB0aGUgYWRkcmVzc2VzIG9mIHRoZSBlbmRwb2ludHMuCisKK2NsYXNzIFNvY2tldFRlc3RCYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAiIiJBIGJhc2UgY2xhc3MgZm9yIHNvY2tldCB0ZXN0cy4KKworICAgIFN1YmNsYXNzZXMgbXVzdCBwcm92aWRlIG1ldGhvZHMgbmV3U29ja2V0KCkgdG8gcmV0dXJuIGEgbmV3IHNvY2tldAorICAgIGFuZCBiaW5kU29jayhzb2NrKSB0byBiaW5kIGl0IHRvIGFuIHVudXNlZCBhZGRyZXNzLgorCisgICAgQ3JlYXRlcyBhIHNvY2tldCBzZWxmLnNlcnYgYW5kIHNldHMgc2VsZi5zZXJ2X2FkZHIgdG8gaXRzIGFkZHJlc3MuCisgICAgIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuc2VydiA9IHNlbGYubmV3U29ja2V0KCkKKyAgICAgICAgc2VsZi5iaW5kU2VydmVyKCkKKworICAgIGRlZiBiaW5kU2VydmVyKHNlbGYpOgorICAgICAgICAiIiJCaW5kIHNlcnZlciBzb2NrZXQgYW5kIHNldCBzZWxmLnNlcnZfYWRkciB0byBpdHMgYWRkcmVzcy4iIiIKKyAgICAgICAgc2VsZi5iaW5kU29jayhzZWxmLnNlcnYpCisgICAgICAgIHNlbGYuc2Vydl9hZGRyID0gc2VsZi5zZXJ2LmdldHNvY2tuYW1lKCkKKworICAgIGRlZiB0ZWFyRG93bihzZWxmKToKKyAgICAgICAgc2VsZi5zZXJ2LmNsb3NlKCkKKyAgICAgICAgc2VsZi5zZXJ2ID0gTm9uZQorCisKK2NsYXNzIFNvY2tldExpc3RlbmluZ1Rlc3RNaXhpbihTb2NrZXRUZXN0QmFzZSk6CisgICAgIiIiTWl4aW4gdG8gbGlzdGVuIG9uIHRoZSBzZXJ2ZXIgc29ja2V0LiIiIgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcigpLnNldFVwKCkKKyAgICAgICAgc2VsZi5zZXJ2Lmxpc3RlbigxKQorCisKK2NsYXNzIFRocmVhZGVkU29ja2V0VGVzdE1peGluKFRocmVhZFNhZmVDbGVhbnVwVGVzdENhc2UsIFNvY2tldFRlc3RCYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhyZWFkYWJsZVRlc3QpOgorICAgICIiIk1peGluIHRvIGFkZCBjbGllbnQgc29ja2V0IGFuZCBhbGxvdyBjbGllbnQvc2VydmVyIHRlc3RzLgorCisgICAgQ2xpZW50IHNvY2tldCBpcyBzZWxmLmNsaSBhbmQgaXRzIGFkZHJlc3MgaXMgc2VsZi5jbGlfYWRkci4gIFNlZQorICAgIFRocmVhZGFibGVUZXN0IGZvciB1c2FnZSBpbmZvcm1hdGlvbi4KKyAgICAiIiIKKworICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICBzdXBlcigpLl9faW5pdF9fKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgVGhyZWFkYWJsZVRlc3QuX19pbml0X18oc2VsZikKKworICAgIGRlZiBjbGllbnRTZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5jbGkgPSBzZWxmLm5ld0NsaWVudFNvY2tldCgpCisgICAgICAgIHNlbGYuYmluZENsaWVudCgpCisKKyAgICBkZWYgbmV3Q2xpZW50U29ja2V0KHNlbGYpOgorICAgICAgICAiIiJSZXR1cm4gYSBuZXcgc29ja2V0IGZvciB1c2UgYXMgY2xpZW50LiIiIgorICAgICAgICByZXR1cm4gc2VsZi5uZXdTb2NrZXQoKQorCisgICAgZGVmIGJpbmRDbGllbnQoc2VsZik6CisgICAgICAgICIiIkJpbmQgY2xpZW50IHNvY2tldCBhbmQgc2V0IHNlbGYuY2xpX2FkZHIgdG8gaXRzIGFkZHJlc3MuIiIiCisgICAgICAgIHNlbGYuYmluZFNvY2soc2VsZi5jbGkpCisgICAgICAgIHNlbGYuY2xpX2FkZHIgPSBzZWxmLmNsaS5nZXRzb2NrbmFtZSgpCisKKyAgICBkZWYgY2xpZW50VGVhckRvd24oc2VsZik6CisgICAgICAgIHNlbGYuY2xpLmNsb3NlKCkKKyAgICAgICAgc2VsZi5jbGkgPSBOb25lCisgICAgICAgIFRocmVhZGFibGVUZXN0LmNsaWVudFRlYXJEb3duKHNlbGYpCisKKworY2xhc3MgQ29ubmVjdGVkU3RyZWFtVGVzdE1peGluKFNvY2tldExpc3RlbmluZ1Rlc3RNaXhpbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaHJlYWRlZFNvY2tldFRlc3RNaXhpbik6CisgICAgIiIiTWl4aW4gdG8gYWxsb3cgY2xpZW50L3NlcnZlciBzdHJlYW0gdGVzdHMgd2l0aCBjb25uZWN0ZWQgY2xpZW50LgorCisgICAgU2VydmVyJ3Mgc29ja2V0IHJlcHJlc2VudGluZyBjb25uZWN0aW9uIHRvIGNsaWVudCBpcyBzZWxmLmNsaV9jb25uCisgICAgYW5kIGNsaWVudCdzIGNvbm5lY3Rpb24gdG8gc2VydmVyIGlzIHNlbGYuc2Vydl9jb25uLiAgKEJhc2VkIG9uCisgICAgU29ja2V0Q29ubmVjdGVkVGVzdC4pCisgICAgIiIiCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKCkuc2V0VXAoKQorICAgICAgICAjIEluZGljYXRlIGV4cGxpY2l0bHkgd2UncmUgcmVhZHkgZm9yIHRoZSBjbGllbnQgdGhyZWFkIHRvCisgICAgICAgICMgcHJvY2VlZCBhbmQgdGhlbiBwZXJmb3JtIHRoZSBibG9ja2luZyBjYWxsIHRvIGFjY2VwdAorICAgICAgICBzZWxmLnNlcnZlckV4cGxpY2l0UmVhZHkoKQorICAgICAgICBjb25uLCBhZGRyID0gc2VsZi5zZXJ2LmFjY2VwdCgpCisgICAgICAgIHNlbGYuY2xpX2Nvbm4gPSBjb25uCisKKyAgICBkZWYgdGVhckRvd24oc2VsZik6CisgICAgICAgIHNlbGYuY2xpX2Nvbm4uY2xvc2UoKQorICAgICAgICBzZWxmLmNsaV9jb25uID0gTm9uZQorICAgICAgICBzdXBlcigpLnRlYXJEb3duKCkKKworICAgIGRlZiBjbGllbnRTZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoKS5jbGllbnRTZXRVcCgpCisgICAgICAgIHNlbGYuY2xpLmNvbm5lY3Qoc2VsZi5zZXJ2X2FkZHIpCisgICAgICAgIHNlbGYuc2Vydl9jb25uID0gc2VsZi5jbGkKKworICAgIGRlZiBjbGllbnRUZWFyRG93bihzZWxmKToKKyAgICAgICAgc2VsZi5zZXJ2X2Nvbm4uY2xvc2UoKQorICAgICAgICBzZWxmLnNlcnZfY29ubiA9IE5vbmUKKyAgICAgICAgc3VwZXIoKS5jbGllbnRUZWFyRG93bigpCisKKworY2xhc3MgVW5peFNvY2tldFRlc3RCYXNlKFNvY2tldFRlc3RCYXNlKToKKyAgICAiIiJCYXNlIGNsYXNzIGZvciBVbml4LWRvbWFpbiBzb2NrZXQgdGVzdHMuIiIiCisKKyAgICAjIFRoaXMgY2xhc3MgaXMgdXNlZCBmb3IgZmlsZSBkZXNjcmlwdG9yIHBhc3NpbmcgdGVzdHMsIHNvIHdlCisgICAgIyBjcmVhdGUgdGhlIHNvY2tldHMgaW4gYSBwcml2YXRlIGRpcmVjdG9yeSBzbyB0aGF0IG90aGVyIHVzZXJzCisgICAgIyBjYW4ndCBzZW5kIGFueXRoaW5nIHRoYXQgbWlnaHQgYmUgcHJvYmxlbWF0aWMgZm9yIGEgcHJpdmlsZWdlZAorICAgICMgdXNlciBydW5uaW5nIHRoZSB0ZXN0cy4KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5kaXJfcGF0aCA9IHRlbXBmaWxlLm1rZHRlbXAoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAob3Mucm1kaXIsIHNlbGYuZGlyX3BhdGgpCisgICAgICAgIHN1cGVyKCkuc2V0VXAoKQorCisgICAgZGVmIGJpbmRTb2NrKHNlbGYsIHNvY2spOgorICAgICAgICBwYXRoID0gdGVtcGZpbGUubWt0ZW1wKGRpcj1zZWxmLmRpcl9wYXRoKQorICAgICAgICBzb2NrLmJpbmQocGF0aCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN1cHBvcnQudW5saW5rLCBwYXRoKQorCitjbGFzcyBVbml4U3RyZWFtQmFzZShVbml4U29ja2V0VGVzdEJhc2UpOgorICAgICIiIkJhc2UgY2xhc3MgZm9yIFVuaXgtZG9tYWluIFNPQ0tfU1RSRUFNIHRlc3RzLiIiIgorCisgICAgZGVmIG5ld1NvY2tldChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX1VOSVgsIHNvY2tldC5TT0NLX1NUUkVBTSkKKworCitjbGFzcyBJbmV0VGVzdEJhc2UoU29ja2V0VGVzdEJhc2UpOgorICAgICIiIkJhc2UgY2xhc3MgZm9yIElQdjQgc29ja2V0IHRlc3RzLiIiIgorCisgICAgaG9zdCA9IEhPU1QKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoKS5zZXRVcCgpCisgICAgICAgIHNlbGYucG9ydCA9IHNlbGYuc2Vydl9hZGRyWzFdCisKKyAgICBkZWYgYmluZFNvY2soc2VsZiwgc29jayk6CisgICAgICAgIHN1cHBvcnQuYmluZF9wb3J0KHNvY2ssIGhvc3Q9c2VsZi5ob3N0KQorCitjbGFzcyBUQ1BUZXN0QmFzZShJbmV0VGVzdEJhc2UpOgorICAgICIiIkJhc2UgY2xhc3MgZm9yIFRDUC1vdmVyLUlQdjQgdGVzdHMuIiIiCisKKyAgICBkZWYgbmV3U29ja2V0KHNlbGYpOgorICAgICAgICByZXR1cm4gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNKQorCitjbGFzcyBVRFBUZXN0QmFzZShJbmV0VGVzdEJhc2UpOgorICAgICIiIkJhc2UgY2xhc3MgZm9yIFVEUC1vdmVyLUlQdjQgdGVzdHMuIiIiCisKKyAgICBkZWYgbmV3U29ja2V0KHNlbGYpOgorICAgICAgICByZXR1cm4gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfREdSQU0pCisKK2NsYXNzIFNDVFBTdHJlYW1CYXNlKEluZXRUZXN0QmFzZSk6CisgICAgIiIiQmFzZSBjbGFzcyBmb3IgU0NUUCB0ZXN0cyBpbiBvbmUtdG8tb25lIChTT0NLX1NUUkVBTSkgbW9kZS4iIiIKKworICAgIGRlZiBuZXdTb2NrZXQoc2VsZik6CisgICAgICAgIHJldHVybiBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULCBzb2NrZXQuU09DS19TVFJFQU0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5JUFBST1RPX1NDVFApCisKKworY2xhc3MgSW5ldDZUZXN0QmFzZShJbmV0VGVzdEJhc2UpOgorICAgICIiIkJhc2UgY2xhc3MgZm9yIElQdjYgc29ja2V0IHRlc3RzLiIiIgorCisgICAgIyBEb24ndCB1c2UgImxvY2FsaG9zdCIgaGVyZSAtIGl0IG1heSBub3QgaGF2ZSBhbiBJUHY2IGFkZHJlc3MKKyAgICAjIGFzc2lnbmVkIHRvIGl0IGJ5IGRlZmF1bHQgKGUuZy4gaW4gL2V0Yy9ob3N0cyksIGFuZCBpZiBzb21lb25lCisgICAgIyBoYXMgYXNzaWduZWQgaXQgYW4gSVB2NC1tYXBwZWQgYWRkcmVzcywgdGhlbiBpdCdzIHVubGlrZWx5IHRvCisgICAgIyB3b3JrIHdpdGggdGhlIGZ1bGwgSVB2NiBBUEkuCisgICAgaG9zdCA9ICI6OjEiCisKK2NsYXNzIFVEUDZUZXN0QmFzZShJbmV0NlRlc3RCYXNlKToKKyAgICAiIiJCYXNlIGNsYXNzIGZvciBVRFAtb3Zlci1JUHY2IHRlc3RzLiIiIgorCisgICAgZGVmIG5ld1NvY2tldChzZWxmKToKKyAgICAgICAgcmV0dXJuIHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQ2LCBzb2NrZXQuU09DS19ER1JBTSkKKworCisjIFRlc3Qtc2tpcHBpbmcgZGVjb3JhdG9ycyBmb3IgdXNlIHdpdGggVGhyZWFkYWJsZVRlc3QuCisKK2RlZiBza2lwV2l0aENsaWVudElmKGNvbmRpdGlvbiwgcmVhc29uKToKKyAgICAiIiJTa2lwIGRlY29yYXRlZCB0ZXN0IGlmIGNvbmRpdGlvbiBpcyB0cnVlLCBhZGQgY2xpZW50X3NraXAgZGVjb3JhdG9yLgorCisgICAgSWYgdGhlIGRlY29yYXRlZCBvYmplY3QgaXMgbm90IGEgY2xhc3MsIHNldHMgaXRzIGF0dHJpYnV0ZQorICAgICJjbGllbnRfc2tpcCIgdG8gYSBkZWNvcmF0b3Igd2hpY2ggd2lsbCByZXR1cm4gYW4gZW1wdHkgZnVuY3Rpb24KKyAgICBpZiB0aGUgdGVzdCBpcyB0byBiZSBza2lwcGVkLCBvciB0aGUgb3JpZ2luYWwgZnVuY3Rpb24gaWYgaXQgaXMKKyAgICBub3QuICBUaGlzIGNhbiBiZSB1c2VkIHRvIGF2b2lkIHJ1bm5pbmcgdGhlIGNsaWVudCBwYXJ0IG9mIGEKKyAgICBza2lwcGVkIHRlc3Qgd2hlbiB1c2luZyBUaHJlYWRhYmxlVGVzdC4KKyAgICAiIiIKKyAgICBkZWYgY2xpZW50X3Bhc3MoKmFyZ3MsICoqa3dhcmdzKToKKyAgICAgICAgcGFzcworICAgIGRlZiBza2lwZGVjKG9iaik6CisgICAgICAgIHJldHZhbCA9IHVuaXR0ZXN0LnNraXAocmVhc29uKShvYmopCisgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKG9iaiwgdHlwZSk6CisgICAgICAgICAgICByZXR2YWwuY2xpZW50X3NraXAgPSBsYW1iZGEgZjogY2xpZW50X3Bhc3MKKyAgICAgICAgcmV0dXJuIHJldHZhbAorICAgIGRlZiBub3NraXBkZWMob2JqKToKKyAgICAgICAgaWYgbm90IChpc2luc3RhbmNlKG9iaiwgdHlwZSkgb3IgaGFzYXR0cihvYmosICJjbGllbnRfc2tpcCIpKToKKyAgICAgICAgICAgIG9iai5jbGllbnRfc2tpcCA9IGxhbWJkYSBmOiBmCisgICAgICAgIHJldHVybiBvYmoKKyAgICByZXR1cm4gc2tpcGRlYyBpZiBjb25kaXRpb24gZWxzZSBub3NraXBkZWMKKworCitkZWYgcmVxdWlyZUF0dHJzKG9iaiwgKmF0dHJpYnV0ZXMpOgorICAgICIiIlNraXAgZGVjb3JhdGVkIHRlc3QgaWYgb2JqIGlzIG1pc3NpbmcgYW55IG9mIHRoZSBnaXZlbiBhdHRyaWJ1dGVzLgorCisgICAgU2V0cyBjbGllbnRfc2tpcCBhdHRyaWJ1dGUgYXMgc2tpcFdpdGhDbGllbnRJZigpIGRvZXMuCisgICAgIiIiCisgICAgbWlzc2luZyA9IFtuYW1lIGZvciBuYW1lIGluIGF0dHJpYnV0ZXMgaWYgbm90IGhhc2F0dHIob2JqLCBuYW1lKV0KKyAgICByZXR1cm4gc2tpcFdpdGhDbGllbnRJZigKKyAgICAgICAgbWlzc2luZywgImRvbid0IGhhdmUgIiArICIsICIuam9pbihuYW1lIGZvciBuYW1lIGluIG1pc3NpbmcpKQorCisKK2RlZiByZXF1aXJlU29ja2V0KCphcmdzKToKKyAgICAiIiJTa2lwIGRlY29yYXRlZCB0ZXN0IGlmIGEgc29ja2V0IGNhbm5vdCBiZSBjcmVhdGVkIHdpdGggZ2l2ZW4gYXJndW1lbnRzLgorCisgICAgV2hlbiBhbiBhcmd1bWVudCBpcyBnaXZlbiBhcyBhIHN0cmluZywgd2lsbCB1c2UgdGhlIHZhbHVlIG9mIHRoYXQKKyAgICBhdHRyaWJ1dGUgb2YgdGhlIHNvY2tldCBtb2R1bGUsIG9yIHNraXAgdGhlIHRlc3QgaWYgaXQgZG9lc24ndAorICAgIGV4aXN0LiAgU2V0cyBjbGllbnRfc2tpcCBhdHRyaWJ1dGUgYXMgc2tpcFdpdGhDbGllbnRJZigpIGRvZXMuCisgICAgIiIiCisgICAgZXJyID0gTm9uZQorICAgIG1pc3NpbmcgPSBbb2JqIGZvciBvYmogaW4gYXJncyBpZgorICAgICAgICAgICAgICAgaXNpbnN0YW5jZShvYmosIHN0cikgYW5kIG5vdCBoYXNhdHRyKHNvY2tldCwgb2JqKV0KKyAgICBpZiBtaXNzaW5nOgorICAgICAgICBlcnIgPSAiZG9uJ3QgaGF2ZSAiICsgIiwgIi5qb2luKG5hbWUgZm9yIG5hbWUgaW4gbWlzc2luZykKKyAgICBlbHNlOgorICAgICAgICBjYWxsYXJncyA9IFtnZXRhdHRyKHNvY2tldCwgb2JqKSBpZiBpc2luc3RhbmNlKG9iaiwgc3RyKSBlbHNlIG9iagorICAgICAgICAgICAgICAgICAgICBmb3Igb2JqIGluIGFyZ3NdCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHMgPSBzb2NrZXQuc29ja2V0KCpjYWxsYXJncykKKyAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBlOgorICAgICAgICAgICAgIyBYWFg6IGNoZWNrIGVycm5vPworICAgICAgICAgICAgZXJyID0gc3RyKGUpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBzLmNsb3NlKCkKKyAgICByZXR1cm4gc2tpcFdpdGhDbGllbnRJZigKKyAgICAgICAgZXJyIGlzIG5vdCBOb25lLAorICAgICAgICAiY2FuJ3QgY3JlYXRlIHNvY2tldCh7MH0pOiB7MX0iLmZvcm1hdCgKKyAgICAgICAgICAgICIsICIuam9pbihzdHIobykgZm9yIG8gaW4gYXJncyksIGVycikpCisKKwogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKICMjIEJlZ2luIFRlc3RzCiAKQEAgLTI4MiwxOCArNjM5LDEzIEBACiAKICAgICBkZWYgdGVzdFNvY2tldEVycm9yKHNlbGYpOgogICAgICAgICAjIFRlc3Rpbmcgc29ja2V0IG1vZHVsZSBleGNlcHRpb25zCi0gICAgICAgIGRlZiByYWlzZV9lcnJvcigqYXJncywgKiprd2FyZ3MpOgorICAgICAgICBtc2cgPSAiRXJyb3IgcmFpc2luZyBzb2NrZXQgZXhjZXB0aW9uICglcykuIgorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvciwgbXNnPW1zZyAlICdzb2NrZXQuZXJyb3InKToKICAgICAgICAgICAgIHJhaXNlIHNvY2tldC5lcnJvcgotICAgICAgICBkZWYgcmFpc2VfaGVycm9yKCphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yLCBtc2c9bXNnICUgJ3NvY2tldC5oZXJyb3InKToKICAgICAgICAgICAgIHJhaXNlIHNvY2tldC5oZXJyb3IKLSAgICAgICAgZGVmIHJhaXNlX2dhaWVycm9yKCphcmdzLCAqKmt3YXJncyk6CisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yLCBtc2c9bXNnICUgJ3NvY2tldC5nYWllcnJvcicpOgogICAgICAgICAgICAgcmFpc2Ugc29ja2V0LmdhaWVycm9yCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvciwgcmFpc2VfZXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXJyb3IgcmFpc2luZyBzb2NrZXQgZXhjZXB0aW9uLiIpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvciwgcmFpc2VfaGVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkVycm9yIHJhaXNpbmcgc29ja2V0IGV4Y2VwdGlvbi4iKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHJhaXNlX2dhaWVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkVycm9yIHJhaXNpbmcgc29ja2V0IGV4Y2VwdGlvbi4iKQogCiAgICAgZGVmIHRlc3RTZW5kdG9FcnJvcnMoc2VsZik6CiAgICAgICAgICMgVGVzdGluZyB0aGF0IHNlbmR0byBkb2Vucyd0IG1hc2tzIGZhaWx1cmVzLiBTZWUgIzEwMTY5LgpAQCAtMzY5LDYgKzcyMSw1MiBAQAogICAgICAgICBpZiBub3QgZnFobiBpbiBhbGxfaG9zdF9uYW1lczoKICAgICAgICAgICAgIHNlbGYuZmFpbCgiRXJyb3IgdGVzdGluZyBob3N0IHJlc29sdXRpb24gbWVjaGFuaXNtcy4gKGZxZG46ICVzLCBhbGw6ICVzKSIgJSAoZnFobiwgcmVwcihhbGxfaG9zdF9uYW1lcykpKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzb2NrZXQsICdzZXRob3N0bmFtZScpLCAidGVzdCBuZWVkcyBzb2NrZXQuc2V0aG9zdG5hbWUoKSIpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzb2NrZXQsICdnZXRob3N0bmFtZScpLCAidGVzdCBuZWVkcyBzb2NrZXQuZ2V0aG9zdG5hbWUoKSIpCisgICAgZGVmIHRlc3Rfc2V0aG9zdG5hbWUoc2VsZik6CisgICAgICAgIG9sZGhuID0gc29ja2V0LmdldGhvc3RuYW1lKCkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc29ja2V0LnNldGhvc3RuYW1lKCduZXcnKQorICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIGU6CisgICAgICAgICAgICBpZiBlLmVycm5vID09IGVycm5vLkVQRVJNOgorICAgICAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoInRlc3Qgc2hvdWxkIGJlIHJ1biBhcyByb290IikKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgIyBydW5uaW5nIHRlc3QgYXMgcm9vdCEKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc29ja2V0LmdldGhvc3RuYW1lKCksICduZXcnKQorICAgICAgICAgICAgIyBTaG91bGQgd29yayB3aXRoIGJ5dGVzIG9iamVjdHMgdG9vCisgICAgICAgICAgICBzb2NrZXQuc2V0aG9zdG5hbWUoYidiYXInKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzb2NrZXQuZ2V0aG9zdG5hbWUoKSwgJ2JhcicpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzb2NrZXQuc2V0aG9zdG5hbWUob2xkaG4pCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNvY2tldCwgJ2lmX25hbWVpbmRleCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICdzb2NrZXQuaWZfbmFtZWluZGV4KCkgbm90IGF2YWlsYWJsZS4nKQorICAgIGRlZiB0ZXN0SW50ZXJmYWNlTmFtZUluZGV4KHNlbGYpOgorICAgICAgICBpbnRlcmZhY2VzID0gc29ja2V0LmlmX25hbWVpbmRleCgpCisgICAgICAgIGZvciBpbmRleCwgbmFtZSBpbiBpbnRlcmZhY2VzOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGluZGV4LCBpbnQpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UobmFtZSwgc3RyKQorICAgICAgICAgICAgIyBpbnRlcmZhY2UgaW5kaWNlcyBhcmUgbm9uLXplcm8gaW50ZWdlcnMKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlcihpbmRleCwgMCkKKyAgICAgICAgICAgIF9pbmRleCA9IHNvY2tldC5pZl9uYW1ldG9pbmRleChuYW1lKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKF9pbmRleCwgaW50KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpbmRleCwgX2luZGV4KQorICAgICAgICAgICAgX25hbWUgPSBzb2NrZXQuaWZfaW5kZXh0b25hbWUoaW5kZXgpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoX25hbWUsIHN0cikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmFtZSwgX25hbWUpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNvY2tldCwgJ2lmX25hbWVpbmRleCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICdzb2NrZXQuaWZfbmFtZWluZGV4KCkgbm90IGF2YWlsYWJsZS4nKQorICAgIGRlZiB0ZXN0SW52YWxpZEludGVyZmFjZU5hbWVJbmRleChzZWxmKToKKyAgICAgICAgIyB0ZXN0IG5vbmV4aXN0ZW50IGludGVyZmFjZSBpbmRleC9uYW1lCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvciwgc29ja2V0LmlmX2luZGV4dG9uYW1lLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHNvY2tldC5pZl9uYW1ldG9pbmRleCwgJ19ERUFEQkVFRicpCisgICAgICAgICMgdGVzdCB3aXRoIGludmFsaWQgdmFsdWVzCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc29ja2V0LmlmX25hbWV0b2luZGV4LCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNvY2tldC5pZl9pbmRleHRvbmFtZSwgJ19ERUFEQkVFRicpCisKICAgICBkZWYgdGVzdFJlZkNvdW50R2V0TmFtZUluZm8oc2VsZik6CiAgICAgICAgICMgVGVzdGluZyByZWZlcmVuY2UgY291bnQgZm9yIGdldG5hbWVpbmZvCiAgICAgICAgIGlmIGhhc2F0dHIoc3lzLCAiZ2V0cmVmY291bnQiKToKQEAgLTQyMSwxMCArODE5LDggQEAKICAgICAgICAgIyBGaW5kIG9uZSBzZXJ2aWNlIHRoYXQgZXhpc3RzLCB0aGVuIGNoZWNrIGFsbCB0aGUgcmVsYXRlZCBpbnRlcmZhY2VzLgogICAgICAgICAjIEkndmUgb3JkZXJlZCB0aGlzIGJ5IHByb3RvY29scyB0aGF0IGhhdmUgYm90aCBhIHRjcCBhbmQgdWRwCiAgICAgICAgICMgcHJvdG9jb2wsIGF0IGxlYXN0IGZvciBtb2Rlcm4gTGludXhlcy4KLSAgICAgICAgaWYgKHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKCdsaW51eCcpIG9yCi0gICAgICAgICAgICBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnZnJlZWJzZCcpIG9yCi0gICAgICAgICAgICBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnbmV0YnNkJykgb3IKLSAgICAgICAgICAgIHN5cy5wbGF0Zm9ybSA9PSAnZGFyd2luJyk6CisgICAgICAgIGlmIChzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgoJ2ZyZWVic2QnLCAnbmV0YnNkJykpCisgICAgICAgICAgICBvciBzeXMucGxhdGZvcm0gaW4gKCdsaW51eCcsICdkYXJ3aW4nKSk6CiAgICAgICAgICAgICAjIGF2b2lkIHRoZSAnZWNobycgc2VydmljZSBvbiB0aGlzIHBsYXRmb3JtLCBhcyB0aGVyZSBpcyBhbgogICAgICAgICAgICAgIyBhc3N1bXB0aW9uIGJyZWFraW5nIG5vbi1zdGFuZGFyZCBwb3J0L3Byb3RvY29sIGVudHJ5CiAgICAgICAgICAgICBzZXJ2aWNlcyA9ICgnZGF5dGltZScsICdxb3RkJywgJ2RvbWFpbicpCkBAIC03MTksNyArMTExNSw3IEBACiAgICAgICAgIHNvY2tldC5nZXRhZGRyaW5mbygnbG9jYWxob3N0JywgODApCiAgICAgICAgIHNvY2tldC5nZXRhZGRyaW5mbygnMTI3LjAuMC4xJywgODApCiAgICAgICAgIHNvY2tldC5nZXRhZGRyaW5mbyhOb25lLCA4MCkKLSAgICAgICAgaWYgU1VQUE9SVFNfSVBWNjoKKyAgICAgICAgaWYgc3VwcG9ydC5JUFY2X0VOQUJMRUQ6CiAgICAgICAgICAgICBzb2NrZXQuZ2V0YWRkcmluZm8oJzo6MScsIDgwKQogICAgICAgICAjIHBvcnQgY2FuIGJlIGEgc3RyaW5nIHNlcnZpY2UgbmFtZSBzdWNoIGFzICJodHRwIiwgYSBudW1lcmljCiAgICAgICAgICMgcG9ydCBudW1iZXIgb3IgTm9uZQpAQCAtNzcyLDcgKzExNjgsMTIgQEAKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzdXBwb3J0LmlzX3Jlc291cmNlX2VuYWJsZWQoJ25ldHdvcmsnKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAnbmV0d29yayBpcyBub3QgZW5hYmxlZCcpCiAgICAgZGVmIHRlc3RfaWRuYShzZWxmKToKLSAgICAgICAgc3VwcG9ydC5yZXF1aXJlcygnbmV0d29yaycpCisgICAgICAgICMgQ2hlY2sgZm9yIGludGVybmV0IGFjY2VzcyBiZWZvcmUgcnVubmluZyB0ZXN0IChpc3N1ZSAjMTI4MDQpLgorICAgICAgICB0cnk6CisgICAgICAgICAgICBzb2NrZXQuZ2V0aG9zdGJ5bmFtZSgncHl0aG9uLm9yZycpCisgICAgICAgIGV4Y2VwdCBzb2NrZXQuZ2FpZXJyb3IgYXMgZToKKyAgICAgICAgICAgIGlmIGUuZXJybm8gPT0gc29ja2V0LkVBSV9OT0RBVEE6CisgICAgICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgnaW50ZXJuZXQgYWNjZXNzIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QnKQogICAgICAgICAjIHRoZXNlIHNob3VsZCBhbGwgYmUgc3VjY2Vzc2Z1bAogICAgICAgICBzb2NrZXQuZ2V0aG9zdGJ5bmFtZSgn0LjRgdC/0YvRgtCw0L3QuNC1LnB5dGhvbi5vcmcnKQogICAgICAgICBzb2NrZXQuZ2V0aG9zdGJ5bmFtZV9leCgn0LjRgdC/0YvRgtCw0L3QuNC1LnB5dGhvbi5vcmcnKQpAQCAtODM5LDE0ICsxMjQwLDIwIEBACiAgICAgICAgICAgICBmcC5jbG9zZSgpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcHIoZnApLCAiPF9pby5CdWZmZXJlZFJlYWRlciBuYW1lPS0xPiIpCiAKLSAgICBkZWYgdGVzdExpc3RlbkJhY2tsb2cwKHNlbGYpOgorICAgIGRlZiB0ZXN0X3BpY2tsZShzZWxmKToKKyAgICAgICAgc29jayA9IHNvY2tldC5zb2NrZXQoKQorICAgICAgICB3aXRoIHNvY2s6CisgICAgICAgICAgICBmb3IgcHJvdG9jb2wgaW4gcmFuZ2UocGlja2xlLkhJR0hFU1RfUFJPVE9DT0wgKyAxKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHBpY2tsZS5kdW1wcywgc29jaywgcHJvdG9jb2wpCisKKyAgICBkZWYgdGVzdF9saXN0ZW5fYmFja2xvZzAoc2VsZik6CiAgICAgICAgIHNydiA9IHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQsIHNvY2tldC5TT0NLX1NUUkVBTSkKICAgICAgICAgc3J2LmJpbmQoKEhPU1QsIDApKQogICAgICAgICAjIGJhY2tsb2cgPSAwCiAgICAgICAgIHNydi5saXN0ZW4oMCkKICAgICAgICAgc3J2LmNsb3NlKCkKIAotICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKFNVUFBPUlRTX0lQVjYsICdJUHY2IHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzdXBwb3J0LklQVjZfRU5BQkxFRCwgJ0lQdjYgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQogICAgIGRlZiB0ZXN0X2Zsb3dpbmZvKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBzb2NrZXQuZ2V0bmFtZWluZm8sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICgnOjoxJywwLCAweGZmZmZmZmZmKSwgMCkKQEAgLTg1NCw2ICsxMjYxLDIyMiBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgcy5iaW5kLCAoJzo6MScsIDAsIC0xMCkpCiAKIAorQHVuaXR0ZXN0LnNraXBVbmxlc3MoSEFWRV9TT0NLRVRfQ0FOLCAnU29ja2V0Q2FuIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIEJhc2ljQ0FOVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdENydWNpYWxDb25zdGFudHMoc2VsZik6CisgICAgICAgIHNvY2tldC5BRl9DQU4KKyAgICAgICAgc29ja2V0LlBGX0NBTgorICAgICAgICBzb2NrZXQuQ0FOX1JBVworCisgICAgZGVmIHRlc3RDcmVhdGVTb2NrZXQoc2VsZik6CisgICAgICAgIHdpdGggc29ja2V0LnNvY2tldChzb2NrZXQuUEZfQ0FOLCBzb2NrZXQuU09DS19SQVcsIHNvY2tldC5DQU5fUkFXKSBhcyBzOgorICAgICAgICAgICAgcGFzcworCisgICAgZGVmIHRlc3RCaW5kQW55KHNlbGYpOgorICAgICAgICB3aXRoIHNvY2tldC5zb2NrZXQoc29ja2V0LlBGX0NBTiwgc29ja2V0LlNPQ0tfUkFXLCBzb2NrZXQuQ0FOX1JBVykgYXMgczoKKyAgICAgICAgICAgIHMuYmluZCgoJycsICkpCisKKyAgICBkZWYgdGVzdFRvb0xvbmdJbnRlcmZhY2VOYW1lKHNlbGYpOgorICAgICAgICAjIG1vc3Qgc3lzdGVtcyBsaW1pdCBJRk5BTVNJWiB0byAxNiwgdGFrZSAxMDI0IHRvIGJlIHN1cmUKKyAgICAgICAgd2l0aCBzb2NrZXQuc29ja2V0KHNvY2tldC5QRl9DQU4sIHNvY2tldC5TT0NLX1JBVywgc29ja2V0LkNBTl9SQVcpIGFzIHM6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4KHNvY2tldC5lcnJvciwgJ2ludGVyZmFjZSBuYW1lIHRvbyBsb25nJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcy5iaW5kLCAoJ3gnICogMTAyNCwpKQorCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzb2NrZXQsICJDQU5fUkFXX0xPT1BCQUNLIiksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ3NvY2tldC5DQU5fUkFXX0xPT1BCQUNLIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKKyAgICBkZWYgdGVzdExvb3BiYWNrKHNlbGYpOgorICAgICAgICB3aXRoIHNvY2tldC5zb2NrZXQoc29ja2V0LlBGX0NBTiwgc29ja2V0LlNPQ0tfUkFXLCBzb2NrZXQuQ0FOX1JBVykgYXMgczoKKyAgICAgICAgICAgIGZvciBsb29wYmFjayBpbiAoMCwgMSk6CisgICAgICAgICAgICAgICAgcy5zZXRzb2Nrb3B0KHNvY2tldC5TT0xfQ0FOX1JBVywgc29ja2V0LkNBTl9SQVdfTE9PUEJBQ0ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvb3BiYWNrKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobG9vcGJhY2ssCisgICAgICAgICAgICAgICAgICAgIHMuZ2V0c29ja29wdChzb2NrZXQuU09MX0NBTl9SQVcsIHNvY2tldC5DQU5fUkFXX0xPT1BCQUNLKSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc29ja2V0LCAiQ0FOX1JBV19GSUxURVIiKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnc29ja2V0LkNBTl9SQVdfRklMVEVSIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKKyAgICBkZWYgdGVzdEZpbHRlcihzZWxmKToKKyAgICAgICAgY2FuX2lkLCBjYW5fbWFzayA9IDB4MjAwLCAweDcwMAorICAgICAgICBjYW5fZmlsdGVyID0gc3RydWN0LnBhY2soIj1JSSIsIGNhbl9pZCwgY2FuX21hc2spCisgICAgICAgIHdpdGggc29ja2V0LnNvY2tldChzb2NrZXQuUEZfQ0FOLCBzb2NrZXQuU09DS19SQVcsIHNvY2tldC5DQU5fUkFXKSBhcyBzOgorICAgICAgICAgICAgcy5zZXRzb2Nrb3B0KHNvY2tldC5TT0xfQ0FOX1JBVywgc29ja2V0LkNBTl9SQVdfRklMVEVSLCBjYW5fZmlsdGVyKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjYW5fZmlsdGVyLAorICAgICAgICAgICAgICAgICAgICBzLmdldHNvY2tvcHQoc29ja2V0LlNPTF9DQU5fUkFXLCBzb2NrZXQuQ0FOX1JBV19GSUxURVIsIDgpKQorCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKEhBVkVfU09DS0VUX0NBTiwgJ1NvY2tldENhbiByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgQ0FOVGVzdChUaHJlYWRlZENBTlNvY2tldFRlc3QpOgorCisgICAgIiIiVGhlIENBTiBmcmFtZSBzdHJ1Y3R1cmUgaXMgZGVmaW5lZCBpbiA8bGludXgvY2FuLmg+OgorCisgICAgc3RydWN0IGNhbl9mcmFtZSB7CisgICAgICAgIGNhbmlkX3QgY2FuX2lkOyAgLyogMzIgYml0IENBTl9JRCArIEVGRi9SVFIvRVJSIGZsYWdzICovCisgICAgICAgIF9fdTggICAgY2FuX2RsYzsgLyogZGF0YSBsZW5ndGggY29kZTogMCAuLiA4ICovCisgICAgICAgIF9fdTggICAgZGF0YVs4XSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgICAgfTsKKyAgICAiIiIKKyAgICBjYW5fZnJhbWVfZm10ID0gIj1JQjN4OHMiCisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbWV0aG9kTmFtZT0ncnVuVGVzdCcpOgorICAgICAgICBUaHJlYWRlZENBTlNvY2tldFRlc3QuX19pbml0X18oc2VsZiwgbWV0aG9kTmFtZT1tZXRob2ROYW1lKQorCisgICAgQGNsYXNzbWV0aG9kCisgICAgZGVmIGJ1aWxkX2Nhbl9mcmFtZShjbHMsIGNhbl9pZCwgZGF0YSk6CisgICAgICAgICIiIkJ1aWxkIGEgQ0FOIGZyYW1lLiIiIgorICAgICAgICBjYW5fZGxjID0gbGVuKGRhdGEpCisgICAgICAgIGRhdGEgPSBkYXRhLmxqdXN0KDgsIGInXHgwMCcpCisgICAgICAgIHJldHVybiBzdHJ1Y3QucGFjayhjbHMuY2FuX2ZyYW1lX2ZtdCwgY2FuX2lkLCBjYW5fZGxjLCBkYXRhKQorCisgICAgQGNsYXNzbWV0aG9kCisgICAgZGVmIGRpc3NlY3RfY2FuX2ZyYW1lKGNscywgZnJhbWUpOgorICAgICAgICAiIiJEaXNzZWN0IGEgQ0FOIGZyYW1lLiIiIgorICAgICAgICBjYW5faWQsIGNhbl9kbGMsIGRhdGEgPSBzdHJ1Y3QudW5wYWNrKGNscy5jYW5fZnJhbWVfZm10LCBmcmFtZSkKKyAgICAgICAgcmV0dXJuIChjYW5faWQsIGNhbl9kbGMsIGRhdGFbOmNhbl9kbGNdKQorCisgICAgZGVmIHRlc3RTZW5kRnJhbWUoc2VsZik6CisgICAgICAgIGNmLCBhZGRyID0gc2VsZi5zLnJlY3Zmcm9tKHNlbGYuYnVmc2l6ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNmLCBjZikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhZGRyWzBdLCBzZWxmLmludGVyZmFjZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhZGRyWzFdLCBzb2NrZXQuQUZfQ0FOKQorCisgICAgZGVmIF90ZXN0U2VuZEZyYW1lKHNlbGYpOgorICAgICAgICBzZWxmLmNmID0gc2VsZi5idWlsZF9jYW5fZnJhbWUoMHgwMCwgYidceDAxXHgwMlx4MDNceDA0XHgwNScpCisgICAgICAgIHNlbGYuY2xpLnNlbmQoc2VsZi5jZikKKworICAgIGRlZiB0ZXN0U2VuZE1heEZyYW1lKHNlbGYpOgorICAgICAgICBjZiwgYWRkciA9IHNlbGYucy5yZWN2ZnJvbShzZWxmLmJ1ZnNpemUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5jZiwgY2YpCisKKyAgICBkZWYgX3Rlc3RTZW5kTWF4RnJhbWUoc2VsZik6CisgICAgICAgIHNlbGYuY2YgPSBzZWxmLmJ1aWxkX2Nhbl9mcmFtZSgweDAwLCBiJ1x4MDcnICogOCkKKyAgICAgICAgc2VsZi5jbGkuc2VuZChzZWxmLmNmKQorCisgICAgZGVmIHRlc3RTZW5kTXVsdGlGcmFtZXMoc2VsZik6CisgICAgICAgIGNmLCBhZGRyID0gc2VsZi5zLnJlY3Zmcm9tKHNlbGYuYnVmc2l6ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmNmMSwgY2YpCisKKyAgICAgICAgY2YsIGFkZHIgPSBzZWxmLnMucmVjdmZyb20oc2VsZi5idWZzaXplKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2YyLCBjZikKKworICAgIGRlZiBfdGVzdFNlbmRNdWx0aUZyYW1lcyhzZWxmKToKKyAgICAgICAgc2VsZi5jZjEgPSBzZWxmLmJ1aWxkX2Nhbl9mcmFtZSgweDA3LCBiJ1x4NDRceDMzXHgyMlx4MTEnKQorICAgICAgICBzZWxmLmNsaS5zZW5kKHNlbGYuY2YxKQorCisgICAgICAgIHNlbGYuY2YyID0gc2VsZi5idWlsZF9jYW5fZnJhbWUoMHgxMiwgYidceDk5XHgyMlx4MzMnKQorICAgICAgICBzZWxmLmNsaS5zZW5kKHNlbGYuY2YyKQorCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKEhBVkVfU09DS0VUX1JEUywgJ1JEUyBzb2NrZXRzIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIEJhc2ljUkRTVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdENydWNpYWxDb25zdGFudHMoc2VsZik6CisgICAgICAgIHNvY2tldC5BRl9SRFMKKyAgICAgICAgc29ja2V0LlBGX1JEUworCisgICAgZGVmIHRlc3RDcmVhdGVTb2NrZXQoc2VsZik6CisgICAgICAgIHdpdGggc29ja2V0LnNvY2tldChzb2NrZXQuUEZfUkRTLCBzb2NrZXQuU09DS19TRVFQQUNLRVQsIDApIGFzIHM6CisgICAgICAgICAgICBwYXNzCisKKyAgICBkZWYgdGVzdFNvY2tldEJ1ZmZlclNpemUoc2VsZik6CisgICAgICAgIGJ1ZnNpemUgPSAxNjM4NAorICAgICAgICB3aXRoIHNvY2tldC5zb2NrZXQoc29ja2V0LlBGX1JEUywgc29ja2V0LlNPQ0tfU0VRUEFDS0VULCAwKSBhcyBzOgorICAgICAgICAgICAgcy5zZXRzb2Nrb3B0KHNvY2tldC5TT0xfU09DS0VULCBzb2NrZXQuU09fUkNWQlVGLCBidWZzaXplKQorICAgICAgICAgICAgcy5zZXRzb2Nrb3B0KHNvY2tldC5TT0xfU09DS0VULCBzb2NrZXQuU09fU05EQlVGLCBidWZzaXplKQorCisKK0B1bml0dGVzdC5za2lwVW5sZXNzKEhBVkVfU09DS0VUX1JEUywgJ1JEUyBzb2NrZXRzIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBSRFNUZXN0KFRocmVhZGVkUkRTU29ja2V0VGVzdCk6CisKKyAgICBkZWYgX19pbml0X18oc2VsZiwgbWV0aG9kTmFtZT0ncnVuVGVzdCcpOgorICAgICAgICBUaHJlYWRlZFJEU1NvY2tldFRlc3QuX19pbml0X18oc2VsZiwgbWV0aG9kTmFtZT1tZXRob2ROYW1lKQorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcigpLnNldFVwKCkKKyAgICAgICAgc2VsZi5ldnQgPSB0aHJlYWRpbmcuRXZlbnQoKQorCisgICAgZGVmIHRlc3RTZW5kQW5kUmVjdihzZWxmKToKKyAgICAgICAgZGF0YSwgYWRkciA9IHNlbGYuc2Vydi5yZWN2ZnJvbShzZWxmLmJ1ZnNpemUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYXRhLCBkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuY2xpX2FkZHIsIGFkZHIpCisKKyAgICBkZWYgX3Rlc3RTZW5kQW5kUmVjdihzZWxmKToKKyAgICAgICAgc2VsZi5kYXRhID0gYidzcGFtJworICAgICAgICBzZWxmLmNsaS5zZW5kdG8oc2VsZi5kYXRhLCAwLCAoSE9TVCwgc2VsZi5wb3J0KSkKKworICAgIGRlZiB0ZXN0UGVlayhzZWxmKToKKyAgICAgICAgZGF0YSwgYWRkciA9IHNlbGYuc2Vydi5yZWN2ZnJvbShzZWxmLmJ1ZnNpemUsIHNvY2tldC5NU0dfUEVFSykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRhdGEsIGRhdGEpCisgICAgICAgIGRhdGEsIGFkZHIgPSBzZWxmLnNlcnYucmVjdmZyb20oc2VsZi5idWZzaXplKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGF0YSwgZGF0YSkKKworICAgIGRlZiBfdGVzdFBlZWsoc2VsZik6CisgICAgICAgIHNlbGYuZGF0YSA9IGInc3BhbScKKyAgICAgICAgc2VsZi5jbGkuc2VuZHRvKHNlbGYuZGF0YSwgMCwgKEhPU1QsIHNlbGYucG9ydCkpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICdyZWN2bXNnJykKKyAgICBkZWYgdGVzdFNlbmRBbmRSZWN2TXNnKHNlbGYpOgorICAgICAgICBkYXRhLCBhbmNkYXRhLCBtc2dfZmxhZ3MsIGFkZHIgPSBzZWxmLnNlcnYucmVjdm1zZyhzZWxmLmJ1ZnNpemUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYXRhLCBkYXRhKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAnc2VuZG1zZycpCisgICAgZGVmIF90ZXN0U2VuZEFuZFJlY3ZNc2coc2VsZik6CisgICAgICAgIHNlbGYuZGF0YSA9IGInaGVsbG8gJyAqIDEwCisgICAgICAgIHNlbGYuY2xpLnNlbmRtc2coW3NlbGYuZGF0YV0sICgpLCAwLCAoSE9TVCwgc2VsZi5wb3J0KSkKKworICAgIGRlZiB0ZXN0U2VuZEFuZFJlY3ZNdWx0aShzZWxmKToKKyAgICAgICAgZGF0YSwgYWRkciA9IHNlbGYuc2Vydi5yZWN2ZnJvbShzZWxmLmJ1ZnNpemUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYXRhMSwgZGF0YSkKKworICAgICAgICBkYXRhLCBhZGRyID0gc2VsZi5zZXJ2LnJlY3Zmcm9tKHNlbGYuYnVmc2l6ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRhdGEyLCBkYXRhKQorCisgICAgZGVmIF90ZXN0U2VuZEFuZFJlY3ZNdWx0aShzZWxmKToKKyAgICAgICAgc2VsZi5kYXRhMSA9IGInYmFjb24nCisgICAgICAgIHNlbGYuY2xpLnNlbmR0byhzZWxmLmRhdGExLCAwLCAoSE9TVCwgc2VsZi5wb3J0KSkKKworICAgICAgICBzZWxmLmRhdGEyID0gYidlZ2cnCisgICAgICAgIHNlbGYuY2xpLnNlbmR0byhzZWxmLmRhdGEyLCAwLCAoSE9TVCwgc2VsZi5wb3J0KSkKKworICAgIGRlZiB0ZXN0U2VsZWN0KHNlbGYpOgorICAgICAgICByLCB3LCB4ID0gc2VsZWN0LnNlbGVjdChbc2VsZi5zZXJ2XSwgW10sIFtdLCAzLjApCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VsZi5zZXJ2LCByKQorICAgICAgICBkYXRhLCBhZGRyID0gc2VsZi5zZXJ2LnJlY3Zmcm9tKHNlbGYuYnVmc2l6ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRhdGEsIGRhdGEpCisKKyAgICBkZWYgX3Rlc3RTZWxlY3Qoc2VsZik6CisgICAgICAgIHNlbGYuZGF0YSA9IGInc2VsZWN0JworICAgICAgICBzZWxmLmNsaS5zZW5kdG8oc2VsZi5kYXRhLCAwLCAoSE9TVCwgc2VsZi5wb3J0KSkKKworICAgIGRlZiB0ZXN0Q29uZ2VzdGlvbihzZWxmKToKKyAgICAgICAgIyB3YWl0IHVudGlsIHRoZSBzZW5kZXIgaXMgZG9uZQorICAgICAgICBzZWxmLmV2dC53YWl0KCkKKworICAgIGRlZiBfdGVzdENvbmdlc3Rpb24oc2VsZik6CisgICAgICAgICMgdGVzdCB0aGUgYmVoYXZpb3IgaW4gY2FzZSBvZiBjb25nZXN0aW9uCisgICAgICAgIHNlbGYuZGF0YSA9IGInZmlsbCcKKyAgICAgICAgc2VsZi5jbGkuc2V0YmxvY2tpbmcoRmFsc2UpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgICMgdHJ5IHRvIGxvd2VyIHRoZSByZWNlaXZlcidzIHNvY2tldCBidWZmZXIgc2l6ZQorICAgICAgICAgICAgc2VsZi5jbGkuc2V0c29ja29wdChzb2NrZXQuU09MX1NPQ0tFVCwgc29ja2V0LlNPX1JDVkJVRiwgMTYzODQpCisgICAgICAgIGV4Y2VwdCBPU0Vycm9yOgorICAgICAgICAgICAgcGFzcworICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICMgZmlsbCB0aGUgcmVjZWl2ZXIncyBzb2NrZXQgYnVmZmVyCisgICAgICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5jbGkuc2VuZHRvKHNlbGYuZGF0YSwgMCwgKEhPU1QsIHNlbGYucG9ydCkpCisgICAgICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgICAgICMgc2lnbmFsIHRoZSByZWNlaXZlciB3ZSdyZSBkb25lCisgICAgICAgICAgICAgICAgc2VsZi5ldnQuc2V0KCkKKyAgICAgICAgIyBzZW5kdG8oKSBzaG91bGQgaGF2ZSBmYWlsZWQgd2l0aCBFTk9CVUZTCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmVycm5vLCBlcnJuby5FTk9CVUZTKQorICAgICAgICAjIGFuZCB3ZSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvbmdlc3Rpb24gbm90aWZpY2F0aW9uIHRocm91Z2ggcG9sbAorICAgICAgICByLCB3LCB4ID0gc2VsZWN0LnNlbGVjdChbc2VsZi5zZXJ2XSwgW10sIFtdLCAzLjApCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VsZi5zZXJ2LCByKQorCisKIEB1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCiBjbGFzcyBCYXNpY1RDUFRlc3QoU29ja2V0Q29ubmVjdGVkVGVzdCk6CiAKQEAgLTk5Miw2ICsxNjE1LDE4NTIgQEAKICAgICBkZWYgX3Rlc3RSZWN2RnJvbU5lZ2F0aXZlKHNlbGYpOgogICAgICAgICBzZWxmLmNsaS5zZW5kdG8oTVNHLCAwLCAoSE9TVCwgc2VsZi5wb3J0KSkKIAorIyBUZXN0cyBmb3IgdGhlIHNlbmRtc2coKS9yZWN2bXNnKCkgaW50ZXJmYWNlLiAgV2hlcmUgcG9zc2libGUsIHRoZQorIyBzYW1lIHRlc3QgY29kZSBpcyB1c2VkIHdpdGggZGlmZmVyZW50IGZhbWlsaWVzIGFuZCB0eXBlcyBvZiBzb2NrZXQKKyMgKGUuZy4gc3RyZWFtLCBkYXRhZ3JhbSksIGFuZCB0ZXN0cyB1c2luZyByZWN2bXNnKCkgYXJlIHJlcGVhdGVkCisjIHVzaW5nIHJlY3Ztc2dfaW50bygpLgorIworIyBUaGUgZ2VuZXJpYyB0ZXN0IGNsYXNzZXMgc3VjaCBhcyBTZW5kbXNnVGVzdHMgYW5kCisjIFJlY3Ztc2dHZW5lcmljVGVzdHMgaW5oZXJpdCBmcm9tIFNlbmRyZWN2bXNnQmFzZSBhbmQgZXhwZWN0IHRvIGJlCisjIHN1cHBsaWVkIHdpdGggc29ja2V0cyBjbGlfc29jayBhbmQgc2Vydl9zb2NrIHJlcHJlc2VudGluZyB0aGUKKyMgY2xpZW50J3MgYW5kIHRoZSBzZXJ2ZXIncyBlbmQgb2YgdGhlIGNvbm5lY3Rpb24gcmVzcGVjdGl2ZWx5LCBhbmQKKyMgYXR0cmlidXRlcyBjbGlfYWRkciBhbmQgc2Vydl9hZGRyIGhvbGRpbmcgdGhlaXIgKG51bWVyaWMgd2hlcmUKKyMgYXBwcm9wcmlhdGUpIGFkZHJlc3Nlcy4KKyMKKyMgVGhlIGZpbmFsIGNvbmNyZXRlIHRlc3QgY2xhc3NlcyBjb21iaW5lIHRoZXNlIHdpdGggc3ViY2xhc3NlcyBvZgorIyBTb2NrZXRUZXN0QmFzZSB3aGljaCBzZXQgdXAgY2xpZW50IGFuZCBzZXJ2ZXIgc29ja2V0cyBvZiBhIHNwZWNpZmljCisjIHR5cGUsIGFuZCB3aXRoIHN1YmNsYXNzZXMgb2YgU2VuZHJlY3Ztc2dCYXNlIHN1Y2ggYXMKKyMgU2VuZHJlY3Ztc2dEZ3JhbUJhc2UgYW5kIFNlbmRyZWN2bXNnQ29ubmVjdGVkQmFzZSB3aGljaCBtYXAgdGhlc2UKKyMgc29ja2V0cyB0byBjbGlfc29jayBhbmQgc2Vydl9zb2NrIGFuZCBvdmVycmlkZSB0aGUgbWV0aG9kcyBhbmQKKyMgYXR0cmlidXRlcyBvZiBTZW5kcmVjdm1zZ0Jhc2UgdG8gZmlsbCBpbiBkZXN0aW5hdGlvbiBhZGRyZXNzZXMgaWYKKyMgbmVlZGVkIHdoZW4gc2VuZGluZywgY2hlY2sgZm9yIHNwZWNpZmljIGZsYWdzIGluIG1zZ19mbGFncywgZXRjLgorIworIyBSZWN2bXNnSW50b01peGluIHByb3ZpZGVzIGEgdmVyc2lvbiBvZiBkb1JlY3Ztc2coKSBpbXBsZW1lbnRlZCB1c2luZworIyByZWN2bXNnX2ludG8oKS4KKworIyBYWFg6IGxpa2UgdGhlIG90aGVyIGRhdGFncmFtIChVRFApIHRlc3RzIGluIHRoaXMgbW9kdWxlLCB0aGUgY29kZQorIyBoZXJlIGFzc3VtZXMgdGhhdCBkYXRhZ3JhbSBkZWxpdmVyeSBvbiB0aGUgbG9jYWwgbWFjaGluZSB3aWxsIGJlCisjIHJlbGlhYmxlLgorCitjbGFzcyBTZW5kcmVjdm1zZ0Jhc2UoVGhyZWFkU2FmZUNsZWFudXBUZXN0Q2FzZSk6CisgICAgIyBCYXNlIGNsYXNzIGZvciBzZW5kbXNnKCkvcmVjdm1zZygpIHRlc3RzLgorCisgICAgIyBUaW1lIGluIHNlY29uZHMgdG8gd2FpdCBiZWZvcmUgY29uc2lkZXJpbmcgYSB0ZXN0IGZhaWxlZCwgb3IKKyAgICAjIE5vbmUgZm9yIG5vIHRpbWVvdXQuICBOb3QgYWxsIHRlc3RzIGFjdHVhbGx5IHNldCBhIHRpbWVvdXQuCisgICAgZmFpbF90aW1lb3V0ID0gMy4wCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYubWlzY19ldmVudCA9IHRocmVhZGluZy5FdmVudCgpCisgICAgICAgIHN1cGVyKCkuc2V0VXAoKQorCisgICAgZGVmIHNlbmRUb1NlcnZlcihzZWxmLCBtc2cpOgorICAgICAgICAjIFNlbmQgbXNnIHRvIHRoZSBzZXJ2ZXIuCisgICAgICAgIHJldHVybiBzZWxmLmNsaV9zb2NrLnNlbmQobXNnKQorCisgICAgIyBUdXBsZSBvZiBhbHRlcm5hdGl2ZSBkZWZhdWx0IGFyZ3VtZW50cyBmb3Igc2VuZG1zZygpIHdoZW4gY2FsbGVkCisgICAgIyB2aWEgc2VuZG1zZ1RvU2VydmVyKCkgKGUuZy4gdG8gaW5jbHVkZSBhIGRlc3RpbmF0aW9uIGFkZHJlc3MpLgorICAgIHNlbmRtc2dfdG9fc2VydmVyX2RlZmF1bHRzID0gKCkKKworICAgIGRlZiBzZW5kbXNnVG9TZXJ2ZXIoc2VsZiwgKmFyZ3MpOgorICAgICAgICAjIENhbGwgc2VuZG1zZygpIG9uIHNlbGYuY2xpX3NvY2sgd2l0aCB0aGUgZ2l2ZW4gYXJndW1lbnRzLAorICAgICAgICAjIGZpbGxpbmcgaW4gYW55IGFyZ3VtZW50cyB3aGljaCBhcmUgbm90IHN1cHBsaWVkIHdpdGggdGhlCisgICAgICAgICMgY29ycmVzcG9uZGluZyBpdGVtcyBvZiBzZWxmLnNlbmRtc2dfdG9fc2VydmVyX2RlZmF1bHRzLCBpZgorICAgICAgICAjIGFueS4KKyAgICAgICAgcmV0dXJuIHNlbGYuY2xpX3NvY2suc2VuZG1zZygKKyAgICAgICAgICAgICooYXJncyArIHNlbGYuc2VuZG1zZ190b19zZXJ2ZXJfZGVmYXVsdHNbbGVuKGFyZ3MpOl0pKQorCisgICAgZGVmIGRvUmVjdm1zZyhzZWxmLCBzb2NrLCBidWZzaXplLCAqYXJncyk6CisgICAgICAgICMgQ2FsbCByZWN2bXNnKCkgb24gc29jayB3aXRoIGdpdmVuIGFyZ3VtZW50cyBhbmQgcmV0dXJuIGl0cworICAgICAgICAjIHJlc3VsdC4gIFNob3VsZCBiZSB1c2VkIGZvciB0ZXN0cyB3aGljaCBjYW4gdXNlIGVpdGhlcgorICAgICAgICAjIHJlY3Ztc2coKSBvciByZWN2bXNnX2ludG8oKSAtIFJlY3Ztc2dJbnRvTWl4aW4gb3ZlcnJpZGVzCisgICAgICAgICMgdGhpcyBtZXRob2Qgd2l0aCBvbmUgd2hpY2ggZW11bGF0ZXMgaXQgdXNpbmcgcmVjdm1zZ19pbnRvKCksCisgICAgICAgICMgdGh1cyBhbGxvd2luZyB0aGUgc2FtZSB0ZXN0IHRvIGJlIHVzZWQgZm9yIGJvdGggbWV0aG9kcy4KKyAgICAgICAgcmVzdWx0ID0gc29jay5yZWN2bXNnKGJ1ZnNpemUsICphcmdzKQorICAgICAgICBzZWxmLnJlZ2lzdGVyUmVjdm1zZ1Jlc3VsdChyZXN1bHQpCisgICAgICAgIHJldHVybiByZXN1bHQKKworICAgIGRlZiByZWdpc3RlclJlY3Ztc2dSZXN1bHQoc2VsZiwgcmVzdWx0KToKKyAgICAgICAgIyBDYWxsZWQgYnkgZG9SZWN2bXNnKCkgd2l0aCB0aGUgcmV0dXJuIHZhbHVlIG9mIHJlY3Ztc2coKSBvcgorICAgICAgICAjIHJlY3Ztc2dfaW50bygpLiAgQ2FuIGJlIG92ZXJyaWRkZW4gdG8gYXJyYW5nZSBjbGVhbnVwIGJhc2VkCisgICAgICAgICMgb24gdGhlIHJldHVybmVkIGFuY2lsbGFyeSBkYXRhLCBmb3IgaW5zdGFuY2UuCisgICAgICAgIHBhc3MKKworICAgIGRlZiBjaGVja1JlY3Ztc2dBZGRyZXNzKHNlbGYsIGFkZHIxLCBhZGRyMik6CisgICAgICAgICMgQ2FsbGVkIHRvIGNvbXBhcmUgdGhlIHJlY2VpdmVkIGFkZHJlc3Mgd2l0aCB0aGUgYWRkcmVzcyBvZgorICAgICAgICAjIHRoZSBwZWVyLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFkZHIxLCBhZGRyMikKKworICAgICMgRmxhZ3MgdGhhdCBhcmUgbm9ybWFsbHkgdW5zZXQgaW4gbXNnX2ZsYWdzCisgICAgbXNnX2ZsYWdzX2NvbW1vbl91bnNldCA9IDAKKyAgICBmb3IgbmFtZSBpbiAoIk1TR19DVFJVTkMiLCAiTVNHX09PQiIpOgorICAgICAgICBtc2dfZmxhZ3NfY29tbW9uX3Vuc2V0IHw9IGdldGF0dHIoc29ja2V0LCBuYW1lLCAwKQorCisgICAgIyBGbGFncyB0aGF0IGFyZSBub3JtYWxseSBzZXQKKyAgICBtc2dfZmxhZ3NfY29tbW9uX3NldCA9IDAKKworICAgICMgRmxhZ3Mgc2V0IHdoZW4gYSBjb21wbGV0ZSByZWNvcmQgaGFzIGJlZW4gcmVjZWl2ZWQgKGUuZy4gTVNHX0VPUgorICAgICMgZm9yIFNDVFApCisgICAgbXNnX2ZsYWdzX2Vvcl9pbmRpY2F0b3IgPSAwCisKKyAgICAjIEZsYWdzIHNldCB3aGVuIGEgY29tcGxldGUgcmVjb3JkIGhhcyBub3QgYmVlbiByZWNlaXZlZAorICAgICMgKGUuZy4gTVNHX1RSVU5DIGZvciBkYXRhZ3JhbSBzb2NrZXRzKQorICAgIG1zZ19mbGFnc19ub25fZW9yX2luZGljYXRvciA9IDAKKworICAgIGRlZiBjaGVja0ZsYWdzKHNlbGYsIGZsYWdzLCBlb3I9Tm9uZSwgY2hlY2tzZXQ9MCwgY2hlY2t1bnNldD0wLCBpZ25vcmU9MCk6CisgICAgICAgICMgTWV0aG9kIHRvIGNoZWNrIHRoZSB2YWx1ZSBvZiBtc2dfZmxhZ3MgcmV0dXJuZWQgYnkgcmVjdm1zZ1tfaW50b10oKS4KKyAgICAgICAgIworICAgICAgICAjIENoZWNrcyB0aGF0IGFsbCBiaXRzIGluIG1zZ19mbGFnc19jb21tb25fc2V0IGF0dHJpYnV0ZSBhcmUKKyAgICAgICAgIyBzZXQgaW4gImZsYWdzIiBhbmQgYWxsIGJpdHMgaW4gbXNnX2ZsYWdzX2NvbW1vbl91bnNldCBhcmUKKyAgICAgICAgIyB1bnNldC4KKyAgICAgICAgIworICAgICAgICAjIFRoZSAiZW9yIiBhcmd1bWVudCBzcGVjaWZpZXMgd2hldGhlciB0aGUgZmxhZ3Mgc2hvdWxkCisgICAgICAgICMgaW5kaWNhdGUgdGhhdCBhIGZ1bGwgcmVjb3JkIChvciBkYXRhZ3JhbSkgaGFzIGJlZW4gcmVjZWl2ZWQuCisgICAgICAgICMgSWYgImVvciIgaXMgTm9uZSwgbm8gY2hlY2tzIGFyZSBkb25lOyBvdGhlcndpc2UsIGNoZWNrcworICAgICAgICAjIHRoYXQ6CisgICAgICAgICMKKyAgICAgICAgIyAgKiBpZiAiZW9yIiBpcyB0cnVlLCBhbGwgYml0cyBpbiBtc2dfZmxhZ3NfZW9yX2luZGljYXRvciBhcmUKKyAgICAgICAgIyAgICBzZXQgYW5kIGFsbCBiaXRzIGluIG1zZ19mbGFnc19ub25fZW9yX2luZGljYXRvciBhcmUgdW5zZXQKKyAgICAgICAgIworICAgICAgICAjICAqIGlmICJlb3IiIGlzIGZhbHNlLCBhbGwgYml0cyBpbiBtc2dfZmxhZ3Nfbm9uX2Vvcl9pbmRpY2F0b3IKKyAgICAgICAgIyAgICBhcmUgc2V0IGFuZCBhbGwgYml0cyBpbiBtc2dfZmxhZ3NfZW9yX2luZGljYXRvciBhcmUgdW5zZXQKKyAgICAgICAgIworICAgICAgICAjIElmICJjaGVja3NldCIgYW5kL29yICJjaGVja3Vuc2V0IiBhcmUgc3VwcGxpZWQsIHRoZXkgcmVxdWlyZQorICAgICAgICAjIHRoZSBnaXZlbiBiaXRzIHRvIGJlIHNldCBvciB1bnNldCByZXNwZWN0aXZlbHksIG92ZXJyaWRpbmcKKyAgICAgICAgIyB3aGF0IHRoZSBhdHRyaWJ1dGVzIHJlcXVpcmUgZm9yIHRob3NlIGJpdHMuCisgICAgICAgICMKKyAgICAgICAgIyBJZiBhbnkgYml0cyBhcmUgc2V0IGluICJpZ25vcmUiLCB0aGV5IHdpbGwgbm90IGJlIGNoZWNrZWQsCisgICAgICAgICMgcmVnYXJkbGVzcyBvZiB0aGUgb3RoZXIgaW5wdXRzLgorICAgICAgICAjCisgICAgICAgICMgV2lsbCByYWlzZSBFeGNlcHRpb24gaWYgdGhlIGlucHV0cyByZXF1aXJlIGEgYml0IHRvIGJlIGJvdGgKKyAgICAgICAgIyBzZXQgYW5kIHVuc2V0LCBhbmQgaXQgaXMgbm90IGlnbm9yZWQuCisKKyAgICAgICAgZGVmYXVsdHNldCA9IHNlbGYubXNnX2ZsYWdzX2NvbW1vbl9zZXQKKyAgICAgICAgZGVmYXVsdHVuc2V0ID0gc2VsZi5tc2dfZmxhZ3NfY29tbW9uX3Vuc2V0CisKKyAgICAgICAgaWYgZW9yOgorICAgICAgICAgICAgZGVmYXVsdHNldCB8PSBzZWxmLm1zZ19mbGFnc19lb3JfaW5kaWNhdG9yCisgICAgICAgICAgICBkZWZhdWx0dW5zZXQgfD0gc2VsZi5tc2dfZmxhZ3Nfbm9uX2Vvcl9pbmRpY2F0b3IKKyAgICAgICAgZWxpZiBlb3IgaXMgbm90IE5vbmU6CisgICAgICAgICAgICBkZWZhdWx0c2V0IHw9IHNlbGYubXNnX2ZsYWdzX25vbl9lb3JfaW5kaWNhdG9yCisgICAgICAgICAgICBkZWZhdWx0dW5zZXQgfD0gc2VsZi5tc2dfZmxhZ3NfZW9yX2luZGljYXRvcgorCisgICAgICAgICMgRnVuY3Rpb24gYXJndW1lbnRzIG92ZXJyaWRlIGRlZmF1bHRzCisgICAgICAgIGRlZmF1bHRzZXQgJj0gfmNoZWNrdW5zZXQKKyAgICAgICAgZGVmYXVsdHVuc2V0ICY9IH5jaGVja3NldAorCisgICAgICAgICMgTWVyZ2UgYXJndW1lbnRzIHdpdGggcmVtYWluaW5nIGRlZmF1bHRzLCBhbmQgY2hlY2sgZm9yIGNvbmZsaWN0cworICAgICAgICBjaGVja3NldCB8PSBkZWZhdWx0c2V0CisgICAgICAgIGNoZWNrdW5zZXQgfD0gZGVmYXVsdHVuc2V0CisgICAgICAgIGluYm90aCA9IGNoZWNrc2V0ICYgY2hlY2t1bnNldCAmIH5pZ25vcmUKKyAgICAgICAgaWYgaW5ib3RoOgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCJjb250cmFkaWN0b3J5IHNldCwgdW5zZXQgcmVxdWlyZW1lbnRzIGZvciBmbGFncyAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgInswOiN4fSIuZm9ybWF0KGluYm90aCkpCisKKyAgICAgICAgIyBDb21wYXJlIHdpdGggZ2l2ZW4gbXNnX2ZsYWdzIHZhbHVlCisgICAgICAgIG1hc2sgPSAoY2hlY2tzZXQgfCBjaGVja3Vuc2V0KSAmIH5pZ25vcmUKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbGFncyAmIG1hc2ssIGNoZWNrc2V0ICYgbWFzaykKKworCitjbGFzcyBSZWN2bXNnSW50b01peGluKFNlbmRyZWN2bXNnQmFzZSk6CisgICAgIyBNaXhpbiB0byBpbXBsZW1lbnQgZG9SZWN2bXNnKCkgdXNpbmcgcmVjdm1zZ19pbnRvKCkuCisKKyAgICBkZWYgZG9SZWN2bXNnKHNlbGYsIHNvY2ssIGJ1ZnNpemUsICphcmdzKToKKyAgICAgICAgYnVmID0gYnl0ZWFycmF5KGJ1ZnNpemUpCisgICAgICAgIHJlc3VsdCA9IHNvY2sucmVjdm1zZ19pbnRvKFtidWZdLCAqYXJncykKKyAgICAgICAgc2VsZi5yZWdpc3RlclJlY3Ztc2dSZXN1bHQocmVzdWx0KQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChyZXN1bHRbMF0sIDApCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKHJlc3VsdFswXSwgYnVmc2l6ZSkKKyAgICAgICAgcmV0dXJuIChieXRlcyhidWZbOnJlc3VsdFswXV0pLCkgKyByZXN1bHRbMTpdCisKKworY2xhc3MgU2VuZHJlY3Ztc2dEZ3JhbUZsYWdzQmFzZShTZW5kcmVjdm1zZ0Jhc2UpOgorICAgICMgRGVmaW5lcyBmbGFncyB0byBiZSBjaGVja2VkIGluIG1zZ19mbGFncyBmb3IgZGF0YWdyYW0gc29ja2V0cy4KKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBtc2dfZmxhZ3Nfbm9uX2Vvcl9pbmRpY2F0b3Ioc2VsZik6CisgICAgICAgIHJldHVybiBzdXBlcigpLm1zZ19mbGFnc19ub25fZW9yX2luZGljYXRvciB8IHNvY2tldC5NU0dfVFJVTkMKKworCitjbGFzcyBTZW5kcmVjdm1zZ1NDVFBGbGFnc0Jhc2UoU2VuZHJlY3Ztc2dCYXNlKToKKyAgICAjIERlZmluZXMgZmxhZ3MgdG8gYmUgY2hlY2tlZCBpbiBtc2dfZmxhZ3MgZm9yIFNDVFAgc29ja2V0cy4KKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBtc2dfZmxhZ3NfZW9yX2luZGljYXRvcihzZWxmKToKKyAgICAgICAgcmV0dXJuIHN1cGVyKCkubXNnX2ZsYWdzX2Vvcl9pbmRpY2F0b3IgfCBzb2NrZXQuTVNHX0VPUgorCisKK2NsYXNzIFNlbmRyZWN2bXNnQ29ubmVjdGlvbmxlc3NCYXNlKFNlbmRyZWN2bXNnQmFzZSk6CisgICAgIyBCYXNlIGNsYXNzIGZvciB0ZXN0cyBvbiBjb25uZWN0aW9ubGVzcy1tb2RlIHNvY2tldHMuICBVc2VycyBtdXN0CisgICAgIyBzdXBwbHkgc29ja2V0cyBvbiBhdHRyaWJ1dGVzIGNsaSBhbmQgc2VydiB0byBiZSBtYXBwZWQgdG8KKyAgICAjIGNsaV9zb2NrIGFuZCBzZXJ2X3NvY2sgcmVzcGVjdGl2ZWx5LgorCisgICAgQHByb3BlcnR5CisgICAgZGVmIHNlcnZfc29jayhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuc2VydgorCisgICAgQHByb3BlcnR5CisgICAgZGVmIGNsaV9zb2NrKHNlbGYpOgorICAgICAgICByZXR1cm4gc2VsZi5jbGkKKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBzZW5kbXNnX3RvX3NlcnZlcl9kZWZhdWx0cyhzZWxmKToKKyAgICAgICAgcmV0dXJuIChbXSwgW10sIDAsIHNlbGYuc2Vydl9hZGRyKQorCisgICAgZGVmIHNlbmRUb1NlcnZlcihzZWxmLCBtc2cpOgorICAgICAgICByZXR1cm4gc2VsZi5jbGlfc29jay5zZW5kdG8obXNnLCBzZWxmLnNlcnZfYWRkcikKKworCitjbGFzcyBTZW5kcmVjdm1zZ0Nvbm5lY3RlZEJhc2UoU2VuZHJlY3Ztc2dCYXNlKToKKyAgICAjIEJhc2UgY2xhc3MgZm9yIHRlc3RzIG9uIGNvbm5lY3RlZCBzb2NrZXRzLiAgVXNlcnMgbXVzdCBzdXBwbHkKKyAgICAjIHNvY2tldHMgb24gYXR0cmlidXRlcyBzZXJ2X2Nvbm4gYW5kIGNsaV9jb25uIChyZXByZXNlbnRpbmcgdGhlCisgICAgIyBjb25uZWN0aW9ucyAqdG8qIHRoZSBzZXJ2ZXIgYW5kIHRoZSBjbGllbnQpLCB0byBiZSBtYXBwZWQgdG8KKyAgICAjIGNsaV9zb2NrIGFuZCBzZXJ2X3NvY2sgcmVzcGVjdGl2ZWx5LgorCisgICAgQHByb3BlcnR5CisgICAgZGVmIHNlcnZfc29jayhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuY2xpX2Nvbm4KKworICAgIEBwcm9wZXJ0eQorICAgIGRlZiBjbGlfc29jayhzZWxmKToKKyAgICAgICAgcmV0dXJuIHNlbGYuc2Vydl9jb25uCisKKyAgICBkZWYgY2hlY2tSZWN2bXNnQWRkcmVzcyhzZWxmLCBhZGRyMSwgYWRkcjIpOgorICAgICAgICAjIEFkZHJlc3MgaXMgY3VycmVudGx5ICJ1bnNwZWNpZmllZCIgZm9yIGEgY29ubmVjdGVkIHNvY2tldCwKKyAgICAgICAgIyBzbyB3ZSBkb24ndCBleGFtaW5lIGl0CisgICAgICAgIHBhc3MKKworCitjbGFzcyBTZW5kcmVjdm1zZ1NlcnZlclRpbWVvdXRCYXNlKFNlbmRyZWN2bXNnQmFzZSk6CisgICAgIyBCYXNlIGNsYXNzIHRvIHNldCBhIHRpbWVvdXQgb24gc2VydmVyJ3Mgc29ja2V0LgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcigpLnNldFVwKCkKKyAgICAgICAgc2VsZi5zZXJ2X3NvY2suc2V0dGltZW91dChzZWxmLmZhaWxfdGltZW91dCkKKworCitjbGFzcyBTZW5kbXNnVGVzdHMoU2VuZHJlY3Ztc2dTZXJ2ZXJUaW1lb3V0QmFzZSk6CisgICAgIyBUZXN0cyBmb3Igc2VuZG1zZygpIHdoaWNoIGNhbiB1c2UgYW55IHNvY2tldCB0eXBlIGFuZCBkbyBub3QKKyAgICAjIGludm9sdmUgcmVjdm1zZygpIG9yIHJlY3Ztc2dfaW50bygpLgorCisgICAgZGVmIHRlc3RTZW5kbXNnKHNlbGYpOgorICAgICAgICAjIFNlbmQgYSBzaW1wbGUgbWVzc2FnZSB3aXRoIHNlbmRtc2coKS4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNlcnZfc29jay5yZWN2KGxlbihNU0cpKSwgTVNHKQorCisgICAgZGVmIF90ZXN0U2VuZG1zZyhzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNlbmRtc2dUb1NlcnZlcihbTVNHXSksIGxlbihNU0cpKQorCisgICAgZGVmIHRlc3RTZW5kbXNnRGF0YUdlbmVyYXRvcihzZWxmKToKKyAgICAgICAgIyBTZW5kIGZyb20gYnVmZmVyIG9idGFpbmVkIGZyb20gYSBnZW5lcmF0b3IgKG5vdCBhIHNlcXVlbmNlKS4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNlcnZfc29jay5yZWN2KGxlbihNU0cpKSwgTVNHKQorCisgICAgZGVmIF90ZXN0U2VuZG1zZ0RhdGFHZW5lcmF0b3Ioc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoKG8gZm9yIG8gaW4gW01TR10pKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSkKKworICAgIGRlZiB0ZXN0U2VuZG1zZ0FuY2lsbGFyeUdlbmVyYXRvcihzZWxmKToKKyAgICAgICAgIyBHYXRoZXIgKGVtcHR5KSBhbmNpbGxhcnkgZGF0YSBmcm9tIGEgZ2VuZXJhdG9yLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2Vydl9zb2NrLnJlY3YobGVuKE1TRykpLCBNU0cpCisKKyAgICBkZWYgX3Rlc3RTZW5kbXNnQW5jaWxsYXJ5R2VuZXJhdG9yKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2VuZG1zZ1RvU2VydmVyKFtNU0ddLCAobyBmb3IgbyBpbiBbXSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpKQorCisgICAgZGVmIHRlc3RTZW5kbXNnQXJyYXkoc2VsZik6CisgICAgICAgICMgU2VuZCBkYXRhIGZyb20gYW4gYXJyYXkgaW5zdGVhZCBvZiB0aGUgdXN1YWwgYnl0ZXMgb2JqZWN0LgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2Vydl9zb2NrLnJlY3YobGVuKE1TRykpLCBNU0cpCisKKyAgICBkZWYgX3Rlc3RTZW5kbXNnQXJyYXkoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW2FycmF5LmFycmF5KCJCIiwgTVNHKV0pLAorICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpKQorCisgICAgZGVmIHRlc3RTZW5kbXNnR2F0aGVyKHNlbGYpOgorICAgICAgICAjIFNlbmQgbWVzc2FnZSBkYXRhIGZyb20gbW9yZSB0aGFuIG9uZSBidWZmZXIgKGdhdGhlciB3cml0ZSkuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2X3NvY2sucmVjdihsZW4oTVNHKSksIE1TRykKKworICAgIGRlZiBfdGVzdFNlbmRtc2dHYXRoZXIoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW01TR1s6M10sIE1TR1szOl1dKSwgbGVuKE1TRykpCisKKyAgICBkZWYgdGVzdFNlbmRtc2dCYWRBcmdzKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgc2VuZG1zZygpIHJlamVjdHMgaW52YWxpZCBhcmd1bWVudHMuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2X3NvY2sucmVjdigxMDAwKSwgYiJkb25lIikKKworICAgIGRlZiBfdGVzdFNlbmRtc2dCYWRBcmdzKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuY2xpX3NvY2suc2VuZG1zZykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYiJub3QgaW4gYW4gaXRlcmFibGUiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2VuZG1zZ1RvU2VydmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QoKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW29iamVjdCgpXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TRywgb2JqZWN0KCldKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2VuZG1zZ1RvU2VydmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbTVNHXSwgb2JqZWN0KCkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtNU0ddLCBbXSwgb2JqZWN0KCkpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtNU0ddLCBbXSwgMCwgb2JqZWN0KCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKGIiZG9uZSIpCisKKyAgICBkZWYgdGVzdFNlbmRtc2dCYWRDbXNnKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgaW52YWxpZCBhbmNpbGxhcnkgZGF0YSBpdGVtcyBhcmUgcmVqZWN0ZWQuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2X3NvY2sucmVjdigxMDAwKSwgYiJkb25lIikKKworICAgIGRlZiBfdGVzdFNlbmRtc2dCYWRDbXNnKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2VuZG1zZ1RvU2VydmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbTVNHXSwgW29iamVjdCgpXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TR10sIFsob2JqZWN0KCksIDAsIGIiZGF0YSIpXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TR10sIFsoMCwgb2JqZWN0KCksIGIiZGF0YSIpXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TR10sIFsoMCwgMCwgb2JqZWN0KCkpXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TR10sIFsoMCwgMCldKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2VuZG1zZ1RvU2VydmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbTVNHXSwgWygwLCAwLCBiImRhdGEiLCA0MildKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihiImRvbmUiKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIikKKyAgICBkZWYgdGVzdFNlbmRtc2dCYWRNdWx0aUNtc2coc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCBpbnZhbGlkIGFuY2lsbGFyeSBkYXRhIGl0ZW1zIGFyZSByZWplY3RlZCB3aGVuCisgICAgICAgICMgbW9yZSB0aGFuIG9uZSBpdGVtIGlzIHByZXNlbnQuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2X3NvY2sucmVjdigxMDAwKSwgYiJkb25lIikKKworICAgIEB0ZXN0U2VuZG1zZ0JhZE11bHRpQ21zZy5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFNlbmRtc2dCYWRNdWx0aUNtc2coc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtNU0ddLCBbMCwgMCwgYiIiXSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlbmRtc2dUb1NlcnZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TR10sIFsoMCwgMCwgYiIiKSwgb2JqZWN0KCldKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihiImRvbmUiKQorCisgICAgZGVmIHRlc3RTZW5kbXNnRXhjZXNzQ21zZ1JlamVjdChzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHNlbmRtc2coKSByZWplY3RzIGV4Y2VzcyBhbmNpbGxhcnkgZGF0YSBpdGVtcworICAgICAgICAjIHdoZW4gdGhlIG51bWJlciB0aGF0IGNhbiBiZSBzZW50IGlzIGxpbWl0ZWQuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2X3NvY2sucmVjdigxMDAwKSwgYiJkb25lIikKKworICAgIGRlZiBfdGVzdFNlbmRtc2dFeGNlc3NDbXNnUmVqZWN0KHNlbGYpOgorICAgICAgICBpZiBub3QgaGFzYXR0cihzb2NrZXQsICJDTVNHX1NQQUNFIik6CisgICAgICAgICAgICAjIENhbiBvbmx5IHNlbmQgb25lIGl0ZW0KKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yKSBhcyBjbToKKyAgICAgICAgICAgICAgICBzZWxmLnNlbmRtc2dUb1NlcnZlcihbTVNHXSwgWygwLCAwLCBiIiIpLCAoMCwgMCwgYiIiKV0pCisgICAgICAgICAgICBzZWxmLmFzc2VydElzTm9uZShjbS5leGNlcHRpb24uZXJybm8pCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKGIiZG9uZSIpCisKKyAgICBkZWYgdGVzdFNlbmRtc2dBZnRlckNsb3NlKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgc2VuZG1zZygpIGZhaWxzIG9uIGEgY2xvc2VkIHNvY2tldC4KKyAgICAgICAgcGFzcworCisgICAgZGVmIF90ZXN0U2VuZG1zZ0FmdGVyQ2xvc2Uoc2VsZik6CisgICAgICAgIHNlbGYuY2xpX3NvY2suY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHNlbGYuc2VuZG1zZ1RvU2VydmVyLCBbTVNHXSkKKworCitjbGFzcyBTZW5kbXNnU3RyZWFtVGVzdHMoU2VuZG1zZ1Rlc3RzKToKKyAgICAjIFRlc3RzIGZvciBzZW5kbXNnKCkgd2hpY2ggcmVxdWlyZSBhIHN0cmVhbSBzb2NrZXQgYW5kIGRvIG5vdAorICAgICMgaW52b2x2ZSByZWN2bXNnKCkgb3IgcmVjdm1zZ19pbnRvKCkuCisKKyAgICBkZWYgdGVzdFNlbmRtc2dFeHBsaWNpdE5vbmVBZGRyKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgcGVlciBhZGRyZXNzIGNhbiBiZSBzcGVjaWZpZWQgYXMgTm9uZS4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNlcnZfc29jay5yZWN2KGxlbihNU0cpKSwgTVNHKQorCisgICAgZGVmIF90ZXN0U2VuZG1zZ0V4cGxpY2l0Tm9uZUFkZHIoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW01TR10sIFtdLCAwLCBOb25lKSwgbGVuKE1TRykpCisKKyAgICBkZWYgdGVzdFNlbmRtc2dUaW1lb3V0KHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgdGltZW91dCB3b3JrcyB3aXRoIHNlbmRtc2coKS4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnNlcnZfc29jay5yZWN2KDUxMiksIGIiYSIqNTEyKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisKKyAgICBkZWYgX3Rlc3RTZW5kbXNnVGltZW91dChzZWxmKToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5jbGlfc29jay5zZXR0aW1lb3V0KDAuMDMpCisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC50aW1lb3V0KToKKyAgICAgICAgICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgICAgICAgICBzZWxmLnNlbmRtc2dUb1NlcnZlcihbYiJhIio1MTJdKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgc2VsZi5taXNjX2V2ZW50LnNldCgpCisKKyAgICAjIFhYWDogd291bGQgYmUgbmljZSB0byBoYXZlIG1vcmUgdGVzdHMgZm9yIHNlbmRtc2cgZmxhZ3MgYXJndW1lbnQuCisKKyAgICAjIExpbnV4IHN1cHBvcnRzIE1TR19ET05UV0FJVCB3aGVuIHNlbmRpbmcsIGJ1dCBpbiBnZW5lcmFsLCBpdAorICAgICMgb25seSB3b3JrcyB3aGVuIHJlY2VpdmluZy4gIENvdWxkIGFkZCBvdGhlciBwbGF0Zm9ybXMgaWYgdGhleQorICAgICMgc3VwcG9ydCBpdCB0b28uCisgICAgQHNraXBXaXRoQ2xpZW50SWYoc3lzLnBsYXRmb3JtIG5vdCBpbiB7ImxpbnV4MiJ9LAorICAgICAgICAgICAgICAgICAgICAgICJNU0dfRE9OVFdBSVQgbm90IGtub3duIHRvIHdvcmsgb24gdGhpcyBwbGF0Zm9ybSB3aGVuICIKKyAgICAgICAgICAgICAgICAgICAgICAic2VuZGluZyIpCisgICAgZGVmIHRlc3RTZW5kbXNnRG9udFdhaXQoc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCBNU0dfRE9OVFdBSVQgaW4gZmxhZ3MgY2F1c2VzIG5vbi1ibG9ja2luZyBiZWhhdmlvdXIuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zZXJ2X3NvY2sucmVjdig1MTIpLCBiImEiKjUxMikKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorCisgICAgQHRlc3RTZW5kbXNnRG9udFdhaXQuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RTZW5kbXNnRG9udFdhaXQoc2VsZik6CisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yKSBhcyBjbToKKyAgICAgICAgICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgICAgICAgICBzZWxmLnNlbmRtc2dUb1NlcnZlcihbYiJhIio1MTJdLCBbXSwgc29ja2V0Lk1TR19ET05UV0FJVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oY20uZXhjZXB0aW9uLmVycm5vLAorICAgICAgICAgICAgICAgICAgICAgICAgICAoZXJybm8uRUFHQUlOLCBlcnJuby5FV09VTERCTE9DSykpCisgICAgICAgIGZpbmFsbHk6CisgICAgICAgICAgICBzZWxmLm1pc2NfZXZlbnQuc2V0KCkKKworCitjbGFzcyBTZW5kbXNnQ29ubmVjdGlvbmxlc3NUZXN0cyhTZW5kbXNnVGVzdHMpOgorICAgICMgVGVzdHMgZm9yIHNlbmRtc2coKSB3aGljaCByZXF1aXJlIGEgY29ubmVjdGlvbmxlc3MtbW9kZQorICAgICMgKGUuZy4gZGF0YWdyYW0pIHNvY2tldCwgYW5kIGRvIG5vdCBpbnZvbHZlIHJlY3Ztc2coKSBvcgorICAgICMgcmVjdm1zZ19pbnRvKCkuCisKKyAgICBkZWYgdGVzdFNlbmRtc2dOb0Rlc3RBZGRyKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgc2VuZG1zZygpIGZhaWxzIHdoZW4gbm8gZGVzdGluYXRpb24gYWRkcmVzcyBpcworICAgICAgICAjIGdpdmVuIGZvciB1bmNvbm5lY3RlZCBzb2NrZXQuCisgICAgICAgIHBhc3MKKworICAgIGRlZiBfdGVzdFNlbmRtc2dOb0Rlc3RBZGRyKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHNlbGYuY2xpX3NvY2suc2VuZG1zZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW01TR10pCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvciwgc2VsZi5jbGlfc29jay5zZW5kbXNnLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbTVNHXSwgW10sIDAsIE5vbmUpCisKKworY2xhc3MgUmVjdm1zZ0dlbmVyaWNUZXN0cyhTZW5kcmVjdm1zZ0Jhc2UpOgorICAgICMgVGVzdHMgZm9yIHJlY3Ztc2coKSB3aGljaCBjYW4gYWxzbyBiZSBlbXVsYXRlZCB1c2luZworICAgICMgcmVjdm1zZ19pbnRvKCksIGFuZCBjYW4gdXNlIGFueSBzb2NrZXQgdHlwZS4KKworICAgIGRlZiB0ZXN0UmVjdm1zZyhzZWxmKToKKyAgICAgICAgIyBSZWNlaXZlIGEgc2ltcGxlIG1lc3NhZ2Ugd2l0aCByZWN2bXNnW19pbnRvXSgpLgorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssIGxlbihNU0cpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgIGRlZiBfdGVzdFJlY3Ztc2coc2VsZik6CisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIGRlZiB0ZXN0UmVjdm1zZ0V4cGxpY2l0RGVmYXVsdHMoc2VsZik6CisgICAgICAgICMgVGVzdCByZWN2bXNnW19pbnRvXSgpIHdpdGggZGVmYXVsdCBhcmd1bWVudHMgcHJvdmlkZWQgZXhwbGljaXRseS4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIDAsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBNU0cpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlKQorCisgICAgZGVmIF90ZXN0UmVjdm1zZ0V4cGxpY2l0RGVmYXVsdHMoc2VsZik6CisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIGRlZiB0ZXN0UmVjdm1zZ1Nob3J0ZXIoc2VsZik6CisgICAgICAgICMgUmVjZWl2ZSBhIG1lc3NhZ2Ugc21hbGxlciB0aGFuIGJ1ZmZlci4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRykgKyA0MikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICBkZWYgX3Rlc3RSZWN2bXNnU2hvcnRlcihzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgIyBGcmVlQlNEIDwgOCBkb2Vzbid0IGFsd2F5cyBzZXQgdGhlIE1TR19UUlVOQyBmbGFnIHdoZW4gYSB0cnVuY2F0ZWQKKyAgICAjIGRhdGFncmFtIGlzIHJlY2VpdmVkIChpc3N1ZSAjMTMwMDEpLgorICAgIEBzdXBwb3J0LnJlcXVpcmVzX2ZyZWVic2RfdmVyc2lvbig4KQorICAgIGRlZiB0ZXN0UmVjdm1zZ1RydW5jKHNlbGYpOgorICAgICAgICAjIFJlY2VpdmUgcGFydCBvZiBtZXNzYWdlLCBjaGVjayBmb3IgdHJ1bmNhdGlvbiBpbmRpY2F0b3JzLgorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSAtIDMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBNU0dbOi0zXSkKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPUZhbHNlKQorCisgICAgQHN1cHBvcnQucmVxdWlyZXNfZnJlZWJzZF92ZXJzaW9uKDgpCisgICAgZGVmIF90ZXN0UmVjdm1zZ1RydW5jKHNlbGYpOgorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBkZWYgdGVzdFJlY3Ztc2dTaG9ydEFuY2lsbGFyeUJ1ZihzZWxmKToKKyAgICAgICAgIyBUZXN0IGFuY2lsbGFyeSBkYXRhIGJ1ZmZlciB0b28gc21hbGwgdG8gaG9sZCBhbnkgYW5jaWxsYXJ5IGRhdGEuCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAxKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgIGRlZiBfdGVzdFJlY3Ztc2dTaG9ydEFuY2lsbGFyeUJ1ZihzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgZGVmIHRlc3RSZWN2bXNnTG9uZ0FuY2lsbGFyeUJ1ZihzZWxmKToKKyAgICAgICAgIyBUZXN0IGxhcmdlIGFuY2lsbGFyeSBkYXRhIGJ1ZmZlci4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIDEwMjQwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgIGRlZiBfdGVzdFJlY3Ztc2dMb25nQW5jaWxsYXJ5QnVmKHNlbGYpOgorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBkZWYgdGVzdFJlY3Ztc2dBZnRlckNsb3NlKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgcmVjdm1zZ1tfaW50b10oKSBmYWlscyBvbiBhIGNsb3NlZCBzb2NrZXQuCisgICAgICAgIHNlbGYuc2Vydl9zb2NrLmNsb3NlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc29ja2V0LmVycm9yLCBzZWxmLmRvUmVjdm1zZywgc2VsZi5zZXJ2X3NvY2ssIDEwMjQpCisKKyAgICBkZWYgX3Rlc3RSZWN2bXNnQWZ0ZXJDbG9zZShzZWxmKToKKyAgICAgICAgcGFzcworCisgICAgZGVmIHRlc3RSZWN2bXNnVGltZW91dChzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHRpbWVvdXQgd29ya3MuCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHNlbGYuc2Vydl9zb2NrLnNldHRpbWVvdXQoMC4wMykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC50aW1lb3V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5kb1JlY3Ztc2csIHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSkKKyAgICAgICAgZmluYWxseToKKyAgICAgICAgICAgIHNlbGYubWlzY19ldmVudC5zZXQoKQorCisgICAgZGVmIF90ZXN0UmVjdm1zZ1RpbWVvdXQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiTVNHX1BFRUsiKQorICAgIGRlZiB0ZXN0UmVjdm1zZ1BlZWsoc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCBNU0dfUEVFSyBpbiBmbGFncyBlbmFibGVzIGV4YW1pbmF0aW9uIG9mIHBlbmRpbmcKKyAgICAgICAgIyBkYXRhIHdpdGhvdXQgY29uc3VtaW5nIGl0LgorCisgICAgICAgICMgUmVjZWl2ZSBwYXJ0IG9mIGRhdGEgd2l0aCBNU0dfUEVFSy4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRykgLSAzLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0Lk1TR19QRUVLKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHWzotM10pCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICAjIElnbm9yaW5nIE1TR19UUlVOQyBoZXJlIChzbyB0aGlzIHRlc3QgaXMgdGhlIHNhbWUgZm9yIHN0cmVhbQorICAgICAgICAjIGFuZCBkYXRhZ3JhbSBzb2NrZXRzKS4gIFNvbWUgd29yZGluZyBpbiBQT1NJWCBzZWVtcyB0bworICAgICAgICAjIHN1Z2dlc3QgdGhhdCBpdCBuZWVkbid0IGJlIHNldCB3aGVuIHBlZWtpbmcsIGJ1dCB0aGF0IG1heQorICAgICAgICAjIGp1c3QgYmUgYSBzbGlwLgorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1GYWxzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGlnbm9yZT1nZXRhdHRyKHNvY2tldCwgIk1TR19UUlVOQyIsIDApKQorCisgICAgICAgICMgUmVjZWl2ZSBhbGwgZGF0YSB3aXRoIE1TR19QRUVLLgorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5NU0dfUEVFSykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICAgICAgIyBDaGVjayB0aGF0IHRoZSBzYW1lIGRhdGEgY2FuIHN0aWxsIGJlIHJlY2VpdmVkIG5vcm1hbGx5LgorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssIGxlbihNU0cpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgIEB0ZXN0UmVjdm1zZ1BlZWsuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RSZWN2bXNnUGVlayhzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAic2VuZG1zZyIpCisgICAgZGVmIHRlc3RSZWN2bXNnRnJvbVNlbmRtc2coc2VsZik6CisgICAgICAgICMgVGVzdCByZWNlaXZpbmcgd2l0aCByZWN2bXNnW19pbnRvXSgpIHdoZW4gbWVzc2FnZSBpcyBzZW50CisgICAgICAgICMgdXNpbmcgc2VuZG1zZygpLgorICAgICAgICBzZWxmLnNlcnZfc29jay5zZXR0aW1lb3V0KHNlbGYuZmFpbF90aW1lb3V0KQorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssIGxlbihNU0cpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgIEB0ZXN0UmVjdm1zZ0Zyb21TZW5kbXNnLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0UmVjdm1zZ0Zyb21TZW5kbXNnKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc2VuZG1zZ1RvU2VydmVyKFtNU0dbOjNdLCBNU0dbMzpdXSksIGxlbihNU0cpKQorCisKK2NsYXNzIFJlY3Ztc2dHZW5lcmljU3RyZWFtVGVzdHMoUmVjdm1zZ0dlbmVyaWNUZXN0cyk6CisgICAgIyBUZXN0cyB3aGljaCByZXF1aXJlIGEgc3RyZWFtIHNvY2tldCBhbmQgY2FuIHVzZSBlaXRoZXIgcmVjdm1zZygpCisgICAgIyBvciByZWN2bXNnX2ludG8oKS4KKworICAgIGRlZiB0ZXN0UmVjdm1zZ0VPRihzZWxmKToKKyAgICAgICAgIyBSZWNlaXZlIGVuZC1vZi1zdHJlYW0gaW5kaWNhdG9yIChiIiIsIHBlZXIgc29ja2V0IGNsb3NlZCkuCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywgMTAyNCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIGIiIikKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPU5vbmUpICMgTWlnaHQgbm90IGhhdmUgZW5kLW9mLXJlY29yZCBtYXJrZXIKKworICAgIGRlZiBfdGVzdFJlY3Ztc2dFT0Yoc2VsZik6CisgICAgICAgIHNlbGYuY2xpX3NvY2suY2xvc2UoKQorCisgICAgZGVmIHRlc3RSZWN2bXNnT3ZlcmZsb3coc2VsZik6CisgICAgICAgICMgUmVjZWl2ZSBhIG1lc3NhZ2UgaW4gbW9yZSB0aGFuIG9uZSBjaHVuay4KKyAgICAgICAgc2VnMSwgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSAtIDMpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1GYWxzZSkKKworICAgICAgICBzZWcyLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLCAxMDI0KQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgICAgICBtc2cgPSBzZWcxICsgc2VnMgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorCisgICAgZGVmIF90ZXN0UmVjdm1zZ092ZXJmbG93KHNlbGYpOgorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKworY2xhc3MgUmVjdm1zZ1Rlc3RzKFJlY3Ztc2dHZW5lcmljVGVzdHMpOgorICAgICMgVGVzdHMgZm9yIHJlY3Ztc2coKSB3aGljaCBjYW4gdXNlIGFueSBzb2NrZXQgdHlwZS4KKworICAgIGRlZiB0ZXN0UmVjdm1zZ0JhZEFyZ3Moc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCByZWN2bXNnKCkgcmVqZWN0cyBpbnZhbGlkIGFyZ3VtZW50cy4KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAtMSwgMCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIC0xLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2csCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtieXRlYXJyYXkoMTApXSwgMCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnLAorICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QoKSwgMCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnLAorICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgb2JqZWN0KCksIDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIDAsIG9iamVjdCgpKQorCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLnNlcnZfc29jay5yZWN2bXNnKGxlbihNU0cpLCAwLCAwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgIGRlZiBfdGVzdFJlY3Ztc2dCYWRBcmdzKHNlbGYpOgorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKworY2xhc3MgUmVjdm1zZ0ludG9UZXN0cyhSZWN2bXNnSW50b01peGluLCBSZWN2bXNnR2VuZXJpY1Rlc3RzKToKKyAgICAjIFRlc3RzIGZvciByZWN2bXNnX2ludG8oKSB3aGljaCBjYW4gdXNlIGFueSBzb2NrZXQgdHlwZS4KKworICAgIGRlZiB0ZXN0UmVjdm1zZ0ludG9CYWRBcmdzKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgcmVjdm1zZ19pbnRvKCkgcmVqZWN0cyBpbnZhbGlkIGFyZ3VtZW50cy4KKyAgICAgICAgYnVmID0gYnl0ZWFycmF5KGxlbihNU0cpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2dfaW50bykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnX2ludG8sCisgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAwLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2dfaW50bywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmLCAwLCAwKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2dfaW50bywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW29iamVjdCgpXSwgMCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnX2ludG8sCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtiIkknbSBub3Qgd3JpdGFibGUiXSwgMCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLnNlcnZfc29jay5yZWN2bXNnX2ludG8sCisgICAgICAgICAgICAgICAgICAgICAgICAgIFtidWYsIG9iamVjdCgpXSwgMCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZ19pbnRvLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbYnVmXSwgLTEsIDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZ19pbnRvLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbYnVmXSwgb2JqZWN0KCksIDApCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5zZXJ2X3NvY2sucmVjdm1zZ19pbnRvLAorICAgICAgICAgICAgICAgICAgICAgICAgICBbYnVmXSwgMCwgb2JqZWN0KCkpCisKKyAgICAgICAgbmJ5dGVzLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2dfaW50byhbYnVmXSwgMCwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuYnl0ZXMsIGxlbihNU0cpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGJ1ZiwgYnl0ZWFycmF5KE1TRykpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlKQorCisgICAgZGVmIF90ZXN0UmVjdm1zZ0ludG9CYWRBcmdzKHNlbGYpOgorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBkZWYgdGVzdFJlY3Ztc2dJbnRvR2VuZXJhdG9yKHNlbGYpOgorICAgICAgICAjIFJlY2VpdmUgaW50byBidWZmZXIgb2J0YWluZWQgZnJvbSBhIGdlbmVyYXRvciAobm90IGEgc2VxdWVuY2UpLgorICAgICAgICBidWYgPSBieXRlYXJyYXkobGVuKE1TRykpCisgICAgICAgIG5ieXRlcywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLnNlcnZfc29jay5yZWN2bXNnX2ludG8oCisgICAgICAgICAgICAobyBmb3IgbyBpbiBbYnVmXSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmJ5dGVzLCBsZW4oTVNHKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChidWYsIGJ5dGVhcnJheShNU0cpKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSkKKworICAgIGRlZiBfdGVzdFJlY3Ztc2dJbnRvR2VuZXJhdG9yKHNlbGYpOgorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBkZWYgdGVzdFJlY3Ztc2dJbnRvQXJyYXkoc2VsZik6CisgICAgICAgICMgUmVjZWl2ZSBpbnRvIGFuIGFycmF5IHJhdGhlciB0aGFuIHRoZSB1c3VhbCBieXRlYXJyYXkuCisgICAgICAgIGJ1ZiA9IGFycmF5LmFycmF5KCJCIiwgWzBdICogbGVuKE1TRykpCisgICAgICAgIG5ieXRlcywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLnNlcnZfc29jay5yZWN2bXNnX2ludG8oW2J1Zl0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmJ5dGVzLCBsZW4oTVNHKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChidWYudG9ieXRlcygpLCBNU0cpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlKQorCisgICAgZGVmIF90ZXN0UmVjdm1zZ0ludG9BcnJheShzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgZGVmIHRlc3RSZWN2bXNnSW50b1NjYXR0ZXIoc2VsZik6CisgICAgICAgICMgUmVjZWl2ZSBpbnRvIG11bHRpcGxlIGJ1ZmZlcnMgKHNjYXR0ZXIgd3JpdGUpLgorICAgICAgICBiMSA9IGJ5dGVhcnJheShiIi0tLS0iKQorICAgICAgICBiMiA9IGJ5dGVhcnJheShiIjAxMjM0NTY3ODkiKQorICAgICAgICBiMyA9IGJ5dGVhcnJheShiIi0tLS0tLS0tLS0tLS0tIikKKyAgICAgICAgbmJ5dGVzLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuc2Vydl9zb2NrLnJlY3Ztc2dfaW50bygKKyAgICAgICAgICAgIFtiMSwgbWVtb3J5dmlldyhiMilbMjo5XSwgYjNdKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ieXRlcywgbGVuKGIiTWFyeSBoYWQgYSBsaXR0bGUgbGFtYiIpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGIxLCBieXRlYXJyYXkoYiJNYXJ5IikpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYjIsIGJ5dGVhcnJheShiIjAxIGhhZCBhIDkiKSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChiMywgYnl0ZWFycmF5KGIibGl0dGxlIGxhbWItLS0iKSkKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYW5jZGF0YSwgW10pCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUpCisKKyAgICBkZWYgX3Rlc3RSZWN2bXNnSW50b1NjYXR0ZXIoc2VsZik6CisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKGIiTWFyeSBoYWQgYSBsaXR0bGUgbGFtYiIpCisKKworY2xhc3MgQ21zZ01hY3JvVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgorICAgICMgVGVzdCB0aGUgZnVuY3Rpb25zIENNU0dfTEVOKCkgYW5kIENNU0dfU1BBQ0UoKS4gIFRlc3RzCisgICAgIyBhc3N1bXB0aW9ucyB1c2VkIGJ5IHNlbmRtc2coKSBhbmQgcmVjdm1zZ1tfaW50b10oKSwgd2hpY2ggc2hhcmUKKyAgICAjIGNvZGUgd2l0aCB0aGVzZSBmdW5jdGlvbnMuCisKKyAgICAjIE1hdGNoIHRoZSBkZWZpbml0aW9uIGluIHNvY2tldG1vZHVsZS5jCisgICAgc29ja2xlbl90X2xpbWl0ID0gbWluKDB4N2ZmZmZmZmYsIF90ZXN0Y2FwaS5JTlRfTUFYKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX0xFTiIpCisgICAgZGVmIHRlc3RDTVNHX0xFTihzZWxmKToKKyAgICAgICAgIyBUZXN0IENNU0dfTEVOKCkgd2l0aCB2YXJpb3VzIHZhbGlkIGFuZCBpbnZhbGlkIHZhbHVlcywKKyAgICAgICAgIyBjaGVja2luZyB0aGUgYXNzdW1wdGlvbnMgdXNlZCBieSByZWN2bXNnKCkgYW5kIHNlbmRtc2coKS4KKyAgICAgICAgdG9vYmlnID0gc2VsZi5zb2NrbGVuX3RfbGltaXQgLSBzb2NrZXQuQ01TR19MRU4oMCkgKyAxCisgICAgICAgIHZhbHVlcyA9IGxpc3QocmFuZ2UoMjU3KSkgKyBsaXN0KHJhbmdlKHRvb2JpZyAtIDI1NywgdG9vYmlnKSkKKworICAgICAgICAjIHN0cnVjdCBjbXNnaGRyIGhhcyBhdCBsZWFzdCB0aHJlZSBtZW1iZXJzLCB0d28gb2Ygd2hpY2ggYXJlIGludHMKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKHNvY2tldC5DTVNHX0xFTigwKSwgYXJyYXkuYXJyYXkoImkiKS5pdGVtc2l6ZSAqIDIpCisgICAgICAgIGZvciBuIGluIHZhbHVlczoKKyAgICAgICAgICAgIHJldCA9IHNvY2tldC5DTVNHX0xFTihuKQorICAgICAgICAgICAgIyBUaGlzIGlzIGhvdyByZWN2bXNnKCkgY2FsY3VsYXRlcyB0aGUgZGF0YSBzaXplCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJldCAtIHNvY2tldC5DTVNHX0xFTigwKSwgbikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKHJldCwgc2VsZi5zb2NrbGVuX3RfbGltaXQpCisKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgc29ja2V0LkNNU0dfTEVOLCAtMSkKKyAgICAgICAgIyBzZW5kbXNnKCkgc2hhcmVzIGNvZGUgd2l0aCB0aGVzZSBmdW5jdGlvbnMsIGFuZCByZXF1aXJlcworICAgICAgICAjIHRoYXQgaXQgcmVqZWN0IHZhbHVlcyBvdmVyIHRoZSBsaW1pdC4KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgc29ja2V0LkNNU0dfTEVOLCB0b29iaWcpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHNvY2tldC5DTVNHX0xFTiwgc3lzLm1heHNpemUpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkNNU0dfU1BBQ0UiKQorICAgIGRlZiB0ZXN0Q01TR19TUEFDRShzZWxmKToKKyAgICAgICAgIyBUZXN0IENNU0dfU1BBQ0UoKSB3aXRoIHZhcmlvdXMgdmFsaWQgYW5kIGludmFsaWQgdmFsdWVzLAorICAgICAgICAjIGNoZWNraW5nIHRoZSBhc3N1bXB0aW9ucyB1c2VkIGJ5IHNlbmRtc2coKS4KKyAgICAgICAgdG9vYmlnID0gc2VsZi5zb2NrbGVuX3RfbGltaXQgLSBzb2NrZXQuQ01TR19TUEFDRSgxKSArIDEKKyAgICAgICAgdmFsdWVzID0gbGlzdChyYW5nZSgyNTcpKSArIGxpc3QocmFuZ2UodG9vYmlnIC0gMjU3LCB0b29iaWcpKQorCisgICAgICAgIGxhc3QgPSBzb2NrZXQuQ01TR19TUEFDRSgwKQorICAgICAgICAjIHN0cnVjdCBjbXNnaGRyIGhhcyBhdCBsZWFzdCB0aHJlZSBtZW1iZXJzLCB0d28gb2Ygd2hpY2ggYXJlIGludHMKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKGxhc3QsIGFycmF5LmFycmF5KCJpIikuaXRlbXNpemUgKiAyKQorICAgICAgICBmb3IgbiBpbiB2YWx1ZXM6CisgICAgICAgICAgICByZXQgPSBzb2NrZXQuQ01TR19TUEFDRShuKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwocmV0LCBsYXN0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwocmV0LCBzb2NrZXQuQ01TR19MRU4obikpCisgICAgICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChyZXQsIG4gKyBzb2NrZXQuQ01TR19MRU4oMCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChyZXQsIHNlbGYuc29ja2xlbl90X2xpbWl0KQorICAgICAgICAgICAgbGFzdCA9IHJldAorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE92ZXJmbG93RXJyb3IsIHNvY2tldC5DTVNHX1NQQUNFLCAtMSkKKyAgICAgICAgIyBzZW5kbXNnKCkgc2hhcmVzIGNvZGUgd2l0aCB0aGVzZSBmdW5jdGlvbnMsIGFuZCByZXF1aXJlcworICAgICAgICAjIHRoYXQgaXQgcmVqZWN0IHZhbHVlcyBvdmVyIHRoZSBsaW1pdC4KKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgc29ja2V0LkNNU0dfU1BBQ0UsIHRvb2JpZykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgc29ja2V0LkNNU0dfU1BBQ0UsIHN5cy5tYXhzaXplKQorCisKK2NsYXNzIFNDTVJpZ2h0c1Rlc3QoU2VuZHJlY3Ztc2dTZXJ2ZXJUaW1lb3V0QmFzZSk6CisgICAgIyBUZXN0cyBmb3IgZmlsZSBkZXNjcmlwdG9yIHBhc3Npbmcgb24gVW5peC1kb21haW4gc29ja2V0cy4KKworICAgICMgSW52YWxpZCBmaWxlIGRlc2NyaXB0b3IgdmFsdWUgdGhhdCdzIHVubGlrZWx5IHRvIGV2YWx1YXRlIHRvIGEKKyAgICAjIHJlYWwgRkQgZXZlbiBpZiBvbmUgb2YgaXRzIGJ5dGVzIGlzIHJlcGxhY2VkIHdpdGggYSBkaWZmZXJlbnQKKyAgICAjIHZhbHVlICh3aGljaCBzaG91bGRuJ3QgYWN0dWFsbHkgaGFwcGVuKS4KKyAgICBiYWRmZCA9IC0weDU1NTUKKworICAgIGRlZiBuZXdGRHMoc2VsZiwgbik6CisgICAgICAgICMgUmV0dXJuIGEgbGlzdCBvZiBuIGZpbGUgZGVzY3JpcHRvcnMgZm9yIG5ld2x5LWNyZWF0ZWQgZmlsZXMKKyAgICAgICAgIyBjb250YWluaW5nIHRoZWlyIGxpc3QgaW5kaWNlcyBhcyBBU0NJSSBudW1iZXJzLgorICAgICAgICBmZHMgPSBbXQorICAgICAgICBmb3IgaSBpbiByYW5nZShuKToKKyAgICAgICAgICAgIGZkLCBwYXRoID0gdGVtcGZpbGUubWtzdGVtcCgpCisgICAgICAgICAgICBzZWxmLmFkZENsZWFudXAob3MudW5saW5rLCBwYXRoKQorICAgICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKG9zLmNsb3NlLCBmZCkKKyAgICAgICAgICAgIG9zLndyaXRlKGZkLCBzdHIoaSkuZW5jb2RlKCkpCisgICAgICAgICAgICBmZHMuYXBwZW5kKGZkKQorICAgICAgICByZXR1cm4gZmRzCisKKyAgICBkZWYgY2hlY2tGRHMoc2VsZiwgZmRzKToKKyAgICAgICAgIyBDaGVjayB0aGF0IHRoZSBmaWxlIGRlc2NyaXB0b3JzIGluIHRoZSBnaXZlbiBsaXN0IGNvbnRhaW4KKyAgICAgICAgIyB0aGVpciBjb3JyZWN0IGxpc3QgaW5kaWNlcyBhcyBBU0NJSSBudW1iZXJzLgorICAgICAgICBmb3IgbiwgZmQgaW4gZW51bWVyYXRlKGZkcyk6CisgICAgICAgICAgICBvcy5sc2VlayhmZCwgMCwgb3MuU0VFS19TRVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9zLnJlYWQoZmQsIDEwMjQpLCBzdHIobikuZW5jb2RlKCkpCisKKyAgICBkZWYgcmVnaXN0ZXJSZWN2bXNnUmVzdWx0KHNlbGYsIHJlc3VsdCk6CisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLmNsb3NlUmVjdm1zZ0ZEcywgcmVzdWx0KQorCisgICAgZGVmIGNsb3NlUmVjdm1zZ0ZEcyhzZWxmLCByZWN2bXNnX3Jlc3VsdCk6CisgICAgICAgICMgQ2xvc2UgYWxsIGZpbGUgZGVzY3JpcHRvcnMgc3BlY2lmaWVkIGluIHRoZSBhbmNpbGxhcnkgZGF0YQorICAgICAgICAjIG9mIHRoZSBnaXZlbiByZXR1cm4gdmFsdWUgZnJvbSByZWN2bXNnKCkgb3IgcmVjdm1zZ19pbnRvKCkuCisgICAgICAgIGZvciBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSBpbiByZWN2bXNnX3Jlc3VsdFsxXToKKyAgICAgICAgICAgIGlmIChjbXNnX2xldmVsID09IHNvY2tldC5TT0xfU09DS0VUIGFuZAorICAgICAgICAgICAgICAgICAgICBjbXNnX3R5cGUgPT0gc29ja2V0LlNDTV9SSUdIVFMpOgorICAgICAgICAgICAgICAgIGZkcyA9IGFycmF5LmFycmF5KCJpIikKKyAgICAgICAgICAgICAgICBmZHMuZnJvbWJ5dGVzKGNtc2dfZGF0YVs6CisgICAgICAgICAgICAgICAgICAgICAgICBsZW4oY21zZ19kYXRhKSAtIChsZW4oY21zZ19kYXRhKSAlIGZkcy5pdGVtc2l6ZSldKQorICAgICAgICAgICAgICAgIGZvciBmZCBpbiBmZHM6CisgICAgICAgICAgICAgICAgICAgIG9zLmNsb3NlKGZkKQorCisgICAgZGVmIGNyZWF0ZUFuZFNlbmRGRHMoc2VsZiwgbik6CisgICAgICAgICMgU2VuZCBuIG5ldyBmaWxlIGRlc2NyaXB0b3JzIGNyZWF0ZWQgYnkgbmV3RkRzKCkgdG8gdGhlCisgICAgICAgICMgc2VydmVyLCB3aXRoIHRoZSBjb25zdGFudCBNU0cgYXMgdGhlIG5vbi1hbmNpbGxhcnkgZGF0YS4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIHNlbGYuc2VuZG1zZ1RvU2VydmVyKFtNU0ddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhzb2NrZXQuU09MX1NPQ0tFVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LlNDTV9SSUdIVFMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5LmFycmF5KCJpIiwgc2VsZi5uZXdGRHMobikpKV0pLAorICAgICAgICAgICAgbGVuKE1TRykpCisKKyAgICBkZWYgY2hlY2tSZWN2bXNnRkRzKHNlbGYsIG51bWZkcywgcmVzdWx0LCBtYXhjbXNncz0xLCBpZ25vcmVmbGFncz0wKToKKyAgICAgICAgIyBDaGVjayB0aGF0IGNvbnN0YW50IE1TRyB3YXMgcmVjZWl2ZWQgd2l0aCBudW1mZHMgZmlsZQorICAgICAgICAjIGRlc2NyaXB0b3JzIGluIGEgbWF4aW11bSBvZiBtYXhjbXNncyBjb250cm9sIG1lc3NhZ2VzICh3aGljaAorICAgICAgICAjIG11c3QgY29udGFpbiBvbmx5IGNvbXBsZXRlIGludGVnZXJzKS4gIEJ5IGRlZmF1bHQsIGNoZWNrCisgICAgICAgICMgdGhhdCBNU0dfQ1RSVU5DIGlzIHVuc2V0LCBidXQgaWdub3JlIGFueSBmbGFncyBpbgorICAgICAgICAjIGlnbm9yZWZsYWdzLgorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gcmVzdWx0CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBNU0cpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlLCBjaGVja3Vuc2V0PXNvY2tldC5NU0dfQ1RSVU5DLAorICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlPWlnbm9yZWZsYWdzKQorCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShhbmNkYXRhLCBsaXN0KQorICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChsZW4oYW5jZGF0YSksIG1heGNtc2dzKQorICAgICAgICBmZHMgPSBhcnJheS5hcnJheSgiaSIpCisgICAgICAgIGZvciBpdGVtIGluIGFuY2RhdGE6CisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoaXRlbSwgdHVwbGUpCisgICAgICAgICAgICBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSA9IGl0ZW0KKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21zZ19sZXZlbCwgc29ja2V0LlNPTF9TT0NLRVQpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtc2dfdHlwZSwgc29ja2V0LlNDTV9SSUdIVFMpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoY21zZ19kYXRhLCBieXRlcykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGNtc2dfZGF0YSkgJSBTSVpFT0ZfSU5ULCAwKQorICAgICAgICAgICAgZmRzLmZyb21ieXRlcyhjbXNnX2RhdGEpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oZmRzKSwgbnVtZmRzKQorICAgICAgICBzZWxmLmNoZWNrRkRzKGZkcykKKworICAgIGRlZiB0ZXN0RkRQYXNzU2ltcGxlKHNlbGYpOgorICAgICAgICAjIFBhc3MgYSBzaW5nbGUgRkQgKGFycmF5IHJlYWQgZnJvbSBieXRlcyBvYmplY3QpLgorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0ZEcygxLCBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIDEwMjQwKSkKKworICAgIGRlZiBfdGVzdEZEUGFzc1NpbXBsZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIHNlbGYuc2VuZG1zZ1RvU2VydmVyKAorICAgICAgICAgICAgICAgIFtNU0ddLAorICAgICAgICAgICAgICAgIFsoc29ja2V0LlNPTF9TT0NLRVQsCisgICAgICAgICAgICAgICAgICBzb2NrZXQuU0NNX1JJR0hUUywKKyAgICAgICAgICAgICAgICAgIGFycmF5LmFycmF5KCJpIiwgc2VsZi5uZXdGRHMoMSkpLnRvYnl0ZXMoKSldKSwKKyAgICAgICAgICAgIGxlbihNU0cpKQorCisgICAgZGVmIHRlc3RNdWx0aXBsZUZEUGFzcyhzZWxmKToKKyAgICAgICAgIyBQYXNzIG11bHRpcGxlIEZEcyBpbiBhIHNpbmdsZSBhcnJheS4KKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dGRHMoNCwgc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAxMDI0MCkpCisKKyAgICBkZWYgX3Rlc3RNdWx0aXBsZUZEUGFzcyhzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVBbmRTZW5kRkRzKDQpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkNNU0dfU1BBQ0UiKQorICAgIGRlZiB0ZXN0RkRQYXNzQ01TR19TUEFDRShzZWxmKToKKyAgICAgICAgIyBUZXN0IHVzaW5nIENNU0dfU1BBQ0UoKSB0byBjYWxjdWxhdGUgYW5jaWxsYXJ5IGJ1ZmZlciBzaXplLgorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0ZEcygKKyAgICAgICAgICAgIDQsIHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5DTVNHX1NQQUNFKDQgKiBTSVpFT0ZfSU5UKSkpCisKKyAgICBAdGVzdEZEUGFzc0NNU0dfU1BBQ0UuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RGRFBhc3NDTVNHX1NQQUNFKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZUFuZFNlbmRGRHMoNCkKKworICAgIGRlZiB0ZXN0RkRQYXNzQ01TR19MRU4oc2VsZik6CisgICAgICAgICMgVGVzdCB1c2luZyBDTVNHX0xFTigpIHRvIGNhbGN1bGF0ZSBhbmNpbGxhcnkgYnVmZmVyIHNpemUuCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnRkRzKDEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LkNNU0dfTEVOKDQgKiBTSVpFT0ZfSU5UKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgUkZDIDM1NDIgc2F5cyBpbXBsZW1lbnRhdGlvbnMgbWF5IHNldAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIE1TR19DVFJVTkMgaWYgdGhlcmUgaXNuJ3QgZW5vdWdoIHNwYWNlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgZm9yIHRyYWlsaW5nIHBhZGRpbmcuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlnbm9yZWZsYWdzPXNvY2tldC5NU0dfQ1RSVU5DKQorCisgICAgZGVmIF90ZXN0RkRQYXNzQ01TR19MRU4oc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlQW5kU2VuZEZEcygxKQorCisgICAgIyBJc3N1ZSAjMTI5NTg6IFRoZSBmb2xsb3dpbmcgdGVzdCBoYXMgcHJvYmxlbXMgb24gTWFjIE9TIFgKKyAgICBAc3VwcG9ydC5hbnRpY2lwYXRlX2ZhaWx1cmUoc3lzLnBsYXRmb3JtID09ICJkYXJ3aW4iKQorICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiQ01TR19TUEFDRSIpCisgICAgZGVmIHRlc3RGRFBhc3NTZXBhcmF0ZShzZWxmKToKKyAgICAgICAgIyBQYXNzIHR3byBGRHMgaW4gdHdvIHNlcGFyYXRlIGFycmF5cy4gIEFycmF5cyBtYXkgYmUgY29tYmluZWQKKyAgICAgICAgIyBpbnRvIGEgc2luZ2xlIGNvbnRyb2wgbWVzc2FnZSBieSB0aGUgT1MuCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnRkRzKDIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSwgMTAyNDApLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhjbXNncz0yKQorCisgICAgQHRlc3RGRFBhc3NTZXBhcmF0ZS5jbGllbnRfc2tpcAorICAgIEBzdXBwb3J0LmFudGljaXBhdGVfZmFpbHVyZShzeXMucGxhdGZvcm0gPT0gImRhcndpbiIpCisgICAgZGVmIF90ZXN0RkRQYXNzU2VwYXJhdGUoc2VsZik6CisgICAgICAgIGZkMCwgZmQxID0gc2VsZi5uZXdGRHMoMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIHNlbGYuc2VuZG1zZ1RvU2VydmVyKFtNU0ddLCBbKHNvY2tldC5TT0xfU09DS0VULAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LlNDTV9SSUdIVFMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheS5hcnJheSgiaSIsIFtmZDBdKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzb2NrZXQuU09MX1NPQ0tFVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5TQ01fUklHSFRTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbZmQxXSkpXSksCisgICAgICAgICAgICBsZW4oTVNHKSkKKworICAgICMgSXNzdWUgIzEyOTU4OiBUaGUgZm9sbG93aW5nIHRlc3QgaGFzIHByb2JsZW1zIG9uIE1hYyBPUyBYCisgICAgQHN1cHBvcnQuYW50aWNpcGF0ZV9mYWlsdXJlKHN5cy5wbGF0Zm9ybSA9PSAiZGFyd2luIikKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkNNU0dfU1BBQ0UiKQorICAgIGRlZiB0ZXN0RkRQYXNzU2VwYXJhdGVNaW5TcGFjZShzZWxmKToKKyAgICAgICAgIyBQYXNzIHR3byBGRHMgaW4gdHdvIHNlcGFyYXRlIGFycmF5cywgcmVjZWl2aW5nIHRoZW0gaW50byB0aGUKKyAgICAgICAgIyBtaW5pbXVtIHNwYWNlIGZvciB0d28gYXJyYXlzLgorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0ZEcygyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywgbGVuKE1TRyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5DTVNHX1NQQUNFKFNJWkVPRl9JTlQpICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LkNNU0dfTEVOKFNJWkVPRl9JTlQpKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4Y21zZ3M9MiwgaWdub3JlZmxhZ3M9c29ja2V0Lk1TR19DVFJVTkMpCisKKyAgICBAdGVzdEZEUGFzc1NlcGFyYXRlTWluU3BhY2UuY2xpZW50X3NraXAKKyAgICBAc3VwcG9ydC5hbnRpY2lwYXRlX2ZhaWx1cmUoc3lzLnBsYXRmb3JtID09ICJkYXJ3aW4iKQorICAgIGRlZiBfdGVzdEZEUGFzc1NlcGFyYXRlTWluU3BhY2Uoc2VsZik6CisgICAgICAgIGZkMCwgZmQxID0gc2VsZi5uZXdGRHMoMikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgKKyAgICAgICAgICAgIHNlbGYuc2VuZG1zZ1RvU2VydmVyKFtNU0ddLCBbKHNvY2tldC5TT0xfU09DS0VULAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LlNDTV9SSUdIVFMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheS5hcnJheSgiaSIsIFtmZDBdKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzb2NrZXQuU09MX1NPQ0tFVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5TQ01fUklHSFRTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbZmQxXSkpXSksCisgICAgICAgICAgICBsZW4oTVNHKSkKKworICAgIGRlZiBzZW5kQW5jaWxsYXJ5SWZQb3NzaWJsZShzZWxmLCBtc2csIGFuY2RhdGEpOgorICAgICAgICAjIFRyeSB0byBzZW5kIG1zZyBhbmQgYW5jZGF0YSB0byBzZXJ2ZXIsIGJ1dCBpZiB0aGUgc3lzdGVtCisgICAgICAgICMgY2FsbCBmYWlscywganVzdCBzZW5kIG1zZyB3aXRoIG5vIGFuY2lsbGFyeSBkYXRhLgorICAgICAgICB0cnk6CisgICAgICAgICAgICBuYnl0ZXMgPSBzZWxmLnNlbmRtc2dUb1NlcnZlcihbbXNnXSwgYW5jZGF0YSkKKyAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBlOgorICAgICAgICAgICAgIyBDaGVjayB0aGF0IGl0IHdhcyB0aGUgc3lzdGVtIGNhbGwgdGhhdCBmYWlsZWQKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShlLmVycm5vLCBpbnQpCisgICAgICAgICAgICBuYnl0ZXMgPSBzZWxmLnNlbmRtc2dUb1NlcnZlcihbbXNnXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuYnl0ZXMsIGxlbihtc2cpKQorCisgICAgZGVmIHRlc3RGRFBhc3NFbXB0eShzZWxmKToKKyAgICAgICAgIyBUcnkgdG8gcGFzcyBhbiBlbXB0eSBGRCBhcnJheS4gIENhbiByZWNlaXZlIGVpdGhlciBubyBhcnJheQorICAgICAgICAjIG9yIGFuIGVtcHR5IGFycmF5LgorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0ZEcygwLCBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIDEwMjQwKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlZmxhZ3M9c29ja2V0Lk1TR19DVFJVTkMpCisKKyAgICBkZWYgX3Rlc3RGRFBhc3NFbXB0eShzZWxmKToKKyAgICAgICAgc2VsZi5zZW5kQW5jaWxsYXJ5SWZQb3NzaWJsZShNU0csIFsoc29ja2V0LlNPTF9TT0NLRVQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5TQ01fUklHSFRTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiIiIpXSkKKworICAgIGRlZiB0ZXN0RkRQYXNzUGFydGlhbEludChzZWxmKToKKyAgICAgICAgIyBUcnkgdG8gcGFzcyBhIHRydW5jYXRlZCBGRCBhcnJheS4KKyAgICAgICAgbXNnLCBhbmNkYXRhLCBmbGFncywgYWRkciA9IHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKE1TRyksIDEwMjQwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSwgaWdub3JlPXNvY2tldC5NU0dfQ1RSVU5DKQorICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChsZW4oYW5jZGF0YSksIDEpCisgICAgICAgIGZvciBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSBpbiBhbmNkYXRhOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX2xldmVsLCBzb2NrZXQuU09MX1NPQ0tFVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21zZ190eXBlLCBzb2NrZXQuU0NNX1JJR0hUUykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0TGVzcyhsZW4oY21zZ19kYXRhKSwgU0laRU9GX0lOVCkKKworICAgIGRlZiBfdGVzdEZEUGFzc1BhcnRpYWxJbnQoc2VsZik6CisgICAgICAgIHNlbGYuc2VuZEFuY2lsbGFyeUlmUG9zc2libGUoCisgICAgICAgICAgICBNU0csCisgICAgICAgICAgICBbKHNvY2tldC5TT0xfU09DS0VULAorICAgICAgICAgICAgICBzb2NrZXQuU0NNX1JJR0hUUywKKyAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbc2VsZi5iYWRmZF0pLnRvYnl0ZXMoKVs6LTFdKV0pCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkNNU0dfU1BBQ0UiKQorICAgIGRlZiB0ZXN0RkRQYXNzUGFydGlhbEludEluTWlkZGxlKHNlbGYpOgorICAgICAgICAjIFRyeSB0byBwYXNzIHR3byBGRCBhcnJheXMsIHRoZSBmaXJzdCBvZiB3aGljaCBpcyB0cnVuY2F0ZWQuCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAxMDI0MCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUsIGlnbm9yZT1zb2NrZXQuTVNHX0NUUlVOQykKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwobGVuKGFuY2RhdGEpLCAyKQorICAgICAgICBmZHMgPSBhcnJheS5hcnJheSgiaSIpCisgICAgICAgICMgQXJyYXlzIG1heSBoYXZlIGJlZW4gY29tYmluZWQgaW4gYSBzaW5nbGUgY29udHJvbCBtZXNzYWdlCisgICAgICAgIGZvciBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSBpbiBhbmNkYXRhOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX2xldmVsLCBzb2NrZXQuU09MX1NPQ0tFVCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY21zZ190eXBlLCBzb2NrZXQuU0NNX1JJR0hUUykKKyAgICAgICAgICAgIGZkcy5mcm9tYnl0ZXMoY21zZ19kYXRhWzoKKyAgICAgICAgICAgICAgICAgICAgbGVuKGNtc2dfZGF0YSkgLSAobGVuKGNtc2dfZGF0YSkgJSBmZHMuaXRlbXNpemUpXSkKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwobGVuKGZkcyksIDIpCisgICAgICAgIHNlbGYuY2hlY2tGRHMoZmRzKQorCisgICAgQHRlc3RGRFBhc3NQYXJ0aWFsSW50SW5NaWRkbGUuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RGRFBhc3NQYXJ0aWFsSW50SW5NaWRkbGUoc2VsZik6CisgICAgICAgIGZkMCwgZmQxID0gc2VsZi5uZXdGRHMoMikKKyAgICAgICAgc2VsZi5zZW5kQW5jaWxsYXJ5SWZQb3NzaWJsZSgKKyAgICAgICAgICAgIE1TRywKKyAgICAgICAgICAgIFsoc29ja2V0LlNPTF9TT0NLRVQsCisgICAgICAgICAgICAgIHNvY2tldC5TQ01fUklHSFRTLAorICAgICAgICAgICAgICBhcnJheS5hcnJheSgiaSIsIFtmZDAsIHNlbGYuYmFkZmRdKS50b2J5dGVzKClbOi0xXSksCisgICAgICAgICAgICAgKHNvY2tldC5TT0xfU09DS0VULAorICAgICAgICAgICAgICBzb2NrZXQuU0NNX1JJR0hUUywKKyAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbZmQxXSkpXSkKKworICAgIGRlZiBjaGVja1RydW5jYXRlZEhlYWRlcihzZWxmLCByZXN1bHQsIGlnbm9yZWZsYWdzPTApOgorICAgICAgICAjIENoZWNrIHRoYXQgbm8gYW5jaWxsYXJ5IGRhdGEgaXRlbXMgYXJlIHJldHVybmVkIHdoZW4gZGF0YSBpcworICAgICAgICAjIHRydW5jYXRlZCBpbnNpZGUgdGhlIGNtc2doZHIgc3RydWN0dXJlLgorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gcmVzdWx0CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBNU0cpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFuY2RhdGEsIFtdKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlLCBjaGVja3NldD1zb2NrZXQuTVNHX0NUUlVOQywKKyAgICAgICAgICAgICAgICAgICAgICAgIGlnbm9yZT1pZ25vcmVmbGFncykKKworICAgIGRlZiB0ZXN0Q21zZ1RydW5jTm9CdWZTaXplKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgbm8gYW5jaWxsYXJ5IGRhdGEgaXMgcmVjZWl2ZWQgd2hlbiBubyBidWZmZXIgc2l6ZQorICAgICAgICAjIGlzIHNwZWNpZmllZC4KKyAgICAgICAgc2VsZi5jaGVja1RydW5jYXRlZEhlYWRlcihzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywgbGVuKE1TRykpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgQlNEIHNlZW1zIHRvIHNldCBNU0dfQ1RSVU5DIG9ubHkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGlmIGFuIGl0ZW0gaGFzIGJlZW4gcGFydGlhbGx5CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyByZWNlaXZlZC4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmVmbGFncz1zb2NrZXQuTVNHX0NUUlVOQykKKworICAgIGRlZiBfdGVzdENtc2dUcnVuY05vQnVmU2l6ZShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVBbmRTZW5kRkRzKDEpCisKKyAgICBkZWYgdGVzdENtc2dUcnVuYzAoc2VsZik6CisgICAgICAgICMgQ2hlY2sgdGhhdCBubyBhbmNpbGxhcnkgZGF0YSBpcyByZWNlaXZlZCB3aGVuIGJ1ZmZlciBzaXplIGlzIDAuCisgICAgICAgIHNlbGYuY2hlY2tUcnVuY2F0ZWRIZWFkZXIoc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssIGxlbihNU0cpLCAwKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmVmbGFncz1zb2NrZXQuTVNHX0NUUlVOQykKKworICAgIGRlZiBfdGVzdENtc2dUcnVuYzAoc2VsZik6CisgICAgICAgIHNlbGYuY3JlYXRlQW5kU2VuZEZEcygxKQorCisgICAgIyBDaGVjayB0aGF0IG5vIGFuY2lsbGFyeSBkYXRhIGlzIHJldHVybmVkIGZvciB2YXJpb3VzIG5vbi16ZXJvCisgICAgIyAoYnV0IHN0aWxsIHRvbyBzbWFsbCkgYnVmZmVyIHNpemVzLgorCisgICAgZGVmIHRlc3RDbXNnVHJ1bmMxKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrVHJ1bmNhdGVkSGVhZGVyKHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSwgMSkpCisKKyAgICBkZWYgX3Rlc3RDbXNnVHJ1bmMxKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZUFuZFNlbmRGRHMoMSkKKworICAgIGRlZiB0ZXN0Q21zZ1RydW5jMkludChzZWxmKToKKyAgICAgICAgIyBUaGUgY21zZ2hkciBzdHJ1Y3R1cmUgaGFzIGF0IGxlYXN0IHRocmVlIG1lbWJlcnMsIHR3byBvZgorICAgICAgICAjIHdoaWNoIGFyZSBpbnRzLCBzbyB3ZSBzdGlsbCBzaG91bGRuJ3Qgc2VlIGFueSBhbmNpbGxhcnkKKyAgICAgICAgIyBkYXRhLgorICAgICAgICBzZWxmLmNoZWNrVHJ1bmNhdGVkSGVhZGVyKHNlbGYuZG9SZWN2bXNnKHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTSVpFT0ZfSU5UICogMikpCisKKyAgICBkZWYgX3Rlc3RDbXNnVHJ1bmMySW50KHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZUFuZFNlbmRGRHMoMSkKKworICAgIGRlZiB0ZXN0Q21zZ1RydW5jTGVuME1pbnVzMShzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja1RydW5jYXRlZEhlYWRlcihzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywgbGVuKE1TRyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LkNNU0dfTEVOKDApIC0gMSkpCisKKyAgICBkZWYgX3Rlc3RDbXNnVHJ1bmNMZW4wTWludXMxKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZUFuZFNlbmRGRHMoMSkKKworICAgICMgVGhlIGZvbGxvd2luZyB0ZXN0cyB0cnkgdG8gdHJ1bmNhdGUgdGhlIGNvbnRyb2wgbWVzc2FnZSBpbiB0aGUKKyAgICAjIG1pZGRsZSBvZiB0aGUgRkQgYXJyYXkuCisKKyAgICBkZWYgY2hlY2tUcnVuY2F0ZWRBcnJheShzZWxmLCBhbmNidWYsIG1heGRhdGEsIG1pbmRhdGE9MCk6CisgICAgICAgICMgQ2hlY2sgdGhhdCBmaWxlIGRlc2NyaXB0b3IgZGF0YSBpcyB0cnVuY2F0ZWQgdG8gYmV0d2VlbgorICAgICAgICAjIG1pbmRhdGEgYW5kIG1heGRhdGEgYnl0ZXMgd2hlbiByZWNlaXZlZCB3aXRoIGJ1ZmZlciBzaXplCisgICAgICAgICMgYW5jYnVmLCBhbmQgdGhhdCBhbnkgY29tcGxldGUgZmlsZSBkZXNjcmlwdG9yIG51bWJlcnMgYXJlCisgICAgICAgICMgdmFsaWQuCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCBhbmNidWYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBNU0cpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlLCBjaGVja3NldD1zb2NrZXQuTVNHX0NUUlVOQykKKworICAgICAgICBpZiBtaW5kYXRhID09IDAgYW5kIGFuY2RhdGEgPT0gW106CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oYW5jZGF0YSksIDEpCisgICAgICAgIGNtc2dfbGV2ZWwsIGNtc2dfdHlwZSwgY21zZ19kYXRhID0gYW5jZGF0YVswXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtc2dfbGV2ZWwsIHNvY2tldC5TT0xfU09DS0VUKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtc2dfdHlwZSwgc29ja2V0LlNDTV9SSUdIVFMpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKGxlbihjbXNnX2RhdGEpLCBtaW5kYXRhKQorICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChsZW4oY21zZ19kYXRhKSwgbWF4ZGF0YSkKKyAgICAgICAgZmRzID0gYXJyYXkuYXJyYXkoImkiKQorICAgICAgICBmZHMuZnJvbWJ5dGVzKGNtc2dfZGF0YVs6CisgICAgICAgICAgICAgICAgbGVuKGNtc2dfZGF0YSkgLSAobGVuKGNtc2dfZGF0YSkgJSBmZHMuaXRlbXNpemUpXSkKKyAgICAgICAgc2VsZi5jaGVja0ZEcyhmZHMpCisKKyAgICBkZWYgdGVzdENtc2dUcnVuY0xlbjAoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tUcnVuY2F0ZWRBcnJheShhbmNidWY9c29ja2V0LkNNU0dfTEVOKDApLCBtYXhkYXRhPTApCisKKyAgICBkZWYgX3Rlc3RDbXNnVHJ1bmNMZW4wKHNlbGYpOgorICAgICAgICBzZWxmLmNyZWF0ZUFuZFNlbmRGRHMoMSkKKworICAgIGRlZiB0ZXN0Q21zZ1RydW5jTGVuMFBsdXMxKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrVHJ1bmNhdGVkQXJyYXkoYW5jYnVmPXNvY2tldC5DTVNHX0xFTigwKSArIDEsIG1heGRhdGE9MSkKKworICAgIGRlZiBfdGVzdENtc2dUcnVuY0xlbjBQbHVzMShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVBbmRTZW5kRkRzKDIpCisKKyAgICBkZWYgdGVzdENtc2dUcnVuY0xlbjEoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tUcnVuY2F0ZWRBcnJheShhbmNidWY9c29ja2V0LkNNU0dfTEVOKFNJWkVPRl9JTlQpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4ZGF0YT1TSVpFT0ZfSU5UKQorCisgICAgZGVmIF90ZXN0Q21zZ1RydW5jTGVuMShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVBbmRTZW5kRkRzKDIpCisKKyAgICBkZWYgdGVzdENtc2dUcnVuY0xlbjJNaW51czEoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tUcnVuY2F0ZWRBcnJheShhbmNidWY9c29ja2V0LkNNU0dfTEVOKDIgKiBTSVpFT0ZfSU5UKSAtIDEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhkYXRhPSgyICogU0laRU9GX0lOVCkgLSAxKQorCisgICAgZGVmIF90ZXN0Q21zZ1RydW5jTGVuMk1pbnVzMShzZWxmKToKKyAgICAgICAgc2VsZi5jcmVhdGVBbmRTZW5kRkRzKDIpCisKKworY2xhc3MgUkZDMzU0MkFuY2lsbGFyeVRlc3QoU2VuZHJlY3Ztc2dTZXJ2ZXJUaW1lb3V0QmFzZSk6CisgICAgIyBUZXN0IHNlbmRtc2coKSBhbmQgcmVjdm1zZ1tfaW50b10oKSB1c2luZyB0aGUgYW5jaWxsYXJ5IGRhdGEKKyAgICAjIGZlYXR1cmVzIG9mIHRoZSBSRkMgMzU0MiBBZHZhbmNlZCBTb2NrZXRzIEFQSSBmb3IgSVB2Ni4KKyAgICAjIEN1cnJlbnRseSB3ZSBjYW4gb25seSBoYW5kbGUgY2VydGFpbiBkYXRhIGl0ZW1zIChlLmcuIHRyYWZmaWMKKyAgICAjIGNsYXNzLCBob3AgbGltaXQsIE1UVSBkaXNjb3ZlcnkgYW5kIGZyYWdtZW50YXRpb24gc2V0dGluZ3MpCisgICAgIyB3aXRob3V0IHJlc29ydGluZyB0byB1bnBvcnRhYmxlIG1lYW5zIHN1Y2ggYXMgdGhlIHN0cnVjdCBtb2R1bGUsCisgICAgIyBidXQgdGhlIHRlc3RzIGhlcmUgYXJlIGFpbWVkIGF0IHRlc3RpbmcgdGhlIGFuY2lsbGFyeSBkYXRhCisgICAgIyBoYW5kbGluZyBpbiBzZW5kbXNnKCkgYW5kIHJlY3Ztc2coKSByYXRoZXIgdGhhbiB0aGUgSVB2NiBBUEkKKyAgICAjIGl0c2VsZi4KKworICAgICMgVGVzdCB2YWx1ZSB0byB1c2Ugd2hlbiBzZXR0aW5nIGhvcCBsaW1pdCBvZiBwYWNrZXQKKyAgICBob3BfbGltaXQgPSAyCisKKyAgICAjIFRlc3QgdmFsdWUgdG8gdXNlIHdoZW4gc2V0dGluZyB0cmFmZmljIGNsYXNzIG9mIHBhY2tldC4KKyAgICAjIC0xIG1lYW5zICJ1c2Uga2VybmVsIGRlZmF1bHQiLgorICAgIHRyYWZmaWNfY2xhc3MgPSAtMQorCisgICAgZGVmIGFuY2lsbGFyeU1hcHBpbmcoc2VsZiwgYW5jZGF0YSk6CisgICAgICAgICMgR2l2ZW4gYW5jaWxsYXJ5IGRhdGEgbGlzdCBhbmNkYXRhLCByZXR1cm4gYSBtYXBwaW5nIGZyb20KKyAgICAgICAgIyBwYWlycyAoY21zZ19sZXZlbCwgY21zZ190eXBlKSB0byBjb3JyZXNwb25kaW5nIGNtc2dfZGF0YS4KKyAgICAgICAgIyBDaGVjayB0aGF0IG5vIChsZXZlbCwgdHlwZSkgcGFpciBhcHBlYXJzIG1vcmUgdGhhbiBvbmNlLgorICAgICAgICBkID0ge30KKyAgICAgICAgZm9yIGNtc2dfbGV2ZWwsIGNtc2dfdHlwZSwgY21zZ19kYXRhIGluIGFuY2RhdGE6CisgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEluKChjbXNnX2xldmVsLCBjbXNnX3R5cGUpLCBkKQorICAgICAgICAgICAgZFsoY21zZ19sZXZlbCwgY21zZ190eXBlKV0gPSBjbXNnX2RhdGEKKyAgICAgICAgcmV0dXJuIGQKKworICAgIGRlZiBjaGVja0hvcExpbWl0KHNlbGYsIGFuY2J1ZnNpemUsIG1heGhvcD0yNTUsIGlnbm9yZWZsYWdzPTApOgorICAgICAgICAjIFJlY2VpdmUgaG9wIGxpbWl0IGludG8gYW5jYnVmc2l6ZSBieXRlcyBvZiBhbmNpbGxhcnkgZGF0YQorICAgICAgICAjIHNwYWNlLiAgQ2hlY2sgdGhhdCBkYXRhIGlzIE1TRywgYW5jaWxsYXJ5IGRhdGEgaXMgbm90CisgICAgICAgICMgdHJ1bmNhdGVkIChidXQgaWdub3JlIGFueSBmbGFncyBpbiBpZ25vcmVmbGFncyksIGFuZCBob3AKKyAgICAgICAgIyBsaW1pdCBpcyBiZXR3ZWVuIDAgYW5kIG1heGhvcCBpbmNsdXNpdmUuCisgICAgICAgIHNlbGYuc2Vydl9zb2NrLnNldHNvY2tvcHQoc29ja2V0LklQUFJPVE9fSVBWNiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuSVBWNl9SRUNWSE9QTElNSVQsIDEpCisgICAgICAgIHNlbGYubWlzY19ldmVudC5zZXQoKQorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgYW5jYnVmc2l6ZSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSwgY2hlY2t1bnNldD1zb2NrZXQuTVNHX0NUUlVOQywKKyAgICAgICAgICAgICAgICAgICAgICAgIGlnbm9yZT1pZ25vcmVmbGFncykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihhbmNkYXRhKSwgMSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGFuY2RhdGFbMF0sIHR1cGxlKQorICAgICAgICBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSA9IGFuY2RhdGFbMF0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX2xldmVsLCBzb2NrZXQuSVBQUk9UT19JUFY2KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtc2dfdHlwZSwgc29ja2V0LklQVjZfSE9QTElNSVQpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShjbXNnX2RhdGEsIGJ5dGVzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihjbXNnX2RhdGEpLCBTSVpFT0ZfSU5UKQorICAgICAgICBhID0gYXJyYXkuYXJyYXkoImkiKQorICAgICAgICBhLmZyb21ieXRlcyhjbXNnX2RhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKGFbMF0sIDApCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKGFbMF0sIG1heGhvcCkKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiSVBWNl9SRUNWSE9QTElNSVQiLCAiSVBWNl9IT1BMSU1JVCIpCisgICAgZGVmIHRlc3RSZWN2SG9wTGltaXQoc2VsZik6CisgICAgICAgICMgVGVzdCByZWNlaXZpbmcgdGhlIHBhY2tldCBob3AgbGltaXQgYXMgYW5jaWxsYXJ5IGRhdGEuCisgICAgICAgIHNlbGYuY2hlY2tIb3BMaW1pdChhbmNidWZzaXplPTEwMjQwKQorCisgICAgQHRlc3RSZWN2SG9wTGltaXQuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RSZWN2SG9wTGltaXQoc2VsZik6CisgICAgICAgICMgTmVlZCB0byB3YWl0IHVudGlsIHNlcnZlciBoYXMgYXNrZWQgdG8gcmVjZWl2ZSBhbmNpbGxhcnkKKyAgICAgICAgIyBkYXRhLCBhcyBpbXBsZW1lbnRhdGlvbnMgYXJlIG5vdCByZXF1aXJlZCB0byBidWZmZXIgaXQKKyAgICAgICAgIyBvdGhlcndpc2UuCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIiwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiKQorICAgIGRlZiB0ZXN0UmVjdkhvcExpbWl0Q01TR19TUEFDRShzZWxmKToKKyAgICAgICAgIyBUZXN0IHJlY2VpdmluZyBob3AgbGltaXQsIHVzaW5nIENNU0dfU1BBQ0UgdG8gY2FsY3VsYXRlIGJ1ZmZlciBzaXplLgorICAgICAgICBzZWxmLmNoZWNrSG9wTGltaXQoYW5jYnVmc2l6ZT1zb2NrZXQuQ01TR19TUEFDRShTSVpFT0ZfSU5UKSkKKworICAgIEB0ZXN0UmVjdkhvcExpbWl0Q01TR19TUEFDRS5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFJlY3ZIb3BMaW1pdENNU0dfU1BBQ0Uoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgIyBDb3VsZCB0ZXN0IHJlY2VpdmluZyBpbnRvIGJ1ZmZlciBzaXplZCB1c2luZyBDTVNHX0xFTiwgYnV0IFJGQworICAgICMgMzU0MiBzYXlzIHBvcnRhYmxlIGFwcGxpY2F0aW9ucyBtdXN0IHByb3ZpZGUgc3BhY2UgZm9yIHRyYWlsaW5nCisgICAgIyBwYWRkaW5nLiAgSW1wbGVtZW50YXRpb25zIG1heSBzZXQgTVNHX0NUUlVOQyBpZiB0aGVyZSBpc24ndAorICAgICMgZW5vdWdoIHNwYWNlIGZvciB0aGUgcGFkZGluZy4KKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInNlbmRtc2ciKQorICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiSVBWNl9SRUNWSE9QTElNSVQiLCAiSVBWNl9IT1BMSU1JVCIpCisgICAgZGVmIHRlc3RTZXRIb3BMaW1pdChzZWxmKToKKyAgICAgICAgIyBUZXN0IHNldHRpbmcgaG9wIGxpbWl0IG9uIG91dGdvaW5nIHBhY2tldCBhbmQgcmVjZWl2aW5nIGl0CisgICAgICAgICMgYXQgdGhlIG90aGVyIGVuZC4KKyAgICAgICAgc2VsZi5jaGVja0hvcExpbWl0KGFuY2J1ZnNpemU9MTAyNDAsIG1heGhvcD1zZWxmLmhvcF9saW1pdCkKKworICAgIEB0ZXN0U2V0SG9wTGltaXQuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RTZXRIb3BMaW1pdChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAorICAgICAgICAgICAgc2VsZi5zZW5kbXNnVG9TZXJ2ZXIoW01TR10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKHNvY2tldC5JUFBST1RPX0lQVjYsIHNvY2tldC5JUFY2X0hPUExJTUlULAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheS5hcnJheSgiaSIsIFtzZWxmLmhvcF9saW1pdF0pKV0pLAorICAgICAgICAgICAgbGVuKE1TRykpCisKKyAgICBkZWYgY2hlY2tUcmFmZmljQ2xhc3NBbmRIb3BMaW1pdChzZWxmLCBhbmNidWZzaXplLCBtYXhob3A9MjU1LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlnbm9yZWZsYWdzPTApOgorICAgICAgICAjIFJlY2VpdmUgdHJhZmZpYyBjbGFzcyBhbmQgaG9wIGxpbWl0IGludG8gYW5jYnVmc2l6ZSBieXRlcyBvZgorICAgICAgICAjIGFuY2lsbGFyeSBkYXRhIHNwYWNlLiAgQ2hlY2sgdGhhdCBkYXRhIGlzIE1TRywgYW5jaWxsYXJ5CisgICAgICAgICMgZGF0YSBpcyBub3QgdHJ1bmNhdGVkIChidXQgaWdub3JlIGFueSBmbGFncyBpbiBpZ25vcmVmbGFncyksCisgICAgICAgICMgYW5kIHRyYWZmaWMgY2xhc3MgYW5kIGhvcCBsaW1pdCBhcmUgaW4gcmFuZ2UgKGhvcCBsaW1pdCBubworICAgICAgICAjIG1vcmUgdGhhbiBtYXhob3ApLgorICAgICAgICBzZWxmLnNlcnZfc29jay5zZXRzb2Nrb3B0KHNvY2tldC5JUFBST1RPX0lQVjYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LklQVjZfUkVDVkhPUExJTUlULCAxKQorICAgICAgICBzZWxmLnNlcnZfc29jay5zZXRzb2Nrb3B0KHNvY2tldC5JUFBST1RPX0lQVjYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LklQVjZfUkVDVlRDTEFTUywgMSkKKyAgICAgICAgc2VsZi5taXNjX2V2ZW50LnNldCgpCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCBhbmNidWZzaXplKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXNnLCBNU0cpCisgICAgICAgIHNlbGYuY2hlY2tSZWN2bXNnQWRkcmVzcyhhZGRyLCBzZWxmLmNsaV9hZGRyKQorICAgICAgICBzZWxmLmNoZWNrRmxhZ3MoZmxhZ3MsIGVvcj1UcnVlLCBjaGVja3Vuc2V0PXNvY2tldC5NU0dfQ1RSVU5DLAorICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlPWlnbm9yZWZsYWdzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihhbmNkYXRhKSwgMikKKyAgICAgICAgYW5jbWFwID0gc2VsZi5hbmNpbGxhcnlNYXBwaW5nKGFuY2RhdGEpCisKKyAgICAgICAgdGNkYXRhID0gYW5jbWFwWyhzb2NrZXQuSVBQUk9UT19JUFY2LCBzb2NrZXQuSVBWNl9UQ0xBU1MpXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbih0Y2RhdGEpLCBTSVpFT0ZfSU5UKQorICAgICAgICBhID0gYXJyYXkuYXJyYXkoImkiKQorICAgICAgICBhLmZyb21ieXRlcyh0Y2RhdGEpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKGFbMF0sIDApCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKGFbMF0sIDI1NSkKKworICAgICAgICBobGRhdGEgPSBhbmNtYXBbKHNvY2tldC5JUFBST1RPX0lQVjYsIHNvY2tldC5JUFY2X0hPUExJTUlUKV0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oaGxkYXRhKSwgU0laRU9GX0lOVCkKKyAgICAgICAgYSA9IGFycmF5LmFycmF5KCJpIikKKyAgICAgICAgYS5mcm9tYnl0ZXMoaGxkYXRhKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChhWzBdLCAwKQorICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChhWzBdLCBtYXhob3ApCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiLAorICAgICAgICAgICAgICAgICAgIklQVjZfUkVDVlRDTEFTUyIsICJJUFY2X1RDTEFTUyIpCisgICAgZGVmIHRlc3RSZWN2VHJhZmZpY0NsYXNzQW5kSG9wTGltaXQoc2VsZik6CisgICAgICAgICMgVGVzdCByZWNlaXZpbmcgdHJhZmZpYyBjbGFzcyBhbmQgaG9wIGxpbWl0IGFzIGFuY2lsbGFyeSBkYXRhLgorICAgICAgICBzZWxmLmNoZWNrVHJhZmZpY0NsYXNzQW5kSG9wTGltaXQoYW5jYnVmc2l6ZT0xMDI0MCkKKworICAgIEB0ZXN0UmVjdlRyYWZmaWNDbGFzc0FuZEhvcExpbWl0LmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0UmVjdlRyYWZmaWNDbGFzc0FuZEhvcExpbWl0KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiQ01TR19TUEFDRSIsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIiwKKyAgICAgICAgICAgICAgICAgICJJUFY2X1JFQ1ZUQ0xBU1MiLCAiSVBWNl9UQ0xBU1MiKQorICAgIGRlZiB0ZXN0UmVjdlRyYWZmaWNDbGFzc0FuZEhvcExpbWl0Q01TR19TUEFDRShzZWxmKToKKyAgICAgICAgIyBUZXN0IHJlY2VpdmluZyB0cmFmZmljIGNsYXNzIGFuZCBob3AgbGltaXQsIHVzaW5nCisgICAgICAgICMgQ01TR19TUEFDRSgpIHRvIGNhbGN1bGF0ZSBidWZmZXIgc2l6ZS4KKyAgICAgICAgc2VsZi5jaGVja1RyYWZmaWNDbGFzc0FuZEhvcExpbWl0KAorICAgICAgICAgICAgYW5jYnVmc2l6ZT1zb2NrZXQuQ01TR19TUEFDRShTSVpFT0ZfSU5UKSAqIDIpCisKKyAgICBAdGVzdFJlY3ZUcmFmZmljQ2xhc3NBbmRIb3BMaW1pdENNU0dfU1BBQ0UuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RSZWN2VHJhZmZpY0NsYXNzQW5kSG9wTGltaXRDTVNHX1NQQUNFKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInNlbmRtc2ciKQorICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiQ01TR19TUEFDRSIsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIiwKKyAgICAgICAgICAgICAgICAgICJJUFY2X1JFQ1ZUQ0xBU1MiLCAiSVBWNl9UQ0xBU1MiKQorICAgIGRlZiB0ZXN0U2V0VHJhZmZpY0NsYXNzQW5kSG9wTGltaXQoc2VsZik6CisgICAgICAgICMgVGVzdCBzZXR0aW5nIHRyYWZmaWMgY2xhc3MgYW5kIGhvcCBsaW1pdCBvbiBvdXRnb2luZyBwYWNrZXQsCisgICAgICAgICMgYW5kIHJlY2VpdmluZyB0aGVtIGF0IHRoZSBvdGhlciBlbmQuCisgICAgICAgIHNlbGYuY2hlY2tUcmFmZmljQ2xhc3NBbmRIb3BMaW1pdChhbmNidWZzaXplPTEwMjQwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aG9wPXNlbGYuaG9wX2xpbWl0KQorCisgICAgQHRlc3RTZXRUcmFmZmljQ2xhc3NBbmRIb3BMaW1pdC5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFNldFRyYWZmaWNDbGFzc0FuZEhvcExpbWl0KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCisgICAgICAgICAgICBzZWxmLnNlbmRtc2dUb1NlcnZlcihbTVNHXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsoc29ja2V0LklQUFJPVE9fSVBWNiwgc29ja2V0LklQVjZfVENMQVNTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheS5hcnJheSgiaSIsIFtzZWxmLnRyYWZmaWNfY2xhc3NdKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNvY2tldC5JUFBST1RPX0lQVjYsIHNvY2tldC5JUFY2X0hPUExJTUlULAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheS5hcnJheSgiaSIsIFtzZWxmLmhvcF9saW1pdF0pKV0pLAorICAgICAgICAgICAgbGVuKE1TRykpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJzZW5kbXNnIikKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkNNU0dfU1BBQ0UiLCAiSVBWNl9SRUNWSE9QTElNSVQiLCAiSVBWNl9IT1BMSU1JVCIsCisgICAgICAgICAgICAgICAgICAiSVBWNl9SRUNWVENMQVNTIiwgIklQVjZfVENMQVNTIikKKyAgICBkZWYgdGVzdE9kZENtc2dTaXplKHNlbGYpOgorICAgICAgICAjIFRyeSB0byBzZW5kIGFuY2lsbGFyeSBkYXRhIHdpdGggZmlyc3QgaXRlbSBvbmUgYnl0ZSB0b28KKyAgICAgICAgIyBsb25nLiAgRmFsbCBiYWNrIHRvIHNlbmRpbmcgd2l0aCBjb3JyZWN0IHNpemUgaWYgdGhpcyBmYWlscywKKyAgICAgICAgIyBhbmQgY2hlY2sgdGhhdCBzZWNvbmQgaXRlbSB3YXMgaGFuZGxlZCBjb3JyZWN0bHkuCisgICAgICAgIHNlbGYuY2hlY2tUcmFmZmljQ2xhc3NBbmRIb3BMaW1pdChhbmNidWZzaXplPTEwMjQwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aG9wPXNlbGYuaG9wX2xpbWl0KQorCisgICAgQHRlc3RPZGRDbXNnU2l6ZS5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdE9kZENtc2dTaXplKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIG5ieXRlcyA9IHNlbGYuc2VuZG1zZ1RvU2VydmVyKAorICAgICAgICAgICAgICAgIFtNU0ddLAorICAgICAgICAgICAgICAgIFsoc29ja2V0LklQUFJPVE9fSVBWNiwgc29ja2V0LklQVjZfVENMQVNTLAorICAgICAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbc2VsZi50cmFmZmljX2NsYXNzXSkudG9ieXRlcygpICsgYiJceDAwIiksCisgICAgICAgICAgICAgICAgIChzb2NrZXQuSVBQUk9UT19JUFY2LCBzb2NrZXQuSVBWNl9IT1BMSU1JVCwKKyAgICAgICAgICAgICAgICAgIGFycmF5LmFycmF5KCJpIiwgW3NlbGYuaG9wX2xpbWl0XSkpXSkKKyAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKGUuZXJybm8sIGludCkKKyAgICAgICAgICAgIG5ieXRlcyA9IHNlbGYuc2VuZG1zZ1RvU2VydmVyKAorICAgICAgICAgICAgICAgIFtNU0ddLAorICAgICAgICAgICAgICAgIFsoc29ja2V0LklQUFJPVE9fSVBWNiwgc29ja2V0LklQVjZfVENMQVNTLAorICAgICAgICAgICAgICAgICAgYXJyYXkuYXJyYXkoImkiLCBbc2VsZi50cmFmZmljX2NsYXNzXSkpLAorICAgICAgICAgICAgICAgICAoc29ja2V0LklQUFJPVE9fSVBWNiwgc29ja2V0LklQVjZfSE9QTElNSVQsCisgICAgICAgICAgICAgICAgICBhcnJheS5hcnJheSgiaSIsIFtzZWxmLmhvcF9saW1pdF0pKV0pCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ieXRlcywgbGVuKE1TRykpCisKKyAgICAjIFRlc3RzIGZvciBwcm9wZXIgaGFuZGxpbmcgb2YgdHJ1bmNhdGVkIGFuY2lsbGFyeSBkYXRhCisKKyAgICBkZWYgY2hlY2tIb3BMaW1pdFRydW5jYXRlZEhlYWRlcihzZWxmLCBhbmNidWZzaXplLCBpZ25vcmVmbGFncz0wKToKKyAgICAgICAgIyBSZWNlaXZlIGhvcCBsaW1pdCBpbnRvIGFuY2J1ZnNpemUgYnl0ZXMgb2YgYW5jaWxsYXJ5IGRhdGEKKyAgICAgICAgIyBzcGFjZSwgd2hpY2ggc2hvdWxkIGJlIHRvbyBzbWFsbCB0byBjb250YWluIHRoZSBhbmNpbGxhcnkKKyAgICAgICAgIyBkYXRhIGhlYWRlciAoaWYgYW5jYnVmc2l6ZSBpcyBOb25lLCBwYXNzIG5vIHNlY29uZCBhcmd1bWVudAorICAgICAgICAjIHRvIHJlY3Ztc2coKSkuICBDaGVjayB0aGF0IGRhdGEgaXMgTVNHLCBNU0dfQ1RSVU5DIGlzIHNldAorICAgICAgICAjICh1bmxlc3MgaW5jbHVkZWQgaW4gaWdub3JlZmxhZ3MpLCBhbmQgbm8gYW5jaWxsYXJ5IGRhdGEgaXMKKyAgICAgICAgIyByZXR1cm5lZC4KKyAgICAgICAgc2VsZi5zZXJ2X3NvY2suc2V0c29ja29wdChzb2NrZXQuSVBQUk9UT19JUFY2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5JUFY2X1JFQ1ZIT1BMSU1JVCwgMSkKKyAgICAgICAgc2VsZi5taXNjX2V2ZW50LnNldCgpCisgICAgICAgIGFyZ3MgPSAoKSBpZiBhbmNidWZzaXplIGlzIE5vbmUgZWxzZSAoYW5jYnVmc2l6ZSwpCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZyhzZWxmLnNlcnZfc29jaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbihNU0cpLCAqYXJncykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSwgY2hlY2tzZXQ9c29ja2V0Lk1TR19DVFJVTkMsCisgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmU9aWdub3JlZmxhZ3MpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiKQorICAgIGRlZiB0ZXN0Q21zZ1RydW5jTm9CdWZTaXplKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgbm8gYW5jaWxsYXJ5IGRhdGEgaXMgcmVjZWl2ZWQgd2hlbiBubyBhbmNpbGxhcnkKKyAgICAgICAgIyBidWZmZXIgc2l6ZSBpcyBwcm92aWRlZC4KKyAgICAgICAgc2VsZi5jaGVja0hvcExpbWl0VHJ1bmNhdGVkSGVhZGVyKGFuY2J1ZnNpemU9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgQlNEIHNlZW1zIHRvIHNldAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBNU0dfQ1RSVU5DIG9ubHkgaWYgYW4gaXRlbQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBoYXMgYmVlbiBwYXJ0aWFsbHkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgcmVjZWl2ZWQuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmVmbGFncz1zb2NrZXQuTVNHX0NUUlVOQykKKworICAgIEB0ZXN0Q21zZ1RydW5jTm9CdWZTaXplLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0Q21zZ1RydW5jTm9CdWZTaXplKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiSVBWNl9SRUNWSE9QTElNSVQiLCAiSVBWNl9IT1BMSU1JVCIpCisgICAgZGVmIHRlc3RTaW5nbGVDbXNnVHJ1bmMwKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgbm8gYW5jaWxsYXJ5IGRhdGEgaXMgcmVjZWl2ZWQgd2hlbiBhbmNpbGxhcnkKKyAgICAgICAgIyBidWZmZXIgc2l6ZSBpcyB6ZXJvLgorICAgICAgICBzZWxmLmNoZWNrSG9wTGltaXRUcnVuY2F0ZWRIZWFkZXIoYW5jYnVmc2l6ZT0wLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlZmxhZ3M9c29ja2V0Lk1TR19DVFJVTkMpCisKKyAgICBAdGVzdFNpbmdsZUNtc2dUcnVuYzAuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RTaW5nbGVDbXNnVHJ1bmMwKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgICMgQ2hlY2sgdGhhdCBubyBhbmNpbGxhcnkgZGF0YSBpcyByZXR1cm5lZCBmb3IgdmFyaW91cyBub24temVybworICAgICMgKGJ1dCBzdGlsbCB0b28gc21hbGwpIGJ1ZmZlciBzaXplcy4KKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiSVBWNl9SRUNWSE9QTElNSVQiLCAiSVBWNl9IT1BMSU1JVCIpCisgICAgZGVmIHRlc3RTaW5nbGVDbXNnVHJ1bmMxKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrSG9wTGltaXRUcnVuY2F0ZWRIZWFkZXIoYW5jYnVmc2l6ZT0xKQorCisgICAgQHRlc3RTaW5nbGVDbXNnVHJ1bmMxLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0U2luZ2xlQ21zZ1RydW5jMShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiKQorICAgIGRlZiB0ZXN0U2luZ2xlQ21zZ1RydW5jMkludChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja0hvcExpbWl0VHJ1bmNhdGVkSGVhZGVyKGFuY2J1ZnNpemU9MiAqIFNJWkVPRl9JTlQpCisKKyAgICBAdGVzdFNpbmdsZUNtc2dUcnVuYzJJbnQuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RTaW5nbGVDbXNnVHJ1bmMySW50KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiSVBWNl9SRUNWSE9QTElNSVQiLCAiSVBWNl9IT1BMSU1JVCIpCisgICAgZGVmIHRlc3RTaW5nbGVDbXNnVHJ1bmNMZW4wTWludXMxKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrSG9wTGltaXRUcnVuY2F0ZWRIZWFkZXIoYW5jYnVmc2l6ZT1zb2NrZXQuQ01TR19MRU4oMCkgLSAxKQorCisgICAgQHRlc3RTaW5nbGVDbXNnVHJ1bmNMZW4wTWludXMxLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0U2luZ2xlQ21zZ1RydW5jTGVuME1pbnVzMShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiKQorICAgIGRlZiB0ZXN0U2luZ2xlQ21zZ1RydW5jSW5EYXRhKHNlbGYpOgorICAgICAgICAjIFRlc3QgdHJ1bmNhdGlvbiBvZiBhIGNvbnRyb2wgbWVzc2FnZSBpbnNpZGUgaXRzIGFzc29jaWF0ZWQKKyAgICAgICAgIyBkYXRhLiAgVGhlIG1lc3NhZ2UgbWF5IGJlIHJldHVybmVkIHdpdGggaXRzIGRhdGEgdHJ1bmNhdGVkLAorICAgICAgICAjIG9yIG5vdCByZXR1cm5lZCBhdCBhbGwuCisgICAgICAgIHNlbGYuc2Vydl9zb2NrLnNldHNvY2tvcHQoc29ja2V0LklQUFJPVE9fSVBWNiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuSVBWNl9SRUNWSE9QTElNSVQsIDEpCisgICAgICAgIHNlbGYubWlzY19ldmVudC5zZXQoKQorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coCisgICAgICAgICAgICBzZWxmLnNlcnZfc29jaywgbGVuKE1TRyksIHNvY2tldC5DTVNHX0xFTihTSVpFT0ZfSU5UKSAtIDEpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtc2csIE1TRykKKyAgICAgICAgc2VsZi5jaGVja1JlY3Ztc2dBZGRyZXNzKGFkZHIsIHNlbGYuY2xpX2FkZHIpCisgICAgICAgIHNlbGYuY2hlY2tGbGFncyhmbGFncywgZW9yPVRydWUsIGNoZWNrc2V0PXNvY2tldC5NU0dfQ1RSVU5DKQorCisgICAgICAgIHNlbGYuYXNzZXJ0TGVzc0VxdWFsKGxlbihhbmNkYXRhKSwgMSkKKyAgICAgICAgaWYgYW5jZGF0YToKKyAgICAgICAgICAgIGNtc2dfbGV2ZWwsIGNtc2dfdHlwZSwgY21zZ19kYXRhID0gYW5jZGF0YVswXQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX2xldmVsLCBzb2NrZXQuSVBQUk9UT19JUFY2KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX3R5cGUsIHNvY2tldC5JUFY2X0hPUExJTUlUKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRMZXNzKGxlbihjbXNnX2RhdGEpLCBTSVpFT0ZfSU5UKQorCisgICAgQHRlc3RTaW5nbGVDbXNnVHJ1bmNJbkRhdGEuY2xpZW50X3NraXAKKyAgICBkZWYgX3Rlc3RTaW5nbGVDbXNnVHJ1bmNJbkRhdGEoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgZGVmIGNoZWNrVHJ1bmNhdGVkU2Vjb25kSGVhZGVyKHNlbGYsIGFuY2J1ZnNpemUsIGlnbm9yZWZsYWdzPTApOgorICAgICAgICAjIFJlY2VpdmUgdHJhZmZpYyBjbGFzcyBhbmQgaG9wIGxpbWl0IGludG8gYW5jYnVmc2l6ZSBieXRlcyBvZgorICAgICAgICAjIGFuY2lsbGFyeSBkYXRhIHNwYWNlLCB3aGljaCBzaG91bGQgYmUgbGFyZ2UgZW5vdWdoIHRvCisgICAgICAgICMgY29udGFpbiB0aGUgZmlyc3QgaXRlbSwgYnV0IHRvbyBzbWFsbCB0byBjb250YWluIHRoZSBoZWFkZXIKKyAgICAgICAgIyBvZiB0aGUgc2Vjb25kLiAgQ2hlY2sgdGhhdCBkYXRhIGlzIE1TRywgTVNHX0NUUlVOQyBpcyBzZXQKKyAgICAgICAgIyAodW5sZXNzIGluY2x1ZGVkIGluIGlnbm9yZWZsYWdzKSwgYW5kIG9ubHkgb25lIGFuY2lsbGFyeQorICAgICAgICAjIGRhdGEgaXRlbSBpcyByZXR1cm5lZC4KKyAgICAgICAgc2VsZi5zZXJ2X3NvY2suc2V0c29ja29wdChzb2NrZXQuSVBQUk9UT19JUFY2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5JUFY2X1JFQ1ZIT1BMSU1JVCwgMSkKKyAgICAgICAgc2VsZi5zZXJ2X3NvY2suc2V0c29ja29wdChzb2NrZXQuSVBQUk9UT19JUFY2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvY2tldC5JUFY2X1JFQ1ZUQ0xBU1MsIDEpCisgICAgICAgIHNlbGYubWlzY19ldmVudC5zZXQoKQorICAgICAgICBtc2csIGFuY2RhdGEsIGZsYWdzLCBhZGRyID0gc2VsZi5kb1JlY3Ztc2coc2VsZi5zZXJ2X3NvY2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4oTVNHKSwgYW5jYnVmc2l6ZSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSwgY2hlY2tzZXQ9c29ja2V0Lk1TR19DVFJVTkMsCisgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmU9aWdub3JlZmxhZ3MpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oYW5jZGF0YSksIDEpCisgICAgICAgIGNtc2dfbGV2ZWwsIGNtc2dfdHlwZSwgY21zZ19kYXRhID0gYW5jZGF0YVswXQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtc2dfbGV2ZWwsIHNvY2tldC5JUFBST1RPX0lQVjYpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oY21zZ190eXBlLCB7c29ja2V0LklQVjZfVENMQVNTLCBzb2NrZXQuSVBWNl9IT1BMSU1JVH0pCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGNtc2dfZGF0YSksIFNJWkVPRl9JTlQpCisgICAgICAgIGEgPSBhcnJheS5hcnJheSgiaSIpCisgICAgICAgIGEuZnJvbWJ5dGVzKGNtc2dfZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwoYVswXSwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwoYVswXSwgMjU1KQorCisgICAgIyBUcnkgdGhlIGFib3ZlIHRlc3Qgd2l0aCB2YXJpb3VzIGJ1ZmZlciBzaXplcy4KKworICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LCAiQ01TR19TUEFDRSIsICJJUFY2X1JFQ1ZIT1BMSU1JVCIsICJJUFY2X0hPUExJTUlUIiwKKyAgICAgICAgICAgICAgICAgICJJUFY2X1JFQ1ZUQ0xBU1MiLCAiSVBWNl9UQ0xBU1MiKQorICAgIGRlZiB0ZXN0U2Vjb25kQ21zZ1RydW5jMChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja1RydW5jYXRlZFNlY29uZEhlYWRlcihzb2NrZXQuQ01TR19TUEFDRShTSVpFT0ZfSU5UKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZ25vcmVmbGFncz1zb2NrZXQuTVNHX0NUUlVOQykKKworICAgIEB0ZXN0U2Vjb25kQ21zZ1RydW5jMC5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFNlY29uZENtc2dUcnVuYzAoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIiwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiLAorICAgICAgICAgICAgICAgICAgIklQVjZfUkVDVlRDTEFTUyIsICJJUFY2X1RDTEFTUyIpCisgICAgZGVmIHRlc3RTZWNvbmRDbXNnVHJ1bmMxKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrVHJ1bmNhdGVkU2Vjb25kSGVhZGVyKHNvY2tldC5DTVNHX1NQQUNFKFNJWkVPRl9JTlQpICsgMSkKKworICAgIEB0ZXN0U2Vjb25kQ21zZ1RydW5jMS5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFNlY29uZENtc2dUcnVuYzEoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIiwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiLAorICAgICAgICAgICAgICAgICAgIklQVjZfUkVDVlRDTEFTUyIsICJJUFY2X1RDTEFTUyIpCisgICAgZGVmIHRlc3RTZWNvbmRDbXNnVHJ1bmMySW50KHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrVHJ1bmNhdGVkU2Vjb25kSGVhZGVyKHNvY2tldC5DTVNHX1NQQUNFKFNJWkVPRl9JTlQpICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyICogU0laRU9GX0lOVCkKKworICAgIEB0ZXN0U2Vjb25kQ21zZ1RydW5jMkludC5jbGllbnRfc2tpcAorICAgIGRlZiBfdGVzdFNlY29uZENtc2dUcnVuYzJJbnQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzZWxmLm1pc2NfZXZlbnQud2FpdCh0aW1lb3V0PXNlbGYuZmFpbF90aW1lb3V0KSkKKyAgICAgICAgc2VsZi5zZW5kVG9TZXJ2ZXIoTVNHKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQsICJDTVNHX1NQQUNFIiwgIklQVjZfUkVDVkhPUExJTUlUIiwgIklQVjZfSE9QTElNSVQiLAorICAgICAgICAgICAgICAgICAgIklQVjZfUkVDVlRDTEFTUyIsICJJUFY2X1RDTEFTUyIpCisgICAgZGVmIHRlc3RTZWNvbmRDbXNnVHJ1bmNMZW4wTWludXMxKHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrVHJ1bmNhdGVkU2Vjb25kSGVhZGVyKHNvY2tldC5DTVNHX1NQQUNFKFNJWkVPRl9JTlQpICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXQuQ01TR19MRU4oMCkgLSAxKQorCisgICAgQHRlc3RTZWNvbmRDbXNnVHJ1bmNMZW4wTWludXMxLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0U2Vjb25kQ21zZ1RydW5jTGVuME1pbnVzMShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNlbGYubWlzY19ldmVudC53YWl0KHRpbWVvdXQ9c2VsZi5mYWlsX3RpbWVvdXQpKQorICAgICAgICBzZWxmLnNlbmRUb1NlcnZlcihNU0cpCisKKyAgICBAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkNNU0dfU1BBQ0UiLCAiSVBWNl9SRUNWSE9QTElNSVQiLCAiSVBWNl9IT1BMSU1JVCIsCisgICAgICAgICAgICAgICAgICAiSVBWNl9SRUNWVENMQVNTIiwgIklQVjZfVENMQVNTIikKKyAgICBkZWYgdGVzdFNlY29tZENtc2dUcnVuY0luRGF0YShzZWxmKToKKyAgICAgICAgIyBUZXN0IHRydW5jYXRpb24gb2YgdGhlIHNlY29uZCBvZiB0d28gY29udHJvbCBtZXNzYWdlcyBpbnNpZGUKKyAgICAgICAgIyBpdHMgYXNzb2NpYXRlZCBkYXRhLgorICAgICAgICBzZWxmLnNlcnZfc29jay5zZXRzb2Nrb3B0KHNvY2tldC5JUFBST1RPX0lQVjYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LklQVjZfUkVDVkhPUExJTUlULCAxKQorICAgICAgICBzZWxmLnNlcnZfc29jay5zZXRzb2Nrb3B0KHNvY2tldC5JUFBST1RPX0lQVjYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LklQVjZfUkVDVlRDTEFTUywgMSkKKyAgICAgICAgc2VsZi5taXNjX2V2ZW50LnNldCgpCisgICAgICAgIG1zZywgYW5jZGF0YSwgZmxhZ3MsIGFkZHIgPSBzZWxmLmRvUmVjdm1zZygKKyAgICAgICAgICAgIHNlbGYuc2Vydl9zb2NrLCBsZW4oTVNHKSwKKyAgICAgICAgICAgIHNvY2tldC5DTVNHX1NQQUNFKFNJWkVPRl9JTlQpICsgc29ja2V0LkNNU0dfTEVOKFNJWkVPRl9JTlQpIC0gMSkKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG1zZywgTVNHKQorICAgICAgICBzZWxmLmNoZWNrUmVjdm1zZ0FkZHJlc3MoYWRkciwgc2VsZi5jbGlfYWRkcikKKyAgICAgICAgc2VsZi5jaGVja0ZsYWdzKGZsYWdzLCBlb3I9VHJ1ZSwgY2hlY2tzZXQ9c29ja2V0Lk1TR19DVFJVTkMpCisKKyAgICAgICAgY21zZ190eXBlcyA9IHtzb2NrZXQuSVBWNl9UQ0xBU1MsIHNvY2tldC5JUFY2X0hPUExJTUlUfQorCisgICAgICAgIGNtc2dfbGV2ZWwsIGNtc2dfdHlwZSwgY21zZ19kYXRhID0gYW5jZGF0YS5wb3AoMCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbXNnX2xldmVsLCBzb2NrZXQuSVBQUk9UT19JUFY2KQorICAgICAgICBjbXNnX3R5cGVzLnJlbW92ZShjbXNnX3R5cGUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGNtc2dfZGF0YSksIFNJWkVPRl9JTlQpCisgICAgICAgIGEgPSBhcnJheS5hcnJheSgiaSIpCisgICAgICAgIGEuZnJvbWJ5dGVzKGNtc2dfZGF0YSkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwoYVswXSwgMCkKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwoYVswXSwgMjU1KQorCisgICAgICAgIGlmIGFuY2RhdGE6CisgICAgICAgICAgICBjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSA9IGFuY2RhdGEucG9wKDApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNtc2dfbGV2ZWwsIHNvY2tldC5JUFBST1RPX0lQVjYpCisgICAgICAgICAgICBjbXNnX3R5cGVzLnJlbW92ZShjbXNnX3R5cGUpCisgICAgICAgICAgICBzZWxmLmFzc2VydExlc3MobGVuKGNtc2dfZGF0YSksIFNJWkVPRl9JTlQpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhbmNkYXRhLCBbXSkKKworICAgIEB0ZXN0U2Vjb21kQ21zZ1RydW5jSW5EYXRhLmNsaWVudF9za2lwCisgICAgZGVmIF90ZXN0U2Vjb21kQ21zZ1RydW5jSW5EYXRhKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VsZi5taXNjX2V2ZW50LndhaXQodGltZW91dD1zZWxmLmZhaWxfdGltZW91dCkpCisgICAgICAgIHNlbGYuc2VuZFRvU2VydmVyKE1TRykKKworCisjIERlcml2ZSBjb25jcmV0ZSB0ZXN0IGNsYXNzZXMgZm9yIGRpZmZlcmVudCBzb2NrZXQgdHlwZXMuCisKK2NsYXNzIFNlbmRyZWN2bXNnVURQVGVzdEJhc2UoU2VuZHJlY3Ztc2dEZ3JhbUZsYWdzQmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VuZHJlY3Ztc2dDb25uZWN0aW9ubGVzc0Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRocmVhZGVkU29ja2V0VGVzdE1peGluLCBVRFBUZXN0QmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJzZW5kbXNnIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBTZW5kbXNnVURQVGVzdChTZW5kbXNnQ29ubmVjdGlvbmxlc3NUZXN0cywgU2VuZHJlY3Ztc2dVRFBUZXN0QmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJyZWN2bXNnIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBSZWN2bXNnVURQVGVzdChSZWN2bXNnVGVzdHMsIFNlbmRyZWN2bXNnVURQVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZ19pbnRvIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBSZWN2bXNnSW50b1VEUFRlc3QoUmVjdm1zZ0ludG9UZXN0cywgU2VuZHJlY3Ztc2dVRFBUZXN0QmFzZSk6CisgICAgcGFzcworCisKK2NsYXNzIFNlbmRyZWN2bXNnVURQNlRlc3RCYXNlKFNlbmRyZWN2bXNnRGdyYW1GbGFnc0Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZW5kcmVjdm1zZ0Nvbm5lY3Rpb25sZXNzQmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRocmVhZGVkU29ja2V0VGVzdE1peGluLCBVRFA2VGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAic2VuZG1zZyIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyhzb2NrZXQuaGFzX2lwdjYsICJQeXRob24gbm90IGJ1aWx0IHdpdGggSVB2NiBzdXBwb3J0IikKK0ByZXF1aXJlU29ja2V0KCJBRl9JTkVUNiIsICJTT0NLX0RHUkFNIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBTZW5kbXNnVURQNlRlc3QoU2VuZG1zZ0Nvbm5lY3Rpb25sZXNzVGVzdHMsIFNlbmRyZWN2bXNnVURQNlRlc3RCYXNlKToKKyAgICBwYXNzCisKK0ByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInJlY3Ztc2ciKQorQHVuaXR0ZXN0LnNraXBVbmxlc3Moc29ja2V0Lmhhc19pcHY2LCAiUHl0aG9uIG5vdCBidWlsdCB3aXRoIElQdjYgc3VwcG9ydCIpCitAcmVxdWlyZVNvY2tldCgiQUZfSU5FVDYiLCAiU09DS19ER1JBTSIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ1VEUDZUZXN0KFJlY3Ztc2dUZXN0cywgU2VuZHJlY3Ztc2dVRFA2VGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZ19pbnRvIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHNvY2tldC5oYXNfaXB2NiwgIlB5dGhvbiBub3QgYnVpbHQgd2l0aCBJUHY2IHN1cHBvcnQiKQorQHJlcXVpcmVTb2NrZXQoIkFGX0lORVQ2IiwgIlNPQ0tfREdSQU0iKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFJlY3Ztc2dJbnRvVURQNlRlc3QoUmVjdm1zZ0ludG9UZXN0cywgU2VuZHJlY3Ztc2dVRFA2VGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZyIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyhzb2NrZXQuaGFzX2lwdjYsICJQeXRob24gbm90IGJ1aWx0IHdpdGggSVB2NiBzdXBwb3J0IikKK0ByZXF1aXJlQXR0cnMoc29ja2V0LCAiSVBQUk9UT19JUFY2IikKK0ByZXF1aXJlU29ja2V0KCJBRl9JTkVUNiIsICJTT0NLX0RHUkFNIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBSZWN2bXNnUkZDMzU0MkFuY2lsbGFyeVVEUDZUZXN0KFJGQzM1NDJBbmNpbGxhcnlUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZW5kcmVjdm1zZ1VEUDZUZXN0QmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJyZWN2bXNnX2ludG8iKQorQHVuaXR0ZXN0LnNraXBVbmxlc3Moc29ja2V0Lmhhc19pcHY2LCAiUHl0aG9uIG5vdCBidWlsdCB3aXRoIElQdjYgc3VwcG9ydCIpCitAcmVxdWlyZUF0dHJzKHNvY2tldCwgIklQUFJPVE9fSVBWNiIpCitAcmVxdWlyZVNvY2tldCgiQUZfSU5FVDYiLCAiU09DS19ER1JBTSIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ0ludG9SRkMzNTQyQW5jaWxsYXJ5VURQNlRlc3QoUmVjdm1zZ0ludG9NaXhpbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJGQzM1NDJBbmNpbGxhcnlUZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VuZHJlY3Ztc2dVRFA2VGVzdEJhc2UpOgorICAgIHBhc3MKKworCitjbGFzcyBTZW5kcmVjdm1zZ1RDUFRlc3RCYXNlKFNlbmRyZWN2bXNnQ29ubmVjdGVkQmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29ubmVjdGVkU3RyZWFtVGVzdE1peGluLCBUQ1BUZXN0QmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJzZW5kbXNnIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBTZW5kbXNnVENQVGVzdChTZW5kbXNnU3RyZWFtVGVzdHMsIFNlbmRyZWN2bXNnVENQVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZyIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ1RDUFRlc3QoUmVjdm1zZ1Rlc3RzLCBSZWN2bXNnR2VuZXJpY1N0cmVhbVRlc3RzLAorICAgICAgICAgICAgICAgICAgICAgU2VuZHJlY3Ztc2dUQ1BUZXN0QmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJyZWN2bXNnX2ludG8iKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFJlY3Ztc2dJbnRvVENQVGVzdChSZWN2bXNnSW50b1Rlc3RzLCBSZWN2bXNnR2VuZXJpY1N0cmVhbVRlc3RzLAorICAgICAgICAgICAgICAgICAgICAgICAgIFNlbmRyZWN2bXNnVENQVGVzdEJhc2UpOgorICAgIHBhc3MKKworCitjbGFzcyBTZW5kcmVjdm1zZ1NDVFBTdHJlYW1UZXN0QmFzZShTZW5kcmVjdm1zZ1NDVFBGbGFnc0Jhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZW5kcmVjdm1zZ0Nvbm5lY3RlZEJhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25uZWN0ZWRTdHJlYW1UZXN0TWl4aW4sIFNDVFBTdHJlYW1CYXNlKToKKyAgICBwYXNzCisKK0ByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInNlbmRtc2ciKQorQHJlcXVpcmVTb2NrZXQoIkFGX0lORVQiLCAiU09DS19TVFJFQU0iLCAiSVBQUk9UT19TQ1RQIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBTZW5kbXNnU0NUUFN0cmVhbVRlc3QoU2VuZG1zZ1N0cmVhbVRlc3RzLCBTZW5kcmVjdm1zZ1NDVFBTdHJlYW1UZXN0QmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJyZWN2bXNnIikKK0ByZXF1aXJlU29ja2V0KCJBRl9JTkVUIiwgIlNPQ0tfU1RSRUFNIiwgIklQUFJPVE9fU0NUUCIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ1NDVFBTdHJlYW1UZXN0KFJlY3Ztc2dUZXN0cywgUmVjdm1zZ0dlbmVyaWNTdHJlYW1UZXN0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZW5kcmVjdm1zZ1NDVFBTdHJlYW1UZXN0QmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJyZWN2bXNnX2ludG8iKQorQHJlcXVpcmVTb2NrZXQoIkFGX0lORVQiLCAiU09DS19TVFJFQU0iLCAiSVBQUk9UT19TQ1RQIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBSZWN2bXNnSW50b1NDVFBTdHJlYW1UZXN0KFJlY3Ztc2dJbnRvVGVzdHMsIFJlY3Ztc2dHZW5lcmljU3RyZWFtVGVzdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlbmRyZWN2bXNnU0NUUFN0cmVhbVRlc3RCYXNlKToKKyAgICBwYXNzCisKKworY2xhc3MgU2VuZHJlY3Ztc2dVbml4U3RyZWFtVGVzdEJhc2UoU2VuZHJlY3Ztc2dDb25uZWN0ZWRCYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29ubmVjdGVkU3RyZWFtVGVzdE1peGluLCBVbml4U3RyZWFtQmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJzZW5kbXNnIikKK0ByZXF1aXJlQXR0cnMoc29ja2V0LCAiQUZfVU5JWCIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgU2VuZG1zZ1VuaXhTdHJlYW1UZXN0KFNlbmRtc2dTdHJlYW1UZXN0cywgU2VuZHJlY3Ztc2dVbml4U3RyZWFtVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZyIpCitAcmVxdWlyZUF0dHJzKHNvY2tldCwgIkFGX1VOSVgiKQorQHVuaXR0ZXN0LnNraXBVbmxlc3ModGhyZWFkLCAnVGhyZWFkaW5nIHJlcXVpcmVkIGZvciB0aGlzIHRlc3QuJykKK2NsYXNzIFJlY3Ztc2dVbml4U3RyZWFtVGVzdChSZWN2bXNnVGVzdHMsIFJlY3Ztc2dHZW5lcmljU3RyZWFtVGVzdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VuZHJlY3Ztc2dVbml4U3RyZWFtVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZ19pbnRvIikKK0ByZXF1aXJlQXR0cnMoc29ja2V0LCAiQUZfVU5JWCIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ0ludG9Vbml4U3RyZWFtVGVzdChSZWN2bXNnSW50b1Rlc3RzLCBSZWN2bXNnR2VuZXJpY1N0cmVhbVRlc3RzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZW5kcmVjdm1zZ1VuaXhTdHJlYW1UZXN0QmFzZSk6CisgICAgcGFzcworCitAcmVxdWlyZUF0dHJzKHNvY2tldC5zb2NrZXQsICJzZW5kbXNnIiwgInJlY3Ztc2ciKQorQHJlcXVpcmVBdHRycyhzb2NrZXQsICJBRl9VTklYIiwgIlNPTF9TT0NLRVQiLCAiU0NNX1JJR0hUUyIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ1NDTVJpZ2h0c1N0cmVhbVRlc3QoU0NNUmlnaHRzVGVzdCwgU2VuZHJlY3Ztc2dVbml4U3RyZWFtVGVzdEJhc2UpOgorICAgIHBhc3MKKworQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAic2VuZG1zZyIsICJyZWN2bXNnX2ludG8iKQorQHJlcXVpcmVBdHRycyhzb2NrZXQsICJBRl9VTklYIiwgIlNPTF9TT0NLRVQiLCAiU0NNX1JJR0hUUyIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorY2xhc3MgUmVjdm1zZ0ludG9TQ01SaWdodHNTdHJlYW1UZXN0KFJlY3Ztc2dJbnRvTWl4aW4sIFNDTVJpZ2h0c1Rlc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VuZHJlY3Ztc2dVbml4U3RyZWFtVGVzdEJhc2UpOgorICAgIHBhc3MKKworCisjIFRlc3QgaW50ZXJydXB0aW5nIHRoZSBpbnRlcnJ1cHRpYmxlIHNlbmQvcmVjZWl2ZSBtZXRob2RzIHdpdGggYQorIyBzaWduYWwgd2hlbiBhIHRpbWVvdXQgaXMgc2V0LiAgVGhlc2UgdGVzdHMgYXZvaWQgaGF2aW5nIG11bHRpcGxlCisjIHRocmVhZHMgYWxpdmUgZHVyaW5nIHRoZSB0ZXN0IHNvIHRoYXQgdGhlIE9TIGNhbm5vdCBkZWxpdmVyIHRoZQorIyBzaWduYWwgdG8gdGhlIHdyb25nIG9uZS4KKworY2xhc3MgSW50ZXJydXB0ZWRUaW1lb3V0QmFzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIyBCYXNlIGNsYXNzIGZvciBpbnRlcnJ1cHRlZCBzZW5kL3JlY2VpdmUgdGVzdHMuICBJbnN0YWxscyBhbgorICAgICMgZW1wdHkgaGFuZGxlciBmb3IgU0lHQUxSTSBhbmQgcmVtb3ZlcyBpdCBvbiB0ZWFyZG93biwgYWxvbmcgd2l0aAorICAgICMgYW55IHNjaGVkdWxlZCBhbGFybXMuCisKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHN1cGVyKCkuc2V0VXAoKQorICAgICAgICBvcmlnX2Fscm1faGFuZGxlciA9IHNpZ25hbC5zaWduYWwoc2lnbmFsLlNJR0FMUk0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYW1iZGEgc2lnbnVtLCBmcmFtZTogTm9uZSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNpZ25hbC5zaWduYWwsIHNpZ25hbC5TSUdBTFJNLCBvcmlnX2Fscm1faGFuZGxlcikKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHNlbGYuc2V0QWxhcm0sIDApCisKKyAgICAjIFRpbWVvdXQgZm9yIHNvY2tldCBvcGVyYXRpb25zCisgICAgdGltZW91dCA9IDQuMAorCisgICAgIyBQcm92aWRlIHNldEFsYXJtKCkgbWV0aG9kIHRvIHNjaGVkdWxlIGRlbGl2ZXJ5IG9mIFNJR0FMUk0gYWZ0ZXIKKyAgICAjIGdpdmVuIG51bWJlciBvZiBzZWNvbmRzLCBvciBjYW5jZWwgaXQgaWYgemVybywgYW5kIGFuCisgICAgIyBhcHByb3ByaWF0ZSB0aW1lIHZhbHVlIHRvIHVzZS4gIFVzZSBzZXRpdGltZXIoKSBpZiBhdmFpbGFibGUuCisgICAgaWYgaGFzYXR0cihzaWduYWwsICJzZXRpdGltZXIiKToKKyAgICAgICAgYWxhcm1fdGltZSA9IDAuMDUKKworICAgICAgICBkZWYgc2V0QWxhcm0oc2VsZiwgc2Vjb25kcyk6CisgICAgICAgICAgICBzaWduYWwuc2V0aXRpbWVyKHNpZ25hbC5JVElNRVJfUkVBTCwgc2Vjb25kcykKKyAgICBlbHNlOgorICAgICAgICAjIE9sZCBzeXN0ZW1zIG1heSBkZWxpdmVyIHRoZSBhbGFybSB1cCB0byBvbmUgc2Vjb25kIGVhcmx5CisgICAgICAgIGFsYXJtX3RpbWUgPSAyCisKKyAgICAgICAgZGVmIHNldEFsYXJtKHNlbGYsIHNlY29uZHMpOgorICAgICAgICAgICAgc2lnbmFsLmFsYXJtKHNlY29uZHMpCisKKworIyBSZXF1aXJlIHNpZ2ludGVycnVwdCgpIGluIG9yZGVyIHRvIGVuc3VyZSB0aGF0IHN5c3RlbSBjYWxscyBhcmUKKyMgaW50ZXJydXB0ZWQgYnkgZGVmYXVsdC4KK0ByZXF1aXJlQXR0cnMoc2lnbmFsLCAic2lnaW50ZXJydXB0IikKK0B1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc2lnbmFsLCAiYWxhcm0iKSBvciBoYXNhdHRyKHNpZ25hbCwgInNldGl0aW1lciIpLAorICAgICAgICAgICAgICAgICAgICAgIkRvbid0IGhhdmUgc2lnbmFsLmFsYXJtIG9yIHNpZ25hbC5zZXRpdGltZXIiKQorY2xhc3MgSW50ZXJydXB0ZWRSZWN2VGltZW91dFRlc3QoSW50ZXJydXB0ZWRUaW1lb3V0QmFzZSwgVURQVGVzdEJhc2UpOgorICAgICMgVGVzdCBpbnRlcnJ1cHRpbmcgdGhlIHJlY3YqKCkgbWV0aG9kcyB3aXRoIHNpZ25hbHMgd2hlbiBhCisgICAgIyB0aW1lb3V0IGlzIHNldC4KKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwZXIoKS5zZXRVcCgpCisgICAgICAgIHNlbGYuc2Vydi5zZXR0aW1lb3V0KHNlbGYudGltZW91dCkKKworICAgIGRlZiBjaGVja0ludGVycnVwdGVkUmVjdihzZWxmLCBmdW5jLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAjIENoZWNrIHRoYXQgZnVuYygqYXJncywgKiprd2FyZ3MpIHJhaXNlcyBzb2NrZXQuZXJyb3Igd2l0aCBhbgorICAgICAgICAjIGVycm5vIG9mIEVJTlRSIHdoZW4gaW50ZXJydXB0ZWQgYnkgYSBzaWduYWwuCisgICAgICAgIHNlbGYuc2V0QWxhcm0oc2VsZi5hbGFybV90aW1lKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKHNvY2tldC5lcnJvcikgYXMgY206CisgICAgICAgICAgICBmdW5jKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJc0luc3RhbmNlKGNtLmV4Y2VwdGlvbiwgc29ja2V0LnRpbWVvdXQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmVycm5vLCBlcnJuby5FSU5UUikKKworICAgIGRlZiB0ZXN0SW50ZXJydXB0ZWRSZWN2VGltZW91dChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja0ludGVycnVwdGVkUmVjdihzZWxmLnNlcnYucmVjdiwgMTAyNCkKKworICAgIGRlZiB0ZXN0SW50ZXJydXB0ZWRSZWN2SW50b1RpbWVvdXQoc2VsZik6CisgICAgICAgIHNlbGYuY2hlY2tJbnRlcnJ1cHRlZFJlY3Yoc2VsZi5zZXJ2LnJlY3ZfaW50bywgYnl0ZWFycmF5KDEwMjQpKQorCisgICAgZGVmIHRlc3RJbnRlcnJ1cHRlZFJlY3Zmcm9tVGltZW91dChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja0ludGVycnVwdGVkUmVjdihzZWxmLnNlcnYucmVjdmZyb20sIDEwMjQpCisKKyAgICBkZWYgdGVzdEludGVycnVwdGVkUmVjdmZyb21JbnRvVGltZW91dChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja0ludGVycnVwdGVkUmVjdihzZWxmLnNlcnYucmVjdmZyb21faW50bywgYnl0ZWFycmF5KDEwMjQpKQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZyIpCisgICAgZGVmIHRlc3RJbnRlcnJ1cHRlZFJlY3Ztc2dUaW1lb3V0KHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrSW50ZXJydXB0ZWRSZWN2KHNlbGYuc2Vydi5yZWN2bXNnLCAxMDI0KQorCisgICAgQHJlcXVpcmVBdHRycyhzb2NrZXQuc29ja2V0LCAicmVjdm1zZ19pbnRvIikKKyAgICBkZWYgdGVzdEludGVycnVwdGVkUmVjdm1zZ0ludG9UaW1lb3V0KHNlbGYpOgorICAgICAgICBzZWxmLmNoZWNrSW50ZXJydXB0ZWRSZWN2KHNlbGYuc2Vydi5yZWN2bXNnX2ludG8sIFtieXRlYXJyYXkoMTAyNCldKQorCisKKyMgUmVxdWlyZSBzaWdpbnRlcnJ1cHQoKSBpbiBvcmRlciB0byBlbnN1cmUgdGhhdCBzeXN0ZW0gY2FsbHMgYXJlCisjIGludGVycnVwdGVkIGJ5IGRlZmF1bHQuCitAcmVxdWlyZUF0dHJzKHNpZ25hbCwgInNpZ2ludGVycnVwdCIpCitAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNpZ25hbCwgImFsYXJtIikgb3IgaGFzYXR0cihzaWduYWwsICJzZXRpdGltZXIiKSwKKyAgICAgICAgICAgICAgICAgICAgICJEb24ndCBoYXZlIHNpZ25hbC5hbGFybSBvciBzaWduYWwuc2V0aXRpbWVyIikKK0B1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCitjbGFzcyBJbnRlcnJ1cHRlZFNlbmRUaW1lb3V0VGVzdChJbnRlcnJ1cHRlZFRpbWVvdXRCYXNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhyZWFkU2FmZUNsZWFudXBUZXN0Q2FzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNvY2tldExpc3RlbmluZ1Rlc3RNaXhpbiwgVENQVGVzdEJhc2UpOgorICAgICMgVGVzdCBpbnRlcnJ1cHRpbmcgdGhlIGludGVycnVwdGlibGUgc2VuZCooKSBtZXRob2RzIHdpdGggc2lnbmFscworICAgICMgd2hlbiBhIHRpbWVvdXQgaXMgc2V0LgorCisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzdXBlcigpLnNldFVwKCkKKyAgICAgICAgc2VsZi5zZXJ2X2Nvbm4gPSBzZWxmLm5ld1NvY2tldCgpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzZWxmLnNlcnZfY29ubi5jbG9zZSkKKyAgICAgICAgIyBVc2UgYSB0aHJlYWQgdG8gY29tcGxldGUgdGhlIGNvbm5lY3Rpb24sIGJ1dCB3YWl0IGZvciBpdCB0bworICAgICAgICAjIHRlcm1pbmF0ZSBiZWZvcmUgcnVubmluZyB0aGUgdGVzdCwgc28gdGhhdCB0aGVyZSBpcyBvbmx5IG9uZQorICAgICAgICAjIHRocmVhZCB0byBhY2NlcHQgdGhlIHNpZ25hbC4KKyAgICAgICAgY2xpX3RocmVhZCA9IHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PXNlbGYuZG9Db25uZWN0KQorICAgICAgICBjbGlfdGhyZWFkLnN0YXJ0KCkKKyAgICAgICAgc2VsZi5jbGlfY29ubiwgYWRkciA9IHNlbGYuc2Vydi5hY2NlcHQoKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc2VsZi5jbGlfY29ubi5jbG9zZSkKKyAgICAgICAgY2xpX3RocmVhZC5qb2luKCkKKyAgICAgICAgc2VsZi5zZXJ2X2Nvbm4uc2V0dGltZW91dChzZWxmLnRpbWVvdXQpCisKKyAgICBkZWYgZG9Db25uZWN0KHNlbGYpOgorICAgICAgICBzZWxmLnNlcnZfY29ubi5jb25uZWN0KHNlbGYuc2Vydl9hZGRyKQorCisgICAgZGVmIGNoZWNrSW50ZXJydXB0ZWRTZW5kKHNlbGYsIGZ1bmMsICphcmdzLCAqKmt3YXJncyk6CisgICAgICAgICMgQ2hlY2sgdGhhdCBmdW5jKCphcmdzLCAqKmt3YXJncyksIHJ1biBpbiBhIGxvb3AsIHJhaXNlcworICAgICAgICAjIHNvY2tldC5lcnJvciB3aXRoIGFuIGVycm5vIG9mIEVJTlRSIHdoZW4gaW50ZXJydXB0ZWQgYnkgYQorICAgICAgICAjIHNpZ25hbC4KKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgICAgICBzZWxmLnNldEFsYXJtKHNlbGYuYWxhcm1fdGltZSkKKyAgICAgICAgICAgICAgICBmdW5jKCphcmdzLCAqKmt3YXJncykKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJc0luc3RhbmNlKGNtLmV4Y2VwdGlvbiwgc29ja2V0LnRpbWVvdXQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmVycm5vLCBlcnJuby5FSU5UUikKKworICAgICMgSXNzdWUgIzEyOTU4OiBUaGUgZm9sbG93aW5nIHRlc3RzIGhhdmUgcHJvYmxlbXMgb24gTWFjIE9TIFgKKyAgICBAc3VwcG9ydC5hbnRpY2lwYXRlX2ZhaWx1cmUoc3lzLnBsYXRmb3JtID09ICJkYXJ3aW4iKQorICAgIGRlZiB0ZXN0SW50ZXJydXB0ZWRTZW5kVGltZW91dChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja0ludGVycnVwdGVkU2VuZChzZWxmLnNlcnZfY29ubi5zZW5kLCBiImEiKjUxMikKKworICAgIEBzdXBwb3J0LmFudGljaXBhdGVfZmFpbHVyZShzeXMucGxhdGZvcm0gPT0gImRhcndpbiIpCisgICAgZGVmIHRlc3RJbnRlcnJ1cHRlZFNlbmR0b1RpbWVvdXQoc2VsZik6CisgICAgICAgICMgUGFzc2luZyBhbiBhY3R1YWwgYWRkcmVzcyBoZXJlIGFzIFB5dGhvbidzIHdyYXBwZXIgZm9yCisgICAgICAgICMgc2VuZHRvKCkgZG9lc24ndCBhbGxvdyBwYXNzaW5nIGEgemVyby1sZW5ndGggb25lOyBQT1NJWAorICAgICAgICAjIHJlcXVpcmVzIHRoYXQgdGhlIGFkZHJlc3MgaXMgaWdub3JlZCBzaW5jZSB0aGUgc29ja2V0IGlzCisgICAgICAgICMgY29ubmVjdGlvbi1tb2RlLCBob3dldmVyLgorICAgICAgICBzZWxmLmNoZWNrSW50ZXJydXB0ZWRTZW5kKHNlbGYuc2Vydl9jb25uLnNlbmR0bywgYiJhIio1MTIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zZXJ2X2FkZHIpCisKKyAgICBAc3VwcG9ydC5hbnRpY2lwYXRlX2ZhaWx1cmUoc3lzLnBsYXRmb3JtID09ICJkYXJ3aW4iKQorICAgIEByZXF1aXJlQXR0cnMoc29ja2V0LnNvY2tldCwgInNlbmRtc2ciKQorICAgIGRlZiB0ZXN0SW50ZXJydXB0ZWRTZW5kbXNnVGltZW91dChzZWxmKToKKyAgICAgICAgc2VsZi5jaGVja0ludGVycnVwdGVkU2VuZChzZWxmLnNlcnZfY29ubi5zZW5kbXNnLCBbYiJhIio1MTJdKQorCisKIEB1bml0dGVzdC5za2lwVW5sZXNzKHRocmVhZCwgJ1RocmVhZGluZyByZXF1aXJlZCBmb3IgdGhpcyB0ZXN0LicpCiBjbGFzcyBUQ1BDbG9zZXJUZXN0KFRocmVhZGVkVENQU29ja2V0VGVzdCk6CiAKQEAgLTEwNjgsMTEgKzM1MzcsOCBAQAogICAgICAgICBwYXNzCiAKICAgICBpZiBoYXNhdHRyKHNvY2tldCwgIlNPQ0tfTk9OQkxPQ0siKToKKyAgICAgICAgQHN1cHBvcnQucmVxdWlyZXNfbGludXhfdmVyc2lvbigyLCA2LCAyOCkKICAgICAgICAgZGVmIHRlc3RJbml0Tm9uQmxvY2tpbmcoc2VsZik6Ci0gICAgICAgICAgICB2ID0gbGludXhfdmVyc2lvbigpCi0gICAgICAgICAgICBpZiB2IDwgKDIsIDYsIDI4KToKLSAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJMaW51eCBrZXJuZWwgMi42LjI4IG9yIGhpZ2hlciByZXF1aXJlZCwgbm90ICVzIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJSAiLiIuam9pbihtYXAoc3RyLCB2KSkpCiAgICAgICAgICAgICAjIHJlaW5pdCBzZXJ2ZXIgc29ja2V0CiAgICAgICAgICAgICBzZWxmLnNlcnYuY2xvc2UoKQogICAgICAgICAgICAgc2VsZi5zZXJ2ID0gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCwgc29ja2V0LlNPQ0tfU1RSRUFNIHwKQEAgLTExNzQsNyArMzY0MCw3IEBACiAgICAgIiIiCiAKICAgICBidWZzaXplID0gLTEgIyBVc2UgZGVmYXVsdCBidWZmZXIgc2l6ZQotICAgIGVuY29kaW5nID0gJ3V0ZjgnCisgICAgZW5jb2RpbmcgPSAndXRmLTgnCiAgICAgZXJyb3JzID0gJ3N0cmljdCcKICAgICBuZXdsaW5lID0gTm9uZQogCkBAIC0xMzU1LDcgKzM4MjEsNyBAQAogCiAgICAgQHN0YXRpY21ldGhvZAogICAgIGRlZiBfcmFpc2VfZWludHIoKToKLSAgICAgICAgcmFpc2Ugc29ja2V0LmVycm9yKGVycm5vLkVJTlRSKQorICAgICAgICByYWlzZSBzb2NrZXQuZXJyb3IoZXJybm8uRUlOVFIsICJpbnRlcnJ1cHRlZCIpCiAKICAgICBkZWYgX3RleHRpb3dyYXBfbW9ja19zb2NrZXQoc2VsZiwgbW9jaywgYnVmZmVyaW5nPS0xKToKICAgICAgICAgcmF3ID0gc29ja2V0LlNvY2tldElPKG1vY2ssICJyIikKQEAgLTEzOTUsNyArMzg2MSw3IEBACiAgICAgICAgICAgICBkYXRhID0gYicnCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBkYXRhID0gJycKLSAgICAgICAgICAgIGV4cGVjdGluZyA9IGV4cGVjdGluZy5kZWNvZGUoJ3V0ZjgnKQorICAgICAgICAgICAgZXhwZWN0aW5nID0gZXhwZWN0aW5nLmRlY29kZSgndXRmLTgnKQogICAgICAgICB3aGlsZSBsZW4oZGF0YSkgIT0gbGVuKGV4cGVjdGluZyk6CiAgICAgICAgICAgICBwYXJ0ID0gZm8ucmVhZChzaXplKQogICAgICAgICAgICAgaWYgbm90IHBhcnQ6CkBAIC0xNTU3LDcgKzQwMjMsNyBAQAogICAgICIiIlRlc3RzIGZvciBzb2NrZXQubWFrZWZpbGUoKSBpbiB0ZXh0IG1vZGUgKHJhdGhlciB0aGFuIGJpbmFyeSkiIiIKIAogICAgIHJlYWRfbW9kZSA9ICdyJwotICAgIHJlYWRfbXNnID0gTVNHLmRlY29kZSgndXRmOCcpCisgICAgcmVhZF9tc2cgPSBNU0cuZGVjb2RlKCd1dGYtOCcpCiAgICAgd3JpdGVfbW9kZSA9ICd3YicKICAgICB3cml0ZV9tc2cgPSBNU0cKICAgICBuZXdsaW5lID0gJycKQEAgLTE1NjksNyArNDAzNSw3IEBACiAgICAgcmVhZF9tb2RlID0gJ3JiJwogICAgIHJlYWRfbXNnID0gTVNHCiAgICAgd3JpdGVfbW9kZSA9ICd3JwotICAgIHdyaXRlX21zZyA9IE1TRy5kZWNvZGUoJ3V0ZjgnKQorICAgIHdyaXRlX21zZyA9IE1TRy5kZWNvZGUoJ3V0Zi04JykKICAgICBuZXdsaW5lID0gJycKIAogCkBAIC0xNTc3LDkgKzQwNDMsOSBAQAogICAgICIiIlRlc3RzIGZvciBzb2NrZXQubWFrZWZpbGUoKSBpbiB0ZXh0IG1vZGUgKHJhdGhlciB0aGFuIGJpbmFyeSkiIiIKIAogICAgIHJlYWRfbW9kZSA9ICdyJwotICAgIHJlYWRfbXNnID0gTVNHLmRlY29kZSgndXRmOCcpCisgICAgcmVhZF9tc2cgPSBNU0cuZGVjb2RlKCd1dGYtOCcpCiAgICAgd3JpdGVfbW9kZSA9ICd3JwotICAgIHdyaXRlX21zZyA9IE1TRy5kZWNvZGUoJ3V0ZjgnKQorICAgIHdyaXRlX21zZyA9IE1TRy5kZWNvZGUoJ3V0Zi04JykKICAgICBuZXdsaW5lID0gJycKIAogCkBAIC0xODUxLDYgKzQzMTcsNzggQEAKICAgICAgICAgd2l0aCBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9VTklYLCBzb2NrZXQuU09DS19TVFJFQU0pIGFzIHM6CiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzb2NrZXQuZXJyb3IsIHMuYmluZCwgYWRkcmVzcykKIAorICAgIGRlZiB0ZXN0U3RyTmFtZShzZWxmKToKKyAgICAgICAgIyBDaGVjayB0aGF0IGFuIGFic3RyYWN0IG5hbWUgY2FuIGJlIHBhc3NlZCBhcyBhIHN0cmluZy4KKyAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX1VOSVgsIHNvY2tldC5TT0NLX1NUUkVBTSkKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgcy5iaW5kKCJceDAwcHl0aG9uXHgwMHRlc3RceDAwIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXRzb2NrbmFtZSgpLCBiIlx4MDBweXRob25ceDAwdGVzdFx4MDAiKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgcy5jbG9zZSgpCisKK2NsYXNzIFRlc3RVbml4RG9tYWluKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5zb2NrID0gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfVU5JWCwgc29ja2V0LlNPQ0tfU1RSRUFNKQorCisgICAgZGVmIHRlYXJEb3duKHNlbGYpOgorICAgICAgICBzZWxmLnNvY2suY2xvc2UoKQorCisgICAgZGVmIGVuY29kZWQoc2VsZiwgcGF0aCk6CisgICAgICAgICMgUmV0dXJuIHRoZSBnaXZlbiBwYXRoIGVuY29kZWQgaW4gdGhlIGZpbGUgc3lzdGVtIGVuY29kaW5nLAorICAgICAgICAjIG9yIHNraXAgdGhlIHRlc3QgaWYgdGhpcyBpcyBub3QgcG9zc2libGUuCisgICAgICAgIHRyeToKKyAgICAgICAgICAgIHJldHVybiBvcy5mc2VuY29kZShwYXRoKQorICAgICAgICBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgKKyAgICAgICAgICAgICAgICAiUGF0aG5hbWUgezAhYX0gY2Fubm90IGJlIHJlcHJlc2VudGVkIGluIGZpbGUgIgorICAgICAgICAgICAgICAgICJzeXN0ZW0gZW5jb2RpbmcgezEhcn0iLmZvcm1hdCgKKyAgICAgICAgICAgICAgICAgICAgcGF0aCwgc3lzLmdldGZpbGVzeXN0ZW1lbmNvZGluZygpKSkKKworICAgIGRlZiBiaW5kKHNlbGYsIHNvY2ssIHBhdGgpOgorICAgICAgICAjIEJpbmQgdGhlIHNvY2tldAorICAgICAgICB0cnk6CisgICAgICAgICAgICBzb2NrLmJpbmQocGF0aCkKKyAgICAgICAgZXhjZXB0IE9TRXJyb3IgYXMgZToKKyAgICAgICAgICAgIGlmIHN0cihlKSA9PSAiQUZfVU5JWCBwYXRoIHRvbyBsb25nIjoKKyAgICAgICAgICAgICAgICBzZWxmLnNraXBUZXN0KAorICAgICAgICAgICAgICAgICAgICAiUGF0aG5hbWUgezAhYX0gaXMgdG9vIGxvbmcgdG8gc2VydmUgYXMgYSBBRl9VTklYIHBhdGgiCisgICAgICAgICAgICAgICAgICAgIC5mb3JtYXQocGF0aCkpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHJhaXNlCisKKyAgICBkZWYgdGVzdFN0ckFkZHIoc2VsZik6CisgICAgICAgICMgVGVzdCBiaW5kaW5nIHRvIGFuZCByZXRyaWV2aW5nIGEgbm9ybWFsIHN0cmluZyBwYXRobmFtZS4KKyAgICAgICAgcGF0aCA9IG9zLnBhdGguYWJzcGF0aChzdXBwb3J0LlRFU1RGTikKKyAgICAgICAgc2VsZi5iaW5kKHNlbGYuc29jaywgcGF0aCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN1cHBvcnQudW5saW5rLCBwYXRoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc29jay5nZXRzb2NrbmFtZSgpLCBwYXRoKQorCisgICAgZGVmIHRlc3RCeXRlc0FkZHIoc2VsZik6CisgICAgICAgICMgVGVzdCBiaW5kaW5nIHRvIGEgYnl0ZXMgcGF0aG5hbWUuCisgICAgICAgIHBhdGggPSBvcy5wYXRoLmFic3BhdGgoc3VwcG9ydC5URVNURk4pCisgICAgICAgIHNlbGYuYmluZChzZWxmLnNvY2ssIHNlbGYuZW5jb2RlZChwYXRoKSkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN1cHBvcnQudW5saW5rLCBwYXRoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc29jay5nZXRzb2NrbmFtZSgpLCBwYXRoKQorCisgICAgZGVmIHRlc3RTdXJyb2dhdGVlc2NhcGVCaW5kKHNlbGYpOgorICAgICAgICAjIFRlc3QgYmluZGluZyB0byBhIHZhbGlkIG5vbi1BU0NJSSBwYXRobmFtZSwgd2l0aCB0aGUKKyAgICAgICAgIyBub24tQVNDSUkgYnl0ZXMgc3VwcGxpZWQgdXNpbmcgc3Vycm9nYXRlZXNjYXBlIGVuY29kaW5nLgorICAgICAgICBwYXRoID0gb3MucGF0aC5hYnNwYXRoKHN1cHBvcnQuVEVTVEZOX1VOSUNPREUpCisgICAgICAgIGIgPSBzZWxmLmVuY29kZWQocGF0aCkKKyAgICAgICAgc2VsZi5iaW5kKHNlbGYuc29jaywgYi5kZWNvZGUoImFzY2lpIiwgInN1cnJvZ2F0ZWVzY2FwZSIpKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3VwcG9ydC51bmxpbmssIHBhdGgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5zb2NrLmdldHNvY2tuYW1lKCksIHBhdGgpCisKKyAgICBkZWYgdGVzdFVuZW5jb2RhYmxlQWRkcihzZWxmKToKKyAgICAgICAgIyBUZXN0IGJpbmRpbmcgdG8gYSBwYXRobmFtZSB0aGF0IGNhbm5vdCBiZSBlbmNvZGVkIGluIHRoZQorICAgICAgICAjIGZpbGUgc3lzdGVtIGVuY29kaW5nLgorICAgICAgICBpZiBzdXBwb3J0LlRFU1RGTl9VTkVOQ09EQUJMRSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiTm8gdW5lbmNvZGFibGUgZmlsZW5hbWUgYXZhaWxhYmxlIikKKyAgICAgICAgcGF0aCA9IG9zLnBhdGguYWJzcGF0aChzdXBwb3J0LlRFU1RGTl9VTkVOQ09EQUJMRSkKKyAgICAgICAgc2VsZi5iaW5kKHNlbGYuc29jaywgcGF0aCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN1cHBvcnQudW5saW5rLCBwYXRoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuc29jay5nZXRzb2NrbmFtZSgpLCBwYXRoKQogCiBAdW5pdHRlc3Quc2tpcFVubGVzcyh0aHJlYWQsICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQogY2xhc3MgQnVmZmVySU9UZXN0KFNvY2tldENvbm5lY3RlZFRlc3QpOgpAQCAtMjA1MSwxMSArNDU4OSw4IEBACiAgICAgICAgICAgICAgICAgICAgICAiU09DS19DTE9FWEVDIG5vdCBkZWZpbmVkIikKIEB1bml0dGVzdC5za2lwVW5sZXNzKGZjbnRsLCAibW9kdWxlIGZjbnRsIG5vdCBhdmFpbGFibGUiKQogY2xhc3MgQ2xvZXhlY0NvbnN0YW50VGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgQHN1cHBvcnQucmVxdWlyZXNfbGludXhfdmVyc2lvbigyLCA2LCAyOCkKICAgICBkZWYgdGVzdF9TT0NLX0NMT0VYRUMoc2VsZik6Ci0gICAgICAgIHYgPSBsaW51eF92ZXJzaW9uKCkKLSAgICAgICAgaWYgdiA8ICgyLCA2LCAyOCk6Ci0gICAgICAgICAgICBzZWxmLnNraXBUZXN0KCJMaW51eCBrZXJuZWwgMi42LjI4IG9yIGhpZ2hlciByZXF1aXJlZCwgbm90ICVzIgotICAgICAgICAgICAgICAgICAgICAgICAgICAlICIuIi5qb2luKG1hcChzdHIsIHYpKSkKICAgICAgICAgd2l0aCBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0LlNPQ0tfU1RSRUFNIHwgc29ja2V0LlNPQ0tfQ0xPRVhFQykgYXMgczoKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzLnR5cGUgJiBzb2NrZXQuU09DS19DTE9FWEVDKQpAQCAtMjA3MywxMSArNDYwOCw4IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHMudHlwZSAmIHNvY2tldC5TT0NLX05PTkJMT0NLKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHRpbWVvdXQoKSwgTm9uZSkKIAorICAgIEBzdXBwb3J0LnJlcXVpcmVzX2xpbnV4X3ZlcnNpb24oMiwgNiwgMjgpCiAgICAgZGVmIHRlc3RfU09DS19OT05CTE9DSyhzZWxmKToKLSAgICAgICAgdiA9IGxpbnV4X3ZlcnNpb24oKQotICAgICAgICBpZiB2IDwgKDIsIDYsIDI4KToKLSAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIkxpbnV4IGtlcm5lbCAyLjYuMjggb3IgaGlnaGVyIHJlcXVpcmVkLCBub3QgJXMiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICUgIi4iLmpvaW4obWFwKHN0ciwgdikpKQogICAgICAgICAjIGEgbG90IG9mIGl0IHNlZW1zIHNpbGx5IGFuZCByZWR1bmRhbnQsIGJ1dCBJIHdhbnRlZCB0byB0ZXN0IHRoYXQKICAgICAgICAgIyBjaGFuZ2luZyBiYWNrIGFuZCBmb3J0aCB3b3JrZWQgb2sKICAgICAgICAgd2l0aCBzb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULApAQCAtMjEzMywxMSArNDY2NSw0MCBAQAogICAgIF0pCiAgICAgaWYgaGFzYXR0cihzb2NrZXQsICJzb2NrZXRwYWlyIik6CiAgICAgICAgIHRlc3RzLmFwcGVuZChCYXNpY1NvY2tldFBhaXJUZXN0KQotICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnbGludXgyJzoKKyAgICBpZiBoYXNhdHRyKHNvY2tldCwgIkFGX1VOSVgiKToKKyAgICAgICAgdGVzdHMuYXBwZW5kKFRlc3RVbml4RG9tYWluKQorICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAnbGludXgnOgogICAgICAgICB0ZXN0cy5hcHBlbmQoVGVzdExpbnV4QWJzdHJhY3ROYW1lc3BhY2UpCiAgICAgaWYgaXNUaXBjQXZhaWxhYmxlKCk6CiAgICAgICAgIHRlc3RzLmFwcGVuZChUSVBDVGVzdCkKICAgICAgICAgdGVzdHMuYXBwZW5kKFRJUENUaHJlYWRhYmxlVGVzdCkKKyAgICB0ZXN0cy5leHRlbmQoW0Jhc2ljQ0FOVGVzdCwgQ0FOVGVzdF0pCisgICAgdGVzdHMuZXh0ZW5kKFtCYXNpY1JEU1Rlc3QsIFJEU1Rlc3RdKQorICAgIHRlc3RzLmV4dGVuZChbCisgICAgICAgIENtc2dNYWNyb1Rlc3RzLAorICAgICAgICBTZW5kbXNnVURQVGVzdCwKKyAgICAgICAgUmVjdm1zZ1VEUFRlc3QsCisgICAgICAgIFJlY3Ztc2dJbnRvVURQVGVzdCwKKyAgICAgICAgU2VuZG1zZ1VEUDZUZXN0LAorICAgICAgICBSZWN2bXNnVURQNlRlc3QsCisgICAgICAgIFJlY3Ztc2dSRkMzNTQyQW5jaWxsYXJ5VURQNlRlc3QsCisgICAgICAgIFJlY3Ztc2dJbnRvUkZDMzU0MkFuY2lsbGFyeVVEUDZUZXN0LAorICAgICAgICBSZWN2bXNnSW50b1VEUDZUZXN0LAorICAgICAgICBTZW5kbXNnVENQVGVzdCwKKyAgICAgICAgUmVjdm1zZ1RDUFRlc3QsCisgICAgICAgIFJlY3Ztc2dJbnRvVENQVGVzdCwKKyAgICAgICAgU2VuZG1zZ1NDVFBTdHJlYW1UZXN0LAorICAgICAgICBSZWN2bXNnU0NUUFN0cmVhbVRlc3QsCisgICAgICAgIFJlY3Ztc2dJbnRvU0NUUFN0cmVhbVRlc3QsCisgICAgICAgIFNlbmRtc2dVbml4U3RyZWFtVGVzdCwKKyAgICAgICAgUmVjdm1zZ1VuaXhTdHJlYW1UZXN0LAorICAgICAgICBSZWN2bXNnSW50b1VuaXhTdHJlYW1UZXN0LAorICAgICAgICBSZWN2bXNnU0NNUmlnaHRzU3RyZWFtVGVzdCwKKyAgICAgICAgUmVjdm1zZ0ludG9TQ01SaWdodHNTdHJlYW1UZXN0LAorICAgICAgICAjIFRoZXNlIGFyZSBzbG93IHdoZW4gc2V0aXRpbWVyKCkgaXMgbm90IGF2YWlsYWJsZQorICAgICAgICBJbnRlcnJ1cHRlZFJlY3ZUaW1lb3V0VGVzdCwKKyAgICAgICAgSW50ZXJydXB0ZWRTZW5kVGltZW91dFRlc3QsCisgICAgXSkKIAogICAgIHRocmVhZF9pbmZvID0gc3VwcG9ydC50aHJlYWRpbmdfc2V0dXAoKQogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KCp0ZXN0cykKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfc3NsLnB5IGIvTGliL3Rlc3QvdGVzdF9zc2wucHkKaW5kZXggMWIwOGYyZS4uMzNmMDZkNiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9zc2wucHkKKysrIGIvTGliL3Rlc3QvdGVzdF9zc2wucHkKQEAgLTQyLDYgKzQyLDkgQEAKIE9OTFlLRVkgPSBkYXRhX2ZpbGUoInNzbF9rZXkucGVtIikKIEJZVEVTX09OTFlDRVJUID0gb3MuZnNlbmNvZGUoT05MWUNFUlQpCiBCWVRFU19PTkxZS0VZID0gb3MuZnNlbmNvZGUoT05MWUtFWSkKK0NFUlRGSUxFX1BST1RFQ1RFRCA9IGRhdGFfZmlsZSgia2V5Y2VydC5wYXNzd2QucGVtIikKK09OTFlLRVlfUFJPVEVDVEVEID0gZGF0YV9maWxlKCJzc2xfa2V5LnBhc3N3ZC5wZW0iKQorS0VZX1BBU1NXT1JEID0gInNvbWVwYXNzIgogQ0FQQVRIID0gZGF0YV9maWxlKCJjYXBhdGgiKQogQllURVNfQ0FQQVRIID0gb3MuZnNlbmNvZGUoQ0FQQVRIKQogCkBAIC01Myw2ICs1Niw4IEBACiBCQURLRVkgPSBkYXRhX2ZpbGUoImJhZGtleS5wZW0iKQogTk9LSUFDRVJUID0gZGF0YV9maWxlKCJub2tpYS5wZW0iKQogCitESEZJTEUgPSBkYXRhX2ZpbGUoImRoNTEyLnBlbSIpCitCWVRFU19ESEZJTEUgPSBvcy5mc2VuY29kZShESEZJTEUpCiAKIGRlZiBoYW5kbGVfZXJyb3IocHJlZml4KToKICAgICBleGNfZm9ybWF0ID0gJyAnLmpvaW4odHJhY2ViYWNrLmZvcm1hdF9leGNlcHRpb24oKnN5cy5leGNfaW5mbygpKSkKQEAgLTk1LDcgKzEwMCwxMyBAQAogICAgICAgICBzc2wuQ0VSVF9OT05FCiAgICAgICAgIHNzbC5DRVJUX09QVElPTkFMCiAgICAgICAgIHNzbC5DRVJUX1JFUVVJUkVECisgICAgICAgIHNzbC5PUF9DSVBIRVJfU0VSVkVSX1BSRUZFUkVOQ0UKKyAgICAgICAgc3NsLk9QX1NJTkdMRV9ESF9VU0UKKyAgICAgICAgc3NsLk9QX1NJTkdMRV9FQ0RIX1VTRQorICAgICAgICBpZiBzc2wuT1BFTlNTTF9WRVJTSU9OX0lORk8gPj0gKDEsIDApOgorICAgICAgICAgICAgc3NsLk9QX05PX0NPTVBSRVNTSU9OCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4oc3NsLkhBU19TTkksIHtUcnVlLCBGYWxzZX0pCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oc3NsLkhBU19FQ0RILCB7VHJ1ZSwgRmFsc2V9KQogCiAgICAgZGVmIHRlc3RfcmFuZG9tKHNlbGYpOgogICAgICAgICB2ID0gc3NsLlJBTkRfc3RhdHVzKCkKQEAgLTEwMyw2ICsxMTQsMTYgQEAKICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoIlxuIFJBTkRfc3RhdHVzIGlzICVkICglcylcbiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJSAodiwgKHYgYW5kICJzdWZmaWNpZW50IHJhbmRvbW5lc3MiKSBvcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW5zdWZmaWNpZW50IHJhbmRvbW5lc3MiKSkKKworICAgICAgICBkYXRhLCBpc19jcnlwdG9ncmFwaGljID0gc3NsLlJBTkRfcHNldWRvX2J5dGVzKDE2KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihkYXRhKSwgMTYpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoaXNfY3J5cHRvZ3JhcGhpYywgdiA9PSAxKQorICAgICAgICBpZiB2OgorICAgICAgICAgICAgZGF0YSA9IHNzbC5SQU5EX2J5dGVzKDE2KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oZGF0YSksIDE2KQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc3NsLlNTTEVycm9yLCBzc2wuUkFORF9ieXRlcywgMTYpCisKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgc3NsLlJBTkRfZWdkKDEpCiAgICAgICAgIGV4Y2VwdCBUeXBlRXJyb3I6CkBAIC0zMzcsNiArMzU4LDI1IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBjdHgud3JhcF9zb2NrZXQsIHNvY2ssIFRydWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXJ2ZXJfaG9zdG5hbWU9InNvbWUuaG9zdG5hbWUiKQogCisgICAgZGVmIHRlc3RfdW5rbm93bl9jaGFubmVsX2JpbmRpbmcoc2VsZik6CisgICAgICAgICMgc2hvdWxkIHJhaXNlIFZhbHVlRXJyb3IgZm9yIHVua25vd24gdHlwZQorICAgICAgICBzID0gc29ja2V0LnNvY2tldChzb2NrZXQuQUZfSU5FVCkKKyAgICAgICAgc3MgPSBzc2wud3JhcF9zb2NrZXQocykKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKToKKyAgICAgICAgICAgIHNzLmdldF9jaGFubmVsX2JpbmRpbmcoInVua25vd24tdHlwZSIpCisKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcygidGxzLXVuaXF1ZSIgaW4gc3NsLkNIQU5ORUxfQklORElOR19UWVBFUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAiJ3Rscy11bmlxdWUnIGNoYW5uZWwgYmluZGluZyBub3QgYXZhaWxhYmxlIikKKyAgICBkZWYgdGVzdF90bHNfdW5pcXVlX2NoYW5uZWxfYmluZGluZyhzZWxmKToKKyAgICAgICAgIyB1bmNvbm5lY3RlZCBzaG91bGQgcmV0dXJuIE5vbmUgZm9yIGtub3duIHR5cGUKKyAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQpCisgICAgICAgIHNzID0gc3NsLndyYXBfc29ja2V0KHMpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKHNzLmdldF9jaGFubmVsX2JpbmRpbmcoInRscy11bmlxdWUiKSkKKyAgICAgICAgIyB0aGUgc2FtZSBmb3Igc2VydmVyLXNpZGUKKyAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoc29ja2V0LkFGX0lORVQpCisgICAgICAgIHNzID0gc3NsLndyYXBfc29ja2V0KHMsIHNlcnZlcl9zaWRlPVRydWUsIGNlcnRmaWxlPUNFUlRGSUxFKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShzcy5nZXRfY2hhbm5lbF9iaW5kaW5nKCJ0bHMtdW5pcXVlIikpCisKIGNsYXNzIENvbnRleHRUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKICAgICBAc2tpcF9pZl9icm9rZW5fdWJ1bnR1X3NzbApAQCAtNDI3LDYgKzQ2Nyw2MCBAQAogICAgICAgICBjdHggPSBzc2wuU1NMQ29udGV4dChzc2wuUFJPVE9DT0xfVExTdjEpCiAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXNSZWdleChzc2wuU1NMRXJyb3IsICJrZXkgdmFsdWVzIG1pc21hdGNoIik6CiAgICAgICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKFNWTl9QWVRIT05fT1JHX1JPT1RfQ0VSVCwgT05MWUtFWSkKKyAgICAgICAgIyBQYXNzd29yZCBwcm90ZWN0ZWQga2V5IGFuZCBjZXJ0CisgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD1LRVlfUEFTU1dPUkQpCisgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD1LRVlfUEFTU1dPUkQuZW5jb2RlKCkpCisgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhc3N3b3JkPWJ5dGVhcnJheShLRVlfUEFTU1dPUkQuZW5jb2RlKCkpKQorICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKE9OTFlDRVJULCBPTkxZS0VZX1BST1RFQ1RFRCwgS0VZX1BBU1NXT1JEKQorICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKE9OTFlDRVJULCBPTkxZS0VZX1BST1RFQ1RFRCwgS0VZX1BBU1NXT1JELmVuY29kZSgpKQorICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKE9OTFlDRVJULCBPTkxZS0VZX1BST1RFQ1RFRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBieXRlYXJyYXkoS0VZX1BBU1NXT1JELmVuY29kZSgpKSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4KFR5cGVFcnJvciwgInNob3VsZCBiZSBhIHN0cmluZyIpOgorICAgICAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihDRVJURklMRV9QUk9URUNURUQsIHBhc3N3b3JkPVRydWUpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoc3NsLlNTTEVycm9yKToKKyAgICAgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD0iYmFkcGFzcyIpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXNSZWdleChWYWx1ZUVycm9yLCAiY2Fubm90IGJlIGxvbmdlciIpOgorICAgICAgICAgICAgIyBvcGVuc3NsIGhhcyBhIGZpeGVkIGxpbWl0IG9uIHRoZSBwYXNzd29yZCBidWZmZXIuCisgICAgICAgICAgICAjIFBFTV9CVUZTSVpFIGlzIGdlbmVyYWxseSBzZXQgdG8gMWtiLgorICAgICAgICAgICAgIyBSZXR1cm4gYSBzdHJpbmcgbGFyZ2VyIHRoYW4gdGhpcy4KKyAgICAgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD1iJ2EnICogMTAyNDAwKQorICAgICAgICAjIFBhc3N3b3JkIGNhbGxiYWNrCisgICAgICAgIGRlZiBnZXRwYXNzX3VuaWNvZGUoKToKKyAgICAgICAgICAgIHJldHVybiBLRVlfUEFTU1dPUkQKKyAgICAgICAgZGVmIGdldHBhc3NfYnl0ZXMoKToKKyAgICAgICAgICAgIHJldHVybiBLRVlfUEFTU1dPUkQuZW5jb2RlKCkKKyAgICAgICAgZGVmIGdldHBhc3NfYnl0ZWFycmF5KCk6CisgICAgICAgICAgICByZXR1cm4gYnl0ZWFycmF5KEtFWV9QQVNTV09SRC5lbmNvZGUoKSkKKyAgICAgICAgZGVmIGdldHBhc3NfYmFkcGFzcygpOgorICAgICAgICAgICAgcmV0dXJuICJiYWRwYXNzIgorICAgICAgICBkZWYgZ2V0cGFzc19odWdlKCk6CisgICAgICAgICAgICByZXR1cm4gYidhJyAqICgxMDI0ICogMTAyNCkKKyAgICAgICAgZGVmIGdldHBhc3NfYmFkX3R5cGUoKToKKyAgICAgICAgICAgIHJldHVybiA5CisgICAgICAgIGRlZiBnZXRwYXNzX2V4Y2VwdGlvbigpOgorICAgICAgICAgICAgcmFpc2UgRXhjZXB0aW9uKCdnZXRwYXNzIGVycm9yJykKKyAgICAgICAgY2xhc3MgR2V0UGFzc0NhbGxhYmxlOgorICAgICAgICAgICAgZGVmIF9fY2FsbF9fKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiBLRVlfUEFTU1dPUkQKKyAgICAgICAgICAgIGRlZiBnZXRwYXNzKHNlbGYpOgorICAgICAgICAgICAgICAgIHJldHVybiBLRVlfUEFTU1dPUkQKKyAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihDRVJURklMRV9QUk9URUNURUQsIHBhc3N3b3JkPWdldHBhc3NfdW5pY29kZSkKKyAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihDRVJURklMRV9QUk9URUNURUQsIHBhc3N3b3JkPWdldHBhc3NfYnl0ZXMpCisgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD1nZXRwYXNzX2J5dGVhcnJheSkKKyAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihDRVJURklMRV9QUk9URUNURUQsIHBhc3N3b3JkPUdldFBhc3NDYWxsYWJsZSgpKQorICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFX1BST1RFQ1RFRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXNzd29yZD1HZXRQYXNzQ2FsbGFibGUoKS5nZXRwYXNzKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKHNzbC5TU0xFcnJvcik6CisgICAgICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFX1BST1RFQ1RFRCwgcGFzc3dvcmQ9Z2V0cGFzc19iYWRwYXNzKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXgoVmFsdWVFcnJvciwgImNhbm5vdCBiZSBsb25nZXIiKToKKyAgICAgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEVfUFJPVEVDVEVELCBwYXNzd29yZD1nZXRwYXNzX2h1Z2UpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXNSZWdleChUeXBlRXJyb3IsICJtdXN0IHJldHVybiBhIHN0cmluZyIpOgorICAgICAgICAgICAgY3R4LmxvYWRfY2VydF9jaGFpbihDRVJURklMRV9QUk9URUNURUQsIHBhc3N3b3JkPWdldHBhc3NfYmFkX3R5cGUpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXNSZWdleChFeGNlcHRpb24sICJnZXRwYXNzIGVycm9yIik6CisgICAgICAgICAgICBjdHgubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFX1BST1RFQ1RFRCwgcGFzc3dvcmQ9Z2V0cGFzc19leGNlcHRpb24pCisgICAgICAgICMgTWFrZSBzdXJlIHRoZSBwYXNzd29yZCBmdW5jdGlvbiBpc24ndCBjYWxsZWQgaWYgaXQgaXNuJ3QgbmVlZGVkCisgICAgICAgIGN0eC5sb2FkX2NlcnRfY2hhaW4oQ0VSVEZJTEUsIHBhc3N3b3JkPWdldHBhc3NfZXhjZXB0aW9uKQogCiAgICAgZGVmIHRlc3RfbG9hZF92ZXJpZnlfbG9jYXRpb25zKHNlbGYpOgogICAgICAgICBjdHggPSBzc2wuU1NMQ29udGV4dChzc2wuUFJPVE9DT0xfVExTdjEpCkBAIC00NDcsNiArNTQxLDE5IEBACiAgICAgICAgICMgSXNzdWUgIzEwOTg5OiBjcmFzaCBpZiB0aGUgc2Vjb25kIGFyZ3VtZW50IHR5cGUgaXMgaW52YWxpZAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGN0eC5sb2FkX3ZlcmlmeV9sb2NhdGlvbnMsIE5vbmUsIFRydWUpCiAKKyAgICBkZWYgdGVzdF9sb2FkX2RoX3BhcmFtcyhzZWxmKToKKyAgICAgICAgY3R4ID0gc3NsLlNTTENvbnRleHQoc3NsLlBST1RPQ09MX1RMU3YxKQorICAgICAgICBjdHgubG9hZF9kaF9wYXJhbXMoREhGSUxFKQorICAgICAgICBpZiBvcy5uYW1lICE9ICdudCc6CisgICAgICAgICAgICBjdHgubG9hZF9kaF9wYXJhbXMoQllURVNfREhGSUxFKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGN0eC5sb2FkX2RoX3BhcmFtcykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjdHgubG9hZF9kaF9wYXJhbXMsIE5vbmUpCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoRmlsZU5vdEZvdW5kRXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgY3R4LmxvYWRfZGhfcGFyYW1zKFdST05HQ0VSVCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbS5leGNlcHRpb24uZXJybm8sIGVycm5vLkVOT0VOVCkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4KHNzbC5TU0xFcnJvciwgIlBFTSByb3V0aW5lcyIpOgorICAgICAgICAgICAgY3R4LmxvYWRfZGhfcGFyYW1zKENFUlRGSUxFKQorCiAgICAgQHNraXBfaWZfYnJva2VuX3VidW50dV9zc2wKICAgICBkZWYgdGVzdF9zZXNzaW9uX3N0YXRzKHNlbGYpOgogICAgICAgICBmb3IgcHJvdG8gaW4gUFJPVE9DT0xTOgpAQCAtNDcxLDYgKzU3OCwxNiBAQAogICAgICAgICBjdHggPSBzc2wuU1NMQ29udGV4dChzc2wuUFJPVE9DT0xfVExTdjEpCiAgICAgICAgIGN0eC5zZXRfZGVmYXVsdF92ZXJpZnlfcGF0aHMoKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3NsLkhBU19FQ0RILCAiRUNESCBkaXNhYmxlZCBvbiB0aGlzIE9wZW5TU0wgYnVpbGQiKQorICAgIGRlZiB0ZXN0X3NldF9lY2RoX2N1cnZlKHNlbGYpOgorICAgICAgICBjdHggPSBzc2wuU1NMQ29udGV4dChzc2wuUFJPVE9DT0xfVExTdjEpCisgICAgICAgIGN0eC5zZXRfZWNkaF9jdXJ2ZSgicHJpbWUyNTZ2MSIpCisgICAgICAgIGN0eC5zZXRfZWNkaF9jdXJ2ZShiInByaW1lMjU2djEiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIGN0eC5zZXRfZWNkaF9jdXJ2ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBjdHguc2V0X2VjZGhfY3VydmUsIE5vbmUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGN0eC5zZXRfZWNkaF9jdXJ2ZSwgImZvbyIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGN0eC5zZXRfZWNkaF9jdXJ2ZSwgYiJmb28iKQorCiAKIGNsYXNzIE5ldHdvcmtlZFRlc3RzKHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtNTMzLDEzICs2NTAsMTAgQEAKICAgICAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICAgICAgcy5kb19oYW5kc2hha2UoKQogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKLSAgICAgICAgICAgICAgICAgICAgZXhjZXB0IHNzbC5TU0xFcnJvciBhcyBlcnI6Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiBlcnIuYXJnc1swXSA9PSBzc2wuU1NMX0VSUk9SX1dBTlRfUkVBRDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KFtzXSwgW10sIFtdLCA1LjApCi0gICAgICAgICAgICAgICAgICAgICAgICBlbGlmIGVyci5hcmdzWzBdID09IHNzbC5TU0xfRVJST1JfV0FOVF9XUklURToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KFtdLCBbc10sIFtdLCA1LjApCi0gICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJhaXNlCisgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBzc2wuU1NMV2FudFJlYWRFcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC5zZWxlY3QoW3NdLCBbXSwgW10sIDUuMCkKKyAgICAgICAgICAgICAgICAgICAgZXhjZXB0IHNzbC5TU0xXYW50V3JpdGVFcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC5zZWxlY3QoW10sIFtzXSwgW10sIDUuMCkKICAgICAgICAgICAgICAgICAjIFNTTCBlc3RhYmxpc2hlZAogICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzLmdldHBlZXJjZXJ0KCkpCiAgICAgICAgICAgICBmaW5hbGx5OgpAQCAtNjU5LDM3ICs3NzMsMzkgQEAKICAgICAgICAgICAgICAgICAgICAgY291bnQgKz0gMQogICAgICAgICAgICAgICAgICAgICBzLmRvX2hhbmRzaGFrZSgpCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICAgICAgZXhjZXB0IHNzbC5TU0xFcnJvciBhcyBlcnI6Ci0gICAgICAgICAgICAgICAgICAgIGlmIGVyci5hcmdzWzBdID09IHNzbC5TU0xfRVJST1JfV0FOVF9SRUFEOgotICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnNlbGVjdChbc10sIFtdLCBbXSkKLSAgICAgICAgICAgICAgICAgICAgZWxpZiBlcnIuYXJnc1swXSA9PSBzc2wuU1NMX0VSUk9SX1dBTlRfV1JJVEU6Ci0gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Quc2VsZWN0KFtdLCBbc10sIFtdKQotICAgICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKKyAgICAgICAgICAgICAgICBleGNlcHQgc3NsLlNTTFdhbnRSZWFkRXJyb3I6CisgICAgICAgICAgICAgICAgICAgIHNlbGVjdC5zZWxlY3QoW3NdLCBbXSwgW10pCisgICAgICAgICAgICAgICAgZXhjZXB0IHNzbC5TU0xXYW50V3JpdGVFcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnNlbGVjdChbXSwgW3NdLCBbXSkKICAgICAgICAgICAgIHMuY2xvc2UoKQogICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgogICAgICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoIlxuTmVlZGVkICVkIGNhbGxzIHRvIGRvX2hhbmRzaGFrZSgpIHRvIGVzdGFibGlzaCBzZXNzaW9uLlxuIiAlIGNvdW50KQogCiAgICAgZGVmIHRlc3RfZ2V0X3NlcnZlcl9jZXJ0aWZpY2F0ZShzZWxmKToKLSAgICAgICAgd2l0aCBzdXBwb3J0LnRyYW5zaWVudF9pbnRlcm5ldCgic3ZuLnB5dGhvbi5vcmciKToKLSAgICAgICAgICAgIHBlbSA9IHNzbC5nZXRfc2VydmVyX2NlcnRpZmljYXRlKCgic3ZuLnB5dGhvbi5vcmciLCA0NDMpKQotICAgICAgICAgICAgaWYgbm90IHBlbToKLSAgICAgICAgICAgICAgICBzZWxmLmZhaWwoIk5vIHNlcnZlciBjZXJ0aWZpY2F0ZSBvbiBzdm4ucHl0aG9uLm9yZzo0NDMhIikKKyAgICAgICAgZGVmIF90ZXN0X2dldF9zZXJ2ZXJfY2VydGlmaWNhdGUoaG9zdCwgcG9ydCwgY2VydD1Ob25lKToKKyAgICAgICAgICAgIHdpdGggc3VwcG9ydC50cmFuc2llbnRfaW50ZXJuZXQoaG9zdCk6CisgICAgICAgICAgICAgICAgcGVtID0gc3NsLmdldF9zZXJ2ZXJfY2VydGlmaWNhdGUoKGhvc3QsIHBvcnQpKQorICAgICAgICAgICAgICAgIGlmIG5vdCBwZW06CisgICAgICAgICAgICAgICAgICAgIHNlbGYuZmFpbCgiTm8gc2VydmVyIGNlcnRpZmljYXRlIG9uICVzOiVzISIgJSAoaG9zdCwgcG9ydCkpCiAKLSAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICBwZW0gPSBzc2wuZ2V0X3NlcnZlcl9jZXJ0aWZpY2F0ZSgoInN2bi5weXRob24ub3JnIiwgNDQzKSwgY2FfY2VydHM9Q0VSVEZJTEUpCi0gICAgICAgICAgICBleGNlcHQgc3NsLlNTTEVycm9yIGFzIHg6Ci0gICAgICAgICAgICAgICAgI3Nob3VsZCBmYWlsCisgICAgICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgICAgICBwZW0gPSBzc2wuZ2V0X3NlcnZlcl9jZXJ0aWZpY2F0ZSgoaG9zdCwgcG9ydCksIGNhX2NlcnRzPUNFUlRGSUxFKQorICAgICAgICAgICAgICAgIGV4Y2VwdCBzc2wuU1NMRXJyb3IgYXMgeDoKKyAgICAgICAgICAgICAgICAgICAgI3Nob3VsZCBmYWlsCisgICAgICAgICAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKKyAgICAgICAgICAgICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoIiVzXG4iICUgeCkKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBzZWxmLmZhaWwoIkdvdCBzZXJ2ZXIgY2VydGlmaWNhdGUgJXMgZm9yICVzOiVzISIgJSAocGVtLCBob3N0LCBwb3J0KSkKKworICAgICAgICAgICAgICAgIHBlbSA9IHNzbC5nZXRfc2VydmVyX2NlcnRpZmljYXRlKChob3N0LCBwb3J0KSwgY2FfY2VydHM9Y2VydCkKKyAgICAgICAgICAgICAgICBpZiBub3QgcGVtOgorICAgICAgICAgICAgICAgICAgICBzZWxmLmZhaWwoIk5vIHNlcnZlciBjZXJ0aWZpY2F0ZSBvbiAlczolcyEiICUgKGhvc3QsIHBvcnQpKQogICAgICAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKLSAgICAgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgiJXNcbiIgJSB4KQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBzZWxmLmZhaWwoIkdvdCBzZXJ2ZXIgY2VydGlmaWNhdGUgJXMgZm9yIHN2bi5weXRob24ub3JnISIgJSBwZW0pCisgICAgICAgICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoIlxuVmVyaWZpZWQgY2VydGlmaWNhdGUgZm9yICVzOiVzIGlzXG4lc1xuIiAlIChob3N0LCBwb3J0ICxwZW0pKQogCi0gICAgICAgICAgICBwZW0gPSBzc2wuZ2V0X3NlcnZlcl9jZXJ0aWZpY2F0ZSgoInN2bi5weXRob24ub3JnIiwgNDQzKSwgY2FfY2VydHM9U1ZOX1BZVEhPTl9PUkdfUk9PVF9DRVJUKQotICAgICAgICAgICAgaWYgbm90IHBlbToKLSAgICAgICAgICAgICAgICBzZWxmLmZhaWwoIk5vIHNlcnZlciBjZXJ0aWZpY2F0ZSBvbiBzdm4ucHl0aG9uLm9yZzo0NDMhIikKLSAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZToKLSAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCJcblZlcmlmaWVkIGNlcnRpZmljYXRlIGZvciBzdm4ucHl0aG9uLm9yZzo0NDMgaXNcbiVzXG4iICUgcGVtKQorICAgICAgICBfdGVzdF9nZXRfc2VydmVyX2NlcnRpZmljYXRlKCdzdm4ucHl0aG9uLm9yZycsIDQ0MywgU1ZOX1BZVEhPTl9PUkdfUk9PVF9DRVJUKQorICAgICAgICBpZiBzdXBwb3J0LklQVjZfRU5BQkxFRDoKKyAgICAgICAgICAgIF90ZXN0X2dldF9zZXJ2ZXJfY2VydGlmaWNhdGUoJ2lwdjYuZ29vZ2xlLmNvbScsIDQ0MykKIAogICAgIGRlZiB0ZXN0X2NpcGhlcnMoc2VsZik6CiAgICAgICAgIHJlbW90ZSA9ICgic3ZuLnB5dGhvbi5vcmciLCA0NDMpCkBAIC04MzgsNiArOTU0LDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zc2xjb25uID0gTm9uZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHN1cHBvcnQudmVyYm9zZSBhbmQgc2VsZi5zZXJ2ZXIuY29ubmVjdGlvbmNoYXR0eToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0ZSgiIHNlcnZlcjogY29ubmVjdGlvbiBpcyBub3cgdW5lbmNyeXB0ZWQuLi5cbiIpCisgICAgICAgICAgICAgICAgICAgICAgICBlbGlmIHN0cmlwcGVkID09IGInQ0IgdGxzLXVuaXF1ZSc6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlIGFuZCBzZWxmLnNlcnZlci5jb25uZWN0aW9uY2hhdHR5OgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCIgc2VydmVyOiByZWFkIENCIHRscy11bmlxdWUgZnJvbSBjbGllbnQsIHNlbmRpbmcgb3VyIENCIGRhdGEuLi5cbiIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YSA9IHNlbGYuc3NsY29ubi5nZXRfY2hhbm5lbF9iaW5kaW5nKCJ0bHMtdW5pcXVlIikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLndyaXRlKHJlcHIoZGF0YSkuZW5jb2RlKCJ1cy1hc2NpaSIpICsgYiJcbiIpCiAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzdXBwb3J0LnZlcmJvc2UgYW5kCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2VydmVyLmNvbm5lY3Rpb25jaGF0dHkpOgpAQCAtOTQ2LDEyICsxMDY3LDExIEBACiAgICAgICAgICAgICAgICAgZGVmIF9kb19zc2xfaGFuZHNoYWtlKHNlbGYpOgogICAgICAgICAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnNvY2tldC5kb19oYW5kc2hha2UoKQotICAgICAgICAgICAgICAgICAgICBleGNlcHQgc3NsLlNTTEVycm9yIGFzIGVycjoKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIGVyci5hcmdzWzBdIGluIChzc2wuU1NMX0VSUk9SX1dBTlRfUkVBRCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzc2wuU1NMX0VSUk9SX1dBTlRfV1JJVEUpOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybgotICAgICAgICAgICAgICAgICAgICAgICAgZWxpZiBlcnIuYXJnc1swXSA9PSBzc2wuU1NMX0VSUk9SX0VPRjoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5oYW5kbGVfY2xvc2UoKQorICAgICAgICAgICAgICAgICAgICBleGNlcHQgKHNzbC5TU0xXYW50UmVhZEVycm9yLCBzc2wuU1NMV2FudFdyaXRlRXJyb3IpOgorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuCisgICAgICAgICAgICAgICAgICAgIGV4Y2VwdCBzc2wuU1NMRU9GRXJyb3I6CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2VsZi5oYW5kbGVfY2xvc2UoKQorICAgICAgICAgICAgICAgICAgICBleGNlcHQgc3NsLlNTTEVycm9yOgogICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2UKICAgICAgICAgICAgICAgICAgICAgZXhjZXB0IHNvY2tldC5lcnJvciBhcyBlcnI6CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiBlcnIuYXJnc1swXSA9PSBlcnJuby5FQ09OTkFCT1JURUQ6CkBAIC0xMDk5LDcgKzEyMTksMTIgQEAKICAgICAgICAgICAgICAgICBpZiBjb25uZWN0aW9uY2hhdHR5OgogICAgICAgICAgICAgICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6CiAgICAgICAgICAgICAgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKCIgY2xpZW50OiAgY2xvc2luZyBjb25uZWN0aW9uLlxuIikKKyAgICAgICAgICAgICAgICBzdGF0cyA9IHsKKyAgICAgICAgICAgICAgICAgICAgJ2NvbXByZXNzaW9uJzogcy5jb21wcmVzc2lvbigpLAorICAgICAgICAgICAgICAgICAgICAnY2lwaGVyJzogcy5jaXBoZXIoKSwKKyAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgcy5jbG9zZSgpCisgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXRzCiAKICAgICBkZWYgdHJ5X3Byb3RvY29sX2NvbWJvKHNlcnZlcl9wcm90b2NvbCwgY2xpZW50X3Byb3RvY29sLCBleHBlY3Rfc3VjY2VzcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlcnRzcmVxcz1Ob25lLCBzZXJ2ZXJfb3B0aW9ucz0wLCBjbGllbnRfb3B0aW9ucz0wKToKQEAgLTEyNTEsNyArMTM3Niw4IEBACiAgICAgICAgICAgICAgICAgdC5qb2luKCkKIAogICAgICAgICBAc2tpcF9pZl9icm9rZW5fdWJ1bnR1X3NzbAotICAgICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHNzbCwgJ1BST1RPQ09MX1NTTHYyJyksICJuZWVkIFNTTHYyIikKKyAgICAgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzc2wsICdQUk9UT0NPTF9TU0x2MicpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT3BlblNTTCBpcyBjb21waWxlZCB3aXRob3V0IFNTTHYyIHN1cHBvcnQiKQogICAgICAgICBkZWYgdGVzdF9wcm90b2NvbF9zc2x2MihzZWxmKToKICAgICAgICAgICAgICIiIkNvbm5lY3RpbmcgdG8gYW4gU1NMdjIgc2VydmVyIHdpdGggdmFyaW91cyBjbGllbnQgb3B0aW9ucyIiIgogICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgpAQCAtMTU1Nyw2ICsxNjgzLDE1IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgIyBjb25zdW1lIGRhdGEKICAgICAgICAgICAgICAgICAgICAgICAgIHMucmVhZCgpCisKKyAgICAgICAgICAgICAgICAjIE1ha2Ugc3VyZSBzZW5kbXNnIGV0IGFsIGFyZSBkaXNhbGxvd2VkIHRvIGF2b2lkCisgICAgICAgICAgICAgICAgIyBpbmFkdmVydGVudCBkaXNjbG9zdXJlIG9mIGRhdGEgYW5kL29yIGNvcnJ1cHRpb24KKyAgICAgICAgICAgICAgICAjIG9mIHRoZSBlbmNyeXB0ZWQgZGF0YSBzdHJlYW0KKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBzLnNlbmRtc2csIFtiImRhdGEiXSkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLCBzLnJlY3Ztc2csIDEwMCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhOb3RJbXBsZW1lbnRlZEVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMucmVjdm1zZ19pbnRvLCBieXRlYXJyYXkoMTAwKSkKKwogICAgICAgICAgICAgICAgIHMud3JpdGUoYiJvdmVyXG4iKQogICAgICAgICAgICAgICAgIHMuY2xvc2UoKQogCkBAIC0xNjI1LDYgKzE3NjAsOTggQEAKICAgICAgICAgICAgICAgICAgICAgICAgIHMuY29ubmVjdCgoSE9TVCwgc2VydmVyLnBvcnQpKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigibm8gc2hhcmVkIGNpcGhlciIsIHN0cihzZXJ2ZXIuY29ubl9lcnJvcnNbMF0pKQogCisgICAgICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKCJ0bHMtdW5pcXVlIiBpbiBzc2wuQ0hBTk5FTF9CSU5ESU5HX1RZUEVTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJ3Rscy11bmlxdWUnIGNoYW5uZWwgYmluZGluZyBub3QgYXZhaWxhYmxlIikKKyAgICAgICAgZGVmIHRlc3RfdGxzX3VuaXF1ZV9jaGFubmVsX2JpbmRpbmcoc2VsZik6CisgICAgICAgICAgICAiIiJUZXN0IHRscy11bmlxdWUgY2hhbm5lbCBiaW5kaW5nLiIiIgorICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgorICAgICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoIlxuIikKKworICAgICAgICAgICAgc2VydmVyID0gVGhyZWFkZWRFY2hvU2VydmVyKENFUlRGSUxFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlcnRyZXFzPXNzbC5DRVJUX05PTkUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3NsX3ZlcnNpb249c3NsLlBST1RPQ09MX1RMU3YxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhY2VydHM9Q0VSVEZJTEUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhdHR5PVRydWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29ubmVjdGlvbmNoYXR0eT1GYWxzZSkKKyAgICAgICAgICAgIHdpdGggc2VydmVyOgorICAgICAgICAgICAgICAgIHMgPSBzc2wud3JhcF9zb2NrZXQoc29ja2V0LnNvY2tldCgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VydmVyX3NpZGU9RmFsc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZXJ0ZmlsZT1DRVJURklMRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhX2NlcnRzPUNFUlRGSUxFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VydF9yZXFzPXNzbC5DRVJUX05PTkUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzc2xfdmVyc2lvbj1zc2wuUFJPVE9DT0xfVExTdjEpCisgICAgICAgICAgICAgICAgcy5jb25uZWN0KChIT1NULCBzZXJ2ZXIucG9ydCkpCisgICAgICAgICAgICAgICAgIyBnZXQgdGhlIGRhdGEKKyAgICAgICAgICAgICAgICBjYl9kYXRhID0gcy5nZXRfY2hhbm5lbF9iaW5kaW5nKCJ0bHMtdW5pcXVlIikKKyAgICAgICAgICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6CisgICAgICAgICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoIiBnb3QgY2hhbm5lbCBiaW5kaW5nIGRhdGE6IHswIXJ9XG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZvcm1hdChjYl9kYXRhKSkKKworICAgICAgICAgICAgICAgICMgY2hlY2sgaWYgaXQgaXMgc2FuZQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3ROb25lKGNiX2RhdGEpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY2JfZGF0YSksIDEyKSAjIFRydWUgZm9yIFRMU3YxCisKKyAgICAgICAgICAgICAgICAjIGFuZCBjb21wYXJlIHdpdGggdGhlIHBlZXJzIHZlcnNpb24KKyAgICAgICAgICAgICAgICBzLndyaXRlKGIiQ0IgdGxzLXVuaXF1ZVxuIikKKyAgICAgICAgICAgICAgICBwZWVyX2RhdGFfcmVwciA9IHMucmVhZCgpLnN0cmlwKCkKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBlZXJfZGF0YV9yZXByLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVwcihjYl9kYXRhKS5lbmNvZGUoInVzLWFzY2lpIikpCisgICAgICAgICAgICAgICAgcy5jbG9zZSgpCisKKyAgICAgICAgICAgICAgICAjIG5vdywgYWdhaW4KKyAgICAgICAgICAgICAgICBzID0gc3NsLndyYXBfc29ja2V0KHNvY2tldC5zb2NrZXQoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlcnZlcl9zaWRlPUZhbHNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2VydGZpbGU9Q0VSVEZJTEUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYV9jZXJ0cz1DRVJURklMRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNlcnRfcmVxcz1zc2wuQ0VSVF9OT05FLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3NsX3ZlcnNpb249c3NsLlBST1RPQ09MX1RMU3YxKQorICAgICAgICAgICAgICAgIHMuY29ubmVjdCgoSE9TVCwgc2VydmVyLnBvcnQpKQorICAgICAgICAgICAgICAgIG5ld19jYl9kYXRhID0gcy5nZXRfY2hhbm5lbF9iaW5kaW5nKCJ0bHMtdW5pcXVlIikKKyAgICAgICAgICAgICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6CisgICAgICAgICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoIiBnb3QgYW5vdGhlciBjaGFubmVsIGJpbmRpbmcgZGF0YTogezAhcn1cbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZm9ybWF0KG5ld19jYl9kYXRhKSkKKyAgICAgICAgICAgICAgICAjIGlzIGl0IHJlYWxseSB1bmlxdWUKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydE5vdEVxdWFsKGNiX2RhdGEsIG5ld19jYl9kYXRhKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXNOb3ROb25lKGNiX2RhdGEpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oY2JfZGF0YSksIDEyKSAjIFRydWUgZm9yIFRMU3YxCisgICAgICAgICAgICAgICAgcy53cml0ZShiIkNCIHRscy11bmlxdWVcbiIpCisgICAgICAgICAgICAgICAgcGVlcl9kYXRhX3JlcHIgPSBzLnJlYWQoKS5zdHJpcCgpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwZWVyX2RhdGFfcmVwciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcHIobmV3X2NiX2RhdGEpLmVuY29kZSgidXMtYXNjaWkiKSkKKyAgICAgICAgICAgICAgICBzLmNsb3NlKCkKKworICAgICAgICBkZWYgdGVzdF9jb21wcmVzc2lvbihzZWxmKToKKyAgICAgICAgICAgIGNvbnRleHQgPSBzc2wuU1NMQ29udGV4dChzc2wuUFJPVE9DT0xfVExTdjEpCisgICAgICAgICAgICBjb250ZXh0LmxvYWRfY2VydF9jaGFpbihDRVJURklMRSkKKyAgICAgICAgICAgIHN0YXRzID0gc2VydmVyX3BhcmFtc190ZXN0KGNvbnRleHQsIGNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGF0dHk9VHJ1ZSwgY29ubmVjdGlvbmNoYXR0eT1UcnVlKQorICAgICAgICAgICAgaWYgc3VwcG9ydC52ZXJib3NlOgorICAgICAgICAgICAgICAgIHN5cy5zdGRvdXQud3JpdGUoIiBnb3QgY29tcHJlc3Npb246IHshcn1cbiIuZm9ybWF0KHN0YXRzWydjb21wcmVzc2lvbiddKSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oc3RhdHNbJ2NvbXByZXNzaW9uJ10sIHsgTm9uZSwgJ1pMSUInLCAnUkxFJyB9KQorCisgICAgICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIoc3NsLCAnT1BfTk9fQ09NUFJFU1NJT04nKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNzbC5PUF9OT19DT01QUkVTU0lPTiBuZWVkZWQgZm9yIHRoaXMgdGVzdCIpCisgICAgICAgIGRlZiB0ZXN0X2NvbXByZXNzaW9uX2Rpc2FibGVkKHNlbGYpOgorICAgICAgICAgICAgY29udGV4dCA9IHNzbC5TU0xDb250ZXh0KHNzbC5QUk9UT0NPTF9UTFN2MSkKKyAgICAgICAgICAgIGNvbnRleHQubG9hZF9jZXJ0X2NoYWluKENFUlRGSUxFKQorICAgICAgICAgICAgY29udGV4dC5vcHRpb25zIHw9IHNzbC5PUF9OT19DT01QUkVTU0lPTgorICAgICAgICAgICAgc3RhdHMgPSBzZXJ2ZXJfcGFyYW1zX3Rlc3QoY29udGV4dCwgY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXR0eT1UcnVlLCBjb25uZWN0aW9uY2hhdHR5PVRydWUpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzKHN0YXRzWydjb21wcmVzc2lvbiddLCBOb25lKQorCisgICAgICAgIGRlZiB0ZXN0X2RoX3BhcmFtcyhzZWxmKToKKyAgICAgICAgICAgICMgQ2hlY2sgd2UgY2FuIGdldCBhIGNvbm5lY3Rpb24gd2l0aCBlcGhlbWVyYWwgRGlmZmllLUhlbGxtYW4KKyAgICAgICAgICAgIGNvbnRleHQgPSBzc2wuU1NMQ29udGV4dChzc2wuUFJPVE9DT0xfVExTdjEpCisgICAgICAgICAgICBjb250ZXh0LmxvYWRfY2VydF9jaGFpbihDRVJURklMRSkKKyAgICAgICAgICAgIGNvbnRleHQubG9hZF9kaF9wYXJhbXMoREhGSUxFKQorICAgICAgICAgICAgY29udGV4dC5zZXRfY2lwaGVycygia0VESCIpCisgICAgICAgICAgICBzdGF0cyA9IHNlcnZlcl9wYXJhbXNfdGVzdChjb250ZXh0LCBjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhdHR5PVRydWUsIGNvbm5lY3Rpb25jaGF0dHk9VHJ1ZSkKKyAgICAgICAgICAgIGNpcGhlciA9IHN0YXRzWyJjaXBoZXIiXVswXQorICAgICAgICAgICAgcGFydHMgPSBjaXBoZXIuc3BsaXQoIi0iKQorICAgICAgICAgICAgaWYgIkFESCIgbm90IGluIHBhcnRzIGFuZCAiRURIIiBub3QgaW4gcGFydHMgYW5kICJESEUiIG5vdCBpbiBwYXJ0czoKKyAgICAgICAgICAgICAgICBzZWxmLmZhaWwoIk5vbi1ESCBjaXBoZXI6ICIgKyBjaXBoZXJbMF0pCisKIAogZGVmIHRlc3RfbWFpbih2ZXJib3NlPUZhbHNlKToKICAgICBpZiBzdXBwb3J0LnZlcmJvc2U6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N0cmluZy5weSBiL0xpYi90ZXN0L3Rlc3Rfc3RyaW5nLnB5CmluZGV4IGEzNTJlZTMuLjE2MTU3MzIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc3RyaW5nLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3RyaW5nLnB5CkBAIC0yNiwxNSArMjYsMzggQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHJpbmcuY2Fwd29yZHMoJ1x0YUJjXHREZUZcdCcpLCAnQWJjIERlZicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyaW5nLmNhcHdvcmRzKCdcdGFCY1x0RGVGXHQnLCAnXHQnKSwgJ1x0QWJjXHREZWZcdCcpCiAKLSAgICBkZWYgdGVzdF9mb3JtYXR0ZXIoc2VsZik6CisgICAgZGVmIHRlc3RfYmFzaWNfZm9ybWF0dGVyKHNlbGYpOgogICAgICAgICBmbXQgPSBzdHJpbmcuRm9ybWF0dGVyKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCJmb28iKSwgImZvbyIpCi0KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCJmb297MH0iLCAiYmFyIiksICJmb29iYXIiKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZtdC5mb3JtYXQoImZvb3sxfXswfS17MX0iLCAiYmFyIiwgNiksICJmb282YmFyLTYiKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZtdC5mb3JtYXQoIi17YXJnIXJ9LSIsIGFyZz0ndGVzdCcpLCAiLSd0ZXN0Jy0iKQogCi0gICAgICAgICMgb3ZlcnJpZGUgZ2V0X3ZhbHVlICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisgICAgZGVmIHRlc3RfY29udmVyc2lvbl9zcGVjaWZpZXJzKHNlbGYpOgorICAgICAgICBmbXQgPSBzdHJpbmcuRm9ybWF0dGVyKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCIte2FyZyFyfS0iLCBhcmc9J3Rlc3QnKSwgIi0ndGVzdCctIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCJ7MCFzfSIsICd0ZXN0JyksICd0ZXN0JykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZm10LmZvcm1hdCwgInswIWh9IiwgJ3Rlc3QnKQorCisgICAgZGVmIHRlc3RfbmFtZV9sb29rdXAoc2VsZik6CisgICAgICAgIGZtdCA9IHN0cmluZy5Gb3JtYXR0ZXIoKQorICAgICAgICBjbGFzcyBBbnlBdHRyOgorICAgICAgICAgICAgZGVmIF9fZ2V0YXR0cl9fKHNlbGYsIGF0dHIpOgorICAgICAgICAgICAgICAgIHJldHVybiBhdHRyCisgICAgICAgIHggPSBBbnlBdHRyKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCJ7MC5sdW1iZXJ9ezAuamFja30iLCB4KSwgJ2x1bWJlcmphY2snKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEF0dHJpYnV0ZUVycm9yKToKKyAgICAgICAgICAgIGZtdC5mb3JtYXQoInswLmx1bWJlcn17MC5qYWNrfSIsICcnKQorCisgICAgZGVmIHRlc3RfaW5kZXhfbG9va3VwKHNlbGYpOgorICAgICAgICBmbXQgPSBzdHJpbmcuRm9ybWF0dGVyKCkKKyAgICAgICAgbG9va3VwID0gWyJlZ2dzIiwgImFuZCIsICJzcGFtIl0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCJ7MFsyXX17MFswXX0iLCBsb29rdXApLCAnc3BhbWVnZ3MnKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEluZGV4RXJyb3IpOgorICAgICAgICAgICAgZm10LmZvcm1hdCgiezBbMl19ezBbMF19IiwgW10pCisgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoS2V5RXJyb3IpOgorICAgICAgICAgICAgZm10LmZvcm1hdCgiezBbMl19ezBbMF19Iiwge30pCisKKyAgICBkZWYgdGVzdF9vdmVycmlkZV9nZXRfdmFsdWUoc2VsZik6CiAgICAgICAgIGNsYXNzIE5hbWVzcGFjZUZvcm1hdHRlcihzdHJpbmcuRm9ybWF0dGVyKToKICAgICAgICAgICAgIGRlZiBfX2luaXRfXyhzZWxmLCBuYW1lc3BhY2U9e30pOgogICAgICAgICAgICAgICAgIHN0cmluZy5Gb3JtYXR0ZXIuX19pbml0X18oc2VsZikKQEAgLTU0LDcgKzc3LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCJ7Z3JlZXRpbmd9LCB3b3JsZCEiKSwgJ2hlbGxvLCB3b3JsZCEnKQogCiAKLSAgICAgICAgIyBvdmVycmlkZSBmb3JtYXRfZmllbGQgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAgICBkZWYgdGVzdF9vdmVycmlkZV9mb3JtYXRfZmllbGQoc2VsZik6CiAgICAgICAgIGNsYXNzIENhbGxGb3JtYXR0ZXIoc3RyaW5nLkZvcm1hdHRlcik6CiAgICAgICAgICAgICBkZWYgZm9ybWF0X2ZpZWxkKHNlbGYsIHZhbHVlLCBmb3JtYXRfc3BlYyk6CiAgICAgICAgICAgICAgICAgcmV0dXJuIGZvcm1hdCh2YWx1ZSgpLCBmb3JtYXRfc3BlYykKQEAgLTYzLDE4ICs4NiwxOCBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZtdC5mb3JtYXQoJyp7MH0qJywgbGFtYmRhIDogJ3Jlc3VsdCcpLCAnKnJlc3VsdConKQogCiAKLSAgICAgICAgIyBvdmVycmlkZSBjb252ZXJ0X2ZpZWxkICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyAgICBkZWYgdGVzdF9vdmVycmlkZV9jb252ZXJ0X2ZpZWxkKHNlbGYpOgogICAgICAgICBjbGFzcyBYRm9ybWF0dGVyKHN0cmluZy5Gb3JtYXR0ZXIpOgogICAgICAgICAgICAgZGVmIGNvbnZlcnRfZmllbGQoc2VsZiwgdmFsdWUsIGNvbnZlcnNpb24pOgogICAgICAgICAgICAgICAgIGlmIGNvbnZlcnNpb24gPT0gJ3gnOgogICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9uZQotICAgICAgICAgICAgICAgIHJldHVybiBzdXBlcihYRm9ybWF0dGVyLCBzZWxmKS5jb252ZXJ0X2ZpZWxkKHZhbHVlLCBjb252ZXJzaW9uKQorICAgICAgICAgICAgICAgIHJldHVybiBzdXBlcigpLmNvbnZlcnRfZmllbGQodmFsdWUsIGNvbnZlcnNpb24pCiAKICAgICAgICAgZm10ID0gWEZvcm1hdHRlcigpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZm10LmZvcm1hdCgiezAhcn06ezAheH0iLCAnZm9vJywgJ2ZvbycpLCAiJ2Zvbyc6Tm9uZSIpCiAKIAotICAgICAgICAjIG92ZXJyaWRlIHBhcnNlICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworICAgIGRlZiB0ZXN0X292ZXJyaWRlX3BhcnNlKHNlbGYpOgogICAgICAgICBjbGFzcyBCYXJGb3JtYXR0ZXIoc3RyaW5nLkZvcm1hdHRlcik6CiAgICAgICAgICAgICAjIHJldHVybnMgYW4gaXRlcmFibGUgdGhhdCBjb250YWlucyB0dXBsZXMgb2YgdGhlIGZvcm06CiAgICAgICAgICAgICAjIChsaXRlcmFsX3RleHQsIGZpZWxkX25hbWUsIGZvcm1hdF9zcGVjLCBjb252ZXJzaW9uKQpAQCAtOTAsNyArMTEzLDcgQEAKICAgICAgICAgZm10ID0gQmFyRm9ybWF0dGVyKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmbXQuZm9ybWF0KCcqfCswOl4xMHN8KicsICdmb28nKSwgJyogICBmb28gICAgKicpCiAKLSAgICAgICAgIyB0ZXN0IGFsbCBwYXJhbWV0ZXJzIHVzZWQKKyAgICBkZWYgdGVzdF9jaGVja191bnVzZWRfYXJncyhzZWxmKToKICAgICAgICAgY2xhc3MgQ2hlY2tBbGxVc2VkRm9ybWF0dGVyKHN0cmluZy5Gb3JtYXR0ZXIpOgogICAgICAgICAgICAgZGVmIGNoZWNrX3VudXNlZF9hcmdzKHNlbGYsIHVzZWRfYXJncywgYXJncywga3dhcmdzKToKICAgICAgICAgICAgICAgICAjIFRyYWNrIHdoaWNoIGFyZ3VtZW50cyBhY3R1YWxseSBnb3QgdXNlZApAQCAtMTEyLDI4ICsxMzUsMTMgQEAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgZm10LmZvcm1hdCwgInswfSIsIDEwLCAyMCwgaT0xMDApCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZtdC5mb3JtYXQsICJ7aX0iLCAxMCwgMjAsIGk9MTAwKQogCi0gICAgZGVmIHRlc3RfdmZvcm1hdF9hc3NlcnQoc2VsZik6Ci0gICAgICAgIGNscyA9IHN0cmluZy5Gb3JtYXR0ZXIoKQotICAgICAgICBrd2FyZ3MgPSB7Ci0gICAgICAgICAgICAiaSI6IDEwMAotICAgICAgICB9Ci0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGNscy5fdmZvcm1hdCwKLSAgICAgICAgICAgICAgICBjbHMuZm9ybWF0LCAiezB9Iiwga3dhcmdzLCBzZXQoKSwgLTIpCi0KLSAgICBkZWYgdGVzdF9jb252ZXJ0X2ZpZWxkKHNlbGYpOgotICAgICAgICBjbHMgPSBzdHJpbmcuRm9ybWF0dGVyKCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChjbHMuZm9ybWF0KCJ7MCFzfSIsICdmb28nKSwgJ2ZvbycpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGNscy5mb3JtYXQsICJ7MCFofSIsICdmb28nKQotCi0gICAgZGVmIHRlc3RfZ2V0X2ZpZWxkKHNlbGYpOgotICAgICAgICBjbHMgPSBzdHJpbmcuRm9ybWF0dGVyKCkKLSAgICAgICAgY2xhc3MgTXlDbGFzczoKLSAgICAgICAgICAgIG5hbWUgPSAnbHVtYmVyamFjaycKLSAgICAgICAgeCA9IE15Q2xhc3MoKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNscy5mb3JtYXQoInswLm5hbWV9IiwgeCksICdsdW1iZXJqYWNrJykKLQotICAgICAgICBsb29rdXAgPSBbImVnZ3MiLCAiYW5kIiwgInNwYW0iXQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGNscy5mb3JtYXQoInswWzJdfSIsIGxvb2t1cCksICdzcGFtJykKKyAgICBkZWYgdGVzdF92Zm9ybWF0X3JlY3Vyc2lvbl9saW1pdChzZWxmKToKKyAgICAgICAgZm10ID0gc3RyaW5nLkZvcm1hdHRlcigpCisgICAgICAgIGFyZ3MgPSAoKQorICAgICAgICBrd2FyZ3MgPSBkaWN0KGk9MTAwKQorICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpIGFzIGVycjoKKyAgICAgICAgICAgIGZtdC5fdmZvcm1hdCgie2l9IiwgYXJncywga3dhcmdzLCBzZXQoKSwgLTEpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oInJlY3Vyc2lvbiIsIHN0cihlcnIuZXhjZXB0aW9uKSkKIAogCiBkZWYgdGVzdF9tYWluKCk6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N0cmxpdC5weSBiL0xpYi90ZXN0L3Rlc3Rfc3RybGl0LnB5CmluZGV4IDMwNDc1YTQuLmE2MDMzYTQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc3RybGl0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3RybGl0LnB5CkBAIC0yLDEwICsyLDEwIEBACiAKIFRoZXJlIGFyZSBmb3VyIHR5cGVzIG9mIHN0cmluZyBsaXRlcmFsczoKIAotICAgICdhYmMnICAgLS0gbm9ybWFsIHN0cgotICAgIHInYWJjJyAgLS0gcmF3IHN0cgotICAgIGIneHl6JyAgLS0gbm9ybWFsIGJ5dGVzCi0gICAgYnIneHl6JyAtLSByYXcgYnl0ZXMKKyAgICAnYWJjJyAgICAgICAgICAgICAtLSBub3JtYWwgc3RyCisgICAgcidhYmMnICAgICAgICAgICAgLS0gcmF3IHN0cgorICAgIGIneHl6JyAgICAgICAgICAgIC0tIG5vcm1hbCBieXRlcworICAgIGJyJ3h5eicgfCByYid4eXonIC0tIHJhdyBieXRlcwogCiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIG5vcm1hbCBhbmQgcmF3IHN0cmluZ3MgaXMgb2YgY291cnNlIHRoYXQgaW4gYQogcmF3IHN0cmluZywgXCBlc2NhcGVzICh3aGlsZSBzdGlsbCB1c2VkIHRvIGRldGVybWluZSB0aGUgZW5kIG9mIHRoZQpAQCAtMTAzLDEyICsxMDMsMjUgQEAKIAogICAgIGRlZiB0ZXN0X2V2YWxfYnl0ZXNfcmF3KHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV2YWwoIiIiIGJyJ3gnICIiIiksIGIneCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXZhbCgiIiIgcmIneCcgIiIiKSwgYid4JykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChldmFsKHIiIiIgYnInXHgwMScgIiIiKSwgYidcXCcgKyBiJ3gwMScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXZhbChyIiIiIHJiJ1x4MDEnICIiIiksIGInXFwnICsgYid4MDEnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV2YWwoIiIiIGJyJ1x4MDEnICIiIiksIGJ5dGUoMSkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXZhbCgiIiIgcmInXHgwMScgIiIiKSwgYnl0ZSgxKSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChldmFsKHIiIiIgYnInXHg4MScgIiIiKSwgYiJcXCIgKyBiIng4MSIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXZhbChyIiIiIHJiJ1x4ODEnICIiIiksIGIiXFwiICsgYiJ4ODEiKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTeW50YXhFcnJvciwgZXZhbCwgIiIiIGJyJ1x4ODEnICIiIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIiIiByYidceDgxJyAiIiIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXZhbChyIiIiIGJyJ1x1MTg4MScgIiIiKSwgYiJcXCIgKyBiInUxODgxIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChldmFsKHIiIiIgcmInXHUxODgxJyAiIiIpLCBiIlxcIiArIGIidTE4ODEiKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTeW50YXhFcnJvciwgZXZhbCwgIiIiIGJyJ1x1MTg4MScgIiIiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTeW50YXhFcnJvciwgZXZhbCwgIiIiIHJiJ1x1MTg4MScgIiIiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTeW50YXhFcnJvciwgZXZhbCwgIiIiIGJiJycgIiIiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTeW50YXhFcnJvciwgZXZhbCwgIiIiIHJyJycgIiIiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTeW50YXhFcnJvciwgZXZhbCwgIiIiIGJycicnICIiIikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IsIGV2YWwsICIiIiBiYnInJyAiIiIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFN5bnRheEVycm9yLCBldmFsLCAiIiIgcnJiJycgIiIiKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhTeW50YXhFcnJvciwgZXZhbCwgIiIiIHJiYicnICIiIikKIAogICAgIGRlZiBjaGVja19lbmNvZGluZyhzZWxmLCBlbmNvZGluZywgZXh0cmE9IiIpOgogICAgICAgICBtb2RuYW1lID0gInh4XyIgKyBlbmNvZGluZy5yZXBsYWNlKCItIiwgIl8iKQpAQCAtMTMxLDcgKzE0NCw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFN5bnRheEVycm9yLCBzZWxmLmNoZWNrX2VuY29kaW5nLCAidXRmLTgiLCBleHRyYSkKIAogICAgIGRlZiB0ZXN0X2ZpbGVfdXRmOChzZWxmKToKLSAgICAgICAgc2VsZi5jaGVja19lbmNvZGluZygidXRmOCIpCisgICAgICAgIHNlbGYuY2hlY2tfZW5jb2RpbmcoInV0Zi04IikKIAogICAgIGRlZiB0ZXN0X2ZpbGVfaXNvXzg4NTlfMShzZWxmKToKICAgICAgICAgc2VsZi5jaGVja19lbmNvZGluZygiaXNvLTg4NTktMSIpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N0cnVjdC5weSBiL0xpYi90ZXN0L3Rlc3Rfc3RydWN0LnB5CmluZGV4IDJjY2FhZDIuLmRjNzU4NTggMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc3RydWN0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3RydWN0LnB5CkBAIC04LDkgKzgsMTkgQEAKIElTQklHRU5ESUFOID0gc3lzLmJ5dGVvcmRlciA9PSAiYmlnIgogSVMzMkJJVCA9IHN5cy5tYXhzaXplID09IDB4N2ZmZmZmZmYKIAotaW50ZWdlcl9jb2RlcyA9ICdiJywgJ0InLCAnaCcsICdIJywgJ2knLCAnSScsICdsJywgJ0wnLCAncScsICdRJworaW50ZWdlcl9jb2RlcyA9ICdiJywgJ0InLCAnaCcsICdIJywgJ2knLCAnSScsICdsJywgJ0wnLCAncScsICdRJywgJ24nLCAnTicKIGJ5dGVvcmRlcnMgPSAnJywgJ0AnLCAnPScsICc8JywgJz4nLCAnIScKIAorZGVmIGl0ZXJfaW50ZWdlcl9mb3JtYXRzKGJ5dGVvcmRlcnM9Ynl0ZW9yZGVycyk6CisgICAgZm9yIGNvZGUgaW4gaW50ZWdlcl9jb2RlczoKKyAgICAgICAgZm9yIGJ5dGVvcmRlciBpbiBieXRlb3JkZXJzOgorICAgICAgICAgICAgaWYgKGJ5dGVvcmRlciBpbiAoJycsICdAJykgYW5kIGNvZGUgaW4gKCdxJywgJ1EnKSBhbmQKKyAgICAgICAgICAgICAgICBub3QgSEFWRV9MT05HX0xPTkcpOgorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBpZiAoYnl0ZW9yZGVyIG5vdCBpbiAoJycsICdAJykgYW5kIGNvZGUgaW4gKCduJywgJ04nKSk6CisgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIHlpZWxkIGNvZGUsIGJ5dGVvcmRlcgorCiAjIE5hdGl2ZSAncScgcGFja2luZyBpc24ndCBhdmFpbGFibGUgb24gc3lzdGVtcyB0aGF0IGRvbid0IGhhdmUgdGhlIEMKICMgbG9uZyBsb25nIHR5cGUuCiB0cnk6CkBAIC0xNDEsMTQgKzE1MSwxMyBAQAogICAgICAgICAgICAgfQogCiAgICAgICAgICMgc3RhbmRhcmQgaW50ZWdlciBzaXplcwotICAgICAgICBmb3IgY29kZSBpbiBpbnRlZ2VyX2NvZGVzOgotICAgICAgICAgICAgZm9yIGJ5dGVvcmRlciBpbiAnPScsICc8JywgJz4nLCAnISc6Ci0gICAgICAgICAgICAgICAgZm9ybWF0ID0gYnl0ZW9yZGVyK2NvZGUKLSAgICAgICAgICAgICAgICBzaXplID0gc3RydWN0LmNhbGNzaXplKGZvcm1hdCkKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNpemUsIGV4cGVjdGVkX3NpemVbY29kZV0pCisgICAgICAgIGZvciBjb2RlLCBieXRlb3JkZXIgaW4gaXRlcl9pbnRlZ2VyX2Zvcm1hdHMoKCc9JywgJzwnLCAnPicsICchJykpOgorICAgICAgICAgICAgZm9ybWF0ID0gYnl0ZW9yZGVyK2NvZGUKKyAgICAgICAgICAgIHNpemUgPSBzdHJ1Y3QuY2FsY3NpemUoZm9ybWF0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaXplLCBleHBlY3RlZF9zaXplW2NvZGVdKQogCiAgICAgICAgICMgbmF0aXZlIGludGVnZXIgc2l6ZXMKLSAgICAgICAgbmF0aXZlX3BhaXJzID0gJ2JCJywgJ2hIJywgJ2lJJywgJ2xMJworICAgICAgICBuYXRpdmVfcGFpcnMgPSAnYkInLCAnaEgnLCAnaUknLCAnbEwnLCAnbk4nCiAgICAgICAgIGlmIEhBVkVfTE9OR19MT05HOgogICAgICAgICAgICAgbmF0aXZlX3BhaXJzICs9ICdxUScsCiAgICAgICAgIGZvciBmb3JtYXRfcGFpciBpbiBuYXRpdmVfcGFpcnM6CkBAIC0xNjYsOSArMTc1LDExIEBACiAgICAgICAgIGlmIEhBVkVfTE9OR19MT05HOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwoOCwgc3RydWN0LmNhbGNzaXplKCdxJykpCiAgICAgICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChzdHJ1Y3QuY2FsY3NpemUoJ2wnKSwgc3RydWN0LmNhbGNzaXplKCdxJykpCisgICAgICAgIHNlbGYuYXNzZXJ0R3JlYXRlckVxdWFsKHN0cnVjdC5jYWxjc2l6ZSgnbicpLCBzdHJ1Y3QuY2FsY3NpemUoJ2knKSkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyRXF1YWwoc3RydWN0LmNhbGNzaXplKCduJyksIHN0cnVjdC5jYWxjc2l6ZSgnUCcpKQogCiAgICAgZGVmIHRlc3RfaW50ZWdlcnMoc2VsZik6Ci0gICAgICAgICMgSW50ZWdlciB0ZXN0cyAoYkJoSGlJbExxUSkuCisgICAgICAgICMgSW50ZWdlciB0ZXN0cyAoYkJoSGlJbExxUW5OKS4KICAgICAgICAgaW1wb3J0IGJpbmFzY2lpCiAKICAgICAgICAgY2xhc3MgSW50VGVzdGVyKHVuaXR0ZXN0LlRlc3RDYXNlKToKQEAgLTE4MiwxMSArMTkzLDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5ieXRlb3JkZXIpCiAgICAgICAgICAgICAgICAgc2VsZi5ieXRlc2l6ZSA9IHN0cnVjdC5jYWxjc2l6ZShmb3JtYXQpCiAgICAgICAgICAgICAgICAgc2VsZi5iaXRzaXplID0gc2VsZi5ieXRlc2l6ZSAqIDgKLSAgICAgICAgICAgICAgICBpZiBzZWxmLmNvZGUgaW4gdHVwbGUoJ2JoaWxxJyk6CisgICAgICAgICAgICAgICAgaWYgc2VsZi5jb2RlIGluIHR1cGxlKCdiaGlscW4nKToKICAgICAgICAgICAgICAgICAgICAgc2VsZi5zaWduZWQgPSBUcnVlCiAgICAgICAgICAgICAgICAgICAgIHNlbGYubWluX3ZhbHVlID0gLSgyKiooc2VsZi5iaXRzaXplLTEpKQogICAgICAgICAgICAgICAgICAgICBzZWxmLm1heF92YWx1ZSA9IDIqKihzZWxmLmJpdHNpemUtMSkgLSAxCi0gICAgICAgICAgICAgICAgZWxpZiBzZWxmLmNvZGUgaW4gdHVwbGUoJ0JISUxRJyk6CisgICAgICAgICAgICAgICAgZWxpZiBzZWxmLmNvZGUgaW4gdHVwbGUoJ0JISUxRTicpOgogICAgICAgICAgICAgICAgICAgICBzZWxmLnNpZ25lZCA9IEZhbHNlCiAgICAgICAgICAgICAgICAgICAgIHNlbGYubWluX3ZhbHVlID0gMAogICAgICAgICAgICAgICAgICAgICBzZWxmLm1heF92YWx1ZSA9IDIqKnNlbGYuYml0c2l6ZSAtIDEKQEAgLTMxNiwxNCArMzI3LDIzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdC5wYWNrLCBzZWxmLmZvcm1hdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqKQogCi0gICAgICAgIGZvciBjb2RlIGluIGludGVnZXJfY29kZXM6Ci0gICAgICAgICAgICBmb3IgYnl0ZW9yZGVyIGluIGJ5dGVvcmRlcnM6Ci0gICAgICAgICAgICAgICAgaWYgKGJ5dGVvcmRlciBpbiAoJycsICdAJykgYW5kIGNvZGUgaW4gKCdxJywgJ1EnKSBhbmQKLSAgICAgICAgICAgICAgICAgICAgbm90IEhBVkVfTE9OR19MT05HKToKLSAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgZm9yIGNvZGUsIGJ5dGVvcmRlciBpbiBpdGVyX2ludGVnZXJfZm9ybWF0cygpOgorICAgICAgICAgICAgZm9ybWF0ID0gYnl0ZW9yZGVyK2NvZGUKKyAgICAgICAgICAgIHQgPSBJbnRUZXN0ZXIoZm9ybWF0KQorICAgICAgICAgICAgdC5ydW4oKQorCisgICAgZGVmIHRlc3Rfbk5fY29kZShzZWxmKToKKyAgICAgICAgIyBuIGFuZCBOIGRvbid0IGV4aXN0IGluIHN0YW5kYXJkIHNpemVzCisgICAgICAgIGRlZiBhc3NlcnRTdHJ1Y3RFcnJvcihmdW5jLCAqYXJncywgKiprd2FyZ3MpOgorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhzdHJ1Y3QuZXJyb3IpIGFzIGNtOgorICAgICAgICAgICAgICAgIGZ1bmMoKmFyZ3MsICoqa3dhcmdzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJbigiYmFkIGNoYXIgaW4gc3RydWN0IGZvcm1hdCIsIHN0cihjbS5leGNlcHRpb24pKQorICAgICAgICBmb3IgY29kZSBpbiAnbk4nOgorICAgICAgICAgICAgZm9yIGJ5dGVvcmRlciBpbiAoJz0nLCAnPCcsICc+JywgJyEnKToKICAgICAgICAgICAgICAgICBmb3JtYXQgPSBieXRlb3JkZXIrY29kZQotICAgICAgICAgICAgICAgIHQgPSBJbnRUZXN0ZXIoZm9ybWF0KQotICAgICAgICAgICAgICAgIHQucnVuKCkKKyAgICAgICAgICAgICAgICBhc3NlcnRTdHJ1Y3RFcnJvcihzdHJ1Y3QuY2FsY3NpemUsIGZvcm1hdCkKKyAgICAgICAgICAgICAgICBhc3NlcnRTdHJ1Y3RFcnJvcihzdHJ1Y3QucGFjaywgZm9ybWF0LCAwKQorICAgICAgICAgICAgICAgIGFzc2VydFN0cnVjdEVycm9yKHN0cnVjdC51bnBhY2ssIGZvcm1hdCwgYiIiKQogCiAgICAgZGVmIHRlc3RfcF9jb2RlKHNlbGYpOgogICAgICAgICAjIFRlc3QgcCAoIlBhc2NhbCBzdHJpbmciKSBjb2RlLgpAQCAtMzc3LDE0ICszOTcsMTAgQEAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgc3RydWN0LnBhY2ssICI+ZiIsIGJpZykKIAogICAgIGRlZiB0ZXN0XzE1MzA1NTkoc2VsZik6Ci0gICAgICAgIGZvciBieXRlb3JkZXIgaW4gJycsICdAJywgJz0nLCAnPCcsICc+JywgJyEnOgotICAgICAgICAgICAgZm9yIGNvZGUgaW4gaW50ZWdlcl9jb2RlczoKLSAgICAgICAgICAgICAgICBpZiAoYnl0ZW9yZGVyIGluICgnJywgJ0AnKSBhbmQgY29kZSBpbiAoJ3EnLCAnUScpIGFuZAotICAgICAgICAgICAgICAgICAgICBub3QgSEFWRV9MT05HX0xPTkcpOgotICAgICAgICAgICAgICAgICAgICBjb250aW51ZQotICAgICAgICAgICAgICAgIGZvcm1hdCA9IGJ5dGVvcmRlciArIGNvZGUKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzdHJ1Y3QuZXJyb3IsIHN0cnVjdC5wYWNrLCBmb3JtYXQsIDEuMCkKLSAgICAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzdHJ1Y3QuZXJyb3IsIHN0cnVjdC5wYWNrLCBmb3JtYXQsIDEuNSkKKyAgICAgICAgZm9yIGNvZGUsIGJ5dGVvcmRlciBpbiBpdGVyX2ludGVnZXJfZm9ybWF0cygpOgorICAgICAgICAgICAgZm9ybWF0ID0gYnl0ZW9yZGVyICsgY29kZQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc3RydWN0LmVycm9yLCBzdHJ1Y3QucGFjaywgZm9ybWF0LCAxLjApCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzdHJ1Y3QuZXJyb3IsIHN0cnVjdC5wYWNrLCBmb3JtYXQsIDEuNSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoc3RydWN0LmVycm9yLCBzdHJ1Y3QucGFjaywgJ1AnLCAxLjApCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHN0cnVjdC5lcnJvciwgc3RydWN0LnBhY2ssICdQJywgMS41KQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N1YnByb2Nlc3MucHkgYi9MaWIvdGVzdC90ZXN0X3N1YnByb2Nlc3MucHkKaW5kZXggNDBkMGZiNC4uZjJjZGMzMyAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9zdWJwcm9jZXNzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3VicHJvY2Vzcy5weQpAQCAtNjAsNiArNjAsOCBAQAogICAgICAgICAjIHNodXRkb3duIHRpbWUuICBUaGF0IGZydXN0cmF0ZXMgdGVzdHMgdHJ5aW5nIHRvIGNoZWNrIHN0ZGVyciBwcm9kdWNlZAogICAgICAgICAjIGZyb20gYSBzcGF3bmVkIFB5dGhvbiBwcm9jZXNzLgogICAgICAgICBhY3R1YWwgPSBzdXBwb3J0LnN0cmlwX3B5dGhvbl9zdGRlcnIoc3RkZXJyKQorICAgICAgICAjIHN0cmlwX3B5dGhvbl9zdGRlcnIgYWxzbyBzdHJpcHMgd2hpdGVzcGFjZSwgc28gd2UgZG8gdG9vLgorICAgICAgICBleHBlY3RlZCA9IGV4cGVjdGVkLnN0cmlwKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhY3R1YWwsIGV4cGVjdGVkLCBtc2cpCiAKIApAQCAtNzEsNiArNzMsMTUgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbXBvcnQgc3lzOyBzeXMuZXhpdCg0NykiXSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyYywgNDcpCiAKKyAgICBkZWYgdGVzdF9jYWxsX3RpbWVvdXQoc2VsZik6CisgICAgICAgICMgY2FsbCgpIGZ1bmN0aW9uIHdpdGggdGltZW91dCBhcmd1bWVudDsgd2Ugd2FudCB0byB0ZXN0IHRoYXQgdGhlIGNoaWxkCisgICAgICAgICMgcHJvY2VzcyBnZXRzIGtpbGxlZCB3aGVuIHRoZSB0aW1lb3V0IGV4cGlyZXMuICBJZiB0aGUgY2hpbGQgaXNuJ3QKKyAgICAgICAgIyBraWxsZWQsIHRoaXMgY2FsbCB3aWxsIGRlYWRsb2NrIHNpbmNlIHN1YnByb2Nlc3MuY2FsbCB3YWl0cyBmb3IgdGhlCisgICAgICAgICMgY2hpbGQuCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHN1YnByb2Nlc3MuVGltZW91dEV4cGlyZWQsIHN1YnByb2Nlc3MuY2FsbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgW3N5cy5leGVjdXRhYmxlLCAiLWMiLCAid2hpbGUgVHJ1ZTogcGFzcyJdLAorICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lb3V0PTAuMSkKKwogICAgIGRlZiB0ZXN0X2NoZWNrX2NhbGxfemVybyhzZWxmKToKICAgICAgICAgIyBjaGVja19jYWxsKCkgZnVuY3Rpb24gd2l0aCB6ZXJvIHJldHVybiBjb2RlCiAgICAgICAgIHJjID0gc3VicHJvY2Vzcy5jaGVja19jYWxsKFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwKQEAgLTExMyw2ICsxMjQsMjEgQEAKICAgICAgICAgICAgIHNlbGYuZmFpbCgiRXhwZWN0ZWQgVmFsdWVFcnJvciB3aGVuIHN0ZG91dCBhcmcgc3VwcGxpZWQuIikKICAgICAgICAgc2VsZi5hc3NlcnRJbignc3Rkb3V0JywgYy5leGNlcHRpb24uYXJnc1swXSkKIAorICAgIGRlZiB0ZXN0X2NoZWNrX291dHB1dF90aW1lb3V0KHNlbGYpOgorICAgICAgICAjIGNoZWNrX291dHB1dCgpIGZ1bmN0aW9uIHdpdGggdGltZW91dCBhcmcKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhzdWJwcm9jZXNzLlRpbWVvdXRFeHBpcmVkKSBhcyBjOgorICAgICAgICAgICAgb3V0cHV0ID0gc3VicHJvY2Vzcy5jaGVja19vdXRwdXQoCisgICAgICAgICAgICAgICAgICAgIFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwKKyAgICAgICAgICAgICAgICAgICAgICJpbXBvcnQgc3lzLCB0aW1lXG4iCisgICAgICAgICAgICAgICAgICAgICAic3lzLnN0ZG91dC53cml0ZSgnQkRGTCcpXG4iCisgICAgICAgICAgICAgICAgICAgICAic3lzLnN0ZG91dC5mbHVzaCgpXG4iCisgICAgICAgICAgICAgICAgICAgICAidGltZS5zbGVlcCgzNjAwKSJdLAorICAgICAgICAgICAgICAgICAgICAjIFNvbWUgaGVhdmlseSBsb2FkZWQgYnVpbGRib3RzIChzcGFyYyBEZWJpYW4gMy54KSByZXF1aXJlCisgICAgICAgICAgICAgICAgICAgICMgdGhpcyBtdWNoIHRpbWUgdG8gc3RhcnQgYW5kIHByaW50LgorICAgICAgICAgICAgICAgICAgICB0aW1lb3V0PTMpCisgICAgICAgICAgICBzZWxmLmZhaWwoIkV4cGVjdGVkIFRpbWVvdXRFeHBpcmVkLiIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYy5leGNlcHRpb24ub3V0cHV0LCBiJ0JERkwnKQorCiAgICAgZGVmIHRlc3RfY2FsbF9rd2FyZ3Moc2VsZik6CiAgICAgICAgICMgY2FsbCgpIGZ1bmN0aW9uIHdpdGgga2V5d29yZCBhcmdzCiAgICAgICAgIG5ld2VudiA9IG9zLmVudmlyb24uY29weSgpCkBAIC0zMTIsNiArMzM4LDMxIEBACiAgICAgICAgIHJjID0gc3VicHJvY2Vzcy5jYWxsKFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwgY21kXSwgc3Rkb3V0PTEpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmMsIDIpCiAKKyAgICBkZWYgdGVzdF9zdGRvdXRfZGV2bnVsbChzZWxmKToKKyAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oW3N5cy5leGVjdXRhYmxlLCAiLWMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvciBpIGluIHJhbmdlKDEwMjQwKTonCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncHJpbnQoIngiICogMTAyNCknXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZG91dD1zdWJwcm9jZXNzLkRFVk5VTEwpCisgICAgICAgIHAud2FpdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocC5zdGRvdXQsIE5vbmUpCisKKyAgICBkZWYgdGVzdF9zdGRlcnJfZGV2bnVsbChzZWxmKToKKyAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oW3N5cy5leGVjdXRhYmxlLCAiLWMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ltcG9ydCBzeXNcbicKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdmb3IgaSBpbiByYW5nZSgxMDI0MCk6JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRlcnIud3JpdGUoIngiICogMTAyNCknXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZGVycj1zdWJwcm9jZXNzLkRFVk5VTEwpCisgICAgICAgIHAud2FpdCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocC5zdGRlcnIsIE5vbmUpCisKKyAgICBkZWYgdGVzdF9zdGRpbl9kZXZudWxsKHNlbGYpOgorICAgICAgICBwID0gc3VicHJvY2Vzcy5Qb3Blbihbc3lzLmV4ZWN1dGFibGUsICItYyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaW1wb3J0IHN5czsnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3lzLnN0ZGluLnJlYWQoMSknXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZGluPXN1YnByb2Nlc3MuREVWTlVMTCkKKyAgICAgICAgcC53YWl0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwLnN0ZGluLCBOb25lKQorCiAgICAgZGVmIHRlc3RfY3dkKHNlbGYpOgogICAgICAgICB0bXBkaXIgPSB0ZW1wZmlsZS5nZXR0ZW1wZGlyKCkKICAgICAgICAgIyBXZSBjYW5ub3QgdXNlIG9zLnBhdGgucmVhbHBhdGggdG8gY2Fub25pY2FsaXplIHRoZSBwYXRoLApAQCAtNDAwLDYgKzQ1MSw0MSBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0ZG91dCwgYiJiYW5hbmEiKQogICAgICAgICBzZWxmLmFzc2VydFN0ZGVyckVxdWFsKHN0ZGVyciwgYiJwaW5lYXBwbGUiKQogCisgICAgZGVmIHRlc3RfY29tbXVuaWNhdGVfdGltZW91dChzZWxmKToKKyAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oW3N5cy5leGVjdXRhYmxlLCAiLWMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ltcG9ydCBzeXMsb3MsdGltZTsnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3lzLnN0ZGVyci53cml0ZSgicGluZWFwcGxlXFxuIik7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RpbWUuc2xlZXAoMSk7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRlcnIud3JpdGUoInBlYXJcXG4iKTsnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3lzLnN0ZG91dC53cml0ZShzeXMuc3RkaW4ucmVhZCgpKSddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bml2ZXJzYWxfbmV3bGluZXM9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkaW49c3VicHJvY2Vzcy5QSVBFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRlcnI9c3VicHJvY2Vzcy5QSVBFKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzdWJwcm9jZXNzLlRpbWVvdXRFeHBpcmVkLCBwLmNvbW11bmljYXRlLCAiYmFuYW5hIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dD0wLjMpCisgICAgICAgICMgTWFrZSBzdXJlIHdlIGNhbiBrZWVwIHdhaXRpbmcgZm9yIGl0LCBhbmQgdGhhdCB3ZSBnZXQgdGhlIHdob2xlIG91dHB1dAorICAgICAgICAjIGFmdGVyIGl0IGNvbXBsZXRlcy4KKyAgICAgICAgKHN0ZG91dCwgc3RkZXJyKSA9IHAuY29tbXVuaWNhdGUoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0ZG91dCwgImJhbmFuYSIpCisgICAgICAgIHNlbGYuYXNzZXJ0U3RkZXJyRXF1YWwoc3RkZXJyLmVuY29kZSgpLCBiInBpbmVhcHBsZVxucGVhclxuIikKKworICAgIGRlZiB0ZXN0X2NvbW11bmljYXRlX3RpbWVvdXRfbGFyZ2Vfb3VwdXQoc2VsZik6CisgICAgICAgICMgVGVzdCBhIGV4cHJpbmcgdGltZW91dCB3aGlsZSB0aGUgY2hpbGQgaXMgb3V0cHV0dGluZyBsb3RzIG9mIGRhdGEuCisgICAgICAgIHAgPSBzdWJwcm9jZXNzLlBvcGVuKFtzeXMuZXhlY3V0YWJsZSwgIi1jIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpbXBvcnQgc3lzLG9zLHRpbWU7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoImEiICogKDY0ICogMTAyNCkpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aW1lLnNsZWVwKDAuMik7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoImEiICogKDY0ICogMTAyNCkpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aW1lLnNsZWVwKDAuMik7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoImEiICogKDY0ICogMTAyNCkpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aW1lLnNsZWVwKDAuMik7JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoImEiICogKDY0ICogMTAyNCkpOyddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhzdWJwcm9jZXNzLlRpbWVvdXRFeHBpcmVkLCBwLmNvbW11bmljYXRlLCB0aW1lb3V0PTAuNCkKKyAgICAgICAgKHN0ZG91dCwgXykgPSBwLmNvbW11bmljYXRlKCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc3Rkb3V0KSwgNCAqIDY0ICogMTAyNCkKKwogICAgICMgVGVzdCBmb3IgdGhlIGZkIGxlYWsgcmVwb3J0ZWQgaW4gaHR0cDovL2J1Z3MucHl0aG9uLm9yZy9pc3N1ZTI3OTEuCiAgICAgZGVmIHRlc3RfY29tbXVuaWNhdGVfcGlwZV9mZF9sZWFrKHNlbGYpOgogICAgICAgICBmb3Igc3RkaW5fcGlwZSBpbiAoRmFsc2UsIFRydWUpOgpAQCAtNDM2LDI0ICs1MjIsMjEgQEAKICAgICAgICAgIyBUaGlzIHRlc3Qgd2lsbCBwcm9iYWJseSBkZWFkbG9jayByYXRoZXIgdGhhbiBmYWlsLCBpZgogICAgICAgICAjIGNvbW11bmljYXRlKCkgZG9lcyBub3Qgd29yayBwcm9wZXJseS4KICAgICAgICAgeCwgeSA9IG9zLnBpcGUoKQotICAgICAgICBpZiBtc3dpbmRvd3M6Ci0gICAgICAgICAgICBwaXBlX2J1ZiA9IDUxMgotICAgICAgICBlbHNlOgotICAgICAgICAgICAgcGlwZV9idWYgPSBvcy5mcGF0aGNvbmYoeCwgIlBDX1BJUEVfQlVGIikKICAgICAgICAgb3MuY2xvc2UoeCkKICAgICAgICAgb3MuY2xvc2UoeSkKICAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oW3N5cy5leGVjdXRhYmxlLCAiLWMiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2ltcG9ydCBzeXMsb3M7JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoc3lzLnN0ZGluLnJlYWQoNDcpKTsnCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc3lzLnN0ZGVyci53cml0ZSgieHl6IiolZCk7JwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRvdXQud3JpdGUoc3lzLnN0ZGluLnJlYWQoKSknICUgcGlwZV9idWZdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3N5cy5zdGRlcnIud3JpdGUoIngiICogJWQpOycKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzeXMuc3Rkb3V0LndyaXRlKHN5cy5zdGRpbi5yZWFkKCkpJyAlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXBwb3J0LlBJUEVfTUFYX1NJWkVdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGRpbj1zdWJwcm9jZXNzLlBJUEUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZGVycj1zdWJwcm9jZXNzLlBJUEUpCiAgICAgICAgIHNlbGYuYWRkQ2xlYW51cChwLnN0ZG91dC5jbG9zZSkKICAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHAuc3RkZXJyLmNsb3NlKQogICAgICAgICBzZWxmLmFkZENsZWFudXAocC5zdGRpbi5jbG9zZSkKLSAgICAgICAgc3RyaW5nX3RvX3dyaXRlID0gYiJhYmMiKnBpcGVfYnVmCisgICAgICAgIHN0cmluZ190b193cml0ZSA9IGIiYSIgKiBzdXBwb3J0LlBJUEVfTUFYX1NJWkUKICAgICAgICAgKHN0ZG91dCwgc3RkZXJyKSA9IHAuY29tbXVuaWNhdGUoc3RyaW5nX3RvX3dyaXRlKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0ZG91dCwgc3RyaW5nX3RvX3dyaXRlKQogCkBAIC02MjcsNiArNzEwLDE1IEBACiAgICAgICAgICMgU3Vic2VxdWVudCBpbnZvY2F0aW9ucyBzaG91bGQganVzdCByZXR1cm4gdGhlIHJldHVybmNvZGUKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwLndhaXQoKSwgMCkKIAorICAgIGRlZiB0ZXN0X3dhaXRfdGltZW91dChzZWxmKToKKyAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oW3N5cy5leGVjdXRhYmxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi1jIiwgImltcG9ydCB0aW1lOyB0aW1lLnNsZWVwKDAuMSkiXSkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhzdWJwcm9jZXNzLlRpbWVvdXRFeHBpcmVkKSBhcyBjOgorICAgICAgICAgICAgcC53YWl0KHRpbWVvdXQ9MC4wMSkKKyAgICAgICAgc2VsZi5hc3NlcnRJbigiMC4wMSIsIHN0cihjLmV4Y2VwdGlvbikpICAjIEZvciBjb3ZlcmFnZSBvZiBfX3N0cl9fLgorICAgICAgICAjIFNvbWUgaGVhdmlseSBsb2FkZWQgYnVpbGRib3RzIChzcGFyYyBEZWJpYW4gMy54KSByZXF1aXJlIHRoaXMgbXVjaAorICAgICAgICAjIHRpbWUgdG8gc3RhcnQuCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocC53YWl0KHRpbWVvdXQ9MyksIDApCiAKICAgICBkZWYgdGVzdF9pbnZhbGlkX2J1ZnNpemUoc2VsZik6CiAgICAgICAgICMgYW4gaW52YWxpZCB0eXBlIG9mIHRoZSBidWZzaXplIGFyZ3VtZW50IHNob3VsZCByYWlzZQpAQCAtMTIyMSw2ICsxMzEzLDExIEBACiAgICAgICAgIGV4aXRjb2RlID0gc3VicHJvY2Vzcy5jYWxsKFthYnNfcHJvZ3JhbSwgIi1jIiwgInBhc3MiXSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleGl0Y29kZSwgMCkKIAorICAgICAgICAjIGFic29sdXRlIGJ5dGVzIHBhdGggYXMgYSBzdHJpbmcKKyAgICAgICAgY21kID0gYiInIiArIGFic19wcm9ncmFtICsgYiInIC1jIHBhc3MiCisgICAgICAgIGV4aXRjb2RlID0gc3VicHJvY2Vzcy5jYWxsKGNtZCwgc2hlbGw9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleGl0Y29kZSwgMCkKKwogICAgICAgICAjIGJ5dGVzIHByb2dyYW0sIHVuaWNvZGUgUEFUSAogICAgICAgICBlbnYgPSBvcy5lbnZpcm9uLmNvcHkoKQogICAgICAgICBlbnZbIlBBVEgiXSA9IHBhdGgKQEAgLTE0MDQsNyArMTUwMSw3IEBACiAgICAgICAgIHN0ZG91dCwgc3RkZXJyID0gcC5jb21tdW5pY2F0ZSgpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoMCwgcC5yZXR1cm5jb2RlLCAic2lnY2hpbGRfaWdub3JlLnB5IGV4aXRlZCIKICAgICAgICAgICAgICAgICAgICAgICAgICAiIG5vbi16ZXJvIHdpdGggdGhpcyBlcnJvcjpcbiVzIiAlCi0gICAgICAgICAgICAgICAgICAgICAgICAgc3RkZXJyLmRlY29kZSgndXRmOCcpKQorICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZGVyci5kZWNvZGUoJ3V0Zi04JykpCiAKICAgICBkZWYgdGVzdF9zZWxlY3RfdW5idWZmZXJlZChzZWxmKToKICAgICAgICAgIyBJc3N1ZSAjMTE0NTk6IGJ1ZnNpemU9MCBzaG91bGQgcmVhbGx5IHNldCB0aGUgcGlwZXMgYXMKQEAgLTE2MTcsMjggKzE3MTQsNiBAQAogICAgICAgICBQcm9jZXNzVGVzdENhc2UudGVhckRvd24oc2VsZikKIAogCi1AdW5pdHRlc3Quc2tpcFVubGVzcyhnZXRhdHRyKHN1YnByb2Nlc3MsICdfcG9zaXhzdWJwcm9jZXNzJywgRmFsc2UpLAotICAgICAgICAgICAgICAgICAgICAgIl9wb3NpeHN1YnByb2Nlc3MgZXh0ZW5zaW9uIG1vZHVsZSBub3QgZm91bmQuIikKLWNsYXNzIFByb2Nlc3NUZXN0Q2FzZVBPU0lYUHVyZVB5dGhvbihQcm9jZXNzVGVzdENhc2UsIFBPU0lYUHJvY2Vzc1Rlc3RDYXNlKToKLSAgICBAY2xhc3NtZXRob2QKLSAgICBkZWYgc2V0VXBDbGFzcyhjbHMpOgotICAgICAgICBnbG9iYWwgc3VicHJvY2VzcwotICAgICAgICBhc3NlcnQgc3VicHJvY2Vzcy5fcG9zaXhzdWJwcm9jZXNzCi0gICAgICAgICMgUmVpbXBvcnQgc3VicHJvY2VzcyB3aGlsZSBmb3JjaW5nIF9wb3NpeHN1YnByb2Nlc3MgdG8gbm90IGV4aXN0LgotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKCcuKl9wb3NpeHN1YnByb2Nlc3MgLiogbm90IGJlaW5nIHVzZWQuKicsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUnVudGltZVdhcm5pbmcpKToKLSAgICAgICAgICAgIHN1YnByb2Nlc3MgPSBzdXBwb3J0LmltcG9ydF9mcmVzaF9tb2R1bGUoCi0gICAgICAgICAgICAgICAgICAgICdzdWJwcm9jZXNzJywgYmxvY2tlZD1bJ19wb3NpeHN1YnByb2Nlc3MnXSkKLSAgICAgICAgYXNzZXJ0IG5vdCBzdWJwcm9jZXNzLl9wb3NpeHN1YnByb2Nlc3MKLQotICAgIEBjbGFzc21ldGhvZAotICAgIGRlZiB0ZWFyRG93bkNsYXNzKGNscyk6Ci0gICAgICAgIGdsb2JhbCBzdWJwcm9jZXNzCi0gICAgICAgICMgUmVpbXBvcnQgc3VicHJvY2VzcyBhcyBpdCBzaG91bGQgYmUsIHJlc3RvcmluZyBvcmRlciB0byB0aGUgdW5pdmVyc2UuCi0gICAgICAgIHN1YnByb2Nlc3MgPSBzdXBwb3J0LmltcG9ydF9mcmVzaF9tb2R1bGUoJ3N1YnByb2Nlc3MnKQotICAgICAgICBhc3NlcnQgc3VicHJvY2Vzcy5fcG9zaXhzdWJwcm9jZXNzCi0KLQogY2xhc3MgSGVscGVyRnVuY3Rpb25UZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgQHVuaXR0ZXN0LnNraXBJZihtc3dpbmRvd3MsICJlcnJubyBhbmQgRUlOVFIgbWFrZSBubyBzZW5zZSBvbiB3aW5kb3dzIikKICAgICBkZWYgdGVzdF9laW50cl9yZXRyeV9jYWxsKHNlbGYpOgpAQCAtMTc0Nyw3ICsxODIyLDYgQEAKICAgICB1bml0X3Rlc3RzID0gKFByb2Nlc3NUZXN0Q2FzZSwKICAgICAgICAgICAgICAgICAgIFBPU0lYUHJvY2Vzc1Rlc3RDYXNlLAogICAgICAgICAgICAgICAgICAgV2luMzJQcm9jZXNzVGVzdENhc2UsCi0gICAgICAgICAgICAgICAgICBQcm9jZXNzVGVzdENhc2VQT1NJWFB1cmVQeXRob24sCiAgICAgICAgICAgICAgICAgICBDb21tYW5kVGVzdHMsCiAgICAgICAgICAgICAgICAgICBQcm9jZXNzVGVzdENhc2VOb1BvbGwsCiAgICAgICAgICAgICAgICAgICBIZWxwZXJGdW5jdGlvblRlc3RzLApkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zdXBlci5weSBiL0xpYi90ZXN0L3Rlc3Rfc3VwZXIucHkKaW5kZXggOTE0MjE2ZC4uMjk4Y2FlMCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF9zdXBlci5weQorKysgYi9MaWIvdGVzdC90ZXN0X3N1cGVyLnB5CkBAIC04MSw2ICs4MSwxNiBAQAogCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoRSgpLmYoKSwgJ0FFJykKIAorICAgIGRlZiB0ZXN0X19fY2xhc3NfX19zZXQoc2VsZik6CisgICAgICAgICMgU2VlIGlzc3VlICMxMjM3MAorICAgICAgICBjbGFzcyBYKEEpOgorICAgICAgICAgICAgZGVmIGYoc2VsZik6CisgICAgICAgICAgICAgICAgcmV0dXJuIHN1cGVyKCkuZigpCisgICAgICAgICAgICBfX2NsYXNzX18gPSA0MTMKKyAgICAgICAgeCA9IFgoKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHguZigpLCAnQScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoeC5fX2NsYXNzX18sIDQxMykKKwogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoVGVzdFN1cGVyKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zdXBwb3J0LnB5IGIvTGliL3Rlc3QvdGVzdF9zdXBwb3J0LnB5Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM5NGUyMTAKLS0tIC9kZXYvbnVsbAorKysgYi9MaWIvdGVzdC90ZXN0X3N1cHBvcnQucHkKQEAgLTAsMCArMSwxODggQEAKKyMhL3Vzci9iaW4vZW52IHB5dGhvbgorCitpbXBvcnQgc3lzCitpbXBvcnQgb3MKK2ltcG9ydCB1bml0dGVzdAoraW1wb3J0IHNvY2tldAoraW1wb3J0IHRlbXBmaWxlCitpbXBvcnQgZXJybm8KK2Zyb20gdGVzdCBpbXBvcnQgc3VwcG9ydAorCitURVNURk4gPSBzdXBwb3J0LlRFU1RGTgorVEVTVERJUk4gPSBvcy5wYXRoLmJhc2VuYW1lKHRlbXBmaWxlLm1rZHRlbXAoZGlyPScuJykpCisKKworY2xhc3MgVGVzdFN1cHBvcnQodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc3VwcG9ydC51bmxpbmsoVEVTVEZOKQorICAgICAgICBzdXBwb3J0LnJtdHJlZShURVNURElSTikKKyAgICB0ZWFyRG93biA9IHNldFVwCisKKyAgICBkZWYgdGVzdF9pbXBvcnRfbW9kdWxlKHNlbGYpOgorICAgICAgICBzdXBwb3J0LmltcG9ydF9tb2R1bGUoImZ0cGxpYiIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHVuaXR0ZXN0LlNraXBUZXN0LCBzdXBwb3J0LmltcG9ydF9tb2R1bGUsICJmb28iKQorCisgICAgZGVmIHRlc3RfaW1wb3J0X2ZyZXNoX21vZHVsZShzZWxmKToKKyAgICAgICAgc3VwcG9ydC5pbXBvcnRfZnJlc2hfbW9kdWxlKCJmdHBsaWIiKQorCisgICAgZGVmIHRlc3RfZ2V0X2F0dHJpYnV0ZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdXBwb3J0LmdldF9hdHRyaWJ1dGUoc2VsZiwgInRlc3RfZ2V0X2F0dHJpYnV0ZSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi50ZXN0X2dldF9hdHRyaWJ1dGUpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHVuaXR0ZXN0LlNraXBUZXN0LCBzdXBwb3J0LmdldF9hdHRyaWJ1dGUsIHNlbGYsICJmb28iKQorCisgICAgQHVuaXR0ZXN0LnNraXAoImZhaWxpbmcgYnVpbGRib3RzIikKKyAgICBkZWYgdGVzdF9nZXRfb3JpZ2luYWxfc3Rkb3V0KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1cHBvcnQuZ2V0X29yaWdpbmFsX3N0ZG91dCgpLCBzeXMuc3Rkb3V0KQorCisgICAgZGVmIHRlc3RfdW5sb2FkKHNlbGYpOgorICAgICAgICBpbXBvcnQgc2NoZWQKKyAgICAgICAgc2VsZi5hc3NlcnRJbigic2NoZWQiLCBzeXMubW9kdWxlcykKKyAgICAgICAgc3VwcG9ydC51bmxvYWQoInNjaGVkIikKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbigic2NoZWQiLCBzeXMubW9kdWxlcykKKworICAgIGRlZiB0ZXN0X3VubGluayhzZWxmKToKKyAgICAgICAgd2l0aCBvcGVuKFRFU1RGTiwgInciKSBhcyBmOgorICAgICAgICAgICAgcGFzcworICAgICAgICBzdXBwb3J0LnVubGluayhURVNURk4pCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5leGlzdHMoVEVTVEZOKSkKKyAgICAgICAgc3VwcG9ydC51bmxpbmsoVEVTVEZOKQorCisgICAgZGVmIHRlc3Rfcm10cmVlKHNlbGYpOgorICAgICAgICBvcy5ta2RpcihURVNURElSTikKKyAgICAgICAgb3MubWtkaXIob3MucGF0aC5qb2luKFRFU1RESVJOLCBURVNURElSTikpCisgICAgICAgIHN1cHBvcnQucm10cmVlKFRFU1RESVJOKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKFRFU1RESVJOKSkKKyAgICAgICAgc3VwcG9ydC5ybXRyZWUoVEVTVERJUk4pCisKKyAgICBkZWYgdGVzdF9mb3JnZXQoc2VsZik6CisgICAgICAgIG1vZF9maWxlbmFtZSA9IFRFU1RGTiArICcucHknCisgICAgICAgIHdpdGggb3Blbihtb2RfZmlsZW5hbWUsICd3JykgYXMgZjoKKyAgICAgICAgICAgIHByaW50KCdmb28gPSAxJywgZmlsZT1mKQorICAgICAgICBzeXMucGF0aC5pbnNlcnQoMCwgb3MuY3VyZGlyKQorICAgICAgICB0cnk6CisgICAgICAgICAgICBtb2QgPSBfX2ltcG9ydF9fKFRFU1RGTikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oVEVTVEZOLCBzeXMubW9kdWxlcykKKworICAgICAgICAgICAgc3VwcG9ydC5mb3JnZXQoVEVTVEZOKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RJbihURVNURk4sIHN5cy5tb2R1bGVzKQorICAgICAgICBmaW5hbGx5OgorICAgICAgICAgICAgZGVsIHN5cy5wYXRoWzBdCisgICAgICAgICAgICBzdXBwb3J0LnVubGluayhtb2RfZmlsZW5hbWUpCisKKyAgICBkZWYgdGVzdF9IT1NUKHNlbGYpOgorICAgICAgICBzID0gc29ja2V0LnNvY2tldCgpCisgICAgICAgIHMuYmluZCgoc3VwcG9ydC5IT1NULCAwKSkKKyAgICAgICAgcy5jbG9zZSgpCisKKyAgICBkZWYgdGVzdF9maW5kX3VudXNlZF9wb3J0KHNlbGYpOgorICAgICAgICBwb3J0ID0gc3VwcG9ydC5maW5kX3VudXNlZF9wb3J0KCkKKyAgICAgICAgcyA9IHNvY2tldC5zb2NrZXQoKQorICAgICAgICBzLmJpbmQoKHN1cHBvcnQuSE9TVCwgcG9ydCkpCisgICAgICAgIHMuY2xvc2UoKQorCisgICAgZGVmIHRlc3RfYmluZF9wb3J0KHNlbGYpOgorICAgICAgICBzID0gc29ja2V0LnNvY2tldCgpCisgICAgICAgIHN1cHBvcnQuYmluZF9wb3J0KHMpCisgICAgICAgIHMubGlzdGVuKDEpCisgICAgICAgIHMuY2xvc2UoKQorCisgICAgZGVmIHRlc3RfdGVtcF9jd2Qoc2VsZik6CisgICAgICAgIGhlcmUgPSBvcy5nZXRjd2QoKQorICAgICAgICB3aXRoIHN1cHBvcnQudGVtcF9jd2QobmFtZT1URVNURk4pOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5wYXRoLmJhc2VuYW1lKG9zLmdldGN3ZCgpKSwgVEVTVEZOKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKFRFU1RGTikpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmJhc2VuYW1lKG9zLmdldGN3ZCgpKSwgaGVyZSkKKworICAgIGRlZiB0ZXN0X3NvcnRkaWN0KHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN1cHBvcnQuc29ydGRpY3QoezM6MywgMjoyLCAxOjF9KSwgInsxOiAxLCAyOiAyLCAzOiAzfSIpCisKKyAgICBkZWYgdGVzdF9tYWtlX2JhZF9mZChzZWxmKToKKyAgICAgICAgZmQgPSBzdXBwb3J0Lm1ha2VfYmFkX2ZkKCkKKyAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhPU0Vycm9yKSBhcyBjbToKKyAgICAgICAgICAgIG9zLndyaXRlKGZkLCBiImZvbyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoY20uZXhjZXB0aW9uLmVycm5vLCBlcnJuby5FQkFERikKKworICAgIGRlZiB0ZXN0X2NoZWNrX3N5bnRheF9lcnJvcihzZWxmKToKKyAgICAgICAgc3VwcG9ydC5jaGVja19zeW50YXhfZXJyb3Ioc2VsZiwgImRlZiBjbGFzcyIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKEFzc2VydGlvbkVycm9yLCBzdXBwb3J0LmNoZWNrX3N5bnRheF9lcnJvciwgc2VsZiwgIjEiKQorCisgICAgZGVmIHRlc3RfQ2xlYW5JbXBvcnQoc2VsZik6CisgICAgICAgIGltcG9ydCBpbXBvcnRsaWIKKyAgICAgICAgd2l0aCBzdXBwb3J0LkNsZWFuSW1wb3J0KCJhc3luY29yZSIpOgorICAgICAgICAgICAgaW1wb3J0bGliLmltcG9ydF9tb2R1bGUoImFzeW5jb3JlIikKKworICAgIGRlZiB0ZXN0X0RpcnNPblN5c1BhdGgoc2VsZik6CisgICAgICAgIHdpdGggc3VwcG9ydC5EaXJzT25TeXNQYXRoKCdmb28nLCAnYmFyJyk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEluKCJmb28iLCBzeXMucGF0aCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SW4oImJhciIsIHN5cy5wYXRoKQorICAgICAgICBzZWxmLmFzc2VydE5vdEluKCJmb28iLCBzeXMucGF0aCkKKyAgICAgICAgc2VsZi5hc3NlcnROb3RJbigiYmFyIiwgc3lzLnBhdGgpCisKKyAgICBkZWYgdGVzdF9jYXB0dXJlZF9zdGRvdXQoc2VsZik6CisgICAgICAgIHdpdGggc3VwcG9ydC5jYXB0dXJlZF9zdGRvdXQoKSBhcyBzOgorICAgICAgICAgICAgcHJpbnQoImhlbGxvIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzLmdldHZhbHVlKCksICJoZWxsb1xuIikKKworICAgIGRlZiB0ZXN0X2NhcHR1cmVkX3N0ZGVycihzZWxmKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNhcHR1cmVkX3N0ZGVycigpIGFzIHM6CisgICAgICAgICAgICBwcmludCgiaGVsbG8iLCBmaWxlPXN5cy5zdGRlcnIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocy5nZXR2YWx1ZSgpLCAiaGVsbG9cbiIpCisKKyAgICBkZWYgdGVzdF9jYXB0dXJlZF9zdGRpbihzZWxmKToKKyAgICAgICAgd2l0aCBzdXBwb3J0LmNhcHR1cmVkX3N0ZGluKCkgYXMgczoKKyAgICAgICAgICAgIHByaW50KCJoZWxsbyIsIGZpbGU9c3lzLnN0ZGluKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHMuZ2V0dmFsdWUoKSwgImhlbGxvXG4iKQorCisgICAgZGVmIHRlc3RfZ2NfY29sbGVjdChzZWxmKToKKyAgICAgICAgc3VwcG9ydC5nY19jb2xsZWN0KCkKKworICAgIGRlZiB0ZXN0X3B5dGhvbl9pc19vcHRpbWl6ZWQoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShzdXBwb3J0LnB5dGhvbl9pc19vcHRpbWl6ZWQoKSwgYm9vbCkKKworICAgIGRlZiB0ZXN0X3N3YXBfYXR0cihzZWxmKToKKyAgICAgICAgY2xhc3MgT2JqOgorICAgICAgICAgICAgeCA9IDEKKyAgICAgICAgb2JqID0gT2JqKCkKKyAgICAgICAgd2l0aCBzdXBwb3J0LnN3YXBfYXR0cihvYmosICJ4IiwgNSk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9iai54LCA1KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG9iai54LCAxKQorCisgICAgZGVmIHRlc3Rfc3dhcF9pdGVtKHNlbGYpOgorICAgICAgICBEID0geyJpdGVtIjoxfQorICAgICAgICB3aXRoIHN1cHBvcnQuc3dhcF9pdGVtKEQsICJpdGVtIiwgNSk6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKERbIml0ZW0iXSwgNSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChEWyJpdGVtIl0sIDEpCisKKyAgICAjIFhYWCAtZm9sbG93cyBhIGxpc3Qgb2YgdW50ZXN0ZWQgQVBJCisgICAgIyBtYWtlX2xlZ2FjeV9weWMKKyAgICAjIGlzX3Jlc291cmNlX2VuYWJsZWQKKyAgICAjIHJlcXVpcmVzCisgICAgIyBmY21wCisgICAgIyB1bWFrcworICAgICMgZmluZGZpbGUKKyAgICAjIGNoZWNrX3dhcm5pbmdzCisgICAgIyBFbnZpcm9ubWVudFZhckd1YXJkCisgICAgIyBUcmFuc2llbnRSZXNvdXJjZQorICAgICMgdHJhbnNpZW50X2ludGVybmV0CisgICAgIyBydW5fd2l0aF9sb2NhbGUKKyAgICAjIHNldF9tZW1saW1pdAorICAgICMgYmlnbWVtdGVzdAorICAgICMgcHJlY2lzaW9uYmlnbWVtdGVzdAorICAgICMgYmlnYWRkcnNwYWNldGVzdAorICAgICMgcmVxdWlyZXNfcmVzb3VyY2UKKyAgICAjIHJ1bl9kb2N0ZXN0CisgICAgIyB0aHJlYWRpbmdfY2xlYW51cAorICAgICMgcmVhcF90aHJlYWRzCisgICAgIyByZWFwX2NoaWxkcmVuCisgICAgIyBzdHJpcF9weXRob25fc3RkZXJyCisgICAgIyBhcmdzX2Zyb21faW50ZXJwcmV0ZXJfZmxhZ3MKKyAgICAjIGNhbl9zeW1saW5rCisgICAgIyBza2lwX3VubGVzc19zeW1saW5rCisKKworZGVmIHRlc3RfbWFpbigpOgorICAgIHRlc3RzID0gW1Rlc3RTdXBwb3J0XQorICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KCp0ZXN0cykKKworaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKKyAgICB0ZXN0X21haW4oKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF9zeXMucHkgYi9MaWIvdGVzdC90ZXN0X3N5cy5weQppbmRleCA1ZDM0MDRmLi41MjdlNzYyIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3N5cy5weQorKysgYi9MaWIvdGVzdC90ZXN0X3N5cy5weQpAQCAtMzAzLDYgKzMwMyw3IEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN5cy5nZXRkbG9wZW5mbGFncygpLCBvbGRmbGFncysxKQogICAgICAgICAgICAgc3lzLnNldGRsb3BlbmZsYWdzKG9sZGZsYWdzKQogCisgICAgQHRlc3Quc3VwcG9ydC5yZWZjb3VudF90ZXN0CiAgICAgZGVmIHRlc3RfcmVmY291bnQoc2VsZik6CiAgICAgICAgICMgbiBoZXJlIG11c3QgYmUgYSBnbG9iYWwgaW4gb3JkZXIgZm9yIHRoaXMgdGVzdCB0byBwYXNzIHdoaWxlCiAgICAgICAgICMgdHJhY2luZyB3aXRoIGEgcHl0aG9uIGZ1bmN0aW9uLiAgVHJhY2luZyBjYWxscyBQeUZyYW1lX0Zhc3RUb0xvY2FscwpAQCAtMzQyLDcgKzM0Myw3IEBACiAgICAgIyBUZXN0IHN5cy5fY3VycmVudF9mcmFtZXMoKSBpbiBhIFdJVEhfVEhSRUFEUyBidWlsZC4KICAgICBAdGVzdC5zdXBwb3J0LnJlYXBfdGhyZWFkcwogICAgIGRlZiBjdXJyZW50X2ZyYW1lc193aXRoX3RocmVhZHMoc2VsZik6Ci0gICAgICAgIGltcG9ydCB0aHJlYWRpbmcsIF90aHJlYWQKKyAgICAgICAgaW1wb3J0IHRocmVhZGluZwogICAgICAgICBpbXBvcnQgdHJhY2ViYWNrCiAKICAgICAgICAgIyBTcGF3biBhIHRocmVhZCB0aGF0IGJsb2NrcyBhdCBhIGtub3duIHBsYWNlLiAgVGhlbiB0aGUgbWFpbgpAQCAtMzU2LDcgKzM1Nyw3IEBACiAgICAgICAgICAgICBnNDU2KCkKIAogICAgICAgICBkZWYgZzQ1NigpOgotICAgICAgICAgICAgdGhyZWFkX2luZm8uYXBwZW5kKF90aHJlYWQuZ2V0X2lkZW50KCkpCisgICAgICAgICAgICB0aHJlYWRfaW5mby5hcHBlbmQodGhyZWFkaW5nLmdldF9pZGVudCgpKQogICAgICAgICAgICAgZW50ZXJlZF9nLnNldCgpCiAgICAgICAgICAgICBsZWF2ZV9nLndhaXQoKQogCkBAIC0zNzIsNyArMzczLDcgQEAKIAogICAgICAgICBkID0gc3lzLl9jdXJyZW50X2ZyYW1lcygpCiAKLSAgICAgICAgbWFpbl9pZCA9IF90aHJlYWQuZ2V0X2lkZW50KCkKKyAgICAgICAgbWFpbl9pZCA9IHRocmVhZGluZy5nZXRfaWRlbnQoKQogICAgICAgICBzZWxmLmFzc2VydEluKG1haW5faWQsIGQpCiAgICAgICAgIHNlbGYuYXNzZXJ0SW4odGhyZWFkX2lkLCBkKQogCkBAIC00NDYsNiArNDQ3LDcgQEAKIAogICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc3lzLm1heHNpemUsIGludCkKICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHN5cy5tYXh1bmljb2RlLCBpbnQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3lzLm1heHVuaWNvZGUsIDB4MTBGRkZGKQogICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2Uoc3lzLnBsYXRmb3JtLCBzdHIpCiAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShzeXMucHJlZml4LCBzdHIpCiAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShzeXMudmVyc2lvbiwgc3RyKQpAQCAtNDczLDYgKzQ3NSwxNCBAQAogICAgICAgICBpZiBub3Qgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ3dpbicpOgogICAgICAgICAgICAgc2VsZi5hc3NlcnRJc0luc3RhbmNlKHN5cy5hYmlmbGFncywgc3RyKQogCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cihzeXMsICd0aHJlYWRfaW5mbycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICdUaHJlYWRpbmcgcmVxdWlyZWQgZm9yIHRoaXMgdGVzdC4nKQorICAgIGRlZiB0ZXN0X3RocmVhZF9pbmZvKHNlbGYpOgorICAgICAgICBpbmZvID0gc3lzLnRocmVhZF9pbmZvCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGluZm8pLCAzKQorICAgICAgICBzZWxmLmFzc2VydEluKGluZm8ubmFtZSwgKCdudCcsICdvczInLCAncHRocmVhZCcsICdzb2xhcmlzJywgTm9uZSkpCisgICAgICAgIHNlbGYuYXNzZXJ0SW4oaW5mby5sb2NrLCAoJ3NlbWFwaG9yZScsICdtdXRleCtjb25kJywgTm9uZSkpCisKICAgICBkZWYgdGVzdF80MzU4MShzZWxmKToKICAgICAgICAgIyBDYW4ndCB1c2Ugc3lzLnN0ZG91dCwgYXMgdGhpcyBpcyBhIFN0cmluZ0lPIG9iamVjdCB3aGVuCiAgICAgICAgICMgdGhlIHRlc3QgcnVucyB1bmRlciByZWdydGVzdC4KQEAgLTUwMCw3ICs1MTAsNyBAQAogCiAgICAgZGVmIHRlc3Rfc3lzX2ZsYWdzKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydFRydWUoc3lzLmZsYWdzKQotICAgICAgICBhdHRycyA9ICgiZGVidWciLCAiZGl2aXNpb25fd2FybmluZyIsCisgICAgICAgIGF0dHJzID0gKCJkZWJ1ZyIsCiAgICAgICAgICAgICAgICAgICJpbnNwZWN0IiwgImludGVyYWN0aXZlIiwgIm9wdGltaXplIiwgImRvbnRfd3JpdGVfYnl0ZWNvZGUiLAogICAgICAgICAgICAgICAgICAibm9fdXNlcl9zaXRlIiwgIm5vX3NpdGUiLCAiaWdub3JlX2Vudmlyb25tZW50IiwgInZlcmJvc2UiLAogICAgICAgICAgICAgICAgICAiYnl0ZXNfd2FybmluZyIsICJxdWlldCIpCkBAIC02NTksMjEgKzY2OSwyMSBAQAogICAgICAgICAgICAgcmV0dXJuIGlubmVyCiAgICAgICAgIGNoZWNrKGdldF9jZWxsKCkuX19jbG9zdXJlX19bMF0sIHNpemUoaCArICdQJykpCiAgICAgICAgICMgY29kZQotICAgICAgICBjaGVjayhnZXRfY2VsbCgpLl9fY29kZV9fLCBzaXplKGggKyAnNWk4UGkzUCcpKQorICAgICAgICBjaGVjayhnZXRfY2VsbCgpLl9fY29kZV9fLCBzaXplKGggKyAnNWk5UGkzUCcpKQogICAgICAgICAjIGNvbXBsZXgKICAgICAgICAgY2hlY2soY29tcGxleCgwLDEpLCBzaXplKGggKyAnMmQnKSkKICAgICAgICAgIyBtZXRob2RfZGVzY3JpcHRvciAoZGVzY3JpcHRvciBvYmplY3QpCi0gICAgICAgIGNoZWNrKHN0ci5sb3dlciwgc2l6ZShoICsgJzJQUCcpKQorICAgICAgICBjaGVjayhzdHIubG93ZXIsIHNpemUoaCArICczUFAnKSkKICAgICAgICAgIyBjbGFzc21ldGhvZF9kZXNjcmlwdG9yIChkZXNjcmlwdG9yIG9iamVjdCkKICAgICAgICAgIyBYWFgKICAgICAgICAgIyBtZW1iZXJfZGVzY3JpcHRvciAoZGVzY3JpcHRvciBvYmplY3QpCiAgICAgICAgIGltcG9ydCBkYXRldGltZQotICAgICAgICBjaGVjayhkYXRldGltZS50aW1lZGVsdGEuZGF5cywgc2l6ZShoICsgJzJQUCcpKQorICAgICAgICBjaGVjayhkYXRldGltZS50aW1lZGVsdGEuZGF5cywgc2l6ZShoICsgJzNQUCcpKQogICAgICAgICAjIGdldHNldF9kZXNjcmlwdG9yIChkZXNjcmlwdG9yIG9iamVjdCkKICAgICAgICAgaW1wb3J0IGNvbGxlY3Rpb25zCi0gICAgICAgIGNoZWNrKGNvbGxlY3Rpb25zLmRlZmF1bHRkaWN0LmRlZmF1bHRfZmFjdG9yeSwgc2l6ZShoICsgJzJQUCcpKQorICAgICAgICBjaGVjayhjb2xsZWN0aW9ucy5kZWZhdWx0ZGljdC5kZWZhdWx0X2ZhY3RvcnksIHNpemUoaCArICczUFAnKSkKICAgICAgICAgIyB3cmFwcGVyX2Rlc2NyaXB0b3IgKGRlc2NyaXB0b3Igb2JqZWN0KQotICAgICAgICBjaGVjayhpbnQuX19hZGRfXywgc2l6ZShoICsgJzJQMlAnKSkKKyAgICAgICAgY2hlY2soaW50Ll9fYWRkX18sIHNpemUoaCArICczUDJQJykpCiAgICAgICAgICMgbWV0aG9kLXdyYXBwZXIgKGRlc2NyaXB0b3Igb2JqZWN0KQogICAgICAgICBjaGVjayh7fS5fX2l0ZXJfXywgc2l6ZShoICsgJzJQJykpCiAgICAgICAgICMgZGljdApAQCAtNzIwLDEwICs3MzAsMTAgQEAKICAgICAgICAgbmZyZWVzID0gbGVuKHguZl9jb2RlLmNvX2ZyZWV2YXJzKQogICAgICAgICBleHRyYXMgPSB4LmZfY29kZS5jb19zdGFja3NpemUgKyB4LmZfY29kZS5jb19ubG9jYWxzICtcCiAgICAgICAgICAgICAgICAgICBuY2VsbHMgKyBuZnJlZXMgLSAxCi0gICAgICAgIGNoZWNrKHgsIHNpemUodmggKyAnMTJQM2knICsgQ09fTUFYQkxPQ0tTKiczaScgKyAnUCcgKyBleHRyYXMqJ1AnKSkKKyAgICAgICAgY2hlY2soeCwgc2l6ZSh2aCArICcxM1AzaScgKyBDT19NQVhCTE9DS1MqJzNpJyArICdQJyArIGV4dHJhcyonUCcpKQogICAgICAgICAjIGZ1bmN0aW9uCiAgICAgICAgIGRlZiBmdW5jKCk6IHBhc3MKLSAgICAgICAgY2hlY2soZnVuYywgc2l6ZShoICsgJzExUCcpKQorICAgICAgICBjaGVjayhmdW5jLCBzaXplKGggKyAnMTJQJykpCiAgICAgICAgIGNsYXNzIGMoKToKICAgICAgICAgICAgIEBzdGF0aWNtZXRob2QKICAgICAgICAgICAgIGRlZiBmb28oKToKQEAgLTc2Myw4ICs3NzMsOCBAQAogICAgICAgICBjaGVjayhpbnQoUHlMb25nX0JBU0UpLCBzaXplKHZoKSArIDIqc2VsZi5sb25nZGlnaXQpCiAgICAgICAgIGNoZWNrKGludChQeUxvbmdfQkFTRSoqMi0xKSwgc2l6ZSh2aCkgKyAyKnNlbGYubG9uZ2RpZ2l0KQogICAgICAgICBjaGVjayhpbnQoUHlMb25nX0JBU0UqKjIpLCBzaXplKHZoKSArIDMqc2VsZi5sb25nZGlnaXQpCi0gICAgICAgICMgbWVtb3J5Ci0gICAgICAgIGNoZWNrKG1lbW9yeXZpZXcoYicnKSwgc2l6ZShoICsgJ1BQMlAyaTdQJykpCisgICAgICAgICMgbWVtb3J5IChQeV9idWZmZXIgKyBoYXNoIHZhbHVlKQorICAgICAgICBjaGVjayhtZW1vcnl2aWV3KGInJyksIHNpemUoaCArICdQUDJQMmk3UCcgKyAnUCcpKQogICAgICAgICAjIG1vZHVsZQogICAgICAgICBjaGVjayh1bml0dGVzdCwgc2l6ZShoICsgJzNQJykpCiAgICAgICAgICMgTm9uZQpAQCAtODIxLDE5ICs4MzEsNDEgQEAKICAgICAgICAgIyB0eXBlCiAgICAgICAgICMgKFB5VHlwZU9iamVjdCArIFB5TnVtYmVyTWV0aG9kcyArIFB5TWFwcGluZ01ldGhvZHMgKwogICAgICAgICAjICBQeVNlcXVlbmNlTWV0aG9kcyArIFB5QnVmZmVyUHJvY3MpCi0gICAgICAgIHMgPSBzaXplKHZoICsgJ1AyUDE1UGw0UFA5UFAxMVBJJykgKyBzaXplKCcxNlBpMTdQIDNQIDEwUCAyUCAyUCcpCisgICAgICAgIHMgPSBzaXplKHZoICsgJ1AyUDE1UGw0UFA5UFAxMVBJJykgKyBzaXplKCcxNlBpMTdQIDNQIDEwUCAyUCAzUCcpCiAgICAgICAgIGNoZWNrKGludCwgcykKICAgICAgICAgIyBjbGFzcwogICAgICAgICBjbGFzcyBuZXdzdHlsZWNsYXNzKG9iamVjdCk6IHBhc3MKICAgICAgICAgY2hlY2sobmV3c3R5bGVjbGFzcywgcykKICAgICAgICAgIyB1bmljb2RlCi0gICAgICAgIHVzaXplID0gbGVuKCdcMCcuZW5jb2RlKCd1bmljb2RlLWludGVybmFsJykpCi0gICAgICAgIHNhbXBsZXMgPSBbJycsICcxJyoxMDBdCi0gICAgICAgICMgd2UgbmVlZCB0byB0ZXN0IGZvciBib3RoIHNpemVzLCBiZWNhdXNlIHdlIGRvbid0IGtub3cgaWYgdGhlIHN0cmluZwotICAgICAgICAjIGhhcyBiZWVuIGNhY2hlZAorICAgICAgICAjIGVhY2ggdHVwbGUgY29udGFpbnMgYSBzdHJpbmcgYW5kIGl0cyBleHBlY3RlZCBjaGFyYWN0ZXIgc2l6ZQorICAgICAgICAjIGRvbid0IHB1dCBhbnkgc3RhdGljIHN0cmluZ3MgaGVyZSwgYXMgdGhleSBtYXkgY29udGFpbgorICAgICAgICAjIHdjaGFyX3Qgb3IgVVRGLTggcmVwcmVzZW50YXRpb25zCisgICAgICAgIHNhbXBsZXMgPSBbJzEnKjEwMCwgJ1x4ZmYnKjUwLAorICAgICAgICAgICAgICAgICAgICdcdTAxMDAnKjQwLCAnXHVmZmZmJyoxMDAsCisgICAgICAgICAgICAgICAgICAgJ1xVMDAwMTAwMDAnKjMwLCAnXFUwMDEwZmZmZicqMTAwXQorICAgICAgICBhc2NpaWZpZWxkcyA9IGggKyAiUFBpUCIKKyAgICAgICAgY29tcGFjdGZpZWxkcyA9IGFzY2lpZmllbGRzICsgIlBQUCIKKyAgICAgICAgdW5pY29kZWZpZWxkcyA9IGNvbXBhY3RmaWVsZHMgKyAiUCIKICAgICAgICAgZm9yIHMgaW4gc2FtcGxlczoKLSAgICAgICAgICAgIGJhc2ljc2l6ZSA9ICBzaXplKGggKyAnUFBQaVAnKSArIHVzaXplICogKGxlbihzKSArIDEpCi0gICAgICAgICAgICBjaGVjayhzLCBiYXNpY3NpemUpCisgICAgICAgICAgICBtYXhjaGFyID0gb3JkKG1heChzKSkKKyAgICAgICAgICAgIGlmIG1heGNoYXIgPCAxMjg6CisgICAgICAgICAgICAgICAgTCA9IHNpemUoYXNjaWlmaWVsZHMpICsgbGVuKHMpICsgMQorICAgICAgICAgICAgZWxpZiBtYXhjaGFyIDwgMjU2OgorICAgICAgICAgICAgICAgIEwgPSBzaXplKGNvbXBhY3RmaWVsZHMpICsgbGVuKHMpICsgMQorICAgICAgICAgICAgZWxpZiBtYXhjaGFyIDwgNjU1MzY6CisgICAgICAgICAgICAgICAgTCA9IHNpemUoY29tcGFjdGZpZWxkcykgKyAyKihsZW4ocykgKyAxKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBMID0gc2l6ZShjb21wYWN0ZmllbGRzKSArIDQqKGxlbihzKSArIDEpCisgICAgICAgICAgICBjaGVjayhzLCBMKQorICAgICAgICAjIHZlcmlmeSB0aGF0IHRoZSBVVEYtOCBzaXplIGlzIGFjY291bnRlZCBmb3IKKyAgICAgICAgcyA9IGNocigweDQwMDApICAgIyA0IGJ5dGVzIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbgorICAgICAgICBjaGVjayhzLCBzaXplKGNvbXBhY3RmaWVsZHMpICsgNCkKKyAgICAgICAgIyBjb21waWxlKCkgd2lsbCB0cmlnZ2VyIHRoZSBnZW5lcmF0aW9uIG9mIHRoZSBVVEYtOAorICAgICAgICAjIHJlcHJlc2VudGF0aW9uIGFzIGEgc2lkZSBlZmZlY3QKKyAgICAgICAgY29tcGlsZShzLCAiPHN0ZGluPiIsICJldmFsIikKKyAgICAgICAgY2hlY2socywgc2l6ZShjb21wYWN0ZmllbGRzKSArIDQgKyA0KQorICAgICAgICAjIFRPRE86IGFkZCBjaGVjayB0aGF0IGZvcmNlcyB0aGUgcHJlc2VuY2Ugb2Ygd2NoYXJfdCByZXByZXNlbnRhdGlvbgorICAgICAgICAjIFRPRE86IGFkZCBjaGVjayB0aGF0IGZvcmNlcyBsYXlvdXQgb2YgdW5pY29kZWZpZWxkcwogICAgICAgICAjIHdlYWtyZWYKICAgICAgICAgaW1wb3J0IHdlYWtyZWYKICAgICAgICAgY2hlY2sod2Vha3JlZi5yZWYoaW50KSwgc2l6ZShoICsgJzJQbDJQJykpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N5c19zZXR0cmFjZS5weSBiL0xpYi90ZXN0L3Rlc3Rfc3lzX3NldHRyYWNlLnB5CmluZGV4IGNmMzk3NmMuLjU3OGU5NWQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc3lzX3NldHRyYWNlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3lzX3NldHRyYWNlLnB5CkBAIC0yNTEsNiArMjUxLDcgQEAKICAgICBkZWYgc2V0VXAoc2VsZik6CiAgICAgICAgIHNlbGYudXNpbmdfZ2MgPSBnYy5pc2VuYWJsZWQoKQogICAgICAgICBnYy5kaXNhYmxlKCkKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5zZXR0cmFjZSwgc3lzLmdldHRyYWNlKCkpCiAKICAgICBkZWYgdGVhckRvd24oc2VsZik6CiAgICAgICAgIGlmIHNlbGYudXNpbmdfZ2M6CkBAIC0zODksNiArMzkwLDkgQEAKIAogCiBjbGFzcyBSYWlzaW5nVHJhY2VGdW5jVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5zZXR0cmFjZSwgc3lzLmdldHRyYWNlKCkpCisKICAgICBkZWYgdHJhY2Uoc2VsZiwgZnJhbWUsIGV2ZW50LCBhcmcpOgogICAgICAgICAiIiJBIHRyYWNlIGZ1bmN0aW9uIHRoYXQgcmFpc2VzIGFuIGV4Y2VwdGlvbiBpbiByZXNwb25zZSB0byBhCiAgICAgICAgIHNwZWNpZmljIHRyYWNlIGV2ZW50LiIiIgpAQCAtNjg4LDYgKzY5MiwxMCBAQAogCiAKIGNsYXNzIEp1bXBUZXN0Q2FzZSh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnNldHRyYWNlLCBzeXMuZ2V0dHJhY2UoKSkKKyAgICAgICAgc3lzLnNldHRyYWNlKE5vbmUpCisKICAgICBkZWYgY29tcGFyZV9qdW1wX291dHB1dChzZWxmLCBleHBlY3RlZCwgcmVjZWl2ZWQpOgogICAgICAgICBpZiByZWNlaXZlZCAhPSBleHBlY3RlZDoKICAgICAgICAgICAgIHNlbGYuZmFpbCggIk91dHB1dHMgZG9uJ3QgbWF0Y2g6XG4iICsKQEAgLTczOSw2ICs3NDcsOCBAQAogICAgIGRlZiB0ZXN0XzE4X25vX2p1bXBfdG9fbm9uX2ludGVnZXJzKHNlbGYpOgogICAgICAgICBzZWxmLnJ1bl90ZXN0KG5vX2p1bXBfdG9fbm9uX2ludGVnZXJzKQogICAgIGRlZiB0ZXN0XzE5X25vX2p1bXBfd2l0aG91dF90cmFjZV9mdW5jdGlvbihzZWxmKToKKyAgICAgICAgIyBNdXN0IHNldCBzeXMuc2V0dHJhY2UoTm9uZSkgaW4gc2V0VXAoKSwgZWxzZSBjb25kaXRpb24gaXMgbm90CisgICAgICAgICMgdHJpZ2dlcmVkLgogICAgICAgICBub19qdW1wX3dpdGhvdXRfdHJhY2VfZnVuY3Rpb24oKQogCiAgICAgZGVmIHRlc3RfMjBfbGFyZ2VfZnVuY3Rpb24oc2VsZik6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3N5c2NvbmZpZy5weSBiL0xpYi90ZXN0L3Rlc3Rfc3lzY29uZmlnLnB5CmluZGV4IGFhYmI2ZmEuLmEyZTZmYmMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfc3lzY29uZmlnLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfc3lzY29uZmlnLnB5CkBAIC0xLDI1ICsxLDIzIEBACi0iIiJUZXN0cyBmb3Igc3lzY29uZmlnLiIiIgotCiBpbXBvcnQgdW5pdHRlc3QKIGltcG9ydCBzeXMKIGltcG9ydCBvcwogaW1wb3J0IHN1YnByb2Nlc3MKIGltcG9ydCBzaHV0aWwKLWZyb20gY29weSBpbXBvcnQgY29weSwgZGVlcGNvcHkKK2Zyb20gY29weSBpbXBvcnQgY29weQogCiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgKHJ1bl91bml0dGVzdCwgVEVTVEZOLCB1bmxpbmssCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhcHR1cmVkX3N0ZG91dCwgc2tpcF91bmxlc3Nfc3ltbGluaykKIAogaW1wb3J0IHN5c2NvbmZpZwogZnJvbSBzeXNjb25maWcgaW1wb3J0IChnZXRfcGF0aHMsIGdldF9wbGF0Zm9ybSwgZ2V0X2NvbmZpZ192YXJzLAotICAgICAgICAgICAgICAgICAgICAgICBnZXRfcGF0aCwgZ2V0X3BhdGhfbmFtZXMsIF9JTlNUQUxMX1NDSEVNRVMsCisgICAgICAgICAgICAgICAgICAgICAgIGdldF9wYXRoLCBnZXRfcGF0aF9uYW1lcywgX1NDSEVNRVMsCiAgICAgICAgICAgICAgICAgICAgICAgIF9nZXRfZGVmYXVsdF9zY2hlbWUsIF9leHBhbmRfdmFycywKICAgICAgICAgICAgICAgICAgICAgICAgZ2V0X3NjaGVtZV9uYW1lcywgZ2V0X2NvbmZpZ192YXIsIF9tYWluKQogCisKIGNsYXNzIFRlc3RTeXNDb25maWcodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgZGVmIHNldFVwKHNlbGYpOgotICAgICAgICAiIiJNYWtlIGEgY29weSBvZiBzeXMucGF0aCIiIgogICAgICAgICBzdXBlcihUZXN0U3lzQ29uZmlnLCBzZWxmKS5zZXRVcCgpCiAgICAgICAgIHNlbGYuc3lzX3BhdGggPSBzeXMucGF0aFs6XQogICAgICAgICAjIHBhdGNoaW5nIG9zLnVuYW1lCkBAIC0zOCwxMSArMzYsMTcgQEAKICAgICAgICAgc2VsZi5qb2luID0gb3MucGF0aC5qb2luCiAgICAgICAgIHNlbGYuaXNhYnMgPSBvcy5wYXRoLmlzYWJzCiAgICAgICAgIHNlbGYuc3BsaXRkcml2ZSA9IG9zLnBhdGguc3BsaXRkcml2ZQotICAgICAgICBzZWxmLl9jb25maWdfdmFycyA9IGNvcHkoc3lzY29uZmlnLl9DT05GSUdfVkFSUykKLSAgICAgICAgc2VsZi5vbGRfZW52aXJvbiA9IGRlZXBjb3B5KG9zLmVudmlyb24pCisgICAgICAgIHNlbGYuX2NvbmZpZ192YXJzID0gc3lzY29uZmlnLl9DT05GSUdfVkFSUworICAgICAgICBzeXNjb25maWcuX0NPTkZJR19WQVJTID0gY29weShzeXNjb25maWcuX0NPTkZJR19WQVJTKQorICAgICAgICBzZWxmLl9hZGRlZF9lbnZ2YXJzID0gW10KKyAgICAgICAgc2VsZi5fY2hhbmdlZF9lbnZ2YXJzID0gW10KKyAgICAgICAgZm9yIHZhciBpbiAoJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCcsICdQQVRIJyk6CisgICAgICAgICAgICBpZiB2YXIgaW4gb3MuZW52aXJvbjoKKyAgICAgICAgICAgICAgICBzZWxmLl9jaGFuZ2VkX2VudnZhcnMuYXBwZW5kKCh2YXIsIG9zLmVudmlyb25bdmFyXSkpCisgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgIHNlbGYuX2FkZGVkX2VudnZhcnMuYXBwZW5kKHZhcikKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKLSAgICAgICAgIiIiUmVzdG9yZSBzeXMucGF0aCIiIgogICAgICAgICBzeXMucGF0aFs6XSA9IHNlbGYuc3lzX3BhdGgKICAgICAgICAgc2VsZi5fY2xlYW51cF90ZXN0Zm4oKQogICAgICAgICBpZiBzZWxmLnVuYW1lIGlzIG5vdCBOb25lOgpAQCAtNTYsMTQgKzYwLDExIEBACiAgICAgICAgIG9zLnBhdGguam9pbiA9IHNlbGYuam9pbgogICAgICAgICBvcy5wYXRoLmlzYWJzID0gc2VsZi5pc2FicwogICAgICAgICBvcy5wYXRoLnNwbGl0ZHJpdmUgPSBzZWxmLnNwbGl0ZHJpdmUKLSAgICAgICAgc3lzY29uZmlnLl9DT05GSUdfVkFSUyA9IGNvcHkoc2VsZi5fY29uZmlnX3ZhcnMpCi0gICAgICAgIGZvciBrZXksIHZhbHVlIGluIHNlbGYub2xkX2Vudmlyb24uaXRlbXMoKToKLSAgICAgICAgICAgIGlmIG9zLmVudmlyb24uZ2V0KGtleSkgIT0gdmFsdWU6Ci0gICAgICAgICAgICAgICAgb3MuZW52aXJvbltrZXldID0gdmFsdWUKLQotICAgICAgICBmb3Iga2V5IGluIGxpc3Qob3MuZW52aXJvbi5rZXlzKCkpOgotICAgICAgICAgICAgaWYga2V5IG5vdCBpbiBzZWxmLm9sZF9lbnZpcm9uOgotICAgICAgICAgICAgICAgIGRlbCBvcy5lbnZpcm9uW2tleV0KKyAgICAgICAgc3lzY29uZmlnLl9DT05GSUdfVkFSUyA9IHNlbGYuX2NvbmZpZ192YXJzCisgICAgICAgIGZvciB2YXIsIHZhbHVlIGluIHNlbGYuX2NoYW5nZWRfZW52dmFyczoKKyAgICAgICAgICAgIG9zLmVudmlyb25bdmFyXSA9IHZhbHVlCisgICAgICAgIGZvciB2YXIgaW4gc2VsZi5fYWRkZWRfZW52dmFyczoKKyAgICAgICAgICAgIG9zLmVudmlyb24ucG9wKHZhciwgTm9uZSkKIAogICAgICAgICBzdXBlcihUZXN0U3lzQ29uZmlnLCBzZWxmKS50ZWFyRG93bigpCiAKQEAgLTgxLDI3ICs4MiwyNSBAQAogICAgICAgICAgICAgc2h1dGlsLnJtdHJlZShwYXRoKQogCiAgICAgZGVmIHRlc3RfZ2V0X3BhdGhfbmFtZXMoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZ2V0X3BhdGhfbmFtZXMoKSwgc3lzY29uZmlnLl9TQ0hFTUVfS0VZUykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChnZXRfcGF0aF9uYW1lcygpLCBfU0NIRU1FUy5vcHRpb25zKCdwb3NpeF9wcmVmaXgnKSkKIAogICAgIGRlZiB0ZXN0X2dldF9wYXRocyhzZWxmKToKICAgICAgICAgc2NoZW1lID0gZ2V0X3BhdGhzKCkKICAgICAgICAgZGVmYXVsdF9zY2hlbWUgPSBfZ2V0X2RlZmF1bHRfc2NoZW1lKCkKICAgICAgICAgd2FudGVkID0gX2V4cGFuZF92YXJzKGRlZmF1bHRfc2NoZW1lLCBOb25lKQotICAgICAgICB3YW50ZWQgPSBsaXN0KHdhbnRlZC5pdGVtcygpKQotICAgICAgICB3YW50ZWQuc29ydCgpCi0gICAgICAgIHNjaGVtZSA9IGxpc3Qoc2NoZW1lLml0ZW1zKCkpCi0gICAgICAgIHNjaGVtZS5zb3J0KCkKKyAgICAgICAgd2FudGVkID0gc29ydGVkKHdhbnRlZC5pdGVtcygpKQorICAgICAgICBzY2hlbWUgPSBzb3J0ZWQoc2NoZW1lLml0ZW1zKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2NoZW1lLCB3YW50ZWQpCiAKICAgICBkZWYgdGVzdF9nZXRfcGF0aChzZWxmKToKLSAgICAgICAgIyB4eHggbWFrZSByZWFsIHRlc3RzIGhlcmUKLSAgICAgICAgZm9yIHNjaGVtZSBpbiBfSU5TVEFMTF9TQ0hFTUVTOgotICAgICAgICAgICAgZm9yIG5hbWUgaW4gX0lOU1RBTExfU0NIRU1FU1tzY2hlbWVdOgorICAgICAgICAjIFhYWCBtYWtlIHJlYWwgdGVzdHMgaGVyZQorICAgICAgICBmb3Igc2NoZW1lIGluIF9TQ0hFTUVTOgorICAgICAgICAgICAgZm9yIG5hbWUgaW4gX1NDSEVNRVNbc2NoZW1lXToKICAgICAgICAgICAgICAgICByZXMgPSBnZXRfcGF0aChuYW1lLCBzY2hlbWUpCiAKICAgICBkZWYgdGVzdF9nZXRfY29uZmlnX3ZhcnMoc2VsZik6CiAgICAgICAgIGN2YXJzID0gZ2V0X2NvbmZpZ192YXJzKCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGlzaW5zdGFuY2UoY3ZhcnMsIGRpY3QpKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoY3ZhcnMsIGRpY3QpCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShjdmFycykKIAogICAgIGRlZiB0ZXN0X2dldF9wbGF0Zm9ybShzZWxmKToKQEAgLTEzNSw4ICsxMzQsNiBAQAogICAgICAgICAgICAgICAgICAgICgnRGFyd2luIEtlcm5lbCBWZXJzaW9uIDguMTEuMTogJwogICAgICAgICAgICAgICAgICAgICAnV2VkIE9jdCAxMCAxODoyMzoyOCBQRFQgMjAwNzsgJwogICAgICAgICAgICAgICAgICAgICAncm9vdDp4bnUtNzkyLjI1LjIwfjEvUkVMRUFTRV9JMzg2JyksICdQb3dlclBDJykpCi0KLQogICAgICAgICBnZXRfY29uZmlnX3ZhcnMoKVsnTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUJ10gPSAnMTAuMycKIAogICAgICAgICBnZXRfY29uZmlnX3ZhcnMoKVsnQ0ZMQUdTJ10gPSAoJy1mbm8tc3RyaWN0LWFsaWFzaW5nIC1ETkRFQlVHIC1nICcKQEAgLTE1MSw3ICsxNDgsNiBAQAogICAgICAgICBmaW5hbGx5OgogICAgICAgICAgICAgc3lzLm1heHNpemUgPSBtYXhpbnQKIAotCiAgICAgICAgIHNlbGYuX3NldF91bmFtZSgoJ0RhcndpbicsICdtYWN6aWFkZScsICc4LjExLjEnLAogICAgICAgICAgICAgICAgICAgICgnRGFyd2luIEtlcm5lbCBWZXJzaW9uIDguMTEuMTogJwogICAgICAgICAgICAgICAgICAgICAnV2VkIE9jdCAxMCAxODoyMzoyOCBQRFQgMjAwNzsgJwpAQCAtMjA5LDkgKzIwNSw5IEBACiAgICAgICAgICAgICBnZXRfY29uZmlnX3ZhcnMoKVsnQ0ZMQUdTJ10gPSAoJy1hcmNoICVzIC1pc3lzcm9vdCAnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy9EZXZlbG9wZXIvU0RLcy9NYWNPU1gxMC40dS5zZGsgICcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZuby1jb21tb24gJwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICctZHluYW1pYyAtRE5ERUJVRyAtZyAtTzMnJShhcmNoLCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJy1keW5hbWljIC1ETkRFQlVHIC1nIC1PMycgJSBhcmNoKQogCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldF9wbGF0Zm9ybSgpLCAnbWFjb3N4LTEwLjQtJXMnJShhcmNoLCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGdldF9wbGF0Zm9ybSgpLCAnbWFjb3N4LTEwLjQtJXMnICUgYXJjaCkKIAogICAgICAgICAjIGxpbnV4IGRlYmlhbiBzYXJnZQogICAgICAgICBvcy5uYW1lID0gJ3Bvc2l4JwpAQCAtMjM5LDggKzIzNSw4IEBACiAgICAgICAgICMgT24gV2luZG93cywgdGhlIEVYRSBuZWVkcyB0byBrbm93IHdoZXJlIHB5dGhvblhZLmRsbCBpcyBhdCBzbyB3ZSBoYXZlCiAgICAgICAgICMgdG8gYWRkIHRoZSBkaXJlY3RvcnkgdG8gdGhlIHBhdGguCiAgICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAid2luMzIiOgotICAgICAgICAgICAgb3MuZW52aXJvblsiUGF0aCJdID0gInt9O3t9Ii5mb3JtYXQoCi0gICAgICAgICAgICAgICAgb3MucGF0aC5kaXJuYW1lKHN5cy5leGVjdXRhYmxlKSwgb3MuZW52aXJvblsiUGF0aCJdKQorICAgICAgICAgICAgb3MuZW52aXJvblsiUEFUSCJdID0gInt9O3t9Ii5mb3JtYXQoCisgICAgICAgICAgICAgICAgb3MucGF0aC5kaXJuYW1lKHN5cy5leGVjdXRhYmxlKSwgb3MuZW52aXJvblsiUEFUSCJdKQogCiAgICAgICAgICMgSXNzdWUgNzg4MAogICAgICAgICBkZWYgZ2V0KHB5dGhvbik6CkBAIC0yODYsNyArMjgyLDYgQEAKIAogICAgICAgICBzZWxmLmFzc2VydEluKGxkZmxhZ3MsIGxkc2hhcmVkKQogCi0KICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gImRhcndpbiIsICJ0ZXN0IG9ubHkgcmVsZXZhbnQgb24gTWFjT1NYIikKICAgICBkZWYgdGVzdF9wbGF0Zm9ybV9pbl9zdWJwcm9jZXNzKHNlbGYpOgogICAgICAgICBteV9wbGF0Zm9ybSA9IHN5c2NvbmZpZy5nZXRfcGxhdGZvcm0oKQpAQCAtMzEyLDI4ICszMDcsMjkgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGF0dXMsIDApCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobXlfcGxhdGZvcm0sIHRlc3RfcGxhdGZvcm0pCiAKLQogICAgICAgICAjIFRlc3Qgd2l0aCBNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQgaW4gdGhlIGVudmlyb25tZW50LCBhbmQKICAgICAgICAgIyB1c2luZyBhIHZhbHVlIHRoYXQgaXMgdW5saWtlbHkgdG8gYmUgdGhlIGRlZmF1bHQgb25lLgogICAgICAgICBlbnYgPSBvcy5lbnZpcm9uLmNvcHkoKQogICAgICAgICBlbnZbJ01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCddID0gJzEwLjEnCiAKLSAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oWwotICAgICAgICAgICAgICAgIHN5cy5leGVjdXRhYmxlLCAnLWMnLAotICAgICAgICAgICAgICAgICdpbXBvcnQgc3lzY29uZmlnOyBwcmludChzeXNjb25maWcuZ2V0X3BsYXRmb3JtKCkpJywKLSAgICAgICAgICAgIF0sCi0gICAgICAgICAgICBzdGRvdXQ9c3VicHJvY2Vzcy5QSVBFLAotICAgICAgICAgICAgc3RkZXJyPW9wZW4oJy9kZXYvbnVsbCcpLAotICAgICAgICAgICAgZW52PWVudikKLSAgICAgICAgdGVzdF9wbGF0Zm9ybSA9IHAuY29tbXVuaWNhdGUoKVswXS5zdHJpcCgpCi0gICAgICAgIHRlc3RfcGxhdGZvcm0gPSB0ZXN0X3BsYXRmb3JtLmRlY29kZSgndXRmLTgnKQotICAgICAgICBzdGF0dXMgPSBwLndhaXQoKQorICAgICAgICB3aXRoIG9wZW4oJy9kZXYvbnVsbCcpIGFzIGRldl9udWxsOgorICAgICAgICAgICAgcCA9IHN1YnByb2Nlc3MuUG9wZW4oWworICAgICAgICAgICAgICAgICAgICBzeXMuZXhlY3V0YWJsZSwgJy1jJywKKyAgICAgICAgICAgICAgICAgICAgJ2ltcG9ydCBzeXNjb25maWc7IHByaW50KHN5c2NvbmZpZy5nZXRfcGxhdGZvcm0oKSknLAorICAgICAgICAgICAgICAgIF0sCisgICAgICAgICAgICAgICAgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSwKKyAgICAgICAgICAgICAgICBzdGRlcnI9ZGV2X251bGwsCisgICAgICAgICAgICAgICAgZW52PWVudikKKyAgICAgICAgICAgIHRlc3RfcGxhdGZvcm0gPSBwLmNvbW11bmljYXRlKClbMF0uc3RyaXAoKQorICAgICAgICAgICAgdGVzdF9wbGF0Zm9ybSA9IHRlc3RfcGxhdGZvcm0uZGVjb2RlKCd1dGYtOCcpCisgICAgICAgICAgICBzdGF0dXMgPSBwLndhaXQoKQogCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RhdHVzLCAwKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG15X3BsYXRmb3JtLCB0ZXN0X3BsYXRmb3JtKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdGF0dXMsIDApCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG15X3BsYXRmb3JtLCB0ZXN0X3BsYXRmb3JtKQogCiAKIGNsYXNzIE1ha2VmaWxlVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgorCiAgICAgQHVuaXR0ZXN0LnNraXBJZihzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnd2luJyksCiAgICAgICAgICAgICAgICAgICAgICAnVGVzdCBpcyBub3QgV2luZG93cyBjb21wYXRpYmxlJykKICAgICBkZWYgdGVzdF9nZXRfbWFrZWZpbGVfZmlsZW5hbWUoc2VsZik6CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3RhcmZpbGUucHkgYi9MaWIvdGVzdC90ZXN0X3RhcmZpbGUucHkKaW5kZXggMTc1N2U0NC4uY2U1NDNkZiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF90YXJmaWxlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdGFyZmlsZS5weQpAQCAtMjEsNiArMjEsMTAgQEAKICAgICBpbXBvcnQgYnoyCiBleGNlcHQgSW1wb3J0RXJyb3I6CiAgICAgYnoyID0gTm9uZQordHJ5OgorICAgIGltcG9ydCBsem1hCitleGNlcHQgSW1wb3J0RXJyb3I6CisgICAgbHptYSA9IE5vbmUKIAogZGVmIG1kNXN1bShkYXRhKToKICAgICByZXR1cm4gbWQ1KGRhdGEpLmhleGRpZ2VzdCgpCkBAIC0yOSw2ICszMyw3IEBACiB0YXJuYW1lID0gc3VwcG9ydC5maW5kZmlsZSgidGVzdHRhci50YXIiKQogZ3ppcG5hbWUgPSBvcy5wYXRoLmpvaW4oVEVNUERJUiwgInRlc3R0YXIudGFyLmd6IikKIGJ6Mm5hbWUgPSBvcy5wYXRoLmpvaW4oVEVNUERJUiwgInRlc3R0YXIudGFyLmJ6MiIpCit4em5hbWUgPSBvcy5wYXRoLmpvaW4oVEVNUERJUiwgInRlc3R0YXIudGFyLnh6IikKIHRtcG5hbWUgPSBvcy5wYXRoLmpvaW4oVEVNUERJUiwgInRtcC50YXIiKQogCiBtZDVfcmVndHlwZSA9ICI2NWY0NzdjODE4YWQ5ZTE1ZjdmZWFiMGM2ZDM3NzQyZiIKQEAgLTgyLDcgKzg3LDcgQEAKICAgICBkZWYgdGVzdF9maWxlb2JqX2l0ZXIoc2VsZik6CiAgICAgICAgIHNlbGYudGFyLmV4dHJhY3QoInVzdGFyL3JlZ3R5cGUiLCBURU1QRElSKQogICAgICAgICB0YXJpbmZvID0gc2VsZi50YXIuZ2V0bWVtYmVyKCJ1c3Rhci9yZWd0eXBlIikKLSAgICAgICAgd2l0aCBvcGVuKG9zLnBhdGguam9pbihURU1QRElSLCAidXN0YXIvcmVndHlwZSIpLCAiclUiKSBhcyBmb2JqMToKKyAgICAgICAgd2l0aCBvcGVuKG9zLnBhdGguam9pbihURU1QRElSLCAidXN0YXIvcmVndHlwZSIpLCAiciIpIGFzIGZvYmoxOgogICAgICAgICAgICAgbGluZXMxID0gZm9iajEucmVhZGxpbmVzKCkKICAgICAgICAgZm9iajIgPSBzZWxmLnRhci5leHRyYWN0ZmlsZSh0YXJpbmZvKQogICAgICAgICB0cnk6CkBAIC0yMDEsMTMgKzIwNiwxNSBAQAogICAgICAgICAgICAgX29wZW4gPSBnemlwLkd6aXBGaWxlCiAgICAgICAgIGVsaWYgc2VsZi5tb2RlLmVuZHN3aXRoKCI6YnoyIik6CiAgICAgICAgICAgICBfb3BlbiA9IGJ6Mi5CWjJGaWxlCisgICAgICAgIGVsaWYgc2VsZi5tb2RlLmVuZHN3aXRoKCI6eHoiKToKKyAgICAgICAgICAgIF9vcGVuID0gbHptYS5MWk1BRmlsZQogICAgICAgICBlbHNlOgotICAgICAgICAgICAgX29wZW4gPSBvcGVuCisgICAgICAgICAgICBfb3BlbiA9IGlvLkZpbGVJTwogCiAgICAgICAgIGZvciBjaGFyIGluIChiJ1wwJywgYidhJyk6CiAgICAgICAgICAgICAjIFRlc3QgaWYgRU9GSGVhZGVyRXJyb3IgKCdcMCcpIGFuZCBJbnZhbGlkSGVhZGVyRXJyb3IgKCdhJykKICAgICAgICAgICAgICMgYXJlIGlnbm9yZWQgY29ycmVjdGx5LgotICAgICAgICAgICAgd2l0aCBfb3Blbih0bXBuYW1lLCAid2IiKSBhcyBmb2JqOgorICAgICAgICAgICAgd2l0aCBfb3Blbih0bXBuYW1lLCAidyIpIGFzIGZvYmo6CiAgICAgICAgICAgICAgICAgZm9iai53cml0ZShjaGFyICogMTAyNCkKICAgICAgICAgICAgICAgICBmb2JqLndyaXRlKHRhcmZpbGUuVGFySW5mbygiZm9vIikudG9idWYoKSkKIApAQCAtMjIyLDYgKzIyOSwxMCBAQAogY2xhc3MgTWlzY1JlYWRUZXN0KENvbW1vblJlYWRUZXN0KToKIAogICAgIGRlZiB0ZXN0X25vX25hbWVfYXJndW1lbnQoc2VsZik6CisgICAgICAgIGlmIHNlbGYubW9kZS5lbmRzd2l0aCgoImJ6MiIsICJ4eiIpKToKKyAgICAgICAgICAgICMgQloyRmlsZSBhbmQgTFpNQUZpbGUgaGF2ZSBubyBuYW1lIGF0dHJpYnV0ZS4KKyAgICAgICAgICAgIHNlbGYuc2tpcFRlc3QoIm5vIG5hbWUgYXR0cmlidXRlIikKKwogICAgICAgICB3aXRoIG9wZW4oc2VsZi50YXJuYW1lLCAicmIiKSBhcyBmb2JqOgogICAgICAgICAgICAgdGFyID0gdGFyZmlsZS5vcGVuKGZpbGVvYmo9Zm9iaiwgbW9kZT1zZWxmLm1vZGUpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRhci5uYW1lLCBvcy5wYXRoLmFic3BhdGgoZm9iai5uYW1lKSkKQEAgLTI2MiwxMCArMjczLDEyIEBACiAgICAgICAgICAgICBfb3BlbiA9IGd6aXAuR3ppcEZpbGUKICAgICAgICAgZWxpZiBzZWxmLm1vZGUuZW5kc3dpdGgoIjpiejIiKToKICAgICAgICAgICAgIF9vcGVuID0gYnoyLkJaMkZpbGUKKyAgICAgICAgZWxpZiBzZWxmLm1vZGUuZW5kc3dpdGgoIjp4eiIpOgorICAgICAgICAgICAgX29wZW4gPSBsem1hLkxaTUFGaWxlCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBfb3BlbiA9IG9wZW4KLSAgICAgICAgZm9iaiA9IF9vcGVuKHNlbGYudGFybmFtZSwgInJiIikKLSAgICAgICAgdHJ5OgorICAgICAgICAgICAgX29wZW4gPSBpby5GaWxlSU8KKworICAgICAgICB3aXRoIF9vcGVuKHNlbGYudGFybmFtZSkgYXMgZm9iajoKICAgICAgICAgICAgIGZvYmouc2VlayhvZmZzZXQpCiAKICAgICAgICAgICAgICMgVGVzdCBpZiB0aGUgdGFyZmlsZSBzdGFydHMgd2l0aCB0aGUgc2Vjb25kIG1lbWJlci4KQEAgLTI3OCw4ICsyOTEsNiBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0YXIuZXh0cmFjdGZpbGUodCkucmVhZCgpLCBkYXRhLAogICAgICAgICAgICAgICAgICAgICAic2VlayBiYWNrIGRpZCBub3Qgd29yayIpCiAgICAgICAgICAgICB0YXIuY2xvc2UoKQotICAgICAgICBmaW5hbGx5OgotICAgICAgICAgICAgZm9iai5jbG9zZSgpCiAKICAgICBkZWYgdGVzdF9mYWlsX2NvbXAoc2VsZik6CiAgICAgICAgICMgRm9yIEd6aXAgYW5kIEJ6MiBUZXN0czogZmFpbCB3aXRoIGEgUmVhZEVycm9yIG9uIGFuIHVuY29tcHJlc3NlZCBmaWxlLgpAQCAtNTIzLDYgKzUzNCwxOCBAQAogICAgICAgICAgICAgdGVzdGZ1bmMoYnoybmFtZSwgInJ8KiIpCiAgICAgICAgICAgICB0ZXN0ZnVuYyhiejJuYW1lLCAicnxiejIiKQogCisgICAgICAgIGlmIGx6bWE6CisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyh0YXJmaWxlLlJlYWRFcnJvciwgdGFyZmlsZS5vcGVuLCB0YXJuYW1lLCBtb2RlPSJyOnh6IikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKHRhcmZpbGUuUmVhZEVycm9yLCB0YXJmaWxlLm9wZW4sIHRhcm5hbWUsIG1vZGU9InJ8eHoiKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXModGFyZmlsZS5SZWFkRXJyb3IsIHRhcmZpbGUub3BlbiwgeHpuYW1lLCBtb2RlPSJyOiIpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyh0YXJmaWxlLlJlYWRFcnJvciwgdGFyZmlsZS5vcGVuLCB4em5hbWUsIG1vZGU9InJ8IikKKworICAgICAgICAgICAgdGVzdGZ1bmMoeHpuYW1lLCAiciIpCisgICAgICAgICAgICB0ZXN0ZnVuYyh4em5hbWUsICJyOioiKQorICAgICAgICAgICAgdGVzdGZ1bmMoeHpuYW1lLCAicjp4eiIpCisgICAgICAgICAgICB0ZXN0ZnVuYyh4em5hbWUsICJyfCoiKQorICAgICAgICAgICAgdGVzdGZ1bmMoeHpuYW1lLCAicnx4eiIpCisKICAgICBkZWYgdGVzdF9kZXRlY3RfZmlsZShzZWxmKToKICAgICAgICAgc2VsZi5fdGVzdF9tb2RlcyhzZWxmLl90ZXN0ZnVuY19maWxlKQogCkBAIC03MjAsNyArNzQzLDcgQEAKICAgICAgICAgIyBSZXR1cm4gVHJ1ZSBpZiB0aGUgcGxhdGZvcm0ga25vd3MgdGhlIHN0X2Jsb2NrcyBzdGF0IGF0dHJpYnV0ZSBhbmQKICAgICAgICAgIyB1c2VzIHN0X2Jsb2NrcyB1bml0cyBvZiA1MTIgYnl0ZXMsIGFuZCBpZiB0aGUgZmlsZXN5c3RlbSBpcyBhYmxlIHRvCiAgICAgICAgICMgc3RvcmUgaG9sZXMgaW4gZmlsZXMuCi0gICAgICAgIGlmIHN5cy5wbGF0Zm9ybSA9PSAibGludXgyIjoKKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoImxpbnV4Iik6CiAgICAgICAgICAgICAjIExpbnV4IGV2aWRlbnRpYWxseSBoYXMgNTEyIGJ5dGUgc3RfYmxvY2tzIHVuaXRzLgogICAgICAgICAgICAgbmFtZSA9IG9zLnBhdGguam9pbihURU1QRElSLCAic3BhcnNlLXRlc3QiKQogICAgICAgICAgICAgd2l0aCBvcGVuKG5hbWUsICJ3YiIpIGFzIGZvYmo6CkBAIC05MTAsNyArOTMzLDcgQEAKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgZm9yIG5hbWUgaW4gKCJmb28iLCAiYmFyIiwgImJheiIpOgogICAgICAgICAgICAgICAgIG5hbWUgPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgbmFtZSkKLSAgICAgICAgICAgICAgICBvcGVuKG5hbWUsICJ3YiIpLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKG5hbWUpCiAKICAgICAgICAgICAgIGV4Y2x1ZGUgPSBvcy5wYXRoLmlzZmlsZQogCkBAIC05MzcsNyArOTYwLDcgQEAKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgZm9yIG5hbWUgaW4gKCJmb28iLCAiYmFyIiwgImJheiIpOgogICAgICAgICAgICAgICAgIG5hbWUgPSBvcy5wYXRoLmpvaW4odGVtcGRpciwgbmFtZSkKLSAgICAgICAgICAgICAgICBvcGVuKG5hbWUsICJ3YiIpLmNsb3NlKCkKKyAgICAgICAgICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKG5hbWUpCiAKICAgICAgICAgICAgIGRlZiBmaWx0ZXIodGFyaW5mbyk6CiAgICAgICAgICAgICAgICAgaWYgb3MucGF0aC5iYXNlbmFtZSh0YXJpbmZvLm5hbWUpID09ICJiYXIiOgpAQCAtOTc2LDcgKzk5OSw3IEBACiAgICAgICAgICMgYW5kIGNvbXBhcmUgdGhlIHN0b3JlZCBuYW1lIHdpdGggdGhlIG9yaWdpbmFsLgogICAgICAgICBmb28gPSBvcy5wYXRoLmpvaW4oVEVNUERJUiwgImZvbyIpCiAgICAgICAgIGlmIG5vdCBkaXI6Ci0gICAgICAgICAgICBvcGVuKGZvbywgInciKS5jbG9zZSgpCisgICAgICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKGZvbykKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG9zLm1rZGlyKGZvbykKIApAQCAtMTA5Myw2ICsxMTE2LDkgQEAKICAgICAgICAgICAgIGRhdGEgPSBkZWMuZGVjb21wcmVzcyhkYXRhKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGxlbihkZWMudW51c2VkX2RhdGEpID09IDAsCiAgICAgICAgICAgICAgICAgICAgICJmb3VuZCB0cmFpbGluZyBkYXRhIikKKyAgICAgICAgZWxpZiBzZWxmLm1vZGUuZW5kc3dpdGgoInh6Iik6CisgICAgICAgICAgICB3aXRoIGx6bWEuTFpNQUZpbGUodG1wbmFtZSkgYXMgZm9iajoKKyAgICAgICAgICAgICAgICBkYXRhID0gZm9iai5yZWFkKCkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHdpdGggb3Blbih0bXBuYW1lLCAicmIiKSBhcyBmb2JqOgogICAgICAgICAgICAgICAgIGRhdGEgPSBmb2JqLnJlYWQoKQpAQCAtMTMzNiw3ICsxMzYyLDcgQEAKICAgICAgICAgc2VsZi5fdGVzdF91bmljb2RlX2ZpbGVuYW1lKCJ1dGY3IikKIAogICAgIGRlZiB0ZXN0X3V0ZjhfZmlsZW5hbWUoc2VsZik6Ci0gICAgICAgIHNlbGYuX3Rlc3RfdW5pY29kZV9maWxlbmFtZSgidXRmOCIpCisgICAgICAgIHNlbGYuX3Rlc3RfdW5pY29kZV9maWxlbmFtZSgidXRmLTgiKQogCiAgICAgZGVmIF90ZXN0X3VuaWNvZGVfZmlsZW5hbWUoc2VsZiwgZW5jb2RpbmcpOgogICAgICAgICB0YXIgPSB0YXJmaWxlLm9wZW4odG1wbmFtZSwgInciLCBmb3JtYXQ9c2VsZi5mb3JtYXQsIGVuY29kaW5nPWVuY29kaW5nLCBlcnJvcnM9InN0cmljdCIpCkBAIC0xNDE1LDcgKzE0NDEsNyBAQAogICAgIGRlZiB0ZXN0X2JhZF9wYXhfaGVhZGVyKHNlbGYpOgogICAgICAgICAjIFRlc3QgZm9yIGlzc3VlICM4NjMzLiBHTlUgdGFyIDw9IDEuMjMgY3JlYXRlcyByYXcgYmluYXJ5IGZpZWxkcwogICAgICAgICAjIHdpdGhvdXQgYSBoZHJjaGFyc2V0PUJJTkFSWSBoZWFkZXIuCi0gICAgICAgIGZvciBlbmNvZGluZywgbmFtZSBpbiAoKCJ1dGY4IiwgInBheC9iYWQtcGF4LVx1ZGNlNFx1ZGNmNlx1ZGNmYyIpLAorICAgICAgICBmb3IgZW5jb2RpbmcsIG5hbWUgaW4gKCgidXRmLTgiLCAicGF4L2JhZC1wYXgtXHVkY2U0XHVkY2Y2XHVkY2ZjIiksCiAgICAgICAgICAgICAgICAgKCJpc284ODU5LTEiLCAicGF4L2JhZC1wYXgtXHhlNFx4ZjZceGZjIiksKToKICAgICAgICAgICAgIHdpdGggdGFyZmlsZS5vcGVuKHRhcm5hbWUsIGVuY29kaW5nPWVuY29kaW5nLCBlcnJvcnM9InN1cnJvZ2F0ZWVzY2FwZSIpIGFzIHRhcjoKICAgICAgICAgICAgICAgICB0cnk6CkBAIC0xNDMwLDcgKzE0NTYsNyBAQAogCiAgICAgZGVmIHRlc3RfYmluYXJ5X2hlYWRlcihzZWxmKToKICAgICAgICAgIyBUZXN0IGEgUE9TSVguMS0yMDA4IGNvbXBhdGlibGUgaGVhZGVyIHdpdGggYSBoZHJjaGFyc2V0PUJJTkFSWSBmaWVsZC4KLSAgICAgICAgZm9yIGVuY29kaW5nLCBuYW1lIGluICgoInV0ZjgiLCAicGF4L2hkcmNoYXJzZXQtXHVkY2U0XHVkY2Y2XHVkY2ZjIiksCisgICAgICAgIGZvciBlbmNvZGluZywgbmFtZSBpbiAoKCJ1dGYtOCIsICJwYXgvaGRyY2hhcnNldC1cdWRjZTRcdWRjZjZcdWRjZmMiKSwKICAgICAgICAgICAgICAgICAoImlzbzg4NTktMSIsICJwYXgvaGRyY2hhcnNldC1ceGU0XHhmNlx4ZmMiKSwpOgogICAgICAgICAgICAgd2l0aCB0YXJmaWxlLm9wZW4odGFybmFtZSwgZW5jb2Rpbmc9ZW5jb2RpbmcsIGVycm9ycz0ic3Vycm9nYXRlZXNjYXBlIikgYXMgdGFyOgogICAgICAgICAgICAgICAgIHRyeToKQEAgLTE1MDcsNiArMTUzMywxMiBAQAogICAgICAgICBzZWxmLl9jcmVhdGVfdGVzdHRhcigidzpiejIiKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyh0YXJmaWxlLlJlYWRFcnJvciwgdGFyZmlsZS5vcGVuLCB0bXBuYW1lLCAiYSIpCiAKKyAgICBkZWYgdGVzdF9hcHBlbmRfbHptYShzZWxmKToKKyAgICAgICAgaWYgbHptYSBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgibHptYSBtb2R1bGUgbm90IGF2YWlsYWJsZSIpCisgICAgICAgIHNlbGYuX2NyZWF0ZV90ZXN0dGFyKCJ3Onh6IikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXModGFyZmlsZS5SZWFkRXJyb3IsIHRhcmZpbGUub3BlbiwgdG1wbmFtZSwgImEiKQorCiAgICAgIyBBcHBlbmQgbW9kZSBpcyBzdXBwb3NlZCB0byBmYWlsIGlmIHRoZSB0YXJmaWxlIHRvIGFwcGVuZCB0bwogICAgICMgZG9lcyBub3QgZW5kIHdpdGggYSB6ZXJvIGJsb2NrLgogICAgIGRlZiBfdGVzdF9lcnJvcihzZWxmLCBkYXRhKToKQEAgLTE3ODUsNiArMTgxNywyMSBAQAogICAgICAgICBzZWxmLl90ZXN0X3BhcnRpYWxfaW5wdXQoInI6YnoyIikKIAogCitjbGFzcyBMem1hTWlzY1JlYWRUZXN0KE1pc2NSZWFkVGVzdCk6CisgICAgdGFybmFtZSA9IHh6bmFtZQorICAgIG1vZGUgPSAicjp4eiIKK2NsYXNzIEx6bWFVc3RhclJlYWRUZXN0KFVzdGFyUmVhZFRlc3QpOgorICAgIHRhcm5hbWUgPSB4em5hbWUKKyAgICBtb2RlID0gInI6eHoiCitjbGFzcyBMem1hU3RyZWFtUmVhZFRlc3QoU3RyZWFtUmVhZFRlc3QpOgorICAgIHRhcm5hbWUgPSB4em5hbWUKKyAgICBtb2RlID0gInJ8eHoiCitjbGFzcyBMem1hV3JpdGVUZXN0KFdyaXRlVGVzdCk6CisgICAgbW9kZSA9ICJ3Onh6IgorY2xhc3MgTHptYVN0cmVhbVdyaXRlVGVzdChTdHJlYW1Xcml0ZVRlc3QpOgorICAgIG1vZGUgPSAid3x4eiIKKworCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC51bmxpbmsoVEVNUERJUikKICAgICBvcy5tYWtlZGlycyhURU1QRElSKQpAQCAtMTg0Nyw2ICsxODk0LDIwIEBACiAgICAgICAgICAgICBCejJQYXJ0aWFsUmVhZFRlc3QsCiAgICAgICAgIF0KIAorICAgIGlmIGx6bWE6CisgICAgICAgICMgQ3JlYXRlIHRlc3R0YXIudGFyLnh6IGFuZCBhZGQgbHptYS1zcGVjaWZpYyB0ZXN0cy4KKyAgICAgICAgc3VwcG9ydC51bmxpbmsoeHpuYW1lKQorICAgICAgICB3aXRoIGx6bWEuTFpNQUZpbGUoeHpuYW1lLCAidyIpIGFzIHRhcjoKKyAgICAgICAgICAgIHRhci53cml0ZShkYXRhKQorCisgICAgICAgIHRlc3RzICs9IFsKKyAgICAgICAgICAgIEx6bWFNaXNjUmVhZFRlc3QsCisgICAgICAgICAgICBMem1hVXN0YXJSZWFkVGVzdCwKKyAgICAgICAgICAgIEx6bWFTdHJlYW1SZWFkVGVzdCwKKyAgICAgICAgICAgIEx6bWFXcml0ZVRlc3QsCisgICAgICAgICAgICBMem1hU3RyZWFtV3JpdGVUZXN0LAorICAgICAgICBdCisKICAgICB0cnk6CiAgICAgICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KCp0ZXN0cykKICAgICBmaW5hbGx5OgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF90ZWxuZXRsaWIucHkgYi9MaWIvdGVzdC90ZXN0X3RlbG5ldGxpYi5weQppbmRleCA4NzQxOGY1Li5lNThjMTBmIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3RlbG5ldGxpYi5weQorKysgYi9MaWIvdGVzdC90ZXN0X3RlbG5ldGxpYi5weQpAQCAtMzUsNiArMzUsNyBAQAogCiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgogICAgICAgICBzZWxmLnRocmVhZC5qb2luKCkKKyAgICAgICAgZGVsIHNlbGYudGhyZWFkICAjIENsZWFyIG91dCBhbnkgZGFuZ2xpbmcgVGhyZWFkIG9iamVjdHMuCiAKICAgICBkZWYgdGVzdEJhc2ljKHNlbGYpOgogICAgICAgICAjIGNvbm5lY3RzCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3RlbXBmaWxlLnB5IGIvTGliL3Rlc3QvdGVzdF90ZW1wZmlsZS5weQppbmRleCA1MGNmM2I0Li44ZmUyOTg2IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3RlbXBmaWxlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdGVtcGZpbGUucHkKQEAgLTIxLDcgKzIxLDcgQEAKIAogIyBURVNUX0ZJTEVTIG1heSBuZWVkIHRvIGJlIHR3ZWFrZWQgZm9yIHN5c3RlbXMgZGVwZW5kaW5nIG9uIHRoZSBtYXhpbXVtCiAjIG51bWJlciBvZiBmaWxlcyB0aGF0IGNhbiBiZSBvcGVuZWQgYXQgb25lIHRpbWUgKHNlZSB1bGltaXQgLW4pCi1pZiBzeXMucGxhdGZvcm0gaW4gKCdvcGVuYnNkMycsICdvcGVuYnNkNCcpOgoraWYgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ29wZW5ic2QnKToKICAgICBURVNUX0ZJTEVTID0gNDgKIGVsc2U6CiAgICAgVEVTVF9GSUxFUyA9IDEwMApAQCAtODc4LDYgKzg3OCwyNyBAQAogICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgdXNlX2Nsb3NlZCkKIAorICAgIGRlZiB0ZXN0X3RydW5jYXRlX3dpdGhfc2l6ZV9wYXJhbWV0ZXIoc2VsZik6CisgICAgICAgICMgQSBTcG9vbGVkVGVtcG9yYXJ5RmlsZSBjYW4gYmUgdHJ1bmNhdGVkIHRvIHplcm8gc2l6ZQorICAgICAgICBmID0gdGVtcGZpbGUuU3Bvb2xlZFRlbXBvcmFyeUZpbGUobWF4X3NpemU9MTApCisgICAgICAgIGYud3JpdGUoYidhYmNkZWZnXG4nKQorICAgICAgICBmLnNlZWsoMCkKKyAgICAgICAgZi50cnVuY2F0ZSgpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZi5fcm9sbGVkKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGYuX2ZpbGUuZ2V0dmFsdWUoKSwgYicnKQorICAgICAgICAjIEEgU3Bvb2xlZFRlbXBvcmFyeUZpbGUgY2FuIGJlIHRydW5jYXRlZCB0byBhIHNwZWNpZmljIHNpemUKKyAgICAgICAgZiA9IHRlbXBmaWxlLlNwb29sZWRUZW1wb3JhcnlGaWxlKG1heF9zaXplPTEwKQorICAgICAgICBmLndyaXRlKGInYWJjZGVmZ1xuJykKKyAgICAgICAgZi50cnVuY2F0ZSg0KQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGYuX3JvbGxlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChmLl9maWxlLmdldHZhbHVlKCksIGInYWJjZCcpCisgICAgICAgICMgQSBTcG9vbGVkVGVtcG9yYXJ5RmlsZSByb2xscyBvdmVyIGlmIHRydW5jYXRlZCB0byBsYXJnZSBzaXplCisgICAgICAgIGYgPSB0ZW1wZmlsZS5TcG9vbGVkVGVtcG9yYXJ5RmlsZShtYXhfc2l6ZT0xMCkKKyAgICAgICAgZi53cml0ZShiJ2FiY2RlZmdcbicpCisgICAgICAgIGYudHJ1bmNhdGUoMjApCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShmLl9yb2xsZWQpCisgICAgICAgIGlmIGhhc19zdGF0OgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChvcy5mc3RhdChmLmZpbGVubygpKS5zdF9zaXplLCAyMCkKIAogdGVzdF9jbGFzc2VzLmFwcGVuZCh0ZXN0X1Nwb29sZWRUZW1wb3JhcnlGaWxlKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3RocmVhZGVkX2ltcG9ydC5weSBiL0xpYi90ZXN0L3Rlc3RfdGhyZWFkZWRfaW1wb3J0LnB5CmluZGV4IDc3OTE5MzUuLjc4OTkyMGIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdGhyZWFkZWRfaW1wb3J0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdGhyZWFkZWRfaW1wb3J0LnB5CkBAIC0xMSw4ICsxMSw4IEBACiBpbXBvcnQgdGltZQogaW1wb3J0IHNodXRpbAogaW1wb3J0IHVuaXR0ZXN0Ci1mcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgdmVyYm9zZSwgaW1wb3J0X21vZHVsZSwgcnVuX3VuaXR0ZXN0LCBURVNURk4KLXRocmVhZCA9IGltcG9ydF9tb2R1bGUoJ190aHJlYWQnKQorZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0ICgKKyAgICB2ZXJib3NlLCBpbXBvcnRfbW9kdWxlLCBydW5fdW5pdHRlc3QsIFRFU1RGTiwgcmVhcF90aHJlYWRzKQogdGhyZWFkaW5nID0gaW1wb3J0X21vZHVsZSgndGhyZWFkaW5nJykKIAogZGVmIHRhc2soTiwgZG9uZSwgZG9uZV90YXNrcywgZXJyb3JzKToKQEAgLTMwLDcgKzMwLDcgQEAKICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICAgICAgIGVycm9ycy5hcHBlbmQoZS53aXRoX3RyYWNlYmFjayhOb25lKSkKICAgICBmaW5hbGx5OgotICAgICAgICBkb25lX3Rhc2tzLmFwcGVuZCh0aHJlYWQuZ2V0X2lkZW50KCkpCisgICAgICAgIGRvbmVfdGFza3MuYXBwZW5kKHRocmVhZGluZy5nZXRfaWRlbnQoKSkKICAgICAgICAgZmluaXNoZWQgPSBsZW4oZG9uZV90YXNrcykgPT0gTgogICAgICAgICBpZiBmaW5pc2hlZDoKICAgICAgICAgICAgIGRvbmUuc2V0KCkKQEAgLTYyLDcgKzYyLDcgQEAKICAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAgICAgIHNlbGYubnVtY2FsbHMgPSAwCiAgICAgICAgIHNlbGYueCA9IDAKLSAgICAgICAgc2VsZi5sb2NrID0gdGhyZWFkLmFsbG9jYXRlX2xvY2soKQorICAgICAgICBzZWxmLmxvY2sgPSB0aHJlYWRpbmcuTG9jaygpCiAKICAgICBkZWYgZmluZF9tb2R1bGUoc2VsZiwgbmFtZSwgcGF0aD1Ob25lKToKICAgICAgICAgIyBTaW11bGF0ZSBzb21lIHRocmVhZC11bnNhZmUgYmVoYXZpb3VyLiBJZiBjYWxscyB0byBmaW5kX21vZHVsZSgpCkBAIC0xMTMsNyArMTEzLDkgQEAKICAgICAgICAgICAgIGRvbmVfdGFza3MgPSBbXQogICAgICAgICAgICAgZG9uZS5jbGVhcigpCiAgICAgICAgICAgICBmb3IgaSBpbiByYW5nZShOKToKLSAgICAgICAgICAgICAgICB0aHJlYWQuc3RhcnRfbmV3X3RocmVhZCh0YXNrLCAoTiwgZG9uZSwgZG9uZV90YXNrcywgZXJyb3JzLCkpCisgICAgICAgICAgICAgICAgdCA9IHRocmVhZGluZy5UaHJlYWQodGFyZ2V0PXRhc2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncz0oTiwgZG9uZSwgZG9uZV90YXNrcywgZXJyb3JzLCkpCisgICAgICAgICAgICAgICAgdC5zdGFydCgpCiAgICAgICAgICAgICBkb25lLndhaXQoNjApCiAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGVycm9ycykKICAgICAgICAgICAgIGlmIHZlcmJvc2U6CkBAIC0yMDMsNiArMjA1LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZXQocmVzdWx0cyksIHsnYScsICdiJ30pCiAKIAorQHJlYXBfdGhyZWFkcwogZGVmIHRlc3RfbWFpbigpOgogICAgIHJ1bl91bml0dGVzdChUaHJlYWRlZEltcG9ydFRlc3RzKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3RocmVhZGluZy5weSBiL0xpYi90ZXN0L3Rlc3RfdGhyZWFkaW5nLnB5CmluZGV4IGUzZGUxNmQuLjc3YzRjYTQgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdGhyZWFkaW5nLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdGhyZWFkaW5nLnB5CkBAIC0xNzMsNyArMTczLDcgQEAKICAgICAgICAgZXhjZXB0aW9uID0gY3R5cGVzLnB5X29iamVjdChBc3luY0V4YykKIAogICAgICAgICAjIEZpcnN0IGNoZWNrIGl0IHdvcmtzIHdoZW4gc2V0dGluZyB0aGUgZXhjZXB0aW9uIGZyb20gdGhlIHNhbWUgdGhyZWFkLgotICAgICAgICB0aWQgPSBfdGhyZWFkLmdldF9pZGVudCgpCisgICAgICAgIHRpZCA9IHRocmVhZGluZy5nZXRfaWRlbnQoKQogCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHJlc3VsdCA9IHNldF9hc3luY19leGMoY3R5cGVzLmNfbG9uZyh0aWQpLCBleGNlcHRpb24pCkBAIC0yMDIsNyArMjAyLDcgQEAKIAogICAgICAgICBjbGFzcyBXb3JrZXIodGhyZWFkaW5nLlRocmVhZCk6CiAgICAgICAgICAgICBkZWYgcnVuKHNlbGYpOgotICAgICAgICAgICAgICAgIHNlbGYuaWQgPSBfdGhyZWFkLmdldF9pZGVudCgpCisgICAgICAgICAgICAgICAgc2VsZi5pZCA9IHRocmVhZGluZy5nZXRfaWRlbnQoKQogICAgICAgICAgICAgICAgIHNlbGYuZmluaXNoZWQgPSBGYWxzZQogCiAgICAgICAgICAgICAgICAgdHJ5OgpAQCAtNDA3LDYgKzQwNywxNCBAQAogICAgICAgICB0LmRhZW1vbiA9IFRydWUKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKCdkYWVtb24nIGluIHJlcHIodCkpCiAKKyAgICBkZWYgdGVzdF9kZWFtb25fcGFyYW0oc2VsZik6CisgICAgICAgIHQgPSB0aHJlYWRpbmcuVGhyZWFkKCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZSh0LmRhZW1vbikKKyAgICAgICAgdCA9IHRocmVhZGluZy5UaHJlYWQoZGFlbW9uPUZhbHNlKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKHQuZGFlbW9uKQorICAgICAgICB0ID0gdGhyZWFkaW5nLlRocmVhZChkYWVtb249VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHQuZGFlbW9uKQorCiAKIGNsYXNzIFRocmVhZEpvaW5PblNodXRkb3duKEJhc2VUZXN0Q2FzZSk6CiAKQEAgLTcxMSw2ICs3MTksMTAgQEAKICAgICAgICAgdGhyZWFkLnN0YXJ0KCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBzZXRhdHRyLCB0aHJlYWQsICJkYWVtb24iLCBUcnVlKQogCisgICAgZGVmIHRlc3RfcmVsZWFzaW5nX3VuYWNxdWlyZWRfbG9jayhzZWxmKToKKyAgICAgICAgbG9jayA9IHRocmVhZGluZy5Mb2NrKCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoUnVudGltZUVycm9yLCBsb2NrLnJlbGVhc2UpCisKICAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhzeXMucGxhdGZvcm0gPT0gJ2RhcndpbicsICd0ZXN0IG1hY29zeCBwcm9ibGVtJykKICAgICBkZWYgdGVzdF9yZWN1cnNpb25fbGltaXQoc2VsZik6CiAgICAgICAgICMgSXNzdWUgOTY3MApAQCAtNzcyLDYgKzc4NCw3IEBACiBjbGFzcyBCYXJyaWVyVGVzdHMobG9ja190ZXN0cy5CYXJyaWVyVGVzdHMpOgogICAgIGJhcnJpZXJ0eXBlID0gc3RhdGljbWV0aG9kKHRocmVhZGluZy5CYXJyaWVyKQogCisKIGRlZiB0ZXN0X21haW4oKToKICAgICB0ZXN0LnN1cHBvcnQucnVuX3VuaXR0ZXN0KExvY2tUZXN0cywgUHlSTG9ja1Rlc3RzLCBDUkxvY2tUZXN0cywgRXZlbnRUZXN0cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbmRpdGlvbkFzUkxvY2tUZXN0cywgQ29uZGl0aW9uVGVzdHMsCkBAIC03NzksNyArNzkyLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRocmVhZFRlc3RzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGhyZWFkSm9pbk9uU2h1dGRvd24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaHJlYWRpbmdFeGNlcHRpb25UZXN0cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJhcnJpZXJUZXN0cworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFycmllclRlc3RzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogCiBpZiBfX25hbWVfXyA9PSAiX19tYWluX18iOgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF90aHJlYWRzaWduYWxzLnB5IGIvTGliL3Rlc3QvdGVzdF90aHJlYWRzaWduYWxzLnB5CmluZGV4IGUwYWYzMWQuLmY5NzVhNzUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdGhyZWFkc2lnbmFscy5weQorKysgYi9MaWIvdGVzdC90ZXN0X3RocmVhZHNpZ25hbHMucHkKQEAgLTE0LDEwICsxNCw4IEBACiBwcm9jZXNzX3BpZCA9IG9zLmdldHBpZCgpCiBzaWduYWxsZWRfYWxsPXRocmVhZC5hbGxvY2F0ZV9sb2NrKCkKIAotIyBJc3N1ZSAjMTEyMjM6IExvY2tzIGFyZSBpbXBsZW1lbnRlZCB1c2luZyBhIG11dGV4IGFuZCBhIGNvbmRpdGlvbiB2YXJpYWJsZSBvZgotIyB0aGUgcHRocmVhZCBsaWJyYXJ5IG9uIEZyZWVCU0Q2LiBQT1NJWCBjb25kaXRpb24gdmFyaWFibGVzIGNhbm5vdCBiZQotIyBpbnRlcnJ1cHRlZCBieSBzaWduYWxzIChzZWUgcHRocmVhZF9jb25kX3dhaXQgbWFudWFsIHBhZ2UpLgotVVNJTkdfUFRIUkVBRF9DT05EID0gKHN5cy5wbGF0Zm9ybSA9PSAnZnJlZWJzZDYnKQorVVNJTkdfUFRIUkVBRF9DT05EID0gKHN5cy50aHJlYWRfaW5mby5uYW1lID09ICdwdGhyZWFkJworICAgICAgICAgICAgICAgICAgICAgIGFuZCBzeXMudGhyZWFkX2luZm8ubG9jayA9PSAnbXV0ZXgrY29uZCcpCiAKIGRlZiByZWdpc3RlclNpZ25hbHMoZm9yX3VzcjEsIGZvcl91c3IyLCBmb3JfYWxybSk6CiAgICAgdXNyMSA9IHNpZ25hbC5zaWduYWwoc2lnbmFsLlNJR1VTUjEsIGZvcl91c3IxKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF90aW1lLnB5IGIvTGliL3Rlc3QvdGVzdF90aW1lLnB5CmluZGV4IGNlNTdkODcuLmYyOTkyNjYgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdGltZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X3RpbWUucHkKQEAgLTQsNyArNCwxMyBAQAogaW1wb3J0IGxvY2FsZQogaW1wb3J0IHN5c2NvbmZpZwogaW1wb3J0IHN5cwotaW1wb3J0IHdhcm5pbmdzCitpbXBvcnQgcGxhdGZvcm0KKworIyBNYXggeWVhciBpcyBvbmx5IGxpbWl0ZWQgYnkgdGhlIHNpemUgb2YgQyBpbnQuCitTSVpFT0ZfSU5UID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdTSVpFT0ZfSU5UJykgb3IgNAorVElNRV9NQVhZRUFSID0gKDEgPDwgOCAqIFNJWkVPRl9JTlQgLSAxKSAtIDEKK1RJTUVfTUlOWUVBUiA9IC1USU1FX01BWFlFQVIgLSAxCisKIAogY2xhc3MgVGltZVRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKIApAQCAtMjAsNiArMjYsMjcgQEAKICAgICBkZWYgdGVzdF9jbG9jayhzZWxmKToKICAgICAgICAgdGltZS5jbG9jaygpCiAKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHRpbWUsICdjbG9ja19nZXR0aW1lJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgdGltZS5jbG9ja19nZXR0aW1lKCknKQorICAgIGRlZiB0ZXN0X2Nsb2NrX3JlYWx0aW1lKHNlbGYpOgorICAgICAgICB0aW1lLmNsb2NrX2dldHRpbWUodGltZS5DTE9DS19SRUFMVElNRSkKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIodGltZSwgJ2Nsb2NrX2dldHRpbWUnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnbmVlZCB0aW1lLmNsb2NrX2dldHRpbWUoKScpCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3MoaGFzYXR0cih0aW1lLCAnQ0xPQ0tfTU9OT1RPTklDJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJ25lZWQgdGltZS5DTE9DS19NT05PVE9OSUMnKQorICAgIGRlZiB0ZXN0X2Nsb2NrX21vbm90b25pYyhzZWxmKToKKyAgICAgICAgYSA9IHRpbWUuY2xvY2tfZ2V0dGltZSh0aW1lLkNMT0NLX01PTk9UT05JQykKKyAgICAgICAgYiA9IHRpbWUuY2xvY2tfZ2V0dGltZSh0aW1lLkNMT0NLX01PTk9UT05JQykKKyAgICAgICAgc2VsZi5hc3NlcnRMZXNzRXF1YWwoYSwgYikKKworICAgIEB1bml0dGVzdC5za2lwVW5sZXNzKGhhc2F0dHIodGltZSwgJ2Nsb2NrX2dldHJlcycpLAorICAgICAgICAgICAgICAgICAgICAgICAgICduZWVkIHRpbWUuY2xvY2tfZ2V0cmVzKCknKQorICAgIGRlZiB0ZXN0X2Nsb2NrX2dldHJlcyhzZWxmKToKKyAgICAgICAgcmVzID0gdGltZS5jbG9ja19nZXRyZXModGltZS5DTE9DS19SRUFMVElNRSkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKHJlcywgMC4wKQorICAgICAgICBzZWxmLmFzc2VydExlc3NFcXVhbChyZXMsIDEuMCkKKwogICAgIGRlZiB0ZXN0X2NvbnZlcnNpb25zKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRpbWUuY3RpbWUoc2VsZi50KSwKICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lLmFzY3RpbWUodGltZS5sb2NhbHRpbWUoc2VsZi50KSkpCkBAIC0yNyw2ICs1NCw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgaW50KHNlbGYudCkpCiAKICAgICBkZWYgdGVzdF9zbGVlcChzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgdGltZS5zbGVlcCwgLTIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHRpbWUuc2xlZXAsIC0xKQogICAgICAgICB0aW1lLnNsZWVwKDEuMikKIAogICAgIGRlZiB0ZXN0X3N0cmZ0aW1lKHNlbGYpOgpAQCAtNDcsMjggKzc2LDM0IEBACiAgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IpOgogICAgICAgICAgICAgICAgIHRpbWUuc3RyZnRpbWUoJyVmJykKIAotICAgIGRlZiBfYm91bmRzX2NoZWNraW5nKHNlbGYsIGZ1bmM9dGltZS5zdHJmdGltZSk6CisgICAgZGVmIF9ib3VuZHNfY2hlY2tpbmcoc2VsZiwgZnVuYyk6CiAgICAgICAgICMgTWFrZSBzdXJlIHRoYXQgc3RyZnRpbWUoKSBjaGVja3MgdGhlIGJvdW5kcyBvZiB0aGUgdmFyaW91cyBwYXJ0cwotICAgICAgICAjb2YgdGhlIHRpbWUgdHVwbGUgKDAgaXMgdmFsaWQgZm9yICphbGwqIHZhbHVlcykuCisgICAgICAgICMgb2YgdGhlIHRpbWUgdHVwbGUgKDAgaXMgdmFsaWQgZm9yICphbGwqIHZhbHVlcykuCiAKICAgICAgICAgIyBUaGUgeWVhciBmaWVsZCBpcyB0ZXN0ZWQgYnkgb3RoZXIgdGVzdCBjYXNlcyBhYm92ZQogCiAgICAgICAgICMgQ2hlY2sgbW9udGggWzEsIDEyXSArIHplcm8gc3VwcG9ydAorICAgICAgICBmdW5jKCgxOTAwLCAwLCAxLCAwLCAwLCAwLCAwLCAxLCAtMSkpCisgICAgICAgIGZ1bmMoKDE5MDAsIDEyLCAxLCAwLCAwLCAwLCAwLCAxLCAtMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ1bmMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE5MDAsIC0xLCAxLCAwLCAwLCAwLCAwLCAxLCAtMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ1bmMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE5MDAsIDEzLCAxLCAwLCAwLCAwLCAwLCAxLCAtMSkpCiAgICAgICAgICMgQ2hlY2sgZGF5IG9mIG1vbnRoIFsxLCAzMV0gKyB6ZXJvIHN1cHBvcnQKKyAgICAgICAgZnVuYygoMTkwMCwgMSwgMCwgMCwgMCwgMCwgMCwgMSwgLTEpKQorICAgICAgICBmdW5jKCgxOTAwLCAxLCAzMSwgMCwgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAtMSwgMCwgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAzMiwgMCwgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICAjIENoZWNrIGhvdXIgWzAsIDIzXQorICAgICAgICBmdW5jKCgxOTAwLCAxLCAxLCAyMywgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAxLCAtMSwgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAxLCAyNCwgMCwgMCwgMCwgMSwgLTEpKQogICAgICAgICAjIENoZWNrIG1pbnV0ZSBbMCwgNTldCisgICAgICAgIGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDU5LCAwLCAwLCAxLCAtMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ1bmMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE5MDAsIDEsIDEsIDAsIC0xLCAwLCAwLCAxLCAtMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ1bmMsCkBAIC03OCwxNSArMTEzLDIxIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE5MDAsIDEsIDEsIDAsIDAsIC0xLCAwLCAxLCAtMSkpCiAgICAgICAgICMgQzk5IG9ubHkgcmVxdWlyZXMgYWxsb3dpbmcgZm9yIG9uZSBsZWFwIHNlY29uZCwgYnV0IFB5dGhvbidzIGRvY3Mgc2F5CiAgICAgICAgICMgYWxsb3cgdHdvIGxlYXAgc2Vjb25kcyAoMC4uNjEpCisgICAgICAgIGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDAsIDYwLCAwLCAxLCAtMSkpCisgICAgICAgIGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDAsIDYxLCAwLCAxLCAtMSkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIGZ1bmMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDE5MDAsIDEsIDEsIDAsIDAsIDYyLCAwLCAxLCAtMSkpCiAgICAgICAgICMgTm8gY2hlY2sgZm9yIHVwcGVyLWJvdW5kIGRheSBvZiB3ZWVrOwogICAgICAgICAjICB2YWx1ZSBmb3JjZWQgaW50byByYW5nZSBieSBhIGBgJSA3YGAgY2FsY3VsYXRpb24uCiAgICAgICAgICMgU3RhcnQgY2hlY2sgYXQgLTIgc2luY2UgZ2V0dG1hcmcoKSBpbmNyZW1lbnRzIHZhbHVlIGJlZm9yZSB0YWtpbmcKICAgICAgICAgIyAgbW9kdWxvLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDAsIDAsIC0xLCAxLCAtMSkpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDAsIDAsICs2LCAxLCAtMSkpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAxLCAwLCAwLCAwLCAtMiwgMSwgLTEpKQogICAgICAgICAjIENoZWNrIGRheSBvZiB0aGUgeWVhciBbMSwgMzY2XSArIHplcm8gc3VwcG9ydAorICAgICAgICBmdW5jKCgxOTAwLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAtMSkpCisgICAgICAgIGZ1bmMoKDE5MDAsIDEsIDEsIDAsIDAsIDAsIDAsIDM2NiwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICgxOTAwLCAxLCAxLCAwLCAwLCAwLCAwLCAtMSwgLTEpKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBmdW5jLApAQCAtOTYsMTIgKzEzNywxMyBAQAogICAgICAgICBzZWxmLl9ib3VuZHNfY2hlY2tpbmcobGFtYmRhIHR1cDogdGltZS5zdHJmdGltZSgnJywgdHVwKSkKIAogICAgIGRlZiB0ZXN0X2RlZmF1bHRfdmFsdWVzX2Zvcl96ZXJvKHNlbGYpOgotICAgICAgICAjIE1ha2Ugc3VyZSB0aGF0IHVzaW5nIGFsbCB6ZXJvcyB1c2VzIHRoZSBwcm9wZXIgZGVmYXVsdCB2YWx1ZXMuCi0gICAgICAgICMgTm8gdGVzdCBmb3IgZGF5bGlnaHQgc2F2aW5ncyBzaW5jZSBzdHJmdGltZSgpIGRvZXMgbm90IGNoYW5nZSBvdXRwdXQKLSAgICAgICAgIyBiYXNlZCBvbiBpdHMgdmFsdWUuCisgICAgICAgICMgTWFrZSBzdXJlIHRoYXQgdXNpbmcgYWxsIHplcm9zIHVzZXMgdGhlIHByb3BlciBkZWZhdWx0CisgICAgICAgICMgdmFsdWVzLiAgTm8gdGVzdCBmb3IgZGF5bGlnaHQgc2F2aW5ncyBzaW5jZSBzdHJmdGltZSgpIGRvZXMKKyAgICAgICAgIyBub3QgY2hhbmdlIG91dHB1dCBiYXNlZCBvbiBpdHMgdmFsdWUgYW5kIG5vIHRlc3QgZm9yIHllYXIKKyAgICAgICAgIyBiZWNhdXNlIHN5c3RlbXMgdmFyeSBpbiB0aGVpciBzdXBwb3J0IGZvciB5ZWFyIDAuCiAgICAgICAgIGV4cGVjdGVkID0gIjIwMDAgMDEgMDEgMDAgMDAgMDAgMSAwMDEiCiAgICAgICAgIHdpdGggc3VwcG9ydC5jaGVja193YXJuaW5ncygpOgotICAgICAgICAgICAgcmVzdWx0ID0gdGltZS5zdHJmdGltZSgiJVkgJW0gJWQgJUggJU0gJVMgJXcgJWoiLCAoMCwpKjkpCisgICAgICAgICAgICByZXN1bHQgPSB0aW1lLnN0cmZ0aW1lKCIlWSAlbSAlZCAlSCAlTSAlUyAldyAlaiIsICgyMDAwLCkrKDAsKSo4KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGV4cGVjdGVkLCByZXN1bHQpCiAKICAgICBkZWYgdGVzdF9zdHJwdGltZShzZWxmKToKQEAgLTEyOCwxMSArMTcwLDEzIEBACiAgICAgICAgIHRpbWUuYXNjdGltZSh0aW1lLmdtdGltZShzZWxmLnQpKQogCiAgICAgICAgICMgTWF4IHllYXIgaXMgb25seSBsaW1pdGVkIGJ5IHRoZSBzaXplIG9mIEMgaW50LgotICAgICAgICBzaXplb2ZfaW50ID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdTSVpFT0ZfSU5UJykgb3IgNAotICAgICAgICBiaWd5ZWFyID0gKDEgPDwgOCAqIHNpemVvZl9pbnQgLSAxKSAtIDEKLSAgICAgICAgYXNjID0gdGltZS5hc2N0aW1lKChiaWd5ZWFyLCA2LCAxKSArICgwLCkqNikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChhc2NbLWxlbihzdHIoYmlneWVhcikpOl0sIHN0cihiaWd5ZWFyKSkKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgdGltZS5hc2N0aW1lLCAoYmlneWVhciArIDEsKSArICgwLCkqOCkKKyAgICAgICAgZm9yIGJpZ3llYXIgaW4gVElNRV9NQVhZRUFSLCBUSU1FX01JTllFQVI6CisgICAgICAgICAgICBhc2MgPSB0aW1lLmFzY3RpbWUoKGJpZ3llYXIsIDYsIDEpICsgKDAsKSAqIDYpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGFzY1stbGVuKHN0cihiaWd5ZWFyKSk6XSwgc3RyKGJpZ3llYXIpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCB0aW1lLmFzY3RpbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIChUSU1FX01BWFlFQVIgKyAxLCkgKyAoMCwpICogOCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgdGltZS5hc2N0aW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAoVElNRV9NSU5ZRUFSIC0gMSwpICsgKDAsKSAqIDgpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdGltZS5hc2N0aW1lLCAwKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHRpbWUuYXNjdGltZSwgKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdGltZS5hc2N0aW1lLCAoMCwpICogMTApCkBAIC0xNTUsOCArMTk5LDggQEAKICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0aW1lLmN0aW1lKHRlc3R2YWwpWzIwOl0sIHN0cih5ZWFyKSkKIAotICAgIEB1bml0dGVzdC5za2lwSWYobm90IGhhc2F0dHIodGltZSwgInR6c2V0IiksCi0gICAgICAgICJ0aW1lIG1vZHVsZSBoYXMgbm8gYXR0cmlidXRlIHR6c2V0IikKKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhoYXNhdHRyKHRpbWUsICJ0enNldCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJ0aW1lIG1vZHVsZSBoYXMgbm8gYXR0cmlidXRlIHR6c2V0IikKICAgICBkZWYgdGVzdF90enNldChzZWxmKToKIAogICAgICAgICBmcm9tIG9zIGltcG9ydCBlbnZpcm9uCkBAIC0yMDgsMTEgKzI1MiwxMyBAQAogICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbCh0aW1lLmdtdGltZSh4bWFzMjAwMiksIHRpbWUubG9jYWx0aW1lKHhtYXMyMDAyKSkKIAogICAgICAgICAgICAgIyBJc3N1ZSAjMTE4ODY6IEF1c3RyYWxpYW4gRWFzdGVybiBTdGFuZGFyZCBUaW1lIChVVEMrMTApIGlzIGNhbGxlZAotICAgICAgICAgICAgIyAiRVNUIiAoYXMgRWFzdGVybiBTdGFuZGFyZCBUaW1lLCBVVEMtNSkgaW5zdGVhZCBvZiAiQUVTVCIgb24gc29tZQotICAgICAgICAgICAgIyBvcGVyYXRpbmcgc3lzdGVtcyAoZS5nLiBGcmVlQlNEKSwgd2hpY2ggaXMgd3JvbmcuIFNlZSBmb3IgZXhhbXBsZQotICAgICAgICAgICAgIyB0aGlzIGJ1ZzogaHR0cDovL2J1Z3MuZGViaWFuLm9yZy9jZ2ktYmluL2J1Z3JlcG9ydC5jZ2k/YnVnPTkzODEwCisgICAgICAgICAgICAjICJFU1QiIChhcyBFYXN0ZXJuIFN0YW5kYXJkIFRpbWUsIFVUQy01KSBpbnN0ZWFkIG9mICJBRVNUIgorICAgICAgICAgICAgIyAobm9uLURTVCB0aW1lem9uZSksIGFuZCAiRURUIiBpbnN0ZWFkIG9mICJBRURUIiAoRFNUIHRpbWV6b25lKSwKKyAgICAgICAgICAgICMgb24gc29tZSBvcGVyYXRpbmcgc3lzdGVtcyAoZS5nLiBGcmVlQlNEKSwgd2hpY2ggaXMgd3JvbmcuIFNlZSBmb3IKKyAgICAgICAgICAgICMgZXhhbXBsZSB0aGlzIGJ1ZzoKKyAgICAgICAgICAgICMgaHR0cDovL2J1Z3MuZGViaWFuLm9yZy9jZ2ktYmluL2J1Z3JlcG9ydC5jZ2k/YnVnPTkzODEwCiAgICAgICAgICAgICBzZWxmLmFzc2VydEluKHRpbWUudHpuYW1lWzBdLCAoJ0FFU1QnICdFU1QnKSwgdGltZS50em5hbWVbMF0pCi0gICAgICAgICAgICBzZWxmLmFzc2VydFRydWUodGltZS50em5hbWVbMV0gPT0gJ0FFRFQnLCBzdHIodGltZS50em5hbWVbMV0pKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHRpbWUudHpuYW1lWzFdIGluICgnQUVEVCcsICdFRFQnKSwgc3RyKHRpbWUudHpuYW1lWzFdKSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKHRpbWUudHpuYW1lKSwgMikKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGltZS5kYXlsaWdodCwgMSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGltZS50aW1lem9uZSwgLTM2MDAwKQpAQCAtMjU4LDYgKzMwNCw2NSBAQAogICAgICAgICB0MSA9IHRpbWUubWt0aW1lKGx0MSkKICAgICAgICAgc2VsZi5hc3NlcnRBbG1vc3RFcXVhbCh0MSwgdDAsIGRlbHRhPTAuMikKIAorICAgIGRlZiB0ZXN0X21rdGltZShzZWxmKToKKyAgICAgICAgIyBJc3N1ZSAjMTcyNjY4NworICAgICAgICBmb3IgdCBpbiAoLTIsIC0xLCAwLCAxKToKKyAgICAgICAgICAgIHRyeToKKyAgICAgICAgICAgICAgICB0dCA9IHRpbWUubG9jYWx0aW1lKHQpCisgICAgICAgICAgICBleGNlcHQgKE92ZXJmbG93RXJyb3IsIE9TRXJyb3IpOgorICAgICAgICAgICAgICAgIHBhc3MKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0aW1lLm1rdGltZSh0dCksIHQpCisKKyAgICAjIElzc3VlICMxMzMwOTogcGFzc2luZyBleHRyZW1lIHZhbHVlcyB0byBta3RpbWUoKSBvciBsb2NhbHRpbWUoKQorICAgICMgYm9ya3MgdGhlIGdsaWJjJ3MgaW50ZXJuYWwgdGltZXpvbmUgZGF0YS4KKyAgICBAdW5pdHRlc3Quc2tpcFVubGVzcyhwbGF0Zm9ybS5saWJjX3ZlcigpWzBdICE9ICdnbGliYycsCisgICAgICAgICAgICAgICAgICAgICAgICAgImRpc2FibGVkIGJlY2F1c2Ugb2YgYSBidWcgaW4gZ2xpYmMuIElzc3VlICMxMzMwOSIpCisgICAgZGVmIHRlc3RfbWt0aW1lX2Vycm9yKHNlbGYpOgorICAgICAgICAjIEl0IG1heSBub3QgYmUgcG9zc2libGUgdG8gcmVsaWFibHkgbWFrZSBta3RpbWUgcmV0dXJuIGVycm9yCisgICAgICAgICMgb24gYWxsIHBsYXRmb20uICBUaGlzIHdpbGwgbWFrZSBzdXJlIHRoYXQgbm8gb3RoZXIgZXhjZXB0aW9uCisgICAgICAgICMgdGhhbiBPdmVyZmxvd0Vycm9yIGlzIHJhaXNlZCBmb3IgYW4gZXh0cmVtZSB2YWx1ZS4KKyAgICAgICAgdHQgPSB0aW1lLmdtdGltZShzZWxmLnQpCisgICAgICAgIHR6bmFtZSA9IHRpbWUuc3RyZnRpbWUoJyVaJywgdHQpCisgICAgICAgIHNlbGYuYXNzZXJ0Tm90RXF1YWwodHpuYW1lLCAnTE1UJykKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgdGltZS5ta3RpbWUoKC0xLCAxLCAxLCAwLCAwLCAwLCAtMSwgLTEsIC0xKSkKKyAgICAgICAgZXhjZXB0IE92ZXJmbG93RXJyb3I6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGltZS5zdHJmdGltZSgnJVonLCB0dCksIHR6bmFtZSkKKworICAgIGRlZiB0ZXN0X3dhbGxjbG9jayhzZWxmKToKKyAgICAgICAgdDEgPSB0aW1lLndhbGxjbG9jaygpCisgICAgICAgIHQyID0gdGltZS53YWxsY2xvY2soKQorICAgICAgICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbCh0MiwgdDEpCisKKyAgICAgICAgdDEgPSB0aW1lLndhbGxjbG9jaygpCisgICAgICAgIHRpbWUuc2xlZXAoMC4xKQorICAgICAgICB0MiA9IHRpbWUud2FsbGNsb2NrKCkKKyAgICAgICAgc2VsZi5hc3NlcnRHcmVhdGVyKHQyLCB0MSkKKyAgICAgICAgZHQgPSB0MiAtIHQxCisgICAgICAgIHNlbGYuYXNzZXJ0QWxtb3N0RXF1YWwoZHQsIDAuMSwgZGVsdGE9MC4yKQorCisgICAgZGVmIHRlc3RfbG9jYWx0aW1lX2ZhaWx1cmUoc2VsZik6CisgICAgICAgICMgSXNzdWUgIzEzODQ3OiBjaGVjayBmb3IgbG9jYWx0aW1lKCkgZmFpbHVyZQorICAgICAgICBpbnZhbGlkX3RpbWVfdCA9IE5vbmUKKyAgICAgICAgZm9yIHRpbWVfdCBpbiAoLTEsIDIqKjMwLCAyKiozMywgMioqNjApOgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIHRpbWUubG9jYWx0aW1lKHRpbWVfdCkKKyAgICAgICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yIGFzIGVycjoKKyAgICAgICAgICAgICAgICBpZiBzdHIoZXJyKSA9PSAidGltZXN0YW1wIG91dCBvZiByYW5nZSBmb3IgcGxhdGZvcm0gdGltZV90IjoKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgibmVlZCA2NC1iaXQgdGltZV90IikKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICByYWlzZQorICAgICAgICAgICAgZXhjZXB0IE9TRXJyb3I6CisgICAgICAgICAgICAgICAgaW52YWxpZF90aW1lX3QgPSB0aW1lX3QKKyAgICAgICAgICAgICAgICBicmVhaworICAgICAgICBpZiBpbnZhbGlkX3RpbWVfdCBpcyBOb25lOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgidW5hYmxlIHRvIGZpbmQgYW4gaW52YWxpZCB0aW1lX3QgdmFsdWUiKQorCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKE9TRXJyb3IsIHRpbWUubG9jYWx0aW1lLCBpbnZhbGlkX3RpbWVfdCkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT1NFcnJvciwgdGltZS5jdGltZSwgaW52YWxpZF90aW1lX3QpCisKIGNsYXNzIFRlc3RMb2NhbGUodW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgc2VsZi5vbGRsb2MgPSBsb2NhbGUuc2V0bG9jYWxlKGxvY2FsZS5MQ19BTEwpCkBAIC0yNzYsMTkgKzM4MSwxMiBAQAogCiAKIGNsYXNzIF9CYXNlWWVhclRlc3QodW5pdHRlc3QuVGVzdENhc2UpOgotICAgIGFjY2VwdDJkeWVhciA9IE5vbmUKLQotICAgIGRlZiBzZXRVcChzZWxmKToKLSAgICAgICAgc2VsZi5zYXZlZF9hY2NlcHQyZHllYXIgPSB0aW1lLmFjY2VwdDJkeWVhcgotICAgICAgICB0aW1lLmFjY2VwdDJkeWVhciA9IHNlbGYuYWNjZXB0MmR5ZWFyCi0KLSAgICBkZWYgdGVhckRvd24oc2VsZik6Ci0gICAgICAgIHRpbWUuYWNjZXB0MmR5ZWFyID0gc2VsZi5zYXZlZF9hY2NlcHQyZHllYXIKLQogICAgIGRlZiB5ZWFyc3RyKHNlbGYsIHkpOgogICAgICAgICByYWlzZSBOb3RJbXBsZW1lbnRlZEVycm9yKCkKIAogY2xhc3MgX1Rlc3RBc2N0aW1lWWVhcjoKKyAgICBfZm9ybWF0ID0gJyVkJworCiAgICAgZGVmIHllYXJzdHIoc2VsZiwgeSk6CiAgICAgICAgIHJldHVybiB0aW1lLmFzY3RpbWUoKHksKSArICgwLCkgKiA4KS5zcGxpdCgpWy0xXQogCkBAIC0yOTgsMTE0ICszOTYsOTcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoMTIzNDU2Nzg5KSwgJzEyMzQ1Njc4OScpCiAKIGNsYXNzIF9UZXN0U3RyZnRpbWVZZWFyOgotICAgIGRlZiB5ZWFyc3RyKHNlbGYsIHkpOgotICAgICAgICByZXR1cm4gdGltZS5zdHJmdGltZSgnJVknLCAoeSwpICsgKDAsKSAqIDgpLnNwbGl0KClbLTFdCiAKLSAgICBkZWYgdGVzdF9sYXJnZV95ZWFyKHNlbGYpOgorICAgICMgSXNzdWUgMTMzMDU6ICBGb3IgeWVhcnMgPCAxMDAwLCB0aGUgdmFsdWUgaXMgbm90IGFsd2F5cworICAgICMgcGFkZGVkIHRvIDQgZGlnaXRzIGFjcm9zcyBwbGF0Zm9ybXMuICBUaGUgQyBzdGFuZGFyZAorICAgICMgYXNzdW1lcyB5ZWFyID49IDE5MDAsIHNvIGl0IGRvZXMgbm90IHNwZWNpZnkgdGhlIG51bWJlcgorICAgICMgb2YgZGlnaXRzLgorCisgICAgaWYgdGltZS5zdHJmdGltZSgnJVknLCAoMSwpICsgKDAsKSAqIDgpID09ICcwMDAxJzoKKyAgICAgICAgX2Zvcm1hdCA9ICclMDRkJworICAgIGVsc2U6CisgICAgICAgIF9mb3JtYXQgPSAnJWQnCisKKyAgICBkZWYgeWVhcnN0cihzZWxmLCB5KToKKyAgICAgICAgcmV0dXJuIHRpbWUuc3RyZnRpbWUoJyVZJywgKHksKSArICgwLCkgKiA4KQorCisgICAgZGVmIHRlc3RfNGR5ZWFyKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgd2UgY2FuIHJldHVybiB0aGUgemVybyBwYWRkZWQgdmFsdWUuCisgICAgICAgIGlmIHNlbGYuX2Zvcm1hdCA9PSAnJTA0ZCc6CisgICAgICAgICAgICBzZWxmLnRlc3RfeWVhcignJTA0ZCcpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBkZWYgeWVhcjRkKHkpOgorICAgICAgICAgICAgICAgIHJldHVybiB0aW1lLnN0cmZ0aW1lKCclNFknLCAoeSwpICsgKDAsKSAqIDgpCisgICAgICAgICAgICBzZWxmLnRlc3RfeWVhcignJTA0ZCcsIGZ1bmM9eWVhcjRkKQorCisgICAgZGVmIHNraXBfaWZfbm90X3N1cHBvcnRlZCh5KToKKyAgICAgICAgbXNnID0gInN0cmZ0aW1lKCkgaXMgbGltaXRlZCB0byBbMTsgOTk5OV0gd2l0aCBWaXN1YWwgU3R1ZGlvIgogICAgICAgICAjIENoZWNrIHRoYXQgaXQgZG9lc24ndCBjcmFzaCBmb3IgeWVhciA+IDk5OTkKICAgICAgICAgdHJ5OgotICAgICAgICAgICAgdGV4dCA9IHNlbGYueWVhcnN0cigxMjM0NSkKKyAgICAgICAgICAgIHRpbWUuc3RyZnRpbWUoJyVZJywgKHksKSArICgwLCkgKiA4KQogICAgICAgICBleGNlcHQgVmFsdWVFcnJvcjoKLSAgICAgICAgICAgICMgc3RyZnRpbWUoKSBpcyBsaW1pdGVkIHRvIFsxOyA5OTk5XSB3aXRoIFZpc3VhbCBTdHVkaW8KLSAgICAgICAgICAgIHJldHVybgotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRleHQsICcxMjM0NScpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKDEyMzQ1Njc4OSksICcxMjM0NTY3ODknKQorICAgICAgICAgICAgY29uZCA9IEZhbHNlCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBjb25kID0gVHJ1ZQorICAgICAgICByZXR1cm4gdW5pdHRlc3Quc2tpcFVubGVzcyhjb25kLCBtc2cpCiAKLWNsYXNzIF9UZXN0MmRZZWFyKF9CYXNlWWVhclRlc3QpOgotICAgIGFjY2VwdDJkeWVhciA9IDEKKyAgICBAc2tpcF9pZl9ub3Rfc3VwcG9ydGVkKDEwMDAwKQorICAgIGRlZiB0ZXN0X2xhcmdlX3llYXIoc2VsZik6CisgICAgICAgIHJldHVybiBzdXBlcigpLnRlc3RfbGFyZ2VfeWVhcigpCiAKLSAgICBkZWYgdGVzdF95ZWFyKHNlbGYpOgotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKToKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKDApLCAnMjAwMCcpCi0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cig2OSksICcxOTY5JykKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKDY4KSwgJzIwNjgnKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoOTkpLCAnMTk5OScpCisgICAgQHNraXBfaWZfbm90X3N1cHBvcnRlZCgwKQorICAgIGRlZiB0ZXN0X25lZ2F0aXZlKHNlbGYpOgorICAgICAgICByZXR1cm4gc3VwZXIoKS50ZXN0X25lZ2F0aXZlKCkKIAotICAgIGRlZiB0ZXN0X2ludmFsaWQoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNlbGYueWVhcnN0ciwgLTEpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3IsIHNlbGYueWVhcnN0ciwgMTAwKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCBzZWxmLnllYXJzdHIsIDk5OSkKKyAgICBkZWwgc2tpcF9pZl9ub3Rfc3VwcG9ydGVkCisKIAogY2xhc3MgX1Rlc3Q0ZFllYXIoX0Jhc2VZZWFyVGVzdCk6Ci0gICAgYWNjZXB0MmR5ZWFyID0gMAorICAgIF9mb3JtYXQgPSAnJWQnCiAKLSAgICBkZWYgdGVzdF95ZWFyKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydEluKHNlbGYueWVhcnN0cigxKSwgICAgICgnMScsICcwMDAxJykpCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VsZi55ZWFyc3RyKDY4KSwgICAoJzY4JywgJzAwNjgnKSkKLSAgICAgICAgc2VsZi5hc3NlcnRJbihzZWxmLnllYXJzdHIoNjkpLCAgICgnNjknLCAnMDA2OScpKQotICAgICAgICBzZWxmLmFzc2VydEluKHNlbGYueWVhcnN0cig5OSksICAgKCc5OScsICcwMDk5JykpCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4oc2VsZi55ZWFyc3RyKDk5OSksICgnOTk5JywgJzA5OTknKSkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoOTk5OSksICc5OTk5JykKKyAgICBkZWYgdGVzdF95ZWFyKHNlbGYsIGZtdD1Ob25lLCBmdW5jPU5vbmUpOgorICAgICAgICBmbXQgPSBmbXQgb3Igc2VsZi5fZm9ybWF0CisgICAgICAgIGZ1bmMgPSBmdW5jIG9yIHNlbGYueWVhcnN0cgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZ1bmMoMSksICAgIGZtdCAlIDEpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnVuYyg2OCksICAgZm10ICUgNjgpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnVuYyg2OSksICAgZm10ICUgNjkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnVuYyg5OSksICAgZm10ICUgOTkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZnVuYyg5OTkpLCAgZm10ICUgOTk5KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZ1bmMoOTk5OSksIGZtdCAlIDk5OTkpCisKKyAgICBkZWYgdGVzdF9sYXJnZV95ZWFyKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cigxMjM0NSksICcxMjM0NScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKDEyMzQ1Njc4OSksICcxMjM0NTY3ODknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cihUSU1FX01BWFlFQVIpLCBzdHIoVElNRV9NQVhZRUFSKSkKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgc2VsZi55ZWFyc3RyLCBUSU1FX01BWFlFQVIgKyAxKQogCiAgICAgZGVmIHRlc3RfbmVnYXRpdmUoc2VsZik6Ci0gICAgICAgIHRyeToKLSAgICAgICAgICAgIHRleHQgPSBzZWxmLnllYXJzdHIoLTEpCi0gICAgICAgIGV4Y2VwdCBWYWx1ZUVycm9yOgotICAgICAgICAgICAgIyBzdHJmdGltZSgpIGlzIGxpbWl0ZWQgdG8gWzE7IDk5OTldIHdpdGggVmlzdWFsIFN0dWRpbwotICAgICAgICAgICAgcmV0dXJuCi0gICAgICAgIHNlbGYuYXNzZXJ0SW4odGV4dCwgKCctMScsICctMDAxJykpCi0KKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoLTEpLCBzZWxmLl9mb3JtYXQgJSAtMSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnllYXJzdHIoLTEyMzQpLCAnLTEyMzQnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cigtMTIzNDU2KSwgJy0xMjM0NTYnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cigtMTIzNDU2Nzg5KSwgc3RyKC0xMjM0NTY3ODkpKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYueWVhcnN0cigtMTIzNDU2Nzg5MCksIHN0cigtMTIzNDU2Nzg5MCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKFRJTUVfTUlOWUVBUiArIDE5MDApLCBzdHIoVElNRV9NSU5ZRUFSICsgMTkwMCkpCisgICAgICAgICMgSXNzdWUgIzEzMzEyOiBpdCBtYXkgcmV0dXJuIHdyb25nIHZhbHVlIGZvciB5ZWFyIDwgVElNRV9NSU5ZRUFSICsgMTkwMAorICAgICAgICAjIFNraXAgdGhlIHZhbHVlIHRlc3QsIGJ1dCBjaGVjayB0aGF0IG5vIGVycm9yIGlzIHJhaXNlZAorICAgICAgICBzZWxmLnllYXJzdHIoVElNRV9NSU5ZRUFSKQorICAgICAgICAjIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi55ZWFyc3RyKFRJTUVfTUlOWUVBUiksIHN0cihUSU1FX01JTllFQVIpKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhPdmVyZmxvd0Vycm9yLCBzZWxmLnllYXJzdHIsIFRJTUVfTUlOWUVBUiAtIDEpCiAKIAotICAgIGRlZiB0ZXN0X21rdGltZShzZWxmKToKLSAgICAgICAgIyBJc3N1ZSAjMTcyNjY4NwotICAgICAgICBmb3IgdCBpbiAoLTIsIC0xLCAwLCAxKToKLSAgICAgICAgICAgIHRyeToKLSAgICAgICAgICAgICAgICB0dCA9IHRpbWUubG9jYWx0aW1lKHQpCi0gICAgICAgICAgICBleGNlcHQgKE92ZXJmbG93RXJyb3IsIFZhbHVlRXJyb3IpOgotICAgICAgICAgICAgICAgIHBhc3MKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0aW1lLm1rdGltZSh0dCksIHQpCi0gICAgICAgICMgSXQgbWF5IG5vdCBiZSBwb3NzaWJsZSB0byByZWxpYWJseSBtYWtlIG1rdGltZSByZXR1cm4gZXJyb3IKLSAgICAgICAgIyBvbiBhbGwgcGxhdGZvbS4gIFRoaXMgd2lsbCBtYWtlIHN1cmUgdGhhdCBubyBvdGhlciBleGNlcHRpb24KLSAgICAgICAgIyB0aGFuIE92ZXJmbG93RXJyb3IgaXMgcmFpc2VkIGZvciBhbiBleHRyZW1lIHZhbHVlLgotICAgICAgICB0cnk6Ci0gICAgICAgICAgICB0aW1lLm1rdGltZSgoLTEsIDEsIDEsIDAsIDAsIDAsIC0xLCAtMSwgLTEpKQotICAgICAgICBleGNlcHQgT3ZlcmZsb3dFcnJvcjoKLSAgICAgICAgICAgIHBhc3MKLQotY2xhc3MgVGVzdEFzY3RpbWVBY2NlcHQyZFllYXIoX1Rlc3RBc2N0aW1lWWVhciwgX1Rlc3QyZFllYXIpOgotICAgIHBhc3MKLQotY2xhc3MgVGVzdFN0cmZ0aW1lQWNjZXB0MmRZZWFyKF9UZXN0U3RyZnRpbWVZZWFyLCBfVGVzdDJkWWVhcik6Ci0gICAgcGFzcwotCiBjbGFzcyBUZXN0QXNjdGltZTRkeWVhcihfVGVzdEFzY3RpbWVZZWFyLCBfVGVzdDRkWWVhcik6CiAgICAgcGFzcwogCiBjbGFzcyBUZXN0U3RyZnRpbWU0ZHllYXIoX1Rlc3RTdHJmdGltZVllYXIsIF9UZXN0NGRZZWFyKToKICAgICBwYXNzCiAKLWNsYXNzIFRlc3QyZHllYXJCb29sKF9UZXN0QXNjdGltZVllYXIsIF9UZXN0MmRZZWFyKToKLSAgICBhY2NlcHQyZHllYXIgPSBUcnVlCi0KLWNsYXNzIFRlc3Q0ZHllYXJCb29sKF9UZXN0QXNjdGltZVllYXIsIF9UZXN0NGRZZWFyKToKLSAgICBhY2NlcHQyZHllYXIgPSBGYWxzZQotCi1jbGFzcyBUZXN0QWNjZXB0MlllYXJCYWQoX1Rlc3RBc2N0aW1lWWVhciwgX0Jhc2VZZWFyVGVzdCk6Ci0gICAgY2xhc3MgWDoKLSAgICAgICAgZGVmIF9fYm9vbF9fKHNlbGYpOgotICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCdib28nKQotICAgIGFjY2VwdDJkeWVhciA9IFgoKQotICAgIGRlZiB0ZXN0XzJkeWVhcihzZWxmKToKLSAgICAgICAgcGFzcwotICAgIGRlZiB0ZXN0X2ludmFsaWQoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvciwgc2VsZi55ZWFyc3RyLCAyMDApCi0KIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KAogICAgICAgICBUaW1lVGVzdENhc2UsCiAgICAgICAgIFRlc3RMb2NhbGUsCi0gICAgICAgIFRlc3RBc2N0aW1lQWNjZXB0MmRZZWFyLAotICAgICAgICBUZXN0U3RyZnRpbWVBY2NlcHQyZFllYXIsCiAgICAgICAgIFRlc3RBc2N0aW1lNGR5ZWFyLAotICAgICAgICBUZXN0U3RyZnRpbWU0ZHllYXIsCi0gICAgICAgIFRlc3QyZHllYXJCb29sLAotICAgICAgICBUZXN0NGR5ZWFyQm9vbCwKLSAgICAgICAgVGVzdEFjY2VwdDJZZWFyQmFkKQorICAgICAgICBUZXN0U3RyZnRpbWU0ZHllYXIpCiAKIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6CiAgICAgdGVzdF9tYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfdG9rZW5pemUucHkgYi9MaWIvdGVzdC90ZXN0X3Rva2VuaXplLnB5CmluZGV4IDllOTY1NmMuLmRjZTNjNmUgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdG9rZW5pemUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF90b2tlbml6ZS5weQpAQCAtNTY3LDExICs1NjcsMTIgQEAKIAogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiBmcm9tIHRva2VuaXplIGltcG9ydCAodG9rZW5pemUsIF90b2tlbml6ZSwgdW50b2tlbml6ZSwgTlVNQkVSLCBOQU1FLCBPUCwKLSAgICAgICAgICAgICAgICAgICAgIFNUUklORywgRU5ETUFSS0VSLCB0b2tfbmFtZSwgZGV0ZWN0X2VuY29kaW5nLAorICAgICAgICAgICAgICAgICAgICAgU1RSSU5HLCBFTkRNQVJLRVIsIEVOQ09ESU5HLCB0b2tfbmFtZSwgZGV0ZWN0X2VuY29kaW5nLAogICAgICAgICAgICAgICAgICAgICAgb3BlbiBhcyB0b2tlbml6ZV9vcGVuKQogZnJvbSBpbyBpbXBvcnQgQnl0ZXNJTwogZnJvbSB1bml0dGVzdCBpbXBvcnQgVGVzdENhc2UKIGltcG9ydCBvcywgc3lzLCBnbG9iCitpbXBvcnQgdG9rZW4KIAogZGVmIGR1bXBfdG9rZW5zKHMpOgogICAgICIiIlByaW50IG91dCB0aGUgdG9rZW5zIGluIHMgaW4gYSB0YWJsZSBmb3JtYXQuCkBAIC02MDAsNyArNjAxLDcgQEAKICAgICAgICAgZi5jbG9zZSgpCiAgICAgdG9rZW5zMSA9IFt0b2tbOjJdIGZvciB0b2sgaW4gdG9rZW5fbGlzdF0KICAgICBuZXdfYnl0ZXMgPSB1bnRva2VuaXplKHRva2VuczEpCi0gICAgcmVhZGxpbmUgPSAobGluZSBmb3IgbGluZSBpbiBuZXdfYnl0ZXMuc3BsaXRsaW5lcygxKSkuX19uZXh0X18KKyAgICByZWFkbGluZSA9IChsaW5lIGZvciBsaW5lIGluIG5ld19ieXRlcy5zcGxpdGxpbmVzKGtlZXBlbmRzPVRydWUpKS5fX25leHRfXwogICAgIHRva2VuczIgPSBbdG9rWzoyXSBmb3IgdG9rIGluIHRva2VuaXplKHJlYWRsaW5lKV0KICAgICByZXR1cm4gdG9rZW5zMSA9PSB0b2tlbnMyCiAKQEAgLTkyMiw2ICs5MjMsNzggQEAKIAogICAgICAgICBzZWxmLmFzc2VydFRydWUoZW5jb2RpbmdfdXNlZCwgZW5jb2RpbmcpCiAKKyAgICBkZWYgYXNzZXJ0RXhhY3RUeXBlRXF1YWwoc2VsZiwgb3BzdHIsICpvcHR5cGVzKToKKyAgICAgICAgdG9rZW5zID0gbGlzdCh0b2tlbml6ZShCeXRlc0lPKG9wc3RyLmVuY29kZSgndXRmLTgnKSkucmVhZGxpbmUpKQorICAgICAgICBudW1fb3B0eXBlcyA9IGxlbihvcHR5cGVzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbih0b2tlbnMpLCAyICsgbnVtX29wdHlwZXMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodG9rZW4udG9rX25hbWVbdG9rZW5zWzBdLmV4YWN0X3R5cGVdLAorICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuLnRva19uYW1lW0VOQ09ESU5HXSkKKyAgICAgICAgZm9yIGkgaW4gcmFuZ2UobnVtX29wdHlwZXMpOgorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0b2tlbi50b2tfbmFtZVt0b2tlbnNbaSArIDFdLmV4YWN0X3R5cGVdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2tlbi50b2tfbmFtZVtvcHR5cGVzW2ldXSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0b2tlbi50b2tfbmFtZVt0b2tlbnNbMSArIG51bV9vcHR5cGVzXS5leGFjdF90eXBlXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICB0b2tlbi50b2tfbmFtZVt0b2tlbi5FTkRNQVJLRVJdKQorCisgICAgZGVmIHRlc3RfZXhhY3RfdHlwZShzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnKCknLCB0b2tlbi5MUEFSLCB0b2tlbi5SUEFSKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCdbXScsIHRva2VuLkxTUUIsIHRva2VuLlJTUUIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJzonLCB0b2tlbi5DT0xPTikKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnLCcsIHRva2VuLkNPTU1BKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCc7JywgdG9rZW4uU0VNSSkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnKycsIHRva2VuLlBMVVMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJy0nLCB0b2tlbi5NSU5VUykKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnKicsIHRva2VuLlNUQVIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJy8nLCB0b2tlbi5TTEFTSCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnfCcsIHRva2VuLlZCQVIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJyYnLCB0b2tlbi5BTVBFUikKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnPCcsIHRva2VuLkxFU1MpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJz4nLCB0b2tlbi5HUkVBVEVSKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCc9JywgdG9rZW4uRVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJy4nLCB0b2tlbi5ET1QpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJyUnLCB0b2tlbi5QRVJDRU5UKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCd7fScsIHRva2VuLkxCUkFDRSwgdG9rZW4uUkJSQUNFKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCc9PScsIHRva2VuLkVRRVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJyE9JywgdG9rZW4uTk9URVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJzw9JywgdG9rZW4uTEVTU0VRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCc+PScsIHRva2VuLkdSRUFURVJFUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnficsIHRva2VuLlRJTERFKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCdeJywgdG9rZW4uQ0lSQ1VNRkxFWCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnPDwnLCB0b2tlbi5MRUZUU0hJRlQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJz4+JywgdG9rZW4uUklHSFRTSElGVCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnKionLCB0b2tlbi5ET1VCTEVTVEFSKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCcrPScsIHRva2VuLlBMVVNFUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnLT0nLCB0b2tlbi5NSU5FUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnKj0nLCB0b2tlbi5TVEFSRVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJy89JywgdG9rZW4uU0xBU0hFUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnJT0nLCB0b2tlbi5QRVJDRU5URVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJyY9JywgdG9rZW4uQU1QRVJFUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnfD0nLCB0b2tlbi5WQkFSRVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJ149JywgdG9rZW4uQ0lSQ1VNRkxFWEVRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCdePScsIHRva2VuLkNJUkNVTUZMRVhFUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnPDw9JywgdG9rZW4uTEVGVFNISUZURVFVQUwpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJz4+PScsIHRva2VuLlJJR0hUU0hJRlRFUVVBTCkKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnKio9JywgdG9rZW4uRE9VQkxFU1RBUkVRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCcvLycsIHRva2VuLkRPVUJMRVNMQVNIKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCcvLz0nLCB0b2tlbi5ET1VCTEVTTEFTSEVRVUFMKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCdAJywgdG9rZW4uQVQpCisKKyAgICAgICAgc2VsZi5hc3NlcnRFeGFjdFR5cGVFcXVhbCgnYSoqMitiKioyPT1jKioyJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOQU1FLCB0b2tlbi5ET1VCTEVTVEFSLCBOVU1CRVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4uUExVUywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOQU1FLCB0b2tlbi5ET1VCTEVTVEFSLCBOVU1CRVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4uRVFFUVVBTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOQU1FLCB0b2tlbi5ET1VCTEVTVEFSLCBOVU1CRVIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXhhY3RUeXBlRXF1YWwoJ3sxLCAyLCAzfScsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4uTEJSQUNFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuLk5VTUJFUiwgdG9rZW4uQ09NTUEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4uTlVNQkVSLCB0b2tlbi5DT01NQSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2tlbi5OVU1CRVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4uUkJSQUNFKQorICAgICAgICBzZWxmLmFzc2VydEV4YWN0VHlwZUVxdWFsKCdeKHggJiAweDEpJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2tlbi5DSVJDVU1GTEVYLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRva2VuLkxQQVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9rZW4uTkFNRSwgdG9rZW4uQU1QRVIsIHRva2VuLk5VTUJFUiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b2tlbi5SUEFSKQogCiBfX3Rlc3RfXyA9IHsiZG9jdGVzdHMiIDogZG9jdGVzdHMsICdkZWNpc3RtdCc6IGRlY2lzdG10fQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3RyYWNlLnB5IGIvTGliL3Rlc3QvdGVzdF90cmFjZS5weQppbmRleCA0NjFkMWQ4Li5kOWJlZjM4IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3RyYWNlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdHJhY2UucHkKQEAgLTEwMiw2ICsxMDIsNyBAQAogY2xhc3MgVGVzdExpbmVDb3VudHModW5pdHRlc3QuVGVzdENhc2UpOgogICAgICIiIldoaXRlLWJveCB0ZXN0aW5nIG9mIGxpbmUtY291bnRpbmcsIHZpYSBydW5mdW5jIiIiCiAgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnNldHRyYWNlLCBzeXMuZ2V0dHJhY2UoKSkKICAgICAgICAgc2VsZi50cmFjZXIgPSBUcmFjZShjb3VudD0xLCB0cmFjZT0wLCBjb3VudGZ1bmNzPTAsIGNvdW50Y2FsbGVycz0wKQogICAgICAgICBzZWxmLm15X3B5X2ZpbGVuYW1lID0gZml4X2V4dF9weShfX2ZpbGVfXykKIApAQCAtMTkyLDYgKzE5Myw3IEBACiAgICAgIiIiQSBzaW1wbGUgc2FuaXR5IHRlc3Qgb2YgbGluZS1jb3VudGluZywgdmlhIHJ1bmN0eCAoZXhlYykiIiIKICAgICBkZWYgc2V0VXAoc2VsZik6CiAgICAgICAgIHNlbGYubXlfcHlfZmlsZW5hbWUgPSBmaXhfZXh0X3B5KF9fZmlsZV9fKQorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnNldHRyYWNlLCBzeXMuZ2V0dHJhY2UoKSkKIAogICAgIGRlZiB0ZXN0X2V4ZWNfY291bnRzKHNlbGYpOgogICAgICAgICBzZWxmLnRyYWNlciA9IFRyYWNlKGNvdW50PTEsIHRyYWNlPTAsIGNvdW50ZnVuY3M9MCwgY291bnRjYWxsZXJzPTApCkBAIC0yMTgsNiArMjIwLDcgQEAKIGNsYXNzIFRlc3RGdW5jcyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgIiIiV2hpdGUtYm94IHRlc3Rpbmcgb2YgZnVuY3MgdHJhY2luZyIiIgogICAgIGRlZiBzZXRVcChzZWxmKToKKyAgICAgICAgc2VsZi5hZGRDbGVhbnVwKHN5cy5zZXR0cmFjZSwgc3lzLmdldHRyYWNlKCkpCiAgICAgICAgIHNlbGYudHJhY2VyID0gVHJhY2UoY291bnQ9MCwgdHJhY2U9MCwgY291bnRmdW5jcz0xKQogICAgICAgICBzZWxmLmZpbGVtb2QgPSBteV9maWxlX2FuZF9tb2RuYW1lKCkKIApAQCAtMjQyLDYgKzI0NSw4IEBACiAgICAgICAgIH0KICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnRyYWNlci5yZXN1bHRzKCkuY2FsbGVkZnVuY3MsIGV4cGVjdGVkKQogCisgICAgQHVuaXR0ZXN0LnNraXBJZihoYXNhdHRyKHN5cywgJ2dldHRyYWNlJykgYW5kIHN5cy5nZXR0cmFjZSgpLAorICAgICAgICAgICAgICAgICAgICAgJ3ByZS1leGlzdGluZyB0cmFjZSBmdW5jdGlvbiB0aHJvd3Mgb2ZmIG1lYXN1cmVtZW50cycpCiAgICAgZGVmIHRlc3RfaW5zdF9tZXRob2RfY2FsbGluZyhzZWxmKToKICAgICAgICAgb2JqID0gVHJhY2VkQ2xhc3MoMjApCiAgICAgICAgIHNlbGYudHJhY2VyLnJ1bmZ1bmMob2JqLmluc3RfbWV0aG9kX2NhbGxpbmcsIDEpCkBAIC0yNTcsOSArMjYyLDEyIEBACiBjbGFzcyBUZXN0Q2FsbGVycyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgIiIiV2hpdGUtYm94IHRlc3Rpbmcgb2YgY2FsbGVycyB0cmFjaW5nIiIiCiAgICAgZGVmIHNldFVwKHNlbGYpOgorICAgICAgICBzZWxmLmFkZENsZWFudXAoc3lzLnNldHRyYWNlLCBzeXMuZ2V0dHJhY2UoKSkKICAgICAgICAgc2VsZi50cmFjZXIgPSBUcmFjZShjb3VudD0wLCB0cmFjZT0wLCBjb3VudGNhbGxlcnM9MSkKICAgICAgICAgc2VsZi5maWxlbW9kID0gbXlfZmlsZV9hbmRfbW9kbmFtZSgpCiAKKyAgICBAdW5pdHRlc3Quc2tpcElmKGhhc2F0dHIoc3lzLCAnZ2V0dHJhY2UnKSBhbmQgc3lzLmdldHRyYWNlKCksCisgICAgICAgICAgICAgICAgICAgICAncHJlLWV4aXN0aW5nIHRyYWNlIGZ1bmN0aW9uIHRocm93cyBvZmYgbWVhc3VyZW1lbnRzJykKICAgICBkZWYgdGVzdF9sb29wX2NhbGxlcl9pbXBvcnRpbmcoc2VsZik6CiAgICAgICAgIHNlbGYudHJhY2VyLnJ1bmZ1bmModHJhY2VkX2Z1bmNfaW1wb3J0aW5nX2NhbGxlciwgMSkKIApAQCAtMjgwLDYgKzI4OCw5IEBACiAKICMgQ3JlYXRlZCBzZXBhcmF0ZWx5IGZvciBpc3N1ZSAjMzgyMQogY2xhc3MgVGVzdENvdmVyYWdlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICBkZWYgc2V0VXAoc2VsZik6CisgICAgICAgIHNlbGYuYWRkQ2xlYW51cChzeXMuc2V0dHJhY2UsIHN5cy5nZXR0cmFjZSgpKQorCiAgICAgZGVmIHRlYXJEb3duKHNlbGYpOgogICAgICAgICBybXRyZWUoVEVTVEZOKQogICAgICAgICB1bmxpbmsoVEVTVEZOKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF91Y24ucHkgYi9MaWIvdGVzdC90ZXN0X3Vjbi5weQppbmRleCBmZDYyMGYwLi42OGEzMjE5IDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3Vjbi5weQorKysgYi9MaWIvdGVzdC90ZXN0X3Vjbi5weQpAQCAtOCw4ICs4LDExIEBACiAiIiIjIgogCiBpbXBvcnQgdW5pdHRlc3QKK2ltcG9ydCB1bmljb2RlZGF0YQogCiBmcm9tIHRlc3QgaW1wb3J0IHN1cHBvcnQKK2Zyb20gaHR0cC5jbGllbnQgaW1wb3J0IEhUVFBFeGNlcHRpb24KK2Zyb20gdGVzdC50ZXN0X25vcm1hbGl6YXRpb24gaW1wb3J0IGNoZWNrX3ZlcnNpb24KIAogY2xhc3MgVW5pY29kZU5hbWVzVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKQEAgLTU5LDggKzYyLDYgQEAKICAgICAgICAgKQogCiAgICAgZGVmIHRlc3RfYXNjaWlfbGV0dGVycyhzZWxmKToKLSAgICAgICAgaW1wb3J0IHVuaWNvZGVkYXRhCi0KICAgICAgICAgZm9yIGNoYXIgaW4gIiIuam9pbihtYXAoY2hyLCByYW5nZShvcmQoImEiKSwgb3JkKCJ6IikpKSk6CiAgICAgICAgICAgICBuYW1lID0gIkxBVElOIFNNQUxMIExFVFRFUiAlcyIgJSBjaGFyLnVwcGVyKCkKICAgICAgICAgICAgIGNvZGUgPSB1bmljb2RlZGF0YS5sb29rdXAobmFtZSkKQEAgLTgxLDcgKzgyLDYgQEAKICAgICAgICAgc2VsZi5jaGVja2xldHRlcigiSEFOR1VMIFNZTExBQkxFIEhXRU9LIiwgIlx1ZDZmOCIpCiAgICAgICAgIHNlbGYuY2hlY2tsZXR0ZXIoIkhBTkdVTCBTWUxMQUJMRSBISUgiLCAiXHVkN2EzIikKIAotICAgICAgICBpbXBvcnQgdW5pY29kZWRhdGEKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvciwgdW5pY29kZWRhdGEubmFtZSwgIlx1ZDdhNCIpCiAKICAgICBkZWYgdGVzdF9jamtfdW5pZmllZF9pZGVvZ3JhcGhzKHNlbGYpOgpAQCAtOTcsMTQgKzk3LDExIEBACiAgICAgICAgIHNlbGYuY2hlY2tsZXR0ZXIoIkNKSyBVTklGSUVEIElERU9HUkFQSC0yQjgxRCIsICJcVTAwMDJCODFEIikKIAogICAgIGRlZiB0ZXN0X2JtcF9jaGFyYWN0ZXJzKHNlbGYpOgotICAgICAgICBpbXBvcnQgdW5pY29kZWRhdGEKLSAgICAgICAgY291bnQgPSAwCiAgICAgICAgIGZvciBjb2RlIGluIHJhbmdlKDB4MTAwMDApOgogICAgICAgICAgICAgY2hhciA9IGNocihjb2RlKQogICAgICAgICAgICAgbmFtZSA9IHVuaWNvZGVkYXRhLm5hbWUoY2hhciwgTm9uZSkKICAgICAgICAgICAgIGlmIG5hbWUgaXMgbm90IE5vbmU6CiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlZGF0YS5sb29rdXAobmFtZSksIGNoYXIpCi0gICAgICAgICAgICAgICAgY291bnQgKz0gMQogCiAgICAgZGVmIHRlc3RfbWlzY19zeW1ib2xzKHNlbGYpOgogICAgICAgICBzZWxmLmNoZWNrbGV0dGVyKCJQSUxDUk9XIFNJR04iLCAiXHUwMGI2IikKQEAgLTExMiw4ICsxMDksODUgQEAKICAgICAgICAgc2VsZi5jaGVja2xldHRlcigiSEFMRldJRFRIIEtBVEFLQU5BIFNFTUktVk9JQ0VEIFNPVU5EIE1BUksiLCAiXHVGRjlGIikKICAgICAgICAgc2VsZi5jaGVja2xldHRlcigiRlVMTFdJRFRIIExBVElOIFNNQUxMIExFVFRFUiBBIiwgIlx1RkY0MSIpCiAKKyAgICBkZWYgdGVzdF9hbGlhc2VzKHNlbGYpOgorICAgICAgICAjIENoZWNrIHRoYXQgdGhlIGFsaWFzZXMgZGVmaW5lZCBpbiB0aGUgTmFtZUFsaWFzZXMudHh0IGZpbGUgd29yay4KKyAgICAgICAgIyBUaGlzIHNob3VsZCBiZSB1cGRhdGVkIHdoZW4gbmV3IGFsaWFzZXMgYXJlIGFkZGVkIG9yIHRoZSBmaWxlCisgICAgICAgICMgc2hvdWxkIGJlIGRvd25sb2FkZWQgYW5kIHBhcnNlZCBpbnN0ZWFkLiAgU2VlICMxMjc1My4KKyAgICAgICAgYWxpYXNlcyA9IFsKKyAgICAgICAgICAgICgnTEFUSU4gQ0FQSVRBTCBMRVRURVIgR0hBJywgMHgwMUEyKSwKKyAgICAgICAgICAgICgnTEFUSU4gU01BTEwgTEVUVEVSIEdIQScsIDB4MDFBMyksCisgICAgICAgICAgICAoJ0tBTk5BREEgTEVUVEVSIExMTEEnLCAweDBDREUpLAorICAgICAgICAgICAgKCdMQU8gTEVUVEVSIEZPIEZPTicsIDB4MEU5RCksCisgICAgICAgICAgICAoJ0xBTyBMRVRURVIgRk8gRkFZJywgMHgwRTlGKSwKKyAgICAgICAgICAgICgnTEFPIExFVFRFUiBSTycsIDB4MEVBMyksCisgICAgICAgICAgICAoJ0xBTyBMRVRURVIgTE8nLCAweDBFQTUpLAorICAgICAgICAgICAgKCdUSUJFVEFOIE1BUksgQktBLSBTSE9HIEdJIE1HTyBSR1lBTicsIDB4MEZEMCksCisgICAgICAgICAgICAoJ1lJIFNZTExBQkxFIElURVJBVElPTiBNQVJLJywgMHhBMDE1KSwKKyAgICAgICAgICAgICgnUFJFU0VOVEFUSU9OIEZPUk0gRk9SIFZFUlRJQ0FMIFJJR0hUIFdISVRFIExFTlRJQ1VMQVIgQlJBQ0tFVCcsIDB4RkUxOCksCisgICAgICAgICAgICAoJ0JZWkFOVElORSBNVVNJQ0FMIFNZTUJPTCBGVEhPUkEgU0tMSVJPTiBDSFJPTUEgVkFTSVMnLCAweDFEMEM1KQorICAgICAgICBdCisgICAgICAgIGZvciBhbGlhcywgY29kZXBvaW50IGluIGFsaWFzZXM6CisgICAgICAgICAgICBzZWxmLmNoZWNrbGV0dGVyKGFsaWFzLCBjaHIoY29kZXBvaW50KSkKKyAgICAgICAgICAgIG5hbWUgPSB1bmljb2RlZGF0YS5uYW1lKGNocihjb2RlcG9pbnQpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChuYW1lLCBhbGlhcykKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5pY29kZWRhdGEubG9va3VwKGFsaWFzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZWRhdGEubG9va3VwKG5hbWUpKQorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhLZXlFcnJvcik6CisgICAgICAgICAgICAgICAgdW5pY29kZWRhdGEudWNkXzNfMl8wLmxvb2t1cChhbGlhcykKKworICAgIGRlZiB0ZXN0X2FsaWFzZXNfbmFtZXNfaW5fcHVhX3JhbmdlKHNlbGYpOgorICAgICAgICAjIFdlIGFyZSBzdG9yaW5nIGFsaWFzZXMgaW4gdGhlIFBVQSAxNSwgYnV0IHRoZWlyIG5hbWVzIHNob3VsZG4ndCBsZWFrCisgICAgICAgIGZvciBjcCBpbiByYW5nZSgweGYwMDAwLCAweGYwMTAwKToKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoVmFsdWVFcnJvcikgYXMgY206CisgICAgICAgICAgICAgICAgdW5pY29kZWRhdGEubmFtZShjaHIoY3ApKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoY20uZXhjZXB0aW9uKSwgJ25vIHN1Y2ggbmFtZScpCisKKyAgICBkZWYgdGVzdF9uYW1lZF9zZXF1ZW5jZXNfbmFtZXNfaW5fcHVhX3JhbmdlKHNlbGYpOgorICAgICAgICAjIFdlIGFyZSBzdG9yaW5nIG5hbWVkIHNlcSBpbiB0aGUgUFVBIDE1LCBidXQgdGhlaXIgbmFtZXMgc2hvdWxkbid0IGxlYWsKKyAgICAgICAgZm9yIGNwIGluIHJhbmdlKDB4ZjAxMDAsIDB4ZjBmZmYpOgorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yKSBhcyBjbToKKyAgICAgICAgICAgICAgICB1bmljb2RlZGF0YS5uYW1lKGNocihjcCkpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihjbS5leGNlcHRpb24pLCAnbm8gc3VjaCBuYW1lJykKKworICAgIGRlZiB0ZXN0X25hbWVkX3NlcXVlbmNlc19zYW1wbGUoc2VsZik6CisgICAgICAgICMgQ2hlY2sgYSBmZXcgbmFtZWQgc2VxdWVuY2VzLiAgU2VlICMxMjc1My4KKyAgICAgICAgc2VxdWVuY2VzID0gWworICAgICAgICAgICAgKCdMQVRJTiBTTUFMTCBMRVRURVIgUiBXSVRIIFRJTERFJywgJ1x1MDA3Mlx1MDMwMycpLAorICAgICAgICAgICAgKCdUQU1JTCBTWUxMQUJMRSBTQUknLCAnXHUwQkI4XHUwQkM4JyksCisgICAgICAgICAgICAoJ1RBTUlMIFNZTExBQkxFIE1PTycsICdcdTBCQUVcdTBCQ0InKSwKKyAgICAgICAgICAgICgnVEFNSUwgU1lMTEFCTEUgTk5PTycsICdcdTBCQTNcdTBCQ0InKSwKKyAgICAgICAgICAgICgnVEFNSUwgQ09OU09OQU5UIEtTUycsICdcdTBCOTVcdTBCQ0RcdTBCQjdcdTBCQ0QnKSwKKyAgICAgICAgXQorICAgICAgICBmb3Igc2VxbmFtZSwgY29kZXBvaW50cyBpbiBzZXF1ZW5jZXM6CisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVkYXRhLmxvb2t1cChzZXFuYW1lKSwgY29kZXBvaW50cykKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoU3ludGF4RXJyb3IpOgorICAgICAgICAgICAgICAgIHNlbGYuY2hlY2tsZXR0ZXIoc2VxbmFtZSwgTm9uZSkKKyAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRSYWlzZXMoS2V5RXJyb3IpOgorICAgICAgICAgICAgICAgIHVuaWNvZGVkYXRhLnVjZF8zXzJfMC5sb29rdXAoc2VxbmFtZSkKKworICAgIGRlZiB0ZXN0X25hbWVkX3NlcXVlbmNlc19mdWxsKHNlbGYpOgorICAgICAgICAjIENoZWNrIGFsbCB0aGUgbmFtZWQgc2VxdWVuY2VzCisgICAgICAgIHVybCA9ICgiaHR0cDovL3d3dy51bmljb2RlLm9yZy9QdWJsaWMvJXMvdWNkL05hbWVkU2VxdWVuY2VzLnR4dCIgJQorICAgICAgICAgICAgICAgdW5pY29kZWRhdGEudW5pZGF0YV92ZXJzaW9uKQorICAgICAgICB0cnk6CisgICAgICAgICAgICB0ZXN0ZGF0YSA9IHN1cHBvcnQub3Blbl91cmxyZXNvdXJjZSh1cmwsIGVuY29kaW5nPSJ1dGYtOCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGVjaz1jaGVja192ZXJzaW9uKQorICAgICAgICBleGNlcHQgKElPRXJyb3IsIEhUVFBFeGNlcHRpb24pOgorICAgICAgICAgICAgc2VsZi5za2lwVGVzdCgiQ291bGQgbm90IHJldHJpZXZlICIgKyB1cmwpCisgICAgICAgIHNlbGYuYWRkQ2xlYW51cCh0ZXN0ZGF0YS5jbG9zZSkKKyAgICAgICAgZm9yIGxpbmUgaW4gdGVzdGRhdGE6CisgICAgICAgICAgICBsaW5lID0gbGluZS5zdHJpcCgpCisgICAgICAgICAgICBpZiBub3QgbGluZSBvciBsaW5lLnN0YXJ0c3dpdGgoJyMnKToKKyAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgc2VxbmFtZSwgY29kZXBvaW50cyA9IGxpbmUuc3BsaXQoJzsnKQorICAgICAgICAgICAgY29kZXBvaW50cyA9ICcnLmpvaW4oY2hyKGludChjcCwgMTYpKSBmb3IgY3AgaW4gY29kZXBvaW50cy5zcGxpdCgpKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlZGF0YS5sb29rdXAoc2VxbmFtZSksIGNvZGVwb2ludHMpCisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFN5bnRheEVycm9yKToKKyAgICAgICAgICAgICAgICBzZWxmLmNoZWNrbGV0dGVyKHNlcW5hbWUsIE5vbmUpCisgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEtleUVycm9yKToKKyAgICAgICAgICAgICAgICB1bmljb2RlZGF0YS51Y2RfM18yXzAubG9va3VwKHNlcW5hbWUpCisKICAgICBkZWYgdGVzdF9lcnJvcnMoc2VsZik6Ci0gICAgICAgIGltcG9ydCB1bmljb2RlZGF0YQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHVuaWNvZGVkYXRhLm5hbWUpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgdW5pY29kZWRhdGEubmFtZSwgJ3h4JykKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCB1bmljb2RlZGF0YS5sb29rdXApCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3VuaWNvZGUucHkgYi9MaWIvdGVzdC90ZXN0X3VuaWNvZGUucHkKaW5kZXggMjU5YTE4MS4uMzNkN2IzNSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF91bmljb2RlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdW5pY29kZS5weQpAQCAtNSwxNyArNSwxMyBAQAogKGMpIENvcHlyaWdodCBDTlJJLCBBbGwgUmlnaHRzIFJlc2VydmVkLiBOTyBXQVJSQU5UWS4KIAogIiIiIyIKK2ltcG9ydCBfc3RyaW5nCiBpbXBvcnQgY29kZWNzCiBpbXBvcnQgc3RydWN0CiBpbXBvcnQgc3lzCiBpbXBvcnQgdW5pdHRlc3QKIGltcG9ydCB3YXJuaW5ncwogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0LCBzdHJpbmdfdGVzdHMKLWltcG9ydCBfc3RyaW5nCi0KLSMgZGVjb3JhdG9yIHRvIHNraXAgdGVzdHMgb24gbmFycm93IGJ1aWxkcwotcmVxdWlyZXNfd2lkZV9idWlsZCA9IHVuaXR0ZXN0LnNraXBJZihzeXMubWF4dW5pY29kZSA9PSA2NTUzNSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3JlcXVpcmVzIHdpZGUgYnVpbGQnKQogCiAjIEVycm9yIGhhbmRsaW5nIChiYWQgZGVjb2RlciByZXR1cm4pCiBkZWYgc2VhcmNoX2Z1bmN0aW9uKGVuY29kaW5nKToKQEAgLTE3NSw2ICsxNzEsMTUgQEAKIAogICAgIGRlZiB0ZXN0X2ZpbmQoc2VsZik6CiAgICAgICAgIHN0cmluZ190ZXN0cy5Db21tb25UZXN0LnRlc3RfZmluZChzZWxmKQorICAgICAgICAjIHRlc3QgaW1wbGVtZW50YXRpb24gZGV0YWlscyBvZiB0aGUgbWVtY2hyIGZhc3QgcGF0aAorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoMTAwLCAnYScgKiAxMDAgKyAnXHUwMTAyJywgJ2ZpbmQnLCAnXHUwMTAyJykKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKC0xLCAnYScgKiAxMDAgKyAnXHUwMTAyJywgJ2ZpbmQnLCAnXHUwMjAxJykKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKC0xLCAnYScgKiAxMDAgKyAnXHUwMTAyJywgJ2ZpbmQnLCAnXHUwMTIwJykKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKC0xLCAnYScgKiAxMDAgKyAnXHUwMTAyJywgJ2ZpbmQnLCAnXHUwMjIwJykKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKDEwMCwgJ2EnICogMTAwICsgJ1xVMDAxMDAzMDQnLCAnZmluZCcsICdcVTAwMTAwMzA0JykKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKC0xLCAnYScgKiAxMDAgKyAnXFUwMDEwMDMwNCcsICdmaW5kJywgJ1xVMDAxMDAyMDQnKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdhJyAqIDEwMCArICdcVTAwMTAwMzA0JywgJ2ZpbmQnLCAnXFUwMDEwMjAwNCcpCisgICAgICAgICMgY2hlY2sgbWl4ZWQgYXJndW1lbnQgdHlwZXMKICAgICAgICAgc2VsZi5jaGVja2VxdWFsbm9maXgoMCwgICdhYmNkZWZnaGlhYmMnLCAnZmluZCcsICdhYmMnKQogICAgICAgICBzZWxmLmNoZWNrZXF1YWxub2ZpeCg5LCAgJ2FiY2RlZmdoaWFiYycsICdmaW5kJywgJ2FiYycsIDEpCiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbG5vZml4KC0xLCAnYWJjZGVmZ2hpYWJjJywgJ2ZpbmQnLCAnZGVmJywgNCkKQEAgLTE4NCw2ICsxODksMTQgQEAKIAogICAgIGRlZiB0ZXN0X3JmaW5kKHNlbGYpOgogICAgICAgICBzdHJpbmdfdGVzdHMuQ29tbW9uVGVzdC50ZXN0X3JmaW5kKHNlbGYpCisgICAgICAgICMgdGVzdCBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzIG9mIHRoZSBtZW1yY2hyIGZhc3QgcGF0aAorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoMCwgJ1x1MDEwMicgKyAnYScgKiAxMDAgLCAncmZpbmQnLCAnXHUwMTAyJykKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKC0xLCAnXHUwMTAyJyArICdhJyAqIDEwMCAsICdyZmluZCcsICdcdTAyMDEnKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdcdTAxMDInICsgJ2EnICogMTAwICwgJ3JmaW5kJywgJ1x1MDEyMCcpCisgICAgICAgIHNlbGYuY2hlY2tlcXVhbCgtMSwgJ1x1MDEwMicgKyAnYScgKiAxMDAgLCAncmZpbmQnLCAnXHUwMjIwJykKKyAgICAgICAgc2VsZi5jaGVja2VxdWFsKDAsICdcVTAwMTAwMzA0JyArICdhJyAqIDEwMCwgJ3JmaW5kJywgJ1xVMDAxMDAzMDQnKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdcVTAwMTAwMzA0JyArICdhJyAqIDEwMCwgJ3JmaW5kJywgJ1xVMDAxMDAyMDQnKQorICAgICAgICBzZWxmLmNoZWNrZXF1YWwoLTEsICdcVTAwMTAwMzA0JyArICdhJyAqIDEwMCwgJ3JmaW5kJywgJ1xVMDAxMDIwMDQnKQogICAgICAgICAjIGNoZWNrIG1peGVkIGFyZ3VtZW50IHR5cGVzCiAgICAgICAgIHNlbGYuY2hlY2tlcXVhbG5vZml4KDksICAgJ2FiY2RlZmdoaWFiYycsICdyZmluZCcsICdhYmMnKQogICAgICAgICBzZWxmLmNoZWNrZXF1YWxub2ZpeCgxMiwgICdhYmNkZWZnaGlhYmMnLCAncmZpbmQnLCAnJykKQEAgLTI4MCw2ICsyOTMsMTIgQEAKICAgICAgICAgc2VsZi5jaGVja2VxdWFsbm9maXgoJ29uZUB0d28hdGhyZWUhJywgJ29uZSF0d28hdGhyZWUhJywgJ3JlcGxhY2UnLCAnIScsICdAJywgMSkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCAncmVwbGFjZScucmVwbGFjZSwgInIiLCA0MikKIAorICAgIEBzdXBwb3J0LmNweXRob25fb25seQorICAgIGRlZiB0ZXN0X3JlcGxhY2VfaWQoc2VsZik6CisgICAgICAgIHBhdHRlcm4gPSAnYWJjJworICAgICAgICB0ZXh0ID0gJ2FiYyBkZWYnCisgICAgICAgIHNlbGYuYXNzZXJ0SXModGV4dC5yZXBsYWNlKHBhdHRlcm4sIHBhdHRlcm4pLCB0ZXh0KQorCiAgICAgZGVmIHRlc3RfYnl0ZXNfY29tcGFyaXNvbihzZWxmKToKICAgICAgICAgd2l0aCBzdXBwb3J0LmNoZWNrX3dhcm5pbmdzKCk6CiAgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoJ2lnbm9yZScsIEJ5dGVzV2FybmluZykKQEAgLTM1MCw2ICszNjksOCBAQAogICAgIGRlZiB0ZXN0X2lzbG93ZXIoc2VsZik6CiAgICAgICAgIHN0cmluZ190ZXN0cy5NaXhpblN0clVuaWNvZGVVc2VyU3RyaW5nVGVzdC50ZXN0X2lzbG93ZXIoc2VsZikKICAgICAgICAgc2VsZi5jaGVja2VxdWFsbm9maXgoRmFsc2UsICdcdTFGRmMnLCAnaXNsb3dlcicpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoJ1x1MjE2NycuaXNsb3dlcigpKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoJ1x1MjE3NycuaXNsb3dlcigpKQogICAgICAgICAjIG5vbi1CTVAsIHVwcGVyY2FzZQogICAgICAgICBzZWxmLmFzc2VydEZhbHNlKCdcVTAwMDEwNDAxJy5pc2xvd2VyKCkpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoJ1xVMDAwMTA0MjcnLmlzbG93ZXIoKSkKQEAgLTM2NCw2ICszODUsOCBAQAogICAgICAgICBzdHJpbmdfdGVzdHMuTWl4aW5TdHJVbmljb2RlVXNlclN0cmluZ1Rlc3QudGVzdF9pc3VwcGVyKHNlbGYpCiAgICAgICAgIGlmIG5vdCBzeXMucGxhdGZvcm0uc3RhcnRzd2l0aCgnamF2YScpOgogICAgICAgICAgICAgc2VsZi5jaGVja2VxdWFsbm9maXgoRmFsc2UsICdcdTFGRmMnLCAnaXN1cHBlcicpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZSgnXHUyMTY3Jy5pc3VwcGVyKCkpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoJ1x1MjE3NycuaXN1cHBlcigpKQogICAgICAgICAjIG5vbi1CTVAsIHVwcGVyY2FzZQogICAgICAgICBzZWxmLmFzc2VydFRydWUoJ1xVMDAwMTA0MDEnLmlzdXBwZXIoKSkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKCdcVTAwMDEwNDI3Jy5pc3VwcGVyKCkpCkBAIC01MjAsNyArNTQzLDYgQEAKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG1ldGgocyksICclYS4lcygpIGlzIEZhbHNlJyAlIChzLCBtZXRoX25hbWUpKQogCiAKLSAgICBAcmVxdWlyZXNfd2lkZV9idWlsZAogICAgIGRlZiB0ZXN0X2xvd2VyKHNlbGYpOgogICAgICAgICBzdHJpbmdfdGVzdHMuQ29tbW9uVGVzdC50ZXN0X2xvd2VyKHNlbGYpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1xVMDAwMTA0MjcnLmxvd2VyKCksICdcVTAwMDEwNDRGJykKQEAgLTUzMCw4ICs1NTIsMjcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAnXFUwMDAxMDQ0RlxVMDAwMTA0NEYnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdYXFUwMDAxMDQyN3hcVTAwMDEwNDRGJy5sb3dlcigpLAogICAgICAgICAgICAgICAgICAgICAgICAgICd4XFUwMDAxMDQ0RnhcVTAwMDEwNDRGJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgn76yBJy5sb3dlcigpLCAn76yBJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHUwMTMwJy5sb3dlcigpLCAnXHUwMDY5XHUwMzA3JykKKyAgICAgICAgIyBTcGVjaWFsIGNhc2UgZm9yIEdSRUVLIENBUElUQUwgTEVUVEVSIFNJR01BIFUrMDNBMworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAzYTMnLmxvd2VyKCksICdcdTAzYzMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAzNDVcdTAzYTMnLmxvd2VyKCksICdcdTAzNDVcdTAzYzMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdBXHUwMzQ1XHUwM2EzJy5sb3dlcigpLCAnYVx1MDM0NVx1MDNjMicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzNDVcdTAzYTNhJy5sb3dlcigpLCAnYVx1MDM0NVx1MDNjM2EnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdBXHUwMzQ1XHUwM2EzJy5sb3dlcigpLCAnYVx1MDM0NVx1MDNjMicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzYTNcdTAzNDUnLmxvd2VyKCksICdhXHUwM2MyXHUwMzQ1JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHUwM2EzXHUwMzQ1ICcubG93ZXIoKSwgJ1x1MDNjM1x1MDM0NSAnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcVTAwMDhmZmZlJy5sb3dlcigpLCAnXFUwMDA4ZmZmZScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MjE3NycubG93ZXIoKSwgJ1x1MjE3NycpCiAKLSAgICBAcmVxdWlyZXNfd2lkZV9idWlsZAorICAgIGRlZiB0ZXN0X2Nhc2Vmb2xkKHNlbGYpOgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdoZWxsbycuY2FzZWZvbGQoKSwgJ2hlbGxvJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaEVMbG8nLmNhc2Vmb2xkKCksICdoZWxsbycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ8OfJy5jYXNlZm9sZCgpLCAnc3MnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCfvrIEnLmNhc2Vmb2xkKCksICdmaScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MDNhMycuY2FzZWZvbGQoKSwgJ1x1MDNjMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzNDVcdTAzYTMnLmNhc2Vmb2xkKCksICdhXHUwM2I5XHUwM2MzJykKKwogICAgIGRlZiB0ZXN0X3VwcGVyKHNlbGYpOgogICAgICAgICBzdHJpbmdfdGVzdHMuQ29tbW9uVGVzdC50ZXN0X3VwcGVyKHNlbGYpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1xVMDAwMTA0NEYnLnVwcGVyKCksICdcVTAwMDEwNDI3JykKQEAgLTU0MSw4ICs1ODIsMTQgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAnXFUwMDAxMDQyN1xVMDAwMTA0MjcnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdYXFUwMDAxMDQyN3hcVTAwMDEwNDRGJy51cHBlcigpLAogICAgICAgICAgICAgICAgICAgICAgICAgICdYXFUwMDAxMDQyN1hcVTAwMDEwNDI3JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgn76yBJy51cHBlcigpLCAnRkknKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAxMzAnLnVwcGVyKCksICdcdTAxMzAnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAzYTMnLnVwcGVyKCksICdcdTAzYTMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCfDnycudXBwZXIoKSwgJ1NTJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHUxZmQyJy51cHBlcigpLCAnXHUwMzk5XHUwMzA4XHUwMzAwJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXFUwMDA4ZmZmZScudXBwZXIoKSwgJ1xVMDAwOGZmZmUnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTIxNzcnLnVwcGVyKCksICdcdTIxNjcnKQogCi0gICAgQHJlcXVpcmVzX3dpZGVfYnVpbGQKICAgICBkZWYgdGVzdF9jYXBpdGFsaXplKHNlbGYpOgogICAgICAgICBzdHJpbmdfdGVzdHMuQ29tbW9uVGVzdC50ZXN0X2NhcGl0YWxpemUoc2VsZikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXFUwMDAxMDQ0RicuY2FwaXRhbGl6ZSgpLCAnXFUwMDAxMDQyNycpCkBAIC01NTQsOCArNjAxLDEyIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xVMDAwMTA0MjdcVTAwMDEwNDRGJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnWFxVMDAwMTA0Mjd4XFUwMDAxMDQ0RicuY2FwaXRhbGl6ZSgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICdYXFUwMDAxMDQ0RnhcVTAwMDEwNDRGJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaFx1MDEzMCcuY2FwaXRhbGl6ZSgpLCAnSFx1MDA2OVx1MDMwNycpCisgICAgICAgIGV4cCA9ICdcdTAzOTlcdTAzMDhcdTAzMDBcdTAwNjlcdTAzMDcnCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MWZkMlx1MDEzMCcuY2FwaXRhbGl6ZSgpLCBleHApCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ++sgW5uaXNoJy5jYXBpdGFsaXplKCksICdGSW5uaXNoJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnQVx1MDM0NVx1MDNhMycuY2FwaXRhbGl6ZSgpLCAnQVx1MDM0NVx1MDNjMicpCiAKLSAgICBAcmVxdWlyZXNfd2lkZV9idWlsZAogICAgIGRlZiB0ZXN0X3RpdGxlKHNlbGYpOgogICAgICAgICBzdHJpbmdfdGVzdHMuTWl4aW5TdHJVbmljb2RlVXNlclN0cmluZ1Rlc3QudGVzdF90aXRsZShzZWxmKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcVTAwMDEwNDRGJy50aXRsZSgpLCAnXFUwMDAxMDQyNycpCkBAIC01NjksOCArNjIwLDEwIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xVMDAwMTA0MjdcVTAwMDEwNDRGIFxVMDAwMTA0MjdcVTAwMDEwNDRGJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnWFxVMDAwMTA0Mjd4XFUwMDAxMDQ0RiBYXFUwMDAxMDQyN3hcVTAwMDEwNDRGJy50aXRsZSgpLAogICAgICAgICAgICAgICAgICAgICAgICAgICdYXFUwMDAxMDQ0RnhcVTAwMDEwNDRGIFhcVTAwMDEwNDRGeFxVMDAwMTA0NEYnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCfvrIFOTklTSCcudGl0bGUoKSwgJ0Zpbm5pc2gnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdBXHUwM2EzIFx1MWZhMXh5Jy50aXRsZSgpLCAnQVx1MDNjMiBcdTFmYTl4eScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzYTNBJy50aXRsZSgpLCAnQVx1MDNjM2EnKQogCi0gICAgQHJlcXVpcmVzX3dpZGVfYnVpbGQKICAgICBkZWYgdGVzdF9zd2FwY2FzZShzZWxmKToKICAgICAgICAgc3RyaW5nX3Rlc3RzLkNvbW1vblRlc3QudGVzdF9zd2FwY2FzZShzZWxmKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcVTAwMDEwNDRGJy5zd2FwY2FzZSgpLCAnXFUwMDAxMDQyNycpCkBAIC01ODMsNiArNjM2LDE5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgJ1xVMDAwMTA0MjdcVTAwMDEwNDRGJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnWFxVMDAwMTA0Mjd4XFUwMDAxMDQ0Ricuc3dhcGNhc2UoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAneFxVMDAwMTA0NEZYXFUwMDAxMDQyNycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ++sgScuc3dhcGNhc2UoKSwgJ0ZJJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHUwMTMwJy5zd2FwY2FzZSgpLCAnXHUwMDY5XHUwMzA3JykKKyAgICAgICAgIyBTcGVjaWFsIGNhc2UgZm9yIEdSRUVLIENBUElUQUwgTEVUVEVSIFNJR01BIFUrMDNBMworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAzYTMnLnN3YXBjYXNlKCksICdcdTAzYzMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAzNDVcdTAzYTMnLnN3YXBjYXNlKCksICdcdTAzOTlcdTAzYzMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdBXHUwMzQ1XHUwM2EzJy5zd2FwY2FzZSgpLCAnYVx1MDM5OVx1MDNjMicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzNDVcdTAzYTNhJy5zd2FwY2FzZSgpLCAnYVx1MDM5OVx1MDNjM0EnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdBXHUwMzQ1XHUwM2EzJy5zd2FwY2FzZSgpLCAnYVx1MDM5OVx1MDNjMicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ0FcdTAzYTNcdTAzNDUnLnN3YXBjYXNlKCksICdhXHUwM2MyXHUwMzk5JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHUwM2EzXHUwMzQ1ICcuc3dhcGNhc2UoKSwgJ1x1MDNjM1x1MDM5OSAnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTAzYTMnLnN3YXBjYXNlKCksICdcdTAzYzMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCfDnycuc3dhcGNhc2UoKSwgJ1NTJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHUxZmQyJy5zd2FwY2FzZSgpLCAnXHUwMzk5XHUwMzA4XHUwMzAwJykKIAogICAgIGRlZiB0ZXN0X2NvbnRhaW5zKHNlbGYpOgogICAgICAgICAjIFRlc3RpbmcgVW5pY29kZSBjb250YWlucyBtZXRob2QKQEAgLTc3Niw3ICs4NDIsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCd7MCFzfScuZm9ybWF0KEcoJ2RhdGEnKSksICdzdHJpbmcgaXMgZGF0YScpCiAKICAgICAgICAgbXNnID0gJ29iamVjdC5fX2Zvcm1hdF9fIHdpdGggYSBub24tZW1wdHkgZm9ybWF0IHN0cmluZyBpcyBkZXByZWNhdGVkJwotICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKG1zZywgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZykpOgorICAgICAgICB3aXRoIHN1cHBvcnQuY2hlY2tfd2FybmluZ3MoKG1zZywgRGVwcmVjYXRpb25XYXJuaW5nKSk6CiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCd7MDpeMTB9Jy5mb3JtYXQoRSgnZGF0YScpKSwgJyBFKGRhdGEpICAnKQogICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnezA6XjEwc30nLmZvcm1hdChFKCdkYXRhJykpLCAnIEUoZGF0YSkgICcpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCd7MDo+MTVzfScuZm9ybWF0KEcoJ2RhdGEnKSksICcgc3RyaW5nIGlzIGRhdGEnKQpAQCAtMTAxMSwxMCArMTA3NywxMyBAQAogICAgICAgICBjbGFzcyBVbmljb2RlU3ViY2xhc3Moc3RyKToKICAgICAgICAgICAgIHBhc3MKIAotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotICAgICAgICAgICAgc3RyKFVuaWNvZGVTdWJjbGFzcygndW5pY29kZSBzdWJjbGFzcyBiZWNvbWVzIHVuaWNvZGUnKSksCi0gICAgICAgICAgICAndW5pY29kZSBzdWJjbGFzcyBiZWNvbWVzIHVuaWNvZGUnCi0gICAgICAgICkKKyAgICAgICAgZm9yIHRleHQgaW4gKCdhc2NpaScsICdceGU5JywgJ1x1MjBhYycsICdcVTAwMTBGRkZGJyk6CisgICAgICAgICAgICBzdWJjbGFzcyA9IFVuaWNvZGVTdWJjbGFzcyh0ZXh0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoc3ViY2xhc3MpLCB0ZXh0KQorICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc3ViY2xhc3MpLCBsZW4odGV4dCkpCisgICAgICAgICAgICBpZiB0ZXh0ID09ICdhc2NpaSc6CisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdWJjbGFzcy5lbmNvZGUoJ2FzY2lpJyksIGInYXNjaWknKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3ViY2xhc3MuZW5jb2RlKCd1dGYtOCcpLCBiJ2FzY2lpJykKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAgICAgICAgc3RyKCdzdHJpbmdzIGFyZSBjb252ZXJ0ZWQgdG8gdW5pY29kZScpLApAQCAtMTEyMCwxNSArMTE4OSwxMiBAQAogICAgIGRlZiB0ZXN0X2NvZGVjc191dGY4KHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCcnLmVuY29kZSgndXRmLTgnKSwgYicnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdTIwYWMnLmVuY29kZSgndXRmLTgnKSwgYidceGUyXHg4Mlx4YWMnKQotICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA9PSA2NTUzNToKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1ZDgwMFx1ZGMwMicuZW5jb2RlKCd1dGYtOCcpLCBiJ1x4ZjBceDkwXHg4MFx4ODInKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXHVkODRkXHVkYzU2Jy5lbmNvZGUoJ3V0Zi04JyksIGInXHhmMFx4YTNceDkxXHg5NicpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1xVMDAwMTAwMDInLmVuY29kZSgndXRmLTgnKSwgYidceGYwXHg5MFx4ODBceDgyJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnXFUwMDAyMzQ1NicuZW5jb2RlKCd1dGYtOCcpLCBiJ1x4ZjBceGEzXHg5MVx4OTYnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdcdWQ4MDAnLmVuY29kZSgndXRmLTgnLCAnc3Vycm9nYXRlcGFzcycpLCBiJ1x4ZWRceGEwXHg4MCcpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1ZGMwMCcuZW5jb2RlKCd1dGYtOCcsICdzdXJyb2dhdGVwYXNzJyksIGInXHhlZFx4YjBceDgwJykKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPT0gNjU1MzU6Ci0gICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAotICAgICAgICAgICAgICAgICgnXHVkODAwXHVkYzAyJyoxMDAwKS5lbmNvZGUoJ3V0Zi04JyksCi0gICAgICAgICAgICAgICAgYidceGYwXHg5MFx4ODBceDgyJyoxMDAwKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCgnXFUwMDAxMDAwMicqMTApLmVuY29kZSgndXRmLTgnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBiJ1x4ZjBceDkwXHg4MFx4ODInKjEwKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKAogICAgICAgICAgICAgJ1x1NmI2M1x1NzhiYVx1MzA2Ylx1OGEwMFx1MzA0Nlx1MzA2OFx1N2ZmYlx1OGEzM1x1MzA2ZicKICAgICAgICAgICAgICdcdTMwNTVcdTMwOGNcdTMwNjZcdTMwNDRcdTMwN2VcdTMwNWJcdTMwOTNcdTMwMDJcdTRlMDAnCkBAIC0xMzY2LDE4ICsxNDMyLDI1IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2hlbGxvJy5lbmNvZGUoJ2FzY2lpJyksIGInaGVsbG8nKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdoZWxsbycuZW5jb2RlKCd1dGYtNycpLCBiJ2hlbGxvJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaGVsbG8nLmVuY29kZSgndXRmLTgnKSwgYidoZWxsbycpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2hlbGxvJy5lbmNvZGUoJ3V0ZjgnKSwgYidoZWxsbycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2hlbGxvJy5lbmNvZGUoJ3V0Zi04JyksIGInaGVsbG8nKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKCdoZWxsbycuZW5jb2RlKCd1dGYtMTYtbGUnKSwgYidoXDAwMGVcMDAwbFwwMDBsXDAwMG9cMDAwJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCgnaGVsbG8nLmVuY29kZSgndXRmLTE2LWJlJyksIGInXDAwMGhcMDAwZVwwMDBsXDAwMGxcMDAwbycpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ2hlbGxvJy5lbmNvZGUoJ2xhdGluLTEnKSwgYidoZWxsbycpCiAKKyAgICAgICAgIyBEZWZhdWx0IGVuY29kaW5nIGlzIHV0Zi04CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoJ1x1MjYwMycuZW5jb2RlKCksIGInXHhlMlx4OThceDgzJykKKwogICAgICAgICAjIFJvdW5kdHJpcCBzYWZldHkgZm9yIEJNUCAoanVzdCB0aGUgZmlyc3QgMTAyNCBjaGFycykKICAgICAgICAgZm9yIGMgaW4gcmFuZ2UoMTAyNCk6CiAgICAgICAgICAgICB1ID0gY2hyKGMpCiAgICAgICAgICAgICBmb3IgZW5jb2RpbmcgaW4gKCd1dGYtNycsICd1dGYtOCcsICd1dGYtMTYnLCAndXRmLTE2LWxlJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3V0Zi0xNi1iZScsICdyYXdfdW5pY29kZV9lc2NhcGUnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndW5pY29kZV9lc2NhcGUnLCAndW5pY29kZV9pbnRlcm5hbCcpOgotICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKHUuZW5jb2RlKGVuY29kaW5nKSxlbmNvZGluZyksIHUpCisgICAgICAgICAgICAgICAgd2l0aCB3YXJuaW5ncy5jYXRjaF93YXJuaW5ncygpOgorICAgICAgICAgICAgICAgICAgICAjIHVuaWNvZGUtaW50ZXJuYWwgaGFzIGJlZW4gZGVwcmVjYXRlZAorICAgICAgICAgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKKworICAgICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih1LmVuY29kZShlbmNvZGluZyksZW5jb2RpbmcpLCB1KQogCiAgICAgICAgICMgUm91bmR0cmlwIHNhZmV0eSBmb3IgQk1QIChqdXN0IHRoZSBmaXJzdCAyNTYgY2hhcnMpCiAgICAgICAgIGZvciBjIGluIHJhbmdlKDI1Nik6CkBAIC0xMzkyLDE4ICsxNDY1LDIwIEBACiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIodS5lbmNvZGUoZW5jb2RpbmcpLGVuY29kaW5nKSwgdSkKIAogICAgICAgICAjIFJvdW5kdHJpcCBzYWZldHkgZm9yIG5vbi1CTVAgKGp1c3QgYSBmZXcgY2hhcnMpCi0gICAgICAgIHUgPSAnXFUwMDAxMDAwMVxVMDAwMjAwMDJcVTAwMDMwMDAzXFUwMDA0MDAwNFxVMDAwNTAwMDUnCi0gICAgICAgIGZvciBlbmNvZGluZyBpbiAoJ3V0Zi04JywgJ3V0Zi0xNicsICd1dGYtMTYtbGUnLCAndXRmLTE2LWJlJywKLSAgICAgICAgICAgICAgICAgICAgICAgICAjJ3Jhd191bmljb2RlX2VzY2FwZScsCi0gICAgICAgICAgICAgICAgICAgICAgICAgJ3VuaWNvZGVfZXNjYXBlJywgJ3VuaWNvZGVfaW50ZXJuYWwnKToKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKHUuZW5jb2RlKGVuY29kaW5nKSxlbmNvZGluZyksIHUpCisgICAgICAgIHdpdGggd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MoKToKKyAgICAgICAgICAgICMgdW5pY29kZS1pbnRlcm5hbCBoYXMgYmVlbiBkZXByZWNhdGVkCisgICAgICAgICAgICB3YXJuaW5ncy5zaW1wbGVmaWx0ZXIoImlnbm9yZSIsIERlcHJlY2F0aW9uV2FybmluZykKIAotICAgICAgICAjIFVURi04IG11c3QgYmUgcm91bmR0cmlwIHNhZmUgZm9yIGFsbCBVQ1MtMiBjb2RlIHBvaW50cwotICAgICAgICAjIFRoaXMgZXhjbHVkZXMgc3Vycm9nYXRlczogaW4gdGhlIGZ1bGwgcmFuZ2UsIHRoZXJlIHdvdWxkIGJlCi0gICAgICAgICMgYSBzdXJyb2dhdGUgcGFpciAoXHVkYmZmXHVkYzAwKSwgd2hpY2ggZ2V0cyBjb252ZXJ0ZWQgYmFjawotICAgICAgICAjIHRvIGEgbm9uLUJNUCBjaGFyYWN0ZXIgKFxVMDAxMGZjMDApCi0gICAgICAgIHUgPSAnJy5qb2luKG1hcChjaHIsIGxpc3QocmFuZ2UoMCwweGQ4MDApKSArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3QocmFuZ2UoMHhlMDAwLDB4MTAwMDApKSkpCisgICAgICAgICAgICB1ID0gJ1xVMDAwMTAwMDFcVTAwMDIwMDAyXFUwMDAzMDAwM1xVMDAwNDAwMDRcVTAwMDUwMDA1JworICAgICAgICAgICAgZm9yIGVuY29kaW5nIGluICgndXRmLTgnLCAndXRmLTE2JywgJ3V0Zi0xNi1sZScsICd1dGYtMTYtYmUnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncmF3X3VuaWNvZGVfZXNjYXBlJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3VuaWNvZGVfZXNjYXBlJywgJ3VuaWNvZGVfaW50ZXJuYWwnKToKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih1LmVuY29kZShlbmNvZGluZyksZW5jb2RpbmcpLCB1KQorCisgICAgICAgICMgVVRGLTggbXVzdCBiZSByb3VuZHRyaXAgc2FmZSBmb3IgYWxsIGNvZGUgcG9pbnRzCisgICAgICAgICMgKGV4Y2VwdCBzdXJyb2dhdGVzLCB3aGljaCBhcmUgZm9yYmlkZGVuKS4KKyAgICAgICAgdSA9ICcnLmpvaW4obWFwKGNociwgbGlzdChyYW5nZSgwLCAweGQ4MDApKSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3QocmFuZ2UoMHhlMDAwLCAweDExMDAwMCkpKSkKICAgICAgICAgZm9yIGVuY29kaW5nIGluICgndXRmLTgnLCk6CiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cih1LmVuY29kZShlbmNvZGluZyksZW5jb2RpbmcpLCB1KQogCkBAIC0xNTg4LDE3ICsxNjYzLDM5IEBACiAgICAgICAgICAgICByZXR1cm4KICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoT3ZlcmZsb3dFcnJvciwgJ3RcdHRcdCcuZXhwYW5kdGFicywgc3lzLm1heHNpemUpCiAKKyAgICBAc3VwcG9ydC5jcHl0aG9uX29ubHkKKyAgICBkZWYgdGVzdF9leHBhbmR0YWJzX29wdGltaXphdGlvbihzZWxmKToKKyAgICAgICAgcyA9ICdhYmMnCisgICAgICAgIHNlbGYuYXNzZXJ0SXMocy5leHBhbmR0YWJzKCksIHMpCisKICAgICBkZWYgdGVzdF9yYWlzZU1lbUVycm9yKHNlbGYpOgotICAgICAgICAjIEVuc3VyZSB0aGF0IHRoZSBmcmVlbGlzdCBjb250YWlucyBhIGNvbnNpc3RlbnQgb2JqZWN0LCBldmVuCi0gICAgICAgICMgd2hlbiBhIHN0cmluZyBhbGxvY2F0aW9uIGZhaWxzIHdpdGggYSBNZW1vcnlFcnJvci4KLSAgICAgICAgIyBUaGlzIHVzZWQgdG8gY3Jhc2ggdGhlIGludGVycHJldGVyLAotICAgICAgICAjIG9yIGxlYWsgcmVmZXJlbmNlcyB3aGVuIHRoZSBudW1iZXIgd2FzIHNtYWxsZXIuCi0gICAgICAgIGNoYXJ3aWR0aCA9IDQgaWYgc3lzLm1heHVuaWNvZGUgPj0gMHgxMDAwMCBlbHNlIDIKLSAgICAgICAgIyBOb3RlOiBzeXMubWF4c2l6ZSBpcyBoYWxmIG9mIHRoZSBhY3R1YWwgbWF4IGFsbG9jYXRpb24gYmVjYXVzZSBvZgotICAgICAgICAjIHRoZSBzaWduZWRuZXNzIG9mIFB5X3NzaXplX3QuCi0gICAgICAgIGFsbG9jID0gbGFtYmRhOiAiYSIgKiAoc3lzLm1heHNpemUgLy8gY2hhcndpZHRoICogMikKLSAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoTWVtb3J5RXJyb3IsIGFsbG9jKQotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhNZW1vcnlFcnJvciwgYWxsb2MpCisgICAgICAgIGlmIHN0cnVjdC5jYWxjc2l6ZSgnUCcpID09IDg6CisgICAgICAgICAgICAjIDY0IGJpdHMgcG9pbnRlcnMKKyAgICAgICAgICAgIGFzY2lpX3N0cnVjdF9zaXplID0gNDgKKyAgICAgICAgICAgIGNvbXBhY3Rfc3RydWN0X3NpemUgPSA3MgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgIyAzMiBiaXRzIHBvaW50ZXJzCisgICAgICAgICAgICBhc2NpaV9zdHJ1Y3Rfc2l6ZSA9IDI0CisgICAgICAgICAgICBjb21wYWN0X3N0cnVjdF9zaXplID0gMzYKKworICAgICAgICBmb3IgY2hhciBpbiAoJ2EnLCAnXHhlOScsICdcdTIwYWMnLCAnXFUwMDEwZmZmZicpOgorICAgICAgICAgICAgY29kZSA9IG9yZChjaGFyKQorICAgICAgICAgICAgaWYgY29kZSA8IDB4MTAwOgorICAgICAgICAgICAgICAgIGNoYXJfc2l6ZSA9IDEgICMgc2l6ZW9mKFB5X1VDUzEpCisgICAgICAgICAgICAgICAgc3RydWN0X3NpemUgPSBhc2NpaV9zdHJ1Y3Rfc2l6ZQorICAgICAgICAgICAgZWxpZiBjb2RlIDwgMHgxMDAwMDoKKyAgICAgICAgICAgICAgICBjaGFyX3NpemUgPSAyICAjIHNpemVvZihQeV9VQ1MyKQorICAgICAgICAgICAgICAgIHN0cnVjdF9zaXplID0gY29tcGFjdF9zdHJ1Y3Rfc2l6ZQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBjaGFyX3NpemUgPSA0ICAjIHNpemVvZihQeV9VQ1M0KQorICAgICAgICAgICAgICAgIHN0cnVjdF9zaXplID0gY29tcGFjdF9zdHJ1Y3Rfc2l6ZQorICAgICAgICAgICAgIyBOb3RlOiBzeXMubWF4c2l6ZSBpcyBoYWxmIG9mIHRoZSBhY3R1YWwgbWF4IGFsbG9jYXRpb24gYmVjYXVzZSBvZgorICAgICAgICAgICAgIyB0aGUgc2lnbmVkbmVzcyBvZiBQeV9zc2l6ZV90LiBTdHJpbmdzIG9mIG1heGxlbi0xIHNob3VsZCBpbiBwcmluY2lwbGUKKyAgICAgICAgICAgICMgYmUgYWxsb2NhdGFibGUsIGdpdmVuIGVub3VnaCBtZW1vcnkuCisgICAgICAgICAgICBtYXhsZW4gPSAoKHN5cy5tYXhzaXplIC0gc3RydWN0X3NpemUpIC8vIGNoYXJfc2l6ZSkKKyAgICAgICAgICAgIGFsbG9jID0gbGFtYmRhOiBjaGFyICogbWF4bGVuCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhNZW1vcnlFcnJvciwgYWxsb2MpCisgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhNZW1vcnlFcnJvciwgYWxsb2MpCiAKICAgICBkZWYgdGVzdF9mb3JtYXRfc3ViY2xhc3Moc2VsZik6CiAgICAgICAgIGNsYXNzIFMoc3RyKToKQEAgLTE2MTEsMTEgKzE3MDgsMTAgQEAKICAgICAjIFRlc3QgUHlVbmljb2RlX0Zyb21Gb3JtYXQoKQogICAgIGRlZiB0ZXN0X2Zyb21fZm9ybWF0KHNlbGYpOgogICAgICAgICBzdXBwb3J0LmltcG9ydF9tb2R1bGUoJ2N0eXBlcycpCi0gICAgICAgIGZyb20gY3R5cGVzIGltcG9ydCBweXRob25hcGksIHB5X29iamVjdCwgY19pbnQKLSAgICAgICAgaWYgc3lzLm1heHVuaWNvZGUgPT0gNjU1MzU6Ci0gICAgICAgICAgICBuYW1lID0gIlB5VW5pY29kZVVDUzJfRnJvbUZvcm1hdCIKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIG5hbWUgPSAiUHlVbmljb2RlVUNTNF9Gcm9tRm9ybWF0IgorICAgICAgICBmcm9tIGN0eXBlcyBpbXBvcnQgKHB5dGhvbmFwaSwgcHlfb2JqZWN0LAorICAgICAgICAgICAgY19pbnQsIGNfbG9uZywgY19sb25nbG9uZywgY19zc2l6ZV90LAorICAgICAgICAgICAgY191aW50LCBjX3Vsb25nLCBjX3Vsb25nbG9uZywgY19zaXplX3QpCisgICAgICAgIG5hbWUgPSAiUHlVbmljb2RlX0Zyb21Gb3JtYXQiCiAgICAgICAgIF9QeVVuaWNvZGVfRnJvbUZvcm1hdCA9IGdldGF0dHIocHl0aG9uYXBpLCBuYW1lKQogICAgICAgICBfUHlVbmljb2RlX0Zyb21Gb3JtYXQucmVzdHlwZSA9IHB5X29iamVjdAogCkBAIC0xNjM2LDEzICsxNzMyLDQwIEBACiAgICAgICAgICAgICAnc3RyaW5nLCBnb3QgYSBub24tQVNDSUkgYnl0ZTogMHhlOSQnLAogICAgICAgICAgICAgUHlVbmljb2RlX0Zyb21Gb3JtYXQsIGIndW5pY29kZVx4ZTk9JXMnLCAnYXNjaWknKQogCisgICAgICAgICMgdGVzdCAiJWMiCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclYycsIGNfaW50KDB4YWJjZCkpLCAnXHVhYmNkJykKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyVjJywgY19pbnQoMHgxMGZmZmYpKSwgJ1xVMDAxMGZmZmYnKQogCi0gICAgICAgICMgb3RoZXIgdGVzdHMKKyAgICAgICAgIyB0ZXN0ICIlIgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJScpLCAnJScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclJScpLCAnJScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclJXMnKSwgJyVzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJ1slJV0nKSwgJ1slXScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclJSVzJywgYidhYmMnKSwgJyVhYmMnKQorCisgICAgICAgICMgdGVzdCBpbnRlZ2VyIGZvcm1hdHMgKCVpLCAlZCwgJXUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclMDNpJywgY19pbnQoMTApKSwgJzAxMCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclMC40aScsIGNfaW50KDEwKSksICcwMDEwJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyVpJywgY19pbnQoLTEyMykpLCAnLTEyMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclbGknLCBjX2xvbmcoLTEyMykpLCAnLTEyMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclbGxpJywgY19sb25nbG9uZygtMTIzKSksICctMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyV6aScsIGNfc3NpemVfdCgtMTIzKSksICctMTIzJykKKworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJWQnLCBjX2ludCgtMTIzKSksICctMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyVsZCcsIGNfbG9uZygtMTIzKSksICctMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyVsbGQnLCBjX2xvbmdsb25nKC0xMjMpKSwgJy0xMjMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJXpkJywgY19zc2l6ZV90KC0xMjMpKSwgJy0xMjMnKQorCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYicldScsIGNfdWludCgxMjMpKSwgJzEyMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclbHUnLCBjX3Vsb25nKDEyMykpLCAnMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyVsbHUnLCBjX3Vsb25nbG9uZygxMjMpKSwgJzEyMycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclenUnLCBjX3NpemVfdCgxMjMpKSwgJzEyMycpCisKKyAgICAgICAgIyB0ZXN0ICVBCiAgICAgICAgIHRleHQgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdChiJyUlQTolQScsICdhYmNceGU5XHVhYmNkXFUwMDEwZmZmZicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgciIlQTonYWJjXHhlOVx1YWJjZFxVMDAxMGZmZmYnIikKIAorICAgICAgICAjIHRlc3QgJVYKICAgICAgICAgdGV4dCA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KGIncmVwcj0lVicsICdhYmMnLCBiJ3h5eicpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodGV4dCwgJ3JlcHI9YWJjJykKIApAQCAtMTY1Niw2ICsxNzc5LDEzIEBACiAgICAgICAgIHRleHQgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdChiJ3JlcHI9JVYnLCBOb25lLCBiJ2FiY1x4ZmYnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRleHQsICdyZXByPWFiY1x1ZmZmZCcpCiAKKyAgICAgICAgIyBub3Qgc3VwcG9ydGVkOiBjb3B5IHRoZSByYXcgZm9ybWF0IHN0cmluZy4gdGhlc2UgdGVzdHMgYXJlIGp1c3QgaGVyZQorICAgICAgICAjIHRvIGNoZWNrIGZvciBjcmFzaHMgYW5kIHNob3VsZCBub3QgYmUgY29uc2lkZXJlZCBhcyBzcGVjaWZpY2F0aW9ucworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJTElcycsIGInYWJjJyksICclcycpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclMWFiYycpLCAnJTFhYmMnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFB5VW5pY29kZV9Gcm9tRm9ybWF0KGInJStpJywgY19pbnQoMTApKSwgJyUraScpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoUHlVbmljb2RlX0Zyb21Gb3JtYXQoYiclLiVzJywgYidhYmMnKSwgJyUuJXMnKQorCiAgICAgIyBUZXN0IFB5VW5pY29kZV9Bc1dpZGVDaGFyKCkKICAgICBkZWYgdGVzdF9hc3dpZGVjaGFyKHNlbGYpOgogICAgICAgICBmcm9tIF90ZXN0Y2FwaSBpbXBvcnQgdW5pY29kZV9hc3dpZGVjaGFyCkBAIC0xNzE2LDYgKzE4NDYsNTEgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzaXplLCBuY2hhcikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh3Y2hhciwgbm9uYm1wICsgJ1wwJykKIAorICAgIGRlZiB0ZXN0X3N1YmNsYXNzX2FkZChzZWxmKToKKyAgICAgICAgY2xhc3MgUyhzdHIpOgorICAgICAgICAgICAgZGVmIF9fYWRkX18oc2VsZiwgbyk6CisgICAgICAgICAgICAgICAgcmV0dXJuICIzIgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKFMoIjQiKSArIFMoIjUiKSwgIjMiKQorICAgICAgICBjbGFzcyBTKHN0cik6CisgICAgICAgICAgICBkZWYgX19pYWRkX18oc2VsZiwgbyk6CisgICAgICAgICAgICAgICAgcmV0dXJuICIzIgorICAgICAgICBzID0gUygiMSIpCisgICAgICAgIHMgKz0gIjQiCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocywgIjMiKQorCisgICAgZGVmIHRlc3RfZW5jb2RlX2RlY2ltYWwoc2VsZik6CisgICAgICAgIGZyb20gX3Rlc3RjYXBpIGltcG9ydCB1bmljb2RlX2VuY29kZWRlY2ltYWwKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlX2VuY29kZWRlY2ltYWwoJzEyMycpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGInMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlX2VuY29kZWRlY2ltYWwoJ1x1MDY2My5cdTA2NjFcdTA2NjQnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBiJzMuMTQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVfZW5jb2RlZGVjaW1hbCgiXE57RU0gU1BBQ0V9My4xNFxOe0VOIFNQQUNFfSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgIGInIDMuMTQgJykKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVW5pY29kZUVuY29kZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICB1bmljb2RlX2VuY29kZWRlY2ltYWwsICIxMjNcdTIwYWMiLCAic3RyaWN0IikKKyAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXNSZWdleCgKKyAgICAgICAgICAgIFZhbHVlRXJyb3IsCisgICAgICAgICAgICAiXidkZWNpbWFsJyBjb2RlYyBjYW4ndCBlbmNvZGUgY2hhcmFjdGVyIiwKKyAgICAgICAgICAgIHVuaWNvZGVfZW5jb2RlZGVjaW1hbCwgIjEyM1x1MjBhYyIsICJyZXBsYWNlIikKKworICAgIGRlZiB0ZXN0X3RyYW5zZm9ybV9kZWNpbWFsKHNlbGYpOgorICAgICAgICBmcm9tIF90ZXN0Y2FwaSBpbXBvcnQgdW5pY29kZV90cmFuc2Zvcm1kZWNpbWFsdG9hc2NpaSBhcyB0cmFuc2Zvcm1fZGVjaW1hbAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYW5zZm9ybV9kZWNpbWFsKCcxMjMnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAnMTIzJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFuc2Zvcm1fZGVjaW1hbCgnXHUwNjYzLlx1MDY2MVx1MDY2NCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICczLjE0JykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFuc2Zvcm1fZGVjaW1hbCgiXE57RU0gU1BBQ0V9My4xNFxOe0VOIFNQQUNFfSIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICJcTntFTSBTUEFDRX0zLjE0XE57RU4gU1BBQ0V9IikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFuc2Zvcm1fZGVjaW1hbCgnMTIzXHUyMGFjJyksCisgICAgICAgICAgICAgICAgICAgICAgICAgJzEyM1x1MjBhYycpCisKKyAgICBkZWYgdGVzdF9nZXRuZXdhcmdzKHNlbGYpOgorICAgICAgICB0ZXh0ID0gJ2FiYycKKyAgICAgICAgYXJncyA9IHRleHQuX19nZXRuZXdhcmdzX18oKQorICAgICAgICBzZWxmLmFzc2VydElzTm90KGFyZ3NbMF0sIHRleHQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoYXJnc1swXSwgdGV4dCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oYXJncyksIDEpCisKIAogY2xhc3MgU3RyaW5nTW9kdWxlVGVzdCh1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAgZGVmIHRlc3RfZm9ybWF0dGVyX3BhcnNlcihzZWxmKToKQEAgLTE3NjcsNDIgKzE5NDIsNiBAQAogICAgICAgICAgICAgXV0pCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgX3N0cmluZy5mb3JtYXR0ZXJfZmllbGRfbmFtZV9zcGxpdCwgMSkKIAotICAgIGRlZiB0ZXN0X2VuY29kZV9kZWNpbWFsKHNlbGYpOgotICAgICAgICBmcm9tIF90ZXN0Y2FwaSBpbXBvcnQgdW5pY29kZV9lbmNvZGVkZWNpbWFsCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5pY29kZV9lbmNvZGVkZWNpbWFsKCcxMjMnKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBiJzEyMycpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5pY29kZV9lbmNvZGVkZWNpbWFsKCdcdTA2NjMuXHUwNjYxXHUwNjY0JyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgYiczLjE0JykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlX2VuY29kZWRlY2ltYWwoIlxOe0VNIFNQQUNFfTMuMTRcTntFTiBTUEFDRX0iKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBiJyAzLjE0ICcpCi0gICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFVuaWNvZGVFbmNvZGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZV9lbmNvZGVkZWNpbWFsLCAiMTIzXHUyMGFjIiwgInN0cmljdCIpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5pY29kZV9lbmNvZGVkZWNpbWFsKCIxMjNcdTIwYWMiLCAicmVwbGFjZSIpLAotICAgICAgICAgICAgICAgICAgICAgICAgIGInMTIzPycpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5pY29kZV9lbmNvZGVkZWNpbWFsKCIxMjNcdTIwYWMiLCAiaWdub3JlIiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgYicxMjMnKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVfZW5jb2RlZGVjaW1hbCgiMTIzXHUyMGFjIiwgInhtbGNoYXJyZWZyZXBsYWNlIiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgYicxMjMmIzgzNjQ7JykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlX2VuY29kZWRlY2ltYWwoIjEyM1x1MjBhYyIsICJiYWNrc2xhc2hyZXBsYWNlIiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgYicxMjNcXHUyMGFjJykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1bmljb2RlX2VuY29kZWRlY2ltYWwoIjEyM1x1MjBhY1xOe0VNIFNQQUNFfSIsICJyZXBsYWNlIiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgYicxMjM/ICcpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodW5pY29kZV9lbmNvZGVkZWNpbWFsKCIxMjNcdTIwYWNcdTIwYWMiLCAicmVwbGFjZSIpLAotICAgICAgICAgICAgICAgICAgICAgICAgIGInMTIzPz8nKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHVuaWNvZGVfZW5jb2RlZGVjaW1hbCgiMTIzXHUyMGFjXHUwNjYwIiwgInJlcGxhY2UiKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBiJzEyMz8wJykKLQotICAgIGRlZiB0ZXN0X3RyYW5zZm9ybV9kZWNpbWFsKHNlbGYpOgotICAgICAgICBmcm9tIF90ZXN0Y2FwaSBpbXBvcnQgdW5pY29kZV90cmFuc2Zvcm1kZWNpbWFsdG9hc2NpaSBhcyB0cmFuc2Zvcm1fZGVjaW1hbAotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRyYW5zZm9ybV9kZWNpbWFsKCcxMjMnKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAnMTIzJykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFuc2Zvcm1fZGVjaW1hbCgnXHUwNjYzLlx1MDY2MVx1MDY2NCcpLAotICAgICAgICAgICAgICAgICAgICAgICAgICczLjE0JykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFuc2Zvcm1fZGVjaW1hbCgiXE57RU0gU1BBQ0V9My4xNFxOe0VOIFNQQUNFfSIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICJcTntFTSBTUEFDRX0zLjE0XE57RU4gU1BBQ0V9IikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0cmFuc2Zvcm1fZGVjaW1hbCgnMTIzXHUyMGFjJyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgJzEyM1x1MjBhYycpCi0KIAogZGVmIHRlc3RfbWFpbigpOgogICAgIHN1cHBvcnQucnVuX3VuaXR0ZXN0KF9fbmFtZV9fKQpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF91bmljb2RlX2ZpbGUucHkgYi9MaWIvdGVzdC90ZXN0X3VuaWNvZGVfZmlsZS5weQppbmRleCA2YzIwMTFhLi5mYWE4ZGEzIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3VuaWNvZGVfZmlsZS5weQorKysgYi9MaWIvdGVzdC90ZXN0X3VuaWNvZGVfZmlsZS5weQpAQCAtNiw3ICs2LDcgQEAKIAogaW1wb3J0IHVuaXR0ZXN0CiBmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgKHJ1bl91bml0dGVzdCwgcm10cmVlLAotICAgIFRFU1RGTl9FTkNPRElORywgVEVTVEZOX1VOSUNPREUsIFRFU1RGTl9VTkVOQ09EQUJMRSkKKyAgICBURVNURk5fRU5DT0RJTkcsIFRFU1RGTl9VTklDT0RFLCBURVNURk5fVU5FTkNPREFCTEUsIGNyZWF0ZV9lbXB0eV9maWxlKQogCiBpZiBub3Qgb3MucGF0aC5zdXBwb3J0c191bmljb2RlX2ZpbGVuYW1lczoKICAgICB0cnk6CkBAIC01NiwxNiArNTYsMjAgQEAKICAgICAgICAgIyBTaG91bGQgYmUgYWJsZSB0byByZW5hbWUgdGhlIGZpbGUgdXNpbmcgZWl0aGVyIG5hbWUuCiAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShmaWxlbmFtZTEpKSAjIG11c3QgZXhpc3QuCiAgICAgICAgIG9zLnJlbmFtZShmaWxlbmFtZTEsIGZpbGVuYW1lMiArICIubmV3IikKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxlKGZpbGVuYW1lMSsiLm5ldyIpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguaXNmaWxlKGZpbGVuYW1lMikpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmlzZmlsZShmaWxlbmFtZTEgKyAnLm5ldycpKQogICAgICAgICBvcy5yZW5hbWUoZmlsZW5hbWUxICsgIi5uZXciLCBmaWxlbmFtZTIpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uob3MucGF0aC5pc2ZpbGUoZmlsZW5hbWUxICsgJy5uZXcnKSkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG9zLnBhdGguaXNmaWxlKGZpbGVuYW1lMikpCiAKICAgICAgICAgc2h1dGlsLmNvcHkoZmlsZW5hbWUxLCBmaWxlbmFtZTIgKyAiLm5ldyIpCiAgICAgICAgIG9zLnVubGluayhmaWxlbmFtZTEgKyAiLm5ldyIpICMgcmVtb3ZlIHVzaW5nIGVxdWl2IG5hbWUuCiAgICAgICAgICMgQW5kIGEgY291cGxlIG9mIG1vdmVzLCBvbmUgdXNpbmcgZWFjaCBuYW1lLgogICAgICAgICBzaHV0aWwubW92ZShmaWxlbmFtZTEsIGZpbGVuYW1lMiArICIubmV3IikKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdCBvcy5wYXRoLmV4aXN0cyhmaWxlbmFtZTIpKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKG9zLnBhdGguZXhpc3RzKGZpbGVuYW1lMikpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShvcy5wYXRoLmV4aXN0cyhmaWxlbmFtZTEgKyAnLm5ldycpKQogICAgICAgICBzaHV0aWwubW92ZShmaWxlbmFtZTEgKyAiLm5ldyIsIGZpbGVuYW1lMikKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhmaWxlbmFtZTIgKyAnLm5ldycpKQogICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5leGlzdHMoZmlsZW5hbWUxKSkKICAgICAgICAgIyBOb3RlIC0gZHVlIHRvIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBzaHV0aWwubW92ZSwKICAgICAgICAgIyBpdCB0cmllcyBhIHJlbmFtZSBmaXJzdC4gIFRoaXMgb25seSBmYWlscyBvbiBXaW5kb3dzIHdoZW4gb24KQEAgLTczLDEwICs3NywxMiBAQAogICAgICAgICAjIFNvIHdlIHRlc3QgdGhlIHNodXRpbC5jb3B5MiBmdW5jdGlvbiwgd2hpY2ggaXMgdGhlIHRoaW5nIG1vc3QKICAgICAgICAgIyBsaWtlbHkgdG8gZmFpbC4KICAgICAgICAgc2h1dGlsLmNvcHkyKGZpbGVuYW1lMSwgZmlsZW5hbWUyICsgIi5uZXciKQorICAgICAgICBzZWxmLmFzc2VydFRydWUob3MucGF0aC5pc2ZpbGUoZmlsZW5hbWUxICsgJy5uZXcnKSkKICAgICAgICAgb3MudW5saW5rKGZpbGVuYW1lMSArICIubmV3IikKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShvcy5wYXRoLmV4aXN0cyhmaWxlbmFtZTIgKyAnLm5ldycpKQogCiAgICAgZGVmIF9kb19kaXJlY3Rvcnkoc2VsZiwgbWFrZV9uYW1lLCBjaGRpcl9uYW1lKToKLSAgICAgICAgY3dkID0gb3MuZ2V0Y3dkYigpCisgICAgICAgIGN3ZCA9IG9zLmdldGN3ZCgpCiAgICAgICAgIGlmIG9zLnBhdGguaXNkaXIobWFrZV9uYW1lKToKICAgICAgICAgICAgIHJtdHJlZShtYWtlX25hbWUpCiAgICAgICAgIG9zLm1rZGlyKG1ha2VfbmFtZSkKQEAgLTk5LDggKzEwNSw3IEBACiAgICAgIyB0b3AtbGV2ZWwgJ3Rlc3QnIGZ1bmN0aW9ucyB3b3VsZCBiZSBpZiB0aGV5IGNvdWxkIHRha2UgcGFyYW1zCiAgICAgZGVmIF90ZXN0X3NpbmdsZShzZWxmLCBmaWxlbmFtZSk6CiAgICAgICAgIHJlbW92ZV9pZl9leGlzdHMoZmlsZW5hbWUpCi0gICAgICAgIGYgPSBvcGVuKGZpbGVuYW1lLCAidyIpCi0gICAgICAgIGYuY2xvc2UoKQorICAgICAgICBjcmVhdGVfZW1wdHlfZmlsZShmaWxlbmFtZSkKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgc2VsZi5fZG9fc2luZ2xlKGZpbGVuYW1lKQogICAgICAgICBmaW5hbGx5OgpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF91bmljb2RlZGF0YS5weSBiL0xpYi90ZXN0L3Rlc3RfdW5pY29kZWRhdGEucHkKaW5kZXggOTc0NDI1Ni4uZjc3NWFlYSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF91bmljb2RlZGF0YS5weQorKysgYi9MaWIvdGVzdC90ZXN0X3VuaWNvZGVkYXRhLnB5CkBAIC0yMSw3ICsyMSw3IEBACiBjbGFzcyBVbmljb2RlTWV0aG9kc1Rlc3QodW5pdHRlc3QuVGVzdENhc2UpOgogCiAgICAgIyB1cGRhdGUgdGhpcywgaWYgdGhlIGRhdGFiYXNlIGNoYW5nZXMKLSAgICBleHBlY3RlZGNoZWNrc3VtID0gJzIxYjkwZjFhZWQwMDA4MWI4MWNhNzk0MmIyMjE5NmFmMDkwMDE1YTAnCisgICAgZXhwZWN0ZWRjaGVja3N1bSA9ICdkZjBiM2NhNjc4NWEwNzBiMjFmODM3YjIyN2RiZGJkZmYzYzJlOTIxJwogCiAgICAgZGVmIHRlc3RfbWV0aG9kX2NoZWNrc3VtKHNlbGYpOgogICAgICAgICBoID0gaGFzaGxpYi5zaGExKCkKQEAgLTEwOCw2ICsxMDgsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuZGlnaXQoJ1x1MjE1YicsIE5vbmUpLCBOb25lKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuZGlnaXQoJ1x1MjQ2OCcpLCA5KQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuZGlnaXQoJ1xVMDAwMjAwMDAnLCBOb25lKSwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmRpZ2l0KCdcVTAwMDFEN0ZEJyksIDcpCiAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLmRiLmRpZ2l0KQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuZGIuZGlnaXQsICd4eCcpCkBAIC0xMjAsNiArMTIxLDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLm51bWVyaWMoJ1x1MjQ2OCcpLCA5LjApCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYi5udW1lcmljKCdcdWE2MjcnKSwgNy4wKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIubnVtZXJpYygnXFUwMDAyMDAwMCcsIE5vbmUpLCBOb25lKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIubnVtZXJpYygnXFUwMDAxMDEyQScpLCA5MDAwKQogCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFR5cGVFcnJvciwgc2VsZi5kYi5udW1lcmljKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuZGIubnVtZXJpYywgJ3h4JykKQEAgLTEzMSw2ICsxMzMsNyBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuZGVjaW1hbCgnXHUyMTViJywgTm9uZSksIE5vbmUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYi5kZWNpbWFsKCdcdTI0NjgnLCBOb25lKSwgTm9uZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmRlY2ltYWwoJ1xVMDAwMjAwMDAnLCBOb25lKSwgTm9uZSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmRlY2ltYWwoJ1xVMDAwMUQ3RkQnKSwgNykKIAogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuZGIuZGVjaW1hbCkKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLmRiLmRlY2ltYWwsICd4eCcpCkBAIC0xNDEsNiArMTQ0LDcgQEAKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmNhdGVnb3J5KCdhJyksICdMbCcpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc2VsZi5kYi5jYXRlZ29yeSgnQScpLCAnTHUnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuY2F0ZWdvcnkoJ1xVMDAwMjAwMDAnKSwgJ0xvJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmNhdGVnb3J5KCdcVTAwMDEwMTJBJyksICdObycpCiAKICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLmRiLmNhdGVnb3J5KQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHNlbGYuZGIuY2F0ZWdvcnksICd4eCcpCkBAIC0zMDgsMTQgKzMxMiw2IEBACiAgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4obGluZXMpLCAxLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgciJcdSUuNHggc2hvdWxkIG5vdCBiZSBhIGxpbmVicmVhayIgJSBpKQogCi0gICAgZGVmIHRlc3RfVUNTNChzZWxmKToKLSAgICAgICAgIyB1bmljb2RlZGF0YSBzaG91bGQgd29yayB3aXRoIGNvZGUgcG9pbnRzIG91dHNpZGUgdGhlIEJNUAotICAgICAgICAjIGV2ZW4gb24gYSBuYXJyb3cgVW5pY29kZSBidWlsZAotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYuZGIuY2F0ZWdvcnkoIlxVMDAwMTAxMkEiKSwgIk5vIikKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLm51bWVyaWMoIlxVMDAwMTAxMkEiKSwgOTAwMCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmRlY2ltYWwoIlxVMDAwMUQ3RkQiKSwgNykKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLmRiLmRpZ2l0KCJcVTAwMDFEN0ZEIiksIDcpCi0KIGRlZiB0ZXN0X21haW4oKToKICAgICB0ZXN0LnN1cHBvcnQucnVuX3VuaXR0ZXN0KAogICAgICAgICBVbmljb2RlTWlzY1Rlc3QsCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3VybGxpYi5weSBiL0xpYi90ZXN0L3Rlc3RfdXJsbGliLnB5CmluZGV4IGY2YjQ4Y2IuLmU0MDNiYmYgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdXJsbGliLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdXJsbGliLnB5CkBAIC0zMzAsNyArMzMwLDcgQEAKICAgICBkZWYgY29uc3RydWN0TG9jYWxGaWxlVXJsKHNlbGYsIGZpbGVQYXRoKToKICAgICAgICAgZmlsZVBhdGggPSBvcy5wYXRoLmFic3BhdGgoZmlsZVBhdGgpCiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIGZpbGVQYXRoLmVuY29kZSgidXRmOCIpCisgICAgICAgICAgICBmaWxlUGF0aC5lbmNvZGUoInV0Zi04IikKICAgICAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKICAgICAgICAgICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJmaWxlUGF0aCBpcyBub3QgZW5jb2RhYmxlIHRvIHV0ZjgiKQogICAgICAgICByZXR1cm4gImZpbGU6Ly8lcyIgJSB1cmxsaWIucmVxdWVzdC5wYXRobmFtZTJ1cmwoZmlsZVBhdGgpCkBAIC0xMjQzLDYgKzEyNDMsMjggQEAKICMgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGZ0cC5mdHAuc29jay5nZXR0aW1lb3V0KCksIDMwKQogIyAgICAgICAgIGZ0cC5jbG9zZSgpCiAKK2NsYXNzIFJlcXVlc3RUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisgICAgIiIiVW5pdCB0ZXN0cyBmb3IgdXJsbGliLnJlcXVlc3QuUmVxdWVzdC4iIiIKKworICAgIGRlZiB0ZXN0X2RlZmF1bHRfdmFsdWVzKHNlbGYpOgorICAgICAgICBSZXF1ZXN0ID0gdXJsbGliLnJlcXVlc3QuUmVxdWVzdAorICAgICAgICByZXF1ZXN0ID0gUmVxdWVzdCgiaHR0cDovL3d3dy5weXRob24ub3JnIikKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXF1ZXN0LmdldF9tZXRob2QoKSwgJ0dFVCcpCisgICAgICAgIHJlcXVlc3QgPSBSZXF1ZXN0KCJodHRwOi8vd3d3LnB5dGhvbi5vcmciLCB7fSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXF1ZXN0LmdldF9tZXRob2QoKSwgJ1BPU1QnKQorCisgICAgZGVmIHRlc3Rfd2l0aF9tZXRob2RfYXJnKHNlbGYpOgorICAgICAgICBSZXF1ZXN0ID0gdXJsbGliLnJlcXVlc3QuUmVxdWVzdAorICAgICAgICByZXF1ZXN0ID0gUmVxdWVzdCgiaHR0cDovL3d3dy5weXRob24ub3JnIiwgbWV0aG9kPSdIRUFEJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXF1ZXN0Lm1ldGhvZCwgJ0hFQUQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcXVlc3QuZ2V0X21ldGhvZCgpLCAnSEVBRCcpCisgICAgICAgIHJlcXVlc3QgPSBSZXF1ZXN0KCJodHRwOi8vd3d3LnB5dGhvbi5vcmciLCB7fSwgbWV0aG9kPSdIRUFEJykKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChyZXF1ZXN0Lm1ldGhvZCwgJ0hFQUQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcXVlc3QuZ2V0X21ldGhvZCgpLCAnSEVBRCcpCisgICAgICAgIHJlcXVlc3QgPSBSZXF1ZXN0KCJodHRwOi8vd3d3LnB5dGhvbi5vcmciLCBtZXRob2Q9J0dFVCcpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVxdWVzdC5nZXRfbWV0aG9kKCksICdHRVQnKQorICAgICAgICByZXF1ZXN0Lm1ldGhvZCA9ICdIRUFEJworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcXVlc3QuZ2V0X21ldGhvZCgpLCAnSEVBRCcpCiAKIAogZGVmIHRlc3RfbWFpbigpOgpAQCAtMTI1OSw2ICsxMjgxLDcgQEAKICAgICAgICAgVXRpbGl0eV9UZXN0cywKICAgICAgICAgVVJMb3BlbmVyX1Rlc3RzLAogICAgICAgICAjRlRQV3JhcHBlclRlc3RzLAorICAgICAgICBSZXF1ZXN0VGVzdHMsCiAgICAgKQogCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfdXJsbGliMi5weSBiL0xpYi90ZXN0L3Rlc3RfdXJsbGliMi5weQppbmRleCAzZDgwZTAxLi4wZmYzMTgxIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3VybGxpYjIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF91cmxsaWIyLnB5CkBAIC01LDYgKzUsNyBAQAogaW1wb3J0IGlvCiBpbXBvcnQgc29ja2V0CiBpbXBvcnQgYXJyYXkKK2ltcG9ydCBzeXMKIAogaW1wb3J0IHVybGxpYi5yZXF1ZXN0CiAjIFRoZSBwcm94eSBieXBhc3MgbWV0aG9kIGltcG9ydGVkIGJlbG93IGhhcyBsb2dpYyBzcGVjaWZpYyB0byB0aGUgT1NYCkBAIC0xOCw2ICsxOSwyMiBAQAogIyBwYXJzZV9rZXF2X2xpc3QsIHBhcnNlX2h0dHBfbGlzdCwgSFRUUERpZ2VzdEF1dGhIYW5kbGVyCiAKIGNsYXNzIFRyaXZpYWxUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CisKKyAgICBkZWYgdGVzdF9fX2FsbF9fKHNlbGYpOgorICAgICAgICAjIFZlcmlmeSB3aGljaCBuYW1lcyBhcmUgZXhwb3NlZAorICAgICAgICBmb3IgbW9kdWxlIGluICdyZXF1ZXN0JywgJ3Jlc3BvbnNlJywgJ3BhcnNlJywgJ2Vycm9yJywgJ3JvYm90cGFyc2VyJzoKKyAgICAgICAgICAgIGNvbnRleHQgPSB7fQorICAgICAgICAgICAgZXhlYygnZnJvbSB1cmxsaWIuJXMgaW1wb3J0IConICUgbW9kdWxlLCBjb250ZXh0KQorICAgICAgICAgICAgZGVsIGNvbnRleHRbJ19fYnVpbHRpbnNfXyddCisgICAgICAgICAgICBpZiBtb2R1bGUgPT0gJ3JlcXVlc3QnIGFuZCBvcy5uYW1lID09ICdudCc6CisgICAgICAgICAgICAgICAgdSwgcCA9IGNvbnRleHQucG9wKCd1cmwycGF0aG5hbWUnKSwgY29udGV4dC5wb3AoJ3BhdGhuYW1lMnVybCcpCisgICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1Ll9fbW9kdWxlX18sICdudHVybDJwYXRoJykKKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHAuX19tb2R1bGVfXywgJ250dXJsMnBhdGgnKQorICAgICAgICAgICAgZm9yIGssIHYgaW4gY29udGV4dC5pdGVtcygpOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwodi5fX21vZHVsZV9fLCAndXJsbGliLiVzJyAlIG1vZHVsZSwKKyAgICAgICAgICAgICAgICAgICAgIiVyIGlzIGV4cG9zZWQgaW4gJ3VybGxpYi4lcycgYnV0IGRlZmluZWQgaW4gJXIiICUKKyAgICAgICAgICAgICAgICAgICAgKGssIG1vZHVsZSwgdi5fX21vZHVsZV9fKSkKKwogICAgIGRlZiB0ZXN0X3RyaXZpYWwoc2VsZik6CiAgICAgICAgICMgQSBjb3VwbGUgdHJpdmlhbCB0ZXN0cwogCkBAIC02MDUsNyArNjIyLDcgQEAKIAogZGVmIHNhbmVwYXRobmFtZTJ1cmwocGF0aCk6CiAgICAgdHJ5OgotICAgICAgICBwYXRoLmVuY29kZSgidXRmOCIpCisgICAgICAgIHBhdGguZW5jb2RlKCJ1dGYtOCIpCiAgICAgZXhjZXB0IFVuaWNvZGVFbmNvZGVFcnJvcjoKICAgICAgICAgcmFpc2UgdW5pdHRlc3QuU2tpcFRlc3QoInBhdGggaXMgbm90IGVuY29kYWJsZSB0byB1dGY4IikKICAgICB1cmxwYXRoID0gdXJsbGliLnJlcXVlc3QucGF0aG5hbWUydXJsKHBhdGgpCkBAIC0xMTc5LDYgKzExOTYsOCBAQAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHJlcS5nZXRfaG9zdCgpLCAicHJveHkuZXhhbXBsZS5jb206MzEyOCIpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVxLmdldF9oZWFkZXIoIlByb3h5LWF1dGhvcml6YXRpb24iKSwiRm9vQmFyIikKIAorICAgICMgVE9ETzogVGhpcyBzaG91bGQgYmUgb25seSBmb3IgT1NYCisgICAgQHVuaXR0ZXN0LnNraXBVbmxlc3Moc3lzLnBsYXRmb3JtID09ICdkYXJ3aW4nLCAib25seSByZWxldmFudCBmb3IgT1NYIikKICAgICBkZWYgdGVzdF9vc3hfcHJveHlfYnlwYXNzKHNlbGYpOgogICAgICAgICBieXBhc3MgPSB7CiAgICAgICAgICAgICAnZXhjbHVkZV9zaW1wbGUnOiBGYWxzZSwKQEAgLTEyODIsNiArMTMwMSwyNiBAQAogICAgICAgICAjIF90ZXN0X2Jhc2ljX2F1dGggY2FsbGVkIC5vcGVuKCkgdHdpY2UpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwob3BlbmVyLnJlY29yZGVkLCBbImRpZ2VzdCIsICJiYXNpYyJdKjIpCiAKKyAgICBkZWYgdGVzdF91bnN1cHBvcnRlZF9hdXRoX2RpZ2VzdF9oYW5kbGVyKHNlbGYpOgorICAgICAgICBvcGVuZXIgPSBPcGVuZXJEaXJlY3RvcigpCisgICAgICAgICMgV2hpbGUgdXNpbmcgRGlnZXN0QXV0aEhhbmRsZXIKKyAgICAgICAgZGlnZXN0X2F1dGhfaGFuZGxlciA9IHVybGxpYi5yZXF1ZXN0LkhUVFBEaWdlc3RBdXRoSGFuZGxlcihOb25lKQorICAgICAgICBodHRwX2hhbmRsZXIgPSBNb2NrSFRUUEhhbmRsZXIoCisgICAgICAgICAgICA0MDEsICdXV1ctQXV0aGVudGljYXRlOiBLZXJiZXJvc1xyXG5cclxuJykKKyAgICAgICAgb3BlbmVyLmFkZF9oYW5kbGVyKGRpZ2VzdF9hdXRoX2hhbmRsZXIpCisgICAgICAgIG9wZW5lci5hZGRfaGFuZGxlcihodHRwX2hhbmRsZXIpCisgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFZhbHVlRXJyb3Isb3BlbmVyLm9wZW4sImh0dHA6Ly93d3cuZXhhbXBsZS5jb20iKQorCisgICAgZGVmIHRlc3RfdW5zdXBwb3J0ZWRfYXV0aF9iYXNpY19oYW5kbGVyKHNlbGYpOgorICAgICAgICAjIFdoaWxlIHVzaW5nIEJhc2ljQXV0aEhhbmRsZXIKKyAgICAgICAgb3BlbmVyID0gT3BlbmVyRGlyZWN0b3IoKQorICAgICAgICBiYXNpY19hdXRoX2hhbmRsZXIgPSB1cmxsaWIucmVxdWVzdC5IVFRQQmFzaWNBdXRoSGFuZGxlcihOb25lKQorICAgICAgICBodHRwX2hhbmRsZXIgPSBNb2NrSFRUUEhhbmRsZXIoCisgICAgICAgICAgICA0MDEsICdXV1ctQXV0aGVudGljYXRlOiBOVExNXHJcblxyXG4nKQorICAgICAgICBvcGVuZXIuYWRkX2hhbmRsZXIoYmFzaWNfYXV0aF9oYW5kbGVyKQorICAgICAgICBvcGVuZXIuYWRkX2hhbmRsZXIoaHR0cF9oYW5kbGVyKQorICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLG9wZW5lci5vcGVuLCJodHRwOi8vd3d3LmV4YW1wbGUuY29tIikKKwogICAgIGRlZiBfdGVzdF9iYXNpY19hdXRoKHNlbGYsIG9wZW5lciwgYXV0aF9oYW5kbGVyLCBhdXRoX2hlYWRlciwKICAgICAgICAgICAgICAgICAgICAgICAgICByZWFsbSwgaHR0cF9oYW5kbGVyLCBwYXNzd29yZF9tYW5hZ2VyLAogICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RfdXJsLCBwcm90ZWN0ZWRfdXJsKToKQEAgLTEzMTksNiArMTM1OCw3IEBACiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobGVuKGh0dHBfaGFuZGxlci5yZXF1ZXN0cyksIDEpCiAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaHR0cF9oYW5kbGVyLnJlcXVlc3RzWzBdLmhhc19oZWFkZXIoYXV0aF9oZWFkZXIpKQogCisKIGNsYXNzIE1pc2NUZXN0cyh1bml0dGVzdC5UZXN0Q2FzZSk6CiAKICAgICBkZWYgdGVzdF9idWlsZF9vcGVuZXIoc2VsZik6CkBAIC0xNDI3LDcgKzE0NjcsOSBAQAogICAgIElzc3VlIDEzMjExIHJldmVhbHMgdGhhdCBIVFRQRXJyb3IgZGlkbid0IGltcGxlbWVudCB0aGUgVVJMRXJyb3IKICAgICBpbnRlcmZhY2UgZXZlbiB0aG91Z2ggSFRUUEVycm9yIGlzIGEgc3ViY2xhc3Mgb2YgVVJMRXJyb3IuCiAKLSAgICA+Pj4gZXJyID0gdXJsbGliLmVycm9yLkhUVFBFcnJvcihtc2c9J3NvbWV0aGluZyBiYWQgaGFwcGVuZWQnLCB1cmw9Tm9uZSwgY29kZT1Ob25lLCBoZHJzPU5vbmUsIGZwPU5vbmUpCisgICAgPj4+IG1zZyA9ICdzb21ldGhpbmcgYmFkIGhhcHBlbmVkJworICAgID4+PiB1cmwgPSBjb2RlID0gaGRycyA9IGZwID0gTm9uZQorICAgID4+PiBlcnIgPSB1cmxsaWIuZXJyb3IuSFRUUEVycm9yKHVybCwgY29kZSwgbXNnLCBoZHJzLCBmcCkKICAgICA+Pj4gYXNzZXJ0IGhhc2F0dHIoZXJyLCAncmVhc29uJykKICAgICA+Pj4gZXJyLnJlYXNvbgogICAgICdzb21ldGhpbmcgYmFkIGhhcHBlbmVkJwpkaWZmIC0tZ2l0IGEvTGliL3Rlc3QvdGVzdF91cmxsaWIybmV0LnB5IGIvTGliL3Rlc3QvdGVzdF91cmxsaWIybmV0LnB5CmluZGV4IDVmY2I0Y2IuLmZjNTUyN2UgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdXJsbGliMm5ldC5weQorKysgYi9MaWIvdGVzdC90ZXN0X3VybGxpYjJuZXQucHkKQEAgLTgzLDEyICs4MywxMyBAQAogICAgIGRlZiB0ZXN0X2Nsb3NlKHNlbGYpOgogICAgICAgICAjIGNhbGxpbmcgLmNsb3NlKCkgb24gdXJsbGliMidzIHJlc3BvbnNlIG9iamVjdHMgc2hvdWxkIGNsb3NlIHRoZQogICAgICAgICAjIHVuZGVybHlpbmcgc29ja2V0Ci0KLSAgICAgICAgcmVzcG9uc2UgPSBfdXJsb3Blbl93aXRoX3JldHJ5KCJodHRwOi8vd3d3LnB5dGhvbi5vcmcvIikKLSAgICAgICAgc29jayA9IHJlc3BvbnNlLmZwCi0gICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShub3Qgc29jay5jbG9zZWQpCi0gICAgICAgIHJlc3BvbnNlLmNsb3NlKCkKLSAgICAgICAgc2VsZi5hc3NlcnRUcnVlKHNvY2suY2xvc2VkKQorICAgICAgICB1cmwgPSAiaHR0cDovL3d3dy5weXRob24ub3JnLyIKKyAgICAgICAgd2l0aCBzdXBwb3J0LnRyYW5zaWVudF9pbnRlcm5ldCh1cmwpOgorICAgICAgICAgICAgcmVzcG9uc2UgPSBfdXJsb3Blbl93aXRoX3JldHJ5KHVybCkKKyAgICAgICAgICAgIHNvY2sgPSByZXNwb25zZS5mcAorICAgICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKG5vdCBzb2NrLmNsb3NlZCkKKyAgICAgICAgICAgIHJlc3BvbnNlLmNsb3NlKCkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShzb2NrLmNsb3NlZCkKIAogY2xhc3MgT3RoZXJOZXR3b3JrVGVzdHModW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiBzZXRVcChzZWxmKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfdXNlcmxpc3QucHkgYi9MaWIvdGVzdC90ZXN0X3VzZXJsaXN0LnB5CmluZGV4IDg2OGVkMjQuLjYzODEwNzAgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfdXNlcmxpc3QucHkKKysrIGIvTGliL3Rlc3QvdGVzdF91c2VybGlzdC5weQpAQCAtNTIsNiArNTIsMTIgQEAKICAgICAgICAgICAgICAgICByZXR1cm4gc3RyKGtleSkgKyAnISEhJwogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5leHQoaXRlcihUKCgxLDIpKSkpLCAiMCEhISIpCiAKKyAgICBkZWYgdGVzdF91c2VybGlzdF9jb3B5KHNlbGYpOgorICAgICAgICB1ID0gc2VsZi50eXBlMnRlc3QoWzYsIDgsIDEsIDksIDFdKQorICAgICAgICB2ID0gdS5jb3B5KCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh1LCB2KQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHR5cGUodSksIHR5cGUodikpCisKIGRlZiB0ZXN0X21haW4oKToKICAgICBzdXBwb3J0LnJ1bl91bml0dGVzdChVc2VyTGlzdFRlc3QpCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfdXNlcnN0cmluZy5weSBiL0xpYi90ZXN0L3Rlc3RfdXNlcnN0cmluZy5weQppbmRleCA3YThiOTMyLi5kNWQwYzg5IDEwMDc1NQotLS0gYS9MaWIvdGVzdC90ZXN0X3VzZXJzdHJpbmcucHkKKysrIGIvTGliL3Rlc3QvdGVzdF91c2Vyc3RyaW5nLnB5CkBAIC0xNywxMSArMTcsMTEgQEAKICAgICAjIE92ZXJ3cml0ZSB0aGUgdGhyZWUgdGVzdGluZyBtZXRob2RzLCBiZWNhdXNlIFVzZXJTdHJpbmcKICAgICAjIGNhbid0IGNvcGUgd2l0aCBhcmd1bWVudHMgcHJvcGFnYXRlZCB0byBVc2VyU3RyaW5nCiAgICAgIyAoYW5kIHdlIGRvbid0IHRlc3Qgd2l0aCBzdWJjbGFzc2VzKQotICAgIGRlZiBjaGVja2VxdWFsKHNlbGYsIHJlc3VsdCwgb2JqZWN0LCBtZXRob2RuYW1lLCAqYXJncyk6CisgICAgZGVmIGNoZWNrZXF1YWwoc2VsZiwgcmVzdWx0LCBvYmplY3QsIG1ldGhvZG5hbWUsICphcmdzLCAqKmt3YXJncyk6CiAgICAgICAgIHJlc3VsdCA9IHNlbGYuZml4dHlwZShyZXN1bHQpCiAgICAgICAgIG9iamVjdCA9IHNlbGYuZml4dHlwZShvYmplY3QpCiAgICAgICAgICMgd2UgZG9uJ3QgZml4IHRoZSBhcmd1bWVudHMsIGJlY2F1c2UgVXNlclN0cmluZyBjYW4ndCBjb3BlIHdpdGggaXQKLSAgICAgICAgcmVhbHJlc3VsdCA9IGdldGF0dHIob2JqZWN0LCBtZXRob2RuYW1lKSgqYXJncykKKyAgICAgICAgcmVhbHJlc3VsdCA9IGdldGF0dHIob2JqZWN0LCBtZXRob2RuYW1lKSgqYXJncywgKiprd2FyZ3MpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoCiAgICAgICAgICAgICByZXN1bHQsCiAgICAgICAgICAgICByZWFscmVzdWx0CmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3V1aWQucHkgYi9MaWIvdGVzdC90ZXN0X3V1aWQucHkKaW5kZXggNDNmYTY1Ni4uN2JjNTllZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF91dWlkLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfdXVpZC5weQpAQCAtNDcxLDE0ICs0NzEsMTQgQEAKICAgICAgICAgaWYgcGlkID09IDA6CiAgICAgICAgICAgICBvcy5jbG9zZShmZHNbMF0pCiAgICAgICAgICAgICB2YWx1ZSA9IHV1aWQudXVpZDQoKQotICAgICAgICAgICAgb3Mud3JpdGUoZmRzWzFdLCB2YWx1ZS5oZXguZW5jb2RlKCdsYXRpbjEnKSkKKyAgICAgICAgICAgIG9zLndyaXRlKGZkc1sxXSwgdmFsdWUuaGV4LmVuY29kZSgnbGF0aW4tMScpKQogICAgICAgICAgICAgb3MuX2V4aXQoMCkKIAogICAgICAgICBlbHNlOgogICAgICAgICAgICAgb3MuY2xvc2UoZmRzWzFdKQogICAgICAgICAgICAgcGFyZW50X3ZhbHVlID0gdXVpZC51dWlkNCgpLmhleAogICAgICAgICAgICAgb3Mud2FpdHBpZChwaWQsIDApCi0gICAgICAgICAgICBjaGlsZF92YWx1ZSA9IG9zLnJlYWQoZmRzWzBdLCAxMDApLmRlY29kZSgnbGF0aW4xJykKKyAgICAgICAgICAgIGNoaWxkX3ZhbHVlID0gb3MucmVhZChmZHNbMF0sIDEwMCkuZGVjb2RlKCdsYXRpbi0xJykKIAogICAgICAgICAgICAgc2VsZi5hc3NlcnROb3RFcXVhbChwYXJlbnRfdmFsdWUsIGNoaWxkX3ZhbHVlKQogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3dhaXQzLnB5IGIvTGliL3Rlc3QvdGVzdF93YWl0My5weQppbmRleCA3ODZlNjBiLi5iZDA2YzhkIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3dhaXQzLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3Rfd2FpdDMucHkKQEAgLTE5LDEzICsxOSwxNiBAQAogCiBjbGFzcyBXYWl0M1Rlc3QoRm9ya1dhaXQpOgogICAgIGRlZiB3YWl0X2ltcGwoc2VsZiwgY3BpZCk6Ci0gICAgICAgIGZvciBpIGluIHJhbmdlKDEwKToKKyAgICAgICAgIyBUaGlzIG1hbnkgaXRlcmF0aW9ucyBjYW4gYmUgcmVxdWlyZWQsIHNpbmNlIHNvbWUgcHJldmlvdXNseSBydW4KKyAgICAgICAgIyB0ZXN0cyAoZS5nLiB0ZXN0X2N0eXBlcykgY291bGQgaGF2ZSBzcGF3bmVkIGEgbG90IG9mIGNoaWxkcmVuCisgICAgICAgICMgdmVyeSBxdWlja2x5LgorICAgICAgICBmb3IgaSBpbiByYW5nZSgzMCk6CiAgICAgICAgICAgICAjIHdhaXQzKCkgc2hvdWxkbid0IGhhbmcsIGJ1dCBzb21lIG9mIHRoZSBidWlsZGJvdHMgc2VlbSB0byBoYW5nCiAgICAgICAgICAgICAjIGluIHRoZSBmb3JraW5nIHRlc3RzLiAgVGhpcyBpcyBhbiBhdHRlbXB0IHRvIGZpeCB0aGUgcHJvYmxlbS4KICAgICAgICAgICAgIHNwaWQsIHN0YXR1cywgcnVzYWdlID0gb3Mud2FpdDMob3MuV05PSEFORykKICAgICAgICAgICAgIGlmIHNwaWQgPT0gY3BpZDoKICAgICAgICAgICAgICAgICBicmVhawotICAgICAgICAgICAgdGltZS5zbGVlcCgxLjApCisgICAgICAgICAgICB0aW1lLnNsZWVwKDAuMSkKIAogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNwaWQsIGNwaWQpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RhdHVzLCAwLCAiY2F1c2UgPSAlZCwgZXhpdCA9ICVkIiAlIChzdGF0dXMmMHhmZiwgc3RhdHVzPj44KSkKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3Rfd2FybmluZ3MucHkgYi9MaWIvdGVzdC90ZXN0X3dhcm5pbmdzLnB5CmluZGV4IDc5YmU4MzUuLjk1M2IyODIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3Rfd2FybmluZ3MucHkKKysrIGIvTGliL3Rlc3QvdGVzdF93YXJuaW5ncy5weQpAQCAtNTEyLDEyICs1MTIsMTEgQEAKICAgICBkZWYgdGVzdF9zaG93d2FybmluZ19ub3RfY2FsbGFibGUoc2VsZik6CiAgICAgICAgIHdpdGggb3JpZ2luYWxfd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MobW9kdWxlPXNlbGYubW9kdWxlKToKICAgICAgICAgICAgIHNlbGYubW9kdWxlLmZpbHRlcndhcm5pbmdzKCJhbHdheXMiLCBjYXRlZ29yeT1Vc2VyV2FybmluZykKLSAgICAgICAgICAgIG9sZF9zaG93d2FybmluZyA9IHNlbGYubW9kdWxlLnNob3d3YXJuaW5nCisgICAgICAgICAgICBzZWxmLm1vZHVsZS5zaG93d2FybmluZyA9IHByaW50CisgICAgICAgICAgICB3aXRoIHN1cHBvcnQuY2FwdHVyZWRfb3V0cHV0KCdzdGRvdXQnKToKKyAgICAgICAgICAgICAgICBzZWxmLm1vZHVsZS53YXJuKCdXYXJuaW5nIScpCiAgICAgICAgICAgICBzZWxmLm1vZHVsZS5zaG93d2FybmluZyA9IDIzCi0gICAgICAgICAgICB0cnk6Ci0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLm1vZHVsZS53YXJuLCAiV2FybmluZyEiKQotICAgICAgICAgICAgZmluYWxseToKLSAgICAgICAgICAgICAgICBzZWxmLm1vZHVsZS5zaG93d2FybmluZyA9IG9sZF9zaG93d2FybmluZworICAgICAgICAgICAgc2VsZi5hc3NlcnRSYWlzZXMoVHlwZUVycm9yLCBzZWxmLm1vZHVsZS53YXJuLCAiV2FybmluZyEiKQogCiAgICAgZGVmIHRlc3Rfc2hvd193YXJuaW5nX291dHB1dChzZWxmKToKICAgICAgICAgIyBXaXRoIHNob3dhcm5pbmcoKSBtaXNzaW5nLCBtYWtlIHN1cmUgdGhhdCBvdXRwdXQgaXMgb2theS4KQEAgLTU0NywxMCArNTQ2LDEzIEBACiAgICAgICAgIGdsb2JhbHNfZGljdCA9IGdsb2JhbHMoKQogICAgICAgICBvbGRmaWxlID0gZ2xvYmFsc19kaWN0WydfX2ZpbGVfXyddCiAgICAgICAgIHRyeToKLSAgICAgICAgICAgIHdpdGggb3JpZ2luYWxfd2FybmluZ3MuY2F0Y2hfd2FybmluZ3MobW9kdWxlPXNlbGYubW9kdWxlKSBhcyB3OgorICAgICAgICAgICAgY2F0Y2ggPSBvcmlnaW5hbF93YXJuaW5ncy5jYXRjaF93YXJuaW5ncyhyZWNvcmQ9VHJ1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlPXNlbGYubW9kdWxlKQorICAgICAgICAgICAgd2l0aCBjYXRjaCBhcyB3OgogICAgICAgICAgICAgICAgIHNlbGYubW9kdWxlLmZpbHRlcndhcm5pbmdzKCJhbHdheXMiLCBjYXRlZ29yeT1Vc2VyV2FybmluZykKICAgICAgICAgICAgICAgICBnbG9iYWxzX2RpY3RbJ19fZmlsZV9fJ10gPSBOb25lCiAgICAgICAgICAgICAgICAgb3JpZ2luYWxfd2FybmluZ3Mud2FybigndGVzdCcsIFVzZXJXYXJuaW5nKQorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShsZW4odykpCiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICBnbG9iYWxzX2RpY3RbJ19fZmlsZV9fJ10gPSBvbGRmaWxlCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfeG1sX2V0cmVlLnB5IGIvTGliL3Rlc3QvdGVzdF94bWxfZXRyZWUucHkKaW5kZXggYjdhOTk2Yy4uMzZiMDhjZCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF94bWxfZXRyZWUucHkKKysrIGIvTGliL3Rlc3QvdGVzdF94bWxfZXRyZWUucHkKQEAgLTIyLDcgKzIyLDcgQEAKIAogU0lNUExFX1hNTEZJTEUgPSBmaW5kZmlsZSgic2ltcGxlLnhtbCIsIHN1YmRpcj0ieG1sdGVzdGRhdGEiKQogdHJ5OgotICAgIFNJTVBMRV9YTUxGSUxFLmVuY29kZSgidXRmOCIpCisgICAgU0lNUExFX1hNTEZJTEUuZW5jb2RlKCJ1dGYtOCIpCiBleGNlcHQgVW5pY29kZUVuY29kZUVycm9yOgogICAgIHJhaXNlIHVuaXR0ZXN0LlNraXBUZXN0KCJmaWxlbmFtZSBpcyBub3QgZW5jb2RhYmxlIHRvIHV0ZjgiKQogU0lNUExFX05TX1hNTEZJTEUgPSBmaW5kZmlsZSgic2ltcGxlLW5zLnhtbCIsIHN1YmRpcj0ieG1sdGVzdGRhdGEiKQpAQCAtMTI1Niw4ICsxMjU2LDggQEAKIAogICAgID4+PiBFVC50b3N0cmluZyhFVC5QSSgndGVzdCcsICc8dGVzdGluZyY+JykpCiAgICAgYic8P3Rlc3QgPHRlc3RpbmcmPj8+JwotICAgID4+PiBFVC50b3N0cmluZyhFVC5QSSgndGVzdCcsICc8dGVzdGluZyY+XHhlMycpLCAnbGF0aW4xJykKLSAgICBiIjw/eG1sIHZlcnNpb249JzEuMCcgZW5jb2Rpbmc9J2xhdGluMSc/Plxcbjw/dGVzdCA8dGVzdGluZyY+XFx4ZTM/PiIKKyAgICA+Pj4gRVQudG9zdHJpbmcoRVQuUEkoJ3Rlc3QnLCAnPHRlc3RpbmcmPlx4ZTMnKSwgJ2xhdGluLTEnKQorICAgIGIiPD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nbGF0aW4tMSc/Plxcbjw/dGVzdCA8dGVzdGluZyY+XFx4ZTM/PiIKICAgICAiIiIKIAogIwpAQCAtMTM0MCw3ICsxMzQwLDcgQEAKICAgICB0cnk6CiAgICAgICAgIGRhdGEgPSBYSU5DTFVERVtocmVmXQogICAgIGV4Y2VwdCBLZXlFcnJvcjoKLSAgICAgICAgcmFpc2UgSU9FcnJvcigicmVzb3VyY2Ugbm90IGZvdW5kIikKKyAgICAgICAgcmFpc2UgT1NFcnJvcigicmVzb3VyY2Ugbm90IGZvdW5kIikKICAgICBpZiBwYXJzZSA9PSAieG1sIjoKICAgICAgICAgZnJvbSB4bWwuZXRyZWUuRWxlbWVudFRyZWUgaW1wb3J0IFhNTAogICAgICAgICByZXR1cm4gWE1MKGRhdGEpCkBAIC0xNDA1LDcgKzE0MDUsNyBAQAogICAgID4+PiBkb2N1bWVudCA9IHhpbmNsdWRlX2xvYWRlcigiQzUueG1sIikKICAgICA+Pj4gRWxlbWVudEluY2x1ZGUuaW5jbHVkZShkb2N1bWVudCwgeGluY2x1ZGVfbG9hZGVyKQogICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgICBJT0Vycm9yOiByZXNvdXJjZSBub3QgZm91bmQKKyAgICBPU0Vycm9yOiByZXNvdXJjZSBub3QgZm91bmQKICAgICA+Pj4gIyBwcmludChzZXJpYWxpemUoZG9jdW1lbnQpKSAjIEM1CiAgICAgIiIiCiAKQEAgLTE2MTIsNyArMTYxMiw3IEBACiAKIGNsYXNzIEV4Y2VwdGlvbkZpbGU6CiAgICAgZGVmIHJlYWQoc2VsZiwgeCk6Ci0gICAgICAgIHJhaXNlIElPRXJyb3IKKyAgICAgICAgcmFpc2UgT1NFcnJvcgogCiBkZWYgeG1sdG9vbGtpdDYwKCk6CiAgICAgIiIiCkBAIC0xNjIwLDcgKzE2MjAsNyBAQAogICAgIEhhbmRsZSBjcmFzaCBpbiBzdHJlYW0gc291cmNlLgogICAgID4+PiB0cmVlID0gRVQucGFyc2UoRXhjZXB0aW9uRmlsZSgpKQogICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKLSAgICBJT0Vycm9yCisgICAgT1NFcnJvcgogCiAgICAgIiIiCiAKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfeG1scnBjLnB5IGIvTGliL3Rlc3QvdGVzdF94bWxycGMucHkKaW5kZXggZTk3NDIwYi4uZTU2MDFhNSAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF94bWxycGMucHkKKysrIGIvTGliL3Rlc3QvdGVzdF94bWxycGMucHkKQEAgLTI0LDYgKzI0LDggQEAKICAgICAgICAgICAnYXNob3J0bG9uZyc6IDIsCiAgICAgICAgICAgJ2Fub3RoZXJsaXN0JzogWycuenl4LjQxJ10sCiAgICAgICAgICAgJ2FiYXNlNjQnOiB4bWxycGNsaWIuQmluYXJ5KGIibXkgZG9nIGhhcyBmbGVhcyIpLAorICAgICAgICAgICdiNjRieXRlcyc6IGIibXkgZG9nIGhhcyBmbGVhcyIsCisgICAgICAgICAgJ2I2NGJ5dGVhcnJheSc6IGJ5dGVhcnJheShiIm15IGRvZyBoYXMgZmxlYXMiKSwKICAgICAgICAgICAnYm9vbGVhbic6IEZhbHNlLAogICAgICAgICAgICd1bmljb2RlJzogJ1x1NDAwMFx1NjAwMFx1ODAwMCcsCiAgICAgICAgICAgJ3VrZXlcdTQwMDAnOiAncmVndWxhciB2YWx1ZScsCkBAIC00NCwyNyArNDYsNTQgQEAKICAgICBkZWYgdGVzdF9kdW1wX2JhcmVfZGF0ZXRpbWUoc2VsZik6CiAgICAgICAgICMgVGhpcyBjaGVja3MgdGhhdCBhbiB1bndyYXBwZWQgZGF0ZXRpbWUuZGF0ZSBvYmplY3QgY2FuIGJlIGhhbmRsZWQKICAgICAgICAgIyBieSB0aGUgbWFyc2hhbGxpbmcgY29kZS4gIFRoaXMgY2FuJ3QgYmUgZG9uZSB2aWEgdGVzdF9kdW1wX2xvYWQoKQotICAgICAgICAjIHNpbmNlIHdpdGggdXNlX2RhdGV0aW1lIHNldCB0byAxIHRoZSB1bm1hcnNoYWxsZXIgd291bGQgY3JlYXRlCisgICAgICAgICMgc2luY2Ugd2l0aCB1c2VfYnVpbHRpbl90eXBlcyBzZXQgdG8gMSB0aGUgdW5tYXJzaGFsbGVyIHdvdWxkIGNyZWF0ZQogICAgICAgICAjIGRhdGV0aW1lIG9iamVjdHMgZm9yIHRoZSAnZGF0ZXRpbWVbMTIzXScga2V5cyBhcyB3ZWxsCiAgICAgICAgIGR0ID0gZGF0ZXRpbWUuZGF0ZXRpbWUoMjAwNSwgMiwgMTAsIDExLCA0MSwgMjMpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZHQsIHhtbHJwY2xpYi5EYXRlVGltZSgnMjAwNTAyMTBUMTE6NDE6MjMnKSkKICAgICAgICAgcyA9IHhtbHJwY2xpYi5kdW1wcygoZHQsKSkKLSAgICAgICAgKG5ld2R0LCksIG0gPSB4bWxycGNsaWIubG9hZHMocywgdXNlX2RhdGV0aW1lPTEpCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3ZHQsIGR0KQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG0sIE5vbmUpCiAKLSAgICAgICAgKG5ld2R0LCksIG0gPSB4bWxycGNsaWIubG9hZHMocywgdXNlX2RhdGV0aW1lPTApCi0gICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3ZHQsIHhtbHJwY2xpYi5EYXRlVGltZSgnMjAwNTAyMTBUMTE6NDE6MjMnKSkKKyAgICAgICAgcmVzdWx0LCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9idWlsdGluX3R5cGVzPVRydWUpCisgICAgICAgIChuZXdkdCwpID0gcmVzdWx0CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3ZHQsIGR0KQorICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUobmV3ZHQpLCBkYXRldGltZS5kYXRldGltZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUobSkKKworICAgICAgICByZXN1bHQsIG0gPSB4bWxycGNsaWIubG9hZHMocywgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpCisgICAgICAgIChuZXdkdCwpID0gcmVzdWx0CisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3ZHQsIGR0KQorICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUobmV3ZHQpLCB4bWxycGNsaWIuRGF0ZVRpbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKG0pCisKKyAgICAgICAgcmVzdWx0LCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9kYXRldGltZT1UcnVlKQorICAgICAgICAobmV3ZHQsKSA9IHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2R0LCBkdCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKG5ld2R0KSwgZGF0ZXRpbWUuZGF0ZXRpbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKG0pCisKKyAgICAgICAgcmVzdWx0LCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9kYXRldGltZT1GYWxzZSkKKyAgICAgICAgKG5ld2R0LCkgPSByZXN1bHQKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChuZXdkdCwgZHQpCisgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShuZXdkdCksIHhtbHJwY2xpYi5EYXRlVGltZSkKKyAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUobSkKKwogCiAgICAgZGVmIHRlc3RfZGF0ZXRpbWVfYmVmb3JlXzE5MDAoc2VsZik6CiAgICAgICAgICMgc2FtZSBhcyBiZWZvcmUgYnV0IHdpdGggYSBkYXRlIGJlZm9yZSAxOTAwCiAgICAgICAgIGR0ID0gZGF0ZXRpbWUuZGF0ZXRpbWUoMSwgIDIsIDEwLCAxMSwgNDEsIDIzKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGR0LCB4bWxycGNsaWIuRGF0ZVRpbWUoJzAwMDEwMjEwVDExOjQxOjIzJykpCiAgICAgICAgIHMgPSB4bWxycGNsaWIuZHVtcHMoKGR0LCkpCi0gICAgICAgIChuZXdkdCwpLCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9kYXRldGltZT0xKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2R0LCBkdCkKLSAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChtLCBOb25lKQogCi0gICAgICAgIChuZXdkdCwpLCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9kYXRldGltZT0wKQotICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2R0LCB4bWxycGNsaWIuRGF0ZVRpbWUoJzAwMDEwMjEwVDExOjQxOjIzJykpCisgICAgICAgIHJlc3VsdCwgbSA9IHhtbHJwY2xpYi5sb2FkcyhzLCB1c2VfYnVpbHRpbl90eXBlcz1UcnVlKQorICAgICAgICAobmV3ZHQsKSA9IHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2R0LCBkdCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKG5ld2R0KSwgZGF0ZXRpbWUuZGF0ZXRpbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXNOb25lKG0pCisKKyAgICAgICAgcmVzdWx0LCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9idWlsdGluX3R5cGVzPUZhbHNlKQorICAgICAgICAobmV3ZHQsKSA9IHJlc3VsdAorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKG5ld2R0LCBkdCkKKyAgICAgICAgc2VsZi5hc3NlcnRJcyh0eXBlKG5ld2R0KSwgeG1scnBjbGliLkRhdGVUaW1lKQorICAgICAgICBzZWxmLmFzc2VydElzTm9uZShtKQogCiAgICAgZGVmIHRlc3RfYnVnXzExNjQ5MTIgKHNlbGYpOgogICAgICAgICBkID0geG1scnBjbGliLkRhdGVUaW1lKCkKQEAgLTEzMyw2ICsxNjIsMjUgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1scnBjbGliLmxvYWRzKHN0cmcpWzBdWzBdKQogICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHhtbHJwY2xpYi5kdW1wcywgKGFyZzEsKSkKIAorICAgIGRlZiB0ZXN0X2R1bXBfYnl0ZXMoc2VsZik6CisgICAgICAgIHNhbXBsZSA9IGIibXkgZG9nIGhhcyBmbGVhcyIKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzYW1wbGUsIHhtbHJwY2xpYi5CaW5hcnkoc2FtcGxlKSkKKyAgICAgICAgZm9yIHR5cGVfIGluIGJ5dGVzLCBieXRlYXJyYXksIHhtbHJwY2xpYi5CaW5hcnk6CisgICAgICAgICAgICB2YWx1ZSA9IHR5cGVfKHNhbXBsZSkKKyAgICAgICAgICAgIHMgPSB4bWxycGNsaWIuZHVtcHMoKHZhbHVlLCkpCisKKyAgICAgICAgICAgIHJlc3VsdCwgbSA9IHhtbHJwY2xpYi5sb2FkcyhzLCB1c2VfYnVpbHRpbl90eXBlcz1UcnVlKQorICAgICAgICAgICAgKG5ld3ZhbHVlLCkgPSByZXN1bHQKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3dmFsdWUsIHNhbXBsZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShuZXd2YWx1ZSksIGJ5dGVzKQorICAgICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUobSkKKworICAgICAgICAgICAgcmVzdWx0LCBtID0geG1scnBjbGliLmxvYWRzKHMsIHVzZV9idWlsdGluX3R5cGVzPUZhbHNlKQorICAgICAgICAgICAgKG5ld3ZhbHVlLCkgPSByZXN1bHQKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwobmV3dmFsdWUsIHNhbXBsZSkKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShuZXd2YWx1ZSksIHhtbHJwY2xpYi5CaW5hcnkpCisgICAgICAgICAgICBzZWxmLmFzc2VydElzTm9uZShtKQorCiAgICAgZGVmIHRlc3RfZ2V0X2hvc3RfaW5mbyhzZWxmKToKICAgICAgICAgIyBzZWUgYnVnICMzNjEzLCB0aGlzIHJhaXNlZCBhIFR5cGVFcnJvcgogICAgICAgICB0cmFuc3AgPSB4bWxycGMuY2xpZW50LlRyYW5zcG9ydCgpCkBAIC0xNDAsOSArMTg4LDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgKCdob3N0LnRsZCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKCdBdXRob3JpemF0aW9uJywgJ0Jhc2ljIGRYTmxjZz09JyldLCB7fSkpCiAKLSAgICBkZWYgdGVzdF9kdW1wX2J5dGVzKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhUeXBlRXJyb3IsIHhtbHJwY2xpYi5kdW1wcywgKGIibXkgZG9nIGhhcyBmbGVhcyIsKSkKLQogICAgIGRlZiB0ZXN0X3NzbF9wcmVzZW5jZShzZWxmKToKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgaW1wb3J0IHNzbApAQCAtOTc4LDEwICsxMDIzLDQ0IEBACiAgICAgICAgICAgICBsZW4oY29udGVudCkpCiAKIAorY2xhc3MgVXNlQnVpbHRpblR5cGVzVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgorCisgICAgZGVmIHRlc3RfdXNlX2J1aWx0aW5fdHlwZXMoc2VsZik6CisgICAgICAgICMgU2ltcGxlWE1MUlBDRGlzcGF0Y2hlci5fX2luaXRfXyBhY2NlcHRzIHVzZV9idWlsdGluX3R5cGVzLCB3aGljaAorICAgICAgICAjIG1ha2VzIGFsbCBkaXNwYXRjaCBvZiBiaW5hcnkgZGF0YSBhcyBieXRlcyBpbnN0YW5jZXMsIGFuZCBhbGwKKyAgICAgICAgIyBkaXNwYXRjaCBvZiBkYXRldGltZSBhcmd1bWVudCBhcyBkYXRldGltZS5kYXRldGltZSBpbnN0YW5jZXMuCisgICAgICAgIHNlbGYubG9nID0gW10KKyAgICAgICAgZXhwZWN0ZWRfYnl0ZXMgPSBiIm15IGRvZyBoYXMgZmxlYXMiCisgICAgICAgIGV4cGVjdGVkX2RhdGUgPSBkYXRldGltZS5kYXRldGltZSgyMDA4LCA1LCAyNiwgMTgsIDI1LCAxMikKKyAgICAgICAgbWFyc2hhbGVkID0geG1scnBjbGliLmR1bXBzKChleHBlY3RlZF9ieXRlcywgZXhwZWN0ZWRfZGF0ZSksICdmb29iYXInKQorICAgICAgICBkZWYgZm9vYmFyKCphcmdzKToKKyAgICAgICAgICAgIHNlbGYubG9nLmV4dGVuZChhcmdzKQorICAgICAgICBoYW5kbGVyID0geG1scnBjLnNlcnZlci5TaW1wbGVYTUxSUENEaXNwYXRjaGVyKAorICAgICAgICAgICAgYWxsb3dfbm9uZT1UcnVlLCBlbmNvZGluZz1Ob25lLCB1c2VfYnVpbHRpbl90eXBlcz1UcnVlKQorICAgICAgICBoYW5kbGVyLnJlZ2lzdGVyX2Z1bmN0aW9uKGZvb2JhcikKKyAgICAgICAgaGFuZGxlci5fbWFyc2hhbGVkX2Rpc3BhdGNoKG1hcnNoYWxlZCkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChsZW4oc2VsZi5sb2cpLCAyKQorICAgICAgICBteWJ5dGVzLCBteWRhdGUgPSBzZWxmLmxvZworICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHNlbGYubG9nLCBbZXhwZWN0ZWRfYnl0ZXMsIGV4cGVjdGVkX2RhdGVdKQorICAgICAgICBzZWxmLmFzc2VydElzKHR5cGUobXlkYXRlKSwgZGF0ZXRpbWUuZGF0ZXRpbWUpCisgICAgICAgIHNlbGYuYXNzZXJ0SXModHlwZShteWJ5dGVzKSwgYnl0ZXMpCisKKyAgICBkZWYgdGVzdF9jZ2loYW5kbGVyX2hhc191c2VfYnVpbHRpbl90eXBlc19mbGFnKHNlbGYpOgorICAgICAgICBoYW5kbGVyID0geG1scnBjLnNlcnZlci5DR0lYTUxSUENSZXF1ZXN0SGFuZGxlcih1c2VfYnVpbHRpbl90eXBlcz1UcnVlKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoaGFuZGxlci51c2VfYnVpbHRpbl90eXBlcykKKworICAgIGRlZiB0ZXN0X3htbHJwY3NlcnZlcl9oYXNfdXNlX2J1aWx0aW5fdHlwZXNfZmxhZyhzZWxmKToKKyAgICAgICAgc2VydmVyID0geG1scnBjLnNlcnZlci5TaW1wbGVYTUxSUENTZXJ2ZXIoKCJsb2NhbGhvc3QiLCAwKSwKKyAgICAgICAgICAgIHVzZV9idWlsdGluX3R5cGVzPVRydWUpCisgICAgICAgIHNlcnZlci5zZXJ2ZXJfY2xvc2UoKQorICAgICAgICBzZWxmLmFzc2VydFRydWUoc2VydmVyLnVzZV9idWlsdGluX3R5cGVzKQorCisKIEBzdXBwb3J0LnJlYXBfdGhyZWFkcwogZGVmIHRlc3RfbWFpbigpOgogICAgIHhtbHJwY190ZXN0cyA9IFtYTUxSUENUZXN0Q2FzZSwgSGVscGVyVGVzdENhc2UsIERhdGVUaW1lVGVzdENhc2UsCiAgICAgICAgICBCaW5hcnlUZXN0Q2FzZSwgRmF1bHRUZXN0Q2FzZV0KKyAgICB4bWxycGNfdGVzdHMuYXBwZW5kKFVzZUJ1aWx0aW5UeXBlc1Rlc3RDYXNlKQogICAgIHhtbHJwY190ZXN0cy5hcHBlbmQoU2ltcGxlU2VydmVyVGVzdENhc2UpCiAgICAgeG1scnBjX3Rlc3RzLmFwcGVuZChLZWVwYWxpdmVTZXJ2ZXJUZXN0Q2FzZTEpCiAgICAgeG1scnBjX3Rlc3RzLmFwcGVuZChLZWVwYWxpdmVTZXJ2ZXJUZXN0Q2FzZTIpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3htbHJwY19uZXQucHkgYi9MaWIvdGVzdC90ZXN0X3htbHJwY19uZXQucHkKaW5kZXggOWVkOGY4ZC4uOWJhODliMiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF94bWxycGNfbmV0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfeG1scnBjX25ldC5weQpAQCAtMSw2ICsxLDYgQEAKICMhL3Vzci9iaW4vZW52IHB5dGhvbjMKIAotaW1wb3J0IGNvbGxlY3Rpb25zCitpbXBvcnQgY29sbGVjdGlvbnMuYWJjCiBpbXBvcnQgZXJybm8KIGltcG9ydCBzb2NrZXQKIGltcG9ydCBzeXMKQEAgLTQ5LDcgKzQ5LDcgQEAKIAogICAgICAgICAjIFBlcmZvcm0gYSBtaW5pbWFsIHNhbml0eSBjaGVjayBvbiB0aGUgcmVzdWx0LCBqdXN0IHRvIGJlIHN1cmUKICAgICAgICAgIyB0aGUgcmVxdWVzdCBtZWFucyB3aGF0IHdlIHRoaW5rIGl0IG1lYW5zLgotICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYnVpbGRlcnMsIGNvbGxlY3Rpb25zLlNlcXVlbmNlKQorICAgICAgICBzZWxmLmFzc2VydElzSW5zdGFuY2UoYnVpbGRlcnMsIGNvbGxlY3Rpb25zLmFiYy5TZXF1ZW5jZSkKICAgICAgICAgc2VsZi5hc3NlcnRUcnVlKFt4IGZvciB4IGluIGJ1aWxkZXJzIGlmICIzLngiIGluIHhdLCBidWlsZGVycykKIAogCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3ppcGZpbGUucHkgYi9MaWIvdGVzdC90ZXN0X3ppcGZpbGUucHkKaW5kZXggYmIwZDc5YS4uMGIzYTY5NCAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF96aXBmaWxlLnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfemlwZmlsZS5weQpAQCAtMSw5ICsxLDMgQEAKLSMgV2UgY2FuIHRlc3QgcGFydCBvZiB0aGUgbW9kdWxlIHdpdGhvdXQgemxpYi4KLXRyeToKLSAgICBpbXBvcnQgemxpYgotZXhjZXB0IEltcG9ydEVycm9yOgotICAgIHpsaWIgPSBOb25lCi0KIGltcG9ydCBpbwogaW1wb3J0IG9zCiBpbXBvcnQgc3lzCkBAIC0xOSw3ICsxMyw3IEBACiBmcm9tIHJhbmRvbSBpbXBvcnQgcmFuZGludCwgcmFuZG9tCiBmcm9tIHVuaXR0ZXN0IGltcG9ydCBza2lwVW5sZXNzCiAKLWZyb20gdGVzdC5zdXBwb3J0IGltcG9ydCBURVNURk4sIHJ1bl91bml0dGVzdCwgZmluZGZpbGUsIHVubGluaworZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTiwgcnVuX3VuaXR0ZXN0LCBmaW5kZmlsZSwgdW5saW5rLCByZXF1aXJlc196bGliCiAKIFRFU1RGTjIgPSBURVNURk4gKyAiMiIKIFRFU1RGTkRJUiA9IFRFU1RGTiArICJkIgpAQCAtMjY5LDQ0ICsyNjMsNDQgQEAKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX2l0ZXJsaW5lc190ZXN0KGYsIHppcGZpbGUuWklQX1NUT1JFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi56aXBfdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAogCi0gICAgQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3Rfb3Blbl9kZWZsYXRlZChzZWxmKToKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX29wZW5fdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JhbmRvbV9vcGVuX2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi56aXBfcmFuZG9tX29wZW5fdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JlYWRsaW5lX3JlYWRfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgICMgSXNzdWUgIzc2MTA6IGNhbGxzIHRvIHJlYWRsaW5lKCkgaW50ZXJsZWF2ZWQgd2l0aCBjYWxscyB0byByZWFkKCkuCiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnppcF9yZWFkbGluZV9yZWFkX3Rlc3QoZiwgemlwZmlsZS5aSVBfREVGTEFURUQpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9yZWFkbGluZV9kZWZsYXRlZChzZWxmKToKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX3JlYWRsaW5lX3Rlc3QoZiwgemlwZmlsZS5aSVBfREVGTEFURUQpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9yZWFkbGluZXNfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnppcF9yZWFkbGluZXNfdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X2l0ZXJsaW5lc19kZWZsYXRlZChzZWxmKToKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX2l0ZXJsaW5lc190ZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQogCi0gICAgQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfbG93X2NvbXByZXNzaW9uKHNlbGYpOgogICAgICAgICAiIiJDaGVjayBmb3IgY2FzZXMgd2hlcmUgY29tcHJlc3NlZCBkYXRhIGlzIGxhcmdlciB0aGFuIG9yaWdpbmFsLiIiIgogICAgICAgICAjIENyZWF0ZSB0aGUgWklQIGFyY2hpdmUKQEAgLTM3Nyw3ICszNzEsNyBAQAogICAgICAgICAgICAgd2l0aCBvcGVuKFRFU1RGTiwgInJiIikgYXMgZjoKICAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHppcGZwLnJlYWQoVEVTVEZOKSwgZi5yZWFkKCkpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9wZXJfZmlsZV9jb21wcmVzc2lvbihzZWxmKToKICAgICAgICAgIiIiQ2hlY2sgdGhhdCBmaWxlcyB3aXRoaW4gYSBaaXAgYXJjaGl2ZSBjYW4gaGF2ZSBkaWZmZXJlbnQKICAgICAgICAgY29tcHJlc3Npb24gb3B0aW9ucy4iIiIKQEAgLTQ0NiwxOSArNDQwLDE4IEBACiAgICAgICAgICMgcmVtb3ZlIHRoZSB0ZXN0IGZpbGUgc3ViZGlyZWN0b3JpZXMKICAgICAgICAgc2h1dGlsLnJtdHJlZShvcy5wYXRoLmpvaW4ob3MuZ2V0Y3dkKCksICd6aXB0ZXN0MmRpcicpKQogCi0gICAgZGVmIHRlc3Rfd3JpdGVzdHJfY29tcHJlc3Npb24oc2VsZik6CisgICAgZGVmIHRlc3Rfd3JpdGVzdHJfY29tcHJlc3Npb25fc3RvcmVkKHNlbGYpOgogICAgICAgICB6aXBmcCA9IHppcGZpbGUuWmlwRmlsZShURVNURk4yLCAidyIpCiAgICAgICAgIHppcGZwLndyaXRlc3RyKCJhLnR4dCIsICJoZWxsbyB3b3JsZCIsIGNvbXByZXNzX3R5cGU9emlwZmlsZS5aSVBfU1RPUkVEKQotICAgICAgICBpZiB6bGliOgotICAgICAgICAgICAgemlwZnAud3JpdGVzdHIoImIudHh0IiwgImhlbGxvIHdvcmxkIiwgY29tcHJlc3NfdHlwZT16aXBmaWxlLlpJUF9ERUZMQVRFRCkKLQogICAgICAgICBpbmZvID0gemlwZnAuZ2V0aW5mbygnYS50eHQnKQogICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGluZm8uY29tcHJlc3NfdHlwZSwgemlwZmlsZS5aSVBfU1RPUkVEKQogCi0gICAgICAgIGlmIHpsaWI6Ci0gICAgICAgICAgICBpbmZvID0gemlwZnAuZ2V0aW5mbygnYi50eHQnKQotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpbmZvLmNvbXByZXNzX3R5cGUsIHppcGZpbGUuWklQX0RFRkxBVEVEKQotCisgICAgQHJlcXVpcmVzX3psaWIKKyAgICBkZWYgdGVzdF93cml0ZXN0cl9jb21wcmVzc2lvbl9kZWZsYXRlZChzZWxmKToKKyAgICAgICAgemlwZnAgPSB6aXBmaWxlLlppcEZpbGUoVEVTVEZOMiwgInciKQorICAgICAgICB6aXBmcC53cml0ZXN0cigiYi50eHQiLCAiaGVsbG8gd29ybGQiLCBjb21wcmVzc190eXBlPXppcGZpbGUuWklQX0RFRkxBVEVEKQorICAgICAgICBpbmZvID0gemlwZnAuZ2V0aW5mbygnYi50eHQnKQorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGluZm8uY29tcHJlc3NfdHlwZSwgemlwZmlsZS5aSVBfREVGTEFURUQpCiAKICAgICBkZWYgemlwX3Rlc3Rfd3JpdGVzdHJfcGVybWlzc2lvbnMoc2VsZiwgZiwgY29tcHJlc3Npb24pOgogICAgICAgICAjIE1ha2Ugc3VyZSB0aGF0IHdyaXRlc3RyIGNyZWF0ZXMgZmlsZXMgd2l0aCBtb2RlIDA2MDAsCkBAIC01MTQsNyArNTA3LDEyIEBACiAgICAgICAgICAgICBzZWxmLmFzc2VydFJhaXNlcyhWYWx1ZUVycm9yLCB6aXBmcC53cml0ZSwgVEVTVEZOKQogCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisKKworCisKKworICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfdW5pY29kZV9maWxlbmFtZXMoc2VsZik6CiAgICAgICAgICMgYnVnICMxMDgwMQogICAgICAgICBmbmFtZSA9IGZpbmRmaWxlKCd6aXBfY3A0MzdfaGVhZGVyLnppcCcpCkBAIC02MjMsNyArNjIxLDcgQEAKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX3Rlc3QoZiwgemlwZmlsZS5aSVBfU1RPUkVEKQogCi0gICAgQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnppcF90ZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQpAQCAtOTgzLDcgKzk4MSw3IEBACiAgICAgZGVmIHRlc3RfdGVzdHppcF93aXRoX2JhZF9jcmNfc3RvcmVkKHNlbGYpOgogICAgICAgICBzZWxmLmNoZWNrX3Rlc3R6aXBfd2l0aF9iYWRfY3JjKHppcGZpbGUuWklQX1NUT1JFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3Rlc3R6aXBfd2l0aF9iYWRfY3JjX2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBzZWxmLmNoZWNrX3Rlc3R6aXBfd2l0aF9iYWRfY3JjKHppcGZpbGUuWklQX0RFRkxBVEVEKQogCkBAIC0xMDExLDcgKzEwMDksNyBAQAogICAgIGRlZiB0ZXN0X3JlYWRfd2l0aF9iYWRfY3JjX3N0b3JlZChzZWxmKToKICAgICAgICAgc2VsZi5jaGVja19yZWFkX3dpdGhfYmFkX2NyYyh6aXBmaWxlLlpJUF9TVE9SRUQpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9yZWFkX3dpdGhfYmFkX2NyY19kZWZsYXRlZChzZWxmKToKICAgICAgICAgc2VsZi5jaGVja19yZWFkX3dpdGhfYmFkX2NyYyh6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIApAQCAtMTAzMSw3ICsxMDI5LDcgQEAKICAgICBkZWYgdGVzdF9yZWFkX3JldHVybl9zaXplX3N0b3JlZChzZWxmKToKICAgICAgICAgc2VsZi5jaGVja19yZWFkX3JldHVybl9zaXplKHppcGZpbGUuWklQX1NUT1JFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JlYWRfcmV0dXJuX3NpemVfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgIHNlbGYuY2hlY2tfcmVhZF9yZXR1cm5fc2l6ZSh6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIApAQCAtMTEyMSw3ICsxMTE5LDcgQEAKICAgICAgICAgc2VsZi56aXAyLnNldHBhc3N3b3JkKGIicGVybCIpCiAgICAgICAgIHNlbGYuYXNzZXJ0UmFpc2VzKFJ1bnRpbWVFcnJvciwgc2VsZi56aXAyLnJlYWQsICJ6ZXJvIikKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X2dvb2RfcGFzc3dvcmQoc2VsZik6CiAgICAgICAgIHNlbGYuemlwLnNldHBhc3N3b3JkKGIicHl0aG9uIikKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzZWxmLnppcC5yZWFkKCJ0ZXN0LnR4dCIpLCBzZWxmLnBsYWluKQpAQCAtMTE3MSw3ICsxMTY5LDcgQEAKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX3Rlc3QoZiwgemlwZmlsZS5aSVBfU1RPUkVEKQogCi0gICAgQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnppcF90ZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQpAQCAtMTIxMSw3ICsxMjA5LDcgQEAKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX29wZW5fdGVzdChmLCB6aXBmaWxlLlpJUF9TVE9SRUQpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9vcGVuX2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi56aXBfb3Blbl90ZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQpAQCAtMTIzOSwxMyArMTIzNywxMyBAQAogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi56aXBfcmFuZG9tX29wZW5fdGVzdChmLCB6aXBmaWxlLlpJUF9TVE9SRUQpCiAKLSAgICBAc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCisgICAgQHJlcXVpcmVzX3psaWIKICAgICBkZWYgdGVzdF9yYW5kb21fb3Blbl9kZWZsYXRlZChzZWxmKToKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuemlwX3JhbmRvbV9vcGVuX3Rlc3QoZiwgemlwZmlsZS5aSVBfREVGTEFURUQpCiAKIAotQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorQHJlcXVpcmVzX3psaWIKIGNsYXNzIFRlc3RzV2l0aE11bHRpcGxlT3BlbnModW5pdHRlc3QuVGVzdENhc2UpOgogICAgIGRlZiBzZXRVcChzZWxmKToKICAgICAgICAgIyBDcmVhdGUgdGhlIFpJUCBhcmNoaXZlCkBAIC0xNDM3LDI4ICsxNDM1LDI4IEBACiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLml0ZXJsaW5lc190ZXN0KGYsIHppcGZpbGUuWklQX1NUT1JFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JlYWRfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnJlYWRfdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JlYWRsaW5lX3JlYWRfZGVmbGF0ZWQoc2VsZik6CiAgICAgICAgICMgSXNzdWUgIzc2MTA6IGNhbGxzIHRvIHJlYWRsaW5lKCkgaW50ZXJsZWF2ZWQgd2l0aCBjYWxscyB0byByZWFkKCkuCiAgICAgICAgIGZvciBmIGluIChURVNURk4yLCBUZW1wb3JhcnlGaWxlKCksIGlvLkJ5dGVzSU8oKSk6CiAgICAgICAgICAgICBzZWxmLnJlYWRsaW5lX3JlYWRfdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X3JlYWRsaW5lX2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi5yZWFkbGluZV90ZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQogCi0gICAgQHNraXBVbmxlc3MoemxpYiwgInJlcXVpcmVzIHpsaWIiKQorICAgIEByZXF1aXJlc196bGliCiAgICAgZGVmIHRlc3RfcmVhZGxpbmVzX2RlZmxhdGVkKHNlbGYpOgogICAgICAgICBmb3IgZiBpbiAoVEVTVEZOMiwgVGVtcG9yYXJ5RmlsZSgpLCBpby5CeXRlc0lPKCkpOgogICAgICAgICAgICAgc2VsZi5yZWFkbGluZXNfdGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAotICAgIEBza2lwVW5sZXNzKHpsaWIsICJyZXF1aXJlcyB6bGliIikKKyAgICBAcmVxdWlyZXNfemxpYgogICAgIGRlZiB0ZXN0X2l0ZXJsaW5lc19kZWZsYXRlZChzZWxmKToKICAgICAgICAgZm9yIGYgaW4gKFRFU1RGTjIsIFRlbXBvcmFyeUZpbGUoKSwgaW8uQnl0ZXNJTygpKToKICAgICAgICAgICAgIHNlbGYuaXRlcmxpbmVzX3Rlc3QoZiwgemlwZmlsZS5aSVBfREVGTEFURUQpCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90ZXN0X3ppcGZpbGU2NC5weSBiL0xpYi90ZXN0L3Rlc3RfemlwZmlsZTY0LnB5CmluZGV4IDBlN2Q3M2YuLmE4ZmI3YWIgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfemlwZmlsZTY0LnB5CisrKyBiL0xpYi90ZXN0L3Rlc3RfemlwZmlsZTY0LnB5CkBAIC0xMSwxMiArMTEsNiBAQAogICAgICAgICAndGVzdCByZXF1aXJlcyBsb2FkcyBvZiBkaXNrLXNwYWNlIGJ5dGVzIGFuZCBhIGxvbmcgdGltZSB0byBydW4nCiAgICAgKQogCi0jIFdlIGNhbiB0ZXN0IHBhcnQgb2YgdGhlIG1vZHVsZSB3aXRob3V0IHpsaWIuCi10cnk6Ci0gICAgaW1wb3J0IHpsaWIKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICB6bGliID0gTm9uZQotCiBpbXBvcnQgemlwZmlsZSwgb3MsIHVuaXR0ZXN0CiBpbXBvcnQgdGltZQogaW1wb3J0IHN5cwpAQCAtMjQsNyArMTgsNyBAQAogZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KIGZyb20gdGVtcGZpbGUgaW1wb3J0IFRlbXBvcmFyeUZpbGUKIAotZnJvbSB0ZXN0LnN1cHBvcnQgaW1wb3J0IFRFU1RGTiwgcnVuX3VuaXR0ZXN0Citmcm9tIHRlc3Quc3VwcG9ydCBpbXBvcnQgVEVTVEZOLCBydW5fdW5pdHRlc3QsIHJlcXVpcmVzX3psaWIKIAogVEVTVEZOMiA9IFRFU1RGTiArICIyIgogCkBAIC04MSwxMiArNzUsMTIgQEAKICAgICAgICAgZm9yIGYgaW4gVGVtcG9yYXJ5RmlsZSgpLCBURVNURk4yOgogICAgICAgICAgICAgc2VsZi56aXBUZXN0KGYsIHppcGZpbGUuWklQX1NUT1JFRCkKIAotICAgIGlmIHpsaWI6Ci0gICAgICAgIGRlZiB0ZXN0RGVmbGF0ZWQoc2VsZik6Ci0gICAgICAgICAgICAjIFRyeSB0aGUgdGVtcCBmaWxlIGZpcnN0LiAgSWYgd2UgZG8gVEVTVEZOMiBmaXJzdCwgdGhlbiBpdCBob2dzCi0gICAgICAgICAgICAjIGdpZ2FieXRlcyBvZiBkaXNrIHNwYWNlIGZvciB0aGUgZHVyYXRpb24gb2YgdGhlIHRlc3QuCi0gICAgICAgICAgICBmb3IgZiBpbiBUZW1wb3JhcnlGaWxlKCksIFRFU1RGTjI6Ci0gICAgICAgICAgICAgICAgc2VsZi56aXBUZXN0KGYsIHppcGZpbGUuWklQX0RFRkxBVEVEKQorICAgIEByZXF1aXJlc196bGliCisgICAgZGVmIHRlc3REZWZsYXRlZChzZWxmKToKKyAgICAgICAgIyBUcnkgdGhlIHRlbXAgZmlsZSBmaXJzdC4gIElmIHdlIGRvIFRFU1RGTjIgZmlyc3QsIHRoZW4gaXQgaG9ncworICAgICAgICAjIGdpZ2FieXRlcyBvZiBkaXNrIHNwYWNlIGZvciB0aGUgZHVyYXRpb24gb2YgdGhlIHRlc3QuCisgICAgICAgIGZvciBmIGluIFRlbXBvcmFyeUZpbGUoKSwgVEVTVEZOMjoKKyAgICAgICAgICAgIHNlbGYuemlwVGVzdChmLCB6aXBmaWxlLlpJUF9ERUZMQVRFRCkKIAogICAgIGRlZiB0ZWFyRG93bihzZWxmKToKICAgICAgICAgZm9yIGZuYW1lIGluIFRFU1RGTiwgVEVTVEZOMjoKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfemlwaW1wb3J0LnB5IGIvTGliL3Rlc3QvdGVzdF96aXBpbXBvcnQucHkKaW5kZXggZGY1ZmY5ZC4uMzU4OTEwYiAxMDA2NDQKLS0tIGEvTGliL3Rlc3QvdGVzdF96aXBpbXBvcnQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF96aXBpbXBvcnQucHkKQEAgLTksMTIgKzksNiBAQAogZnJvbSB0ZXN0IGltcG9ydCBzdXBwb3J0CiBmcm9tIHRlc3QudGVzdF9pbXBvcnRob29rcyBpbXBvcnQgSW1wb3J0SG9va3NCYXNlVGVzdENhc2UsIHRlc3Rfc3JjLCB0ZXN0X2NvCiAKLSMgc29tZSB0ZXN0cyBjYW4gYmUgcmFuIGV2ZW4gd2l0aG91dCB6bGliCi10cnk6Ci0gICAgaW1wb3J0IHpsaWIKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICB6bGliID0gTm9uZQotCiBmcm9tIHppcGZpbGUgaW1wb3J0IFppcEZpbGUsIFppcEluZm8sIFpJUF9TVE9SRUQsIFpJUF9ERUZMQVRFRAogCiBpbXBvcnQgemlwaW1wb3J0CkBAIC0yNSw3ICsxOSw3IEBACiBmcm9tIHRyYWNlYmFjayBpbXBvcnQgZXh0cmFjdF90YiwgZXh0cmFjdF9zdGFjaywgcHJpbnRfdGIKIHJhaXNlX3NyYyA9ICdkZWYgZG9fcmFpc2UoKTogcmFpc2UgVHlwZUVycm9yXG4nCiAKLWRlZiBtYWtlX3B5YyhjbywgbXRpbWUpOgorZGVmIG1ha2VfcHljKGNvLCBtdGltZSwgc2l6ZSk6CiAgICAgZGF0YSA9IG1hcnNoYWwuZHVtcHMoY28pCiAgICAgaWYgdHlwZShtdGltZSkgaXMgdHlwZSgwLjApOgogICAgICAgICAjIE1hYyBtdGltZXMgbmVlZCBhIGJpdCBvZiBzcGVjaWFsIGNhc2luZwpAQCAtMzMsMTQgKzI3LDE0IEBACiAgICAgICAgICAgICBtdGltZSA9IGludChtdGltZSkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG10aW1lID0gaW50KC0weDEwMDAwMDAwMCArIGludChtdGltZSkpCi0gICAgcHljID0gaW1wLmdldF9tYWdpYygpICsgc3RydWN0LnBhY2soIjxpIiwgaW50KG10aW1lKSkgKyBkYXRhCisgICAgcHljID0gaW1wLmdldF9tYWdpYygpICsgc3RydWN0LnBhY2soIjxpaSIsIGludChtdGltZSksIHNpemUgJiAweEZGRkZGRkZGKSArIGRhdGEKICAgICByZXR1cm4gcHljCiAKIGRlZiBtb2R1bGVfcGF0aF90b19kb3R0ZWRfbmFtZShwYXRoKToKICAgICByZXR1cm4gcGF0aC5yZXBsYWNlKG9zLnNlcCwgJy4nKQogCiBOT1cgPSB0aW1lLnRpbWUoKQotdGVzdF9weWMgPSBtYWtlX3B5Yyh0ZXN0X2NvLCBOT1cpCit0ZXN0X3B5YyA9IG1ha2VfcHljKHRlc3RfY28sIE5PVywgbGVuKHRlc3Rfc3JjKSkKIAogCiBURVNUTU9EID0gInppcHRlc3Rtb2R1bGUiCkBAIC0yOTksNyArMjkzLDcgQEAKICAgICAgICAgICAgIHJldHVybiBfX2ZpbGVfXwogICAgICAgICBpZiBfX2xvYWRlcl9fLmdldF9kYXRhKCJzb21lLmRhdGEiKSAhPSBiInNvbWUgZGF0YSI6CiAgICAgICAgICAgICByYWlzZSBBc3NlcnRpb25FcnJvcigiYmFkIGRhdGEiKVxuIiIiCi0gICAgICAgIHB5YyA9IG1ha2VfcHljKGNvbXBpbGUoc3JjLCAiPD8/Pz4iLCAiZXhlYyIpLCBOT1cpCisgICAgICAgIHB5YyA9IG1ha2VfcHljKGNvbXBpbGUoc3JjLCAiPD8/Pz4iLCAiZXhlYyIpLCBOT1csIGxlbihzcmMpKQogICAgICAgICBmaWxlcyA9IHtURVNUTU9EICsgcHljX2V4dDogKE5PVywgcHljKSwKICAgICAgICAgICAgICAgICAgInNvbWUuZGF0YSI6IChOT1csICJzb21lIGRhdGEiKX0KICAgICAgICAgc2VsZi5kb1Rlc3QocHljX2V4dCwgZmlsZXMsIFRFU1RNT0QpCkBAIC0zMTksNyArMzEzLDcgQEAKICAgICAgICAgc2VsZi5kb1Rlc3QoIi5weSIsIGZpbGVzLCBURVNUTU9ELCBjYWxsPXNlbGYuYXNzZXJ0TW9kdWxlU291cmNlKQogCiAgICAgZGVmIHRlc3RHZXRDb21waWxlZFNvdXJjZShzZWxmKToKLSAgICAgICAgcHljID0gbWFrZV9weWMoY29tcGlsZSh0ZXN0X3NyYywgIjw/Pz8+IiwgImV4ZWMiKSwgTk9XKQorICAgICAgICBweWMgPSBtYWtlX3B5Yyhjb21waWxlKHRlc3Rfc3JjLCAiPD8/Pz4iLCAiZXhlYyIpLCBOT1csIGxlbih0ZXN0X3NyYykpCiAgICAgICAgIGZpbGVzID0ge1RFU1RNT0QgKyAiLnB5IjogKE5PVywgdGVzdF9zcmMpLAogICAgICAgICAgICAgICAgICBURVNUTU9EICsgcHljX2V4dDogKE5PVywgcHljKX0KICAgICAgICAgc2VsZi5kb1Rlc3QocHljX2V4dCwgZmlsZXMsIFRFU1RNT0QsIGNhbGw9c2VsZi5hc3NlcnRNb2R1bGVTb3VyY2UpCkBAIC0zOTIsNyArMzg2LDcgQEAKICAgICAgICAgICAgIG9zLnJlbW92ZShmaWxlbmFtZSkKIAogCi1AdW5pdHRlc3Quc2tpcFVubGVzcyh6bGliLCAicmVxdWlyZXMgemxpYiIpCitAc3VwcG9ydC5yZXF1aXJlc196bGliCiBjbGFzcyBDb21wcmVzc2VkWmlwSW1wb3J0VGVzdENhc2UoVW5jb21wcmVzc2VkWmlwSW1wb3J0VGVzdENhc2UpOgogICAgIGNvbXByZXNzaW9uID0gWklQX0RFRkxBVEVECiAKQEAgLTQxNyw3ICs0MTEsNyBAQAogCiAgICAgZGVmIHRlc3RFbXB0eUZpbGUoc2VsZik6CiAgICAgICAgIHN1cHBvcnQudW5saW5rKFRFU1RNT0QpCi0gICAgICAgIG9wZW4oVEVTVE1PRCwgJ3crJykuY2xvc2UoKQorICAgICAgICBzdXBwb3J0LmNyZWF0ZV9lbXB0eV9maWxlKFRFU1RNT0QpCiAgICAgICAgIHNlbGYuYXNzZXJ0WmlwRmFpbHVyZShURVNUTU9EKQogCiAgICAgZGVmIHRlc3RGaWxlVW5yZWFkYWJsZShzZWxmKToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfemlwaW1wb3J0X3N1cHBvcnQucHkgYi9MaWIvdGVzdC90ZXN0X3ppcGltcG9ydF9zdXBwb3J0LnB5CmluZGV4IGE1NThkN2QuLjBjOTNhOGMgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3Rlc3RfemlwaW1wb3J0X3N1cHBvcnQucHkKKysrIGIvTGliL3Rlc3QvdGVzdF96aXBpbXBvcnRfc3VwcG9ydC5weQpAQCAtMTU2LDIwICsxNTYsMTkgQEAKICAgICAgICAgICAgICAgICAgICAgdGVzdF96aXBwZWRfZG9jdGVzdC50ZXN0X0RvY1Rlc3RSdW5uZXIudmVyYm9zZV9mbGFnLAogICAgICAgICAgICAgICAgICAgICB0ZXN0X3ppcHBlZF9kb2N0ZXN0LnRlc3RfRXhhbXBsZSwKICAgICAgICAgICAgICAgICAgICAgdGVzdF96aXBwZWRfZG9jdGVzdC50ZXN0X2RlYnVnLAotICAgICAgICAgICAgICAgICAgICB0ZXN0X3ppcHBlZF9kb2N0ZXN0LnRlc3RfcGRiX3NldF90cmFjZSwKLSAgICAgICAgICAgICAgICAgICAgdGVzdF96aXBwZWRfZG9jdGVzdC50ZXN0X3BkYl9zZXRfdHJhY2VfbmVzdGVkLAogICAgICAgICAgICAgICAgICAgICB0ZXN0X3ppcHBlZF9kb2N0ZXN0LnRlc3RfdGVzdHNvdXJjZSwKICAgICAgICAgICAgICAgICAgICAgdGVzdF96aXBwZWRfZG9jdGVzdC50ZXN0X3RyYWlsaW5nX3NwYWNlX2luX3Rlc3QsCiAgICAgICAgICAgICAgICAgICAgIHRlc3RfemlwcGVkX2RvY3Rlc3QudGVzdF9Eb2NUZXN0U3VpdGUsCiAgICAgICAgICAgICAgICAgICAgIHRlc3RfemlwcGVkX2RvY3Rlc3QudGVzdF9Eb2NUZXN0RmluZGVyLAogICAgICAgICAgICAgICAgIF0KLSAgICAgICAgICAgICAgICAjIFRoZXNlIHJlbWFpbmluZyB0ZXN0cyBhcmUgdGhlIG9uZXMgd2hpY2ggbmVlZCBhY2Nlc3MKKyAgICAgICAgICAgICAgICAjIFRoZXNlIHRlc3RzIGFyZSB0aGUgb25lcyB3aGljaCBuZWVkIGFjY2VzcwogICAgICAgICAgICAgICAgICMgdG8gdGhlIGRhdGEgZmlsZXMsIHNvIHdlIGRvbid0IHJ1biB0aGVtCiAgICAgICAgICAgICAgICAgZmFpbF9kdWVfdG9fbWlzc2luZ19kYXRhX2ZpbGVzID0gWwogICAgICAgICAgICAgICAgICAgICB0ZXN0X3ppcHBlZF9kb2N0ZXN0LnRlc3RfRG9jRmlsZVN1aXRlLAogICAgICAgICAgICAgICAgICAgICB0ZXN0X3ppcHBlZF9kb2N0ZXN0LnRlc3RfdGVzdGZpbGUsCiAgICAgICAgICAgICAgICAgICAgIHRlc3RfemlwcGVkX2RvY3Rlc3QudGVzdF91bml0dGVzdF9yZXBvcnRmbGFncywKICAgICAgICAgICAgICAgICBdCisKICAgICAgICAgICAgICAgICBmb3Igb2JqIGluIGtub3duX2dvb2RfdGVzdHM6CiAgICAgICAgICAgICAgICAgICAgIF9ydW5fb2JqZWN0X2RvY3Rlc3Qob2JqLCB0ZXN0X3ppcHBlZF9kb2N0ZXN0KQogICAgICAgICAgICAgZmluYWxseToKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rlc3RfemxpYi5weSBiL0xpYi90ZXN0L3Rlc3RfemxpYi5weQppbmRleCBkZmZhMmNhLi5jMzYxZWFjIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90ZXN0X3psaWIucHkKKysrIGIvTGliL3Rlc3QvdGVzdF96bGliLnB5CkBAIC0xMyw2ICsxMywxNyBAQAogICAgIG1tYXAgPSBOb25lCiAKIAorY2xhc3MgVmVyc2lvblRlc3RDYXNlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKworICAgIGRlZiB0ZXN0X2xpYnJhcnlfdmVyc2lvbihzZWxmKToKKyAgICAgICAgIyBUZXN0IHRoYXQgdGhlIG1ham9yIHZlcnNpb24gb2YgdGhlIGFjdHVhbCBsaWJyYXJ5IGluIHVzZSBtYXRjaGVzIHRoZQorICAgICAgICAjIG1ham9yIHZlcnNpb24gdGhhdCB3ZSB3ZXJlIGNvbXBpbGVkIGFnYWluc3QuIFdlIGNhbid0IGd1YXJhbnRlZSB0aGF0CisgICAgICAgICMgdGhlIG1pbm9yIHZlcnNpb25zIHdpbGwgbWF0Y2ggKGV2ZW4gb24gdGhlIG1hY2hpbmUgb24gd2hpY2ggdGhlIG1vZHVsZQorICAgICAgICAjIHdhcyBjb21waWxlZCksIGFuZCB0aGUgQVBJIGlzIHN0YWJsZSBiZXR3ZWVuIG1pbm9yIHZlcnNpb25zLCBzbworICAgICAgICAjIHRlc3Rpbmcgb25seSB0aGUgbWFqb3IgdmVyc2lvbnMgYXZvaWRzIHNwdXJpb3VzIGZhaWx1cmVzLgorICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHpsaWIuWkxJQl9SVU5USU1FX1ZFUlNJT05bMF0sIHpsaWIuWkxJQl9WRVJTSU9OWzBdKQorCisKIGNsYXNzIENoZWNrc3VtVGVzdENhc2UodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICMgY2hlY2tzdW0gdGVzdCBjYXNlcwogICAgIGRlZiB0ZXN0X2NyYzMyc3RhcnQoc2VsZik6CkBAIC00NDcsNiArNDU4LDI2IEBACiAgICAgICAgIHkgKz0gZGNvLmZsdXNoKCkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh5LCBiJ2ZvbycpCiAKKyAgICBkZWYgdGVzdF9kZWNvbXByZXNzX2VvZihzZWxmKToKKyAgICAgICAgeCA9IGIneFx4OWNLXHhjYlx4Y2ZceDA3XHgwMFx4MDJceDgyXHgwMUUnICAjICdmb28nCisgICAgICAgIGRjbyA9IHpsaWIuZGVjb21wcmVzc29iaigpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoZGNvLmVvZikKKyAgICAgICAgZGNvLmRlY29tcHJlc3MoeFs6LTVdKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGRjby5lb2YpCisgICAgICAgIGRjby5kZWNvbXByZXNzKHhbLTU6XSkKKyAgICAgICAgc2VsZi5hc3NlcnRUcnVlKGRjby5lb2YpCisgICAgICAgIGRjby5mbHVzaCgpCisgICAgICAgIHNlbGYuYXNzZXJ0VHJ1ZShkY28uZW9mKQorCisgICAgZGVmIHRlc3RfZGVjb21wcmVzc19lb2ZfaW5jb21wbGV0ZV9zdHJlYW0oc2VsZik6CisgICAgICAgIHggPSBiJ3hceDljS1x4Y2JceGNmXHgwN1x4MDBceDAyXHg4Mlx4MDFFJyAgIyAnZm9vJworICAgICAgICBkY28gPSB6bGliLmRlY29tcHJlc3NvYmooKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGRjby5lb2YpCisgICAgICAgIGRjby5kZWNvbXByZXNzKHhbOi01XSkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShkY28uZW9mKQorICAgICAgICBkY28uZmx1c2goKQorICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGRjby5lb2YpCisKICAgICBpZiBoYXNhdHRyKHpsaWIuY29tcHJlc3NvYmooKSwgImNvcHkiKToKICAgICAgICAgZGVmIHRlc3RfY29tcHJlc3Njb3B5KHNlbGYpOgogICAgICAgICAgICAgIyBUZXN0IGNvcHlpbmcgYSBjb21wcmVzc2lvbiBvYmplY3QKQEAgLTYyNyw2ICs2NTgsNyBAQAogCiBkZWYgdGVzdF9tYWluKCk6CiAgICAgc3VwcG9ydC5ydW5fdW5pdHRlc3QoCisgICAgICAgIFZlcnNpb25UZXN0Q2FzZSwKICAgICAgICAgQ2hlY2tzdW1UZXN0Q2FzZSwKICAgICAgICAgQ2hlY2tzdW1CaWdCdWZmZXJUZXN0Q2FzZSwKICAgICAgICAgRXhjZXB0aW9uVGVzdENhc2UsCmRpZmYgLS1naXQgYS9MaWIvdGVzdC90aHJlYWRlZF9pbXBvcnRfaGFuZ2Vycy5weSBiL0xpYi90ZXN0L3RocmVhZGVkX2ltcG9ydF9oYW5nZXJzLnB5CmluZGV4IGFkZjAzZTMuLjU0ODRlNjAgMTAwNjQ0Ci0tLSBhL0xpYi90ZXN0L3RocmVhZGVkX2ltcG9ydF9oYW5nZXJzLnB5CisrKyBiL0xpYi90ZXN0L3RocmVhZGVkX2ltcG9ydF9oYW5nZXJzLnB5CkBAIC0zNSw4ICszNSwxMSBAQAogICAgICAgICAoIm9zLnBhdGguYWJzcGF0aCIsIG9zLnBhdGguYWJzcGF0aCwgKCcuJywpKSwKICAgICAgICAgXToKIAotICAgIHQgPSBXb3JrZXIoZnVuYywgYXJncykKLSAgICB0LnN0YXJ0KCkKLSAgICB0LmpvaW4oVElNRU9VVCkKLSAgICBpZiB0LmlzX2FsaXZlKCk6Ci0gICAgICAgIGVycm9ycy5hcHBlbmQoIiVzIGFwcGVhcmVkIHRvIGhhbmciICUgbmFtZSkKKyAgICB0cnk6CisgICAgICAgIHQgPSBXb3JrZXIoZnVuYywgYXJncykKKyAgICAgICAgdC5zdGFydCgpCisgICAgICAgIHQuam9pbihUSU1FT1VUKQorICAgICAgICBpZiB0LmlzX2FsaXZlKCk6CisgICAgICAgICAgICBlcnJvcnMuYXBwZW5kKCIlcyBhcHBlYXJlZCB0byBoYW5nIiAlIG5hbWUpCisgICAgZmluYWxseToKKyAgICAgICAgZGVsIHQKZGlmZiAtLWdpdCBhL0xpYi90ZXN0L3Rva2VuaXplX3Rlc3RzLnR4dCBiL0xpYi90ZXN0L3Rva2VuaXplX3Rlc3RzLnR4dAppbmRleCAwNmM4M2IwLi4yYzVmYjEwIDEwMDY0NAotLS0gYS9MaWIvdGVzdC90b2tlbml6ZV90ZXN0cy50eHQKKysrIGIvTGliL3Rlc3QvdG9rZW5pemVfdGVzdHMudHh0CkBAIC0xMTQsOCArMTE0LDEyIEBACiB5ID0gYiJhYmMiICsgQiJBQkMiCiB4ID0gYnInYWJjJyArIEJyJ0FCQycgKyBiUidBQkMnICsgQlInQUJDJwogeSA9IGJyImFiYyIgKyBCciJBQkMiICsgYlIiQUJDIiArIEJSIkFCQyIKK3ggPSByYidhYmMnICsgckInQUJDJyArIFJiJ0FCQycgKyBSQidBQkMnCit5ID0gcmIiYWJjIiArIHJCIkFCQyIgKyBSYiJBQkMiICsgUkIiQUJDIgogeCA9IGJyJ1xcJyArIEJSJ1xcJworeCA9IHJiJ1xcJyArIFJCJ1xcJwogeCA9IGJyJ1wnJyArICcnCit4ID0gcmInXCcnICsgJycKIHkgPSBicicnJwogZm9vIGJhciBcXAogYmF6JycnICsgQlInJycKQEAgLTEyNCw2ICsxMjgsMTAgQEAKIGJhciBcXCBiYXoKICIiIiArIGJSJycnc3BhbQogJycnCit5ID0gckIiIiJmb28KK2JhciBcXCBiYXoKKyIiIiArIFJiJycnc3BhbQorJycnCiAKICMgSW5kZW50YXRpb24KIGlmIDE6CmRpZmYgLS1naXQgYS9MaWIvdGV4dHdyYXAucHkgYi9MaWIvdGV4dHdyYXAucHkKaW5kZXggZGZiNDAwNS4uMGFlYmEzZiAxMDA2NDQKLS0tIGEvTGliL3RleHR3cmFwLnB5CisrKyBiL0xpYi90ZXh0d3JhcC5weQpAQCAtNSw3ICs1LDcgQEAKICMgQ29weXJpZ2h0IChDKSAyMDAyLCAyMDAzIFB5dGhvbiBTb2Z0d2FyZSBGb3VuZGF0aW9uLgogIyBXcml0dGVuIGJ5IEdyZWcgV2FyZCA8Z3dhcmRAcHl0aG9uLm5ldD4KIAotaW1wb3J0IHN0cmluZywgcmUKK2ltcG9ydCByZQogCiBfX2FsbF9fID0gWydUZXh0V3JhcHBlcicsICd3cmFwJywgJ2ZpbGwnLCAnZGVkZW50J10KIApkaWZmIC0tZ2l0IGEvTGliL3RocmVhZGluZy5weSBiL0xpYi90aHJlYWRpbmcucHkKaW5kZXggZmU5MmYxMC4uZTg1ZTI2OSAxMDA2NDQKLS0tIGEvTGliL3RocmVhZGluZy5weQorKysgYi9MaWIvdGhyZWFkaW5nLnB5CkBAIC0yMCwxMiArMjAsMTIgQEAKIAogX19hbGxfXyA9IFsnYWN0aXZlX2NvdW50JywgJ0NvbmRpdGlvbicsICdjdXJyZW50X3RocmVhZCcsICdlbnVtZXJhdGUnLCAnRXZlbnQnLAogICAgICAgICAgICAnTG9jaycsICdSTG9jaycsICdTZW1hcGhvcmUnLCAnQm91bmRlZFNlbWFwaG9yZScsICdUaHJlYWQnLCAnQmFycmllcicsCi0gICAgICAgICAgICdUaW1lcicsICdzZXRwcm9maWxlJywgJ3NldHRyYWNlJywgJ2xvY2FsJywgJ3N0YWNrX3NpemUnXQorICAgICAgICAgICAnVGltZXInLCAnVGhyZWFkRXJyb3InLCAnc2V0cHJvZmlsZScsICdzZXR0cmFjZScsICdsb2NhbCcsICdzdGFja19zaXplJ10KIAogIyBSZW5hbWUgc29tZSBzdHVmZiBzbyAiZnJvbSB0aHJlYWRpbmcgaW1wb3J0ICoiIGlzIHNhZmUKIF9zdGFydF9uZXdfdGhyZWFkID0gX3RocmVhZC5zdGFydF9uZXdfdGhyZWFkCiBfYWxsb2NhdGVfbG9jayA9IF90aHJlYWQuYWxsb2NhdGVfbG9jawotX2dldF9pZGVudCA9IF90aHJlYWQuZ2V0X2lkZW50CitnZXRfaWRlbnQgPSBfdGhyZWFkLmdldF9pZGVudAogVGhyZWFkRXJyb3IgPSBfdGhyZWFkLmVycm9yCiB0cnk6CiAgICAgX0NSTG9jayA9IF90aHJlYWQuUkxvY2sKQEAgLTUzLDcgKzUzLDcgQEAKICAgICAgICAgICAgICAgICBmb3JtYXQgPSBmb3JtYXQgJSBhcmdzCiAgICAgICAgICAgICAgICAgIyBJc3N1ZSAjNDE4ODogY2FsbGluZyBjdXJyZW50X3RocmVhZCgpIGNhbiBpbmN1ciBhbiBpbmZpbml0ZQogICAgICAgICAgICAgICAgICMgcmVjdXJzaW9uIGlmIGl0IGhhcyB0byBjcmVhdGUgYSBEdW1teVRocmVhZCBvbiB0aGUgZmx5LgotICAgICAgICAgICAgICAgIGlkZW50ID0gX2dldF9pZGVudCgpCisgICAgICAgICAgICAgICAgaWRlbnQgPSBnZXRfaWRlbnQoKQogICAgICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICAgICAgbmFtZSA9IF9hY3RpdmVbaWRlbnRdLm5hbWUKICAgICAgICAgICAgICAgICBleGNlcHQgS2V5RXJyb3I6CkBAIC0xMTEsNyArMTExLDcgQEAKICAgICAgICAgICAgICAgICBzZWxmLl9fY2xhc3NfXy5fX25hbWVfXywgb3duZXIsIHNlbGYuX2NvdW50KQogCiAgICAgZGVmIGFjcXVpcmUoc2VsZiwgYmxvY2tpbmc9VHJ1ZSwgdGltZW91dD0tMSk6Ci0gICAgICAgIG1lID0gX2dldF9pZGVudCgpCisgICAgICAgIG1lID0gZ2V0X2lkZW50KCkKICAgICAgICAgaWYgc2VsZi5fb3duZXIgPT0gbWU6CiAgICAgICAgICAgICBzZWxmLl9jb3VudCA9IHNlbGYuX2NvdW50ICsgMQogICAgICAgICAgICAgaWYgX19kZWJ1Z19fOgpAQCAtMTMxLDcgKzEzMSw3IEBACiAgICAgX19lbnRlcl9fID0gYWNxdWlyZQogCiAgICAgZGVmIHJlbGVhc2Uoc2VsZik6Ci0gICAgICAgIGlmIHNlbGYuX293bmVyICE9IF9nZXRfaWRlbnQoKToKKyAgICAgICAgaWYgc2VsZi5fb3duZXIgIT0gZ2V0X2lkZW50KCk6CiAgICAgICAgICAgICByYWlzZSBSdW50aW1lRXJyb3IoImNhbm5vdCByZWxlYXNlIHVuLWFjcXVpcmVkIGxvY2siKQogICAgICAgICBzZWxmLl9jb3VudCA9IGNvdW50ID0gc2VsZi5fY291bnQgLSAxCiAgICAgICAgIGlmIG5vdCBjb3VudDoKQEAgLTE1Nyw2ICsxNTcsOCBAQAogICAgIGRlZiBfcmVsZWFzZV9zYXZlKHNlbGYpOgogICAgICAgICBpZiBfX2RlYnVnX186CiAgICAgICAgICAgICBzZWxmLl9ub3RlKCIlcy5fcmVsZWFzZV9zYXZlKCkiLCBzZWxmKQorICAgICAgICBpZiBzZWxmLl9jb3VudCA9PSAwOgorICAgICAgICAgICAgcmFpc2UgUnVudGltZUVycm9yKCJjYW5ub3QgcmVsZWFzZSB1bi1hY3F1aXJlZCBsb2NrIikKICAgICAgICAgY291bnQgPSBzZWxmLl9jb3VudAogICAgICAgICBzZWxmLl9jb3VudCA9IDAKICAgICAgICAgb3duZXIgPSBzZWxmLl9vd25lcgpAQCAtMTY1LDE1ICsxNjcsMTIgQEAKICAgICAgICAgcmV0dXJuIChjb3VudCwgb3duZXIpCiAKICAgICBkZWYgX2lzX293bmVkKHNlbGYpOgotICAgICAgICByZXR1cm4gc2VsZi5fb3duZXIgPT0gX2dldF9pZGVudCgpCisgICAgICAgIHJldHVybiBzZWxmLl9vd25lciA9PSBnZXRfaWRlbnQoKQogCiBfUHlSTG9jayA9IF9STG9jawogCiAKLWRlZiBDb25kaXRpb24oKmFyZ3MsICoqa3dhcmdzKToKLSAgICByZXR1cm4gX0NvbmRpdGlvbigqYXJncywgKiprd2FyZ3MpCi0KLWNsYXNzIF9Db25kaXRpb24oX1ZlcmJvc2UpOgorY2xhc3MgQ29uZGl0aW9uKF9WZXJib3NlKToKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBsb2NrPU5vbmUsIHZlcmJvc2U9Tm9uZSk6CiAgICAgICAgIF9WZXJib3NlLl9faW5pdF9fKHNlbGYsIHZlcmJvc2UpCkBAIC0zMDYsMTAgKzMwNSw3IEBACiAgICAgbm90aWZ5QWxsID0gbm90aWZ5X2FsbAogCiAKLWRlZiBTZW1hcGhvcmUoKmFyZ3MsICoqa3dhcmdzKToKLSAgICByZXR1cm4gX1NlbWFwaG9yZSgqYXJncywgKiprd2FyZ3MpCi0KLWNsYXNzIF9TZW1hcGhvcmUoX1ZlcmJvc2UpOgorY2xhc3MgU2VtYXBob3JlKF9WZXJib3NlKToKIAogICAgICMgQWZ0ZXIgVGltIFBldGVycycgc2VtYXBob3JlIGNsYXNzLCBidXQgbm90IHF1aXRlIHRoZSBzYW1lIChubyBtYXhpbXVtKQogCkBAIC0zNjQsMjUgKzM2MCwxOSBAQAogICAgICAgICBzZWxmLnJlbGVhc2UoKQogCiAKLWRlZiBCb3VuZGVkU2VtYXBob3JlKCphcmdzLCAqKmt3YXJncyk6Ci0gICAgcmV0dXJuIF9Cb3VuZGVkU2VtYXBob3JlKCphcmdzLCAqKmt3YXJncykKLQotY2xhc3MgX0JvdW5kZWRTZW1hcGhvcmUoX1NlbWFwaG9yZSk6CitjbGFzcyBCb3VuZGVkU2VtYXBob3JlKFNlbWFwaG9yZSk6CiAgICAgIiIiU2VtYXBob3JlIHRoYXQgY2hlY2tzIHRoYXQgIyByZWxlYXNlcyBpcyA8PSAjIGFjcXVpcmVzIiIiCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHZhbHVlPTEsIHZlcmJvc2U9Tm9uZSk6Ci0gICAgICAgIF9TZW1hcGhvcmUuX19pbml0X18oc2VsZiwgdmFsdWUsIHZlcmJvc2UpCisgICAgICAgIFNlbWFwaG9yZS5fX2luaXRfXyhzZWxmLCB2YWx1ZSwgdmVyYm9zZSkKICAgICAgICAgc2VsZi5faW5pdGlhbF92YWx1ZSA9IHZhbHVlCiAKICAgICBkZWYgcmVsZWFzZShzZWxmKToKICAgICAgICAgaWYgc2VsZi5fdmFsdWUgPj0gc2VsZi5faW5pdGlhbF92YWx1ZToKICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIlNlbWFwaG9yZSByZWxlYXNlZCB0b28gbWFueSB0aW1lcyIpCi0gICAgICAgIHJldHVybiBfU2VtYXBob3JlLnJlbGVhc2Uoc2VsZikKKyAgICAgICAgcmV0dXJuIFNlbWFwaG9yZS5yZWxlYXNlKHNlbGYpCiAKIAotZGVmIEV2ZW50KCphcmdzLCAqKmt3YXJncyk6Ci0gICAgcmV0dXJuIF9FdmVudCgqYXJncywgKiprd2FyZ3MpCi0KLWNsYXNzIF9FdmVudChfVmVyYm9zZSk6CitjbGFzcyBFdmVudChfVmVyYm9zZSk6CiAKICAgICAjIEFmdGVyIFRpbSBQZXRlcnMnIGV2ZW50IGNsYXNzICh3aXRob3V0IGlzX3Bvc3RlZCgpKQogCkBAIC02MjYsNyArNjE2LDcgQEAKICAgICAjWFhYIF9fZXhjX2NsZWFyID0gX3N5cy5leGNfY2xlYXIKIAogICAgIGRlZiBfX2luaXRfXyhzZWxmLCBncm91cD1Ob25lLCB0YXJnZXQ9Tm9uZSwgbmFtZT1Ob25lLAotICAgICAgICAgICAgICAgICBhcmdzPSgpLCBrd2FyZ3M9Tm9uZSwgdmVyYm9zZT1Ob25lKToKKyAgICAgICAgICAgICAgICAgYXJncz0oKSwga3dhcmdzPU5vbmUsIHZlcmJvc2U9Tm9uZSwgKiwgZGFlbW9uPU5vbmUpOgogICAgICAgICBhc3NlcnQgZ3JvdXAgaXMgTm9uZSwgImdyb3VwIGFyZ3VtZW50IG11c3QgYmUgTm9uZSBmb3Igbm93IgogICAgICAgICBfVmVyYm9zZS5fX2luaXRfXyhzZWxmLCB2ZXJib3NlKQogICAgICAgICBpZiBrd2FyZ3MgaXMgTm9uZToKQEAgLTYzNSw3ICs2MjUsMTAgQEAKICAgICAgICAgc2VsZi5fbmFtZSA9IHN0cihuYW1lIG9yIF9uZXduYW1lKCkpCiAgICAgICAgIHNlbGYuX2FyZ3MgPSBhcmdzCiAgICAgICAgIHNlbGYuX2t3YXJncyA9IGt3YXJncwotICAgICAgICBzZWxmLl9kYWVtb25pYyA9IHNlbGYuX3NldF9kYWVtb24oKQorICAgICAgICBpZiBkYWVtb24gaXMgbm90IE5vbmU6CisgICAgICAgICAgICBzZWxmLl9kYWVtb25pYyA9IGRhZW1vbgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc2VsZi5fZGFlbW9uaWMgPSBjdXJyZW50X3RocmVhZCgpLmRhZW1vbgogICAgICAgICBzZWxmLl9pZGVudCA9IE5vbmUKICAgICAgICAgc2VsZi5fc3RhcnRlZCA9IEV2ZW50KCkKICAgICAgICAgc2VsZi5fc3RvcHBlZCA9IEZhbHNlCkBAIC02NTMsMTAgKzY0Niw2IEBACiAgICAgICAgICAgICBzZWxmLl9ibG9jay5fX2luaXRfXygpCiAgICAgICAgIHNlbGYuX3N0YXJ0ZWQuX3Jlc2V0X2ludGVybmFsX2xvY2tzKCkKIAotICAgIGRlZiBfc2V0X2RhZW1vbihzZWxmKToKLSAgICAgICAgIyBPdmVycmlkZGVuIGluIF9NYWluVGhyZWFkIGFuZCBfRHVtbXlUaHJlYWQKLSAgICAgICAgcmV0dXJuIGN1cnJlbnRfdGhyZWFkKCkuZGFlbW9uCi0KICAgICBkZWYgX19yZXByX18oc2VsZik6CiAgICAgICAgIGFzc2VydCBzZWxmLl9pbml0aWFsaXplZCwgIlRocmVhZC5fX2luaXRfXygpIHdhcyBub3QgY2FsbGVkIgogICAgICAgICBzdGF0dXMgPSAiaW5pdGlhbCIKQEAgLTcxOCw3ICs3MDcsNyBAQAogICAgICAgICAgICAgcmFpc2UKIAogICAgIGRlZiBfc2V0X2lkZW50KHNlbGYpOgotICAgICAgICBzZWxmLl9pZGVudCA9IF9nZXRfaWRlbnQoKQorICAgICAgICBzZWxmLl9pZGVudCA9IGdldF9pZGVudCgpCiAKICAgICBkZWYgX2Jvb3RzdHJhcF9pbm5lcihzZWxmKToKICAgICAgICAgdHJ5OgpAQCAtNzkxLDcgKzc4MCw3IEBACiAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICAjIFdlIGRvbid0IGNhbGwgc2VsZi5fZGVsZXRlKCkgYmVjYXVzZSBpdCBhbHNvCiAgICAgICAgICAgICAgICAgICAgICMgZ3JhYnMgX2FjdGl2ZV9saW1ib19sb2NrLgotICAgICAgICAgICAgICAgICAgICBkZWwgX2FjdGl2ZVtfZ2V0X2lkZW50KCldCisgICAgICAgICAgICAgICAgICAgIGRlbCBfYWN0aXZlW2dldF9pZGVudCgpXQogICAgICAgICAgICAgICAgIGV4Y2VwdDoKICAgICAgICAgICAgICAgICAgICAgcGFzcwogCkBAIC04MjcsNyArODE2LDcgQEAKIAogICAgICAgICB0cnk6CiAgICAgICAgICAgICB3aXRoIF9hY3RpdmVfbGltYm9fbG9jazoKLSAgICAgICAgICAgICAgICBkZWwgX2FjdGl2ZVtfZ2V0X2lkZW50KCldCisgICAgICAgICAgICAgICAgZGVsIF9hY3RpdmVbZ2V0X2lkZW50KCldCiAgICAgICAgICAgICAgICAgIyBUaGVyZSBtdXN0IG5vdCBiZSBhbnkgcHl0aG9uIGNvZGUgYmV0d2VlbiB0aGUgcHJldmlvdXMgbGluZQogICAgICAgICAgICAgICAgICMgYW5kIGFmdGVyIHRoZSBsb2NrIGlzIHJlbGVhc2VkLiAgT3RoZXJ3aXNlIGEgdHJhY2luZyBmdW5jdGlvbgogICAgICAgICAgICAgICAgICMgY291bGQgdHJ5IHRvIGFjcXVpcmUgdGhlIGxvY2sgYWdhaW4gaW4gdGhlIHNhbWUgdGhyZWFkLCAoaW4KQEAgLTkxOCwxMCArOTA3LDcgQEAKIAogIyBUaGUgdGltZXIgY2xhc3Mgd2FzIGNvbnRyaWJ1dGVkIGJ5IEl0YW1hciBTaHR1bGwtVHJhdXJpbmcKIAotZGVmIFRpbWVyKCphcmdzLCAqKmt3YXJncyk6Ci0gICAgcmV0dXJuIF9UaW1lcigqYXJncywgKiprd2FyZ3MpCi0KLWNsYXNzIF9UaW1lcihUaHJlYWQpOgorY2xhc3MgVGltZXIoVGhyZWFkKToKICAgICAiIiJDYWxsIGEgZnVuY3Rpb24gYWZ0ZXIgYSBzcGVjaWZpZWQgbnVtYmVyIG9mIHNlY29uZHM6CiAKICAgICB0ID0gVGltZXIoMzAuMCwgZiwgYXJncz1bXSwga3dhcmdzPXt9KQpAQCAtOTUzLDE1ICs5MzksMTIgQEAKIGNsYXNzIF9NYWluVGhyZWFkKFRocmVhZCk6CiAKICAgICBkZWYgX19pbml0X18oc2VsZik6Ci0gICAgICAgIFRocmVhZC5fX2luaXRfXyhzZWxmLCBuYW1lPSJNYWluVGhyZWFkIikKKyAgICAgICAgVGhyZWFkLl9faW5pdF9fKHNlbGYsIG5hbWU9Ik1haW5UaHJlYWQiLCBkYWVtb249RmFsc2UpCiAgICAgICAgIHNlbGYuX3N0YXJ0ZWQuc2V0KCkKICAgICAgICAgc2VsZi5fc2V0X2lkZW50KCkKICAgICAgICAgd2l0aCBfYWN0aXZlX2xpbWJvX2xvY2s6CiAgICAgICAgICAgICBfYWN0aXZlW3NlbGYuX2lkZW50XSA9IHNlbGYKIAotICAgIGRlZiBfc2V0X2RhZW1vbihzZWxmKToKLSAgICAgICAgcmV0dXJuIEZhbHNlCi0KICAgICBkZWYgX2V4aXRmdW5jKHNlbGYpOgogICAgICAgICBzZWxmLl9zdG9wKCkKICAgICAgICAgdCA9IF9waWNrU29tZU5vbkRhZW1vblRocmVhZCgpCkBAIC05OTMsNyArOTc2LDcgQEAKIGNsYXNzIF9EdW1teVRocmVhZChUaHJlYWQpOgogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgotICAgICAgICBUaHJlYWQuX19pbml0X18oc2VsZiwgbmFtZT1fbmV3bmFtZSgiRHVtbXktJWQiKSkKKyAgICAgICAgVGhyZWFkLl9faW5pdF9fKHNlbGYsIG5hbWU9X25ld25hbWUoIkR1bW15LSVkIiksIGRhZW1vbj1UcnVlKQogCiAgICAgICAgICMgVGhyZWFkLl9ibG9jayBjb25zdW1lcyBhbiBPUy1sZXZlbCBsb2NraW5nIHByaW1pdGl2ZSwgd2hpY2gKICAgICAgICAgIyBjYW4gbmV2ZXIgYmUgdXNlZCBieSBhIF9EdW1teVRocmVhZC4gIFNpbmNlIGEgX0R1bW15VGhyZWFkCkBAIC0xMDA1LDkgKzk4OCw2IEBACiAgICAgICAgIHdpdGggX2FjdGl2ZV9saW1ib19sb2NrOgogICAgICAgICAgICAgX2FjdGl2ZVtzZWxmLl9pZGVudF0gPSBzZWxmCiAKLSAgICBkZWYgX3NldF9kYWVtb24oc2VsZik6Ci0gICAgICAgIHJldHVybiBUcnVlCi0KICAgICBkZWYgam9pbihzZWxmLCB0aW1lb3V0PU5vbmUpOgogICAgICAgICBhc3NlcnQgRmFsc2UsICJjYW5ub3Qgam9pbiBhIGR1bW15IHRocmVhZCIKIApAQCAtMTAxNiw5ICs5OTYsOCBAQAogCiBkZWYgY3VycmVudF90aHJlYWQoKToKICAgICB0cnk6Ci0gICAgICAgIHJldHVybiBfYWN0aXZlW19nZXRfaWRlbnQoKV0KKyAgICAgICAgcmV0dXJuIF9hY3RpdmVbZ2V0X2lkZW50KCldCiAgICAgZXhjZXB0IEtleUVycm9yOgotICAgICAgICAjI3ByaW50ICJjdXJyZW50X3RocmVhZCgpOiBubyBjdXJyZW50IHRocmVhZCBmb3IiLCBfZ2V0X2lkZW50KCkKICAgICAgICAgcmV0dXJuIF9EdW1teVRocmVhZCgpCiAKIGN1cnJlbnRUaHJlYWQgPSBjdXJyZW50X3RocmVhZApAQCAtMTA3NSw3ICsxMDU0LDcgQEAKICAgICAgICAgICAgIGlmIHRocmVhZCBpcyBjdXJyZW50OgogICAgICAgICAgICAgICAgICMgVGhlcmUgaXMgb25seSBvbmUgYWN0aXZlIHRocmVhZC4gV2UgcmVzZXQgdGhlIGlkZW50IHRvCiAgICAgICAgICAgICAgICAgIyBpdHMgbmV3IHZhbHVlIHNpbmNlIGl0IGNhbiBoYXZlIGNoYW5nZWQuCi0gICAgICAgICAgICAgICAgaWRlbnQgPSBfZ2V0X2lkZW50KCkKKyAgICAgICAgICAgICAgICBpZGVudCA9IGdldF9pZGVudCgpCiAgICAgICAgICAgICAgICAgdGhyZWFkLl9pZGVudCA9IGlkZW50CiAgICAgICAgICAgICAgICAgbmV3X2FjdGl2ZVtpZGVudF0gPSB0aHJlYWQKICAgICAgICAgICAgIGVsc2U6CmRpZmYgLS1naXQgYS9MaWIvdGltZWl0LnB5IGIvTGliL3RpbWVpdC5weQppbmRleCAxYWU1OWUwLi5mZGMwYmJiIDEwMDY0NAotLS0gYS9MaWIvdGltZWl0LnB5CisrKyBiL0xpYi90aW1laXQucHkKQEAgLTc5LDEwICs3OSwxMCBAQAogIyBiZWluZyBpbmRlbnRlZCA4IHNwYWNlcy4KIHRlbXBsYXRlID0gIiIiCiBkZWYgaW5uZXIoX2l0LCBfdGltZXIpOgotICAgICUoc2V0dXApcworICAgIHtzZXR1cH0KICAgICBfdDAgPSBfdGltZXIoKQogICAgIGZvciBfaSBpbiBfaXQ6Ci0gICAgICAgICUoc3RtdClzCisgICAgICAgIHtzdG10fQogICAgIF90MSA9IF90aW1lcigpCiAgICAgcmV0dXJuIF90MSAtIF90MAogIiIiCkBAIC0xMjYsOSArMTI2LDkgQEAKICAgICAgICAgICAgIHN0bXQgPSByZWluZGVudChzdG10LCA4KQogICAgICAgICAgICAgaWYgaXNpbnN0YW5jZShzZXR1cCwgc3RyKToKICAgICAgICAgICAgICAgICBzZXR1cCA9IHJlaW5kZW50KHNldHVwLCA0KQotICAgICAgICAgICAgICAgIHNyYyA9IHRlbXBsYXRlICUgeydzdG10Jzogc3RtdCwgJ3NldHVwJzogc2V0dXB9CisgICAgICAgICAgICAgICAgc3JjID0gdGVtcGxhdGUuZm9ybWF0KHN0bXQ9c3RtdCwgc2V0dXA9c2V0dXApCiAgICAgICAgICAgICBlbGlmIGNhbGxhYmxlKHNldHVwKToKLSAgICAgICAgICAgICAgICBzcmMgPSB0ZW1wbGF0ZSAlIHsnc3RtdCc6IHN0bXQsICdzZXR1cCc6ICdfc2V0dXAoKSd9CisgICAgICAgICAgICAgICAgc3JjID0gdGVtcGxhdGUuZm9ybWF0KHN0bXQ9c3RtdCwgc2V0dXA9J19zZXR1cCgpJykKICAgICAgICAgICAgICAgICBuc1snX3NldHVwJ10gPSBzZXR1cAogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJzZXR1cCBpcyBuZWl0aGVyIGEgc3RyaW5nIG5vciBjYWxsYWJsZSIpCmRpZmYgLS1naXQgYS9MaWIvdGtpbnRlci9fX2luaXRfXy5weSBiL0xpYi90a2ludGVyL19faW5pdF9fLnB5CmluZGV4IDhhZjUwNjUuLmY0Zjk1ODMgMTAwNjQ0Ci0tLSBhL0xpYi90a2ludGVyL19faW5pdF9fLnB5CisrKyBiL0xpYi90a2ludGVyL19faW5pdF9fLnB5CkBAIC0zMCw4ICszMCw2IEBACiB0ay5tYWlubG9vcCgpCiAiIiIKIAotX192ZXJzaW9uX18gPSAiJFJldmlzaW9uJCIKLQogaW1wb3J0IHN5cwogaWYgc3lzLnBsYXRmb3JtID09ICJ3aW4zMiI6CiAgICAgIyBBdHRlbXB0IHRvIGNvbmZpZ3VyZSBUY2wvVGsgd2l0aG91dCByZXF1aXJpbmcgUEFUSApAQCAtMTE2MSw3ICsxMTU5LDYgQEAKICAgICAgICAgcmV0dXJuIChlLCkKICAgICBkZWYgX3JlcG9ydF9leGNlcHRpb24oc2VsZik6CiAgICAgICAgICIiIkludGVybmFsIGZ1bmN0aW9uLiIiIgotICAgICAgICBpbXBvcnQgc3lzCiAgICAgICAgIGV4YywgdmFsLCB0YiA9IHN5cy5leGNfaW5mbygpCiAgICAgICAgIHJvb3QgPSBzZWxmLl9yb290KCkKICAgICAgICAgcm9vdC5yZXBvcnRfY2FsbGJhY2tfZXhjZXB0aW9uKGV4YywgdmFsLCB0YikKQEAgLTE2NjUsNyArMTY2Miw3IEBACiAgICAgICAgICMgZW5zdXJlIHRoYXQgc2VsZi50ayBpcyBhbHdheXMgX3NvbWV0aGluZ18uCiAgICAgICAgIHNlbGYudGsgPSBOb25lCiAgICAgICAgIGlmIGJhc2VOYW1lIGlzIE5vbmU6Ci0gICAgICAgICAgICBpbXBvcnQgc3lzLCBvcworICAgICAgICAgICAgaW1wb3J0IG9zCiAgICAgICAgICAgICBiYXNlTmFtZSA9IG9zLnBhdGguYmFzZW5hbWUoc3lzLmFyZ3ZbMF0pCiAgICAgICAgICAgICBiYXNlTmFtZSwgZXh0ID0gb3MucGF0aC5zcGxpdGV4dChiYXNlTmFtZSkKICAgICAgICAgICAgIGlmIGV4dCBub3QgaW4gKCcucHknLCAnLnB5YycsICcucHlvJyk6CkBAIC0xNzM5LDcgKzE3MzYsNyBAQAogICAgICAgICAgICAgZXhlYyhvcGVuKGJhc2VfcHkpLnJlYWQoKSwgZGlyKQogICAgIGRlZiByZXBvcnRfY2FsbGJhY2tfZXhjZXB0aW9uKHNlbGYsIGV4YywgdmFsLCB0Yik6CiAgICAgICAgICIiIkludGVybmFsIGZ1bmN0aW9uLiBJdCByZXBvcnRzIGV4Y2VwdGlvbiBvbiBzeXMuc3RkZXJyLiIiIgotICAgICAgICBpbXBvcnQgdHJhY2ViYWNrLCBzeXMKKyAgICAgICAgaW1wb3J0IHRyYWNlYmFjawogICAgICAgICBzeXMuc3RkZXJyLndyaXRlKCJFeGNlcHRpb24gaW4gVGtpbnRlciBjYWxsYmFja1xuIikKICAgICAgICAgc3lzLmxhc3RfdHlwZSA9IGV4YwogICAgICAgICBzeXMubGFzdF92YWx1ZSA9IHZhbApkaWZmIC0tZ2l0IGEvTGliL3RraW50ZXIvZmlsZWRpYWxvZy5weSBiL0xpYi90a2ludGVyL2ZpbGVkaWFsb2cucHkKaW5kZXggOThkMmQ1Yy4uM2ZmYjI1MiAxMDA2NDQKLS0tIGEvTGliL3RraW50ZXIvZmlsZWRpYWxvZy5weQorKysgYi9MaWIvdGtpbnRlci9maWxlZGlhbG9nLnB5CkBAIC0zMDYsNyArMzA2LDYgQEAKICAgICBkZWYgX2ZpeHJlc3VsdChzZWxmLCB3aWRnZXQsIHJlc3VsdCk6CiAgICAgICAgIGlmIHJlc3VsdDoKICAgICAgICAgICAgICMga2VlcCBkaXJlY3RvcnkgYW5kIGZpbGVuYW1lIHVudGlsIG5leHQgdGltZQotICAgICAgICAgICAgaW1wb3J0IG9zCiAgICAgICAgICAgICAjIGNvbnZlcnQgVGNsIHBhdGggb2JqZWN0cyB0byBzdHJpbmdzCiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LnN0cmluZwpAQCAtMzMzLDcgKzMzMiw2IEBACiAgICAgICAgICAgICAjIG11bHRpcGxlIHJlc3VsdHM6CiAgICAgICAgICAgICByZXN1bHQgPSB0dXBsZShbZ2V0YXR0cihyLCAic3RyaW5nIiwgcikgZm9yIHIgaW4gcmVzdWx0XSkKICAgICAgICAgICAgIGlmIHJlc3VsdDoKLSAgICAgICAgICAgICAgICBpbXBvcnQgb3MKICAgICAgICAgICAgICAgICBwYXRoLCBmaWxlID0gb3MucGF0aC5zcGxpdChyZXN1bHRbMF0pCiAgICAgICAgICAgICAgICAgc2VsZi5vcHRpb25zWyJpbml0aWFsZGlyIl0gPSBwYXRoCiAgICAgICAgICAgICAgICAgIyBkb24ndCBzZXQgaW5pdGlhbGZpbGUgb3IgZmlsZW5hbWUsIGFzIHdlIGhhdmUgbXVsdGlwbGUgb2YgdGhlc2UKZGlmZiAtLWdpdCBhL0xpYi90b2tlbml6ZS5weSBiL0xpYi90b2tlbml6ZS5weQppbmRleCBmNTc1ZTliLi40YzQyYmJjIDEwMDY0NAotLS0gYS9MaWIvdG9rZW5pemUucHkKKysrIGIvTGliL3Rva2VuaXplLnB5CkBAIC00NSw2ICs0NSw1MSBAQAogRU5DT0RJTkcgPSBOX1RPS0VOUyArIDIKIHRva19uYW1lW0VOQ09ESU5HXSA9ICdFTkNPRElORycKIE5fVE9LRU5TICs9IDMKK0VYQUNUX1RPS0VOX1RZUEVTID0geworICAgICcoJzogICBMUEFSLAorICAgICcpJzogICBSUEFSLAorICAgICdbJzogICBMU1FCLAorICAgICddJzogICBSU1FCLAorICAgICc6JzogICBDT0xPTiwKKyAgICAnLCc6ICAgQ09NTUEsCisgICAgJzsnOiAgIFNFTUksCisgICAgJysnOiAgIFBMVVMsCisgICAgJy0nOiAgIE1JTlVTLAorICAgICcqJzogICBTVEFSLAorICAgICcvJzogICBTTEFTSCwKKyAgICAnfCc6ICAgVkJBUiwKKyAgICAnJic6ICAgQU1QRVIsCisgICAgJzwnOiAgIExFU1MsCisgICAgJz4nOiAgIEdSRUFURVIsCisgICAgJz0nOiAgIEVRVUFMLAorICAgICcuJzogICBET1QsCisgICAgJyUnOiAgIFBFUkNFTlQsCisgICAgJ3snOiAgIExCUkFDRSwKKyAgICAnfSc6ICAgUkJSQUNFLAorICAgICc9PSc6ICBFUUVRVUFMLAorICAgICchPSc6ICBOT1RFUVVBTCwKKyAgICAnPD0nOiAgTEVTU0VRVUFMLAorICAgICc+PSc6ICBHUkVBVEVSRVFVQUwsCisgICAgJ34nOiAgIFRJTERFLAorICAgICdeJzogICBDSVJDVU1GTEVYLAorICAgICc8PCc6ICBMRUZUU0hJRlQsCisgICAgJz4+JzogIFJJR0hUU0hJRlQsCisgICAgJyoqJzogIERPVUJMRVNUQVIsCisgICAgJys9JzogIFBMVVNFUVVBTCwKKyAgICAnLT0nOiAgTUlORVFVQUwsCisgICAgJyo9JzogIFNUQVJFUVVBTCwKKyAgICAnLz0nOiAgU0xBU0hFUVVBTCwKKyAgICAnJT0nOiAgUEVSQ0VOVEVRVUFMLAorICAgICcmPSc6ICBBTVBFUkVRVUFMLAorICAgICd8PSc6ICBWQkFSRVFVQUwsCisgICAgJ149JzogQ0lSQ1VNRkxFWEVRVUFMLAorICAgICc8PD0nOiBMRUZUU0hJRlRFUVVBTCwKKyAgICAnPj49JzogUklHSFRTSElGVEVRVUFMLAorICAgICcqKj0nOiBET1VCTEVTVEFSRVFVQUwsCisgICAgJy8vJzogIERPVUJMRVNMQVNILAorICAgICcvLz0nOiBET1VCTEVTTEFTSEVRVUFMLAorICAgICdAJzogICBBVAorfQogCiBjbGFzcyBUb2tlbkluZm8oY29sbGVjdGlvbnMubmFtZWR0dXBsZSgnVG9rZW5JbmZvJywgJ3R5cGUgc3RyaW5nIHN0YXJ0IGVuZCBsaW5lJykpOgogICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKQEAgLTUyLDYgKzk3LDEzIEBACiAgICAgICAgIHJldHVybiAoJ1Rva2VuSW5mbyh0eXBlPSVzLCBzdHJpbmc9JXIsIHN0YXJ0PSVyLCBlbmQ9JXIsIGxpbmU9JXIpJyAlCiAgICAgICAgICAgICAgICAgc2VsZi5fcmVwbGFjZSh0eXBlPWFubm90YXRlZF90eXBlKSkKIAorICAgIEBwcm9wZXJ0eQorICAgIGRlZiBleGFjdF90eXBlKHNlbGYpOgorICAgICAgICBpZiBzZWxmLnR5cGUgPT0gT1AgYW5kIHNlbGYuc3RyaW5nIGluIEVYQUNUX1RPS0VOX1RZUEVTOgorICAgICAgICAgICAgcmV0dXJuIEVYQUNUX1RPS0VOX1RZUEVTW3NlbGYuc3RyaW5nXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYudHlwZQorCiBkZWYgZ3JvdXAoKmNob2ljZXMpOiByZXR1cm4gJygnICsgJ3wnLmpvaW4oY2hvaWNlcykgKyAnKScKIGRlZiBhbnkoKmNob2ljZXMpOiByZXR1cm4gZ3JvdXAoKmNob2ljZXMpICsgJyonCiBkZWYgbWF5YmUoKmNob2ljZXMpOiByZXR1cm4gZ3JvdXAoKmNob2ljZXMpICsgJz8nCkBAIC0xMTQsMTkgKzE2NiwxNyBAQAogZGVmIF9jb21waWxlKGV4cHIpOgogICAgIHJldHVybiByZS5jb21waWxlKGV4cHIsIHJlLlVOSUNPREUpCiAKLXRva2VucHJvZywgcHNldWRvcHJvZywgc2luZ2xlM3Byb2csIGRvdWJsZTNwcm9nID0gbWFwKAotICAgIF9jb21waWxlLCAoVG9rZW4sIFBzZXVkb1Rva2VuLCBTaW5nbGUzLCBEb3VibGUzKSkKLWVuZHByb2dzID0geyInIjogX2NvbXBpbGUoU2luZ2xlKSwgJyInOiBfY29tcGlsZShEb3VibGUpLAotICAgICAgICAgICAgIicnJyI6IHNpbmdsZTNwcm9nLCAnIiIiJzogZG91YmxlM3Byb2csCi0gICAgICAgICAgICAicicnJyI6IHNpbmdsZTNwcm9nLCAnciIiIic6IGRvdWJsZTNwcm9nLAotICAgICAgICAgICAgImInJyciOiBzaW5nbGUzcHJvZywgJ2IiIiInOiBkb3VibGUzcHJvZywKLSAgICAgICAgICAgICJicicnJyI6IHNpbmdsZTNwcm9nLCAnYnIiIiInOiBkb3VibGUzcHJvZywKLSAgICAgICAgICAgICJSJycnIjogc2luZ2xlM3Byb2csICdSIiIiJzogZG91YmxlM3Byb2csCi0gICAgICAgICAgICAiQicnJyI6IHNpbmdsZTNwcm9nLCAnQiIiIic6IGRvdWJsZTNwcm9nLAotICAgICAgICAgICAgImJSJycnIjogc2luZ2xlM3Byb2csICdiUiIiIic6IGRvdWJsZTNwcm9nLAotICAgICAgICAgICAgIkJyJycnIjogc2luZ2xlM3Byb2csICdCciIiIic6IGRvdWJsZTNwcm9nLAotICAgICAgICAgICAgIkJSJycnIjogc2luZ2xlM3Byb2csICdCUiIiIic6IGRvdWJsZTNwcm9nLAotICAgICAgICAgICAgJ3InOiBOb25lLCAnUic6IE5vbmUsICdiJzogTm9uZSwgJ0InOiBOb25lfQorZW5kcGF0cyA9IHsiJyI6IFNpbmdsZSwgJyInOiBEb3VibGUsCisgICAgICAgICAgICInJyciOiBTaW5nbGUzLCAnIiIiJzogRG91YmxlMywKKyAgICAgICAgICAgInInJyciOiBTaW5nbGUzLCAnciIiIic6IERvdWJsZTMsCisgICAgICAgICAgICJiJycnIjogU2luZ2xlMywgJ2IiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiYnInJyciOiBTaW5nbGUzLCAnYnIiIiInOiBEb3VibGUzLAorICAgICAgICAgICAiUicnJyI6IFNpbmdsZTMsICdSIiIiJzogRG91YmxlMywKKyAgICAgICAgICAgIkInJyciOiBTaW5nbGUzLCAnQiIiIic6IERvdWJsZTMsCisgICAgICAgICAgICJiUicnJyI6IFNpbmdsZTMsICdiUiIiIic6IERvdWJsZTMsCisgICAgICAgICAgICJCcicnJyI6IFNpbmdsZTMsICdCciIiIic6IERvdWJsZTMsCisgICAgICAgICAgICJCUicnJyI6IFNpbmdsZTMsICdCUiIiIic6IERvdWJsZTMsCisgICAgICAgICAgICdyJzogTm9uZSwgJ1InOiBOb25lLCAnYic6IE5vbmUsICdCJzogTm9uZX0KIAogdHJpcGxlX3F1b3RlZCA9IHt9CiBmb3IgdCBpbiAoIicnJyIsICciIiInLApAQCAtMTQzLDggKzE5Myw2IEBACiAgICAgICAgICAgImJSJyIsICdiUiInLCAiQlInIiwgJ0JSIicgKToKICAgICBzaW5nbGVfcXVvdGVkW3RdID0gdAogCi1kZWwgX2NvbXBpbGUKLQogdGFic2l6ZSA9IDgKIAogY2xhc3MgVG9rZW5FcnJvcihFeGNlcHRpb24pOiBwYXNzCkBAIC00NjYsNyArNTE0LDcgQEAKICAgICAgICAgICAgIGNvbnRpbnVlZCA9IDAKIAogICAgICAgICB3aGlsZSBwb3MgPCBtYXg6Ci0gICAgICAgICAgICBwc2V1ZG9tYXRjaCA9IHBzZXVkb3Byb2cubWF0Y2gobGluZSwgcG9zKQorICAgICAgICAgICAgcHNldWRvbWF0Y2ggPSBfY29tcGlsZShQc2V1ZG9Ub2tlbikubWF0Y2gobGluZSwgcG9zKQogICAgICAgICAgICAgaWYgcHNldWRvbWF0Y2g6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIHNjYW4gZm9yIHRva2VucwogICAgICAgICAgICAgICAgIHN0YXJ0LCBlbmQgPSBwc2V1ZG9tYXRjaC5zcGFuKDEpCiAgICAgICAgICAgICAgICAgc3BvcywgZXBvcywgcG9zID0gKGxudW0sIHN0YXJ0KSwgKGxudW0sIGVuZCksIGVuZApAQCAtNDgyLDcgKzUzMCw3IEBACiAgICAgICAgICAgICAgICAgICAgIGFzc2VydCBub3QgdG9rZW4uZW5kc3dpdGgoIlxuIikKICAgICAgICAgICAgICAgICAgICAgeWllbGQgVG9rZW5JbmZvKENPTU1FTlQsIHRva2VuLCBzcG9zLCBlcG9zLCBsaW5lKQogICAgICAgICAgICAgICAgIGVsaWYgdG9rZW4gaW4gdHJpcGxlX3F1b3RlZDoKLSAgICAgICAgICAgICAgICAgICAgZW5kcHJvZyA9IGVuZHByb2dzW3Rva2VuXQorICAgICAgICAgICAgICAgICAgICBlbmRwcm9nID0gX2NvbXBpbGUoZW5kcGF0c1t0b2tlbl0pCiAgICAgICAgICAgICAgICAgICAgIGVuZG1hdGNoID0gZW5kcHJvZy5tYXRjaChsaW5lLCBwb3MpCiAgICAgICAgICAgICAgICAgICAgIGlmIGVuZG1hdGNoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICMgYWxsIG9uIG9uZSBsaW5lCiAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSBlbmRtYXRjaC5lbmQoMCkKQEAgLTQ5OCw4ICs1NDYsOSBAQAogICAgICAgICAgICAgICAgICAgICB0b2tlbls6M10gaW4gc2luZ2xlX3F1b3RlZDoKICAgICAgICAgICAgICAgICAgICAgaWYgdG9rZW5bLTFdID09ICdcbic6ICAgICAgICAgICAgICAgICAgIyBjb250aW51ZWQgc3RyaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICBzdHJzdGFydCA9IChsbnVtLCBzdGFydCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGVuZHByb2cgPSAoZW5kcHJvZ3NbaW5pdGlhbF0gb3IgZW5kcHJvZ3NbdG9rZW5bMV1dIG9yCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuZHByb2dzW3Rva2VuWzJdXSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGVuZHByb2cgPSBfY29tcGlsZShlbmRwYXRzW2luaXRpYWxdIG9yCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kcGF0c1t0b2tlblsxXV0gb3IKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmRwYXRzW3Rva2VuWzJdXSkKICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRzdHIsIG5lZWRjb250ID0gbGluZVtzdGFydDpdLCAxCiAgICAgICAgICAgICAgICAgICAgICAgICBjb250bGluZSA9IGxpbmUKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCkBAIC01MzAsMjcgKzU3OSw2NSBAQAogZGVmIGdlbmVyYXRlX3Rva2VucyhyZWFkbGluZSk6CiAgICAgcmV0dXJuIF90b2tlbml6ZShyZWFkbGluZSwgTm9uZSkKIAorZGVmIG1haW4oKToKKyAgICBpbXBvcnQgYXJncGFyc2UKKworICAgICMgSGVscGVyIGVycm9yIGhhbmRsaW5nIHJvdXRpbmVzCisgICAgZGVmIHBlcnJvcihtZXNzYWdlKToKKyAgICAgICAgcHJpbnQobWVzc2FnZSwgZmlsZT1zeXMuc3RkZXJyKQorCisgICAgZGVmIGVycm9yKG1lc3NhZ2UsIGZpbGVuYW1lPU5vbmUsIGxvY2F0aW9uPU5vbmUpOgorICAgICAgICBpZiBsb2NhdGlvbjoKKyAgICAgICAgICAgIGFyZ3MgPSAoZmlsZW5hbWUsKSArIGxvY2F0aW9uICsgKG1lc3NhZ2UsKQorICAgICAgICAgICAgcGVycm9yKCIlczolZDolZDogZXJyb3I6ICVzIiAlIGFyZ3MpCisgICAgICAgIGVsaWYgZmlsZW5hbWU6CisgICAgICAgICAgICBwZXJyb3IoIiVzOiBlcnJvcjogJXMiICUgKGZpbGVuYW1lLCBtZXNzYWdlKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIHBlcnJvcigiZXJyb3I6ICVzIiAlIG1lc3NhZ2UpCisgICAgICAgIHN5cy5leGl0KDEpCisKKyAgICAjIFBhcnNlIHRoZSBhcmd1bWVudHMgYW5kIG9wdGlvbnMKKyAgICBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcihwcm9nPSdweXRob24gLW0gdG9rZW5pemUnKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoZGVzdD0nZmlsZW5hbWUnLCBuYXJncz0nPycsCisgICAgICAgICAgICAgICAgICAgICAgICBtZXRhdmFyPSdmaWxlbmFtZS5weScsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSd0aGUgZmlsZSB0byB0b2tlbml6ZTsgZGVmYXVsdHMgdG8gc3RkaW4nKQorICAgIHBhcnNlci5hZGRfYXJndW1lbnQoJy1lJywgJy0tZXhhY3QnLCBkZXN0PSdleGFjdCcsIGFjdGlvbj0nc3RvcmVfdHJ1ZScsCisgICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSdkaXNwbGF5IHRva2VuIG5hbWVzIHVzaW5nIHRoZSBleGFjdCB0eXBlJykKKyAgICBhcmdzID0gcGFyc2VyLnBhcnNlX2FyZ3MoKQorCisgICAgdHJ5OgorICAgICAgICAjIFRva2VuaXplIHRoZSBpbnB1dAorICAgICAgICBpZiBhcmdzLmZpbGVuYW1lOgorICAgICAgICAgICAgZmlsZW5hbWUgPSBhcmdzLmZpbGVuYW1lCisgICAgICAgICAgICB3aXRoIGJ1aWx0aW5zLm9wZW4oZmlsZW5hbWUsICdyYicpIGFzIGY6CisgICAgICAgICAgICAgICAgdG9rZW5zID0gbGlzdCh0b2tlbml6ZShmLnJlYWRsaW5lKSkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGZpbGVuYW1lID0gIjxzdGRpbj4iCisgICAgICAgICAgICB0b2tlbnMgPSBfdG9rZW5pemUoc3lzLnN0ZGluLnJlYWRsaW5lLCBOb25lKQorCisgICAgICAgICMgT3V0cHV0IHRoZSB0b2tlbml6YXRpb24KKyAgICAgICAgZm9yIHRva2VuIGluIHRva2VuczoKKyAgICAgICAgICAgIHRva2VuX3R5cGUgPSB0b2tlbi50eXBlCisgICAgICAgICAgICBpZiBhcmdzLmV4YWN0OgorICAgICAgICAgICAgICAgIHRva2VuX3R5cGUgPSB0b2tlbi5leGFjdF90eXBlCisgICAgICAgICAgICB0b2tlbl9yYW5nZSA9ICIlZCwlZC0lZCwlZDoiICUgKHRva2VuLnN0YXJ0ICsgdG9rZW4uZW5kKQorICAgICAgICAgICAgcHJpbnQoIiUtMjBzJS0xNXMlLTE1ciIgJQorICAgICAgICAgICAgICAgICAgKHRva2VuX3JhbmdlLCB0b2tfbmFtZVt0b2tlbl90eXBlXSwgdG9rZW4uc3RyaW5nKSkKKyAgICBleGNlcHQgSW5kZW50YXRpb25FcnJvciBhcyBlcnI6CisgICAgICAgIGxpbmUsIGNvbHVtbiA9IGVyci5hcmdzWzFdWzE6M10KKyAgICAgICAgZXJyb3IoZXJyLmFyZ3NbMF0sIGZpbGVuYW1lLCAobGluZSwgY29sdW1uKSkKKyAgICBleGNlcHQgVG9rZW5FcnJvciBhcyBlcnI6CisgICAgICAgIGxpbmUsIGNvbHVtbiA9IGVyci5hcmdzWzFdCisgICAgICAgIGVycm9yKGVyci5hcmdzWzBdLCBmaWxlbmFtZSwgKGxpbmUsIGNvbHVtbikpCisgICAgZXhjZXB0IFN5bnRheEVycm9yIGFzIGVycjoKKyAgICAgICAgZXJyb3IoZXJyLCBmaWxlbmFtZSkKKyAgICBleGNlcHQgSU9FcnJvciBhcyBlcnI6CisgICAgICAgIGVycm9yKGVycikKKyAgICBleGNlcHQgS2V5Ym9hcmRJbnRlcnJ1cHQ6CisgICAgICAgIHByaW50KCJpbnRlcnJ1cHRlZFxuIikKKyAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGVycjoKKyAgICAgICAgcGVycm9yKCJ1bmV4cGVjdGVkIGVycm9yOiAlcyIgJSBlcnIpCisgICAgICAgIHJhaXNlCisKIGlmIF9fbmFtZV9fID09ICJfX21haW5fXyI6Ci0gICAgIyBRdWljayBzYW5pdHkgY2hlY2sKLSAgICBzID0gYicnJ2RlZiBwYXJzZWxpbmUoc2VsZiwgbGluZSk6Ci0gICAgICAgICAgICAiIiJQYXJzZSB0aGUgbGluZSBpbnRvIGEgY29tbWFuZCBuYW1lIGFuZCBhIHN0cmluZyBjb250YWluaW5nCi0gICAgICAgICAgICB0aGUgYXJndW1lbnRzLiAgUmV0dXJucyBhIHR1cGxlIGNvbnRhaW5pbmcgKGNvbW1hbmQsIGFyZ3MsIGxpbmUpLgotICAgICAgICAgICAgJ2NvbW1hbmQnIGFuZCAnYXJncycgbWF5IGJlIE5vbmUgaWYgdGhlIGxpbmUgY291bGRuJ3QgYmUgcGFyc2VkLgotICAgICAgICAgICAgIiIiCi0gICAgICAgICAgICBsaW5lID0gbGluZS5zdHJpcCgpCi0gICAgICAgICAgICBpZiBub3QgbGluZToKLSAgICAgICAgICAgICAgICByZXR1cm4gTm9uZSwgTm9uZSwgbGluZQotICAgICAgICAgICAgZWxpZiBsaW5lWzBdID09ICc/JzoKLSAgICAgICAgICAgICAgICBsaW5lID0gJ2hlbHAgJyArIGxpbmVbMTpdCi0gICAgICAgICAgICBlbGlmIGxpbmVbMF0gPT0gJyEnOgotICAgICAgICAgICAgICAgIGlmIGhhc2F0dHIoc2VsZiwgJ2RvX3NoZWxsJyk6Ci0gICAgICAgICAgICAgICAgICAgIGxpbmUgPSAnc2hlbGwgJyArIGxpbmVbMTpdCi0gICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5vbmUsIE5vbmUsIGxpbmUKLSAgICAgICAgICAgIGksIG4gPSAwLCBsZW4obGluZSkKLSAgICAgICAgICAgIHdoaWxlIGkgPCBuIGFuZCBsaW5lW2ldIGluIHNlbGYuaWRlbnRjaGFyczogaSA9IGkrMQotICAgICAgICAgICAgY21kLCBhcmcgPSBsaW5lWzppXSwgbGluZVtpOl0uc3RyaXAoKQotICAgICAgICAgICAgcmV0dXJuIGNtZCwgYXJnLCBsaW5lCi0gICAgJycnCi0gICAgZm9yIHRvayBpbiB0b2tlbml6ZShpdGVyKHMuc3BsaXRsaW5lcygpKS5fX25leHRfXyk6Ci0gICAgICAgIHByaW50KHRvaykKKyAgICBtYWluKCkKZGlmZiAtLWdpdCBhL0xpYi90dXJ0bGUucHkgYi9MaWIvdHVydGxlLnB5CmluZGV4IGFjMGMzMmMuLmE0NDc0MzMgMTAwNjQ0Ci0tLSBhL0xpYi90dXJ0bGUucHkKKysrIGIvTGliL3R1cnRsZS5weQpAQCAtMTA4LDcgKzEwOCw2IEBACiBpbXBvcnQgdHlwZXMKIGltcG9ydCBtYXRoCiBpbXBvcnQgdGltZQotaW1wb3J0IG9zCiBpbXBvcnQgaW5zcGVjdAogCiBmcm9tIG9zLnBhdGggaW1wb3J0IGlzZmlsZSwgc3BsaXQsIGpvaW4KZGlmZiAtLWdpdCBhL0xpYi91bml0dGVzdC9jYXNlLnB5IGIvTGliL3VuaXR0ZXN0L2Nhc2UucHkKaW5kZXggMzEzMzkwNy4uNWJlZDg2OCAxMDA2NDQKLS0tIGEvTGliL3VuaXR0ZXN0L2Nhc2UucHkKKysrIGIvTGliL3VuaXR0ZXN0L2Nhc2UucHkKQEAgLTksOCArOSw3IEBACiBpbXBvcnQgY29sbGVjdGlvbnMKIAogZnJvbSAuIGltcG9ydCByZXN1bHQKLWZyb20gLnV0aWwgaW1wb3J0IChzdHJjbGFzcywgc2FmZV9yZXByLCBzb3J0ZWRfbGlzdF9kaWZmZXJlbmNlLAotICAgICAgICAgICAgICAgICAgIHVub3JkZXJhYmxlX2xpc3RfZGlmZmVyZW5jZSwgX2NvdW50X2RpZmZfYWxsX3B1cnBvc2UsCitmcm9tIC51dGlsIGltcG9ydCAoc3RyY2xhc3MsIHNhZmVfcmVwciwgX2NvdW50X2RpZmZfYWxsX3B1cnBvc2UsCiAgICAgICAgICAgICAgICAgICAgX2NvdW50X2RpZmZfaGFzaGFibGUpCiAKIF9fdW5pdHRlc3QgPSBUcnVlCkBAIC0xMDQsOSArMTAzLDkgQEAKIGNsYXNzIF9Bc3NlcnRSYWlzZXNCYXNlQ29udGV4dChvYmplY3QpOgogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGV4cGVjdGVkLCB0ZXN0X2Nhc2UsIGNhbGxhYmxlX29iaj1Ob25lLAotICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfcmVnZXg9Tm9uZSk6CisgICAgICAgICAgICAgICAgIGV4cGVjdGVkX3JlZ2V4PU5vbmUpOgogICAgICAgICBzZWxmLmV4cGVjdGVkID0gZXhwZWN0ZWQKLSAgICAgICAgc2VsZi5mYWlsdXJlRXhjZXB0aW9uID0gdGVzdF9jYXNlLmZhaWx1cmVFeGNlcHRpb24KKyAgICAgICAgc2VsZi50ZXN0X2Nhc2UgPSB0ZXN0X2Nhc2UKICAgICAgICAgaWYgY2FsbGFibGVfb2JqIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIHNlbGYub2JqX25hbWUgPSBjYWxsYWJsZV9vYmouX19uYW1lX18KQEAgLTExNyw2ICsxMTYsMjQgQEAKICAgICAgICAgaWYgaXNpbnN0YW5jZShleHBlY3RlZF9yZWdleCwgKGJ5dGVzLCBzdHIpKToKICAgICAgICAgICAgIGV4cGVjdGVkX3JlZ2V4ID0gcmUuY29tcGlsZShleHBlY3RlZF9yZWdleCkKICAgICAgICAgc2VsZi5leHBlY3RlZF9yZWdleCA9IGV4cGVjdGVkX3JlZ2V4CisgICAgICAgIHNlbGYubXNnID0gTm9uZQorCisgICAgZGVmIF9yYWlzZUZhaWx1cmUoc2VsZiwgc3RhbmRhcmRNc2cpOgorICAgICAgICBtc2cgPSBzZWxmLnRlc3RfY2FzZS5fZm9ybWF0TWVzc2FnZShzZWxmLm1zZywgc3RhbmRhcmRNc2cpCisgICAgICAgIHJhaXNlIHNlbGYudGVzdF9jYXNlLmZhaWx1cmVFeGNlcHRpb24obXNnKQorCisgICAgZGVmIGhhbmRsZShzZWxmLCBuYW1lLCBjYWxsYWJsZV9vYmosIGFyZ3MsIGt3YXJncyk6CisgICAgICAgICIiIgorICAgICAgICBJZiBjYWxsYWJsZV9vYmogaXMgTm9uZSwgYXNzZXJ0UmFpc2VzL1dhcm5zIGlzIGJlaW5nIHVzZWQgYXMgYQorICAgICAgICBjb250ZXh0IG1hbmFnZXIsIHNvIGNoZWNrIGZvciBhICdtc2cnIGt3YXJnIGFuZCByZXR1cm4gc2VsZi4KKyAgICAgICAgSWYgY2FsbGFibGVfb2JqIGlzIG5vdCBOb25lLCBjYWxsIGl0IHBhc3NpbmcgYXJncyBhbmQga3dhcmdzLgorICAgICAgICAiIiIKKyAgICAgICAgaWYgY2FsbGFibGVfb2JqIGlzIE5vbmU6CisgICAgICAgICAgICBzZWxmLm1zZyA9IGt3YXJncy5wb3AoJ21zZycsIE5vbmUpCisgICAgICAgICAgICByZXR1cm4gc2VsZgorICAgICAgICB3aXRoIHNlbGY6CisgICAgICAgICAgICBjYWxsYWJsZV9vYmooKmFyZ3MsICoqa3dhcmdzKQorCiAKIAogY2xhc3MgX0Fzc2VydFJhaXNlc0NvbnRleHQoX0Fzc2VydFJhaXNlc0Jhc2VDb250ZXh0KToKQEAgLTEzMiwxMSArMTQ5LDEwIEBACiAgICAgICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CiAgICAgICAgICAgICAgICAgZXhjX25hbWUgPSBzdHIoc2VsZi5leHBlY3RlZCkKICAgICAgICAgICAgIGlmIHNlbGYub2JqX25hbWU6Ci0gICAgICAgICAgICAgICAgcmFpc2Ugc2VsZi5mYWlsdXJlRXhjZXB0aW9uKCJ7MH0gbm90IHJhaXNlZCBieSB7MX0iCi0gICAgICAgICAgICAgICAgICAgIC5mb3JtYXQoZXhjX25hbWUsIHNlbGYub2JqX25hbWUpKQorICAgICAgICAgICAgICAgIHNlbGYuX3JhaXNlRmFpbHVyZSgie30gbm90IHJhaXNlZCBieSB7fSIuZm9ybWF0KGV4Y19uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYub2JqX25hbWUpKQogICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICByYWlzZSBzZWxmLmZhaWx1cmVFeGNlcHRpb24oInswfSBub3QgcmFpc2VkIgotICAgICAgICAgICAgICAgICAgICAuZm9ybWF0KGV4Y19uYW1lKSkKKyAgICAgICAgICAgICAgICBzZWxmLl9yYWlzZUZhaWx1cmUoInt9IG5vdCByYWlzZWQiLmZvcm1hdChleGNfbmFtZSkpCiAgICAgICAgIGlmIG5vdCBpc3N1YmNsYXNzKGV4Y190eXBlLCBzZWxmLmV4cGVjdGVkKToKICAgICAgICAgICAgICMgbGV0IHVuZXhwZWN0ZWQgZXhjZXB0aW9ucyBwYXNzIHRocm91Z2gKICAgICAgICAgICAgIHJldHVybiBGYWxzZQpAQCAtMTQ3LDggKzE2Myw4IEBACiAKICAgICAgICAgZXhwZWN0ZWRfcmVnZXggPSBzZWxmLmV4cGVjdGVkX3JlZ2V4CiAgICAgICAgIGlmIG5vdCBleHBlY3RlZF9yZWdleC5zZWFyY2goc3RyKGV4Y192YWx1ZSkpOgotICAgICAgICAgICAgcmFpc2Ugc2VsZi5mYWlsdXJlRXhjZXB0aW9uKCciJXMiIGRvZXMgbm90IG1hdGNoICIlcyInICUKLSAgICAgICAgICAgICAgICAgICAgIChleHBlY3RlZF9yZWdleC5wYXR0ZXJuLCBzdHIoZXhjX3ZhbHVlKSkpCisgICAgICAgICAgICBzZWxmLl9yYWlzZUZhaWx1cmUoJyJ7fSIgZG9lcyBub3QgbWF0Y2ggInt9IicuZm9ybWF0KAorICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfcmVnZXgucGF0dGVybiwgc3RyKGV4Y192YWx1ZSkpKQogICAgICAgICByZXR1cm4gVHJ1ZQogCiAKQEAgLTE5MiwxNCArMjA4LDEzIEBACiAgICAgICAgICAgICByZXR1cm4KICAgICAgICAgIyBOb3cgd2Ugc2ltcGx5IHRyeSB0byBjaG9vc2UgYSBoZWxwZnVsIGZhaWx1cmUgbWVzc2FnZQogICAgICAgICBpZiBmaXJzdF9tYXRjaGluZyBpcyBub3QgTm9uZToKLSAgICAgICAgICAgIHJhaXNlIHNlbGYuZmFpbHVyZUV4Y2VwdGlvbignIiVzIiBkb2VzIG5vdCBtYXRjaCAiJXMiJyAlCi0gICAgICAgICAgICAgICAgICAgICAoc2VsZi5leHBlY3RlZF9yZWdleC5wYXR0ZXJuLCBzdHIoZmlyc3RfbWF0Y2hpbmcpKSkKKyAgICAgICAgICAgIHNlbGYuX3JhaXNlRmFpbHVyZSgnInt9IiBkb2VzIG5vdCBtYXRjaCAie30iJy5mb3JtYXQoCisgICAgICAgICAgICAgICAgICAgICBzZWxmLmV4cGVjdGVkX3JlZ2V4LnBhdHRlcm4sIHN0cihmaXJzdF9tYXRjaGluZykpKQogICAgICAgICBpZiBzZWxmLm9ial9uYW1lOgotICAgICAgICAgICAgcmFpc2Ugc2VsZi5mYWlsdXJlRXhjZXB0aW9uKCJ7MH0gbm90IHRyaWdnZXJlZCBieSB7MX0iCi0gICAgICAgICAgICAgICAgLmZvcm1hdChleGNfbmFtZSwgc2VsZi5vYmpfbmFtZSkpCisgICAgICAgICAgICBzZWxmLl9yYWlzZUZhaWx1cmUoInt9IG5vdCB0cmlnZ2VyZWQgYnkge30iLmZvcm1hdChleGNfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYub2JqX25hbWUpKQogICAgICAgICBlbHNlOgotICAgICAgICAgICAgcmFpc2Ugc2VsZi5mYWlsdXJlRXhjZXB0aW9uKCJ7MH0gbm90IHRyaWdnZXJlZCIKLSAgICAgICAgICAgICAgICAuZm9ybWF0KGV4Y19uYW1lKSkKKyAgICAgICAgICAgIHNlbGYuX3JhaXNlRmFpbHVyZSgie30gbm90IHRyaWdnZXJlZCIuZm9ybWF0KGV4Y19uYW1lKSkKIAogCiBjbGFzcyBUZXN0Q2FzZShvYmplY3QpOgpAQCAtNDUyLDcgKzQ2Nyw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICB3YXJuaW5ncy53YXJuKCJUZXN0UmVzdWx0IGhhcyBubyBhZGRFeHBlY3RlZEZhaWx1cmUgbWV0aG9kLCByZXBvcnRpbmcgYXMgcGFzc2VzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUnVudGltZVdhcm5pbmcpCiAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQuYWRkU3VjY2VzcyhzZWxmKQotCisgICAgICAgICAgICByZXR1cm4gcmVzdWx0CiAgICAgICAgIGZpbmFsbHk6CiAgICAgICAgICAgICByZXN1bHQuc3RvcFRlc3Qoc2VsZikKICAgICAgICAgICAgIGlmIG9yaWdfcmVzdWx0IGlzIE5vbmU6CkBAIC01MjYsNyArNTQxLDYgQEAKICAgICAgICAgZXhjZXB0IFVuaWNvZGVEZWNvZGVFcnJvcjoKICAgICAgICAgICAgIHJldHVybiAgJyVzIDogJXMnICUgKHNhZmVfcmVwcihzdGFuZGFyZE1zZyksIHNhZmVfcmVwcihtc2cpKQogCi0KICAgICBkZWYgYXNzZXJ0UmFpc2VzKHNlbGYsIGV4Y0NsYXNzLCBjYWxsYWJsZU9iaj1Ob25lLCAqYXJncywgKiprd2FyZ3MpOgogICAgICAgICAiIiJGYWlsIHVubGVzcyBhbiBleGNlcHRpb24gb2YgY2xhc3MgZXhjQ2xhc3MgaXMgdGhyb3duCiAgICAgICAgICAgIGJ5IGNhbGxhYmxlT2JqIHdoZW4gaW52b2tlZCB3aXRoIGFyZ3VtZW50cyBhcmdzIGFuZCBrZXl3b3JkCkBAIC01NDEsNiArNTU1LDkgQEAKICAgICAgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKFNvbWVFeGNlcHRpb24pOgogICAgICAgICAgICAgICAgICAgICBkb19zb21ldGhpbmcoKQogCisgICAgICAgICAgIEFuIG9wdGlvbmFsIGtleXdvcmQgYXJndW1lbnQgJ21zZycgY2FuIGJlIHByb3ZpZGVkIHdoZW4gYXNzZXJ0UmFpc2VzCisgICAgICAgICAgIGlzIHVzZWQgYXMgYSBjb250ZXh0IG9iamVjdC4KKwogICAgICAgICAgICBUaGUgY29udGV4dCBtYW5hZ2VyIGtlZXBzIGEgcmVmZXJlbmNlIHRvIHRoZSBleGNlcHRpb24gYXMKICAgICAgICAgICAgdGhlICdleGNlcHRpb24nIGF0dHJpYnV0ZS4gVGhpcyBhbGxvd3MgeW91IHRvIGluc3BlY3QgdGhlCiAgICAgICAgICAgIGV4Y2VwdGlvbiBhZnRlciB0aGUgYXNzZXJ0aW9uOjoKQEAgLTU1MSwyNSArNTY4LDI1IEBACiAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHRoZV9leGNlcHRpb24uZXJyb3JfY29kZSwgMykKICAgICAgICAgIiIiCiAgICAgICAgIGNvbnRleHQgPSBfQXNzZXJ0UmFpc2VzQ29udGV4dChleGNDbGFzcywgc2VsZiwgY2FsbGFibGVPYmopCi0gICAgICAgIGlmIGNhbGxhYmxlT2JqIGlzIE5vbmU6Ci0gICAgICAgICAgICByZXR1cm4gY29udGV4dAotICAgICAgICB3aXRoIGNvbnRleHQ6Ci0gICAgICAgICAgICBjYWxsYWJsZU9iaigqYXJncywgKiprd2FyZ3MpCisgICAgICAgIHJldHVybiBjb250ZXh0LmhhbmRsZSgnYXNzZXJ0UmFpc2VzJywgY2FsbGFibGVPYmosIGFyZ3MsIGt3YXJncykKIAogICAgIGRlZiBhc3NlcnRXYXJucyhzZWxmLCBleHBlY3RlZF93YXJuaW5nLCBjYWxsYWJsZV9vYmo9Tm9uZSwgKmFyZ3MsICoqa3dhcmdzKToKICAgICAgICAgIiIiRmFpbCB1bmxlc3MgYSB3YXJuaW5nIG9mIGNsYXNzIHdhcm5DbGFzcyBpcyB0cmlnZ2VyZWQKLSAgICAgICAgICAgYnkgY2FsbGFibGVPYmogd2hlbiBpbnZva2VkIHdpdGggYXJndW1lbnRzIGFyZ3MgYW5kIGtleXdvcmQKKyAgICAgICAgICAgYnkgY2FsbGFibGVfb2JqIHdoZW4gaW52b2tlZCB3aXRoIGFyZ3VtZW50cyBhcmdzIGFuZCBrZXl3b3JkCiAgICAgICAgICAgIGFyZ3VtZW50cyBrd2FyZ3MuICBJZiBhIGRpZmZlcmVudCB0eXBlIG9mIHdhcm5pbmcgaXMKICAgICAgICAgICAgdHJpZ2dlcmVkLCBpdCB3aWxsIG5vdCBiZSBoYW5kbGVkOiBkZXBlbmRpbmcgb24gdGhlIG90aGVyCiAgICAgICAgICAgIHdhcm5pbmcgZmlsdGVyaW5nIHJ1bGVzIGluIGVmZmVjdCwgaXQgbWlnaHQgYmUgc2lsZW5jZWQsIHByaW50ZWQKICAgICAgICAgICAgb3V0LCBvciByYWlzZWQgYXMgYW4gZXhjZXB0aW9uLgogCi0gICAgICAgICAgIElmIGNhbGxlZCB3aXRoIGNhbGxhYmxlT2JqIG9taXR0ZWQgb3IgTm9uZSwgd2lsbCByZXR1cm4gYQorICAgICAgICAgICBJZiBjYWxsZWQgd2l0aCBjYWxsYWJsZV9vYmogb21pdHRlZCBvciBOb25lLCB3aWxsIHJldHVybiBhCiAgICAgICAgICAgIGNvbnRleHQgb2JqZWN0IHVzZWQgbGlrZSB0aGlzOjoKIAogICAgICAgICAgICAgICAgIHdpdGggc2VsZi5hc3NlcnRXYXJucyhTb21lV2FybmluZyk6CiAgICAgICAgICAgICAgICAgICAgIGRvX3NvbWV0aGluZygpCiAKKyAgICAgICAgICAgQW4gb3B0aW9uYWwga2V5d29yZCBhcmd1bWVudCAnbXNnJyBjYW4gYmUgcHJvdmlkZWQgd2hlbiBhc3NlcnRXYXJucworICAgICAgICAgICBpcyB1c2VkIGFzIGEgY29udGV4dCBvYmplY3QuCisKICAgICAgICAgICAgVGhlIGNvbnRleHQgbWFuYWdlciBrZWVwcyBhIHJlZmVyZW5jZSB0byB0aGUgZmlyc3QgbWF0Y2hpbmcKICAgICAgICAgICAgd2FybmluZyBhcyB0aGUgJ3dhcm5pbmcnIGF0dHJpYnV0ZTsgc2ltaWxhcmx5LCB0aGUgJ2ZpbGVuYW1lJwogICAgICAgICAgICBhbmQgJ2xpbmVubycgYXR0cmlidXRlcyBnaXZlIHlvdSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgbGluZQpAQCAtNTgyLDEwICs1OTksNyBAQAogICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbCh0aGVfd2FybmluZy5zb21lX2F0dHJpYnV0ZSwgMTQ3KQogICAgICAgICAiIiIKICAgICAgICAgY29udGV4dCA9IF9Bc3NlcnRXYXJuc0NvbnRleHQoZXhwZWN0ZWRfd2FybmluZywgc2VsZiwgY2FsbGFibGVfb2JqKQotICAgICAgICBpZiBjYWxsYWJsZV9vYmogaXMgTm9uZToKLSAgICAgICAgICAgIHJldHVybiBjb250ZXh0Ci0gICAgICAgIHdpdGggY29udGV4dDoKLSAgICAgICAgICAgIGNhbGxhYmxlX29iaigqYXJncywgKiprd2FyZ3MpCisgICAgICAgIHJldHVybiBjb250ZXh0LmhhbmRsZSgnYXNzZXJ0V2FybnMnLCBjYWxsYWJsZV9vYmosIGFyZ3MsIGt3YXJncykKIAogICAgIGRlZiBfZ2V0QXNzZXJ0RXF1YWxpdHlGdW5jKHNlbGYsIGZpcnN0LCBzZWNvbmQpOgogICAgICAgICAiIiJHZXQgYSBkZXRhaWxlZCBjb21wYXJpc29uIGZ1bmN0aW9uIGZvciB0aGUgdHlwZXMgb2YgdGhlIHR3byBhcmdzLgpAQCAtOTUxLDQ4ICs5NjUsNiBAQAogCiAgICAgICAgIHNlbGYuZmFpbChzZWxmLl9mb3JtYXRNZXNzYWdlKG1zZywgc3RhbmRhcmRNc2cpKQogCi0gICAgZGVmIGFzc2VydFNhbWVFbGVtZW50cyhzZWxmLCBleHBlY3RlZF9zZXEsIGFjdHVhbF9zZXEsIG1zZz1Ob25lKToKLSAgICAgICAgIiIiQW4gdW5vcmRlcmVkIHNlcXVlbmNlIHNwZWNpZmljIGNvbXBhcmlzb24uCi0KLSAgICAgICAgUmFpc2VzIHdpdGggYW4gZXJyb3IgbWVzc2FnZSBsaXN0aW5nIHdoaWNoIGVsZW1lbnRzIG9mIGV4cGVjdGVkX3NlcQotICAgICAgICBhcmUgbWlzc2luZyBmcm9tIGFjdHVhbF9zZXEgYW5kIHZpY2UgdmVyc2EgaWYgYW55LgotCi0gICAgICAgIER1cGxpY2F0ZSBlbGVtZW50cyBhcmUgaWdub3JlZCB3aGVuIGNvbXBhcmluZyAqZXhwZWN0ZWRfc2VxKiBhbmQKLSAgICAgICAgKmFjdHVhbF9zZXEqLiBJdCBpcyB0aGUgZXF1aXZhbGVudCBvZiBgYGFzc2VydEVxdWFsKHNldChleHBlY3RlZCksCi0gICAgICAgIHNldChhY3R1YWwpKWBgIGJ1dCBpdCB3b3JrcyB3aXRoIHNlcXVlbmNlcyBvZiB1bmhhc2hhYmxlIG9iamVjdHMgYXMKLSAgICAgICAgd2VsbC4KLSAgICAgICAgIiIiCi0gICAgICAgIHdhcm5pbmdzLndhcm4oJ2Fzc2VydFNhbWVFbGVtZW50cyBpcyBkZXByZWNhdGVkJywKLSAgICAgICAgICAgICAgICAgICAgICBEZXByZWNhdGlvbldhcm5pbmcpCi0gICAgICAgIHRyeToKLSAgICAgICAgICAgIGV4cGVjdGVkID0gc2V0KGV4cGVjdGVkX3NlcSkKLSAgICAgICAgICAgIGFjdHVhbCA9IHNldChhY3R1YWxfc2VxKQotICAgICAgICAgICAgbWlzc2luZyA9IHNvcnRlZChleHBlY3RlZC5kaWZmZXJlbmNlKGFjdHVhbCkpCi0gICAgICAgICAgICB1bmV4cGVjdGVkID0gc29ydGVkKGFjdHVhbC5kaWZmZXJlbmNlKGV4cGVjdGVkKSkKLSAgICAgICAgZXhjZXB0IFR5cGVFcnJvcjoKLSAgICAgICAgICAgICMgRmFsbCBiYWNrIHRvIHNsb3dlciBsaXN0LWNvbXBhcmUgaWYgYW55IG9mIHRoZSBvYmplY3RzIGFyZQotICAgICAgICAgICAgIyBub3QgaGFzaGFibGUuCi0gICAgICAgICAgICBleHBlY3RlZCA9IGxpc3QoZXhwZWN0ZWRfc2VxKQotICAgICAgICAgICAgYWN0dWFsID0gbGlzdChhY3R1YWxfc2VxKQotICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAgICAgIGV4cGVjdGVkLnNvcnQoKQotICAgICAgICAgICAgICAgIGFjdHVhbC5zb3J0KCkKLSAgICAgICAgICAgIGV4Y2VwdCBUeXBlRXJyb3I6Ci0gICAgICAgICAgICAgICAgbWlzc2luZywgdW5leHBlY3RlZCA9IHVub3JkZXJhYmxlX2xpc3RfZGlmZmVyZW5jZShleHBlY3RlZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdHVhbCkKLSAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgbWlzc2luZywgdW5leHBlY3RlZCA9IHNvcnRlZF9saXN0X2RpZmZlcmVuY2UoZXhwZWN0ZWQsIGFjdHVhbCkKLSAgICAgICAgZXJyb3JzID0gW10KLSAgICAgICAgaWYgbWlzc2luZzoKLSAgICAgICAgICAgIGVycm9ycy5hcHBlbmQoJ0V4cGVjdGVkLCBidXQgbWlzc2luZzpcbiAgICAlcycgJQotICAgICAgICAgICAgICAgICAgICAgICAgICBzYWZlX3JlcHIobWlzc2luZykpCi0gICAgICAgIGlmIHVuZXhwZWN0ZWQ6Ci0gICAgICAgICAgICBlcnJvcnMuYXBwZW5kKCdVbmV4cGVjdGVkLCBidXQgcHJlc2VudDpcbiAgICAlcycgJQotICAgICAgICAgICAgICAgICAgICAgICAgICBzYWZlX3JlcHIodW5leHBlY3RlZCkpCi0gICAgICAgIGlmIGVycm9yczoKLSAgICAgICAgICAgIHN0YW5kYXJkTXNnID0gJ1xuJy5qb2luKGVycm9ycykKLSAgICAgICAgICAgIHNlbGYuZmFpbChzZWxmLl9mb3JtYXRNZXNzYWdlKG1zZywgc3RhbmRhcmRNc2cpKQotCiAKICAgICBkZWYgYXNzZXJ0Q291bnRFcXVhbChzZWxmLCBmaXJzdCwgc2Vjb25kLCBtc2c9Tm9uZSk6CiAgICAgICAgICIiIkFuIHVub3JkZXJlZCBzZXF1ZW5jZSBjb21wYXJpc29uIGFzc2VydGluZyB0aGF0IHRoZSBzYW1lIGVsZW1lbnRzLApAQCAtMTAzNyw4ICsxMDA5LDggQEAKICAgICAgICAgICAgIGlmIChsZW4oZmlyc3QpID4gc2VsZi5fZGlmZlRocmVzaG9sZCBvcgogICAgICAgICAgICAgICAgIGxlbihzZWNvbmQpID4gc2VsZi5fZGlmZlRocmVzaG9sZCk6CiAgICAgICAgICAgICAgICAgc2VsZi5fYmFzZUFzc2VydEVxdWFsKGZpcnN0LCBzZWNvbmQsIG1zZykKLSAgICAgICAgICAgIGZpcnN0bGluZXMgPSBmaXJzdC5zcGxpdGxpbmVzKFRydWUpCi0gICAgICAgICAgICBzZWNvbmRsaW5lcyA9IHNlY29uZC5zcGxpdGxpbmVzKFRydWUpCisgICAgICAgICAgICBmaXJzdGxpbmVzID0gZmlyc3Quc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKQorICAgICAgICAgICAgc2Vjb25kbGluZXMgPSBzZWNvbmQuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKQogICAgICAgICAgICAgaWYgbGVuKGZpcnN0bGluZXMpID09IDEgYW5kIGZpcnN0LnN0cmlwKCdcclxuJykgPT0gZmlyc3Q6CiAgICAgICAgICAgICAgICAgZmlyc3RsaW5lcyA9IFtmaXJzdCArICdcbiddCiAgICAgICAgICAgICAgICAgc2Vjb25kbGluZXMgPSBbc2Vjb25kICsgJ1xuJ10KQEAgLTExMDYsMTUgKzEwNzgsMTUgQEAKICAgICAgICAgICAgIGV4cGVjdGVkX3JlZ2V4OiBSZWdleCAocmUgcGF0dGVybiBvYmplY3Qgb3Igc3RyaW5nKSBleHBlY3RlZAogICAgICAgICAgICAgICAgICAgICB0byBiZSBmb3VuZCBpbiBlcnJvciBtZXNzYWdlLgogICAgICAgICAgICAgY2FsbGFibGVfb2JqOiBGdW5jdGlvbiB0byBiZSBjYWxsZWQuCisgICAgICAgICAgICBtc2c6IE9wdGlvbmFsIG1lc3NhZ2UgdXNlZCBpbiBjYXNlIG9mIGZhaWx1cmUuIENhbiBvbmx5IGJlIHVzZWQKKyAgICAgICAgICAgICAgICAgICAgd2hlbiBhc3NlcnRSYWlzZXNSZWdleCBpcyB1c2VkIGFzIGEgY29udGV4dCBtYW5hZ2VyLgogICAgICAgICAgICAgYXJnczogRXh0cmEgYXJncy4KICAgICAgICAgICAgIGt3YXJnczogRXh0cmEga3dhcmdzLgogICAgICAgICAiIiIKICAgICAgICAgY29udGV4dCA9IF9Bc3NlcnRSYWlzZXNDb250ZXh0KGV4cGVjdGVkX2V4Y2VwdGlvbiwgc2VsZiwgY2FsbGFibGVfb2JqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfcmVnZXgpCi0gICAgICAgIGlmIGNhbGxhYmxlX29iaiBpcyBOb25lOgotICAgICAgICAgICAgcmV0dXJuIGNvbnRleHQKLSAgICAgICAgd2l0aCBjb250ZXh0OgotICAgICAgICAgICAgY2FsbGFibGVfb2JqKCphcmdzLCAqKmt3YXJncykKKworICAgICAgICByZXR1cm4gY29udGV4dC5oYW5kbGUoJ2Fzc2VydFJhaXNlc1JlZ2V4JywgY2FsbGFibGVfb2JqLCBhcmdzLCBrd2FyZ3MpCiAKICAgICBkZWYgYXNzZXJ0V2FybnNSZWdleChzZWxmLCBleHBlY3RlZF93YXJuaW5nLCBleHBlY3RlZF9yZWdleCwKICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsYWJsZV9vYmo9Tm9uZSwgKmFyZ3MsICoqa3dhcmdzKToKQEAgLTExMjgsMTUgKzExMDAsMTQgQEAKICAgICAgICAgICAgIGV4cGVjdGVkX3JlZ2V4OiBSZWdleCAocmUgcGF0dGVybiBvYmplY3Qgb3Igc3RyaW5nKSBleHBlY3RlZAogICAgICAgICAgICAgICAgICAgICB0byBiZSBmb3VuZCBpbiBlcnJvciBtZXNzYWdlLgogICAgICAgICAgICAgY2FsbGFibGVfb2JqOiBGdW5jdGlvbiB0byBiZSBjYWxsZWQuCisgICAgICAgICAgICBtc2c6IE9wdGlvbmFsIG1lc3NhZ2UgdXNlZCBpbiBjYXNlIG9mIGZhaWx1cmUuIENhbiBvbmx5IGJlIHVzZWQKKyAgICAgICAgICAgICAgICAgICAgd2hlbiBhc3NlcnRXYXJuc1JlZ2V4IGlzIHVzZWQgYXMgYSBjb250ZXh0IG1hbmFnZXIuCiAgICAgICAgICAgICBhcmdzOiBFeHRyYSBhcmdzLgogICAgICAgICAgICAga3dhcmdzOiBFeHRyYSBrd2FyZ3MuCiAgICAgICAgICIiIgogICAgICAgICBjb250ZXh0ID0gX0Fzc2VydFdhcm5zQ29udGV4dChleHBlY3RlZF93YXJuaW5nLCBzZWxmLCBjYWxsYWJsZV9vYmosCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkX3JlZ2V4KQotICAgICAgICBpZiBjYWxsYWJsZV9vYmogaXMgTm9uZToKLSAgICAgICAgICAgIHJldHVybiBjb250ZXh0Ci0gICAgICAgIHdpdGggY29udGV4dDoKLSAgICAgICAgICAgIGNhbGxhYmxlX29iaigqYXJncywgKiprd2FyZ3MpCisgICAgICAgIHJldHVybiBjb250ZXh0LmhhbmRsZSgnYXNzZXJ0V2FybnNSZWdleCcsIGNhbGxhYmxlX29iaiwgYXJncywga3dhcmdzKQogCiAgICAgZGVmIGFzc2VydFJlZ2V4KHNlbGYsIHRleHQsIGV4cGVjdGVkX3JlZ2V4LCBtc2c9Tm9uZSk6CiAgICAgICAgICIiIkZhaWwgdGhlIHRlc3QgdW5sZXNzIHRoZSB0ZXh0IG1hdGNoZXMgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbi4iIiIKZGlmZiAtLWdpdCBhL0xpYi91bml0dGVzdC9tYWluLnB5IGIvTGliL3VuaXR0ZXN0L21haW4ucHkKaW5kZXggNTVkNGU0Yi4uYzUwMDY2ZiAxMDA2NDQKLS0tIGEvTGliL3VuaXR0ZXN0L21haW4ucHkKKysrIGIvTGliL3VuaXR0ZXN0L21haW4ucHkKQEAgLTIsNyArMiw2IEBACiAKIGltcG9ydCBzeXMKIGltcG9ydCBvcwotaW1wb3J0IHR5cGVzCiAKIGZyb20gLiBpbXBvcnQgbG9hZGVyLCBydW5uZXIKIGZyb20gLnNpZ25hbHMgaW1wb3J0IGluc3RhbGxIYW5kbGVyCmRpZmYgLS1naXQgYS9MaWIvdW5pdHRlc3QvcmVzdWx0LnB5IGIvTGliL3VuaXR0ZXN0L3Jlc3VsdC5weQppbmRleCA0NGJmMTg2Li45N2U1NDI2IDEwMDY0NAotLS0gYS9MaWIvdW5pdHRlc3QvcmVzdWx0LnB5CisrKyBiL0xpYi91bml0dGVzdC9yZXN1bHQucHkKQEAgLTEsNiArMSw1IEBACiAiIiJUZXN0IHJlc3VsdCBvYmplY3QiIiIKIAotaW1wb3J0IG9zCiBpbXBvcnQgaW8KIGltcG9ydCBzeXMKIGltcG9ydCB0cmFjZWJhY2sKZGlmZiAtLWdpdCBhL0xpYi91bml0dGVzdC90ZXN0L190ZXN0X3dhcm5pbmdzLnB5IGIvTGliL3VuaXR0ZXN0L3Rlc3QvX3Rlc3Rfd2FybmluZ3MucHkKaW5kZXggZDBiZTE4ZC4uNWNiZmI1MyAxMDA2NDQKLS0tIGEvTGliL3VuaXR0ZXN0L3Rlc3QvX3Rlc3Rfd2FybmluZ3MucHkKKysrIGIvTGliL3VuaXR0ZXN0L3Rlc3QvX3Rlc3Rfd2FybmluZ3MucHkKQEAgLTEwLDcgKzEwLDYgQEAKIFNlZSAjMTA1MzUuCiAiIiIKIAotaW1wb3J0IGlvCiBpbXBvcnQgc3lzCiBpbXBvcnQgdW5pdHRlc3QKIGltcG9ydCB3YXJuaW5ncwpkaWZmIC0tZ2l0IGEvTGliL3VuaXR0ZXN0L3Rlc3QvdGVzdF9hc3NlcnRpb25zLnB5IGIvTGliL3VuaXR0ZXN0L3Rlc3QvdGVzdF9hc3NlcnRpb25zLnB5CmluZGV4IGExZDIwZWIuLmQ0M2ZlNWEgMTAwNjQ0Ci0tLSBhL0xpYi91bml0dGVzdC90ZXN0L3Rlc3RfYXNzZXJ0aW9ucy5weQorKysgYi9MaWIvdW5pdHRlc3QvdGVzdC90ZXN0X2Fzc2VydGlvbnMucHkKQEAgLTEsNiArMSw3IEBACiBpbXBvcnQgZGF0ZXRpbWUKIGltcG9ydCB3YXJuaW5ncwogaW1wb3J0IHVuaXR0ZXN0Citmcm9tIGl0ZXJ0b29scyBpbXBvcnQgcHJvZHVjdAogCiAKIGNsYXNzIFRlc3RfQXNzZXJ0aW9ucyh1bml0dGVzdC5UZXN0Q2FzZSk6CkBAIC0xNDUsNiArMTQ2LDE0IEBACiAgICAgICAgIHNlbGYudGVzdGFibGVUcnVlLl9mb3JtYXRNZXNzYWdlKG9uZSwgJ1x1RkZGRCcpCiAKICAgICBkZWYgYXNzZXJ0TWVzc2FnZXMoc2VsZiwgbWV0aG9kTmFtZSwgYXJncywgZXJyb3JzKToKKyAgICAgICAgIiIiCisgICAgICAgIENoZWNrIHRoYXQgbWV0aG9kTmFtZSgqYXJncykgcmFpc2VzIHRoZSBjb3JyZWN0IGVycm9yIG1lc3NhZ2VzLgorICAgICAgICBlcnJvcnMgc2hvdWxkIGJlIGEgbGlzdCBvZiA0IHJlZ2V4IHRoYXQgbWF0Y2ggdGhlIGVycm9yIHdoZW46CisgICAgICAgICAgMSkgbG9uZ01lc3NhZ2UgPSBGYWxzZSBhbmQgbm8gbXNnIHBhc3NlZDsKKyAgICAgICAgICAyKSBsb25nTWVzc2FnZSA9IEZhbHNlIGFuZCBtc2cgcGFzc2VkOworICAgICAgICAgIDMpIGxvbmdNZXNzYWdlID0gVHJ1ZSBhbmQgbm8gbXNnIHBhc3NlZDsKKyAgICAgICAgICA0KSBsb25nTWVzc2FnZSA9IFRydWUgYW5kIG1zZyBwYXNzZWQ7CisgICAgICAgICIiIgogICAgICAgICBkZWYgZ2V0TWV0aG9kKGkpOgogICAgICAgICAgICAgdXNlVGVzdGFibGVGYWxzZSAgPSBpIDwgMgogICAgICAgICAgICAgaWYgdXNlVGVzdGFibGVGYWxzZToKQEAgLTI4NCwzICsyOTMsNjcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbIl51bmV4cGVjdGVkbHkgaWRlbnRpY2FsOiBOb25lJCIsICJeb29wcyQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiXnVuZXhwZWN0ZWRseSBpZGVudGljYWw6IE5vbmUkIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl51bmV4cGVjdGVkbHkgaWRlbnRpY2FsOiBOb25lIDogb29wcyQiXSkKKworCisgICAgZGVmIGFzc2VydE1lc3NhZ2VzQ00oc2VsZiwgbWV0aG9kTmFtZSwgYXJncywgZnVuYywgZXJyb3JzKToKKyAgICAgICAgIiIiCisgICAgICAgIENoZWNrIHRoYXQgdGhlIGNvcnJlY3QgZXJyb3IgbWVzc2FnZXMgYXJlIHJhaXNlZCB3aGlsZSBleGVjdXRpbmc6CisgICAgICAgICAgd2l0aCBtZXRob2QoKmFyZ3MpOgorICAgICAgICAgICAgICBmdW5jKCkKKyAgICAgICAgKmVycm9ycyogc2hvdWxkIGJlIGEgbGlzdCBvZiA0IHJlZ2V4IHRoYXQgbWF0Y2ggdGhlIGVycm9yIHdoZW46CisgICAgICAgICAgMSkgbG9uZ01lc3NhZ2UgPSBGYWxzZSBhbmQgbm8gbXNnIHBhc3NlZDsKKyAgICAgICAgICAyKSBsb25nTWVzc2FnZSA9IEZhbHNlIGFuZCBtc2cgcGFzc2VkOworICAgICAgICAgIDMpIGxvbmdNZXNzYWdlID0gVHJ1ZSBhbmQgbm8gbXNnIHBhc3NlZDsKKyAgICAgICAgICA0KSBsb25nTWVzc2FnZSA9IFRydWUgYW5kIG1zZyBwYXNzZWQ7CisgICAgICAgICIiIgorICAgICAgICBwID0gcHJvZHVjdCgoc2VsZi50ZXN0YWJsZUZhbHNlLCBzZWxmLnRlc3RhYmxlVHJ1ZSksCisgICAgICAgICAgICAgICAgICAgICh7fSwgeyJtc2ciOiAib29wcyJ9KSkKKyAgICAgICAgZm9yIChjbHMsIGt3YXJncyksIGVyciBpbiB6aXAocCwgZXJyb3JzKToKKyAgICAgICAgICAgIG1ldGhvZCA9IGdldGF0dHIoY2xzLCBtZXRob2ROYW1lKQorICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFJhaXNlc1JlZ2V4KGNscy5mYWlsdXJlRXhjZXB0aW9uLCBlcnIpOgorICAgICAgICAgICAgICAgIHdpdGggbWV0aG9kKCphcmdzLCAqKmt3YXJncykgYXMgY206CisgICAgICAgICAgICAgICAgICAgIGZ1bmMoKQorCisgICAgZGVmIHRlc3RBc3NlcnRSYWlzZXMoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0TWVzc2FnZXNDTSgnYXNzZXJ0UmFpc2VzJywgKFR5cGVFcnJvciwpLCBsYW1iZGE6IE5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbJ15UeXBlRXJyb3Igbm90IHJhaXNlZCQnLCAnXm9vcHMkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXlR5cGVFcnJvciBub3QgcmFpc2VkJCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ15UeXBlRXJyb3Igbm90IHJhaXNlZCA6IG9vcHMkJ10pCisKKyAgICBkZWYgdGVzdEFzc2VydFJhaXNlc1JlZ2V4KHNlbGYpOgorICAgICAgICAjIHRlc3QgZXJyb3Igbm90IHJhaXNlZAorICAgICAgICBzZWxmLmFzc2VydE1lc3NhZ2VzQ00oJ2Fzc2VydFJhaXNlc1JlZ2V4JywgKFR5cGVFcnJvciwgJ3VudXNlZCByZWdleCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFtYmRhOiBOb25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWydeVHlwZUVycm9yIG5vdCByYWlzZWQkJywgJ15vb3BzJCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ15UeXBlRXJyb3Igbm90IHJhaXNlZCQnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdeVHlwZUVycm9yIG5vdCByYWlzZWQgOiBvb3BzJCddKQorICAgICAgICAjIHRlc3QgZXJyb3IgcmFpc2VkIGJ1dCB3aXRoIHdyb25nIG1lc3NhZ2UKKyAgICAgICAgZGVmIHJhaXNlX3dyb25nX21lc3NhZ2UoKToKKyAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcignZm9vJykKKyAgICAgICAgc2VsZi5hc3NlcnRNZXNzYWdlc0NNKCdhc3NlcnRSYWlzZXNSZWdleCcsIChUeXBlRXJyb3IsICdyZWdleCcpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2Vfd3JvbmdfbWVzc2FnZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsnXiJyZWdleCIgZG9lcyBub3QgbWF0Y2ggImZvbyIkJywgJ15vb3BzJCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ14icmVnZXgiIGRvZXMgbm90IG1hdGNoICJmb28iJCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ14icmVnZXgiIGRvZXMgbm90IG1hdGNoICJmb28iIDogb29wcyQnXSkKKworICAgIGRlZiB0ZXN0QXNzZXJ0V2FybnMoc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0TWVzc2FnZXNDTSgnYXNzZXJ0V2FybnMnLCAoVXNlcldhcm5pbmcsKSwgbGFtYmRhOiBOb25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWydeVXNlcldhcm5pbmcgbm90IHRyaWdnZXJlZCQnLCAnXm9vcHMkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXlVzZXJXYXJuaW5nIG5vdCB0cmlnZ2VyZWQkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXlVzZXJXYXJuaW5nIG5vdCB0cmlnZ2VyZWQgOiBvb3BzJCddKQorCisgICAgZGVmIHRlc3RBc3NlcnRXYXJuc1JlZ2V4KHNlbGYpOgorICAgICAgICAjIHRlc3QgZXJyb3Igbm90IHJhaXNlZAorICAgICAgICBzZWxmLmFzc2VydE1lc3NhZ2VzQ00oJ2Fzc2VydFdhcm5zUmVnZXgnLCAoVXNlcldhcm5pbmcsICd1bnVzZWQgcmVnZXgnKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhbWJkYTogTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsnXlVzZXJXYXJuaW5nIG5vdCB0cmlnZ2VyZWQkJywgJ15vb3BzJCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ15Vc2VyV2FybmluZyBub3QgdHJpZ2dlcmVkJCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ15Vc2VyV2FybmluZyBub3QgdHJpZ2dlcmVkIDogb29wcyQnXSkKKyAgICAgICAgIyB0ZXN0IHdhcm5pbmcgcmFpc2VkIGJ1dCB3aXRoIHdyb25nIG1lc3NhZ2UKKyAgICAgICAgZGVmIHJhaXNlX3dyb25nX21lc3NhZ2UoKToKKyAgICAgICAgICAgIHdhcm5pbmdzLndhcm4oJ2ZvbycpCisgICAgICAgIHNlbGYuYXNzZXJ0TWVzc2FnZXNDTSgnYXNzZXJ0V2FybnNSZWdleCcsIChVc2VyV2FybmluZywgJ3JlZ2V4JyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZV93cm9uZ19tZXNzYWdlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWydeInJlZ2V4IiBkb2VzIG5vdCBtYXRjaCAiZm9vIiQnLCAnXm9vcHMkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXiJyZWdleCIgZG9lcyBub3QgbWF0Y2ggImZvbyIkJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnXiJyZWdleCIgZG9lcyBub3QgbWF0Y2ggImZvbyIgOiBvb3BzJCddKQpkaWZmIC0tZ2l0IGEvTGliL3VuaXR0ZXN0L3Rlc3QvdGVzdF9jYXNlLnB5IGIvTGliL3VuaXR0ZXN0L3Rlc3QvdGVzdF9jYXNlLnB5CmluZGV4IGM3NGE1MzkuLmZkYjJlNzggMTAwNjQ0Ci0tLSBhL0xpYi91bml0dGVzdC90ZXN0L3Rlc3RfY2FzZS5weQorKysgYi9MaWIvdW5pdHRlc3QvdGVzdC90ZXN0X2Nhc2UucHkKQEAgLTQsNiArNCw3IEBACiBpbXBvcnQgcmUKIGltcG9ydCBzeXMKIGltcG9ydCB3YXJuaW5ncworaW1wb3J0IHdlYWtyZWYKIGltcG9ydCBpbnNwZWN0CiAKIGZyb20gY29weSBpbXBvcnQgZGVlcGNvcHkKQEAgLTM4NiwyNyArMzg3LDYyIEBACiAgICAgICAgIHNlbGYuYXNzZXJ0SXNJbnN0YW5jZShGb28oKS5pZCgpLCBzdHIpCiAKIAotICAgICMgIklmIHJlc3VsdCBpcyBvbWl0dGVkIG9yIE5vbmUsIGEgdGVtcG9yYXJ5IHJlc3VsdCBvYmplY3QgaXMgY3JlYXRlZAotICAgICMgYW5kIHVzZWQsIGJ1dCBpcyBub3QgbWFkZSBhdmFpbGFibGUgdG8gdGhlIGNhbGxlci4gQXMgVGVzdENhc2Ugb3ducyB0aGUKKyAgICAjICJJZiByZXN1bHQgaXMgb21pdHRlZCBvciBOb25lLCBhIHRlbXBvcmFyeSByZXN1bHQgb2JqZWN0IGlzIGNyZWF0ZWQsCisgICAgIyB1c2VkLCBhbmQgaXMgbWFkZSBhdmFpbGFibGUgdG8gdGhlIGNhbGxlci4gQXMgVGVzdENhc2Ugb3ducyB0aGUKICAgICAjIHRlbXBvcmFyeSByZXN1bHQgc3RhcnRUZXN0UnVuIGFuZCBzdG9wVGVzdFJ1biBhcmUgY2FsbGVkLgogCiAgICAgZGVmIHRlc3RfcnVuX191c2VzX2RlZmF1bHRUZXN0UmVzdWx0KHNlbGYpOgogICAgICAgICBldmVudHMgPSBbXQorICAgICAgICBkZWZhdWx0UmVzdWx0ID0gTG9nZ2luZ1Jlc3VsdChldmVudHMpCiAKICAgICAgICAgY2xhc3MgRm9vKHVuaXR0ZXN0LlRlc3RDYXNlKToKICAgICAgICAgICAgIGRlZiB0ZXN0KHNlbGYpOgogICAgICAgICAgICAgICAgIGV2ZW50cy5hcHBlbmQoJ3Rlc3QnKQogCiAgICAgICAgICAgICBkZWYgZGVmYXVsdFRlc3RSZXN1bHQoc2VsZik6Ci0gICAgICAgICAgICAgICAgcmV0dXJuIExvZ2dpbmdSZXN1bHQoZXZlbnRzKQorICAgICAgICAgICAgICAgIHJldHVybiBkZWZhdWx0UmVzdWx0CiAKICAgICAgICAgIyBNYWtlIHJ1bigpIGZpbmQgYSByZXN1bHQgb2JqZWN0IG9uIGl0cyBvd24KLSAgICAgICAgRm9vKCd0ZXN0JykucnVuKCkKKyAgICAgICAgcmVzdWx0ID0gRm9vKCd0ZXN0JykucnVuKCkKIAorICAgICAgICBzZWxmLmFzc2VydElzKHJlc3VsdCwgZGVmYXVsdFJlc3VsdCkKICAgICAgICAgZXhwZWN0ZWQgPSBbJ3N0YXJ0VGVzdFJ1bicsICdzdGFydFRlc3QnLCAndGVzdCcsICdhZGRTdWNjZXNzJywKICAgICAgICAgICAgICdzdG9wVGVzdCcsICdzdG9wVGVzdFJ1biddCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoZXZlbnRzLCBleHBlY3RlZCkKIAorCisgICAgIyAiVGhlIHJlc3VsdCBvYmplY3QgaXMgcmV0dXJuZWQgdG8gcnVuJ3MgY2FsbGVyIgorICAgIGRlZiB0ZXN0X3J1bl9fcmV0dXJuc19naXZlbl9yZXN1bHQoc2VsZik6CisKKyAgICAgICAgY2xhc3MgRm9vKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAgICAgICAgIGRlZiB0ZXN0KHNlbGYpOgorICAgICAgICAgICAgICAgIHBhc3MKKworICAgICAgICByZXN1bHQgPSB1bml0dGVzdC5UZXN0UmVzdWx0KCkKKworICAgICAgICByZXR2YWwgPSBGb28oJ3Rlc3QnKS5ydW4ocmVzdWx0KQorICAgICAgICBzZWxmLmFzc2VydElzKHJldHZhbCwgcmVzdWx0KQorCisKKyAgICAjICJUaGUgc2FtZSBlZmZlY3QgW2FzIG1ldGhvZCBydW5dIG1heSBiZSBoYWQgYnkgc2ltcGx5IGNhbGxpbmcgdGhlCisgICAgIyBUZXN0Q2FzZSBpbnN0YW5jZS4iCisgICAgZGVmIHRlc3RfY2FsbF9faW52b2tpbmdfYW5faW5zdGFuY2VfZGVsZWdhdGVzX3RvX3J1bihzZWxmKToKKyAgICAgICAgcmVzdWx0SW4gPSB1bml0dGVzdC5UZXN0UmVzdWx0KCkKKyAgICAgICAgcmVzdWx0T3V0ID0gdW5pdHRlc3QuVGVzdFJlc3VsdCgpCisKKyAgICAgICAgY2xhc3MgRm9vKHVuaXR0ZXN0LlRlc3RDYXNlKToKKyAgICAgICAgICAgIGRlZiB0ZXN0KHNlbGYpOgorICAgICAgICAgICAgICAgIHBhc3MKKworICAgICAgICAgICAgZGVmIHJ1bihzZWxmLCByZXN1bHQpOgorICAgICAgICAgICAgICAgIHNlbGYuYXNzZXJ0SXMocmVzdWx0LCByZXN1bHRJbikKKyAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0T3V0CisKKyAgICAgICAgcmV0dmFsID0gRm9vKCd0ZXN0JykocmVzdWx0SW4pCisKKyAgICAgICAgc2VsZi5hc3NlcnRJcyhyZXR2YWwsIHJlc3VsdE91dCkKKworCiAgICAgZGVmIHRlc3RTaG9ydERlc2NyaXB0aW9uV2l0aG91dERvY3N0cmluZyhzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRJc05vbmUoc2VsZi5zaG9ydERlc2NyaXB0aW9uKCkpCiAKQEAgLTExNDAsNyArMTE3Niw2IEBACiAgICAgICAgICAgICAoc2VsZi5hc3NlcnRfLCAoVHJ1ZSwpKSwKICAgICAgICAgICAgIChzZWxmLmZhaWxVbmxlc3NSYWlzZXMsIChUeXBlRXJyb3IsIGxhbWJkYSBfOiAzLjE0ICsgJ3NwYW0nKSksCiAgICAgICAgICAgICAoc2VsZi5mYWlsSWYsIChGYWxzZSwpKSwKLSAgICAgICAgICAgIChzZWxmLmFzc2VydFNhbWVFbGVtZW50cywgKFsxLCAxLCAyLCAzXSwgWzEsIDIsIDNdKSksCiAgICAgICAgICAgICAoc2VsZi5hc3NlcnREaWN0Q29udGFpbnNTdWJzZXQsIChkaWN0KGE9MSwgYj0yKSwgZGljdChhPTEsIGI9MiwgYz0zKSkpLAogICAgICAgICAgICAgKHNlbGYuYXNzZXJ0UmFpc2VzUmVnZXhwLCAoS2V5RXJyb3IsICdmb28nLCBsYW1iZGE6IHt9Wydmb28nXSkpLAogICAgICAgICAgICAgKHNlbGYuYXNzZXJ0UmVnZXhwTWF0Y2hlcywgKCdiYXInLCAnYmFyJykpLApAQCAtMTE0OSwxOCArMTE4NCwyMCBAQAogICAgICAgICAgICAgd2l0aCBzZWxmLmFzc2VydFdhcm5zKERlcHJlY2F0aW9uV2FybmluZyk6CiAgICAgICAgICAgICAgICAgbWV0aCgqYXJncykKIAotICAgIGRlZiB0ZXN0RGVwcmVjYXRlZEZhaWxNZXRob2RzKHNlbGYpOgotICAgICAgICAiIiJUZXN0IHRoYXQgdGhlIGRlcHJlY2F0ZWQgZmFpbCogbWV0aG9kcyBnZXQgcmVtb3ZlZCBpbiAzLjMiIiIKKyAgICAjIGRpc2FibGUgdGhpcyB0ZXN0IGZvciBub3cuIFdoZW4gdGhlIHZlcnNpb24gd2hlcmUgdGhlIGZhaWwqIG1ldGhvZHMgd2lsbAorICAgICMgYmUgcmVtb3ZlZCBpcyBkZWNpZGVkLCByZS1lbmFibGUgaXQgYW5kIHVwZGF0ZSB0aGUgdmVyc2lvbgorICAgIGRlZiBfdGVzdERlcHJlY2F0ZWRGYWlsTWV0aG9kcyhzZWxmKToKKyAgICAgICAgIiIiVGVzdCB0aGF0IHRoZSBkZXByZWNhdGVkIGZhaWwqIG1ldGhvZHMgZ2V0IHJlbW92ZWQgaW4gMy54IiIiCiAgICAgICAgIGlmIHN5cy52ZXJzaW9uX2luZm9bOjJdIDwgKDMsIDMpOgogICAgICAgICAgICAgcmV0dXJuCiAgICAgICAgIGRlcHJlY2F0ZWRfbmFtZXMgPSBbCiAgICAgICAgICAgICAnZmFpbElmRXF1YWwnLCAnZmFpbFVubGVzc0VxdWFsJywgJ2ZhaWxVbmxlc3NBbG1vc3RFcXVhbCcsCiAgICAgICAgICAgICAnZmFpbElmQWxtb3N0RXF1YWwnLCAnZmFpbFVubGVzcycsICdmYWlsVW5sZXNzUmFpc2VzJywgJ2ZhaWxJZicsCi0gICAgICAgICAgICAnYXNzZXJ0U2FtZUVsZW1lbnRzJywgJ2Fzc2VydERpY3RDb250YWluc1N1YnNldCcsCisgICAgICAgICAgICAnYXNzZXJ0RGljdENvbnRhaW5zU3Vic2V0JywKICAgICAgICAgXQogICAgICAgICBmb3IgZGVwcmVjYXRlZF9uYW1lIGluIGRlcHJlY2F0ZWRfbmFtZXM6CiAgICAgICAgICAgICB3aXRoIHNlbGYuYXNzZXJ0UmFpc2VzKEF0dHJpYnV0ZUVycm9yKToKLSAgICAgICAgICAgICAgICBnZXRhdHRyKHNlbGYsIGRlcHJlY2F0ZWRfbmFtZSkgICMgcmVtb3ZlIHRoZXNlIGluIDMuMworICAgICAgICAgICAgICAgIGdldGF0dHIoc2VsZiwgZGVwcmVjYXRlZF9uYW1lKSAgIyByZW1vdmUgdGhlc2UgaW4gMy54CiAKICAgICBkZWYgdGVzdERlZXBjb3B5KHNlbGYpOgogICAgICAgICAjIElzc3VlOiA1NjYwCkBAIC0xMjY4LDMgKzEzMDUsMTEgQEAKICAgICAgICAgICAgIGtsYXNzKCd0ZXN0X3NvbWV0aGluZycpLnJ1bihyZXN1bHQpCiAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKGxlbihyZXN1bHQuZXJyb3JzKSwgMSkKICAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocmVzdWx0LnRlc3RzUnVuLCAxKQorCisgICAgQHN1cHBvcnQuY3B5dGhvbl9vbmx5CisgICAgZGVmIHRlc3ROb0N5Y2xlcyhzZWxmKToKKyAgICAgICAgY2FzZSA9IHVuaXR0ZXN0LlRlc3RDYXNlKCkKKyAgICAgICAgd3IgPSB3ZWFrcmVmLnJlZihjYXNlKQorICAgICAgICB3aXRoIHN1cHBvcnQuZGlzYWJsZV9nYygpOgorICAgICAgICAgICAgZGVsIGNhc2UKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2Uod3IoKSkKZGlmZiAtLWdpdCBhL0xpYi91bml0dGVzdC90ZXN0L3Rlc3RfbG9hZGVyLnB5IGIvTGliL3VuaXR0ZXN0L3Rlc3QvdGVzdF9sb2FkZXIucHkKaW5kZXggZjdlMzFhNS4uZDFiOWVmNSAxMDA2NDQKLS0tIGEvTGliL3VuaXR0ZXN0L3Rlc3QvdGVzdF9sb2FkZXIucHkKKysrIGIvTGliL3VuaXR0ZXN0L3Rlc3QvdGVzdF9sb2FkZXIucHkKQEAgLTIzOSw3ICsyMzksNyBAQAogICAgICAgICB0cnk6CiAgICAgICAgICAgICBsb2FkZXIubG9hZFRlc3RzRnJvbU5hbWUoJ3NkYXNmYXNmYXNkZicpCiAgICAgICAgIGV4Y2VwdCBJbXBvcnRFcnJvciBhcyBlOgotICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChzdHIoZSksICJObyBtb2R1bGUgbmFtZWQgc2Rhc2Zhc2Zhc2RmIikKKyAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKGUpLCAiTm8gbW9kdWxlIG5hbWVkICdzZGFzZmFzZmFzZGYnIikKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHNlbGYuZmFpbCgiVGVzdExvYWRlci5sb2FkVGVzdHNGcm9tTmFtZSBmYWlsZWQgdG8gcmFpc2UgSW1wb3J0RXJyb3IiKQogCkBAIC02MTksNyArNjE5LDcgQEAKICAgICAgICAgdHJ5OgogICAgICAgICAgICAgbG9hZGVyLmxvYWRUZXN0c0Zyb21OYW1lcyhbJ3NkYXNmYXNmYXNkZiddKQogICAgICAgICBleGNlcHQgSW1wb3J0RXJyb3IgYXMgZToKLSAgICAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwoc3RyKGUpLCAiTm8gbW9kdWxlIG5hbWVkIHNkYXNmYXNmYXNkZiIpCisgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHN0cihlKSwgIk5vIG1vZHVsZSBuYW1lZCAnc2Rhc2Zhc2Zhc2RmJyIpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBzZWxmLmZhaWwoIlRlc3RMb2FkZXIubG9hZFRlc3RzRnJvbU5hbWVzIGZhaWxlZCB0byByYWlzZSBJbXBvcnRFcnJvciIpCiAKZGlmZiAtLWdpdCBhL0xpYi91cmxsaWIvZXJyb3IucHkgYi9MaWIvdXJsbGliL2Vycm9yLnB5CmluZGV4IDQwYWRkNDEuLmMxZGZjNDAgMTAwNjQ0Ci0tLSBhL0xpYi91cmxsaWIvZXJyb3IucHkKKysrIGIvTGliL3VybGxpYi9lcnJvci5weQpAQCAtMTMsNiArMTMsOSBAQAogCiBpbXBvcnQgdXJsbGliLnJlc3BvbnNlCiAKK19fYWxsX18gPSBbJ1VSTEVycm9yJywgJ0hUVFBFcnJvcicsICdDb250ZW50VG9vU2hvcnRFcnJvciddCisKKwogIyBkbyB0aGVzZSBlcnJvciBjbGFzc2VzIG1ha2Ugc2Vuc2U/CiAjIG1ha2Ugc3VyZSBhbGwgb2YgdGhlIElPRXJyb3Igc3R1ZmYgaXMgb3ZlcnJpZGRlbi4gIHdlIGp1c3Qgd2FudCB0byBiZQogIyBzdWJ0eXBlcy4KZGlmZiAtLWdpdCBhL0xpYi91cmxsaWIvcmVxdWVzdC5weSBiL0xpYi91cmxsaWIvcmVxdWVzdC5weQppbmRleCA5NGI3MTNlLi45MGRmY2ZmIDEwMDY0NAotLS0gYS9MaWIvdXJsbGliL3JlcXVlc3QucHkKKysrIGIvTGliL3VybGxpYi9yZXF1ZXN0LnB5CkBAIC04OSw3ICs4OSw2IEBACiBpbXBvcnQgaW8KIGltcG9ydCBvcwogaW1wb3J0IHBvc2l4cGF0aAotaW1wb3J0IHJhbmRvbQogaW1wb3J0IHJlCiBpbXBvcnQgc29ja2V0CiBpbXBvcnQgc3lzCkBAIC0xMTEsNiArMTEwLDIyIEBACiBlbHNlOgogICAgIF9oYXZlX3NzbCA9IFRydWUKIAorX19hbGxfXyA9IFsKKyAgICAjIENsYXNzZXMKKyAgICAnUmVxdWVzdCcsICdPcGVuZXJEaXJlY3RvcicsICdCYXNlSGFuZGxlcicsICdIVFRQRGVmYXVsdEVycm9ySGFuZGxlcicsCisgICAgJ0hUVFBSZWRpcmVjdEhhbmRsZXInLCAnSFRUUENvb2tpZVByb2Nlc3NvcicsICdQcm94eUhhbmRsZXInLAorICAgICdIVFRQUGFzc3dvcmRNZ3InLCAnSFRUUFBhc3N3b3JkTWdyV2l0aERlZmF1bHRSZWFsbScsCisgICAgJ0Fic3RyYWN0QmFzaWNBdXRoSGFuZGxlcicsICdIVFRQQmFzaWNBdXRoSGFuZGxlcicsICdQcm94eUJhc2ljQXV0aEhhbmRsZXInLAorICAgICdBYnN0cmFjdERpZ2VzdEF1dGhIYW5kbGVyJywgJ0hUVFBEaWdlc3RBdXRoSGFuZGxlcicsICdQcm94eURpZ2VzdEF1dGhIYW5kbGVyJywKKyAgICAnSFRUUEhhbmRsZXInLCAnRmlsZUhhbmRsZXInLCAnRlRQSGFuZGxlcicsICdDYWNoZUZUUEhhbmRsZXInLAorICAgICdVbmtub3duSGFuZGxlcicsICdIVFRQRXJyb3JQcm9jZXNzb3InLAorICAgICMgRnVuY3Rpb25zCisgICAgJ3VybG9wZW4nLCAnaW5zdGFsbF9vcGVuZXInLCAnYnVpbGRfb3BlbmVyJywKKyAgICAncGF0aG5hbWUydXJsJywgJ3VybDJwYXRobmFtZScsICdnZXRwcm94aWVzJywKKyAgICAjIExlZ2FjeSBpbnRlcmZhY2UKKyAgICAndXJscmV0cmlldmUnLCAndXJsY2xlYW51cCcsICdVUkxvcGVuZXInLCAnRmFuY3lVUkxvcGVuZXInLAorXQorCiAjIHVzZWQgaW4gVXNlci1BZ2VudCBoZWFkZXIgc2VudAogX192ZXJzaW9uX18gPSBzeXMudmVyc2lvbls6M10KIApAQCAtMTc3LDcgKzE5Miw4IEBACiBjbGFzcyBSZXF1ZXN0OgogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHVybCwgZGF0YT1Ob25lLCBoZWFkZXJzPXt9LAotICAgICAgICAgICAgICAgICBvcmlnaW5fcmVxX2hvc3Q9Tm9uZSwgdW52ZXJpZmlhYmxlPUZhbHNlKToKKyAgICAgICAgICAgICAgICAgb3JpZ2luX3JlcV9ob3N0PU5vbmUsIHVudmVyaWZpYWJsZT1GYWxzZSwKKyAgICAgICAgICAgICAgICAgbWV0aG9kPU5vbmUpOgogICAgICAgICAjIHVud3JhcCgnPFVSTDp0eXBlOi8vaG9zdC9wYXRoPicpIC0tPiAndHlwZTovL2hvc3QvcGF0aCcKICAgICAgICAgc2VsZi5mdWxsX3VybCA9IHVud3JhcCh1cmwpCiAgICAgICAgIHNlbGYuZnVsbF91cmwsIHNlbGYuZnJhZ21lbnQgPSBzcGxpdHRhZyhzZWxmLmZ1bGxfdXJsKQpAQCAtMTkxLDYgKzIwNyw3IEBACiAgICAgICAgICAgICBvcmlnaW5fcmVxX2hvc3QgPSByZXF1ZXN0X2hvc3Qoc2VsZikKICAgICAgICAgc2VsZi5vcmlnaW5fcmVxX2hvc3QgPSBvcmlnaW5fcmVxX2hvc3QKICAgICAgICAgc2VsZi51bnZlcmlmaWFibGUgPSB1bnZlcmlmaWFibGUKKyAgICAgICAgc2VsZi5tZXRob2QgPSBtZXRob2QKICAgICAgICAgc2VsZi5fcGFyc2UoKQogCiAgICAgZGVmIF9wYXJzZShzZWxmKToKQEAgLTIwMiw3ICsyMTksMTAgQEAKICAgICAgICAgICAgIHNlbGYuaG9zdCA9IHVucXVvdGUoc2VsZi5ob3N0KQogCiAgICAgZGVmIGdldF9tZXRob2Qoc2VsZik6Ci0gICAgICAgIGlmIHNlbGYuZGF0YSBpcyBub3QgTm9uZToKKyAgICAgICAgIiIiUmV0dXJuIGEgc3RyaW5nIGluZGljYXRpbmcgdGhlIEhUVFAgcmVxdWVzdCBtZXRob2QuIiIiCisgICAgICAgIGlmIHNlbGYubWV0aG9kIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgcmV0dXJuIHNlbGYubWV0aG9kCisgICAgICAgIGVsaWYgc2VsZi5kYXRhIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgcmV0dXJuICJQT1NUIgogICAgICAgICBlbHNlOgogICAgICAgICAgICAgcmV0dXJuICJHRVQiCkBAIC04MjQsMTQgKzg0NCwyMCBAQAogICAgICAgICAgICAgc2VsZi5yZXRyaWVkICs9IDEKIAogICAgICAgICBpZiBhdXRocmVxOgotICAgICAgICAgICAgbW8gPSBBYnN0cmFjdEJhc2ljQXV0aEhhbmRsZXIucnguc2VhcmNoKGF1dGhyZXEpCi0gICAgICAgICAgICBpZiBtbzoKLSAgICAgICAgICAgICAgICBzY2hlbWUsIHF1b3RlLCByZWFsbSA9IG1vLmdyb3VwcygpCi0gICAgICAgICAgICAgICAgaWYgc2NoZW1lLmxvd2VyKCkgPT0gJ2Jhc2ljJzoKLSAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UgPSBzZWxmLnJldHJ5X2h0dHBfYmFzaWNfYXV0aChob3N0LCByZXEsIHJlYWxtKQotICAgICAgICAgICAgICAgICAgICBpZiByZXNwb25zZSBhbmQgcmVzcG9uc2UuY29kZSAhPSA0MDE6Ci0gICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnJldHJpZWQgPSAwCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZQorICAgICAgICAgICAgc2NoZW1lID0gYXV0aHJlcS5zcGxpdCgpWzBdCisgICAgICAgICAgICBpZiBzY2hlbWUubG93ZXIoKSAhPSAnYmFzaWMnOgorICAgICAgICAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3IoIkFic3RyYWN0QmFzaWNBdXRoSGFuZGxlciBkb2VzIG5vdCIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgc3VwcG9ydCB0aGUgZm9sbG93aW5nIHNjaGVtZTogJyVzJyIgJQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZW1lKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBtbyA9IEFic3RyYWN0QmFzaWNBdXRoSGFuZGxlci5yeC5zZWFyY2goYXV0aHJlcSkKKyAgICAgICAgICAgICAgICBpZiBtbzoKKyAgICAgICAgICAgICAgICAgICAgc2NoZW1lLCBxdW90ZSwgcmVhbG0gPSBtby5ncm91cHMoKQorICAgICAgICAgICAgICAgICAgICBpZiBzY2hlbWUubG93ZXIoKSA9PSAnYmFzaWMnOgorICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2UgPSBzZWxmLnJldHJ5X2h0dHBfYmFzaWNfYXV0aChob3N0LCByZXEsIHJlYWxtKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgcmVzcG9uc2UgYW5kIHJlc3BvbnNlLmNvZGUgIT0gNDAxOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYucmV0cmllZCA9IDAKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZQogCiAgICAgZGVmIHJldHJ5X2h0dHBfYmFzaWNfYXV0aChzZWxmLCBob3N0LCByZXEsIHJlYWxtKToKICAgICAgICAgdXNlciwgcHcgPSBzZWxmLnBhc3N3ZC5maW5kX3VzZXJfcGFzc3dvcmQocmVhbG0sIGhvc3QpCkBAIC04NzQsOSArOTAwLDkgQEAKICAgICAgICAgcmV0dXJuIHJlc3BvbnNlCiAKIAotZGVmIHJhbmRvbWJ5dGVzKG4pOgotICAgICIiIlJldHVybiBuIHJhbmRvbSBieXRlcy4iIiIKLSAgICByZXR1cm4gb3MudXJhbmRvbShuKQorIyBSZXR1cm4gbiByYW5kb20gYnl0ZXMuCitfcmFuZG9tYnl0ZXMgPSBvcy51cmFuZG9tCisKIAogY2xhc3MgQWJzdHJhY3REaWdlc3RBdXRoSGFuZGxlcjoKICAgICAjIERpZ2VzdCBhdXRoZW50aWNhdGlvbiBpcyBzcGVjaWZpZWQgaW4gUkZDIDI2MTcuCkBAIC05MTcsNiArOTQzLDkgQEAKICAgICAgICAgICAgIHNjaGVtZSA9IGF1dGhyZXEuc3BsaXQoKVswXQogICAgICAgICAgICAgaWYgc2NoZW1lLmxvd2VyKCkgPT0gJ2RpZ2VzdCc6CiAgICAgICAgICAgICAgICAgcmV0dXJuIHNlbGYucmV0cnlfaHR0cF9kaWdlc3RfYXV0aChyZXEsIGF1dGhyZXEpCisgICAgICAgICAgICBlbGlmIHNjaGVtZS5sb3dlcigpICE9ICdiYXNpYyc6CisgICAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigiQWJzdHJhY3REaWdlc3RBdXRoSGFuZGxlciBkb2VzIG5vdCBzdXBwb3J0IgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiB0aGUgZm9sbG93aW5nIHNjaGVtZTogJyVzJyIgJSBzY2hlbWUpCiAKICAgICBkZWYgcmV0cnlfaHR0cF9kaWdlc3RfYXV0aChzZWxmLCByZXEsIGF1dGgpOgogICAgICAgICB0b2tlbiwgY2hhbGxlbmdlID0gYXV0aC5zcGxpdCgnICcsIDEpCkBAIC05MzcsNyArOTY2LDcgQEAKICAgICAgICAgIyBhdXRoZW50aWNhdGlvbiwgYW5kIHRvIHByb3ZpZGUgc29tZSBtZXNzYWdlIGludGVncml0eSBwcm90ZWN0aW9uLgogICAgICAgICAjIFRoaXMgaXNuJ3QgYSBmYWJ1bG91cyBlZmZvcnQsIGJ1dCBpdCdzIHByb2JhYmx5IEdvb2QgRW5vdWdoLgogICAgICAgICBzID0gIiVzOiVzOiVzOiIgJSAoc2VsZi5ub25jZV9jb3VudCwgbm9uY2UsIHRpbWUuY3RpbWUoKSkKLSAgICAgICAgYiA9IHMuZW5jb2RlKCJhc2NpaSIpICsgcmFuZG9tYnl0ZXMoOCkKKyAgICAgICAgYiA9IHMuZW5jb2RlKCJhc2NpaSIpICsgX3JhbmRvbWJ5dGVzKDgpCiAgICAgICAgIGRpZyA9IGhhc2hsaWIuc2hhMShiKS5oZXhkaWdlc3QoKQogICAgICAgICByZXR1cm4gZGlnWzoxNl0KIApAQCAtMTE1Nyw3ICsxMTg2LDYgQEAKICAgICBodHRwX3JlcXVlc3QgPSBBYnN0cmFjdEhUVFBIYW5kbGVyLmRvX3JlcXVlc3RfCiAKIGlmIGhhc2F0dHIoaHR0cC5jbGllbnQsICdIVFRQU0Nvbm5lY3Rpb24nKToKLSAgICBpbXBvcnQgc3NsCiAKICAgICBjbGFzcyBIVFRQU0hhbmRsZXIoQWJzdHJhY3RIVFRQSGFuZGxlcik6CiAKQEAgLTExNzIsNiArMTIwMCw4IEBACiAKICAgICAgICAgaHR0cHNfcmVxdWVzdCA9IEFic3RyYWN0SFRUUEhhbmRsZXIuZG9fcmVxdWVzdF8KIAorICAgIF9fYWxsX18uYXBwZW5kKCdIVFRQU0hhbmRsZXInKQorCiBjbGFzcyBIVFRQQ29va2llUHJvY2Vzc29yKEJhc2VIYW5kbGVyKToKICAgICBkZWYgX19pbml0X18oc2VsZiwgY29va2llamFyPU5vbmUpOgogICAgICAgICBpbXBvcnQgaHR0cC5jb29raWVqYXIKQEAgLTE1MzcsNiArMTU2Nyw4IEBACiAgICAgICAgICAgICAgICAgcmV0dXJuIGdldGF0dHIoc2VsZiwgbmFtZSkodXJsKQogICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICByZXR1cm4gZ2V0YXR0cihzZWxmLCBuYW1lKSh1cmwsIGRhdGEpCisgICAgICAgIGV4Y2VwdCBIVFRQRXJyb3I6CisgICAgICAgICAgICByYWlzZQogICAgICAgICBleGNlcHQgc29ja2V0LmVycm9yIGFzIG1zZzoKICAgICAgICAgICAgIHJhaXNlIElPRXJyb3IoJ3NvY2tldCBlcnJvcicsIG1zZykud2l0aF90cmFjZWJhY2soc3lzLmV4Y19pbmZvKClbMl0pCiAKQEAgLTE3NTYsOCArMTc4OCw4IEBACiAKICAgICBkZWYgb3Blbl9sb2NhbF9maWxlKHNlbGYsIHVybCk6CiAgICAgICAgICIiIlVzZSBsb2NhbCBmaWxlLiIiIgotICAgICAgICBpbXBvcnQgbWltZXR5cGVzLCBlbWFpbC51dGlscwotICAgICAgICBmcm9tIGlvIGltcG9ydCBTdHJpbmdJTworICAgICAgICBpbXBvcnQgZW1haWwudXRpbHMKKyAgICAgICAgaW1wb3J0IG1pbWV0eXBlcwogICAgICAgICBob3N0LCBmaWxlID0gc3BsaXRob3N0KHVybCkKICAgICAgICAgbG9jYWxuYW1lID0gdXJsMnBhdGhuYW1lKGZpbGUpCiAgICAgICAgIHRyeToKQEAgLTE3OTEsNyArMTgyMyw2IEBACiAgICAgICAgIGlmIG5vdCBpc2luc3RhbmNlKHVybCwgc3RyKToKICAgICAgICAgICAgIHJhaXNlIFVSTEVycm9yKCdmdHAgZXJyb3InLCAncHJveHkgc3VwcG9ydCBmb3IgZnRwIHByb3RvY29sIGN1cnJlbnRseSBub3QgaW1wbGVtZW50ZWQnKQogICAgICAgICBpbXBvcnQgbWltZXR5cGVzCi0gICAgICAgIGZyb20gaW8gaW1wb3J0IFN0cmluZ0lPCiAgICAgICAgIGhvc3QsIHBhdGggPSBzcGxpdGhvc3QodXJsKQogICAgICAgICBpZiBub3QgaG9zdDogcmFpc2UgVVJMRXJyb3IoJ2Z0cCBlcnJvcicsICdubyBob3N0IGdpdmVuJykKICAgICAgICAgaG9zdCwgcG9ydCA9IHNwbGl0cG9ydChob3N0KQpAQCAtMTg3NCw3ICsxOTA1LDcgQEAKICAgICAgICAgbXNnLmFwcGVuZCgnQ29udGVudC10eXBlOiAlcycgJSB0eXBlKQogICAgICAgICBpZiBlbmNvZGluZyA9PSAnYmFzZTY0JzoKICAgICAgICAgICAgICMgWFhYIGlzIHRoaXMgZW5jb2RpbmcvZGVjb2Rpbmcgb2s/Ci0gICAgICAgICAgICBkYXRhID0gYmFzZTY0LmRlY29kZWJ5dGVzKGRhdGEuZW5jb2RlKCdhc2NpaScpKS5kZWNvZGUoJ2xhdGluMScpCisgICAgICAgICAgICBkYXRhID0gYmFzZTY0LmRlY29kZWJ5dGVzKGRhdGEuZW5jb2RlKCdhc2NpaScpKS5kZWNvZGUoJ2xhdGluLTEnKQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgZGF0YSA9IHVucXVvdGUoZGF0YSkKICAgICAgICAgbXNnLmFwcGVuZCgnQ29udGVudC1MZW5ndGg6ICVkJyAlIGxlbihkYXRhKSkKQEAgLTE5NjcsNyArMTk5OCw2IEBACiAgICAgICAgICAgICBVUkxvcGVuZXIuaHR0cF9lcnJvcl9kZWZhdWx0KHNlbGYsIHVybCwgZnAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycmNvZGUsIGVycm1zZywgaGVhZGVycykKICAgICAgICAgc3R1ZmYgPSBoZWFkZXJzWyd3d3ctYXV0aGVudGljYXRlJ10KLSAgICAgICAgaW1wb3J0IHJlCiAgICAgICAgIG1hdGNoID0gcmUubWF0Y2goJ1sgXHRdKihbXiBcdF0rKVsgXHRdK3JlYWxtPSIoW14iXSopIicsIHN0dWZmKQogICAgICAgICBpZiBub3QgbWF0Y2g6CiAgICAgICAgICAgICBVUkxvcGVuZXIuaHR0cF9lcnJvcl9kZWZhdWx0KHNlbGYsIHVybCwgZnAsCkBAIC0xOTkzLDcgKzIwMjMsNiBAQAogICAgICAgICAgICAgVVJMb3BlbmVyLmh0dHBfZXJyb3JfZGVmYXVsdChzZWxmLCB1cmwsIGZwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJjb2RlLCBlcnJtc2csIGhlYWRlcnMpCiAgICAgICAgIHN0dWZmID0gaGVhZGVyc1sncHJveHktYXV0aGVudGljYXRlJ10KLSAgICAgICAgaW1wb3J0IHJlCiAgICAgICAgIG1hdGNoID0gcmUubWF0Y2goJ1sgXHRdKihbXiBcdF0rKVsgXHRdK3JlYWxtPSIoW14iXSopIicsIHN0dWZmKQogICAgICAgICBpZiBub3QgbWF0Y2g6CiAgICAgICAgICAgICBVUkxvcGVuZXIuaHR0cF9lcnJvcl9kZWZhdWx0KHNlbGYsIHVybCwgZnAsCkBAIC0yMjg1LDggKzIzMTQsNiBAQAogICAgICAgJ2V4Y2VwdGlvbnMnOiBbJ2Zvby5iYXInLCAnKi5iYXIuY29tJywgJzEyNy4wLjAuMScsICcxMC4xJywgJzEwLjAvMTYnXQogICAgIH0KICAgICAiIiIKLSAgICBpbXBvcnQgcmUKLSAgICBpbXBvcnQgc29ja2V0CiAgICAgZnJvbSBmbm1hdGNoIGltcG9ydCBmbm1hdGNoCiAKICAgICBob3N0b25seSwgcG9ydCA9IHNwbGl0cG9ydChob3N0KQpAQCAtMjM4OSw3ICsyNDE2LDYgQEAKICAgICAgICAgICAgICAgICAgICAgZm9yIHAgaW4gcHJveHlTZXJ2ZXIuc3BsaXQoJzsnKToKICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RvY29sLCBhZGRyZXNzID0gcC5zcGxpdCgnPScsIDEpCiAgICAgICAgICAgICAgICAgICAgICAgICAjIFNlZSBpZiBhZGRyZXNzIGhhcyBhIHR5cGU6Ly8gcHJlZml4Ci0gICAgICAgICAgICAgICAgICAgICAgICBpbXBvcnQgcmUKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCByZS5tYXRjaCgnXihbXi86XSspOi8vJywgYWRkcmVzcyk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkcmVzcyA9ICclczovLyVzJyAlIChwcm90b2NvbCwgYWRkcmVzcykKICAgICAgICAgICAgICAgICAgICAgICAgIHByb3hpZXNbcHJvdG9jb2xdID0gYWRkcmVzcwpAQCAtMjQyMSw3ICsyNDQ3LDYgQEAKICAgICBkZWYgcHJveHlfYnlwYXNzX3JlZ2lzdHJ5KGhvc3QpOgogICAgICAgICB0cnk6CiAgICAgICAgICAgICBpbXBvcnQgd2lucmVnCi0gICAgICAgICAgICBpbXBvcnQgcmUKICAgICAgICAgZXhjZXB0IEltcG9ydEVycm9yOgogICAgICAgICAgICAgIyBTdGQgbW9kdWxlcywgc28gc2hvdWxkIGJlIGFyb3VuZCAtIGJ1dCB5b3UgbmV2ZXIga25vdyEKICAgICAgICAgICAgIHJldHVybiAwCmRpZmYgLS1naXQgYS9MaWIvdXJsbGliL3Jlc3BvbnNlLnB5IGIvTGliL3VybGxpYi9yZXNwb25zZS5weQppbmRleCA4YzZkY2NhLi5iNDNlNTc1IDEwMDY0NAotLS0gYS9MaWIvdXJsbGliL3Jlc3BvbnNlLnB5CisrKyBiL0xpYi91cmxsaWIvcmVzcG9uc2UucHkKQEAgLTM3LDEyICszNywxNSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQoc2VsZiksIHNlbGYuZnApCiAKICAgICBkZWYgY2xvc2Uoc2VsZik6CisgICAgICAgIGlmIHNlbGYuZnA6CisgICAgICAgICAgICBzZWxmLmZwLmNsb3NlKCkKKyAgICAgICAgc2VsZi5mcCA9IE5vbmUKICAgICAgICAgc2VsZi5yZWFkID0gTm9uZQogICAgICAgICBzZWxmLnJlYWRsaW5lID0gTm9uZQogICAgICAgICBzZWxmLnJlYWRsaW5lcyA9IE5vbmUKICAgICAgICAgc2VsZi5maWxlbm8gPSBOb25lCi0gICAgICAgIGlmIHNlbGYuZnA6IHNlbGYuZnAuY2xvc2UoKQotICAgICAgICBzZWxmLmZwID0gTm9uZQorICAgICAgICBzZWxmLl9faXRlcl9fID0gTm9uZQorICAgICAgICBzZWxmLl9fbmV4dF9fID0gTm9uZQogCiAgICAgZGVmIF9fZW50ZXJfXyhzZWxmKToKICAgICAgICAgaWYgc2VsZi5mcCBpcyBOb25lOgpkaWZmIC0tZ2l0IGEvTGliL3dlYmJyb3dzZXIucHkgYi9MaWIvd2ViYnJvd3Nlci5weQppbmRleCA2Zjk2N2I2Li5kMDM2MzU1IDEwMDY0NAotLS0gYS9MaWIvd2ViYnJvd3Nlci5weQorKysgYi9MaWIvd2ViYnJvd3Nlci5weQpAQCAtMjk5LDYgKzI5OSwxOCBAQAogICAgIGJhY2tncm91bmQgPSBUcnVlCiAKIAorY2xhc3MgQ2hyb21lKFVuaXhCcm93c2VyKToKKyAgICAiTGF1bmNoZXIgY2xhc3MgZm9yIEdvb2dsZSBDaHJvbWUgYnJvd3Nlci4iCisKKyAgICByZW1vdGVfYXJncyA9IFsnJWFjdGlvbicsICclcyddCisgICAgcmVtb3RlX2FjdGlvbiA9ICIiCisgICAgcmVtb3RlX2FjdGlvbl9uZXd3aW4gPSAiLS1uZXctd2luZG93IgorICAgIHJlbW90ZV9hY3Rpb25fbmV3dGFiID0gIiIKKyAgICBiYWNrZ3JvdW5kID0gVHJ1ZQorCitDaHJvbWl1bSA9IENocm9tZQorCisKIGNsYXNzIE9wZXJhKFVuaXhCcm93c2VyKToKICAgICAiTGF1bmNoZXIgY2xhc3MgZm9yIE9wZXJhIGJyb3dzZXIuIgogCkBAIC00NjYsNiArNDc4LDExIEBACiAgICAgaWYgX2lzY29tbWFuZCgic2tpcHN0b25lIik6CiAgICAgICAgIHJlZ2lzdGVyKCJza2lwc3RvbmUiLCBOb25lLCBCYWNrZ3JvdW5kQnJvd3Nlcigic2tpcHN0b25lIikpCiAKKyAgICAjIEdvb2dsZSBDaHJvbWUvQ2hyb21pdW0gYnJvd3NlcnMKKyAgICBmb3IgYnJvd3NlciBpbiAoImdvb2dsZS1jaHJvbWUiLCAiY2hyb21lIiwgImNocm9taXVtIiwgImNocm9taXVtLWJyb3dzZXIiKToKKyAgICAgICAgaWYgX2lzY29tbWFuZChicm93c2VyKToKKyAgICAgICAgICAgIHJlZ2lzdGVyKGJyb3dzZXIsIE5vbmUsIENocm9tZShicm93c2VyKSkKKwogICAgICMgT3BlcmEsIHF1aXRlIHBvcHVsYXIKICAgICBpZiBfaXNjb21tYW5kKCJvcGVyYSIpOgogICAgICAgICByZWdpc3Rlcigib3BlcmEiLCBOb25lLCBPcGVyYSgib3BlcmEiKSkKZGlmZiAtLWdpdCBhL0xpYi93c2dpcmVmLmVnZy1pbmZvIGIvTGliL3dzZ2lyZWYuZWdnLWluZm8KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGMwYjc4OTMuLjAwMDAwMDAKLS0tIGEvTGliL3dzZ2lyZWYuZWdnLWluZm8KKysrIC9kZXYvbnVsbApAQCAtMSw4ICswLDAgQEAKLU1ldGFkYXRhLVZlcnNpb246IDEuMAotTmFtZTogd3NnaXJlZgotVmVyc2lvbjogMC4xLjIKLVN1bW1hcnk6IFdTR0kgKFBFUCAzMzMpIFJlZmVyZW5jZSBMaWJyYXJ5Ci1BdXRob3I6IFBoaWxsaXAgSi4gRWJ5Ci1BdXRob3ItZW1haWw6IHdlYi1zaWdAcHl0aG9uLm9yZwotTGljZW5zZTogUFNGIG9yIFpQTAotUGxhdGZvcm06IFVOS05PV04KZGlmZiAtLWdpdCBhL0xpYi94ZHJsaWIucHkgYi9MaWIveGRybGliLnB5CmluZGV4IDRlNDg2NzcuLjg2ZTYyNGYgMTAwNjQ0Ci0tLSBhL0xpYi94ZHJsaWIucHkKKysrIGIvTGliL3hkcmxpYi5weQpAQCAtMTQxLDExICsxNDEsNyBAQAogICAgICAgICBkYXRhID0gc2VsZi5fX2J1ZltpOmpdCiAgICAgICAgIGlmIGxlbihkYXRhKSA8IDQ6CiAgICAgICAgICAgICByYWlzZSBFT0ZFcnJvcgotICAgICAgICB4ID0gc3RydWN0LnVucGFjaygnPkwnLCBkYXRhKVswXQotICAgICAgICB0cnk6Ci0gICAgICAgICAgICByZXR1cm4gaW50KHgpCi0gICAgICAgIGV4Y2VwdCBPdmVyZmxvd0Vycm9yOgotICAgICAgICAgICAgcmV0dXJuIHgKKyAgICAgICAgcmV0dXJuIHN0cnVjdC51bnBhY2soJz5MJywgZGF0YSlbMF0KIAogICAgIGRlZiB1bnBhY2tfaW50KHNlbGYpOgogICAgICAgICBpID0gc2VsZi5fX3BvcwpkaWZmIC0tZ2l0IGEvTGliL3htbC9kb20vcHVsbGRvbS5weSBiL0xpYi94bWwvZG9tL3B1bGxkb20ucHkKaW5kZXggZDVhYzhiMi4uNDM1MDRmNyAxMDA2NDQKLS0tIGEvTGliL3htbC9kb20vcHVsbGRvbS5weQorKysgYi9MaWIveG1sL2RvbS9wdWxsZG9tLnB5CkBAIC0xLDYgKzEsNSBAQAogaW1wb3J0IHhtbC5zYXgKIGltcG9ydCB4bWwuc2F4LmhhbmRsZXIKLWltcG9ydCB0eXBlcwogCiBTVEFSVF9FTEVNRU5UID0gIlNUQVJUX0VMRU1FTlQiCiBFTkRfRUxFTUVOVCA9ICJFTkRfRUxFTUVOVCIKQEAgLTMzNCwxMCArMzMzLDcgQEAKICAgICByZXR1cm4gRE9NRXZlbnRTdHJlYW0oc3RyZWFtLCBwYXJzZXIsIGJ1ZnNpemUpCiAKIGRlZiBwYXJzZVN0cmluZyhzdHJpbmcsIHBhcnNlcj1Ob25lKToKLSAgICB0cnk6Ci0gICAgICAgIGZyb20gaW8gaW1wb3J0IFN0cmluZ0lPCi0gICAgZXhjZXB0IEltcG9ydEVycm9yOgotICAgICAgICBmcm9tIGlvIGltcG9ydCBTdHJpbmdJTworICAgIGZyb20gaW8gaW1wb3J0IFN0cmluZ0lPCiAKICAgICBidWZzaXplID0gbGVuKHN0cmluZykKICAgICBidWYgPSBTdHJpbmdJTyhzdHJpbmcpCmRpZmYgLS1naXQgYS9MaWIveG1sL3BhcnNlcnMvZXhwYXQucHkgYi9MaWIveG1sL3BhcnNlcnMvZXhwYXQucHkKaW5kZXggYTgwNWI4Mi4uYmNiZTlmYiAxMDA2NDQKLS0tIGEvTGliL3htbC9wYXJzZXJzL2V4cGF0LnB5CisrKyBiL0xpYi94bWwvcGFyc2Vycy9leHBhdC5weQpAQCAtMSw2ICsxLDQgQEAKICIiIkludGVyZmFjZSB0byB0aGUgRXhwYXQgbm9uLXZhbGlkYXRpbmcgWE1MIHBhcnNlci4iIiIKLV9fdmVyc2lvbl9fID0gJyRSZXZpc2lvbiQnCi0KIGltcG9ydCBzeXMKIAogZnJvbSBweWV4cGF0IGltcG9ydCAqCmRpZmYgLS1naXQgYS9MaWIveG1scnBjL2NsaWVudC5weSBiL0xpYi94bWxycGMvY2xpZW50LnB5CmluZGV4IDk3ZDVhYWMuLjU5Zjc1NDYgMTAwNjQ0Ci0tLSBhL0xpYi94bWxycGMvY2xpZW50LnB5CisrKyBiL0xpYi94bWxycGMvY2xpZW50LnB5CkBAIC0xMjgsNyArMTI4LDkgQEAKICIiIgogCiBpbXBvcnQgYmFzZTY0CitpbXBvcnQgc3lzCiBpbXBvcnQgdGltZQorZnJvbSBkYXRldGltZSBpbXBvcnQgZGF0ZXRpbWUKIGltcG9ydCBodHRwLmNsaWVudAogZnJvbSB4bWwucGFyc2VycyBpbXBvcnQgZXhwYXQKIGltcG9ydCBzb2NrZXQKQEAgLTE0MiwxNyArMTQ0LDEzIEBACiAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAjIEludGVybmFsIHN0dWZmCiAKLXRyeToKLSAgICBpbXBvcnQgZGF0ZXRpbWUKLWV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICBkYXRldGltZSA9IE5vbmUKLQogZGVmIGVzY2FwZShzKToKICAgICBzID0gcy5yZXBsYWNlKCImIiwgIiZhbXA7IikKICAgICBzID0gcy5yZXBsYWNlKCI8IiwgIiZsdDsiKQogICAgIHJldHVybiBzLnJlcGxhY2UoIj4iLCAiJmd0OyIsKQogCi1fX3ZlcnNpb25fXyA9ICIxLjAuMSIKKyMgdXNlZCBpbiBVc2VyLUFnZW50IGhlYWRlciBzZW50CitfX3ZlcnNpb25fXyA9IHN5cy52ZXJzaW9uWzozXQogCiAjIHhtbHJwYyBpbnRlZ2VyIGxpbWl0cwogTUFYSU5UID0gIDIqKjMxLTEKQEAgLTI1MiwyMSArMjUwLDMzIEBACiAjIFdyYXBwZXIgZm9yIFhNTC1SUEMgRGF0ZVRpbWUgdmFsdWVzLiAgVGhpcyBjb252ZXJ0cyBhIHRpbWUgdmFsdWUgdG8KICMgdGhlIGZvcm1hdCB1c2VkIGJ5IFhNTC1SUEMuCiAjIDxwPgotIyBUaGUgdmFsdWUgY2FuIGJlIGdpdmVuIGFzIGEgc3RyaW5nIGluIHRoZSBmb3JtYXQKLSMgInl5eXltbWRkVGhoOm1tOnNzIiwgYXMgYSA5LWl0ZW0gdGltZSB0dXBsZSAoYXMgcmV0dXJuZWQgYnkKKyMgVGhlIHZhbHVlIGNhbiBiZSBnaXZlbiBhcyBhIGRhdGV0aW1lIG9iamVjdCwgYXMgYSBzdHJpbmcgaW4gdGhlCisjIGZvcm1hdCAieXl5eW1tZGRUaGg6bW06c3MiLCBhcyBhIDktaXRlbSB0aW1lIHR1cGxlIChhcyByZXR1cm5lZCBieQogIyB0aW1lLmxvY2FsdGltZSgpKSwgb3IgYW4gaW50ZWdlciB2YWx1ZSAoYXMgcmV0dXJuZWQgYnkgdGltZS50aW1lKCkpLgogIyBUaGUgd3JhcHBlciB1c2VzIHRpbWUubG9jYWx0aW1lKCkgdG8gY29udmVydCBhbiBpbnRlZ2VyIHRvIGEgdGltZQogIyB0dXBsZS4KICMKLSMgQHBhcmFtIHZhbHVlIFRoZSB0aW1lLCBnaXZlbiBhcyBhbiBJU08gODYwMSBzdHJpbmcsIGEgdGltZQotIyAgICAgICAgICAgICAgdHVwbGUsIG9yIGEgaW50ZWdlciB0aW1lIHZhbHVlLgorIyBAcGFyYW0gdmFsdWUgVGhlIHRpbWUsIGdpdmVuIGFzIGEgZGF0ZXRpbWUgb2JqZWN0LCBhbiBJU08gODYwMSBzdHJpbmcsCisjICAgICAgICAgICAgICBhIHRpbWUgdHVwbGUsIG9yIGFuIGludGVnZXIgdGltZSB2YWx1ZS4KKworCisjIElzc3VlICMxMzMwNTogZGlmZmVyZW50IGZvcm1hdCBjb2RlcyBhY3Jvc3MgcGxhdGZvcm1zCitfZGF5MCA9IGRhdGV0aW1lKDEsIDEsIDEpCitpZiBfZGF5MC5zdHJmdGltZSgnJVknKSA9PSAnMDAwMSc6ICAgICAgIyBNYWMgT1MgWAorICAgIGRlZiBfaXNvODYwMV9mb3JtYXQodmFsdWUpOgorICAgICAgICByZXR1cm4gdmFsdWUuc3RyZnRpbWUoIiVZJW0lZFQlSDolTTolUyIpCitlbGlmIF9kYXkwLnN0cmZ0aW1lKCclNFknKSA9PSAnMDAwMSc6ICAgIyBMaW51eAorICAgIGRlZiBfaXNvODYwMV9mb3JtYXQodmFsdWUpOgorICAgICAgICByZXR1cm4gdmFsdWUuc3RyZnRpbWUoIiU0WSVtJWRUJUg6JU06JVMiKQorZWxzZToKKyAgICBkZWYgX2lzbzg2MDFfZm9ybWF0KHZhbHVlKToKKyAgICAgICAgcmV0dXJuIHZhbHVlLnN0cmZ0aW1lKCIlWSVtJWRUJUg6JU06JVMiKS56ZmlsbCgxNykKK2RlbCBfZGF5MAorCiAKIGRlZiBfc3RyZnRpbWUodmFsdWUpOgotICAgIGlmIGRhdGV0aW1lOgotICAgICAgICBpZiBpc2luc3RhbmNlKHZhbHVlLCBkYXRldGltZS5kYXRldGltZSk6Ci0gICAgICAgICAgICByZXR1cm4gIiUwNGQlMDJkJTAyZFQlMDJkOiUwMmQ6JTAyZCIgJSAoCi0gICAgICAgICAgICAgICAgdmFsdWUueWVhciwgdmFsdWUubW9udGgsIHZhbHVlLmRheSwKLSAgICAgICAgICAgICAgICB2YWx1ZS5ob3VyLCB2YWx1ZS5taW51dGUsIHZhbHVlLnNlY29uZCkKKyAgICBpZiBpc2luc3RhbmNlKHZhbHVlLCBkYXRldGltZSk6CisgICAgICAgIHJldHVybiBfaXNvODYwMV9mb3JtYXQodmFsdWUpCiAKICAgICBpZiBub3QgaXNpbnN0YW5jZSh2YWx1ZSwgKHR1cGxlLCB0aW1lLnN0cnVjdF90aW1lKSk6CiAgICAgICAgIGlmIHZhbHVlID09IDA6CkBAIC0yOTEsOSArMzAxLDkgQEAKICAgICAgICAgaWYgaXNpbnN0YW5jZShvdGhlciwgRGF0ZVRpbWUpOgogICAgICAgICAgICAgcyA9IHNlbGYudmFsdWUKICAgICAgICAgICAgIG8gPSBvdGhlci52YWx1ZQotICAgICAgICBlbGlmIGRhdGV0aW1lIGFuZCBpc2luc3RhbmNlKG90aGVyLCBkYXRldGltZS5kYXRldGltZSk6CisgICAgICAgIGVsaWYgaXNpbnN0YW5jZShvdGhlciwgZGF0ZXRpbWUpOgogICAgICAgICAgICAgcyA9IHNlbGYudmFsdWUKLSAgICAgICAgICAgIG8gPSBvdGhlci5zdHJmdGltZSgiJVklbSVkVCVIOiVNOiVTIikKKyAgICAgICAgICAgIG8gPSBfaXNvODYwMV9mb3JtYXQob3RoZXIpCiAgICAgICAgIGVsaWYgaXNpbnN0YW5jZShvdGhlciwgc3RyKToKICAgICAgICAgICAgIHMgPSBzZWxmLnZhbHVlCiAgICAgICAgICAgICBvID0gb3RoZXIKQEAgLTM2MSw4ICszNzEsNyBAQAogICAgIHJldHVybiB2YWx1ZQogCiBkZWYgX2RhdGV0aW1lX3R5cGUoZGF0YSk6Ci0gICAgdCA9IHRpbWUuc3RycHRpbWUoZGF0YSwgIiVZJW0lZFQlSDolTTolUyIpCi0gICAgcmV0dXJuIGRhdGV0aW1lLmRhdGV0aW1lKCp0dXBsZSh0KVs6Nl0pCisgICAgcmV0dXJuIGRhdGV0aW1lLnN0cnB0aW1lKGRhdGEsICIlWSVtJWRUJUg6JU06JVMiKQogCiAjIwogIyBXcmFwcGVyIGZvciBiaW5hcnkgZGF0YS4gIFRoaXMgY2FuIGJlIHVzZWQgdG8gdHJhbnNwb3J0IGFueSBraW5kCkBAIC0zNzcsOCArMzg2LDggQEAKICAgICAgICAgaWYgZGF0YSBpcyBOb25lOgogICAgICAgICAgICAgZGF0YSA9IGIiIgogICAgICAgICBlbHNlOgotICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoZGF0YSwgYnl0ZXMpOgotICAgICAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcigiZXhwZWN0ZWQgYnl0ZXMsIG5vdCAlcyIgJQorICAgICAgICAgICAgaWYgbm90IGlzaW5zdGFuY2UoZGF0YSwgKGJ5dGVzLCBieXRlYXJyYXkpKToKKyAgICAgICAgICAgICAgICByYWlzZSBUeXBlRXJyb3IoImV4cGVjdGVkIGJ5dGVzIG9yIGJ5dGVhcnJheSwgbm90ICVzIiAlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEuX19jbGFzc19fLl9fbmFtZV9fKQogICAgICAgICAgICAgZGF0YSA9IGJ5dGVzKGRhdGEpICAjIE1ha2UgYSBjb3B5IG9mIHRoZSBieXRlcyEKICAgICAgICAgc2VsZi5kYXRhID0gZGF0YQpAQCAtNDA4LDcgKzQxNyw2IEBACiAgICAgICAgIG91dC53cml0ZSgiPHZhbHVlPjxiYXNlNjQ+XG4iKQogICAgICAgICBlbmNvZGVkID0gYmFzZTY0LmVuY29kZWJ5dGVzKHNlbGYuZGF0YSkKICAgICAgICAgb3V0LndyaXRlKGVuY29kZWQuZGVjb2RlKCdhc2NpaScpKQotICAgICAgICBvdXQud3JpdGUoJ1xuJykKICAgICAgICAgb3V0LndyaXRlKCI8L2Jhc2U2ND48L3ZhbHVlPlxuIikKIAogZGVmIF9iaW5hcnkoZGF0YSk6CkBAIC01MjIsMTUgKzUzMCw2IEBACiAgICAgICAgIHdyaXRlKCI8dmFsdWU+PG5pbC8+PC92YWx1ZT4iKQogICAgIGRpc3BhdGNoW3R5cGUoTm9uZSldID0gZHVtcF9uaWwKIAotICAgIGRlZiBkdW1wX2ludChzZWxmLCB2YWx1ZSwgd3JpdGUpOgotICAgICAgICAjIGluIGNhc2UgaW50cyBhcmUgPiAzMiBiaXRzCi0gICAgICAgIGlmIHZhbHVlID4gTUFYSU5UIG9yIHZhbHVlIDwgTUlOSU5UOgotICAgICAgICAgICAgcmFpc2UgT3ZlcmZsb3dFcnJvcigiaW50IGV4Y2VlZHMgWE1MLVJQQyBsaW1pdHMiKQotICAgICAgICB3cml0ZSgiPHZhbHVlPjxpbnQ+IikKLSAgICAgICAgd3JpdGUoc3RyKHZhbHVlKSkKLSAgICAgICAgd3JpdGUoIjwvaW50PjwvdmFsdWU+XG4iKQotICAgICNkaXNwYXRjaFtpbnRdID0gZHVtcF9pbnQKLQogICAgIGRlZiBkdW1wX2Jvb2woc2VsZiwgdmFsdWUsIHdyaXRlKToKICAgICAgICAgd3JpdGUoIjx2YWx1ZT48Ym9vbGVhbj4iKQogICAgICAgICB3cml0ZSh2YWx1ZSBhbmQgIjEiIG9yICIwIikKQEAgLTU0NSw2ICs1NDQsOSBAQAogICAgICAgICB3cml0ZSgiPC9pbnQ+PC92YWx1ZT5cbiIpCiAgICAgZGlzcGF0Y2hbaW50XSA9IGR1bXBfbG9uZwogCisgICAgIyBiYWNrd2FyZCBjb21wYXRpYmxlCisgICAgZHVtcF9pbnQgPSBkdW1wX2xvbmcKKwogICAgIGRlZiBkdW1wX2RvdWJsZShzZWxmLCB2YWx1ZSwgd3JpdGUpOgogICAgICAgICB3cml0ZSgiPHZhbHVlPjxkb3VibGU+IikKICAgICAgICAgd3JpdGUocmVwcih2YWx1ZSkpCkBAIC01NTcsNiArNTU5LDE0IEBACiAgICAgICAgIHdyaXRlKCI8L3N0cmluZz48L3ZhbHVlPlxuIikKICAgICBkaXNwYXRjaFtzdHJdID0gZHVtcF91bmljb2RlCiAKKyAgICBkZWYgZHVtcF9ieXRlcyhzZWxmLCB2YWx1ZSwgd3JpdGUpOgorICAgICAgICB3cml0ZSgiPHZhbHVlPjxiYXNlNjQ+XG4iKQorICAgICAgICBlbmNvZGVkID0gYmFzZTY0LmVuY29kZWJ5dGVzKHZhbHVlKQorICAgICAgICB3cml0ZShlbmNvZGVkLmRlY29kZSgnYXNjaWknKSkKKyAgICAgICAgd3JpdGUoIjwvYmFzZTY0PjwvdmFsdWU+XG4iKQorICAgIGRpc3BhdGNoW2J5dGVzXSA9IGR1bXBfYnl0ZXMKKyAgICBkaXNwYXRjaFtieXRlYXJyYXldID0gZHVtcF9ieXRlcworCiAgICAgZGVmIGR1bXBfYXJyYXkoc2VsZiwgdmFsdWUsIHdyaXRlKToKICAgICAgICAgaSA9IGlkKHZhbHVlKQogICAgICAgICBpZiBpIGluIHNlbGYubWVtbzoKQEAgLTU4OSwxMiArNTk5LDExIEBACiAgICAgICAgIGRlbCBzZWxmLm1lbW9baV0KICAgICBkaXNwYXRjaFtkaWN0XSA9IGR1bXBfc3RydWN0CiAKLSAgICBpZiBkYXRldGltZToKLSAgICAgICAgZGVmIGR1bXBfZGF0ZXRpbWUoc2VsZiwgdmFsdWUsIHdyaXRlKToKLSAgICAgICAgICAgIHdyaXRlKCI8dmFsdWU+PGRhdGVUaW1lLmlzbzg2MDE+IikKLSAgICAgICAgICAgIHdyaXRlKF9zdHJmdGltZSh2YWx1ZSkpCi0gICAgICAgICAgICB3cml0ZSgiPC9kYXRlVGltZS5pc284NjAxPjwvdmFsdWU+XG4iKQotICAgICAgICBkaXNwYXRjaFtkYXRldGltZS5kYXRldGltZV0gPSBkdW1wX2RhdGV0aW1lCisgICAgZGVmIGR1bXBfZGF0ZXRpbWUoc2VsZiwgdmFsdWUsIHdyaXRlKToKKyAgICAgICAgd3JpdGUoIjx2YWx1ZT48ZGF0ZVRpbWUuaXNvODYwMT4iKQorICAgICAgICB3cml0ZShfc3RyZnRpbWUodmFsdWUpKQorICAgICAgICB3cml0ZSgiPC9kYXRlVGltZS5pc284NjAxPjwvdmFsdWU+XG4iKQorICAgIGRpc3BhdGNoW2RhdGV0aW1lXSA9IGR1bXBfZGF0ZXRpbWUKIAogICAgIGRlZiBkdW1wX2luc3RhbmNlKHNlbGYsIHZhbHVlLCB3cml0ZSk6CiAgICAgICAgICMgY2hlY2sgZm9yIHNwZWNpYWwgd3JhcHBlcnMKQEAgLTYyOCw3ICs2MzcsNyBAQAogICAgICMgYW5kIGFnYWluLCBpZiB5b3UgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0J3MgZ29pbmcgb24gaW4gaGVyZSwKICAgICAjIHRoYXQncyBwZXJmZWN0bHkgb2suCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgdXNlX2RhdGV0aW1lPUZhbHNlKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgdXNlX2RhdGV0aW1lPUZhbHNlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAgICAgICAgIHNlbGYuX3R5cGUgPSBOb25lCiAgICAgICAgIHNlbGYuX3N0YWNrID0gW10KICAgICAgICAgc2VsZi5fbWFya3MgPSBbXQpAQCAtNjM2LDkgKzY0NSw4IEBACiAgICAgICAgIHNlbGYuX21ldGhvZG5hbWUgPSBOb25lCiAgICAgICAgIHNlbGYuX2VuY29kaW5nID0gInV0Zi04IgogICAgICAgICBzZWxmLmFwcGVuZCA9IHNlbGYuX3N0YWNrLmFwcGVuZAotICAgICAgICBzZWxmLl91c2VfZGF0ZXRpbWUgPSB1c2VfZGF0ZXRpbWUKLSAgICAgICAgaWYgdXNlX2RhdGV0aW1lIGFuZCBub3QgZGF0ZXRpbWU6Ci0gICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCJ0aGUgZGF0ZXRpbWUgbW9kdWxlIGlzIG5vdCBhdmFpbGFibGUiKQorICAgICAgICBzZWxmLl91c2VfZGF0ZXRpbWUgPSB1c2VfYnVpbHRpbl90eXBlcyBvciB1c2VfZGF0ZXRpbWUKKyAgICAgICAgc2VsZi5fdXNlX2J5dGVzID0gdXNlX2J1aWx0aW5fdHlwZXMKIAogICAgIGRlZiBjbG9zZShzZWxmKToKICAgICAgICAgIyByZXR1cm4gcmVzcG9uc2UgdHVwbGUgYW5kIHRhcmdldCBtZXRob2QKQEAgLTc1MCw2ICs3NTgsOCBAQAogICAgIGRlZiBlbmRfYmFzZTY0KHNlbGYsIGRhdGEpOgogICAgICAgICB2YWx1ZSA9IEJpbmFyeSgpCiAgICAgICAgIHZhbHVlLmRlY29kZShkYXRhLmVuY29kZSgiYXNjaWkiKSkKKyAgICAgICAgaWYgc2VsZi5fdXNlX2J5dGVzOgorICAgICAgICAgICAgdmFsdWUgPSB2YWx1ZS5kYXRhCiAgICAgICAgIHNlbGYuYXBwZW5kKHZhbHVlKQogICAgICAgICBzZWxmLl92YWx1ZSA9IDAKICAgICBkaXNwYXRjaFsiYmFzZTY0Il0gPSBlbmRfYmFzZTY0CkBAIC04NjEsMjMgKzg3MSwyNiBAQAogIwogIyByZXR1cm4gQSAocGFyc2VyLCB1bm1hcnNoYWxsZXIpIHR1cGxlLgogCi1kZWYgZ2V0cGFyc2VyKHVzZV9kYXRldGltZT1GYWxzZSk6CitkZWYgZ2V0cGFyc2VyKHVzZV9kYXRldGltZT1GYWxzZSwgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpOgogICAgICIiImdldHBhcnNlcigpIC0+IHBhcnNlciwgdW5tYXJzaGFsbGVyCiAKICAgICBDcmVhdGUgYW4gaW5zdGFuY2Ugb2YgdGhlIGZhc3Rlc3QgYXZhaWxhYmxlIHBhcnNlciwgYW5kIGF0dGFjaCBpdAogICAgIHRvIGFuIHVubWFyc2hhbGxpbmcgb2JqZWN0LiAgUmV0dXJuIGJvdGggb2JqZWN0cy4KICAgICAiIiIKLSAgICBpZiB1c2VfZGF0ZXRpbWUgYW5kIG5vdCBkYXRldGltZToKLSAgICAgICAgcmFpc2UgVmFsdWVFcnJvcigidGhlIGRhdGV0aW1lIG1vZHVsZSBpcyBub3QgYXZhaWxhYmxlIikKICAgICBpZiBGYXN0UGFyc2VyIGFuZCBGYXN0VW5tYXJzaGFsbGVyOgotICAgICAgICBpZiB1c2VfZGF0ZXRpbWU6CisgICAgICAgIGlmIHVzZV9idWlsdGluX3R5cGVzOgogICAgICAgICAgICAgbWtkYXRldGltZSA9IF9kYXRldGltZV90eXBlCisgICAgICAgICAgICBta2J5dGVzID0gYmFzZTY0LmRlY29kZWJ5dGVzCisgICAgICAgIGVsaWYgdXNlX2RhdGV0aW1lOgorICAgICAgICAgICAgbWtkYXRldGltZSA9IF9kYXRldGltZV90eXBlCisgICAgICAgICAgICBta2J5dGVzID0gX2JpbmFyeQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgbWtkYXRldGltZSA9IF9kYXRldGltZQotICAgICAgICB0YXJnZXQgPSBGYXN0VW5tYXJzaGFsbGVyKFRydWUsIEZhbHNlLCBfYmluYXJ5LCBta2RhdGV0aW1lLCBGYXVsdCkKKyAgICAgICAgICAgIG1rYnl0ZXMgPSBfYmluYXJ5CisgICAgICAgIHRhcmdldCA9IEZhc3RVbm1hcnNoYWxsZXIoVHJ1ZSwgRmFsc2UsIG1rYnl0ZXMsIG1rZGF0ZXRpbWUsIEZhdWx0KQogICAgICAgICBwYXJzZXIgPSBGYXN0UGFyc2VyKHRhcmdldCkKICAgICBlbHNlOgotICAgICAgICB0YXJnZXQgPSBVbm1hcnNoYWxsZXIodXNlX2RhdGV0aW1lPXVzZV9kYXRldGltZSkKKyAgICAgICAgdGFyZ2V0ID0gVW5tYXJzaGFsbGVyKHVzZV9kYXRldGltZT11c2VfZGF0ZXRpbWUsIHVzZV9idWlsdGluX3R5cGVzPXVzZV9idWlsdGluX3R5cGVzKQogICAgICAgICBpZiBGYXN0UGFyc2VyOgogICAgICAgICAgICAgcGFyc2VyID0gRmFzdFBhcnNlcih0YXJnZXQpCiAgICAgICAgIGVsc2U6CkBAIC05MTUsNyArOTI4LDcgQEAKIAogICAgICAgICBlbmNvZGluZzogdGhlIHBhY2tldCBlbmNvZGluZyAoZGVmYXVsdCBpcyBVVEYtOCkKIAotICAgIEFsbCA4LWJpdCBzdHJpbmdzIGluIHRoZSBkYXRhIHN0cnVjdHVyZSBhcmUgYXNzdW1lZCB0byB1c2UgdGhlCisgICAgQWxsIGJ5dGUgc3RyaW5ncyBpbiB0aGUgZGF0YSBzdHJ1Y3R1cmUgYXJlIGFzc3VtZWQgdG8gdXNlIHRoZQogICAgIHBhY2tldCBlbmNvZGluZy4gIFVuaWNvZGUgc3RyaW5ncyBhcmUgYXV0b21hdGljYWxseSBjb252ZXJ0ZWQsCiAgICAgd2hlcmUgbmVjZXNzYXJ5LgogICAgICIiIgpAQCAtOTc0LDcgKzk4Nyw3IEBACiAjICAgICAoTm9uZSBpZiBub3QgcHJlc2VudCkuCiAjIEBzZWUgRmF1bHQKIAotZGVmIGxvYWRzKGRhdGEsIHVzZV9kYXRldGltZT1GYWxzZSk6CitkZWYgbG9hZHMoZGF0YSwgdXNlX2RhdGV0aW1lPUZhbHNlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAgICAgIiIiZGF0YSAtPiB1bm1hcnNoYWxsZWQgZGF0YSwgbWV0aG9kIG5hbWUKIAogICAgIENvbnZlcnQgYW4gWE1MLVJQQyBwYWNrZXQgdG8gdW5tYXJzaGFsbGVkIGRhdGEgcGx1cyBhIG1ldGhvZApAQCAtOTgzLDcgKzk5Niw3IEBACiAgICAgSWYgdGhlIFhNTC1SUEMgcGFja2V0IHJlcHJlc2VudHMgYSBmYXVsdCBjb25kaXRpb24sIHRoaXMgZnVuY3Rpb24KICAgICByYWlzZXMgYSBGYXVsdCBleGNlcHRpb24uCiAgICAgIiIiCi0gICAgcCwgdSA9IGdldHBhcnNlcih1c2VfZGF0ZXRpbWU9dXNlX2RhdGV0aW1lKQorICAgIHAsIHUgPSBnZXRwYXJzZXIodXNlX2RhdGV0aW1lPXVzZV9kYXRldGltZSwgdXNlX2J1aWx0aW5fdHlwZXM9dXNlX2J1aWx0aW5fdHlwZXMpCiAgICAgcC5mZWVkKGRhdGEpCiAgICAgcC5jbG9zZSgpCiAgICAgcmV0dXJuIHUuY2xvc2UoKSwgdS5nZXRtZXRob2RuYW1lKCkKQEAgLTEwODUsNyArMTA5OCw3IEBACiAgICAgIiIiSGFuZGxlcyBhbiBIVFRQIHRyYW5zYWN0aW9uIHRvIGFuIFhNTC1SUEMgc2VydmVyLiIiIgogCiAgICAgIyBjbGllbnQgaWRlbnRpZmllciAobWF5IGJlIG92ZXJyaWRkZW4pCi0gICAgdXNlcl9hZ2VudCA9ICJ4bWxycGNsaWIucHkvJXMgKGJ5IHd3dy5weXRob253YXJlLmNvbSkiICUgX192ZXJzaW9uX18KKyAgICB1c2VyX2FnZW50ID0gIlB5dGhvbi14bWxycGMvJXMiICUgX192ZXJzaW9uX18KIAogICAgICNpZiB0cnVlLCB3ZSdsbCByZXF1ZXN0IGd6aXAgZW5jb2RpbmcKICAgICBhY2NlcHRfZ3ppcF9lbmNvZGluZyA9IFRydWUKQEAgLTEwOTUsOCArMTEwOCw5IEBACiAgICAgIyB0aGF0IHRoZXkgY2FuIGRlY29kZSBzdWNoIGEgcmVxdWVzdAogICAgIGVuY29kZV90aHJlc2hvbGQgPSBOb25lICNOb25lID0gZG9uJ3QgZW5jb2RlCiAKLSAgICBkZWYgX19pbml0X18oc2VsZiwgdXNlX2RhdGV0aW1lPUZhbHNlKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgdXNlX2RhdGV0aW1lPUZhbHNlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAgICAgICAgIHNlbGYuX3VzZV9kYXRldGltZSA9IHVzZV9kYXRldGltZQorICAgICAgICBzZWxmLl91c2VfYnVpbHRpbl90eXBlcyA9IHVzZV9idWlsdGluX3R5cGVzCiAgICAgICAgIHNlbGYuX2Nvbm5lY3Rpb24gPSAoTm9uZSwgTm9uZSkKICAgICAgICAgc2VsZi5fZXh0cmFfaGVhZGVycyA9IFtdCiAKQEAgLTExNTcsNyArMTE3MSw4IEBACiAKICAgICBkZWYgZ2V0cGFyc2VyKHNlbGYpOgogICAgICAgICAjIGdldCBwYXJzZXIgYW5kIHVubWFyc2hhbGxlcgotICAgICAgICByZXR1cm4gZ2V0cGFyc2VyKHVzZV9kYXRldGltZT1zZWxmLl91c2VfZGF0ZXRpbWUpCisgICAgICAgIHJldHVybiBnZXRwYXJzZXIodXNlX2RhdGV0aW1lPXNlbGYuX3VzZV9kYXRldGltZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfYnVpbHRpbl90eXBlcz1zZWxmLl91c2VfYnVpbHRpbl90eXBlcykKIAogICAgICMjCiAgICAgIyBHZXQgYXV0aG9yaXphdGlvbiBpbmZvIGZyb20gaG9zdCBwYXJhbWV0ZXIKQEAgLTEzNjQsNyArMTM3OSw3IEBACiAgICAgIiIiCiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgdXJpLCB0cmFuc3BvcnQ9Tm9uZSwgZW5jb2Rpbmc9Tm9uZSwgdmVyYm9zZT1GYWxzZSwKLSAgICAgICAgICAgICAgICAgYWxsb3dfbm9uZT1GYWxzZSwgdXNlX2RhdGV0aW1lPUZhbHNlKToKKyAgICAgICAgICAgICAgICAgYWxsb3dfbm9uZT1GYWxzZSwgdXNlX2RhdGV0aW1lPUZhbHNlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAgICAgICAgICMgZXN0YWJsaXNoIGEgImxvZ2ljYWwiIHNlcnZlciBjb25uZWN0aW9uCiAKICAgICAgICAgIyBnZXQgdGhlIHVybApAQCAtMTM3OCw5ICsxMzkzLDExIEBACiAKICAgICAgICAgaWYgdHJhbnNwb3J0IGlzIE5vbmU6CiAgICAgICAgICAgICBpZiB0eXBlID09ICJodHRwcyI6Ci0gICAgICAgICAgICAgICAgdHJhbnNwb3J0ID0gU2FmZVRyYW5zcG9ydCh1c2VfZGF0ZXRpbWU9dXNlX2RhdGV0aW1lKQorICAgICAgICAgICAgICAgIGhhbmRsZXIgPSBTYWZlVHJhbnNwb3J0CiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHRyYW5zcG9ydCA9IFRyYW5zcG9ydCh1c2VfZGF0ZXRpbWU9dXNlX2RhdGV0aW1lKQorICAgICAgICAgICAgICAgIGhhbmRsZXIgPSBUcmFuc3BvcnQKKyAgICAgICAgICAgIHRyYW5zcG9ydCA9IGhhbmRsZXIodXNlX2RhdGV0aW1lPXVzZV9kYXRldGltZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX2J1aWx0aW5fdHlwZXM9dXNlX2J1aWx0aW5fdHlwZXMpCiAgICAgICAgIHNlbGYuX190cmFuc3BvcnQgPSB0cmFuc3BvcnQKIAogICAgICAgICBzZWxmLl9fZW5jb2RpbmcgPSBlbmNvZGluZyBvciAndXRmLTgnCmRpZmYgLS1naXQgYS9MaWIveG1scnBjL3NlcnZlci5weSBiL0xpYi94bWxycGMvc2VydmVyLnB5CmluZGV4IDcyZjNiZmMuLmJmMjJhYTkgMTAwNjQ0Ci0tLSBhL0xpYi94bWxycGMvc2VydmVyLnB5CisrKyBiL0xpYi94bWxycGMvc2VydmVyLnB5CkBAIC0xNjAsMTEgKzE2MCwxMyBAQAogICAgIGNhbiBiZSBpbnN0YW5jZWQgd2hlbiB1c2VkIGJ5IHRoZSBNdWx0aVBhdGhYTUxSUENTZXJ2ZXIKICAgICAiIiIKIAotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhbGxvd19ub25lPUZhbHNlLCBlbmNvZGluZz1Ob25lKToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgYWxsb3dfbm9uZT1GYWxzZSwgZW5jb2Rpbmc9Tm9uZSwKKyAgICAgICAgICAgICAgICAgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpOgogICAgICAgICBzZWxmLmZ1bmNzID0ge30KICAgICAgICAgc2VsZi5pbnN0YW5jZSA9IE5vbmUKICAgICAgICAgc2VsZi5hbGxvd19ub25lID0gYWxsb3dfbm9uZQogICAgICAgICBzZWxmLmVuY29kaW5nID0gZW5jb2Rpbmcgb3IgJ3V0Zi04JworICAgICAgICBzZWxmLnVzZV9idWlsdGluX3R5cGVzID0gdXNlX2J1aWx0aW5fdHlwZXMKIAogICAgIGRlZiByZWdpc3Rlcl9pbnN0YW5jZShzZWxmLCBpbnN0YW5jZSwgYWxsb3dfZG90dGVkX25hbWVzPUZhbHNlKToKICAgICAgICAgIiIiUmVnaXN0ZXJzIGFuIGluc3RhbmNlIHRvIHJlc3BvbmQgdG8gWE1MLVJQQyByZXF1ZXN0cy4KQEAgLTI0NSw3ICsyNDcsNyBAQAogICAgICAgICAiIiIKIAogICAgICAgICB0cnk6Ci0gICAgICAgICAgICBwYXJhbXMsIG1ldGhvZCA9IGxvYWRzKGRhdGEpCisgICAgICAgICAgICBwYXJhbXMsIG1ldGhvZCA9IGxvYWRzKGRhdGEsIHVzZV9idWlsdGluX3R5cGVzPXNlbGYudXNlX2J1aWx0aW5fdHlwZXMpCiAKICAgICAgICAgICAgICMgZ2VuZXJhdGUgcmVzcG9uc2UKICAgICAgICAgICAgIGlmIGRpc3BhdGNoX21ldGhvZCBpcyBub3QgTm9uZToKQEAgLTU3MiwxMCArNTc0LDExIEBACiAgICAgX3NlbmRfdHJhY2ViYWNrX2hlYWRlciA9IEZhbHNlCiAKICAgICBkZWYgX19pbml0X18oc2VsZiwgYWRkciwgcmVxdWVzdEhhbmRsZXI9U2ltcGxlWE1MUlBDUmVxdWVzdEhhbmRsZXIsCi0gICAgICAgICAgICAgICAgIGxvZ1JlcXVlc3RzPVRydWUsIGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUsIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUpOgorICAgICAgICAgICAgICAgICBsb2dSZXF1ZXN0cz1UcnVlLCBhbGxvd19ub25lPUZhbHNlLCBlbmNvZGluZz1Ob25lLAorICAgICAgICAgICAgICAgICBiaW5kX2FuZF9hY3RpdmF0ZT1UcnVlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAgICAgICAgIHNlbGYubG9nUmVxdWVzdHMgPSBsb2dSZXF1ZXN0cwogCi0gICAgICAgIFNpbXBsZVhNTFJQQ0Rpc3BhdGNoZXIuX19pbml0X18oc2VsZiwgYWxsb3dfbm9uZSwgZW5jb2RpbmcpCisgICAgICAgIFNpbXBsZVhNTFJQQ0Rpc3BhdGNoZXIuX19pbml0X18oc2VsZiwgYWxsb3dfbm9uZSwgZW5jb2RpbmcsIHVzZV9idWlsdGluX3R5cGVzKQogICAgICAgICBzb2NrZXRzZXJ2ZXIuVENQU2VydmVyLl9faW5pdF9fKHNlbGYsIGFkZHIsIHJlcXVlc3RIYW5kbGVyLCBiaW5kX2FuZF9hY3RpdmF0ZSkKIAogICAgICAgICAjIFtCdWcgIzEyMjI3OTBdIElmIHBvc3NpYmxlLCBzZXQgY2xvc2Utb24tZXhlYyBmbGFnOyBpZiBhCkBAIC01OTUsMTAgKzU5OCwxMSBAQAogICAgIE1ha2Ugc3VyZSB0aGF0IHRoZSByZXF1ZXN0SGFuZGxlciBhY2NlcHRzIHRoZSBwYXRocyBpbiBxdWVzdGlvbi4KICAgICAiIiIKICAgICBkZWYgX19pbml0X18oc2VsZiwgYWRkciwgcmVxdWVzdEhhbmRsZXI9U2ltcGxlWE1MUlBDUmVxdWVzdEhhbmRsZXIsCi0gICAgICAgICAgICAgICAgIGxvZ1JlcXVlc3RzPVRydWUsIGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUsIGJpbmRfYW5kX2FjdGl2YXRlPVRydWUpOgorICAgICAgICAgICAgICAgICBsb2dSZXF1ZXN0cz1UcnVlLCBhbGxvd19ub25lPUZhbHNlLCBlbmNvZGluZz1Ob25lLAorICAgICAgICAgICAgICAgICBiaW5kX2FuZF9hY3RpdmF0ZT1UcnVlLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CiAKICAgICAgICAgU2ltcGxlWE1MUlBDU2VydmVyLl9faW5pdF9fKHNlbGYsIGFkZHIsIHJlcXVlc3RIYW5kbGVyLCBsb2dSZXF1ZXN0cywgYWxsb3dfbm9uZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nLCBiaW5kX2FuZF9hY3RpdmF0ZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nLCBiaW5kX2FuZF9hY3RpdmF0ZSwgdXNlX2J1aWx0aW5fdHlwZXMpCiAgICAgICAgIHNlbGYuZGlzcGF0Y2hlcnMgPSB7fQogICAgICAgICBzZWxmLmFsbG93X25vbmUgPSBhbGxvd19ub25lCiAgICAgICAgIHNlbGYuZW5jb2RpbmcgPSBlbmNvZGluZyBvciAndXRmLTgnCkBAIC02MjgsOCArNjMyLDggQEAKIGNsYXNzIENHSVhNTFJQQ1JlcXVlc3RIYW5kbGVyKFNpbXBsZVhNTFJQQ0Rpc3BhdGNoZXIpOgogICAgICIiIlNpbXBsZSBoYW5kbGVyIGZvciBYTUwtUlBDIGRhdGEgcGFzc2VkIHRocm91Z2ggQ0dJLiIiIgogCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIGFsbG93X25vbmU9RmFsc2UsIGVuY29kaW5nPU5vbmUpOgotICAgICAgICBTaW1wbGVYTUxSUENEaXNwYXRjaGVyLl9faW5pdF9fKHNlbGYsIGFsbG93X25vbmUsIGVuY29kaW5nKQorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBhbGxvd19ub25lPUZhbHNlLCBlbmNvZGluZz1Ob25lLCB1c2VfYnVpbHRpbl90eXBlcz1GYWxzZSk6CisgICAgICAgIFNpbXBsZVhNTFJQQ0Rpc3BhdGNoZXIuX19pbml0X18oc2VsZiwgYWxsb3dfbm9uZSwgZW5jb2RpbmcsIHVzZV9idWlsdGluX3R5cGVzKQogCiAgICAgZGVmIGhhbmRsZV94bWxycGMoc2VsZiwgcmVxdWVzdF90ZXh0KToKICAgICAgICAgIiIiSGFuZGxlIGEgc2luZ2xlIFhNTC1SUEMgcmVxdWVzdCIiIgpAQCAtOTI0LDkgKzkyOCwxMCBAQAogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGFkZHIsIHJlcXVlc3RIYW5kbGVyPURvY1hNTFJQQ1JlcXVlc3RIYW5kbGVyLAogICAgICAgICAgICAgICAgICBsb2dSZXF1ZXN0cz1UcnVlLCBhbGxvd19ub25lPUZhbHNlLCBlbmNvZGluZz1Ob25lLAotICAgICAgICAgICAgICAgICBiaW5kX2FuZF9hY3RpdmF0ZT1UcnVlKToKKyAgICAgICAgICAgICAgICAgYmluZF9hbmRfYWN0aXZhdGU9VHJ1ZSwgdXNlX2J1aWx0aW5fdHlwZXM9RmFsc2UpOgogICAgICAgICBTaW1wbGVYTUxSUENTZXJ2ZXIuX19pbml0X18oc2VsZiwgYWRkciwgcmVxdWVzdEhhbmRsZXIsIGxvZ1JlcXVlc3RzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxsb3dfbm9uZSwgZW5jb2RpbmcsIGJpbmRfYW5kX2FjdGl2YXRlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxsb3dfbm9uZSwgZW5jb2RpbmcsIGJpbmRfYW5kX2FjdGl2YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX2J1aWx0aW5fdHlwZXMpCiAgICAgICAgIFhNTFJQQ0RvY0dlbmVyYXRvci5fX2luaXRfXyhzZWxmKQogCiBjbGFzcyBEb2NDR0lYTUxSUENSZXF1ZXN0SGFuZGxlciggICBDR0lYTUxSUENSZXF1ZXN0SGFuZGxlciwKQEAgLTk1Niw4ICs5NjEsMTMgQEAKIAogCiBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgotICAgIHByaW50KCdSdW5uaW5nIFhNTC1SUEMgc2VydmVyIG9uIHBvcnQgODAwMCcpCiAgICAgc2VydmVyID0gU2ltcGxlWE1MUlBDU2VydmVyKCgibG9jYWxob3N0IiwgODAwMCkpCiAgICAgc2VydmVyLnJlZ2lzdGVyX2Z1bmN0aW9uKHBvdykKICAgICBzZXJ2ZXIucmVnaXN0ZXJfZnVuY3Rpb24obGFtYmRhIHgseTogeCt5LCAnYWRkJykKLSAgICBzZXJ2ZXIuc2VydmVfZm9yZXZlcigpCisgICAgcHJpbnQoJ1NlcnZpbmcgWE1MLVJQQyBvbiBsb2NhbGhvc3QgcG9ydCA4MDAwJykKKyAgICB0cnk6CisgICAgICAgIHNlcnZlci5zZXJ2ZV9mb3JldmVyKCkKKyAgICBleGNlcHQgS2V5Ym9hcmRJbnRlcnJ1cHQ6CisgICAgICAgIHByaW50KCJcbktleWJvYXJkIGludGVycnVwdCByZWNlaXZlZCwgZXhpdGluZy4iKQorICAgICAgICBzZXJ2ZXIuc2VydmVyX2Nsb3NlKCkKKyAgICAgICAgc3lzLmV4aXQoMCkKZGlmZiAtLWdpdCBhL01ha2VmaWxlLnByZS5pbiBiL01ha2VmaWxlLnByZS5pbgppbmRleCBjNDlkNzc3Li4wN2FhNWJmIDEwMDY0NAotLS0gYS9NYWtlZmlsZS5wcmUuaW4KKysrIGIvTWFrZWZpbGUucHJlLmluCkBAIC0zNCw3ICszNCw2IEBACiBMSU5LQ0M9CQlATElOS0NDQAogQVI9CQlAQVJACiBSQU5MSUI9CQlAUkFOTElCQAotU1ZOVkVSU0lPTj0JQFNWTlZFUlNJT05ACiBTT0FCST0JCUBTT0FCSUAKIExEVkVSU0lPTj0JQExEVkVSU0lPTkAKIEhHVkVSU0lPTj0JQEhHVkVSU0lPTkAKQEAgLTc0LDcgKzczLDcgQEAKICMgQm90aCBDUFBGTEFHUyBhbmQgTERGTEFHUyBuZWVkIHRvIGNvbnRhaW4gdGhlIHNoZWxsJ3MgdmFsdWUgZm9yIHNldHVwLnB5IHRvCiAjIGJlIGFibGUgdG8gYnVpbGQgZXh0ZW5zaW9uIG1vZHVsZXMgdXNpbmcgdGhlIGRpcmVjdG9yaWVzIHNwZWNpZmllZCBpbiB0aGUKICMgZW52aXJvbm1lbnQgdmFyaWFibGVzCi1QWV9DUFBGTEFHUz0JLUkuIC1JSW5jbHVkZSAtSSQoc3JjZGlyKS9JbmNsdWRlICQoQ09ORklHVVJFX0NQUEZMQUdTKSAkKENQUEZMQUdTKQorUFlfQ1BQRkxBR1M9CS1JLiAtSSQoc3JjZGlyKS9JbmNsdWRlICQoQ09ORklHVVJFX0NQUEZMQUdTKSAkKENQUEZMQUdTKQogUFlfTERGTEFHUz0JJChDT05GSUdVUkVfTERGTEFHUykgJChMREZMQUdTKQogTk9fQVNfTkVFREVEPQlATk9fQVNfTkVFREVEQAogTERMQVNUPQkJQExETEFTVEAKQEAgLTI0MCwxNCArMjM5LDEzIEBACiAJCVBhcnNlci9saXN0bm9kZS5vIFwKIAkJUGFyc2VyL25vZGUubyBcCiAJCVBhcnNlci9wYXJzZXIubyBcCi0JCVBhcnNlci9wYXJzZXRvay5vIFwKIAkJUGFyc2VyL2JpdHNldC5vIFwKIAkJUGFyc2VyL21ldGFncmFtbWFyLm8gXAogCQlQYXJzZXIvZmlyc3RzZXRzLm8gXAogCQlQYXJzZXIvZ3JhbW1hci5vIFwKIAkJUGFyc2VyL3BnZW4ubwogCi1QQVJTRVJfT0JKUz0JJChQT0JKUykgUGFyc2VyL215cmVhZGxpbmUubyBQYXJzZXIvdG9rZW5pemVyLm8KK1BBUlNFUl9PQkpTPQkkKFBPQkpTKSBQYXJzZXIvbXlyZWFkbGluZS5vIFBhcnNlci9wYXJzZXRvay5vIFBhcnNlci90b2tlbml6ZXIubwogCiBQR09CSlM9CQlcCiAJCU9iamVjdHMvb2JtYWxsb2MubyBcCkBAIC0yNTYsMTEgKzI1NCwxMyBAQAogCQlQeXRob24vcHljdHlwZS5vIFwKIAkJUGFyc2VyL3Rva2VuaXplcl9wZ2VuLm8gXAogCQlQYXJzZXIvcHJpbnRncmFtbWFyLm8gXAorCQlQYXJzZXIvcGFyc2V0b2tfcGdlbi5vIFwKIAkJUGFyc2VyL3BnZW5tYWluLm8KIAogUEFSU0VSX0hFQURFUlM9IFwKLQkJUGFyc2VyL3BhcnNlci5oIFwKLQkJUGFyc2VyL3Rva2VuaXplci5oCisJCSQoc3JjZGlyKS9QYXJzZXIvcGFyc2VyLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9wYXJzZXRvay5oIFwKKwkJJChzcmNkaXIpL1BhcnNlci90b2tlbml6ZXIuaAogCiBQR0VOT0JKUz0JJChQR0VOTUFJTikgJChQT0JKUykgJChQR09CSlMpCiAKQEAgLTM3MCw3ICszNzAsNyBAQAogCQlPYmplY3RzL29ibWFsbG9jLm8gXAogCQlPYmplY3RzL2NhcHN1bGUubyBcCiAJCU9iamVjdHMvcmFuZ2VvYmplY3QubyBcCi0gICAgICAgICAgICAgICAgT2JqZWN0cy9zZXRvYmplY3QubyBcCisJCU9iamVjdHMvc2V0b2JqZWN0Lm8gXAogCQlPYmplY3RzL3NsaWNlb2JqZWN0Lm8gXAogCQlPYmplY3RzL3N0cnVjdHNlcS5vIFwKIAkJT2JqZWN0cy90dXBsZW9iamVjdC5vIFwKQEAgLTM3OSw2ICszNzksNyBAQAogCQlPYmplY3RzL3VuaWNvZGVjdHlwZS5vIFwKIAkJT2JqZWN0cy93ZWFrcmVmb2JqZWN0Lm8KIAorU1lTQ09ORklHREFUQT0kKHNyY2RpcikvTGliL19zeXNjb25maWdkYXRhLnB5CiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAjIG9iamVjdHMgdGhhdCBnZXQgbGlua2VkIGludG8gdGhlIFB5dGhvbiBsaWJyYXJ5CkBAIC0zOTYsNyArMzk3LDcgQEAKIAogIyBEZWZhdWx0IHRhcmdldAogYWxsOgkJYnVpbGRfYWxsCi1idWlsZF9hbGw6CSQoQlVJTERQWVRIT04pIG9sZHNoYXJlZG1vZHMgc2hhcmVkbW9kcyBnZGJob29rcyBNb2R1bGVzL190ZXN0ZW1iZWQKK2J1aWxkX2FsbDoJJChCVUlMRFBZVEhPTikgJChTWVNDT05GSUdEQVRBKSBvbGRzaGFyZWRtb2RzIHNoYXJlZG1vZHMgZ2RiaG9va3MgTW9kdWxlcy9fdGVzdGVtYmVkCiAKICMgQ29tcGlsZSBhIGJpbmFyeSB3aXRoIGdjYyBwcm9maWxlIGd1aWRlZCBvcHRpbWl6YXRpb24uCiBwcm9maWxlLW9wdDoKQEAgLTQyOSwxMiArNDMwLDE1IEBACiAkKEJVSUxEUFlUSE9OKToJTW9kdWxlcy9weXRob24ubyAkKExJQlJBUlkpICQoTERMSUJSQVJZKSAkKFBZM0xJQlJBUlkpCiAJJChMSU5LQ0MpICQoUFlfTERGTEFHUykgJChMSU5LRk9SU0hBUkVEKSAtbyAkQCBNb2R1bGVzL3B5dGhvbi5vICQoQkxETElCUkFSWSkgJChMSUJTKSAkKE1PRExJQlMpICQoU1lTTElCUykgJChMRExBU1QpCiAKLXBsYXRmb3JtOiAkKEJVSUxEUFlUSE9OKQorcGxhdGZvcm06ICQoQlVJTERQWVRIT04pICQoU1lTQ09ORklHREFUQSkKIAkkKFJVTlNIQVJFRCkgLi8kKEJVSUxEUFlUSE9OKSAtRSAtYyAnaW1wb3J0IHN5cyA7IGZyb20gc3lzY29uZmlnIGltcG9ydCBnZXRfcGxhdGZvcm0gOyBwcmludChnZXRfcGxhdGZvcm0oKSsiLSIrc3lzLnZlcnNpb25bMDozXSknID5wbGF0Zm9ybQogCisjIEdlbmVyYXRlIHRoZSBzeXNjb25maWcgYnVpbGQtdGltZSBkYXRhCiskKFNZU0NPTkZJR0RBVEEpOiAkKEJVSUxEUFlUSE9OKQorCSQoUlVOU0hBUkVEKSAuLyQoQlVJTERQWVRIT04pIC1TRSAtbSBzeXNjb25maWcgLS1nZW5lcmF0ZS1wb3NpeC12YXJzCiAKICMgQnVpbGQgdGhlIHNoYXJlZCBtb2R1bGVzCi1zaGFyZWRtb2RzOiAkKEJVSUxEUFlUSE9OKQorc2hhcmVkbW9kczogJChCVUlMRFBZVEhPTikgJChTWVNDT05GSUdEQVRBKQogCUBjYXNlICQkTUFLRUZMQUdTIGluIFwKIAkqcyopICQoUlVOU0hBUkVEKSBDQz0nJChDQyknIExEU0hBUkVEPSckKEJMRFNIQVJFRCknIE9QVD0nJChPUFQpJyAuLyQoQlVJTERQWVRIT04pIC1FICQoc3JjZGlyKS9zZXR1cC5weSAtcSBidWlsZDs7IFwKIAkqKSAkKFJVTlNIQVJFRCkgQ0M9JyQoQ0MpJyBMRFNIQVJFRD0nJChCTERTSEFSRUQpJyBPUFQ9JyQoT1BUKScgLi8kKEJVSUxEUFlUSE9OKSAtRSAkKHNyY2Rpcikvc2V0dXAucHkgYnVpbGQ7OyBcCkBAIC00OTQsNyArNDk4LDcgQEAKIAkJLWluc3RhbGxfbmFtZSAkKERFU1RESVIpJChQWVRIT05GUkFNRVdPUktJTlNUQUxMRElSKS9WZXJzaW9ucy8kKFZFUlNJT04pLyQoUFlUSE9ORlJBTUVXT1JLKSBcCiAJCS1jb21wYXRpYmlsaXR5X3ZlcnNpb24gJChWRVJTSU9OKSBcCiAJCS1jdXJyZW50X3ZlcnNpb24gJChWRVJTSU9OKSBcCi0JCS1mcmFtZXdvcmsgQ29yZUZvdW5kYXRpb24gJChMSUJTKTsgCisJCS1mcmFtZXdvcmsgQ29yZUZvdW5kYXRpb24gJChMSUJTKTsKIAkkKElOU1RBTEwpIC1kIC1tICQoRElSTU9ERSkgIFwKIAkJJChQWVRIT05GUkFNRVdPUktESVIpL1ZlcnNpb25zLyQoVkVSU0lPTikvUmVzb3VyY2VzL0VuZ2xpc2gubHByb2oKIAkkKElOU1RBTExfREFUQSkgJChSRVNTUkNESVIpL0luZm8ucGxpc3QgXApAQCAtNTU1LDcgKzU1OSw2IEBACiAJCSQoTU9ET0JKUykgXAogCQkkKHNyY2RpcikvTW9kdWxlcy9nZXRidWlsZGluZm8uYwogCSQoQ0MpIC1jICQoUFlfQ09SRV9DRkxBR1MpIFwKLQkgICAgICAtRFNWTlZFUlNJT049IlwiYExDX0FMTD1DICQoU1ZOVkVSU0lPTilgXCIiIFwKIAkgICAgICAtREhHVkVSU0lPTj0iXCJgTENfQUxMPUMgJChIR1ZFUlNJT04pYFwiIiBcCiAJICAgICAgLURIR1RBRz0iXCJgTENfQUxMPUMgJChIR1RBRylgXCIiIFwKIAkgICAgICAtREhHQlJBTkNIPSJcImBMQ19BTEw9QyAkKEhHQlJBTkNIKWBcIiIgXApAQCAtNTcyLDYgKzU3NSw5IEBACiBNb2R1bGVzL3B5dGhvbi5vOiAkKHNyY2RpcikvTW9kdWxlcy9weXRob24uYwogCSQoTUFJTkNDKSAtYyAkKFBZX0NPUkVfQ0ZMQUdTKSAtbyAkQCAkKHNyY2RpcikvTW9kdWxlcy9weXRob24uYwogCitNb2R1bGVzL190ZXN0ZW1iZWQubzogJChzcmNkaXIpL01vZHVsZXMvX3Rlc3RlbWJlZC5jCisJJChNQUlOQ0MpIC1jICQoUFlfQ09SRV9DRkxBR1MpIC1vICRAICQoc3JjZGlyKS9Nb2R1bGVzL190ZXN0ZW1iZWQuYworCiBQeXRob24vZHlubG9hZF9zaGxpYi5vOiAkKHNyY2RpcikvUHl0aG9uL2R5bmxvYWRfc2hsaWIuYyBNYWtlZmlsZQogCSQoQ0MpIC1jICQoUFlfQ09SRV9DRkxBR1MpIFwKIAkJLURTT0FCST0nIiQoU09BQkkpIicgXApAQCAtNjAwLDEzICs2MDYsMTUgQEAKIFBhcnNlci9tZXRhZ3JhbW1hci5vOgkkKHNyY2RpcikvUGFyc2VyL21ldGFncmFtbWFyLmMKIAogUGFyc2VyL3Rva2VuaXplcl9wZ2VuLm86CSQoc3JjZGlyKS9QYXJzZXIvdG9rZW5pemVyLmMKK1BhcnNlci9wYXJzZXRva19wZ2VuLm86CSQoc3JjZGlyKS9QYXJzZXIvcGFyc2V0b2suYworUGFyc2VyL3ByaW50Z3JhbW1hci5vOiAkKHNyY2RpcikvUGFyc2VyL3ByaW50Z3JhbW1hci5jCiAKIFBhcnNlci9wZ2VubWFpbi5vOgkkKHNyY2RpcikvSW5jbHVkZS9wYXJzZXRvay5oCiAKICQoQVNUX0gpOiAkKEFTVF9BU0RMKSAkKEFTRExHRU5fRklMRVMpCiAJJChBU0RMR0VOKSAtaCAkKEFTVF9IX0RJUikgJChBU1RfQVNETCkKIAotJChBU1RfQyk6ICQoQVNUX0FTREwpICQoQVNETEdFTl9GSUxFUykKKyQoQVNUX0MpOiAkKEFTVF9IKSAkKEFTVF9BU0RMKSAkKEFTRExHRU5fRklMRVMpCiAJJChBU0RMR0VOKSAtYyAkKEFTVF9DX0RJUikgJChBU1RfQVNETCkKIAogUHl0aG9uL2NvbXBpbGUubyBQeXRob24vc3ltdGFibGUubyBQeXRob24vYXN0Lm86ICQoR1JBTU1BUl9IKSAkKEFTVF9IKQpAQCAtNjI3LDIwICs2MzUsMjkgQEAKIAkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL2VxLmggXAogCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvZmFzdHNlYXJjaC5oIFwKIAkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL2ZpbmQuaCBcCisJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9maW5kX21heF9jaGFyLmggXAogCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvcGFydGl0aW9uLmggXAogCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvc3BsaXQuaCBcCiAJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9zdHJpbmdkZWZzLmggXAotCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvc3RyaW5nX2Zvcm1hdC5oIFwKIAkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL3RyYW5zbW9ncmlmeS5oIFwKIAkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL3VuaWNvZGVkZWZzLmggXAotCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvbG9jYWxldXRpbC5oCisJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9sb2NhbGV1dGlsLmggXAorCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvdW5kZWYuaAorCitVTklDT0RFX0RFUFMgPSAkKEJZVEVTVFJfREVQUykgXAorCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvYXNjaWlsaWIuaCBcCisJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9jb2RlY3MuaCBcCisJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi91Y3MxbGliLmggXAorCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvdWNzMmxpYi5oIFwKKwkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL3VjczRsaWIuaCBcCisJCSQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi91bmljb2RlX2Zvcm1hdC5oIFwKKwkJJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL3VuaWNvZGVkZWZzLmgKIAogT2JqZWN0cy9ieXRlc29iamVjdC5vOiAkKHNyY2RpcikvT2JqZWN0cy9ieXRlc29iamVjdC5jICQoQllURVNUUl9ERVBTKQogCiBPYmplY3RzL2J5dGVhcnJheW9iamVjdC5vOiAkKHNyY2RpcikvT2JqZWN0cy9ieXRlYXJyYXlvYmplY3QuYyAkKEJZVEVTVFJfREVQUykKIAotT2JqZWN0cy91bmljb2Rlb2JqZWN0Lm86ICQoc3JjZGlyKS9PYmplY3RzL3VuaWNvZGVvYmplY3QuYyBcCi0JCQkJJChCWVRFU1RSX0RFUFMpCitPYmplY3RzL3VuaWNvZGVvYmplY3QubzogJChzcmNkaXIpL09iamVjdHMvdW5pY29kZW9iamVjdC5jICQoVU5JQ09ERV9ERVBTKQogCiBPYmplY3RzL2RpY3RvYmplY3QubzogJChzcmNkaXIpL09iamVjdHMvc3RyaW5nbGliL2VxLmgKIE9iamVjdHMvc2V0b2JqZWN0Lm86ICQoc3JjZGlyKS9PYmplY3RzL3N0cmluZ2xpYi9lcS5oCkBAIC02NDgsMTEgKzY2NSwxMCBAQAogJChPUENPREVUQVJHRVRTX0gpOiAkKE9QQ09ERVRBUkdFVEdFTl9GSUxFUykKIAkkKE9QQ09ERVRBUkdFVEdFTikgJChPUENPREVUQVJHRVRTX0gpCiAKLVB5dGhvbi9jZXZhbC5vOiAkKE9QQ09ERVRBUkdFVFNfSCkgUHl0aG9uL2NldmFsX2dpbC5oCitQeXRob24vY2V2YWwubzogJChPUENPREVUQVJHRVRTX0gpICQoc3JjZGlyKS9QeXRob24vY2V2YWxfZ2lsLmgKIAogUHl0aG9uL2Zvcm1hdHRlcl91bmljb2RlLm86ICQoc3JjZGlyKS9QeXRob24vZm9ybWF0dGVyX3VuaWNvZGUuYyBcCi0JCQkJJChCWVRFU1RSX0RFUFMpIFwKLQkJCQkkKHNyY2RpcikvT2JqZWN0cy9zdHJpbmdsaWIvZm9ybWF0dGVyLmgKKwkJCQkkKEJZVEVTVFJfREVQUykKIAogT2JqZWN0cy90eXBlb2JqZWN0Lm86ICQoc3JjZGlyKS9PYmplY3RzL3R5cGVzbG90cy5pbmMKICQoc3JjZGlyKS9PYmplY3RzL3R5cGVzbG90cy5pbmM6ICQoc3JjZGlyKS9JbmNsdWRlL3R5cGVzbG90cy5oICQoc3JjZGlyKS9PYmplY3RzL3R5cGVzbG90cy5weQpAQCAtNjYyLDg5ICs2NzgsODggQEAKICMgSGVhZGVyIGZpbGVzCiAKIFBZVEhPTl9IRUFERVJTPSBcCi0JCUluY2x1ZGUvUHl0aG9uLWFzdC5oIFwKLQkJSW5jbHVkZS9QeXRob24uaCBcCi0JCUluY2x1ZGUvYWJzdHJhY3QuaCBcCi0JCUluY2x1ZGUvYWNjdS5oIFwKLQkJSW5jbHVkZS9hc2RsLmggXAotCQlJbmNsdWRlL2FzdC5oIFwKLSAgICAgICAgICAgICAgICBJbmNsdWRlL2JsdGlubW9kdWxlLmggXAotCQlJbmNsdWRlL2JpdHNldC5oIFwKLQkJSW5jbHVkZS9ib29sb2JqZWN0LmggXAotCQlJbmNsdWRlL2J5dGVzX21ldGhvZHMuaCBcCi0JCUluY2x1ZGUvYnl0ZWFycmF5b2JqZWN0LmggXAotCQlJbmNsdWRlL2J5dGVzb2JqZWN0LmggXAotCQlJbmNsdWRlL2NlbGxvYmplY3QuaCBcCi0JCUluY2x1ZGUvY2V2YWwuaCBcCi0JCUluY2x1ZGUvY2xhc3NvYmplY3QuaCBcCi0JCUluY2x1ZGUvY29kZS5oIFwKLQkJSW5jbHVkZS9jb2RlY3MuaCBcCi0JCUluY2x1ZGUvY29tcGlsZS5oIFwKLQkJSW5jbHVkZS9jb21wbGV4b2JqZWN0LmggXAotCQlJbmNsdWRlL2Rlc2Nyb2JqZWN0LmggXAotCQlJbmNsdWRlL2RpY3RvYmplY3QuaCBcCi0JCUluY2x1ZGUvZHRvYS5oIFwKLQkJSW5jbHVkZS9keW5hbWljX2Fubm90YXRpb25zLmggXAotCQlJbmNsdWRlL2VudW1vYmplY3QuaCBcCi0JCUluY2x1ZGUvZXJyY29kZS5oIFwKLQkJSW5jbHVkZS9ldmFsLmggXAotCQlJbmNsdWRlL2ZpbGVvYmplY3QuaCBcCi0JCUluY2x1ZGUvZmlsZXV0aWxzLmggXAotCQlJbmNsdWRlL2Zsb2F0b2JqZWN0LmggXAotCQlJbmNsdWRlL2ZyYW1lb2JqZWN0LmggXAotCQlJbmNsdWRlL2Z1bmNvYmplY3QuaCBcCi0JCUluY2x1ZGUvZ2Vub2JqZWN0LmggXAotCQlJbmNsdWRlL2ltcG9ydC5oIFwKLQkJSW5jbHVkZS9pbnRyY2hlY2suaCBcCi0JCUluY2x1ZGUvaXRlcm9iamVjdC5oIFwKLQkJSW5jbHVkZS9saXN0b2JqZWN0LmggXAotCQlJbmNsdWRlL2xvbmdpbnRyZXByLmggXAotCQlJbmNsdWRlL2xvbmdvYmplY3QuaCBcCi0JCUluY2x1ZGUvbWFyc2hhbC5oIFwKLQkJSW5jbHVkZS9tZW1vcnlvYmplY3QuaCBcCi0JCUluY2x1ZGUvbWV0YWdyYW1tYXIuaCBcCi0JCUluY2x1ZGUvbWV0aG9kb2JqZWN0LmggXAotCQlJbmNsdWRlL21vZHN1cHBvcnQuaCBcCi0JCUluY2x1ZGUvbW9kdWxlb2JqZWN0LmggXAotCQlJbmNsdWRlL25vZGUuaCBcCi0JCUluY2x1ZGUvb2JqZWN0LmggXAotCQlJbmNsdWRlL29iamltcGwuaCBcCi0JCUluY2x1ZGUvb3Bjb2RlLmggXAotCQlJbmNsdWRlL29zZGVmcy5oIFwKLQkJSW5jbHVkZS9wYXJzZXRvay5oIFwKLQkJSW5jbHVkZS9wYXRjaGxldmVsLmggXAotCQlJbmNsdWRlL3BnZW4uaCBcCi0JCUluY2x1ZGUvcGdlbmhlYWRlcnMuaCBcCi0JCUluY2x1ZGUvcHlhcmVuYS5oIFwKLQkJSW5jbHVkZS9weWF0b21pYy5oIFwKLQkJSW5jbHVkZS9weWNhcHN1bGUuaCBcCi0JCUluY2x1ZGUvcHljdHlwZS5oIFwKLQkJSW5jbHVkZS9weWRlYnVnLmggXAotCQlJbmNsdWRlL3B5ZXJyb3JzLmggXAotCQlJbmNsdWRlL3B5ZnBlLmggXAotCQlJbmNsdWRlL3B5bWF0aC5oIFwKLQkJSW5jbHVkZS9weWdldG9wdC5oIFwKLQkJSW5jbHVkZS9weW1lbS5oIFwKLQkJSW5jbHVkZS9weXBvcnQuaCBcCi0JCUluY2x1ZGUvcHlzdGF0ZS5oIFwKLQkJSW5jbHVkZS9weXN0cmNtcC5oIFwKLQkJSW5jbHVkZS9weXN0cnRvZC5oIFwKLQkJSW5jbHVkZS9weXRob25ydW4uaCBcCi0JCUluY2x1ZGUvcHl0aHJlYWQuaCBcCi0JCUluY2x1ZGUvcHl0aW1lLmggXAotCQlJbmNsdWRlL3Jhbmdlb2JqZWN0LmggXAotCQlJbmNsdWRlL3NldG9iamVjdC5oIFwKLQkJSW5jbHVkZS9zbGljZW9iamVjdC5oIFwKLQkJSW5jbHVkZS9zdHJ1Y3RtZW1iZXIuaCBcCi0JCUluY2x1ZGUvc3RydWN0c2VxLmggXAotCQlJbmNsdWRlL3N5bXRhYmxlLmggXAotCQlJbmNsdWRlL3N5c21vZHVsZS5oIFwKLQkJSW5jbHVkZS90cmFjZWJhY2suaCBcCi0JCUluY2x1ZGUvdHVwbGVvYmplY3QuaCBcCi0JCUluY2x1ZGUvdWNuaGFzaC5oIFwKLQkJSW5jbHVkZS91bmljb2Rlb2JqZWN0LmggXAotCQlJbmNsdWRlL3dhcm5pbmdzLmggXAotCQlJbmNsdWRlL3dlYWtyZWZvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL1B5dGhvbi5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvYWJzdHJhY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2FjY3UuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2FzZGwuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2FzdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvYmx0aW5tb2R1bGUuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2JpdHNldC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvYm9vbG9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvYnl0ZXNfbWV0aG9kcy5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvYnl0ZWFycmF5b2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9ieXRlc29iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvY2VsbG9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvY2V2YWwuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2NsYXNzb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9jb2RlLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9jb2RlY3MuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2NvbXBpbGUuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2NvbXBsZXhvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2Rlc2Nyb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9kaWN0b2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9kdG9hLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9keW5hbWljX2Fubm90YXRpb25zLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9lbnVtb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9lcnJjb2RlLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9ldmFsLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9maWxlb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9maWxldXRpbHMuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2Zsb2F0b2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9mcmFtZW9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvZnVuY29iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvZ2Vub2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9pbXBvcnQuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2ludHJjaGVjay5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvaXRlcm9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvbGlzdG9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvbG9uZ2ludHJlcHIuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL2xvbmdvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL21hcnNoYWwuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL21lbW9yeW9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvbWV0YWdyYW1tYXIuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL21ldGhvZG9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvbW9kc3VwcG9ydC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvbW9kdWxlb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9ub2RlLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9vYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL29iamltcGwuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL29wY29kZS5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvb3NkZWZzLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9wYXRjaGxldmVsLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9wZ2VuLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9wZ2VuaGVhZGVycy5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHlhcmVuYS5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHlhdG9taWMuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3B5Y2Fwc3VsZS5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHljdHlwZS5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHlkZWJ1Zy5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHllcnJvcnMuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3B5ZnBlLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weW1hdGguaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3B5Z2V0b3B0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weW1hY3JvLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weW1lbS5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHlwb3J0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weXN0YXRlLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9weXN0cmNtcC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHlzdHJ0b2QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3B5dGhvbnJ1bi5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcHl0aHJlYWQuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3B5dGltZS5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvcmFuZ2VvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3NldG9iamVjdC5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvc2xpY2VvYmplY3QuaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3N0cnVjdG1lbWJlci5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvc3RydWN0c2VxLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS9zeW10YWJsZS5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvc3lzbW9kdWxlLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS90cmFjZWJhY2suaCBcCisJCSQoc3JjZGlyKS9JbmNsdWRlL3R1cGxlb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS91Y25oYXNoLmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS91bmljb2Rlb2JqZWN0LmggXAorCQkkKHNyY2RpcikvSW5jbHVkZS93YXJuaW5ncy5oIFwKKwkJJChzcmNkaXIpL0luY2x1ZGUvd2Vha3JlZm9iamVjdC5oIFwKIAkJcHljb25maWcuaCBcCiAJCSQoUEFSU0VSX0hFQURFUlMpCiAKQEAgLTc1Myw2NSArNzY4LDU2IEBACiAKICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAotIyBUZXN0IHRoZSBpbnRlcnByZXRlciAodHdpY2UsIG9uY2Ugd2l0aG91dCAucHljIGZpbGVzLCBvbmNlIHdpdGgpCitURVNUT1BUUz0JJChFWFRSQVRFU1RPUFRTKQorVEVTVFBZVEhPTj0JJChSVU5TSEFSRUQpIC4vJChCVUlMRFBZVEhPTikgJChURVNUUFlUSE9OT1BUUykKK1RFU1RSVU5ORVI9CSQoVEVTVFBZVEhPTikgJChzcmNkaXIpL1Rvb2xzL3NjcmlwdHMvcnVuX3Rlc3RzLnB5CitURVNUVElNRU9VVD0JMzYwMAorCisjIFJ1biBhIGJhc2ljIHNldCBvZiByZWdyZXNzaW9uIHRlc3RzLgorIyBUaGlzIGV4Y2x1ZGVzIHNvbWUgdGVzdHMgdGhhdCBhcmUgcGFydGljdWxhcmx5IHJlc291cmNlLWludGVuc2l2ZS4KK3Rlc3Q6CQlhbGwgcGxhdGZvcm0KKwkJJChURVNUUlVOTkVSKSAkKFRFU1RPUFRTKQorCisjIFJ1biB0aGUgZnVsbCB0ZXN0IHN1aXRlIHR3aWNlIC0gb25jZSB3aXRob3V0IC5weWMgZmlsZXMsIGFuZCBvbmNlIHdpdGguCiAjIEluIHRoZSBwYXN0LCB3ZSd2ZSBoYWQgcHJvYmxlbXMgd2hlcmUgYnVncyBpbiB0aGUgbWFyc2hhbGxpbmcgb3IKICMgZWxzZXdoZXJlIGNhdXNlZCBieXRlY29kZSByZWFkIGZyb20gLnB5YyBmaWxlcyB0byBiZWhhdmUgZGlmZmVyZW50bHkKICMgdGhhbiBieXRlY29kZSBnZW5lcmF0ZWQgZGlyZWN0bHkgZnJvbSBhIC5weSBzb3VyY2UgZmlsZS4gIFNvbWV0aW1lcwotIyB0aGUgYnl0ZWNvZGUgcmVhZCBmcm9tIGEgLnB5YyBmaWxlIGhhZCB0aGUgYnVnLCBzb210aW1lcyB0aGUgZGlyZWN0bHkKKyMgdGhlIGJ5dGVjb2RlIHJlYWQgZnJvbSBhIC5weWMgZmlsZSBoYWQgdGhlIGJ1Zywgc29tZXRpbWVzIHRoZSBkaXJlY3RseQogIyBnZW5lcmF0ZWQgYnl0ZWNvZGUuICBUaGlzIGlzIHNvbWV0aW1lcyBhIHZlcnkgc2h5IGJ1ZyBuZWVkaW5nIGEgbG90IG9mCiAjIHNhbXBsZSBkYXRhLgotCi1URVNUT1BUUz0JLWwgJChFWFRSQVRFU1RPUFRTKQotVEVTVFBST0c9CSQoc3JjZGlyKS9MaWIvdGVzdC9yZWdydGVzdC5weQotVEVTVFBZVEhPTj0JJChSVU5TSEFSRUQpIC4vJChCVUlMRFBZVEhPTikgLVdkIC1FIC1iYiAkKFRFU1RQWVRIT05PUFRTKQotdGVzdDoJCWFsbCBwbGF0Zm9ybQotCQktZmluZCAkKHNyY2RpcikvTGliIC1uYW1lICcqLnB5W2NvXScgLXByaW50IHwgeGFyZ3Mgcm0gLWYKLQkJLSQoVEVTVFBZVEhPTikgJChURVNUUFJPRykgJChURVNUT1BUUykKLQkJJChURVNUUFlUSE9OKSAkKFRFU1RQUk9HKSAkKFRFU1RPUFRTKQotCiB0ZXN0YWxsOglhbGwgcGxhdGZvcm0KIAkJLWZpbmQgJChzcmNkaXIpL0xpYiAtbmFtZSAnKi5weVtjb10nIC1wcmludCB8IHhhcmdzIHJtIC1mCi0JCSQoVEVTVFBZVEhPTikgJChzcmNkaXIpL0xpYi9jb21waWxlYWxsLnB5CisJCSQoVEVTVFBZVEhPTikgLUUgJChzcmNkaXIpL0xpYi9jb21waWxlYWxsLnB5CiAJCS1maW5kICQoc3JjZGlyKS9MaWIgLW5hbWUgJyoucHlbY29dJyAtcHJpbnQgfCB4YXJncyBybSAtZgotCQktJChURVNUUFlUSE9OKSAkKFRFU1RQUk9HKSAtdWFsbCAkKFRFU1RPUFRTKQotCQkkKFRFU1RQWVRIT04pICQoVEVTVFBST0cpIC11YWxsICQoVEVTVE9QVFMpCisJCS0kKFRFU1RSVU5ORVIpIC11IGFsbCAkKFRFU1RPUFRTKQorCQkkKFRFU1RSVU5ORVIpIC11IGFsbCAkKFRFU1RPUFRTKQogCi0jICBSdW4gdGhlIHVuaXRlc3RzIGZvciBib3RoIGFyY2hpdGVjdHVyZXMgaW4gYSBVbml2ZXJzYWwgYnVpbGQgb24gT1NYCi0jICBNdXN0IGJlIHJ1biBvbiBhbiBJbnRlbCBib3guCisjIFJ1biB0aGUgdGVzdCBzdWl0ZSBmb3IgYm90aCBhcmNoaXRlY3R1cmVzIGluIGEgVW5pdmVyc2FsIGJ1aWxkIG9uIE9TWC4KKyMgTXVzdCBiZSBydW4gb24gYW4gSW50ZWwgYm94LgogdGVzdHVuaXZlcnNhbDoJYWxsIHBsYXRmb3JtCiAJCWlmIFsgYGFyY2hgICE9ICdpMzg2JyBdO3RoZW4gXAogCQkJZWNobyAiVGhpcyBjYW4gb25seSBiZSB1c2VkIG9uIE9TWC9pMzg2IiA7XAogCQkJZXhpdCAxIDtcCiAJCWZpCi0JCS1maW5kICQoc3JjZGlyKS9MaWIgLW5hbWUgJyoucHlbY29dJyAtcHJpbnQgfCB4YXJncyBybSAtZgotCQktJChURVNUUFlUSE9OKSAkKFRFU1RQUk9HKSAtdWFsbCAkKFRFU1RPUFRTKQotCQkkKFRFU1RQWVRIT04pICQoVEVTVFBST0cpIC11YWxsICQoVEVTVE9QVFMpCi0JCSQoUlVOU0hBUkVEKSAvdXNyL2xpYmV4ZWMvb2FoL3RyYW5zbGF0ZSAuLyQoQlVJTERQWVRIT04pIC1FICQoVEVTVFBST0cpIC11YWxsICQoVEVTVE9QVFMpCisJCSQoVEVTVFJVTk5FUikgLXUgYWxsICQoVEVTVE9QVFMpCisJCSQoUlVOU0hBUkVEKSAvdXNyL2xpYmV4ZWMvb2FoL3RyYW5zbGF0ZSBcCisJCQkuLyQoQlVJTERQWVRIT04pIC1FIC1tIHRlc3QgLWogMCAtdSBhbGwgJChURVNUT1BUUykKIAotCi0jIExpa2UgdGVzdGFsbCwgYnV0IHdpdGggYSBzaW5nbGUgcGFzcyBvbmx5Ci0jIHJ1biBhbiBvcHRpb25hbCBzY3JpcHQgdG8gaW5jbHVkZSBzb21lIGluZm9ybWF0aW9uIGFib3V0IHRoZSBidWlsZCBlbnZpcm9ubWVudAorIyBMaWtlIHRlc3RhbGwsIGJ1dCB3aXRoIG9ubHkgb25lIHBhc3MgYW5kIHdpdGhvdXQgbXVsdGlwbGUgcHJvY2Vzc2VzLgorIyBSdW4gYW4gb3B0aW9uYWwgc2NyaXB0IHRvIGluY2x1ZGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGJ1aWxkIGVudmlyb25tZW50LgogYnVpbGRib3R0ZXN0OglhbGwgcGxhdGZvcm0KIAkJLUBpZiB3aGljaCBweWJ1aWxkYm90LmlkZW50aWZ5ID4vZGV2L251bGwgMj4mMTsgdGhlbiBcCiAJCQlweWJ1aWxkYm90LmlkZW50aWZ5ICJDQz0nJChDQyknIiAiQ1hYPSckKENYWCknIjsgXAogCQlmaQotCQkkKFRFU1RQWVRIT04pICQoVEVTVFBST0cpIC11YWxsIC1yd1cgJChURVNUT1BUUykKKwkJJChURVNUUlVOTkVSKSAtaiAxIC11IGFsbCAtVyAtLXRpbWVvdXQ9JChURVNUVElNRU9VVCkgJChURVNUT1BUUykKIAogUVVJQ0tURVNUT1BUUz0JJChURVNUT1BUUykgLXggdGVzdF9zdWJwcm9jZXNzIHRlc3RfaW8gdGVzdF9saWIydG8zIFwKIAkJdGVzdF9tdWx0aWJ5dGVjb2RlYyB0ZXN0X3VybGxpYjJfbG9jYWxuZXQgdGVzdF9pdGVydG9vbHMgXAogCQl0ZXN0X211bHRpcHJvY2Vzc2luZyB0ZXN0X21haWxib3ggdGVzdF9zb2NrZXQgdGVzdF9wb2xsIFwKLQkJdGVzdF9zZWxlY3QgdGVzdF96aXBmaWxlCisJCXRlc3Rfc2VsZWN0IHRlc3RfemlwZmlsZSB0ZXN0X2NvbmN1cnJlbnRfZnV0dXJlcwogcXVpY2t0ZXN0OglhbGwgcGxhdGZvcm0KLQkJLWZpbmQgJChzcmNkaXIpL0xpYiAtbmFtZSAnKi5weVtjb10nIC1wcmludCB8IHhhcmdzIHJtIC1mCi0JCS0kKFRFU1RQWVRIT04pICQoVEVTVFBST0cpICQoUVVJQ0tURVNUT1BUUykKLQkJJChURVNUUFlUSE9OKSAkKFRFU1RQUk9HKSAkKFFVSUNLVEVTVE9QVFMpCisJCSQoVEVTVFJVTk5FUikgJChRVUlDS1RFU1RPUFRTKQogCi1NRU1URVNUT1BUUz0gICAgJChRVUlDS1RFU1RPUFRTKSAteCB0ZXN0X2RsIHRlc3RfX19hbGxfXyB0ZXN0X2ZvcmsxIFwKLQkJdGVzdF9sb25nZXhwCi1tZW10ZXN0OglhbGwgcGxhdGZvcm0KLQkJLXJtIC1mICQoc3JjZGlyKS9MaWIvdGVzdC8qLnB5W2NvXQotCQktJChURVNUUFlUSE9OKSAkKFRFU1RQUk9HKSAkKE1FTVRFU1RPUFRTKQotCQkkKFRFU1RQWVRIT04pICQoVEVTVFBST0cpICQoTUVNVEVTVE9QVFMpCiAKIGluc3RhbGw6IGFsdGluc3RhbGwgYmluaW5zdGFsbAogCkBAIC04OTQsNiArOTAwLDggQEAKIAkoY2QgJChERVNURElSKSQoQklORElSKTsgJChMTikgLXMgcHlkb2MkKFZFUlNJT04pIHB5ZG9jMykKIAktcm0gLWYgJChERVNURElSKSQoQklORElSKS8ydG8zCiAJKGNkICQoREVTVERJUikkKEJJTkRJUik7ICQoTE4pIC1zIDJ0bzMtJChWRVJTSU9OKSAydG8zKQorCS1ybSAtZiAkKERFU1RESVIpJChCSU5ESVIpL3B5c2V0dXAzCisJKGNkICQoREVTVERJUikkKEJJTkRJUik7ICQoTE4pIC1zIHB5c2V0dXAkKFZFUlNJT04pIHB5c2V0dXAzKQogCiAjIEluc3RhbGwgdGhlIG1hbnVhbCBwYWdlCiBtYW5pbnN0YWxsOgpAQCAtOTE2LDIwICs5MjQsNzIgQEAKIExJQlNVQkRJUlM9CXRraW50ZXIgdGtpbnRlci90ZXN0IHRraW50ZXIvdGVzdC90ZXN0X3RraW50ZXIgXAogCQl0a2ludGVyL3Rlc3QvdGVzdF90dGsgc2l0ZS1wYWNrYWdlcyB0ZXN0IFwKIAkJdGVzdC9jYXBhdGggdGVzdC9kYXRhIFwKLQkJdGVzdC9jamtlbmNvZGluZ3MgdGVzdC9kZWNpbWFsdGVzdGRhdGEgdGVzdC94bWx0ZXN0ZGF0YSB0ZXN0L3N1YnByb2Nlc3NkYXRhIFwKKwkJdGVzdC9jamtlbmNvZGluZ3MgdGVzdC9kZWNpbWFsdGVzdGRhdGEgdGVzdC94bWx0ZXN0ZGF0YSBcCisJCXRlc3Qvc3VicHJvY2Vzc2RhdGEgXAogCQl0ZXN0L3RyYWNlZG1vZHVsZXMgdGVzdC9lbmNvZGVkX21vZHVsZXMgXAotCQljb25jdXJyZW50IGNvbmN1cnJlbnQvZnV0dXJlcyBlbmNvZGluZ3MgXAotCQllbWFpbCBlbWFpbC9taW1lIGVtYWlsL3Rlc3QgZW1haWwvdGVzdC9kYXRhIFwKKwkJY29sbGVjdGlvbnMgY29uY3VycmVudCBjb25jdXJyZW50L2Z1dHVyZXMgZW5jb2RpbmdzIFwKKwkJZW1haWwgZW1haWwvbWltZSB0ZXN0L3Rlc3RfZW1haWwgdGVzdC90ZXN0X2VtYWlsL2RhdGEgXAogCQlodG1sIGpzb24gdGVzdC9qc29uX3Rlc3RzIGh0dHAgZGJtIHhtbHJwYyBcCiAJCXNxbGl0ZTMgc3FsaXRlMy90ZXN0IFwKIAkJbG9nZ2luZyBjc3Ygd3NnaXJlZiB1cmxsaWIgXAogCQlsaWIydG8zIGxpYjJ0bzMvZml4ZXMgbGliMnRvMy9wZ2VuMiBsaWIydG8zL3Rlc3RzIFwKLQkJbGliMnRvMy90ZXN0cy9kYXRhIGxpYjJ0bzMvdGVzdHMvZGF0YS9maXhlcnMgbGliMnRvMy90ZXN0cy9kYXRhL2ZpeGVycy9teWZpeGVzIFwKKwkJbGliMnRvMy90ZXN0cy9kYXRhIGxpYjJ0bzMvdGVzdHMvZGF0YS9maXhlcnMgXAorCQlsaWIydG8zL3Rlc3RzL2RhdGEvZml4ZXJzL215Zml4ZXMgXAogCQljdHlwZXMgY3R5cGVzL3Rlc3QgY3R5cGVzL21hY2hvbGliIGlkbGVsaWIgaWRsZWxpYi9JY29ucyBcCiAJCWRpc3R1dGlscyBkaXN0dXRpbHMvY29tbWFuZCBkaXN0dXRpbHMvdGVzdHMgJChYTUxMSUJTVUJESVJTKSBcCiAJCWltcG9ydGxpYiBpbXBvcnRsaWIvdGVzdCBpbXBvcnRsaWIvdGVzdC9idWlsdGluIFwKIAkJaW1wb3J0bGliL3Rlc3QvZXh0ZW5zaW9uIGltcG9ydGxpYi90ZXN0L2Zyb3plbiBcCiAJCWltcG9ydGxpYi90ZXN0L2ltcG9ydF8gaW1wb3J0bGliL3Rlc3Qvc291cmNlIFwKKwkJcGFja2FnaW5nIHBhY2thZ2luZy9jb21tYW5kIHBhY2thZ2luZy9jb21waWxlciBcCisJCXBhY2thZ2luZy9weXBpIHBhY2thZ2luZy90ZXN0cyBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzIFwKKwkJcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFiYXItMC4xLmRpc3QtaW5mbyBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhY29uLTAuMS5lZ2ctaW5mbyBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2JhbmFuYS0wLjQuZWdnIFwKKwkJcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvYmFuYW5hLTAuNC5lZ2cvRUdHLUlORk8gXAorCQlwYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9jaG94aWUtMi4wLjAuOSBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45L2Nob3hpZSBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2Nob3hpZS0yLjAuMC45LmRpc3QtaW5mbyBcCisJCXBhY2thZ2luZy90ZXN0cy9mYWtlX2Rpc3RzL2NvY29udXRzLWFzdGVyLTEwLjMuZWdnLWluZm8gXAorCQlwYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0IFwKKwkJcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvZ3JhbW1hci0xLjBhNC5kaXN0LWluZm8gXAorCQlwYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy9ncmFtbWFyLTEuMGE0L2dyYW1tYXIgXAorCQlwYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEgXAorCQlwYWNrYWdpbmcvdGVzdHMvZmFrZV9kaXN0cy90b3dlbF9zdHVmZi0wLjEuZGlzdC1pbmZvIFwKKwkJcGFja2FnaW5nL3Rlc3RzL2Zha2VfZGlzdHMvdG93ZWxfc3R1ZmYtMC4xL3Rvd2VsX3N0dWZmIFwKKwkJcGFja2FnaW5nL3Rlc3RzL2ZpeGVyIHBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1IFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3BhY2thZ2VzIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3BhY2thZ2VzL3NvdXJjZSBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9wYWNrYWdlcy9zb3VyY2UvZiBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Rvd25sb2Fkc193aXRoX21kNS9wYWNrYWdlcy9zb3VyY2UvZi9mb29iYXIgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZG93bmxvYWRzX3dpdGhfbWQ1L3NpbXBsZS9iYWRtZDUgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9kb3dubG9hZHNfd2l0aF9tZDUvc2ltcGxlL2Zvb2JhciBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6IFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvZm9vX2Jhcl9iYXovc2ltcGxlL2JhciBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL2Zvb19iYXJfYmF6L3NpbXBsZS9iYXogXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci9mb29fYmFyX2Jhei9zaW1wbGUvZm9vIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvcHJvamVjdF9saXN0IFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvcHJvamVjdF9saXN0L3NpbXBsZSBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfZm91bmRfbGlua3MgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X2ZvdW5kX2xpbmtzL3NpbXBsZSBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfZm91bmRfbGlua3Mvc2ltcGxlL2Zvb2JhciBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3Rlc3RfcHlwaV9zZXJ2ZXIgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci90ZXN0X3B5cGlfc2VydmVyL2V4dGVybmFsIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvdGVzdF9weXBpX3NlcnZlci9zaW1wbGUgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX2V4dGVybmFscyBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfZXh0ZXJuYWxzL2V4dGVybmFsIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvc2ltcGxlIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9leHRlcm5hbHMvc2ltcGxlL2Zvb2JhciBcCisJCXBhY2thZ2luZy90ZXN0cy9weXBpc2VydmVyL3dpdGhfbm9yZWxfbGlua3MgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX25vcmVsX2xpbmtzL2V4dGVybmFsIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9ub3JlbF9saW5rcy9zaW1wbGUgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX25vcmVsX2xpbmtzL3NpbXBsZS9mb29iYXIgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX3JlYWxfZXh0ZXJuYWxzIFwKKwkJcGFja2FnaW5nL3Rlc3RzL3B5cGlzZXJ2ZXIvd2l0aF9yZWFsX2V4dGVybmFscy9zaW1wbGUgXAorCQlwYWNrYWdpbmcvdGVzdHMvcHlwaXNlcnZlci93aXRoX3JlYWxfZXh0ZXJuYWxzL3NpbXBsZS9mb29iYXIgXAogCQl0dXJ0bGVkZW1vIFwKIAkJbXVsdGlwcm9jZXNzaW5nIG11bHRpcHJvY2Vzc2luZy9kdW1teSBcCiAJCXVuaXR0ZXN0IHVuaXR0ZXN0L3Rlc3QgXApAQCAtOTU0LDcgKzEwMTQsNyBAQAogCQllbHNlCXRydWU7IFwKIAkJZmk7IFwKIAlkb25lCi0JQGZvciBpIGluICQoc3JjZGlyKS9MaWIvKi5weSAkKHNyY2RpcikvTGliLyouZWdnLWluZm8gOyBcCisJQGZvciBpIGluICQoc3JjZGlyKS9MaWIvKi5weSAkKHNyY2RpcikvTGliLyouY2ZnIDsgXAogCWRvIFwKIAkJaWYgdGVzdCAteCAkJGk7IHRoZW4gXAogCQkJJChJTlNUQUxMX1NDUklQVCkgJCRpICQoREVTVERJUikkKExJQkRFU1QpOyBcCkBAIC05OTQsNiArMTA1NCwxMCBAQAogCQkkKElOU1RBTExfREFUQSkgJChzcmNkaXIpL01vZHVsZXMveHhtb2R1bGUuYyBcCiAJCQkkKERFU1RESVIpJChMSUJERVNUKS9kaXN0dXRpbHMvdGVzdHMgOyBcCiAJZmkKKwlpZiB0ZXN0IC1kICQoREVTVERJUikkKExJQkRFU1QpL3BhY2thZ2luZy90ZXN0czsgdGhlbiBcCisJCSQoSU5TVEFMTF9EQVRBKSAkKHNyY2RpcikvTW9kdWxlcy94eG1vZHVsZS5jIFwKKwkJCSQoREVTVERJUikkKExJQkRFU1QpL3BhY2thZ2luZy90ZXN0cyA7IFwKKwlmaQogCS1QWVRIT05QQVRIPSQoREVTVERJUikkKExJQkRFU1QpICAkKFJVTlNIQVJFRCkgXAogCQkuLyQoQlVJTERQWVRIT04pIC1XaSAkKERFU1RESVIpJChMSUJERVNUKS9jb21waWxlYWxsLnB5IFwKIAkJLWQgJChMSUJERVNUKSAtZiBcCkBAIC0xMTg1LDcgKzEyNDksNyBAQAogCS0tcm9vdD0kKERFU1RESVIpLwogCiAjIEJ1aWxkIHRoZSB0b3BsZXZlbCBNYWtlZmlsZQotTWFrZWZpbGUucHJlOiBNYWtlZmlsZS5wcmUuaW4gY29uZmlnLnN0YXR1cworTWFrZWZpbGUucHJlOiAkKHNyY2RpcikvTWFrZWZpbGUucHJlLmluIGNvbmZpZy5zdGF0dXMKIAlDT05GSUdfRklMRVM9TWFrZWZpbGUucHJlIENPTkZJR19IRUFERVJTPSAkKFNIRUxMKSBjb25maWcuc3RhdHVzCiAJJChNQUtFKSAtZiBNYWtlZmlsZS5wcmUgTWFrZWZpbGUKIApAQCAtMTI1Miw2ICsxMzE2LDcgQEAKIAlmaW5kIGJ1aWxkIC1uYW1lICdmZmljb25maWcuaCcgLWV4ZWMgcm0gLWYge30gJzsnIHx8IHRydWUKIAlmaW5kIGJ1aWxkIC1uYW1lICdmZmljb25maWcucHknIC1leGVjIHJtIC1mIHt9ICc7JyB8fCB0cnVlCiAJLXJtIC1mIExpYi9saWIydG8zLypHcmFtbWFyKi5waWNrbGUKKwktcm0gLWYgJChTWVNDT05GSUdEQVRBKQogCS1ybSAtZiBNb2R1bGVzL190ZXN0ZW1iZWQKIAogcHJvZmlsZS1yZW1vdmFsOgpAQCAtMTI5MCw4ICsxMzU1LDcgQEAKICMgRmluZCBmaWxlcyB3aXRoIGZ1bm55IG5hbWVzCiBmdW5ueToKIAlmaW5kICQoU1VCRElSUykgJChTVUJESVJTVE9PKSBcCi0JCS1uYW1lIC5zdm4gLXBydW5lIFwKLQkJLW8gLXR5cGUgZCBcCisJCS10eXBlIGQgXAogCQktbyAtbmFtZSAnKi5bY2hzXScgXAogCQktbyAtbmFtZSAnKi5weScgXAogCQktbyAtbmFtZSAnKi5weXcnIFwKQEAgLTEzMzAsNyArMTM5NCw3IEBACiBQeXRob24vdGhyZWFkLm86IEBUSFJFQURIRUFERVJTQAogCiAjIERlY2xhcmUgdGFyZ2V0cyB0aGF0IGFyZW4ndCByZWFsIGZpbGVzCi0uUEhPTlk6IGFsbCBidWlsZF9hbGwgc2hhcmVkbW9kcyBvbGRzaGFyZWRtb2RzIHRlc3QgcXVpY2t0ZXN0IG1lbXRlc3QKKy5QSE9OWTogYWxsIGJ1aWxkX2FsbCBzaGFyZWRtb2RzIG9sZHNoYXJlZG1vZHMgdGVzdCBxdWlja3Rlc3QKIC5QSE9OWTogaW5zdGFsbCBhbHRpbnN0YWxsIG9sZHNoYXJlZGluc3RhbGwgYmluaW5zdGFsbCBhbHRiaW5pbnN0YWxsCiAuUEhPTlk6IG1hbmluc3RhbGwgbGliaW5zdGFsbCBpbmNsaW5zdGFsbCBsaWJhaW5zdGFsbCBzaGFyZWRpbnN0YWxsCiAuUEhPTlk6IGZyYW1ld29ya2luc3RhbGwgZnJhbWV3b3JraW5zdGFsbGZyYW1ld29yayBmcmFtZXdvcmtpbnN0YWxsc3RydWN0dXJlCmRpZmYgLS1naXQgYS9NaXNjL0FDS1MgYi9NaXNjL0FDS1MKaW5kZXggY2NjMWZlYy4uYWFmYjUxZiAxMDA2NDQKLS0tIGEvTWlzYy9BQ0tTCisrKyBiL01pc2MvQUNLUwpAQCAtMTEsOCArMTEsMTAgQEAKIFBTOiBJbiB0aGUgc3RhbmRhcmQgUHl0aG9uIGRpc3RyaWJ1dGlvbiwgdGhpcyBmaWxlIGlzIGVuY29kZWQgaW4gVVRGLTgKIGFuZCB0aGUgbGlzdCBpcyBpbiByb3VnaCBhbHBoYWJldGljYWwgb3JkZXIgYnkgbGFzdCBuYW1lcy4KIAorUmFqaXYgQWJyYWhhbQogRGF2aWQgQWJyYWhhbXMKIFJvbiBBZGFtCitBbGkgQWZzaGFyCiBKaW0gQWhsc3Ryb20KIEZhcmhhbiBBaG1hZAogTWF0dGhldyBBaHJlbnMKQEAgLTM3LDEyICszOSwxMiBAQAogSmFzb24gQXNiYWhyCiBEYXZpZCBBc2NoZXIKIENocmlzIEF0TGVlCitBeW1lcmljIEF1Z3VzdGluCiBKb2huIEF5Y29jawotSmFuLUhlaW4gQsO8aHJtYW4KIERvbm92YW4gQmFhcmRhCiBBdHRpbGEgQmFibwotQWxmb25zbyBCYWNpZXJvCiBNYXJjaW4gQmFjaHJ5CitBbGZvbnNvIEJhY2llcm8KIER3YXluZSBCYWlsZXkKIFN0aWcgQmFra2VuCiBHcmVnIEJhbGwKQEAgLTU0LDIwICs1NiwyMiBAQAogQ2hyaXMgQmFya2VyCiBOaWNrIEJhcm5lcwogUXVlbnRpbiBCYXJuZXMKK0RhdmlkIEJhcm5ldHQKIFJpY2hhcmQgQmFycmFuCiBDZXNhciBFZHVhcmRvIEJhcnJvcwogRGVzIEJhcnJ5CiBVbGYgQmFydGVsdAorUGlvciBCYXN0aWRhCiBOaWNrIEJhc3RpbgogSmVmZiBCYXVlcgotTWlrZSBCYXllcgogTWljaGFlbCBSIEJheAogQW50aG9ueSBCYXh0ZXIKK01pa2UgQmF5ZXIKIFNhbXVlbCBMLiBCYXllcgogRG9uYWxkIEJlYXVkcnkKIERhdmlkIEJlYXpsZXkKLVJvYmluIEJlY2tlcgogTmVhbCBCZWNrZXIKK1JvYmluIEJlY2tlcgogVG9yc3RlbiBCZWNrZXIKIEJpbGwgQmVkZm9yZAogU3RlZmFuIEJlaG5lbApAQCAtOTIsNiArOTYsNyBAQAogUGhpbGlwcGUgQmlvbmRpCiBTdHVhcnQgQmlzaG9wCiBSb3kgQml4bGVyCitSZW5hdWQgQmxhbmNoCiBNaWtlIEJsYW5kCiBNYXJ0aW4gQmxlc3MKIFBhYmxvIEJsZXllcgpAQCAtMTAxLDkgKzEwNiwxMCBAQAogUGF1bCBCb2RkaWUKIE1hdHRoZXcgQm9lZGlja2VyCiBEYXZpZCBCb2xlbgotRm9yZXN0IEJvbmQKIEdhd2FpbiBCb2x0b24KK0ZvcmVzdCBCb25kCiBHcmVnb3J5IEJvbmQKK01hdGlhcyBCb3JkZXNlCiBKdXJqZW4gQm9zCiBQZXRlciBCb3NjaAogRXJpYyBCb3VjawpAQCAtMTE0LDIxICsxMjAsMjUgQEAKIEdlb3JnIEJyYW5kbAogQ2hyaXN0b3BoZXIgQnJhbm5vbgogVGVycmVuY2UgQnJhbm5vbgorRXJpayBCcmF5CiBCcmlhbiBCcmF6aWwKIERhdmUgQnJlbm5hbgogVG9tIEJyaWRnbWFuCitBbnRob255IEJyaWdncwogVG9iaWFzIEJyaW5rCiBSaWNoYXJkIEJyb2RpZQogTWljaGFlbCBCcm9naHRvbgogRGFuaWVsIEJyb3Rza3kKIEplYW4gQnJvdXdlcnMKIEdhcnkgUy4gQnJvd24KK1RpdHVzIEJyb3duCiBPbGVnIEJyb3l0bWFubgogRGF2ZSBCcnVlY2sKIEZyYW5jaXNjbyBNYXJ0w61uIEJydWd1w6kKIEZsb3JpcyBCcnV5bm9vZ2hlCiBTdGFuIEJ1YnJvdXNraQogRXJpayBkZSBCdWVnZXIKK0phbi1IZWluIELDvGhybWFuCiBEaWNrIEJ1bHRlcm1hbgogQmlsbCBCdW1nYXJuZXIKIEppbW15IEJ1cmdldHQKQEAgLTEzOCwxMiArMTQ4LDE0IEBACiBUYXJuIFdlaXNuZXIgQnVydG9uCiBMZWUgQnVzYnkKIFJhbHBoIEJ1dGxlcgorTmljb2xhcyBDYWRvdQogSnAgQ2FsZGVyb25lCiBBcm5hdWQgQ2FsbWV0dGVzCiBEYW5pZWwgQ2FsdmVsbwogVG9ueSBDYW1wYmVsbAogQnJldHQgQ2Fubm9uCiBNaWtlIENhcmx0b24KK1BpZXJyZSBDYXJyaWVyCiBUZXJyeSBDYXJyb2xsCiBMb3JlbnpvIE0uIENhdHVjY2kKIERvbm4gQ2F2ZQpAQCAtMTU0LDkgKzE2NiwxMCBAQAogSm9obiBDaGFuZGxlcgogSHllLVNoaWsgQ2hhbmcKIEplZmZyZXkgQ2hhbmcKLU1pdGNoIENoYXBtYW4KLUdyZWcgQ2hhcG1hbgorR29kZWZyb2lkIENoYXBlbGxlCiBCcmFkIENoYXBtYW4KK0dyZWcgQ2hhcG1hbgorTWl0Y2ggQ2hhcG1hbgogRGF2aWQgQ2hhdW0KIE5pY29sYXMgQ2hhdXZhdAogSmVycnkgQ2hlbgpAQCAtMTY5LDkgKzE4MiwxMSBAQAogVmFkaW0gQ2h1Z3Vub3YKIERhdmlkIENpbmVnZQogQ3JhaWcgQ2l0cm8KK0NocmlzIENsYXJrCiBNaWtlIENsYXJrc29uCiBBbmRyZXcgQ2xlZ2cKIEJyYWQgQ2xlbWVudHMKK1JvYmJpZSBDbGVtb25zCiBTdGV2ZSBDbGlmdAogTmljayBDb2dobGFuCiBKb3NoIENvZ2xpYXRpCkBAIC0xODEsOCArMTk2LDkgQEAKIEplZmZlcnkgQ29sbGlucwogUm9iZXJ0IENvbGxpbnMKIFBhdWwgQ29sb21pZXRzCi1EZW52ZXIgQ29uZXliZWFyZQorQ2hyaXN0b3BoZSBDb21iZWxsZXMKIEdlcmVteSBDb25kcmEKK0RlbnZlciBDb25leWJlYXJlCiBKdWFuIEpvc8OpIENvbnRpCiBNYXR0IENvbndheQogRGF2aWQgTS4gQ29va2UKQEAgLTIwOCw2ICsyMjQsNyBAQAogQW50b25pbyBDdW5pCiBCcmlhbiBDdXJ0aW4KIExpc2FuZHJvIERhbGNpbgorRGFycmVuIERhbGUKIEFuZHJldyBEYWxrZQogTGFycyBEYW1lcm93CiBFdmFuIERhbmRyZWEKQEAgLTIxNSwxMCArMjMyLDEzIEBACiBTY290dCBEYXZpZCBEYW5pZWxzCiBCZW4gRGFybmVsbAogSm9uYXRoYW4gRGFzdGVlbAorUGllcnJlLVl2ZXMgRGF2aWQKK1hhdmllciBkZSBHYXllCiBKb2huIERlR29vZAogTmVkIERlaWx5CiBWaW5jZW50IERlbGZ0CiBBcm5hdWQgRGVsb2JlbGxlCitLb25yYWQgRGVsb25nCiBFcmlrIERlbWFpbmUKIEpvaG4gRGVubmlzCiBSb2dlciBEZXYKQEAgLTIzMyw2ICsyNTMsNyBAQAogSHVtYmVydG8gRGlvZ2VuZXMKIFl2ZXMgRGlvbm5lCiBEYW5pZWwgRGl0dG1hcgorSm9zaXAgRGpvbG9uZ2EKIEphcm9taXIgRG9sZWNlawogSXNtYWlsIERvbm1legogTWFyY29zIERvbm9sbwpAQCAtMjUyLDExICsyNzMsMTEgQEAKIEFuZHkgRHVzdG1hbgogR2FyeSBEdXphbgogRXVnZW5lIER2dXJlY2hlbnNraQotSm9zaXAgRHpvbG9uZ2EKIE1heGltIER6dW1hbmVua28KIFdhbHRlciBEw7Zyd2FsZAogSGFucyBFY2thcmR0CiBSb2RvbHBobyBFY2toYXJkdAorSm9obiBFZG1vbmRzCiBHcmFudCBFZHdhcmRzCiBKb2huIEVocmVzbWFuCiBUYWwgRWluYXQKQEAgLTI3MiwyMSArMjkzLDI1IEBACiBNaWNoYWVsIEVybnN0CiBCZW4gRXNjb3RvCiBBbmR5IEVza2lsc3NvbgorQW5kcsOpIEVzcGF6ZQogU3RlZmFuIEVzc2VyCiBOaWNvbGFzIEVzdGliYWxzCi1TdGVwaGVuIEQgRXZhbnMKIENhcmV5IEV2YW5zCitTdGVwaGVuIEQgRXZhbnMKIFRpbSBFdmVyZXR0CiBQYXVsIEV2ZXJpdHQKIERhdmlkIEV2ZXJseQogRGFuaWVsIEV2ZXJzCitXaW5zdG9uIEV3ZXJ0CiBHcmVnIEV3aW5nCiBNYXJ0aWpuIEZhYXNzZW4KIENsb3ZpcyBGYWJyaWNpbwogQW5kcmVhcyBGYWVyYmVyCiBCaWxsIEZhbmNoZXIKK01pY2hhZWwgRmFycmVsbAogVHJveSBKLiBGYXJyZWxsCiBNYXJrIEZhdmFzCitCb3JpcyBGZWxkCiBOaWVscyBGZXJndXNvbgogU2ViYXN0aWFuIEZlcm5hbmRlegogRmxvcmlhbiBGZXN0aQpAQCAtMzAzLDkgKzMyOCwxMSBAQAogQW1hdXJ5IEZvcmdlb3QgZCdBcmMKIERvdWcgRm9ydAogSm9obiBGb3VoeQorQW5kcmV3IEZyYW5jaXMKIE1hcnRpbiBGcmFua2xpbgogUm9iaW4gRnJpZWRyaWNoCiBJdmFuIEZyb2huZQorTWF0dGhpYXMgRnVjaHMKIEppbSBGdWx0b24KIFRhZGF5b3NoaSBGdW5hYmEKIEd5cm8gRnVuY2gKQEAgLTMzOCw4ICszNjUsMTAgQEAKIEpvbmF0aGFuIEdpZGR5CiBKb2hhbm5lcyBHaWpzYmVycwogTWljaGFlbCBHaWxmaXgKK1lhbm5pY2sgR2luZ3JhcwogQ2hyaXN0b3BoIEdvaGxrZQogVGltIEdvbGRlbgorVGlhZ28gR29uw6dhbHZlcwogQ2hyaXMgR29ubmVybWFuCiBEYXZpZCBHb29kZ2VyCiBIYW5zIGRlIEdyYWFmZgpAQCAtMzUyLDE1ICszODEsMTggQEAKIE1pY2hhZWwgR3VyYXZhZ2UKIExhcnMgR3VzdMOkYmVsCiBUaG9tYXMgR8O8dHRsZXIKK0pvbmFzIEguCiBCYXJyeSBIYWRkb3cKIFBoaWxpcHAgSGFnZW1laXN0ZXIKIFBhdWwgdGVuIEhhZ2VuCiBSYXNtdXMgSGFobgogUGV0ZXIgSGFpZ2h0CiBWw6FjbGF2IEhhaXNtYW4KK1dhbGtlciBIYWxlIElWCiBCb2IgSGFsbGV5CiBKZXNzZSBIYWxsaW8KIEp1biBIYW1hbm8KK0FsZXhhbmRyZSBIYW1lbGluCiBNYXJrIEhhbW1vbmQKIE1hbnVzIEhhbmQKIE1pbHRvbiBMLiBIYW5raW5zCkBAIC0zNzAsNiArNDAyLDcgQEAKIERlcmVrIEhhcmxhbmQKIEphc29uIEhhcnBlcgogQnJpYW4gSGFycmluZworSm9uYXRoYW4gSGFydGxleQogTGFycnkgSGFzdGluZ3MKIFNoYW5lIEhhdGhhd2F5CiBSeWNoYXJkZSBIYXdrZXMKQEAgLTM4MCw2ICs0MTMsNyBAQAogTWFsdGUgSGVsbWVydAogTGFuY2UgRmlubiBIZWxzdGVuCiBKb25hdGhhbiBIZW5kcnkKK01pY2hhZWwgSGVucnkKIEphbWVzIEhlbnN0cmlkZ2UKIEthc3VuIEhlcmF0aAogQ2hyaXMgSGVyYm9ydGgKQEAgLTM5MSwxMCArNDI1LDEwIEBACiBNYWdudXMgTC4gSGV0bGFuZAogUmF5bW9uZCBIZXR0aW5nZXIKIEtldmFuIEhleWRvbgorS2Vsc2V5IEhpZ2h0b3dlcgogSmFzb24gSGlsZGVicmFuZAogUmljaGllIEhpbmRsZQogS29ucmFkIEhpbnNlbgotTWljaGFlbCBIZW5yeQogRGF2aWQgSG9ibGV5CiBUaW0gSG9jaGJlcmcKIEpvZXJnLUN5cmlsIEhvZWhsZQpAQCAtNDA2LDYgKzQ0MCw3IEBACiBHZXJyaXQgSG9sbAogU2hhbmUgSG9sbG93YXkKIFJ1bmUgSG9sbQorVGhvbWFzIEhvbG1lcwogUGhpbGlwIEhvbWJ1cmcKIE5hb2Z1bWkgSG9uZGEKIEplZmZyZXkgSG9uaWcKQEAgLTQxOSw2ICs0NTQsNyBAQAogQnJhZCBIb3dlcwogTWlrZSBIb3kKIENoaWgtSGFvIEh1YW5nCitDaHJpc3RpYW4gSHVkb24KIExhd3JlbmNlIEh1ZHNvbgogTWljaGFlbCBIdWRzb24KIEppbSBIdWd1bmluCkBAIC00MjcsNiArNDYzLDcgQEAKIEplcmVteSBIeWx0b24KIEdlcmhhcmQgSMOkcmluZwogRnJlZHJpayBIw6XDpXJkCitDYXRhbGluIElhY29iCiBNaWhhaSBJYmFuZXNjdQogTGFycyBJbW1pc2NoCiBCb2JieSBJbXBvbGxvbmlhCkBAIC00NDYsNiArNDgzLDggQEAKIEphY2sgSmFuc2VuCiBCaWxsIEphbnNzZW4KIFRob21hcyBKYXJvc2NoCitaYmlnbmlldyBKxJlkcnplamV3c2tpLVN6bWVrCitKdWxpZW4gSmVoYW5uZXQKIERyZXcgSmVua2lucwogRmxlbW1pbmcgS2rDpnIgSmVuc2VuCiBNdW5TaWMgSmVvbmcKQEAgLTQ2MSwzNiArNTAwLDM2IEBACiBSaWNoYXJkIEpvbmVzCiBJcm1lbiBkZSBKb25nCiBMdWNhcyBkZSBKb25nZQotSm9obiBKb3JnZW5zZW4KIEplbnMgQi4gSm9yZ2Vuc2VuCitKb2huIEpvcmdlbnNlbgogU2lqaW4gSm9zZXBoCiBBbmRyZWFzIEp1bmcKIFRhdHRvbyBNYWJvbnpvIEsuCiBCb2IgS2FobgogS3VydCBCLiBLYWlzZXIKIFRhbWl0byBLYWppeWFtYQorSmFuIEthbGlzemV3c2tpCiBQZXRlciB2YW4gS2FtcGVuCiBSYWZlIEthcGxhbgogSmFjb2IgS2FwbGFuLU1vc3MKLUphbiBLYWxpc3pld3NraQotQXJrYWR5IEtvcGx5YXJvdgorUGVyIMOYeXZpbmQgS2FybHNlbgogTG91IEthdGVzCiBIaXJvYWtpIEthd2FpCiBTZWJhc3RpZW4gS2VpbQogUnlhbiBLZWxseQogRGFuIEtlbmlnc2JlcmcKLVJvYmVydCBLZXJuCiBSYW5kYWxsIEtlcm4KK1JvYmVydCBLZXJuCiBNYWdudXMgS2Vzc2xlcgogTGF3cmVuY2UgS2VzdGVsb290CiBWaXZlayBLaGVyYQotQWtpcmEgS2l0YWRhCiBNYWRzIEtpaWxlcmljaAogVGFlayBKb28gS2ltCiBXLiBUcmV2b3IgS2luZwogUGF1bCBLaXBwZXMKIFN0ZXZlIEtpcnNjaAogU2ViYXN0aWFuIEtpcnNjaGUKK0FraXJhIEtpdGFkYQogUm9uIEtsYXRjaGtvCiBSZWlkIEtsZWNrbmVyCiBCYXN0aWFuIEtsZWluZWlkYW0KQEAgLTUwMyw2ICs1NDIsOSBAQAogUGF0IEtuaWdodAogR3JlZyBLb2NoYW5za2kKIERhbW9uIEtvaGxlcgorSmFjZWsgS29uaWVjem55CivQnNCw0YDQuiDQmtC+0YDQtdC90LHQtdGA0LMKK0Fya2FkeSBLb3BseWFyb3YKIFZsYWQgS29yb2xldgogSm9zZXBoIEtvc2h5CiBNYWtzaW0gS296eWFyY2h1awpAQCAtNTE2LDYgKzU1OCw3IEBACiBBbmRyZWogS3JwaWMKIEl2YW4gS3JzdGnEhwogQW5kcmV3IEt1Y2hsaW5nCitKb24gS3VobgogVmxhZGltaXIgS3VzaG5pcgogUm9zcyBMYWdlcndhbGwKIENhbWVyb24gTGFpcmQKQEAgLTUyNiwxNiArNTY5LDE4IEBACiBBbmRyZXcgTGFuZ21lYWQKIERldGxlZiBMYW5uZXJ0CiBTb3JlbiBMYXJzZW4KK0Ftb3MgTGF0dGVpZXIKIFBpZXJzIExhdWRlcgogQmVuIExhdXJpZQogU2ltb24gTGF3CiBDaHJpcyBMYXdyZW5jZQogQnJpYW4gTGVhaXIKK01hdGhpZXUgTGVkdWMtSGFtZWwKK0NocmlzdG9waGVyIExlZQorSW55ZW9sIExlZQogSmFtZXMgTGVlCiBKb2huIEouIExlZQotSW55ZW9sIExlZQogVGhvbWFzIExlZQotQ2hyaXN0b3BoZXIgTGVlCiBUZW5uZXNzZWUgTGVldXdlbmJ1cmcKIEx1YyBMZWZlYnZyZQogVmluY2VudCBMZWdvbGwKQEAgLTU0NCw5ICs1ODksMTEgQEAKIFJvYmVydCBMZWhtYW5uCiBQZXRyaSBMZWh0aW5lbgogTHVrZSBLZW5uZXRoIENhc3NvbiBMZWlnaHRvbgorVHNoZXBhbmcgTGVraG9ua2hvYmUKIE1hcmMtQW5kcmUgTGVtYnVyZwogSm9obiBMZW50b24KIENocmlzdG9waGVyIFR1ciBMZXNuaWV3c2tpLUxhYXMKK0FsYWluIExldWZyb3kKIE1hcmsgTGV2aW5zb24KIFdpbGxpYW0gTGV3aXMKIFh1YW5qaSBMaQpAQCAtNTYyLDYgKzYwOSw3IEBACiBHcmVnb3IgTGluZ2wKIE5pY2sgTG9ja3dvb2QKIFN0ZXBoYW5pZSBMb2Nrd29vZAorSHVnbyBMb3BlcyBUYXZhcmVzCiBBbm5lIExvcmQKIFRvbSBMb3JlZG8KIEp1c3RpbiBMb3ZlCkBAIC01NzUsNiArNjIzLDcgQEAKIEppbSBMeW5jaAogTWlrYWVsIEx5bmd2aWcKIE1hcnRpbiB2b24gTMO2d2lzCitHdWlsbGVybW8gTMOzcGV6LUFuZ2xhZGEKIEFuZHJldyBJIE1hY0ludHlyZQogVGltIE1hY0tlbnppZQogTmljayBNYWNsYXJlbgpAQCAtNTg2LDEyICs2MzUsMTQgQEAKIFZsYWRpbWlyIE1hcmFuZ296b3YKIERhdmlkIE1hcmVrCiBEb3VnIE1hcmllbgorU3ZlbiBNYXJuYWNoCiBBbGV4IE1hcnRlbGxpCiBBbnRob255IE1hcnRpbgogT3dlbiBNYXJ0aW4KIFPDqWJhc3RpZW4gTWFydGluaQogUm9nZXIgTWFzc2UKIE5pY2sgTWF0aGV3c29uCitTaW1vbiBNYXRoaWV1CiBHcmFoYW0gTWF0dGhld3MKIERpZXRlciBNYXVyZXIKIEFybmF1ZCBNYXppbgpAQCAtNjAyLDggKzY1Myw4IEBACiBNaWNoYWVsIE1jTGF5CiBNYXJrIE1jIE1haG9uCiBHb3Jkb24gTWNNaWxsYW4KLUNhb2xhbiBNY05hbWFyYQogQW5kcmV3IE1jTmFtYXJhCitDYW9sYW4gTWNOYW1hcmEKIENyYWlnIE1jUGhlZXRlcnMKIExhbWJlcnQgTWVlcnRlbnMKIEJpbGwgdmFuIE1lbGxlCkBAIC02MTMsNDYgKzY2NCw1MyBAQAogTHVrZSBNZXdidXJuCiBDYXJsIE1leWVyCiBNaWtlIE1leWVyCitQaW90ciBNZXllcgorQWxleGlzIE3DqXRhaXJlYXUKIFN0ZXZlbiBNaWFsZQogVHJlbnQgTWljawogU3RhbiBNaWhhaQogQXJpc3RvdGVsaXMgTWlrcm9wb3Vsb3MKLURhbWllbiBNaWxsZXIKIENoYWQgTWlsbGVyCitEYW1pZW4gTWlsbGVyCiBKYXNvbiBWLiBNaWxsZXIKIEpheSBULiBNaWxsZXIKIFJvbWFuIE1pbG5lcgorSnVsaWVuIE1pb3R0ZQogQW5kcmlpIFYuIE1pc2hrb3Zza3lpCi1EdXN0aW4gSi4gTWl0Y2hlbGwKIERvbSBNaXRjaGVsbAorRHVzdGluIEouIE1pdGNoZWxsCitadWJpbiBNaXRocmEKIERvdWcgTW9lbgogVGhlIERyYWdvbiBEZSBNb25zeW5lCiBTa2lwIE1vbnRhbmFybwogUGF1bCBNb29yZQogRGVyZWsgTW9ycgogSmFtZXMgQSBNb3JyaXNvbgorRGVyZWsgTWNUYXZpc2ggTW91bmNlCiBQYWJsbyBNb3V6bwogTWhlciBNb3ZzaXN5YW4KIFJ1c2xhbiBNc3RvaQotU2pvZXJkIE11bGxlbmRlcgorTWljaGFlbCBNdWxpY2gKIFNhcGUgTXVsbGVuZGVyCitTam9lcmQgTXVsbGVuZGVyCiBNaWNoYWVsIE11bGxlcgogTmVpbCBNdWxsZXIKK0xvdWlzIE11bnJvCiBSLiBEYXZpZCBNdXJyYXkKLVBpb3RyIE1leWVyCiBKb2huIE5hZ2xlCiBUYWthaGlybyBOYWtheWFtYQogVHJhdmVycyBOYXJhbgogQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpCiBWaWxtb3MgTmViZWhhagogRnJlZHJpayBOZWhyCi1UcmVudCBOZWxzb24KIFRvbnkgTmVsc29uCitUcmVudCBOZWxzb24KIENoYWQgTmV0emVyCiBNYXggTmV1bmjDtmZmZXIKIEdlb3JnZSBOZXZpbGxlLU5laWwKIEpvaGFubmVzIE5pY29sYWkKIFNhbXVlbCBOaWNvbGFyeQorSm9uYXRoYW4gTmllaG9mCiBHdXN0YXZvIE5pZW1leWVyCiBPc2NhciBOaWVyc3RyYXN6CiBIcnZvamUgTmlrc2ljCkBAIC02OTMsMTEgKzc1MSwxNSBAQAogQWxleGFuZHJlIFBhcmVudGVhdQogRGFuIFBhcmlzaWVuCiBIYXJyaSBQYXNhbmVuCitHYcOrbCBQYXNncmltYXVkCiBSYW5keSBQYXVzY2gKIFNhbXVlbGUgUGVkcm9uaQogTWFyY2VsIHZhbiBkZXIgUGVpamwKK0JlcmtlciBQZWtzYWcKIFN0ZXZlbiBQZW1iZXJ0b24KIFNhbnRpYWdvIFBlcmVzw7NuCitHZW9yZ2UgUGVyaXN0ZXJha2lzCitNYXRoaWV1IFBlcnJlYXVsdAogTWFyayBQZXJyZWdvCiBUcmV2b3IgUGVycmluCiBHYWJyaWVsIGRlIFBlcnRodWlzCkBAIC03MDYsNiArNzY4LDcgQEAKIEpvZSBQZXRlcnNvbgogQ2hyaXMgUGV0cmlsbGkKIEJqb3JuIFBldHRlcnNlbgorUm9ubnkgUGZhbm5zY2htaWR0CiBHZW9mZiBQaGlsYnJpY2sKIEdhdnJpZSBQaGlsaXBzb24KIEFkcmlhbiBQaGlsbGlwcwpAQCAtNzIxLDYgKzc4NCw3IEBACiBBbnRvaW5lIFBpdHJvdQogSmVhbi1GcmFuw6dvaXMgUGnDqXJvbm5lCiBPbGVnIFBsYWtob3RueXVrCitSZW1pIFBvaW50ZWwKIEd1aWxoZXJtZSBQb2xvCiBNaWNoYWVsIFBvbXJhbmluZwogSXVzdGluIFBvcApAQCAtNzI5LDEzICs3OTMsMTUgQEAKIEFtcml0IFByZW0KIFBhdWwgUHJlc2NvZAogRG9ub3ZhbiBQcmVzdG9uCitQYXVsIFByaWNlCiBKeXJraSBQdWxsaWFpbmVuCiBTdGV2ZSBQdXJjZWxsCi1GZXJuYW5kbyBQw6lyZXoKIEVkdWFyZG8gUMOpcmV6CitGZXJuYW5kbyBQw6lyZXoKIFBpZXJyZSBRdWVudGVsCiBCcmlhbiBRdWlubGFuCiBBbmRlcnMgUXZpc3QKK0rDqXLDtG1lIFJhZGl4CiBCdXJ0b24gUmFkb25zCiBKZWZmIFJhbW5hbmkKIEJyb2RpZSBSYW8KQEAgLTc1NywxMCArODIzLDEyIEBACiBCZXJuaGFyZCBSZWl0ZXIKIFN0ZXZlbiBSZWl6CiBSb2VsYW5kIFJlbmdlbGluawotVGltIFJpY2UKK0FudG9pbmUgUmV2ZXJzYXQKIEZyYW5jZXNjbyBSaWNjaWFyZGkKK1RpbSBSaWNlCiBKYW4gUGlldGVyIFJpZWdlbAogQXJtaW4gUmlnbworQXJjIFJpbGV5CiBOaWNob2xhcyBSaWxleQogSmVhbi1DbGF1ZGUgUmltYmF1bHQKIFZsYWQgUmlzY3V0aWEKQEAgLTc2OCwxNiArODM2LDIwIEBACiBEYXZpZGUgUml6em8KIEFudGhvbnkgUm9hY2gKIE1hcmsgUm9iZXJ0cwotSmltIFJvYmluc29uCiBBbmR5IFJvYmluc29uCitKaW0gUm9iaW5zb24KIE1hcmsgUm9kZHkKIEtldmluIFJvZGdlcnMKIEdpYW1wYW9sbyBSb2RvbGEKK0Vsc29uIFJvZHJpZ3VlegorTHVpcyBSb2phcwogTWlrZSBSb21iZXJnCiBBcm1pbiBSb25hY2hlcgogQ2FzZSBSb29sZQogVGltb3RoeSBSb3Njb2UKK0VyaWsgUm9zZQogSmltIFJvc2tpbmQKK0JyaWFuIFJvc25lcgogSnVzdCB2YW4gUm9zc3VtCiBIdWdvIHZhbiBSb3NzdW0KIFNhc2tpYSB2YW4gUm9zc3VtCkBAIC03OTMsNyArODY1LDkgQEAKIEplZmYgUnVzaAogU2FtIFJ1c2hpbmcKIE1hcmsgUnVzc2VsbAorUnVzdHkgUnVzc2VsbAogTmljayBSdXNzbworUGF0cmljayBTYWJpbgogU8OpYmFzdGllbiBTYWJsw6kKIFN1bWFuIFNhaGEKIEhhamltZSBTYWl0b3UKQEAgLTgyNCwxNCArODk4LDE1IEBACiBTdGVmYW4gU2Nod2FyemVyCiBEaWV0bWFyIFNjaHdlcnRiZXJnZXIKIEZlZGVyaWNvIFNjaHdpbmR0Ci1TdGV2ZW4gU2NvdHQKIEJhcnJ5IFNjb3R0CitTdGV2ZW4gU2NvdHQKIE5pY2sgU2VpZGVubWFuCiDFvWlnYSBTZWlsbmFjaAogWXVyeSBTZWxpdmFub3YKIEZyZWQgU2VsbHMKIEppd29uIFNlbwotUm9nZXIgU2Vyd3kKK0nDsWlnbyBTZXJuYQorUm9nZXIgRC4gU2Vyd3kKIEplcnJ5IFNldXR0ZXIKIERlbmlzIFNldmVyc29uCiBJYW4gU2V5ZXIKQEAgLTg0OCwxNyArOTIzLDIxIEBACiBQYXVsIFNpamJlbgogS2lyaWxsIFNpbW9ub3YKIE5hdGhhbiBQYXVsIFNpbW9ucworQWRhbSBTaW1wa2lucwogSmFubmUgU2lua2tvbmVuCiBHZW9yZ2UgU2lwZQogSi4gU2lwcHJlbGwKIEtyYWdlbiBTaXRha2VyCi1FcmljIFYuIFNtaXRoCiBDaHJpc3RvcGhlciBTbWl0aAorRXJpYyBWLiBTbWl0aAogR3JlZ29yeSBQLiBTbWl0aAorTWFyayBTbWl0aAogUmFmYWwgU21vdHJ6eWsKK0VyaWMgU25vdwogRGlyayBTb2VkZQogUGF1bCBTb2tvbG92c2t5CiBDb2R5IFNvbWVydmlsbGUKK0Vkb2FyZG8gU3BhZG9saW5pCiBDbGF5IFNwZW5jZQogU3RlZmFuIFNwZXJsaW5nCiBQZXIgU3BpbGxpbmcKQEAgLTg2OCw5ICs5NDcsMTEgQEAKIFJhakdvcGFsIFNyaW5pdmFzYW4KIFF1ZW50aW4gU3RhZmZvcmQtRnJhc2VyCiBGcmFuayBTdGFqYW5vCitKb2VsIFN0YW5sZXkKIE9saXZlciBTdGVlbGUKIEdyZWcgU3RlaW4KIENocmlzIFN0ZXJuCitBbGV4IFN0ZXdhcnQKIFZpY3RvciBTdGlubmVyCiBSaWNoYXJkIFN0b2FrbGV5CiBQZXRlciBTdG9laHIKQEAgLTg5Niw4ICs5NzcsOCBAQAogV2lsbGlhbSBUYW5rc2xleQogQ2hyaXN0aWFuIFRhbnplcgogU3RldmVuIFRhc2NodWsKLU1vbnR5IFRheWxvcgogQW15IFRheWxvcgorTW9udHkgVGF5bG9yCiBBbmF0b2x5IFRlY2h0b25pawogTWlraGFpbCBUZXJla2hvdgogUmljaGFyZCBNLiBUZXcKQEAgLTkxNCwxMyArOTk1LDE2IEBACiBKYXNvbiBUaXNobGVyCiBDaHJpc3RpYW4gVGlzbWVyCiBGcmFuayBKLiBUb2JpbgotUiBMaW5kc2F5IFRvZGQKIEJlbm5ldHQgVG9kZAorUiBMaW5kc2F5IFRvZGQKK0V1Z2VuZSBUb2RlcgogRXJpayBUb2xsZXJ1ZAogTWF0aWFzIFRvcmNoaW5za3kKIFNhbmRybyBUb3NpCiBSaWNoYXJkIFRvd25zZW5kCitEYXZpZCBUb3duc2hlbmQKIExhdXJlbmNlIFRyYXR0CitNYXR0aGlhcyBUcm9mZmFlcwogSm9obiBUcm9tcAogSmFzb24gVHJvd2JyaWRnZQogQW50aG9ueSBUdWluaW5nYQpAQCAtOTg0LDEwICsxMDY4LDEwIEBACiBHZXJyeSBXaWVuZXIKIEZyYW5rIFdpZXJ6Ymlja2kKIEJyeWNlICJab29rbyIgV2lsY294LU8nSGVhcm4KK0dlcmFsZCBTLiBXaWxsaWFtcwogSmFzb24gV2lsbGlhbXMKIEpvaG4gV2lsbGlhbXMKIFN1ZSBXaWxsaWFtcwotR2VyYWxkIFMuIFdpbGxpYW1zCiBGcmFuayBXaWxsaXNvbgogR3JlZyBWLiBXaWxzb24KIEpvZHkgV2luc3RvbgpAQCAtMTAwNCw4ICsxMDg4LDkgQEAKIEtsYXVzLUp1ZXJnZW4gV29sZgogRGFuIFdvbGZlCiBSaWNoYXJkIFdvbGZmCi1EYXJyZW4gV29ycmFsbAorQWRhbSBXb29kYmVjawogR29yZG9uIFdvcmxleQorRGFycmVuIFdvcnJhbGwKIFRob21hcyBXb3V0ZXJzCiBIZWlrbyBXdW5kcmFtCiBEb3VnIFd5YXR0CmRpZmYgLS1naXQgYS9NaXNjL05FV1MgYi9NaXNjL05FV1MKaW5kZXggMGYwNDc5Yy4uZjAwNzM4YiAxMDA2NDQKLS0tIGEvTWlzYy9ORVdTCisrKyBiL01pc2MvTkVXUwpAQCAtMiwxMCArMiwxMCBAQAogUHl0aG9uIE5ld3MKICsrKysrKysrKysrCiAKLVdoYXQncyBOZXcgaW4gUHl0aG9uIDMuMi4zPwotPT09PT09PT09PT09PT09PT09PT09PT09PT09CitXaGF0J3MgTmV3IGluIFB5dGhvbiAzLjMgQWxwaGEgMT8KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCi0qUmVsZWFzZSBkYXRlOiBYWC1YWFgtMjAxMSoKKypSZWxlYXNlIGRhdGU6IFhYLVhYWC0yMFhYKgogCiBDb3JlIGFuZCBCdWlsdGlucwogLS0tLS0tLS0tLS0tLS0tLS0KQEAgLTE1LDYgKzE1LDkgQEAKIC0gSXNzdWUgIzExMjM1OiBGaXggT3ZlcmZsb3dFcnJvciB3aGVuIHRyeWluZyB0byBpbXBvcnQgYSBzb3VyY2UgZmlsZSB3aG9zZQogICBtb2RpZmljYXRpb24gdGltZSBkb2Vzbid0IGZpdCBpbiBhIDMyLWJpdCB0aW1lc3RhbXAuCiAKKy0gSXNzdWUgIzEyNzA1OiBBIFN5bnRheEVycm9yIGV4Y2VwdGlvbiBpcyBub3cgcmFpc2VkIHdoZW4gYXR0ZW1wdGluZyB0bworICBjb21waWxlIG11bHRpcGxlIHN0YXRlbWVudHMgYXMgYSBzaW5nbGUgaW50ZXJhY3RpdmUgc3RhdGVtZW50LgorCiAtIEZpeCB0aGUgYnVpbHRpbiBtb2R1bGUgaW5pdGlhbGl6YXRpb24gY29kZSB0byBzdG9yZSB0aGUgaW5pdCBmdW5jdGlvbiBmb3IKICAgZnV0dXJlIHJlaW5pdGlhbGl6YXRpb24uCiAKQEAgLTI2LDYgKzI5LDM3IEBACiAtIElzc3VlICMxMzYyOTogUmVudW1iZXIgdGhlIHRva2VucyBpbiB0b2tlbi5oIHNvIHRoYXQgdGhleSBtYXRjaCB0aGUgaW5kZXhlcwogICBpbnRvIF9QeVBhcnNlcl9Ub2tlbk5hbWVzLgogCistIElzc3VlICMxMzc1MjogQWRkIGEgY2FzZWZvbGQoKSBtZXRob2QgdG8gc3RyLgorCistIElzc3VlICMxMzc2MTogQWRkIGEgImZsdXNoIiBrZXl3b3JkIGFyZ3VtZW50IHRvIHRoZSBwcmludCgpIGZ1bmN0aW9uLAorICB1c2VkIHRvIGVuc3VyZSBmbHVzaGluZyB0aGUgb3V0cHV0IHN0cmVhbS4KKworLSBJc3N1ZSAjMTM2NDU6IHB5YyBmaWxlcyBub3cgY29udGFpbiB0aGUgc2l6ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBzb3VyY2UKKyAgY29kZSwgdG8gYXZvaWQgdGltZXN0YW1wIGNvbGxpc2lvbnMgKGVzcGVjaWFsbHkgb24gZmlsZXN5c3RlbXMgd2l0aCBhIGxvdworICB0aW1lc3RhbXAgcmVzb2x1dGlvbikgd2hlbiBjaGVja2luZyBmb3IgZnJlc2huZXNzIG9mIHRoZSBieXRlY29kZS4KKworLSBQRVAgMzgwLCBJc3N1ZSAjMTE2ODI6IEFkZCAieWllbGQgZnJvbSA8eD4iIHRvIHN1cHBvcnQgZWFzeSBkZWxlZ2F0aW9uIHRvCisgIHN1YmdlbmVyYXRvcnMgKGluaXRpYWwgcGF0Y2ggYnkgR3JlZyBFd2luZywgaW50ZWdyYXRpb24gaW50byAzLjMgYnkKKyAgUmVuYXVkIEJsYW5jaCwgUnlhbiBLZWxseSwgWmJpZ25pZXcgSsSZZHJ6ZWpld3NraS1Tem1layBhbmQgTmljayBDb2dobGFuKQorCistIElzc3VlICMxMzc0ODogUmF3IGJ5dGVzIGxpdGVyYWxzIGNhbiBub3cgYmUgd3JpdHRlbiB3aXRoIHRoZSBgYHJiYGAgcHJlZml4CisgIGFzIHdlbGwgYXMgYGBicmBgLgorCistIElzc3VlICMxMjczNjogVXNlIGZ1bGwgdW5pY29kZSBjYXNlIG1hcHBpbmdzIGZvciB1cHBlciwgbG93ZXIsIGFuZCB0aXRsZSBjYXNlLgorCistIElzc3VlICMxMjc2MDogQWRkIGEgY3JlYXRlIG1vZGUgdG8gb3BlbigpLiBQYXRjaCBieSBEYXZpZCBUb3duc2hlbmQuCisKKy0gSXNzdWUgIzEzNzM4OiBTaW1wbGlmeSBpbXBsZW1lbnRhdGlvbiBvZiBieXRlcy5sb3dlcigpIGFuZCBieXRlcy51cHBlcigpLgorCistIElzc3VlICMxMzU3NzogQnVpbHQtaW4gbWV0aG9kcyBhbmQgZnVuY3Rpb25zIG5vdyBoYXZlIGEgX19xdWFsbmFtZV9fLgorICBQYXRjaCBieSBzYnQuCisKKy0gSXNzdWUgIzY2OTU6IEZ1bGwgZ2FyYmFnZSBjb2xsZWN0aW9uIHJ1bnMgbm93IGNsZWFyIHRoZSBmcmVlbGlzdCBvZiBzZXQKKyAgb2JqZWN0cy4gIEluaXRpYWwgcGF0Y2ggYnkgTWF0dGhpYXMgVHJvZmZhZXMuCisKKy0gRml4IE9TRXJyb3IuX19pbml0X18gYW5kIE9TRXJyb3IuX19uZXdfXyBzbyB0aGF0IGVhY2ggb2YgdGhlbSBjYW4gYmUKKyAgb3ZlcnJpZGVuIGFuZCB0YWtlIGFkZGl0aW9uYWwgYXJndW1lbnRzIChmb2xsb3d1cCB0byBpc3N1ZSAjMTI1NTUpLgorCiAtIEZpeCB0aGUgZml4IGZvciBpc3N1ZSAjMTIxNDk6IGl0IHdhcyBpbmNvcnJlY3QsIGFsdGhvdWdoIGl0IGhhZCB0aGUgc2lkZQogICBlZmZlY3Qgb2YgYXBwZWFyaW5nIHRvIHJlc29sdmUgdGhlIGlzc3VlLiAgVGhhbmtzIHRvIE1hcmsgU2hhbm5vbiBmb3IKICAgbm90aWNpbmcuCkBAIC0zNiwyNyArNzAsNjkgQEAKIC0gSXNzdWUgIzExMTQ3OiBGaXggYW4gdW51c2VkIGFyZ3VtZW50IGluIF9QeV9BTk5PVEFURV9NRU1PUllfT1JERVIuICAoRml4CiAgIGdpdmVuIGJ5IENhbXBiZWxsIEJhcnRvbikuCiAKKy0gSXNzdWUgIzEzNTAzOiBVc2UgYSBtb3JlIGVmZmljaWVudCByZWR1Y3Rpb24gZm9ybWF0IGZvciBieXRlYXJyYXlzIHdpdGgKKyAgcGlja2xlIHByb3RvY29sID49IDMuICBUaGUgb2xkIHJlZHVjdGlvbiBmb3JtYXQgaXMga2VwdCB3aXRoIG9sZGVyIHByb3RvY29scworICBpbiBvcmRlciB0byBhbGxvdyB1bnBpY2tsaW5nIHVuZGVyIFB5dGhvbiAyLiAgUGF0Y2ggYnkgSXJtZW4gZGUgSm9uZy4KKwogLSBJc3N1ZSAjNzExMTogUHl0aG9uIGNhbiBub3cgYmUgcnVuIHdpdGhvdXQgYSBzdGRpbiwgc3Rkb3V0IG9yIHN0ZGVycgogICBzdHJlYW0uICBJdCB3YXMgYWxyZWFkeSB0aGUgY2FzZSB3aXRoIFB5dGhvbiAyLiAgSG93ZXZlciwgdGhlIGNvcnJlc3BvbmRpbmcKICAgc3lzIG1vZHVsZSBlbnRyaWVzIGFyZSBub3cgc2V0IHRvIE5vbmUgKGluc3RlYWQgb2YgYW4gdW51c2FibGUgZmlsZSBvYmplY3QpLgogCistIElzc3VlICMxMTg0OTogRW5zdXJlIHRoYXQgZnJlZSgpZCBtZW1vcnkgYXJlbmFzIGFyZSByZWFsbHkgcmVsZWFzZWQKKyAgb24gUE9TSVggc3lzdGVtcyBzdXBwb3J0aW5nIGFub255bW91cyBtZW1vcnkgbWFwcGluZ3MuICBQYXRjaCBieQorICBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCisKKy0gSXNzdWUgIzEzNDUyOiBQeVVuaWNvZGVfRW5jb2RlRGVjaW1hbCgpIGRvZXNuJ3Qgc3VwcG9ydCBlcnJvciBoYW5kbGVycworICBkaWZmZXJlbnQgdGhhbiAic3RyaWN0IiBhbnltb3JlLiBUaGUgY2FsbGVyIHdhcyB1bmFibGUgdG8gY29tcHV0ZSB0aGUKKyAgc2l6ZSBvZiB0aGUgb3V0cHV0IGJ1ZmZlcjogaXQgZGVwZW5kcyBvbiB0aGUgZXJyb3IgaGFuZGxlci4KKworLSBQRVAgMzE1NSAvIGlzc3VlICMxMzQ0ODogUXVhbGlmaWVkIG5hbWUgZm9yIGNsYXNzZXMgYW5kIGZ1bmN0aW9ucy4KKwogLSBJc3N1ZSAjMTM0MzY6IEZpeCBhIGJvZ3VzIGVycm9yIG1lc3NhZ2Ugd2hlbiBhbiBBU1Qgb2JqZWN0IHdhcyBwYXNzZWQKICAgYW4gaW52YWxpZCBpbnRlZ2VyIHZhbHVlLgogCistIElzc3VlICMxMzQxMTogbWVtb3J5dmlldyBvYmplY3RzIGFyZSBub3cgaGFzaGFibGUgd2hlbiB0aGUgdW5kZXJseWluZworICBvYmplY3QgaXMgaGFzaGFibGUuCisKIC0gSXNzdWUgIzEzMzM4OiBIYW5kbGUgYWxsIGVudW1lcmF0aW9ucyBpbiBfUHlfQU5OT1RBVEVfTUVNT1JZX09SREVSCiAgIHRvIGFsbG93IGNvbXBpbGluZyBleHRlbnNpb24gbW9kdWxlcyB3aXRoIC1Xc3dpdGNoLWVudW0gb24gZ2NjLgogICBJbml0aWFsIHBhdGNoIGJ5IEZsb3JpcyBCcnV5bm9vZ2hlLgogCistIElzc3VlICMxMDIyNzogQWRkIGFuIGFsbG9jYXRpb24gY2FjaGUgZm9yIGEgc2luZ2xlIHNsaWNlIG9iamVjdC4gIFBhdGNoIGJ5CisgIFN0ZWZhbiBCZWhuZWwuCisKKy0gSXNzdWUgIzEzMzkzOiBCdWZmZXJlZFJlYWRlci5yZWFkMSgpIG5vdyBhc2tzIHRoZSBmdWxsIHJlcXVlc3RlZCBzaXplIHRvCisgIHRoZSByYXcgc3RyZWFtIGluc3RlYWQgb2YgbGltaXRpbmcgaXRzZWxmIHRvIHRoZSBidWZmZXIgc2l6ZS4KKworLSBJc3N1ZSAjMTMzOTI6IFdyaXRpbmcgYSBweWMgZmlsZSBzaG91bGQgbm93IGJlIGF0b21pYyB1bmRlciBXaW5kb3dzIGFzIHdlbGwuCisKIC0gSXNzdWUgIzEzMzMzOiBUaGUgVVRGLTcgZGVjb2RlciBub3cgYWNjZXB0cyBsb25lIHN1cnJvZ2F0ZXMgKHRoZSBlbmNvZGVyCiAgIGFscmVhZHkgYWNjZXB0cyB0aGVtKS4KIAorLSBJc3N1ZSAjMTMzODk6IEZ1bGwgZ2FyYmFnZSBjb2xsZWN0aW9uIHBhc3NlcyBub3cgY2xlYXIgdGhlIGZyZWVsaXN0cyBmb3IKKyAgbGlzdCBhbmQgZGljdCBvYmplY3RzLiAgVGhleSBhbHJlYWR5IGNsZWFyZWQgb3RoZXIgZnJlZWxpc3RzIGluIHRoZQorICBpbnRlcnByZXRlci4KKworLSBJc3N1ZSAjMTMzMjc6IFJlbW92ZSB0aGUgbmVlZCBmb3IgYW4gZXhwbGljaXQgTm9uZSBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50CisgIHRvIG9zLnV0aW1lLCBvcy5sdXRpbWVzLCBvcy5mdXRpbWVzLCBvcy5mdXRpbWVucywgb3MuZnV0aW1lc2F0LCBpbgorICBvcmRlciB0byB1cGRhdGUgdG8gdGhlIGN1cnJlbnQgdGltZS4gQWxzbyBhZGRlZCBrZXl3b3JkIGFyZ3VtZW50CisgIGhhbmRsaW5nIHRvIG9zLnV0aW1lbnNhdCBpbiBvcmRlciB0byByZW1vdmUgdGhlIG5lZWQgZm9yIGV4cGxpY2l0IE5vbmUuCisKKy0gSXNzdWUgIzEzMzUwOiBTaW1wbGlmeSBzb21lIEMgY29kZSBieSByZXBsYWNpbmcgbW9zdCB1c2FnZXMgb2YKKyAgUHlVbmljb2RlX0Zvcm1hdCBieSBQeVVuaWNvZGVfRnJvbUZvcm1hdC4KKwogLSBJc3N1ZSAjMTMzNDI6IGlucHV0KCkgdXNlZCB0byBpZ25vcmUgc3lzLnN0ZGluJ3MgYW5kIHN5cy5zdGRvdXQncyB1bmljb2RlCiAgIGVycm9yIGhhbmRsZXIgaW4gaW50ZXJhY3RpdmUgbW9kZSAod2hlbiBjYWxsaW5nIGludG8gUHlPU19SZWFkbGluZSgpKS4KIAorLSBJc3N1ZSAjOTg5NjogQWRkIHN0YXJ0LCBzdG9wLCBhbmQgc3RlcCBhdHRyaWJ1dGVzIHRvIHJhbmdlIG9iamVjdHMuCisKIC0gSXNzdWUgIzEzMzQzOiBGaXggYSBTeXN0ZW1FcnJvciB3aGVuIGEgbGFtYmRhIGV4cHJlc3Npb24gdXNlcyBhIGdsb2JhbAogICB2YXJpYWJsZSBpbiB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBhIGtleXdvcmQtb25seSBhcmd1bWVudDoKICAgKGxhbWJkYSAqLCBhcmc9R0xPQkFMX05BTUU6IE5vbmUpCiAKKy0gSXNzdWUgIzEyNzk3OiBBZGRlZCBjdXN0b20gb3BlbmVyIHBhcmFtZXRlciB0byBidWlsdGluIG9wZW4oKSBhbmQKKyAgRmlsZUlPLm9wZW4oKS4KKwogLSBJc3N1ZSAjMTA1MTk6IEF2b2lkIHVubmVjZXNzYXJ5IHJlY3Vyc2l2ZSBmdW5jdGlvbiBjYWxscyBpbgogICBzZXRvYmplY3QuYy4KIApAQCAtNjUsMjEgKzE0MSw0MyBAQAogLSBJc3N1ZSAjMTMwMTg6IEZpeCByZWZlcmVuY2UgbGVha3MgaW4gZXJyb3IgcGF0aHMgaW4gZGljdG9iamVjdC5jLgogICBQYXRjaCBieSBTdW1hbiBTYWhhLgogCistIElzc3VlICMxMzIwMTogRGVmaW5lICc9PScgYW5kICchPScgdG8gY29tcGFyZSByYW5nZSBvYmplY3RzIGJhc2VkIG9uCisgIHRoZSBzZXF1ZW5jZSBvZiB2YWx1ZXMgdGhleSBkZWZpbmUgKGluc3RlYWQgb2YgY29tcGFyaW5nIGJhc2VkIG9uCisgIG9iamVjdCBpZGVudGl0eSkuCisKIC0gSXNzdWUgIzEyOTQyMzI6IEluIGEgZmV3IGNhc2VzIGludm9sdmluZyBtZXRhY2xhc3MgaW5oZXJpdGFuY2UsIHRoZQogICBpbnRlcnByZXRlciB3b3VsZCBzb21ldGltZXMgaW52b2tlIHRoZSB3cm9uZyBtZXRhY2xhc3Mgd2hlbiBidWlsZGluZyBhIG5ldwogICBjbGFzcyBvYmplY3QuIFRoZXNlIGNhc2VzIG5vdyBiZWhhdmUgY29ycmVjdGx5LiBQYXRjaCBieSBEYW5pZWwgVXJiYW4uCiAKKy0gSXNzdWUgIzEyNzUzOiBBZGQgc3VwcG9ydCBmb3IgVW5pY29kZSBuYW1lIGFsaWFzZXMgYW5kIG5hbWVkIHNlcXVlbmNlcy4KKyAgQm90aCA6ZnVuYzpgdW5pY29kZWRhdGEubG9va3VwKClgIGFuZCAnXE57Li4ufScgbm93IHJlc29sdmUgYWxpYXNlcywKKyAgYW5kIDpmdW5jOmB1bmljb2RlZGF0YS5sb29rdXAoKWAgcmVzb2x2ZXMgbmFtZWQgc2VxdWVuY2VzIHRvby4KKworLSBJc3N1ZSAjMTIxNzA6IFRoZSBjb3VudCgpLCBmaW5kKCksIHJmaW5kKCksIGluZGV4KCkgYW5kIHJpbmRleCgpIG1ldGhvZHMKKyAgb2YgYnl0ZXMgYW5kIGJ5dGVhcnJheSBvYmplY3RzIG5vdyBhY2NlcHQgYW4gaW50ZWdlciBiZXR3ZWVuIDAgYW5kIDI1NQorICBhcyB0aGVpciBmaXJzdCBhcmd1bWVudC4gIFBhdGNoIGJ5IFBldHJpIExlaHRpbmVuLgorCiAtIElzc3VlICMxMjYwNDogVlRSQUNFIG1hY3JvIGV4cGFuZGVkIHRvIG5vLW9wIGluIF9zcmUuYyB0byBhdm9pZCBjb21waWxlcgogICB3YXJuaW5ncy4gUGF0Y2ggYnkgSm9zaCBUcmlwbGV0dCBhbmQgUGV0cmkgTGVodGluZW4uCiAKKy0gSXNzdWUgIzEyMjgxOiBSZXdyaXRlIHRoZSBNQkNTIGNvZGVjIHRvIGhhbmRsZSBjb3JyZWN0bHkgcmVwbGFjZSBhbmQgaWdub3JlCisgIGVycm9yIGhhbmRsZXJzIG9uIGFsbCBXaW5kb3dzIHZlcnNpb25zLiBUaGUgTUJDUyBjb2RlYyBpcyBub3cgc3VwcG9ydGluZyBhbGwKKyAgZXJyb3IgaGFuZGxlcnMsIGluc3RlYWQgb2Ygb25seSByZXBsYWNlIHRvIGVuY29kZSBhbmQgaWdub3JlIHRvIGRlY29kZS4KKwogLSBJc3N1ZSAjMTMxODg6IFdoZW4gY2FsbGVkIHdpdGhvdXQgYW4gZXhwbGljaXQgdHJhY2ViYWNrIGFyZ3VtZW50LAogICBnZW5lcmF0b3IudGhyb3coKSBub3cgZ2V0cyB0aGUgdHJhY2ViYWNrIGZyb20gdGhlIHBhc3NlZCBleGNlcHRpb24ncwogICBgYF9fdHJhY2ViYWNrX19gYCBhdHRyaWJ1dGUuICBQYXRjaCBieSBQZXRyaSBMZWh0aW5lbi4KIAorLSBJc3N1ZSAjMTMxNDY6IFdyaXRpbmcgYSBweWMgZmlsZSBpcyBub3cgYXRvbWljIHVuZGVyIFBPU0lYLgorCiAtIElzc3VlICM3ODMzOiBFeHRlbnNpb24gbW9kdWxlcyBidWlsdCB1c2luZyBkaXN0dXRpbHMgb24gV2luZG93cyB3aWxsIG5vCiAgIGxvbmdlciBpbmNsdWRlIGEgIm1hbmlmZXN0IiB0byBwcmV2ZW50IHRoZW0gZmFpbGluZyBhdCBpbXBvcnQgdGltZSBpbiBzb21lCiAgIGVtYmVkZGVkIHNpdHVhdGlvbnMuCiAKKy0gUEVQIDMxNTEgLyBpc3N1ZSAjMTI1NTU6IHJld29ya2luZyB0aGUgT1MgYW5kIElPIGV4Y2VwdGlvbiBoaWVyYXJjaHkuCisKKy0gQWRkIGludGVybmFsIEFQSSBmb3Igc3RhdGljIHN0cmluZ3MgKF9QeV9pZGVudGlmaWVyIGV0IGFsLikuCisKIC0gSXNzdWUgIzEzMDYzOiB0aGUgV2luZG93cyBlcnJvciBFUlJPUl9OT19EQVRBIChudW1iZXJlZCAyMzIgYW5kIGRlc2NyaWJlZAogICBhcyAiVGhlIHBpcGUgaXMgYmVpbmcgY2xvc2VkIikgaXMgbm93IG1hcHBlZCB0byBQT1NJWCBlcnJubyBFUElQRQogICAocHJldmlvdXNseSBFSU5WQUwpLgpAQCAtODcsNiArMTg1LDEzIEBACiAtIElzc3VlICMxMjkxMTogRml4IG1lbW9yeSBjb25zdW1wdGlvbiB3aGVuIGNhbGN1bGF0aW5nIHRoZSByZXByKCkgb2YgaHVnZQogICB0dXBsZXMgb3IgbGlzdHMuCiAKKy0gUEVQIDM5MzogZmxleGlibGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uLiBUaGFua3MgdG8gVG9yc3RlbiBCZWNrZXIgZm9yIHRoZQorICBpbml0aWFsIGltcGxlbWVudGF0aW9uLCBhbmQgVmljdG9yIFN0aW5uZXIgZm9yIHZhcmlvdXMgYnVnIGZpeGVzLgorCistIElzc3VlICMxMzAxMjogVGhlICdrZWVwZW5kcycgcGFyYW1ldGVyIHRvIHN0ci5zcGxpdGxpbmVzIG1heSBub3cgYmUgcGFzc2VkCisgIGFzIGEga2V5d29yZCBhcmd1bWVudDogICJteV9zdHJpbmcuc3BsaXRsaW5lcyhrZWVwZW5kcz1UcnVlKSIuICBUaGUgc2FtZQorICBjaGFuZ2UgYWxzbyBhcHBsaWVzIHRvIGJ5dGVzLnNwbGl0bGluZXMgYW5kIGJ5dGVhcnJheS5zcGxpdGxpbmVzLgorCiAtIElzc3VlICM3NzMyOiBEb24ndCBvcGVuIGEgZGlyZWN0b3J5IGFzIGEgZmlsZSBhbnltb3JlIHdoaWxlIGltcG9ydGluZyBhCiAgIG1vZHVsZS4gSWdub3JlIHRoZSBkaXJlY290cnkgaWYgaXRzIG5hbWUgbWF0Y2hzIHRoZSBtb2R1bGUgbmFtZSAoZS5nLgogICAiX19pbml0X18ucHkiKSBhbmQgcmFpc2UgYSBJbXBvcnRFcnJvciBpbnN0ZWFkLgpAQCAtOTgsNiArMjAzLDkgQEAKICAgbGlzdF9yZXBlYXQgKGxpc3RvYmplY3QuYykgYW5kIGlzbGljZV9uZXh0IChpdGVydG9vbHNtb2R1bGUuYykuICBUaGVzZSBidWdzCiAgIGNhdXNlZCB0ZXN0IGZhaWx1cmVzIHdpdGggcmVjZW50IHZlcnNpb25zIG9mIENsYW5nLgogCistIElzc3VlICMxMjkwNDogb3MudXRpbWUsIG9zLmZ1dGltZXMsIG9zLmx1dGltZXMsIGFuZCBvcy5mdXRpbWVzYXQgbm93IHdyaXRlCisgIGF0aW1lIGFuZCBtdGltZSB3aXRoIG5hbm9zZWNvbmQgcHJlY2lzaW9uIG9uIG1vZGVybiBQT1NJWCBwbGF0Zm9ybXMuCisKIC0gSXNzdWUgIzEyODAyOiB0aGUgV2luZG93cyBlcnJvciBFUlJPUl9ESVJFQ1RPUlkgKG51bWJlcmVkIDI2NykgaXMgbm93CiAgIG1hcHBlZCB0byBQT1NJWCBlcnJubyBFTk9URElSIChwcmV2aW91c2x5IEVJTlZBTCkuCiAKQEAgLTEwNyw5ICsyMTUsMjUxIEBACiAtIElzc3VlICMxMjc5MTogQnJlYWsgcmVmZXJlbmNlIGN5Y2xlcyBlYXJseSB3aGVuIGEgZ2VuZXJhdG9yIGV4aXRzIHdpdGgKICAgYW4gZXhjZXB0aW9uLgogCistIElzc3VlICMxMjc3MzogTWFrZSBfX2RvY19fIG11dGFibGUgb24gdXNlci1kZWZpbmVkIGNsYXNzZXMuCisKKy0gSXNzdWUgIzEyNzY2OiBSYWlzZSBhIFZhbHVlRXJyb3Igd2hlbiBjcmVhdGluZyBhIGNsYXNzIHdpdGggYSBjbGFzcyB2YXJpYWJsZQorICB0aGF0IGNvbmZsaWN0cyB3aXRoIGEgbmFtZSBpbiBfX3Nsb3RzX18uCisKIC0gSXNzdWUgIzEyMjY2OiBGaXggc3RyLmNhcGl0YWxpemUoKSB0byBjb3JyZWN0bHkgdXBwZXJjYXNlL2xvd2VyY2FzZQogICB0aXRsZWNhc2VkIGFuZCBjYXNlZCBub24tbGV0dGVyIGNoYXJhY3RlcnMuCiAKKy0gSXNzdWUgIzEyNzMyOiBJbiBuYXJyb3cgdW5pY29kZSBidWlsZHMsIGFsbG93IFVuaWNvZGUgaWRlbnRpZmllcnMgd2hpY2ggZmFsbAorICBvdXRzaWRlIHRoZSBCTVAuCisKKy0gSXNzdWUgIzEyNTc1OiBWYWxpZGF0ZSB1c2VyLWdlbmVyYXRlZCBBU1QgYmVmb3JlIGl0IGlzIGNvbXBpbGVkLgorCistIE1ha2UgdHlwZShOb25lKSwgdHlwZShFbGxpcHNpcyksIGFuZCB0eXBlKE5vdEltcGxlbWVudGVkKSBjYWxsYWJsZS4gVGhleQorICByZXR1cm4gdGhlIHJlc3BlY3RpdmUgc2luZ2xldG9uIGluc3RhbmNlcy4KKworLSBGb3JiaWQgc3VtbWluZyBieXRlcyB3aXRoIHN1bSgpLgorCistIFZlcmlmeSB0aGUgdHlwZXMgb2YgQVNUIHN0cmluZ3MgYW5kIGlkZW50aWZpZXJzIHByb3ZpZGVkIGJ5IHRoZSB1c2VyIGJlZm9yZQorICBjb21waWxpbmcgdGhlbS4KKworLSBJc3N1ZSAjMTI2NDc6IFRoZSBOb25lIG9iamVjdCBub3cgaGFzIGEgX19ib29sX18oKSBtZXRob2QgdGhhdCByZXR1cm5zIEZhbHNlLgorICBGb3JtZXJseSwgYm9vbChOb25lKSByZXR1cm5lZCBGYWxzZSBvbmx5IGJlY2F1c2Ugb2Ygc3BlY2lhbCBjYXNlIGxvZ2ljCisgIGluIFB5T2JqZWN0X0lzVHJ1ZSgpLgorCistIElzc3VlICMxMjU3OTogc3RyLmZvcm1hdF9tYXAoKSBub3cgcmFpc2VzIGEgVmFsdWVFcnJvciBpZiB1c2VkIG9uIGEKKyAgZm9ybWF0IHN0cmluZyB0aGF0IGNvbnRhaW5zIHBvc2l0aW9uYWwgZmllbGRzLiBJbml0aWFsIHBhdGNoIGJ5CisgIEp1bGlhbiBCZXJtYW4uCisKKy0gSXNzdWUgIzEwMjcxOiBBbGxvdyB3YXJuaW5ncy5zaG93d2FybmluZygpIGJlIGFueSBjYWxsYWJsZS4KKworLSBJc3N1ZSAjMTE2Mjc6IEZpeCBzZWdmYXVsdCB3aGVuIF9fbmV3X18gb24gYSBleGNlcHRpb24gcmV0dXJucyBhCisgIG5vbi1leGNlcHRpb24gY2xhc3MuCisKKy0gSXNzdWUgIzEyMTQ5OiBVcGRhdGUgdGhlIG1ldGhvZCBjYWNoZSBhZnRlciBhIHR5cGUncyBkaWN0aW9uYXJ5IGdldHMKKyAgY2xlYXJlZCBieSB0aGUgZ2FyYmFnZSBjb2xsZWN0b3IuICBUaGlzIGZpeGVzIGEgc2VnZmF1bHQgd2hlbiBhbiBpbnN0YW5jZQorICBhbmQgaXRzIHR5cGUgZ2V0IGNhdWdodCBpbiBhIHJlZmVyZW5jZSBjeWNsZSwgYW5kIHRoZSBpbnN0YW5jZSdzCisgIGRlYWxsb2NhdG9yIGNhbGxzIG9uZSBvZiB0aGUgbWV0aG9kcyBvbiB0aGUgdHlwZSAoZS5nLiB3aGVuIHN1YmNsYXNzaW5nCisgIElPQmFzZSkuICBEaWFnbm9zaXMgYW5kIHBhdGNoIGJ5IERhdmlkZSBSaXp6by4KKworLSBJc3N1ZSAjOTYxMSwgIzkwMTU6IEZpbGVJTy5yZWFkKCkgY2xhbXBzIHRoZSBsZW5ndGggdG8gSU5UX01BWCBvbiBXaW5kb3dzLgorCistIElzc3VlICM5NjQyOiBVbmlmb3JtaXplIHRoZSB0ZXN0cyBvbiB0aGUgYXZhaWxhYmlsaXR5IG9mIHRoZSBtYmNzIGNvZGVjLCBhZGQKKyAgYSBuZXcgSEFWRV9NQkNTIGRlZmluZS4KKworLSBJc3N1ZSAjOTY0MjogRml4IGZpbGVzeXN0ZW0gZW5jb2RpbmcgaW5pdGlhbGl6YXRpb246IHVzZSB0aGUgQU5TSSBjb2RlIHBhZ2UKKyAgb24gV2luZG93cyBpZiB0aGUgbWJjcyBjb2RlYyBpcyBub3QgYXZhaWxhYmxlLCBhbmQgZmFpbCB3aXRoIGEgZmF0YWwgZXJyb3IgaWYKKyAgd2UgY2Fubm90IGdldCB0aGUgbG9jYWxlIGVuY29kaW5nIChpZiBubF9sYW5naW5mbyhDT0RFU0VUKSBpcyBub3QgYXZhaWxhYmxlKQorICBpbnN0ZWFkIG9mIHVzaW5nIFVURi04LgorCistIFdoZW4gYSBnZW5lcmF0b3IgeWllbGRzLCBkbyBub3QgcmV0YWluIHRoZSBjYWxsZXIncyBleGNlcHRpb24gc3RhdGUgb24gdGhlCisgIGdlbmVyYXRvci4KKworLSBJc3N1ZSAjMTI0NzU6IFByZXZlbnQgZ2VuZXJhdG9ycyBmcm9tIGxlYWtpbmcgdGhlaXIgZXhjZXB0aW9uIHN0YXRlIGludG8gdGhlCisgIGNhbGxlcidzIGZyYW1lIGFzIHRoZXkgcmV0dXJuIGZvciB0aGUgbGFzdCB0aW1lLgorCistIElzc3VlICMxMjI5MTogWW91IGNhbiBub3cgbG9hZCBtdWx0aXBsZSBtYXJzaGFsbGVkIG9iamVjdHMgZnJvbSBhIHN0cmVhbSwKKyAgd2l0aCBvdGhlciBkYXRhIGludGVybGVhdmVkIGJldHdlZW4gbWFyc2hhbGxlZCBvYmplY3RzLgorCistIElzc3VlICMxMjM1NjogV2hlbiByZXF1aXJlZCBwb3NpdGlvbmFsIG9yIGtleXdvcmQtb25seSBhcmd1bWVudHMgYXJlIG5vdAorICBnaXZlbiwgcHJvZHVjZSBhIGluZm9ybWF0aXZlIGVycm9yIG1lc3NhZ2Ugd2hpY2ggaW5jbHVkZXMgdGhlIG5hbWUocykgb2YgdGhlCisgIG1pc3NpbmcgYXJndW1lbnRzLgorCistIElzc3VlICMxMjM3MDogRml4IHN1cGVyIHdpdGggbm8gYXJndW1lbnRzIHdoZW4gX19jbGFzc19fIGlzIG92ZXJyaWRlbiBpbiB0aGUKKyAgY2xhc3MgYm9keS4KKworLSBJc3N1ZSAjMTIwODQ6IG9zLnN0YXQgb24gV2luZG93cyBub3cgd29ya3MgcHJvcGVybHkgd2l0aCByZWxhdGl2ZSBzeW1ib2xpYworICBsaW5rcyB3aGVuIGNhbGxlZCBmcm9tIGFueSBkaXJlY3RvcnkuCisKKy0gTG9vc2VuIHR5cGUgcmVzdHJpY3Rpb25zIG9uIHRoZSBfX2Rpcl9fIG1ldGhvZC4gX19kaXJfXyBjYW4gbm93IHJldHVybiBhbnkKKyAgc2VxdWVuY2UsIHdoaWNoIHdpbGwgYmUgY29udmVydGVkIHRvIGEgbGlzdCBhbmQgc29ydGVkIGJ5IGRpcigpLgorCistIElzc3VlICMxMjI2NTogTWFrZSBlcnJvciBtZXNzYWdlcyBwcm9kdWNlZCBieSBwYXNzaW5nIGFuIGludmFsaWQgc2V0IG9mCisgIGFyZ3VtZW50cyB0byBhIGZ1bmN0aW9uIG1vcmUgaW5mb3JtYXRpdmUuCisKKy0gSXNzdWUgIzEyMjI1OiBTdGlsbCBhbGxvdyBQeXRob24gdG8gYnVpbGQgaWYgUHl0aG9uIGlzIG5vdCBpbiBpdHMgaGcgcmVwbyBvcgorICBtZXJjdXJpYWwgaXMgbm90IGluc3RhbGxlZC4KKworLSBJc3N1ZSAjMTE5NTogbXlfZmdldHMoKSBub3cgYWx3YXlzIGNsZWFycyBlcnJvcnMgYmVmb3JlIGNhbGxpbmcgZmdldHMoKS4gRml4CisgIHRoZSBmb2xsb3dpbmcgY2FzZTogc3lzLnN0ZGluLnJlYWQoKSBzdG9wcGVkIHdpdGggQ1RSTCtkIChlbmQgb2YgZmlsZSksCisgIHJhd19pbnB1dCgpIGludGVycnVwdGVkIGJ5IENUUkwrYy4KKworLSBJc3N1ZSAjMTIyMTY6IEFsbG93IHVuZXhwZWN0ZWQgRU9GIGVycm9ycyB0byBoYXBwZW4gb24gYW55IGxpbmUgb2YgdGhlIGZpbGUuCisKKy0gSXNzdWUgIzEyMTk5OiBUaGUgVHJ5RXhjZXB0IGFuZCBUcnlGaW5hbGx5IGFuZCBBU1Qgbm9kZXMgaGF2ZSBiZWVuIHVuaWZpZWQKKyAgaW50byBhIFRyeSBub2RlLgorCistIElzc3VlICM5NjcwOiBJbmNyZWFzZSB0aGUgZGVmYXVsdCBzdGFjayBzaXplIGZvciBzZWNvbmRhcnkgdGhyZWFkcyBvbgorICBNYWMgT1MgWCBhbmQgRnJlZUJTRCB0byByZWR1Y2UgdGhlIGNoYW5jZXMgb2YgYSBjcmFzaCBpbnN0ZWFkIG9mIGEKKyAgIm1heGltdW0gcmVjdXJzaW9uIGRlcHRoIiBSdW50aW1lRXJyb3IgZXhjZXB0aW9uLgorICAocGF0Y2ggYnkgUm9uYWxkIE91c3NvcmVuKQorCistIElzc3VlICMxMjEwNjogVGhlIHVzZSBvZiB0aGUgbXVsdGlwbGUtd2l0aCBzaG9ydGhhbmQgc3ludGF4IGlzIG5vdyByZWZsZWN0ZWQKKyAgaW4gdGhlIEFTVC4KKworLSBJc3N1ZSAjMTIxOTA6IFRyeSB0byB1c2UgdGhlIHNhbWUgZmlsZW5hbWUgb2JqZWN0IHdoZW4gY29tcGlsaW5nIHVubWFyc2hhbGxpbmcKKyAgYSBjb2RlIG9iamVjdHMgaW4gdGhlIHNhbWUgZmlsZS4KKworLSBJc3N1ZSAjMTIxNjY6IE1vdmUgaW1wbGVtZW50YXRpb25zIG9mIGRpcigpIHNwZWNpYWxpemVkIGZvciB2YXJpb3VzIHR5cGVzIGludG8KKyAgdGhlIF9fZGlyX18oKSBtZXRob2RzIG9mIHRob3NlIHR5cGVzLgorCistIElzc3VlICM1NzE1OiBJbiBzb2NrZXRzZXJ2ZXIsIGNsb3NlIHRoZSBzZXJ2ZXIgc29ja2V0IGluIHRoZSBjaGlsZCBwcm9jZXNzLgorCistIENvcnJlY3QgbG9va3VwIG9mIF9fZGlyX18gb24gb2JqZWN0cy4gQW1vbmcgb3RoZXIgdGhpbmdzLCB0aGlzIGNhdXNlcyBlcnJvcnMKKyAgYmVzaWRlcyBBdHRyaWJ1dGVFcnJvciBmb3VuZCBvbiBsb29rdXAgdG8gYmUgcHJvcGFnYXRlZC4KKworLSBJc3N1ZSAjMTIwNjA6IFVzZSBzaWdfYXRvbWljX3QgdHlwZSBhbmQgdm9sYXRpbGUga2V5d29yZCBpbiB0aGUgc2lnbmFsCisgIG1vZHVsZS4gUGF0Y2ggd3JpdHRlbiBieSBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCisKKy0gSXNzdWUgIzE3NDY2NTY6IEFkZGVkIHRoZSBpZl9uYW1laW5kZXgsIGlmX2luZGV4dG9uYW1lLCBpZl9uYW1ldG9pbmRleAorICBtZXRob2RzIHRvIHRoZSBzb2NrZXQgbW9kdWxlLgorCistIElzc3VlICMxMjA0NDogRml4ZWQgc3VicHJvY2Vzcy5Qb3BlbiB3aGVuIHVzZWQgYXMgYSBjb250ZXh0IG1hbmFnZXIgdG8KKyAgd2FpdCBmb3IgdGhlIHByb2Nlc3MgdG8gZW5kIHdoZW4gZXhpdGluZyB0aGUgY29udGV4dCB0byBhdm9pZCB1bmludGVudGlvbmFsbHkKKyAgbGVhdmluZyB6b21iaWUgcHJvY2Vzc2VzIGFyb3VuZC4KKworLSBJc3N1ZSAjMTE5NTogRml4IGlucHV0KCkgaWYgaXQgaXMgaW50ZXJydXB0ZWQgYnkgQ1RSTCtkIGFuZCB0aGVuIENUUkwrYywKKyAgY2xlYXIgdGhlIGVuZC1vZi1maWxlIGluZGljYXRvciBhZnRlciBDVFJMK2QuCisKKy0gSXNzdWUgIzE4NTY6IEF2b2lkIGNyYXNoZXMgYW5kIGxvY2t1cHMgd2hlbiBkYWVtb24gdGhyZWFkcyBydW4gd2hpbGUgdGhlCisgIGludGVycHJldGVyIGlzIHNodXR0aW5nIGRvd247IGluc3RlYWQsIHRoZXNlIHRocmVhZHMgYXJlIG5vdyBraWxsZWQgd2hlbgorICB0aGV5IHRyeSB0byB0YWtlIHRoZSBHSUwuCisKKy0gSXNzdWUgIzk3NTY6IFdoZW4gY2FsbGluZyBhIG1ldGhvZCBkZXNjcmlwdG9yIG9yIGEgc2xvdCB3cmFwcGVyIGRlc2NyaXB0b3IsCisgIHRoZSBjaGVjayBvZiB0aGUgb2JqZWN0IHR5cGUgZG9lc24ndCByZWFkIHRoZSBfX2NsYXNzX18gYXR0cmlidXRlIGFueW1vcmUuCisgIEZpeCBhIGNyYXNoIGlmIGEgY2xhc3Mgb3ZlcnJpZGUgaXRzIF9fY2xhc3NfXyBhdHRyaWJ1dGUgKGUuZy4gYSBwcm94eSBvZiB0aGUKKyAgc3RyIHR5cGUpLiBQYXRjaCB3cml0dGVuIGJ5IEFuZHJlYXMgU3TDvGhyay4KKworLSBJc3N1ZSAjMTA1MTc6IEFmdGVyIGZvcmsoKSwgcmVpbml0aWFsaXplIHRoZSBUTFMgdXNlZCBieSB0aGUgUHlHSUxTdGF0ZV8qCisgIEFQSXMsIHRvIGF2b2lkIGEgY3Jhc2ggd2l0aCB0aGUgcHRocmVhZCBpbXBsZW1lbnRhdGlvbiBpbiBSSEVMIDUuICBQYXRjaAorICBieSBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCisKKy0gSXNzdWUgIzEwOTE0OiBJbml0aWFsaXplIGNvcnJlY3RseSB0aGUgZmlsZXN5c3RlbSBjb2RlYyB3aGVuIGNyZWF0aW5nIGEgbmV3CisgIHN1YmludGVycHJldGVyIHRvIGZpeCBhIGJvb3RzdHJhcCBpc3N1ZSB3aXRoIGNvZGVjcyBpbXBsZW1lbnRlZCBpbiBQeXRob24sIGFzCisgIHRoZSBJU08tODg1OS0xNSBjb2RlYy4KKworLSBJc3N1ZSAjMTE5MTg6IE9TLzIgYW5kIFZNUyBhcmUgbm8gbW9yZSBzdXBwb3J0ZWQgYmVjYXVzZSBvZiB0aGUgbGFjayBvZgorICBtYWludGFpbmVyLgorCistIElzc3VlICM2NzgwOiBmaXggc3RhcnRzL2VuZHN3aXRoIGVycm9yIG1lc3NhZ2UgdG8gbWVudGlvbiB0aGF0IHR1cGxlcyBhcmUKKyAgYWNjZXB0ZWQgdG9vLgorCistIElzc3VlICM1MDU3OiBmaXggYSBidWcgaW4gdGhlIHBlZXBob2xlciB0aGF0IGxlZCB0byBub24tcG9ydGFibGUgcHljIGZpbGVzCisgIGJldHdlZW4gbmFycm93IGFuZCB3aWRlIGJ1aWxkcyB3aGlsZSBvcHRpbWl6aW5nIEJJTkFSWV9TVUJTQ1Igb24gbm9uLUJNUAorICBjaGFycyAoZS5nLiAiXFUwMDAxMjM0NSJbMF0pLgorCistIElzc3VlICMxMTg0NTogRml4IHR5cG8gaW4gcmFuZ2VvYmplY3QuYyB0aGF0IGNhdXNlZCBhIGNyYXNoIGluCisgIGNvbXB1dGVfc2xpY2VfaW5kaWNlcy4gIFBhdGNoIGJ5IERhbmllbCBVcmJhbi4KKworLSBJc3N1ZSAjNTY3MzogQWRkZWQgYSBgdGltZW91dGAga2V5d29yZCBhcmd1bWVudCB0byBzdWJwcm9jZXNzLlBvcGVuLndhaXQsCisgIHN1YnByb2Nlc3MuUG9wZW4uY29tbXVuaWNhdGVkLCBzdWJwcm9jZXNzLmNhbGwsIHN1YnByb2Nlc3MuY2hlY2tfY2FsbCwgYW5kCisgIHN1YnByb2Nlc3MuY2hlY2tfb3V0cHV0LiAgSWYgdGhlIGJsb2NraW5nIG9wZXJhdGlvbiB0YWtlcyBtb3JlIHRoYW4gYHRpbWVvdXRgCisgIHNlY29uZHMsIHRoZSBgc3VicHJvY2Vzcy5UaW1lb3V0RXhwaXJlZGAgZXhjZXB0aW9uIGlzIHJhaXNlZC4KKworLSBJc3N1ZSAjMTE2NTA6IFB5T1NfU3RkaW9SZWFkbGluZSgpIHJldHJpZXMgZmdldHMoKSBpZiBpdCB3YXMgaW50ZXJydXB0ZWQKKyAgKEVJTlRSKSwgZm9yIGV4YW1wbGUgaWYgdGhlIHByb2dyYW0gaXMgc3RvcHBlZCB3aXRoIENUUkwreiBvbiBNYWMgT1MgWC4gUGF0Y2gKKyAgd3JpdHRlbiBieSBDaGFybGVzLUZyYW5jb2lzIE5hdGFsaS4KKworLSBJc3N1ZSAjOTMxOTogSW5jbHVkZSB0aGUgZmlsZW5hbWUgaW4gIk5vbi1VVEY4IGNvZGUgLi4uIiBzeW50YXggZXJyb3IuCisKKy0gSXNzdWUgIzEwNzg1OiBTdG9yZSB0aGUgZmlsZW5hbWUgYXMgVW5pY29kZSBpbiB0aGUgUHl0aG9uIHBhcnNlci4KKworLSBJc3N1ZSAjMTE2MTk6IF9QeUltcG9ydF9Mb2FkRHluYW1pY01vZHVsZSgpIGRvZXNuJ3QgZW5jb2RlIHRoZSBwYXRoIHRvIGJ5dGVzCisgIG9uIFdpbmRvd3MuCisKKy0gSXNzdWUgIzEwOTk4OiBSZW1vdmUgbWVudGlvbnMgb2YgLVEsIHN5cy5mbGFncy5kaXZpc2lvbl93YXJuaW5nIGFuZAorICBQeV9EaXZpc2lvbldhcm5pbmdGbGFnIGxlZnQgb3ZlciBmcm9tIFB5dGhvbiAyLgorCistIElzc3VlICMxMTI0NDogUmVtb3ZlIGFuIHVubmVjZXNzYXJ5IHBlZXBob2xlciBjaGVjayB0aGF0IHdhcyBwcmV2ZW50aW5nCisgIG5lZ2F0aXZlIHplcm9zIGZyb20gYmVpbmcgY29uc3RhbnQtZm9sZGVkIHByb3Blcmx5LgorCistIElzc3VlICMxMTM5NTogaW8uRmlsZUlPKCkud3JpdGUoKSBjbGFtcHMgdGhlIGRhdGEgbGVuZ3RoIHRvIDMyLDc2NyBieXRlcyBvbgorICBXaW5kb3dzIGlmIHRoZSBmaWxlIGlzIGEgVFRZIHRvIHdvcmthcm91bmQgYSBXaW5kb3dzIGJ1Zy4gVGhlIFdpbmRvd3MgY29uc29sZQorICByZXR1cm5zIGFuIGVycm9yICgxMjogbm90IGVub3VnaCBzcGFjZSBlcnJvcikgb24gd3JpdGluZyBpbnRvIHN0ZG91dCBpZgorICBzdGRvdXQgbW9kZSBpcyBiaW5hcnkgYW5kIHRoZSBsZW5ndGggaXMgZ3JlYXRlciB0aGFuIDY2LDAwMCBieXRlcyAob3IgbGVzcywKKyAgZGVwZW5kaW5nIG9uIGhlYXAgdXNhZ2UpLgorCistIElzc3VlICMxMTMyMDogZml4IGJvZ3VzIG1lbW9yeSBtYW5hZ2VtZW50IGluIE1vZHVsZXMvZ2V0cGF0aC5jLCBsZWFkaW5nIHRvCisgIGEgcG9zc2libGUgY3Jhc2ggd2hlbiBjYWxsaW5nIFB5X1NldFBhdGgoKS4KKworLSBJc3N1ZSAjMTE0MzI6IEEgYnVnIHdhcyBpbnRyb2R1Y2VkIGluIHN1YnByb2Nlc3MuUG9wZW4gb24gcG9zaXggc3lzdGVtcyB3aXRoCisgIDMuMi4wIHdoZXJlIHRoZSBzdGRvdXQgb3Igc3RkZXJyIGZpbGUgZGVzY3JpcHRvciBiZWluZyB0aGUgc2FtZSBhcyB0aGUgc3RkaW4KKyAgZmlsZSBkZXNjcmlwdG9yIHdvdWxkIHJhaXNlIGFuIGV4Y2VwdGlvbi4gd2ViYnJvd3Nlci5vcGVuIHdvdWxkIGZhaWwuIGZpeGVkLgorCistIElzc3VlICM5ODU2OiBDaGFuZ2Ugb2JqZWN0Ll9fZm9ybWF0X18gd2l0aCBhIG5vbi1lbXB0eSBmb3JtYXQgc3RyaW5nCisgIHRvIGJlIGEgRGVwcmVjYXRpb25XYXJuaW5nLiBJbiAzLjIgaXQgd2FzIGEgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZy4KKyAgSW4gMy40IGl0IHdpbGwgYmUgYSBUeXBlRXJyb3IuCisKKy0gSXNzdWUgIzExMjQ0OiBUaGUgcGVlcGhvbGUgb3B0aW1pemVyIGlzIG5vdyBhYmxlIHRvIGNvbnN0YW50LWZvbGQKKyAgYXJiaXRyYXJpbHkgY29tcGxleCBleHByZXNzaW9ucy4gIFRoaXMgYWxzbyBmaXhlcyBhIDMuMiByZWdyZXNzaW9uIHdoZXJlCisgIG9wZXJhdGlvbnMgaW52b2x2aW5nIG5lZ2F0aXZlIG51bWJlcnMgd2VyZSBub3QgY29uc3RhbnQtZm9sZGVkLgorCistIElzc3VlICMxMTQ1MDogRG9uJ3QgdHJ1bmNhdGUgaGcgdmVyc2lvbiBpbmZvIGluIFB5X0dldEJ1aWxkSW5mbygpIHdoZW4KKyAgdGhlcmUgYXJlIG1hbnkgdGFncyAoZS5nLiB3aGVuIHVzaW5nIG1xKS4gIFBhdGNoIGJ5IE5hZGVlbSBWYXdkYS4KKworLSBJc3N1ZSAjMTEzMzU6IEZpeGVkIGEgbWVtb3J5IGxlYWsgaW4gbGlzdC5zb3J0IHdoZW4gdGhlIGtleSBmdW5jdGlvbgorICB0aHJvd3MgYW4gZXhjZXB0aW9uLgorCistIElzc3VlICM4OTIzOiBXaGVuIGEgc3RyaW5nIGlzIGVuY29kZWQgdG8gVVRGLTggaW4gc3RyaWN0IG1vZGUsIHRoZSByZXN1bHQgaXMKKyAgY2FjaGVkIGludG8gdGhlIG9iamVjdC4gRXhhbXBsZXM6IHN0ci5lbmNvZGUoKSwgc3RyLmVuY29kZSgndXRmLTgnKSwKKyAgUHlVbmljb2RlX0FzVVRGOFN0cmluZygpIGFuZCBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKHVuaWNvZGUsICJ1dGYtOCIsCisgIE5VTEwpLgorCistIElzc3VlICMxMDgzMTogUHlVbmljb2RlX0Zyb21Gb3JtYXQoKSBzdXBwb3J0cyAlbGksICVsbGkgYW5kICV6aSBmb3JtYXRzLgorCistIElzc3VlICMxMDgyOTogUmVmYWN0b3IgUHlVbmljb2RlX0Zyb21Gb3JtYXQoKSwgdXNlIHRoZSBzYW1lIGZ1bmN0aW9uIHRvIHBhcnNlCisgIHRoZSBmb3JtYXQgc3RyaW5nIGluIHRoZSAzIHN0ZXBzLCBmaXggY3Jhc2hzIG9uIGludmFsaWQgZm9ybWF0IHN0cmluZ3MuCisKKy0gSXNzdWUgIzEzMDA3OiB3aGljaGRiIHNob3VsZCByZWNvZ25pemUgZ2RibSAxLjkgbWFnaWMgbnVtYmVycy4KKworLSBJc3N1ZSAjMTEyNDY6IEZpeCBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVYiKSB0byBkZWNvZGUgdGhlIGJ5dGUgc3RyaW5nIGZyb20KKyAgVVRGLTggKHdpdGggcmVwbGFjZSBlcnJvciBoYW5kbGVyKSBpbnN0ZWFkIG9mIElTTy04ODU5LTEgKGluIHN0cmljdCBtb2RlKS4KKyAgUGF0Y2ggd3JpdHRlbiBieSBSYXkgQWxsZW4uCisKKy0gSXNzdWUgIzExMjg2OiBSYWlzZSBhIFZhbHVlRXJyb3IgZnJvbSBjYWxsaW5nIFB5TWVtb3J5Vmlld19Gcm9tQnVmZmVyIHdpdGgKKyAgYSBidWZmZXIgc3RydWN0IGhhdmluZyBhIE5VTEwgZGF0YSBwb2ludGVyLgorCistIElzc3VlICMxMTI3MjogT24gV2luZG93cywgaW5wdXQoKSBzdHJpcHMgJ1xyJyAoYW5kIG5vdCBvbmx5ICdcbicpLCBhbmQKKyAgc3lzLnN0ZGluIHVzZXMgdW5pdmVyc2FsIG5ld2xpbmUgKHJlcGxhY2UgJ1xyXG4nIGJ5ICdcbicpLgorCistIGlzc3VlICMxMTgyODogc3RhcnRzd2l0aCBhbmQgZW5kc3dpdGggZG9uJ3QgYWNjZXB0IE5vbmUgYXMgc2xpY2UgaW5kZXguCisgIFBhdGNoIGJ5IFRvcnN0ZW4gQmVja2VyLgorCistIElzc3VlICMxMDgzMDogRml4IFB5VW5pY29kZV9Gcm9tRm9ybWF0VigiJWMiKSBmb3Igbm9uLUJNUCBjaGFyYWN0ZXJzIG9uCisgIG5hcnJvdyBidWlsZC4KKworLSBJc3N1ZSAjMTExNjg6IFJlbW92ZSBmaWxlbmFtZSBkZWJ1ZyB2YXJpYWJsZSBmcm9tIFB5RXZhbF9FdmFsRnJhbWVFeCgpLgorICBJdCBlbmNvZGVkIHRoZSBVbmljb2RlIGZpbGVuYW1lIHRvIFVURi04LCBidXQgdGhlIGVuY29kaW5nIGZhaWxzIG9uCisgIHVuZGVjb2RhYmxlIGZpbGVuYW1lIChvbiBzdXJyb2dhdGUgY2hhcmFjdGVycykgd2hpY2ggcmFpc2VzIGFuIHVuZXhwZWN0ZWQKKyAgVW5pY29kZUVuY29kZUVycm9yIG9uIHJlY3Vyc2lvbiBsaW1pdC4KKworLSBJc3N1ZSAjMTExODc6IFJlbW92ZSBib290c3RyYXAgY29kZSAodXNlIEFTQ0lJKSBvZgorICBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKCksIGl0IHdhcyByZXBsYWNlZCBieSBhIGJldHRlciBmYWxsYmFjayAodXNlIHRoZQorICBsb2NhbGUgZW5jb2RpbmcpIGluIFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQoKS4KKworLSBDaGVjayBmb3IgTlVMTCByZXN1bHQgaW4gUHlUeXBlX0Zyb21TcGVjLgorCistIElzc3VlICMxMDUxNjogTmV3IGNvcHkoKSBhbmQgY2xlYXIoKSBtZXRob2RzIGZvciBsaXN0cyBhbmQgYnl0ZWFycmF5cy4KKworLSBJc3N1ZSAjMTEzODY6IGJ5dGVhcnJheS5wb3AoKSBub3cgdGhyb3dzIEluZGV4RXJyb3Igd2hlbiB0aGUgYnl0ZWFycmF5IGlzCisgIGVtcHR5LCBpbnN0ZWFkIG9mIE92ZXJmbG93RXJyb3IuCisKKy0gSXNzdWUgIzEyMzgwOiBUaGUgcmp1c3QsIGxqdXN0IGFuZCBjZW50ZXIgbWV0aG9kcyBvZiBieXRlcyBhbmQgYnl0ZWFycmF5CisgIG5vdyBhY2NlcHQgYSBieXRlYXJyYXkgYXJndW1lbnQuCisKIExpYnJhcnkKIC0tLS0tLS0KIApAQCAtMTE4LDYgKzQ2OCw5IEBACiAtIElzc3VlICMxMzUwNjogQWRkICcnIHRvIHBhdGggZm9yIElETEUgU2hlbGwgd2hlbiBzdGFydGVkIGFuZCByZXN0YXJ0ZWQgd2l0aCBSZXN0YXJ0IFNoZWxsLgogICBPcmlnaW5hbCBwYXRjaGVzIGJ5IE1hcmNvIFNjYXRhZ2xpbmkgYW5kIFJvZ2VyIFNlcnd5LgogCistIElzc3VlICM4ODI4OiBBZGQgbmV3IGZ1bmN0aW9uIG9zLnJlcGxhY2UoKSwgZm9yIGNyb3NzLXBsYXRmb3JtIHJlbmFtaW5nCisgIHdpdGggb3ZlcndyaXRpbmcuCisKIC0gSXNzdWUgIzEzODQ4OiBvcGVuKCkgYW5kIHRoZSBGaWxlSU8gY29uc3RydWN0b3Igbm93IGNoZWNrIGZvciBOVUwKICAgY2hhcmFjdGVycyBpbiB0aGUgZmlsZSBuYW1lLiAgUGF0Y2ggYnkgSHluZWsgU2NobGF3YWNrLgogCkBAIC0xMzAsNiArNDgzLDE3IEBACiAtIElzc3VlICMxMzg4NTogQ1ZFLTIwMTEtMzM4OTogdGhlIF9zc2wgbW9kdWxlIHdvdWxkIGFsd2F5cyBkaXNhYmxlIHRoZSBDQkMKICAgSVYgYXR0YWNrIGNvdW50ZXJtZWFzdXJlLgogCistIElzc3VlICMxMzg0NzogdGltZS5sb2NhbHRpbWUoKSBhbmQgdGltZS5nbXRpbWUoKSBub3cgcmFpc2UgYW4gT1NFcnJvciBpbnN0ZWFkCisgIG9mIFZhbHVlRXJyb3Igb24gZmFpbHVyZS4gdGltZS5jdGltZSgpIGFuZCB0aW1lLmFzY3RpbWUoKSBub3cgcmFpc2VzIGFuCisgIE9TRXJyb3IgaWYgbG9jYWx0aW1lKCkgZmFpbGVkLiB0aW1lLmNsb2NrKCkgbm93IHJhaXNlcyBhIFJ1bnRpbWVFcnJvciBpZiB0aGUKKyAgcHJvY2Vzc29yIHRpbWUgdXNlZCBpcyBub3QgYXZhaWxhYmxlIG9yIGl0cyB2YWx1ZSBjYW5ub3QgYmUgcmVwcmVzZW50ZWQKKworLSBJc3N1ZSAjMTM4NjI6IEZpeCBzcHVyaW91cyBmYWlsdXJlIGluIHRlc3RfemxpYiBkdWUgdG8gcnVudGltZS9jb21waWxlIHRpbWUKKyAgbWlub3IgdmVyc2lvbnMgbm90IG1hdGNoaW5nLgorCistIElzc3VlICMxMjgwNDogRml4IHRlc3Rfc29ja2V0IGFuZCB0ZXN0X3VybGxpYjJuZXQgZmFpbHVyZXMgd2hlbiBydW5uaW5nIHRlc3RzCisgIG9uIGEgc3lzdGVtIHdpdGhvdXQgaW50ZXJuZXQgYWNjZXNzLgorCiAtIElzc3VlICMxMzc3MjogSW4gb3Muc3ltbGluaygpIHVuZGVyIFdpbmRvd3MsIGRvIG5vdCB0cnkgdG8gZ3Vlc3MgdGhlIGxpbmsKICAgdGFyZ2V0J3MgdHlwZSAoZmlsZSBvciBkaXJlY3RvcnkpLiAgVGhlIGRldGVjdGlvbiB3YXMgYnVnZ3kgYW5kIG1hZGUgdGhlCiAgIGNhbGwgbm9uLWF0b21pYyAodGhlcmVmb3JlIHByb25lIHRvIHJhY2UgY29uZGl0aW9ucykuCkBAIC0xNDUsNiArNTA5LDExIEBACiAtIElzc3VlICMxMzgwMzogVW5kZXIgU29sYXJpcywgZGlzdHV0aWxzIGRvZXNuJ3QgaW5jbHVkZSBiaXRuZXNzCiAgIGluIHRoZSBkaXJlY3RvcnkgbmFtZS4KIAorLSBJc3N1ZSAjMTAyNzg6IEFkZCB0aW1lLndhbGxjbG9jaygpIGZ1bmN0aW9uLCBtb25vdG9uaWMgY2xvY2suCisKKy0gSXNzdWUgIzEzODA5OiBGaXggcmVncmVzc2lvbiB3aGVyZSBiejIgbW9kdWxlIHdvdWxkbid0IHdvcmsgd2hlbiB0aHJlYWRzIGFyZQorICBkaXNhYmxlZC4gT3JpZ2luYWwgcGF0Y2ggYnkgQW1hdXJ5IEZvcmdlb3QgZCdBcmMuCisKIC0gSXNzdWUgIzEzNTg5OiBGaXggc29tZSBzZXJpYWxpemF0aW9uIHByaW1pdGl2ZXMgaW4gdGhlIGFpZmMgbW9kdWxlLgogICBQYXRjaCBieSBPbGVnIFBsYWtob3RueXVrLgogCkBAIC0xNjEsNiArNTMwLDExIEBACiAtIElzc3VlICMxMzUwMjogdGhyZWFkaW5nOiBGaXggYSByYWNlIGNvbmRpdGlvbiBpbiBFdmVudC53YWl0KCkgdGhhdCBtYWRlIGl0CiAgIHJldHVybiBGYWxzZSB3aGVuIHRoZSBldmVudCB3YXMgc2V0IGFuZCBjbGVhcmVkIHJpZ2h0IGFmdGVyLgogCistIElzc3VlICM5OTkzOiBXaGVuIHRoZSBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uIGFyZSBvbiBkaWZmZXJlbnQgZmlsZXN5c3RlbXMsCisgIGFuZCB0aGUgc291cmNlIGlzIGEgc3ltbGluaywgc2h1dGlsLm1vdmUoKSBub3cgcmVjcmVhdGVzIGEgc3ltbGluayBvbiB0aGUKKyAgZGVzdGluYXRpb24gaW5zdGVhZCBvZiBjb3B5aW5nIHRoZSBmaWxlIGNvbnRlbnRzLiAgUGF0Y2ggYnkgSm9uYXRoYW4gTmllaG9mCisgIGFuZCBIeW5layBTY2hsYXdhY2suCisKIC0gSXNzdWUgIzEyOTI2OiBGaXggYSBidWcgaW4gdGFyZmlsZSdzIGxpbmsgZXh0cmFjdGlvbi4KIAogLSBJc3N1ZSAjMTM2OTY6IEZpeCB0aGUgMzAyIFJlbGF0aXZlIFVSTCBSZWRpcmVjdGlvbiBwcm9ibGVtLgpAQCAtMTY4LDE1ICs1NDIsNDQgQEAKIC0gSXNzdWUgIzEzNjM2OiBXZWFrIGNpcGhlcnMgYXJlIG5vdyBkaXNhYmxlZCBieSBkZWZhdWx0IGluIHRoZSBzc2wgbW9kdWxlCiAgIChleGNlcHQgd2hlbiBTU0x2MiBpcyBleHBsaWNpdGx5IGFza2VkIGZvcikuCiAKKy0gSXNzdWUgIzEyNzE1OiBBZGQgYW4gb3B0aW9uYWwgc3ltbGlua3MgYXJndW1lbnQgdG8gc2h1dGlsIGZ1bmN0aW9ucworICAoY29weWZpbGUsIGNvcHltb2RlLCBjb3B5c3RhdCwgY29weSwgY29weTIpLiAgV2hlbiB0aGF0IHBhcmFtZXRlciBpcworICB0cnVlLCBzeW1saW5rcyBhcmVuJ3QgZGVyZWZlcmVuY2VkIGFuZCB0aGUgb3BlcmF0aW9uIGluc3RlYWQgYWN0cyBvbiB0aGUKKyAgc3ltbGluayBpdHNlbGYgKG9yIGNyZWF0ZXMgb25lLCBpZiByZWxldmFudCkuICBQYXRjaCBieSBIeW5layBTY2hsYXdhY2suCisKKy0gQWRkIGEgZmxhZ3MgcGFyYW1ldGVyIHRvIHNlbGVjdC5lcG9sbC4KKwogLSBJc3N1ZSAjMTI3OTg6IFVwZGF0ZWQgdGhlIG1pbWV0eXBlcyBkb2N1bWVudGF0aW9uLgogCistIElzc3VlICMxMzYyNjogQWRkIHN1cHBvcnQgZm9yIFNTTCBEaWZmaWUtSGVsbG1hbiBrZXkgZXhjaGFuZ2UsIHRocm91Z2ggdGhlCisgIFNTTENvbnRleHQubG9hZF9kaF9wYXJhbXMoKSBtZXRob2QgYW5kIHRoZSBzc2wuT1BfU0lOR0xFX0RIX1VTRSBvcHRpb24uCisKIC0gSXNzdWUgIzExMDA2OiBEb24ndCBpc3N1ZSBsb3cgbGV2ZWwgd2FybmluZyBpbiBzdWJwcm9jZXNzIHdoZW4gcGlwZTIoKSBmYWlscy4KIAorLSBJc3N1ZSAjMTM2MjA6IFN1cHBvcnQgZm9yIENocm9tZSBicm93c2VyIGluIHdlYmJyb3dzZXIucHkgUGF0Y2ggY29udHJpYnV0ZWQKKyAgYnkgQXJuYXVkIENhbG1ldHRlcy4KKwogLSBJc3N1ZSAjMTE4Mjk6IEZpeCBjb2RlIGV4ZWN1dGlvbiBob2xlcyBpbiBpbnNwZWN0LmdldGF0dHJfc3RhdGljIGZvcgogICBtZXRhY2xhc3NlcyB3aXRoIG1ldGFjbGFzc2VzLiBQYXRjaCBieSBBbmRyZWFzIFN0w7xocmsuCiAKKy0gSXNzdWUgIzEyNzA4OiBBZGQgc3Rhcm1hcCgpIGFuZCBzdGFybWFwX2FzeW5jKCkgbWV0aG9kcyAoc2ltaWxhciB0bworICBpdGVydG9vbHMuc3Rhcm1hcCgpKSB0byBtdWx0aXByb2Nlc3NpbmcuUG9vbC4gIFBhdGNoIGJ5IEh5bmVrIFNjaGxhd2Fjay4KKwogLSBJc3N1ZSAjMTc4NTogRml4IGluc3BlY3QgYW5kIHB5ZG9jIHdpdGggbWlzYmVoYXZpbmcgZGVzY3JpcHRvcnMuCiAKKy0gSXNzdWUgIzEzNjM3OiAiYTJiIiBmdW5jdGlvbnMgaW4gdGhlIGJpbmFzY2lpIG1vZHVsZSBub3cgYWNjZXB0IEFTQ0lJLW9ubHkKKyAgdW5pY29kZSBzdHJpbmdzLgorCistIElzc3VlICMxMzYzNDogQWRkIHN1cHBvcnQgZm9yIHF1ZXJ5aW5nIGFuZCBkaXNhYmxpbmcgU1NMIGNvbXByZXNzaW9uLgorCistIElzc3VlICMxMzYyNzogQWRkIHN1cHBvcnQgZm9yIFNTTCBFbGxpcHRpYyBDdXJ2ZS1iYXNlZCBEaWZmaWUtSGVsbG1hbgorICBrZXkgZXhjaGFuZ2UsIHRocm91Z2ggdGhlIFNTTENvbnRleHQuc2V0X2VjZGhfY3VydmUoKSBtZXRob2QgYW5kIHRoZQorICBzc2wuT1BfU0lOR0xFX0VDREhfVVNFIG9wdGlvbi4KKworLSBJc3N1ZSAjMTM2MzU6IEFkZCBzc2wuT1BfQ0lQSEVSX1NFUlZFUl9QUkVGRVJFTkNFLCBzbyB0aGF0IFNTTCBzZXJ2ZXJzCisgIGNob29zZSB0aGUgY2lwaGVyIGJhc2VkIG9uIHRoZWlyIG93biBwcmVmZXJlbmNlcywgcmF0aGVyIHRoYW4gb24gdGhlCisgIGNsaWVudCdzLgorCiAtIElzc3VlICMxMTgxMzogRml4IGluc3BlY3QuZ2V0YXR0cl9zdGF0aWMgZm9yIG1vZHVsZXMuIFBhdGNoIGJ5IEFuZHJlYXMKICAgU3TDvGhyay4KIApAQCAtMTg5LDI3ICs1OTIsNjIgQEAKIC0gSXNzdWUgIzgwMzU6IHVybGxpYjogRml4IGEgYnVnIHdoZXJlIHRoZSBjbGllbnQgY291bGQgcmVtYWluIHN0dWNrIGFmdGVyIGEKICAgcmVkaXJlY3Rpb24gb3IgYW4gZXJyb3IuCiAKKy0gSXNzdWUgIzEzNTYwOiBvcy5zdHJlcnJvcigpIG5vdyB1c2VzIHRoZSBjdXJyZW50IGxvY2FsZSBlbmNvZGluZyBpbnN0ZWFkIG9mCisgIFVURi04LgorCistIElzc3VlICMxMzU2MDogQWRkIFB5VW5pY29kZV9EZWNvZGVMb2NhbGUoKSwgUHlVbmljb2RlX0RlY29kZUxvY2FsZUFuZFNpemUoKQorICBhbmQgUHlVbmljb2RlX0VuY29kZUxvY2FsZSgpIGZ1bmN0aW9ucyB0byB0aGUgQyBBUEkgdG8gZGVjb2RlL2VuY29kZSBmcm9tL3RvCisgIHRoZSBjdXJyZW50IGxvY2FsZSBlbmNvZGluZy4KKworLSBJc3N1ZSAjODM3MzogVGhlIGZpbGVzeXN0ZW0gcGF0aCBvZiBBRl9VTklYIHNvY2tldHMgbm93IHVzZXMgdGhlIGZpbGVzeXN0ZW0KKyAgZW5jb2RpbmcgYW5kIHRoZSBzdXJyb2dhdGVlc2NhcGUgZXJyb3IgaGFuZGxlciwgcmF0aGVyIHRoYW4gVVRGLTguICBQYXRjaAorICBieSBEYXZpZCBXYXRzb24uCisKIC0gSXNzdWUgIzEwMzUwOiBSZWFkIGFuZCBzYXZlIGVycm5vIGJlZm9yZSBjYWxsaW5nIGEgZnVuY3Rpb24gd2hpY2ggbWlnaHQKICAgb3ZlcndyaXRlIGl0LiAgT3JpZ2luYWwgcGF0Y2ggYnkgSGFsbHZhcmQgQiBGdXJ1c2V0aC4KIAorLSBJc3N1ZSAjMTE2MTA6IEludHJvZHVjZSBhIG1vcmUgZ2VuZXJhbCB3YXkgdG8gZGVjbGFyZSBhYnN0cmFjdCBwcm9wZXJ0aWVzLgorCiAtIElzc3VlICMxMzU5MTogQSBidWcgaW4gaW1wb3J0bGliIGhhcyBiZWVuIGZpeGVkIHRoYXQgY2F1c2VkIGltcG9ydF9tb2R1bGUKICAgdG8gbG9hZCBhIG1vZHVsZSB0d2ljZS4KIAogLSBJc3N1ZSAjNDYyNTogSWYgSURMRSBjYW5ub3Qgd3JpdGUgdG8gaXRzIHJlY2VudCBmaWxlIG9yIGJyZWFrcG9pbnQKICAgZmlsZXMsIGRpc3BsYXkgYSBtZXNzYWdlIHBvcHVwIGFuZCBjb250aW51ZSByYXRoZXIgdGhhbiBjcmFzaC4KLSAgKG9yaWdpbmFsIHBhdGNoIGJ5IFJvZ2VyIFNlcnd5KQorIChvcmlnaW5hbCBwYXRjaCBieSBSb2dlciBTZXJ3eSkKIAotLSBJc3N1ZSAjNTkwNTogdGltZS5zdHJmdGltZSgpIGlzIG5vdyB1c2luZyB0aGUgbG9jYWxlIGVuY29kaW5nLCBpbnN0ZWFkIG9mCi0gIFVURi04LCBpZiB0aGUgd2NzZnRpbWUoKSBmdW5jdGlvbiBpcyBub3QgYXZhaWxhYmxlLgorLSBJc3N1ZSAjMTM0NDkgc2NoZWQuc2NoZWR1bGVyLnJ1bigpIG1ldGhvZCBoYXMgYSBuZXcgImJsb2NraW5nIiBwYXJhbWV0ZXIgd2hpY2gKKyAgd2hlbiBzZXQgdG8gRmFsc2UgbWFrZXMgcnVuKCkgZXhlY3V0ZSB0aGUgc2NoZWR1bGVkIGV2ZW50cyBkdWUgdG8gZXhwaXJlCisgIHNvb25lc3QgKGlmIGFueSkgYW5kIHRoZW4gcmV0dXJuLiAgUGF0Y2ggYnkgR2lhbXBhb2xvIFJvZG9sw6AuCisKKy0gSXNzdWUgIzg2ODQgc2NoZWQuc2NoZWR1bGVyIGNsYXNzIGNhbiBiZSBzYWZlbHkgdXNlZCBpbiBtdWx0aS10aHJlYWRlZAorICBlbnZpcm9ubWVudHMuICBQYXRjaCBieSBKb3NpYWggQ2FybHNvbiBhbmQgR2lhbXBhb2xvIFJvZG9sw6AuCisKKy0gQWxpYXMgcmVzb3VyY2UuZXJyb3IgdG8gT1NFcnJvciBhbGEgUEVQIDMxNTEuCisKKy0gSXNzdWUgIzU2ODk6IEFkZCBzdXBwb3J0IGZvciBsem1hIGNvbXByZXNzaW9uIHRvIHRoZSB0YXJmaWxlIG1vZHVsZS4KKworLSBJc3N1ZSAjMTMyNDg6IFR1cm4gMy4yJ3MgUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZyBpbnRvIDMuMydzCisgIERlcHJlY2F0aW9uV2FybmluZy4gIEl0IGNvdmVycyAnY2dpLmVzY2FwZScsICdpbXBvcnRsaWIuYWJjLlB5TG9hZGVyJywKKyAgJ2ltcG9ydGxpYi5hYmMuUHlQeWNMb2FkZXInLCAnbm50cGxpYi5OTlRQLnhndGl0bGUnLCAnbm50cGxpYi5OTlRQLnhwYXRoJywKKyAgYW5kIHByaXZhdGUgYXR0cmlidXRlcyBvZiAnc210cGQuU01UUENoYW5uZWwnLgorCistIElzc3VlICM1OTA1LCAjMTM1NjA6IHRpbWUuc3RyZnRpbWUoKSBpcyBub3cgdXNpbmcgdGhlIGN1cnJlbnQgbG9jYWxlCisgIGVuY29kaW5nLCBpbnN0ZWFkIG9mIFVURi04LCBpZiB0aGUgd2NzZnRpbWUoKSBmdW5jdGlvbiBpcyBub3QgYXZhaWxhYmxlLgogCiAtIElzc3VlICM4NjQxOiBVcGRhdGUgSURMRSAzIHN5bnRheCBjb2xvcmluZyB0byByZWNvZ25pemUgYiIuLiIgYW5kIG5vdCB1Ii4uIi4KICAgUGF0Y2ggYnkgVGFsIEVpbmF0LgogCistIElzc3VlICMxMzQ2NDogQWRkIGEgcmVhZGludG8oKSBtZXRob2QgdG8gaHR0cC5jbGllbnQuSFRUUFJlc3BvbnNlLiAgUGF0Y2gKKyAgYnkgSm9uIEt1aG4uCisKIC0gdGFyZmlsZS5weTogQ29ycmVjdGx5IGRldGVjdCBiemlwMiBjb21wcmVzc2VkIHN0cmVhbXMgd2l0aCBibG9ja3NpemVzCiAgIG90aGVyIHRoYW4gOTAway4KIAogLSBJc3N1ZSAjMTM0Mzk6IEZpeCBtYW55IGVycm9ycyBpbiB0dXJ0bGUgZG9jc3RyaW5ncy4KIAorLSBJc3N1ZSAjNjcxNTogQWRkIGEgbW9kdWxlICdsem1hJyBmb3IgY29tcHJlc3Npb24gdXNpbmcgdGhlIExaTUEgYWxnb3JpdGhtLgorICBUaGFua3MgdG8gUGVyIMOYeXZpbmQgS2FybHNlbiBmb3IgdGhlIGluaXRpYWwgaW1wbGVtZW50YXRpb24uCisKIC0gSXNzdWUgIzEzNDg3OiBNYWtlIGluc3BlY3QuZ2V0bW9kdWxlIHJvYnVzdCBhZ2FpbnN0IGNoYW5nZXMgZG9uZSB0bwogICBzeXMubW9kdWxlcyB3aGlsZSBpdCBpcyBpdGVyYXRpbmcgb3ZlciBpdC4KIApAQCAtMjE5LDE1ICs2NTcsMzEgQEAKIC0gSXNzdWUgIzEzNDQ0OiBXaGVuIHN0ZG91dCBoYXMgYmVlbiBjbG9zZWQgZXhwbGljaXRseSwgd2Ugc2hvdWxkIG5vdCBhdHRlbXB0CiAgIHRvIGZsdXNoIGl0IGF0IHNodXRkb3duIGFuZCBwcmludCBhbiBlcnJvci4KIAorLSBJc3N1ZSAjMTI1Njc6IFRoZSBjdXJzZXMgbW9kdWxlIHVzZXMgVW5pY29kZSBmdW5jdGlvbnMgZm9yIFVuaWNvZGUgYXJndW1lbnRzCisgIHdoZW4gaXQgaXMgbGlua2VkIHRvIHRoZSBuY3Vyc2VzIGxpYnJhcnkuIEl0IGVuY29kZXMgYWxzbyBVbmljb2RlIHN0cmluZ3MgdG8KKyAgdGhlIGxvY2FsZSBlbmNvZGluZyBpbnN0ZWFkIG9mIFVURi04LgorCiAtIElzc3VlICMxMjg1NjogRW5zdXJlIGNoaWxkIHByb2Nlc3NlcyBkbyBub3QgaW5oZXJpdCB0aGUgcGFyZW50J3MgcmFuZG9tCiAgIHNlZWQgZm9yIGZpbGVuYW1lIGdlbmVyYXRpb24gaW4gdGhlIHRlbXBmaWxlIG1vZHVsZS4gIFBhdGNoIGJ5IEJyaWFuCiAgIEhhcnJpbmcuCiAKKy0gSXNzdWUgIzk5NTc6IFNwb29sZWRUZW1wb3JhcnlGaWxlLnRydW5jYXRlKCkgbm93IGFjY2VwdHMgYW4gb3B0aW9uYWwgc2l6ZQorICBwYXJhbWV0ZXIsIGFzIG90aGVyIGZpbGUtbGlrZSBvYmplY3RzLiAgUGF0Y2ggYnkgUnlhbiBLZWxseS4KKwogLSBJc3N1ZSAjMTM0NTg6IEZpeCBhIG1lbW9yeSBsZWFrIGluIHRoZSBzc2wgbW9kdWxlIHdoZW4gZGVjb2RpbmcgYQogICBjZXJ0aWZpY2F0ZSB3aXRoIGEgc3ViamVjdEFsdE5hbWUuICBQYXRjaCBieSBSb2JlcnQgWGlhby4KIAogLSBJc3N1ZSAjMTM0MTU6IG9zLnVuc2V0ZW52KCkgZG9lc24ndCBpZ25vcmUgZXJyb3JzIGFueW1vcmUuCiAKKy0gSXNzdWUgIzEzMjQ1OiBzY2hlZC5zY2hlZHVsZXIgY2xhc3MgY29uc3RydWN0b3IncyB0aW1lZnVuYyBhbmQKKyAgZGVsYXlmdW5jdCBwYXJhbWV0ZXJzIGFyZSBub3cgb3B0aW9uYWwuCisgIHNjaGVkdWxlci5lbnRlciBhbmQgc2NoZWR1bGVyLmVudGVyYWJzIG1ldGhvZHMgZ2FpbmVkIGEgbmV3IGt3YXJncyBwYXJhbWV0ZXIuCisgIFBhdGNoIGNvbnRyaWJ1dGVkIGJ5IENocmlzIENsYXJrLgorCistIElzc3VlICMxMjMyODogVW5kZXIgV2luZG93cywgcmVmYWN0b3IgaGFuZGxpbmcgb2YgQ3RybC1DIGV2ZW50cyBhbmQKKyAgbWFrZSBfbXVsdGlwcm9jZXNzaW5nLndpbjMyLldhaXRGb3JNdWx0aXBsZU9iamVjdHMgaW50ZXJydXB0aWJsZSB3aGVuCisgIHRoZSB3YWl0X2ZsYWcgcGFyYW1ldGVyIGlzIGZhbHNlLiAgUGF0Y2ggYnkgc2J0LgorCiAtIElzc3VlICMxMzMyMjogRml4IEJ1ZmZlcmVkV3JpdGVyLndyaXRlKCkgdG8gZW5zdXJlIHRoYXQgQmxvY2tpbmdJT0Vycm9yIGlzCiAgIHJhaXNlZCB3aGVuIHRoZSB3cmFwcGVkIHJhdyBmaWxlIGlzIG5vbi1ibG9ja2luZyBhbmQgdGhlIHdyaXRlIHdvdWxkIGJsb2NrLgogICBQcmV2aW91cyBjb2RlIGFzc3VtZWQgdGhhdCB0aGUgcmF3IHdyaXRlKCkgd291bGQgcmFpc2UgQmxvY2tpbmdJT0Vycm9yLCBidXQKQEAgLTI0MCwxNCArNjk0LDI2IEBACiAgIG5vZGUgd2hlbiBpdCBpcyB0aGUgb25seSBjaGlsZCBvZiBhbiBlbGVtZW50LiAgSW5pdGlhbCBwYXRjaCBieSBEYW4KICAgS2VuaWdzYmVyZy4KIAorLSBJc3N1ZSAjMTMzNzQ6IFRoZSBXaW5kb3dzIGJ5dGVzIEFQSSBoYXMgYmVlbiBkZXByZWNhdGVkIGluIHRoZSBvcyBtb2R1bGUuIFVzZQorICBVbmljb2RlIGZpbGVuYW1lcyBpbnN0ZWFkIG9mIGJ5dGVzIGZpbGVuYW1lcyB0byBub3QgZGVwZW5kIG9uIHRoZSBBTlNJIGNvZGUKKyAgcGFnZSBhbnltb3JlIGFuZCB0byBzdXBwb3J0IGFueSBmaWxlbmFtZS4KKworLSBJc3N1ZSAjMTMyOTc6IFVzZSBieXRlcyB0eXBlIHRvIHNlbmQgYW5kIHJlY2VpdmUgYmluYXJ5IGRhdGEgdGhyb3VnaCBYTUxSUEMuCisKKy0gSXNzdWUgIzYzOTc6IFN1cHBvcnQgIi9kZXYvcG9sbCIgcG9sbGluZyBvYmplY3RzIGluIHNlbGVjdCBtb2R1bGUsCisgIHVuZGVyIFNvbGFyaXMgJiBkZXJpdmF0aXZlcy4KKwogLSBJc3N1ZXMgIzE3NDU3NjEsICM3NTU2NzAsICMxMzM1NywgIzEyNjI5LCAjMTIwMDMxMzogSFRNTFBhcnNlciBub3cgY29ycmVjdGx5CiAgIGhhbmRsZXMgbm9uLXZhbGlkIGF0dHJpYnV0ZXMsIGluY2x1ZGluZyBhZGphY2VudCBhbmQgdW5xdW90ZWQgYXR0cmlidXRlcy4KIAotLSBJc3N1ZSAjMTMxOTM6IEZpeCBkaXN0dXRpbHMuZmlsZWxpc3QuRmlsZUxpc3QgdW5kZXIgV2luZG93cy4gIFRoZQotICAicmVjdXJzaXZlLWluY2x1ZGUiIGRpcmVjdGl2ZSBub3cgcmVjb2duaXplcyBib3RoIGxlZ2FsIHBhdGggc2VwYXJhdG9ycy4KKy0gSXNzdWUgIzEzMTkzOiBGaXggZGlzdHV0aWxzLmZpbGVsaXN0LkZpbGVMaXN0IGFuZAorICBwYWNrYWdpbmcubWFuaWZlc3QuTWFuaWZlc3QgdW5kZXIgV2luZG93cy4gIFRoZSAicmVjdXJzaXZlLWluY2x1ZGUiCisgIGRpcmVjdGl2ZSBub3cgcmVjb2duaXplcyBib3RoIGxlZ2FsIHBhdGggc2VwYXJhdG9ycy4KIAogLSBJc3N1ZSAjMTMzODQ6IFJlbW92ZSB1bm5lY2Vzc2FyeSBfX2Z1dHVyZV9fIGltcG9ydCBpbiBMaWIvcmFuZG9tLnB5CiAKKy0gSXNzdWUgIzEzMTQ5OiBTcGVlZCB1cCBhcHBlbmQtb25seSBTdHJpbmdJTyBvYmplY3RzLgorCiAtIElzc3VlICMxMzM3MzogbXVsdGlwcm9jZXNzaW5nLlF1ZXVlLmdldCgpIGNvdWxkIHNvbWV0aW1lcyBibG9jayBpbmRlZmluaXRlbHkKICAgd2hlbiBjYWxsZWQgd2l0aCBhIHRpbWVvdXQuICBQYXRjaCBieSBBcm5hdWQgWXNtYWwuCiAKQEAgLTI2MywxMSArNzI5LDIwIEBACiAtIElzc3VlICMxMzMzOTogRml4IGNvbXBpbGUgZXJyb3IgaW4gcG9zaXhtb2R1bGUuYyBkdWUgdG8gbWlzc2luZyBzZW1pY29sb24uCiAgIFRoYW5rcyB0byBSb2JlcnQgWGlhby4KIAorLSBCeXRlIGNvbXBpbGF0aW9uIGluIHBhY2thZ2luZyBpcyBub3cgaXNvbGF0ZWQgZnJvbSB0aGUgY2FsbGluZyBQeXRob24gLUIgb3IKKyAgLU8gb3B0aW9ucywgaW5zdGVhZCBvZiBiZWluZyBkaXNhbGxvd2VkIHVuZGVyIC1CIG9yIGJ1Z2d5IHVuZGVyIC1PLgorCiAtIElzc3VlICMxMDU3MDogY3Vyc2VzLnB1dHAoKSBhbmQgY3Vyc2VzLnRwYXJtKCkgYXJlIG5vdyBleHBlY3RpbmcgYSBieXRlCiAgIHN0cmluZywgaW5zdGVhZCBvZiBhIFVuaWNvZGUgc3RyaW5nLgogCistIElzc3VlICMxMzI5NTogaHR0cC5zZXJ2ZXIgbm93IHByb2R1Y2VzIHZhbGlkIEhUTUwgNC4wMSBzdHJpY3QuCisKIC0gSXNzdWUgIzI4OTI6IHByZXNlcnZlIGl0ZXJwYXJzZSBldmVudHMgaW4gY2FzZSBvZiBTeW50YXhFcnJvci4KIAorLSBJc3N1ZSAjMTMyODc6IHVybGxpYi5yZXF1ZXN0IGFuZCB1cmxsaWIuZXJyb3Igbm93IGNvbnRhaW5zIGFuIF9fYWxsX18KKyAgYXR0cmlidXRlIHRvIGV4cG9zZSBvbmx5IHJlbGV2YW50IGNsYXNzZXMgYW5kIGZ1bmN0aW9ucy4gIFBhdGNoIGJ5IEZsb3JlbnQKKyAgWGljbHVuYS4KKwogLSBJc3N1ZSAjNjcwNjY0OiBGaXggSFRNTFBhcnNlciB0byBjb3JyZWN0bHkgaGFuZGxlIHRoZSBjb250ZW50IG9mCiAgIGBgPHNjcmlwdD4uLi48L3NjcmlwdD5gYCBhbmQgYGA8c3R5bGU+Li4uPC9zdHlsZT5gYC4KIApAQCAtMjc3LDYgKzc1Miw5IEBACiAtIElzc3VlICMxMzI5NjogRml4IElETEUgdG8gY2xlYXIgY29tcGlsZSBfX2Z1dHVyZV9fIGZsYWdzIG9uIHNoZWxsIHJlc3RhcnQuCiAgIChQYXRjaCBieSBSb2dlciBTZXJ3eSkKIAorLSBGaXggdGhlIHhtbHJwYy5jbGllbnQgdXNlciBhZ2VudCB0byByZXR1cm4gc29tZXRoaW5nIHNpbWlsYXIgdG8KKyAgdXJsbGliLnJlcXVlc3QgdXNlciBhZ2VudDogIlB5dGhvbi14bWxycGMvMy4zIi4KKwogLSBJc3N1ZSAjMTMyOTM6IEJldHRlciBlcnJvciBtZXNzYWdlIHdoZW4gdHJ5aW5nIHRvIG1hcnNoYWwgYnl0ZXMgdXNpbmcKICAgeG1scnBjLmNsaWVudC4KIApAQCAtMjg3LDUxICs3NjUsODEgQEAKIC0gSXNzdWUgIzEzMjczOiBmaXggYSBidWcgdGhhdCBwcmV2ZW50ZWQgSFRNTFBhcnNlciB0byBwcm9wZXJseSBkZXRlY3Qgc29tZQogICB0YWdzIHdoZW4gc3RyaWN0PUZhbHNlLgogCistIElzc3VlICMxMTE4MzogQWRkIGZpbmVyLWdyYWluZWQgZXhjZXB0aW9ucyB0byB0aGUgc3NsIG1vZHVsZSwgc28gdGhhdAorICB5b3UgZG9uJ3QgaGF2ZSB0byBpbnNwZWN0IHRoZSBleGNlcHRpb24ncyBhdHRyaWJ1dGVzIGluIHRoZSBjb21tb24gY2FzZS4KKworLSBJc3N1ZSAjMTMyMTY6IEFkZCBjcDY1MDAxIGNvZGVjLCB0aGUgV2luZG93cyBVVEYtOCAoQ1BfVVRGOCkuCisKKy0gSXNzdWUgIzEzMjI2OiBBZGQgUlRMRF94eHggY29uc3RhbnRzIHRvIHRoZSBvcyBtb2R1bGUuIFRoZXNlIGNvbnN0YW50cyBjYW4gYmUKKyAgdXNlZCB3aXRoIHN5cy5zZXRkbG9wZW5mbGFncygpLgorCistIElzc3VlICMxMDI3ODogQWRkIGNsb2NrX2dldHJlcygpLCBjbG9ja19nZXR0aW1lKCkgYW5kIENMT0NLX3h4eCBjb25zdGFudHMgdG8KKyAgdGhlIHRpbWUgbW9kdWxlLiB0aW1lLmNsb2NrX2dldHRpbWUodGltZS5DTE9DS19NT05PVE9OSUMpIHByb3ZpZGVzIGEKKyAgbW9ub3RvbmljIGNsb2NrCisKIC0gSXNzdWUgIzEwMzMyOiBtdWx0aXByb2Nlc3Npbmc6IGZpeCBhIHJhY2UgY29uZGl0aW9uIHdoZW4gYSBQb29sIGlzIGNsb3NlZAogICBiZWZvcmUgYWxsIHRhc2tzIGhhdmUgY29tcGxldGVkLgogCiAtIElzc3VlICMxMzI1NTogd3JvbmcgZG9jc3RyaW5ncyBpbiBhcnJheSBtb2R1bGUuCiAKKy0gSXNzdWUgIzg1NDA6IFJlbW92ZSBkZXByZWNhdGVkIENvbnRleHQuX2NsYW1wIGF0dHJpYnV0ZSBpbiBEZWNpbWFsIG1vZHVsZS4KKworLSBJc3N1ZSAjMTMyMzU6IEFkZGVkIFBlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcgdG8gd2FybigpIG1ldGhvZCBhbmQgZnVuY3Rpb24uCisKIC0gSXNzdWUgIzkxNjg6IG5vdyBzbXRwZCBpcyBhYmxlIHRvIGJpbmQgcHJpdmlsZWdlZCBwb3J0LgogCiAtIElzc3VlICMxMjUyOTogZml4IGNnaS5wYXJzZV9oZWFkZXIgaXNzdWUgb24gc3RyaW5ncyB3aXRoIGRvdWJsZS1xdW90ZXMgYW5kCiAgIHNlbWljb2xvbnMgdG9nZXRoZXIuIFBhdGNoIGJ5IEJlbiBEYXJuZWxsIGFuZCBQZXRyaSBMZWh0aW5lbi4KIAotLSBJc3N1ZSAjMTI0NDg6IHNtdHBsaWIgbm93IGZsdXNoZXMgc3Rkb3V0IHdoaWxlIHJ1bm5pbmcgYGBweXRob24gLW0gc210cGxpYmBgCi0gIGluIG9yZGVyIHRvIGRpc3BsYXkgdGhlIHByb21wdCBjb3JyZWN0bHkuCistIElzc3VlICMxMzIyNzogZnVuY3Rvb2xzLmxydV9jYWNoZSgpIG5vdyBoYXMgYSBvcHRpb24gdG8gZGlzdGluZ3Vpc2gKKyAgY2FsbHMgd2l0aCBkaWZmZXJlbnQgYXJndW1lbnQgdHlwZXMuCiAKIC0gSXNzdWUgIzYwOTA6IHppcGZpbGUgcmFpc2VzIGEgVmFsdWVFcnJvciB3aGVuIGEgZG9jdW1lbnQgd2l0aCBhIHRpbWVzdGFtcAogICBlYXJsaWVyIHRoYW4gMTk4MCBpcyBwcm92aWRlZC4gUGF0Y2ggY29udHJpYnV0ZWQgYnkgUGV0cmkgTGVodGluZW4uCiAKKy0gSXNzdWUgIzEzMTUwOiBzeXNjb25maWcgbm8gbG9uZ2VyIHBhcnNlcyB0aGUgTWFrZWZpbGUgYW5kIGNvbmZpZy5oIGZpbGVzCisgIHdoZW4gaW1wb3J0ZWQsIGluc3RlYWQgZG9pbmcgaXQgYXQgYnVpbGQgdGltZS4gIFRoaXMgbWFrZXMgaW1wb3J0aW5nCisgIHN5c2NvbmZpZyBmYXN0ZXIgYW5kIHJlZHVjZXMgUHl0aG9uIHN0YXJ0dXAgdGltZSBieSAyMCUuCisKKy0gSXNzdWUgIzEyNDQ4OiBzbXRwbGliIG5vdyBmbHVzaGVzIHN0ZG91dCB3aGlsZSBydW5uaW5nIGBgcHl0aG9uIC1tIHNtdHBsaWJgYAorICBpbiBvcmRlciB0byBkaXNwbGF5IHRoZSBwcm9tcHQgY29ycmVjdGx5LgorCistIElzc3VlICMxMjQ1NDogVGhlIG1haWxib3ggbW9kdWxlIGlzIG5vdyB1c2luZyBBU0NJSSwgaW5zdGVhZCBvZiB0aGUgbG9jYWxlCisgIGVuY29kaW5nLCB0byByZWFkIGFuZCB3cml0ZSBNSCBtYWlsYm94ZXMgKC5taF9zZXF1ZW5jZXMgZmlsZXMpLgorCiAtIElzc3VlICMxMzE5NDogemxpYi5jb21wcmVzc29iaigpLmNvcHkoKSBhbmQgemxpYi5kZWNvbXByZXNzb2JqKCkuY29weSgpIGFyZQogICBub3cgYXZhaWxhYmxlIG9uIFdpbmRvd3MuCiAKKy0gaXNzdWUgIzE2NzMwMDc6IHVybGxpYjIgIHRvIHN1cHBvcnQgSEVBRCByZXF1ZXN0IHZpYSBuZXcgbWV0aG9kIGFyZ3VtZW50LgorICBQYXRjaCBjb250cmlidXRpb25zIGJ5IERhdmlkIFN0YW5laywgUGF0cmljayBXZXN0ZXJob2ZmIGFuZCBFemlvIE1lbG90dGkuCisKKy0gSXNzdWUgIzEyMzg2OiBwYWNrYWdpbmcgZG9lcyBub3QgZmFpbCBhbnltb3JlIHdoZW4gd3JpdGluZyB0aGUgUkVTT1VSQ0VTCisgIGZpbGUuCisKIC0gSXNzdWUgIzEzMTU4OiBGaXggZGVjb2RpbmcgYW5kIGVuY29kaW5nIG9mIEdOVSB0YXIgc3BlY2lmaWMgYmFzZS0yNTYgbnVtYmVyCiAgIGZpZWxkcyBpbiB0YXJmaWxlLgogCi0tIElzc3VlICMxMzE3NzogIEZ1bmN0b29scyBscnVfY2FjaGUoKSBubyBsb25nZXIgY2FsbHMgdGhlIG9yaWdpbmFsIGZ1bmN0aW9uCi0gIGluc2lkZSBhbiBleGNlcHRpb24gaGFuZGxlci4gIFRoaXMgbWFrZXMgdHJhY2ViYWNrcyBlYXNpZXIgdG8gcmVhZCBiZWNhdXNlCi0gIGNoYWluZWQgZXhjZXB0aW9ucyBhcmUgYXZvaWRlZC4KLQogLSBJc3N1ZSAjMTMwMjU6IG1pbWV0eXBlcyBpcyBub3cgcmVhZGluZyBNSU1FIHR5cGVzIHVzaW5nIHRoZSBVVEYtOCBlbmNvZGluZywKICAgaW5zdGVhZCBvZiB0aGUgbG9jYWxlIGVuY29kaW5nLgogCiAtIElzc3VlICMxMDY1MzogT24gV2luZG93cywgdXNlIHN0cmZ0aW1lKCkgaW5zdGVhZCBvZiB3Y3NmdGltZSgpIGJlY2F1c2UKICAgd2NzZnRpbWUoKSBkb2Vzbid0IGZvcm1hdCB0aW1lIHpvbmUgY29ycmVjdGx5LgogCistIElzc3VlICMxMzE1MDogVGhlIHRva2VuaXplIG1vZHVsZSBkb2Vzbid0IGNvbXBpbGUgbGFyZ2UgcmVndWxhciBleHByZXNzaW9ucworICBhdCBzdGFydHVwIGFueW1vcmUuCisKIC0gSXNzdWUgIzExMTcxOiBGaXggZGlzdHV0aWxzLnN5c2NvbmZpZy5nZXRfbWFrZWZpbGVfZmlsZW5hbWUgd2hlbiBQeXRob24gd2FzCiAgIGNvbmZpZ3VyZWQgd2l0aCBkaWZmZXJlbnQgcHJlZml4IGFuZCBleGVjLXByZWZpeC4KIAotLSBJc3N1ZSAjMTEyNTQ6IFRlYWNoIGRpc3R1dGlscyB0byBjb21waWxlIC5weWMgYW5kIC5weW8gZmlsZXMgaW4KKy0gSXNzdWUgIzExMjU0OiBUZWFjaCBkaXN0dXRpbHMgYW5kIHBhY2thZ2luZyB0byBjb21waWxlIC5weWMgYW5kIC5weW8gZmlsZXMgaW4KICAgUEVQIDMxNDctY29tcGxpYW50IF9fcHljYWNoZV9fIGRpcmVjdG9yaWVzLgogCi0tIElzc3VlICMxMTI1MDogQmFjayBwb3J0IGZpeCBmcm9tIDMuMyBicmFuY2gsIHNvIHRoYXQgMnRvMyBjYW4gaGFuZGxlIGZpbGVzCi0gIHdpdGggbGluZSBmZWVkcy4gIFRoaXMgd2FzIHBvcnRlZCBmcm9tIHRoZSBzYW5kYm94IHRvIHRoZSAzLjMgYnJhbmNoLCBidXQKLSAgZGlkbid0IG1ha2UgaXQgaW50byAzLjIuCi0KIC0gSXNzdWUgIzczNjc6IEZpeCBwa2d1dGlsLndhbGtfcGF0aHMgdG8gc2tpcCBkaXJlY3RvcmllcyB3aG9zZQogICBjb250ZW50cyBjYW5ub3QgYmUgcmVhZC4KIAorLSBJc3N1ZSAjMzE2MzogVGhlIHN0cnVjdCBtb2R1bGUgZ2V0cyBuZXcgZm9ybWF0IGNoYXJhY3RlcnMgJ24nIGFuZCAnTicKKyAgc3VwcG9ydGluZyBDIGludGVnZXIgdHlwZXMgYGBzc2l6ZV90YGAgYW5kIGBgc2l6ZV90YGAsIHJlc3BlY3RpdmVseS4KKwogLSBJc3N1ZSAjMTMwOTk6IEZpeCBzcWxpdGUzLkN1cnNvci5sYXN0cm93aWQgdW5kZXIgYSBUdXJraXNoIGxvY2FsZS4KICAgUmVwb3J0ZWQgYW5kIGRpYWdub3NlZCBieSBUaG9tYXMgS2x1eXZlci4KIApAQCAtMzUyLDEzICs4NjAsMjkgQEAKICAgd2l0aCBpbnZhbGlkIGhleCBlc2NhcGUgc2VxdWVuY2VzLCBsaWtlIGInXHgwJy4KICAgKE9yaWdpbmFsIHBhdGNoIGJ5IENsYXVkaXUgUG9wYS4pCiAKLS0gSXNzdWUgIzg5MzM6IGRpc3R1dGlscycgUEtHLUlORk8gZmlsZXMgd2lsbCBub3cgY29ycmVjdGx5IHJlcG9ydAotICBNZXRhZGF0YS1WZXJzaW9uOiAxLjEgaW5zdGVhZCBvZiAxLjAgaWYgYSBDbGFzc2lmaWVyIG9yIERvd25sb2FkLVVSTCBmaWVsZCBpcwotICBwcmVzZW50LgorLSBJc3N1ZSAjMTIzMDY6IEV4cG9zZSB0aGUgcnVudGltZSB2ZXJzaW9uIG9mIHRoZSB6bGliIEMgbGlicmFyeSBhcyBhIGNvbnN0YW50LAorICBaTElCX1JVTlRJTUVfVkVSU0lPTiwgaW4gdGhlIHpsaWIgbW9kdWxlLiBQYXRjaCBieSBUb3JzdGVuIExhbmRzY2hvZmYuCiAKLS0gSXNzdWUgIzk1NjE6IGRpc3R1dGlscyBub3cgcmVhZHMgYW5kIHdyaXRlcyBlZ2ctaW5mbyBmaWxlcyB1c2luZyBVVEYtOCwKKy0gSXNzdWUgIzEyOTU5OiBBZGQgY29sbGVjdGlvbnMuQ2hhaW5NYXAgdG8gY29sbGVjdGlvbnMuX19hbGxfXy4KKworLSBJc3N1ZSAjODkzMzogZGlzdHV0aWxzJyBQS0ctSU5GTyBmaWxlcyBhbmQgcGFja2FnaW5nJ3MgTUVUQURBVEEgZmlsZXMgd2lsbAorICBub3cgY29ycmVjdGx5IHJlcG9ydCBNZXRhZGF0YS1WZXJzaW9uOiAxLjEgaW5zdGVhZCBvZiAxLjAgaWYgYSBDbGFzc2lmaWVyIG9yCisgIERvd25sb2FkLVVSTCBmaWVsZCBpcyBwcmVzZW50LgorCistIElzc3VlICMxMjU2NzogQWRkIGN1cnNlcy51bmdldF93Y2goKSBmdW5jdGlvbi4gUHVzaCBhIGNoYXJhY3RlciBzbyB0aGUgbmV4dAorICBnZXRfd2NoKCkgd2lsbCByZXR1cm4gaXQuCisKKy0gSXNzdWUgIzk1NjE6IGRpc3R1dGlscyBhbmQgcGFja2FnaW5nIG5vdyB3cml0ZXMgZWdnLWluZm8gZmlsZXMgdXNpbmcgVVRGLTgsCiAgIGluc3RlYWQgb2YgdGhlIGxvY2FsZSBlbmNvZGluZy4KIAorLSBJc3N1ZSAjODI4NjogVGhlIGRpc3R1dGlscyBjb21tYW5kIHNkaXN0IHdpbGwgcHJpbnQgYSB3YXJuaW5nIG1lc3NhZ2UgaW5zdGVhZAorICBvZiBjcmFzaGluZyB3aGVuIGFuIGludmFsaWQgcGF0aCBpcyBnaXZlbiBpbiB0aGUgbWFuaWZlc3QgdGVtcGxhdGUuCisKKy0gSXNzdWUgIzEyODQxOiB0YXJmaWxlIHVubmVjZXNzYXJpbHkgY2hlY2tlZCB0aGUgZXhpc3RlbmNlIG9mIG51bWVyaWNhbCB1c2VyCisgIGFuZCBncm91cCBpZHMgb24gZXh0cmFjdGlvbi4gSWYgb25lIG9mIHRoZW0gZGlkIG5vdCBleGlzdCB0aGUgcmVzcGVjdGl2ZSBpZAorICBvZiB0aGUgY3VycmVudCB1c2VyIChpLmUuIHJvb3QpIHdhcyB1c2VkIGZvciB0aGUgZmlsZSBhbmQgb3duZXJzaGlwCisgIGluZm9ybWF0aW9uIHdhcyBsb3N0LgorCiAtIElzc3VlICMxMjg4ODogRml4IGEgYnVnIGluIEhUTUxQYXJzZXIudW5lc2NhcGUgdGhhdCBwcmV2ZW50ZWQgaXQgdG8gZXNjYXBlCiAgIG1vcmUgdGhhbiAxMjggZW50aXRpZXMuICBQYXRjaCBieSBQZXRlciBPdHRlbi4KIApAQCAtMzY2LDYgKzg5MCwxNiBAQAogCiAtIElzc3VlICMxMjYzNjogSURMRSByZWFkcyB0aGUgY29kaW5nIGNvb2tpZSB3aGVuIGV4ZWN1dGluZyBhIFB5dGhvbiBzY3JpcHQuCiAKKy0gSXNzdWUgIzEyNDk0OiBPbiBlcnJvciwgY2FsbCgpLCBjaGVja19jYWxsKCksIGNoZWNrX291dHB1dCgpIGFuZAorICBnZXRzdGF0dXNvdXRwdXQoKSBmdW5jdGlvbnMgb2YgdGhlIHN1YnByb2Nlc3MgbW9kdWxlIG5vdyBraWxsIHRoZSBwcm9jZXNzLAorICByZWFkIGl0cyBzdGF0dXMgKHRvIGF2b2lkIHpvbWJpcykgYW5kIGNsb3NlIHBpcGVzLgorCistIElzc3VlICMxMjcyMDogRXhwb3NlIGxvdy1sZXZlbCBMaW51eCBleHRlbmRlZCBmaWxlIGF0dHJpYnV0ZSBmdW5jdGlvbnMgaW4gb3MuCisKKy0gSXNzdWUgIzEwOTQ2OiBUaGUgZGlzdHV0aWxzIGNvbW1hbmRzIGJkaXN0X2R1bWIsIGJkaXN0X3dpbmluc3QgYW5kIGJkaXN0X21zaQorICBub3cgcmVzcGVjdCBhIC0tc2tpcC1idWlsZCBvcHRpb24gZ2l2ZW4gdG8gYmRpc3QuICBUaGUgcGFja2FnaW5nIGNvbW1hbmRzCisgIHdlcmUgZml4ZWQgdG9vLgorCiAtIElzc3VlICMxMjg0NzogRml4IGEgY3Jhc2ggd2l0aCBuZWdhdGl2ZSBQVVQgYW5kIExPTkdfQklOUFVUIGFyZ3VtZW50cyBpbgogICB0aGUgQyBwaWNrbGUgaW1wbGVtZW50YXRpb24uCiAKQEAgLTM3NSwxODQgKzkwOSw0NyBAQAogLSBJc3N1ZSAjMTIyODc6IEZpeCBhIHN0YWNrIGNvcnJ1cHRpb24gaW4gb3NzYXVkaW9kZXYgbW9kdWxlIHdoZW4gdGhlIEZEIGlzCiAgIGdyZWF0ZXIgdGhhbiBGRF9TRVRTSVpFLgogCistIElzc3VlICMxMjgzOTogRml4IGNyYXNoIGluIHpsaWIgbW9kdWxlIGR1ZSB0byB2ZXJzaW9uIG1pc21hdGNoLgorICBGaXggYnkgUmljaGFyZCBNLiBUZXcuCisKKy0gSXNzdWUgIzk5MjM6IFRoZSBtYWlsY2FwIG1vZHVsZSBub3cgY29ycmVjdGx5IHVzZXMgdGhlIHBsYXRmb3JtIHBhdGgKKyAgc2VwYXJhdG9yIGZvciB0aGUgTUFJTENBUCBlbnZpcm9ubWVudCB2YXJpYWJsZSBvbiBub24tUE9TSVggcGxhdGZvcm1zLgorCistIElzc3VlICMxMjgzNTogRm9sbG93IHVwIHRvICM2NTYwIHRoYXQgdW5jb25kaXRpb25hbGx5IHByZXZlbnRzIHVzZSBvZiB0aGUKKyAgdW5lbmNyeXB0ZWQgc2VuZG1zZy9yZWN2bXNnIEFQSXMgb24gU1NMIHdyYXBwZWQgc29ja2V0cy4gUGF0Y2ggYnkgRGF2aWQKKyAgV2F0c29uLgorCistIElzc3VlICMxMjgwMzogU1NMQ29udGV4dC5sb2FkX2NlcnRfY2hhaW4oKSBub3cgYWNjZXB0cyBhIHBhc3N3b3JkIGFyZ3VtZW50CisgIHRvIGJlIHVzZWQgaWYgdGhlIHByaXZhdGUga2V5IGlzIGVuY3J5cHRlZC4gIFBhdGNoIGJ5IEFkYW0gU2ltcGtpbnMuCisKIC0gSXNzdWUgIzExNjU3OiBGaXggc2VuZGluZyBmaWxlIGRlc2NyaXB0b3JzIG92ZXIgMjU1IG92ZXIgYSBtdWx0aXByb2Nlc3NpbmcKICAgUGlwZS4KIAotLSBJc3N1ZSAjMTMwMDc6IHdoaWNoZGIgc2hvdWxkIHJlY29nbml6ZSBnZGJtIDEuOSBtYWdpYyBudW1iZXJzLgorLSBJc3N1ZSAjMTI4MTE6IHRhYm5hbm55LmNoZWNrKCkgbm93IHByb21wdGx5IGNsb3NlcyBjaGVja2VkIGZpbGVzLiBQYXRjaCBieQorICBBbnRob255IEJyaWdncy4KKworLSBJc3N1ZSAjNjU2MDogVGhlIHNlbmRtc2cvcmVjdm1zZyBBUEkgaXMgbm93IGV4cG9zZWQgYnkgdGhlIHNvY2tldCBtb2R1bGUKKyAgd2hlbiBwcm92aWRlZCBieSB0aGUgdW5kZXJseWluZyBwbGF0Zm9ybSwgc3VwcG9ydGluZyBwcm9jZXNzaW5nIG9mCisgIGFuY2lsbGFyeSBkYXRhIGluIHB1cmUgUHl0aG9uIGNvZGUuIFBhdGNoIGJ5IERhdmlkIFdhdHNvbiBhbmQgSGVpa28gV3VuZHJhbS4KKworLSBJc3N1ZSAjMTIzMjY6IE9uIExpbnV4LCBzeXMucGxhdGZvcm0gZG9lc24ndCBjb250YWluIHRoZSBtYWpvciB2ZXJzaW9uCisgIGFueW1vcmUuIEl0IGlzIG5vdyBhbHdheXMgJ2xpbnV4JywgaW5zdGVhZCBvZiAnbGludXgyJyBvciAnbGludXgzJyBkZXBlbmRpbmcKKyAgb24gdGhlIExpbnV4IHZlcnNpb24gdXNlZCB0byBidWlsZCBQeXRob24uCiAKIC0gSXNzdWUgIzEyMjEzOiBGaXggYSBidWZmZXJpbmcgYnVnIHdpdGggaW50ZXJsZWF2ZWQgcmVhZHMgYW5kIHdyaXRlcyB0aGF0CiAgIGNvdWxkIGFwcGVhciBvbiBCdWZmZXJlZFJhbmRvbSBzdHJlYW1zLgogCistIElzc3VlICMxMjc3ODogUmVkdWNlIG1lbW9yeSBjb25zdW1wdGlvbiB3aGVuIEpTT04tZW5jb2RpbmcgYSBsYXJnZQorICBjb250YWluZXIgb2YgbWFueSBzbWFsbCBvYmplY3RzLgorCiAtIElzc3VlICMxMjY1MDogRml4IGEgcmFjZSBjb25kaXRpb24gd2hlcmUgYSBzdWJwcm9jZXNzLlBvcGVuIGNvdWxkIGxlYWsKICAgcmVzb3VyY2VzIChGRC96b21iaWUpIHdoZW4ga2lsbGVkIGF0IHRoZSB3cm9uZyB0aW1lLgogCi0tIElzc3VlICMxMDg2MDogaHR0cC5jbGllbnQgbm93IGNvcnJlY3RseSBoYW5kbGVzIGFuIGVtcHR5IHBvcnQgYWZ0ZXIgcG9ydAotICBkZWxpbWl0ZXIgaW4gVVJMcy4KKy0gSXNzdWUgIzEyNzQ0OiBGaXggaW5lZmZpY2llbnQgcmVwcmVzZW50YXRpb24gb2YgaW50ZWdlcnMgYmV0d2VlbiAyKiozMSBhbmQKKyAgMioqNjMgb24gc3lzdGVtcyB3aXRoIGEgNjQtYml0IEMgImxvbmciLgogCi1CdWlsZAotLS0tLS0KLQotLSBJc3N1ZSAjMTMzMjY6IENsZWFuIF9fcHljYWNoZV9fIGRpcmVjdG9yaWVzIGNvcnJlY3RseSBvbiBPcGVuQlNELgotCi1Ub29scy9EZW1vcwotLS0tLS0tLS0tLS0KLQotLSBJc3N1ZSAjMTM2Mjg6IHB5dGhvbi1nZGIucHkgaXMgbm93IGFibGUgdG8gcmV0cmlldmUgbW9yZSBmcmFtZXMgaW4gdGhlIFB5dGhvbgotICB0cmFjZWJhY2sgaWYgUHl0aG9uIGlzIG9wdGltaXplZC4KLQotVGVzdHMKLS0tLS0tCi0KLS0gSXNzdWUgIzEzNzg2OiBSZW1vdmUgdW5pbXBsZW1lbnRlZCAndHJhY2UnIGxvbmcgb3B0aW9uIGZyb20gcmVncnRlc3QucHkuCi0KLS0gSXNzdWUgIzEzNzI1OiBGaXggcmVncnRlc3QgdG8gcmVjb2duaXplIHRoZSBkb2N1bWVudGVkIC1kIGZsYWcuCi0gIFBhdGNoIGJ5IEVybm8gVHVraWEuCi0KLS0gSXNzdWUgIzEzMzA0OiBTa2lwIHRlc3QgY2FzZSBpZiB1c2VyIHNpdGUtcGFja2FnZXMgZGlzYWJsZWQgKC1zIG9yCi0gIFBZVEhPTk5PVVNFUlNJVEUpLiAgKFBhdGNoIGJ5IENhcmwgTWV5ZXIpCi0KLS0gSXNzdWUgIzEzMjE4OiBGaXggdGVzdF9zc2wgZmFpbHVyZXMgb24gRGViaWFuL1VidW50dS4KLQotLSBJc3N1ZSAjMTI4MjE6IEZpeCB0ZXN0X2ZjbnRsIGZhaWx1cmVzIG9uIE9wZW5CU0QgNS4KLQotLSBSZS1lbmFibGUgbGliMnRvMydzIHRlc3RfcGFyc2VyLnB5IHRlc3RzLCB0aG91Z2ggd2l0aCBhbiBleHBlY3RlZCBmYWlsdXJlCi0gIChzZWUgaXNzdWUgMTMxMjUpLgotCi1FeHRlbnNpb24gTW9kdWxlcwotLS0tLS0tLS0tLS0tLS0tLS0KLQotLSBJc3N1ZSAjMTM4NDA6IFRoZSBlcnJvciBtZXNzYWdlIHByb2R1Y2VkIGJ5IGN0eXBlcy5jcmVhdGVfc3RyaW5nX2J1ZmZlcgotICB3aGVuIGdpdmVuIGEgVW5pY29kZSBzdHJpbmcgaGFzIGJlZW4gZml4ZWQuCi0KLS0gSXNzdWUgIzk5NzU6IHNvY2tldDogRml4IGluY29ycmVjdCB1c2Ugb2YgZmxvd2luZm8gYW5kIHNjb3BlX2lkLiBQYXRjaCBieQotICBWaWxtb3MgTmViZWhhai4KLQotLSBJc3N1ZSAjMTMxNTk6IEZpbGVJTyBhbmQgQloyRmlsZSBub3cgdXNlIGEgbGluZWFyLXRpbWUgYnVmZmVyIGdyb3d0aAotICBzdHJhdGVneSBpbnN0ZWFkIG9mIGEgcXVhZHJhdGljLXRpbWUgb25lLgotCi0tIElzc3VlICMxMzA3MDogRml4IGEgY3Jhc2ggd2hlbiBhIFRleHRJT1dyYXBwZXIgY2F1Z2h0IGluIGEgcmVmZXJlbmNlIGN5Y2xlCi0gIHdvdWxkIGJlIGZpbmFsaXplZCBhZnRlciB0aGUgcmVmZXJlbmNlIHRvIGl0cyB1bmRlcmx5aW5nIEJ1ZmZlcmVkUldQYWlyJ3MKLSAgd3JpdGVyIGdvdCBjbGVhcmVkIGJ5IHRoZSBHQy4KLQotLSBJc3N1ZSAjMTI4ODE6IGN0eXBlczogRml4IHNlZ2ZhdWx0IHdpdGggbGFyZ2Ugc3RydWN0dXJlIGZpZWxkIG5hbWVzLgotCi0tIElzc3VlICMxMzA1ODogb3NzYXVkaW9kZXY6IGZpeCBhIGZpbGUgZGVzY3JpcHRvciBsZWFrIG9uIGVycm9yLiBQYXRjaCBieQotICBUaG9tYXMgSmFyb3NjaC4KLQotLSBJc3N1ZSAjMTMwMTM6IGN0eXBlczogRml4IGEgcmVmZXJlbmNlIGxlYWsgaW4gUHlDQXJyYXlUeXBlX2Zyb21fY3R5cGUuCi0gIFRoYW5rcyB0byBTdW1hbiBTYWhhIGZvciBmaW5kaW5nIHRoZSBidWcgYW5kIHByb3ZpZGluZyBhIHBhdGNoLgotCi0tIElzc3VlICMxMzAyMjogRml4OiBfbXVsdGlwcm9jZXNzaW5nLnJlY3ZmZCgpIGRvZXNuJ3QgY2hlY2sgdGhhdAotICBmaWxlIGRlc2NyaXB0b3Igd2FzIGFjdHVhbGx5IHJlY2VpdmVkLgotCi0tIElzc3VlICMxMjQ4MzogY3R5cGVzOiBGaXggYSBjcmFzaCB3aGVuIHRoZSBkZXN0cnVjdGlvbiBvZiBhIGNhbGxiYWNrCi0gIG9iamVjdCB0cmlnZ2VycyB0aGUgZ2FyYmFnZSBjb2xsZWN0b3IuCi0KLS0gSXNzdWUgIzEyOTUwOiBGaXggcGFzc2luZyBmaWxlIGRlc2NyaXB0b3JzIGluIG11bHRpcHJvY2Vzc2luZywgdW5kZXIKLSAgT3BlbkluZGlhbmEvSWxsdW1vcy4KLQotRG9jdW1lbnRhdGlvbgotLS0tLS0tLS0tLS0tLQotCi0tIElzc3VlICMxMzQwMjogRG9jdW1lbnQgYWJzb2x1dGVuZXNzIG9mIHN5cy5leGVjdXRhYmxlLgotCi0tIElzc3VlICMxMzg4MzogUFlUSE9OQ0FTRU9LIGFsc28gdXNlZCBvbiBPUyBYIGFuZCBPUy8yLgotCi0tIElzc3VlICMxMjk0OTogRG9jdW1lbnQgdGhlIGt3b25seWFyZ2NvdW50IGFyZ3VtZW50IGZvciB0aGUgUHlDb2RlX05ldwotICBDIEFQSSBmdW5jdGlvbi4KLQotLSBJc3N1ZSAjMjEzNDogVGhlIHRva2VuaXplIGRvY3VtZW50YXRpb24gaGFzIGJlZW4gY2xhcmlmaWVkIHRvIGV4cGxhaW4gd2h5Ci0gIGFsbCBvcGVyYXRvciBhbmQgZGVsaW1pdGVyIHRva2VucyBhcmUgdHJlYXRlZCBhcyB0b2tlbi5PUCB0b2tlbnMuCi0KLS0gSXNzdWUgIzEzNTEzOiBGaXggaW8uSU9CYXNlIGRvY3VtZW50YXRpb24gdG8gY29ycmVjdGx5IGxpbmsgdG8gdGhlCi0gIGlvLklPQmFzZS5yZWFkbGluZSBtZXRob2QgaW5zdGVhZCBvZiB0aGUgcmVhZGxpbmUgbW9kdWxlLgotCi0tIElzc3VlICMxMzIzNzogUmVvcmdhbmlzZSBzdWJwcm9jZXNzIGRvY3VtZW50YXRpb24gdG8gZW1waGFzaXNlIGNvbnZlbmllbmNlCi0gIGZ1bmN0aW9ucyBhbmQgdGhlIG1vc3QgY29tbW9ubHkgbmVlZGVkIGFyZ3VtZW50cyB0byBQb3Blbi4KLQotLSBJc3N1ZSAjMTMxNDE6IERlbW9uc3RyYXRlIHJlY29tbWVuZGVkIHN0eWxlIGZvciBzb2NrZXRzZXJ2ZXIgZXhhbXBsZXMuCi0KLQotV2hhdCdzIE5ldyBpbiBQeXRob24gMy4yLjI/Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotKlJlbGVhc2UgZGF0ZTogMDMtU2VwLTIwMTEqCi0KLUNvcmUgYW5kIEJ1aWx0aW5zCi0tLS0tLS0tLS0tLS0tLS0tLQotCi0tIElzc3VlICMxMjMyNjogc3lzLnBsYXRmb3JtIGlzIG5vdyBhbHdheXMgJ2xpbnV4Micgb24gTGludXgsIGV2ZW4gaWYgUHl0aG9uCi0gIGlzIGNvbXBpbGVkIG9uIExpbnV4IDMuCi0KLS0gQWNjZXB0IGJ5dGVzIGZvciB0aGUgQVNUIHN0cmluZyB0eXBlLiBUaGlzIGlzIHRlbXBvcmFyeSB1bnRpbCBhIHByb3BlciBmaXggaW4KLSAgMy4zLgotCi1MaWJyYXJ5Ci0tLS0tLS0tCi0KLS0gSXNzdWUgIzgyODY6IFRoZSBkaXN0dXRpbHMgY29tbWFuZCBzZGlzdCB3aWxsIHByaW50IGEgd2FybmluZyBtZXNzYWdlIGluc3RlYWQKLSAgb2YgY3Jhc2hpbmcgd2hlbiBhbiBpbnZhbGlkIHBhdGggaXMgZ2l2ZW4gaW4gdGhlIG1hbmlmZXN0IHRlbXBsYXRlLgotCi0tIElzc3VlICMxMjg0MTogdGFyZmlsZSB1bm5lY2Vzc2FyaWx5IGNoZWNrZWQgdGhlIGV4aXN0ZW5jZSBvZiBudW1lcmljYWwgdXNlcgotICBhbmQgZ3JvdXAgaWRzIG9uIGV4dHJhY3Rpb24uIElmIG9uZSBvZiB0aGVtIGRpZCBub3QgZXhpc3QgdGhlIHJlc3BlY3RpdmUgaWQKLSAgb2YgdGhlIGN1cnJlbnQgdXNlciAoaS5lLiByb290KSB3YXMgdXNlZCBmb3IgdGhlIGZpbGUgYW5kIG93bmVyc2hpcAotICBpbmZvcm1hdGlvbiB3YXMgbG9zdC4KLQotLSBJc3N1ZSAjMTA5NDY6IFRoZSBkaXN0dXRpbHMgY29tbWFuZHMgYmRpc3RfZHVtYiwgYmRpc3Rfd2luaW5zdCBhbmQgYmRpc3RfbXNpCi0gIG5vdyByZXNwZWN0IGEgLS1za2lwLWJ1aWxkIG9wdGlvbiBnaXZlbiB0byBiZGlzdC4KLQotLSBJc3N1ZSAjMTI4Mzk6IEZpeCBjcmFzaCBpbiB6bGliIG1vZHVsZSBkdWUgdG8gdmVyc2lvbiBtaXNtYXRjaC4KLSAgRml4IGJ5IFJpY2hhcmQgTS4gVGV3LgotCi1FeHRlbnNpb24gTW9kdWxlcwotLS0tLS0tLS0tLS0tLS0tLS0KLQotLSBJc3N1ZSAjOTY1MTogRml4IGEgY3Jhc2ggd2hlbiBjdHlwZXMuY3JlYXRlX3N0cmluZ19idWZmZXIoMCkgd2FzIHBhc3NlZCB0bwotICBzb21lIGZ1bmN0aW9ucyBsaWtlIGZpbGUud3JpdGUoKS4KLQotCi0KLVdoYXQncyBOZXcgaW4gUHl0aG9uIDMuMi4yIHJlbGVhc2UgY2FuZGlkYXRlIDE/Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotCi0qUmVsZWFzZSBkYXRlOiAxNC1BdWctMjAxMSoKLQotQ29yZSBhbmQgQnVpbHRpbnMKLS0tLS0tLS0tLS0tLS0tLS0tCi0KLS0gSXNzdWUgIzEyNzMyOiBJbiBuYXJyb3cgdW5pY29kZSBidWlsZHMsIGFsbG93IFVuaWNvZGUgaWRlbnRpZmllcnMgd2hpY2ggZmFsbAotICBvdXRzaWRlIHRoZSBCTVAuCi0KLS0gSXNzdWUgIzExNjAzOiBGaXggYSBjcmFzaCB3aGVuIF9fc3RyX18gaXMgcmVib3VuZCBhcyBfX3JlcHJfXy4gIFBhdGNoIGJ5Ci0gIEFuZHJlYXMgU3TDvGhyay4KLQotLSBJc3N1ZSAjMTEzMjE6IEZpeCBhIGNyYXNoIHdpdGggbXVsdGlwbGUgaW1wb3J0cyBvZiB0aGUgX3BpY2tsZSBtb2R1bGUgd2hlbgotICBlbWJlZGRpbmcgUHl0aG9uLiAgUGF0Y2ggYnkgQW5kcmVhcyBTdMO8aHJrLgotCi0tIFZlcmlmeSB0aGUgdHlwZXMgb2YgQVNUIHN0cmluZ3MgYW5kIGlkZW50aWZpZXJzIHByb3ZpZGVkIGJ5IHRoZSB1c2VyIGJlZm9yZQotICBjb21waWxpbmcgdGhlbS4KLQotLSBJc3N1ZSAjMTI1Nzk6IHN0ci5mb3JtYXRfbWFwKCkgbm93IHJhaXNlcyBhIFZhbHVlRXJyb3IgaWYgdXNlZCBvbiBhCi0gIGZvcm1hdCBzdHJpbmcgdGhhdCBjb250YWlucyBwb3NpdGlvbmFsIGZpZWxkcy4gSW5pdGlhbCBwYXRjaCBieQotICBKdWxpYW4gQmVybWFuLgotCi0tIElzc3VlICMxMTYyNzogRml4IHNlZ2ZhdWx0IHdoZW4gX19uZXdfXyBvbiBhIGV4Y2VwdGlvbiByZXR1cm5zIGEKLSAgbm9uLWV4Y2VwdGlvbiBjbGFzcy4KLQotLSBJc3N1ZSAjMTIxNDk6IFVwZGF0ZSB0aGUgbWV0aG9kIGNhY2hlIGFmdGVyIGEgdHlwZSdzIGRpY3Rpb25hcnkgZ2V0cwotICBjbGVhcmVkIGJ5IHRoZSBnYXJiYWdlIGNvbGxlY3Rvci4gIFRoaXMgZml4ZXMgYSBzZWdmYXVsdCB3aGVuIGFuIGluc3RhbmNlCi0gIGFuZCBpdHMgdHlwZSBnZXQgY2F1Z2h0IGluIGEgcmVmZXJlbmNlIGN5Y2xlLCBhbmQgdGhlIGluc3RhbmNlJ3MKLSAgZGVhbGxvY2F0b3IgY2FsbHMgb25lIG9mIHRoZSBtZXRob2RzIG9uIHRoZSB0eXBlIChlLmcuIHdoZW4gc3ViY2xhc3NpbmcKLSAgSU9CYXNlKS4gIERpYWdub3NpcyBhbmQgcGF0Y2ggYnkgRGF2aWRlIFJpenpvLgotCi0tIFdoZW4gYSBnZW5lcmF0b3IgeWllbGRzLCBkbyBub3QgcmV0YWluIHRoZSBjYWxsZXIncyBleGNlcHRpb24gc3RhdGUgb24gdGhlCi0gIGdlbmVyYXRvci4KLQotLSBJc3N1ZSAjMTI0NzU6IFByZXZlbnQgZ2VuZXJhdG9ycyBmcm9tIGxlYWtpbmcgdGhlaXIgZXhjZXB0aW9uIHN0YXRlIGludG8gdGhlCi0gIGNhbGxlcidzIGZyYW1lIGFzIHRoZXkgcmV0dXJuIGZvciB0aGUgbGFzdCB0aW1lLgotCi1MaWJyYXJ5Ci0tLS0tLS0tCistIElzc3VlICMxMjY0NjogQWRkIGFuICdlb2YnIGF0dHJpYnV0ZSB0byB6bGliLkRlY29tcHJlc3MsIHRvIG1ha2UgaXQgZWFzaWVyIHRvCisgIGRldGVjdCB0cnVuY2F0ZWQgaW5wdXQgc3RyZWFtcy4KIAogLSBJc3N1ZSAjMTE1MTM6IEZpeCBleGNlcHRpb24gaGFuZGxpbmcgYGB0YXJmaWxlLlRhckZpbGUuZ3pvcGVuKClgYCB3aGVuCiAgIHRoZSBmaWxlIGNhbm5vdCBiZSBvcGVuZWQuCkBAIC01NjUsMTggKzk2Miw0MiBAQAogLSBJc3N1ZSAjMTI1NDA6IFByZXZlbnQgem9tYmllIElETEUgcHJvY2Vzc2VzIG9uIFdpbmRvd3MgZHVlIHRvIGNoYW5nZXMKICAgaW4gb3Mua2lsbCgpLgogCistIEFkZCBzdXBwb3J0IGZvciB1bmFyeSBwbHVzIGFuZCB1bmFyeSBtaW51cyB0byBjb2xsZWN0aW9ucy5Db3VudGVyKCkuCisgIElzc3VlICMxMzEyMTogQWxzbyBhZGQgc3VwcG9ydCBmb3IgaW5wbGFjZSBtYXRoIG9wZXJhdG9ycy4KKwogLSBJc3N1ZSAjMTI2ODM6IHVybHBhcnNlIHVwZGF0ZWQgdG8gaW5jbHVkZSBzdm4gYXMgc2NoZW1lcyB0aGF0IHVzZXMgcmVsYXRpdmUKICAgcGF0aHMuIChzdm4gZnJvbSAxLjUgb253YXJkcyBzdXBwb3J0IHJlbGF0aXZlIHBhdGgpLgogCistIElzc3VlICMxMjY1NTogRXhwb3NlIGZ1bmN0aW9ucyBmcm9tIHNjaGVkLmggaW4gdGhlIG9zIG1vZHVsZTogc2NoZWRfeWllbGQoKSwKKyAgc2NoZWRfc2V0c2NoZWR1bGVyKCksIHNjaGVkX2dldHNjaGVkdWxlcigpLCBzY2hlZF9zZXRwYXJhbSgpLAorICBzY2hlZF9nZXRfbWluX3ByaW9yaXR5KCksIHNjaGVkX2dldF9tYXhfcHJpb3JpdHkoKSwgc2NoZWRfcnJfZ2V0X2ludGVydmFsKCksCisgIHNjaGVkX2dldGFmZmluaXR5KCksIHNjaGVkX3NldGFmZmluaXR5KCkuCisKKy0gQWRkIFRocmVhZEVycm9yIHRvIHRocmVhZGluZy5fX2FsbF9fLgorCiAtIElzc3VlcyAjMTExMDQsICM4Njg4OiBGaXggdGhlIGJlaGF2aW9yIG9mIGRpc3R1dGlscycgc2Rpc3QgY29tbWFuZCB3aXRoCiAgIG1hbnVhbGx5LW1haW50YWluZWQgTUFOSUZFU1QgZmlsZXMuCiAKKy0gSXNzdWUgIzExMjgxOiBzbXRwbGliLlNUTVAgZ2V0cyBzb3VyY2VfYWRkcmVzcyBwYXJhbWV0ZXIsIHdoaWNoIGFkZHMgdGhlCisgIGFiaWxpdHkgdG8gYmluZCB0byBzcGVjaWZpYyBzb3VyY2UgYWRkcmVzcyBvbiBhIG1hY2hpbmUgd2l0aCBtdWx0aXBsZQorICBpbnRlcmZhY2VzLiBQYXRjaCBieSBQYXVsbyBTY2FyZGluZS4KKwogLSBJc3N1ZSAjMTI0NjQ6IHRlbXBmaWxlLlRlbXBvcmFyeURpcmVjdG9yeS5jbGVhbnVwKCkgc2hvdWxkIG5vdCBmb2xsb3cKICAgc3ltbGlua3M6IGZpeCBpdC4gUGF0Y2ggYnkgUGV0cmkgTGVodGluZW4uCiAKIC0gSXNzdWUgIzg4ODc6ICJweWRvYyBzb21lYnVpbHRpbi5zb21lbWV0aG9kIiAob3IgaGVscCgnc29tZWJ1aWx0aW4uc29tZW1ldGhvZCcpCiAgIGluIFB5dGhvbiBjb2RlKSBub3cgZmluZHMgdGhlIGRvYyBvZiB0aGUgbWV0aG9kLgogCistIElzc3VlICMxMDk2ODogUmVtb3ZlIGluZGlyZWN0aW9uIGluIHRocmVhZGluZy4gIFRoZSBwdWJsaWMgbmFtZXMgKFRocmVhZCwKKyAgQ29uZGl0aW9uLCBldGMuKSB1c2VkIHRvIGJlIGZhY3RvcnkgZnVuY3Rpb25zIHJldHVybmluZyBpbnN0YW5jZXMgb2YgaGlkZGVuCisgIGNsYXNzZXMgKF9UaHJlYWQsIF9Db25kaXRpb24sIGV0Yy4pLCBiZWNhdXNlIChpZiBHdWlkbyByZWNhbGxzIGNvcnJlY3RseSkgdGhpcworICBjb2RlIHByZS1kYXRlcyB0aGUgYWJpbGl0eSB0byBzdWJjbGFzcyBleHRlbnNpb24gdHlwZXMuICBJdCBpcyBub3cgcG9zc2libGUgdG8KKyAgaW5oZXJpdCBmcm9tIFRocmVhZCBhbmQgb3RoZXIgY2xhc3Nlcywgd2l0aG91dCBoYXZpbmcgdG8gaW1wb3J0IHRoZSBwcml2YXRlCisgIHVuZGVyc2NvcmVkIG5hbWVzIGxpa2UgbXVsdGlwcm9jZXNzaW5nIGRpZC4KKworLSBJc3N1ZSAjOTcyMzogQWRkIHNobGV4LnF1b3RlIGZ1bmN0aW9ucywgdG8gZXNjYXBlIGZpbGVuYW1lcyBhbmQgY29tbWFuZAorICBsaW5lcy4KKwogLSBJc3N1ZSAjMTI2MDM6IEZpeCBweWRvYy5zeW5vcHNpcygpIG9uIGZpbGVzIHdpdGggbm9uLW5lZ2F0aXZlIHN0X210aW1lLgogCiAtIElzc3VlICMxMjUxNDogVXNlIHRyeS9maW5hbGx5IHRvIGFzc3VyZSB0aGUgdGltZWl0IG1vZHVsZSByZXN0b3JlcyBnYXJiYWdlCkBAIC01OTEsMTkgKzEwMTIsMzUgQEAKIC0gSXNzdWUgIzEyNTc2OiBGaXggdXJsb3BlbiBiZWhhdmlvciBvbiBzaXRlcyB3aGljaCBkbyBub3Qgc2VuZCAob3Igb2JmdXNjYXRlcykKICAgQ29ubmVjdGlvbjpjbG9zZSBoZWFkZXIuCiAKKy0gSXNzdWUgIzEyMTAyOiBEb2N1bWVudCB0aGF0IGJ1ZmZlcmVkIGZpbGVzIG11c3QgYmUgZmx1c2hlZCBiZWZvcmUgYmVpbmcgdXNlZAorICB3aXRoIG1tYXAuIFBhdGNoIGJ5IFN0ZWZmZW4gRGFvZGUgTnVycG1lc28uCisKKy0gSXNzdWUgIzEyNTYwOiBCdWlsZCBsaWJweXRob24uc28gb24gT3BlbkJTRC4gUGF0Y2ggYnkgU3RlZmFuIFNwZXJsaW5nLgorCiAtIElzc3VlICMxODEzOiBGaXggY29kZWMgbG9va3VwIHVuZGVyIFR1cmtpc2ggbG9jYWxlcy4KIAogLSBJc3N1ZSAjMTI1OTE6IEltcHJvdmUgc3VwcG9ydCBvZiAidW5pdmVyc2FsIG5ld2xpbmVzIiBpbiB0aGUgc3VicHJvY2VzcwogICBtb2R1bGU6IHRoZSBwaXBlZCBzdHJlYW1zIGNhbiBub3cgYmUgcHJvcGVybHkgcmVhZCBmcm9tIG9yIHdyaXR0ZW4gdG8uCiAKIC0gSXNzdWUgIzEyNTkxOiBBbGxvdyBpby5UZXh0SU9XcmFwcGVyIHRvIHdvcmsgd2l0aCByYXcgSU8gb2JqZWN0cyAod2l0aG91dAotICBhIHJlYWQxKCkgbWV0aG9kKSwgYW5kIGFkZCBhbiB1bmRvY3VtZW50ZWQgKndyaXRlX3Rocm91Z2gqIHBhcmFtZXRlciB0bwotICBtYW5kYXRlIHVuYnVmZmVyZWQgd3JpdGVzLgotCi0tIElzc3VlICM5NjExLCAjOTAxNTogRmlsZUlPLnJlYWQoKSBjbGFtcHMgdGhlIGxlbmd0aCB0byBJTlRfTUFYIG9uIFdpbmRvd3MuCisgIGEgcmVhZDEoKSBtZXRob2QpLCBhbmQgYWRkIGEgKndyaXRlX3Rocm91Z2gqIHBhcmFtZXRlciB0byBtYW5kYXRlCisgIHVuYnVmZmVyZWQgd3JpdGVzLgogCiAtIElzc3VlICMxMDg4MzogRml4IHNvY2tldCBsZWFrcyBpbiB1cmxsaWIucmVxdWVzdCB3aGVuIHVzaW5nIEZUUC4KIAorLSBJc3N1ZSAjMTI1OTI6IE1ha2UgUHl0aG9uIGJ1aWxkIG9uIE9wZW5CU0QgNSAoYW5kIGZ1dHVyZSBtYWpvciByZWxlYXNlcykuCisKKy0gSXNzdWUgIzEyMzcyOiBQT1NJWCBzZW1hcGhvcmVzIGFyZSBicm9rZW4gb24gQUlYOiBkb24ndCB1c2UgdGhlbS4KKworLSBJc3N1ZSAjMTI1NTE6IFByb3ZpZGUgYSBnZXRfY2hhbm5lbF9iaW5kaW5nKCkgbWV0aG9kIG9uIFNTTCBzb2NrZXRzIHNvIGFzCisgIHRvIGdldCBjaGFubmVsIGJpbmRpbmcgZGF0YSBmb3IgdGhlIGN1cnJlbnQgU1NMIHNlc3Npb24gKG9ubHkgdGhlCisgICJ0bHMtdW5pcXVlIiBjaGFubmVsIGJpbmRpbmcgaXMgaW1wbGVtZW50ZWQpLiAgVGhpcyBhbGxvd3MgdGhlIGltcGxlbWVudGF0aW9uCisgIG9mIGNlcnRhaW4gYXV0aGVudGljYXRpb24gbWVjaGFuaXNtcyBzdWNoIGFzIFNDUkFNLVNIQS0xLVBMVVMuICBQYXRjaCBieQorICBKYWNlayBLb25pZWN6bnkuCisKKy0gSXNzdWUgIzY2NTE5NDogZW1haWwudXRpbHMgbm93IGhhcyBmb3JtYXRfZGF0ZXRpbWUgYW5kIHBhcnNlZGF0ZV90b19kYXRldGltZQorICBmdW5jdGlvbnMsIGFsbG93aW5nIGZvciByb3VuZCB0cmlwcGluZyBvZiBSRkMyODIyIGZvcm1hdCBkYXRlcy4KKwogLSBJc3N1ZSAjMTI1NzE6IEFkZCBhIHBsYXQtbGludXgzIGRpcmVjdG9yeSBtaXJyb3JpbmcgdGhlIHBsYXQtbGludXgyCiAgIGRpcmVjdG9yeSwgc28gdGhhdCAiaW1wb3J0IERMRkNOIiBhbmQgb3RoZXIgc2ltaWxhciBpbXBvcnRzIHdvcmsgb24KICAgTGludXggMy4wLgpAQCAtNjExLDE4MSArMTA0OCw5MSBAQAogLSBJc3N1ZSAjNzQ4NDogc210cGxpYiBubyBsb25nZXIgcHV0cyA8PiBhcm91bmQgYWRkcmVzc2VzIGluIFZSRlkgYW5kIEVYUE4KICAgY29tbWFuZHM7IHRoZXkgYXJlbid0IHJlcXVpcmVkIGFuZCBpbiBmYWN0IHBvc3RmaXggZG9lc24ndCBzdXBwb3J0IHRoYXQgZm9ybS4KIAotLSBDbG9zZSB0aGUgY2FsbCBxdWV1ZSBpbiBjb25jdXJyZW50LmZ1dHVyZXMuUHJvY2Vzc1Bvb2xFeGVjdXRvciB3aGVuCi0gIHNodXRkb3duKCkgaXMgY2FsbGVkLCB3aXRob3V0IHdhaXRpbmcgZm9yIHRoZSBnYXJiYWdlIGNvbGxlY3RvciB0byBraWNrIGluLgorLSBJc3N1ZSAjMTIyNzM6IFJlbW92ZSBhc3QuX192ZXJzaW9uX18uIEFTVCBjaGFuZ2VzIGNhbiBiZSBhY2NvdW50ZWQgZm9yIGJ5CisgIGNoZWNraW5nIHN5cy52ZXJzaW9uX2luZm8gb3Igc3lzLl9tZXJjdXJpYWwuCisKKy0gU2lsZW5jZSBzcHVyaW91cyAiYnJva2VuIHBpcGUiIHRyYWNlYmFja3Mgd2hlbiBzaHV0dGluZyBkb3duIGEKKyAgUHJvY2Vzc1Bvb2xFeGVjdXRvci4KKworLSBGaXggcG90ZW50aWFsIHJlc291cmNlIGxlYWtzIGluIGNvbmN1cnJlbnQuZnV0dXJlcy5Qcm9jZXNzUG9vbEV4ZWN1dG9yCisgIGJ5IGpvaW5pbmcgYWxsIHF1ZXVlcyBhbmQgcHJvY2Vzc2VzIHdoZW4gc2h1dGRvd24oKSBpcyBjYWxsZWQuCisKKy0gSXNzdWUgIzExNjAzOiBGaXggYSBjcmFzaCB3aGVuIF9fc3RyX18gaXMgcmVib3VuZCBhcyBfX3JlcHJfXy4gIFBhdGNoIGJ5CisgIEFuZHJlYXMgU3TDvGhyay4KKworLSBJc3N1ZSAjMTEzMjE6IEZpeCBhIGNyYXNoIHdpdGggbXVsdGlwbGUgaW1wb3J0cyBvZiB0aGUgX3BpY2tsZSBtb2R1bGUgd2hlbgorICBlbWJlZGRpbmcgUHl0aG9uLiAgUGF0Y2ggYnkgQW5kcmVhcyBTdMO8aHJrLgorCistIElzc3VlICM2NzU1OiBBZGQgZ2V0X3djaCgpIG1ldGhvZCB0byBjdXJzZXMud2luZG93IGNsYXNzLiBQYXRjaCBieSBJw7FpZ28KKyAgU2VybmEuCisKKy0gQWRkIGNnaS5jbG9zZWxvZygpIGZ1bmN0aW9uIHRvIGNsb3NlIHRoZSBsb2cgZmlsZS4KIAogLSBJc3N1ZSAjMTI1MDI6IGFzeW5jb3JlOiBmaXggcG9sbGluZyBsb29wIHdpdGggQUZfVU5JWCBzb2NrZXRzLgogCi0tIElzc3VlICM0Mzc2OiBjdHlwZXMgbm93IHN1cHBvcnRzIG5lc3RlZCBzdHJ1Y3R1cmVzIHdpdGggYW4gZW5kaWFubmVzcwotICBkaWZmZXJlbnQgdGhhbiB0aGF0IG9mIHRoZSBwYXJlbnQgc3RydWN0dXJlLiAgUGF0Y2ggYnkgVmxhZCBSaXNjdXRpYS4KKy0gSXNzdWUgIzQzNzY6IGN0eXBlcyBub3cgc3VwcG9ydHMgbmVzdGVkIHN0cnVjdHVyZXMgaW4gYSBlbmRpYW4gZGlmZmVyZW50IHRoYW4KKyAgdGhlIHBhcmVudCBzdHJ1Y3R1cmUuIFBhdGNoIGJ5IFZsYWQgUmlzY3V0aWEuCiAKIC0gUmFpc2UgVmFsdWVFcnJvciB3aGVuIGF0dGVtcHRpbmcgdG8gc2V0IHRoZSBfQ0hVTktfU0laRSBhdHRyaWJ1dGUgb2YgYQogICBUZXh0SU9XcmFwcGVyIHRvIGEgaHVnZSB2YWx1ZSwgbm90IFR5cGVFcnJvci4KIAotLSBJc3N1ZSAjMTI0OTM6IHN1YnByb2Nlc3M6IFBvcGVuLmNvbW11bmljYXRlKCkgbm93IGFsc28gaGFuZGxlcyBFSU5UUiBlcnJvcnMKLSAgaWYgdGhlIHByb2Nlc3MgaGFzIG9ubHkgb25lIHBpcGUuCistIElzc3VlICMxMjUwNDogQ2xvc2UgZmlsZSBoYW5kbGVzIGluIGEgdGltZWx5IG1hbm5lciBpbiBwYWNrYWdpbmcuZGF0YWJhc2UuCisgIFRoaXMgZml4ZXMgYSBidWcgd2l0aCB0aGUgcmVtb3ZlICh1bmluc3RhbGwpIGZlYXR1cmUgb24gV2luZG93cy4KKworLSBJc3N1ZXMgIzEyMTY5IGFuZCAjMTA1MTA6IEZhY3RvciBvdXQgY29kZSB1c2VkIGJ5IHZhcmlvdXMgcGFja2FnaW5nIGNvbW1hbmRzCisgIHRvIG1ha2UgSFRUUCBQT1NUIHJlcXVlc3RzLCBhbmQgbWFrZSBzdXJlIGl0IHVzZXMgQ1JMRi4KKworLSBJc3N1ZSAjMTIwMTY6IE11bHRpYnl0ZSBDSksgZGVjb2RlcnMgbm93IHJlc3luY2hyb25pemUgZmFzdGVyLiBUaGV5IG9ubHkKKyAgaWdub3JlIHRoZSBmaXJzdCBieXRlIG9mIGFuIGludmFsaWQgYnl0ZSBzZXF1ZW5jZS4gRm9yIGV4YW1wbGUsCisgIGInXHhmZlxuJy5kZWNvZGUoJ2diMjMxMicsICdyZXBsYWNlJykgZ2l2ZXMgJ1x1ZmZmZFxuJyBpbnN0ZWFkIG9mICdcdWZmZmQnLgorCistIElzc3VlICMxMjQ1OTogdGltZS5zbGVlcCgpIG5vdyByYWlzZXMgYSBWYWx1ZUVycm9yIGlmIHRoZSBzbGVlcCBsZW5ndGggaXMKKyAgbmVnYXRpdmUsIGluc3RlYWQgb2YgYW4gaW5maW5pdGUgc2xlZXAgb24gV2luZG93cyBvciByYWlzaW5nIGFuIElPRXJyb3Igb24KKyAgTGludXggZm9yIGV4YW1wbGUsIHRvIGhhdmUgdGhlIHNhbWUgYmVoYXZpb3VyIG9uIGFsbCBwbGF0Zm9ybXMuCiAKIC0gSXNzdWUgIzEyNDUxOiBweWRvYzogaHRtbF9nZXRmaWxlKCkgbm93IHVzZXMgdG9rZW5pemUub3BlbigpIHRvIHN1cHBvcnQKLSAgUHl0aG9uIG1vZHVsZXMgdXNpbmcgYSBlbmNvZGluZyBkaWZmZXJlbnQgdGhhbiBVVEYtOCAocmVhZGluZyB0aGUgY29kaW5nCi0gIGNvb2tpZSBvZiB0aGUgbW9kdWxlKS4KKyAgUHl0aG9uIHNjcmlwdHMgdXNpbmcgYSBlbmNvZGluZyBkaWZmZXJlbnQgdGhhbiBVVEYtOCAocmVhZCB0aGUgY29kaW5nIGNvb2tpZQorICBvZiB0aGUgc2NyaXB0KS4KIAotLSBJc3N1ZSAjMTI0NTE6IHB5ZG9jOiBpbXBvcnRmaWxlKCkgbm93IG9wZW5zIHRoZSBQeXRob24gbW9kdWxlIGluIGJpbmFyeSBtb2RlLAotICBpbnN0ZWFkIG9mIHRleHQgbW9kZSB1c2luZyB0aGUgbG9jYWxlIGVuY29kaW5nLCB0byBhdm9pZCBlbmNvZGluZyBpc3N1ZXMuCi0KLS0gSXNzdWUgIzEyNDUxOiBydW5weTogcnVuX3BhdGgoKSBub3cgb3BlbnMgdGhlIFB5dGhvbiBtb2R1bGUgaW4gYmluYXJ5IG1vZGUsCi0gIGluc3RlYWQgb2YgdGV4dCBtb2RlIHVzaW5nIHRoZSBsb2NhbGUgZW5jb2RpbmcsIHRvIHN1cHBvcnQgb3RoZXIgZW5jb2RpbmdzCi0gIHRoYW4gVVRGLTggKG1vZHVsZXMgdXNpbmcgdGhlIGNvZGluZyBjb29raWUpLgotCi0tIElzc3VlICMxMjQ1MTogeG1sLmRvbS5wdWxsZG9tOiBwYXJzZSgpIG5vdyBvcGVucyBmaWxlcyBpbiBiaW5hcnkgbW9kZSBpbnN0ZWFkCi0gIG9mIHRoZSB0ZXh0IG1vZGUgKHVzaW5nIHRoZSBsb2NhbGUgZW5jb2RpbmcpIHRvIGF2b2lkIGVuY29kaW5nIGlzc3Vlcy4KLQotRXh0ZW5zaW9uIE1vZHVsZXMKLS0tLS0tLS0tLS0tLS0tLS0tCi0KLS0gSXNzdWUgIzEyNzY0OiBGaXggYSBjcmFzaCBpbiBjdHlwZXMgd2hlbiB0aGUgbmFtZSBvZiBhIFN0cnVjdHVyZSBmaWVsZCBpcyBub3QKLSAgYSBzdHJpbmcuCi0KLS0gSXNzdWUgIzExMjQxOiBzdWJjbGFzc2VzIG9mIGN0eXBlcy5BcnJheSBjYW4gbm93IGJlIHN1YmNsYXNzZWQuCi0KLS0gSXNzdWUgIzEwMzA5OiBEZWZpbmUgX0dOVV9TT1VSQ0Ugc28gdGhhdCBtcmVtYXAoKSBnZXRzIHRoZSBwcm9wZXIKLSAgc2lnbmF0dXJlLiAgV2l0aG91dCB0aGlzLCBhcmNoaXRlY3R1cmVzIHdoZXJlIHNpemVvZiB2b2lkKiAhPSBzaXplb2YgaW50IGFyZQotICBicm9rZW4uICBQYXRjaCBnaXZlbiBieSBIYWxsdmFyZCBCIEZ1cnVzZXRoLgotCi1DLUFQSQotLS0tLS0KLQotQnVpbGQKLS0tLS0tCi0KLS0gSXNzdWUgIzEyNTYwOiBCdWlsZCBsaWJweXRob24uc28gb24gT3BlbkJTRC4gIFBhdGNoIGJ5IFN0ZWZhbiBTcGVybGluZy4KLQotLSBJc3N1ZSAjMTI1OTI6IE1ha2UgUHl0aG9uIGJ1aWxkIG9uIE9wZW5CU0QgNSAoYW5kIGZ1dHVyZSBtYWpvciByZWxlYXNlcykuCi0KLS0gSXNzdWUgIzEyMzcyOiBQT1NJWCBzZW1hcGhvcmVzIGFyZSBicm9rZW4gb24gQUlYOiBkb24ndCB1c2UgdGhlbS4KLQotVG9vbHMvRGVtb3MKLS0tLS0tLS0tLS0tCi0KLS0gSXNzdWUgIzEwNjM5OiByZWluZGVudC5weSBubyBsb25nZXIgY29udmVydHMgbmV3bGluZXMgYW5kIHdpbGwgcmFpc2UKLSAgYW4gZXJyb3IgaWYgYXR0ZW1wdGluZyB0byBjb252ZXJ0IGEgZmlsZSB3aXRoIG1peGVkIG5ld2xpbmVzLgotCi1UZXN0cwotLS0tLS0KLQotLSBJc3N1ZSAjMTIzMzE6IFRoZSB0ZXN0IHN1aXRlIGZvciBsaWIydG8zIGNhbiBub3cgcnVuIGZyb20gYW4gaW5zdGFsbGVkCi0gIFB5dGhvbi4KLQotLSBJc3N1ZSAjMTI2MjY6IEluIHJlZ3J0ZXN0LCBhbGxvdyB0byBmaWx0ZXIgdGVzdHMgdXNpbmcgYSBnbG9iIGZpbHRlcgotICB3aXRoIHRoZSBgYC1tYGAgKG9yIGBgLS1tYXRjaGBgKSBvcHRpb24uICBUaGlzIHdvcmtzIHdpdGggYWxsIHRlc3QgY2FzZXMKLSAgdXNpbmcgdGhlIHVuaXR0ZXN0IG1vZHVsZS4gIFRoaXMgaXMgdXNlZnVsIHdpdGggbG9uZyB0ZXN0IHN1aXRlcwotICBzdWNoIGFzIHRlc3RfaW8gb3IgdGVzdF9zdWJwcm9jZXNzLgotCi0tIElzc3VlICMxMjYyNDogSXQgaXMgbm93IHBvc3NpYmxlIHRvIGZhaWwgYWZ0ZXIgdGhlIGZpcnN0IGZhaWx1cmUgd2hlbgotICBydW5uaW5nIGluIHZlcmJvc2UgbW9kZSAoYGAtdmBgIG9yIGBgLVdgYCksIGJ5IHVzaW5nIHRoZSBgYC0tZmFpbGZhc3RgYAotICAob3IgYGAtR2BgKSBvcHRpb24gdG8gcmVncnRlc3QuICBUaGlzIGlzIHVzZWZ1bCB3aXRoIGxvbmcgdGVzdCBzdWl0ZXMKLSAgc3VjaCBhcyB0ZXN0X2lvIG9yIHRlc3Rfc3VicHJvY2Vzcy4KLQotLSBJc3N1ZSAjMTI1ODc6IENvcnJlY3QgZmF1bHR5IHRlc3QgZmlsZSBhbmQgcmVmZXJlbmNlIGluIHRlc3RfdG9rZW5pemUuCi0gIChQYXRjaCBieSBSb2JlcnQgWGlhbykKLQotLSBUcnkgaGFyZGVyIHRvIHJlYXAgZGFuZ2xpbmcgdGhyZWFkcyBpbiB0ZXN0LnN1cHBvcnQucmVhcF90aHJlYWRzKCkuCi0KLS0gSXNzdWUgIzEyNTczOiBBZGQgcmVzb3VyY2UgY2hlY2tzIGZvciBkYW5nbGluZyBUaHJlYWQgYW5kIFByb2Nlc3Mgb2JqZWN0cy4KLQotLSBJc3N1ZSAjMTI1NDk6IENvcnJlY3QgdGVzdF9wbGF0Zm9ybSB0byBub3QgZmFpbCB3aGVuIE9TIFggcmV0dXJucyAneDg2XzY0JwotICBhcyB0aGUgcHJvY2Vzc29yIHR5cGUgb24gc29tZSBNYWMgc3lzdGVtcy4KLQotLSBBdm9pZCBmYWlsaW5nIGluIHRlc3Rfcm9ib3RwYXJzZXIgd2hlbiBtdWVibGVzbW9yYWxlZGEuY29tIGlzIGZsYWt5IGFuZAotICBhbiBvdmVyemVhbG91cyBETlMgc2VydmljZSAoZS5nLiBPcGVuRE5TKSByZWRpcmVjdHMgdG8gYSBwbGFjZWhvbGRlcgotICBXZWIgc2l0ZS4KLQotLSBJc3N1ZSAjMTI0NDA6IFdoZW4gdGVzdGluZyB3aGV0aGVyIHNvbWUgYml0cyBpbiBTU0xDb250ZXh0Lm9wdGlvbnMgY2FuIGJlCi0gIHJlc2V0LCBjaGVjayB0aGUgdmVyc2lvbiBvZiB0aGUgT3BlblNTTCBoZWFkZXJzIFB5dGhvbiB3YXMgY29tcGlsZWQgYWdhaW5zdCwKLSAgcmF0aGVyIHRoYW4gdGhlIHJ1bnRpbWUgdmVyc2lvbiBvZiB0aGUgT3BlblNTTCBsaWJyYXJ5LgotCi0tIElzc3VlICMxMjQ5NzogSW5zdGFsbCB0ZXN0L2RhdGEgdG8gcHJldmVudCBmYWlsdXJlcyBvZiB0aGUgdmFyaW91cyBjb2RlY21hcHMKLSAgdGVzdHMuCi0KLS0gSXNzdWUgIzEyNDk2OiBJbnN0YWxsIHRlc3QvY2FwYXRoIGRpcmVjdG9yeSB0byBwcmV2ZW50IHRlc3RfY29ubmVjdF9jYXBhdGgKLSAgdGVzdGNhc2UgZmFpbHVyZSBpbiB0ZXN0X3NzbC4KLQotLSBJc3N1ZSAjMTI0Njk6IFJ1biAid2FrZXVwIiBzaWduYWwgdGVzdHMgaW4gc3VicHJvY2VzcyB0byBydW4gdGhlIHRlc3QgaW4gYQotICBmcmVzaCBwcm9jZXNzIHdpdGggb25seSBvbmUgdGhyZWFkIGFuZCB0byBub3QgY2hhbmdlIHNpZ25hbCBoYW5kbGluZyBvZiB0aGUKLSAgcGFyZW50IHByb2Nlc3MuCi0KLS0gSXNzdWUgIzg3MTY6IEF2b2lkIGNyYXNoZXMgY2F1c2VkIGJ5IEFxdWEgVGsgb24gT1NYIHdoZW4gYXR0ZW1wdGluZyB0byBydW4KLSAgdGVzdF90ayBvciB0ZXN0X3R0a19ndWlvbmx5IHVuZGVyIGEgdXNlcm5hbWUgdGhhdCBpcyBub3QgY3VycmVudGx5IGxvZ2dlZAotICBpbiB0byB0aGUgY29uc29sZSB3aW5kb3dzZXJ2ZXIgKGFzIG1heSBiZSB0aGUgY2FzZSB1bmRlciBidWlsZGJvdCBvciBzc2gpLgotCi0KLVdoYXQncyBOZXcgaW4gUHl0aG9uIDMuMi4xPwotPT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLSpSZWxlYXNlIGRhdGU6IDEwLUp1bC0yMDExKgotCi1MaWJyYXJ5Ci0tLS0tLS0tCistIElzc3VlICMxMjQ5Mzogc3VicHJvY2VzczogUG9wZW4uY29tbXVuaWNhdGUoKSBub3cgYWxzbyBoYW5kbGVzIEVJTlRSIGVycm9ycworICBpZiB0aGUgcHJvY2VzcyBoYXMgb25seSBvbmUgcGlwZS4KIAogLSBJc3N1ZSAjMTI0Njc6IHdhcm5pbmdzOiBmaXggYSByYWNlIGNvbmRpdGlvbiBpZiBhIHdhcm5pbmcgaXMgZW1pdHRlZCBhdAogICBzaHV0ZG93biwgaWYgZ2xvYmFscygpWydfX2ZpbGVfXyddIGlzIE5vbmUuCiAKLVRlc3RzCi0tLS0tLQorLSBJc3N1ZSAjMTI0NTE6IHB5ZG9jOiBpbXBvcnRmaWxlKCkgbm93IG9wZW5zIHRoZSBQeXRob24gc2NyaXB0IGluIGJpbmFyeSBtb2RlLAorICBpbnN0ZWFkIG9mIHRleHQgbW9kZSB1c2luZyB0aGUgbG9jYWxlIGVuY29kaW5nLCB0byBhdm9pZCBlbmNvZGluZyBpc3N1ZXMuCiAKLS0gU2tpcCBuZXR3b3JrIHRlc3RzIHdoZW4gZ2V0YWRkcmluZm8oKSByZXR1cm5zIEVBSV9BR0FJTiwgbWVhbmluZyBhIHRlbXBvcmFyeQotICBmYWlsdXJlIGluIG5hbWUgcmVzb2x1dGlvbi4KKy0gSXNzdWUgIzEyNDUxOiBydW5weTogcnVuX3BhdGgoKSBub3cgb3BlbnMgdGhlIFB5dGhvbiBzY3JpcHQgaW4gYmluYXJ5IG1vZGUsCisgIGluc3RlYWQgb2YgdGV4dCBtb2RlIHVzaW5nIHRoZSBsb2NhbGUgZW5jb2RpbmcsIHRvIHN1cHBvcnQgb3RoZXIgZW5jb2RpbmdzCisgIHRoYW4gVVRGLTggKHNjcmlwdHMgdXNpbmcgdGhlIGNvZGluZyBjb29raWUpLgogCi0tIElzc3VlICMxMTgxMjogU29sdmUgdHJhbnNpZW50IHNvY2tldCBmYWlsdXJlIHRvIGNvbm5lY3QgdG8gJ2xvY2FsaG9zdCcKLSAgaW4gdGVzdF90ZWxuZXRsaWIucHkuCi0KLS0gU29sdmVkIGEgcG90ZW50aWFsIGRlYWRsb2NrIGluIHRlc3RfdGVsbmV0bGliLnB5LiBSZWxhdGVkIHRvIGlzc3VlICMxMTgxMi4KLQotLSBBdm9pZCBmYWlsaW5nIGluIHRlc3RfdXJsbGlibmV0LnRlc3RfYmFkX2FkZHJlc3Mgd2hlbiBzb21lIG92ZXJ6ZWFsb3VzCi0gIEROUyBzZXJ2aWNlIChlLmcuIE9wZW5ETlMpIHJlc29sdmVzIGEgbm9uLWV4aXN0ZW50IGRvbWFpbiBuYW1lLiAgVGhlIHRlc3QKLSAgaXMgbm93IHNraXBwZWQgaW5zdGVhZC4KLQotCi1XaGF0J3MgTmV3IGluIFB5dGhvbiAzLjIuMSByZWxlYXNlIGNhbmRpZGF0ZSAyPwotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotKlJlbGVhc2UgZGF0ZTogMDMtSnVsLTIwMTEqCi0KLUNvcmUgYW5kIEJ1aWx0aW5zCi0tLS0tLS0tLS0tLS0tLS0tLQotCi0tIElzc3VlICMxMjI5MTogWW91IGNhbiBub3cgbG9hZCBtdWx0aXBsZSBtYXJzaGFsbGVkIG9iamVjdHMgZnJvbSBhIHN0cmVhbSwgd2l0aAotICBvdGhlciBkYXRhIGludGVybGVhdmVkIGJldHdlZW4gbWFyc2hhbGxlZCBvYmplY3RzLgotCi0tIElzc3VlICMxMjA4NDogb3Muc3RhdCBvbiBXaW5kb3dzIG5vdyB3b3JrcyBwcm9wZXJseSB3aXRoIHJlbGF0aXZlIHN5bWJvbGljCi0gIGxpbmtzIHdoZW4gY2FsbGVkIGZyb20gYW55IGRpcmVjdG9yeS4KLQotLSBJc3N1ZSAjMTE5NTogbXlfZmdldHMoKSBub3cgYWx3YXlzIGNsZWFycyBlcnJvcnMgYmVmb3JlIGNhbGxpbmcgZmdldHMoKS4gRml4Ci0gIHRoZSBmb2xsb3dpbmcgY2FzZTogc3lzLnN0ZGluLnJlYWQoKSBzdG9wcGVkIHdpdGggQ1RSTCtkIChlbmQgb2YgZmlsZSksCi0gIHJhd19pbnB1dCgpIGludGVycnVwdGVkIGJ5IENUUkwrYy4KLQotLSBJc3N1ZSAjOTY3MDogSW5jcmVhc2UgdGhlIGRlZmF1bHQgc3RhY2sgc2l6ZSBmb3Igc2Vjb25kYXJ5IHRocmVhZHMgb24gTWFjIE9TIFgKLSAgYW5kIEZyZWVCU0QgdG8gcmVkdWNlIHRoZSBjaGFuY2VzIG9mIGEgY3Jhc2ggaW5zdGVhZCBvZiBhICJtYXhpbXVtIHJlY3Vyc2lvbgotICBkZXB0aCIgUnVudGltZUVycm9yIGV4Y2VwdGlvbiAocGF0Y2ggYnkgUm9uYWxkIE91c3NvcmVuKS4KLQotTGlicmFyeQotLS0tLS0tLQorLSBJc3N1ZSAjMTI0NTE6IHhtbC5kb20ucHVsbGRvbTogcGFyc2UoKSBub3cgb3BlbnMgZmlsZXMgaW4gYmluYXJ5IG1vZGUgaW5zdGVhZAorICBvZiB0aGUgdGV4dCBtb2RlICh1c2luZyB0aGUgbG9jYWxlIGVuY29kaW5nKSB0byBhdm9pZCBlbmNvZGluZyBpc3N1ZXMuCiAKIC0gSXNzdWUgIzEyMTQ3OiBBZGp1c3QgdGhlIG5ldy1pbi0zLjIgc210cGxpYi5zZW5kX21lc3NhZ2UgbWV0aG9kIGZvciBiZXR0ZXIKLSAgY29uZm9ybWFuY2UgdG8gdGhlIFJGQ3M6IGNvcnJlY3RseSBoYW5kbGUgU2VuZGVyIGFuZCBSZXNlbnQgaGVhZGVycy4KKyAgY29uZm9ybWFuY2UgdG8gdGhlIFJGQ3M6ICBjb3JyZWN0bHkgaGFuZGxlIFNlbmRlciBhbmQgUmVzZW50LSBoZWFkZXJzLgogCiAtIElzc3VlICMxMjM1MjogRml4IGEgZGVhZGxvY2sgaW4gbXVsdGlwcm9jZXNzaW5nLkhlYXAgd2hlbiBhIGJsb2NrIGlzIGZyZWVkIGJ5CiAgIHRoZSBnYXJiYWdlIGNvbGxlY3RvciB3aGlsZSB0aGUgSGVhcCBsb2NrIGlzIGhlbGQuCiAKKy0gSXNzdWUgIzEyNDYyOiB0aW1lLnNsZWVwKCkgbm93IGNhbGxzIGltbWVkaWF0bHkgdGhlIChQeXRob24pIHNpZ25hbCBoYW5kbGVyCisgIGlmIGl0IGlzIGludGVycnVwdGVkIGJ5IGEgc2lnbmFsLCBpbnN0ZWFkIG9mIGhhdmluZyB0byB3YWl0IHVudGlsIHRoZSBuZXh0CisgIGluc3RydWN0aW9uLgorCistIElzc3VlICMxMjQ0MjogbmV3IHNodXRpbC5kaXNrX3VzYWdlIGZ1bmN0aW9uLCBwcm92aWRpbmcgdG90YWwsIHVzZWQgYW5kIGZyZWUKKyAgZGlzayBzcGFjZSBzdGF0aXN0aWNzLgorCiAtIElzc3VlICMxMjQ1MTogVGhlIFhJbmNsdWRlIGRlZmF1bHQgbG9hZGVyIG9mIHhtbC5ldHJlZSBub3cgZGVjb2RlcyBmaWxlcyBmcm9tCiAgIFVURi04IGluc3RlYWQgb2YgdGhlIGxvY2FsZSBlbmNvZGluZyBpZiB0aGUgZW5jb2RpbmcgaXMgbm90IHNwZWNpZmllZC4gSXQgbm93Ci0gIGFsc28gb3BlbnMgWE1MIGZpbGVzIGZvciB0aGUgcGFyc2VyIGluIGJpbmFyeSBtb2RlIGluc3RlYWQgb2YgdGhlIHRleHQgbW9kZSB0bwotICBhdm9pZCBlbmNvZGluZyBpc3N1ZXMuCi0KLS0gSXNzdWUgIzEyNDUxOiBkb2N0ZXN0LmRlYnVnX3NjcmlwdCgpIGRvZXNuJ3QgY3JlYXRlIGEgdGVtcG9yYXJ5IGZpbGUgYW55bW9yZQorICBhbHNvIG9wZW5zIFhNTCBmaWxlcyBmb3IgdGhlIHBhcnNlciBpbiBiaW5hcnkgbW9kZSBpbnN0ZWFkIG9mIHRoZSB0ZXh0IG1vZGUKICAgdG8gYXZvaWQgZW5jb2RpbmcgaXNzdWVzLgogCi0tIElzc3VlICMxMjQ1MTogcHlkb2Muc3lub3BzaXMoKSBub3cgcmVhZHMgdGhlIGVuY29kaW5nIGNvb2tpZSBpZiBhdmFpbGFibGUsIHRvCi0gIHJlYWQgdGhlIFB5dGhvbiBtb2R1bGUgZnJvbSB0aGUgcmlnaHQgZW5jb2RpbmcuCistIElzc3VlICMxMjQ1MTogZG9jdGVzdC5kZWJ1Z19zY3JpcHQoKSBkb2Vzbid0IGNyZWF0ZSBhIHRlbXBvcmFyeSBmaWxlCisgIGFueW1vcmUgdG8gYXZvaWQgZW5jb2RpbmcgaXNzdWVzLgorCistIElzc3VlICMxMjQ1MTogcHlkb2Muc3lub3BzaXMoKSBub3cgcmVhZHMgdGhlIGVuY29kaW5nIGNvb2tpZSBpZiBhdmFpbGFibGUsCisgIHRvIHJlYWQgdGhlIFB5dGhvbiBzY3JpcHQgZnJvbSB0aGUgcmlnaHQgZW5jb2RpbmcuCiAKIC0gSXNzdWUgIzEyNDUxOiBkaXN0dXRpbHMgbm93IG9wZW5zIHRoZSBzZXR1cCBzY3JpcHQgaW4gYmluYXJ5IG1vZGUgdG8gcmVhZCB0aGUKICAgZW5jb2RpbmcgY29va2llLCBpbnN0ZWFkIG9mIG9wZW5pbmcgaXQgaW4gVVRGLTguCkBAIC03OTksMTQgKzExNDYsMzIgQEAKICAgc3RpbGwgcG9zc2libGUgdG8gZ2xvYmFsbHkgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYnkgc2V0dGluZwogICBNQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQgYmVmb3JlIGxhdW5jaGluZyB0aGUgaW50ZXJwcmV0ZXI7IGl0cyB2YWx1ZSBtdXN0IGJlCiAgIGdyZWF0ZXIgb3IgZXF1YWwgdG8gdGhlIGRlZmF1bHQgdmFsdWUsIHRoZSB2YWx1ZSB3aXRoIHdoaWNoIHRoZSBpbnRlcnByZXRlcgotICB3YXMgYnVpbHQuCisgIHdhcyBidWlsdC4gIEFsc28sIGltcGxlbWVudCB0aGUgc2FtZSBoYW5kbGluZyBpbiBwYWNrYWdpbmcuCisKKy0gSXNzdWUgIzEyNDIyOiBJbiB0aGUgY29weSBtb2R1bGUsIGRvbid0IHN0b3JlIG9iamVjdHMgdGhhdCBhcmUgdGhlaXIgb3duIGNvcHkKKyAgaW4gdGhlIG1lbW8gZGljdC4KKworLSBJc3N1ZSAjMTIzMDM6IEFkZCBzaWd3YWl0aW5mbygpIGFuZCBzaWd0aW1lZHdhaXQoKSB0byB0aGUgc2lnbmFsIG1vZHVsZS4KKworLSBJc3N1ZSAjMTI0MDQ6IFJlbW92ZSBDODkgaW5jb21wYXRpYmxlIGNvZGUgZnJvbSBtbWFwIG1vZHVsZS4gUGF0Y2ggYnkgQWtpcmEKKyAgS2l0YWRhLgorCistIElzc3VlICMxODc0OiBlbWFpbCBub3cgZGV0ZWN0cyBhbmQgcmVwb3J0cyBhcyBhIGRlZmVjdCB0aGUgcHJlc2VuY2Ugb2YKKyAgYW55IENURSBvdGhlciB0aGFuIDdiaXQsIDhiaXQsIG9yIGJpbmFyeSBvbiBhIG11bHRpcGFydC4KIAogLSBJc3N1ZSAjMTIzODM6IEZpeCBzdWJwcm9jZXNzIG1vZHVsZSB3aXRoIGVudj17fTogZG9uJ3QgY29weSB0aGUgZW52aXJvbm1lbnQKICAgdmFyaWFibGVzLCBzdGFydCB3aXRoIGFuIGVtcHR5IGVudmlyb25tZW50LgogCi0tIElzc3VlICMxMTU4NDogZW1haWwuaGVhZGVyLmRlY29kZV9oZWFkZXIgbm8gbG9uZ2VyIGZhaWxzIGlmIHRoZSBoZWFkZXIgcGFzc2VkCi0gIHRvIGl0IGlzIGEgSGVhZGVyIG9iamVjdCwgYW5kIEhlYWRlci9tYWtlX2hlYWRlciBubyBsb25nZXIgZmFpbCBpZiBnaXZlbgotICBiaW5hcnkgdW5rbm93bi04Yml0IGlucHV0LgorLSBJc3N1ZSAjMTE2Mzc6IEZpeCBzdXBwb3J0IGZvciBpbXBvcnRpbmcgcGFja2FnaW5nIHNldHVwIGhvb2tzIGZyb20gdGhlCisgIHByb2plY3QgZGlyZWN0b3J5LgorCistIElzc3VlICM2NzcxOiBNb3ZlZCB0aGUgY3Vyc2VzLndyYXBwZXIgZnVuY3Rpb24gZnJvbSB0aGUgc2luZ2xlLWZ1bmN0aW9uCisgIHdyYXBwZXIgbW9kdWxlIGludG8gX19pbml0X18sIGVsaW1pbmF0aW5nIHRoZSBtb2R1bGUuICBTaW5jZSBfX2luaXRfXyB3YXMKKyAgYWxyZWFkeSBpbXBvcnRpbmcgdGhlIGZ1bmN0aW9uIHRvIGN1cnNlcy53cmFwcGVyLCB0aGVyZSBpcyBubyBBUEkgY2hhbmdlLgorCistIElzc3VlICMxMTU4NDogZW1haWwuaGVhZGVyLmRlY29kZV9oZWFkZXIgbm8gbG9uZ2VyIGZhaWxzIGlmIHRoZSBoZWFkZXIKKyAgcGFzc2VkIHRvIGl0IGlzIGEgSGVhZGVyIG9iamVjdCwgYW5kIEhlYWRlci9tYWtlX2hlYWRlciBubyBsb25nZXIgZmFpbAorICBpZiBnaXZlbiBiaW5hcnkgdW5rbm93bi04Yml0IGlucHV0LgogCiAtIElzc3VlICMxMTcwMDogbWFpbGJveCBwcm94eSBvYmplY3QgY2xvc2UgbWV0aG9kcyBjYW4gbm93IGJlIGNhbGxlZCBtdWx0aXBsZQogICB0aW1lcyB3aXRob3V0IGVycm9yLgpAQCAtODE3LDM1ICsxMTgyLDEwNSBAQAogICBjb25uZWN0aW9uIGlmIGl0cyBnZXRyZXNwb25zZSgpIG1ldGhvZCBmYWlscyB3aXRoIGEgc29ja2V0IGVycm9yLiBQYXRjaAogICB3cml0dGVuIGJ5IEV6aW8gTWVsb3R0aS4KIAorLSBJc3N1ZSAjMTIyNDA6IEFsbG93IG11bHRpcGxlIHNldHVwIGhvb2tzIGluIHBhY2thZ2luZydzIHNldHVwLmNmZyBmaWxlcy4KKyAgT3JpZ2luYWwgcGF0Y2ggYnkgRXJpayBCcmF5LgorCiAtIElzc3VlICM5Mjg0OiBBbGxvdyBpbnNwZWN0LmZpbmRzb3VyY2UoKSB0byBmaW5kIHRoZSBzb3VyY2Ugb2YgZG9jdGVzdAogICBmdW5jdGlvbnMuCiAKKy0gSXNzdWUgIzExNTk1OiBGaXggYXNzb3J0ZWQgYnVncyBpbiBwYWNrYWdpbmcudXRpbC5jZmdfdG9fYXJncywgYQorICBjb21wYXRpYmlsaXR5IGhlbHBlciBmb3IgdGhlIGRpc3R1dGlscy1wYWNrYWdpbmcgdHJhbnNpdGlvbi4gIE9yaWdpbmFsIHBhdGNoCisgIGJ5IEVyaWsgQnJheS4KKworLSBJc3N1ZSAjMTIyODc6IEluIG9zc2F1ZGlvZGV2LCBjaGVjayB0aGF0IHRoZSBkZXZpY2UgaXNuJ3QgY2xvc2VkIGluIHNldmVyYWwKKyAgbWV0aG9kcy4KKwogLSBJc3N1ZSAjMTIwMDk6IEZpeGVkIHJlZ3Jlc3Npb24gaW4gbmV0cmMgZmlsZSBjb21tZW50IGhhbmRsaW5nLgogCistIElzc3VlICMxMjI0NjogV2FybiBhbmQgZmFpbCB3aGVuIHRyeWluZyB0byBpbnN0YWxsIGEgdGhpcmQtcGFydHkgcHJvamVjdCBmcm9tCisgIGFuIHVuaW5zdGFsbGVkIFB5dGhvbiAoYnVpbHQgaW4gYSBzb3VyY2UgY2hlY2tvdXQpLiAgT3JpZ2luYWwgcGF0Y2ggYnkKKyAgVHNoZXBhbmcgTGVraG9ua2hvYmUuCisKIC0gSXNzdWUgIzEwNjk0OiB6aXBmaWxlIG5vdyBpZ25vcmVzIGdhcmJhZ2UgYXQgdGhlIGVuZCBvZiBhIHppcGZpbGUuCiAKIC0gSXNzdWUgIzEyMjgzOiBGaXhlZCByZWdyZXNzaW9uIGluIHNtdHBsaWIgcXVvdGluZyBvZiBsZWFkaW5nIGRvdHMgaW4gREFUQS4KIAorLSBJc3N1ZSAjMTA0MjQ6IEFyZ3BhcnNlIG5vdyBpbmNsdWRlcyB0aGUgbmFtZXMgb2YgdGhlIG1pc3NpbmcgcmVxdWlyZWQKKyAgYXJndW1lbnRzIGluIHRoZSBtaXNzaW5nIGFyZ3VtZW50cyBlcnJvciBtZXNzYWdlLgorCiAtIElzc3VlICMxMjE2ODogU3lzTG9nSGFuZGxlciBub3cgYWxsb3dzIE5VTCB0ZXJtaW5hdGlvbiB0byBiZSBjb250cm9sbGVkIHVzaW5nCiAgIGEgbmV3ICdhcHBlbmRfbnVsJyBhdHRyaWJ1dGUgb24gdGhlIGhhbmRsZXIuCiAKIC0gSXNzdWUgIzExNTgzOiBTcGVlZCB1cCBvcy5wYXRoLmlzZGlyIG9uIFdpbmRvd3MgYnkgdXNpbmcgR2V0RmlsZUF0dHJpYnV0ZXMKICAgaW5zdGVhZCBvZiBvcy5zdGF0LgogCistIElzc3VlICMxMjAyMTogTWFrZSBtbWFwJ3MgcmVhZCgpIG1ldGhvZCBhcmd1bWVudCBvcHRpb25hbC4gUGF0Y2ggYnkgUGV0cmkKKyAgTGVodGluZW4uCisKKy0gSXNzdWUgIzkyMDU6IGNvbmN1cnJlbnQuZnV0dXJlcy5Qcm9jZXNzUG9vbEV4ZWN1dG9yIG5vdyBkZXRlY3RzIGtpbGxlZAorICBjaGlsZHJlbiBhbmQgcmFpc2VzIEJyb2tlblByb2Nlc3NQb29sIGluIHN1Y2ggYSBzaXR1YXRpb24uICBQcmV2aW91c2x5IGl0CisgIHdvdWxkIHJlbGlhYmx5IGZyZWV6ZS9kZWFkbG9jay4KKworLSBJc3N1ZSAjMTIwNDA6IEV4cG9zZSBhIG5ldyBhdHRyaWJ1dGUgYGBzZW50aW5lbGBgIG9uIGluc3RhbmNlcyBvZgorICA6Y2xhc3M6YG11bHRpcHJvY2Vzc2luZy5Qcm9jZXNzYC4gIEFsc28sIGZpeCBQcm9jZXNzLmpvaW4oKSB0byBub3QgdXNlCisgIHBvbGxpbmcgYW55bW9yZSwgd2hlbiBnaXZlbiBhIHRpbWVvdXQuCisKKy0gSXNzdWUgIzExODkzOiBSZW1vdmUgb2Jzb2xldGUgaW50ZXJuYWwgd3JhcHBlciBjbGFzcyBgYFNTTEZha2VGaWxlYGAgaW4gdGhlCisgIHNtdHBsaWIgbW9kdWxlLiAgUGF0Y2ggYnkgQ2F0YWxpbiBJYWNvYi4KKworLSBJc3N1ZSAjMTIwODA6IEZpeCBhIERlY2ltYWwucG93ZXIoKSBjYXNlIHRoYXQgdG9vayBhbiB1bnJlYXNvbmFibHkgbG9uZyB0aW1lCisgIHRvIGNvbXB1dGUuCisKKy0gSXNzdWUgIzEyMjIxOiBSZW1vdmUgX192ZXJzaW9uX18gYXR0cmlidXRlcyBmcm9tIHB5ZXhwYXQsIHBpY2tsZSwgdGFyZmlsZSwKKyAgcHlkb2MsIHRraW50ZXIsIGFuZCB4bWwucGFyc2Vycy5leHBhdC4gVGhpcyB3ZXJlIHVzZWxlc3MgdmVyc2lvbiBjb25zdGFudHMKKyAgbGVmdCBvdmVyIGZyb20gdGhlIE1lcmN1cmlhbCB0cmFuc2l0aW9uCisKIC0gTmFtZWQgdHVwbGVzIG5vdyB3b3JrIGNvcnJlY3RseSB3aXRoIHZhcnMoKS4KIAogLSBJc3N1ZSAjMTIwODU6IEZpeCBhbiBhdHRyaWJ1dGUgZXJyb3IgaW4gc3VicHJvY2Vzcy5Qb3BlbiBkZXN0cnVjdG9yIGlmIHRoZQogICBjb25zdHJ1Y3RvciBoYXMgZmFpbGVkLCBlLmcuIGJlY2F1c2Ugb2YgYW4gdW5kZWNsYXJlZCBrZXl3b3JkIGFyZ3VtZW50LiBQYXRjaAogICB3cml0dGVuIGJ5IE9sZWcgT3NobXlhbi4KIAotLSBJc3N1ZSAjOTg1MDY0OiBNYWtlIHBsaXN0bGliIG1vcmUgcmVzaWxpZW50IHRvIGZhdWx0eSBpbnB1dCBwbGlzdHMuICBQYXRjaCBieQotICBNaGVyIE1vdnNpc3lhbi4KKy0gSXNzdWUgIzEyMDI4OiBNYWtlIHRocmVhZGluZy5fZ2V0X2lkZW50KCkgcHVibGljLCByZW5hbWUgaXQgdG8KKyAgdGhyZWFkaW5nLmdldF9pZGVudCgpIGFuZCBkb2N1bWVudCBpdC4gVGhpcyBmdW5jdGlvbiB3YXMgYWxyZWFkeSB1c2VkIHVzaW5nCisgIF90aHJlYWQuZ2V0X2lkZW50KCkuCisKKy0gSXNzdWUgIzEyMTcxOiBJbmNyZW1lbnRhbEVuY29kZXIucmVzZXQoKSBvZiBDSksgY29kZWNzIChtdWx0aWJ5dGVjb2RlYykgY2FsbHMKKyAgZW5jcmVzZXQoKSBpbnN0ZWFkIG9mIGRlY3Jlc2V0KCkuCisKKy0gSXNzdWUgIzEyMjE4OiBSZW1vdmVkIHdzZ2lyZWYuZWdnLWluZm8uCisKKy0gSXNzdWUgIzEyMTk2OiBBZGQgcGlwZTIoKSB0byB0aGUgb3MgbW9kdWxlLgorCistIElzc3VlICM5ODUwNjQ6IE1ha2UgcGxpc3RsaWIgbW9yZSByZXNpbGllbnQgdG8gZmF1bHR5IGlucHV0IHBsaXN0cy4KKyAgUGF0Y2ggYnkgTWhlciBNb3ZzaXN5YW4uCisKKy0gSXNzdWUgIzE2MjU6IEJaMkZpbGUgYW5kIGJ6Mi5kZWNvbXByZXNzKCkgbm93IHN1cHBvcnQgbXVsdGktc3RyZWFtIGZpbGVzLgorICBJbml0aWFsIHBhdGNoIGJ5IE5pciBBaWRlcy4KKworLSBJc3N1ZSAjMTIxNzU6IEJ1ZmZlcmVkUmVhZGVyLnJlYWQoLTEpIG5vdyBjYWxscyByYXcucmVhZGFsbCgpIGlmIGF2YWlsYWJsZS4KKworLSBJc3N1ZSAjMTIxNzU6IEZpbGVJTy5yZWFkYWxsKCkgbm93IG9ubHkgcmVhZHMgdGhlIGZpbGUgcG9zaXRpb24gYW5kIHNpemUKKyAgb25jZS4KIAogLSBJc3N1ZSAjMTIxNzU6IFJhd0lPQmFzZS5yZWFkYWxsKCkgbm93IHJldHVybnMgTm9uZSBpZiByZWFkKCkgcmV0dXJucyBOb25lLgogCiAtIElzc3VlICMxMjE3NTogRmlsZUlPLnJlYWRhbGwoKSBub3cgcmFpc2VzIGEgVmFsdWVFcnJvciBpbnN0ZWFkIG9mIGFuIElPRXJyb3IKICAgaWYgdGhlIGZpbGUgaXMgY2xvc2VkLgogCistIElzc3VlICMxMTEwOTogTmV3IHNlcnZpY2VfYWN0aW9uIG1ldGhvZCBmb3IgQmFzZVNlcnZlciwgdXNlZCBieSBGb3JraW5nTWl4aW4KKyAgY2xhc3MgZm9yIGNsZWFudXAuIEluaXRpYWwgUGF0Y2ggYnkgSnVzdGluIFdhcmsuCisKKy0gSXNzdWUgIzEyMDQ1OiBBdm9pZCBkdXBsaWNhdGUgZXhlY3V0aW9uIG9mIGNvbW1hbmQgaW4KKyAgY3R5cGVzLnV0aWwuX2dldF9zb25hbWUoKS4gIFBhdGNoIGJ5IFNpamluIEpvc2VwaC4KKworLSBJc3N1ZSAjMTA4MTg6IFJlbW92ZSB0aGUgVGsgR1VJIGFuZCB0aGUgc2VydmUoKSBmdW5jdGlvbiBvZiB0aGUgcHlkb2MgbW9kdWxlLAorICBweWRvYyAtZyBoYXMgYmVlbiBkZXByZWNhdGVkIGluIFB5dGhvbiAzLjIgYW5kIGl0IGhhcyBhIG5ldyBlbmhhbmNlZCB3ZWIKKyAgc2VydmVyLgorCistIElzc3VlICMxNDQxNTMwOiBJbiBpbWFwbGliLCByZWFkIHRoZSBkYXRhIGluIG9uZSBjaHVuayB0byBzcGVlZCB1cCBsYXJnZQorICByZWFkcyBhbmQgc2ltcGxpZnkgY29kZS4KKwogLSBJc3N1ZSAjMTIwNzA6IEZpeCB0aGUgTWFrZWZpbGUgcGFyc2VyIG9mIHRoZSBzeXNjb25maWcgbW9kdWxlIHRvIGhhbmRsZQogICBjb3JyZWN0bHkgcmVmZXJlbmNlcyB0byAiYm9ndXMgdmFyaWFibGUiIChlLmcuICJwcmVmaXg9JC9vcHQvcHl0aG9uIikuCiAKQEAgLTg1Myw4MSArMTI4OCwzMCBAQAogICB0aGVpciBlbmNvZGUoKSBtZXRob2QgYW55bW9yZSwgYnV0IGNvbnRpbnVlIHRvIGNhbGwgdGhlIHJlc2V0KCkgbWV0aG9kIGlmIHRoZQogICBmaW5hbCBhcmd1bWVudCBpcyBUcnVlLgogCi0tIElzc3VlICM1NzE1OiBJbiBzb2NrZXRzZXJ2ZXIsIGNsb3NlIHRoZSBzZXJ2ZXIgc29ja2V0IGluIHRoZSBjaGlsZCBwcm9jZXNzLgorLSBJc3N1ZSAjMTIwNDk6IEFkZCBSQU5EX2J5dGVzKCkgYW5kIFJBTkRfcHNldWRvX2J5dGVzKCkgZnVuY3Rpb25zIHRvIHRoZSBzc2wKKyAgbW9kdWxlLgogCi0tIENvcnJlY3QgbG9va3VwIG9mIF9fZGlyX18gb24gb2JqZWN0cy4gQW1vbmcgb3RoZXIgdGhpbmdzLCB0aGlzIGNhdXNlcyBlcnJvcnMKLSAgYmVzaWRlcyBBdHRyaWJ1dGVFcnJvciBmb3VuZCBvbiBsb29rdXAgdG8gYmUgcHJvcGFnYXRlZC4KKy0gSXNzdWUgIzY1MDE6IG9zLmRldmljZV9lbmNvZGluZygpIHJldHVybnMgTm9uZSBvbiBXaW5kb3dzIGlmIHRoZSBhcHBsaWNhdGlvbgorICBoYXMgbm8gY29uc29sZS4KKworLSBJc3N1ZSAjMTIxMDU6IEFkZCBPX0NMT0VYRUMgdG8gdGhlIG9zIG1vZHVsZS4KKworLSBJc3N1ZSAjMTIwNzk6IERlY2ltYWwoJ0luZmluaXR5JykuZm1hKERlY2ltYWwoJzAnKSwgKDMuOTEyMjQzMTgxMjY3ODZlKzE5KzBqKSkKKyAgbm93IHJhaXNlcyBUeXBlRXJyb3IgKHJlZmxlY3RpbmcgdGhlIGludmFsaWQgdHlwZSBvZiB0aGUgM3JkIGFyZ3VtZW50KSByYXRoZXIKKyAgdGhhbiBEZWNpbWFsLkludmFsaWRPcGVyYXRpb24uCiAKIC0gSXNzdWUgIzEyMTI0OiB6aXBpbXBvcnQgZG9lc24ndCBrZWVwIGEgcmVmZXJlbmNlIHRvIHpsaWIuZGVjb21wcmVzcygpIGFueW1vcmUKICAgdG8gYmUgYWJsZSB0byB1bmxvYWQgdGhlIG1vZHVsZS4KIAorLSBBZGQgdGhlIHBhY2thZ2luZyBtb2R1bGUsIGFuIGltcHJvdmVkIGZvcmsgb2YgZGlzdHV0aWxzIChhbHNvIGtub3duIGFzCisgIGRpc3R1dGlsczIpLgorCiAtIElzc3VlICMxMjA2NTogY29ubmVjdF9leCgpIG9uIGFuIFNTTCBzb2NrZXQgbm93IHJldHVybnMgdGhlIG9yaWdpbmFsIGVycm5vCiAgIHdoZW4gdGhlIHNvY2tldCdzIHRpbWVvdXQgZXhwaXJlcyAoaXQgdXNlZCB0byByZXR1cm4gTm9uZSkuCiAKLUV4dGVuc2lvbiBNb2R1bGVzCi0tLS0tLS0tLS0tLS0tLS0tLQotCi0tIElzc3VlICMxMjQwNDogUmVtb3ZlIEM4OSBpbmNvbXBhdGlibGUgY29kZSBmcm9tIG1tYXAgbW9kdWxlLiBQYXRjaCBieSBBa2lyYQotICBLaXRhZGEuCi0KLS0gSXNzdWUgIzEyMjIxOiBSZXBsYWNlIHB5ZXhwYXQuX192ZXJzaW9uX18gd2l0aCB0aGUgUHl0aG9uIHZlcnNpb24uCi0KLUJ1aWxkCi0tLS0tLQotCi0tIElzc3VlICM4NzQ2OiBDb3JyZWN0IGZhdWx0eSBjb25maWd1cmUgY2hlY2tzIHNvIHRoYXQgb3MuY2hmbGFncygpIGFuZAotICBvcy5sY2hmbGFncygpIGFyZSBvbmNlIGFnYWluIGJ1aWx0IG9uIHN5c3RlbXMgdGhhdCBzdXBwb3J0IHRoZXNlIGZ1bmN0aW9ucwotICAoKkJTRCBhbmQgT1MgWCkuICBBbHNvIGFkZCBuZXcgc3RhdCBmaWxlIGZsYWdzIGZvciBPUyBYIChVRl9ISURERU4gYW5kCi0gIFVGX0NPTVBSRVNTRUQpLgotCi0tIElzc3VlICMxMTIxNzogRm9yIDY0LWJpdC8zMi1iaXQgTWFjIE9TIFggdW5pdmVyc2FsIGZyYW1ld29yayBidWlsZHMsIGVuc3VyZQotICAibWFrZSBpbnN0YWxsIiBjcmVhdGVzIHN5bWxpbmtzIGluIC0tcHJlZml4IGJpbiBmb3IgdGhlICItMzIiIGZpbGVzIGluIHRoZQotICBmcmFtZXdvcmsgYmluIGRpcmVjdG9yeSBsaWtlIHRoZSBpbnN0YWxsZXIgZG9lcy4KLQotCi1UZXN0cwotLS0tLS0KLQotLSBJc3N1ZSAjMTI0MDc6IEV4cGxpY2l0bHkgc2tpcCB0ZXN0X2NhcGkuRW1iZWRkaW5nVGVzdCB1bmRlciBXaW5kb3dzLgotCi0tIElzc3VlICMxMjQwMDogcmVncnRlc3QgLVcgZG9lc24ndCByZXJ1biB0aGUgdGVzdHMgdHdpY2UgYW55bW9yZSwgYnV0IGNhcHR1cmVzCi0gIHRoZSBvdXRwdXQgYW5kIGRpc3BsYXlzIGl0IG9uIGZhaWx1cmUgaW5zdGVhZC4gcmVncnRlc3QgLXYgZG9lc24ndCBwcmludCB0aGUKLSAgZXJyb3IgdHdpY2UgYW55bW9yZSBpZiB0aGVyZSBpcyBvbmx5IG9uZSBlcnJvci4KLQotLSBJc3N1ZSAjMTIxNDE6IEluc3RhbGwgYSBjb3B5IG9mIHRlbXBsYXRlIEMgbW9kdWxlIGZpbGUgc28gdGhhdCB0ZXN0X2J1aWxkX2V4dAotICBvZiB0ZXN0X2Rpc3R1dGlscyBpcyBubyBsb25nZXIgc2lsZW50bHkgc2tpcHBlZCB3aGVuIHJ1biBvdXRzaWRlIG9mIGEgYnVpbGQKLSAgZGlyZWN0b3J5LgotCi0tIElzc3VlICM4NzQ2OiBBZGQgYWRkaXRpb25hbCB0ZXN0cyBmb3Igb3MuY2hmbGFncygpIGFuZCBvcy5sY2hmbGFncygpLiAgUGF0Y2gKLSAgYnkgR2FycmV0dCBDb29wZXIuCi0KLS0gSXNzdWUgIzEwNzM2OiBGaXggdGVzdF90dGsgdGVzdF93aWRnZXRzIGZhaWx1cmVzIHdpdGggQ29jb2EgVGsgOC41Ljkgb24gTWFjCi0gIE9TIFguICAoUGF0Y2ggYnkgUm9uYWxkIE91c3NvcmVuKQotCi0tIElzc3VlICMxMjA1NzogQWRkIHRlc3RzIGZvciBJU08gMjAyMiBjb2RlY3MgKGlzbzIwMjJfanAsIGlzbzIwMjJfanBfMiwKLSAgaXNvMjAyMl9rcikuCi0KLQotV2hhdCdzIE5ldyBpbiBQeXRob24gMy4yLjEgcmVsZWFzZSBjYW5kaWRhdGUgMT8KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0KLSpSZWxlYXNlIGRhdGU6IDE1LU1heS0yMDExKgotCi1Db3JlIGFuZCBCdWlsdGlucwotLS0tLS0tLS0tLS0tLS0tLS0KLQotLSBJc3N1ZSAjMTIwNjA6IFVzZSBzaWdfYXRvbWljX3QgdHlwZSBhbmQgdm9sYXRpbGUga2V5d29yZCBpbiB0aGUgc2lnbmFsCi0gIG1vZHVsZS4gUGF0Y2ggd3JpdHRlbiBieSBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCi0KLS0gSXNzdWUgIzEyMDQ0OiBGaXhlZCBzdWJwcm9jZXNzLlBvcGVuIHdoZW4gdXNlZCBhcyBhIGNvbnRleHQgbWFuYWdlciB0bwotICB3YWl0IGZvciB0aGUgcHJvY2VzcyB0byBlbmQgd2hlbiBleGl0aW5nIHRoZSBjb250ZXh0IHRvIGF2b2lkIHVuaW50ZW50aW9uYWxseQotICBsZWF2aW5nIHpvbWJpZSBwcm9jZXNzZXMgYXJvdW5kLgotCi0tIElzc3VlICMxMTk1OiBGaXggaW5wdXQoKSBpZiBpdCBpcyBpbnRlcnJ1cHRlZCBieSBDVFJMK2QgYW5kIHRoZW4gQ1RSTCtjLAotICBjbGVhciB0aGUgZW5kLW9mLWZpbGUgaW5kaWNhdG9yIGFmdGVyIENUUkwrZC4KLQotTGlicmFyeQotLS0tLS0tLQorLSBJc3N1ZSAjODgwOTogVGhlIFNNVFBfU1NMIGNvbnN0cnVjdG9yIGFuZCBTTVRQLnN0YXJ0dGxzKCkgbm93IHN1cHBvcnQKKyAgcGFzc2luZyBhIGBgY29udGV4dGBgIGFyZ3VtZW50IHBvaW50aW5nIHRvIGFuIHNzbC5TU0xDb250ZXh0IGluc3RhbmNlLgorICBQYXRjaCBieSBLYXN1biBIZXJhdGguCiAKIC0gSXNzdWUgIzExMDg4OiBkb24ndCBjcmFzaCB3aGVuIHVzaW5nIEY1IHRvIHJ1biBhIHNjcmlwdCBpbiBJRExFIG9uIE1hY09TWAogICB3aXRoIFRrIDguNS4KQEAgLTkzNSw4ICsxMzE5LDYgQEAKIC0gSXNzdWUgIzk1MTY6IElzc3VlICM5NTE2OiBhdm9pZCBlcnJvcnMgaW4gc3lzY29uZmlnIHdoZW4gTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUCiAgIGlzIHNldCBpbiBzaGVsbC4KIAotLSBJc3N1ZSAjMTIwMTI6IHNzbC5QUk9UT0NPTF9TU0x2MiBiZWNvbWVzIG9wdGlvbmFsLgotCiAtIElzc3VlICM4NjUwOiBNYWtlIHpsaWIgbW9kdWxlIDY0LWJpdCBjbGVhbi4gY29tcHJlc3MoKSwgZGVjb21wcmVzcygpIGFuZAogICB0aGVpciBpbmNyZW1lbnRhbCBjb3VudGVycGFydHMgbm93IHJhaXNlIE92ZXJmbG93RXJyb3IgaWYgZ2l2ZW4gYW4gaW5wdXQKICAgbGFyZ2VyIHRoYW4gNEdCLCBpbnN0ZWFkIG9mIHNpbGVudGx5IHRydW5jYXRpbmcgdGhlIGlucHV0IGFuZCByZXR1cm5pbmcKQEAgLTk1MCwxMiArMTMzMiwxNiBAQAogICB3cml0aW5nLCB0aGVuIHNlZWtpbmcgYmVmb3JlIHRoZSBwcmV2aW91cyB3cml0ZSBidXQgc3RpbGwgd2l0aGluIGJ1ZmZlcmVkCiAgIGRhdGEsIGFuZCB3cml0aW5nIGFnYWluKS4KIAorLSBJc3N1ZSAjOTk3MTogV3JpdGUgYW4gb3B0aW1pemVkIGltcGxlbWVudGF0aW9uIG9mIEJ1ZmZlcmVkUmVhZGVyLnJlYWRpbnRvKCkuCisgIFBhdGNoIGJ5IEpvaG4gTydDb25ub3IuCisKIC0gSXNzdWUgIzEwMjg6IFRrIHJldHVybnMgaW52YWxpZCBVbmljb2RlIG51bGwgaW4gJUE6IFVuaWNvZGVEZWNvZGVFcnJvci4KICAgV2l0aCBUayA8IDguNSBfdGtpbnRlci5jOlB5dGhvbkNtZCgpIHJhaXNlZCBVbmljb2RlRGVjb2RlRXJyb3IsIGNhdXNlZAogICBJRExFIHRvIGV4aXQuICBDb252ZXJ0ZWQgdG8gdmFsaWQgVW5pY29kZSBudWxsIGluIFB5dGhvbkNtZCgpLgogCi0tIElzc3VlICMxMTE2OTogY29tcGlsZWFsbCBtb2R1bGUgdXNlcyByZXByKCkgdG8gZm9ybWF0IGZpbGVuYW1lcyBhbmQgcGF0aHMgdG8KLSAgZXNjYXBlIHN1cnJvZ2F0ZSBjaGFyYWN0ZXJzIGFuZCBzaG93IHNwYWNlcy4KKy0gSXNzdWUgIzExNzk5OiB1cmxsaWIucmVxdWVzdCBBdXRoZW50aWNhdGlvbiBIYW5kbGVycyB3aWxsIHJhaXNlIGEgVmFsdWVFcnJvcgorICB3aGVuIHByZXNlbnRlZCB3aXRoIGFuIHVuc3VwcG9ydGVkIEF1dGhlbnRpY2F0aW9uIFNjaGVtZS4gUGF0Y2ggY29udHJpYnV0ZWQKKyAgYnkgWXV2YWwgR3JlZW5maWVsZC4KIAogLSBJc3N1ZSAjMTA0MTksICM2MDExOiBidWlsZF9zY3JpcHRzIGNvbW1hbmQgb2YgZGlzdHV0aWxzIGhhbmRsZXMgY29ycmVjdGx5CiAgIG5vbi1BU0NJSSBwYXRoIChwYXRoIHRvIHRoZSBQeXRob24gZXhlY3V0YWJsZSkuIE9wZW4gYW5kIHdyaXRlIHRoZSBzY3JpcHQgaW4KQEAgLTk2NSwxMzMgKzEzNTEsNjggQEAKIC0gSXNzdWUgIzg0OTg6IEluIHNvY2tldC5hY2NlcHQoKSwgYWxsb3cgdG8gc3BlY2lmeSAwIGFzIGEgYmFja2xvZyB2YWx1ZSBpbgogICBvcmRlciB0byBhY2NlcHQgZXhhY3RseSBvbmUgY29ubmVjdGlvbi4gIFBhdGNoIGJ5IERhbmllbCBFdmVycy4KIAorLSBJc3N1ZSAjMTIwMTE6IHNpZ25hbC5zaWduYWwoKSBhbmQgc2lnbmFsLnNpZ2ludGVycnVwdCgpIHJhaXNlIGFuIE9TRXJyb3IsCisgIGluc3RlYWQgb2YgYSBSdW50aW1lRXJyb3I6IE9TRXJyb3IgaGFzIGFuIGVycm5vIGF0dHJpYnV0ZS4KKworLSBJc3N1ZSAjMzcwOTogYSBmbHVzaF9oZWFkZXJzIG1ldGhvZCB0byBCYXNlSFRUUFJlcXVlc3RIYW5kbGVyIHdoaWNoIG1hbmFnZXMKKyAgdGhlIHNlbmRpbmcgb2YgaGVhZGVycyB0byBvdXRwdXQgc3RyZWFtIGFuZCBmbHVzaGluZyB0aGUgaW50ZXJuYWwgaGVhZGVycworICBidWZmZXIuIFBhdGNoIGNvbnRyaWJ1dGlvbiBieSBBbmRyZXcgU2NoYWFmCisKKy0gSXNzdWUgIzExNzQzOiBSZXdyaXRlIG11bHRpcHJvY2Vzc2luZyBjb25uZWN0aW9uIGNsYXNzZXMgaW4gcHVyZSBQeXRob24uCisKIC0gSXNzdWUgIzExMTY0OiBTdG9wIHRyeWluZyB0byB1c2UgX3htbHBsdXMgaW4gdGhlIHhtbCBtb2R1bGUuCiAKLUJ1aWxkCi0tLS0tLQorLSBJc3N1ZSAjMTE4ODg6IEFkZCBsb2cyIGZ1bmN0aW9uIHRvIG1hdGggbW9kdWxlLiBQYXRjaCB3cml0dGVuIGJ5IE1hcmsKKyAgRGlja2luc29uLgogCi0tIElzc3VlICMxMTM0NzogVXNlIC0tbm8tYXMtbmVlZGVkIHdoZW4gbGlua2luZyBsaWJweXRob24zLnNvLgorLSBJc3N1ZSAjMTIwMTI6IHNzbC5QUk9UT0NPTF9TU0x2MiBiZWNvbWVzIG9wdGlvbmFsLgogCi1Ub29scy9EZW1vcwotLS0tLS0tLS0tLS0KKy0gSXNzdWUgIzg0MDc6IFRoZSBzaWduYWwgaGFuZGxlciB3cml0ZXMgdGhlIHNpZ25hbCBudW1iZXIgYXMgYSBzaW5nbGUgYnl0ZQorICBpbnN0ZWFkIG9mIGEgbnVsIGJ5dGUgaW50byB0aGUgd2FrZXVwIGZpbGUgZGVzY3JpcHRvci4gU28gaXQgaXMgcG9zc2libGUgdG8KKyAgd2FpdCBtb3JlIHRoYW4gb25lIHNpZ25hbCBhbmQga25vdyB3aGljaCBzaWduYWxzIHdlcmUgcmFpc2VkLgogCi0tIElzc3VlICMxMTk5NjogbGlicHl0aG9uIChnZGIpLCByZXBsYWNlICJweS1idCIgY29tbWFuZCBieSAicHktYnQtZnVsbCIgYW5kCi0gIGFkZCBhIHNtYXJ0ZXIgInB5LWJ0IiBjb21tYW5kIHByaW50aW5nIGEgY2xhc3NpYyBQeXRob24gdHJhY2ViYWNrLgorLSBJc3N1ZSAjODQwNzogQWRkIHB0aHJlYWRfa2lsbCgpLCBzaWdwZW5kaW5nKCkgYW5kIHNpZ3dhaXQoKSBmdW5jdGlvbnMgdG8gdGhlCisgIHNpZ25hbCBtb2R1bGUuCiAKLVRlc3RzCi0tLS0tLQotCi0tIElzc3VlICMxMjA5NjogRml4IGEgcmFjZSBjb25kaXRpb24gaW4gdGVzdF90aHJlYWRpbmcudGVzdF93YWl0Zm9yKCkuIFBhdGNoCi0gIHdyaXR0ZW4gYnkgQ2hhcmxlcy1GcmFuw6dvaXMgTmF0YWxpLgotCi0tIElzc3VlICMxMTYxNDogaW1wb3J0IF9faGVsbG9fXyBwcmludHMgIkhlbGxvIFdvcmxkISIuIFBhdGNoIHdyaXR0ZW4gYnkKLSAgQW5kcmVhcyBTdMO8aHJrLgotCi0tIElzc3VlICM1NzIzOiBJbXByb3ZlIGpzb24gdGVzdHMgdG8gYmUgZXhlY3V0ZWQgd2l0aCBhbmQgd2l0aG91dCBhY2NlbGVyYXRpb25zLgotCi0tIElzc3VlICMxMTkxMDogRml4IHRlc3RfaGVhcHEgdG8gc2tpcCB0aGUgQyB0ZXN0cyB3aGVuIF9oZWFwcSBpcyBtaXNzaW5nLgotCi0KLVdoYXQncyBOZXcgaW4gUHl0aG9uIDMuMi4xIGJldGEgMT8KLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLQotKlJlbGVhc2UgZGF0ZTogMDgtTWF5LTIwMTEqCi0KLUNvcmUgYW5kIEJ1aWx0aW5zCi0tLS0tLS0tLS0tLS0tLS0tLQotCi0tIElzc3VlICMxODU2OiBBdm9pZCBjcmFzaGVzIGFuZCBsb2NrdXBzIHdoZW4gZGFlbW9uIHRocmVhZHMgcnVuIHdoaWxlIHRoZQotICBpbnRlcnByZXRlciBpcyBzaHV0dGluZyBkb3duOyBpbnN0ZWFkLCB0aGVzZSB0aHJlYWRzIGFyZSBub3cga2lsbGVkIHdoZW4gdGhleQotICB0cnkgdG8gdGFrZSB0aGUgR0lMLgotCi0tIElzc3VlICM5NzU2OiBXaGVuIGNhbGxpbmcgYSBtZXRob2QgZGVzY3JpcHRvciBvciBhIHNsb3Qgd3JhcHBlciBkZXNjcmlwdG9yLAotICB0aGUgY2hlY2sgb2YgdGhlIG9iamVjdCB0eXBlIGRvZXNuJ3QgcmVhZCB0aGUgX19jbGFzc19fIGF0dHJpYnV0ZSBhbnltb3JlLgotICBGaXggYSBjcmFzaCBpZiBhIGNsYXNzIG92ZXJyaWRlIGl0cyBfX2NsYXNzX18gYXR0cmlidXRlIChlLmcuIGEgcHJveHkgb2YgdGhlCi0gIHN0ciB0eXBlKS4gUGF0Y2ggd3JpdHRlbiBieSBBbmRyZWFzIFN0w7xocmsuCi0KLS0gSXNzdWUgIzEwOTE0OiBJbml0aWFsaXplIGNvcnJlY3RseSB0aGUgZmlsZXN5c3RlbSBjb2RlYyB3aGVuIGNyZWF0aW5nIGEgbmV3Ci0gIHN1YmludGVycHJldGVyIHRvIGZpeCBhIGJvb3RzdHJhcCBpc3N1ZSB3aXRoIGNvZGVjcyBpbXBsZW1lbnRlZCBpbiBQeXRob24sIGFzCi0gIHRoZSBJU08tODg1OS0xNSBjb2RlYy4KLQotLSBJc3N1ZSAjMTA1MTc6IEFmdGVyIGZvcmsoKSwgcmVpbml0aWFsaXplIHRoZSBUTFMgdXNlZCBieSB0aGUgUHlHSUxTdGF0ZV8qCi0gIEFQSXMsIHRvIGF2b2lkIGEgY3Jhc2ggd2l0aCB0aGUgcHRocmVhZCBpbXBsZW1lbnRhdGlvbiBpbiBSSEVMIDUuICBQYXRjaCBieQotICBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCi0KLS0gSXNzdWUgIzY3ODA6IGZpeCBzdGFydHMvZW5kc3dpdGggZXJyb3IgbWVzc2FnZSB0byBtZW50aW9uIHRoYXQgdHVwbGVzIGFyZQotICBhY2NlcHRlZCB0b28uCi0KLS0gSXNzdWUgIzUwNTc6IGZpeCBhIGJ1ZyBpbiB0aGUgcGVlcGhvbGVyIHRoYXQgbGVkIHRvIG5vbi1wb3J0YWJsZSBweWMgZmlsZXMKLSAgYmV0d2VlbiBuYXJyb3cgYW5kIHdpZGUgYnVpbGRzIHdoaWxlIG9wdGltaXppbmcgQklOQVJZX1NVQlNDUiBvbiBub24tQk1QIGNoYXJzCi0gIChlLmcuICJcVTAwMDEyMzQ1IlswXSkuCi0KLS0gSXNzdWUgIzExODQ1OiBGaXggdHlwbyBpbiByYW5nZW9iamVjdC5jIHRoYXQgY2F1c2VkIGEgY3Jhc2ggaW4KLSAgY29tcHV0ZV9zbGljZV9pbmRpY2VzLiAgUGF0Y2ggYnkgRGFuaWVsIFVyYmFuLgotCi0tIElzc3VlICMxMTY1MDogUHlPU19TdGRpb1JlYWRsaW5lKCkgcmV0cmllcyBmZ2V0cygpIGlmIGl0IHdhcyBpbnRlcnJ1cHRlZAotICAoRUlOVFIpLCBmb3IgZXhhbXBsZSBpZiB0aGUgcHJvZ3JhbSBpcyBzdG9wcGVkIHdpdGggQ1RSTCt6IG9uIE1hYyBPUyBYLiBQYXRjaAotICB3cml0dGVuIGJ5IENoYXJsZXMtRnJhbmNvaXMgTmF0YWxpLgotCi0tIElzc3VlICMxMTM5NTogaW8uRmlsZUlPKCkud3JpdGUoKSBjbGFtcHMgdGhlIGRhdGEgbGVuZ3RoIHRvIDMyLDc2NyBieXRlcyBvbgotICBXaW5kb3dzIGlmIHRoZSBmaWxlIGlzIGEgVFRZIHRvIHdvcmthcm91bmQgYSBXaW5kb3dzIGJ1Zy4gVGhlIFdpbmRvd3MgY29uc29sZQotICByZXR1cm5zIGFuIGVycm9yICgxMjogbm90IGVub3VnaCBzcGFjZSBlcnJvcikgb24gd3JpdGluZyBpbnRvIHN0ZG91dCBpZiBzdGRvdXQKLSAgbW9kZSBpcyBiaW5hcnkgYW5kIHRoZSBsZW5ndGggaXMgZ3JlYXRlciB0aGFuIDY2LDAwMCBieXRlcyAob3IgbGVzcywgZGVwZW5kaW5nCi0gIG9uIGhlYXAgdXNhZ2UpLgotCi0tIElzc3VlICMxMTMyMDogZml4IGJvZ3VzIG1lbW9yeSBtYW5hZ2VtZW50IGluIE1vZHVsZXMvZ2V0cGF0aC5jLCBsZWFkaW5nIHRvIGEKLSAgcG9zc2libGUgY3Jhc2ggd2hlbiBjYWxsaW5nIFB5X1NldFBhdGgoKS4KLQotLSBJc3N1ZSAjMTE1MTA6IEZpeGVkIG9wdGltaXplciBidWcgd2hpY2ggdHVybmVkICJhLGI9ezEsMX0iIGludG8gImEsYj0oMSwxKSIuCi0KLS0gSXNzdWUgIzExNDMyOiBBIGJ1ZyB3YXMgaW50cm9kdWNlZCBpbiBzdWJwcm9jZXNzLlBvcGVuIG9uIHBvc2l4IHN5c3RlbXMgd2l0aAotICAzLjIuMCB3aGVyZSB0aGUgc3Rkb3V0IG9yIHN0ZGVyciBmaWxlIGRlc2NyaXB0b3IgYmVpbmcgdGhlIHNhbWUgYXMgdGhlIHN0ZGluCi0gIGZpbGUgZGVzY3JpcHRvciB3b3VsZCByYWlzZSBhbiBleGNlcHRpb24uIHdlYmJyb3dzZXIub3BlbiB3b3VsZCBmYWlsLiBmaXhlZC4KLQotLSBJc3N1ZSAjMTE0NTA6IERvbid0IHRydW5jYXRlIGhnIHZlcnNpb24gaW5mbyBpbiBQeV9HZXRCdWlsZEluZm8oKSB3aGVuIHRoZXJlCi0gIGFyZSBtYW55IHRhZ3MgKGUuZy4gd2hlbiB1c2luZyBtcSkuICBQYXRjaCBieSBOYWRlZW0gVmF3ZGEuCi0KLS0gSXNzdWUgIzExMjQ2OiBGaXggUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVWIikgdG8gZGVjb2RlIHRoZSBieXRlIHN0cmluZyBmcm9tCi0gIFVURi04ICh3aXRoIHJlcGxhY2UgZXJyb3IgaGFuZGxlcikgaW5zdGVhZCBvZiBJU08tODg1OS0xIChpbiBzdHJpY3QgbW9kZSkuCi0gIFBhdGNoIHdyaXR0ZW4gYnkgUmF5IEFsbGVuLgotCi0tIElzc3VlICMxMTI4NjogUmFpc2UgYSBWYWx1ZUVycm9yIGZyb20gY2FsbGluZyBQeU1lbW9yeVZpZXdfRnJvbUJ1ZmZlciB3aXRoIGEKLSAgYnVmZmVyIHN0cnVjdCBoYXZpbmcgYSBOVUxMIGRhdGEgcG9pbnRlci4KLQotLSBJc3N1ZSAjMTEyNzI6IE9uIFdpbmRvd3MsIGlucHV0KCkgc3RyaXBzICdccicgKGFuZCBub3Qgb25seSAnXG4nKSwgYW5kCi0gIHN5cy5zdGRpbiB1c2VzIHVuaXZlcnNhbCBuZXdsaW5lIChyZXBsYWNlICdcclxuJyBieSAnXG4nKS4KLQotLSBpc3N1ZSAjMTE4Mjg6IHN0YXJ0c3dpdGggYW5kIGVuZHN3aXRoIGRvbid0IGFjY2VwdCBOb25lIGFzIHNsaWNlIGluZGV4LiAgUGF0Y2gKLSAgYnkgVG9yc3RlbiBCZWNrZXIuCi0KLS0gSXNzdWUgIzEwODMwOiBGaXggUHlVbmljb2RlX0Zyb21Gb3JtYXRWKCIlYyIpIGZvciBub24tQk1QIGNoYXJhY3RlcnMgb24KLSAgbmFycm93IGJ1aWxkLgotCi0tIENoZWNrIGZvciBOVUxMIHJlc3VsdCBpbiBQeVR5cGVfRnJvbVNwZWMuCi0KLS0gSXNzdWUgIzExMzg2OiBieXRlYXJyYXkucG9wKCkgbm93IHRocm93cyBJbmRleEVycm9yIHdoZW4gdGhlIGJ5dGVhcnJheSBpcwotICBlbXB0eSwgaW5zdGVhZCBvZiBPdmVyZmxvd0Vycm9yLgotCi1MaWJyYXJ5Ci0tLS0tLS0tCi0KLS0gSXNzdWUgIzExOTI3OiBTTVRQX1NTTCBub3cgdXNlcyBwb3J0IDQ2NSBieSBkZWZhdWx0IGFzIGRvY3VtZW50ZWQuICBQYXRjaCBieQotICBLYXN1biBIZXJhdGguCistIElzc3VlICMxMTkyNzogU01UUF9TU0wgbm93IHVzZXMgcG9ydCA0NjUgYnkgZGVmYXVsdCBhcyBkb2N1bWVudGVkLiAgUGF0Y2gKKyAgYnkgS2FzdW4gSGVyYXRoLgogCiAtIElzc3VlICMxMjAwMjogZnRwbGliJ3MgYWJvcnQoKSBtZXRob2QgcmFpc2VzIFR5cGVFcnJvci4KIAorLSBJc3N1ZSAjMTE5MTY6IEFkZCBhIG51bWJlciBvZiBNYWNPU1ggc3BlY2lmaWMgZGVmaW5pdGlvbnMgdG8gdGhlIGVycm5vIG1vZHVsZS4KKyAgUGF0Y2ggYnkgUGllcnJlIENhcnJpZXIuCisKIC0gSXNzdWUgIzExOTk5OiBmaXhlZCBzcG9yYWRpYyBzeW5jIGZhaWx1cmUgbWFpbGJveC5NYWlsZGlyIGR1ZSB0byBpdHMgdHJ5aW5nIHRvCiAgIGRldGVjdCBtdGltZSBjaGFuZ2VzIGJ5IGNvbXBhcmluZyB0byB0aGUgc3lzdGVtIGNsb2NrIGluc3RlYWQgb2YgdG8gdGhlCiAgIHByZXZpb3VzIHZhbHVlIG9mIHRoZSBtdGltZS4KIAorLSBJc3N1ZSAjMTEwNzI6IGFkZGVkIE1MU0QgY29tbWFuZCAoUkZDLTM2NTkpIHN1cHBvcnQgdG8gZnRwbGliLgorCistIElzc3VlICM4ODA4OiBUaGUgSU1BUDRfU1NMIGNvbnN0cnVjdG9yIG5vdyBhbGxvd3MgcGFzc2luZyBhbiBTU0xDb250ZXh0CisgIHBhcmFtZXRlciB0byBjb250cm9sIHBhcmFtZXRlcnMgb2YgdGhlIHNlY3VyZSBjaGFubmVsLiAgUGF0Y2ggYnkgU2lqaW4KKyAgSm9zZXBoLgorCiAtIG50cGF0aC5zYW1lZmlsZSBmYWlsZWQgdG8gbm90aWNlIHRoYXQgImEudHh0IiBhbmQgIkEuVFhUIiByZWZlciB0byB0aGUgc2FtZQogICBmaWxlIG9uIFdpbmRvd3MgWFAuIEFzIG5vdGljZWQgaW4gaXNzdWUgIzEwNjg0LgogCi0tIElzc3VlICMxMjAwMDogV2hlbiBhIFNTTCBjZXJ0aWZpY2F0ZSBoYXMgYSBzdWJqZWN0QWx0TmFtZSB3aXRob3V0IGFueSBkTlNOYW1lCi0gIGVudHJ5LCBzc2wubWF0Y2hfaG9zdG5hbWUoKSBzaG91bGQgdXNlIHRoZSBzdWJqZWN0J3MgY29tbW9uTmFtZS4gIFBhdGNoIGJ5Ci0gIE5pY29sYXMgQmFyZWlsLgorLSBJc3N1ZSAjMTIwMDA6IFdoZW4gYSBTU0wgY2VydGlmaWNhdGUgaGFzIGEgc3ViamVjdEFsdE5hbWUgd2l0aG91dCBhbnkKKyAgZE5TTmFtZSBlbnRyeSwgc3NsLm1hdGNoX2hvc3RuYW1lKCkgc2hvdWxkIHVzZSB0aGUgc3ViamVjdCdzIGNvbW1vbk5hbWUuCisgIFBhdGNoIGJ5IE5pY29sYXMgQmFyZWlsLgogCi0tIElzc3VlICMxMTY0Nzogb2JqZWN0cyBjcmVhdGVkIHVzaW5nIGNvbnRleHRsaWIuY29udGV4dG1hbmFnZXIgbm93IHN1cHBvcnQgbW9yZQotICB0aGFuIG9uZSBjYWxsIHRvIHRoZSBmdW5jdGlvbiB3aGVuIHVzZWQgYXMgYSBkZWNvcmF0b3IuIEluaXRpYWwgcGF0Y2ggYnkgWXNqCi0gIFJheS4KKy0gSXNzdWUgIzEwNzc1OiBhc3NlcnRSYWlzZXMsIGFzc2VydFJhaXNlc1JlZ2V4LCBhc3NlcnRXYXJucywgYW5kCisgIGFzc2VydFdhcm5zUmVnZXggbm93IGFjY2VwdCBhIGtleXdvcmQgYXJndW1lbnQgJ21zZycgd2hlbiB1c2VkIGFzIGNvbnRleHQKKyAgbWFuYWdlcnMuICBJbml0aWFsIHBhdGNoIGJ5IFdpbnN0b24gRXdlcnQuCisKKy0gSXNzdWUgIzEwNjg0OiBzaHV0aWwubW92ZSB1c2VkIHRvIGRlbGV0ZSBhIGZvbGRlciBvbiBjYXNlIGluc2Vuc2l0aXZlCisgIGZpbGVzeXN0ZW1zIHdoZW4gdGhlIHNvdXJjZSBhbmQgZGVzdGluYXRpb24gbmFtZSB3aGVyZSB0aGUgc2FtZSBleGNlcHQKKyAgZm9yIHRoZSBjYXNlLgorCistIElzc3VlICMxMTY0Nzogb2JqZWN0cyBjcmVhdGVkIHVzaW5nIGNvbnRleHRsaWIuY29udGV4dG1hbmFnZXIgbm93IHN1cHBvcnQKKyAgbW9yZSB0aGFuIG9uZSBjYWxsIHRvIHRoZSBmdW5jdGlvbiB3aGVuIHVzZWQgYXMgYSBkZWNvcmF0b3IuIEluaXRpYWwgcGF0Y2gKKyAgYnkgWXNqIFJheS4KKworLSBJc3N1ZSAjMTE5MzA6IFJlbW92ZWQgZGVwcmVjYXRlZCB0aW1lLmFjY2VwdDJkeWVhciB2YXJpYWJsZS4KKyAgUmVtb3ZlZCB5ZWFyID49IDEwMDAgcmVzdHJpY3Rpb24gZnJvbSBkYXRldGltZS5zdHJmdGltZS4KIAogLSBsb2dnaW5nOiBkb24ndCBkZWZpbmUgUXVldWVMaXN0ZW5lciBpZiBQeXRob24gaGFzIG5vIHRocmVhZCBzdXBwb3J0LgogCkBAIC0xMTAwLDE2ICsxNDIxLDM5IEBACiAtIElzc3VlICMxMTI3NzogbW1hcC5tbWFwKCkgY2FsbHMgZmNudGwoZmQsIEZfRlVMTEZTWU5DKSBvbiBNYWMgT1MgWCB0byBnZXQKICAgYXJvdW5kIGEgbW1hcCBidWcgd2l0aCBzcGFyc2UgZmlsZXMuIFBhdGNoIHdyaXR0ZW4gYnkgU3RlZmZlbiBEYW9kZSBOdXJwbWVzby4KIAorLSBJc3N1ZSAjODQwNzogQWRkIHNpZ25hbC5wdGhyZWFkX3NpZ21hc2soKSBmdW5jdGlvbiB0byBmZXRjaCBhbmQvb3IgY2hhbmdlIHRoZQorICBzaWduYWwgbWFzayBvZiB0aGUgY2FsbGluZyB0aHJlYWQuCisKIC0gSXNzdWUgIzExODU4OiBjb25maWdwYXJzZXIuRXh0ZW5kZWRJbnRlcnBvbGF0aW9uIGV4cGVjdGVkIGxvd2VyLWNhc2Ugc2VjdGlvbgogICBuYW1lcy4KIAogLSBJc3N1ZSAjMTEzMjQ6IENvbmZpZ1BhcnNlcihpbnRlcnBvbGF0aW9uPU5vbmUpIG5vdyB3b3JrcyBjb3JyZWN0bHkuCiAKKy0gSXNzdWUgIzExODExOiBzc2wuZ2V0X3NlcnZlcl9jZXJ0aWZpY2F0ZSgpIGlzIG5vdyBJUHY2LWNvbXBhdGlibGUuICBQYXRjaAorICBieSBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCisKIC0gSXNzdWUgIzExNzYzOiBkb24ndCB1c2UgZGlmZmxpYiBpbiBUZXN0Q2FzZS5hc3NlcnRNdWx0aUxpbmVFcXVhbCBpZiB0aGUKICAgc3RyaW5ncyBhcmUgdG9vIGxvbmcuCiAKIC0gSXNzdWUgIzExMjM2OiBnZXRwYXNzLmdldHBhc3MgcmVzcG9uZHMgdG8gY3RybC1jIG9yIGN0cmwteiBvbiB0ZXJtaW5hbC4KIAorLSBJc3N1ZSAjMTE4NTY6IFNwZWVkIHVwIHBhcnNpbmcgb2YgSlNPTiBudW1iZXJzLgorCistIElzc3VlICMxMTAwNTogdGhyZWFkaW5nLlJMb2NrKCkuX3JlbGVhc2Vfc2F2ZSgpIHJhaXNlcyBhIFJ1bnRpbWVFcnJvciBpZiB0aGUKKyAgbG9jayB3YXMgbm90IGFjcXVpcmVkLgorCistIElzc3VlICMxMTI1ODogU3BlZWQgdXAgY3R5cGVzLnV0aWwuZmluZF9saWJyYXJ5KCkgdW5kZXIgTGludXggYnkgYSBmYWN0b3IKKyAgb2YgNSB0byAxMC4gIEluaXRpYWwgcGF0Y2ggYnkgSm9uYXMgSC4KKworLSBJc3N1ZSAjMTEzODI6IFRyaXZpYWwgc3lzdGVtIGNhbGxzLCBzdWNoIGFzIGR1cCgpIG9yIHBpcGUoKSwgbmVlZG4ndAorICByZWxlYXNlIHRoZSBHSUwuICBQYXRjaCBieSBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCisKKy0gSXNzdWUgIzExMjIzOiBBZGQgdGhyZWFkaW5nLl9pbmZvKCkgZnVuY3Rpb24gcHJvdmlkaW5nIGluZm9ybWF0aW9ucyBhYm91dAorICB0aGUgdGhyZWFkIGltcGxlbWVudGF0aW9uLgorCistIElzc3VlICMxMTczMTogc2ltcGxpZnkvZW5oYW5jZSBlbWFpbCBwYXJzZXIvZ2VuZXJhdG9yIEFQSSBieSBpbnRyb2R1Y2luZworICBwb2xpY3kgb2JqZWN0cy4KKwogLSBJc3N1ZSAjMTE3Njg6IFRoZSBzaWduYWwgaGFuZGxlciBvZiB0aGUgc2lnbmFsIG1vZHVsZSBvbmx5IGNhbGxzCiAgIFB5X0FkZFBlbmRpbmdDYWxsKCkgZm9yIHRoZSBmaXJzdCBzaWduYWwgdG8gZml4IGEgZGVhZGxvY2sgb24gcmVlbnRyYW50IG9yCiAgIHBhcmFsbGVsIGNhbGxzLiBQeUVycl9TZXRJbnRlcnJ1cHQoKSB3cml0ZXMgYWxzbyBpbnRvIHRoZSB3YWtlIHVwIGZpbGUuCkBAIC0xMTI5LDYgKzE0NzMsMTAgQEAKIC0gSXNzdWUgIzExNDc0OiBGaXggdGhlIGJ1ZyB3aXRoIHVybDJwYXRobmFtZSgpIGhhbmRsaW5nIG9mICcvQ3wvJyBvbiBXaW5kb3dzLgogICBQYXRjaCBieSBTYW50b3NvIFdpamF5YS4KIAorLSBJc3N1ZSAjMTE2ODQ6IGNvbXBsZXRlIGVtYWlsLnBhcnNlciBieXRlcyBBUEkgYnkgYWRkaW5nIEJ5dGVzSGVhZGVyUGFyc2VyLgorCistIFRoZSBiejIgbW9kdWxlIG5vdyBoYW5kbGVzIDRHaUIrIGlucHV0IGJ1ZmZlcnMgY29ycmVjdGx5LgorCiAtIElzc3VlICM5MjMzOiBGaXgganNvbi5sb2Fkcygne30nKSB0byByZXR1cm4gYSBkaWN0IChpbnN0ZWFkIG9mIGEgbGlzdCksIHdoZW4KICAgX2pzb24gaXMgbm90IGF2YWlsYWJsZS4KIApAQCAtMTE0MCwxNyArMTQ4OCwzMyBAQAogLSBJc3N1ZSAjMTAwMTk6IEZpeGVkIHJlZ3Jlc3Npb24gaW4ganNvbiBtb2R1bGUgd2hlcmUgYW4gaW5kZW50IG9mIDAgc3RvcHBlZAogICBhZGRpbmcgbmV3bGluZXMgYW5kIGFjdGVkIGluc3RlYWQgbGlrZSAnTm9uZScuCiAKKy0gSXNzdWUgIzExMTg2OiBweWRvYyBpZ25vcmVzIGEgbW9kdWxlIGlmIGl0cyBuYW1lIGNvbnRhaW5zIGEgc3Vycm9nYXRlCisgIGNoYXJhY3RlciBpbiB0aGUgaW5kZXggb2YgbW9kdWxlcy4KKworLSBJc3N1ZSAjMTE4MTU6IFVzZSBhIGxpZ2h0LXdlaWdodCBTaW1wbGVRdWV1ZSBmb3IgdGhlIHJlc3VsdCBxdWV1ZSBpbgorICBjb25jdXJyZW50LmZ1dHVyZXMuUHJvY2Vzc1Bvb2xFeGVjdXRvci4KKwogLSBJc3N1ZSAjNTE2MjogVHJlYXQgc2VydmljZXMgbGlrZSBmcm96ZW4gZXhlY3V0YWJsZXMgdG8gYWxsb3cgY2hpbGQgc3Bhd25pbmcKICAgZnJvbSBtdWx0aXByb2Nlc3NpbmcuZm9ya2luZyBvbiBXaW5kb3dzLgogCistIGxvZ2dpbmcuYmFzaWNDb25maWcgbm93IHN1cHBvcnRzIGFuIG9wdGlvbmFsICdoYW5kbGVycycgYXJndW1lbnQgdGFraW5nIGFuCisgIGl0ZXJhYmxlIG9mIGhhbmRsZXJzIHRvIGJlIGFkZGVkIHRvIHRoZSByb290IGxvZ2dlci4gQWRkaXRpb25hbCBwYXJhbWV0ZXIKKyAgY2hlY2tzIHdlcmUgYWxzbyBhZGRlZCB0byBiYXNpY0NvbmZpZy4KKwogLSBJc3N1ZSAjMTE4MTQ6IEZpeCBsaWtlbHkgdHlwbyBpbiBtdWx0aXByb2Nlc3NpbmcuUG9vbC5fdGVybWluYXRlKCkuCiAKIC0gSXNzdWUgIzExNzQ3OiBGaXggcmFuZ2UgZm9ybWF0dGluZyBpbiBkaWZmbGliLmNvbnRleHRfZGlmZigpIGFuZAogICBkaWZmbGliLnVuaWZpZWRfZGlmZigpLgogCiAtIElzc3VlICM4NDI4OiBGaXggYSByYWNlIGNvbmRpdGlvbiBpbiBtdWx0aXByb2Nlc3NpbmcuUG9vbCB3aGVuIHRlcm1pbmF0aW5nCi0gIHdvcmtlciBwcm9jZXNzZXM6IG5ldyBwcm9jZXNzZXMgd291bGQgYmUgc3Bhd25lZCB3aGlsZSB0aGUgcG9vbCBpcyBiZWluZyBzaHV0Ci0gIGRvd24uICBQYXRjaCBieSBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCisgIHdvcmtlciBwcm9jZXNzZXM6IG5ldyBwcm9jZXNzZXMgd291bGQgYmUgc3Bhd25lZCB3aGlsZSB0aGUgcG9vbCBpcyBiZWluZworICBzaHV0IGRvd24uICBQYXRjaCBieSBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCisKKy0gSXNzdWUgIzI2NTA6IHJlLmVzY2FwZSgpIG5vIGxvbmdlciBlc2NhcGVzIHRoZSAnXycuCisKKy0gSXNzdWUgIzExNzU3OiBzZWxlY3Quc2VsZWN0KCkgbm93IHJhaXNlcyBWYWx1ZUVycm9yIHdoZW4gYSBuZWdhdGl2ZSB0aW1lb3V0CisgIGlzIHBhc3NlZCAocHJldmlvdXNseSwgYSBzZWxlY3QuZXJyb3Igd2l0aCBFSU5WQUwgd291bGQgYmUgcmFpc2VkKS4gIFBhdGNoCisgIGJ5IENoYXJsZXMtRnJhbsOnb2lzIE5hdGFsaS4KIAogLSBJc3N1ZSAjNzMxMTogZml4IGh0bWwucGFyc2VyIHRvIGFjY2VwdCBub24tQVNDSUkgYXR0cmlidXRlIHZhbHVlcy4KIApAQCAtMTE1OCwyMSArMTUyMiw1MCBAQAogICBtdWx0aXBhcnQgc3VicGFydHMgd2l0aCBhbiA4LWJpdCBDVEUgaW50byB1bmljb2RlIGluc3RlYWQgb2YgcHJlc2VydmluZyB0aGUKICAgYnl0ZXMuCiAKKy0gSXNzdWUgIzE2OTA2MDg6IGVtYWlsLnV0aWwuZm9ybWF0YWRkciBpcyBub3cgUkZDIDIwNDcgYXdhcmU6ICBpdCBub3cgaGFzIGEKKyAgY2hhcnNldCBwYXJhbWV0ZXIgdGhhdCBkZWZhdWx0cyB0byB1dGYtOCBhbmQgaXMgdXNlZCBhcyB0aGUgY2hhcnNldCBmb3IgUkZDCisgIDIwNDcgZW5jb2Rpbmcgd2hlbiB0aGUgcmVhbG5hbWUgY29udGFpbnMgbm9uLUFTQ0lJIGNoYXJhY3RlcnMuCisKIC0gSXNzdWUgIzEwOTYzOiBFbnN1cmUgdGhhdCBzdWJwcm9jZXNzLmNvbW11bmljYXRlKCkgbmV2ZXIgcmFpc2VzIEVQSVBFLgogCistIElzc3VlICMxMDc5MTogSW1wbGVtZW50IG1pc3NpbmcgbWV0aG9kIEd6aXBGaWxlLnJlYWQxKCksIGFsbG93aW5nIEd6aXBGaWxlCisgIHRvIGJlIHdyYXBwZWQgaW4gYSBUZXh0SU9XcmFwcGVyLiAgUGF0Y2ggYnkgTmFkZWVtIFZhd2RhLgorCistIElzc3VlICMxMTcwNzogQWRkZWQgYSBmYXN0IEMgdmVyc2lvbiBvZiBmdW5jdG9vbHMuY21wX3RvX2tleSgpLgorICBQYXRjaCBieSBGaWxpcCBHcnVzemN6ecWEc2tpLgorCistIElzc3VlICMxMTY4ODogQWRkIHNxbGl0ZTMuQ29ubmVjdGlvbi5zZXRfdHJhY2VfY2FsbGJhY2soKS4gIFBhdGNoIGJ5CisgIFRvcnN0ZW4gTGFuZHNjaG9mZi4KKwogLSBJc3N1ZSAjMTE3NDY6IEZpeCBTU0xDb250ZXh0LmxvYWRfY2VydF9jaGFpbigpIHRvIGFjY2VwdCBlbGxpcHRpYyBjdXJ2ZQogICBwcml2YXRlIGtleXMuCiAKKy0gSXNzdWUgIzU4NjM6IFJld3JpdGUgQloyRmlsZSBpbiBwdXJlIFB5dGhvbiwgYW5kIGFsbG93IGl0IHRvIGFjY2VwdAorICBmaWxlLWxpa2Ugb2JqZWN0cyB1c2luZyBhIG5ldyBgYGZpbGVvYmpgYCBjb25zdHJ1Y3RvciBhcmd1bWVudC4gIFBhdGNoIGJ5CisgIE5hZGVlbSBWYXdkYS4KKworLSB1bml0dGVzdC5UZXN0Q2FzZS5hc3NlcnRTYW1lRWxlbWVudHMgaGFzIGJlZW4gcmVtb3ZlZC4KKwogLSBzeXMuZ2V0ZmlsZXN5c3RlbWVuY29kaW5nKCkgcmFpc2VzIGEgUnVudGltZUVycm9yIGlmIGluaXRmc2VuY29kaW5nKCkgd2FzIG5vdAogICBjYWxsZWQgeWV0OiBkZXRlY3QgYm9vdHN0cmFwIChzdGFydHVwKSBpc3N1ZXMgZWFybGllci4KIAorLSBJc3N1ZSAjMTEzOTM6IEFkZCB0aGUgbmV3IGZhdWx0aGFuZGxlciBtb2R1bGUuCisKIC0gSXNzdWUgIzExNjE4OiBGaXggdGhlIHRpbWVvdXQgbG9naWMgaW4gdGhyZWFkaW5nLkxvY2suYWNxdWlyZSgpIHVuZGVyIFdpbmRvd3MuCiAKKy0gUmVtb3ZlZCB0aGUgJ3N0cmljdCcgYXJndW1lbnQgdG8gZW1haWwucGFyc2VyLlBhcnNlciwgd2hpY2ggaGFzIGJlZW4KKyAgZGVwcmVjYXRlZCBzaW5jZSBQeXRob24gMi40LgorCiAtIElzc3VlICMxMTI1NjogRml4IGluc3BlY3QuZ2V0Y2FsbGFyZ3Mgb24gZnVuY3Rpb25zIHRoYXQgdGFrZSBvbmx5IGtleXdvcmQKICAgYXJndW1lbnRzLgogCiAtIElzc3VlICMxMTY5NjogRml4IElEIGdlbmVyYXRpb24gaW4gbXNpbGliLgogCistIGl0ZXJ0b29scy5hY2N1bXVsYXRlIG5vdyBzdXBwb3J0cyBhbiBvcHRpb25hbCAqZnVuYyogYXJndW1lbnQgZm9yCisgIGEgdXNlci1zdXBwbGllZCBiaW5hcnkgZnVuY3Rpb24uCisKKy0gSXNzdWUgIzExNjkyOiBSZW1vdmUgdW5uZWNlc3NhcnkgZGVtbyBmdW5jdGlvbnMgaW4gc3VicHJvY2VzcyBtb2R1bGUuCisKIC0gSXNzdWUgIzk2OTY6IEZpeCBleGNlcHRpb24gaW5jb3JyZWN0bHkgcmFpc2VkIGJ5IHhkcmxpYi5QYWNrZXIucGFja19pbnQgd2hlbgogICB0cnlpbmcgdG8gcGFjayBhIG5lZ2F0aXZlIChpbi1yYW5nZSkgaW50ZWdlci4KIApAQCAtMTE4OCw3ICsxNTgxLDI2IEBACiAtIElzc3VlICMxMTYzNTogRG9uJ3QgdXNlIHBvbGxpbmcgaW4gd29ya2VyIHRocmVhZHMgYW5kIHByb2Nlc3NlcyBsYXVuY2hlZCBieQogICBjb25jdXJyZW50LmZ1dHVyZXMuCiAKLS0gSXNzdWUgIzExNjI4OiBjbXBfdG9fa2V5IGdlbmVyYXRlZCBjbGFzcyBzaG91bGQgdXNlIF9fc2xvdHNfXworLSBJc3N1ZSAjNjgxMTogQWxsb3cgaW1wb3J0bGliIHRvIGNoYW5nZSBhIGNvZGUgb2JqZWN0J3MgY29fZmlsZW5hbWUgYXR0cmlidXRlCisgIHRvIG1hdGNoIHRoZSBwYXRoIHRvIHdoZXJlIHRoZSBzb3VyY2UgY29kZSBjdXJyZW50bHkgaXMsIG5vdCB3aGVyZSB0aGUgY29kZQorICBvYmplY3Qgb3JpZ2luYWxseSBjYW1lIGZyb20uCisKKy0gSXNzdWUgIzg3NTQ6IEhhdmUgaW1wb3J0bGliIHVzZSB0aGUgcmVwciBvZiBhIG1vZHVsZSBuYW1lIGluIGVycm9yIG1lc3NhZ2VzLgorCistIElzc3VlICMxMTU5MTogUHJldmVudCAiaW1wb3J0IHNpdGUiIGZyb20gbW9kaWZ5aW5nIHN5cy5wYXRoIHdoZW4gcHl0aG9uCisgIHdhcyBzdGFydGVkIHdpdGggLVMuCisKKy0gY29sbGVjdGlvbnMubmFtZWR0dXBsZSgpIG5vdyBhZGRzIGEgX3NvdXJjZSBhdHRyaWJ1dGUgdG8gdGhlIGdlbmVyYXRlZAorICBjbGFzcy4gIFRoaXMgbWFrZSB0aGUgc291cmNlIG1vcmUgYWNjZXNzaWJsZSB0aGFuIHRoZSBvdXRkYXRlZAorICAidmVyYm9zZSIgb3B0aW9uIHdoaWNoIHByaW50cyB0byBzdGRvdXQgYnV0IGRvZXNuJ3QgbWFrZSB0aGUgc291cmNlCisgIHN0cmluZyBhdmFpbGFibGUuCisKKy0gSXNzdWUgIzExMzcxOiBNYXJrIGdldG9wdCBlcnJvciBtZXNzYWdlcyBhcyBsb2NhbGl6YWJsZS4gIFBhdGNoIGJ5IEZpbGlwCisgIEdydXN6Y3p5xYRza2kuCisKKy0gSXNzdWUgIzExMzMzOiBBZGQgX19zbG90c19fIHRvIGNvbGxlY3Rpb25zIEFCQ3MuCisKKy0gSXNzdWUgIzExNjI4OiBjbXBfdG9fa2V5IGdlbmVyYXRlZCBjbGFzcyBzaG91bGQgdXNlIF9fc2xvdHNfXy4KIAogLSBJc3N1ZSAjMTE2NjY6IGxldCBoZWxwKCkgZGlzcGxheSBuYW1lZCB0dXBsZSBhdHRyaWJ1dGVzIGFuZCBtZXRob2RzCiAgIHRoYXQgc3RhcnQgd2l0aCBhIGxlYWRpbmcgdW5kZXJzY29yZS4KQEAgLTExOTksNiArMTYxMSwxMCBAQAogLSBJc3N1ZSAjNTUzNzogRml4IHRpbWUyaXNveigpIGFuZCB0aW1lMm5ldHNjYXBlKCkgZnVuY3Rpb25zIG9mCiAgIGh0dHBsaWIuY29va2llamFyIGZvciBleHBpcmF0aW9uIHllYXIgZ3JlYXRlciB0aGFuIDIwMzggb24gMzItYml0IHN5c3RlbXMuCiAKKy0gSXNzdWUgIzQzOTE6IFVzZSBwcm9wZXIgZ2V0dGV4dCBwbHVyYWwgZm9ybXMgaW4gb3B0cGFyc2UuCisKKy0gSXNzdWUgIzExMTI3OiBSYWlzZSBhIFR5cGVFcnJvciB3aGVuIHRyeWluZyB0byBwaWNrbGUgYSBzb2NrZXQgb2JqZWN0LgorCiAtIElzc3VlICMxMTU2MzogQ29ubmVjdGlvbjpjbG9zZSBoZWFkZXIgaXMgc2VudCBieSByZXF1ZXN0cyB1c2luZyBVUkxPcGVuZXIKICAgY2xhc3Mgd2hpY2ggaGVscHMgaW4gY2xvc2luZyBvZiBzb2NrZXRzIGFmdGVyIGNvbm5lY3Rpb24gaXMgb3Zlci4gUGF0Y2gKICAgY29udHJpYnV0aW9ucyBieSBKZWZmIE1jTmVpbCBhbmQgTmFkZWVtIFZhd2RhLgpAQCAtMTIwOSw2ICsxNjI1LDggQEAKIC0gSXNzdWUgIzU0MjE6IEZpeCBtaXNsZWFkaW5nIGVycm9yIG1lc3NhZ2Ugd2hlbiBvbmUgb2Ygc29ja2V0LnNlbmR0bygpJ3MKICAgYXJndW1lbnRzIGhhcyB0aGUgd3JvbmcgdHlwZS4gIFBhdGNoIGJ5IE5pa2l0YSBWZXRvc2hraW4uCiAKKy0gSXNzdWUgIzEwODEyOiBBZGQgc29tZSBleHRyYSBwb3NpeCBmdW5jdGlvbnMgdG8gdGhlIG9zIG1vZHVsZS4KKwogLSBJc3N1ZSAjMTA5Nzk6IHVuaXR0ZXN0IHN0ZG91dCBidWZmZXJpbmcgbm93IHdvcmtzIHdpdGggY2xhc3MgYW5kIG1vZHVsZQogICBzZXR1cCBhbmQgdGVhcmRvd24uCiAKQEAgLTEyMjEsNzUgKzE2MzksMTU0IEBACiAgIHJlbGF0aXZlIHRvIFB5dGhvbjIgYW5kIHRoZSByZXN1bHQgaXMgbm93IHRoZSBzYW1lIGFzIGl0IHdhcyBpbiBQeXRob24yLgogCiAtIElzc3VlICM5Mjk4OiBiYXNlNjQgYm9kaWVzIHdlcmVuJ3QgYmVpbmcgZm9sZGVkIHRvIGxpbmUgbGVuZ3RocyBsZXNzIHRoYW4gNzgsCi0gIHdoaWNoIHdhcyBhIHJlZ3Jlc3Npb24gcmVsYXRpdmUgdG8gUHl0aG9uMi4gIFVubGlrZSBQeXRob24yLCB0aGUgbGFzdCBsaW5lIG9mCi0gIHRoZSBmb2xkZWQgYm9keSBub3cgZW5kcyB3aXRoIGEgY2FycmlhZ2UgcmV0dXJuLgorICB3aGljaCB3YXMgYSByZWdyZXNzaW9uIHJlbGF0aXZlIHRvIFB5dGhvbjIuICBVbmxpa2UgUHl0aG9uMiwgdGhlIGxhc3QgbGluZQorICBvZiB0aGUgZm9sZGVkIGJvZHkgbm93IGVuZHMgd2l0aCBhIGNhcnJpYWdlIHJldHVybi4KIAogLSBJc3N1ZSAjMTE1NjA6IHNodXRpbC51bnBhY2tfYXJjaGl2ZSBub3cgY29ycmVjdGx5IGhhbmRsZXMgdGhlIGZvcm1hdAogICBwYXJhbWV0ZXIuIFBhdGNoIGJ5IEV2YW4gRGFuZHJlYS4KIAorLSBJc3N1ZSAjNTg3MDogQWRkIGBzdWJwcm9jZXNzLkRFVk5VTExgIGNvbnN0YW50LgorCiAtIElzc3VlICMxMTEzMzogZml4IHR3byBjYXNlcyB3aGVyZSBpbnNwZWN0LmdldGF0dHJfc3RhdGljIGNhbiB0cmlnZ2VyIGNvZGUKICAgZXhlY3V0aW9uLiBQYXRjaCBieSBBbmRyZWFzIFN0w7xocmsuCiAKIC0gSXNzdWUgIzExNTY5OiB1c2UgYWJzb2x1dGUgcGF0aCB0byB0aGUgc3lzY3RsIGNvbW1hbmQgaW4gbXVsdGlwcm9jZXNzaW5nIHRvCi0gIGVuc3VyZSB0aGF0IGl0IHdpbGwgYmUgZm91bmQgcmVnYXJkbGVzcyBvZiB0aGUgc2hlbGwgUEFUSC4gVGhpcyBlbnN1cmVzIHRoYXQKLSAgbXVsdGlwcm9jZXNzaW5nLmNwdV9jb3VudCB3b3JrcyBvbiBkZWZhdWx0IGluc3RhbGxzIG9mIE1hY09TWC4KKyAgZW5zdXJlIHRoYXQgaXQgd2lsbCBiZSBmb3VuZCByZWdhcmRsZXNzIG9mIHRoZSBzaGVsbCBQQVRILiBUaGlzIGVuc3VyZXMKKyAgdGhhdCBtdWx0aXByb2Nlc3NpbmcuY3B1X2NvdW50IHdvcmtzIG9uIGRlZmF1bHQgaW5zdGFsbHMgb2YgTWFjT1NYLgogCiAtIElzc3VlICMxMTUwMTogZGlzdXRpbHMuYXJjaGl2ZV91dGlscy5tYWtlX3ppcGZpbGUgbm8gbG9uZ2VyIGZhaWxzIGlmIHpsaWIgaXMKICAgbm90IGluc3RhbGxlZC4gSW5zdGVhZCwgdGhlIHppcGZpbGUuWklQX1NUT1JFRCBjb21wcmVzc2lvbiBpcyB1c2VkIHRvIGNyZWF0ZQogICB0aGUgWmlwRmlsZS4gUGF0Y2ggYnkgTmF0YWxpYSBCLiBCaWRhcnQuCiAKKy0gSXNzdWUgIzExMjg5OiBgc210cC5TTVRQYCBjbGFzcyBiZWNvbWVzIGEgY29udGV4dCBtYW5hZ2VyIHNvIGl0IGNhbiBiZSB1c2VkCisgIGluIGEgYHdpdGhgIHN0YXRlbWVudC4gIENvbnRyaWJ1dGVkIGJ5IEdpYW1wYW9sbyBSb2RvbGEuCisKIC0gSXNzdWUgIzExNTU0OiBGaXhlZCBzdXBwb3J0IGZvciBKYXBhbmVzZSBjb2RlY3M7IHByZXZpb3VzbHkgdGhlIGJvZHkgb3V0cHV0CiAgIGVuY29kaW5nIHdhcyBub3QgZG9uZSBpZiBldWMtanAgb3Igc2hpZnQtamlzIHdhcyBzcGVjaWZpZWQgYXMgdGhlIGNoYXJzZXQuCiAKLS0gSXNzdWUgIzExNTAwOiBGaXhlZCBhIGJ1ZyBpbiB0aGUgb3MgeCBwcm94eSBieXBhc3MgY29kZSBmb3IgZnVsbHkgcXVhbGlmaWVkIElQCi0gIGFkZHJlc3NlcyBpbiB0aGUgcHJveHkgZXhjZXB0aW9uIGxpc3QuCistIElzc3VlICMxMTUwOTogU2lnbmlmaWNhbnRseSBpbmNyZWFzZSB0ZXN0IGNvdmVyYWdlIG9mIGZpbGVpbnB1dC4KKyAgUGF0Y2ggYnkgRGVudmVyIENvbmV5YmVhcmUgYXQgUHlDb24gMjAxMSBTcHJpbnRzLgogCi0tIElzc3VlICMxMTQ5MTogZGJtLmVycm9yIGlzIG5vIGxvbmdlciByYWlzZWQgd2hlbiBkYm0ub3BlbiBpcyBjYWxsZWQgd2l0aCB0aGUKLSAgIm4iIGFzIHRoZSBmbGFnIGFyZ3VtZW50IGFuZCB0aGUgZmlsZSBleGlzdHMuIFRoZSBiZWhhdmlvciBtYXRjaGVzIHRoZQotICBkb2N1bWVudGF0aW9uIGFuZCBnZW5lcmFsIGxvZ2ljLgorLSBJc3N1ZSAjMTE0MDc6IGBUZXN0Q2FzZS5ydW5gIHJldHVybnMgdGhlIHJlc3VsdCBvYmplY3QgdXNlZCBvciBjcmVhdGVkLgorICBDb250cmlidXRlZCBieSBKYW5hdGhhbiBIYXJ0bGV5LgogCi0tIElzc3VlICMxMTEzMTogRml4IHNpZ24gb2YgemVybyBpbiBkZWNpbWFsLkRlY2ltYWwgcGx1cyBhbmQgbWludXMgb3BlcmF0aW9ucwotICB3aGVuIHRoZSByb3VuZGluZyBtb2RlIGlzIFJPVU5EX0ZMT09SLgorLSBJc3N1ZSAjMTE1MDA6IEZpeGVkIGEgYnVnIGluIHRoZSBvcyB4IHByb3h5IGJ5cGFzcyBjb2RlIGZvciBmdWxseSBxdWFsaWZpZWQKKyAgSVAgYWRkcmVzc2VzIGluIHRoZSBwcm94eSBleGNlcHRpb24gbGlzdC4KKworLSBJc3N1ZSAjMTE0OTE6IGRibS5lcnJvciBpcyBubyBsb25nZXIgcmFpc2VkIHdoZW4gZGJtLm9wZW4gaXMgY2FsbGVkIHdpdGgKKyAgdGhlICJuIiBhcyB0aGUgZmxhZyBhcmd1bWVudCBhbmQgdGhlIGZpbGUgZXhpc3RzLiBUaGUgYmVoYXZpb3IgbWF0Y2hlcworICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQgZ2VuZXJhbCBsb2dpYy4KKworLSBJc3N1ZSAjMTE2MjQ3NzogUG9zdGVsIFByaW5jaXBsZSBhZGp1c3RtZW50IHRvIGVtYWlsIGRhdGUgcGFyc2luZzogaGFuZGxlIHRoZQorICBmYWN0IHRoYXQgc29tZSBub24tY29tcGxpYW50IE1VQXMgdXNlICcuJyBpbnN0ZWFkIG9mICc6JyBpbiB0aW1lIHNwZWNzLgorCistIElzc3VlICMxMTEzMTogRml4IHNpZ24gb2YgemVybyBpbiBkZWNpbWFsLkRlY2ltYWwgcGx1cyBhbmQgbWludXMKKyAgb3BlcmF0aW9ucyB3aGVuIHRoZSByb3VuZGluZyBtb2RlIGlzIFJPVU5EX0ZMT09SLgorCistIElzc3VlICM5OTM1OiBTcGVlZCB1cCBwaWNrbGluZyBvZiBpbnN0YW5jZXMgb2YgdXNlci1kZWZpbmVkIGNsYXNzZXMuCiAKIC0gSXNzdWUgIzU2MjI6IEZpeCBjdXJzZXMud3JhcHBlciB0byByYWlzZSBjb3JyZWN0IGV4Y2VwdGlvbiBpZiBjdXJzZXMKICAgaW5pdGlhbGl6YXRpb24gZmFpbHMuCiAKKy0gSXNzdWUgIzExNDA4OiBJbiB0aHJlYWRpbmcuTG9jay5hY3F1aXJlKCksIG9ubHkgY2FsbCBnZXR0aW1lb2ZkYXkoKSB3aGVuCisgIHJlYWxseSBuZWNlc3NhcnkuICBQYXRjaCBieSBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCisKIC0gSXNzdWUgIzExMzkxOiBXcml0aW5nIHRvIGEgbW1hcCBvYmplY3QgY3JlYXRlZCB3aXRoCiAgIGBgbW1hcC5QUk9UX1JFQUR8bW1hcC5QUk9UX0VYRUNgYCB3b3VsZCBzZWdmYXVsdCBpbnN0ZWFkIG9mIHJhaXNpbmcgYQogICBUeXBlRXJyb3IuICBQYXRjaCBieSBDaGFybGVzLUZyYW7Dp29pcyBOYXRhbGkuCiAKLS0gSXNzdWUgIzExMzA2OiBtYWlsYm94IGluIGNlcnRhaW4gY2FzZXMgYWRhcHRzIHRvIGFuIGluYWJpbGl0eSB0byBvcGVuIGNlcnRhaW4KLSAgZmlsZXMgaW4gcmVhZC13cml0ZSBtb2RlLiAgUHJldmlvdXNseSBpdCBkZXRlY3RlZCB0aGlzIGJ5IGNoZWNraW5nIGZvciBFQUNDRVMsCi0gIG5vdyBpdCBhbHNvIGNoZWNrcyBmb3IgRVJPRlMuCistIElzc3VlICM5Nzk1OiBhZGQgY29udGV4dCBtYW5hZ2VyIHByb3RvY29sIHN1cHBvcnQgZm9yIG5udHBsaWIuTk5UUCBjbGFzcy4KIAotLSBJc3N1ZSAjMTEyNjU6IGFzeW5jb3JlIG5vdyBjb3JyZWN0bHkgaGFuZGxlcyBFUElQRSwgRUJBREYgYW5kIEVBR0FJTiBlcnJvcnMgb24KLSAgYWNjZXB0KCksIHNlbmQoKSBhbmQgcmVjdigpLgorLSBJc3N1ZSAjMTEzMDY6IG1haWxib3ggaW4gY2VydGFpbiBjYXNlcyBhZGFwdHMgdG8gYW4gaW5hYmlsaXR5IHRvIG9wZW4KKyAgY2VydGFpbiBmaWxlcyBpbiByZWFkLXdyaXRlIG1vZGUuICBQcmV2aW91c2x5IGl0IGRldGVjdGVkIHRoaXMgYnkKKyAgY2hlY2tpbmcgZm9yIEVBQ0NFUywgbm93IGl0IGFsc28gY2hlY2tzIGZvciBFUk9GUy4KKworLSBJc3N1ZSAjMTEyNjU6IGFzeW5jb3JlIG5vdyBjb3JyZWN0bHkgaGFuZGxlcyBFUElQRSwgRUJBREYgYW5kIEVBR0FJTiBlcnJvcnMKKyAgb24gYWNjZXB0KCksIHNlbmQoKSBhbmQgcmVjdigpLgorCistIElzc3VlICMxMTM3NzogRGVwcmVjYXRlIHBsYXRmb3JtLnBvcGVuKCkgYW5kIHJlaW1wbGVtZW50IGl0IHdpdGggb3MucG9wZW4oKS4KKworLSBJc3N1ZSAjODUxMzogT24gVU5JWCwgc3VicHJvY2VzcyBzdXBwb3J0cyBieXRlcyBjb21tYW5kIHN0cmluZy4KKworLSBJc3N1ZSAjMTA4NjY6IEFkZCBzb2NrZXQuc2V0aG9zdG5hbWUoKS4gIEluaXRpYWwgcGF0Y2ggYnkgUm9zcyBMYWdlcndhbGwuCisKKy0gSXNzdWUgIzExMTQwOiBMb2NrLnJlbGVhc2UoKSBub3cgcmFpc2VzIGEgUnVudGltZUVycm9yIHdoZW4gYXR0ZW1wdGluZworICB0byByZWxlYXNlIGFuIHVuYWNxdWlyZWQgbG9jaywgYXMgY2xhaW1lZCBpbiB0aGUgdGhyZWFkaW5nIGRvY3VtZW50YXRpb24uCisgIFRoZSBfdGhyZWFkLmVycm9yIGV4Y2VwdGlvbiBpcyBub3cgYW4gYWxpYXMgb2YgUnVudGltZUVycm9yLiAgUGF0Y2ggYnkKKyAgRmlsaXAgR3J1c3pjennFhHNraS4gIFBhdGNoIGZvciBfZHVtbXlfdGhyZWFkIGJ5IEF5bWVyaWMgQXVndXN0aW4uCisKKy0gSXNzdWUgIzg1OTQ6IGZ0cGxpYiBub3cgcHJvdmlkZXMgYSBzb3VyY2VfYWRkcmVzcyBwYXJhbWV0ZXIgdG8gc3BlY2lmeSB3aGljaAorICAoYWRkcmVzcywgcG9ydCkgdG8gYmluZCB0byBiZWZvcmUgY29ubmVjdGluZy4KIAogLSBJc3N1ZSAjMTEzMjY6IEFkZCB0aGUgbWlzc2luZyBjb25uZWN0X2V4KCkgaW1wbGVtZW50YXRpb24gZm9yIFNTTCBzb2NrZXRzLAogICBhbmQgbWFrZSBpdCB3b3JrIGZvciBub24tYmxvY2tpbmcgY29ubmVjdHMuCiAKKy0gSXNzdWUgIzExMjk3OiBBZGQgY29sbGVjdGlvbnMuQ2hhaW5NYXAoKS4KKworLSBJc3N1ZSAjMTA3NTU6IEFkZCB0aGUgcG9zaXguZmRsaXN0ZGlyKCkgZnVuY3Rpb24uICBQYXRjaCBieSBSb3NzIExhZ2Vyd2FsbC4KKworLSBJc3N1ZSAjNDc2MTogQWRkIHRoZSAqYXQoKSBmYW1pbHkgb2YgZnVuY3Rpb25zIChvcGVuYXQoKSwgZXRjLikgdG8gdGhlIHBvc2l4CisgIG1vZHVsZS4gIFBhdGNoIGJ5IFJvc3MgTGFnZXJ3YWxsLgorCiAtIElzc3VlICM3MzIyOiBUcnlpbmcgdG8gcmVhZCBmcm9tIGEgc29ja2V0J3MgZmlsZS1saWtlIG9iamVjdCBhZnRlciBhIHRpbWVvdXQKICAgb2NjdXJyZWQgbm93IHJhaXNlcyBhbiBlcnJvciBpbnN0ZWFkIG9mIHNpbGVudGx5IGxvc2luZyBkYXRhLgogCistIElzc3VlICMxMTI5MTogcG9wbGliLlBPUCBubyBsb25nZXIgc3VwcHJlc3NlcyBlcnJvcnMgb24gcXVpdCgpLgorCistIElzc3VlICMxMTE3NzogYXN5bmNvcmUncyBjcmVhdGVfc29ja2V0KCkgYXJndW1lbnRzIGNhbiBub3cgYmUgb21pdHRlZC4KKworLSBJc3N1ZSAjNjA2NDogQWRkIGEgYGBkYWVtb25gYCBrZXl3b3JkIGFyZ3VtZW50IHRvIHRoZSB0aHJlYWRpbmcuVGhyZWFkCisgIGFuZCBtdWx0aXByb2Nlc3NpbmcuUHJvY2VzcyBjb25zdHJ1Y3RvcnMgaW4gb3JkZXIgdG8gb3ZlcnJpZGUgdGhlCisgIGRlZmF1bHQgYmVoYXZpb3VyIG9mIGluaGVyaXRpbmcgdGhlIGRhZW1vbmljIHByb3BlcnR5IGZyb20gdGhlIGN1cnJlbnQKKyAgdGhyZWFkL3Byb2Nlc3MuCisKIC0gSXNzdWUgIzEwOTU2OiBCdWZmZXJlZCBJL08gY2xhc3NlcyByZXRyeSByZWFkaW5nIG9yIHdyaXRpbmcgYWZ0ZXIgYSBzaWduYWwKICAgaGFzIGFycml2ZWQgYW5kIHRoZSBoYW5kbGVyIHJldHVybmVkIHN1Y2Nlc3NmdWxseS4KIAorLSBJc3N1ZSAjMTA3ODQ6IE5ldyBvcy5nZXRwcmlvcml0eSgpIGFuZCBvcy5zZXRwcmlvcml0eSgpIGZ1bmN0aW9ucy4KKworLSBJc3N1ZSAjMTExMTQ6IEZpeCBjYXRhc3Ryb3BoaWMgcGVyZm9ybWFuY2Ugb2YgdGVsbCgpIG9uIHRleHQgZmlsZXMgKHVwCisgIHRvIDEwMDB4IGZhc3RlciBpbiBzb21lIGNhc2VzKS4gIEl0IGlzIHN0aWxsIG9uZSB0byB0d28gb3JkZXIgb2YgbWFnbml0dWRlcworICBzbG93ZXIgdGhhbiBiaW5hcnkgdGVsbCgpLgorCistIElzc3VlICMxMDg4MjogQWRkIG9zLnNlbmRmaWxlIGZ1bmN0aW9uLgorCistIElzc3VlICMxMDg2ODogQWxsb3cgdXNhZ2Ugb2YgdGhlIHJlZ2lzdGVyIG1ldGhvZCBvZiBhbiBBQkMgYXMgYSBjbGFzcworICBkZWNvcmF0b3IuCisKIC0gSXNzdWUgIzExMjI0OiBGaXhlZCBhIHJlZ3Jlc3Npb24gaW4gdGFyZmlsZSB0aGF0IGFmZmVjdGVkIHRoZSBmaWxlLWxpa2UKICAgb2JqZWN0cyByZXR1cm5lZCBieSBUYXJGaWxlLmV4dHJhY3RmaWxlKCkgcmVnYXJkaW5nIHBlcmZvcm1hbmNlLCBtZW1vcnkKICAgY29uc3VtcHRpb24gYW5kIGZhaWx1cmVzIHdpdGggdGhlIHN0cmVhbSBpbnRlcmZhY2UuCiAKKy0gSXNzdWUgIzEwOTI0OiBBZGRpbmcgc2FsdCBhbmQgTW9kdWxhciBDcnlwdCBGb3JtYXQgdG8gY3J5cHQgbGlicmFyeS4KKyAgTW92ZWQgb2xkIEMgd3JhcHBlciB0byBfY3J5cHQsIGFuZCBhZGRlZCBhIFB5dGhvbiB3cmFwcGVyIHdpdGgKKyAgZW5oYW5jZWQgc2FsdCBnZW5lcmF0aW9uIGFuZCBzaW1wbGVyIEFQSSBmb3IgcGFzc3dvcmQgZ2VuZXJhdGlvbi4KKwogLSBJc3N1ZSAjMTEwNzQ6IE1ha2UgJ3Rva2VuaXplJyBzbyBpdCBjYW4gYmUgcmVsb2FkZWQuCiAKKy0gSXNzdWUgIzExMDg1OiBNb3ZlZCBjb2xsZWN0aW9ucyBhYnN0cmFjdCBiYXNlIGNsYXNzZXMgaW50byBhIHNlcGFyYXRlCisgIG1vZHVsZSBjYWxsZWQgY29sbGVjdGlvbnMuYWJjLCBmb2xsb3dpbmcgdGhlIHBhdHRlcm4gdXNlZCBieSBpbXBvcnRsaWIuYWJjLgorICBGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHksIHRoZSBuYW1lcyBhcmUgaW1wb3J0ZWQgaW50byB0aGUgY29sbGVjdGlvbnMKKyAgbW9kdWxlLgorCiAtIElzc3VlICM0NjgxOiBBbGxvdyBtbWFwKCkgdG8gd29yayBvbiBmaWxlIHNpemVzIGFuZCBvZmZzZXRzIGxhcmdlciB0aGFuCiAgIDRHQiwgZXZlbiBvbiAzMi1iaXQgYnVpbGRzLiAgSW5pdGlhbCBwYXRjaCBieSBSb3NzIExhZ2Vyd2FsbCwgYWRhcHRlZCBmb3IKICAgMzItYml0IFdpbmRvd3MuCiAKKy0gSXNzdWUgIzExMTY5OiBjb21waWxlYWxsIG1vZHVsZSB1c2VzIHJlcHIoKSB0byBmb3JtYXQgZmlsZW5hbWVzIGFuZCBwYXRocyB0bworICBlc2NhcGUgc3Vycm9nYXRlIGNoYXJhY3RlcnMgYW5kIHNob3cgc3BhY2VzLgorCiAtIElzc3VlICMxMTA4OTogRml4IHBlcmZvcm1hbmNlIGlzc3VlIGxpbWl0aW5nIHRoZSB1c2Ugb2YgQ29uZmlnUGFyc2VyKCkKICAgd2l0aCBsYXJnZSBjb25maWcgZmlsZXMuCiAKIC0gSXNzdWUgIzEwMjc2OiBGaXggdGhlIHJlc3VsdHMgb2YgemxpYi5jcmMzMigpIGFuZCB6bGliLmFkbGVyMzIoKSBvbiBidWZmZXJzCiAgIGxhcmdlciB0aGFuIDRHQi4gIFBhdGNoIGJ5IE5hZGVlbSBWYXdkYS4KIAorLSBJc3N1ZSAjMTEzODg6IEFkZGVkIGEgY2xlYXIoKSBtZXRob2QgdG8gTXV0YWJsZVNlcXVlbmNlCisKKy0gSXNzdWUgIzExMTc0OiBBZGQgYXJncGFyc2UuTWV0YXZhclR5cGVIZWxwRm9ybWF0dGVyLCB3aGljaCB1c2VzIHR5cGUgbmFtZXMKKyAgZm9yIHRoZSBuYW1lcyBvZiBvcHRpb25hbCBhbmQgcG9zaXRpb25hbCBhcmd1bWVudHMgaW4gaGVscCBtZXNzYWdlcy4KKwogLSBJc3N1ZSAjOTM0ODogUmFpc2UgYW4gZWFybHkgZXJyb3IgaWYgYXJncGFyc2UgbmFyZ3MgYW5kIG1ldGF2YXIgZG9uJ3QgbWF0Y2guCiAKIC0gSXNzdWUgIzg5ODI6IEltcHJvdmUgdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBhcmdwYXJzZSBOYW1lc3BhY2Ugb2JqZWN0LgpAQCAtMTMwMSwyOCArMTc5OCwxMjIgQEAKIAogLSBJc3N1ZSAjOTM0NzogRml4IGZvcm1hdHRpbmcgZm9yIHR1cGxlcyBpbiBhcmdwYXJzZSB0eXBlPSBlcnJvciBtZXNzYWdlcy4KIAorLSBJc3N1ZSAjMTIxOTE6IEFkZGVkIHNodXRpbC5jaG93bigpIHRvIGNoYW5nZSB1c2VyIGFuZC9vciBncm91cCBvd25lciBvZiBhCisgIGdpdmVuIHBhdGggYWxzbyBzcGVjaWZ5aW5nIHRoZWlyIG5hbWVzLgorCiBCdWlsZAogLS0tLS0KIAorLSBJc3N1ZSAjMTMzMjY6IENsZWFuIF9fcHljYWNoZV9fIGRpcmVjdG9yaWVzIGNvcnJlY3RseSBvbiBPcGVuQlNELgorCistIFBFUCAzOTM6IHRoZSBjb25maWd1cmUgb3B0aW9uIC0td2l0aC13aWRlLXVuaWNvZGUgaXMgcmVtb3ZlZC4KKworLSBJc3N1ZSAjMTI4NTI6IFNldCBfWE9QRU5fU09VUkNFIHRvIDcwMCwgaW5zdGVhZCBvZiA2MDAsIHRvIGdldCBQT1NJWCAyMDA4CisgIGZ1bmN0aW9ucyBvbiBPcGVuQlNEIChlLmcuIGZkb3BlbmRpcikuCisKKy0gSXNzdWUgIzExODYzOiBSZW1vdmUgc3VwcG9ydCBmb3IgbGVnYWN5IHN5c3RlbXMgZGVwcmVjYXRlZCBpbiBQeXRob24gMy4yCisgIChmb2xsb3dpbmcgUEVQIDExKS4gIFRoZXNlIHN5c3RlbXMgYXJlIHN5c3RlbXMgdXNpbmcgTWFjaCBDIFRocmVhZHMsCisgIFN1bk9TIGxpZ2h0d2VpZ2h0IHByb2Nlc3NlcywgR05VIHB0aCB0aHJlYWRzIGFuZCBJUklYIHRocmVhZHMuCisKKy0gSXNzdWUgIzg3NDY6IENvcnJlY3QgZmF1bHR5IGNvbmZpZ3VyZSBjaGVja3Mgc28gdGhhdCBvcy5jaGZsYWdzKCkgYW5kCisgIG9zLmxjaGZsYWdzKCkgYXJlIG9uY2UgYWdhaW4gYnVpbHQgb24gc3lzdGVtcyB0aGF0IHN1cHBvcnQgdGhlc2UKKyAgZnVuY3Rpb25zICgqQlNEIGFuZCBPUyBYKS4gIEFsc28gYWRkIG5ldyBzdGF0IGZpbGUgZmxhZ3MgZm9yIE9TIFgKKyAgKFVGX0hJRERFTiBhbmQgVUZfQ09NUFJFU1NFRCkuCisKKy0gSXNzdWUgIzEwNjQ1OiBJbnN0YWxsaW5nIFB5dGhvbiBkb2VzIG5vIGxvbmdlciBjcmVhdGUgYQorICBQeXRob24tWC5ZLlotcHlYLlkuZWdnLWluZm8gZmlsZSBpbiB0aGUgbGliLWR5bmxvYWQgZGlyZWN0b3J5LgorCistIERvIG5vdCBhY2NpZGVudGFsbHkgaW5jbHVkZSB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgc3FsaXRlLmggdHdpY2Ugd2hlbgorICBidWlsZGluZyBzcWxpdGUzLgorCistIElzc3VlICMxMTIxNzogRm9yIDY0LWJpdC8zMi1iaXQgTWFjIE9TIFggdW5pdmVyc2FsIGZyYW1ld29yayBidWlsZHMsCisgIGVuc3VyZSAibWFrZSBpbnN0YWxsIiBjcmVhdGVzIHN5bWxpbmtzIGluIC0tcHJlZml4IGJpbiBmb3IgdGhlICItMzIiCisgIGZpbGVzIGluIHRoZSBmcmFtZXdvcmsgYmluIGRpcmVjdG9yeSBsaWtlIHRoZSBpbnN0YWxsZXIgZG9lcy4KKworLSBJc3N1ZSAjMTEzNDc6IFVzZSAtLW5vLWFzLW5lZWRlZCB3aGVuIGxpbmtpbmcgbGlicHl0aG9uMy5zby4KKwogLSBJc3N1ZSAjMTE0MTE6IEZpeCAnbWFrZSBERVNURElSPScgd2l0aCBhIHJlbGF0aXZlIGRlc3RpbmF0aW9uLgogCi0tIElzc3VlICMxMTI2ODogUHJldmVudCBNYWMgT1MgWCBJbnN0YWxsZXIgZmFpbHVyZSBpZiBEb2N1bWVudGF0aW9uIHBhY2thZ2UgaGFkCi0gIHByZXZpb3VzbHkgYmVlbiBpbnN0YWxsZWQuCistIElzc3VlICMxMTI2ODogUHJldmVudCBNYWMgT1MgWCBJbnN0YWxsZXIgZmFpbHVyZSBpZiBEb2N1bWVudGF0aW9uCisgIHBhY2thZ2UgaGFkIHByZXZpb3VzbHkgYmVlbiBpbnN0YWxsZWQuCisKKy0gSXNzdWUgIzExNDk1OiBPU0Ygc3VwcG9ydCBpcyBlbGltaW5hdGVkLiBJdCB3YXMgZGVwcmVjYXRlZCBpbiBQeXRob24gMy4yLgorCiAKIElETEUKIC0tLS0KIAotLSBJc3N1ZSAjMTE3MTg6IElETEUncyBvcGVuIG1vZHVsZSBkaWFsb2cgY291bGRuJ3QgZmluZCB0aGUgX19pbml0X18ucHkgZmlsZSBpbgotICBhIHBhY2thZ2UuCistIElzc3VlICMxMTcxODogSURMRSdzIG9wZW4gbW9kdWxlIGRpYWxvZyBjb3VsZG4ndCBmaW5kIHRoZSBfX2luaXRfXy5weQorICBmaWxlIGluIGEgcGFja2FnZS4KIAogVG9vbHMvRGVtb3MKIC0tLS0tLS0tLS0tCiAKKy0gSXNzdWUgIzEzNjI4OiBweXRob24tZ2RiLnB5IGlzIG5vdyBhYmxlIHRvIHJldHJpZXZlIG1vcmUgZnJhbWVzIGluIHRoZSBQeXRob24KKyAgdHJhY2ViYWNrIGlmIFB5dGhvbiBpcyBvcHRpbWl6ZWQuCisKKy0gSXNzdWUgIzExOTk2OiBsaWJweXRob24gKGdkYiksIHJlcGxhY2UgInB5LWJ0IiBjb21tYW5kIGJ5ICJweS1idC1mdWxsIiBhbmQKKyAgYWRkIGEgc21hcnRlciAicHktYnQiIGNvbW1hbmQgcHJpbnRpbmcgYSBjbGFzc2ljIFB5dGhvbiB0cmFjZWJhY2suCisKIC0gSXNzdWUgIzExMTc5OiBNYWtlIGNjYmVuY2ggd29yayB1bmRlciBQeXRob24gMy4xIGFuZCAyLjcgYWdhaW4uCiAKKy0gSXNzdWUgIzEwNjM5OiByZWluZGVudC5weSBubyBsb25nZXIgY29udmVydHMgbmV3bGluZXMgYW5kIHdpbGwgcmFpc2UKKyAgYW4gZXJyb3IgaWYgYXR0ZW1wdGluZyB0byBjb252ZXJ0IGEgZmlsZSB3aXRoIG1peGVkIG5ld2xpbmVzLgorICAiLS1uZXdsaW5lIiBvcHRpb24gYWRkZWQgdG8gc3BlY2lmeSBuZXcgbGluZSBjaGFyYWN0ZXIuCisKIEV4dGVuc2lvbiBNb2R1bGVzCiAtLS0tLS0tLS0tLS0tLS0tLQogCistIElzc3VlICMxMzg0MDogVGhlIGVycm9yIG1lc3NhZ2UgcHJvZHVjZWQgYnkgY3R5cGVzLmNyZWF0ZV9zdHJpbmdfYnVmZmVyCisgIHdoZW4gZ2l2ZW4gYSBVbmljb2RlIHN0cmluZyBoYXMgYmVlbiBmaXhlZC4KKworLSBJc3N1ZSAjOTk3NTogc29ja2V0OiBGaXggaW5jb3JyZWN0IHVzZSBvZiBmbG93aW5mbyBhbmQgc2NvcGVfaWQuIFBhdGNoIGJ5CisgIFZpbG1vcyBOZWJlaGFqLgorCistIElzc3VlICM3Nzc3OiBzb2NrZXQ6IEFkZCBSZWxpYWJsZSBEYXRhZ3JhbSBTb2NrZXRzIChQRl9SRFMpIHN1cHBvcnQuCisKKy0gSXNzdWUgIzEzMTU5OiBGaWxlSU8gYW5kIEJaMkNvbXByZXNzb3IvQloyRGVjb21wcmVzc29yIG5vdyB1c2UgYSBsaW5lYXItdGltZQorICBidWZmZXIgZ3Jvd3RoIHN0cmF0ZWd5IGluc3RlYWQgb2YgYSBxdWFkcmF0aWMtdGltZSBvbmUuCisKKy0gSXNzdWUgIzEwMTQxOiBzb2NrZXQ6IEFkZCBTb2NrZXRDQU4gKFBGX0NBTikgc3VwcG9ydC4gSW5pdGlhbCBwYXRjaCBieQorICBNYXR0aGlhcyBGdWNocywgdXBkYXRlZCBieSBUaWFnbyBHb27Dp2FsdmVzLgorCistIElzc3VlICMxMzA3MDogRml4IGEgY3Jhc2ggd2hlbiBhIFRleHRJT1dyYXBwZXIgY2F1Z2h0IGluIGEgcmVmZXJlbmNlIGN5Y2xlCisgIHdvdWxkIGJlIGZpbmFsaXplZCBhZnRlciB0aGUgcmVmZXJlbmNlIHRvIGl0cyB1bmRlcmx5aW5nIEJ1ZmZlcmVkUldQYWlyJ3MKKyAgd3JpdGVyIGdvdCBjbGVhcmVkIGJ5IHRoZSBHQy4KKworLSBJc3N1ZSAjMTI4ODE6IGN0eXBlczogRml4IHNlZ2ZhdWx0IHdpdGggbGFyZ2Ugc3RydWN0dXJlIGZpZWxkIG5hbWVzLgorCistIElzc3VlICMxMzA1ODogb3NzYXVkaW9kZXY6IGZpeCBhIGZpbGUgZGVzY3JpcHRvciBsZWFrIG9uIGVycm9yLiBQYXRjaCBieQorICBUaG9tYXMgSmFyb3NjaC4KKworLSBJc3N1ZSAjMTMwMTM6IGN0eXBlczogRml4IGEgcmVmZXJlbmNlIGxlYWsgaW4gUHlDQXJyYXlUeXBlX2Zyb21fY3R5cGUuCisgIFRoYW5rcyB0byBTdW1hbiBTYWhhIGZvciBmaW5kaW5nIHRoZSBidWcgYW5kIHByb3ZpZGluZyBhIHBhdGNoLgorCistIElzc3VlICMxMzAyMjogRml4OiBfbXVsdGlwcm9jZXNzaW5nLnJlY3ZmZCgpIGRvZXNuJ3QgY2hlY2sgdGhhdAorICBmaWxlIGRlc2NyaXB0b3Igd2FzIGFjdHVhbGx5IHJlY2VpdmVkLgorCistIElzc3VlICMxMTcyNzExOiBBZGQgJ2xvbmcgbG9uZycgc3VwcG9ydCB0byB0aGUgYXJyYXkgbW9kdWxlLgorICBJbml0aWFsIHBhdGNoIGJ5IE9yZW4gVGlyb3NoIGFuZCBIaXJva2F6dSBZYW1hbW90by4KKworLSBJc3N1ZSAjMTI0ODM6IGN0eXBlczogRml4IGEgY3Jhc2ggd2hlbiB0aGUgZGVzdHJ1Y3Rpb24gb2YgYSBjYWxsYmFjaworICBvYmplY3QgdHJpZ2dlcnMgdGhlIGdhcmJhZ2UgY29sbGVjdG9yLgorCistIElzc3VlICMxMjk1MDogRml4IHBhc3NpbmcgZmlsZSBkZXNjcmlwdG9ycyBpbiBtdWx0aXByb2Nlc3NpbmcsIHVuZGVyCisgIE9wZW5JbmRpYW5hL0lsbHVtb3MuCisKKy0gSXNzdWUgIzEyNzY0OiBGaXggYSBjcmFzaCBpbiBjdHlwZXMgd2hlbiB0aGUgbmFtZSBvZiBhIFN0cnVjdHVyZSBmaWVsZCBpcyBub3QKKyAgYSBzdHJpbmcuCisKKy0gSXNzdWUgIzExMjQxOiBzdWJjbGFzc2VzIG9mIGN0eXBlcy5BcnJheSBjYW4gbm93IGJlIHN1YmNsYXNzZWQuCisKKy0gSXNzdWUgIzk2NTE6IEZpeCBhIGNyYXNoIHdoZW4gY3R5cGVzLmNyZWF0ZV9zdHJpbmdfYnVmZmVyKDApIHdhcyBwYXNzZWQgdG8KKyAgc29tZSBmdW5jdGlvbnMgbGlrZSBmaWxlLndyaXRlKCkuCisKKy0gSXNzdWUgIzEwMzA5OiBEZWZpbmUgX0dOVV9TT1VSQ0Ugc28gdGhhdCBtcmVtYXAoKSBnZXRzIHRoZSBwcm9wZXIKKyAgc2lnbmF0dXJlLiAgV2l0aG91dCB0aGlzLCBhcmNoaXRlY3R1cmVzIHdoZXJlIHNpemVvZiB2b2lkKiAhPSBzaXplb2YgaW50IGFyZQorICBicm9rZW4uICBQYXRjaCBnaXZlbiBieSBIYWxsdmFyZCBCIEZ1cnVzZXRoLgorCiAtIElzc3VlICMxMjA1MTogRml4IHNlZ2ZhdWx0IGluIGpzb24uZHVtcHMoKSB3aGlsZSBlbmNvZGluZyBoaWdobHktbmVzdGVkCiAgIG9iamVjdHMgdXNpbmcgdGhlIEMgYWNjZWxlcmF0aW9ucy4KIApAQCAtMTMzNSwzNSArMTkyNiwxODIgQEAKIFRlc3RzCiAtLS0tLQogCistIElzc3VlICMxMzc4NjogUmVtb3ZlIHVuaW1wbGVtZW50ZWQgJ3RyYWNlJyBsb25nIG9wdGlvbiBmcm9tIHJlZ3J0ZXN0LnB5LgorCistIElzc3VlICMxMzcyNTogRml4IHJlZ3J0ZXN0IHRvIHJlY29nbml6ZSB0aGUgZG9jdW1lbnRlZCAtZCBmbGFnLgorICBQYXRjaCBieSBFcm5vIFR1a2lhLgorCistIElzc3VlICMxMzMwNDogU2tpcCB0ZXN0IGNhc2UgaWYgdXNlciBzaXRlLXBhY2thZ2VzIGRpc2FibGVkICgtcyBvcgorICBQWVRIT05OT1VTRVJTSVRFKS4gIChQYXRjaCBieSBDYXJsIE1leWVyKQorCistIElzc3VlICM1NjYxOiBBZGQgYSB0ZXN0IGZvciBFQ09OTlJFU0VUL0VQSVBFIGhhbmRsaW5nIHRvIHRlc3RfYXN5bmNvcmUuIFBhdGNoCisgIGJ5IFhhdmllciBkZSBHYXllLgorCistIElzc3VlICMxMzIxODogRml4IHRlc3Rfc3NsIGZhaWx1cmVzIG9uIERlYmlhbi9VYnVudHUuCisKKy0gUmUtZW5hYmxlIGxpYjJ0bzMncyB0ZXN0X3BhcnNlci5weSB0ZXN0cywgdGhvdWdoIHdpdGggYW4gZXhwZWN0ZWQgZmFpbHVyZQorICAoc2VlIGlzc3VlIDEzMTI1KS4KKworLSBJc3N1ZSAjMTI2NTY6IEFkZCB0ZXN0cyBmb3IgSVB2NiBhbmQgVW5peCBzb2NrZXRzIHRvIHRlc3RfYXN5bmNvcmUuCisKKy0gSXNzdWUgIzY0ODQ6IEFkZCB1bml0IHRlc3RzIGZvciBtYWlsY2FwIG1vZHVsZSAocGF0Y2ggYnkgR3JlZ29yeSBOb2ZpKQorCistIElzc3VlICMxMTY1MTogSW1wcm92ZSB0aGUgTWFrZWZpbGUgdGVzdCB0YXJnZXRzIHRvIHJ1biBtb3JlIG9mIHRoZSB0ZXN0IHN1aXRlCisgIG1vcmUgcXVpY2tseS4gVGhlIC0tbXVsdGlwcm9jZXNzIG9wdGlvbiBpcyBub3cgZW5hYmxlZCBieSBkZWZhdWx0LCByZWR1Y2luZworICB0aGUgYW1vdW50IG9mIHRpbWUgbmVlZGVkIHRvIHJ1biB0aGUgdGVzdHMuICJtYWtlIHRlc3QiIGFuZCAibWFrZSBxdWlja3Rlc3QiCisgIG5vdyBpbmNsdWRlIHNvbWUgcmVzb3VyY2UtaW50ZW5zaXZlIHRlc3RzLCBidXQgbm8gbG9uZ2VyIHJ1biB0aGUgdGVzdCBzdWl0ZQorICB0d2ljZSB0byBjaGVjayBmb3IgYnVncyBpbiAucHljIGdlbmVyYXRpb24uIFRvb2xzL3NjcmlwdHMvcnVuX3Rlc3QucHkgcHJvdmlkZXMKKyAgYW4gZWFzeSBwbGF0Zm9ybS1pbmRlcGVuZGVudCB3YXkgdG8gcnVuIHRlc3Qgc3VpdGUgd2l0aCBzZW5zaWJsZSBkZWZhdWx0cy4KKworLSBJc3N1ZSAjMTIzMzE6IFRoZSB0ZXN0IHN1aXRlIGZvciB0aGUgcGFja2FnaW5nIG1vZHVsZSBjYW4gbm93IHJ1biBmcm9tIGFuCisgIGluc3RhbGxlZCBQeXRob24uCisKKy0gSXNzdWUgIzEyMzMxOiBUaGUgdGVzdCBzdWl0ZSBmb3IgbGliMnRvMyBjYW4gbm93IHJ1biBmcm9tIGFuIGluc3RhbGxlZAorICBQeXRob24uCisKKy0gSXNzdWUgIzEyNjI2OiBJbiByZWdydGVzdCwgYWxsb3cgdG8gZmlsdGVyIHRlc3RzIHVzaW5nIGEgZ2xvYiBmaWx0ZXIKKyAgd2l0aCB0aGUgYGAtbWBgIChvciBgYC0tbWF0Y2hgYCkgb3B0aW9uLiAgVGhpcyB3b3JrcyB3aXRoIGFsbCB0ZXN0IGNhc2VzCisgIHVzaW5nIHRoZSB1bml0dGVzdCBtb2R1bGUuICBUaGlzIGlzIHVzZWZ1bCB3aXRoIGxvbmcgdGVzdCBzdWl0ZXMKKyAgc3VjaCBhcyB0ZXN0X2lvIG9yIHRlc3Rfc3VicHJvY2Vzcy4KKworLSBJc3N1ZSAjMTI2MjQ6IEl0IGlzIG5vdyBwb3NzaWJsZSB0byBmYWlsIGFmdGVyIHRoZSBmaXJzdCBmYWlsdXJlIHdoZW4KKyAgcnVubmluZyBpbiB2ZXJib3NlIG1vZGUgKGBgLXZgYCBvciBgYC1XYGApLCBieSB1c2luZyB0aGUgYGAtLWZhaWxmYXN0YGAKKyAgKG9yIGBgLUdgYCkgb3B0aW9uIHRvIHJlZ3J0ZXN0LiAgVGhpcyBpcyB1c2VmdWwgd2l0aCBsb25nIHRlc3Qgc3VpdGVzCisgIHN1Y2ggYXMgdGVzdF9pbyBvciB0ZXN0X3N1YnByb2Nlc3MuCisKKy0gSXNzdWUgIzEyNTg3OiBDb3JyZWN0IGZhdWx0eSB0ZXN0IGZpbGUgYW5kIHJlZmVyZW5jZSBpbiB0ZXN0X3Rva2VuaXplLgorICAoUGF0Y2ggYnkgUm9iZXJ0IFhpYW8pCisKKy0gSXNzdWUgIzEyNTczOiBBZGQgcmVzb3VyY2UgY2hlY2tzIGZvciBkYW5nbGluZyBUaHJlYWQgYW5kIFByb2Nlc3Mgb2JqZWN0cy4KKworLSBJc3N1ZSAjMTI1NDk6IENvcnJlY3QgdGVzdF9wbGF0Zm9ybSB0byBub3QgZmFpbCB3aGVuIE9TIFggcmV0dXJucyAneDg2XzY0JworICBhcyB0aGUgcHJvY2Vzc29yIHR5cGUgb24gc29tZSBNYWMgc3lzdGVtcy4KKworLSBTa2lwIG5ldHdvcmsgdGVzdHMgd2hlbiBnZXRhZGRyaW5mbygpIHJldHVybnMgRUFJX0FHQUlOLCBtZWFuaW5nIGEgdGVtcG9yYXJ5CisgIGZhaWx1cmUgaW4gbmFtZSByZXNvbHV0aW9uLgorCistIElzc3VlICMxMTgxMjogU29sdmUgdHJhbnNpZW50IHNvY2tldCBmYWlsdXJlIHRvIGNvbm5lY3QgdG8gJ2xvY2FsaG9zdCcKKyAgaW4gdGVzdF90ZWxuZXRsaWIucHkuCisKKy0gU29sdmVkIGEgcG90ZW50aWFsIGRlYWRsb2NrIGluIHRlc3RfdGVsbmV0bGliLnB5LiBSZWxhdGVkIHRvIGlzc3VlICMxMTgxMi4KKworLSBBdm9pZCBmYWlsaW5nIGluIHRlc3Rfcm9ib3RwYXJzZXIgd2hlbiBtdWVibGVzbW9yYWxlZGEuY29tIGlzIGZsYWt5IGFuZAorICBhbiBvdmVyemVhbG91cyBETlMgc2VydmljZSAoZS5nLiBPcGVuRE5TKSByZWRpcmVjdHMgdG8gYSBwbGFjZWhvbGRlcgorICBXZWIgc2l0ZS4KKworLSBBdm9pZCBmYWlsaW5nIGluIHRlc3RfdXJsbGlibmV0LnRlc3RfYmFkX2FkZHJlc3Mgd2hlbiBzb21lIG92ZXJ6ZWFsb3VzCisgIEROUyBzZXJ2aWNlIChlLmcuIE9wZW5ETlMpIHJlc29sdmVzIGEgbm9uLWV4aXN0ZW50IGRvbWFpbiBuYW1lLiAgVGhlIHRlc3QKKyAgaXMgbm93IHNraXBwZWQgaW5zdGVhZC4KKworLSBJc3N1ZSAjMTI0NDA6IFdoZW4gdGVzdGluZyB3aGV0aGVyIHNvbWUgYml0cyBpbiBTU0xDb250ZXh0Lm9wdGlvbnMgY2FuIGJlCisgIHJlc2V0LCBjaGVjayB0aGUgdmVyc2lvbiBvZiB0aGUgT3BlblNTTCBoZWFkZXJzIFB5dGhvbiB3YXMgY29tcGlsZWQgYWdhaW5zdCwKKyAgcmF0aGVyIHRoYW4gdGhlIHJ1bnRpbWUgdmVyc2lvbiBvZiB0aGUgT3BlblNTTCBsaWJyYXJ5LgorCistIElzc3VlICMxMTUxMjogQWRkIGEgdGVzdCBzdWl0ZSBmb3IgdGhlIGNnaXRiIG1vZHVsZS4gUGF0Y2ggYnkgUm9iYmllIENsZW1vbnMuCisKKy0gSXNzdWUgIzEyNDk3OiBJbnN0YWxsIHRlc3QvZGF0YSB0byBwcmV2ZW50IGZhaWx1cmVzIG9mIHRoZSB2YXJpb3VzIGNvZGVjbWFwcworICB0ZXN0cy4KKworLSBJc3N1ZSAjMTI0OTY6IEluc3RhbGwgdGVzdC9jYXBhdGggZGlyZWN0b3J5IHRvIHByZXZlbnQgdGVzdF9jb25uZWN0X2NhcGF0aAorICB0ZXN0Y2FzZSBmYWlsdXJlIGluIHRlc3Rfc3NsLgorCistIElzc3VlICMxMjQ2OTogUnVuIHdha2V1cCBhbmQgcGVuZGluZyBzaWduYWwgdGVzdHMgaW4gYSBzdWJwcm9jZXNzIHRvIHJ1biB0aGUKKyAgdGVzdCBpbiBhIGZyZXNoIHByb2Nlc3Mgd2l0aCBvbmx5IG9uZSB0aHJlYWQgYW5kIHRvIG5vdCBjaGFuZ2Ugc2lnbmFsCisgIGhhbmRsaW5nIG9mIHRoZSBwYXJlbnQgcHJvY2Vzcy4KKworLSBJc3N1ZSAjODcxNjogQXZvaWQgY3Jhc2hlcyBjYXVzZWQgYnkgQXF1YSBUayBvbiBPU1ggd2hlbiBhdHRlbXB0aW5nIHRvIHJ1bgorICB0ZXN0X3RrIG9yIHRlc3RfdHRrX2d1aW9ubHkgdW5kZXIgYSB1c2VybmFtZSB0aGF0IGlzIG5vdCBjdXJyZW50bHkgbG9nZ2VkCisgIGluIHRvIHRoZSBjb25zb2xlIHdpbmRvd3NlcnZlciAoYXMgbWF5IGJlIHRoZSBjYXNlIHVuZGVyIGJ1aWxkYm90IG9yIHNzaCkuCisKKy0gSXNzdWUgIzEyNDA3OiBFeHBsaWNpdGx5IHNraXAgdGVzdF9jYXBpLkVtYmVkZGluZ1Rlc3QgdW5kZXIgV2luZG93cy4KKworLSBJc3N1ZSAjMTI0MDA6IHJlZ3J0ZXN0IC1XIGRvZXNuJ3QgcmVydW4gdGhlIHRlc3RzIHR3aWNlIGFueW1vcmUsIGJ1dCBjYXB0dXJlcworICB0aGUgb3V0cHV0IGFuZCBkaXNwbGF5cyBpdCBvbiBmYWlsdXJlIGluc3RlYWQuIHJlZ3J0ZXN0IC12IGRvZXNuJ3QgcHJpbnQgdGhlCisgIGVycm9yIHR3aWNlIGFueW1vcmUgaWYgdGhlcmUgaXMgb25seSBvbmUgZXJyb3IuCisKKy0gSXNzdWUgIzEyMTQxOiBJbnN0YWxsIGNvcGllcyBvZiB0ZW1wbGF0ZSBDIG1vZHVsZSBmaWxlIHNvIHRoYXQKKyAgdGVzdF9idWlsZF9leHQgb2YgdGVzdF9kaXN0dXRpbHMgYW5kIHRlc3RfY29tbWFuZF9idWlsZF9leHQgb2YKKyAgdGVzdF9wYWNrYWdpbmcgYXJlIG5vIGxvbmdlciBzaWxlbnRseSBza2lwcGVkIHdoZW4KKyAgcnVuIG91dHNpZGUgb2YgYSBidWlsZCBkaXJlY3RvcnkuCisKKy0gSXNzdWUgIzg3NDY6IEFkZCBhZGRpdGlvbmFsIHRlc3RzIGZvciBvcy5jaGZsYWdzKCkgYW5kIG9zLmxjaGZsYWdzKCkuCisgIFBhdGNoIGJ5IEdhcnJldHQgQ29vcGVyLgorCistIElzc3VlICMxMDczNjogRml4IHRlc3RfdHRrIHRlc3Rfd2lkZ2V0cyBmYWlsdXJlcyB3aXRoIENvY29hIFRrIDguNS45CisgIDIuOCArICBvbiBNYWMgT1MgWC4gIChQYXRjaCBieSBSb25hbGQgT3Vzc29yZW4pCisKKy0gSXNzdWUgIzEyMDU3OiBBZGQgdGVzdHMgZm9yIElTTyAyMDIyIGNvZGVjcyAoaXNvMjAyMl9qcCwgaXNvMjAyMl9qcF8yLAorICBpc28yMDIyX2tyKS4KKworLSBJc3N1ZSAjMTIwOTY6IEZpeCBhIHJhY2UgY29uZGl0aW9uIGluIHRlc3RfdGhyZWFkaW5nLnRlc3Rfd2FpdGZvcigpLiBQYXRjaAorICB3cml0dGVuIGJ5IENoYXJsZXMtRnJhbsOnb2lzIE5hdGFsaS4KKworLSBJc3N1ZSAjMTE2MTQ6IGltcG9ydCBfX2hlbGxvX18gcHJpbnRzICJIZWxsbyBXb3JsZCEiLiBQYXRjaCB3cml0dGVuIGJ5CisgIEFuZHJlYXMgU3TDvGhyay4KKworLSBJc3N1ZSAjNTcyMzogSW1wcm92ZSBqc29uIHRlc3RzIHRvIGJlIGV4ZWN1dGVkIHdpdGggYW5kIHdpdGhvdXQgYWNjZWxlcmF0aW9ucy4KKworLSBJc3N1ZSAjMTIwNDE6IE1ha2UgdGVzdF93YWl0MyBtb3JlIHJvYnVzdC4KKwogLSBJc3N1ZSAjMTE4NzM6IENoYW5nZSByZWdleCBpbiB0ZXN0X2NvbXBpbGVhbGwgdG8gZml4IG9jY2FzaW9uYWwgZmFpbHVyZXMgd2hlbgogICB3aGVuIHRoZSByYW5kb21seSBnZW5lcmF0ZWQgdGVtcG9yYXJ5IHBhdGggaGFwcGVuZWQgdG8gbWF0Y2ggdGhlIHJlZ2V4LgogCistIElzc3VlICMxMTk1ODogRml4IEZUUCB0ZXN0cyBmb3IgSVB2NiwgYmluZCB0byAiOjoxIiBpbnN0ZWFkIG9mICJsb2NhbGhvc3QiLgorICBQYXRjaCB3cml0dGVuIGJ5IENoYXJsZXMtRnJhbmNvaXMgTmF0YWxpLgorCistIElzc3VlICM4NDA3LCAjMTE4NTk6IEZpeCB0ZXN0cyBvZiB0ZXN0X2lvIHVzaW5nIHRocmVhZHMgYW5kIGFuIGFsYXJtOiB1c2UKKyAgcHRocmVhZF9zaWdtYXNrKCkgdG8gZW5zdXJlIHRoYXQgdGhlIFNJR0FMUk0gc2lnbmFsIGlzIHJlY2VpdmVkIGJ5IHRoZSBtYWluCisgIHRocmVhZC4KKworLSBJc3N1ZSAjMTE4MTE6IEZhY3RvciBvdXQgZGV0ZWN0aW9uIG9mIElQdjYgc3VwcG9ydCBvbiB0aGUgY3VycmVudCBob3N0CisgIGFuZCBtYWtlIGl0IGF2YWlsYWJsZSBhcyBgYHRlc3Quc3VwcG9ydC5JUFY2X0VOQUJMRURgYC4gIFBhdGNoIGJ5CisgIENoYXJsZXMtRnJhbsOnb2lzIE5hdGFsaS4KKwogLSBJc3N1ZSAjMTA5MTQ6IEFkZCBhIG1pbmltYWwgZW1iZWRkaW5nIHRlc3QgdG8gdGVzdF9jYXBpLgogCi0tIElzc3VlICMxMTc5MDogRml4IHNwb3JhZGljIGZhaWx1cmVzIGluCi0gIHRlc3RfbXVsdGlwcm9jZXNzaW5nLldpdGhQcm9jZXNzZXNUZXN0Q29uZGl0aW9uLgorLSBJc3N1ZSAjMTEyMjM6IFNraXAgdGVzdF9sb2NrX2FjcXVpcmVfaW50ZXJydXB0aW9uKCkgYW5kCisgIHRlc3RfcmxvY2tfYWNxdWlyZV9pbnRlcnJ1cHRpb24oKSBvZiB0ZXN0X3RocmVhZHNpZ25hbHMgaWYgYSB0aHJlYWQgbG9jayBpcworICBpbXBsZW1lbnRlZCB1c2luZyBhIFBPU0lYIG11dGV4IGFuZCBhIFBPU0lYIGNvbmRpdGlvbiB2YXJpYWJsZS4gQSBQT1NJWAorICBjb25kaXRpb24gdmFyaWFibGUgY2Fubm90IGJlIGludGVycnVwdGVkIGJ5IGEgc2lnbmFsIChlLmcuIG9uIExpbnV4LCB0aGUKKyAgZnV0ZXggc3lzdGVtIGNhbGwgaXMgcmVzdGFydGVkKS4KKworLSBJc3N1ZSAjMTE3OTA6IEZpeCBzcG9yYWRpYyBmYWlsdXJlcyBpbiB0ZXN0X211bHRpcHJvY2Vzc2luZy5XaXRoUHJvY2Vzc2VzVGVzdENvbmRpdGlvbi4KIAogLSBGaXggcG9zc2libGUgImZpbGUgYWxyZWFkeSBleGlzdHMiIGVycm9yIHdoZW4gcnVubmluZyB0aGUgdGVzdHMgaW4gcGFyYWxsZWwuCiAKIC0gSXNzdWUgIzExNzE5OiBGaXggbWVzc2FnZSBhYm91dCB1bmV4cGVjdGVkIHRlc3RfbXNpbGliIHNraXAgb24gbm9uLVdpbmRvd3MKICAgcGxhdGZvcm1zLiBQYXRjaCBieSBOYWRlZW0gVmF3ZGEuCiAKKy0gSXNzdWUgIzExNzI3OiBBZGQgYSAtLXRpbWVvdXQgb3B0aW9uIHRvIHJlZ3J0ZXN0OiBpZiBhIHRlc3QgdGFrZXMgbW9yZSB0aGFuCisgIFRJTUVPVVQgc2Vjb25kcywgZHVtcHMgdGhlIHRyYWNlYmFjayBvZiBhbGwgdGhyZWFkcyBhbmQgZXhpdHMuCisKIC0gSXNzdWUgIzExNjUzOiBmaXggLVcgd2l0aCAtaiBpbiByZWdydGVzdC4KIAorLSBUaGUgZW1haWwgdGVzdCBzdWl0ZSBub3cgbGl2ZXMgaW4gdGhlIExpYi90ZXN0L3Rlc3RfZW1haWwgcGFja2FnZS4gIFRoZSB0ZXN0CisgIGhhcm5lc3MgY29kZSBoYXMgYWxzbyBiZWVuIG1vZGVybml6ZWQgdG8gYWxsb3cgdXNlIG9mIG5ldyB1bml0dGVzdCBmZWF0dXJlcy4KKworLSByZWdydGVzdCBub3cgZGlzY292ZXJzIHRlc3QgcGFja2FnZXMgYXMgd2VsbCBhcyB0ZXN0IG1vZHVsZXMuCisKIC0gSXNzdWUgIzExNTc3OiBpbXByb3ZlIHRlc3QgY292ZXJhZ2Ugb2YgYmluaGV4LnB5LiBQYXRjaCBieSBBcmthZHkgS29wbHlhcm92LgogCistIE5ldyB0ZXN0X2NyYXNoZXJzIGFkZGVkIHRvIGV4ZXJjaXNlIHRoZSBzY3JpcHRzIGluIHRoZSBMaWIvdGVzdC9jcmFzaGVycworICBkaXJlY3RvcnkgYW5kIGNvbmZpcm0gdGhleSBmYWlsIGFzIGV4cGVjdGVkCisKIC0gSXNzdWUgIzExNTc4OiBhZGRlZCB0ZXN0IGZvciB0aGUgdGltZWl0IG1vZHVsZS4gIFBhdGNoIGJ5IE1pY2hhZWwgSGVucnkuCiAKIC0gSXNzdWUgIzExNTAzOiBpbXByb3ZlIHRlc3QgY292ZXJhZ2Ugb2YgcG9zaXhwYXRoLnB5LiBQYXRjaCBieSBFdmFuIERhbmRyZWEuCiAKLS0gSXNzdWUgIzExNTA1OiBpbXByb3ZlcyB0ZXN0IGNvdmVyYWdlIG9mIHN0cmluZy5weS4gUGF0Y2ggYnkgQWxpY2lhCi0gIEFybGVuLgorLSBJc3N1ZSAjMTE1MDU6IGltcHJvdmVzIHRlc3QgY292ZXJhZ2Ugb2Ygc3RyaW5nLnB5LCBpbmNyZWFzZXMgZ3JhbnVsYXJpdHkgb2YKKyAgc3RyaW5nLkZvcm1hdHRlciB0ZXN0cy4gSW5pdGlhbCBwYXRjaCBieSBBbGljaWEgQXJsZW4uCiAKIC0gSXNzdWUgIzExNTQ4OiBJbXByb3ZlIHRlc3QgY292ZXJhZ2Ugb2YgdGhlIHNodXRpbCBtb2R1bGUuIFBhdGNoIGJ5CiAgIEV2YW4gRGFuZHJlYS4KIAogLSBJc3N1ZSAjMTE1NTQ6IFJlYWN0aXZhdGVkIHRlc3RfZW1haWxfY29kZWNzLgogCistIElzc3VlICMxMTUwNTogaW1wcm92ZXMgdGVzdCBjb3ZlcmFnZSBvZiBzdHJpbmcucHkuIFBhdGNoIGJ5IEFsaWNpYQorICBBcmxlbgorCiAtIElzc3VlICMxMTQ5MDogdGVzdF9zdWJwcm9jZXNzOnRlc3RfbGVha2luZ19mZHNfb25fZXJyb3Igbm8gbG9uZ2VyIGdpdmVzIGEKICAgZmFsc2UgcG9zaXRpdmUgaWYgdGhlIGxhc3QgZGlyZWN0b3J5IGluIHRoZSBwYXRoIGlzIGluYWNjZXNzaWJsZS4KIApAQCAtMTM3NiwxMiArMjExNCw1NCBAQAogLSBJc3N1ZSAjOTkzMTogRml4IGhhbmdzIGluIEdVSSB0ZXN0cyB1bmRlciBXaW5kb3dzIGluIGNlcnRhaW4gY29uZGl0aW9ucy4KICAgUGF0Y2ggYnkgSGlyb2thenUgWWFtYW1vdG8uCiAKKy0gSXNzdWUgIzEwNTEyOiBQcm9wZXJseSBjbG9zZSBzb2NrZXRzIHVuZGVyIHRlc3QudGVzdF9jZ2kuCisKKy0gSXNzdWUgIzEwOTkyOiBNYWtlIHRlc3RzIHBhc3MgdW5kZXIgY292ZXJhZ2UuCisKIC0gSXNzdWUgIzEwODI2OiBQcmV2ZW50IHNwb3JhZGljIGZhaWx1cmUgaW4gdGVzdF9zdWJwcm9jZXNzIG9uIFNvbGFyaXMgZHVlCiAgIHRvIG9wZW4gZG9vciBmaWxlcy4KIAorLSBJc3N1ZSAjMTA5OTA6IFByZXZlbnQgdGVzdHMgZnJvbSBjbG9iYmVyaW5nIGEgc2V0IHRyYWNlIGZ1bmN0aW9uLgorCitDLUFQSQorLS0tLS0KKworLSBJc3N1ZSAjMTM3Mjc6IEFkZCAzIG1hY3JvcyB0byBhY2Nlc3MgUHlEYXRlVGltZV9EZWx0YSBtZW1iZXJzOgorICBQeURhdGVUaW1lX0RFTFRBX0dFVF9EQVlTLCBQeURhdGVUaW1lX0RFTFRBX0dFVF9TRUNPTkRTLAorICBQeURhdGVUaW1lX0RFTFRBX0dFVF9NSUNST1NFQ09ORFMuCisKKy0gSXNzdWUgIzEwNTQyOiBBZGQgNCBtYWNyb3MgdG8gd29yayB3aXRoIHN1cnJvZ2F0ZXM6IFB5X1VOSUNPREVfSVNfU1VSUk9HQVRFLAorICBQeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFLCBQeV9VTklDT0RFX0lTX0xPV19TVVJST0dBVEUsCisgIFB5X1VOSUNPREVfSk9JTl9TVVJST0dBVEVTLgorCistIElzc3VlICMxMjcyNDogQWRkIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRCBtYWNybyBmb3IgcmV0dXJuaW5nIE5vdEltcGxlbWVudGVkLgorCistIFBZX1BBVENITEVWRUxfUkVWSVNJT04gaGFzIGJlZW4gcmVtb3ZlZCwgc2luY2UgaXQncyBtZWFuaW5nbGVzcyB3aXRoCisgIE1lcmN1cmlhbC4KKworLSBJc3N1ZSAjMTIxNzM6IFRoZSBmaXJzdCBhcmd1bWVudCBvZiBQeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbCBpcyBub3cgYGNvbnN0CisgIGNoYXIgKmAgaW5zdGVhZCBvZiBgY2hhciAqYC4KKworLSBJc3N1ZSAjMTIzODA6IFB5QXJnX1BhcnNlVHVwbGUgbm93IGFjY2VwdHMgYSBieXRlYXJyYXkgZm9yIHRoZSAnYycgZm9ybWF0LgorCiBEb2N1bWVudGF0aW9uCiAtLS0tLS0tLS0tLS0tCiAKKy0gSXNzdWUgIzEzNDAyOiBEb2N1bWVudCBhYnNvbHV0ZW5lc3Mgb2Ygc3lzLmV4ZWN1dGFibGUuCisKKy0gSXNzdWUgIzEzODgzOiBQWVRIT05DQVNFT0sgYWxzbyB3b3JrcyBvbiBPUyBYLgorCistIElzc3VlICMxMjk0OTogRG9jdW1lbnQgdGhlIGt3b25seWFyZ2NvdW50IGFyZ3VtZW50IGZvciB0aGUgUHlDb2RlX05ldworICBDIEFQSSBmdW5jdGlvbi4KKworLSBJc3N1ZSAjMTM1MTM6IEZpeCBpby5JT0Jhc2UgZG9jdW1lbnRhdGlvbiB0byBjb3JyZWN0bHkgbGluayB0byB0aGUKKyAgaW8uSU9CYXNlLnJlYWRsaW5lIG1ldGhvZCBpbnN0ZWFkIG9mIHRoZSByZWFkbGluZSBtb2R1bGUuCisKKy0gSXNzdWUgIzEzMjM3OiBSZW9yZ2FuaXNlIHN1YnByb2Nlc3MgZG9jdW1lbnRhdGlvbiB0byBlbXBoYXNpc2UgY29udmVuaWVuY2UKKyAgZnVuY3Rpb25zIGFuZCB0aGUgbW9zdCBjb21tb25seSBuZWVkZWQgYXJndW1lbnRzIHRvIFBvcGVuLgorCistIElzc3VlICMxMzE0MTogRGVtb25zdHJhdGUgcmVjb21tZW5kZWQgc3R5bGUgZm9yIHNvY2tldHNlcnZlciBleGFtcGxlcy4KKwogLSBJc3N1ZSAjMTE4MTg6IEZpeCB0ZW1wZmlsZSBleGFtcGxlcyBmb3IgUHl0aG9uIDMuCiAKIApAQCAtMTYxMywxMCArMjM5Myw2IEBACiAtIElzc3VlICMxMDE1NCwgIzEwMDkwOiBjaGFuZ2UgdGhlIG5vcm1hbGl6YXRpb24gb2YgVVRGLTggdG8gIlVURi04IiBpbnN0ZWFkCiAgIG9mICJVVEY4IiBpbiB0aGUgbG9jYWxlIG1vZHVsZSBhcyB0aGUgbGF0dGVyIGlzIG5vdCBzdXBwb3J0ZWQgTWFjT1NYIGFuZCBPcGVuQlNELgogCi0tIElzc3VlICMxMDY4NDogc2h1dGlsLm1vdmUgdXNlZCB0byBkZWxldGUgYSBmb2xkZXIgb24gY2FzZSBpbnNlbnNpdGl2ZQotICBmaWxlc3lzdGVtcyB3aGVuIHRoZSBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uIG5hbWUgd2hlcmUgdGhlIHNhbWUgZXhjZXB0Ci0gIGZvciB0aGUgY2FzZS4KLQogLSBJc3N1ZSAjMTA5MDc6IFdhcm4gT1MgWCAxMC42IElETEUgdXNlcnMgdG8gdXNlIEFjdGl2ZVN0YXRlIFRjbC9UayA4LjUsIHJhdGhlcgogICB0aGFuIHRoZSBjdXJyZW50bHkgcHJvYmxlbWF0aWMgQXBwbGUtc3VwcGxpZWQgb25lLCB3aGVuIHJ1bm5pbmcgd2l0aCB0aGUKICAgNjQtLzMyLWJpdCBpbnN0YWxsZXIgdmFyaWFudC4KQEAgLTE3NzMsNiArMjU0OSw5IEBACiBDLUFQSQogLS0tLS0KIAorLSBQeU9iamVjdF9DYWxsTWV0aG9kIG5vdyBwYXNzZXMgYWxvbmcgYW55IHVuZGVybHlpbmcgQXR0cmlidXRlRXJyb3IgZnJvbQorICBQeU9iamVjdF9HZXRBdHRyLCBpbnN0ZWFkIG9mIHJlcGxhY2luZyBpdCB3aXRoIHNvbWV0aGluZyBsZXNzIGluZm9ybWF0aXZlCisKIC0gSXNzdWUgIzEwOTEzOiBEZXByZWNhdGUgbWlzbGVhZGluZyBmdW5jdGlvbnMgUHlFdmFsX0FjcXVpcmVMb2NrKCkgYW5kCiAgIFB5RXZhbF9SZWxlYXNlTG9jaygpLiAgVGhlIHRocmVhZC1zdGF0ZSBhd2FyZSBBUElzIHNob3VsZCBiZSB1c2VkIGluc3RlYWQuCiAKQEAgLTE4MjQsNiArMjYwMyw4IEBACiBUZXN0cwogLS0tLS0KIAorLSBJc3N1ZSAjMTE5MTA6IEZpeCB0ZXN0X2hlYXBxIHRvIHNraXAgdGhlIEMgdGVzdHMgd2hlbiBfaGVhcHEgaXMgbWlzc2luZy4KKwogLSBGaXggdGVzdF9zdGFydGZpbGUgdG8gd2FpdCBmb3IgY2hpbGQgcHJvY2VzcyB0byB0ZXJtaW5hdGUgYmVmb3JlIGZpbmlzaGluZy4KIAogLSBJc3N1ZSAjMTA4MjI6IEZpeCB0ZXN0X3Bvc2l4OnRlc3RfZ2V0Z3JvdXBzIGZhaWx1cmUgdW5kZXIgU29sYXJpcy4gIFBhdGNoCkBAIC0yMzI0LDYgKzMxMDUsOCBAQAogTGlicmFyeQogLS0tLS0tLQogCistIElzc3VlICMxMjk0MzogcHl0aG9uIC1tIHRva2VuaXplIHN1cHBvcnQgaGFzIGJlZW4gYWRkZWQgdG8gdG9rZW5pemUuCisKIC0gSXNzdWUgIzEwNDY1OiBmaXggYnJva2VuIGRlbGVnYXRpbmcgb2YgYXR0cmlidXRlcyBieSBnemlwLl9QYWRkZWRGaWxlLgogCiAtIElzc3VlICMxMDM1NjogRGVjaW1hbC5fX2hhc2hfXygtMSkgc2hvdWxkIHJldHVybiAtMi4KZGlmZiAtLWdpdCBhL01pc2MvUkVBRE1FIGIvTWlzYy9SRUFETUUKaW5kZXggYjIzOWNlZS4uYmNkNGMxYiAxMDA2NDQKLS0tIGEvTWlzYy9SRUFETUUKKysrIGIvTWlzYy9SRUFETUUKQEAgLTIxLDYgKzIxLDcgQEAKIFJFQURNRSAgICAgICAgICAgICAgICAgIFRoZSBmaWxlIHlvdSdyZSByZWFkaW5nIG5vdwogUkVBRE1FLnZhbGdyaW5kICAgICAgICAgSW5mb3JtYXRpb24gZm9yIFZhbGdyaW5kIHVzZXJzLCBzZWUgdmFsZ3JpbmQtcHl0aG9uLnN1cHAKIFJQTSAgICAgICAgICAgICAgICAgICAgIChPbGQpIHRvb2xzIHRvIGJ1aWxkIFJQTXMKK3N2bm1hcC50eHQgICAgICAgICAgICAgIE1hcCBvZiBvbGQgU1ZOIHJldnMgYW5kIGJyYW5jaGVzIHRvIGhnIGNoYW5nZXNldCBpZHMKIFNwZWNpYWxCdWlsZHMudHh0ICAgICAgIERlc2NyaWJlcyBleHRyYSBzeW1ib2xzIHlvdSBjYW4gc2V0IGZvciBkZWJ1ZyBidWlsZHMKIFRleHRNYXRlICAgICAgICAgICAgICAgIEEgVGV4dE1hdGUgYnVuZGxlIGZvciBQeXRob24gZGV2ZWxvcG1lbnQKIHZhbGdyaW5kLXB5dGhvbi5zdXBwICAgIFZhbGdyaW5kIHN1cHByZXNzaW9uIGZpbGUsIHNlZSBSRUFETUUudmFsZ3JpbmQKZGlmZiAtLWdpdCBhL01pc2MvUlBNL3B5dGhvbi0zLjIuc3BlYyBiL01pc2MvUlBNL3B5dGhvbi0zLjMuc3BlYwpzaW1pbGFyaXR5IGluZGV4IDk5JQpyZW5hbWUgZnJvbSBNaXNjL1JQTS9weXRob24tMy4yLnNwZWMKcmVuYW1lIHRvIE1pc2MvUlBNL3B5dGhvbi0zLjMuc3BlYwppbmRleCA0MDk0M2MwLi40ODgyZmJiIDEwMDY0NAotLS0gYS9NaXNjL1JQTS9weXRob24tMy4yLnNwZWMKKysrIGIvTWlzYy9SUE0vcHl0aG9uLTMuMy5zcGVjCkBAIC0zOSw4ICszOSw4IEBACiAKICVkZWZpbmUgbmFtZSBweXRob24KICMtLXN0YXJ0IGNvbnN0YW50cy0tCi0lZGVmaW5lIHZlcnNpb24gMy4yLjIKLSVkZWZpbmUgbGlidmVycyAzLjIKKyVkZWZpbmUgdmVyc2lvbiAzLjNhMAorJWRlZmluZSBsaWJ2ZXJzIDMuMwogIy0tZW5kIGNvbnN0YW50cy0tCiAlZGVmaW5lIHJlbGVhc2UgMXB5ZG90b3JnCiAlZGVmaW5lIF9fcHJlZml4IC91c3IKZGlmZiAtLWdpdCBhL01pc2MvcHl0aG9uLm1hbiBiL01pc2MvcHl0aG9uLm1hbgppbmRleCAzZGNhNjA0Li5lYWEzZWM3IDEwMDY0NAotLS0gYS9NaXNjL3B5dGhvbi5tYW4KKysrIGIvTWlzYy9weXRob24ubWFuCkBAIC0zNywxMCArMzcsNiBAQAogLkIgXC1PTwogXQogWwotLkIgLVEKLS5JIGFyZ3VtZW50Ci1dCi1bCiAuQiBcLXMKIF0KIFsKQEAgLTE1MiwxNSArMTQ4LDYgQEAKIERvIG5vdCBwcmludCB0aGUgdmVyc2lvbiBhbmQgY29weXJpZ2h0IG1lc3NhZ2VzLiBUaGVzZSBtZXNzYWdlcyBhcmUgCiBhbHNvIHN1cHByZXNzZWQgaW4gbm9uLWludGVyYWN0aXZlIG1vZGUuCiAuVFAKLS5CSSAiXC1RICIgYXJndW1lbnQKLURpdmlzaW9uIGNvbnRyb2w7IHNlZSBQRVAgMjM4LiAgVGhlIGFyZ3VtZW50IG11c3QgYmUgb25lIG9mICJvbGQiICh0aGUKLWRlZmF1bHQsIGludC9pbnQgYW5kIGxvbmcvbG9uZyByZXR1cm4gYW4gaW50IG9yIGxvbmcpLCAibmV3IiAobmV3Ci1kaXZpc2lvbiBzZW1hbnRpY3MsIGkuZS4gaW50L2ludCBhbmQgbG9uZy9sb25nIHJldHVybnMgYSBmbG9hdCksCi0id2FybiIgKG9sZCBkaXZpc2lvbiBzZW1hbnRpY3Mgd2l0aCBhIHdhcm5pbmcgZm9yIGludC9pbnQgYW5kCi1sb25nL2xvbmcpLCBvciAid2FybmFsbCIgKG9sZCBkaXZpc2lvbiBzZW1hbnRpY3Mgd2l0aCBhIHdhcm5pbmcgZm9yCi1hbGwgdXNlIG9mIHRoZSBkaXZpc2lvbiBvcGVyYXRvcikuICBGb3IgYSB1c2Ugb2YgIndhcm5hbGwiLCBzZWUgdGhlCi1Ub29scy9zY3JpcHRzL2ZpeGRpdi5weSBzY3JpcHQuCi0uVFAKIC5CIFwtcwogRG9uJ3QgYWRkIHVzZXIgc2l0ZSBkaXJlY3RvcnkgdG8gc3lzLnBhdGguCiAuVFAKQEAgLTE2OSw3ICsxNTYsOSBAQAogLkkgc2l0ZQogYW5kIHRoZSBzaXRlLWRlcGVuZGVudCBtYW5pcHVsYXRpb25zIG9mCiAuSSBzeXMucGF0aAotdGhhdCBpdCBlbnRhaWxzLgordGhhdCBpdCBlbnRhaWxzLiAgQWxzbyBkaXNhYmxlIHRoZXNlIG1hbmlwdWxhdGlvbnMgaWYKKy5JIHNpdGUKK2lzIGV4cGxpY2l0bHkgaW1wb3J0ZWQgbGF0ZXIuCiAuVFAKIC5CIFwtdQogRm9yY2UgdGhlIGJpbmFyeSBJL08gbGF5ZXJzIG9mIHN0ZGluLCBzdGRvdXQgYW5kIHN0ZGVyciB0byBiZSB1bmJ1ZmZlcmVkLgpkaWZmIC0tZ2l0IGEvTWlzYy9zdm5tYXAudHh0IGIvTWlzYy9zdm5tYXAudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE0MmJlN2YKLS0tIC9kZXYvbnVsbAorKysgYi9NaXNjL3N2bm1hcC50eHQKQEAgLTAsMCArMSw3MjU0NiBAQAorMjE2MSAzY2QwMzNlNmI1MzBmNmE3OGIzYjE0ZmVkYmQyMDc0ODk2ZGJmNmRlIGxlZ2FjeS10cnVuaworMjE2MiA0ZGI5ZDQ2YjMwNmE5YzZlYzJkMWZlN2E3Y2MzNmVmNzE3MzQyNmE2IGxlZ2FjeS10cnVuaworMjE2MyA0YTNhNjQ4MTg1ZWY4OTY1YzM0Mjg2MGJkODQ1N2VkNmMwM2M2ZGUwIGxlZ2FjeS10cnVuaworMjE2NCA4ZGE5MjI1Y2M2MGUyZGExNjY1YTgwYWY5MDE4NGRiMGZkZGEwNWNlIGxlZ2FjeS10cnVuaworMjE2NSAxN2U0OTBiNGRjMjhiOGFjNjA1ZmExOWU0ODJjZjcyMmZlODA2NThkIGxlZ2FjeS10cnVuaworMjE2NiA1NTcwZGJiMWNlNTU4YjU1NzE2ZWFiN2QwODBhMWFmYWQyZTc3ZTJmIGxlZ2FjeS10cnVuaworMjE2NyBmYzZmY2Q3ZGY0ZjdmMmUxYzEyZjE3YWYyNDY0YzQ5N2Q2ZjZhM2U5IGxlZ2FjeS10cnVuaworMjE2OCAzNGQ2NjdkYzFhNGM0YWJkY2IxOWNkZGZkMmU5YmZkYTAxMTM5ZWQyIGxlZ2FjeS10cnVuaworMjE2OSA2ZmMxNDZiZDRmMDNjOTdkMTRjN2MzMDBiMTIxMmExMWViOWI2NzJhIGxlZ2FjeS10cnVuaworMjE3MCAzMzcwMWRiNGVhNTU5MTAwZDM3YmU0NGQyZjBkNTNlNTY4YTBlYzMzIGxlZ2FjeS10cnVuaworMjE3MSBhNzFlODk2ZWQwNDczNDIxZDg4ZmU0NTUyNjljNWE1ZTU0NzMyYTIyIGxlZ2FjeS10cnVuaworMjE3MiBiY2VhNmM4MjI5MDZjODRlZGVkYWJjYzAzZWM0ODE1OTVkZWYwYTYzIGxlZ2FjeS10cnVuaworMjE3MyAzNmEyMjBkMzczMWEwMzM0NTc4NTU5M2VjMzJlYmMzNWEyOTQ5NGRlIGxlZ2FjeS10cnVuaworMjE3NCAwNmJmMmFmMDBlM2E5ZWI1MTUyOWI2MThjYmRjMGJiY2YxYTRlOTY0IGxlZ2FjeS10cnVuaworMjE3NSA4NzRjOGZkNTY1ZmEwOTQ2MWMyMTM5OWFmOWVkZTEyMzRlYTEwZjcwIGxlZ2FjeS10cnVuaworMjE3NiBlOWUwNWZiYmE3YTQwMDM0ZjgyMTFjOWQxZDEyYjI4ODc5ZjUxZmNmIGxlZ2FjeS10cnVuaworMjE3NyAwODA4ZTVhYjc0M2FiYjhiMDU3YTU1Zjc2NTFhYzExOGM4M2Y1YjBjIGxlZ2FjeS10cnVuaworMjE3OCBhNWYwMWE5MTc0MDkyZDI5ZWJhNjM3N2MyMzY5MTg3Y2RiM2ZkN2Q1IGxlZ2FjeS10cnVuaworMjE3OSBlOWJiZTRhYzMyMzg5ZThhN2E2YzBiNGFlZmFmNGVhZDMwODhmMjFhIGxlZ2FjeS10cnVuaworMjE4MCA3MWFjMGUzNzIzNmE1NGUwYTY3ODhiMzg0NjU1ZDhkODIwOWQ4NThhIGxlZ2FjeS10cnVuaworMjE4MSAxMTg1NDUzMTJmM2JmZTEwM2JjY2ZiMTAzZjRkZjJlZWIwZDBlYjgzIGxlZ2FjeS10cnVuaworMjE4MiA5NjE2OTZlZjNhYjdlNDNjOTlmNWM3NjBmN2M2MjFiNmExMTlkYzk4IGxlZ2FjeS10cnVuaworMjE4MyAyZDNlYjcxN2EwMGQxMDNkNDM3NTk0ZTA4MTkzZGFlNjAwMDYxZGE5IGxlZ2FjeS10cnVuaworMjE4NCAwODU2MmRlMDE2NjgwMGUxYzZkNWQ1MTVmNzQzNjliMzk5ZmQ4Y2FhIGxlZ2FjeS10cnVuaworMjE4NSA2NGE2OWQ2MTIxZTBkMjA2MmYyNmE3ZWNhNjdlOWI2YTQyZGNhMjdiIGxlZ2FjeS10cnVuaworMjE4NiAzMjYzOTg3OGQxNmI2MDQ4NzUzODhlMjI5OTYxMWJiZmM1MTg5NjI2IGxlZ2FjeS10cnVuaworMjE4NyA0NWFlYjJlZWFkNzllZTdmYTM2ZTQxNjZkZWI3NTM4NmMxM2UzNDFkIGxlZ2FjeS10cnVuaworMjE4OCA4MmM3YmFiNzhiYjEwYTcwNmY1ZDUyMGIxNTUwZTcyNGI5NGFhMzhjIGxlZ2FjeS10cnVuaworMjE4OSBlNWM1MGM2ODgxMTdjNmU1YmQ4OTU0NjBkYWNlNmM5Y2JmNTgxYWZkIGxlZ2FjeS10cnVuaworMjE5MCAzNDJhN2M2MWMwYzNjMGZlNDgxNGQxYWQyNGU3NzE0Mjc3MzgxNWIxIGxlZ2FjeS10cnVuaworMjE5MSA4NmUwZTIzNTBiYTExNzQ3YzRlMGZkY2U5N2JjN2M5YmM2NDg3NDFiIGxlZ2FjeS10cnVuaworMjE5MiBjNDg3ZGZjMzA2NjMzOTg1MDg1NGZiODU4YzZhODMzMDU5YTliYzc4IGxlZ2FjeS10cnVuaworMjE5MyBiNjQzZWFkZTY1NDQ1OWY4N2Q1NzJkNmI3OTM4OTZkOWIzYWRmODQwIGxlZ2FjeS10cnVuaworMjE5NCBiODA3YzkwYzRhNjgyMmQxY2I4YjM5Njk5MWNhYTgwODViYjMyYjRlIGxlZ2FjeS10cnVuaworMjE5NSAxZDIyOTAwZjc3Yjg1M2JlZTA2ZGQyNGExYmYxZmRmNDUxNWI0OGJjIGxlZ2FjeS10cnVuaworMjE5NiBkYTA2YTI4MmI4ODA0ZmE0N2ZmNGMzYzRiZDkyYmE5ZmI4ZWVhOTI5IGxlZ2FjeS10cnVuaworMjE5NyBhMjI0MGNlOTFlNTIwNjFiNDMyZjk3OTU3ZjkyYmY3OTc4NTM0MGFjIGxlZ2FjeS10cnVuaworMjE5OCBjNzk1ZmRhY2VkOWI4YTI4ZDk4MzMyNzc4NjhiMWY3NDYxYTA5NWY1IGxlZ2FjeS10cnVuaworMjE5OSAxMGUxODIxYzM0NWNhMmQxMzc1MzVhNmMxY2Y1ZWIwMTI4NmZjZDdlIGxlZ2FjeS10cnVuaworMjIwMCAxOTA1ZjgyMTM5N2IwZjA5NDEwMTE2MDhlNWI0NmRkMWM5ZTM4OWU0IGxlZ2FjeS10cnVuaworMjIwMSBmMjhhYzdmNjIxYzc2MDc5Nzc0YzMwMDE3YjI5MDEzOTY1ZDEwNDA5IGxlZ2FjeS10cnVuaworMjIwMiBlODBlZmVhYjQ5YjMyYzE1YWM5N2IyNGQ0ZjZlOGZkZDVjY2YwYTk1IGxlZ2FjeS10cnVuaworMjIwMyA0ODM1YzJkMzhiODRlNWZiNTU4MDM2ZDQ3YzU4NzFkZDk2NjMzOGI3IGxlZ2FjeS10cnVuaworMjIwNCBlYTIxOTgyYTE1MzI0MjVmODJlYzVhNDM0NmNiODQxOTE3YTcxZDk1IGxlZ2FjeS10cnVuaworMjIwNSA0ZDNhMjhkZmZjOWI5NWQzOGI5MTJjYjY5NTc0MmRlNDBkOTU3NjM1IGxlZ2FjeS10cnVuaworMjIwNiA3ZmVjYWJiMzI3OTE0NTA0NTQ0NjE3ZTViYWNkMWMwNWExMmU4NjlmIGxlZ2FjeS10cnVuaworMjIwNyBjZTZmMjQ3MTE1MDRlNTk1NmQ2NjAwOTljOTllY2NiOTUxYzBjMTQ5IGxlZ2FjeS10cnVuaworMjIwOCAwNTA1N2UzNjYwZjgyY2U4ZTgzZThjMmQ3M2QwYjU4NDk0ZjJiZWE3IGxlZ2FjeS10cnVuaworMjIwOSBiMGU3NjIyMWU3ZmZkYmNmZTk4YTQ0YWRmYWU5YzIzNTA5M2M3Y2ViIGxlZ2FjeS10cnVuaworMjIxMCBjM2ZhMmQxZjMwMzU4Njk5ZWUyNGUyYTVjM2MwMTE2NjJmNzVjMzc2IGxlZ2FjeS10cnVuaworMjIxMSBiOTQ4MjJmNTQ5OTEzMDRiNThhZGJiZWEyMzg2OWM5OGIyZjZmM2ZlIGxlZ2FjeS10cnVuaworMjIxMiBlYmNiNjI2Y2ZkZGZiOWYxYzdiMTg2NzhhY2JlYzQ0ZWI5N2FiYmQ3IGxlZ2FjeS10cnVuaworMjIxMyAxYjMxMDc3YWM2NDMwN2FiNTQ1NTI2NTFhZWM2Nzg3OGQ4MGQwYmQ3IGxlZ2FjeS10cnVuaworMjIxNCBhMWU1MGE4ZjQyZTIzY2ZhYjY0YmUzZTk5ZDhhNTMzNWVhMzNhOWM1IGxlZ2FjeS10cnVuaworMjIxNSA0MDJmNTcwOGIxMDdiMDVmODExZTVmODU0Mjg0MmU3MTc5OGRhNmM5IGxlZ2FjeS10cnVuaworMjIxNiA3YTAxZGJjZWU5YmMwMzEyZjVhMzE3ZmIyNDI5OTc1MWU3OGRkZGMyIGxlZ2FjeS10cnVuaworMjIxNyBhN2U4ZmI3YmI2YTI4ZWIxM2MwNTZmM2M2MmE5NmNhYWM1ZjY0NGQ0IGxlZ2FjeS10cnVuaworMjIxOCBhMWMyYjRmYWQxMzZjZmIxYjIyMzE1MGE0OGMzNDgwZDYzZTJkZWNiIGxlZ2FjeS10cnVuaworMjIxOSA0OTc1Zjc5OTBiMmIzNWM3MGQyMzUwNWVjZWE1YzIwZWVmY2QxZWQ4IGxlZ2FjeS10cnVuaworMjIyMCA0MzNmNTJkMWQ5NTg3NzY3MDNhNzNlODBlNTU2YmVlYjBlNDdmNTQzIGxlZ2FjeS10cnVuaworMjIyMSA0ZjU5M2IzOGQwNjE1NTc5YWNhZDRjM2M5Y2IzNTBlYjYwMGRkYzRlIGxlZ2FjeS10cnVuaworMjIyMiA1YzRkZDkzNDhlODExMzMyMGM0ZjdiNGU5ODMzZjMyMDVkZjE4YjgwIGxlZ2FjeS10cnVuaworMjIyMyBmZmZkMTI4NmM4ODI2NzkzNGQ3NDg2ZTRjNGU0NjdkNTdiMDg2NTliIGxlZ2FjeS10cnVuaworMjIyNCA2MTMxMTUwNmYyY2QwOWJhZGQ4Yjc5NDU2YWY5Nzg5MjE0ZWNiMGY0IGxlZ2FjeS10cnVuaworMjIyNSBhMjJkZjUyZDc3NDlhM2E4YzA3NzBhODIxM2RlNDdiMmNhNThmZWNmIGxlZ2FjeS10cnVuaworMjIyNiBhNzJjMGE3ZGM5OTNhYWUwNWU3MDg1Y2QzODY3OGI5ZGJiZWIxOTgxIGxlZ2FjeS10cnVuaworMjIyNyA0NmNiMTRhZWMxMGE4ZDZlMzY2NWI3MTg4MDcwYjY3ZTg5OWFkNjM2IGxlZ2FjeS10cnVuaworMjIyOCBmOThlNDE3MTFkMTc3OTAwYTk2ZDU3NDViYTkwY2M4OGJkODJkN2Q4IGxlZ2FjeS10cnVuaworMjIyOSAzNjUwMzczNmZkYzIzOTM0MDZjMDg2MGM4MWEyMDIyMmQ3M2NlZTU5IGxlZ2FjeS10cnVuaworMjIzMCBjY2NkNTM0ZjIyODA3NGYyNjc0ODQ4NDIyMWQ2OWYyZWU3NTJmMmIzIGxlZ2FjeS10cnVuaworMjIzMSBhMzZjMzQ4YThlMWEyOTE1ZDY5YjdkZDIwMjE2M2ZkYjdlNTk2Yzg4IGxlZ2FjeS10cnVuaworMjIzMiBhYzQ1MjJlOTljYTk0Mzc3YTY1YzY2Y2ZkYzI2Njg0ZmEwZmRmYmViIGxlZ2FjeS10cnVuaworMjIzMyA1ZThhMGI0MGE0YmRmMWU4M2M1ZDBiZjM4ZWZjNzc0NWIwNmVmOGQ0IGxlZ2FjeS10cnVuaworMjIzNCAzMDI4YWNhYTU2YjA1ZWQwZTExZTE1NmU4MWI1YTA2NzE5MTVjYjg2IGxlZ2FjeS10cnVuaworMjIzNSBiYzI0NGRmMjAyNTE2YjVhNTU1MTNlNDYzYjJmNjM3ZDE4ZjU4MDU1IGxlZ2FjeS10cnVuaworMjIzNiA4NWVlZDA2MGE0NmNlMjY2NDlmZDY4MDJjZmJkNWVlYzYxOTEwNjg4IGxlZ2FjeS10cnVuaworMjIzNyBlZGU4Njc5OTcwNWJhMTRiYzQwMjEzNTcxZGZlMmExZDVmNTZlOTA3IGxlZ2FjeS10cnVuaworMjIzOCBmNzJlMGM2MjM2OWUyNGNjYzBlY2RhYjc5MmM5N2EyMWIyMzMyYmFkIGxlZ2FjeS10cnVuaworMjIzOSBiMWZiNGUxZjZlNTE2ZDI4MGM1NTUwMWIyMzQ0NDk4Y2E2MjdmZWJjIGxlZ2FjeS10cnVuaworMjI0MCA2YzQzZTU0NzZkZTY5MDQxMjY5OWIzYmRlNmI1MDdiMWM0ODgwNGE2IGxlZ2FjeS10cnVuaworMjI0MSBmNDcxMDFkYzNjMTg4ZjI0ZjliOTcwNWRiM2I2NDg5MTkxNGJkYjgyIGxlZ2FjeS10cnVuaworMjI0MiBkZTM0ZjRhNGQzNTNiOWY1Zjk5MWFhY2E5OGM4M2ZhYWM2ODFjNmY1IGxlZ2FjeS10cnVuaworMjI0MyA1NTRhYzY1OWIyY2I5NTI0ZWY0Zjk2ZWMyNzU2ZGM0Y2EwZmEwZjliIGxlZ2FjeS10cnVuaworMjI0NCBmNmJjZjNjMWQ3MTRlNzg3NTM1NmNhMTJjMzJlZTVmOTc1ZjRlZDhhIGxlZ2FjeS10cnVuaworMjI0NSBhNzljYmIyNjU1YmFhZjU0YWRkYzIyMDMzNTAwMzY0NzliZGNiN2UzIGxlZ2FjeS10cnVuaworMjI0NiAwNmM5MmY0OTFmNTg4ZWQ5YWJlMGYyZDRmMTUxMjA2OWEzMGMxOTAxIGxlZ2FjeS10cnVuaworMjI0NyBhNjkzNDM4MGM2ZTc5Yjg3Zjc3NjJiMWQ5NDMzZDBlMGE4OTM3NDUyIGxlZ2FjeS10cnVuaworMjI0OCBlZjI0NDBmMjRmMTAyYzY3N2EwMmQ0MDc5ODhkZDg1ZjVkYTUwY2FiIGxlZ2FjeS10cnVuaworMjI0OSAxNmU4YzVkMTY0OTM1ZjNjNmE5ODllZWVhZGYyMmIwYWI0ZGMyMmVhIGxlZ2FjeS10cnVuaworMjI1MCA1ODQ3ZGYxMzk5MWRlNmE4MzY0ODQxMDc1NTNmNGU5Y2VjY2E4YTE0IGxlZ2FjeS10cnVuaworMjI1MSA1Y2I4NDNiYzg3ZmMwODY1NDZmYWJmNmI4ZWMwM2VlZDMxZTIwYThmIGxlZ2FjeS10cnVuaworMjI1MiA1YzM1N2QzN2IzMjczMWM4ZDAyMDQ1NDk3MDIwODU4Yzc5YzU3MTM5IGxlZ2FjeS10cnVuaworMjI1MyAwMDIwNjZhODM5YzUxY2MxODRhMGM2ZTY2OWVjOWQ2MzQyMGNkYTY3IGxlZ2FjeS10cnVuaworMjI1NCA5ZTA1MWZjNzA3M2U3N2I5ZTE1MDM0YTE5ZTU0N2VmZTJiODVjNjZhIGxlZ2FjeS10cnVuaworMjI1NSBkYWM4NjI1YzhkOWIwMTQxNzljZDU4MzM1OGI0ZDBlNGUyNTAyNTY3IGxlZ2FjeS10cnVuaworMjI1NiBhNWJmN2Q1OTU5Y2UwNTBmMmIwNTFjMTJlODE4MDg5NWU3ZTZkOGE5IGxlZ2FjeS10cnVuaworMjI1NyAyN2E1YjA4YzNlNzQyYzYyYTE1YjY4MTU2ZmUwZDQ4OGMwOTRhZDQyIGxlZ2FjeS10cnVuaworMjI1OCA2Yjc1ZjJhMzAwMGQ0MDY1MTQ2YjJkYWZlNmQ4M2QzMzA3MWU4ZDM1IGxlZ2FjeS10cnVuaworMjI1OSA0NTVkNjVhMTFiMTNlZDM3NzkyZTFmNGZmYmZlM2JjZGZhYTc4M2VlIGxlZ2FjeS10cnVuaworMjI2MCBlMGM4ZWZlZTc2YmQ4MTU3ODRjODEzYzY2YTJhMTA0NmU1YTBiZjVhIGxlZ2FjeS10cnVuaworMjI2MSBhZDE0YWE4YTI5ODQ0MzIzODRmN2FmMjFkNDUyYmU1YWFiYTZmMThmIGxlZ2FjeS10cnVuaworMjI2MiAwOGU1NWRiNmY3OTZhMjc2ZWNkMWMxNjgzYTUwMmJhZmQ3MjQ3ODcyIGxlZ2FjeS10cnVuaworMjI2MyBmMmNhY2I5MGM5MTdjOGQyOTI3OTk0Y2MyNDMxMmE2MjFkYjEzZjgzIGxlZ2FjeS10cnVuaworMjI2NCAxMjI5YmExMjRlMGJhOGVjZTkyMmNlMTRjMGY0YWFiZGJkZTFkM2YwIGxlZ2FjeS10cnVuaworMjI2NSA0ZWM4YzI2M2FiNDhiNDlkNzcyNzAxMWM0YTg2YzdiMTA5YjBmYTU4IGxlZ2FjeS10cnVuaworMjI2NiBiNGQ1ZmRjYmY4M2M2OGY5MTNhZjRjMTc1YTE0M2M4YWJmNzc1ZmVmIGxlZ2FjeS10cnVuaworMjI2NyA2NDM3M2M3OWMwOTk5OTBjYjY5MjYyZDE4M2E0NWU0ZGJmZjQyODQyIGxlZ2FjeS10cnVuaworMjI2OCAxZTAwN2RjY2IyNzA5YjA4MTFlNTNiZjA3YzdiODc5NzkxYWM5Nzc0IGxlZ2FjeS10cnVuaworMjI2OSBhZTliMzY2YzU3NWQ1NTdlNmY4MDZmMGQxNmU1NDc4NTcxNzU0YzFiIGxlZ2FjeS10cnVuaworMjI3MCBmNjk0MDM2Yjg1NjFlYjFiM2NiNTllZjM2ODBkN2U5NmRkZmQ3MWEwIGxlZ2FjeS10cnVuaworMjI3MSBlNGIxZDllNjk4MGE0MzhmOTAyZWVmOTAwMzY4YzJlNmEyZDUwYTY0IGxlZ2FjeS10cnVuaworMjI3MiBkMDhmNzUyYjU2YzA2MTQ2ZDViYWNmYjJlZjc2YzEwMzZhM2NkYzQ5IGxlZ2FjeS10cnVuaworMjI3MyBkOGExYjY0NTYyMTJiMjhiNjEyNjRkYjAyZDY1YjJjNWY2ZGU3MmM4IGxlZ2FjeS10cnVuaworMjI3NCBkMTY5NjExNjczNjVmZmZmODE3YmI4ZTY4YTIxMTFmZTUzYTZjYzU4IGxlZ2FjeS10cnVuaworMjI3NSAxZWZiOGVkNmFmZDMzYTAwNmM1Mjk5ZDNhNDE1YWNlMTJjOTg2YTg5IGxlZ2FjeS10cnVuaworMjI3NiA0MDk0YjQ2ZjA0YzhlYWYzMjViM2Q1OTllNzMyYTViZjlhOGMzYTdiIGxlZ2FjeS10cnVuaworMjI3NyAwYTAyY2E5ZGNkNmUwMjJmMTBhMWNjNTUzN2M3OGFhNzEzMjRhMzIzIGxlZ2FjeS10cnVuaworMjI3OCA3ODczM2MxYzZlMzYxODdhZjU3ZjRlYTI1MTcwYWQwN2QwODEwYmI4IGxlZ2FjeS10cnVuaworMjI3OSBhODA5MDEzYzJhZjFlZjNmZDY5ZmY1MWI0OWMyNTYzYWY3YzMyNzA1IGxlZ2FjeS10cnVuaworMjI4MCA5ZmVlMWNhNmM4ZmVkMTU3NzBjZjA2ZjQxODc1ZGZmYWU5YWVkNDJhIGxlZ2FjeS10cnVuaworMjI4MSBjOWE1ZmUxNjYwZjUxOTg1ZTI2OWJlNDkyOTQ2NGU1YzRlYTJlNWFkIGxlZ2FjeS10cnVuaworMjI4MiAwYzI1ZmFmNGE2YTQ0NTA4NWM0YjdhOTg1YjdhNDMwMGM5MzljZjcxIGxlZ2FjeS10cnVuaworMjI4MyBiMzgwM2ZkM2NiMmM4ZDkwOTMxMzZmNWExZDJlYzUwZjk4MWI0MzEyIGxlZ2FjeS10cnVuaworMjI4NCAyMjcyN2I0Mzc4MWU3YzUzZGJkY2Y1MmYzOGFiZmQwOWQ2ZDA4MTRmIGxlZ2FjeS10cnVuaworMjI4NSBhOGQwMzNjNmZiNTRhM2VlYTgwZGUwYTI5NTJjZjVhOTgwYjNmODQ3IGxlZ2FjeS10cnVuaworMjI4NiBmNzFkNmEwOTZiMDIxOGEyNjcyN2JkYTBkNGQzZDVhY2JmMzUyM2RiIGxlZ2FjeS10cnVuaworMjI4NyAyN2NjMGQ4MjM3NjYzYjc1ZGEzODcxNTQ2YjIwM2Y1Njg1YTQ3YTQ1IGxlZ2FjeS10cnVuaworMjI4OCBkMjE0YjVkMjFkZjhjNWFjZWNlZWU1NmJlMTQ4MTg0NDVmODA5ODMzIGxlZ2FjeS10cnVuaworMjI4OSAzYmVkNzZjZGFjMGM0NjU1Y2Y4MDI1YmE2MTIyMWYzZWNjZDdiNjlmIGxlZ2FjeS10cnVuaworMjI5MCBlZmQ5MDA0OTdmNGY4N2Q3MTdkMTM3ZGI1OGFmOTk1ZDZhMDNiMTRiIGxlZ2FjeS10cnVuaworMjI5MSA4ZjIxNGQ2MTdhY2FiODBmMTY2N2MxMDJiNmZlODVmNjgwYmNlMGRiIGxlZ2FjeS10cnVuaworMjI5MiBhZDRjNWE1ZWYwZmZlZWU5YjlhYTg4NWE0MTZlMDlmYTQ0OTI1MWIwIGxlZ2FjeS10cnVuaworMjI5MyA2NWVkZGUwMjJkNzFlZTM4M2IwYTU0NmM3Mjk3YzkzODk4YTZlMWIxIGxlZ2FjeS10cnVuaworMjI5NCAwNjg4OTY4NWViNjIwMWQyNGU5MTNiNGMwNTRjMWYyMjc0ZDRkMzVkIGxlZ2FjeS10cnVuaworMjI5NSA1ZDVjOWIyZGE1NjIyMTgyY2FmY2YxNzc3YjhhYTc2YzcwYWI3NjIwIGxlZ2FjeS10cnVuaworMjI5NiAyNmNjYmMzZTQxYzQ2MWFkNzlhNDJlMjAxMzM5Y2I5ZjlhMmQ4OWM3IGxlZ2FjeS10cnVuaworMjI5NyA2NTIzYmQyOTU0ZjA0MzZmYjhmNmNiNGFhYWZhMzAwNTA3ZTNhYjI3IGxlZ2FjeS10cnVuaworMjI5OCA4MmVmOTRiOGI5MDJlMzQ5NGIzODYwMWQxODQ0YmI5NTlkZTMxNjc3IGxlZ2FjeS10cnVuaworMjI5OSBiYjI0OTQ4OTU3ZTNjYTk2ODc2ZTkwMmVkYjI5MGFiNDY0YmE2YjZlIGxlZ2FjeS10cnVuaworMjMwMCBjMjk0YThjYWViYjliYjNlZTlmODkyYTM3MmQ2NDU3NTA3MDQ2ZjUzIGxlZ2FjeS10cnVuaworMjMwMSAzYjgwMjNiMGJiNDhiMTA2NmQ0YTMzNDA3MzE3MzA0ZDM3MjllMzkxIGxlZ2FjeS10cnVuaworMjMwMiBiZjVhODUzOWQ4YmE3Zjc0ZjAzNDIyYzViNGY2NjkwNzBmYjk2NTIxIGxlZ2FjeS10cnVuaworMjMwMyBjN2VhNjA0OTFlNjgxZTliOTFmNzZhMDEyYzRkYzk0NGI1ZmZmMmQ4IGxlZ2FjeS10cnVuaworMjMwNCAxODcwZDgyZGUwNjk5YWZiYTg5YTE5NDY2YjJmOWMzNjUxYjRjYzlhIGxlZ2FjeS10cnVuaworMjMwNSBjNzBlZWZlNDgwMjkwYTFkODBkOTg3YTJmZjU5OWEwZWFjYmViOTkwIGxlZ2FjeS10cnVuaworMjMwNiA4NTNiNzM2YTZhOWVlMzhlMzMwMWQ0MzBjMTUyYWU3NThlMTYxYTQwIGxlZ2FjeS10cnVuaworMjMwNyAwZjU5ODk5M2Q5OTg2ZjRhZTRlNmRkOWEzNDkxZDUwOWIzMDk4ZTgzIGxlZ2FjeS10cnVuaworMjMwOCAzNDk5YWQ4NzgzOWFmN2ExYTRmNzFjMTVmODlkMjBhYjg0Yzc4ZTcxIGxlZ2FjeS10cnVuaworMjMwOSBhMGM1ZjJhZjJlMGNhZDVjNGQ0ZGU0YTg5M2NhNWE1ZmU3Y2U3ZDQxIGxlZ2FjeS10cnVuaworMjMxMCA2MWM1MjYwYzM2NGYyNjBlNGM5YzljNTlkN2Y5ZDJhN2Q0NDM2YTFjIGxlZ2FjeS10cnVuaworMjMxMSBjNjVlYmE4MTk0YzdiNDAzYjllNzJlYWFjNDUwZTJkYWRhZjIwMzc3IGxlZ2FjeS10cnVuaworMjMxMiA5ZDRjN2RlMGRlZjRmZTY3ZWY1YWQ1ODI0NGM3Njk5YjUxODhiYTFkIGxlZ2FjeS10cnVuaworMjMxMyAxZDQwOTRjN2Q1OGI4YzczMGYwMzRiMWIzMTM2NTE4NTYyOWRhNTYzIGxlZ2FjeS10cnVuaworMjMxNCBlNTc2NGEwZDJkMzI5OWRhNjYxNGVlZjE5MjJjN2Y0MTc3NjY1ZmNlIGxlZ2FjeS10cnVuaworMjMxNSBmMmVmY2VhZjczY2M5ZDk5OWI4ZGY1M2JmZjdjZDIxOGEyZTYzMjQzIGxlZ2FjeS10cnVuaworMjMxNiA4OTZjODI1ZjJmNzFiZGQyYWMwZGYxMmI1YzZmZjE3OWUwNmNkYTI1IGxlZ2FjeS10cnVuaworMjMxNyA0M2NhYmFjNTAyM2QyYWMyN2Y1YzlhM2M4MzVmMWFjNjY4YzQzNjgzIGxlZ2FjeS10cnVuaworMjMxOCA0N2NjMGNlNzk5OWM3ODdmNmU5NGJkM2EwM2UxOWMwOTAyMjI0OGZlIGxlZ2FjeS10cnVuaworMjMxOSBjODY1OWY4YTVmNjM3ODRjNWFmZTQwMGRjMTdiNWZjMTkyZDAwMTk1IGxlZ2FjeS10cnVuaworMjMyMCA0MWYzYzY2YjEwZmQwYTY1Y2FiYzQ4YmZhMWM2YWViMzIwZDQxMzU1IGxlZ2FjeS10cnVuaworMjMyMSBhZmE0OGE5NmE0NDQzY2I1ODU3MTM4Nzk5ZTFkMDljNWRjNGJhZDY4IGxlZ2FjeS10cnVuaworMjMyMiAyNWE3ZmI0NGUyOTc4NDQ5ODEyMzU0Y2IwN2EyYjg2MmFmMzJjZWUyIGxlZ2FjeS10cnVuaworMjMyMyA3NjE4Njk3NjZlNDUyOGU2OGYxZDExNDYwNmViYzkxZWVjOGE0ZWZhIGxlZ2FjeS10cnVuaworMjMyNCBlZjliNGJlNWEzZmVhMTAyOWIzMWI1MTU0MjQ2OWRlMGIyNjhkZjBiIGxlZ2FjeS10cnVuaworMjMyNSA3Y2U5MWNmYjdhYzQ1MTJkNDkwNzczZDgxNzQ5Mzc1YThiYzMyOTgyIGxlZ2FjeS10cnVuaworMjMyNiBhNDU0N2FmMjk2NzExYmFhNzQzNzcyMjkyYzc0MTg0YzlkMjc4NWM5IGxlZ2FjeS10cnVuaworMjMyNyAyODkyM2U0NDI1NGNlYjc2Nzg5N2Y0NWRkZWRlNWUyMjllZjU0ZWQzIGxlZ2FjeS10cnVuaworMjMyOCAzZmEyYjE0YmUyNzA5MTE5MDc5ZjdhNmM2MzBlNWIxMzVkNWRlOTA1IGxlZ2FjeS10cnVuaworMjMyOSA2NTg1YWFiZTE5NjhiYTU2MThmMThlYTBjOWRhMWM5Nzg4YjM0ODlmIGxlZ2FjeS10cnVuaworMjMzMCAxZWQ3ZjZmNjU5ODM3MWViZDIzNTBlMTY4MTA4MWIyNjdhYzMwMWU2IGxlZ2FjeS10cnVuaworMjMzMSBlZTBhMzJmZDQ1Njc4NDk1YWMwMjMzY2FhZjZlZWNkMGM4ODRlOThiIGxlZ2FjeS10cnVuaworMjMzMiAwY2VlMDFiNjhkOWM4MjRkMzMzMjJlMzYwMjRhMDJmNGE3NWU3ZTEwIGxlZ2FjeS10cnVuaworMjMzMyA1Y2YzYzM2ZDAyZWE0Y2FiMjMxYzI5OTdlYWIyOGZlMmM3MjZiMTFmIGxlZ2FjeS10cnVuaworMjMzNCA0NjU2NDUyNDM2ZTE5YzQxMmU4ODA4ODM0ZTMxODVhOTY1MDA5NWU0IGxlZ2FjeS10cnVuaworMjMzNSAyMGZlZTRlMmVlY2RjOTVlZTAwYjJlYTNjZDJiMmVlOTViNWU1YjRkIGxlZ2FjeS10cnVuaworMjMzNiAwNmNjM2IwMDY3MWMzZTIyMTU3ZTI3ZThhN2Y2ZTg2ODJhNzZhODQ5IGxlZ2FjeS10cnVuaworMjMzNyAyMjkxNjhhMmZlMjg2YThiMjVkODNkODA1NjNkNzVmNDYwYTI1OWEwIGxlZ2FjeS10cnVuaworMjMzOCBiZDQ5Y2E2YzRhZGQyNDNjODhhMDk0MmFiZjVmMTNjZWYxMGZjM2QxIGxlZ2FjeS10cnVuaworMjMzOSBmYjYzNjdkNWZmNDY0OTA1NGU4Nzc5N2Y0MTIyMzQ4OTMwNTkxM2E0IGxlZ2FjeS10cnVuaworMjM0MCAwYzM1NWU5ZWU4NTQ1OGExZDFhZWU4YmFkZWFkYjgyZjVhYmFkYjRmIGxlZ2FjeS10cnVuaworMjM0MSBhNDA1YTMxMjQyZTdjNGI0ZDJlZDBlNDZiZTVmNGY5MGEzZDczOGNhIGxlZ2FjeS10cnVuaworMjM0MiBhODIzNjAyYzIyNzQxZDVhYjljNDc4YzZmNWJkMTkxN2MyMDQxNWVjIGxlZ2FjeS10cnVuaworMjM0MyA1OWZmYjZkNGIzNGM3NjczY2E3NGFmZGE4MmFlYTYzZmQ0YmNlZDc0IGxlZ2FjeS10cnVuaworMjM0NCBjOTE2OGFmZTIzZGRmNjljZGY1ZjAxNmM3MzFlZDNjNGNhYmNmMDE0IGxlZ2FjeS10cnVuaworMjM0NSAxYjA4ZGY0MTU4N2I4NTVmNGM2MjViOTIzYmJmZmQ0NjI3NTRiNTk0IGxlZ2FjeS10cnVuaworMjM0NiAzMzQ2NjI2OGI2MzcxZWE1ZTkzYzkzMWQwY2UzMzU0MGQ1YWUyZThkIGxlZ2FjeS10cnVuaworMjM0NyA4OTExNWU3NTM0ZDU4MGUwYjhkMjU4MWM4YzI0ZDAwNzkxZGIxYThkIGxlZ2FjeS10cnVuaworMjM0OCBmNDdkNWU5ZWEyNjRlZjkzZDM1ZmQ5YjQxOTQ4Y2QxNDJiYTcwZDQ3IGxlZ2FjeS10cnVuaworMjM0OSBkODE4MThlNjI2NzFhNjNlNTU1M2M5OThjYzYxYmRmYjM1OTEzNDZhIGxlZ2FjeS10cnVuaworMjM1MCBmZjBkYWUxZjRkYjYyNWJmMTMxYmViN2I2Y2Y3M2YxM2FlNTdjNWZhIGxlZ2FjeS10cnVuaworMjM1MSBiNTBmYTZkNTg3ODZkZGJkNDczZGVjZDk1ZTYwNWI4OWUwNGJjNDhjIGxlZ2FjeS10cnVuaworMjM1MiA1ZmZkMzcxYjc4NDFkZTY1MGMyYmZhYzEyN2YwNDBiOWZiNzgyYTk3IGxlZ2FjeS10cnVuaworMjM1MyAzMmFlNGExYWFiNjg5YWVmOGVlMDkwYzRjMTg5MTZkYTc4ZTIyZmRiIGxlZ2FjeS10cnVuaworMjM1NCA1N2YzZmZjN2IxYzQwNTQyNTE5OWViN2ZjMmQ4MzRkMzg1NzgyZTNkIGxlZ2FjeS10cnVuaworMjM1NSAxNDVmOWUxNDU5NWY0YmM2MmIxZTc0MjA3YzZkNTk2MzZhN2U5N2UxIGxlZ2FjeS10cnVuaworMjM1NiA0NWY0M2Y3NTVlNWM1M2JiNGZlY2M4NThhNzU1NDIzZDgyZTU4Zjg5IGxlZ2FjeS10cnVuaworMjM1NyA0OGZjMGI4ZjMzZDkwOWI0NDNmZDgwYjgzM2VhNWZiNGM1NTNlYTUwIGxlZ2FjeS10cnVuaworMjM1OCA0MjNiZTg3NmRjY2U2MjI1NzBjNTc5MzE5OTQ5NjY4MTJkMTE0ODMxIGxlZ2FjeS10cnVuaworMjM1OSA2NDYzMTZjOTk1MDc4ODhjZTkyMjZmZTdlNjc5N2ZlNzY4ZmU1M2YwIGxlZ2FjeS10cnVuaworMjM2MCAwYTNlMzNjZmQ0YTkzMzNlOWQwNmQ0NzQ2M2FlZGZiYTA2NzQwZTlhIGxlZ2FjeS10cnVuaworMjM2MSA5ZDAxOTY1ZjRmNDhhZmQ1OGU5ZjJjOThlYzM1NWZkZTZiODU2OWNkIGxlZ2FjeS10cnVuaworMjM2MiAzMTBmOGM5MjQwNzMyZTBhNzM2NDcxMzM0NjQzOWM2ZjUxYzI5N2VmIGxlZ2FjeS10cnVuaworMjM2MyBiZmZmYzdlMGZjYzNlMTkwYTEzNTUyODhlOGFkNzFhYjEzYTZjOThmIGxlZ2FjeS10cnVuaworMjM2NCBjZWIzNmVjNjE5OGRmMzk5YzE5OWQ3ZDAxOGViZDE2NGJhNmY2Nzg3IGxlZ2FjeS10cnVuaworMjM2NSAzZDdkYTYxNzRlMmU1ODUzZmM1MmVjYzhkZmI1YTg5MGQ1NTQ3ZGMyIGxlZ2FjeS10cnVuaworMjM2NiA4ZmZkYTg0NmQ3ODg5ZmQ5NzNjYTkwMDUyNGU0YzkxNzEzMTM1YWVjIGxlZ2FjeS10cnVuaworMjM2NyAzY2M1NDk3MmFiNTIzMDZhZjU5OTI3ZDViYTA3MDIyYmI2NWQwNGE1IGxlZ2FjeS10cnVuaworMjM2OCA5YWIzMjk2OTdkZGE1NDc1MDk4ODg1MjQ1MzBlMDI4MGM1NDIwMGZmIGxlZ2FjeS10cnVuaworMjM2OSBmMzUyZWE0ZGZmNzA4YjFhNzJhOTVjNDVlZDk5YTg0ODkxODZmYTExIGxlZ2FjeS10cnVuaworMjM3MCBlNDg2Yzg0OWM1MGMyNTZlYmM2ZjA5MDNhOTY5ZWEwMzZkNDM4OWM0IGxlZ2FjeS10cnVuaworMjM3MSA5MWEyZjQ3NDU4NTIxODQ0MDVmNjJlMTNkYzllOTJjNTA3ZGM4ZTk2IGxlZ2FjeS10cnVuaworMjM3MiA4M2YwYTcyNGE4N2MwMTYzMGEzOTZiYTU2YTNhYmE5YmRiYWVmNDZlIGxlZ2FjeS10cnVuaworMjM3MyBhNzkzYzllODgwYzdmOTM1OWYwNjMzODA3ZDdkNjJkNWFjMDcyNDBmIGxlZ2FjeS10cnVuaworMjM3NCA2NmI1NTc2NmJhNjU4YTU2YjFlYzQxZGU5YzJiMTYyYjhhOGIxYjE2IGxlZ2FjeS10cnVuaworMjM3NSBlZDAzMTFiOGU3NDE5MTgwNzljN2Y1MjZhY2YyODE3Nzc2MTZiNTVlIGxlZ2FjeS10cnVuaworMjM3NiBmNjFlNzM2OGRlZjJlOWU1ZjU1ODY4N2M5YWMxNWZhMzRmMDBkMWYyIGxlZ2FjeS10cnVuaworMjM3NyAxNzU0YjgwMjRiNTVkMGMzN2ZmZTZjMWFmM2ViMDFiMzcxZDZhZWRhIGxlZ2FjeS10cnVuaworMjM3OCAxOTU4NzIzYmZlMDI0ZDZlYjRhNGIwYzY2ZjI5YzU4ZDJiMjZhYmFmIGxlZ2FjeS10cnVuaworMjM3OSAzNDI5Yzk0NWQ4MTdkYmQxZWM0MTVhYzk1MzZkMmQyMTRhYmE4MjU4IGxlZ2FjeS10cnVuaworMjM4MCBhMTA5N2NkMDMzNDhlZTgxYjYxYzA2MDQ4Y2NiYTZkOWMyNThjYjZjIGxlZ2FjeS10cnVuaworMjM4MSAxZWZmNjExMTU4MmU0OGUwMDkwNjg4ZjQ3NWQxNmRiZGQ4ZjIyN2RkIGxlZ2FjeS10cnVuaworMjM4MiBlZGRhOWFhZDNlOGYxN2UyZDhmYmNjMzI3ZjE3ZmI2YzBlZmM3NjdiIGxlZ2FjeS10cnVuaworMjM4MyAyODk4ZDc4ZmEzMmRlN2UwNmIwZGMxYjRlMmJhOGIzMzg4ZDU2ZDVkIGxlZ2FjeS10cnVuaworMjM4NCA2NjkzYzVkODdmM2EwNDlkOTA4MGFlNmM5MDRlZDlhMjM0NjkxM2IwIGxlZ2FjeS10cnVuaworMjM4NSBlNzFiNmZlYzg2ZTU5OGZkMzAyNmY3ZWQ2MzA4ZmEzNzMwZTZhNWVlIGxlZ2FjeS10cnVuaworMjM4NiA3ODE5ZTE2MTUzMjBiNDIwNjIzMmVkYzM3ZWI4NjJiYzZmODczYjYyIGxlZ2FjeS10cnVuaworMjM4NyA3ZTgzMTE1ZWRiNmFlNmQzMjY0ZWMzM2M4OTQzMmIzZWRhMmYwMDAxIGxlZ2FjeS10cnVuaworMjM4OCA3ZWM2MDU4YjUzOWI3ZWQ5ZmEwY2Y2YmUzN2VkY2QxNmZjMTY4NjhiIGxlZ2FjeS10cnVuaworMjM4OSA2MzRjMWQzYzdkMzkyM2YwNGNhNTM0YWE4ZmYwNzQzOTkyOTYxMWM4IGxlZ2FjeS10cnVuaworMjM5MCAwODU5N2UyYjYzZDNmOTQzY2ZkZTZkMjc0MzQ0Njc1YzcyN2MzZTA0IGxlZ2FjeS10cnVuaworMjM5MSA3YmE5NjEyMDU4YTQ2OWIzNDkzOWY0ODgwN2JkNmUyYzI0ZWUwZjYyIGxlZ2FjeS10cnVuaworMjM5MiBiMzFhYmY0MjBlNjFhN2EwYTVhYWI0YTcxMjliYWExNThjOWVlZjA0IGxlZ2FjeS10cnVuaworMjM5MyBhZjJlNjQwMDc2OTgxN2IzOGVmYjdlZDUwNWFjYTZjODFjNTg4OWRjIGxlZ2FjeS10cnVuaworMjM5NCA4ZjYyYTU0NTczMTllMjY3ZjQ0YjZiZTUxZWYzYmUxZDgwYThlZjNmIGxlZ2FjeS10cnVuaworMjM5NSA5MTRjODNjZmE1ZTEwNWM3OTEyNDdjM2E4ZGZiZDA4MTZjZjQ0OTk3IGxlZ2FjeS10cnVuaworMjM5NiA5NzcwMTEyZTY2MGE5MDNmNWVhYzY1NzhhOGQ1NTg4MTRmNzQ4YjIyIGxlZ2FjeS10cnVuaworMjM5NyAwYTkyYjZhMWI5YzBhYmU4NzdiNjFhNGUzYjQ1OGUxZmViN2I2OGFlIGxlZ2FjeS10cnVuaworMjM5OCAxNmY0Njc3MTdkN2FiNzAzNWExMTVhYTlkNTEyZWI1OWM3MGY5YmNjIGxlZ2FjeS10cnVuaworMjM5OSBmZDgxNmVkMTdlMzVmMTcxMGU4Yjk2YjNjYzlmYjdlMDkxZDU1ZTE5IGxlZ2FjeS10cnVuaworMjQwMCBmZGE5NzNmMmE1MTJiOWE1NjI1NzU1Y2U3MDFmNjNhZWI3ZGVkMmI3IGxlZ2FjeS10cnVuaworMjQwMSAwYWFkM2E3Yjk3ZWYzNTI5MTMxNzExZmM4MWFiZDM3Nzk0YWZiZTUyIGxlZ2FjeS10cnVuaworMjQwMiA0MWUwNTc4NzBhNTM1NGVmNWI1Mjk1NmI4OTg5MmY0NGEzYmY3ZDc1IGxlZ2FjeS10cnVuaworMjQwMyAzMTZhMGQ5YzAwOTY5ZWQwNjZiMDI1YzA1NGZkYjBkMWM0NGQ2OGQ0IGxlZ2FjeS10cnVuaworMjQwNCA1ZjdjMjRiMzk1M2JlNzQ0M2VkNmYxZTM3OWIzMGI1M2JiZDBhZTc3IGxlZ2FjeS10cnVuaworMjQwNSA0N2ViODFkYTQ2ZGMyMTY3N2YxOGJjMWY1M2JhZWYyMGY0NGJmNTg3IGxlZ2FjeS10cnVuaworMjQwNiA0MzEzM2Q4ODVjNGNjOTYzMjExNjk5ZWQyOGM5Njc5MDNlMTY3YTNmIGxlZ2FjeS10cnVuaworMjQwNyA5NTZmZDVjM2YwNDA3ODAxN2RiYjI1ZmI3MGIyYWQxYThlYTFiMjhiIGxlZ2FjeS10cnVuaworMjQwOCAzNTliZjEwOWRhMGY3YzYxMDJjMGRkZTkwYTU5OWU4MTg4ZWIxZjRkIGxlZ2FjeS10cnVuaworMjQwOSA5ZWIxM2M2N2FlNmZmNmJlYTkyZjgyNmNlN2FmMTM1YWMwYWViOWJiIGxlZ2FjeS10cnVuaworMjQxMCBiYWIxZjU0OTRiOGVkZGNkZDFlNzlkNzE3OTRjNGYzZTA4M2MzMjY4IGxlZ2FjeS10cnVuaworMjQxMSBiOTk4NjAwOWQ3ZGM0YjdjMjg5MDU0YTg5YTY4NmNkYTJmYTZlZDc3IGxlZ2FjeS10cnVuaworMjQxMiA0OGQ1OGI3NGEzYTQ3YWJjYzYxNmJjYjYzNThiMDhkNDI1MjI1OWEzIGxlZ2FjeS10cnVuaworMjQxMyA2ODExOTEyZjY3MmQ4OTQzMzkxMzJiNmI4ZmM4NmRjZDU5MGNhMzczIGxlZ2FjeS10cnVuaworMjQxNCBkNGU1MzJlZTZmM2QxODdjMDdlZDU3ZDQ0NzU5YjQwNDBlY2NjMjM3IGxlZ2FjeS10cnVuaworMjQxNSA3MWIwYmQ1ZWQxNjIwNWIyMWQ0MzZhNmNiZmQ0ODEyZjE2YzlmOWFkIGxlZ2FjeS10cnVuaworMjQxNiA4NjA0ZjkwMjljZGEzZDcxN2JlYzY0MTI2NmVjNzA0YzhmMzY5ZTIwIGxlZ2FjeS10cnVuaworMjQxNyAzZWFiMmNmNWU0ZGQ1MWNmY2M0NDlkZjZlNGMwOThkZjliMGNmN2Q0IGxlZ2FjeS10cnVuaworMjQxOCBhNDY1NThhZDBiZWRhOTU4YWM1YzE3MDExNTZlNDY5MThjMGM3MWQ0IGxlZ2FjeS10cnVuaworMjQxOSAzYjkzYmNlYTEwZjZkZjg2OTE4MzgzNWU4NGNmZjViZmM1ODc3ODRhIGxlZ2FjeS10cnVuaworMjQyMCA2MzIxZDNkYzU3ZTBjMTg5MGE2ZjYyMmM1MWQzOWY0MGFmYWNhNjRkIGxlZ2FjeS10cnVuaworMjQyMSAyNmIyZWVkNzgzODE0ODgwNzQxMzMwZDBkNmMyZDFiOGJlMTE0ZTA0IGxlZ2FjeS10cnVuaworMjQyMiBmNGE5NDRlOTgzNWZhOTMyZjE0MjY4NWE3ZTI0NGY2ZDI5OTQ3MTE0IGxlZ2FjeS10cnVuaworMjQyMyA2YWNkNDFhNDVkOGRhOGJiMGYzYTU2ZmJkZTBmOGM2NjgyNmQwM2Q5IGxlZ2FjeS10cnVuaworMjQyNCAyOGYwZmZkOWZhY2ZiOTlhYzU5NThjNzhlMDgzY2UyMjY2MzgwOTE3IGxlZ2FjeS10cnVuaworMjQyNSA3MmQxYjg5YmUzNWFlMjJiYjZhZWE1M2EzN2QzODQ0ODQ2MzNjZjQ4IGxlZ2FjeS10cnVuaworMjQyNiAxODdiYTE3MzNiMTc4MWI0YmY1ZDk3YTRkNGZiMzM0MjU1NTBkODkwIGxlZ2FjeS10cnVuaworMjQyNyBiNTgyNmJmMjk2Nzc2ZWEwZjQzYTk1MjEwNGQxMTQ5OGZmMjRhZDZlIGxlZ2FjeS10cnVuaworMjQyOCA0NTc2NjFlNDdjN2JhOWI2ZGQ5MjY1M2Y3YjQ3ZDdhY2ZhOTQyM2E1IGxlZ2FjeS10cnVuaworMjQyOSAwZmUyNDcxMTY2ZjA1M2JmN2Y2YjFiMDEzM2QzOWQ4YzI2ZWZiMjNmIGxlZ2FjeS10cnVuaworMjQzMCA3NDVhNDY2MTE5NTdkNmIyNDU0NzY3OGRlM2ExZWUwZjUyM2VjZTY1IGxlZ2FjeS10cnVuaworMjQzMSBhZGVkMjA4YWRmNmM2Mjg1YTgzZThlNDNiYzU5MjllZDA0ZTQyYzNjIGxlZ2FjeS10cnVuaworMjQzMiAwYmYwMmUxYjdmNTFkZTZjNjUwZDE4OTg1NjUyZmVkYmNhMGU5YTEwIGxlZ2FjeS10cnVuaworMjQzMyBmMDg1N2NlN2VkNGZhZTQwOTg1ZTJkZDBkMjE2Mzc2ZmZmZjMwN2M2IGxlZ2FjeS10cnVuaworMjQzNCBhZjFjOGY1ZDBiMzdmOTMxYmQxNzYxYjg5M2Q3N2NmM2E5NWUwNTY5IGxlZ2FjeS10cnVuaworMjQzNSAxMmE2NDExNWE0ZWViZGE0YjhjY2Y5M2YzMjIxNmIyMjcwNzg0YTk2IGxlZ2FjeS10cnVuaworMjQzNiA4MDAwMWMwMjNiMmIyNmZhYzk4YzI5NDBmMzFhNDZjZjJmNTRiZTk4IGxlZ2FjeS10cnVuaworMjQzNyAxMDc4Y2QyNzNiNDA0MWI3OWYxMmZiNDE5Zjg1NzQ5YjdkZjliZmJiIGxlZ2FjeS10cnVuaworMjQzOCA1M2M4ZDc2MmYzYTgzZTIwM2E1ZWEwMTIxM2QxMTVjNTUzZDNmYjQwIGxlZ2FjeS10cnVuaworMjQzOSBhZjlhODYzNmU0YTg3Nzg3NDcxNDEwOTM0MTUyMzE0NzJiN2Y5YzRlIGxlZ2FjeS10cnVuaworMjQ0MCA5YzkyNGY5YzNiMTY5NDMyODdhYTU2YmJkOWVmY2YzMzZhMTY1NDZkIGxlZ2FjeS10cnVuaworMjQ0MSA3MDJhMTM5ZmEyNGI0OWE4NGE1MzAxMjI5ZjMwYzBlMDkwYTIxMWFmIGxlZ2FjeS10cnVuaworMjQ0MiA2ZGZjOTI2MzAxMjM0NzBhMDQ0N2NmYWQ3YmFlNzlkOTAwMjY0MjEyIGxlZ2FjeS10cnVuaworMjQ0MyBkNWM5YWU0MjJiNDEwMzY2ZDVkMzAxNzc0YjYyZDc3NTk2YmJiNTk1IGxlZ2FjeS10cnVuaworMjQ0NCBlZDAxNjI1NTg5MjkzM2E5ZGUyZTFjY2JkZDYzM2U3ZjQyZWUzMTEyIGxlZ2FjeS10cnVuaworMjQ0NSA2YWM0MDIwMjNjYWM1ZWE5ZjM3NWY0MjI1ZDUxZTRkMWYzOTY2YmQ4IGxlZ2FjeS10cnVuaworMjQ0NiA4NWJkN2RhYzEzZjNhZWM4ZmNmMjQxYTg0NGE2NDc0NDJkNjg1MzY1IGxlZ2FjeS10cnVuaworMjQ0NyAzOTA1ZGE2YzRhOGJmMTQ1N2FiYjBmZGRjZTE4ZDJlYTAzOTRjNmVmIGxlZ2FjeS10cnVuaworMjQ0OCAwN2VmZGEyOTUxYTg3ZjFmOTAyMjA1YjBiZDhlMzE5MGIzOWI3ZDA2IGxlZ2FjeS10cnVuaworMjQ0OSA5YjQzYTk4MzEyNGMxMmM2NjI4ZDIzNDMzM2Q4MTc3MjUzYjY5ZTRlIGxlZ2FjeS10cnVuaworMjQ1MCBjNGMyNzhjNTZlOTAwMDUzMTNiMjUxYzU5YWJhZTgzMTczMDI4NmI3IGxlZ2FjeS10cnVuaworMjQ1MSA2NjM3ZWVlMWM0Zjg0MjJkNzYzZGNlODQ4YjMxYWM4MGUyOTU3YzE1IGxlZ2FjeS10cnVuaworMjQ1MiAwNjc3NGE5NGFiYjViZDczNjYxZjMxNjExMTE4ZTEyMGJlMzVmNjEzIGxlZ2FjeS10cnVuaworMjQ1MyA2MzA4NWY3YjNkYjVhZDJiY2FiNjUwNTMxYzI3YzhlYTgyMmFjNGMzIGxlZ2FjeS10cnVuaworMjQ1NCBmOTAwYjY5MmIzN2U0NzAxOGQ1NWRiM2Q5N2FlZjRjYzZkM2IwY2M3IGxlZ2FjeS10cnVuaworMjQ1NSA4OTM4YjMxMzJjYWE5MDM4YTA2YmY2ODViODMyOGFjZjNhMjJlZDViIGxlZ2FjeS10cnVuaworMjQ1NiBkN2EzOGRlY2U4NmE4MTgyYTRlZDMyNDQ1MzEzYmIzZTM5NDA1YzJiIGxlZ2FjeS10cnVuaworMjQ1NyA3YTM1ZDk4NTc2M2IyMWY5NTllMmQxNmM4YWVjYmViYjVlY2Q1NTVjIGxlZ2FjeS10cnVuaworMjQ1OCBhYmNjYjBmOWY3MzU5YmMyOWI2YmRkYjI5Y2RjZDAyYjM3ZjFlYjcwIGxlZ2FjeS10cnVuaworMjQ1OSA3Zjg3NTZmZDY0MjIwZTNkMTA2NjUxMjVkNmVmMmUyOWI4YTUwZTU4IGxlZ2FjeS10cnVuaworMjQ2MCBmNzA5MGY1ODE0YzIyNzYxOTg5MTdmZDg2NWJlNjcxNTUzNTRmOGM4IGxlZ2FjeS10cnVuaworMjQ2MSAwOWZiNzllN2JhZjdhZTdlMTBlYWRkMTIxOGE0NDk4YTY5MWQwYTY2IGxlZ2FjeS10cnVuaworMjQ2MiBjMjhmYWJlMjExNjU0NDU4Nzk4N2QzYzYwZjE0MzA2YzdiOTk3MmFiIGxlZ2FjeS10cnVuaworMjQ2MyBkMTlhNjY1OTA0ZGY1Nzk0ODM3YzUxNjQ4Nzk3ZThjYWJlYWViYzMyIGxlZ2FjeS10cnVuaworMjQ2NCAxNDlkZDEyMWQwYTZiNGViNDAzNDBjYTlmMDA0MDEyYzdmM2E3ZGZiIGxlZ2FjeS10cnVuaworMjQ2NSAzMjAxYjc1Njk1ZWYyODgzZWZkNDg2NGY0N2EwZjNhYzUyN2E4NmRiIGxlZ2FjeS10cnVuaworMjQ2NiA2YjkzZDRjZThkY2I5OGJmNThhMmQ4ZTkwYjkzNzEzZTE2OTlhMGRlIGxlZ2FjeS10cnVuaworMjQ2NyBjOGE5NzkwMjlkZjQxZDhhYzEyM2IyM2U1MTM4MGI3MWNhNDI1MjAwIGxlZ2FjeS10cnVuaworMjQ2OCAzNWEyNTI4ZjhhNzNkODZmZDM4ZTliYmEwM2MxN2NhY2IzZTA3YTM0IGxlZ2FjeS10cnVuaworMjQ2OSBhYmNkOTE1OTMwMzU3N2ZiZWZiZjQ2NGUzMTY1MGFjMGZlYTQyMzE1IGxlZ2FjeS10cnVuaworMjQ3MCAzODIzMjNmOTJmY2U1ZmQwNGVjNTA2MTgzZjAyZjg0MWZhMGZkZTQ4IGxlZ2FjeS10cnVuaworMjQ3MSA3MmEwMjY4NDIwZDA2NzRlMmE4ZDBkZDY1N2E2NDZlZDcwNGE4ZjQxIGxlZ2FjeS10cnVuaworMjQ3MiA2MDVlMTcyYmJiNTU3NDY0Mjg3ODIzZTRlN2Q0NmYzODdmZTIwYWYxIGxlZ2FjeS10cnVuaworMjQ3MyBhZTg5NDExZjZmYzBlMDY0ODZhMTAxMjAzOWJlY2Y1OWU1YzU3OTVlIGxlZ2FjeS10cnVuaworMjQ3NCBiOGU0MjEzZjY1YTZlNTRkYjRlMzJlOTQwYzUxOWU2Y2FlNjE2NzM0IGxlZ2FjeS10cnVuaworMjQ3NSBlODM4NTJkMWE1ZTIzZDZkMzhkODZhOTBkNzczOWU0NWFmMmFjMmZiIGxlZ2FjeS10cnVuaworMjQ3NiBhZWY3ZTBhOTExOWU1ZDM3ZWU4MjIyNmE0NDUyYjIyOGZjNzBhMjBmIGxlZ2FjeS10cnVuaworMjQ3NyBhOWQ0NjdlODQ2MzE5NGNkNTZjMWI2ZjgzNzgwMDE2ZjcwZWUxMGQ5IGxlZ2FjeS10cnVuaworMjQ3OCAzMjViNDBkNzcyMzU1NjI5NTRkNzFmZTFmNTlmOTFiNzhiZjY2NzAzIGxlZ2FjeS10cnVuaworMjQ3OSAxMmZkZmEwMTBlNDFlYjk1NWZkNWM3ZWU0YTI3NmU2ZmRkZGE0NjhkIGxlZ2FjeS10cnVuaworMjQ4MCBhMTc3NWNjNzg2ZTZhZDlkMTI1NGEyYjBhMWIwMGNjZTRhNWU3NzUwIGxlZ2FjeS10cnVuaworMjQ4MSAyNjQyNmM0MmExNjJhNDQ5ZmUwMjg3MDY1NjU3ZjVhNjkyMzhlMDRlIGxlZ2FjeS10cnVuaworMjQ4MiAyYTg0YjE2ZjkxYjA5ODgzMWJhNzUzYjNlMzEzZDVmODY1YTI5ZDAwIGxlZ2FjeS10cnVuaworMjQ4MyAxYTZjZjFmOGNjZWNhMDRiZGMyZWE3MGNkMjNkYmRiNWQ4NjE1NTgxIGxlZ2FjeS10cnVuaworMjQ4NCA3MTRjMjM5MGU1Y2I0NWU2YzgzMzRmYzQxY2NlOWUyZDZjMTI0NDg2IGxlZ2FjeS10cnVuaworMjQ4NSBhODEwMjBkNTA1YmY5ZThiNmM5ZTBmNzgyOWVjMTFhMWVlYjMzMzA4IGxlZ2FjeS10cnVuaworMjQ4NiBiYWFkYTIwNzYyYjA4MTg1ZDAxMGUzNmM2NjgxODMyODNkM2NlYzBjIGxlZ2FjeS10cnVuaworMjQ4NyBmZjA4NjJlM2Q2M2E5Njc3OGRlMjgwYzk2ODc1YWZmMTQ2Mjc5N2VlIGxlZ2FjeS10cnVuaworMjQ4OCA0YjU5ZTYzYTI3YjU3YzMxNzJlZGQwZTk1Yzk2MzEzNWY5ODlhY2U4IGxlZ2FjeS10cnVuaworMjQ4OSA0OGJiYzhhZDgwMTZhNWI1NDc0MTZlZTFiZmNmYmQwNWNkMmYwOWY2IGxlZ2FjeS10cnVuaworMjQ5MCBmMjFjYjdiNTNmNmNmOGFjNTc0OTU5ZjJlZTI1ZTI4YzRmNWZhZmFmIGxlZ2FjeS10cnVuaworMjQ5MSAxODA3ZDYwZTYyMzFmN2JhYjg0MmE4YjcxODUwYTA2MjlkNjU2NjAxIGxlZ2FjeS10cnVuaworMjQ5MiAyMWMyNjZmN2VjYTFkOTY3YWJmODNjYzVmYzQwMzAyOWU4ZjljMGVlIGxlZ2FjeS10cnVuaworMjQ5MyBiZTMwNTJhNzdiN2ZkNDY4OTU0YTA3NDg1MzE3YWRlM2Q5ODNiNDBlIGxlZ2FjeS10cnVuaworMjQ5NCAxMzdhNWUwNmZjODRjZTU1Y2I0MzBlODk3NWQ2OWIwNzk1ZTRjNzVlIGxlZ2FjeS10cnVuaworMjQ5NSA0NDlmNWU1ZDlhZjYyZjIzZWU1MDk1Mjc1NGYzZmQ5MWVkZTdkNGYzIGxlZ2FjeS10cnVuaworMjQ5NiAxN2EyOTc2MGQwNjJiMDEzY2RjYjRiZTU3NjA3MzJhN2MxYzFjNzFiIGxlZ2FjeS10cnVuaworMjQ5NyA2NDE4OWJhN2UyM2JjYWMzMGJiMGRiYWMxN2U0MWQ0ZTA3MDhiMzgzIGxlZ2FjeS10cnVuaworMjQ5OCA0MjY2YWVmNTBjMmI0Y2ZiMWMyZjExMjU1N2I2ZGIwNDJkYmNhN2YwIGxlZ2FjeS10cnVuaworMjQ5OSA3OTRjZmQ0NTVkYzZmNjI2YmNkYzVjODQxMTY0MGM5ZWYyNTFjYjJiIGxlZ2FjeS10cnVuaworMjUwMCAwOGRjMzdhNGRkMzIzYTIyNTViMDQ4Njg1ZTk1OTYyNzA0Y2JmYzY2IGxlZ2FjeS10cnVuaworMjUwMSBlMzk0MWVmZDczMTA1YzEyMThhYTExYzM5NDQ0ZTA1ODA4NjQ4MGY2IGxlZ2FjeS10cnVuaworMjUwMiA5MDQxOGZkNDM3ZGJkMzY3NTA4MzU0MTFlNmMxYTFhMmQ1ZjRiM2I4IGxlZ2FjeS10cnVuaworMjUwMyBmMzc5NWFjMTQ2Y2VmZWYwYjZhNTViMTMxMzFmNzdmOWM2Y2E5N2I1IGxlZ2FjeS10cnVuaworMjUwNCAzNmFjZTkwODI4OWJhNzlkOTdiNzA2MGU4NWYwNWRiZTlmZGJlMzQyIGxlZ2FjeS10cnVuaworMjUwNSA3NWIyZmQxNjNmZDcxNWExMDAzM2E2MDgzNzY2NzM3MGI2NTAxNWM4IGxlZ2FjeS10cnVuaworMjUwNiAyZTBlYTZkNWM2Y2VmYTdhY2RjZTUxYWM1MzkxNTk1N2QzZjY3ZmI3IGxlZ2FjeS10cnVuaworMjUwNyA0ODE3YWU0MGE0ZTIxZGMwOGQ3ZDZhNTRhNTM3NWQ5NmVhYzVlZTQ5IGxlZ2FjeS10cnVuaworMjUwOCBkYWFiZTIzMjA2MmUwNGM2M2VkYjU0YWI1MTc3MmM0NGNkZTUyYzhkIGxlZ2FjeS10cnVuaworMjUwOSBhMjk1ZDlhM2ZlODkyMzNjMmY1NTNjN2IzZGRlZTFiMjcyZGQ3ZjYwIGxlZ2FjeS10cnVuaworMjUxMCA2ZTVjYmQ5Y2Q1Zjk1MTg3Y2NiY2U1MGY3MTViNjY2MWQwZGExNDc1IGxlZ2FjeS10cnVuaworMjUxMSAzZGZhYTA5M2Q5NmU5MThjM2UwZTg1YmE5NTBjYjM0ZGI1Y2Y4MDU5IGxlZ2FjeS10cnVuaworMjUxMiBhMzU5NWFlNGRjMWU3ODNmYTQ5OTk5NGRkYWNjOTkzYjYzZTc0OTMzIGxlZ2FjeS10cnVuaworMjUxMyBkOTMyNTljZDM3OWQ2NjZlZmQxMjM0ZDU5YTBlYjBkMTM3NGNjMDg2IGxlZ2FjeS10cnVuaworMjUxNCAxYzJjZjJiZGI2YzhhMGU1NWMyZGYwNTFiMjIxNmI1MWRlMzEwNTMwIGxlZ2FjeS10cnVuaworMjUxNSA2MGRhN2VlOTEwMGU2NDliNDAyNTA0YzQyMmY3YzU4OTgwMGM0YjU5IGxlZ2FjeS10cnVuaworMjUxNiA4YTk0Y2NjNGM5MTQwMGIyZTQ2MjIzZTlhYzE3ODA2ZjFkOGUxYWQzIGxlZ2FjeS10cnVuaworMjUxNyBhYjA1ZWZlZDAzZTkwZmY2MWNiNjI4NjljNDIyOGFmZDdhMzgxY2E3IGxlZ2FjeS10cnVuaworMjUxOCAyMzU4N2JlYTExYmIxYThmNjc2ZjQ5ODdjZDBmMTM5MGZjYmZhMTZjIGxlZ2FjeS10cnVuaworMjUxOSBhNjdhYjVkNTgxNDYzYzFmZGY1MDk1MWEwNzBkNmNjYTk2MDUyMzIyIGxlZ2FjeS10cnVuaworMjUyMCAwNjk2ZjE5ODc1M2Y5NDhlOGE2MTRkMTlmMzAxYWQ2NDhiOTY4MmM4IGxlZ2FjeS10cnVuaworMjUyMSAzYjMzYWM0NGUzNmUzYzY1Y2U3MjY5ZGM4OWM5ZWZhMmZkOTFhOWJkIGxlZ2FjeS10cnVuaworMjUyMiBjODU4NGExYmEzOGE5NDc0NGU2MTFlNGExMmUxMzY2ZDBjNjk0OGZlIGxlZ2FjeS10cnVuaworMjUyMyBiMjk2OTZlNWM0ZDk4MmQ5NTlhMjJmZWFjYTA0NTdlNWEwNDdmYWUwIGxlZ2FjeS10cnVuaworMjUyNCBkNzA3NTRhOTYzMTBkNjI4ODFhODk5YjY1NjNhYWIzMmU1OGQ1NTA4IGxlZ2FjeS10cnVuaworMjUyNSAwYmY4MjVmNTVhYzE1MjAwYjYwMjFmOGFhM2I0MGQxZjRjYjJhOTg5IGxlZ2FjeS10cnVuaworMjUyNiA0ZTMwNzNiYjBlM2UwMzk3YmRlOTc1M2U4ODMyMjEzYzA5Y2EwOTAwIGxlZ2FjeS10cnVuaworMjUyNyBjZmJhYzZmZjczYWYzY2E0MzQ5ZmUzOTBlZDVhMGUwYmQwZWE4YzI2IGxlZ2FjeS10cnVuaworMjUyOCBhN2QzNzBmOTNmNzUyNmYzNDMzYjZiMzRhYjU0ZjIyMTUxODVjZGNiIGxlZ2FjeS10cnVuaworMjUyOSAwOTI3YmRiODE2YTA0M2JjYjRhMTFmMTQ4MDBlZDE3OWQ4NjM2NGQyIGxlZ2FjeS10cnVuaworMjUzMCA0NmE2NTYxMjNhNjk2NTU2MGJmMjMyMjM4MDY5MzJkNTM3YzMzNjJkIGxlZ2FjeS10cnVuaworMjUzMSA1MDliYjc0YWMzMjQxMjlkMzIzNTMyMWM5YWE1ZGU3Mzk5OGZiMWU3IGxlZ2FjeS10cnVuaworMjUzMiAzOTcyOTAwZTFiNjFiMjcyZDVmNDZiZmYyMDJmZjRiYWQ1NDc3Y2U3IGxlZ2FjeS10cnVuaworMjUzMyAxNmIxOGY1ODZmZWNjNDFkMTU0NDRiZDQyOTE0NjNjYjlhNjc0ZjczIGxlZ2FjeS10cnVuaworMjUzNCAzMDVlMTUwYmFhNTM4ZTVlN2RkYzBmNTFjZTM2ZDQ3NjA5MmJmNTVjIGxlZ2FjeS10cnVuaworMjUzNSA3MGExOGE2Njg5ZDRkOWNkMGRlMzdhYzJjNmQ0N2M4NWI2MjNjN2YxIGxlZ2FjeS10cnVuaworMjUzNiA4NjgyOGNjMWM2NDY4ZDNhYjBmMDgyMjRhMjcyNmM2ZGM5MTM5NWQxIGxlZ2FjeS10cnVuaworMjUzNyA1NjQ1OTQyYjdhZTA1NWM1NmJkMWQ2M2YzMDlhZTUwMzI2YWRjNGI4IGxlZ2FjeS10cnVuaworMjUzOCA3YWE0Y2Q2MjFmNTkyNjRmMmY5ZDMwMTcxNDAzM2I3N2U2NzFjYTlmIGxlZ2FjeS10cnVuaworMjUzOSA3MzA3NTdjY2I4YTM2OTg0ZjgxOGExMTg4NjU4OWM5MWE5MzdjYjNhIGxlZ2FjeS10cnVuaworMjU0MCA3M2VmZTNlYTRmMWI4YWY3YzJmYmJlODVlM2U4OWJmODE1OWY3MjM0IGxlZ2FjeS10cnVuaworMjU0MSBkZGFiNTAyODVjNDc5ZWFmODRjZjdkNmIwMDZjYjZlNzBhNjA3YTg3IGxlZ2FjeS10cnVuaworMjU0MiA0YTk2ODIzZjliNjg0OTYwMGM1ODhmZjM4Nzc1Zjg2ODJmOTYyNzAzIGxlZ2FjeS10cnVuaworMjU0MyA0ZGZmMjNlN2NmMTE0MTdiNTBkN2RhN2Q3MTFkODQ3ZjNiODA1MDYzIGxlZ2FjeS10cnVuaworMjU0NCBiYTNjMWY5NWU2NjVlMzU1NjdjYmIxNzgxZGY2MzBmYzczNmY0ZjI5IGxlZ2FjeS10cnVuaworMjU0NSBhM2Q0ZDQ2MWQ0NDIxZmFlYjM0YWNhMjhmYzY2NDM3NjBhOTQxZGU1IGxlZ2FjeS10cnVuaworMjU0NiAwMzlhZWU2Y2JkNzg2YWJmNTEyY2NiYTIwOTBiZjQ5MDc1OTgxMWEzIGxlZ2FjeS10cnVuaworMjU0NyAwNTk4ZjRmMjVkMDQ0ZDYyYWIzZTcyM2NjNjMyMDYxNjliYjU3YTM2IGxlZ2FjeS10cnVuaworMjU0OCBmMDFhZWU2MTU1YjNhMmZmMmEzZGY5OTNhZTEyNTc2MGQ3ODJhOGMyIGxlZ2FjeS10cnVuaworMjU0OSAzMWQ1MDllOTQyNzEwNTlmMTJkNjNjNzEzMWMwZDU4MDI2ZDg3OTRlIGxlZ2FjeS10cnVuaworMjU1MCA1NWJmNjY0NDVjODVjODBmMjI3YWM0OWMzMWEzZTg4ZjlmODA1ZTk3IGxlZ2FjeS10cnVuaworMjU1MSAxNzJhYTJjM2U3MzQwYzFlNzQzOWYzYjdlMWJhMGYzZjBjY2E2ZjA2IGxlZ2FjeS10cnVuaworMjU1MiBjYWY4NDY2ZGNjOWMzNTc3YzFlYjYxOTE0NjdmZTk0ZjE1YjI0MjU3IGxlZ2FjeS10cnVuaworMjU1MyBmMzNhM2Y2OWRmY2I1OWJkMTk4NjQwYTYyNDc4OWU2MjE3YjE2MzMxIGxlZ2FjeS10cnVuaworMjU1NCA1OTYwOWIzYWY5NzhhMzk3MDE2Y2QzNWJhZWEyZDE1ZTU4YzNmYWZhIGxlZ2FjeS10cnVuaworMjU1NSA4MTU0Mzg1MjQ4ZDgxNzU3ZGU5MTE4OTdiMjdkOGIzZjFmYTBkYjMwIGxlZ2FjeS10cnVuaworMjU1NiA2NTliOGRiZjY5NWM1MTFhOTk1NWU5Yzc3ZDQyYzVmZmE5OTg5ZmM3IGxlZ2FjeS10cnVuaworMjU1NyBjMjYyZjQyMWE0NGM1MWM0ZmE4OTc1NDBkNDM5NTRlMTgxMWE5OTM3IGxlZ2FjeS10cnVuaworMjU1OCA0Y2RjYzE2YmQwODAwZmVjMGIyODE0ZThjMDA5ZGZkYzBkNWYyMDIzIGxlZ2FjeS10cnVuaworMjU1OSAwYWMxMzU3Y2Q4OTg5ZTNiMzY1NDIyOGUxNjY3N2JkYTE2NjJhMzk5IGxlZ2FjeS10cnVuaworMjU2MCAxZTRlNmRmMDcxOGUwMzgzNmE1YmI2OTNlY2YzODA1YzQyYzA3MjQ0IGxlZ2FjeS10cnVuaworMjU2MSBkMTg5YTJmNjgxYTZkZjM3NTlhMGE0MDI2YmQ2NWVkNzQxMzIyMGEwIGxlZ2FjeS10cnVuaworMjU2MiAwYzVlNGUxMzdkZTZlMGYzNjhhYjQ4OWU2NDQ2MWVmOGIwNDJjYmYwIGxlZ2FjeS10cnVuaworMjU2MyA5YmQyNjgwZDE2YmMzNjE3MGYwZjJjOTAzZjFmYjg3NjU0MTA3NzA3IGxlZ2FjeS10cnVuaworMjU2NCBkNzgzMmFmNmFiYTYzNGU1ZTMzYWRiNDgxNWVkOTA3ZjliMjg4MGNlIGxlZ2FjeS10cnVuaworMjU2NSA5Y2QzOGQxYWMzOTE5ZjM2YzBhMjYzZmNhZTQ4N2YzZjA0MTJhZTljIGxlZ2FjeS10cnVuaworMjU2NiBkM2QzMjg2ODAzMjhkZTdmODYyYzExMjNiNjIzZThjNGM3NzVkMzY3IGxlZ2FjeS10cnVuaworMjU2NyBlNjI4ZDA5Y2UyMmZlYmRkYmM1ZmVmYWEyMjMyNjIwMjY2NGVhNzFjIGxlZ2FjeS10cnVuaworMjU2OCA5YjNkNTU3NjY1YTkxODAyNTViNmY1NzczZTA5MjVmNmZhODAyMjQ3IGxlZ2FjeS10cnVuaworMjU2OSA5NTIxMzNlODliYzcyNWViZmE0OWYzODE2MDk2M2UwNWEyMmM3NGY0IGxlZ2FjeS10cnVuaworMjU3MCBiNWZlNjQ4MjA3MmZlZmE0Y2I0M2I3MmIxMmNmZjVlMmY2ZDNlNjI0IGxlZ2FjeS10cnVuaworMjU3MSBmZDA2MWRhZTllNTcwZDhmYTgwMzhjZWNlNzBiYWNlZjVlMWZmNjdiIGxlZ2FjeS10cnVuaworMjU3MiAwZjM1M2FmYzI4NzBkNjg0NDc3MjlkYTA3NDJkNDQxMWM1YmJlZDI3IGxlZ2FjeS10cnVuaworMjU3MyA0ZWYzMWY1ZDNkOTI3YjRiNzJiZjEzMTAxZjM4NjRlYWY2MzIyNjkxIGxlZ2FjeS10cnVuaworMjU3NCAyYWZmMzdiOWUyMGVjYTA5N2Q4YzlhYzkwZmM2Y2JmZDQ0MzBjNjhmIGxlZ2FjeS10cnVuaworMjU3NSA0YzQ1YmNiZTNiYjNiYmY3MTJmMmFlYjk1M2I0NWU0NWQzZjM5OGZmIGxlZ2FjeS10cnVuaworMjU3NiA0ZjE1N2IzMjRjNTA1YjA2MmNmNTJhMjk2YTRhZjRkMmE5NDM1NmNiIGxlZ2FjeS10cnVuaworMjU3NyAyYjAzNGM5MGI2ZDlhNjc4ZGRjNDc5OTM5YzQxYTExOGZjNjBhYzVlIGxlZ2FjeS10cnVuaworMjU3OCAxNjNlMjkwNjBmMGJmMzJmMTE5YjdkMTIxMjhlMTc0MTk5ZDQxNDhjIGxlZ2FjeS10cnVuaworMjU3OSA3MDMyM2NiYTNjMTM2OWRhMjRjMDMwOWZkMDZjMzNmOTkzNTIzZDc5IGxlZ2FjeS10cnVuaworMjU4MCA1YTlhYTJhYmEwOGU5NmQwMDBlOGMzZmZkODFhNDNmOWMwMDU5MTg1IGxlZ2FjeS10cnVuaworMjU4MSAzOTQzMDEzNDA2OTMzNzJiYjhjMGZlMzkyNzA3MGIyMTMwMDE0MmFlIGxlZ2FjeS10cnVuaworMjU4MiA1NWVlNzVmMmZlYTRhY2RhZDY0ZWUzNmUyYzRjZmVhZWI1YmJiMzVkIGxlZ2FjeS10cnVuaworMjU4MyBlYTVjZjA5YmJmMzZiNDY3Y2I3OGY3Y2IzNzY0NzIyZTA1MGI0NWFjIGxlZ2FjeS10cnVuaworMjU4NCBjOGQwYTRhNDFmMGJhN2NlODJmZDdiY2U3NTlhZjExODNjNGMxYjgyIGxlZ2FjeS10cnVuaworMjU4NSAyZGNlY2E5YTA3MTM5MzNjMzYxZTQxYzZiM2QyMGVhY2M1YzQ0OTc1IGxlZ2FjeS10cnVuaworMjU4NiBkMWVlMGZiMGMwZGY1NjVhMjQwNTUxMzdlM2VjNjYwZjNkYzA3M2MyIGxlZ2FjeS10cnVuaworMjU4NyA2MWJiYzcyMzBjNzE2NmU1NjVlZDBhYmZhMzU1MzBlZmUzNDRjMmRmIGxlZ2FjeS10cnVuaworMjU4OCBhM2E4NDJiMzk5MTMyZWM4MGVkZTU4OTQyZmYxOWI0YjcxYTdhYWM0IGxlZ2FjeS10cnVuaworMjU4OSAzYzdiN2NhYTlkYTU2NmFhY2U2MTBkMTFlZmZkZmU4N2E0MTkwOTc5IGxlZ2FjeS10cnVuaworMjU5MCBiYjMwOGU3YjAwMzk0ZmJjOWM3ZTQ0NTVhZWNlNGNhNTAxMzk4MzhkIGxlZ2FjeS10cnVuaworMjU5MSAwZjllYmM2M2RjYjU2Mzg5YWYxYjFiZmQ3MTNlYjEwYjk5NzZkY2IwIGxlZ2FjeS10cnVuaworMjU5MiAwOGIxYTg5YzhmMDYzNTM0Yzc5Mzk3NTc0MTQzNzk0MWU3M2FmZTUyIGxlZ2FjeS10cnVuaworMjU5MyA3OTQwYmIzOTFhNmFjYjJmOWY1ZTAzNmUxZjBlNTJkN2U5NGRmN2FkIGxlZ2FjeS10cnVuaworMjU5NCA4YmVkZGMxNzAzOTY2OGIzNDgwNjk1YmIzYzhkMmI5NWJmNTRmNzM1IGxlZ2FjeS10cnVuaworMjU5NSA0ODdiN2M2MmFlNzc0YTM4NTEzM2RiMDExNTZkMjcxN2I1NmRlMDU1IGxlZ2FjeS10cnVuaworMjU5NiAyZGUzNGI5NjAyZTBlZjY1ZTQ4ZDE0ZTM5ZWQ2MGYxNzU1Mjg0MDU2IGxlZ2FjeS10cnVuaworMjU5NyAxZTZjOGYyYWExMzZkYWEyNzU0NzYxMzkzZTBjOTIyM2QwZmZmYWU1IGxlZ2FjeS10cnVuaworMjU5OCA0MDJhNTlhZDI0OTNmMGI5N2YzMmM2ZmViMTg5YTU1ZWUxYTVhMzMyIGxlZ2FjeS10cnVuaworMjU5OSA2NGJjOGEyODRmYjNmY2ZkMzZhMThiY2QyZmU2YjUyNzBmNGRmMWYzIGxlZ2FjeS10cnVuaworMjYwMCBjMTJkMDMzZjY1OTRlNjY0OWZmYzI0YjgxZTA3ZTBiYTAxNjk5N2I5IGxlZ2FjeS10cnVuaworMjYwMSBlMmRiMzM0MWQ2ODYwZWU2NzZiNWJkODI2ODUwY2U2MjY0N2JkZWUzIGxlZ2FjeS10cnVuaworMjYwMiA2MDBiZmE5ZmI4Yjc2ZTVhOWE0NzUwMjFiZGZmMzcwM2E1MjQzOTNkIGxlZ2FjeS10cnVuaworMjYwMyAxN2Y0Y2RmMjg5NTlmNjBhMjQ0OTRlZjZmMWU0MTA1ZmI0OTgwOTBhIGxlZ2FjeS10cnVuaworMjYwNCA5Zjg1YmViMWY3Yzg0OWZlMDE2OTcyZDg4MGM4YTBiYTIzY2JmYzFjIGxlZ2FjeS10cnVuaworMjYwNSAxZjY0ZjU1YTUyZTg2NWFhN2FhOTY3YjkxOWZhNDBiYTc3NGU0MmM4IGxlZ2FjeS10cnVuaworMjYwNiBjMDY4M2Q2Njc2YzY2YmM1NGJhOTZlZmMwMTk3OTk4ZjhmMDM3ZGRjIGxlZ2FjeS10cnVuaworMjYwNyBjMzA3ZDEwYjY4MGM2YTM5OGNhMTU2ZjdjMGNkNDA2YzIyZTJlYTFmIGxlZ2FjeS10cnVuaworMjYwOCA4ZjYzODlkYmMxY2Y3YjRmYTcxODI3OTkwMzRhY2M4YzhmZjA4Yzg4IGxlZ2FjeS10cnVuaworMjYwOSAzMjZiODllYTY3MTM4YmFjNDUzMWM1OTgwNjIyZjg1ZTkyMmJmNzU0IGxlZ2FjeS10cnVuaworMjYxMCBhNGZlYTY5MTIwZDgxNDc3MzFiMjY5NDkyMTEwZTc2ZmE1MGYyMjM5IGxlZ2FjeS10cnVuaworMjYxMSAyMzQ5N2RiNjY4N2FhMWRhY2UxOTZkYzYxNjQyZDAzMWQ4N2FjOWQzIGxlZ2FjeS10cnVuaworMjYxMiBiMmRjZTAxYzM2NmU2YWU1NDU2MWE3YThlODY1MjZkNzE2NDY4NzNhIGxlZ2FjeS10cnVuaworMjYxMyBhZTFhNTU1ZTY1ZmFjNjQ2NTZiYzAyZWE1ZGRhYWNiYjM3MGUwNDZjIGxlZ2FjeS10cnVuaworMjYxNCAzNGFiY2ExODJmMThlMWI2MTY5ZWFlMDgyYzMxYTMyODFlODgxYTQ1IGxlZ2FjeS10cnVuaworMjYxNSBhNWYwYjgzOTBjODc5NjgxZGJiMjg0OTRjYmRlYjhjZTFmYmQ4Zjg4IGxlZ2FjeS10cnVuaworMjYxNiA0NjRkOWQ5M2YzNGU5MWEyMjhmZjY1ZGFmNDQwZDllYThjY2M3Mjg0IGxlZ2FjeS10cnVuaworMjYxNyA5MjcxOGU0ZjVhZGMxYjI4NGM3NjhlZGUyZWFjNzBiZDg0ZTJiNGUwIGxlZ2FjeS10cnVuaworMjYxOCBlODY2N2E3ZDMxOGRkZWUwODVkOGUyNGU4ZDcwNmU0NmE4YWJhMzMxIGxlZ2FjeS10cnVuaworMjYxOSAxZmQ0NzEyY2M2NmY3YjZhYzU5ODA0NWM4MDA1ZjA1OTE3ODY1NDQxIGxlZ2FjeS10cnVuaworMjYyMCAwNzM2YWVmYWZjNjAxOGMxNjRmZjgwZDhlM2MyODRiOGI5NTE2NTVlIGxlZ2FjeS10cnVuaworMjYyMSA3YTYwZmFhMzgxMTM1MWJhMGI0NmRhOTBlNmU5Mzk0NzE4NjZjYjJkIGxlZ2FjeS10cnVuaworMjYyMiA3NjljZmZmNGFlNWU5NTA0MWFjMzk2NDY2YzA1ZDExZGU2MzI1OWU2IGxlZ2FjeS10cnVuaworMjYyMyA2NzhhNzM0YzI0NGRjOTBjZDgzMTVlZTNiNzQyM2MwYmY0YmMzNDY4IGxlZ2FjeS10cnVuaworMjYyNCBjOTdmNGM2YmE2YzY1ZWNjNjNmMzM1YmY3MGFjZjQxMjYxNzJhZDI3IGxlZ2FjeS10cnVuaworMjYyNSA5MDMwMGNhMjEyMDA1OTIwNjZiYTc4ZTI3ZTk0MWIyYWM2NzMyYTNjIGxlZ2FjeS10cnVuaworMjYyNiBjYTAzOTFhODEyZjg2MzU4OTI5NTQ4Yzc1YWJhYzlmMjA3YjhlNTZmIGxlZ2FjeS10cnVuaworMjYyNyA5MGNiY2IwYjk3ZGM3ZDQ5ODQ0MzUyNGM1MjJiOTExOTNjZTk1MGQzIGxlZ2FjeS10cnVuaworMjYyOCAxY2I3OGI2MjViMDcyM2NiNDk1NTJkZDZhYzc4MDljZTVhNGJhNGZhIGxlZ2FjeS10cnVuaworMjYyOSAxMGUzZDI2MDQxMzEwOWE5YWJkMzdlYjQ1NzZlMGU1MmYyNTJkZDJjIGxlZ2FjeS10cnVuaworMjYzMCA0MjEzMGU3MjIwYWZmYjk0ZDBjMzNmOGZlNjc3ZDc4MmU4MDJjYmNjIGxlZ2FjeS10cnVuaworMjYzMSBhMTAyNWNiYmEzMGRhZDE3Zjk5NTc0MWFhOGQ1YjQ1Mjg4ZDljZGQ3IGxlZ2FjeS10cnVuaworMjYzMiAxYmUyMDg3NjkyYTI0NDQ2NDM0NzMxMzkyZTM0MGVhNjJiZmM4NjNkIGxlZ2FjeS10cnVuaworMjYzMyAxZDRiMDMzOWI4M2RhOGUzYmNhMDQ0ZWUyMjZkZjUyZGQ0MWM5ZjdhIGxlZ2FjeS10cnVuaworMjYzNCA0YTdmMGYwNmNkMjdjNGIyOWY3NjY2M2YwNjczODdiMmIzNjFmN2YwIGxlZ2FjeS10cnVuaworMjYzNSAxOTM2NTIwMWRjZmE4NWFlYWUzZDk0MDU5NjRlYmJkZjgyOTY4MGFhIGxlZ2FjeS10cnVuaworMjYzNiBlMmMzNDYzYzRkOTE4NDMwMzhmYTYwYWI3NzJiZjM3MGZmM2NiNDA0IGxlZ2FjeS10cnVuaworMjYzNyBiZWM5NjNmOTliYzlmNTkxYWQxYzJlMDllZTYyNDUyZWVhOWI5YWEwIGxlZ2FjeS10cnVuaworMjYzOCA0MzZjODEwMzA4NTMzODY3MzNmNmIyMWEzZGM0OTdiOWJmZDk0ZjJmIGxlZ2FjeS10cnVuaworMjYzOSBjM2JlZTVhNTcyMWY3ZWNkN2RhYmQ5NmQ4OGRmNTRmOGEwYzAyNTQ2IGxlZ2FjeS10cnVuaworMjY0MCAzMjQ5NmEwZDAxZjQ4OGE2NWU3NThlZWY0NWMzZTViMzAyZWRiMjUwIGxlZ2FjeS10cnVuaworMjY0MSBjNjRjNjcwMjU0OWQ2YmEyY2RiOTkwODk1ZjRmZmZjYzc1ZmZmNDAzIGxlZ2FjeS10cnVuaworMjY0MiBkYzA0NjM0NTNhNjQzNzFiYWEwMzgxYjUzYzJmYjM4YThkNjYxY2Y5IGxlZ2FjeS10cnVuaworMjY0MyBlZTg5OWE4MTU3MGQwNTA0Y2E4MGFhMWRkODJkZDM0MzVjZGVkNzA0IGxlZ2FjeS10cnVuaworMjY0NCBjZmJjNGNjZTFhNDI3NzYyOThmNmQ2MDJmNDU3NzkxZDgzOThmNWQ5IGxlZ2FjeS10cnVuaworMjY0NSBkYjgyMGRhM2NlMDNlZDY3MWY2YWNjMjQ5NDIwMjQ1OGMzNmY3NDBjIGxlZ2FjeS10cnVuaworMjY0NiAzYjM4NWJkYTM4Zjg5MTU4YTdmMGUwMmExOTQ5ZTU1ODFhOTQ5OTE1IGxlZ2FjeS10cnVuaworMjY0NyBjN2EyZjU2MTNkNjY0NjkxOTZiYTgwN2QzYjg0MjIxMTJjOTRlNDViIGxlZ2FjeS10cnVuaworMjY0OCA3N2I4MGE5MWQzNTdjMWQ5NWQ4ZTdjZDRjYmJlNzk5ZTVkZWI3NzdlIGxlZ2FjeS10cnVuaworMjY0OSA5MGYzNWZjZjhlYTAxZDcwODI5ZGI1NmViZGFjZDJhZDQzZjcxNDAwIGxlZ2FjeS10cnVuaworMjY1MCBhMGZiYzdiNmE0ODVmOThjOTA3MWQyODc3OTRmMWQyNGYxZTYzZGQ3IGxlZ2FjeS10cnVuaworMjY1MSAwMjNjN2Y2OWQyNDAwMmM4NjM5MzdiODQzZTc3YTQzZTZiNGYwMmQ3IGxlZ2FjeS10cnVuaworMjY1MiBiOTI2NTgwYzljMjg0MTg2MzE4MmEwOGMxNDc5MDgyOWQ4MTNkZDkxIGxlZ2FjeS10cnVuaworMjY1MyA5MmExMGExZTE0NjMwMDdjMDM1ODc3ODkxZDlhYWEyNjA1MjlkMzM3IGxlZ2FjeS10cnVuaworMjY1NCA1NzY2N2FiMWUxOTQxZDAxZWViYzRjNmViZTZkNzdhZTg4Y2UxM2RkIGxlZ2FjeS10cnVuaworMjY1NSA0YzIxMWU4Mjg2YjVjNjI4MmVhNDUyN2Q4NTVjYjJjNjI0NDI0OTliIGxlZ2FjeS10cnVuaworMjY1NiAwYWM5ZDVkYjQxYzhmZjFmZWJiNTEwYmQzNDNhMDUzYjRiMzQ3MTBmIGxlZ2FjeS10cnVuaworMjY1NyAwYWMzOTJiN2Y3NmVhYmVhZDg4NDE3MTdmZWQxMzUwYTUwM2NhYzQ2IGxlZ2FjeS10cnVuaworMjY1OCAyY2U2YTJhMzE4ODYzZGVlM2VkYmFmOTA2MzliYTMyYzY3NWRjNjZiIGxlZ2FjeS10cnVuaworMjY1OSA1NmJiMTA2N2E4ODA2ZWQyYzkxM2RlOTQ2ZDZmNWJkMWI5YTgxODI2IGxlZ2FjeS10cnVuaworMjY2MCA4MGUyZTVkNjdiNDk2NjY1MzA5ZjExNjVlYTE0Yzg3OTRkYWRkN2IzIGxlZ2FjeS10cnVuaworMjY2MSA3ZjNmYWFmZDgzZWQzNzI3NTI5ZDcxZGE4M2MwNDBkOTU2NTU3YzdjIGxlZ2FjeS10cnVuaworMjY2MiBkZGJjZDUzMmMxMTRkZjc1YmY3M2UzMDczZGVhNDE2NTg1NTJhM2MwIGxlZ2FjeS10cnVuaworMjY2MyA2N2Y2ZjcxOTQzYzE2MjI5ZGE3NWEzNjc2NjYzZDYwNjI3NzA2ODZjIGxlZ2FjeS10cnVuaworMjY2NCBlMTRkNDY0NDBlYTcxMzk5ZmZmMTZmN2MwNWQxYWI3OTRmOGFjZTYzIGxlZ2FjeS10cnVuaworMjY2NSBlYjAzOTc3YmFlZWI0Y2YzMjg3YWZjN2EyNzZhOGU5MjU1MmYwNGJlIGxlZ2FjeS10cnVuaworMjY2NiAwOTVkOWNmNGUzZTZlMjRiMTgwYjBjYzRmZmUxYzBjODY5MDg2MmZlIGxlZ2FjeS10cnVuaworMjY2NyA5ZjcxNjFkYjU2NjllOTFiNTY4Mzc0ZmQ2YmQwNDQ1ZmE2NTQ3MWI3IGxlZ2FjeS10cnVuaworMjY2OCBmYmZmMmU3Y2M0OWRmODg3YjQ5ZmQ4M2U0NTUxZjQzNzllOWRkZGEyIGxlZ2FjeS10cnVuaworMjY2OSA3OWVhMTNiN2RmMmMxNjI3NTBhNDI3YTBiNGVjNzNhZTIyNWViN2NlIGxlZ2FjeS10cnVuaworMjY3MCA1YjVmODZlZTRmNzliN2U1NTIxZDZlNjJkNzY4YjgwNzBhMzFhY2I1IGxlZ2FjeS10cnVuaworMjY3MSBjYmNkZmRhMDViYzRlMjJhZjU2ZGZkZjAxZWNhN2Q3YjhmMzZmM2E0IGxlZ2FjeS10cnVuaworMjY3MiA3NjZjYzgyMGY1MTFlMTAxOWFiN2EwOTlhNTRiZWZmN2FmOWYzMjA3IGxlZ2FjeS10cnVuaworMjY3MyA4NDE0ZTFmOWE1ZmU0Y2NiMzczZTI1ZDMxODNhZGViZjkyMDgxY2ExIGxlZ2FjeS10cnVuaworMjY3NCA5ODk2ZGNmMDhlMTZmYWUwOWU2MWI1NDUyMWNmYjJlNDg0NTdiOGZlIGxlZ2FjeS10cnVuaworMjY3NSBiNDZkNzZlYmQ5YTcyZTUwMzJmNDE1NzdiMjg2OGU0YjczZDAwNGMyIGxlZ2FjeS10cnVuaworMjY3NiBmOGQ1M2I2Y2Q0NDJlODAwZTIyOWVkMWZmNDU5MzBkOTczNzAwMTlmIGxlZ2FjeS10cnVuaworMjY3NyA2OWY4OTczOTkzOGY5YTYwOGZkYWU2ODA1NDU0YjQwM2NkMzRmZjhhIGxlZ2FjeS10cnVuaworMjY3OCA0M2MyMjMxNTliMjgyNzY5N2M4MDg5YWRlMWM2OGRmZTA1Y2FmYWY2IGxlZ2FjeS10cnVuaworMjY3OSBkZjAzNDNhYzhhMjFhYjE1OGZhNGIxMzk5NjUzN2VhYzA2MDI5MWRjIGxlZ2FjeS10cnVuaworMjY4MCAwNDhlMTM3MWM0NTA2YzFlM2UyMjYwYjk2MjM1YTU5NWQ4MGYwMDg0IGxlZ2FjeS10cnVuaworMjY4MSAwMmRlN2E4YWUyNjc2MWNmNWM2N2RjZDI5MjFjMGNlMmY2NmQ0YTIyIGxlZ2FjeS10cnVuaworMjY4MiAyZGNkYjAwMjNjMzIwZWU1MmVlNzMzN2M2OTkyMDcwYTU5Zjk1NWJjIGxlZ2FjeS10cnVuaworMjY4MyBiZTg5OGNjMTU4MDA2YTE4NDc4Mzk1MjQzYzM1YWViNTUzYjEwZDU0IGxlZ2FjeS10cnVuaworMjY4NCBkOWI2YjAzNjk4NjBjNDVjNGFlZWNjYzc2Yzg5MDZiMjliMTQyN2I2IGxlZ2FjeS10cnVuaworMjY4NSBiMzgyNWNlODNjODdmMjQyOWRmZjg0NWVjNzQzNWY0YTc2ZTg3ZDBhIGxlZ2FjeS10cnVuaworMjY4NiA3NDJkYzgzODAzOGJmY2FjYWQ3YjAzZmMwYTA2NWRiMzM2MjAyZGU1IGxlZ2FjeS10cnVuaworMjY4NyAyYjBhZDUyYWMzOTY4NmM4OTg0OTllMzBmOTllYTFmYTM1ODI5NjczIGxlZ2FjeS10cnVuaworMjY4OCA0MzU3YWI2OGM3ZDViNmU5YzBkNmExNmI3OGY1YmYzMTBkYTZhOGUxIGxlZ2FjeS10cnVuaworMjY4OSAzZDQ2NzEwOGIwMDgzYzRjNTZiZDVhNDc0N2JhZWE3MDMyMTI1YmU1IGxlZ2FjeS10cnVuaworMjY5MCAxZWZkYjE1MjIxZGRkMWU5NjM1NzBmYjcxZjI4MThiZTBjNGI2ODA5IGxlZ2FjeS10cnVuaworMjY5MSBkYzJlYzQ5YTJhZDI5YjZkOTYzMDEzZGU1MmExYTgzNWUwZmM3MWYzIGxlZ2FjeS10cnVuaworMjY5MiA4MzMxMDc2Y2ZlMTUyZGZjYjlkMTY2OWY5MjlkNDc5MWQ1YjkzNjM4IGxlZ2FjeS10cnVuaworMjY5MyBmZWUzNTA3OGVmNDBhM2Q1YjU0ZmUwOGIzMzQ5OTcyNTMzMGVlZjk4IGxlZ2FjeS10cnVuaworMjY5NCA4YjRhMjc0ZTU0NmRjY2E4Y2E4MGJjMTYxOTEyMTg0NmViNjA5ZWU4IGxlZ2FjeS10cnVuaworMjY5NSA5NmIyMTI4ZjAwYWVkYzI0YTI0NGE2ZWFlMjAxYWVlNDg4NzgyNDEyIGxlZ2FjeS10cnVuaworMjY5NiAyNjk2YjU2ZGRhYzQ5NTJmY2QzODAyZDFlMTgyNDMzZGVmMWE2MzVhIGxlZ2FjeS10cnVuaworMjY5NyAyNTU3MjhhODQxZGVmMWI1ZTkyOGUwZWQ2MWQ2NGNjYTQ4NjE3MzYzIGxlZ2FjeS10cnVuaworMjY5OCA5MDE5ODQ4ODI0YTEwZDZlMWUxOGVhOGJiNjc2ODUxMDgyY2I1OTYzIGxlZ2FjeS10cnVuaworMjY5OSA5ZDAyNDJiOTJjYTVmYjA3N2NlZGNjMDBmMTYxMGFlZGVmOWNjMDI1IGxlZ2FjeS10cnVuaworMjcwMCBlYTUxNDY4NjZiY2YxNzk3NDU0MjdlZDNmYTliOTliYjcwMGRmNmY0IGxlZ2FjeS10cnVuaworMjcwMSA0OGVhZjRmYzUzY2IwZDgwMTMyNjIxYTM4NjE1YzYxYWVhZjBlZWUxIGxlZ2FjeS10cnVuaworMjcwMiA1ZjU5MGFiNDUyOTU3NzZiM2M4NDdlYjI3NjRiZTQ3NjE5ZmQ2OTQ1IGxlZ2FjeS10cnVuaworMjcwMyBiNTg2MTg5Y2MxZjVlNjk5ZGIzNzdkNDBhNTBjNGQyZDc2OTQ0NTE0IGxlZ2FjeS10cnVuaworMjcwNCBkNWUxYzQ5OWYwMTM3ZGYyNDkxNzMxN2YxZWI2MTg4YzAzZGE3MzE4IGxlZ2FjeS10cnVuaworMjcwNSBkMGJhYTgzMDAwMDU2MjQyZWYyMjVkOGIxMDRmMTZhNjI2MjEyYWI1IGxlZ2FjeS10cnVuaworMjcwNiA5ZjA2YzY2ODlmMGQxMGE0MzcyNWE0NWI1NTAzMWM5NmFiYWFlYmM0IGxlZ2FjeS10cnVuaworMjcwNyA5MzdjYmMwYmU2ZWNlZGI1YzBiOTI3YmE1MDM4NGIwMGM5NWU1YTg0IGxlZ2FjeS10cnVuaworMjcwOCBlMTk4Y2M5OGE0ZmQwZTdlMmYzMzlhNDJlNzQ3ZWQyMDJkYzg3MWQ2IGxlZ2FjeS10cnVuaworMjcwOSA4MzA0NjY2NDE2MGU5OTA5MmQzMzI2NWQ4MWI2Yjg2MzhiZWJkNGEzIGxlZ2FjeS10cnVuaworMjcxMCA0ZWZmZjZjZWE5MGY2OTlkN2Y2NTEwYTI5ODhlMGI2YjA1ZWRkNjE5IGxlZ2FjeS10cnVuaworMjcxMSA3NjZjZWM1MGQ3NjZkM2Y3YjU1ZDUyNmZiZDI4MmVmZmU2ZDRlMjJiIGxlZ2FjeS10cnVuaworMjcxMiA1YTYxZjgyN2Y0N2MzYTM5YjRhZWFjNTM5MDE2MzkzMWFhOGQ0Zjg2IGxlZ2FjeS10cnVuaworMjcxMyBjMTU4YzgzNDc2NTQ2NWI3MzczNWMzNzRlYTI0ZWE0NmIzMWI0OTJmIGxlZ2FjeS10cnVuaworMjcxNCAyNjQzMDZiNjFiODNmZWZjZjAzNGNkNDExZWE3MzZkYmFkMTBlMDY5IGxlZ2FjeS10cnVuaworMjcxNSAyZTI4N2ExNTAzYjI1MjY0NmY0ZDgwY2Y5YjZjNzNjZDVkNmU5MDI0IGxlZ2FjeS10cnVuaworMjcxNiAwNzgwYjk1YTY2MGVjODIwOThmM2E4NTRlMjYyYmFjYThhYjU5MWU2IGxlZ2FjeS10cnVuaworMjcxNyBhZGZhMDgyZjUyMGE2MTY2ZjZkMzVmNzMwMWM1NzAxODgxNGE3NjAyIGxlZ2FjeS10cnVuaworMjcxOCAxZWY2M2FkZjRmYzViYTY4NTY0NzQzMTJlMzJlMGMxYzBlYWU2MmJhIGxlZ2FjeS10cnVuaworMjcxOSBjZmI1MzMyMmM5ZDExNDMyZGE1MmUzZmYxOTYxOTY1ZGI4NGJkNDNiIGxlZ2FjeS10cnVuaworMjcyMCA2ODNlZGIwYzQ0NjM0OTI5ODM5ZjYzYTVjZGMzODg3YjM1YjU5MDlhIGxlZ2FjeS10cnVuaworMjcyMSAwNjE0ZDg4N2QxMGFiZDAyYmUxNGQ4OTE1OWQ5YTRkM2UyOTc5NmJmIGxlZ2FjeS10cnVuaworMjcyMiA0NDM0MzkzYjRlZGU2NTY2ODY1OGI0NmE2YjVlNWUyMzRmODFmMzI0IGxlZ2FjeS10cnVuaworMjcyMyAxNzA2OGE2YTBhYTUxN2I2ZDAzYWVlNzk3NTY0YWU4YTU1NTBhZWUxIGxlZ2FjeS10cnVuaworMjcyNCA3M2UyNjZiZjdhYzZiMDNiOTcyYjNiMzA2YzY3Y2NmZmFlNDBmNWYzIGxlZ2FjeS10cnVuaworMjcyNSBmOWMwN2VlNzkzMDIyZjY1YzJiY2JjYjU3YzcyMTFkMzJhNjIwOGU1IGxlZ2FjeS10cnVuaworMjcyNiA1ZmFmOTNlYjkyNTZlMzM2MzQzY2EyZDJmNjliMjRlNDI1OGZkNGIyIGxlZ2FjeS10cnVuaworMjcyNyA1YTFmOWFkZTE1MTI0MzIwYTAzNDkyMGIzYzUxMTA3YWFjYTE4MTlkIGxlZ2FjeS10cnVuaworMjcyOCA4YzE3OWQwMjM1ODNjZDg2MWQ3MTFmZjMxMzY5NGYxZDFmNTc2OWI3IGxlZ2FjeS10cnVuaworMjcyOSA5MjUwOWQzMDRlNDc5YzYwYTdhYjQzNTVlZGY4ZWRlYTVjN2Q4YWRiIGxlZ2FjeS10cnVuaworMjczMCA2YzM2YzI3M2Q1N2Q0ZDllMDIyMWJkY2RiZWQyMjgzMjU0NWUwZmQwIGxlZ2FjeS10cnVuaworMjczMSAzNGE3NjEwNDZkYmQ2OWY2OWRkMzc1MWY1OWQxODFlYjExMDI2YTFjIGxlZ2FjeS10cnVuaworMjczMiBhNWMyNDU5MjNiMzEwZDU2OGEwYWZlZmEwZTRmNjZjMzExMjk1M2ZlIGxlZ2FjeS10cnVuaworMjczMyAwODZiZGJiNjk3M2JmMzViNWM0ZWY5ODNlMGFhZTA5NGQ4YzQ0YmE2IGxlZ2FjeS10cnVuaworMjczNCA0Y2I1NTM1NjcwNmYzYmZiM2UxNGVlNWZmMjI4Mjk1YTc2ZGZlNTYyIGxlZ2FjeS10cnVuaworMjczNSAwM2I5ZjE1MmFkYjY5NTMyNWM1OTMxMTFhMTE4MzM2NzgzYzdmMTg5IGxlZ2FjeS10cnVuaworMjczNiBkZWFlODBlMDdhODFjOThlMjViMmMxM2YyYzJhZmI2ODU2NWU4MTRmIGxlZ2FjeS10cnVuaworMjczNyAzYjhmNDFmOTZlYjRjOTUzMzM2NzQxMGFjZjMyY2Q0MGYwMjY5ZTFhIGxlZ2FjeS10cnVuaworMjczOCAyZGE5MzRlZjI3YzAzODEzYWJkMWFmZTA4MjkxY2Q4N2QxNGRhZjdhIGxlZ2FjeS10cnVuaworMjczOSAxMmVjZWE2ZTk1NWMxMmIxMzNmOTRlMzZmNDBhMjQyNTgzNWEwMGM0IGxlZ2FjeS10cnVuaworMjc0MCA2ODg0MzQ2YzA0YTA0OGIzMGYzYzUzMzY1YmNiN2M0ZDhhYzE3MzJmIGxlZ2FjeS10cnVuaworMjc0MSAzMTY5ZDM4ZjY3NzQyYjk4MTYwNjJjOWFkOTRiNjk1OWQ4YzhjZWViIGxlZ2FjeS10cnVuaworMjc0MiBiYWUxNDk0ZjJlYzgxMDIzMGNiNTc0NTJiMDYwMzQ4Y2JlZjQyMWE3IGxlZ2FjeS10cnVuaworMjc0MyA1ZjcxZjE2NjA3OWQ0MDFkZmNjZjViNGNiNTEzNzc2MjY2YjY4MmZjIGxlZ2FjeS10cnVuaworMjc0NCBjNzJmMjZhYzQ5MWJhOGQ4MjI4ZWI4ZjZmNTdiODE2ZDM1ZjdmMTllIGxlZ2FjeS10cnVuaworMjc0NSAzN2FhNjdmMDg2N2MxMGY0NjM3YzdlMDBmNDRjZWIzNGYyYWFhNGNjIGxlZ2FjeS10cnVuaworMjc0NiAzNzkwNWZlMTg5MmEyN2RkOGI3YzQzNWY0NDQ0NDdmNDNhMDJjNDM1IGxlZ2FjeS10cnVuaworMjc0NyBkYmY0MDg5MTgyMDE2MWViNWU0N2QwNWJkZTliZmY2MzZiZDA5NDBmIGxlZ2FjeS10cnVuaworMjc0OCBkMTU0N2Q2YmI1YjVjZjYxMWY4Zjc3MzI1ZTI5NDBjMjIyY2RiZGEwIGxlZ2FjeS10cnVuaworMjc0OSA3ZDI0ZGU2NDNmYjUwY2FhYjNkMjQwNTk5NTJlYWMyYjc2MzZlMWY1IGxlZ2FjeS10cnVuaworMjc1MCA2MDc3NzA0ZGFiN2EzZjc5YjcxNjRlNGQxODEyYjY1NGNkZGEzMWE4IGxlZ2FjeS10cnVuaworMjc1MSBmMTFmYWU4ZWUxZTQyOWQ4MzZiZjI3OTQ0MzdiYWMzMjFjNTExZTBhIGxlZ2FjeS10cnVuaworMjc1MiA5Mjc2YjNlZTM5MzY3YzYxZDIxYmQxNDJjZDk3YmRkMmZkYmI3M2Y5IGxlZ2FjeS10cnVuaworMjc1MyA5NTcyYTdkMDlkZmY0NjJlYmVhZDQ5YzEwNDIzMWEzYTRlZWMzMmQyIGxlZ2FjeS10cnVuaworMjc1NCAwODY4MTc2MzY1ZDdmYWMxOGQ5ZTZlNDQ3NzhiMzk0OGU3MDQ3NWQxIGxlZ2FjeS10cnVuaworMjc1NSA0N2M0MmVhNjdhOGJkODUzMTQ0ZDk5ZDBiYThjZTc2MWM1NjNlNjczIGxlZ2FjeS10cnVuaworMjc1NiBmOWNkZWViZmNiNjcwYzMwNjg4NTU4NzlmNDk3MDk4MjlkOWQ4NDcyIGxlZ2FjeS10cnVuaworMjc1NyBlMThmMWZhMzk4YTMwYjNlMjVjYWZlM2M2ODc5MDgwZTJiMWQ3ZjVhIGxlZ2FjeS10cnVuaworMjc1OCA4MDBjZjQwODZmYjMzZDgwY2IzYjY3NzE0OWJmMTViNmYwMzIyZTU5IGxlZ2FjeS10cnVuaworMjc1OSBiMjA0ZjMxZmJjOTdlNjBkZDE3NDM3YjI0ODBkOWU2OGVlMmE5NTE3IGxlZ2FjeS10cnVuaworMjc2MCBhMzQ3OTMzYTZkOTIyZjYwNWY1MDJlOGNkMmFmMjhlYjNmZDk1ZGUzIGxlZ2FjeS10cnVuaworMjc2MSBkNDliNmE2NzI1YmQ4N2Y1MjE5YTczZDFmMDcxNTUzNDFjNDRlN2EzIGxlZ2FjeS10cnVuaworMjc2MiA4Y2RkNjJiYjUxNWNiYWEwYzE3OGY3NjE4YTYyYzk2YWY2ZGVhYjgzIGxlZ2FjeS10cnVuaworMjc2MyA1YTM1MTk1Mzk4ZWY1M2ZiZGQ1N2Q2ZDZiYzg4NDFkOGQyZTQ2MDA5IGxlZ2FjeS10cnVuaworMjc2NCAzNGQ2N2RhODhlODRiODRiNmQ4ZWQ3NzM3MjIxMjE5ZGZiYjJkNGIwIGxlZ2FjeS10cnVuaworMjc2NSA4YTI0ZWY0NGRmYjBhOGI0MmI2NTE0NThmNTVlZDc1MDc5MGY2MWRkIGxlZ2FjeS10cnVuaworMjc2NiA2YjM2MDQxNTljYTliMTE4YzY3MTAyZTY1Mjg0YWQ1MTU0NjY0ZWM5IGxlZ2FjeS10cnVuaworMjc2NyBjNzYzZmM2NGZjYWJiZTI1Y2I0ZjMyYjA0Y2M1N2FmMDdiZDcwZWE0IGxlZ2FjeS10cnVuaworMjc2OCAwMjE0YmJmNDdiZjZkZWU0NmVkMTUzMDA3MGU0MzE5Mzg2MjMyYWVjIGxlZ2FjeS10cnVuaworMjc2OSA5Mjc2YzI2MjVkNjRjYmZkMjQyYTNiZjQ1YzFiZWVmYzIzMGJmZjE2IGxlZ2FjeS10cnVuaworMjc3MCAwYWQ1YjM1ZTNhZDg5Zjg2MzU3NjA0Njk2ZmJhZmFhM2E3MzVlNDJhIGxlZ2FjeS10cnVuaworMjc3MSBkY2M2ZGUxYzM3YTRmNTM1MjZlMDYyNTQ0Mjg1NzZhN2I5OGY0ZTI4IGxlZ2FjeS10cnVuaworMjc3MiBlMjVlMjY1NmM4NTM3YjExNWYzODI2MTQxNjg5NmU0NGE2ZmU2Mjc1IGxlZ2FjeS10cnVuaworMjc3MyBmODI1OGY4NDEwNDZlOGQ2NDkyMDI1YzM0YmZhNTI3OTMzOWYyZjYzIGxlZ2FjeS10cnVuaworMjc3NCA0MDVhMmZlYzc0NTQxZGU3MDMzYzRjMzFkYjQ2Mzg0N2Y5ZTBiNzNkIGxlZ2FjeS10cnVuaworMjc3NSAxMWU4NjI3MGVkMGRjZmU3YjQ3Y2EzZTlhNGIzODQzOWEwYmYzNGE1IGxlZ2FjeS10cnVuaworMjc3NiA0MGEwZWM5OTRjNTQ5ZWNjODkzYjNiNzJlODE1MTI0NWIyYjAzYzA2IGxlZ2FjeS10cnVuaworMjc3NyA4ZDU3MjU0OTRlZGU3MzE2MGIwNzVmMjUwMGZkNDdhMzE3YTJjMjk4IGxlZ2FjeS10cnVuaworMjc3OCA3NTViYjhlZmNjMmQ1MzM0OWM4ZTA5ZmFjMzcwMGUxN2I3YjVmMTFhIGxlZ2FjeS10cnVuaworMjc3OSAxODllZTNiZWViYjVlNmY2YTUxYzQ2YWFjNzk0MWYwODdhZjNkMzc5IGxlZ2FjeS10cnVuaworMjc4MCBhYzdkNjQ0NTNhYTlmMTVlYTk4ODg4YTUxYjhjZTM1YzFkZjdlZmU0IGxlZ2FjeS10cnVuaworMjc4MSBkMWY2ZWM3ODhhY2Y3YjVmYzQ3MTVhMDA3NmFhM2IzOWI2ODE3M2Y5IGxlZ2FjeS10cnVuaworMjc4MiBjZGVjM2U4ODA1M2IzZGY1NWY3NzUxMjk4NDI3NWQzMjZhY2IyNjJiIGxlZ2FjeS10cnVuaworMjc4MyBhMGQ0YzVlZjFkNWQ3ODk1ZmRjNWJkZjc0NjRlZDQzM2QyNDBlZjFkIGxlZ2FjeS10cnVuaworMjc4NCA5YmU2NThkMTkzYTk4OWY5MjMxMzAyNWNjY2ViN2QzNTZjM2Y5ZDVlIGxlZ2FjeS10cnVuaworMjc4NSAwZTQzNjIwMGJmMTI4ODRjZTFkZDU1YjQ4NDQ1NTQ1NWIxMGMxZGYzIGxlZ2FjeS10cnVuaworMjc4NiA3ZmI1ZGVmYzhmNmZhYWE1OTVlYzFiN2I4NGQ2YTkzNTFlMWI1YTY3IGxlZ2FjeS10cnVuaworMjc4NyAyMTJhZDE1OGE4MDYyZTJmNTM4ZGEzZDAyNTRiODExNDA3ZTcwY2ZmIGxlZ2FjeS10cnVuaworMjc4OCAxZDY1ZjI4YzBhYTk3Y2I4NTM5OTU2NzgwNjczMDQ3ZWU4MDM4MDU0IGxlZ2FjeS10cnVuaworMjc4OSBkNDIwYWY5YzFiNzU3YTJmODI2MDUyYWJmMTRlZDU2YmI0NjZlNzNkIGxlZ2FjeS10cnVuaworMjc5MCA0MmE2YjhlMTM5MWEwNzg1YmViYWI2NGYyZjgxY2NkMGMwOGExNTEwIGxlZ2FjeS10cnVuaworMjc5MSAwNGVkNDc2NWIxN2NlNTMwZGYxNGRkOTRlYzk0NWQ2ZGVlZDAzMzQzIGxlZ2FjeS10cnVuaworMjc5MiBmNWEyYmMzOWUxMGUyYTRkNGQ4ODczNzNiMWRlOTc0OGE1N2E0ZGRlIGxlZ2FjeS10cnVuaworMjc5MyAwYzE5MzhmMmUwYzAyZjg0YjVhZDYyYTFjZDU1Mzk1MzRiOTBjZDEyIGxlZ2FjeS10cnVuaworMjc5NCAxZjZjNTkzZWRhNjg3YjI5ZDUyMDMxZDdmZTE3Mzk2MTI1Zjc0MTBiIGxlZ2FjeS10cnVuaworMjc5NSA4ODU5OTZhMWE2MzE4ODBlZjYyOGJhY2FkY2RlMGJiOWY4M2UxOTA0IGxlZ2FjeS10cnVuaworMjc5NiA3ODRhMDlhNTIzNzVjNGU1NTJlOGUzZjgzZWRjOTczZGM3NjU5MmZmIGxlZ2FjeS10cnVuaworMjc5NyBkNWJiOGZlNDNkZjJmM2JmYjMzZTc5OGRjYmY4OTU4OGRjYjQyOWNmIGxlZ2FjeS10cnVuaworMjc5OCAzY2I2ODZjNDhjZGRkZjgxYmU0MzQyYmJkZmFjZTcxNGVmZDY4Zjg0IGxlZ2FjeS10cnVuaworMjc5OSA5ZDAxZTk4ZWQ4NDkzZTA3NjZiNWU1ZmYxMjU5ODA0ZjcxODliZDU0IGxlZ2FjeS10cnVuaworMjgwMCAyZjk1YTAxZDZjMWYzYzY0NTZkZmQyYWQ0Nzg3M2ZjNjA0ZjhhNmFjIGxlZ2FjeS10cnVuaworMjgwMSAwYjM4MDAwZmM4MjNkZjc4MGY3ZGQ4NmQzY2Y2MTIyMjgyOTk3ZmRiIGxlZ2FjeS10cnVuaworMjgwMiBiMTYyYjI3NDAwYmM1MDJkZDBlY2M3NDNkYWEwZmU1Mzg2ODQ5ZmU2IGxlZ2FjeS10cnVuaworMjgwMyAwZWZiOGRkZjZjMGVkNzhiY2EwM2YzNTY1YWMyYjFkNDI4ZTY1MmNjIGxlZ2FjeS10cnVuaworMjgwNCAwMmQzZjE2MWI3ZjU1NzAyYWRmYTQ5NWEwMDFjZDFhNzNiZjU2YjFkIGxlZ2FjeS10cnVuaworMjgwNSA1OWY5MzI1YmI4ZWNjM2U1ZGI0MGIwZDY1MDNjYzc5MTc0NjM4YTBiIGxlZ2FjeS10cnVuaworMjgwNiBjMGU3YjBiOWI3NTA3ZDQzMmYxZTA1ZjVhZDFlN2E4NzVhMmU0ZDVkIGxlZ2FjeS10cnVuaworMjgwNyBjODMyYTJiMGQ0MzMwYmQ4MzE1MjFmZmRmYWNhYTgzZjg3OTRlMzRiIGxlZ2FjeS10cnVuaworMjgwOCA4YmJhMTRmN2RiOGExZGNmZTk3MzA4YjJjYzUwMzA0MzMwZWY4OWNmIGxlZ2FjeS10cnVuaworMjgwOSBmNmNjN2FhMzFkZTY5ZTlhN2M2MjFhYmFlYTdlYzA1ZWYwNmNhNjE1IGxlZ2FjeS10cnVuaworMjgxMCBkYTViMTQzMzQ2N2MxY2E1ZjU5NGVkMjc5Y2Y5MmQ2MTI1OTQ1Y2U0IGxlZ2FjeS10cnVuaworMjgxMSA0ODlmZWNjMWRhMjg2YWFjMmY3ODNhYjMzNTRhNTg2ODZmZjY2NjJjIGxlZ2FjeS10cnVuaworMjgxMiA3M2ZlN2ExYTVkZDQyZTM2NjI0YjExMzVmNzZiODJiOGUwYjA3OWViIGxlZ2FjeS10cnVuaworMjgxMyAwNDU3YzQ0MWIwODYwNzc5YTcxOWUwNWVhNTI5NTY4YTc0MjlmZGI4IGxlZ2FjeS10cnVuaworMjgxNCA3NDk0MmVjNzA0MzBhZThmYjU0ZmQ0ZmExYWU3Mjk1NDBjODMwYTIxIGxlZ2FjeS10cnVuaworMjgxNSAyZTBkNjg4MjAxM2VmZmRlNjQyMmRkYWVlMDJkNzQ5ZThlZTNkOGFlIGxlZ2FjeS10cnVuaworMjgxNiBlNzI5M2I1YjU3MGQ5ZDYxOTFiMTBhZTQ4MGVmOWE0Mjc1NGZlYWM1IGxlZ2FjeS10cnVuaworMjgxNyBmNmY5ODJjYjU0MDEzMjJiNGM2ODY4MWNjYTA1Y2Q1OGE0Yzk4OTUxIGxlZ2FjeS10cnVuaworMjgxOCAzZTYyNmM0MTNiYmY0ODhmYzI4OGZmYWMxNmYwOTFlZWE5ZTc0Yjk4IGxlZ2FjeS10cnVuaworMjgxOSA1YjUyMWZlNGQxZjY0OTZiMGQzMmYwYzFlMDM4OTM3Zjc0YmQ1ZDQ2IGxlZ2FjeS10cnVuaworMjgyMCA2ZDE1OTliZTJiNTRlMGU0MDA2MmFlYjA4Y2UzMWVmNzNhNjU0YTBlIGxlZ2FjeS10cnVuaworMjgyMSBkMzc3MGIxZGE2MTE1Mjk1N2I0ZWMyNjZjMTNkMjhkNjMzMWIzNmU4IGxlZ2FjeS10cnVuaworMjgyMiA3ZTVmNGQ5YWVlNzdiYzZkYmFmYWZiOWE5OTNiYTJjMThjMjQzNGJmIGxlZ2FjeS10cnVuaworMjgyMyBhYWZmNjUwZDdlMTM2NjBhYjFmZDZiZDM0YjNjYzAyOGU3ZDM0OGI1IGxlZ2FjeS10cnVuaworMjgyNCA1ZWQ2YWRiYjk1ZjM1OTAzMmRkYWQ2M2Y1MThkYjM4ZDZkNjIyNDcyIGxlZ2FjeS10cnVuaworMjgyNSBlM2I2M2E5OTE0Zjg3MDI5YzM0NjM5Y2Q4ZDJhYWJiY2M5MjY1MzU5IGxlZ2FjeS10cnVuaworMjgyNiAxODkwNzgxMzYzNTE1NzFhZmEyZDQ4NmZkOWQyOGJlNGQyMTAzZjczIGxlZ2FjeS10cnVuaworMjgyNyAyODM5MDM3NWEyYjlhZTY2NTAxN2YyMGY4NjQ2YWFlZTZiM2VhZTgzIGxlZ2FjeS10cnVuaworMjgyOCAxNjRiNTZmYTY1NThlYWFhMmYyMTZlZTNjNDI0YTc5ZWQxOWUyZWFhIGxlZ2FjeS10cnVuaworMjgyOSAxMDQ5ODY3ZGNhMWY5NDgzY2E3NTg4OTVlZjQ5MzhhYWU4MjdiMGQ0IGxlZ2FjeS10cnVuaworMjgzMCBjMmJhODg3ZDk0OTJiMWIzYzQ1YTJlMzg2OTc2OTMyYzc4YjI4ZDI2IGxlZ2FjeS10cnVuaworMjgzMSAyY2RkYmJlYTliZmIzMjNjNTcyNDhkZGEyZDVhY2IxOTdmNGEyZjcyIGxlZ2FjeS10cnVuaworMjgzMiAxMDAwMmUxYmM1MjY0MmQ4OGUzMGZkMWU0NDI0NTBmZDAyNzI4ZWFjIGxlZ2FjeS10cnVuaworMjgzMyBmZmRkZTdmYzcxYzFlY2I4MmQ0ZTRiZTYxNTUxNzZkN2RjOTA5NzU5IGxlZ2FjeS10cnVuaworMjgzNCA3MWQ0OTYyNTlhZDM0OGU2ZGUxYzM3M2JmNDU4MDlmYzA1ZTEwMzE0IGxlZ2FjeS10cnVuaworMjgzNSA0ZTJkMjM5ZGM2NGM4ZjEyYWVlOWYyODhlMWM3ZjFlM2E0YmU2ZWVkIGxlZ2FjeS10cnVuaworMjgzNiA1YWZmOWY4ZmQyOTk1ZWZiMmMwZTVmMWI1Mzc1MmU4N2RhZjYyNmM2IGxlZ2FjeS10cnVuaworMjgzNyBlMzRlYmNiYmRjYTZmZmE0YjliMDg0MWMyNTY2MjQ0ZWRlYTQwYWNmIGxlZ2FjeS10cnVuaworMjgzOCA2NDQxYWE2YTQxMjY0OTg0ZmE3ZGIxNDRmNzA0OWM0ZmIxNzQzYzViIGxlZ2FjeS10cnVuaworMjgzOSAyMDViOTQ3YjFkM2MyNmM3NjA0NzU2YzgwOTEzN2I1MTE1MGUyMjYyIGxlZ2FjeS10cnVuaworMjg0MCA2YTYwMzQyYzMxMDc0ODM2YTQ1ZGNjYzgyNDFjZTc1OTk1MDUwNDJlIGxlZ2FjeS10cnVuaworMjg0MSAxMDJkZTMxOTk5OGUxN2UwZDFlYTkxZWZlNTc5NDBmMTUxMmNiZTQzIGxlZ2FjeS10cnVuaworMjg0MiAxMzg2YTcyYWU2MDQ3ZDk3NjA1MjFmMDJkYjk0Nzk3MjVhMjczYzY3IGxlZ2FjeS10cnVuaworMjg0MyA3NTQ0ZWJhYzU2OTg3ODE2ZGJlNjFiNmM0ZTUyN2JiNTM0MGM1Mzg2IGxlZ2FjeS10cnVuaworMjg0NCAzYjA5YjQwY2VmMWQwOWZhYzE2NWY1NTU1YmQ1YzhkZDU1ZGE2NWU5IGxlZ2FjeS10cnVuaworMjg0NSA5MTI2ZjRjYjFjY2E0NzA1YzdjZGUyZWY1NDRkMmI2NWNhNzE0YmYwIGxlZ2FjeS10cnVuaworMjg0NiBjYTI4YTNhODJiYmE4NDgxZTI0ODc4ZTcxNDEzYmEzN2UwYTQ1NDdmIGxlZ2FjeS10cnVuaworMjg0NyBkMjQ0ZWUwM2M1NzZlNzI0ZmE1ZTdkMDQ5YWMzYTI1M2E1NGM0NGFiIGxlZ2FjeS10cnVuaworMjg0OCBlMTViZWE5NzFhNWJkNTM3OWU4YmI1MzMwNjBiMWY1ODY1ZWEzYjlhIGxlZ2FjeS10cnVuaworMjg0OSA1YjcxODYzYzgwMWQyOTZmNTIzMjI0NzVjMTY2NGU4Y2FjMzZjNDIyIGxlZ2FjeS10cnVuaworMjg1MCA5MGVhNTA3ODYwOTUwYTMzZGQ4NmJiMjYzMmM4NTMzMzViMTIxMTEwIGxlZ2FjeS10cnVuaworMjg1MSA4OTFmOTgzNTdjMDQzNTVhZDJiMmQ0ZTlmZGMzNjEyNDlmMzJmZjUxIGxlZ2FjeS10cnVuaworMjg1MiBkNmZhNjRjZWM0MTBlNjBjMGE4NjYyNzM2MDQwY2EwOTYwYzBlNjdkIGxlZ2FjeS10cnVuaworMjg1MyAyZGJkN2U4NDRiZDA4MjdhNGRiMjAyOGIxMDg5YTJmOWRjNGFiZjdkIGxlZ2FjeS10cnVuaworMjg1NCBiNDliYWFkOWI2NDA2Yzc3NzQ5ZDQxNzg5NjRlZGFiOTQwNTVhNTUwIGxlZ2FjeS10cnVuaworMjg1NSA1YzE4ZDZjNTc4Mjc0MmYyOWZiMTdhNGFjN2Y2NTM2NjhmZDAyOThiIGxlZ2FjeS10cnVuaworMjg1NiA4N2FiOWM4MWU5MjdlZGQ2NmQ4YjhjOTJlYTFhY2M4YzQyYzIxNzQ0IGxlZ2FjeS10cnVuaworMjg1NyBmMzdmOGJjOTE5MGM1NmEwZjVjNDIxOWJhNTRhNGM4NTcxMDIxOGVkIGxlZ2FjeS10cnVuaworMjg1OCA3YzA2YmYxNWZkMmFiZGUxMDk0MTFkOGNhMzE4M2E1ZWM5MmM5MzJiIGxlZ2FjeS10cnVuaworMjg1OSA4YTYwNjQ5ZTc5ODdlNTFhNzU2OGYxZDlmMjI0NTYwZDdmMGRiODk2IGxlZ2FjeS10cnVuaworMjg2MCA4MmMxMjU5YTRlZjMzMDJhMDczMTIzNmJiOWYxNTJhMTE5MTdjZGNhIGxlZ2FjeS10cnVuaworMjg2MSAxNDExOWIxOTQ4ZmI0MTNiNWQ2Mjg3MzNkNWNkNGIwNDgwN2NhYzEwIGxlZ2FjeS10cnVuaworMjg2MiAwOWNlMDRlZjcyM2JlNzFkZTVlZmIxODRmYjAzODZkNWU4OTE2YjkwIGxlZ2FjeS10cnVuaworMjg2MyBmNTNkY2I5YTA0ZDYzODI1MTdmYTAzNDRlY2IzOTYzNGUwOGE3NTBkIGxlZ2FjeS10cnVuaworMjg2NCA4ZmZhZTBiNDZmZDQ5MjdiOGYxNjlkNmE3N2Y1Y2Q2YjAxYjYxY2EzIGxlZ2FjeS10cnVuaworMjg2NSBhODAyMmIyYTc3ZTYwOTZhMWI1ODVhZTFkZjRhNDI2M2VjYWFjMjZkIGxlZ2FjeS10cnVuaworMjg2NiAxZThlM2FiNjdiNDU4NWU0ODVlMjNmYWQ1ZTM2YmEyMGZhZTBjYWIxIGxlZ2FjeS10cnVuaworMjg2NyA3NTgyZWQxMzY4NGU0OTc4MDY3M2IzYzBjMTE0MjMzNDdiN2IxMjIzIGxlZ2FjeS10cnVuaworMjg2OCBiZmRkNmU2MjZkZDM3MGFlNDJmMmVjOTdjMmFmMzhiOTFhN2Y2YWJjIGxlZ2FjeS10cnVuaworMjg2OSA4YmNiNTBmNDM2ZmFkZWU2ODgxYTJiZTVlNDJhMmVlNjQwY2M1ZmYyIGxlZ2FjeS10cnVuaworMjg3MCA3MjM2ZTAyYzQ1NjMxMjY3NGVmYTdjNzZhYzA5Zjc3Y2IwNzQ5Yzc0IGxlZ2FjeS10cnVuaworMjg3MSBiYzVjNzdmYTgwMDY4N2NmZTc0MGZmYzkxNDcxMGI2NDU5ZmRmMzBiIGxlZ2FjeS10cnVuaworMjg3MiAzZDljMjMxMGFmZTg1YmM3NTBhZTU2YWQ0NWIyZTVlYzFhNWNjNWRhIGxlZ2FjeS10cnVuaworMjg3MyAwMGNkYjhkZWRkNmYyYTU0NjAwNWVkZWNlZmY4ZjUyZmU4NmMyMTA1IGxlZ2FjeS10cnVuaworMjg3NCA4NjI0NTdlMDIzN2NhNThmNTg4MzU3MWRiNzUxNmQzNDBlMDkxOTBmIGxlZ2FjeS10cnVuaworMjg3NSAyNDAzZmI2ZWFlYzYyMWMzNThlMmE1Y2U1NTAyNGZiNDc2NzYzMDk0IGxlZ2FjeS10cnVuaworMjg3NiA5M2UyMTVkYzFkNmVmMWUyYzdlMjE2YmEyZTA3ZGI2MzFjODk2NTI2IGxlZ2FjeS10cnVuaworMjg3NyA0ZDY0YWJiZGY3MGE5NjkxMjYxNmUzYTRiNzM0YTg2YTJlNzA3MDk4IGxlZ2FjeS10cnVuaworMjg3OCA5ZTkxNDVhYmM0MmFjNDU0ZTU4OGU3NGIwMzY4Yjg2MDllMTY3NzM2IGxlZ2FjeS10cnVuaworMjg3OSA0ZDJhMTk5ZTEyMDJhNmI3Mzc4OGUwOWE1YWNkMWIxZWJlMDY1NTg2IGxlZ2FjeS10cnVuaworMjg4MCBjY2UwNWE0NzZlMDQxMmVlMGMzMjI4ZjU2YWFhNjRkNDA1OWJlM2E5IGxlZ2FjeS10cnVuaworMjg4MSBmNzI3OGEwNjdmYjQzMDM2NWIwMTIzMjE3ZTJiNTZkYjZiZjM1ZWQxIGxlZ2FjeS10cnVuaworMjg4MiBkOGIxN2ZhYjNhOTgzZjEyN2U3NjdiOTAxNmQwOGM4ZGU0ZmEyODAwIGxlZ2FjeS10cnVuaworMjg4MyA1N2U5NGViYTI0ODQ4Y2I4MDU3YzEwZWM3YjVmN2VhZGM5YzIzOTk0IGxlZ2FjeS10cnVuaworMjg4NCBlNzU3MWExOGJkZWYxZDAyMTQ1NWVkMWQyZGRjOTQ5YWNhNTIzYWY1IGxlZ2FjeS10cnVuaworMjg4NSA0NzZiYjdlNWI4NTQ3NTY5YjE4ZTdkMWIwMDhkMDk4OGIzMmZkNTVmIGxlZ2FjeS10cnVuaworMjg4NiA3NmU0ODcwMTIwNGJmMjM3Yzk5MTk1OWE3NmY0ZTI1Njg2MGIxZWNkIGxlZ2FjeS10cnVuaworMjg4NyBlOGM2ZmE5MTE4ZWJlOWVmZjZiOTg2Njg2MzE0NTk1OWI4YWE5ZGEzIGxlZ2FjeS10cnVuaworMjg4OCA5YTc1NDQ4NmVmMGI1MTIxYjI2YTI1ODQ0ZGZmNDczY2Y3MDAwNDljIGxlZ2FjeS10cnVuaworMjg4OSA3NmQ5MmViYjRkODJhNzVjNTA2M2RkZjU4YzYwMGE1MjFkMGZjZGY5IGxlZ2FjeS10cnVuaworMjg5MCA4MmRkMDgxZjM4MGQ1NGE3NDk0OGViMThjOTBjMTViZTIwNTRkZDQyIGxlZ2FjeS10cnVuaworMjg5MSBjODE5NTJkOTdlYmU4YWQ4NzY3MmNlY2JiMzk1OWRkY2E3ZmFlNmE4IGxlZ2FjeS10cnVuaworMjg5MiBjNjVmYzE3MmYxNmRiYmE2ZmRlYTljZDliMWJiOGRkYzNjNWZlNWMzIGxlZ2FjeS10cnVuaworMjg5MyAwMzM4YzdjOWYwOGM5OWFiZWU5YzhiYjI3NGRiMzkyZjJiOGUyMWJhIGxlZ2FjeS10cnVuaworMjg5NCBmMTc5ZDhkNWVlOGM4NTNkY2NmOTZjOWQwNjEwOTQ3MjY1MzczMGJjIGxlZ2FjeS10cnVuaworMjg5NSBjZjVjYWJmYjNmNzFmNmI3NzliMTRjYTg3Njg2ZmNkMGM5MDdhYmNjIGxlZ2FjeS10cnVuaworMjg5NiAxZTIwNWQwODc1ZjYyZGY1OTJhNTMzOWQyMjJkYTAxMTk5NGM5MjhmIGxlZ2FjeS10cnVuaworMjg5NyBlYTBiYWQ5ZmRmNjczNGU5MDk0M2M5NTI0NjIxNTdmOWE3MTMyNGZmIGxlZ2FjeS10cnVuaworMjg5OCA4MjQ2NTc2ZWYzZjUzNTk2OTU3ODEyNDgyMmIyNzk1NTI4ZjU1OGE0IGxlZ2FjeS10cnVuaworMjg5OSA1NWM2MGU3ZjMxZWRhMjczYmQ2MjA3YmY1YTJhMjMxMDM5Zjk5OGRlIHVubGFiZWxlZC0xLjUuNAorMjkwMCAwNzhmOTAxNWYxNzg5MjhjNmQyMjM0OTEyYjk5ZWMwMTY4M2IwNTQ5IGxlZ2FjeS10cnVuaworMjkwMSBhYjFiMzQ4NmIyMjYzOGY1NGFmNmM5YjBhZjI2NjQwN2M3OTE1ZmQwIGxlZ2FjeS10cnVuaworMjkwMiBkNzc4MjQ1NDNiY2U5NmE5ZjAwNjQ5MmJkN2U4OGM4ZjUyM2Y0MGUwIGxlZ2FjeS10cnVuaworMjkwMyBkYzYwOTUzZjYwNTI5OTA3YjgwZjBmYzhkOWFkYzBmMzM2NjIwYTdlIGxlZ2FjeS10cnVuaworMjkwNCBmNzEwMTEwY2ZkMzkyYTU2YmEzYmU5YWZkOTJhY2IxOTYxZjMyYjIyIGxlZ2FjeS10cnVuaworMjkwNSBkYmNiNDlkNzQyYTBjZmYyYWMzMzgxMGI5NDc3ZWM3YzEyYjM1NDQzIGxlZ2FjeS10cnVuaworMjkwNiA4MzRkZDRhNzdlZTIwZjk5OThiNTZmZTIxZDhhOWQ4OTYyZmM4NjAxIGxlZ2FjeS10cnVuaworMjkwNyBjN2IyM2NjOGNkZWRhZmY0ODcwZGRmNTNmMzhiYmE4ZTQ3ZDU5YjM4IGxlZ2FjeS10cnVuaworMjkwOCA2YzBmMTYwMDhiZDlkNDBmY2FjOGI1MTg5ZTFlZjgxNThlMTk5MjE4IGxlZ2FjeS10cnVuaworMjkwOSA0NWM4MTg5Mzk0ZmYwZTNlOWQ5NjIwMzMyYThjYTE4MzI1NDI2MGU2IGxlZ2FjeS10cnVuaworMjkxMCA3MGMyZjQwNDMwYzc2OTVlZjkyZDhjYzMxNWYzMzNiOWNiYzE5MzRlIGxlZ2FjeS10cnVuaworMjkxMSAzMjA4NWVkZDc3YTdkODk0ZjI4MzU3MGFiZTM1MmUxMDAxMWEyZTdlIGxlZ2FjeS10cnVuaworMjkxMiBmZjNkYjk1NWU2MjhmMzQxNjQ3NWY3NmQ0MmFkOWJlNDUwOGVmZDdiIHVubGFiZWxlZC0xLjUuMgorMjkxMyBhNWU2ODgxY2ViZjA5YzgxNmI4MDU5NjMwYjc4ZWM1NTExMTM5MmU3IGxlZ2FjeS10cnVuaworMjkxNCAwZDQ5NGJjMjQyMDdmNzdhNTZlZjc0NWNhODQ4NjFiZTkxN2E2MzJmIGxlZ2FjeS10cnVuaworMjkxNSA4YmQyMTk0YWQ2ZjlhOWI1M2U4ODI0MDlhMGZjYWI5ODZjNTYyOTg3IGxlZ2FjeS10cnVuaworMjkxNiA4ZjdiMzFhOGE2Nzg1Yzg0NjY3MDlmNWQzZjMzZmE4Y2FkYjU2MGM1IGxlZ2FjeS10cnVuaworMjkxNyA2ZmJiMDNkYzQzOWVlMjY5YjI0N2FkZGZiZTNhYTBlNTQ4M2YwNmFmIGxlZ2FjeS10cnVuaworMjkxOCAyZGQ1ZGJmMjhhMmRkNTVkNGFlNzJjYTVjMTg0YTJhMTEzZDM2NGQyIGxlZ2FjeS10cnVuaworMjkxOSA1ZDJmNjJhZDhkZWVjMTIyM2RmYWJkMGM1NGU1NWFjYzZmYmYwMGJkIGxlZ2FjeS10cnVuaworMjkyMCA5ZGUzZDAyYWE3NWQxOWFiOTI4ODc5MjQ5MGJlNDU2ZGM3NGZjMmM0IGxlZ2FjeS10cnVuaworMjkyMSBiZmM2NTUwNzQ1MjNkMGFiZjQwODI5OTVjNzE1NDI3ZmEzYTIxMmRjIGxlZ2FjeS10cnVuaworMjkyMiA0MWRkMzkzNDg3ZjU5MWE0NGNhYWVkM2NjZDY5Y2ZhNzY0Y2ExZTNlIGxlZ2FjeS10cnVuaworMjkyMyA5YjY3MWYzOTdhOGYyNzAzNzA5OGNhMzY2MTQ4ZTRkNDJkZGQwYjgwIGxlZ2FjeS10cnVuaworMjkyNCAxZGZiMGM5ZDA1NzY3ZDBjZGI4MDM3YTZhN2MxNWEzODY1OTIzNmFkIGxlZ2FjeS10cnVuaworMjkyNSA1N2MzZTljZmVlNDBmZjg1OTlkMDFkNTFlZjYzYmM4MDExOGU3Y2JiIGxlZ2FjeS10cnVuaworMjkyNiAwN2Q1ZDYyYTRhMmIyMDE2NjBlMzAwYmQzYzZjNmQ1NTU5NDg0OGM5IGxlZ2FjeS10cnVuaworMjkyNyA3ZDg0ZTBkZGYzYmUyZGM4NjQ0NDRhODYxZDY1N2U4NjA5ZjhjZTgwIGxlZ2FjeS10cnVuaworMjkyOCAzODkwZjQ2ZDZlM2I3MTE0OWE2MDdlNmUzNzliOTNkNDY1MzQzNTA3IGxlZ2FjeS10cnVuaworMjkyOSAwNTM3NmM5MjZmNTgwZDk5YjFkODlkNzc3MWNlYWU3MTNkMDgwNGQzIGxlZ2FjeS10cnVuaworMjkzMCA3YTBkMDNlOGJkMjliYWU2ZDk4NGMzNjFjYzE1ZDA0ZTY3ZDBjM2Y2IGxlZ2FjeS10cnVuaworMjkzMSA2NzYwMzFiZjQ0ZWUxYWQ1MzlhNWQxZWNkMDYzYmUyZGVlMWI4YmJhIGxlZ2FjeS10cnVuaworMjkzMiBmODQyMWRhNGVmYTc2YjdkNWQ1OWQ4N2IyYjQ5MDE0NmI3MjM4MTE3IGxlZ2FjeS10cnVuaworMjkzMyA3NDQ2OTZiYTg5MjdhZTdiY2FmODVlNjVjZTdiOTI1YjQwMzViMTFkIGxlZ2FjeS10cnVuaworMjkzNCAyZTgyZGQwZjhhOWUzN2RhYzcwYWMwNjYwYjBiZTQ1YThiOTg2NDM2IGxlZ2FjeS10cnVuaworMjkzNSBkOTQ1Y2YzM2E2NGY0NjhhYTdiZWJkMmZkYzk1ZjU5YmVjNTQ1YTRlIGxlZ2FjeS10cnVuaworMjkzNiBjNzIxYWZhYjBlZmE2MWU1YThlMjIzMzZkZDc0ZTBiODdiZjE3Mzg4IGxlZ2FjeS10cnVuaworMjkzNyA3YzhhYmNlMTk3OTg0YTlhNjIyNWE5NzI4NjI5YzhkNTYwMTA5NGY2IGxlZ2FjeS10cnVuaworMjkzOCA0NWIzYTc4ZjI1NmJhZTZiNDk4ZjdjMWQ2Mjk3NGRhMjEyMjViZjcxIGxlZ2FjeS10cnVuaworMjkzOSA3MjU5ZTk2YTA0YTlkNDUxNDBmMGQ2NmM2MmNlNzZjMDlkMjI1YTA3IGxlZ2FjeS10cnVuaworMjk0MCBjMGQ0Y2FhNzFiZGFiMTJmYjBhMzMzYWYxNDBjMTVkZjllNWY4NzBlIGxlZ2FjeS10cnVuaworMjk0MSA2MTYzMDIwYTk2N2RiYzNmN2I5NWEyZDk4ZWUyNjU1ZjE1ODU2ZWQ5IGxlZ2FjeS10cnVuaworMjk0MiBiMzdhYzkxZTJhMGRhNGI4MDhiZjJiNTQxOGMyNzQwNzM0YWJkMjFkIGxlZ2FjeS10cnVuaworMjk0MyAzMGE2NTIxMDE1OTlmZjFlNzg2YTkwYjFiMTAxNjVmYTU0ZDkzYThhIGxlZ2FjeS10cnVuaworMjk0NCA2ODU4NDMxNGExNTQ3ZmRlOGE2NzBiNjBkYWRhYjBjMGMxYWRiYzEyIGxlZ2FjeS10cnVuaworMjk0NSAwMTJlMzdmMDUwMTkwZjE5MTE2NWY1YTk4OWJhNjEyNjI3MDBhMzFhIGxlZ2FjeS10cnVuaworMjk0NiAzZTFmYmU4NGNmOWZjNmEyNjMwYWEyYTA3ZDE5M2RlZjQxMjA0YTNiIGxlZ2FjeS10cnVuaworMjk0NyBmYmQ2OGU2OTIxNGMyN2UwNTk1MzgxM2ZhMDE4NDU0ZjhmZmNmODEzIGxlZ2FjeS10cnVuaworMjk0OCBjZDgxZTU2ODA0YjA5NDJiMWE5ZDQ1MDYwYzNmN2MxMWUxYjExYWVlIGxlZ2FjeS10cnVuaworMjk0OSA2M2QzNGU4NzdhNjk3MDhmM2RlYmRlMWU0NjQ1MjY4OTNkOThhYjA5IGxlZ2FjeS10cnVuaworMjk1MCA0NDMxOWRmNmE5MWMyOTY3NzIzZmVlNTA2MDAyMTI0MTVmN2E4NWFmIGxlZ2FjeS10cnVuaworMjk1MSBiYTRlYzEzYzBmOWY5ODJlZjliNWU1NDJkMzVhNjNhNTU1MTY5NWQ1IGxlZ2FjeS10cnVuaworMjk1MiBmNTY1Y2Y3ZjlhYmE4M2MxYTgwYzcxZTE4NDdmNzM1OTcyMWUzMTk5IGxlZ2FjeS10cnVuaworMjk1MyAxNjQ4NDlmNTYxMDVmZTJjMzA2MTlhNjRhZmUyM2RjNTVjNmVmOTQ0IGxlZ2FjeS10cnVuaworMjk1NCA3N2VlOWIyMjJmZGI0YTQ4ODg1Nzg1ZjlhYTYxNDI1YmYxNWY4Yjc1IGxlZ2FjeS10cnVuaworMjk1NSBkYzNiNDU1Zjc2MzI3NzM1YjA2NWJiZTA2ZTAyODA3MWM1NGUxOTAwIGxlZ2FjeS10cnVuaworMjk1NiBjYmYwZWY5OThhNGExZTU3Y2ZkYWU2NDg3ZDc0NzRhMTVjYjU5YmFmIGxlZ2FjeS10cnVuaworMjk1NyBjN2JjNTYxNGVlYWQ1YjRmNjlmYmQzZmJmY2ZlOTY3ZDVmOTYwMDliIGxlZ2FjeS10cnVuaworMjk1OCAwY2QxOTc5NDdkODE0ZTljZjIyYjlkNDRhOWY2NjlhMTdkMDcwNjVlIGxlZ2FjeS10cnVuaworMjk1OSAxMzYwNjE4NDA2MjQzNDE1Mzk5YWM2NjMzMjNmOWQ5NDEzN2RkNDMwIGxlZ2FjeS10cnVuaworMjk2MCAzYzhiNDQyZTVlMWYyZTZjZTMzYWE0ZjU1ZmU3YjgwZDkxZjQyNjQ3IGxlZ2FjeS10cnVuaworMjk2MSBkZmIzYjBlYzFmZjkyOWE2ODIyY2Q1YmM5MGMwMjAzZTYzMjhjOTFjIGxlZ2FjeS10cnVuaworMjk2MiA3ODRjNTFjYjFiNzk3MGI3YTFjN2UwZDBiMTRhZDk2MDU2NzczMzYyIGxlZ2FjeS10cnVuaworMjk2MyA0NGVjZmY2ODg0YjdkNzFjZjRjOTgwZmU5YTJhZDgwMDMwNTlkMGRjIGxlZ2FjeS10cnVuaworMjk2NCA5NjUyZmM4MzBhMTJkOWFiYTlhZDg2YzBjNGM2Yzg3ZWJlOTZkNWI5IGxlZ2FjeS10cnVuaworMjk2NSAzZDY1NDFhMmVjYTVhMDYyNWU1ZjQyNDQ5MDA0MTU1MmQyYWM5MmE3IGxlZ2FjeS10cnVuaworMjk2NiBkMDU3MDRhMDAwZWJkZTVkOTFhMjNjZTE2MmVhY2M3MzQ4ZjExZGU5IGxlZ2FjeS10cnVuaworMjk2NyAzYWRlY2UyYzg1NjcwNDVkYzE5N2ZmOThjZGY4YjNiNDNlNWFmNmU3IGxlZ2FjeS10cnVuaworMjk2OCBiYWIyYmViZDM1ZTczNTgxYWU0ZDg4OWMxZTViMDRiZmZkNmMxZTA4IGxlZ2FjeS10cnVuaworMjk2OSAyNTk5MjNlNGQ3YjE3ZmJjZDAwZDY4MTdmNzlmMWE3YmMwNzQzZDhlIGxlZ2FjeS10cnVuaworMjk3MCA0M2M4NmQxZWIyMmMyOTQ2NjYwMzE4MzI4ZjhkNTU5YzA1N2QxZTYzIGxlZ2FjeS10cnVuaworMjk3MSAwY2ZmMzZiMTEwZmU1NTI3NDY5ZDA2YzM2MTE4NDBhMmQ3YmRkYTgxIGxlZ2FjeS10cnVuaworMjk3MiA4NTdlZDNmYmRjMGVhMzlkMmIwOGYwNWNmNjg4NzlmYTY0YTNkZTczIGxlZ2FjeS10cnVuaworMjk3MyAzNzczYjZmNmRkNTNiY2ViNmM0N2QxYzY3YzRlN2U4MmRmYjA5NzNjIGxlZ2FjeS10cnVuaworMjk3NCBkNmUyNTc5MjMyM2ZiNmJmY2U0MTk3MjZiYWFiZTc4ZmNjMTFlOGU0IGxlZ2FjeS10cnVuaworMjk3NSA5NGVhNmVhN2Y3ZDU1NmFmN2U1OTY1YzBhZjFkNWEyOTMyNWE4MGZmIGxlZ2FjeS10cnVuaworMjk3NiAwMWE2YmY1NzQ1MmU1NWFlZDcxNTczM2ZmMGQxZjhjZThiZmNlZjY0IGxlZ2FjeS10cnVuaworMjk3NyBmMDhkMzQ0OTkyNjlkZTBlNDhmZWNiNGViYWM0N2U5NDU4OGNiMzI5IGxlZ2FjeS10cnVuaworMjk3OCA2NTA4YzkzZjk0NzI5YWFkZWU4YzRiMTNjNjFmOWMyYWRiMjIwMTk2IGxlZ2FjeS10cnVuaworMjk3OSBlNGEyN2Q4NGVhMzY3ODBmMDg2NGIzZDU0YzNhOGQ3NmVjYmExYWRiIGxlZ2FjeS10cnVuaworMjk4MCBhYTYzM2YwZGVmYTYxZWE5NTVlMDRlZWVkYjM0NDg2YjQ1NGU2MDYwIGxlZ2FjeS10cnVuaworMjk4MSBlMTU3YzEyY2Q2ZTdmNzQ5MWNlMzBmYzNjNTNhYWNlYzVhYmZjMzY3IGxlZ2FjeS10cnVuaworMjk4MiBhMWU4NGI0ODQ0N2FlNjQ0YmJhZGZiZTVjMzk2MmUwNzc4MmRiYmU5IGxlZ2FjeS10cnVuaworMjk4MyAwOWM2OWExZWM3YjA5MjhiMWZiOTE3Y2RkY2MxYzFlYTVhNzk1ZmNmIGxlZ2FjeS10cnVuaworMjk4NCAwMWZjNTkwMDMzMzlmNzcwM2YwZjljYTNjYmMwMjA1M2RiODYyZmQxIGxlZ2FjeS10cnVuaworMjk4NSAxZWVjZmZkOTY5Njg5ZTA4MDkyMjI0OWFkYTJkNjlhYTdjZTU3MDZjIGxlZ2FjeS10cnVuaworMjk4NiBkMWI4OWU4NWNlNzU2ZDNhMmQ2ZDZjNzNmMTgyNDFhMmM0NjgxMjYyIGxlZ2FjeS10cnVuaworMjk4NyBiODRhNmQ0ZGU5MGU4ZmNmNDM0YTMxYWVmMGRlOTgxZDVkZDcxNjI5IGxlZ2FjeS10cnVuaworMjk4OCAxZDE5NjY5ZjU2ODc2OTY0MzNhNWYyYzA0OGI5M2RhY2NhYjk0OWE3IGxlZ2FjeS10cnVuaworMjk4OSAzY2I5YTJiN2I0MGNmNDJkZTM5YTRhOTAwNGZhNTM2M2FiNzBjNDNjIGxlZ2FjeS10cnVuaworMjk5MCBmYWYxMWFkY2NmYzY1YmQwYTc0ODEzNDljYTEzYmVhNWVhMThlMDM3IGxlZ2FjeS10cnVuaworMjk5MSAyZmNkNDAxYTYyMzIzYTQ2OTRkZWEwYWYyY2E4NmM5NTM0NmQ5NGM4IGxlZ2FjeS10cnVuaworMjk5MiAyMWIzZWE2YmQzMmQzMTZlMWQ5YjY3ZmZmZTAzMDQ1ODJiNjkxZjU2IGxlZ2FjeS10cnVuaworMjk5MyBlYTUwNzJkZTc0MjczYTUyOWZhMDA2NDIzMzlmZmI0ZDQ5MmZhMGRlIGxlZ2FjeS10cnVuaworMjk5NCAzZWIwNWQyZGM3YjExZjQxYjU2MzFlYzg5M2RlNzliZTNiNmQyNDZjIGxlZ2FjeS10cnVuaworMjk5NSBiNDE3OTIzMDcwMDhkZWI0MzhhOTczYWI3OWEyNzcxZTY4YTc3ZWMzIGxlZ2FjeS10cnVuaworMjk5NiBhNzg4MmZjNmVhMjcwNWI4ZTE1MGRiYmMxZTFmZTkyNjQyYzkzYWUxIGxlZ2FjeS10cnVuaworMjk5NyA2YmY2OWY1NGE5MDNkODllNmQ1YzE5N2E0NTNkNzRmMjdkYzI5NzM2IGxlZ2FjeS10cnVuaworMjk5OCBmMjc3M2E2ZGM1MWVlY2IyOGJkZTViZjc2YjAyNGQ0OTE5NzQyNTY4IGxlZ2FjeS10cnVuaworMjk5OSA3YjRhZGU1MzZhZjg4ZjQ1MzBlZjZlNzUxMGM5YTRmMjc3YjE2NjZjIGxlZ2FjeS10cnVuaworMzAwMCBiOThhZWYyMTNkYWVhNTRjMjMwYzgzY2Q2NDQwZTMzZjJiOGQ4MTc1IGxlZ2FjeS10cnVuaworMzAwMSAwN2E4YzQ0M2I4MzEwNDgzY2M0ZTUyNjc2Y2RiNWJiMTI3NjFlOTNhIGxlZ2FjeS10cnVuaworMzAwMiAxNzgwZWI4ZmRlMmI2NDVmMzNhMGVhNzMyYTFhZDlmMTA0NjNlYjA1IGxlZ2FjeS10cnVuaworMzAwMyA0MTAxZGVkNzNjNTJkYThkZjdlYzAzZTBiZjFlNDM5OWJhNDRmZDljIGxlZ2FjeS10cnVuaworMzAwNCAzZjgxYjVhYzJiYjIwMjQwODU5MjU1N2QwMmNlMGU3N2ZjNDllN2FkIGxlZ2FjeS10cnVuaworMzAwNSAxNDY2MzVkZWYwMWVhYjJkYjM3MWRlOWEzN2UxMDI5MzIwYTQ4NTU2IGxlZ2FjeS10cnVuaworMzAwNiAzOThjMDBmMTFhMmY0NWMyN2U0M2ZjYjE5ODMzN2UyZjQzNDFiMWYzIGxlZ2FjeS10cnVuaworMzAwNyBjNTVjYjc2YmM4MzcwODFlMGQ1MWFmOTdmNDhiMjUwZmRhYjkwNDRhIGxlZ2FjeS10cnVuaworMzAwOCA4NTFhYzRhOGJlN2Q4ODViMzcxY2NlM2VhYzUyMTdkZTk4YWU3NTJiIGxlZ2FjeS10cnVuaworMzAwOSAxNjQwY2MzZjFhNTNmODA3NTJmYjJjODBiZDU3MWM0MGRlZWJlZTA5IGxlZ2FjeS10cnVuaworMzAxMCBkMzFlYzE1ZjVmNzEwNjQ0YWUyNzM2Mjk4M2Y3ZDZiMGE2OWY0MWFhIGxlZ2FjeS10cnVuaworMzAxMSBiMmE0MWY2YWVhYzk5MGNhY2JhMjRkMGE5Mjc5NGIyMzAzMDIyZTM1IGxlZ2FjeS10cnVuaworMzAxMiBmZTZhNWYyNjQwYTI3NmQ5MDE3ZjVlZGYwMDc0NDYxZDNiZDliOTZiIGxlZ2FjeS10cnVuaworMzAxMyA4NzJhM2NhZWZmMDcyNDIwMzUzODlkNmZlNjVmMDI4MmEyMDM2Yjk3IGxlZ2FjeS10cnVuaworMzAxNCA0ZGVmYWJiODI5NmI1YjQ3MDZkMDM3ZDU4YWEwZGM2OTU2YjBkYjM5IGxlZ2FjeS10cnVuaworMzAxNSAxYWM1YzY3MjdlOGM1OGRjODk5NDBiNmY3MDA3N2NiMGNiYmJiMTJlIGxlZ2FjeS10cnVuaworMzAxNiA0ZDU4ZTJjNTA4ODdhNWFjYWU4ZTg5MjU4NGQ1N2E2NWJhOTRjZTdlIGxlZ2FjeS10cnVuaworMzAxNyAzOWU1YjdlMzE1ODg4NWYzMWViYTM0MGRlZmYwMjVhMDcxZDVjMDMwIGxlZ2FjeS10cnVuaworMzAxOCA2ZjQ5OWQ1ZGFkZGY3YWJjZjdlNDkxNDQyOTZkZGU4YTI4MTcwMDVmIGxlZ2FjeS10cnVuaworMzAxOSAyNTQxYjNkMGYyMGY3MWU2MTZiOTdhOWYwZGUyNjJhNzAzMmVkYTc3IGxlZ2FjeS10cnVuaworMzAyMCA4YmMxNzBlNWVmZWU3MjE0NmE4Y2UyY2MwOTgwNzVkOTE3YTM4ZTNkIGxlZ2FjeS10cnVuaworMzAyMSA2Y2ExYzQ0ZmQ1Mjc4YTMyOWNjN2YxNDk1OTBjZTNhMmY3ZDY1Yjg1IGxlZ2FjeS10cnVuaworMzAyMiA2ZjNmZWQyNTBhZGIwZmEyMjI3N2UxZDhhYTI1ZWU5ZmVmYTE2ZWY2IGxlZ2FjeS10cnVuaworMzAyMyAzOTEzNGM5OWM5MjM4M2E1NzE2NjY4NzBmN2FhNzIwNjdmYmZmMTEwIGxlZ2FjeS10cnVuaworMzAyNCA3NjA5NWE4Yjk2Y2FlYmYwZGRjZDJiOWVmYTMxNGE3YmMzNzcwOGZkIGxlZ2FjeS10cnVuaworMzAyNSBiY2YwMjA1MmU5MDllODFhN2M0YzAwNzk2YmQzYTZiNGRiMjJlYWUyIGxlZ2FjeS10cnVuaworMzAyNiBiNjhiMTBhMjE1MjAwOTNlOGExNmZiMjczN2U1YjlkYTQwY2Y3N2IwIGxlZ2FjeS10cnVuaworMzAyNyBlNThmNDBjMmYyODVjZjVlMzZjNjFkYjA5MTQ1Mjc3N2Y0YTM0ZGMwIGxlZ2FjeS10cnVuaworMzAyOCA1OGU4NzcwZGI0NGFjZGZlZDFkNzY3Y2M2ZDAxMDg5ZmQ0OWUyZjk3IGxlZ2FjeS10cnVuaworMzAyOSAwNmMwNzg3NTBlODA4YTMzYjhiNzMxYzIwNTM2ZWZlZTM5MTVkZDE0IGxlZ2FjeS10cnVuaworMzAzMCBjYjE0NmFhOTg3Yzk0NWY5NjA0N2Y3ODQ2NWU3NjIzMThjMzgwNTAwIGxlZ2FjeS10cnVuaworMzAzMSBiMmRiNGJmMzRmZjhjZTQ5OTk1ZGE3ZTg0MDQ4M2JmZTcyOTg3OTQyIGxlZ2FjeS10cnVuaworMzAzMiA4ZTM1MWZiMjU3N2EwMmIyNjJhN2VmNTA5NzY3MzVkZDJhNWRiMjhmIGxlZ2FjeS10cnVuaworMzAzMyA5NzE1ZmRjMWU0NjJkZmQ0ZjUwZmQ4YzBkN2IzZGE3MDIwYTkzZmJiIGxlZ2FjeS10cnVuaworMzAzNCAyMjE2OWZjYzExODI2ZGE2NTc4MThmMTgyYzI2ZGMzNzM5YTI1OTc1IGxlZ2FjeS10cnVuaworMzAzNSA3YTAxM2Q2NDQ1YTQ4Nzc1NWM0OTYxY2E4NzIxZjlkYjM2ZmRiMmI5IGxlZ2FjeS10cnVuaworMzAzNiBhYWRkZjgyMWY1ZDQzMmNmMTE2YjNhYmE0NDg2MTE1YzM4ZTAyZWQxIGxlZ2FjeS10cnVuaworMzAzNyA0YzliYzUyYjgwODBkMzljZjhkZjZmY2U4YmZkODA4MWFkYWNlYzhkIGxlZ2FjeS10cnVuaworMzAzOCBjZDBlN2YyNGZhY2ExYjExYWI1NmI1YTFiNjJkOGFmMDAzYzA0MWE3IGxlZ2FjeS10cnVuaworMzAzOSBlYzMxNzQ4ODM3ZGMyNzg5ZjQ4Nzk0NmYzMjU5MTczMTk3MTQyZjkyIGxlZ2FjeS10cnVuaworMzA0MCA5ZmIyYTg2OGVlZWVjNjVhZTdkYzYxOTgwNGVkNTU5MThkNzkxYjVhIGxlZ2FjeS10cnVuaworMzA0MSAzNjMyMzE0MGY3NTE4NTQ1ZTJiYWQ4MzVmYWU5NGFkN2EyZjU1Njk1IGxlZ2FjeS10cnVuaworMzA0MiBmOTQ4MWFhNWU3NzZiNjVmN2JkMWUyNmI1Nzk2M2UxODViNDFkM2E0IGxlZ2FjeS10cnVuaworMzA0MyAzNmI5MzQzMjZmZWQ1ZjQ1NWE3YzBmZmFkOGQzMzUwNTA5ZTEyODI5IGxlZ2FjeS10cnVuaworMzA0NCBhZmY4MTljYWYyMWFmNTRjYjY2MWM2OTkwZTAxNDA5YjdkM2Q1MTFjIGxlZ2FjeS10cnVuaworMzA0NSAwMGViZTVmYjBhYzY3MTIwYjYwNGU1MWEyNzY4YzNlZDgwYjBhODQ1IGxlZ2FjeS10cnVuaworMzA0NiBhNTRlNGE3MTdjOWJiZTI5MWQ5MmU0ZDYzMDU1MmI0ZDlkOThlOGVlIGxlZ2FjeS10cnVuaworMzA0NyBjMDJjM2NiYjhhZDEwNDc3NDFiYzZmOWI0NjIyY2Q3MWZjZjNmZDU4IGxlZ2FjeS10cnVuaworMzA0OCAyNjZkZTU5ZGU4YTlkODcyODdjYjQ4M2RlZWMyODZkMjhkMGEwOGZhIGxlZ2FjeS10cnVuaworMzA0OSA5YTA1ZTJiZmE3NGMzNmJiYTZiZWI3ZGUzZjUwNmU2ZWRmMGZmMTlhIGxlZ2FjeS10cnVuaworMzA1MCAxNmExOTUzNTRiMmJlZTA2YjdmYzNiNWQ5YWRiMjY1MDQ0YzgyMWQyIGxlZ2FjeS10cnVuaworMzA1MSBkZDdkZmFkNDA0Y2Q4MzJkYTYzOGYxNzUyOTRhNmVmZTlmY2I3YWQ0IGxlZ2FjeS10cnVuaworMzA1MiAxODE0MDkxNDFhMTgwNmQ3Yjg1YzMxOGZkYjk2NDNiZTI0N2VlMDljIGxlZ2FjeS10cnVuaworMzA1MyBiM2Q2MzlhZDY2NmQ1YjIwYjBkYjdjNTUzYzAzN2U0OWRhZTVkNjZkIGxlZ2FjeS10cnVuaworMzA1NCBhOGNhNzIwZmQ5MjE5ZWVhNmJjZTMyZGY2YTk5ZDVmOTVhMDE2ZmE3IGxlZ2FjeS10cnVuaworMzA1NSAxMWVhNjY5YzIzMWUxM2QyNGQ0OWRiMzhjNzUzMTEwMjhmMzVjNDRkIGxlZ2FjeS10cnVuaworMzA1NiAyMjY1ODI4MjJjZmFmMTIyZjBlZDNjYTk1YmIxMmZhOWMzZDExNTRlIGxlZ2FjeS10cnVuaworMzA1NyA0NmNiNmJjZTRjNDc1ZjRmZWZjNTIyODQ5MTk2NjZkNGZhYzQ0ZmY2IGxlZ2FjeS10cnVuaworMzA1OCBiZWJkYzFhY2Y0NzQ1OWI4NmU1Y2Y5NzUwMmRmYjA2MjAxNzE3N2NjIGxlZ2FjeS10cnVuaworMzA1OSA2NDU5ZTJmMjFiZjY4MDc3Mzc4OGZjMmFmZDY2MTliNzJkN2M4ZWFhIGxlZ2FjeS10cnVuaworMzA2MCAwYzViMmQ5ZTQ1ZTgyZDNmMmU1ZThhZWQ0NGFmNWZhYzJjYjk1NTYxIGxlZ2FjeS10cnVuaworMzA2MSBlZjg2NTAyNTA4ZTJmMTA4NmMxYTE4NmJmYjEzYTY1YTBmMGQyZjBmIGxlZ2FjeS10cnVuaworMzA2MiA5OWJmZjFkYjc1ZjRhMGZmMWQ2NzI5ZGUxZWM5N2E2ZjNhYjFlNjc0IGxlZ2FjeS10cnVuaworMzA2MyA1OGE3NDM4YzJlN2VmOTIyYjM2MzE3OWUwNDZmMDgyOWJiYWFhZDBhIGxlZ2FjeS10cnVuaworMzA2NCBmZWEzZjU5NGRmNzc0NmI3NzZhMTNjYjkwZjNlZmE0OWIzY2I3ZjU0IGxlZ2FjeS10cnVuaworMzA2NSBhNDc5M2FlMjY2ODI2YzAxMzRjNDk2N2QwYTBiYmMzYTYzODRhYzE0IGxlZ2FjeS10cnVuaworMzA2NiBmZDYyYzI4MDk2YjU4NzdlNjZkNGJlZDdjMWZhNDU5MDEwNjU3NDc5IGxlZ2FjeS10cnVuaworMzA2NyA3ZjdiYTY1YTI4MjVjMGU0NmI1ODRmOWIxMjI1OTkzYmMwMzU2YjVjIGxlZ2FjeS10cnVuaworMzA2OCBhMWY1YjIxNmUzOTJjZDliNTJhNTc1OWFjNmNhYmNhM2VhYmY4NWE3IGxlZ2FjeS10cnVuaworMzA2OSA2Mzc5OGNkZTU4MmNmNTM1NjQ1YTI0MmVjYTNkYWU3OWZjMGUzNjBmIGxlZ2FjeS10cnVuaworMzA3MCAzMjAxMGQzNTVmYjYxMjJlNTI1OGVhOTIzNjYzNDY1ODNkYjVmNWJkIGxlZ2FjeS10cnVuaworMzA3MSA0MjRmNTVlNjdkNWQzMjRiOTg2NTc2YTVmZGU5OGMxNDdjZjJiNDI1IGxlZ2FjeS10cnVuaworMzA3MiA0ZGEwYjdkYWU3OTZmZjhmMjU4YWQ2YjdhNDcwZTZmYjljYzNkYjFkIGxlZ2FjeS10cnVuaworMzA3MyBhNGYyYjIyMTBiMDIxMTUwMzBjNTlhMTU3NTM5NjE1NzMzOTM4ZDZmIGxlZ2FjeS10cnVuaworMzA3NCA0ZmQyMjYwMmUyODJjMWVlOGJmNTE4N2ZkMTRmZDJiM2E4NGJhNTY3IGxlZ2FjeS10cnVuaworMzA3NSA2MGUzMTE4ZDMwNzM3YmI2ZjI5YzM4NzZhNGM4MTNjNjMwNGQ0NTk5IGxlZ2FjeS10cnVuaworMzA3NiBlOThhOGY4MDI5MDNhNjI5YzYyNDY2MTQxNGNjODljYWUyYWM3NjZkIGxlZ2FjeS10cnVuaworMzA3NyA3NGI3MTZlOWFjNDk4NmU0MDAzNzg5MzgxY2QwZGQwNDRlMmEyYTM4IGxlZ2FjeS10cnVuaworMzA3OCAzOWVlN2RlNzQ3NTAyZTk2MmJkYjVjNmU4NzJiMzY3ZjQyYjBhNTVhIGxlZ2FjeS10cnVuaworMzA3OSBmZWMxOGUyNDRkMTY4ODJiMjlmMGZkNTdiZTdkNTExZmQyZmYyOWY2IGxlZ2FjeS10cnVuaworMzA4MCBjZmRkNTc1ZWZmZjJiNDE1NzBiMzdiZmJmZjgwYjJjMzc1MTA2M2E1IGxlZ2FjeS10cnVuaworMzA4MSBlNDNhMjIwYzI4N2FhM2VhMjdiN2MxZTEzZjVmYzAzMDkxOWY1ZGY0IGxlZ2FjeS10cnVuaworMzA4MiBkM2IyN2ZmZjAwYjJmMTI1NzVlYzFkMjEzYjhlNmQ3ZDM3NzllZTNiIGxlZ2FjeS10cnVuaworMzA4MyA4YzczYzVmM2I2Y2E3M2RkYjY2OTRhNmM1NTI4NzA5NTA2YWZmNmQ2IGxlZ2FjeS10cnVuaworMzA4NCA4MDc4ODM0OTk2ZWNjNTgyY2E0NDc5NjgzMTQwZjA4ZjdmMzBiMDM0IGxlZ2FjeS10cnVuaworMzA4NSBjMTJiNDQ1Y2RhY2VhMWQ5ZjlhMDg4YWY2MjJhNmE1YjFjMDRjYWFlIGxlZ2FjeS10cnVuaworMzA4NiA3MmFjZWVkMzY1ZDQzNWI3YzI5NTNkYjg0MGJjZDA1NDc2OTk4MzczIGxlZ2FjeS10cnVuaworMzA4NyAyNTA1ZmQyMGQyNzdhNDc5ZTBkNDg3NjYyYjhkYzIzNGQ2YmFlMjYwIGxlZ2FjeS10cnVuaworMzA4OCA2MTE0M2JmMDNiNDQ3NmUwNWUyNzJjY2U5ZGFhOTU2NjEzYWNlNzQ3IGxlZ2FjeS10cnVuaworMzA4OSBjMTU2ZDQ5NjBjMmI0MDg1OWIxZjA1OGMyNGZkMWIwNjA1MDQzZTcwIGxlZ2FjeS10cnVuaworMzA5MCBhYWNiZDRiNTU4YzdlZmNmYmJmNzdjY2JiZTI3MDY4MzQ2YzAwYjQ4IGxlZ2FjeS10cnVuaworMzA5MSA4NzI1ZmE4ZDdmZjkxZDgxYTQzNmFhNjFkMzRkNzBmNmNlZTI5MTI5IGxlZ2FjeS10cnVuaworMzA5MiBmZjAyYjk0OGM5YTgwYjdiOTU1YzE1ODQxYjkzMWY1NDEyYmQ4MWEyIGxlZ2FjeS10cnVuaworMzA5MyBlNTA2MTk3MzMyYzBjMWExMWVhNGJmOWNkYTcyODA2MmU4ODVmMDRlIGxlZ2FjeS10cnVuaworMzA5NCBkODYwOGVkMWNjM2IxM2I5ODIzMDEyZTBiYWY2ZDlhNDY2YzVlM2U3IGxlZ2FjeS10cnVuaworMzA5NSA2MTU5ODNmMWEzZmYzZmQ1OTJlMjY3M2I0YTdlNDRiYmUzM2Y0ZWJkIGxlZ2FjeS10cnVuaworMzA5NiBjNDMyNzM4Y2Y2OWFlYWUxNWY1ODhjZmE2ZjRmMTA5ZGU3OTRhYjMyIGxlZ2FjeS10cnVuaworMzA5NyBkMzgzZDI3MzMxNzY1ZjhkNmVjYzA2ZTMxZDQ1MGI0YWYzOWJjYzIzIGxlZ2FjeS10cnVuaworMzA5OCA0ODc5OTY3OTZlZGM2YzczMWI3NTBjZjk1ODZkOTUyMTM3OThlZTE1IGxlZ2FjeS10cnVuaworMzA5OSBkY2U2ZGM2MmYxMDhlZTQ0YjA0N2VkYjAyYmY0NGQ5OWNlMjA1YWM5IGxlZ2FjeS10cnVuaworMzEwMCA1OGE0Y2IxOGYwMjVhZjg2ZDlkYjNkMDkxYzkxYzRmNDQ2ODQ0NzhmIGxlZ2FjeS10cnVuaworMzEwMSAxODM2OWJiOWMyNGQwNzg3OWY2MDVlZmE3ZWM1MWE1MGYyOTJkN2E4IGxlZ2FjeS10cnVuaworMzEwMiA3MjQzYTkwNjkzN2NmNzg0ODNjZWVkYTM1MDM0YTRkMDE2YzQzMmVhIGxlZ2FjeS10cnVuaworMzEwMyA4NDQ0ODJiNjQ2N2FhZTNkNThjODFhNTA1NzA1ZTUyM2JhNmVmMmIxIGxlZ2FjeS10cnVuaworMzEwNCBjZDQwZTNlZWJiNDkzOTBmNGUwMzRhZjMxMWRjYmUyNjFiYzdhMDE0IGxlZ2FjeS10cnVuaworMzEwNSAzYWE2NTg5MmI3NWM0NzA2OTY3MzU3MzM1YTk4NzYxNzllNTM5YTk5IGxlZ2FjeS10cnVuaworMzEwNiBiNDZmMjFjODMzNjkwOTZmMDAzZDk3YjhmYjU0ZDVhYjlkNzU4ZjExIGxlZ2FjeS10cnVuaworMzEwNyAyMjJmMDRmNTUwODMzNTcyNmFiNmU2MWUxZDVkZjM0NDc3M2Q4YjFjIGxlZ2FjeS10cnVuaworMzEwOCA0NjViOTg0MTc3MGUzNDU2NWU0ZDk2Y2YwZGY3MGJjYTRiMDdkOGU2IGxlZ2FjeS10cnVuaworMzEwOSAzNmUyYjdhMDBkNzJmMzZhZmJhYmM4MDFlMmQwMzVkZjcwMDUzMTRiIGxlZ2FjeS10cnVuaworMzExMCAyNjBkOTZkYjExMmY4N2QyMDRiYzhlNWUyZGM0ODczZmI4MWZjMjI1IGxlZ2FjeS10cnVuaworMzExMSBlNWFlNDJmZmQ5YTA3NTdmNmE3NzFmOTY3MWVmZTYwNjZiZTIzNzM2IGxlZ2FjeS10cnVuaworMzExMiBiYzBhYjAxNzU0YmE1ZGNiNDgwMDQxZTUzZDlkODdhNjdkNTUzMDdmIGxlZ2FjeS10cnVuaworMzExMyBiOWYyNGQwYzdkOTYxNmE3ZDAyZjE2MGVjNzhhNDAzMGQ5NTY3YzIzIGxlZ2FjeS10cnVuaworMzExNCAwMjg0ZjEwNzlhN2JhZTU2NDIzYzljZTczYWUyMzgzYmE3MWNkYTVhIGxlZ2FjeS10cnVuaworMzExNSA3ZDhlNTFlNTgwZDFhMjNjYTMzZDIwMjg5NzZmNTJkMmIyYmQ2NjllIGxlZ2FjeS10cnVuaworMzExNiAyYjYwODMyNzIzYzE0MzFmNzk1Zjg0OGQzMTczYjYzNzlhODVkZTlmIGxlZ2FjeS10cnVuaworMzExNyAyNjZhOGJhMjA3ODRmY2Y0MWJjNGVmMjhlY2ZjZTlhOTkyNGVjOGM3IGxlZ2FjeS10cnVuaworMzExOCAwM2RlNjcwODBjOTU2MjQyOGRjNzM3ZTcxZjRlZTRlZDIyNTJkOWE3IGxlZ2FjeS10cnVuaworMzExOSBhNjBjYjUzMjEyMTEwZTU0MDBiNDNiNWI4OGViZDZjZTc3ZGM3ZTE5IGxlZ2FjeS10cnVuaworMzEyMCA1YzZjZGI1OGE4MDFjYjgxOTQ2NGUwZThjZDFlMWRkMzEwZjg4MjA1IGxlZ2FjeS10cnVuaworMzEyMSBhNzM2ZWYxODQwYTUxZmUyYjc1ZWE4OWY1MTkxNTU4ZWQ5NDEzYjU2IGxlZ2FjeS10cnVuaworMzEyMiA2OGIzMDJhZDg0YTE5MWI0M2Q5OTU1YzU4YzgyOTM5Y2Q2Mjk1OTkwIGxlZ2FjeS10cnVuaworMzEyMyA3ZDNhMDUzYzY3NjVhZTU2ZWIxNmMxMGRjNTg5ZDVjMGZmMTMwOTk1IGxlZ2FjeS10cnVuaworMzEyNCBhMzFlMDc4NDcwNjM4NzQ2OWNmMGU5ZjNlY2M4Yjg5MTE3ZmQ0ZWZiIGxlZ2FjeS10cnVuaworMzEyNSBiNDFlOTU3MzFlNDIyNDIxNzg1ZjE1ZDg5NTcxMzNmNDRmZDNkOWZkIGxlZ2FjeS10cnVuaworMzEyNiBiNWZjYjY2MjQ2NWU3M2NmOGY2N2U5NWFlOWQwNTQzM2U5MzIwOWY3IGxlZ2FjeS10cnVuaworMzEyNyA0YmRiMjc5NDNlMjI0MjEzNzAwNjkwOTBkYWU0MDBlNTNiZmM3ZjVlIGxlZ2FjeS10cnVuaworMzEyOCAxNGNjNGIwN2NlYmJkNjExZTc3MGJmN2ExYjUwOTI4ZDhkYzdjMDc5IGxlZ2FjeS10cnVuaworMzEyOSAyN2FhZjk0NDc1ZGRiZDc1OWIwNTAyZDdiYzdmYzYzOWY5OGFmZTQwIGxlZ2FjeS10cnVuaworMzEzMCAxYTUyMDI5MGMzOWMwNTI1YTdmZTAyMWEyMTEyM2E4MjQyYWUyMTU5IGxlZ2FjeS10cnVuaworMzEzMSAwNmE5YzgyOGI2MDg5MWI1OGNiZDZhNmMzMjNiM2U5MDQxMWQ0MWFjIGxlZ2FjeS10cnVuaworMzEzMiA5YmZlNzNjNzczMzRjYWI2MTMwMjM2YjdmNTQ3MzRmOThmZTRlOGVmIGxlZ2FjeS10cnVuaworMzEzMyA0NjU3ZjdjOTgwZTg1OWY1OTIxNDk5ZDY1ODZmYTNlYzc4NGI0MjY3IGxlZ2FjeS10cnVuaworMzEzNCBmNjcxOTM4ZGZkZTJlNTMyOGFhODA4ZTc0OGEwMWRhZGIxNTFjZGFjIGxlZ2FjeS10cnVuaworMzEzNSA3YjM3YjVlNzE0OTNhMzY3MThmNTUwMzU0ZWNkOWE2MzVlMGRjZTk0IGxlZ2FjeS10cnVuaworMzEzNiAzMGEyOTAyNTdjMzFkMGIwOGQxNzI4NjUyZDE0ZDZkZTUzMTUyZDY1IGxlZ2FjeS10cnVuaworMzEzNyBjOWMwMzI4MzY4YTllMmI2NDM5MTYwNDNmZjViNjVjMjJmNDViMGJmIGxlZ2FjeS10cnVuaworMzEzOCBhZGJhYzU4OTNmOWM2MGRmYjE3M2EyZjY1MDE3NjQ1NmRlY2JmYmQyIGxlZ2FjeS10cnVuaworMzEzOSAzMWIwMThiZGE3ZTJkM2Y1MDBkOWZjNzQ4ZTRhOWJlMTU5YjFlOWYxIGxlZ2FjeS10cnVuaworMzE0MCA1NzZkYzE0YTI0MDA5NzEyZWNiMTA2M2M5Mzg2NGFiN2YzYWZjMzUxIGxlZ2FjeS10cnVuaworMzE0MSAxM2M5OWVhZjMyYThjNDVmYzkzOTgxOWJhMDE4YzRiMTk0M2I1NjYwIGxlZ2FjeS10cnVuaworMzE0MiAzYzU1ZTYxMmE2ZmNjMWQ3ZWM0MTkxZWUwNDBlOTM2NmE3MmUxYmM3IGxlZ2FjeS10cnVuaworMzE0MyBmZmUyZmJjNTgzZGVjZDc5MTk4NWUyNjNmZTk3OWJlOGY1MzhkOWFlIGxlZ2FjeS10cnVuaworMzE0NCA5ZjFkYjU1NmZmYmMyOGVhM2RhZGQyZDZhMzE5NzM5ODJhZTEwOGM2IGxlZ2FjeS10cnVuaworMzE0NSBmYmNiOGQwYmQ0NWUwMzIxZWM5ZDU0ZDVhZmFkZGQ3ODczY2E4MGFmIGxlZ2FjeS10cnVuaworMzE0NiBiMDQ1ZTY4YmJjZGQ1NGQ0YjQ1ZTNjMDczZDAyODI3MjZhM2ZlMjg5IGxlZ2FjeS10cnVuaworMzE0NyA4N2FlZDUxNjAxNjE3NmI0YTQwMDI1NzkwMmE1OTc5MjY1Yzg2OWZlIGxlZ2FjeS10cnVuaworMzE0OCA1Y2M3YTNjZDU1N2I2NDkzNzc2YTIyYWI1MzMzYjhkMDIwMGIxNzEzIGxlZ2FjeS10cnVuaworMzE0OSAyYTA3NDZkNTI0NzhhNzJlYWQzZDFkY2I2MDc1N2IwMTYwMDM1NjE2IGxlZ2FjeS10cnVuaworMzE1MCAyNGM5OGI2MGRkNzQ2NWJlNDBiMDM3YTY2YzVjNWFmNTgyMThmOTllIGxlZ2FjeS10cnVuaworMzE1MSAxOTdhMmNmM2E2NjJjNmIxYzcwMmI3MzEwMDE3MDJkMmVkYmQwNmFjIGxlZ2FjeS10cnVuaworMzE1MiA3N2FjYTY5NjZiOWQwMWI1YTEzNGYwZmM5OTM4Njc3NWU2NWVlNmY2IGxlZ2FjeS10cnVuaworMzE1MyBhOWViN2EwZDQwMDIxNDFmZTcyNTRkNWVjZTJjNTMzY2E2NWU1NWUyIGxlZ2FjeS10cnVuaworMzE1NCA3ZjgwZjMzNmJlN2Y4MmFiZWNkNDVkNzg4YjhiMmJkMWI2ZDUyYzBjIGxlZ2FjeS10cnVuaworMzE1NSA0OGM2MzdmYjE1MGYzMjg5ODE2ZjFmZDM3YzdhYWE4ZTM4ZTQwMDcwIGxlZ2FjeS10cnVuaworMzE1NiA3Y2UxOTc1ZjExYTkwZjEyNDFjY2IzMWViYzUyMzI1YjEwNjNiMDhmIGxlZ2FjeS10cnVuaworMzE1NyBmNGRiNDA2M2VjODg2ZWQzOWFlZWIxNjRlNDY2MDFhNmRiNDI5MDE4IGxlZ2FjeS10cnVuaworMzE1OCBmMDI1ZWVmOTMxMzBkMzI1OTI3NTc0ZjA5N2Q1NjgxYzIyYjY5MGVjIGxlZ2FjeS10cnVuaworMzE1OSBmZmIwM2NlYmYzZjQ1NWU0MjZlNDI1YWZlMzI2NjQ4MmNiN2E4ZDI4IGxlZ2FjeS10cnVuaworMzE2MCAwYmUxYTVkYjc3ODQ3NGEwZTVjZmY3ZmFkMTI5MWJkNmRiYWFkYjE2IGxlZ2FjeS10cnVuaworMzE2MSAwOWI0ODYwNDg1NWY0ZGQzZjM3NzNkMmVmMjQxYWFkYTBlMGM1MTA5IGxlZ2FjeS10cnVuaworMzE2MiBkZWJmY2I5YTdlMDhhNjQ3NDM4OWQyZjlhNmVjOTBiMWQxNjViNzZiIGxlZ2FjeS10cnVuaworMzE2MyA2Nzc0MTA3YzY0N2RjNTljNjA0ZGFhNzBjNGIxYWJlN2JjOWQ1NWYxIGxlZ2FjeS10cnVuaworMzE2NCA1MDY3ZjJkMzhlMTQzZmIyMzI1ODUxNjUyNDU0NDg2NjI5YmNmNjU3IGxlZ2FjeS10cnVuaworMzE2NSAwY2U0MDRlNDEzOWM1YjY1MTE5MGM4NGEyZTgxZDQ1YzZkZGIyYTlmIGxlZ2FjeS10cnVuaworMzE2NiAxN2RiMDU5YjI5YmFjYWIzMWRkOTAxYzk2MDY1YWU0NWE2Y2UwN2ZlIGxlZ2FjeS10cnVuaworMzE2NyA1ZDcxNDJlYTAxYjdkYjBmMTc4MDY2NGU2OWM4OGFkYzUzYTIxNDBiIGxlZ2FjeS10cnVuaworMzE2OCBiMzMyMjhlM2MyYzI3ZWQ5MjMxNWUzNTRmYjgwNWI1NmVlNDU3OGZiIGxlZ2FjeS10cnVuaworMzE2OSA5MDMwNzEzNzdkMjkyZTU5OTI0MGQ5M2ViYmIxNTYxOWEwZjdkNWQ1IGxlZ2FjeS10cnVuaworMzE3MCAwNGE4YTg5YzkyZWI3MGUxMjEzODYwMmFkNTQ3NGU2MTdkMzk3NjdmIGxlZ2FjeS10cnVuaworMzE3MSBmZGJlYWUyZDZlNjcxZTIxNWE4NTFlNmZlN2RkYzNjMzg0YmFmMDJhIGxlZ2FjeS10cnVuaworMzE3MiAwOWQyNzFlZjNiODI0MDQyNzkwMjg5YTk1YWI3YWVmODIxM2QzZWEyIGxlZ2FjeS10cnVuaworMzE3MyA2YzFmZDA1MTBkNjFiY2QxNzA4ZTE5MmU1YThjM2FjMzg5NGNlZTVkIGxlZ2FjeS10cnVuaworMzE3NCA5MjY3OGI1MDU3YzY1NTZjZTU0NDU2ZTUwNTQwYjE1Yjc1YTdhYTBjIGxlZ2FjeS10cnVuaworMzE3NSA4MDY2ODliOTM1NThmOTU2ZjcxZTYwOWYyMzJjMWUwMmZkYzU0ODM0IGxlZ2FjeS10cnVuaworMzE3NiBhMWNlNWE5NDk4MjhkNWMyYmYxNTU0ZjgwMGQzYWQ3YjEyZmM4NzIzIGxlZ2FjeS10cnVuaworMzE3NyA5NmFjYjM1YmI5MmJiODkxZDlhYzBlMTgyMjFlMTk4NTAxMDZjMGEyIGxlZ2FjeS10cnVuaworMzE3OCBmM2Q1ZTJjM2I5YTNhNTMxZjdjZTcyZWJmNGMzOTEwYjliMWJhMWI3IGxlZ2FjeS10cnVuaworMzE3OSBhNDFlM2JhNWI0N2Q5NmZiYjdkOTIxZDU0YWRiZjFkZDk3MzUwMGUwIGxlZ2FjeS10cnVuaworMzE4MCBjYjdlZjliZDllZGVjMzc5YTUzODY0MGQ5ZDNiM2U3MzY3NzQ5ZTFjIGxlZ2FjeS10cnVuaworMzE4MSAzOTQ1ZjM3MTIzNTQ5MDFiZDc2ODlhYTkzZDVjYmFjMWUwZTJkMTYyIGxlZ2FjeS10cnVuaworMzE4MiBhM2U3NjhlYTgwMmFiOTA3ZjAxMTAxN2FlMWJlZmY1ZTE3YTY2YjRlIGxlZ2FjeS10cnVuaworMzE4MyA3NDQyYjIwYzQzZmRmY2NjMWEzOTk3NzA1MzczYjlhMWQ1MTM4NGI1IGxlZ2FjeS10cnVuaworMzE4NCAwZDdjODIzNjY3MDQ1MDA1MjdjNDU3MzdkM2MzMmMzZDFjYWUxMzYwIGxlZ2FjeS10cnVuaworMzE4NSA5YjU2NmFjMzhjMmI4NDM0MWM4NDUzMDI1MDM3YzdmMTI5YTFiNWJjIGxlZ2FjeS10cnVuaworMzE4NiA5NGFiNjc2MWFmZTJjNGVmMmQ3MDVjN2NlOWExZDMxMWNmZThmYWMyIGxlZ2FjeS10cnVuaworMzE4NyA3YjRmMjgzM2ZkOTAyYmM1NThhMjFiYTFjYTE4NGI2MWI4M2FlNTE3IGxlZ2FjeS10cnVuaworMzE4OCBmOTkzMTk3YzNhNDc2ZTQ5YzM3ZTNkOWI0NDY1NjM0NDgwN2I5MTc5IGxlZ2FjeS10cnVuaworMzE4OSA1NmQ2M2NhYmRiYTdlYzA4NTVmZTI0MGQxYTU0Y2EyZDZjY2ExOGExIGxlZ2FjeS10cnVuaworMzE5MCA1MTM5NDBlYjRkN2I2OTkxYjE1NTZmZDk3YmZjYmFiYmJmOWRkNWU0IGxlZ2FjeS10cnVuaworMzE5MSBlZDQ1NmU5MWQ5NWFlODU0Njc0NTk5ZTliNjMzMzliYjk2YzFhNmI5IGxlZ2FjeS10cnVuaworMzE5MiAyZjk4MDVjOTYzZTg1MzY0ODA3YjhlYTE3ZWJiM2NmMzQxZDJhZWQ0IGxlZ2FjeS10cnVuaworMzE5MyA5ZjBmYjExNGMxZTU0Y2U1NjNlNTQzMzBmZDdkMThjMDVkZjRjZWY3IGxlZ2FjeS10cnVuaworMzE5NCA3YTExYTcwZjdmNDRkY2NkNDJlZGQxZDliMjk2Zjg3NTIzY2JhMTgyIGxlZ2FjeS10cnVuaworMzE5NSA0MzJmZTdmMDgzN2M0YjI1YTc0YzQyZmE0YmUzNWI1MmY5NTUyYzg2IGxlZ2FjeS10cnVuaworMzE5NiBmYmI4NDBmNjRiZjg5NTY3Y2E2YzkzYmMwZTUwZDVlYWU1ZGYxZGY1IGxlZ2FjeS10cnVuaworMzE5NyBiYmQwMTk4ZWFlNWJmMThmYWFjMjc0YzY3ZTI1MzRjZGQ3ZTgzYTRlIGxlZ2FjeS10cnVuaworMzE5OCA1ZmIzZjczYTYyN2ZjZTU5ZWQwZTE4YzMwZTFlZWE2YTdhZDhmY2Q4IGxlZ2FjeS10cnVuaworMzE5OSBiZmZlZmJmY2ViNjA1NDNjMzQ4YTZmYjk5ODQxYjhlZTNjOWE3ZDI1IGxlZ2FjeS10cnVuaworMzIwMCA1MTZiNWExNmFjNzcxOGQ2ZTE3ZGEyMWEwNmVmMzQzZDNiNTY5Zjc5IGxlZ2FjeS10cnVuaworMzIwMSBiMDA0MzhmMjY1ZWQ4Zjk2MjJkYWFlM2E2ZTBhMzJhYWQ2NjM0OTA0IGxlZ2FjeS10cnVuaworMzIwMiA2YWEwZWUxNGFjMmVkNjA2YTBlOGJjOGE2NDYwNDY5ODBiYjQ0OWEzIGxlZ2FjeS10cnVuaworMzIwMyAwZWU1OWExNGU1NDIxZmM5YjQzMjI0MjBlMDc1NmExM2FiMzVlNzA4IGxlZ2FjeS10cnVuaworMzIwNCAzZGFjMjA0Yjc0ZmFmZjkzN2YxMDVjODI0N2NjMWUzMjg1ZGUxZTA1IGxlZ2FjeS10cnVuaworMzIwNSA1OGY3NDhmNThkZjU4NGJiMjY5NmU1OThmYmM5MmM4MWY3N2VhNDhjIGxlZ2FjeS10cnVuaworMzIwNiA4ZjNhMjU0MDk5NWExNWUwZTE3ZGU4OWI3NzNjNzk3MTY3MDQ5NzkyIGxlZ2FjeS10cnVuaworMzIwNyBjNzJlZTI5Y2NjZDAxOGZkNzM3MmY2YmU0MTI0ODY5MjYzYzM3MTllIGxlZ2FjeS10cnVuaworMzIwOCAxMGYxMGQ0NTQyZmFlZDg1NDJlNmI1NmRmYTkxODFhZWE1MmI2Y2QxIGxlZ2FjeS10cnVuaworMzIwOSBkNjgwOGVjNmVkYzczNmU2MzQ1NGMzYTViN2M3OWY2MWRkZWU1OGEwIGxlZ2FjeS10cnVuaworMzIxMCA2YjVhMzRkYjIxZmUxNzMzNjgyYWU0N2Y4MjRiZjczY2I4ZTgxNGM2IGxlZ2FjeS10cnVuaworMzIxMSBjMWViZmRlMzQxYTNlY2M5YTk5NTBlZmQzZTYyOTM3NDU1YzY1MzlmIGxlZ2FjeS10cnVuaworMzIxMiAyZWQ1MTExNzE4MDk4MzgyN2IxOTExY2I4NjQ0ODg5NDczM2Y4OGUxIGxlZ2FjeS10cnVuaworMzIxMyBmNDlkMjMxMTc3NmJiOTNkYzlkODVlY2U5OTg5MjQ5ZmM2MTZiMjhmIGxlZ2FjeS10cnVuaworMzIxNCBmNTRlNjRjOGI5YjcwYmI5YjAzZDMwY2YyOGExZDgzNDUyOTNhZjYzIGxlZ2FjeS10cnVuaworMzIxNSA2NTA4ZWEzMmM2YjA5OTk5ZmI0YjFmMzVjZGY4N2ZmOTI1MjU0MjhkIGxlZ2FjeS10cnVuaworMzIxNiBjOTU0NmEyMTE4ZjA0YjZiMzY1MDdiYjM1NTMxYjQ2NTc2MjE4NzY4IGxlZ2FjeS10cnVuaworMzIxOCAzMTZjZTY3N2M2YjIwYTRjOTBhMjg2ZDc5MDAzY2IyMjk3ZmRmNGFiIGxlZ2FjeS10cnVuaworMzIxOSA2YWIyMDdhNTVmY2EzNDc3ZjQ2MTBiZGNhYTk4MjI3MGEwYmJhZjkyIGxlZ2FjeS10cnVuaworMzIyMCA5YmY3NWU0ZDlhZWMzZWFiM2RiYTA1MzU2Mjg5ZGQ0NjBhNjg1N2E1IGxlZ2FjeS10cnVuaworMzIyMSBlNjY0MmE1MzVkYjVmYzE2YzBhZmU5YjE0NjU5NjA2YzE2OGY5MDc2IGxlZ2FjeS10cnVuaworMzIyMiBmZTE5MjZiOWRmZmE3MzEyNTQ4OGRlZDFjNGZkZWQ5OGNlOWJkYmM4IGxlZ2FjeS10cnVuaworMzIyMyA1OTJiYWM2YWRmZmMyNTY2NjJiNDlkYWVjNDgxZTFiOGI1ZGI5ZjcxIGxlZ2FjeS10cnVuaworMzIyNCA0ZjY2NDFkZWE2NDU4OTc4ZDAyMTAxOGRkMmEyYjg4OTg3ZTE2ZmY4IGxlZ2FjeS10cnVuaworMzIyNSBhM2ZhMjI5Nzc1YzE2ZDNhMzJiOWZiNTVhNGYxM2Q0MGRkZmQ1MDg3IGxlZ2FjeS10cnVuaworMzIyNiAwZGExNmU4MTQ4MmNmMzNkMGNhOWI4YTQ4ZDIzNmM2NzQwNmUxYzlhIGxlZ2FjeS10cnVuaworMzIyNyBhYWEzYmNjYjE0M2FhZjFiNzcxNTVjN2ExOWI2MmJhMmIxNTY3ZGM4IGxlZ2FjeS10cnVuaworMzIyOCA2YmU5NzAzOWNjMTFmNjI0YTBiYTJjYTY2M2EzZWJiYTFmZGE1YWYzIGxlZ2FjeS10cnVuaworMzIyOSBiNWQ5NWFjZmQzZWUzMjM1ODM5YzcxMzZiMjdiZmNmN2IxYWVjNTlkIGxlZ2FjeS10cnVuaworMzIzMCA2OTZiOTEzMjdlYTIzOGU1MTMxNGQ0MDNhMWIwMjFhMzFiYzBmNjA4IGxlZ2FjeS10cnVuaworMzIzMSAzOTNkNTRlY2Q0M2I1Yjk2ZDQxZWE0ODQ2ZjgwNTZlYTI1OGEyMmYzIGxlZ2FjeS10cnVuaworMzIzMiA3MTYyZjVhYzg5OWFhOTJhNjRiYzQ5YjQ0NWFmZDdjMTJkNmM1ODgxIGxlZ2FjeS10cnVuaworMzIzMyAwMDE2NDU3YmQ5N2E4NWE1YTZjNWMxMTM4NGY4ZjNmYWZiZTUzNTBmIGxlZ2FjeS10cnVuaworMzIzNCAxYTU0ZDMyMGYyOTY0YWE3ODVjMjBkN2UzZGUwMmY5MjdhYWNhNjdkIGxlZ2FjeS10cnVuaworMzIzNSAyMjkxZGEwNWYxNzg0YmZiODUxNGRlNTZiZDkzOTEwODNkMTIwYzBjIGxlZ2FjeS10cnVuaworMzIzNiA3NjdlZjczNzBkMzNjNGQ5MDkzOGM1NTBkMzNjYWQ1NWViNTI4NDM5IGxlZ2FjeS10cnVuaworMzIzNyAyYzA0MzJmY2MyNzA3OWQwMGVlZjIwNzZjMDU2MzI5NmRiNzkzMTA5IGxlZ2FjeS10cnVuaworMzIzOCA0ZGMzODJmZjZmYzc0ZDM1MGQ2MGM2MTE0ZDVlNjY4M2JhOGMxYTFlIGxlZ2FjeS10cnVuaworMzIzOSA5OGNiNmExMjUyY2I2NWIzM2ZjZjgyMDhmMDQwYjIyYmJmNjEzMTJlIGxlZ2FjeS10cnVuaworMzI0MCA2YWM5MTZmOGY4NjI2OGQwODBjZTVlYzAwOTFkNTJkOGM5YWE3M2ZhIGxlZ2FjeS10cnVuaworMzI0MSBmZWI1YjIzNGIwYjVmZmIyNDM2OGI3NDI2YjQ3OTJiOWYyNzE0YjAxIGxlZ2FjeS10cnVuaworMzI0MiAyNDUwMDNjMDA2YTYzN2Y0ZjFkMDhjZjM5NzdlYzE3ZDgyNjIxZTZmIGxlZ2FjeS10cnVuaworMzI0MyBlNGM2YTBkZDVjMmIyN2E3YTVmZTc4NTMyNjVlYmNkMDViMzBhYzU2IGxlZ2FjeS10cnVuaworMzI0NCA3NjU3YTc1MDk0ZjFjMjA4MmExMmVkNTY1OTNhODM3YjM2ZDA1ZTE4IGxlZ2FjeS10cnVuaworMzI0NSAzMWRmNThmYTk4Y2M1NTkxYmMxZTYyMTExYzMyMGZhYzExMTk2Y2UwIGxlZ2FjeS10cnVuaworMzI0NiAwOGQzYzM3MDE5M2RmN2Y2OGRiZjQ2YjM1NDJmZGY4ZTQ4YzllZGQ3IGxlZ2FjeS10cnVuaworMzI0NyBmMDg2ZDdiNDkzYjRkZmNmYTFjNWE3ZDAzZGMzZDgzN2U2MjE1OWIwIGxlZ2FjeS10cnVuaworMzI0OCBiNzU1YTQ2MjAxZjZlNzVjNzhkNGRmOGNhYzYzMDY2MjJhODg3ODlmIGxlZ2FjeS10cnVuaworMzI0OSA5NjVhYTNiNTNhOWQ4NmE1YTNjYzZjNmQyZTZkOWNkZjA4NGU3YTY4IGxlZ2FjeS10cnVuaworMzI1MCBkYjgxN2YzYTFjNjU0NDhhNTU1ZjYyNzNiYWY4MDQ0YjQ0M2Y3NjhjIGxlZ2FjeS10cnVuaworMzI1MSBiOWU0ZjczMjFlMjhkY2ZiMzgyY2EzMzY4MDFjYmYyNDQ0MzA0M2FjIGxlZ2FjeS10cnVuaworMzI1MiAzNTgyNDg5OWFhY2Y4MjBhZTkwYzlhMWE3ODZlNzkyMDlkZGUxOTU2IGxlZ2FjeS10cnVuaworMzI1MyA4ZDYyYzkwNTZmZTE1NDQ0MzA3NmFiYzZjNWQ1YTgwNzhjYzBhN2RhIGxlZ2FjeS10cnVuaworMzI1NCBhYjkyNjUzNGExNTI3NDkwOGVlMmE1MDkzMjFmYTA5MmMwY2ZmZmQwIGxlZ2FjeS10cnVuaworMzI1NSA2ZDU3ZGNiNGZhYWRjYmU5MzM3YzkxMDkzMmFmNjlmOGQ5ZGVlOWZiIGxlZ2FjeS10cnVuaworMzI1NiA4MmM1NWVhOTA2OWU1YjU0OGI3YzEzNjAzY2Y5MTFlZTdhOGU2MmRiIGxlZ2FjeS10cnVuaworMzI1NyBhNDM3NmE5OTdmYjE4YjliOTZlMmI1N2E3ODFiODQzYTdmYTAwMGNkIGxlZ2FjeS10cnVuaworMzI1OCBkMmFmNmJkY2I2ZDBhMjQ0Mzc2NzJiZmE2MzcwZTJjNzE2ZWRmYmIzIGxlZ2FjeS10cnVuaworMzI1OSBhYzA4MjhlZjY4ZjI5YmJkMTE0MjVlM2NhMDcyNGEzNjI2ZDI4ZGY2IGxlZ2FjeS10cnVuaworMzI2MCBjZTcxODQ1N2IxNzI2NTc3MTE3YTAwOGU4ZjBjMjU2ZGMyMjI4MGZjIGxlZ2FjeS10cnVuaworMzI2MSBjNjQ0YmM2MjYwOThhZDdiZjMzYTU4MjFlNzQ1NWU3NGRhZjYwYTdjIGxlZ2FjeS10cnVuaworMzI2MiBjOWQyZjZiZGFhNjliZDRmMzIzMmZlOGZmNWU3NTAyMDU0OGI5ZWQxIGxlZ2FjeS10cnVuaworMzI2MyAzZGQ3YjgyNTU2MTlhYTgyNDRkYjM2YmNkOWZhY2M2MDU3Y2YxZmNlIGxlZ2FjeS10cnVuaworMzI2NCBmZjE4OTlkY2RhMDU5ZGRjYjMwZmVjY2I3MDM1YjJlZWVmOWI5NWE4IGxlZ2FjeS10cnVuaworMzI2NSBiNzU3ZTU4YmM1MjVjMzk4NGU3Nzk3NjA4YTI5ODE1NjQxYTQ5M2RlIGxlZ2FjeS10cnVuaworMzI2NiAzMGMyNmNmNTQ4MDQ5NjczNTI4ZTRjZDYzODc4OTA5YWVhYjBiMzE4IGxlZ2FjeS10cnVuaworMzI2NyBmY2FhZmQ1ZWM2OTU2M2MwYjdkMDgwZmQ2N2UxN2ZmYjc4ZDliYmRiIGxlZ2FjeS10cnVuaworMzI2OCA0MTU0ZTk4ZDE0NzhiOTJkZmM0MGQ4Nzc2Y2YyMWFlZjg2NGFlZGFhIGxlZ2FjeS10cnVuaworMzI2OSA2ZjJhNmVmZDAxOWU0NWY4MDc1MWNlMmJkMGQ3MGQ4YjQ1MjlhN2RiIGxlZ2FjeS10cnVuaworMzI3MCA4ZWE1NDYwNDdmMDExNjMwM2E4NTVmOGU3NmQwODA1MzY0YTM2ZmY2IGxlZ2FjeS10cnVuaworMzI3MSA5MWMxODZhMjE2ZTcwOThjODMzZTExNDFlMjYyMjM0NDM2NmIyY2E2IGxlZ2FjeS10cnVuaworMzI3MiA3ZjhkZGNlODg0OTYxZDRiOTM1MjcwMTUyMGJkZDdlZjVmNTZjZjU3IGxlZ2FjeS10cnVuaworMzI3MyBlMmY4MDc3YTkyNmVlYzJiMjJkZTc0YThjMDIxMzMyOWM2MGMyYTI2IGxlZ2FjeS10cnVuaworMzI3NCAxZDA2YjE0OTllYjkzMmYzN2EyZDRmODcwMGMyZGU4M2I1Yjk2ZjMwIGxlZ2FjeS10cnVuaworMzI3NSBkZTcwZDc3YjNlZWQ3NGUwYzEwZWJhMjg0NWFiNTU5OGJmMzAzMTdlIGxlZ2FjeS10cnVuaworMzI3NiA4Mzk5ZTlhYTAzZTdmZTJlNTY3NGFhMzdiZmJjOWJkNTUxZDZiZmE2IGxlZ2FjeS10cnVuaworMzI3NyA0NmQzMWE2NDljZTY2NzMxYWNmNzFhOWYzMzAxMzMxZWIwNmEyMjQ0IGxlZ2FjeS10cnVuaworMzI3OCBjMGFlZDVlZTExMGJjN2QzYjFlMTY5OWYyMGRlYjk0MDg3YWQyYTc2IGxlZ2FjeS10cnVuaworMzI3OSBjMWVlNjBiZDVkZTQ1YWE3YWYwNDZmYTFmOTYyMWMxMTNkMjU1Y2QyIGxlZ2FjeS10cnVuaworMzI4MCBjMjZmNWJlYzM0MzhhZDlhYzk2NWVhZDNjMWM3M2YzMjczOGU3N2NjIGxlZ2FjeS10cnVuaworMzI4MSAxYTBiZTZlMzY4MThiODkxMmEzZmZhNDI4NGNmZGRiNjExODg5MWE3IGxlZ2FjeS10cnVuaworMzI4MiA1NjYzNjM5NTcyNGQ0OTQ0OWNkMTNkZjk1NTQ5OGNkZjMxYjJkYjZmIGxlZ2FjeS10cnVuaworMzI4MyBmZjZlMjE3MzA5OWFlM2M4NWNmODFmMjJhZmQxZTFjMjJiMzU1ODM5IGxlZ2FjeS10cnVuaworMzI4NCA1ZTY1YjEwZGQyNGQzOWNkMmFjZmNmNzZhNzlkNGYxYjFlYjJhMzM0IGxlZ2FjeS10cnVuaworMzI4NSA3NWI0NzJhYzViN2JlMzJmZDM2NzBhZTYwM2UzYjA5YThiNmEyNTU4IGxlZ2FjeS10cnVuaworMzI4NiA5NGQxMjExNjc1NmFjNzVhOTI4N2U1NmNlYTU5ZmIyMjU0ZWRiMTFmIGxlZ2FjeS10cnVuaworMzI4NyAwOTE0NzRjMDgzMWE3YTI3MmEyYTc3MzBiOTVmYTA2MjlhYjM0ZTM2IGxlZ2FjeS10cnVuaworMzI4OCBkZDcwYTNhYWQyNjY1ZWFiYjUyYzhhNTM2YjBjZDY5YzUzNWIyZmJkIGxlZ2FjeS10cnVuaworMzI4OSAwY2NiMzU2ZTg4YjEyNmY1M2RjM2MwYjM4YjBkYWFjMDZkMGJmZWY5IGxlZ2FjeS10cnVuaworMzI5MCA0MWZiZDkyYmYxYWQ4MDFhMTA5YjcyOWMwOWZlNzBlYzk3MWM4MDdlIGxlZ2FjeS10cnVuaworMzI5MSBhN2JhMTkxMjBmNTQ3NDlmNGY5MGIyNTE5MTViYjJkZDg3Y2I2OThhIGxlZ2FjeS10cnVuaworMzI5MiBhYTllZDNiOWVkYTFjYTM0YWU3MTZiNTIwNTBiMGE4YzcxNzBmMWVkIGxlZ2FjeS10cnVuaworMzI5MyBiNmNkZGZkMzQ4YmExYTU4NWFlODczN2Q5MzQ0MGVmMTRlNTZlZWI0IGxlZ2FjeS10cnVuaworMzI5NCAzZTllYzg1YWM0OWI2ZmY1NWFmNjBkMTg4NDQ3OTlhNWI0Yjc1YTNmIGxlZ2FjeS10cnVuaworMzI5NSBlNTNiYWY5YjRiOTU1MWU1NTg4YzJmYWY0ODkxYjU0M2RhZmRiNjY3IGxlZ2FjeS10cnVuaworMzI5NiA2NDYxZGFjOWE5ZjI5Nzc3YjBkN2Y0OGRhOWU4ODVhZDg5ZTUwZjJhIGxlZ2FjeS10cnVuaworMzI5NyA5YWRkMGUzZTgwNGEwNTk4N2Q0YjhhNjY3MTI5Mjg5YjhkMjE0NzlhIGxlZ2FjeS10cnVuaworMzI5OCA1MTEyZDQzMjEyNmIxNzU3MDQ3NmYzY2VlNTNlYmNiYzU2NmVhMGRlIGxlZ2FjeS10cnVuaworMzI5OSA2MjMxZTFiNWIyMmI3YmVhZDIwMDFkYzI3MzM4OGZkMWQ1MmRhNWNmIGxlZ2FjeS10cnVuaworMzMwMCBlMzkzMDliOWEwYWE2ZDE2NmJjMDlkZDkyNDc2ZThhZGUxYmRhM2I5IGxlZ2FjeS10cnVuaworMzMwMSBiMzM4MjYyY2QwODA3YzQ2NDRmOGYwOTA1NmI4MDE0YzkyNzgzOWU0IGxlZ2FjeS10cnVuaworMzMwMiA5NTBmMDExMzE0MDNlMTU4ZTM1NDMyYmQ4OTUxMjBiZTM4YmM0YzU2IGxlZ2FjeS10cnVuaworMzMwMyBmNDllODYyZmVlYzRkOTE3OGQ0MjQyYmU1MmMwMjZhOGM1YmZkYzI5IGxlZ2FjeS10cnVuaworMzMwNCBiZTg5MTI1NjQzZjI1Y2Y5MDE2MGEyOWYxNGFmZjZmNWJlZWFiY2ZjIGxlZ2FjeS10cnVuaworMzMwNSA1NGViMmNmMjY5N2U2ZTUzNGU1MjgyNmQzNWJhNTk0YTgzOTAxZTM2IGxlZ2FjeS10cnVuaworMzMwNiBlMDg3NzIyNmQ2MTM4ZTBlZDQ5MTMwYjQ3MzJlNDM2ZDM4NDZiYzlkIGxlZ2FjeS10cnVuaworMzMwNyBlNWNlOWQwNDA4ZDBlNTZmN2Y0MTY4N2Q0ODUwYWVlNmYzNjhlZTZkIGxlZ2FjeS10cnVuaworMzMwOCBmMjBkZTEzMjI2OTIwZDkzOGE3OTExMTBhNmY0N2NjMzRlNjcxYzY5IGxlZ2FjeS10cnVuaworMzMwOSBiYjc2NjVjNDQ4MjI2ZmI5ODIxMmVjNTZkYWFkODgwZWQ4OTEwZjNiIGxlZ2FjeS10cnVuaworMzMxMCBhNDE2NDkzZDNhNGMyZjNiMjQ3MWZiMGI5MGQ4OGQ2YzYzYzk3MzAyIGxlZ2FjeS10cnVuaworMzMxMSAzYzZhNTJkMjU0M2RjMmQwNTJiMDVjY2QxYjNkMDI3OTY1NzFjMmM1IGxlZ2FjeS10cnVuaworMzMxMiBmYTYyZmIwZTU1YjJkODliZmZmZjQ2ODA3MjhhYWQzYzI5ZDU2MDQ1IGxlZ2FjeS10cnVuaworMzMxMyBjNzJlY2RiMzNhZjc1NzkxYmM0OTZiZWI4ZmM5NzNhZGQ3MGFhZmNkIGxlZ2FjeS10cnVuaworMzMxNCA4NDY3YjExOTM1MGJlYmM2Nzg0ZDc2OTU0ZmY3Mjg3ZDZkOGZlYWE0IGxlZ2FjeS10cnVuaworMzMxNSAxOTRhZjA0ZDM0NGIwODA2Yjk0ZTAxMzIyYmI2ZDA2YTYwMTQ1ZDI2IGxlZ2FjeS10cnVuaworMzMxNiA2NWU0MTk5YTc5ODJmYjE5YWUxZWYzMmI1N2FhMTdkZjMxMWFlNmEyIGxlZ2FjeS10cnVuaworMzMxNyBkNDQ4MGMwODQ0NGRjNWI2MzY0NmVmMDRkMTg0M2Q2ZmMzYmNmMWQ0IGxlZ2FjeS10cnVuaworMzMxOCBlODJhYzQ1MmQ1NTFkZDdjZjk1MjNiN2UwY2QwYTBhMzBjODc2MmU4IGxlZ2FjeS10cnVuaworMzMxOSAyOWQyZWYwYzk0Yjk1MDRkYThmODA5MjU2NGM3YWI2YTk4MTgyODY0IGxlZ2FjeS10cnVuaworMzMyMCAyM2ViMjc3MzFkOWNiMzJhZDlhOTRiMTJlYTY4OGU0MjRkNzRmZTk1IGxlZ2FjeS10cnVuaworMzMyMSBmMGViNzdhYmYyNDQzNmJiY2Q3NDZjOTAzMzcwNjk0ZDcyMWFjZjljIGxlZ2FjeS10cnVuaworMzMyMiAxMjA1MThlZjM2ZTMzYTQ3YzI5NGFhOWUxOWI2ZjVmZjBiN2Q2M2I3IGxlZ2FjeS10cnVuaworMzMyMyBkZWRkNDRlYjczNWIzZjE2NTEyYjRlY2RmNjkzZWFhODBmNmQ3OWFmIGxlZ2FjeS10cnVuaworMzMyNCA1MjQ0ODI3ZGQ0MjM4MTdhODBiYTU2MjQwYjZlMzFlZTExOWQ4YjNkIGxlZ2FjeS10cnVuaworMzMyNSA5YjdmOTBmOWYzYzE1Mjk5NmViYTZjZTk0MGIyM2FhNzgxY2ZiOTNlIGxlZ2FjeS10cnVuaworMzMyNiBmYWM2MmJjZDNiYjhkZTFjY2UzZDY5ZjMxY2U3Zjc4YTNlM2EwNjczIGxlZ2FjeS10cnVuaworMzMyNyBlZGRjNTRiMWQ5YWI4YjY3NTk3M2MwNWZjODQzNTYxOTBmNTM0YzRmIGxlZ2FjeS10cnVuaworMzMyOCBmMDc4NGFlMWZmNWNhY2FmODY1ZGQ2ZjNiMTRlMDVjNTUyYmUwN2U3IGxlZ2FjeS10cnVuaworMzMyOSBkOTkwYzJiOGExZTZkMDliMDQwNmQ3Y2IzYjM5MWQ4OWFmNjFjOWRiIGxlZ2FjeS10cnVuaworMzMzMCBhN2NmMjBjODQ1YTNhNDZlNmMzNjU1M2IxN2Y1NWNjMTUxNWVjMmZjIGxlZ2FjeS10cnVuaworMzMzMSBhNDdlMGM5YmFhZDAwODI0OWNiOGQ1Yjc2YWUzYzEwMzIzMjk3NWUyIGxlZ2FjeS10cnVuaworMzMzMiBjMDFjOTVlZjFmYmRhODg0YjQwMDJmOGEzY2JlMWMxZDNjYTY0OTk4IGxlZ2FjeS10cnVuaworMzMzMyA1NzQ1ZTU1ZjJlMjgwZjEwOTg0YmU4OTJmMzEyMTBiNzE5YTFlOTlkIGxlZ2FjeS10cnVuaworMzMzNCBiYjU0ZmY0MTM0OGY4NzliZTE4M2YwYTU4NWNlN2RhODg2Mjk1OWUxIGxlZ2FjeS10cnVuaworMzMzNSA5YzFhZTYwN2QxMzUzODA2ZWFhYmI3Y2IwMTdjODY5NTc1ZjIyZTc0IGxlZ2FjeS10cnVuaworMzMzNiBlNzFiNjQ3ZmEzMzU2ZjUwY2Y0ZDI4NTRkMjZhM2Q1Y2VkYTNhZmMyIGxlZ2FjeS10cnVuaworMzMzNyA5NTUyMTJlZDUyZDM3Yzc0N2Y5NzZkZTE1NzE2YzEwOThhYmI0ZDRkIGxlZ2FjeS10cnVuaworMzMzOCA4NjA0YzM5NDk4MDlkNTEzMWYyZWQzMTBkN2UwNzE1YjQ0ODM4ZjQxIGxlZ2FjeS10cnVuaworMzMzOSA3MTdlYTE3Njc0MzBiYWRhODIxOTEwZjAwOGYyZjBhNzJjNjhkMjcxIGxlZ2FjeS10cnVuaworMzM0MCAyNzE1NGEyYjkyNDQwMjcwMzBjZTgzNDVlYTgzNTU0Y2ZkZGE2ZjVmIGxlZ2FjeS10cnVuaworMzM0MSA1MzNlMzZkZTFlNGRmNjE5NWM1ZmE1N2NlNWY0ODZiOWJlYWUxOTNjIGxlZ2FjeS10cnVuaworMzM0MiBmOWJiYjAxMzg4ZDViZjNjYjhlNzFhZjQxM2QzYmFlZWMzYmNlYWRjIGxlZ2FjeS10cnVuaworMzM0MyA5YWU2NWVlMDk3MzVkMDcyMmE2M2RiMzg4MjI4MmFlZDE5NzJhMzk0IGxlZ2FjeS10cnVuaworMzM0NCAxZDZjYmViMjcwOTYyNzJhOWNlZDM4MTVhZjFhMGNiNjExNmQyMmRmIGxlZ2FjeS10cnVuaworMzM0NSA5NTBjZDM3ZmNkZGM1NDc3ZGJjYjA4Y2YyMjhjN2Y4MDAxOTkxYTFlIGxlZ2FjeS10cnVuaworMzM0NiA2NGNmMTkxZDIxZDA4YzkzMTJmOTRhMGU4YWY1MGQxZTNjMjdmMDE0IGxlZ2FjeS10cnVuaworMzM0NiA2NGNjNTQzOWUxMGE2ZmRmOTg0ZWZmYWYwMTQxZTk0ZmE0Y2MxMDA0IGxlZ2FjeS10cnVuaworMzM0OCBjZjhkZGIyOWUyNmVkYWZhZWEwYjUwZmIyZjhiNGFiODUyMmUxMjM5IGxlZ2FjeS10cnVuaworMzM0OSAwZWZlZjk3ODVhMjVkN2Q5YWFlMjVlYTEyYTAwYWE4NDE2ZGFjMTkxIGxlZ2FjeS10cnVuaworMzM1MCA5NDdmOGEzNDdjNGYxNzg5ZThjODkzN2UxZDU1ZjRhOTM3Nzg5NjU1IGxlZ2FjeS10cnVuaworMzM1MSA2YTA3N2MyOTM5ODZjMGFkNzk3MWNiZjRjZTZjMTg0NjA3Yjg2ZjZmIGxlZ2FjeS10cnVuaworMzM1MiA1ODRjNDE0MmM1Mzc5ZjNhNTM3YjI3YTk5NTNjOTA2MmVmMmNhZjVlIGxlZ2FjeS10cnVuaworMzM1MyA4NDdjNDgzNTYyOGZhOGYxMWIzOGZkMjg5YTcxMjkyMmU0NjAzYjM3IGxlZ2FjeS10cnVuaworMzM1NCBlYThkNGNjZTc4MmJiZmFkZjBlMmM5MTVjODJkYjI2MmY0OTdjYTFmIGxlZ2FjeS10cnVuaworMzM1NSAzOGYwMDU0ZjQ0YTcxYzZmNzkwMWQ1YmYxMDQ1ZTUzNDljZTczNDE2IGxlZ2FjeS10cnVuaworMzM1NiA3ODQyODI0M2ZlYWE3NTIwOWRhN2Y5OTZkODA2ODhhNWE4OGRhMmZjIGxlZ2FjeS10cnVuaworMzM1NyBiN2FlZTc5OWRjNzE1YWQxYjg0ZmFmYWMzNWVhNzc1NWY5MDc3YjAwIGxlZ2FjeS10cnVuaworMzM1OCAzMTA1MzIwMTVhN2QzNTliZmU3NzYwYTU1YWM0MzhiNGVmMTA4M2I0IGxlZ2FjeS10cnVuaworMzM1OSBlMTIwOTM2YTBjODdmOTUxNWMxNDAxOGFiYmU2ZWQxYTFkNzM2MWYxIGxlZ2FjeS10cnVuaworMzM2MCBjZTY3ZDkxYWRmNWU3ZTA2NWRiMzVhYTBkZmRiZDM0NTkxMjRmZjczIGxlZ2FjeS10cnVuaworMzM2MSA2NzVhMDI4MjBkNjZlMTQwZTJhNTU4M2RmNjI5ZTgyYWJlNzU0ZjY0IGxlZ2FjeS10cnVuaworMzM2MiAyOTM3ODk3YTdkOGIwMzg3OTM2MDg0ZjQyNGM2OWFiNWEzMTNhMjhmIGxlZ2FjeS10cnVuaworMzM2MyA3MThmMWQ5YmNiNTA0ZjI1NWNmNzM2ODE5NzEzNWE4YWRmZDQ5NDk1IGxlZ2FjeS10cnVuaworMzM2NCBlODIyM2QwYjcyYWM1MTk2MGJmMDkzMWU5NmMwMmFjNTcxYzFkN2I1IGxlZ2FjeS10cnVuaworMzM2NSAwZDc5OWQzYzQwMzZlN2Y4YjE2OTUwMzdhM2U3MjgyNzE2NWJiNWNmIGxlZ2FjeS10cnVuaworMzM2NiBkMDIyMjFlYmFjMmFkN2M4YjA5MThkNzk2NThhYWRkZjY1ZGVkMjFiIGxlZ2FjeS10cnVuaworMzM2NyA4MzFkODJhYTRkZDA4MTg5YTE4ZjAyMDEzNzk1ZThjM2QyNWIxOTQxIGxlZ2FjeS10cnVuaworMzM2OCAzNTczZWY0MjFiZjQxMTA3YmY3MTk5ZTVlYWYxYjFiNDljM2MxODhlIGxlZ2FjeS10cnVuaworMzM2OSBlY2ZiYzI0NmVlYWExMGM0ODM0MzVjN2JkMjJmNjgwMWI2MzUxNmEyIGxlZ2FjeS10cnVuaworMzM3MCAzZDFmNzA4NzlmMDMwNDE0YmFkZDk4OWQyMDU1ZDI1NWNlM2EwOWMwIGxlZ2FjeS10cnVuaworMzM3MSBiNTY0YmQ0ZTU3ZTEzNTM0NDk3MDE5NTU2MTU5ZDVmNDdjYmI2OTg5IGxlZ2FjeS10cnVuaworMzM3MiA5YjE0YTRkODkyMDczYzYwODlkODJlYjlkY2JmNDM4YzkwZWI4YmNjIGxlZ2FjeS10cnVuaworMzM3MyA5ZmU3ODNjYTk3NmUyZjkxYWZlNzYwNjIxYzk5ZjQyYzg4ZWQzYTVjIGxlZ2FjeS10cnVuaworMzM3NCBiYmVmMjQ3M2U1NjhkMjkyODcxODEwZWM1NmJmNDM1N2NmZDA3YWY0IGxlZ2FjeS10cnVuaworMzM3NSA0MDY4NjBkZmFhYzc4YjYwODE0YThlNzYyMjFjYWFlYjA2ZmNmZmIxIGxlZ2FjeS10cnVuaworMzM3NiA1YTQxMDk0NDFlYWUwMDk1MTI1OGJjOGFjNjAxNjkyZWFiZmIwODFkIGxlZ2FjeS10cnVuaworMzM3NyBmYTZjZTdmNTNhYTUwMThhOTBlOTA2ZmFiMjZkZGJmNDQ3MGE4YTZmIGxlZ2FjeS10cnVuaworMzM3OCA0MTZhOGE4ODZhODJhYTJkM2Y1NmVhOWNlNWMyMzk4NGQ3OWMwMzhkIGxlZ2FjeS10cnVuaworMzM3OSA5ZDZjZjUyOWJiNzFhN2Y0ZmU5OTc1OWRkNjc3NzBmZmMwNTU1YmJkIGxlZ2FjeS10cnVuaworMzM4MCA0OTJmNWUzZTY0OTU1NThkNThjOGI5NmZkNWQ4MGMzNjdjYTk4MTNiIGxlZ2FjeS10cnVuaworMzM4MSAxZDdhNGVkMGM5ODVmNWVmODIyMzRiZjVmZmM5ODQ1OThjNDBiN2ZjIGxlZ2FjeS10cnVuaworMzM4MiA1MTIyM2NlOTVhNjE5ODY2MWM5YTI4MzMyMDgzODRjOTY5YzEyZWE0IGxlZ2FjeS10cnVuaworMzM4MyA2NGVjN2JkMmU4MzczN2E3M2ZjODhiOGIzMDMxMTllMGRiYzgxMGMyIGxlZ2FjeS10cnVuaworMzM4NCA4MmY0YTZhMTk2NGRlZjYxZWQwMjQxNjc1OWIxMjI3ZjQ0NzFlYmYyIGxlZ2FjeS10cnVuaworMzM4NSBhZDZkNWMxZWY1ZTYxYTI5MDA2ZWI1OGZmYzI4ODgyMGVmMTRiMzJiIGxlZ2FjeS10cnVuaworMzM4NiBjZTdhZThmODFiMDYxODI0NDEzMzhmYjkwNjVlZDVjMzJkYTcxN2I2IGxlZ2FjeS10cnVuaworMzM4NyA1YWU0YThjZjc5ZWYzM2ViNWMyOTk3MzNlMzY5MDgwMzc4NmMwNGQ0IGxlZ2FjeS10cnVuaworMzM4OCA3ZTI3NjU5ZWIyZDk2Njk4MWI5YjkyZmU3ZWE3NjkzMjc2MjkwNTQ4IGxlZ2FjeS10cnVuaworMzM4OSAyNzUzZTJjOWFhMjFjOWI2YWE4NGU5MDU2OTJiOTA2ZTlkZDFiZDFmIGxlZ2FjeS10cnVuaworMzM5MCAwNjU5YjYzZDYwNDQ3ZDYzMzZlZWQyY2E2OTk0MTM3NzIyZDBmZGRlIGxlZ2FjeS10cnVuaworMzM5MSAyMDI2ZWMwMGVmZGNmNDBjNzVjYzAzNTljM2NhYmZiM2IyYTNkZjJiIGxlZ2FjeS10cnVuaworMzM5MiBmMDE4ZDFkMGU5MWE1ZGY3N2I0MTk5MjNlOWU3N2UyZDAwMmIxMzdmIGxlZ2FjeS10cnVuaworMzM5MyBkY2U3YTRjYmFjMTEyZmVlNTg5YTI4ODM3YzMyMjYyMmI3NmI4Y2ZjIGxlZ2FjeS10cnVuaworMzM5NCBlMGY3ZmY4NWZhMDY1MzgzNzcxNDQ1Y2QzYjEwZDRlYWZmZDc3MWFkIGxlZ2FjeS10cnVuaworMzM5NSAyNjg4ZjliZWJkOWE1YTVjYWE2YjU0NzU1YzljN2U0ZDliNmI1NjNhIGxlZ2FjeS10cnVuaworMzM5NiBhZmNiYTg4YzZhY2I3N2RlZmQ4ZDliODdjNGFmZDAyZWE4OTM4ODllIGxlZ2FjeS10cnVuaworMzM5NyBiM2U2YTQzNWM0OGZlMjdiZGNmZThjOTU2YmE3MGNlZmY0MDI2ODBjIGxlZ2FjeS10cnVuaworMzM5OCA1ODZjOTI4YzY1ZDM0ZGU4Yjk3ZTkzMDM3MGEyNWIxNmMwY2Y3NTc4IGxlZ2FjeS10cnVuaworMzM5OSA4N2VkMDBhNjJkMzEwMTM4NTNjNWYzZDMwODA0ZDYzOWI5ZjZlOTcyIGxlZ2FjeS10cnVuaworMzQwMCA2ODA0MDZjNDE1MzkxNmViYjRkMmJiMWY0M2JlOTg3MzhlNjg4ZTBlIGxlZ2FjeS10cnVuaworMzQwMSAwNTU4MGUwMGY0MWUyYzc1ZDc5Y2ZlNjcwNGU5NmI2ZDA4MTVlNzBkIGxlZ2FjeS10cnVuaworMzQwMiBkNDI2YzVkNTkyNTRhNTAxNjRkNzk3ODJmNTM1ZDQxZTUzNDU5ZWFmIGxlZ2FjeS10cnVuaworMzQwMyAwYzY1N2RiMjdkYmY2NGY5Zjg4ODRlNzBmYjgzN2YyMzM2YTNjMzA5IGxlZ2FjeS10cnVuaworMzQwNCBlNjAzNGVkYzQ3YWU1YzJlZDc1YTI3ZTNjNThmNTY5MGQxZDZiMzIxIHVubGFiZWxlZC0xLjkuMgorMzQwNSA1YjhlYzhmNzExY2VmMTA3MDgxY2NmYmM0NDJmNDU2NWMwYjBkZDg2IGxlZ2FjeS10cnVuaworMzQwNiBhNzU5M2JhOTlkY2JhYmRlMjQxNjBlNWEyZjVlNzBiODZiZTdmZDdkIGxlZ2FjeS10cnVuaworMzQwNyBlNTU3MjRmYmMyYWY3YjBlMTE2NzE1MzkzZDU2MzMyYzg4ZWQzMzhhIGxlZ2FjeS10cnVuaworMzQwOCA4ZjI0NmM4OWRkY2ViOTdlZTc3ZmU2ZWZiOTBjOWI3NzY0MmY3OGY3IGxlZ2FjeS10cnVuaworMzQwOSA5MWE3NzA4N2U4M2YyMWM0ZTUyY2NhNjg3MzQ5NTUxODdmNTA4NTVjIGxlZ2FjeS10cnVuaworMzQxMCAxYTZiYTIzYWU0NDdhY2FlMGE1ZGE5NDM5MGNlN2NhYjk0OTgzODBjIGxlZ2FjeS10cnVuaworMzQxMSA5MTFiODAxN2RhNDZiNjMyOGYyN2M1NmRmZjFiM2EzNjFhNTYxNTMyIGxlZ2FjeS10cnVuaworMzQxMiA2YjNiNzVmMDdjYmI3YjgyNmUwYjYxNzNjZGM0ZmU5Y2U5MDkyNzAzIGxlZ2FjeS10cnVuaworMzQxMyA3OGNiMGFjY2ZiMGNlZjI5ZmZhMDA3ZmM5NDM4ZWJhOTQ3OWM2ODZkIGxlZ2FjeS10cnVuaworMzQxNCA5MWMxZjk0YjE3YmMxMTdhODFiZmY2YjEyNjNlNGMxN2JjNTFlZjc4IGxlZ2FjeS10cnVuaworMzQxNSA0OWE3YTNjM2Q4NTA4OWNmMDg5NDI4ZTU5NmU1NmU1YTNiZWQ0YmYwIGxlZ2FjeS10cnVuaworMzQxNiBjYTE3MjhjNGJkNzg4NDZmNjJkZjc4MDcyYTY3MDc4MzY5M2JmZjRlIGxlZ2FjeS10cnVuaworMzQxNyBjNGNkMGQ5ZDgyODFkYjUzMDk2NTAwMDcyYmEwNDdhMWQ3ZThiNDRhIGxlZ2FjeS10cnVuaworMzQxOCA2ODViMzFmZTg5YzYwZDAyNGE4ZGEwM2NmYWU0ZjVkYTgxMDBiNzE5IGxlZ2FjeS10cnVuaworMzQxOSBiYmNlYzI0YjI0Mzc3NmQ5YmE0MjM5MGI3NGQxMTQxNGMxN2JmMzNmIGxlZ2FjeS10cnVuaworMzQyMCA0OTYzMDEyM2EzZjM0MDM3ZThiYmZhMzFjZjVkN2RkOWJmYmIyNTgzIGxlZ2FjeS10cnVuaworMzQyMSA3YWE5NjEzZmZkMzYzMTM2MjBlOWQwMWQyYjlkZjIwNTY2OWUwZmVmIGxlZ2FjeS10cnVuaworMzQyMiAxY2FiYzJiNmM5NzAxYWVhMjliYjUwNmI1OTM5NDZlNjdiZjc1OTNhIGxlZ2FjeS10cnVuaworMzQyMyA2Yjg2ODhlNmE3ZWQ2ZWM1ZjYzNzIzNjljYmI3NjQ3M2ZjMWI3NTMzIHVubGFiZWxlZC0yLjMuMgorMzQyNCA2ZDgwZTFmOGY3MGE1ODBiNzg5MDdhZmZhNDU0ZmU1MTc2MGJhMDIzIGxlZ2FjeS10cnVuaworMzQyNSA0NWQ3MDg1MjExODgxOTU5Y2FhNTZjZjI2NTMwMDFiMjNlMWJmMzIwIGxlZ2FjeS10cnVuaworMzQyNiBiMTIwY2RkMzBmYmNhNTkxYTQ0NzNiZDExZGMwZTI5YmVlMTMxN2FjIGxlZ2FjeS10cnVuaworMzQyNyAyYzUxNWYwNzM2N2FkNDE0N2UxYWEzOWJiZTM3ZWQxM2MxZTIxNmNmIGxlZ2FjeS10cnVuaworMzQyOCBmODIwZTY5MTdmMDdlNTAxMmJkZDEwM2VmOTczODkzMThkNWExMGY4IGxlZ2FjeS10cnVuaworMzQyOSA2NWExZTRlOWNkNTQ2YzRlNTc4NzMwYTg4ZGRhZjIzNGJlNGQ0MDQyIGxlZ2FjeS10cnVuaworMzQzMCA2YzU4ZGMxZDJmOWQyMDhhOTEwNmQ0NDQ4YzI5YTlhNmI2YzMzODE0IGxlZ2FjeS10cnVuaworMzQzMSAxODExZTk2MDgwZDQ0MjJkZWViMTlmOTE5ZGVlYmM3YjZkM2Y0YmUwIGxlZ2FjeS10cnVuaworMzQzMiA4OWU0YjE2NjYxNzg5Y2IzNjhlNDhlM2RlOTExODY5ZTM5NGZlMTAyIGxlZ2FjeS10cnVuaworMzQzMyBkMDJjZTMwZDdkZGJjODdiZGU2MzMyMDlmZGFmY2IxMmJmYWUyOGI3IGxlZ2FjeS10cnVuaworMzQzNCBmNWY3M2M5NDYzYTg2ZDI2NzlhNjY5MjQ3MmE3YWJkN2UyN2E2MGNmIGxlZ2FjeS10cnVuaworMzQzNSAyODk0ODE4MWZiMmY3OTVmOGVmZmE1NjE0NDg2MzZhYjcwMTQ0NWVjIGxlZ2FjeS10cnVuaworMzQzNiAxNDM2OWE1ZTYxNjc5MzY0ZGVlYWU5YTlhMGRlZWRiZDU5M2E3MmUwIGxlZ2FjeS10cnVuaworMzQzNyAyOTE5YjQ0OGUzODU4YTEwOGU3NGI5NjJiNzQ4MDllMTc2MmFmNWJjIGxlZ2FjeS10cnVuaworMzQzOCA3Yjc0MTFmOWIxMTZmMDBjMjM0YTMyODZlMjZmM2NmYTY2YTBkZjcxIGxlZ2FjeS10cnVuaworMzQzOSA2OWEwNjZiNmIxZmY0YWY1MTE2MjY1ZDY5YTQxM2QxYmZjM2FkYzg4IGxlZ2FjeS10cnVuaworMzQ0MCAyYzc0OTYwZDZhZmVmMTM2ZjlhOGI0MTE3ZjVlMGFjNWJjZTRjN2NlIGxlZ2FjeS10cnVuaworMzQ0MSBiY2E3MWYyZTJjYjRlZTY2NDYxOGQwNTBjMTdmZmQ3ZjI4MDE2YTM5IGxlZ2FjeS10cnVuaworMzQ0MiBmNzZiN2JhOTlkM2VmYjUxNTIzN2VkNzQ3YmNjYjhkZTc0NDQyZTU5IGxlZ2FjeS10cnVuaworMzQ0MyA4NzE0NmRjMWY3OWM1YjdjZTk4MGFmOGFmNzJiYWMxZGNjZmNiOWYwIGxlZ2FjeS10cnVuaworMzQ0NCAzY2E0NTZmNDRiZjNlZjM2YTk3NGRkNzVlOGFkZGI5YzdiNWI3NGU1IGxlZ2FjeS10cnVuaworMzQ0NSA5ZTQyMDZmNjRkMWI1MTQ3ZmQwN2UzMjcxMjZiNmMyYmJlNjg5ZTFmIGxlZ2FjeS10cnVuaworMzQ0NiBhZjI3YTgzMDBkMjQwOTRhYWZhNmVlNzQ2ZGU1NTY3YmE5YmNjNDQ3IGxlZ2FjeS10cnVuaworMzQ0NyBjNjBjYjA1OWM0ODFlNGE5NGQ1OTQ2NDY5ZDQyOWEyOWFhZmY4YjVkIGxlZ2FjeS10cnVuaworMzQ0OCBlMDQ2NGU3MTE1Y2EyYmY5YzgwYzk1ZjQ0NmE2ZDY0ZGZmMjgzZjAyIGxlZ2FjeS10cnVuaworMzQ0OSA5MTgxZGE0MDY5NzhjODFkZWQxOTAyYjk0YTBjZDk2MmFkMzE5MGI5IGxlZ2FjeS10cnVuaworMzQ1MCBkYmNlNzJhZmUyNjE1MTZkMzU2M2NkMTcyMGZhYzIzNjk2OGRjYTczIGxlZ2FjeS10cnVuaworMzQ1MSA2ZDdmZGVjOWQ0OWUyODQzYjQ3YWU2MzQ1MGQ2MDlmMzQzNTc0NjU5IGxlZ2FjeS10cnVuaworMzQ1MiAzM2YzZDdlYmZjYzFiMDFlNzE2OWI3NjMwYWVkZDU3NmE4YzY3YWQ2IGxlZ2FjeS10cnVuaworMzQ1MyA2NzNkZDliYmRiZjE1MTFhZTkwMDkyNzAxYWRmOTIwYTc2M2EyNjMwIGxlZ2FjeS10cnVuaworMzQ1NCA5ZmVkNTcyNmEzNmQ3Y2UxMzU1YzMwNTkyODM4ZDkzMzIxZDU4MGVlIGxlZ2FjeS10cnVuaworMzQ1NSA0ZDI5MmM3ODU3ZDQ3NGZhZTVlYzkwOWVkZDQzNGJjZWQwOGI4MzY0IGxlZ2FjeS10cnVuaworMzQ1NiA3OTcxZmVjYmYyOGU3ZTFlMDk4YTc5Nzk2NGE2ZGMwMDNmOWVjNDg2IGxlZ2FjeS10cnVuaworMzQ1NyA1MTdkMjllYmM4NDBkZTQ1YjNjOTQ1NjA5M2Q4NDJhMWIzMWMxM2JiIGxlZ2FjeS10cnVuaworMzQ1OCA1N2I4MGI5OGI4ZTUwNzUyY2E0NTc3MDQzZDg0N2FjZGNlYTkwOTVmIGxlZ2FjeS10cnVuaworMzQ1OSBhYzNjODBhYmJmNDMwMDM0OWM1ZTZlMzM4NTMwYjI5YWUwZmEzNjA0IGxlZ2FjeS10cnVuaworMzQ2MCA2NzI2MWM3OTJmNGMxNGZiY2IxM2ZmYjBiNTFhODM2YzJhZDUxMzBhIGxlZ2FjeS10cnVuaworMzQ2MSA0NzczZDVjM2I1YTQ2ZGUwZjZjZmRiYzZjMDNjMTRkMjdlOTQ4ODViIGxlZ2FjeS10cnVuaworMzQ2MiBjM2QwOWY3NmQ2YmY0MzhmOWM3YjEzZmM2YjExNmYwYmQ1ZWY4MzkxIGxlZ2FjeS10cnVuaworMzQ2MyA5MjM0Yzk2MWVjNDNjYTI4NTdlMzgxMDMyNjcwZGU5NDUyYTVjOTg0IGxlZ2FjeS10cnVuaworMzQ2NCBkZWE3NDQyYzVmODdjNmUxZDBhMDlhZWY1YjFiM2VhYTg3Mjg4NDc0IGxlZ2FjeS10cnVuaworMzQ2NSAwNGE3ZjliZjFlNjcyYzRmN2RlNTI3ZTg4OTA0NWU2MzNkMGQwN2FiIGxlZ2FjeS10cnVuaworMzQ2NiBjNjRhZjU2NzFjYzY5NWU2MmIzNjRkNDMyMDIyMWY5YThkOGY2ZTU0IGxlZ2FjeS10cnVuaworMzQ2NyAzOWM3NjZhNmVkNWY5ZGFiMjI5NjRlOTFkMTI1MDc4ZDgwZjQ1OTRhIGxlZ2FjeS10cnVuaworMzQ2OCBjZWY1MTRmOTk3NGM5ODNiZGZhZjFlNmZmNjI2NTViYzY5OWQ0MTFmIGxlZ2FjeS10cnVuaworMzQ2OSBiY2E3ODU1ZDhlMDkzZjA5ZjU1Y2IwYTBmMmI5MTBhYjY3ZmUzMmU0IGxlZ2FjeS10cnVuaworMzQ3MCAyMDkwNTVlNWU0NmE0MGQyMjZjZmY1YzQ2MjM2YzgwNWM5MTI2N2Y0IGxlZ2FjeS10cnVuaworMzQ3MSA2ZTM3YWYzZjI2MWMzOWI5MmZlNzIxZGFiNDQyMGI5Yzk3NDFmNTFjIGxlZ2FjeS10cnVuaworMzQ3MiA5OWQ5ZTdlOWYzNzY3ZTg5MTQwMGJkMzhiMDRiZTE1NWRhOGIyNTJjIGxlZ2FjeS10cnVuaworMzQ3MyBjZmY3YzQ4ZmE5ZTE1Y2VjNjgwNTlhNzU5MDdhYmI0NDJlZWIzZjViIGxlZ2FjeS10cnVuaworMzQ3NCAxZThiZDM1NGI2NzYxMTJkOGIzYTg0Yjg3MmQ3MjdkOWFhNjNlMDRlIGxlZ2FjeS10cnVuaworMzQ3NSAwMmMwM2FmYzUxM2U5NWYzMTc4ZTk3N2VlMjBmMzY1ODEwODM4Yzc5IGxlZ2FjeS10cnVuaworMzQ3NiA3NDdjZTdlMzYwODQ0YTMzZWMxYjJhZWJiZTg4YmE2NTQwZTBmMmFkIGxlZ2FjeS10cnVuaworMzQ3NyAwODMwY2YyYmUxZDJjNTkyN2NjMzNhZTQyZGY4ZGM2ZDk3NmU5NzY4IGxlZ2FjeS10cnVuaworMzQ3OCAyZjY5MWRjNTRiZmE2YTg4NTVhNjQyOTQ0ZWVkNzQ4YzYyOWVhOGQzIGxlZ2FjeS10cnVuaworMzQ3OSA2ZWUzODAzNDljODQ5MDIzMjk3N2Q1MWJlMjk4NGZjNTY3NDNkMTEwIGxlZ2FjeS10cnVuaworMzQ4MCA5MThiZWU5MGY3M2UxNTIyZTE3NjY0MTk4NDkxNWE4MmZmZGExZmI4IGxlZ2FjeS10cnVuaworMzQ4MSBhY2RjMGI5YTZjNzg0OGE2OTM3YWI3OWNmZjRkOTBhNTU4ZGQ4OWM1IGxlZ2FjeS10cnVuaworMzQ4MiAyZjNmMjkzZWY1ZjE1NTk3NjkwMDcwY2RlOTUxMWU5NDg4YjdkZTUxIGxlZ2FjeS10cnVuaworMzQ4MyBlYzMxMmI2NDdmY2JmYTg5OGZkZGE5NzQ5NGI3NjNjYzhjZDZiYzMwIGxlZ2FjeS10cnVuaworMzQ4NCA5MmU2YThjZjE0YmVlNjU1NjVlZjhhZDZlOWJiMTlmZDg3OGQ5MzUxIGxlZ2FjeS10cnVuaworMzQ4NSBjZDM5NzI2NmRjMWM4ZTFlMThkMDJmOGQ5ZmU5MzQyNTdlYjM2MDlkIGxlZ2FjeS10cnVuaworMzQ4NiA3ODc0MmIzZmRkNDRiYTkwZTI3YzNlOWUxYWM5ZTRmYmMyOTYxNTNkIHVubGFiZWxlZC0yLjE2LjIKKzM0ODcgOTA3YzM5OTZiMTVjMmM4NTU0YjA0MjFjM2MxOWU2OWJlZmUyNTQ4ZCBsZWdhY3ktdHJ1bmsKKzM0ODggYTgwNjc3Nzk4Zjg0MjA0YjFmODM1NjBjZjEwOGU2MTRiYWI5ODVhOCBsZWdhY3ktdHJ1bmsKKzM0ODkgZjNjOTA3ZWZlNWQ3MTAyMDJiZTY4ZjZkZDQ1YTU4YTJiODMyNmE4NiBsZWdhY3ktdHJ1bmsKKzM0OTAgZmU3NjU4NWM3NDhlOGVhM2Q4MmRhODY2Y2U2YjZlMmEwNjE5NjNjNiBsZWdhY3ktdHJ1bmsKKzM0OTEgNzE2YmU3NjVhNzliMmJjNmQzMmQ2MTNlZTM5MDk3MTUwYTdiYzZiZCBsZWdhY3ktdHJ1bmsKKzM0OTIgMjVkMWM5OTMyNTU4MjJhMDczNzZhNGI2NzIyYjZiZTg2NTYyMDhiZiBsZWdhY3ktdHJ1bmsKKzM0OTMgZTVkMzYzNTQwMTc5ZjllNmM5N2YxYThlZWYxYzFkMjhhZTc3ODk1NiBsZWdhY3ktdHJ1bmsKKzM0OTQgOGEzNTc0YTA3YjE4NWQ1YmMyY2QwZDM5OTM5OGNlYWNlNzRjYmE0ZSBsZWdhY3ktdHJ1bmsKKzM0OTUgZTJkZWNhOTgzMDA4MmI3MDM5Y2Q4NGI1N2M4MDFjMTRjOWRhM2RjOCBsZWdhY3ktdHJ1bmsKKzM0OTYgNTE5YzI1MDM5YzZhNDU4OGE3ZGRlY2YyYWFhMGFlMzhlNGU4MzBkOCBsZWdhY3ktdHJ1bmsKKzM0OTcgNDA5ZWE3NGZlYjIxN2MyNGM5NDRjNzNjNDE5ZmQzNjNhMjVjYTI3NiBsZWdhY3ktdHJ1bmsKKzM0OTggMDc5MDA4MzRjYzk3ZDFiOGRmMWMzN2E3ODFmYzRjMWM5YjgyNTI1YyBsZWdhY3ktdHJ1bmsKKzM0OTkgZTVmYjljZGJlMDUwN2JiMzFmNDYzYmUyYzRhMTA2NDI0NmEzN2ViZiBsZWdhY3ktdHJ1bmsKKzM0OTkgNzhhN2VkNjk1MzAyNWU3ZWNkZGU5NTg1MDk5YjAxYTZhZTQwYjc2YSBsZWdhY3ktdHJ1bmsKKzM1MDEgZjM4NDhmNzRiMjgyNzk5ZjM0YTAzOGQxYTI4ZGNhODhjN2NlNjg4ZSBsZWdhY3ktdHJ1bmsKKzM1MDIgNDE5MmUyNGVjNTYyZDFlMDliMzg4Y2VlNzJiODFiMjA3Y2RmODM5ZCBsZWdhY3ktdHJ1bmsKKzM1MDMgYzQ0NTQ1ZTU5NWExNWNjMGIyMTg2MTNiY2QxZWEyZGRiMGYzZDQzZiBsZWdhY3ktdHJ1bmsKKzM1MDQgZjhmNjRjYmQ5ZmI1YTE5YmIwMDY1MWI5ZjU0NzQ4M2FhYjkyOWM2MyBsZWdhY3ktdHJ1bmsKKzM1MDUgYWFiMzBiNzRjZjZhOGRmMjc2MTExZDc3OTRlNDM3NDQ1OTJkNTE5NyBsZWdhY3ktdHJ1bmsKKzM1MDYgZDIwN2JlZWRjODZkNjhiYmYzZDllZDlhYzJlNmQ0MjZiMzQ5MmVjMyBsZWdhY3ktdHJ1bmsKKzM1MDcgNjY4ODUzZDdiNjRiY2JhNDQwOTk2NDk4MzJiYzFiMDgxYWE3ZWI4OCBsZWdhY3ktdHJ1bmsKKzM1MDggMTNkMGZkZTQ4ODMyNjNiYzZkNTI1YWM2MzY4OWE1NThiZjIwNjMwMyBsZWdhY3ktdHJ1bmsKKzM1MDkgZjM3OTFjNGZiNzI0N2IwOGVkNjE2MWJkYjU4YTk2OGRkYzA2ZDExYyBsZWdhY3ktdHJ1bmsKKzM1MTAgZDBhNWMzMDBlYWFmNWVjM2MxMDFlODlmZjMxMjcxNGE0YzEzYmQwNiBsZWdhY3ktdHJ1bmsKKzM1MTEgMjc5OGQ4NjAzYmYwMjg3M2RlODA1MGVhYzVjOGQyNzM0MGU5ZWYwNSBsZWdhY3ktdHJ1bmsKKzM1MTIgZjQxNDMzYzk4YzVlYjAyZTg4Y2FlOTk5OGQ5M2MyYjg3YzkzOTRjNyBsZWdhY3ktdHJ1bmsKKzM1MTMgNWQwYjI3ODFlMjNiNDBhZjU3YWM4MTJjNWU1YjJmNGM0YWQ5NGYyMCBsZWdhY3ktdHJ1bmsKKzM1MTQgYTIyYTM1MGQzYTVkZDNjZDAyNGQ2OGNhY2QyNWYzYjkxNmM4NWJiYSBsZWdhY3ktdHJ1bmsKKzM1MTUgNWVmYTc2Y2ExN2YyZWQxMjhjNjgyMzMyNzA1OGM4YTM3YjljNDQzNSBsZWdhY3ktdHJ1bmsKKzM1MTYgYTNhMDI3YzQ5ZWIxM2MwNjgwZTMzZjExN2IxZTVkODMyNGRjNDIzNSBsZWdhY3ktdHJ1bmsKKzM1MTcgZDljYjU1ZWYzNGUyZTUwNGIxMGZlYTBkODQxNzkyMDVkNzg5MDJlOCBsZWdhY3ktdHJ1bmsKKzM1MTggZTE0OWM3N2QxNzNjYWFkYzAyZGZiN2I1ZjU0N2IyNGI3MjRmOTJlNiBsZWdhY3ktdHJ1bmsKKzM1MTkgNGQxYTE1ZmM0NzQ4ZDZkOTBkNGNlYmU1NjIxMGFmNGM0OGNiYTkwYiBsZWdhY3ktdHJ1bmsKKzM1MjAgYTYzNTVjODM1NzhkOGQzZThlZjk4ZTQ5ZTA4ZTYxZmE5NTZiOTQ0ZiBsZWdhY3ktdHJ1bmsKKzM1MjEgZmNjZDQxNWUyZWI4Y2QwYWE1YzFhYTNmYzE4NmUxY2ZhMzc4ODk1YSBsZWdhY3ktdHJ1bmsKKzM1MjIgMmI1NGNjYzg1MmU0MDRhNDE3MmJjN2VlY2M4OGVlMTAwOTVhOWI5YSBsZWdhY3ktdHJ1bmsKKzM1MjMgMDQzZGExOTMwMmVmMjQ0YmY1NzIxZjIxODZjYTI3OWJjYmNkOWEwNSBsZWdhY3ktdHJ1bmsKKzM1MjQgMmZhYzIwOWUxYzNmNTUyMjEyZDI5NmUxNTcyNTE1MjhlNDRkMzA0OCBsZWdhY3ktdHJ1bmsKKzM1MjUgM2UzM2NhNTRmYmRjMWMzMjYxZGQ4ZDY4MGRmMWQ1ZmEzZjA2YWQ3ZSBsZWdhY3ktdHJ1bmsKKzM1MjYgNWQ3NGE5ODczNTg5Njc0NTBkMTkyYmUwOGQyNTljZGFlOWRjMjAwMyBsZWdhY3ktdHJ1bmsKKzM1MjcgMTgwOGNhNWQ4ODgzMDk3YzcyYzZhOGE4OTE0MzA0MWMyMGVhMTNjMSBsZWdhY3ktdHJ1bmsKKzM1MjggN2NkNTMzY2YxOTRhOWRiZWFlOTBiODc2OGZmNWRkMmVlMzNiZjNhOCBsZWdhY3ktdHJ1bmsKKzM1MjkgNTYwNDA3ZWM2MzJiOWY2ZmNlYmY4OTc1NWYzODNkMWViNDcyZTRhYSBsZWdhY3ktdHJ1bmsKKzM1MzAgZTFjNDczZjkyOWM0NzI2NDdmMDIxMGZhNjhiZmM2OGE5MDUwMjMwZCBsZWdhY3ktdHJ1bmsKKzM1MzEgMTMyNjAyZDg1NGQ4YzQwZjRlNDkzZTlmYWE0NmY2MjdlYzY0MTEwNiBsZWdhY3ktdHJ1bmsKKzM1MzIgYTVmYzEwNDg0OWFhMjFmNjMyMWY1ZDk5N2UzYTM3ZmI2NWE3ZDlkMyBsZWdhY3ktdHJ1bmsKKzM1MzMgMjg3ZmMzMmMxZDljM2ZiMmYyMjFkY2IwNTZhMjUzOTI5YmUzMDdjYSBsZWdhY3ktdHJ1bmsKKzM1MzQgZWU0YTJmODkzMjU0ZGQ0MGUwMWMyN2RjYjYxYTUzOGQzOTM0NzBlMyBsZWdhY3ktdHJ1bmsKKzM1MzUgNGM4ZTVmY2IzMzAxNTlkZjM3OGYzN2I1ODMyODlmYWZhYTVkOWRhOSBsZWdhY3ktdHJ1bmsKKzM1MzYgODllMWU1ZDljY2JmMDNkOTQ4NTBmMjE2YzQxOWQ0YzE1OGM1NjU4NSBsZWdhY3ktdHJ1bmsKKzM1MzcgZjllNWEyODIzNjc3N2U1MGEzMmYxMGRiMTkzODkwYjE5YWY0MmNiOCBsZWdhY3ktdHJ1bmsKKzM1MzggZmFhZjM4NDNiOGJkNWQxYTZmYjdjMzM1N2EwZTQ4ODAzMGEwNjRlZCBsZWdhY3ktdHJ1bmsKKzM1MzkgZjdjNjA2MTAzZGQ1ZWQxZWVhM2U1NzMzZWVmMTc1NTYxMzEwMDhlNCBsZWdhY3ktdHJ1bmsKKzM1NDAgN2JlN2E3ZTBjNDY1ZTc2ZThkOTdlNTQ1OWQ1ZmU2MzhlY2Y1Y2ZlNSBsZWdhY3ktdHJ1bmsKKzM1NDEgODlkN2Q1ZTEzNmFkZGNlN2I1OGU3ODc1ZWUyOGM0ZjI2ZGRkM2ZmOSBsZWdhY3ktdHJ1bmsKKzM1NDIgZjNhMzI1NjYyZDM5YzYyYjA4Y2IwNDFiNGQzMDc3OTM1ODliNWE3OCBsZWdhY3ktdHJ1bmsKKzM1NDMgMTA1ZDMzMmMyNzdjNjUxOWExMjgzNmUyOWVmMzUxOWY5Yjg2Y2FhYSBsZWdhY3ktdHJ1bmsKKzM1NDQgMzU0M2NlODhhMzFlZDg1ZjJiMWRhNTJlMjk4MjMwMjRkYzU2MmEzNSBsZWdhY3ktdHJ1bmsKKzM1NDUgYjAzZDAwZTI0YzNjMWEwNTdmODNjNDU3ZTdmN2E2MjVkY2IzYzJmNSBsZWdhY3ktdHJ1bmsKKzM1NDYgNzEwYzZiMTNlODc1MDgzYTY0MmVkNGU0MmVmZTY4ZjkzOGE2ZDQxNCBsZWdhY3ktdHJ1bmsKKzM1NDcgYTRhYTgzMDEyYWYzYjIzZmFhZWMyYzA5YWEwYTZlOTUxNjc2OGIyYyBsZWdhY3ktdHJ1bmsKKzM1NDggYzAyYjNmZTBiMzNjMjU5ZWZjZGYxZjgyMzY5YWY2NDExODE1MGNhNSBsZWdhY3ktdHJ1bmsKKzM1NDkgYTBhMGM3NmY2ZWY2YThjYjU3ZThjZDc0MDdiMDAxZTM4OWVmYWUxZSBsZWdhY3ktdHJ1bmsKKzM1NTAgYWU0ZTkwZmE4YmNhNTIxODk0YjcwOGE5ZTA0ZDAwZTQ1NTQyMmIwMyBsZWdhY3ktdHJ1bmsKKzM1NTEgYjJjN2FhYmZhOTEzYjliYjJmOWYzMTc4NWIxZWY2NDlhMmY1Mjk0MyBsZWdhY3ktdHJ1bmsKKzM1NTIgMTU4ZjBkOWNkZDQwZjUzNWRhOGY1ODcxMjFhZTcxMzRlZDYwOGI1MCBsZWdhY3ktdHJ1bmsKKzM1NTMgNWEzMGE0ZTA1NmU3Y2MzN2Q3MmYxMGFkZTEyMzQwYzg0YTg4Mjk2NCBsZWdhY3ktdHJ1bmsKKzM1NTQgZjk5MmFjMmEzOGQ1YzdmM2ZjNWE0NzMwN2I2MGVkYjMzOGQ3MzNmNCBsZWdhY3ktdHJ1bmsKKzM1NTUgZGNlM2MzMGNkNzI3ODdhNzQzZGI3YTg3ZTQ2MTY5N2IyOTlmYmQ2NCBsZWdhY3ktdHJ1bmsKKzM1NTYgZTk5YzIyNDkwYmZiZDRlMTc1YWIwOTQ2ZTBkN2M5OTdmOGYzZWRkNyBsZWdhY3ktdHJ1bmsKKzM1NTcgY2ZmZThkNmIyZjA5YjdlZWQxODY3YmQ3MzkzMDVhNzZmNDA5MWNjZCBsZWdhY3ktdHJ1bmsKKzM1NTggN2MzMjQ1YzE4Njc3NGI4NDQ0NTQwYmVmNmQ1MzkzYTM2MDE5NmVkMyBsZWdhY3ktdHJ1bmsKKzM1NTkgMGZmZmY0MGQxM2ZmNDcwZTM5MWU4NzE5Y2QyNWFiYzUzZTM1NTRiMCBsZWdhY3ktdHJ1bmsKKzM1NjAgN2Q2YTJkOTUwZjEzYzc0MDc4NWM0ZmFmMjAzMzFiNTZhYTYxYmZmZiBsZWdhY3ktdHJ1bmsKKzM1NjEgOThmNTFmNjFjYjRiNzZhZmY3N2Q1ZDBiYzJlYWI1YTlkMzY5YmU0ZSBsZWdhY3ktdHJ1bmsKKzM1NjIgNDIyOTI3NWRlYzMyNjEwM2E4ZGI0ODY3Yzg3MzczNWIyNjBjNjRhZSB1bmxhYmVsZWQtMi4xMC4yCiszNTYzIGJlNjFlMDcyYTUwNWI5ZWNiMGY5N2Y3ZTFiMGQwOGE5ZmVlMWNkMmMgbGVnYWN5LXRydW5rCiszNTY0IDRhMjg2YjMwMGI1ZWZjYWYyODFmZGJlOGI1MzI2YjE5YWQ5OGZjYzggbGVnYWN5LXRydW5rCiszNTY1IDFjZTJjMGY1NjVlZjNlNmJhZjQ0NGM4MjhmZjcyOTIwOWJjOWQxM2IgbGVnYWN5LXRydW5rCiszNTY2IDFkODQxNTg3YWVkZWIwNzFhOWE1OGEyOWM4NzBhYzhlMTE4YWZmNzcgbGVnYWN5LXRydW5rCiszNTY3IGNjMTcyY2UwNTU2MWFmMTZhYTA1YjIxNWEwN2Q1MWYyY2JiY2M3ZDMgbGVnYWN5LXRydW5rCiszNTY4IGFhYzgyMzFhNzE1YzdjZTQ4NzdlYWU2ZmJjOTgxZWRiN2JjMzI3ZTYgbGVnYWN5LXRydW5rCiszNTY5IGNkNTk4OWE1OGJjZmUwMzIwZGRkMmIxNGM0NjlmN2MyYjVhNGM0OTEgbGVnYWN5LXRydW5rCiszNTcwIGFmNGUyNzFkMDdiMWRkMmVlNWE3MDZjZGJlYTZlYmViZjk0ZDgyZWQgbGVnYWN5LXRydW5rCiszNTcxIDYyNzg5MzNkMDJlMzhiYjhhYmRkYmM3NTQ2NzNmNzk2MTdkMWJmODggbGVnYWN5LXRydW5rCiszNTcyIGM4MTQ5Mzc4ODBjYzNjYzAwNjc2MDgyY2M4YTliNGE0ZTVlOWQ3OGMgbGVnYWN5LXRydW5rCiszNTczIDkwYzVlMmJiNGRhNTViZWRlNmU3ZDhkZTQ0ZTZhMmIwYmNkZTExY2QgbGVnYWN5LXRydW5rCiszNTc0IDQ3NDgyM2U1ZjdkYzEzYjk2ZDVmZDhlYjljODA5Y2NlOGFhOTA0NjcgbGVnYWN5LXRydW5rCiszNTc1IGE1OGMwNjFiNGY1NTUyNTE3N2Q2N2ExNTJlN2UwZjhmOTNmNGZlYTcgdW5sYWJlbGVkLTIuMS4yCiszNTc2IDJlMGE4YTNlZWY0YThmOTc1YjBjMTI2NzEzNTJkMTI1NzdkNjM2YmIgdW5sYWJlbGVkLTIuMS40CiszNTc3IGI5ZmNmYjk5YTNlNTRiNmY3NjYzNTA4ZDEwZTBkODA4NzgxYjlmN2MgbGVnYWN5LXRydW5rCiszNTc4IDE4ZGY2NzQ1MzlkYTU1MzA1ZjZkMjZjMmRkNDYwMzA2YTBmZjJjMzMgbGVnYWN5LXRydW5rCiszNTc5IGY1YjFkZGZkZGJhODMzYjMxYjZhYWY2MWQ4MTEzMDQ5ZjA0MjM0ODUgbGVnYWN5LXRydW5rCiszNTgwIDMxNTI3MmVjNGQ1YjYzZDVlZDJlNWY1ZjAzYzhmYTExZmZjZDYzMGIgbGVnYWN5LXRydW5rCiszNTgxIDE2OTFlYTVkOWQ0YjViMzQ0MTk3YTMzNmM3MzIxYzVlYTNiZTkyNjUgbGVnYWN5LXRydW5rCiszNTgyIDAwZjFlODg2NGRjY2RmZTYxNGQyNGIzZWMzNDQ1ZjNlNGFjYmM5MWQgbGVnYWN5LXRydW5rCiszNTgzIGM5MTRiMTBiZjJlZDc3NWMwMzJkNzRmNWFlNDVlMDQ3NjYwMGJhMjQgbGVnYWN5LXRydW5rCiszNTg0IDI0OTE3NzRlMzZhOTBjYmI1Y2ZlMjYzNDMyYjFhNzZkMmQzYWExMTkgdW5sYWJlbGVkLTIuMjUuMgorMzU4NSBmNTUwMzFkNTQ5Yjc5YTZiZWIwN2MzMGJlMWRmNTNmZTQ3MzQ0OWVjIHVubGFiZWxlZC0yLjI1LjQKKzM1ODYgZWQ1MjJjOTQ4ZDQyOGMzN2FlMGU5ZDU4ZTRjOWU5ODUwNmRjNzYxOSB1bmxhYmVsZWQtMi45LjIKKzM1ODcgY2FkZWI3OWMxMzJmNTUwMmNlZmY5MjMxMjAyMDc2NjBkOWIyNTcyYiB1bmxhYmVsZWQtMi45LjQKKzM1ODggMjg1MmVkYjRmZmZlMGVjMzc4OTVmMDMxNDEyM2UwODQ1ZjhlYzBjZCBsZWdhY3ktdHJ1bmsKKzM1ODkgMDY1NzA0MjlmMDYyZDMxNGQwYjg2ODIyZDFhM2NjZGE1MzQ2ZTIwZSBsZWdhY3ktdHJ1bmsKKzM1OTAgZDZmNmExY2I3ZDc5ZTliMTk4ZmMxNTgzYjI4NjljOWU5ZjQwMDgxNSBsZWdhY3ktdHJ1bmsKKzM1OTEgZjdlZGZhNmQwZGNiYTQ4NzJiZjQwODRmNmI1NzRkM2VhMTE4ZGQzNCBsZWdhY3ktdHJ1bmsKKzM1OTIgYjFiYjc0YTJiNTkzMGU5YjRmYzc4ZTliNTVmNjY5MTU5MjEyYWJkMCBsZWdhY3ktdHJ1bmsKKzM1OTMgMjA0MDAxZGRkY2MzMmUzOGUxMzY5OGQ4ZDJkZDU5NGNjNmQyNTg4YiBsZWdhY3ktdHJ1bmsKKzM1OTQgZDJmOThiZWVjODVjZjIyNGM4ODI5OGEwZGI2ZGU5NWQ3YzI5ZTQwNyBsZWdhY3ktdHJ1bmsKKzM1OTUgZmU3Mjk4ODEzZjE3MTRiNDdmYTJiOTMwNjcwNmZmMzVmODNhYTRkNyBsZWdhY3ktdHJ1bmsKKzM1OTYgOGE5MGM5YmJiZGYwYzlkNzFhODM0YzJmMzkxOWFjMDQwNTEyZGU3NSBsZWdhY3ktdHJ1bmsKKzM1OTcgMGIzMmVjOGEzZTIwODIxZTY0OGVlMWU1Y2E5MTM5MTg3ZDAwNmJjNyBsZWdhY3ktdHJ1bmsKKzM1OTggYTJmMmE4YmQ1NmY5YmZmMWE1MjFhNmNjNmVkOWQwNWYyMDQ3Yzc1MCBsZWdhY3ktdHJ1bmsKKzM1OTkgNzJiZGRmYWQzNTFhOWEyMjBkYjI0NTA0ZGFiYTBhNjhiYWQ4MjhmMSBsZWdhY3ktdHJ1bmsKKzM2MDAgYzg4N2ExZjMwNTI1NWQxYWJmYTZmZTZhZWZlYTY4ZjNlNmQ2ZDFlYyBsZWdhY3ktdHJ1bmsKKzM2MDEgODcwMWI5MzM4M2FiMWRkZTkxOGViN2M2Y2Q2ZjAyZTUzYjk1YjkwNSBsZWdhY3ktdHJ1bmsKKzM2MDIgZjdhNzUyZmI3YjczN2QxZjBlOWNiNDVhOGIwMjEyNzZiODk2NjIyYiBsZWdhY3ktdHJ1bmsKKzM2MDMgYWRhNTZiMDc2NWMxNjcyZDlkZWQ4MDdmNjMxNjVjNzc4NWI1NDUwNSBsZWdhY3ktdHJ1bmsKKzM2MDQgOWM3MDdkOGNmMGM4ZDE2ZTZkODY5ZWZiNjNhNmU4Mzg4MWRlZjc3YyBsZWdhY3ktdHJ1bmsKKzM2MDUgZDcxNjhjYzJiZTA3ODMzZDBhMTVhMDZmYTk0NzQ2YzU5MzNmMTkwMiBsZWdhY3ktdHJ1bmsKKzM2MDYgNjQwYzM2YjY0ZGVhMWNmNzJmZWU0MWY1MTE5YzA2ZDUzNDg0ODMxMSBsZWdhY3ktdHJ1bmsKKzM2MDcgNWNhZTc2NTMxNzFiNDRhMTlkNjVhYjYxMzhmNzE4MTU0MWNmNjdjNCBsZWdhY3ktdHJ1bmsKKzM2MDggNDZjMjE3MzM3YmRlNGY1NDk5ODkwMTRlMmZhZmE3ODY0NmQxM2ExMiBsZWdhY3ktdHJ1bmsKKzM2MDkgNTYwZWM3MDMwODE3N2I0MzkxYWZhMTcxZDYwNGRmMzFlN2UzNDQwYyBsZWdhY3ktdHJ1bmsKKzM2MTAgODlhNWNlMTlkMTNhZjIwOGVhMTJmNWU2ZTAwMWRmMGMyNGE3YTVkYyBsZWdhY3ktdHJ1bmsKKzM2MTEgZTQ5OTExNmQ0NWU0OTE5ZGM0NmQ3NTJiMzg0OTY4MmRlODdkZDI1YiBsZWdhY3ktdHJ1bmsKKzM2MTIgZDdlMzg0MmIyZTdiMTBmZmZiMDRmNDFlYmNlYWM3MDE1MDEyOTE2ZiBsZWdhY3ktdHJ1bmsKKzM2MTMgZTQ2MzIyYTMxZjYyMmJhMWM5ZDA0NDliZmQwZjdkYTNhMWRkNjA4YyBsZWdhY3ktdHJ1bmsKKzM2MTQgZDgyYzJiYTRmODE4N2I1MDBiZTZkZDYwNGRjN2VlM2ZjMDhlNmIwZiBsZWdhY3ktdHJ1bmsKKzM2MTUgY2QzODI0NTZjNTcyYmJhYTIwNTUzZTliMTExMjRhM2VkMTZlNzBjNSBsZWdhY3ktdHJ1bmsKKzM2MTYgMjhjY2VhYmY4Y2NlYzY4MmFjNjczMThjMjNjZDg4NzNkMWY3OGIzZiB1bmxhYmVsZWQtMi4zNi4yCiszNjE3IGNiZjI4ZDY1NDY5ZjUwNjI0OGIzMmFjNGMyMmI4MzQxNmQ2MTNhNzggdW5sYWJlbGVkLTIuMzYuNAorMzYxOCA0NzQ5Yzk1NzQ2NmI3N2YxMDgwMTk5ZWM2ZDk3MGYzODY3Y2FjYTE3IGxlZ2FjeS10cnVuaworMzYxOSAyZWMwOGE5ZDAzMjU1MjEwNmNiYmJlYTZjZDBhMDE4YmRhZjc5MDIwIGxlZ2FjeS10cnVuaworMzYyMCBmMmQwNDA1NGM5MzQ2YTM2NDVmNmQxNTNmZmNjODVkM2ZhNTJjNjZkIGxlZ2FjeS10cnVuaworMzYyMSA5MTMzODA2N2Y3NTAxZTNlMWQ5ZDYzODg0NWJhZmJhOWY3OTZhY2U4IGxlZ2FjeS10cnVuaworMzYyMiA5ZmIwZjFhZmIzNGNkM2E4N2ZjMzQwNGIwMDNiNGI2ZTM5OWUyZTUzIGxlZ2FjeS10cnVuaworMzYyMyA0ZmY2MDhjNGNhY2FlMGMxNDc0YjQ5ZjQ4YjQ1YjM5ZDczZjM5YzI1IGxlZ2FjeS10cnVuaworMzYyNCAzMjhmNDQ2ZDIwMTY3NjA2ZjhkMjYyYzA0MzRhMTA4YjU1YWNjMjQ5IGxlZ2FjeS10cnVuaworMzYyNSBhZTkzZWM0ZGQ1NTYzNjliYWZhYjM5YzRlMGE4NjUzZGM3NzQxNGYyIGxlZ2FjeS10cnVuaworMzYyNiBkOGNhMGU5MTNjNDQ0MmE2YjRjZDYzMjIzMjY4OTVkNzY0NGE5ZGM4IGxlZ2FjeS10cnVuaworMzYyNyBhODkzMmE0Yjk2MjRkOWJiZDI1NTQ5ZDJhNTI2YzEwNTk5OWEzY2I2IGxlZ2FjeS10cnVuaworMzYyOCBhNWE0NjU0YzMzYmU1YjM5Nzc2MTk0MDM2MTk2ZTMzMmU0OTlhZTg4IGxlZ2FjeS10cnVuaworMzYyOSBkNzczYTVmODk0MjY4NzlkYjJmZWJkMjU5ODkxMjMzMWNkOGJmMzNlIGxlZ2FjeS10cnVuaworMzYzMCAzYTVmMmYxMTBmNzA2MmI5ZTI2NTEyY2ZlZDQ5YWMwMmFlNjI0Yjg2IGxlZ2FjeS10cnVuaworMzYzMiA1MDEwMWViNjMxMWIwNzdjOWQ5NjczMzY5NDI0MmE0MWY4N2Y4ODZlIGFscGhhMTAwCiszNjMzIGIxOGViMmY0YWYwY2YzYzU5MmVjMjNjNmZmMzdjNjhlOTY1MDgxY2UgYWxwaGExMDAKKzM2MzQgMWNlYTlkODBhMmJjMWNlNGIxZTFmNjA4ZmQyNmQzMDA1ZGNiZjRmNCBhbHBoYTEwMAorMzYzNSBkOWQyMTM4MmM3M2I5MmMxODFhMDJjYTNhMDQyMDk0YWYyMzNhMzkzIGFscGhhMTAwCiszNjM2IDViOTcwMDQ3YTcyMmMxNmUxMjZmNzJlMDVmNTFjYTRkZDI5NTU1YTggbGVnYWN5LXRydW5rCiszNjM2IGVmNzNkNDBhODI3OTUxYzlkYTdhMzJjYzhkYmUzODYwMGZmZWM3ZGIgYWxwaGExMDAKKzM2MzcgMjkyYzVlNzkyNjRkZjI2NjgyNTZjNjllNGU4NGJlOWQwNWY5NjFmYyBhbHBoYTEwMAorMzYzNyBkOGNkYWM4ZmRjNzQ1MGJlMWJlMTYyMjg2NTQ5N2Q0YWEwYjJkY2EwIHVubGFiZWxlZC0yLjI1LjIKKzM2MzcgOGIwOGEzNjY3NmQ0ZWRhNDdlMWRhNzY5NmU0YjIyODEyMzE5M2YzYiB1bmxhYmVsZWQtMi4zNi4yCiszNjM3IDE5ZmEwMWM5ZmFmMzk3NjM3OGY2NTRiYjRmYTdjZDNkYjI4ODJhNGQgbGVnYWN5LXRydW5rCiszNjM3IDhlZWYyMTE1NTVjNmQzNWY0ZDI5YzlkYzc3NGEyNDliZDFjNzRjZDAgdW5sYWJlbGVkLTEuNS4yCiszNjM3IDBjYTY1M2Q2NzdkMzQ5NzQzYzI5YzFhZTIyMTJhOGRjYjU3MjkzY2QgdW5sYWJlbGVkLTIuOS4yCiszNjM4IDYwN2IxOWFlMWUxM2EzMjIwNTA2ZTg1YzI4ODdmZjc0OWM2NGY1NTAgdW5sYWJlbGVkLTEuMi4yCiszNjM5IDMxZjFiOTg3Y2RmODJjYmNiMzhmNTAxMDhhMGFmMDgzNzlkODMxZjMgYWxwaGExMDAKKzM2NDAgZDk2MTk5YmU3NGU2YTQ0OGNjOTU0MGJkOTZiOWYxZTRjOWY0MTVkNiBhbHBoYTEwMAorMzY0MSBmOGQzZmY2NjM5YjU5NjcwZGMxMTMyZDllOGRjZTVkOGNjOTVmZWM5IGFscGhhMTAwCiszNjQyIGE3OWIwMjQzOTdmODdjNzE4YTJhMzFiZGYyM2RkOTZkZTAyOGViNzkgYWxwaGExMDAKKzM2NDMgNWNlNDA0NjJhZTk5YWVkOTRlYjUwZjgxOGMyYzRlY2IyNzcyOTIwYSBhbHBoYTEwMAorMzY0MyBiODU4MGUzMjA0NmMxYjY5MzljZWFiOGU5MzkyZWVlODgwZjJlNGFlIHVubGFiZWxlZC0yLjEuMgorMzY0NCAwOGQ0ZGE0OGRjZDU4ODc0MjA4MTI3MTI0MjBmZTE3ZjMwMTc1NzJkIGxlZ2FjeS10cnVuaworMzY0NSBkOGJhM2NmOWRhYmNhOTc4ZmY1NjVmMzYxOTAwNzE4YTViYzg3NDQ4IGxlZ2FjeS10cnVuaworMzY0NiAxZjhjNjQ4NDkyMDM0ODAwMTU3NTVkYjUzODlkZDI0NWJkZWJiMmI3IHVubGFiZWxlZC0xLjMuMgorMzY0NyA2YzA2NzY5YTg4NjliMGRkZmFjNzRhOTgwZTg2OTU1MjU4OTRiNDZiIGxlZ2FjeS10cnVuaworMzY0OCAyNWMxMTJiM2M5NTdlZTE5MTUyNWFjNTQ3ZDgwN2Q5ZDAwNzliNTg4IGxlZ2FjeS10cnVuaworMzY0OSAxMDlkMzlkZWMxMjg4NmJlM2MwY2NkZDdlYjYzZTQ5ZWRhYWZjM2NiIGxlZ2FjeS10cnVuaworMzY1MCA1ZjNkNmU0YjU1MDNkNTFlYTFjYjIyNDJhZDcxN2VmNTcxNzBlOTE2IGxlZ2FjeS10cnVuaworMzY1MSAzMDU3NDhlYmFiNDM3MjQ1MjViYTRkZjllN2YwYWQzZmI5NjE5NWE5IGxlZ2FjeS10cnVuaworMzY1MiA0ZGM3YjE1YjZiOTcwZGFhZGUxZTM3OGU3MzNlN2Y4YzJlYmQ2MGQwIGxlZ2FjeS10cnVuaworMzY1MyBjOGE5NWMxNzBlMWVkODczNDA3MzQ1YjkxYTVhNmM4NDMzMzg5NGYwIGxlZ2FjeS10cnVuaworMzY1NCBlZDM2YjNlOWNkNzg2NWFjNmI1MTFlMGQ0OGVlNTBhMDVlMmVkZDU5IGxlZ2FjeS10cnVuaworMzY1NSA2M2ViNmM3NTA5Mjc1N2QyMDA0MDA3OTcyYTFlNDIwOTFhMDZlZDQxIGFscGhhMTAwCiszNjU2IDE5Yzk4ZjIwYTliODNhMzFjYjQ4OWJjYWNiMTIyODdhMmYxODlhNzMgbGVnYWN5LXRydW5rCiszNjU2IDA4Y2Q4Yjk2YjZiZmMyNzhiNjZlZDQxMWQzYjlkN2I2MzRiODk5MWYgYWxwaGExMDAKKzM2NTcgNmJjZTMzZDdmMGQxMTJmNGRkYjM5NmVlOTUxMWFmNjc2OTIzMTIxNyBsZWdhY3ktdHJ1bmsKKzM2NTcgZjUzMzZkODZmNThiOGQ5YTRlMDM0ZmQ0YmNlMWQwYTNmZmNkNGRhZCBhbHBoYTEwMAorMzY1OCAzMDU5MjE4ZjYzMGJkOGVjMGYyNmIxMjJlZTM4YmU3NTZlYzc5MWE2IGxlZ2FjeS10cnVuaworMzY1OSA3NzM4Y2U5NWJhNGRjYTljZDhlYjVlY2QzYTJiY2RlMGFlZjA1ZTU0IHVubGFiZWxlZC0xLjkuMgorMzY1OSA4MzhhYTE0MDZlZWFlZjgzMjE2ZTA0NDkwYmRiZmJhMzFhNjEyMTFjIGFscGhhMTAwCiszNjU5IDI0MzBhODYwMmE2NWQxMzY5NTM2NmFjY2VjZjk2NDlkNzU0YTJiOGUgdW5sYWJlbGVkLTIuMTYuMgorMzY1OSBiNGY4MTVmM2NmM2UxMDhmYzk3Y2YwZjI4Yjg3ZmFiYzM4NTBlNjEyIHVubGFiZWxlZC0yLjI1LjQKKzM2NTkgZDAxODc2NThjZjBiM2JiNmY0NDljZGMyZDhiMGUxZDlkOTE4NmE1MCB1bmxhYmVsZWQtMi4xLjQKKzM2NTkgNjEyYzc2YWFjM2FhODllODZmNWU0ZWNjZjk4M2IzNGNlZDBhMjk3MSB1bmxhYmVsZWQtMi4zNi40CiszNjU5IDMxM2Q5YjkzMDk0MDllZGRkNjJiOTc4NGU3MDZjZDQ3NGZjY2EzMDQgdW5sYWJlbGVkLTIuMTAuMgorMzY1OSA4ZGMyY2YzMTQ1YjNiYmJhNTNhN2JkYzVkMWZlM2M2ZWI5ODM5NjgzIHVubGFiZWxlZC0yLjkuNAorMzY1OSA1MWVlZmMwNTRhZmY4YmEzYmUxOGVkZWNjZDkyN2IxMjEwMmQxOTZiIHVubGFiZWxlZC0xLjUuNAorMzY1OSBhZjY2N2M2ZDIwNzIyMTExOTRkY2M0OWNlY2NlYWYxZWJiZDFkZTc2IHVubGFiZWxlZC0yLjMuMgorMzY2MCBkNDcwNWQ3MDY2MzI5MjQ4OTAwY2Y5YzYyNTcxYTIyMDIyYTdkNmQ3IGxlZ2FjeS10cnVuaworMzY2MCAxZGNhMzNlYjJkN2E1MzdkZjE0YWIzODM1Njk4ODNmNTVkZTk5NzVkIHVubGFiZWxlZC0xLjIuMgorMzY2MCA4ZjQ0ZTQzMTA0MTRiNmQ5NTc4NWE5ZmUzNzk1NjMxNDJhYmFmN2IxIHVubGFiZWxlZC0xLjMuMgorMzY2MSBkY2NlZjFjYmRhNWEwNmRjOGYxNzlhZjdjOWRkNzc3MjIyN2FlNjlmIGFscGhhMTAwCiszNjYyIDJlYzk2MTQwYTM2YjQ4ODM0NWEzYzFhMWNlOGZiZTQwYzNiM2IyNjUgbGVnYWN5LXRydW5rCiszNjYyIDRhYTkxZmQ2OTcxNTQ3OTZjYTFlZDFhODVhNTZjYzU5Y2IzZDNmODYgYWxwaGExMDAKKzM2NjMgYzc1MWNiZWVlNjg4MmZiMzA0NmNiYTE2Njk5MDZhOTVmMzZhNTcyOCBsZWdhY3ktdHJ1bmsKKzM2NjQgMjM1NjFkYzdiMTVmNWU4MzIwMGFhNWZjMDQ1YWM0ZDExY2FkOGU5YSBhbHBoYTEwMAorMzY2NSBlNTYwYjMzNDI0MDViMzI3N2I0ZGZkYzZiMDAzODAyMjc3ZDFlZTBmIGFscGhhMTAwCiszNjY2IDBlYjBlZmM1MWQ5YjM3YzQ4ZmE2YzM5NDMzYjdhZTI4ZTI0NjhlN2IgYWxwaGExMDAKKzM2NjcgYzMyZTEwMjA0NjhkZmY4NDI5MTU3OWNhOWRjNTljMWFiNjc4MWVmZiBhbHBoYTEwMAorMzY2OCBlMjYzYTcyYTc2ZmU5ZDZhMWFjMDFlMjMzYjQ4NTI0Mjc3Njc4OWVlIGFscGhhMTAwCiszNjY5IDkzZDEyOTcxNzhjYmU3ODVmMGIyNTUxMjFhYWIyY2VjZjdlYTIxNDggbGVnYWN5LXRydW5rCiszNjcwIDk4YzU1OWZkNmUyYTkyYTRlNWMwOWVhNmIzMTdlMjliMDJkZTk2MzIgYWxwaGExMDAKKzM2NzEgY2JhMTA5NmRhNTUzMTFkZDYyYjY5YzBiYmI4MDI3MGEwYzE4OTlmYyBhbHBoYTEwMAorMzY3MiAyMDY0YjE2NzA5ZjJjZTVmOTBmNmY4NGI4NGVlMDUxYmIxZWM1MGI2IGxlZ2FjeS10cnVuaworMzY3MiAzNDVkNTdiZWMyNjlkN2JmZDZmMjZlNzI1MTU2OWNhMmNkM2NmYjUzIGFscGhhMTAwCiszNjczIGY4NmY2NTFjNzA3ZjQxMGIwMjkwMWY5OGU1ZTQ3YmU1Nzc1YjE5OWQgYWxwaGExMDAKKzM2NzQgMmNiMDc2YWU4OTI3MjE3OTEwMWU2YTFlYjNmMzJlNzBjYTg2N2ZlNSBsZWdhY3ktdHJ1bmsKKzM2NzQgZWJmNzI4ODAzNTVmMTgyNjNkMWY4NzFkNWQwNDMzMmNkMTcxMTZkZSBhbHBoYTEwMAorMzY3NSAzZmU3NTgyYjk2MzZkZjJkNDNjNDc5NGNlZjFjNmFlYjZkYmFkZTI1IGFscGhhMTAwCiszNjc2IDQ4MTQxZTY4YjM2OTgzMjJmYzAzN2QxNDQzZDgxODU0YTEwN2Y0MDUgbGVnYWN5LXRydW5rCiszNjc3IGQ4MzY2NDU4ZDEwNjZkMWMwNGEzMDJhODcxYjQ4ODk1MjEwNTMzMDUgYWxwaGExMDAKKzM2NzggMmJlODA0OTY2MTQ3Njk4YjQxNDdhOTRmZWRlYWJiYTA5OGZiNzgwMyB1bmxhYmVsZWQtMS4xLjIKKzM2NzkgZjJmMTYzYzA5OTU5YjNlNzUyMjY3MTYzY2FkMjc4MzIyYTk0Yzk5NSBsZWdhY3ktdHJ1bmsKKzM2NzkgYjY2YzZlMmE2ZTA2ZmEzNDJlMDQ4YWQwMjM2MmQ0ZmE4ZTE4ZGEzMiB1bmxhYmVsZWQtMS4xLjIKKzM2NzkgZmVjMmNmOGQ2ZTc3OTk5NDliMDZkMzMxMDJmZTI2ZDllNmQ3Nzc0NiBhbHBoYTEwMAorMzY4MCA4NzA3NTFmYjA5ZWJmZDU5MzA5Mjg1OTJmNThiNTlhMmE5OTIzNTgzIGFscGhhMTAwCiszNjgxIDBkZWY5NGY4MGIzODQ5NzQ4NjgzM2Q5YWFmNzA5OWZiMmY1Y2NiNDkgYWxwaGExMDAKKzM2ODIgMjRkNjU2NTNlMmFjOWQ0NDYyY2MzODQwMjIwMDBhNjE5Y2FkYmUxNyBsZWdhY3ktdHJ1bmsKKzM2ODIgMWM0ZTJkNjIwYjE2MzgyNjEyOTdiNWZiYzNiODYxNDJkODA2NTk3OSBhbHBoYTEwMAorMzY4MyBkMDNjZWE2YzA3OTVkNGQ5ODZjNzczN2Y2NDRjMzI2OWEzZTU1MGRiIGxlZ2FjeS10cnVuaworMzY4MyA0Mzg1MzNiMzQxYTZkNTY5OWMwMzVlNjU1ZGJhMDI5YWFkOTdiNGU2IGFscGhhMTAwCiszNjg0IGUzMzc2MjRjM2VhMzcwNTM1NDAxZTNiOGEzMmE5MTdmNWUzY2QzOWEgYWxwaGExMDAKKzM2ODUgM2Q1ZDRjOWVkMTlkZDg2OTVlOWY1NDdkY2Q2YzBiZDQxYzFlZGI2ZSBhbHBoYTEwMAorMzY4NiBiODBmMWRjOTZjMWE1NmIzYzQzYjQwNzlmNzg3MzAwM2YzZGM3M2U5IGxlZ2FjeS10cnVuaworMzY4NyBlYWIwMTk2YThkODM4ZTcyYzljYzA0Zjg5NjViYjE1Mjc0YjkzMWYzIGxlZ2FjeS10cnVuaworMzY4OCBiNWIxZjM4YmVmYTQ4ZGEwYTg2NjFkNGJhZDE4YThjOTczZmNiZTM3IGxlZ2FjeS10cnVuaworMzY4OSA1NTBlMjYwNTk1OGIxNmU2NDE1NjU3NzdjMTA5ZjM1ZGFhYmRjYTM2IGxlZ2FjeS10cnVuaworMzY5MCAyZGRlYThlNmRkMjBiMGZiN2JlZjMwMjIyZWEzYTA2YWVjNzQyNzk5IGxlZ2FjeS10cnVuaworMzY5MCAzNTU5YjA5MDY3MGVlYzlmZDFiNjk3YTlmOTBmMTE3OTA5NGY1NjUwIGFscGhhMTAwCiszNjkxIDYxYTcyM2ZhMjUzOGM3NTVlNGY1N2E1MDQzZDE1NmEyYTczMTMzYTAgYWxwaGExMDAKKzM2OTIgOWYzZTJlOTMxYjRiOTNmZDViNmVkNGVjODM4M2E1YzhlMjIzZTcxMiBhbHBoYTEwMAorMzY5MyA1NzgxYWFmOWNjZDM1ZjcxZDAwOTBjNWQ4MjRhMzVmNjhhYjk4YjdhIGFscGhhMTAwCiszNjk0IDUwMTlkMDNkNzE5MjBiOTE2ZDI2NjU0OTY3YzZkNjcxZTJiYTI1MDkgYWxwaGExMDAKKzM2OTUgMjI0YzZiZDkyY2ViNDU0MGQ3NGZlMjMwOTRmMjM0ODg5MWQxNjIyMCBhbHBoYTEwMAorMzY5NiA4ZDZkODUzNTlmYTNiOWNkZDEwYzhhYWJkYTQ2OTU3MmJmZjMxNTk2IGxlZ2FjeS10cnVuaworMzY5NyBlNWZhODk3OWI5ZTY2ODI0MTIwZTk3NjkyNzZmNGVkZmM0ZDAyNTVmIGFscGhhMTAwCiszNjk4IDBhNmJlZTRiNmIxNzUxOGJlZmY5MGUxYjQwMzE3ZTMxZjc5YjNlNGUgYWxwaGExMDAKKzM2OTkgMmFlMDJmMGQ5ZTZiMGE2ZDQwODdkY2RhYmJhOTdkNDkwNzNjMGM5NyBhbHBoYTEwMAorMzcwMCAyZDRiZDhjYzQwNDIwMGZhNzI1NWNiZTVhMGM3NTA2NmIyMmM2OGM5IGFscGhhMTAwCiszNzAxIDRmODk2MGM3ODE0MWRiYzM3NDAyN2M1ZTg4YjdmYWI0NGY4NWEwZTAgYWxwaGExMDAKKzM3MDIgNzU4NzE3Zjg1MGYyYWEzN2U1OTM2MzYwZDNkNDNlZTZjZTQxMjMwYyBhbHBoYTEwMAorMzcwMyAwNTAxNGUwZDMzZWM1ODE2NDVkYWQwNGVjNGIxOTM4MGJlZjhmNGQ3IGFscGhhMTAwCiszNzA0IDc2YmM2ZDc0ODg5MGQ4N2E5OTA0NmZhNTZlMDE2MzAzNTZhNTMyMWQgbGVnYWN5LXRydW5rCiszNzA1IGU1M2VkNjc0NTlmNTZkNzM0NmExZTJiM2ZkOTk3M2VhOGJkODAzNjcgYWxwaGExMDAKKzM3MDYgMGM4YjE4MTJmMGI2OWQ5MWUzOGIwN2VjMzgwNWE5NjZmZDVlMzg0YiBhbHBoYTEwMAorMzcwNyAxMGFkOGJlZjlmNDNkYjc1ZTk4YWFkYTQxNGRmZjhkZTdiZWM1NzhmIGFscGhhMTAwCiszNzA4IGE5MDkxYzQ5OGIxMDFlNTgyMzUyNGM4ZmZkMzY1MzU0MmIxYjAyMjQgYWxwaGExMDAKKzM3MDkgNjI3YmM0MjJhOTAyODY4MWYwZWViZjMxOWVmYTE2YmE2NDE2NmQ0YyBsZWdhY3ktdHJ1bmsKKzM3MDkgOGIzYTcyN2RjNzFiM2FjM2U5OWQwM2I3YjRjZGY1YWIzMTAxYWNlMCBhbHBoYTEwMAorMzcxMCAyNzJlMmM2NGI3NGRiYmI4OTg1M2NiMTU0MmNhNWQ0OTM0NDMwNjQzIGFscGhhMTAwCiszNzExIDZkZmI4NGFkZmU0MzExOWE5YTdlMTIxYzA4Y2IwYmM3NjZkNmYwODEgYWxwaGExMDAKKzM3MTIgNmI2MzAwY2M0NjRlNWE0YmMxNjcwYjdhNzI1OWVhYWEwZDg1YmQ4ZCBhbHBoYTEwMAorMzcxMyA1MGZhYjIzM2Y0MDQyMTMwMmE0ZTJjMjBjMDM5NjZmNGU4M2NmYmYyIGFscGhhMTAwCiszNzE0IDNkMTljYTQwZWI4MmRmZDJlOGY1YWQyZDZhOTViOTY5MGZlN2YzZmIgbGVnYWN5LXRydW5rCiszNzE0IDkyNWM5NTI4MzBjZTI2ZWJiYTY4YjI0YjMyOTJkY2Y4MWMzZDM1N2EgdW5sYWJlbGVkLTEuMS4yCiszNzE0IDYyN2Q2NDRiYzZjMTc3ZjlhNmVmNDk1NTNjNDIzNzVkYzljMDYzMDYgYWxwaGExMDAKKzM3MTUgOTYzN2MwNDk2MTdkMzM3NmQ0ZWU1MTc3ZDg5MWY2MGUyMzZiYzE3NSBsZWdhY3ktdHJ1bmsKKzM3MTYgZWQ3NTk5MjE3N2U4MzE3MTliMDY4ZGM2ZWY5OGMwOWU1YWVlYWRlZSBsZWdhY3ktdHJ1bmsKKzM3MTcgMjk5MjdmMDM4NmE2OWU4M2U5YWMyMmYwZjVhZmM4OTNiNTRiZDk2MCBhbHBoYTEwMAorMzcxOCBjNjJhNmRhN2ZlYWMzZDdhNTE3OWRkMTM5MDQwYjlhZTIxOTkzNDAwIGxlZ2FjeS10cnVuaworMzcxOSBhNTI1NjA2MWYzYTAwZjc2YWUyNGM1MTgxZTI2MDgwMWVkNTUzZTNhIGFscGhhMTAwCiszNzIwIDVmZDU1YTZhYzc2ZTgzN2MzMDA5ODU2YTMzNjY2YTU3MzI2MDRmOWQgbGVnYWN5LXRydW5rCiszNzIwIDMyODY1Yzg5Y2YxMmU2M2Q4NDQ0NWQ4NzBjN2QyMjY0MDA0ODY2ZTAgYWxwaGExMDAKKzM3MjEgZTE4MzUwMmZiNWJjNmY1YzNhNjM0NmFlYzA4YTU5MGY5ZmU3MjljMSBsZWdhY3ktdHJ1bmsKKzM3MjEgZmRiZDM5NTRmZWYwMGI0NDZhNDExNzhhNWY3NjIwY2MwNTYxYzc1NiBhbHBoYTEwMAorMzcyMiA1ZTkyYjEzMmU3MGZhMzJiN2JhMWQ0MTY0ZWE1ZWQ3NzcyMDIzMjFmIGFscGhhMTAwCiszNzIzIGQwYmIwN2Q0YzZmZWI4ZDJiMzBhZDQwOGZlOTU4YTAzYTBlNGMyMWMgYWxwaGExMDAKKzM3MjQgNzQ1M2UyYmE1MzYyYTQ0MzIxNmVhOThlYjZmMDA4MTdiOGFkZWI0NiBsZWdhY3ktdHJ1bmsKKzM3MjQgYWE0NzJlOTE3ZjZjMjMzOWY0NDAxNDgxODRhOWY0MmRmNTRiZTM3MSBhbHBoYTEwMAorMzcyNSA4NzcwNzNiOWY4YzMyNTRhODMyNTBiMjU2NGVmYzY1YzlmMWFiYWFiIGxlZ2FjeS10cnVuaworMzcyNiBlNGVmMWIxN2RhM2RiYzViOWJjMjFmMWEwYzZhMDI3ZDZiYTQ1MzFhIGFscGhhMTAwCiszNzI3IGNjMzExOTE2NGQ1YzJmMzY1ZWM3MjA2Yzk5NDM1NjU1MzI5ZjViYTUgbGVnYWN5LXRydW5rCiszNzI3IGFiYzJmOTgxNGNjOTY4NTVlYWVjZjA4NWZlNmYxMDhhM2VhY2UxZjUgYWxwaGExMDAKKzM3MjggOTQ0Y2M3YzY0ZTdjZGQ5NjEwNTczMGQwYzFkYTU5OWNmYjUwYTc5YSBhbHBoYTEwMAorMzcyOSA5ZjI4OGNiNTZhYjUxZjdhYTQ4ZjRkMzdmNjc4NGI1MWY4N2U3N2Q3IGFscGhhMTAwCiszNzMwIGE2ZWJiNjhkYjM0ZWI1MTYxZmQzMWY5NTY4ZDFjZWNkZjNkYTBlNzEgbGVnYWN5LXRydW5rCiszNzMwIDc3ZTBlYTYwNzk2YWU0ODRiY2RhNmVmOTYwMzJkMDJlMTEyMWM1ZWQgYWxwaGExMDAKKzM3MzEgYTc1ZjcwY2ExYmUwYTY0YzNlNzE5MTU5ZDkzZDVkYmEwM2ZmYTM2MiBsZWdhY3ktdHJ1bmsKKzM3MzIgZjUyMGI5YzdhZTZmNjVkYjEwN2E4MGM4Y2VjMTM2ODRlZTY2YzFlNCBsZWdhY3ktdHJ1bmsKKzM3MzMgNTY4YzYwNmEwZTMxMWI2NTQ3OWQ2YzFhYjhhN2IwOGI4MDA1ZmE0MSBhbHBoYTEwMAorMzczNCAxZjdkYWQ1NzZhODUxZDFiMWY2Y2FkMjJiYTI2N2RkNjJlN2I1NjZiIGxlZ2FjeS10cnVuaworMzczNCAyMDRiN2U3OTNjMTViNGJkMWQ0MGFkZTU2NTZhNWVkZmVkYWRjYWU3IGFscGhhMTAwCiszNzM1IDc4M2VmMzYxZjM5NTE1YThhZWY1NTY5NTgzM2UzYWM0MTA5ZTM3YWEgbGVnYWN5LXRydW5rCiszNzM2IDg5NjVlZjRlYjM5OWFjNDc2ZGNiZmViYTdiYTQzMWFhNWQ5YTZlZWEgbGVnYWN5LXRydW5rCiszNzM3IDM2NjRjYjg4YTAzMDA4ZWRiY2M3Zjk3NDg0ZTg1NThkMTg0M2I2YjcgbGVnYWN5LXRydW5rCiszNzM4IDUyM2Q0MjExODhiOTNhNTM3YWIzYjI0NzExMDIyOWI4YjI2ZjY5NGMgbGVnYWN5LXRydW5rCiszNzM5IGFlZTU1ZDk2OWExMjI0MWE3OGRkMTdkZWUwNmFjNzI4MTJiY2M5YWMgbGVnYWN5LXRydW5rCiszNzQwIGVmMDgyYzEwNzJhNzExNWRiZmMzMDM2ZWM2M2ZjZGYxYjg5YTVjNzkgbGVnYWN5LXRydW5rCiszNzQxIDViMjU1YTM1ODgzMzBiNTg4YzBjZDg1YjE3NjJkZTY1ZGMzN2RlMjcgbGVnYWN5LXRydW5rCiszNzQyIDkzOWE5NWYzZGNkZWE0MzFiODM4YmJkYjNiMzJhYmNiYmMwMWY2Y2EgbGVnYWN5LXRydW5rCiszNzQzIGJlNjgwMGE2MDE5YjRkNDIxNDcwY2M1OTgyY2Y1MjlmNjMxOWYxOTAgYWxwaGExMDAKKzM3NDQgMzY0MmM2NDQ3MmMwNzhhNjliM2Q4ZWZmM2ZjZTk2MzE1YmIyZGFhNiBhbHBoYTEwMAorMzc0NSAzNjQ4ZWRkMzQzZWI0NGM2NDEwZGRkZDg4MjRkMDQ3OWIwMzA1ZjE3IGFscGhhMTAwCiszNzQ2IDZkMjRiOTlkYzg4MWI4ZjM3NjFkYzBmN2VjYjRlOWZlMmRiOGNmNWYgYWxwaGExMDAKKzM3NDcgYzhiNzE0YjliYzVhYjJiNWNmNjAxN2MyMjAxNWM4ZDViMzA3ZjJmNSBhbHBoYTEwMAorMzc0OCA1OTk0OTQ5YTdlZTlkYjQwMWI5ZTZjYjUxZDA0ZTdkMzMwNTRmY2E4IGFscGhhMTAwCiszNzQ5IDFlMjY5NGEwNjkzOTg4YmU0MDk2OTczOTBlZmY2YTA1Yzc2MjE1ZDcgbGVnYWN5LXRydW5rCiszNzQ5IDkxYmFkMzc2YjRiY2U1ZWI0NmMyMzg1ZDIxMmUzNGVjNjU0ZWEwMWMgdW5sYWJlbGVkLTEuMS4yCiszNzQ5IDJlYTgxM2FhMjYwMmZjOTU2NDgxZTRmZGU4Nzk2ZjM1Y2JkMjFiMTMgYWxwaGExMDAKKzM3NTAgZjlhZGI4OWYyMDAxNmE5ZmE2NDU4MDA1NjdlNDIwMmMwYzUyYTRkMCBhbHBoYTEwMAorMzc1MSBmYTllNGRiNzkxMWRhOWZmYzA2M2FlODNiZTU1OWI4ZWMwOWYyZDlmIGFscGhhMTAwCiszNzUyIGM1Y2UzNTg0MDAxMzBhOWNjOTM2NGM5YmQyMTZmMTk1ZDlmNjY3ZTcgYWxwaGExMDAKKzM3NTMgMDcyNjdlZDEzNzEzNTkyYzAzMjk3YjA0MDI1ZTA5NjYzNTYwMGU4OSBhbHBoYTEwMAorMzc1NCAxZjg0MTc4MGVmYzIzZWVkZTA3NzRiNjAzZTYxYjg4OGMwMTk3YmY0IGFscGhhMTAwCiszNzU1IDI3ZjM5NWFmZTYwZjY5NjZkZTczNWQ3M2ZlMzdlMWFiZDYzZTNiYmQgYWxwaGExMDAKKzM3NTYgZmRiZDg5OGJjMWZlNjJkODQ3OWJhYTE5OThiNDZiODgyMDcxYjBmNSBhbHBoYTEwMAorMzc1NyA0NDg2M2M0OWE0MzZiZmEzMDhkMDkyNTM0ZmY2NDc0YTQ5MGE3NzcyIGxlZ2FjeS10cnVuaworMzc1NyBhMWFlZTc2OTliZWE2NTRlNGRmZGY5NWYxZjEzZDU1OWIyZTJiYmYyIGFscGhhMTAwCiszNzU4IDRhNzIyOTYyZmI2OTcwOTQ2NTNlMjIwYzZkYzRmODc5MjNiYzQ3NmQgYWxwaGExMDAKKzM3NTkgNzUzOWNjYjc3ZDI4OGFhOGU2YWVjMmVjNjg0NWE0ZDgwNDU3Y2YxZCBhbHBoYTEwMAorMzc2MCAzMzM2Y2RjZDRhNWZmNmM3NmIxMDE3OGQ2MGNkYTQ0ZDlkOGNiNWIzIGFscGhhMTAwCiszNzYxIDQ3MmEzNDdiYWZjY2M0OTgxM2E3MGRlZTNjOTI4MTEyMDE1NDQyODIgYWxwaGExMDAKKzM3NjIgMTMwYjA0ZmM1NGRjYzY5OThlMjBiYjJhMTQ5Y2RlY2UxOTc2MTU4ZiBsZWdhY3ktdHJ1bmsKKzM3NjMgZWQ0YzExNmI1ODkzNGU4MjgzNjUxOTA2ZGE1YzY0MGZhOTFmM2M0OCBsZWdhY3ktdHJ1bmsKKzM3NjMgODExZWY2ZWQ0Y2ExYmI0YzMyMWM2N2UyZGRmZDQzOTdlNTQ4ZDc3MSBhbHBoYTEwMAorMzc2NCAzYmI3ODhhMWRkYTA0NmRjZTVhNTUyMzBhOTg0ZTE5NzQyYTFjMWZiIGFscGhhMTAwCiszNzY1IDJiYmExODhjNmFkYWRlMzZiNzVkYjQxYzFhMmM2ZmU1YWVmMjhkNDUgbGVnYWN5LXRydW5rCiszNzY2IDA2MTA2MmY4YTliZmQ3ZGIxYjRkNjMxNGM0NzJiMzNjMjg4YzcwOTMgYWxwaGExMDAKKzM3NjcgMDkwZDBjZDk2MWFmMTc1MGVmOGRlNjhlNTU5ZjBiOTlkMzgxZjkxZCBsZWdhY3ktdHJ1bmsKKzM3NjcgYzIzYzFhYzkyMjA4MjQzZTQzNDgxMWY5ZGQxOWNjN2ZmYjE1MmU2NiBhbHBoYTEwMAorMzc2OCAzNWRiNmZjYTRkZjRkNzJlYzJiZmY3OGU5MmIwYjM0Yzk4ZjI1ZTYzIGFscGhhMTAwCiszNzY5IDA4MTczMmM2YzExMjk4ZDBhMDVmYzFhN2QwYTI0YTI3MDg4MTEzOGYgbGVnYWN5LXRydW5rCiszNzY5IGM1Nzk4NzViMjk4MDc4ZTU3Y2M1YjE2N2IzYmRkZTIyNzY2MjEyZTggdW5sYWJlbGVkLTEuMS4yCiszNzY5IDc0ODE5MDQwZTcyNjU3OTE2ZmI0MGJhNGJhNmFjZjBlOTZhMDAyMjIgYWxwaGExMDAKKzM3NzAgMDlhMmE2NjFlOGMwNTEyMWJkYWI5YWNiMjQ4N2IyZTI0ODVjODdhYSBsZWdhY3ktdHJ1bmsKKzM3NzAgNWYwZjhiZjdiMzVjZWQ1ZTMzOTU0MDdmOGU1OGFlMzQ1NmQwZmU4YSB1bmxhYmVsZWQtMS4xLjIKKzM3NzAgOWI0ZjllODIxZmQ0NmViNzExMTJkOTMxYzQ0MjllYWM0NjQxNDlhZCBhbHBoYTEwMAorMzc3MSA3YzNmYmM5N2Y5NDY3NzBlYWM0MGQ1MmY1YmE0OGU2Y2NlNzdiNzIzIGFscGhhMTAwCiszNzcyIGJjNWM5MjUwOGY1NjAzMDEyMGVlZjBkMTgxMTIzNDBkNTFkNjNiOGYgbGVnYWN5LXRydW5rCiszNzczIGRjYzk1YTEzN2E2ZjkxY2U5NTYxMWVmZDlhZDM4YTQwNmI4MmFlYjYgYWxwaGExMDAKKzM3NzQgM2I2Zjk1MDUzMDQzNjA4MGI3ODMzYTQyYmQ4MzFlMmRjNjlmMzY4OSBhbHBoYTEwMAorMzc3NSBlMjEwYTRhM2Q5ZjBjODZhYWJiOGM1NjExNGFlNWM2MTc4NWJiZDMzIGxlZ2FjeS10cnVuaworMzc3NSAxZmYzN2ZmNmFmZjRlNGQ2YjViMTJlMTg3YTM0Y2RjNTk3ZmE3NDY0IGFscGhhMTAwCiszNzc2IGEyN2Q2ZWMzZmQ0YTU5OTlmNjIwMGVkNzkxZjRhYzgzMjkwNGQwNjkgYWxwaGExMDAKKzM3NzcgZDY4ZjZjYzI2MTFlY2UzMjNkNzIwMTZkMTUyNDcxODcxODE3ZThjNyBhbHBoYTEwMAorMzc3OCBmNWMxOTc5YmVhN2NkNWMyY2EyYmFkZjNiODRkZTllYjNmNGMxYzcyIGFscGhhMTAwCiszNzc5IDU2Y2JmZGYzNzI1NGM5ZTA4NTdhZDFjZGRlMWQ2NWZlM2NjMmRhY2EgYWxwaGExMDAKKzM3ODAgYzI4NjhlZjI4YmVlMmIyZjFkMmJlYzlmMzAyNDI3MGEwYzJlYWYxOCBhbHBoYTEwMAorMzc4MSAxYThlOTBhMzczNTdiYWU3YjRhYmE5MjJmMWYwYWIzM2JmZGNlZjZmIGxlZ2FjeS10cnVuaworMzc4MiA4ZTk3YTY4YjJiMTdkMDFkYWM3NDU4NjM0NGZiMDY4Y2VjOGY4ZTY5IGxlZ2FjeS10cnVuaworMzc4MyBiZGJlNmQ4YTdhOGY4NmZiY2EyYjdlMGFiZWI5YWM3ZjUwMjg5NWNjIGxlZ2FjeS10cnVuaworMzc4MyBhNGY2YmEyZTQ3ZmZkNjMzYTI1NmQyNzg1N2E5ODlkYzA1MDVhMmZmIGFscGhhMTAwCiszNzg0IDk3ODE5NTY1OGU5YTM3ZTIwYjljMjA5NmFmMzYxNzQ4NDliNDEwM2MgYWxwaGExMDAKKzM3ODUgMDk0MjBlMmU5Mzg4NDVhMGQ1YWVmZmU5M2FkNDk0NGJmZjliNDEzMSBsZWdhY3ktdHJ1bmsKKzM3ODYgZTQ1OTQ4ZTJiNjZjZTQ4NWFkZTQ5MzJhOWRhNTRmZTk2NTVmODU1MyBhbHBoYTEwMAorMzc4NyBkZDZlYTE2N2YyYmQxYjc0MWM3MGZlODg2YjkyYTUwOGQzZjIzMzBmIGxlZ2FjeS10cnVuaworMzc4OCAwZjg4Zjk2NWJmZjI3Yzg4Njc1ODE5NzIwYWIwYzdlNTJlMDUxMWQ4IGFscGhhMTAwCiszNzg5IDMzOGZlNThiMmM2NzczODU4ZWEwMjJmNDVhZTMyOWIwODdiMTc0NDkgYWxwaGExMDAKKzM3OTAgMTQ3ZTk5MTk4ODM4Y2M2N2ZiODEwZDgxMWRlODFiMGIyYjZlMGFjMiBsZWdhY3ktdHJ1bmsKKzM3OTAgMjBmYmQwNDM0ZmI2MzRkZmMwMGI3N2FhYTNkYjMzYzRmNjNjNmM0NyBhbHBoYTEwMAorMzc5MSA3Njg5MWQwY2Q1ZmRhYzFlNDUxMDRlMzI4OWNmOGI3YWIwMjRiOWE1IGFscGhhMTAwCiszNzkyIGRjOGFlZDhiMjA0ZDE4ZmZkNzkyNDE1ZWY2NGQ2Mjk5OTA1MmIyM2EgbGVnYWN5LXRydW5rCiszNzkzIDhiOTA4ZTk5Mzk3NTdkYzM1MTI5MTAxMzU4Y2MyNGFmMzNhMWM4MzIgYWxwaGExMDAKKzM3OTQgODhiYTVkMTdmMzBhMGY1M2FiZmMzNjcxYzE3YjNlNDFjNGJkZTRlNyBhbHBoYTEwMAorMzc5NSA1ZDVlYjc2YmIyNzhhYTZjMTVhMjkyNDRlNzc2ZDJlZTZlNWQ5NWYwIGxlZ2FjeS10cnVuaworMzc5NSAwN2U0YzU3MjZmNzg1Njc4YTRmODgzODFiZjU4NjVjOTU0MzI3NjNiIGFscGhhMTAwCiszNzk2IGJiYTgwMDg4YTA0NGEzMzg3OTA2Mzk0NGQ5YmQ0YTdmMWNmYWJlYTUgYWxwaGExMDAKKzM3OTcgYzIzY2NhZWM5MjQ5MzI1ZDNjM2YwOWRhYjk0OTVlYzk2OThiMjRlZiBhbHBoYTEwMAorMzc5OCAwMzY4ZWY0OWZmNGM2MTc0MGMxNjNhYWE2NzI5OGM2Nzg2ZTkxYTQwIGFscGhhMTAwCiszNzk5IDUzZWNjZWQyZjJiMmExODRmMjM2MWYwYzliOTFhYzAyZjNjMWI5MmUgbGVnYWN5LXRydW5rCiszNzk5IDdjZTQxMjI5NWNhM2NhYjVhNDJmYWNkZWFiZjIyMGZiOGYxMDUyZDMgYWxwaGExMDAKKzM4MDAgOTdjNWU2MDdiNzk3NzMyNjdkMjg4YWY4MDVjMzM1YWViNDkxYzczOCBsZWdhY3ktdHJ1bmsKKzM4MDAgOGQ4YjdkYzk5OTgyZTM2MWQ2ODViYjAzZjUxMzA0YTJjN2ZhNThkOCBhbHBoYTEwMAorMzgwMSBjOWIzZjc3ZTE4YmFlZmFlNWE5MmQ5NTg1ZDRmYmRhODBhMjk5Y2NiIGxlZ2FjeS10cnVuaworMzgwMiBjM2Q3ZjgxNGIyZDA2NDAxYzdiMGNiYmJkYjljNjg4M2M2ODU2NTE3IGxlZ2FjeS10cnVuaworMzgwMyAyNjAzYjQyMGM1ZGVjYWM1MTc4YzQ0NjZmN2M5ZTNlNmE2ZWNiN2E2IGFscGhhMTAwCiszODA0IGU5YjBjY2UzYjk4MDkzZTBmNzRkYTQyN2NjYTljMmExMGQ0YzJjZjEgYWxwaGExMDAKKzM4MDUgMTdlNWM5NGY4NjJmNzY3OGYwYTQ4YmVmYjk5OWRlMTcyMjZkYTEzNiBsZWdhY3ktdHJ1bmsKKzM4MDYgMTVlMWI4NjEwNGE2ZTYxOGY5MmMyMTdmZDYzZDc4NTIzZDRmZGJhYSBsZWdhY3ktdHJ1bmsKKzM4MDcgOTk1YThlZjRhNWMwNGYzZTY4MTE4MTY4YmUwN2EzZWI4OTI0OWVlNSBsZWdhY3ktdHJ1bmsKKzM4MDggZWQyMTFjNzYxMDg1OGJkNmQ1OTRhMjA3MDdlMzVmYTI0MmJkNTAxOSBsZWdhY3ktdHJ1bmsKKzM4MDkgODdjYmY5ZTIyNzI5OGU2YTliNjUzMmJlOTJhNzcyYmVhNTUxMDBkNyBhbHBoYTEwMAorMzgxMCA1YzZjOTkwNjZiMmM3MTA5NjI4ZmY0MDNjOGRmNWY2ZjhiNTlhNzhkIGFscGhhMTAwCiszODExIDQ4YWVjOWQzODUyYTk1MjkxOWMwZGM4MmZhODFkNzA1MDg2MmVkOGUgYWxwaGExMDAKKzM4MTIgODY5ZmJhODA5YzY4OWUzZDY0YTYzNDhmOTVmNDMxZTQyYjg2OWE5NyBsZWdhY3ktdHJ1bmsKKzM4MTMgNWMwMTkzMWRhNTliZDFkMThlMzY3ZWMzYTliMTc4MmNlM2U3OTQ4YiBsZWdhY3ktdHJ1bmsKKzM4MTMgN2MzNTdjNmEyOGJkYzg5ZGVkOGE0OWU2ZWI3NDg2MzIwYjNmMGFkMiBhbHBoYTEwMAorMzgxNCA3ZWNkNjM4MDU2NmNiMzE4YjJjZTJkNmQ2ZWVlNjMxMjVlZTAyZGYzIGxlZ2FjeS10cnVuaworMzgxNSBlMDUzYTg3ODI4ZjQ0MjYyYjNhZDI2MzkyYmU0M2U0MTRjOTk2ZTllIGFscGhhMTAwCiszODE1IDk3OGJmMTM0ZjQ0YWI3YzNjODRjNDc2YTI5MWU3ZjRlZDk3ODM2YTYgYWxwaGExMDAKKzM4MTcgOWZiZjM0ZTFjMWY3NmJmMTQwNGY4ZWJlNmMyYjI2MzcyNDQzZTQyMiBsZWdhY3ktdHJ1bmsKKzM4MTggNWExN2M0M2RjZmYwM2NkOTIxMGQ1Y2NjNWE4MzUxODlhMTc4NDQ4YiBsZWdhY3ktdHJ1bmsKKzM4MTkgNDA0N2YyMjRlZmRiMGVjNzg4MmRkYWJlYTI4MDIyMDc2N2RkNTlmOSBsZWdhY3ktdHJ1bmsKKzM4MjAgNjMwZTAzMTA5YzYzOGRkMTZjZGU5Mzc4YWZhNDExZjhjMjlkMWY2ZCBsZWdhY3ktdHJ1bmsKKzM4MjEgZGYwYWVlNjQxMTRiY2YxZjkyMzk3YmM4ZmM4NDQ3YWI2MTRjYmJiZSBsZWdhY3ktdHJ1bmsKKzM4MjIgMWZmNmNlZGQyMjQxMmRlZDc1NzQxZDlhNGQ3ZmM3YWRhNTBiOWJjNiBsZWdhY3ktdHJ1bmsKKzM4MjMgMWMzNjQ0YmFiODZhYjUzZjJmMjkyNjQxMTFkM2Q4MmFkMTE4NTZiNyBsZWdhY3ktdHJ1bmsKKzM4MjQgYjY4ZmI3Mzk4NWQ4MzZhNDMyMGFlYzBjNmQyZDMxYTYzNDI3YWQxMCBsZWdhY3ktdHJ1bmsKKzM4MjUgNDQzNDcxZmYzMTQ3MGEyZWIzMjMyOTBiNjJhZDhlMjFhNjkwM2E2YiBhbHBoYTEwMAorMzgyNiBiYTI0ZmM4ZDNmOGM1NWRmNWIxYzQzYmVlZmQxMjM0NDE3MWY2OGY3IGxlZ2FjeS10cnVuaworMzgyNyAwZWZhMjQwYjFkYmMwNTdkYzQ0ZmExZDQ0ZDRjNGQ4ZmVkYWM1NjM4IGxlZ2FjeS10cnVuaworMzgyOCA1MDU1MzA4MTUyYTRlMjg3N2I5ZTVmOTcyZGUyN2FlODczZGIzMzg2IGFscGhhMTAwCiszODI5IDVjZWY0ZjVhMjhjZWRmY2E1ZmFkZTgyNWVkZmM2MGIwN2ZmNmU4ODggbGVnYWN5LXRydW5rCiszODI5IDllYzdkNmY3NzUwMGNhMDkwYzIxOTFlMGIzYjQwYzY2YTNlMGZlNzcgYWxwaGExMDAKKzM4MzAgODFmMjZiZjExNzhmOWUzNzEwYzA4YWRmNmI4Y2M5NDJiMTZmZmQxNiBsZWdhY3ktdHJ1bmsKKzM4MzAgZWUzZDVlYTEzYTM3YjkyYzZlYzA1OWVlOWQ4Mjk4NzNiMTYxOTY0MiBhbHBoYTEwMAorMzgzMSA0OGFhM2QzMzE0YWMxNzFkYjVjZTE3ZjY1NmU0YjRjNzEwMDBlMWEwIGFscGhhMTAwCiszODMyIDk4MDYyNmVjYWQ2MWQ4ZDA1NmYzOWZlYzRlMmJhODk0MzRmYmFkYzYgbGVnYWN5LXRydW5rCiszODMyIDVjMzUwNjMxYzgzOTYwNWExZDNhZGM1YmY0M2NhZjE0ODA1ZDFmMWYgYWxwaGExMDAKKzM4MzMgM2U2NWJmZDE1NzZlZDk4YTA4YTE5NmM3MTZhZDVjODJhMzA0MTFmYyBhbHBoYTEwMAorMzgzNCA5OTMwMDg3ZWE4ZjVlNmU4ZDdjYzU0MzI2YTZmYjg0ZWEyOGI5Yzc1IGFscGhhMTAwCiszODM1IDhjODlmNmVmOWY5ZjhmNTQ3ZDU3Yzg1ODZlMzBlZWI4M2RlZjM0MzQgYWxwaGExMDAKKzM4MzYgY2I1ZmQ4MDA2OGNlZjI1Njg5ZGI3ZGNiYmRmOWUzNzE5Yjc5ZThjYSBhbHBoYTEwMAorMzgzNyBiYWZjNTMzZTBlYjZhYzVhYTVmMDgyZWNjZmJkMzE4Mjc4ZjZjNTQ3IGxlZ2FjeS10cnVuaworMzgzNyA3MDMyYThhMmM0MmM1MjI0ZTNjZjUyZjNjODg2ZWMzNmNiNTNkMTMwIHVubGFiZWxlZC0xLjEuMgorMzgzNyBjOTZmYzQ5N2I5MzJmNWRkMjg2MDNiMWRiZGM1MWUxYzllYjdkMDQxIGFscGhhMTAwCiszODM3IGIxNWI4Y2M5YjhkMTBlMDM1MmEwYjhiN2U4ZDUxZmEzMDlkYjZkZjMgbGVnYWN5LXRydW5rCiszODM5IDI2OGU1NzYzMDAxNjIwMjgwODYwOWUxYTg2ZDBkYjA4ODM4ZDY5MjUgYWxwaGExMDAKKzM4NDAgYjcwZjA4OTA3NTQ2MTdiZjNmODU4MTI0Y2ZiYjdjMDUxNzA2YjQ5YSBsZWdhY3ktdHJ1bmsKKzM4NDEgNmY1MmI1Mzg5Yjg4ODE3ZDQ0YjcxNDg4NzFkN2MwNzA0OWFhOTc3OCBhbHBoYTEwMAorMzg0MiBlMzgwYjRkNTRmZDM5ZWFmM2FiODlhMWM5NGUzYWQxODk1ZDY5NjhmIGFscGhhMTAwCiszODQzIDVkZmQxZDUxZDY2ZGVhYTU2NWU1YTc3MGU0NmNmMDBkODBlYWE1ZWEgYWxwaGExMDAKKzM4NDQgNjk2NmQ5NTdiNWIxZTc1MGY2MGZkZTUzN2IzOWE1MGQwYjhjYTVlYyBhbHBoYTEwMAorMzg0NSAyYjVmOGIyMDIxYmZkNzMwOTRjOWY4MjI4ZWU0OGY2NjI0ZGM1ODE3IGFscGhhMTAwCiszODQ2IDhkZjcyZTU4ZmE5ODAzMmM3ZTQyNjFhMTUyYzQzNDg0MDZhMmE4ODEgYWxwaGExMDAKKzM4NDcgYWQyMTY4NzZjNDdmYmZmNzA0YjNhZDIxMDVkOTlhMmE1YWI4OWMyNCBhbHBoYTEwMAorMzg0OCA4YzY4MTRmMzRjZGQ5MzZmMDczOTBjM2QwN2I5ODE1ODhjNGZkYjBmIGxlZ2FjeS10cnVuaworMzg0OCAyMmI3ZDM3MzViZDI1ZmVjM2ZjY2U0MTZmMzRjMDhmODk4OGUyNzY5IGFscGhhMTAwCiszODQ5IDZkMzUzMDgyNjFmNGY3NGQ4NWMxMDNiOTc1Yzg0MzRlNDA3Nzg1YjkgbGVnYWN5LXRydW5rCiszODQ5IDc3MjNlMDAwMzk4ZGE3NzQ0NDlkN2VmZDY1MDU4YmMxOTI0OGU1MGYgYWxwaGExMDAKKzM4NTAgNTk3MzM1NGZiNDk5NTRmNzI0NjVmNzEzMjJjYWVjYWI0NmFkMGM3NSBhbHBoYTEwMAorMzg1MSBjZDI3OWUwZjc3ZDg1M2YyNjNjYTc2MzU4MGZlYzEzNTM1OTZkNDc3IGxlZ2FjeS10cnVuaworMzg1MiBjMzQxNWIzMTliNGU4NjkyZjljNjRlMjc3YTQ3ZmJjMTZiOGUxOGZkIGxlZ2FjeS10cnVuaworMzg1MyAxNzJhYTBlZWViNmY3Y2JmMGI3NTQxZmZkZDgzNzg4YWFkYjExZjk0IGFscGhhMTAwCiszODU0IDI3NDA2NmJkZTI0MTIzY2FjMDU2MzVjYjU5MjM4YjAwNmNmZTQ5YWEgbGVnYWN5LXRydW5rCiszODU1IGRmMGZiNzg4YzBjMWY1MDY1MzMxMzg4YmIzOTFjNjRlNDQ4NTBlN2MgbGVnYWN5LXRydW5rCiszODU2IDllMzQ0NDhhMDA1ZWQ3NWZiMGE1YjU5NTc3MTRmNGM3YTJjY2ZkZTIgYWxwaGExMDAKKzM4NTcgMTZkMWRhYjNmMmMxYjliMzMyYTc2NTAyYWViMDZlNzNjZTkzYjhhYiBhbHBoYTEwMAorMzg1OCA4Y2M5MDhiMGQ4M2JkZTI1ZWYxMTljNjUyNzk0MDc2NTJhZjA5ZGRmIGFscGhhMTAwCiszODU5IDMyODZiZmY0NDNjNmEwNjYwYmNkNTgxYjFjNzQyMWY4Y2Y4YjRkNjEgYWxwaGExMDAKKzM4NjAgMjc0YjkzYjEyMTEzZjU4OWE1NWQ4ZmE2ODRjODA4Y2E0OGNiNzE5ZiBsZWdhY3ktdHJ1bmsKKzM4NjAgZTVkNjY1MjMxYzU4OTRjNjM2MWIzM2M4YTJhMDdiYmNlOTI3ZDBlZCBhbHBoYTEwMAorMzg2MSA4ZWFiMmVlNDBmMzJkYmRlZDhhYzY0ZTJkY2JkOGViOGE2Y2M3NWQ0IGFscGhhMTAwCiszODYyIDI0OWZlNWUyNGUyMGViOGQ5ZTNhNzcyYjdiZWMxNjc3ZmQyZTVmODIgYWxwaGExMDAKKzM4NjMgOGFhYmU5YWFlMGZhMDdhNmFhNTQyZDFmZjhjMjgyYWVlNmM3NmM1NCBsZWdhY3ktdHJ1bmsKKzM4NjQgY2Y2MGEyYjI0OTc5ODU4ODlmOGJmNDFiMDE3NjU1MTM2MGJhMjlhYSBhbHBoYTEwMAorMzg2NSBmNGRiOTJlZWYyYWY3MTdiNGVjZmQ3NTUxYjRiMGY1NDc0NWIzNTEzIGFscGhhMTAwCiszODY2IDAyMGQ4YzJkOWQzY2ZiM2QyNjg1YTA0YjM2ZDM2YmYzZDVkMzQzYjkgbGVnYWN5LXRydW5rCiszODY3IGJkMWE0ZDcxN2U5ZDFlZTQ0ZWE4ZWEzYThmZWNlNzQyZWVjMmZjZTIgbGVnYWN5LXRydW5rCiszODY4IDc4MGYzMzViZjUyNGI3MDU5YWU2NDI1NWY5MDllMDBlNmJiNWE5NGQgYWxwaGExMDAKKzM4NjkgNTlmZDQ2ODZmODhjYTY0YjRiN2IwM2U4YTYyZGIzNGFiNDNjM2YwNSBsZWdhY3ktdHJ1bmsKKzM4NzAgYjNiZmY1ZWQ1ZDNkMDg5NDFjYmQ0ZDI1Y2Y4NDQ5MmU3MzJlZWM4MiBsZWdhY3ktdHJ1bmsKKzM4NzEgOTYwMDU1MzkwMGQ0N2VhMTQwNTAyODNjZDhlZTlhYmFkYTQ0MTdmNiBsZWdhY3ktdHJ1bmsKKzM4NzIgYjMzNzIwZDBhZDk3YjE1Mzc5NjE0OWVkNWE2ODgzMTljMTU4YTM0OSBhbHBoYTEwMAorMzg3MyBjZGFmYzk1MWU4ZThiMzBmZDEzMjA2ZjRiODBkZjE0NWUzZTNkZDhlIGFscGhhMTAwCiszODc0IGRkZGNiYTIwMzhiY2I1YjJmMTlmZGYwZDVmY2JkNTNmMjA4MGU4M2MgbGVnYWN5LXRydW5rCiszODc1IDdkMjFjOTIzYjU0YWViZjNjZGQ3MzFkZmY1OTIzOTg5NjM1NDE0MGUgYWxwaGExMDAKKzM4NzYgOTAzNzk0ZGY1ZWE5ZWVkNTVhMzAwYWNmMmY3NjFjNTc4ZjI2NGE5MSBhbHBoYTEwMAorMzg3NyBlNDQ0OTlhNDRjYjhlMzc0ZTM1YmJmNTRiM2FhNmJmYTBmNjE3NzA5IGxlZ2FjeS10cnVuaworMzg3OCAzNzAwNTBjZDBiNmM1MDFlNjAzNDhiMDlkNGJmYmFlZTI0M2JmOGFkIGFscGhhMTAwCiszODc5IDhkMjZlZTI0YWQxODJlYTBlOGFiNjcxYTQ3Zjk4ZDc1OTE3MmMxYTkgYWxwaGExMDAKKzM4ODAgM2FjZjgxOGYzNTQ4MzFmNDYyMzY3NTUxYjFiZWMyMGE1MjliYmEwMyBhbHBoYTEwMAorMzg4MSBjZGIxNDA0MWNjODdiYjY0MGFkMDRiMDRiMjAyZmNmYmNlN2JmZGVjIGFscGhhMTAwCiszODgyIGFjYmE0NDI3ZTg5YzcwMDA3NDhmOTg0YmRhNmViMjNhNWZjMzcyZWQgYWxwaGExMDAKKzM4ODMgM2QwMTY5OTkyNjRhYzJjNzNlYzhkNmI0NDBmMWQ4NmY3ZDU4MjFjNSBsZWdhY3ktdHJ1bmsKKzM4ODQgYWYzZjJhMDNiYjE4ZmUwZWVmOTdkOTZlZDRlYTE5YTEyMmE5MmFmZSBhbHBoYTEwMAorMzg4NSAzY2RkYzY3YmUzZjU3NTY2MmNmNzM0YjUxMjQ3MWVmYjUwMGY4NjI2IGFscGhhMTAwCiszODg2IGFlNGI5Y2I1YmExNTYxMTI4YWNiY2NjMzk3YjAwNmYxODEzOTA3MjQgbGVnYWN5LXRydW5rCiszODg3IDA2YWE2MDhjNTg5ZTg2YzU4NmJjMWNjZDI2MGZmNWI1ZjRmOTAzZDYgbGVnYWN5LXRydW5rCiszODg4IDkxZjg0NmY2ZDZhNjFkMDQzZDBlNzI0Zjg1Yzc4NGQxNGE3MTVhNTIgbGVnYWN5LXRydW5rCiszODg5IGVhY2FhNGYwNzgyNmQ5YTAwYjIzZjIxNjA0OWQzZTM4YTg3Y2E0NjkgYWxwaGExMDAKKzM4OTAgMmEwZDQ5OTc0MGI2MjRiODgwNzI0Mzk4MzNmMWViZTA2YTc2NTQ5OSBhbHBoYTEwMAorMzg5MSA4MzYyMmI3YTAwYjUyMzhmODMwNTkwNmNmOGUzNGM4N2NiYzA0OWRhIGFscGhhMTAwCiszODkyIGVhYWJhMmNhZmVlYjljMzQwNzg5ZWEyYmE0MzQyMjFjMzk1MzExODkgbGVnYWN5LXRydW5rCiszODkzIDJkMGVjZTU2MDQwNjlhMTYyZjc5NDM0MGJlYjFhOGM4MDQ0OGE2OTYgYWxwaGExMDAKKzM4OTQgNzJmOGUxZTYxNGYwNjMwMzU3NzU5M2M3MWQyMWZkNjkxNTVhOWE1NyBsZWdhY3ktdHJ1bmsKKzM4OTUgNDU3MjhiZmVjYjc2OGYwMjEyODU4NzdjNjE1MWZhOWU2MDFhMzI4ZSBsZWdhY3ktdHJ1bmsKKzM4OTYgNjk1ZmI0OTRhM2EyMmZjOTM2YjQ0ZjUzMGQ4NTljZWNkMTdiYTBiMCBsZWdhY3ktdHJ1bmsKKzM4OTcgN2JmNmIxMjhlOThjNDg4NjhlNTNkN2JmN2JiYWMyNTkyODhjOTAyNSBhbHBoYTEwMAorMzg5OCBmMzI2Mzc1OTY3OGVmMzg0NzJmZDFjMzg2NzE2YTFhZTAyY2IyMjg5IGFscGhhMTAwCiszODk5IDQ0NGUzNDlmOTYyZjBhZTMwMDY4MjUyZTU5ZGJlNTc3OTFmY2M2ODAgbGVnYWN5LXRydW5rCiszOTAwIGIyMWYwNDhjMjNlOWUwMjg0NTBmMWYyZWM0ZDA0YWViNTcxMjliYzQgbGVnYWN5LXRydW5rCiszOTAxIDI4OGE0NjA2ZDJmZGUxMDA2OGRjNzljZWE2YWNkOWY4MDc0NTU4NTYgYWxwaGExMDAKKzM5MDIgMDIxZGFhYmU2OWQ4Nzk1NjYxZjc5ZjY3ZWFlYjI4MmZmMzk2YTUwMCBsZWdhY3ktdHJ1bmsKKzM5MDMgYzE3MzYwYTE2NTg3MDM4YzViZWJiZjNmZGU5YjFkZWU3ZDNhM2YwMCBsZWdhY3ktdHJ1bmsKKzM5MDQgMzJkYTU3ODE4ZTk3YjVmZmQyMDhlYjk2YmVhY2I0YTBkOTgzMGRiOCBsZWdhY3ktdHJ1bmsKKzM5MDUgYjk2MzRiZDVjYTU1YTk4ZTJlZmQ2YjI3OWMwZDkyOWEwZGRmNmM2MSBsZWdhY3ktdHJ1bmsKKzM5MDYgMjM4NGZhYTUzNTBmM2I2ZDFlMGYyYjEzZjJmOWYwZDA1NmI0NTQ1OSBsZWdhY3ktdHJ1bmsKKzM5MDcgYjNmY2RiZDJkOWJiYTUzYjU3ODU5ZTgzMDEyNDJmZTIxYzRiYTMxMiBsZWdhY3ktdHJ1bmsKKzM5MDggOGQ3YWIyYzdlOTkzMzA5MTAyNzVmMDFkYjkxZDhlZWU1NTE2ZDQ1NyBhbHBoYTEwMAorMzkwOSBlOTZhOGNmYmJlZjFiNmEzZGRmNjNlZjkwZmQwOGVmN2Q2ZmU0Nzc5IGFscGhhMTAwCiszOTEwIGM5NjQzNjRhOGY3ZjhlN2MwNGZlNzdlMjk2MmRjMmYyODQyMzYwODcgYWxwaGExMDAKKzM5MTEgYjJkMThmYTUyOWY0ODc2MGNiZGI0YTU3MWQ0MjM1MDcyNTg4YjhhNiBhbHBoYTEwMAorMzkxMiAwNTU2NjE3YWEzMzg2ZTcwZmY0NzBlY2NlMWY2YTYwMzcxZWM0NjEyIGFscGhhMTAwCiszOTEzIGQ1OTBmZmQ1NGY4OThjYTExN2YwMDI3OTIwMzQ3YzFiYzJlOTE5NmUgYWxwaGExMDAKKzM5MTQgNzliYjY4MjcwYzdiMTJjZGIwMzZhMGFmZDYyZTI3Y2VkODVhMTc2YiBhbHBoYTEwMAorMzkxNSA0MWJjZDE4NTNmZWE1N2RiOWI5ZWQ3ZjgyOWI3NzdmOGUwZjhhYTg4IGFscGhhMTAwCiszOTE2IDEzMTMyM2YxNzE1OTIyZmRlYzBhNzQ1YmEwYzlhYTJkOThjOWYxNWQgYWxwaGExMDAKKzM5MTcgODEwMTg2NTBkYzMyNDVhOTZlYmMwNDMwY2ZiMzhmOWEyYjkwYWY4YyBhbHBoYTEwMAorMzkxOCBjMTNiYmRmZWViZmZlNmMxZTBmNGUwYWFkNWE3YmNlMWQwYmJjYmRhIGFscGhhMTAwCiszOTE5IGNhNWVkNTJhY2EyN2E2YThkNzYwZWYwY2I5MTc5MjhiZTI5MTVhMDYgYWxwaGExMDAKKzM5MjAgZmM0NWU1NzdmZjliMjBjZWE4NTM3OWI3ZDI3MDRhZDdlYTc0N2Y2MiBhbHBoYTEwMAorMzkyMSBhNzA0MWQ2ZjdkZTNlMzU4OTc3ZGE5Mjg3OGRjMjQ1NTRkMjBjYTEyIGFscGhhMTAwCiszOTIyIDVlZmZhYWQ3MWJhNTJlNWU2YjQ0MGM4ZDg1M2I2NGY0OWIyOTZiNWQgYWxwaGExMDAKKzM5MjMgYWQyMjcwZTcxZWMzZjBiNjUzYzI3YzI2ZmExNWJhM2NlZGVlOTI5NCBhbHBoYTEwMAorMzkyNCAzNDY5ZDA0ZTNlMzZkNWZjYTg5OWJmNGNiMGM5ZjE1NWI1YTQ3NTEwIGFscGhhMTAwCiszOTI1IGYwNzE0YmI0ZWE5NmExZTEwMDgzMjJlZDViNzFlNDM5Zjg3MzMyNzggYWxwaGExMDAKKzM5MjYgMzM3YWJkYzE1ODRhNDI1ZTU0NDNhODkyN2ZkYTMxYmViYmExNjU5YiBhbHBoYTEwMAorMzkyNyA3Yzc1ZjYwNDY4ZjgwMmQwZjczMzI5NGYxY2ZmYjZhZmJjNTE4YTdlIGxlZ2FjeS10cnVuaworMzkyOCAyMjM2ZDcwOWZmMmRhZWE2MDhmYTA0YmRlYzUzOTFkMjE1OTZkNGI2IGFscGhhMTAwCiszOTI5IDkwYTIwOTkzNzQ3ZDFmMzhhNWEwYzRiYjVmMjUyNDYwYTU2ZDMxYmQgYWxwaGExMDAKKzM5MzAgYzFjZGVlZDhjNTE0NGY1ZWU3MjMzMmU3M2U1ZTA0MDZiZGMwYjVjZiBhbHBoYTEwMAorMzkzMSAzZDhiYTQxODQ4ZmYwZjgyMjU0NDQ1ZTI2OWViMWM4ZTMzMDdjYjhhIGxlZ2FjeS10cnVuaworMzkzMiBiNDU0ZGM5MjQ3YjA3NmI3Y2E1N2NhOTZlOGMxMjRlMGRhMDkyOGE4IGxlZ2FjeS10cnVuaworMzkzMyA5OThjNjQyMmNkOGFhZTAzZDI4YjhhNWQzMmNiYjZjY2I2NjhhMzE0IGFscGhhMTAwCiszOTM0IGJjZjBiOGRmZGFlOWY0NDZkNjEzMWU0OWUyODYyNGQ4MzFiMzhiYjQgbGVnYWN5LXRydW5rCiszOTM1IDdmZGVhZGZhODNlMGNjNjg3ODhjMzcwNDljYmIyODcwYjA3ZTAxYmUgbGVnYWN5LXRydW5rCiszOTM2IGFjMmU1Y2MyOTk0OWQ5ZWQ2YzNlYzA1OTQxNTQ5M2FmNjAxYjMyYTEgbGVnYWN5LXRydW5rCiszOTM3IDU5NGE4YzEyZDY4ODI3NmYyZDIyNzBmOGI0NmMwZWRmMDRjYjBlZTkgYWxwaGExMDAKKzM5MzggZmNhMmZlZGVhNzFjYzY3YWEyMjBiZWZjMjVhOGZiNjFhOTVhYjRjMCBhbHBoYTEwMAorMzkzOSAyYzZmMTMzNzgwMWNjMDEwMmVmNzMwOTZiZjBkZTZhNmMxYWUwMTgzIGFscGhhMTAwCiszOTQwIDEyODdmYjA1OTU4ODhjMDE0N2M0NTVlYjY2MjQ3Zjc3OGQ0ZWVkYTQgYWxwaGExMDAKKzM5NDEgZjY1Nzk0ODg5MzQzNzBhNDQ0OGU2ZTNjM2ZmNzU0MmQzZTc1YWQ0MSBhbHBoYTEwMAorMzk0MiBhYzllMTJiNGVhOGM2NTdiY2EzNGUxOGE3MTE3YjBiNDRlM2RmZTE3IGxlZ2FjeS10cnVuaworMzk0MyAyMGRmNjUzMzc2YjQxN2I5OGUyYWFhZWQzYWRlYjQ3NWFjOTE1ZjMyIGxlZ2FjeS10cnVuaworMzk0NCA2NzIwMTE4NzFhMWI2NDA1OWI4ODAwZmFlMWU3ODdiNDAyNTUxNTE3IGFscGhhMTAwCiszOTQ1IGE1YmRmZjk3MDU5NTFmYTZjZTdhNjRiOTQyMTVlOTY1MDc4OWQ4YzQgYWxwaGExMDAKKzM5NDYgODhkZTIxZWY0YThhMzBmNmE5MTY5Yjg5NmZjMjZhOGM3YWM5MzcxZiBsZWdhY3ktdHJ1bmsKKzM5NDcgYmE2YWM4MmZjYjY4NmRlMTVjYzM2YTdlM2ZkMzQ3NThjNWE0YWQ4ZiBsZWdhY3ktdHJ1bmsKKzM5NDggYjM0NDM1NDZkNmVlNGIwMDk4ZjkyYjBjNTQ0ZWIyNTQ3MWU5MDgzZCBsZWdhY3ktdHJ1bmsKKzM5NDkgNDU3OTAzNTZlMDI0Zjc2MjA2YmMxYTQwZThjYTdhYjUxYjZhMDg1MiBhbHBoYTEwMAorMzk1MCAyMTk3ZGQyNDFkOGRjODYyMTVjYmIyZDlhYmVmODE0YTM4NjZmYjc2IGxlZ2FjeS10cnVuaworMzk1MSBkZWE2N2MyYTRjMDdmM2JkZmVjOTQxMmI2MWI4ZDE0MGY2OTNiMzQ4IGxlZ2FjeS10cnVuaworMzk1MSA3OWFiNGRmOWQwZjVmZjJmMmM5YzNhMzA2ZjFmZWIxYWQyYzUyODE0IGFscGhhMTAwCiszOTUyIDllMGVjZTZlZDgxZDdhMGFkNDU5MzRkNjIxODBjYjVjMTBkMGE5MzMgYWxwaGExMDAKKzM5NTMgY2EzY2NhYTg1MDYwMjZmZGUxZjJiOTY4ZTNjNTJhZTQ3MjE4NDk4MyBhbHBoYTEwMAorMzk1NCBlY2JhZGI4MTg4NDc1MDNiNjhiZmZlMWFkZjFlNzRjZjRlNTdhNDdkIGxlZ2FjeS10cnVuaworMzk1NSBiMmM5MjJjZmI0ZDk3YmNmY2Q4OTUwY2Y5ODY1NDU0MjU4NjYwZDZmIGFscGhhMTAwCiszOTU2IDRiY2Y1ODRjMTU3MmI0ZjI3MTgwMDA2MDVkZmE3OGU4ODgzNTc0NjYgYWxwaGExMDAKKzM5NTcgODNiNDFiZjE5MzkyZWQzZmY0YWI3NGEzNjE3YmJkMzk5YTgzNDQ4NyBhbHBoYTEwMAorMzk1OCBkNzQxMDQxY2IwNzZlYmNiZTFmNGJiMzk3YTk5ZWZlYzk0OGRlZWNlIGFscGhhMTAwCiszOTU5IDA5ZDc3YmI3MWQ3NWI1M2RlYjVhNDhiYzIzYmFmOTdjNDU3MDZmZGUgYWxwaGExMDAKKzM5NjAgY2UzMjg0NzE2NGUxZTZkMDc3MmM0OTEzNmM5MTNjNGM4MDJhMDA4ZCBhbHBoYTEwMAorMzk2MSBlNzZjNjg3YWM3ODFkNDJhNzQzNTk2OGEyNzQ0M2U3MzVhNDMyZmQ1IGFscGhhMTAwCiszOTYyIDZlYzE1MjIyMTc5MmU2NWY3YTExZTJhYjVlZWY1ZDE0OGJmMWYyYzEgYWxwaGExMDAKKzM5NjMgMzNkMzM0NDNlYzQ1OWZkMjI4Y2Q1NDVlMTRkNWU5ZDVkYjliYjRiNCBsZWdhY3ktdHJ1bmsKKzM5NjQgMzAxZjhjYTk4ZTBiNWY0NDBjOWQwMTQ1MDc3MmQzYzhlMGVhOGExMyBsZWdhY3ktdHJ1bmsKKzM5NjUgNTdiOWI3N2RhMjFiMzlkNWE5YTVjOTE3YTgxMWRmODJmMzlmOTIxMCBsZWdhY3ktdHJ1bmsKKzM5NjYgNWU1YTYxYmRkZTBiNzgxOWNkMjM5ZWVkZTk4NWIwYjZiZWQ2OGI1ZiBhbHBoYTEwMAorMzk2NyA5MDdjNWRkODljNmNlZmJhOGE0OGQ0N2RiMzlhNDA5N2Y5NWI3MjFhIGxlZ2FjeS10cnVuaworMzk2OCA0ZTdlYjVhM2ZiZGFmMTIxNWVkNzAwMzY4YmQ5ZmU4ZDIwODkwMTFmIGxlZ2FjeS10cnVuaworMzk2OSBjMmZmMjE2M2YwYjcwYzFlY2QwZDhhYWMwM2Q1MzM5YTQ0Nzg5NmUzIGxlZ2FjeS10cnVuaworMzk3MCBlOGJmMTA3NzE3ODEzOTdiOGQzNzQ1MjlmMTEyZjk0YjQ5YWM4NTAzIGxlZ2FjeS10cnVuaworMzk3MSA2MGE3MjE0ZjMzYTg4MTY1YzcwNGI3MzE5ZWU2MjhkNTNiY2M4ZThhIGFscGhhMTAwCiszOTcyIDU0ODg5MTFlYmMyNmVjNzI5NjVhYzMwOTFiMjdlMDMxMGJiMTcyZTcgYWxwaGExMDAKKzM5NzMgMTQzMWFiYjI4MzUzZjQ4NTBlYTVkYmMyMWIyMDYyNGYwZWYwY2RjZiBhbHBoYTEwMAorMzk3NCAxMjlkOThiNTE3YzI1NmZlODViNDM5MjYzNzZhYTA2NjRkN2FmNDllIGFscGhhMTAwCiszOTc1IGE3NTRiYzc0ZTU4NGRhZWE3ZjEwZjQ4YmVmOGM3MzE5OWNiYWM5NGMgbGVnYWN5LXRydW5rCiszOTc1IDc1OTM5ZGNjOTM4YTcxYWRhMWVkODljMzU5MTI2YzBkYzE2MDFjMTcgYWxwaGExMDAKKzM5NzYgMDc3MDgwZDc1OGRkYTY4MmVkNjE4YTNhNWM5YWZjZGQ3N2EyZWUyOCBhbHBoYTEwMAorMzk3NyBjNmFmYjk2YTQ1MjMwZjU1MWRmMTRhYzIxMTljYzgwYTM2NWMxZWFhIGFscGhhMTAwCiszOTc4IDVjMjlmNGIxYjI4NTE1MjUzNGEwZTI1NzZmMzcyNzY5NTBiZmJkYjMgYWxwaGExMDAKKzM5NzkgZTI5MTEwNWIxYmVlYWIyNjljN2EzNGNkYjg5MjE3ZjFiMTc4ZjU0YSBhbHBoYTEwMAorMzk4MCA2OWQ1ZGMyNGNiM2I1NTlmOGNkMTllYWU1MjkwM2QwMTdmMzA1OTQ2IGFscGhhMTAwCiszOTgxIDI0MWMzNTVmZDllYWQ1NzNmZjA4MDg5MWY1MTMxMjc3M2Y0ZmU5YTIgbGVnYWN5LXRydW5rCiszOTgxIDhkZWQ4YzY1NTExZGE0M2JkMGI5MDM0NzA4NzViYjRkZWI5NWVkNjAgYWxwaGExMDAKKzM5ODIgMmU4ZWFlZTllZjQ1Y2VhNmVjMWE4YjI1Njk4MWU0ZWJjOTgyNzllYyBhbHBoYTEwMAorMzk4MyBiZTJkYjMxNDIzNTc0ZDYxODRiYjVhMTRiYjk2NzhlZjY3ZTAwNzM0IGFscGhhMTAwCiszOTg0IDIyMWQ0N2IyOTc0ZTczYWI3OTFhNDBjYjlkOGFjNWNmNDRhOTk3NzMgYWxwaGExMDAKKzM5ODUgNzhhY2FkZWEzOTE4ZmM5NjdlNTU4ZjBmZjQ4Yjc4NjhkZTE5ZjVkYSBsZWdhY3ktdHJ1bmsKKzM5ODUgZjlkYmJiYjE3OTI5MDI1ZDA2ZDYyOWE0YmVkM2U1MWExMTMxYTcyNCBhbHBoYTEwMAorMzk4NiBhY2VhMTEwMzEyOWJhYzExYWY2MWRkYTdmODEyYzUxOGRhNWI4NmNlIGxlZ2FjeS10cnVuaworMzk4NyA4M2VlNzY0OTgyM2QyNTZjZjI3OTEzYmI0NDhmOWM0YWZjOGNmZjhlIGFscGhhMTAwCiszOTg4IDQwNDhjY2Y4NWIzZDI0NTY2NzU0YmEzMDMzZWI3NGNjZjg2NDYwMzQgYWxwaGExMDAKKzM5ODkgZDdhODU1N2U3ODBjZDUyNmE4NTUzOGFlYTZhMWQwZjQ0ZDU0OWJkOSBsZWdhY3ktdHJ1bmsKKzM5OTAgYzk0OWRjYjAzNDhiZTRlYWJkZmU1MWVkOTRjODU5YmQzMmNlNzdjNiBhbHBoYTEwMAorMzk5MSA3Yjk4MjhiYzcxZGQ2NDkyNTlhYjRlZDdjMTVkOGEyMmRlYWI4YmQxIGxlZ2FjeS10cnVuaworMzk5MiBlMjBkMDY5NGU3NDAxNGViZjZkYWI2NGQ5YjI2ZDMwYmZhNWUzZDMyIGxlZ2FjeS10cnVuaworMzk5MyAxMDM2ZjIwNWNjMmQ3YTVmMTA3Y2RjMWZiZWUzMjA3NDk4MTkyYzA1IGFscGhhMTAwCiszOTk0IDcwNDkyZDY1OWUzYzdjMTI0ZDNmY2IxNDA5YTIwOWIzZmQ3MjVjY2IgbGVnYWN5LXRydW5rCiszOTk1IGE4Mjc1NTYyNzg0Y2QyZjI2OTE5NjExYjA4N2U1Njk5ZDYxNDM4ZjggbGVnYWN5LXRydW5rCiszOTk2IGY1MGZlNGI5NTJiYWExNzJkNmRmZmEzYTI4Y2FkNjI5NWVkNWQ3MzEgbGVnYWN5LXRydW5rCiszOTk2IDAzMjZiNWQ2MTQ0NWVlM2E4ZDNkZTI4MTE5Zjk2NTJjYjcyZDJlM2YgbGVnYWN5LXRydW5rCiszOTk4IDZhMDFmMDk5ZjBhZDhkNDU0N2RkN2M2YThhMWQ4ZWFjNmU1ZWJmZGYgYWxwaGExMDAKKzM5OTkgMzY2ZjhkZWU5NmZiZjRlNzc0NjA4ZTBlZGU5YmMwYWI0ZDdiYTJhMSBhbHBoYTEwMAorNDAwMCAyZTA1MGE1MGFhMGEwMWYzNTM1ZGEwMjc5MWE2YTBmZTE5MzMzZWYyIGFscGhhMTAwCis0MDAxIDJiMjc1NTMwMjhhYWMyM2U2ODcwODE3OTg2MzljNDE5ZDM0Y2MwOGYgbGVnYWN5LXRydW5rCis0MDAxIDc0OTIwYzNhMzY3ZDJkMWM3ZjI5Mzg4YjI0NDQwMWZkMmVlNDM5ODcgdW5sYWJlbGVkLTEuMS4yCis0MDAxIDIyNTQ4MjI5ZDZmZGRjZTMzY2Y1N2EzOTMxZmJiNzI3MmM0YmU3NjYgYWxwaGExMDAKKzQwMDIgMDQ3N2JjMzljOTM1OTJhZDkyMzM5MWY3ODMxNDFkZGE4MTgzOTQzMSBhbHBoYTEwMAorNDAwMyA3Zjg5MWYzMjg2NGNhNTJhMWQwYzc5NmJlYjdiMzAyZDkwMmNjM2Y5IGxlZ2FjeS10cnVuaworNDAwMyA4ODk2ZTRlYzA5ZmM0YTQ2ODQ4ZjQzOGIwNDFkMjA4YjI1NTM0ZTIwIGFscGhhMTAwCis0MDA0IGIxNGM2Yjk1NTE2MWNhMDRhZTA5M2E4NjcyM2Q0NDAzY2ExMzBjYmYgbGVnYWN5LXRydW5rCis0MDA2IDg0NTQ1NzlhYjUyZjM3MWRjZjU1NDZjYjUzMGUyZGQ2ZmQ2MGZmNWUgbGVnYWN5LXRydW5rCis0MDA3IDljYzg1OGJkNTczZGUzNGYzMDlmZTE2ZWE1YzQ4ZTk0NmI3NTM3MjUgbGVnYWN5LXRydW5rCis0MDA4IDgxMmQwODExZmNmM2UwNjJlNDUxNTliNDM4Y2FiYWFmMDAzMDhjZDIgbGVnYWN5LXRydW5rCis0MDA5IGE3NWRjODY1NmNiMGEyMzkzZGJhNGMyNTJmMzFkMzEyYmU0ZDEzMmMgbGVnYWN5LXRydW5rCis0MDEwIGI2YjUwZDk0MTI1ZmQ0MmYxMDJiYzBkOGZjMDQ0M2M0NzU5NjI4NGQgbGVnYWN5LXRydW5rCis0MDExIDg3YTJiMDRjNDY4MGJkMTIxZmMzZTY4NmZmYTg3OGY2YjRmYTMxNmIgYWxwaGExMDAKKzQwMTIgOTZkMGRjNDczOWVjYTI0ODIwNzUzYjE0YmRiZWIwODE3MDdhYmQyZSBsZWdhY3ktdHJ1bmsKKzQwMTIgMWNmNjA4NTY5N2NkNWEwYTRlMDJiM2YwOTI0ZmEyNTY4ZGVkMDEyOCBhbHBoYTEwMAorNDAxMyA1NTJiMjFlN2MyMzBhNzlkMjZiYzMxNWY5ZWY1NjA5OGQwNGQ3NDc1IGFscGhhMTAwCis0MDE0IGMxZmIyYjZjNDc0Y2VhOTNlZTU0Y2M4MWYxNGU2OWEwYmNjNDI3MTIgYWxwaGExMDAKKzQwMTUgZTQxYTY1MzA2NzA2MjAwNWEyYzVlYzUwNmNhZGUwOTdkMWI4NDQ0NiBhbHBoYTEwMAorNDAxNiAxNTEzMjFhMThkYjRhNzhiODg3YTdiNjA3NmE0MGU2MGQyZTA2NGJmIGxlZ2FjeS10cnVuaworNDAxNiA0MjQ4NmJmMjM2NDdkYjQzMDI2NWE0ZTMzMjgxODQ2Y2E3MmY2MDhlIGFscGhhMTAwCis0MDE3IDhmYmU4NjBhMjZlMTk5NWYxZGExZmE3MWQ5ODk1ZDE0NDBkODA1MGIgbGVnYWN5LXRydW5rCis0MDE3IGU0NmUwZWU3NmRiYzQ0ODE4YTY2N2VjMTI0M2FmZTk1NTNhZDdhZDMgYWxwaGExMDAKKzQwMTggYTlkZDJlMWVhNWM5ZWEyY2E0N2I0ZDBjODBhY2ViNmExNDU2ZmYwZiBsZWdhY3ktdHJ1bmsKKzQwMTggYTE5ZmEwNTVlYzQ4YjI0NDY3YTdhMjMwZGJjYWEyN2JjYzMxNmEzMyBhbHBoYTEwMAorNDAxOSA0MTIxYWZkNzZkNzM0YWZlYzIyNGZiMmJhOWViOGQxNjZjM2QxMDkyIGxlZ2FjeS10cnVuaworNDAyMCA1YTZjMmEyMzhmMDM4NzZlMmE3OWUyYWIzMjlmMjVlMjdiYTI4OTM1IGFscGhhMTAwCis0MDIxIDI5YzQyNTVjZDQ1Y2Q1ZjJlYmM2YzExZDZjZjRmMGM1NTdhZjg4NTQgYWxwaGExMDAKKzQwMjIgMDIwMmE3MmQ5OTRlM2QzODI1NWYzYTU1M2E5MGNlMWIxNTM2ZWVmZiBsZWdhY3ktdHJ1bmsKKzQwMjIgNGUxYTJkYmY5M2M1MzJhMmJmZmNlM2M1ZGZlNTdhNzhmNmQ2ZjIyZSBhbHBoYTEwMAorNDAyMyAzZTZiNjdjYTlkYmU0MjY5Zjk1OTAwNDIzNzJiN2VhZmQ4YzM2Yjc3IGxlZ2FjeS10cnVuaworNDAyNCAwMDdhZGYwMTU0M2M1MTc2OWZjMzJkOGExOWRlNDk0NjFmY2VlMTk5IGxlZ2FjeS10cnVuaworNDAyNSA2Y2U4MmMxNTgxYjkyZjc3MWRiOTBjNGY1Mjg1ZGFjNTZlZGI5Y2NiIGFscGhhMTAwCis0MDI2IGYyNjAyMjg4MzgxYTQyNTdmOGY2MmY5OGEwMzZmZGU3NjlmMGVkYzcgbGVnYWN5LXRydW5rCis0MDI3IDU5MDM5YzA4NTZjOTM5NmUzZjFmM2E0NzQ0OWQzMTY5ZDczZjc1ZjQgbGVnYWN5LXRydW5rCis0MDI4IGEzZWIyNTI1OTMyOTQyMTY2ZTM0MGU3YzZkODQ4NzM0YThhZjU2MDIgbGVnYWN5LXRydW5rCis0MDI5IDFmNDkyOWE0OGU2NGEwMDQ3YzM4ZWQ3ODkxZDEyZWFiNTkyMWJiMTQgbGVnYWN5LXRydW5rCis0MDMwIDlhZjhiMzk5MWNlZGY3MmViYmI5NmRhN2NiNjExNDQ4ZGExYjhjN2MgbGVnYWN5LXRydW5rCis0MDMxIGZjYWY4YTJiYWYzODk2ZTkwMDM3OGI4NjA4NDlkYWEwMTQ2MjBiYzAgYWxwaGExMDAKKzQwMzIgYmNhODI5MGMxYjMxY2Q3ZDcyNzA1ZTM5MzI3NTZlMmQyOGVlMDU1MSBhbHBoYTEwMAorNDAzMyA3YTI5YmIzYmRkYjQ2NWFlNDQwYTM1ZDZmNTM5MjY5ZTNjODA0ZDQ0IGxlZ2FjeS10cnVuaworNDAzNCAzN2NmODdmNTYxZWNhOTg1YWVhZjJhMDUxNGRkZGQ5N2U5YTE4ODEwIGxlZ2FjeS10cnVuaworNDAzNSAwNTU5NjJmOTZkZTdiNWYwZmEwOGQzYzNlZjE1NTZiYTBmZTgyNmVjIGFscGhhMTAwCis0MDM2IDE0YjA4N2ZlNTM0NzBjNGUzN2UxNDAwMDc1OGVkZTU1NTk5MDdlODIgbGVnYWN5LXRydW5rCis0MDM3IDcwODY1NGE1ZGRkZTAzMTFkNzU4MTc1NjZjYWIxN2M2YmRhYzNlNDcgbGVnYWN5LXRydW5rCis0MDM4IDBkMDI5ZGVlOTEyOTBmOWEyZjZlNDVhMmFkZjdkNWNiMDhmZDNkODUgbGVnYWN5LXRydW5rCis0MDM5IDdhNDdmYWJiMTg3YzZjMjY3Y2VlNzdiNDUyNzk1NjMyYjYxYzcyOWMgbGVnYWN5LXRydW5rCis0MDQwIGZhNTBkNGJkNTUzNzg1YTFjMWFiZTcyOTc5MzY4YjQwNjg5MjU4YTggbGVnYWN5LXRydW5rCis0MDQwIDYwYjAxNThkOTQ4YWNjM2ExOTA1ZTBiMWQ3YWVlMjU2NTlkOGY3MzggYWxwaGExMDAKKzQwNDEgZjg0OThiMDg4YWExYTBjNTAzNjZkY2E1MjM2Y2M1NWMxMDQ4Y2QxMSBsZWdhY3ktdHJ1bmsKKzQwNDEgOGE3ZTUzMGRkNDRhNWU2NDAwMDhhOTM2ZWFjMzUzNmFlNDcyY2IzMSBhbHBoYTEwMAorNDA0MiA2MjNkZDcyNDkxODY2NDQxMTQ4ZDgwYmQwNTFiOTE4ZjRjZDMyYWUyIGxlZ2FjeS10cnVuaworNDA0MiAxOWYyMDc1MWY4ZGVmYmVmMTQ2Yzc3ODE1NDU5ZWNiM2NiMDI3NzU3IGFscGhhMTAwCis0MDQzIDAzZTA5N2RkZWNhMmJlY2I4MjI5MDg2ZjZmMjUwYWU2ZjRmMWNkNDUgbGVnYWN5LXRydW5rCis0MDQ0IDZjZjZiNjY5MWFhZWIyODE3ZjA5MjZmYTJkZTEzZjhjNGQ3MmIyYTQgYWxwaGExMDAKKzQwNDUgN2FjNGU0OTc5MWY0N2UxYmRhZDhlZjRlNDY4YjM5MmJjNzYyNDY0MyBsZWdhY3ktdHJ1bmsKKzQwNDYgOWUyYjE5NDJhNzQyMGFhNDA2N2MxOTVjYTkxZDlhOWI2NjY3YWM3YiBhbHBoYTEwMAorNDA0NyAxYzcxYTI3ZmQ2OTMzZGM2ZGU1NTg3MTMyN2E0M2FiMmIwNDhjYWEyIGxlZ2FjeS10cnVuaworNDA0OCA1MWEwNmZkZmZmNzg5ZDMzZTJhMDA2ZmMxNjhiOTYxODU0ZTYxNDA0IGxlZ2FjeS10cnVuaworNDA0OCAxMWVhMTYxYTAxYzJmZDkyYjQ0YTk4YjIyMDI2ZjI5NTZmYTZkMTA5IGFscGhhMTAwCis0MDQ5IGNmMzI4YTllYzVkNDQ4NzZjZjAyNGYxMWQ3YWM1NjU5ZjlkMzk1NDAgYWxwaGExMDAKKzQwNTAgMTliMDBlZjRjZGQ5OTdkYTMyOGUzOWUzZDUyZDkzNDkxMTA5NjEzZCBhbHBoYTEwMAorNDA1MSA3ZTVmOTdiYWIxZTZmOGRlYzc2ZDRmMDc0MTc0NDdlYjU3OTIwMGQwIGxlZ2FjeS10cnVuaworNDA1MSBjZjI0ZjNlN2JlNmQ3ZTY1ZWE1YTVjNTdmYmYxZmJhOGY4YWQyZmUwIGFscGhhMTAwCis0MDUyIDMyYzI4YWRjY2QxMmIwNjkwYzE5NWQzYThjMjM4YmExMjQ3MDg2M2YgbGVnYWN5LXRydW5rCis0MDUzIDNhYWM4MjVhNTNiNTIzZGY1ZjAyYWQwZjM4NzcxZDFhNzVjNmQxNWIgbGVnYWN5LXRydW5rCis0MDU0IGNiZWU1ZTFlOWJlODMyNTkwNDI2OTk4MDk4MzEwZmU2OWJhMTM3YTkgbGVnYWN5LXRydW5rCis0MDU1IDc2MDNhM2IyY2JlZTk5MzQ1ZDJmOWUzZTdjZmFiZWY5MzE4OGQxYWMgYWxwaGExMDAKKzQwNTYgOTBlZTcxYTNhMTNlYmI0NDgzNmNhZjE2ZjY5OGRiOTJkMjE4YmQ1ZCBsZWdhY3ktdHJ1bmsKKzQwNTcgYTRjN2VmZjI1OWE1OWM4YjRmNTE5OGEyNjc4NDdkYWRhNzViOGExOSBhbHBoYTEwMAorNDA1OCA0ZGVmOTM0ZmY3NWI4MDYyYWJmYThhMDcwMWRiYTY3OTVmOTc1NmU0IGxlZ2FjeS10cnVuaworNDA1OSBmMDJhNDY3NTRmNTA1YzNlZDMwZGFmZDdjNGMxNTU0OGZkYjkwZGE2IGxlZ2FjeS10cnVuaworNDA2MCBhODYyZDhmNDUwN2I4YjRiZDNjNGRmYTEzZDNmOGI5MTc2Mzg0ZmRlIGxlZ2FjeS10cnVuaworNDA2MSAxYjllYzM3ZGIyYjlhYmY5NWNhMWU4YjhkNDE4YjVkMGRlNjRlMDJmIGFscGhhMTAwCis0MDYyIDUwOTZiYjQ4Y2NmZTEzMGJmZTFmZThjMWNhMDA0ZGNmODY1YWY5NGEgbGVnYWN5LXRydW5rCis0MDYzIGI1YTY2MGNhYThlMWJjNDU3YjU0MTQ0M2JiMWIxZGRhMmVlZWNkNzIgYWxwaGExMDAKKzQwNjQgZDkwYWFhMDkxMjNiZjU4OGE3OWQwOWZmZWZmMzcwNzJhOWRkM2Q4YiBhbHBoYTEwMAorNDA2NSBlMjgyMzExMGMwNTE1NzA0NTQ0NGUxZjM4YzMyZWQ4ZWM1ZjJkOTEyIGFscGhhMTAwCis0MDY2IGU2YTIxM2I3ZDBkMmI5ODAzY2Y0MDIzZjBlNjRmYzBjZDcyNTE2NzcgYWxwaGExMDAKKzQwNjcgNzJjOWE0ZGM0ODQ3ZDc5NDg5Nzc2ZDU2YTI0MjNkM2VhMGU1M2FiYiBhbHBoYTEwMAorNDA2OCA0ZjQ0OWFiNjA1NjdmYmI2NDNlMmFkNDUzNWNjYmRjOWM5ODBmYmE0IGFscGhhMTAwCis0MDY5IGZmZDQ5NWJhY2JkNDM2ZjAwZThjYmViMmJiMGMxMDgzYWI4M2YwNDMgbGVnYWN5LXRydW5rCis0MDY5IDhlN2Q4ZDBkNGU5MGE5NDUxNThkYTU2ZGFjOTg4ZGY3MjliYjVhODcgYWxwaGExMDAKKzQwNzAgZjdlMWUyMzg5Mzc1ZjIzMjYyMGFlZjhlNGFkNDhlNzFjNGM1OGIyMyBhbHBoYTEwMAorNDA3MSAwMWQyNjQ4NmIwZWU2NjQ3YzNmMmQxMGEwZGJiZjQxMmEzNmY4MmZjIGxlZ2FjeS10cnVuaworNDA3MiAxNGIwMzQxOGM5MGZiMzhhZjIwZmVkN2Y0NzI2ODllZTk1M2M0Y2NiIGxlZ2FjeS10cnVuaworNDA3MyBhNmU2ZmFkMWEwMWIzMmZkZjQ0ODMzZTRmMGY5OGI3M2QzNzI0ZjFjIGxlZ2FjeS10cnVuaworNDA3NCBhMDllZmIxMzVkZTU1MjQ2MzUwZWU0MjQ1YWMxODE5ODRiNTdlNTdjIGxlZ2FjeS10cnVuaworNDA3NSBkMDc0YjJmYjYwOTE0ZGQ3ZDVjYjkwMWI5MWY5NWZiOTJlZjY4MmQ1IGxlZ2FjeS10cnVuaworNDA3NiA3M2RkMmE5Nzk4NTdmMTdiMzZlOTE1MzJiMTY3MmZlNjVkY2I5NjJlIGxlZ2FjeS10cnVuaworNDA3NyBiNWQ1YmJjZWIwMGY2MDQ4NjM0Yjk4ZjA3ZDg2OWJkZGI0YTkzYjUwIGxlZ2FjeS10cnVuaworNDA3OCBhOTYxNmY1NjU0NjU1Mzc4Mjk1ZTRhOWIzMTNlM2VkOTRlODRhODU2IGxlZ2FjeS10cnVuaworNDA3OSAyNzM0NTE4OTIzMjdjZTFmMWIwN2YwZGQ0OTA5ZDBkNTZlYTY4ZGRmIGxlZ2FjeS10cnVuaworNDA4MCAzODJiNGY4YTczN2E0Y2ZmMWFiN2IwNWZlOTNiOGRkNjcwNTQ2OTM4IGxlZ2FjeS10cnVuaworNDA4MSA5NTNlNzRlYWMwMDYyOTgxNjljNTJlZTcyYTI5ZTdmNGY0NWQ1NmNmIGxlZ2FjeS10cnVuaworNDA4MiBjZWQzZDExMjJmN2NiYWIxM2UwNzcxMzJkNjhkNGQwMTE5Mjg4NTNiIGxlZ2FjeS10cnVuaworNDA4MyAzNDRkZDI4ZGE5YzU2NjIwZjUzNmVhMWEzOGU4NzI4MjNjNTBkYjNmIGxlZ2FjeS10cnVuaworNDA4NCBhOTQ4YjQ0YWQ0YTE1NTBiNTcyYmI3NTgxMDJmZTVjMDgzMGZkMDQ2IGxlZ2FjeS10cnVuaworNDA4NSAyZmU1NGY2MmNkYjU0OTcyYzFhNTkyY2M2M2RlYWU0ZTk3NTk4YmZjIGxlZ2FjeS10cnVuaworNDA4NiA0YzMwNjJjNzEzNWZjZDNkNzFkMDRlNDg2MWRlODJiMjI3ZWZmOWIwIGxlZ2FjeS10cnVuaworNDA4NyA2YTBlNWNkNDk5YzQ1ZWRkZDc1Y2NiM2JmODI0M2M0NTZkOGNmMGJlIGFscGhhMTAwCis0MDg4IDQ5NmM3ZTlmMTFkMjQ4MjBkYjM0NTM4MTRmNjIzNGFkZDVmMjI5YzkgYWxwaGExMDAKKzQwODkgY2EwMjMzOTllNWM5NGJiNWU3ZjkyZjlhNWYwNGE0NDJiMDNiMjIzOCBhbHBoYTEwMAorNDA5MCA1MmZhNGRjZDFiMGUwYTE2MmIwZmRjN2I0OGIxM2U0M2JiNWIyNjRkIGFscGhhMTAwCis0MDkxIGI2YzM1ZTFmYWRhZTZmZjEyNzFmNWI1ZDg3NWIwYmI2NGJmZTE2YmYgYWxwaGExMDAKKzQwOTIgOGY5NjgwMjczMzA3NzUzOGY4OTVlMzk3NTc0MWRkOWIxODBlNmZjMiBhbHBoYTEwMAorNDA5MyA5YWU3ZjJmZDg5ZjEwOTdkYzc4YTY2MTg5YWViNGJmMGI0MTNmYjQ3IGFscGhhMTAwCis0MDk0IDRiNTBmMTA0MmU4ZGMwOTAzODZkMDU0NzE3OTE4ODJjM2JlMWY2NjAgYWxwaGExMDAKKzQwOTUgNzYzNzE4MDVkOWYzNzRmMTk3MzI4ODEyOWEyNDMzMTRjYzQyODg2MCBsZWdhY3ktdHJ1bmsKKzQwOTUgMDNiMDU3MTdiOTUyMjRhZDJhNzA3YTc2MjA1NjQ0ZDkzMzcwOTk1YiBhbHBoYTEwMAorNDA5NiAxZTNhNTUzZTQ3OWFmMDhkZTNlN2Q5YThlYTU4ZDA3MzhiNTkyZGYzIGFscGhhMTAwCis0MDk3IDNiOTBhOWZjMWUwMzk4OTI4NTNiNjViY2NkODRiOGZlYTE5MjQwNjkgYWxwaGExMDAKKzQwOTggMWYwNmY3MTkwNGMyNDFmMGEzNWJhNzU4MzQ3N2Y4Y2U5ZTRjOTIxYSBsZWdhY3ktdHJ1bmsKKzQwOTkgNTA4YjczZTBhN2U0ZjFmMTViZjZjZTQ0YzdlNzZhNzY5ZmJmZDgyNCBhbHBoYTEwMAorNDEwMCAzYWZhZmFjM2Q3YTE2YmViYzI5ZTc0YTE0ZmNkYjRiZTBhM2I2ZGZmIGFscGhhMTAwCis0MTAxIDAyZDhjMTU4ODJmZjlhZDUwOTY4YTNiZTE3YzgwM2ZhYjE4ZjExMjcgYWxwaGExMDAKKzQxMDIgNTI5MDQyOGJhZDM3MTViNzNmYTBkMTIwMGEzOTRkNzIxOTBiMDc2MyBsZWdhY3ktdHJ1bmsKKzQxMDMgNzViY2IxZmM2NWJlNTljMTMyNTc2OWUyYTJkMjdiZjUxNDZmZmM1OCBhbHBoYTEwMAorNDEwNCA4Y2Y2NDBlZjM0NDAwNzY4OWU5ZDM2NDQxYWU0MzVlYjdhYTUzZTJjIGFscGhhMTAwCis0MTA1IDEwMDllYTQ5MzY2Y2M5OGNmNmZhZjk1NWQ2Y2Q5YWQwM2Q4OWRiNmIgYWxwaGExMDAKKzQxMDYgYzJlNmM5YTdhOTVmOGI0NmFmOTY4NjFhNDVmYTI0NGNhMWMyMTNmZiBhbHBoYTEwMAorNDEwNyAwYTYwNDYwZTk5ZjAyYjQxOTZlNGE3YmRjM2IyOTg4Y2E3ODA0ODIwIGxlZ2FjeS10cnVuaworNDEwOCBkYzhlMWQ3MmQ3OGRjY2U1ZWY1MDFiNDNmNWQ1MmYyN2M2OTY1MjI5IGxlZ2FjeS10cnVuaworNDEwOCBjYWVhZWUzOTBlNDNmZTU3M2E5M2QzNWMyYmNlODM0MjczM2EwY2QzIGFscGhhMTAwCis0MTA5IDFiMTdhYWYyNTEwNTQ5NzZiYjJjM2FlYzdjNGQ1OTQxNDAxYmI0YmQgYWxwaGExMDAKKzQxMTAgMmJjZGRjOTA1ZGEwYjlmOGNiNTI3ZTZmY2ZiNWZlOGRjNDNjNzI0NCBsZWdhY3ktdHJ1bmsKKzQxMTEgMDgwODExYjFkMDIzMzIwZmFiM2E4OTVmZjZjYWM5NGQ2YjEzYmFjOCBsZWdhY3ktdHJ1bmsKKzQxMTIgMWNkNGZkMTY2MjNkZTIzNGU2YzIxZjg4N2QzOTM3MzRjNTM5MjI5YyBhbHBoYTEwMAorNDExMyA0Y2JmNTM2YTZmMTgwMzg1OGU0YjU3MDE5ZjZiYWQ3Njg2N2ZjYTY2IGxlZ2FjeS10cnVuaworNDExNCBjNTRjMDdhYmNmY2YzMWZmYmQyOGUzNTA4MGRiYzUwNDIyMjM5YzkwIGFscGhhMTAwCis0MTE1IDZiZTkxYzQ0Y2FmZmQ1ZTJjM2Y0MjkxM2Y4ZGRiMjNhZjk4NWI1MzIgbGVnYWN5LXRydW5rCis0MTE1IDZlNGE4OWVlMTE2MzRiNWVmYzBkYjBmZTEwNzUzYmQ4MzllMTMxNDYgYWxwaGExMDAKKzQxMTYgMjNmZDUwZDc3YjVhMDUwMzZkYWJkZGY0YmQ4NDdhNzU2YzgyM2U1OSBsZWdhY3ktdHJ1bmsKKzQxMTcgYjVhNTdhZjQwNTA4YzhlNGRhNWVhYWE2ZTU4OGE1MGVkMzc1OTFkNCBsZWdhY3ktdHJ1bmsKKzQxMTggYmI2MTgxNmUxZGFiMGU0NjgxMjEzYTcyMWVjNGRhZTM5YzM5OTBmZSBsZWdhY3ktdHJ1bmsKKzQxMTkgOTQ2MjFhNDY4YjYwZDQxNTkzYzEyYWE4MDMwMTlmNmYzNmQ4M2MzZiBsZWdhY3ktdHJ1bmsKKzQxMjAgOTNlMDM2Nzg2YjE3YTc4ZDBkMGVmNTgxNTAxOTZiNWE4ZDk0ZWJlNSBsZWdhY3ktdHJ1bmsKKzQxMjEgZDg4YWY1OGU5NWNkMDg0NGViOTk1MWE3YzZiYjQyZDkwNTczNjhhZiBsZWdhY3ktdHJ1bmsKKzQxMjIgZTI2NjVkOWQ0ZTQ2ZDI1NDlkNTliZTA4NzU1ZTBkNzE1ZGQxN2M3NSBsZWdhY3ktdHJ1bmsKKzQxMjMgY2YyOWMwOWYwN2I2MWY3OWVhMjM4YjE3ZDEyYjA2MjQ1NmQ2NTM2MCBsZWdhY3ktdHJ1bmsKKzQxMjQgMDNkMzUxYjZmNzM4ZTRjNWI4YTJkZmIxOGRiYWY4MzdlODkwOGFlYSBsZWdhY3ktdHJ1bmsKKzQxMjUgYzUwMTI3ODA5MTc5ZGRlZDdjN2EwMTM4OTJkZDRhYTNkYWYwZTAyZCBsZWdhY3ktdHJ1bmsKKzQxMjYgYjk0OTIyNGE0YmQ1NjFhOGQ4NTBiMTNlYjQ4ZjRlOWI4OWYxNTE2NCBsZWdhY3ktdHJ1bmsKKzQxMjcgOTAyZmZmNTVkYjM4MWYwOTM0ZDlhYzM1ZTVmMjJiNmI3YjFmZDJjOSBhbHBoYTEwMAorNDEyOCA1MTdiYWFlMWI2NjNjMjYxYjZhMDdkZmY1OWYxYjA2MTA4ZTU4NjkzIGFscGhhMTAwCis0MTI5IDQ2OGI4Nzg0ZGE0OGI3NGEwN2VhODBiYjYwMTVjODljYzY1ZWY0YzkgYWxwaGExMDAKKzQxMzAgYmZjZmY4YWY5NzUxNjg3ZmU5MWMxZjUyYmFhOTkzMTdkZTg3YmQ4NiBhbHBoYTEwMAorNDEzMSBmODU0MGE4Y2Y1ZDc5NDY0NWI0YjU4YmU1YjQwNTg3OGQ0MjFjYzM1IGFscGhhMTAwCis0MTMyIGEyNDAzZmUyYzg4NTgwNTVmNjUxYTc5MTkwMDgyODA0OGExZjc5NDAgYWxwaGExMDAKKzQxMzMgMmIwN2Q5MjVjMDlkNDFlZWRkMWJmN2YyODRjYmQ4YWZhODNmY2ZhYSBhbHBoYTEwMAorNDEzNCBkZjIyMDRlNDdiNjVmNzVhMDVlZTIxZDJlNTgyZTFhY2FiMjM2M2I1IGFscGhhMTAwCis0MTM1IDc3Yzk0OTMwMWRiMzc0OTA0YmY2NWI3NWUxNTU4ZThiYmYxMGJlYjIgYWxwaGExMDAKKzQxMzYgNzg3NDc1NjEwYjAyZTMxZGM1NTcwYTEzMmQwYTc3YTNjYzYxMzdiNyBsZWdhY3ktdHJ1bmsKKzQxMzYgYjcwNzJlYzdkNjUyMzdhY2U0NzFhZDNmYjM4MjExMTRjNWM0N2FlYyBhbHBoYTEwMAorNDEzNyA3YjFjNDlhN2QzNzVlYTA5NWY1YjY4NzBhY2EyMTRkMmIxNjIwOTM3IGFscGhhMTAwCis0MTM4IGRhMmFmYzAyOThhNzBmY2U3ZDNjMTk2OGFhNDA2MjI5YzJlNjQ1YjUgYWxwaGExMDAKKzQxMzkgOWRhNDk0MjM4NzczYzkxNmUyNWE2ZTMxNWZkNmZiZDllZjFmNGEyMiBhbHBoYTEwMAorNDE0MCBmYjViYjllN2NkN2E4MTljMWQ0ZTJhYTg1MzRkZDhhMmQ2ODUzNDY5IGxlZ2FjeS10cnVuaworNDE0MCBlYmU4NjgxY2Y1ZmVhZjFhNGRkOTgwMDc0ZTBiNDAyMDZjMDg5MTkwIGFscGhhMTAwCis0MTQxIDg3OWU4ZDA0ZTU4OTY3N2ZjNjQwOTVkMDA3MzJkNmVlMTc4NDc4ZGMgYWxwaGExMDAKKzQxNDIgZWIxMWEwOThiN2ZmMmNjZGU4MzllYTc2MDEwYTFjNzM1NmU1ZDczNyBhbHBoYTEwMAorNDE0MyA5ZTdkMjA2YTQ5MjIxNjZhMjE5YWI1OWQ0MjM5YjUyZDYzMTk5ZTM0IGFscGhhMTAwCis0MTQ0IDkzZGY4MzAyMmJlODc4YzExMDc2YTg2MDg4YjhjMjBlMDE3NTM0ZWUgbGVnYWN5LXRydW5rCis0MTQ1IDc3YmJlNThhZmVhYjUyNTMyYmFhMTcwZWY1OWM0MzY4OTM2ZjlmYTYgYWxwaGExMDAKKzQxNDYgMDE1YWYxYzQ3NzI2NDI3ZmVmYmE2YWMwNGNkNmU0YjU3OGU1ZDY0MiBsZWdhY3ktdHJ1bmsKKzQxNDcgMTkwMWUwODA4NmY5ZmQ2NGU3MGYxZTEyYjkyNzY0MGNiNzY2ZGViZCBhbHBoYTEwMAorNDE0OCBmMWIwNDBiY2EzZTEyZWFkNGJlNTljZWM0ODA1OGU5Y2I3NTRkNWU1IGxlZ2FjeS10cnVuaworNDE0OSAwZmIzYWE1Y2E0YzAyZWNlMTAxYzNiZDBjZWQ1ODRkZTRiYmU5OWJmIGxlZ2FjeS10cnVuaworNDE1MCBiYTk1N2FhNDIyNDFhOWNlOTBiNTg3NzU3Nzk5MDQ3YjcxNmU1NmQxIGxlZ2FjeS10cnVuaworNDE1MSAyMjI4MDJmMGQ5NzgyOTU0NWY0MTBkNzUwMWZhZTZlNDNiZmY0Y2U1IGxlZ2FjeS10cnVuaworNDE1MiA0YmJhM2M5MDdmZmFlNDc1Y2EwYjIzNTFkYjM1ZGUzMWQ5MGY5M2M1IGxlZ2FjeS10cnVuaworNDE1MyAxOTJkODY5YmViOTczNmExODE3NjkwNzQzNmEwNTRiOTBmNDk4ZjliIGxlZ2FjeS10cnVuaworNDE1NCA2ZjgxYjEzZmQ2YWMwOGQ0MmU2MTg4ZWZiYjliMzY0ZmFmZDU0ZmZhIGxlZ2FjeS10cnVuaworNDE1NSBkZTJkYzFiYzRiYWUxY2MzYzhjOWU5MzgzNzBkZjdjNDc3MzM0ZTYxIGxlZ2FjeS10cnVuaworNDE1NiAzNzViOGI4NjMxMjZmYWVkZmU4YzYwOWIwOWNiMWU3NGMxYWE0ZTExIGxlZ2FjeS10cnVuaworNDE1NyA1NjU2Zjg4N2ZmZjM3ZWZkOTM5ZTg3ZjZhM2FiNWQ5ODg3M2U2MTE1IGxlZ2FjeS10cnVuaworNDE1OCAzNjZhMDI5MmI2MTQyZTY0NTBkYzM1ZWJhNmNlN2M1YjJhNzAzOTExIGxlZ2FjeS10cnVuaworNDE1OSAyZWY5ZDUwYWI2NTRiYTUwMDNiZTQ4OGI5ZTgyOTViMDgzMWMzMGEzIGxlZ2FjeS10cnVuaworNDE2MCBiYjU2NmQyOGNhYTBkM2FmZTkxYmU2NjhlMTU5ZjFjYjNkOTY4YmFjIGxlZ2FjeS10cnVuaworNDE2MSA1ODQwZTU1M2ViOGQ4OWZjNzU5ZGUzMjYwYmQxYmI5ZDUxZmY5ZjRkIGFscGhhMTAwCis0MTYyIGRiMGVhZWY0MmNiOTRlOTIxOWFlODk2YTc4NzQzYWI4OTU2YjFhOWQgbGVnYWN5LXRydW5rCis0MTYzIDk5MjhkMzMzODIxZGUwYmJiOGI4YTU0YzExYTExZGQ1NmYzNDdmZjYgbGVnYWN5LXRydW5rCis0MTY0IDUwNGJmYTU5Yjk1NGVmOTdlYzFmNDZjYjgyMWJjYzRiYTE1MjlkYjcgbGVnYWN5LXRydW5rCis0MTY1IGJhOWI3NTVlMTdmZTBiMmRkMjA2MjdhMDcwYmFjYWQyOWE5MDc2MWQgbGVnYWN5LXRydW5rCis0MTY2IDBkNjEzM2FiYjZlNWZjYmY4ODNmOGEwYmFjMTY5MTg0ZDcyYTg2NzggbGVnYWN5LXRydW5rCis0MTY3IGExNjAxZmMyYjNlNDQxNGJhMzI4YTBiZTMzMzc1N2RkNWMyYTI2YWEgbGVnYWN5LXRydW5rCis0MTY4IDJmOWJhMmViY2IxMDczYmZlMTdjYjdlNzQwZTRlYTZhMDI3ZTgzMzAgbGVnYWN5LXRydW5rCis0MTY5IDQyMTBiMGRlZjNkNzgxNTA1M2E3MWJhMjFjY2E3NzY3YmFkOTY2NjkgbGVnYWN5LXRydW5rCis0MTcwIDFkZDMxMTUzNzA5ZGQ1YzYyNzhmNmViYmFiY2Y0MmYxMGYwNjQzNWUgbGVnYWN5LXRydW5rCis0MTcxIDQ3MGE1MTU0NWQ2YzRkY2VjYzhhMTI1ZjdlZmFmZTMwZGI5NGM3YWIgbGVnYWN5LXRydW5rCis0MTcyIGU1YThmNjQ3OTIxNjkxZDllMjg3MTE0MDYzNGZiMDA2MDFmMTQzYjUgbGVnYWN5LXRydW5rCis0MTczIGUxNjc2OWNkN2E5MDFlZDc0M2ZkMzJmODI3Nzk1MGJmZTFkNjAzZDQgbGVnYWN5LXRydW5rCis0MTc0IGNkZjQ0YzE0YzI3MDg5MGNiMGQ3NTQwZGY5NjI5YTU0ZGNlNjU3ODIgbGVnYWN5LXRydW5rCis0MTc1IGU4MGM3MTM5ZjUzM2U0ZTM5YWIxNGVmYTM4MGQ1Y2ZhNzRmZGJjMTcgbGVnYWN5LXRydW5rCis0MTc2IDZiMGYwZWYyYzEzMmM3NTk3MTk2ZjU2NWVjNDQ0ZDNmODhjNjFiNDIgbGVnYWN5LXRydW5rCis0MTc3IGJkMWQwYmE0MGY5MGNlNDI2YjUxNTZiYjdhZDNkOGE2OTZlNGUyMTIgbGVnYWN5LXRydW5rCis0MTc4IDdmMjBmNGI5MzM1ZmEwNzg2NTM0M2MxYmMyYzgyN2JiYmRmOTI4YTAgbGVnYWN5LXRydW5rCis0MTc5IGU4NjUxZDBlNGEzYzcxODYzNWU0NDAxMTBjZDEyM2U2YzhkYmQ1MDUgbGVnYWN5LXRydW5rCis0MTgwIDU4MWZlNmJmYzkwMjRhMmVhMDU0Nzc0Y2QxYTA5YjY1N2JjYTZkOTQgbGVnYWN5LXRydW5rCis0MTgxIGFmYzU3NDA2NGU2MmNhZTgyOTQ4NmQ3NzhmNjFiMzZjZmFhYjc3MjkgbGVnYWN5LXRydW5rCis0MTgyIDE3NTAwY2Y5NTM4ZjFhOWZlYWY2ODcyZWQ2MjBlNDk2YWQ4ZWE0ZTMgbGVnYWN5LXRydW5rCis0MTgzIDI1NDMyNmYyNDE1ZjQ2YmQwMmEyNTc5YTFlYTdkNTA4NDg0NzFmZDYgbGVnYWN5LXRydW5rCis0MTg0IDg2ZWQ1Mzg0NGIwN2NmNjQ3YjJkNzRlNGYyMzNhZGZjZjFiZWIxYjAgbGVnYWN5LXRydW5rCis0MTg0IDkwN2Q5ZTdiZjRiNTg5ZmMyZjAyYTliOTAwYzU4ZjQxY2U1NTRkODUgYWxwaGExMDAKKzQxODUgOTYwMGQzZDVjY2U3YmRkOTQzMDkyNzc0N2RlNmQ5M2I4ZGNjNzZjNSBhbHBoYTEwMAorNDE4NiBlZTJmODhhNGY5ZTJiY2U2MzlmYmRjMjViZDhkYzhhZDlkODlmNWYwIGxlZ2FjeS10cnVuaworNDE4NiAyODVmZTg5Nzk5Nzk5NTc2NTVlNzZkYzAyYmRiMDA0MDhiOGJhNjRlIGFscGhhMTAwCis0MTg3IDQ1OGQ4ZjNlZjMwNzU4MjdlMWZmZTRiZTQyODViNDNhYTkyMDllMDcgbGVnYWN5LXRydW5rCis0MTg4IDI5Yzc4NTE2ZWUzMzMzYzA5NWJlOGZiZGUyYjJiOTllZDU3YWViNmYgYWxwaGExMDAKKzQxODkgNzgzMWZmZGI3ODdiODNmMmQwNmZlMTdhOWIzYzZjNTkxMzIzOTNkMSBsZWdhY3ktdHJ1bmsKKzQxODkgMjFkN2Y5MzI4MTliNGRhOGVlN2RhYzliZWNiZGRiZWRjYzQwMGQ2NyBhbHBoYTEwMAorNDE5MCBlOTViMDcwMWM4YjU0ZjI0ZGY4YzkwYjgzMDc0MzU3NWVmZDdiZjYyIGxlZ2FjeS10cnVuaworNDE5MSA5NjAwOWRhZTlkNjI2MjZhYTRkMjM3ZmU1ZGQ0NWZlODFlZDdiMTM0IGxlZ2FjeS10cnVuaworNDE5MiBiZWRlMzhjNGE5ZjVlY2Q0MjEwNzM4ZTlkZDk1Njc5YzI4ZmEzNzE0IGxlZ2FjeS10cnVuaworNDE5MyBiYzExYzFmZjZjYWMwMzFmOTI3OTg2YjM0YjBhNGI4ZDkyZjU5YjMzIGxlZ2FjeS10cnVuaworNDE5NCA1OTUyNjRjMmYwNmQ0YTYwOTY2MTYyYWY1ZjQxMTQxYzkzZjcyYjhlIGFscGhhMTAwCis0MTk1IDZjMGUxMWI5NDAwOWEyNTIzOTkzOGY1MjNhNzJlY2RlNzYzNmFkMDIgbGVnYWN5LXRydW5rCis0MTk2IGQ1YjY3ZDJlYzdlZTAzMTAwYTY2ODM3NDBmZGQwZjdmZjcxMjI2MWUgbGVnYWN5LXRydW5rCis0MTk3IDM3MjkwM2I2MzcxMWE5YmRkOGFmYzM3NzM0ZWVjNDU4MzI5ZDM1OGUgYWxwaGExMDAKKzQxOTggMTk0MDg5MmQyZmUzYThjZjNiNzRjYzEyZDY3MDM5OGMzZTQ4MDM2MyBsZWdhY3ktdHJ1bmsKKzQxOTkgZTNhOWQ4MWRmMTg1M2M4YjM3NTc2MjZiMTdhODVhYTgzYWNiNGNmNiBhbHBoYTEwMAorNDIwMCAzZjdkZGI4YmIyZjYzYjczYWIwNzFmY2I3ZTFmOGE2MjJjNjUyMDYzIGxlZ2FjeS10cnVuaworNDIwMCBlN2I1ZmU3NmU1ZWFjYWU0YzY2MjhhOGUzZTI5ZmU4Y2Q0YzgxNGViIGFscGhhMTAwCis0MjAxIDgyODZhNjYyNTAyYmI2YjViMGFlMmIxYjJhNjViYTFjOGRlN2JhZGMgbGVnYWN5LXRydW5rCis0MjAyIGJjZWI3MjBlZTM2MmIwOTQ3ZTBhOGMxMjVhM2E3MWY4YzQ2ZDc2YmMgbGVnYWN5LXRydW5rCis0MjAzIDBiNjQ1NzI2OTU3ZTIzMjliOWM4M2FmMDhkYTcxNGJlZGJhZDZhYzAgbGVnYWN5LXRydW5rCis0MjAzIDQ2MzljM2FkODM0YjdjYzA4MWQ4MGQ4ZmZkZmZlZjBlZTUzZjdiYWYgYWxwaGExMDAKKzQyMDQgZWMyNWFhZDQzNzI0ZjA1NWEzZjgyNmUzOWRmNzI1NWRhOTE0Y2RmYSBsZWdhY3ktdHJ1bmsKKzQyMDUgY2JiNjJlZTg4NTRhNjQzZWM5NjY5ZmUzYzY1N2VhZGM2MWU2YTA2OSBsZWdhY3ktdHJ1bmsKKzQyMDYgYjU0NjhkODg2Y2I1NGEyMDM0YmQwNjU2NDZlNGJkOGRlNTA3ZDRlNSBsZWdhY3ktdHJ1bmsKKzQyMDcgYmJlOWVhNTU4MjYxZWU2ZGViZGEzZjgwMjE5NDQzZWZjMzAzY2RmYSBsZWdhY3ktdHJ1bmsKKzQyMDggNzhhMzY1NDA2YzRjZWJmODVkZGM3YjAwMWM2Y2EzNDRiNzk3YWFlMSBsZWdhY3ktdHJ1bmsKKzQyMDkgZjUzMzc5MWFjYzc3OTdlZjMzYTZmYWZmZmQzYzBlYjI4ZTM1OWRmOCBsZWdhY3ktdHJ1bmsKKzQyMTAgNjk3ZWU4OWFkZGZlMWU2NTVjNzJkYWFhNjEwZWViZTQzMTNjMWEwNiBsZWdhY3ktdHJ1bmsKKzQyMTEgYjk5NTc4Yjg3OGNlNmM0YzZmYmUxMTBhZTQwNGFkNDExZjUxYzM5MSBsZWdhY3ktdHJ1bmsKKzQyMTIgNGQ0MjFmOWU4MzczY2MwYTMxMDRlMWJlYjdkNjZiOWYyZDE5ODUwMyBsZWdhY3ktdHJ1bmsKKzQyMTMgNDhlNmIzMTlmM2U0ODBkOTliZjQwMzVlYmE4NzZlZmUwN2Y5ZjQyZCBsZWdhY3ktdHJ1bmsKKzQyMTQgN2EyZTc2ZWNiOWVmOTFkZjczYjBiM2QyMTM5MzdlZjYxNzY2MGZmYiBsZWdhY3ktdHJ1bmsKKzQyMTUgOWJjM2RiZjA4NzFkMjZlMDUxYWYyNTZhNjRlNDVmM2VhOTc1MjAzOCBsZWdhY3ktdHJ1bmsKKzQyMTYgZDM1MzVkMDYyNmI0NjgwMmI3NDg1YmRlOGZlNjMzMWFlYWIwOWI1ZiBsZWdhY3ktdHJ1bmsKKzQyMTcgOTQyYzRkMDk0YTBjNDE5YzU1YTQzZjQ5YmYzYmE1MmRjZTUxZGE4ZiBsZWdhY3ktdHJ1bmsKKzQyMTggYTA0Njg5Zjk5ODNlN2FkN2IxNmZlNjJmZWRlYmQ1ODUxMjc3NjVmOCBsZWdhY3ktdHJ1bmsKKzQyMTkgNmU5MTMwNDYwMjg4NjdhMGVlYjQ5ZDYyNzc0YWJjYzg3M2RjOThhOCBsZWdhY3ktdHJ1bmsKKzQyMjAgOTA3NjA1MzIwYTVmZDdhNGE1MmI5NzU4ZTk3ZmY3MDg5Nzg0OTdkOSBsZWdhY3ktdHJ1bmsKKzQyMjEgNjg4MTJiNzYzZTBlMmJhZDJiNzk0YzczMzZmMTc2ZDI3M2RiNDE4ZCBsZWdhY3ktdHJ1bmsKKzQyMjIgNmNiNzU5YzZkMTc5MGQwNmUyYzFkYTgzYzg5MDQxNmNlZGQ5YjM4YyBsZWdhY3ktdHJ1bmsKKzQyMjMgYjBkY2EyOTcyYjJiMThkOTNlNmFkOGRmMGNlNTc2M2MxZmE4NTcxNSBsZWdhY3ktdHJ1bmsKKzQyMjQgNTFjMmU1YTlmMzljZDE5MWYyYzRkYjBmZWVjMjY0OGIwZWU3MjYzNSBsZWdhY3ktdHJ1bmsKKzQyMjUgN2IzYTc2NzkyNGExYTllMzJiNTUwNzFmMTU5NzZiMmQwNTY5OGRmMyBsZWdhY3ktdHJ1bmsKKzQyMjYgZGY3YWE1NGFkY2QyOWJjMDFiNDU5MWViNDIzZTQxYWI5Y2JjNzBiMSBsZWdhY3ktdHJ1bmsKKzQyMjcgOWQzNjJlNWU0ZTc4OTkwZmFhZDhiNTkxNzRmNmJkNzhjMDUxOGM4YyBsZWdhY3ktdHJ1bmsKKzQyMjggMTdjODBhOTUyOTE0MzkzNmU5M2MzMzk4MzExNDg2ZTI5MzY1MTNhYiBsZWdhY3ktdHJ1bmsKKzQyMjkgNTI1N2FmODBlMTYxMDg3YzY5NTcwZWMyMzU3YzBiYmQ2MzQ4ZTU2NiBsZWdhY3ktdHJ1bmsKKzQyMzAgN2UwMDFjNDgxMGJiYzc2MmIwZjA1YTc3OWI5Njc3MTRkYWRkMGNmOSBsZWdhY3ktdHJ1bmsKKzQyMzEgZmZkZmFmMWIyNGQ1NDBjY2QyOTY5ZjM1OTY1YzQ1NjM4ZDM0NTEyMiBsZWdhY3ktdHJ1bmsKKzQyMzIgOThhMjBhNDBmNjEzYjEzZGZhN2E1NGFlNDBjMzA5ZjVkMjNmM2RlNiBsZWdhY3ktdHJ1bmsKKzQyMzMgNzZjYzg1OGUzMzkxNTgwZDE1NWE1OTE3ZGEzOTMwZTJjMzEzNmNlMyBsZWdhY3ktdHJ1bmsKKzQyMzQgOTJkZjMwZGY1ZDc3OWU4MjJjMDBjZGFjMmI0NTY3NGU5MDc1MzNhNSBsZWdhY3ktdHJ1bmsKKzQyMzUgMjA4OTc4MTZhNGI2YzhkZDY0MThhNjRlYjllYTU0YTBhYjBkODYyZCBsZWdhY3ktdHJ1bmsKKzQyMzYgMWMyOGYxOTM0YTExZWVhNGI2ODI4ZDVkM2U4ZWE5Njc1MmUxNjY0YSBsZWdhY3ktdHJ1bmsKKzQyMzcgYTNmMTk5ZThiYWM2ZjAwMzIxNGIwMGQ2MGNkY2JiMGQyMWVhODFhNyBsZWdhY3ktdHJ1bmsKKzQyMzggZGQxNjdiZmQ3YTA4NmE5ZWU2NjFhZmFiMDgwNWE0M2Y0MmVjODdjMiBsZWdhY3ktdHJ1bmsKKzQyMzkgNzcwN2I5NzA4ZjZjYzdjM2Y5ZWJkN2Q0NjkyYmEwNmEzMDM2NGIxOSBsZWdhY3ktdHJ1bmsKKzQyNDAgY2I4NGRkNTFjMmFhMzEwZTViYWU3MWQ5ZGI0ZTc0MWNhMGVlNWJmZiBsZWdhY3ktdHJ1bmsKKzQyNDEgNTZhOTg2ZTQ5ZjU2N2NkNjg0ODc4NGJjNWI2NDUwZjAwZWVlMmMyMiBsZWdhY3ktdHJ1bmsKKzQyNDIgNDNhZTdmY2Q3ODM1MmEyZjdjZTI5NWFhZGE3NGRlZWQxODUxNzUzOCBsZWdhY3ktdHJ1bmsKKzQyNDMgMzYyMTRjODYxMTQ0ZGQ2MmEyMGFkNGQzYjI3YjljODI5M2Y2MDQwZiBsZWdhY3ktdHJ1bmsKKzQyNDQgNTM1YWNhNmZmN2U5MTM0NzE4YTAyYjRmNGFmYjIyYmJlOTc2M2IxNSBsZWdhY3ktdHJ1bmsKKzQyNDUgYTU4NGI0YmJiYzU5MzRjMWFlNDFlZDUyOGFlNzkyYzEwNGRmNTJhNSBsZWdhY3ktdHJ1bmsKKzQyNDYgNjY4NTA0ODQzZDBmNDE4OWM4NDUzODJkMGJkNGJjZGM1NzgzMmI0YiBsZWdhY3ktdHJ1bmsKKzQyNDcgOWI1MzBiYjU0NjQyYmExODZiYjU3NGI1ODk2MDEyYjIwMDkzNzRkZSBsZWdhY3ktdHJ1bmsKKzQyNDggZmE4YmJkMDlmMmU2YjZjNmU5NzQ3MTk3YTI4MzhjZTg3N2M0NDZhMSBsZWdhY3ktdHJ1bmsKKzQyNDkgYjcxMWM5MDEwMjMyOTMyNjliMWRlMTY3ODFmYmJlMDVlNzg5YTAwZCBsZWdhY3ktdHJ1bmsKKzQyNTAgYjE2N2UzMzUwNDkxMjBlYzdiMGZjNWU2ODc0NGM1ZTc2ZjYwYTg0YSBsZWdhY3ktdHJ1bmsKKzQyNTEgZjA3YzRmZjBmNzk0Njg2NzIwZjBlMTliZTczNTVmNGZiNDNlODkxZSBsZWdhY3ktdHJ1bmsKKzQyNTIgNjA2NjAzNDFlZTEwNzFiNDBmZWY5MzVhM2MxNjYxMGU1NmU4MmVkOSBsZWdhY3ktdHJ1bmsKKzQyNTMgYWQzZjFkMzYyYzE0MDZjZmMwMjJhNDBhNzBlYTk4MDdlYjNhNjBjYSBsZWdhY3ktdHJ1bmsKKzQyNTQgMTQ4ZWUyYWE2M2U2ZGVjNTkxYWM3NDUyMGZhZWMxZDFiMTJjZTdkOSBsZWdhY3ktdHJ1bmsKKzQyNTUgYjg0MDI5NmI5ZTA1OGQyNzRhODkwMDQ0ZDhjYWQ1M2NkZWUwNzI1NSBsZWdhY3ktdHJ1bmsKKzQyNTYgZmFmYTVkYzgxMDBmODQ5YmZlNzFlNGYwNjgyMGY4YjM1NDk5MmYwNCBsZWdhY3ktdHJ1bmsKKzQyNTcgYjQwOGQ2YTYzODE5NTIzOWU2MjdlN2EwNTgxOGVkYjQ4NmQ3ZjdkYSBsZWdhY3ktdHJ1bmsKKzQyNTggNWI5MmEwODM5MzRkYmZiMzk0NzdmNzRjMDY0YzU2MGNjNTE3ZTAxNCBsZWdhY3ktdHJ1bmsKKzQyNTkgZjJjZTMxOTFmYzlkZTM4YjQ2MWJmNWJiNDRlOTNjOGYyYTJhNmFlNSBsZWdhY3ktdHJ1bmsKKzQyNjAgNzgyNTA5ODEzZDU3MmI4NmY5MGNjNGNkMjdjYmE1YzA3OTNlYzRlYiBsZWdhY3ktdHJ1bmsKKzQyNjEgNmNmZDQzZDVjMDc0NmIwZWM4MGUzNGU0ZGE1OWYyOGU3NzBjNzFhYyBsZWdhY3ktdHJ1bmsKKzQyNjIgZDhkOTQxZmFmNTExMGIyMzE2ZDIzN2Y5MzgxYTI0YWNmZmMzZDhjOCBsZWdhY3ktdHJ1bmsKKzQyNjMgZDg5MmFjNGI0ZmI5OWUxNDkxYTI3MDUyMjQxMGYwYzU2YmU5Yjc3NSBsZWdhY3ktdHJ1bmsKKzQyNjQgZWE1YjEzZDExYTEzMDViYjQwNGVkMGNhOGEyOGMxZGY4MmNjZWNjMCBsZWdhY3ktdHJ1bmsKKzQyNjUgMmQ1YjM2YTQzOGFiOWNmMzg1OGI3ZDcwYmQ1OTYyMjQ5ZWZjYTM4MSBsZWdhY3ktdHJ1bmsKKzQyNjYgYzQ3ZDUyNmE5NGQ5MmUzOGU2NjZlOGNmM2UyMTMyNjcxNWMwNDE4MCBsZWdhY3ktdHJ1bmsKKzQyNjcgMDQwNmEyMDhjYTVkM2MxMzdiOTVkNmRiYmE2ZWMzZWNjZjQyYWY0OCBsZWdhY3ktdHJ1bmsKKzQyNjggNjM1M2ZlMjVjZGNlNGJlNTNjOTU3OGVmYzA2Y2RhZjVhNTJjZjg3ZSBsZWdhY3ktdHJ1bmsKKzQyNjkgM2I0NzAzMTczY2FmODY2NGZlMTRmMDA2ZGEyZTllNTJlOTQ0ZGE5OCBsZWdhY3ktdHJ1bmsKKzQyNzAgMjBlMWQyOTZmZGNjODZiY2ViODJkNjM4N2YxNjQwOTQ0MzA4MTNiNiBsZWdhY3ktdHJ1bmsKKzQyNzEgYTcxMGZiMDAxYTNmYjQ1MTNjMjFmYjEzNGM4ODA0Yjc2NDYxMjQ5NSBsZWdhY3ktdHJ1bmsKKzQyNzIgYTI2YjMxZTE1OWJlYzQxZDc4Yjk2ZmYzZjViYTdmMDI0ZjM5MDIwNyBsZWdhY3ktdHJ1bmsKKzQyNzMgY2U1NDQ3ZGI4ZjUzN2UyYTA0YmJhMzUwZWY0OWUzZTQ1NDQ1MGY1YSBsZWdhY3ktdHJ1bmsKKzQyNzQgNDA1OTRmODBhYjNjMmYyODllMjA5ZjY5NTRmOTBlNGIxYmVlN2VlMSBsZWdhY3ktdHJ1bmsKKzQyNzUgNzZkMGYyYjNiOWVlNzExNzllMGFjZDUyMTQ5MDQxMWZiYWUyZTk2MSBsZWdhY3ktdHJ1bmsKKzQyNzYgYTZlZjJjOTdjNzc2MWVkMjEyNzBiYTdhYzVkZWUzYWVmNjNlMTEzOSBsZWdhY3ktdHJ1bmsKKzQyNzcgYjExYTA2NjhiMTgxY2NiYjQ1NmRiNzg0ODIyYjk4YmQ4MzRjOTI3MSBsZWdhY3ktdHJ1bmsKKzQyNzggNzkzMWRlMDFlNjkzN2RlNWE0ZDMzMWQ0MzU1NWIwZjJiM2U2MjdhMCBsZWdhY3ktdHJ1bmsKKzQyNzkgY2U4OTdlNzUyY2E0YWM1NTE1MzFhMjAyMmQyOWY3MTQwMzhkNDlkOSBsZWdhY3ktdHJ1bmsKKzQyODAgZjVmM2RkZmVjM2M3YjE1Y2M5ZGNjYmFmMTFhMWM1MTdlOTc2ZWIxMyBsZWdhY3ktdHJ1bmsKKzQyODEgYjQ2NGUxZDBiMmZiNDM0YzhmNmI4OGIyNDI1OGMyMzZmZmFhNzU2MiBsZWdhY3ktdHJ1bmsKKzQyODIgYzFiMGQ3ZWVkOWZkZmFjNmMwYjRkMDk3NTdkMjU4MmQ3MWIxYjhmNCBsZWdhY3ktdHJ1bmsKKzQyODMgYzQ1MzZkOGFmN2I1ZDRlODA1ZjlmNWRmYWQwNjkwODYxZWQyMDhjMSBsZWdhY3ktdHJ1bmsKKzQyODQgMjE2Yjc1NTUxNWU2NWQwMWVkMjQxN2NlYTllNzBhYzRhNjhjOWRkYiBsZWdhY3ktdHJ1bmsKKzQyODUgNzllNDIwODA1YzY3MjI3YjM4OTQwZGI1OTQwMWM0MjE4NWUwYTVjOCBsZWdhY3ktdHJ1bmsKKzQyODYgMzlhNGMxNWFjYjMyZGJlMjEwY2U4YmExZjAzZmNiNThhNTFmYjk3MSBsZWdhY3ktdHJ1bmsKKzQyODcgZjhiYWFiNWMwMTY1Mjg1MDVkODE3YTZhOTdkZmI3YWY5NDg0ZTZlOCBsZWdhY3ktdHJ1bmsKKzQyODggZDc5OTg4OWMwMWUzNWI5M2U4ODRkOTcyYzZlYTcyNjFiZjc0MTQ2NiBsZWdhY3ktdHJ1bmsKKzQyODkgMTIwM2YwNjI5NTI3NTMxYzgwYjU5NzQxOTY2ODZkZmFhODBlYjhmMiBsZWdhY3ktdHJ1bmsKKzQyOTAgODczNjRkOWUzNDQ0ZTk1ZjQ3YTQwN2E4MjU0MDY1NjI3MTlkMzhkNiBsZWdhY3ktdHJ1bmsKKzQyOTEgNWY2YWNkMWFiNWM1MDNmZDNmZTkwOGIxMDc1NDVjYzhjMmM4YjkxMiBsZWdhY3ktdHJ1bmsKKzQyOTIgMWY0YTg2ZGJjZDc5MDY0MTdlOWE4MDM0MTM5ODBlOGY0ODEyZWYxNSBsZWdhY3ktdHJ1bmsKKzQyOTMgYmZkMTE2MjBhMmQ4MWU4MzA0ZjQ4ZjY1NTIyYmI3Mjk0ODkwMTA0ZSBsZWdhY3ktdHJ1bmsKKzQyOTQgMjNmMDNlZjAwMzYxYmM3NzE3Nzk1YjMxZGRjOTMxNTBhNTQ0MmI1NSBsZWdhY3ktdHJ1bmsKKzQyOTUgNjVjYzcyN2YxNDM2YzA3OTcyN2ZmZGQ3MDkxNmNiNDU3YjVkYThhOCBsZWdhY3ktdHJ1bmsKKzQyOTYgODI5NGJiZDk0NTM1MGQ0MWQ0ZWFlMzZlNTEyNTg2M2RiMzQzNmZiNiBsZWdhY3ktdHJ1bmsKKzQyOTcgZDFlNmM5YTY0YTU2Mzg0MWY2MDE3N2FjOTA3NzM5Zjk1M2YxNTYzMCBsZWdhY3ktdHJ1bmsKKzQyOTggMDk1YzFjYzdmMmJiYjIyZmYxMTZiMDMzN2FjM2JkMmQyZmUzN2NkNiBsZWdhY3ktdHJ1bmsKKzQyOTkgNTI0M2ZiMTg3ZDM2YzYwYjAxMjEzM2ExYTVjNjYwZDdhMzVhMTI2NCBsZWdhY3ktdHJ1bmsKKzQzMDAgMGQzMTg0NzVmOWUzNzE5OGI1YTMyMGM4ZTEwZTY5YTc1MjIzYjE0YyBsZWdhY3ktdHJ1bmsKKzQzMDEgYjcyNDU5OTQwMWZmNzNmYmI4ZDU5NWI5YjNkNjMwOTM2MzRiNDk5NCBsZWdhY3ktdHJ1bmsKKzQzMDIgNmUyM2FmNjQ1YjQwYmRkOGUzMWVhMGNjNGM3MmQzMGVmNzc4ZjMxNSBsZWdhY3ktdHJ1bmsKKzQzMDMgMWZjNGRiNzkxNDZhZTVlZjU3N2MwNmZiYTVjZGY3YzU4ZDJlZTQ3ZSBsZWdhY3ktdHJ1bmsKKzQzMDQgMTQ1MzkxZGYyNjU3OWUxYzZmYzQ0MTA4MDhlYTZmYjkxNDk0NWU1NyBsZWdhY3ktdHJ1bmsKKzQzMDUgMDlkZTcyM2IyNTk2ODI2NjVjNDY2MDIyYzAyMjAyYzFmYzFmZTFhZiBsZWdhY3ktdHJ1bmsKKzQzMDYgOWQ0YWRkNDJlZTIyZmY0Mjg5M2VhZjM3NzAyODA4YTI3NTE1N2Y3MSBsZWdhY3ktdHJ1bmsKKzQzMDcgMjc4NmFjYmE2Y2VjMWNmYjlhNTk3MTFmNGNlNjEzZDAyNTM2Y2NhOSBsZWdhY3ktdHJ1bmsKKzQzMDggOWRiZGI4M2Q0MTc4ZjM5Mjc1OGVjOGFmOGQ0M2JjMTNjMjQ0ZjM0MSBsZWdhY3ktdHJ1bmsKKzQzMDkgMTgyMjQ2NWEzNWI4MGNmY2U0MjgzODJlNzU3YWJiNGIyNzc0MjQ2MyBsZWdhY3ktdHJ1bmsKKzQzMTAgZTE1Zjk3NjFjYjAzNWJjYjYxZDYyNGZjZWFhNTMxOWRhNTBlZjgzZiBsZWdhY3ktdHJ1bmsKKzQzMTEgMGIwODE5NmU5ZmY2MTZlYzM3NDYzZGYzMzYyMjEzNzc3OGQwM2IyMiBsZWdhY3ktdHJ1bmsKKzQzMTIgNTRmZGM5YTk1ZjQ4OTA5M2ZmNWVlMzA4ODliOTZlZjY3MzZlNjg3MiBsZWdhY3ktdHJ1bmsKKzQzMTMgNzg4OThiMDRhNjViZWYxZTYyMWZmZjk1MTc1M2Y1NzMwNDk1NzRkNyBsZWdhY3ktdHJ1bmsKKzQzMTQgZDQwNWUzZThmZmQzNDlhZTc2M2ViN2I4Y2ZkY2Y0ZmI0YWQyNWQwZiBsZWdhY3ktdHJ1bmsKKzQzMTUgZWYwOTQ2NTYwNjIwYWNiNTg3OTg5MmZmYTYxZDRiNTEzM2QyOGQ4OCBsZWdhY3ktdHJ1bmsKKzQzMTYgODU1Y2VmYmIyNzE4NjMxMjlhZDFlZDk5YTA0NGZjOGY0MmEzOGY3MiBsZWdhY3ktdHJ1bmsKKzQzMTcgYWFmMWUwNWU2ODQyZDhlZDgzNTU5OGU1YzdiNTljODI5NDJkNjlhNyBsZWdhY3ktdHJ1bmsKKzQzMTggMjBlNjA3MTQ3ODhjNWRhN2E3Nzk5MmY3ZDI1OWUzYjhlMzM5ODk1NSBsZWdhY3ktdHJ1bmsKKzQzMTkgOWM1ZDMzM2QzMzAwZTkzMjQwZTE1ZmUyM2E1MDI2ODZkYTY3YzA0OCBsZWdhY3ktdHJ1bmsKKzQzMjAgNzU4YzEzNzRmMzAzNDgyZmNmYzZmM2ZkYjNiMzQxMDA3ZWEyN2RlMCBsZWdhY3ktdHJ1bmsKKzQzMjEgNjNhZDI4OTM5NzgxYWE4ZDc1NzllMDg2YWNjMmQ1NzY1NjZhYzg0OSBsZWdhY3ktdHJ1bmsKKzQzMjIgMmNlZGU2MWU5YjFiYTRlYjhiYTQ4OWZiNTQwMWQzMmMzMDI1NjU5MiBsZWdhY3ktdHJ1bmsKKzQzMjMgNjE3MzhlZDZjYzEwYzQyOTUyYmE5MmZlMTIxNzRjM2E2M2Q0YmRmYiBsZWdhY3ktdHJ1bmsKKzQzMjQgMTBhMTI0NzNlZTkzMWNhZDI0YzczZDVmZjcyN2YxNDRlMWRmNTY5MCBsZWdhY3ktdHJ1bmsKKzQzMjUgMzJlNmMzYTY3MWQwMGY3ZjBiMTZhZDllMTEzZDQxNzEzZGYwMzZmMCBsZWdhY3ktdHJ1bmsKKzQzMjYgOTA4MWJiN2FjZDUyOGFlOTM0YzU4MmMyOTgwMTYzYzcxZWNiMTcwOSBsZWdhY3ktdHJ1bmsKKzQzMjcgMDc0YWEyNjM4MjZiNDY2OWQwZTI0NGVhMjA1ZDQyM2UxMmJhZTdlOSBsZWdhY3ktdHJ1bmsKKzQzMjggOGM5Y2MwNTRjNWVkY2U2ZGVhZThjNDFmN2Q3MzJiZDk2MTIxZjdkZCBsZWdhY3ktdHJ1bmsKKzQzMjkgY2M1YmY2YmU4MWE1ZDI2ZjgzZDI5NjhhYmQ5NmE0NDBiMjhmYTAwYiBsZWdhY3ktdHJ1bmsKKzQzMzAgMzJkMDA1ZmFmNWZjZDBiZTc0MGEzNTk0M2EyOTM1ZjI2MDA0NjUyZSBsZWdhY3ktdHJ1bmsKKzQzMzEgMjdkNGYxZjkzNDZjNTc0Nzc2NzQ3MjgyNjg2ZjIzZjgxMWUzNmMxNSBsZWdhY3ktdHJ1bmsKKzQzMzIgOTFiZmIyNzcxNTU0ZTgxN2FlMDkzZTdkMWM4NWUyOWY5M2IxN2U2ZCBsZWdhY3ktdHJ1bmsKKzQzMzMgMDVmYjlkZWMyYzljZjFjNGY4ZTZmNDVlMDFlMmJkNWJjZTY3OGQ1MSBsZWdhY3ktdHJ1bmsKKzQzMzQgM2E3MGU5YzBkOWY1MTFhNTdhZTQ0ZWYwNGU3YjQ4NGM1NTk0YjY4ZiBsZWdhY3ktdHJ1bmsKKzQzMzUgZjg0YjY0ZGYwOWMzZTYyOTU1YWU5ZTZkYTE3YzE3Zjg0MTIzZmE0YyBsZWdhY3ktdHJ1bmsKKzQzMzYgNDIxNGE3NTgzZjJiYTg4YjgwZTRjZWIyMDJiMTJmMmEzY2JiNDQxNSBsZWdhY3ktdHJ1bmsKKzQzMzcgYWZiZjExODZjODk3NGEwZGViZjZiZjdiMDRjY2UyZGM1NTkxMTc0ZiBsZWdhY3ktdHJ1bmsKKzQzMzggZDNkZTJjYWQyYzY4NGMxNjAzNWE0OTg3MGQzODBkYzgyZmQ5MDg5YyBsZWdhY3ktdHJ1bmsKKzQzMzkgYWM2YTlmOTBmNmZkNDhkN2MyNTQwOGRhMDY2MGFkZDYzMDU4Mzg2NSBsZWdhY3ktdHJ1bmsKKzQzNDAgZTdjNmExODM4MWQ5ZTdhMzA1Yzg0ODgwYzFmYzQ3MTJhY2E3MjI4OSBsZWdhY3ktdHJ1bmsKKzQzNDEgYmU5NTZiMWVmYjk3Y2NhYTc1ZTFhYTk3YmM1ZDc5YzFlMWVkZGI0YiBsZWdhY3ktdHJ1bmsKKzQzNDIgNGUxY2VhZWUyOTYzMjdkZWZjZTRhYjQ1MDkyODMyY2U3MGJiN2U5ZCBsZWdhY3ktdHJ1bmsKKzQzNDMgYjdkZTY3ODVjOGFjN2Q5NzI0MjAyMjQ2YTQ2OWM3NzYzYzIzNzNhZCBsZWdhY3ktdHJ1bmsKKzQzNDQgMjRhZTdhZjQwYTA5NjBkZWNkZTE2NzgzZjYzNDE4ZDJjZGZjN2FhMiBsZWdhY3ktdHJ1bmsKKzQzNDUgZWVjMGRjNWFiYTYwMTFiYWJhNTA4ZmNiNTYzMTNkNzg2MDIyNTA4NiBsZWdhY3ktdHJ1bmsKKzQzNDYgYWJhNTE2MjEyNDRlN2IwMTIzOThhYWEzNzY2ZDdiYzE2Y2FhNzc3NCBsZWdhY3ktdHJ1bmsKKzQzNDcgMmM4YjRkZjIyYmMyZjA0NWMxMWQ1NjllOWZkMjlhMzY0Mzk3ZTBiNiBsZWdhY3ktdHJ1bmsKKzQzNDggYzIzNTBjODdiZTNmY2M3OWU5NzUxYmQ3MTkxNWQ1ZDE5MGQ5N2I2OSBsZWdhY3ktdHJ1bmsKKzQzNDkgNjU0YWE5NjRkYzI2M2Y5ZGJiZTA1ODQ2NTNkMjllZTNlMzhlNTY0YSBsZWdhY3ktdHJ1bmsKKzQzNTAgM2ZiZGE4NzY4ODU1Mjg2MmNiYjY5YTJiNWNmZTE4NmEzOGJlNDhmMiBsZWdhY3ktdHJ1bmsKKzQzNTEgMjBmMTdiNWFjY2JmODIwMGI4NzJhOTBjYzAyMzUwNTYxNWViM2E5ZiBsZWdhY3ktdHJ1bmsKKzQzNTIgYTY3NzZhNzg4Zjc0OWFlMWQ5OWJhNTI0MjFmNTVjNWI2ZTA4NTQ0NSBsZWdhY3ktdHJ1bmsKKzQzNTMgNWJhZjExMzVhMTNkM2Y1YTYzMmI3YzcwMmMwM2YzYzA1YmU0NGM2NSBsZWdhY3ktdHJ1bmsKKzQzNTQgMjU5ZTY5YWEwZjE1OTg4NzMwMDFiMGE5MGQ1MjQwYjVlODFkZWQ5OCBsZWdhY3ktdHJ1bmsKKzQzNTUgNTNkMTdjMDRiNDJmYjBmMzQ0OWI0Yjg1NjJjZGJmODU1Njc0Y2EzMCBsZWdhY3ktdHJ1bmsKKzQzNTcgZTQ1MGJkNDM2MzFhOTg0Mjg2ZWI1NDAzZGU2OTFlYmVkZDQyYTdhZiBsZWdhY3ktdHJ1bmsKKzQzNTggNjEwOTA2OWQ1NjEyZjAzODhlNDAyMDhkZDg4MmVkNTQ1N2NmOGQzYiBsZWdhY3ktdHJ1bmsKKzQzNTkgNjFjM2MxYTJmZGI0NDNmMmFlMWUwZTY3NzYyZjFhZWY3YjE4NTI5MyBsZWdhY3ktdHJ1bmsKKzQzNjAgOWQ5ODEyZjI3OThiNzNhNjUwZmExY2MxMjExNDJmNTFkYWZjZDQ2ZCBsZWdhY3ktdHJ1bmsKKzQzNjEgYmQ5NDA2OGYwZmQwMzc1NDBhYzUwNGZlODE3NDIzMmNhOGYyM2M0ZCBsZWdhY3ktdHJ1bmsKKzQzNjIgMDQzNzczODI3OWE4ZDY4MDc5M2ZkZGY5ZDVhYmFkMWFkNzIyMjNjZiBsZWdhY3ktdHJ1bmsKKzQzNjMgMGMyMzIxOTRhNjRmMTBjNzFjNjE3YTcyYzY5YTRjOGRlZGFjMTE5MiBsZWdhY3ktdHJ1bmsKKzQzNjQgMzU5NDdmNjA1MjhlZDAxNTdlMjE1MTRmNTU0MDM4YmUyNmRkMGUyMCBsZWdhY3ktdHJ1bmsKKzQzNjUgYTdmMjY5NjEwZWMyZDc5ZjdmZDQ5ZDU0OGY0NjIzODg3MmQ5NmJhZiBsZWdhY3ktdHJ1bmsKKzQzNjYgYWRhMTlhYWFmOGMwYzhlNTA3MWI1N2E0YmE2OTVkZjQzMDhiNmZjOCBsZWdhY3ktdHJ1bmsKKzQzNjcgODYyM2FhMzkxNWRiNzAyYjEwMmNjNzcyY2IzMzY2ZWFjMjk3MDM0MCBsZWdhY3ktdHJ1bmsKKzQzNjggODkzNDEyMTAxMjk2OWYwM2QwZThjN2UyYjA0MzJlZGRkODVhOTFlZSBsZWdhY3ktdHJ1bmsKKzQzNjkgODA4MThjMTA2ZTNlNmY0ODc3YTg0ZTQyNmMwNjFjN2E3ZmJiNTFiMyBsZWdhY3ktdHJ1bmsKKzQzNzAgZTEyNWY1MDIxZTY3M2QxNDVlM2VjZDhjNmRlYzk4ZDNmNmM4N2FmOCBsZWdhY3ktdHJ1bmsKKzQzNzEgMDE0YTFmYjljNjQ2MzQyOWFjNThhYTQ3YTYzOGQxNjJjZmY2YmI2YSBsZWdhY3ktdHJ1bmsKKzQzNzIgZjM5ZDQzNzI4NzcyNGU1NjI3OTZhYjY1MTE1MGZmODFkMjMwZjRjNiBsZWdhY3ktdHJ1bmsKKzQzNzMgZTBhZTZmOTViY2ZiNDE5Y2UyNzM4OWY5ZmYyOTNlYTJmMjQ4YWEzYiBsZWdhY3ktdHJ1bmsKKzQzNzQgNWYzM2NhNTIxNDUyMTI1OWUzNWZlYjAzYWY5NTZhZTBmZWE3ZDkwYSBsZWdhY3ktdHJ1bmsKKzQzNzUgMjc1OTUxYjA4NjA4YzljYzRkN2JlZGE0NzQ1OTMwNmNlZmViNjQwMCBsZWdhY3ktdHJ1bmsKKzQzNzYgMzg1MDcxM2Y2YWVhZTY5MDhkNjRmY2IzODE1NjI5NjYwZDFiMWFkMSBsZWdhY3ktdHJ1bmsKKzQzNzcgYzEwODhkMGJiNTYyMzA2NmNlNTExZTA4NzBhMjBlMTdmNzU1NDgyMSBsZWdhY3ktdHJ1bmsKKzQzNzggNThiMDQ2Nzk1MGQ4MjIzNjhkMGViYjA1YWM0MDUzY2IyMmNhMDY0ZCBsZWdhY3ktdHJ1bmsKKzQzNzkgYTFhYmE0ZDQ1ODkzYjBhZGE5NjI1MzMxNjYzNzU0YThjMGIyODBkMCBsZWdhY3ktdHJ1bmsKKzQzODAgZWE5ZTg1MzNkNmMzMmE5M2YwZTRhMzE4MTkxZWRjNDMyODQ3OTQzYyBsZWdhY3ktdHJ1bmsKKzQzODEgZTU2YWZkMDNjYTdmYzk0NjA2ZDJkYWViNDA0ZTE4MWM0YjZhOTkzZCBsZWdhY3ktdHJ1bmsKKzQzODIgYThiN2VlMGU1NzJkYTdkZTAwMGUzNGUzOGM3ZWQ0ZDQ4ZjMwY2ZiYSBsZWdhY3ktdHJ1bmsKKzQzODMgZjA3ZDY2YzE2MmNiZmZiNjAzYWNjMmY4Mzg5OTljOTEzZmYzMDM2ZiBsZWdhY3ktdHJ1bmsKKzQzODQgZmFjYTdlMzI4YmE3NDljMTNlZjU2YzA3MzYxNDE2MzNmNTYwYzVkOSBsZWdhY3ktdHJ1bmsKKzQzODUgZTNmZjllMmEzZWI3YWY1ZjE2ZjBmZThkMzk2YTdhM2M2NzkwYmVmZCBsZWdhY3ktdHJ1bmsKKzQzODYgNWJjYWFlZDkwMmY1NTBkYWYyZWI5OGFiNjA1NTdmMjg0MTc2YThmYyBsZWdhY3ktdHJ1bmsKKzQzODcgMjM0ODE3NjUyZGIwNmMyZDRmMTU5YWExNzVmNmE1ZWI1Njc1YmIxYSBsZWdhY3ktdHJ1bmsKKzQzODggZjNhZTdjMTdhYzA4N2Q5YTAwZmIwMWMwODdjOWU4ZmY5MjhhMWI2ZCBsZWdhY3ktdHJ1bmsKKzQzODkgZDlhM2UzMGIyZTQ3M2M4Y2NhYjYwMDViNmIzMzMyNzc3YTg4MDc0MyBsZWdhY3ktdHJ1bmsKKzQzOTAgNDVjNzMwMThkZDAxZDcxY2YzODNhM2EyNGQ1ZDg0NGVhZTU5NjYyOCBsZWdhY3ktdHJ1bmsKKzQzOTEgMzIwYmFlYWI3ODdhYzlkNzA1NGNmMDlkMGQxZTBmMjgzYjNjN2Y2NyBsZWdhY3ktdHJ1bmsKKzQzOTIgMmI1ODFjZTQzZjRhMzczMzk4MjllZjZlYmE1NGFjZmNhMzU3NzIyMCBsZWdhY3ktdHJ1bmsKKzQzOTMgOTNkZTU3NzU5NjZlNTU5ZWY2YzJjYmI3NzY2YzMwNDA3OWNhNzI3MSBsZWdhY3ktdHJ1bmsKKzQzOTQgOGI4OTdiN2YzYWRlOGZjNGQ5NjU0M2NiZmM1OTcwMzBmYmQyMWIyNyBsZWdhY3ktdHJ1bmsKKzQzOTUgMGE5MTUyZjg3MTExNjAyMzgyMmFmMGQ2ZTdlZWZlNjc4YmQ5ZmYxNCBsZWdhY3ktdHJ1bmsKKzQzOTYgODVmMWQyYmVjNjMyY2EzODlhZDA4YzQxNDExYjkwZTBjYjNlMWYzMCBsZWdhY3ktdHJ1bmsKKzQzOTcgMzE4NzNiZDZmNGE4NzE2OGU0NjhiOWE1ZTVlNDU5Y2JiMGE0OGRmMCBsZWdhY3ktdHJ1bmsKKzQzOTggOGU4ZmRkY2JkZmQyYjI1ZTRlMTM3NjFhNThhNjRiODM5MGUxZGQ0MCBsZWdhY3ktdHJ1bmsKKzQzOTkgNGJlNmVmMWMyYzFkZjVlMWQ4MzRmNWFkZmUxNmI4NjkyODFhOWE3NyBsZWdhY3ktdHJ1bmsKKzQ0MDAgYmJmODJlYjRhNmQ5ZDMzZjAxMDgwMGUxYzczNGJiNWQ0MTM5ZWRkNiBsZWdhY3ktdHJ1bmsKKzQ0MDEgYmEwOWQ5MGY0MmJiMjYzMTc0YTZkMGE1M2UzMTA0ZDQ2ZmVmM2UzZSBsZWdhY3ktdHJ1bmsKKzQ0MDIgOWJjYWM4ZGEwMjYyNDQ1YzVhYzA4NTk1YThjNDNhYzQxYjAzZWFiMCBsZWdhY3ktdHJ1bmsKKzQ0MDMgMzE1ZDljODI4MTc3NGQxMzE0ZTA5ZjlkMWIzMmZhNWYzYWU4YWY0MiBsZWdhY3ktdHJ1bmsKKzQ0MDQgZjZiNGU3YWNjN2EzNzRmYTMwYzU5OTg1MWIzMzg0YTk2Y2M2NDU0OSBsZWdhY3ktdHJ1bmsKKzQ0MDUgZTE1N2M4MWQwMzU4OWQ2OTQ5NzZlMTRmNjc4ZjM2NjIxMDc5OGRlZiBsZWdhY3ktdHJ1bmsKKzQ0MDYgYjJjNTZlMDRjYjgyOTA1ZTQ2ZTU4M2U1Njc4YWU3N2U5NzIwOGRkOSBsZWdhY3ktdHJ1bmsKKzQ0MDcgNGM1NzFkOGMzY2UxM2JmZjdmZTUwMTg2MGNhYWYyOGY5ZjIwZDY4MSBsZWdhY3ktdHJ1bmsKKzQ0MDggNDRlOTQxNTI0NWZiMDljZWY1ZjJhMWZiZGZhMWE1YzUyZjM1MDIxYSBsZWdhY3ktdHJ1bmsKKzQ0MDkgODgzYTIyODE3NDcyYWVkMDU4MzZhMDViNGIwOWI2NGM0Y2ZmOTgzZiBsZWdhY3ktdHJ1bmsKKzQ0MTAgNzYxMDUxYWE0MzRkYjFmMDlkYjg1NGNlN2YyMGJiMmQxYTVlYWY3OSBsZWdhY3ktdHJ1bmsKKzQ0MTEgMzhkY2IwOTBmNDhiMDYzODU3Zjg5MzBlYjhmMTc0ZjJmNmU5NTcyZiBsZWdhY3ktdHJ1bmsKKzQ0MTIgNTQ1ZTIzNTgzMWI3YmI0OWZiY2Q3OWFkNmFiZjZjNWNjMThmODdiNyBsZWdhY3ktdHJ1bmsKKzQ0MTMgNzEwMGFjYjBkMzYzZDdlYjc4ODA3Y2Y3OTJiZDliZDhhZGFhNDIwNyBsZWdhY3ktdHJ1bmsKKzQ0MTQgNDI3YzYxOWNhNWQwNzMxOWI2ODFhNzEwMmNjYzdmNzFiYmY5ODZlZSBsZWdhY3ktdHJ1bmsKKzQ0MTUgMDU4YTQ2ZDhmYWY3NjU4ZWExYTI5ZTU2N2E5MTIyZWMzNWM4OGE4MCBsZWdhY3ktdHJ1bmsKKzQ0MTYgNjQxZjZiYmY4MDdiOWNjOTc5MmU3M2I0ZTA5ZmE1MGNmODcyMmRhYyBsZWdhY3ktdHJ1bmsKKzQ0MTcgYTEwZDMxZmYzNTI3ZGE3ZDMyZjg4YjFiMDZmMjY4NjczZjNiZTI1NCBsZWdhY3ktdHJ1bmsKKzQ0MTggNzhiZjY3NWRmNWU1ZGZmYTk2NGRlYzAwOGQ2NTMwMzYyZDkxYWVhMCBsZWdhY3ktdHJ1bmsKKzQ0MTkgM2JhMTczMDVmMDQ3ZjE5MDI0ZDNmOTk5ZDRkMzRmYmMxZjc3Yzg0MyBsZWdhY3ktdHJ1bmsKKzQ0MjAgZGQ3YmU4MTI4NDEwNzE0YjE5NDZlMzk5NjExM2I2NTljMTNkMDc3NSBsZWdhY3ktdHJ1bmsKKzQ0MjEgZGMxZGJmNmI1MjExMDA1YmRiY2FiOThmNzFjYzU2Y2JmOTMzMjU1OSBsZWdhY3ktdHJ1bmsKKzQ0MjIgNGZiMGEwODA3YjA1Njc0MDJhMjZiMTU4YWJjYmY0NTU5MDc4YTVkOSBsZWdhY3ktdHJ1bmsKKzQ0MjMgM2RlNWE3NTQ5NGRmY2EyYTU4NDg1ZDE2MWU0YjdiOGJiNGJmZmUwYiBsZWdhY3ktdHJ1bmsKKzQ0MjQgODQ2MzdjZmRiYzA3NDJhOTc1OTVlNDRkNjY5MjQ3ZGM0ZjkwM2IxNSBsZWdhY3ktdHJ1bmsKKzQ0MjUgODdhNjIwZDg0NzY2MzNkYjhiMzViMTlkOWU0ZDM0ZDhiZjNmODFkNCBsZWdhY3ktdHJ1bmsKKzQ0MjYgNDQ1NDQyMTc4NGQ4NGFjOTRkMzlkOWVmZmM2MjU0ZGZmMDUyYmE4MSBsZWdhY3ktdHJ1bmsKKzQ0MjcgZjIyY2I1ZmVlOWM4YjdkODI2NWIzNzliOGYzNTFmMzAxZDZmMjA4YyBsZWdhY3ktdHJ1bmsKKzQ0MjggZjk1YzE5M2JmZTY1MzRmYTFmM2NmODIwODY1NmMwMWNjMWE1ZDUzZCBsZWdhY3ktdHJ1bmsKKzQ0MjkgZGNmZTdmZDFhY2JjNTY0NGZkZGU3MjE3ZjUyMDI0NDFhOTIxNzcyNCBsZWdhY3ktdHJ1bmsKKzQ0MzAgZTIzNjM5ODc5Y2QwNWI5NmE1ZjI3M2FlMDc4N2QxNjNkZDJmYmNmNCBsZWdhY3ktdHJ1bmsKKzQ0MzEgYWQyNWM1MjM3NmI0NWI4MDlmYmQyYTZjMDQ4ZDNkYjYwMTIwZTJlMyBsZWdhY3ktdHJ1bmsKKzQ0MzIgNDJmOTVlYTc1ODY3MzQ3ZTgyNDAxNjllZDlkOTAyNmJmNjI3MDEzNCBsZWdhY3ktdHJ1bmsKKzQ0MzIgODMyNjE1ZWMwNzY0NmUzMTBjODUzMTZiOGJhNmJjOWIxN2FkMzU0NyBsZWdhY3ktdHJ1bmsKKzQ0MzQgMjM0N2IxZmU4MTJkZDVjZTY1M2MxMDFhMDdiMTIwN2NiYTdlYWQxNCBsZWdhY3ktdHJ1bmsKKzQ0MzUgNGU2MzEwMzJlYWNmMmI5YzZmOTc2YjY1OGM4NDFiMDM5NmYwZjMzZSBsZWdhY3ktdHJ1bmsKKzQ0MzYgMzM1MTU0ODVlYWQwZDZkZTMzZjI4MjMyM2E4YjEyMzNkNjNmZWFhMCBsZWdhY3ktdHJ1bmsKKzQ0MzcgODBiZDdhZjczMjAxOTA3ZDI1NzExZjFmNjgyOGEwZWM2ZDFiZDM2YiBsZWdhY3ktdHJ1bmsKKzQ0MzggNDA2MTFjYWNkNWJkN2EyNmFjMWYwMTQ4MGI0YzkwMDk4NWMyYTBjMiBsZWdhY3ktdHJ1bmsKKzQ0MzkgMTVhMWViMTEzYTQzMDgzNTY4NjBjMTllZGY4ODJhOTY2MzI5MTRjMCBsZWdhY3ktdHJ1bmsKKzQ0NDAgNThlZWY1MWUzMDg0OWM2YTc4MzRlZDlmNjhkMjM1YzQzOTVkY2FkMCBsZWdhY3ktdHJ1bmsKKzQ0NDEgNTU4ZDlmOTVhNjAyMGFkNjMzZjZmYThlZGM3MTkzZjJhNjFlZmI0ZiBsZWdhY3ktdHJ1bmsKKzQ0NDIgZGM2ZWFhMWE4ZmRkZmVkNWU3MzZiMDE5N2U3NTdkZTQ0MDI1MThkYiBsZWdhY3ktdHJ1bmsKKzQ0NDMgNzdkMWNhYmY5NzFjY2NjYTIwODI2N2E1MWIzODRkODQ5MzUxMTA4ZiBsZWdhY3ktdHJ1bmsKKzQ0NDQgNGU2MDU2ZDk4MGUxYTFjMDczMzA5NzIxYmQxOTExY2JjZDg1Zjk1MyBsZWdhY3ktdHJ1bmsKKzQ0NDUgNzQ0MjY1Mzc0NDUwODAxZjBmMWZhZTAyOWQ4MDlhODg2YzEwNmIzMSBsZWdhY3ktdHJ1bmsKKzQ0NDYgZjQ5NTI3ZWNkYjNhZDVjZDZhOTdiNzllZmUwMzVjODY0MDBjOTA0MyBsZWdhY3ktdHJ1bmsKKzQ0NDcgYWYyNmQ0ZDVjMWQ0M2EyYmYzNjRjNDkyZTU1ZTYzNDM4NjI2OGUzNSBsZWdhY3ktdHJ1bmsKKzQ0NDggZmIxOThlMTMxNmI5YmRjMmM4OTc4ZjYzZWU2NWJlYmJiOWZmMjQ5MSBsZWdhY3ktdHJ1bmsKKzQ0NDkgMWRhYjk5Yjg2ZmE4YzNmNmE3YzQ0MDA0ZDI2NGVmMWUzNjEzN2FkNSBsZWdhY3ktdHJ1bmsKKzQ0NTAgZjkwMGMwOTk5NWRmYzQyZjI1NjY4NmMyZWJmODEwYzNmOTMwMTM0YSBsZWdhY3ktdHJ1bmsKKzQ0NTEgNjNmODc1ODQ5YmQ4MzE5MTQ0MTI5YTEwOGM5ZDc2NGJkYTcwMTdiMyBsZWdhY3ktdHJ1bmsKKzQ0NTIgY2Y0ZDg4NjJmMTliZjQ1NzQwZjlkZmMwMWQ1ZGZmM2ZkZGY3MGNjOSBsZWdhY3ktdHJ1bmsKKzQ0NTMgYzVhNTE0ZjhmM2UzZGFjNWFjN2MxYWNjYjVmMWVkOTE3MWRiMWEyMiBsZWdhY3ktdHJ1bmsKKzQ0NTQgZDVmNGQwMTNkY2MxNDQzZTNjY2I0NDA5ZTc4ZmQ5NWIzNmQ5MWFkZiBsZWdhY3ktdHJ1bmsKKzQ0NTUgZjA1YjVjZDc5ZmJlZGI3M2E0OTJlY2I5NmM5YjFhMDRiNjgyY2M0NyBsZWdhY3ktdHJ1bmsKKzQ0NTYgZTg5NTJiOGRmZWZmY2RhY2Y0NDUxODNmOWVhZDA5ZWFjNzczZmM0NyBsZWdhY3ktdHJ1bmsKKzQ0NTcgYTcwODgzODAzMzM4YTAwNTcxODRlOTQ4Y2Y5ZjUyMWQ1NGZhZGRlZiBsZWdhY3ktdHJ1bmsKKzQ0NTggN2Y4NzE5YTM2NjYyMDNiNzQzN2RiNmRkNzRiYjE1ODc5MzYwYjQ1MyBsZWdhY3ktdHJ1bmsKKzQ0NTkgZWQ1ZDBhZDVlYTJmMWZkZTgzNmQ0NDQzMDQxM2ZhOTUxMWFhNjgzOSBsZWdhY3ktdHJ1bmsKKzQ0NjAgM2FhOTE4NGNmZjhiNmM5YmVhMDdhOWE2MDgwM2ExMzI5ZTM1NTk4ZiBsZWdhY3ktdHJ1bmsKKzQ0NjEgN2M1M2U2MWJjNGJhNTc4ZTA0YTY4MTg4MWI1MWI4MzJkMDA4MGY0OCBsZWdhY3ktdHJ1bmsKKzQ0NjIgODExYzRlNDYyMmFhYmY1NmJjYTI4N2MyNDE3ZjY1NTNmOTgzZWE1NSBsZWdhY3ktdHJ1bmsKKzQ0NjMgMzkyZGIxODgxMTkwOGM3YWM3MjE4NWExOGE2OTExYTE0NTEyMWUyMSBsZWdhY3ktdHJ1bmsKKzQ0NjQgZjY1ZWMzZGNjNTYzMWZkNTViYThiZGNhMzFlOGNmNWJmMGNmZmI2YSBsZWdhY3ktdHJ1bmsKKzQ0NjUgZjI3ODAwOTY1ZmY3Y2VkYjA3ZDZkYmE5MmE5ZWFkNGQ2MjViMmRmNCBsZWdhY3ktdHJ1bmsKKzQ0NjYgMGJhZTZhYjljOWUwZTc2NWU4ODkwMjQ4NDI2ZTI5YzZlZWY0MWRlNSBsZWdhY3ktdHJ1bmsKKzQ0NjcgZGM5YjYzMTZiOWIzNTRmMjFmMGEzM2MyODg4NGNlZWNhYTRlZDc3NiBsZWdhY3ktdHJ1bmsKKzQ0NjggNjlkNDhjYmRjMmQ5YTM5Mzc0Mjc2NjZiMTQ2N2I2MmQ3OTI3YWNhYyBsZWdhY3ktdHJ1bmsKKzQ0NjkgZWMwNWQ5MDIxYmNjZDgyMzAxNTM4YzAwZjYyNTI0NDgxYWFmYzBkMSBsZWdhY3ktdHJ1bmsKKzQ0NjkgOTg5NTQ3NWQxOGM3YjVmMzJhZGFmNzhmNzE4ODZhZTA0MWU0ZDEwYyBsZWdhY3ktdHJ1bmsKKzQ0NzEgYTRhODU0NTBlYmFmZTMyNGNkMzRmZWYyNzViZGQ4NjQwYTk2YjZmMCBsZWdhY3ktdHJ1bmsKKzQ0NzIgNWEwNzc1Y2U3YjMxMWViOTZhNzYwZGUyYThmN2JlOWMwYmMwMThkMCBsZWdhY3ktdHJ1bmsKKzQ0NzMgOWUzNDY5YzBlZDc1Y2MyNGExNWRmM2I2ZGNkN2E1OGU2ZWNlNTJhOCBsZWdhY3ktdHJ1bmsKKzQ0NzQgN2JkYTBmMmMxNzBjZGVhMjk2NmU1N2RkOWRkZWMzMDE3OWQ0ZmY1OCBsZWdhY3ktdHJ1bmsKKzQ0NzUgZWUxMmVkZmMyMDk1OTliYTFjMzZjYjRmZmQ5YTVmZWUxNWI0MWQwOSBsZWdhY3ktdHJ1bmsKKzQ0NzYgZWVlM2Q3MTVmMGNmYmYxZWEyZjRjNDI5N2Y3MmJiZDM3MzdjY2IwYyBsZWdhY3ktdHJ1bmsKKzQ0NzcgM2Q0MzFhNTIxMTMyZjIzYTA4YmQ2ZGMzNTQyMjE1ZWIwMjFmOTczZSBsZWdhY3ktdHJ1bmsKKzQ0NzggNzJiMmFiNTZlNDAzNTJlM2VkYjY3MmVkNDFjNWFkNjAwMzA0N2RmYiBsZWdhY3ktdHJ1bmsKKzQ0NzkgZmE3YmM1MjgzMTRiYzQ2MWRhYTQyOTU1Y2RkNmEzODU5MWM5YTNkMyBsZWdhY3ktdHJ1bmsKKzQ0ODAgOTdkNjE0YjI0YzA4Y2I1NDYzNjFjZTFmYzc1MjUxZThmODI4YjFlNyBsZWdhY3ktdHJ1bmsKKzQ0ODEgNWM3NGMzYWVkYTc0YWY2YWM3MjMyMDI4MGJiOWViZjNhOTNmYjNlNSBsZWdhY3ktdHJ1bmsKKzQ0ODIgZDRhMDZlODA1NmI4N2Y5YTMxNjNiNjEyMmRjNDUzNTE1Njk0OTBhNSBsZWdhY3ktdHJ1bmsKKzQ0ODMgMmEzYzhiZWJmMTU2OGFmMjg5NTkyNzUwYTY5ZmJiNjdlOTI0ZTZhYiBsZWdhY3ktdHJ1bmsKKzQ0ODQgNjcxY2YxZjhiMGMzM2JiNzE4MzkwZWYzODNlYzY3NTZjZDIxMGFmNSBsZWdhY3ktdHJ1bmsKKzQ0ODUgMTczOWYwMGZmYzg2MzFlMzBhNjdmOGE2NTM2OTFjOGJhMzNlZWMwNSBsZWdhY3ktdHJ1bmsKKzQ0ODYgNjA5YmZiOGFlN2Y1NGFlZTc1NzAzMTgxNjkxNDM3M2EyMzNhNWJjYyBsZWdhY3ktdHJ1bmsKKzQ0ODcgZTQzYTE5NDJlNTg4MDZhMTI0ZjcwNDFlNzhiZTAxY2JiMWI3MmIzZiBsZWdhY3ktdHJ1bmsKKzQ0ODggZjIzNmFkYzI4ZTc3NzA5MjJlMGM2NzFkMGJmZmFjMjJjZTk3MDU3OCBsZWdhY3ktdHJ1bmsKKzQ0ODkgY2U2OTc0MmYyZTc3Nzk1ZDE3NDJlZGFiYTc1ODJhMDUyZTk1ODI2MCBsZWdhY3ktdHJ1bmsKKzQ0OTAgODNmY2I5ZGI0Y2E4ZWM0ZTlmNzRiNDhlMjc0MGUzM2JkZGE3MTg1NiBsZWdhY3ktdHJ1bmsKKzQ0OTEgMzcwZjhjYmQ3YzMyM2U4ODVhMzMwMjRlYTdmNjYyNTUzYTFjYzg4NiBsZWdhY3ktdHJ1bmsKKzQ0OTIgNTk4M2QyZGI1OTA0NTdhYjA2ZGI2YWJkNmY3NDQ4NWVlZmJkODM4ZiBsZWdhY3ktdHJ1bmsKKzQ0OTMgMDcwMTc2OTA5MGY0OWJmMWEzMTRiM2Q1YzUwZWJhOTAzMzM4M2RhNSBsZWdhY3ktdHJ1bmsKKzQ0OTQgM2Q4MjJlMzJjMzI5NzA0NDBlNTc3OTc0YWQzMjVkNjBjNmM2OWQ4MSBsZWdhY3ktdHJ1bmsKKzQ0OTUgZTI4ZTEwZTVkZWIyYzMxMzI1MTBmMmU2ZDYzZWViZjI3ZmUyMjNiYyBsZWdhY3ktdHJ1bmsKKzQ0OTYgZWE2OTZmMjQ4N2ZjODYyODViOGMzZTExMWUxMWU2NmQ2ODgwN2JkYSBsZWdhY3ktdHJ1bmsKKzQ0OTcgNGViZWU5MDQ5MjRlNmFhNzc4ZTllNDEwYThiYzI0OTcyMDhmOTk2YSBsZWdhY3ktdHJ1bmsKKzQ0OTggMjgxZTQwNjUyZTIzNDUzODQ1NTAwNzI4MGQ0N2MyNjk5N2RlNjhhMiBsZWdhY3ktdHJ1bmsKKzQ0OTkgNjJiYmJmZTZiYmY2ODI4Njg4Njg0M2E3NmUzNzNjZTJiNmZjMjgyOCBsZWdhY3ktdHJ1bmsKKzQ1MDAgMWNlM2RiZWViODkwOTM4MGUzYjFiNzhjOGUyOTE5ODMzNGZiODMzMiBsZWdhY3ktdHJ1bmsKKzQ1MDEgZjE4YzE5MTVjNzIyZDE3NTE5OGEzNmI0NzljOTZjM2QzOWRiNGEyNiBsZWdhY3ktdHJ1bmsKKzQ1MDIgYzg1YWJjYzc1MmIxODQ2NDMwNjkwZmNmN2NhMWVjYzk5NDkyOGIyYyBsZWdhY3ktdHJ1bmsKKzQ1MDMgMDdjZjNiM2JhZjE2ZmMzMzcwYWM5NThlYjZjYzk5MjcyNTUxY2RmYiBsZWdhY3ktdHJ1bmsKKzQ1MDQgMTkzNjNmODU3MGEyZmNmZmQyZGEyNjBhNDVkNGEyMDc1ODQwODJiZSBsZWdhY3ktdHJ1bmsKKzQ1MDUgMjNkZmNhOGFhNzNiMDQwNTZkZTc1MGRmODRiZDNkMzdjZGZmYzk5OSBsZWdhY3ktdHJ1bmsKKzQ1MDYgZDdlOTE0MzdmMGEyN2UyNzQ3Y2UwMmFiMWJhNTA4ZjRlNWQ4ZWMzYyBsZWdhY3ktdHJ1bmsKKzQ1MDcgZGU0OWQ0OTA0NGQ3NTNkZjExMzA0M2I0Yjc5MzYyNTAzZjc4ZGM0OSBsZWdhY3ktdHJ1bmsKKzQ1MDggMDMxOWIxMjMyMWQ3ZGRiZjIwYTBkZmQ2ZmU1YTI5MDMzOTZkNmFkYSBsZWdhY3ktdHJ1bmsKKzQ1MDkgY2YzMWVhYjZhYjVhZTJlMDFmNGM2NmJjYzlkNWZlMmNhZTBjMGExNCBsZWdhY3ktdHJ1bmsKKzQ1MTAgYWZmNWQ3ZDA2NzM1YzhmYTBhZjk1ZGRhYThhMjY3MWFjZDhkZTUwYiBsZWdhY3ktdHJ1bmsKKzQ1MTEgNzljMTcxZjU4MWZjZGVlMzA5OTNmYTNkMmNjZTI0OTEwMjViNTFiZSBsZWdhY3ktdHJ1bmsKKzQ1MTIgNTA4MDM2ZGJiYTNiNGYyZjZmMTI4MzRkYzA2MDBhMDQ4OTFkNjcyMiBsZWdhY3ktdHJ1bmsKKzQ1MTMgODY2YzgxMDY4ZGJkYTI3MWVlMjJiOGMwODVjMzBjMjRhNzE4Y2IwNSBsZWdhY3ktdHJ1bmsKKzQ1MTQgMTQ2ODkwNjUzYTU3ZWExM2IyOGZmNDZkNDZlOTJmZDRjNjM4ZWFiMiBsZWdhY3ktdHJ1bmsKKzQ1MTUgMTcyYmEwNGE1MTkxNmNiNzUwNDEzNTQwZTAzZjZmNDI4MWFmNDFkNSBsZWdhY3ktdHJ1bmsKKzQ1MTYgZDBkMGE2OWI1Y2EzNGI3NWVjNzdkYmZjODlhNWFmZmZmNjIwNDMxYSBsZWdhY3ktdHJ1bmsKKzQ1MTcgNWVkMDY1OTQzNTI2MjE1NDdmNTM2ODE2Yzc0OTA1ODA3MmZmODY1NiBsZWdhY3ktdHJ1bmsKKzQ1MTggMjgwZjMxZTZjNjUzYmU0MGZjM2Q1NWRlZmFmMWNkZDhjYzlmZWVlMSBsZWdhY3ktdHJ1bmsKKzQ1MTkgMjZjZDRkNmMyZDEyYmUzZWI2ZWM3YWQzMzUyZGY4MmZiMWU1N2EyZiBsZWdhY3ktdHJ1bmsKKzQ1MjAgMDAwYWU2NDJmOWI4ODlhMWFkZjk4MjQ5NGYwNzIyOGRlOTQ3NDZjZCBsZWdhY3ktdHJ1bmsKKzQ1MjEgMWI5OTQ1MWZhMTQzNmNhZDc4NDJmZWM1YzU5YWEyYzA0ZDYyYWIwOCBsZWdhY3ktdHJ1bmsKKzQ1MjIgNTIyNzMyNGQ2NGU0Mjk4N2NiODZjZjhiOTdmYTQ5NmQ0NGFkMjFmMyBsZWdhY3ktdHJ1bmsKKzQ1MjMgM2FhN2E3Nzg0NDU1OWFjNDc0YjVmNjI5ZTc1OWYxNmE4ZWRmYzc0OSBsZWdhY3ktdHJ1bmsKKzQ1MjQgYmU1YWI4ZTg5YzQ5ODZlODIyOThhY2E0YmM2NTNiZTgzODkyYmQ0OSBsZWdhY3ktdHJ1bmsKKzQ1MjUgMDQ4ZTkxYTU5Yzc1ZThjZTYwYTM1MzIxZmFkMGNhYzYwNzJhYjNmMCBsZWdhY3ktdHJ1bmsKKzQ1MjYgY2Y2NWExMjRmYTRiNzY5YzY5MjFiNmE5ZjY1YzI5MzRiMGZhN2FjMiBsZWdhY3ktdHJ1bmsKKzQ1MjcgNjhhMzhjZmZjZjU4M2MyOTE4YTUzODg5MDVjMTliZGViYTE5MTI4MiBsZWdhY3ktdHJ1bmsKKzQ1MjggYTM2Y2FjNzljNWFmN2MxYzE5MjVhNDFjNTJlYzI5MTdlYjkxYmQyNiBsZWdhY3ktdHJ1bmsKKzQ1MjkgNGMzNDdlNGQxM2YxZjExNjVjODBkZDliYTQxOGVmZmRhZjFkODA1MCBsZWdhY3ktdHJ1bmsKKzQ1MzAgYWRjMDI4Yjk3N2JkZjZiYjdmNWFjMWNkZTYwMmU3ODZmYThlYmY1NyBsZWdhY3ktdHJ1bmsKKzQ1MzEgMzg0ODA5NGYyNTljYTdiYWM2OTQ0NmJlN2YyODc5MTlkN2VhMzQxOSBsZWdhY3ktdHJ1bmsKKzQ1MzIgZGY2ZmU4Mjk2YmMzMWQ1M2MzNDk0MjY1ZTc1YWFlM2ZkYmE3MDBjZSBsZWdhY3ktdHJ1bmsKKzQ1MzMgNWJiZjBhOWM5YTQyOGFjNzg2NGQzMDAwOTk2M2M2MTRlMGJlMjdmNiBsZWdhY3ktdHJ1bmsKKzQ1MzQgYzIxY2M3YjNjZTI4MzM3M2NmN2QyZTcxMzY1ODk1NzAzZGIzYzcxYyBsZWdhY3ktdHJ1bmsKKzQ1MzUgYWZlY2RlYzk5NmZmNTAwMzM2MjViNWY1Y2M2YjdmYzcyZjk1YTQ5NCBsZWdhY3ktdHJ1bmsKKzQ1MzYgNGFmYTdlYjQ3MzRiY2ZhZjY1MmZkYmZkYzg3N2IyODRmYmY3M2RiYyBsZWdhY3ktdHJ1bmsKKzQ1MzcgZjJkMjY3ZWRiZmQ2ODc2NzA5MzkxNWZhMTM3ZGRlNzBkZTEyZWE4MyBsZWdhY3ktdHJ1bmsKKzQ1MzggYWJiZjJhNGI0ODhiMzcxYTJlNjQ1OTk1YWEzY2UxNjFlNDc1NzQ3YyBsZWdhY3ktdHJ1bmsKKzQ1MzkgODkyMWEyODgxZmM3ZjI2NDY4Y2Q4NjI2MjUwYmE0YWYwNDM0ZWRkNiBsZWdhY3ktdHJ1bmsKKzQ1NDAgMjYwNGQxMWM4YjQwNDU5YzBhY2IyMDVmZTc1YWIyYmQ2MDk5YzczMSBsZWdhY3ktdHJ1bmsKKzQ1NDEgNjUxNDZiNTJmMTZiOTM0ZGRkMGQ0OTVhY2EyZDdiNzFjMmMwOWMyZiBsZWdhY3ktdHJ1bmsKKzQ1NDIgMTk0MGUxZTBjZWRmNWQ1NWU3M2MwZmRlMGY1MzZhZGMyOGM3ODAzMyBsZWdhY3ktdHJ1bmsKKzQ1NDMgNTNhYTUxNDMzZjdmZDVkNTNjMjcwYmJjZDAxMzRiNDQ3MTI3MGI4NyBsZWdhY3ktdHJ1bmsKKzQ1NDQgZjc4YjM4N2I1NGUwYTM5OTVhMGQyNzVkOWJlNDZhODJkZjkxMjcwZiBsZWdhY3ktdHJ1bmsKKzQ1NDUgYjRkOTgyYzY0OGJiM2U3NjAyYTk1OWY0MTUzMDU4NzE1YTQ4YTE4MiBsZWdhY3ktdHJ1bmsKKzQ1NDYgYjAzYjQzYmVlMWFiM2VjZmY2YTUyM2NhYTUwMTY2YzA5MThjZDc4ZSBsZWdhY3ktdHJ1bmsKKzQ1NDcgZThjYWZiMmI3NDNhN2U0YzAzZDg2OWEzNDJhMGNmNmNlZTEyOTE4OCBsZWdhY3ktdHJ1bmsKKzQ1NDggZDM1NmM0NzNkYjk5M2ZlNzRmYmZmYmJkNzM4NWI2YmY5MzAzYTdjNyBsZWdhY3ktdHJ1bmsKKzQ1NDkgMGQ3ZTRhYTU5NWY3YWE1YjRkOWI4MGU1ZGFhMDBiNzUwNzU0YzBkZSBsZWdhY3ktdHJ1bmsKKzQ1NTAgZDVjOTM1YjlhN2I1MGNlNTRhOGZkMmE1YTM1NjJjMDRmYjJkYzM0MCBsZWdhY3ktdHJ1bmsKKzQ1NTEgZTQ1ODg0MDRmZGZmMjU0MDBjMDU4MmE1NTMwNmI5MDE2MzQzOWU0OSBsZWdhY3ktdHJ1bmsKKzQ1NTIgYjdiZTAzODJmOWVlNjlkMTZhMWI4Y2ZmNzJkOWZkOGVkODU1OTM1ZiBsZWdhY3ktdHJ1bmsKKzQ1NTMgYmEyZTIxYTU0YWUzOTkxYTRiZWEzYjhlYmFjYzhmMzQ2ODRkZGNmZCBsZWdhY3ktdHJ1bmsKKzQ1NTQgNDU3NGVkNjU3Y2M5ZjlhNTVjYWU0NDU0MTVlNmE3OGQ5ODc0YTg5YSBsZWdhY3ktdHJ1bmsKKzQ1NTUgZmRjY2MzMjIyZDBhZTc5NDFjYzQ1YWE2ZDkzMzA4OTA5ZmJjMzQ4NyBsZWdhY3ktdHJ1bmsKKzQ1NTYgMzA4MjFiYzJkY2I3NDRmYjBhZjE3NWQ3YmQyOGQyOTVkYWI2MjVlYSBsZWdhY3ktdHJ1bmsKKzQ1NTcgYmJmYWMzZTI1NzBkOWFiMjIwZGZmN2Y2MWQ5MTIyMmJiOTVhN2FlYSBsZWdhY3ktdHJ1bmsKKzQ1NTggNzQ5M2M2ODA1ZGM2ZTVjYjkzNDdiZWI2NjhlYjExMWUyYWMxMTFjZSBsZWdhY3ktdHJ1bmsKKzQ1NTkgZWE3YjJiZjBiNTIxNjFmOTZhNWE5N2MyY2E4YmU2ZDMwMGRjNTFmZCBsZWdhY3ktdHJ1bmsKKzQ1NjAgMmViYjIxMjg0ZjM0NTFhNzY5YmY1NzhmNmJmZTQ0Y2RlOGU0OTZiZCBsZWdhY3ktdHJ1bmsKKzQ1NjEgMDE4MzBkYzhkNmU1ZDM2YmZkMDFmMjJmNTY3MTJlZjIyMzllZjFkMCBsZWdhY3ktdHJ1bmsKKzQ1NjIgYWY0MWY0YTIxNjgyZWE4MjEzNjI3YWRkNDUzMjEyZTYwYzNlN2NmMiBsZWdhY3ktdHJ1bmsKKzQ1NjMgMDcwODBhMjk2MDcwN2JiYjlmMDFlZjY2MzBhOWZlYzA0OTViYzIzMyBsZWdhY3ktdHJ1bmsKKzQ1NjQgNmM0OTA1ZmZmZjAxZTliODkyMGU0ODI5YTkyOGI2NWZmY2Q3OTE5MCBsZWdhY3ktdHJ1bmsKKzQ1NjUgMzBjYmUwMjRkZjQwOWVjMGQ3ZTMyYTQzNzQ2ZDc4MzY0ZDU0MjNmYSBsZWdhY3ktdHJ1bmsKKzQ1NjYgMjY2OWVmMTRjMjA1NDE5OTBkNmRiY2VlOTllMWJjMmY0MzY3NmZkYiBsZWdhY3ktdHJ1bmsKKzQ1NjcgNzZjODYwYTE4ZDgyMzQzZmI0ZTA3NmRhZGNlNGZiYmM1MDgwZTczOCBsZWdhY3ktdHJ1bmsKKzQ1NjggNzk0N2MwZDE2Y2EwNDFlNjkxNGVjODkyMTg1MGMzOGI0MTI1MjU5ZCBsZWdhY3ktdHJ1bmsKKzQ1NjkgN2VhMzY5ZDA1YzJlZTE5NWUxMjJkNGQ3Y2ZkMGQ4NTEyMzA4ODQwMCBsZWdhY3ktdHJ1bmsKKzQ1NzAgZDczZWVkMzUzMDAxMGM0ZmQ0YzgwMmEwOTA5M2FlMGVmNGQzZjYxNiBsZWdhY3ktdHJ1bmsKKzQ1NzEgNWRmNjlmMjk0Y2NjNmY2ZDQ2NjFlODRlMzllMDYxMzJiMDcwYTc1NCBsZWdhY3ktdHJ1bmsKKzQ1NzIgYWVkYTg2NGMxMWM0NDYzOTI1ZWRkMjBhMTg2YWQxZDQ4ZTdlYmRiMyBsZWdhY3ktdHJ1bmsKKzQ1NzMgMWRhZTBkMzA2MmQyNjNiYjZjYzY4NTFlNzI4OWEwNWM3NjZhMmU3NSBsZWdhY3ktdHJ1bmsKKzQ1NzQgODRiNjFmZTQ0NTczMDQ4NDAwY2RiMWU3MTFmMDZkYWNkZjRiMzJhYSBsZWdhY3ktdHJ1bmsKKzQ1NzUgODZkOWU5MTQwNWM4NTUzODk3Yzg4NzBjNDBlY2VmMmI4Y2FmNjVkMCBsZWdhY3ktdHJ1bmsKKzQ1NzYgYmEzZmQ5NmYwNTVlZjkxOWI0ZDgwMzI2YjE2NzViYzM1MjgzODY2NyBsZWdhY3ktdHJ1bmsKKzQ1NzcgZmQ1YWI3ZTgyOGZjY2MwMTQxNTk2ODI0ZjhhNzVjYWFhMjZhN2FhNSBsZWdhY3ktdHJ1bmsKKzQ1NzggMzY4NDdiOGI1NzVkZjY1MWY1OGFlZDU4MTM2OTZlYjc2ZGY2NTI0ZiBsZWdhY3ktdHJ1bmsKKzQ1NzkgYmQwNjFkYzMwODQyZTc1MDRlZGU0ZDdjMzdmM2U4ZTE3OTc5MDVkNSBsZWdhY3ktdHJ1bmsKKzQ1ODAgYWYzNmJhZTM0M2ZjZjhkYWVmNDhhOTg1NDFlMzdjMzk2ZjI0MDhlOSBsZWdhY3ktdHJ1bmsKKzQ1ODEgNjk1NDAxNjkyYzQ2ZmI2MmM0ZThjOGRiZDdjZjkxMWMwZGNmNTVkZiBsZWdhY3ktdHJ1bmsKKzQ1ODIgOTJkYTg5MDE1MTdlM2YxNWM5OGM5MThiMmRmMjQwYTA5MWE0Y2VhNCBsZWdhY3ktdHJ1bmsKKzQ1ODMgMDUzNjBjZDYxNmFlMzg4Njc1MTA1NDVlNjk0ZGRhYjI0OWU2Yzc0YiBsZWdhY3ktdHJ1bmsKKzQ1ODQgY2EyN2MyZmUwYjhkNGM2YjU2ZTRmMDZiNjMxYTVhNmQ4YzQ3MjYzYiBsZWdhY3ktdHJ1bmsKKzQ1ODUgZmU5MjJmZWQ2YjMxZDhjODRmZjYwYWU4ZWI2NDUzMjUzMDFlYzUyOSBsZWdhY3ktdHJ1bmsKKzQ1ODYgNGRkZjU1NDQ1N2FkNWQxYjIwMWNjOWM2YWYzMjMxMWQ2MWJmOTQyYyBsZWdhY3ktdHJ1bmsKKzQ1ODcgYzE2ZDY5M2JmZTczZjUyZjQzZjgwNzgwYThmNWExZjUxMjZlNTkwYSBsZWdhY3ktdHJ1bmsKKzQ1ODggOWQ2MWM1NzQ5YmY4Mjc4MWE3YTA2MDM5NDY5ZGM4MTNhZTI4NDk3MyBsZWdhY3ktdHJ1bmsKKzQ1ODkgNGY5MGI0NzRiZWVjMzQwZjA1OWYwNTk2OGFkMGFhOTk3ZWI2NmNjMyBsZWdhY3ktdHJ1bmsKKzQ1OTAgYzU3YjVjNTBhMmQyOTU0ZjZhMGMxY2Q4YTFiNTFmOGNiMDAyM2JlZiBsZWdhY3ktdHJ1bmsKKzQ1OTEgYzkwODVmMWU5NzdmMzM4MDM0MGJiZmJjMTkxYzFiMmYxNTYzMTllZSBsZWdhY3ktdHJ1bmsKKzQ1OTIgMjNmMDQwMzE3ODI4MGFlMDdjZmIzMDg0ZmFmZDhjYzU3Y2VhYzY1MiBsZWdhY3ktdHJ1bmsKKzQ1OTMgOTRlMmNhODY1OTBhNTZkMzg3NGRjMjRiZTVkZWI3M2Y5NTNiNzgxZiBsZWdhY3ktdHJ1bmsKKzQ1OTQgMTczZGQwMDg3OWFiNjAwMGM4MmRjNjQ5OGZjOGY3MmZkZjdhOGQ0YSBsZWdhY3ktdHJ1bmsKKzQ1OTUgODQ5MjNkOTJiNTNlN2FjMWE2MzIyYTMyODBlMzQxYWU3ZDM2MTJiYyBsZWdhY3ktdHJ1bmsKKzQ1OTUgMTZlYjRjNTFlZTk3MTY5MDQ2MzQwOTk4ZTg1MGE2M2M2NTIyNWIwYSBsZWdhY3ktdHJ1bmsKKzQ1OTcgN2FlODQ3YjFiMjY5MjI4YjljYzM4NGUwYmFmZDA0YTM2NzkzYmUxYiBsZWdhY3ktdHJ1bmsKKzQ1OTggMGU2MGNkMjA3YWRiYjI0YmQ1YjNjMmI4NDRiN2MwODY3M2UwNDRhNSBsZWdhY3ktdHJ1bmsKKzQ1OTkgZTllOTNlMDczNTRiOGJjMGIzOTQwMTQ2MmE3MGE2YjliOWRiYTBmOSBsZWdhY3ktdHJ1bmsKKzQ2MDAgOWFmZGJmOTQ0YzJhMDNhNjQ5YTU3ZmUwYTMyM2NkMTIyNTFjNTYwZCBsZWdhY3ktdHJ1bmsKKzQ2MDEgODM4ZWY5NzY4ODIxMDMwMTY3ODViOTdkNDBlYjkyY2Q5ZDMwMWY5YyBsZWdhY3ktdHJ1bmsKKzQ2MDIgZjk5YTIzOTk4NzcwYmFiN2UyZjI1NjU2ZjdkMDA0YTY1YjkzOGI1MiBsZWdhY3ktdHJ1bmsKKzQ2MDMgNjA2MGQ3ZmIwN2UzNDI0NWU5NzMwYmZmZDg2MjEwN2U4ODRmNGEzNCBsZWdhY3ktdHJ1bmsKKzQ2MDQgNDQ4NDM1YmZlYWRjMGQ0NmNmNTVjNjhjOTJmNTAzZjZkOWNmNjgxMSBsZWdhY3ktdHJ1bmsKKzQ2MDUgNWZkODUyNGRkMDNhMjEwYTkzNzhiNmIzMmFjZTE3M2I4ZjAwMWM4NyBsZWdhY3ktdHJ1bmsKKzQ2MDYgMWE1MjM1MWEwMGIyNmNkMDU5YTZiYzllMmQ5NTE4ZTc2OWExZjFkYSBsZWdhY3ktdHJ1bmsKKzQ2MDcgZTU0Yjg2NTRmOTM4NGYxMjI3YmEyMTk3ZmViNWZlMTYxMWFkZGVjOCBsZWdhY3ktdHJ1bmsKKzQ2MDggMDcyOGZlYjFkMDMxYjQ4ODQyYjcxOTgzNzBhZjJjNzg2ODhhZjU0MiBsZWdhY3ktdHJ1bmsKKzQ2MDkgODQ5NzFkMDE1OTY1ZThlOGYyZjQxZjQ0NTkzZjIzMmY2OGQ2YTU0NyBsZWdhY3ktdHJ1bmsKKzQ2MTAgY2ZiYWI3OWE3OTlmNDY1MzU1MjI3MWRhNTAyMGJlMjIyMDUxNjM4NyBsZWdhY3ktdHJ1bmsKKzQ2MTEgMWUwODM4YmI4ZjIyMDhlMjkyYjMwMDM0MTYyM2VmODMyYmMyMDlmOCBsZWdhY3ktdHJ1bmsKKzQ2MTIgMjk3MjBjNWQ5ZTdlYzQyMjFmYzg3ZjFiMjIyZjgwNTMxOWJmZDcwNCBsZWdhY3ktdHJ1bmsKKzQ2MTMgYTYxOWE2MWFhZDFlYmI4Yzg4MDI0MWZjMmNlZDBmMWUwNjJjMDIyZCBsZWdhY3ktdHJ1bmsKKzQ2MTQgODk5YjRlM2RmZDRjZmY5OWNhNDBlZDcyYzA3NTM4NDUwMjQxNmUxZiBsZWdhY3ktdHJ1bmsKKzQ2MTUgZjA2MjIyZTA3Y2E3NTUzNzk1ODM2ZjdlOTQ0NDcxODVhNjkxNTg3YSBsZWdhY3ktdHJ1bmsKKzQ2MTYgYzlhZWEzNGFlNGI2OTk3MTRhZTgxM2U0NzVmNDg3NGUyYzFkYmJjMiBsZWdhY3ktdHJ1bmsKKzQ2MTcgZWUwYjNjYjM3YWY4OGNjNGM5MzY3MGExNmQxOWE4ZTNjMzhiOTgyYSBsZWdhY3ktdHJ1bmsKKzQ2MTggNDU5YmY3ZDA0ZTA1YmViODI5ZTJkNGQwMjViN2RhZjgzYzk2YjAzYyBsZWdhY3ktdHJ1bmsKKzQ2MTkgZjQ5YjYzNzI0OTJmMjhiYjczYjQxNTM3NmQ3ZTNiNGQyMWI4NDAwZCBsZWdhY3ktdHJ1bmsKKzQ2MjAgN2E2YjU3ZmViYWM0NmMxMDYyMWNkY2RkNzMzOTIxOGQ0YzliYmJmZSBsZWdhY3ktdHJ1bmsKKzQ2MjEgZDkwYzkxNGM1NzdkMjBiNDIxZjEwZTcyYTkwNzM5NWU1OGIzOTZkZSBsZWdhY3ktdHJ1bmsKKzQ2MjIgOWE5ZjNmNWQ2Zjg2MDMyMjEyZjAwNzNhNTI5OTBkOWYxZTE4MDQwYyBsZWdhY3ktdHJ1bmsKKzQ2MjMgOTJjZDg1NDcwYTc2OWRmNTc3ZDgwY2E2MjRlNmEwNzU4ZGVkMTA1OSBsZWdhY3ktdHJ1bmsKKzQ2MjMgYjQ1YzY4ODc1NmQwNGZiODRkNGEwZDUxOGZjM2Q3ZTNjYjI1ZmE4ZCBsZWdhY3ktdHJ1bmsKKzQ2MjUgN2ZmNmQ5OTlmMDU5YTA4YzhjODJiODNjMDUyZDUxNGY2Y2JlNjUxOCBsZWdhY3ktdHJ1bmsKKzQ2MjYgOGFkY2I4MDhkOGRkZDg0Mjk1NTQ4MWZkYzI3ZmY2MjIxZWVmMmQ2MSBsZWdhY3ktdHJ1bmsKKzQ2MjcgNmYzNWExYWQxYWNjODMzNTkwZjk4MjU3N2M1MGViZDYwYmFlOWRiNiBsZWdhY3ktdHJ1bmsKKzQ2MjggNWVlZDgzMjE2ZTZjNTViODU2OGE5OWY1NjQ3Y2FjOTBlMWQ5MTIxMCBsZWdhY3ktdHJ1bmsKKzQ2MjkgMDQ0NTcyNWZlNWRlNGNhZWFiZjQ5MzhkNTRmZmMwNmYwMTBkNjc4YyBsZWdhY3ktdHJ1bmsKKzQ2MzAgMWU5ZTc0OTQ0YmI1MWY0OGY4NjI5MTliYTY4OTBjMTI3MWJjZDY2MCBsZWdhY3ktdHJ1bmsKKzQ2MzEgOWY1MDBhMzRjMzU1NDE4MTFjNTY0YTg5MmVkMjZmNzg2ZGRmNDdjZiBsZWdhY3ktdHJ1bmsKKzQ2MzIgNjVkODdmMDZmMDhmYzMwYjgzYWMwYTM3MTA0ZDY2YjBjNDA0Njk0OCBsZWdhY3ktdHJ1bmsKKzQ2MzMgOGRhMDNkZWNlZjU5M2RkZTBlNDRhYjEyN2E2YzNhNGNjZGMwYjk0OCBsZWdhY3ktdHJ1bmsKKzQ2MzQgOWI0NTFjODRhN2JmOTMwMTEwMTI2Mjg1OTRmMmE3YjQ0YTZmMjA3OSBsZWdhY3ktdHJ1bmsKKzQ2MzUgMDA0ODAyNGI3ZWY4NGNkOWMwMGU1NzhkOTc2MjBjMTUxNTllYzI1ZCBsZWdhY3ktdHJ1bmsKKzQ2MzYgZGZhYmIxM2JjZTcwZmMxODFiMjZjMDJiNDE5Y2ZhMDU1MDk5MTg4MiBsZWdhY3ktdHJ1bmsKKzQ2MzcgNjJiZGRlZDVmMDBhMjMxNTFjNDgzOTZmMjA3MWQ1MjE1YjdhYzRjNSBsZWdhY3ktdHJ1bmsKKzQ2MzggODdmNGQ2ZDJlOWM4OWE4NGU5OTAyMTZjYTY1NzViODgxNWY5MjczZSBsZWdhY3ktdHJ1bmsKKzQ2MzkgOWM4YjQzMjM4MDhiYzBmOTkxMzNkOWIyN2UyYjE0NWU5NzljZDEyMyBsZWdhY3ktdHJ1bmsKKzQ2NDAgOTVjYjUyYjg1Zjc4NjdmYjQ3YzY4Nzk5NDI0NWJjN2M1ZDViOWE1MiBsZWdhY3ktdHJ1bmsKKzQ2NDEgOTY4ZTI0ODRkOTRkYTM4MmQ0OWM3MzNjMDNjNGUyOTkzZDExNzQ0NSBsZWdhY3ktdHJ1bmsKKzQ2NDIgNjQ2MWZmMGM0YmVlNmYzMDU2MmExNTQ4MzM4N2M1ZGUxNzZjNWYxOSBsZWdhY3ktdHJ1bmsKKzQ2NDMgZDU5NTY4MzgxNDQ3ZDBlMzI5OTVmNzVhNzNkMjBhMjg1ODhkODM0YiBsZWdhY3ktdHJ1bmsKKzQ2NDQgYjQwZTEwYmRhMjMxOTFkMmQ3NmI3ODgzNDZkNGQxMjJhNDg2YjA2MiBsZWdhY3ktdHJ1bmsKKzQ2NDUgZjQ4OTUxZGFiYTRmZmMzZTc1NjI1ZjM0YTRkZjNlNjNhYWZlZWJlYSBsZWdhY3ktdHJ1bmsKKzQ2NDYgZjc4ZmJjY2FmNThjYzY2ZDFiODA2NjM1MTkyYjUxZWIyNjA3MmVlMSBsZWdhY3ktdHJ1bmsKKzQ2NDcgMWMwMTJkODJhOTc1OGMyMmIzNzQ1Nzk3Yjc0ZWZkYTk2ZThiMTMyNCBsZWdhY3ktdHJ1bmsKKzQ2NDggOGU0NzZjYTNhN2EzZjJmYWY2ZjFmNjUxN2Q2YmJiODg3NDA2OTY0NyBsZWdhY3ktdHJ1bmsKKzQ2NDkgY2NjMjc5ZmY5MzVkMGY1NGE2YmM5ODE1ZmUxNTEyZDUwNTI1MmJlNyBsZWdhY3ktdHJ1bmsKKzQ2NTAgNWU1NjhiYWNmYmU5OWJhNjJhODJhMzhhYzUyNzQyNWJjZjc4MmRmYyBsZWdhY3ktdHJ1bmsKKzQ2NTEgOTFhNDNlYTExYmEzNTk0YzkwMmMxZWJlNjU2NGIxMDI2MTBhZTk4YyBsZWdhY3ktdHJ1bmsKKzQ2NTIgMjc1NTdlNzBhOGYwMjliY2Q3OTNiNzJjNmFhMDk3ZDMyZTA4MjMyMSBsZWdhY3ktdHJ1bmsKKzQ2NTMgZjQ2NzFiNjgxYWI5OGU3NjIwZmQ5NzI5YzQzNjE4MGU3MDljNDYwOCBsZWdhY3ktdHJ1bmsKKzQ2NTQgNWFlOTIyY2ZlNDA0OTM0N2JiMDc0MDNkMDBlNTZkYmVhYmRmZDE4ZSBsZWdhY3ktdHJ1bmsKKzQ2NTUgOGYxZGFmZmU3OTliY2YzNGUwN2FmYmM5OGQxMzc3MDg4MzQ2ZjRjYiBsZWdhY3ktdHJ1bmsKKzQ2NTYgOTg5NGU1NTQ2OGVjNjBmNzVhMmFmMDA2MzNkZjgzNDAwMzQ5NDU4ZCBsZWdhY3ktdHJ1bmsKKzQ2NTcgY2RiMzczZjY1YmYzODBkYmQyOTQ3MmQ3ODgxNGIyZTAwZTAwY2I0ZSBsZWdhY3ktdHJ1bmsKKzQ2NTggMDJkZDYzZDNmZTliMzEzNzBlZTU3MzY2NGJlMmEyMTE5NWE0NDQ1ZiBsZWdhY3ktdHJ1bmsKKzQ2NTkgNTI3ODg5YWU4NDUwMzkwOTc3ZDNlODk1MjFiNGMyZGNlYjkxMzQxNSBsZWdhY3ktdHJ1bmsKKzQ2NjAgMGUzMDI3NzFlZTVhMmJmYzdiZWUxOWMyODdmY2Y5YjNmODM2MjViZiBsZWdhY3ktdHJ1bmsKKzQ2NjEgMzNlYTljYzdkN2JhZTcyM2M4N2EyNzIyNmQ4MjM0MDNjNDg0YTg5MSBsZWdhY3ktdHJ1bmsKKzQ2NjIgYzY4YTAxMTNiNzVhMjdmZWEzM2JkMzY0MGNmYzUyMGYxYTUyYWQ3ZiBsZWdhY3ktdHJ1bmsKKzQ2NjMgNDA1M2Q0Y2I1MGUwZDcwMTc0NmE3NTc0OWE2N2NhMDhiN2NmMDI4OCBsZWdhY3ktdHJ1bmsKKzQ2NjQgZTczNGM3MjM1NzI3ZTc0YjU0YWQ3OWIzMGNmY2VmMmQzNWMyNDEwYyBsZWdhY3ktdHJ1bmsKKzQ2NjUgZWIzZTYxZGIwZGRhOWM1YWY0NTU4OWNhMjIxZTM4MWU2YjE1ZjNjNyBsZWdhY3ktdHJ1bmsKKzQ2NjYgNjRlYjQ4N2NhNDY1ZDZiNmEyODYwNWU5OThjODc1MWNhYTE3NzFkZiBsZWdhY3ktdHJ1bmsKKzQ2NjcgOTM5NzkxZjIxOWE2M2VkODU2MWVjNmJiNzU2YzRlNzdmNGU5YWY1OSBsZWdhY3ktdHJ1bmsKKzQ2NjggMjcyMjI5MzQ4ZmUyYjc3YTE1YzRlMzE3NWE3NTY5MTQxZWVkODE1YSBsZWdhY3ktdHJ1bmsKKzQ2NjkgYTNiZDYxNjMyZjE0NWVkOTg4YTFjMmFiN2Q1OWEwYzUwNGM3OTc1ZCBsZWdhY3ktdHJ1bmsKKzQ2NzAgYWJlZDM2OGQ2OGVmMTg5MGM2NzI1Y2Q5MWViOWYxZjJkMmVlZmYxOSBsZWdhY3ktdHJ1bmsKKzQ2NzEgNzZkNDNjMDMzODQ4MTBiNTI3MTJhYmVkYzZiNTllYTcxZjljZDE5NyBsZWdhY3ktdHJ1bmsKKzQ2NzIgY2ZlYWE1MDgyYmE4MzFiNjIxYTAzNGI3NzI5M2I4NGViN2MzMjI4ZiBsZWdhY3ktdHJ1bmsKKzQ2NzMgMDYxMjEzMmUwMDE4NTdlZTRhOGM0ZWEwZjkxZjM1NmM0YzMxNmVjNSBsZWdhY3ktdHJ1bmsKKzQ2NzQgOWJjM2E1YmFhNjgwZTM4ZDQwNWNjYzcxOThlOGQ0ODJlNmQwNTkzNiBsZWdhY3ktdHJ1bmsKKzQ2NzUgNzRhMGE2MTIxYWY3MWI2YWM3MzQ5NjVhZGNiZGE3MDVjOGY4YTE4ZSBsZWdhY3ktdHJ1bmsKKzQ2NzYgYmJiNTZkYzNiNTI2YjU1MmI1M2Y2OWU3MmNiMmRjMDNjNzBmZmJkOCBsZWdhY3ktdHJ1bmsKKzQ2NzcgYWEzMzY1ODE1YzIwZDc1YjIwMTMyM2VlNjRlMjEwNzM0ZmY1ZDdiNCBsZWdhY3ktdHJ1bmsKKzQ2NzggMzI0MzVkMzNmMzRhNmY0NGM4ZWNmYjU0MDhkNGEyMzhkNjg2N2U5YiBsZWdhY3ktdHJ1bmsKKzQ2NzkgNDk3MTk3ZjM1NzNjMTBiOTRlM2UxMDhjNmU5Y2NkZmUyNTE4NzNkZSBsZWdhY3ktdHJ1bmsKKzQ2ODAgYzJkMThiNTgyMzJlZGVmMTY1YjMxNTBlNjIwMzQwOTk1OTAyNjJhMyBsZWdhY3ktdHJ1bmsKKzQ2ODEgZTUzZDAxOWU3ZDQ3NjEyZDJlNjQ2ZmY3ODNmNTg5OGJkNGZiNjRjZSBsZWdhY3ktdHJ1bmsKKzQ2ODIgOTU4OGMyMzhlNjYwOWMxMzEyNDEyYjViMjEzZGFmYTYzZmNhMGJhMCBsZWdhY3ktdHJ1bmsKKzQ2ODMgNGJjZjFiOTZlZmVjNGYxMTZiMzMwOTQwZjM3MTNhMmZjOTc2Mjg4MiBsZWdhY3ktdHJ1bmsKKzQ2ODQgOTJlNmY1ZDhiZTgyYWI5MTQ0OGJjNjczZmQ0ZThmZjRkNzU2YzU4ZCBsZWdhY3ktdHJ1bmsKKzQ2ODUgMWU4YjM0N2EwNTZjZjM2NjZlZmU1MzE0NmFlMzcyODNkYzg3MjRhZiBsZWdhY3ktdHJ1bmsKKzQ2ODYgOGQ1ZTM2YjM3YTQxMzIyOWZhOTFlMTE3ZDc4YTFmNWU0NzhhOTcyNSBsZWdhY3ktdHJ1bmsKKzQ2ODcgMDEwMzc1MzJjMDg2MGExYmM5OTQxMTM3YTI0ZDlkN2NmZTNiYjJiOCBsZWdhY3ktdHJ1bmsKKzQ2ODggN2I2NTQwNDk2ZjU1NGJiNmU1NzRmMWEzMmU2NTAwZmI2ZWRjMGIzMyBsZWdhY3ktdHJ1bmsKKzQ2ODkgMDFlZDRjZDIxNTc2Y2JiNDUwYzhiODE2ZWY3MTBjZWE3ZDQ0ZmNiNiBsZWdhY3ktdHJ1bmsKKzQ2OTAgMWI2NjI0OTc0MjZiNTNhMTBlMmU4OGYwMDgzODg2OWNkZDY1M2NmMyBsZWdhY3ktdHJ1bmsKKzQ2OTEgMGIwYjE4ZDY1NWQyZTljMDVlNGU1N2ZlMmNmZjhkNmE4MWUyMWM1NiBsZWdhY3ktdHJ1bmsKKzQ2OTIgYjVkY2JhN2I3MzJkMDNiMGRiZGMwMDA1MWNiODAxZTc3ZjEzZTcwNSBsZWdhY3ktdHJ1bmsKKzQ2OTMgNDQyYmFlOGZjZmRjNjUxNGYxOWQxYWNmZjhiYTYxMTE1ZGYyZmIwOCBsZWdhY3ktdHJ1bmsKKzQ2OTQgOTRiODQ1MzVjMzRlMTFkOGVhMjViYWJkYmMwYmNiYmUxNDYxYzU4NyBsZWdhY3ktdHJ1bmsKKzQ2OTUgZmVmYWUzN2MwNTNjZmQzYmNlZjNkOTM5YThmM2ZkNzU2Yjc4YThiOCBsZWdhY3ktdHJ1bmsKKzQ2OTYgZDNiNWJlMGM4NzJmMzNiMWVlOTEwODYzNDRhZDJjNzBjNjIwMjFhYiBsZWdhY3ktdHJ1bmsKKzQ2OTcgMjgzYThlYjJlMzE3Y2I3ZDdiMTE1YWM4YjA0YTJmZmU5ZjYzNGJlZiBsZWdhY3ktdHJ1bmsKKzQ2OTggNzJlMDVjNjFjMmZlNTkzMzc3ZWE3M2NiOGViNGI1Yzg3YjIwNjI1NiBsZWdhY3ktdHJ1bmsKKzQ2OTkgN2ZhNDhhYjRiZTBmNGJjM2Y1MTNhNTA4NGMxOWI2ZmYzYTAyZjYwMCBsZWdhY3ktdHJ1bmsKKzQ3MDAgMWFiMzViNmY2MzhhMjY2YjcxNzY3NzVmNDQwOGNkM2U5ZGI2YWJjNSBsZWdhY3ktdHJ1bmsKKzQ3MDEgOGFkMTM2MzI4N2FhOGJjOTgzNWQyYjQ1MTI5OTU2NmY0NTJiMTNjMyBsZWdhY3ktdHJ1bmsKKzQ3MDIgNDM4ZjUzZTdjZmQxNGU5NWVhNzJkODlkMGM3YmM0OWY1YTU5YzIwOCBsZWdhY3ktdHJ1bmsKKzQ3MDMgYTc2YTc5Zjg5NmNmNWZlMjExM2JiOWY2NmFjNGRkNjAyMmQ1M2Q3MSBsZWdhY3ktdHJ1bmsKKzQ3MDQgM2JlZjFhZmY4NzFiYzM0OTIwNzA4NTk3NDUxNWEzNTZkMWQ1N2MwNSBsZWdhY3ktdHJ1bmsKKzQ3MDUgZTBhMzI0MmQ1YWU3OWQxNjIwYTIyNjI0MmE4YjNjYWExMzk0ZWI5MyBsZWdhY3ktdHJ1bmsKKzQ3MDYgZTlkMTFmOWI4MmUyYjU4MWE5NmI3MzI1ZTIzY2ZkMDc3YTM4OTQ5MyBsZWdhY3ktdHJ1bmsKKzQ3MDcgYzIzZDA5MjIxNWQyYzNlNWY4MDMyMjIyMjVkZjcxYTZjM2E3NjY3NCBsZWdhY3ktdHJ1bmsKKzQ3MDggNjdlOGVmNjk4YTQyZmYyNzIwYWY3ODE1MGVjZDk3ZDBjMzM0OGQyMCBsZWdhY3ktdHJ1bmsKKzQ3MDkgMzgyZWRlZjJkNmQ3MGQzN2MzNDI4OWU4Yjc0MTEzODI3ZjI2YjhlOCBsZWdhY3ktdHJ1bmsKKzQ3MTAgZDA5MWIyNDZhM2E3YTViYjJjMTQxNWRmYTIxM2NmMTlmZTY0ZjY1YiBsZWdhY3ktdHJ1bmsKKzQ3MTEgZWU0Yzk1NGNkNWRmNTJlOWM0MDczOTdkNGRiY2QxY2ExMDQyNDQzNSBsZWdhY3ktdHJ1bmsKKzQ3MTIgYjFhNmE4MWFmMWNmZjQ3ZDM5YTUwNDhhMThjYTk4MTU1OGY1NzI3NCBsZWdhY3ktdHJ1bmsKKzQ3MTMgODNkMDY0MDRmNmUxMTQ0MmNkMzEwZTY5Y2FiYWZlN2E3ZjI2MGFiYSBsZWdhY3ktdHJ1bmsKKzQ3MTQgYTgxYjZkYjZkMzNjOTRlOGQwOTQ4NjlhMjExMWI4NzA4OThiNzIwMCBsZWdhY3ktdHJ1bmsKKzQ3MTUgNjQ1ZTk2MzQzZjg5ZmVmOGRiOThmNTNkNmE4OGYzNzRmZjBkNWM3YyBsZWdhY3ktdHJ1bmsKKzQ3MTYgMDNiZDc5NDMyZjA2OWM2MzJhZTVhZTg0MjFmNzI0YzEzZWY3MWRhMCBsZWdhY3ktdHJ1bmsKKzQ3MTcgNzg5NWE5NzMxM2U1ZjRjZmFkMjRjNWE2YmE1NmU4NDY0NTM5ZTIwZSBsZWdhY3ktdHJ1bmsKKzQ3MTggODVhYTJlNGQwMTIzYzUzYzVlNjhlODM0YTQ2ZmM3MGI4NTE5NWFjYSBsZWdhY3ktdHJ1bmsKKzQ3MTkgNGJjYzkyOTE2ZmFiYjJmNmM1MWU0ZTExNTE4ZjY2N2VkYWY3ZWNmOSBsZWdhY3ktdHJ1bmsKKzQ3MjAgM2E4M2MzY2VmNGIyYjVjODRhOTM2N2ZlMmZiMDBkMzZiOTQzMWVhNSBsZWdhY3ktdHJ1bmsKKzQ3MjEgNzQxMWI2YTA2OTIwY2Q2ZDRiZTIxMDZkYWYxNGZjMjM4NWQzYmM4MCBsZWdhY3ktdHJ1bmsKKzQ3MjIgYWM2ZjY5YjFlOTkzMDcxNjIwM2E3YTU0YTEyNmZiOGU3ODYyMDVlYiBsZWdhY3ktdHJ1bmsKKzQ3MjMgYThjNmRhM2JkMzA1NmRkNTZmOWZlMDM4Y2NjMTRiMzhkNWFiMTliNCBsZWdhY3ktdHJ1bmsKKzQ3MjQgM2E2NThlZWMxZjAyZTE0ODVlNjgzM2Q2ZjBlYmQxYzhiN2RhYTZlMSBsZWdhY3ktdHJ1bmsKKzQ3MjUgOGExMjQ0ZTdjYjNiZDJhNDgzY2YzZjY5YTUwZjBlYzNiODQ3MzMyMyBsZWdhY3ktdHJ1bmsKKzQ3MjYgNThhYTdmM2IxNjkyYmY1Nzk4Y2VhMTY2ZGUzMjAxOWRhZjhjM2JhYyBsZWdhY3ktdHJ1bmsKKzQ3MjcgMDc2NWQwYmQ4OGQ2ZGE1YWZmMDQxODY3MjQyNDBmMzM2NDg4NDQ1MiBsZWdhY3ktdHJ1bmsKKzQ3MjggOTA4ODBiZDA5MjIxZGVjZDNhYmM4ZmY1M2U3Y2ZmZjYzOTg3MmY4OCBsZWdhY3ktdHJ1bmsKKzQ3MjkgZTViOWY2NDQwNTNlOWUwYzRjZDFiZGQ5MTAzOWVlOTY5OTcxOTQxOSBsZWdhY3ktdHJ1bmsKKzQ3MzAgNjZkNmQxM2RmNGY4YTk4MjA0ZWM0YmE0M2JkYjRiMzM3MzJlZTc1NyBsZWdhY3ktdHJ1bmsKKzQ3MzEgZGY3ZTI2YjVjOTE4OWJhNDNhMGEwZGY0MmQ4MjNiNGE5MGVkOWJmOSBsZWdhY3ktdHJ1bmsKKzQ3MzIgNjU2NDQ3NjYxNThhZThlNGNhOTczMmE1NzMyNjk2ZjUzYjViNmYyYSBsZWdhY3ktdHJ1bmsKKzQ3MzMgNjE4NzAxY2RmNjAwMDEwNjAyZDlkYmE2OTQyNjdhM2QyNWJhNTZmMiBsZWdhY3ktdHJ1bmsKKzQ3MzQgNjUwY2I2N2Q3NjU5ODQyZGVlOGRjYTk5YmM1NTVmZmE5NTcyNWViYSBsZWdhY3ktdHJ1bmsKKzQ3MzUgZWVhYWY4NzVmN2I2ODEzOTczZWU3ZGMwZjFkZjc1MzYzZjJkODZiMiBsZWdhY3ktdHJ1bmsKKzQ3MzYgYjAzNGI0ZWEyYjM5OTAyNmViY2ViNTRkYjk5MmJiMWRmMDhhYTBjYyBsZWdhY3ktdHJ1bmsKKzQ3MzcgNzg1OWQzYWFiMWI0MDUxOWQ4OTEzYWIyMjI3NTJmMWQ1NGU2YzJkZCBsZWdhY3ktdHJ1bmsKKzQ3MzggNzFjMTFhNmU0YmMwMGYyYjc5YzIxOWExMDZiMjE0ODA1NDcxODA0OCBsZWdhY3ktdHJ1bmsKKzQ3MzkgNWU2YzBjZGFhN2MxYmJjY2RjMmQ2ZDYxMDJlOTBmMjg5MWMwZjJiZiBsZWdhY3ktdHJ1bmsKKzQ3NDAgNTU0NmY0YTZlM2MzNGZkMmUzMTk3ZjU3YmNmMjJlMjYwMjgxMjRhMSBsZWdhY3ktdHJ1bmsKKzQ3NDEgNTQwZjg0NDRlZjhhODczMDA5MzQxN2NkZWFmM2MyYWY4Nzk1NmQ0OCBsZWdhY3ktdHJ1bmsKKzQ3NDIgYjRjYWFjMTQyOGQwZGE3ZWYwOTk5MDIwYTcwMGVlZGUyOWU1Y2ZlZiBsZWdhY3ktdHJ1bmsKKzQ3NDMgMzE5NWRiNjY4OWZkNjEzZWVhYjE2YjY4YjZlZDA4MWQxODQ2OGQxYSBsZWdhY3ktdHJ1bmsKKzQ3NDQgZjVhNmU2ZWU1MjljMDdiYTc1YzU2ODRkMDU1YzM2ZjVjZmRkYmQ5OCBsZWdhY3ktdHJ1bmsKKzQ3NDUgYWM4YTIyNWIwNTFiNzU3NzIyMTdiNGYwZTQ5MzFlMDM1ODZmN2IyYSBsZWdhY3ktdHJ1bmsKKzQ3NDYgMDFhOTU0MTI0NTc3MjRmYmQyMWFhNzAxNjg2OThmMDE2MzYxMjE4NSBsZWdhY3ktdHJ1bmsKKzQ3NDcgYTI0MTQ2MjQxOTkxM2I3ODUxYTA3ZWE1NzhiMTNhOWY4NWRhM2JiMiBsZWdhY3ktdHJ1bmsKKzQ3NDggNjI2M2UyZmQ5Mzk4ODgxMzk4ODE1NGYzYmIxNGZlN2JmOGYyYWEzMSBsZWdhY3ktdHJ1bmsKKzQ3NDkgM2Q2YzlhNDdlYTQ0NWE1M2ZiMjM3MWI2ZGIwMGY5NWQyZjkzMTVmNiBsZWdhY3ktdHJ1bmsKKzQ3NTAgZjE3ZDZlNmI0MGRhYjE0YzVhY2IxNTI5M2Y2OTgyNTQ3NGFhOGY1YSBsZWdhY3ktdHJ1bmsKKzQ3NTEgOTcxN2Y2YThmNWZhZmU5ZWJjZjJmNjhkZTc0Mjc4ZmYyZTA4NmUxOSBsZWdhY3ktdHJ1bmsKKzQ3NTIgZmU4ZGI3OGYzMTFjOTZjZWQ2OGNkODc5NTNmODZjZTM0ZTU1MGJiOSBsZWdhY3ktdHJ1bmsKKzQ3NTMgOTkwMDk5ZWQ3ODEwNTFkNTVlNGMwMmYxMzMxYWY0YTAyYzc2NWU0NyBsZWdhY3ktdHJ1bmsKKzQ3NTQgZDIwNDlhMWQzY2M1Y2YxY2QyYWU2NThjMWRlNDM5MmEyZTMzN2RhYyBsZWdhY3ktdHJ1bmsKKzQ3NTUgYWRhYjY2ZmFjMzBlOTdlYzc4NjZmZmUwM2UzNzAzMzU4ZWZlYWY2YSBsZWdhY3ktdHJ1bmsKKzQ3NTYgNmEwNDI1NmVhMDg3N2MwNzRkMmE5Mzg4YzQ2M2ZmM2M5MmVmMjhkYSBsZWdhY3ktdHJ1bmsKKzQ3NTcgNTA1ZmM0NzhmZjA4NTE0ZTUyM2RhNjE4ZDRmNTUzZTE5NzY4MWRiMSBsZWdhY3ktdHJ1bmsKKzQ3NTggMTcwYjk5ODYyZDA5NWQ5NjM4NTkzMWExYmIzZGZjMTQ1OWI4NGZlZCBsZWdhY3ktdHJ1bmsKKzQ3NTkgNjVhNjhjNTFlOWYyYTcwZmYzNmZmY2QwOTZlM2Q5MDNhZWNhZmQzNyBsZWdhY3ktdHJ1bmsKKzQ3NjAgMDhiNDU3ZDZiNTE2ZWRmNDU2ZmY3NjM2MDdhMjA0ODVhMGE3ZTRjZCBsZWdhY3ktdHJ1bmsKKzQ3NjEgNWFlZTJjNWQ4ZGZmY2FlYTNlODZhNzc4ZDA3YmZhYTRhNmJjNjlhYyBsZWdhY3ktdHJ1bmsKKzQ3NjIgMTRiMTI2ZDBiNWJlMzRiYzk3YjEyZDYyMjk4MDllZGVmYWRmMDM3NCBsZWdhY3ktdHJ1bmsKKzQ3NjMgNTZjYTY3ZGRlYzg1OGI1NmQwZjAwMTdmZjJiYzFmNmE0ODE5ODdkNyBsZWdhY3ktdHJ1bmsKKzQ3NjQgMDc5MTNmYjhmOTJmMDQ5OTM5MGI3YWIxMjkzN2QyMDVkNTM1OWM4NCBsZWdhY3ktdHJ1bmsKKzQ3NjUgZmM2ZTk2MjIxMDg4YjA4MjM1N2FkMDhiODc4MmM0Njc3YzA2YjllMiBsZWdhY3ktdHJ1bmsKKzQ3NjYgNDBhZWM0OGNkMWUyMTQ3ZDhmOWFmMDZiMWNiMGRkMDBmYWNlNDNiMyBsZWdhY3ktdHJ1bmsKKzQ3NjcgZmY3MmE1ZjlhNGVlMTI0YWEwZDg4YTkxMzBiZGI4NjU0OTZlODFmYyBsZWdhY3ktdHJ1bmsKKzQ3NjggNTE1ZTFkMDMzOTRhZDg2NjllYzRkOTk4Mzg0ZGYwNzkyNjA5NDc3MyBsZWdhY3ktdHJ1bmsKKzQ3NjkgMTQyNTYxNzUxNGFjY2Y4YWEzMGMxNWM1NTMwNTA2ZmU4ODIxZmUwZCBsZWdhY3ktdHJ1bmsKKzQ3NzAgZWQ4MjFhOTliYTM5MjM5NTA3YzAwY2E1ZDdkZTczNTg4YzBjNTEzMCBsZWdhY3ktdHJ1bmsKKzQ3NzEgMWNlMDdmNjQ4NjJlOWY1ZjgwYzY1NmU2OGYwMTU3YzYzZTg2ZWQ5NSBsZWdhY3ktdHJ1bmsKKzQ3NzIgOTllN2FjMjJiZDJlMmQ1MTg4YzBkZGMyMjgyMGQ2MTdhYWM2ZjA4MiBsZWdhY3ktdHJ1bmsKKzQ3NzMgMWU3MjA3MTI4MTY3ODhjNmNlZDhlOTU4Zjk3Nzc2NGU0NWE4YTNiYSBsZWdhY3ktdHJ1bmsKKzQ3NzQgNWY3MDU4ZDgxNmNmOTFmMjUzMzQwZDRkY2QwYmY2YjlkZjZjN2YzZCBsZWdhY3ktdHJ1bmsKKzQ3NzUgMzE2MWU3Y2YyMDU0ZjczNmY4YzI4YzE2Y2QzYjlhYzFkZmQ3ZDliOCBsZWdhY3ktdHJ1bmsKKzQ3NzYgZDNlMmY5ODhmMWFmMGUxNDgwNWM1NjE1ZmIzOGM0NDAxNTc5ZWQwYiBsZWdhY3ktdHJ1bmsKKzQ3NzcgM2RmZWY2N2UwZGVkOTBlN2QxMTI4YTNmYzJhMDI0MjBhNWFhMmYzMCBsZWdhY3ktdHJ1bmsKKzQ3NzggZmFhZWNlN2NjZDZlNzFiMTVkNDgwMzcyMDI1MjM4ZGI2MGE0YWNjMSBsZWdhY3ktdHJ1bmsKKzQ3NzkgN2JkZTRiMWRmNDk0MDk3ZjdhYTE5OTY1NzRiNjNlZmY4ODdlYmVkMCBsZWdhY3ktdHJ1bmsKKzQ3ODAgZThkMjA3NjU4YTA0NTJiMWQ1OTI3NzNkM2VlODRiNWMwOGFkYjZmOSBsZWdhY3ktdHJ1bmsKKzQ3ODEgNDNmOWU3NTQ5YzcwZTZlODM3ZDBlMGE2NjZhZDI0MDZmNGUzNmIzYiBsZWdhY3ktdHJ1bmsKKzQ3ODIgM2VkZWM4MjExYTM2YWQ1NzE5M2U5ZDg4MTlmNzU5MDAwZjJlMjlmZiBsZWdhY3ktdHJ1bmsKKzQ3ODMgMWIyNjJkMTkwYTRhNDgxMDk4M2NjM2Q2NjViNTU5NDQ5MzM5OWMxOSBsZWdhY3ktdHJ1bmsKKzQ3ODQgODQ1NjBmNGIyOWVmMDlhMjA5Y2RjYzc4OGQ0Zjk2NWYzZWFlMzcyMSBsZWdhY3ktdHJ1bmsKKzQ3ODUgMjQyZGQ1ZWQzYjA4NWVlZTJmNDI2NzJiYTY1MDQ5NTIyMjZhMjk5ZSBsZWdhY3ktdHJ1bmsKKzQ3ODYgMzJlN2QyNjk2ZDc5MWM2OWVjOTlhYjExMjU2MTdlOGY0Yzc4YWUyNiBsZWdhY3ktdHJ1bmsKKzQ3ODcgNjQ2OGZkMDI1MWQyOTY4ZTYzMTE4NmZhOTQ2YTUwNGE2MGFmZDM2YSBsZWdhY3ktdHJ1bmsKKzQ3ODggZDhiNGM3ZGI3N2FlNmJmZjhiMjVlYTI3OTgzYWEyNTA0Njk1NTIyZCBsZWdhY3ktdHJ1bmsKKzQ3ODkgZTExZTZiMzU4NTMxM2FhOTE5ZDdhNGUyZjgxMzQ1Nzk3ZmZmNjMzNSBsZWdhY3ktdHJ1bmsKKzQ3OTAgYjIyNDExNzdiY2NjNjI3NzMzMmU4YTVlOTU3ZjhjYjg3NmJmMzQwMyBqYXIKKzQ3ODkgOWU4MmRhZjc2MDViYWQ3OTc2YTlhYmM5OTdjYjVlMGFiZTQzNDA3OCBsZWdhY3ktdHJ1bmsKKzQ3OTIgNzFlNjA4NzFjNjgxY2U5MTQxOTc0ZWZhYzNlMGIzM2M5ZmUzMjg4YSBsZWdhY3ktdHJ1bmsKKzQ3OTMgNGMyZjE0NTIxMjVkNTlkMDc1YzZmZTdkYWY5MDE0Y2JkZjE3OGYzNiBsZWdhY3ktdHJ1bmsKKzQ3OTQgNDEyNzg5M2E4N2FkMDVhMDIyZWU3MGI1OGFkODFjNjM3ZmJmOWU2NSBsZWdhY3ktdHJ1bmsKKzQ3OTUgMjFmMGQ1ZjE4Y2RhZTYxMDhmNWZjNWZkMjU0NTE5ODJkNjAxOWY5ZiBsZWdhY3ktdHJ1bmsKKzQ3OTYgNjNmYTM4N2MwMmZlYmNiMDhiMDU0YTBlZTIwMzNlYjAzYTg3NzA2NSBsZWdhY3ktdHJ1bmsKKzQ3OTcgNjcwZTUwYWUzODlkNTRjYzMyMTAxY2ZiNGQ1YWQ2OGY2MDhmMDU1NiBsZWdhY3ktdHJ1bmsKKzQ3OTggNGI2MTdmZWU0MjdkMzYzOGM4N2MwZDYyZDhjOWY1MzNiMzhiOWI3NyBsZWdhY3ktdHJ1bmsKKzQ3OTkgZWQwYWE0YTVkMTA2YjljMmI3YjJlZDNkODUwZTQ4NGJkNzA2ODQ2MyBqYXIKKzQ4MDAgMjc5ZDUxYTE4YWU0YjRlOGRjZjAwNzc2MGE5Nzc4ZDhiZmVmODhiMyBsZWdhY3ktdHJ1bmsKKzQ4MDEgOTU1MmVkYjRlYWJmYWMzNDFhNmQzZTRmMTAxM2ZhOTQ4YzAxNzcwZiBsZWdhY3ktdHJ1bmsKKzQ4MDIgZjA5ZDMyNTJhMzhiMjEzZWVlZDJjNzc2YTE4YmYyN2EyMjYzODNmOCBsZWdhY3ktdHJ1bmsKKzQ4MDMgZDA1Njg1OTkzNDc2ZDRjYjcwZjViMzRhZGRmMTExODAxMGYzOWYwNiBsZWdhY3ktdHJ1bmsKKzQ4MDQgZWQ0ODY0NjFkZWY2NzZmMDYxOTlhY2FmYmFkYmZjYzFkZWExYWU3MyBsZWdhY3ktdHJ1bmsKKzQ4MDUgZDY1YzQ4NWUwYWQ4MjM2MDAzN2Y4YWI1NmM0Mzg5OTFlNWRkYWQ4NiBsZWdhY3ktdHJ1bmsKKzQ4MDYgYTIwNTQ5MzM3NzViMDAxNGQ2MDVmZGUzZjdmMTRhODVlZTM4MTNmZSBsZWdhY3ktdHJ1bmsKKzQ4MDcgODVmYTAyYjg1ZDdkMTMwYTE0YTkxZDZiYzJlNWY1YzRlNTYwMWUwMCBsZWdhY3ktdHJ1bmsKKzQ4MDggMjZiMWIxNWZjOGVjMzc1NmE1NjNlNGU3MWU3YmJjN2E4MWVhNGZiYyBsZWdhY3ktdHJ1bmsKKzQ4MDkgOGE4NzY1MzQzY2MwZDQ1NWEwNjE4ODJlNTdjYThhMTQyZDlmYjIyYyBsZWdhY3ktdHJ1bmsKKzQ4MTAgZmJhZjU0MTY5NzExNzNiMzY2MDZkZTRlNWM1OWE3NWJmNTY5MDJlZSBsZWdhY3ktdHJ1bmsKKzQ4MTEgZGY1YjcyOGI4ZWI2MmVlNzk4NjA3YmEzODY1MGE2MTNkOGNlYTU4MSBsZWdhY3ktdHJ1bmsKKzQ4MTIgNmE5NDExOTg0NGViMzgyMGU0NGZjMzM2OTQwOWZjYzliYWM3Mzk5NyBsZWdhY3ktdHJ1bmsKKzQ4MTMgMTc0MGZkNzZmYzMzMmZiYzQ3OTVlMWZjODNmZGRkMDczZDU0OTE2ZSBsZWdhY3ktdHJ1bmsKKzQ4MTQgNGM0M2NiZGNkNTI0M2Q5OWNjMjUxMWUyOTRmYjlkZmNiYzI1NWQwMyBsZWdhY3ktdHJ1bmsKKzQ4MTUgOTE2YThmZjM2YTg1NDcwYmZhNmEwYzdhMDE1NjNjMDYwZjllNjQ3MiBsZWdhY3ktdHJ1bmsKKzQ4MTYgN2ZkNzQxMmU3MTg4NDhlMGYzMzMzYzJiNDZkNjE4MjQ5Yjk3ZTA2ZSBsZWdhY3ktdHJ1bmsKKzQ4MTcgZTgwYWNmYTEzYWMwMDA0NDk3ZDZiMzFlNGE1ZGE1ODIwZDJkODZjMSBsZWdhY3ktdHJ1bmsKKzQ4MTggNzQ3ZjBiN2NiN2JlNDM0Y2I5NjVlY2QxNGY1MmM0Zjk3NWYzNjEzNCBsZWdhY3ktdHJ1bmsKKzQ4MTkgMjFhMjNjZmM0ODQzMWFlOTFjYTAxM2UwMGVhMTFjMDEyMzM1MDNiZSBsZWdhY3ktdHJ1bmsKKzQ4MjAgOTY3NDdjNzg3YTgzM2MzMTkwZDNkM2MyMDE5NGFiMzJiYThlZWIxYiBsZWdhY3ktdHJ1bmsKKzQ4MjEgOGNmNjNjMzBmZmM4NzdlYzBhZDk0NjAwY2MxNDIxOTI1NjYzYTg2MSBsZWdhY3ktdHJ1bmsKKzQ4MjIgOTRiZjJmMDVkYTMxOWU2Y2UzNWUzM2Y3YWE5N2EzN2NmMjg0YjNiMiBsZWdhY3ktdHJ1bmsKKzQ4MjMgOTE1ZmFiZWM2NGEzMGFkNzMzYjEyOTAyM2EyZjA3MjdkNjNjZjI5ZiBsZWdhY3ktdHJ1bmsKKzQ4MjQgNjYzYWEwNTllMjlmZWM2NmYwMzM4MTk4ZmMzMjZkOWJiMTAzMjBlOCBsZWdhY3ktdHJ1bmsKKzQ4MjUgYmExYjc2YzA5MDQxNGEzZWM4MDY4YjU3MTVkOTQ2ZWExMzJlNmNjMyBsZWdhY3ktdHJ1bmsKKzQ4MjYgZTM4NjAzNWY4OTdkZmQ5MWFjNjM1OTYyNjU0Y2RmM2NiODYxNjU0NiBsZWdhY3ktdHJ1bmsKKzQ4MjcgMDRmNjFhNWE3NjU0MDljNGQ1MGFmNzQyMGI5MzU3NGFiMGM3MmJjZiBsZWdhY3ktdHJ1bmsKKzQ4MjggMGM4MzVjODA0MzIyNGNmNTkwNTUzMjc0NzE3ZWU0ZjI4MTcwMGMzYiBsZWdhY3ktdHJ1bmsKKzQ4MjkgNTgyYjAwZmJhYjE2MTQ1MjNmOGQ0ZjQzMjMyNzA2MGJlZjQzNTI5OSBsZWdhY3ktdHJ1bmsKKzQ4MzAgMzk3NDc4YmNhMGM0ZGFjMWRjMDNlMDJkNGQzYjQ2OWUyMGU3YzhlOSBsZWdhY3ktdHJ1bmsKKzQ4MzEgNTFjODgyNDk4NWY4YTUwODUwYWQwZWViNmVhZGUxYTczYmQ5Njc1ZCBsZWdhY3ktdHJ1bmsKKzQ4MzIgYzMxZWFlZDc3OThiYmE0MWYzMTRkMzhlNjkzYTc0ZjllNjhhMzVmNCBsZWdhY3ktdHJ1bmsKKzQ4MzMgZGFiMzRjYmY4ZDdmYTNmNDJhOTk3OWY4N2U5MjAyYjdlOGJjNWJmZSBsZWdhY3ktdHJ1bmsKKzQ4MzQgNGU4N2YzYTNmMzNhODdhYmZiMDhkOGQ3M2FlOTdmODAyNTdhNjQxZCBsZWdhY3ktdHJ1bmsKKzQ4MzUgMWEyMGQ1MDU4NzQ0NDhiYzcwMWFiZWExNjE1OTJjZDU0MjhkOGIzZiBsZWdhY3ktdHJ1bmsKKzQ4MzYgYzhhODMyMThiYTYxODcwYTZjNzE3ODAxZmI3ZWE1YjY0YmZlZmVjMCBsZWdhY3ktdHJ1bmsKKzQ4MzcgZmYzZmMzMGVkNzYwNjlhMWIzZGRlZWYwZjFmNGQzYjMxZjA3ZTU3NiBsZWdhY3ktdHJ1bmsKKzQ4MzggNjQ1MGQ4ODI4ZDJiOTg4ZDQxNDAyMDI3MTZkN2U5MTU0ZGJkYzRlNCBsZWdhY3ktdHJ1bmsKKzQ4MzkgNGNjODEzN2NjYjU2Y2ZmZjM5MmY2OWM2YmQ1ODM2MjNjYWU3MzZjYiBsZWdhY3ktdHJ1bmsKKzQ4NDAgZjhhYjkyNWVmZGE4OGFlMGRhMGEwZTNlNWU3MTc4MGFjOWQ0MDNhMyBsZWdhY3ktdHJ1bmsKKzQ4NDEgYzY1MzNiODk2Mjg4ODdhMzExZTljZjM4YjliMWQ4ZWQ4ZDk2ZDBkZSBsZWdhY3ktdHJ1bmsKKzQ4NDIgYzA5ZGFiZjcwOTk2ZmI5YTlmNzg2NmYyN2IxMzg1MzU2ODk5MjIyNyBsZWdhY3ktdHJ1bmsKKzQ4NDMgNTMxM2FjNmYzNGZkY2IwM2U2NzNjMTc2MTQwZjgwNzdjMWRkODBiNSBsZWdhY3ktdHJ1bmsKKzQ4NDQgZjk3OWU1YmQ2YTIyMzBlNzhjNTIzYmYwZjllOThlYTBkMDkxZWEwYSBsZWdhY3ktdHJ1bmsKKzQ4NDUgNDliZmVmMTdiMTJiNjVmYTc2YmZiMDljZjM0YWRhNWE1YTY4YjhjYiBsZWdhY3ktdHJ1bmsKKzQ4NDYgZGRiMTM4NjJmYmIyYmVhNzQ3YTY4MTdiOWE4ZGRlY2EzZGQxYTVkMCBsZWdhY3ktdHJ1bmsKKzQ4NDcgZWNiYmFhNTg0ZjNjMTY3Mzk4ZTA2YjQ3MTI1ZjIzZDMxYzM2MzA4OSBsZWdhY3ktdHJ1bmsKKzQ4NDggOWRjODc1YWQwNTBjODk5NDBlM2E1OTNhY2Q2ODI4N2U0YzcwOTBiNCBsZWdhY3ktdHJ1bmsKKzQ4NDkgYjE1NmJmNGJlNjJmMWI2YTljNTcxMzUyYTJkNjE5ZWQ3NmNlNDJmYSBsZWdhY3ktdHJ1bmsKKzQ4NTAgZmE4Y2RkM2NjNTQ1NDA1NTE5NDNjMDMyMDlkNWJmNGZkZWFhNTRkZCBsZWdhY3ktdHJ1bmsKKzQ4NTEgNDJiNTY4OWE3NDA5NWRkODA5MDI2NWNhZWI2MGUwMjM2ZThkN2ExOCBsZWdhY3ktdHJ1bmsKKzQ4NTIgMjljYTQ1ZWIzYWI3NTIzYmE3NTU3OTk5Nzc0M2E5NzA4ZTdiMjYwYiBsZWdhY3ktdHJ1bmsKKzQ4NTMgMDczNmE3ZWMyZjI4OWU1ZGVlOTFkMGNlOGEyZjdmOTViYjM5MjY5ZSBsZWdhY3ktdHJ1bmsKKzQ4NTQgY2FiYjdjNTczMmVmMWEzOGQ5ZjQxNDZhYzU4MjYxODI0MGM3M2RkNiBsZWdhY3ktdHJ1bmsKKzQ4NTUgNDM4YThjMjY1ZWI5ZjU0Yzg2N2NlZmY3YWNkMmI5MmJjOTRiMTNjNyBsZWdhY3ktdHJ1bmsKKzQ4NTYgZDMxZjY5NGMxMWE4OWI3MTExNzA2Mjk3NjMyMTY4ZGZhZjMxODA2NiBsZWdhY3ktdHJ1bmsKKzQ4NTcgMTMyNWIzZThlM2QzY2UxZjY1ZjA3NjgwMmEzODRlYWVjYTQ5YmQxNyBsZWdhY3ktdHJ1bmsKKzQ4NTggY2FiNjk5NDUzNzc1YzE5MDliYmFjODYwYTE5MjgyNjNlMDgyZTg4OSBsZWdhY3ktdHJ1bmsKKzQ4NTkgNzJjNzE1YzAwNGM4OTg2MWQ1MDRiZTdlZjRjYjUwYjQ2NmM0NzI5MyBsZWdhY3ktdHJ1bmsKKzQ4NjAgNzI0NmI5OWQyOTY2YTJjMmIyNTZlZTZjMWYwMzQ1ZGFmZWFhMzA5MCBsZWdhY3ktdHJ1bmsKKzQ4NjEgMGI2MmI1M2Q0M2Y4Nzg2YjY1NDFhM2E4M2E3NDMyZjNlNzk1YTc0ZCBsZWdhY3ktdHJ1bmsKKzQ4NjIgZTE0OTc1YzkxMGYwY2ExYTdkNjQ4MmRiYTBhMjMwNjlmY2U3NzBkYSBsZWdhY3ktdHJ1bmsKKzQ4NjMgOWE5NDI5MmFhNGMxNWJiZGQwNTljZTI2NDI2ODRkOTJlZGQyNjY4MiBsZWdhY3ktdHJ1bmsKKzQ4NjQgNzdlYjYzNzE2YjRmOThkM2E1NDYwYzBiYThmYzUxYjJjNmQ4NzBkZiBsZWdhY3ktdHJ1bmsKKzQ4NjUgNGZjMDMzY2I1NTQ0NWJhNmUxYWJiMjQ2YTg2YjY3N2M3OTVlOTI1ZiBsZWdhY3ktdHJ1bmsKKzQ4NjYgNDAzYTU2MzEyMTRiMDI0NTEwMmM1MzBiZGRkZDg1Y2Q0YjJjODkzNiBsZWdhY3ktdHJ1bmsKKzQ4NjcgZGQxYWIyMGY4MjIzYjM5ODY0MzRkYjVjNThiNjFhMDc3NmFmYmU3ZSBsZWdhY3ktdHJ1bmsKKzQ4NjggNzVhZTEwNGY3ZTZjNTFlYTJmMDQ1NmM3MmZlYTI0OTFmNDk3M2NhOCBsZWdhY3ktdHJ1bmsKKzQ4NjkgODEwYmMxNWUxOGY5ODNiZWYyMzViZTE2YTNiMzVmNmYxMjA1N2E2MSBsZWdhY3ktdHJ1bmsKKzQ4NzAgNjE0MjUxODM2Y2ViMjI3MzA5NjI2NTk5NWI4MmI1ZmEzM2ZmMjYwMyBsZWdhY3ktdHJ1bmsKKzQ4NzEgZWU4ZTkxYTE3NzQ1YWJiN2NmYTE0MjNjNzVmMjg2NmM3YzkxMjk5ZSBsZWdhY3ktdHJ1bmsKKzQ4NzIgNzVhYTUyNDZiMmY2ZjNkMWQyZmIwNzVkZDEyMzk5YWU4NDMyNjczOCBsZWdhY3ktdHJ1bmsKKzQ4NzMgOTdlNTcwNTBlMjc2MGNmYTI3MmY1MmRjMGIyZDA4NmViNTg4ZGQ5OCBsZWdhY3ktdHJ1bmsKKzQ4NzQgMjJiMWFiMGU2NDczNWRiN2Y4ODgzNGExZWQ0Yjk5NGFkY2VkMDZjZSBsZWdhY3ktdHJ1bmsKKzQ4NzUgNGE0NjJhYWNjMWU5OTE0NWI4MDNjYmY4YjMwYTg1NTY1NzFmNzJiMiBsZWdhY3ktdHJ1bmsKKzQ4NzYgNmJlZWYxNzg3MWY5ODJkM2NmYjU0YzBiYjM5ZDdhMWUzN2IxNWVhZSBsZWdhY3ktdHJ1bmsKKzQ4NzcgNmVkYTY0MmYxOWQwMzc4MGJmMDI5MDcyZmE3ZTkxOGI4NTIyOTQ0YyBsZWdhY3ktdHJ1bmsKKzQ4NzggZjRmNzFlYmVhNTNmMTQ1NDIzZTEwYTM1ZmZiNGE0Mzk2YTAxODNhMCBsZWdhY3ktdHJ1bmsKKzQ4NzkgNzNlZWZmNGQ0M2Y4NGFkNzZkMmJiMmYwZTBjNGZiOTQwNzBjYmIxOSBsZWdhY3ktdHJ1bmsKKzQ4ODAgMDBmNGU0MDA1NzVhOTczNDBlNjA5MTIxNjc2OGQxZGJhNTRlNWZkMiBsZWdhY3ktdHJ1bmsKKzQ4ODEgZWNjZjQ5MzdmMWRjOWFkMzVhZWZlZTUwZDQ3ZjNhNGJhMmZkZjZlOSBsZWdhY3ktdHJ1bmsKKzQ4ODIgOWJmMTg5OTZlZWQ4YzlkZjZiM2Y0ZWFkMDBkNWI0MmRlZDQ5OWExOSBsZWdhY3ktdHJ1bmsKKzQ4ODMgYmQzYWQ2NjM0ZTc2NDgyMDYxZjlmZDRmY2U1OTExNDUxOGY5YjcyYiBsZWdhY3ktdHJ1bmsKKzQ4ODQgNzkyNGI3ODE5ZDhmOTZjNzJhMThhZThmOTkxN2E1N2VjNjViY2QxNCBsZWdhY3ktdHJ1bmsKKzQ4ODUgZWZiMDY4NWE2YzkxY2JlNjU4OWE5MzY0YzBjOWFmMTU2ZTI2MmNlMiBsZWdhY3ktdHJ1bmsKKzQ4ODYgZDM5YWFiNmMxMzBkNDVkYjg5NDg4ODVmM2Q2ZjI5YzYwZDFlNzAzZSBsZWdhY3ktdHJ1bmsKKzQ4ODcgY2JiNDA3MmQ1MzhiZTdmMDQyYWVmODVhZmUwMDZiZWI5MmFiZjY2OSBsZWdhY3ktdHJ1bmsKKzQ4ODggNDQ1YmVhOGNlYWIxZDA3MDgzZDNlNGE2OGQ4YjNjZDE1ZjNhNmM4ZCBsZWdhY3ktdHJ1bmsKKzQ4ODkgNmNiZDI4MzBiNWEyMzhjZjU4Mjg0MDg1NzY2NjQ2MjFhYmZiZGI0ZSBsZWdhY3ktdHJ1bmsKKzQ4OTAgNWJjMzQxYzQwNzFjZDA5Mzk3NmRhODA0N2ViMjhjMTQzMzBjZjdiNSBsZWdhY3ktdHJ1bmsKKzQ4OTEgMWU4YWViYWI4NzRhZTEyNWU3ZmQ0NWI4NmQwZDY1MzdhNzBhMGUwMCBsZWdhY3ktdHJ1bmsKKzQ4OTIgZmE5OGRkYTA3ODc3ZjA4OGZiMWVkNzU2NGJmYWMyNjBlYmU5MGE3MyBsZWdhY3ktdHJ1bmsKKzQ4OTMgNjJlYmJjZmVhODI3MmI4NGQ2MzU5OGQ3NmY3NjVjZGY3OGI3YmUxZCBsZWdhY3ktdHJ1bmsKKzQ4OTQgMWY1OWYyYTEzMzEyOTZlZGYwMTIxMDU5NzAxNDI2MTllYzMzNjJmZiBsZWdhY3ktdHJ1bmsKKzQ4OTUgYzFkMjcwNDNjMjJmNDViNjQxOGY2NDdkYWNiNWE2NDAyNTc4MzEyZiBsZWdhY3ktdHJ1bmsKKzQ4OTYgZDU3N2Q3NDk5MThkMTgzZGQ2MzJkMTczNzA5ZTYwMzBjMjI5OTM4NSBsZWdhY3ktdHJ1bmsKKzQ4OTcgMmY4OWVjMWE5YzM4YzdkNzIxOTJjNzRmMDUwMDg5Yzg1YTIwOGEzMyBsZWdhY3ktdHJ1bmsKKzQ4OTggYTVlOTVmOWRlOTAwMGU1Nzg4MmNiYjNhYjg3Yzg2Y2Q3ZTdkMDIxOSBsZWdhY3ktdHJ1bmsKKzQ4OTkgMmRjZjc1MzgzNDdhOWQ2OGYyZThjOTU5OGFkY2E3MjQzMTU5YWJkYyBsZWdhY3ktdHJ1bmsKKzQ5MDAgOThjMWQ4NDEwMWE1MDgxM2I0NWExZjAxZDEwMDVlMzZiNmE0N2M1NyBsZWdhY3ktdHJ1bmsKKzQ5MDEgZjYxNzE2YWQwYjdmNTFmMzFjMDIzZjM0ZTVhZTQyYTgzZDk3MzEyOCBsZWdhY3ktdHJ1bmsKKzQ5MDIgNmYxMjExYjJlMDc3OWIxMTA2MmI5YjJjY2U2OTBmMjQ0NTA3NTNmZSBsZWdhY3ktdHJ1bmsKKzQ5MDMgNzM0OTlhNjY3ZTc4NGVkYTc0ODEzNjg2MWZkNGIwZjc3YTgxM2YxNiBsZWdhY3ktdHJ1bmsKKzQ5MDQgMmM2NTY1ZjFiN2Y4NjQ0NThkZDUzYTI5ZmIxODhiZWQyNWMwZmVhZiBsZWdhY3ktdHJ1bmsKKzQ5MDUgOGVlZWNkMjMzZDU2OWJiYTlmOGMyMzA5N2RkYzI1Njk3ZjMyOGVlYyBsZWdhY3ktdHJ1bmsKKzQ5MDYgOTRhNjQzNjY1NWUwM2ZiOTc1MzgxNDNlYTg2ZmU3ZWM3MDQ0MDY3YiBsZWdhY3ktdHJ1bmsKKzQ5MDcgNDgwYjI1MWEwNDY4MzViMWNiNDU4OTMxZTUxYjRhYTJkMGQ2NTdiYiBsZWdhY3ktdHJ1bmsKKzQ5MDggOWVmZDQwOGZjOWY2YmI3MjkzNmJkYTZiNmNjYzY0MTBlNmNkYWMwNSBsZWdhY3ktdHJ1bmsKKzQ5MDkgY2RkM2E3MjFiNDBlM2U4ZTk1Nzc1MzlkNjQ4OGU4Y2JlMzY1NTI1YyBsZWdhY3ktdHJ1bmsKKzQ5MTAgODk5ZDIwODc0NTY2Yjk4NmQyMTZkMTRmZTM2MDkyMTEwNGM0YmYyMyBsZWdhY3ktdHJ1bmsKKzQ5MTEgYjQyYWI3N2YyMjI2MDMxNjYzYzMxMjkwYTVhYWQzNWFiYWJlOTM3NCBsZWdhY3ktdHJ1bmsKKzQ5MTIgYmMwMzIyNWE0NDkzZjVkYmE2YjNmNmU2YTRmYTkxYjBkY2NkNmFmNyBsZWdhY3ktdHJ1bmsKKzQ5MTMgZTFhN2JkZmFmZWM5MzIzODg1Mjc4ODlkYmYxMWNjY2Y5ZWZmYTYxYiBsZWdhY3ktdHJ1bmsKKzQ5MTQgNjViY2I0MTgyYzFhMzIwNzk3OWVlYmEyOWY0MGY0ZTQxZTFkOWM3MCBsZWdhY3ktdHJ1bmsKKzQ5MTUgYmFjOTZkNWM0NjNmNDUyZmZhN2E0NGY3YWQ1YmRmMDEzYjBkZWMyYyBsZWdhY3ktdHJ1bmsKKzQ5MTYgMWMyOWY2YmRkODk4ZjZlMjRlN2JmNTUzM2M2YmYzNDU0OWViYjg4YiBsZWdhY3ktdHJ1bmsKKzQ5MTcgZDk0MDQ1YmQ0YTA0MTJiOWE2OTAwYTQwZDc5NjZkOTcyYzUyYTQ4OCBsZWdhY3ktdHJ1bmsKKzQ5MTggZTllODZhZTVmNWE0YTg3ZjFhNGRkYjA2MjU4MTYwNDEzN2QwMjFkZCBsZWdhY3ktdHJ1bmsKKzQ5MTkgZTc2NGI3OGE3MDRmNTE4ZjFhODM0MmZkYTFiOGYyYzQzNWJmY2IyMiBsZWdhY3ktdHJ1bmsKKzQ5MjAgZTcyNmY5MGQyYTlmZjI0OTU5ZGExMTlmMjI1ODU5MjU1NTU3ZDZhZiBsZWdhY3ktdHJ1bmsKKzQ5MjEgMWY0MTQxYWFmZTM2MTk3NjlhN2JlNGVhZjI1M2ZjNGRjNmEyNmM2ZCBsZWdhY3ktdHJ1bmsKKzQ5MjMgMzIyZmM1OTZmMWM0Mzc5MTMwMGU4MGNhZmRhYTlhMTQ1NTYxNmFjOSBsZWdhY3ktdHJ1bmsKKzQ5MjQgNGY3YzY3M2RhOTE4YjU2YWQxYmE1NWU2ZjRmY2Q4NDNmM2VhMjU3YiBsZWdhY3ktdHJ1bmsKKzQ5MjUgM2Q2NzM0YWI2Y2Q0MDJkZDAyMWU2ZDRhM2Q4NzllYzFmMzdlODNiOCBsZWdhY3ktdHJ1bmsKKzQ5MjYgOGUzOGNkMGEzYTMxNWZlMWJkN2E4ZTNjOWMxNmY1MDIwZTI3Mjg2NCBsZWdhY3ktdHJ1bmsKKzQ5MjcgMGUxZjlhMTRmYmQ0OTVhOTNhYjVmMzEyZTIxYmU2MDAzNjM5MmUzZiBsZWdhY3ktdHJ1bmsKKzQ5MjggNWJiMzlhNDJjNzI5MTIyNzRlZmE5MTFhOGYyYmFiMGJjZmNjYzJhYSBsZWdhY3ktdHJ1bmsKKzQ5MjkgZGQyODQ1ZDA2ZWIzN2FlMjk0MDhmZThiZmUwNzgwNWQwYjJlNjZiNSBsZWdhY3ktdHJ1bmsKKzQ5MzAgNTNmOTJhNDczYzZmMTBhNmYxYzA2MDdjNjFkNjQyODEwY2QyYjY5NSBsZWdhY3ktdHJ1bmsKKzQ5MzEgZGU0ZGMxNjViZmI2YTExNTI5OWM5YWExYzliOWIxZTI0ZDE5ZjI5ZSBsZWdhY3ktdHJ1bmsKKzQ5MzIgMzAyMDVkNjM0YTE1YjUyODEyNmFlYmRhY2FjZjU2YTM2ZWYxNjJlYiBsZWdhY3ktdHJ1bmsKKzQ5MzMgNzA4OWQ0ODQzNDA3MmVjZGY0NzliMDZlOTNjMjdjMDU3YzcyMWE0NyBsZWdhY3ktdHJ1bmsKKzQ5MzQgMTFiOTM3ZWEwMDI2NGE1YjFmOTNkNTE3YjVhNWQ3OGJkMjMxNTE3YyBsZWdhY3ktdHJ1bmsKKzQ5MzUgNjQ4NDJlMjA2Yjc2Y2IxNWE5YTAwMzI2OTA3MTgwMGZmNjU2NTY4NCBsZWdhY3ktdHJ1bmsKKzQ5MzYgYTE3ZGExMzIyYzU2ZDUxMGI0MmQ2MDdhYzM3MzdkMTE1ZGE5OTg5MCBsZWdhY3ktdHJ1bmsKKzQ5MzcgYmQ0NzY1NTViZTQyYTdhZDc5OWZhNmUyNTI1NjlkZmU2NTVkNjc0NCBsZWdhY3ktdHJ1bmsKKzQ5MzggMjJjZDIyYmY0Mzg0ZTRkNDZiYjA1N2UzNzRjZDRkNmM3ZWUxMGVlYiBsZWdhY3ktdHJ1bmsKKzQ5MzkgMDUxMGI5NDgxNzhlMGJhNzA2YjVhNGU1OTVjMTRkNTkzNTRiZWY4NCBsZWdhY3ktdHJ1bmsKKzQ5NDAgNTE3YmNkNDgyM2FiNzg2Yzc0YjJmYjEzNzEwYWZkZjVmZjg1MGM2YiBsZWdhY3ktdHJ1bmsKKzQ5NDEgMmE1NzRkNGIwZDU4YzJmMGUzODJhZGE0NmE0MDM0NGI2NTU1YTI2YyBsZWdhY3ktdHJ1bmsKKzQ5NDIgZDYzMGM2ZDM2ODM5YWQ4ODQyNmFlNjdiMGZhYzViZDMzMTFlNWZlMSBsZWdhY3ktdHJ1bmsKKzQ5NDMgZmUzN2VkMmNmN2E1YzU3M2JmZmI4MjE0ZjAzMGQ0ODY0MzZjYjE3ZiBsZWdhY3ktdHJ1bmsKKzQ5NDQgZWIxNGYzMmE5N2NkYzVjNTQ5ZTcyZWIxZDlhMzQ5ODhjMDIwOWM2ZCBsZWdhY3ktdHJ1bmsKKzQ5NDUgODA3MjlhZmY5MDU3YzBmZjE3ZmFhNWFjNzBkYzNhZTY3OTE5ZTFhZCBsZWdhY3ktdHJ1bmsKKzQ5NDYgY2Q2NGEzMmFiODAzMmNmNzZiY2I2ZmUxYmNjNDg2ZTk4MGM4OWE4OSBsZWdhY3ktdHJ1bmsKKzQ5NDcgNDQxOGU4NTQ3ZWZjZjE1MGY3MDFiYWM5NDk4ODBjZjAxZTdkNjBhMSBsZWdhY3ktdHJ1bmsKKzQ5NDggZmI4ZTA4ZWM4OGRkNTYwNjJjMWE5MzU2MDIxYWU4MTVhYmQxNTZiNiBsZWdhY3ktdHJ1bmsKKzQ5NDkgNGI1NzRkYjVkYjEzZjE3NTc0YjY1YzQ2OTBiMGJjMGEzYjJjMjljYiBsZWdhY3ktdHJ1bmsKKzQ5NTAgZDk0ODEzNTRmZGMzNjE5OWJlMWJhM2JlODMyZmU4MzY5MTA1NDBkZCBsZWdhY3ktdHJ1bmsKKzQ5NTEgNWZjNjI1NjJlNmVjZTE3MDlkZjNjNzk0NjE1NGY3N2UxZWQ3MmQ1NyBsZWdhY3ktdHJ1bmsKKzQ5NTIgNzE4YzY1ZDBlMTJkYjQ4NjYxYWY3N2I1NzZjY2QxYzM2OTIyYzZmMyBsZWdhY3ktdHJ1bmsKKzQ5NTMgNjBlNWFhY2ViM2ViMzZjYTA0ZDI0YjEzMDNkOTIzNjBhMThmNTAzZSBsZWdhY3ktdHJ1bmsKKzQ5NTQgMTVhODY2ODdmODM4MDcxMTQ1N2IzMmI2MGI2YzkyNGIzYjMxODEyYSBsZWdhY3ktdHJ1bmsKKzQ5NTUgZGRmNjBiYzdlZDMwMTVmNzM3ODkyYWQ5NDRjMDY5Mzc0NmJiYThjNiBsZWdhY3ktdHJ1bmsKKzQ5NTYgYzIyMTk1N2E2MjZkN2VjNWZlMjYzZWY4NzhhYzU5N2U1NmYxODFhNiBsZWdhY3ktdHJ1bmsKKzQ5NTcgZjIxN2MxYjI3Zjg2NzZhNWQ0YjY1M2E3Y2NiYzI3NGI5OTMxNWUzNiBsZWdhY3ktdHJ1bmsKKzQ5NTggYjVjZTgwMTE0NDE2MTU4NzVjNDk0MzhlNzlkMGQ2ZDAwODRjYTJkMiBsZWdhY3ktdHJ1bmsKKzQ5NTkgZDU5NzgyMzhlM2JhNmY3Y2M3NzMyMDJmMjEzYTczOTViYjYzZDQwMCBsZWdhY3ktdHJ1bmsKKzQ5NjAgNGRkMWFmMGRkZWYwOGRiMjZlMjYyODRjMzE2OTVjNGU0NzNmN2MxNSBsZWdhY3ktdHJ1bmsKKzQ5NjEgNDI1ODM1Yjg4MDk5ZTgyMmI5OGYwOTJhYWJlNTFiYTQ1YzllY2NlYiBsZWdhY3ktdHJ1bmsKKzQ5NjIgZTkyMGU2YzI3MjA4MjFjMWMyNmVhZjg2MDI4NmRlN2Y3MTBkNDBmMiBsZWdhY3ktdHJ1bmsKKzQ5NjMgOWQ2ZTk3ZDY2NjcwOGQ0MzdhYmUyODVjOTFmNDgyNjU5Njk3YTFlNyBsZWdhY3ktdHJ1bmsKKzQ5NjQgOGFjNGMwZTFjZTE3YWQyOWJmN2FjOWEyOTFkNmQ2NjdkYTMxYmNiNSBsZWdhY3ktdHJ1bmsKKzQ5NjUgNDdjYzUzYTFmZDQ3YjNkNGVlYzQ4ZTM5MmE4OTI3NjZhNTAyODc0YSBsZWdhY3ktdHJ1bmsKKzQ5NjYgYzZlNDgyODcwZWMzMGFkMGM0M2MzOTgzZTEwZjM5OTZkYmNkMjRhYyBsZWdhY3ktdHJ1bmsKKzQ5NjcgYzI5YWRiMzM4OTY0Y2I3ZmFjMDk0ZWU2MDk2ZDk5NWEzMGM0OTRjZSBsZWdhY3ktdHJ1bmsKKzQ5NjggYzZhNmUyYjIwYmQ4M2RkMzhhOGUyMmU3MTY1NGY1ZTdiODUwNmY1NiBsZWdhY3ktdHJ1bmsKKzQ5NjkgYzZmMmQ1MTI1MWQwNzVkNzhkZWEzNzliNTRiZTJlMWEzYzZmYjI5YyBsZWdhY3ktdHJ1bmsKKzQ5NzAgNTZlMjUxMTRkNDM4NDQzNTlhZTA2NGM5MzNlNzg2ODNiODExZWRmMSBsZWdhY3ktdHJ1bmsKKzQ5NzEgZjRkYzUxZjc4YTU2ZGMzZmJiMTQxZDZkYmRlYjVjY2IwNDM2MTdjZCBsZWdhY3ktdHJ1bmsKKzQ5NzIgMWNlOWU2N2M2ODU2ZThmYzc4YmExNzU1NjUxZWI0OTllNWEzYzBiOSBsZWdhY3ktdHJ1bmsKKzQ5NzMgZDBiOTgxMmNkOWNmNDA1MTNhYzhmNzM5ZmI3ZmIyZmIwZGY5OWM1YSBsZWdhY3ktdHJ1bmsKKzQ5NzQgMmY0NTU2MjdjMWYwZWQ1YWZiMjg3NzZkNDliNWI3YjdiZmZkZGU3MiBsZWdhY3ktdHJ1bmsKKzQ5NzUgNTU2MjE5NzA5ZTk5ODViY2ZlMTIwZWFhNjA2NzQzMzIzYjVmZDk0OSBsZWdhY3ktdHJ1bmsKKzQ5NzYgNDk1YWZjOGFkN2I5NjlmMTRlNmMwYzI1YjI0ZjViZmVlODE3OGY4MSBsZWdhY3ktdHJ1bmsKKzQ5NzcgODQ3ZDI0ODQxYzg1Njk5ZDE1MTgyYzUzMzlkYjU1ZDNkNmRiMTMyMiBsZWdhY3ktdHJ1bmsKKzQ5NzggZTdkNDgwY2YxNmJhNmRmODEwYWU2OTEwNjk3NjAwYjdmNjZjYzI3NyBsZWdhY3ktdHJ1bmsKKzQ5NzkgOWU0MDEyYjE3NTdlYjRiNmE2Y2JkOTNhMzJiMWY3NzU3NWU0NDUxNSBsZWdhY3ktdHJ1bmsKKzQ5ODAgOGI4YTM3YjdjYmE0Mzk5Yjk4OWMwNTI5YWMwZDQyNDE2MWEwZDFkZSBsZWdhY3ktdHJ1bmsKKzQ5ODEgNjAwMTQ0OGZhYjg5MDM1MGJlYTgzYzYyYWEyMzg2NTFkNWQxZWVmYyBsZWdhY3ktdHJ1bmsKKzQ5ODIgMTZlYTE1MWFlZWMzYTRiMDg2YjkzZTk0N2Q2MzA1YjExZDBhNTdkYSBsZWdhY3ktdHJ1bmsKKzQ5ODMgZDExMjNiMTBjZjIzNzJjYzRlM2U1YTU2ZmU5YzBjZjYyOGM3ZmRlNCBsZWdhY3ktdHJ1bmsKKzQ5ODQgODE1ZGZhYTZhNzc4Nzc3MjA2MzM0YTdkN2NhN2IxODY0MWNiMWMyNSBsZWdhY3ktdHJ1bmsKKzQ5ODUgYWUyYjAzMjQ0NWY5OWMzM2IxZjc3YjJiMjIzNjhkMzViMmI0MzA2NCBsZWdhY3ktdHJ1bmsKKzQ5ODYgMTZlYTU3YzM4YzRmNzQxZjMxNjk2YTNjOTNkMzU2YWI2YTllMGM4ZCBsZWdhY3ktdHJ1bmsKKzQ5ODcgMWE1ZTdkYTQwNGMzZGEzYjNjYzVmNWZhYTU2Nzc2ODMxNDBhNTk2YiBsZWdhY3ktdHJ1bmsKKzQ5ODggZTM5YmIyNDBiMWIzYTdhODQ0NWQwMDFlYmJiZDQ2MTZlMWMwZWY5YSBsZWdhY3ktdHJ1bmsKKzQ5ODkgOWU1YTA5ODQxNzgxOTU4YzI4ODNkYmZjY2E2NWVlNjhmY2M5OTM2OCBsZWdhY3ktdHJ1bmsKKzQ5OTAgZTUwNmVjNGZiMmIxMGQ0MDBlZTdmNjM4ZjY5Zjc5YjUyYzZmYTNiZiBsZWdhY3ktdHJ1bmsKKzQ5OTEgNzNkMTkzZWFhOTAwZWE0MzhlODQ1Mjk4ZmQ3NzY4NGI2YTQ3NDUyNCBsZWdhY3ktdHJ1bmsKKzQ5OTIgODc1MTczZjNmMzFjYmQyMzQ2Y2I0Nzc5MTNhZWU3NWU5MjU4ODllZiBsZWdhY3ktdHJ1bmsKKzQ5OTMgYTE0ZmMyZDA0YzA2MjVhODY1ZmZiNDNiZDhjNTQ0OTQ1Yzk1MDllMSBsZWdhY3ktdHJ1bmsKKzQ5OTQgNmZjZDBiMDIyZmE3N2JiZTYyZGY3Zjc5NTE0NzdiZmVkMmEyYmYyYyBsZWdhY3ktdHJ1bmsKKzQ5OTUgNGRmMDBiMjk0NzdiN2Y3YjI2OTc5YjllZDNhMWJmNzdmYjgxMmI3ZCBsZWdhY3ktdHJ1bmsKKzQ5OTYgNTM0YTk3YzQwMGNjN2Q2MGM1MzVjZmQyNGU1NDg0MDFmMzFhZTZjOCBsZWdhY3ktdHJ1bmsKKzQ5OTcgZDdhZTVmYjFkMjU1MDk4MTQ5NzgxYzAxZjQ4ZmU5NTk3NTA2NGNiNiBsZWdhY3ktdHJ1bmsKKzQ5OTggYjcyY2NmNWI3ZGJjNDdmYzhkMTE2OWRhM2RkYTJjYTczMTFmNzliYSBsZWdhY3ktdHJ1bmsKKzQ5OTkgNDlkZjE1NzZmYjU0ZTkyZmYxY2JhMTBhNTJjZTUxOGQzZjU2ZDk2ZiBsZWdhY3ktdHJ1bmsKKzUwMDAgMWE0NDhkZDg0ZWRjMmU5ZjNkMjE0OGNhMzlkZTZjYTgyNWViODZhNyBsZWdhY3ktdHJ1bmsKKzUwMDIgYWFiYmZiNjFlMzg4ODRiNmEwYzRjMzE5ZWZhNjI3ZDRlYWJhZjZkYyBsZWdhY3ktdHJ1bmsKKzUwMDQgOWNjNzc1ZmQ2ZTg0YzVmMzM4NWJlYTkwYTI0N2U3OTgxYmFiOTBmYSBsZWdhY3ktdHJ1bmsKKzUwMDUgNTUzNmZjYmFlODBhZDdiMDE3ZDMzOGE4ZmUyMGExNTQwMGIyMjVkMyBsZWdhY3ktdHJ1bmsKKzUwMDYgMzI4MWE5MzFhMWQ5ZGM5NzdiYTEzYzUwMWFmNDBkOTJhZTRhNWFlNyBsZWdhY3ktdHJ1bmsKKzUwMDggMmNhYzZjNTA2NmRhNTA5NTk4YWIwNmVlMjllOTBkZjY5YmZmYTczOSBsZWdhY3ktdHJ1bmsKKzUwMDkgNDE5NjAwMDc4OWJjNWUyNDI2ZTAzOGE3NGU1MjEyMGI1NmY1OTBiZCBsZWdhY3ktdHJ1bmsKKzUwMTAgMGY2ZmY0NWJkODE2Nzg3NmI3YzNlNDUzYjZlMjU2MWU3Njg2M2UxYSBsZWdhY3ktdHJ1bmsKKzUwMTEgYzU1ZGRkYmZjZjdjZThlYjZhZmJmOTdjZjRmZDU5ODg5NTFmNDlmMyBsZWdhY3ktdHJ1bmsKKzUwMTIgN2Q3MDIwOWYzNTVkMjBlYzAxZGJjNzNhMDJmYjI5Y2U5MjNmMjE5OCBsZWdhY3ktdHJ1bmsKKzUwMTMgZjMwYmM0OGM0MTdhMjFkMWNjM2I2ZTY2Zjk3MzljOTVmMzgwMjgzYyBsZWdhY3ktdHJ1bmsKKzUwMTQgZjRkMjZhMGUyOTc1MTUxYTZmZWVkMDBkYmFlZDNjMjM1MGYwNDUyNSBsZWdhY3ktdHJ1bmsKKzUwMTUgYjE4MWRmZjIxYjBiOGU5OWNmMmM5NDU3OTg5MGQ2ODEzYTUxYmU1YiBsZWdhY3ktdHJ1bmsKKzUwMTYgZjliMDc5MTVhMDYxN2RhMGFlNGZiMGU5YmE1OTM2MWMyY2M0MmRhYyBsZWdhY3ktdHJ1bmsKKzUwMTggMmFhNmI1YWQ0NTIwNGUwNzFkYjFkNGY3YzFlMjgyYWJhYmU1OWUzYSBsZWdhY3ktdHJ1bmsKKzUwMTkgMzhmMzIyNWVmZjMxYmRkMzViYzYyNzA4OGZlNzJiYTBmY2Y1MGQwYiBsZWdhY3ktdHJ1bmsKKzUwMjEgM2Y4YzhiOTAxNThkZmQzMmZiYzQ4Y2FiNDI5MWY2M2IzNmRmZGUyNCBsZWdhY3ktdHJ1bmsKKzUwMjIgNzg3YjRkZDZmNWYzZTZjMjBlMTJkMTc5NGMxMDY5ZWJiNDRkYTY3OSBsZWdhY3ktdHJ1bmsKKzUwMjMgYjA5MmQ5MzZjODc1ZTY2ZjE3NGRkMWFjYTc2MTAxZTJkNjk5YmE2ZCBsZWdhY3ktdHJ1bmsKKzUwMjQgMzgyODIwNmMyZGMwYzYwOWU2NGFiNmMyOTgzZDc5ZDk5NzQ1MWVjYSBsZWdhY3ktdHJ1bmsKKzUwMjUgODVjMDgxOTY2MmI3YjQ5YmRkY2U0NDU5NzFjNjgyMGFmMjhhM2I0OCBsZWdhY3ktdHJ1bmsKKzUwMjYgN2ZiZmY1MmRiMDg3NzRkZjk0ZDE0OTZhNGVlZmQwZjMwMGI2MmI5NSBsZWdhY3ktdHJ1bmsKKzUwMjcgOTEyODEzZDU3M2I0MmZmYTIyM2E5NTc2NmM4ZjM3MWQ0NDlhZGE3NCBsZWdhY3ktdHJ1bmsKKzUwMjggOTE5YzUzYTM1ZWZhZWFkM2U5ZGY4ZTA5M2NiNWQxMjc2YzczYTM2ZCBsZWdhY3ktdHJ1bmsKKzUwMjkgYjU5NjNjNGI2MzlhZDE0OTcxNzEzNmI2ZjM3N2FkMzBlNzI0MWUyZSBsZWdhY3ktdHJ1bmsKKzUwMzAgMmM2MTc4NjMyN2NmZjA1NGQzN2Q4Yjk4ODdlMGU4YTQwZjY3MWZmNyBsZWdhY3ktdHJ1bmsKKzUwMzEgN2EzNzMzNzMyOTAxYzExOWU1ZjVhNjkwOThmZjE2MTI2M2M2NGVkZCBsZWdhY3ktdHJ1bmsKKzUwMzIgOGJlNDAwMmI1MDg2N2MxODdmM2JkMGU3ZmNlMjlkZTUyMjVlZWMwYiBsZWdhY3ktdHJ1bmsKKzUwMzMgMTgwNzg2NGE3NWY0NzE0M2NiMzBjNDg3NThkZGI2NTBkZWIxM2RlNCBsZWdhY3ktdHJ1bmsKKzUwMzQgYWMxM2NhYTc5ZTNjYTYzNDI4NTVlMTAzYmQ3ZTQ5ZTRhZjBmZjNjOCBsZWdhY3ktdHJ1bmsKKzUwMzUgMGJhZWI3NDZhODU0MDMyOWM3NDEyNTFlMzcwNGMwMTJjMDU2MzA0ZSBsZWdhY3ktdHJ1bmsKKzUwMzYgZjBiNzg3MmRhNjg5MWMwNWQ2N2JhOGZiZDQ0Y2FjNGU5MGVlN2NjMyBsZWdhY3ktdHJ1bmsKKzUwMzcgOTY3N2ViMTA1ZmFlODI0ZGI2YzA4N2NlNjA0NzBlMjM0ZWUzMjIxYyBsZWdhY3ktdHJ1bmsKKzUwMzggZjQ3YmM1NTU0NDE4NWE1YzA5YjYzMzc0MzQ1MTljMTcwMzAzNjQwNiBsZWdhY3ktdHJ1bmsKKzUwMzkgNDk4ZGFkODA0NWQzNGM4NmJkNjVlZGI2M2I3ZWE1NmNiMzk0NzE1YiBsZWdhY3ktdHJ1bmsKKzUwNDAgMGFjMjdmZmQwNTc5OWMzZjFkZDg2N2JlY2Q1MTgxYjg5YTYxYzc5YSBsZWdhY3ktdHJ1bmsKKzUwNDIgYmM0YjNmZGE2YTgwNzhkYzYzNzdmYWFjOWZkMGIwMmU4YTNiNDU1OCBsZWdhY3ktdHJ1bmsKKzUwNDMgOTFiYzkwN2IxZTYzY2YwODJmNDM0NzEwZWZkMjhkN2U3ODMyMTMzMCBsZWdhY3ktdHJ1bmsKKzUwNDQgNGQyOGI2NTViNzI4NzE1ZTQyYjNhMGJhODFkY2Y4NWU5MTU0ZDNjYiBsZWdhY3ktdHJ1bmsKKzUwNDUgMzc3MGU0MzQ3ODAzODVlZjkyNjg1NDZkOGQ4NjdjNmQxNGRlYTc1OCBsZWdhY3ktdHJ1bmsKKzUwNDYgNzkxNDkxNTcyOWUzZDUyMWI3MTNmODIwYWZhZTYwNDVlNjZlYWE3NCBsZWdhY3ktdHJ1bmsKKzUwNDcgNGI2YzA3NjJkNjU5YjRkNjFlN2MyOWRjNWJjMzEzMzgxNTY5ODZiOSBsZWdhY3ktdHJ1bmsKKzUwNDggNzA0MmFlZTY0MDllZmM3ODIwZmQzZDE4ZmE2MDZiYjBkZTQ3OTM0NSBsZWdhY3ktdHJ1bmsKKzUwNDkgYWUxMzFiOGI0ZTMxOWRiZmMxM2Q4NzM5YjkzZjUyZWNlMjkwMWRkMSBsZWdhY3ktdHJ1bmsKKzUwNTAgZDY5OTU0ZTFmNWQ0MThmNGZkZjBlZDIzZjUxMmI1ZmI1OThhZGI0ZSBsZWdhY3ktdHJ1bmsKKzUwNTMgYmJiZjE3NjQwYzZmYTE1Y2JjNTk2M2M3NTgxOTAyNWFmM2VmM2QxNiBsZWdhY3ktdHJ1bmsKKzUwNTQgZDVkMjdkYWQ3ZmVhZjVkNmY1MzlhYmUzMDNhMDk1MDk0NmU5NGRlOSBsZWdhY3ktdHJ1bmsKKzUwNTUgNWQwOTM4MzUwYWU4ZThkODdjYzg3NjFmZThhYmQzN2Y2NGIzMTQ3NyBsZWdhY3ktdHJ1bmsKKzUwNTYgMmEzZTQ4OTcyMjYxMmY5MzA1YzE5ZTU5YmI3NTgyNzlmODU3Yzc3YiBsZWdhY3ktdHJ1bmsKKzUwNTcgNzYzZWI0Nzk3NWRkMzk3ZTkzNmU0NzJmN2IwOWY1M2NjOWUxN2E3OCBsZWdhY3ktdHJ1bmsKKzUwNTggOGRmNTc0YTY1NWFkNmMzY2Q1YjgzZTM0OGQ4OWEzMzllODYwZjIyZSBsZWdhY3ktdHJ1bmsKKzUwNTkgY2U5YTc1MDdlMWVmZWI3MTAzNTZjYThlNTVmOGVjYmMxYzY0NDgyZiBsZWdhY3ktdHJ1bmsKKzUwNTkgMDY1ZTMxY2Y1ODYyZTI3NTIxY2Y1NzI1YjAwM2FlZDIxMWYwOTFiMiBsZWdhY3ktdHJ1bmsKKzUwNjEgMzE3Nzc2MjJhZTkzMTU3YTIwMTA4MTI5MTQ5YWVmY2VmZTJjOGVkYiBsZWdhY3ktdHJ1bmsKKzUwNjIgY2Q1YTk2ZjYyMzliZGU0NTJhMjBmNzcxMGJmN2E0YmFjZDk2MmMxZCBsZWdhY3ktdHJ1bmsKKzUwNjMgYjI4MWMzYzg2M2NjYWU0ZWRiZDFjNjk1OGY5ZDMzYWE3MDNkZjczMCBsZWdhY3ktdHJ1bmsKKzUwNjQgYmRiNjNhNzk3NTU1NTQ3ODQxOTI0MDJhZmZjYmNlNDM3YTcxMTRiYSBsZWdhY3ktdHJ1bmsKKzUwNjUgNTg4Y2Q0MzQzZWVkMWZjMjczNjA5ZjcwNDExYTAzYzg0YzY1NWZiOCBsZWdhY3ktdHJ1bmsKKzUwNjYgMzUyMzM2NDA0NzliMmViYzhiYjJkODNkZDdjNTQzNDkyZjc3NmU1NCBsZWdhY3ktdHJ1bmsKKzUwNjcgYmVlMmFlZDQxNmQ2MjQ0MjdhZDBhZjhjYTNjMzZmMjFkYTFjZjUxYSBsZWdhY3ktdHJ1bmsKKzUwNjggNDA4NGVjZjI3NmNmMGY1ZTQ2Yzg4MjJmMDZhZTQwMzZiNjJjMTU1MiBsZWdhY3ktdHJ1bmsKKzUwNjkgYzUyYjVjOWJlN2UyMTdmNDI0MjIxZjhlMjU5YzkwYzlmNTdhMTkzOCBsZWdhY3ktdHJ1bmsKKzUwNzAgMjliOTBhODZhYzk2ZDhjODhjMzNmMmNkZTI1NTA3YWNiYzJkYzE4OSBsZWdhY3ktdHJ1bmsKKzUwNzEgMTdjOTI1ZjAwNjBiOGM3MTk2NTllYjYwYmQwZTg3NjBjZjhlMWJkMyBsZWdhY3ktdHJ1bmsKKzUwNzIgMWM4MTQ3ODNlZmMxODUwMGEzMDIyZmY1N2EzN2VmN2U1YTY0NGI4NCBsZWdhY3ktdHJ1bmsKKzUwNzMgZWVhYzE3MGY1ZjJmZjgyNThjNjlkODgyMzdhNWE3ZmM4YzZlOTgxZSBsZWdhY3ktdHJ1bmsKKzUwNzQgN2VmNzI4NzNlNGQ2ODc0N2Y1MjZjNzg4OThhODllZWQzOThjYmZjZCBsZWdhY3ktdHJ1bmsKKzUwNzUgYjAyNTczZWViMTgyOGM2ODIyZGIyOGEzNTFjZWFjNTdlNmNiMWNiYiBsZWdhY3ktdHJ1bmsKKzUwNzcgMDE2ODdjZTQzNzA4MmE1NWI3ZWNmMDA2NDMyODAwZmVmNTU3NGNlYyBsZWdhY3ktdHJ1bmsKKzUwNzggY2E2YjYwZDRlYTkwNjM3YzY3NmIxMDMwMDA4MGE3Y2U5NGFjZDNjZCBsZWdhY3ktdHJ1bmsKKzUwNzkgYjM2OGJlN2IwNjJhNTMwMmEyZDA2YjkzZTQ2N2Y3MmYwYmE4Yzk3YSBsZWdhY3ktdHJ1bmsKKzUwODAgZjcwNDlkNDY1MzY1NzY5OGQ5OGQxMjBlZmZiMWFlNWFmNjJkMDM3NCBsZWdhY3ktdHJ1bmsKKzUwODEgYmMzMjYwNzRmODYxNGU4MWI1YmRmMzlmMDlmNDRhMjljOWNhODMzMiBsZWdhY3ktdHJ1bmsKKzUwODIgYTkyZGRlZDRhN2M0ZGNjNjI0YTY4MGMwMDhkZWI2OGM5N2FiZDRmMyBsZWdhY3ktdHJ1bmsKKzUwODMgZWQzMGJjYTE4NGJiODFlMjNhOGZhYTlkOWJkODBiY2RkZGEwNDZjMSBsZWdhY3ktdHJ1bmsKKzUwODQgNmNjNjM3YzYwY2U2NjJhZmVjYTIyODIzZjk2YTZhMmZlMGZhYWQ3YiBsZWdhY3ktdHJ1bmsKKzUwODUgZGE0N2I0MTQ2YTdjODdjZWQ0Y2E0ODRkNmY1MzZjZmMyZjk2OTkyOCBsZWdhY3ktdHJ1bmsKKzUwODYgYmQwNWRjZWE3YjA5Y2Q3NDc0OTdjZWMzYmVlNjA3MjMyNDA5NTJkZiBsZWdhY3ktdHJ1bmsKKzUwODcgMmY5MTAyZjU3MTQzZjFkNmZkNDYyYmQ5NThlNWM1ZjE0YzA5Mjc1NCBsZWdhY3ktdHJ1bmsKKzUwODggNjFlM2I2MGFlYzQ0MTlkYWVkMWU4MWYzZjI2N2I2YmY2MmRhOTY1OCBsZWdhY3ktdHJ1bmsKKzUwODkgODMwMThhYTliMTdjOTU2YzU0ODY4YjMzNjRhN2MxNGFjNDYzNGQ4OSBsZWdhY3ktdHJ1bmsKKzUwOTAgNjM0MWE0YzAwODJiMzQ5Mzc1MTcxZDViZjA5OWNkYTZlYjAwZDIwNiBsZWdhY3ktdHJ1bmsKKzUwOTEgNWEzMzcxMzIwOTc1NDVlYWYyZWQyZjVmYjQ5NDc5YjM0ZmQ4OGFlYiBsZWdhY3ktdHJ1bmsKKzUwOTIgZGJiNDE3MTIxNjViZTRmYTQyZjBkZTc4NzExMmRjYjAyMTIwMmJmYSBsZWdhY3ktdHJ1bmsKKzUwOTMgZTllYTA1NzAyNjc2ZTdiYzgxZGE2NTk5YzEzZjMyMGI4ZTU2YzBmOCBsZWdhY3ktdHJ1bmsKKzUwOTQgN2M5MmQ0NGZhNmZjYTUxMGVlMWE5OTRlOTg2NjVlNDQyNjAyMTBlNSBsZWdhY3ktdHJ1bmsKKzUwOTUgMTc1NjcxY2MyMWQ4YzY0NGNlZDE3ZGI3Y2E3MjU0ODFhNGVjYjlhNCBsZWdhY3ktdHJ1bmsKKzUwOTYgNmM4OWRmNTc2ZDkxYWZhZGM3MzcxY2M5M2QzOTY5ZmM3MzNjNzFlOSBsZWdhY3ktdHJ1bmsKKzUwOTcgOTEyMzE3YTM3ZTJiMzg1NjE3ZWJhZmRkZjY5Y2YzYTJhMTMyNzJlYSBsZWdhY3ktdHJ1bmsKKzUwOTggNzVlOWU1NmI1ZjliMWEwZGUzZTAyNGVmYjQ2ZDA5M2VmMmRlZWJkZSBsZWdhY3ktdHJ1bmsKKzUwOTkgMjI5MTJmM2E4ODlmMTJmZjYwNzg2MDQzN2Q4YTQwMmZkMWUyMTRkYSBsZWdhY3ktdHJ1bmsKKzUxMDAgZjRlZjNiMjEyNmViY2JkZDY1YjZjOTY1MTQ0ZmIzMGYyYTQ2MTFjNSBsZWdhY3ktdHJ1bmsKKzUxMDEgNmYzOTZjZTUyNTVkMDhmMWE2ZTM5MGRiZjhjM2RkYjQ2YTQ0NTZhYiBsZWdhY3ktdHJ1bmsKKzUxMDIgNjdmZjlmNDdhYjM2ZmU5Yjk4MDFmNzZjOWY0MDFkMDJlNzkyOWFiOSBsZWdhY3ktdHJ1bmsKKzUxMDMgNDQwODc4MTkxNDhlMjc3Njc4OGNlOGI2NmI5NTAyOWUzZWQwNjVlOCBsZWdhY3ktdHJ1bmsKKzUxMDQgNjhjN2EwYTYxZmQ1ODFjMDc2Y2Y4ZmY4ZDFlZDhmOGUyMzcxNzNkOSBsZWdhY3ktdHJ1bmsKKzUxMDUgZjExYmE5Y2MzNDJmMjgwY2FhODdmYzFjMTk4YWEzY2ViMTU5YTBlMCBsZWdhY3ktdHJ1bmsKKzUxMDYgZjVjNDA4NjlkYTEwNjU4ZWMxMDMxNzBjN2MzOTYyNDE4MDAzNDUwMSBsZWdhY3ktdHJ1bmsKKzUxMDcgZjk4YTIyMzNiMzM3YjQ5NTM0NThiN2RjZGNkNTY0YTVkMjNlNDVmNyBsZWdhY3ktdHJ1bmsKKzUxMDggNTEzNGMwMDllMWE0ZmU1ODNkZDllMGVlN2E3MTg2OGQ4NzAxNGI2YyBsZWdhY3ktdHJ1bmsKKzUxMDkgZDllNGNiYmE5NThjMDY5MThmZTE2ZmE2YWNiZmRkZDE2OGMzNGEwMSBsZWdhY3ktdHJ1bmsKKzUxMTAgN2M2OWM0YWVjYjM4Y2I0NTVlNzM5YmYxOTA2ZTJiMjc3MTY3ZjBmNiBsZWdhY3ktdHJ1bmsKKzUxMTEgZjg3NmNkNWM0NDE3ZDc1MDA5NWQ4MDA5ZjdjMmRjOGYxNWUyNWViMCBsZWdhY3ktdHJ1bmsKKzUxMTIgZGUyOTdjZGVhMzRlZTY1MGUyMWUyYmVkMmUwYWNiYjRjZjZmY2MzYSBsZWdhY3ktdHJ1bmsKKzUxMTMgOWI3ZTZkOWE1MjhkYTdjODhmM2Y4ODhhNjRiMGI4NThhMDRmNGJkYiBsZWdhY3ktdHJ1bmsKKzUxMTQgYjdlOGJjMDAyYTI0MzBjYmNmNDU2ZjZlNzYxODI4ZmFhM2ViOTNlOSBsZWdhY3ktdHJ1bmsKKzUxMTUgMDYzYTk2YjQ5YjNlNjJhOTQ4MjFiZjM2NzQ0ZGU3MWI5OTFlNmUxMCBsZWdhY3ktdHJ1bmsKKzUxMTYgNjA2YTA5N2RmZDAwMmM0YTA4NmIxNTFlOGIyMjcwMWI3NDA2YWM3MyBsZWdhY3ktdHJ1bmsKKzUxMTcgODRlMjI2MGRiMTc5OWIzNTBiYjI4OTY2ODM0ZjliNzY0YjE3ZTFmYSBsZWdhY3ktdHJ1bmsKKzUxMTggZDYzNTBhMzE4OTk3ODgyYzY5ZmM3NmI4Yzg1OThhNjUzZjY5NmYxZCBsZWdhY3ktdHJ1bmsKKzUxMTkgZTNlY2M0MDE4OTg5YWUzODExYjcyYWQxYjNjZDFmNTBlNGNjNWU0NSBsZWdhY3ktdHJ1bmsKKzUxMjAgZjRiM2Q2OGM3MTI0NDJjYzc0Yjg1NTgyZTU1YjMxMzU1YWM0Y2RhMyBsZWdhY3ktdHJ1bmsKKzUxMjEgZGIzZGFjZTI3OGFjMDE4OGRlZWFjMDBhMTljNDY2YTVjN2IxYWE4NiBsZWdhY3ktdHJ1bmsKKzUxMjIgOWNmNjA0YTM0MTFlOTQ1YjlmNGU1ZDYyM2ZiYmJiNmI0MWUzNzQwNCBsZWdhY3ktdHJ1bmsKKzUxMjMgODQxZjcyZGM1NDQyNGIzZGVmMzY2MGI1ZDFlOGYyMzQyMzYwNjVhMiBsZWdhY3ktdHJ1bmsKKzUxMjQgM2EzZGYyMzEzMjdjMWQwNjcxNDQwODM1NjAxYzhhNGRlMTBjZjI1NSBsZWdhY3ktdHJ1bmsKKzUxMjUgMjY2YWQxMzI4N2E0ZTBjYTU5OGNmMjI4MTVlYjEzZGZjZmM4NjliZSBsZWdhY3ktdHJ1bmsKKzUxMjYgNGViNmRkYjllOTYxYzlhYjViYTI2YTExZDNkMTNhOWU0NmRkYTU4MSBsZWdhY3ktdHJ1bmsKKzUxMjcgYjRmZDQ4ZTNhM2I4OWIyYWQ5NGZlNzk1NWJmNmNjOTFhNjI0OTliMyBsZWdhY3ktdHJ1bmsKKzUxMjggZGYzZTFlNTIxZmU2NWRlM2YwZDdjYjMwNmRkZTcwYzI1ZjJlM2JhNSBsZWdhY3ktdHJ1bmsKKzUxMjggZTcyMjU3ZTY1NTQ1NGQ1Njk0NjhkYThiMTE4OWUwZWMzMzZmMzUzNiBsZWdhY3ktdHJ1bmsKKzUxMzAgNTEzZjFjYjcwY2U2YTllY2Y0MjhhN2U5YTUzMjQzYzI5YzNlYWFlMCBsZWdhY3ktdHJ1bmsKKzUxMzEgMmY4ZThiNjEyOWY3M2FjN2EyNjMzZmQyODQzYWRkN2I1MjEwMWVkMyBsZWdhY3ktdHJ1bmsKKzUxMzIgNDkxODM5MzhkMDdlOTdiNGMzY2UyZDY1NTQ5MTVmYmM2N2ZiOGQ3YyBsZWdhY3ktdHJ1bmsKKzUxMzMgMGI3ZTE0YmI1NGFlMGVlZjEwN2I5ODMyYzllNDg4OTAyNTY5ZjA2MCBsZWdhY3ktdHJ1bmsKKzUxMzQgZTJkZDc4MTk3NTk2YmZkMThiZjNjZGI4OWY0MWJkZDBkNGM3NjJkZCBsZWdhY3ktdHJ1bmsKKzUxMzUgMzRlZWZhMjI2NzA5YWE4ZWRhYWM2ZGY0YmQ0ZDNmNmZjZjk3OGU1OCBsZWdhY3ktdHJ1bmsKKzUxMzYgYzk0NTczNWE0YWQ3MGY0MjAyMTg1YzAyYmRjNzA1OGEwZWU1NDMyOCBsZWdhY3ktdHJ1bmsKKzUxMzcgZDI0MTkwYzY1YjUxZjAzNDFkNzkyNWVlYzllZGQ3M2VmZmZlMjg3ZiBsZWdhY3ktdHJ1bmsKKzUxMzggMGZiNjU1MjBmY2QwMTJhNzUwNTFlNWMxZGNhMGQ5MzBlYzViNjVjMSBsZWdhY3ktdHJ1bmsKKzUxMzkgNGM4MGNmMDJkMTU0MGM3ODk1MDQxZGU2NjgwMGU5YTdjZWJiZDFmMyBsZWdhY3ktdHJ1bmsKKzUxNDAgNDkzYjg3MWYzNzc1NDdjNmNlM2ViYzc3NzViNjljOWRkZWJmNjNhZSBsZWdhY3ktdHJ1bmsKKzUxNDEgMzE4MTcyZmYyZjE0YzY5NzljMDk2NmI5ZmUzOWRmMWFlMDVjMDE2ZCBsZWdhY3ktdHJ1bmsKKzUxNDIgMTA3YzE4MDA5MzdlM2Y0NzFlMzkzMmUzZjI0NjRiY2MwY2RjZWM4NSBsZWdhY3ktdHJ1bmsKKzUxNDMgMGI2YzhhN2U5MzNhNjZlZWFmYjY1YTdlZGNiNjZmZTJlZWMwNmZlMSBsZWdhY3ktdHJ1bmsKKzUxNDQgMGU5Y2FlMGI1MDcyZDY4ODIwZGQwOWY0OTdhYzIxYmVkMzJiZWM0OSBsZWdhY3ktdHJ1bmsKKzUxNDUgOWU5ZjIyZGJlZDFhZjA0ZTA5NzYxMGRhNjM5YzNjMjY5MDJhYjZmYyBsZWdhY3ktdHJ1bmsKKzUxNDYgZDQ2NDRkMzkyYThmZTY4YzQzYjNjNDFiNGM0MDhmOWIzODU0YmQ5NCBsZWdhY3ktdHJ1bmsKKzUxNDcgMmQ5YjE2NTI3MjQ3ZGNiM2EzNTdiMGMwZTE4ZDAyNmRiNWZhYmEzNCBsZWdhY3ktdHJ1bmsKKzUxNDggNjkwZTQ2ZjBiZjU5ODU1ZmNjODk5MjY2OWVmYzEwNjVjNDVmZTU3MiBsZWdhY3ktdHJ1bmsKKzUxNDkgMWE0ODFhNzVhZjQ1ZjEyOTI4NjMzYTIwMDdmMjM4NWFmYzc2ZjIwOCBsZWdhY3ktdHJ1bmsKKzUxNTAgODkyOTJmNmEyNThkY2NmZTdjMjY5NGFlNjhjYTEyZDA5ZjUyMmZiMyBsZWdhY3ktdHJ1bmsKKzUxNTEgMjEwODIxZmQ1NjUwOTQ3YWQwMDhjNjRmYmE5MGVkMGE1NmJkZWM2ZCBsZWdhY3ktdHJ1bmsKKzUxNTIgNGI1N2FmMWJhMjk3MTA2Y2Q3ZWM1OGI0MDE4ZDBkYzRmZDhmMTljOSBsZWdhY3ktdHJ1bmsKKzUxNTMgOWJkYzI3ZDE1MWJhYTZiNWQ0YmIwYjk2NTYxNzZlOTkzM2Q5OGJkZiBsZWdhY3ktdHJ1bmsKKzUxNTQgMzQ3Y2YwZTQ5MmQ4MTFkNTBjNWMyODBjN2Y2NTAxMzM5ZDZiOGE1ZCBsZWdhY3ktdHJ1bmsKKzUxNTUgNzMzNWM1YjNiNDNiZDI0NGIyOTFhNWFiOGJiOWY1NDEzMDc2NzlkNCBsZWdhY3ktdHJ1bmsKKzUxNTYgYzFmNDg4NThmMTg2MGZhYzMwZTY1NTg1NWNiMDllNjJlMDQzMjVhMiBsZWdhY3ktdHJ1bmsKKzUxNTcgOTI1ZDFiZmNkOTI1OTNkMGFhYTQ2MDllNjIxMzk4MjM3Zjc5OTBlZCBsZWdhY3ktdHJ1bmsKKzUxNTggZTFkMjNhNmI5MzBiODA3YTQ3ZWQwYmYzOTFkOWEwYTQzYjViODg1ZiBsZWdhY3ktdHJ1bmsKKzUxNTkgMWFmOTIyMGM2ZDE5ZDk0NmYxN2NiOWI5OWIyOGUwNGE0ZjViYjkwZSBsZWdhY3ktdHJ1bmsKKzUxNjAgMTE1N2UxNDI3MGQ2ODc2OWQ3ODk1OWI3MTJmNWI1MTMzYmNhNTNiYiBsZWdhY3ktdHJ1bmsKKzUxNjEgZTAzOTM2NTdmZmE0NzcxZGQzYWVmNGQ3ODBmZDUyMTQxZTViMTk0MyBsZWdhY3ktdHJ1bmsKKzUxNjIgMDYyMzVmZGMxYWFmM2JkYzc1NjY3MGVmZWZiNjlhMTRlMGYyMDAwOSBsZWdhY3ktdHJ1bmsKKzUxNjMgM2ZmYjMxY2M4YTliM2EwZmFjM2FlNDg4ZDM0NDEzMzYwNWMyNDdmZCBsZWdhY3ktdHJ1bmsKKzUxNjQgNTM4YWI4MmY5MWE3Mjc1NDE2NDgwNGNiM2U4MzlkNTQ5ZjA3N2E0MCBsZWdhY3ktdHJ1bmsKKzUxNjUgNmQ5M2I0YTBmNGNlN2M3ZThjNDY3ODBiMmE5NTM4ODlhNzljNDEwYSBsZWdhY3ktdHJ1bmsKKzUxNjYgMmY0MmUyNzM4MmU5ZDIzNjhhM2Y1ZjNkODAwZDkyNmUxODMyMTU1MCBsZWdhY3ktdHJ1bmsKKzUxNjcgMTJkOGM4Mzg1NzM1ZmNhYjNmYjU5YjY4MzNlZTQwNGRhZDczMzc3MiBsZWdhY3ktdHJ1bmsKKzUxNjggMTk4NmI4NjllM2ExMzEyMmIwN2E5ZDU1MDY0MmExZTA1YTBiODNhNCBsZWdhY3ktdHJ1bmsKKzUxNjkgZjEyZmYxMzBlMGI1ZjQyNTQ1OWYwZTcwYjY2MTVjMGRlNDQ5MjRkYSBsZWdhY3ktdHJ1bmsKKzUxNzAgNzk3M2Y1Mzg3MjZjYWFjZmU2NzY3NGU5OWM3YTQwYTFkZmQ2NzcyMyBsZWdhY3ktdHJ1bmsKKzUxNzEgOWVkNDVkYmYyNzY1OGEwYWY4OWJjNWMyYjRmNjA0YmZlZWUyNzJlMyBsZWdhY3ktdHJ1bmsKKzUxNzIgNGUwNzY5NDQ0ODhhYWI4NGViM2I4YjAyYTc5ZjhiMTM2MGIzYzgwMCBsZWdhY3ktdHJ1bmsKKzUxNzMgMTMwNmU3NjFhNjIzODM3NDBhNTlmNjM5ZjE4Nzc5ZGJiOGI2ODA0YiBsZWdhY3ktdHJ1bmsKKzUxNzQgMzczYzE2MzdkMzAxMDRlN2NhZmVlMWQyMWY1NjIwZWQzNDIwNGIyNyBsZWdhY3ktdHJ1bmsKKzUxNzUgNTAwMzIzNDM5ZWIzOWIzZjcwMGE0ODkzNzFkMjAxYjE1NDRhODMxMSBsZWdhY3ktdHJ1bmsKKzUxNzYgYjY4OWU2ZjkyZjE3YTExMTAwMTEyZTMzYzEwNDllOGQ2N2Q1Y2I4MiBsZWdhY3ktdHJ1bmsKKzUxNzcgOWZlYjBiMGI1MGI2MGM0MGZlNzUyNTI0MzM3YzQ2YmQ0NWNiMjcyYyBsZWdhY3ktdHJ1bmsKKzUxNzggNzQ3NDdiZmZiNmE0ZDI3Yzg2NDkwYTBkYTk2MjhlZjU0ODgyYjBhZSBsZWdhY3ktdHJ1bmsKKzUxNzkgY2Q5ZDg2ZWNjMTc1Mjk0YzZjMTlkODkzZDE0YjBlNGVjYjRmYzAwNiBsZWdhY3ktdHJ1bmsKKzUxODAgNzVhZmFhYzg1NTY3MDdjZjAzZDU3Zjk5YzU1NjcxYjRhZDQ0NmY0ZiBsZWdhY3ktdHJ1bmsKKzUxODEgMmEzMTg3NmY3MTAyOTkwNTZmMDJiMTNjODcwODVhZTZiODA5MTNiYSBsZWdhY3ktdHJ1bmsKKzUxODIgMTliMTE5NWEzYWY4NDdlMWE5NmQ2NDUyOWYzOGUzZTU4NTMyYjg3OSBsZWdhY3ktdHJ1bmsKKzUxODMgNmM4NjRhZDUxOWEzNjg0YWZhM2JjNzE5N2RiNWE0NDJlMmIyMTM0YSBsZWdhY3ktdHJ1bmsKKzUxODQgODg5YzZkYTdiNGNhNTExOWRmN2RhZjMwMjQzNmY2YjQ0MmIyNGQwZiBsZWdhY3ktdHJ1bmsKKzUxODUgNjI2N2E1ZjIyMmJmZGVkNWUzOTNlOWE4YmQxZmFkZGQ5M2ViMzUyNSBsZWdhY3ktdHJ1bmsKKzUxODYgYWJmMTE2ZGI1MjNmZTRkYjliOGZhZjAyMzY0MDk1MGIxNDc5MjlhYiBsZWdhY3ktdHJ1bmsKKzUxODcgMzY0ZDRhNTI0Y2VjODIxZGJjZTczZTY5MWM0OWVhMmVjYzdjODJhZSBsZWdhY3ktdHJ1bmsKKzUxODggYTVjZWIzZTkzZmExMjczNWVmMWExMGNmMjg1ZmMzNzhlNjU2NTg3NSBsZWdhY3ktdHJ1bmsKKzUxODkgYTBmYzk0YjNiYjIxMjcwNDJhMWQwYzZjNWEzOGFkOGZmZGI4MTU4MCBsZWdhY3ktdHJ1bmsKKzUxOTAgNmE5ZWNiMDVjNjc5ZWQ4YzRiYzU3MGQ3YmZhOWRlNTg3MmJmYWM2MiBsZWdhY3ktdHJ1bmsKKzUxOTEgODIyMjA0MWY1YTkxZDU0Mzg0ODk4YTUyZDQ3YzA4M2QyN2RhZTJkZSBsZWdhY3ktdHJ1bmsKKzUxOTIgZDAzY2NhZTE3MGVhZjI4MjljZjgzYmQ0OWU2N2IzMzU0YzFjNWIyMyBsZWdhY3ktdHJ1bmsKKzUxOTMgZTg4MGMwMTY0YWVjZTIyNmI2NGQ2NjczMmEzYzgxNDQ3OGM3Zjk0NiBsZWdhY3ktdHJ1bmsKKzUxOTQgYzI2N2UzMzEyMDMwOGEyYWUyMTljNTc3Y2M1NmVmY2EyMDkyM2E1NyBsZWdhY3ktdHJ1bmsKKzUxOTUgNWFmNmRiMWY2YzBjZGM0MmFkY2I1MDUxZjJlZDA4ZjU3MmY2ZjczYSBsZWdhY3ktdHJ1bmsKKzUxOTYgMTBlMTA1ZTRjZjljM2I4ZjA0NTBhZGI3OGE0NzgwZjBlZjM4ODhkZSBsZWdhY3ktdHJ1bmsKKzUxOTcgOWY4MmE2YmIwMDEwZGI2MmNiODg1MDhlOWU3NzI4YTU4MTBhNDU4MiBsZWdhY3ktdHJ1bmsKKzUxOTggZGFhMTUwYjNhNmU0M2UxMmIzZTE1OWI0ZTUwYzk1Zjk1YWQ0ZGFjNiBsZWdhY3ktdHJ1bmsKKzUxOTkgZGM2NGRmN2YxYWQ2OTAwZjU2MWQ0MmYyZTMwOTFlOTlkODVjMjIyMCBsZWdhY3ktdHJ1bmsKKzUyMDAgNjg2ZjRiZmI0ZGE2MjI4OWMwN2RlMmQwYTExNGI3NWNiMzg5ZmU2YyBsZWdhY3ktdHJ1bmsKKzUyMDEgOTAyNDBlODE5YmVjYjk5MWMyNjhlMzNhODczNzM1OWI0MmZjZWMwYSBsZWdhY3ktdHJ1bmsKKzUyMDIgMzdjNDhmZGU2MWI4ZWQ4NTYyZTYzNTA4YTVhZDgwMjQzYmQwYmRhYSBsZWdhY3ktdHJ1bmsKKzUyMDMgM2NmODk2ZDI0ZTUwZGJiNGY3NDAyYTEzNWUwNWY4Y2ZiNTc0NjZiZCBsZWdhY3ktdHJ1bmsKKzUyMDQgN2RmNmZjYjQyNmY1MTQ3OWI5ZTA1NzRlNmU1ZGRmOGJjZGVjMzQwYyBsZWdhY3ktdHJ1bmsKKzUyMDUgODBiNWM4MjI3MmEyNWMxZWY4NTEzMTRlMWJmOTJkMjg1OTQ0NmFlYSBsZWdhY3ktdHJ1bmsKKzUyMDYgM2UzNzBhNGIxMDNiZTIwNzljN2UyYjhiZGI1NTUwZjhhZWE3OTczNSBsZWdhY3ktdHJ1bmsKKzUyMDcgOTgyYTViZDZkNDZkMDc2NzBmMjA4YjhjM2YzNWQwODBlN2ZlMmVkMSBsZWdhY3ktdHJ1bmsKKzUyMDggYTgyNzgwMWVkOTYzMzg0ZWFiMTZmZGZlMGVlM2EzYzE5YzFmYmU5OCBsZWdhY3ktdHJ1bmsKKzUyMDkgZjE4NzliMWEyYzJhZThkYjdmMzk1MDhjYmQwMDk1Yjk0YTgwOWRkZCBsZWdhY3ktdHJ1bmsKKzUyMTAgNGYxYjBjYzczNTA3ZDY3Mjk1OTk1YzU5MGU2MDU0YTAxODRiZWFmZCBsZWdhY3ktdHJ1bmsKKzUyMTEgM2Q1ZWMxYzIyMDU1MDIyMTU2ZThmZWU5MzA2MzVkZGU2MzA4YjE0NCBsZWdhY3ktdHJ1bmsKKzUyMTIgODUzYzQ4Njg5M2I4MmNlOTVjZWMxMGJlNGY4ZmVhN2Q0ZTQxNDkwYSBsZWdhY3ktdHJ1bmsKKzUyMTMgZTQxNjY5YTFkZWEwMjRkOWJkZTAyMmM3ZjNiNTliM2MyNTBlMzM3NSBsZWdhY3ktdHJ1bmsKKzUyMTQgMzljZDI1Njc4YjQxYWNkNDE2NDM2ZTE5MGFlZmQwYTVlNDc3MjNiZCBsZWdhY3ktdHJ1bmsKKzUyMTUgOTUxNmJhZDk3OTYxMzEyOWVkNjBmMDcxYjM2OTcwMjg2MjYxMzYxOCBsZWdhY3ktdHJ1bmsKKzUyMTYgMGFmMDFmM2UwNmNjOWU0YTMzNTVmOTU1NTMxZWMyZGY5MmRmNmRiMSBsZWdhY3ktdHJ1bmsKKzUyMTcgYWU2NDAwM2IyYTc1NjUxYzRkZTdhYmEwZjBlYTU2N2IwMmM5MjU0OSBsZWdhY3ktdHJ1bmsKKzUyMTggMzU0ZWJkZGQzNjJiMDRjNzZjZTM3NTIxODk4ZmZkZTBiZmU2ODI0MyBsZWdhY3ktdHJ1bmsKKzUyMTkgNGI3NGIzYjQzMjY5YjcxZjRiNjYwZjg1YmJlYzJkMzM2YWRkZjVmZCBsZWdhY3ktdHJ1bmsKKzUyMjAgYTEwODdhYTY0MWNkOTVmMGYwODAzZjAxNDE2ZWIwMmU3YzA5YzYxOSBsZWdhY3ktdHJ1bmsKKzUyMjEgNDM4OWE2MGZlZGNlNjYxZmRhYjc3MDA3MWY4YThlNDRmOWNiMjY4YiBsZWdhY3ktdHJ1bmsKKzUyMjIgNTIxNTYzNTJmZGQ2ZDM1Y2RmOWYzMjRhOGRjODVjOWQ4NTM5MjBlOCBsZWdhY3ktdHJ1bmsKKzUyMjMgNmNmZDY5NTg1NjM2ZjAyZWZlYzM5YWNlMzVmYzE0YmQ4YjgxMjJkMiBsZWdhY3ktdHJ1bmsKKzUyMjQgNjlhYmE2ZDlkMzc4MzUyNmUzNGFjZjc0ZDAyMGQyOGU2ZWY4NmFlNSBsZWdhY3ktdHJ1bmsKKzUyMjUgYWFmOTAyY2RmZGM0YTJhMmQ3YmE1YjMxZWRjY2E5OTM1ZTA0NDkwYiBsZWdhY3ktdHJ1bmsKKzUyMjYgMWI5ZTkwMzUzNTI5MTE5MjE2MTMzYmYxMmZjMDRiNzM1ODQ3NTljNiBsZWdhY3ktdHJ1bmsKKzUyMjcgYjQwY2FiZmRjOTFkZTI1YmNlZmVjZjI2ZDhhNzk4MmZhNDZiMTYyNyBsZWdhY3ktdHJ1bmsKKzUyMjggYmUyMWMzZTBjYzAzZjQ4ZWI2YWE0YTIwYWQ0YzVjNDEwMTYyZWExMyBsZWdhY3ktdHJ1bmsKKzUyMjkgYjk1NDg5NjBmOTQ1MGM5YWQwOWJkN2JkM2NhYjljZWI5ZjM5MWIzNyBsZWdhY3ktdHJ1bmsKKzUyMzAgYWM2YzhiMTIxOWU2NzFjZDQ1NWY5Nzg1YTU1NDQ2MGFlMmQ2ZTQxZCBsZWdhY3ktdHJ1bmsKKzUyMzEgNmQ4ZDk4MWVmNmM0MTUxYzM2Njg2NWQ2MWI0NWQ0YzYwNDE5ZTllZSBsZWdhY3ktdHJ1bmsKKzUyMzIgZmVjYzkzOWY0ZDU5NTdjZmI3YjFlNjBiNWQ1NDFjNWM5OTc4MWYyOCBsZWdhY3ktdHJ1bmsKKzUyMzMgOGVjZTkyMjdmZGUxMDRkOWZlZDJhYTI3YzMwOGViMmQyOWYwOTc2MiBsZWdhY3ktdHJ1bmsKKzUyMzQgYTBhNGFmYTM5ZDdhMDFjZDRmMzY1YTRiOGJlYmQxNWU5ODhjZTY4YSBsZWdhY3ktdHJ1bmsKKzUyMzUgNmExNjU2ZGI3ZGRlZWNiNTlmOWZmZjJjZWQ2YTYyNjJiOTU0MzQxMCBsZWdhY3ktdHJ1bmsKKzUyMzYgZGMyYWRmNzllNTIzZTEwMmVjNTcyZmU4YzQ3NDc5NDU1ZjY0MTRiNyBsZWdhY3ktdHJ1bmsKKzUyMzcgMGU1ZGFmYjg1ZmJkMmJiNjNiNzJkMjlmZWI5N2U5YTY1OTg5YWNlMCBsZWdhY3ktdHJ1bmsKKzUyMzggMzU0MzJjOWE4NzRlMmMwZDFjNmZlZTk2Y2U0YjVlN2RlZjEyNjE1ZiBsZWdhY3ktdHJ1bmsKKzUyMzkgMWEzZmYwMTQ4ZGVjZDhmZjY0Njc5M2U0YTY1NWExNjQzODc1NjkwOSBsZWdhY3ktdHJ1bmsKKzUyNDAgYjczNWQzMzg2NjUxYTA1N2Q3YjBiOGM5ZGQ1NmIyMzAyNDllOGViYSBsZWdhY3ktdHJ1bmsKKzUyNDEgZmQ3NzdhZjY3YzIzMTBkM2NjYTkxODMyZTQ5ZWVjYWYwMDIzNTVlZiBsZWdhY3ktdHJ1bmsKKzUyNDIgNWJjMGVkZDViM2Y5MzJiNDdkNDhmNjAyZGFmZmIyNjY3ZjhiMzZlZiBsZWdhY3ktdHJ1bmsKKzUyNDMgYmYxZGVkNzU5NjJkNjIwNjE1NTc1ZGYxMTY0ZTc5NzVhYTlmODU2MCBsZWdhY3ktdHJ1bmsKKzUyNDQgMTdmZGVjMmZiMzA5YTkxZWIxYWVlY2YxNTk1ODAyMzhiODE0N2RhZCBsZWdhY3ktdHJ1bmsKKzUyNDUgYWY3ZDBmZWEzZmIyYTJjMmFlMWUyMDQ4NzVlZWRjZmE2ZGVlMzk2ZSBsZWdhY3ktdHJ1bmsKKzUyNDYgNDExM2Y0ZmJhYWU1MzcyMDJkMDlhMTZlMjk0ZGI5ZDdmYWQzY2I4YiBsZWdhY3ktdHJ1bmsKKzUyNDcgMTIwM2U1ODQyMjU1Y2U2NGVmMmYzYmE5ZmEyNzYxNDFlMjk0MzhiNyBsZWdhY3ktdHJ1bmsKKzUyNDggYTVkMzYxZTJiMmUyMGM2ZDBiY2Q1MDU5M2ZjODE0Yjg4YTQ2MmM0YyBsZWdhY3ktdHJ1bmsKKzUyNDkgOWVjNDRlMzdmNmIxMzNjMzZhYzg2N2JlMzA0NDVhMmEyYzNiMTU5NCBsZWdhY3ktdHJ1bmsKKzUyNTAgM2I3ZmE1NmEzYjliY2JmYjYzMjAxNzM5ZDA4NzQ2Y2Y4NWQwNGU1OSBsZWdhY3ktdHJ1bmsKKzUyNTEgNTBiMmY4MmU2ZjBlYTQ3YWRiOTcyMTMzMTg2ZTAwOGM2MzA5YzcxNSBsZWdhY3ktdHJ1bmsKKzUyNTIgMDZmMjI4ZDYyMzZlNGNmOWFkZjY4YmU4MjY0ZjU0ODZiYmYwN2Y5YSBsZWdhY3ktdHJ1bmsKKzUyNTMgN2MzZTRmM2VlMTUyZjg4YzQ5MTY1M2U5ZDcwMjVmMTQyMDE1OGEzYyBsZWdhY3ktdHJ1bmsKKzUyNTQgOWFhYjRlYjJiM2Y5ODM3YjhkZDQ4OGM2OGRiZTkwMWI3ZDgyODllZCBsZWdhY3ktdHJ1bmsKKzUyNTUgNDE1NjU0NTZiYzIyMWNjYzU5YWRiNGFiYWI4MGRhNTVhMDk3MjZhOCBsZWdhY3ktdHJ1bmsKKzUyNTYgMjRmYzA2MTZhNjk2YzgyOTk0OWYwZmUyOTY3ZGEwNWFhOWM5ZWE2NiBsZWdhY3ktdHJ1bmsKKzUyNTcgYmFmMGI5YjdjMmE1YWE2OTM4Y2Q2YTk1OGI1YTgwMjMzODg3ZWQyMyBsZWdhY3ktdHJ1bmsKKzUyNTggYWYzYWFiNmIwN2M0M2E5NTRlNzJiYjUxNDgxM2M1NDJjMDU0NDFhMiBsZWdhY3ktdHJ1bmsKKzUyNTkgYjg5MzdlNzRmZGY1NTFjMDMyMTIzMmZiMzRhMzBhNjU5OTBkNGVmZSBsZWdhY3ktdHJ1bmsKKzUyNjAgODIzZjNhOGVjZmU0MTkzNDcwMWJjZjM4YjQ3YzEyY2Y4Y2M4OWE2NyBsZWdhY3ktdHJ1bmsKKzUyNjEgZWEzOGMzNjNkZTU4Yjc1YjQ5ZTAzNmRjMDI3ZjExZWNlNWE3NmViNSBsZWdhY3ktdHJ1bmsKKzUyNjIgZWJjMTcxNGRjNzM4YmRkYzI0NDQzMTQ4NTcyODI1MDlhNTQ0YTk0YSBsZWdhY3ktdHJ1bmsKKzUyNjMgN2YyYzBlN2VmODQyNjJjNTk1ODY0NjM0MmY4NjhmMzMzOGNhYjBiZiBsZWdhY3ktdHJ1bmsKKzUyNjQgNTljMmFjYjNlNzAyNTQ2M2Y5OWRmZTNhYTdlMzVlYzM5NmIwZTU4NCBsZWdhY3ktdHJ1bmsKKzUyNjUgNGE5OThiMWEzMzFmMGFlOWYwZjMwYzdiMWUzODc1YTA1NWNhNDg3ZiBsZWdhY3ktdHJ1bmsKKzUyNjcgYWIzZGNhOTdmZmJlYjYzNWExNmVjNWVkMzhmZjQ1ZjYyZjg4ODA4ZiBsZWdhY3ktdHJ1bmsKKzUyNjggZTkxMWYyZmIxNzljMmMzMmNhZjkyMzZiYmUyMmNkYzIzYWQ1YTFhMCBsZWdhY3ktdHJ1bmsKKzUyNjkgNzUwYTJkZDhhNDM3YmZjOGJkMzE5OWM4ZDcwMDNjMmI0NTQ5Y2QxMSBsZWdhY3ktdHJ1bmsKKzUyNzAgYTIzNjNiNmU5Yzg2ZTlhYmM1MzY5M2I2YjU5ODcwNzlkZWEyZDU2MiBsZWdhY3ktdHJ1bmsKKzUyNzEgNjBjNTc3NzczNjZmNzU1YTk3MTQ4ZmI1MGMzYWJiMGQ5ZDhkYjhlOSBsZWdhY3ktdHJ1bmsKKzUyNzIgYjdhMDZkYjg1Y2FmY2U0MTNkMGM1NWRjZDkyNWFmMWQ2Y2YyNzgxYiBsZWdhY3ktdHJ1bmsKKzUyNzMgZDc2YTcxNGQxY2VhYWFkZTAwNzgwODE0YzNjNzJiYjkzMGQ1NDZhNyBsZWdhY3ktdHJ1bmsKKzUyNzQgNWNhNWQ3N2FmZDI4YmFjNzM3ZWIwYWFiOTc4NWU0MzFlZGRiY2I0ZCBsZWdhY3ktdHJ1bmsKKzUyNzUgOTMxOGFjNTE2OTFlNmQ4NjM4NGZmZDQ0MzBkMjE2NGEyNjEwZDM0NCBsZWdhY3ktdHJ1bmsKKzUyNzYgNmZmY2JlMGZlOWQzY2QwMGYyZmUzMjk4MzY4NzYzOTExOWMyZjliOCBsZWdhY3ktdHJ1bmsKKzUyNzcgZmMyMTkwZWMxYmVhZDI4N2JjMDZlMTgxMTMyNDZiMDZmOWQ2OWYxNiBsZWdhY3ktdHJ1bmsKKzUyNzggMDdmYzRmZWZiNjgzNzU5NTFlZTc2MGM4YTUxNTNjMjM0NjcxNGRlYyBsZWdhY3ktdHJ1bmsKKzUyNzkgZmIzZGFmOWIyNDU2ZGMxYTNkOTlmNTZmNzhjNWU2MjcwZWVhZjFlOCBsZWdhY3ktdHJ1bmsKKzUyODAgOTk5YjViZGMxOGNlOTk2YjAyYTA3NmFhN2MwYmYwYTk1M2FiMTQ1MSBsZWdhY3ktdHJ1bmsKKzUyODEgYzZmZTgwY2U3YzIwOTNhMWFjYTU1ZGYwYWEyY2NlMDVkZDkzOTliMiBsZWdhY3ktdHJ1bmsKKzUyODIgMWU4MmRkNmRmZTJlZjQxNmY0YjhhMjhhZjg0ZmY5ODQzYmNiYTAyZiBsZWdhY3ktdHJ1bmsKKzUyODMgYzRjMzlkMTcxZWMzYjA2M2Q2ZGJkYTI2OGMyYjFmNTVmOTU3ZTI4MiBsZWdhY3ktdHJ1bmsKKzUyODQgOGI4ZmIyNGQ0ODM3OTRmMmU5MzAzMTM5MmU5MzIwODMxMWQ5MzM3ZCBsZWdhY3ktdHJ1bmsKKzUyODUgYzliNzI5N2EwNzU4NzIwYjdjYTQzMjVlMGU0MjE3YWIxMjljMDc5OSBsZWdhY3ktdHJ1bmsKKzUyODYgODIyNWM2NTgxYjNkMzZlMjVlYTEwNmQyNDU0OWY5OGIyOTk0NGI4NiBsZWdhY3ktdHJ1bmsKKzUyODcgNjhkN2VhZTZjYmQ2YzU2NzUxMDQ5ODc5NjE4YmFiYTUyNDk1MmIzZSBsZWdhY3ktdHJ1bmsKKzUyODggNDNjY2ZjZDk4ZTgwNmVkYWQzZmFhYTZiNGY5NWM0YTdiYjMyN2I5MyBsZWdhY3ktdHJ1bmsKKzUyODkgNDA3Yzc4NDZiODg2Yjg1OGJmODgwMzg0YTJmMmIzODZlYTZkMjJhNCBsZWdhY3ktdHJ1bmsKKzUyOTAgMjgyYjBiNGMxZWVhNTkwYjkwYTVmZjEwOWYzNmMxZDYxZWNlNTM3NSBsZWdhY3ktdHJ1bmsKKzUyOTEgNjVjNzEwNTg2OGY4ODk5NjRlOGU0N2UzODEyZTY3MmIzMjFlMjkzZSBsZWdhY3ktdHJ1bmsKKzUyOTIgYmViYjBlYTdkZTIwMGNlYzNiZmEyZGZlYTNjNTgzNjBiZjg1N2ZhOCBsZWdhY3ktdHJ1bmsKKzUyOTMgY2Q5ZTYxMzUyNDRhNTcwOTBhNjcyOWYxYjUyMzg4MzY0NWQwOTUxZSBsZWdhY3ktdHJ1bmsKKzUyOTQgZmYxZmFhNGNjMWRmYmM4OWI3YWZmODkzOTBlYTM2NGJhZjAyMDc2YSBsZWdhY3ktdHJ1bmsKKzUyOTUgNTlhOTY4OWMxMWE4YjAxNDUxOGNjNDMwYWMyNWU2YTdmMjFiMTU3ZSBsZWdhY3ktdHJ1bmsKKzUyOTYgOTQzZTFjNDgwNGQ4MDA2MzVhYzk3NjUzZTFmYmMzYmE5MDUyMDMwZSBsZWdhY3ktdHJ1bmsKKzUyOTcgYmQ3OWNkNzY4ZmY4ODBlNzFkZTg2MTYwNzlmMzIwYzlhNmY4NDUzNCBsZWdhY3ktdHJ1bmsKKzUyOTggZWVkZDZjMWYzYWU3ZTRjYmQzNmM5NmY4ZDE5OWExMGIyYzU5ZWJmNiBsZWdhY3ktdHJ1bmsKKzUyOTkgMWZkOGYzMTZjYmU5MGY4OTQwMGM4ODUzYjkxODcyMzJjMDBmNzcwZiBsZWdhY3ktdHJ1bmsKKzUzMDAgMTY0Mzk5N2YxNzE4YWE2NGY1MzIwZTRjYzc3ZWYyNTIzOWY5NjEyMyBsZWdhY3ktdHJ1bmsKKzUzMDEgNGRlYTNmNTU0NWNmM2Q5MzUyZmU0MTk5MDlkNzM0NDA1YzZmZWQzYiBsZWdhY3ktdHJ1bmsKKzUzMDIgN2M3YjM3MDRhNjhmYTIxMTBjMDcxM2EyODUzNWMxMTdlYmU4YzliOCBsZWdhY3ktdHJ1bmsKKzUzMDMgZDkyZWY5NGFmZWZiZWNlZTY2YjgxMTEzOTE4NDhlYjI2MGYxNzA2NSBsZWdhY3ktdHJ1bmsKKzUzMDQgYjk4OGE0YWNhNmY5NjBhMjhiMjk1Y2M4YmExOWU1NjJkODkwOTA1MCBsZWdhY3ktdHJ1bmsKKzUzMDUgOWIxYTMyNjcyN2RmZDc3MGFhZWEwN2QwNGI5ZjRjMWU2ZjhmMzhlYiBsZWdhY3ktdHJ1bmsKKzUzMDYgMmM3M2M4YWI4YjgyYWU4MmQ0NWY4MWU4MzA0MzhhNTgwYjg2ZWM4MSBsZWdhY3ktdHJ1bmsKKzUzMDcgZDUzOThhY2FmYTJjY2M5M2VlYjE1NjNhNWQ0YTBhZTFlOGIxMzI4MSBsZWdhY3ktdHJ1bmsKKzUzMDggNjQ5MjhmNmE4ZTgwZTA2Y2UyNDAxOWI3ZGQ3YTYxYmU4MDQwYWJlZiBsZWdhY3ktdHJ1bmsKKzUzMDkgNDIwODc0ZjdkOGJkMWZmMDQ4OWI0NmEyZTE5NGZlYTM4MGFmNjIyMSBsZWdhY3ktdHJ1bmsKKzUzMTAgOGQ5MmEzYmI5YzFmZmFkY2I3YzIxYTFlNWEzZGVlMjQ5Yzk4Yjc3YyBsZWdhY3ktdHJ1bmsKKzUzMTEgMDI2MWJmNWIzODE5YjAzZDgzZjI1NDU2Mjk0NzI0NDYzNDYwNDAyNiBsZWdhY3ktdHJ1bmsKKzUzMTIgMDUxYmFjYWI1OWFmZTI1ZTMwNjk4M2ZlNDBiNjFkYzE1MmY4ZmJhNSBsZWdhY3ktdHJ1bmsKKzUzMTMgZWFlNGIyYmE3MjJlYjRjODRjM2RlZTllMzE0ZDE1ODlhZGE1ODNhMSBsZWdhY3ktdHJ1bmsKKzUzMTQgNTYwYWNjMjVmODk2NjAzMzJhMmRiMDY2OTMxYTdmMDRlYTA4NjliZiBsZWdhY3ktdHJ1bmsKKzUzMTUgNGY2ZDVmZTE5ODEyMmYzZDYyZGQ2NmFjOTZhNzk2ZTE2ZjRkMjMxZCBsZWdhY3ktdHJ1bmsKKzUzMTYgOTdjZmM0NmUzMzAyYzE2NmQ1N2JkMzVhOWI5M2NjYWIyZDQxOWVjZCBsZWdhY3ktdHJ1bmsKKzUzMTcgZTM3OTVkYjRhZGY4OThmYzIzZTg1ZTJhNWYyY2E2ZjE0NGZiYTA4YyBsZWdhY3ktdHJ1bmsKKzUzMTggYmVlZWZmZjFjNDQyNjUzMzY0MjFmMGRhZmM3ZDRiOThmZThhNzNiNCBsZWdhY3ktdHJ1bmsKKzUzMTkgMWVlZWJhMDlhMzA2NDk3MWFhNmQzZTFjY2I1NGI5MzM4ODJkZmVjMyBsZWdhY3ktdHJ1bmsKKzUzMjAgZDQyOTQxZDNhOTVmNDVmNjYyYjQ3N2I3NjNjNTgzYWI5ZGMyZTczMiBsZWdhY3ktdHJ1bmsKKzUzMjEgZGQ4YTMwZTVmNzQ0MzRjMjg5ZTY1MTFjYTY4MzFmMDQ1ODIyNjBkNSBsZWdhY3ktdHJ1bmsKKzUzMjIgZTZiZWMxNDlhOGQ3MjM5N2VmNWUzYjlkZWI1MWM5MGM0YzBlZjIwMyBsZWdhY3ktdHJ1bmsKKzUzMjMgYTdhZjk3MGE5NGE0MjcyYmNjMWY0ODBkNTQ0NGM4ZjFjMTRlYjgyNSBsZWdhY3ktdHJ1bmsKKzUzMjQgZWViYmRiZWU1NGY5MDIwN2Q2ZjM5ZjJkNGY3MzM0ZGM4MzFhMjU3MCBsZWdhY3ktdHJ1bmsKKzUzMjUgZWIxZWQ0ZDg0NjI5MGQ1MjljYTE4N2FjZTljOGM0YWJkOTFiM2M2ZCBsZWdhY3ktdHJ1bmsKKzUzMjYgYmEyYjMwOTcyZmZlYTczNWU0Nzk1YjljZDZjYTI2MmQ0ZTc1ZDk4ZiBsZWdhY3ktdHJ1bmsKKzUzMjcgNmFlOWIzNzdlNTIyYTRlZDAyMGExOGI1Njg4OWU1MzEyZjBiMTMwZSBsZWdhY3ktdHJ1bmsKKzUzMjggZGM2YjNlNzZjY2U2NjQyNzc3ZTA1ODFkNDk2MzljYzFkMDBhYjBlMyBsZWdhY3ktdHJ1bmsKKzUzMjkgZGY4Y2VkYTg0NTQ1ZTc1MDNjMDhjZmFlZGE1ZjNlYWM3NTVlNTcwYSBsZWdhY3ktdHJ1bmsKKzUzMzAgMTBlMDA3YWVmMWNmZjEzMGE3ZmFlNGMwNjFmYzY1ZmZhODQ3MzllYSBsZWdhY3ktdHJ1bmsKKzUzMzEgNWY5NTE5MTJlOTk1OTBjYjRmMWYwOWNlMjJlZjRlZjU4NTFkZGYxNCBsZWdhY3ktdHJ1bmsKKzUzMzIgZDQwMjkwZTQyNDU1NTZlOTU3NDNhMDZkNGE1NDFhNzljZWViMDc4NiBsZWdhY3ktdHJ1bmsKKzUzMzMgMTQxMTFkNjY1NzdkZDU0NjRhZjdlODk5MjMxNDY0NjM5MGRhMWI3MiBsZWdhY3ktdHJ1bmsKKzUzMzQgYTE2OWU2ODczNGZmMTBlYjE0Zjc2NGU5ZDZkN2RkZTc3YmI4ZGY0MSBsZWdhY3ktdHJ1bmsKKzUzMzUgZjY1N2Q2NzgxMmFmYWU4ZDAyNThkYTQxNjA3ZGQzZmNmZjU5YzRjOCBsZWdhY3ktdHJ1bmsKKzUzMzYgYjlhNjI1MDFlNzZkYzg5ZTk5ZWJmYjJkNjg2MDIxYzQxNTI3MTFhOCBsZWdhY3ktdHJ1bmsKKzUzMzcgNTIwZTE4NTVhMjRkOTBiMjFkNWNkYzJjNjYwODM5YTlhZmZiMzE2ZSBsZWdhY3ktdHJ1bmsKKzUzMzggMDUzNDAyNWNlZmU1NTZmYWM3ZWMzNGQ0NzkwMzllY2JiYmY1MmM3NiBsZWdhY3ktdHJ1bmsKKzUzMzkgZDNiMDdiYTNlMTJkZjNiODI3NjE0NTFiMzBjMzg3YTZjOTZkYmQ0MCBsZWdhY3ktdHJ1bmsKKzUzNDAgMzE1NzYwYmEwMDQxZDA0Y2JiYjc1ZTMyMWQyODZkNGEzN2ZmZTkyNSBsZWdhY3ktdHJ1bmsKKzUzNDEgOTI3ZjQ4MzlmYmZhMTQ4YzU3NTc4MDAzOTY5YzczZGJjODczYmI5MiBsZWdhY3ktdHJ1bmsKKzUzNDIgNzE1ODRmZTc3NDljMzVmZDhlYWY1NzdlZTU2YWJjYjM1NzVjMWFlNyBsZWdhY3ktdHJ1bmsKKzUzNDMgODUxNDBiMzU0ODkwMWY4Nzc5MzU5OGQ5ZjIwOTRiZGJkZmJhZWQ3YSBsZWdhY3ktdHJ1bmsKKzUzNDQgYmVlZWE5NzU3ODc5ODk3ODk5YmYyNDc4ZGIxZTJkNGFiMTgyMDI2YSBsZWdhY3ktdHJ1bmsKKzUzNDUgNWE1MjE5YzhjMmU2NzRmYzQwZmJmY2JjMDcxYjA3NmVjMWJhMzI0OSBsZWdhY3ktdHJ1bmsKKzUzNDYgMzYzN2RhNGM5OGNiMzEwMTQ3ZjA1OGVhZTM2MGRlOTg4MzJmZDMwOSBsZWdhY3ktdHJ1bmsKKzUzNDcgNmYxZGRmMTEzOTgyYWRhMThhNmIzOGI5ZTdmZmU3NjIxNjg0ZjNiMCBsZWdhY3ktdHJ1bmsKKzUzNDggYTBlODI0NmQ1MjM3OGQ1MTg5MWU2MGEwNjlmY2ViYzZhYTI3MTlkZiBsZWdhY3ktdHJ1bmsKKzUzNDkgZjg4YmNjYjU0OGVmNGMxNTU0YTRiODQxMTcwMTI3YTA2OGU2MTY3YiBsZWdhY3ktdHJ1bmsKKzUzNTAgNTFjOWNmZmYzMWYzZTE3ZWEzNDcyMWIwMDBiZjZhYzgzMTU3ZGEyYyBsZWdhY3ktdHJ1bmsKKzUzNTEgZTAwNmVkODhiNGFhNDY3ZGVkN2JhYTA2MDE5ZDU5ODJkMzJkODJmMSBsZWdhY3ktdHJ1bmsKKzUzNTIgMzYzYWY3ZTNlZDJkMjNjYjc5YjU5NzJiZTc3YmEyZmNkNTgyZmQ0MSBsZWdhY3ktdHJ1bmsKKzUzNTMgMjFlMTA1NDYwYTQ5OTllOGJmMTdhYjEyMWY2ZjBlZmZiNzQ1ZTU0MCBsZWdhY3ktdHJ1bmsKKzUzNTQgZWMwYjQyODg5MjQzYTdmOWU2YmM3NTY4MjAyM2JjMzg3OTFlYzFjNyBsZWdhY3ktdHJ1bmsKKzUzNTUgNmFiZDE0NDg1ODg0ZjYxYjhkMTE4YjZmMzE0MDVmM2QxZjExNjg4MiBsZWdhY3ktdHJ1bmsKKzUzNTYgZTUxM2YwZDY1MzY4YzFlNTgxYWQ2MTZhZmQ0ZTkwYzk1MzAzMmJmMiBsZWdhY3ktdHJ1bmsKKzUzNTcgMDRlMTY5MGZiNGQxMTc0OTYyYjM3YTYxZGM4MzM0OGZhNDNmM2RlZCBsZWdhY3ktdHJ1bmsKKzUzNTggOTY0ZDc2ZjQ5YTVlY2E5NWU4ZWQyMzU1OTdlNzdlNGViYWQzOTE5MyBsZWdhY3ktdHJ1bmsKKzUzNTkgMzNiMTU0YjZjNjFiYjlmZTllNDhiMzA1NzU0MTUxZDY4MmMwODFlNCBsZWdhY3ktdHJ1bmsKKzUzNjAgNDUwYWQ1NDk2NDA3NzAxZGVmYzgwODUxNWRlYmFiMDMxMGJjYzI0OSBsZWdhY3ktdHJ1bmsKKzUzNjEgNDA5NTc4MmM5NDBlYWM0MGU4Y2E1ODE0MGIwNmQ0OTk5Y2NhYWIwMyBsZWdhY3ktdHJ1bmsKKzUzNjIgODFiNDEzMjRkMjZlYjhlNDZjMTY0OTNkMTA3MWE0NDNmYjA3MDdkMCBsZWdhY3ktdHJ1bmsKKzUzNjMgZjBkOWY4MDBhNGFhYzdhZGExZWI0YmUxZjdhOTViZDA4ZDQ4MTBiNyBsZWdhY3ktdHJ1bmsKKzUzNjQgNGQ2OWZkZWU5ZjVkNDI5YTg0MGExYzE2MTI3MjAzMGEyMTk2OTdlMiBsZWdhY3ktdHJ1bmsKKzUzNjUgNTZlNjI4YTc3YzhkNThhMzAwOTMzZGY0YmM0ZDRmM2MzNzQ0Nzk1NiBsZWdhY3ktdHJ1bmsKKzUzNjYgNjVmMDZmYzM5OTYwMGIwNWRhNGYxYmZhMTk2ZDk2NWNjY2IxNDhiZiBsZWdhY3ktdHJ1bmsKKzUzNjcgMGFjYmQ4NWJjZGJhMzY1Mzg4MWE0YjAwOWFhNjQ2ZWE1YjBkNDNhYSBsZWdhY3ktdHJ1bmsKKzUzNjggNTdlYzI0ZTBmMzVhODBmMDI2NWZlOTc4MzRlMmU2YzBlY2JmMDM3YSBsZWdhY3ktdHJ1bmsKKzUzNjkgMTM1ODFiNDE3ODM3Yjg0NWJjYjkwOTA2MDlkYjlhNzMzYTlhNmRmOCBsZWdhY3ktdHJ1bmsKKzUzNzAgNzM4Yzc0NjE1YWM0ODk4YWNkY2YwM2RmN2ViY2Y5MmIwYjMwMWFhNiBsZWdhY3ktdHJ1bmsKKzUzNzEgMDI0ZmRkOWNjZGYyNDBiZDU0ZmViZWFlMTJmNDU0NTEyY2UwNzc1MCBsZWdhY3ktdHJ1bmsKKzUzNzIgMGFmZDQyOTYwYTFmZDM2MGIwZjk2ODFhMTM2ZDY2ZTg4NjlhYjNjMSBsZWdhY3ktdHJ1bmsKKzUzNzMgMjE0MzVhMGI5YjExNmE0OTgzZjhmMzVlZTNiYTZhMGYzYjJiYWU3NiBsZWdhY3ktdHJ1bmsKKzUzNzQgODk1N2JjZWJmMTJjNGZiMjk2YWZlMjQzNWUxMDJlZWFmOTBmYWE0MyBsZWdhY3ktdHJ1bmsKKzUzNzUgNjE5ZjMxNjU4YjNiYTdiMWFhMGYzMDFjNDlhMzU4N2JjZDhjNjQyOSBsZWdhY3ktdHJ1bmsKKzUzNzYgZjliMTA2OWEzZTI2NWQ5MGRlZmJjODAzNzYzZGY4MWViODdlYTQwMCBsZWdhY3ktdHJ1bmsKKzUzNzcgNWEyNjEyZmI2YzBlMzFiMDdlNjIzYjVkNDZiNWEwM2QyMjdkMGFmOCBsZWdhY3ktdHJ1bmsKKzUzNzggNDI5ZDdlMWIxZjJiOGMzNjgyY2I0OGZkYmIxZDdlMGUwMGJmMzIyYyBsZWdhY3ktdHJ1bmsKKzUzNzkgZGY3YjE1YzFlOGI3OTZmZjRiYzI3MWNlOWQzNTUyZGEzMTU3Mjg4OCBsZWdhY3ktdHJ1bmsKKzUzODAgNTFkZDA2NWE5N2E2MTRlYzIwYjA4MTlhODYwM2ZlNDQwMzFiM2QzZiBsZWdhY3ktdHJ1bmsKKzUzODEgZTE2ZTE4Yjk2MjZjOGYyZWVlMWFhNmI3OGY3OGMwOTgyZDhlZTdlNyBsZWdhY3ktdHJ1bmsKKzUzODIgNDUwOWRmZTE5YjY4NjBkZjFhNTI4MGQ0ODlmNGE0MTY2M2RhZDE3NyBsZWdhY3ktdHJ1bmsKKzUzODMgNzY0YjBmYzg2N2E0NzVjN2I3NDg4MTcyZTAxYTgzM2U4MDFlZTFiNiBsZWdhY3ktdHJ1bmsKKzUzODQgOWZhZDAyOWY4MzhmZDFiOTJmMzM2ZTlhYjQzNmM2YjBiOTUwMmZjZSBsZWdhY3ktdHJ1bmsKKzUzODUgY2ZhOWIzYTg0ODcyZWFmOWQ5YjI2NzFjMDE0NGUyY2ZkMTJmNjdhNCBsZWdhY3ktdHJ1bmsKKzUzODYgODExZDlhOThlMThhYjQxNjI3ZTM4YzFlOTNiYzVlMzJmNTEyMWEyOSBsZWdhY3ktdHJ1bmsKKzUzODcgMTc3ZjU3NTcwOGJiMDkwYjE4ZDE5NjE0NTExNjRjNDVjMDlkNjNjMyBsZWdhY3ktdHJ1bmsKKzUzODggMGM1MGVjOGU4MzU4ZThkNGEwNzY5ZjIyYjc0YTRlNTcwZDg1N2M2MSBsZWdhY3ktdHJ1bmsKKzUzODkgNGYwODJiZTU5MDJhZTE1Mzg2ZTE2Nzg1NDhiMzllMTM3ZGYxZTRmOSBsZWdhY3ktdHJ1bmsKKzUzOTAgMTc2MzU2MDRiZGNlMTVhNGNiMmNjNjE1OWQwNjYxZmQzOGZiNjAwYiBsZWdhY3ktdHJ1bmsKKzUzOTEgNDQxNDVlZWI2MTAwYzljMjVlYWUxNjg3OTM5MjNhNjQxNjI4MDNlNiBsZWdhY3ktdHJ1bmsKKzUzOTIgNWViOGJkZTMwMGI3ZWRlMTQzYmEyOTY0ZjNhYWE2OGZhZTAxMzliNiBsZWdhY3ktdHJ1bmsKKzUzOTMgNGE1MzQ4MzkzOWMxZWI5OTI5MTg5NmI5N2EyOGMzZDFlODMyMjM2MCBsZWdhY3ktdHJ1bmsKKzUzOTQgMGFkOWQxMjNmZjU1ZGYzNDk1MjRiYzI0MjMyYzVhOTY3NTI5YjIxZCBsZWdhY3ktdHJ1bmsKKzUzOTUgNzkyZTM5ZGZlMjE2MTZhNjQyYzU0MTRkNTliMmJjNWY0YzljMTQxZSBsZWdhY3ktdHJ1bmsKKzUzOTYgN2QxZWNlYzI1YzA2ZWRmYTQ5ODc5NzEyMTk1MjdkOTk3NWY4YzY0YiBsZWdhY3ktdHJ1bmsKKzUzOTcgNzM5Mjc5MDMyOGJiZjNmZDdmYjMwMDYyYzM3ZTcyN2JlZWU0NTEzOCBsZWdhY3ktdHJ1bmsKKzUzOTggZGNlOTE1NWIwNDAxZWQ4N2ZhNDQ5ODVjN2EwMzM3MjlhMmQwMjNjNCBsZWdhY3ktdHJ1bmsKKzUzOTkgZWZiZGM1MGU3ZjU0YzUzYjcyNzRlZDMzZTM1YmE0ZWE1Zjk1MWRhNiBsZWdhY3ktdHJ1bmsKKzU0MDAgN2UxMjY1MzEyZGQ0Mjc1M2M4NmVlMDYzYWU0YTZiYTczZjY1NzYwNiBsZWdhY3ktdHJ1bmsKKzU0MDEgY2I1Y2NiYmExODU2OGViMzg4MjMwNGUyYTEzZTg5MTcyYjY5MjJmMSBsZWdhY3ktdHJ1bmsKKzU0MDIgOGFhYjgzY2M2MGEwNDFjMDc2NjdjNjMzNmQwOGJiOGMwYzNmMzVmMyBsZWdhY3ktdHJ1bmsKKzU0MDMgMDk3MGViZDMxNTM2NzQ0ZTM4OWYzNzEyYjQ4MjcyZDhhYzVkMDkwNCBsZWdhY3ktdHJ1bmsKKzU0MDQgMWQ4NjI2YmM5OWM3MTAyOTFiNTAwNTUyNDczNTM0MmI3NTliYjgwZiBsZWdhY3ktdHJ1bmsKKzU0MDUgZjAxN2Y1Y2RiNGJkYjI4NTQ5ZTg5MjRmNjI0ODQ3MzcxNmUzNDY0OCBsZWdhY3ktdHJ1bmsKKzU0MDYgNGRmZGYyMzRjZGE4ZjUwMzMyMzlhNmMyZGVjOGQ0YmI0ZTc0YWUzNyBsZWdhY3ktdHJ1bmsKKzU0MDcgNzA4MmMxYTFmOWFiOTg2ZmMxMjRjOGZkNjZhYzFjYzY1MGUzN2Y5ZSBsZWdhY3ktdHJ1bmsKKzU0MDggOTdmN2NmYWJlMDdlN2E5NDBkY2E1ZjkxY2Q4MmJkOTY3MDdlMDI2ZiBsZWdhY3ktdHJ1bmsKKzU0MDkgMzcxNTIwNjM5N2ZlOTA2MGJkNDgyNzJkMmViNDNmZGFkNmVmMGJlMiBsZWdhY3ktdHJ1bmsKKzU0MTAgOGVkYmVhYTJiYmY3YTcwMmVlYjM4NDdlYzBlMjA5ZThiZWYyZWM2MyBsZWdhY3ktdHJ1bmsKKzU0MTEgYzA5OTdiNDYyMzQ0YjQwNjYyOTBlMTA4OWUyMTBjMWUzZDdhY2Y0YyBsZWdhY3ktdHJ1bmsKKzU0MTIgZjE3YjdkMGE3NDgyNDRlOTc0ZjdjMTA2OGNlMGEyMzE2MDY0N2EzNyBsZWdhY3ktdHJ1bmsKKzU0MTMgMTBjMTAzMGI3MGFkZThmMDEzZjUxMzkwOWEwMTJjMTA1MDUzZGRiOSBsZWdhY3ktdHJ1bmsKKzU0MTQgYTk4MGQwNzYwNTJkYWJkYzE5NzJlMTg2OGU2YzA4NWJhMzMwY2U1YiBsZWdhY3ktdHJ1bmsKKzU0MTUgMzAyOWU4MWVkYmM3NzViOTY3MTEwMjQ1OTcyZWE3YzlmMWFmODk5YiBsZWdhY3ktdHJ1bmsKKzU0MTYgYmMwODAzMDg0ZTYwYTk1YmQ3ZWEzN2EwMTA1OGVmN2UwZmI3MTM4NyBsZWdhY3ktdHJ1bmsKKzU0MTcgYTFhOWI3MzY0YmMzNDg2NmNmYmI5NDY3OWZjZjcyYmYyNjQ0M2QyYyBsZWdhY3ktdHJ1bmsKKzU0MTggMTFkODk5MTRjN2I5YjFmM2Y1ZjljYjMwZTUyOTY5ZTdhY2ZmNDkwNyBsZWdhY3ktdHJ1bmsKKzU0MTkgMjFkZjQyMWYwM2ZlMGQ5NjhlNTIwN2Y1ODhlNmMwODQ3YzBiZTY0MiBsZWdhY3ktdHJ1bmsKKzU0MjAgNDVhZDFhOTM5ODZhMGViZDJjOTkwNjQzNDliMzJjNGU1Y2FhYzA2MyBsZWdhY3ktdHJ1bmsKKzU0MjEgYzVjYjNhNTM5MzNjMzUxYTNjNDNmMTAyMzE0M2U1MzE1ZDE2MTEzNiBsZWdhY3ktdHJ1bmsKKzU0MjIgNTI3ZDFiMjkyNTI1MDYyOGViY2RhYjU4ZGE5OWIxYmY0M2Q4M2U1ZCBsZWdhY3ktdHJ1bmsKKzU0MjMgNGQ3ZmQ5ZmY3OThkNTUxOTk1ZGZkNDJhZTRmNjc1ODAzOGMzYzNiNSBsZWdhY3ktdHJ1bmsKKzU0MjQgY2M5MjIyYjk0N2VlMGExNDc1ZTRmYWE0ZDYzNmZmMWMxZTZjZjEwNSBsZWdhY3ktdHJ1bmsKKzU0MjUgNGY5ZDRlNzMwNTdjNzYzMjM5MGQ2ZGU4MTk4NTJiYmY5NTBjY2FiZiBsZWdhY3ktdHJ1bmsKKzU0MjYgZWI2ZWI2MWI2MDZmZmQzMjU2OTk2ZWNhYzZkZjEyZDJjNzc5ZTE5MCBsZWdhY3ktdHJ1bmsKKzU0MjcgZjNmN2MwMWJjOTY2Y2QyNzgxZmYyNjYyZmM0NzY2MDZiNmJkMmUyMSBsZWdhY3ktdHJ1bmsKKzU0MjggMWM5MTlkMDJhNjQ1OTc1NDg0YmM3ODJjYWMzNjFkZWZkMjVhMWE3MCBsZWdhY3ktdHJ1bmsKKzU0MjkgZjcyYWJkNjJkNTA4M2Y1N2Q1ZmFhMDY2MmFkODg0NzBkMDk5MDYyMiBsZWdhY3ktdHJ1bmsKKzU0MzAgMDIzNTI3MzQyNTk5NmEzNjJkNTlhMGJhZWUzY2FiNGE0ZmY1Njk5MiBsZWdhY3ktdHJ1bmsKKzU0MzEgMTIyZDE0OWZhODAxNjQ2MDc1Njg0NzIwNTQ2MDkyZTJkN2VjM2U1MiBsZWdhY3ktdHJ1bmsKKzU0MzIgZDAwNzJkMWRmODJjMmI3ZjlkZTAxOWVmZWMwOTRiMjgxZWQ5M2UzNCBsZWdhY3ktdHJ1bmsKKzU0MzMgZjlmYmZkOTAzMTUzMDJkZTNmOTFjYmU2N2JlNDRjN2M0NzNmMWE0NSBsZWdhY3ktdHJ1bmsKKzU0MzQgNzQ5NTNhNDE2MDdjMWE2M2UwYTU5MzE5NTgzYzA1YTM3MGM2ODk4MCBsZWdhY3ktdHJ1bmsKKzU0MzUgNTIxMzA2Njc5ZTM0OWVmYzJmYmUxMGJmYmIyMDYwZDAxYTNkYTg0ZiBsZWdhY3ktdHJ1bmsKKzU0MzYgYzAwZmFlMzgwZGM3OGQyYTlmNjBmNTNjZjVlNzY3MTNlMTAwMWIzNiBsZWdhY3ktdHJ1bmsKKzU0MzcgY2ZjNjZiOGNhMjAyNzAwMWZmZWNiNDM4N2JlZDI4MTA3NzBjY2VlNiBsZWdhY3ktdHJ1bmsKKzU0MzggZDIzZDczYjRlNThhOWZmYjBjNzAzYTJkMmY0Mzg5NzZlMjcxNTI4NiBsZWdhY3ktdHJ1bmsKKzU0MzkgOTk5NDVmZGE3MTlkYjIyMjFiNDYxMzQwOGMxMDJiOWY5ZDllYjQ2ZiBsZWdhY3ktdHJ1bmsKKzU0NDAgOTg2NGZlMDU5ZTBkYzRjNTA1YThjMTIwMjZkN2RhZTE4MGQzOTNmYiBsZWdhY3ktdHJ1bmsKKzU0NDEgZDFjNDU4Yzg3ZjRhNmIwZWRmYWM2YjQ2ZmI0NjFiNjA1NGYzNzQ3YSBsZWdhY3ktdHJ1bmsKKzU0NDIgODIzNTZiZGRmNzEyY2ViYmU2ZTMxN2Y1YzczMWVmMzgzMTIwZDA3MiBsZWdhY3ktdHJ1bmsKKzU0NDMgNGRlNzc5MjMyYWE0YzBhNDlkNjEyOGI2N2YzZmE4ZmJmY2MwMDA0MyBsZWdhY3ktdHJ1bmsKKzU0NDQgNDQxODY2YmUyZWM5OTE2YTIwYWQ3ODc5MTljNGEzZGQwYWY4YzQ5NCBsZWdhY3ktdHJ1bmsKKzU0NDUgN2E2N2RiY2I2ZDgzY2YyYjBhYmYxMjNkOGRmNDhhYTlmYmI1Nzk5MSBsZWdhY3ktdHJ1bmsKKzU0NDYgN2VlYTliNDI2ODAyNGI1MGQ5OWQ0MzJiYjRmMWJiNDlmNTFiYjYwNSBsZWdhY3ktdHJ1bmsKKzU0NDcgYjZjZmEwNjNiODliYjBiYjEzZTdhZjI4ZjljZDIxM2FmZmYyN2I1ZCBsZWdhY3ktdHJ1bmsKKzU0NDggNTZhZDI0N2NiZmNiZWQwM2MzYzMzZjdhNDI4OTAyZjE3M2IwZDQyMiBsZWdhY3ktdHJ1bmsKKzU0NDkgOGQyOTA3ODU2YjM3ODQ3MDEzOWMxZmQ2NTJjM2QzYWFkMjllMWJkMSBsZWdhY3ktdHJ1bmsKKzU0NTAgN2IzOTExOTYwNTY0MTVmNTI2ZDRlMWExM2ViZjdjNGFlOTc3YjRmMCBsZWdhY3ktdHJ1bmsKKzU0NTEgNGMxZDgwOTUzOTUwOWI4ZTZiZTcyNGNkMDMwOWI2YmU0YTFjMDhiYSBsZWdhY3ktdHJ1bmsKKzU0NTIgMGQ3MTAwZmZiNjFhN2U3MzhhZmIxMGY5MTljNWNjNTUxNDQ4Y2YzZCBsZWdhY3ktdHJ1bmsKKzU0NTMgN2QyNjgzNDJkYzNhM2FjOWE0N2EwMzRjMmQ2OTA4YjlkYjQ1YzY3OSBsZWdhY3ktdHJ1bmsKKzU0NTQgZjkzM2E1MzBjMzhmMTcwNzI2NTlkYzAzYTRkYTZkY2RiZjNjODhkMiBsZWdhY3ktdHJ1bmsKKzU0NTUgMmZlOWQwMzcxZWNkMDY3MWJiOTVhMzFiMzJlYTE0NjM4ZjJkODQ3OSBsZWdhY3ktdHJ1bmsKKzU0NTYgMDRiYWRhOGQ2NWRlNDM1ZDUzODZkOGU1ZmRkMGQ3YmY2YTg3Y2NmMSBsZWdhY3ktdHJ1bmsKKzU0NTcgOTQ3N2E0NDU3ZTU2NDMzMTVjMjJmZGU1YThkMWI3OTY0YjJlM2ZjMyBsZWdhY3ktdHJ1bmsKKzU0NTggNDQ4ZWRjOTIzY2FkNDBkNzA3MmFjNmM5ZjczODZlZWFiYmExOGFkZiBsZWdhY3ktdHJ1bmsKKzU0NTkgZDI5N2M3MjIwNjEzNTg0Mjc3ZDc0YzM0MDdkNGJiMjQ3NDI0MjkxOSBsZWdhY3ktdHJ1bmsKKzU0NjAgNWQ0NzQ5YTQ3MGI0ZDAyMDBiOWNlYTg3Yjg2MDFlYTRkNWMwODQzNiBsZWdhY3ktdHJ1bmsKKzU0NjEgYWMwMTUyZjYzYmRkZmI3OThiMTE2NWU3ZTQ1ZGVmMWM4ZGYzN2RhZSBsZWdhY3ktdHJ1bmsKKzU0NjIgMWE4ZDZjN2RkNTYwZjE5NTBlNGNiNmE3NTUxYWQzNjRhNDQxMmM3MCBsZWdhY3ktdHJ1bmsKKzU0NjMgNTEzYTk2YTU3NTBmYmE3NTE3NGNlM2FlMDJkOTA3OTUwN2UwZTkzYSBsZWdhY3ktdHJ1bmsKKzU0NjQgZDRmZjQ3ZGY1OTIwZGZkMjE0NjgzNDllZDRlMzUxNGNhZDIwMzUwNSBsZWdhY3ktdHJ1bmsKKzU0NjUgOWJjYTk0YTM2YTA4MTBhZjIwNGQ2OGMwNjk2Nzg4OTlmMmZmYTFkMyBsZWdhY3ktdHJ1bmsKKzU0NjYgYmEyZmU1ZjgzNmE4M2RlMmQ3OGU1YWFkNjVlNWYzNGQyYWJlMGU0YyBsZWdhY3ktdHJ1bmsKKzU0NjcgNTU4OTViNWEzMDA3YjRiYzkxZjMwYmFhZGY5N2JlOGYyYjMwY2M2ZCBsZWdhY3ktdHJ1bmsKKzU0NjggZDQ2ZDgzMWJjNWYzMDEyM2Q4NTdjODA3NjU5NjdiZmY5MGY2ODI0MyBsZWdhY3ktdHJ1bmsKKzU0NjkgNTkxMWYyNGJjYzJkZTAzNzBlYTkwOWFkZGQ5ZDlmYTg1N2FjNTU5MSBsZWdhY3ktdHJ1bmsKKzU0NzAgODk4N2NmYTc1OGJiZDViN2Q0OTgwMGNkMTg3NzE1NTg3ODE1MTc0OCBsZWdhY3ktdHJ1bmsKKzU0NzEgYmVjZDU4MTYwOTExMGJlYmJlZmRkYTkxY2Y3ZmNmNDE4NGUwZmMyMCBsZWdhY3ktdHJ1bmsKKzU0NzIgYWQ2ZjAzOWE1YzQ5MjJmODkwZmNjMDQwMWFhMDBmODUwNmFjZDg0NyBsZWdhY3ktdHJ1bmsKKzU0NzMgMjBjYTU4ZWRjODU1NDhjODBiNTExYTAwOGMzZDdhMjAwMDNhNDYwOSBsZWdhY3ktdHJ1bmsKKzU0NzQgMDJmMmM1MThhYTQ2Yjk0MzY2ZWNiMzAxZDhmYjhhZmJkNTg0MDI4YiBsZWdhY3ktdHJ1bmsKKzU0NzUgYTUxMDIyZjE5ODBmZDVhMTVkNjhhMGU5YjMwZWMxODYwNDAwZTA5ZSBsZWdhY3ktdHJ1bmsKKzU0NzYgN2ZiNmYyMGUyYmEyOTQ0NGUyOTQyYTk3YTNiYmJkNThjYzcwZDQ0ZCBsZWdhY3ktdHJ1bmsKKzU0NzcgNmFhNGU5MjA5ZmJkOGVkYjcwNWI3MjdmMWRiMDg0M2JmYTgxYzM4MyBsZWdhY3ktdHJ1bmsKKzU0NzggNzJhNjFhMTQ5ZTRlNmM3MDE5YjMxMDMyYzU4ZGUwMzBmNTU0NjVmMCBsZWdhY3ktdHJ1bmsKKzU0NzkgNmI5Y2I2NjM0ODk3NWQyNDMyM2JlNGNjMzJjOWNlYWE3NDI3M2NiNyBsZWdhY3ktdHJ1bmsKKzU0ODAgMjEwNzM4ODY2MTY2MTIyODUwZGRkNWRjM2ZlOGUxMjAxYzdjYzYyYiBsZWdhY3ktdHJ1bmsKKzU0ODEgNWQzZDI5NzA0NmQyYzcwMzE5YzJiMzBjNjZmNjgwZTQ1ZTg0YzRiNiBsZWdhY3ktdHJ1bmsKKzU0ODIgMjY3MTg0MmM3MmNmYzRkYzRmNGExZWRiYThjZWNmNmQ4NDA2MmI5NCBsZWdhY3ktdHJ1bmsKKzU0ODMgN2FlMzMyNDcyNjI5YzRhZjkxNWMyYmE4NWZlOThhMTI4MWQ3YTFjMCBsZWdhY3ktdHJ1bmsKKzU0ODQgNzc3NDQwMDM1ODEzMzk4MmU3NzZhNTlkNTkwNDRiMjEwYTM1ZTJjZiBsZWdhY3ktdHJ1bmsKKzU0ODUgMjczOTBiNTM2NjQwYzUxYjQ1NDBhZmFhOTQ1YWFiNWQwY2I0MzQ5OCBsZWdhY3ktdHJ1bmsKKzU0ODYgZDI5NWY0Yzk4YzhhNjQ2MGUzZGFmNjAyZTgxYmExYjRkOTY1YjdmZSBsZWdhY3ktdHJ1bmsKKzU0ODcgYzc2NzFjMzZjNzI1ZTY4NWIxMGJhM2U3Mzk3MjVjNzc3M2E2OTQxNCBsZWdhY3ktdHJ1bmsKKzU0ODcgZTYzZDgzZjgyNzU4NTNhYWFhM2QxOTcyY2I4NjU2NDUwNWU2NTU4MyBsZWdhY3ktdHJ1bmsKKzU0ODkgYzVkODUyNzM1ZTdmN2I0OTBlY2JjY2JjNjBmYjYzYTk3YTE0YjdjMyBsZWdhY3ktdHJ1bmsKKzU0OTAgODc4NDcyMjhiMTU4ZDk5NzFmYTlhYjNhMjVmZTNjMjI2NzIzMWRkOCBsZWdhY3ktdHJ1bmsKKzU0OTEgNTRhYTg3YjFjY2VlNDU5ZGQxZTEyOWVkZDQ5OWIzM2JkZDllZmM0ZCBsZWdhY3ktdHJ1bmsKKzU0OTIgMzkxMWQ0YTg5YWIwY2FkMzY4OTJkMzZiNzQyNWNlM2JkYmVmZTU4YSBsZWdhY3ktdHJ1bmsKKzU0OTMgNzRjOGZjZGM5N2RhYTYxYWFiMzRiNGI3Yzk0MDczODMwYjE4YmE1YiBsZWdhY3ktdHJ1bmsKKzU0OTQgZGM0YmVjMDM2NzgzZTY3MDJmZDkwMjY5MmRlMmM2YTFlZjRmYTBhOSBsZWdhY3ktdHJ1bmsKKzU0OTUgN2NkMWRhNDA2NGQ3ODQxNjkzMjJmZTQ4ZjFjY2ZhZTcwZTAzNzc3YSBsZWdhY3ktdHJ1bmsKKzU0OTYgMTQ3NTNjMzJlOGI0MmExMzJlYjE3M2Y3NTk5MzJkMzE3MDI4MWMxMyBsZWdhY3ktdHJ1bmsKKzU0OTcgNDA1YjQ3M2FhNGExMzVjNTBmMmVmZTgxOTY1Yjg3NzlhYmE4NGE1MiBsZWdhY3ktdHJ1bmsKKzU0OTggOWM0OWFjZTZiMWU3OGYxOTEwNjUzMTRmYWQ4MTY4MjI0Y2U2ZDRlNiBsZWdhY3ktdHJ1bmsKKzU0OTkgM2IzZTY4MDc1ODMzMmI4MDk3YTgyMmRlZjE3NWQ1MDY4YzY1MjY3NSBsZWdhY3ktdHJ1bmsKKzU1MDAgNDdkOGJjYWJkMTc2ZjQyM2VhMmQyYTdkNmU0OThlYjRmZDI5ZjI3OCBsZWdhY3ktdHJ1bmsKKzU1MDEgYjgzOGQyYjk1MjAxMmZmMWNmYjZmNjU0ODFjOGM2MDJiNDFkYmM2OSBsZWdhY3ktdHJ1bmsKKzU1MDIgY2U1ZjBiODNmN2U5ZjRlMGU2NjcwZjM4OGFkNTBhNjJmOTBiMjY5NyBsZWdhY3ktdHJ1bmsKKzU1MDMgYmM4ZWVmZmQ0ZDA2ODc2ZDJiNzI4ZmUwMzFjODk3N2EzZTVkZTE2OCBsZWdhY3ktdHJ1bmsKKzU1MDQgZjhhYmMwMzdiOTRmOGNkZTQ5MWZiNTllNGFjYjc0MDdhOWU2ZGIwNyBsZWdhY3ktdHJ1bmsKKzU1MDUgNDNlYTJjOGIzMjg2ZTg4NzgyNDgyNzBlMTBmMzJlNWE0MmM0NGQwYiBsZWdhY3ktdHJ1bmsKKzU1MDYgMDE2ZjM2NjJlZjk4MzhiYmM4MGJiYjY1ZWJkNGMwOGMzMzVjMTQyNyBsZWdhY3ktdHJ1bmsKKzU1MDcgZGE2ZGJkZmQ1MWRiMWJjY2U3MWU0MjBjMDZhMTE5OGM4OWY3YzA0YiBsZWdhY3ktdHJ1bmsKKzU1MDggNmI5YzU3NWMwY2JhMDM4MjRkMzQxNmQyNWNkNjVkNjJjODlkZThjOCBsZWdhY3ktdHJ1bmsKKzU1MDkgNmFmMGZiYzg1NTNhYjZiMDU2NDgwZGM3MGI1ZjZlMGNkYzQxNjRmMCBsZWdhY3ktdHJ1bmsKKzU1MTAgNDU4MWEwZjAzNTNlYWYzMGY4ODVkNTk4OTYwODFmMmRmOGEwZmI2MCBsZWdhY3ktdHJ1bmsKKzU1MTEgN2U3YmIwMGEwYTJlMjVkOTVhZmYyMGQzMTUxZGFiNDJiMzM0MWQ1NyBsZWdhY3ktdHJ1bmsKKzU1MTIgYmRhNTRlYTIzYTgwY2MyZTgwYzE5MGJiNWNkOTg4YmU1NjMxOWNmYyBsZWdhY3ktdHJ1bmsKKzU1MTMgOTQ4MzViM2VkZjNlMDU5ZDE3ZWQ2N2Q3NWE3OWU5YTFlMDNiNGM4YiBsZWdhY3ktdHJ1bmsKKzU1MTQgNjVlYTc4ODc1YmM4MTI5MDVmOWI5MmQ3YzlkMDQ2NzFjMDgzMTQzYSBsZWdhY3ktdHJ1bmsKKzU1MTUgMDFiYzA2YzJlNDdkM2JmY2E4YWIxMDhlNTZhNzFmOWQyOWZlMTBiYSBsZWdhY3ktdHJ1bmsKKzU1MTYgNmM2OTRlYWQxNjY4NzUzOTgzZTI0ZWYyMTRjMjBjNmE4OTlmZTQ1MCBsZWdhY3ktdHJ1bmsKKzU1MTcgMmNkNGNjMDY1YzFmNjM2NmRlMzEwMGMxMGViY2M0OTg4NTdjNDg3YiBsZWdhY3ktdHJ1bmsKKzU1MTggYTk0NmU0Y2M2ZDViMDE3MGMwZjUzZmVjYmU5MmYwNGJiMjM1NzRkZSBsZWdhY3ktdHJ1bmsKKzU1MTkgZmQ1MDk4NmYzNWU1Y2NkYTM4NjJkNWY3ZjQ4MDVlMGRmMDAwNTljNyBsZWdhY3ktdHJ1bmsKKzU1MjAgNWI5MjhiNjk1ZmE0Zjc3NTlkY2Q5ZDZlMDk5NDBlM2QzN2RmNzdhYiBsZWdhY3ktdHJ1bmsKKzU1MjEgMmNiMTQxNjAxMGIzMzYxNjMxYjM4ZTdmYTUwZWE2YTU5ODRiMmQzMCBsZWdhY3ktdHJ1bmsKKzU1MjIgZWQwODc0Mzk4NDMzZGE4Zjk0YjRhYTZmYjM0MDE5Mjc5NmQxZDkwZSBsZWdhY3ktdHJ1bmsKKzU1MjMgN2UyYzA0ZTZmN2U3MTcwYmE3ZTEyYjY0YmE0ZmM2NDMyZjM2MDc5YSBsZWdhY3ktdHJ1bmsKKzU1MjQgMjRhZjhlYWI3Yjc2M2JiNDlkMjc0MDM4ZmFlY2ZmMzNlMDAwYzU3MyBsZWdhY3ktdHJ1bmsKKzU1MjUgZDk0YjUwMGNiOTg2MzA2ODMxNzZlM2IyN2VlNzRlNzBmNTE4YjAyZiBsZWdhY3ktdHJ1bmsKKzU1MjYgYzEyMDMwZmJiNWI2MGZiNWI5NzU2OGQ5MGRmYmZhNDYxNGQ2ZTQ1NCBsZWdhY3ktdHJ1bmsKKzU1MjcgNjYwZTZmMzU5OTFjYmE0N2VkOTczY2ZmOTkyNDQxNmE5NWNlMzJkYyBsZWdhY3ktdHJ1bmsKKzU1MjggZGQ1NGVlZmRjMmM5N2YwNWQ0OWViNzQzZDQ2N2Q4MGEzYWM0OTM3MSBsZWdhY3ktdHJ1bmsKKzU1MjkgOGQ1MTc5Mjc3ODU4YmU5OTA3YTA0MzJlNmIwNDBlNjM2YzBiN2ZiMiBsZWdhY3ktdHJ1bmsKKzU1MzAgYjMzM2YxNmZiNDE5NmU5M2RlZWY0ZjlhOGMwNTZmMDhjMmEwNWE5MyBsZWdhY3ktdHJ1bmsKKzU1MzEgZGY3ZGZhYzMwYzNlM2E5MThjZTcyYjJiY2RmMjZiNTczMjM3YmZhMCBsZWdhY3ktdHJ1bmsKKzU1MzIgYTU3NjhlNGVlMDQ1MzI0MGNkZmIxYjA0MzIyNTJmNTZhNDVkMGNjNiBsZWdhY3ktdHJ1bmsKKzU1MzMgMTM0YzZjMmQxYWJmOWM5NWQ5MGFhZjVlZThjMTY1MzNjZWJkMzg0YSBsZWdhY3ktdHJ1bmsKKzU1MzQgNmVjODIwZGIyZmZhZjY2YWFjMTU2YmVmYzNlMTY2OTk1ZDJlYTFmMCBsZWdhY3ktdHJ1bmsKKzU1MzUgMzFjNTJhMGEzNzJjMGVlYzc1Y2M0YjcyMjRhNTQ0ZDFmOTc4MTJkZSBsZWdhY3ktdHJ1bmsKKzU1MzYgMzI4YWM3NGY2Y2E2OTgzNGU5ZTY1OTc5ODliMmFlODNhZWVjNmZhOCBsZWdhY3ktdHJ1bmsKKzU1MzcgMjQ2ZDU0MjIxMjRmOTk5Y2QxOGNlMTliOTFiNmU4Y2ZiZjA1ZTNlNSBsZWdhY3ktdHJ1bmsKKzU1MzggZmJiOGVkZGM5MzA5ZmIxZTg4MjA2ZTkyOGI1M2VhZWY1ZjAyNzUxOSBsZWdhY3ktdHJ1bmsKKzU1MzkgZDE0Y2VmMTRmYmYyN2U3MGI4MmFmMThiMmI0NDY0MzI5NWE1YmJkMSBsZWdhY3ktdHJ1bmsKKzU1NDAgZDZiMTMwZmE5MWI2NWQzOWYwM2VlMjFhYTBkNzE1OGNiNzRlZTNiNyBsZWdhY3ktdHJ1bmsKKzU1NDEgOTcxZTVjYTE4YmQxZDg0YWUzNmU5NmJlOTM4NTEwZTZjNDQ3NWY2MCBsZWdhY3ktdHJ1bmsKKzU1NDIgZTQyOWE3ZTcxZTBjY2QyMmQxMTFmNmI5YjczOTVhMmE4MTRjZDJlYSBsZWdhY3ktdHJ1bmsKKzU1NDMgNjk5Y2Y4Yjk0ZjgwMmU4N2ZlODNmNzBmYzYxYzM1NTBlZjI5MDRjNyBsZWdhY3ktdHJ1bmsKKzU1NDQgNzIyNmRkMzE3NTVjNzAzYjAwZDBiMDA4Y2Y4YjUyYTA3ZTY1Zjg5ZiBsZWdhY3ktdHJ1bmsKKzU1NDUgZTNmYmNlZDFiYzA5YjMxOGU1NjJjOTM2NGYzZmQyMTQzOGE5MTY3YSBsZWdhY3ktdHJ1bmsKKzU1NDYgYmZhNDI3ZGE1ODBlY2RmMzRiNDRiZmIxZTYwMTJiYjk0ZjVlYWI2MCBsZWdhY3ktdHJ1bmsKKzU1NDcgZGI4OWFhYjQxNWExYjdiYmU2YzM0NTU1NzQ5NDdlYzg0Mjg3MzNlZiBsZWdhY3ktdHJ1bmsKKzU1NDggZWFkYTI0ODY3NmRlZjYzYjgwN2Y2MDZjODIwZTIzNDQ1MjNkYzNiOCBsZWdhY3ktdHJ1bmsKKzU1NDkgODdmZWEyNjFhMjYzZTdjZjFmOWViNDVjOGI0NmYxNWI2NzQzZDUxMiBsZWdhY3ktdHJ1bmsKKzU1NTAgMDdjYjUwMTQxZDA3MDcyYWE1N2FhZTRlY2M1ZGIwMDlmZWYzNTM2NSBsZWdhY3ktdHJ1bmsKKzU1NTEgOTFjMWJiNzVlOTQ1Y2Y4Y2M5NmIyNzA5ODE3YjFiOTgxNTMyNzYwNCBsZWdhY3ktdHJ1bmsKKzU1NTIgYTdjOTdjNDM3MTkxZDQ0Y2NkMTMwZjdiODc5YjI0NjlkNGM3NDlmNSBsZWdhY3ktdHJ1bmsKKzU1NTMgZDdlZWE5MDEzZTczNjI4OGIzZGZhN2M0NzkwOTMxOGYzNDY1ZDQyZCBsZWdhY3ktdHJ1bmsKKzU1NTQgMzE2ODRjNWJiMTcyN2NjYjQ4NjYzMjY4YmQzYTMxYzUxZDZkMDA4NiBsZWdhY3ktdHJ1bmsKKzU1NTUgNzU5MzY5OTBhMzMwYzBhNDRlY2M4ZDVmNDczMzUzY2FhMjMxMjlmYiBsZWdhY3ktdHJ1bmsKKzU1NTYgZWY5YWM2ZGVmNzFkM2I2ZWM5Mzg5ZTI1MTZmN2UwNDgwNzhlZmRjMSBsZWdhY3ktdHJ1bmsKKzU1NTcgZmJmYTNkM2NhNGUwOTU2NmQzNGY2YmViYTEwMGI4ZDRmMjBiZmI0YiBsZWdhY3ktdHJ1bmsKKzU1NTggN2RkZmI2MjlhYzNmZTkwMzg1YTQ1ZWMwYWFhMDhiNGFjMDZjYzQzZSBsZWdhY3ktdHJ1bmsKKzU1NTkgMWZmMTI2MTlhMTRjN2RjZmRkMjNlMTM3MDg1MzNmYTQ5YjVlMjhlNCBsZWdhY3ktdHJ1bmsKKzU1NjAgYjNhODAxM2NiNGZhMzY3NTUzMmU2NTUxODUzOTRjOWIwZTQxYTdhYiBsZWdhY3ktdHJ1bmsKKzU1NjEgNWExZmJkMjFmYzJhNWE1Zjg0NjFkMjFkMTFmYzViMTdkYjVjZjQ5YyBsZWdhY3ktdHJ1bmsKKzU1NjIgYzFkNzdkNzRmZTM1MDY4ZmRiYzM2ZjRjN2Y4Y2VmN2JlNDJhZDNmOSBsZWdhY3ktdHJ1bmsKKzU1NjMgODQxMDRkNmI0YWU3ZWRmMDA1NGJjNjQxNmJhOWI3OTFjMGU2ZGI4MCBsZWdhY3ktdHJ1bmsKKzU1NjQgOGFhNjkxOGE4OGM2YjE1NDFjN2QwY2Q2ZjQ5NjBjNDQ3ODhmZTI5NCBsZWdhY3ktdHJ1bmsKKzU1NjUgNGM4M2Y1NjliNDM0NTkzYjM4NTUzMjQwZjUxNzY0YmU2MjlhZjZkMiBsZWdhY3ktdHJ1bmsKKzU1NjYgZDI0OTExMWQ0Y2NjZmY2ODQxZmU4ODBiZmFmNDNiYjQzOTk1YjZkOSBsZWdhY3ktdHJ1bmsKKzU1NjcgMTcxZWVmNjlhMmNkMDg3ZjYzMTI1YjI4YjMzYjZiOTVmNTljNzdmMyBsZWdhY3ktdHJ1bmsKKzU1NjggMjM3YzNiMmE2MTg3MWIwNzU3YjU4ZTgyZGE4NGRkMzRjZGNiNWZhNCBsZWdhY3ktdHJ1bmsKKzU1NjkgNjkyNzE1YWJiZDBiYmVlZjZmMWMzYTQ3MmM3NmM5MGE1NzA5MmI5OCBsZWdhY3ktdHJ1bmsKKzU1NzAgZTUxZTE3YjJkODhiMTVkOWE5NTk4NmViMTNhZjhhNjJkNmQxNzk4YSBsZWdhY3ktdHJ1bmsKKzU1NzEgNTZkYmEwMzdiOGQ2YzY1NjQ1YzFmODliYzc4ZTIxYjFjZDBkZDE0MSBsZWdhY3ktdHJ1bmsKKzU1NzIgNDM4Zjg4YjU1MTU0YWQ0YzQyYzYwNTE2NzQ5ODI0MzE5M2Y1NDVjZCBsZWdhY3ktdHJ1bmsKKzU1NzMgYzQxYThlNTAxOTczNDNjOTc3MThmNjM2YTcwNTE2YTZhN2ZjZGEyYiBsZWdhY3ktdHJ1bmsKKzU1NzQgM2RjOWZmM2FiZjM2MTYzMmRlY2RhMTlhNjE3NjRlZDFiOGY1YjE5OCBsZWdhY3ktdHJ1bmsKKzU1NzUgYThmY2M1MTFhODlhOGYzN2E5MzMyYzc3ZDkyNzhlNWExYjExZDFjNCBsZWdhY3ktdHJ1bmsKKzU1NzYgMTQxMjNlMDhlODg3ZTQyODNhZDY0ODhhNzg0NjRhMDVkNzBmYTJkNSBsZWdhY3ktdHJ1bmsKKzU1NzcgNWMwYTdmNzgzNmZiMWRiZDQwNWJkMTFhMDc0ODRmYWQxZmY5ODUxMSBsZWdhY3ktdHJ1bmsKKzU1NzggOWY3NjE4NWM5NjkzN2NmNTVjZGE4ZmViN2U2NTVmODIyNTQzYTUzYyBsZWdhY3ktdHJ1bmsKKzU1NzkgMzZmNGQ1NDY5OTE1MzNjOTRhNDAyNmEwMzU1NzgyMjcxYmUwNmJmZSBsZWdhY3ktdHJ1bmsKKzU1ODAgYWY4MjI5MTEzNWJkMDZjMGY4MzViNTdmNDBjNDVkN2NmMTAxNWE2NyBsZWdhY3ktdHJ1bmsKKzU1ODEgM2FhYjkyNWViZmIwMzRlMDVjYjc5YzAxZjU3NDU1NWY3ZjZhZjhiNyBsZWdhY3ktdHJ1bmsKKzU1ODIgOTQ5N2NkY2RiNmFhNTFiNGYxYWZlNWJlYTg4NjgzZTYzMDFkMGEyMCBsZWdhY3ktdHJ1bmsKKzU1ODMgZGIxMzlhNDExMmYzMmY1MzhjMzUwZDlkYWNjNjVmOTQzNDA0MDY1NyBsZWdhY3ktdHJ1bmsKKzU1ODQgMDc3Mzk5Y2M4MmU4Y2ViMjg4YjAwNTU3MjU4YjdhMjMwZGY0Zjc4NyBsZWdhY3ktdHJ1bmsKKzU1ODUgZTQ3NzA5NGE4Y2ExMDg4MjBmOGY0MzkwMmI2YzM3MGRjNDdmNDZiZCBsZWdhY3ktdHJ1bmsKKzU1ODYgMTA3MWQxNmM5MzBjMWQ4NjljZTE4ZGQwZWJhYTQxMzZmNDJiNDhhMyBsZWdhY3ktdHJ1bmsKKzU1ODcgNGExMmE1NDMxNzVkMGJhOWE5MzA2MGNhYjM4MDUxMDM1ODRjMzdmNSBsZWdhY3ktdHJ1bmsKKzU1ODggYzEwZjU1YjQ2YTExNTFiMWI5YmY2MGFhNTE4MDlmZDYzNjJmMGQzMyBsZWdhY3ktdHJ1bmsKKzU1ODkgMmNhYTNlMjgzNTY4ZDA3NWE0Y2QyMDY2OTc0ZTYwNDQxMjlmM2ExMyBsZWdhY3ktdHJ1bmsKKzU1OTAgOTM1NjJkZGUyMjRhYjdkMDk0ZTVjNzY1ODQ2YWU4YmVlNTcwYTJkNyBsZWdhY3ktdHJ1bmsKKzU1OTEgMTdmMzExZWEwYzlhMDdjNTViZDIwZTBiMzBkOWYxOWI2NjJlMTdhZSBsZWdhY3ktdHJ1bmsKKzU1OTIgOTA1NjZjOWMxODlmMzJkMWI3OTQ3Yzk4M2VhNTg2YmZmYWIyNTA5YSBsZWdhY3ktdHJ1bmsKKzU1OTMgZTkwNjQzZjMzYzY0YzEyYTYyODFjZmNkZDlhNWVhMzEyODllN2Y1NSBsZWdhY3ktdHJ1bmsKKzU1OTQgODcxMGQ3MTQ5YzZmMWJiZWUxNWIyNzk0MWVlYTMyMTRlM2NjMDE3ZiBsZWdhY3ktdHJ1bmsKKzU1OTUgMjdhMDc2OWRiOTIxOTMzNDBlNjc3YWVjZjkwYmJlYWI2ZDkyMDJmOSBsZWdhY3ktdHJ1bmsKKzU1OTYgZTgzNWEyMmIwYmRkZTk0ZmViYzAxYWMwNjczNWU2MWUyMDg5YjhhOCBsZWdhY3ktdHJ1bmsKKzU1OTcgZGNmMmEzN2U3M2Q5ZDM2ZjE4MWE3NGFhN2NiYTA4YWNmNWEzZDU1OCBsZWdhY3ktdHJ1bmsKKzU1OTggNzFiYjcxZTMwNmZlMmRjYjY2ZTk2NWUwZGQ4ZTc0NTkzODAwNzUzYyBsZWdhY3ktdHJ1bmsKKzU1OTkgNzBlZTRlM2NiM2Q4MzgyNjRjZTE0YTcwMGE5ZDA4MjE2M2RhMDViNiBsZWdhY3ktdHJ1bmsKKzU2MDAgNTkxMjg3YTIyZWU1OTZkZWMxYjFkNmJlMGJiZjhlNzZlZjYzYTQwZSBsZWdhY3ktdHJ1bmsKKzU2MDEgMjY3N2ZiYjExN2Q2MmI0NTFhZmNjNDk3NjY2ZjI4ZGUxMDU0MDRiNSBsZWdhY3ktdHJ1bmsKKzU2MDIgOTk5ZmNjZTQ5NmY4NDk1NDg5ODJjNGE1NDVjMDVmNmRiNjRiZWRkOSBsZWdhY3ktdHJ1bmsKKzU2MDMgMWI0YjhhNGZiNDYzMzQwMTcxMDg3NzNjY2I1MGQyNzg0Yzk0OTE5MiBsZWdhY3ktdHJ1bmsKKzU2MDQgYWRjYzkxNmI3NjE2ZDgwNzQ2YzFjMTJmMGU5YWMyYmFiMzUxZmViYSBsZWdhY3ktdHJ1bmsKKzU2MDUgZjFmMThjNTVkMTM2NDI0NTQyNjk2MmI5MGY3OWVhOTAxOGMyYzNlNCBsZWdhY3ktdHJ1bmsKKzU2MDYgZGYwN2YyODcxMWZkZjMyODk5ZmJhZmQ3MzUyOGFhOTZlM2E1NDI0ZSBsZWdhY3ktdHJ1bmsKKzU2MDcgY2QzODhjYzliYTk4ZGNiODlmYTgwMmUzYTFlOTlkNGMwNzY5YWJmNiBsZWdhY3ktdHJ1bmsKKzU2MDggM2Y4YTczMzgwYzRiY2NkMTg5MDg0YWU0MDNjMWIwN2FhOTY2YmYwYSBsZWdhY3ktdHJ1bmsKKzU2MDkgMzkzYjZkODFiMTI2YjI3NGQ2N2RkOWQ2MWVmYjUwOTlhMDk5MzBiMSBsZWdhY3ktdHJ1bmsKKzU2MTAgN2M1Zjk0ZjU2Zjc5MzU4NjllY2RiZmY2NTRlYWUyZmVkOTUxMjgzMyBsZWdhY3ktdHJ1bmsKKzU2MTEgZmJmNThkMjc4ZDY0NWQwYTUyN2JlOThlNjU2ZTRjNGE0ZDhkMmVlMSBsZWdhY3ktdHJ1bmsKKzU2MTIgNDNmOGRiMjNlZjE1ZTIwY2I1NjU5ZGEwZjAyMzYzYjVmM2YzY2E2ZiBsZWdhY3ktdHJ1bmsKKzU2MTMgYTk1ZmY4Njc1NzE4MTBlNmUyNTRhY2Y2NmRmYmRkMmZiNGFiMWQyMCBsZWdhY3ktdHJ1bmsKKzU2MTQgNzBhOTMyN2Y2YzRjNmIyYjM1OThiNWFkNWZjMTI2N2ZjMmRmNWJhMyBsZWdhY3ktdHJ1bmsKKzU2MTUgNDhkYjVkOWEyNzk0MWMyZTE4Nzk0MTBjN2FmYzU5MGVkZTI5MzdmMyBsZWdhY3ktdHJ1bmsKKzU2MTYgYmFkOTdiNDA1MTY2NmEyZGYyZjYxYWRlMzFlYTIwNTM2MDFmNjE1YSBsZWdhY3ktdHJ1bmsKKzU2MTcgNDkwYmU4NjVhYTBkNTc5ZWVkNDRhNmFlODY5YTNlNTgxZTgxOWU5ZCBsZWdhY3ktdHJ1bmsKKzU2MTggYWNmZjc5ZGQxNGI3NTA3ZjZkY2JhNDMwNzU5M2I1NzU2NzJhZWUyNiBsZWdhY3ktdHJ1bmsKKzU2MTkgYTM2ZTMwMjQwZDA2ZjRkZjI2N2E5YTM1MjRmMGIzMjZjYzVmYzcyYyBsZWdhY3ktdHJ1bmsKKzU2MjAgOWE4OTYwODZkM2MzNzA0MTQwZGNjNWIwMDcwMWIyZjkwMzM3YzJhNCBsZWdhY3ktdHJ1bmsKKzU2MjEgY2Q3ZWFhNjJjYzMxYjdmNjYzNjQzY2MzM2VhNTM3YTA1MGZkOGU1ZiBsZWdhY3ktdHJ1bmsKKzU2MjIgZDZkZDUwZmUxZWNhYjc1NDcyYzM0ZDE1MDRlZWUyYjYzZWNkYzU2OCBsZWdhY3ktdHJ1bmsKKzU2MjMgOTMxNTNkNWMzMzNkMDdkMTFiNTE0NTI5OTI2YWM1ZTY5ZGE0N2IwYyBsZWdhY3ktdHJ1bmsKKzU2MjQgNDY5MzY5YWQyZjJmYmE0YzhlMDZjYjM5ZGMzYjJhYTIyMjRhMzZmNiBsZWdhY3ktdHJ1bmsKKzU2MjUgNTk2MWI3NmQ3ODk5NmUzNWY1ZDRjYjFmZjM3OTM3N2Y0YTZmMzBhMSBsZWdhY3ktdHJ1bmsKKzU2MjYgNGNiMTI2MDRkYTlkOWVhOGE0ZTZjOWEwNTlmMDk2ZTUwOTk4MDdkMSBsZWdhY3ktdHJ1bmsKKzU2MjcgZmQ0ZjAwOGQ3NzQzYjUxZWY5N2Q1MDZjN2ZhMDc2NjdiZWY0OTlmNCBsZWdhY3ktdHJ1bmsKKzU2MjggMjIwNWRjNDk4YWRmYmViMGVmNWE5YThjNDMwNmIyOGMxN2E3MTY3ZSBsZWdhY3ktdHJ1bmsKKzU2MjkgNDBjNjhlYmQ1ODkxZDliNGY3MmJlMzE0NjhjYjRhYTNkYzQ2NGZjOSBsZWdhY3ktdHJ1bmsKKzU2MzAgMzE3MmMzOWNkYWQ4MDg3ZDVhNzExOGE3OWJjOWJiZjA4YzhhNjQyNiBsZWdhY3ktdHJ1bmsKKzU2MzEgOTVlODBiNmI4ZjJlNDRjZmJhMWRkYzcyNjdhNjMyOWIyNDY5NDZlMSBsZWdhY3ktdHJ1bmsKKzU2MzIgOTJlMTQ1Zjg0MTRlOTYxNjUxMjljMzU1ODFlMzJjYTczYjM5ZGVmOCBsZWdhY3ktdHJ1bmsKKzU2MzMgOTM4YzQzM2M4NzZhM2Q2OTViMWQwN2Q3ODNkNjgxMWJmN2U4NDBkYSBsZWdhY3ktdHJ1bmsKKzU2MzQgZmU5Zjk1YjA0MmZjOGNmMDYxOTUzMTBkYzQ0ZWJhNzEyZmJhYjliNyBsZWdhY3ktdHJ1bmsKKzU2MzUgOTQ4OWEzNzJjNjg2MmExOTIwNTQyZTIyOTEyNTQ0MDI3NjA3NTQwZCBsZWdhY3ktdHJ1bmsKKzU2MzYgZmZmOGE3NTBlN2Y2M2RjMGEwMWJiMzkzZjI1YjA0ZDBhYTMwOTYwYyBsZWdhY3ktdHJ1bmsKKzU2MzcgYjliOWU2NjI4YjM1MzUzMDFjNWM0ODIwZmI5Y2FkNjQ1M2FmYWFhNCBsZWdhY3ktdHJ1bmsKKzU2MzggMTMxNDZjYjZmNjdjNjFkZTI1MmNiNmEyMjM4NjVkNmQ3NGNjNmYxYiBsZWdhY3ktdHJ1bmsKKzU2MzkgNmJjY2ZjMGVkNjk1OTQzOTQ4NTBkMWZkMDg4MTUyNDA1OTE1OGRiMSBsZWdhY3ktdHJ1bmsKKzU2NDAgNmQzNGFkZTJlOWQ0NTI3MWIwZmM2NWZiNjBmM2Y0ZTEyYWYwZjM3OCBsZWdhY3ktdHJ1bmsKKzU2NDEgZjc3ODk5NDViOGRlZTZjZDc3ZTQxZTE4YzcwNTUyN2U5YzllMWZlNCBsZWdhY3ktdHJ1bmsKKzU2NDIgNDliNzg3YjliZmFlMjZjZGE1NmU2NDNhZGQ0ZGQyY2ZhZWZlNGI5YyBsZWdhY3ktdHJ1bmsKKzU2NDMgMDZlMzQwZjg1OTYxZDFkZjIwNWU1ZjQ1ZDg4Y2NiNzRhNzAzNWRjNyBsZWdhY3ktdHJ1bmsKKzU2NDQgY2Y2YzBjNWRjNzNmNzg2M2YwNzdjMGRjMDQ4MzM5MzUxYTQwZmIxOCBsZWdhY3ktdHJ1bmsKKzU2NDUgM2UxZTVmNjhmZDFjY2EyMWExNWNlMTBjYjUwMWJjZDRhMTY2YzEwYyBsZWdhY3ktdHJ1bmsKKzU2NDYgMmE0ZDEzMDM3M2RiMjE5ODg2ZWRjOTgzNzZjMjI1NDNkYTc1M2U0MSBsZWdhY3ktdHJ1bmsKKzU2NDcgYTQyMDEyYzE4OGZkMzg3OWI2NmJiOTRjNDkyNGQ5ZjNhOWFjN2JmNSBsZWdhY3ktdHJ1bmsKKzU2NDggMjRiNTNjYjMxNjgwOTQ1MTBkY2ZjYzMwNzViNGYxYTUyMzE4MTZiZiBsZWdhY3ktdHJ1bmsKKzU2NDkgOGYzZjI1YTgzN2IzODE3ZGJhOWQzYTI3YmExYTkzMWY3ZTQ1NWYyNiBsZWdhY3ktdHJ1bmsKKzU2NTAgNjFjYTE5YTMwMDBmZWMxMjg4YWZiNTk2ZmIzZjJjYjQ5ZGI2MzJhNyBsZWdhY3ktdHJ1bmsKKzU2NTEgN2IyZjY5NTQwNWJhZmJmYmZkOGFjZTllMDM3NWY1ZTQwZDQzNmI2MCBsZWdhY3ktdHJ1bmsKKzU2NTIgYzA1NmY2ODVjMDgxM2M4ZTQ1M2E1Yzk3NDU0NDc3Y2M0Njk0ODhkZCBsZWdhY3ktdHJ1bmsKKzU2NTMgODMwMWQ1NWViNjRiZTI2OGRjNTdlOTE0ODBjNWI4Y2RiMzE1YWRkNCBsZWdhY3ktdHJ1bmsKKzU2NTQgY2MzOWQ2MmIyN2ZkMTE1OTAyYzU2NDBiNjJkMTFlMzQ2ZTY3OWRkMiBsZWdhY3ktdHJ1bmsKKzU2NTUgZjQ3MmI3ZWMyNWM1ODNjNjJiODg5MWRlMjZlOTIzYmQ4NTZiZTdkYyBsZWdhY3ktdHJ1bmsKKzU2NTYgMDJjOGY3NGQwOGRjZDg0ZDM2MjBmM2JlMjAxNTBiZjViYTUyM2E5ZiBsZWdhY3ktdHJ1bmsKKzU2NTcgMjhkZmM0NjcxODVmYzQyNTgzOGY4ZGI1OTc1Yjk1OWU3ZGRjMGNkMCBsZWdhY3ktdHJ1bmsKKzU2NTggZjlmZDUxMjI2ODBmMzMzZDNjOTczOWVhOGVmZWQzMzA5MTc0ZjdjMyBsZWdhY3ktdHJ1bmsKKzU2NTkgMmFhNzk4MzdhZWU1NmVlYTc2OGYxNWNiNTU5NzQyNTRhODAzOWYwYSBsZWdhY3ktdHJ1bmsKKzU2NjAgODIyNGYwYmM1Y2RhNDk0MmVhY2FiYTA0MTA5MmQ3ZTgwNzg1YmRhOSBsZWdhY3ktdHJ1bmsKKzU2NjEgMDVhZWI5MWUzYjkwZDBkMzYxZjM4NWEzODM0ODRmMzI0Y2RlZTBmMyBsZWdhY3ktdHJ1bmsKKzU2NjIgNjExOTNjNjMyZjUxZTE5MTFhODcyZWI1NDEzMmRlYTdhZWM5MjUzNyBsZWdhY3ktdHJ1bmsKKzU2NjMgMTk1YWQ5ZmI0NTgzMmM3OWEzMmMwOWQzNTc4OTU0MGQ1NjdiM2NhMiBsZWdhY3ktdHJ1bmsKKzU2NjQgNWQxNmVjYWU4ZWU3MTExODFkYTY4YTE2MzBjODRkY2ViMGM1YmFhMCBsZWdhY3ktdHJ1bmsKKzU2NjUgMjFjZDUwYTRhM2Y3NjdhOTNmMDhkOWE0Yjc4OWE5M2FiNTlhNTI4NyBsZWdhY3ktdHJ1bmsKKzU2NjYgODg0MWE0ZDVjZDRiZWI4ZmNhM2Q4NmE3NTI0NmZjZGUxNWY1YmZmNCBsZWdhY3ktdHJ1bmsKKzU2NjcgOGY1YWIxYTZjOTE0MmViYTQ5ZDA4MzYzYzlmOGU0Y2EyYzcwYmYyNSBsZWdhY3ktdHJ1bmsKKzU2NjggMTliNThjZTc5NGM5MDI2Nzc2ODdiN2U2OTA1MGYyYmZjMWM3MDdkOSBsZWdhY3ktdHJ1bmsKKzU2NjkgNjQ5MWJkMmJiZGVmZjY4NTllMjU0ODFmZDEzNzQzOTQ2YmQ2ZDAwZCBsZWdhY3ktdHJ1bmsKKzU2NzAgNDZkZjY3MmM3YzI3MGRhMzYwYjU3ZjAwNzIwZTRjYjU1ZDBiMWYyZSBsZWdhY3ktdHJ1bmsKKzU2NzEgZDVlNzZhOTViNTY2NWM5MDkxYjU1Y2FiZTBkZjJhNTVkYTU2Yjc1NSBsZWdhY3ktdHJ1bmsKKzU2NzIgM2QxMjJmMDJlNjQ5ODcyNjk2YmY4NDkxMjg5M2VkOTA2MTEwY2NkNSBsZWdhY3ktdHJ1bmsKKzU2NzMgZGYyZjI1MmRjZDI5ZGRlN2ZmMjRhZWNhYmQzMzdiMWUwNTMxOGY2YyBsZWdhY3ktdHJ1bmsKKzU2NzQgMGVkNWNkOGRmNTFmOTgxNjE5MTRkYTA5ZmU5YWJjMDUzYWYyYTJiMiBsZWdhY3ktdHJ1bmsKKzU2NzUgYTIyN2RjZTQ4NDUxN2RhNjE1MGEwYTk0YTc3MDQ3MDNhNjlmOWFjNCBsZWdhY3ktdHJ1bmsKKzU2NzYgMmI1Yzg3MzgxMzBjZjk1MjJmMWZiZjRhZGJhODI1MGFmZjA5YzZmZSBsZWdhY3ktdHJ1bmsKKzU2NzcgY2RlYmVlNGEzZTNlODcxYTdlNmY1ZmU2YzExOTRlZDhkZGNjYTAzNSBsZWdhY3ktdHJ1bmsKKzU2NzggOThlMmNhZDQ4NTdmMWQyYmQ1Mzk5ZGEzN2I4ZDJmOGFkMjA5ZTk3NCBsZWdhY3ktdHJ1bmsKKzU2NzkgYzdjZGQyMmE0ODUzYWQ4YmEwMDlhMWZkZjc1ZmM1MmYyMTc3OWQyYSBsZWdhY3ktdHJ1bmsKKzU2ODAgMjFkNGEwN2IxODc1YjFhZGJjNzBiYTZkMGNkZjU1NTdhNGMwZDU2MSBsZWdhY3ktdHJ1bmsKKzU2ODEgZmZlMDMyODM2OTM3MzczNTA2OWI0NDZmYmM4OGNjMzg3MmNmODMwOCBsZWdhY3ktdHJ1bmsKKzU2ODIgM2IyYmU4MTFhNjZhYWE2YmZkZjg1ZGMzN2ZjNjJlODBiNmYwODllOSBsZWdhY3ktdHJ1bmsKKzU2ODMgZDAwYTc5ZWJiMDI3MzQ4Y2RkZjVlMjU0OWI0ZWRjNmM3M2M3ZDMxNyBsZWdhY3ktdHJ1bmsKKzU2ODQgODAxMjY1Yjg2MTY0MDI0NDRhZDc3OWZiZWI1NjYzYzkxZGMyZTE3ZSBsZWdhY3ktdHJ1bmsKKzU2ODQgN2Q3NDNjODY1YTlhYTZiZGU4YjYwM2UzMmUwNTQyMDMxYmJhM2MzMyBsZWdhY3ktdHJ1bmsKKzU2ODYgZTQ1ZjNkMjYyYWU0YTkyM2VkOGM0MGYwZGY5OWRmOTZjZTBmNDNmOCBsZWdhY3ktdHJ1bmsKKzU2ODcgZjFjYzI0N2ZmZjEzN2Q5NGRiODEyZTllY2NjNmJiYzhhZTY4Njk0ZCBsZWdhY3ktdHJ1bmsKKzU2ODggNzhlMTk1M2ZjOWIyZjMzNDUzNjAyYmIyZGU4N2IwNWNjYzQ2NTc2YyBsZWdhY3ktdHJ1bmsKKzU2ODkgMGYzOGNlYzU2NTM5MWU1MzBlYTRmODkyMDNkOGU5ZTA3OTZmOWY4ZCBsZWdhY3ktdHJ1bmsKKzU2OTAgZTc0MTdhNTY4NTg2YWIzOTJkMWE2NDk3MzNmYTM2ZjVlYzEwNDkwMyBsZWdhY3ktdHJ1bmsKKzU2OTEgMmZiMzk4YWIzZTZhYjAyODNkOWUwZDczZmIzYWQ1ZjcwOTEzMjk2YiBsZWdhY3ktdHJ1bmsKKzU2OTIgZTU1NGE2MWE4NDY5NGZiMTc3MDg4MTBkN2NkNTg2OWRlYTE1NTQ0MCBsZWdhY3ktdHJ1bmsKKzU2OTMgOGMwYTUxODBmYTM2ZWFmMjRlY2VjNTQzZTA5MWQ5N2NiMGQ2YmUyYyBsZWdhY3ktdHJ1bmsKKzU2OTQgZWZiOTcxNDI5OTJlNDg5Nzg5NjhmYmFiZTBjMWNhNzE4ZmVjOWFkNCBsZWdhY3ktdHJ1bmsKKzU2OTUgZjRhNTlmZmUxYTVmNWMxYzgyMzUyOGNjYmI4YzAxZDZlMzI4ZWMxMiBsZWdhY3ktdHJ1bmsKKzU2OTYgZTMzN2JmM2NiNDNhZWEzODZlNjI1OTcyNGM1ZmE4NDM2M2Y0MjEzMSBsZWdhY3ktdHJ1bmsKKzU2OTcgMTE4YzA2M2RmNDUzYzJjMmYzZDY3NjAxNzM1MzgwNjA1ZGYzNzdjYyBsZWdhY3ktdHJ1bmsKKzU2OTggMWFjYzA0NDc4ZGMzMTBlOGM0MDUxZjMyMzdlNmU2ZmE5NDYzMTQxNCBsZWdhY3ktdHJ1bmsKKzU2OTkgZWE3ZWM0YTRjOGQyZjUzMGE2NzEwZjg3ZjI3YTM0NzMwNjBlYzgwMiBsZWdhY3ktdHJ1bmsKKzU3MDAgZmQ1NzNhYzc1OTQ3NDAzNTVmMDVjNDFjOTEyOWI3OGI2Njk0YzFlMSBsZWdhY3ktdHJ1bmsKKzU3MDEgYWFmZTdkNjM0OTg1MjdlZGY3ZDk2MTRiNzFmYWI4NDk0ZTkxNzkwNiBsZWdhY3ktdHJ1bmsKKzU3MDIgM2RmOWFiMDNiYWRmZmIyZWMyY2Y0Zjg2OWVmMmFiN2EzZDI3MjA5YSBsZWdhY3ktdHJ1bmsKKzU3MDMgNDYzYjI2ZmE0ZDdiNzU2Nzg1MGMxYjQ1MDZhY2E4NmE0ZDcxMzNlYSBsZWdhY3ktdHJ1bmsKKzU3MDQgNjJiYmZkZTQxYjE0NDNiYTY3NjlmYjg1NjEwZTFkNjE0MGJhNTIwMCBsZWdhY3ktdHJ1bmsKKzU3MDUgZDM1MTBmMTExOGI2Yjc3MmE5NGUxZmIwNDAzYTE5NDk3YzgzMDllNCBsZWdhY3ktdHJ1bmsKKzU3MDYgMjg1ZGJhNGUwZTUxNmM1MDc3YzBjMTRlYjlmY2RlMzIxNTU0MGQ2NSBsZWdhY3ktdHJ1bmsKKzU3MDcgZjdmZDg1YjMyYTdkODVlNDk2Y2U3ODlhYzQ0NTcyZTI5N2Y2YmI2MCBsZWdhY3ktdHJ1bmsKKzU3MDggZTkyNzg5YTk2MGEwMjcyYjJkMTQwYzI1NmZmMmM5MmZkZTRmMzllMSBsZWdhY3ktdHJ1bmsKKzU3MDkgMzEzNjM3Yzc3ZGFhMDNhMjk1Y2IzMTc3M2U0MGVmNjgwZWU3OGJjYSBsZWdhY3ktdHJ1bmsKKzU3MTAgNDA1ZGE1NTY2NjFkNjZhYTQ3OWVhZTY4ZWUyMzU2ZmFkYjViZDFmZSBsZWdhY3ktdHJ1bmsKKzU3MTEgMjg0MmZmYTUyMTI2MGRkNzU1NDM1MDZmYjZlNjliY2MwNGVlNWI3MSBsZWdhY3ktdHJ1bmsKKzU3MTIgMThiNjBkOGQ5ZTM1YTI2NGI0NmVhOGVhNzM0NTJjYjcxNWRhMTVkNSBsZWdhY3ktdHJ1bmsKKzU3MTMgN2IxYTZiYmEyNTgwNWIzOWEzYWRiNGE4MDU3ODRhMDkwMWY1NTAyNyBsZWdhY3ktdHJ1bmsKKzU3MTQgMjBkNzRmYTNiNTBiMWJmMDcyYWQxOGJmN2EyZWIxNzBiMDhmOWRhMSBsZWdhY3ktdHJ1bmsKKzU3MTUgNWUxMDFlYWQxZTY5OTA5NTI0ZmI1MGQ3NDVhOTQzOTc3Y2UzYmExNSBsZWdhY3ktdHJ1bmsKKzU3MTYgMWNmNmUxMDUyMmUwOTE1NjAxZTA2MDQ4ZGE4NWI4MjgwNTFhMmRjZCBsZWdhY3ktdHJ1bmsKKzU3MTcgZWQwZDE0OGZjMDVjODc5Nzg2YWM0ZDZiN2RkYzI5NzQxNjUwZDRjOSBsZWdhY3ktdHJ1bmsKKzU3MTggMWEzOWQ0MDdiNGQzOTAyOWQzMTBlZjc5ODI0MDM1OTM0MzQ3OWI2MSBsZWdhY3ktdHJ1bmsKKzU3MTkgNDY3ZTBmMmQ2NzhhMTFmNDMxYjNlNmM3M2ZmZTc5MThjNGNhNGRjNCBsZWdhY3ktdHJ1bmsKKzU3MjAgZjg5Y2RkYTc0MDVhYzRjNzFkZjIyYWQ2ZTczMTU0MGM4YTM0NzNlOCBsZWdhY3ktdHJ1bmsKKzU3MjEgY2M1NDc0MjIxYzhjYjFhNjAyMWMyYmRiMTNkOWIxN2YxNDRkNTNlMCBsZWdhY3ktdHJ1bmsKKzU3MjIgMzMzMTBjYjZhNWQ3NjgzNDIwOThhMWY1NjE0Mzg5OGRjZDUwZjM4MCBsZWdhY3ktdHJ1bmsKKzU3MjMgYTZiMDcwNDEwNmM4Y2ZkNjUxOGQyZGU5MTdkYmNhZDQ0Mzk2MzMzZSBsZWdhY3ktdHJ1bmsKKzU3MjQgYmFkN2Y1NmM4M2IyYjYyYTE4ZWVkMTE2Yjg1Zjg2NjJjOGY5NmQ4ZSBsZWdhY3ktdHJ1bmsKKzU3MjUgNmU0OGZhYjY5OTBmMzE0ZmI3NjE0NTViM2ZmMjUyNjFjMDZkNjg4NSBsZWdhY3ktdHJ1bmsKKzU3MjYgZGIxMWEyYmZlYTY2ZGE0M2IwNjM2YTIwZTYxZjg2YmFmYmVhNzQ0YiBsZWdhY3ktdHJ1bmsKKzU3MjcgYjFjYTY1OTcxZTM2ZmFhNjY4NWVkNjEzYWQyMTNmYTE1YWFjODhiZiBsZWdhY3ktdHJ1bmsKKzU3MjggNGY0MDgzYTI2YmYyMjMzOTAxNTU3MTdmZDkzODEwNDc0NjA5NmE1YyBsZWdhY3ktdHJ1bmsKKzU3MjkgYmZiNjNiNDVmZjBmNjc3YWMxN2EwNjM5NmRkYWFiNzg0YzYwNmRiMSBsZWdhY3ktdHJ1bmsKKzU3MzAgOGM1OGFiN2FhNzFlZjEwMWYzMzNmNWQzODI5ODhmMzI3NDUyOTdmMCBsZWdhY3ktdHJ1bmsKKzU3MzEgMmMxZTNlODc1MTA5OTZmYjAzYmY2M2U3NjJlMWVlMGRhYzVhZTQzMyBsZWdhY3ktdHJ1bmsKKzU3MzIgMmY4MzdkODI0MTIwZDg5MmNkZjg4YjgxMmU4ODkzYzE5MzY3MzFmYiBsZWdhY3ktdHJ1bmsKKzU3MzMgMTU5Nzc0YWYyZWRlNjZjMGMwOTIyOGIzNTc2NmE5YWUxYmIwYTZmNCBsZWdhY3ktdHJ1bmsKKzU3MzQgOGU3MzNmOTJlZGMwOTM0ZjgzN2VmNGNlZDNlZjkzMjg1MTBjOTc3MCBsZWdhY3ktdHJ1bmsKKzU3MzUgN2VhYzAyYTYxNzZlZGYyODFjNWY0NTA3NWMwNjdlNjI3M2FmZmZhNyBsZWdhY3ktdHJ1bmsKKzU3MzYgMTE3NjE4ZGQwZTdmNTMzMDQwZjg4OTNmYWQzMmVjNWUxODJkNzY2MCBsZWdhY3ktdHJ1bmsKKzU3MzcgYjE2ZmNkMTI2YjFjMjRlNmU5OTcwODgxNjIxMGRiY2I2MTA1OGJmYSBsZWdhY3ktdHJ1bmsKKzU3MzggMDMxN2FjNTIyNjA1ODE3YzZmZTE3NTM2YWMyNTM5ZGU3MTE4NWJiNSBsZWdhY3ktdHJ1bmsKKzU3MzkgNjEyMjczMGI3OTg4NTE2ZjQ2YWU1Mzg4N2Q5ZDJiMGM1MzBkM2M3YyBsZWdhY3ktdHJ1bmsKKzU3NDAgZjk0NzgzYjliZmJhYjdlMTYwOTZhODAxMjc0MjcxYjkxYzhhODMzNiBsZWdhY3ktdHJ1bmsKKzU3NDEgOTc1Y2NmYTcyMWY2YmVhZjQ1Mzk3NTE4ZGY0OTI5NWMxMDlkNzY5NyBsZWdhY3ktdHJ1bmsKKzU3NDIgM2E4M2MwMTdkZjFlY2E5NTVlYTMxYjQ5MjA1MDIxYzM4NjNlZTU2YyBsZWdhY3ktdHJ1bmsKKzU3NDMgZjFmYjMyNmM3ZTJmZTFhMDhlYzkzNDUwNmRiNDdjYmZiNjJhZDg3ZSBsZWdhY3ktdHJ1bmsKKzU3NDQgMzZhMTg0ODk1ZWI5ODBhNmQ4ZWMzYzFhYjhlYTE2OTY3YTJlYzIxYiBsZWdhY3ktdHJ1bmsKKzU3NDUgNDNjNWU3YTNmYzFmYjYyYWUzNjdlOTZmNWMzYWM1MTc1YjkxMTM5YyBsZWdhY3ktdHJ1bmsKKzU3NDYgYTgwNjU3NjJhMzhlYTAxYzU1NmZmNGIzYTkyMTI2NzExOTEzYzgwYyBsZWdhY3ktdHJ1bmsKKzU3NDcgZjhhMDcxNzAyNGZlNGJmN2MzN2I5ODliYzdjNTYxOGZiNzE4ODNmOCBsZWdhY3ktdHJ1bmsKKzU3NDggODcxYzc2OGQwZGEyMjA3NzIzMmRiZWUxMjU3ZmM4MjExZDQ3N2EyOCBsZWdhY3ktdHJ1bmsKKzU3NDkgNmExOGM0Y2I2OGQ4NDRjNmVhN2I2ZmNjOWNmM2U2OGM2YTBjYzRlMSBsZWdhY3ktdHJ1bmsKKzU3NTAgOWZhMmUyMThlMmE4NGM2OGFiZjZjYmEzZTk1MmYwNjg3ODExMDI2ZSBsZWdhY3ktdHJ1bmsKKzU3NTEgM2EwZjg0YzY5MDUwYTNhYjJmOGQzNzUyZWEwMDY3MTc5ZDcyYzhkZSBsZWdhY3ktdHJ1bmsKKzU3NTIgMjEyZWFlNWI5NjYwYjU4ZTMxY2ZkYjM1NTFkZjE2ZDJmMWI2YThkOCBsZWdhY3ktdHJ1bmsKKzU3NTMgNmQ0ZjcxNDMwNzIyYjVlZGFkNzZiZDE2MTkxMmI2ZTU2YjRhOTVmMCBsZWdhY3ktdHJ1bmsKKzU3NTQgZTM4YzA5ZDAwODA2OGNmZjhmZmMwYTFhMzE3NDQyMmVjOWI2ZjE2NiBsZWdhY3ktdHJ1bmsKKzU3NTUgMjg4ZTMzN2Y3M2U3ZTQzNjhjNzA4ZWM1NzNlYzFlNjZhN2VkMGFjNSBsZWdhY3ktdHJ1bmsKKzU3NTYgNjZmNGJmOTQ2MjdmZWUwODg5NTA4NzU4ZDRjMjVjMzNhYTk3MjhlYiBsZWdhY3ktdHJ1bmsKKzU3NTcgM2Y0NTU3NzdmZjI4NDFhZDVmM2EyMjFmNmZkNDNjYjNiNzlkM2UyNiBsZWdhY3ktdHJ1bmsKKzU3NTggNDVlNDQ0NTQ3ZTVhMzVlOGZmMDAzM2ExMWYyMzU1ZWViYmJmYWJkMiBsZWdhY3ktdHJ1bmsKKzU3NTkgNzIzNTc5NzhmZmQyMmExODU2Mzk1NjNkYWViMDdhNTk4ZTkwN2Q2MiBsZWdhY3ktdHJ1bmsKKzU3NjAgYmFmYzEwNWJjN2NkOTlhNTJhZDlhNTJjZGQxOGRmY2E2MmQzNTNkYyBsZWdhY3ktdHJ1bmsKKzU3NjEgMmJkZGZiM2NmY2YxYWE4ZDgxMWZkZjQxYzU2MzU4MjczMDVlYTljNyBsZWdhY3ktdHJ1bmsKKzU3NjIgM2NhMTExZTBiMWE3Njg3N2U0ZGU2ODc3NzhiZmVkMjUyNjdlMGJmZSBsZWdhY3ktdHJ1bmsKKzU3NjMgMGQ2YjYwYjc0ODM4NGNhZjIxM2M4NWRiOGJkMTMwNTgxMGUzZjM1NyBsZWdhY3ktdHJ1bmsKKzU3NjQgNThlZjRjNDk1ZGU3NjJjOTQ2Yjg0MjE0MWM3MjQzNjM2YzAxMTMyYSBsZWdhY3ktdHJ1bmsKKzU3NjUgOWE0MDgxNDQwNzgzMDE4ZmVmMmY1NmY2ZjZjMjQ1YTAyZmJiNjdiYyBsZWdhY3ktdHJ1bmsKKzU3NjYgNDc3NjNhYzQ0YzQ4NmI3MjViNGRjMzFkZmRjNDRkOTFkMDYyMTgzYSBsZWdhY3ktdHJ1bmsKKzU3NjcgOTdjZDU3NzFjMjNlMjU3ZDJlNTczOWE5YTQ1MjA1MjZmZWJjNmI2NiBsZWdhY3ktdHJ1bmsKKzU3NjggN2Y1YjQzMmI4N2M0OGM2MzVmMjk0ZDE2MGVhNzBkOTAyNTBmNTg5YyBsZWdhY3ktdHJ1bmsKKzU3NjkgNTRmMDY3ODc1N2IwMGY2ZTMyYzc4NzkwYWE2MmU3OWM2YzMyMDBkNyBsZWdhY3ktdHJ1bmsKKzU3NzAgZDRkNWM5ZmE3ODU5MmExNmIzNTYxMGY2MDk5OTY5M2FiYzJkYjJlMCBsZWdhY3ktdHJ1bmsKKzU3NzEgOGE1MDk3ZTlkN2VlMmYzNmM2NzdlYTBkMzA3OTVlOTNmNTFmMTk0MCBsZWdhY3ktdHJ1bmsKKzU3NzIgODNkYWE1NGMxODFkZDBiY2MwMTgyMTdmNjU2ODVkN2E1MzI4NDVkMyBsZWdhY3ktdHJ1bmsKKzU3NzMgMTQwZDgyMzlhNDQ2ZThmMzFjNGRjMGFiOTc2ZmZiNjYxZDU4N2MwNCBsZWdhY3ktdHJ1bmsKKzU3NzQgMTNiMjRkMTAzNGJkM2JjYzcwY2Y1MDdmZWRmM2Q5MzkzYTRhNTlhNSBsZWdhY3ktdHJ1bmsKKzU3NzUgZTUyNDY1NzFmMGZkY2FjN2Q4NDE2ZWE3YzgwM2I3MzMwYjg5NGIxOCBsZWdhY3ktdHJ1bmsKKzU3NzYgYjgyOGJjY2RhMTg5ODM1Y2Y3OGQwYjgyYzQxMmEzNWRkYzA5MTJhYSBsZWdhY3ktdHJ1bmsKKzU3NzcgNjA0YjFmYzI2ZDYzM2E4OGUwMjdkMGFlYjkyNTgwMDZkODM5N2ZiNyBsZWdhY3ktdHJ1bmsKKzU3NzggZGYwZDAwOTE2MmI2NzUxODcxYmYwNThiMzFmYjY1YmExYmM3MzFmMiBsZWdhY3ktdHJ1bmsKKzU3NzkgYzA2NjRiZTdmNjYyNGI2Y2EwZjg1ZTY1OGU0OTRmODA4NjUwNzUzZiBsZWdhY3ktdHJ1bmsKKzU3ODAgNjhmZGM0MGFkZDJjYjNmNTVkMWFmYjI1OWIwOWUxNDAzNGY3MTU2NSBsZWdhY3ktdHJ1bmsKKzU3ODEgNThhNjczMjJjODk2MGNkMzM5NWE1NWQyMTk0OWQyM2NjODA1ZjFjNyBsZWdhY3ktdHJ1bmsKKzU3ODIgNDRmNDhhYWNhOGJmZjQ1OWJjMjJmMzRiODQ4MzY1ODhjYjU3M2UwMSBsZWdhY3ktdHJ1bmsKKzU3ODMgZTVkMWYyNDJkYWY5YzE2MDUxZGY0Mzc1MGI4N2MyNGFiM2E2ZDY4ZiBsZWdhY3ktdHJ1bmsKKzU3ODQgZTRmNTdkZDNkMjQ2NTM5NTgzNGI0ZmI5Y2E0NzdkYjJkODI3ZWExZSBsZWdhY3ktdHJ1bmsKKzU3ODUgOGI4ZDYwZmJlM2JmOTViZTMyNDgzYWNmNDAzN2UxZjZlOGM1NjEzZCBsZWdhY3ktdHJ1bmsKKzU3ODYgMzJiNGU4YWRlYmViODRmNzZjZmY0NDE0ODFjOTkyZDRjOWNlNDMyMiBsZWdhY3ktdHJ1bmsKKzU3ODcgNGU2ZDBiMjZlZmFmMzJlYjc3N2I4NWE4MDc0MWEyZjIwZTM2ZDI3YSBsZWdhY3ktdHJ1bmsKKzU3ODggOGRkZGE2NmRiZjJjODkyNmY5ZTQxODkzZWE3MDY3ZTA0YTMzYjYyNiBsZWdhY3ktdHJ1bmsKKzU3ODkgNTk2MzQ3ZGI2YTY4Zjc5NzY2YjM2MDQ4ODc2NjBiNTBjNWU0ZjYzMSBsZWdhY3ktdHJ1bmsKKzU3OTAgNjA5OGFhYThhZTdmYmNkOTI2MjhhNTk4Yjk4NDU2NDZkMzgxNjliMSBsZWdhY3ktdHJ1bmsKKzU3OTEgMzY5MjBiYmQ4MWE4MzQ0MTk0M2Y5ZTA5ZmFjZjJmNGZlMzQwYjU3MCBsZWdhY3ktdHJ1bmsKKzU3OTIgODk1MTQ0MjZiOWI4ZTRhMjA4NTM5N2I5MjAyYTE2MjQ0ZDE5ZDQ0MSBsZWdhY3ktdHJ1bmsKKzU3OTMgMWVhYjg0OTU0NjJmYjQwMmI5MTQwMjE0OGU3ODk0ZTVlZTYzMmUzNiBsZWdhY3ktdHJ1bmsKKzU3OTQgNDlmN2E0YTFmMGY2Y2U3N2M1YWZiZTgwOTc3N2NlY2YzOWUyYThjMyBsZWdhY3ktdHJ1bmsKKzU3OTUgNGM2NTUxMTVkZmNlN2RmZTQxYThiZGFmMjhhMGZhNGQ4ZDdkNDZkNiBsZWdhY3ktdHJ1bmsKKzU3OTYgNjdkMzQ3YzMyZmZmYjhjOTYzNjE1Zjc5ZDUxNDkxOTNlYzY4ODE0ZSBsZWdhY3ktdHJ1bmsKKzU3OTcgOWYxYjZlMmRiOGUwMTJjMzc4MjNhNDU1YjljZmUyZDBhMmQ1ODJiZSBsZWdhY3ktdHJ1bmsKKzU3OTggMGRhMjRmMWMzZGRlNmRhNGZkYzdjZDMzNzE5N2RkNzBjZjZiZWM1OCBsZWdhY3ktdHJ1bmsKKzU3OTkgOTU2NDNjMGIwYzBlYjA4MmIxNmU5Y2VhNTYzNGJmNmZiZWI4OTA4YiBsZWdhY3ktdHJ1bmsKKzU4MDAgNGI1YmZmOTU4MDRlNzJiNzc5Y2FhNGVhYTRmNTcwMWQzYmUyZGRhZCBsZWdhY3ktdHJ1bmsKKzU4MDEgOTY5YmQ5MTFlMTE0ZmNmMzJlYTRkMzllM2M1N2U5ODJiMzQxNGY2ZSBsZWdhY3ktdHJ1bmsKKzU4MDIgOWJkMWU0MWQ2YjExNmE1NWFkNzNkNThmZTk2M2VhODBjMWFlOWE2OSBsZWdhY3ktdHJ1bmsKKzU4MDMgMjQ5N2M0M2Y0OTgzZGJjYzU2ZjcyYjE3NTM5MjFkYmFjNjdhYzMzNSBsZWdhY3ktdHJ1bmsKKzU4MDQgMjAxZGU4NDU1YzJiYzlkMWEyNzI2ZDRlMmZlYjE0ZDE1ZDM4YjNmNCBsZWdhY3ktdHJ1bmsKKzU4MDUgMmRiNTg1ZWEyMThiZmRhY2M4MjI3MDA3NGI2NGJhM2M5ZjRiZTBlNSBsZWdhY3ktdHJ1bmsKKzU4MDYgMTZjYjA0NzMyMjRjZDUxN2EzYjZjOWZmNTVmZTM3YTcxZmNiOTIyYiBsZWdhY3ktdHJ1bmsKKzU4MDcgOTFjM2U5ODIxZDBhMGQ5NDFkNDc5NTNlNDVhMDNmN2ZlZjdmNDI3NiBsZWdhY3ktdHJ1bmsKKzU4MDggMzY0MTYxNDAxMDVhMjk0M2JkNDBhNTJlYWFjZTU3NjQ3NjdmNTgwMSBsZWdhY3ktdHJ1bmsKKzU4MDkgMDA0NTM2MTNjZDRjNzc0OTJjNGE5MmFjOWZjODEwNjMwMmU3YmU0ZSBsZWdhY3ktdHJ1bmsKKzU4MTAgMDEyMzc2ZDNhYTE0N2IwMmQyNjNlMDU4Mjg2NDhhNmYxNGYyZDJhMyBsZWdhY3ktdHJ1bmsKKzU4MTEgM2I0ODQ4MTJhY2Y2ZTJlMTk3ZmZkODBlMjNmNjYzNWNiZjc5NGMwMiBsZWdhY3ktdHJ1bmsKKzU4MTIgMTcwOWQ1ZmVkNTI4ZTZhZWIxZWQ1MjAwNGRhMjM0M2ZmOTc3MDE5ZCBsZWdhY3ktdHJ1bmsKKzU4MTMgNTY4OTc3NjBlOTU4NzI1NzRlNjEyYWI4NDJjZjVjZDZkMzliNjdlNCBsZWdhY3ktdHJ1bmsKKzU4MTQgZmFhMjFjZTFmZjAxZGM3OTNhZDdhNzI5NTI1YTA2ODNhMjMyZWU1NSBsZWdhY3ktdHJ1bmsKKzU4MTUgZWZkZGUxZDc0MjRiOTA0NmFlOGY4ODNhMTRkZThiYzhlMDM0ZTE3OSBsZWdhY3ktdHJ1bmsKKzU4MTYgODIwOTk5OGQ2NjllMTZhMDhmY2E0OWNiZTdhYTI4OWYxNDZkODA0YSBsZWdhY3ktdHJ1bmsKKzU4MTcgMmJlMGJkZTNhMDcxOGUwMzc0ODA4OTg5ODY5NTM0OTJmODE4MGNkYiBsZWdhY3ktdHJ1bmsKKzU4MTggYWUwMDRhNDUwNTBmZGE0NDcyN2RiZDczOGJlNjAzNTMwYzQ5MjZkOCBsZWdhY3ktdHJ1bmsKKzU4MTkgODFmNDVmNjkzODhlMmRlN2JlNGYyNTVlY2I2ZDg3MThiZDUzYWQwYSBsZWdhY3ktdHJ1bmsKKzU4MjAgZjZhODQwZTgzZDJhNTJiOGY0OGZjNjBlOGU1MTg4OWI3NTIyOWU4NiBsZWdhY3ktdHJ1bmsKKzU4MjEgMGIwMjFjZjQxZGRhYzBiYjBjMmFhMGI3NTRlOGNjYmJjMTllNTVkYSBsZWdhY3ktdHJ1bmsKKzU4MjIgZGRiNDUxMGVlYjQ2ODM1MWZiOGQwZjY4NmRkYWYxOTMzZmY2ODU2MiBsZWdhY3ktdHJ1bmsKKzU4MjMgNmQ3NjJhMmY5YjY5ZDY4MDMzNTQ2M2Q2ODE0MDYxYjEyYWYyZDIwZCBsZWdhY3ktdHJ1bmsKKzU4MjQgMWExN2JhNTBiZDY4MTkxNzcyNjU0M2RhODgzODNhZjcxZTgwNTNmZSBsZWdhY3ktdHJ1bmsKKzU4MjUgMjFkODk2OTgzMjljNmIyYjJmZTdlZDg2OTQ1MDYzNTFmMTViNWYxYSBsZWdhY3ktdHJ1bmsKKzU4MjYgMDg5ODU0MzE1MDBiNzE2ZWQzMDA5OTI5YjhiOTg3YTdhNDgwYzEzNSBsZWdhY3ktdHJ1bmsKKzU4MjcgZTBlZjAwOWIyNzAyMjNmMjI3MjU2MGRlMTA4MzNmMWE4MDEyNGFiZCBsZWdhY3ktdHJ1bmsKKzU4MjggZTI4MTI0YmI3ZmFiMzE4YjFmZmY4ZGY1ODNlNDA0NzI1MDg1MDg5MSBsZWdhY3ktdHJ1bmsKKzU4MjkgNmNhOTc4N2NkM2FhYTBmNTZhM2U1YWVmZDlhYTc1ZjY1N2U2MTBhNSBsZWdhY3ktdHJ1bmsKKzU4MzAgMzY5YjMwZjc4ZDYzZmNlNWE3MGYwMjI2NTVmMGNmZGU1MzlhNWI5YSBsZWdhY3ktdHJ1bmsKKzU4MzEgYmMxN2U4MzEzZWEwNmJiNGIxNGU0Yjc2NTY3YTNjZjIyYjU3ODQzNSBsZWdhY3ktdHJ1bmsKKzU4MzIgZjhmZjI4MzI5OTcxNjJkNWZjMmU5NjZiNjVhYjExOGU4YWE1NmMzMiBsZWdhY3ktdHJ1bmsKKzU4MzMgYzI1ODY1ODg0NjQ5NThkNDg0ZTZmNDAzYTIwMzc2MzYyNGFiODQyYyBsZWdhY3ktdHJ1bmsKKzU4MzQgNGUxYWQyNDQxMGE3MTE2ZmNmNGI3OTQxNjFlOTNiODA5NGVkODNlNCBsZWdhY3ktdHJ1bmsKKzU4MzUgYWYxYzJmMzZkYzM0ODY5ZTUwY2ExOWQ0ZGNmNDY1MjczYThjMTllYiBsZWdhY3ktdHJ1bmsKKzU4MzYgM2NmMmQ4YTJkNzRiMTNkNzc1ZDVjMGQ2MTczYjFlN2IyNWQwOTk3YyBsZWdhY3ktdHJ1bmsKKzU4MzcgMDUwODRlZTU0ZTU0OGUyY2I4NDQ3N2M3ZjJmMTRkYmZkZjFiOWI5NCBsZWdhY3ktdHJ1bmsKKzU4MzggNmIwYWY3OGE5MGU1ZjExMTg3MjNhOThjZjc3YTM1ZDM2ZmQ1MjBiMiBsZWdhY3ktdHJ1bmsKKzU4MzkgMzU5MDhlMzc1ZDFhNmY5OWZhMjIxOTg1Y2IxNmQzODlmNWY5MDk4NyBsZWdhY3ktdHJ1bmsKKzU4NDAgZmUxOThkZWUwNjQwODYyN2U3M2M2NmY3MmIxMzk5Mjk1ZmU3ZDQwOSBsZWdhY3ktdHJ1bmsKKzU4NDEgMGM4ODIxYmY2ZGI1NjZhYmQ3MzE0OWQ4MGFlOTJjMjM0ZTVjYjA1MCBsZWdhY3ktdHJ1bmsKKzU4NDIgMjhmNDFlYzdjNWNjNDIzNTU5ZjVhZjViNDc4YTUyZGEyNTUzMDNkYyBsZWdhY3ktdHJ1bmsKKzU4NDMgZTA4NjJmMDVlMTg1MDc3ZWFmMDMxNDQ1NGEyNzE0M2YyZGZiMGEwMiBsZWdhY3ktdHJ1bmsKKzU4NDQgODI3MzM4Njk5MDk0NDRkNDllYTY3ZDA5ZjI1ZTgzYTZmODZjM2FiYSBsZWdhY3ktdHJ1bmsKKzU4NDUgNmEzZmZjMWRiYjk1ZDg5NzE3MDIzMWFjM2FlNDU2NWQxNWQ4MDBlYSBsZWdhY3ktdHJ1bmsKKzU4NDYgMDQ2ODg4ZGExZjQ0YTZmNTExM2NkZjJhNWU5ODViNGI4OWY4ODQ2OCBsZWdhY3ktdHJ1bmsKKzU4NDcgMmVlMWY5MjNjYjE5MzIxNmNjMmVkMTAyNjRiZTM5ZGM5M2QyYjFmOSBsZWdhY3ktdHJ1bmsKKzU4NDggYjdiMmMxM2I1ZTMzMjg2MGNmYmExYmM2ZGRmZWJiYjEzOWVhNWZlNCBsZWdhY3ktdHJ1bmsKKzU4NDkgYTQ0MjM1ZTk5NGYzN2Y0OTdjN2I2YjIyZDE1Mzk5M2RiMTM5MjE4NSBsZWdhY3ktdHJ1bmsKKzU4NTAgOTJmMTFhZWZiNWNhMzVmNDQxZGNiMzhhOTU1MGUwYzlkMTYyYTg1ZSBsZWdhY3ktdHJ1bmsKKzU4NTEgYzcxYTdhNGY1ZjhlYTU4MjVhMDc4YWNiM2RmNWYwNzBiZGFmZDhkNiBsZWdhY3ktdHJ1bmsKKzU4NTIgZDU1MzJhNzFiNDU0YjZjMzI0OWU4MWVhMjAwMjNmMTA5NTcxMjc1OCBsZWdhY3ktdHJ1bmsKKzU4NTMgNmY1ZmViM2I0ODI5Zjk4YzA3ZDRhNTcyMjc5NWUzOTk2ZDAzMDRlOSBsZWdhY3ktdHJ1bmsKKzU4NTQgOWZhMjIyOGJiMDk2MjBlYmQzZGQ4MjA2ZDhiNGJhZjhhZjE4YWY3YSBsZWdhY3ktdHJ1bmsKKzU4NTUgMTY5NmZiZjMwMmI2M2ZkMWQ2MWI3MjRjOTU1MDNiYjBkNTQ1NDVmZiBsZWdhY3ktdHJ1bmsKKzU4NTYgZDE1ZDI5YmJjMWNlMTFmY2RjOGY1NTZiYTAzNWJhNTNhZjA5N2FjMSBsZWdhY3ktdHJ1bmsKKzU4NTcgODMyZjI2ZDBlMDY5ZjZkNTllY2NmMzA1YzllYmFmMTI4M2ZlNjk1MyBsZWdhY3ktdHJ1bmsKKzU4NTggMWMwMGQyODQ2ZTg0OWY2OTYyNWNjNmI3MjI3OWFjMDUzYWUzOTRiNCBsZWdhY3ktdHJ1bmsKKzU4NTkgYWRhMjIyNTg1MzY2ZTZmNTkzNGE5OWMyM2E3NmQ0ZGNiYjE0Y2I4MSBsZWdhY3ktdHJ1bmsKKzU4NjAgZDlhNzk5NzdiMzhkNDM5ZWEzZjEzOTQ5NWI1ZDI3YThiZjhiMzhhOSBsZWdhY3ktdHJ1bmsKKzU4NjEgNGZlYTZjZDk0ZGZhNGQ1OTIyM2RlYjVmOGRmZTAxMjU0ODkxZWE0YiBsZWdhY3ktdHJ1bmsKKzU4NjIgZjU5ODYyMzA1MGEzOThjYTNiMjI4MmNkYTBiMjkyM2EyMjNlMTc4YiBsZWdhY3ktdHJ1bmsKKzU4NjMgNTQ2NGZiMmQxMjllNTA4MTkyMTk5OGIxODkzZjUxYzMxN2NhMTg4ZSBsZWdhY3ktdHJ1bmsKKzU4NjQgNWQ3YTE1ZGY3MTU1NTI1Njk2ZWZmYzMwM2JhYTk0ZDc1NTU2N2RjOCBsZWdhY3ktdHJ1bmsKKzU4NjUgNDA5YTg5YzVmNjZkNTJiMjJiNGU3ZjcxYTkwOWY5ZGY4MmRjMGY5YyBsZWdhY3ktdHJ1bmsKKzU4NjYgMDI0MzVmZDk1Mjc3YzYyZDJiZjRkNzI5YTNiNTU3NmQ5ZGY2MWU0YyBsZWdhY3ktdHJ1bmsKKzU4NjggMTE2ZGI3MzQ3ZDAxYzRjNmU1ZWUyMWU0YzI5YTUzZGM5ZmNiYzRmYiBsZWdhY3ktdHJ1bmsKKzU4NjkgMWRmOGY1YThiMjE2ZDExMTU1N2VkZjgwYmRlODZlYTE4YmQ4ODg0NyBsZWdhY3ktdHJ1bmsKKzU4NzAgNTJkY2U0Y2RjOTMwZTAxYThlMjg5N2VhYzk2OGZiYzQ1OWM3MjcyZiBsZWdhY3ktdHJ1bmsKKzU4NzEgYmE4M2RkNDU4NTMzMTE4NTUxYTlmM2YyYzQ0ODQ1NGMzNmQ0NzY1MSBsZWdhY3ktdHJ1bmsKKzU4NzIgZTk5NGU2N2JjYjk1MDAxZGZkOWU0ODU5Yjc4YTI2OGYxMjQwMWUwMiBsZWdhY3ktdHJ1bmsKKzU4NzMgYzI4MzQ0N2I5ODVmNTJlYTQ3ZWIwMDQxZTk0NzM5OTkwZTQxMmY1MiBsZWdhY3ktdHJ1bmsKKzU4NzQgODEwZTY5MGFhNjAyYjAzMjQ2NzFkNWIxZWMyZjkyZTk1ODU3NDFiYiBsZWdhY3ktdHJ1bmsKKzU4NzUgZjI2MTRhYzczNWQwYzI2YzYxYThkNzg4ZmYzZjc4ZDkwNmNjYmNmMSBsZWdhY3ktdHJ1bmsKKzU4NzYgMzk3ZTZkNTNhN2FkZTU4YmI4YzkwZmFiM2I2Y2ZhZjJhYmQzOGJjMSBsZWdhY3ktdHJ1bmsKKzU4NzcgMjc0MDZjMzZlOGJkNDQ5ZTc4OGRiNzUxMzAxMTQ1NDc4Y2E3ZTgyYiBsZWdhY3ktdHJ1bmsKKzU4NzggMDIyNDc0YWMyNDUxZTQ5MDA2ZmZlMDU1YmQzZTQ1YmRjNGIzMGIyZSBsZWdhY3ktdHJ1bmsKKzU4NzkgMTQ5OTFjNDMzMWRmMDg0ZGIxNDRiZmVkYzU5NDIyYzUxYTlhM2IzNyBsZWdhY3ktdHJ1bmsKKzU4ODAgZjZiZGRhMzcwY2I3NGIwZmQyM2U2NzVkNzYyYTZjN2RkMzc5ZjAzYiBsZWdhY3ktdHJ1bmsKKzU4ODEgMmZlN2Q0ODk2NTRlOGFkNWM1NzMxYzAwYzVjMGZkYTE5NGVlNjA5NiBsZWdhY3ktdHJ1bmsKKzU4ODIgMDk4Y2JkNmQxOTZlNGY3ZmRjOWZhODgxYmZiNTY3YTQxMzc5NWM3MiBsZWdhY3ktdHJ1bmsKKzU4ODMgZjZhNmE2OTkyN2ZmZWYyMTUzZjIwZWY2MmRlZmNhYWI1ZTQ4YTc5ZCBsZWdhY3ktdHJ1bmsKKzU4ODQgYjZjMGE0MWU0YTQ2NTgwYzJkMDMzZjY5NDMyZWFjOTE1MjFmMDYxMSBsZWdhY3ktdHJ1bmsKKzU4ODUgZTFkZjkwMjA1YTMzMzkzNmQ5NjY5MWViNzQ0NDQ2YjA0M2JiODg2MSBsZWdhY3ktdHJ1bmsKKzU4ODYgMGFjNWZiYWY4YWVmOGJhYWNmNDkxNmUzNjNlMjQ1Mzg0MWI5ZDQyNSBsZWdhY3ktdHJ1bmsKKzU4ODcgZTA0NWY5MTMyYjA3YmNiZGFlOTAzNmM5YWZlNGE5MGM0OTU5NGQ3MCBsZWdhY3ktdHJ1bmsKKzU4ODggMDEzYmJlNGVmOTQzN2FjNTgwOTBlMDExMzMxZDVmMWRiMTljNTg1OCBsZWdhY3ktdHJ1bmsKKzU4ODkgOTBiNTQzMTI2NjFhMzUwMzRlNzY0ZDE4MzY1NGZiZjUxMmRjZDVkMiBsZWdhY3ktdHJ1bmsKKzU4OTAgNjdmNWQyOWQ0MDViMmE5MGY3MDE3ZjJmYTVkZDRjNjI4ZGU0ZGE4YSBsZWdhY3ktdHJ1bmsKKzU4OTEgMDJjOWRhMjBiNDFlNjkzNjZlZTJjYmI2NDZhNjYwNWNjZjRiOGQ1MyBsZWdhY3ktdHJ1bmsKKzU4OTIgMjRiZWUzNzgzYjM1ZjNmNGM5MGZlMDYzMzRiNjFkMjQxZTMzMDI0YyBsZWdhY3ktdHJ1bmsKKzU4OTMgMjMyNTRkYWEyNDdiODc1MzIyYzgyYzEwNmRkMmMzOWI4MGFkZWJmNCBsZWdhY3ktdHJ1bmsKKzU4OTUgNjQwMmJlMjY4OWM1NzlkMmRjYmJlYWMyNGFjZGU0NzlkNWNiMzViNSBsZWdhY3ktdHJ1bmsKKzU4OTYgYWY1ZmY1MjMxZDRhMWQ0YWJmNzBiNGZhNTEwZjZlNjA1ZWFhNmFjNCBsZWdhY3ktdHJ1bmsKKzU4OTcgYmE5ODMxNDA3MThhYTQ3Y2U4MGE4NGI0MTZiMTExZmEyYzI1ZGIzNyBsZWdhY3ktdHJ1bmsKKzU4OTggZGE4NmIzYjU0MzYzY2NkNDNkOTBlYThmZGI5NDBmNDg2NWM0OTJiMCBsZWdhY3ktdHJ1bmsKKzU4OTkgNTc4NDY2OGQwNTc2YmYxMmNhOTM3MzAzYmNlMjI5OTVkNjYyYjg0OSBsZWdhY3ktdHJ1bmsKKzU5MDAgMjZiZWM5ZTIyZTVkMGY1NjU0MWZkNjkxOTJjMjM3MzJkMDcwOGRmMSBsZWdhY3ktdHJ1bmsKKzU5MDEgNmFiYzc1ZWM2ZDI5ODI1MGM2MDcxZDFlYWM2Zjc0M2JlZDI4MTRiNyBsZWdhY3ktdHJ1bmsKKzU5MDIgNTc4Y2EzMDJhNTk4YzM2NmY4MDA0M2VmYmNjMmZjMjQ1ZmJkMWYzZCBsZWdhY3ktdHJ1bmsKKzU5MDMgNTI5ZjRkOWNiZTNkOGU3MjEzZWRkM2FkZDQ4YWY0N2NmMWUyNGMyZiBsZWdhY3ktdHJ1bmsKKzU5MDQgZjcyMDUwZGQ2MWE5YzNmN2NkZDliNTFlMGZmNGE0ZGYzNmJiOTA2ZCBsZWdhY3ktdHJ1bmsKKzU5MDUgZGI5ZjZlZGU1OGE3NjZjMDliZmQxODc1NTg0YjFkY2JkYzI5NzVlMSBsZWdhY3ktdHJ1bmsKKzU5MDYgZDcwMTQ5MjAyYzkzZGM2MzJlNDE5NGVkYzc4Y2FhNjY0ZjZlNzEzMyBsZWdhY3ktdHJ1bmsKKzU5MDcgZDBkMWEyMWQ0OGIwYWQzY2Y3Y2ZiODE1OTA1MGM2ZWMwMGJmYjcxNCBsZWdhY3ktdHJ1bmsKKzU5MDggMWFmMWFkY2E4MjQyNzQ4YTdjYWI1ODEzNGQzOTgwNGM3ZWZiZDRiMyBsZWdhY3ktdHJ1bmsKKzU5MDkgM2JkZTRiNTlhNWQyZTBjYmJmMzYyZWY3N2Q4N2U0OThlZWY1OTA4MCBsZWdhY3ktdHJ1bmsKKzU5MTAgNTU4MDhmNjAwOWNkZDAyMzc1ZTNiMTM5ZjBiZGM0ZDY1OGIwMDUxMSBsZWdhY3ktdHJ1bmsKKzU5MTEgMDY2YThhZTRkNDA2M2FiOTk5OGE3ZjI3MWI2MjAwYzUyMGZmMGQ4ZiBsZWdhY3ktdHJ1bmsKKzU5MTIgMWZmMTI4MDRmZjJhNzQ1ZWE5YmYxZDlhY2U1MWYzNmNlM2Q5MjM4MyBsZWdhY3ktdHJ1bmsKKzU5MTMgZTc2Y2EzNGQ0OGYzZWVmMzE1NTI5MDZiMTI4MmM3MTFlYWU3MzIxMSBsZWdhY3ktdHJ1bmsKKzU5MTQgMDc5NzdiZjBkOTk3MGI3YzFiOWQyNmJiMmUxZWEwZWU4NDg5Nzc1OSBsZWdhY3ktdHJ1bmsKKzU5MTUgNjIzYmE5YmRlYjIyMTUxYzkwZDQ1NmJkMTNmOWJiNjI0MzRjMzkxYiBsZWdhY3ktdHJ1bmsKKzU5MTYgZGI3NmZkMzkwZjc0OWExZmQwNTU4MmRiMDk4YmIzNDM3MmFmYTE2OCBsZWdhY3ktdHJ1bmsKKzU5MTcgZjkxZjYxOThiMjc2OGY2YTUwZGE2ZTdhMjBjMzQ3ODY2Y2Y2N2Q2YiBsZWdhY3ktdHJ1bmsKKzU5MTggYzNlNTFlYjFjMTRmZGZiY2Y5M2IxYmFhMTBmYzA0ODBlYmQyYmU4NiBsZWdhY3ktdHJ1bmsKKzU5MTkgNzEzYmQ4Mzc3MzgyMGZiZWEzZDdhYjYxM2YwZGI2MzdjYmQ4N2YzMSBsZWdhY3ktdHJ1bmsKKzU5MjAgNWFiYmM5YjVmZGYwYjI3YWEyZjIxYjQ3ZTIxNjhkMWRhY2UxZjkxZSBsZWdhY3ktdHJ1bmsKKzU5MjEgZWM4NDk0OWY4MWVlZGY5M2ExMjQ3MzMxYTNmOGZlNzNmNzcyZWIxMCBsZWdhY3ktdHJ1bmsKKzU5MjIgYTdjMjczNzY4N2MyMTJlNTVmYWU2MWQ2N2JjZTgwYzYzZThmOWM2YiBsZWdhY3ktdHJ1bmsKKzU5MjMgZTY0NmFmYzUwYWM3M2E5YTNjZmM4NzQ0ZDM1NmEyNzZhNTcxNDE5OSBsZWdhY3ktdHJ1bmsKKzU5MjQgMTQ0NGEzNTI0ZWRlMDliMDQwN2EwOWFiYmIyYzBiNTBhNjk5MmE5YSBsZWdhY3ktdHJ1bmsKKzU5MjUgZGNjNTk0OTM0OTlhZTcwYmQyZGEwYzYwZGQxNTc0MDJmNzlkZTEwMiBsZWdhY3ktdHJ1bmsKKzU5MjYgYTcxZDJmZDkwZmE4N2I4NGY5YjE0Y2E1M2MzMDYxYTAxZDMxODI1MSBsZWdhY3ktdHJ1bmsKKzU5MjcgNDA4ZGZjNzE4OTUxOGYxZDRmYTk2MDAzODcwZDhkNzU4NGQ0ODdjNiBsZWdhY3ktdHJ1bmsKKzU5MjggNzA1MjJkYjExMDE5YThjYjdjMjFiODE2MWNhZTRhN2U2ZGU2MGUxZCBsZWdhY3ktdHJ1bmsKKzU5MjkgOTdiMGU5NjI1ZWIxZDVmODBlYmI2ZjcwNGZiNTY1MThhMjY2Y2JjZCBsZWdhY3ktdHJ1bmsKKzU5MzAgODAzZmJjZGNmYzlmODdmNzQ3Y2Q0MGZmMTM4OTMxZGQ0N2VmZjNkZCBsZWdhY3ktdHJ1bmsKKzU5MzEgOGIzZjJhODYyMGY1NGZiOGI0NTRjYTVlOGRhNWFmNDdiOWJmNzExOCBsZWdhY3ktdHJ1bmsKKzU5MzIgZDE5NjhhN2NjNjIwYzE2MTAxY2Y2Y2FkMTYzZmUxZWIwMTA1MzgzOCBsZWdhY3ktdHJ1bmsKKzU5MzMgOGRkMDE4OGU1MmE3YzhjNTliOGNmZTAzMjVjMWIyMWY4OGU4MjUxNiBsZWdhY3ktdHJ1bmsKKzU5MzQgZjBiYWFkYmZjYWJkYjUyZGNiNmYyMGNhYmIxMDk3Nzg0ZDBkZmJhNCBsZWdhY3ktdHJ1bmsKKzU5MzUgMTQyNWZjNjQ5MWViYmZjZDliMmZiYzQ3MjU5ZGM3NDA3ZjcwMzUyMiBsZWdhY3ktdHJ1bmsKKzU5MzYgNDUwZjRkNDZkOWRiZjAxMzZlOThjNzNlMjhlYmFlMjQ3OGFlM2VhOSBsZWdhY3ktdHJ1bmsKKzU5MzcgNjIwYWIzZGIwNzkzNGM0MTgxYmUyZTdkYjliNTU5NzRkZDViYmViYiBsZWdhY3ktdHJ1bmsKKzU5MzggZTkwNDMyMjM5MzVhZDM0Y2NjZjkxNGQ0YTBiMGM5MWZlM2Y1OTVmMCBsZWdhY3ktdHJ1bmsKKzU5MzkgYjM4ZmRiMDA4ZjFkYzMxYTk1OGRiYzA0MTcwMDk4OTdhNjk2NjZiZiBsZWdhY3ktdHJ1bmsKKzU5NDAgYWE4YWRmZGQzYWExZTFlOWFlNWIyY2UyYzI1MjhiZGQ3MTI2ZTBkNCBsZWdhY3ktdHJ1bmsKKzU5NDEgNTBhYTE2ZjgwOWQ3NjAwMzJjMDQxZmQ1ZDQ2NDE3YmU2MzY4M2EzYyBsZWdhY3ktdHJ1bmsKKzU5NDIgYTI5MmI3NTgzYzAxNWEyODJhMWVmOTY2MmM3YWY3ZDBjODQzYWE1MSBsZWdhY3ktdHJ1bmsKKzU5NDMgMTEyOTllOTVjYWU4NDBkNzAxM2IwMzYwYWMxOTJmY2M5NjdlZmExMiBsZWdhY3ktdHJ1bmsKKzU5NDQgMDczNTUwZTMxMjczMDc0N2Y1NjM0MjE0MTUzMmI5MGM3OTBmYzhlYSBsZWdhY3ktdHJ1bmsKKzU5NDUgMzVjNGE0OGQ5ZGExNjk0YzUwZTZmODgzYTUwOTM3ZTZjMTYxMjM2MyBsZWdhY3ktdHJ1bmsKKzU5NDYgYTRmMDFkNDNkYWQ2OTkwMTVkMTYwNmE0YmE1YjczOGVkMzAzMDhkYSBsZWdhY3ktdHJ1bmsKKzU5NDcgODljYWZmZDJjMDYxNDg4MzVjMjhkNDY0NmU5YzYzM2NiNjg3MzczYSBsZWdhY3ktdHJ1bmsKKzU5NDggYWVjOGJiY2Y4YjBlNWYwMmFmODI3ZGM0OTNkZWRiNDBjM2VmNjFmNCBsZWdhY3ktdHJ1bmsKKzU5NDkgODI3ZjExYWQ2NWRmNjNkZDg3ZDlkYTlmYmEyNDRiNTEzZDk3YzE2ZSBsZWdhY3ktdHJ1bmsKKzU5NTAgZTI5MGZhZWI5MmM4NWY3ODNiNDMyM2QwN2NhYWNkOGZkOTY5MWZkNSBsZWdhY3ktdHJ1bmsKKzU5NTEgMDBjYTkwMGM3NzQyYzVlMDczNDI3NjQwYmIzMzVmZGVlMDY2ZWQ1ZCBsZWdhY3ktdHJ1bmsKKzU5NTIgZmVkOTNkMmQ4OGZjNDZmOWNiN2U2MDVlNTQzMmZhOGNjMmI4ODlmNCBsZWdhY3ktdHJ1bmsKKzU5NTMgY2UyN2UwMzI4NDYyZWQ5NmYzOTBjMjg2ZjIyMjQ1YjE5NzNjMTI5YyBsZWdhY3ktdHJ1bmsKKzU5NTQgNjFmMTlhN2IxZmYxMDZjNjdlOTUzMjk2MjEwNWU4NWY0OWRjM2VhNiBsZWdhY3ktdHJ1bmsKKzU5NTUgMDJhMjNlNmU0MTRhZmZlOTQ3OWE4ZGVmYzU4MTc4ZjJkOTQ2NjUzZCBsZWdhY3ktdHJ1bmsKKzU5NTYgODM1NTcxNTNmNTQ0NzQwMTMzM2VjNWQxYmNiZjAyYjM3YWFhNDFhZCBsZWdhY3ktdHJ1bmsKKzU5NTcgMmMxNzhiZjcwZjdlZjM5YzE3NDRhZjRiYTg0MzE4YzZlOThkYTZkOCBsZWdhY3ktdHJ1bmsKKzU5NTggM2I2ZWJmOGQyYTU5ZTY2OTBjOTI2YWRkNDY0Y2E5OWJhYjg5NmY3MiBsZWdhY3ktdHJ1bmsKKzU5NTkgMWRmYzUxOWVhM2NiZTQ1ZmQ3ZjAwNGMzY2QxYjYzODU4YTFkNGY2YiBsZWdhY3ktdHJ1bmsKKzU5NjAgMTZhNWY2MDQ4NDYxZjgzOWNjZTM2OTg0OThmOTJkODZiMDI1MWU3MiBsZWdhY3ktdHJ1bmsKKzU5NjEgMDgxMzBmMDBjMThkYjUwM2Y0ZTM5NWNhMmU1NWQxYzc3OTExOWE5OSBsZWdhY3ktdHJ1bmsKKzU5NjIgMDNjNmMxODMyNWVhY2E5NjJjMzE4NTc1NjQyMWM2N2VlOTM3MmY0OCBsZWdhY3ktdHJ1bmsKKzU5NjMgMTQyY2JhYmRkOTQ1NTZhMzNiNTRmZTBlYTI0NzQ4YTA3YTJlM2IzNCBsZWdhY3ktdHJ1bmsKKzU5NjQgZjcwZGJlNjA4ZjAzMWY3YmFkOGExZWVjMjAxZjE1OGY4MmE0ZTFlYyBsZWdhY3ktdHJ1bmsKKzU5NjUgOGQ0M2I4MzAzNDFiYjU2YWVmMWFmYjNmMDZiYjVmZjVhMTMzZmE5NiBsZWdhY3ktdHJ1bmsKKzU5NjYgZDYyNDZhZWI0YTNmMjc0MmUyY2I1YzI1NjQ3MDczY2ZjMDJkOGYxYyBsZWdhY3ktdHJ1bmsKKzU5NjcgY2RlYTNmMjdjZjdjNzBiODIwOTRlNjY1MmM2YzFiNTJlY2VmOTIwOSBsZWdhY3ktdHJ1bmsKKzU5NjggNWYyNTA0MGZkNjNlNmY0MGQxZTY3YzZiNmQ3NDcxNTJhMjA0YjdkZSBsZWdhY3ktdHJ1bmsKKzU5NjkgZWFlNzBkN2YyZWM3YzhlMGE1ZTExZWM1NzdjZGJmYjkyYTQzOTcyMCBsZWdhY3ktdHJ1bmsKKzU5NzAgZWI1YjhkM2Q4YWNmNDI3YjNiYzNlZmUxNjY1MThhZmYyNWQxN2RiMyBsZWdhY3ktdHJ1bmsKKzU5NzEgNjE4OTRiYTU3MWY1YTgzZjUzYWMyNWIxMDk5YzkzOTUzZTU4OTE5NSBsZWdhY3ktdHJ1bmsKKzU5NzIgODk5YWVmZWE4MDFjOTlhZTM0Yjc3NTZiMDA1ZGY2ZThlODhmNmRkMiBsZWdhY3ktdHJ1bmsKKzU5NzMgZThkNTAxYzg4YTNlM2U5YmRjZDZmZWY4NGYxZDA0ZDY5ODEwY2ZiMyBsZWdhY3ktdHJ1bmsKKzU5NzQgZjZiZDU3ZGJkNTI0ZGVlYjc1OTliNzhiMzZhYjhiMmUxNjY2YWUzZCBsZWdhY3ktdHJ1bmsKKzU5NzUgZDI0ZjhkNzllY2EwNzRjMDIwMzVjZjE4MmVjYmEyZDJhMTA5YWJmMyBsZWdhY3ktdHJ1bmsKKzU5NzYgNDMxZThkMDEwNTQ3YTIzYWM4Zjc4NDZjMmJiZmVjNmViNzY3ZGYzMiBsZWdhY3ktdHJ1bmsKKzU5NzcgNmYzNjNhNDE3NjYxMTcyZmIyNDhiYmRlMDA0ZTdmN2ZmNzI1MTExYSBsZWdhY3ktdHJ1bmsKKzU5NzggNTU4ZGNlNjU1M2Q5MDViYjA2NTAxNjIyOTk2NDAxYjM5NjE5OGJkNyBsZWdhY3ktdHJ1bmsKKzU5NzkgYTFjMGMyYTM4ODgzZmFiZjc5ZjQ2OWE3ODNjOTcwN2JjYzVlNDA4OCBsZWdhY3ktdHJ1bmsKKzU5ODAgYzVkMzBhNTY0M2JlYWVlZGY1ODZlN2U5NWFjM2IwMTVhMmJjOTI5ZCBsZWdhY3ktdHJ1bmsKKzU5ODEgMmEwOTlmYjc2ODIzYjMyZWMzZDlmNjY3OWRkMTg1MzdiZTVhZmY1YyBsZWdhY3ktdHJ1bmsKKzU5ODIgNDM2MWE1ZmZiNjM4MjYwMmRlM2ExY2EwNmJiNGFjNmZiZTZkZWZjZCBsZWdhY3ktdHJ1bmsKKzU5ODMgMDVhZjI5ZThkZjBlNzU2ZjZlOWFiZDY1NGU3OWI5YmJlYzAyNTE5ZCBsZWdhY3ktdHJ1bmsKKzU5ODQgNTY2ZjQ2YjlkNzEyNmM5OTM5OTZkNTU5ZGJlYTQ0ZjZkYzY3YzkwNiBsZWdhY3ktdHJ1bmsKKzU5ODUgNzg3OWYzYjM5NjA2ZWNmYmMzYzU3ZjM1NDQyZjM0OGVmYjYwMmYyZSBsZWdhY3ktdHJ1bmsKKzU5ODYgNTQyYzgwZTYyMTExNGZmMmM5ZjlmMmFjNzk5ZDllOWEwYjM0NWEzZSBsZWdhY3ktdHJ1bmsKKzU5ODcgN2YyMzBkNGYzNjU1ZDY2ZTM1MzQ4ZDkyYWVhNjkwYjk2MTM4ZGU0ZCBsZWdhY3ktdHJ1bmsKKzU5ODggMDVlODUwNTU1ODJjYjRhMzJlZTNlMTg0OTlkMjY4OGYzZTdiNjg0OSBsZWdhY3ktdHJ1bmsKKzU5ODkgMmIyZmM5YTBiNGVjMTY5Njg2MDY1YTI3YTI4M2JlMDJmOTRkZmQxYyBsZWdhY3ktdHJ1bmsKKzU5OTAgZDc4MDFhNzdmY2Q1N2JmMDQ5ZGU3YjQ1MzMyMTU5MzIzMGM3MWQwYiBsZWdhY3ktdHJ1bmsKKzU5OTEgMDE0NWI4YWUyZDVmYjlmZDA4ZjJhMjM2MTlkMGI1MjJhYzIyYWI3ZCBsZWdhY3ktdHJ1bmsKKzU5OTIgOTM5OTQ1MTkyMDAwMzhlZTcyMjNlNjcyNzVjZjFjY2U3MDdlZDdkNSBsZWdhY3ktdHJ1bmsKKzU5OTMgNDNhZjUyM2EwMGNhZmQ3MDY4NjYxYmRiNzAyNWI4YmI3MmRlM2JmOCBsZWdhY3ktdHJ1bmsKKzU5OTQgNzNiYzQxYmU3MDc0ZGUzM2FlNDFmNWExMzY5NDZiMWUxNjk4MDUwOSBsZWdhY3ktdHJ1bmsKKzU5OTUgODU1MmUxN2FkYTY4YTE4ZTg4Yzc0Mzk4ZWY4MDRlMjczMDc0OGUwMyBsZWdhY3ktdHJ1bmsKKzU5OTYgNTEwZGJmYThjNTk5ODdjZmZjYjRkMGU0ODI2YzZlZjM5ZTI3MGYxMiBsZWdhY3ktdHJ1bmsKKzU5OTcgZWI4M2U0YjBjNzMzNzgwNGQxMDA0MWY3YzYyZmIxMmQ2YTQ5NTc4ZCBsZWdhY3ktdHJ1bmsKKzU5OTggNTBlNWI0YzU4OTVmYzUyZjU3YWUzNDMwMzVhNWQzOTAyYTNiMWI1NCBsZWdhY3ktdHJ1bmsKKzU5OTkgMjRmYjlmNGY4OTg0YjQ3ZDFmZDQ0NTU4MjEyNDBiMmFjYWRkOGVmNiBsZWdhY3ktdHJ1bmsKKzYwMDAgMzhlMTQ4MGU3Zjg5ZGJkNjhlNjc3NjMwNTA5MzA2ZTJhYzYzNTk5OCBsZWdhY3ktdHJ1bmsKKzYwMDEgNzI4ZDU3NDVhZTdiODYyY2Q5MjJhODMyNTYxYTMyYjllYTM4OTNjNCBsZWdhY3ktdHJ1bmsKKzYwMDIgZTY3YWRjOGIyZjE2NjcyMjViMWRlN2UxNzIxZDBkOGY4NmMwZWY2NyBsZWdhY3ktdHJ1bmsKKzYwMDMgMjBhMTNmY2RhZTU0ZjkzMDBhZjk0NjM4YzRhNWQyY2Q2NzkwOWM0NyBsZWdhY3ktdHJ1bmsKKzYwMDQgYWM4ZDI0ZjFkZjA4Mjk4YTkwN2NiZDIzMmNkZjU2YWEwMmQzZWYyOSBsZWdhY3ktdHJ1bmsKKzYwMDUgODIzMDcwNzFjNjY1ZTdjNGUxY2Y3MjNiMTljN2NkOWQxYzUyNzgxNSBsZWdhY3ktdHJ1bmsKKzYwMDYgMzViZWM4OGQ5NzM0MmFmMjcxN2NlYjUxMTlkMjlkMWUyZWQ1M2QwZCBsZWdhY3ktdHJ1bmsKKzYwMDcgNmM1NDFjNjNjNDNhMTEyZjQ5YWNmMWI0NDI3OTA4MzA0YWNlYzdlNiBsZWdhY3ktdHJ1bmsKKzYwMDggNWFlYzQ5MTExNzcyNmE3ZmJjNGQyMjkyY2YwNDNlMGQwMDFiYWJkNCBsZWdhY3ktdHJ1bmsKKzYwMDkgMmIxNjZiMjIwYzExM2RhNzk4YzY4OWNjYTEwYWU1MjE1YjQ2OTFmMiBsZWdhY3ktdHJ1bmsKKzYwMTAgNmMyNTgwNDNjZmFhNWE4MzU0ZjA4ZGM1MDFhYWIwMzMzZWE0MzA3NSBsZWdhY3ktdHJ1bmsKKzYwMTEgNWRmMmFjYmEwZmM1MDE5NjJhYTI3YzllN2ZmODJmOTI5YTA2ZWUzOSBsZWdhY3ktdHJ1bmsKKzYwMTIgMjJkN2Y1NGM1NzkyN2UzM2JmODYyYzUyN2NmYTlmZjRmYTI3NjM2YiBsZWdhY3ktdHJ1bmsKKzYwMTMgMmM5MDBkYWU4Nzk5MzViY2JmMDg3YWUzZjY2NzVmMWRiZGE0NDdhNiBsZWdhY3ktdHJ1bmsKKzYwMTQgNmY1MjNiZDBhM2FiZmYyOWE5OWRhNGEzNDI2NjMxMGQzYzY3MmY0MCBsZWdhY3ktdHJ1bmsKKzYwMTUgM2Y3Y2RmMTY2M2Y3YWZmMzQxNzYzNjZhZTA3ZDBjNjFjMzg2NTRmNiBsZWdhY3ktdHJ1bmsKKzYwMTYgOWNhOGFlNzFiYmIwOGQwM2NiNTFlZDRiYmE0MDU4ZWIxNDA2Zjc4MSBsZWdhY3ktdHJ1bmsKKzYwMTcgMDRlZGZjYmI3MTIxMzBhNzNiNTk1OGQyZjY2YWQ0MDk4OWVlYTE5YSBsZWdhY3ktdHJ1bmsKKzYwMTggZjY2MzA2YmMwNjYzZTRkMjdjMTU3NGFlOGJmZGNjZDdjZTgxMmRmNCBsZWdhY3ktdHJ1bmsKKzYwMTkgYTk1YjM1MGE0NGRhZTdhYzc2YzFkNGVmMGQ2YmU2Mjg0NjRhMjE3ZCBsZWdhY3ktdHJ1bmsKKzYwMjAgZThhMmE1ZTRjN2IwNDYwYjg1N2NkZjA5OGYxMzZhM2MyMGE4OWQ2ZSBsZWdhY3ktdHJ1bmsKKzYwMjEgYzdlODA4NTk2ZDE0MWMwMjI1YTczZDM0MzcyYWZmM2YyZjllMDMwMiBsZWdhY3ktdHJ1bmsKKzYwMjIgMWQwMzVlMjExMjA5NjkxOGFkMWMwMTAyYmQxYmFjNzYyNjU4YzNmMCBsZWdhY3ktdHJ1bmsKKzYwMjMgMjQyNzliYWZhODI4NDI5MjcyYmE4Mjk2MDEwYTNjOGY3ZDE5Y2I0ZCBsZWdhY3ktdHJ1bmsKKzYwMjQgMjljMThmYjEzZDhmNDEyZDFjOWUwZTE4NjYxNTQzNmNlOTk5ZjY5NCBsZWdhY3ktdHJ1bmsKKzYwMjUgNTNjNjZkMTlkMTI3YTMzMGZhMjExNmJkNjhhM2YxZTM1YmNhMWJmYiBsZWdhY3ktdHJ1bmsKKzYwMjYgY2VlNGE2ZDg0MTVlYzFiYWYyYTJmOWNiOGI4MTJjNTA4YTA4MTU0NSBsZWdhY3ktdHJ1bmsKKzYwMjcgMDk4Yjg4ZDI2MGQxMmZiMDY2Njc3ZDAxNTc5OGQ1ZmY5Mjc4NDhkZCBsZWdhY3ktdHJ1bmsKKzYwMjggMThhOWM2MjgwNTQzYjUyMjliNzcxZjY2NzU5NGFhMzUxMTJjMTc2NyBsZWdhY3ktdHJ1bmsKKzYwMjkgYjhiMWI2Yjk3NDMzODdjNDdlNDhiMzMyZDAxYWFjYjU3NDJkZjMxMyBsZWdhY3ktdHJ1bmsKKzYwMzAgOTE4OTM4NzFiYTA3NDIzNDY2MzI1MzdmNDk3Y2U2YzY3MTQ4NTQyYyBsZWdhY3ktdHJ1bmsKKzYwMzEgNTIyNzg0MWNmYTFmYjcwNGU5YzFkZjgwZGQ5NTM1MWFhYWY4NWUxYiBsZWdhY3ktdHJ1bmsKKzYwMzIgMzViMzUzNmZiNzYzYjljZjU5YWVlODc3ZjJmMTY0Y2IxMTNjODQzYyBsZWdhY3ktdHJ1bmsKKzYwMzMgOTFjMTA4MjA2OWQ4MTMyMmQ0YjhmZDE0ODJmMDVlOTI1NWYzNTc5MyBsZWdhY3ktdHJ1bmsKKzYwMzQgNGMwYTVjYTMwZjk0YTY3NGRmOTdhY2RhNWM1OTFjYTgzMDFmNmJjYiBsZWdhY3ktdHJ1bmsKKzYwMzUgYWExMTEyZDU2NjY4M2FmZGE3NGNjODQxOTJjOWE4ZmU2MmYyZjk0YSBsZWdhY3ktdHJ1bmsKKzYwMzYgNmY3MTViZmYxN2U0ODIyOTk4Nzk2MjgxN2NmM2YxZTRlYmQ3ZWJhYSBsZWdhY3ktdHJ1bmsKKzYwMzcgNmRlNDRkOTY2MjkyNjU5YWU5NGNhMDFiYmFiM2Y5M2Q4YWNiZjEyOSBsZWdhY3ktdHJ1bmsKKzYwMzggOTIyYzAwMTY1Zjc2MTJmYWQ3NzEwNjRmMTRiMDU3ZTY5ZWJiNDQ1MSBsZWdhY3ktdHJ1bmsKKzYwMzkgOTc3ZmYxYWNlMDcwMWU5OTMxMjU3ODJkOTNlZTUxN2VlY2U3YzYyNyBsZWdhY3ktdHJ1bmsKKzYwNDAgZjZiMjE4Y2VjNmJlZjY0OWNmZWNjNmQ2NzQ3N2NiMjhlNzg3MWY5OCBsZWdhY3ktdHJ1bmsKKzYwNDEgNmJlMzY1YTY3M2IxNGMwM2Y0ZDU4ZWExZTgwZTg2Y2ExZWZlYzBhMiBsZWdhY3ktdHJ1bmsKKzYwNDIgNGM3YmFiNGNkY2E2ZThjYzJlMDk3ZGRhM2ZhY2MzYjBiMzgyZDVhNCBsZWdhY3ktdHJ1bmsKKzYwNDMgMWVjMTU0MjQxNzQ3NTdmMGI1N2U5ODAxYzZjYTdmNmIxN2IwMWVjYSBsZWdhY3ktdHJ1bmsKKzYwNDQgZTJiM2E2OTZkNjljNzU3YzVlMzdiMDcxNjc3Yjk5ZmJkZjNmNGE2ZCBsZWdhY3ktdHJ1bmsKKzYwNDUgNGVjMWNhYzM0MmRkYzdmZTI0NWEyMjNlY2NlN2EzMmFiMTMyYWE1ZCBsZWdhY3ktdHJ1bmsKKzYwNDYgNmVjN2RmMjA2OTdkMDg2NWU4ZTQ0MGU5Y2VhYmYxZmQ3NzU1MGU0ZiBsZWdhY3ktdHJ1bmsKKzYwNDcgMjY0ZDE5NmJjNGM2ZGU4ZmY4OTk2MmVhNjczYjJhOGQ0OGE0NTRkMiBsZWdhY3ktdHJ1bmsKKzYwNDggZmQxNjY5ZjhkODc0M2JhNjYxNjI4NGU1YmU4MjY1OTRmMDY5MTdkYSBsZWdhY3ktdHJ1bmsKKzYwNDkgOGU2NjM5NDVlMTc0NDVjNTkyNDk3ZGNiNWM3NzVjMjFjNTljODU4ZiBsZWdhY3ktdHJ1bmsKKzYwNTAgZWM4ZjViNzVkZjY0ZGFjYWYzMDE2YWU5NGRlODU0MTE5MmNkMTEwMCBsZWdhY3ktdHJ1bmsKKzYwNTEgNmY0NWJlZWQzODczZjcxY2RjMGIzZTg5NjYwY2MxM2UyYTZiNDM5OCBsZWdhY3ktdHJ1bmsKKzYwNTIgNmFiNGNiY2VkZWMyMDNiODI3OGEwMjI0MGY0OGY1NjI0YTJkNTA1MyBsZWdhY3ktdHJ1bmsKKzYwNTMgNzJhZDJmMWU5OTE5YWZlYzFjYzdiZWFiOGQ4OTg0MWFhZjU1YWIxNiBsZWdhY3ktdHJ1bmsKKzYwNTQgNGVkMDlhM2MzMjAxOGUyMTlkYTliNzYyMTE1M2JkNWY4Y2Y4ZmQxMiBsZWdhY3ktdHJ1bmsKKzYwNTUgMzZjYzNlZTU0ZjI4Yjg4MDBlZjNmYzEwZjIwNTUzNWMwNWU0Yjg4YyBsZWdhY3ktdHJ1bmsKKzYwNTYgYjVjY2NmMWM4ZjM4NjZiZWFkYzM5NDY0YmIyN2Q2ZDEzMTU2OGU0MyBsZWdhY3ktdHJ1bmsKKzYwNTcgZGFmYzhhMTBiMTg2ODA0NjBkZjdlMTlkMGYyMzRhMTYzNDI0YWNlNCBsZWdhY3ktdHJ1bmsKKzYwNTggYmQyMGMwNDI3NGZmYTZlNjllMWM5NGEyYzgyMzhiNzI1N2Q2MThkOSBsZWdhY3ktdHJ1bmsKKzYwNTkgNzM2NjRlYTIwMzBlMGJmZmZiZGYwYTA2NjFhNmVjZjNjMDNiOThkMyBsZWdhY3ktdHJ1bmsKKzYwNjAgMWMxOGY5MDYzNmZiYmUwODE2MTI2YTFlNjhlMDE0ZWIyNzM4YTFkMiBsZWdhY3ktdHJ1bmsKKzYwNjEgMjQwMzYyMGNhOTMxYWVmY2VlMDc4OTJkZDI3MjY0MGRhOWQzZjRkNiBsZWdhY3ktdHJ1bmsKKzYwNjIgZGU5ODdmZDY3Yzk0MzUwMmQ1YmNhZWJmMjE4M2M3YjZkYzlmYTA4OSBsZWdhY3ktdHJ1bmsKKzYwNjMgNTY0OTEyMjY3MjkwZjQ0OWUxZjI0ZWVjOTdiMWI0MGYyOGFiM2JjNCBsZWdhY3ktdHJ1bmsKKzYwNjQgNjI5MzcyMzIwNWE2YTgyOTRlZTkwYWUxNDI5OTg1MWI2NDkzMzUwNyBsZWdhY3ktdHJ1bmsKKzYwNjUgODgwMGRmMzY2YjEzMWQyYTI2NTJlMDBiMThlNTYyYjRkYTc3ZmUwZiBsZWdhY3ktdHJ1bmsKKzYwNjYgZTA3NTk3Mzg5ZDY0YmJmYjU4YjY4YzM0NTYxODcxZDI1Mzc2ZmQ4MiBsZWdhY3ktdHJ1bmsKKzYwNjcgNmM5MjYwYWUwZDE2MzZhOTVkMDEwYzM2YzBiNzZiMWQ4NzAyYWFlZiBsZWdhY3ktdHJ1bmsKKzYwNjggODczOGIwZGQ3N2ZkODcwMDljYmU4Y2ExZWYxZDEyMDdhMDViNWI0NyBsZWdhY3ktdHJ1bmsKKzYwNjkgN2M1NzExYTZhNDc1OTdkOTMxYmU0ZWU4MzI1NGEzMmMxNjU2NzdkYiBsZWdhY3ktdHJ1bmsKKzYwNzAgNWE3YTc2MTY2ZTdlMzk5ODE5NGUxMDEyMjFjMzk4ZTUzYjQyZDNmZiBsZWdhY3ktdHJ1bmsKKzYwNzEgNDA0OTZkYjhjZjFmY2M5OGQ2MjhlNzk4YjAyNmUwZDIyZjY4Nzc3NiBsZWdhY3ktdHJ1bmsKKzYwNzIgZDkwNjdjNWY1MGFkZDQ5ZTM5YTQyZTRiODNmYjE3MWRhZTM5ZmViZCBsZWdhY3ktdHJ1bmsKKzYwNzMgZWI2ZWY3ZWNhMjA3ZDI5ODliOThiMGE3MDA3YjFmOWM1NWQ3MGUwYSBsZWdhY3ktdHJ1bmsKKzYwNzQgYWE1ZjNlY2JmNTZmMzJkOGZjY2I0YzcyZDZhNTI5OWY0ZDg5Y2Y5NiBsZWdhY3ktdHJ1bmsKKzYwNzUgMWQ0ZjJmMjBhMjdjY2I2MTA5NmEyNTFkZGYwZDg5MTVjZGU5NjliZSBsZWdhY3ktdHJ1bmsKKzYwNzYgZGQ3NGEwNjAwNmUwNDAyMTcyNjNiODA1NzdlODQ2ODJkZDMxZDRkMyBsZWdhY3ktdHJ1bmsKKzYwNzcgODU3M2U2NWZhOTQ4NGYyNmJiM2RhZmI3ZjRmNDRmNjVhN2FjNDlmMiBsZWdhY3ktdHJ1bmsKKzYwNzggMGIwYzRlZDE5MzZhYzJkMjg1MmMzOTU4N2I5Y2U2ODM3ODYwNDU4YiBsZWdhY3ktdHJ1bmsKKzYwNzkgZDBhOTdhYzI1ZGFiNDczNjU4YTQwZDg2N2RjNzNkOGFkNjE0NDNiZiBsZWdhY3ktdHJ1bmsKKzYwODAgNDUzYTlmNmU5NjE4OWRlNjliNjMzZmY3MzViYjg0OGEyMDljNWUxMCBsZWdhY3ktdHJ1bmsKKzYwODEgNDg2NmEwZmMyYmJkNGU2NTUzNjZmZTU4OThhYmQ1NmY4MGYxOGNmOSBsZWdhY3ktdHJ1bmsKKzYwODIgMmYzMTRjYTBjZDMzOGQ2ZWM0NjE4ZTY0OGM5MThlZTBkYzFkMDgwYSBsZWdhY3ktdHJ1bmsKKzYwODMgMzIzMTY1Y2IxZmE1ZDc0YWVmZjhhYTdmYzMzNTRlNDc4ZDM0ZjBlNyBsZWdhY3ktdHJ1bmsKKzYwODQgZmRhM2MwOThjODk5NThmNTI5MzY2M2Y5NTkzMGEyNTdiMGM2ODFiYyBsZWdhY3ktdHJ1bmsKKzYwODUgMGU1YTdiMjIwMTZjZGVlMDNhYjIyNDEzZWU2MGYzYTE1NTA2NjA2OSBsZWdhY3ktdHJ1bmsKKzYwODYgNmU3MzU4NGNmNTc1ZWVkYTc1NjdmOTZhMjRlMDhlNmMxYTI0YjA5ZCBsZWdhY3ktdHJ1bmsKKzYwODcgYTNjOTdlMjA1ODQ3OTM0MmE4ZDk1NTdjZGViZjZmZGI5NDU5ZDg4NCBsZWdhY3ktdHJ1bmsKKzYwODggZWY3NTk2NjlhYTA0MjYyOTAzMjRlYmI4M2Q2NWQxNjRkYjY2ZGExMCBsZWdhY3ktdHJ1bmsKKzYwODkgMjhjMGRmMWNlMjg0NDk4MjM0NDgyMzg4ZjcxNTJkMTUzZDY4ZjMwNiBsZWdhY3ktdHJ1bmsKKzYwOTAgZjE1OGVkY2NjNzJjY2I2M2ZmZThiMWE1OTU5NjAyZjlkZDNkZTgwOCBsZWdhY3ktdHJ1bmsKKzYwOTEgYjc1ZWRjMGU2MzMzZWU2MGM1NjJkMWJhODBkMjZjMmU2NjZmNzNjZCBsZWdhY3ktdHJ1bmsKKzYwOTIgZDQxZDg5ZWI0M2U1MGNkOWJmOGI5Zjk1ZmM3OWYwMGEyMmU5MmY5ZCBsZWdhY3ktdHJ1bmsKKzYwOTMgNWE5OGE0ZmQ1OGI4NDIxMDEyMTJlYjgzODUxZmIyMjY5ZTBkNjAwYSBsZWdhY3ktdHJ1bmsKKzYwOTQgOWU0NjY1N2JiOWU4NDc5YzhhYzk4NmM5ZGNiOTdkMGM1YWU0MjM1YSBsZWdhY3ktdHJ1bmsKKzYwOTUgYmQ2ZWFhMmI0MWFjMzYwNzBlNGFlYmUyNWU1OTU1NjYzNzljMTJmYiBsZWdhY3ktdHJ1bmsKKzYwOTYgZDE5NWI4NzFlNzA0NGUxOWQ1OWJmMTlhNjUwMjZmNzRhNzI5ZjIyOCBsZWdhY3ktdHJ1bmsKKzYwOTcgMzQ0MDc3N2YwZTY1NmFjZTNlZDM4MDRiYzM2ODQxM2JkMDQzNDVkMSBsZWdhY3ktdHJ1bmsKKzYwOTggZTU0ZDM5MTA3MjQ5NTZmMmEwNjg5MGNlNWFkMmVlNWMwOGFkZWQ5ZSBsZWdhY3ktdHJ1bmsKKzYwOTkgMmViN2U5ZTIzNmJmNTdjZjA5ZDNkOTkwMmUyODJjNGMwZTk1NjVkZSBsZWdhY3ktdHJ1bmsKKzYxMDAgOTg1MTM0Mzc1NjcyMzZkODJkNGE4N2FjOWE4ZmJlZWE1NGM5YWUyNCBsZWdhY3ktdHJ1bmsKKzYxMDEgNDQxNjFmYjA0YjdlODM0YmZjNzcwOWJkZGQ2OTc5MWQwMTMwMjZlNiBsZWdhY3ktdHJ1bmsKKzYxMDIgYTdlM2JjMmE3Y2FjNDc5ZDQwODkzMzQ5Y2Q0YzJmMGJhMDNmYWUyYSBsZWdhY3ktdHJ1bmsKKzYxMDMgM2FiY2Y3MjVjNWY0MDk3NzYyNjczYjAyZDkyN2FkMWZhNDNmYTgzNCBsZWdhY3ktdHJ1bmsKKzYxMDQgODk0MTc4OTVkOTYzY2VkYzI1MDFkYTIyZDIyZTUwNTVmNzE4YzA0ZSBsZWdhY3ktdHJ1bmsKKzYxMDUgNjc2OGJiZDE4ZTA5OTgwYTcwN2I5ODViNWU2MmRkMGIyYjg5MDQ1YSBsZWdhY3ktdHJ1bmsKKzYxMDYgNmMwMDg2ZjkyNzBjZjk1MTNjYzQyYjliODU4NTc5ZGRkNDk0ZTdjMyBsZWdhY3ktdHJ1bmsKKzYxMDcgYzI4M2I3YmJkYTA5NTJiMjcyZDdiN2E4NTlhMGQ5NWVlNWE2Nzk5ZiBsZWdhY3ktdHJ1bmsKKzYxMDggNzAxODM1OTIzNzBlNzRlYTYzZmVkNjMxNGQ1MDc0M2E0MzVjYTJlYSBsZWdhY3ktdHJ1bmsKKzYxMDkgOGQ1MGE5NmY4NjgwZWE4MTFlNTAyMDBiYTU0MGE2NjY5NzE0ZjE5OCBsZWdhY3ktdHJ1bmsKKzYxMTAgZTRmYWFkYjRhYmUyZWRiNGUxODFkYzM5NzU2YWVjN2I5Njc1ODkyYiBsZWdhY3ktdHJ1bmsKKzYxMTEgZDA0OTc1ZGI1MmRjZjNiNDcwMjhlZDgyMmEzNzhmZmNkN2JlMWIzYiBsZWdhY3ktdHJ1bmsKKzYxMTIgMGQxNDYzYTQ1YjZmNTVjNjg1NzcwMGU2NjJkZWVkMzhiYjhlNWQ4NCBsZWdhY3ktdHJ1bmsKKzYxMTMgMDE3ZDMzNTZhNWVkMDQzMGZkMTM1OTVhMWIwN2I2ZTk0ZDA3MTQ2YSBsZWdhY3ktdHJ1bmsKKzYxMTQgNDllZTg5ZTAxN2FiZTUyNmM2MGYzYjJlYzliNzkzNzVlNDY3MjBiNyBsZWdhY3ktdHJ1bmsKKzYxMTUgNTY0ZmE2ZjE4NWE3ZDdjZDZmZTY3YzM2MmUxYjUzZDFlNzQwMjUzMyBsZWdhY3ktdHJ1bmsKKzYxMTYgMTZjYThmMGYzZjExMjQwMWEwZmM2NWYzNjZmMjcwMjhiZjM4YjRiNSBsZWdhY3ktdHJ1bmsKKzYxMTcgYTlmYjVhODk1ZmExYzMyZTZmYmFhYWJjNWY2ZDQwYmYwNjgyNjUzZCBsZWdhY3ktdHJ1bmsKKzYxMTggNjNjZGZiYjRhMmJiOTljNDEzNmIyOTQzODRhZDhkN2I4YmVmMDI5YiBsZWdhY3ktdHJ1bmsKKzYxMTkgNWQ2ZmUxNDVmNzczYTIxNGFhYzIzOGYxZWZiZTE3NDIxZDNmMzg5YiBsZWdhY3ktdHJ1bmsKKzYxMjAgMDYwMmRiMWQxZGZmN2E1ZjdlNWM3YWVkZWY1MTU2OGFlNzAyM2VjMiBsZWdhY3ktdHJ1bmsKKzYxMjEgNzI4YTM5YTNlMGQ1NTA4NGU1YWJiY2MzZjNmODdlN2UyMzE3MzVlOCBsZWdhY3ktdHJ1bmsKKzYxMjIgNTMwOWNlZjhjMTY5MmNjMjVmNWU2MTA0ODlkMWYzMGJhYWFmMGE0NSBsZWdhY3ktdHJ1bmsKKzYxMjQgNjZlZWFiNWE3NThjNjczMmYyMjQ2NzBkMTI1ZjE4NmNmYjY3YjM4ZSBsZWdhY3ktdHJ1bmsKKzYxMjUgZjg5ZmE3ZTk1Yjg0MDk1ZjQyYTE4Mjg1NGQzNGExZjFjNmM0MzhhZSBsZWdhY3ktdHJ1bmsKKzYxMjYgYWRlOWY5OTY1OTBhNWU3OGY1YThiYjA3OTJmMDcwMzU5OTUwNGI1YSBsZWdhY3ktdHJ1bmsKKzYxMjcgOWFjMWUwZDU2Njc0MTNjZmQ3ZTY4OTk4MGE1OGJmYmIwOTBjNmE2ZSBsZWdhY3ktdHJ1bmsKKzYxMjkgMzViZTVkZjZlZjc3MjJiOGY1MGEyMzVlYjFmMmNmNjE5MTFjNzc1NSBsZWdhY3ktdHJ1bmsKKzYxMzAgODI1YmQ4YzExYjFjMWFjNWM0OTZiYzdhY2ZjMmQ5ZjhjNDZhZGE2OSBsZWdhY3ktdHJ1bmsKKzYxMzEgMDU4ZDgxZDFkNTZkOTMyNmUzNzdkZTUzMDBmNTA5NjA2NzBkZTI2NiBsZWdhY3ktdHJ1bmsKKzYxMzIgYmQ2ZDAyOGQ5OGZjZWY0MjQ1MjViMzI0MzcyNjBkNTMyZGQ5OTNkZiBsZWdhY3ktdHJ1bmsKKzYxMzMgMzk5NDcwYTk1OGMyMmQ5N2NjYjg2M2U2Nzk0YzNmODk3ZTg1ZDc4YyBsZWdhY3ktdHJ1bmsKKzYxMzQgMDcxNjRkMzA0MjlkYzZkZDA3MzYyZWMyMGJjMmE5MWYyNWRkY2I1MyBsZWdhY3ktdHJ1bmsKKzYxMzUgYWQwM2UyMWZkYTU0YmNhNWMxMmVlNzc4ZjhkN2I4MTgwMjU4YWQ5MiBsZWdhY3ktdHJ1bmsKKzYxMzYgNTE4ODM3NDM3N2FlOTk2MjVmZDI1YmVhZTQ1Y2Q2Nzg0NTM2YWUyZSBsZWdhY3ktdHJ1bmsKKzYxMzcgNTU2ZWM4MmY0ZDkzOWUxNWYyYzZiZDUyOTU3NzRiZGQ4Mjc5ZGEyZSBsZWdhY3ktdHJ1bmsKKzYxMzggZWFiYmIzYzE4MThmZTQyOTYyYjFjMTVhOThhNjljZDA4NmE4M2E4NyBsZWdhY3ktdHJ1bmsKKzYxMzkgYWI5MjQ4MGZhNGVjYjNjOWIzMGQzNDM1NTUxOGY3Nzc4YmJiMjliYiBsZWdhY3ktdHJ1bmsKKzYxNDAgMWQxMzRlY2RhMDk0ZWUxNzdjODBiZmM3ZDEwMTRhYzM4NzRjMTQ0NSBsZWdhY3ktdHJ1bmsKKzYxNDEgMTY0MTNlZTU4OTY3NzQ1Njg0NzUxNDk3YTNjZmViYTBhZDBjNTM3ZCBsZWdhY3ktdHJ1bmsKKzYxNDIgOWE4YTQwZjIyMThjOWNiMjYyNjU4OGUxZmMxNTg1MGFkOWY2NDU0OCBsZWdhY3ktdHJ1bmsKKzYxNDMgY2VjMjdjOTNiNWNiODM0YzEwMTczN2RkNTEzZTYwODE0YWFjZmNlOCBsZWdhY3ktdHJ1bmsKKzYxNDQgZjZhY2U2MWMzZGZlNjRlYTM3ZWY5ODBhZWUwMDFlYjM0OTQwZDJjNyBsZWdhY3ktdHJ1bmsKKzYxNDUgM2VhZjJjNjczYTExYTc4OGZiNjI0NGFmMjIyM2IzY2JlMmJkMTA4MiBsZWdhY3ktdHJ1bmsKKzYxNDYgZDYxN2RlMTU3NzRiMmU3Yjc1YTJiNzY0N2FlYTdjOTA2MGFhYzIxMyBsZWdhY3ktdHJ1bmsKKzYxNDcgNzQ3NjRiM2VjMWJkYjc0YTVlNjU5Mjc1NjI0NmY5YWY3ZGZhYWRmMyBsZWdhY3ktdHJ1bmsKKzYxNDggYjA1MzE1ODE2NTc5ODMwNDUyYzA0ZTI5ZDlhMmQzN2YyMzg0ZjZlMSBsZWdhY3ktdHJ1bmsKKzYxNDkgYmRkYmFhNTFhYTVhOTMzMThhZmViOTJkYWIyZTRlNjNhZTVlZDdmNCBsZWdhY3ktdHJ1bmsKKzYxNTAgYjg5ODA3MzVkMDNiM2UxNDA5MzhhNjQyNDYzZmE5NDQzZDczZDhmZSBsZWdhY3ktdHJ1bmsKKzYxNTEgODcyMWZhZmRiNjdhYTliNWE5MjJkMjNjZjg3YzhmMjMyZWZjMDVkOCBsZWdhY3ktdHJ1bmsKKzYxNTIgYTUyN2Y0NDljYTI2NjYxZjVkMjkwZDM2N2QxMDMyNzZhYWQzOTJhZSBsZWdhY3ktdHJ1bmsKKzYxNTMgOTQ2NmVhYmI2NjlhNmNmMjY2ZmVjNjU1YzFjNzI2ZDczZTAyNjhhNyBsZWdhY3ktdHJ1bmsKKzYxNTQgZWMzOTI2NDMxMWZmMjQxNGZhZTAxYWVkNzQ3OTI2YzkxMGI5MGI3ZiBsZWdhY3ktdHJ1bmsKKzYxNTUgNjA2YzM4NTM1ZjMwNDUxMzQ3ZDE5NDY2OTBmYWViZmU2ZTE3ZmI4YSBsZWdhY3ktdHJ1bmsKKzYxNTYgYTEzNjJhMDYzMTIyNTIyZmNjYzE4ODAxZDc2NTM2ODZlMDIxNDM3MyBsZWdhY3ktdHJ1bmsKKzYxNTcgYmRiZGE5MzliOTk5OGY4YWU4YjZkNTFlNTUzYmNiMTM2YmE3YjViNiBsZWdhY3ktdHJ1bmsKKzYxNTggZDhmOWRmYzc2YmJmYzhkZjk2ZmYxYWQ4YWI2Y2Q3NGM4YWVmOWZjZSBsZWdhY3ktdHJ1bmsKKzYxNTkgYTc5YjhkODE5OTdmZWFhZDljZWQyYzE0YjRiMDkzYjkwZDJiYjY2NyBsZWdhY3ktdHJ1bmsKKzYxNjAgNmRmZDc5OTQ0ODcyZmMwM2M1NDk3NDkzYmE5YjEwOTI2ZDllYmMwMyBsZWdhY3ktdHJ1bmsKKzYxNjEgNGEwN2ZlMWUwYjUwM2NiNWJjYWM0OGQ2Njc2OGY0MjYzYTRhZDMwYSBsZWdhY3ktdHJ1bmsKKzYxNjIgYjVkMTc0MWRlZDRhNWE0OGVhZjA4YTA1YmNhYTZkNWFjYTMzMTY4ZSBsZWdhY3ktdHJ1bmsKKzYxNjMgOGRjMWU3NGMxNjk1NmViMjAwZWM2ODNhYWY1ZDg4OTE0YWE1YzdmZSBsZWdhY3ktdHJ1bmsKKzYxNjQgODE4ZWUxMTUwNTRhM2I5Y2U5NjAxMjJjMTE3YTgxYTE1YTA3NTE3YiBsZWdhY3ktdHJ1bmsKKzYxNjUgNTgxZjA3M2YwNzFkN2Q3NzBmNDcyZjcxOWNiYjUwMmMzNGZhMzAyMiBsZWdhY3ktdHJ1bmsKKzYxNjYgMTQ1NDEzOGM2ZjJkNDBjNWEwYjU2MDY4ZGE4YmZkNzA2ZWYwNDA2MSBsZWdhY3ktdHJ1bmsKKzYxNjcgNjczOTBjMWRhZWJlZGRjZWVjZjQxY2RmMTFiNDVjYzA5MzE4MGNhNiBsZWdhY3ktdHJ1bmsKKzYxNjggODFmNTM1Y2ExZDk4Y2Q0NmE2OTU4OWE2NWZlMGQyZmQ3YWMyZGIzZiBsZWdhY3ktdHJ1bmsKKzYxNjkgOTdiMWMyYTcwZWFlMTFmYjdjZDQzOTljMGU5ZDJlY2JlYjg3NGVlOCBsZWdhY3ktdHJ1bmsKKzYxNzAgZTIzYWZiZjc3ZWZkZjk1NGIzZjljYmFmOWIxYWQ2NWZmOWFjOTk4MCBsZWdhY3ktdHJ1bmsKKzYxNzEgOTMxMDg2Y2I4NTI5NTAzMzdhODg2Nzk1ZmVlMThmNTZjMDI0YzdiZSBsZWdhY3ktdHJ1bmsKKzYxNzIgZjA0YmViODBmODE2NzdhZjBmZGY2MThkNGE2N2EzYjUzZTI0ZTQzMSBsZWdhY3ktdHJ1bmsKKzYxNzMgMzQwODc1NmVjNjAxODkwMTdkMTQ2ZDBlZGRiNmYyNDc0YWU5ZjM0ZCBsZWdhY3ktdHJ1bmsKKzYxNzQgZmY3ZmE1OWY2MmU4OTM0YWI3Yjg0NTc0Y2I3ZDFlNDM0YzY0Y2QyZSBsZWdhY3ktdHJ1bmsKKzYxNzUgMTcwMzA1MTVmNjIzMjc1NGQzNTExMmE1OWQ4Y2YyMzBmZGNiMTUxMiBsZWdhY3ktdHJ1bmsKKzYxNzYgYzg2N2MyOTRiMTZjMDgzYWE5NjY3ZWQxODE5ZTYyMjg3ZjA0YjQ5MyBsZWdhY3ktdHJ1bmsKKzYxNzcgZGI1NzcwOTRmNjg1M2UxNTc1M2JlOWNiZDRiMDE2NmEzNmI5MGEyNCBsZWdhY3ktdHJ1bmsKKzYxNzggMGU5Nzk1MDA0Y2QyNjc2ZmNkMThlZDM2NzU1ZjE0YTg0ZjE0M2UwYSBsZWdhY3ktdHJ1bmsKKzYxNzkgMGY2ZjBlOThlM2I2NGI0ZTUzODFmZmUwYjY5NjBlMWQ0OWM3Y2Y3MSBsZWdhY3ktdHJ1bmsKKzYxODAgZGFkNGQ0MzM2M2Q4ZmUxZmJiODg4MDA1NjE2NzAwZjkwYTlkOGEyOCBsZWdhY3ktdHJ1bmsKKzYxODEgNzg3N2RlZjk0MDYzZDQ3MTQ5Y2ZmNWI5YTMwZTlmYzE0ZWE0ZThiYSBsZWdhY3ktdHJ1bmsKKzYxODIgYzA0NTMxZmMyNzA5NjkzOWMzMTQ0OGVlYWI0ZmNiNWM4Njk2N2QyYSBsZWdhY3ktdHJ1bmsKKzYxODMgOGU0Nzk4ZDIxOTE1ZWZjYWIzY2FjODdhZTRiZDU5NGQ4ZDQ4ZTgxOSBsZWdhY3ktdHJ1bmsKKzYxODQgYWRjODY3MDdmYTk2Mzg5OWI1OWUyOTI5N2UyZjRjM2VjNzcxOGE1MSBsZWdhY3ktdHJ1bmsKKzYxODUgYzEyMGE0ODNkNTkwOThkNjY5MWZjYTUzNTQ1YzJmODFmNzk0NjIwMSBsZWdhY3ktdHJ1bmsKKzYxODYgNWMyNThlZmZlODFjNGQ5NWJjNjA0NGY2NmE2MGUxM2EwMWY3NzE3MyBsZWdhY3ktdHJ1bmsKKzYxODcgZGU1Mjc5NDAyYjk0MzhjZGY2NDMzYzM3MzM4MTYxN2FkYTdkNDUwMiBsZWdhY3ktdHJ1bmsKKzYxODggNTAxMjE5MWVjMmRhYjE0YmJlYjQ3ODg4NzgxODA1OGNhY2YxZjM1MiBsZWdhY3ktdHJ1bmsKKzYxODkgOWU1NDRhMmMxOWEyZGE3MDg5MDk3NGI2YjEyMTNkNDg4YTY4ZDU2ZCBsZWdhY3ktdHJ1bmsKKzYxOTAgNzZlNWYzNTk4ZTY5YjRhMjk5MTkxODUzNWYxNDgwYzViM2E2ZmZkYSBsZWdhY3ktdHJ1bmsKKzYxOTEgYjM0MWRlZjRlZWY4Y2JjNjJhMDczNTY0Mjc4OTU2OTQ0ODA0Y2QxMyBsZWdhY3ktdHJ1bmsKKzYxOTIgMzIyZjYxZTRjMzg3NWFhNDgxNTY3MTYwYzNiODgzNTMyNmE5MGUxNCBsZWdhY3ktdHJ1bmsKKzYxOTMgYjJiMDYzYWEyNzU1MTBkNmJjYzQ4NDk3MWI1MDBmM2Y2OGY0Yzk4YyBsZWdhY3ktdHJ1bmsKKzYxOTQgNDNhMzdlNmI2NDY5YTRkMjFhYjBmYzNjMjY1YzA1NzNkMjM1ZTk5NiBsZWdhY3ktdHJ1bmsKKzYxOTUgMjY0NDJiNWY5Y2ZkODQ3YjYzYmUyNzgxZDRmYjNjY2I0MDliYmNjYSBsZWdhY3ktdHJ1bmsKKzYxOTYgMGZmNWJkOGViYjAxYTYwYjcxOWE3NjYzYTA5YzcxODhlNGMyZWZiNSBsZWdhY3ktdHJ1bmsKKzYxOTcgNjU3NzkwZGIwNmUzYzU5NDVkOWU3YWQ5Y2ZjMWNiZWMxZjY1ZDI4NyBsZWdhY3ktdHJ1bmsKKzYxOTggYTEwYTBmNjAxNGM0OWE1ZmJkMWE0YzM0Mzk1ZTI4ODJmODU1ZmY1ZCBsZWdhY3ktdHJ1bmsKKzYxOTkgNmYzYzdiMmYyYjhkZTgyOGIyNjY4MmQzOTk1ZjNmYmEyNzgwZjlkNSBsZWdhY3ktdHJ1bmsKKzYyMDAgMDY4NTU2MzgwY2IwODYxYzVmOGMwMjQ0MzBkYTE2MTdkYzgwZmVlYSBsZWdhY3ktdHJ1bmsKKzYyMDEgYmE4NGQ3ZTg1NTRiNWVjZDRmY2Q2OWQ1NzY5NzY0YjZlYWQzM2YwYiBsZWdhY3ktdHJ1bmsKKzYyMDIgZGUxY2IzMzIxOWUzMTE4YTNmOWVhMjA5MjFlYTE4MWE2OWU3N2U1NyBsZWdhY3ktdHJ1bmsKKzYyMDMgNTIzZjQ5YTFlNDJhNTcwOTg4ODI1ZmFhZjZkNjk2NWRiOTQxYmYwMCBsZWdhY3ktdHJ1bmsKKzYyMDQgYjI1MGIyNzBkYmQ0ZDBlYjA0MDEzNWRlNjY4YzhlZmEzNjZmYmIxNyBsZWdhY3ktdHJ1bmsKKzYyMDUgMDRjMDc1MzhjYWM0ZGI3NzJjZDE2MTI3OTVjMjM3NjQ2YjlhODlhNyBsZWdhY3ktdHJ1bmsKKzYyMDYgNDY5MmNiNDYwMDhlZTBjOWU5MzNmNmQ2ODc4YWE0MDVjM2JlOGY3NSBsZWdhY3ktdHJ1bmsKKzYyMDcgNmM5YzJhYzE1ZTRiMDE3Zjc0ODZiYmJkOGMxMTdiNGQwYzIzMTM3NCBsZWdhY3ktdHJ1bmsKKzYyMDggNmIxYjY2NDg2M2Y0MDk0MDI1ZTdlMGI1ZGFlMGM1NGNkNWIzN2FmYSBsZWdhY3ktdHJ1bmsKKzYyMDkgY2U3NGJiYThhNmE2ZDE4YmNlNzdjZTZiYzcyNDFjNzk5Mjc0N2JjZCBsZWdhY3ktdHJ1bmsKKzYyMTAgNzk1MjQ4MjlhNzMwNjY2ZGNiMWI0ODQ0MjEyNTE0YmE1MjNmOTI0YSBsZWdhY3ktdHJ1bmsKKzYyMTEgZTQ4MDdhMGMxMDkyZGUyZWNkNDA2ODU1OTdhNDI4OWM2YTI2MzY4OCBsZWdhY3ktdHJ1bmsKKzYyMTIgZWY1OWI0ZDAwMTM0OTA3YWQzOTI4NmQ5ZTQ4NjUzNmFjOWIwNDJiOSBsZWdhY3ktdHJ1bmsKKzYyMTIgNGZjODVjODJjYzIyMjU1NGFlNmI5YzBiODc3NzZlZDVmMmI3MGM2ZSBsZWdhY3ktdHJ1bmsKKzYyMTQgYjIwNzg3NmRmMjlhY2FjMDcyMjFhYTI2MDRlMGVjMDE3OGFjNDJjZSBsZWdhY3ktdHJ1bmsKKzYyMTUgZmZkZjFmMDZjZjhiNWMzNjNmOWM1NDc2Mzc5ZmY1Zjk1ZjdlNGJmOSBsZWdhY3ktdHJ1bmsKKzYyMTYgNjA4MGIyZWJjMWYxNGE1YzQ1YzIxMDc2NjBhNzVkYWNhZDkxMjg1OSBsZWdhY3ktdHJ1bmsKKzYyMTcgNzUwNDg4NGU4YTc0ZmM2MDdhODg2YTIxZWY1MjZmYTJkNTQ0NzU1MiBsZWdhY3ktdHJ1bmsKKzYyMTkgYWM3MDE4YjU3NzQ1NmNlYmIxMTZhNzUwZmUyMmNlNjRiOWRlNzMwYiBsZWdhY3ktdHJ1bmsKKzYyMjAgNTZkMzM1MGNhMWYxNzJkNjJlZGY5MzFiNTMyYjMwYjExMTVjOTY3MSBsZWdhY3ktdHJ1bmsKKzYyMjEgMTFlMDNkN2E3Mjk4MDVkZmVlZjc0NGE1NWM1MGU5MzM1N2JiNDA4OSBsZWdhY3ktdHJ1bmsKKzYyMjIgYTIyNDM4ZTk0ZmU5NzRiNTE5MTM0ODNhNTI1MjlhMzE1MmMxNWU3ZiBsZWdhY3ktdHJ1bmsKKzYyMjMgMmRiNjM2MzQ1OWNhZjFkNjlkZTJhOGJhYWMxNmZkMDM1YzE0MTk0MCBsZWdhY3ktdHJ1bmsKKzYyMjQgMzUzN2MwOGMxZWZmYmFiNDQ3MjM2YjhjMTJhYzNmMzI4Njk4ZDcxYSBsZWdhY3ktdHJ1bmsKKzYyMjUgOTdkMjI3OGEzMzFiOTQ1ZDQxMzFiZTMzZDU5MjgwZWM2YWQwZmJmMCBsZWdhY3ktdHJ1bmsKKzYyMjYgZDIzZmVhMjQ4YTFlYzI1YjFjYzE3N2ViNWRmNDg1NmMxNGVlYjFhOCBsZWdhY3ktdHJ1bmsKKzYyMjcgNjU5OGE1MTg2NjhmNzdhZjI1OGFiYTVhZjI3ZDljZDczMDFmYTlmNiBsZWdhY3ktdHJ1bmsKKzYyMjggODJiYjdkMmE2YjMxZTZmNTBlZjQ0NDllZjcwZjE3YWIzOTg5NTc1MCBsZWdhY3ktdHJ1bmsKKzYyMjkgMTViMWIwM2FkZTkzZDcyY2RlNTAxNzUwYjRlM2MxYjZlMTc5N2ZjMyBsZWdhY3ktdHJ1bmsKKzYyMzAgYjkxNmQ2MTRlMzYzNDY4NWFlNjU1ZDViODYyYmNjYWQ2MDc0OGE4NiBsZWdhY3ktdHJ1bmsKKzYyMzEgNTY3NDZlZWRmZTAzNzg5NzRiOGMzNDAzYjVlM2E4MWMyOTg0NDY0ZCBsZWdhY3ktdHJ1bmsKKzYyMzIgYmY4YzIzMGRmNWU4ZGQzMjBlMmMxNGZmNDQ1NTJiMGRlMjk0MGY1YyBsZWdhY3ktdHJ1bmsKKzYyMzMgZTYwMzYwMWM2OGNmNDQ2OGU1M2YwNjY1MzMyYjNmODUxYWY0YWNiYyBsZWdhY3ktdHJ1bmsKKzYyMzQgYzU3YjM4ZTQwYjJkYTUwYzc1ZWNlYWEyNTJkNzhkN2Q1NjBlMDg2NSBsZWdhY3ktdHJ1bmsKKzYyMzUgYmI0Y2MzZmE2MDAwYjA5YmRhZjdjMzhkY2U2OWY1ZjVlMDBkNjhjMSBsZWdhY3ktdHJ1bmsKKzYyMzYgMjlmZTZhMGRlMzY2M2I4ZDQ1YzJjNzQ5M2ViNWI0ODQwYWNmODRmZiBsZWdhY3ktdHJ1bmsKKzYyMzcgZGI1NDg4ZmU0OTViMmEwMDU5M2JiOTEzMDk1Zjg5NDEzOWE1ZWYzYiBsZWdhY3ktdHJ1bmsKKzYyMzggNTE2NDkwYzgxOTJjZGZiMDE2ZmExODViOTI3YzIwOGI3MGZkZDY4OCBsZWdhY3ktdHJ1bmsKKzYyMzkgNGI1ZGVmNDA3NzNjZWFmYTU3NWZjZTViMjA4YWVlMzNiMGM3OGRiMCBsZWdhY3ktdHJ1bmsKKzYyNDAgZDFhZTBlYTlhNTg1ZjkxMmQ3YWEzZDAwNGZmODE3ZDBkZWExMTJmOCBsZWdhY3ktdHJ1bmsKKzYyNDEgMmI4MTBhM2M3ZTQxNGNhNDJlNmM4OWI0YTEzN2I0Y2JkMGU0NmVjMiBsZWdhY3ktdHJ1bmsKKzYyNDIgN2NkYzBjNzE0NmQ1MGFjMjE5NzNmNTA2MGQ4Y2VjNjcxZGI4OTE4ZiBsZWdhY3ktdHJ1bmsKKzYyNDMgZDA5ODgzMThiNzU2OGM2YTUzZWJkYmUyZmNkNzliODcxZWRjNDM2ZSBsZWdhY3ktdHJ1bmsKKzYyNDQgYzhkMGY3ODIyMWNjMzZlODE3ODZkNjQ3NTA5ODllODdhZjBjNDcwYiBsZWdhY3ktdHJ1bmsKKzYyNDUgNmU0MGEyYTNlNmVmMGM0YTM5ODYzMzYwOWEyNDEzZWEwNmY4ZTM0NSBsZWdhY3ktdHJ1bmsKKzYyNDYgNGM3OGQ3M2M1NjY3NTcyM2NiNzczZjIzZDBhMmFjZjQyNmI1Y2MyMCBsZWdhY3ktdHJ1bmsKKzYyNDcgYWIxMTBiMWU5MmZmYTE4MmVhYzRkNjkzZTAyN2U0MzRjYjNiNjhkYiBsZWdhY3ktdHJ1bmsKKzYyNDggZWNjZmFkYTQ3ZjI4NWFiNGE5YmZhYTU0NWVlNGIyMWVjZDc3YWRkZSBsZWdhY3ktdHJ1bmsKKzYyNDkgZjM1ZGRlN2Y0MTQzZTVmNjEwYmFjZWQ5NmNhMjBmMzk5YzMwMDIxMyBsZWdhY3ktdHJ1bmsKKzYyNTAgZjk5MDdmNTczMjdlYzU3NjM4ZDdhOTIwMWVhNDdhM2NkY2M3YjY4OSBsZWdhY3ktdHJ1bmsKKzYyNTEgMTBiNTA2MWY2Y2JjZjg1NGM3ZTgxYTUyZGM0OTA5NGQwOWEyM2UzNyBsZWdhY3ktdHJ1bmsKKzYyNTIgYWMxMTRhNWZjOGZmODQ2ZTc5ODIxODM4M2NmNGJiNDFhZjdjNjZkYSBsZWdhY3ktdHJ1bmsKKzYyNTMgMjdjMzc3NTc1ZjRhYzRkZDlmNGZiMmIwOGFhOTk4MDZiNDFjNTRiNyBsZWdhY3ktdHJ1bmsKKzYyNTQgM2ViMTY5NGVkY2U2YjA0MjlkYzVjZTg1Zjk4YWEwYTY4ZDYzNzc0MSBsZWdhY3ktdHJ1bmsKKzYyNTUgYTYyMDNkMTcxNThiYTUyZTBmZDMzZDhjMjhiMWM0NTlmYWZmNWMzNCBsZWdhY3ktdHJ1bmsKKzYyNTYgYjQxMDE5NTU3YjZlN2NmZjg4ZjJhZTA4ODgxNmQ4MWNlOGMzMTk4ZSBsZWdhY3ktdHJ1bmsKKzYyNTcgMGQ3NDAxMTMxMGNkMWI1YmVhY2RjYWVhODI4NDlkZGE0MWQyY2Q3NSBsZWdhY3ktdHJ1bmsKKzYyNTggNzE4YzhhZjdiZTJhOWZjZTkyMTdiNWViZjI0NjJlYzQ5MjMwNzhmZSBsZWdhY3ktdHJ1bmsKKzYyNTkgNzc2NjM2MGI4NWI4OTFlYTlkYjc4NWVkZmViODViM2RjODdhZmJhMyBsZWdhY3ktdHJ1bmsKKzYyNjAgYjY1MzY4ZWQ4NmJlODlkMTdmYjliMWE5NTg5YWRjYmJlNjU3M2M0NSBsZWdhY3ktdHJ1bmsKKzYyNjEgNDY4ODM3YWQ0NWYzODIzYWM4OTIwODQ4OTg0YTUxZTk1NmFmODE4OCBsZWdhY3ktdHJ1bmsKKzYyNjIgN2U2NTM2NzMwZDBlZWVkMmJiODlkZTI5MTRjZjUxNjE4MTYwNjVjNyBsZWdhY3ktdHJ1bmsKKzYyNjMgMmY1NzM5MmIyZmRlMTI5YmM2ZTMwOTk0NjcxNjQzMjcyOWMzODMwYiBsZWdhY3ktdHJ1bmsKKzYyNjQgZTllZTRjOTA1YWJkMjhmNzJlODcyZWRmY2I1OWExOGI5MTFkNmVjZSBsZWdhY3ktdHJ1bmsKKzYyNjUgY2EwMmQ5Mjc4MTgwMTFiN2YwOTY4ZTI4MTc2NGY5NDVhNTg5YmE5OCBsZWdhY3ktdHJ1bmsKKzYyNjYgZDFjNDdmNGYxNTQxNTAyM2Y5NjkwZmFmMzdiNGVjMjlkOTY3M2E5NyBsZWdhY3ktdHJ1bmsKKzYyNjcgMWYyMGY1MWI3MDBlNDViOGMzNjUyYWIyNmZmZjU4Y2E5MjY1ZGRhMiBsZWdhY3ktdHJ1bmsKKzYyNjggZWM2OTYzYzM3NDFjMTY3NDA3MjY2ZmNmNTU0OGNjNDY3MDJkZTVlOCBsZWdhY3ktdHJ1bmsKKzYyNjkgNTFhN2M4ZmU3YzdiMjkyNmQ4YWMwNGYxODc4YzBlYWM2YjY5OTg3MCBsZWdhY3ktdHJ1bmsKKzYyNzAgYTgxNmFiZTg2ZjkwNDRkN2FjNjVhYWQzYzBmNzA3YWRjMDc1NGY4MiBsZWdhY3ktdHJ1bmsKKzYyNzEgMmYyNzUwMWRiM2MzZTQyN2UxMTM2Yjk1YTk2MmE3MjdjMGUxYzY1YSBsZWdhY3ktdHJ1bmsKKzYyNzIgYWNmMzVlZDBmMDI2NDc1MWVhZDAxMzc1ZDM0NWU4ODE0NTI4NzQ4ZiBsZWdhY3ktdHJ1bmsKKzYyNzMgODQzMTIxYTIyNmNhOTQ2MWI4NmRlZjZiNWMyYTE0YjcxMDhlMzdiMCBsZWdhY3ktdHJ1bmsKKzYyNzQgNDhlODU5ZjMyOGNiYzAxMWY2Yzc2ZWE0ZWFiNTI5ZmI1NzVkODJhYSBsZWdhY3ktdHJ1bmsKKzYyNzUgMmVhYTAwODYwZWRjNDYwYjJjOTkyNTc5ZWVlYTc5NmQ1N2U5YzhmNSBsZWdhY3ktdHJ1bmsKKzYyNzYgNDg3NzZiZjRiZDQ5M2M2YzMxMTczYjUwMjVmN2Q1YTk2NDg5MzhiMiBsZWdhY3ktdHJ1bmsKKzYyNzcgNGY3Mzk2MmFhYmE2YmFjODY0Nzg1YjJlMjA2OTc2YWJhN2NlODU2MCBsZWdhY3ktdHJ1bmsKKzYyNzggOTM4NjhjN2ExNWM5MGJlZWI4OTQ0MTk4NjIzM2FiZTZmZGI2ODRhMyBsZWdhY3ktdHJ1bmsKKzYyNzkgNDI2ZTc5NmY2MTE1MjE3OWVhNGRiOWU4YTE2ZGMwN2IxNmQyZjUwZiBsZWdhY3ktdHJ1bmsKKzYyODAgMTdhMjg5MWU2MjdmYjg5ZTUyM2Y3MTJmZTY1MWRmMTAwYzJjOTlkZiBsZWdhY3ktdHJ1bmsKKzYyODEgYmYzZjgwOTQxZWMxMWM4YTM3MWM1ODNmYzM0OWJhMGVlNmM5M2Q2NSBsZWdhY3ktdHJ1bmsKKzYyODIgMmRiZDUwODFjNzFlN2JmYmEwNTYwZThkYWZmNDFmOTY4ZGM1ZDY2YiBsZWdhY3ktdHJ1bmsKKzYyODMgYjlhMDQzNGQyY2I2ZjEyMDJkNjRmNDY0ODkzMmNjYTQ3ZWNmMDJiZiBsZWdhY3ktdHJ1bmsKKzYyODQgNmQzMjRmYmFmYWRjMmY5YTM2NTkzMmE5MjczMzIwNmMxN2Q2Mzk2YyBsZWdhY3ktdHJ1bmsKKzYyODUgY2EzNmUzMDhlMzNkOWRlMjczZjFhNjk3Nzk2ZDQ5YTIyZWU3ZDYwYiBsZWdhY3ktdHJ1bmsKKzYyODYgMzFlMTAwZDlkOTI5YzhiMGQ4YmFhNzYxNjE0Y2RlZDE1YWFhNzA0YSBsZWdhY3ktdHJ1bmsKKzYyODcgY2M5MmZhMmNkODZiZDhlZTZkZjc2NmQ4NGEyNGMyNmY5MzkxNWYyZSBsZWdhY3ktdHJ1bmsKKzYyODggODlkNGY1ZGVkNjcwMzc3NjA5OTk3ZWVlMWIzZjNiMzMzNjQ1N2NiZSBsZWdhY3ktdHJ1bmsKKzYyODkgZjMyNjc2YWIzZjNhMDYxMWQxNzFmODQ5OTBmYWY0ZDk2ZTU5N2QzNyBsZWdhY3ktdHJ1bmsKKzYyOTAgM2M1Y2E3NzI3OTg4M2E0MzEyZTY3MDU5MjI0NjhkOTI3MjFkNzY4MCBsZWdhY3ktdHJ1bmsKKzYyOTEgNWI2YTc5MWFjNmU3ZGU0ZWFkYTI0OWM4ODBjYjkwNDk5MmUzOGYwNyBsZWdhY3ktdHJ1bmsKKzYyOTIgZjdmM2U0YjU2OTNjMTRiZWQzOWRlZjYzZTZiYmRiZjljMTUxYzVjZCBsZWdhY3ktdHJ1bmsKKzYyOTMgMjQwZjgzNGFlZThiYmI0ODQ1ODMzOTQzNDZhOTU1ODcyMjRmYTIzMCBsZWdhY3ktdHJ1bmsKKzYyOTQgZGI0ZWEzYWJmODkxMmM0NzIwOTUwM2U5YzcyMDU2M2MyODE1Y2YzNSBsZWdhY3ktdHJ1bmsKKzYyOTUgOWFhYzM3ODkyZTg4OGZlZDg0OGJhMWRhZDRiNjdhYTRiNjlmMzI0NCBsZWdhY3ktdHJ1bmsKKzYyOTYgODIwYWJhMTA0NmMzOWFmZGYzOTE2OWYyMGY3MzAwMzQ5OWE3ZjhiMiBsZWdhY3ktdHJ1bmsKKzYyOTcgYzNlYzY5YjFmZTM2MDkzM2RkYzY1ZmYyMTNjNWNkZjc4ZTQyMjRhMSBsZWdhY3ktdHJ1bmsKKzYyOTggOTgzMWUwZmMwMWRlMDQ3MjhlOWI4MWZlYTJjZGQ1Mzg2YzAzYTM0NiBsZWdhY3ktdHJ1bmsKKzYyOTkgYmMyMmViNWQ0YTBhMTFiYTY1Y2Q0MjBhNjA1YzIzMzcyYzQxNTRjMiBsZWdhY3ktdHJ1bmsKKzYzMDAgYzM1ZDllMmE2ODYwODMyN2U1MjgyNGQwNGMyNDA5ZmNhMGUxYjlkZSBsZWdhY3ktdHJ1bmsKKzYzMDEgMDliZWJhOTQwOWRkZDRhZjUzMjg3NDAxYzI5NjQyODEyZDBhMmUxOSBsZWdhY3ktdHJ1bmsKKzYzMDIgM2UzZTk1ZGRjZTIyZmIzNDg5ZjQ0NmFhYjVkNWQzMjdmY2YwMjZiMSBsZWdhY3ktdHJ1bmsKKzYzMDMgOTY4NTFmNTFhZDZiZjlmZWRhZTVmNmE0ZWY2YmMxZDhkODM2OGU5NiBsZWdhY3ktdHJ1bmsKKzYzMDQgMDM5YmMzZTRlNjRlYTEyMDhmY2MzOTAwMjIyMTJmNmU2OTgwYjk0YSBsZWdhY3ktdHJ1bmsKKzYzMDUgZjBlZmZmMjhhMjRkZDFkMDU1YzM2YWM1OTNjMGI2ZDRmYWI2MTA5MyBsZWdhY3ktdHJ1bmsKKzYzMDYgNzdkOTEyZjJhYmNiNGYzMzA0MGYwY2I5M2Q5Zjg3NWU3YjQ4MDQ1ZCBsZWdhY3ktdHJ1bmsKKzYzMDcgMzQzMjMyYzFkYzlhMDc0OTM5OTcwZTZkMTUxYzQwYThiM2U5YWJiYyBsZWdhY3ktdHJ1bmsKKzYzMDggZmExNDgwZTYwZWQ2YjQ4ODhjZmVjZjY0MThiMmMyYzk3NmM5ZGUzZSBsZWdhY3ktdHJ1bmsKKzYzMDkgMmIyZWZhNDhmMjhkMjZiOTczY2NjZGRhMDNkMGQ1Y2IzYWY3NmJmYiBsZWdhY3ktdHJ1bmsKKzYzMTAgNWFhYjNmNjY4ZTg0Njk2ZDI1ZDE2NWFlYTczNjI3NDBhZjcyODZiZSBsZWdhY3ktdHJ1bmsKKzYzMTEgMjJlMjliMTc0N2UxMzlkOTU5OGVhYTUxMjZjNTkzMTNhZjM5OTQ5ZCBsZWdhY3ktdHJ1bmsKKzYzMTIgMjZjMjAwMjY2NjExOTgwNmUwMDdhZDM2N2NiODUzODVmNzIyMWRhNSBsZWdhY3ktdHJ1bmsKKzYzMTMgZjY2Njc5YWE4ZGUwYWNlMzZmMzZkYmIzZDdiOTViMzI5Nzk2ZTE4OCBsZWdhY3ktdHJ1bmsKKzYzMTQgMjEwODE2ZDM0OGJhNDVlZTg5MTQ2OTA3OGJjYmE2MmRhMDU4M2RhYiBsZWdhY3ktdHJ1bmsKKzYzMTUgZGUwYWQ3NTI3ZGU3ZmNlODQ3MWU4NjA5NGYyOGI3N2UxY2IwZjVmYiBsZWdhY3ktdHJ1bmsKKzYzMTYgMGQ1NGExNGVmMGI4Yzc0YmZiNjJkNTMzMmYyMzNlNTdlYzc4NjgyOSBsZWdhY3ktdHJ1bmsKKzYzMTcgZDE5MzM4ZmQzOGViNjllODU0MDVjZWUxYTA5YTA3MzY0ZjFlZTZmNCBsZWdhY3ktdHJ1bmsKKzYzMTggZmNkODJhMDE1MDdkMjYyMjk1NTViN2IwOTE0YmNhZWNkNzc1NWRhMyBsZWdhY3ktdHJ1bmsKKzYzMTkgOGRhYjNhZDk2NDAwNmJlZGZlZjhmNTk0MzQwZjMwZDczNjJjY2EyMyBsZWdhY3ktdHJ1bmsKKzYzMjAgOTdkMjRhZjM0OGNmZTgyOWI0MWM3ZDJmMmRhOWQ4OWZmMGExOGM3MCBsZWdhY3ktdHJ1bmsKKzYzMjEgNjlkY2MwMmUzMTM1ZmFiYzczNGU1MGViMTEyODEzM2Q5ZTM3MjFjNSBsZWdhY3ktdHJ1bmsKKzYzMjIgZDFjZmY0OWUzY2M4ZDI4MGE0NmQzY2EyNTU3ODdkMTRjMWNkYTE1NyBsZWdhY3ktdHJ1bmsKKzYzMjMgMGZmYzBiMzYyZmNiYjkzZmFiYmJiNWM1NzhhNjFkYzYyYjdlZDM5YiBsZWdhY3ktdHJ1bmsKKzYzMjQgOTc1MTlkZmM2M2FlYjc5ZGZlOGEwMWZlOTIyZjA4NWEwOWE4NWExNiBsZWdhY3ktdHJ1bmsKKzYzMjUgM2IxMTRmMDMxNWMxNDU2MTQ5MjE2MmFkNzg1YmRkYjhkOWU0ODA4NSBsZWdhY3ktdHJ1bmsKKzYzMjYgMjMxMjZlODA0MGEwYzEyNjJlYTE4ZDBmYWU3MmFkNGQ2NjRmNTVkOSBsZWdhY3ktdHJ1bmsKKzYzMjcgMDQ1N2VhOTRlZjc5ZmFmOWJjNzliZWYxZjI0YThhZmEyZjU0NmUwYyBsZWdhY3ktdHJ1bmsKKzYzMjggNTgzMGVkZTQwODZjNzQ0MDRkNDE3ZGUzMjUxZGNjZTMxNmUxOWQ5MiBsZWdhY3ktdHJ1bmsKKzYzMjkgODNhOTViZjcwODY3ZGJmMzc0ZDdkZTg1OTk3NDRmYTA4YjVlMWZiNCBsZWdhY3ktdHJ1bmsKKzYzMzAgOGI3MWVhNWRhY2M4MzE1NTAyMzlkNzM3OTRmYWFiYTZlZDAxMzUyNyBsZWdhY3ktdHJ1bmsKKzYzMzEgMDg1MzE2NmYwZDY5NjYwZDZjNDMyZWIzOGQyNTcwYWZkNGI3YjdmYSBsZWdhY3ktdHJ1bmsKKzYzMzIgYjYxOTM5NTI0YzNjZWZjYjRhZTBlMjE1MDQ4YzAwNjRkMTZlMDY1MCBsZWdhY3ktdHJ1bmsKKzYzMzMgOGI1OTAxMzk5YWRkYjRlYTIxNjhiZWI3YzkyZjU0MzU0YjFhMGM5NCBsZWdhY3ktdHJ1bmsKKzYzMzQgZDU1Y2RmNDNjMjQwMTljNjQwODllZmEyYzZmODcyNzA3ZmZmYTQ2MCBsZWdhY3ktdHJ1bmsKKzYzMzUgNDU2NmExOWMzNDM4ZDE0ZTAxNmFhMzcwZjIwYzM4ZTdmMTE4ZGQwMiBsZWdhY3ktdHJ1bmsKKzYzMzYgNzgxOTU2ODMyM2MzNzUzZjMyZDIzYjU3MDIxODA0YzY3NzI3MzZkYiBsZWdhY3ktdHJ1bmsKKzYzMzcgNDU5MTAzNTIyOGE3NzNhNTE2YWE0MGU4NTczZjRhNTlkZmJjZGU1MSBsZWdhY3ktdHJ1bmsKKzYzMzggYTNiMDlhNzExNjJiYzIyYmM0YzRiYTM3NjM3NmYyNjA2ZjYzOGQ3MSBsZWdhY3ktdHJ1bmsKKzYzMzkgZTliMzVjYzg4YjUwZTk0MGQyN2JjZGNiMDQ1NzcyYTllYzdmN2E2YyBsZWdhY3ktdHJ1bmsKKzYzNDAgMmFjMmE2MDEyMDViMzM1YmM4NmIwOTE3M2U2ZDU5ZDE0ZjUwOTcwMSBsZWdhY3ktdHJ1bmsKKzYzNDEgNGRkZThjMDQwZjllYzUxNjViZTAzN2ZiZWNjMDNhNWNhNWQ5NTY2YiBsZWdhY3ktdHJ1bmsKKzYzNDIgNWIxNDcxMDk1YTNhMjY3MjFmYjY0MWY0MjU1NjZhNjNiNDI0MjY4NyBsZWdhY3ktdHJ1bmsKKzYzNDMgOWIxOTUyODVmZTE3N2IxNWY0ZGU1NWEzZTRhNjU5NTg1ZmI3MTNjNSBsZWdhY3ktdHJ1bmsKKzYzNDQgNGU5NzkxNjE2NzFmNDM5YWU4NWUyMGJiZGQ1MDI5NTdmZTlmMzBjOCBsZWdhY3ktdHJ1bmsKKzYzNDUgYmMwZWRjNTg5YWQ0OWQ5YjVkNDkwY2FiNTI1M2FkMjRhNGViYzc5OSBsZWdhY3ktdHJ1bmsKKzYzNDYgZGM1YzExMTc3MzM5ODBlOGQ4NzU0MWU2MjcwMzdiNGE3ZTUwYWZlOCBsZWdhY3ktdHJ1bmsKKzYzNDcgMjgzOGRiODNkMGVkMzg2MDRlZjYyOGE0N2QxMGM0MzIwYTM5NTBiMyBsZWdhY3ktdHJ1bmsKKzYzNDggMDYzOGZkYzIzZWVjNGJhNmU2YjNlMjQ4MTg4ZjllNjE3YmQwYzgwMSBsZWdhY3ktdHJ1bmsKKzYzNDkgNDA4ZTM3NDkzNGU1YTQyNGQzMDQzYmZkNjRiODk1YWEyMTc1OTc4YyBsZWdhY3ktdHJ1bmsKKzYzNTAgNDI4NjkxMDA4MGE5ZmVhYWZkZTNmODEzMDc5YjhiZGJkMzc0OGQwYSBsZWdhY3ktdHJ1bmsKKzYzNTEgZmVlOTI4ZjE2NjFlNzc1MmY1NzI2ZmYzODgyYWRkZjAzYjk4MjljOSBsZWdhY3ktdHJ1bmsKKzYzNTIgZDBiNDU2NmUyMTA3YTUzNzQxODEzN2VlMTA3ODllYWJlODI1ZGNhNSBsZWdhY3ktdHJ1bmsKKzYzNTMgMmRhMTJjOWQ3MTRmNDczMmJiZDQwOWU1ODU2NjE4NmJiMmZlMzExNCBsZWdhY3ktdHJ1bmsKKzYzNTQgMzU3ZDczOTVjOTk4Y2RmNjZlYmY2NDZiZTU0M2Y4MzQ2NWNmYzQ4MyBsZWdhY3ktdHJ1bmsKKzYzNTUgYzg4M2Q1ZTI0YWQ4ZjMzNWM5MmVhZjZkMDJhYzlhODQ1NGE0NGVjMSBsZWdhY3ktdHJ1bmsKKzYzNTYgNmRjN2VkOGE0MzRiMWZmMzY5MGZiOWE1OTgxMWEyMjQ5YzEzMzRlMSBsZWdhY3ktdHJ1bmsKKzYzNTcgZmM5YjE2NWE4YTA5ZDMxMjg2YmUwODYwYTk4NDM3NTBiMzk0Njk2MCBsZWdhY3ktdHJ1bmsKKzYzNTggODFmNjBmNTJiODczMjU4NWFmNGU4YzM3YTljZjQ3NzE5Y2RhZTA0ZSBsZWdhY3ktdHJ1bmsKKzYzNTkgOTU3ZjQyZWEwZjg0NDQ0ODZhMjM3Y2I3OTJiMzA1N2VkN2MzMjNhMCBsZWdhY3ktdHJ1bmsKKzYzNjAgM2M3NTMwNmE2NWNlZDQxNjYzMzc4YzY5MGNhNWEzNDU0ZTlkYzdhOSBsZWdhY3ktdHJ1bmsKKzYzNjEgNTcxNjgyNWY2ZTliMTM3ZmY4NjdlM2Q5YmFiYjQzZjhlMzEzNWE1OSBsZWdhY3ktdHJ1bmsKKzYzNjIgZjkwMzAxNTQ0ZmE5YmU4OWE2YjhmMmE4OWM4NWI3YWE0ZDE2ZWIxMiBsZWdhY3ktdHJ1bmsKKzYzNjMgZDllN2YxMDg4YzNiMzYzYmE0ODUyY2Q4ZWE3MWM4Mjc0MWU3NmU4MCBsZWdhY3ktdHJ1bmsKKzYzNjQgYWIwODg5ZTQyMWVkNDdhMmIyYTU0MDQyYjk2NDQ2YjY0NDgwNTdhNCBsZWdhY3ktdHJ1bmsKKzYzNjUgOTU4ZDRjNjc1MjZiMDljZGRkMmUyNjIyNTQyMzE0M2UwYjJkZTQ2NCBsZWdhY3ktdHJ1bmsKKzYzNjYgYTUwYWU4MzkzZDM3ODBjYzc0M2JmOWI4MzcwNGMxYjk5MDUwMmVmOCBsZWdhY3ktdHJ1bmsKKzYzNjcgMzNlNWQxZDQyY2MyNjJmOTgyMDRhYmQ5MzUzYzE5MmVhN2NkNzUzMyBsZWdhY3ktdHJ1bmsKKzYzNjggZjRhM2IxNmU5NWYwN2ZhYWY0ZWYxZDBhMWMyZGJhYWU5OTI2YzQxYyBsZWdhY3ktdHJ1bmsKKzYzNjkgMzE4ZTY4OWMyMjBmOTIxOTdkOWVjNzY1YmU2OWVjYWYzMjQ3NWQ0NiBsZWdhY3ktdHJ1bmsKKzYzNzAgOTRjNmJmNmZkN2Y0ZmEwOTUwMjRjN2RhZjg4YWI0YjQ5MjFkYzUzYSBsZWdhY3ktdHJ1bmsKKzYzNzEgNTg0OTM2ODkwZjg2NjkxNWQyMTU0YmQ1MjVlNTBmM2Y0NWYyZDE3NyBsZWdhY3ktdHJ1bmsKKzYzNzIgY2JhNGNlMTVhMGQ1Yzk5YWE2NWE5Yzg1OTY4NGRkZTVjZGQ3YzZiZiBsZWdhY3ktdHJ1bmsKKzYzNzMgY2UyZDkyMzliYTgxMTQ1ZDhjNjBjMmM2MWY5MDVkZWI3Yjg2ZDgzOCBsZWdhY3ktdHJ1bmsKKzYzNzQgMDg2NGE2M2ExMGE5MmMxN2M1MWNkMzA0MTNlMmJkMDNmZmNiMWNiMyBsZWdhY3ktdHJ1bmsKKzYzNzUgYTNmNjdiYjk2YWRjOGMzMjZkZmZkODUyYjBlNzFmYzliZTczM2FhNiBsZWdhY3ktdHJ1bmsKKzYzNzYgZmU0MTE2M2MwMGMzZmYyOWRlNWY1NmU2M2MzMjI4ZDQ0ODdmMDEwNSBsZWdhY3ktdHJ1bmsKKzYzNzcgOTdlNzAxMWZiMWIxOTFhMzA0ZjY1YmY0M2ExNTZjM2ZjMzcwMzIwYSBsZWdhY3ktdHJ1bmsKKzYzNzggYTBmZDgxNjg4YmU1MmY1ZDU3Mjk1OGM5YzI0Y2MwNDkxYjZlYjMxOCBsZWdhY3ktdHJ1bmsKKzYzNzkgYWMxZDVhYmZkNzhlZTQ5MTBkN2U1ODMyYTc4YzU0NTI1ZDJhMzIxZSBsZWdhY3ktdHJ1bmsKKzYzODAgODY3MTY0MmUxNGEzNzhmOTk4YjkxZTgyMDZhNTc4NTViOGE0MDg2ZCBsZWdhY3ktdHJ1bmsKKzYzODEgNmQ1MDk2YjcwMzhkOGExNjlhNzQxYjA5ZTFhZWZiMTUzOTNkZDRjMiBsZWdhY3ktdHJ1bmsKKzYzODIgOWNmMTFhZjM2MjhjODk4NTljNTMxZDUzNWZjNGM3ODkzYzIxYzgzMCBsZWdhY3ktdHJ1bmsKKzYzODMgYTlhOTJkYzJiMzc0OTQ2YzI4NjQxNjEyMjNlYzE3ZmE3NjlkMTdmZSBsZWdhY3ktdHJ1bmsKKzYzODQgNWJiZTBkY2UyZTI2NzFjYWZiOGEwNDI3NDZkNGU1Y2MzODcxYzYwYyBsZWdhY3ktdHJ1bmsKKzYzODUgZjI4ZDNkODk4MmEyNWE3Mzc1YTFhNTFmZmQzNmUxMjI0MWExZmY0YiBsZWdhY3ktdHJ1bmsKKzYzODYgNTI0Y2Y1MDFjODUxZmQ4NWEzOWU3MmU1NjljYWU4MDY3ODdlM2NhMyBsZWdhY3ktdHJ1bmsKKzYzODcgMzQxMTQ2MTAwZjM4Y2E5OGZhNjdlNzBmYThlYTAwOWY5YmRjYzQyZCBsZWdhY3ktdHJ1bmsKKzYzODggODRlMTZjZjkyMTk5MjViNWNlMzhhNDk4OTBkMDI1OTlhZWZjMjI2NyBsZWdhY3ktdHJ1bmsKKzYzODkgNDQ0MTJlNDZmMjY4NzdlOTQ3MzBmNTkyNTdmNzhiMzhlYTM5YWU0OSBsZWdhY3ktdHJ1bmsKKzYzOTAgN2RlNWUxMTUzYjM5MmNiNmQ1NmZhZTVjM2Q2YTM3MTU5NGVhNDhkZiBsZWdhY3ktdHJ1bmsKKzYzOTEgZjQ4Nzc5M2Q2MDE4NDZkMGY5NjYyMTM3NTk3YmVkODliMzFmMzQ3MyBsZWdhY3ktdHJ1bmsKKzYzOTIgOTM2NjE2NGY1YzRhOTNkNzI5N2NhOGQ3NDk4MTI1YWNhMDE3NjEzZiBsZWdhY3ktdHJ1bmsKKzYzOTMgYzJhZTA0NDBjNDI0YTcyMjg0YTU3ZWM4NDIxZTk3NTM1OTU5NjljYiBsZWdhY3ktdHJ1bmsKKzYzOTQgZThiZDQzMGNkMzU3ZTg2Y2Y5OThkN2Q4OThmOTUwNTQyY2YyNWY5MSBsZWdhY3ktdHJ1bmsKKzYzOTUgYTM5ZDA2NDk3NTIwMzViN2Q5YTU2YjJjNDZlYTUxZGFkMTE4YTYxNyBsZWdhY3ktdHJ1bmsKKzYzOTYgMDYzZDg2NzQxNDEwZTJlZDg3ZDFjMjk2ZjlhZTE3ZTIzYzRmZjRjZCBsZWdhY3ktdHJ1bmsKKzYzOTcgNGJjZWU2M2Q1YmIxN2RiMDM4Mzc2NmZhNzM0MDBkM2E0YzMzYWVmOSBsZWdhY3ktdHJ1bmsKKzYzOTggMWRhMTY4MTg1ZTRlMDViODlhNTA4NmExOGRkYzZlOTMxODdjY2ZiYSBsZWdhY3ktdHJ1bmsKKzYzOTkgNTNlNzU3YmI2N2Q1ZDYzMWU2YmE5ODFiNWY4NGM3YzgxMmQ0NzdiOSBsZWdhY3ktdHJ1bmsKKzY0MDAgMTY0MGUzNTU5Yjg2Njc5OWQ5YzNlYTA5YjIyNTk5OWJiOGRjMTE1YSBsZWdhY3ktdHJ1bmsKKzY0MDEgZmY2OGEyZWMxZmYxMmNiNjE1Y2NiYzg3MmE1NmM1MjcwNGY0OTc5OSBsZWdhY3ktdHJ1bmsKKzY0MDIgNTJjMTllZTgzYTZiMGY3MWM4OTAwN2E1ZDIyYThkZGJlZmExOTI0ZiBsZWdhY3ktdHJ1bmsKKzY0MDMgODgyYTMxYjdmODczMTFmOGUwOGYwMDgyZGEzYWNiNDRiOTJiZTgxNyBsZWdhY3ktdHJ1bmsKKzY0MDQgZmUxMTk2OTk1MzQ0NmQ3MGFhOTIxMTM0ZjhkMzg3MTA3MGMxNDVkYyBsZWdhY3ktdHJ1bmsKKzY0MDUgNjBiYjc0M2I4YTVjMjAwMGQzYjA1NWY3MjI0NzhlNTk0YmJkZTM4NCBsZWdhY3ktdHJ1bmsKKzY0MDYgZjlhZDk4YjU4NDcyYjA4ZTdlNTk1MDJlNjMzMDNlMjhmNTgzZTgyOSBsZWdhY3ktdHJ1bmsKKzY0MDcgZDdkODcwNWJhNjQ0NGRkMGQ3YTFkNWEyMTg0OGIyNTcxNGI2YzljOCBsZWdhY3ktdHJ1bmsKKzY0MDggNmUwYmJhOTNhMGViMzM4NjA5NGRjM2E5ODQ5NzgzMjg3ZmVhZDgxOCBsZWdhY3ktdHJ1bmsKKzY0MDkgZGVjZDEzZjY2MjlkNWE0MzI0MGY1ZTVlNWQ4Y2RlZTMyYjc4NzEyYiBsZWdhY3ktdHJ1bmsKKzY0MTAgNjFiNGNhZTc3ZjdlODczNWFiMDY2NmRlODI4NWFjNTRiODZhNGNjZCBsZWdhY3ktdHJ1bmsKKzY0MTEgNjc1MzI4YjA4MTIyYjljYzk0NGVkMTIyZmQyZmNjN2ZiNDM3ZjJmYSBsZWdhY3ktdHJ1bmsKKzY0MTMgNDZiMzNjZjhiOTEzZTVkMDcyMmRhMWE1NWU4NmM1NWM5MjNlN2UyYSBsZWdhY3ktdHJ1bmsKKzY0MTQgMGQ0NDM3ZDFjMmI1N2ViYmJhZmFlMjAwZTJiNTkyMWNhYjBmYmY2YSBsZWdhY3ktdHJ1bmsKKzY0MTUgMzg2ODQ4NTIzNzZmNTQyMjYxMzk1M2MyZDBkMmIwZDY3ZDJlMTQ2YiBsZWdhY3ktdHJ1bmsKKzY0MTYgNmU2MDllMjY2YmU5ZDEwYTliMWEyMzYyZGQ1NjRmNjlmNGUzZTdjOCBsZWdhY3ktdHJ1bmsKKzY0MTcgZmJhZmIwY2QwYTJhNTVmZjMxM2FkNGU3MDkwZDEzNzRmODA0ZjgxNSBsZWdhY3ktdHJ1bmsKKzY0MTggNzNjZjcwODJiOWU4ZDc0MTQ3MmM0Y2ZiZThjNjZkZDI3MTUzNDkzMiBsZWdhY3ktdHJ1bmsKKzY0MTkgNmY3OGQzMTY0Mzc2YWUyNDIxZjUwMDQxN2ZmMmNkNzkwMjA1MzQ5MyBsZWdhY3ktdHJ1bmsKKzY0MjAgMTA3NTNlNGQ3NmU3MWRjNmEwODVlNTI2MjJkZjkxNGE3NGMwN2NhZCBsZWdhY3ktdHJ1bmsKKzY0MjEgZGVhZGVhNDNiYjUzNjQ1MzVlNWRkMTcwZjI4YWVmMGQxN2NmZjk1NSBsZWdhY3ktdHJ1bmsKKzY0MjIgM2FjYWY3YWY0OWNjMTAxMzY2MzBmMzQ1N2EwMDI1ZWEwNmFkMmYzOSBsZWdhY3ktdHJ1bmsKKzY0MjMgNzVkMDE2Yzk3ZDFjMmNlZWY0NzhmZTg3NWMzMmJkMDg1ZDFjMDMwYyBsZWdhY3ktdHJ1bmsKKzY0MjQgOTA4MTgxOWFiYmY1NTY3NDJhOWY5ZjQyMGIzNTY1OWVhZjQwYWRmMCBsZWdhY3ktdHJ1bmsKKzY0MjUgN2VlMWIxMDBlZDI5YTRmZjFmMjMxNTdiZThjMGNmYjQ5MmE0M2QwYyBsZWdhY3ktdHJ1bmsKKzY0MjYgZjBmOGI1MGI1YjZjZDY4NmVjMGU2YmI0OWNjZjAxZGZlZGFiM2M5MCBsZWdhY3ktdHJ1bmsKKzY0MjcgOWQ4YTk2NWRlN2VjOGFjOWY1MzZkYzU1NjU0MTQ5NmU0YTgxNjUyOSBsZWdhY3ktdHJ1bmsKKzY0MjggMjkwMTViNThlOTIyMDIzNDUyOThlZmI5ODEwZjk0Mzg3Nzk5NzhhNiBsZWdhY3ktdHJ1bmsKKzY0MjkgOGUzMDliZTg5ZWU0NTRmMTdkZDA2MGUxZTU5YWVkMjdiNzkyZDBlOSBsZWdhY3ktdHJ1bmsKKzY0MzAgZjAxZTdhZjFkZDYwNjgzYjFmMzAyZTkzMjU3YWM0NzM4NTg2ZWQxMyBsZWdhY3ktdHJ1bmsKKzY0MzEgYjg2YzgwNDQ4ZDM1NWU3ZTg5Y2JjNzZjMjI0MzU0YmNhYjMxMmNiMyBsZWdhY3ktdHJ1bmsKKzY0MzIgNmFmN2E3MDNhZGFlZGExYzZmNWU1ZDVkMmI1YzI5NDg0MjJhMjY0YSBsZWdhY3ktdHJ1bmsKKzY0MzMgOTBmNTA1NTU1MGQ5YTA0ZTUyYTZjZjZkNTAwMjE1MWM3ZWM4MTJjYyBsZWdhY3ktdHJ1bmsKKzY0MzQgYmZkOWJhZjNhOWMyOWZlNWVkNjNlMmE2YTgxYTIxMGM0ZjVhYTg4OSBsZWdhY3ktdHJ1bmsKKzY0MzUgZjA4ZDdmMzY4ZWJmYTE4ZTk5ZDAzYTZhOGQ0ZGYwN2Q1MDRlNGZlOSBsZWdhY3ktdHJ1bmsKKzY0MzYgMDA3MjI5OTBiODBjMzFmMmVkOWRkZjI1ZjVkYTQ4M2YxODY2NjRiMSBsZWdhY3ktdHJ1bmsKKzY0MzcgZmNmZWM2YTgxMGJhNTQzZTY3YjIwZjkyYjE5NDk3ODhkNmZiNWE5NyBsZWdhY3ktdHJ1bmsKKzY0MzggOWMwNWZmNmZiMGE0ZTRiYjc1ZTViZDA2M2ZlOTdhMjFiNzEyNjE0NyBsZWdhY3ktdHJ1bmsKKzY0MzkgMjg5N2RhZmVkOTVhNzI4NGVjZjlhYTRjYTI3YmYwZDJlOTExNjcwMyBsZWdhY3ktdHJ1bmsKKzY0NDAgNTMwMTllM2E2ZDVhMzQwNTkyODJlNWY3NzhmMzdhZjJmMWQzZTI3MyBsZWdhY3ktdHJ1bmsKKzY0NDAgMTI5ZjEyOTlkNGU5N2U4ODRiYmJiZGQwMGJhZjEwMWQxNzg5NzNlNiBsZWdhY3ktdHJ1bmsKKzY0NDIgYWQ4OGEwMDA1MjFmN2IzZjNlZGI1NTRlYmFkZDg3NzBlOGYwMDhkMyBsZWdhY3ktdHJ1bmsKKzY0NDMgZGMxNDQyNTk0OThmY2U5YWE2ODliMjhmYmM5NzYwMmNhM2FmMzBkMSBsZWdhY3ktdHJ1bmsKKzY0NDQgMTQ4MTUyNTJjN2EzYTVhZTQxZDNmODkxYjVmOGIxMmJiODM4MTkwNCBsZWdhY3ktdHJ1bmsKKzY0NDUgYmIwY2U2NTNjMmJhMDI3YmI0MTI5OTdkMGIxOGI0YTcxNmRiZjZiMyBsZWdhY3ktdHJ1bmsKKzY0NDYgM2QxZTRiNzZmNzQ1YTkyYzkxNWE4NmRiM2JmZDE4ZjM3N2U2ZDg5ZCBsZWdhY3ktdHJ1bmsKKzY0NDcgZmM1MDVmMDJhZDhhMjgwNzU5ZWIwNzRlNTJiOWIwODAyMDA1NDY5ZCBsZWdhY3ktdHJ1bmsKKzY0NDggYjc2ZmU2N2VlZDQ0ZWE3MDkzMDIwZDc5NTYxNzBiNmE3MWY1YmUyNCBsZWdhY3ktdHJ1bmsKKzY0NDkgYTM0OTk3YjZlZGY0MmJkN2RlMTUyMDMwZjIwYWUyMjU0N2MyY2MyNyBsZWdhY3ktdHJ1bmsKKzY0NTAgZWFlYzRmNmE4YmU4Y2ZmN2ZlMTNiYjA5NzAyMzA0YWJmZWQwOTUzNSBsZWdhY3ktdHJ1bmsKKzY0NTEgYjkzYzRjZmMyY2ZlYTRiNGMzZjQ2M2E0Y2FlNTM1ODg4MDAzZWU3MyBsZWdhY3ktdHJ1bmsKKzY0NTIgODdlNTNjNjJjYWM4MjE2MGM3Y2Q5MjY4ZjA5YzdmMTNlMTgwNTg3MSBsZWdhY3ktdHJ1bmsKKzY0NTMgNGI1MDk4YjFmY2VmMjgwNjBhYjg5MGNlOWEwMmZjZTkyMzZhYmEyMiBsZWdhY3ktdHJ1bmsKKzY0NTQgZmI1ZmMwMzIwZTZlNWQ1MmRhYWM5NzU0NTM2OGNjOGJhOWM2YjFhYSBsZWdhY3ktdHJ1bmsKKzY0NTUgY2FmMTEwNzI0Y2MxNzdlNDUwM2JmNjA3OGRiNzIyOTZhNTEyOTdhMiBsZWdhY3ktdHJ1bmsKKzY0NTYgNDQ5MDI1MTY2MTRhOTAxZmM5ZWQ5ZmNjNjhkYTkxZDAwZjRhYjE1OCBsZWdhY3ktdHJ1bmsKKzY0NTcgMDYxM2YxN2RjZmQ4NjUzYTMwNDc0NDcxM2QwMmY3YjE2YTY3YTU2MyBsZWdhY3ktdHJ1bmsKKzY0NTggMDExY2ZlNzQ5MGViNWY5NmY0ODM1YjRjNjVlODZjZGM2OWZkZTJjMSBsZWdhY3ktdHJ1bmsKKzY0NTkgOWMyY2JmMzA2ODY0ZDJmYjliMDUzYzNkOGIyYmM0MWU0NDhhOTJiMCBsZWdhY3ktdHJ1bmsKKzY0NjAgNmZiYzVjNjY1ODEyMWU1YTQwODUwMjBkZGNjMDZmN2ZiMTY2YWUzNCBsZWdhY3ktdHJ1bmsKKzY0NjEgZWZiM2E1YTJjZGVhY2JmYjFmMzBlMzkzNGU3ZmFiM2EzZGU3ODg4YyBsZWdhY3ktdHJ1bmsKKzY0NjIgYTgxNTc2NWI0Njk1MmMxZjNhODgxNjE4MjQwNWUxMDhlMTdmNTAzMiBsZWdhY3ktdHJ1bmsKKzY0NjMgYWU4ZDFiNDY5ODEzYTcxZmE3NTNjYjQwZDEwM2FmZGQ3Y2Q5MmRiNCBsZWdhY3ktdHJ1bmsKKzY0NjQgY2ZiOGI3YmMwMjMzYTVmMTJjZTE3ZjVhZDEwOTFlZDZkZGU1ZGQyMyBsZWdhY3ktdHJ1bmsKKzY0NjUgYTRhYWM3NjZjYmYwMDU4MjhlYTlkMmJhNTRiYzk3NTYxZTdhN2FkYyBsZWdhY3ktdHJ1bmsKKzY0NjYgNjQxNGZmYjdmMjg1ZDM2MmUzMjNjNTY4OTc1NTA5NjUwMDJlNzM1ZiBsZWdhY3ktdHJ1bmsKKzY0NjcgM2Y1N2FiMzJiNzQxMmIzMzVjMGU4YTM4MWE0MTI0MjNjYWFhYmRlNSBsZWdhY3ktdHJ1bmsKKzY0NjggY2EwZTA1ZWM4NWI5YWFkMzBkMThkYTkwYTRkYzNhODExZTVhNjFjMSBsZWdhY3ktdHJ1bmsKKzY0NjkgMGVjMmNlOTdiOGUzY2JkMGFhZGVlMDMxODEzNWExZTJmODhjMDMyNiBsZWdhY3ktdHJ1bmsKKzY0NzAgODA2OTc5MGIzOTc0MDA5MTllZTk5MGNkMzkyNDRmNGQ0MGMyNDY3YiBsZWdhY3ktdHJ1bmsKKzY0NzEgZjYzMGEwNjdhZThjYjIyMTBiNjhjYzc4MmY4NWUxNWVlODliMTkzOSBsZWdhY3ktdHJ1bmsKKzY0NzIgYjA5NzZjZGJkNTk4MDNiMzAzZTZjYTAxMzY5MDU2YzdiMGFhNTU3YyBsZWdhY3ktdHJ1bmsKKzY0NzMgYmZmZmQzOGQ2MDBiNWQ5NjVhNWNmYmU2MWE0NjhlZGE1ODJkMjM1NiBsZWdhY3ktdHJ1bmsKKzY0NzQgMWVkNzczZTE1OTM2OTM0NWMzOWUyODY3NDQ5ZjE5ZTNlMWJkYTFmZCBsZWdhY3ktdHJ1bmsKKzY0NzUgNDI0MTU4MjYzNmFkYjM4ZWNjMTQzODJkY2QwYTNmYTVjODY4ZDFkMiBsZWdhY3ktdHJ1bmsKKzY0NzYgMTM4ZmExNWExMDMyZWMxYjE4YzY5MWU2ODFjZTgzOTdiZjhjOGVjNCBsZWdhY3ktdHJ1bmsKKzY0NzcgZDNhMWY2MDg4YzI4ZjEzMTk5ZjBjMjQ2MDBmZjFiOWI4N2VjZDg3NyBsZWdhY3ktdHJ1bmsKKzY0NzggNzQ5NTMyMjQyN2M3NmFjNmUzZjc5NTM2NzYzZDk1ZDcxMWYyYzI3ZiBsZWdhY3ktdHJ1bmsKKzY0NzkgYzJhNjExYWUwZmVjZjQ5NjkwMDNjMmU5ZjUxYmI5ZjE0MmE0ZDg0YiBsZWdhY3ktdHJ1bmsKKzY0ODAgMWEwYWE5ODZmNmZhNjQ1NWI3YjEzZjdlYjQyYTVhMmU1ZDdjMTE3NCBsZWdhY3ktdHJ1bmsKKzY0ODEgMThjMzI3MTRmOGJhNTVkMTU1ZWE2YTg5NjJjZTA5MjkwMWM1MzYxNyBsZWdhY3ktdHJ1bmsKKzY0ODIgNjExMDY5ODZhMWE0YzliZDUzNWM2MTExYzRhYzlkZjQwOWEwY2VlZiBsZWdhY3ktdHJ1bmsKKzY0ODMgY2NjZjlmMjczMmNmM2VkNGZlOTdmN2U1MWYyNTI4ODcwYTQ3ZGQzZiBsZWdhY3ktdHJ1bmsKKzY0ODQgOTI5NDExZGIyMGE4NTg3ZjYxNTQ5NzIwZDgwYjg3NjM1ODA2YTg3ZSBsZWdhY3ktdHJ1bmsKKzY0ODUgMjJhMDMzYmJlNjU1ZjE1YjQwM2Y0NjFkYjQwYjRkZmU2YTU2ZjUyMiBsZWdhY3ktdHJ1bmsKKzY0ODYgYWE5NTQ4ODg1YjNmODBhMzIzYTg3MTI3NDRhYTVmYzdjNTc2Y2ZjOSBsZWdhY3ktdHJ1bmsKKzY0ODcgNDkwOWVmMzllYWYxZGI4MjQxNDY4NDUwMjFjOGVmMzQ1MTkwNzM2NSBsZWdhY3ktdHJ1bmsKKzY0ODggMjExMjE1YzFjNTBkNGIyNGEzZDc0ODRiMzIxOTYzNmVhNWYxNjc0NSBsZWdhY3ktdHJ1bmsKKzY0ODkgOTM4OTE4ZmYzNTM3OTUwZTY5MjQ4ZTRlYjJmYmY2YWUzNTdjNjY2NyBsZWdhY3ktdHJ1bmsKKzY0OTAgNWRjOGMwNDI5MDViNWMxZWIyMjZkNTg3YWE2NWRiM2FhNjcwNGE0MSBsZWdhY3ktdHJ1bmsKKzY0OTEgNDBjOTI5MzM1ZDdmMjQ0NDIyNmM0ZjdiNzcxNWU2NjdhOGQ1MjMwZSBsZWdhY3ktdHJ1bmsKKzY0OTIgMWRlZTNlNGY2N2RmMDIyMjRlODVkMzNmODRiNmIwMjMwZTM2MDg3NSBsZWdhY3ktdHJ1bmsKKzY0OTMgZjQ5ZTQwNTdlYjY4MzAyZjI5OWIzN2FmY2Y3NjEyMjkzODllMjUxNCBsZWdhY3ktdHJ1bmsKKzY0OTQgY2YyNjMwYTQxZjg3NTJlNmZmNTM3NThjMTZlY2U1YWNhYjkxMzYzMyBsZWdhY3ktdHJ1bmsKKzY0OTUgNGZjY2Q5ZWVlNjc5YzIwY2M3MWVhMTU4MDJkOGViMDAwYzU4NTdkYiBsZWdhY3ktdHJ1bmsKKzY0OTYgODkyZjQ1NjE2NDhhMDk1MGUxYzVhN2JiMTUxYjU2OTg0NzYxOTgyMiBsZWdhY3ktdHJ1bmsKKzY0OTcgNTNkNTExYzAwMjlmNTQxMzE4NTdmMmNkN2RkZTRlMGIyODFmOTQxZCBsZWdhY3ktdHJ1bmsKKzY0OTggODU0ZjI1ZmRlOGY0MmMwYTI3ZjgxNWNiODY1NzY3YmY0ODkxZWQ2NiBsZWdhY3ktdHJ1bmsKKzY0OTkgNmJiYzEzYjdkY2E4OGI4Mzk2MDgxNTU0ODVjNmE4ZmU5ZTA3YmQ0ZiBsZWdhY3ktdHJ1bmsKKzY1MDAgMmNkYjhmNWFjMzY1ZjhkY2ZkNzg0NzcxYmNkYTE0YWIzOTYzNzRmNCBsZWdhY3ktdHJ1bmsKKzY1MDEgZGEyYjlhZTkxZDk1M2VjNjBiOTE2YmY0ODczMGE5MDc1NmU5YjIxMCBsZWdhY3ktdHJ1bmsKKzY1MDIgODJjOWRlZTA1M2JjNmQ0NDFlZTRhOTk2N2E4YjM3NTA4NmY5Mjg1NSBsZWdhY3ktdHJ1bmsKKzY1MDMgZTc3ZmFmNTU2OTdiOGYzZGM1MmVhMDRlNzA2YzhkYTNkZGE0OTQwOCBsZWdhY3ktdHJ1bmsKKzY1MDQgM2EyMDAwMDJkODBhODgwZWEzNTA4MWZhNjZhYjBkOGY4NjYyYjU1MCBsZWdhY3ktdHJ1bmsKKzY1MDUgODkzOTQ5ZDFkMjhlYWE3ZTJmN2Q1Mjg3ZWRlMTQyMjVjNzA2ZDk5NCBsZWdhY3ktdHJ1bmsKKzY1MDYgNTU5MmRlOTY1NmRlNGE5MjAwNDllMDVkMWViMzRiNWI4ZjY1YWMxZSBsZWdhY3ktdHJ1bmsKKzY1MDcgYjQzMzM4YzUyMzFlMTA1MzE2MTRkMjAzNzI1NDFhNWNlMTllZWVjZCBsZWdhY3ktdHJ1bmsKKzY1MDggZDFiYWVjNTcxODUyNGMzMzM0OTg1NjliZjhhZGY0OGQ0ZGIwMTE1NiBsZWdhY3ktdHJ1bmsKKzY1MDkgZjdjMjQzZDAxODQ0NjlkY2NmYTIwMTVlNjc4NDM1NmZhNTc1ZDM5OSBsZWdhY3ktdHJ1bmsKKzY1MTAgY2EzOTM1NWJlNTVhMmJhZWM5OTAzOTVmMGVhOGVjNDEzYmMyMTEzYiBsZWdhY3ktdHJ1bmsKKzY1MTEgMjYxNDcyZmE5NzJhNzU4MGYzNDMwZGI4MDczZGVlZGJhOGMwYjVlMSBsZWdhY3ktdHJ1bmsKKzY1MTIgMjNmMjgwYWI1NDA5Yjc5ZTYxNzNkNGUxZjg1MWRiYjY3NTU5NGQzMyBsZWdhY3ktdHJ1bmsKKzY1MTMgZjQxZjBjYWYxY2ZjZTJmNTQyNDBiNjEzMDU5NDM4OTRlNjQ2ODJiMSBsZWdhY3ktdHJ1bmsKKzY1MTQgOGEwMTBkZDQ3MzZlYjgzZTBlNjM1NmY3N2Y0OTU4YTU2YzU3OGMxYSBsZWdhY3ktdHJ1bmsKKzY1MTUgNmI0ZDBmMWEwYWU5YzliYjU1YzE4ZDBkYzBjMmFlYWEwYThhYzIyNiBsZWdhY3ktdHJ1bmsKKzY1MTYgZDZjN2U0MGNiZmRmMGEzOTNmNmI0MjIzNDM1NTA0ODNhODk0NDk5ZSBsZWdhY3ktdHJ1bmsKKzY1MTcgZWY3ZTNjNDk5YTRkYTAxY2QyZTEyZDM1NjUxMDczNWJkOWQ5ZjgwNyBsZWdhY3ktdHJ1bmsKKzY1MTggOTZlMGE3MjA0ZTMxZDgwZmY3YTE4NGYwYTIzNTcwOWJhNGVmMWJjOSBsZWdhY3ktdHJ1bmsKKzY1MTkgZWI5ZmM0MDRjMDY2MzEzZTRlOWFlNzZiZDNlMDdjNWQ3OTMzMWQxYSBsZWdhY3ktdHJ1bmsKKzY1MjAgM2U2ODYzY2VhMzgzMjYzYzU5ODJjNzNhODQ1MjVkMWE3NzE2OGIwZSBsZWdhY3ktdHJ1bmsKKzY1MjEgZjdiMTNkNDE4MmIzZGFlOGIzNzNlMjJkYTc5MmJjNDQ4ZGY2MjBkNSBsZWdhY3ktdHJ1bmsKKzY1MjIgYTJkYzdjZTRkZmJlN2JkNmZjM2NjMzI3NWRiOWQ2MGNlODhhZDNiYSBsZWdhY3ktdHJ1bmsKKzY1MjMgYmMwNjVkZjAzZWU0ZWY4OGMyYzQ4NmRhZmFhNTAzYzQ5NzkxODY2NSBsZWdhY3ktdHJ1bmsKKzY1MjQgZDZjYTZlMjA3OTk0NzcyMjkwNWIwMjg5MDhjMjE2MjI1YjM1NzY1YSBsZWdhY3ktdHJ1bmsKKzY1MjUgZWY2Yzg5ZmUyMWVkZWExYWRjMThmYjU1ZTAxMTUxMjZkNTA0YjU4YiBsZWdhY3ktdHJ1bmsKKzY1MjYgYWM5MjViOWExZDY3NzIxMzdlNWM2YmY5M2EwZDZhMGJlNDM2NmE4NSBsZWdhY3ktdHJ1bmsKKzY1MjcgNjY5Y2NkOWU3MTdlOGVjOWUyY2VlYjg4YTZmOWYzYWYzZTRiZDk5NCBsZWdhY3ktdHJ1bmsKKzY1MjggZjAxMTBjNWM2MjI3OTJiNDY1YjNiNTdiYjFjMWRlMWY5M2E5YTQxNiBsZWdhY3ktdHJ1bmsKKzY1MjkgNmRlZWUzYjIwNmI5OTQ3ZTQ0ZTgyNjkwYmNmZTBmYjkxNDJkMmYyOCBsZWdhY3ktdHJ1bmsKKzY1MzAgODE4NTk5ZTM5MTIzY2NiODFiMzkzNzZiMDg1OTYyMjQ4MzM0MmM3ZCBsZWdhY3ktdHJ1bmsKKzY1MzEgMjFiMjhkY2ZhODY1NDNkNzVkNzQyZjA3YmIzODEyODI0NzliNDUwNiBsZWdhY3ktdHJ1bmsKKzY1MzIgZDY4OTczODVjMzE4NWZjYmRkZDliMTI4MDIzYTM4N2RkZTU3Y2I2NCBsZWdhY3ktdHJ1bmsKKzY1MzMgNjRhNThiMGZiMTY3MTBkY2I3Mzc5NDdjYTY1NTk0YzUwYzQ3OTVjYiBsZWdhY3ktdHJ1bmsKKzY1MzQgNGJmMDFjNjZjYjY4NmNhOTg1MDNkNjE1YWFkNTA2YjhjOGUwYmVkMiBsZWdhY3ktdHJ1bmsKKzY1MzUgZDZkZTJjMTQ4ODE5YWM3YzNjZmI4MjJmNjc0M2Q1OWI0MDI3ZDIxYiBsZWdhY3ktdHJ1bmsKKzY1MzYgYTU4OWNlZGNiZWY1NDY1NDUxNGFkMTViMjQxMWU4NWVjZDE4ZTRhMiBsZWdhY3ktdHJ1bmsKKzY1MzcgNzg4NDM0NzJmYjZmYTIzZDk2ODBkZmU4NWE0ZjEzN2U2NWM5ODFmNyBsZWdhY3ktdHJ1bmsKKzY1MzggYmRlMTlhY2YxMDQ1ZDQ3ZTU5ODI5MjZlZTlkNTUyNWVmNWNmN2QzNiBsZWdhY3ktdHJ1bmsKKzY1MzkgMmM4OWJmMDRmODM0ZWFhZWFjZjE1NTNkZDM4MGU5MTg1YWY5ZWQyNSBsZWdhY3ktdHJ1bmsKKzY1NDEgMjMxYTQyMDkxODMwMmU5N2RjODk5ZTgxMDc5ZmJkNzk0OTBmYjcwOSBsZWdhY3ktdHJ1bmsKKzY1NDIgNGM1NGVjZmFkY2U1ZTQ4NmIwNjhmYjJlODA4MzE2YjRhOTBmOWIxNiBsZWdhY3ktdHJ1bmsKKzY1NDMgZWZlODY4OTFmNDExYjg1N2I5YWVlZWNmOTMxYWQ0ODViZjM2NjhjNyBsZWdhY3ktdHJ1bmsKKzY1NDQgMTk0MTIzMDVkMzM1YTY5Y2IxY2ZjMTkxYzhlMjIzZDZlYmZmY2FkMSBsZWdhY3ktdHJ1bmsKKzY1NDUgYzU3NWE5MjBlNGExZjM1YTRmOTNhMTYxZWI2YmViMWY4MTdlZWQ0ZSBsZWdhY3ktdHJ1bmsKKzY1NDYgZjY2NTYyNTM2ZjExYjNkNWM3MmJiY2JkY2Q0ZTBiNzFkZDkwMDAxYSBsZWdhY3ktdHJ1bmsKKzY1NDcgNTg1MDRjOWEzN2RjNGE4M2UzZmRjMjQ1OGFkMjdkZTI1OGVlMDUyZSBsZWdhY3ktdHJ1bmsKKzY1NDggN2I2ZWVmYWM2ZTQ5Mzc2MDk3MzY4ODAyYWE2YTY1NmQxMmY3YWMzMSBsZWdhY3ktdHJ1bmsKKzY1NDkgNGE3MDM4ZTdhMzEzOWMwOWY0OWY1NDg2MDNmOTIyNThjMDViMTY2MCBsZWdhY3ktdHJ1bmsKKzY1NTAgZWRhMjliZWY4ODBjOWE1ZGVjMjdkMWEyNTY3ZjUxYTY1NmNlN2U0NSBsZWdhY3ktdHJ1bmsKKzY1NTEgMTBjMDg0OTQyY2YxMmRkMGZlZWYzYmEyYjIyOTUxMWEwYjBjNzYwYyBsZWdhY3ktdHJ1bmsKKzY1NTIgMTg0NTFkY2E5NDY5YTA0ZTJiMzA4N2Q1ZTc0NTgxMjIyNjkzZjllNiBsZWdhY3ktdHJ1bmsKKzY1NTMgYTZlNjJjMjFiMGUzYjAxY2VkZjNkN2UyYmRmNWFhMzcxMjIxZGU1ZSBsZWdhY3ktdHJ1bmsKKzY1NTQgNzUyYjg2YmExNmZjNmU5Mzg0OTZiNzZiODg4YWZmZjQ5ZGM1NTI1YSBsZWdhY3ktdHJ1bmsKKzY1NTUgNWY2ODY5YTM4ZDg1MWYwNjk2NTgwNTQxY2E1YThiZDhjMGJkOGEyNiBsZWdhY3ktdHJ1bmsKKzY1NTYgMzkwNjgzODE4ZjczNDE3ZGI5MTRmYTFiMDEwODYwZWQ2ZDZjMTc0ZiBsZWdhY3ktdHJ1bmsKKzY1NTcgNDY2MTdkMjljNWQwNjM5YTdkNjUzMTdhYTZkNzgzNjRjZTMxZmE5MyBsZWdhY3ktdHJ1bmsKKzY1NTggN2Y4M2UyNGQxZDg2OWI2NzQ3MTAzMWU0MDFhZjliMWM1OWVlOWU2MyBsZWdhY3ktdHJ1bmsKKzY1NTkgZTBmNjQyZWU0NWJiZGEwMWEyZjFkMTA4MWRkNjI1OTIzMGMyYTY2ZSBsZWdhY3ktdHJ1bmsKKzY1NjAgODMxYjQyMGU0MTFlNDIxZDMzN2MyYzRlNmU1NjY5OWU5YWE4NTQ0NyBsZWdhY3ktdHJ1bmsKKzY1NjEgNzQwZGVmNjk3ZDhiOGUzYmNkYTRkZTZjOWNmMmE3OTY1Yzg3NDhmZSBsZWdhY3ktdHJ1bmsKKzY1NjIgZjgxZDc4NTQ3ZjI4OTI5MWFmYjIzNTNjM2Y1YzdjNGI1NDc5NmIwOSBsZWdhY3ktdHJ1bmsKKzY1NjMgOWY3MGQ5OTVkMDI3OTI5OWNkOTJmMzZlODM3Yzg4NGJkY2ExMGI3YSBsZWdhY3ktdHJ1bmsKKzY1NjQgMGI0MGM4ZDViMjFkMjI1OTU1OTcwY2NkYWMzNWVhYzlhMWQ2MGRhMyBsZWdhY3ktdHJ1bmsKKzY1NjUgZGM5NDZjYWI3YjliYmJhZjM5ZmFlNjkwOWQ3MzNmZDY3ZTVmMjUyNyBsZWdhY3ktdHJ1bmsKKzY1NjYgODU5MmZhNGExMTliMDhhODhhMWNhNDc2MjNiMzhkMGIxNTM3YWM1YyBsZWdhY3ktdHJ1bmsKKzY1NjcgZjI5ZmU3MWYxMWU2NGYxMzgxZWZiN2Y4NmUyODE5MGM4NzExZGMyYSBsZWdhY3ktdHJ1bmsKKzY1NjggODQzODE4NGU0NDhlMDM3ODI5YmE3MDc1MGY5NDMyNDA5ZTdjMTMwOCBsZWdhY3ktdHJ1bmsKKzY1NjkgMGE1OWM5OGRjMDA1MzVmYTczYjk1ZmU1M2YyOWIwYmMxMGY0YTQ1ZSBsZWdhY3ktdHJ1bmsKKzY1NzAgODQ2NWQ4ZmJjN2FjMTdiZTk3ZGM4MTNjY2VlYTBhMDlhYmRkMWI0ZSBsZWdhY3ktdHJ1bmsKKzY1NzEgZTUzODYzOGVkYzcxMzM3MjI1M2U3OGI1YTUyMjc0NTA5YjE5Mjg3NyBsZWdhY3ktdHJ1bmsKKzY1NzIgNmY2YmE3YzAwODIzZWFkOGQ1ZTVhYTlhZDY2ZjgxMmZiOTlkZTU5NiBsZWdhY3ktdHJ1bmsKKzY1NzMgM2EzYjM2NzE2Njg5YzVmODcxM2Q4MGNiMzdkYWEyZGJkYzA5MTUyOCBsZWdhY3ktdHJ1bmsKKzY1NzQgNTMzNmMwM2ExMzFmYjViZjAyYTg0MzYwYzU0ZDA0OTdiNmVmMzkyNyBsZWdhY3ktdHJ1bmsKKzY1NzUgMmZjZWE1ZGQxZDE4YTI1YWQ2MWU0NTI2ZDY4NzQxZDM0NjJhOGNiYyBsZWdhY3ktdHJ1bmsKKzY1NzYgOTU2OTY2NGFjMzQ3NTNmOWQ1ZDFhNGMzN2Q2MzE4ZTQwOTdiM2VlYiBsZWdhY3ktdHJ1bmsKKzY1NzcgYTVhODI2NjY5NzdiNWUyOWM3ODhkMjNkOTIwZGM3YWQ3ZTM2OTcyOCBsZWdhY3ktdHJ1bmsKKzY1NzggODY5YTk0ODA4NWMxMGZjZTgzOWRhNmQ1ZTc0YjE4NDY3M2Y3MjVlNSBsZWdhY3ktdHJ1bmsKKzY1NzkgOWMxZjliMDljNDQyNzU3NjJiODM0ODQyYWVjN2JmNTA4NGU4ZDQzNCBsZWdhY3ktdHJ1bmsKKzY1ODAgZjM5NTE2M2NhOWQyNTVjYTRmNmMwOGNjMWE3NTFjMmVhNWU0ZWQ2ZCBsZWdhY3ktdHJ1bmsKKzY1ODEgM2FjMDMwY2MzM2YwNjg4N2JiODdhMTFjMDk2MmRlM2FjNTEyZTExMyBsZWdhY3ktdHJ1bmsKKzY1ODIgNmQ5ZDVlN2U1ODhjNDlmY2QyZGJkYTE4YjNkZTE2YTUyN2M1ZjM2MSBsZWdhY3ktdHJ1bmsKKzY1ODMgOGM3YjdlOTRmNGRkMzllYmJkZDA5NTMzZjdkMzE4NWIxN2YwNTcyNSBsZWdhY3ktdHJ1bmsKKzY1ODQgMDdhMzVmZDJlMGExM2VlOTQ1NzBhYmI4OTlkODY3ZTczZWQ1OWM4NSBsZWdhY3ktdHJ1bmsKKzY1ODUgOTAyMTZlOTA3MzQ1ZWIyMGIzNTlkZGQ4NDllMzg4ZjhlOGNjMzczZSBsZWdhY3ktdHJ1bmsKKzY1ODYgNTcyNmJlOGVlNTlmMzBiYjMwODIxNzU0ODlhM2ViZmI1Mzg5MWM4MCBsZWdhY3ktdHJ1bmsKKzY1ODcgYjNhZjMyNWQ3MTJkZTNlOTdhZTA4OTQxMWIwMWE2ZjNhOTBhNjU5NyBsZWdhY3ktdHJ1bmsKKzY1ODggNWQ1MjM5NWY0MGIwYzlhMmI1ZjViOTNkYzMyMDNiODM2MWU2MzA0ZSBsZWdhY3ktdHJ1bmsKKzY1ODkgMjM1ODljMDE2Y2I5YjhjNTE0NDA2ZTRjZWZmMjczMTA4ZDg4MWM4MSBsZWdhY3ktdHJ1bmsKKzY1OTAgMzE5MDM5OGFlNTMzYzI2YTEyMjZmY2JiNzE0YmFlMzIyZGZkZmM0YiBsZWdhY3ktdHJ1bmsKKzY1OTEgM2QxMTc1ODcwMDVhMWRlMTdhYjE5MTk3MTY1ODg4MzExZTc2NDMyOCBsZWdhY3ktdHJ1bmsKKzY1OTIgYTg2NDA3YjNjM2FjNTM5N2RlMDZlYTA3MGQ5ZGJhZWJhMmYwZGQ2ZiBsZWdhY3ktdHJ1bmsKKzY1OTMgNGY4NGNlZTY1YjhjOWU0ZTJiMDVhNGYwNTA1ODIzMThkNDcwY2Q2YSBsZWdhY3ktdHJ1bmsKKzY1OTQgNjUwMDMxZTFlNDE5MGJmNmZkYWY0NzI0ZDQ3MTdjMzJiNmI1NTAxNSBsZWdhY3ktdHJ1bmsKKzY1OTUgMDgzYTdjZDgzNTQ1NTI2ZjQ3NzgyNGJlNDk2Njk0ZDQzM2YxNGU2YSBsZWdhY3ktdHJ1bmsKKzY1OTYgZDMwZjVmMGZkMGUyZDI5ZDVlYTIxNDRhMTJkZDUxNWExNTY0ZWY5NyBsZWdhY3ktdHJ1bmsKKzY1OTcgNzFiNDNkNGI3Y2QwZDM2NzllYTZhZWVlYzRmOGMzZWNjOGYzNzVhZCBsZWdhY3ktdHJ1bmsKKzY1OTggOWU2NTA0NDk0YWM3MzkxOThlODNjOWUyZGNhYTc1MTVhZDcyMTEzNCBsZWdhY3ktdHJ1bmsKKzY1OTkgMGI3M2MzMWJhYjkwOTdlYzJiM2UwZjBkZmYyYTBjNTliMjMzZjczOCBsZWdhY3ktdHJ1bmsKKzY2MDAgYzgwYzUxNTk5OWI5ODMwZGRmNGQyODUxOGVlYTU5MWIyZDIwOTdiZiBsZWdhY3ktdHJ1bmsKKzY2MDEgYTdhOWQ4MzUwNWM0N2RmYzBiMTBkODc3N2YyMDM5NTVkZWMyMjZkNiBsZWdhY3ktdHJ1bmsKKzY2MDIgNWFkZTQwOTZmYjZiODllMzI5MTZlNWY4N2RkZTY4NTZmMWY2NjQzMCBsZWdhY3ktdHJ1bmsKKzY2MDMgZWVkYWE1OTM0MWI5NWQzMTNiMjI2M2M4ZWI5YTc5ZjMxNDhmYWRlZSBsZWdhY3ktdHJ1bmsKKzY2MDQgN2I4NGRhZTk3ZWU4YTk4ODhiYjM0ZWM4ZjZjNWUyOTQzZDVhMGFiMSBsZWdhY3ktdHJ1bmsKKzY2MDUgNmI1ODkzMzRlMGU5ZTZhODM5OWRmMjM0Mjk2ZWYyN2I5ZTgzZTUxYSBsZWdhY3ktdHJ1bmsKKzY2MDYgYzE4ZDUyZTA2MjM4NzAzYzUyNDYyYmYzMGM4NjQyODAxNGY3OWY1MCBsZWdhY3ktdHJ1bmsKKzY2MDcgYTJiYzk0MTU2NGExOWZiYTZiM2MxNDViMmNiYzA0ZTVlNTc2NmQ3YiBsZWdhY3ktdHJ1bmsKKzY2MDggNjllZGM2N2U1YTY4ZjIwZWFkMWQ5ZDk0YmQyOTA2YTVkNmFlOWEyMiBsZWdhY3ktdHJ1bmsKKzY2MDkgMTg5OWI5MTU1M2QxZWYzMjc3NzBlNjBmZmFlYTZkZWMzMzUwNzBkNSBsZWdhY3ktdHJ1bmsKKzY2MTAgMjYyZmQ1ODJlNDRiMzRlODM1M2IwMTQ5MWVmMjVhYmU3ZjMxYjEzMCBsZWdhY3ktdHJ1bmsKKzY2MTEgOGI3NWQ1ZWEyMDdiZDc5ZTNiYzYwYzk1ZDY1ODc3YmE5ZTZhNWIzYSBsZWdhY3ktdHJ1bmsKKzY2MTIgN2QzZDJlZTU0YTJjYjI1YmM0ZThiMDI4NjllZTRiMTlhNmE5YTkyMSBsZWdhY3ktdHJ1bmsKKzY2MTMgMDEwMzQ0YjRhNjE2MjUzZWFkMGRkZjIxYzU1MDNhOWQzYmEyZTQ4MyBsZWdhY3ktdHJ1bmsKKzY2MTQgNWJhYTAwM2JmMzllMGI0ZTI3NjY3OTM5OGQ1NWQyYjU3MThlMGYyMCBsZWdhY3ktdHJ1bmsKKzY2MTUgNmZiMTMxNTAxYmI0NmQ2MzgwZjEyNmI0ZjAzNzViZDUwM2RiMTIxMyBsZWdhY3ktdHJ1bmsKKzY2MTYgNDQ4NzJmMjU1ZjkzNDc0N2I0NDFjZWU4YzM4NjUxYWNmMDAzNzk5YyBsZWdhY3ktdHJ1bmsKKzY2MTcgMzNiZjM4MmMyYjFkOWI1YjQwYzE0OWQzZDQ4YWEyMWZiMWQzZGVkNSBsZWdhY3ktdHJ1bmsKKzY2MTggZWZlYmYxYzRlZGEyOTY1NDA0ODBmNjg3ZmVmOWFjNjkyMDFiOTIxMSBsZWdhY3ktdHJ1bmsKKzY2MTkgOTUxZWQ5YTgzZjU3YTUwZGRhNWY2MTZmMjViYTBlMGQ1MmZkOGU0OCBsZWdhY3ktdHJ1bmsKKzY2MjAgYzRkNjZjNDEwYzgzY2QwMmFlN2NiMjNkOWYxODg0MjhlMWUyYTljNSBsZWdhY3ktdHJ1bmsKKzY2MjEgMzBmMWMwMWYzODY1MGI2OGNjNWVjYzcyM2VmMmY5NDAyMzhkYzRiMSBsZWdhY3ktdHJ1bmsKKzY2MjIgYWI0MzcxNWVmNGVlMjRmOTZlMDk1M2Y0YTI2NDNiY2JhMjZjYTE5YyBsZWdhY3ktdHJ1bmsKKzY2MjMgNDI5OGZmMjIyZDc2M2RiN2Y0OTNhMDNiYjRiODIxZjQ3ZDQyMzMxYyBsZWdhY3ktdHJ1bmsKKzY2MjQgOGEwZDQzYjEzMTI1MWQyZjZiNWI2ZmRlYzE4YTFiOGM3ZjU0YmM3MCBsZWdhY3ktdHJ1bmsKKzY2MjUgNjlhMzNmYTNkYmI4ODExNTA1Y2QwMzEzMmRkYWQ3N2E1ODQ0NDc4MSBsZWdhY3ktdHJ1bmsKKzY2MjYgOTg4MWE1MjE0ZmQyYzUwMTk5MjAyMDMyMjM4Y2M2YmE3OTcwZmNkOCBsZWdhY3ktdHJ1bmsKKzY2MjcgY2MwNmU3MDEyN2ZjMGJjOGM0ZTdkNjVmNGE4NTJlZjc0NTRkNzkyOSBsZWdhY3ktdHJ1bmsKKzY2MjggMDI2MjFiODc3ZWU1ZGYwMTFjZTViODNjOGNlMDcyYjk0NWNhOTA2YiBsZWdhY3ktdHJ1bmsKKzY2MjkgODZhNjJjYTNhMzdiN2FiZjU1OTQxNGViMGRhOGQ1NDYyMWQ3YTg4NSBsZWdhY3ktdHJ1bmsKKzY2MzAgMTQwNTA4YzljNjAzMTgyNWVmODcyMDAwNzA2MjZmYmJlMzY5OGRmYyBsZWdhY3ktdHJ1bmsKKzY2MzAgNDRhODJhYzY1NGE0MTc1NTY5ZGVlZDhlOGE5NGIwY2M4ZWRlZTA4ZCBsZWdhY3ktdHJ1bmsKKzY2MzIgZjNhMGQ1MDI0NmQyNzEzZmQ5YmRiZTYyNTA0ZDA1NDZhYzgyMWFmZSBsZWdhY3ktdHJ1bmsKKzY2MzMgZGY2Mzk4NWMxY2E5NjBmMGUzMGYzY2Q5ZGE1MDI0ZWIzN2JhZTJiYiBsZWdhY3ktdHJ1bmsKKzY2MzQgODExYTdmZjc4M2I3NzI5NmFlMGIzOGRhM2IyMjAwZWUxNDM4MDA4MSBsZWdhY3ktdHJ1bmsKKzY2MzUgYTgxYzNkZTNhYWQ5NWM5NTdkODg5NGNkY2Y5ZTY4YjlmZDQ0YjIwNSBsZWdhY3ktdHJ1bmsKKzY2MzYgOTkyNTAxODJjNDhhZmZkNTc4YTVjZjM2YWJlOGFhMjA3MzM5N2ZiYiBsZWdhY3ktdHJ1bmsKKzY2MzcgNTgyZDQ5MzdkNDk5NzFlNWM4ZDA4NGFmZmM4NDgyMTk3Y2M5YzZhZCBsZWdhY3ktdHJ1bmsKKzY2MzggMWMwNzllMjNmZDNiODk5NDBmZDk1ZWFiMDI5ZmI2N2Q5MTdkYTdhYiBsZWdhY3ktdHJ1bmsKKzY2MzkgYjNmZGU1Mjk0NDBmZDY0ZGU3ZGYyYmY2NGM3NDQzMjE4ZDFmNDMwNyBsZWdhY3ktdHJ1bmsKKzY2NDAgYTcxYTQzZDI0N2IwOWMyMDdjMDJiMzc1MmYyOWM1N2VlNDc0OGU0MSBsZWdhY3ktdHJ1bmsKKzY2NDEgYTk0MDBlZWUwNDBiMThlYjEwNzRiYjQ4OWQ0ZDljZDI4ZmFkNWI2OSBsZWdhY3ktdHJ1bmsKKzY2NDIgNzRiOGFhN2YxMTE0ZmJmM2YyZTI0ZDQ3OWZlMWU2ZWQyOTBhN2RjMyBsZWdhY3ktdHJ1bmsKKzY2NDMgNjg3ODk5YzU2M2UzZGUzODdjNDNkMWYyZTRiNDEyZDFlNTkzOGEzNSBsZWdhY3ktdHJ1bmsKKzY2NDQgM2RjMmU2NzVmMTc4MTcwNzg0YmY5NDNkMDc3MWU5ZjM0ZWViMDUwNyBsZWdhY3ktdHJ1bmsKKzY2NDUgMTg1NWU3Yzc5MWUyM2RjZDIyMzU3MzIwMWVmNTc4OGQ1NGYwZjgzNiBsZWdhY3ktdHJ1bmsKKzY2NDYgODg5OTc4MDJmYjliYjBhMTg5Y2Q0MjVmOGYzMWNlOWQ0MDZjYzMyZiBsZWdhY3ktdHJ1bmsKKzY2NDcgMjM2YWRlYTk3NjBiMDBmMjc0YzgwZGQ4ZWNiM2Q2NWMzZjgwNzkwNyBsZWdhY3ktdHJ1bmsKKzY2NDggZDI0MWJmZGE3Yjc0NmFmNDJlM2Q4ZDFiYTk1NTY3MTU5ZmI2YjBjOCBsZWdhY3ktdHJ1bmsKKzY2NDkgYmI1YjlmZjcyZGUxOTUxOGM2MDBmZTY0NjQwMTVjN2YwNTYwZThjYiBsZWdhY3ktdHJ1bmsKKzY2NTAgMzdkMDA5YjFiZjQ1ZGE5NjdjOTk5NmM5ZTJlM2U0OGY4YWVlMjA2NyBsZWdhY3ktdHJ1bmsKKzY2NTEgMzE1YTUwY2IxNWUzOGQ4OTc4YTE2ZTdiNzVhYjI0MWJhZWMwNzBhNyBsZWdhY3ktdHJ1bmsKKzY2NTIgMjgxNzRhYTM4Yzc2Mjc3YTAwOGQ1NGIzNTZhNTgzYmVmNGViYThkNyBsZWdhY3ktdHJ1bmsKKzY2NTMgMzNmNGE5MWY4NzFiZGJiOWQ2MzU0OGM2OTM2NzFiODc0NDhmNmRjZiBsZWdhY3ktdHJ1bmsKKzY2NTQgN2VkZTAxMmEzNWM1ZWYzNDZiZjc1NTljMGMxY2I3NGM1ODE0M2MyYyBsZWdhY3ktdHJ1bmsKKzY2NTUgM2Q1M2NmYWI4ODIxODhjMzg5ZDg0YjlkNmFmOWNkMDQ5OGMwOGM1NCBsZWdhY3ktdHJ1bmsKKzY2NTYgYTM5MjY0ODRhNjU4M2MzMDdjM2Q1NDk1ODY4Zjk2YTRlNTFhZmRlYiBsZWdhY3ktdHJ1bmsKKzY2NTcgYzM2MzY0NWI3ZWRkMjdiNDliZDE2MzExMmU3MWRhODczODFiMWU1OCBsZWdhY3ktdHJ1bmsKKzY2NTggMmNjYjk5YzkyODU0NDZiYmFiY2NmZTk0NjMwZmUyNjA3MjViMzdiOCBsZWdhY3ktdHJ1bmsKKzY2NTkgYTIzZjRmNDY3MjdiOWJmYTU0NmRiNzA5YTAwZTM1YzEyNWMyZGNkMSBsZWdhY3ktdHJ1bmsKKzY2NjAgNWUxMmU5YjI4ZWFmZjExMjFkYWM4MDE3NDBjN2Q0ZDkzOGNmYmVmNiBsZWdhY3ktdHJ1bmsKKzY2NjEgOGJiZWNmNjgzYTUwNDBmNmFkZDNkMzg5MjM2NTUzZWUwZGEzZDU3MSBsZWdhY3ktdHJ1bmsKKzY2NjIgYzc5NmFlMTE1NzgzMmQyY2NiNWNmMjQ4YmQyYmI3YzFlM2VlZDIxOSBsZWdhY3ktdHJ1bmsKKzY2NjMgMDNmMmMyMWFlY2FmMjZhMDM3OWJkM2ZlZTQxZTE2MjExNGE0ZGNjMCBsZWdhY3ktdHJ1bmsKKzY2NjQgOTRkYTU4MjE0ZDZjNzVmZDgwOTgzNDAxYzk2MzNkZDljODllN2UzZiBsZWdhY3ktdHJ1bmsKKzY2NjUgZTYxMzE4YzNhZDFlODdlMTY0MjI5NDA2ZjA4ZDJjMTE3NjJlODNjMSBsZWdhY3ktdHJ1bmsKKzY2NjYgZDIzZjc4NzMwZTAwZDEzZGZmMWNhZjcwYjFiN2QxNjUzNTg1YzNjMyBsZWdhY3ktdHJ1bmsKKzY2NjcgZjAyNWQ4YTM3N2I1NzAwMThkODE5ZGU0NzE1MzY1ZGVhNTY3NjcyNiBsZWdhY3ktdHJ1bmsKKzY2NjggZGZiZDZlMDBkZDM4M2QyZjNiMGVjNWY4NGQyZWQ2YzdkOTdiNTBlNiBsZWdhY3ktdHJ1bmsKKzY2NjkgZTNmNmFkYTI4ZWQwOTVlN2QwMGQ5Y2JkYzUxMDI1ODJjOGU1YzYyOCBsZWdhY3ktdHJ1bmsKKzY2NzAgNjcyMDZiYmQ1YmI1NDhiZDYwZGI2OWEyYjQ5NGExYTkzNzM1MWQ1NyBsZWdhY3ktdHJ1bmsKKzY2NzEgYjcwYmFiYTFjNzg5MzJjMjc5NjkzNDg4OTQ2YTg4N2NmODMxZGUzNiBsZWdhY3ktdHJ1bmsKKzY2NzIgMzgzODNiNjNmNDE1OGY5NDRlNzY4YTMyZGI4ZTFkZDUxMDkwNGE3MiBsZWdhY3ktdHJ1bmsKKzY2NzMgNmZiNmUwMWUyYmExNDQzNmRlMGQ4NmQxYThhNWMzY2Q4MGYxZGI4ZSBsZWdhY3ktdHJ1bmsKKzY2NzQgMjJhYWM4MWM3NTYwYzFhODk2MDMzM2YxYjExNDgwOTJmZjBlNDk1MCBsZWdhY3ktdHJ1bmsKKzY2NzUgYzYyNTljZjJjNTgxNDNkYjYxMDIzMDVkNTIxN2RlNGFjZDc1MWVmNiBsZWdhY3ktdHJ1bmsKKzY2NzYgMzUwZDBkZTA3NzM5YzM3NDcxZmU5MjlmOTY5ODkzOTFkYWI4MGI1MCBsZWdhY3ktdHJ1bmsKKzY2NzcgZDFiNDc0M2E5YTYwNTNlOThiNDA1NzA5YmNhZjk4NjQ1ZTQ4ZjcwNiBsZWdhY3ktdHJ1bmsKKzY2NzggMzEyNmY4YTE0NmE2NmY0YTc2Y2IwNGQzODhkZTVmNzliMGJiYWFjYyBsZWdhY3ktdHJ1bmsKKzY2NzkgYzc5OTQwMDgzNzhkOWRlNWEwYmYwNGEzNzZkMzQ5ZGVhM2VlMWE1MiBsZWdhY3ktdHJ1bmsKKzY2ODAgNDJlYzIzYzUwMDE4NmQ1YWJlMmRiY2MyNjFjYjU3M2Q0NTU4YjIyZSBsZWdhY3ktdHJ1bmsKKzY2ODEgNjNhZjI1NzRmNzFmNmM0MTcyYjY3YmQ1ODliYWNiODljZjQ2YWJmMSBsZWdhY3ktdHJ1bmsKKzY2ODIgMWMwMDY0MDA2OWY4YTU0MTQ1NmYzMWU5Y2IzZmJiODVkOTM2MjIwMSBsZWdhY3ktdHJ1bmsKKzY2ODMgM2ZkZTlkMmEzOWIwYzlhMjExY2JjYTg0YmYzODQ2NjA2NjkyYTNlMSBsZWdhY3ktdHJ1bmsKKzY2ODQgNjBmYzAxZDZmNzI3MGNjMzM2OGRiZjFhNjEyMjBmZWI1ODQ3YTg1MiBsZWdhY3ktdHJ1bmsKKzY2ODUgNGE5M2NjN2U3ZmI2ZjNlNWI3MGZmMDg4Y2QyMWZiNDgzYjFlZTliZiBsZWdhY3ktdHJ1bmsKKzY2ODYgZDcwMThiYzU1ODRlMGE5Yzg4N2JlMTA5YjBhNDI0NTU5MWM2ZDU3MiBsZWdhY3ktdHJ1bmsKKzY2ODcgZTMxYjRkZWZhZDViNDVjZGY0YzYwMDQ5M2Q3MDY3YTAyMjYxYTFlMSBsZWdhY3ktdHJ1bmsKKzY2ODggNjg4ZDU2NmNiMTViMDc5ZGE5ZDlhNjdiNmUwY2JjZTU2N2VlYzMzNSBsZWdhY3ktdHJ1bmsKKzY2ODkgMDQxMGVkMzgwOGVlYjhjMjU0MWFhOTU1NDEzMzg3ZDYwYTcxNGE5ZiBsZWdhY3ktdHJ1bmsKKzY2OTAgMGE1ZjAxZDQ3MDFjMDk5M2IyOTJjZDVhMjFjOTFiMjkxODQzZDYyMCBsZWdhY3ktdHJ1bmsKKzY2OTEgYzY2NzliMWM2Y2ZjMWI0ZjVjNDZjNTI0MWE4MzYyYjQ0OTExYjM5YiBsZWdhY3ktdHJ1bmsKKzY2OTIgOWUwZTg0MTdhOThhZWFkYWI5YzJmZWI4Njg2ZTQyZTNlYzVjY2Y3NyBsZWdhY3ktdHJ1bmsKKzY2OTMgOWJjZmIwMzRiOTYzZDJjN2NiNTIxMzc0MWY5NDlmZjNlNGE0NDUyOSBsZWdhY3ktdHJ1bmsKKzY2OTQgNDhiMmQ3YTQ1MzFkZjhiODI3ODBmMzBjNzg1NmRiMjYzYmVmMTM5OSBsZWdhY3ktdHJ1bmsKKzY2OTUgNjY5MTNjYTdlYzQ3MGFlYzk1MzNmZjJkMTY5YmQ4YjhmNjVhNDIyOCBsZWdhY3ktdHJ1bmsKKzY2OTYgMWQxZjBjNjQ3ZTc3YjEyMGY0ZmY4Y2IyMTI0ZWM5OTQxNGI2ZTU3MiBsZWdhY3ktdHJ1bmsKKzY2OTcgMTgwYzFkM2RhYzQxMTExZjczMzljOWYwZTIxMTE4OTNjZjBiZjVkNyBsZWdhY3ktdHJ1bmsKKzY2OTggM2ZlZWNhZDI5NmY0MGY0ZWQ4ZDkwMDQ0ZTg2ZTQwYTlhMTNhNWNiZSBsZWdhY3ktdHJ1bmsKKzY2OTkgYjNhZTBjZjJhMDZkNzEzMjRmYTg5OTgyNzg3NDBhMThlYmRkZWMwYyBsZWdhY3ktdHJ1bmsKKzY3MDAgNGZhY2FlMDBiZGQ2MTI0MDY0MmVlMGVkZmJmMWE4ZThhODZjMjNkYyBsZWdhY3ktdHJ1bmsKKzY3MDEgNTczZWQ1ZTM4NzliNjk5OTk4YWVkODgxMTQyZjRjMzQ0ODNiOGZiOSBsZWdhY3ktdHJ1bmsKKzY3MDIgODQ0NDRlYTNmNWY2OWQ2MGY2ZDg0N2FhYTk2NGNmYzYyYjI0Y2NiNyBsZWdhY3ktdHJ1bmsKKzY3MDMgMWY2OTJjM2YxZDMyZDQzOWYyOTJkMjBhYTNlZmVkNjY1Y2YxYTMxMCBsZWdhY3ktdHJ1bmsKKzY3MDQgNDFhNTJhYjI2M2RhYTI1MDdmZTMzMTUxOTIyY2U5NTAwMTA4ZjViZSBsZWdhY3ktdHJ1bmsKKzY3MDUgNWMzODdhYTAzNzA4NzMzN2ZiMjI5YTdlNTRhYjVjNDViOTUyYmRlNSBsZWdhY3ktdHJ1bmsKKzY3MDYgODg2YzBmNzc1Yzk3NmUyY2NkYjlmZjQ2ZDc0YjY2YTU5MDU2Y2Y5MSBsZWdhY3ktdHJ1bmsKKzY3MDcgMTA5OTE1OWVjODIxOWUwZjk2ZDU2OGQyMDJkMTE2OGQyMWJkNThkMCBsZWdhY3ktdHJ1bmsKKzY3MDggN2JmNzFhODM5NjYxYmMyNjAwNmFjODMwMzhlZDExZDM2MjBkMGVlOSBsZWdhY3ktdHJ1bmsKKzY3MDkgOGYyOTFkYzhmYTliNDY5ZTYwZjI1NjE3OTIwYmUzNDI0NmYxZTY4YiBsZWdhY3ktdHJ1bmsKKzY3MTAgNzgwZmMyYjE2NzRkNzcyYjg4OTgxNWY2Y2I3MmQzZGJjYjRmNjM4YyBsZWdhY3ktdHJ1bmsKKzY3MTEgY2I0OTAwZmFiNzY0MjhhZjhhZTU1ZTMxOTllOTQ2OTUyNWRlYzFjNCBsZWdhY3ktdHJ1bmsKKzY3MTIgNmM4NmQ5MTM2YzA5MGQ0ZmQzNDUzZmU5MjI2MGEzZTEyZmU3MGYyNyBsZWdhY3ktdHJ1bmsKKzY3MTMgNjcwMDU1OGEzMmZiMTMzYzkzOTFkNDA3OWVhZjE5Yjc0NzZlNDdkNCBsZWdhY3ktdHJ1bmsKKzY3MTQgMjFlNWI5NGI5OWI4MGJkZjhlNmNjZWNiMjI5OTdmYTNjYzkxM2MyNSBsZWdhY3ktdHJ1bmsKKzY3MTUgYzYyZDMyYzVmZjNkZWNlZTNmZWFhNTRjNjI0ODBlNzk1MTAwOTRlMyBsZWdhY3ktdHJ1bmsKKzY3MTYgMzU0NWFiNDNhNzJhMjE5ZjBmYmNlMzI1ZTJkZjE4Nzc2N2EzZTJhOCBsZWdhY3ktdHJ1bmsKKzY3MTcgMWNlMDBjZGMwMDNkMjU1ZThiMDhiNTk4YmM3MDkyYjUyM2NkMDc5MCBsZWdhY3ktdHJ1bmsKKzY3MTggMGZhZTM1M2IwNGNhMmQxYTUzNDE2NzhhNmVkYjE5YmUyZTI5MDdjNiBsZWdhY3ktdHJ1bmsKKzY3MTkgNDNlMmU1OTJhMDAxOTg1MTIwZGE1MDg5ZWRlMTRhMDZmZmYyMDhjMyBsZWdhY3ktdHJ1bmsKKzY3MjAgYzZlZjhiN2IyNmViYzEyMDUyM2Y4ODEwNWNlMjkzMzVhZGYyMjU2YiBsZWdhY3ktdHJ1bmsKKzY3MjEgZGEzOGNkNjE2NDEyN2NjZGJhNzk2MDk0NDYxYTk1NGU5NmI0MDliMiBsZWdhY3ktdHJ1bmsKKzY3MjIgNWY2NzJhNTEyZGM0MWZkYjgwNzkxNzYxMmExYThhZjAzOTk3OGUyYSBsZWdhY3ktdHJ1bmsKKzY3MjMgMGNmNjcxNDUyZmM1NDNkNDI2ZDUzZDZjODNjNDM3ZDNiNDk5MjhmZSBsZWdhY3ktdHJ1bmsKKzY3MjQgNDQ3MGY3ZmYwYzIzOWM4OTRjYjliNTE4ODEyOTgyZjQ3YmQwZmQ4NiBsZWdhY3ktdHJ1bmsKKzY3MjUgYWMzZmJiNjc3MWY1YzJkYjM5YmI2M2EyYjZhMjAyOTYxZDdhMWE3MiBsZWdhY3ktdHJ1bmsKKzY3MjYgNmI2YzVkMTIxMzBjZDk5MGVkYTgwNjU2MGRmNmQ0YjQ4OTViYTYzNSBsZWdhY3ktdHJ1bmsKKzY3MjcgMDJhMDMyMWY5NDY4YmVhYzdhZGRlYTk2NmM1YjBmZWUwMjhjZmMyYSBsZWdhY3ktdHJ1bmsKKzY3MjggMDVhZTU3MmMxYWM1NjZjM2U4MzUwOTYzMWU0Y2IwN2NlZDA5OWYzNSBsZWdhY3ktdHJ1bmsKKzY3MjkgNjQ3MDRkMzZiMTk4MWU4MjNmY2YwZmE1ZTg4NTcyZmIwNjAzNDA5OSBsZWdhY3ktdHJ1bmsKKzY3MzAgZTIyNWU3MGZkNjU3MWZhNjQ3ZDQzYjBiYzQyM2NkYWNmZThkZTgwNiBsZWdhY3ktdHJ1bmsKKzY3MzEgMjM5YjEwMDgxMTc2M2QzNDE5OGQxMDE5NWRkOWIxMzRhZjBhZmViZCBsZWdhY3ktdHJ1bmsKKzY3MzIgYjdlN2ViNWVmODIwYWE4Nzc5N2ExNDg5MDVhZDVjMGU5MWZhMzMxZCBsZWdhY3ktdHJ1bmsKKzY3MzMgZGJiNzYwOTVhZGVlMDk1OTkwMzM3YmVlNmJkOGRjYmJhYTc3YTkzNCBsZWdhY3ktdHJ1bmsKKzY3MzQgNTE2ZGRmNTAxOTRkMzY4MDZlZTlmYzllZGZiYjVmZmFmMTVkNWQzNSBsZWdhY3ktdHJ1bmsKKzY3MzUgNTQ0MjE3ZDU0OGE1ZjFkNTk0OTZlZGQwMjk0ZjU1MzUyNzMwZjFhYyBsZWdhY3ktdHJ1bmsKKzY3MzYgNjdkMjU4ZWRkM2Q5OWJjYjZmYTEzZWM4ODZiNGVlN2MyMzg2ZTk3MCBsZWdhY3ktdHJ1bmsKKzY3MzcgN2I1NGEzY2VkYmUwYzY0NGM3MDVjYWNiNjY2ZjZmODA4ZWI3YmE3NCBsZWdhY3ktdHJ1bmsKKzY3MzggMjUzMDFiOWVhMGNjZGU5ZDZmMjdhMjdiZDdjOTAyYjRlY2Q4NTRjNCBsZWdhY3ktdHJ1bmsKKzY3MzkgODg5MmRhOTU1NGE1YmQxMWZlOGJjN2Q2MDRlNGZiMjY3ZjdjODQ3YyBsZWdhY3ktdHJ1bmsKKzY3NDAgZjBlODIxMjliZDNlYTM2MTdhMmYxZjVhNzYxNmM5MmU0NzRkODNhOCBsZWdhY3ktdHJ1bmsKKzY3NDEgNjA4MjUwMWVjYjJlNTg2YzIwMDUwYmIzOTNjNGU2NWIwZjE1ODFlMyBsZWdhY3ktdHJ1bmsKKzY3NDIgMmU4N2I4MTE3NmY5ZDMyNWE1NjkzODMzMDRlMzQ3MWU1NGVkOTkyNCBsZWdhY3ktdHJ1bmsKKzY3NDMgMzhjOGExY2NjMTZjNjBlMDM3YWU4ZDBlYWI3YzVkZTRmYTc0NTlkNyBsZWdhY3ktdHJ1bmsKKzY3NDQgZWY1MWU0YTJlNzk5NDQ5ZjNmNWQ5Y2RmYmZhMzc0NjU5ZDVhOWQ0OCBsZWdhY3ktdHJ1bmsKKzY3NDUgNjUxMjBlOTFiMDYxZWE3ZGYxYTZmNjgxYzM2N2E0ODRlMGZkZjhhNCBsZWdhY3ktdHJ1bmsKKzY3NDYgZTc4OTAzMzZmMTA3MDRmMzM0MGI4OGE2MDlkNTBjZWJjMWIxOGM2YSBsZWdhY3ktdHJ1bmsKKzY3NDcgYzQ4NzY0YmY2MmQxZWQwNmE3M2MxMGYzMGRkNjQxNDJmZjcxOGJmZCBsZWdhY3ktdHJ1bmsKKzY3NDggMzc5OWI3MTE2MzFiMjVlYzY0NmVlODc3ODNjMGIzNWRhNGM2MjU1ZiBsZWdhY3ktdHJ1bmsKKzY3NDkgY2I4NDFmMWIwMjJlYTIyNGNjN2M2ZjVjY2Q5NjY2MDdhZmI2NTVmMSBsZWdhY3ktdHJ1bmsKKzY3NTAgYWUxNzhmMTUwNDAzMDBjNjkwYTU2ZDIzOTNhNzdhNjY1MGFmODU0NSBsZWdhY3ktdHJ1bmsKKzY3NTEgYmVmZGYwZGMwOTZiMDhlZWM1MmYzZThiZjYwYmJiYWY0ZGFjNTJhYSBsZWdhY3ktdHJ1bmsKKzY3NTIgZjZlODI0YjI3MDMyMzVkOGMzNTliMzIxNjAwOTJmZDIzZDc4YjFmNCBsZWdhY3ktdHJ1bmsKKzY3NTMgOTRiNzYxZmFjNGQ3YmIzYzhhY2MzYzliZTllMTBlZTFjYjgwZmM4MCBsZWdhY3ktdHJ1bmsKKzY3NTQgNTY5MDk3ODFhNzQxYjEwNTA1MjZiNTIyNmUyZjY0ZDlkZGVlNDkzZSBsZWdhY3ktdHJ1bmsKKzY3NTUgNGJkYWZhNzAzYTA0YjVjN2I2YmU2NDlkN2U1ZmZlNWVkNGFlMDU1MSBsZWdhY3ktdHJ1bmsKKzY3NTYgZGFmMTJmNjRkNWFhM2Q1MTg1MjAwNGUzYjQ1OTAxYWRlYWE3NDc5NCBsZWdhY3ktdHJ1bmsKKzY3NTcgODM5ZjcyNjEwYWUxZjhiZTFiYTJlMzE3MjNiMzY3ZTg3N2QzZmIzZiBsZWdhY3ktdHJ1bmsKKzY3NTggZTIxZDNlN2FlYTg3MTk2YzQzMTk2NWZmMzNjMTIwMjhlNzIzODY1NSBsZWdhY3ktdHJ1bmsKKzY3NTkgYjY5ZjRiODM4OTJlNjg4NWI2MDg5ZGNhMGNlNzYwY2NmNGI1MTY4NiBsZWdhY3ktdHJ1bmsKKzY3NjAgZGIzNWQyYjkzZWJhMGY5OTY5ZjBiMzJhODVmMTJhZDE4Mzc3YmViNCBsZWdhY3ktdHJ1bmsKKzY3NjEgZjJmNWNkN2NiNWI1NmIzYTZlYmEzM2EyM2Q1MDhkZTE0NTgxOGY4NyBsZWdhY3ktdHJ1bmsKKzY3NjIgNDNhZTA0NWFhMTBlMTA3YzQ5YjVhZDUwY2IyYTdjOGQ2ZDlhZDk5YSBsZWdhY3ktdHJ1bmsKKzY3NjMgMDAzNmRjZjI4NDAyM2E5YmQ4NjMyMzI2ZmNjYzg0MmEwMTBjYTE4MSBsZWdhY3ktdHJ1bmsKKzY3NjQgOWM2ZWFiMGNmNTQyZGUxYjE0MDVjMTA1ZWUzYmJlYWViNzk0ZDcyOSBsZWdhY3ktdHJ1bmsKKzY3NjUgMTQyN2Q2MWYxMzA3Mjk5ZjgyNDNhNDFjMTI5YTViYzY1OWY2Y2NlNyBsZWdhY3ktdHJ1bmsKKzY3NjYgYWJkMGI5ZmY2NzU5MmQxMDQ3NzM2YTdlZWY1Y2Q5ZWJjOTJiYTZjNyBsZWdhY3ktdHJ1bmsKKzY3NjcgNjliYmMyMWY1NWNmMmUzNGU0NzM4YWE1MzI0ZDIzNjM3MDBlYzRkZiBsZWdhY3ktdHJ1bmsKKzY3NjggNTIwZGRjYjNkNWQ2OGUyN2IwNjc0MTI4YWZhODY1MWE4ODA1NDQ0NyBsZWdhY3ktdHJ1bmsKKzY3NjkgMDA4YjlmYzU2NWJmZGMyNzI4NGFhNjMzNTUzMGJlMGUyMzU3ZmM1MyBsZWdhY3ktdHJ1bmsKKzY3NzAgNzVkNzU3MzJhOWU0YmU4ZDViNWIxMmMxOTI4YWY4YTNiMWJjNTQ0YyBsZWdhY3ktdHJ1bmsKKzY3NzEgY2Y5YTk3YmZjMDIzMzllMDNlNGI0MDYwYjk4ZTZmNGQzN2U0ODllMSBsZWdhY3ktdHJ1bmsKKzY3NzIgNmY3MDkwYTgyNjQ1OWQxYjUzZGZiZmRlYTFhNzkyNzI0ODIyN2ViMCBsZWdhY3ktdHJ1bmsKKzY3NzMgZWIxZWQ3NDM5NzJjNDI2YThjZGQzZDgwM2JmNmNiYTcwYTYyODQ1NSBsZWdhY3ktdHJ1bmsKKzY3NzQgZTA1ZGE4MDQzYjUwMGI0MTUzNGRlYmM3MjVlMmZjZGJjMmI5NWZmNiBsZWdhY3ktdHJ1bmsKKzY3NzUgODY4MDYzMTYxNjY1OGU1ZWQ1ZWE0M2I3MmI5NTIyMDdhM2E5N2VjZiBsZWdhY3ktdHJ1bmsKKzY3NzYgZmM0ZjEyODlmZTZjZjZmZDk0NTZkMTQ2NzAwZmMyNGIyYmQyZTU1MCBsZWdhY3ktdHJ1bmsKKzY3NzcgMzg4ZjljMjIyMGNlNGY2MmMyYTNhN2M2YzQxNzczODE1MzkwM2Y2OCBsZWdhY3ktdHJ1bmsKKzY3NzggOTVjMzE5MzFiNzZhZjcwODM3YTNhNDE0ZjE4ZGI0MGIwMGExZmNmNSBsZWdhY3ktdHJ1bmsKKzY3NzkgNzgwOWI2YjRmZmQ5MzUzODY2NmIxM2Y3ZjQzNDllMDQ4ZGJkODhkMiBsZWdhY3ktdHJ1bmsKKzY3ODAgZTlmNDhkN2U3M2IxY2FjOWEzZTE1Y2QxY2ZmMGFjZTFiODYyZDk1NCBsZWdhY3ktdHJ1bmsKKzY3ODEgMmVlYzM1ZTJhZmZmNzNmMjllNWQ0ZWZlOTQ4YTgzZjcxNTc2YTk5YyBsZWdhY3ktdHJ1bmsKKzY3ODIgMWEwZjM0YzE4MTYzY2MwNDk1Y2JlYTEzNDE0NDc0YWY2YWZlYzUzZSBsZWdhY3ktdHJ1bmsKKzY3ODMgZWNiZWI0NDVmNjJlNTA2ZjhmNzU0ZjEzYzM2NDAzMGYyNWUzZjc4YSBsZWdhY3ktdHJ1bmsKKzY3ODQgM2Y2ZDI2MTY1NGNhMmU5ZGI5MzkxNTYyOGFjNGExNDNmYmQyYmY2YiBsZWdhY3ktdHJ1bmsKKzY3ODUgYzk3ZmZkMmViZDUzOTY0MTBkZTlhNzNmYTY3N2E5MzVhZTM2MWY2YiBsZWdhY3ktdHJ1bmsKKzY3ODYgOTM3ZjY5ZmQ0M2ZlYTVlNzhiMTYyMTJiNzk0MmE5OGNiZTcwZGEyMyBsZWdhY3ktdHJ1bmsKKzY3ODcgOTg0N2RlOTQwNzkwMjk5ZmNlY2YyZDFiOTAxYzY5OTE1OTAwNjJkZCBsZWdhY3ktdHJ1bmsKKzY3ODggM2IzODcwYjlhY2YyNDM5NzY3YWY4NTVlMjk5ZjlmOTA0YTAwY2NmOCBsZWdhY3ktdHJ1bmsKKzY3ODkgNDZkNzM2ZmI5ZGEzMjI4MmQ1MjhhYWVjYTU5YjBlNWQwZTRkMTIxMyBsZWdhY3ktdHJ1bmsKKzY3OTAgNzcyODI4YzFiMWY2ODc0MTlhNTIxN2FjZDE1NWFmMWNmMTBmZDRmZCBsZWdhY3ktdHJ1bmsKKzY3OTEgMGY1MWYxZDcwZDQ1MjZmY2FhOTllZWU2M2I2M2JjZTUwNDcyNjBjNCBsZWdhY3ktdHJ1bmsKKzY3OTIgOTdkMzY1MmU1N2QzNWMyM2ExZGYyZDUwMzRkNjMxNDM2ZmZlNzcyNyBsZWdhY3ktdHJ1bmsKKzY3OTMgOTcxMzM5OTZlMjJmMGYyYTIwNWExNWM5ZGEzOWEyMmNjNDE5NWFjYiBsZWdhY3ktdHJ1bmsKKzY3OTQgZDU4NzE5NmY5YmVmYTVlYTZlZWVlYTIxYTRjN2Y4YzdjMzAyYWExMyBsZWdhY3ktdHJ1bmsKKzY3OTUgOWQ0NDUwMzUwNDUxZjFlYmRlN2Q2YjZjMDE4Y2ZiMzM4MDVmZTFkZSBsZWdhY3ktdHJ1bmsKKzY3OTYgNzczOTdkNTFmODkyMDRkZWFhZTRkNzhhMGU1ZWQxZDRlN2U4NmI1MyBsZWdhY3ktdHJ1bmsKKzY3OTcgMzE0YzEzNDQ1YTAyZGYwMDE0Y2YxZDM4YjU5YTIxMWM5Mzk5ZWNlMCBsZWdhY3ktdHJ1bmsKKzY3OTggMWFmY2QxY2QzMzNiNTdjM2ZmMTA0N2I5ZDU3ZjE3MTBjOTZjZGY3ZiBsZWdhY3ktdHJ1bmsKKzY3OTkgMTJjMzg2NWFlYWEwMzYzNTA2OTk0ZTQ5OThiNzY1OGZmNmM4MmM5YyBsZWdhY3ktdHJ1bmsKKzY4MDAgMDI3ZmYxNTU0ZTY2MmJmZjJjYjNkYjlhMmQ4ZDMyNWJiMDgwMjY3ZSBsZWdhY3ktdHJ1bmsKKzY4MDEgZmI3MzBmYjEzZmFiNWNhZTY3NDk1ZjY3YzRjMDAyM2M5OWJmOTQwMiBsZWdhY3ktdHJ1bmsKKzY4MDIgYjAzYWIzNWQ1MmRmOTc3YzliZDczYWVhMmI1NGYyMGFmZjdhNzQzOSBsZWdhY3ktdHJ1bmsKKzY4MDMgYTI0MGJlNWJlNmI0YzQ2M2E0NzIxNWI4OTQwMjZiZWNkYzUwYjdlNSBsZWdhY3ktdHJ1bmsKKzY4MDQgOTA1ZjdiNGIxMzIzODcwN2ZlN2JiOTU1OWQwZGExZDE2ZDI1ZTcwNCBsZWdhY3ktdHJ1bmsKKzY4MDUgYzJlYjM4YjY3NGYzMDk4OTI0OGM2NTRkYWQ4NzhmNjM1MDllZDQyNCBsZWdhY3ktdHJ1bmsKKzY4MDYgZDA0NDY5ZDAyNTZjZThlZjFiYjA0MWFlZTY0Y2NhZTBmYzkxNzk2MiBsZWdhY3ktdHJ1bmsKKzY4MDcgZWUyMDI2MjE3MzQ5OWM0ZTVjNGYxMjU1YzE4ZWNjOTFkMTZhMmY0YSBsZWdhY3ktdHJ1bmsKKzY4MDggZjM3Y2JmYWE3MzI4MTI5YTBkOGRmMjkyNDgyMDkwZDc1MmQ1OGRiMiBsZWdhY3ktdHJ1bmsKKzY4MDkgMzY2ZDcyZjEyNzk0YzU2OTU3YmM3NWU0MzhjOWY3MjVhYzNkMTU0NSBsZWdhY3ktdHJ1bmsKKzY4MTAgNGRiZmQ0ZGZlMjgxYzkxMjU1MmNiM2FlNzNkZjA0MDk5OGVjOGQ1ZCBsZWdhY3ktdHJ1bmsKKzY4MTEgMzc2ODIyYzY1ODEwODQzZWY4NjEyZGRkMjNiYzA2MjRjNTIyMzI2OCBsZWdhY3ktdHJ1bmsKKzY4MTIgYWYxNjg0ZmM5YzYzMjRkOGQyNDFlMjJiNzgxYmU2NmZhYTk0M2MyZiBsZWdhY3ktdHJ1bmsKKzY4MTMgZTdiYTA5MmMzY2YzYzcxNTNiNWQ5YjQyZDdhMjM3YjFlNGZhZWZhYyBsZWdhY3ktdHJ1bmsKKzY4MTQgMmRmNjJkYjM2NmI3NjgzMDJhYjM0NDg3ZDJiNDYzZDhmMTZmMDY1YiBsZWdhY3ktdHJ1bmsKKzY4MTUgNWE3NTUxMjM2MDYzNWFlMzM2NzE5MGZlMGVkZGVlYTQzNGJmYzQzOCBsZWdhY3ktdHJ1bmsKKzY4MTYgODk3Mjk3YWJlNWI0MDVjMTYyYjFkMThlM2FmYTZlMmMyM2M1OTFhZCBsZWdhY3ktdHJ1bmsKKzY4MTcgNGJiZGU4MDRiNjk3ODRiNGIwZjBjNThjNzA1MDUzZmQ4NjEzZDYwMyBsZWdhY3ktdHJ1bmsKKzY4MTggNWNiZGJhNGQyZTE1MjVkOTQyMGFlYTk3OWExMzRjZjBhYzA4NzI1ZCBsZWdhY3ktdHJ1bmsKKzY4MTkgNGZiODg0YmYxNDdjYzFjMWI2M2M1NTBkNTBiYTllZGMyODI3YTRjOSBsZWdhY3ktdHJ1bmsKKzY4MjAgN2I2MDBlNzNmZDJhOGEwZmZkMTgyODA5M2Y2YjRjYTlhMDQxMzNhYyBsZWdhY3ktdHJ1bmsKKzY4MjEgYTVjMjlhY2NjNDM4ZTgwYmUyMDE0ODEwMjVhZGZjMGMwOWE0NzBhMSBsZWdhY3ktdHJ1bmsKKzY4MjIgODUyY2EyM2M4MGNjZTAwZjUxMmE3OTczNzhmMWJkNWJmZGY1YTA2ZiBsZWdhY3ktdHJ1bmsKKzY4MjMgOTgzZGY0MzY0NTk1NzBmZDg1NjFiYWVmNzZhMGFhMjU4NjQ1NWJjNCBsZWdhY3ktdHJ1bmsKKzY4MjQgYTIwOTkxOTQ2Mjg1MDNhYmU3NmQ3MGM0N2JhMjMwOTU4YmMwNjZlNSBsZWdhY3ktdHJ1bmsKKzY4MjUgMDJhMjRlNDhiMzc2ZTU2YjQ5YmNlOGZmMTk4ZDczMjA3MWNlMDdkYSBsZWdhY3ktdHJ1bmsKKzY4MjYgNmVjMGNhZWFmODIzMGQ4ZWZiNjEwN2I0YzRiZDgwNTI1MWRjZDgwNyBsZWdhY3ktdHJ1bmsKKzY4MjcgYWFjOGE5OWExZjljNGZhMzA1ZDBiMmNlNjM0MGMxMTZmMjQ4MjhkYSBsZWdhY3ktdHJ1bmsKKzY4MjggNjkyNTA3MDM5NTNhMmE3MTA3MmYwOTZiYzg2MmY5NjVlOWVkZjkyNyBsZWdhY3ktdHJ1bmsKKzY4MjkgZWI0NTVkOTliYTk4MjI2ZmI4YWM0ZGFkMGFiM2ZiZDljZmZhMjlmYSBsZWdhY3ktdHJ1bmsKKzY4MzAgOTVmZjg5ZDgzZDYzOTdhODRlZDgxYzEwMjUwMGJlM2U5ZDRhNTZlYiBsZWdhY3ktdHJ1bmsKKzY4MzEgMjkxMzU5NzQ0M2I5MDBlMDBiNWUxNTkxMGRmNDc2MjU4MDFkMzMzMSBsZWdhY3ktdHJ1bmsKKzY4MzIgMDIxMmI0ODA5NDRiYzIwMzk3ZDY4OWQ5ODE4ODVjMjE1MDEwZTIxMCBsZWdhY3ktdHJ1bmsKKzY4MzMgNGUwMGU1ZGFhNjEyOGQyOGIwNzUyZmNhMTI4ZTM5M2VkYTMxZWI0YiBsZWdhY3ktdHJ1bmsKKzY4MzQgZGJmMjczN2QyYzgxY2EzZTNjZjM5ZGIzNDhhZDM4NjQ3OGE4ZDBhZSBsZWdhY3ktdHJ1bmsKKzY4MzUgYWY3NTQ5NjFhY2M1MjRjOTEwMDUwM2Q5YjczZTcwYTQyNmFiNDVkNCBsZWdhY3ktdHJ1bmsKKzY4MzYgMzgzNjExYmRhOWU2ZGVlODlhYmRhNTU0MThiNjM1MmYwYTkzM2UxMiBsZWdhY3ktdHJ1bmsKKzY4MzcgN2IxZjZlNWU5Mjk0NjMwYzRiMGM0YmQyNjgzYTU1MTE3MTMyN2ViOSBsZWdhY3ktdHJ1bmsKKzY4MzggMzQxODJhNjQwOGUwNGY5NWIwMWQyYjJiOWY4YjJmMGFhY2Y5NWE1YiBsZWdhY3ktdHJ1bmsKKzY4MzkgOTEzZmM5ZmY0M2FjMTIxYTk3MjA5YThjNjQyMGRlMGMyOGViYjk3MCBsZWdhY3ktdHJ1bmsKKzY4NDAgM2ViNzRkZjY3MmEzOTk3MzAxZWFmYjAxNjIzMTRkODFjMjUzYWNhYiBsZWdhY3ktdHJ1bmsKKzY4NDEgMzE1YTc5MTk5ZmM4ZWQ3Y2ZkOWFjNGFlOTFmMWFjYWM5ZmEzODllYyBsZWdhY3ktdHJ1bmsKKzY4NDIgYTA1ZjhkOGM2NzY4ZjgxY2YyMjViMzBlMmQyYWEwMzRjNTI4N2UzZCBsZWdhY3ktdHJ1bmsKKzY4NDMgM2U3N2Q2NjM3YTJiOTBkMzJhNjk3NDBlZDA5MjE3MjgyM2YyZjI2ZiBsZWdhY3ktdHJ1bmsKKzY4NDQgYTcwNjkyYTZkOGNjZjU4ODBmMmU4NDZjOTFhOTM2MWYxZGNjOTIwYSBsZWdhY3ktdHJ1bmsKKzY4NDUgYzI3N2VlOGM2NjljZGI4MjBhOWQzYmJlMjNkNjAzNWQ1MjZkZmFlYiBsZWdhY3ktdHJ1bmsKKzY4NDYgY2JkNDM0YjQ2YzFhNjNmMzIyNGY4YTgxMzJhMGNhYmZhOTA3ZDZjNSBsZWdhY3ktdHJ1bmsKKzY4NDcgOThlYTgwMDUxZGJjOTFkMDk3MDJiNWRjMjRiMjM3MDA0ODVjNzAyMyBsZWdhY3ktdHJ1bmsKKzY4NDggNDYxNDBmNTg1NmQ5MGEwZWE4NDZjZTk4ZTFhN2JmZTIwMGExYTdiMCBsZWdhY3ktdHJ1bmsKKzY4NDkgMzFjN2Q4ZjQ1YWViMDg1NTc4ODNiZmU3Y2Y2NzE5MDVkMGQyYTUwNCBsZWdhY3ktdHJ1bmsKKzY4NTAgZDRmNjRmYzQyZDg0NDkwNTRmMzMxN2VkNzQ5MjA2OWEzNDQ2M2Y1YSBsZWdhY3ktdHJ1bmsKKzY4NTEgNWY4YTY1M2IxNzc5YTUwZGU3ZWNjY2VjMDQ4ZDkxOWI2YTQ4MTc5MSBsZWdhY3ktdHJ1bmsKKzY4NTIgOTY2OTlhZjQ4MWJhOWU5ODJkNDFhZmRhZWI0MWJhZmNhY2MyZjVkMSBsZWdhY3ktdHJ1bmsKKzY4NTMgMzA2MTY3NmE2NTlhZTNlOGU3OTZhMDg5NzBhZDliZGViZDI2MTM1OSBsZWdhY3ktdHJ1bmsKKzY4NTQgYWYxYmYwZjZlMmRiMTEwMGY0ZmEyZTI5YTEwZjYxZTc5ODhhMjQ0OCBsZWdhY3ktdHJ1bmsKKzY4NTUgNzk4NzMyZTY5YjNiYTFhNjI0ZDhjYjk5N2Q4YjZlMjIyYzYxZWU0NyBsZWdhY3ktdHJ1bmsKKzY4NTYgYWQ0MWRlY2M1ZmE5M2Y5Yzg4YjVhOGU2OWJjZTI4NDMyOGI4MDVhNCBsZWdhY3ktdHJ1bmsKKzY4NTcgZTAzM2M3ODZmMjk3MWM3NjQ3NDlmOWYzOTUyNDBjMGU1YzM4Y2IxZiBsZWdhY3ktdHJ1bmsKKzY4NTggMGRlOWM1NTRiYTAwYzBkNmVmNWRhMzU4MTA0ZDExY2M2ZmJmMTc0NSBsZWdhY3ktdHJ1bmsKKzY4NTkgNzBjYzIzOGQ1NjNlNjIyNzkyZGU3ZmY4MjgxYzM2MmZlNDMxZjEwMCBsZWdhY3ktdHJ1bmsKKzY4NjAgM2M3ZWZlYjYwN2EwNzBjYjQ0NTkyYWM5OWNmMmZmN2FjYjNjN2M0MSBsZWdhY3ktdHJ1bmsKKzY4NjEgMmUyNzJiZjVhNDNlODQ0N2JlMDhiNWU2YmI3MGFlZGYxMmI4YmJhYSBsZWdhY3ktdHJ1bmsKKzY4NjIgYTc3ZjRjMjI2OTdmZjlhZWY3ZjU3YjdjYjU0Y2IwMGZmYTJkOTQ2NCBsZWdhY3ktdHJ1bmsKKzY4NjMgYWRiZTYzMzE3Y2NiM2RjYzY3YTRmNWI0NTJmNmI1N2M0NmVmYmY3OCBsZWdhY3ktdHJ1bmsKKzY4NjQgNzc5NTRmZTQzNzZjYjQ5MWUyN2I1YTQ4NDNhNWY1MDA2YTgyMjI5YiBsZWdhY3ktdHJ1bmsKKzY4NjUgNjJiNjViZTJiNzdmMWIxYTlkNzE3NmEyYjVlZTZiMzI0NTBhZDdmYiBsZWdhY3ktdHJ1bmsKKzY4NjYgNzJhMGNmZGEyMDA0NDc0NTkwOGNkOGQ1MTlhNjUxM2Q4NTQ3OTA4MSBsZWdhY3ktdHJ1bmsKKzY4NjcgNzk4MDg2MzIzNDY0NWM4NThiNzUzZmVhZjA1MjMxZTg5NmExNTcyMiBsZWdhY3ktdHJ1bmsKKzY4NjggNWM4NmY2MDUzOWY3NDI3ZTBhZDEzY2YwNDFjYTA2MTRlODdiYmYyOSBsZWdhY3ktdHJ1bmsKKzY4NjkgNDhkMWY1YmViMTZiYTY0OWFkNDJkNmVhMTJjNDdhYjg4ZTU3ODYwNCBsZWdhY3ktdHJ1bmsKKzY4NzAgZDU4YTg0OTE1ZmFkZTE5YWUyZDgyZjBkOGE1OTE2MWI0NDkzYjEyNyBsZWdhY3ktdHJ1bmsKKzY4NzEgODkwNDM0ZDViZWMyZjljMzlhYTZlYTZkMTExNmU0NDE4MjBkZjBiNCBsZWdhY3ktdHJ1bmsKKzY4NzIgZWM0YzQyYmVhNjlkNmNmYjEzOWM0YzQ0ZGNlMTE4YmU4YjlkYTUwZCBsZWdhY3ktdHJ1bmsKKzY4NzMgZmRkMTI5ZjA1NzRlZGNjNjE3YjllYTAwNmVjNjU5N2ZmYjFhYTRiMyBsZWdhY3ktdHJ1bmsKKzY4NzQgMDkxNzc1YTVlMTliMzVlOTQ0NTFiMDQ3MTc2MWJlNjM0ZTdiMTk3YSBsZWdhY3ktdHJ1bmsKKzY4NzUgZDE2Yjg2MjFhM2YwZWFkYTM5MDRiMDZjNWQ2MzdhOTllMGJlNWE5NyBsZWdhY3ktdHJ1bmsKKzY4NzYgMWQyNzVjZDQyYzliMTg3YzYzMjlhYzhhZDIyNWI2ZjcxMmI4Zjc4MSBsZWdhY3ktdHJ1bmsKKzY4NzcgM2IzZjdjM2Y2ZGEyZjhmMGQ1ZTg0ZWI2ZjYxNzQ1YmQ2NzNlZThkYiBsZWdhY3ktdHJ1bmsKKzY4NzggMWUyZDI4MDYwNmQxZWZmOGQyMzNkNzM4ZmE5OGY3NWJjMDU4NmE4OSBsZWdhY3ktdHJ1bmsKKzY4NzkgZTUyOGMwYWNlNGU1ZGE5ZDIxY2MzZTI4N2E1MzRiMjg1ZDE1MGNhNyBsZWdhY3ktdHJ1bmsKKzY4ODAgNmYwMzJlYTI2NjQyZjZkY2UwMGNlZmFlNjE3OGQ1MDJmYmNhMjcxZSBsZWdhY3ktdHJ1bmsKKzY4ODEgN2RkZDhiM2Y2ODAyZjBlMmU5MzM5ZTc4NmY4OTg0NTQxYTJiZWQxOCBsZWdhY3ktdHJ1bmsKKzY4ODIgNmM3NzFlYTM4ZWVlODcyOWExMzFlY2M0OTYyNzdmNmYwYTVkODNhOCBsZWdhY3ktdHJ1bmsKKzY4ODMgYTk4MDExZjBmOWNhNWI0YWIxYjNjZThkMWI4MTVkNmQyMTY2OWQ3OSBsZWdhY3ktdHJ1bmsKKzY4ODQgNGNlZjIzZTFkY2NhODdmZjE4NzA4ZDdiZDU3ZjY5MGY5ODMzN2I2NSBsZWdhY3ktdHJ1bmsKKzY4ODUgZDczODQ5MGM4ZGExOTNjMmZjZWMwYzE4NWE4NGNlNGI1MzUxYWJmOSBsZWdhY3ktdHJ1bmsKKzY4ODYgYWMzMzI0ZTYzOGU5NmMyNDM4ZTE1NWEyODY5YzRmYTZjZmUxMGZkZSBsZWdhY3ktdHJ1bmsKKzY4ODcgNzdkM2QzMDEzNjkyZmRjM2I0NDQxMGIxYTM5NjBkMTk0MDA3YjEzOSBsZWdhY3ktdHJ1bmsKKzY4ODggMDJhNjhkNjIzODA1YzAxMjE1ZTE1MTkyN2UzMmM0NjRiNTE1ODI1YSBsZWdhY3ktdHJ1bmsKKzY4ODkgM2RiZWQwZmY5Y2YyMzM0ZDc2MjdmYjQ5N2RlNWMzZmE3ZDRlZjU2ZiBsZWdhY3ktdHJ1bmsKKzY4OTAgZmNlNGY4N2U1OTc0OTQ3YjgxM2U1MDUyMDVmZGRmMmU4N2U3NjViYyBsZWdhY3ktdHJ1bmsKKzY4OTEgYzE0MzVjNWRhMjgxN2IzMDY0NThlZWQyMGIyNzhkOTljYzRkYzAyYiBsZWdhY3ktdHJ1bmsKKzY4OTIgZjQxYWI3MTNmN2VhYmU5MzgxYjdhZjEwNzZlOTNlNDc2NTIwMmU2NSBsZWdhY3ktdHJ1bmsKKzY4OTMgMmVhY2QyYzhlYWJmZjQzNTU0NjcwZWE3OGUzODM5Zjc5ZDZiOWNlZSBsZWdhY3ktdHJ1bmsKKzY4OTQgN2ZmZmY2OTVmMjFkYTc3MTk0YmM1ZjQ3ZjAwMTY4YTJlZDBjMWRkMSBsZWdhY3ktdHJ1bmsKKzY4OTUgOTNkMDVlMTc4MjE2NGRmN2IwZTdjMmZiZTY0MzA5YWRlYTI2ZmVmYiBsZWdhY3ktdHJ1bmsKKzY4OTYgZGQ1ZTllODU3MTg2NTlkNjVjNDFhMTg1Mjg3ZDNhY2IxMzM1NzdjYiBsZWdhY3ktdHJ1bmsKKzY4OTcgZWY3NjA0YzA3ODc3ODFiOTEzZTcwZTZmZTAxNjliOTE3NjgwZGUwYSBsZWdhY3ktdHJ1bmsKKzY4OTggNGY2YzU2MjkyZDM0ZjZiZGU1OGNlZDE2NmM4OTQ3ZDEzNzU4YzhhZSBsZWdhY3ktdHJ1bmsKKzY4OTkgNWUwMzg4NTZmYTU2ODg2ZmI2YmY4MjBlYTBkMjYxNTk4NjBkZDk4YyBsZWdhY3ktdHJ1bmsKKzY5MDAgNzVhYmU3MzdlNzBiNjE3MTlkMTExZjcwOTdkM2Y0YTU3MzBjM2Q5MyBsZWdhY3ktdHJ1bmsKKzY5MDEgOWM3ZWYwMzBiZWM4MDExYTNiMjRmNjEzMDBlMDRhZjBlNTY3M2U4MCBsZWdhY3ktdHJ1bmsKKzY5MDIgOTM4YmU3YTMxMDZmMjg1YmQ3MmI1MDQ0OWY3N2Q3NjdmODlhNzA4ZSBsZWdhY3ktdHJ1bmsKKzY5MDMgMzRlZWI2MWYxMDI4Mzg2ZDhhNTI0MDMwMzViZWFhYmJkNzg3NGQxNyBsZWdhY3ktdHJ1bmsKKzY5MDQgOTI3NTMyMDcxNDkwNDQxMzFlZTJhNzZlMTc3YzViZDEyNTI3ZTg3NiBsZWdhY3ktdHJ1bmsKKzY5MDUgZjJmOTQ2YmQ3ZjQ3YzVjOWE2MzVhOTY4YWY0NjVkYzc5MDhmMWIyOCBsZWdhY3ktdHJ1bmsKKzY5MDYgMWNjY2U1ZTRmODA2ZDU0OWMxYWEzZmFiOWM0OGE3MDhhNGM0OTg2MCBsZWdhY3ktdHJ1bmsKKzY5MDcgMzQwYWRmYWE5ODU0M2YwMTllYjBmZWU4NjdhZDlmMmZmZjBkN2ZiYiBsZWdhY3ktdHJ1bmsKKzY5MDggYWMyYTYyN2NlM2E3ZWY3ODAzN2U5M2EzZGQzODk3YTliMjczMTY4MSBsZWdhY3ktdHJ1bmsKKzY5MDkgMjVjNTMyODY3NjNkMDM1OWViMzIzODJmMGRjNDAyNzViNWZhMTllZCBsZWdhY3ktdHJ1bmsKKzY5MTAgYTM2MjM1NjMxMjczN2I3N2M5OWIyNDgwNzljODUwZjZjZWY3YzYyOCBsZWdhY3ktdHJ1bmsKKzY5MTEgN2RlNDU3YmRjOTQ2Njc5Mzg2NjE0ZmUyM2JmMjJlODg1YWFhNjBhMCBsZWdhY3ktdHJ1bmsKKzY5MTIgZTg4YjMyMTVlOTRhNTkwMThiODRmMWE5NjU3N2JmZDMxYzk3MWI1NyBsZWdhY3ktdHJ1bmsKKzY5MTMgZmIxMjM3YmY3MDIyYmI3NzczOTc4ZGIzMjEwYTJhZWU5ODA3N2E3YyBsZWdhY3ktdHJ1bmsKKzY5MTQgZmNlMjk2ZGJiMDNlMTY5OTgxMDNiN2EwM2ViZjUyMjkxODUyNDBlNSBsZWdhY3ktdHJ1bmsKKzY5MTUgNzgwMTBjY2I4YTQ2MTg4MWViY2I1NTQzNmM4MzMwNGZmZmEzM2M2MyBsZWdhY3ktdHJ1bmsKKzY5MTYgMDU0OWUzNDI4ZDU3ODM1ZGQ1YWNhZDdhOTBlN2RjOWFmMGYzYWQxMiBsZWdhY3ktdHJ1bmsKKzY5MTcgMWMyNzQ0OTEzMGJhNDQ1YzIxMTAxOTMxMWIyMjkzOGJjODE1MmQxMCBsZWdhY3ktdHJ1bmsKKzY5MTggZmE5YWJmOWE4NjI0ZTZmNmU3NDVhZTE1ZWNmNDM3N2VjMzIyYjk5MyBsZWdhY3ktdHJ1bmsKKzY5MTkgMDJiMWYwOGUzMGEwM2NhZTk0ZmJmNzI1OTljZDYyN2Y3MjVjYzE5NCBsZWdhY3ktdHJ1bmsKKzY5MjAgOTQ1MjE4ODA4NzFkMTYyYmRjZjlmYzM1Yjg5YTA0ZmQzZWRlZTc0YyBsZWdhY3ktdHJ1bmsKKzY5MjEgMWJhMjJmNzQ5NDg5YTQzNTRhN2JjMzYxMjlkMDQwNDMyZmZhMTNlMyBsZWdhY3ktdHJ1bmsKKzY5MjIgODVkMzg0NTZhZGYwOTQ4NWI0MDQyYjAwYWIzZjlhOGVlNzY0N2NjMCBsZWdhY3ktdHJ1bmsKKzY5MjMgMWZiOWE1NGU0YTljMTU3YmRhNGFmMzUyOTU3ODJiMGMzNDFmYjBiZiBsZWdhY3ktdHJ1bmsKKzY5MjQgOTFjNjk2NDU3ZmQ0ZWQyY2QzMTRiMGI2YTBlZjA1MDM4ZjI4YmM3OSBsZWdhY3ktdHJ1bmsKKzY5MjUgYzZmZmI0ZmM0ZGE0MDY2MjQ3MzIxMzcwNTc3ZmZhMWZjYzMyYmQ3ZiBsZWdhY3ktdHJ1bmsKKzY5MjYgZWRhYjA5Nzg4MmQ4MGU0MWJkNmI5OTQ2ODM4NGE5N2NiNjY1M2YyYSBsZWdhY3ktdHJ1bmsKKzY5MjcgZGNjNGNmOWZhNjJhODZjYjY5NGQxMjM1NTI5NTBkM2M2ZjdiYjViNiBsZWdhY3ktdHJ1bmsKKzY5MjggNGMxNjE1NGZmZmI5N2I0NmYyNWRjNTIwZGNjNDcxNzJhYTgyNDcxMyBsZWdhY3ktdHJ1bmsKKzY5MjkgN2VlZWZkMzI2N2Q0NTBhNzI4OTcwZTE5ODdmOTM4YzdiNDk3ZDlhNyBsZWdhY3ktdHJ1bmsKKzY5MzAgYWNiMTk4OGI4ODUyZmI4OTc2YTA3OWY5OWY0ZWVlMTYwMjQ5MDQ4NCBsZWdhY3ktdHJ1bmsKKzY5MzEgYWI2MGM1NTg1ZDFiMDA1Y2RjNTRiYWRmZDZlYjM0M2Y2ZDhmNTg4NiBsZWdhY3ktdHJ1bmsKKzY5MzIgZDg3NTlkMGI1YTY3Y2JiZDBhM2MwZWM2YmJhNWU1N2JmOWE2NDEwNCBsZWdhY3ktdHJ1bmsKKzY5MzMgYzkxYWFjYmY4ZWQ0NjUyODk0MGJiMDZlODZjY2NkMmNlOWMwMTRhMSBsZWdhY3ktdHJ1bmsKKzY5MzQgNTE5N2UwZjNmMGZmY2VkMGM5ZWJiODY2NGEyMzE0MDk5OGU3YmRhYSBsZWdhY3ktdHJ1bmsKKzY5MzUgYTgyNjRkNzBmMjgxYzYwOThiZjAyYjVjM2Q3MzE1ZjlkMTVhYjBlZiBsZWdhY3ktdHJ1bmsKKzY5MzYgNmY4OWE0NGE4NjFjN2JkOWEyYTY4MjYyNDE3NTQ4ZDVlMThjMmZkYSBsZWdhY3ktdHJ1bmsKKzY5MzcgYzZhNDc4NmU3ZjhlYTgzMDFiYWMxNGE3NTk1YmFlOGRmZDRmNzgxMyBsZWdhY3ktdHJ1bmsKKzY5MzggYmFhYmZiNWQ2MmE4OGNlNDFhNDg5MWZlYWFkYWNhZmNjZWE2YzhlNCBsZWdhY3ktdHJ1bmsKKzY5MzkgYjUxZGMyZmI0OGUxODA0YWRkNTc5OTE3OGY1YjYyYzVkYmQ5NzUzZCBsZWdhY3ktdHJ1bmsKKzY5NDAgOGQwNTZmNTNhN2Y2MzI1YTkwN2VjMzViY2Q2Y2ZhNWI0M2RiMzM5MCBsZWdhY3ktdHJ1bmsKKzY5NDEgMGQ2MWY2YzM4YjM3ZTI1NzhhNDlmYTk3NjdhNDNiNTQ0YzBkOTk4MSBsZWdhY3ktdHJ1bmsKKzY5NDIgNjAwZjViOGExNmNiMWM0NzViZGMyOWM1MzhlOGVlZmU1M2RmYjdiMSBsZWdhY3ktdHJ1bmsKKzY5NDMgNWQ3ZmEzZjJjZWMzZDU2MTE2YjZhNjhhOTIyYzNiNDI0NGE1NGM3MSBsZWdhY3ktdHJ1bmsKKzY5NDQgZDljNTE1NWJkYTUwMDJmMmNlODhjNTQ5ZTg4NzM5N2ZjZWU4OTE3MiBsZWdhY3ktdHJ1bmsKKzY5NDUgMTIyYzhmZGZlNGVmOTFhYTc1YmRkMDAyOWQzYTBiOTVjYWI1ODMxYiBsZWdhY3ktdHJ1bmsKKzY5NDYgZjYzNDYwOWY0MDI4YTVlMmM3OTFlMGQyM2U3YTk3YjQ0NGQxZTJmYSBsZWdhY3ktdHJ1bmsKKzY5NDcgNTVmZTY0YzIxMTQ1Y2Q4OTMyNzM5MWNlYTdlMWRkZWM0NzU2ZTk2OCBsZWdhY3ktdHJ1bmsKKzY5NDggNGQ2YmFiZjJlNGUxOTEzYWQ5NmFiOGRkZGEyZmIzYWQ1MjViNWU2NyBsZWdhY3ktdHJ1bmsKKzY5NDkgZmIyZDFkNWUxNDFhYTQ2Y2RiYWNhNDU4MGRmOTU4OTUzMjAyNjlkNCBsZWdhY3ktdHJ1bmsKKzY5NTAgN2U1ZjAzOTUzMTEwNTliZDQ0ZjZlMmUzY2NhMGMyM2JkODIwZmM0ZCBsZWdhY3ktdHJ1bmsKKzY5NTEgMmZkYmExMjY3NjEzOWVmNWZkMWFmNjRmNzhiMWU2MDkwNGE0OTVhMCBsZWdhY3ktdHJ1bmsKKzY5NTIgMjY3YWU1ODIzMmQ5YTg2YTllYWM1NTE0MzMyZjA5YzljZmNiOTFkNiBsZWdhY3ktdHJ1bmsKKzY5NTMgMjM0MzgwMzMxOGU0ZjZmNTYzMjE0YTBjMDgxZjQ4NjJhNjkyODNiMCBsZWdhY3ktdHJ1bmsKKzY5NTUgOWU4NTNhNWYwNGZmOWVjMTkyMmVhY2E3MDBhNDQxNmMyMTg0OTJhNiBsZWdhY3ktdHJ1bmsKKzY5NTYgZGQ3MDllZDgyMjYyNzBkZWZlMDFkYjljZmU5NzM0NjJjZTIzYzNlMCBsZWdhY3ktdHJ1bmsKKzY5NTcgMzI0ZTFlMzZlNjUyYmMyMWEzNTg0MTY1ZTAxYTFmY2ZkOTlkYmNmOCBsZWdhY3ktdHJ1bmsKKzY5NTggMWZlYzg4YjIyZTg3ZjgyNGM0NDFlYzA0YWRlZTJiNWIwZTllYmMwYyBsZWdhY3ktdHJ1bmsKKzY5NTkgYTYwZDg1MjM3ZmRiODFlYTU3MGQwODczYjE4ZjEzNDVjMmNiMTc2ZCBsZWdhY3ktdHJ1bmsKKzY5NjAgZDkwNGY1MzlmZmQ5Y2U4ZWZlZTEwYjAxMjc4NDRiYWVlYjNkM2JjNyBsZWdhY3ktdHJ1bmsKKzY5NjEgM2Q0MzUxMGI1ZTE5ZGE1YTY0NTljMGQ3M2FhNjM1YTBmNWRmYTM0MyBsZWdhY3ktdHJ1bmsKKzY5NjIgZTBjMWJkMGE3NGE5MTI3NDRjY2ZiNjI1YmViNjMxMmNkY2RlOWU3OCBsZWdhY3ktdHJ1bmsKKzY5NjMgOGNlMTg1MzhlM2JiZmIxZTQyOTk2MTM2ODcwYzUyMzJhZjk1MTY5NSBsZWdhY3ktdHJ1bmsKKzY5NjQgMGU2MjNlODIzMDFmMWZiMTQ2ZjA1MzNhY2JlN2ZlNGUzOTY0MzUyMCBsZWdhY3ktdHJ1bmsKKzY5NjUgOTc0ZGMzNmZlY2Q2MmMxNmY2ZTJjZWM5ZTRjNzEwOWJjNmVhMWNlYiBsZWdhY3ktdHJ1bmsKKzY5NjYgNmE3NWIzY2YwMjNjZmM3YWMzYjE4MDdlNzEzMWZmOWRhODQ3MGNiZSBsZWdhY3ktdHJ1bmsKKzY5NjcgYWU3NWQ0YTFmNWRkYjM1Nzc1YzY5ZmNiYzAwZGU3YWY1MzA2OWEwNCBsZWdhY3ktdHJ1bmsKKzY5NjggOTllNzBjNDcyYTIwMmRhNTEyNjY0YmY2YzE5OTBjODMwMjcyMWM1NSBsZWdhY3ktdHJ1bmsKKzY5NjkgYTk1NTQ5MjY5ZGUyYjAzMDI0OThmNTZlYWJjNjBlZWJhY2QxNTdiZCBsZWdhY3ktdHJ1bmsKKzY5NzAgNTY5ZTNhZjUyMTg3NWRlZmY2NzQ2YzNjYzhiZjE1MjI3M2U2YmNiYSBsZWdhY3ktdHJ1bmsKKzY5NzEgZWFlOGFiM2QyNGUwMzAwOTJlMjc0ZTQxZGJiZDgxN2RlYjNkZWMxOCBsZWdhY3ktdHJ1bmsKKzY5NzIgOTMzNTNlMWQxYzc2MDRmMDc1NzUyNDU3YmUzMWUyNjJjMjNhYTgwOSBsZWdhY3ktdHJ1bmsKKzY5NzMgZDgwMTI1ZDdkYzczNGExZjllMTQ1OWVmZjg2NDdjZTgwYmU1NDA4YyBsZWdhY3ktdHJ1bmsKKzY5NzQgMjBmZDk2NjQ4NTEwOGRjMmUwOGE3YzRlMWUyMmM2NzczYmI5MTgxYSBsZWdhY3ktdHJ1bmsKKzY5NzUgNGJhMjBmNDQ2NTRiYmU3ZTBjYzQ5Mzg2OWEyMWZlMjY5MTNmYWVjNiBsZWdhY3ktdHJ1bmsKKzY5NzYgNTU5YWE0N2IyZTJjZmNmZWU2NGIxOGY5ZmMyYzc5NTlhZmU0MWUwMSBsZWdhY3ktdHJ1bmsKKzY5NzcgOTQxYjA1MWFmNjc1ZTJiN2VlNzY1ODM4MzhiYjZjOTQzMDc0NGI2MiBsZWdhY3ktdHJ1bmsKKzY5NzggNjVkMmQ4ZTY3ZGEzMjNiNzRiNzJlNGQ4MDU1MzZmYWE2ZmQyNGMxZSBsZWdhY3ktdHJ1bmsKKzY5NzkgODU4ZmIyZTliYzE3MjNjODhiOWVlNzgxNWIxMTg1NjQyM2JmOGE0YSBsZWdhY3ktdHJ1bmsKKzY5NzkgZGI0OTQ5NGM5M2RjNzNkZTA2ZDU3MjFjNzRlYWI1MzNhOTQ3YTkyYyBsZWdhY3ktdHJ1bmsKKzY5ODEgMmIyMWVhMmYzOWI0NDMyNmNiMjBjMTVmOTA4ZjAzZjdkMGNmZTgxMSBsZWdhY3ktdHJ1bmsKKzY5ODIgMTg5MjdhYmRjMjYyODE5NDhiY2I5NTQ2NDJhNmY4YTc0NTM0NGZmMCBsZWdhY3ktdHJ1bmsKKzY5ODMgNzE4N2M3MDllYmZkZWE0MTQ3YWY5ZDI1OTcwNzcxMjdlMjgyYzhkYyBsZWdhY3ktdHJ1bmsKKzY5ODQgOWNhNTk0MjQwMjBlMDBmNmJjNmQxMTUxOTc3NmVjOTY5MTA3YzczMCBsZWdhY3ktdHJ1bmsKKzY5ODUgMTFlMGMyMjA4OTk5Nzk4NmQzODdmMDFhNWUyZTcyZDA2Njg3NWU5NSBsZWdhY3ktdHJ1bmsKKzY5ODYgZGYyYzIxMmU0ZWEzZWJjYWJlZWY2MGViOGI0MzYxYWFlN2RiZjE2YyBsZWdhY3ktdHJ1bmsKKzY5ODcgMjNhMTA0ZDNiY2VkYzc1Y2M3NzdjNDYzMWUyZWY0ZTI3Mzc5YWM4YSBsZWdhY3ktdHJ1bmsKKzY5ODggODQ3NDQ1YWVhYjJkMTkwYTZjNmI1NzI2NmRmYmNmZGE1NDE0N2QwNyBsZWdhY3ktdHJ1bmsKKzY5ODkgZjY5NzZiOWE4NWE0M2VmOWI0Nzg1YWU1NTIyMzFhMTA1OGIyZTgzMSBsZWdhY3ktdHJ1bmsKKzY5OTAgYTc1ODU4ZmVmNTUwN2VlN2FmZmI5N2MzMDllNGNjOTEwNjZlOGJmYiBsZWdhY3ktdHJ1bmsKKzY5OTEgNGE3YzdkZDdiMWYwNTYzMzkzNjE3MzZiZGIxMDUwYTViMDhjODBjMiBsZWdhY3ktdHJ1bmsKKzY5OTIgYTRkMmFhZTc1N2E4ZDUxNzRhOWYyMmYyZDYxYTZiNDAxMDY4ZTUyZiBsZWdhY3ktdHJ1bmsKKzY5OTMgNjkxZTM5MmNhZDM0MGJkYmY4OTk5ODljMTEwOGMzZDhiNTAxNGE2YSBsZWdhY3ktdHJ1bmsKKzY5OTQgZmQ1MjRhMDAxY2U5ZmVlMjlmODE3Y2FlNTdjYjI2OTJiNWYyYjFjZSBsZWdhY3ktdHJ1bmsKKzY5OTUgYjQwNjNjMTAxYzJjY2UzMjQ5MzlmNzJiYTMyOTc3OTgxMWY1NjNkMCBsZWdhY3ktdHJ1bmsKKzY5OTYgOTdhNjE3OTVhMTY5YWZmN2UxZWE3YWNkZmQ4ZjA4ZDNiMTQwMzg4NiBsZWdhY3ktdHJ1bmsKKzY5OTcgZDI1YTBjY2JmZDZiOGE4YTA4OWE1NWE5ZDE5OTI3MjkzYWFlYTQ3YSBsZWdhY3ktdHJ1bmsKKzY5OTggNGQwNjgxZjdjZjZiNmI0YjVlNGYxMTk5MDE1Yjc2ZGMyYWRlNTAxNSBsZWdhY3ktdHJ1bmsKKzY5OTkgZDBjMDNjMzJlOGQ5NDMwZGZjYTQ3MGQyM2ZkZDdmNzY1OTgwZjNkYSBsZWdhY3ktdHJ1bmsKKzcwMDAgZmZlZjJjMzBkYzQ4ZmQwN2RhODJjY2EyODhlZDY1NzMxNGYwZjJiMyBsZWdhY3ktdHJ1bmsKKzcwMDEgZGI1NWI4MGFhZjEwMzk0YTZlNTg5OGE4YjQ1OTdhOWE1YjlkYmYxYyBsZWdhY3ktdHJ1bmsKKzcwMDIgNzg5NGEwY2Q4Yzc1NGI4NWM1ZDc4ZmQxODg1NjZjMjdhNTc3MjU1OSBsZWdhY3ktdHJ1bmsKKzcwMDMgMjgyNGNiZGJlMTJjNWJkNjdhNDNhZmU4ZmUxNmJlNjk0YzM5NWMzOCBsZWdhY3ktdHJ1bmsKKzcwMDQgMzM3NTYyMzMwZmQwZmQ1OTAzZmQ0MTJlYWRlMDk4YzM3MmUxYTZmZiBsZWdhY3ktdHJ1bmsKKzcwMDUgODBiY2IwMmViZjRlZjBhZjU0ODYxOWM5MTgxMjExM2E5ZmRmODkyOSBsZWdhY3ktdHJ1bmsKKzcwMDYgOTYwM2E2MGM4NjliZTI5MjJlZTk4NDBhNDhjZGJlZjhiZGYwYzA2MiBsZWdhY3ktdHJ1bmsKKzcwMDcgMzBjZWNhM2YxMDViMGRhODEwNTQzMjE4ZDZhYTcwNDAzNDJmOTBmNiBsZWdhY3ktdHJ1bmsKKzcwMDggNjJjZWY3ZTg5NmI2ZWNhYjI3MDRmMzI5MDI3ZDA5OGQ3M2MwZDkzMiBsZWdhY3ktdHJ1bmsKKzcwMDkgZDkwZDdiNTQxYWRhYjJmNmRhMTdkZDY4MGQyNThiNzA0OWM0MDRkZCBsZWdhY3ktdHJ1bmsKKzcwMTAgOTQyMWQyZjYzMDc3YTk1MmY2NjZhMGIwMDMzM2M4OTI2ODExODZlOSBsZWdhY3ktdHJ1bmsKKzcwMTEgMDU3NTA4MzhmODQwM2Y4ODYzNWZmNzdkY2FiODQ0ZDkyMzg2MWUzOCBsZWdhY3ktdHJ1bmsKKzcwMTIgYmYzNzY4YmQzMWYyYzk2ZDU3NGE2NTc1OTc3ZGE1NzQ2OWE4NWY1NyBsZWdhY3ktdHJ1bmsKKzcwMTMgNjUxNzBkYTFkMmNhNWJjNGIzMGNmNjljZmIxMDQxYzViNTIzMjc5NCBsZWdhY3ktdHJ1bmsKKzcwMTQgNDdlN2M0MmI5ZGM2MzUzZmRmZDg4M2RlNjQ5NWVkYTc0YzBlZThlZCBsZWdhY3ktdHJ1bmsKKzcwMTUgMWY0ZjFiZThhMzM5YjhjZTdlZTUxN2UwOGQwOTEzMTgyNDg5YjY1OSBsZWdhY3ktdHJ1bmsKKzcwMTYgNTc0OGQ1ZWUxOWVkM2NjMDk5NDU3NDFjMWUxN2M3MGNlOWMwYjdmNyBsZWdhY3ktdHJ1bmsKKzcwMTcgNjUyMzAzZWY5MjZiMWY2MmQyYjVlODBjZWJlNDBjYjk3ZWEwMjEwZCBsZWdhY3ktdHJ1bmsKKzcwMTggZTUyMDU0NDQwZWZjNWIwMmZhOWZkMzQ2MDMyMTQzMGNiYjVhZTk5YSBsZWdhY3ktdHJ1bmsKKzcwMTkgOGQwYjAwZWQ4YzJiNTZlNjdiM2I4YzgxZmUyYTYzZTc5YWNkNmY4OCBsZWdhY3ktdHJ1bmsKKzcwMjAgODIwYmYxYWU3ZTI1ODJkZDVmMjU0MTAyNTcyYjFkMDA5OGVmOGZjYiBsZWdhY3ktdHJ1bmsKKzcwMjEgY2M2NTIxYTJjZTIxZWU4NWZmNjFmZjg4NTgxMjI2OTI3Y2Y3ZGY4MiBsZWdhY3ktdHJ1bmsKKzcwMjIgNTRjODAwOGRlODdiYmI1Mzg0MGYyYTg3YzllY2NkMGM1NzY0Y2ZmZSBsZWdhY3ktdHJ1bmsKKzcwMjMgYmQ1NTFmYmI5NTk2NTg3Yjk3ZjE2OTYzNTUzYWYzMzIwNzJiNGQ4MSBsZWdhY3ktdHJ1bmsKKzcwMjQgZGJjOTg4MzRlZmYyZWE1Njg5NGJjNDA4YjUwZWJlN2M3MGY3MTY0MCBsZWdhY3ktdHJ1bmsKKzcwMjUgZjEyNDQwMzZlYmFiNmUzNzExODkyYzljMGU3YjRlMTYzM2ZkMGY2NCBsZWdhY3ktdHJ1bmsKKzcwMjYgY2VhMzE4YmI5ZDJmNGQ4ZTQ3MjU0ZWVlOWE0M2FkNThkMjI3ZTkzYSBsZWdhY3ktdHJ1bmsKKzcwMjcgZWZiMjkzOGNlNjc2M2ZjZjE1NjQ5OWQ1YTE5ZDEyMzg2MGQ0YjE2ZSBsZWdhY3ktdHJ1bmsKKzcwMjggODkwMDIxMzc2NGJhMTlkMjM3MzlkZTc0YThkNDJjZTMxYzhiZWY0ZCBsZWdhY3ktdHJ1bmsKKzcwMjkgZjAzMTQ2NjUzMGFmNjcyODMwODRhZWM3MDA3ZGIwZGY1NjljNTM4ZiBsZWdhY3ktdHJ1bmsKKzcwMzAgMDQ1MDc0MmYzNmY0ZmZkMTBmOWFmZDQ0MWI1NDNmZWI0M2M5M2IxOSBsZWdhY3ktdHJ1bmsKKzcwMzEgYjIxM2QyNThmZjMyN2RlZDYzNmRkOTBlMWU0ZGU0NDllNzkyMmZkYyBsZWdhY3ktdHJ1bmsKKzcwMzIgMmMwYzY4MDQwN2IyZWM0YzQyYjA4OGMzY2I0ODllYTIzM2ZiYjZmMyBsZWdhY3ktdHJ1bmsKKzcwMzMgZGY5ZDFlYmNmN2YzMGJhMTgxY2ViYWRmOTE2ZGQwMTZlNmY5NDU5NCBsZWdhY3ktdHJ1bmsKKzcwMzQgYWRiY2MwYWI5ZWI2YWY0MDFhNTJiZmQxOTIwOGY3N2RkYjI5NTExYSBsZWdhY3ktdHJ1bmsKKzcwMzUgYjIxN2RhM2Y5YjU0YzYzNjQyMGU5MTE1MTRkMDk1MDIwYmQ1MmRjYyBsZWdhY3ktdHJ1bmsKKzcwMzYgYzcxM2RlNzJlNzZlYzQzMjlhOTA1ZGFiNDI1YWI0Zjg5NjA5M2FlNSBsZWdhY3ktdHJ1bmsKKzcwMzcgZDAzMGVhNTMzZTYzYWZhZTg3MGRiNDI4YTdlYTE1NDVmZjdjZjg3NyBsZWdhY3ktdHJ1bmsKKzcwMzggZWE0NTg5MzNmYzJhZjZiMzlkZDFkZjc4NDQ3ZTFkOWU3NWM0YWE4YSBsZWdhY3ktdHJ1bmsKKzcwMzkgNzQ1YzdjNzBiZTMxMDhiMTc3NGY0M2QwYjFhODRhMDVhNmM2YmJjNiBsZWdhY3ktdHJ1bmsKKzcwNDAgN2Y0N2UyYjZjNGE0OTlmMmIwZDc5ODdiZDE3OWZkMDYxM2VmMDI5ZiBsZWdhY3ktdHJ1bmsKKzcwNDEgNjQwM2M5NGRlNTBkYzNjMWZlODQ4OTk5MTkwMDMzZWI3MjExN2Q2ZiBsZWdhY3ktdHJ1bmsKKzcwNDIgYTM2MGRjMWZhNTU4Mjk3ZTdiMjZmMjY0NzYyMzQzNjgxMjlhM2RmMCBsZWdhY3ktdHJ1bmsKKzcwNDMgNDM0MTU3NGUxNjNiM2Y0OTE1MjY1OTE3ZTczZDQ1MGNmN2I3NDdjNSBsZWdhY3ktdHJ1bmsKKzcwNDQgZTcwOGY1NjhiOGI3M2QzMGY0OWNjNjE1YTM1YjBkZDBmZWE1ZTQwNyBsZWdhY3ktdHJ1bmsKKzcwNDUgN2JiODRhMjIwNTQzNTFlODMyMzY3N2ZjNmE2MWRkZmYyNjg3NmFjOCBsZWdhY3ktdHJ1bmsKKzcwNDYgYTBlYzhhOWRiOTYwNTRjOWVlZjZhZGFjMGQ2MmI0MTEzNDBjNjk5NSBsZWdhY3ktdHJ1bmsKKzcwNDcgMjYyNmQwNmIzYjAxZjdlMTZlYzZiNTI3Y2YxODkxNDM3MTVhZTRmOSBsZWdhY3ktdHJ1bmsKKzcwNDggNzM3NThkYjJmNDY0Njg5NDc1MDcyMDc5ZTU1ZjUyOThkNDQ5YWE0ZiBsZWdhY3ktdHJ1bmsKKzcwNDkgODE4NjAzOTA1NWVkYTNkM2Q5YjNhMzc1YjNiMDMzYWM5NDlkNDY3MiBsZWdhY3ktdHJ1bmsKKzcwNTAgYWE5NjUwOGE2NTg3OTBmYjNhMDUyZDVhMWNhNmYwMzZkZTk5MDI2ZCBsZWdhY3ktdHJ1bmsKKzcwNTEgYzNiMDg5NWM5MGZiZjA4N2Q4NjkzMzcwY2YwNzQ1NmJkNGQwNWJlYyBsZWdhY3ktdHJ1bmsKKzcwNTIgZmFlNzhjZjg1NDFkNGJiN2VjYThkZmZkOTc3ZmNjMzhmMTYyYzBhMiBsZWdhY3ktdHJ1bmsKKzcwNTMgNmYxYTEyMGFlOWMwNjE2MTRhOWVkYjI5NDU4YWQzMzI4MmMyYTMxYyBsZWdhY3ktdHJ1bmsKKzcwNTQgZTNmNzFjZThlNmJiYjVmMzhlMTg1Njk3YzZjZjQwNDE4YTRhNTk0OCBsZWdhY3ktdHJ1bmsKKzcwNTUgMTFiZDRmNDk3NzQyZDgyN2I3MzdjMjY5Yjg4YjhhZTRlMzM1ZGZkOSBsZWdhY3ktdHJ1bmsKKzcwNTYgYzgzN2YyNWM3ZTQ3NzQ3MjQxYzNkYTA2NWIwNzEzOWY4MjQ2YjFhMiBsZWdhY3ktdHJ1bmsKKzcwNTcgMmY4ZDljMjJkZTYyZTE3MThjMDhjMTg3MTBiNjFjMjllMDdiNmFkYyBsZWdhY3ktdHJ1bmsKKzcwNTggNGY2NDRlY2M1YmFjNGFhYTI4OTIzMzEyMmQ4NjgwMTdjMTFlMmE0MSBsZWdhY3ktdHJ1bmsKKzcwNTkgMzg3MWViZDE5NjNjN2FkODFiN2U1ZTU3OGI2MmNhMmFiYWU4NTdhNyBsZWdhY3ktdHJ1bmsKKzcwNjAgNGE4MTY1YjNiNjYwM2Q5YjMxOGE4ZWUxNmY3MzMzZDUzMTU4OTMxOSBsZWdhY3ktdHJ1bmsKKzcwNjEgYjNkMjk5MGQ4YTRhZmI2OGIwMjlmY2M2ZjllMmVjMDIyNDg0YmVlMCBsZWdhY3ktdHJ1bmsKKzcwNjIgMDlkOTRlOWViMTAxMDAxOWQxYjNkMjdkNTI2MmM5YzVmNTY4MGVjNSBsZWdhY3ktdHJ1bmsKKzcwNjMgNGRjNjdmZGQ5ZTBiNWUwZWRjMTM1MmU1NzIzZThjMDJkNGVjZjMzMyBsZWdhY3ktdHJ1bmsKKzcwNjQgOTYxYmY5YTIwMGRkMTg0NDhhMWY5YmUyMjhlNTUwZDAyMzMxN2E5NyBsZWdhY3ktdHJ1bmsKKzcwNjUgMjEyNGY0Yjk3YmRkMmJiOTdhZDViZjQ5ODRhYWZhNTBlNzNiMjdhYiBsZWdhY3ktdHJ1bmsKKzcwNjYgOGNkZDk0YTNkMDJkOTk2Y2ViZWUzOGM0ZDIyZTY4ZWI2NmFjNmI4ZCBsZWdhY3ktdHJ1bmsKKzcwNjcgM2JmOWUyYmVhZjhjMDE5NzM4ZjU1YzlhYmE2MGIzNWQ3Zjg0MzJiNCBsZWdhY3ktdHJ1bmsKKzcwNjggNzJkMGRmYjkxOWZlMjhhMjJlZThhMmQ2NDBjNWNhZWU5YTEwODQwOSBsZWdhY3ktdHJ1bmsKKzcwNjkgNDE4NTcwNzVkNDViYWM4MDA3YzgyYTA0MmE2OTg4NjViM2Y2OGMwNiBsZWdhY3ktdHJ1bmsKKzcwNzAgZjhmM2RhM2ZkYWVkNTgyNjg1YmJkMDg2MGIyMTcwMDJlMzEyYjc1MCBsZWdhY3ktdHJ1bmsKKzcwNzEgNGZhMTk2NTk1OTFlZmEzZWQ4Y2U4MjM4NjdkODljZWFkNGJjMGY4NSBsZWdhY3ktdHJ1bmsKKzcwNzIgZTc0YjYwN2E1OTk2ZmE5OTIyMTNiYjk1M2RhY2I1Mzc3NDllMTg2ZSBsZWdhY3ktdHJ1bmsKKzcwNzMgOGZkYjA1MzljZmIxNTBhMTA3NDdjZDAxMWI1ODlkNDdmMzIwMTEwZSBsZWdhY3ktdHJ1bmsKKzcwNzQgYjJhMWM5OWNhNjQyYjk5M2E4ZDNjNTEzNTZjOTk5MjhmMzY0ZTgxYSBsZWdhY3ktdHJ1bmsKKzcwNzUgZDM2MjUwYWVmYjgyNTI2NzRjMmJmYjIwZTM2N2Q4MGU4MGE2OGQ2MSBsZWdhY3ktdHJ1bmsKKzcwNzYgN2Q1NmI0OTZjN2RjMjFjZGQxZDE3OTY0MDNkMjBkY2FiYjMwMzY1OSBsZWdhY3ktdHJ1bmsKKzcwNzcgN2M2ODAyZDg2MjBmNDJlN2E1MjYxZGJmMDg0MzgzMGI1MzQyNTk1MyBsZWdhY3ktdHJ1bmsKKzcwNzggNWM3NDFkMmQ5N2Y1YjE0NTQ5NDdmOGY5NDkwNjlmM2VmZDA2NGUwMiBsZWdhY3ktdHJ1bmsKKzcwNzkgMjM2ODM1M2Q5ODg3NTMwMTk3ZTNhYTJhMzJhYWU3MzRhMmExY2JkMiBsZWdhY3ktdHJ1bmsKKzcwODAgYjk4YjQ2ZGQ0MzY3ZTI3OTYwMTk3OGExOTU5Yjc3N2U3NjRjMTljNiBsZWdhY3ktdHJ1bmsKKzcwODEgNzM5Yjg0ODBmMWFjMjcwNmE2YjJlMjVkYTgwZGZhZGEwOGUzNzU4NiBsZWdhY3ktdHJ1bmsKKzcwODIgMzNhOGU2NWVlZjIzMDkwMDAxMDU0NTc5MTY0MjdkODU1NzRiMGRhNSBsZWdhY3ktdHJ1bmsKKzcwODMgM2VlODdkMDgyMTQ3YzE2NDNiYmVmMDQzYWU5YzNjOTRlNjkzYzMzMyBsZWdhY3ktdHJ1bmsKKzcwODQgNTNlZjViNTFhNDhiNGUwZTcwMmY2ZDJjNGI4YmI5NzRmZTQ4NjVmZiBsZWdhY3ktdHJ1bmsKKzcwODUgYmI0MDk0ZmY3YmRmZWQ0Y2NjM2M1MWQ0N2Y1ODNiYjUyY2QwYTNjOSBsZWdhY3ktdHJ1bmsKKzcwODYgY2JjNjY5ZmUzNzBhYjA1YjVlNDZmYTQyYmExYzJlOWVhMzdiZjBhNyBsZWdhY3ktdHJ1bmsKKzcwODcgNGRlMDVjYmY1YWQxOTg3ZjdhM2E0MjJkZDUxMjhmNTE4ZDE5OTBjNiBsZWdhY3ktdHJ1bmsKKzcwODggMTMyMTExMmU5ZTNhNGNlODNjNDFlMzU2YTY4MzA1YTNmNTcyYWRmMiBsZWdhY3ktdHJ1bmsKKzcwODkgNjgzMDc2NDMyYjdmOWRhZTZkYTg0NWNkMzViZWE1ZDEwNTRmNjMxMCBsZWdhY3ktdHJ1bmsKKzcwOTAgODc2MTc3MDFkNzIxZTcyZDc3MWJjMmVlODkwYmZmMDM2OWI3N2ViZCBsZWdhY3ktdHJ1bmsKKzcwOTEgOWNlZjk2OWM0NWU0NTA2MWIzYjgyMzUwZmQ1Mzg5OTg0OTBlY2U4NSBsZWdhY3ktdHJ1bmsKKzcwOTIgODc5OTlkYzRkNzk4MDAxOWMyMzA1YTg5YTAzYTljY2IxOWViZDMwNCBsZWdhY3ktdHJ1bmsKKzcwOTMgMDZjN2M3ZGU2OTc2ODk3YjNkMWE0Y2ZiYzEzNzY1M2NhYTM0NDI2YSBsZWdhY3ktdHJ1bmsKKzcwOTQgYzNjYTAwNjU1NGQ0NDRhYzY2NDkyMWZjODM0NjgxYTZjN2YwMjlhOCBsZWdhY3ktdHJ1bmsKKzcwOTUgOThjMDhmMGM0YTJlZDZiYzllMjUzNzAzZDNkYzVhNzA0MGE1NWRkNCBsZWdhY3ktdHJ1bmsKKzcwOTYgYTJmMTcxY2UyNWY4MTA1ZmViMDZiNGE0OGZmYTZkMThkNDFiNWY4OSBsZWdhY3ktdHJ1bmsKKzcwOTcgNjhiMjhiOGNhMDc3MGU0YTU2YjJlYWIxNjI2Yzg2MDc1MTA2MTJhOCBsZWdhY3ktdHJ1bmsKKzcwOTggMWZhYjk4MTQ2NWM4YmVkNGY0MzRhMjk5NDkxMzVhMzQ3MTczNWNjOSBsZWdhY3ktdHJ1bmsKKzcwOTkgYjExZDk2YzgwNzVjNTc0MmRjYmY3NmQ0NjQ3ZTRkMzk1ODMwNDQ5ZiBsZWdhY3ktdHJ1bmsKKzcxMDAgMjAyNjAyZmFlZmM3ODMyZWViY2QxMjkyMTI5MjBjMDIyNzBmMGE5OCBsZWdhY3ktdHJ1bmsKKzcxMDEgOTRjZTNlMDFjMzBjYzMwMGRiODdhYmE3MTRhZGJhNGYxYmU4ZDNhNSBsZWdhY3ktdHJ1bmsKKzcxMDIgNmI3NjU0NTNiMDQxMGUxMWIyYTc1MTc0ZjE3ZmU1MGEzN2Q1ZWU3MCBsZWdhY3ktdHJ1bmsKKzcxMDMgN2RmNWQ0Y2Y4Mjc3OGE0Mjc2ODA2NmQ5N2M0MzMwYjc0N2U0NGZjYyBsZWdhY3ktdHJ1bmsKKzcxMDQgZmYyNjg3MzI2OGE4NDJjZGI2MDMzMjYyYzI4YTE4YjY0ZmZiYzdjNyBsZWdhY3ktdHJ1bmsKKzcxMDUgMDQ1ZWQ4MzBjMDM1YTBkNTNhZWRkOTdiNWNiZGI5ZDMwMjE0ZjQ4NiBsZWdhY3ktdHJ1bmsKKzcxMDYgMjY0MmZmY2FjMmI0ZGNjMGIxMTRiNGQ4Y2ZhNzM2YjM4NjZlZWQwZSBsZWdhY3ktdHJ1bmsKKzcxMDcgYzhkMjQ3ZmY4ZDJmODNiNDI4NGJmYzA2ZWI4MzQwODlkNWMyZTJmZSBsZWdhY3ktdHJ1bmsKKzcxMDggM2YxMGY5OThhNTg3MWRjYzg1ZTQzZDlkNzVjZDE2OWU4N2ViZDljOCBsZWdhY3ktdHJ1bmsKKzcxMDkgOWZhY2JhYjE1MmNkYWIwZWNhYmI4MTgyYTRmMTU2MTI0MzliMTRlZCBsZWdhY3ktdHJ1bmsKKzcxMTAgNDk3NDVkZGI0ZjY5OGI1YmY5ZTNiODg0MDJlMjU1YzhkYzIwZDEzMyBsZWdhY3ktdHJ1bmsKKzcxMTEgYmQyODk0NWY3NTJiYjY0MGMxNjMwMDY2ZGUyY2I0NDliZDc5NTFjMSBsZWdhY3ktdHJ1bmsKKzcxMTIgZjUyYzJhYTA2MWY4YzYxM2Q1Yjc5NDY0ZjZiZDJhZWY0Y2M2ZDU5YyBsZWdhY3ktdHJ1bmsKKzcxMTMgNWY3ZDI0NmJiZWI3YjZlYjBiMjlmZTU5Nzc4MjA2ZDQwYzA5OTgxYSBsZWdhY3ktdHJ1bmsKKzcxMTQgOTdlYzlkZmJiMmI2ZTRhZTgwZTU1NjQ0N2ZkODkxMTA1MDRmNzYxYiBsZWdhY3ktdHJ1bmsKKzcxMTUgMzRkYjlhMjFiZmIxZDQ4MmNhZjE5NmJlZmVhOTQ2N2U4Nzc1OTNjNyBsZWdhY3ktdHJ1bmsKKzcxMTYgNWY4ZjYwNWFmMzM4NGQ1MzcwNmI3MjBjYTI2YzA0OGM3N2I0NmZmNSBsZWdhY3ktdHJ1bmsKKzcxMTcgNDM1OWU4ZDM4OWU2ZmQ4NmM0M2VmN2IxY2M0ZjE4YmQ3NzhjMjk2MSBsZWdhY3ktdHJ1bmsKKzcxMTggOGQ5MDlhZTFmMDk5NjRlY2I0YmQ4NzFmYWUwNTc1NjhjNmY0MTZkNCBsZWdhY3ktdHJ1bmsKKzcxMTkgZjRiYTllMDdkOWJmMmY0MDVlNmUzZjNiNmU1MmZlOGQ5NTZkMGNhNSBsZWdhY3ktdHJ1bmsKKzcxMjAgNjhjNGIwNmNmZmY3MDk1NmI0NGJhNzg1MjlhNTUyNTY2OTJhNjQyZiBsZWdhY3ktdHJ1bmsKKzcxMjEgZjRhNjBmMjYxZmJiNjZlNDUzNzc4NDgxOTA0N2FhNGZiZjI1Y2RkYiBsZWdhY3ktdHJ1bmsKKzcxMjIgYWI2Mzc0MjY4Y2FhOTI0NmZkNGM4NmU3ODgwOWFiMjBiZGJhZDIzNCBsZWdhY3ktdHJ1bmsKKzcxMjMgNmRkODUxNDQ1YzdkYzBiMWM4YmY5ZDBiYmJjYWQxZmFlYzE4ZjVmYiBsZWdhY3ktdHJ1bmsKKzcxMjQgZGFiMDFiODRhZmU2NjRkMGQ0M2IxYWMxNDMzMGY1ZDY0YTVkMGZhMyBsZWdhY3ktdHJ1bmsKKzcxMjUgMjc0Mzc1OWUzOTc5N2ZhN2FiMDM1YjczYjg5N2YwYzNjNWIyZmQxMSBsZWdhY3ktdHJ1bmsKKzcxMjYgNmVmZmQxMGU3MjMzYTY4NTljODVkMzhlMWU4MDhiOGJlNmJmNzE4MCBsZWdhY3ktdHJ1bmsKKzcxMjcgM2Q4N2NiMWIzZDE3YWQ3MThhM2Y2ZWM5MzhlZDE2NTJkMGZlZWM3NCBsZWdhY3ktdHJ1bmsKKzcxMjggM2I3Y2Q4M2I2MDJkNmZkODM4MGExNDVkNWIxMTc3MTliYWE3ZDA4YSBsZWdhY3ktdHJ1bmsKKzcxMjkgZGY4MTg1NmRiNThjNTQzN2QyNzY5NzQ3ZGQ5NGI1MWVkZjlhZTdmNyBsZWdhY3ktdHJ1bmsKKzcxMzAgYzc1YTJmMmRjMjIwYTU3NzY4OGU2MWIxMGQ3NzYxNDU4MzRlN2Q0ZCBsZWdhY3ktdHJ1bmsKKzcxMzEgMTg2YzJhZDRhYmYzM2M5MGY2ZTY2ZjhjNzBiNjkzZTlkYzc1OTIxNyBsZWdhY3ktdHJ1bmsKKzcxMzIgZGRiY2MwMzg5MTZiMmNmNTNhYWVmMzZkMmEzZTZhOTI2NGI4Y2ExMSBsZWdhY3ktdHJ1bmsKKzcxMzMgMGRkZGY0OWVhNDE2ZjNiZWJjMDYwOGU0OTNmYTViNDIxYzJlODg2OSBsZWdhY3ktdHJ1bmsKKzcxMzQgZTk3NTI4NDgyYmM2NzQyOTkwODE1Mjk1MzM1ODgzZDQ1NjBmMDA3YSBsZWdhY3ktdHJ1bmsKKzcxMzUgOGZiNTcyZTFiMWJhMTcxZTE3NDNiMTVjZTZiYzA5NGE3ZmUzYjJlYiBsZWdhY3ktdHJ1bmsKKzcxMzYgZDUwMjNkMGM1NTAyMzczNjQ4YmE1ZTg0ZWUzNGViNTE1NWY1Y2FlNSBsZWdhY3ktdHJ1bmsKKzcxMzcgMjI3ODUxMDhmMWVhMTNkNzRmNzU2OTMzMzNiNzgyZmEwOWRmNWMyMCBsZWdhY3ktdHJ1bmsKKzcxMzggNGVlNGI4YmI2N2M3NDQyNzBjZWQ0NGI1YmE0ZjNhZjU3MWM1OGIyZiBsZWdhY3ktdHJ1bmsKKzcxMzkgZGNiMmY1ZDM0YWU4MDI2M2ZlMzQxODhjMmUzZjlhNjYxMTczZTNlNiBsZWdhY3ktdHJ1bmsKKzcxNDAgZWQzNTA2N2UzNzkzZTBmYzNhODA1YTMxN2UyNmZkOWIyNDI1YzAzMCBsZWdhY3ktdHJ1bmsKKzcxNDEgMjliYzI4ZWNhM2U5ZWQ1NTUzZDQ5YTU3Y2QzYzc1M2VlYzQ5NmNlYSBsZWdhY3ktdHJ1bmsKKzcxNDIgYzQyMzc5ZTQ2NTNiYThjZWU5MjFhM2M0NzlkNGE1ZGU2MTg1YzdmMiBsZWdhY3ktdHJ1bmsKKzcxNDMgOTUyMDRhYTJmNDUyMmE1Y2M4Y2Q3ODU2ODE3MWQ5NzA3OTU3Y2I4ZCBsZWdhY3ktdHJ1bmsKKzcxNDQgZDUwMWRhZjBhMmY2NTVmZmRiMjk5NTk5NTQyODc0MDNhNjQwMDcwMiBsZWdhY3ktdHJ1bmsKKzcxNDUgNzkwMWZlNzlmNmFhOGEyNDkyYTA2MWJmN2NmNWYyNDNjNjBlNWVmNCBsZWdhY3ktdHJ1bmsKKzcxNDYgODJkZjEwNDBkZjBmOGE2Y2MwODE0N2FiYjlmMzBmNjA3ODcyNTg0NCBsZWdhY3ktdHJ1bmsKKzcxNDcgNWI1MzI2OGY1NDdhMzlkYjE3NzY5MTA5YTg1MDM1MTY5NDM1ZjllNCBsZWdhY3ktdHJ1bmsKKzcxNDggYTNjZGM4MTY0OTkwZTM0ZTM0M2I4ZmZhOTIwMTY1NTBkYmM4MjRmOSBsZWdhY3ktdHJ1bmsKKzcxNDkgYjQzZmY4OWZjNTBkOTVjMjI3YjU2YWRjODk4M2Y0ODM4YzM3ZDhjYyBsZWdhY3ktdHJ1bmsKKzcxNTAgMGMwMWEyM2M3ZGNkYmFiODEyOTcyM2Y4Nzg4OGNjN2M3YmE5ZWNmMCBsZWdhY3ktdHJ1bmsKKzcxNTEgMTkzOTUwYmM5ZDhmN2Y0YTVmNjVmMDc1YWZlMDgxZmQyYzQ5YmJmYSBsZWdhY3ktdHJ1bmsKKzcxNTIgYjgyOGViNTBkYmQ1MDYzOGU2ZmMyOTk5ZWY2NzI5ZTMxM2Q5MzJmOSBsZWdhY3ktdHJ1bmsKKzcxNTMgMTU5Mjk3MGM3ODliMDkyYzU5ZGE4ZWEwODJjNGI3YjliODgzZWEyMSBsZWdhY3ktdHJ1bmsKKzcxNTQgODliMTYxMjZkNGUyMmQxZjEyNjI4OGZhYzQzNDY3MjMxMGRkYTM5NyBsZWdhY3ktdHJ1bmsKKzcxNTUgMTBjMWI4ZjM5MDJmY2IyOGFjZWY3YmQ4MTE2YmVlNjcwZmZhZDgyMiBsZWdhY3ktdHJ1bmsKKzcxNTYgZjljNWEzMTNhZmQ5MzI1MDJmY2QwY2ZkZTMzMGE5MWMyZDQyM2YwMyBsZWdhY3ktdHJ1bmsKKzcxNTcgMTljOGU2MWNhZDJkODM1YWU5ZTJmZmZiODJhYmEzNWJkM2QzNTMxYiBsZWdhY3ktdHJ1bmsKKzcxNTggMzFiZDBhZDAyNzJkNWEwOTU0NTg0NTZmYWQ1MzNiNWM5NjEwMzgwNSBsZWdhY3ktdHJ1bmsKKzcxNTkgZDgwMDg0MWI1N2E4YzdlZjg5MDhjNTE3MjRlOWQwMzFmZDQyYzUyNCBsZWdhY3ktdHJ1bmsKKzcxNjAgZDdkMDVlMjM0NGQ3MzZkODk2Yzk5OWJjZTE4OTNhZTc2NDVlMDA1NCBsZWdhY3ktdHJ1bmsKKzcxNjEgYzA0NmVmYWYxYmQyYzQ2ZTYzMTg4NmM1ZDBiM2NmNzQzZmQxMDE0YiBsZWdhY3ktdHJ1bmsKKzcxNjIgZDEyMjc1M2U1YjlmNjAzYzg2MjZjMzYzZTY3MjFmOGMxY2ZhMDAxNiBsZWdhY3ktdHJ1bmsKKzcxNjMgMDFmNGVhMDVhNzY2M2VjMTJiMDM4MjE4YTY0MGUwZWYwMTllYzA3NiBsZWdhY3ktdHJ1bmsKKzcxNjQgOGY1MGJlYzUwNjhlNmVmZmM4MDVjOTNlYmNiZGEwMjg4OGRmNzY1MSBsZWdhY3ktdHJ1bmsKKzcxNjUgYzJiODMxZjkyM2MyZjAzZmQ4ZDViNDRlMzQwYTdkODkxZTNiZTI4NyBsZWdhY3ktdHJ1bmsKKzcxNjYgODAxNWM1NTQ5MzA5ODRlYWI5ZjRkM2NhMTMyY2QwYmY5MzI5NjAwNyBsZWdhY3ktdHJ1bmsKKzcxNjcgY2I0MDViOTY5NmQ0ODM2NTcyZjMzYzliYjg3NjgyYzkwODY0MmI1MyBsZWdhY3ktdHJ1bmsKKzcxNjggZmFkZGY2ZDU1YWYwYTRkNDAyMGZmNDdiMmZhNjVlMjg4OGM5ZDBjNiBsZWdhY3ktdHJ1bmsKKzcxNjkgMmMxMDM5NTkyMWUxZDBiYmIxYjg4NmZlOTVhMzMyMzA5NjQ1Y2Q4NyBsZWdhY3ktdHJ1bmsKKzcxNzAgZjEyYjFkNGQ2YTliYjg4MmY0NmU4NjQyOTdlYzhjYmQ2ODBhNTFlYSBsZWdhY3ktdHJ1bmsKKzcxNzEgZGUyN2RhNWYyMmYxNzUzNWY3ZDY4Y2U4MDVlZjRmODViYjBlZjY0OSBsZWdhY3ktdHJ1bmsKKzcxNzIgMWYzNjhmYjNlMWY3ODZiNDQ2ZDVmN2MxM2Y3MGYyNmZkNTFhODFlNSBsZWdhY3ktdHJ1bmsKKzcxNzMgZWU5OGU0NGQ0Zjg1NTFkNWUyYzdhMGFlODEzY2ZkNDM0NWQ5MDI2MCBsZWdhY3ktdHJ1bmsKKzcxNzQgYTE2OTRlOTViY2JhNzkyMGU3OWYwMzk3N2M4ZGFmOTgxNzcxOWNmMiBsZWdhY3ktdHJ1bmsKKzcxNzUgODI1MDM4ZDk4YWI2MjJiZDA3Njk1MmFjOTkzZTc0OWY3MzU0NWU5ZSBsZWdhY3ktdHJ1bmsKKzcxNzYgOGE3NWI4YmYxNTIxODc1NGZiY2E4M2MzMDc5YjdjMDJlMTdhZDA1NyBsZWdhY3ktdHJ1bmsKKzcxNzcgZTVlNTg3OTQwNDBmNDU0MzQwMTk3MjNlYmJlYzU1MDc0ODk1MThkNyBsZWdhY3ktdHJ1bmsKKzcxNzggZTBiYjFkYWMyZGJmNTU2Mjk3NTRkODdlYWZjNTU5ZmEwYjBhYTFhNyBsZWdhY3ktdHJ1bmsKKzcxNzkgNmMwZTM1Y2YwZjg1YmQ2MjNhZTA1Zjc2ZTRlMGQwNzc3ZTk0YWJmMiBsZWdhY3ktdHJ1bmsKKzcxODAgY2M1MjUxODJiYmIxZjM2ZWVjMWMyMDkxYmRhYTNjZmM5MjExMmY1ZSBsZWdhY3ktdHJ1bmsKKzcxODEgOTc4NTExNDMyNmFiNzUyNTJkNTRhZTJjZTg2YTkwODNkNDU3ZGNjMiBsZWdhY3ktdHJ1bmsKKzcxODIgMmRkMjg1Nzk0ZDY3NDMzMDgzNmE1OTM3OWU0ZGVlYjdiMzllMTRkYSBsZWdhY3ktdHJ1bmsKKzcxODMgNzc1YTdkMGMyOTYwOWZhZmQ4NTE2NDk4NjVkN2Q3MTVhM2M3NDJhNiBsZWdhY3ktdHJ1bmsKKzcxODQgNDM4OTQ5YmI0NTA4MDUwNjNjMjM1OGQ3MzNmOWM2YTY4YTZkZTAwNCBsZWdhY3ktdHJ1bmsKKzcxODUgN2I5YTYxNjYyODFhMTJjM2FkM2EyN2E5NTI3ZTJhMjFkYzAwZmNmYyBsZWdhY3ktdHJ1bmsKKzcxODYgZDlmZjZmODNhMTZhZDBhMTUzMWI2MzEwZTNjNjhiYjE4NGRlMjcxNyBsZWdhY3ktdHJ1bmsKKzcxODcgMDI1M2VmMjY3YjY4YzZjYTc4ODhmNTQxM2M4YjJhOWJjNWFjYTMxZiBsZWdhY3ktdHJ1bmsKKzcxODggNmNjZjVkYmE4YjBiYjZiNzcyN2NkNzE5Y2U5MDZmNGM5OWE3NzQwOCBsZWdhY3ktdHJ1bmsKKzcxODkgMGM2YzY5YjBkM2U5YzY5ZmE0OTgyZDFmY2FmYmFmMjA0OGY5YTJkMiBsZWdhY3ktdHJ1bmsKKzcxOTAgNjc3NTlkZmU2ZWU4YzdkYTZmMjFmZTYwY2RjYzBkODI1YjNhZGYyNSBsZWdhY3ktdHJ1bmsKKzcxOTEgYThhNTQ3NDkwYTEyN2NkZWQzZjdkNDEyNGNkNGQ5MzU4YTJhMDUyMiBsZWdhY3ktdHJ1bmsKKzcxOTIgMTIxNTRkMDkxMzE2NzRmZTlkZWFjNzk1NzZmNDk5M2RjZTcwYWQyNiBsZWdhY3ktdHJ1bmsKKzcxOTMgMTgzNDY1NGJlYmUzMjEyZTU2ODRlOWFlNzRiMzhhZGU1ZDA1N2Y4NyBsZWdhY3ktdHJ1bmsKKzcxOTQgNzZiYjIwOTlkNjE4MjlmNjg3MGQ0YTI1N2EyNDViZmQ1ZWMyZjYzNCBsZWdhY3ktdHJ1bmsKKzcxOTUgOTA4NTdmYjU3Mzk3MDZlMGMwMGE1NjBiNjc0ZDA0ZGUzMjk3YzFkZCBsZWdhY3ktdHJ1bmsKKzcxOTYgYjIwMDllZDE1MmZhNWIzYmZmNzU0ZjU0YjhjMTYzOWU1ZmE2NzdlMiBsZWdhY3ktdHJ1bmsKKzcxOTcgYzA3ZTVjNDU1NTc2ZGFhZDE5YTlkYjFhM2ZjOGRhMjFmMTc5YmNjOCBsZWdhY3ktdHJ1bmsKKzcxOTggNDM3NDRiZTI0MzNmNThmMDNiN2EzNzE5YTJhOGY5NTFkY2ZlMzdkMyBsZWdhY3ktdHJ1bmsKKzcxOTkgZGUwMWM2NmY1ZmE1OGJmMjg1ZDNlOTNmODIwNDNlNzU0ODY4YTc5NyBsZWdhY3ktdHJ1bmsKKzcyMDAgODY2OWVkYjFkOWM1NjU4N2I1NDIzYjVmNDAyZjRmZDgwYmFlOGVjMiBsZWdhY3ktdHJ1bmsKKzcyMDEgZjdhOTkxNjFkZjkyYWExYWE0OWMzOTEzOTgyOGZlYjFlMWY5YmU0MiBsZWdhY3ktdHJ1bmsKKzcyMDIgOWFjOWVhODQ4ZDdkYTc3OGNiMjFhNzQ2NWM0MzBkNTllY2Q2ZjI4NiBsZWdhY3ktdHJ1bmsKKzcyMDMgYjIxOGYyOTRiNzI2YWJjMDMyMzkyODllZGUwNGJhN2RkNTFjOTI1NCBsZWdhY3ktdHJ1bmsKKzcyMDQgZTI3ZmEyYTNmNTI2NTAxOTIwOWEwZTNiOWIzY2UzNzQ4ZDczZjRjYyBsZWdhY3ktdHJ1bmsKKzcyMDUgNjJjZjdkNTg5MzAwZWY5ZmM1NWEyY2MyZjNiZTcyZWIyMjlmNmNkNCBsZWdhY3ktdHJ1bmsKKzcyMDYgMDdmMGYyMTM2M2U2NDgyMTlmOGUyNmRlYjhjYWZjNjc3NGVhNTJjYyBsZWdhY3ktdHJ1bmsKKzcyMDcgZDM2NzAxNDIwMGJiNWI4MDExN2FiY2Y1Yjk4ZTFlMGM4YzMwZWQzYSBsZWdhY3ktdHJ1bmsKKzcyMDggM2M3ODEyYmZhMWE0YWFhYjg2NzYwZGJjZGIwYjdlMmQ4MDYxMjlhMiBsZWdhY3ktdHJ1bmsKKzcyMDkgM2RiNDIzNTE1NjI2YzJmYmE3MTMyYTcwNDVjYzI4MGVmZGM4MjEyOCBsZWdhY3ktdHJ1bmsKKzcyMTAgNGEzZjQ1YjM0NzFhYzU0ZTVkNTMwNWM4OTY4MWFhMGJiZjM2NDcyMyBsZWdhY3ktdHJ1bmsKKzcyMTEgOTRhZDU2ZWY1MDczMzU5ODQ3ZTM2NjJmNjhkOGZiMmUzZDQ2MzRjMiBsZWdhY3ktdHJ1bmsKKzcyMTIgNDI2Zjg3YzQ2NWEwMjY2ZjMxNDU0NGQyNGFiNWU3ZDA4ZGU4Y2Y3OSBsZWdhY3ktdHJ1bmsKKzcyMTMgOGVkYjU3YzMzNDg3YmFlZDkzYjkwNTdlZDdhYzg4MDUzMjE2MjdmYSBsZWdhY3ktdHJ1bmsKKzcyMTQgYjAxNjgyODUxYTYzMzY3N2FmN2E4NDEzY2M4YmU0ZGFlNzkwZTc0MiBsZWdhY3ktdHJ1bmsKKzcyMTUgMDYyZTg4NjA4YjU1NTllNjAxY2RjZDFjNDU1MjgzM2JlMjZkOTAzNSBsZWdhY3ktdHJ1bmsKKzcyMTYgYTQ0MDIwMDhjNTY5ZGQ4ZWY3ODhhNTZkOWE4MTc4ZWUzMTZlYmE3NyBsZWdhY3ktdHJ1bmsKKzcyMTcgZWQwMWVjNDNlYjMwZmY0M2Y4YmU2N2Y4N2E2OGVmYTRiYzE5NjVkNiBsZWdhY3ktdHJ1bmsKKzcyMTggMzU3ZDQ1NDQwODVhMmE2ZDFkMzM4YmJmNjJhZDhjMDVlOGU3OTM0YyBsZWdhY3ktdHJ1bmsKKzcyMTkgZTA1MjNmMmQ0MTYzOWM5MDRhYTEyOWE0ZWI4ZWFiNDUyNjNlZWNkZiBsZWdhY3ktdHJ1bmsKKzcyMjAgN2FjZGY1OWYzMWM1ZWMxY2ZmYjdkOGNlNmNjNmExZmI4MDBmNGQ3MSBsZWdhY3ktdHJ1bmsKKzcyMjEgMmNiZGU1ZmM0YjE5YmUxOTAwOTExZmQwNDdkZWE0NjYwMzlhMTYzMiBsZWdhY3ktdHJ1bmsKKzcyMjIgNWIwNWJjYmQ0NTQyYzY0MTdkYjgxZGIwMGEzODVkNTQ4NzcwYTVjOSBsZWdhY3ktdHJ1bmsKKzcyMjMgZWExMjY1ZjI2YjMzMjc0MDk1ZGQyY2MzN2Y1ZDI5NjQ5ODJhYTc5NCBsZWdhY3ktdHJ1bmsKKzcyMjQgZGRlYTY5ZjkwNzFiYTgyZDliOTg5NGU5MjQ3NTcxY2FmZTZmNjUzMSBsZWdhY3ktdHJ1bmsKKzcyMjUgZmZmY2M1MmNkYzFlODZmZTNhOWEzZmY3MThiNjlmNmJkMWRhY2JhNyBsZWdhY3ktdHJ1bmsKKzcyMjYgN2FiODM1Zjg3Zjg2ZDIxY2RiYzdiNzQwYmY0ZmM2MmI3MGRlNjgwNiBsZWdhY3ktdHJ1bmsKKzcyMjcgNzM2N2ZiMTA3MTA4M2VlMzM2YjA1MjJmOWNjYjIzMWFjOGY2NTljNCBsZWdhY3ktdHJ1bmsKKzcyMjggN2IxZTc4NGUyMGEwZWNkNTBlZjU1MGQwZDllNjE4N2ViNDc4NmViZiBsZWdhY3ktdHJ1bmsKKzcyMjkgMzA3MDNhNjU2ZDEzNDVjZGZmZjQ4Y2RhYzYxNDg5MGYyZDgxYjhlZiBsZWdhY3ktdHJ1bmsKKzcyMzAgMWRlOTZjNTcyYjAyYmM0YWJlODJkNGExOGQyZDE0ZmYxY2M0ODczNSBsZWdhY3ktdHJ1bmsKKzcyMzEgMzAxZDdmNmFjZjBhNmQwMWVkODY1NzIxZGU0ZjVjMmY3NDA0YTlkMiBsZWdhY3ktdHJ1bmsKKzcyMzIgZTFmMTcyNWNhZTZkYTgzMDAxYTNiYTBhNDMzMDljYThkOTI4ZjM5MyBsZWdhY3ktdHJ1bmsKKzcyMzMgNjA1ZmJhMDJlMTk1MDc3NjI0MzdhMTQ2Zjc4OTE2MjAyZWUyOGE0NCBsZWdhY3ktdHJ1bmsKKzcyMzQgM2ZjNjA0MmEyYWNiODc0YTJkZGQyMjU1NTdiZDAzMjYwNzMzN2I4ZCBsZWdhY3ktdHJ1bmsKKzcyMzUgNWIyMmUzMmVhYTE3NjRlM2Y2OTE2MzVlZjUzMmQ0MzdlMWI4MDc0MCBsZWdhY3ktdHJ1bmsKKzcyMzYgZDdlZWE2OTRjZDNhMDRlNmU2NTBmMDExNWM4YzJiZmRmZjQ1YWM2ZCBsZWdhY3ktdHJ1bmsKKzcyMzcgZjkyNjI2M2ZiNjU0YzI5Yjg3OGY5YTgyZGE4YjgwODY0MTJkOTE0YyBsZWdhY3ktdHJ1bmsKKzcyMzggMzg2ODlhY2VhZTdiNjBjNWI4YWM2YmZkNDBmNDdlM2QzY2ZmODI0YSBsZWdhY3ktdHJ1bmsKKzcyMzkgODg3MTRmYmY5YTA2MjZhYTYwY2QzNDJkYTgzNWQwYmNlNzdmMWQ5ZiBsZWdhY3ktdHJ1bmsKKzcyNDAgZjhiMzZjMGVjMTE0YWVkZGIzM2QzN2I5NGNkZDIyZTRlMjAyNjVhOCBsZWdhY3ktdHJ1bmsKKzcyNDEgOTYwNGQ2Nzg0Njc1YzJkZDhlNTAyZTRlMWU0YTAwMWRlOGEyMzRmMyBsZWdhY3ktdHJ1bmsKKzcyNDIgNjNkYWUyNzNiMDdkODU5MzE1NDRkOGY0NmRkMWY1ZDE4ZWRhYTJmYSBsZWdhY3ktdHJ1bmsKKzcyNDMgZjdhNjFjNmE2NWMzNzk3NDcxZTY5NDZjYjFlMmM2NWQyOTMyNzQyNCBsZWdhY3ktdHJ1bmsKKzcyNDQgZWVjYmNjNDhiMGU5NzZjMmJmNjEyM2MxMmZiNjgxN2ViODhiNDE0MCBsZWdhY3ktdHJ1bmsKKzcyNDUgNzIxMDhmYWE1NmJmMTQ4NzBkN2E3ZTY1OGQ1M2YzMWE0MTY1MjA5NCBsZWdhY3ktdHJ1bmsKKzcyNDYgNDcxMDcwMTY5MGMxYzZiZGI0MzQzMzg0NzZlMTQyZGRiMDQ1ZDFlZCBsZWdhY3ktdHJ1bmsKKzcyNDcgYjg1ZjEwYWU0ODU3ZjExNTFjZWZjZWE1Mzc5NWNiYTA0MTUyNzUzMyBsZWdhY3ktdHJ1bmsKKzcyNDggZDU1ZjMxMzM4ZmRjZjg1M2NjODI1ZTUxZDhmOWVmMjY3NmFlYzQ4MiBsZWdhY3ktdHJ1bmsKKzcyNDkgOWU0OGFiYmVlNmM1YzA1NDE5MWZiMjAzMmZhN2Q5NGEyZjcxZTM3ZiBsZWdhY3ktdHJ1bmsKKzcyNTAgMGQwYzQxM2I2ZjI1Mzk3NTY4ODZjMDVlZTlmZjU2YWUxMDIxYjg2NiBsZWdhY3ktdHJ1bmsKKzcyNTEgNGRlOGI4NmJhMjU1OTFhNDA1OThhZGRmZTVkNDM2MTM4NjcwMzMzMiBsZWdhY3ktdHJ1bmsKKzcyNTIgNTBkNmRjNDU4YWEyZmJiZmY2ZjI4NDJkY2NjMzc3ODIxYTRiOGZmZSBsZWdhY3ktdHJ1bmsKKzcyNTMgMWNjYWE0NDFkMDgzZjAwNDJjMTgxYzBmZjM1M2E5ZjMwNDIyNWNhYyBsZWdhY3ktdHJ1bmsKKzcyNTQgYTU3MWM3ZjA4OTkxNmRjYmM3NWNhM2E0ZDY1MzlhODE5Y2Q0OTA3ZiBsZWdhY3ktdHJ1bmsKKzcyNTUgYWJlZjUwMDZmODRiZGM3MDZiNzMzMjZjYzEyZDViYWYzNTM3ZWZjNiBsZWdhY3ktdHJ1bmsKKzcyNTYgNzU2MmE2ZGY5MWZiNGJlYmM2NDVhZGE1NzFlNzY3ZGRmY2IxYjA1ZSBsZWdhY3ktdHJ1bmsKKzcyNTcgMjQyNmEyMjA2NjRiMThiM2RlNDYxMzE4ZTFjZDQxMDIxYzVjOGU3OCBsZWdhY3ktdHJ1bmsKKzcyNTggZmViYTZkNThkMjA0ODlmMDE2MzhjMWE1Y2RlODc2OGVlZDk5OThlYyBsZWdhY3ktdHJ1bmsKKzcyNTkgZTQzMzYyOTEwYTVlM2UzYzdkNTU5YWZiMTk2MjA5NmEyZWI3MzA0MCBsZWdhY3ktdHJ1bmsKKzcyNjAgOWZjMzgwYjFhNDQ1YWExNGExMmY2NWRiNTc0Mjc0YzA1ODdiOWNhMiBsZWdhY3ktdHJ1bmsKKzcyNjEgMDk0OGYzOWVlOTYwZTQ3ZWI5NzJkM2ZkZDMzZWE4MjkxZDAwYTFmNiBsZWdhY3ktdHJ1bmsKKzcyNjIgZDdlNjY1M2QwODRmNmZiYzBlNzU5MTQyYTdlMjI2MzUxMDJiYjA0OSBsZWdhY3ktdHJ1bmsKKzcyNjMgZjIzMjFlNDIzMDcxN2U1YzU5NzdlODlhMmJkYzcwNzNjYjQ3NDk3MCBsZWdhY3ktdHJ1bmsKKzcyNjQgZDQ1YmE2NGI4MmZkNmJlZjI5NDM0ODI0Yzg5ZWVmOTFkMDg1MmRjNCBsZWdhY3ktdHJ1bmsKKzcyNjUgZjM3NTgyMzE0MTIzMTg1YTA1ZDRlMGEyYjRmOTlkZDNhNzNkYjdmMCBsZWdhY3ktdHJ1bmsKKzcyNjYgYTJmZDgwZWVkMjdmYTE3MmI2MWZmODVmMGZmMjEyMzc1NDYzYTU0NiBsZWdhY3ktdHJ1bmsKKzcyNjcgMGI2YjFiODgyODY2YjYwYTE4YWNiY2RlZTQ0NTI5YjRjNTQxMjY5NiBsZWdhY3ktdHJ1bmsKKzcyNjggYWFiZjRhMDNhNGIwYmJmMWJiYWY0ZWRhODI2Y2MzMTgxZTZhMDMzOCBsZWdhY3ktdHJ1bmsKKzcyNjkgODBjMGNhNDI0NTEwZTc5Y2M0NjI2YjI4ODA0ZWRlYzc1NjBiNDU3MiBsZWdhY3ktdHJ1bmsKKzcyNzAgYjY1MjBjNDVlYjA1NGU3NzA1M2M0NzU5ZWI5NDUxYWEzZDk4MTUxZiBsZWdhY3ktdHJ1bmsKKzcyNzEgYmY3MmE5NGVlOTZiOWIzY2NjYWQwNWNhY2MzN2UwYzUyZDVmNWQxYyBsZWdhY3ktdHJ1bmsKKzcyNzIgNTIyNThiMDIzYWEzMTc4MWJmZTliYjIzMWNiNjhlYWYyYWEzOTE3MiBsZWdhY3ktdHJ1bmsKKzcyNzMgNWRiOWFkNjAzMjZkYzhjMWQ5ODc1YzBjNWEzOWI1NGYyZWVhZWNjNiBsZWdhY3ktdHJ1bmsKKzcyNzQgZTcyYjJlZDM4M2E5OGI0ZmJjMGZhMGM2MjM0NWRmMGY1ODVhNjFkOCBsZWdhY3ktdHJ1bmsKKzcyNzUgZTJhN2ZmNmY0MTg4NzE4ZjMwM2NmNmVlN2Y2NTdiZjkzNDYyOGU1ZSBsZWdhY3ktdHJ1bmsKKzcyNzYgMmQ1ZWUzNzRhNzNiODVkNzMzYzIwNTNiMzFmMGNmMzg1NDc5NjZjMCBsZWdhY3ktdHJ1bmsKKzcyNzcgODY3ZmVkYTAwODQwN2YwZDcxN2E0NzNjNWQ5N2QxNWEyOTdmMTVkNyBsZWdhY3ktdHJ1bmsKKzcyNzggOTk2NWRmNzgyYWZjZjQyYmE3ZmNiZTIwMDc1ZTU5MzdiYTEwZGRiYSBsZWdhY3ktdHJ1bmsKKzcyNzkgYTJjNDI3ZjlkYjAyYjliZjFiOWFkODA5NGNmZGMyYmVjZWU2MjZhOSBsZWdhY3ktdHJ1bmsKKzcyODAgYzcxY2ExNWM4YjU1NWNkOGY0YzRmMWRiNTc4ZDE2YzkzMDk2MGIwNiBsZWdhY3ktdHJ1bmsKKzcyODEgYTNjNDc3MjU5NTA1NDQzMDhiZGY4MmMzYmMzNGFkM2FmMDc5NDJmNyBsZWdhY3ktdHJ1bmsKKzcyODIgOGQyYzhiMDgwNDAxN2Q0MTMxNjU3Y2Y0ZjBiYzhiMGRmMjgwZGY0YyBsZWdhY3ktdHJ1bmsKKzcyODMgMDlkNmM1NzA4OTk5ZTYzMjc4NTEyZTQ4ZDIwMjQwYmVlMWI3ODA5MiBsZWdhY3ktdHJ1bmsKKzcyODQgNmY4YjVjM2NkNmNiMmU1ZjJhNmZlZmFhMTljYWMyZTk4NThkZjhjNCBsZWdhY3ktdHJ1bmsKKzcyODUgMmNiNDY5YTQyMWE5NzgzN2ZkMjVmZTg3ZjQ1NDIxZTM1YjE4NWQ5YiBsZWdhY3ktdHJ1bmsKKzcyODYgOWFlM2NjY2ZhN2NkZTEyOWJkYTU5MzAzNjMzNjJkYzcxNzJkMjNiMiBsZWdhY3ktdHJ1bmsKKzcyODcgZGIyMzBmZWZhNzAyMzk4YjYwNjhiMTM4OTJiZDg4OTk5NmU0MWI0YSBsZWdhY3ktdHJ1bmsKKzcyODggYjZmYWRmMDIzMWFmOWIyNjM5ZjkyNWUwMDQyZjVjZjAwMDc3ODE1NCBsZWdhY3ktdHJ1bmsKKzcyODkgOTgyMTM2MDRmOTQxNGZkNDVjZmFlMjhkODc4YmU1MmQ2ZmIzNzBhYiBsZWdhY3ktdHJ1bmsKKzcyOTAgZmIxOGNlOGMwY2Y2YWJiMDYzZTRhZjQzZjI3MDg0MjY1OWZhNTFhMyBsZWdhY3ktdHJ1bmsKKzcyOTEgYzQ0NTQwZDUyZDEzNjk5MTA3NmFlZDA4YzgwMmVhYTY5N2Y5ZmUzYiBsZWdhY3ktdHJ1bmsKKzcyOTIgMGY3NTE1ZWJlM2JmNGVhZDJkZjA5YjM5ODZhOGI0ZmUxYzk3YzA4ZiBsZWdhY3ktdHJ1bmsKKzcyOTMgNjdhNTIyMWEyZjYwZjkzOWNjM2I0ZmNkYWFjMzQxNmRmOTI1NTUyNCBsZWdhY3ktdHJ1bmsKKzcyOTQgOWJkYTM4YzY3ZjRlYzI1YzBmZjVmMjE4YTc3MzM4ZmJkNzgxN2ViOSBsZWdhY3ktdHJ1bmsKKzcyOTUgZTcyYWMxZGM2MTRmMmEwODYwNDI4NDQ2MTE1ZDM5MmU2Zjg3ZWVhMyBsZWdhY3ktdHJ1bmsKKzcyOTYgMzkxZjA4YTk3NDZiOTZkMmJmNDA1NWVmYzk1ZTNiZWU1YTJmOWZiZiBsZWdhY3ktdHJ1bmsKKzcyOTcgNDRlODZkYWRlYzk0NGJjMTQ5OGIzYWFmODljYzQ1YzUzOGNjYzFjOSBsZWdhY3ktdHJ1bmsKKzcyOTggZjQyYmNhM2Q3YmUyMWQzMGMxNzdiYjkxNTMzNzUxYWU3YjFiMjE5MyBsZWdhY3ktdHJ1bmsKKzcyOTkgODc4M2NmZGM3YzZmOTkzY2JhNDgxMTZhZjg1YzMyZDgzYzAzMjQ2YSBsZWdhY3ktdHJ1bmsKKzczMDAgYjhhOTdhZDVmN2NlZDNhNTQ1MDc0M2IxMTBjOWI0OGFlYmUwODgzMyBsZWdhY3ktdHJ1bmsKKzczMDEgZjNiOTJjOTVlODViMzYyNmEwZWViOGMzNDlmYjAyNGEwNmYzNmQxYiBsZWdhY3ktdHJ1bmsKKzczMDIgYmU0ODFmM2FkYTBiZGFhMzA4Yzg1NTgyMzA5YWM1ODQ5Y2ZhZjNmZSBsZWdhY3ktdHJ1bmsKKzczMDMgOTdhZTg0NjZkMWM0MjA3NGUyMTlkNWUzYWRjMTgyZjkwZTI3NzFjYyBsZWdhY3ktdHJ1bmsKKzczMDQgNWEyZTcyNTJjODkwMmQ0ZDZkMTg2NjRkNjQwYWE2MWVjNmMxODdkOCBsZWdhY3ktdHJ1bmsKKzczMDUgNDM0MWZmNWM2OTdjZmVlMmE1ZDAzYWUxNzFmMTJiODhlNmZmMjNiZiBsZWdhY3ktdHJ1bmsKKzczMDYgZDg3ZTg3ODUzOTU4ZjNlOWU5M2VmNzY3NTg0ODhiMzJiMmJhZGY1OSBsZWdhY3ktdHJ1bmsKKzczMDcgNTBmNDk4M2I2Yjc5ZDE5MjIyMTkzODlhY2JkZjIxZTA2N2QzOWM0MCBsZWdhY3ktdHJ1bmsKKzczMDggMzM5ZDBjNDlmMGI1NzM4YWY0MjI5MzY2NzY0YjljYmQwODg3MjhlMSBsZWdhY3ktdHJ1bmsKKzczMDkgYzdlOTlhYjYyN2YzYjc0MDI5NjliYjgxNGMzMzAyYjUzMzcxZjEwNyBsZWdhY3ktdHJ1bmsKKzczMTAgZTA1NDgwZGI3MWFiMTEzOGRlMzViMzRjZDJmOGVkNWQ1MGI0ZGY5ZiBsZWdhY3ktdHJ1bmsKKzczMTEgYWNiMDUwMWQ5M2VmOWQzMGJmMDUzZmQxYTgyYmU3Zjc4ZjhmN2FlZiBsZWdhY3ktdHJ1bmsKKzczMTIgOWUxYWM5ZWJlNzlmNTFkY2QyNDNiNTMzZmNkMGNlYTZkOTBiZjVjNiBsZWdhY3ktdHJ1bmsKKzczMTMgNWMxOTUxZDU3M2IxZDliZjMxZmYzNzg2MDAxYmNmN2RmYTdlNjQ3NiBsZWdhY3ktdHJ1bmsKKzczMTQgNDU2N2UxNThkMjBjNTEyOTJiMmNmODc2NzFhZjUzNWQ5NmIwMWZiNSBsZWdhY3ktdHJ1bmsKKzczMTUgMzVjNjQzZTkwMjNlNzJkY2RkYmVmNTZhNDgzYWUxNDE1MzY0YTk1MSBsZWdhY3ktdHJ1bmsKKzczMTYgYTdiOWM3YzgxMzM3NjMyMWE4MjQyMTEyNzcxNTk5NTAyNTNkNGNhOCBsZWdhY3ktdHJ1bmsKKzczMTcgODQ2NzlmN2JiZTZkNTg0OGE2MDVjMTQwYmQ4YTAwZDBhYjVhYTVjYyBsZWdhY3ktdHJ1bmsKKzczMTggMzhhZTJhMGZjNGYzM2M2ZTZhZDBjN2YwNmZmZWU4YzA5ZjJjZjk4OSBsZWdhY3ktdHJ1bmsKKzczMTkgNTU1ZjZlNzZkMjA3ZGNjZDNkYmJjYTQ5NWRlZWZkYzM3YWZlNjYzMCBsZWdhY3ktdHJ1bmsKKzczMjAgMGJkZDMxNTM4ZDhmZDY2NjcwYjFiODdjMjcwNzcwZTc3MjE2YWZkZCBsZWdhY3ktdHJ1bmsKKzczMjEgOTcyMDI2ZDQ3Mjc0YWVhNWFkNmYzYWJlNzdkNTMyNGNiM2RjMjRkZSBsZWdhY3ktdHJ1bmsKKzczMjIgZDUzODEyZDY4NDA4YzYyNGZjODgyYjdjOTZjYjY5MzAwNTY0NWFlZSBsZWdhY3ktdHJ1bmsKKzczMjMgNTI2OTVlZmRmMjJjMmE4NWU4Yjg5YTU4MDRlYzk4YWNjZGI3ODU4ZCBsZWdhY3ktdHJ1bmsKKzczMjQgMGE0OWQxOTI1MDZkY2JhNjJmNzQyMTNhYTY5ZThlOTUxYmI2MWQ2OCBsZWdhY3ktdHJ1bmsKKzczMjUgMGUxODk3YTFmMGQ1MmNiMDlmOWFiZTUyOTg1MzE0ZDI5MjBlZDM2YyBsZWdhY3ktdHJ1bmsKKzczMjYgZjgwODAwMWEzZTAxMzdhY2JmZjEyZDhiNTQxMzkxMTI0NjVlYzM5NyBsZWdhY3ktdHJ1bmsKKzczMjcgMjljZWQ0ODVhY2EwOTgzNTZhMmJkMzdhZThkYTUzNDEzODQxNGM4MSBsZWdhY3ktdHJ1bmsKKzczMjggY2Y5MDc0NTM4MWJmZmQwYTY2MzM1ZWM1MDU2MTJjNWFjNmFhMDQ5NyBsZWdhY3ktdHJ1bmsKKzczMjkgMTY3YWQzOTQ0ODhjY2FiMWE1M2ViODkyODI0OGQ4NGFhMDNmY2NjMCBsZWdhY3ktdHJ1bmsKKzczMzAgNDNhYjBmZWZlNGExNTZhZjdmNDRlMjgxNDYxNmFlZGI0NzVhMzhmZiBsZWdhY3ktdHJ1bmsKKzczMzEgODhkYmZhMmJiOWRjZWZmYzBlMzhiNDk1MjQxNWZhNTZmMDY2YzViZSBsZWdhY3ktdHJ1bmsKKzczMzIgZTBhYWVlN2ZkMWZkNDU0ZTZlNDYwYjI2ZjI1ZWU5ZWFjMzg5ZTY3OSBsZWdhY3ktdHJ1bmsKKzczMzMgMTk4OTg5ZWUzNmQ1NmE1ZDNlNTVlNTgxYjhhMzM3ZDI3YmEwYmVhZCBsZWdhY3ktdHJ1bmsKKzczMzQgYWI0NjFjNzYyNTU5YTQzMWJjNDA4OWY0NTFkZDRiNTA3ZGE3NGM2NSBsZWdhY3ktdHJ1bmsKKzczMzUgNWM2ZmJkYzUwZTFkNjQzOThkZjkwNjk4ZjYzMTQwMzZiZDc4MmRlYyBsZWdhY3ktdHJ1bmsKKzczMzYgNjljYTVlM2NjYzZkYTgyNTE2MmM1YWU5YzM3MDg3MmM3ZTk1MmEzYSBsZWdhY3ktdHJ1bmsKKzczMzcgN2Q3MzE5ODExZmYwYWUxMzcxZTFjMGU3YzY5Mjk0OWFlMGZiOTE2ZSBsZWdhY3ktdHJ1bmsKKzczMzggYjE3MDdiY2RjMjY1MjZjYzc1OWQ1ZjA2N2IwMjc2ZWFmN2E4ZGFiNyBsZWdhY3ktdHJ1bmsKKzczMzkgYTUzOTA4ZDA5YTA0YzAxMDMwMjFlMzk4NmU3ODAxNDZhNTNmMzYzOCBsZWdhY3ktdHJ1bmsKKzczNDAgZjUwNzNlMjQxNDdjMDc4ODE1ZjUwMWY4OGZmNDFlYjg2ZGNiMmUzZiBsZWdhY3ktdHJ1bmsKKzczNDEgMzk2MDM0MGEzMjUyMDhjNGU1ZDc5MGYxMmZjM2Q0NTVkYWM4MzQ2OCBsZWdhY3ktdHJ1bmsKKzczNDIgZTNmMmFiMGIwYWExNmQyMDAzMjJmNjcwYjBlNzc3NzQ5N2RhOGUwNiBsZWdhY3ktdHJ1bmsKKzczNDMgYmY0ZGIyYTRiYjU0MDc5ZWQwN2IwYWE2ZjE3OGViODc0ZTUwMWU1NyBsZWdhY3ktdHJ1bmsKKzczNDQgMGVhMGZhYzY4YzFjOWQ4Zjc2ZDVmN2Q3YWVjM2YyZjI3ZTYzMmNhOCBsZWdhY3ktdHJ1bmsKKzczNDUgNjhmNDEzNDg2OWRiMDNiNzdjYWQyZmJjY2QwNjNiMDI0ODY4OWViMiBsZWdhY3ktdHJ1bmsKKzczNDYgYTcxNTliYTBlNDVkMWQ3NDk0NDY2MWY4YTNiODg5ZmFiMmQxYmE2MyBsZWdhY3ktdHJ1bmsKKzczNDcgZGE1M2U0OGVmZWE4NjBhMmRiMzNkZTNjNWJhY2VjMmFlOTY0NjIyYSBsZWdhY3ktdHJ1bmsKKzczNDggMzJmNmIwZDNhNjZmYmYwODhiY2M2ZjNkYWUyODQ2ZGM4YTM0OWM3ZiBsZWdhY3ktdHJ1bmsKKzczNDkgMDNiY2RkMjJmNmE0YzJhMjdlN2Q3Yzg0ZDExMDIwNjNkZGViZTlkNCBsZWdhY3ktdHJ1bmsKKzczNTAgOTExMDQwZTFiYjExOTE4NGJiNTkzNDI0NzhmNTQwMjg0ZGQ4N2NkMCBsZWdhY3ktdHJ1bmsKKzczNTEgMGYxMGZhNzUyY2E5MjU2ZjNjN2JjZjg5Mzc3MDQwN2U4MTFhNWQwOSBsZWdhY3ktdHJ1bmsKKzczNTIgZTU3YThkZTVhZWIzOWIzMDFkY2NkZDY5OGQxYmM1ZjU2YjRhZDFhYiBsZWdhY3ktdHJ1bmsKKzczNTMgYTllN2UwY2NhYTRhYzBjMTA1ZjYzZDczMjc4NmZlMTZmZmMxMzQ4OCBsZWdhY3ktdHJ1bmsKKzczNTQgNDUxNDAyMzE2MGI0NWQxZTJjYzBkNWZkNDBhOWY0NmIyYjNlZWUwMSBsZWdhY3ktdHJ1bmsKKzczNTUgOWE3ZTlmMTBhZWQ2MjA4ZWJmZDgzOTg5OWJmMjg4ZDdkZjU4NjRlOSBsZWdhY3ktdHJ1bmsKKzczNTYgMjI0MWQzMTI2NThhZTc3M2QyNDY2Yjk5MjUyMWE0NjMzODA0MzY0MiBsZWdhY3ktdHJ1bmsKKzczNTcgOGQxN2Q1NTJkMGVjMDVkYWM2YWQ4MWVkNjMxNDMzMmNkMTczZmJhMyBsZWdhY3ktdHJ1bmsKKzczNTggZTc0MmI1OTNjMDkyNjNjZGVkYmJjYTU1ZWM3ODZiZWI3ODZhNTdmMSBsZWdhY3ktdHJ1bmsKKzczNTkgNjVjYjI2MWY3NzM2YzlhNDNkZjgxZGZjNWY3NjJmOWQ1MzNlNjExZCBsZWdhY3ktdHJ1bmsKKzczNjAgMzgzYzY0ODYzNDZmNjYzM2E4ZTI5Yzg1NWMxZjM5OTQwYzNmMzcyMyBsZWdhY3ktdHJ1bmsKKzczNjEgMjFjNDFkM2MyNmI2NTExYTcyMzllNmU4ZTQ3NTcxNjU3MDY4YjZmNiBsZWdhY3ktdHJ1bmsKKzczNjIgMzQyZDJlZWQ1NzNhNTc4YjJlNjU2OWEzZWRmMWUyNTk4NmRjZWI4MSBsZWdhY3ktdHJ1bmsKKzczNjMgZjEyNjExODY3MjJjZDIwOWQ0ZTVmYjNiZmNjODA2YzkyZDJiY2JhOCBsZWdhY3ktdHJ1bmsKKzczNjQgOWM2YjVhNjVjZTYzMDBkOGQwYzZlOWJmN2E2MTkwMmI3MzFiYmNhOSBsZWdhY3ktdHJ1bmsKKzczNjUgOGE2OGY4MWJhYWQ2YjE2OTExMzE2YWRmMzkwNjA2Yjg2ZWI0NGY2YiBsZWdhY3ktdHJ1bmsKKzczNjYgZDM5OWE0NTM3ZjZkZTBmMjA0YzljYTZlZDNkZmQ0YTdjM2U4YmU2NiBsZWdhY3ktdHJ1bmsKKzczNjcgMWMwODljNWI2NmU5OTA5NTRlZDU3YzlkN2JjODNhODQ0OGMwZmQyZCBsZWdhY3ktdHJ1bmsKKzczNjggYzJlYWMxMjZlOGZmYzA4NzhjNjQ5OWY4ZjQxZWEzYmE0ZjU1MjczYSBsZWdhY3ktdHJ1bmsKKzczNjkgZjMxZjQ3ZmYxZmRkM2Y0OWIyNzFiOGJkNTU1YmMxYTMxNDA2M2Q1MSBsZWdhY3ktdHJ1bmsKKzczNzAgNTU2ODMyMGRhOWI1OWFlYmZlZjI5MTc1ZTUxZWE5ODdmMzBmOGExZSBsZWdhY3ktdHJ1bmsKKzczNzEgNTBhYmIwODUwNzQwNDY5ZWQ4YmYyZDEwMzMyOWY0Y2FjY2RlMzkzOCBsZWdhY3ktdHJ1bmsKKzczNzIgOTBjMjFkZGU0Mjg0M2ZiMDRjNTRkODhmMzI5NWU5Nzg0NGM2NjY3OCBsZWdhY3ktdHJ1bmsKKzczNzMgNGY4N2ZkMmQwNTYyZWFiMTg0YTU3Njg0OGViZTQwZDUwMmIzMTk2MiBsZWdhY3ktdHJ1bmsKKzczNzQgOWVmZjc4ODBlNjg0NDgwNWI5M2I2MDg4YzI1YzNjZTFjMGQxMjA3ZCBsZWdhY3ktdHJ1bmsKKzczNzUgMzdlOTdhMzEwMjQxMWQyMGQxNzI1NjViOWM5YjlmZWZhZDIxMzZmMSBsZWdhY3ktdHJ1bmsKKzczNzYgNzcwMTA0YzhmODRhMGFmYTMwMzQ5OTI0ZWIzYTQ3NDBmZTliMzVjNyBsZWdhY3ktdHJ1bmsKKzczNzcgZDQ2ZTQ3OGI1NzY3YzM4OWYzZTc3NDMzZDY2ZmFjMTA5YjdiODczMiBsZWdhY3ktdHJ1bmsKKzczNzggNmE2MjlkMjc4YTE4YjkyMmYyYjM4YzZjMzE1NTk5YTNmYTU4ZmFhNiBsZWdhY3ktdHJ1bmsKKzczNzkgNWRjMjBhOWUwNTA2N2JhMTcwMzY3ZTk4MDNlMzk2NzRiMWMzMWNlNCBsZWdhY3ktdHJ1bmsKKzczODAgMzIyMjBjNTcyOGY1MTQ4NmUwZDMxOTk2ZDY3MDM0MDJlNzQ0MmU4MyBsZWdhY3ktdHJ1bmsKKzczODEgZmNlNzgxYjEyN2I5MmYzOWQzZjczZTUxYmEzOGJhMTMwYTU5NzRhNiBsZWdhY3ktdHJ1bmsKKzczODIgZmQzNjI2NTExZGFkZmNjYjRlNTNlNjc0YTBmMzhjNTEzMmY1MTQyNiBsZWdhY3ktdHJ1bmsKKzczODMgY2ZhMTI4MjkwMmRhY2RhMmVhYWFlOGIzY2RjMDRiZmQ5NzVkNTZiNyBsZWdhY3ktdHJ1bmsKKzczODQgMDgzNGFhZGRiZjFmZTQ0ZTIxM2JiNDE2MjZlZGExZjI2ZjkxYTIyYyBsZWdhY3ktdHJ1bmsKKzczODUgZmNhZjlkMTE5YWJmZGMwOTBlZjgxMDY0OGQ4Mjk2MDkzMjk5OTgxZSBsZWdhY3ktdHJ1bmsKKzczODYgMjE4NzhjODQ5NjI2YWUxYjc0MmY4YWFmMWFiYTMyZmEyNzlhMzQ5YSBsZWdhY3ktdHJ1bmsKKzczODcgNGI1OTBmNThjNmE3YTM5M2YzYTFkNmVhMTkyMjZlYjhiNWY5YTkzZCBsZWdhY3ktdHJ1bmsKKzczODggOWUyYzNjNmQ0ZmExNWM4ZmI4NDM2MGI4NTJlZjNkYjdjMjM4ODhmYiBsZWdhY3ktdHJ1bmsKKzczODkgMjUwYmRkYjJlY2NmMmRiY2QwNDUxOTQ2ODE1ZDhlZTU0ZDE0ZjViNSBsZWdhY3ktdHJ1bmsKKzczOTAgMTRlZDkwOWE5YzgwOWY3ZWFiYWZiNzhmODdlYzdlZDIwMTUyZDAyZSBsZWdhY3ktdHJ1bmsKKzczOTEgMDc5ZWI2OTQ3MWU1ODMzOWMxZWJhY2QwYmM3YTM4ZmM2MzY5NDRjNyBsZWdhY3ktdHJ1bmsKKzczOTIgMWJjZDQ5NzJkYTdlODZlNDRiZDlhMmU3MDFiMDVhZmQzZGNlOWY1ZSBsZWdhY3ktdHJ1bmsKKzczOTMgMmE0ZDNkOTliOGE0NWE4YzJjNmY5OWJmNTJjMTUyYmIwNjY5ZWFiNSBsZWdhY3ktdHJ1bmsKKzczOTQgZjhlNWJjNTM1MWE5NzNhZTg0ODUzMGQ1YWM1OGE3MDM5YTllYWVlOCBsZWdhY3ktdHJ1bmsKKzczOTUgZTc3NTg1YWYyYTIxNjU1ODI4NjRlZTg2MDdiYjcyMDk0NGE5Mjk3NSBsZWdhY3ktdHJ1bmsKKzczOTYgNTU4YWJhYzc1OThkMjkwZWU5ZDJkZWJjMDEyZThkYThlZGY4MDc2ZiBsZWdhY3ktdHJ1bmsKKzczOTcgMmRlYzM2MzQ1NjY1ODMyMmFhMzhmNmVjMThlNjU4NmY2NDA2Yzk1YyBsZWdhY3ktdHJ1bmsKKzczOTggYWU1NzM5MjJmZGNkYWNjYjYxYmJlMmEzMzQyNjQ5M2E5YWQ0YjM2YSBsZWdhY3ktdHJ1bmsKKzczOTkgZjA3ZTE4ZGIzNjZjNDkxYzRlYmRlMDZlZDAzMTU4MzBiNDNmYjhiYyBsZWdhY3ktdHJ1bmsKKzc0MDAgNTA3YzQ2MDIwNTI2NGQ1OGUzNDA4YWIxNjI1Nzg3YjkyOWE2M2QwMiBsZWdhY3ktdHJ1bmsKKzc0MDEgNzA2OWEyYmY1YmFmNmE5YTU2YTlhMmU3ZTkyY2FlMGY5ODA4MDI2YyBsZWdhY3ktdHJ1bmsKKzc0MDIgMDQwNDkzZGU4NDhkOGRkNzI3NWQ1ODU4MDM5NzQwYjNiMTllYTM0OCBsZWdhY3ktdHJ1bmsKKzc0MDMgOWJlNjVlNmMzNWM4MjZkNGY3MDlhZDdmNjUxOWI0NjMxMzMzNDBjNyBsZWdhY3ktdHJ1bmsKKzc0MDQgNTEyNmQ0YjgxOWU5ZTE5YzVhYjI1NDM2NzViMDFkOTg5ZDFhY2Y4MSBsZWdhY3ktdHJ1bmsKKzc0MDUgNTM2OTM1YzI5NDAxNzNkMWJjNDQyYWVhZDRhMTNhNTFiMWIwYjM0OSBsZWdhY3ktdHJ1bmsKKzc0MDYgMTgwMjNlN2MzODYyZmNjOGM5OGRiYTYzMmU4NWViNTQxZGE1OGI2YiBsZWdhY3ktdHJ1bmsKKzc0MDcgYjM3ODc1MzgyNWEwOTFmZWNiOTRlNGM4N2JmYWQwMDQxNWI1MzkzZSBsZWdhY3ktdHJ1bmsKKzc0MDggYjU2YmMyNWFlYzg1MmFkMjlmZGJmNTE3NmM3OGM5MTIzYTBjMjgxNCBsZWdhY3ktdHJ1bmsKKzc0MDkgNmI2MTkxMmQ1ZjM1OWIwODQxNzlkNTk0ODMxMmFhN2E1ZjgxZGNmMiBsZWdhY3ktdHJ1bmsKKzc0MTAgMDk1YzllZTIzYjU3NmMwMTM5MTg1YjVlMWZjODE1NTMzMDYwNDRlNiBsZWdhY3ktdHJ1bmsKKzc0MTEgN2QwYmZiNDY4MmY5YWY1MjA1MDUxMGVkODAwZDE3NzVjYjQ2MjRiOCBsZWdhY3ktdHJ1bmsKKzc0MTIgNzg5ZGU3YzY2NzEyOTY2MmYwYmE0ODU1ZmI0YjBiMGUwN2M4YmVkNCBsZWdhY3ktdHJ1bmsKKzc0MTMgNzBkYjRiZTFkZDRiMjVjMTI1ZWIyZTk4ZWE1NzhiNzIwMDRkMmRiYiBsZWdhY3ktdHJ1bmsKKzc0MTQgMjE3Y2ZiNjE5OWJlMTE5NjEwYzIyNGNjYjJhODNjOGFlY2YzNjMyZSBsZWdhY3ktdHJ1bmsKKzc0MTUgNWVlZDUxNzUwMjg0MTYzMDQzYmUyOTc3OWVhY2NiNTkwMWRmZmU3OSBsZWdhY3ktdHJ1bmsKKzc0MTYgMzNlMzNiYTdmNDIxYWU3Zjk2YWMwMTAzNDgxNjEwMWUwYTg1NTIyOSBsZWdhY3ktdHJ1bmsKKzc0MTcgYTUyMGM2ODRjZThkYzAwY2I5MzExZTMwMTczNDkyMWJmOTIwODU0ZiBsZWdhY3ktdHJ1bmsKKzc0MTggNTdhZWQxNmUyMTY1YzhiMmNmODc1MTZlY2MxZDZiNWYwZjZiMTMwYyBsZWdhY3ktdHJ1bmsKKzc0MTkgNTI4YzMxOWM2ZTdmZjBkZjFiOTE3M2FiYzg4ODliYmU2MDNmZGM4NyBsZWdhY3ktdHJ1bmsKKzc0MjAgNjExOGNhNTE0MDRkODYwMmZmOTA4YmZlOWRkM2QyYTE2MmM4Njc3OSBsZWdhY3ktdHJ1bmsKKzc0MjEgYmExMWI1OGIyYjBhMzhjMGM3ZTlkMjAyNDc4NDkyOTc2NjY3ZGVmYSBsZWdhY3ktdHJ1bmsKKzc0MjIgNzhkODgwMDQzMTI5ZTA3NDVmMjUyZTM0NTVkOWZiMGI5M2YwMzQ5YiBsZWdhY3ktdHJ1bmsKKzc0MjMgNTY5MzQzNGVhNTM4Yzg5ZmQ1MzVjYjE4ZGU5OTY1MzgyYmVmNDNkNSBsZWdhY3ktdHJ1bmsKKzc0MjQgY2E5YWE0NzQxMWRlNGJhMjkwOTg3NjE2MWFiMDE3MjhmZDg2OTdjMSBsZWdhY3ktdHJ1bmsKKzc0MjUgMTlkODE5YjE2YjgyNTJhMDIxMjkzYjNjNGEzMzAwZWU2YWE2MTY3ZiBsZWdhY3ktdHJ1bmsKKzc0MjYgZGEyYWJiZjkzODdjNjFlYmNhMTVjOWM4ZGU1OGIwMmIzMjEyMWNkYiBsZWdhY3ktdHJ1bmsKKzc0MjcgMDVmZDQzMmQ5ZTJiNjhkOGU5MmUzNDIxMzQ3ZjA2ODEwNTczYmEyNyBsZWdhY3ktdHJ1bmsKKzc0MjggZGE0YTQ5N2JlYTNhOTQ4MzlmODg1ZjMzNzA0ZWU3ODRiZmFjMDc3NCBsZWdhY3ktdHJ1bmsKKzc0MjkgYjFlY2RiMmRhMjQwMDU1MTllMTk2OTlhNGUyMzQ1OGE4NmExYzA5ZiBsZWdhY3ktdHJ1bmsKKzc0MzAgZTZiNzk3YWFhNjlmN2QyMDViNTBlODQ5MTZjNzkzYTVhMjM2ZmIxZCBsZWdhY3ktdHJ1bmsKKzc0MzEgNzMzMjUwMTlhZDM5ZmY1YmYxZGU1MWMxM2NmM2ExMTU1YjIyNjk0NSBsZWdhY3ktdHJ1bmsKKzc0MzIgOWQ1OGQwZTk4NzdlNmU3YWYyYTJiOTdiMDVlYWYyMTMyMzcyZDI3ZSBsZWdhY3ktdHJ1bmsKKzc0MzMgY2U0MzhkMzZkNGZiZjExZDRkN2Y0NTdhYWRjYWRhZGM0N2E0NjVkZiBsZWdhY3ktdHJ1bmsKKzc0MzQgODlkMDc3OTVmZDY5NGZlNDI1MjdmMmY2YzRhZjBkNzJmMjQ0MGZlMSBsZWdhY3ktdHJ1bmsKKzc0MzUgMzhmOWU0NmQyMzE3YjUxMDczYjY1Yjc2ZWJjOGM1YTcxM2RkYmY4MCBsZWdhY3ktdHJ1bmsKKzc0MzYgNWU2MzMyMmY0YzA2MTNiODJkMzE4NDA5Zjg0NzRhNTU3NDJiMmQyOCBsZWdhY3ktdHJ1bmsKKzc0MzcgNzY1ZDk2MmY0NDQ5ODI1NjZmYWUyYzVhOWU4MTkwN2VmMDExOWMyNyBsZWdhY3ktdHJ1bmsKKzc0MzggNWRlZDJiYzE5MDhiMzY1NzFiMTI4YTRhOTlhOTQ2ZWIwOGRjYTgyZiBsZWdhY3ktdHJ1bmsKKzc0MzkgNmNlNjFmMjEyYzNlN2YwMDFmMTNmNTk3YWRjNjgxOGNkOTk4MjAxZiBsZWdhY3ktdHJ1bmsKKzc0NDAgZDg0Y2ExOTc4NjhiMzU0NzFjM2E1N2JiMTJlNjMwODc3ODNjMjAyZiBsZWdhY3ktdHJ1bmsKKzc0NDEgOWJiZDU3ZDM2MDlmYmI0MTMzY2EwYjQyMjA1MWU3YThmMzA2M2FlMSBsZWdhY3ktdHJ1bmsKKzc0NDIgMzcwNWY3NWE4MzU1ZTIzNjU0NGRjZTcwYjZmMzRjNDI0NjBlZDk2OCBsZWdhY3ktdHJ1bmsKKzc0NDMgM2QzMmRhMzdkNjI3ZDhiYTAyMjE2MGFiNGIzODQxYzczMWExZTVhZCBsZWdhY3ktdHJ1bmsKKzc0NDQgMGYxYWU2MmRkM2I4N2UwYTE3MTgwZmRkM2JlMDRjMDA0OTFjZTM1OSBsZWdhY3ktdHJ1bmsKKzc0NDUgODA1NDg3ZDUwNjIwYjRmNTQ2ZTFiOGQxMzA5NzU3MjI5ZjA3ZWUxOSBsZWdhY3ktdHJ1bmsKKzc0NDYgOGQ4Yzc2YTFkMjUwNDA2MmUxZmY3MjE5NTQ2ZThlOTA3ZDg4MDUzZCBsZWdhY3ktdHJ1bmsKKzc0NDcgNmVjZTVjZmI0OWZmZGIzZmRiNDNkMzc3YjdlNGRmOWJjYjljMDMzYyBsZWdhY3ktdHJ1bmsKKzc0NDggN2Q3M2NkYzAxMTk4MmE1ZTcxY2NkYmMyZTBkZGRmYzIyYWU0NzdkMSBsZWdhY3ktdHJ1bmsKKzc0NDkgMzk3NDU1NzRiZjA3YWZjNmYxOGIxZTQ4OGY5OGVjODI0NWI4NjA5ZCBsZWdhY3ktdHJ1bmsKKzc0NTAgYjRhNDAwYjM1OTVlMjRjZTk0OGM4NDFiYWUyOGZkZjE3NjdmYmEwMyBsZWdhY3ktdHJ1bmsKKzc0NTEgMmUyOTQ1ZDgxNjNjNjcxNzI4Mzg4NzVmMTkyMzdkMDEzYzNkMDA2MSBsZWdhY3ktdHJ1bmsKKzc0NTIgOWIxNjk0MzkwODIwZGQwNDQyYWRjZmU1ZGNiZGZiMDY4YzczOGU1OSBsZWdhY3ktdHJ1bmsKKzc0NTMgNDdlZTNiNGUyZDgwMzNjYWNkOTlkNjM1MjhiNGQ2NDNjMjZhNjEyZCBsZWdhY3ktdHJ1bmsKKzc0NTQgYjg2NGI0MTRjNDU3Y2Q5ZTQ0NTYwNWU1YTA4Mjc2ZjQyZjc4OWI5YyBsZWdhY3ktdHJ1bmsKKzc0NTUgYThkN2JmZWM3YzkyYjdjMThhYzllYzg2YzhkMjQ4MGQ4YTliY2RiZCBsZWdhY3ktdHJ1bmsKKzc0NTYgOTk0Mzc2YWY5MDY0ZDMwZjFlODJmYTk5YjExNDQ1NmMwM2U1MDk3NyBsZWdhY3ktdHJ1bmsKKzc0NTcgYjVlN2ZjOGJmOTE5NjM2OGRjMzBmMjdmMmNlODQ4N2JhODJlZGRkMSBsZWdhY3ktdHJ1bmsKKzc0NTggNjZjYmIzN2I0YzBiZDYwMDUzMTk0ODE5NDBmNzY5YTYzNDAzOGMxZiBsZWdhY3ktdHJ1bmsKKzc0NTkgNzdmOTcwMDc2ODMxNDAyNzYwM2EzMmNmMDkwZGVkYzE0ZWNlYmE2MiBsZWdhY3ktdHJ1bmsKKzc0NjAgNDMwOWJjOTdlY2M2YTg3NjllOGE2ZGRjMGFhYzYzOWExNzUyOWRlNiBsZWdhY3ktdHJ1bmsKKzc0NjEgZDhkNTYzYmFmODc0Nzg2N2MwNzA0OWNlYTFkMDczYjNkNDBhNWE0MSBsZWdhY3ktdHJ1bmsKKzc0NjIgMWRlZDk0MzhmYTUxNWQ3NzM4YTAwMmNjMGEwMmY3M2Q3MzA5ODk3MSBsZWdhY3ktdHJ1bmsKKzc0NjMgZGYzODVjYzBkMmUzODcwZWZkODYyZDdkN2Y0OWY1NzNhMjdiNzJmNCBsZWdhY3ktdHJ1bmsKKzc0NjQgNjUxNDhkZWQ1MTA4NGRhZmQ2Y2JkNDNiYjUwMzYwMDA0ZWY1MTZlOSBsZWdhY3ktdHJ1bmsKKzc0NjUgNmUxN2VmNWEyNmM4OTQ0YTg0YjNlMzZhYzA0ODg4ZmNiOGQyYmE3OCBsZWdhY3ktdHJ1bmsKKzc0NjYgODI3NjkxNmUxZWE4ZGNkZTU1ODdjMzg4YTVjODNjMzViYjc2Y2ZiYiBsZWdhY3ktdHJ1bmsKKzc0NjcgMTFiYWNiOGQ3MzFhZDZjYWRkY2QwZDg5YzVlMDFkMGI1OWUzNmRhMSBsZWdhY3ktdHJ1bmsKKzc0NjggYjgyZDg0N2IzZGNiY2NkNjNkZTA3NWUzODc5YTkzNjlkZmIzNGUwZCBsZWdhY3ktdHJ1bmsKKzc0NjkgOWJjNjUyZTlmMmI0NmQyOTI4YjAzMDAzZjA4Yzc1Yjg4MTQ3OTA1NyBsZWdhY3ktdHJ1bmsKKzc0NzAgMjY3ZWQ0ODBlYzFiODRjMWRlMDdmYTg2N2YwZGIyNmI0YzcxNTJkYSBsZWdhY3ktdHJ1bmsKKzc0NzEgOGRlMWY2YjA3ZGY5Y2Q3ZGMwZmMwYjQ2ZTcyZDdkYzBkMDZjM2YwNiBsZWdhY3ktdHJ1bmsKKzc0NzIgNThiYmFmMjg0YWQ2NmVmMGNlN2Y0ODE4ZDA0MDViMzBhYjZjZThhOCBsZWdhY3ktdHJ1bmsKKzc0NzMgY2M0YmE3MjE0YjE4Zjk5N2U5OWQwNzAzMTAwYzhkMTRiYzllNTg3ZSBsZWdhY3ktdHJ1bmsKKzc0NzQgNDY4MTI0YTE1NjBhMmQyZWJhM2Y0NGE2MDUyMTRlYzNhZTNkZWI0YyBsZWdhY3ktdHJ1bmsKKzc0NzUgN2M3YTE4NmI2ZDg2YjJiMjAzMDUwNzMxNWRmZTA5OTRlZTY2NWIxOSBsZWdhY3ktdHJ1bmsKKzc0NzYgMTdjN2ExMzNjY2Y3MTEyNWZkMjQ1OGQ0YTRlNTY3NTcwYzcyYjdlYSBsZWdhY3ktdHJ1bmsKKzc0NzcgYWUzYjQ2YTczNzY1N2IzZjQ0MGFiNzU2ZGNjMTY1YjcwZGJlZThlZSBsZWdhY3ktdHJ1bmsKKzc0NzggNjVhYWNlMjAxMmU1MmMzZjE5NDkxZTg5YzE4NDIyOTBkZGQxYjFmMSBsZWdhY3ktdHJ1bmsKKzc0NzkgNGM4ZTRlOTMxMWU0ZTBlNTJlNTA5MmVjYmFkMWJhMjY0ZmE0OWZmNSBsZWdhY3ktdHJ1bmsKKzc0ODAgZjE3YmFjZTQ4ZGQ2OGEyYzgwZjQ0YzAxMTVkM2FiYTdkMjhjYTA5NyBsZWdhY3ktdHJ1bmsKKzc0ODEgNWY0YjIzZTNkOTdjYjM4ZDBhOTNkYWU0MThjODgyOTU0MzVjNWU2YSBsZWdhY3ktdHJ1bmsKKzc0ODIgZTRmN2MzMzFiYjFhMmZmZjNlMzU4ZmJlOTZmYmI5ODRlN2UzZmQ0YSBsZWdhY3ktdHJ1bmsKKzc0ODMgZjU1ZTgyZTFlNTY1OGMwZmU0NjFmNDgzNzU1MGM4MzIxNzRiMmIwYiBsZWdhY3ktdHJ1bmsKKzc0ODQgNDAyZTM2YzgzZDIwMjkwMGEwMjNlMTYwNWViZGFkYmRhMzZiN2UyMiBsZWdhY3ktdHJ1bmsKKzc0ODUgZjBjZjhkMjc1ZmJjMTc1MTQyOGQwYTMzZWYxZTM2Mzc0ODkxYmEwMCBsZWdhY3ktdHJ1bmsKKzc0ODYgNjg0MGZmODlkMjRhMWYxOWZjMzI4ZTUxYTAxNjU3Y2ZlMmNkOTc1NSBsZWdhY3ktdHJ1bmsKKzc0ODcgNzdmOWMyNWUxZjFmY2FjYzkzZjJlNjNiMGNiYmMyYjcwYTQ3NjVmZiBsZWdhY3ktdHJ1bmsKKzc0ODggNGNhNGU1NGM5Y2Q4Mzc2ZGYxNDE3ZWUyOWM2M2JmYjc5ZGEyNWNmOSBsZWdhY3ktdHJ1bmsKKzc0ODkgMGJmYWM4OWFmYzgzZmQ2YjBhOTI5YjgyYjc3MmI4MTg1MjJlMjQ0YyBsZWdhY3ktdHJ1bmsKKzc0OTAgYjFlMmVlYTY2Y2I2Y2ZkYzJhNWU2NDY5ZTU1MzE0N2NkMWVlNDc4NCBsZWdhY3ktdHJ1bmsKKzc0OTEgZjFhZjA5N2E1ZTVkNzkwYzJhNmIwNmNhZDAwMDY0YzRkMjYxM2UwMiBsZWdhY3ktdHJ1bmsKKzc0OTIgMTNkMzhlYjdlMjI1ZDE4MzU0Y2E0YTY3YTg0YTg4MDgyNmE1MTE2OCBsZWdhY3ktdHJ1bmsKKzc0OTMgMDAxYTUwNDJiMTgxYTdkYWI1NGI2Y2QxMGVkMTI3MmJiNjJkNmI3MCBsZWdhY3ktdHJ1bmsKKzc0OTQgMjg5MzU2MDlkZmFlYTY0YWEwNmI5NmM1ZTYwNDU2NzkwMmQ3NDRlMCBsZWdhY3ktdHJ1bmsKKzc0OTUgMGVjYTlkNWY3YjJkNGIxYTA3Y2I2NDM0NTI1YThiOWJjNzNkZDVmOCBsZWdhY3ktdHJ1bmsKKzc0OTYgYzIyYWRkMzY0MzUxOGY2YzQ4MGE2ZjQ2NzE2ZmRhMGQ3ZTJiNWMwNSBsZWdhY3ktdHJ1bmsKKzc0OTcgNjI2NDU3ODdmYmM4ZDkyY2MyOWMyYTc3MTc4Yzg5N2FhMzMwNWMwOSBsZWdhY3ktdHJ1bmsKKzc0OTggNzVjMWVlODgyYTRhZDQ4YWQ2ZjQ1ZWI5NjgyZjQ3ZDAyMWEwNjBlNiBsZWdhY3ktdHJ1bmsKKzc0OTkgN2U1MTkwOTk5NjMzMmRhYjA3NjI5ZTYyODBlZWIwMWVkNTdkYzgyOCBsZWdhY3ktdHJ1bmsKKzc1MDAgYmZmOGY1YWZjNjdmZWM2NDFlOGZlMzBmMmY1ZTExNzc1Yzg4Yzk1YyBsZWdhY3ktdHJ1bmsKKzc1MDEgYjVhMWJiMmQxN2ZhZDQzNjEzMzZmOTU5NGE3ZGMxMjBlY2Q1MWUyZCBsZWdhY3ktdHJ1bmsKKzc1MDIgMGVhNGVhNWIyZWI3M2ZlYThlZWEyOGQxMDViNmQ4MmNkM2ViNjM2MiBsZWdhY3ktdHJ1bmsKKzc1MDMgMDY3N2M3N2FhNzBkZjE5ZWI0OTZjMzFjYzNkZWNjYjU0ZDU4MzcwZSBsZWdhY3ktdHJ1bmsKKzc1MDQgM2YwMzdlZTc3MzFiZTMyMzg1NmVjNDY3OTkyZWMxNWQ4OTdkMWJhNyBsZWdhY3ktdHJ1bmsKKzc1MDUgMDBjM2NiMTA3ZTVmMjc4ODA2YzRkMmMyNjllZDg4N2YzMTA5MzFiOSBsZWdhY3ktdHJ1bmsKKzc1MDYgMDE3ZDcyNTQ0ZGYyYmVjNTNmZDk5YzI0MGJhZmI1ZWJhYzZiYjRhYyBsZWdhY3ktdHJ1bmsKKzc1MDcgYmUzMWU3ZTE5MjQxYjFkNWU1ZWNmZDFhNGY2NDExMTc3YTFiZTJhYyBsZWdhY3ktdHJ1bmsKKzc1MDggNWI3YjcwM2RhYmZhMDc4M2I5MWYwMTRlYjAzMWMxOTJjY2RiOTYwMyBsZWdhY3ktdHJ1bmsKKzc1MDkgZGUyYTc1YzdlYTlmZjQ2Nzc3N2I2MGY5ZDk3OGI2MTI0MDdlZjE1MyBsZWdhY3ktdHJ1bmsKKzc1MTAgYTBlNjJkODVkZTc3YTE1MGUyNzk3YjFkZDhkODI2OTY4NjNmZjI0MiBsZWdhY3ktdHJ1bmsKKzc1MTEgNjk3NjVkNjQzMWUxYzRhOTM4YWJjMTM5MTgzMTRjZWQzMjNhNjFmZSBsZWdhY3ktdHJ1bmsKKzc1MTIgOWFkN2I4YzM2Yzc5NDA1MjMxZDBhYmJmNzFjZGYxODIyMWI3NzY1MiBsZWdhY3ktdHJ1bmsKKzc1MTMgYTgyMGRlYWQwNmU2NzYyZmM3OGI2YjEyYjYwN2E2MzgxYTFlZTFiNCBsZWdhY3ktdHJ1bmsKKzc1MTQgMzgwMzIyNjc5NjhjMDE3MmJhNmY5NGFmYTA5ZTZjNGE3NDIyYzAwZCBsZWdhY3ktdHJ1bmsKKzc1MTUgODc2ZTU3MzY0YzYyMzk5NWNmYTVmNDU1NTIwNjBlNDkyY2Y0NDc2YiBsZWdhY3ktdHJ1bmsKKzc1MTYgYzQ5NzkyOWIyMzcxMTVhMmMxZDczZTA2MjVhMzY3ZTMzN2MxNGZjNiBsZWdhY3ktdHJ1bmsKKzc1MTcgOWI3ZTBjZjUxOTkwNWFjNDkxOTk4MTFmMTJmZTcyZWRlMWQ0YzBkYiBsZWdhY3ktdHJ1bmsKKzc1MTggMTA0YTY0NmZjN2E2N2YyN2RmMjVkNGU5NDFiMjAwMzVlNTg3NmY5ZiBsZWdhY3ktdHJ1bmsKKzc1MTkgZWUzYWM5ZTBhMDMyMjk4NjJkMTkwNTZhNjc0M2IxOTM0YTI1MGI2OSBsZWdhY3ktdHJ1bmsKKzc1MjAgYjFkODI2OTdjMGIyMzY2NzRkMGU2MWMwZWZjYjBhOTExZTljNzJkZCBsZWdhY3ktdHJ1bmsKKzc1MjEgNjU4ODE1MjMwNTQ2YTQ4OTJjMmFlNTE5NDY4ZWRiNDgyNzA4NzhmZSBsZWdhY3ktdHJ1bmsKKzc1MjIgN2E5Y2FjN2NiOTEwOWY0NzNhY2RkZDFhOWQyM2UyNjhhZDk1ZTBjYyBsZWdhY3ktdHJ1bmsKKzc1MjMgZmRlNzM0NjdiNTg0N2JmNWQ1MjI0ZTZkODU0MjMyM2Q5YTY4ZDc2NSBsZWdhY3ktdHJ1bmsKKzc1MjQgOTQ2YjJiMmE3NjIyZmExN2FkNDI0ODI4Mzc2YTVlODhhN2EwMTNhZiBsZWdhY3ktdHJ1bmsKKzc1MjUgODU3OWUzNDQxZDliYzk5OTVkOThlOGJmMjQ4NTNmZWU1NWI3NTQ1MiBsZWdhY3ktdHJ1bmsKKzc1MjYgN2Y2ZDE5ZmM1YWNhY2ZjODU0YTczYmNjZGYyYTI4OWRhNmMxMzg3ZCBsZWdhY3ktdHJ1bmsKKzc1MjcgNzg0MWM0OGNkYjViNDk2N2RkYTYzYzAwYWZhYWRmODUzYzNhMzU2ZSBsZWdhY3ktdHJ1bmsKKzc1MjggMjE5YmRkOGFmYjM4ZWYwNWFjNDE3ZTcyOGI1OTIyOGM3NDQ1ODk1YSBsZWdhY3ktdHJ1bmsKKzc1MjkgZTljNDQyZDA5MzZmYjVjM2I5MjJjN2E1OTQ0YzVlOWZmNmQ5MjY5YSBsZWdhY3ktdHJ1bmsKKzc1MzAgZjU3ZTE4MWZmNjM4ZmRiMWM5YTM2OTY3YTMwYjRjOGRjYjE5N2Q0OCBsZWdhY3ktdHJ1bmsKKzc1MzEgZTYyOWM4OGYzZGQ4MDc3M2JmZWMxMzJkMzE3NjI1MGZiOGExNjhhMiBsZWdhY3ktdHJ1bmsKKzc1MzIgNmM3YTc2ZmQ1ZGMxZTkzMjBlMjE3NmZkMDcxNzk1YTQxOWIwYTkzOSBsZWdhY3ktdHJ1bmsKKzc1MzMgMzcxNDY0ZjY2NjZiNjZkN2YxZGQ1ZjQ2ZGZhMTYxOTEzZTQ3Mzk4ZSBsZWdhY3ktdHJ1bmsKKzc1MzQgMTkyZDU3MWNjNDYxNWNlNjg0YWY0MTgyM2FmYzE4MDdjMTU3OWE4OSBsZWdhY3ktdHJ1bmsKKzc1MzUgNWEyMzI4NzBjY2VhYjVmM2M0ZjVjOWIxZTc4Y2UxNWUxZmIyYWQ4MSBsZWdhY3ktdHJ1bmsKKzc1MzYgMzQ2ZmY5YmE5ZDM2MzcwNGNhYzBjY2EwYzNjMTAzYjg2NzE0MTVjYyBsZWdhY3ktdHJ1bmsKKzc1MzcgZDY4MTYzMWQ5OTJmMjAxYjQ0MTUxOGFmMjJjMDA1NDU0ZDZiNjBlNSBsZWdhY3ktdHJ1bmsKKzc1MzggZjA3MzFmYTQ0NDdmNTI2MmY1NTE3ODNjNmE4Y2RjYWQwNDg5YjAzZSBsZWdhY3ktdHJ1bmsKKzc1MzkgN2RkZWQ3ODUxZmNhOGM0YjQ2Njc3ODRhYTk3Mjk0YTI5NzVhMGE2YSBsZWdhY3ktdHJ1bmsKKzc1NDAgYjZmY2U3MjQzYmEwYmE4OTZmMDc4MjI3MjhjNTUwMjA2ZDcyZTlkYiBsZWdhY3ktdHJ1bmsKKzc1NDEgNzc2MTZiMzAwMWVmOGY3ZTA5YzQ2MzljMzZjMjg0ZGQ5NzFkZWUzYSBsZWdhY3ktdHJ1bmsKKzc1NDIgNGFhY2E0MmEyYTE2Yzk1MTc0YjJmZmY3YTVjM2Q2Y2FlZjg1Yjg3OSBsZWdhY3ktdHJ1bmsKKzc1NDMgOGVjZjJkN2M5ZmIxYWRiNDM4NWNmN2QwZmRhZjQ0MzEyYmQxMjQxYiBsZWdhY3ktdHJ1bmsKKzc1NDQgZmEzMTQ3NmEyNzg2ZWU4ZjU0ZDBlNWMwOWU1ZWQwMTdmZWIxMTZlNyBsZWdhY3ktdHJ1bmsKKzc1NDUgZWIxMmY0MDQ2ZDBiZTBmMGRmNjRmNmY4MGM2YmU1MTAyMTYyOTMxMCBsZWdhY3ktdHJ1bmsKKzc1NDYgNDRiZGYwYjU2YzBiZDgzNDE0MzRjY2Y4YjlhMjM3MDhhMjJhMGUxZSBsZWdhY3ktdHJ1bmsKKzc1NDcgZDI0ODNjMjc3NDJjMTU0Y2M0NjIwZGY1M2U2ODk5ZTlhMTdlNzY3MiBsZWdhY3ktdHJ1bmsKKzc1NDggZTIxZjFkMjU5NWRlOGI5OWI4MGFkZGE2ODcyZWRmZGZjZTA4NDRjYSBsZWdhY3ktdHJ1bmsKKzc1NDkgMzI3M2FjYmU0NzZmZGFhNWZhYjg5ZjZhMjIzYTkyZDEzMTlmY2NmZSBsZWdhY3ktdHJ1bmsKKzc1NTAgNWI5ZDQxZjRjMDhjMTE1ZjgzODM1YmExOGExNzk4NWQ3ODlhN2NjNCBsZWdhY3ktdHJ1bmsKKzc1NTEgNGVkYWI0NzQ5NzRjZTA3NzY3MDY0NzJhMjNlNzljM2U5NGY0ZTQzYSBsZWdhY3ktdHJ1bmsKKzc1NTIgMjNjNGM3ODM4YWMyYWIzYTY2NzVjMWNhY2I3MWMwMGYxMjcwMWEzMCBsZWdhY3ktdHJ1bmsKKzc1NTMgN2Y0YjMyZTg2NTQ1NTcyNTJiNjdhZmUyZGM5ZWJmMzFlMTQ0MzhiNyBsZWdhY3ktdHJ1bmsKKzc1NTQgZDZiMjkyYTMzY2ZlZjUzYzc1ZWE0OWZjMjdjYmJkOGM5OTUzYzA0NSBsZWdhY3ktdHJ1bmsKKzc1NTUgOWE4YWRhZjU4Y2U4NjA3NmI2ODkzNTVjZDBkYjUwYjcyZDZkMTk2NyBsZWdhY3ktdHJ1bmsKKzc1NTYgMWI2MTliODExYzEwMzVhODE1MjNiNjBiMzQ4ZDcwNzU4N2E0NzdmYSBsZWdhY3ktdHJ1bmsKKzc1NTcgMmM4ODEyZWVhNjM3OTQxNTU0YTRiNjU2ZDRhOWUxNWFjYzAyMjAwYiBsZWdhY3ktdHJ1bmsKKzc1NTggN2FiMWFhMDhkMzQ4ZGIwY2ZhN2EzNTJkZDllYTQzNTliMzhkMWYxMSBsZWdhY3ktdHJ1bmsKKzc1NTkgYWZjM2U0ZTA4NzQwYjYzOGFjYzU0MDMzYTE2YTMzYmMxNTZhZmEwNCBsZWdhY3ktdHJ1bmsKKzc1NjAgZDM3MDY1Nzk0NjhlNTBkNmExYTExMTI1NzE4MWY2MTQ1MTIzNDdjMiBsZWdhY3ktdHJ1bmsKKzc1NjEgYWE3M2RhNjYxY2RmZmFlMDlhZjkzM2UyZWMyMTQ3MzQxOTJjOTA0MiBsZWdhY3ktdHJ1bmsKKzc1NjIgNmVkOGViNGI2NjRiMzFiZTE4ODgzY2UzNWUxMzJlMzE2Y2VkNzNmYSBsZWdhY3ktdHJ1bmsKKzc1NjMgZTQyOGQyY2ZlZDQwYjNhOWNmNjk5YTYxZDAwOTg5ODBlZWE2NGQ2YyBsZWdhY3ktdHJ1bmsKKzc1NjQgOTFmODYzMDZiMDdiODVmYWJkZjhmNTQ2YWI4YTgyNWE5ZWEwZTgzNyBsZWdhY3ktdHJ1bmsKKzc1NjUgYjY3YzAyYmQ1ZTIzNjBlNDg4OTkzNjc0OGRlNjE3YjMxM2I3MDIwMSBsZWdhY3ktdHJ1bmsKKzc1NjYgM2ZlZWM4NWJiYTliNjM5OWY0NDVlZDUyM2IzYjU3YzQwNGUxZDJiOCBsZWdhY3ktdHJ1bmsKKzc1NjcgY2I3YWFkZDlkOWYyOTI0ODRhZWU0ZTA2NGVkZjBhZTE3OWRhZGQ4MSBsZWdhY3ktdHJ1bmsKKzc1NjggZDk5NmRjNDJmZTY0MTVhZDgyMDk2NzJhOGM2NzM0NmZjNDg0Yjc0NiBsZWdhY3ktdHJ1bmsKKzc1NjkgMzhhZGJiMzlmMTVjZjU3Nzk1OTA4NDk4ZjAyYWM0NDU3ZWFkMGM3OCBsZWdhY3ktdHJ1bmsKKzc1NzAgMTE5MjJhMmVjYWNkZTRkODE4YzQ2MjFhNmUyNjgzMWUzOGFmMzhiOCBsZWdhY3ktdHJ1bmsKKzc1NzEgMzBjMTBiMjIyOTUzMThlYTllNjg3YmFiNWJlYjQ3ZjYyY2U0MTgwMCBsZWdhY3ktdHJ1bmsKKzc1NzIgNTdiN2EwM2EzMjUyYzBlNTNiYTdkZjI4YjlmMjQyNmZiOTIwNmZmYiBsZWdhY3ktdHJ1bmsKKzc1NzMgYTQ0NTg2YmQ5ZmFiM2Y3MDk1YTQ4MzcwZDkxNmU3ZWZiY2JjMmFiMSBsZWdhY3ktdHJ1bmsKKzc1NzQgYjQyMzFkNTkyMjgxZjI1YjBhNTkxYjYzMzBiODk5Mzc5NDE3ZWY0NiBsZWdhY3ktdHJ1bmsKKzc1NzUgMzIzMTAyNTFkNzY3NDA4NjQ5OGUwYjY1Y2Y4ZGMwM2RhMjk5NjFhMCBsZWdhY3ktdHJ1bmsKKzc1NzYgMjQ5N2M4YjA0MTAxN2M5NjY4NmFkMTMyMGJkYjFlNzk0MmY5YTA1MCBsZWdhY3ktdHJ1bmsKKzc1NzcgZWU3MGI0YzcxODk5M2I2MGZkYWI0M2QxOWUzODE1Zjc1YTU4YzkwYSBsZWdhY3ktdHJ1bmsKKzc1NzggNDkyYzBjYWUxZjA1MjI5YjExNmJhN2JkMTBjOTJjNmViMjRmOThkMCBsZWdhY3ktdHJ1bmsKKzc1NzkgNDEwOWExNzFjOTAxYTQxZjhiMzkxZGVmM2IwMWU0MjkxOTg5MWYxYSBsZWdhY3ktdHJ1bmsKKzc1ODAgMDBmZDY4NTdmNzZiOTM5YzViOWVhMDAwZDFjZjgzZDZhM2U2MWY1MCBsZWdhY3ktdHJ1bmsKKzc1ODEgOTQwODEzMTE1Zjc3NWI4NjI4OGNmY2RiMDgwNzMwNmQxZTNhODE4YyBsZWdhY3ktdHJ1bmsKKzc1ODIgZjliNDZiNTAzNzUxOWY0NDMzMzc0MmExN2JlNzRmZTM4NjI0YTEzMSBsZWdhY3ktdHJ1bmsKKzc1ODMgYTlhNmQ0MTZiOTQ1Yjc5ODkyMTdiYzg0OTBkNTgwZGRiNDM0OTgyMyBsZWdhY3ktdHJ1bmsKKzc1ODQgMGJiZjk3ODYxY2Q5YTE2MDQwNjUwMDFlMWQyMmI2MmU2MTQyYjg2NiBsZWdhY3ktdHJ1bmsKKzc1ODUgMDczZjFiM2FkOWQyYmFmNDBiNGNiZjAyYjZkMDI1ODEyODJhZGM5NyBsZWdhY3ktdHJ1bmsKKzc1ODYgMjFiODcxMzI1Yzg1MzRkMWIyODdiYTkwNzdmYzc2NjRlYzlmZGVjMSBsZWdhY3ktdHJ1bmsKKzc1ODcgY2E2Mzg4YmNjMDVhNWQ5MjhhNjI2Mzc3MjA0M2NlYWUwZGRhZGVkZSBsZWdhY3ktdHJ1bmsKKzc1ODggZmI4Y2VmY2VmZDgxZWEzNjkwYTAxMzYzOWVkMTE4OWY5NDA2ZGQxMiBsZWdhY3ktdHJ1bmsKKzc1ODkgYjljZTNjYzUwMDc2NzFhODc0MWNlNjVhMzQ2MjUyMjkxZDEzMzE2MyBsZWdhY3ktdHJ1bmsKKzc1OTAgZTNhYjQ4OTg4Yzc3OTg1M2MxMWI1ZGJlYmE5YTg4N2VkYzcxNmVlNCBsZWdhY3ktdHJ1bmsKKzc1OTEgNTA2NjY0NzY3NzM2ZWZiNDAyMGU3Y2VjZGY2YjJjOTc2ZjJkMThhOSBsZWdhY3ktdHJ1bmsKKzc1OTIgMmJiMGJkYTE1ODVjN2ZhNTQ5NzM1YTA5ZTUwMmQwOGRlNWFlZGUzMiBsZWdhY3ktdHJ1bmsKKzc1OTMgMDAyODY1YWY1NWU1YjU4YzhjMzExZjkwNmE2ZmU0MDM1MTA0NWI1MyBsZWdhY3ktdHJ1bmsKKzc1OTQgYmRhMDFhMzc0NzYyMjViYWY4MDFjZjA4MTE0NzUzZDU4MGE4MTRlZiBsZWdhY3ktdHJ1bmsKKzc1OTUgYTQ4ZjM2NzhmOWUxYThkZTkzOTRmZGIzMGY0MjZkYTI3ODQwMTZlZSBsZWdhY3ktdHJ1bmsKKzc1OTYgMmU2ZWIxYzcxNWNlNWFjMWU3OTQzNTBmMzNiZjdhMTI1YWFiZTcyNSBsZWdhY3ktdHJ1bmsKKzc1OTcgNTdiMGYxNjE5ZTI4MjQwNDJhN2MxYTVmMzY3NjgyOThlNGIyOGY4YyBsZWdhY3ktdHJ1bmsKKzc1OTggMDVmZmZkNTViMDE0YzAxNTBiMDJjOWUxMDVhMTE4MjIyYjMyNmVhYiBsZWdhY3ktdHJ1bmsKKzc1OTkgMTcxNTkxYjM5ZjYzMmVkMGI0NWJiYWMxNmRjYzg5ZTEwNzcwNzI3YiBsZWdhY3ktdHJ1bmsKKzc2MDAgNTRhOWFkY2EyMTVjNmUwYjFhNzQ1YmJjYTc1ZDc1YmQzYjEwMmNhYyBsZWdhY3ktdHJ1bmsKKzc2MDEgN2I5NDBmMjk2MjFiODVmYjliZGU1YTdhNTUwM2FkM2Q2YmJjZmUyNSBsZWdhY3ktdHJ1bmsKKzc2MDIgZjIyMjEzMTkyNTMxNjEwYzdhNDZiNDc2M2VhYzc4N2Q0ODRkOTA2OSBsZWdhY3ktdHJ1bmsKKzc2MDMgYmYxYmQ2NGY4NWUwMWYyOWVhYTRlYzI3YjU0N2ZhZmFiNTdjYzRjMiBsZWdhY3ktdHJ1bmsKKzc2MDQgMTAyZTI5MTJkMGQxNzc2YTc2MmYyZmQzZDhkZDI4YWM0OWY4YjIwMyBsZWdhY3ktdHJ1bmsKKzc2MDUgMGJmNzM5NGRiYTIyMDViMDE1NDIzMjE3YzY1YzA1NzNjOTdkZWYyMiBsZWdhY3ktdHJ1bmsKKzc2MDYgZWM0NTI3NmE2ZGFkYjliZTEzZGJjYTVhNTIwYzMwNjRkZDljYjhhYSBsZWdhY3ktdHJ1bmsKKzc2MDcgMGZjMWRhY2RhZmQ3MzhiZGUzNzUyMmY4OWFkOGVlZmU5YmI5MDY0NiBsZWdhY3ktdHJ1bmsKKzc2MDggNjY2MTUyYjc3MDI3MTA5ZjMzYzcwMjhkMzg1YzdmYTQ5YjhjMGY0YyBsZWdhY3ktdHJ1bmsKKzc2MDkgZGVmMDNkM2I4ZGRiZjhiZDIxZjkyYjFkOGViODIzOWM3MzcwOGY5OCBsZWdhY3ktdHJ1bmsKKzc2MTAgN2ZhOWE2NDQ0ODNlODJlOWIzMWRlYjU3YWZiNjg5YzkxYjM5NzkyNiBsZWdhY3ktdHJ1bmsKKzc2MTEgYTUxM2Q4M2MwNmNiMDAxZjBkM2FmZjRmZDVkOTY3YWM5ZjgwNWZkNiBsZWdhY3ktdHJ1bmsKKzc2MTIgNDBlYjhiMGVlMTkyNjFiNWMyYzkyMjRjNTUwYzFiMjEyMTI3ZTFlMyBsZWdhY3ktdHJ1bmsKKzc2MTMgZjkzZWMxYWMxN2FhNzE5MGY2MDgwYjUwNDA5OGYwMGZhODFmYTI0YyBsZWdhY3ktdHJ1bmsKKzc2MTQgOTIxNmY1YzI1ZTRlZjc4ZTY3NzBiYmVjZjg2MWNjY2U2MjU4ZDY5NSBsZWdhY3ktdHJ1bmsKKzc2MTUgOGZiZWQ3OGU4MWU3MTIxMjg4N2I5YWI3NzljYmMwYWY0MWRkNWY5NSBsZWdhY3ktdHJ1bmsKKzc2MTYgYTRjOGI4ODcxMzc2MWZkNjY0YjBjYWU2N2Y4NjViZWQ5MmUzNzk0ZCBsZWdhY3ktdHJ1bmsKKzc2MTcgOGE5ZjE1NzkzMjM4MmVmZmYyZWY3MzM5NDUzN2I2ZjQ0ZDIwODgyMiBsZWdhY3ktdHJ1bmsKKzc2MTggNjk1MmViOWMzYTZmN2YxNTk5NDYyYmVjYTczNWQ1ZDAxZDVjMzAzZSBsZWdhY3ktdHJ1bmsKKzc2MTkgNmIzMzdlYzkyYmQwZDBhNTYxNDJlODAwOTc5ZGRiMGZjM2JjNmU3MiBsZWdhY3ktdHJ1bmsKKzc2MjAgMWU5NWZhYzg0YWIzMmY2NDY0YmJjMzJjYjVlZDUxZWMyY2ZjNjczYyBsZWdhY3ktdHJ1bmsKKzc2MjEgOWNlZmQwNGVlNTNhNTJiOGY2MTdhZDc2MzliNWMzMDc3Y2M3YjU0NSBsZWdhY3ktdHJ1bmsKKzc2MjIgYjIyN2I5YWY1ZjUzZGJhMDQyZmQ0MzVmNzQ3MDk4ZDFkMmY4NzVlMSBsZWdhY3ktdHJ1bmsKKzc2MjMgODllZGFhOGVkNTBmZTdjN2MwZTBhMGY0YmNmZGIzYTI1NjUxOThjYyBsZWdhY3ktdHJ1bmsKKzc2MjQgNzgwNjNiYWUzZmQ3NGJiNGY2M2FjYTVlZDJjNmFmZTc4ZGE4YTU4ZCBsZWdhY3ktdHJ1bmsKKzc2MjUgNDY2NWUyODQ5YTRhYzdiZWNkYzk5NGNlM2NlYzgzYzI0ZWZmZDJmOSBsZWdhY3ktdHJ1bmsKKzc2MjYgMjgyNjkyNWE4NDJlMjk4NmM4YjE3MDZiM2RmYmI2M2JlYTlmMzgwNyBsZWdhY3ktdHJ1bmsKKzc2MjcgYmQ3MDhmZTE5MzRiM2I4Y2I2YTg5YTkwMGMyNTVmMGYyY2RkNGQwNSBsZWdhY3ktdHJ1bmsKKzc2MjggMWFlN2UyZWJjMmYzMzFiMjg5Zjk3ZWQ5OGRhMjg0YjI2MzU3NjJjNCBsZWdhY3ktdHJ1bmsKKzc2MjkgZjYyMTlkNzc1NDgxYmExNzUwMTZlN2YzZDFkMzUzYjRhNmRjNTA2YSBsZWdhY3ktdHJ1bmsKKzc2MzAgYjU2NmU3NzI4MWNjMTRkNTkwMWRlOGY1NmJkMGI1OGIzNGU2NGE1OSBsZWdhY3ktdHJ1bmsKKzc2MzEgNDE3NDYyYWI4YjAwMjdmYjBkNDRkMTIzYzQ1Mjk0Nzc0NGZjNGM3NyBsZWdhY3ktdHJ1bmsKKzc2MzIgODI5YzQyODkzMTgxMDRmMGI4MDI0YzBlYWJiOGExYzhjOGE3NGQwNCBsZWdhY3ktdHJ1bmsKKzc2MzMgMzUxZTk1YzUxZGRiMWFjZGY1MTE1YjlkYjczZDBkNjAxMDllMWU4YyBsZWdhY3ktdHJ1bmsKKzc2MzQgZWY4MzUxZWE3MmMxYzYzMjNmMjMxYzBkMDg0NTZlNWRkNDI4YjYwNiBsZWdhY3ktdHJ1bmsKKzc2MzUgZGMzM2UxMWExYzI4ZGY1ZDZhMzNlMjgyOTg2MDM2ZTA2ZmQyODA0ZSBsZWdhY3ktdHJ1bmsKKzc2MzYgNWJiNzBkMmU5YWRhZGQxOGViYTFhYWFhZTlmYmZmNDU3M2ZkMWE2OSBsZWdhY3ktdHJ1bmsKKzc2MzcgNzEyNGU0ZWU0OTk1NTc2NDViMDcxYjY2NzYwY2Q4NTAzOTYxYmRkMCBsZWdhY3ktdHJ1bmsKKzc2MzggOTA2M2Y2MGVhMjhkNDE5MmY5OWQ3MTYzZGE1YzA4MGRiNzE5ZWFmZCBsZWdhY3ktdHJ1bmsKKzc2MzkgOGMyNzdmMjliNTM1ZTBiMjEyNTI5ZmQ3MTA5YjllNGJiMTNiYzc0NCBsZWdhY3ktdHJ1bmsKKzc2NDAgNGQxNWJkZjFkYjljMDA3MjczNWU1NjhkZDgwZWExNzM2MzBhMjc3NiBsZWdhY3ktdHJ1bmsKKzc2NDEgNzE1MWJiNzI3Nzc2N2VkMWU4N2Q4NGI1NGJiOGM4N2I2NmUxNzk3NSBsZWdhY3ktdHJ1bmsKKzc2NDIgNjFmODliZWJhMWFhM2M0YmYwZmRiZjEyMjkxNDc3OWVlODgwODA0OCBsZWdhY3ktdHJ1bmsKKzc2NDMgZGZmM2U1MDZjOWU4ZDQxZjZmZTFkZWNmNDQ1NGQ5YjcyZTE4ZTk5MiBsZWdhY3ktdHJ1bmsKKzc2NDQgMmVhOWM0MjVhNzY3N2YyMjk2YWM5ZjQ2NjI4MzlhMjZlMzNkMDEwNCBsZWdhY3ktdHJ1bmsKKzc2NDUgZjVkNzA3Y2U0MjIzYzE3M2VkZjhlNzhkMzM2MWY3ODRmYjk1YWQ1NCBsZWdhY3ktdHJ1bmsKKzc2NDYgYjFmYzRlYjJhYzVhOTQ4ZmIxOWE4ODlmYzBkNmU4NDY2OWU5ZWEwYiBsZWdhY3ktdHJ1bmsKKzc2NDcgMzFiMGU1ZjBiYWRmMTk2NjI4NzI0ZDZhMGZiMGQxZjA4NTNiZTFjNSBsZWdhY3ktdHJ1bmsKKzc2NDggZmY0ZjhmYThhMjczYTAyOTBmMmY4YjFmOTRjMDliNDY0MDg1MWUyMSBsZWdhY3ktdHJ1bmsKKzc2NDkgYzRlNWVmOWJjMzYxMjQ2MTg1NjMwZDIyMTZlZDI1ZGYyNmJjYzFmNiBsZWdhY3ktdHJ1bmsKKzc2NTAgMTk3ZTMyMDZlM2YzMDc0N2U1YWM2NWQwMDJkODliMjQ1YWQxZjhlNiBsZWdhY3ktdHJ1bmsKKzc2NTEgMmJkOTIwZTdlNWM3ODg1ODVlMjM5YjQ3YjIwOGY0ZWYxNzIwZTk0YSBsZWdhY3ktdHJ1bmsKKzc2NTIgYjE4ZTAzYmE0ODE3N2YxZmE0MzY2NDVjNmNlYTBhNGFkNmY2OTQ2MSBsZWdhY3ktdHJ1bmsKKzc2NTMgZjk3NDM2NGYzYTg3YTE3ZWEyMThjODc4ZDljOWI4YzBhOTdiZmU0ZCBsZWdhY3ktdHJ1bmsKKzc2NTQgODYzZmZjMmFiNzZhOTk1MzZmODdjN2FjNWQxZmZjMDJiOTgyYzkzNSBsZWdhY3ktdHJ1bmsKKzc2NTUgNmJjNTYyNTljYzRjYzI3Zjc5YmY4YWQ3Y2E4ZDVhNjUyNWQ1YWYwYyBsZWdhY3ktdHJ1bmsKKzc2NTYgOGEwYjgwZGM2ZTcxMTQ4NjkzNzJkMTU1MmJmN2FjMjdiMzZkMTEzZiBsZWdhY3ktdHJ1bmsKKzc2NTcgZTAzNjFkNTQyMWZmMGI0NTE0ZGQ1NTc3YmNiMGI0ODhkZjhhM2JhZiBsZWdhY3ktdHJ1bmsKKzc2NTggNjM2NzU3ZTgxMmE0YzRiZmE0YmRhY2FkMGE3MDZhZGM2ZjNlM2JhNiBsZWdhY3ktdHJ1bmsKKzc2NTkgNWNmODNhZDMyNTFlNWY1YjFkZmYwNmI3Yjk3ODk3NzhiYTA5MTNlMSBsZWdhY3ktdHJ1bmsKKzc2NjAgYzE3MjllMTQ4OTE2YjMzNTViNTc0NDBiNjFhZTMxZDZjZGQxMGU3NSBsZWdhY3ktdHJ1bmsKKzc2NjEgYTE2ZGVjYmI5NzE2NTg1YTU4NzQ4YjhkMmExMTdiYjJkNzdjNTU2MSBsZWdhY3ktdHJ1bmsKKzc2NjIgYzFhMWMzMDZhNDI5YjVmY2ZiODYxZGM2MzA3ZWRiOGViMzQ1NTk5YiBsZWdhY3ktdHJ1bmsKKzc2NjMgM2VjM2Q4ODA3ZjllODg5NjYyZDIxNTBmN2ZhZTdlODk1MzkwOTY4ZSBsZWdhY3ktdHJ1bmsKKzc2NjQgYmFiOTE5NmE4ZjMwYzYyNDE1NzY5NjMxYTYzMjIxNjBhYzRiNmMyOCBsZWdhY3ktdHJ1bmsKKzc2NjUgYTc5ZWNkNWFmN2U1YjQxOWI1MTViOWUwNDA3NjE3YWNkNWFkMDU0YSBsZWdhY3ktdHJ1bmsKKzc2NjYgZmEwZmMyODhiMmM5MGI5NjEwZWVmNmI0NjU0N2YzMzQ0YTkwZjcwYyBsZWdhY3ktdHJ1bmsKKzc2NjcgYjdhYzdiNDZiMTBjMDEwNWI0NWI1ODRiMzJlZjdkMmM0NTA5YThjYyBsZWdhY3ktdHJ1bmsKKzc2NjggZjBmZDEyZDc2ZTA3OGZmNWJiM2JmNGE4YTZmMTc5NGEwNjkwODBkOCBsZWdhY3ktdHJ1bmsKKzc2NjkgNTJmM2RjNDFmNmM0ZmNlYmJkZjk3ZWI1NzUxYjBmZTgwMWJhZDQ2ZSBsZWdhY3ktdHJ1bmsKKzc2NzAgYTg3NGY1ZDMwMzhlZGJkNGYxOTJhNDBjMzZmYjQzYjZmZmY3YThhZiBsZWdhY3ktdHJ1bmsKKzc2NzEgOGVlODFlZjRlOTgyZjRkZDY4ZjA4MWI1NjU1NDE5ODkxNzAxM2Y4ZCBsZWdhY3ktdHJ1bmsKKzc2NzIgNzRjMTI3MDRhMGJkMGM0OWU4NzFhZjA0ZjhlYTFiM2MzNjQzZmU5OSBsZWdhY3ktdHJ1bmsKKzc2NzMgZTBhNjA1ZTY2YmVkYWFkOGY5NWFmMTVkZGI4ZGRkZjkxNWExNTJmNyBsZWdhY3ktdHJ1bmsKKzc2NzQgN2UzODBkZjAwZDAwZmExYzM4YzBlNjJiOTJjYTljNDgzZGRiNDYzZSBsZWdhY3ktdHJ1bmsKKzc2NzUgMDI0ZTczODY3NGE1Y2RhNzhmN2JkZDdiMjhhYzc1ZmQ0YTQyOWY1MSBsZWdhY3ktdHJ1bmsKKzc2NzYgNTg3OGE1YWYzMTQ4ZDViZmFmYTBjMmFhZmU2OGFkM2Y3Y2FjZGY0OSBsZWdhY3ktdHJ1bmsKKzc2NzcgYWY5MmQ3NzkxNTJhYzI0ZmZiZTc2NDRhYTEyM2I5MDBmMTJjMWMxNSBsZWdhY3ktdHJ1bmsKKzc2NzggMDVjN2Q4YjRmZmQ2ZTRkZDliM2QwMGMyNjM3MTczMTg2YjdiODI0NyBsZWdhY3ktdHJ1bmsKKzc2NzkgYzI0OGEwN2U1MzQxNjRiMjYwODBhYmI5ZTEwNjljNjZkMDZhOGY4MSBsZWdhY3ktdHJ1bmsKKzc2ODAgYjM5MjAzOTgzZGU2NjExMWRmOTNhYWNiMjlkY2Y2YzQzMzc0NDVhMCBsZWdhY3ktdHJ1bmsKKzc2ODEgYmQ1ZTJjMmMxZTA4NzJiMTFhNmMwM2U4NTdmODNiNzlkMjJmOGVhMSBsZWdhY3ktdHJ1bmsKKzc2ODIgMDBlYmZhMzNjYzA3NjMwZWVkYTczYTBkNzVkN2Y1NTc1MGJhMGZiYSBsZWdhY3ktdHJ1bmsKKzc2ODMgOTNlODdjYWM0ODNlNWJmZmQ2NzM4NDI3YzliOTk1YmQwMTQ0Mzc0ZiBsZWdhY3ktdHJ1bmsKKzc2ODQgMmVjOWM5MzNhZmI4NzQ2YTQwMjQzOWMzNDE2Yjg2OGMyNDVlMmQ1YyBsZWdhY3ktdHJ1bmsKKzc2ODUgZDRjNmI0YjA1NDhjMWI2MDQzODA2NDNlYjc3ODg4OWMwOGUzYzU1ZSBsZWdhY3ktdHJ1bmsKKzc2ODYgMzE0ZDBkNjAzZjA2ZWU0ZTI3Mzk2ZjhiYjRkODlmNDRkOWM0MmJhNyBsZWdhY3ktdHJ1bmsKKzc2ODcgMWYzOGQ1ZmIzZDIzODgxYzk5OGU5ZjhjYTE4MGQ5NjIwYmUxNGE5ZiBsZWdhY3ktdHJ1bmsKKzc2ODggNWI0MDdlMGNiYzcxNWVhNjY3MzEwMWFjZTVlM2UxNTQzZDc2OTQ4NiBsZWdhY3ktdHJ1bmsKKzc2ODkgOWMxNmJkZjE2MGZmNjhmYmI2Y2Q3NDFmNTU1YjkwM2VjMDhiMzAyMyBsZWdhY3ktdHJ1bmsKKzc2OTAgZjcwMDQyYzE5YzU3YTNiNzZlZTg0OTZjYjQ5MTE4MWRmMDgzOGVhMyBsZWdhY3ktdHJ1bmsKKzc2OTEgOWJmNjUwZjIzZGE1NzEzMGI1YjI4Y2MxNjdkMDIxZGJiNjFlY2M3MiBsZWdhY3ktdHJ1bmsKKzc2OTIgM2FiN2Q1OGMyOTYzMWE2YTk1YTBmMWM2M2E5ZjY2MTJiY2EyYzBkYSBsZWdhY3ktdHJ1bmsKKzc2OTMgZjViZmI5YzRjMzY0MTNhZjQyYmE3ZGJmNDA4OGZmODA5MTM5Zjg0MiBsZWdhY3ktdHJ1bmsKKzc2OTQgMzM0ZDUyZDZkZjVkYWI0ZDJlOWI2ZGU3NDk2MTg1ZTYyNTg5MTQzZCBsZWdhY3ktdHJ1bmsKKzc2OTUgZTFmNjEzMzIyYjIzYzI3ZjY5NjBlMDFjNGQwMDg2MDE0NzJlNmZjNiBsZWdhY3ktdHJ1bmsKKzc2OTYgZDk3MzNiNGY4MTFmNDc1YTY0YjYwODNjNzg5MWY4NzQxYWYwZDZlNCBsZWdhY3ktdHJ1bmsKKzc2OTcgNGQ4YjdkZDVkZTJhMjgwYWY1MjQ0ZWY5YTZmNWY4N2UyNTRjZWMxYSBsZWdhY3ktdHJ1bmsKKzc2OTggYmM4ODMyYjUyYjUwYjhjYjE5NmQyOGFiYmM5Njk2NWIwODE1NmVkNiBsZWdhY3ktdHJ1bmsKKzc2OTkgMDU3NzRlYzM5YWQyMDViZGJkZjQ3NTg5MDk1NWMyOTkxZjVkZTY3MyBsZWdhY3ktdHJ1bmsKKzc3MDAgMWIxNGM1YzFiZTJhNTI4NTcyYTI2ZWYxODExNjJiYmJiMGZhZTcwMCBsZWdhY3ktdHJ1bmsKKzc3MDEgODRjOTNmNjAxNzE5NGVhODUwMGI3MmFhODdkZmYxYzgzYjNkZmE1ZCBsZWdhY3ktdHJ1bmsKKzc3MDIgOTc4NTJmNGViZGU2YjA0NDFlYWQ5N2ZiZDVkYmUwYzUwYjE0YTYwNiBsZWdhY3ktdHJ1bmsKKzc3MDMgNTllOGEwMmE0Nzc0ZDg2YTU1ZTNjNDAwMzJkYzQwZjU4MWZkNjA5MCBsZWdhY3ktdHJ1bmsKKzc3MDQgNzRjYWRkZjRiMjhhNGUyODQwNzVkZjlmM2E3YzQ3YjgxZjZlOTQ0MyBsZWdhY3ktdHJ1bmsKKzc3MDUgMGU2MGRlMmE0MmFmNzUwYzVkY2Y4MGNhOTU1MGM1NzVjNzAwODJkNSBsZWdhY3ktdHJ1bmsKKzc3MDYgOTMzNDRjYmRmNTQyMmEzNjhhZGUyYmIxOGJkNTkwZDg0OTZhMTkxZCBsZWdhY3ktdHJ1bmsKKzc3MDcgMGE1Y2VhNDI3YTlmYmJhZTAzNzYxY2I4OWUyNjczMDAwYzMwZmVjNCBsZWdhY3ktdHJ1bmsKKzc3MDggYjc0OWQyZGQ3NTgyODgxZTAxYWNkY2E0ZjRmMTM2ZThlNDZiYjllZiBsZWdhY3ktdHJ1bmsKKzc3MDkgMDdlZDUyZTIwMGRiNjk2OTk1NjJmZmYzMzU4MWMwMTczYTQwZWFhYyBsZWdhY3ktdHJ1bmsKKzc3MTAgNGYxZmE3YjY5YmE3NzkzMzZlOTk2NjVkYWFhOTE0ZjY5MmUzNmI5MyBsZWdhY3ktdHJ1bmsKKzc3MTEgYjRlNjcxYmMxMzMxMWFhMDhkMGViMWUzODlkZjg3MDIzNTU0OTE5YSBsZWdhY3ktdHJ1bmsKKzc3MTIgMTIzNzNiYTI0ZTVkMzcyYzZhNTVjYjhjNWRmOGRkYTc3YWE3OTY1ZiBsZWdhY3ktdHJ1bmsKKzc3MTMgMTUyODhjODM0M2E1YTYwODg2Y2VjMTRlMTFjMGIwMWQ0NDBhOTllMCBsZWdhY3ktdHJ1bmsKKzc3MTQgMjc2MzU0MzdmYTdhMmQ3ZDA0ZGNlOTk5M2Y3Y2VmZDU1YjFkOTJlMyBsZWdhY3ktdHJ1bmsKKzc3MTUgYTMyMzM4NjRjYTM4NWZlZWUwN2NiN2U0Y2NiOWQzOWQ1OTZiNGU4MCBsZWdhY3ktdHJ1bmsKKzc3MTYgYjg5ZjUyODIxYzUyZTg4YTU2OWI2MDVlYThjZDljMGEyNTU3M2EwNSBsZWdhY3ktdHJ1bmsKKzc3MTcgYTUwZGY3ZjNhMTBhMzNkMmE3OTM4NmQ4MmUxZDhhNDFkYzJmNzQ2YSBsZWdhY3ktdHJ1bmsKKzc3MTggNGYyNTFiOGUzMjhmNWI1ZjlhNzdjYzc5MTc3NzAyYTQ1ZDY5MDMzMyBsZWdhY3ktdHJ1bmsKKzc3MTkgMjQ3MTM5ZDIwMGU4Yzc4Y2MxMTY3ZGNkNGZjYTE1Y2JhODdmMTZhZiBsZWdhY3ktdHJ1bmsKKzc3MjAgYzVmZDMyNzA1N2M2YzM1NGE3YTI2ZmFkYzNhYWFmMTliZWRkYTNhZiBsZWdhY3ktdHJ1bmsKKzc3MjEgMjMzMzBhMWI5NTk0ZDkyOGY1ZTllNmM1MmMyY2I2NzhiMjQ3YjcyZSBsZWdhY3ktdHJ1bmsKKzc3MjIgNmRiOGFkZThkOGE5ODBkNTY4YzIwMWYwYjY5MDNjMTJmYWY4MWJiYSBsZWdhY3ktdHJ1bmsKKzc3MjMgYTU0NzIwZjhkZDM2Y2ZmYmY5ZWQ0MzY4ODJlOTUzNzBhZGI0Y2NiZCBsZWdhY3ktdHJ1bmsKKzc3MjQgMTMwMDU4NzJkMDUzNDZmYjAxYzc4ZDhmNjA1MTM2NGU1ODgxYjQ4YyBsZWdhY3ktdHJ1bmsKKzc3MjUgNTJlM2I2M2YyZGNhMDBlZDYzN2YzOGI0OTQ0NGU0Mzg0YWFjNmQwNCBsZWdhY3ktdHJ1bmsKKzc3MjYgMWJkZGJhMmYxMDBlNDhkYTA1Y2Q1MmFiODI3MmJiNmEyNWNiNTUxNSBsZWdhY3ktdHJ1bmsKKzc3MjcgMmZkOTI0NmIwZWU4MjEzMjhkYTMzOWQ1OGJhMTU2MjgyZTc2YTdlMCBsZWdhY3ktdHJ1bmsKKzc3MjggNmZjZjIwNzQ5OGQ4YWJlMTcxZjM4MDZhNTAyMzA1YWRiMjY2ZTA2MyBsZWdhY3ktdHJ1bmsKKzc3MjkgZmUxY2NiNGU0YzFjNzMyMDAyNzYyYzJmNDZjMDMyOGI5OTJlZDNmNyBsZWdhY3ktdHJ1bmsKKzc3MzAgZDA4N2NkMDYwYmFkZGE3NmU3ZWM1MTk0YTcyZDBjYzk0M2M2MWQzYSBsZWdhY3ktdHJ1bmsKKzc3MzEgNzE2OTRhMTcxMzI0ZmY1ZTgyYjNjZmQ1M2UzYmNlMmZjMTdiMDNkMCBsZWdhY3ktdHJ1bmsKKzc3MzIgODEyODM3OTVmMTZhOGEzOGUyODYxZGFhMDdlOTdmNjUyNGJkODAyNCBsZWdhY3ktdHJ1bmsKKzc3MzMgNDBkMmZkNDcyMjg0YTRlNGNmMGVmNjAzMTBmOGYxZGNjOWIzMTk3ZSBsZWdhY3ktdHJ1bmsKKzc3MzQgNzFkZjIxYzBhMzRlZDRiYzQ0ZDdmMzk0ZGM5MDY5N2YxNjI1ODMyYSBsZWdhY3ktdHJ1bmsKKzc3MzUgMWU1ZDYyOTNjNTI0ZTNlNWI5NDI0N2E0Mjg5MjAwOTVlOTgyOTI1MyBsZWdhY3ktdHJ1bmsKKzc3MzYgNzI5ODZiNzE2ODI0NjJhN2YzNDRlYzFjODlhYzAxYTk4NjMzYjI2NyBsZWdhY3ktdHJ1bmsKKzc3MzcgNWFiYzFhMzZiZWRkYzczOTYyY2M5NTFiMDE3ZDRiYzE5Mjg3NWQ2MSBsZWdhY3ktdHJ1bmsKKzc3MzggODZkNjBjMzRlYmRlNzc4NTc4ZjFlMzVkMWU5NDcxMjJhNDUyNDgwNCBsZWdhY3ktdHJ1bmsKKzc3MzkgMzg4NzhmMWNkNGYxZmVjOTk5N2I0M2IxOWY1ODg3M2EzZDNjYTM1NyBsZWdhY3ktdHJ1bmsKKzc3NDAgM2MxNzg4YWI5NzYxMDZmMzAxNjA3NzA4NGMyMjMyMWQ5YmU3MDRiNyBsZWdhY3ktdHJ1bmsKKzc3NDEgMWVmYzQyNzNmZGI3ZTM0OTBmOThkNzQ3YTg0YjZlMjJmN2Y3ZGY5MiBsZWdhY3ktdHJ1bmsKKzc3NDIgZDQxZWVlNmQyZmY3NjkzYmFmNGRjMDBmNWQ0OTJhZmQ4NjFlNDY1MSBsZWdhY3ktdHJ1bmsKKzc3NDMgNGYzMzFmNWJiNWYyYTRiOTIxOTk0OWQ3YTY5MzRjYWU1ZGJlY2JkNiBsZWdhY3ktdHJ1bmsKKzc3NDQgNGU1Mzc0NmU1MWFmOTBhMTcyYmU0NzE2YTMwMDgxYWRlOGM5NDM4NyBsZWdhY3ktdHJ1bmsKKzc3NDUgZGU5ZDBjNTI0OWIwZTJhN2Q0NjFlY2ZkZjFmYjM1MDg5ZGJlZDFlNiBsZWdhY3ktdHJ1bmsKKzc3NDYgYWZmNzA2MzM3OGE4YTYzOWM5NGQzNTA2NDQ4NjhjODk3ZTY2OTQ2ZCBsZWdhY3ktdHJ1bmsKKzc3NDcgYjE1OWY5OGNiZmVmYmQ2NTE4NDQxMDcyYzQ2MjkyYWQyNzk0MDY2ZCBsZWdhY3ktdHJ1bmsKKzc3NDggMTE0OGU3ZWJjYTM1NGIyM2VmMzgwY2M5YTIyNDU3ZmU1OTYyYTA2MSBsZWdhY3ktdHJ1bmsKKzc3NDkgMGQ2ZTcwYTVhYjRiZDFkNzJhZmZjMzBlNmMxMWM4NGJlYmZiMWE5ZCBsZWdhY3ktdHJ1bmsKKzc3NTAgMDk5ZGJjNjg0YzdiZTQwY2Y2OWY5NmQyODM0MmI0YjcwZDYyNzE0YiBsZWdhY3ktdHJ1bmsKKzc3NTEgYjdjYjY5NzY4OTNkODVmODkyMWNkMmVjMGU0NDA2NzUzOWMzYWY0NiBsZWdhY3ktdHJ1bmsKKzc3NTIgN2RmNWEwZDFmNTIzMGJkZjFhMzRjMGVkYzYwNDU3MDBkZGY3NGVkYyBsZWdhY3ktdHJ1bmsKKzc3NTMgMDFjM2U2NGJjODI0YWFiMGFiZDE5NmU0ZmE0MWU2MTFkMzhjNzk5YSBsZWdhY3ktdHJ1bmsKKzc3NTQgMTYzNzJhNGM0YzE0NWM2OWNkNTFhODcwZjhjYjFjY2ZhZjk2ZGMzYyBsZWdhY3ktdHJ1bmsKKzc3NTUgZThmOGNmMzU4MDU0ZWQ2YjZkODljNDhiMzZmYzI4NWUxOTNmNWUwYyBsZWdhY3ktdHJ1bmsKKzc3NTYgNjA3ZmEzMmZjMDRhMWRhM2NiOWEwZDJkMDc1ZTUzMjY5ZjUwOGRmYiBsZWdhY3ktdHJ1bmsKKzc3NTcgNTI1MGY0MDlkNTU4NzIzMWUyZDg2ZTY5NzYzN2I1ZGViNGM5Mzg2YiBsZWdhY3ktdHJ1bmsKKzc3NTggODJhM2ZiZGEzMzYzNTBiM2E0YzM1YTYxN2RiODk1MTcyODQyYmFjMSBsZWdhY3ktdHJ1bmsKKzc3NTkgMDJiMmVkZjU1YmFmMzlkZjk0NjVhZDhjNjRiZGU3MTA2MDNiYmY1ZCBsZWdhY3ktdHJ1bmsKKzc3NjAgZDJjOTk1ZWM0MjkwMTAwOGRjMWVmOWQzNGM5MGJhMDZjNzQ0ZDYzNiBsZWdhY3ktdHJ1bmsKKzc3NjEgZmJlZGE2ZjQ2ZWJiMzhhYjdiYTUyNjRjZDRhZDM5ODg2Y2QyMmMyOSBsZWdhY3ktdHJ1bmsKKzc3NjIgNWFmNzY2YTFiNTMxMjUwZmI2NDg4NzgxNjA4NThmODk3OTNkZTMxMiBsZWdhY3ktdHJ1bmsKKzc3NjMgMGYxNzExYjdkMzY3ZGZmYmI5YzUxNDI4ZjQ0MTY4YWFhOTU5NDRlOSBsZWdhY3ktdHJ1bmsKKzc3NjQgNDdkM2QzOTZkNGVmOGEyMWE2MWQ5YzlkNGVlZWRjODNiMWQwZTQyZSBsZWdhY3ktdHJ1bmsKKzc3NjUgZDMyYjhmNGQ5ZDMwOTIwY2U4MWMwYWNlMWUxMjdhNDAzNzdjZWM0NSBsZWdhY3ktdHJ1bmsKKzc3NjYgYTc2YTNhMzlmNmJjZmI3N2VlYzI4YWMwYWU5ZjM0MGJkMzcxZDQwYyBsZWdhY3ktdHJ1bmsKKzc3NjcgY2E1NjhlNWViZDE5YTM4MDU1ZmNjZTcyYzU0YWI4OTAxZjhkMWZhMSBsZWdhY3ktdHJ1bmsKKzc3NjggYjBkOWRlMzc4NmVjMzI5YzBkNjljMDRkMTRiMjY1NjYxNmJmMWI0MyBsZWdhY3ktdHJ1bmsKKzc3NjkgNTdhMmVkMDYzMGNkODU5ZThhNTg4Y2NhYmI1N2FkYTcyOTQ4OTg4OCBsZWdhY3ktdHJ1bmsKKzc3NzAgMmYyNzYwYzNkZDkwNWQ0M2ZkZDUyYzM2MzhhMDRiYzBjNGZlZWIyNiBsZWdhY3ktdHJ1bmsKKzc3NzEgN2FhNDU2NjAxNGM2YWMwNDkyYjk4ZTllMmVmZGJlZDUzOTJiMzYzZSBsZWdhY3ktdHJ1bmsKKzc3NzIgN2VjNzMzZjljMzA1NzRiZWQyYmVkODRkODFjOTUxOTJhNjkzYTUyZSBsZWdhY3ktdHJ1bmsKKzc3NzMgOWEzMmJkOGY0YWM4YTFjZTUwYjA2OGI1MWIxOTdmNDBjYjg5ZThiYiBsZWdhY3ktdHJ1bmsKKzc3NzQgYjUyM2U2ZTdhYzYxMmFkZTFlMjIxMDQ1NWIxMzRkNjUyZDExNzM5OSBsZWdhY3ktdHJ1bmsKKzc3NzUgZTc3OTQyNTYyZGQzOGU1MzVlNjZiOGM5YzU0OTRkMTY1NDk3ODUzNCBsZWdhY3ktdHJ1bmsKKzc3NzYgZmI4MTY1MzA0OTM5MzQ1ZGEzZWU3NWVjZGM5YmRhZGVmODg0OTE1NCBsZWdhY3ktdHJ1bmsKKzc3NzcgNWUzYmNmNGViZjI5ZjQ4Y2NjY2E1Yzg2NmM2NTgyZDRjYmY1NmEzYiBsZWdhY3ktdHJ1bmsKKzc3NzggOTY0NTYyYmQ3NWNjMzc2ZmE5YTMyOTQ0YjEwZGUyMDEwYTczZjlkMyBsZWdhY3ktdHJ1bmsKKzc3NzkgNDQ1OTE3MmY0MGJiMTQ0ODlkM2FlNjZmYzg5MTUyOWNkMzI0NWQ5YiBsZWdhY3ktdHJ1bmsKKzc3ODAgMzMyZmUwMmJmMDJkYzQ3YWY5MDM4MjhjNDIyYjYzMjVkYTk0OTZkMyBsZWdhY3ktdHJ1bmsKKzc3ODEgZTYxNGJjZDM0ZTM0ZmM0ZjU3NWViZTAwYTNlODMxYzBhNjczM2RjYiBsZWdhY3ktdHJ1bmsKKzc3ODIgYzNlZDI5OWQ1OTNlNmNmNDRmZWMzYTBlYzk2MTFjZmUzMDc4YWQxMCBsZWdhY3ktdHJ1bmsKKzc3ODMgZGY4N2Q1ZDFiYmRmMTdmOTczZGM3ZGM4NGRiZDMwY2Q1NjY2YjRjOCBsZWdhY3ktdHJ1bmsKKzc3ODQgZTc1NmI4ZTU0YzdjMWM2MmNhNjY1MWFmNWU0MTA3NGY1OGYzMTdiZSBsZWdhY3ktdHJ1bmsKKzc3ODUgMTkyZTJlMGNiY2U1MDY0OGQzMjY5ZWMzMTdhNDk2N2RiZGQzMzhjMSBsZWdhY3ktdHJ1bmsKKzc3ODYgNzgyNTk3Y2Y2MTUxZDlkZWExZjhiNTk0OTJjZTVhZTNmYjkzNWJlMiBsZWdhY3ktdHJ1bmsKKzc3ODcgZDBlYjE4MzA5MmIwY2RjNjhiNWQwMTVlNTgzNWU5ODIwYzg5MWJkNSBsZWdhY3ktdHJ1bmsKKzc3ODggZTg5OTY4ODRlOGUxN2U2YjdiNDAwMzkyODdiMzZmMGNkNWZiOWEwZSBsZWdhY3ktdHJ1bmsKKzc3ODkgOGZjMjE3ZDMzMjY3NTQ1OTdiMTY2ODFkNWQ3MjZlZWJlZDc3ZTZhMyBsZWdhY3ktdHJ1bmsKKzc3OTAgNjVjOWU5MGQ4MTQyNjkyZGYyYjg4OTI2MTJkODZhYzNjNTM2ZWRiZCBsZWdhY3ktdHJ1bmsKKzc3OTEgYzhlMjRjNGI4YmZiY2NhODM5OWY2MTQxN2QyN2FhMzU3NTU3NmM2NCBsZWdhY3ktdHJ1bmsKKzc3OTIgYzcyYzdlMTkzMGIzZjJjYjA3ZmM0YmFjOGJkY2VjYWVkYTg4NjNhZiBsZWdhY3ktdHJ1bmsKKzc3OTMgMmM0YjgwMmEzYjVkOGI1NWVlMDVkNGI2ZWUxYzUxMTNjYzU0MWQyZCBsZWdhY3ktdHJ1bmsKKzc3OTQgNzRhMWJjMDk5ODI3NmU3MjdmMTFiZDQxMjE2YzY3M2VhNWEwYTU3MCBsZWdhY3ktdHJ1bmsKKzc3OTUgYzNkZGI4NGE3NzYxZmRlM2M1NTQxODkzYTUzMzg5YjNiMDU1NmM0YyBsZWdhY3ktdHJ1bmsKKzc3OTYgZTJhYzA5ODJjYzMyZjBjZjExNmJjOWQ5YjRiNDI3NTgyMDE0YjJlNyBsZWdhY3ktdHJ1bmsKKzc3OTcgMzg4MTg1MzhiODljMGFlODcwYWNjZTg3MDA1Y2U2NzBjOTQ0NzJhYyBsZWdhY3ktdHJ1bmsKKzc3OTggOTFmOTkxODEyNzE4NTU3OTNhMzIyYmVlNzFiNjdmNGJhNDdiNjA0NyBsZWdhY3ktdHJ1bmsKKzc3OTkgNDg5ZGNhM2I1NGNjYjYwZmFiNjE0Yzk0YjZiMGNjY2Q3MTFlNTZmMyBsZWdhY3ktdHJ1bmsKKzc4MDAgM2EwNzc5OWRlYmExZjZkY2JjYzNhYTk3ZDJkZWNkZDUyOWRhZDAxMiBsZWdhY3ktdHJ1bmsKKzc4MDEgYjY4OTMxMzM5NDBmZWViMTMxNDE1NDJiMTM5N2JlNmI2ODRjMTNmMCBsZWdhY3ktdHJ1bmsKKzc4MDIgMTUyYjI4MjdhMWEwODczYTM1YjJiYzQyYzMxMjNhMzM0NzMyM2M3NyBsZWdhY3ktdHJ1bmsKKzc4MDMgMzU5ZThmODE1YTNhY2I0OTI3NzE1Nzk3MDJlOTZhYzVlYWViMTdmYyBsZWdhY3ktdHJ1bmsKKzc4MDQgNDM3NTJlMjA5NDczYzM4ZTFhODQ4NTRhOWQ5YjFhMmYxZmVkNTg1YSBsZWdhY3ktdHJ1bmsKKzc4MDUgNWEyMmY5YjM4YWFjMjI2OGFiMDg2ODQ4M2E3ZjVkMjc3OTRhOTU2MyBsZWdhY3ktdHJ1bmsKKzc4MDYgNjIzMmFjYmE3ZWIyMGEwYzc1N2ZmY2I4MjQzYjM3YzVmNjIxYTkyNiBsZWdhY3ktdHJ1bmsKKzc4MDcgOGRmYzI1Mjk2M2M3MTk5ZTNiYmE1ODk2ZmE5NTBmZWYyNDNkYWNkNyBsZWdhY3ktdHJ1bmsKKzc4MDggNjI3MzE2YzAwMWZiZDQ1MTc3M2NjMWIyYjM0N2I4ZjZiM2ZjNTMzZCBsZWdhY3ktdHJ1bmsKKzc4MDkgZDFhYzUxYjg3MGUyMThjMDQ3NjYyM2ExZWM5MTlmZThlZWVkZTllZiBsZWdhY3ktdHJ1bmsKKzc4MTAgZWU5Mjc1YjBmNWM4MGFmOWZlY2Q3Y2QwMzgzMjFkOTJkZWI1MGZjZSBsZWdhY3ktdHJ1bmsKKzc4MTEgNzQ2ZjY4N2FjZmMxYWY1MjMxZDk1ZjQwZjU0OWI5MWYyNzViMDIyYiBsZWdhY3ktdHJ1bmsKKzc4MTIgMTY2YzIyMzI5MjFhYmZjZThiYWNjZDUzYmY3MzY2ODYxZDkwMTQyOSBsZWdhY3ktdHJ1bmsKKzc4MTMgNjc5OTViYzE3ZjYyNWJjMGJjYjYzMmEzODcxNjkxNThmYzJlNmUzOSBsZWdhY3ktdHJ1bmsKKzc4MTQgYjBhMzE0MGNjOWIxYWRiMDdiZjIzYWJhYmRjOTkxNTViZDMyZGY4YiBsZWdhY3ktdHJ1bmsKKzc4MTUgZGI2NzNlOThmMjhkYWVlYjJmNzEyMTNjYWNmZWM1MjE0ODdhZTY3MiBsZWdhY3ktdHJ1bmsKKzc4MTcgNjdlNTIzN2NlMTQxOGIzODdkYTIyM2VlMzI0NTE2MzE1ZDUyMTVjOCBsZWdhY3ktdHJ1bmsKKzc4MTkgNjdhMGI1YWFhZTQzM2JhOTgwZWZhYmJiNzUxMTFiNDI4MjQxZGYzMSBsZWdhY3ktdHJ1bmsKKzc4MjAgNGE1NDFiYjBjNTM0MzNjN2FhMDliOGNiYjNiNjU1NWViMTYyMzM3OCBsZWdhY3ktdHJ1bmsKKzc4MjEgOWNhMjcxODhkYTIzMjMyMmY2NzAxMWIzNWMyMjJhNGYwMGUzZTU0OCBsZWdhY3ktdHJ1bmsKKzc4MjIgNWIyZWQ2MDgxZWI5NGFlMTlmNjM2ZDg1MmMwMjE3MzJiN2FlNTYzNSBsZWdhY3ktdHJ1bmsKKzc4MjMgMzM5ZGNiOWEyODI1NzBjOTMxZmE2NWVjMWVkZTE1ODYwZjQwZTVhNSBsZWdhY3ktdHJ1bmsKKzc4MjQgMDA2MWY0ZWE5N2JlOGVjMzUyMWRjOWNkMTQ2M2E2YzUwMTI4MDk2MSBsZWdhY3ktdHJ1bmsKKzc4MjUgYWUwMmVkMmFhYzNmNmM2YTUxMWI1MjNlMThiNTBjZjlmOGY2YmQxMSBsZWdhY3ktdHJ1bmsKKzc4MjYgNmFiMzkyZDdhNTJmY2Q2MDczNzRlZmNmMmNmYzZmZDkyZmQ5OWQzNCBsZWdhY3ktdHJ1bmsKKzc4MjcgNjg4YzNmZDQyY2E2MmQ1NjIxMTEwNmQxNTMwMWU4OWI5NmNkMTIwNSBsZWdhY3ktdHJ1bmsKKzc4MjggOTk5YzE5N2RhNTdjYzE2YmY1OTZmMWVmNzAyZTBjMjUzOWIyNTgwZSBsZWdhY3ktdHJ1bmsKKzc4MjkgZDU3NTdhYWQxYTRmZWE3NzhlMjRjMWJhNTY3NWRhZWZlZGMzODcyOSBsZWdhY3ktdHJ1bmsKKzc4MzAgZDQwY2Q5MTBkNjg0ZjBlYjc3YmUzZTA3NTZkNGM0ZjQ1NDNlZjU3YyBsZWdhY3ktdHJ1bmsKKzc4MzEgMmMwYjEwMTY1ZjdlY2E0MTk2YWUxNDRiMWQ2ODNiZDI2YzA0ZjE1ZSBsZWdhY3ktdHJ1bmsKKzc4MzIgMTc5MTY4ZTE3YmZlMjVjNTc3MjRkOWUyZGJlMjAzMjE3MjgwOTQ2MiBsZWdhY3ktdHJ1bmsKKzc4MzMgNDczNjJmZDkwNzFiYzc5MDliNzAxZTk3NTc4NDFhMzg0NWVmYzEzZiBsZWdhY3ktdHJ1bmsKKzc4MzQgYmMyZTMzMzQwNDhlMTNhMWFjMzU2Zjg4MDhiYWY3MGFlZmY2ZTk5NCBsZWdhY3ktdHJ1bmsKKzc4MzUgZGI0MGRiYTNmNzlhN2Q1MzAzMTQ0ODA2Y2MzMmE2YjhhM2NjYTgxNSBsZWdhY3ktdHJ1bmsKKzc4MzYgZWRlYTRmMWQ2M2ZkMDE1NTQzYzFiYzZjYzRjNTUxYjU5OGQzZWYwNCBsZWdhY3ktdHJ1bmsKKzc4MzcgZjg1ODAzOGI2NGMyNjA2NTM5YzJmYjhjYjQwNzI0OWM3M2Y5OTg3YSBsZWdhY3ktdHJ1bmsKKzc4MzggYjFjMmI3OWFhNTFmODVjNDkwZDExMjU0MDVmZWViMTM0MDA4ZTQ1MCBsZWdhY3ktdHJ1bmsKKzc4MzkgNjFlNDFiMmIxYjY5ZDQ4OGIwYjhkYjQyMzAwYTczMGFmYzE1NTVjMSBsZWdhY3ktdHJ1bmsKKzc4NDAgY2M1ODZiZGE2Mjc1NTI1ZDY3NThlMzMxOGFjYTI2YzVlYmY3OGMxNCBsZWdhY3ktdHJ1bmsKKzc4NDEgZTRhZjQxNGY1Zjg5M2I1ZDhjNmFlMDhlYTAxMWRlZmJkOTVkMTQ4MCBsZWdhY3ktdHJ1bmsKKzc4NDIgYjdjYTk4YzZkYmJkNjhhN2JhMzdjMzg0ZjU1MTc2Yjc3Njg4ZWMxOSBsZWdhY3ktdHJ1bmsKKzc4NDMgODczMTMzMzNhZTNmYzM3M2JlNGVjODgxNjBkYjM0MTdkNGVlMGYxZSBsZWdhY3ktdHJ1bmsKKzc4NDQgODk4MTUzM2U2Y2MxYTEyN2FhYjgwMzUyMGU1MTQwOWFiNzAyMTIwOCBsZWdhY3ktdHJ1bmsKKzc4NDUgZjIxMzJkMWY2NmE2MjhmNTljNWVmY2VkODE1MGU2YTFhOTM5OTVmMiBsZWdhY3ktdHJ1bmsKKzc4NDYgM2NhMTQ1MDMxNzBjYzlmOWI5MmZjMDg3NTg2MDJiYjI3MTYxZmFlOSBsZWdhY3ktdHJ1bmsKKzc4NDcgMWVhMWYwMTkyNjhkOWYyNzA3NDU3OWQ3MTVmY2IyOTY2MTY2ZjgwZSBsZWdhY3ktdHJ1bmsKKzc4NDggNDkzYTM0ZGNhNTNlZGQ3MjU0NjI5OTg1NjhhNzUyNTUyMmQzMGRiNyBsZWdhY3ktdHJ1bmsKKzc4NDkgNDI0OTIyYWZjMWJiNDBlOWY1MjAyMDlmNWI5NDNkNDZhODkzMTBjOCBsZWdhY3ktdHJ1bmsKKzc4NTAgNTg4MDM4NGQ3YzcxNDhiOGM0NTUxMDFmNzRkODA1N2E2MzBhMTEyYiBsZWdhY3ktdHJ1bmsKKzc4NTEgMTE4YmVlZjkxODczNmQ1Zjg2MmRhMzA5MmIxMDgxZjEwYmI4NzVhYiBsZWdhY3ktdHJ1bmsKKzc4NTIgN2Y5MGE2NzFjYzFkYjhhODExOGZhZjZiYTNjNGJiOTQ2ZmQyMTI3OCBsZWdhY3ktdHJ1bmsKKzc4NTMgOTk4MGZhZWViN2E1MTNkZDgyNTMyMmRjMWNlY2RhZDhiNGJjOTM0ZiBsZWdhY3ktdHJ1bmsKKzc4NTQgMDk1OTdhNDIzMjI3Y2UzMDY2ZWQyNzNhNmZmZDYxZmFlNWJjZjY3OCBsZWdhY3ktdHJ1bmsKKzc4NTUgMzE5ZTNlYWVjZGY0ZmI3OTA0YzE1YTUwMzI5ODY3OTgwN2QyNWEwYiBsZWdhY3ktdHJ1bmsKKzc4NTYgMWM5YTg0ZTA5ODFkMzU4YmE5ZjAzODBjODJlNzEwNjc3ZWIxNTY0MyBsZWdhY3ktdHJ1bmsKKzc4NTcgMmQ0YzZjYmEwMWJmMDA1ZTRiZmRjMGJlMmExY2FhM2VjMzNiZTExZSBsZWdhY3ktdHJ1bmsKKzc4NTggMzM5ZDQxMjlkM2Y3ZjE1YTQ4OWUxNjk4NWViMDEwZWY0NDMwNGJmYSBsZWdhY3ktdHJ1bmsKKzc4NTkgM2Y1NThhMzJjNDk4MDAwMzUyNDBlYTljMzkwYTdmZDQ5Y2JjZWU0ZiBsZWdhY3ktdHJ1bmsKKzc4NjAgM2M1ZmNmOGJmNTE4OTYxYmM0YmE4NWZiMmUwMGUwY2M4ZjlmMGVlYSBsZWdhY3ktdHJ1bmsKKzc4NjEgMzcxNGIzMjU4MjZkODk3Y2QxNmU3OTM0ZjI0OWE5MTk1MGEzMTJiZSBsZWdhY3ktdHJ1bmsKKzc4NjIgMTBlN2RiYTAxZDA1MTIxZmRhMWFkYTU0ZGFmYmYzMGY3N2RjNmViNyBsZWdhY3ktdHJ1bmsKKzc4NjMgNDNjNWUxZjkxNTRlNmQ3YTliMzJlYmI2YjM0ZDk3OGUzNjBjZDQ5YiBsZWdhY3ktdHJ1bmsKKzc4NjQgMDljNThiMTc0OTg5OTEwMjcwOWZkMTY5MWU0NTVkMjVjZWIyNWE2ZiBsZWdhY3ktdHJ1bmsKKzc4NjUgMTNhMzBjZWE4ZGJmN2QyODVmYzdjZTFmMzQwMGZlNDhmNzA1YjBiYiBsZWdhY3ktdHJ1bmsKKzc4NjYgNWE5NzA2OTY1YTRlYzNmYzEzOTBjYmI2ZWJmYjNmMjYwYTg0ODA5MSBsZWdhY3ktdHJ1bmsKKzc4NjcgYjI0ZTg0YTBmMzBiMzJhY2MzNDFiZTViMzAyMGNlODNlZmE5YTkxMSBsZWdhY3ktdHJ1bmsKKzc4NjggZTkyZjE4MmQ3NzI2OGM4NmI3OTQ5MjYxNjcwOGE3M2QzNzFjOTU2OCBsZWdhY3ktdHJ1bmsKKzc4NjkgMTk0ZDI2ZGY2YzUwMGNmZmQyZmMxOWZiMDQ1MDdkNDFmMThkYWI0ZSBsZWdhY3ktdHJ1bmsKKzc4NzAgMzFlMzk5NjM2Njc1ZmQ0MTQxMGM0NzUyMGQ5NzVhMzc1YjBmYTFlOCBsZWdhY3ktdHJ1bmsKKzc4NzEgYzJmYjk3NmJlY2ViMzlkYWQyMDE0MmM1Y2NlZGJlOWE3OWNiYzIwMCBsZWdhY3ktdHJ1bmsKKzc4NzIgMmM4MWQ3ZDY4ZWQzYWFkM2M2N2U3NzU5ZmQxNGExMWQzOTQzYWUxMCBsZWdhY3ktdHJ1bmsKKzc4NzMgZDE0NDc5NTBmYTA0NTY1MmZmNTViZTNhMmFjMjc1ZGEwNzA2NzZjNiBsZWdhY3ktdHJ1bmsKKzc4NzQgZmQ3ZWIwNThjZTVkYjMwNDE4YzUxZGZiNDZjNDMwNmNhM2UyMWUwOSBsZWdhY3ktdHJ1bmsKKzc4NzUgNzJiMjMxZWRmYjI1MjM5NTUyOTlhODk4MjQyNTk0MDNmZjQ1MzFmNSBsZWdhY3ktdHJ1bmsKKzc4NzYgMGE1OTk3NzNhOWNjYTRmZWRkZTdkMDQzZDc3MzA5NjVlMWM0MmU5NiBsZWdhY3ktdHJ1bmsKKzc4NzcgNzkxOGU4NzM5MTQ4YTRjNjBhYjY1Nzk0Yjc2Y2VhYTg4ZjZkYjllOSBsZWdhY3ktdHJ1bmsKKzc4NzggNDg3YWQwMzI3YWUxODI4YjI3ZGZiZmIzYmJlYzc1YjdlNDE0ZjBjZSBsZWdhY3ktdHJ1bmsKKzc4NzkgOGYwYTc5M2JiMGUyNjk1NzFjOGJjMGVhMmVmM2E2YmUxNzdhNTc2MCBsZWdhY3ktdHJ1bmsKKzc4ODAgNTBhOWMxNDA5NDZjNDg5ZmYyM2EyZGIzZTEzM2M0NDE5YzRmNmQ4ZCBsZWdhY3ktdHJ1bmsKKzc4ODEgMzc4MGNjZTE0ZjdkMDJjZGRjMWZjZDFiOTUyOTc2OGRlMTdhNjNiNSBsZWdhY3ktdHJ1bmsKKzc4ODIgYjc4NzFjYTkzMGFkNWJjNTFhOTA5ZWU3NWVjMmU1ZGExM2UwN2Y0ZCBsZWdhY3ktdHJ1bmsKKzc4ODMgYzIyNTQ3NTQxOTJjMmVhZjE1ZGQyYWU0MDI1ZWY4ZTMzNzNiN2JiMCBsZWdhY3ktdHJ1bmsKKzc4ODQgYjdhMjNkYmUwMDY1ZWNmN2Y4MTBiOTc0MGE3MzhhNTM5MmJkZTE4YyBsZWdhY3ktdHJ1bmsKKzc4ODUgNjQ4MTI0YTU4ODBhMzMyOTdhNDVlY2I4ODQxYzQ3ZTA4N2EzNmFkOCBsZWdhY3ktdHJ1bmsKKzc4ODYgMThkNmE1YWJkM2Y4MzIyNzM2YzVmYzg1MTE0ZTBjMDI4ODRhNzlmMiBsZWdhY3ktdHJ1bmsKKzc4ODcgM2IyZmRhMzFiZjFiYThlZGM1MDU3NzBlYWZkOTcyNmQ0NDRiNmNhNCBsZWdhY3ktdHJ1bmsKKzc4ODggNjcxNzA3M2RlNTg2NWE3MDYxZGUwZDAzZWQzNmJmZGNkM2QxMDhmYiBsZWdhY3ktdHJ1bmsKKzc4ODkgNzhkMzk4MDA1YmFiMDJhNTQyODZmOTBiYzlmZjA1YmMzMjRhZjdkYyBsZWdhY3ktdHJ1bmsKKzc4OTAgMTAyNjdmZGM3NTMxMTZjMWQzZTI1OTg4MjAzMzVmMGI3ODE3MGY2NCBsZWdhY3ktdHJ1bmsKKzc4OTEgMDEzZmY2OTUxOTA5ZjBlYjU1YjRlNzcxOWUzOTViMDAxN2Q5MzBjMCBsZWdhY3ktdHJ1bmsKKzc4OTIgNTk2MzgwYTU2N2QyMjM5NGNhMDFlZmYwOTA1OTM0YzM0YjUyY2ZlZCBsZWdhY3ktdHJ1bmsKKzc4OTMgMTcyMjU0ZDQxYTUxZGFmYjc0NmQyMTU5Njk4YWJkMjZmMjZiYzIyNSBsZWdhY3ktdHJ1bmsKKzc4OTQgYWJmMzNiODgyY2ZkY2U4Mzg3NGNhMTY0MzAzZDMzNDJiYmZjOTBhZSBsZWdhY3ktdHJ1bmsKKzc4OTUgYTFiNjNjNzNhZDFkYzUxNGNiMzZjNDAwY2FhMjY3NjY0NTkxNTVjMCBsZWdhY3ktdHJ1bmsKKzc4OTYgZDk5NDFhODk1YzAyMDk0MTE1NjRmMmQ0ZjA0MTcyZmVhZWFkYjA1ZSBsZWdhY3ktdHJ1bmsKKzc4OTcgMDE0ZWE5ZDcyZDAzY2ZlNGY5Nzg5NzFiNzFlM2QxNTQyZWQwMDM0YyBsZWdhY3ktdHJ1bmsKKzc4OTggZGFjYmZhYTA3YzQwN2MyNmFhYjk4NDJjZTRmMGVlMTMyNGIzOGZmNiBsZWdhY3ktdHJ1bmsKKzc4OTkgMzczMzJiNmY2MjgwYmVkNDcyYmQyOWQ5MzljZmU1YTVjYTRhMWI1YSBsZWdhY3ktdHJ1bmsKKzc5MDAgYmNjYjhkNzQyOTY0N2I5NDFlNWU3ZTZmODdiNTA0MzY5OGY1ZDNkZiBsZWdhY3ktdHJ1bmsKKzc5MDEgNjM4YTk5YmM4ZjJjY2Y3YjliYTQwYTI0OWQwNjI0NzJlMmFmNmI4MyBsZWdhY3ktdHJ1bmsKKzc5MDIgYTdlMzA5YjE3NGIyNzI1ZWJkNTMyOThkZTk1MTlhMjQyODE4ODMwZCBsZWdhY3ktdHJ1bmsKKzc5MDMgZGFiODYzYjc5ZGViYWMzMzg5ZWI0ZWM3ZTMzMjliY2JjOWU0ZDY0ZiBsZWdhY3ktdHJ1bmsKKzc5MDQgYjAwMjMzMzU1ODhjZWY3Zjk3YTkyYTcyOWUwOWE0ZGFkNTNkZDc5MyBsZWdhY3ktdHJ1bmsKKzc5MDUgNWUyYzE3YjM3NGZiMGVhYTI3MDFkZmY4YTUxOTdkMjM3OTBlZWQxMyBsZWdhY3ktdHJ1bmsKKzc5MDYgYWMyMzVjOWU2ODgxZjMzOGNhNjA5ZmVjYTQ4MDRmZTJkMmQ1OWNmMiBsZWdhY3ktdHJ1bmsKKzc5MDcgMjMyOWNjZjBlNTgxMTFjZjE2ODkxZDU2YmFkMWJlMzIzMzFhYjU3OSBsZWdhY3ktdHJ1bmsKKzc5MDggYTU2YjQ0YjM1NTA1NzJmZDM1Mjk5OTAwNzQ4NTYxZTkxZmNjODUzMCBsZWdhY3ktdHJ1bmsKKzc5MDkgY2VlNGM0NWM1NjhmNzYwZmFiYTE5NjlkZWZmYWZiNmRmYzYyMzg3NCBsZWdhY3ktdHJ1bmsKKzc5MTAgYWQ0NzQxZDU0MzFjYzFiZDBiY2VkMWNiMzFhMDE4MGEyMzY0NjY2NiBsZWdhY3ktdHJ1bmsKKzc5MTEgM2Q3ODkwMjM2YTRlNTkxYjM4YzEzMzhlZjM3NjgyNDA2MGQyNGJjMSBsZWdhY3ktdHJ1bmsKKzc5MTIgNTkxYzY0MjBmMTFkMDI1ZGNkMmM5MzFiMGJlMTc0ZTI1OTJhMzc4ZSBsZWdhY3ktdHJ1bmsKKzc5MTMgY2Y4MThiNzBkYTNlNjVkNjQxZmJmOWIyNDljMjA1ODY5Y2NlYTE4OCBsZWdhY3ktdHJ1bmsKKzc5MTQgYzJkYWUyYjFhMTIzNWQxZDIyZDU3MjFkYmEyMTVjYTY3NDhjYmUzZCBsZWdhY3ktdHJ1bmsKKzc5MTUgZTkyNmMzMzFlYmJmMWQzMTdkN2U3MTk1MmNmMDM1NzExMGQ1YzEyMiBsZWdhY3ktdHJ1bmsKKzc5MTYgMWRhZTViMWM4ZGJhMTJhNTM4ZjZhODBkZjBlYmFjMTQzMTk3MWUxYyBsZWdhY3ktdHJ1bmsKKzc5MTcgOWVhYTJjYWVkMWMzYjg0NWEwZjg5OGYwNWU0ZDYxNDIyOGE2MDc2YSBsZWdhY3ktdHJ1bmsKKzc5MTggM2M2ZGI3MTY1YmMzZDYwNGRjYTRmODY5ZmZhZjk0ZGViOTY2NjNmNSBsZWdhY3ktdHJ1bmsKKzc5MTkgNDU3OWE3NzAxOTQ5ZGFiZGM0NWZmOWQwNDAyNmY3MTQzNWRhODhlYSBsZWdhY3ktdHJ1bmsKKzc5MjAgODg2OGU5ZjEzNjU3ZDMwYzljMjM3MTBmMmVhNGE1ZGQwZmQ3ODBlMSBsZWdhY3ktdHJ1bmsKKzc5MjEgODdjNGYwNWExN2U1MWZjNjA3MjRhNmU5NjdjNzg5OTY0NTA0ZGJjYiBsZWdhY3ktdHJ1bmsKKzc5MjIgOGYzZTE2MTIzNjAwNDllMTQ2YjcxODQwN2Q3ODRkY2U3MWIwOWQ0MSBsZWdhY3ktdHJ1bmsKKzc5MjMgNTE1ZWQ3M2RhNWIxNGI3YjVhZWU4OGExMTk2OWU1NzE5NDkyZmE4ZCBsZWdhY3ktdHJ1bmsKKzc5MjQgMGIxZTY5NTA4OTA3MzZkMjQ5NDEzMDFiY2FlYTZhMjc0YmZhYmMwMCBsZWdhY3ktdHJ1bmsKKzc5MjUgZTlmNjE1ODg0NmIxNmI3YzM4MDgzM2U0NWU5YjgzNDgxN2EwNmY4NSBsZWdhY3ktdHJ1bmsKKzc5MjYgMDFmMDJiZjJiNDQxNjdiNjg0NmFhMzQzMzg1MWEyNmFiYzA3MDRjZiBsZWdhY3ktdHJ1bmsKKzc5MjcgNGE4MGU2Y2E3Y2QzNWVmNDdlMzAyZTdhM2MzMjY4MzEyZjE0ZmU5NiBsZWdhY3ktdHJ1bmsKKzc5MjggNWFiZGRlOTljOWVhZGFhOWQ4MDZiZmFlODllMWJjMzlmNjg3ODdhMCBsZWdhY3ktdHJ1bmsKKzc5MjkgMmE4NzUxOTlhNzFlODYwMjJhM2ViYzA4OGEzZmE4ZTNjMTY5MGIwYiBsZWdhY3ktdHJ1bmsKKzc5MzAgOWM2YzA3ZDQ0OWRmNTQwMzYyMjk0OWI3OTg4YzJhNjZkYjNjZjRmZCBsZWdhY3ktdHJ1bmsKKzc5MzEgMGY2Yzk2ZjQ4ZTFiYTQ3NmU1Njc5MjY4M2I3OWVlOWE4MjU4ZGI3YiBsZWdhY3ktdHJ1bmsKKzc5MzIgNjYzNTc5YTNjN2ZlYjU0MGU3ZmFjMjA0NGJjMTEwOWI0ODAzMDE0YiBsZWdhY3ktdHJ1bmsKKzc5MzMgNzMxNmVlY2IxZTZiMzJlNjE4Y2IzMDQzZjkxZWJhYjllYzM1NDc1YiBsZWdhY3ktdHJ1bmsKKzc5MzQgNTM0NDAwOTcxMTFmZWY4ZTM5ZTBlOWU1YzVmODcyMTA3ZWE3ZDc0MyBsZWdhY3ktdHJ1bmsKKzc5MzUgMTMwNTJkYzJkNWY2ZTZlNGI5MjQ2YzEyZDBhM2YzZjM3MWMzODUwNyBsZWdhY3ktdHJ1bmsKKzc5MzYgYzVkN2I2ZmNlZTAzZDIyNWVjZDM3ZDQzMTVmMWFkYTJkN2ZhYWJiZCBsZWdhY3ktdHJ1bmsKKzc5MzcgYWQ2YzQyN2RjYmQ5ZTRkNTc0ZDliMDgwOTA0ZTg5NjRmZTAxMWJhYyBsZWdhY3ktdHJ1bmsKKzc5MzggMGRlZDYzYmNmNWRlMjllZGQ5NjllZGYxMzZjNmFmYTA1YjdhYTIxNiBsZWdhY3ktdHJ1bmsKKzc5MzkgNjBmNjY0OWZkMjMxMGRlYmEzYzIzNmRjYzZmZjNlYmM4N2JmZWRkNiBsZWdhY3ktdHJ1bmsKKzc5NDAgOTUyODUxZDljY2UyMGY4ZGMxZTM4NDlhZTBjOTRjMzQ2MTBkYzkzMiBsZWdhY3ktdHJ1bmsKKzc5NDEgYjA1ODRiZjdiNGY1Mjk5NjJkNDkzODIwNjEzZDI4YTUyNDIzNWUxYyBsZWdhY3ktdHJ1bmsKKzc5NDIgMDllNmI0ZTM0NTIzYmFlMjBlNTgyNjYwOGExMzM4YmUwM2NmYjgwMiBsZWdhY3ktdHJ1bmsKKzc5NDMgNDNjODZjODE4MWQ0NTc2NjFkNTgwZTkyOThhOTYyZWMzYjg5ZDcxYSBsZWdhY3ktdHJ1bmsKKzc5NDQgNjRiNjkzMTUxOTU2ZDIxYWQ1YTgzZjg1YTJkOGZhMjU5MDEzMjMxMyBsZWdhY3ktdHJ1bmsKKzc5NDUgMDhlODZkNDM5MjgxZGYwNTY4NzRlNmJhZGJhMDQ1M2FjN2EwZDczYyBsZWdhY3ktdHJ1bmsKKzc5NDYgNDdlODFiMjE2OWU5NTRlYzI1YWY0YzUxN2FiNWQ2ZTFiMWRmMzgyNyBsZWdhY3ktdHJ1bmsKKzc5NDcgZDkwMjlhNGUwZjJhYzc3YzZmYzgxMjkxOTFjNjBjNWYzMDQ1OWE3YiBsZWdhY3ktdHJ1bmsKKzc5NDggOGU1ZDZkMzEwM2FlZjgzZTk3MmZjMjI0OWI4MjM4ODE3YjRmY2E5NyBsZWdhY3ktdHJ1bmsKKzc5NDkgODRkYjE1NGQ1YjkzZThkMGJlMDU2MjU1ODBiZWJlODFhMmE2ZjU5OSBsZWdhY3ktdHJ1bmsKKzc5NTAgYzNkNGJmYjhjY2RmMDFkNmEzNWJkMzI5Y2I0YjQ3NjQzYjkxOWU3MyBsZWdhY3ktdHJ1bmsKKzc5NTEgMjY2NmU5MDRlNDBiMGNjZDQ4ZTkyYzIxMzI2NjdjYzBhNDllN2FlNyBsZWdhY3ktdHJ1bmsKKzc5NTIgYTg2ZWEyY2NlYWVjZGQ1YjJlNzU2OGM3NTFkNmVjYWQxODVjMzI5YiBsZWdhY3ktdHJ1bmsKKzc5NTIgMDYyYWVkOGE0Y2UyYzkxYzgxYjgwZTI5ZjAyZmFmZjFjZjVhNzYxYiBsZWdhY3ktdHJ1bmsKKzc5NTQgZjQ0YTU2ZTY5N2ZiMTdjZTU2Yjg2Y2Y0MTliNjA3NmMyNjhjYzM0NiBsZWdhY3ktdHJ1bmsKKzc5NTUgMjY2YzlhYThjMTI3NzYxNDkxYmU4ODgxYTAzMWVkMTZkNDkzZGRlZSBsZWdhY3ktdHJ1bmsKKzc5NTYgNmQ1M2ViYWVjMDIxNTkxYjMzNTA5NjBiMTg4YTUzYjZkM2ZjNGRjMiBsZWdhY3ktdHJ1bmsKKzc5NTcgYjk2MTc2YzlhODUzYjY5ZDIwMWYwYjUwMjBmYTY4MzlhNGU1MDU3NCBsZWdhY3ktdHJ1bmsKKzc5NTggZjFhZmM1NjkwYjJhYjVmMjAxZTMwNGY1MTNkZjk5OTRiYjQ3NjgyNSBsZWdhY3ktdHJ1bmsKKzc5NTkgNmZhMjk3NTZlYzZhMjk0Mjc0N2FkOGE1MzhhZDBkZmQ5ZWQyNWVhNSBsZWdhY3ktdHJ1bmsKKzc5NjAgNzM1MDllZmE3MjRiY2NlY2Y5ODU4Nzg0NjY3M2I3M2M3NTAxMjEzNSBsZWdhY3ktdHJ1bmsKKzc5NjEgNTk1YTVmZTE0MGQ0MGMyNzYzMTBhZTVkZWE5MDM1NjEwZGI2OGJmMyBsZWdhY3ktdHJ1bmsKKzc5NjIgNDc4YzY4ZWE5ODI3NTFhMjUyYzI2YjhhYTlmZjE3YmRhNmE4OTQyMCBsZWdhY3ktdHJ1bmsKKzc5NjMgMTk1ZDVhYTE5NTFlMDNjMjM5ZDhmNDA1OGU1ZTk5N2ZjZGY5NzdhYSBsZWdhY3ktdHJ1bmsKKzc5NjQgZWQwMzk0NDg0MDgyYjYyYzkwNGY2YzYwMTNhMWJhMzE5NzRlY2UyNSBsZWdhY3ktdHJ1bmsKKzc5NjUgMmU4OWM1NWQ5YTI5NWEyZWZiYzQ3OGIzMDgwMmY1OWQyOGFkMDQwNSBsZWdhY3ktdHJ1bmsKKzc5NjYgMmQxMzMyODAxMjlmNzJjOTc1ZTgzMzJkZDA4NzFlNjUyZWZmNzBjNyBsZWdhY3ktdHJ1bmsKKzc5NjcgYzFiNDBiMDU3N2QxOTRmMWUxYWVkMzMwNzc0YzU4NjAxZGY0YWQ1ZSBsZWdhY3ktdHJ1bmsKKzc5NjggNTA2YmE3ZGY0MmYwNDYzMWI1MTRiOTY1ZDY2ZjY1NmExNGU4OGI3YiBsZWdhY3ktdHJ1bmsKKzc5NjkgYWYxYWVhNmI5NjhmZDZkYWNjMTMwM2E1NWZkYjAyZGE1ZTI1N2U1NCBsZWdhY3ktdHJ1bmsKKzc5NzAgZWY5M2Q1MWRhYjM2MmRkNTliYjUzNTgwN2M0ODc2MGE2ODhmM2UyNiBsZWdhY3ktdHJ1bmsKKzc5NzEgYmZkMDMxNTQwODhiNmFjMTEwZjBlMGM2NTk4ZmJhOGIzZjI4NDQyZCBsZWdhY3ktdHJ1bmsKKzc5NzIgZTY1MmE3OTNmNGU3MTJmNDU3YmY1NTYxOGFjYmY2Y2ZlYTUyNTk2NCBsZWdhY3ktdHJ1bmsKKzc5NzMgMGIxOTQ2NjAwYmRkZWQ4ZjFkMGM4NTFhYTA5ZTRjYWI0Yzg5N2I5YyBsZWdhY3ktdHJ1bmsKKzc5NzQgMzc3Zjg2OTVhOWZiYjIwMWQwNjdmMzM3YTBjZDkzNGFlZThiZTA2NyBsZWdhY3ktdHJ1bmsKKzc5NzUgOWExMjI1OTIzOTE4MWY4YTM0MjhhY2FlZWEyZGM2ZjJjNDY2OTE1ZiBsZWdhY3ktdHJ1bmsKKzc5NzYgYjkwNTM3MmVkZDRmYjQ3YTdlMDg3MjdiNmQ5NmMwYzRkYTAwNDFhNiBsZWdhY3ktdHJ1bmsKKzc5NzcgODIxOTEyZmQ5NjVhMWQwYTRhNmVkMDk1YWY0YTA1ODg3YjYxNDUxNiBsZWdhY3ktdHJ1bmsKKzc5NzggNDY2MGZmYjllNDgzYzc1ODc5ZTM0NWMxOTU1YmE3NGY4ZmM3M2M3NiBsZWdhY3ktdHJ1bmsKKzc5NzkgNTA1ODE2NjZjODU0ZmIxMDkwNjgxZjFmNDk2NDM5NzZjNDVhZjdmOSBsZWdhY3ktdHJ1bmsKKzc5ODAgYmEwMDVlNGRiNGM1MzQzNmYyMzcwNmE4MmI2OThiMWE0ODVjNDFhYiBsZWdhY3ktdHJ1bmsKKzc5ODEgYzg4YjliODY4OTk1MzE0NzM4YTExNGI2MGNhNTA0YTkzMGZjMzcxNiBsZWdhY3ktdHJ1bmsKKzc5ODIgNDdmYTAwODc3OTI0MmEyNzhhYzJkNDc1OGU0OTc0NDM5N2Q4OTJjZSBsZWdhY3ktdHJ1bmsKKzc5ODMgNTk0MzhkMTlkNjAzNjc1ZmY3NTA4Y2VjZmRkYTgzNjc4NDRkZGJiMCBsZWdhY3ktdHJ1bmsKKzc5ODQgNTZiNDNhNDBhNTI4NTU3MTc1MjIzNWM4N2JiZDdmMTA1ZTdjMmUyYyBsZWdhY3ktdHJ1bmsKKzc5ODUgMzY0M2YxOWQ1Y2ExYTQwMDY5ZjMzOGM4M2JhYzk0YWNjNjYxYWE4OCBsZWdhY3ktdHJ1bmsKKzc5ODYgZGRlZGZhNTU2ODRhNjBhMTFjMzU5ZmNiMjI4MmQzODdlZGNiZjU4YyBsZWdhY3ktdHJ1bmsKKzc5ODcgNzI5MGE5MzBiNGM5NTdjNWI1NjQxOTk5ZjdkN2UxMGU1MTgwNzcwZSBsZWdhY3ktdHJ1bmsKKzc5ODggZmIzOWQyODg2NjRiNTM5ZWI0ZmEwZDExNGY4ZjE1MjczMGQyNDU0YyBsZWdhY3ktdHJ1bmsKKzc5ODkgMTQ5ZDc0MmIwOTcxY2UxYzVjMTg0ODU0OWQ3NzlhZmU4MDJiNmE5ZiBsZWdhY3ktdHJ1bmsKKzc5OTAgNGRkNTA5NWMzYjY3ZTlmNzdkODljY2E2MDJlMWMzYTk5OTIzOGRhYyBsZWdhY3ktdHJ1bmsKKzc5OTEgNjRlMmZkOGYxZDY4NDkwZGZiNTRjYTFhOTc2YWVjZThjNTczYjFkZSBsZWdhY3ktdHJ1bmsKKzc5OTIgMDY0Yzg2NzE5Y2E3YmRmYzYxN2JjY2Y3MzIwY2EwNjJiOTA3YWUzZSBsZWdhY3ktdHJ1bmsKKzc5OTMgMjQ1NmQ4ZmY5ZmE4MjNlMjY0NjhlMGJiMzUyZmIxNzI3MDRmNDc4MiBsZWdhY3ktdHJ1bmsKKzc5OTQgY2ExMjNmMjQwYmE5YzM2ODBiYTQ4OWY2NzFmZDgzY2RiOWQzOGFlZSBsZWdhY3ktdHJ1bmsKKzc5OTUgNTc2YjdkOTI3YWZiOTA5YzhkNGIzMmNmYTkwMGI5ODU2NGQ1NzllYyBsZWdhY3ktdHJ1bmsKKzc5OTYgMTM4MTUyNzNlMTcxYmJhMTM1NGYzMzYzZDg1NTFjODJkNjFlMzIyMCBsZWdhY3ktdHJ1bmsKKzc5OTcgMzFkNjYxOTRhNzdjOWZmY2I4NDY2ODA5ZWE2ZjlhYzgyZDc3MDllNCBsZWdhY3ktdHJ1bmsKKzc5OTggODgwM2JmNDA0YjY5NDY2NTU2MGMxNTdjZWJhMWM1MmNhNTVmOTU4NCBsZWdhY3ktdHJ1bmsKKzc5OTkgOTg2YzMwODc2NWFlOTY3YWFkNzVmODUwMjEwN2NmNTIzYTE1ODNmZiBsZWdhY3ktdHJ1bmsKKzgwMDAgMGJhOWY5MTRhNzA4ODc2ZWUwMmUxMTMxMDRkZjBmZDg3MGE4MWFlMCBsZWdhY3ktdHJ1bmsKKzgwMDEgOWEyMzdhNGNmM2ExZjZmODc2ZDY1MDlmYTdhNDRlZWM2YzY4OGRmYiBsZWdhY3ktdHJ1bmsKKzgwMDIgODU4MmY3NGExZDIzNWQzZDMzNzZhMDJiZGFlYmU0NWVkMGIzN2FhNiBsZWdhY3ktdHJ1bmsKKzgwMDMgYmM5ZDU0NTIzODYyODAyYjdlOTkxNWI4ZmIzYzA2MzYxNjQ5OWViZCBsZWdhY3ktdHJ1bmsKKzgwMDQgMjZlZmY2OWVkNTUyM2NiYTQ3Zjc4MmI4YTcxZmQyMTk4Yzc5Y2RjZSBsZWdhY3ktdHJ1bmsKKzgwMDUgMzI1ODQ2M2YxY2EyNzVlMjY2YjlkNjc0YjE0OTQxNjJlMTU2YWE2ZSBsZWdhY3ktdHJ1bmsKKzgwMDYgZjVkZWNjNWQ3MDczZWY5ZjI1OThkMjg2OWUyMzQ1MmRmYmY4MGEzNiBsZWdhY3ktdHJ1bmsKKzgwMDYgYzk0OThhYzk4ODM3MjU3NWNmNzAyOGI4NjM5NWI5MDBjOWIwYTg0MCBsZWdhY3ktdHJ1bmsKKzgwMDggNTQ1NGZlNDkyNWQzNjU2NWIyYjY4YmY0MmRjYWY5MGFlYjM1MjllZCBsZWdhY3ktdHJ1bmsKKzgwMDkgMzBkNTU5ODI3MDQ3OTZlMWFjNjE2MzkxZDczZGYxZTQ3OWNlZDU0YSBsZWdhY3ktdHJ1bmsKKzgwMTAgODI2ZjI4OTg1YmVhZGY1OTEwNWE0MjU2YzczZmQ3YjM4MzI1MDgzMiBsZWdhY3ktdHJ1bmsKKzgwMTEgODRkM2NjYTgxNGZiZDBkNjUzNDkyMTEzOTY4MjZhMWZkZGVkYjRjNCBsZWdhY3ktdHJ1bmsKKzgwMTIgMjBjMmI3MTUxODhlYTk3NWJlYzQ4MmMyMGUxZmEzYzNmMGU0NGY0MyBsZWdhY3ktdHJ1bmsKKzgwMTMgYzZmMDRlOTY1NTA4MTgxNzc3NWRiNGMxMDQ3YjBiMDg2NDVjOGU5OCBsZWdhY3ktdHJ1bmsKKzgwMTQgYjFkZjkzODY1NWUxNWQ1MzkwYjU2NWZlMmMzMmIzZWRjMDAxMGI4NCBsZWdhY3ktdHJ1bmsKKzgwMTUgNDcyYzhlNGNjOTc0MWZiZWJmZmFiMjc1YzYzYWViMDc3MWJiNDlmZSBsZWdhY3ktdHJ1bmsKKzgwMTYgOGY4NzFhMDMwYjhkMTQwMjk4NTkwMjNiOTY2ZWEzNTc5ZjFhN2IyYiBsZWdhY3ktdHJ1bmsKKzgwMTcgYTBjYzAwNWVjY2Q3ODdiNGIxOTU2NmI4MDcxNmY0MDkyZmJiZTAyNiBsZWdhY3ktdHJ1bmsKKzgwMTggYjU3OWM1OTE4ZjJjYjM1YjBhMTlmNDUzZTBmMDIxN2FiMjJmZGFiNyBsZWdhY3ktdHJ1bmsKKzgwMTkgY2ZjMTNmM2YzODc2OTlkZmE0YmY3NTkzNDkwNDYwN2FjMjQ1Zjg0MyBsZWdhY3ktdHJ1bmsKKzgwMjAgMzdjOTM5ZjcwZmFjMDFkMDI2MmU0ODc2NGZjNzk1OGE1YjkwZTBhOCBsZWdhY3ktdHJ1bmsKKzgwMjEgMGJiYTkxNGJmN2IyYWNhNTFhYTM3YjMxYTk2MWY3M2Q3MDI3NzRiYSBsZWdhY3ktdHJ1bmsKKzgwMjIgN2U0MjI4NzgwZmY4YzFhMzRjN2E4ZDFjYzhjN2YyNTRiMGI0YzkwNiBsZWdhY3ktdHJ1bmsKKzgwMjMgNmMwN2Q0NGE3MDgxMDhjYzVkYjQ0MGQ0ZGVkNzU0NjcwMTc2YjA5ZCBsZWdhY3ktdHJ1bmsKKzgwMjQgOThkNGU5N2RhYWMwNTQ2ZDdmZTYwZGFiMGRkN2YwNDBjYjhmODcxMSBsZWdhY3ktdHJ1bmsKKzgwMjUgYTIyY2FmMTI5MzQ1MzhlNDQ3MGNhODc5YmZmNDFiNWM5ZGU1YzQ1OCBsZWdhY3ktdHJ1bmsKKzgwMjYgNTI2MTBlY2VlMzY3YTc5MzhhMGI0MTgzOTliN2EzNzNhZGY3YjkwYiBsZWdhY3ktdHJ1bmsKKzgwMjcgNDM4MjJlNGZjMjdkNDc2NDFhNGFkYzNkNWVmNjhmYjQ3NzZlOTEzYiBsZWdhY3ktdHJ1bmsKKzgwMjggMzQ1MDljMDUyNjZmMjI5ODQxOGVmMzhkMGVkMDRhN2M4Y2VmZGI3NyBsZWdhY3ktdHJ1bmsKKzgwMjkgMmRmYzcwN2Q2ZTY4NTE5NWJlODY2ZTg4Y2I3ZDk4ZDY2MDgzZGEzZiBsZWdhY3ktdHJ1bmsKKzgwMzAgMThmZDA3ODY5YjEzYzQ4YjhiNTI3ZmI5MTU1OGIzZDMwZmZlZDBmYiBsZWdhY3ktdHJ1bmsKKzgwMzEgYjVlNjQ4ZmRlMDk5Yzk2ZmVjM2NjNTlmNmIxNmQwMTIwMzgxNDBjMyBsZWdhY3ktdHJ1bmsKKzgwMzIgOTg5ZjRmZjczNDI5MTVhYTBmOGVhYzZmZGIzNjUxYmU1OTJjYTE0NiBsZWdhY3ktdHJ1bmsKKzgwMzMgZmE5ZmFkYTkxNmI0NTMwMzlmOTkyNzBiZTFiNjhkNzY3M2MwYWEzMyBsZWdhY3ktdHJ1bmsKKzgwMzQgNDMyOWU0MDc3Y2YzOTE1MWNmMmJjNjJiZWQwYzNiMjI3YWQ2MjM4NyBsZWdhY3ktdHJ1bmsKKzgwMzUgZWYzYmE4Yjk5ZGEyZWZmZmJhM2NmZmI2MDk5MjIyYmNkOWUzZWI5ZiBsZWdhY3ktdHJ1bmsKKzgwMzYgMWVjZWQxYWFhZDVhOGE2NWU2MzMwZDBiNWJhZWMyNTI3OGM1OWFlNiBsZWdhY3ktdHJ1bmsKKzgwMzcgOGVjMjk4YjI1NWEyMGI2NzBhM2ZhZDgyZDc4MzNlOGE1YTI5NzE2NSBsZWdhY3ktdHJ1bmsKKzgwMzggNGRjZjI2ZmU0ZGE1OTUxYjA5OWY1ZjBkYmViZjI4ZTBhZWIyYmU5YyBsZWdhY3ktdHJ1bmsKKzgwMzkgM2YzZDJkNDc0YWNhMGY1Y2ExM2E0NGY3MWEyNjBjYmU0ODQ2NzBlNSBsZWdhY3ktdHJ1bmsKKzgwNDAgZjFiMDM4NzU4YmRhOTNiMzNlNWM4Y2ZhODM5MTNiYWM1MWU5ZTMzMCBsZWdhY3ktdHJ1bmsKKzgwNDEgNmU5NDQyNzlhMzE0ZjMwMDQwNmRmMGJkMmVmZjNjZTI3MDY2NmZkNSBsZWdhY3ktdHJ1bmsKKzgwNDIgNWZmYWI2NWY4ZDA1MDk4OGI5MDY4NzQ2NTM1ZjJlNGY1ZjY4NTkyOCBsZWdhY3ktdHJ1bmsKKzgwNDMgMTlkNGEyODc0NjQ1NGMzNDExYzBmNjViM2RkMjViMzhiZmE4NTcxMCBsZWdhY3ktdHJ1bmsKKzgwNDQgOTMyY2ZjNWZjMTA0YjI0ZDExODg4YjllYTk0NmMzOTdkZGE2OGQ4MiBsZWdhY3ktdHJ1bmsKKzgwNDUgMTM5YWIyMWQyNjI5YmU0OThmMTg4Y2NmODUzMDM5M2I3M2NjYWUwMiBsZWdhY3ktdHJ1bmsKKzgwNDYgODE4Y2ZmZjNhYTVkOGJjYzFiNTA2MDJhY2Q2Y2EzZTc1M2UzMWM4NyBsZWdhY3ktdHJ1bmsKKzgwNDcgMTFlMmUzZmY5ZmM3YjE5ZWJjNDBiOTQwODU5OWVkNTUyMjM4ZDVkOCBsZWdhY3ktdHJ1bmsKKzgwNDggM2U2Nzk1MzBhZmM5ZWM2NGFjZWNiZTBlNzI2YzY2ZjA5Yzk2YTYxMSBsZWdhY3ktdHJ1bmsKKzgwNDkgYjIzMTg1NWE5NDc0NGRiZGUyMzg0MmRiNDc3N2Y2NWI2NWUwOGM4ZSBsZWdhY3ktdHJ1bmsKKzgwNTAgYmY5ZjEwNGFiZTc4YTU1YTlkZTZkZjE1OTc1MzkyYjM2MTY4ZTA4OSBsZWdhY3ktdHJ1bmsKKzgwNTEgODRkN2NjNWU2M2NkYjc2NWNkZTBhMTlhOGY3MzJmZDUxODVmNGVhZiBsZWdhY3ktdHJ1bmsKKzgwNTIgNmE5ZjI2M2UyYjQ4Y2FjYzhiODdlOTM2Nzc5ZjFhODI4YjcwNjUxZiBsZWdhY3ktdHJ1bmsKKzgwNTMgYzdkODEyZTRhZjBkM2Q5M2UzODQyMGMzMDRkZTVmMWJlZjZkNDhlYyBsZWdhY3ktdHJ1bmsKKzgwNTQgNmM3MmI5MWM4YjgzZDFhYzNiNDUxZjU1ZTE1NzkwMjgxMTE1ZTIwNyBsZWdhY3ktdHJ1bmsKKzgwNTUgOTM3ZDllYzJiNTYwNTE3YTJkYTJmNDJjMmUwYWE5MTg1YzNiMWM4NCBsZWdhY3ktdHJ1bmsKKzgwNTYgNDg2ZDVlOTg5MzhiYmE0ZDRiZmUxNDQ2Mzg5ODE0NzA3M2Y3ZTViZSBsZWdhY3ktdHJ1bmsKKzgwNTcgY2U1OTk3M2FjY2RlN2UwN2QyOWFjZjRmNzQ1NjNjM2M2ZTA4Y2U1NCBsZWdhY3ktdHJ1bmsKKzgwNTggN2UyYWQ5ZTMyZTBkNWRkNTNiOGRmNzIzYzBkNWQ2OWM1NzIyZjZhZCBsZWdhY3ktdHJ1bmsKKzgwNTkgODdkNWQ3ZmE4ZDA3ZTZiOTk2NjQ1ZmY5MmI2NjZkYTA2ZWMxY2QxZCBsZWdhY3ktdHJ1bmsKKzgwNjAgZWRiY2ZlZDdmYzdiZmM4OWU1ZTljYTFhZWFlMTA0N2UyZjQ3MTRmMyBsZWdhY3ktdHJ1bmsKKzgwNjEgODVjNTA0M2M5MzE2NzdlY2FiZTU4NmU4NGYwYzU2NDE1MmZkNzVhYyBsZWdhY3ktdHJ1bmsKKzgwNjIgNTdkYmRjMmIzMDIyNmYxMDNhMDFhZjdhM2U1ODlkMjg1NDE1MzZiZiBsZWdhY3ktdHJ1bmsKKzgwNjMgNzg0YmFmYjQ3ZTFmNmRiZjc0YmUwYjY4ZmE4OGFjMTEyZmVjNWMyNiBsZWdhY3ktdHJ1bmsKKzgwNjQgNmE0OGE3ZTcxMWQ4NmNhMjJhYWViNTA2MTI3MWFiZTAyOWJiMTdkMCBsZWdhY3ktdHJ1bmsKKzgwNjUgNTNjZGY5NGI2NTJiODNlNTY1MmY1YzcxMGU5ZWIzNGZkZDM5ODI4ZCBsZWdhY3ktdHJ1bmsKKzgwNjYgNzk1Y2E5NzVkOTZmODhlMjgzY2JkZjY2YmM1OWMzMTAyMTFhOGJmNCBsZWdhY3ktdHJ1bmsKKzgwNjcgZjNmNjU2ODdlNDI2MGRhZGY3ZGRjMDlkMWU2ODExMDc2MzdhYWI4ZCBsZWdhY3ktdHJ1bmsKKzgwNjggZGE0NzVlMTA3YTY4Zjc2OGRjNGRhMzFhMGJlODE3NTBhOTNmNTg4MiBsZWdhY3ktdHJ1bmsKKzgwNjkgZTNkNTI1ODJkMzYwNzgxMGQ1ZTNkOTJhZmM0MDQ5ZGRkNzc4ZDgzMiBsZWdhY3ktdHJ1bmsKKzgwNzAgNDUxYzdjY2YzNmI2N2YyZDFhZjhmNDRjMDA2NjNlYzYxNTNhMzA2NCBsZWdhY3ktdHJ1bmsKKzgwNzEgNGM0NjIxYWE5ZTc2NzdlNjEwOTYzYzNjZDMwMjAxYjIzNmQ4NmExNCBsZWdhY3ktdHJ1bmsKKzgwNzIgYzVhNTY3YWYxM2VlN2NmM2NhOTA4ZGRkYWY4Y2I3M2E3MDExNWJmNSBsZWdhY3ktdHJ1bmsKKzgwNzMgMmUyYmJlOTg1NjIwMjIzNTRkYmQ1OWQ1MTBiY2U2NjFkMTE1YjE4YyBsZWdhY3ktdHJ1bmsKKzgwNzQgNTUxNjkxNWZmZWU3ZDc4Mjc3MWIyZjMzNzc2OGQzMDIzN2UyMThkOCBsZWdhY3ktdHJ1bmsKKzgwNzUgMWYyMDZjOTFkYWVlMTgwMGY5M2M5ZWFjMzU5MzUyZTNiOWI4NTJlOCBsZWdhY3ktdHJ1bmsKKzgwNzYgYjVlNTFhZTlmODMyZTVhMzk4NjBlODQyZDg0MThhOWEwN2MyMGI3NiBsZWdhY3ktdHJ1bmsKKzgwNzcgZDk1NGRjMjQzZWIwN2FhYzUzZjk2NTFjNzFiMDg4MzBjYjMwNTBiYyBsZWdhY3ktdHJ1bmsKKzgwNzggYTYxMDIzYmNhMGE5NzQzNzlkYTcxNTRhMzMwYTE0NTg3OTM2ZDA1ZSBsZWdhY3ktdHJ1bmsKKzgwNzkgMDI5NGE2N2JmYmRiNDM3ZmFjYWM0MjM4ZmRlNTIyODllMWNmZmZlYSBsZWdhY3ktdHJ1bmsKKzgwODAgZjQzNTU5ZDIzYjNkNjhlOTVlYjYxYmEzN2ExNzFlYmQwZmVjZGMwYiBsZWdhY3ktdHJ1bmsKKzgwODEgODU5ODBlYTVlODA1Y2Y5OTBkMjgzZGU4ZGY1MjhjZTI1ZmZlNDQ4NCBsZWdhY3ktdHJ1bmsKKzgwODIgODlhZjViZjhmODczMjA0N2NkNmI5ZjI2MWE3OTdlOWEyNjA1YWE1YiBsZWdhY3ktdHJ1bmsKKzgwODMgNDk1ZmJkZTY0YTczYjVkYjZiOWQyYzRiYzNiOTA5MjVkMGJlZjljYSBsZWdhY3ktdHJ1bmsKKzgwODQgY2JiNGUzY2YwODZlMjIxYWQzZGZiNTQ0YzIyMTkxMjAyMzYzOWFhNSBsZWdhY3ktdHJ1bmsKKzgwODUgNzllNDljYmNlMmVmZDJmMGM2YjljMzg3MDlmMGNlMGIzMjAyNzNlZCBsZWdhY3ktdHJ1bmsKKzgwODYgZjI4ZWVhMDJjZjk0NDYyYmI5OTVmYWIyNDkzMTg5NjQ4MDgyZDgxYSBsZWdhY3ktdHJ1bmsKKzgwODcgMTBlOWNmYTAxMGYwODk3NjFmZTc5Yzk1Y2Q3Y2MxM2Y2NzBlNjU1NCBsZWdhY3ktdHJ1bmsKKzgwODggNWVkM2EyMWNjMTIyOWMxNzk4ODUyNDUzYzFlN2ZkNGQ5MWI1MzFhMyBsZWdhY3ktdHJ1bmsKKzgwODkgOGQ0MDVmNzEyODJmOTZlMDE2OGQ4NjBkZjEyN2E1MDEyNWJiMGU4NSBsZWdhY3ktdHJ1bmsKKzgwOTAgMTkwZTM1YmJjMTVhZTIzMjc4N2RlN2IyMDk1MzFmZDIwMGM2YjI0NyBsZWdhY3ktdHJ1bmsKKzgwOTEgNzI1NGVlMmE4YWJkYTcwODlhZDE0MGNlZWYyY2U2ODQ4ZmMxZmExNCBsZWdhY3ktdHJ1bmsKKzgwOTIgM2JhMDhkNmU5YjdmMjg0MWIyODM1NGUwMzY4YzA4NjJlYmIzNzBjMiBsZWdhY3ktdHJ1bmsKKzgwOTMgYmFlMmMwMTg5Zjg1OTRhOGEzNjY2MjM3MzY2NzBkMDdmNTU3NDg5OCBsZWdhY3ktdHJ1bmsKKzgwOTQgNzA4NTU1NzQ1MTZiODZiOThjNTE1OGRlYTFkMTE0MjZjMmFkMGFkMyBsZWdhY3ktdHJ1bmsKKzgwOTUgZmRkMWUxYTUzMGFmOGMwN2Q1YzI3MjJlZWFmMmIyNjE5MDc2M2M0OSBsZWdhY3ktdHJ1bmsKKzgwOTYgN2ZkYTc4NDFkYjkxODJmOGU3ODQ3YWQyMDQyMTUyNGU3MWE1NGFiNyBsZWdhY3ktdHJ1bmsKKzgwOTcgMDU1NmVhNjg3YTk3ZDgxODEwNTk0MGFjZGU4NmZlYWE3YzFkMWYzZSBsZWdhY3ktdHJ1bmsKKzgwOTggZTE0MTNmYTY0YjgzMWI3NDVkZmE0NWM5Nzk3MjNjMjZjM2MxNjRiOCBsZWdhY3ktdHJ1bmsKKzgwOTkgZjhlNDUyYTFmNjQ0ODNiY2Y2ZWQwYjNjZDM0YjA1Y2E1MmYxYmI1ZSBsZWdhY3ktdHJ1bmsKKzgxMDAgZmE2YzkxYTVmNDFiNzgzODc1NWUzMzc4ZjY1NjQ2OWVkMjZkOWRmMiBsZWdhY3ktdHJ1bmsKKzgxMDEgMzJiYWZjOWU5YzRmYzM2YzgwOWFmNjMwZjI3MGFiNDgwYmQyNzQ0ZCBsZWdhY3ktdHJ1bmsKKzgxMDIgYWNmY2UwMTVkZmRkMzZkZWUwYWFhMWI1YTFjMGNiOWVmNzYwNDgwYyBsZWdhY3ktdHJ1bmsKKzgxMDMgNjk2ZTc1NDA2NGMzN2YwYjY5MzFiYjFhNTBiMzk1ZDg1MGZjMWRiMiBsZWdhY3ktdHJ1bmsKKzgxMDQgNGQxMmU2ZTljMjdkMWU1MzY4YTc0NTBiOTMxOWRiMzU2NzVmYjMwZCBsZWdhY3ktdHJ1bmsKKzgxMDUgOTkyNDgyNWRhNGIzYTY4NTAyZTAxMDcyZTc5MjAzMWI2YmFiMmVkMyBsZWdhY3ktdHJ1bmsKKzgxMDYgZTZhMjMzZmM4YjliNDE0YWQyNjgzODQ2ZjEyNjVhNTJjZmJkN2M1YyBsZWdhY3ktdHJ1bmsKKzgxMDcgOGFmOGVlNzk3YzA5NTJjZjcxMmY4MzY4NjQ5ZGJiNDAyMWQ1NjI0YiBsZWdhY3ktdHJ1bmsKKzgxMDggOGM1NGM3Nzc2NzQ0OTBlODNiYzNiYzA3ZGI4MjFkYWRiZmI1M2NmZiBsZWdhY3ktdHJ1bmsKKzgxMDkgMDBmYzQxM2EzYjhiYzc2ZWIyOGU1NDcxOTI0NDliMzJmM2I3YmE4NSBsZWdhY3ktdHJ1bmsKKzgxMTAgYzY5Yzc1OWY0MzY2YzU2MDU1ZDA0YWI4ZGIyZGFlODAxNWFhN2MzMiBsZWdhY3ktdHJ1bmsKKzgxMTEgZWM5N2Y0MWM3YTA0ZWI0M2Q4OTRlNzVkNDEwYjE4NGNkYTQ4YzJjZCBsZWdhY3ktdHJ1bmsKKzgxMTIgYWNjNTVkNzA0Njc0NzhlMGVlZTg0YWM1OTQyNDg4ZDk0NTU5NjAwZCBsZWdhY3ktdHJ1bmsKKzgxMTMgNzViYTY0YzU1ZjJlMTJjOTUwNGNkZWFiNTYxZGVkZDM4ODQ0YjQwMCBsZWdhY3ktdHJ1bmsKKzgxMTQgMTdjYTdlNGU4ZmQ2ZTgxZmQ5ZjQ4ZWMwNWM3ODdlZTY4YjBmZDc4YSBsZWdhY3ktdHJ1bmsKKzgxMTUgZjkxNDM5ZDhmNjZlNDcyNmZmMWYyMTAxOTg3OGE4MGQ4NjdhYzY2ZSBsZWdhY3ktdHJ1bmsKKzgxMTYgNDM3MDU2NDdmZWI5Mjk3ZDVlZTJmYTUyYWFjNjM3ZDk2NGZmZDU2NCBsZWdhY3ktdHJ1bmsKKzgxMTcgNTdhMjYxZmE1OTZjNmYyNjRiYzdkZDc5MDJhNDUzOWU3NjI5NWRmNCBsZWdhY3ktdHJ1bmsKKzgxMTggNjVlYTQxZjJkMzRkODBmNzc1ZTkxZmNmZTA3MmE5ZjUyMTQ2ZjU3ZCBsZWdhY3ktdHJ1bmsKKzgxMTkgMGVmNzAyYjgwNDZiYTZmYTM5OTE4NTdkNDc0Y2VmNWI1MmIwYjgwNyBsZWdhY3ktdHJ1bmsKKzgxMjAgOTY5NDliOWY0MmNiOTAyNGQ1Mzg5YjI5OGQ1NWFlNzg2MmRjZDUyYSBsZWdhY3ktdHJ1bmsKKzgxMjEgN2MyMDlkYWJkOGM4MDAwMmNmNmVlZmVkMDQ2MWYxNDQ4MDgyOTNiZiBsZWdhY3ktdHJ1bmsKKzgxMjIgZTU5Mzc0ZTIzZmRmNmU0NjU2YmM3NWQxYTkxMzFiMjAyNjVmNzc2ZSBsZWdhY3ktdHJ1bmsKKzgxMjMgYzYzZTI4M2JiMmU0NjYxNDhmN2MxYWY1NGQwNmMwYzQ5ZDBiZWZkNyBsZWdhY3ktdHJ1bmsKKzgxMjQgYjQ5ZDgwMzdhNWNiYWUzZjQwNGM0N2Y0NmY0MzA5OTI2YmMwNGRhYiBsZWdhY3ktdHJ1bmsKKzgxMjUgMGNjOTdlNzVhMzYxMzkyOWY0YzYwOTU2MDVkODFkNTkyMDM3NDEyNCBsZWdhY3ktdHJ1bmsKKzgxMjYgMDdlMWFhYjIzMTE1MzQyM2VlZmQ1NTAzNTY1YjZiYjhlM2QxOGIzZCBsZWdhY3ktdHJ1bmsKKzgxMjcgZDQ1ZGM3ZmU0MmFmOWUzZTk4NjE3OGY3ZDBmYWM5N2ViZTRhM2FlNiBsZWdhY3ktdHJ1bmsKKzgxMjggOTVkNmUxNzk1NWVmYzhiYmQ5MjRhNDY0NTUyZTlmYzUzZWEwYmE2ZSBsZWdhY3ktdHJ1bmsKKzgxMjkgNjAwOWQ1MzkwNTg0OGNlZjkzOTFkNWQyZTBmNzg0MDM5ZjZiMzAwNCBsZWdhY3ktdHJ1bmsKKzgxMzAgMzA5NjAyYzg3OTI5MjQxNjljZjA3OWM5MTkzNDFiMTIwNzU0ZTRhNyBsZWdhY3ktdHJ1bmsKKzgxMzEgOGUxNGQ1NGE2NDE5ZDI5YzlmM2EzZmYwMmIyZjI3ZTMxODMxYTUzMyBsZWdhY3ktdHJ1bmsKKzgxMzIgMGI1NzQyZDMxODlhMjQwZWU0ZTM5NzM5YWVlY2I3MDdkYWEzNGFhYSBsZWdhY3ktdHJ1bmsKKzgxMzMgZDE3NWNhYzU1MGI5OGE2MThlNDM1NTcyYWVmNTUzOWI4NmVjOTEzNyBsZWdhY3ktdHJ1bmsKKzgxMzQgZGRlZDQzOWI3YjhhYjE2MTIxOWI3N2M3MWU3MDhlYTc4ZTY2OTIwMSBsZWdhY3ktdHJ1bmsKKzgxMzUgMTI2NWNhNDRmMDRiOWJjYzlmZjk5ZGRiOWNlMjg2ZDA5MmRiNzViNSBsZWdhY3ktdHJ1bmsKKzgxMzYgNmY5YTJjODc0MDE4ZWQ4YmZkYWUwNDJkYmZiYjVlNDk4MmYwNDA3NSBsZWdhY3ktdHJ1bmsKKzgxMzcgZWZkZWU3ZDQzMjcwNGQwN2EzNzU0NWRlMGMwNWQ0YmVlZjVmNGEwMiBsZWdhY3ktdHJ1bmsKKzgxMzggM2RiNzU0YWJmZjM2MmYwOTNlZDhiODFmMzM4NGZjZTdjOTEyZGNhMCBsZWdhY3ktdHJ1bmsKKzgxMzkgNmJkM2EyY2VjMzUzMGZlN2ExMWQxMmJlNjU1NzQwNzg4ZjdiY2M3ZiBsZWdhY3ktdHJ1bmsKKzgxNDAgMTgxNDk5ODBlY2U5ODM2OWU3Mzc0YmU2MmFlNThhNTBiMWU3ZTIwNiBsZWdhY3ktdHJ1bmsKKzgxNDEgMWRmYTRmMTdkOGZmZjYzMWRlMGQ3OTAyNjBkNDdjMTA1MDg1ODQ1MyBsZWdhY3ktdHJ1bmsKKzgxNDIgYjViYmU1MjIwZjZiYWE5NjEzMWM5MDY2NGZmODBjYmY3NTNlNWJkYiBsZWdhY3ktdHJ1bmsKKzgxNDMgMzQ3MDY4OWE5N2Q3MmEwYWVhYzAxNzM5MGQ4NDM4MTM3OWMwZTMzNiBsZWdhY3ktdHJ1bmsKKzgxNDQgNGE1ODQ5N2MxNGE4MTY3YjMxY2Q5ZDU4MGYxN2EyM2FkMWIyMjk0ZSBsZWdhY3ktdHJ1bmsKKzgxNDUgNjc2NzlmMmVkMjE3NjNiMTQ2Zjg0MTI5OTk2MTc4MDBlNDU5YTA2MCBsZWdhY3ktdHJ1bmsKKzgxNDYgODUxMzRiOTdhZTRkNTQwNzA2YzM2ZTdkZmRkMjA5OTIwYWJhYzg3YyBsZWdhY3ktdHJ1bmsKKzgxNDcgYzM1MDFhOWQzYzIwNTlmMWVhOGY5YTE0NWMxNDVjMjM2NDI2N2IwNSBsZWdhY3ktdHJ1bmsKKzgxNDggZDY2MzA0OTYzY2E3ZmU5MTY4MGNlZDY3ZmVhNzVmNThjOWVkNTA2YyBsZWdhY3ktdHJ1bmsKKzgxNDkgMTkyNmU2NDkyZDNmNzhkNTUwYjVjYmY4MTIzNTg0OGYyMWI2YTRiOSBsZWdhY3ktdHJ1bmsKKzgxNTAgYTlmZmRmZjA1NTdmOTVlZjY1OWQzNjk1ZjFmZTM3ZmRiMzI4MDU1NSBsZWdhY3ktdHJ1bmsKKzgxNTEgZTVkZTcwNzMwMGUxN2YwNzU0NzNlOTc5Mzc2MTlkMWMwZmNhZjBlZiBsZWdhY3ktdHJ1bmsKKzgxNTIgZmQ2YWNhZDdjYzdhOTdhNGRkNDFiNTZkNzk3YjRhZmM0NjJlY2E3NSBsZWdhY3ktdHJ1bmsKKzgxNTMgZWY4YTE1OTAyYTQ4N2FjMThjMzFjOWM5OTcyMTQ4MTZhNGFjZmIwNCBsZWdhY3ktdHJ1bmsKKzgxNTQgNmZkYTFlNmUyNjE2Y2I1N2IyYTBhMDFjNTMxODZhMTczZTA0ZmEyYSBsZWdhY3ktdHJ1bmsKKzgxNTUgNjRlNjExNjU1ODlhNzkzMTlhZDg5NmFjZjQ0YzdhMjkzMmI0NGU0NiBsZWdhY3ktdHJ1bmsKKzgxNTYgZDU5MTFjYThkNGViM2FmNGNmYzM0ZjZkN2M5NDkwMzVmNDYyYjEyMiBsZWdhY3ktdHJ1bmsKKzgxNTcgMTJkNjRjZGJhYWEyM2UyYzM3NDJhNTUwOWUzMjcwOTM2MGJjMGEwNSBsZWdhY3ktdHJ1bmsKKzgxNTggZDg4Y2I0ZDI2ZjEzZWQzODI1OWM5ZmQ2YjY3MGVkOWJmNDY4YjMyNiBsZWdhY3ktdHJ1bmsKKzgxNTkgZWE3MmJmZTM5NWJhMjE2MWVlOWE1ZDU3MDMzZjZkNjQzMTdkYTg3MiBsZWdhY3ktdHJ1bmsKKzgxNjAgY2QxYWU2MmVkMmNmZmMzYjhhYmUwYWZmYzQ4MmM1M2IzNGYyZmRlOCBsZWdhY3ktdHJ1bmsKKzgxNjEgYTA4MzFkZTIzNThjMzBlMjI4MjQyNTBkZDRiMDNiMDUyOTU4YmM3NyBsZWdhY3ktdHJ1bmsKKzgxNjIgMDlkODdhZDc1Mjc4OTg3YTlmNTVjYjllNmIzYTZhZDA1ZWExMTZjZCBsZWdhY3ktdHJ1bmsKKzgxNjMgMjA3N2EzMmQ4NThlZjY1MjVjZjJkNjAzMzgxNWI5MzZlMDRmZDI0MyBsZWdhY3ktdHJ1bmsKKzgxNjQgOGI3ZmFjZTliMWE3ODJhNjk5OTFhNDBlOTEyMmRmMmUxMWIwZGRiMCBsZWdhY3ktdHJ1bmsKKzgxNjUgZTc4ZDFlMGVjYzU5ODdjMjNjNDc1ZjNlNjI3NGMzMzA1OWU0NmUxMSBsZWdhY3ktdHJ1bmsKKzgxNjYgNTJjMTNmMTM4OWVmYWQ0ODk5YjE5OTBjZTBkZTRlMjZjMGU3NDNkYSBsZWdhY3ktdHJ1bmsKKzgxNjcgNGU4MTdiMmFkOTkxMGJjOTYwMzZmMjk1NWI2MjY3NzFhN2E0MmM5YyBsZWdhY3ktdHJ1bmsKKzgxNjggMzgzODNhZGEzODhlOWEwMjQ5MWY5ZjdlNWEyMmVlZWI0ZDg2OWFjZSBsZWdhY3ktdHJ1bmsKKzgxNjkgNDQyOGYxMDg0YjZjNjcwMzhlYWY5NDNlOGMwYTZkYTc4NjllZWUyNiBsZWdhY3ktdHJ1bmsKKzgxNzAgYTk3ZmRlMjgxOGZiZTQwZjMxZDc3MGIwY2ZiNmI5MjJjMWEwMjgwMCBsZWdhY3ktdHJ1bmsKKzgxNzEgMDEwOTA5ZGZjMzNlMmUwNmMyZjZjZDBiODYxNjQzYjUwMzY4YTMzZCBsZWdhY3ktdHJ1bmsKKzgxNzIgMDJlYTlkMDIxNDI3NDc2MWZlZGIyOThlMzQzY2M3MzNjM2UwYmIxNSBsZWdhY3ktdHJ1bmsKKzgxNzMgOWI2MjFhYzA5MjEyMWMyNTZjZmYzNDU0MTdhMTg3ZTE4YzBlOTBmZSBsZWdhY3ktdHJ1bmsKKzgxNzQgODhiMGIyYTNhYWI1NmE1YTk5NzJlYTAyNWZmZGJhOWVlNzM2N2YxZiBsZWdhY3ktdHJ1bmsKKzgxNzUgYmE4NjBkYzBhNTg1MTRmMTY5YzgwZTEyZTc0ZTI1MjRkZWFhZTM1OSBsZWdhY3ktdHJ1bmsKKzgxNzYgNzZmZDUyODFmOThhN2I4ZjgzOGQzODlmODk2MDJhMDU0NmJkMGY3ZiBsZWdhY3ktdHJ1bmsKKzgxNzcgNjBmY2E0NzgzNzkzNTZmOGQ5M2RjNGYyYTFjZTIyNTFlYmNkZTc4NyBsZWdhY3ktdHJ1bmsKKzgxNzggM2ExYmIxYzk4YzE0MGU4YjQ4MjQyOTFmMWMxNzJkZTFmMjZkNTMyNiBsZWdhY3ktdHJ1bmsKKzgxNzkgNTc2NjU3MDM4MWYyNGFlOTc5MzI4MGNlNTE0ZmU4NDUxMTVkYjVhYSBsZWdhY3ktdHJ1bmsKKzgxODAgMDNkZDFkZWQ1Y2IzZTg2NGU0ZmUzMDBjNWQ3MDdhOWFmYmNiY2M2MyBsZWdhY3ktdHJ1bmsKKzgxODEgYzY2MjM2YjdjYzZjYTRiNGMyYzRiYWIxOGFhZTFjZDI2N2UwZmJhMSBsZWdhY3ktdHJ1bmsKKzgxODIgYmEwOWI0MDdhMGJiOTNmNjRhNTU2NTBkMWFjYzk4NzY4M2FjOTk5MyBsZWdhY3ktdHJ1bmsKKzgxODMgZjhiYmQ3MWZiODE5YTU0MzliZDcyMWI5ODAzYjcwNGY1OTI3MmExMiBsZWdhY3ktdHJ1bmsKKzgxODQgNDA0YmEwMTdhZDQyN2I4MDAyMjIyNWU5MDU5YWNhNzg0ZjQzNDAzMSBsZWdhY3ktdHJ1bmsKKzgxODUgOTljZDM5ZjZhNTJkYjEzMGRmMjgyYzFiNzJmOTJhOWVhYjdmZDBhNCBsZWdhY3ktdHJ1bmsKKzgxODYgNjcxODMyNDcwYWExMTM0NzZlZDU0MGYyYWYxYWU0ZTM4NThiNTkzNiBsZWdhY3ktdHJ1bmsKKzgxODcgZjFkYTI5NDc3MmNmMmI1ZmQ5ZmUzMTZlYzhlY2I3ZWY4YmNlNzRiNSBsZWdhY3ktdHJ1bmsKKzgxODggZmIxNzBjZTgyOTUxMjkzNzRkNDNjMjg5YjVjNmViNzFlZGJhNGE0YyBsZWdhY3ktdHJ1bmsKKzgxODkgNDMzYzllN2VkYjYwODkwN2ZiZDkzOTc2ZDU3MWUwY2E4ZWNmZmJhOCBsZWdhY3ktdHJ1bmsKKzgxOTAgZWNlZTU1YmFhY2UzMDg5NmYxYjJlYjFkM2QzN2FiYWM0OWYzYzBkMSBsZWdhY3ktdHJ1bmsKKzgxOTEgZGVlMGE1OGE5MTMyMjI2ODA4YTM0ZGE4NWRkZWI0MWYxMzZlMDM4MCBsZWdhY3ktdHJ1bmsKKzgxOTIgMzc2MzVlZWEzYmNjODM5N2RlNDE4YTQyYWYzODdhY2Y4ZDgzZTFiMSBsZWdhY3ktdHJ1bmsKKzgxOTMgY2U2NGE4MTM5MjE2NjYwNTVhOTMwYjUyNDk0YjExMTFiNGQ1M2VhYSBsZWdhY3ktdHJ1bmsKKzgxOTQgM2M2NzQzNmEyOGU2MWIwMGM1YmQ1MDY0M2YzNThlNDhlNzI2ODRmMyBsZWdhY3ktdHJ1bmsKKzgxOTUgNTVkZmY4MTY5Y2Y1NGMwMzFhOGQ4NDYxMTg5OGNhMzM4YzI5Y2Q4NCBsZWdhY3ktdHJ1bmsKKzgxOTYgM2IzOGU4ZGI1ZjIxZmRmZWNkNjQ3NDBlNTg3MmY2ZWQzZGZkMzk5OSBsZWdhY3ktdHJ1bmsKKzgxOTcgNjEzYmQyMzdjZDU1YzUyMTE0YzljNjA1YTRhYmY4M2RmMmE3OGUwYiBsZWdhY3ktdHJ1bmsKKzgxOTggMTM4YjE3NmVjNDBmNDNjNGMwYTVjYzQ0N2Q2NTUyMjY4YTc2ZTkwOCBsZWdhY3ktdHJ1bmsKKzgxOTkgNmM5NzM2ODY1NjA4OTA1NWQ4YmJmNTVhMzY1ZDJkNWVmZDJhYWExZiBsZWdhY3ktdHJ1bmsKKzgyMDAgYmVlZTM1MWYxZjcyYWVmZjU2MWVkZmY4NjZhOTI4MWZiOWRhNjE3YiBsZWdhY3ktdHJ1bmsKKzgyMDEgZjlhZWE3MzhkNDM1MWVkMTQwMTg1MDRmMDYxOGVlOWMxYTE3NTZjZiBsZWdhY3ktdHJ1bmsKKzgyMDIgOWEzYjExNWFhNDkxOTBlZmZkYzBiN2U5YzllYmUzNzU1ZGIwYmY2OCBsZWdhY3ktdHJ1bmsKKzgyMDMgNTdhN2JhMTQxMmUyNjVlYmIzMDIxNzRjNDA5MTZlNjczZjk5MDJkMiBsZWdhY3ktdHJ1bmsKKzgyMDQgZTBkYTNkODlkNGI2NWZiYWI1ZDdjYjMzZWFkMDkxMDgxMWFmMGFjZCBsZWdhY3ktdHJ1bmsKKzgyMDUgMDRjMjgyNzRjMjgxODEyMDk4MDQwODc0ZmIzZGIyOTk1OWY5NmMxYSBsZWdhY3ktdHJ1bmsKKzgyMDYgNjE3ZjIwMzM5NGU3M2Y4NWViMzA1ODQ4YjU5YzQ4OWI2MWE3NTU1NiBsZWdhY3ktdHJ1bmsKKzgyMDcgOTk2MDc5NzQ0NTY2NWQ2MmJjODlkNWMyNjQ4NDE3MzBmNjMyZTEzNCBsZWdhY3ktdHJ1bmsKKzgyMDggNzU3NjJjNjcyMDBjYWY3NzE0MTZlYzQyMjljODViY2Q4MWQ3MmM4OSBsZWdhY3ktdHJ1bmsKKzgyMDkgZjAyN2RkMGE4NWU0ZTVlZGNiMGExZGQwNDlkMjM3ZTZiMzkxYTVkZiBsZWdhY3ktdHJ1bmsKKzgyMTAgOGY2Y2M3MTdkODE3YzA3YmZhN2M3MzY0ZjZiNjBjZjk5YWRiN2ViNyBsZWdhY3ktdHJ1bmsKKzgyMTEgYTk0YjBhMTIyYzk4NjkzODZkM2JmNWY4ODhhZjY2NzIwYjFhZjUxMiBsZWdhY3ktdHJ1bmsKKzgyMTIgNjM0NzI4ZDhiYzk4Y2ViYjU3ZTUwYzkxYmJlMDE3YzJlM2Y5YTBlZCBsZWdhY3ktdHJ1bmsKKzgyMTMgNGRjYTUzMjllOGZjNmRkMzU2ZTdmYTU4MTVkMjA1MmIyZjk0Y2EzZSBsZWdhY3ktdHJ1bmsKKzgyMTQgZDBjNmI0OWQ3MTAxOGUzNzQ1YjA2MDZlZDFjNDIzNGZhODUwYjc5OSBsZWdhY3ktdHJ1bmsKKzgyMTUgYzI5ZmMxN2Q4ZTRmZDQ5NzgzYjk5ZTdiNmVmYzEzZjEzNDlkYzNiZCBsZWdhY3ktdHJ1bmsKKzgyMTYgNzFlMTEwODJkNzMyMzU0NzNmMTU4MmE1ZjEyYzY5NGJiMWUwOGZmOCBsZWdhY3ktdHJ1bmsKKzgyMTcgNmEyMThmYThiYTliOTg3NGQwZWRjZTRiZGNjZjg3ODgyYWJhOGFjYiBsZWdhY3ktdHJ1bmsKKzgyMTggMTM4NDYzNzkzNDdkYTUwZTgxZDc5YTU3ZTNiMzBmODcyYjRkM2NjZCBsZWdhY3ktdHJ1bmsKKzgyMTkgODI3YTJmM2U2NDgzMmFhMDA3ZjJmYmYwZmY4ZTI2Zjk2YTc5MGU1YiBsZWdhY3ktdHJ1bmsKKzgyMjAgYzYwNmRkNjE1NDRhZTA3YjE5Nzc1YzUxZDllMjJmMjk2ZGE4YmQ0OSBsZWdhY3ktdHJ1bmsKKzgyMjEgZWE4YTBiMDkwOTA4YmQ0ZDY4YWY5MTRhZWNiZGUyMTExNzgzZTA4NCBsZWdhY3ktdHJ1bmsKKzgyMjIgZTIyZWVhNWQxMjZkOWI0MDg4OGI2NDMwMzdmM2ZmM2Y0NGIyMGM2OCBsZWdhY3ktdHJ1bmsKKzgyMjMgYWJlODYzNDQ2NmIyMzZjMTVmMzhiMzM0NjkwOGI0ZTY5NDhiYzU5MSBsZWdhY3ktdHJ1bmsKKzgyMjQgNDllMGUwNzJkOWNhYjU5N2M5ZmZhYThlNzgyNWI2MGM1ZDE2NjA1ZSBsZWdhY3ktdHJ1bmsKKzgyMjUgMWMzNGEwY2U3ODU4NTczYjJlMzA3MDhiY2NmNzZhMjlkOGI2MmU5ZSBsZWdhY3ktdHJ1bmsKKzgyMjYgMjBlNjM5OTg2ZmI5YmIyZDNhZGJmYTcxYzE4MGNiMGQ0ZmU4MTgwNyBsZWdhY3ktdHJ1bmsKKzgyMjcgNWE3NDI5YWM5MGM4M2IxYmIxNDNlOWM1YjM2MTEzOGU3ODkwYzc0MSBsZWdhY3ktdHJ1bmsKKzgyMjggODdkNjU4YTEyOGY5MWI1YzY4MmMxNmUyYTY1MGE3ZTkwNGJiM2Q3MiBsZWdhY3ktdHJ1bmsKKzgyMjkgZmE2ZDAxM2M5NDJiMDc3NWE3YmFlMjQwMWY4MmZiOWMzNDY1Y2Y4MyBsZWdhY3ktdHJ1bmsKKzgyMzAgNjRiYzc4MmE0MmVjNzMxNTlhZWFmMDdiNDNkMDhjNWM4NWEwMDU1NSBsZWdhY3ktdHJ1bmsKKzgyMzEgOWVkMjZhZmVlYWE1MmZjYjE2NThhZDAyMzZlOTQwNmU1OTJjYzI1YiBsZWdhY3ktdHJ1bmsKKzgyMzIgMThhNjM5ZGIwNDhjNzk5MGFkNzVhNDU2MjI1MGQ3NGY1YzU3Y2U5NSBsZWdhY3ktdHJ1bmsKKzgyMzMgNGI0MmVlYTEwYTAyOWU2MzNmYjhlMzY3ODE5YzNkNjdhMTJjOGNiOSBsZWdhY3ktdHJ1bmsKKzgyMzQgOGMwZjc0N2YxMTQxOWFjZmRhZGZmYjI0MTZjZmI2MzZiNDEwZmU0NyBsZWdhY3ktdHJ1bmsKKzgyMzUgYmZlOWJhNzRjMTllZDc2ZWQ3OGEzMDI3ZWYyYmYzY2ZjYzY2OWM2OCBsZWdhY3ktdHJ1bmsKKzgyMzYgOTE5Mzg2ZmIzZTUwNDMzMjI3NTdiYWI5MDM1MjcyNjUxZWY3NzQyZSBsZWdhY3ktdHJ1bmsKKzgyMzcgMjAxYzhkMDZlM2I3ODY3NTE5ZmIzN2ZkODE3NmJiZWVkNjA5MjAyOCBsZWdhY3ktdHJ1bmsKKzgyMzggYThlMzFkOTA1ZDJjMGZlOTc2ZjAyZDM1ZTM0NzMyOTNhNWU0MDliYSBsZWdhY3ktdHJ1bmsKKzgyMzkgNzliYjk5OTdjZTVmYWEwYjc4NmQ0NjNlODNhMWVkOWU0ZmE5MDAwMyBsZWdhY3ktdHJ1bmsKKzgyNDAgZmQ0ZTlmMjkzYzc3YThhODRlNGZiODQzMmJmMzU2MzZkNmJmYjRiMyBsZWdhY3ktdHJ1bmsKKzgyNDEgNjJmZTgwMGQxNzFhNzgwYzBlMDUxOTlkNmQyY2Q5ZDk1YzMxM2I4MSBsZWdhY3ktdHJ1bmsKKzgyNDIgZDY0MjFiM2VkMWRhNjViNDg5MDFhMzYwMWFiYjAyNTk3NmEzZDc3NiBsZWdhY3ktdHJ1bmsKKzgyNDMgMzA5YWFiNGMwYjk4ZTU3NDQ1YWQ5NzdlYmJhN2YyZmZiZWI0MDE5NyBsZWdhY3ktdHJ1bmsKKzgyNDQgMDNhNTdhZjcyMjE4OWNiZmE3ZGZjOTA5N2JhNmZkNGZmZjM5M2QyYSBsZWdhY3ktdHJ1bmsKKzgyNDUgN2RlNTlmNDdlODViOWNhZGYxNzc5OWRlZGQxNDFiMDgwNDRmMTUyNSBsZWdhY3ktdHJ1bmsKKzgyNDYgYjc2NDk0OTFhZTkyNDZhNGRlY2YzOTU2MWQzNjM1ZDZmNDAyMGJkOCBsZWdhY3ktdHJ1bmsKKzgyNDcgMzhlZjA5MTk2NGYwMjJmYTNlYjk1ZWU0NThmMTk4MzExY2M0OGRlNiBsZWdhY3ktdHJ1bmsKKzgyNDggZmI4ZjA3OWU0ZWZmODZmNjU5NWM4ZGRmNzNhODI0NGNiMWFiNDQwMiBsZWdhY3ktdHJ1bmsKKzgyNDkgNWY3ZGRiN2NhMzQ3Y2Y4ZjA1ZTBiOTQ1ZTVjZTZjNWRjOGM3MDAxMSBsZWdhY3ktdHJ1bmsKKzgyNTAgNzgzMTkyMjFlZGIyZjI4Y2RhZGQxYmNkMmYxOGQ4ZTZmNjRiZGI1MSBsZWdhY3ktdHJ1bmsKKzgyNTEgM2VmMjU2M2U4M2VlMzkwOTBhY2Q2MTJiMTdiN2Y4NjIyN2Q4MTZlYiBsZWdhY3ktdHJ1bmsKKzgyNTIgYzYwYmViNTYyNWU3MDE2NWY5NzhkYWQzYzFiMzAwOThiMjg4NGFjYiBsZWdhY3ktdHJ1bmsKKzgyNTMgZjZkZTA1MDA1NTc2OTVhYTcxOGZkZjBlNzMyMzlkMzg1ZTZjODNlOCBsZWdhY3ktdHJ1bmsKKzgyNTQgYjQ0OWNkODVkNTE5NzE5OTNmMGYwZDBmN2MzNjZhNzQwZTExOWNjZiBsZWdhY3ktdHJ1bmsKKzgyNTUgMDQ5ZDk0ZmZjMDZhMDEyNjdiZTIxNTdmZTNlMjk0ZmM0YmQxMTAxMiBsZWdhY3ktdHJ1bmsKKzgyNTYgMzQyODQ4N2IyOWEzODVjOTYyNjEwYTEyYTFmZDhlMDdjNDNmMDFjMCBsZWdhY3ktdHJ1bmsKKzgyNTcgYmIwYWNmZDRiNzIwYWZkN2EwNTFmMGY0ODQwNThiNjJlOTVlYTU1ZiBsZWdhY3ktdHJ1bmsKKzgyNTggM2I4ZDAwNDAzZGI4NWRjMzc3MzNlYWE3M2UwMjg1NzMwZTNjYjY3OCBsZWdhY3ktdHJ1bmsKKzgyNTkgYjgzZWNmNmY4NzMwMGMxYjQ3NzIxM2MyYmM5MzY0MTYyNGIzNjVjNyBsZWdhY3ktdHJ1bmsKKzgyNjAgOWNmYmM5YmI2NDIzYjA4YmI4YWY0NWJiZjFkYzhlZTZjYjgxNjUwMSBsZWdhY3ktdHJ1bmsKKzgyNjEgYzA0MzkwMWZhMWZlYmNiZmEyNGNjN2QwM2Q1NmJlZTk5ZGRjZmE4ZiBsZWdhY3ktdHJ1bmsKKzgyNjIgYjI0NzI5N2JlOWEwMjVlYzY0YjU1MDI2YzgxMTIzZTEwYTM1OWFlNyBsZWdhY3ktdHJ1bmsKKzgyNjMgYzU2OTg3M2VlYjE1ZDgyZjFiZWI0ODc3ZmQ4Yzc3Mjg2Mzk2Y2ZhMyBsZWdhY3ktdHJ1bmsKKzgyNjQgYjQyMGI2NGE0MDk2N2JmNzU1ZjczMDRkMDg1ZThlMjY5YmRkMzc0YiBsZWdhY3ktdHJ1bmsKKzgyNjUgMzFjYWUzNzRmNzg2NTY3NzMxY2ZiYWRmZjcwNzllOWUzNWRkNWVhNSBsZWdhY3ktdHJ1bmsKKzgyNjYgODhlNmFlMTA1YWI1ODEwZWY4YzI5MTc4OGM2ZjBjOWYyNzBiNDdhNCBsZWdhY3ktdHJ1bmsKKzgyNjcgMWQ0MTdlOWM3MmNmYWM3YjYzYzZlOWJkYWQxMmEwM2ExOWRiZjZhMiBsZWdhY3ktdHJ1bmsKKzgyNjggMmI3MzcyZWNkNTA3MmIwYTRiYjFhZjViY2NjYjJiMDUwYzBjMDhmYyBsZWdhY3ktdHJ1bmsKKzgyNjkgZGZmYWJjNjIwZTRlNDZkMDE4ZGI1ZDM2YjcwODI3YjFkNmE1NTg5ZiBsZWdhY3ktdHJ1bmsKKzgyNzAgNGNlNzgyN2EzNjIxN2I2NDhmNzE0NDIzYTlmMDRiODU3NDBhMTZiNiBsZWdhY3ktdHJ1bmsKKzgyNzEgZDc5YzRmYmIxOTgyYTFlMzM2MmQ5MzU4ZmJjZTczOGFiMDViMTRhNSBsZWdhY3ktdHJ1bmsKKzgyNzIgM2QxZDgwNTUwODdmYjc4M2QzYjhiODYzNTBkOTVmYzBiNjkwODAwOCBsZWdhY3ktdHJ1bmsKKzgyNzMgNzNjZjU4MjYxYjgyMzQ4MTMzMzJmZDBmOTQxYTM0ZDM5OTU4NDZmYyBsZWdhY3ktdHJ1bmsKKzgyNzQgZDY4OWQyYzRmODQyMGIwMTk1OTVjZjVjMzI5MWMzZDNhNTQ4MmQxMiBsZWdhY3ktdHJ1bmsKKzgyNzUgMjRhOGM1NmRlMjE0NDRlYmYyYWVkOTRjZjc4ZjE0MDZkODBiMmI5OCBsZWdhY3ktdHJ1bmsKKzgyNzYgZTg2MmQ5YjAwMjQ2YWJkN2M2YzQ0OTA4NGIxYWQxZmMzMzQ2YTQ3NCBsZWdhY3ktdHJ1bmsKKzgyNzcgN2U4ZWQ5NjUwZmNjMTE4YzczNzgwY2UyNDg3Nzg2OGVkNDNiMjQwYSBsZWdhY3ktdHJ1bmsKKzgyNzggZmUzZTdhMDU1ODM0MzY5MDFhYjEwNTQ2OGZiY2ZmOTQ0OWJhMzI2MSBsZWdhY3ktdHJ1bmsKKzgyNzkgZTQyMzkxZDY3NmQxMmQwNmViOTI0YmVlNzEyYjg0YjAwZGU2MjkwMyBsZWdhY3ktdHJ1bmsKKzgyODAgYjU2ZDUyN2E0MzNmNWE1MDU3OTI4NTVjMDljZGE2ZDdmODhlNGEyMyBsZWdhY3ktdHJ1bmsKKzgyODEgYjdjNjAwZWNjMjdkNDIwMGUzMWFkOGJiOWRmYWMzMGFmNGJjZGU1ZSBsZWdhY3ktdHJ1bmsKKzgyODIgNTE4ZDRmMGM4ZmNjNDk4MDI3NjAxODJhOTAzYTRhODczY2NlZjljYyBsZWdhY3ktdHJ1bmsKKzgyODMgNWE5ZjNjMjA3MzM2NjlmNWMwYjRhZTllNDdmYzIwOGI5MGVlMjNlZCBsZWdhY3ktdHJ1bmsKKzgyODQgNTA4MDNjYTU4YjFmOTFlMjVjOWM3MmE2OGMyNzYwYTRmMmM3ZTU3NyBsZWdhY3ktdHJ1bmsKKzgyODUgZGZmZDIyMTQ2YWFiOGNjY2Y4YTM2YzE0OWQ2YjMwN2Q4YjY4NjMxNyBsZWdhY3ktdHJ1bmsKKzgyODYgNTEyMGVhODZiMjVkNmQxMWFlZWM4NTRjNjQ4ODE2YzY2NTVlYzJmMSBsZWdhY3ktdHJ1bmsKKzgyODcgNmQ0MGViZDkyMjI3OTMwMjIwOTliOTJmMDE0MDdmNDM1OGRmY2YyYiBsZWdhY3ktdHJ1bmsKKzgyODggNThhZWI4NzJkOTE1MGQwMDIxODUzZTk0Y2MyYjgxODY1ODUwMzNkMiBsZWdhY3ktdHJ1bmsKKzgyODkgZjUzZDM2M2VmNjdhOWVhMjhiMzk5ZDVjNjIyOTJiMjllZTFmMTMyNCBsZWdhY3ktdHJ1bmsKKzgyOTAgZDMyMGNhODQzNTEyMjI0MDI3YjczM2MyNzE4ZDA1MjI1YTI1YWJkMSBsZWdhY3ktdHJ1bmsKKzgyOTEgNTVlYTU2ZWUyMGY2YmQ1NjY0MzcxMmQ3YTgwNDAyZjhjYzRhMjJhMSBsZWdhY3ktdHJ1bmsKKzgyOTIgZDhhNGYwZDkyMjFmMDc1YjE2MDFmNTMxM2EzMWY0ZmFkZDI1NjgzNCBsZWdhY3ktdHJ1bmsKKzgyOTMgNmEwZDdjZjE5ZDM4ZmFjNTdiOWI5NGI2Nzk3ODIxYzE5NzY4OGExMCBsZWdhY3ktdHJ1bmsKKzgyOTQgNDhiOTRkZTg1YmYzNWYyNDQyZWE1NDhhN2I0ZTM1NDVmZDY4NmFjNyBsZWdhY3ktdHJ1bmsKKzgyOTUgMzQ2OGVhODY0NWNhNDIzOGMyYjQ1MDI0MzUxZTVlMGZhZTVkMWJjNCBsZWdhY3ktdHJ1bmsKKzgyOTYgMGFlOGM3ZDMzNDY0ZWUwYzdhM2MzMGIxODkxNDc3OWQwNTEyMzUzOCBsZWdhY3ktdHJ1bmsKKzgyOTcgOTFkZDlkNzRmM2IzY2IwNmFlMGIxNzYwYzcxM2YxZWMwOGZhODI5MiBsZWdhY3ktdHJ1bmsKKzgyOTggNzgzMjFhODRkNzNlNWNkMzdkMTc1Zjk5NWRmMjZhYTdjNjhkMTQ4ZSBsZWdhY3ktdHJ1bmsKKzgyOTkgZDNmMmRmOGMyMjg2YzA1ZWI4NTFkYWMzMGQ5ZGMzNmQxMGFhNzQ3OCBsZWdhY3ktdHJ1bmsKKzgzMDAgYWQwNGQzODdhY2VlZWU4MWNlZWMyNmMyOWUwMDk4ZGVmZTY5ODcxZiBsZWdhY3ktdHJ1bmsKKzgzMDEgM2MxNWFlMGZiNmFkNzg1NWIwNDA2NGJlYmM3ZWY3Yjg5ZmI1YWFjYSBsZWdhY3ktdHJ1bmsKKzgzMDIgMGMzMzYxMmYxMWQ2YjE2Mjc4ZjM5YjVhYjI4YWFhZTA1MjFiYTc5YSBsZWdhY3ktdHJ1bmsKKzgzMDMgMDk2NWQ5ZmQxODYyZGQyMzM3ZWY4NGZjYWFlOTVhNjUyNTg5Njk4ZCBsZWdhY3ktdHJ1bmsKKzgzMDQgYTc5ZDBjZWYxMGExOWZkZDA0ZGRjOTY3MzZmYjRjODkyOWJiOWZjOCBsZWdhY3ktdHJ1bmsKKzgzMDUgOWZhMmJkOGEyYjc4YTUyNmQ4MDI5YjU1MDRjMjIxYzU0NGJiZmRlYSBsZWdhY3ktdHJ1bmsKKzgzMDYgZjExMjdkNmZjZDc0MjQ1NDIwNTMxMTBlYjI0YjMxYTExMjIxMGEyYyBsZWdhY3ktdHJ1bmsKKzgzMDcgMjI2YmNhODU4NDZmNDE4Zjk1OTkzMTJlNjRiM2U3YjRiNmEyMmU1MyBsZWdhY3ktdHJ1bmsKKzgzMDggOTg1YjdiZjQ3NTViNmNmZTkxYTQxMjkyZmExZjNjYTA1ZjM4MGVmMiBsZWdhY3ktdHJ1bmsKKzgzMDkgMjg1ZmI2YTk5ZTVmODVmNTc3YmQxMWFmNjUyMDg2MjM2NTE1OGRjNyBsZWdhY3ktdHJ1bmsKKzgzMTAgODZjMjc5YTg0OGViMmQ1MDE2MTM5NGQxMzdlMTdhNjM1YWFkZTI2NSBsZWdhY3ktdHJ1bmsKKzgzMTEgOTFhZWExYWY2NTRmZjE1OGYxMTA4OWVmMWFiMjQ2NzEwMjIzYTUxYSBsZWdhY3ktdHJ1bmsKKzgzMTIgYjkwNjNmNmY4MTFjYmZiOThlNDg0ZjkwZDU1ZDM0MzMzYTkyYmI1ZCBsZWdhY3ktdHJ1bmsKKzgzMTMgM2E3OTg2Nzc1MDZjZjA2NzU4NmZiOTFlY2VkYzAwYzdiYjhlZDU1ZCBsZWdhY3ktdHJ1bmsKKzgzMTQgMmU5MTdmOTM3MmUwM2E1NGQ3MDg4N2E3MWY3MTQzN2E5Mjc1OTI2OCBsZWdhY3ktdHJ1bmsKKzgzMTUgZWQ1ZGIwYzJhM2YzNDQxNzE5NmMxMjhlMGEyMzNlYWZiYmM2MWJlNCBsZWdhY3ktdHJ1bmsKKzgzMTYgMTc4NmNjNDE5ODg2ZWE2NmExNmMzYzQwZjNlNmY3NjIzMDNjZWMxNiBsZWdhY3ktdHJ1bmsKKzgzMTcgOWY4ZmYwMmVkZTZkZWViNWQ2NzcwNjQxZjg4ZTg2ZmNiOTJhODlhMSBsZWdhY3ktdHJ1bmsKKzgzMTggZTE2OTk0ZjNkMTAyYWM2YWZkOTcwY2QyODBmNDc0YzQ1OTRjNmY1YyBsZWdhY3ktdHJ1bmsKKzgzMTkgMzViMTRkNzhjNjFkOTQzMmQ3NTUzMGQxMmRkNDkzMDRjNzA2MGE0YyBsZWdhY3ktdHJ1bmsKKzgzMjAgNWE4YTVhMWEwNDc1N2Y2MGRiNmIwYmI2MGI1Njk2OWE3NWMzMWJkOSBsZWdhY3ktdHJ1bmsKKzgzMjEgNTk2MWYxMmFlNDI2NTg2YTAwYTY4NzRlNWZlN2RhNWIwMTgwMTljZSBsZWdhY3ktdHJ1bmsKKzgzMjIgNmU5OTY4NmI3NmRhMGNlMmY1ZDhmMGRlYmM3MmY1YWNlYWYzZTYzOSBsZWdhY3ktdHJ1bmsKKzgzMjMgODUyYTFmYTYyYTdjNGY2ZTFmZDUxNThkMDMzNmMxMzc2NzUzMmYzYiBsZWdhY3ktdHJ1bmsKKzgzMjQgZmY5YzAxMTAwNzliN2U0NjIxMDQwZTE0NTY3ZDY3YzRlNGM0ZDZiYSBsZWdhY3ktdHJ1bmsKKzgzMjUgZjY0YTVmNzUwNjk2NjAzOTgxMTU3NWExMGU5NmEzNTU0ZmI2NTA0ZCBsZWdhY3ktdHJ1bmsKKzgzMjYgMGQ3ODUxYjM3YWQyZDEzMGI5NzExNjBmZDIyNzk4ZDIzODljYjcyYyBsZWdhY3ktdHJ1bmsKKzgzMjcgNmY2N2ExYmRhMTVhMjE4YjFlYjUwNjI3YzJiZTQ2M2FiYzliODA0ZiBsZWdhY3ktdHJ1bmsKKzgzMjggZWRhZjFjYjYzZGMwYzg5ZjMyZjVlZjEwOGIzMGYzYzE0MzQ0MjQyYSBsZWdhY3ktdHJ1bmsKKzgzMjkgNGE0Nzc4ZTYxYzE0ZWIxOWI0NzliNzNhZTJkOTg0NWE0MjRlYzdhMCBsZWdhY3ktdHJ1bmsKKzgzMzAgOTJiY2Y0Y2M5NDIxMTlhZTljN2E3MmVjOTljOWE5ZDg3ZGZiY2QwNSBsZWdhY3ktdHJ1bmsKKzgzMzEgMzU4ZDcwODgyYWY2MjlhNzA3Y2VkNDEzZGE0ZGZlMzE1NmQ1NjNhZCBsZWdhY3ktdHJ1bmsKKzgzMzIgZmRkOGNlYTE4MWMwOTk0Y2Y4NjdlZWFkNDZjMDg1YWZkYzQ5MGZiNiBsZWdhY3ktdHJ1bmsKKzgzMzMgYzRkZDMzMjlmZDdkMDQ0YWQ2MGE1ZWI5NGZiMTZhNzI5Njg3Yjc0ZiBsZWdhY3ktdHJ1bmsKKzgzMzQgYTY2N2Q0OGU2OGI4NTY5NzIyMmZjODU1OWM0YTc4YjZkNmNjNGYyYyBsZWdhY3ktdHJ1bmsKKzgzMzUgZjVmN2M3Mzk1Njg3NjBlYmE1MWRkZmIzMDg0MGU2ZGEyMTU2MTM5YSBsZWdhY3ktdHJ1bmsKKzgzMzYgNjRmOWNlOTk5NDM3YmQ5MjgyYzM4OTczM2RmZGViZjlmMWIwMThkZSBsZWdhY3ktdHJ1bmsKKzgzMzcgNzI4YTA4MzI0MmEyYTZlNzA4ZWEyYmQ2NGY5NTg1NDcxOTU3N2QwMiBsZWdhY3ktdHJ1bmsKKzgzMzggMzIzZjZhMTZhNzY0MmNmMTYyYjA0OWVmMWJiYTU1ZjJkNjJkZGIwNiBsZWdhY3ktdHJ1bmsKKzgzMzkgNGRiYjRlYzQ0ZDE1MGU2MjI5YWM4Y2Y3ZWQzZTM0ZDExMWM5ZDg3MiBsZWdhY3ktdHJ1bmsKKzgzNDAgMGFjMmM3NDcwNTNmZGI3NGY4OGI0YTQ4MTY0MDFlNTQwYTc2MzI3OSBsZWdhY3ktdHJ1bmsKKzgzNDEgODc1MTdlOGVhNTE5MWI1YmQyNzAwMWY5YWQ5ZTE1ODUyNzA0MDJjZCBsZWdhY3ktdHJ1bmsKKzgzNDIgOTg0MWJjZTM3YzRkNjM5Yjk1NzQ5ZDdkN2E2OTg2NmQxZjRmYzkyYiBsZWdhY3ktdHJ1bmsKKzgzNDMgZjFjMDMyNzY4NzNhNjBiNDUyMTJkNzU1Yzk0OTU3ZWI1OGYzYTRkZiBsZWdhY3ktdHJ1bmsKKzgzNDQgOTc4MzdlNjRjNThjNTJjMjk3ZGYyZTllYjM0N2JmYmQ2ZDY0ZmYzNiBsZWdhY3ktdHJ1bmsKKzgzNDUgZTc0MmU0MWE0YjExYmVmYzY3ZDA4OWMwODg3NThmZmFhNGI2Zjc2MyBsZWdhY3ktdHJ1bmsKKzgzNDYgZjJiZjdiY2Y4YjhiNjdlY2QxODY4OWIyODQ3YjcwNzhjOTM2ZTFkMyBsZWdhY3ktdHJ1bmsKKzgzNDcgZmU0ZjFlYjE0ZDUzZjBiNGYwNjlmZmE2NGQyMjM4M2RkZTM5NzgzNSBsZWdhY3ktdHJ1bmsKKzgzNDggZWQ5MWNiN2QzODc2MTkyOGJiYzZkY2VkYzIyYWJhZmQwNDkxZGQ4NSBsZWdhY3ktdHJ1bmsKKzgzNDkgZGQwZTliNjQ2NjE2ODU1MjhhOWMyN2VkZGQ1OGE2MGEyNzA4MGFjZSBsZWdhY3ktdHJ1bmsKKzgzNTAgYzhhOGNmOTU4MTFjMzhjZjI3NjQzY2M3NTM1MmY2NzY5YmNjZDlmYiBsZWdhY3ktdHJ1bmsKKzgzNTEgYzY3YWQ1YmNkNGIyMDIzZTNmMDgxZTIwMTcyMDk5OGVlMjJiMTRjYiBsZWdhY3ktdHJ1bmsKKzgzNTIgZDI0MDg1MWNjOGM1Nzc1ZmI1MjhmMjkwMDhjODk3MDZlM2M3MjI3NCBsZWdhY3ktdHJ1bmsKKzgzNTMgYTJkM2MyYTYyYTMwYTMxOGIxNDcxNDhiNTRiYzBlN2JmYzM2NjRhNCBsZWdhY3ktdHJ1bmsKKzgzNTQgMDUzNGU1NGU4MTA2MmM4MDU2OTNlNWNhZGQ3MzA4ZWY0NGVkOGU3MCBsZWdhY3ktdHJ1bmsKKzgzNTUgNjhmNzMxMmEzMWY2MjlhZDk5MDc3MzdhNzAzMGJjODg3N2JlMzkwYSBsZWdhY3ktdHJ1bmsKKzgzNTYgYTc3NWE0NDEyNGQ4YjBjMmE1OGEwZDJhMGY2MTZkMmJhMzliOGJmYSBsZWdhY3ktdHJ1bmsKKzgzNTcgNTMwZGRiNzA3Njk1ZTdmYzE3M2QwNzRmMDUyMDJmZDgzNzZlZDNmMyBsZWdhY3ktdHJ1bmsKKzgzNTggYTEwMWExN2I4YjdiOGM3Y2I2MTg4YTM2MjcyOWU0OWY4YjJlMGJkNCBsZWdhY3ktdHJ1bmsKKzgzNTkgZDY1MTNkYTkyNDlkMzk3ZDA0Yzc3MmE4NmEzYzcwMzI0ZjM5ZThhMiBsZWdhY3ktdHJ1bmsKKzgzNjAgNzlkMTkzMWYxNzIyOWVlY2Y3ZDgzOTMzNjY0YWY0NTlkNzRlMDFjYSBsZWdhY3ktdHJ1bmsKKzgzNjEgYjU3MWI2ZWU3ZjE3ZTM3OGQxNjJiMmIzZGJlYjRhNGVmMTEyODhjMyBsZWdhY3ktdHJ1bmsKKzgzNjIgNzZiMWRhMjFmM2E4OTgxZDAyYjJmNWVkMWNmMDZhMzBiYjU2MjhiNiBsZWdhY3ktdHJ1bmsKKzgzNjMgNGM1MmExYjZhNTRkNjJhNjMzZTU4MGJiZjViMDEwMTA1MmM4OWY1NCBsZWdhY3ktdHJ1bmsKKzgzNjQgMmExNzJiNDk1MGI2YTZjMDIyOTE3YjE4NzM2NTUwZjNkNjU4YTI2MiBsZWdhY3ktdHJ1bmsKKzgzNjUgMGNkNzRmOTE4OWM2YTdjOWZkMTQwN2Y3NWVkYjIwZTM5OGE5ZmMwYiBsZWdhY3ktdHJ1bmsKKzgzNjYgY2RkMTI1ZGU3NWJmNmY2MjAyMWJiOGI2YTEyNDdmMWIxMmJmYTVjZCBsZWdhY3ktdHJ1bmsKKzgzNjcgZjMzNDJiMzgxOTM1YTQ2NDk5YjYwZTc3MWI1NDRmNjU5NThkNDI5MCBsZWdhY3ktdHJ1bmsKKzgzNjggYzRkNTQ3YzAxZTkzNGVkODVkNTJmMDU3ZmZlNjFjNWNkNDk4Mzg0OCBsZWdhY3ktdHJ1bmsKKzgzNjkgYjk2Y2NjNzgxMmYyZjA4M2JhOGMzYjI2MzkzMzczNmU2YThjMjNkYiBsZWdhY3ktdHJ1bmsKKzgzNzAgYzU3OWI5Zjk4YTVhNzE1NjA1MjY4OTExYmMxMGJjMDU2OGRlNWMzMSBsZWdhY3ktdHJ1bmsKKzgzNzEgZTJkZjk1YjdiZTc4OWEyNGVmY2MwZjg3ZTIzMDI2NDA0Y2JhZWJlYiBsZWdhY3ktdHJ1bmsKKzgzNzIgNDZjZDM1MmM3NjM4OWZkMjI5MmM0Y2YwYjllMjZmNGEzNDJlNzgwNSBsZWdhY3ktdHJ1bmsKKzgzNzMgNjcwMjJkMjhhNjVkMmRmZThhOWZhMjJjNzNlMmMwNDY4NDg0MTVhMSBsZWdhY3ktdHJ1bmsKKzgzNzQgN2QzNWEwNTgwMzU2ZWJkY2Q2MGViNDNmZTViMDU0OGFjNzIxZWZiZiBsZWdhY3ktdHJ1bmsKKzgzNzUgMjUzMzc3YTQwNjQ0ODQ3NTU5OWNlMDI3MGE4ZGM1MDA5MjdjMGJkYiBsZWdhY3ktdHJ1bmsKKzgzNzYgZjgyYjYwOGFmYjU2OGRmNmIwNDg2Yjc0NDI0YTA5OTEyOTJkNzMxMiBsZWdhY3ktdHJ1bmsKKzgzNzcgNDY2NjY0YWQzOGU0Y2VmMTkxZjg0YTFjMmM3MzhjMWVmNDg1MDE5ZiBsZWdhY3ktdHJ1bmsKKzgzNzggYmE0OWE2ZWY3MjE0ZjdmMDRhMTQzNWM1NzI3NGJjMmRhMTc2YmZhMCBsZWdhY3ktdHJ1bmsKKzgzNzkgNDEwMmY0NDcyMDMyOWIwNmQyM2FlZmFmYjUzNzgwMGM0ZTQzMGMxMSBsZWdhY3ktdHJ1bmsKKzgzODAgYjZlNDhhNGNkZDFlNjhiMjk4MmU2YTFhMjIxNmI5MGM1NDdhZjdiOCBsZWdhY3ktdHJ1bmsKKzgzODEgYzUwY2MyOGFmN2M3OWY5MDRmNGNmYTFlMmRmMGM3MTk2MTBhN2I5MiBsZWdhY3ktdHJ1bmsKKzgzODIgYzI0MjM4NDNhMjZmNzE1ZWMyNGI3ZmM0MDc4NmQ0M2FlNGJhZjY4MCBsZWdhY3ktdHJ1bmsKKzgzODMgZjM0NDYwOWE0OGU0ZWE5NmQzNDBjYzdhNzViOWM3OGNmMTI2N2JjZSBsZWdhY3ktdHJ1bmsKKzgzODQgYWY5MmNmZmQwNjNmNTNjMDk5NDBhYmQ0NDFlZTViNDI1ZDNjMWUyYSBsZWdhY3ktdHJ1bmsKKzgzODUgNGRkOWVhMWU5NGE4ODAxYzk1ZWNkODRlNjc3YzUxNThjYWJkMmMzOCBsZWdhY3ktdHJ1bmsKKzgzODYgZjgyNTljYTllZWQzN2M5OWUzYTZhMWUyNmRkZDUwMjU4MzlhZDBhNyBsZWdhY3ktdHJ1bmsKKzgzODcgODk3NzFhNDZjYTM1NGQ1MTdiNmJiMjYzOWRiNzNkYTI0NzljYjQwYyBsZWdhY3ktdHJ1bmsKKzgzODggNjk4Njc4MWEwN2VmMGRjMTQzODBmMWFkMDZkYmFkMDNhNjdlNTQ1ZCBsZWdhY3ktdHJ1bmsKKzgzODkgZjUyN2MxMmYyZTU1MjhlNWFmNGNiMzUwZGQ2NGRkMDY5OGU4ZmU5NiBsZWdhY3ktdHJ1bmsKKzgzOTAgNmIzOWY4NjMzY2E1NDdhMWQ4NzI0NzQ3N2FmNGViNjIzMzNlYjBlYiBsZWdhY3ktdHJ1bmsKKzgzOTEgNTE1NWIyYzM1ZTE1OWY1OWRkMTc1MTM0YmQwNDIzODJhODFjMmUzNSBsZWdhY3ktdHJ1bmsKKzgzOTIgZGI5Y2ZiMTA4NjIzYzI1YWRlNTE4ODcxNDFjZWNjM2E2YThmNGI2MCBsZWdhY3ktdHJ1bmsKKzgzOTMgZDJjODAzODBhZDBkZTc0MjNkYzZmZTVkNDFkYmM3OWQ2ZjVhM2QzMSBsZWdhY3ktdHJ1bmsKKzgzOTQgMDRhMWI4MmM4MzJiMWE3ZTE3ZjkzZTMxYTlhYjU1NjZiZWE4NGRlNyBsZWdhY3ktdHJ1bmsKKzgzOTUgNzgwYjY4ZGY0NTYwNzc0ZjViOGZmNTY2YmRhZDI1MjViYjgyNDQyZCBsZWdhY3ktdHJ1bmsKKzgzOTYgNWRhMThlMDAyYjFhOGZlODViYTVhOTU1OGMxYzE4Zjg0YThjYjc0ZiBsZWdhY3ktdHJ1bmsKKzgzOTcgNWZiMzA0MTNiOTNiMjE5ZjgwMTU5MzBkYzJkZWM2OTI5NjE1YjAwOSBsZWdhY3ktdHJ1bmsKKzgzOTggODAwYTUyMTdlNjdlNzg2OWJkYWU1ZDVlMTE1NmRiZThkOWM2MDEwOCBsZWdhY3ktdHJ1bmsKKzgzOTkgNDRkZGM3MTFlZTJkYzhjMTJkNGE3NWE4ZDJkY2E1ZjQ0ZGNjMGExMSBsZWdhY3ktdHJ1bmsKKzg0MDAgM2UxNThlNjlhYzVkOTFjMWNhMzRhZDAwZDAwYzNhZWY0MmE3ZjFjYiBsZWdhY3ktdHJ1bmsKKzg0MDEgMDhiMWU5ZDg0N2U2YjU5OTU5YTJkZmM5Y2ViNmMxY2JlYWIyMTI3MyBsZWdhY3ktdHJ1bmsKKzg0MDIgOTMzMDRiMmUxNGNiMzY4NzljZjYzMTRiYWRmZTQ3NGUxYWYwZmZmMiBsZWdhY3ktdHJ1bmsKKzg0MDMgOGQyMTk0ZTIyZTY3MzljZDk2NjI1NGE0ZmU4MmEwYmE2NDlhNjYyMSBsZWdhY3ktdHJ1bmsKKzg0MDQgNjNiYzkyODlhYjI4MjkzOTg1ZDA0YWQ2MjM5NmQ5MWZlYjhkYWFiZSBsZWdhY3ktdHJ1bmsKKzg0MDUgY2EyNDVjMzZjNmY2Zjg0ODI4NjMyOTE0OGJlOWY0YjAwYWE0MGY1NCBsZWdhY3ktdHJ1bmsKKzg0MDYgYjNjOTEzNzQ2OTAwZTE2MWNhYTM3NDZiMWE4ZGU0YmI3MTgxMWEyNSBsZWdhY3ktdHJ1bmsKKzg0MDcgZTJjY2U0YWRmMmE3MDI5ZWJlODBkN2Q5NzJlZjQwN2RiYTBkYWQzZiBsZWdhY3ktdHJ1bmsKKzg0MDggMTJmZTVjYzE1MTZkMDgyZDBkMjdhNmM4MWJjMDM3ZGRjMmQ1NzEwYiBsZWdhY3ktdHJ1bmsKKzg0MDkgNDBjZmM5MDVjNzc2OTZhYzhiMWUxMmM2ZWVjODNhYTNhMzY5ODAwOCBsZWdhY3ktdHJ1bmsKKzg0MTAgYjIxMGQyMDU5ODEyMTZkZWRkNDVkM2E4YTMxZjIxOTEzY2U4MTViMyBsZWdhY3ktdHJ1bmsKKzg0MTEgMDM2OWQ2M2IxMDBiMWY0YmI4MDc2ZGI5MWRmMTkwZDg5NjI3NWQ5NyBsZWdhY3ktdHJ1bmsKKzg0MTIgZDc3ZDNiOGU4NmIyNWE4OTIwN2E3ZDI0ZWQzM2EwZTVmNjc0MjU3YSBsZWdhY3ktdHJ1bmsKKzg0MTMgODBkMjQzNjRiOTMyNWViNjI2YTFjNGUzNjhiNTBhMGQwN2U3NzQ3ZiBsZWdhY3ktdHJ1bmsKKzg0MTQgNWE0ZDE4MWZmZmZkZjU3MzBjYmIyYTI4MzE3YzM4MTNhOTRlMzA5YSBsZWdhY3ktdHJ1bmsKKzg0MTUgMjIyZmFlYjQzZDAyMGM5NDZhYzc4Y2Q5ZDc1OWVhNmFhZWMzNzNiOSBsZWdhY3ktdHJ1bmsKKzg0MTYgMmM2NWJiNmFiODdjZDliYjY5ZjNlM2U0OWM2MjNiNGUyMzYyMjVjNyBsZWdhY3ktdHJ1bmsKKzg0MTcgZWVmNzZiM2NkOWFlZjNjMjI3MjJkN2ZiMzBkODMwNWM0NDgyMDM2MyBsZWdhY3ktdHJ1bmsKKzg0MTggZjdmYzg4ZmNmZmEyNDZiM2IyNDYzMTZjZDQyNmQzNGIwMzZmMWNlOSBsZWdhY3ktdHJ1bmsKKzg0MTkgYzExOTI4ZDI1OTdiZGRjNmQyMzEyZmYxNTY1YzZkNTA0NzM3YjcyZCBsZWdhY3ktdHJ1bmsKKzg0MjAgYWM4NzdjNDc2OGUxY2FiZjlhMjQxNDAwOTY1NTUzYWIwYWZiYzljZCBsZWdhY3ktdHJ1bmsKKzg0MjEgMWJkNjhlNDQ2NGNlMmZjNTQxZTkyYzdlNWNlM2JkMDAwMTZhOTkxMyBsZWdhY3ktdHJ1bmsKKzg0MjIgNzViM2FhYmNiN2MxMDA5MTk3NjhjNDljODI0MzhiMjhiMjVhZmVkNSBsZWdhY3ktdHJ1bmsKKzg0MjMgOWE1NjQ1MmM3ZThlOTIzMTNmNzlkODQ1NzkxZTYwOWZiNGY4Yzg5MCBsZWdhY3ktdHJ1bmsKKzg0MjQgN2NhNmE5MTJkNDU1YjliYjJmMjY1NzczMDlhY2Y0ZmZiNzJhM2YwMiBsZWdhY3ktdHJ1bmsKKzg0MjUgNmMwNjBiYzNiZjNkOWI1ODBhM2JkODk3YWNmNGZkMTBlOTk5OTk3YiBsZWdhY3ktdHJ1bmsKKzg0MjYgMGI0YTlkZDA5ZTBkYjBjZGQ5ZjZlMmFkMDNlMGYyYzY1OGFiZDY0MiBsZWdhY3ktdHJ1bmsKKzg0MjcgM2ZiY2RhNzQxNjk2NWE0NDIwNzA5ZWFjNjg5NDQyYThiZTQwNzBiNSBsZWdhY3ktdHJ1bmsKKzg0MjggOGQ3ZGM2Njk2OGNiYzZlYzRlYTNkYjNjMzQ5YzQ1OGUzZmYwNGYwZiBsZWdhY3ktdHJ1bmsKKzg0MjkgYjJlMDE4ZmIyYmE5MTVjMjA3ZDg3ZGJiMmEwYjdlNWY0ZmU3OGJlYyBsZWdhY3ktdHJ1bmsKKzg0MzAgMWE5OTY5NWE0MWNjZjY5MTQ2ODRjYmNiMDc5ZDQ0MzZiNjhmOGM2MCBsZWdhY3ktdHJ1bmsKKzg0MzEgZDM4MzVhNmExOGM5NTc4NWM4ZDFiMTAwMjYzZjlmYzg5YjRkZmI3MCBsZWdhY3ktdHJ1bmsKKzg0MzIgMWYyZGZjYTUyMjA3MmQxMzljODg2MjZmNjg4YzI0NWQyMWQ1NWFjOSBsZWdhY3ktdHJ1bmsKKzg0MzMgM2Q2ZjNmMGFlMDA1MDY1NjE0MmIxOTcxOWE4ZGVmZTVhODYzMjU3YyBsZWdhY3ktdHJ1bmsKKzg0MzQgMjRlYzQ2MjRlYTllMzA5OTJiOWRhZjc5ZDQ4MGU3YTFmZTdlMWIzOCBsZWdhY3ktdHJ1bmsKKzg0MzUgODM0NDYxYThjYTc2NzE0NjA4ZGRhMzNmYmM0YzI5ODVkNjk5ZjdjZiBsZWdhY3ktdHJ1bmsKKzg0MzYgMWE0ZmI2ZjEyZmZkNTRiMTIzZDIzZGU5ODAyYTA1Mjc0ODRkY2FhZCBsZWdhY3ktdHJ1bmsKKzg0MzcgNzZiYjQwYTFlYjA0NTMyMzg5OGQ2YjAwYTEyMjBlOGNlYmZlZWE0YyBsZWdhY3ktdHJ1bmsKKzg0MzggMzVlNWFjYzY1MzJjN2U1NGE2OWQ3MGJlMjU1NWRjYjQzYTc0Njk5YSBsZWdhY3ktdHJ1bmsKKzg0MzkgMjNlMDE0ODM5YWIwNTdkMTU5Nzc3NzIzZmM5MGYyNWU4MDJlMWQ2NiBsZWdhY3ktdHJ1bmsKKzg0NDAgODNkZTU1MzlmOGU0MzIyMGFkOWRmNzA2ZGQ4MzgwNTY5Y2JhMjE5NyBsZWdhY3ktdHJ1bmsKKzg0NDEgNDMwNTQwMjFiYjU3NTEwNjE3YTg4ZGZkZjEzOGNlZWEyN2I1MTVmOSBsZWdhY3ktdHJ1bmsKKzg0NDIgOGFlODNiOWMzNGEwMjQ1MDg3Y2YyZDcxNjE5OWQ3MzJkNTY4OGJlYSBsZWdhY3ktdHJ1bmsKKzg0NDMgOTZhOTdiMmI3MjNlOWY1M2UwNGYwYjNmOWY4YzQzMjZhODhiNmEwMyBsZWdhY3ktdHJ1bmsKKzg0NDQgOWU0ZGRiNDU5YjEwZDNiMGNmOTRiMjQ1YTY3ZTM0NzUzODBmYmZkYiBsZWdhY3ktdHJ1bmsKKzg0NDUgYjcwNDhmNWJlOWExOGQzOWFhYzRhZjlhNTcxZTM0MDM4OWE3MTY2OCBsZWdhY3ktdHJ1bmsKKzg0NDYgNWY2YTJlYWRhYjk3ODM1ZjI2ZTZiOTUzMTY1MDg0OTU3OTk2OTJmZSBsZWdhY3ktdHJ1bmsKKzg0NDcgNzAxZDg1NGQxOTMwYmI2YTFhMjRmMjczZmU5ZGRmMWVhYjczZGQ5NSBsZWdhY3ktdHJ1bmsKKzg0NDggM2YyYmZjMTU5ODlkY2FlNzU2MTcxNzljZGJiZjU1ZDY5MjQwZTI3NiBsZWdhY3ktdHJ1bmsKKzg0NDkgOGFiYjRkOGMzMTM0NDlkYTk5MmEzNDVjNmE1YWVhNjVkMGIwZDZjMCBsZWdhY3ktdHJ1bmsKKzg0NTAgZTc3ODQ3ZTExNThlMjEzODg0ZDRmYzM1ODQzNjE2ZTI2MjdhYTQ4NSBsZWdhY3ktdHJ1bmsKKzg0NTEgN2EwODgwZjhiOGVjMDhlYTEyNTIxMzE2OGRjNjkyZmE2NjRmMzhmNyBsZWdhY3ktdHJ1bmsKKzg0NTIgOGJiYTliYjg2NGFlMjM4YzRhZjkzYTc3NWU0Nzk4ZmVlYmM3MmRiMCBsZWdhY3ktdHJ1bmsKKzg0NTMgNWIyYzU5NTQyOGZhOTFmOTkxOTM2YWNiNzE5MzJiODdiYWVjYjNjNyBsZWdhY3ktdHJ1bmsKKzg0NTQgYjc3MDc5NjUxOWY2MDNmZWE1ZTc4ZDNmNjllNTkwZjcyNTBhYjZmZSBsZWdhY3ktdHJ1bmsKKzg0NTUgNzgxZWI0OWQyZDY2ZmQwYTA2NDJkODJmNGE3YmQxYTgxZDNlOWE1NCBsZWdhY3ktdHJ1bmsKKzg0NTYgNDIyOTYwNTIzMjg2NTIxNTI5Y2I2OGE3MzQwZjZmOThmNWQ3MmNhMSBsZWdhY3ktdHJ1bmsKKzg0NTcgMjg5NGJiNDllMmVlZTY4OTk0ZDE3ZGM2ZjQwYmQxMGNkNTIyNzNlNSBsZWdhY3ktdHJ1bmsKKzg0NTggMTcwYzQ2YTY1MDIyMGU2MmI2Zjk2MzJhODhhYzU2ZGU4Y2RhMDg1YyBsZWdhY3ktdHJ1bmsKKzg0NTkgNmFlYmQ5NzBiN2E5OWU4NGNmYTVmNDdkOTA3YTdhMjZiODVmN2QxMCBsZWdhY3ktdHJ1bmsKKzg0NjAgMzMzODVmOTRjYThhYzQyYTEyNzQ3NmUxZGFkMGM0ODU4NGYxY2RlZCBsZWdhY3ktdHJ1bmsKKzg0NjEgYjRiYmJhM2FmNGU4YzhhMmU3NjVkNTkzMGE1OGExMDVjYTA2N2VmZCBsZWdhY3ktdHJ1bmsKKzg0NjIgMDNhODgzM2I0YjczZDk5OTVkNTFjYmM2NWU4YmE2NDZmZDUyY2QwNCBsZWdhY3ktdHJ1bmsKKzg0NjMgMzIxMjc1OTNjMTM0ZDFhMWUzZDIzNmE1ZWU1NzIxZWU3NDRhNjQxNyBsZWdhY3ktdHJ1bmsKKzg0NjQgMGEyYzMzMTIwMGY1ZmYwODI3YmYwODk5M2JhMWFhNTk0MTMxMWM2ZCBsZWdhY3ktdHJ1bmsKKzg0NjUgNTk5M2EwOTlkOWIwMzY2MzBlZGYwYTdiYjRlZDBjNzZkMjg2NDhiZCBsZWdhY3ktdHJ1bmsKKzg0NjYgNWI5MGRhOGE5ZGNjMTc2ODQ2YWYxNmFhMDE2N2QxYTlmYjE4ZmI3MiBsZWdhY3ktdHJ1bmsKKzg0NjcgNTAzNTAwNjUyYmFjNDhmZjQwMmRlMmJiMGNhN2NhNzVhNjY0MDE3YiBsZWdhY3ktdHJ1bmsKKzg0NjggYTU3MzdkZDk2OTc5MDA5ZWJmOTkxYjljYzk2NGE1ZWRjNzA2ZDJjMyBsZWdhY3ktdHJ1bmsKKzg0NjkgNmU1ZDRlYzAzNzkxYzk2Y2M3OWQ5NWJmZDA4MWY2NGYzNjNmZTM1YiBsZWdhY3ktdHJ1bmsKKzg0NzAgMmRiM2I3MzYxODUzYzU1NjFmZWEzM2FmMTU1MTk0YjI3ZDhhOWE4NCBsZWdhY3ktdHJ1bmsKKzg0NzEgM2JhYzUyMzUyYzBiYzdhNmRjMWVhZTYzNTI3MTJkY2JjMGNhNDg0YSBsZWdhY3ktdHJ1bmsKKzg0NzIgYjhiNmE4OGY3ZjQ0MmRmNDBiNDcwNmMwNjQ4ZDZhYjVmOGY3YTEyNyBsZWdhY3ktdHJ1bmsKKzg0NzMgOWU3ZDU5ODJhYjNkZTk2ZTlhNDVkY2M4NTk2NTFiZDJkODg3ODM0MyBsZWdhY3ktdHJ1bmsKKzg0NzQgZmNlYTU3YzM0NmE1OWI2MWUzZjM3MzY0ZTlkNTM1ZGM1Y2EyMzljZCBsZWdhY3ktdHJ1bmsKKzg0NzUgYzI0YjU0YzE5NTcxNDJkMWQzYWY2MGRkY2RjMDQ0ZGQ2ZTJjNzhiMiBsZWdhY3ktdHJ1bmsKKzg0NzYgZjJkMTM0YmY2OTczYmEyNjU0OWRjNDI5MWQzOTU4N2VlNmM4MDRiOCBsZWdhY3ktdHJ1bmsKKzg0NzcgZDUyMGQ1ZDAxMTE1YjcwMmJjZmNjYTFhMGViN2E1NTY1MDFkMDZhZiBsZWdhY3ktdHJ1bmsKKzg0NzggODA1NjE2OWVjNDQ4ZTIzM2QwYjQ1M2JjMmZlZTk3MjhhM2RiNWY1NSBsZWdhY3ktdHJ1bmsKKzg0NzkgZDQzOWMzMmNlOTYzN2ZmY2E2MmI2MzljNzI3ODk4OTM3OWI4ZWRmNiBsZWdhY3ktdHJ1bmsKKzg0ODAgNTA4OTIxOTUwZjJjNDBiMmMwYzZmOWQzMDZiZTFiMGI4ZGM5YjNkZSBsZWdhY3ktdHJ1bmsKKzg0ODEgM2Y1OWIzNGViOTBmOTZhMzExNjhhYzFlODAyYmY0ODg4MWM4NzUwYiBsZWdhY3ktdHJ1bmsKKzg0ODIgMGNkYTlmMjQ3ZDdhY2I5YjJmMjRlMmRjZjI4NTA4NzJiY2Q3NGU4ZSBsZWdhY3ktdHJ1bmsKKzg0ODMgNzM2MWYyZjE4NmFkYTAwNWRiMzkxNDY3MGVhMGQwOTVlYTQ0NGIwNyBsZWdhY3ktdHJ1bmsKKzg0ODQgOWJhNzJmYzRmNTAzNjRjNzIzNDA3NjA5NTJhYWVjZjJiNzRjYzYwNSBsZWdhY3ktdHJ1bmsKKzg0ODUgNWRjMjY3Y2Y0ODk1MmNjMWJlYTJiYTFkZDM1NzIwOTU1Y2FmZGZjOCBsZWdhY3ktdHJ1bmsKKzg0ODYgODg3NDA4ZWVhZTk5MzliNTE5NTFhZmUxYzVjZmI1ZGFkMmQ3NjM1YiBsZWdhY3ktdHJ1bmsKKzg0ODcgODcxZjEzNWRkNjEyOWIzNzJhMGYxMjIzZDI0YzlmMDE4ODhkOTQyNSBsZWdhY3ktdHJ1bmsKKzg0ODggY2M1NzcwMDFmN2VjZWVkM2YzYmM3MGIyMzcyODAzOGZmOGMzYmU4YSBsZWdhY3ktdHJ1bmsKKzg0ODkgZDAyYWM2MWNkNTBmMWZhZTU3NjUxODgxMDhjZTM0Mjk5NDI1MDM3YyBsZWdhY3ktdHJ1bmsKKzg0OTAgMGI1YTIzZWE3NTE1NmYyNzNlNGFmYjJmMzgyZDQwZjhhOTY4OTg5ZCBsZWdhY3ktdHJ1bmsKKzg0OTEgMmYzNmUwYmIzN2MzNzhhOWNmYzQwZWYyNjJlOTY0NGY5OWJmY2Q1ZCBsZWdhY3ktdHJ1bmsKKzg0OTIgMThhZDExMDZmNjUxYWI4ZmNmZmQ1ZTQ4ZDY0ODk1MmY3OWRjMzMyMCBsZWdhY3ktdHJ1bmsKKzg0OTMgZGZmMjAyNGFiMDIxZmUyODg2ZjFhYTA0NGUzMmZjNWRlNGUwOGU0NiBsZWdhY3ktdHJ1bmsKKzg0OTQgNTBhNDE4NjNjMzRhNjAxMjc5OTIzNzdjODUzNDgwYTU1ZThmZjE0YiBsZWdhY3ktdHJ1bmsKKzg0OTUgZjA1NTQ2NzQzNDA2MTA0NjVjN2Q5YzhiNDkzMGUwZjAwNWQ0MjIwOSBsZWdhY3ktdHJ1bmsKKzg0OTYgYTJmOThkN2NhZGVkMWRkMjJkNThlZDMxNGM2MTAzMWUxNmNkMjRmYyBsZWdhY3ktdHJ1bmsKKzg0OTcgNTljMzQ5YTE0YTNhZGUzN2Q1N2VlOWM1NWRjNDkzYzg4MTEwOTVmZiBsZWdhY3ktdHJ1bmsKKzg0OTggNjAxYzRlY2EzZGUzNDFlNzdjMmIyMzc3ZDdkNTYyMDE3ZjMxNTM2YiBsZWdhY3ktdHJ1bmsKKzg0OTkgODAyNDcwYzdhNTBmMDQ4NGY5MTI1NzJlZGQxM2EyNjJjMTllYjUyMiBsZWdhY3ktdHJ1bmsKKzg1MDAgNmEyNWQ4MTEwYjAwOTQ1MmE2YjAwMDY5YWM0OWI5NGIyOWU4OGQwZiBsZWdhY3ktdHJ1bmsKKzg1MDEgZDVmODc0MWE4MTJjZjU1NTA3MzIxNmM3YzQ2NWFkZDY0M2U5MTA5NyBsZWdhY3ktdHJ1bmsKKzg1MDIgMGFkMTVmMzBjOGQ0MTA4Y2I2MTE4Y2Y5Yjg2MWE4MjBkOGFiMTU3ZiBsZWdhY3ktdHJ1bmsKKzg1MDMgYjU4MDQxNTRhZjRkZjEyZDJjZTYyYzY1MDhhN2U2ODZkYjYyYWI0NCBsZWdhY3ktdHJ1bmsKKzg1MDQgNDk0ZTU1MGNiMThkMTVjMmNlMTBkMGRlZTk0ZDQyNGQ0ZjQwNDFkMCBsZWdhY3ktdHJ1bmsKKzg1MDUgMjkyMTkzMTcwZGExNTlmY2ZmYWExMzg5Yjc3NGVjYWNkM2E2MmVjMCBsZWdhY3ktdHJ1bmsKKzg1MDYgNjhmMmQ3NzA0MTgwYTcyYjRkMTI3ODhlMDBjYTA1ZDc0ZDRjNDVmZCBsZWdhY3ktdHJ1bmsKKzg1MDcgYmY4MDNkZmQ0NDI4ZjI3NjE1NjBlZWIwNmM4MGRlOGUwMWY1NTYzOCBsZWdhY3ktdHJ1bmsKKzg1MDggNmM0NDlkZmYyZmI4OWNmMDU0ZmQ4YWY2OGViZjEyMGQwM2NkMDY4MSBsZWdhY3ktdHJ1bmsKKzg1MDkgOWE1N2NhMjI5NjgxYjY4MmNmM2FjNThiNzIyMGRkODhlOGM4YmEzMyBsZWdhY3ktdHJ1bmsKKzg1MTAgYWM3NTU0ZjI5MzEzNjllMzViZjk5NWE5M2JiMjg1MDdmZWZiOGFhMyBsZWdhY3ktdHJ1bmsKKzg1MTEgMWNmNzllYThmZmEyYTU4YTkwZDhkMTA2Mjk1MTc2MjgyY2RkZWVjNyBsZWdhY3ktdHJ1bmsKKzg1MTIgNjE0MTE4YTEzNDhjOTQyMWI3YjNmZjJmMWNlNGQwNDg4NjYxOWVhOSBsZWdhY3ktdHJ1bmsKKzg1MTMgYmUxYjc4ZTcwNzI4NzI4M2QzNWYyMmM3MDNkZTIyMTE3MmQzNThiOSBsZWdhY3ktdHJ1bmsKKzg1MTQgNGMyMjkyZTcwOWIyZDI3ZDUzN2Y3Y2NhZjZiNjAzMTU4NWNjZjZiYSBsZWdhY3ktdHJ1bmsKKzg1MTUgNDdhZGYxOGQwMWFkZDc4NjNlMDZiZDMzMmIzNWMxMjdkMzllZjk4ZSBsZWdhY3ktdHJ1bmsKKzg1MTYgNjE5MjMyMjM2ZGRiOGE1ODZmMzMwNDUwYzA0Zjc1YWI5ZmUzYThkYSBsZWdhY3ktdHJ1bmsKKzg1MTcgMWE0MzY5OTEwOGE2Mzc1NjU2MGI0YjMyNzY2OGQyZDJjODczYzllMiBsZWdhY3ktdHJ1bmsKKzg1MTggYTllMWVhODBlYTNmNGFhNTlmNTNmMzI1NzI1MjdlZGRmOGVmOTQyMiBsZWdhY3ktdHJ1bmsKKzg1MTkgNmRiM2Q1MmQ0YTc4YWYwN2VmYTIzMmM3NWIzYTMyMjFlYmRlY2E0NSBsZWdhY3ktdHJ1bmsKKzg1MjAgYzA3OWU5MjRjOTI3MTg5NjFiM2I5ZmUyNWQ1YWEwZjgxNWM0ZWY3MiBsZWdhY3ktdHJ1bmsKKzg1MjEgMGI5ZWMxYjM0YTdhNDA4ODBjZDI5YzJiNDdlY2MxM2FhMmI0MWNiMCBsZWdhY3ktdHJ1bmsKKzg1MjIgNmViMWUzNTQ5ZTJkYmJhNjI2ZWQzZTVmMjU4Y2M1YTkwMjE0ZGQyNCBsZWdhY3ktdHJ1bmsKKzg1MjMgOGJhNDZiMDc3OGRhZDI4ODcyYzkzMDA3ODBlMzRmZTUyZjE2OGE5OSBsZWdhY3ktdHJ1bmsKKzg1MjQgOTZmZWNjODBhMjhmN2M5ZjE1MDI0OTRkYzMxOTA0OTA2Y2JjZmY2YyBsZWdhY3ktdHJ1bmsKKzg1MjUgZTkzNjYzMTE3NmI2MWQ2ZDE5OTcyOTQ5NjA1MDRmMmZhNTUyNTgyOSBsZWdhY3ktdHJ1bmsKKzg1MjYgNGYxMmMyMWY4NzQ3OTY4YmM0MDdkMjIxY2M2NTJlOGVkZmI1NjRmNCBsZWdhY3ktdHJ1bmsKKzg1MjcgNjA3MzFiMTlmZTM0ZDU3ZTkzZjIzNDkwZGUzMjBhN2MxNGY1NzBmMSBsZWdhY3ktdHJ1bmsKKzg1MjggNmIwYWZiYmZlMGI3ODE5ZGQzODcyYTY1ZWIyMTg1NjE1OGY0Y2QyZSBsZWdhY3ktdHJ1bmsKKzg1MjkgMWRhMTIyNzE4NTk4ZTc1MDEzMzZjZWJkNTBlZDA5ZDkyYjAyMTIzZSBsZWdhY3ktdHJ1bmsKKzg1MzAgZGEzYzdkNDdmMjEwYTZlNWQ1YTAxMGJjMmYyNDY1ZDJkOTE0MzRlNyBsZWdhY3ktdHJ1bmsKKzg1MzEgY2FiOWVhNWU0ZWVkMzdkNzExMWYyNTY3N2RmZTA1M2I5MDMyNWJlMSBsZWdhY3ktdHJ1bmsKKzg1MzIgNzJkMDA0OTcxYjI2Nzk3ZTAwNzU5ZDAyZGY0NDUwOWNiYzY2Njc1MyBsZWdhY3ktdHJ1bmsKKzg1MzMgOGVjMDIxMjdjNDRiYjQzNTllNzExMTJjMGJiNDg2NjNhYWIzZWI5NCBsZWdhY3ktdHJ1bmsKKzg1MzQgNTY2ZDBjYWU5MTkxNWFiMTIyYmRkMTVlZDcwZmI5YjY1NjY0ODU2MiBsZWdhY3ktdHJ1bmsKKzg1MzUgODc3ZGJiYTNiNWE4MDQwMmM1NjU5YzFlZmJhYjEyZGU5MjczMTZlZSBsZWdhY3ktdHJ1bmsKKzg1MzYgMzg3ODRiODUzZDIzMWQyYWZlZWU2ODc2ZmQ2ZmQzMjM3ZTM1MDc2YSBsZWdhY3ktdHJ1bmsKKzg1MzcgMTE0Mjk5NjhlMjlkMjJlZTRhNGE0ODAxNWI4YmY3YzBkYmVlNmRjNCBsZWdhY3ktdHJ1bmsKKzg1MzggMzZkZjQ0MzRiM2IzMDNhMTRmNTg2YTM1MDg1MDcwODMxNjcwNzk2NyBsZWdhY3ktdHJ1bmsKKzg1MzkgNzRhNzg2NjZkZGM4YWZiZDMwZjMwMmM3Y2VjNDEzZjU5MmUxYjAzYyBsZWdhY3ktdHJ1bmsKKzg1NDAgYTVkNTAzZWNhNzQ3OGRkNDhlNWY0ZjNhZTVkZTdiODJlOThhYjEwYiBsZWdhY3ktdHJ1bmsKKzg1NDEgZTg4ZDJlMzIyYzVlYmU4MmNiY2VjMGZkMjdiZjljY2I5ODBmN2U0NSBsZWdhY3ktdHJ1bmsKKzg1NDIgMGY0MTkzYmQwOGQwYmNiYWVkNjI1Mjc0YjE4YjY0MDRiMDk0MmFmMiBsZWdhY3ktdHJ1bmsKKzg1NDMgZTRjZDA5MmY0M2Q2NmFhYTg2NWZlZGIyMDcyOTZiY2M4NDRhYThjOSBsZWdhY3ktdHJ1bmsKKzg1NDQgM2QzZmE4NzczODdhZWQzMTY0ZGMyMmU5MzhmMmRhMzc5MzE2ZGMzMyBsZWdhY3ktdHJ1bmsKKzg1NDUgOTI1ZjkwYjQ4ZDczNzI0NTM3ZDA3NzVkZDAyMTk1MGFjMGMwZTc0YiBsZWdhY3ktdHJ1bmsKKzg1NDYgZTBmMjQ5OTkzYTRmN2Y1OWM5MjYxODE5OThhODEzNmFhMDNhZWYwMCBsZWdhY3ktdHJ1bmsKKzg1NDcgNjQzZmE1NGYyMTI0NTgxZDVhNjNmMzhlMzliNGUyNzE2ODhjNWJhNiBsZWdhY3ktdHJ1bmsKKzg1NDggZDkxY2MwYTU3ZGFhM2E0MzJkNzZkOWRkZjFkM2Y4ZjlmM2QwZDJiNCBsZWdhY3ktdHJ1bmsKKzg1NDkgYzdiNWE3MjJkOTI2NDk0ZTY2ZTFjYTI0YjdjOWYzMWQ0NmIwMWQ0NyBsZWdhY3ktdHJ1bmsKKzg1NTAgZWNjOTQ5MGVjNzE5Mjc4MzhiMjk3ODExZjA4YTc1YjIyOTI4YmM4NCBsZWdhY3ktdHJ1bmsKKzg1NTEgNWU1ZTU0YTZkYmE2ZmFiOTJhOGVkYTE0NWIwZTdmZTk2ZWI2YWQ4MiBsZWdhY3ktdHJ1bmsKKzg1NTIgYmYzZjQ4N2ZjZDhiNTdmOTkwOWVhYTI3ZWFlYTIwZTM3OGFmYjUwZiBsZWdhY3ktdHJ1bmsKKzg1NTMgNjU0MGViMTdlNWI2NDU3YjVjYTVmOThkZTEzOTcyYmE2OWNiMTkzNyBsZWdhY3ktdHJ1bmsKKzg1NTQgODgxNGNjZjJkMWNkYjY1ODI4NTQ2NGFhYjViMjM1NWMwYTEwZDJiYiBsZWdhY3ktdHJ1bmsKKzg1NTQgZGM1Yzk2OGVjOTkyYWFiM2Q0MGE3MTg5ZGYwYzQ0M2QxYzdhMWE2OCBsZWdhY3ktdHJ1bmsKKzg1NTYgMmYxYTVjYWQyN2I3YTIzMDFiYzA4ODRhZGQyMzY1NTQ1ODYyNTI1MCBsZWdhY3ktdHJ1bmsKKzg1NTcgZDNjNjAzNWFjM2NiY2FiNzVmYmZmM2U5M2FiZWNmNjUzYjFjZWM2ZiBsZWdhY3ktdHJ1bmsKKzg1NTggMGViMTRhNjQ4NGYzZjhmN2QyZjNhODRlNzVhYjRmZDMxMmM0NjFjMSBsZWdhY3ktdHJ1bmsKKzg1NTkgZDdjYTA1NTQ3OTVlZWYzZmI0MWZiZjE5N2QxYzBkMDhlOGNjYTBlZCBsZWdhY3ktdHJ1bmsKKzg1NjAgZjE1OTA0NDUzMGIxODI3MDQ2NzI2ZmIzNjAyNmVkNzEwYmMxZjlmZiBsZWdhY3ktdHJ1bmsKKzg1NjEgMGFhNjJjYmVkOWY4MmU5MTcyOWQzOTkzODliNThiMWU3MWI5YmNkMCBsZWdhY3ktdHJ1bmsKKzg1NjIgZjlmMDI2MmM0YzU3NmU3YjdkNTBiYmU0NGUzOGMxZmRkY2JiNjliOCBsZWdhY3ktdHJ1bmsKKzg1NjMgZDg5YTIxOWI0OWE3MjEzYzFiMmM4NTBkNWVhZjFkN2U5MjUyNjU0NyBsZWdhY3ktdHJ1bmsKKzg1NjQgNjIyYzhkOTgxYTY5NTVmYTYxY2IwNTJmYjVkYjI0MjVjMjBhMjI5MiBsZWdhY3ktdHJ1bmsKKzg1NjUgYjA0NGM0NzljYmM4MzA1MTgzZTUzZmEzZDJiNjFlNzY5MDI0YmEyNyBsZWdhY3ktdHJ1bmsKKzg1NjYgZWRhZWU1Mzc4MDIxMzNiNmJlMDIwOWVkNGQwY2UwNTU3OTEyMWNmOSBsZWdhY3ktdHJ1bmsKKzg1NjcgZjEzMDQ5ZWQzMWZkYjkzNDMxN2FlZDVjMjIxZDY2ZTk5YWY3Mjc3MSBsZWdhY3ktdHJ1bmsKKzg1NjggZGM5MTZkOGJiYjU1ZDg4MjQwNWZkOGJmMzJhYWVjZDg5NDY2NThmMSBsZWdhY3ktdHJ1bmsKKzg1NjkgMjk0OWMwYTQwYjdiZDA4Y2FkYzhhYWQ2MTQ1Y2U3YmMyZTg2M2U5MCBsZWdhY3ktdHJ1bmsKKzg1NzAgZDEwOTNmMzQyMWI2ZjUyODBiZWIyMmM3ZGY4ZGFiYzljN2NjNGEyNiBsZWdhY3ktdHJ1bmsKKzg1NzEgYTIyZmNhN2E1YzVhN2QxMjcwN2ZmOGFlMWRlZjcwYzU0MzAxZjI2MiBsZWdhY3ktdHJ1bmsKKzg1NzIgMjc0MjI2NGVmZGRlZGQ1ZDk1OTJmZmM4MDc5NDMzMDdlMDgyNzU1NyBsZWdhY3ktdHJ1bmsKKzg1NzMgNDRiOGNmYmRhNDQxMjQwMzIyNmZiZGIzOGUyMzQxMTc3YTlhYmIxYiBsZWdhY3ktdHJ1bmsKKzg1NzQgZDEzN2U2MjRjZTQyYjIzOTFhZmI5YTRjMzA1M2YzYzJjYWYxMmU2OSBsZWdhY3ktdHJ1bmsKKzg1NzUgMTc5YmZkMGZlZTI0YTI3Mzg4ZDVlNTk5OTUwOWE3NTdjNTAwYzYwYyBsZWdhY3ktdHJ1bmsKKzg1NzYgOGY3ZjQ3NzAwN2IzODg2NTJjNTY3YzI4NTE4NmU0YzRjMzg1OTI2NyBsZWdhY3ktdHJ1bmsKKzg1NzcgOGJiMTI4MjE1ZGM1OGMxZTg5ZjhmY2QwZDY1MGE3NDI5MDkxODk4MSBsZWdhY3ktdHJ1bmsKKzg1NzggYTY0ZDE0YzQ5MTRmMjE1ZTUwMTgyMTZhZTgzMWNiZmJjMTkzZWEwOSBsZWdhY3ktdHJ1bmsKKzg1NzkgNGQ4ZWJmN2FmZmFiNGJkYWRiNzBhYmVkNWU2NmViODVhYzFiZjQxZSBsZWdhY3ktdHJ1bmsKKzg1ODAgM2JiODk3MGZiOTE4MzBhNTkwMTNjNzA0YjVhNjcyMzc1NzFmOTFiOCBsZWdhY3ktdHJ1bmsKKzg1ODEgZjNjMGMxN2I5NzA4YmY4MmM5ZGEwYWRiODgzOGE5NjYyZWFlMmY5NCBsZWdhY3ktdHJ1bmsKKzg1ODIgNzdmYjg4MGVjYTQ5MWZlMTM1OTRlNmRhNGVmNjRhZDgwOTI5MmJiMSBsZWdhY3ktdHJ1bmsKKzg1ODMgMzZiM2IzMzdjNTY2Mzg0MjFjZmEzYmRjOTU1ZGVhN2YwZjM3YzA1YSBsZWdhY3ktdHJ1bmsKKzg1ODQgN2JkNTY1ZTRmYmI1YWEwNDU1NzBjN2E1YzY3ZWQ5NzVhMGZkYTgyYyBsZWdhY3ktdHJ1bmsKKzg1ODUgMTY3NmY1Nzk1MTgwYmNiNzZmNGFlYTFmNDQ4MThkZTFkZjJkNjUzYiBsZWdhY3ktdHJ1bmsKKzg1ODYgOGNiMmFmZDEwMTE5NTAwZWIwZTBiMzM4NmU5YTNiMTFmZjNhNDVhZiBsZWdhY3ktdHJ1bmsKKzg1ODcgMjYwYjIxNzY5MDYxYWE5MDZhMWNjMmE1MmZmMzRmYTkzMWUyZTNiMSBsZWdhY3ktdHJ1bmsKKzg1ODggOTczZWYzNWVmNDgyNTY4ZjM5NTYyYzMxMTVmNjlhNmFjZDcxZjllOCBsZWdhY3ktdHJ1bmsKKzg1ODkgNWQxZjMzN2NlZTI2OWY5MTFhYzZmZTI2YTdiOWY2N2E2YmMyOWQ1NSBsZWdhY3ktdHJ1bmsKKzg1OTAgZDkxZmQ3Y2Q4YmU3YjJmNmJkNDI2ZTE1MDQ4NjZiOTYzMjYwZDNiMSBsZWdhY3ktdHJ1bmsKKzg1OTEgNzM3ZWQ2NjUyODk4ZTk0MTZjODA4OTljMzI5MzBjN2VhMGI5YjhjNSBsZWdhY3ktdHJ1bmsKKzg1OTIgNjVjOWJhODAwMDMwMmMyZjQ2YTVhYjgwYTU5ZDFmZjcyZDM4ZTI0MyBsZWdhY3ktdHJ1bmsKKzg1OTMgMDdiN2Q0MzIwYjE0YWRhYTUyYmE4NDlmZTc5MjA2MzAwZDA2NTJiZiBsZWdhY3ktdHJ1bmsKKzg1OTQgOThhMjgyY2ZiMDEzZTc4MjI4N2FjMzQyMWIxOWVhMGUxOWRlNjkzZiBsZWdhY3ktdHJ1bmsKKzg1OTUgZDEzZDNjMmM5ODYwYTkzNDJmMTIwZTM4MzM2ZjRiZDgwNGJkZjM5NSBsZWdhY3ktdHJ1bmsKKzg1OTYgYzIwYjY5ODBhODcwZmNkNjFjOGZlNzA1ZWJlY2U4MGU5YzQwMWQwMiBsZWdhY3ktdHJ1bmsKKzg1OTcgZGYyOWU4M2MzMDRmYWE0ZWQyYjQ4M2EyMTViYzU5MTIyOTUzNGU4NSBsZWdhY3ktdHJ1bmsKKzg1OTggZGYwMjhiYzU0ZTZmMzJhNWYwZjhjMGExN2FiNWJlNDBjMmNmMjQzMyBsZWdhY3ktdHJ1bmsKKzg1OTkgZGI4YWM2ZTEwOWI0ZGMwYjkyOGQwNmE5Y2NlZDdiZDc1Mzg3ZTZiYyBsZWdhY3ktdHJ1bmsKKzg2MDAgNzQ4ZmI1YTAwOWE3YzBjMzAxNmE4NWNiM2QxOTM1ZmFmMWJmMzNiOCBsZWdhY3ktdHJ1bmsKKzg2MDEgY2MyYzg0NzY5NjM2YTQyNTlmN2ZlOTA1ZWEwOWNlNzlkZjYyZThiYyBsZWdhY3ktdHJ1bmsKKzg2MDIgZDRlODdhYTdiZmYwNTY3OTE1MjZmM2VmYjRmNGQ2MDRiYzFhMTU0MCBsZWdhY3ktdHJ1bmsKKzg2MDMgYjQ0OTM0YzIwMTI1ZWZkOGEzMjIyYzcwYTNhOGMzNjRlMDM2NGMzNyBsZWdhY3ktdHJ1bmsKKzg2MDQgNDI1NDA5NWE1MDI5ODAxYzBmOTI2MzQ3ZjA1MjI5NGJkZjU2Y2M0NCBsZWdhY3ktdHJ1bmsKKzg2MDUgMDYwZjgzOTMyZTkxYTZmNTgyM2U4MjAxNmM4ZGZhMmI4ZWYzNmZhNSBsZWdhY3ktdHJ1bmsKKzg2MDYgNWRjMDc4YjIxM2U1ODJkNzFlYTgxY2QwYzAwNmM0ZGZjMzNhZjJjMyBsZWdhY3ktdHJ1bmsKKzg2MDcgMmQ5NTgyZWVlMTEyZTZlOGNhZGZkNjRmMWMyNGU0OTNkMTNlODYwZCBsZWdhY3ktdHJ1bmsKKzg2MDggODU0MmI4OTAzOTg5OTVmOWMwMzI5YWMyNzhiNzE4MjcwOTE0NGE0YyBsZWdhY3ktdHJ1bmsKKzg2MDkgOTQ2MDViMDAyNmU3ZjZiZjM3NzJhN2MwNTFlOGE2MjY2NjliMzM2NSBsZWdhY3ktdHJ1bmsKKzg2MTAgYjRhMGJlNWM0MmJmNzU5YjVjMmYwZjI4OWIyMTgxYjk0M2Y3OGUzYiBsZWdhY3ktdHJ1bmsKKzg2MTEgNTUyODNmNjgxYTFjMjEwMWQxOWU3ZjM3MGUxY2YzOTY5NjEyY2ZiYSBsZWdhY3ktdHJ1bmsKKzg2MTIgMzJmNjU3NDE3NDNiZDdhYzZiZDE4ODM2Njg2MmEzZmFmMGQ0YjAxYiBsZWdhY3ktdHJ1bmsKKzg2MTMgNTcwNDVmNTFkZDEyYjA0ZDI1ODY1NTdmOTI4YTIyZjEyYzBkYjQ2MiBsZWdhY3ktdHJ1bmsKKzg2MTQgNDBhYmYyM2UxNjhiZmMzYmFjZDFkNTkzYmY2ZjYxYWFkYjM1MzI5YyBsZWdhY3ktdHJ1bmsKKzg2MTUgZjgwZTc2M2MxNzE3ZGU3OTExMDgyZTI1MDgxYjUyNDkzMTMzZTEwZSBsZWdhY3ktdHJ1bmsKKzg2MTYgYTI4N2M1MDE0ZTY2YTgxODhiYWUyOTEwMWUyNmNhMWY2YmU4MDFmZCBsZWdhY3ktdHJ1bmsKKzg2MTcgM2M5NTEyNDAxZjZkNmI3NmY5YjEwOWIzZTZjY2FmYTJhYzdhZDQzMiBsZWdhY3ktdHJ1bmsKKzg2MTggOWY2MTZhNDkyMTk2NjE5MTAwNzlmNWNmMzNkMjQ4MmM1NmY0NWRmOCBsZWdhY3ktdHJ1bmsKKzg2MTkgMTQ0ZGI2MzViNDlkMzNlOTliNmZkMWU1YjczNzc0NWNkMTc1N2FlMiBsZWdhY3ktdHJ1bmsKKzg2MjAgYzIzMzRkOTdjZTE0Y2E0MTY5NWU3YTk5MzZiNjY3MGYwNDU3ZTgwZiBsZWdhY3ktdHJ1bmsKKzg2MjEgMTQxODIwMjQwMTExMDlkY2U1ZTM1N2I0ODg5YWY1MTM2MTY5OGNiNSBsZWdhY3ktdHJ1bmsKKzg2MjIgMzQxZmNiN2JhZDkwM2JhMjkwZThiMmJhMDllZjQ3YTE2YzQ1YWY4YyBsZWdhY3ktdHJ1bmsKKzg2MjMgYTJhMWRmMGNhODA4ZjYyMzM0OTIzMjJhMzc3MTUzYjhlN2FhYzM1YyBsZWdhY3ktdHJ1bmsKKzg2MjQgYjc2YTQ0MTYzZTBmNjAzYjZkYzRjOGFlZWUyYTZhY2VjMzk4MThjMSBsZWdhY3ktdHJ1bmsKKzg2MjUgNDU4NGYwODkzMGFjOTFiNDAzNzk3NDk4YzNmZTVjYTk4ZDRmYTE5YSBsZWdhY3ktdHJ1bmsKKzg2MjYgYmIwMTExMzA4N2ViYzUwYTM3MTU4YzA3Y2U2YTk5YjM4NWRhZTRmZSBsZWdhY3ktdHJ1bmsKKzg2MjcgOWE3OGNlMWRiOGY2OGVmMTk4OWE0YzBlNGI3NGEwN2FkOTc4ZTRiZSBsZWdhY3ktdHJ1bmsKKzg2MjggOWZkNjBlNjQwYWU1ZDA5NzcxMGFlMzQxZjVjNGIzOTVmNmRhMTczYSBsZWdhY3ktdHJ1bmsKKzg2MjkgZDdjYmQyNjUxZTU1OWJiZGZiNzJmOTg0ZjhhNjA2YWM1YmRkMGI4ZiBsZWdhY3ktdHJ1bmsKKzg2MzAgMTdhMjZmOTg2MDA3ODg0MjMxNzc1YjgxOWFkNGUzM2IxNzMxOGQxOCBsZWdhY3ktdHJ1bmsKKzg2MzEgMmVlOTgxMWM5MmZkNGIyZWNlYTY2MjBjOWVhZjcyN2IzNzdiYjhjNiBsZWdhY3ktdHJ1bmsKKzg2MzIgNDc4NjcwMDZmMDc2YWU4NTU3NmFkMmQ4MzI5Y2IwNjgwOWY2N2JjYSBsZWdhY3ktdHJ1bmsKKzg2MzMgMWEyYmZhOWEwM2Y3NDJmODY0OThkOWVjMjA3YWFjYTJhMGM2NDU2ZiBsZWdhY3ktdHJ1bmsKKzg2MzQgNjQ3ZTYwZmIzYmFjM2Y3YzA0YjMxMGY2NDMwYWIzNzAzNjcwZmEyMSBsZWdhY3ktdHJ1bmsKKzg2MzUgMmUwYWE4ZDgxMzk2NGJiNmJhZGQ5YTgwZDMxM2FjOTU0MGVmNDFjYSBsZWdhY3ktdHJ1bmsKKzg2MzYgMmIwM2ExZGZkYmQzZmU2Yzg0NTMxZjBlMWY0OThhOTc1MjRjYjE0NSBsZWdhY3ktdHJ1bmsKKzg2MzcgNzk1OTI3NjFiMzMxYTA2M2YzYTU4YWMyNWRhNWFmZjU2MzY3ZWI4MSBsZWdhY3ktdHJ1bmsKKzg2MzggZDNkNWEyNWYzYjcwNWNhMjU2M2UxYWE4ZTFjNzhjNGJiMjEzNDlkYyBsZWdhY3ktdHJ1bmsKKzg2MzkgOTE4M2EzYzZiODVmY2EzNjJiY2Q4NWJhNGZjZTUzYWI1NGZjNjA2NCBsZWdhY3ktdHJ1bmsKKzg2NDAgMTE5ZDE4NGJiNWVkODkwZTgxNzcyNDdmYzRlZjZhNjk5NmI4NjliOSBsZWdhY3ktdHJ1bmsKKzg2NDEgM2VjNWNhOGFmOTFkMWM2MzU4ZTVhZWUzNTZmZGIzOGY1MGZlZjY2NyBsZWdhY3ktdHJ1bmsKKzg2NDIgMjlkZGYxMDQ5ODQyNzRhZmYyYjU5YzMyYzhlNGQ0MjA1OWFkNTVmNyBsZWdhY3ktdHJ1bmsKKzg2NDMgYTE4ZTFjZWJkMjlmYzhjZmY0ODNkMDA1N2ZmZWQwODg1ODkwNWIzNyBsZWdhY3ktdHJ1bmsKKzg2NDQgOWU0MzI0NjhmNzU2MDVkNmIwNDQ1ZmJhYTkyZmUwZTdhY2FjNjc5MCBsZWdhY3ktdHJ1bmsKKzg2NDUgMjUxNGU5ZmUyOWY2ZDczOWEzZjE0ZjU4Yjg0N2JiY2NiODJkZDdiMiBsZWdhY3ktdHJ1bmsKKzg2NDYgNDMzZDNlMWMwMmY3ZDA2OWZhY2YzMzQwMzdiY2IzOTVjOGQ3OTJkNyBsZWdhY3ktdHJ1bmsKKzg2NDcgM2U2ZDY4OGIwZDJhMjcyYmYyNTFhMmNhMjNhMmM2M2ZlNTVlZTAyMyBsZWdhY3ktdHJ1bmsKKzg2NDggOWEzZTZmMGQ2YjVhOTc3NTI0MGYzYzJjYWI1MGVjMjE4YmEwOTI1OSBsZWdhY3ktdHJ1bmsKKzg2NDkgMmY2MDgzNGVlYWY1ZDYzYTk2Y2E5Yzg0MGQ3N2NiNzE5OWRhZTBkMCBsZWdhY3ktdHJ1bmsKKzg2NTAgMjUzZTExYjYxMTA2ZDhlZGVkZDNmYjE1OWFkODQ0YzA2NjUxYTc0NyBsZWdhY3ktdHJ1bmsKKzg2NTEgNzcxMzVkYTlmMzZjZGNlYWEwYzhiZDljYmQyNWEzZWUxOWE2Y2Q5ZiBsZWdhY3ktdHJ1bmsKKzg2NTIgMTlmZTg4MGNhOTE5ZmE3NTU1M2Q2Yzc3NzI1MzczMWE2ZWM5YWJiZCBsZWdhY3ktdHJ1bmsKKzg2NTMgMThmODI0ZTViOWVhZTliYjUxNjlhYWU1YTQ1Yjc5MDE2ODJmMTE3YiBsZWdhY3ktdHJ1bmsKKzg2NTQgYWFjZTUwMmI4ZThiMTM0NDliZmFjMDliYjQ4NTY0MDc2NjQ1NDg4YSBsZWdhY3ktdHJ1bmsKKzg2NTUgYjU1YjIxN2YyZTBkNzljM2YzODQyNmQ2YjM0MWM2ZGU0ZDZjODc4ZCBsZWdhY3ktdHJ1bmsKKzg2NTYgNmNiNjZmMGNhOGQ1NDA4ZjRhYTg4ZmNjMmZiNjU0OTg4ZTBiNWU1YSBsZWdhY3ktdHJ1bmsKKzg2NTcgMmZmNzZlOWJjODVkN2ZkMjQ4ODg4MTc1ZTExYjZmMWI1OGFmOWUyYyBsZWdhY3ktdHJ1bmsKKzg2NTggZWY5YTI5NTNmOTMzNDM5ZWVhNDRkMTMzMWExMDdjMDdmNTQ3NjM5NyBsZWdhY3ktdHJ1bmsKKzg2NTkgNDNiOGM0YTY5NmQxMTRjZDBkMWMzZTViMTk5NzA4OWJiNzMyNTA4NCBsZWdhY3ktdHJ1bmsKKzg2NjAgNjRlMTk0YzVmODU0ZDA3NTI0YjAzYzY0YWMwNzIxNjYyZGQ0N2VkYSBsZWdhY3ktdHJ1bmsKKzg2NjEgMTEyNDlkNDM5ODQwNDljMDYyMTIyZTQwNzQwOGY2ZTBlMTY3OTZjOCBsZWdhY3ktdHJ1bmsKKzg2NjIgMzJhYWNkNzUzZjM0M2FhMzhiZDg4ZWFhZjYzOWM3MDgzODcwNTdlYiBsZWdhY3ktdHJ1bmsKKzg2NjMgMmU3NTVkMWZmNjYxZjE1MGE4ODFkZTJjODI1ZTIxMGZjMDNmYmZhOSBsZWdhY3ktdHJ1bmsKKzg2NjQgM2VhYmEyNTFhMzI5OThhODUyYWRhYjBmNDlmNGU1MGUyNDhkYWM4NSBsZWdhY3ktdHJ1bmsKKzg2NjUgYjdjMmZmMzA3MDM5OWEyYTA5MjRjNmJiMWFmZTljYTlhNDEzOTkwZCBsZWdhY3ktdHJ1bmsKKzg2NjYgZTQ3MTAxMTliNDFjZDYxMjQ5MDRjZDFlZGQ5NzcxNGJhMTIyNDdjZCBsZWdhY3ktdHJ1bmsKKzg2NjcgYjU3NTdlODdlYjMyZWEyODhiMDM0MjVmZDkyMTY0MjdiMTQwYjJkMyBsZWdhY3ktdHJ1bmsKKzg2NjggM2E2YjdhMzc3ZGMzYTk2M2YzOWI0M2U0YzQ1MzMzZDYxMWZiOTViMSBsZWdhY3ktdHJ1bmsKKzg2NjkgMTJiOGE0MzU5OWQzMzczNDgxY2RmY2IzYTRjNjFlZTBlNDNkZjM3NSBsZWdhY3ktdHJ1bmsKKzg2NzAgYmY3ZDc3MDVkY2U1ZGNhYzI2ZTNjMDA2NWM0NzIxY2U4ZjI1ZGUzZCBsZWdhY3ktdHJ1bmsKKzg2NzEgY2ZmMTA1YTNhMzg0YTdlNzJmNDk3ZDYzNzJiY2RjOTljNWY3ZWY0MiBsZWdhY3ktdHJ1bmsKKzg2NzIgZDk3OTgwZTdjMDVmMzA1ZDRlOGRlMzA0MmI0ODdkYWExNjQ4NTk3NSBsZWdhY3ktdHJ1bmsKKzg2NzMgYWIwNDVlZDExYmM5Njc4OTgwZDk4MjJmY2RmZTQyZGEyNzYzNzU5MCBsZWdhY3ktdHJ1bmsKKzg2NzQgN2RhN2JhNWM2NTI1ODRmN2YxNDcxODAwNjlhYzEzNGU3MGEzNzYxMCBsZWdhY3ktdHJ1bmsKKzg2NzUgYzQzY2E4ZGQwMDgxODc2OWM3OThiMWM2OWJiY2ViMTE5MTcxOThmMiBsZWdhY3ktdHJ1bmsKKzg2NzYgZmU4OTcwOWMyZWFjMGJmNzdlMDFlMDdmZTA1ODAyOWYxMDRiYmU1YSBsZWdhY3ktdHJ1bmsKKzg2NzcgYzU3Y2VkZTNjN2MwMDIyZmYxYjBlZGU2ZDcxNjM5ZWFkYzc0YmNmMCBsZWdhY3ktdHJ1bmsKKzg2NzggZGM5NzRiM2E2Y2Y0ZjcyMmY2YzhlNzAxOTYzMzhlNWYyZTYwZGM2YiBsZWdhY3ktdHJ1bmsKKzg2NzkgYmEyZjExYTgyZjI3N2M1ZmQ1ZGI5ZjYwYmFhOTZhNzkyYzNiYmIxOSBsZWdhY3ktdHJ1bmsKKzg2ODAgZjU3YWU2OGFhM2FlNTI2ZWQ2NzhkZmM0MGY5ZDE5NDBiYWIxMjM4YSBsZWdhY3ktdHJ1bmsKKzg2ODEgMjRkNjY4NDU0Y2IwMDAyMzE5Y2EwMWNkNTkyMGI2MDQ5NGRlYmUxMSBsZWdhY3ktdHJ1bmsKKzg2ODIgZTU1NGI5ZjRhM2FhOTI5ZTJiZDcxYzk2ZDkyMjgxYmY2YjFlOTcxOCBsZWdhY3ktdHJ1bmsKKzg2ODMgNzdmNWI2Y2JlYTY2MjQwODhiNzVkYWUxMDY3YTQ2OTk0OWU2YmJkYyBsZWdhY3ktdHJ1bmsKKzg2ODQgOWMyZWU2YmJkYmIzMjM3ZjYxNmUyMjdkYjlmNTkzZWExOTVlYjMxNCBsZWdhY3ktdHJ1bmsKKzg2ODUgN2I0NWQ5MmUzODYxZTM3NjBkODg4ZWIyNjk3YjBmMzdmNjk1ZWEwYiBsZWdhY3ktdHJ1bmsKKzg2ODYgZmUzZmFjMWEzZTUxNzg0NmJiYjdhOWUzZTRjZjg4NzBiODEwYTBlYiBsZWdhY3ktdHJ1bmsKKzg2ODcgNmEwYmY2YjI2Mzk2NGZhYmE3MTE0NTVmOTc4MjE3MjNkMjQxZWE3NiBsZWdhY3ktdHJ1bmsKKzg2ODggYTEyZWUyN2NhZDkzMjJiMjEzM2MxY2IzYWJkMjBiOTBmMjIwNjNmNCBsZWdhY3ktdHJ1bmsKKzg2ODkgNTA4OGVjNWExMmE2YjJlMzA1MDM0MDU3OGQ0YjE1Nzc1OTIzMzE4MCBsZWdhY3ktdHJ1bmsKKzg2OTAgMzZkZmM4Y2MxZDAxM2EzMzE4NzI0Yjc2YjZjOGE4MzhiNzQwNTYzNCBsZWdhY3ktdHJ1bmsKKzg2OTEgNGUxZjg5YTEyZjk5MjkzMzcxNDY3MGMwMDFlMWQ3MDkzYWU0ZmNhYiBsZWdhY3ktdHJ1bmsKKzg2OTIgZWI3YTAxYjg2ZjkzMTZiNzdlOWU2MmE3YzEwYzNkYWQzZmMyYzFhNSBsZWdhY3ktdHJ1bmsKKzg2OTMgMzNjZWYwMTk2MWE3MTEwYjAyNzJkY2ZkMDFmOTEwNjk4ZWYyNjkzYyBsZWdhY3ktdHJ1bmsKKzg2OTQgYjcwMWRmODVjMDQ3NDc2NWM2NTYwODU2NjMyZmJkZWIwZTg2MzQwYyBsZWdhY3ktdHJ1bmsKKzg2OTUgOGI1OWMwMDRhNDk5YzEyNjFlMGQ5NzRhZTE3ZTIxZGI1NDA1OGJlOCBsZWdhY3ktdHJ1bmsKKzg2OTYgNDE4ZDM4NWE5ZTQyNGM0ZmM2Yjc1MzMzMjBhN2UxNTU0MmVmM2NjMCBsZWdhY3ktdHJ1bmsKKzg2OTcgZWQ0OTI0ZjNiMmE1NjFjMGM3NTQ3YTJjNjI0NmRhMDlmOGNhN2QyYiBsZWdhY3ktdHJ1bmsKKzg2OTggZWU1YmQwODUxN2U4NjJhNDczNjU2NzczZGFiYTBiZWZhMDJkOGY2NCBsZWdhY3ktdHJ1bmsKKzg2OTkgNzhhNGE1NjMyYTkxYzU1OWE3OTQzYjYwYTI2YTExNGQ4YzcyM2MyZCBsZWdhY3ktdHJ1bmsKKzg3MDAgODBiZGJjNDliNGM0MGI1OTI4NzJjNTFjZDY0OTg0OGUwZTkyYjljYiBsZWdhY3ktdHJ1bmsKKzg3MDEgODU2ZDg3ZDI4MmFjNmJhM2EyOGFlMDNiYTI0Mzg0YzM3Yjg5ZGI1MyBsZWdhY3ktdHJ1bmsKKzg3MDIgYTg1Y2RmMGJlZmM1Y2JmZDQyYzZhNzgwYWVkNzdhNGNmMDRhOTMzMyBsZWdhY3ktdHJ1bmsKKzg3MDMgOTk4NTUyMTliMzdmNjgwNzAyZDYxNWNiZTY3ZDg4ZjViNTY3YjNlMyBsZWdhY3ktdHJ1bmsKKzg3MDQgNjEzZjk3NmE1N2I0OTJkODZlZTZmNGFjZTc2YWRlMWVjNGYxNjZjNyBsZWdhY3ktdHJ1bmsKKzg3MDUgYjUzMzQ3YzgyNjBlZjE1MjZkYzAzOTUwMDRkN2RmYWZiMDM3N2NmOCBsZWdhY3ktdHJ1bmsKKzg3MDYgNGRhNDgwODcwOWM5NTk3NzU3ZTVlNTNlNDViNWYxMTUzNDg1ODYzMCBsZWdhY3ktdHJ1bmsKKzg3MDcgMGVmMGUwNTFiMWY4ZDIyYzEzZTJkNDVhYmNkZjUyMjMwODM2ZTIxNyBsZWdhY3ktdHJ1bmsKKzg3MDggYzg5MzkwZTU2YjkxNDJlYzg0OWNjZDc4YTNlZWU4ZDk2MGVmMmJlNCBsZWdhY3ktdHJ1bmsKKzg3MDkgZmM1ZTFlMDA0OTk0MGFlNzQwOGQzM2ZhZDk2M2UzY2Q0NTEzOTdhYyBsZWdhY3ktdHJ1bmsKKzg3MTAgZWZjZWQ4MzI2ZTNmMjUwYTZhNjUzOWNmNzI1NWIwM2M5OTNmODFlOCBsZWdhY3ktdHJ1bmsKKzg3MTEgNGU1ZmI4ZDlhY2IxYzYzYzk1NzAyMDYzOTE5MjViMzJmMWE3MzRhYiBsZWdhY3ktdHJ1bmsKKzg3MTIgMjQ4NDU5NjgzMjNmOTEwMmQ0MDJiMzYyYWNhYTZlNjFiNGFmNjJiMiBsZWdhY3ktdHJ1bmsKKzg3MTMgNmRmZWMzMjBmOTEwOWUxNGEyMzY3OGQ3YTc1NjYwZWEyNTY3M2YzNCBsZWdhY3ktdHJ1bmsKKzg3MTQgMDNiODc5M2Y3NmMyY2JjZWQ1ODYzMDM1MzA5YTI4NTQwMDE3MjZhZCBsZWdhY3ktdHJ1bmsKKzg3MTUgNDQ2MmQzYzYwMGJmOTcyYWM2YWY2MjFiMzcxNjE1NGNlMTA2MGU2OCBsZWdhY3ktdHJ1bmsKKzg3MTYgZjYwODc2ODM1YTc1OWMyMWVlNDQ3YWEwZjRiZWExYzA2ODJlOTc2OSBsZWdhY3ktdHJ1bmsKKzg3MTcgM2I1YmJjYWY5MTdmODdjN2VjMWI3NWNmZjgwNjFmY2U4NThhOTc3OSBsZWdhY3ktdHJ1bmsKKzg3MTggYWI2NDM0NGU4N2RiZGI1YjI3Njk0NmU0NDgyYjliNjhiN2VlYjExMiBsZWdhY3ktdHJ1bmsKKzg3MTkgMjFhMjg0OTBiZDk2MWNlOGMxZGY4Y2Q3ZGUxMDNjNDk3ZjJkMWFmYSBsZWdhY3ktdHJ1bmsKKzg3MjAgNDI3OWY0ZWIyMTBhMjE0ZjBmZjBmNDk3MjcyZDc3NDRmNGRjNzM1NyBsZWdhY3ktdHJ1bmsKKzg3MjEgNWFiMjFkMWI2MWQ4NmJmMzNiMDJlMzM5M2RhYjYzM2U0ZWYwMjJjYSBsZWdhY3ktdHJ1bmsKKzg3MjIgMTViY2VjM2QzMjU5OWU2NDk4ZDFhMTNlNzZkODM4OWQ3MWJiNjg5MyBsZWdhY3ktdHJ1bmsKKzg3MjMgNGNmMjBmYTg4M2E5MmUxZTc0YTkxNzg1ZmFmMDgzNzc2Y2IyY2E1MyBsZWdhY3ktdHJ1bmsKKzg3MjQgMTQ5NjQ0NGU4YzhiODMwNDdkMjRhYWVmZTJlYWNiNTYwMzM5NWRiNCBsZWdhY3ktdHJ1bmsKKzg3MjUgYWYxMTRlZDllNjFkZWQ2MGE3YmU5N2Q5NGU5MzIwOGY1MWVhNjUyYyBsZWdhY3ktdHJ1bmsKKzg3MjYgZjEwYWFkNzNlMDI5MzExMDI1N2E0ZjMwYzY0OTQyOTVmMGIyNjU2YSBsZWdhY3ktdHJ1bmsKKzg3MjcgM2ZhNGI3YWUwZTZiYzFmMGFhYWU0MDFmMDVjYzliYzgwZjZmY2EwYSBsZWdhY3ktdHJ1bmsKKzg3MjggM2UwYWE3MTYyYzg4MWY2M2Q3ZmJlZmI4NTdmMWM2ZGNiNmVmZjU3MCBsZWdhY3ktdHJ1bmsKKzg3MjkgNjQyOWRiNWQwYWY3MmQwMDkxZWIwOTFlNDQ1MDlmYTY3YzIwMzEzNCBsZWdhY3ktdHJ1bmsKKzg3MzAgNTIyNGVkODc3YmFlN2Q1NmI0ZGU4NDU2YjIzOTc1N2Y0YjNmYmFjMSBsZWdhY3ktdHJ1bmsKKzg3MzEgNGM3NmVlMDFkZjA4ZGIzYzRjYTQxZDAwMjUzZDI2Njc3ZDkyNjc5NyBsZWdhY3ktdHJ1bmsKKzg3MzIgZjQ0NmUwOGFjMzAyN2I4NmYyN2IzYWQ2NmE3NzRiYzk4NWRjNzlmZiBsZWdhY3ktdHJ1bmsKKzg3MzMgY2UyMDkyNzE0NDg0MzY5ZTg4Y2FlMjYyYjI2NTQ0ODUyZTAyYTlhMSBsZWdhY3ktdHJ1bmsKKzg3MzQgZGRkMjU1MTBmM2ZiNmYzMWJmZmYxYWY0ODFlOTU3NTM2NzU2MjFlNCBsZWdhY3ktdHJ1bmsKKzg3MzUgN2MxZWE4NWUyNjg0MmFiZDQyZGJlYWUyNjMyYzA5ZWIwZDU5ZjgzMCBsZWdhY3ktdHJ1bmsKKzg3MzYgNGZiY2M0Mjg5MDEyNmMyYjZjOTljYTY0OWUzOTdjMzZhZDIzNmM3MSBsZWdhY3ktdHJ1bmsKKzg3MzcgYzBjZDIzZTcwOGI1ODZlZDI4OGQyZWQzMWYyZTYwYzBmYzk2MmM0ZCBsZWdhY3ktdHJ1bmsKKzg3MzggZDk3OTQxZWM1ZWVkMDExNTRhYTdhNmIzMTY5NGY2NDA2ZDlkZmY0ZCBsZWdhY3ktdHJ1bmsKKzg3MzkgNTA3NGZhYjI5MjVkOGFjMGE4NTNhYTVjODE4NmRiYjdhOWE0MTJmYiBsZWdhY3ktdHJ1bmsKKzg3NDAgYWE2ZTA1MDRlMGYyYWI2ODczNTBiYzBhNjc5OGIxZjFjNDkxNTA4MCBsZWdhY3ktdHJ1bmsKKzg3NDEgM2RmMjJlZGNlY2FkODY5NzEyZDk1Y2E2YzcyNjhiMzNkY2Y3N2EwMyBsZWdhY3ktdHJ1bmsKKzg3NDIgOGE1MDI0OWFhNzJmMzNkMmE5MmE2NmRlOThiMDBlMGZkM2Y2NGM5ZSBsZWdhY3ktdHJ1bmsKKzg3NDMgOGMxZTAyMDg5Mzc5OGUwZjNmOTNhMWUyNzI3MDdmMzkzMmRhMDA1ZiBsZWdhY3ktdHJ1bmsKKzg3NDQgZWI4ZDFhMDk4YjlkZWNiMTQ2Y2YxZjI2MGE4Nzk4MTk5NWNhZjMxZSBsZWdhY3ktdHJ1bmsKKzg3NDUgMDIwYTNjOGFiMDcwYmEzNjY0NWUwMDljODc4Y2UyYWMwN2ZjMTUwNCBsZWdhY3ktdHJ1bmsKKzg3NDYgMTNjNTMyOWQyYzJlOTEyZmFhMWNmYjNmZTA5ZjY5MzgxYzU4YTljMCBsZWdhY3ktdHJ1bmsKKzg3NDcgZGVhOGRjNGI4ZTIyNWRmYmFkNTFkODAyNDFiMWM5MjRkYzhiMTliMSBsZWdhY3ktdHJ1bmsKKzg3NDggZTk5MjYyNDFmYWE0MDMyZmJmMmQxMGUyMTRhNGVhZDVjMDliZjM1OCBsZWdhY3ktdHJ1bmsKKzg3NDkgNzc1ODk5NTgzZGE2OWQxMDRhMzYxOGE5Y2ZjNWU4YWViZDcyYzY4NSBsZWdhY3ktdHJ1bmsKKzg3NTAgNDMzMzc3NWI1NWZkZGVmNmFlNWI0YzZiNDRlMDNmNzk4MzZlOWYwZiBsZWdhY3ktdHJ1bmsKKzg3NTEgN2EzODA4ZWRjNTM5MDQzNTEwN2ExMWViOWU0OWM1YmQ1ZGJmZmI5MiBsZWdhY3ktdHJ1bmsKKzg3NTIgZjlmYmRlNzVjNTM2NWE1ZjU4MDg5NjcwNDgxNGIxYjQ0ZGQ5MjQ4ZiBsZWdhY3ktdHJ1bmsKKzg3NTMgZWQ3NGNjNTljOGEyYzUwNGQyOTM5ZWQ0ZjY5ZmJjMGE2NGM3ZDNmZSBsZWdhY3ktdHJ1bmsKKzg3NTQgYmI1NDcyZmI0ODg1Yjk1MDJjYTJjNzNiZGQ3Y2Y5YTcxZDJmMGNjMCBsZWdhY3ktdHJ1bmsKKzg3NTUgMjk4NDQxNmExYjJiMjM4YzZmYzVmY2JiYTgwYzRjNDZjYzIwZWEwYiBsZWdhY3ktdHJ1bmsKKzg3NTYgMDc4NjAwNDlmMWM0NTE1ZmY5MjVjY2E1YzkxNDFmYTkzMTg4ZDQ0MSBsZWdhY3ktdHJ1bmsKKzg3NTcgYTI2NmU5NGNhNWUxY2Q5NDI4M2VhZDY3MmYxMWUxMzNjNGZlYzU2YyBsZWdhY3ktdHJ1bmsKKzg3NTggMzNlZjdiYTZlNzRiYTUxMzZiZDhiYzA4ZDBlYWVhNjM0ZmE2NWE0NiBsZWdhY3ktdHJ1bmsKKzg3NTkgZjY4MzllNTMyYmUyYjRlYTUxMjUyMTI4MTQwZGI4Mzg2YWM3MjU1ZSBsZWdhY3ktdHJ1bmsKKzg3NjAgZWJkYzQ4ZDA2Y2Y4NWVkMDI5NWRhNjJjN2U3MzAyZWFkY2ZlYWYwZSBsZWdhY3ktdHJ1bmsKKzg3NjEgZGFhNjJjMjI2NGI1MjU5OTU2OTcxZWNlODE1MDVjNGYwNjI2ZGExNiBsZWdhY3ktdHJ1bmsKKzg3NjIgMzM3MDU0ZTlkNGZhNDM3NTY1YzRmODE3MjUyMzRmMjVlZGQ1YzRkZiBsZWdhY3ktdHJ1bmsKKzg3NjMgODJjZDJiYWE0MTM2NDZmNmNjODBkNWJhNWI5ZTgwZTg3YTI5YjUyOCBsZWdhY3ktdHJ1bmsKKzg3NjQgNDg5ZGIzNjJjZDQ4ZDA4MzNhOGJhODkwMjlhNzRhODNjOWMxNDAzNSBsZWdhY3ktdHJ1bmsKKzg3NjUgNWZhNGIxMDMzYjA2ZmMxOTUxZWI1OGNmMDhhNTM2ZjUyYmJjYmI2NCBsZWdhY3ktdHJ1bmsKKzg3NjYgNjU0NDYwNDRmYjhmNzEyOWJkNmViNDBmYWE4MmY2NWY2ZjVkN2Q1ZiBsZWdhY3ktdHJ1bmsKKzg3NjcgNDdmYTNkZGZiMDkwYzk1YmVmY2IyNzYwM2M2MmY4MjI0MGQxOTYyMiBsZWdhY3ktdHJ1bmsKKzg3NjggM2Q2MTQ3NGExNTUwZDg2NTQ1NzMxOWM5ODA3ZmIxZDUzZjA2ZGI1NCBsZWdhY3ktdHJ1bmsKKzg3NjkgOGUzMWYxYzA3ZGM1YjJlZjAxMTA0ZWE5YWJiMDM2NjMyOWQ4Yzg0ZiBsZWdhY3ktdHJ1bmsKKzg3NzAgNmMwYTI2NThhMTU2MTA4YTA0ZTllMGIzMmJiNWM5Zjk3ZDE4MTM3OCBsZWdhY3ktdHJ1bmsKKzg3NzEgYTg0ZWYwYTcxMWJhMDkyYjcwODI3ZjAxM2ExMDY3NTA2YzUwMjU5MiBsZWdhY3ktdHJ1bmsKKzg3NzIgZWFiZGU4NmQ5N2YwNjk3ZjI1OGM5YjdiYzhjZjI0Y2U5ZWIzYjkzYiBsZWdhY3ktdHJ1bmsKKzg3NzMgYzBkNDNkNmY1MjQwZGU3ZTk5MDY2ZTgxZDk2NTI3YmViOWYwYmIyYiBsZWdhY3ktdHJ1bmsKKzg3NzQgNTA5NDc0Yjg4YjAxYzQxN2MzMzhjMzg4ZGExNDhiNzZiZjk0M2M4YyBsZWdhY3ktdHJ1bmsKKzg3NzUgZWJkMDk5ODg5NzIxYzQ4MDlhZjBmZTU4ZWQ4OGUwOGZjMzU4ZTMxZCBsZWdhY3ktdHJ1bmsKKzg3NzYgMDA1NGEzODQwYTc1MmE1MzcwM2QyYzFkYTE0MjMyM2FhNmQyZjMxMiBsZWdhY3ktdHJ1bmsKKzg3NzcgNDkxMDViOWU5OTQ3NDQ3ODgzMGI1Nzk4NzMwMmQ1NmViOWFjYWMzMiBsZWdhY3ktdHJ1bmsKKzg3NzggYTQzMzUyZjBlMWVlNmJhYWFmYmE4NzdiMjY5MGZkMjM4NjY0YWRkYyBsZWdhY3ktdHJ1bmsKKzg3NzkgYTYyZDZkMDYzYzBmMDg5ODNhMjZlNzExNzQ2ZDNmM2Y0MWIwMWUwZCBsZWdhY3ktdHJ1bmsKKzg3ODAgY2YwZWZmYzNmNTg1Yzc4OGM4Y2EwNzM0NTY3YmEwMjExYjk3NzFkNiBsZWdhY3ktdHJ1bmsKKzg3ODEgYjM3OGEwODg2NjIwMTUxZWRjMzg4OTdmN2U3YmM0ZDIzMTQ4ZjkzMyBsZWdhY3ktdHJ1bmsKKzg3ODIgNmUxZmE3NmU3OTQwN2QyNDNhYmZkMDc5YjM3Y2E3NjgzOTJmYjJlYyBsZWdhY3ktdHJ1bmsKKzg3ODMgNTlhOWZiZjU5MTI4NjNmYWEwZDE3ODQ5MDcxZGYyNzg4ZmU2YWY5NCBsZWdhY3ktdHJ1bmsKKzg3ODQgZTFlYTRhZDQ2MWY5MjNiOTk5OWUwZTgyODllMzkwOGViZTJkZWYwNyBsZWdhY3ktdHJ1bmsKKzg3ODUgZWE2ZTU4NzEzNmI2ZTNiYmQwMDgxYTg4NGNlMTkyYjY4ZGUwNjY3ZCBsZWdhY3ktdHJ1bmsKKzg3ODYgOTA0YTRkNzgzYTMzNzJiM2YyMWZkNTBjNGViNTJhOTY1MTg4MWQxZCBsZWdhY3ktdHJ1bmsKKzg3ODcgZWI1MTI4ZThhOGU4ZTNkNzI5NmU4NzYxNmJiZjVkMmRlNjk2NGJkYSBsZWdhY3ktdHJ1bmsKKzg3ODggMTNmYmQ5OGQ4MWNjMDYxYzczOTViMWI3MWU4YjM2ZDRjZWYyZjg3ZiBsZWdhY3ktdHJ1bmsKKzg3ODkgN2JhNzljOTQ5YjNhNzI3OGZhZmJlMGJlOGVlMjE4YmI5ZTcxODY3YiBsZWdhY3ktdHJ1bmsKKzg3OTAgYjk0NThkYzk5ZDUwYTBmMTM5NDA4NmY4MzlhOGEwNmYyNzE5YmU5YiBsZWdhY3ktdHJ1bmsKKzg3OTEgNGI3ODVlNTllODMxMjIwMDU1MWViN2M4MzU0OGRiZWFlOTJmMmU4MSBsZWdhY3ktdHJ1bmsKKzg3OTIgZDI1NDg5YzVhMjJmNGZmYWZkYjA3YWNmOGRlNGMxN2RhYTlkNDc0MyBsZWdhY3ktdHJ1bmsKKzg3OTMgYzIzNTk2NjViZTgwNzMwY2UxMmE3ZWY2ZDMyODczZTM3OWY0MTlmNyBsZWdhY3ktdHJ1bmsKKzg3OTQgNzFiNDBjYzRjYzAzNzJmM2NkZWJlMjk5NGZiMGJkZTE1MGY4ODg3ZCBsZWdhY3ktdHJ1bmsKKzg3OTUgY2RjNWE0MGZjZjk3NGU5NDJlZTZmNzk5NDFmMjQ2MjA1YWI1NDAzMCBsZWdhY3ktdHJ1bmsKKzg3OTYgYjdmMGI5OGY1MzI1MTdmNzUzODRhNzcyYWM2NTdlZjc5Y2EwYTlkOCBsZWdhY3ktdHJ1bmsKKzg3OTcgYTc1Y2E3NGRlZWNhY2M4OGFiOTNlM2QwMGFmOTlhYTNiMjNiNzkyNSBsZWdhY3ktdHJ1bmsKKzg3OTggOTEzY2QxZjM3M2JlNDdiNmU5MzA1ZmVjYmUyZDYzM2RjY2Q1ODM3ZCBsZWdhY3ktdHJ1bmsKKzg3OTkgMDVkOTQzYzQ1OTdjMmRjM2VlZjg4ZDhlZWQ0NTE1ODM1ODUyNDVjZCBsZWdhY3ktdHJ1bmsKKzg4MDAgM2Y4ZDdmNzRmMWJjNTQ5YTM0NmJjMmQwZGRiYWI1NjViYTk4N2IzMCBsZWdhY3ktdHJ1bmsKKzg4MDEgMjBiNTY0N2EwNjdlYmZlZmZmNTg4YmI1OGI3MjczOWQwODZkYjYxNSBsZWdhY3ktdHJ1bmsKKzg4MDIgNWNkYzNjYTA1M2Q2ZTgxMGE1NjU1NTBmYzEyNDAyZDdhNGZiZjcwYiBsZWdhY3ktdHJ1bmsKKzg4MDMgYjAxODM5OTQwMjFiMzcyZmNmNTEzYTI4ODMxMDczODFhNGU4NzYzYyBsZWdhY3ktdHJ1bmsKKzg4MDQgNGI0Nzc1YjQ5YmZhYzQ0YjYxN2E2NGNmOTJmYTQwZTYxYWI2OGFmMyBsZWdhY3ktdHJ1bmsKKzg4MDUgZGZlYWY5NjVmNDhhZDMyZjBiYjBlOWU2YzUyMGFhOWYyNWM4MjE3NSBsZWdhY3ktdHJ1bmsKKzg4MDYgZmJkY2ExNzI4M2MyM2JmMDA0Y2VmZjI3OTk3MjMyMWMxNzVkODJkZiBsZWdhY3ktdHJ1bmsKKzg4MDcgMTcyYzdmZWJkNzU1N2E1MDBlMzY5NzcyYWZhZTJjMDUxM2UwMDAzYyBsZWdhY3ktdHJ1bmsKKzg4MDggOTc5YzcxMjM4ZTViYjJjM2MyNDhhOWZmMDlhYzI4YTUyNWY0MTNmYSBsZWdhY3ktdHJ1bmsKKzg4MDkgMmY0YTkyNWU4YjRiMjQxNDNkMzI4YzIwNjNiYmUzNDFmOGRmZjRkOCBsZWdhY3ktdHJ1bmsKKzg4MTAgZGQxMDI3NjZlYTUxMjFiY2IzMDMyMDNkODBlYzZlZWM4MzE4MDIyOSBsZWdhY3ktdHJ1bmsKKzg4MTEgZmMxYzBhMjdiYjk2MzhhNmUwZDE2MDU5OWMwN2ExYWFlNWRmOTRjZCBsZWdhY3ktdHJ1bmsKKzg4MTIgNTc1ZjZiOTEwZjg4YjQxNmE3NmUzYzMyMzAyNjNiNTBjYzE1OTI1OSBsZWdhY3ktdHJ1bmsKKzg4MTMgYTQyYjMxZmU5NzZmNTU0NDFhMjljZDQ1OWNkNTBiZWVhNTJmYmYyYyBsZWdhY3ktdHJ1bmsKKzg4MTQgOWU0Mjk1MThjYjIwMTc0NTBkZDJkZGFjNTIwZmEyYzQ5ZWQ5MTFhMSBsZWdhY3ktdHJ1bmsKKzg4MTUgNGIwNzZmYzViYTQwM2VhYWQ1ZDAwZjQ4OTgxMTY4NTczZDFjZTZkOCBsZWdhY3ktdHJ1bmsKKzg4MTYgNmY4ZWI0YTFmYTA3ZWI3OTkxODFkMmYwYzAxNDJlMzdiMjZhZWNkMyBsZWdhY3ktdHJ1bmsKKzg4MTcgNTkzZjU0MTI5NjYxNmEzOWM4ZDM5MGFkYzQyNDc3ODZjNWE4NmZhMSBsZWdhY3ktdHJ1bmsKKzg4MTggMWVkOTE0ZjhiZjBhMGZlYzhjOTlmMmVmYmEzZjg5MmRkNTdhMzE1ZCBsZWdhY3ktdHJ1bmsKKzg4MTkgZTllZDA2NGYzOWY1MDVjZjdiNTA5ZGY3NjI1M2IxNWQxZmYyYWQzZSBsZWdhY3ktdHJ1bmsKKzg4MjAgNjg5ZGU2MTNlYTFjY2EyNzE3NzliM2RmMGEyMmU3OGRjOGNmZmEyNiBsZWdhY3ktdHJ1bmsKKzg4MjEgZTQwODdjZDQwYzg1ZDgwMGRiZWQzNmRiY2YxZmQ2ODhkNjEzZDgyZSBsZWdhY3ktdHJ1bmsKKzg4MjIgOThkYWNjODk3M2ExMjAyZjY0MjhhZWMyZjQ2OWFiNTQ1OTJlODIxYyBsZWdhY3ktdHJ1bmsKKzg4MjMgYTVmMjlhNTYwYzA5YTMzODg0MWE3YTdkMzE4ZTU2OGVkYjY3MTUyOSBsZWdhY3ktdHJ1bmsKKzg4MjQgMjY1NmQxZWVhNzkyMmRiOWYyZDUwZGU4ZWFmYTY0YjI4ZDYyMzAzNiBsZWdhY3ktdHJ1bmsKKzg4MjUgNmEzYjllN2Q0M2MxMzc3ZDIzM2YzOThkNzAyZWIzNWIwMmNmNTNmNyBsZWdhY3ktdHJ1bmsKKzg4MjYgYjczMzFiZDBjY2Y1NzdjYjlhOWE2MWE4MzA5MTM0YjA2MmNlNmRiMiBsZWdhY3ktdHJ1bmsKKzg4MjcgOWExMjFiM2ZiZWJiYmFmMWE1YTUxNTFkNDVjMDQxYjE2MTA0YjVjNCBsZWdhY3ktdHJ1bmsKKzg4MjggMzg2NGRmMjk0OTc5YTA2OTYxZjNjYjk3ZGFjZWM1ZTBhZTc3ZmVjYyBsZWdhY3ktdHJ1bmsKKzg4MjkgYjYyYTdhNTk0MTRlN2YzZTBmNzg1NTk3ZWRjNTk0Zjk2NGQ1OGY4OSBsZWdhY3ktdHJ1bmsKKzg4MzAgNjY2YWNjZDY2ODc4Yjc2ODEwM2JjODAxZjBhOGJlZTc5Mzg0ZWVjMiBsZWdhY3ktdHJ1bmsKKzg4MzEgZjRkY2JjMDI3Y2QyMmVlN2VhNDFiNzYyNjNhZGY3ZDU1YTBjYWNlNCBsZWdhY3ktdHJ1bmsKKzg4MzIgMmU0MGUyN2Y4YjI2MGZjNDc2MGI0NzEzZDE5NzRiZmU0NDk2YjhmYSBsZWdhY3ktdHJ1bmsKKzg4MzMgYTg1N2QyZjg3MzM2NGMwZjNlOGNkYzJhOTkwMGI1ZjQyNTU1MjQyMCBsZWdhY3ktdHJ1bmsKKzg4MzQgMTc0YzFiY2M4ZTJkMGQ4MjhlZjk2YzgyODY3M2U3N2VjMjliZDI3MSBsZWdhY3ktdHJ1bmsKKzg4MzUgOWU4MmRkNzYyODhlOGYxOTMwYTQ5YmZjM2Y4ZmIyZGY3M2Q0NjZkYSBsZWdhY3ktdHJ1bmsKKzg4MzYgN2RmNzhmOWQ2ZDM0Nzc3N2FhMTNhNmJiNjg5ZTMzY2QxM2UwZWY2ZSBsZWdhY3ktdHJ1bmsKKzg4MzcgZDY0ZTg1ZWQ3YjQ0MWRhZDdkZjIwNjhjNTYwYzJmMjc1ZjcwZDYzZiBsZWdhY3ktdHJ1bmsKKzg4MzggMGU3ZTIwMDQ5NjM3MjhhMzY1MmVlZWZmMGQ0N2NmZTRhYjc0MzU3OCBsZWdhY3ktdHJ1bmsKKzg4MzkgMzI2NjMyNjdlYjQwNjE5NjBjMDU4OWUwY2JmODIxYTRiMzhjY2Y1OSBsZWdhY3ktdHJ1bmsKKzg4NDAgMGM3NDY4OGJjMWZmYTQ5MzYwYjlmODNhNThiZGVlZDA0MjFlMGQzYyBsZWdhY3ktdHJ1bmsKKzg4NDEgZjM5YmVlM2ZmMjJiZGFjMmYxZTIyYWQ5YjAyZDI5ODFhODdjMzg3NyBsZWdhY3ktdHJ1bmsKKzg4NDIgMjFiOTNkOTg5MjZiODE1YWM5ZWNlMjg0ZDRiN2M2NDgyZWNhNzZkZSBsZWdhY3ktdHJ1bmsKKzg4NDMgNzFjM2JlYjI5NDk5OWRhYWFhODJmODQ3NTY3YjA5YzUwMGVlZGRmNSBsZWdhY3ktdHJ1bmsKKzg4NDUgMmMyOWI4OTgyNjQzMzdkMDJhMDBmNmRkNWQ5NGVlNThhNTBkY2E2OCBsZWdhY3ktdHJ1bmsKKzg4NDYgOTRlMGIzMWZkZjVmMjgzMzE1ODg4NzFmZjFkYWEyNTRjNjgxZDk3ZCBsZWdhY3ktdHJ1bmsKKzg4NDcgZjgyMjQwNDZjY2Y4Y2IzMzYyNTE0YTg2Y2UzOWY5ZDdhN2I1ZWIxOSBsZWdhY3ktdHJ1bmsKKzg4NDggMzY0MDUzMDkzOTdmYzI2NDkwNjdiOTI4ZTAyZTZiZDExZjAzMjczMiBsZWdhY3ktdHJ1bmsKKzg4NDkgNjc4YTNmMWQwYzgwOWM3MDBiZDJmNGY2NDkzZDkzNzhiOTk1YmVlMyBsZWdhY3ktdHJ1bmsKKzg4NTAgYzcxMzliNmY3MzQwNmUxYmIyOGYxMGY0MWJjYzgxMzUwZTc3ZTEzMiBsZWdhY3ktdHJ1bmsKKzg4NTEgNDdhOWE2ZGUyM2ZmYzIzYWYyOGMyM2MzODY3NDU1NGFhYzc0MDYyZCBsZWdhY3ktdHJ1bmsKKzg4NTIgZjZlZjlhZjRjOGI5NTRhNTVhN2I0ZjhlYmFlY2QxNjRjNjU4ZGM4ZSBsZWdhY3ktdHJ1bmsKKzg4NTMgYjY4MTg1ZDk0Nzc3YzBkMWFlMmE0OWJiNDk1MGRiNDk0OWRkMDlkYSBsZWdhY3ktdHJ1bmsKKzg4NTQgMWFmY2FjNzY1OGU1NzQ2ZTQxM2Q0YjIwYzMxZTYzNDE5NmNlNjNjNyBsZWdhY3ktdHJ1bmsKKzg4NTUgNGNiMjIzZjI5MzM3NmZhN2ZmMDZkNjBlMzk2MzZiZDc3MmUxMThhZCBsZWdhY3ktdHJ1bmsKKzg4NTYgODkyMmM3ZjNhMjg1NTExODk3MjEzMDJjODIyYmY2MmYxZDA1MzhmNCBsZWdhY3ktdHJ1bmsKKzg4NTcgYjgzZWEyZmVmMzMyYjFhYWU4YWQxYjNhYjBmMjIxY2IyMTMxNmRlMiBsZWdhY3ktdHJ1bmsKKzg4NTggMzdmZjcxY2Q5NDFlYjA0ZTc0M2JhZTVlNjViNGJiZGRlYzkxNTQ0NiBsZWdhY3ktdHJ1bmsKKzg4NTkgNDQ5MDQ3NjRkYWZhOGM3NGQzMmNmOTZkNTk0NTVjMGQ5ZGI4YWZjMCBsZWdhY3ktdHJ1bmsKKzg4NjAgMTZjZDM5ODA1ZmQ1MTg3YWI2ZjgyZmZhYmQxZjkzMWI5ZWNlNDA2OCBsZWdhY3ktdHJ1bmsKKzg4NjEgM2YxOTUyNTM0MzY3Yjk5MTU0NTI0NTY4Zjc3MGU5NWYzOTE3MTQ1MyBsZWdhY3ktdHJ1bmsKKzg4NjIgMjM4YThiNjA5NmUxYmIxZjI3YzU0MjU5MzlhMWQyZmYyNzNjNmI3ZiBsZWdhY3ktdHJ1bmsKKzg4NjMgMTRkNThiNWEyMWM0MDg2OGJjMWI5MGFjODg5NTVkNDdlNTU2OGVmZiBsZWdhY3ktdHJ1bmsKKzg4NjQgNTA1ZjUyMDEwZjJhZjlkZjQ5NmY1YWY2YzVhNzY2MzNlNTg4MWRkMyBsZWdhY3ktdHJ1bmsKKzg4NjUgODMzZmIwMTQwOWYzNDlhNGI5NWM3YmJiOTYxMTQzOGRkNDJkZWVlMyBsZWdhY3ktdHJ1bmsKKzg4NjYgMzdlNjhiNGE1Mzk3MzM2MzIwYzZlYjEzMTIwMzdmYTJlZTUyZTZlNyBsZWdhY3ktdHJ1bmsKKzg4NjcgYmRmNGUyN2Y1YjllM2QxMzNlY2MyZDY5NzFmMGE0NDk5ZDg5ZTI5OCBsZWdhY3ktdHJ1bmsKKzg4NjggYTJkZjNjOWU1ZjQzYWNmYmY0MjY2YWJjZjFlMWY0MzI5ZTRmOWRhOCBsZWdhY3ktdHJ1bmsKKzg4NjkgN2NiZWYwZDc0ZWEzNDFhYjE4MDIzNDMxZDQ3ZDdiNzdjOTg0ZDAyMyBsZWdhY3ktdHJ1bmsKKzg4NzAgMjRmMjk1ODZkZTk2OTAzNjdmYjBkOTI4ZDFkNjIyYWI1NzdlOTA3ZSBsZWdhY3ktdHJ1bmsKKzg4NzEgZjZmMjUxMWJiNmJhYTJmODBjNGE4YzVmNDIzMzhiYWJlNDc2YzVhMCBsZWdhY3ktdHJ1bmsKKzg4NzIgNzg0YTE2ZjU2NjQzNDc0ODg4ODY3ZWZkODFhNmZiZDQ4NDJmMzhlOSBsZWdhY3ktdHJ1bmsKKzg4NzMgMjJkYWUyNjM3ZTA4MmVkMDY4NzllNGFjYWY4YTM1YTY2ZDIzMjQ0ZiBsZWdhY3ktdHJ1bmsKKzg4NzQgNmVhOTI2YjQ2ZjhhZWJiZmYwZTlkMGM4YTM4M2JjOTRjYWUzMTg5OCBsZWdhY3ktdHJ1bmsKKzg4NzUgNGQ1NWJmZTFmZWJiZWM2MzYyMTY2MTJjZGQxYTlhZWZjMDQyNjhkMyBsZWdhY3ktdHJ1bmsKKzg4NzYgOWVkOWViNGE3ZjIzYTRmZjgxNTI5NzYxNTIxZGMyZGY3NDUzY2NlZiBsZWdhY3ktdHJ1bmsKKzg4NzcgYzdmZTM4OTBmMTAzZTY2NGYwOGQ5MzA2Nzc3NWVjYzUwYmRkMmZkMCBsZWdhY3ktdHJ1bmsKKzg4NzggMDQ5MGY2YTg0ZDM0NzUxNjk4ZTM5Y2ZjM2I4OWYwYzhjOTNhM2Q0MCBsZWdhY3ktdHJ1bmsKKzg4NzkgMzIyNDg3OGJkOGIzYThlMDE5MGRlODc1Yzg3YWExMWJlZjQwZDFmMyBsZWdhY3ktdHJ1bmsKKzg4ODAgOWY4MTM0ZTk1NTY1YjRhNmU0MWU4YTA4OWQyYmY4OGI0YTgzMzZhOSBsZWdhY3ktdHJ1bmsKKzg4ODEgOTQ1MmI3N2Q2N2VjOWZhMGU2ZjMzMDJjMzA5MmRhNTgwOGFlZjBmNiBsZWdhY3ktdHJ1bmsKKzg4ODIgZWQ2ZjZmMDMyMjE3MTliMmY2NjBlODBmMTlhOTAyYjU3ZWVkNjJjNyBsZWdhY3ktdHJ1bmsKKzg4ODMgNjUxNzdhYjZhNjk2YzUxOTlhMGNmYmJkY2UwZjQwZDZkN2JjOGUxYiBsZWdhY3ktdHJ1bmsKKzg4ODQgODExNTRhNTFjMTZlZDJhNmRlZmUxOTJiYTFlMmM1ZmRkMjcxNDMzMyBsZWdhY3ktdHJ1bmsKKzg4ODUgNTc0ODRlMjFlMzI3MWRiMmQ5YzRiZTMxMmU5ZjdlOWFmYmIyMGQxNSBsZWdhY3ktdHJ1bmsKKzg4ODYgMTg0MDkzZDk2ZDJhMmJiOGRjZmFhMGZjZWI4NDQ5MGE4ZWQyZmI5MiBsZWdhY3ktdHJ1bmsKKzg4ODcgNGFkYzdlOTZhYmEyNTI4ZDY3MWM0ZjQ5ODRmOWJjZTBkNjE4NTdlMSBsZWdhY3ktdHJ1bmsKKzg4ODggNDM5MzgwMGY5MjYxNTk4MTIyYjZkOGYxZTliY2YwZTI0M2Y2NjQ1YyBsZWdhY3ktdHJ1bmsKKzg4ODkgMzg2NTVlM2FkMTkyNTdlMzVmMTg0YmIzYTcwM2U4YzM5MzFmZTUxYSBsZWdhY3ktdHJ1bmsKKzg4OTAgMDRmM2QyNTlmOWU5OWFjN2U4NjdhYjNhNGEyMmIzN2U2YWVhNzdiNCBsZWdhY3ktdHJ1bmsKKzg4OTEgYzM3OGU3YTAyMzRhMmExMDM3YjlhZWVhYzFmNDdkMGM5NGI4M2NmYSBsZWdhY3ktdHJ1bmsKKzg4OTIgZWNjNTNlYThkNGViNjVjMDYyNGM0N2YxNWFjZmE4Yjk5ZTg2ODllNyBsZWdhY3ktdHJ1bmsKKzg4OTMgMjMwODNiZDhjMjYxODk4NzljZmM0MWI3YTI0ZDY5YjA4YzA5MThmMiBsZWdhY3ktdHJ1bmsKKzg4OTQgN2Y3NzcxMGEyMmQwYTY3MWVlZGZmMWUzOTk5ZDkwNWFkY2M1NzA1NiBsZWdhY3ktdHJ1bmsKKzg4OTUgNDQ5MWY4NGFjMjIzYTE2ZTkxMmZjNzA0YzE2MDZhOGRiZjNiOWMyMCBsZWdhY3ktdHJ1bmsKKzg4OTYgNDhkZjAxZWFhMDlhMjQ1ZTgyNTQwNTA1YTNmMzg4MGRmM2VlNGU4OSBsZWdhY3ktdHJ1bmsKKzg4OTcgNmYwNjQxMGUzMDdhZjQ1Mzc1ZDljZDdiZjMwMzRiODNjY2RjMTVjMSBsZWdhY3ktdHJ1bmsKKzg4OTggYWJlZDc1NGM3YjdmNWIxMzA5Y2I3MGIxZDA0OGQ3ZjYzNzU5ZmExMCBsZWdhY3ktdHJ1bmsKKzg4OTkgYzYyZTM0ZWE0NjRiMmQ0MGU3ZWQ2NjQ5MGNmMjY2YzI4N2M5MjZiNCBsZWdhY3ktdHJ1bmsKKzg5MDAgZmI5YjBkMjQ2ZWYzNGViZjYxOGY2MjAwZWI3NWZiMTNiOGM0MjFjMyBsZWdhY3ktdHJ1bmsKKzg5MDEgNjQ0NDg0ZTFhMzdiN2VlMmJkNDM1ZGE5YzBiNmVmYTY2NjQxNzVmYyBsZWdhY3ktdHJ1bmsKKzg5MDIgYWFjYTQ3ZWY1NWE4ZDQ4M2U5Mjk1YmRjODVlMWI4NmVhYmNjMWZjYSBsZWdhY3ktdHJ1bmsKKzg5MDMgNWYwMjE2MzAyY2Q4ZjRjODM3NWM3NmQ0MTQzMmViZDYzMjQ0MWRiOSBsZWdhY3ktdHJ1bmsKKzg5MDQgMDY4MjU0ZmU1NjE3ZTRiYWZiMzIzNjkwYTk1ZTlkNzZkYjZmMjlmYyBsZWdhY3ktdHJ1bmsKKzg5MDUgYWVlNTZlOWQxMGZjOTM1OTJhMWIzOGI1YTBkNWUxMTIzYjc3ZWI4ZiBsZWdhY3ktdHJ1bmsKKzg5MDYgZTM1NmEzNDQ4MTlkN2EyMjYwZGI2OTFjZTRmODhkNTcxMjVhYTZlNCBsZWdhY3ktdHJ1bmsKKzg5MDcgMTRhNzExMjY4YzUxYmI2OTM3YjE3MDg5MjNlYjA5ZjBhMjYxZDlkMiBsZWdhY3ktdHJ1bmsKKzg5MDggZTc4YjYxNzRiZWM5MjNlMGEzZWI4YTc5MjlmODU1ZGI5MzZiMmU5YiBsZWdhY3ktdHJ1bmsKKzg5MDkgMGRmMDE1OTA1MTAwOGViNTFiYmQ5OGI1MzhjM2QwMThhMzY2MDQ2NiBsZWdhY3ktdHJ1bmsKKzg5MTAgY2U1NmE3Y2ZlOTZjZmQxMDFjNmRiMzFlNjY5NmY2Njc0MjEyYjQ1MCBsZWdhY3ktdHJ1bmsKKzg5MTEgNDM1NjA2YjIxNWM1MmJhZWNmZTFhNDRkMDk3YjJkMmFiYWZlNDdmNSBsZWdhY3ktdHJ1bmsKKzg5MTIgYzgzYTFiMjFjNDJkMmEwODYwZTIyOWZjMGZiY2FkOWYwYzM5MTVjYiBsZWdhY3ktdHJ1bmsKKzg5MTMgMDUzYmJhYjBlYzUzZTIxMTIyODNlMTg5MzY3ODEwNzNlZTk1ODQzOCBsZWdhY3ktdHJ1bmsKKzg5MTQgZTU3YzcyYTJiMDY1NmQxZmEwYjExZTIwMTdjNzNlN2IyODE4NjM5MyBsZWdhY3ktdHJ1bmsKKzg5MTUgZjM4NGNjMTFiNzViZjA2MTMyNWQ4ZWUzMGQxNDM2ZmUxNGY2MDZhZCBsZWdhY3ktdHJ1bmsKKzg5MTYgOWU0NmVjZjAzYzNlODMzMGU5M2ExZTI3NWU0Y2I2M2UyMDVmNTFkMyBsZWdhY3ktdHJ1bmsKKzg5MTcgZDc3NjBhMWJhNGNhNzY5ZTYyNDdhNWMxZmMzY2Q4ZWNkMWU3ZmVhOSBsZWdhY3ktdHJ1bmsKKzg5MTggNDJiYzc5MmFjNjlmYWU1NWZmMjMwNGY0MmVlNTQ3Yzc5Mjc4ZmUzMSBsZWdhY3ktdHJ1bmsKKzg5MTkgZDllNTE0NTFlYmRmOTMwMmM0YzYyZmQwZTNiODlmYzI1MzM1ZTY0MSBsZWdhY3ktdHJ1bmsKKzg5MjAgZGRmY2VmYzBkODI2ODA3ZTFlOWE1OGZmNjNhM2MwZmU3NGEyZDlkZSBsZWdhY3ktdHJ1bmsKKzg5MjEgMTA4ZmZmMjU0NjJkNTYyMmRkNmE3NWU2NDQ3OTgzZjg2M2YwYjZhNSBsZWdhY3ktdHJ1bmsKKzg5MjIgOTNjMDE1ZWMyZDU3Y2FhZjg2MGQzOTRmZDcyZjA0MTc3YjExNDU0OCBsZWdhY3ktdHJ1bmsKKzg5MjMgYmRlNWFhZjNlNTg5NzQ0YjM0Y2FiMmJjNjAxOTFmOWRmMzlhMTg5YSBsZWdhY3ktdHJ1bmsKKzg5MjQgNTgwMzc4MmU3M2ZmYjcyZGZkZDhmOTNhNWZiYWJjMTRkOWQ2YTA1MyBsZWdhY3ktdHJ1bmsKKzg5MjUgMzFhNTA0NjgzNjZiYWUzN2NjYzExNmZhODA0OGIyYWUxMzg1NDU0MyBsZWdhY3ktdHJ1bmsKKzg5MjYgYjg1NGNhNDYwNWUxMjI5ODE0MGJiMjcwZTM1ZWM3YjZjN2NkNTBjZiBsZWdhY3ktdHJ1bmsKKzg5MjcgMzM1MGM3MzU1MGVlODNkMjMwOTI2ZjdiNzE5OTA5NjZiN2M4ZGExZiBsZWdhY3ktdHJ1bmsKKzg5MjggNzdhMjJkNDlkZDg1ODVkZWVjMjFmZDU0ZGVmNTliMmRmYmFlYzZhZSBsZWdhY3ktdHJ1bmsKKzg5MjkgMTA0MTMxNzlhNzJhNTg5MDNlNDVjODVjYWYwYTcxMDU5YmFiYjRlMCBsZWdhY3ktdHJ1bmsKKzg5MzAgN2VhNDY1ODMwZWY0NWRiZGQzMDlkN2I1ZmNkODk0Mzk1YzEyYTFhMSBsZWdhY3ktdHJ1bmsKKzg5MzEgYzliMTM5YjljNWZmZjUwM2M3ZjVjMGQzYzBhMzJmNjBjOWQ3ZDUyNCBsZWdhY3ktdHJ1bmsKKzg5MzIgYjViMzVhMGNmMWFhOTI4MjYyNmNhOTA5ZWRiYTQyOWVmY2U5ODM3YSBsZWdhY3ktdHJ1bmsKKzg5MzMgMjEzOGNmM2JkYzVhYjg1OGZiMjViNDBhYmY0ZjYyNGI5NTkyZjdlZiBsZWdhY3ktdHJ1bmsKKzg5MzQgMmM1YzM5OWI2ZWE0NjMzOTJlMjM2MzEzYTg1ZmI3ZTAyOTRjNGU4MyBsZWdhY3ktdHJ1bmsKKzg5MzUgOTBlZWQ5YTVkMDdhODM1OGQxMjEwNGFiYmMyYWIwOGMzYmQ0OGJiYiBsZWdhY3ktdHJ1bmsKKzg5MzYgMzkzNDg5NzRiMjJlODkwMDdmY2RiYTk0MWZjMjhkYzc4MGU5OWRhMSBsZWdhY3ktdHJ1bmsKKzg5MzcgYjY1ZWI0NDQyMmJhOTMyMmY3OTFhOGU0M2FmNjNlNDA1MzI4NWY4MCBsZWdhY3ktdHJ1bmsKKzg5MzggNzc3YWU1MjYwYTEyZjVjODNjN2ViNzE0MWQ4YmRhN2UwYzg2MTk5ZCBsZWdhY3ktdHJ1bmsKKzg5MzkgOTk4NjI3MmNlMjRhMTVjNGVmYWJkNmYwZDM2ZWY4OTA1YmUyZDVkNiBsZWdhY3ktdHJ1bmsKKzg5NDAgMjJiZWQ1Nzk0NTE0YzYyNzkxMDc1MTM0NzE5MjQ3MjQ0MzJlYmI4OCBsZWdhY3ktdHJ1bmsKKzg5NDEgMGIyYmNmMDQyNGEwNTNhNTZlZTBjYTY4ZjdlYzNkYjJjNTc2MThkZiBsZWdhY3ktdHJ1bmsKKzg5NDIgNGQ1NDVjYzZmYTk5YzRiMGFjZDdjYWMxYTRkM2ZkOTA1ODcyZDJjNyBsZWdhY3ktdHJ1bmsKKzg5NDMgYzE0MmViNTMzZmI5MGY5YjMyMTM0MWM3MTc1OGJmMWYyNGIwNDhhYiBsZWdhY3ktdHJ1bmsKKzg5NDQgOTQxNjM3NTljYjAyMWJkYTc3OWM2MmQxMDRjMzg3M2YzN2ExNDZjZiBsZWdhY3ktdHJ1bmsKKzg5NDUgNmE5MWEwZjY0MmZlN2IwYWMzNmI3NDQzMmM2MDJiNWI5ZGM4ZjY3ZSBsZWdhY3ktdHJ1bmsKKzg5NDYgMTAzYzYzOTgzY2RmYTRkYmNhMzA4ZDViYjJmODYwMmFiODlhYWI4YyBsZWdhY3ktdHJ1bmsKKzg5NDcgZGNhOWJkZjVlYTA4YTgwYzFmM2E2YzFiYjNjYjYzMzU2NzQ2YjQzZSBsZWdhY3ktdHJ1bmsKKzg5NDggZWU0ZjJiMWNlZWRhNGFhYzI2ZDQ0NDM3NjMwNTNmMGRlN2NlYWQ5NSBsZWdhY3ktdHJ1bmsKKzg5NDkgZGY2NTllMjM5ZTkwNmQ5YjYxNjdjZjcxNzI1ZTYyYjAzYWYwOWZiZCBsZWdhY3ktdHJ1bmsKKzg5NDkgNzQ2NjU0YTBhZjY4MGM3ZDliODE0YjIxMGEwMjZlYjkxYmVjOTUzMyBsZWdhY3ktdHJ1bmsKKzg5NTEgMmVkZTdjMmFjOTJjZjFlZTg5ZThlNTI0MTljODkwMWIwMzRiNzU4NiBsZWdhY3ktdHJ1bmsKKzg5NTIgZDE1MzI0MmFhNmJiMmRjM2IxZmJlYzhjOWFlMmFlNzg1OTRmNjgxYiBsZWdhY3ktdHJ1bmsKKzg5NTMgZjVmNzQ0ZWQ4MTM3YzdjYzM0YmZkMTE4ZDY1YzYyM2U2ZTQxNDE2MyBsZWdhY3ktdHJ1bmsKKzg5NTQgN2FiMGIwNTI5M2FhNDI3MjBkMTUxY2E4M2M3ZTNiZGViOWE1NTExZSBsZWdhY3ktdHJ1bmsKKzg5NTUgYzY3ZDg0MjFmYTIxNjY2ODA4YTI0YzYyMzg3N2UzMzJkN2U0YzUzYyBsZWdhY3ktdHJ1bmsKKzg5NTYgMjk3YTU0MWViODY1NzRjMjMyN2IyYzAyMThkNjkxMzRhMWYwYTk3MSBsZWdhY3ktdHJ1bmsKKzg5NTcgNThiNGQ5ZWE4ZTUxMzg0MmYzNDdlM2Q1YTQzMmYzZWJmYzE2NzI0MiBsZWdhY3ktdHJ1bmsKKzg5NTggNzI3YjUyMDMxMjEyNTc3ZDllZDUxOTVmOTQ3YmYwYWYwMTQ3MTRkMSBsZWdhY3ktdHJ1bmsKKzg5NTkgY2IwNWVhMmI2M2Q5ZDAwMDA2N2I1YzJlMTU3MmZlMTYzYzUwODczNyBsZWdhY3ktdHJ1bmsKKzg5NjAgZDMxMWI2ODc1NGMxODZlOGNkM2RlNzAyYmI2MzQwYWNlOWE5YjJjNyBsZWdhY3ktdHJ1bmsKKzg5NjEgNTYzYWUyMWIyMDU3ODM2MzlkODYxOGY5YzdhOWZjMGQwZGY4OWViNiBsZWdhY3ktdHJ1bmsKKzg5NjIgYjhlMjYwNzhkOGIxYWQzOGY0YTJhZDEyYjBiOGY0YTc2ZjVkZmVkNCBsZWdhY3ktdHJ1bmsKKzg5NjMgMmYyNTgxNjJhYWUyYWNkZmVkNzZjNTZlYmJiMmJkZTM2OTE5NWRiZCBsZWdhY3ktdHJ1bmsKKzg5NjQgMTYxODA2MDcxNmU3ODE5NTIzYmYxYzUwMjE1MTJjOGUxMzQ0ZmE1NiBsZWdhY3ktdHJ1bmsKKzg5NjUgNjMwNzI1ODA1YzY2MjJmZmM3MjRlODg0MGUyN2ZmZDAxNzZjNGNiNSBsZWdhY3ktdHJ1bmsKKzg5NjYgMzdjOGQ3Zjk2N2M3MWMwZGU0MTRiYWNhOTJiNzFlOWFiZTY4Zjg4MyBsZWdhY3ktdHJ1bmsKKzg5NjcgNGUxYTBmZTBhY2UyNGY1NjI4NDYxMDI1ODA2NTJlNDRhMTkxNjYyYSBsZWdhY3ktdHJ1bmsKKzg5NjggMmY5ZDU5ZGE3MmZiODZmNDA0YjdhMGU0MTVjMjc0YzAwOWViNDg1ZSBsZWdhY3ktdHJ1bmsKKzg5NjkgYWU3NGI2Y2NlZjU3ZDQzN2NmNzc5NjgwM2FkNWNmMGZjMGQyM2Q0YiBsZWdhY3ktdHJ1bmsKKzg5NzAgMjIyZGQ0ZDA2NTgxMjk0ZjIyOTU2NWM0NDdmOWM0OTFhMjgzZTk2ZCBsZWdhY3ktdHJ1bmsKKzg5NzEgYmI4YzMwMDRkNzU4ZWMxYmU5ZWQ3MzE2ODliNTBmMGJhNTAzMjRhNCBsZWdhY3ktdHJ1bmsKKzg5NzIgMTdlM2Q5YjZiNDJlODI4NTgxMzRjMmM0M2MwN2I2NmRkNGQ0MDViYSBsZWdhY3ktdHJ1bmsKKzg5NzMgMzlkMmE0ZGI3YzNiODBiODAzNmIzNmZlYmU2YjkyMjQwYjU1ZmYwMiBsZWdhY3ktdHJ1bmsKKzg5NzQgY2U0NWVmNGM2NWU5MWJlN2IyOWI1YTEzNWI5NzE0YWYxMTYxYzdjNyBsZWdhY3ktdHJ1bmsKKzg5NzUgYjM4YTc1NWI4ZGIxYzg3YWVlMzBjYjIyOWRiMzg0MTYyZDU1MzViNiBsZWdhY3ktdHJ1bmsKKzg5NzYgNDk4MWZkMmIzMjExNDA2YWJhNWQxNmU0YzRlYzRlYmNiOWNlNzcxNiBsZWdhY3ktdHJ1bmsKKzg5NzcgNmEwOGI2MGRlODJjNzIzMGIxMmZmZWQwNjVkOGM2YWE2MTliNThkYiBsZWdhY3ktdHJ1bmsKKzg5NzggODc5MTMwZjFmZjVmY2IxMjJjNzI4NTA3MmE0Nzg2YTA0MDgxYmY5NiBsZWdhY3ktdHJ1bmsKKzg5NzkgOWVmOWNhZGQ5NzhjNTRhODEyYTk2NWM1YjU5MzcwMDAxYWNlYmNiYSBsZWdhY3ktdHJ1bmsKKzg5ODAgMmEyZTViNzMxZDFjNzc2MzM5OTlhMTJjOTg2MjAyMWNmNjUyMjI0OSBsZWdhY3ktdHJ1bmsKKzg5ODEgOThiMmEwYTA5M2M5ZDQ5Yzk3ZGQ3ZWE1ZGRmM2Y1OTI3ZWZjMzgwZCBsZWdhY3ktdHJ1bmsKKzg5ODIgMDcxYTBkM2E0OWI5ZjkwZjVjMGJmMGZiYWYwZWZmOTk2ODViZjI0OSBsZWdhY3ktdHJ1bmsKKzg5ODMgYjA0OTRiYjUyMDE5OTRmOTE0OTY2NzRmNWU0YzliNDQ0MmUyZDc5ZSBsZWdhY3ktdHJ1bmsKKzg5ODQgZGY2ZGZhYWMyZDBiNTFhMmVmZDEyZGZjZGMxZDUwMTUzNDZiNzQwZSBsZWdhY3ktdHJ1bmsKKzg5ODUgYTAwMDczZjJlMDg3YWI0Y2UxNzI5YzFiMjBiOGE0NmRiMmFmYTQ3NiBsZWdhY3ktdHJ1bmsKKzg5ODYgODA3MzVmY2MzNWFmZmI3MjgxNDRmNzY2ZWMxYzU0ZTRiYTk2YTc2YyBsZWdhY3ktdHJ1bmsKKzg5ODcgZjAyMmJiZDEyMzM4NjgwMWQxZDQ2NWExOGI3MDk0MjhhODkzOTNjNCBsZWdhY3ktdHJ1bmsKKzg5ODggNzQ1MThkODgyZWQzMWFlOTQzNWEyYmUxMTdlNzRiOTVhZWI3YTNjYSBsZWdhY3ktdHJ1bmsKKzg5ODkgZmRiNzc2MzZjMDc0MzAyZjA2YTU4MzQ0MTM1MWQ3OWUyMjQ3MzUzMSBsZWdhY3ktdHJ1bmsKKzg5OTAgYTNkZDU5MTA4MTE5NmEyYmNhY2MzZjY0YmUyMDhiOTg2MzhjOTBlNyBsZWdhY3ktdHJ1bmsKKzg5OTEgNmM1ZjdlNzRmYTg4MDFmZThjZTgxMjI2NDBjNTQ0Yjc2NTFjYTUzMCBsZWdhY3ktdHJ1bmsKKzg5OTIgNmQ5Y2ZiNTNjN2VkMmMyY2RmNDI5MGQ4MWMzOTNmODMzOGIzZDMzOSBsZWdhY3ktdHJ1bmsKKzg5OTMgZWNjZGZkMTcyNzQwNjExZWIxNWI1ZjA1NDE0ZGQ2YThkOTUwNTQ4NyBsZWdhY3ktdHJ1bmsKKzg5OTQgN2U1MTcyN2QzYjdlZjNlNDIzMDQ1MWRiM2E5YTRkOTA3ZWJlZDA3YiBsZWdhY3ktdHJ1bmsKKzg5OTUgMWQzMGU1MmRjMzRkOWI0MzU3MWNlMmIyNzAyMWNhODhlNDYzNDk0OSBsZWdhY3ktdHJ1bmsKKzg5OTYgMWFmZjE5NzgzZDc0NmYxYjczZTk2N2VjMWI1ZWM5YzhlNWEwODllZSBsZWdhY3ktdHJ1bmsKKzg5OTcgMjRkYTAzNWNlYjZlYmQxYzg1YzgyYWIxMTQzMzllMTU0ZTg3NWJhNiBsZWdhY3ktdHJ1bmsKKzg5OTggZjFiMTcyODQ1MmMxMzBiMmI1NDVjZjA3OGJlZTVhNWJlYWRjMzc5NSBsZWdhY3ktdHJ1bmsKKzg5OTkgM2Y4NDU1OGEyNGRkODRmZjJmMzQ4MTJlYjdiZTM1MTQ1ZGQ2MTg4YiBsZWdhY3ktdHJ1bmsKKzkwMDAgOTYxNGZkZDgxMzkzNmVjYjg4YjE0NTM4ZGQ2Nzg3MDQ1NTFmMzQ1YyBsZWdhY3ktdHJ1bmsKKzkwMDEgZWU0OTZlZjFjYTgzOTliNzJmM2VmNGUwZjU1NTQyYjY1YjA5M2U2MCBsZWdhY3ktdHJ1bmsKKzkwMDIgZTljNjdjMTkyY2RiNjY3NDJkMTM5MGYyNTlhNDBlOTM4NWJhN2ViZCBsZWdhY3ktdHJ1bmsKKzkwMDMgNWNjYjEyYWZmYjU0YzBjNzE2OTE5OGIxNGVjMzkxMzE5NzAxYzE1NSBsZWdhY3ktdHJ1bmsKKzkwMDQgNDZmYTQ3MTdjZjI0YWNiN2ZjYzU3Yjk4ZWJiZTg1NGRkYTM2NGEzOSBsZWdhY3ktdHJ1bmsKKzkwMDUgYmMxOTAwMjQzZTMzOWEwZmQyZjBlMDJkNTNiNzk2ODU1N2FiMDM0ZiBsZWdhY3ktdHJ1bmsKKzkwMDYgNzIzYzg5ODgzMTg4MWQwNzVkMDgyOWVlOTE2NTg0ZGI1MDdjYTYwMyBsZWdhY3ktdHJ1bmsKKzkwMDcgODllMmVhYWNmZDkwMDBhZGQ3MWI4ZjFhYzc3NzdkOTdmOThmMzYxZiBsZWdhY3ktdHJ1bmsKKzkwMDggMGNkMWYyZjFkODJkMWM5NTgzNzVkY2NkNmQ2NTlkNGY4ZWU2OGYyNyBsZWdhY3ktdHJ1bmsKKzkwMDkgZTQ5N2E3ZmMwYWE4NTZjODU4NDVmYjAxNzA2MDgyODhkNjkzYjBjZSBsZWdhY3ktdHJ1bmsKKzkwMTAgZDM2OTYyOWU4YzI3YzBhM2RkMGI4ZmUwM2ZkOWExMjliZjVjMDhmZSBsZWdhY3ktdHJ1bmsKKzkwMTEgYmE2NTM3MjQwOGRkYzZiYmRlMWEyZGYzNTgzYWI4MDEwZmI1N2JjMCBsZWdhY3ktdHJ1bmsKKzkwMTIgMDg2NGE1NTY2ZDg5YWJkZGQ1YWVhZTFmNjEwOWI4M2NjN2EwYTg2YyBsZWdhY3ktdHJ1bmsKKzkwMTMgNjRjNWVmYTlkMmM0ZTRjMDBmZWU5MjQ2ODllY2NjNjk5Y2I3M2IwOSBsZWdhY3ktdHJ1bmsKKzkwMTQgMTg3MDM1MzhhZjQ4MTgxNzE4MTk0NzIzZTQ1N2UwMmY3Y2JhMzYzZSBsZWdhY3ktdHJ1bmsKKzkwMTUgMjU1MDVlNTYzYjM3YjcyZmU5N2JhYzIzMTQ3NTc2M2EwOTMzMzQxMCBsZWdhY3ktdHJ1bmsKKzkwMTYgYTFhMmI3MTE1OThjZDdhYWUxYjI1NTdlN2ZiYzg1M2M4ZjAyODZlZSBsZWdhY3ktdHJ1bmsKKzkwMTcgZDFmNDZhMDhkNzhhODZkMmM1OTExZjY4MDY4YTE4N2FlZTVmNmJlMyBsZWdhY3ktdHJ1bmsKKzkwMTggODBmYzBhOTA2ODg1MmVhZWY4ZWYyYjAyYWE4YTI3ZTBjYTk4ZDg4YyBsZWdhY3ktdHJ1bmsKKzkwMTkgYjJkZmZmMDY3ODljNmRmNzcyNjcyZGYzOGVmYmRhODE4YWExNTNhMCBsZWdhY3ktdHJ1bmsKKzkwMjAgNjJiZGIxY2JlMGY1NWY5NzViNjc3ODBkNDE5NzAwYjNjZDQ2NTc1ZSBsZWdhY3ktdHJ1bmsKKzkwMjEgZmMzMjdlYzE1YzdlZGUyZGY3ZmI2ZGUzMjhiY2UwMWE3OTdlMTFjMyBsZWdhY3ktdHJ1bmsKKzkwMjIgZDI4OTMyZDY3NmM4YjllNGM1ODVkZmNhYjk5MWZjNGM1ZDZhMzkwZCBsZWdhY3ktdHJ1bmsKKzkwMjMgYjQ1MDMyMjg1ODNjNGI0NjdiM2M1MDVhNGZiZDNmOTVjYjQ5NjI3NSBsZWdhY3ktdHJ1bmsKKzkwMjQgYzkxNWM5NGViYjZiZjNhOGEwMjNmZDA0NWMyYjVmYTdiYjk5NjhhYSBsZWdhY3ktdHJ1bmsKKzkwMjUgNzI0MzgyYWY1MzM5YjhlM2QwYTA2NTE0YmQ3ZjFmODY5NjA2YjQ0OCBsZWdhY3ktdHJ1bmsKKzkwMjYgZGQxZTgzMzIzYzQ1ZmRlMTcwODE2OTc1NmI3ZDc1NDk5NzU3NmEyZiBsZWdhY3ktdHJ1bmsKKzkwMjcgYThlM2IyZTlmNWQyMjgwYzIxNGNkMmE1ZjhhNWFjZDU5MTVkNWQ0ZiBsZWdhY3ktdHJ1bmsKKzkwMjggZjQwNmVjMzViZmNhNjk3N2NhNTJlZmFmYWFmMDUxNWU2NmQ3ZTg3OCBsZWdhY3ktdHJ1bmsKKzkwMjkgYmRkNGNiMmE4M2I1NzUwMTdlNTQzYjgzZDRkNjQ0YjliYjJkZDk1MSBsZWdhY3ktdHJ1bmsKKzkwMzAgNWRiZmZjNzg0NGY1NWE5ZWMwMTk3MGEwZGJmZTQzZjQ2M2M4OWUwYyBsZWdhY3ktdHJ1bmsKKzkwMzEgMmM2ZjJkOTJiMzE1MDg4ODJhMTdjNDAxMDMxY2M4MjZiNjZkYWQ5YiBsZWdhY3ktdHJ1bmsKKzkwMzIgN2M5YzRmODIyNGM4YjIwNzRiZDJhZDhhMDQ5YjlmZjcwNWZiYzM4NCBsZWdhY3ktdHJ1bmsKKzkwMzMgYTVmN2ViODY5ZjIxYzMzMjkyOTM1MmYzNDM2ZjQ4ZjY1OWRjNWNlOSBsZWdhY3ktdHJ1bmsKKzkwMzQgNDI4MGIyNzI5Y2NlY2IwOTliMWM5YzQ1ZmJlMTZlOTdmODdlNDRlYSBsZWdhY3ktdHJ1bmsKKzkwMzUgYjMzMWNkNDdlMGJjNzExNzAwZWVkOGVhODlmMTQ2YTQxZGZiNjgzNSBsZWdhY3ktdHJ1bmsKKzkwMzYgZWUzMDdmOTg0NWEzMjZjYjUzNTAyNjEyZTY3NTg0YTliZjE4MDRkMyBsZWdhY3ktdHJ1bmsKKzkwMzcgMWEyMzNiZTVmYzE3YTY4NjgwNjU0NmFmNGQ2N2FmMzJhNzdhZGZmOSBsZWdhY3ktdHJ1bmsKKzkwMzggNmU5YWE5MmZhYjY5Mjc4ZmEyMTM4NjZiMTk0ZTBhMDkwMWVlMDY2OSBsZWdhY3ktdHJ1bmsKKzkwMzkgZmQyZDRjMGFlNjQ2NzJiOTc3ODRjMzg2NmU3ZTM1YTVkYzAwMjMxMSBsZWdhY3ktdHJ1bmsKKzkwNDAgNTM4MzUwNDM1MjhjOGI2ZjEwNzAzNzRhODBhODRhMDQ1OWRkYjBiZSBsZWdhY3ktdHJ1bmsKKzkwNDEgMmFhMTNjMGM4ZjJmNjYwOWU3ZDVhMDZjYzdlOTZmNGY1ZjE2YTY2YiBsZWdhY3ktdHJ1bmsKKzkwNDIgODEyYWFkOGMwNWMyOTE0MTZmN2UwZWNjM2NiN2M5NTc3NGZkYWQ4YiBsZWdhY3ktdHJ1bmsKKzkwNDMgZTFjOGQ3MTgyZDY2N2QyYzVhYTYyYTk1YWU5OTM4NzA5MTBhMGU1ZiBsZWdhY3ktdHJ1bmsKKzkwNDQgYmUyYTAyMzVhZTg0YTRlNDljN2Y2ODE4MDVkYzUwN2Q3ZjI1YTRlYiBsZWdhY3ktdHJ1bmsKKzkwNDUgM2ZkZDcxNWU2ZWY5MDYxZWI0MDBjNWRiNmJhMjdlNDk3ZDEwYmJkNCBsZWdhY3ktdHJ1bmsKKzkwNDYgYTBiODM5NjY3ZDJlM2ZjNzQzMzdkMjRjODM1NjA4ZmY4YjhiYjk4OSBsZWdhY3ktdHJ1bmsKKzkwNDcgYzFiYWM1MzYwNDVmY2RiOTRmYWUzYWI4OTkxNGQ3ZmZlYTRjNjNhMCBsZWdhY3ktdHJ1bmsKKzkwNDggYjExNzQwNDViYzRhYjY3NmE3ODI0ZjNlNmFlM2EzNTJhYzU3Zjk3MyBsZWdhY3ktdHJ1bmsKKzkwNDkgOGIxNDMxMmEwMjkwMzU5ZGRkOTcyYWQ0MDRkM2ViN2RjNmRmNTI5YSBsZWdhY3ktdHJ1bmsKKzkwNTAgM2I3Mjg3ODY3MmNkMmUyYzMyMzVkNzMxMTYyODE3NGQwOWIzNzIwMCBsZWdhY3ktdHJ1bmsKKzkwNTEgNjdhMmFmY2RkMjFjMTAyZDUwM2I4MTgyYmMxZDUxZTc5ODE3ZTAxZSBsZWdhY3ktdHJ1bmsKKzkwNTIgNmZmYTljYjY1NGUyYjRmY2MyY2ZlNTUwNDJkNzU1MTMwMjUxNTdlYiBsZWdhY3ktdHJ1bmsKKzkwNTMgMDBkYWI3NWI5ZWYxMmUxODBiNzczZWYzODE4YmFjNDQwMDFhOTMwNiBsZWdhY3ktdHJ1bmsKKzkwNTQgZDI5YzRiMmY0OWFlMjcyMmIwNjRiNWNmZDNjOGQ2YzA3NzI0NDE4ZCBsZWdhY3ktdHJ1bmsKKzkwNTUgODU1OTY5OTBkYjQzZjk5YTM5ZTZjNmZlZGYwMTQ0ZGI4MjE2OThhOCBsZWdhY3ktdHJ1bmsKKzkwNTYgMDFlZTU2MDdiYjM1ZjQ1ODI0NmIzYzVjMTA1N2U3MTRmMjc5MGVhMyBsZWdhY3ktdHJ1bmsKKzkwNTcgOTIxZDE3Y2MyNjkyYjI5M2ZmMWNiYWM1NGFjNDNlY2FiMTI0MTJiMSBsZWdhY3ktdHJ1bmsKKzkwNTggYTFkODVjMGNhZTVhNmVkYjU1ZjRiMWJlZjFkYzRkY2FmODgzMDA2NSBsZWdhY3ktdHJ1bmsKKzkwNTkgOWUwN2Q1YjY5ZWJhZTZhODgyOWRmM2E5NmM2MDJjZWM1OWVlNzUzNCBsZWdhY3ktdHJ1bmsKKzkwNjAgZjk2ZTU3ZTY5ODQ2ZjA3OGVkNjQ5NTJmNzdhNWM5Y2Q0ODg5OTc5ZSBsZWdhY3ktdHJ1bmsKKzkwNjEgMDhkZGU1ZTVjYzI3NGFiZjRjZGUzOGQxYjA2NjFmMjkxM2Q2MzJkMCBsZWdhY3ktdHJ1bmsKKzkwNjIgYzI2NzJlNWFiYThiNzlmNDcwZTQ2NDhkYTgwNWMyOTVkN2I5MGYxNCBsZWdhY3ktdHJ1bmsKKzkwNjMgYzU2NTI3MmVkMmM3NDA3ZjgwYWEyMjgxYjhjYzc2OTRiNTI2ZGE1NiBsZWdhY3ktdHJ1bmsKKzkwNjQgNzUzMDc3ZjllYjJjOGEyNjA1MTYyNjlhMWFkNThmZmM3MDE0MzNmOSBsZWdhY3ktdHJ1bmsKKzkwNjUgZTBlNjY3YmJjOTcxYTRmZjQ1M2IyMGY3MGNjNzcxYWJkZDdlN2JhNiBsZWdhY3ktdHJ1bmsKKzkwNjYgZGEwMGJiNDk3MWQ4ZjZmMzEzM2Y5MThhMzcyNDYwYmM5OWYwNjJkNiBsZWdhY3ktdHJ1bmsKKzkwNjcgMjE5MmI5M2Q1MzM3ZTU4YjFiMjI3ZjkyZDlhNGI2MzEyZWRkZWU5NSBsZWdhY3ktdHJ1bmsKKzkwNjggNTE2MjQwZWYwZTE1MWRjMTM3OWViNTA4ZjE0ZjkwNGE0MWE1MDUzZCBsZWdhY3ktdHJ1bmsKKzkwNjkgODZiNjc3MDljMmI0MDJjZjJkNTllYzg3MmQ5NTA2ODdjMTNjM2ViMCBsZWdhY3ktdHJ1bmsKKzkwNzAgMTQwMjVhNGY3OTNlYzVlZDE0M2U2Nzk5MDAwYWJhNjZjNmM0YTk5MyBsZWdhY3ktdHJ1bmsKKzkwNzEgZmNkOGUzOGI5YjJhZjlmMTM5ZGJiYTA0N2NjNWI0NDkxNzdmMDRhMiBsZWdhY3ktdHJ1bmsKKzkwNzIgNDVlODRiZTZkNjQwNWJkYzE4YzY0ODE2MGJkNzlhOWFmNzNlZmFlNyBsZWdhY3ktdHJ1bmsKKzkwNzMgNWUwYjE1MmJmMWU2NWIxYTk0OTE3ZTA4NWRkOTc1NzZmNjhkMWM0YiBsZWdhY3ktdHJ1bmsKKzkwNzQgZjE1ZjBmYzM4Y2IxOWQ3N2MyZGIzM2UxMzIzM2NkZWM0Y2JhMzhmMyBsZWdhY3ktdHJ1bmsKKzkwNzUgYjg4ZmQzODk0ZDVhNGQzOWI1NGQzM2VlNTkyY2NmZmE0ZDI3MDQ5YiBsZWdhY3ktdHJ1bmsKKzkwNzYgY2VlZWM4Y2IwYTFlN2Y1YzY5NTQ0YTczZTMxMmM3Y2RlNWY4NzQzMyBsZWdhY3ktdHJ1bmsKKzkwNzcgNmQ2ZmVjMmVlZWY2YTgwM2EyNmJjOTEwMDZjZmFmNmQyMzBmZGMwNSBsZWdhY3ktdHJ1bmsKKzkwNzggODNjY2Y0NGJmMTk1M2Y5NDRhNTBkZGZjM2EwYzA5MTQ5NGQ4MDYyOCBsZWdhY3ktdHJ1bmsKKzkwNzkgMWU0MjhmNTFlZDRlMTNjOTQxZGEyYmYxODlmMzMzNDEyYzlhNDY2OSBsZWdhY3ktdHJ1bmsKKzkwODAgNDUxNGE1ZWEzZWM0NjQ0MjU2ZWVmYjY1NTg5YmUzNjMyNzU0MmExOCBsZWdhY3ktdHJ1bmsKKzkwODEgN2EwYTQ4ZDczMDc2YTgxNDU5YTcyMzUzOWY1NGNkZjgzN2JjMDY5ZiBsZWdhY3ktdHJ1bmsKKzkwODIgZjY3YTYzMzllZGU3NmVkOGU3ZjcxMWM1YzQyZGIzZTgxOTE3NzNiYiBsZWdhY3ktdHJ1bmsKKzkwODMgZGJiNDYxZTI3M2FkYWE1OTdkYWEzOGJkZTYwMTBmZDRkMThjYmIwZiBsZWdhY3ktdHJ1bmsKKzkwODQgZjViNTUzMTFlNzlkYWU4NTk0ZTU1MzZmYWMzZWQ0MmI5NGQxMmMyYSBsZWdhY3ktdHJ1bmsKKzkwODUgMmY0NTllYjIzYTBlZjE5ZmY2YWE1YWFlMTY5ZjVmMjMyNmM1ZTMyMCBsZWdhY3ktdHJ1bmsKKzkwODYgZjFlM2EzZjhhNDZjZGYyZTFkYTBiN2I3ODMyZTUwZDU5ZGQ2ZTg0NCBsZWdhY3ktdHJ1bmsKKzkwODcgMDIzZTVhYjBmODdkOGI5OGZlYWQ3ZGI3NTUyN2M1NTRlM2RiZDU2NyBsZWdhY3ktdHJ1bmsKKzkwODggMjM1YmM2ZjllMjM3YTY4MDVmYjVmZTJhNzIwZGYyODZkZGZhYTM3NSBsZWdhY3ktdHJ1bmsKKzkwODkgZTZiOWQyMWM4ZTBjMDY4Y2ZkNThjZThlMjg0MWY3Zjc3YWI5NjVkOSBsZWdhY3ktdHJ1bmsKKzkwOTAgNGIyZDhkYzkyZGI0Y2FjMGMxN2MyNDYwNTViNWU4ZWEzYjZiYWVhNiBsZWdhY3ktdHJ1bmsKKzkwOTEgMmU4NzRhNWE5MTJmMmUxYWU5NzE5NzA1ODVmN2FlNWU4MGM3NzVhNCBsZWdhY3ktdHJ1bmsKKzkwOTIgZTJiY2FhOTZjOTQwODQxY2RjYmMyOGQzZTUxZjdkOWM0YjMzMGNjZiBsZWdhY3ktdHJ1bmsKKzkwOTMgZTU0ZDUxNzE5MDJlNmEwMWI4YTFlOWQ3NDJhOTYxYjMxMDliNWNhZCBsZWdhY3ktdHJ1bmsKKzkwOTQgNmZlNWE1MWZlYTMwM2RkNjA4ZDMwOTFiOWQ1MjI4ZjQ3Mzc5MGYzNyBsZWdhY3ktdHJ1bmsKKzkwOTUgMmYwYjdiYWMyMDFjNWEyYWQ0OTU1N2Q1ZWIwNzVlNDI3YTFmNWJhYyBsZWdhY3ktdHJ1bmsKKzkwOTYgMDQzMTNkNGY5M2ZmNzMzMGJhYmFiYzM2YjAzZmVmNjM1OGNiN2E4OSBsZWdhY3ktdHJ1bmsKKzkwOTcgM2M0ZDYyNzU0NjVlOGYzOTBhN2JjMmZjMmZhNzIxMDE5Y2ZkMTZjZCBsZWdhY3ktdHJ1bmsKKzkwOTggMDBiMWI3N2M0MTc3Y2EwZWIyNmJiMjNhNWRlYWViY2NiYjEzOTlhZiBsZWdhY3ktdHJ1bmsKKzkwOTkgYjk2YWFkMTJhMTUwYmI2YzMwMDRiNDg1ZDljY2YwMjhmZDJiZThiNSBsZWdhY3ktdHJ1bmsKKzkxMDAgZjE0MzQ4Zjc1N2M3Njk5ODk4MTIwZGRhMjZlYThhMWExNDZiMThhZSBsZWdhY3ktdHJ1bmsKKzkxMDEgODJkNjc3NGRhMGM2OTcxZWVhNjRjZmFhMzc2MDY2MzVmMGQ4OWZlZSBsZWdhY3ktdHJ1bmsKKzkxMDIgYmUwNzkyMWQ5NzEzMWU3MDZiYjFiMjVkMjQwOTE3NWY4YzU0ZDBiZSBsZWdhY3ktdHJ1bmsKKzkxMDMgZjg4YjBjMjYwOGQ4MmVjMWJiNzljNGRjMmU5ZTk2YjUzOWEyNDYzZiBsZWdhY3ktdHJ1bmsKKzkxMDQgNWUzMWQzODFmYTQ3ZDI1YzBiMzc1YTkwMzI2ODgwODRkMzlkOGQ5OCBsZWdhY3ktdHJ1bmsKKzkxMDUgYTgzOWQzZWZhYmNlNmQ2Mzc5MDJlMTk2ZTg1ODRhZjdjMGYxZWM3ZiBsZWdhY3ktdHJ1bmsKKzkxMDYgZTk2YTgxNjQ3ZjljN2YzNGNjMTM3ZDQ5OTUzYWVkMjIxNzc0MTVmMiBsZWdhY3ktdHJ1bmsKKzkxMDcgY2RmZTNiN2Q3MTg3ZDgzYmI0MzdjYWEwMmY0MzdiN2M5NzA1MTUyOCBsZWdhY3ktdHJ1bmsKKzkxMDggOGY0ZDg5ZjBmMzM2YzgzM2Q1NzViZDE2NmU0NGZhMWYwYjdkNzRmNSBsZWdhY3ktdHJ1bmsKKzkxMDkgZDUxNTFiN2I5ZGJjZmU5ZTRiZjEzYzcxNzNjMjM4YWNmYjc5Zjc3MSBsZWdhY3ktdHJ1bmsKKzkxMTAgNTJkNDBjYzVmYTA4Y2M1YjlkZTIxMGFlODY2NzkwMDlkM2E1YzA3MyBsZWdhY3ktdHJ1bmsKKzkxMTEgZGYyYTJlNDNiZTE4Y2ViM2YwMWM3YWU3MzBkZDQ5YzFiZTkxNDg4ZSBsZWdhY3ktdHJ1bmsKKzkxMTIgZWNmYmFkOTA2MjMxNDIwYTRhOWM1YjliYWNlZTFkMWU2N2Y5N2I3MiBsZWdhY3ktdHJ1bmsKKzkxMTMgMDJmNTljYjI4NmZhYTNhZGQ0YWNlNDRlZmFmOWY3Mjg5YzZmYTM1NCBsZWdhY3ktdHJ1bmsKKzkxMTQgZjQwODI3YmFhYjgxMTJhOGUxNTI0ZTYxMjgxMjgzZWQwNzU4NTUxYiBsZWdhY3ktdHJ1bmsKKzkxMTUgMDMzOTJjMjdiZjk2OGJmZGVkYzM4YzFjNTU1N2U0NDExZTQ0YTMyMCBsZWdhY3ktdHJ1bmsKKzkxMTYgZTZkNzg2OTU4ZmIzMDdmZjVhNzUyMDYwNmY5NzYwNDMzNWQ4NDMzMCBsZWdhY3ktdHJ1bmsKKzkxMTcgZGE2NjJiMzQ1Yzg3NjAyZjY2YWY2M2VlNzJhZDNiNGU4ZmQ3YTE4ZCBsZWdhY3ktdHJ1bmsKKzkxMTggZjkwMzUxYjE1ODFiMmRmMTg0MmJiNWI3ZmY5MWYxNjczNDk1ZDJkYyBsZWdhY3ktdHJ1bmsKKzkxMTkgYWM0YjQ0NDczODY5NDNmNDYzMGRhNGJiMGY3YTg0NDY3ODM3MTU4NiBsZWdhY3ktdHJ1bmsKKzkxMjAgMjUxOGFjOTI1MWYwZmMyZTI2NTAyNmI0OWM0MWQyYTMyZTgyMTliMiBsZWdhY3ktdHJ1bmsKKzkxMjEgNDEyMTcwNDUxMDYzMGUwMzVkYzk3NWY2MzBhZWViYjQzMDQ3YzQ2MyBsZWdhY3ktdHJ1bmsKKzkxMjIgZTFkMzU2NWQyYjdhNDkyNTFlNmUxMjA3N2Y2MTQzYjA1ZDczOTdkOSBsZWdhY3ktdHJ1bmsKKzkxMjMgZTg2ODFlZGEwODU0OTVkNDE4MWZkNDZiNzE1N2RkN2NkYWRmYTRkMiBsZWdhY3ktdHJ1bmsKKzkxMjQgMWRhOWY2MDI3OWM5MzMwMjEwMWUzMjE0ODhiMGQ4NWQxYTU5MzliZSBsZWdhY3ktdHJ1bmsKKzkxMjUgYTdlYTc0YTI3OTkzNjkzODE1YjhkNzIwMTI3ZWRiYzRjZDQ4ZjMyNyBsZWdhY3ktdHJ1bmsKKzkxMjYgMGYyNDk4Yjg0N2JmY2M0OTZhN2VmMDRiYzIwMTA2NzEwNTFjMWUyMiBsZWdhY3ktdHJ1bmsKKzkxMjcgMjA1ODllZDNlOGJkZTVmZjVjODJhMTRkMDNmMzQyY2EyYzUyYTkyZCBsZWdhY3ktdHJ1bmsKKzkxMjggZjZiZTliNWFkYmRiN2Q2Njc3MjllYTFkMjQwZGIyMjBjMjgxNjJjNyBsZWdhY3ktdHJ1bmsKKzkxMjkgY2U1Mjg4ZWMzNmQwMjU1ZTVjMjUxNGIwM2I1MTBkNzU3N2UzNzM0NiBsZWdhY3ktdHJ1bmsKKzkxMzAgNWVhYzFjOGRiMDRmNjQxODdlMTFlNDUzYzVlOTliNDZjMzIzZGM4YSBsZWdhY3ktdHJ1bmsKKzkxMzEgYzZjMWQxMzM2NzdhNzg1NTVkOTcwNzZiMjg1MjdmOWY2Y2MzN2ZiZiBsZWdhY3ktdHJ1bmsKKzkxMzIgNmQ5OGI5NjllMWY2NzA5NzJkZDg0YTczYzMxM2I5YjFhNWUzOTkyMiBsZWdhY3ktdHJ1bmsKKzkxMzMgNDY2ZTg3YjE0NzY3MWY5YzMwMjYwMDEyZmYzNzYwZGFjYzMwZmFkZCBsZWdhY3ktdHJ1bmsKKzkxMzQgNTIzMjlhMTEzZTBmYTNlZjBmOTc2MzYzMzY2ZTJjNmNhOTQ1M2MxOSBsZWdhY3ktdHJ1bmsKKzkxMzUgZTQ5OWM3ZGJmZGYzNTlhNGU4MmM1ZWUwNTBiMDNiYjNhNjE4NDJiYSBsZWdhY3ktdHJ1bmsKKzkxMzYgZGVhZDZlNzdmNDY0MjhlZWE0ZTFlMjMyOTFiNTNhZTAzZjVlYmE2OCBsZWdhY3ktdHJ1bmsKKzkxMzcgMzM0Y2JmZDUxZGIzYWVjZTBkZjE0NjM1NTJkMTgyZjgyZWVlZmM4YiBsZWdhY3ktdHJ1bmsKKzkxMzggYmI4NmJiNzZkNjFkYTNjMGYwNjMwY2VhNDIxYWI1ZGZmNjJjNTdhZCBsZWdhY3ktdHJ1bmsKKzkxMzkgOTk5NTViNjU0MDhkYWEyN2NiNTc1ODcwZWRiZmJiY2Y3MDhhMTE5YSBsZWdhY3ktdHJ1bmsKKzkxNDAgZmJmY2YzOGQyYjM5NWZiZmI3Nzc2Y2FmNTZjZmRlMDBjODJlNzU1ZiBsZWdhY3ktdHJ1bmsKKzkxNDEgOWYwMmViMzZiNTczOWE0N2ZkNjUyMDcxNWViNzRiMWExNjEyNjhiMyBsZWdhY3ktdHJ1bmsKKzkxNDIgNzMxNGJlNjQ1MGFhMDhjYjQ5ZjY0MGU4NGIwNTY1ZjNkMjkxZjExYSBsZWdhY3ktdHJ1bmsKKzkxNDMgZDZkM2U3Y2Y4OTdlMGIxODhkYTU5OWFkZjQwZGUyMDE1ZTgwOTcyYSBsZWdhY3ktdHJ1bmsKKzkxNDQgYjJmMWZlYzZhNzAyM2UzNWM2ZmFjOTBkOTMxMjlmYmYwNjIxN2Q0ZiBsZWdhY3ktdHJ1bmsKKzkxNDUgMDg5YzA0ZDg5MTUxZWIwY2ZlN2E3Y2VjOGJlNDllYzJmZGM1ZmMzNSBsZWdhY3ktdHJ1bmsKKzkxNDYgOTg1NTI3MDRiODhmMjdhNDc2YjAzNDk3NDg1MTRhN2FjMTFmOTUzYiBsZWdhY3ktdHJ1bmsKKzkxNDcgMmY1YzgzNzQ4MjVjODUzNzExOThmNWE3YmIyYjkzODA0ODhiMmIyZCBsZWdhY3ktdHJ1bmsKKzkxNDggOGUzZWUzNTc3ZDRlOTUxNmRiYzE2MjU2NzliNmIwMTlhZDdmN2M0YSBsZWdhY3ktdHJ1bmsKKzkxNDkgMTQxMDVkZjMzYzEyYTIxZjIzMGYyYjdkZDk1M2VlNWI0YWI3YzEzYSBsZWdhY3ktdHJ1bmsKKzkxNTAgOThkNTU3OTNiNjdmYmFlM2FhZWUxNzljY2Q3NmEzYTMzMmY4YTBjNiBsZWdhY3ktdHJ1bmsKKzkxNTEgOTczMTg3ZjFiZDFkM2RjMjBhY2EwOWI3OWQwMTEwNDk1N2U5YWZkNyBsZWdhY3ktdHJ1bmsKKzkxNTIgNDMyZDFiZTAxNjNjNzVjMzBlODNiZTM0YjU2Y2JiMGY2MjZhZDQ5MiBsZWdhY3ktdHJ1bmsKKzkxNTMgY2RiMzI3OWIwNmU3OWQyOGI4NTk0MmM4OTJiZWM0NzEzZjhlMzc4NSBsZWdhY3ktdHJ1bmsKKzkxNTQgMWJiOGI3ZmU0NWVjM2VkMGEyNzhhMGNjNzg1YTNjZGM0YWI3NDhhZCBsZWdhY3ktdHJ1bmsKKzkxNTUgZTQ1YjgzNzA4ZDllOWJiZGQzODQzNTRlNzkxYWJkN2QxY2ZkODI5MyBsZWdhY3ktdHJ1bmsKKzkxNTYgZGUyZjhmNDk0YWUzNzM3ZWY5MmI4YTRlZDA3MDZjZTM3NjgwZmU1OSBsZWdhY3ktdHJ1bmsKKzkxNTcgZjk1YzlhZTJhYWVmZWU5NWE3MGNhYTE3MWU2ZmI2YjI2Yzg5NDE2YiBsZWdhY3ktdHJ1bmsKKzkxNTggYjhhM2JhNmU3YmM5ZGVmNmE5OWM0Mjk1OWM3MmM5NDNmYzQ4NWUzMSBsZWdhY3ktdHJ1bmsKKzkxNTggOGZmNThiNTczMGYwNmJlMDhmYmJkYzJiZjU5MjIyNmY3YTczNjIwMSBsZWdhY3ktdHJ1bmsKKzkxNjAgZWZmYTYyYjAwNjJiN2QyY2E1YWJjMTZiNDlmNWU0NjJhODMxYmY0YSBsZWdhY3ktdHJ1bmsKKzkxNjEgY2I4ODliNjc4MDUzYjAxMzVhZWI5NTdmYjliMzE3ZGE2NmZhMjc5NSBsZWdhY3ktdHJ1bmsKKzkxNjIgMDE3NDY3ZGU3OTMzZThjNzNiNTc0NzJkMTQyM2I1NjRiZGJmZDA4MiBsZWdhY3ktdHJ1bmsKKzkxNjMgODMxNDdlMDJlODBkOGUzMjNkNDkwYmFhZGU3NjJjOTlkMjIwMGUyNiBsZWdhY3ktdHJ1bmsKKzkxNjQgMmI3ZmJkNzZjZWY4NzA1NGNiNGIzYjEwZjM2MjZhNjVkMDE0NmY1MiBsZWdhY3ktdHJ1bmsKKzkxNjUgYTU5M2MyMjBlZGNjNjU5M2Q1MGY2Yjg0NGI4ZDJmNjBiYWQyYjQ1YSBsZWdhY3ktdHJ1bmsKKzkxNjYgNTNhMDdhZGE0OTlhZjc4ODY4ZTVjNmYzZWU2MzcyNDlmYWI2ZGFkMCBsZWdhY3ktdHJ1bmsKKzkxNjcgODRiNDNmZjQyZmE4MGUxYWViMzc3OWYwYmFjMTA0MWUzNmQ2YmJjNiBsZWdhY3ktdHJ1bmsKKzkxNjggYzA3OTg0ODdiNzI4Yjg3YTExNjJiY2FiYjI4NDc3MzEzZDI3MjNjNyBsZWdhY3ktdHJ1bmsKKzkxNjkgZDc5MGZlMjVlMTQ4ZWY5MmViZDgzY2JhNmEzMjU4YjcwZDgxY2Y1NCBsZWdhY3ktdHJ1bmsKKzkxNzAgNGJjYmJlYjYzYjg5OGU1NDMyMzQyZWZhNjlkYTI0N2EzODA2NDE4YiBsZWdhY3ktdHJ1bmsKKzkxNzEgNDBhODQyMGI0YWIzNmU0ZWUzMjc2NGZkY2QyYTcyYjFjNjJlMzQ1MiBsZWdhY3ktdHJ1bmsKKzkxNzIgYTcyYmY0M2E4ODcwYjFlMGQzMzQzN2QzNjc2NjQzMjJjYjc4YmYxNyBsZWdhY3ktdHJ1bmsKKzkxNzMgYjlmY2I5YTM0MzMyODIyZjY4YzY2OWY4N2I1ZWQ5YjM2MTAwMGE4ZiBsZWdhY3ktdHJ1bmsKKzkxNzQgZTkyMTU0MDIyYjQ4ZWU2Y2ZhNzE5NTVkMDc1ZjM1YzEzOWRmN2ZlOSBsZWdhY3ktdHJ1bmsKKzkxNzUgMmU3NWIzMWQ5NGM4NGYzMWE5MTlmNGE5NGQyZWMwMTA4MWI5YTUxNiBsZWdhY3ktdHJ1bmsKKzkxNzYgYjczZWI0ZTZmYWNlY2ZlZjlmOTIzYWU4NWVlOGY2MzQ4Yzc0MWM1NyBsZWdhY3ktdHJ1bmsKKzkxNzcgOTAwMWMwYTdiZTk4NjMzOTY5N2ExMWIzMzAxMTZkMmM5NTEwNzk4ZiBsZWdhY3ktdHJ1bmsKKzkxNzggYzY5MDM0YThiM2Y0MzRmN2E0ZjE5MGQxYzU4ZmIzMTA1NmFiNzExZiBsZWdhY3ktdHJ1bmsKKzkxNzkgNGQ2M2EwMDFjMjVlYTljMTJiYTg1NmZhY2I3ZDQ2ZDAxNTUyNDFkMyBsZWdhY3ktdHJ1bmsKKzkxODAgMTUxNjAxOWM5MGJlODhmNTAzOGRiNDcxM2ZlY2Y2ODM0MjdhNDhjZiBsZWdhY3ktdHJ1bmsKKzkxODEgYjkzNmNjZjQyZWEyZDUxYzEzYWQ2NmYzOGM4NWU5MzA1MzBiZTMzYSBsZWdhY3ktdHJ1bmsKKzkxODIgOWQ4ZTQ4ZjNiNDk4NWYwNmM1NmUxODdjOTE0YjU1ZmMyMjY0YTJlMCBsZWdhY3ktdHJ1bmsKKzkxODMgMDYxNTc5Mzk1MDQ2NTAxZDcxMTY5Yjk5M2RmYmI0YmIxZmU1MzEzZiBsZWdhY3ktdHJ1bmsKKzkxODQgY2JjNWU3ZDZhZDIzNWZiYTkwZjliNjY3NzFiZjhhYmQyYjhjOGZmMiBsZWdhY3ktdHJ1bmsKKzkxODUgMzlkOTZkOWQzY2NiNTZhNjFmY2U1MjEzYjNjM2NkNzljZDc2M2M4NyBsZWdhY3ktdHJ1bmsKKzkxODYgNDdhM2YzYjYwNTAyNjNhYWM5YWVjZDA2OTJhMmQ4MjI5ZGZlYTJjMyBsZWdhY3ktdHJ1bmsKKzkxODcgMTJhMWM5ODQ1MDc0NDA3NmQ4ZWFjNjZkMzJiY2NkMzRmYjFjNTQ4OCBsZWdhY3ktdHJ1bmsKKzkxODggOTBjNjM5MGI0OTQxNzNlZGRlODQyYTQyNjdhNWYzOWVjYTg4NzRhYiBsZWdhY3ktdHJ1bmsKKzkxODkgOThhYTkyN2Y5MDdjYzAzZDU0NTkwNWIzMjE2Njk5NDY2Zjc0ZmU0YSBsZWdhY3ktdHJ1bmsKKzkxOTAgZmYxNjQ0OGU4ZjI0MTcwODBjYmUzZTY3YjYxNTBiNDg4NjgxOTBjOCBsZWdhY3ktdHJ1bmsKKzkxOTEgOGE1YTAxMjMwN2JkZDEwZjk2OWJjN2VhNmY1YTlmNzE1ODExYjAyMyBsZWdhY3ktdHJ1bmsKKzkxOTIgYTViYjBiOGRjMzIwNDJiZmM1NWE0ODEyMzY0NzhiMWU3MDZjM2UyMCBsZWdhY3ktdHJ1bmsKKzkxOTMgMzliNDEzYWMyY2M5MWMxYjU5ZDJjNmI5ZTU0NjQzYzRhNmI5ZDI4NiBsZWdhY3ktdHJ1bmsKKzkxOTQgZDg1NGExYzdlNzRkMzMxYTc1MjkzZWJmNWRkMWE3YmViNDU3ZWYxMyBsZWdhY3ktdHJ1bmsKKzkxOTUgNjRhNzUyMTFjZjcyOWNmNGFjMDZlZDcyNTRkZWU5YzI4MzY0OWRhMiBsZWdhY3ktdHJ1bmsKKzkxOTYgMzJmMmVkYTI5NDZjYWQ3MDFiNDNlNmM4YTdlYzYyZDRiZTkzMjE3NiBsZWdhY3ktdHJ1bmsKKzkxOTcgZmFlYmMxOTQwNDMyOGIxMmJjMmJjMzEyMzQwMmE1NmM1ZDI5NTE1OCBsZWdhY3ktdHJ1bmsKKzkxOTggOTYwODUzOTAyZWJlNDE5MmUxNGNiM2Y4NGJhNGRiZDUyOTlkYjMxZiBsZWdhY3ktdHJ1bmsKKzkxOTkgYmJmOWU0YjMxZDg0YzRjMjEyZDNmNWYyZDU5NDE1MGMwMTkwZjk3ZSBsZWdhY3ktdHJ1bmsKKzkyMDAgMjFkY2UzMzI1MzIxOTYyMjFiYzBiMWFhZGUxZWFiYjAzMTI3MjI4OSBsZWdhY3ktdHJ1bmsKKzkyMDEgYzNmODViY2IwNDVhZDczZjYzNzUyMThjYTMxODM0NmVjYzhiOGU4YSBsZWdhY3ktdHJ1bmsKKzkyMDIgMmUzYWNiMjE0MGJmM2E1ZmY4MGM4Y2ZjMzNkNmExMTg5NTcyYWUyOSBsZWdhY3ktdHJ1bmsKKzkyMDMgMjgzZDFjYTU4NWQ5NGYyNjYzZjExY2I1M2FmZjMwYmRjYmZlMTI2MSBsZWdhY3ktdHJ1bmsKKzkyMDQgNGYzNjQyYTIwMTM3MmU2ODI0M2NkNzlhODU4NWU0ZTBiMmU0ZTRlNiBsZWdhY3ktdHJ1bmsKKzkyMDUgMjY2MmM5ZmUxYjNlMDNjYWEyN2ZkZjU2MTY0ODkyMzViNDEyYjQxZCBsZWdhY3ktdHJ1bmsKKzkyMDYgN2NjZTQ2OTE2MGM2ZWI4NTNiM2E4YmY0NGFhNDEwY2UxZDI4ZDBlZiBsZWdhY3ktdHJ1bmsKKzkyMDcgMTFhNzUxNzA1NGE1OGVhODAxNmE2NDUzYTVhYWMzN2U0MmE2MmZlNiBsZWdhY3ktdHJ1bmsKKzkyMDggOWM5YTg3YjViYjE3ZWMwMWVhM2IzZTI1MDNmYjA0ZjAxZTIzZjkzNiBsZWdhY3ktdHJ1bmsKKzkyMDkgMjE2NTYyMDRkZDRmYmQ5YTY3MWM2NDg3ZThlMjcyNjdmNjc0N2E4MCBsZWdhY3ktdHJ1bmsKKzkyMTAgMDlmNmE0OWFjYTEyZWY3MDZkMjQ4NjU0ZjJkZTdmY2NmZmY5ZDJlNSBsZWdhY3ktdHJ1bmsKKzkyMTEgNjVhZTcxMWRiMDBjYjVkNTU4YmI1NGM4MzdkNTRjMTliODc0MWJmNyBsZWdhY3ktdHJ1bmsKKzkyMTIgNGM5YjI1NmEzYmVlMGM5MTI4YTFlYzhhMjdkZGVhMWY5NmM0ZTdkOSBsZWdhY3ktdHJ1bmsKKzkyMTMgZmFiOGFiNWRjNWY4NGU4ZjZlOTZhZDk4ZDJjYzBiYjdhNWIyNTNjNCBsZWdhY3ktdHJ1bmsKKzkyMTQgNTNmZDQyYWEzYmJmY2FjYTBlMTU0NmIwZDY0ZTUxYzMyMTI4MGZiYiBsZWdhY3ktdHJ1bmsKKzkyMTUgYWIzZDdhMjhlMDdkMjU4MmFkZjA1ZDllZDQxODhiNGQxOTJlMWRkZiBsZWdhY3ktdHJ1bmsKKzkyMTYgM2JlZjU1Y2I3NDRiNmU2ZGU5Y2RlYjA4ZDA2YjJjN2FhMTg3YjhmZiBsZWdhY3ktdHJ1bmsKKzkyMTcgMWQ0MTc1ZWQ2YTljZWVlMzE1NTgwZjA4MmE1NWM1ZWZlZDQyZGFjNyBsZWdhY3ktdHJ1bmsKKzkyMTggMTg1M2I1YmMwNTQ4YmEwNjJjMzU0MDMzZTgwZTM5ZTJiODQxNTg4MyBsZWdhY3ktdHJ1bmsKKzkyMTkgNGNmMGRhMDcxZTJiZWEzZTliNGIwNzVjMGNiMmI2NTMwMDEyNzAwZCBsZWdhY3ktdHJ1bmsKKzkyMjAgNDg4N2Q3NTQ2OTJhZWZiMTAwYmNhYjQ1NDJiM2M0MDRlNDA1NWM1MyBsZWdhY3ktdHJ1bmsKKzkyMjEgNGY2OGM3YWM1MTE1NGRjZGNlMGY0NTgwNDJjZTQyMDczNjQ0MzM1YSBsZWdhY3ktdHJ1bmsKKzkyMjIgODA4NDhlOTE4YmNjMTg0MTQzYTllNmI0ZDQ0YjVmNzBmYTZhZWRiOCBsZWdhY3ktdHJ1bmsKKzkyMjMgMWRiNDFjYTQ1YzdmYzg4NTQ0ODc5NzI4ZDQ2NDQ1NjZhMzVhYjQyNiBsZWdhY3ktdHJ1bmsKKzkyMjQgYWJlM2FhZDllMDM4NWU3ZTY1Zjc1NDJkZDJiMmM2NWRkYjk3MzViNCBsZWdhY3ktdHJ1bmsKKzkyMjUgZmNmZjUzMTYzNGUxNGY0MTNkNzYxNTM2ZTIyMmE3MWQ1YjAxODgwZiBsZWdhY3ktdHJ1bmsKKzkyMjYgNzRlYTIwOGQ0NmNlODFhYTNkOWQ3NDgyYmQ1NzRjNTRkNzI0ODhlYSBsZWdhY3ktdHJ1bmsKKzkyMjcgNzkzY2FmNTE3NjQ3OWU0ZTRhOGU0N2ExZTM2YjMyYjNhNmZjMTM0OCBsZWdhY3ktdHJ1bmsKKzkyMjggNWU3YzkxMzU4ZWQyY2RlYTkxYzg3YzYwMGFlNTU4M2U3MWUzM2M1YSBsZWdhY3ktdHJ1bmsKKzkyMjkgNGRhZjA5MGZmMTYyMjY1MTk1NDM0M2Y3ZmI0NjY1YjhmMzE5YjUzYyBsZWdhY3ktdHJ1bmsKKzkyMzAgZWJhNmFkZjNmODQ0ZWY2NDdmYWI4OTZhMjM3Njc4NzcyNDVhZGJmNSBsZWdhY3ktdHJ1bmsKKzkyMzEgZTJlNWJiZmFkMWM4MWY3M2FiMzI0MTNmYzVlMGY1MDk4NWNhZWYwMyBsZWdhY3ktdHJ1bmsKKzkyMzIgMDdlOTVlZjU1ZjY1OGU3ZTY3OTVmYjBmMzM2MzBhMGZhZTkxNmIxNCBsZWdhY3ktdHJ1bmsKKzkyMzMgZmQyOWNlYmU4OGRjOGI0NTYyYzQ0YWNiNTJmYTg0OGI2NmY2N2Q2ZCBsZWdhY3ktdHJ1bmsKKzkyMzQgZTQwNzBkYzZhYzM1ZDVkMmYzZjIxZTE5ZDgxM2U0ZDgzMDc1M2FiNCBsZWdhY3ktdHJ1bmsKKzkyMzUgYWZmNmZmNTJkNWU3ZWQzMTJiZDg1MzRiOGZlM2Y2ZDMxMDE1YzQ5ZCBsZWdhY3ktdHJ1bmsKKzkyMzYgMGI1ZWIzMmI1NTFkMjgyYTJhNjY5ZWU0YThlNTRiMzBjZDM0OTAxMCBsZWdhY3ktdHJ1bmsKKzkyMzcgY2FlOGFhNDQxZmJkNGQ3YjY1ZTdlM2Q5YjJiYzExYjZkNzMwZTE5NiBsZWdhY3ktdHJ1bmsKKzkyMzggMDIwNGQ0NjFkMjE5Njc4OGVjMzQwYjkwMzMwNzNlNWEyNzFmZDVlMCBsZWdhY3ktdHJ1bmsKKzkyMzkgNzQ4YWJjN2Y4ODA4ZjQ4NDM5MTRmMjU1M2RlNGE2MzUxOGQxZWE4MyBsZWdhY3ktdHJ1bmsKKzkyNDAgMGEzYzc0MDJkMzk1M2QwN2YwMDBiYzJkYWUzOWNmMTU1MmE4Y2U1OCBsZWdhY3ktdHJ1bmsKKzkyNDEgMTI4MjRmZTA0YTA4ODUyMWRjNTRmYTYyZWIzNWM0Njc4NjU4YjE4OCBsZWdhY3ktdHJ1bmsKKzkyNDIgMDc1MmJiZjc3ZDgxM2ExZjU3ZGY3ZTNiN2IzZjQ2YTgzYzI1NGFiZCBsZWdhY3ktdHJ1bmsKKzkyNDMgZTZjMDMzZTliNzY5MjdiOWViNTFmMjdjNmMxYTU0ZjM2OGMxN2JiYyBsZWdhY3ktdHJ1bmsKKzkyNDQgODkwOTJhZDFlNjYwNzBkMTg2NWY4MTIwZTliZWVmZjJlYzg0MjI4NiBsZWdhY3ktdHJ1bmsKKzkyNDUgZTk3YjgyMzc1OTFjNTgxNTE1NWQ2MDlkMzc4NzI4ODg3N2M3NGQ0OCBsZWdhY3ktdHJ1bmsKKzkyNDYgYTI5YTZiZjAzYWYzMzIzYWVmOGEzOTgyZDEwZWFkZmYxMjhlMmQ1MSBsZWdhY3ktdHJ1bmsKKzkyNDcgMjJmZGZkMjgzYzljZWQ2ZDU1ODRjZTVjOTdhMjIwOWVlZDI4MGYyYiBsZWdhY3ktdHJ1bmsKKzkyNDggYjVjZDc2ODgxMmNiMzI0MTA4MjExMDc3NGM3ZGQ0Y2JiYTZhZDk2YSBsZWdhY3ktdHJ1bmsKKzkyNDkgMzNlMjE0NTI1MGFmZWU4MmNlNWNiOWM4NzYzZjRjMDgyMGViMmY1OSBsZWdhY3ktdHJ1bmsKKzkyNTAgODMyYTgwN2QwMDk4OGVhZDhjNjJiYjQwZWE0ZWRlN2Q2MzViNjY2MyBsZWdhY3ktdHJ1bmsKKzkyNTEgMTRkNmI3YTQyOTE5NDIxNTRlMGE2OWVlMmE0YTM5YzEwYmM4ZmQwNCBsZWdhY3ktdHJ1bmsKKzkyNTIgMGVmMjNmNTEzYTY1OTU5NzczYTE1YTk4YjU5MmM0MzhkMDAzNDkwYyBsZWdhY3ktdHJ1bmsKKzkyNTMgMzExN2FmOWRiZmNlNzkzNDZlZWUxZWQwZmJjZWNhNDVmZTUxMGQxNyBsZWdhY3ktdHJ1bmsKKzkyNTQgM2RmZTA1MTFiYzNiMzI2MzE1MDNjZTUxOGJjMmVhOGNlYTcyMTdmNSBsZWdhY3ktdHJ1bmsKKzkyNTUgZGFhNzdkOWFmMzRjOTAzMzlmOWMzZjliOGIwMzlhNjBlMWM3ZmM1YiBsZWdhY3ktdHJ1bmsKKzkyNTYgYmY2ZGU4MmFhYjBkODgxYWI3ODczOWUxMmQ0N2EyNzYxMzAyYTNkMiBsZWdhY3ktdHJ1bmsKKzkyNTcgNGRiZmZmYzNjMjNiZTM5NDVkYTQ0Zjc0NGFhZGExZDBmYzRiYmIzZSBsZWdhY3ktdHJ1bmsKKzkyNTggOWNmOGQxNGYzNTY1MmNkOTNlYmYzNmZjMDBjOWEzN2ExZmJjZDIyMiBsZWdhY3ktdHJ1bmsKKzkyNTkgYjk2ZDlmYmIyNGU1NjE0ZmJlZmNlODZkZWEzZjExOTkxMDNiNDk0ZCBsZWdhY3ktdHJ1bmsKKzkyNjAgODk4MDIwODdmODA2NjljZjc5YmVmZWMxNDQyYWUyNzE5ZDdiODAyOCBsZWdhY3ktdHJ1bmsKKzkyNjEgYzE4NTAxNzcwODk1NDUzZTczOTYzNzhjMGVkZWZiMGU3Y2M3MTg3YiBsZWdhY3ktdHJ1bmsKKzkyNjIgMDg0ODAwNTAyYTQyMDg0MjM2ZjhiZDQ3NTgzY2Q3NjdmMmU3YTRjMCBsZWdhY3ktdHJ1bmsKKzkyNjMgZjRlM2E3YWViOTQ5ZmYzZWQ2NWUxZGUxMzBiMTFlMTEyYzIxODEyYiBsZWdhY3ktdHJ1bmsKKzkyNjQgYmMwMDdjZjFkNmJhM2ExOTdlYzBkOTYxOTllM2IyOTRiMTFlMDAyMyBsZWdhY3ktdHJ1bmsKKzkyNjUgZjY5NTQyNzRlMWNhNDhmODg0NTIzYmUwYjBiNzI0M2ExYTY3ZTYzMiBsZWdhY3ktdHJ1bmsKKzkyNjYgY2VhYmQ1MDMxN2UzMGVkMjExZTA2M2RkNzUyYjhjNmIwODk2N2EwNSBsZWdhY3ktdHJ1bmsKKzkyNjcgYmI0NDBhMjk3NWFiOTkxNWNkODk2MmEwYmZjOGFhMjBiODkzMWNiMyBsZWdhY3ktdHJ1bmsKKzkyNjggYjFlNmMzZmU1ZGU4NTQ1ZDRmMWRkNWY3NGE4MTJlZjljMjYwODEwYSBsZWdhY3ktdHJ1bmsKKzkyNjkgOWU3NWQ5NDI1NmUwZTZhNTJiNmFjZTMwYTA3NWRkZjgyOTdkNjYxYyBsZWdhY3ktdHJ1bmsKKzkyNzAgZjUzM2MzMDc5NzgwYmZlOWE1NjcxNGVjZjlmOGU3MjUzMjliOGIxNyBsZWdhY3ktdHJ1bmsKKzkyNzEgODU3ZjkwNjUwNDFkNTIwYjUyM2EzZGI1NTk4NTEwOWRmNWRlZWMyZCBsZWdhY3ktdHJ1bmsKKzkyNzIgYjA5MmVlMTlhZTRmZWMwYmE1YjMyMmY4ODM5MTU3N2E4NDRmZDI2MCBsZWdhY3ktdHJ1bmsKKzkyNzMgNWIyNGNiYjFmOTliYTI1YWY1MjIxNzM2Y2VkMGNhYjQ5MWJjNjIyMyBsZWdhY3ktdHJ1bmsKKzkyNzQgZDEwMGQwMjUyY2IxYzVkY2ZkZjFmNmViNzQwY2FkNTAzN2MzZGIyYiBsZWdhY3ktdHJ1bmsKKzkyNzUgOTU0NDE3MTkxZmJmYzc4MWVjZThmNmZhYTg4YTUzNzUyNmNkYWM0ZiBsZWdhY3ktdHJ1bmsKKzkyNzYgMGJhNTBjNzQyOWU1MTAzNGIwZmEyOThhMjY4NzY0MzNhNzA3ZjkxYyBsZWdhY3ktdHJ1bmsKKzkyNzcgMzQxYTZlNDdhOGZmNjQ1ZmVhY2M2ZTNkYmFmNzZiZjgwM2RjYzk3YiBsZWdhY3ktdHJ1bmsKKzkyNzggNWVkZmViN2FhNmVhZTNkNzA0ODg2MjJjZTVhYzM5MmI5ZjZjNDU2NiBsZWdhY3ktdHJ1bmsKKzkyNzkgYmNhOTQ4MTk0ZGVhZjQ4Mjk0ZjBkYjYyMWYzYWNkNGMwMzFmOWEzNCBsZWdhY3ktdHJ1bmsKKzkyODAgOTg1YmU2ZGM4OTRmMzVmYWIwNWJiNDg0ODhlYjFlNzA3NTE4ZDJlOCBsZWdhY3ktdHJ1bmsKKzkyODEgYWZiYzExZGQyYzY1ZTVmYjgzYzZmNzdlM2EzYjZiYjk2MmJlZDg3YiBsZWdhY3ktdHJ1bmsKKzkyODIgZTIyNGM0MWJkYWM2NTA4ZjA3NGZlYmRjMjg3MDIzZGJlMmY2ODg3ZCBsZWdhY3ktdHJ1bmsKKzkyODMgOTNlNDgwZGVkY2YwOTQwNzFmODQ4N2U5ZDUzZjE1ZTViNGUyMzUzYSBsZWdhY3ktdHJ1bmsKKzkyODQgYWMxYjI2MWYxNjkwNGE2NjU5ZmNkNjI3ODg4ZDI4MGRmNzBiZjdhZCBsZWdhY3ktdHJ1bmsKKzkyODUgN2Y5MTlkNDcwMTI5M2ZjNWRkNjBiNmU2ZWJjMDllMDk4MjJlYTUxZiBsZWdhY3ktdHJ1bmsKKzkyODYgYTg3YmM1M2ZjMWFkNmVlNzViYWVhZTJiMDkyMzlhMDUxM2M4NDZiNyBsZWdhY3ktdHJ1bmsKKzkyODcgMTQwZTY1ZjgzOTUzM2ZhOWZiZTk3MTk3MDE5N2UyNTI5OTZlNjE2YSBsZWdhY3ktdHJ1bmsKKzkyODggY2E3NTVmYjFlZmI4YWY0M2I1MDEwOTI5OGI5NjU2MTA4ODlhYjY0NiBsZWdhY3ktdHJ1bmsKKzkyODkgOWI0MDZjOTI1MTQwODI1ODI5ZWYxNDJmMzFiMTQzNTNkYTg2NWQ5YiBsZWdhY3ktdHJ1bmsKKzkyOTAgZDg1MTQ3ZGNlMTg1ZDI2MmYyYzA3OGRhZDUyMDU2YzE3NGMyMmY5ZiBsZWdhY3ktdHJ1bmsKKzkyOTEgNjY3YTg1ZWJmYzNlZDBhYmFmNjAwM2M4M2ZjYTZmNjE2OTk2ZjFmNSBsZWdhY3ktdHJ1bmsKKzkyOTIgMGZlM2RjMjhiOTJjMGM5NmMyOTVlNTljNTM4MzgxZDY1MTFlYmY1YyBsZWdhY3ktdHJ1bmsKKzkyOTMgNjEzMWQzZjlhZjJkNjA5MjlkMDAyM2E1NWExMjY0MDU4N2ExZWRiYyBsZWdhY3ktdHJ1bmsKKzkyOTQgMmUzZjI0NGYxMDVmMzU3Mzk4ZjkyNzc1OTVlZTQwYmY2NWZjZDNhMiBsZWdhY3ktdHJ1bmsKKzkyOTUgN2RiYTJmM2I2YzgxMzVjM2U3N2EwMDE2ZGNjN2VjMDIwM2I0MDhhMCBsZWdhY3ktdHJ1bmsKKzkyOTYgNzczZmJjOGVmYmQ3N2UwNzJkOGRjMWY2YjdiYzEwMmFkNDYyZDk0NCBsZWdhY3ktdHJ1bmsKKzkyOTcgOTU5MjliMDFhMjYyNGFhMjZmM2MxZTNjYWRkMDQ1NDQ1NDllYjU0MSBsZWdhY3ktdHJ1bmsKKzkyOTggOGVmNDgxYzdjM2FmYzY0MzAwN2YzZjllZDcyYjcyZWRjNzM4ZDBkOSBsZWdhY3ktdHJ1bmsKKzkyOTkgYjE5Y2Q0MzEzMTI2NjNlZjQ1NWQ4YjQ2MWI1MDU3YjRlZDFlNzk2NSBsZWdhY3ktdHJ1bmsKKzkzMDAgZmMxMWZmMmM3NWIwNDk1ZGQ1YWNkZjBlOTg0MTkwMDA3ZjgyMWI2MCBsZWdhY3ktdHJ1bmsKKzkzMDEgNjYzYTQ5ZTRiZWQzMjY4Mjc4YzczOGU2YzQ1MWM4MWM1NGM0ZjQ4YyBsZWdhY3ktdHJ1bmsKKzkzMDIgZTM5YzNiNzc3MDQxNzJjODVhZjAzNDQxOTE3N2FiMGUxYjM0ZGFmNSBsZWdhY3ktdHJ1bmsKKzkzMDMgZWNhYTQzMWM1OTY5ZDliM2EzNDI1NDRlMTA1MzVkN2IzN2VmMGVhMiBsZWdhY3ktdHJ1bmsKKzkzMDQgYTE1NDVjYmYwYWRmN2Y0NmM0OTAwYzcxZTg4OTUzMGNiYzA4NmRlYiBsZWdhY3ktdHJ1bmsKKzkzMDUgOWZlOTdiNzYzMDY4YjY2OWNiOTU4OWQ2OWU5NWE1NjdmYTgwNGFiMiBsZWdhY3ktdHJ1bmsKKzkzMDYgZWU4OGM1YWJjMzQxZWNlOTM4YmIxZTE0NWMzMmRjMjg5ZTExODFhYyBsZWdhY3ktdHJ1bmsKKzkzMDcgMzUxYzcwYjhlNzMxM2ZkYjRhOGM5ZWFiZDVmZmRkMTc5NDVlYTc2MyBsZWdhY3ktdHJ1bmsKKzkzMDggOTkyMDlkY2YyOTQ2OGNlNzMwOGMyODRkOTczMTFmZDBiODc1YWFmMCBsZWdhY3ktdHJ1bmsKKzkzMDkgYWNmMjQ3NDY1ZmViZmRlMWJkNDFkY2U0MjVhYTZiNGExNzFlY2I2ZCBsZWdhY3ktdHJ1bmsKKzkzMTAgOWE1N2I0MTA3NDhkNTE1ZTg0YzdlYjAzNDQwZmIxYmVkOTgxZGNhMSBsZWdhY3ktdHJ1bmsKKzkzMTEgY2JmYzVmMzMyZDlkNGYxOWYzYTQ2OTYzYWFiNWExMTFjZWY1MTliMCBsZWdhY3ktdHJ1bmsKKzkzMTIgYWFiMDgyYmZlNjU0ZTUzZWU5N2MxNmQzYTc1MmI2YmM3YWYwZTk3MyBsZWdhY3ktdHJ1bmsKKzkzMTMgZGIxOTFhY2Y4ZTA2OGU2YWFjNTNmODc2ZDU2NTRhYWRmMDlhNjAzOCBsZWdhY3ktdHJ1bmsKKzkzMTQgMDI1NWI1ZWNkZTEwNjU0Mjk5ZjAzMTY4MWJjMzhjZWU5NDJmOThmNyBsZWdhY3ktdHJ1bmsKKzkzMTUgOTYxODFhNGE1NDgyNDliZDZhYThhZTkxZDZmMTI2YTU3ZTQzODg2MCBsZWdhY3ktdHJ1bmsKKzkzMTYgYjc1NTAwZWVlZDliMTJkMjc5MWVjMDIxNGE2OTUzYjUxYzdiOThhMiBsZWdhY3ktdHJ1bmsKKzkzMTcgNjIzMzM4MzUxMmJhOTlhMTgyZWJkZjVlMmEzOGNlZjRmMTlmZWM4NiBsZWdhY3ktdHJ1bmsKKzkzMTggNThiZmVjZTAxOTY4Y2MwOWMxNmYxMWQ3MzkyNDVhNDhkOTYzZDQ0NyBsZWdhY3ktdHJ1bmsKKzkzMTkgZDcxMzliYWM5Yjk5Nzg1ZWJkNmNjYjEyOWJlNTk2YWY2YmE2ODc0NyBsZWdhY3ktdHJ1bmsKKzkzMjAgNDE2Yzc5NTcyZjExODcxYjZlYWQxNzc4ODgwNGRmODhlYjdjMzkzMCBsZWdhY3ktdHJ1bmsKKzkzMjEgYWM2NWRiMjA1NGM5YzY3OGNjNGMyYmU5ZWNiNGIxYmI3YTYxYTFlZSBsZWdhY3ktdHJ1bmsKKzkzMjEgZWI3ODY1OGQ4MTlmYjBhZjA5YThlNmY5YmVkY2I2NzA4MDVlZDVmNiBsZWdhY3ktdHJ1bmsKKzkzMjMgM2ZmZjM0ZWE5MWFiNjQxOGQ5MmM3NTA1MmQ2MWJmMTMxYzMyM2E4ZSBsZWdhY3ktdHJ1bmsKKzkzMjQgNTk5ZWVhOTMwODQzYzE0Y2YyYmJkOTM0ODg3MTQ4NDQ4MzcwNGYzZSBsZWdhY3ktdHJ1bmsKKzkzMjUgOWRlZDRmOWUwMTllZDBhMWU1YzZlYWYxNzQyYzFhMzA2MTVkYjMyNSBsZWdhY3ktdHJ1bmsKKzkzMjYgOGFkYjM1MzI5YWYwMjRkOTUzN2IzMWVkMDdiMjNjZTYwZjg2MDlmMSBsZWdhY3ktdHJ1bmsKKzkzMjcgNTFmOGQ0ZGE4MWU0YjA3Nzk4NjE4ZWVjZDY0NjVlOGRjYmZjNTA1YSBsZWdhY3ktdHJ1bmsKKzkzMjggNTJmZDgyODE2NTYxNDViNWU3MzQ4Yzk1MTQ0YzQ3NTE4YzA3YWFkNyBsZWdhY3ktdHJ1bmsKKzkzMjkgZDNlNTE2ZWY5Y2QxMTIyZmQzMjcxZGZlYzhlODU0ZDk1OTM5ZDY2MiBsZWdhY3ktdHJ1bmsKKzkzMzAgYTQyM2UzZTBkYTQwMTBjYmQyNTY2NWIxYjJjYTQ5OWQ2MTEzZTk2OCBsZWdhY3ktdHJ1bmsKKzkzMzEgNjcyYTY1N2FiYmE4N2M5MGM1NWYwZTdhYzQzNjM4MTRkMTNiZDNkYyBsZWdhY3ktdHJ1bmsKKzkzMzIgZmQwN2Q1MDNhMzNjNWU1NmUxY2JmYzE5MDczYWFkZTRkOTBhY2I0YSBsZWdhY3ktdHJ1bmsKKzkzMzMgMWFiMzA3OTUxZjRlZDA4ODE1NjI1MGFkMWJmNzNhZmJhMDQ4YjRmOSBsZWdhY3ktdHJ1bmsKKzkzMzQgOTI3NGZhYjJjNWYyMGY1YjcyMDVlM2ZjYTkzNDMwYmMxOTk3MjUxOSBsZWdhY3ktdHJ1bmsKKzkzMzUgNjdjMTBkOTg5MDhkMmJlYjc3MTRlZjQxYjhkYTA1OWMyYTcwMTVhZSBsZWdhY3ktdHJ1bmsKKzkzMzYgNjFkOTczZWI0MTAyY2JmZDE5N2EwNWM3MDIyNmRhZWY3NjAzM2QwMCBsZWdhY3ktdHJ1bmsKKzkzMzcgNTFjOTMwMDc5NTE0NzUwMDQ0OTY3ZTE0NTI5OTEwYTIxMWQxOWE0MSBsZWdhY3ktdHJ1bmsKKzkzMzggOWYxZDNlZWI3ODRiOTMyNTkyZDlkYTAzMzQxZTQ3YmE0YmIwMTExZiBsZWdhY3ktdHJ1bmsKKzkzMzkgNzQ0Yjg5OTQxNDhhZTMyYzBlYjc3MGEyYWE4OWI5ZGMxMmI2OTQ4MiBsZWdhY3ktdHJ1bmsKKzkzNDAgYzViZmIxZGU2MWE1YjcwNDE5ZGNkMzRmN2RmYzIwYTRiMmZiODU3ZSBsZWdhY3ktdHJ1bmsKKzkzNDEgMzIwMjAwNWE3MjBiNDk3NTcwYWE4MGUyZGZmYzE4OWFkZmI1NjFlYSBsZWdhY3ktdHJ1bmsKKzkzNDIgMmRlMzk4ZjM3MGU4NmUxNmRkNTE0NDhlNWUxNDQ2MmQ3ZDUxYTNhMCBsZWdhY3ktdHJ1bmsKKzkzNDMgYzhjZGUxNWRkOGNlNGM2NTI3YzJmMDNjNmY4NWMxZGE1NDc0OTU5NSBsZWdhY3ktdHJ1bmsKKzkzNDQgMGMzZWZkZjI4MTMzMGJlYTNkYmNmN2QzYjg0YjVhNTEwOTU5MmI5MiBsZWdhY3ktdHJ1bmsKKzkzNDUgODFkZmRmNjU4OWY4Y2U3OTMyY2JjYWI1NjJhMDcwMTkzNzE1MDY1OSBsZWdhY3ktdHJ1bmsKKzkzNDYgMmY3NTNmNTQwZjQ1ZjQ5OTAxZTRlMWM4MjI3MjNjMTMzYjg0ZDI3OSBsZWdhY3ktdHJ1bmsKKzkzNDcgMjc4YWFjZjAxNzA3MTMwNDhkZjBlZmQ5ZTZiNzQ0NzUzNDJjN2MxMyBsZWdhY3ktdHJ1bmsKKzkzNDggMTkwMjkzOGU0MmM2MjA2NDUwODI0YmYzYWEzOTM1ODk1M2VjMThiNiBsZWdhY3ktdHJ1bmsKKzkzNDkgNzkzNzVmNzFkNmM4MzgyMjZjMDJlNGJlYzE4NzY0MDNhMzU2NTFlMSBsZWdhY3ktdHJ1bmsKKzkzNTAgMmQ5N2ZiMWQwNmNhMTQ0Yzc4YWZjZmVkMGU3NzRjMmFiOWI5NWM0YiBsZWdhY3ktdHJ1bmsKKzkzNTEgOWJlN2YxZTM3NTM1OTQ1OTcyZTM5M2MwZGQzZTlkOTNmMGVjZWFlMyBsZWdhY3ktdHJ1bmsKKzkzNTIgNmFlM2M5MWYyZDkzODM0MWY4MTI1OWU4NGVlOTExODhjNTBlM2E5MiBsZWdhY3ktdHJ1bmsKKzkzNTMgZDAzZjJlMmZiZjM2NjZkYWMyNmJlZTYzYTM1NDQ0YjRlM2Y4NmQ4ZSBsZWdhY3ktdHJ1bmsKKzkzNTQgNGUyY2M1MDQ0ZmE1MTNmMWExOGZlY2Q0ZTA1YmM5YjUyNDc3ODFlMCBsZWdhY3ktdHJ1bmsKKzkzNTUgNTgwOWVmMTU3Y2RkYjRlOGZiZjFjN2I0NTM1ZTUwNjU2MzIxODY5OCBsZWdhY3ktdHJ1bmsKKzkzNTYgZTI4NWExNWYzYTkyZWEwYTdmYWU1NTk3MWU0NmQ5MTNhMWE5Y2M3ZSBsZWdhY3ktdHJ1bmsKKzkzNTcgZWEyMThkY2Y3MjdkZDE1MWU5NTU2Y2M2OGJlNGVkNWIwZmRlMDJhMiBsZWdhY3ktdHJ1bmsKKzkzNTggYzQ2ZDg3OTIzMzE3YzM5YzRjMTE1MDllNGE0NTJiNmMxMjI0NDAxOSBsZWdhY3ktdHJ1bmsKKzkzNTkgMzhmOGE4MjhhYzU4ZDNlMzBhMmFiYmFkMWQ5OTYyZGYzMGM3MTcwYyBsZWdhY3ktdHJ1bmsKKzkzNjAgM2MxMmMwZDY5ZTEyMzAyZTRlZWJhYjkzZWRhNDQxMDM5MzBhMjM2YiBsZWdhY3ktdHJ1bmsKKzkzNjEgYmFmNjg2YmY4Y2EwYjY0MTRjNDEyZjE4OTNlODM2YTJmNmU5NTBlNSBsZWdhY3ktdHJ1bmsKKzkzNjIgNTk4ZDJmZmJmZDhiNTYyMjJhMGNjMDljMDUwZGM0NjA4NzI0M2U0MCBsZWdhY3ktdHJ1bmsKKzkzNjMgZThkMzIyMDkyMTdhOWQyNTk0OWY4ODcwYjUzYzk5MWE0MjdhMWJiZCBsZWdhY3ktdHJ1bmsKKzkzNjQgYjdkOGNjYjQ1NzQ2MzMyNWM5YzA5NTc5YzJlMjVjM2U4NTAwZmI2YSBsZWdhY3ktdHJ1bmsKKzkzNjUgOTEzMzQ1ZDU0ZjMwNmM1YzNiYzZjNDE4YTc2N2NiNDFjYmE4YjYzMyBsZWdhY3ktdHJ1bmsKKzkzNjYgZThmOTk3ODg3YzJkNWUzMjFiZjEzNjlhMDNlMTc3NDkwZDA4MWMzYyBsZWdhY3ktdHJ1bmsKKzkzNjcgYzdiYWI3M2U2M2M2ZTc0MTg5NzY1ZmYzMGJmZDQ1YTQxN2YxMWM1YyBsZWdhY3ktdHJ1bmsKKzkzNjggMWZmOWEzMGY4MjZhNDVhZDgxMGMxNDk1ZTBiMzM3YzNiYTQyMTg3MSBsZWdhY3ktdHJ1bmsKKzkzNjkgMDQ3YWJjYmYzZjQzMjU1N2M1YTM3OTU2MmNjZDI5MjJkYjUwOWU2MiBsZWdhY3ktdHJ1bmsKKzkzNzAgNWQyMDVmMjJhYjYxODYzYWE3OGE4ZDg5ZGYwZDA3Zjg1ZjE0MWI4OCBsZWdhY3ktdHJ1bmsKKzkzNzEgZDJlZjc5NGQ5YzExNmRkZjA4ZDYxMTZiM2Y1ODU0ZjM3MTM3ZDE1NyBsZWdhY3ktdHJ1bmsKKzkzNzIgMDVlMjY3YWVkODZlYmI1MTA3NzU4ODU2N2E4OTYxYTMxN2Y2NWJjZSBsZWdhY3ktdHJ1bmsKKzkzNzMgZDk0OWEzNWNhZTIwYzgzYTJmM2YwZWQ2MTdjMGRjODNjOGQyNWNjNyBsZWdhY3ktdHJ1bmsKKzkzNzQgZTcwYzRhZjE1N2Q1NDM1NGQyODhiMjgwMDI3NWI5ODFjYTI2OTg3ZCBsZWdhY3ktdHJ1bmsKKzkzNzUgNmZlNmE5YzE0NDk5MmYxMTNmMzNmMzhlNDcyNDU2ODcyMzJkNDQ5NiBsZWdhY3ktdHJ1bmsKKzkzNzYgMzdlZTE4NzExYzNjMzgxODQxMTg5OWExOWEwZjFlZDZjMGNiYzNhOSBsZWdhY3ktdHJ1bmsKKzkzNzcgMjE0ZjNjNGY1NDg5MmVjN2M4ZDVjYTU2Yzk3NjUyMmZhMDEzMjEwMiBsZWdhY3ktdHJ1bmsKKzkzNzggMjQ0MzdkOGQwZGRjM2I0NWIzMGQ0Mzc2MjIyYjE2NDY5NDI2ZTYzNCBsZWdhY3ktdHJ1bmsKKzkzNzkgYWRiMzAwY2JkNTY2ODBkMDEyMjQyZmE5OTM5NzZjZTEyZmI0NGE2MyBsZWdhY3ktdHJ1bmsKKzkzODAgMjUyMmM4Zjg2MTViZDUzMjljYzZmOTg0N2VmNzhiZjljY2MxY2M2YyBsZWdhY3ktdHJ1bmsKKzkzODEgZTIwN2JlYjVhMzYyOWJkMGNkOTUzYzgxYWM0OWJiZjUyZDNmYmZjOCBsZWdhY3ktdHJ1bmsKKzkzODIgOWNiMmYxMGIwNDI5OGVmYTBlMTRmMmJiMGQwZDdhNzY0MTYxZTNhYyBsZWdhY3ktdHJ1bmsKKzkzODMgN2I1NGY5NmFmM2JlZmEwM2MyYTk5MjQyYTliZTY1ZjBlZGM3OTFmZSBsZWdhY3ktdHJ1bmsKKzkzODQgODBhYjYwMzBiOTA0ZGM5MjllYTY4YTVjODg1MjgyN2YxOTZkZDMzYyBsZWdhY3ktdHJ1bmsKKzkzODUgOWVjNmUwYThmMzUzZmQyYmU2YWM1YTZlYTBiODY4YTZkODRmNWU5ZSBsZWdhY3ktdHJ1bmsKKzkzODYgZTRjZDMwZTQ1MzcxY2UwYTljNmExYjdlNGM2YjgyNmQyMGJhNTJkZiBsZWdhY3ktdHJ1bmsKKzkzODcgMzU0N2ZkZWFiNGRmYWM4YWY5MjcxOTkwOTI4NjAyMTdiNDVmNzQ4NSBsZWdhY3ktdHJ1bmsKKzkzODggZjU5NWU3ZmMyYmQ5ZWE1MmNlYzMzYjQ0MGRhMzc2NmJmYzg1ZGU4MiBsZWdhY3ktdHJ1bmsKKzkzODkgMmM0OWMwMmNmNzQ3NGFiMzlhOGUzMWU4NmZiY2FiYjUwNzFhYzY1MyBsZWdhY3ktdHJ1bmsKKzkzOTAgZjI2NmFiOTFhOTkwZDAwYTMyZTBiZTEzMzNjNTY4YWRjYzk4N2Q3OCBsZWdhY3ktdHJ1bmsKKzkzOTEgM2NmZjQ0NWJkMTBmZmE5NzExNWI2MWRjZmNiNzdhNTIzNzlkYmJiYSBsZWdhY3ktdHJ1bmsKKzkzOTIgMDM1ZTc5NmI4OTBlZDYyNjM5NTAzMDFlMDI2YWIzYTZjNDk2ZmNhZCBsZWdhY3ktdHJ1bmsKKzkzOTMgMGQ1MWIzYjY2MGQxMjkzZWRiZTgzMzY2OWI2OWIyYjFlZjVmYzQzMCBsZWdhY3ktdHJ1bmsKKzkzOTQgYjlhMzk1MDExMmFlYTU5MjBhZTY2NzkxNjM4MTEzZDMzNDAwMzQ0NSBsZWdhY3ktdHJ1bmsKKzkzOTUgOGRmYmVlY2MyNDIyYjc5OTE3NTNiYzkzMDI2MzA5Njk3NjExOTE4YSBsZWdhY3ktdHJ1bmsKKzkzOTYgOTUwZDA1MTliNWZlOWU5OWExM2YwOTVhZGYxYzZlMGEyN2EwMWFlOSBsZWdhY3ktdHJ1bmsKKzkzOTcgMTAwMjljOGM0MGUwZGM1NWMyNWU0NDBjNjI4NmZjN2Q5Njk2YjQyNCBsZWdhY3ktdHJ1bmsKKzkzOTggYWZiMWU4YWY3ZTRmOGFiYzJmZDY0YTg4YzVkZWEwOGM2NWRhMWViNSBsZWdhY3ktdHJ1bmsKKzkzOTkgMjM2ZWE5M2M1NmZmNzhiNzViODhkODVkN2QwMmI4OTgzMzJlNDBiYyBsZWdhY3ktdHJ1bmsKKzk0MDAgNzYyOWM0ZDk4NWJjM2VkZTNlMWZkODBlNWZiMjA3MmVlNDM4ZGJmYyBsZWdhY3ktdHJ1bmsKKzk0MDEgNzRhZDI2ODI1MDYwOGE5M2RhZGNmNGNhNWQyZThmODFhYzQwNDg2ZCBsZWdhY3ktdHJ1bmsKKzk0MDIgY2YzMTdhOWM0OTliYmZmNjE1NTI1NWIxYjQyNGYzOGRlY2QzOWMzMyBsZWdhY3ktdHJ1bmsKKzk0MDMgM2RiMjRiNGQ5YzQyMjc1YmQ5ZDMwZDk3ZWIzOGQ3M2VjODhiNjZkNSBsZWdhY3ktdHJ1bmsKKzk0MDQgOGM5MmVjOGY2MDM4YTc1MDcwZTJlYTI5N2MxY2EwNTQ4YzVkZDZjMSBsZWdhY3ktdHJ1bmsKKzk0MDUgNTIxMjVjZTM3NmE0MmU0MjEyODEyZGM5ZjM5ZTJmMzVjNjFjZTQ0YSBsZWdhY3ktdHJ1bmsKKzk0MDYgYjlkOWM1M2YxZTFkZjUxMjMwYmI4NmM0ZWY3ZmI0MDQwZWZlMWM1OCBsZWdhY3ktdHJ1bmsKKzk0MDcgNzQwMjRlOTA3YzYwZDYwNTQ2YTY2YjkxZGIxM2VlODI3ZmQ0MzJhMiBsZWdhY3ktdHJ1bmsKKzk0MDggNzc0NGJmMWU0ODViNjVmMWM1YzY1YTUyMzdmMzlkM2I1YWE3MGI1MCBsZWdhY3ktdHJ1bmsKKzk0MDkgNDA5MWIwNGY5M2FkZjAxODc1NjNlNGY4NjQ0ZGIzMDNhZjQyY2EwMyBsZWdhY3ktdHJ1bmsKKzk0MTAgYzViOTM5YjVhOWUwMmQ2ZDgzM2UzZDI5NTMwNDkyNWQ5ZTE5YTJiMiBsZWdhY3ktdHJ1bmsKKzk0MTEgYTcyZGM1MmI5N2FkZDQ2MWMzOWU3YjM4ZTNiNDczZjI2MWNmMTg2OCBsZWdhY3ktdHJ1bmsKKzk0MTIgNjgzYmMzNWFiNzUzYWY3OGI3YmIwOTBlODAzZmU1N2MzYzgwY2QzYiBsZWdhY3ktdHJ1bmsKKzk0MTMgNmI2ZWY5MDkyMzhlMDVjZDBkNzA3OGM5Y2Y5YjlhZjQ0ZDkyYzcxZiBsZWdhY3ktdHJ1bmsKKzk0MTQgNDU1Y2JhYjRhOWJlN2Q2NTQ2M2Q3ZjEwMmNmZmIyNTMyMTMyYzUwNCBsZWdhY3ktdHJ1bmsKKzk0MTUgZTNjOGMzNDBhOTkwYzhjZGZhZTAwMmYzODAzYzkzN2ViYmQwMDNlOCBsZWdhY3ktdHJ1bmsKKzk0MTYgYjNiMGFkNDcxMmFkMGY4NGEzMmZlZmVlMjE5MmE1YmFiMDMwYmNlMSBsZWdhY3ktdHJ1bmsKKzk0MTcgZGMzYzljMDRlZjA3YjkzM2E0MDNhMWZkM2NhM2RkNDk2Y2ZhMTY5MSBsZWdhY3ktdHJ1bmsKKzk0MTggMWRhZmFkMzA3MDA2NmI5OTFhNzZlMzc1N2RmNTEyYzdhMDhlNDllZSBsZWdhY3ktdHJ1bmsKKzk0MTkgOTEwNDc4NGFmMTU5MDhhY2Q3MjA1YTI5MjE5MDkyOTQyMWEyMTZkYyBsZWdhY3ktdHJ1bmsKKzk0MjAgMDYyOTFmMDRiYTljMzhjYTllMjAyNGZiM2I2MmY5Y2JhNzg1MGE5ZCBsZWdhY3ktdHJ1bmsKKzk0MjEgMGMxY2MyZDZjNGYwMWRjNGUxNDBkZDZmZDMwNDBjMTZhMGU3YTBiYiBsZWdhY3ktdHJ1bmsKKzk0MjIgZmViYTNkOWEzMGM3MjAwYThhMjBjYzE2MWIyMWFkMzBhZDk1ZDY0ZiBsZWdhY3ktdHJ1bmsKKzk0MjMgZjE0ZTQ0NTlmYjk0ZGJjN2Q5ZDNmNTFmYTZkNmU4MWUxYjQ1MGExYyBsZWdhY3ktdHJ1bmsKKzk0MjQgNWVmNDcwMDcxOWRlOWEyMjZiMWQ2MTEyMjI3ZWExZDgwZTAxOTY0ZSBsZWdhY3ktdHJ1bmsKKzk0MjUgZTdiZjU0NTNhNmZmNGZmNzY0ODJmMjQxZThlMjQ0Y2U1NDAxZTdiZSBsZWdhY3ktdHJ1bmsKKzk0MjYgODAwY2IyMzRmNjc2ZjFhYjAzZTY4NjcyZDc1MDk1OTVmMDU4NzZmMSBsZWdhY3ktdHJ1bmsKKzk0MjcgNmUwZWRkZmE0MDRhNzE3MDkxZmNmOWQ1ZDMxZDZlNGYyNzNlZWVjNCBsZWdhY3ktdHJ1bmsKKzk0MjggMzkxMmVmYTViZmNhMjY2M2U2NThmYmMyNjI2YzBjZTE1YmExZTJlNiBsZWdhY3ktdHJ1bmsKKzk0MjkgYzhhZDlkYzhhZTFlYmY2OWMyMTMwOGY2Y2NmNGRkODIxOGQ2YTNmZSBsZWdhY3ktdHJ1bmsKKzk0MzAgMTE0NGE5ZWQ5OGQ2YWIzODJkOWM0YzhiOWQyODI3MDA2NzU0ODIzMCBsZWdhY3ktdHJ1bmsKKzk0MzEgZGMwNzM5Mzc5NzE0OTg4MTE1ZTljOTk0NzUyNzhhMGI1YmZjYjVkOSBsZWdhY3ktdHJ1bmsKKzk0MzIgOTY0MmEyOGRmMmIxNGI3Nzg3OGRkZWRlMTI2YzQxNmNkNWI0MjAwYiBsZWdhY3ktdHJ1bmsKKzk0MzMgMzg0OTNiOTM3NmVhZTE4MWIzYTA2Mjk0NmQwNjRlYTUyNTI1Zjg4MyBsZWdhY3ktdHJ1bmsKKzk0MzQgOTc1NGIyMjMzNTgwOTFjYzY3YmU0NWE1NTBhYzEwMWQyMTk2NzcxMyBsZWdhY3ktdHJ1bmsKKzk0MzUgZGY1YjU2YTVhZmNmZDYzMjRmZWQyYzQ1YThkM2ZhNmZlOGQzYzFlMyBsZWdhY3ktdHJ1bmsKKzk0MzYgMTM5YWQzMWZmOGZkNWI5ODZiOGMwODNmOWE2YjM1ZjdmNjQxMDY5ZiBsZWdhY3ktdHJ1bmsKKzk0MzcgZmVkYmY5MzI1MTkwYjhhNmE2MDMwNmI5MjE4NGUxNGZkNDQxNGMxYyBsZWdhY3ktdHJ1bmsKKzk0MzggMzE5YTUxYzM4MWNlZTRmOGE0ZmQ5ZGMxNGE1NWM2Y2FjNjZmODM1OSBsZWdhY3ktdHJ1bmsKKzk0MzkgYzU4NzRmNmY1NDMxZjI5NGI5ZmM1YWZhM2I5M2Q4ZTc0YTI3OWY3NSBsZWdhY3ktdHJ1bmsKKzk0NDAgNDg0YTFjNjhjNTU4OTU2YWVhZjFhYzk3YWE1ZjhkNDk3YjBiY2QzMSBsZWdhY3ktdHJ1bmsKKzk0NDEgMTBmMjkyMWEwOTFlNzE0YWM3N2ZjZjJiMWZiMWViM2NjMTlkOTNiMSBsZWdhY3ktdHJ1bmsKKzk0NDIgMzNiZTdkNWQ0OThiNjA3MmI3MmFiMGE3MDEyMTRiMDYyMWZiMmVlMCBsZWdhY3ktdHJ1bmsKKzk0NDMgZGNlODM4Y2Q0MmMxODA5ZDcxMzUyNzg2YWUyZGJjNTExMGVkM2Q5NCBsZWdhY3ktdHJ1bmsKKzk0NDQgZWVkNjMwNDlkZjk1OTU1YTk5NTdjYjY1ZWQ0ZGNmNWE5Y2E3YjAzYSBsZWdhY3ktdHJ1bmsKKzk0NDUgNzQ0ZTJiNjhmM2I2ZDk0MGJiZjI1MTExODVjMTk3NGNmOTlhMmRhMCBsZWdhY3ktdHJ1bmsKKzk0NDYgMzFlY2E2NDhmN2ZmZWFmMWQyYzY0MTM0ZmYzN2VmMDE5ZmJmM2VlYSBsZWdhY3ktdHJ1bmsKKzk0NDcgNDkyYzZkYjE2MGFjOTllM2U4ZmYyNTcyZWJhOTJiODk3MDgxOWU3NyBsZWdhY3ktdHJ1bmsKKzk0NDggZTVhZmY0MTAzNmYzZDY1OTA2MGUyZmZiZjFmZDlhNjRmMWQ3YTY3MiBsZWdhY3ktdHJ1bmsKKzk0NDkgYmMxMjVmMGQyYzVkMGYxNDE0ZDA0ODgzNTk2N2UwZGUxZDY1ZThmNyBsZWdhY3ktdHJ1bmsKKzk0NTAgYTY5MjllNzQxN2RkNjJjNzc0MTU4ODE1YjU4YjBmZWVmNmFmZTQ2ZiBsZWdhY3ktdHJ1bmsKKzk0NTEgYmJhZDJjNjg0YWQ3MmJjZTVmMTM0NGRmYzRiMmQ2N2E4NjdkYmNjYiBsZWdhY3ktdHJ1bmsKKzk0NTIgMjNiMjdiMGIyMzViMzE1NTJkNTdlZjhlMzNiY2FlNDg3Njk2YWVjOSBsZWdhY3ktdHJ1bmsKKzk0NTMgODBiMWUyN2YyMGQ0OWNlMTE5NTg4NTM1MjNmNWJlNmI5YmYxMmU0MiBsZWdhY3ktdHJ1bmsKKzk0NTQgY2RhNzIwYjE5MTlkZmU1MjJhY2I5MGJhY2FiM2ZjNWVjODc3NzM1OSBsZWdhY3ktdHJ1bmsKKzk0NTUgYTU2ODZlNzU2ODVmMmQzZGViNTZkNTU3MTJlYzM4YmViMWM2MjAyMiBsZWdhY3ktdHJ1bmsKKzk0NTYgMmYyZWZiOGZhNTRmZjNjNjNhMmNlMWExNjdhM2Y5MWJjNThlM2I1ZCBsZWdhY3ktdHJ1bmsKKzk0NTcgNzY4OGYzMTA2YWU0NDFjMmNiNzg3MzJkMmQ2ZDVhMDMzM2FkZjk0OSBsZWdhY3ktdHJ1bmsKKzk0NTggY2ZhZDRiMDI5NjQ1ZTlhN2NiM2RhZGViOGVkMzA0OTJmMjBkYWY0ZCBsZWdhY3ktdHJ1bmsKKzk0NTkgYjcwYmE0ZGI3NjdlMDk3NDBmNWQxY2E3YzA3ZWI4OTJmMWE4ZTE0OSBsZWdhY3ktdHJ1bmsKKzk0NjAgZjMzNjQ3MDhjMDllMDc5MDEwYjZhMTdlNmQwMjA4NjI0MmNkNzgyNyBsZWdhY3ktdHJ1bmsKKzk0NjEgZmZjYWY3YWZkNWQ5ZTNlOTAxZmQ4ZGJkNWJjZWY0ZTE0OTNjM2E0NCBsZWdhY3ktdHJ1bmsKKzk0NjIgZjVmZDIzOWIxNzhhZDAwOGE2ODFiNDFkYmY1MDZkMzc0NjFjN2I2OCBsZWdhY3ktdHJ1bmsKKzk0NjMgZDRlOWFjNzU3ZTVjMDdmZjU5YzZiMzg3Y2QyYzQyNWQxYTYzNmMzNyBsZWdhY3ktdHJ1bmsKKzk0NjQgNjM4ZDg3N2VhOTk1ODM1MzM2YzA4ODhiMTNhMzIyNjAzMjY0OWZjMCBsZWdhY3ktdHJ1bmsKKzk0NjUgMWE0MTQxNThlYjY2NWIxMTBjZDRhNjg3MmVkM2JhYjVhMDQzMGVkMSBsZWdhY3ktdHJ1bmsKKzk0NjYgMmU5MWZjNzFjYmI1MDE5ODM0NzI5MWJiNzM0ZDc5ODNmNDVjYzgzYiBsZWdhY3ktdHJ1bmsKKzk0NjcgZmUxMDhhNGJiOGQ1OGRhYWNmODdjN2RiM2YxY2I5MmM1MjcwNTE0NiBsZWdhY3ktdHJ1bmsKKzk0NjggYjI0NDVjOTNmMDNiODljMGEwNjg3ODgyODRiZWM5YWNiYzY2MGEwNiBsZWdhY3ktdHJ1bmsKKzk0NjkgZjM0OWJmMGU5MzIyNzZmYjY0YzE3NDczN2FhY2FjMmIyOGRhZDIxNiBsZWdhY3ktdHJ1bmsKKzk0NzAgZDAwNTE1ZjkyYjUzNGQxNGU1ZDA0NjczMTRiODEyNGFlZGNiODI1MiBsZWdhY3ktdHJ1bmsKKzk0NzEgOTg3YTgzMWFhZjIzNmFkZjU2MTFjNzk2OWU3Zjg4MWJjZDM4MjY0YiBsZWdhY3ktdHJ1bmsKKzk0NzIgNjBjY2ZhOTY1NmFjZjBiNTIzNTRhMWMxNWQ3YzNmNGI4NjllYmIzMCBsZWdhY3ktdHJ1bmsKKzk0NzMgZWJjZjYwNGNjZWUwNTExMjlmYmFhZTZmMjYyMGRiYzRhYTBkZWUwNSBsZWdhY3ktdHJ1bmsKKzk0NzQgNjkxMTI5OTBkOGUyNDhiOWYzYmI4MGY1ZGVmMDAyN2U5ZjhmMmU1MyBsZWdhY3ktdHJ1bmsKKzk0NzUgZmExOTQzMGZlYzRlNDlmYTMxZTUwMGZiYzI5N2MxMWFmMWRkZDE3ZiBsZWdhY3ktdHJ1bmsKKzk0NzYgOGFkMTdlNGNjZDliYTg5OTNmYjdlYjUxMTczNWNmMGRjN2RjNjNmZCBsZWdhY3ktdHJ1bmsKKzk0NzcgN2NlOWRhMDI5NjE5ZjU1YmM1MzE1ZjdiZDdiNmYxYThjOTkwYmM0ZiBsZWdhY3ktdHJ1bmsKKzk0NzggZjJhZjNjNjQ1NzEwMjRjZjc5MDExYzA1NmNkZmYyYjkwMzk5YWVhZiBsZWdhY3ktdHJ1bmsKKzk0NzkgZmViODBlYTU0ODg4ODdjZWU4NTUyOGIxOTc4MDgwY2ZlNmU1Nzg2ZiBsZWdhY3ktdHJ1bmsKKzk0ODAgZjBmOWIyZTRmNGNjMGM1MDlmODg0ZDhiM2ZkMzY3ZWYwOWMyYWE1MSBsZWdhY3ktdHJ1bmsKKzk0ODEgMjI0NDQzOWZhZmNmMDZjMWRmNjZmNGZhMzQ2NjZjNmYwNjk3MTk2OSBsZWdhY3ktdHJ1bmsKKzk0ODIgYTEwYzQ1MzkxMjdhMWNmMGMxMjIwZjlmMDNjNmRkZDRlNDg1ZTViYSBsZWdhY3ktdHJ1bmsKKzk0ODMgY2RlZWZmNGQ2Y2I0Y2Y3MjlhODgzYmIwN2I1MDFjMWY4ZjJiMTc5MSBsZWdhY3ktdHJ1bmsKKzk0ODQgOTc3M2QzOTQxYzk2ZTJkM2JlMjYzYjhlMGQ0YTc1ZDRhZDg1NGFlMyBsZWdhY3ktdHJ1bmsKKzk0ODUgNmYyYWI0YWZhOGY5NDc4N2MwNmZjZjBiZDBhZDhmMzdiNjRkOGFkOSBsZWdhY3ktdHJ1bmsKKzk0ODYgNGI4ODcxMTk4NWEyNTg5YzMyMThmZTU2MDUzOWY0YzVmMjMyMTgyNCBsZWdhY3ktdHJ1bmsKKzk0ODcgNDQ0YTZiMDdkYTQ2NTE2OGFhMjhkYjcxYTgyYzk4ZTgzMWExYmVkNSBsZWdhY3ktdHJ1bmsKKzk0ODggMGFiYTY0OWJkOWJiM2FjZDJjZjZiYTNiM2YyNDM4NGEwODMxZDk3NCBsZWdhY3ktdHJ1bmsKKzk0ODkgN2E4YzMwODE5NmQxNDY1NWM0MmYzMWI3ZTUyNDc1YTI4MzIwOTBiNiBsZWdhY3ktdHJ1bmsKKzk0OTAgMmRiMTZkMWRiZDg3Y2JhMDY4MzIzNjgwYTJlOGMyNWNiMzU2NGRlNyBsZWdhY3ktdHJ1bmsKKzk0OTEgYTVkZjAyYjZjN2E4MzA4MmI0NzJiOGZmMGI0ODczMWEwZjg5OTNlYSBsZWdhY3ktdHJ1bmsKKzk0OTIgYzc1ZDg5OWU2NjZmMTY4ZDdlNDdiMDA1YzE0NWQ2ZmMyNmQzNjNmMiBsZWdhY3ktdHJ1bmsKKzk0OTIgODQ0NjEwMTFhMWEwYWI0MDJlMzUyZjA2NzQ4ZjI5ZmI1YjU1NTllNSBsZWdhY3ktdHJ1bmsKKzk0OTQgZGM4NWFkMWJhMGUxNTYzYTNmZWJmMGE5MTRlMmNkYWZkYWMyZjgwNiBsZWdhY3ktdHJ1bmsKKzk0OTUgNTlhYTNlMWMxM2RjNTgyMWIxODI5Nzk2NjFiMzczMTBjMjMxYzM1NSBsZWdhY3ktdHJ1bmsKKzk0OTYgMGE5NTE0NzBiMWJmMzBmZmI5Y2YxZjk1ZTFhYzQ3N2EzYzY5NTMyZSBsZWdhY3ktdHJ1bmsKKzk0OTcgYWRhMTMxMWRhMjg2ZWQ2NDAwN2Y4YzgxZDI4NzdiMGZhM2MyMzcxNiBsZWdhY3ktdHJ1bmsKKzk0OTggMjYxYjExYjBjY2Q2NGRmMDRmN2RlMDgxNjA3Y2Y4OTA4ZTExZDYxMCBsZWdhY3ktdHJ1bmsKKzk0OTkgMzg0NGRlMmE3MDlmNTBjZDcxMjQ0YjFkOGYyNzIxMWQ2MjdlOTNjMSBsZWdhY3ktdHJ1bmsKKzk1MDAgYTY2ZGY1NTVmMDI1ZjJiOGE2MjFjNGRiOTJlMDI2NTQyZWIyMmY4ZiBsZWdhY3ktdHJ1bmsKKzk1MDEgY2NkNDcxYzdiODYzY2RlMjJlNGQzMjVhM2FhMzFkOWFjOWVmZDAwNyBsZWdhY3ktdHJ1bmsKKzk1MDIgZTE3ZmU3OTMwNWM3NDA2YjhjN2I5Y2MyOWVmZTQwZjkyODIwZTIyYiBsZWdhY3ktdHJ1bmsKKzk1MDMgYzVhMThmYzRmOTY2MTRiYjEyZGYzNGEzYjc0NmIzYzE2NGU3OTFhZiBsZWdhY3ktdHJ1bmsKKzk1MDQgNGQ2NDU5MDliODM0NTVkMjFiYWRmM2VlMTRiM2FmZGRkNTcxYWEyOSBsZWdhY3ktdHJ1bmsKKzk1MDUgOGRhMzVmMWM3MzkwMTBiYjhiZjRkM2NjMTdiYTJkMDUwY2EwMDg1MCBsZWdhY3ktdHJ1bmsKKzk1MDYgMzc5ZDFmZDQyZGJmMWY5MWY5MTIxZWVkOTFmNTgwYzA1MWE2NjcwYyBsZWdhY3ktdHJ1bmsKKzk1MDcgYTM2N2FhYTY1MDNjYmRlMmNhZTBkM2FmNzMxOGE3YzU1ZTVhYWE3NyBsZWdhY3ktdHJ1bmsKKzk1MDggMDVlMGU0OTkwMTRmMjk0ZWQ2MjNjZGVmMzUzM2VlMzg0MzkyYzRlZiBsZWdhY3ktdHJ1bmsKKzk1MDkgOGQxMWVjYzE3N2IyYjhjNTAzNGU0MzM0YjFiZGZmNGQ3ZjkzZmMzNCBsZWdhY3ktdHJ1bmsKKzk1MTAgZmE4NWE3ZmQ3NDBiYzYxYmIzOTkxYWVkZjY0MmU0ZmYyNmZlY2FhZSBsZWdhY3ktdHJ1bmsKKzk1MTEgNjE0NzQ1OWJmY2ZiOWEwZTY3Y2ZhNzJhMWM4ZGI4Zjk2ZWJkNTIwOCBsZWdhY3ktdHJ1bmsKKzk1MTIgZGRmNTJmMDFiYzBhNzZkNmQ3Yzk4MjZlZjY2ODcwMTg1MTZkMmEyNiBsZWdhY3ktdHJ1bmsKKzk1MTMgMzE2MTY3NDk5MDA1OTk2ODI1OWMxODNkOWYyNjQ5NzRlZmI2MTE0OSBsZWdhY3ktdHJ1bmsKKzk1MTQgZDBhOTcwMTRlZDQyZjAxZjYyNjEzM2VlM2E4NzEyMmU0MDgwMDQzYyBsZWdhY3ktdHJ1bmsKKzk1MTUgMjYxMmY5YWMzMWVkYTE3NzYyNzgzNGIzMTNjZjQ4ZjRiN2IxYjhjZCBsZWdhY3ktdHJ1bmsKKzk1MTYgNDljZTE4YTE2OTlmNGM2MjA4ODg3NmQxNmMyYjViYWY2YjVhMmQwMyBsZWdhY3ktdHJ1bmsKKzk1MTcgYWI0ZDYwNDgyMmQwYWNmMjU3ZjZhZjFhNWMzMzQ3ZDJkMjkyYjg3MyBsZWdhY3ktdHJ1bmsKKzk1MTggMWM5MjdlY2ZjYmIzYjE4ODBkOTNjOTAxMzVlZWIwN2UwZTQ0YWExOSBsZWdhY3ktdHJ1bmsKKzk1MTkgYTUyYTNlMjZlZGM0Y2U5NDE0ZWUxMjVmYmYzNDcwZDUyNWUwOTgzMCBsZWdhY3ktdHJ1bmsKKzk1MjAgODRlODcxZTIwMDg3YWVjZjg0NjIyY2RmNjQzODM0NzU3ZGZhZmNhYSBsZWdhY3ktdHJ1bmsKKzk1MjEgNzZlYWYzNjA0MGJlNTVjYWUyYmIxZGIzMDA0ZWJlMjY4OWFkZGVjOSBsZWdhY3ktdHJ1bmsKKzk1MjIgMjk3ZWE2NzkyNmViOTRhYTQ5NTY3ZGRhOTAwODY4NGIzN2Q1N2Y0MiBsZWdhY3ktdHJ1bmsKKzk1MjMgYWU2M2ZhM2NiMWM2ZjkxZjYzNjI3ZGVmMDRhMzY5OTNlZjkyN2ZhOCBsZWdhY3ktdHJ1bmsKKzk1MjQgYzRhNzhiOTI0ZGQ5YWM4ODY4M2E4ZGY3MDRhOTdkOWQxZDdkMTdhMSBsZWdhY3ktdHJ1bmsKKzk1MjUgOWZlMzM1ZDQ1NTk1NmNjYjg5ODE0ZmFhNmM2YTY2MmE4YjllMzY4NSBsZWdhY3ktdHJ1bmsKKzk1MjYgM2VjYTVmMzc1MDFhNzljMTAxMzMzZjU5OTFkMzlhZjQwOGUxN2ZlZiBsZWdhY3ktdHJ1bmsKKzk1MjcgYWVjZTUxMzYyYWRhYzVjMWFhMGUyYzc2ODc2MjY2M2EwOTZmNjhlNiBsZWdhY3ktdHJ1bmsKKzk1MjggOTBlZGNiMzhmYjAwM2YyNDNkNTc2ZWZiYjE2OTRiNThjZDE4MTEyNiBsZWdhY3ktdHJ1bmsKKzk1MjkgMWYyZjU1OTc3MzliYTFlYjcxZDBmNmYxOTFlNGUxMTYwZGIxOTc0YSBsZWdhY3ktdHJ1bmsKKzk1MzAgNTAyODgwYWY0NjU0ZTM3OWQ5ZjdlNTE3MDAyYWE1NjE5YTNjMjcyMSBsZWdhY3ktdHJ1bmsKKzk1MzEgZGIwZGQxMTc1NDFkNDZlODJhM2NjMGM2ODM4YWI3YTVkZGExY2NkMiBsZWdhY3ktdHJ1bmsKKzk1MzIgNDI1MzQ0MDk3NTBhMDRlYTExOWJmNmUyYjFkODRiOTRhNDhhYzczMSBsZWdhY3ktdHJ1bmsKKzk1MzMgZGYwNWI5YzRiZTdmMzc3MDUxNjgxNGRiNDIwYTlmZGY5MzA2YzJjOCBsZWdhY3ktdHJ1bmsKKzk1MzQgNTNlNTRhMTRmNDMyMzM5ZDgxNmI0OTllMGQwY2FjYjZiMjI0Mjc4NCBsZWdhY3ktdHJ1bmsKKzk1MzUgMDg5NmQzMmI2MGE0YjFjYzgwMmNmMjY3YTVhZDEyYjE2MWQyMTBjYSBsZWdhY3ktdHJ1bmsKKzk1MzYgZjJiMmE3ZWEyYTFlMzU1YzlmNDE5ZmM2ZDg2MGFjNzFhMjExY2I2NCBsZWdhY3ktdHJ1bmsKKzk1MzcgNmUzYjQ2OTVmZmFlMWNhZTAwN2ZjNDdmZWI4ODAyOGY3ZjllMDMyZCBsZWdhY3ktdHJ1bmsKKzk1MzggYzk1ZTYwZWFkNWUwNmExZTVlM2U5OTZmMmQ0MGRhY2I2N2Q0MmUzOSBsZWdhY3ktdHJ1bmsKKzk1MzkgMWQwYjkwMjg1MjNjNmViYjMxYjhjYWFmNDNkMzUwMTY4YjgxOTlmMiBsZWdhY3ktdHJ1bmsKKzk1NDAgNmI0ZjhhOTZlMWQ0NDRmNGZkNmE3NjQ3MmE2N2QxOTYzMDc0ZWFiZiBsZWdhY3ktdHJ1bmsKKzk1NDEgZTY4ZWViMzVkMDRkMWRiN2U3Y2JiMWJlNzJkMGE4ODg3OWIzYTcxYyBsZWdhY3ktdHJ1bmsKKzk1NDIgMGM3MDI2NDU3M2RiM2QzNTIxMzYxMGJlY2M1NTRjZDRhMDhlOTg1ZSBsZWdhY3ktdHJ1bmsKKzk1NDMgODg2NmM2OWIwYWZjOGRjNzkzMWI0YTUxOWY0MTA1NjVkNGM4MDhmZSBsZWdhY3ktdHJ1bmsKKzk1NDQgZmE0MjMwNjg1NzU3MmZmODUzYWEwMjk5NmJhNzBkOGRiZjRhM2VhNCBsZWdhY3ktdHJ1bmsKKzk1NDUgOTA2NTBiYmQ5ZGJiNmFjNTlmMzA3YjYyMGFkMjQ3YTU3MTlkZTc3MiBsZWdhY3ktdHJ1bmsKKzk1NDYgMmNkZjExYjJlZDliNDQxMGZhYmRlMTYwNDdkMmFkNjJkN2QxYmFjNiBsZWdhY3ktdHJ1bmsKKzk1NDcgMDBlNjEyNTYwNDkyYzZhYTM1YWU0MDViZGQyZGU3MDA3Yzc4Njc4OCBsZWdhY3ktdHJ1bmsKKzk1NDggNzVhMWFlYzZkOWIyY2QyNDM4ZDY5N2Q0ZGRkOGEyODc1YzgzNjFiZiBsZWdhY3ktdHJ1bmsKKzk1NDkgMDMxNGVjYmM1ZjVkNGUyNWJlNmVhYzc5MjQ0MjEyNTU2MmYxMWI0MiBsZWdhY3ktdHJ1bmsKKzk1NTAgNWMzNTNjNTIyYTQ4Mjc4MTQ4YjVlZmQ0YmM3YzgyY2I3NzhjYzBhMSBsZWdhY3ktdHJ1bmsKKzk1NTEgM2I1MTlhNmQyN2JiNWJlMmZlODBkZTM2Njk4YWE4YzI1NjQzMDEwMCBsZWdhY3ktdHJ1bmsKKzk1NTIgOGNkNTczYjcyZDRiNjEzY2FiMGUwZTNkZGM3YmFkZjE2NjhhMjVkNyBsZWdhY3ktdHJ1bmsKKzk1NTMgM2Q4YzFiOGY2MDk5MGU4NGMyMTVkMTE5MmNkMTUzMWJkZjUzYTE2YSBsZWdhY3ktdHJ1bmsKKzk1NTQgMmFlNDQxN2FjMzMwOWVlNjgyNTg3ZDBmZmFmMmNjODc5OTFhMTM5YSBsZWdhY3ktdHJ1bmsKKzk1NTUgYzFhZDM0YjNjMDY5OTUwZDQ3NGRhODkzMGE0NzU2ZmY1NDJmYzk2NSBsZWdhY3ktdHJ1bmsKKzk1NTYgMDMxNDU1MzQ4MmEyOWU3NDQzOGEyNTFiYzM2YmM2MjNiZmE2NjcxYyBsZWdhY3ktdHJ1bmsKKzk1NTcgMzIyZGNhNWVlMTQ1YmRjYjQ3ZGJkNDI0YTBiNTAxMDk4YWQ5ZjUxMyBsZWdhY3ktdHJ1bmsKKzk1NTggOTI0ZjhhMDExN2Q1ZmIwMTFkNWYzZTVhZDMxNzE5ZTM0M2Y5NjMyOSBsZWdhY3ktdHJ1bmsKKzk1NTkgMGJhYTJhYjQyZWU5MGNkZGFjNjZmMzMxMDJmNmJiODI3YWFkNTY5ZiBsZWdhY3ktdHJ1bmsKKzk1NjAgNDE5Yjg2YjA0YWU0ZDk4YjNlNmU2OGY5ZGEzNThmZTk1ODk5OTU1ZiBsZWdhY3ktdHJ1bmsKKzk1NjEgOTEzZTQ4YWFhYzc2MWVhYzQ1NDE0MmRkYTA2ZTg4YzBkOTc5ZTQ5YyBsZWdhY3ktdHJ1bmsKKzk1NjIgMGM2ODg3NzY1OTM5NTI0ZTQzODFjZGQyNDcyYTRmZjE4MWNjNGU2MCBsZWdhY3ktdHJ1bmsKKzk1NjMgOWIwNWMyMGM1Nzc2YTRmMjVjMzI5MTcxNGM3NDhlZmZiMjIzNjIzMiBsZWdhY3ktdHJ1bmsKKzk1NjQgZmNiMmUzZWU4OTk1OTU2YjgwNTc2YjU1ZTkwYTMzOTU3MDk1NzQxNSBsZWdhY3ktdHJ1bmsKKzk1NjUgYWI1MWRhMzQ3MzE2ZDRiZmFiNzRiMDVlMTEzMDQ1MDJkYjc0ZWI2YyBsZWdhY3ktdHJ1bmsKKzk1NjYgYTJlMDU0MDMyODk5YzYyNTg2YzA0MzZhYTlkMmExYzI0MWUxMjAzYSBsZWdhY3ktdHJ1bmsKKzk1NjcgMjliMTY4Njg3NWRhYTUxNTEzYzQxZGI2Mjg1YTIyMzY5OGJjMDZlZiBsZWdhY3ktdHJ1bmsKKzk1NjggOTY0NjBlZjMzZmRlZDdlZDEyZmQ3NWE4YTdiNTU2ZjRlMmZlNjFlMyBsZWdhY3ktdHJ1bmsKKzk1NjkgMmU4YmNkZTRjMjQ4ZmZiZTY5OTY3ZDc3MjM3NDdlYjFjZDg0NmE1MyBsZWdhY3ktdHJ1bmsKKzk1NzAgOGE1NTY0M2U2NjdmYTE3MmRkZDA1ZDI3NjEzZjM5OTJhOTAwM2IyZSBsZWdhY3ktdHJ1bmsKKzk1NzEgYWY4MjZiMjNmMDA2NDMwODM1ZTBhNzJjOWI2MTA5YTI4ZjUzNjJkMiBsZWdhY3ktdHJ1bmsKKzk1NzIgZTU1NDgwOTZiNDJhNWZiOTEyNmU4ZWI2MDY1ZjVlOWI4ZWY1Nzg5NyBsZWdhY3ktdHJ1bmsKKzk1NzMgYmMxOTc2ZmY2ZmZkMzBmYjM1MzQ3NDllODk3ODU5YTI3OTg3Y2FhNCBsZWdhY3ktdHJ1bmsKKzk1NzQgNWJiODg0NTI3NDQ2Zjk2NWQxZTIxOWFhZDYyYmNiNDEwMWMzYWQ0MCBsZWdhY3ktdHJ1bmsKKzk1NzUgMDBhODVhYjAzMzdmN2Y4N2NkZjYyNmQzYmRlZDUwODVjODQ0NWJmMCBsZWdhY3ktdHJ1bmsKKzk1NzYgMTY3NmZhZDdiNjNlNzUyOWQyZjE4YjUxOTllZjVhYjA5MzJiMWQ4YyBsZWdhY3ktdHJ1bmsKKzk1NzcgZjdmNTViYjZhM2IzMDgwZjJlMDhiYjI1MDEzYWJhOTlmM2RjZWQzMSBsZWdhY3ktdHJ1bmsKKzk1NzggODA4NDc5Zjg1YTI5YTNiMTE5ZWFmNWI1ZGNlN2FkOGRhZDllMzIxMSBsZWdhY3ktdHJ1bmsKKzk1NzkgMGRjMmZjYjA3NmFjYTViN2I0YTJmZDE1ZGQwM2M0YzA0NDc4ZTU5NCBsZWdhY3ktdHJ1bmsKKzk1ODAgZWZhYTAxZGVmZmQyZGIwNDIwZTNjOWFiNzhmZjZlNjNkMzY0OTRiMiBsZWdhY3ktdHJ1bmsKKzk1ODEgMmU1YTExNmU1NGVjZDVjY2UxZTQ3MDRjOTdlMzFmZTU4ZjQwNGExNiBsZWdhY3ktdHJ1bmsKKzk1ODIgZTcwNjFhYjI0ODUyMTVlNDRiYjQ3YWJlOTI4ZTYyN2EyOTU2ZjdjYyBsZWdhY3ktdHJ1bmsKKzk1ODMgMjhjN2Q1ZmNkM2FjOWRhMzFmNmE5MWY4YThkMmU3MWMxNjgxMWE2MyBsZWdhY3ktdHJ1bmsKKzk1ODQgMzE3NmRlYWNiNmQxZjBlYWE2NTAxMDY5ZTI5MzZkNzllYWE3Yjg4OSBsZWdhY3ktdHJ1bmsKKzk1ODUgNmM5MDBhZGIxZWMzYjE1YTEwM2MzYzhhMmI2YTY5MThjYzk1ZGI0NCBsZWdhY3ktdHJ1bmsKKzk1ODYgZWQ2MjU0ODA0NTYzNWU1OWJlYWYyN2VlNzY1ZThkZWJlMGFlYjA4YyBsZWdhY3ktdHJ1bmsKKzk1ODcgZjQzNjY3ODY2ZDVlNWU2MjFmYWQ1YTUwNzk3ZTg0MWY4ODRiMTI2OSBsZWdhY3ktdHJ1bmsKKzk1ODggMjgyMjM2OGMyNjZhM2YwOTk2ZDA2ZWJlMGRmOTAwNGY1N2E0OGYxYyBsZWdhY3ktdHJ1bmsKKzk1ODkgZjA2M2YxZWIyOTY0YmM0MzFhNzBjMjIwNmQ4NGRhYjYwOWQ4ODAyOCBsZWdhY3ktdHJ1bmsKKzk1OTAgZWNlNDEyM2UzNmVhMmNjOTliNWRlMzJjOTIxYmU3Yzc1MzExYmM0MSBsZWdhY3ktdHJ1bmsKKzk1OTEgZjVmMzA1ZDdhNjE3NTc0NGUyYzNkYzcxYTRmYWRkZjkwNzI2NjUwNSBsZWdhY3ktdHJ1bmsKKzk1OTIgZmEwOTM3MmY3ODcyZGJhYzQxMWJkNzViMjU3N2MzNjhiOGFmMmFjNiBsZWdhY3ktdHJ1bmsKKzk1OTMgZWE3ZGM1MTBlMmRmNTY5ZTg1YjA3MGNiYjExN2UwNjJjNzZmYzAwMCBsZWdhY3ktdHJ1bmsKKzk1OTQgNDE1MTRkMWVkNjY0ZTJhZmFjMWJkZjVkMzE1YTBlZmZjZGQzYmY4OSBsZWdhY3ktdHJ1bmsKKzk1OTUgNDE5ZGNhMmIzYTYxNzkwYjQzZWM1OWRjMWZhMzFhMWEzZDljZGE1MSBsZWdhY3ktdHJ1bmsKKzk1OTYgZTkxMDhlOTdhNWEwMTdlMDI3ZGYzM2NkYmZhNTU0M2U5MTQ4MjM4ZCBsZWdhY3ktdHJ1bmsKKzk1OTcgNTE2MTg5OTg0YjBjYTM5NGNlMmY0YmZiNWFlYmNiZWM1ODNkY2VkNiBsZWdhY3ktdHJ1bmsKKzk1OTggMGVmZWQ0ZDMzMjNiMTMwMmFjY2EwMzliZDcxNmU1Y2NmOGQyZTM2MyBsZWdhY3ktdHJ1bmsKKzk1OTkgYzg3NDVkMjA1MTIyNzE2YzllMTBkYjc5OWZiNmYxMmY5ZTY4NjQ4NCBsZWdhY3ktdHJ1bmsKKzk2MDAgNDFkNmRiOGUyNmRjMDMzOTNkZjg3YjQ5MjcyYzViMjQ5YmIzMjU2OSBsZWdhY3ktdHJ1bmsKKzk2MDEgNWQ1MTdkZGNiZDJlZjUxOTMzZThmMWZlNGNjMWM1ZDMyMzNlNTAzNyBsZWdhY3ktdHJ1bmsKKzk2MDIgYzAzN2QwMGIxZTJjYmE4OTg1Y2I2MzljMTA2N2IzZjY0NTU3ZjE3MCBsZWdhY3ktdHJ1bmsKKzk2MDMgZGU0YzgxYzA2OTk0MjliZWU0OTdmZDhiMWFkNzQ0ZjhjNjkzZDVmOSBsZWdhY3ktdHJ1bmsKKzk2MDQgZDJjMTEwYWNjNjBjMTY2MjYyOTU1NzBmN2Y2YTU5MzAzZjJjMzk5MCBsZWdhY3ktdHJ1bmsKKzk2MDUgMWM0YmFhZGE1NTllMjMwZDM0MjE2MTZhMmExZjZhOTljOWU3YjZiYSBsZWdhY3ktdHJ1bmsKKzk2MDYgZGU0ZGNhOWU0Nzc4Y2ZlZjk3YTlhOGNmMTc3OWQ3NjkwYWUzNGJiOCBsZWdhY3ktdHJ1bmsKKzk2MDcgOTczMTViZjA4ZmFkNjIzZDYyMDRkMDVlMDdiNzZkMzc2Njk5MDAxZCBsZWdhY3ktdHJ1bmsKKzk2MDggZTRjMzFkYzMwNjIzYzZkOGE4MTYwNzUwODEwODU2ZTNjZmYxNGEyMCBsZWdhY3ktdHJ1bmsKKzk2MDkgZGZkZWFjNWUxOGM2MjVhYWQ5OThhMGFjN2U2MDRiZjVkNWYwNzRlMiBsZWdhY3ktdHJ1bmsKKzk2MTAgOTZmYTY3NTNlOTU2Mjc5YjViNjllNTNjODZmMTYzNGZhNTI4NjQzZCBsZWdhY3ktdHJ1bmsKKzk2MTEgYmE4NDllNDhmOWNhZTIzOGM5MzNhYmFiMmM5NGE5Mzk2ZjBlNWI3MCBsZWdhY3ktdHJ1bmsKKzk2MTIgMzkzOWY5ZmY2NjVmOGZiZWEzNWRjYTU3NzFlOTk2NDMxODVkMDA0OSBsZWdhY3ktdHJ1bmsKKzk2MTMgZWZhMjI0MzNlODU1ZGE0ZjQ1NWIxZTVjMGM1NTM2ODcyNDVmNjdkNSBsZWdhY3ktdHJ1bmsKKzk2MTQgOTNmZmU2NDFhNTEyNzZmZjRkYTE3YzJmNTRhYzlkMWQ4ZDA5MmM4ZSBsZWdhY3ktdHJ1bmsKKzk2MTUgMTZhM2NkZDJmMWQxM2I4MjAwOThmMzBmM2Y1MTRkMTQ0MTcyYzYxOCBsZWdhY3ktdHJ1bmsKKzk2MTYgYmY5MWMwZTE2NWFhZGNmNWVmYjEwNjAxYjAzZWZiN2E2ZDUyNWQzZiBsZWdhY3ktdHJ1bmsKKzk2MTcgZGM4Njg3YjUzZGQwZjE3NjhhMDFiOTY4ZWQ5MjUzODQzYTc0NGFkNyBsZWdhY3ktdHJ1bmsKKzk2MTggZTdiZmVhNDFmNjE3ZTg4ZTg3NTZmYzE1YTQ4NzBmZWUzYTYwMmM1MyBsZWdhY3ktdHJ1bmsKKzk2MTkgYjgxZmI2N2Q5MDhkN2E5NzNjZTEwMjJkNmZmMDM0ZTgwMDk0N2IxYyBsZWdhY3ktdHJ1bmsKKzk2MjAgYWZmMWU3YjFmNTIzZDczMDViYzNlMTFkMzJjYTcwMjU0MTg4NTAwZCBsZWdhY3ktdHJ1bmsKKzk2MjEgM2YwYmU3ZGU3Y2E1Y2E1NGFjZmNhM2UxOTM0YzNkMzE4OTdhMTg0MyBsZWdhY3ktdHJ1bmsKKzk2MjIgNGVmNmE4M2IyZTYyNWUxNjM1OWNlZmExNTg5N2Y4ZWFhMTBhY2ZhNyBsZWdhY3ktdHJ1bmsKKzk2MjMgNjA3NDg0N2ZhZDFkZTQ5NzAyOGVhOTJkNGZkMGVjZjNhOGIyYzY0MiBsZWdhY3ktdHJ1bmsKKzk2MjQgNDllNGUzZjMwZTU4ODAyYmE2ZGFiMGVkMjUzZThmY2MwN2FhYzgzZSBsZWdhY3ktdHJ1bmsKKzk2MjUgNTEyOGM2MDcyYWE1MWJhNzE2YmM3ZmIzYmRkMDAyYTU4OWNkZDg2MCBsZWdhY3ktdHJ1bmsKKzk2MjYgZDQ4Yjk5ZDg1NjE3NDJkNWQ3N2M4NWRmNTU4MTI3ZThkNmJlZDliOCBsZWdhY3ktdHJ1bmsKKzk2MjcgN2VkYzMwZGY3M2Y2YTJjYjIwZTVhY2IyZTZlM2EwYzZjODU4ZTdmZiBsZWdhY3ktdHJ1bmsKKzk2MjggYjg2NDAyOWE1YmM1YzVkMDNhMDEzNTkzZjhjMjUwMzBiMTU2NzMyZCBsZWdhY3ktdHJ1bmsKKzk2MjkgZDMzOTk1NGVhNTdkODk4NzkzMWM0Njc4Y2I5YzE1NDU1NGJlODkwYiBsZWdhY3ktdHJ1bmsKKzk2MzAgZDM5YTgwNTg1MmMyMGFlOWM3ZWY4ZGY3YmJiOGRlZmViYzkyNzE3NyBsZWdhY3ktdHJ1bmsKKzk2MzEgYTc2OTBlZjVlMTU5MzdlMTAyODBlOTUzNGM0ZWYxYTI5YzMxNGMyNCBsZWdhY3ktdHJ1bmsKKzk2MzIgNzQ5MTZjOTZkZGI5NjUxNGY0NTJiZjQ0ZmZhOWEwMzgyMjJlOWZlYSBsZWdhY3ktdHJ1bmsKKzk2MzMgMzBhYjM5YzJiMTg2MmU0ZjBkZWMzYjhkNGVlNmVhYWFkZGI3MDc3MiBsZWdhY3ktdHJ1bmsKKzk2MzQgY2U2YWQxNzBjMGNlNzJlOTA2ZmU5N2IyZmNmZWRjNjlhOTFjOTMxMSBsZWdhY3ktdHJ1bmsKKzk2MzUgYTZmYTlmM2NhZDEzN2NhYTVmN2M1ZTJjNzlhOWI2NGI3YWQxZmFlZCBsZWdhY3ktdHJ1bmsKKzk2MzYgZmI3MWI5MmQxNDNhYTFlMTZiNWIwMjRjYTBhMWMxOGNkOTIxYzkwZCBsZWdhY3ktdHJ1bmsKKzk2MzcgNDlhMjBkMDBlMzRjZTVmNWM2ZGY3NTljMGZiNjE2NTFhNjI5OTQ0ZSBsZWdhY3ktdHJ1bmsKKzk2MzggYTY0YTQyM2Q2YjU0MGFhNjQ0NzExNzZmYzZjZGM2MWYwNzE5NGExYiBsZWdhY3ktdHJ1bmsKKzk2MzkgNWFiNzA4MTgxZmE2MjIzMmYwNjU0NmZhZGZmMmUwMjhhMTFmMmZkMiBsZWdhY3ktdHJ1bmsKKzk2NDAgOGZiNWZkMDc1YjJhYjEzMjAzODRiY2ZhYjAzZjUwZGU3NzI2ODhlOSBsZWdhY3ktdHJ1bmsKKzk2NDEgZTU2NDZlZWNlYWU4ODc5ZmMwYTNkYzUzZGRjNzcwOTUzNTgwM2JiNCBsZWdhY3ktdHJ1bmsKKzk2NDIgYzNiNWIxYzI1YzUxYzdmMTZjYzdhOGJhMDNlYzZiZjc1Zjc3MmVkMyBsZWdhY3ktdHJ1bmsKKzk2NDMgMGQ1YTlhMGU3ZDY0YTEyZTAyYmU3MDczNTcyNTgyZDNkZDJiNjYzYiBsZWdhY3ktdHJ1bmsKKzk2NDQgNjZjYjAwMzE3YWNlYmI2ZjU4MDMxOWEwZjNmZjU4MGIzZGY2MWQ3ZSBsZWdhY3ktdHJ1bmsKKzk2NDUgZTU4YzdiNTBlOWI5YzZiOTZkODkzM2M1ZjNkMjc2YjU2OTI1OGVkMCBsZWdhY3ktdHJ1bmsKKzk2NDYgMjEyNTk3YWY4MjliYmNhYmMxNzk3N2RjNTgzZThkMmI4NDUxZTUzMiBsZWdhY3ktdHJ1bmsKKzk2NDcgMzczZDc4MTE4MTEzYjhjZjRmODkwODY2MmUzMDNkYjU3N2YyZGMwNiBsZWdhY3ktdHJ1bmsKKzk2NDggYzVlNzY3ZTIyYmQxYzNlNjVkMzZiNjIzZmE4OWU0OTFjZDU4OGFlZSBsZWdhY3ktdHJ1bmsKKzk2NDkgY2U0NzY2ZmIzZjU2M2QxNzYzOGM5MWExYzQyNGIyNTU2YmI2NjU5MiBsZWdhY3ktdHJ1bmsKKzk2NTAgYjViMGMzMjRjZTU5ODc4ZmNhZWVhYTE1M2VmYTFkMDhiN2MzN2IwMCBsZWdhY3ktdHJ1bmsKKzk2NTEgMGE0ZTI5YTI4NjU1ZTQwNDMwZWNmMjRhODM5YTcxOGRkMmY3YTcyZiBsZWdhY3ktdHJ1bmsKKzk2NTIgZGM5YmI0N2IzNTUyOGQ3ZGYyNjdjY2EzZDYwMWY2MTMwNDNjZjQ1MSBsZWdhY3ktdHJ1bmsKKzk2NTMgYTI4YmY2MmFjMzM1YjVmMzA2YTNlZTU3ZWM5MmRhMjE3ZjhhNjFiMiBsZWdhY3ktdHJ1bmsKKzk2NTQgMGJkMTg1YzJlNTgxMDNlMWU4MGQwOTNmYzM4OGUyMmQ3MzRhZDdhMyBsZWdhY3ktdHJ1bmsKKzk2NTUgN2MwMDRmYzEwOTg3MzdhY2YwMTU5NDJlODdiYzY2NjNhZmZkODE0ZSBsZWdhY3ktdHJ1bmsKKzk2NTYgNDA5ODdiODZhMWM3NGZiODVjOTZmZDc5NzJlMzQ2YTA3YWNlNTU5MCBsZWdhY3ktdHJ1bmsKKzk2NTcgN2Q2MWZhOWI1N2E4YzU0MmE5NTZhZmFiMmExYjMwYzNiMzljZDJjMiBsZWdhY3ktdHJ1bmsKKzk2NTggM2E5NjBiMmUyNjY3N2MxYmM1YmU0YjRhNTE4OWIwZGQxNmVkOWVkMiBsZWdhY3ktdHJ1bmsKKzk2NTkgNGYxMGQyMzNmMWRjNmQzZDBiNDE2YmY5YWJjNjdhMTQ2NzMxNmQ3NiBsZWdhY3ktdHJ1bmsKKzk2NjAgNTkzNjJlYTdlMGY4YjQxMDY0ZDE5NTAwOWZiZWI5ZmQyNjcwNzU2OSBsZWdhY3ktdHJ1bmsKKzk2NjEgZGU1Y2I3ODllOWYwZjJmODdiOTkxYTdiZDhhZTk3NTdjOTg2OWNiNSBsZWdhY3ktdHJ1bmsKKzk2NjIgNmY3ODE5NWJmOGY2ODdmNzBlYzU4NjhhOWRmNjIxMWRhOWQzYTYyMSBsZWdhY3ktdHJ1bmsKKzk2NjMgYTU5NmJiZTcyNTc5ZDhiNWUzNGNmNDEzMTc5ZjM2ZjlmZjVkNzg0OSBsZWdhY3ktdHJ1bmsKKzk2NjQgNmU1ZWI4NDUyNDZjMDliZDliNDU0M2RmMGQ2MTU3NjRlYWNkYTc1YyBsZWdhY3ktdHJ1bmsKKzk2NjUgMmE5YmE1OWFiYzM4MmI3OWYxODI4ZDg0MzUzMjY1YTBmMDU1NGFjYSBsZWdhY3ktdHJ1bmsKKzk2NjYgZWU0YTFhMzBkN2NlOTI3YTc5NmE0NjMxZmFiNWJiMzc0N2U0ZTNjYSBsZWdhY3ktdHJ1bmsKKzk2NjcgZjNjYzhkNTNhYzgwM2RmMmFhMzBkMWIxZDM3NjdiMDg1N2ZkYzhjNCBsZWdhY3ktdHJ1bmsKKzk2NjggMWY5ZDk0MmYxNTZjYzkzMmZkZWY5MTMzNDU1YjJmODA0ZDBkMWZjMCBsZWdhY3ktdHJ1bmsKKzk2NjkgNzA1NGJlNWFkN2Y2NzQxYWY5YmIwNjU0N2YzOTlmZGM2OWY0ZGE0MSBsZWdhY3ktdHJ1bmsKKzk2NzAgYWY5OGI0MjE0MjRjYzM5YjhjNmE4Yjc0YWM2ZjZlOTRkZTQ2ZDlkMSBsZWdhY3ktdHJ1bmsKKzk2NzEgZTI3OTU3MmUyZGEyNTUxNjY3MTgyZWRhMjZhN2ZlNTA3M2Y4NTZiMiBsZWdhY3ktdHJ1bmsKKzk2NzIgYjAwOWE0YzI0MTg4ZDUyODNmYmViMDJjMzM1MzZhZDVmOGMzYWRjNSBsZWdhY3ktdHJ1bmsKKzk2NzMgYzEyM2E1YTU5Y2RlMjFkMGMxMjhhYTNkYTJlZGU5YTQwNjZmYTI3ZiBsZWdhY3ktdHJ1bmsKKzk2NzQgMzA5ZmZmZTc2OGE2MjQyMTg1NTI5MDA1MDdkNmQ3ZTQ1NmNmNzE2MyBsZWdhY3ktdHJ1bmsKKzk2NzUgMjZkMDc3MzViYTRhNWIyNjdhYmZjODcwZTYzZGY2ODk5ZmM1MWFhYSBsZWdhY3ktdHJ1bmsKKzk2NzYgNWNkMmY2OTliZjY5MTY2YWQ3YTVkNTlmMWVhNjVmYjUxOWJjN2Q2OCBsZWdhY3ktdHJ1bmsKKzk2NzcgZGIwMDdhMmNhN2I2MzY3NzM1MjFiNWJlZTNkZDcyOTJlNTRhOWVkNCBsZWdhY3ktdHJ1bmsKKzk2NzggOThhOWRhNTIwZjFkOGMxOWFiNWJkNGUyMDMzMjdmNGU4Y2NjNTIxMyBsZWdhY3ktdHJ1bmsKKzk2NzkgNzIwZTkxODM5NjFlZThhZGQ3NDAxMzIzYjljNWMwMTUzZGRmNTQ0OSBsZWdhY3ktdHJ1bmsKKzk2ODAgZmVkM2QyMDBmYjU2NWQyYWNlODAxYmM2MTEzNmE4YjM3ZmNiYzgxZSBsZWdhY3ktdHJ1bmsKKzk2ODEgOGMxMjlhNTY3ODY3Nzk1MmEzMDI4YzlhMGNkMGI4YTRiOWQ5YmU3ZSBsZWdhY3ktdHJ1bmsKKzk2ODIgNDhhYjY2ODc0YjExOTFjZGQ0NDNhMGUzMTMwZjAzOTlhZDA5ZTkyMiBsZWdhY3ktdHJ1bmsKKzk2ODMgMDlmZmFiMjczZWViNTY1YTc2MTk1OTRkOTA1OTY4NTJmZjRkOGUxZSBsZWdhY3ktdHJ1bmsKKzk2ODQgM2YyNTVhZWRmNjIxZTk1ZTI2NzI5ZjNmYmQwOTAyNGRiNzRhMjRhMSBsZWdhY3ktdHJ1bmsKKzk2ODUgMDZkYjEwYzc2ZGM5NTJlM2ZhMDE5NGQ4M2I0MGM0NzM5NzZiY2RiOSBsZWdhY3ktdHJ1bmsKKzk2ODYgY2UyNzFlNWY5YmM1YWM4OTdjMGI5YTRkODJjM2RhNzBlNTg2MTZiNSBsZWdhY3ktdHJ1bmsKKzk2ODcgYzlmZTM1YTgyOThhZDg1OTZhNjMxMWE3MGRhMjlkZGViNjdiYjMzYSBsZWdhY3ktdHJ1bmsKKzk2ODggYmNjZGVjYTgxNjY5Y2UzYmQzMDE0YTMwMzEwY2Y3MWY1MmZhNTIwZSBsZWdhY3ktdHJ1bmsKKzk2ODkgYzc2NDIxN2FlNmViOTJkMzFkOTAwNWNmN2ViMjljOGFjNWMzMTcxNCBsZWdhY3ktdHJ1bmsKKzk2OTAgYjliYmZhMTY5OTIwZTQ1NWIxMjcxM2Q4MzJhODg3ZDlmOTIxYjMwMCBsZWdhY3ktdHJ1bmsKKzk2OTEgZmY1MjRiNjliNjY0YTNmYzY1MWY5ZmU5MzdlODg3NDk5MGI1Y2FiNCBsZWdhY3ktdHJ1bmsKKzk2OTIgNjIyMmQzMzcxZmI4MGViODQwZWU1MmQ4MTIzNmMxZjNiODk2OTc5YSBsZWdhY3ktdHJ1bmsKKzk2OTMgNWE3ZjI2OGEwNzgxYTk0YWRjNWM5ZDc1MzVkOGIxOWVlOGM0NmNlOSBsZWdhY3ktdHJ1bmsKKzk2OTQgMTZlY2YxNTU0YTgzNTc5MzgwZTczNzZlZWViZjExZmQzMTk1ZjEyZCBsZWdhY3ktdHJ1bmsKKzk2OTUgYmMwMDg2NDA0YTlhNTUyOTIxYmMzMmFhMTE4MmJlZTM1YmYwY2I4OSBsZWdhY3ktdHJ1bmsKKzk2OTYgOTBhMzVmMWI5MDA4NWZhMTlmMzQwODQ0ZTEwNTI2YTZmYWMyMzkwNCBsZWdhY3ktdHJ1bmsKKzk2OTcgNjQwYjk3ZDEwNWRmNzExNTJmOTczMmFkNTMzZGZiZDM1M2VkMzM1ZiBsZWdhY3ktdHJ1bmsKKzk2OTggZDBjYTgxNWM4MDcyNTQ4MTNlMjNjODhjOWRjZDAyZmMxYWIxYzk4NyBsZWdhY3ktdHJ1bmsKKzk2OTkgOTVjMTAxOTY0NDE0OTg1NzMwYTg5MWZkMzA2OTk2YmNiMGI0YTYxOSBsZWdhY3ktdHJ1bmsKKzk3MDAgMTBmZGYxNmY0ZGU5YzFmOTRmNmI4NTIzOGJjNjQwYjBjMzU0MTU5NSBsZWdhY3ktdHJ1bmsKKzk3MDEgOWRkZTA3YTU5M2Q4M2ZjMjMyYzcwZGIwMTI5MTMzMzAyYzI3YTZiNSBsZWdhY3ktdHJ1bmsKKzk3MDIgZDMzZDQ1NjIyZTY3MTFkOGIxYzk3OWNkNTAwZmFhMzcyNzA1MDhkZCBsZWdhY3ktdHJ1bmsKKzk3MDMgMTFmMzRiZTBiZTExZmY0Mjc3ZDUwYTJhNDc5ZjY5ZDQ3OWEwNGEzYyBsZWdhY3ktdHJ1bmsKKzk3MDQgNDc4MDJlMmY1YmVkYjRmMjJiYmM1NGQzMTZmODExOGNmMDM4MWJkMCBsZWdhY3ktdHJ1bmsKKzk3MDUgMDQ1ZmZhNGM1NmY3ODU2YTIzNGE5NTk0ZGRkZDc2ZTUwMjZiMWNmYyBsZWdhY3ktdHJ1bmsKKzk3MDYgYmM2NDgyZjdlNzhmYTM0NjZiOGI5NDFlYzkxYjk3YWQ5ZGQwYWU0MCBsZWdhY3ktdHJ1bmsKKzk3MDcgYmMyOGEwZWE2NjQwZjc3YjRiZGI0MDg0ZjI2MDYwZjQ5ZWJhNDg4YSBsZWdhY3ktdHJ1bmsKKzk3MDggMzc1NzIzYTc1NTljNzE1ZTA5NGJlYmMyNTNmMTViZjAxZTg4NTEyZiBsZWdhY3ktdHJ1bmsKKzk3MDkgMTc3YWQ3M2JmMWE5MjVmMDA5MzM1ZDdkN2ZkZTFhOGQ5MjI1MGJiNCBsZWdhY3ktdHJ1bmsKKzk3MTAgNzRjNTcyODhhMDJiOTk2N2JhNjQ4ZjRjYjVmYmUzM2IzM2Q0YzI5OSBsZWdhY3ktdHJ1bmsKKzk3MTEgMDhjNWJiZmFlNTJjMGRmZTA2M2VmZTgwMjMxZTczNmIwMDY2NjY5MiBsZWdhY3ktdHJ1bmsKKzk3MTIgMjNjNTA5YWEzZjBkOTQ3M2NlNTJhMTVhNzYwMDI0NzA2Yzc3Njc3NiBsZWdhY3ktdHJ1bmsKKzk3MTMgZGViZThlMDgxMjYwODVmNDAwYjNkYTYzYjBkMjNkNzY0MjRkY2U2ZCBsZWdhY3ktdHJ1bmsKKzk3MTQgZmQ3YTU5OTNkMDZkYWEyODQ4ZmMxMGMxN2IyZGE3MTU4MWI0OGIxNyBsZWdhY3ktdHJ1bmsKKzk3MTUgY2RiNGE4MTM3OWFkN2U1OTczZjE1YmVlNTliMTZmNTZlNDI2NDBiYSBsZWdhY3ktdHJ1bmsKKzk3MTYgYWE1NGQ3YzNkYWY5MDE2N2E5NWZhNmJkYjQzZmY3M2Q4NzNiYTQ3ZCBsZWdhY3ktdHJ1bmsKKzk3MTcgMzA2ZjczN2JhYjU3NmE4Mzg5MzJiNTk4NGE0NjZkY2Y3NjVkNTZmYyBsZWdhY3ktdHJ1bmsKKzk3MTggMmI4MjIzMWE5N2NjNmFiZjc2NWQ4M2E0YTIwOTZkYWIxMTNmNDExNyBsZWdhY3ktdHJ1bmsKKzk3MTkgYjU5ODU1NDJiYWUxZTY5ZjY1M2E0Nzc3MDFmYjY3ZGEwZjFiZWU4NiBsZWdhY3ktdHJ1bmsKKzk3MjAgZTc1MDA2MDY5MzY3ZmM2ZjExNTMwZDZlY2I1ZGRlOWRhNWZlZGQ4MCBsZWdhY3ktdHJ1bmsKKzk3MjEgNWY1YjllODcxODg2Y2Q4YjllYzQxNTE5ZTZlMjUzMDRjZTE1OTU0OSBsZWdhY3ktdHJ1bmsKKzk3MjIgMGI1M2MwMzkzYzg4MjYzZDdlNDFiOGYxOWEzYmIxZGIyZmQ0Yjk3OSBsZWdhY3ktdHJ1bmsKKzk3MjMgYTcxMTY4NjQ5ZGM1MWVmODNiMzU1ZjI2ZDk5MjdlYjg3ZDRjM2RmOCBsZWdhY3ktdHJ1bmsKKzk3MjQgMTkzZDcwNGNiY2M4NTFhZTczOGMxZmI4YTE1YTQ0Y2MyYzBjZWNlNSBsZWdhY3ktdHJ1bmsKKzk3MjUgMTI3MmI1OGU4NGFlYjZjMmRmN2EzOWMwZjI3YmQwMGJhZmFmOTQ2NCBsZWdhY3ktdHJ1bmsKKzk3MjYgMjg3NjIzY2NlMjg5NDUzZTI2Y2M4OWJkYzllYTlhY2I0MzY5NzUwMyBsZWdhY3ktdHJ1bmsKKzk3MjcgZjBiYjNiY2YzOTdiMjU0OTZjMGQ3YmU0YzlmMTgwYTRkYzRhMzFjOCBsZWdhY3ktdHJ1bmsKKzk3MjggYzY5ODY5MGEyN2IyNTkxMzQwMDUxYzBjYzNjMGI4ODc2MjY1OTQwZiBsZWdhY3ktdHJ1bmsKKzk3MjkgOGEwODAyNWVmOTNkOGY5NTQzNjY5ZmY3ZTM2MGNjYTE5ODkyODFkYyBsZWdhY3ktdHJ1bmsKKzk3MzAgZDNmZDIxODJjZmI4ZWQwMmQ0MjQwMTZiNGU2YjhjOTlkMWIzNjE3MCBsZWdhY3ktdHJ1bmsKKzk3MzEgNGU3NDAyYzhlNDYwYmZiZjhhM2IzOGIxMWY3NDdlMmVkMjlmMTBiOCBsZWdhY3ktdHJ1bmsKKzk3MzIgODEyNjE1ZTU0NTUwZTY5YWRhZDcwYzFmMzg2OWIyZGJkOTg4OGIzYyBsZWdhY3ktdHJ1bmsKKzk3MzMgY2E3OGIwOTVlY2YwMTQ2M2UzZTY5NTc1Y2FiOTFkOGFjMTJmOGFjZiBsZWdhY3ktdHJ1bmsKKzk3MzQgOGM3NDlkZmM0OWJmYTM4ZWQ2ZGYwMmI2NGNiODdlNGRhZjJhYjZjZSBsZWdhY3ktdHJ1bmsKKzk3MzUgOGIwZDZiNjRhMGVhMzljZTMzZTk2ZWQ5NWNiMjZiYzBhNWFhOWY3NCBsZWdhY3ktdHJ1bmsKKzk3MzYgNjE0ZDhhOTA4NGVhZDQ3NTgwMGQxZjNkOWQ5YmY0NDc3M2U3MGJiYyBsZWdhY3ktdHJ1bmsKKzk3MzcgN2NkYWE0NDk1NTMwNzkzYmFlY2U3MGUzZTdiMzZmNzkzN2IzNGRkNCBsZWdhY3ktdHJ1bmsKKzk3MzggYTdlOTUyNGEyYTUyYzY0YWEyODYzZTA2NTFlM2U4ZGI3NjVlYmY2MCBsZWdhY3ktdHJ1bmsKKzk3MzkgYmJmMzUwN2VmM2ZlZjI4NDBhMWQ1MjRlMGE5NmI0MjNmOTAyMTQxMyBsZWdhY3ktdHJ1bmsKKzk3NDAgYzA5OTA3MTA0MDkyYTU5MjUwZjdhN2Y1YzcyYWFiYjkwYzRkMjBmNSBsZWdhY3ktdHJ1bmsKKzk3NDEgNDFhOTI4Y2JjYzVlZWI4ZTBhNmI4ODc4MzcxNzMwMjZkMDNkMDZiZiBsZWdhY3ktdHJ1bmsKKzk3NDIgYjhkNDg0MTI1YzkyZGQ2MjUwZTQ4ZmE3Mzk4ZTljM2ZiMDExNDhiMSBsZWdhY3ktdHJ1bmsKKzk3NDMgYzAwMmZmZDFmYmJmZTdiYTRjYWVmYzA1NWQ0ZmEwMjc0YWFjMDRjYiBsZWdhY3ktdHJ1bmsKKzk3NDQgODNjMGU5ZGQ0MjIxZjg2YWU3M2I0NmQyMjg3YWMzYWIyYmViNzRkYSBsZWdhY3ktdHJ1bmsKKzk3NDUgY2ExNGZkYjk1NWVmODI3YmI0N2M2OGY1MGZlOTQxOWFmNWQ5NzFhNSBsZWdhY3ktdHJ1bmsKKzk3NDYgYTJmNGM5NDRjYjg3MjFiZmM2NmViMmY5ZDY3YzViYjM4Nzk5ZWVjYyBsZWdhY3ktdHJ1bmsKKzk3NDcgNjgyZDNlNWIyNjdmNDcwYjNjMTAxNGIzMDI1MzUyYzRkOGIzZGVkMSBsZWdhY3ktdHJ1bmsKKzk3NDggZjU1OTY5YzFjM2Q1NDE5Njk4MmQ5Y2EyZmZlYmM0NzFmMzU3ZTlkMiBsZWdhY3ktdHJ1bmsKKzk3NDkgMDA2MWQzOTE2YWU0YjE1ZTllMDYxOWFmNzM0ODE1NWVlMmVkZjg3NiBsZWdhY3ktdHJ1bmsKKzk3NTAgYzgxN2Y4NmNlN2RiNjcxOTNhNzQ3NGM0MmE0OGM1ZGJkNGI3NGRhZCBsZWdhY3ktdHJ1bmsKKzk3NTEgMTViYTY4YzMzZWQxY2VkYTMwMzI0MjAzZmFlNjlmNWUxYzdiNTk5OSBsZWdhY3ktdHJ1bmsKKzk3NTIgZjVlYTFiMzBjYjNmNzQ5ZTViOThkMzAwMGQzM2Q0Yjk0YWNmOWMxNSBsZWdhY3ktdHJ1bmsKKzk3NTMgMDBjZDlmZTRmNmYyYjA4OWRiNWI0NWRhMTRmZDkxM2YzZjFiYjhjMiBsZWdhY3ktdHJ1bmsKKzk3NTQgMzlkZTQ5NDM0ZGY0MjYxMWM0N2I2OWFmNjg5MjQzMTI2NmY0ODNkZCBsZWdhY3ktdHJ1bmsKKzk3NTUgYmY0ZTc5MGJkNjFhNGI5YjEzOTU1ODE4NTE0NzA5M2M1MTFhYTE3NyBsZWdhY3ktdHJ1bmsKKzk3NTYgNTlkMjc2MWJhMWNmY2FhMGMyZjA0OGE0MDFhZTMxMWE3MTNiOGQ3OCBsZWdhY3ktdHJ1bmsKKzk3NTcgNTJmYmI3MzEyMTAzNDViMDEzNTRlNjQwYjQ0NzA1Y2EyYTcxZTc4MyBsZWdhY3ktdHJ1bmsKKzk3NTggZjIxNGVlODgzOGRlNjgyNmYzNjBjNDFkNzBiODkwM2Y2YWYwMWM2MSBsZWdhY3ktdHJ1bmsKKzk3NTkgMWZkNzg3Mzg3OWFmODJjOWI5MzhiNTVkYWYzYmMxZDdlYzBiMTBkZSBsZWdhY3ktdHJ1bmsKKzk3NjAgNmQwYzQ4NWJhNWU0MTkzYzI2YjM0NDMzNWIyZjYyOTlhZTFjMzI4NCBsZWdhY3ktdHJ1bmsKKzk3NjEgM2EzZWUwNzVkZmI2OTgxZGM2OTQ1ZjEwZTk5MjU1ZDYzNmU1MjZjMCBsZWdhY3ktdHJ1bmsKKzk3NjIgMmYwY2U0ZmI4MTBiYTMwMWJkZTJkMWY1ZTZhOGJmMmMzYWZiYzVjNSBsZWdhY3ktdHJ1bmsKKzk3NjMgZWYyNjlhYjc3MGJjYzViZTZlYjJhNmM0Nzc2MTRmNTgwODVjYmY5NCBsZWdhY3ktdHJ1bmsKKzk3NjQgMWQ1MTE3OWNmN2M3ZmU0NTQ5NjI0ZTg5NmJiYjgxOTZjMGRkOGM4NyBsZWdhY3ktdHJ1bmsKKzk3NjUgYWYyYmM1ZjQ1OTE4YTcwMTIwODhiZTU1N2RhMWM5MmQwYjQwOWRiNyBsZWdhY3ktdHJ1bmsKKzk3NjYgNDE0OGU0YmM4YjI4NWY5YjEwZDljNTQ0NTljYjFlY2JlNjAwOGUzYyBsZWdhY3ktdHJ1bmsKKzk3NjcgNmZlZjAzMGE5NWQ0OWM2NTk0MmUxOGNjZTc5MDVlODI5NmRkNzUxOSBsZWdhY3ktdHJ1bmsKKzk3NjggNzJkNTMxZDU0NTcyOWIwMDM2ODkwMjU5ZmY2MDcxNWExYmYwZmYyYSBsZWdhY3ktdHJ1bmsKKzk3NjkgYjdmODRkMTc5ZTUxYTAzZDVmNWIxZDYyMjlmNGYxNzhlMmEyZjViNSBsZWdhY3ktdHJ1bmsKKzk3NzAgNmFkMjM0YWQ4ZGU1YzZkNTlmNmY3MDUzNGQ4Y2IwY2E0NzY0YTI4OSBsZWdhY3ktdHJ1bmsKKzk3NzEgMGRiZWM5OGFjZmM5Njc0NjQ5YTdhNWNmMTZhZDFmZWU4ZWEyMzU5NyBsZWdhY3ktdHJ1bmsKKzk3NzIgOGU2NGM1ZDU1NDhhMmE0MGI0NTVjYWExNzU0OWIyNmExYzJjZDlkZSBsZWdhY3ktdHJ1bmsKKzk3NzMgMjg1NDQ5MjY4YzM3ZjA4ZmIwYjhjMTllYTA0ZGY0NjAyZWZiODdkYiBsZWdhY3ktdHJ1bmsKKzk3NzQgYjAyNDk5MGQ2MWVjOGUyM2Q2ZGE4NjVjNTkzNjVmMzYxNTdkZWYxYSBsZWdhY3ktdHJ1bmsKKzk3NzUgZmIwYzViMzA3NDc2ZGVhYjIxZjg1OTI4NDY0MzY5YjBkZmM4ZDJhZSBsZWdhY3ktdHJ1bmsKKzk3NzYgMzcwMzQ5NTMxNWU5YTY0MzMyOTE5NGUxYmI1MzQxZmEwMjE5YzIxYSBsZWdhY3ktdHJ1bmsKKzk3NzcgMDhmOWI5MDE2NjliYTFjYTJjZmZkNDYxMTBlYWVjZjg1NDJhZmI0MyBsZWdhY3ktdHJ1bmsKKzk3NzggNDQxYWU0ZjRjZmNmOTE1ZjNjYTc3MDhmMjkzZGFmMjRkODEwZWExZiBsZWdhY3ktdHJ1bmsKKzk3NzkgNGY4NDIwMmMzNzdhY2QxZTg1OGE0YjJiNDgzMmY5YmE3MzNjZjg3MiBsZWdhY3ktdHJ1bmsKKzk3ODAgNjQwZjJlZjRkYTIxMjRlNTNiY2NiZGNiOTcyYWZhYTY3ODYxMDU4NiBsZWdhY3ktdHJ1bmsKKzk3ODEgNjU4Yjc0MmU0MzUwMzVjYzY4OWUxZmI4NjA4MDY4NzM5MmU4OWM4MiBsZWdhY3ktdHJ1bmsKKzk3ODIgMjZhOGU5ZThjYjg0MTFkNjhhMTM3YThhNDM5ZDZjNTY4MzBhNzVlMCBsZWdhY3ktdHJ1bmsKKzk3ODMgMDY3ZTQ4MTNjNmQ2N2EwODBjZGExN2FmNzkxYTU1MjY4ZWMxZmUyNyBsZWdhY3ktdHJ1bmsKKzk3ODQgZjg5ZTljZGRjMDk2MTMwNTU3ZTZkOWU3ZjQyYzBmNTFmNzlkNzMxYSBsZWdhY3ktdHJ1bmsKKzk3ODUgYzk4ZmVmOTIyZDUxNDY4Y2YyMDQ5NTA4MGRhMGNkODUzYWEyZjJiYiBsZWdhY3ktdHJ1bmsKKzk3ODYgODA5NmZlYzcyMmJhNzk2YWYzN2EyOTdjZWYxNDYzOTZmZjM3ODRjMCBsZWdhY3ktdHJ1bmsKKzk3ODcgZDcyNjYzNzJkZDM3MWM5ZDFhNzIzOGQ2MTNjMmI5NGY2ZjNlYjhkYSBsZWdhY3ktdHJ1bmsKKzk3ODggNjA5NWE0NzJmNTc0NWMzYWNhNzQxOTU5NWI3MTk2NTM1YjYzMzE5NCBsZWdhY3ktdHJ1bmsKKzk3ODkgZGY3NjRlNDJiMjU4ZjU3N2VkNTNhZWIxY2ZhNjMzYjE1YWJmZWUyNCBsZWdhY3ktdHJ1bmsKKzk3OTAgNDhkZjIwODBkN2Q0ODI5YzEyOThhOGMxYWRhMzE2MGNlMjAwOWVkYyBsZWdhY3ktdHJ1bmsKKzk3OTEgNWFlODdhN2Y5YTMyM2ZkNjUyYjI5YmRiOTE0MTExYTNkNjgxMmE0YiBsZWdhY3ktdHJ1bmsKKzk3OTIgZDIzYmI5NjllNjNhMDM3M2M2ZmQyY2JkNDNlYTBmYzNjYTk3NjRlZCBsZWdhY3ktdHJ1bmsKKzk3OTMgM2E1NWZiYjk5ZjIwNDc3ZDQwYjRlN2JiZDM1MDYxZWI5MWQwMjQ5YSBsZWdhY3ktdHJ1bmsKKzk3OTQgZjZjNmQ0ZDk3ZGM2NTFhNTMxMGY3NDMzMTU1N2IyMGQxZThlMGYxNSBsZWdhY3ktdHJ1bmsKKzk3OTUgOTI3ODQ4MjQ4MDBjM2RkMzczZDE0ZTU5NjVlNDUyN2E3YzVkNTFmOCBsZWdhY3ktdHJ1bmsKKzk3OTYgODMwMDA5YjU3M2VhMDk0Yjc0ZmI0NGQwMzJkMmYxNzYyMmQwMjY3NiBsZWdhY3ktdHJ1bmsKKzk3OTcgMDk4OTJiZjZhNTBkZmYxNTc3MjQ0MGNlZDk4Mzk4MzU4NGM4NTg3OSBsZWdhY3ktdHJ1bmsKKzk3OTggMTkyOGYwNWJhNDAwY2EyZWI2MzNlNjNjMzRmODZjM2U1NzcxYjc4MyBsZWdhY3ktdHJ1bmsKKzk3OTkgOThlZmQ1ZDkxZmNhNGZmZGQ2YTVlODA3M2Y3MDg2YjMxZTJlZTllYiBsZWdhY3ktdHJ1bmsKKzk4MDAgNzI0ZjgwNzI2MDU1MGRlODJhZWE2MDRlNWFjY2Q1N2YyZDgyYmFkYSBsZWdhY3ktdHJ1bmsKKzk4MDEgNDdlY2YwMmFhZjk3YjE0ZTFjMWM4NjFiMzc0NjJmZWFhNzdmZjFiNiBsZWdhY3ktdHJ1bmsKKzk4MDIgNTUxMjViMTE0NGZhM2E2YTVlMTY5MWEyODNkNWI4MWFkOTM0ZWJjOSBsZWdhY3ktdHJ1bmsKKzk4MDMgNmUwMGZiNzIzZjY5ZGJkZDYzZTJlODY3NDUzZDE1OTJhMWVmZjQ2NyBsZWdhY3ktdHJ1bmsKKzk4MDQgZmVjOGUwODRiMDc0ZjU3MDI3YWUzZTM2M2Y3NTM4NGNlNzRjMTU3YSBsZWdhY3ktdHJ1bmsKKzk4MDUgNDViNjZlOWFiNWVmYTAwODFiZTM5NWRiMTkxMmU1NWE0YmNjOGQ0ZCBsZWdhY3ktdHJ1bmsKKzk4MDYgYzJhMDg2OTg1MmViODQ1Yjk4YTlmZDY3NTAxYTI4MjQ2NWY0MjViMyBsZWdhY3ktdHJ1bmsKKzk4MDcgZTRjNzRmN2YzZTQ2NTk0YTRkYjhlMTg0ODM2NDgyZGM1NjhjZDZhYiBsZWdhY3ktdHJ1bmsKKzk4MDggOWFlMjE1Y2EyMGRiNGI4Nzc0NzgxNDRlZDg4OGYyNzMzMWU2ZjhlMCBsZWdhY3ktdHJ1bmsKKzk4MDkgODNhMzBhMzU4M2QzZjM2YTM5NGI3ZGJiYjZmMmJhNGFjZjI0NmVjNiBsZWdhY3ktdHJ1bmsKKzk4MTAgMjUyNTM5ODcxODczYzIxYWEwNTk1NzFmMjEwYmFhYzkwOTYxMTBhNCBsZWdhY3ktdHJ1bmsKKzk4MTEgNmU5Njg4Y2U3YzU3NjEwMjc5ZmM5ZDBlZDgyZmI3ZjNjOTZkNGFlNCBsZWdhY3ktdHJ1bmsKKzk4MTIgMzk2NWI2OWQ1MTE2ZTU5OTBmYzQ2M2ZiMDZjYzBmZTM4MmY2Y2ViOSBsZWdhY3ktdHJ1bmsKKzk4MTMgYzM3YTI4YTNiYjg1YjI2N2E4NDU0M2IwZGEwNGJjN2U2YTg1NmEyZCBsZWdhY3ktdHJ1bmsKKzk4MTQgZTE0OGNlMThjM2NlNGIzYzlkY2U0MTVjNzEzNDU3NzVlYTkxYjllOSBsZWdhY3ktdHJ1bmsKKzk4MTUgMTI5MzljOGI0ZTMwYTU0NGRkOWVmNWM3Nzk5NjU2YWFmYzMxM2E2ZSBsZWdhY3ktdHJ1bmsKKzk4MTYgZjkwNDg2MDA5MDVlOGNkNDM0OGM1M2UxYWJlM2M5OTRiZGQ0M2M0NCBsZWdhY3ktdHJ1bmsKKzk4MTcgZThiOGJhMTY5YjZkZDBlNmE1MzkxZjQxM2M1ZjNjYjU0Nzc5YjBiMSBsZWdhY3ktdHJ1bmsKKzk4MTggNmRjY2FlNzViMjZmNmIyYTBjNjM1YzFmNjlhMjg0ZjZhYzUxNDdhNiBsZWdhY3ktdHJ1bmsKKzk4MTkgMDA2OWYzZWJhOWEyNTAyYzlmYzE2Y2FlNGE0MGFkZmNmNzRjMjQwOSBsZWdhY3ktdHJ1bmsKKzk4MjAgOWY3NGY5MjIzYjQzNTU3ODA3NTQ0MmIwM2M1OTk4ZDFlNGE2YWNjNiBsZWdhY3ktdHJ1bmsKKzk4MjEgNGZmY2JjYzVlOGZlMzkzMzM2OWEyMzZkN2MwYjI1MDllYzViODUzOSBsZWdhY3ktdHJ1bmsKKzk4MjIgYmJhMmIyMDVmOGVkZDQ5ZmY0YWRlNmQ3M2I2ZDAzNGM5ODRjYmY3OCBsZWdhY3ktdHJ1bmsKKzk4MjMgMDgwOTY5ZGJmYzdjNTE4OTA1ZjA3MGMwZDJjYmU2OTdiODNkOTcxYiBsZWdhY3ktdHJ1bmsKKzk4MjQgNWE5MjU2YjhjMzM4MmEzZWI4ODNiZTlhMjg0ZGUzNTVlMjYxMDg0ZCBsZWdhY3ktdHJ1bmsKKzk4MjUgZDc2YTRlZmExZjUxZGY5NDUwNjQzODdiOWZlODYxYTVlY2FjZjMxOSBsZWdhY3ktdHJ1bmsKKzk4MjYgN2JhOWNmNGUwYzQwNDA0ZGNhMzIyMzE4MGFmMjlhMTJkNDEyMTlmMCBsZWdhY3ktdHJ1bmsKKzk4MjcgMmJkNWZiZDYwODcwOTlhODU0Y2M0OWJhOTkzYmRiYjdhYzdhNjg1YiBsZWdhY3ktdHJ1bmsKKzk4MjggNGZmNWMxNDk4ZGM4ZGI5YzZmOGZkODEwZDZhMWJmYzk5MDVhZGI1ZSBsZWdhY3ktdHJ1bmsKKzk4MjkgMWJhY2E1ZDJiYTU3YTRlNWIwY2IyYzZhNzlhOGE4ZDgyNjZhYTE5MCBsZWdhY3ktdHJ1bmsKKzk4MzAgMGQzMWM3ZDk2OTdkN2M1ZWM3OWI3YTYzZTA0MGVlYTY4MjY3MGQyMCBsZWdhY3ktdHJ1bmsKKzk4MzEgYTRkN2JiZmY5NWE0YjVmNTY0NWUxZDU4ZDgyMTNiM2M1OTc1YjZmMiBsZWdhY3ktdHJ1bmsKKzk4MzIgZTQzNjdkMjA2YTU1Zjc2MzAyYjNmYjA0YTNhMmQ5MWU4NTgxNDM1MyBsZWdhY3ktdHJ1bmsKKzk4MzMgYjI4NWZiYzI2NDZhNDk4NmE1YzVlYTkzZTFmOWQxNWQ4MDNjZWEwMSBsZWdhY3ktdHJ1bmsKKzk4MzQgYzYzMjUwMjlmN2RjODhjNmRmZWJlMmJjYTQwYzU5MzEyNTM0MzYzMyBsZWdhY3ktdHJ1bmsKKzk4MzUgM2UyN2Y5ZmM3NWEyOTBmNTFmYTIyNzVjYzFmZjQwZmU5YTA4ZmZiMSBsZWdhY3ktdHJ1bmsKKzk4MzYgMTQyMWFjZWFlMzQ2NTA0NWE1Nzg3ZGU3NTExMTc4ZjdhYjc4ZDVkNCBsZWdhY3ktdHJ1bmsKKzk4MzcgZDcwMDg2YjA4YTBmYWYwMWE2ODljOThjMTE2MmI5MDFlMWYwYjcwMCBsZWdhY3ktdHJ1bmsKKzk4MzggMmEwNzI1OGIxZjRlMDg2Y2Y3YjMxOWI2MTE0NTVkMDRmZGYwZDc5YiBsZWdhY3ktdHJ1bmsKKzk4MzkgNjIxNDQwYmI5OGI5YzI2MDg4Yzk4YzEzMTM1MzlkN2ViODM1ZTEzMyBsZWdhY3ktdHJ1bmsKKzk4NDAgODVmZjIwNDZlMzdmODFjZDg0ZTAwMTBhZWEwOTE4NTlhMmNjMzQ5MiBsZWdhY3ktdHJ1bmsKKzk4NDEgZjRhNDcyM2I5NTUzMmFiOTA0YWY2NjAzODRiYzcwNDgxOGVmMjgyMiBsZWdhY3ktdHJ1bmsKKzk4NDIgZjFjODhkMmQxMjViZmQ0MzA2ZGQwNjU4Y2ZmYjg5OWQ0NTAzNDk2YiBsZWdhY3ktdHJ1bmsKKzk4NDMgMTg3Yjg5Njc1ZGRhZTQwYzQwNTA2Yjg2NzM1NDllYjcxOTQ5YTNhNyBsZWdhY3ktdHJ1bmsKKzk4NDQgNzE3YzNkYWNhMDhlOTUzOTM3ODg5OTgyZDkyYzE1YWI1ZGY2MWZiNyBsZWdhY3ktdHJ1bmsKKzk4NDUgMGM3OWNhZmVjNGJjNTUwOGM2ZTZlMzA3MjFkN2IyMjk0YjU2NjA2NCBsZWdhY3ktdHJ1bmsKKzk4NDYgMjE2NTdiYjBiZTM1YjRjNzFkY2M4MzQ0OWYyZjM2ZDIzYTJlYmMwYiBsZWdhY3ktdHJ1bmsKKzk4NDcgZmVkM2NmNzI2ODNkYzE3NDdlYzNjMmM0Yjk2MTU3NjIwNTQ2NTdiYyBsZWdhY3ktdHJ1bmsKKzk4NDggMWY0NjI1ZmU2NmUyY2E4Y2UwYmE4YmYyMzk0ZDI2NzA1MTdjNjExOSBsZWdhY3ktdHJ1bmsKKzk4NDkgZjVhMTg5YWZiY2Y5OTRkZDlhMTQ1ZGI4ZjI0MDU4Y2NkMWIyMTcwZCBsZWdhY3ktdHJ1bmsKKzk4NTAgMWU2NmM0ZTMxZDE1MGFmZDhiMGI5ZTViZjIyZTU2ZTlkYmYxYTdjMSBsZWdhY3ktdHJ1bmsKKzk4NTEgODk1NTllZTg1ZTU0MGQyZWU0ZjA4NWU2YTlhYmJmYzA5ZGEyYmYyNyBsZWdhY3ktdHJ1bmsKKzk4NTIgOGQxMWIzNjcxZTVkNjE4N2Q5MzdlNjg4MzhiODViYzVkMTI3ZmZmYiBsZWdhY3ktdHJ1bmsKKzk4NTMgMDAzMzhhODEzZGNiOGJiZTFjMjdmNTk0NGVhZTQ2OTk0MmI3ZDBiMyBsZWdhY3ktdHJ1bmsKKzk4NTQgZmM2YmU3YWUwMTJmNDRjZDhkMjQwNzUyZDY4MmU5ZmFiMTgyMjlmMiBsZWdhY3ktdHJ1bmsKKzk4NTUgZjc4YWY1YmM3OGVkZGU2NmI4Mzc1ZWQ2NzYwMjMyZTE0NTJlNTZkYiBsZWdhY3ktdHJ1bmsKKzk4NTYgMGUwZTg4ZjhlMWFkNTFmYWZkMzYxYjBkNDljZGI4ZTY0MGRlZjkyYSBsZWdhY3ktdHJ1bmsKKzk4NTcgZTYzZjJhZGZhN2NjODQ1ZTk5MTkwMmQ5YzUxNGIyOWQ0M2UxMjA2MyBsZWdhY3ktdHJ1bmsKKzk4NTggNjJhYzU3ZGU3YWRiZTQ2Y2RlOGVmMDg1OTY2Y2VmMmFjZWIwZTlkMCBsZWdhY3ktdHJ1bmsKKzk4NTkgMTA4NDBjMzczN2E3ZGQxMDkzZDJhYjg2MDA0M2ZlMjg5NTg3MTA2OCBsZWdhY3ktdHJ1bmsKKzk4NjAgNjlhZGQ0ZDc3MzZmMTA2NTY5MDE0ZWNlOTk4NzJmNGU0NDZiMDYxNyBsZWdhY3ktdHJ1bmsKKzk4NjEgZjhhNzcyMjRlYmNhZjUxMzRiZmNjMWY5MzhjOTU3Njg0MjEzZjliYyBsZWdhY3ktdHJ1bmsKKzk4NjIgYjU4YjJlZTY1Zjc1ZjUxOTJhM2Q5MGY0MDg1YWY3NGJiMTU3YzBiOCBsZWdhY3ktdHJ1bmsKKzk4NjMgNmRkNjUxY2FmOWUwNjZlM2VjOTFlODhlZGZkNmM3Mzc4MDdlOTg5MiBsZWdhY3ktdHJ1bmsKKzk4NjQgZjQwNDBmM2JkY2M3MzdiNjY1ZjljMjliYTBhNmQ1MjNmZWM3NjQ3NSBsZWdhY3ktdHJ1bmsKKzk4NjUgNDYxMTlkMWU5NDEzZjdhMGNjZTc4ZmVmZGQyNTUyYjhkZTkwYjIxMyBsZWdhY3ktdHJ1bmsKKzk4NjYgZWRjMGQwMjFlNDI3NmRmYjVmN2VmZjI5Y2Y1ODI1OWFjZDQxZjUwNyBsZWdhY3ktdHJ1bmsKKzk4NjcgNTQzYjJiNGFmNTMyNTkxMTc2NDFkNGM0MWUxNmM1ZjE3NzFjYjFmYyBsZWdhY3ktdHJ1bmsKKzk4NjggMjIzNDMzMDM4YTQ3ZTc4NDg1OGY0NGFjZDgxZTI5NjBlMDdlZGI5MCBsZWdhY3ktdHJ1bmsKKzk4NjkgYjY0YThjZWM4ZDc1YzVhYTkzMjVhODcxZGEyNTdiZWNmZDhiOWRhOSBsZWdhY3ktdHJ1bmsKKzk4NzAgMDMzM2U0YTk1MmY5M2RiZGM4YzMxZWM1YjEyYjllYzA3MzA4OTU4MSBsZWdhY3ktdHJ1bmsKKzk4NzEgMDI4ZjcwZDUwOGMwYjYxNWY2MmY4MzQwODY1MGI1NmE0YTA0ODEwMCBsZWdhY3ktdHJ1bmsKKzk4NzIgNzY3YmY4MDA0Y2ZmZGZlZDIyMzVjMDRmNzNmMjI0MTFhODljYmMzZSBsZWdhY3ktdHJ1bmsKKzk4NzMgNzg2ODc1YzRjNjJjNTBkN2MxZTA0MTA3ODBkMzA1ZGRlODllMTc5MSBsZWdhY3ktdHJ1bmsKKzk4NzQgZmJjNzU1MzVlYTkzY2IzZjJiNTQ4NmIxMGIzM2Q0NjViOGM1NmZjYSBsZWdhY3ktdHJ1bmsKKzk4NzUgNDVkNjViYzhhNTUwZjMzNzlhZWRiOTMxNTVmYTcyM2ZlODMyYzNiYyBsZWdhY3ktdHJ1bmsKKzk4NzYgN2FmYzE1ZjA4ZDgyY2FjMzcyMzljNTAxZWQxMmZhODk1Y2Q1MzI4OSBsZWdhY3ktdHJ1bmsKKzk4NzcgYjhkNzg2NTBmOGRmMWQ1YmM1YTcxYzdhMmY0NzI2ZjJmZjIzNzY1NCBsZWdhY3ktdHJ1bmsKKzk4NzggNjg1YzUxMGUxNGNlZWI1ZDRlMmZjNjdlNDI0ZTQxYWMxZTc2NmUyOCBsZWdhY3ktdHJ1bmsKKzk4NzkgOGMwMWNmZWUxNGJhMTkyNjdiMWEyYjBjMzI3ZGU2OWEzMzk5NDkyNSBsZWdhY3ktdHJ1bmsKKzk4ODAgYzc0NTRjYTdkM2FjYzE0M2UwMmEwYjZmOWJlZTA1MjAwNjBiOWFmMiBsZWdhY3ktdHJ1bmsKKzk4ODEgMTg1YzFkNDdjZTdhMDg3NDlhYzczYTk4OGNmNjcxMWUzMzhmMDIyOSBsZWdhY3ktdHJ1bmsKKzk4ODIgM2E3N2JjYTIyNmI5Mzc3ZmYyYThkYTIzMzc0NWJhYzk0MDBiZTg5NyBsZWdhY3ktdHJ1bmsKKzk4ODMgYzUxZjdiNmQyNTU2ZTQ2OTUwOThkZTJmN2NlN2FlYzgxOThkZWUwYyBsZWdhY3ktdHJ1bmsKKzk4ODQgM2E0OWY1ODg2YWNhZWIwOWU2M2JiODRkZmJkOTFjOGQzMmExZmQ3YyBsZWdhY3ktdHJ1bmsKKzk4ODUgMmM1NDkwMTQ3MWY1ZDkwNGQwYmNhZjZiMzg0NWQyYWQzMDBiOTdlNCBsZWdhY3ktdHJ1bmsKKzk4ODYgZDg4YmY3NjcxNDU4MjVhYjRjNGE2ZGI5ZDBjOGZkZWI3YWJmNTkzMSBsZWdhY3ktdHJ1bmsKKzk4ODcgZGZhMjQ3NzY0MzIzNzAyNDU4YWIwOTk5ZjE2ZjZjYjY2MzI0Y2MxOCBsZWdhY3ktdHJ1bmsKKzk4ODggZDc1ODg0MWE3NjYxYmM3ZjNjODA4Y2JlNzMxNDBjNDczZmI5NWI5MSBsZWdhY3ktdHJ1bmsKKzk4ODkgYWQ4OTFmNmExOWVlYmE0ZDMyNTE4NzIwZDc5YzU4NDIyN2VlNjRmYyBsZWdhY3ktdHJ1bmsKKzk4OTAgMjk3YmVhMjMzZTAzMmZiZGY3OTM3YWI2ZDg0OTM0MTY3ZWRiMDg3NiBsZWdhY3ktdHJ1bmsKKzk4OTEgZGVkY2U5YjY4NzQyNDA1MTg4NDAyNzBmNzhkOTI0MDBhMWFiZWQ5MyBsZWdhY3ktdHJ1bmsKKzk4OTIgNjU4NDhhN2M3N2I5ODI1MzFhNmU3ZGM5NzBmMTFiZjY5YjllNTk1OCBsZWdhY3ktdHJ1bmsKKzk4OTMgYTE0MzVjN2QzMzliN2ZjMjEzNzYzYjNiY2UxMGY0NjE4YzI1ZDA0ZCBsZWdhY3ktdHJ1bmsKKzk4OTQgMTNmMjliNjJhMjA5NTM4ZmQ1NjI4YWMzNjY0MGVhNDI2NzkzMzNjYiBsZWdhY3ktdHJ1bmsKKzk4OTUgNjI1NWRjODYxZmNmMTM1M2ZlMmFkMjYyNTY4YzFhOGFkMmNiMDY0NiBsZWdhY3ktdHJ1bmsKKzk4OTYgYjFmMTk1Yzk3ZWY5OWE0ZmM2ZjI0OWVlZDFhNmNkNzg0NWM0YWEzMCBsZWdhY3ktdHJ1bmsKKzk4OTcgN2NhMmMzZDg3NjYyMDZhZTI1ZjU0NzhiNDAzOWMyZmM1NjFkNTA2MyBsZWdhY3ktdHJ1bmsKKzk4OTggM2Q5ZjUxMDUwYWJjYTQ1YjcyZTk2NzRkNzYyNzQ5NGFjNjljMGJkNCBsZWdhY3ktdHJ1bmsKKzk4OTkgNDM5Mzg5Nzg1MmIyNDQ4NmIyMzkyMWQwZDRjMTk1NDIzZDI0OWUyZiBsZWdhY3ktdHJ1bmsKKzk5MDAgMmQ1MDg4MjJlN2Y2ODg1YTgzZTM5M2U4ZjFhZGFhNWM2NTliNjk4NiBsZWdhY3ktdHJ1bmsKKzk5MDEgNmU3M2Y0MTY4YjA2MmVjYTVmNzdhMDdiNTU4ZjIzYTE3MzEzMDk5MSBsZWdhY3ktdHJ1bmsKKzk5MDIgMTFlOTMzN2NkYTNkMTQ3ZWU2ZDRlMDJhN2RkMmQ2NTgzZTJjNmIzOCBsZWdhY3ktdHJ1bmsKKzk5MDMgMjliZGJlMDM5ZTA1ZWM4NWFkNzk0NWIwMmY2Y2Q0MjEyNTU4NTJhYyBsZWdhY3ktdHJ1bmsKKzk5MDQgYjNlM2RhZTliNjEyMjQ0MmQxNDYyMjFiMDRiMzMyOWFlZjVlOTE2OSBsZWdhY3ktdHJ1bmsKKzk5MDUgNWFmN2QzZGE4N2NmNmFjYjc5MjI2MDJjODA3MmZhMjlhMmRmMmU3MiBsZWdhY3ktdHJ1bmsKKzk5MDYgM2YyMjg0MzQ0YTQxYmEyNGY3NWQwNTZmZDAzY2M4ODZmODYxYTUyMiBsZWdhY3ktdHJ1bmsKKzk5MDcgODNlNzc1OWU3Mjk3ODY5ZGRkYTFjZDE3NzQyZDFlNTY0NWNmNmViNCBsZWdhY3ktdHJ1bmsKKzk5MDggN2RmNmYwNDUzNDY5MTc3Y2QwOGZjYTU4YTdlYjI4YTkwMzAwMDJkMSBsZWdhY3ktdHJ1bmsKKzk5MDkgYTlmYmYyMWFiN2NlOWNlNzkzNmU4YTNjYzU5OTQ1Y2RlMDg0ZmI4ZiBsZWdhY3ktdHJ1bmsKKzk5MTAgMzY1NTI2YzRjZjhiYjMyMzg0NjY1OTRkMDczMjNkY2UyMDU4MmVhZiBsZWdhY3ktdHJ1bmsKKzk5MTEgNGY0NWRjY2RhOTZiMjg3NDdlMzNkNDFlMTU0ZDViZDFjYTRiNDNiNSBsZWdhY3ktdHJ1bmsKKzk5MTIgM2RlMGNiODJlNjFhZTY1MWJlMDgwOGU2MjAxODkwOTVlZGVjZDc2OSBsZWdhY3ktdHJ1bmsKKzk5MTMgY2JhY2QxYmU3Mjc1YzAwZjNjNjNiOTVlYjVhMzg0Y2YyZWIwMDBiMiBsZWdhY3ktdHJ1bmsKKzk5MTQgZDE0NjViNWMwYTA4OTRlMTU1MTFkYzE3YmFiYzNiNDE3MmY0MjBlZSBsZWdhY3ktdHJ1bmsKKzk5MTUgMzc0MGZmMmVlMDUzY2E5M2Q4OTA1YmVjNTUwYWE0NjZiOWEyODllMyBsZWdhY3ktdHJ1bmsKKzk5MTYgY2QxMTY5MGNiMTRiMDcyZTcwZjI1ZThjM2ZkYTc0OGExMWI5ZDE4MSBsZWdhY3ktdHJ1bmsKKzk5MTcgYTY0Yzg5ZGFlMThkNjBlNTRhODJlZWFkZTMyODZhNzRmNmIzMDQxOCBsZWdhY3ktdHJ1bmsKKzk5MTggNTkwZjYyNTRmOWE5YWVhYTQyMDIzZWRiNTY4YmU4ZWIwNzI1ZGE3YSBsZWdhY3ktdHJ1bmsKKzk5MTkgYTgwNTliOTZiYzM1NWFhOGI2MmZlMTY1MzdjZmMyMGU5MzRjZDMxNiBsZWdhY3ktdHJ1bmsKKzk5MjAgMDUxODlmN2NkYmViMTg0MTE4ZDYxNjhhZDMzMWY5NTBjMWE5ZjA2OCBsZWdhY3ktdHJ1bmsKKzk5MjEgOTgxNWIxOGIyM2UzYjY4NWE5YWYyMzU0MmI1M2NiOThkMWIzNjc5MSBsZWdhY3ktdHJ1bmsKKzk5MjIgMzcyMGU5OTZlNTUxMjczOTE0MGRiYTI5OGM5ZDFjYjI1NTAzOTI3MyBsZWdhY3ktdHJ1bmsKKzk5MjMgMTY2ODQ5OTIwNmRjZmJiNTgyZTdlNTJhNjM0OGE1NGQ0MGY1NDM5YSBsZWdhY3ktdHJ1bmsKKzk5MjQgMjkzM2ZiMzRmMzMzZmQ1MmMxNzM5MjBmYTk0ZjA1NDBlMTg5MGI2MiBsZWdhY3ktdHJ1bmsKKzk5MjUgODI2YzcxODAxOTExY2IwYzYzOTdkODk2NGFkNjYxNDhmZjhlNDYzOCBsZWdhY3ktdHJ1bmsKKzk5MjYgYzliNjg1MGM0MzM2YTRjZGFmYTJhM2Y1MDAyZWRlYmFjNGI0ZjE3OSBsZWdhY3ktdHJ1bmsKKzk5MjcgNWVkY2ViOGYxZmFiN2FjNjgwYjE5YTljZDQ5YmQ1NWJjMzAyZjJmMiBsZWdhY3ktdHJ1bmsKKzk5MjggMGQ3Njc2MTRjOTQxZWIxMGY1ZWMyOTMyYzQzYWM3MWJhOWFkYmExOSBsZWdhY3ktdHJ1bmsKKzk5MjkgMGE5NTQxYTg2Njg5MDk0ZGU0MTNmNGVjNmMwMGNkZTJkOGViNTlmMyBsZWdhY3ktdHJ1bmsKKzk5MzAgMjNjYzM0MmVlMTUwYmE4NDAxZmJjM2MzOWJhZmUzNDBhMzVhMDBjYSBsZWdhY3ktdHJ1bmsKKzk5MzEgM2MzOGM4YWQ1NjIzZmI0MGQ0YWZkYTI2MTMzMjVjMzc3YmU5YjAwNCBsZWdhY3ktdHJ1bmsKKzk5MzIgMWI0YTJlMzhhYjVlYzY3YWUzZTUxOTBlN2Y4ZWQwYjI1Mzc2ODYzMCBsZWdhY3ktdHJ1bmsKKzk5MzMgNDgzMjg2ZTIxOWUxZjY0NDQ2M2I0ZDJiZDdiMmYxMjZhNWYxMWFlNCBsZWdhY3ktdHJ1bmsKKzk5MzQgYmQwNWFiNDczMWY3NmIzY2U0NGQ0MzBjNTNlNzcwZDRiNjk0Njg4OCBsZWdhY3ktdHJ1bmsKKzk5MzUgMWE5YjA5YjNjYWY4YWU1ZTI4NWI3MDRkMmQ5YWI3YjRhNGRhYWViNCBsZWdhY3ktdHJ1bmsKKzk5MzYgZWM5NWU4ZGFlNTA0MTQyNWFlNTdjYTU3YzE5NmYwZTRlNDQ4MGU3OSBsZWdhY3ktdHJ1bmsKKzk5MzcgNGFhNDcxMGQ4OTRjODI2OGY0MmU2YTQwODE2OTU2YjZkNWI2Y2Q1OSBsZWdhY3ktdHJ1bmsKKzk5MzggYmQ4MTUzOGQ0ZGRmZDQ3NjE3ZmRiNDViYTM5ODU4YTlmZGE2NGNmMiBsZWdhY3ktdHJ1bmsKKzk5MzkgMDMxZGU4NTQwYTdlYTA1ZGI1NGQwMWZhY2Y1MmY4ZjQyM2ZjZTBjZSBsZWdhY3ktdHJ1bmsKKzk5NDAgOTU0MWI5YjA5MzdkZGYxNGMwYjY0OGIxY2JlYzIzMDQ3MmJhNWY1ZiBsZWdhY3ktdHJ1bmsKKzk5NDEgODI5NDdhMTkyNmY3ODJkZWZiZTBjZDc1Mzk3YzU3NjA5OWU1NmMxMyBsZWdhY3ktdHJ1bmsKKzk5NDIgMDIxMjM3YmE1MDA3NDI1ZTAyMGU3Y2U5NjhkODkwMzk1NTg2MGEyYyBsZWdhY3ktdHJ1bmsKKzk5NDMgN2IyZmQ0ODZlZmVlMWNkOGZkZTIwYWZjYzE2Yjg4Mzc1YmQ2ODAyMyBsZWdhY3ktdHJ1bmsKKzk5NDQgY2IxYTU3N2MwMjM5Y2JiMGQ5Njg3OWJjMDRmZTI5ZTM1NmYzMGJlMSBsZWdhY3ktdHJ1bmsKKzk5NDUgMDM2MGUzZTMwYTJlNDBjNDkyMmY3OGQ1ZDcxODE4MmZhNTU5OTdmMSBsZWdhY3ktdHJ1bmsKKzk5NDYgMTQ5YTU0Nzk4ODk2MWI3YWNlNjI4YWVlYzE2ZWUzYWJkY2M2MTZmNSBsZWdhY3ktdHJ1bmsKKzk5NDcgYWQzZTRlYjM1ZGE3NzIzOTBjNTBjMDI5Mzc4NmI4NmZjOWEwNmUxOSBsZWdhY3ktdHJ1bmsKKzk5NDggNmY4NjllNWQzM2NjYmY3NjM0YjdhMGJlNWVhYTQxMmFmODJlZmUyNiBsZWdhY3ktdHJ1bmsKKzk5NDkgODgxYTVlNjcxNGRjYjcwYTVjZTA3OWY1MjFmZGJlMDcxZDMwZjBlOCBsZWdhY3ktdHJ1bmsKKzk5NTAgNmJiNTA2YWQ5Njg0OGFjMmEyOGNmNTE3MGI3ZjU3YzliZmRmYTJmZiBsZWdhY3ktdHJ1bmsKKzk5NTEgMmNmMWNhZTliNDZlZjM3ZjAyZDVjNzg2NGRjMTg4NTBkMGFjY2JiYiBsZWdhY3ktdHJ1bmsKKzk5NTIgMDc2YjgyZTA0MGE1YzkzNTRlNGI4NWRjY2IyMWUyMzk1NmNkZmZhZCBsZWdhY3ktdHJ1bmsKKzk5NTMgNzg0ZmVmODM3YjUyZGM4ZDYwMTgxZGNhZjUwYzhjMDAyZmYzNDc3YSBsZWdhY3ktdHJ1bmsKKzk5NTQgY2E2NmEyNTM2Y2Q1NDlhNTk3ZDk2YjE4MjU0ZTAzZjQ3ZjQ5NDk4MyBsZWdhY3ktdHJ1bmsKKzk5NTUgYjk0MjFlMTdkZGY3NjMxZDA3ZmQyM2YwYWZkNjFhYzViNmM0Y2Y3YSBsZWdhY3ktdHJ1bmsKKzk5NTYgODA3MzliMGJjMzAyNmM5MmE4ZDIzZDZhNGJhODNlZjhmNmQ4OTU3MSBsZWdhY3ktdHJ1bmsKKzk5NTcgYmZlNTdlZmFkNzUxZmFkZmJlOWIyNjVjZjU2ZTM4NzZiMGRiOTY1MCBsZWdhY3ktdHJ1bmsKKzk5NTggNTVjM2ZkMTg1M2NlYmIyZjRjZTdiOWZiYTNhMDY4MzQ2YzdmNDY4ZSBsZWdhY3ktdHJ1bmsKKzk5NTkgY2NhMzlkNzE5YWJhNmU1YzA0NTk2ZDM5NTQ2MDc1MjhkMGQzMjYxNSBsZWdhY3ktdHJ1bmsKKzk5NjAgZjAxZmYyNmZhY2FlYjg3MzgyYTAxNDVkYTlmZDdlYzZlYTM5YWNhOSBsZWdhY3ktdHJ1bmsKKzk5NjEgYmE0YTAyYzBlOTBjNzkyYWZhN2UxYTdjOTFkMzM0NWU0YzEwYjgxMyBsZWdhY3ktdHJ1bmsKKzk5NjIgNTgwZjZjOTIyNzBiYjg3MDE2OWEwYWVmODc3ZWU2ZjRhM2E1NWIyMiBsZWdhY3ktdHJ1bmsKKzk5NjMgMWRmYzE1ZTMxMTMwNDNkNjAwOGVmZWU4YzI5ZmFkZWYxZDcwYzQ1YiBsZWdhY3ktdHJ1bmsKKzk5NjQgNGNhZTJkZTMwYjU3ZmM1ZTBiYjNkNWNjZDZmYzM3ODMxN2QzMGVlMyBsZWdhY3ktdHJ1bmsKKzk5NjUgMDVkMGI2ZmJlYTliNWRjNjdjZWVhZDM2NTJmZGM0ODI2NzI5MmM0YiBsZWdhY3ktdHJ1bmsKKzk5NjYgOTgzNDVhYTFkNWZlZDMxNjMzZmM4MmVlZDE5ZDkyNzkyMTQ2MGI3NyBsZWdhY3ktdHJ1bmsKKzk5NjcgNDI3YjgxYzI0NTJmZTFkNzJmYTEwMGE0YjcyNTBiZDQwYjRiMWJhZSBsZWdhY3ktdHJ1bmsKKzk5NjggM2RmYzM3NmU2ZjFhOGJlNGNlOWEwMTMxZmM5NTBlNmE4YTcxNGIxMiBsZWdhY3ktdHJ1bmsKKzk5NjkgN2YyODk5N2IyYzEwNmZjZTIzYmVlMmJjMWVkZjI2ZmEyMzc4OTRlMyBsZWdhY3ktdHJ1bmsKKzk5NzAgNTQ0NTZmMDhlYmFkNzU1MTJkNDMxYWVhMWExOGFkY2E3MWE2ZWFhOSBsZWdhY3ktdHJ1bmsKKzk5NzEgNjg1N2FjYmUyZTc0YjAwYWY4NjBhZjJiYTg3MWY1MTI5NzViMzlhZSBsZWdhY3ktdHJ1bmsKKzk5NzIgYzRkNTZmYzYzZDhmMDM4YjRhYjQxNmMxNDc5OWJlM2I2ZTU4YTZhOCBsZWdhY3ktdHJ1bmsKKzk5NzMgNmIwMjY2Njc5Zjk2OTUyNThkN2ZhNDEzOWM3MDlhOWY4NjQ1N2UyNCBsZWdhY3ktdHJ1bmsKKzk5NzQgZWM3OTc2ZDJkNWU5ZTQxM2UyMTg4OTJlOTZkN2U3OWMyYWM4NjgxNiBsZWdhY3ktdHJ1bmsKKzk5NzUgNWUzOTAwNzg0NjBhZThlNDJiM2Y5NWQzNjY4N2MxMzY0ZjliODcxZCBsZWdhY3ktdHJ1bmsKKzk5NzYgMTkwNmE3ZmM3NTA5NGQ2ODI2YTNmY2E1YjJjYjJhNWE4OWQ2MTNhZCBsZWdhY3ktdHJ1bmsKKzk5NzcgZDk1OTFjOWIyYzVmYTRkMTVhNWJlOTI2YTYwNDkyNmJiYjI3N2Y5NyBsZWdhY3ktdHJ1bmsKKzk5NzggOWRlM2NhZDUwOTA1MGMyYWM2YzQ2YmViYjkxM2RhM2UxMjQ5NDIwMyBsZWdhY3ktdHJ1bmsKKzk5NzkgZDE3ZGIzZWJmYmMyMDVkYzE4NTc2NGMzMjk1ODNmYTIyYzU1MjRkNCBsZWdhY3ktdHJ1bmsKKzk5ODAgZjIzZGIzYjY1YzgzODFmYmVkN2VkNzQ0NGY2MDZiZmQ4OWE5NTk4YSBsZWdhY3ktdHJ1bmsKKzk5ODEgNzU0NTg2MDM5YzExYjFmOWNmYTQxMGZkMjdmMjQxOTJmMWU2NDY2ZCBsZWdhY3ktdHJ1bmsKKzk5ODIgODk0Y2ZmZWI4OWJhNTM1MTdkNmFjZTZmYTZjMDYyNzczYWYyMDI0NSBsZWdhY3ktdHJ1bmsKKzk5ODMgZWY5ODBlMTdiNTkzOWNhYmFmNjIxODA0YTgwMzQ3OThkMjM2MWE1NiBsZWdhY3ktdHJ1bmsKKzk5ODQgNjdhMmI5NmYwMTg5NzM0OTQ2YWRjM2UwMjVjMzcwNGU4NjM2ODE1NCBsZWdhY3ktdHJ1bmsKKzk5ODUgNTEwZTUyNDQ2N2NlNjI3M2RlYzJiZjQ0MzgwM2M2OTgxNDc0MTM1MSBsZWdhY3ktdHJ1bmsKKzk5ODYgZWRhMGNhMTM4YjNkODRiYTkxMTk2MzM4ZDBlNWVhOWUwYWMyYTQ0OCBsZWdhY3ktdHJ1bmsKKzk5ODcgYjVkNTJjNDE1YjE1ZTllNGNmMGRkZjhjNWM3ODI0NzI3ZTI0ZDNiYSBsZWdhY3ktdHJ1bmsKKzk5ODggZWM0NzM1Y2UxMzYwODQzZGNjNmU3N2EzMGY3ZjMwMWQ3OGJhNTAzMiBsZWdhY3ktdHJ1bmsKKzk5ODkgMzVhM2NjMjRlZjA0MzI3YTZiYTZkYjYwZTA0MWFjNDllZWEwMWRlOCBsZWdhY3ktdHJ1bmsKKzk5OTAgZTNmMzdhMjYwMmQ1MDQ5MDViYjkyNTg4MWI2Mzc2Mzk2ODM2OTZjZCBsZWdhY3ktdHJ1bmsKKzk5OTEgNDg4OGY0NDg0NTBmMjNkYTAyZTJkNjgyNTVkNjc5MjlhY2RiNGJiOCBsZWdhY3ktdHJ1bmsKKzk5OTIgOTcwZTllMDU4Yjc2MWM0Yzg0N2MxYjQ0N2NkMjJkZmNhMDI5OGY3ZCBsZWdhY3ktdHJ1bmsKKzk5OTMgZWMwZjk5ZjFhMmZkYjBhYjlmNjlkMzBmOTBiODRkNDQ0ZWMwOThlZiBsZWdhY3ktdHJ1bmsKKzk5OTQgYjYwNDI0YTU2Zjc0NGU1ZWU0MmJmZDRmZTE5YWMyY2E0MTI3M2EwMiBsZWdhY3ktdHJ1bmsKKzk5OTUgODNjMmE1YTQ1YTQxYjJmYWRiOTM5YTNjM2I2YTBmZGIyNTM1OGNmYSBsZWdhY3ktdHJ1bmsKKzk5OTYgMzEyY2E5ZmRhY2ZmMjc1YmU5MjA3MDQ0OTZhOTVjMjViNjYyYzZkMCBsZWdhY3ktdHJ1bmsKKzk5OTcgY2NlODk5NGQ1MmNmMGU4YTgzMDA0MzFmZTc2OTZlN2RiODgyZjI3MiBsZWdhY3ktdHJ1bmsKKzk5OTggZjlkYTM0ZjcyNjhiNTFjODcxZjJmMTQzZGE4MDA2NDIyZDRjMzc5NSBsZWdhY3ktdHJ1bmsKKzk5OTkgZmJjODkyMjQzNDc3ZjZjY2I2ZWEyM2FlM2JjZGU1NGEwNjRmOTc5NyBsZWdhY3ktdHJ1bmsKKzEwMDAwIGRjMzc0NzExYzg0OGNkNjYxMzdlOWI2YTZlNmViNGMxN2MwNGZhZTEgbGVnYWN5LXRydW5rCisxMDAwMSA1ZTRjMjg5N2U2MjU3NWU5ZTQ2OWEwYWYwMDU5ZjdmN2NmZGI1NmU2IGxlZ2FjeS10cnVuaworMTAwMDIgZWVhYzM2YmZlMDFhYTNmMWZjOGQxZDFmZDVmZTBlYTg3Mzg0NWQwNCBsZWdhY3ktdHJ1bmsKKzEwMDAzIDg4OTkyNjk2YjllOGQxN2Q1NWE4NGRlMzMyYjU5YjljN2Q3ZDU3NjggbGVnYWN5LXRydW5rCisxMDAwNCA2MGU3YjAwMGYyNzM4NDYyM2RjMTQ3ZDUyYWFjYzMzOTliYzVkMzlhIGxlZ2FjeS10cnVuaworMTAwMDUgMjZhODc3MWE0Y2ZkMDA5Yjk2ZDczYTU4ZWI1NWUwMDcyZThjOWViNCBsZWdhY3ktdHJ1bmsKKzEwMDA2IDNjYWYyMzk3YzUwODE1NTNiMzNjZmI3ZTliZmI1YTllMmU4ZTkwOWUgbGVnYWN5LXRydW5rCisxMDAwNyAwMzQzOTg3MzZlNjRjNDE4Y2JkMzM3Nzg3NTVkZmRiZGUxMWU0NTllIGxlZ2FjeS10cnVuaworMTAwMDggODkxMTA1ZGFjOWI0MTg3MTQ0ODgxNzliZTI4MTllZDFjYTM1YzRlMiBsZWdhY3ktdHJ1bmsKKzEwMDA5IGI0NjYwYWQ3ZGM0MWVhMTc0Zjg5NTk2M2VlNTI4NGFjMDMyZGNmMWYgbGVnYWN5LXRydW5rCisxMDAxMCBiZjIzNmZiZjExZGFhZTNhMjJjMTE0NjdlMGNiNGI3M2EyMTY0M2I5IGxlZ2FjeS10cnVuaworMTAwMTEgZWE4MTg0YmZmMTJkYTVjMGQxZWE1NGJjODE2MjM2YjYzNzEzYjBmMCBsZWdhY3ktdHJ1bmsKKzEwMDEyIGY5MWQ1YTAzMzliZjNhYTM4ZWE5MDRmNzI4NTY0Nzk1NDE4YWFkOGIgbGVnYWN5LXRydW5rCisxMDAxMyAxM2I2MGFiZGI3MGQxOWVhMDY2ZjIyMDNjMTE2M2NlZTRiNzM2ODUxIGxlZ2FjeS10cnVuaworMTAwMTQgZWVkYWM1MGQ3NzQ0M2IwYmJkY2NmOWM2ZDUyODcyMGZjZmUxMWZiZCBsZWdhY3ktdHJ1bmsKKzEwMDE1IDNmZjZiM2QzYzRkNWUyZjNmNWRiN2JjZmE5ZjQxYjFkYzU3MDM2MjUgbGVnYWN5LXRydW5rCisxMDAxNiAwMWE5Zjg0YTI2OWM5ZGEwYTliZTAxZjBhYmMyNzhhYTZlNDlmZDRlIGxlZ2FjeS10cnVuaworMTAwMTcgNzgzMGUxZGU5ODE3NDU3ZWIxZmM0MmRiNzUzYmYzYmQ5MGU5NDZlNyBsZWdhY3ktdHJ1bmsKKzEwMDE4IDlkYWUwYWIzODNhNDk4ZTFiNTcyNjY4NDAxODY5OGE3YjdlOWE1NzcgbGVnYWN5LXRydW5rCisxMDAxOSBjOWY0YWEyYzQ1ZWRkNjdmZDBjNGM0NWI0NDBlM2FhNDg0NDE4NTJkIGxlZ2FjeS10cnVuaworMTAwMjAgY2ExNzBkNzYxZjA4NmUzMDVjOGI1ZGI2YzcwNzU3MWYxMjFmYjMwNCBsZWdhY3ktdHJ1bmsKKzEwMDIxIDQ4ZjdhYzQ1MmQ5OWM5NGI5MzMwMzFkN2I3ZTlkOTZjNGE2OTdkNDEgbGVnYWN5LXRydW5rCisxMDAyMiBkMjAyYzgyZDNjNTcxNjI2ZDM2ZjFjNDQwZjljNWY1MWZjMWM5ZjBhIGxlZ2FjeS10cnVuaworMTAwMjMgYzAxMzFmYWUwNmU5ZTA3MjExYzg0NGE5MGRlYTRkNzJlYzg2MTdlYSBsZWdhY3ktdHJ1bmsKKzEwMDI0IDY0MjFlYTFkZTI4Mjg3YjI0ZGQ2NGNjN2IyNjQ3YmZmYWM5NTMxYmMgbGVnYWN5LXRydW5rCisxMDAyNSBkNGQ4NGI1NGM0NGQ4MTg5ZTIwM2ExNDAzZDM4ZDc4OTlkMDliYTQ4IGxlZ2FjeS10cnVuaworMTAwMjYgN2ViMTliMWNlODRkNzRmMmUyYzk1NWE2MzBjNjlhNTk3YWNjNDhkNSBsZWdhY3ktdHJ1bmsKKzEwMDI3IDRiMTFjYjk2MTA0NmEwYzRkODcyZDVmNjJjY2E1MzA5OWI0MzE0ZjcgbGVnYWN5LXRydW5rCisxMDAyOCA2OTg2MDgyMWNhMWQ1ZGE2NjUxZGQ0NjZmOWIyNGYzNjdkZGNhZTU1IGxlZ2FjeS10cnVuaworMTAwMjkgZDM0ZmUzMGI5NWU4NTY4MjEzODkzY2RmMDdjZjNjMDM5ZThkMzg3YiBsZWdhY3ktdHJ1bmsKKzEwMDMwIGM4ZTVmNzA0NjIzZDg5MDExZjg2ZmZmYzI5NGIwOWUwNTQwNTUyMzEgbGVnYWN5LXRydW5rCisxMDAzMSA4MmViOGIzZGY2ZjgyNjU0M2JiZjk2MWY3MGU1MjU0YzFlOGMxZWIwIGxlZ2FjeS10cnVuaworMTAwMzIgNWRmNjU2Y2QxMGFkZTFkMzViNTc2YzM2M2FkMmMxMjgxMmNhOTA4OCBsZWdhY3ktdHJ1bmsKKzEwMDMzIDVhZWNjMjUwOWU0NmQ5ZjRiYmM4NGVhYjBhN2VjMTJjMjQ4YzE5MzAgbGVnYWN5LXRydW5rCisxMDAzNCA3MzM5NTA4MDRhMGI0MmFmZmEwYmZiN2ZiM2I3MGU4YWQ2MTZhMjY3IGxlZ2FjeS10cnVuaworMTAwMzUgNjU5ODM4NGQ1ZjRjYmVkOWM2ZmRhMDJlNDI0Mjc2N2FkNWM4NjAyMyBsZWdhY3ktdHJ1bmsKKzEwMDM2IDIyZGU1MTE2ODMyZmQ2NWUxOWI5NTcyYzNiMTc0ZThmY2E4YjJmMjAgbGVnYWN5LXRydW5rCisxMDAzNyBjMDJhZjFlNzEzZWRjOGE0NTY0NzNiZWFlMTQ0NzIxYmU1Yzc5NTAzIGxlZ2FjeS10cnVuaworMTAwMzggYTQ0N2IyNjhjNzczMmJkOTA4NjgyYzExNTI3ZmQwNjA1MTkwMWFmMiBsZWdhY3ktdHJ1bmsKKzEwMDM5IGNjN2UxMjZmMDA5ZDM4OWQ4M2IyNTRlNGQ5M2EwOTE3ZjBjMmQ4ZmIgbGVnYWN5LXRydW5rCisxMDA0MCA0M2Y0N2I4ZTM5OGRhNTNkYTk5YTg2NGZiMzFlZDkyZjcwNDk1MjBiIGxlZ2FjeS10cnVuaworMTAwNDEgNTliMWFiMDFjMjg2ZWYzMTdhNThlNjdlZmIyOWFjNTM2OGExYmRmZCBsZWdhY3ktdHJ1bmsKKzEwMDQyIDFhOWY5YTVkZjA0YjE2ZjBiYzU3ZWUxZTRiNGUyNTA1MTM0NmVkYjYgbGVnYWN5LXRydW5rCisxMDA0MyBiYTEwYzQyOTk5YjhiY2EyNjljYjIwYWFlNmRmYjE2ZjEyMGE5Mjc2IGxlZ2FjeS10cnVuaworMTAwNDQgMmZmMmU0NTdhYjg3YWM3YWFlMmJiOWIwNzMzM2IzYmYyMDFhMjc3MCBsZWdhY3ktdHJ1bmsKKzEwMDQ1IDAwYWVlNDc0M2Q3YmE2OWVhYTllODUyMDk4MDI0MDQ2NGE4ZGZmODkgbGVnYWN5LXRydW5rCisxMDA0NiBlMTVlODVkOTg3YWY4OWU2NjYwYTliZjllMjBhNTNlOGI2ODlmZDczIGxlZ2FjeS10cnVuaworMTAwNDcgYjljYmYxNzRjNzIzODkyMDg2N2NmY2ZhNTgyZTRjZDZkOWI0MTFiMSBsZWdhY3ktdHJ1bmsKKzEwMDQ4IDhhZWU1MGE5YTFiMWZhNGM3NGM5NWYxN2Y0OGI4ZmVmMTE2NzUxNzEgbGVnYWN5LXRydW5rCisxMDA0OSA5NjhhYWJhMjgxYzUzZjAyYjNmNDVjMTkxNDk1ZmU5ZGZmYWFiZmI4IGxlZ2FjeS10cnVuaworMTAwNTAgYzlmNDE3MTI0ZTBmNzY2NTRiODhhNmYyNGI4ZGVjMzY1N2ZjODY3ZSBsZWdhY3ktdHJ1bmsKKzEwMDUxIGFhMGU4MTk5Y2MzMTgzYjNkODgxNzc4NmE3ZWY5N2RkODdhNDJmZWMgbGVnYWN5LXRydW5rCisxMDA1MiA3ZTdkNmIxYjhhNGIyYmRkNmE2NDcwNWIwM2E2YWZlOWMwYWYxOTYyIGxlZ2FjeS10cnVuaworMTAwNTMgZTY3MTE0NWFiNTA3ZTFkNjgxNzUyYTY2MzgzOTg0NzkyMDgzNGEzMSBsZWdhY3ktdHJ1bmsKKzEwMDU0IDJhMDU2ZDE5M2RkMzdhN2JkNDkxNTAyMjM3MzJlNDU5MDFkMTgxYjcgbGVnYWN5LXRydW5rCisxMDA1NSA4MjdhZWE1ZjU2MjE5MGQwNTAxMzU4ZTJmYjQyOGQzNDM1MDM0NjI5IGxlZ2FjeS10cnVuaworMTAwNTYgMjA0M2M2OWZmMWQ0NTVkODM5MmJjNjRmNWJiNjgxZWVmMjMxZTUzNCBsZWdhY3ktdHJ1bmsKKzEwMDU3IDQyYTIxODA2YjNkMmZlZTVhYzVmNDZhYzk1NjhhNzljZmY0YjI0YjYgbGVnYWN5LXRydW5rCisxMDA1OCBkNWY4OTU2N2I1YTlmNjdkMGIzMjMwNWEzMTc1MmM3YmUzNjFkMmE1IGxlZ2FjeS10cnVuaworMTAwNTkgMGY1NjVjN2ZlNGJiZmU5YjQ3Y2U5YTVkNTkyMTU3MWIyZjY4Mzc2MCBsZWdhY3ktdHJ1bmsKKzEwMDYwIDBhNGI0NTMzOGFjMjg1MjU2ZGRiYmUyMzIzNWY5YTRlMDIyYzU2ZWYgbGVnYWN5LXRydW5rCisxMDA2MSA5ZGUwZDUwNDljYTFiNjVmNzk4YTQ2MjE4ZThiZDRmNmI3MWFhMzE5IGxlZ2FjeS10cnVuaworMTAwNjIgZDJiNWQ5MzI2ZjA5MTU0NzBmNmZiYWQ5OGRiZDI5OGMyNmZjYzFlMCBsZWdhY3ktdHJ1bmsKKzEwMDYzIDJlZjBhY2E5NmYyZDMzYTU1ZmY0YWU3NWNiYjMzNzI5NzRmN2M4OGYgbGVnYWN5LXRydW5rCisxMDA2NCAwNzY1Yjk1OGNjNjdhMTliZTJhYThmNzQ2ZThkNmJhMGJkZTVmYWJhIGxlZ2FjeS10cnVuaworMTAwNjUgZmM3NjBjNjI2OTUwZGU5Nzc4NmI1Mjc2MzRkYTE4NjM3ZWRhNDM4OSBsZWdhY3ktdHJ1bmsKKzEwMDY2IDRiNjM0ZjAyNDNmOTdkMDMyYzEwYmJlNDZjYWQyM2U2MzgyYjI3MGMgbGVnYWN5LXRydW5rCisxMDA2NyBiZDA4ODZlNzhmM2I3ZTJiNGUxNWI3YzhjY2UzM2ZjODYyZjM0ODg4IGxlZ2FjeS10cnVuaworMTAwNjggYjZkNmE4MzRkYjQ5YWYxNWU0NzYyNzJkYTZmYzRiOWU3NTExYzhiZSBsZWdhY3ktdHJ1bmsKKzEwMDY5IDJmMzIzMjM4MTFjNTM1N2NhOWNjNmU4YjY3ZjUwMTRkOWNkNzVlMTggbGVnYWN5LXRydW5rCisxMDA3MCAwOTQ0MDYwNmFhYzU4OGY0OWM2OWMwM2JhYmU4ZDY3ZjQ0YmYwOTE1IGxlZ2FjeS10cnVuaworMTAwNzEgYTE5MDI5Y2Q3NmM1MTU5ZWY1MDBhYWNlYzc0NWYwNDhkYjdhOWEzZiBsZWdhY3ktdHJ1bmsKKzEwMDcyIDk5Y2VmYWE5YzUwOTcyYzViM2IyNWE2ODUyYjcwNzNhOGM1N2QxYjAgbGVnYWN5LXRydW5rCisxMDA3MyBjNDU2ZWJlMzUzMzc0ZGUxZTU1N2ZiNTBhYTMxYjc0NGQ4N2I5MjFiIGxlZ2FjeS10cnVuaworMTAwNzQgYWFiNzYyMjA1MDVlZmRjNjkyZGY0YTM5MjllZDViZWE0YzA4MDIyYyBsZWdhY3ktdHJ1bmsKKzEwMDc1IDM5Yjg0YTNkY2VhYTUwMzQwYjEwMGVjZGQ3YWQ3MzNkYWUzNWI0OGYgbGVnYWN5LXRydW5rCisxMDA3NiA3MmNhYjk1ZDM1ZTU3MDllZTk5MDZjMTQ4NWY3YzQzMmZhNjRlODU0IGxlZ2FjeS10cnVuaworMTAwNzcgMDk0MTU2ODBiZDRmNmM0ODE0MmI5ZDAxYWMyOWM1MTI1OGViNGMxOSBsZWdhY3ktdHJ1bmsKKzEwMDc4IDZhNDUzNTk1ZTYxOWU5ODA3NjVlN2Y3Yzc4NDM0YTY5NmI1ODg3NTMgbGVnYWN5LXRydW5rCisxMDA3OSBlY2FkMjM0Yzg3ZTQ0ZDhlYWMwYzA0Mjc4YTczYWU2OWZiOTFkNDc1IGxlZ2FjeS10cnVuaworMTAwODAgN2Y0YTUwM2NlNThiMjZmOGFjMmI5ZjMyNTlhOGExZGRjODUxNjRjNiBsZWdhY3ktdHJ1bmsKKzEwMDgxIGMwYmY5YjYwYzI5ODBiMjM4YjRlYThiNzFlOTIwMmZiZTIxYTkwYzYgbGVnYWN5LXRydW5rCisxMDA4MiBhNjNkNTUzZWI2NTgyOTJiOWQwNDhjYjkxZGJhOTNkN2JiNjI5ZTQwIGxlZ2FjeS10cnVuaworMTAwODMgNTk0MDdkNDQ4YjZhY2Q5MjBlM2QxYTM3MDQyOGZlYWYwZmI1MDhkOCBsZWdhY3ktdHJ1bmsKKzEwMDg0IGMwYzAyZTkyNjlmM2NjOTU2OTM0ZDAyNzZlMDhiY2Y3ZGFlYjBiZWQgbGVnYWN5LXRydW5rCisxMDA4NSAwMGFkMzA5YmQ1MDgxMGQ4YmRmOWY5MGQxODJkODE0MDI5YWZjY2NmIGxlZ2FjeS10cnVuaworMTAwODYgODkzYTMyMDk1MjIyNTQxZmRmNjkxOGNlZDliNWYzZTJkZDMwYzlkZCBsZWdhY3ktdHJ1bmsKKzEwMDg3IGFmYmJmZThmNTQ5NjcwNGE3YmExOTZkNWViNzA4NmE5MThjNDdmZDggbGVnYWN5LXRydW5rCisxMDA4OCA3MGJjYmNkZGE3NGY2MWE2ZjM1MTVlODJhNDBlYzMyNzc2NTcxYjA5IGxlZ2FjeS10cnVuaworMTAwODkgY2RmODBmNzQ1OGNhMWE3M2Q2MGUyZWJiZGRjY2ZkMzFjNmVlMjAwNCBsZWdhY3ktdHJ1bmsKKzEwMDkwIDQ2ZjJjNGZjOWUzODFhYmEyNjk5YjJhODg4YWFjNmIzMWIyZTQ3YjkgbGVnYWN5LXRydW5rCisxMDA5MSAxOTJlYTk4ODRlYjY3ZGZjYTY1NGIwODcwZTA3ZTgyNzk4YWQwNDgyIGxlZ2FjeS10cnVuaworMTAwOTIgZjM1YjI5ZWI1MmQxOTdlOWI2ZTY5NzUxYWJlNWFmMDVjODBiNzVhZiBsZWdhY3ktdHJ1bmsKKzEwMDkzIGRlYzY1ZmNlYTIxZWI5MWU2NDBmODYyYzZmMTYzZjU5ZGQ3NGJhODMgbGVnYWN5LXRydW5rCisxMDA5NCAwZTFlNGI0YTA4MjEwMjlmNTkzNTQzN2I3ZTcxZDZkNjFlYmE3NTQ1IGxlZ2FjeS10cnVuaworMTAwOTUgMDY4YTY5NDJmZTFhMTJlYTU0YzlmNmQ0OTg0MmY0NWNlZmFiOWFkOCBsZWdhY3ktdHJ1bmsKKzEwMDk2IGEzYTZlYzI1OTk4NjA1M2E2NWM4ZmJmNmM4ZTk4ODdjNDE0ODNhM2UgbGVnYWN5LXRydW5rCisxMDA5NyAyOTNiMGNiMzQ3MDQwNGMyOWEyN2U0MDBjNWJiODJmZmI2NzViZTY5IGxlZ2FjeS10cnVuaworMTAwOTggZWNlNjA0ZWQ2MjI4MTgzYThjOTFjYzk0MWQzMjA2MTY2ODMwMWI5MCBsZWdhY3ktdHJ1bmsKKzEwMDk5IDljZjZmOTQwOTU5NjUwOTBhNzU3NTBhNmNiMzJkZmM2MDZjNWI1ZWYgbGVnYWN5LXRydW5rCisxMDEwMCAwYTIwY2NlMTczNzE0OThkNDczYjQ0YzBmMDMzZmEwZWNhNDRlMzE5IGxlZ2FjeS10cnVuaworMTAxMDEgYzU0ZjFjY2RlNmE5ZGViNjI5ODg3M2JiNmY0ODBkM2EzYzg3YWM3ZCBsZWdhY3ktdHJ1bmsKKzEwMTAyIGE3ODc0MjllODQwYWViMGJhNmNhY2M5YTVhODA3Y2Q0ZmU0ZDhlNzAgbGVnYWN5LXRydW5rCisxMDEwMyAwY2U2NTkwNDdiYmYzMjI3Y2IyYTFhYTQ4MGVjMzZmYWJmOTIzZjk2IGxlZ2FjeS10cnVuaworMTAxMDQgNWFhNzAzN2ExZTNmYjUwZDkzMjI0ZDZiZTAyMWMzYmRiYWNmMjdkNiBsZWdhY3ktdHJ1bmsKKzEwMTA1IGEwYzdhYTA1MjJkZTEwZDlkN2JjMDIzY2YzYWQ4ZDk1NDQyNTU4Y2QgbGVnYWN5LXRydW5rCisxMDEwNiAxNjU0NTYyODI0MTIwZGNmOTliOGY4MjZiMTRmZmYwZjc3YjQwMjRjIGxlZ2FjeS10cnVuaworMTAxMDcgNzk2MGRhMDU0OWM0NzQzZTI5NjRiOTk2ZDhjNmM2ODJiMmIwNjg2NSBsZWdhY3ktdHJ1bmsKKzEwMTA4IGRiMWU1MTRmMTYyOTczMDJkNDU4YzlkYTg0ZDVmMjQyNDkxY2Y4NWMgbGVnYWN5LXRydW5rCisxMDEwOSA0MjJiYmU4ODVjYmY3MWE2MTJmY2ZlY2UwYTVkYmY4MzdiMGViNGMyIGxlZ2FjeS10cnVuaworMTAxMTAgZDIyY2Y2NjZmYTJjODhjNTA4N2EyZGM4MmNhYjAyNGJjN2Y0YmM1ZSBsZWdhY3ktdHJ1bmsKKzEwMTExIDU1MzQ1ZDZkMmMxNDFjMDJlMjBlMmEyM2ZjNWY2MTkzN2RkZGM2NGUgbGVnYWN5LXRydW5rCisxMDExMiAzZDE1OTBiNWUzZGRmZGVlMmIyNzgyN2Y2YjRkZjkzYjJiZGRiYmE1IGxlZ2FjeS10cnVuaworMTAxMTMgYmJkZDI4ZDM2ZjQyOTc3ZmI2ZjQ5NzJiMjQ1MTQ2OTAyM2RhOGUzZCBsZWdhY3ktdHJ1bmsKKzEwMTE0IDU0NzJhYjYxMGZlOWU0OTk2ZjViMTY2OWVmZTBkMjkyMTlmNjU4ZTggbGVnYWN5LXRydW5rCisxMDExNSBjMTEyNDQzY2FiZTExNmUyMjUxZTAwZjM5ODQ4YTljZTRkN2VmNDRjIGxlZ2FjeS10cnVuaworMTAxMTYgMWMwZjU4Yjc2MDgxYTg3MDI3MDlmOTQwMWRkY2EzMjNkNWQ2YjQ0YiBsZWdhY3ktdHJ1bmsKKzEwMTE3IGM2Mzg3ZTI0MmI3ODBhZmM2ODhjMDZjZjdjZDkzNjAzNDM5MmM1NDkgbGVnYWN5LXRydW5rCisxMDExOCAwOTUwMTI3MTg1ZWFiNjRkNjliODBlMDhhMGYzNGRiMmZlYjNlNjRhIGxlZ2FjeS10cnVuaworMTAxMTkgMmJiZWZlYzE2NTQyMDRiYTVhY2M3YTk5OGJiODg1YTljZjQyMGQ2MCBsZWdhY3ktdHJ1bmsKKzEwMTIwIGY3NzkxNjE3YzJiMjVkOTZkN2ViZDU0NGUzM2FmNDhjMTgyZDBlZmUgbGVnYWN5LXRydW5rCisxMDEyMSBiOTVlNTIzZGNlNmNjZTEwYjE4NjcyMDk1YTM3YmNiZjk3NTQ2ZTA4IGxlZ2FjeS10cnVuaworMTAxMjIgZDhkODg0NDdmM2MxMzE0YzcyMjZhNjRmOGFjMjM0ZjNjNjM0N2JjNyBsZWdhY3ktdHJ1bmsKKzEwMTIzIDdhZDUyMmE0Yzc1M2ExMDRhMWRjNGY3MTU5ZDUxYjVhNWY2NTc1YTYgbGVnYWN5LXRydW5rCisxMDEyNCBkOTJmMTBjNDUxYTEzOGRhNDM0NTFhZjNlNTU1YzA3YTQ4YWE4NGY1IGxlZ2FjeS10cnVuaworMTAxMjUgZGVlNTYwMjVkMzkwYjQxZjNkMGZiNTBjZDg4MjkxYjgwMWMyNjI0YSBsZWdhY3ktdHJ1bmsKKzEwMTI2IDAyYzY2NDI4ZjA0ODQxZGY3MjM3Njc1YWQ1MmRkMTZjMDhlNTQ1NjggbGVnYWN5LXRydW5rCisxMDEyNyA5MzJkZDZiOTBlMTNhNzkyMzBmYjU4YWY1MDVhODRhOTUyNzhmODJjIGxlZ2FjeS10cnVuaworMTAxMjggZWE2ODYxOWZiNTZkNGQ1NDFkM2E2YTQ3OGUwZGQyNTA4YjRmODY0NiBsZWdhY3ktdHJ1bmsKKzEwMTI5IDk1NTJkNGIzZDliNzgxNDI1ZTM4YjJkODBkYzJkNDRkMjc5NjllNTQgbGVnYWN5LXRydW5rCisxMDEzMCBkNjRkYmQxY2QzMmViNDM3OTE4MTYwNTcyNDA2ZGUwNWEzNTU5YjY3IGxlZ2FjeS10cnVuaworMTAxMzEgYjg2NzcxYjBkN2Y5MTg3Y2IxMjFhYTk1NTU5ZGY4ZGUyMWJmNmMyNiBsZWdhY3ktdHJ1bmsKKzEwMTMzIDc1ZDAwNDhjODY0M2RiNWU0YjZlMjUyNjFmYTA1NGM0YWU5ODg0ZWQgbGVnYWN5LXRydW5rCisxMDEzNCA3M2VlYmRhY2ZiNzc2MjNmODMwNWNkNTgwNGNkZmExNWJkYjZmYWM1IGxlZ2FjeS10cnVuaworMTAxMzUgNmIzZDNhMjg1ODFmNGMwZmRkNGVlY2ExYWRjNzg1ZTc5MDg4YzQwNCBsZWdhY3ktdHJ1bmsKKzEwMTM2IGYwMTdjNDg1OGJhOGMzNmFiZjgxOWU3YjcxNGY0YzhlYTAwOGY3ZDQgbGVnYWN5LXRydW5rCisxMDEzNyBmNzVmZjhkNDQzNGQ4N2I1MzUzYjZlZWI0YzZmMGIwYWI0NDgzNjRmIGxlZ2FjeS10cnVuaworMTAxMzggODY5MzczZmEwYmY4Yjg2NGQ0Y2I3OWRmN2QyYTM3MTkyNTZhNTBmNSBsZWdhY3ktdHJ1bmsKKzEwMTM5IGYwM2U2NjVkOWY3Mjg4OWRiZGNmYTYyYzQwODJmMDc0ZTI1NWQ0N2MgbGVnYWN5LXRydW5rCisxMDE0MCA0N2RkZWIwNzk1NzU0NmIzMjA3MzIwNmRmYzI3NjYzNWUwNDVmNDI5IGxlZ2FjeS10cnVuaworMTAxNDEgZWEyZDMyMTdkMGM3MjEzODFlMDkxYjYwMzQwNjk4YzM2ZGY5ZjQwMCBsZWdhY3ktdHJ1bmsKKzEwMTQyIGFjZDM5M2E5M2VkMDQ0YTUyNTU4ZTExYTI1NjczYjZhNzhkMjBlOGQgbGVnYWN5LXRydW5rCisxMDE0MyBmMjg1NWQyYWNiZDM5OTQ0ZjM5MjRiZjI2MjM5Yzg0ODM1NTUzNmJiIGxlZ2FjeS10cnVuaworMTAxNDQgYWJhZTY4YWYzMzRmNjUyYTMyNGE0ZjlmOTQ0YjhmZGE0ODg3YjFhNCBsZWdhY3ktdHJ1bmsKKzEwMTQ1IGM5Mzk0YWVhYWM2YWRjMjdjZmQyYjM2NTdhYTFiODIzOTM4OGE2OGIgbGVnYWN5LXRydW5rCisxMDE0NiAzNWYyOWI3ZGFjZjUxOGM1MmFiNGI2NzU4NmYzYzdjMDI2Zjk2Y2IzIGxlZ2FjeS10cnVuaworMTAxNDcgYWQzNDY3MWNkNGM5NjI5ZTQ2ZmRmMDI0NjFhMmFjNmEzNGYxMjVlMyBsZWdhY3ktdHJ1bmsKKzEwMTQ4IDFmOGM4ZTBiYjVlZjYwMGQ1N2JlMzY3YmE2MjU5MzM2OTljMDY5YjMgbGVnYWN5LXRydW5rCisxMDE0OSA4ZTZhNTgwMTk4ODczZTYwYTBiMDMwZGVlYzEwYjQyMTA2ZTg4MmM2IGxlZ2FjeS10cnVuaworMTAxNTAgMGNmMmZmYWY0YmQ3YzUwZWRiYjQ1NGUyNDg4MzI5MDA5MTY5M2Y0ZSBsZWdhY3ktdHJ1bmsKKzEwMTUxIDFmYjg2OGYyNTQ1OWZlMzZlMjMwNDgwNjQ4YmI5YmI3NzhkYjVhYjEgbGVnYWN5LXRydW5rCisxMDE1MiA1MjhlMmI5NGU4Yjk4NzNhNzYzZDIzN2RiODc5NjdjNGQ2ZWU5NWRjIGxlZ2FjeS10cnVuaworMTAxNTMgMzU3Yjc3ZTM0NWYzNjU2MGYyZWI2ODVlODRmMTljNTE3YjRlYzgwNiBsZWdhY3ktdHJ1bmsKKzEwMTU1IDcxMjJmZjRjNGFiZTY5Y2EyZmEzMmUzMGE0NTFhNzk5YmE1OWE3OWYgbGVnYWN5LXRydW5rCisxMDE1NiBiZGNmNzA4YWU0ZGFlOGNjOTg3YWI1MDYzMmZlMjE3OTAyOTIyNjU1IGxlZ2FjeS10cnVuaworMTAxNTcgNzJmMmFiYWNmMTUxZTQxODQ4ZWU5MThhMjUzNTlhYjI0MmM2MmUxNSBsZWdhY3ktdHJ1bmsKKzEwMTU4IDQwMzAwNTljZjk3YzEzNDEwYTMwYTVmYzc1ZTYzODhiYzMzYjBiZDUgbGVnYWN5LXRydW5rCisxMDE1OSBhNjEwMThhMmE1MDJhNDJmZDk0YTM5NDM2NzMwNDBjNzk3OTJlNzA2IGxlZ2FjeS10cnVuaworMTAxNjAgMmM5YzI0ODU4MWEyMDIzZGVjMmExNDVjYmE4ODBiMjI3NWVmM2RkYSBsZWdhY3ktdHJ1bmsKKzEwMTYxIGUxZTc2NzY2ZDhjYWUxNTYwMjA4MDIzNjBlZWQ1NjE1ZjhkOGE1MzIgbGVnYWN5LXRydW5rCisxMDE2MiA1MzM0ZWVmMTk3NGMwNTVjZTkxZmQ1MDkwYWQwMjM2NWIzYzM2OGM3IGxlZ2FjeS10cnVuaworMTAxNjMgNmJmNzQyNjRiOWMwYzMxNTQ1ZjcxNzc1NWUyNzdhNTNhMjA3NmI5NCBsZWdhY3ktdHJ1bmsKKzEwMTY0IGYwZDMzZmRiMzkyMTkzZjdlYmFlN2E4MzE4ZjE5OWU1ZDc0MjUyYTYgbGVnYWN5LXRydW5rCisxMDE2NSBhZmRjYmVmMTdlYzBmZDA2OTQzNTI5MTQ2NTcxODVmNDJkNjc5ZjVjIGxlZ2FjeS10cnVuaworMTAxNjYgNDgzOTcwMDYyOTE1MTE1YWFjMDQ4ZmU3M2RkNDNmMTc3OWFkZGM1NCBsZWdhY3ktdHJ1bmsKKzEwMTY3IGMyZTFkYjFlMWJiOGZiZDFjYWJlMTQ4MzVmNjY5NmU5Njg5MDI4NGMgbGVnYWN5LXRydW5rCisxMDE2OCAwNGQ3Mzk3OTcwYzIwNjdhN2ZlNGU1YjUzNzg2MDdkMzVkN2E3NzdkIGxlZ2FjeS10cnVuaworMTAxNjkgNTU0ZjJiODc5ZmJiMTFjYjIwZjJmMDk3Y2FkM2MzYzgxMzBlNmQwNSBsZWdhY3ktdHJ1bmsKKzEwMTcwIGY5MjQ3MjdjZDAwYjZhZDk5YTZhZjVlNTlmMDgyZDYxNzE1OWZjMDEgbGVnYWN5LXRydW5rCisxMDE3MSA5YmY4MWQ5M2I5OTViNGMxNWE1NmVkOTJkNmQyNzllOGNmMmFkMjIxIGxlZ2FjeS10cnVuaworMTAxNzIgNTdhNDIxODM4OTdkY2E4NTI1MjI3ZTgwYTIzZThmYzE5MWFlOWRkNSBsZWdhY3ktdHJ1bmsKKzEwMTczIGZmY2RjZjlmZjBlYmM2NmFhNzgyMTEzNGQ1YWY2ZTAwNmUxMGUwOTggbGVnYWN5LXRydW5rCisxMDE3NCA1ZTNjOWQ1MzBiYzFkM2JiNDAyZDRmNjJlNzIwMWVlN2UwOTBhNDFmIGxlZ2FjeS10cnVuaworMTAxNzUgMWNlZDAzNjcxNTc0OWVkODgwN2NjNDdkMzVhODU0ODg5MzBlYzNkNCBsZWdhY3ktdHJ1bmsKKzEwMTc2IGQyM2JmZTA2MTc1ZWVlN2E5ZDYzY2I2NjNjNjNhODQ3ZDdiNjJjM2EgbGVnYWN5LXRydW5rCisxMDE3NyBlNDBmMmE2ZTUyNmRkMmRjMGQzNzVjNDk2YjBlOTlhODQzYjZhYzc2IGxlZ2FjeS10cnVuaworMTAxNzggYWJlN2YxZjQ3NjhiMDFjMGZlZWI0OTA5YTUyY2I0ZGM5ZGRmYTVjYSBsZWdhY3ktdHJ1bmsKKzEwMTc5IDk2YjdjMTMyM2QzMGFlYzljNTkzNGJiYzdmZjlkOGYyZTZmZThmOGYgbGVnYWN5LXRydW5rCisxMDE4MCBhYzg3Nzk2ODU2MmNjZGQxY2I3YzY5OTE4NGFkNTc1YzUzYTU3YzM2IGxlZ2FjeS10cnVuaworMTAxODEgMmNjNGJjMGNkMDM2NzU4ZWQwMDVmMmRkZDczOTdjNGJkMzQ3ZGI1MiBsZWdhY3ktdHJ1bmsKKzEwMTgyIDRiODI5ZTZjMGRjNTU1YTUwMGFjNjkzMGVhMmQwMzZlMzk2NzEyOTcgbGVnYWN5LXRydW5rCisxMDE4MyAyY2QxNDZlMmEzYTBkYjIwNjYzNWIxMTk5NTI1ZGIxZDdiYTIzMDlmIGxlZ2FjeS10cnVuaworMTAxODQgYzlkNTQ2ODA5ZTRmOGUzNzBhNTJiY2ZlMDY4NTE2ZDI1MTUwNzgyMyBsZWdhY3ktdHJ1bmsKKzEwMTg1IGEwMDNlMTRmZWQ4NzcyMzkzMjU0OWYxYzJjM2I0YWVjMGUxZDFlOTcgbGVnYWN5LXRydW5rCisxMDE4NiA1NWUzZjg5MWRiYjVkN2RmMmNmOTJjMjlhYmNiN2ZkNjViMGFhNTY0IGxlZ2FjeS10cnVuaworMTAxODcgMjM2MTQ2NTBlMjliMWRlZWVjYzJmN2UxODliNmU4ZTQ4NDI4NWY2ZSBsZWdhY3ktdHJ1bmsKKzEwMTg4IDQ5OTFhYWFiMTdiZGVmNTUxMmViZTNmMTRiZWRjMDQ2MmJmOWQ0ZGQgbGVnYWN5LXRydW5rCisxMDE4OSBhYmI4MDJjMjE2YWQyNDM2NjUxYWM2YTJjYTMxMjM1NDE2ZTg3YjM0IGxlZ2FjeS10cnVuaworMTAxOTAgNzA2ZTRiOTU0ODYyNDhhN2Y5NTE1ZTdhYmQxYmMwNzRiNmEzNzExYyBsZWdhY3ktdHJ1bmsKKzEwMTkxIDU2ZGNmYzI3NzEwYWI2ZWYzYjNlNjI5OWU1NWZkOTk5Njg4ZTFhZTYgbGVnYWN5LXRydW5rCisxMDE5MiAwY2JjOWRmODgyYjZiZGRmNGRhNDUxNWU5YTRlNzlmYTI4Yzk0ZDQxIGxlZ2FjeS10cnVuaworMTAxOTMgMjRmZjY5YWQ0ZGEyMjM5ZmUyZGY2ZmI0OWZiZjg1ZmJlOTc5YzM1NyBsZWdhY3ktdHJ1bmsKKzEwMTk0IDhkYTcxYzUxNTcxNmFkY2Q2M2NhNzQ4ZGIxNDg0ZDk1NTgwODM3MTggbGVnYWN5LXRydW5rCisxMDE5NSAzODhiMDk3YmRkYjk1NTFhYzc2OGMxYjk3NmIwZWQ5MDdhNTI0NGJiIGxlZ2FjeS10cnVuaworMTAxOTYgOTI3MTM0MGM3ZTBjYzk4OTQwOWI4ZTc5NDMxZWY2MjAwMDM0MDFhMyBsZWdhY3ktdHJ1bmsKKzEwMTk3IDk5NWFlYTA5MjkxNzMzYTY1ODJkMzg3YzlhYWQyNzc3NDM4MjJlYjUgbGVnYWN5LXRydW5rCisxMDE5OCBmODM0MjVjYzdlOTY3NWUxODQwODE1NTNhZDNiZDBiNWMyNjBlMGFjIGxlZ2FjeS10cnVuaworMTAxOTkgZDIxZGM1OWM4NmQ3NGQwYjAxYjQwYWJkOTc2NzNlNTA3ZjgzMDJjOSBsZWdhY3ktdHJ1bmsKKzEwMjAwIDVjN2JjZTA1M2QwMzg4NmVmZDkyZmU1NWU3NjVlZGJhZGExNDdkNWYgbGVnYWN5LXRydW5rCisxMDIwMSBmMDkzZmNmZDU2MjVlMWRiOTQ4YzQyNWU2Y2IyNzZiYzU4MTAxZTY1IGxlZ2FjeS10cnVuaworMTAyMDIgNjczMThkM2ZhNmRjZDY0YTM5ZTMwZGUwOWZlYmQ1MWU0OWUwMzExZCBsZWdhY3ktdHJ1bmsKKzEwMjAzIGQxMDNjMDE4MGIyZGUwNmU1NWU0NGQxMDc1OTdjYzQxNTc2ZGNhN2QgbGVnYWN5LXRydW5rCisxMDIwNCAxYmI5NDNjZDJjMjNkYzdkMzNmYTc2MDY1NDI0ZmEyMDY5NmUxYzFmIGxlZ2FjeS10cnVuaworMTAyMDUgNjYzMzY3Y2ExM2Y4MTY0MDFmY2ZmOGEyYmIyZjQwMjVjOWZiOWE4ZSBsZWdhY3ktdHJ1bmsKKzEwMjA2IDA5NTYzNmI4ZmFiN2U4MTFlNzcyN2MyZGVmOTAwNzFmYmZlZDIzNzEgbGVnYWN5LXRydW5rCisxMDIwNyBjYjI1Njc5ODM0N2ViOTVjNjE5MmM2Y2RhODE2MWIxNzA3NDBmMDJiIGxlZ2FjeS10cnVuaworMTAyMDggNTJkYWE3MGJiMDg0OTM0NTIwNTM3YjVmOWFlMjJkMWE0YjEzNTNjMyBsZWdhY3ktdHJ1bmsKKzEwMjA5IDg5NTgyZmExODI0ZmJhOTk1NTdiMDJlOWM3ZGYwMTYwYTE5NDQwMmIgbGVnYWN5LXRydW5rCisxMDIxMCBjMTA5ZDVjYWQxMDA3NTZmNTA1OTU5NjExYzBiNGY0NGU4M2M1MTJhIGxlZ2FjeS10cnVuaworMTAyMTEgOWMzN2VkODg2OGI5ZWZiYmM5NjhmOWVhNTRmOGQyZTIzMmYyMDQ3NCBsZWdhY3ktdHJ1bmsKKzEwMjEyIGI4ZTFlMTA1NTY0OWQ2Mzc3ODU2ZmQ2MjM2NGE5YTBjYjVhOTE1MGMgbGVnYWN5LXRydW5rCisxMDIxMyAzMGUzMzE0OTY5MzBiNWJhYTk1M2JjZmEyYTEwMTYyNTRmZjU4ZDRiIGxlZ2FjeS10cnVuaworMTAyMTQgNzI1YjM3MGU4NTNmMGUxZjBjZmFmMzU1MTA3MDdhMWE5NjM0NDQyYSBsZWdhY3ktdHJ1bmsKKzEwMjE1IDdhOWFmYWJhODhkODQyY2MzOWU2YjkwYTdjMDY2ODgzODVmMDE2MjUgbGVnYWN5LXRydW5rCisxMDIxNiBlZDMyMDAwMWMyOWE4NzcxZTcwNWYyNDIwOWEwNmRlNTgzNjk5ZTEwIGxlZ2FjeS10cnVuaworMTAyMTcgNWQ3ZTRkMjBjODllZGQ5OThiODBiMDUwYzdkMzExZDM1MDcyOWNmYiBsZWdhY3ktdHJ1bmsKKzEwMjE4IGJiZmQ5NDZiMGIzOGM4ZjE2ZTVlODdjM2UwNjlhOTU0MDk1Mjc0ZGUgbGVnYWN5LXRydW5rCisxMDIxOSAxMDkxYmEyYmFlYTRhMjljYTc5N2IzMzEyNjY0Yjc4ZTJkMzRjZWU0IGxlZ2FjeS10cnVuaworMTAyMjAgNDIzYmU3Y2QwNDc5NTIyYjBjM2M1Y2I1ZmVkZjNjZDFkMzY3OTg5MyBsZWdhY3ktdHJ1bmsKKzEwMjIxIGUyOTAyOTAyOTQxNGIyYTljNWU2ODBjNTVjNjY1YjI3ODVmNjVkMTIgbGVnYWN5LXRydW5rCisxMDIyMiA1YmY2NmFiNGRmYjZmNjljNTIxM2IxNTNjN2I2Mjk2YjZmZjYwMjEyIGxlZ2FjeS10cnVuaworMTAyMjMgMjY5YTMyN2Q2MzA1ZjI3ZDUwZmY0NzFkMjgwMzNlYWY1YjgyNzM4NiBsZWdhY3ktdHJ1bmsKKzEwMjI1IGM0OTg0NTFjNWY1NjQxNjNjMjQxODNlN2U3OTk2OGVkMGIxYThmNmMgbGVnYWN5LXRydW5rCisxMDIyNiA0NWEzZGFiZjBmYTgzYzkwMmVmMTNjNjA0OTk2Y2FlMWEyNGZlYjFlIGxlZ2FjeS10cnVuaworMTAyMjcgNzkyYmZkNDczZjUxNjg4ZGQyNGZiOTM0MmRmMDIwMzBiZGNkMzgzZSBsZWdhY3ktdHJ1bmsKKzEwMjI4IGFlZGQyZDBkY2IzMTU0M2JjNTNlODJjNmNjMDZmY2Y2MDJjZTk2OTQgbGVnYWN5LXRydW5rCisxMDIyOSBhNzNlZjcyMGZiNTY2MzZmNzM2MGM4N2ViNGNjZjY0NDhiNDdhYzhlIGxlZ2FjeS10cnVuaworMTAyMzAgM2MwOGZiOWUxMzRmODJjYzg4ODhlYmYzYWU5ZDQ0ZWJlOWI3NmZiMCBsZWdhY3ktdHJ1bmsKKzEwMjMxIDY5NzJlNTBmMzQ4M2U1MTM1Mjg2YzAzZDNjNjkwNDgyYzM2NmQwMzkgbGVnYWN5LXRydW5rCisxMDIzMiAwYzgzN2RhYjViOWVhYzVkZTQ4NTgxNzIwN2QxZTA2YWE3MzFiZGY1IGxlZ2FjeS10cnVuaworMTAyMzMgYjRiMGU0ZTc1OWM1ODFmMDgxNWRlZWQ1YzYwZjQ5Yzc0YjM4ZTc5YiBsZWdhY3ktdHJ1bmsKKzEwMjM0IDhlZjA2NzU1OWQ1YTM4MmY2YjcwMGVjNTBhNzA2NGE2ZmEwYjc3OTcgbGVnYWN5LXRydW5rCisxMDIzNSAwMzNkYmU5MDkyMTgxNTQxZGE1YTFhNTg3Y2FkZDNiNGJmNGI5NzkzIGxlZ2FjeS10cnVuaworMTAyMzYgZmI0YjRkMDY5Y2M3Y2RiNGI2NjUzMmViNDlkNzdhZDA2ZDI3YmRmZiBsZWdhY3ktdHJ1bmsKKzEwMjM3IGE0MTkzMzRmM2IzOTdiNjRlYTBiYmY4NDgyODM2MTBkNDEwZmNjNjYgbGVnYWN5LXRydW5rCisxMDIzOCA3OGMyN2UzMWFjN2M5ODA2ZWMzMGNjNDg0OGIzZmY3ZDQyMWYxYTk0IGxlZ2FjeS10cnVuaworMTAyMzkgYzMxMjU3YjkyNDQ3ZWNlNWQ3NDc2OGRhOGJhMjJlM2FjODZkZGY1MCBsZWdhY3ktdHJ1bmsKKzEwMjQwIGE1ZTJiZWJlMTc5YWU3NmZiNmEyYjcxMjczZGU5OTI3Njc4ZDI2MzcgbGVnYWN5LXRydW5rCisxMDI0MSA2YmZhNjUwZjMxMWRmNDZlNjcyMjk1MWZmNTZiYWNhM2IzYjgyNjkyIGxlZ2FjeS10cnVuaworMTAyNDIgNDU4YTMzYWJiMzljMWFlYTNhZDQ5NjAwMTIwZDk0ODI0MWVkNTdjNiBsZWdhY3ktdHJ1bmsKKzEwMjQzIGFjZjNiOTUwY2I0MzdkMWI3ZWVkZDExNjE4ZmUzYjQzNjgyMDdmZTEgbGVnYWN5LXRydW5rCisxMDI0NCA5YzAyZTBhMjY1MTFhNGZmMmM4NTNiMDcyNGYwZjhiOTVjMTIwNWU3IGxlZ2FjeS10cnVuaworMTAyNDUgOWQwZGMxMTc3NWE0ZTQ3YWU1NGI5NzQ2ZjU3MjJlNDllNzk3ZTA2ZSBsZWdhY3ktdHJ1bmsKKzEwMjQ2IDhiNzg2NTNiYWYxZmQxMjJiOWU3OWJkOThiYThlMzc0YjE5NjI4YTYgbGVnYWN5LXRydW5rCisxMDI0NyA1ODdkMDE3OGY4ZDM2NmYwMDljM2NmMmU0ZTZmNGQ0NmM5MzdmNzcyIGxlZ2FjeS10cnVuaworMTAyNDggN2ZkNzlkZGZiYjhiODg0ZWY5NjRjYTVhMDY3MGMwNmRiZDZjY2RlYiBsZWdhY3ktdHJ1bmsKKzEwMjQ5IDhmMTc3OTMzYzQxZmFiM2MzMTlmNTdiOGZhNDczMDJlNTUwYzdmNDggbGVnYWN5LXRydW5rCisxMDI1MCA0NjlmNjY5MThkZDZjYmJlNTJmZjZkZTQ1ZDI4ODYxOTJhNThkNzNmIGxlZ2FjeS10cnVuaworMTAyNTEgOWY0NmU3MGViZmJiMmQzNjVhNjY2Y2NkNzhiNTM4Y2M0YWViMThmMyBsZWdhY3ktdHJ1bmsKKzEwMjUyIDcwN2QwNjJjYWU3YmZmMWVkNzg1ODUxOWMyYjZiYzY1NWNkMzBlMWMgbGVnYWN5LXRydW5rCisxMDI1MyA5MTcyOTMxZmQ4MGE0OGFjODcxMGFkYjE4YzAyNzNmNjBmNzM0YTdjIGxlZ2FjeS10cnVuaworMTAyNTQgOGE1Njc0MTJiMjFiYmFlZjczYWJmZTYzNTQ0MWY1ZDQ2YTA5OGVkNyBsZWdhY3ktdHJ1bmsKKzEwMjU1IDVmYjY5ZmYyNGNkZGMxM2NiNzRlMmU3ZmJhYmE1YmQ2YTgyZDI0MTQgbGVnYWN5LXRydW5rCisxMDI1NiA1N2YxMWFiNGUyOTIxYjE0MjAyMjAzYzQ5NzdjNGJlMDFlNmUzZWUxIGxlZ2FjeS10cnVuaworMTAyNTcgZGI5NGIxNWJkNjQwMGJlNTMwZjZjM2Y5NjcyMDA5YmNlN2JkMTU0ZiBsZWdhY3ktdHJ1bmsKKzEwMjU4IDVlMjE1ODk0YzU1NWEyNzI4OWEwYWRjMDkyZjc5MTAzNTRlYWM4ODEgbGVnYWN5LXRydW5rCisxMDI1OSBiMTdkMjAwZWRmNjI3YmRmNTFkNTNhODVlNmE5ZWQ1Yjk3ZjY4MjMxIGxlZ2FjeS10cnVuaworMTAyNjAgMWM0MjA2OTlkNThhM2JhMmUyMmM2NjU3ZDQzZDFmNDk5ZGVkOTdjMSBsZWdhY3ktdHJ1bmsKKzEwMjYxIDNlMTE5OGQyMGY5Y2UxMzM3NTdjNDQzMWVmNThiMjdkZmU4Y2E3ODggbGVnYWN5LXRydW5rCisxMDI2MiAzNmIzYjY4NzZhNTgwZWIwZGZjZjQyYzk4ZDM0MTM5OGYxYTg1YzI1IGxlZ2FjeS10cnVuaworMTAyNjMgN2ZjMzJhNjYyNTVhNzdhY2Y1MGQxZWE0ZWQzNTg2MmNkMTUzMDUzMiBsZWdhY3ktdHJ1bmsKKzEwMjY0IGNmZTZmNThkZDBkOGVmOTIwZTFhZDE4ZThjYWI5YjQxYjZlZDlhYzAgbGVnYWN5LXRydW5rCisxMDI2NSA4MGIyNjc0ODM4MjhlNTgyMDNkMjEzYTJmYjhlMGJlNzU5OWY4MDEyIGxlZ2FjeS10cnVuaworMTAyNjYgMDU2OTJjNjYxNDM0YTE1ZDk1YzgxOTQ0MmU5MmY5ODcwNWI4NGY1ZSBsZWdhY3ktdHJ1bmsKKzEwMjY3IDZhZGY5MTdlZTc3MzBkNzM5ZDA2MTYwZmY2ZWRiZWJlYTY0MWMwMGEgbGVnYWN5LXRydW5rCisxMDI2OCA0NGZjN2ZmZGZjNzdmYmVhN2MzM2U3OGFkNDhiMjY4OThmYWRjMTg3IGxlZ2FjeS10cnVuaworMTAyNjkgYjFjMDkxNTAxNDExMGZiZmM2YWQ5ZmY4YzYyMzZhYjgwOTk4MGJhZSBsZWdhY3ktdHJ1bmsKKzEwMjcwIDg4YzUzOTIxYmY4ODA5ZTY2YzU4MDdkYzIxOGEyZGNjMTdjZGVkMjEgbGVnYWN5LXRydW5rCisxMDI3MSBiOWUzMTEyMGEwYzRlYWU5ZTVjNmU2NTUxNjQxMDJlMzM5ZjZmNjBiIGxlZ2FjeS10cnVuaworMTAyNzIgMjNkMDQ5MDAyNTY4OTUxN2FiMTZkOTY4YjI5Yzc4YjZlNDc4NjJiOCBsZWdhY3ktdHJ1bmsKKzEwMjczIDhkNDE0ODIxM2NjMDJhNmRjMTkzNWY5YzhlZThiNThmMTI0ZDBlYzAgbGVnYWN5LXRydW5rCisxMDI3NCAwNzQ1MzE0MGEwOTU1MDA4OGQxZGRiN2E3NTdmMWRjZTg4NGQwZGZhIGxlZ2FjeS10cnVuaworMTAyNzUgMzc1YTkwMTA2NWMxYjg3N2E1ODc5N2FmMmE1ZDM2OGQzMDA1ZTA0MSBsZWdhY3ktdHJ1bmsKKzEwMjc2IDQzM2MzODFjMzcwMGUzYjAxNjU5ODcwNmY1MmM5YzU2YmU0ZDczYmIgbGVnYWN5LXRydW5rCisxMDI3NyA2OGUyYjBkYmJlYzhlYjYyMGEyYjliMGRmZWQ0NDFjNDNkMjAwN2VmIGxlZ2FjeS10cnVuaworMTAyNzggMDY4YTc3NjJlMjg2MTMxNmNiZWQ2NTk1NmUzNmRmZTlkMjBiN2Q2OCBsZWdhY3ktdHJ1bmsKKzEwMjc5IDQ5ZjExZWI0ZWI5YTMzMjIzM2FhZjc5YzAzN2Y0YTc1MTk3ZTU4NTAgbGVnYWN5LXRydW5rCisxMDI4MCBjZjcyMzk5MWQ3NWZhZDE2YWIyZjNlOGQxMDllYzM1MjAxNGYzY2M0IGxlZ2FjeS10cnVuaworMTAyODEgY2Y0MjAxZWY3M2FhMmM2YWI0ZjQ5ZWJhYTcyOTk5YWM1MTRlMTFiNyBsZWdhY3ktdHJ1bmsKKzEwMjgyIDA0Nzk5NjY2NmM4MTg5OGIwMzQxODhhMmMzMGMxYjRmYjVjY2ZhNGEgbGVnYWN5LXRydW5rCisxMDI4MyBkZmZlMWU0NzBlNmNmM2NmMTE3MjQ4YjcxZWUzNGFjZmM1NzcwYzI0IGxlZ2FjeS10cnVuaworMTAyODQgMDY2MGYxN2FkZTYwM2NhMmE0ZmZkMThiMzY2NmUxNWNkY2YyZGY0OCBsZWdhY3ktdHJ1bmsKKzEwMjg1IDZkMDRlOGM4MTdmYmVmYTYwYTVkZTlkMWMxZTUxMTAxNmQzNWEwN2YgbGVnYWN5LXRydW5rCisxMDI4NiA0YzZkYzA3ZjFiNmE2MGNjYmZjMGMxMWU4MGNkMTVjZGM0MjE4MzI2IGxlZ2FjeS10cnVuaworMTAyODcgODFmOTgxODgwMTJlNDE5ZDA4MTk2ODQ5MmNjYWI1Mzc0ZWJkZTYzYyBsZWdhY3ktdHJ1bmsKKzEwMjg4IDVkMTVmNGZkNmQ2OWZlZWU2MzE0NmM3NDExNGIwZGNjOGEzODk4YWYgbGVnYWN5LXRydW5rCisxMDI4OSA3MGNjYmJjYzEwY2NhZDQxODkxNzgxNWRkYzJjOGIxNGRjZTJjZDk2IGxlZ2FjeS10cnVuaworMTAyOTAgZTU4MGFmYTFjODMzODBiMjQ0MmRlNmZlMDg1ZjEyNmNlMGNmZGJiNCBsZWdhY3ktdHJ1bmsKKzEwMjkxIDk5NjdiZTFmNDAyYjFhMDYxMzQ5ZmUzMzg4YTMxOGFhMmNiMjkxYzAgbGVnYWN5LXRydW5rCisxMDI5MiA0MTJlNmFiMDNjNmZmYWQ5OTA4MzE3MWVhZjZlMzAwMGQ0MTJjNTBiIGxlZ2FjeS10cnVuaworMTAyOTMgYzA0NzA4NDRjN2JjN2M2ZTViNzA4MGU5ODNmNGMyMzk0ZWUxNjBkMiBsZWdhY3ktdHJ1bmsKKzEwMjk0IDY0MzJjYmFkODI4ZGM5YzhiZjNhNDU1NGI1NTVhMGNiMmUzM2Y1NGQgbGVnYWN5LXRydW5rCisxMDI5NSBhNzI3YWU2YmZlNTBjNTg4MDU0ZDA5NjFjYjFhMzZkMDdkOTBiODE0IGxlZ2FjeS10cnVuaworMTAyOTYgY2M0OTQyZjBlYzRjOTRjYmM5N2E5ZTBhNGE5NDA5OTJlNGZmYTQyMyBsZWdhY3ktdHJ1bmsKKzEwMjk3IDUxMzIyNThkYTc4ZThhZjdiZTg5MzM1ODc5MjJhMmM1MTUwMjZmZWMgbGVnYWN5LXRydW5rCisxMDI5OCA0NjE3MzhhYWE1MzNkMmNjYzhiZTlhZDg1ZmI1YTg1NDU4ZTMyY2E2IGxlZ2FjeS10cnVuaworMTAyOTkgYTM1YjU0MTRmZGQ5YmI2Yjk3NTEzMzRkOWYwNmJiZjAxYzQ1ODFiNyBsZWdhY3ktdHJ1bmsKKzEwMzAwIGQ3YWJhZDcwZjY4MTE0ZDQyMWM2NTE0NGY0MzM3YjJkN2Y5OWVlY2UgbGVnYWN5LXRydW5rCisxMDMwMSAyMDkwZjhmOWQ1ZDJkNDk2MzVjNjBkN2YwNjk2ZjIzYWY1ZjQ2MjRlIGxlZ2FjeS10cnVuaworMTAzMDIgZWQ4NTZmY2NmNjM5N2ZmZTk0N2NhYzAwZjY3NWI4MzljZWExYTM2YiBsZWdhY3ktdHJ1bmsKKzEwMzAzIGQxYjIzNTA0YmQ5OWMzYjE0Mzk2YzVkOGQ5ZDMwOGQ5ZjBkZjJkNGQgbGVnYWN5LXRydW5rCisxMDMwNCAwNTc1ZDVhMTcyMTg1NmQyMDFhYjZhMjRhNTk5MDlkN2RkY2Q5NTdhIGxlZ2FjeS10cnVuaworMTAzMDUgYjg1YTY3NWI2NTAzZTU4NTk3OTlhODdiMDg3MDUwNWQ5NGZhMjg0NCBsZWdhY3ktdHJ1bmsKKzEwMzA2IDI5ZGM1ZDE5MjhiZmUxYTIxNGMwNGY0YmNmYThhYTQxMjU2Mzk1YTMgbGVnYWN5LXRydW5rCisxMDMwNyBiNzFkMWJkZDE4N2RlZTZjOTczYWVjZjRmZDdmZGJmNTI2NmE4MTJjIGxlZ2FjeS10cnVuaworMTAzMDggOTg2YTc0YzNhMjJjYTBmYTdlNDMyNGMwNzNlNTQzNTk5OTZmZDkzNCBsZWdhY3ktdHJ1bmsKKzEwMzA5IDhmMGUyOWNlNTllZjQxNzhlN2NhMTUwOGJkYjIxMTliZWNmZWU3YzAgbGVnYWN5LXRydW5rCisxMDMxMCBlMmZiMjU3ODQ1MzA0OWUwOTQ3NzJhZDY2MTNhZGYxOGY1NzY5ZTVhIGxlZ2FjeS10cnVuaworMTAzMTEgMzQyOTllMDk2ZTM1MzkwYTM0MmRjNzhkODZiOWY0MzZhNjQ4ZjZhNyBsZWdhY3ktdHJ1bmsKKzEwMzEyIDFmOGYyMDAyYmZiOWYwNWE1MGE1N2FlZjc5ZTQ2MmZiOWI4ZmE1NmMgbGVnYWN5LXRydW5rCisxMDMxMyBkMTRiNzEyMGM1NTE4ZDFlZGJlMzM0YzcyZWNkM2Y2NGU1ZDJkNzZlIGxlZ2FjeS10cnVuaworMTAzMTQgNjQzZTk3MjhhYTQ5MmU4NDZlNWE5MTY5MjU2OGQzNDA2Yzk3ZmU5NCBsZWdhY3ktdHJ1bmsKKzEwMzE1IDE0N2MxMDY3Y2EzM2QxNGVhOWI1OTVhOWNiNzM3Mzc2YjZkOWRjNTAgbGVnYWN5LXRydW5rCisxMDMxNiBjYTczNWI4NGE5MzlhNWEzNGQxZTAzMjk0NDBkYTVjOTBiZjhiZTE1IGxlZ2FjeS10cnVuaworMTAzMTcgOThmNmVkMTMxYjc1Y2VmNDNmODY3MTg1ZGIzZDQ1YTM5NjFmMTQyNiBsZWdhY3ktdHJ1bmsKKzEwMzE4IDU0ZDhlODVkM2MyODdkYzI1NDA3N2UxZGI3MmFkMDdhNDg2MmQ0MDIgbGVnYWN5LXRydW5rCisxMDMxOSBmYzk1MDQzM2QxNThlNTZmZDE0NWE1NDc3MjlhYWIzNWRlYzExY2I1IGxlZ2FjeS10cnVuaworMTAzMjAgZDRmNTMyMWI5ZDllODU2ZmMyYzZmMDA5N2E3MjIzOWEwMjFlNGMyZSBsZWdhY3ktdHJ1bmsKKzEwMzIxIGFhYTIwNGEwNWY4NDIzMjcxNTFkMjkzYzUxNDA4MjllOWZmNDdkZDAgbGVnYWN5LXRydW5rCisxMDMyMiBjYTE4NTA0ODFlMDJhNDFhMzJiMzg4MzY5YjM4OWVhZDU0YWQzNDQ2IGxlZ2FjeS10cnVuaworMTAzMjMgNDkxZTMwMDVmNTRiNTQ2ODZjYmYyMmZmNzQ5MDkxZmU4MTE3MmJkOCBsZWdhY3ktdHJ1bmsKKzEwMzI0IGFhYzU4NWZlOTQ1MmZiZGVmYzg2ZjRiMDcwOTBjMmJmYzk0ZjdhYWUgbGVnYWN5LXRydW5rCisxMDMyNSA2NzA5YTAyZjY3MTgwMzhkZjEzMmQxZTFjNzUxMTcxZGFjYjAyOTYyIGxlZ2FjeS10cnVuaworMTAzMjYgOTQ5YjU5ODIwMTg1YWY5MTFiODc0ZDkyYjkzNjk4NzQ3MDc1YzNlNiBsZWdhY3ktdHJ1bmsKKzEwMzI3IDZjNmE0OGJjNTgxNzNlNzA0ZjU2Y2Y4ZGVhZTg1ODRiZWQ4NzVmZWYgbGVnYWN5LXRydW5rCisxMDMyOCAzYzRmNzM2ZDVlMDEwY2NkNjI3YzUyYzVkYzNiZjUzNDRlZGIzMjMyIGxlZ2FjeS10cnVuaworMTAzMjkgNGZiZTZjOWM1ZDgxMWZkNGYzZWNjYzQ1Njg1YzI3YWM4OWQ0YTU3OCBsZWdhY3ktdHJ1bmsKKzEwMzMwIDlkM2I0MDFiYWM2ZGUyYzcwOTNkYjg3NmRjNjJmZjc1NzVjNzlhODEgbGVnYWN5LXRydW5rCisxMDMzMSBkYjFlNDlkNTFmZTEyYzI3NThmNzkxMmEwYjc4ODBhOThhNzI5NWE4IGxlZ2FjeS10cnVuaworMTAzMzIgNmU0ZWEwZWRhMjJlY2M5YmQyZjgwM2VkMDc5ZWM1MWVjZDE1YjI0MSBsZWdhY3ktdHJ1bmsKKzEwMzMzIGYzNGE2NThlN2MxNTY1YjYxNmU0ZjkxNmNkMzIzOTMyMjMxYWI2YzQgbGVnYWN5LXRydW5rCisxMDMzNCAyNjFjNjM5Yjk4NDczMjU0ODc1MjU2MGRjYjU2YzBlZjAzMjU3N2E1IGxlZ2FjeS10cnVuaworMTAzMzUgMWYxZjk0OTUwNWFmMDRhMTE4ZWVlOGM3N2JhYWQ3MmU2ZDE3NTJiYSBsZWdhY3ktdHJ1bmsKKzEwMzM2IGI3NWIyZjlkM2NlMTNlOTZhNjhkMzA2OGM1YWE0ZGM5YzJkZDc0NTYgbGVnYWN5LXRydW5rCisxMDMzNyA5NTY3MTllYTVmNWE2ZGJjYTRmZmY5MzJmYmEzNjcwZWUwNGYyMDJlIGxlZ2FjeS10cnVuaworMTAzMzggYjg0Nzg1MDRiNzc5YmIyNzdmY2QzOGUyZjJjYzAwYzc2ODJjODMwMCBsZWdhY3ktdHJ1bmsKKzEwMzM5IDg0MmVkNmJiZDA2NjBhN2FhOTUyNTI1NGRlYmMwYWJhNGM1YWNhMTYgbGVnYWN5LXRydW5rCisxMDM0MCBiMGIzM2EzNTdjNzllZDY0MDE2MmZiNzlkYjVkN2JlNDhhNTQwYWQzIGxlZ2FjeS10cnVuaworMTAzNDEgOWUxMGM4NjJhYmZjMWEyODBiOGJhYWM2ZWZhYTljZTEzNDE4OWM1NiBsZWdhY3ktdHJ1bmsKKzEwMzQyIGU4NWQ2ZGI3YmY5Nzc1MGE0MGI0NGE4OTIyOWFhZGE2OTk5YTZjN2EgbGVnYWN5LXRydW5rCisxMDM0MyBhM2FkYjE2ZjA4OTVmMGIyOTljYjcxMTI2MjcxYTY5NzBlODQ0YWU1IGxlZ2FjeS10cnVuaworMTAzNDQgZDc3M2RiMDYzNTVjMDY5OGQxYWZkNzVjNzBjMDgzZjAwZGI2YWU4ZiBsZWdhY3ktdHJ1bmsKKzEwMzQ1IDIxYTdlM2MzMjRkZjdmYWNlOWZhMDAzY2E5N2MwNGNkM2JlZDQ4ZDYgbGVnYWN5LXRydW5rCisxMDM0NiAxNzZiOTllNjk2NWJlOTMyNjg2MzFlYWY1ZThjM2ZkNDYzZGQ0MGM2IGxlZ2FjeS10cnVuaworMTAzNDcgYjY5ZmE5ZDE0MmNhNWE3OGMzZDZmZWZmMjQwMDg4ODU3OTVkZTRlMSBsZWdhY3ktdHJ1bmsKKzEwMzQ4IGM3NmFkYWY1MTJkNjU1M2FlYmYxZjQwNzUxNzQ5OGI0ODE5MGQwNTMgbGVnYWN5LXRydW5rCisxMDM0OSBhNjFmZGI4YTQ0OWVlMWYwMzYzYmJlYzBlODI4ZjAzMmMwZGU1YzAwIGxlZ2FjeS10cnVuaworMTAzNTAgMzFmYThhMGZkMTc4NzJlNDJmZGFkNzcwOTRkMjE5MDY1NWIyMTEyNiBsZWdhY3ktdHJ1bmsKKzEwMzUxIDZiYzRmODA3MjVkNmUyOGRiNGY2ZDMyZjg3NTQ5MWQ4N2IxOGE2OTAgbGVnYWN5LXRydW5rCisxMDM1MiBkMTUxODFhMGNmYmFiODYyNWExMjg5MmRmNDFkYTQ1YTliYWMzNjYwIGxlZ2FjeS10cnVuaworMTAzNTMgYjVlZGUxMzNkOTIxNmFlZmQ0MjhjODUxM2EzYWJkN2UxMDRkZTEyMyBsZWdhY3ktdHJ1bmsKKzEwMzU0IGQwN2I5N2QyOWE5ZTMyYTEyY2QxNTgzOWEzMDhkNGM1YTVkZjdjYzQgbGVnYWN5LXRydW5rCisxMDM1NSAzOTIzODhjNTJlMjE3MTdlZjIzZTNlOTgwYWNiMGMwNjhjZWY1ZWVhIGxlZ2FjeS10cnVuaworMTAzNTYgOGY0MjVmOGY0YmUyZGY1ZGUwY2I3N2I0Nzc1YzZhZjFmY2E1YmIyYSBsZWdhY3ktdHJ1bmsKKzEwMzU3IDBhODczZjJiNjRmNDE4MmEzYjgyMDdjNTk3YWI4ZmEyNDNiOGYzNjUgbGVnYWN5LXRydW5rCisxMDM1OCA4ZTUyMjM2ODBhOWRhNGM2ODlmYmRiMmNiYzQwNTJhOGVlYWUwY2I1IGxlZ2FjeS10cnVuaworMTAzNTkgYWMyZDFjMWYxOTcxZjJhOTNkZWQyMTdmY2M3NTRhNmRmMjBmOGRhYSBsZWdhY3ktdHJ1bmsKKzEwMzYwIDQyN2E5YjFjOWFiZDhlMTIwZTJiZjBiYzllN2VkNmY3YTZmNDAxY2QgbGVnYWN5LXRydW5rCisxMDM2MSBiZGU2OWRmYzIyNGYwZTczN2I4NjY4MDYzZGNkNTZjNmZkMWM4ZGIxIGxlZ2FjeS10cnVuaworMTAzNjIgNjM3MGYxNTkzYzcyMGI5MmExM2RmNzI3YjlmMzFjZDVlMmNiYjVmMyBsZWdhY3ktdHJ1bmsKKzEwMzYzIGIwZmJlNmI2ZGNiZjExYjFhMTAyMTJjMzk3M2EzNzg0MmQ2OTIyMjQgbGVnYWN5LXRydW5rCisxMDM2NCBlODMzYmVlNWQwNWZiMjRlNzQwMDgyZGNkZDYzYWFkOGRiMmMxZWI2IGxlZ2FjeS10cnVuaworMTAzNjUgZGZjOGRlOGYxZWMzZTY5YjI4MjNjZmZkZmRjNjA5OWU4YmFlODc0OSBsZWdhY3ktdHJ1bmsKKzEwMzY2IDQyZDNmMWY3MWM1NmNmYjk5YjliZWEwMWFjYmRiZGMwYWMwMWMzYTAgbGVnYWN5LXRydW5rCisxMDM2NyBhZTk3NzhjNGZmY2FmNjM2OGU2ZTBlYThlYWZlMjg5NTJmNjRjZjJiIGxlZ2FjeS10cnVuaworMTAzNjggZWZiYjdlNTdlNmY4NmZjMGY2MTAwZTQ0ODQyMmQ4NDU0Mjg0YzE5NCBsZWdhY3ktdHJ1bmsKKzEwMzY5IGY4ZjY2M2I0MzJiNDM1NmE4YmFlMjA3MGE2NjdiYjBlODllZmY3MzUgbGVnYWN5LXRydW5rCisxMDM3MCA0MWM3ZDUyNDNiZTkzMWY4M2ZlZDYxYjZjZjIzOWVkMWU5OTUzMjg1IGxlZ2FjeS10cnVuaworMTAzNzEgOGEzODljOGZlNmVmZDJhMzViYTMyNzk2ZGU5ZDdmNDIzMGU2ZWJhOSBsZWdhY3ktdHJ1bmsKKzEwMzcyIDM3MjM0ZTFiYjc1ZmZkZGViODUzMWI1NGU2OGZjYzRmZGVmOTVkODAgbGVnYWN5LXRydW5rCisxMDM3MyBkYmQyZGUyNmM4ZDIyNWZmZWMwZmFiZmQ5ZTc4ZWE5ZGYwOWFlMGUxIGxlZ2FjeS10cnVuaworMTAzNzQgOGM5MzU0NGI5NWU0YjNjMWMxNTY3NDk4NmYwYjlkOWEyNzBkNjhhMiBsZWdhY3ktdHJ1bmsKKzEwMzc1IDI2NzM4NDg0MzdjMzRkNGVkM2ExMTA0YjY4ZjI2Y2NkZWY0YWFmOTMgbGVnYWN5LXRydW5rCisxMDM3NiBlNjA2NmI4MTNhNzE0ZDE1ZTk2ZTQyMTc1MzMyZjQ5ZjNiMGYzZjk5IGxlZ2FjeS10cnVuaworMTAzNzcgMjlhYjNmNjAyZDAwMjNiNWMxOTM3MzI2YTQ3OGI4ZGI1MWExNzhhZSBsZWdhY3ktdHJ1bmsKKzEwMzc4IGRmNjM2ZGVkMmU3MDJiZGRmZGY4ODIyYWE4YjhjNzI5NjRhYjg2ZDYgbGVnYWN5LXRydW5rCisxMDM3OSA2YTAyOTllYmNjZWY5MGQwM2Q0YzgwMGZlM2FlMTc0YjU0YzZhODlhIGxlZ2FjeS10cnVuaworMTAzODAgOGYzYmIwYjE4YTgyYmNlNDA3MTljOTQ0ZDEzMzBmYThiNDJjYzE3MiBsZWdhY3ktdHJ1bmsKKzEwMzgxIDFlZmVlNTAzMjU5ZTUxYTQ4ZGQwMTY2MTAzYWYzYzk1NTI2NTA5NmYgbGVnYWN5LXRydW5rCisxMDM4MiA5YTI0NmQ3NGZjYjc1MmExNDZkMzRiOWY4YTExOTFjOGE5Y2I3MGE2IGxlZ2FjeS10cnVuaworMTAzODMgYTExMDQyMWQ4NmI3MzE0MDAwZmMxODlmYzBlN2NlYWZlNzRiZWY1ZiBsZWdhY3ktdHJ1bmsKKzEwMzg0IDE3MzY4YzkyYzc2OWE1M2JjNDM5YzAzNDExMDE1ZTk1MmM2NjQwYmIgbGVnYWN5LXRydW5rCisxMDM4NSAzYmQ2NjhkZjZlZmRjMmQ2MzUxM2Y4ZWY2ZWQwMjc5ZDcwYmM5NWI2IGxlZ2FjeS10cnVuaworMTAzODYgODBiMmFjNjFmZTAzOGE4YmI2OWNiMGQzOTQ0MDQ0OWE0OTkxNzY5NCBsZWdhY3ktdHJ1bmsKKzEwMzg3IDRiNTY2NmRmZjVlNjcyNDk2N2E3NTM5YjkyNTFjNjUxMTZmODg1ZjkgbGVnYWN5LXRydW5rCisxMDM4OCAzZjhiNTU2NGYwYzdjMjllMTA3YTU0NDE0NTczOGRiMzg3MDNiMTVhIGxlZ2FjeS10cnVuaworMTAzODkgMWExZDMxNDdiMDI3YzRiNGZlNTc4NzcyNjE5NzY5MjVkZWY1Y2E1ZCBsZWdhY3ktdHJ1bmsKKzEwMzkwIDVlYWZkM2VkYTBhZjRjYWVlMGI2MjI1MjUxM2ZiYmQ3ZTA1YTcwNjEgbGVnYWN5LXRydW5rCisxMDM5MSBiNzFhMTI1Nzc2NGIwMzI1OTJlNjM3MDI1ZWNkNjU3MDI2ODNlOTA2IGxlZ2FjeS10cnVuaworMTAzOTIgMzFmOWUyNjc1MTk5ZTE5NTYyZGQ4ZjE3MTNiY2IzMmVmZGM1ZWEwYSBsZWdhY3ktdHJ1bmsKKzEwMzkzIDU0MThjMDczMGYwMDk2MTYyYTViZGU1ZTAyMWQzZGU5MmYxMTQ2N2MgbGVnYWN5LXRydW5rCisxMDM5NCA2NGYzZTllYmYyMWFjZjMyNjg0MTI1MGU1YmMxMzIzNGY1MzJmMzYwIGxlZ2FjeS10cnVuaworMTAzOTUgMWRhZWNkNjVhN2M1ZWZjOWUwY2QxMjVjNGM0OGI2ZjhlOGFkOGVmOCBsZWdhY3ktdHJ1bmsKKzEwMzk2IGJhOWIxYjRhZWFiOWVlOGFhZTVlN2VhNzg0YmZkZDZhMDJiZTE0NDMgbGVnYWN5LXRydW5rCisxMDM5NyAxMzE4YTQ3NGJhYTA2ZGQ2N2ZhNjEyZWQxYTNiMzdlZjA2MjIxZjc2IGxlZ2FjeS10cnVuaworMTAzOTggMDkwNWY4NjY2ODA3ZjMzODc0M2E3NmY1MzgyMThjMjBjOWZlYzNiYSBsZWdhY3ktdHJ1bmsKKzEwMzk5IDVmYWI1OWViNGZhNWExY2Y0NzE5Zjg1YmJhNzA0ZDI0YzVjYTgzODcgbGVnYWN5LXRydW5rCisxMDQwMCA2YmMwNTM1ZGJmNTI3NzkyZjhkZGFmYWRmMzM3N2Q0MzQ0NGRhMDkyIGxlZ2FjeS10cnVuaworMTA0MDEgZGRlMGRmZmIxYTA4YWFlNDE4OWJiMzYwZTBkNDk1ZGIyNzY0ZWVkYSBsZWdhY3ktdHJ1bmsKKzEwNDAyIDBiZGNlZGNkMTU0OWI3NTk1MWVjM2ViZWMwZjEyZjkwNDdjOWUwYzUgbGVnYWN5LXRydW5rCisxMDQwMyA2YmU3YWIyNDZhMDViNGM4MWIxMjYzYThhYTZkMjAzZDUxODk3MmRjIGxlZ2FjeS10cnVuaworMTA0MDQgMjNjYzZhYzVlYmE2YzA3NjMxYzdjNzZjNGU1OGE4MGFhODRlODNjZiBsZWdhY3ktdHJ1bmsKKzEwNDA1IGRlOTBiYmU4NTAxMzdmZTFlZmI3NGI1YjcwOGNiOWRlMDE4ZTBiZDcgbGVnYWN5LXRydW5rCisxMDQwNiAzMzQwN2MwZWYxNGZmZTU3YzEzYzU1ZTVmMDA0MGEyNmY0OTJiNjg0IGxlZ2FjeS10cnVuaworMTA0MDcgZTI5ZDQzNWFiMTQyZjFlODVkZWNjMzFjOWU5M2Y4Njc3ZjdlOWE0OCBsZWdhY3ktdHJ1bmsKKzEwNDA4IDExMjZlNzJlNWVlOWM5YTQ5YTFiMmQ3Yzg3ZmMzNWIzMDUxY2U5ZTUgbGVnYWN5LXRydW5rCisxMDQwOSBlZjMwMGU2YjBjNzFkYTBiZDVhODFlY2QyMDhiY2I2ZDczYzk5YjY5IGxlZ2FjeS10cnVuaworMTA0MTAgOWQ4YzA2NjZiMGNiYmMxNGY0YmM4NjlhNzA1MjE5MjAyZGRhOTcwMyBsZWdhY3ktdHJ1bmsKKzEwNDExIDg2OGRjODRiYjViMjlhYmUyZjdhMGQ2MTc2OGM2OTAwOTUyZDAzNjQgbGVnYWN5LXRydW5rCisxMDQxMiA3YzdmZjFhMzY1MjE3YjQ1M2FlMTQ1M2Q0MDk0NWYwYWY5YjgwZmMzIGxlZ2FjeS10cnVuaworMTA0MTMgMDUyMmFiMjEwZmNiYjA4YTc2NTFmYmMwYTUwZjI3YzY4ZGE2YWJlMCBsZWdhY3ktdHJ1bmsKKzEwNDE0IGIyYWRjZDczYzE1MGI4MmM1Mzk5Nzc0Zjg4MDQxY2M1ZGQ5ZjY1OTAgbGVnYWN5LXRydW5rCisxMDQxNSA3MDhkZTRjYjk2ZWIyMWJkYWM4YmY2NWRhNDA5NThlMjAwZDNkNzVhIGxlZ2FjeS10cnVuaworMTA0MTYgYWE3ZDY5ZDY3YzgxZDdkYTM5MzNhZTA4NTBjNGZlMmMxYzFmY2E0OCBsZWdhY3ktdHJ1bmsKKzEwNDE3IDFmMzhhMmI1NDhiZjlkMDZhNmEyNTFlODRiMDViZTYwN2ZiNzQ1ZDQgbGVnYWN5LXRydW5rCisxMDQxOCBmMjIzYmY2MWI0ZWUwM2I4ZWY0ZWRmMzllOTliNWU2NTIxMTFmNGMwIGxlZ2FjeS10cnVuaworMTA0MTkgY2E0ZTI1ZWY2MWY4MDY5YmQ2OWE2MjQzY2RjZDQ1ZTNkY2JiODQxNiBsZWdhY3ktdHJ1bmsKKzEwNDIwIGQzZWMyZTUxZjY3YTIxYjhlNTQzMWUxNGMzZmU3MzY1OWNkYTBhYTggbGVnYWN5LXRydW5rCisxMDQyMSAwNTdlNDIyZDJjNjEwOTAwOGUyMDk1MjdkYjBkNDY4ZGI1NTllYTEzIGxlZ2FjeS10cnVuaworMTA0MjIgOTFlY2RhOWQ1MjQ1MWRmNzNlZjZkMDUxMDBjY2E5YTM2M2U4NWM1MSBsZWdhY3ktdHJ1bmsKKzEwNDIzIGVlMmFhYTJmNzIyYTg0N2NjNmRmZjkxMjI2ZmVjYTlmOTAyNzZjMDggbGVnYWN5LXRydW5rCisxMDQyNCBiMzFhYmMxMzFjM2RmOTQzZjAyZjU2NDNiNTU0NWJlMzYzZmNjYWZiIGxlZ2FjeS10cnVuaworMTA0MjUgMTYyZGIzZDBjOTE2N2UwOWQ2ZDc2OWIwN2IxMzNiYjIxMDIwNjZiOCBsZWdhY3ktdHJ1bmsKKzEwNDI2IGRjMTMyY2MzOTU3M2EwZWE2ZGYyZDI2Yzk5OTA5ZWFmYjU4YzVmMmUgbGVnYWN5LXRydW5rCisxMDQyNyBhZDExNDYyMGY4YzI3ODJkNTc3ZGIyZDA0M2MxNDc1MmQxOWU0OGY3IGxlZ2FjeS10cnVuaworMTA0MjggYTJjMWIzZTE3OTUyNmRkMjRkMDJiZGE3NzRiNTJkNDNiZDUxNDQ3NCBsZWdhY3ktdHJ1bmsKKzEwNDI5IGYwNjkxMzgwOGZlMWRhY2U3NWUxMjIwOWI3NjVjYWZmMWMxNzk2ODUgbGVnYWN5LXRydW5rCisxMDQzMCA1OGQ2ODE1YWYwMDJlNjc4ZmViODczYTk1YmU3ODY2NTA3OWFjYjQwIGxlZ2FjeS10cnVuaworMTA0MzEgOWNiY2I1OTMxZDgwM2Q2ODk2MDAxZWVlNTg5Y2ZmYzY2MzM4ZDcwYyBsZWdhY3ktdHJ1bmsKKzEwNDMyIGY0MmI3NTc3NTVlYjMyYWJlYjZkODI0Nzg3MmJjNzQyYjU2MmQ0M2EgbGVnYWN5LXRydW5rCisxMDQzMyA3MmQ5OTYxNTQwZDg1YjIwMDM2OTQ5ZjE0YjRhNDFjMjg0NjJmNjVlIGxlZ2FjeS10cnVuaworMTA0MzQgOTJlMzYxMTZhZjQyMWJjZmVlYzlmOTA2YmZiZGJjNzZkOTk4ZWRhYyBsZWdhY3ktdHJ1bmsKKzEwNDM1IGViZGQ0MGUyODE2MDI1YzlmOTQzMmJhOWEzOWIwOTNlMDhiMjc2ZDYgbGVnYWN5LXRydW5rCisxMDQzNiBjZDllNjY0YTFhOWZhODRiY2M2MWQyYWQ4MWUxZTJkMjdmZDRiZmE4IGxlZ2FjeS10cnVuaworMTA0MzcgZmMwOGRhMmM5YTBmYTdkOTY4MmUxMWQxMGU1Y2QzOWFiNTk3MGEwMyBsZWdhY3ktdHJ1bmsKKzEwNDM4IDhmMzY4ZGYxNzNlNjg4YzQ2NGM5MDYzNjQ3ZGJjNTBiMTkxYmUzZDYgbGVnYWN5LXRydW5rCisxMDQzOSA5ZTExM2FhMzc1OGRhMTA0OGM3YWNlMzMwN2VkMjc3Y2FhYTc4NGNmIGxlZ2FjeS10cnVuaworMTA0NDAgZmVjOGViMmEzODBkZDUxNzFjNjU1MDk2NzY1NTcwN2U1NDcxMGE5NyBsZWdhY3ktdHJ1bmsKKzEwNDQxIDhjYTAxMDgzMTQwY2I5OTJkMTJiNmNlZDUyM2IxNmJmMTM2YjE0NTEgbGVnYWN5LXRydW5rCisxMDQ0MiBjY2QxYzk2M2U1MDk1ZGRlNzQ0ZWM0ZGEwYzQ5ZTIwOTJjMjRlYzI1IGxlZ2FjeS10cnVuaworMTA0NDMgZDZmY2JkMzcxODU1ZTM2NDdmMTg1OTcxYTIyNzEwNGI3Y2RhMzdhYiBsZWdhY3ktdHJ1bmsKKzEwNDQ0IGFmZDU0Zjg5NWRjMzAzMGRkMzBkODA5N2ZmYmI1ZWU1YTYwOWI1ZTQgbGVnYWN5LXRydW5rCisxMDQ0NSBkMWVhMTNjZjQ2ZjdiYzVhY2ZlNGUzYmQyYjAyNWNkYmQ3Y2I2Y2RiIGxlZ2FjeS10cnVuaworMTA0NDYgZThkMGI4N2M4ZDZiMWZiMGEyMmY1NzgyNjNhYmQ5OGY4YTExZWE4MCBsZWdhY3ktdHJ1bmsKKzEwNDQ3IDhjMjY4ZDBlODgyMjA1NGNjYjUzYThjZTI5YWQ3MDI2NDkyNmJhZDggbGVnYWN5LXRydW5rCisxMDQ0OCBiYmQyYjVkOGQwYjZjMjJiY2E0ZjdlMDJiMDRlMWRmYWFkOTg1ZDZjIGxlZ2FjeS10cnVuaworMTA0NDkgMmVmNmUwNDI0MTc5Y2FmZjlhMzZlNzc1OGQwYTcxNzIyYWM5ZTVmNCBsZWdhY3ktdHJ1bmsKKzEwNDUwIDMzOGYxZGVmNDM3MDliZjRmMzJkNWI4ZDAxZjdmNmY2NDZiODNiY2UgbGVnYWN5LXRydW5rCisxMDQ1MSA0Y2VlZTFlZjk5YjAzMjgxMGZiYjYyMzdkZWIwMTg3NzlkZTBiNzMxIGxlZ2FjeS10cnVuaworMTA0NTIgNDY5Mjg4NDk5YzliZGU5ZDUzYmYyZGQ0YjQxMzM0ZmYxYjRlNGIzNyBsZWdhY3ktdHJ1bmsKKzEwNDUzIGZmMTBiMDMyOGZmMzc1MGJiMzAzMzEzNWQwNjMyNjRmOTNhNzlmOTEgbGVnYWN5LXRydW5rCisxMDQ1NCAwOTE0ODFkYmUxM2Q3YzUxMjc5ODA3YjJmZmRiY2E5MjFjMWUyNDVhIGxlZ2FjeS10cnVuaworMTA0NTUgYzEyYzY2MWZkMTRlZjRiNTdmNTMxN2E5NGEyM2MyYmM2ODVmNmJjYyBsZWdhY3ktdHJ1bmsKKzEwNDU2IDNkYzVkMGZjYjE2N2FjMWM4MzViNGEzNDlkMTExZGEzNzg5MWE2ZjcgbGVnYWN5LXRydW5rCisxMDQ1NyA3NTIyMzU4NDYxODA0MTRkZGQ4NmMxNTdlMzcwNGYyNTQ3MjE4MjdkIGxlZ2FjeS10cnVuaworMTA0NTggNTFkMzFmY2FlZWYzYTIxMDI0ODA4M2RmNzlkYmM2NTlkYjhlYmRkZSBsZWdhY3ktdHJ1bmsKKzEwNDU5IDE0M2M1NTZkZWIyZjg1NTlmNTY0ZGUxNDdlMGJkMmJiNjQ1MWIxMWQgbGVnYWN5LXRydW5rCisxMDQ2MCBjYzQ3NzMzYjRkZDIyYzU1ZDI1ODk4N2FmMWEwYjYxYzUwNjVlNTc1IGxlZ2FjeS10cnVuaworMTA0NjEgODVlODg2ZGIxOWIwNTk4YjkyY2QxYjVkNzdkYTNjZGQ0MzViYzA0YyBsZWdhY3ktdHJ1bmsKKzEwNDYyIDA5OTYzYTJhMjRkYjA4OThlNDNiZjMzMWIzMTVhYWM0ZDc4NWQ4MTcgbGVnYWN5LXRydW5rCisxMDQ2MyBhOTA5YTI4NjlhYzU5YTBiZWNjMGY2NzNhNDI2MWQ1MTJmNjIwYzJkIGxlZ2FjeS10cnVuaworMTA0NjQgMDY4MzAzZjkyNWVhODcyYmQxMWNiZTkyZjgyN2E2OWQzNDA2MDJjMiBsZWdhY3ktdHJ1bmsKKzEwNDY1IDFkMGViMmU5NmQ3Njc5ZTlmN2Y0NmUyMGM3OTQ4YjYwZWIxYmZjNzcgbGVnYWN5LXRydW5rCisxMDQ2NiBhYjRmNjQ1NjFmYmEzMjg4MTM0YTc3NWMzNGQ2ZGY5OTFjOTZkMjU3IGxlZ2FjeS10cnVuaworMTA0NjcgOTcxYjViYmQ5MmVjMDIwZWFiYzBjNzM4ZjFiYzc3ZDRjNWFjZTM5YyBsZWdhY3ktdHJ1bmsKKzEwNDY4IDY5N2RmOTNlNWRkYjQ3NjRjYjQxNWY2NzFjMWUxNTkxY2JiZTNiNmMgbGVnYWN5LXRydW5rCisxMDQ2OSAwMjYzZDMzMjRmMGIyZTk4ZWYxZjY1ZjI3NGM3YzJhYWJmOWU3ODcxIGxlZ2FjeS10cnVuaworMTA0NzAgYjllYjgwNTU3OWJhODYzMWI5MTI4NmUzMWNiNzNjNTlhY2UxNjQyOCBsZWdhY3ktdHJ1bmsKKzEwNDcxIGRlMTA1NjZkZWM1Y2QxYzI4NmU1YmQ3NWVkMjhiYzhkZjVlOWI3NjIgbGVnYWN5LXRydW5rCisxMDQ3MiA2ZTUwNzllOGZhNmUwNTMzZDkyOThiZTY3NTExMmY2ZjRlYzM2ODViIGxlZ2FjeS10cnVuaworMTA0NzMgY2YwY2YyMWI0NTQ1NDc3MWM3ZWY1Y2U2ODdkMGM5Zjg5MWI0NThkNSBsZWdhY3ktdHJ1bmsKKzEwNDc0IDZiM2ZkMjRjYzA3NzZmMzJhMThmNGFmMWEyMTU2YjE5YzI0YTEzMDggbGVnYWN5LXRydW5rCisxMDQ3NSBlOGM0YjNkMzg2ZTRmMmQzMzcyZDk1YzIxY2RmOTA5ODdkNDlmZjI2IGxlZ2FjeS10cnVuaworMTA0NzYgZGFmZmRlN2E2ODkxNzdmMWIxMWEyMDg5YjYxMGE5YTRiOTg0YWRiYiBsZWdhY3ktdHJ1bmsKKzEwNDc3IDg5MzU5ZDA3MmU3MjdlNzJhNmQ2NDVmMWY5ZGM3OGU3YmE4NTUwOWUgbGVnYWN5LXRydW5rCisxMDQ3OCAxZDUyNjUwN2NkOWVjNzNlMDA5YmM2OTQyYTkzZjI4YTMzNGZkMGI2IGxlZ2FjeS10cnVuaworMTA0NzkgM2QxZDllMjVlYjIyYzYzMjU3Zjc5YTlhYTY1YjllMjdjYTYyOWY1OCBsZWdhY3ktdHJ1bmsKKzEwNDgwIDA4MzViOGRmNTRmODBkMjM1NDUxZTJlNmE0YjQ2YjQ2NmM4ODU4NDYgbGVnYWN5LXRydW5rCisxMDQ4MSBiZGY1N2M4NGRmNmFiNTFjYzM0YzhmY2M0Y2I3M2MwZDFkMjk3MzQ4IGxlZ2FjeS10cnVuaworMTA0ODIgYzhhMzExMTQ0NzI2N2ExNGMzMzAxOGExYjMxNzRmMjkwZTBiNzc5MiBsZWdhY3ktdHJ1bmsKKzEwNDgzIGI0MjBhZTg1MjEzYzc5ZjA1Y2RjMzY5NTljNzFhMWIwNDc3MGY4ZjkgbGVnYWN5LXRydW5rCisxMDQ4NCA1ZGIzNDZlOWM4ZjU2MGRjZWIxNmJhYWJlNGRhYjBlYzY0MjcxZjg0IGxlZ2FjeS10cnVuaworMTA0ODUgOTAwMzIwNDkxYjkzNmM5ZmNhM2Y3MjM4NDY0ZDAwZmNkNmFjNjNiOSBsZWdhY3ktdHJ1bmsKKzEwNDg2IGU5ODY2ODY4M2JlZDYzNThmOWM1YTczMzllOTQ0MGI3YjRmMDEwNzcgbGVnYWN5LXRydW5rCisxMDQ4NyBhODQyYzllNjMyODBhOTZmNzM5NGMzMWI3MjEwOTJmMzhhZDZmNjBkIGxlZ2FjeS10cnVuaworMTA0ODggZGJjMTFkZDAyZjA5NTkyMzUwYjlmYWZkMzA1MTU5ZGI4YTE0YmI1YyBsZWdhY3ktdHJ1bmsKKzEwNDg5IDRmNGUyYWFkMWUwYWI1YmEwYWJjMmNlODI2ZTA0OTc2YTI5ZDRmZDUgbGVnYWN5LXRydW5rCisxMDQ5MCBiZjZlOTIwYzBlNzk5ZDE2MTI5NDdiOGFhMWVkMDQ3NDIzN2NkMzIxIGxlZ2FjeS10cnVuaworMTA0OTEgY2EwYzcyNTkxMjExY2Q5MjlmM2Y4NzE0N2E0YWI2NDRlZGY1MTg0MCBsZWdhY3ktdHJ1bmsKKzEwNDkyIDgzYmE1MzA5ZmYyMjZlMWM0YmIyMmQyNWQzMWY1YmNkYmExNDlkMDkgbGVnYWN5LXRydW5rCisxMDQ5MyAyYjA5YTVkMjYzNjg4ZDA3NzdmNmI2YjhlY2Q5MmYzMzE0YTJmY2UzIGxlZ2FjeS10cnVuaworMTA0OTQgNTNkZGU0MjMyNWY4YTk5NDEzMDY5NDc1NjFiZWY5OGQ0ODEzZTM3ZCBsZWdhY3ktdHJ1bmsKKzEwNDk1IDZlOGJlNjA5NmU1NjMwMmZhNTc4YzZkODQ1OWM1YzUzZmE1MDUwMTMgbGVnYWN5LXRydW5rCisxMDQ5NiBiYmJkMGIxMDVlMjczNWZlZTc3Yzk4ZjRhODZhYzFlNDZmYWZkMjI2IGxlZ2FjeS10cnVuaworMTA0OTcgNDY5OTlkZmNmYWUzZjA1MDY3ZjZjYjFjZDM1M2Y1N2MwYzBiMDg2NiBsZWdhY3ktdHJ1bmsKKzEwNDk4IDUyNjRjYWM4ZjkwMzVmMmM3NGI1NDUxYjU3ZjllNjQzN2I0NzRmOTYgbGVnYWN5LXRydW5rCisxMDQ5OSAwMTFhZTcxZmVhOTY0OWExN2E0ODdmNzZiODA3Y2VhYzQxZDhhYjJjIGxlZ2FjeS10cnVuaworMTA1MDAgOWI4OTAyMzM4ZTE0YjcwOWYyMzg1YWNlMTUwNzAwN2EyNWQyNWU3ZSBsZWdhY3ktdHJ1bmsKKzEwNTAxIDkyYmE3YTllM2I5ZDk3MTk4MjE5ZWRkNDZjODA2ODMyNjMzYmM5Y2MgbGVnYWN5LXRydW5rCisxMDUwMiAzYjkxYWZmYTMzM2U5ODRhNjA2MTc3ZGNmMTIyZTNkN2U5M2E5ZjBkIGxlZ2FjeS10cnVuaworMTA1MDMgNWQyYmQ2NzM4ZWI2MmU1NTI1YTVlNTI3ZWYzNjA3MDAwNTIxMzcxZiBsZWdhY3ktdHJ1bmsKKzEwNTA0IGQxNTdlZTgyMTc3NWMwOTkzNDUyYzcyMGNkZjRiMDJmOGI4YjllMzIgbGVnYWN5LXRydW5rCisxMDUwNSA0OWYxY2Y0YjE3NGNjNjNmM2MxZDJkYjMyMGQzMWE4ODlmZWQ5NDIzIGxlZ2FjeS10cnVuaworMTA1MDYgZDFjMWIyMDc1NGE4MTdmZmY1MTQ5YTkxYzEwYTdhOTkwZmE2NTBkMyBsZWdhY3ktdHJ1bmsKKzEwNTA3IGQ5OWE5MDUyNmFlMGIxOTJlZWNmYzIxZTgxOGYxZWMxYTE3YmQ0MGEgbGVnYWN5LXRydW5rCisxMDUwOCBmNTMyNmQzNTg2NjJiYjIxMGI4ZjE0YmJkNTU2MmZmNmE5YmE3YWU2IGxlZ2FjeS10cnVuaworMTA1MDkgNWRjZjliNWQzM2U2ZTZmMGEwZDA0NzZhYzUwNDljNzBjYmQwYWMzMSBsZWdhY3ktdHJ1bmsKKzEwNTEwIDk1MTQyYzhhMDljODZhOTA3OTQyZjAxNjMxOGUzZWUwOTU0ZDQ3NGMgbGVnYWN5LXRydW5rCisxMDUxMSAzZjAzNjAzNzZjYTAwMTUxNjc2ZDlkZmMxOWRlYWRjNThlYzVjZDc1IGxlZ2FjeS10cnVuaworMTA1MTIgNzEwZjNiNzgzNTE1M2JiNzZlNzA5NzMwN2ZlYmViNGIwZmM3ZWRjOSBsZWdhY3ktdHJ1bmsKKzEwNTEzIDVjY2U4MWUyMzM0OTk2Yzk5OGQwZjZmMmEyNjExNTBhNDFjZDU4YjQgbGVnYWN5LXRydW5rCisxMDUxNCAzZmZkNDVmMDVlMzk1OGY1OGU1YmNmZTVjYTA3ODk2NjQ4MWE0MzBkIGxlZ2FjeS10cnVuaworMTA1MTUgY2QzMDkyMDY5ZjVhMzkzOTEyYmMxYTIwOGNkNTYyMGMxNjgyMDhmMyBsZWdhY3ktdHJ1bmsKKzEwNTE2IDZjNTk0OTg4NTcyYTdkZTI3MTM2N2U0NmE1NWMxMzQ1MGVjNGE3NTggbGVnYWN5LXRydW5rCisxMDUxNyBlMDkxZTlkNDk1ZDVhOWQwNjdjN2M0M2Q2YmZmMDQ4NzU1NDY2MDJkIGxlZ2FjeS10cnVuaworMTA1MTggNWYzNWUyNzgxMDMyZTIzMGNlMDUxZGQ4N2MwYjRkMjcxMjQxZjg1MCBsZWdhY3ktdHJ1bmsKKzEwNTE5IDQzYmUwYjkwMjcxNzA4ODc0YzBkZjYyYTY2OWRiYmI2OTFjMTk1YTUgbGVnYWN5LXRydW5rCisxMDUyMCBhMzg1NTA2MTNhZjNkOWQ4ZTllZGJjNGY5YmI0OWFmMTQwNmNkNjdkIGxlZ2FjeS10cnVuaworMTA1MjEgZGYwZmE1ZGM1OTlhZTA2NTRkNzljYzI5MGI5ZTA3ZWQ1ZGNhM2E5NiBsZWdhY3ktdHJ1bmsKKzEwNTIyIGUyMzMzOTY5YTJjYWNhM2Y3ODk4ZDhiMTRhOTQyMjAxOWUyYWVjYjAgbGVnYWN5LXRydW5rCisxMDUyMyA0OTE5ZGVlMTg3ODFjMTM3NzFlNWFkM2IwN2JiZDZlMDA4MmFmN2FlIGxlZ2FjeS10cnVuaworMTA1MjQgYjhlOGFjZTc5Y2YwMmNjZGE3MjU3ZTFkNTc0YTBmYmNmOTU4OGFmMyBsZWdhY3ktdHJ1bmsKKzEwNTI1IGJkMzBhYzgzMTIxNzIzNDE4ODE5M2JjY2JhZjRjZTFmMDVjZTI0OGEgbGVnYWN5LXRydW5rCisxMDUyNiAyNTRmYzkxYjZiMGU3MzgwOTU4MDc0ZmViNDRiN2VjMTY3YjM4NjhiIGxlZ2FjeS10cnVuaworMTA1MjcgNjY4Y2UwZWRiNGYxYzU0MjlkM2QwMDJiNjI5OGFhZTVjZDgyYjRmNiBsZWdhY3ktdHJ1bmsKKzEwNTI4IDA3NzMwYjgyYTE0M2YyOGY1MmZjYTQ1ZWM4ZDY1YjQxMDg3ZTM4NWQgbGVnYWN5LXRydW5rCisxMDUyOSBhOTMwNTJhZTBkZWI1YTRkMTYwZDA5NjhhNzAwYWQ0MjBmYmU1MDcwIGxlZ2FjeS10cnVuaworMTA1MzAgNWRjYzVjNGExOGJkYTY0ODVkOThiNzA5NmRhMjc5MDM5OGM2N2Q2MiBsZWdhY3ktdHJ1bmsKKzEwNTMxIDcwOTlkZTgzYjE5MWI5MjQ2ZmM5MDk5MTQ3MzNiNTViZTdlMjgxMGUgbGVnYWN5LXRydW5rCisxMDUzMiA5YjhiNTc0ZWYwMDcxZTFmOTA5ZmU3NTM4ZjJjMzU5ZjI5MTI1OThmIGxlZ2FjeS10cnVuaworMTA1MzMgY2I4ZDczMzgyNDhjZWY3N2M4NzVmYjM2ZWFhODQ2YTA5ZWZkOWM5MyBsZWdhY3ktdHJ1bmsKKzEwNTM0IGEzZDkxMmFmYzkwOWFiY2RkMmE1MzE2MmU0ZmZhNzQwMmM2Y2JiMzAgbGVnYWN5LXRydW5rCisxMDUzNCA0NGFiYTRkMjZiMDFmYmFlMDQwM2VmZTY1NGY5ZmQwMzQ3NjA2NzMyIGxlZ2FjeS10cnVuaworMTA1MzYgYmNhZjQ4Yjk0YmIzMzgzYzRjYTE3YTkxOWVmODJmZWFiM2UyZDRmNCBsZWdhY3ktdHJ1bmsKKzEwNTM3IDQzZTgwMmMxNmE1YjFhZmJiODYwMGU1OGQzMjJkYjYxY2QyYTdlMmYgbGVnYWN5LXRydW5rCisxMDUzOCA1YWFjZGQwOTc5NDEzOTNkNmRhNmVkMzJhMjUyNDFmNDM4NzQ5MThlIGxlZ2FjeS10cnVuaworMTA1MzkgZDlhYzkyNDYxODMyOWNjNDA5OTcyMTFjMzYxMjZmOTQyMzc4MWVhYSBsZWdhY3ktdHJ1bmsKKzEwNTQwIDc3ZDRlNmY2NjJjMWJlZTA3NmI2MjBmNmUwOWViNzliY2UxM2E1ZTYgbGVnYWN5LXRydW5rCisxMDU0MSA0Mjg1ZjhiN2JhMGIyZmIxNzk5NDdiZTI5ZTY1ZGNiODEyZWExMGMxIGxlZ2FjeS10cnVuaworMTA1NDIgMDc2NmRmNTAzZWE1M2RmNDE2ZDhhNWU1ZWIxYWZhYTI5Y2FhOWY1MiBsZWdhY3ktdHJ1bmsKKzEwNTQzIGQ5NzA0OGY4OTFiZjA2YWRkOWFhODc5MTg3M2JiZDU0NDM2YjhjNDAgbGVnYWN5LXRydW5rCisxMDU0NCA5OGVjNDIzY2E2ZmE5OTEyYTgyMGVhYTA1NmY2ZGNmZDc0YzdjY2Q3IGxlZ2FjeS10cnVuaworMTA1NDUgMjI0YjVjMzZhZmVmODU2Yjg5OTZmMGIzMDUxYzg4YzQ4MzEyMTU4MyBsZWdhY3ktdHJ1bmsKKzEwNTQ2IGYwYmQ5ZWU3OGE1MjE3NjMxMTFlZTQ5YTZhNTcyOTllMGViYjNhNmQgbGVnYWN5LXRydW5rCisxMDU0NyBhN2RkMGY1MmYyYjYwOTQ2YWM0NTJkM2I2Yzg4ZDcxNzY0MDJiOGFiIGxlZ2FjeS10cnVuaworMTA1NDggNDhlMjM0OWQxMWM2MDkzNzJiZThlYmYwZTkwZGJhM2Y2ZGRlYjk3ZCBsZWdhY3ktdHJ1bmsKKzEwNTQ5IDlmMTZmYTcwZDA5MGVhZWJlZTAwNDAzYjQ4NzU5NThkN2FhYmRhNmQgbGVnYWN5LXRydW5rCisxMDU1MCA4NmE2MTkzMDQ5YTk2ZjQwNGY5OTdhNzY5YmUyMjcwMjkwNmJiYzk4IGxlZ2FjeS10cnVuaworMTA1NTEgNGEyZjFjNjlmZGU4MWU5NmE1MWE0ZGYyNDQyM2I1Y2JhZDE5MmJkMSBsZWdhY3ktdHJ1bmsKKzEwNTUyIDA1MmU3NzY2NDAzMmUxODA2MGMyYTE5MWI0MjM0Mzc3ZGI4ZTllNGQgbGVnYWN5LXRydW5rCisxMDU1MyBiODE2MmQwODY4NTAwZTkxZmU5OWFiYjk5Y2MyYzNlNjRmZTg2MGYxIGxlZ2FjeS10cnVuaworMTA1NTQgNWE2N2Q5MDUxMDI2MmExN2FlNWY2N2NjY2Q2NDg1NzI0OTEzOTIyYyBsZWdhY3ktdHJ1bmsKKzEwNTU1IGQwZmY0MTc0NmEyNjAwZTRiYWZjZmY4Y2Q2NzI4YzdkZTc4OTM5ZGYgbGVnYWN5LXRydW5rCisxMDU1NiBlMzkxNDVhMTMwOTY4MDJkNGU0ODFjMTFkNjkyNGIwYmNmNDk0NjQ1IGxlZ2FjeS10cnVuaworMTA1NTcgZGUwMjllNmY5ODM4OTFjN2UwZmJkMGFmYWY0MDhmMjE3ZTEyYzFhNCBsZWdhY3ktdHJ1bmsKKzEwNTU4IDViZmYwNDE3MTc5ODU4ZTMyZDhjNjY0Y2YzMzdlYWVkMjhiYjExZjUgbGVnYWN5LXRydW5rCisxMDU1OSAzMzE3ZjcyNzIzYmI2MDk2Yjg5YjcxNjA0NmM1MmUwMGVmMzVkZGJkIGxlZ2FjeS10cnVuaworMTA1NjAgYzE1MzMwZWViMTkyYWQ2NmQxYzRlMTQxNGJkMzg0MzU1NTEyNWQzNSBsZWdhY3ktdHJ1bmsKKzEwNTYxIDY1OGQxODRlOTIwNDFiOWM2OGQ4NzA2YjE2ZDA4ZTExNzJlMTg5MzYgbGVnYWN5LXRydW5rCisxMDU2MiAwYjBiNjlhODhiN2I5NWI2MTMyZjMwYWY1ZWExOTNhN2QwZTBlZjcxIGxlZ2FjeS10cnVuaworMTA1NjMgNmI1OGI3OWE5NThkNzdhNThmNGU1NDc2YTg5ZTcwZDM1NjYxZTg1YyBsZWdhY3ktdHJ1bmsKKzEwNTY0IDdhY2UxNzJjMjUyMWIwMmVhYTFmZDZkY2U4ZTM4MTAyODNhZjcyOTcgbGVnYWN5LXRydW5rCisxMDU2NSBiYjNlYzgxMmVjOTBmMjQ4Nzg4M2U4YjlhNzBlNzA0ZjNlM2VlOTgwIGxlZ2FjeS10cnVuaworMTA1NjYgNWUzYmI0MTU2MDA0MjVmZDlmZjhmMTNjMzU0NDEwYTlkNGU2M2Q5MCBsZWdhY3ktdHJ1bmsKKzEwNTY3IDY5MmJlMTIzZjU0N2YxZDM0NzUxYjRlMWFkNzlmM2E0OTM0NDE1NmMgbGVnYWN5LXRydW5rCisxMDU2OCBlM2RjZTNiOGMyODI1OWM2MTk5N2YxYTgzOTU1YmJiMmQzOTMzMjc4IGxlZ2FjeS10cnVuaworMTA1NjkgMDQ5MzEzN2E4NDE0NjFhYTU4MjhhNThkNDE1NDJiYjlmYWFmODI3NiBsZWdhY3ktdHJ1bmsKKzEwNTcwIGM1ZjkyZWU4NDk4ZjVjOGIyYzQ2YTUwYmNkYTA1NDdjYjA5ODVjMzEgbGVnYWN5LXRydW5rCisxMDU3MSBkZjM3Y2E0MDM4ZjZjMjYxODFlNTFhOWUzYzFhNjhlYzg3OWQ2Y2YzIGxlZ2FjeS10cnVuaworMTA1NzIgOTZhYTU4NzI1YzBlNDA1OGIzNTg4YmNlNjJhOGRlY2JkYWMyNDkyZCBsZWdhY3ktdHJ1bmsKKzEwNTczIDA4ZTFiYjg0MDdlNjUyMDQ0MjBkODhlMjM4MTQxYjQ2NTRhNGM3ZDMgbGVnYWN5LXRydW5rCisxMDU3NCBhZDlhYWQ4MTNhNjFiMWNiZjUzOGY2YTk0ZGQ1NzYzMzY2NGY3NTY2IGxlZ2FjeS10cnVuaworMTA1NzUgNTczYmMwNjQyNjRjYjdlNGFhYTlkZjI0N2QwMjJhYzc5OTExNDNiYiBsZWdhY3ktdHJ1bmsKKzEwNTc2IDQ3YmRmNDVhZmI2ODYwNzA1MTQzMzMyYjUwY2NkMWRmZmZjNGFmMTQgbGVnYWN5LXRydW5rCisxMDU3NyA4YzFmMTYxYzZjOGMwMWVkODBiMzM1MDMxOGU3MWMzZWJmMzkyMWU1IGxlZ2FjeS10cnVuaworMTA1NzggYTZjZTJkZmYyNzM1Yjc3MjViNGQ4M2QyMWZkMzBjOWU0MTI4Yzk4MiBsZWdhY3ktdHJ1bmsKKzEwNTc5IGI1NzY4NDZjOTRiMzhmNTQ0NmViOTMzYzdmMDc0OWFkNjRmNzExYWEgbGVnYWN5LXRydW5rCisxMDU4MCBhNTVjYmE5NjM3NjE2M2UwY2Y2YzFhZmVmYWY3MTkwZThiZmU0ZTJlIGxlZ2FjeS10cnVuaworMTA1ODEgZjJmOTEyODIzZWU3ODU3MWZmZmRjOGUyYWNhNzMwOWIzYzEyNTNmNCBsZWdhY3ktdHJ1bmsKKzEwNTgyIDI2NWMyNzk3NzgxYTA2OGZhNTI0MDU5MzhjMDZlMDIzMzg0NDMzNDMgbGVnYWN5LXRydW5rCisxMDU4MyA0MjdmMzQ4OWU1MmI2YWMwZGI2ZGM1ZmYyMmFhMzRmOWE1OTc4YTZjIGxlZ2FjeS10cnVuaworMTA1ODQgMTFhMWJhZDZkZjY3MzNlMmM2MTkzYzliYThmNmZlNDc4MjNiYTdlNSBsZWdhY3ktdHJ1bmsKKzEwNTg1IDkzMzQ4ZTVhODVhMjQwZDE5NjNhNDJmNjU1NGMxMDc5MGIxNjczNDMgbGVnYWN5LXRydW5rCisxMDU4NiA3OTFlZGE1MmIzZDljYmFlYWVlYjgzOWFjYTVmNTk1YWNkYTczZWNjIGxlZ2FjeS10cnVuaworMTA1ODcgOWIzYjAxMzJjMDIxYzdjNmM4OGFiY2M3YTQ1MTJhZjliYThkNWMwYyBsZWdhY3ktdHJ1bmsKKzEwNTg4IDI4MTBmYzYwOWFlZDA3MjA3NTc4MjdiMTk3N2YxMTFhMDU0NWQ1YmQgbGVnYWN5LXRydW5rCisxMDU4OSBhOTk3M2Y5YjU0MTc3NzI0YWY1YmU5ZDM2ZGUwOWUyYmQxNDMwMzBiIGxlZ2FjeS10cnVuaworMTA1OTAgMmU0OWJjODlmYWZhMGRkM2Y2ZTU2Y2EwM2JhMTE0ZTBjNjA3YjNlMSBsZWdhY3ktdHJ1bmsKKzEwNTkxIGYwNzA3YWUwMDQzMzg0OWFkN2NiMDVkNzcwODRmM2U1YjFkODc5ZDYgbGVnYWN5LXRydW5rCisxMDU5MiA1YzliZTk4ZjUzNDczOTRlMWRmOWU5MGIzMTkyNjA3OWQwMTVjYmI2IGxlZ2FjeS10cnVuaworMTA1OTMgYjZjZTE3MTkzMjNhYzdkZTlmMjFiN2ZmNjMxOWFhNDY2YWYyNTMyMCBsZWdhY3ktdHJ1bmsKKzEwNTk0IGUyZDMzYzA3MzJiZmIxOTE3OGNmYTE4N2VjOTI3YTQwNGU2ZmU5OWUgbGVnYWN5LXRydW5rCisxMDU5NSA1MzBmZjNiOTk3MjJiNmMwZGM1N2ZlNDQ2ZTNhYjY0Y2IyMDAxZTc3IGxlZ2FjeS10cnVuaworMTA1OTYgZDk2MjIzYjc3ZTJmMzcwOTQyZmE4MGRmN2FhYjUyMTQ3YmRkMTdlNCBsZWdhY3ktdHJ1bmsKKzEwNTk3IDU5OTk3ZmRjODFkZjdmMTgzMGFkZmUyYzY3MjE4YWEwMzZiODdmNjQgbGVnYWN5LXRydW5rCisxMDU5OCA5NWVmZWE2OGYxOGQ3ODc4NTc5ZDEwZDAxODg3Yjg0NzI2NTc0OWEwIGxlZ2FjeS10cnVuaworMTA1OTkgN2NmNTE2NTdiMDhjYWFiNDQ3M2E3MDZiZWRmZmU3YTE0YmE0MmVhNiBsZWdhY3ktdHJ1bmsKKzEwNjAwIDVhZWNjMjc3ZTZjYWEwMGNhN2Y1ODQ5ZjJmYTNjMjc0NGMwOTQxY2YgbGVnYWN5LXRydW5rCisxMDYwMSAwNjhmZWExNWNiY2Q4NjRmMzkyOTI3MTdlMWVmMTA5YTZhN2Y1MjI2IGxlZ2FjeS10cnVuaworMTA2MDIgZTkwNGU2ZGZkNzBiMjUyNWZkMmVjYjJjN2Y3MDIxNTNmZjUyZWY4ZSBsZWdhY3ktdHJ1bmsKKzEwNjAzIDhjNTUyZWVkYjFhZmFmMWQwZTA5NGZiNzY4OTNlOTc2YWRkMzgyNGIgbGVnYWN5LXRydW5rCisxMDYwNCAwZGI2ZjY5MzJiNzM1YzcxYzAzYWRlMGM3ZWIwNTg1ZjIxNmM2NTk0IGxlZ2FjeS10cnVuaworMTA2MDUgYmQ3NDRhZjY4NDVmOGIxYTVjNWNiMTkzMTVkZjVhNTJlMDQxYTZmMiBsZWdhY3ktdHJ1bmsKKzEwNjA2IDM2NDA0ZDljYjVlMTVjYmYyZTcxZDliOGMzNTM2YmIwY2FhOTAyYzAgbGVnYWN5LXRydW5rCisxMDYwNyBkYWE1NDEzMTQ1M2I3N2UzOWQ1OTgwYzY3Yzg4ZDk5MDRiNjE4ZDE0IGxlZ2FjeS10cnVuaworMTA2MDggMDQ3NTMzNzg5MzU5Zjc5OTdiNGY1MWUyMjdjYzhmYmNiYjAwYzgyMiBsZWdhY3ktdHJ1bmsKKzEwNjA5IGZkYmE2Mzk3YjcyOWU0NzNhYzNmZjYzZDQ5OGQ5OGMwNTI5NDhlMTUgbGVnYWN5LXRydW5rCisxMDYxMCAxMDk0ZWJiZDNhNDU3NGQyODJjYzhkMzA1OTA0MmUwZWRlODAyZTA4IGxlZ2FjeS10cnVuaworMTA2MTEgMWJjNjU2ODc2MjZiODc5NDY0ZjY4YWNlZDZmMGVjY2JjYzUxNDc2OCBsZWdhY3ktdHJ1bmsKKzEwNjEyIDhiNDljOTE4YTI1ZjM2ODEwYTVlMDEwMWJjYmE5MWQ0NjhiNTk3MzcgbGVnYWN5LXRydW5rCisxMDYxMyA0MzIzYjI0MzM1ODFkOGM4Yzg5MzExZGQ2MDYwZTAwZjVlYTM2OTcxIGxlZ2FjeS10cnVuaworMTA2MTQgNjA4OGQ2NTJiOTMyODQxYWJkYWM1YzNlZTdkMmY2NmQ5N2U4NmM4ZSBsZWdhY3ktdHJ1bmsKKzEwNjE1IGM3ZDk5ZjZkMmUyZjhjMTc5ZTdkMDYwN2Q1MjJjODFjZjUxN2UyYjcgbGVnYWN5LXRydW5rCisxMDYxNiBhYzI4OGRiNWJjOTFjNDQyNTQwZTJiMzdhODcyYjk1M2VhYjhhMmU3IGxlZ2FjeS10cnVuaworMTA2MTcgY2Q2YjlmYzExNGE0MTVmYTRlYjU0MzUwNjhiZDQ2YjQxNDkzOGQzMCBsZWdhY3ktdHJ1bmsKKzEwNjE4IDQ0MzU2ZWU3ZTU3OTA2MzQwNGRhMWIyMzVkNjIwZWMxMGFlOGE1OGUgbGVnYWN5LXRydW5rCisxMDYxOSA5ZDAzMTAxNDM2MDA4Y2UwOGQyYzY0NWYzZGFhYmJjNmVjYWJlYjJkIGxlZ2FjeS10cnVuaworMTA2MjAgYWMzY2E1NjZjYjQxNjFjNDA5ZmFlMWI0YTdmMzgzYzcxMzM2OWYwNCBsZWdhY3ktdHJ1bmsKKzEwNjIxIDIzYTgzNzcyNjIyNjRiNTc2M2MzZjliZWUzOGIyOTk2Y2JkODNjMjEgbGVnYWN5LXRydW5rCisxMDYyMiBiMTQ4ZmExNTI1ZGI5OThlZWMzMWIwOWFmOGM4NWQ2YzNmMmJlZTg3IGxlZ2FjeS10cnVuaworMTA2MjMgZDYwMWFmODA2YTU3MzNiZjM3NTZlMjliN2NlMWEzZjAzNWZmMDU1OSBsZWdhY3ktdHJ1bmsKKzEwNjI0IGFhM2I0ODAwMmY4ODdlMzZhZjJiMjA4NzcwOWRkZjYxYzk4YTZhM2UgbGVnYWN5LXRydW5rCisxMDYyNSBlMDMzZWQ1MGNiMzc2Y2Y2YTVjODVmMDAzM2YyNzFlMzcyOTJiODg5IGxlZ2FjeS10cnVuaworMTA2MjYgY2NkODM3NWRiMjczNmRlOWRhNjUwZjc1OTlkMGIzNTc4MGZhMGZiMSBsZWdhY3ktdHJ1bmsKKzEwNjI3IGMwZTM5NDRiNmE2NGZlMmU3M2Y4Y2RjNWEwM2JmOWY1YTQ2MDBkNGQgbGVnYWN5LXRydW5rCisxMDYyOCBiZGJlMDgyZWUzODNkYThhMDJjNjJlYTNiMGNhOTE4Y2FlZGFmODJiIGxlZ2FjeS10cnVuaworMTA2MjkgOTI3OWVmNjg2OGViYTNhNTUwOTkzOTJlNWE1MDcwOGQ5ZjU4NTQ0OSBsZWdhY3ktdHJ1bmsKKzEwNjMwIDkxYWFlZWY3NWE3MzYyZjg3YjUwYzYxZjRlMDkzYjY5OTQxMTA2YmIgbGVnYWN5LXRydW5rCisxMDYzMSAzYTUyMDI4ZmU5MzYzZGEyZjYxY2VkZmUzNGM5OGRmOTZmNDNhN2JhIGxlZ2FjeS10cnVuaworMTA2MzIgNDY2ODZkNDBiZGZkNmMzMTE3N2I5MmJmNGE0MTVmOTgwNmQ4ZTdhZSBsZWdhY3ktdHJ1bmsKKzEwNjMzIDA1ZmViZjkzMWU5MWI0YmY5NjJlOTkwMzFiODc1Zjg3ZTRjZmI3NDAgbGVnYWN5LXRydW5rCisxMDYzNCA5OTVmYjU1YjNlNmFiZDIxZGRhMGMyY2Y3ZmM2ZWI4OWVhNDE2ZGRkIGxlZ2FjeS10cnVuaworMTA2MzUgMjU1MjMzZTQyOTE4ZjM0OWYxZTMzNDY4YTBiYzJhZDExMTE1MzJhMyBsZWdhY3ktdHJ1bmsKKzEwNjM2IGFkYTQwZTY5ZmQwOTM2ZTM1MTZhMGQyYjcxYTFmYWJlNTcxOGVjMzMgbGVnYWN5LXRydW5rCisxMDYzNyBlNDliMzBjNmE4MGFjMGI3ZjhjNzZiOGEwYWE0MmZhZTQxNzc2M2U2IGxlZ2FjeS10cnVuaworMTA2MzggYmJmZTk5YzI3ODVjOTM3MjMyYjdlM2Y3YjNlYjY1ZjUxNDhmZWNhNCBsZWdhY3ktdHJ1bmsKKzEwNjM5IGIxYjI2ZTBlMGEwYWRhZDNjNzFkYWM4ZDliYjhjMGNiYWI1NGJhN2MgbGVnYWN5LXRydW5rCisxMDY0MCAwNTY1NzJlMDc4MWE2YTIzMTNiMmQzNDk3ZDU2NzFiMTY0ZThkMDhkIGxlZ2FjeS10cnVuaworMTA2NDEgY2U5ZmM2NDUyOGE3OWRkOTEwZTU0NjZjNmU1NmJlOTRkNjk2MWQ0NSBsZWdhY3ktdHJ1bmsKKzEwNjQyIDEyNWJmZDg5Njk2NzE2MzMzY2FlNGU4YzM0N2VmN2M1ZmVlYjhhZDYgbGVnYWN5LXRydW5rCisxMDY0MyAxYmJkZDg0YzdhNDA5OTY1NjM4ZmMyZmFjZDRiM2E0MzM3MmI4N2E3IGxlZ2FjeS10cnVuaworMTA2NDQgYTMxMzRjNjk3MGViYmU4YzRiNWVjN2E2OTY2ODYwYjIxNjMxYWJmMyBsZWdhY3ktdHJ1bmsKKzEwNjQ1IGVhNTliYjkyMTM4MDUxNTEwNTE3OTE5ZDEyYjg4M2JjMGY0ZGNmYTggbGVnYWN5LXRydW5rCisxMDY0NiBmM2M4ZmJjNzkzZmVhNWU3Y2E4NDZlYjhkODBkMTNiMDE4OWVjZTdiIGxlZ2FjeS10cnVuaworMTA2NDcgNmY1YzkzNmFlMmQyMjI4MWQxZmEyM2Q1YWYyOTRlYTM4OGUwZDMyZiBsZWdhY3ktdHJ1bmsKKzEwNjQ4IDE1NDZmYzc2ZDAwZWNkNWVmYjAyMjdlYmVkZWVkNzQ3ZGIyNWQ0OTggbGVnYWN5LXRydW5rCisxMDY0OSBiOWQ5YzBlZWI0N2MyNjA4MzczYmM5NDhhM2VmODBkNTA2Zjc0ZTdlIGxlZ2FjeS10cnVuaworMTA2NTAgYzlkMGQ2MzFhYmFhZTBlMDI3MmUwMmE1MmY3YjQ1ODUxMTc0OTIwNyBsZWdhY3ktdHJ1bmsKKzEwNjUxIDI4NGFkZDc0ZmUzNzA1ZWMxZDVkNzFkNmFkOTBlMTQ5YjUyM2ZlYWMgbGVnYWN5LXRydW5rCisxMDY1MiA1MzZlNDM5YTY1ZjlkMGI1MjNkZjkzM2Q2MmY1NjczNGViZmVmYWJlIGxlZ2FjeS10cnVuaworMTA2NTMgNTczMmVjMjQ4N2M1MGM2ZDM5ZTdkZjI3NzUyZjIxYjcxNzBlZWQ5MSBsZWdhY3ktdHJ1bmsKKzEwNjU0IDViYzhjYTEzY2ZlMDFjMTgxNTU1MmQ5OWIyYTc5MmE0MjFkNGI0ZTcgbGVnYWN5LXRydW5rCisxMDY1NSAyNmM2MjJkMzcxN2QyMmM3MWM3YTA4YjU3OWJiODUxZDQ4MzMzZGY3IGxlZ2FjeS10cnVuaworMTA2NTYgYThkZjA5MGExMmJhZjY4ZjU1MjQ0NDFlMjJmYmZhOTNlNzI4MWM1OCBsZWdhY3ktdHJ1bmsKKzEwNjU3IGEwYTBjMTQzMzhjMDc0ZmQ5NmYxZTcyY2EyNWMyNDA0NmE2YmQ5YWMgbGVnYWN5LXRydW5rCisxMDY1OCBlZTI3ZjNhOTE2NmY4MDEzMzNiZjM4MDExMzNiMTY5NzRhZmE0OGE5IGxlZ2FjeS10cnVuaworMTA2NTkgMzBmYmUzMDJjNTE4ZmY4NGVhNTk1ODhhOTE4ZWU5MWNkOTQxZjdlZSBsZWdhY3ktdHJ1bmsKKzEwNjYwIDRhN2ZmY2RlNDBkYzhmNzAxMWVhMjEwZDVkN2EyZDExNTM2YzM3MzcgbGVnYWN5LXRydW5rCisxMDY2MSA2OGVlOGFiZDk3ODI4YjA1M2QwNzhkYWEyN2M5MDkyOTdhNzlkZmQ3IGxlZ2FjeS10cnVuaworMTA2NjIgYzY5YWQ1NjZhZWIxZTUzMWRiODJiMjc2Y2QwNGNiOTdmZDNlZjBiNCBsZWdhY3ktdHJ1bmsKKzEwNjYzIGRlN2ZjNjZjMGI0ZmRmYWQxNWFhZWM0MDBhZjcxZTI1ZjNhMDRhZWIgbGVnYWN5LXRydW5rCisxMDY2NCA2ZjFkYjUzNGRmYWU0YWRmZDRiMDNmYzE5NzNhOTIxMmVhZWJlYTUxIGxlZ2FjeS10cnVuaworMTA2NjUgMTQyMTY1ZWQ4NGQ4MGJjMDU3MDY2ZDBmNDUzZjhjZDdlMWVjYWJlMSBsZWdhY3ktdHJ1bmsKKzEwNjY2IDkyOWI3ZTZlNzUyMGM1ZGJjMDI1MjI5NTVjOTJiODA0M2Q4NWEzZGQgbGVnYWN5LXRydW5rCisxMDY2NyA3NzU4MDhhMDllNDZiNzczNDFjMWFiNDY3MjE4YWYwZjVmOGY1MjBmIGxlZ2FjeS10cnVuaworMTA2NjggNjczNWVmNjYyZjM5ZDhjY2EzZWI4MmQ2ZDU3NzljNTE3MmM2Y2QyMSBsZWdhY3ktdHJ1bmsKKzEwNjY5IDk5N2Q1YTIwMDBlMDQ1MjZjZjU5ZjEzNDZjNjZmZDczYzg3YTQ2OTMgbGVnYWN5LXRydW5rCisxMDY3MCBjZTJkMTIwYzM5MDNmMjU0YTU4M2Y2Y2M2MDE5NGIwN2RiYmY0NzBiIGxlZ2FjeS10cnVuaworMTA2NzEgMjVjMmFlYTY0NTAxN2NmYjE0MWMxYWE0M2NmNWU1MTk3MDExMTc0NCBsZWdhY3ktdHJ1bmsKKzEwNjcyIDM1YWE2N2ZjNGU2MGY2ZjY5MjdmMzczMzhjNTVjYmRlNTBlODRlMTcgbGVnYWN5LXRydW5rCisxMDY3MyBiODFiZjljYTE3OWQzZWI2ZGNkNzczZTA0ZjRkYWU4MGJlYmM5OGI0IGxlZ2FjeS10cnVuaworMTA2NzQgNDg5NGRkZDQ1MmVlY2MxMjY5NzE3YzY1NzIwNGEyMjJhNzcxODk5YSBsZWdhY3ktdHJ1bmsKKzEwNjc1IGI2Njg2Zjc1Mzc5OGY4MmYxNTdiNjBlYWFlYzAyY2E5ZmQyZWY2MTUgbGVnYWN5LXRydW5rCisxMDY3NiA4MjBkNTEwZDFkZDYwYzAxNmU1ZmE3ZmRiYmFkZDU3MDVhYzhjNTk0IGxlZ2FjeS10cnVuaworMTA2NzcgODg1ZGU0OWI0NDVjNTNjNTc4NzBiMjNhMTJiZDMxMjhlYTlhYWFiZiBsZWdhY3ktdHJ1bmsKKzEwNjc4IDNhNTViNGM1ZTNjNzE5OTVkYjJmMzk0OWZmMDZiNjdjOGM3MmM5ZDEgbGVnYWN5LXRydW5rCisxMDY3OSA4M2E2OTMwNWNiMDZlMTM4YTA5N2I2OGVjN2M2MmU3ZTA1MDA3NzU3IGxlZ2FjeS10cnVuaworMTA2ODAgYzMxYzU5ZjE5MmFmMjIwNDE1ZWJjNDU4ZmVmMTZhNmYzNjg1ZTc2NCBsZWdhY3ktdHJ1bmsKKzEwNjgxIDQ4MmU0YmEzM2MwOGY2YTY4MTJlYjhkYTVmMzIzOWQzZThkNWEyMTggbGVnYWN5LXRydW5rCisxMDY4MiAwNTA5NjA1MmQ4MjU3YTAzNzgwODJkYWQ1MzJkZjk5MjY5ODVmNzI3IGxlZ2FjeS10cnVuaworMTA2ODMgOWYwYmI4N2RkZTYwMGFjOWJjZDkzYTgzYmNiYjkxMDZmYzkyOTRhNiBsZWdhY3ktdHJ1bmsKKzEwNjg0IGMyOGIwNTM4YTQ0NjU0N2ZlNzkxODZmNzhiYjM1ZTkxZjM1ZjRlZWYgbGVnYWN5LXRydW5rCisxMDY4NSBkNmY0YzJhNTMxMmM0ZTFkZDNlMmE5MGMyMzBiYzI5ZmM5NWIxZTAwIGxlZ2FjeS10cnVuaworMTA2ODYgYzQyODliODEzOTI0YjI3NTNjM2I5ZTk4NDM5NzMzMTQ3ZTdkZjY2MSBsZWdhY3ktdHJ1bmsKKzEwNjg3IDdlZDEwN2FmOWZmNDk1MjIwZmRjZDRkZjA0Y2EzZjFmYTQwZDAwYjkgbGVnYWN5LXRydW5rCisxMDY4OCBiNTQ5NDk2OTAwNzc5NzQ0MzNkYzQ3OTAyYjFmZjMxYWU2ZGUzMjIwIGxlZ2FjeS10cnVuaworMTA2ODkgZTI2NTY5M2YwNzkwMjA3NzI0MTIyYjA4N2Q3YmYzMWVhZGFjNGNkYiBsZWdhY3ktdHJ1bmsKKzEwNjkwIDM0Y2NhODMyYTRhZmUzODkxMjYwZDhjMDVjN2MzNjljOGY4YTUwOTAgbGVnYWN5LXRydW5rCisxMDY5MSAwYjdmM2E5MzIwODVjMzQyMjBlOTkzM2Q0MWQwMzEwNWRhMzM3OWFhIGxlZ2FjeS10cnVuaworMTA2OTIgMjAzZTJhYjYzOTM2YTI1ZmUyYjBhMWY2OWYwNWU2N2JjMTlmMjk2OSBsZWdhY3ktdHJ1bmsKKzEwNjkzIDE1ZWExNWUwY2EyYWI4NThlZjQ5NDc1OTQ0MDNlNjdhMGFjYTUyMWQgbGVnYWN5LXRydW5rCisxMDY5NCBhNDQ0Y2Q4MzVjMGUwNDY1NzFlYTAzZTc3NzZmNjk1YzdkZTQzOWU1IGxlZ2FjeS10cnVuaworMTA2OTUgMzBjMjM4NWNhMzg5M2EwYjkyYmFhZDUyMzAyNzBiNDY1MDYzMTU1YiBsZWdhY3ktdHJ1bmsKKzEwNjk2IGJjMmU5YjRlYjhkZDU4NDcyMzY1NGI5OWViYjAxOGRiNTk5M2RkODcgbGVnYWN5LXRydW5rCisxMDY5NyBmMzIwODAwZjBmYTU1YWZlNzg5ZTA0MDIxYWU4YzhiNTgyMzI3Y2VhIGxlZ2FjeS10cnVuaworMTA2OTggYTE5NjYxMDc2NTI5YThhZjFmYzNmZmFkM2ZiNDNlMzk5ZmM3OTJlMSBsZWdhY3ktdHJ1bmsKKzEwNjk5IGYxYzk2MDkzMTQxMzE5MzM4MTVkYWM0NWQ5MjllZDY3ZTQ0OTczODggbGVnYWN5LXRydW5rCisxMDcwMCAzMjhkNDZjNDczZjRlYzBlMmMwZmQwYjMyYmQ5ZjUwMzg1ODliYjRhIGxlZ2FjeS10cnVuaworMTA3MDEgOWQ1NGFhZjAxNjNkYjBlYjUwNWIyMmFhZGNhNmU4YWQ0OTJkMjMxZCBsZWdhY3ktdHJ1bmsKKzEwNzAyIDZhMDg3YWUxODBiYTM1OGEzMWViZDc5MTcwYTNkYzgzMWVlYTU3NDYgbGVnYWN5LXRydW5rCisxMDcwNCBlODM0YWU3M2RlZGRmMmJjMGY3NmY5MGMyYTA1OGZjMjNjMTY1ZDBhIGxlZ2FjeS10cnVuaworMTA3MDUgMTM2MmM5MWVmY2QyN2UyNjUyYWZmZThlZmE0M2Q1ZjJiYTkzYjg4MyBsZWdhY3ktdHJ1bmsKKzEwNzA2IDVlMzk0YTA3YTNhNGYxMDFlOWY0MDlmYzIxYjlkNGNkZDQ4NmQyNzEgbGVnYWN5LXRydW5rCisxMDcwNyA5ZmMyYWY5ZTU4NTlhMGJhMDcwNzgzZmIwN2FhOWYzNWMzOTdhY2M5IGxlZ2FjeS10cnVuaworMTA3MDggNjlmMmUwNWNjMzc4ZWQzNWIxYzRlMDY5MTdhNzNkODk4OGE5NmRjMCBsZWdhY3ktdHJ1bmsKKzEwNzA5IDRhMTNhNGQyNTg4YjMwZGIwNTFmMWM0OThhNGU0OGY0ZmEwYzEwMDcgbGVnYWN5LXRydW5rCisxMDcxMCA5ZDY0MmE3MzVhMTMyN2QxZmZhZDM2MmNlOTA3ZTdkMmJmOWVkMGVmIGxlZ2FjeS10cnVuaworMTA3MTEgZGY3NTJjMDhiNDYyMjA0NDJmYmI3ZmRhZmNkYTRjZDZkNDg1NTI0YSBsZWdhY3ktdHJ1bmsKKzEwNzEyIDg1YThhZTZkZTI3ODU4NDE3MzQ0YmE0ZWI3MDdmZGNiOGM4OTg0YzggbGVnYWN5LXRydW5rCisxMDcxMyBhMTAzY2Y2ZDM4NDViNTU4YWM3ZWVjMzdlZjI3MGQ5ZDVhNDgxZmU3IGxlZ2FjeS10cnVuaworMTA3MTQgZWNkZThhNDVkNDI1MTMxOGRiNzQzNzZhOWQyNjkyOTM4Y2EzODkyOSBsZWdhY3ktdHJ1bmsKKzEwNzE1IDBlYzlkYzlkMjAxZjJmMTQ0NTUyOTkyMmQ4MmVhZjFjZjFmMGVkYTcgbGVnYWN5LXRydW5rCisxMDcxNiA0MDZkZDJiMzY3OTM5NTk3Y2QxYjFlNDFkNTdiMDQxODIwMDI3ZTViIGxlZ2FjeS10cnVuaworMTA3MTcgOTMwNmY1OGNkYmE1YTFkYTI0YzMwNWI1MTY3MjA3Y2EyY2NkZTgzYyBsZWdhY3ktdHJ1bmsKKzEwNzE4IDE0MTE4YjU3NjcxZWM0YWE5Yjk0NGYwZDkwN2NiNWZhOTJjZmY0M2EgbGVnYWN5LXRydW5rCisxMDcxOSAyNDAzZTkyYTRhNmMwOGI5NTMxNzQ2NGRlMGJmODk3NzlmNzQwODQ5IGxlZ2FjeS10cnVuaworMTA3MjAgMDdjMGEzMzFjMjY5MjJiZWYyODE5ZDMwNzYxNjVhZTg1YWUzZTBiZiBsZWdhY3ktdHJ1bmsKKzEwNzIxIDNiZTFhZDlhODU4N2YzNmZhM2NjZTU5OTIyNjE5Zjg2OWU2ZjM5MDIgbGVnYWN5LXRydW5rCisxMDcyMiBkZTJmZjg5ZDZkNGJlZjJiNWY5ZWU4YWRlYzA0YzFkNmQxZWNjNDFlIGxlZ2FjeS10cnVuaworMTA3MjMgNDAzM2ZlYjI2ZGE4OTlhNWUyMjcwZjIzYTRjZDNkNzZkYzRiYzNhNSBsZWdhY3ktdHJ1bmsKKzEwNzI0IDA3OTJkY2RlOGUzMTFkOTZmMThjMTE2OWY1YzA2NzM0MDYxZmRiYzkgbGVnYWN5LXRydW5rCisxMDcyNSA3NGVkZDVjZGE5ZmQ5YzU0OTFlNGQ4YWM4M2NiMTJkNWQyYTYxZDhlIGxlZ2FjeS10cnVuaworMTA3MjYgMTA1MmIwYjJjNmVhMGY1MDY5MGNkNDRhMDk1NTdiMTY5NjQxMTczNCBsZWdhY3ktdHJ1bmsKKzEwNzI3IDJmYWViNzJiYjY0YTE5YzkxNmJmZjQ4OWFhNWY2OTQyYzM3ZDMxZWQgbGVnYWN5LXRydW5rCisxMDcyOCA4NTIzZWNhZjU5YzU2OWE5MjM4ZGMzMzE1ZWVlZDA3MmUyMTI3ZGMwIGxlZ2FjeS10cnVuaworMTA3MjkgNzM1NmQ0ODg4YThiY2E5MzQ0MGUyOWE3OWZiNTk1YWZjZWEyZGMyYyBsZWdhY3ktdHJ1bmsKKzEwNzMwIDI0NmFjYWQ5Yzg5M2RiZDZlNzljZTEwOTczMGM4MjM0N2I1NmY2MjEgbGVnYWN5LXRydW5rCisxMDczMSBhYjBkNWYyNjVkNTRlOThmMDVkOGM3OWMwZmUyYWVhMjllYWJhYjMyIGxlZ2FjeS10cnVuaworMTA3MzIgNTBkMzViZGYyMDQyZGUyMGM2ZTdhYTIxZjFiODhmNDJjODdmYTk1NyBsZWdhY3ktdHJ1bmsKKzEwNzMzIDM3YzNlYzRmM2QzZjlhNzNkNzY4ZWVjMDQ0M2M3NmRlOTg1YzVkMmEgbGVnYWN5LXRydW5rCisxMDczNCBmYzMzNTBhZTVmMmE5NTY3MWY0ODU1NWI0ODZkNzg4YzI5MGQ5NDVhIGxlZ2FjeS10cnVuaworMTA3MzUgYmM1MGY1YzIwYmM5NjE1OWQ4ZDI1OGJhYTA5MzhmYTQxNzg4MzIzMSBsZWdhY3ktdHJ1bmsKKzEwNzM2IDEwMjZkMDMzYzBkZDlhMmE4ZGM3MTJlNWEzNDg2OGVmZTdkOGQ1OGIgbGVnYWN5LXRydW5rCisxMDczNyAxMGM2MDlmZTdkZWJjOGI3ODRlZDk3MWFiZDRhYmVlMTJiMjYxZDBlIGxlZ2FjeS10cnVuaworMTA3MzggYThjMjFhY2NiZWNkYjkyNWQxZTIzMzIzMzIxNjZlYmFhYTA3YmJmZiBsZWdhY3ktdHJ1bmsKKzEwNzM5IDEwN2E4NTI1YmY1ZWI1ZjYwZDUyZjQzZDFhZGY0YzEyNGQ5MmZhYjYgbGVnYWN5LXRydW5rCisxMDc0MCBlYjgzNWVkMWY2ZmU4MzdhODBjMWI1YTU1N2I0YmFkOWQ1ZGNjYzMxIGxlZ2FjeS10cnVuaworMTA3NDEgOWIwN2QyN2EzMWJkNzlhNWQ0ZGM1NjcwMjE5ZmRjMjYwMGZhMzUzZCBsZWdhY3ktdHJ1bmsKKzEwNzQyIGQ4M2YxYmNiYjE1MDVjNmM4YjdjYWI2ZGYwYjBlMjlhOWUxNDA0YmYgbGVnYWN5LXRydW5rCisxMDc0MyBiOGJhODg4N2Q1OWY3ZjZiY2IwZjE1NjMwYmZiZDUwZjEyNDY3OGZhIGxlZ2FjeS10cnVuaworMTA3NDQgOGI4MjIwODM3MjZiMWM2YjM2ZDY5MDA3M2E5Nzg3MWJmMTE2M2I3MyBsZWdhY3ktdHJ1bmsKKzEwNzQ1IGI0ZDNkMWEwOGU0ZGFlNjE5Mzg0YWRlYzhjNWMyN2FhZjg4MmEwZTIgbGVnYWN5LXRydW5rCisxMDc0NiBjZTFlZDdlYjc3NTA3Nzk2ZTE4MmIwMDQ2ZDdiMDliMDc2ODNlMGJlIGxlZ2FjeS10cnVuaworMTA3NDcgMGQzYjczZDk5NTg4OGU5YjljNmMyNThlMGUxMGY5ZDJmN2VlNWQyOSBsZWdhY3ktdHJ1bmsKKzEwNzQ4IGVhNGI3YTU0ZmQ5MmZjNGRhNDQ5YzVhMWZhOTMyYzI1YzJlNTM2M2EgbGVnYWN5LXRydW5rCisxMDc0OSBjMzQ1N2ZiMThhNTEwN2Y2ZDA3ZGQ1MTliOGNmZGUyMjIwZTgzNzBkIGxlZ2FjeS10cnVuaworMTA3NTAgZTE4NGY4M2JiYjc5N2Q0YzA3ZDUzYmY5ODJjMzk0NTFlNjM1Y2U5MyBsZWdhY3ktdHJ1bmsKKzEwNzUxIDNkNjVmNjE2ZjkzZTVlNDUyYzA2ZTE2ODJhMmQ4ZmY0M2RkZWRhNWEgbGVnYWN5LXRydW5rCisxMDc1MiBhYWExYzhiNTI5ZjUyNTgwMTY1OGIwYmVlZjIwZTk2MjRhM2RhMTJiIGxlZ2FjeS10cnVuaworMTA3NTMgNjZhMmVhNjNiNGQ4NTc4YTg0ZDkxNmNkYmIwZDQzYTdjYzM3NDgyMiBsZWdhY3ktdHJ1bmsKKzEwNzU0IGU0NjlhOGFmMDRiMjFkNGZlMTRmYWQwNDA4YTgxN2EyOTk4MWQ1ZjIgbGVnYWN5LXRydW5rCisxMDc1NSAyZGQ4OTBhZjE4N2UxMDQ0Njk3MmUwZGQ4MjY1NDQ1NDBkMTBmODczIGxlZ2FjeS10cnVuaworMTA3NTYgMWRiNDA5OWE3MmNlOGIwNzljMjEwNGQ3ZjdhYzY5YzgzMjdmNDY2NyBsZWdhY3ktdHJ1bmsKKzEwNzU3IDdiMjUwMDY1NzlmNGNmYzI1YzZkMTA5OTkxNzFjMzcwNWY4MDM2NTggbGVnYWN5LXRydW5rCisxMDc1OCA3MDc2NTMxZWZiOGZkYjMzY2U2Y2VmNDUwZjMzNjk3NWNlZGI2NmI5IGxlZ2FjeS10cnVuaworMTA3NTkgZDgxZjMxNjE1NjdiNWZmMTc1Y2E2ODlmMDI5ZTkyNTM0OGYyOTViNCBsZWdhY3ktdHJ1bmsKKzEwNzYwIGM3ZDBiOTcxZTBlMzkyNWEzNDVlZGQ5ODE4NGJhNGRiYmQwZWM3NWIgbGVnYWN5LXRydW5rCisxMDc2MSAzNWQxY2VlZDY5YjllYWVmYTRlNGY5ZTMwMGM3ZmQxMGM4OTY5ZjY1IGxlZ2FjeS10cnVuaworMTA3NjIgNjMxYTE1OWNmMDQwYjFhOWIzMzUwZDk5M2VhMDUzOGNmYjI2NTEzZCBsZWdhY3ktdHJ1bmsKKzEwNzYzIDJiMmQyMWVmYzRkNzE1ZTE5YjA4MGYyOGQ2YWNmMzc5Y2E5MDA2MjggbGVnYWN5LXRydW5rCisxMDc2NCA2NTg4YWRlMGVmYjc3NGU4YmI4ZGQyZGRkOTdiMzliYTcxYTU1YTA3IGxlZ2FjeS10cnVuaworMTA3NjUgMzgxOGExOWY3NDdmMGE4ODRjNGVmMzkwNDk3YTJhNjA3MDhjOTBhZSBsZWdhY3ktdHJ1bmsKKzEwNzY2IGY4MzRlMTk3YmQxNDZkYTcyOGU5NjdkZWE1YzkyNDFiMDQyN2M5MWUgbGVnYWN5LXRydW5rCisxMDc2NyAzMmJjMTdmN2M3N2JjZTdhMzU1NTZhZjk0NTBlMTJjYTVkNzQwNzBhIGxlZ2FjeS10cnVuaworMTA3NjggNGM4OGNjNjJlOWU5MGE4NDM0ZjA3NTBlMzc5ZTZlZDRhNDk2NWNiNSBsZWdhY3ktdHJ1bmsKKzEwNzY5IGQzYmYzYzJhZDc1YTlmZTZlNTk1NjdiYzBhOGVlOGM4YjljNWViZjAgbGVnYWN5LXRydW5rCisxMDc3MCA2ZWQ4YTdmZmM1OTUzNzA0YWI4ZjQ2YmRlOGRhMmRlZjRhY2E0MTg1IGxlZ2FjeS10cnVuaworMTA3NzEgOTI4MWI1ZDM1NjQxYTBjMDVjZDgwZmUwMTRiZDI5MzA0MDY3NDc3YSBsZWdhY3ktdHJ1bmsKKzEwNzcyIDc0YTkxMGI4NmI0NDNkMzUyNTk1ZWYwM2ZmNzdmYTA1ZmU4NjNhNDkgbGVnYWN5LXRydW5rCisxMDc3MyBmOGEzODliMTA0ZjA5MWIyZjYzYTE2YjNjODY2ODBkZTkzMGVkOTUxIGxlZ2FjeS10cnVuaworMTA3NzQgZmY2MzEwN2M5ZmE1ZDc4ZmZjODRjYTQyZjIxMDIxNmZkMjVmNTgzMSBsZWdhY3ktdHJ1bmsKKzEwNzc1IGYyYmI4ZDUxOTViNjY4NzRhNTIzNzJiNmYyYzc4Y2NjMjkyOGNmNTYgbGVnYWN5LXRydW5rCisxMDc3NiAzNWVhMGMwNzNlYTNkMzExNTQ4N2Y2YjczYjA4MTE5MTc3ZTY1NWVlIGxlZ2FjeS10cnVuaworMTA3NzcgYjQzODk4NmIzYzA4ZDgzYzEzM2Q2YWU4NDYxZjczODY4ODA3ZmE3NCBsZWdhY3ktdHJ1bmsKKzEwNzc4IDVkZDZmMWZmNjZiYzA1MDk5NTIwNjFkMzE3Y2FjZDBmMjRiYTYzZjEgbGVnYWN5LXRydW5rCisxMDc3OSBiZjhlODZiOTVjOTIyNmE1NzA5NjExMWIyNzEzNzkzODY5MGEwNmFhIGxlZ2FjeS10cnVuaworMTA3ODAgOWRkNzlkMDEwNGQ5NmY0YTU4OGU2ZjhiMTU1OGZmZmQxZThkOGQyMSBsZWdhY3ktdHJ1bmsKKzEwNzgxIDRjM2MxMmU5NTZhNzU1ODViNzM0ZDA2NjczMWIyNzg1YjNlM2EzMjMgbGVnYWN5LXRydW5rCisxMDc4MiBlM2QyMWM0Y2EzNjJmZDMwOTA3NmZhMzNlZTZiYWI0Yzg5MjgwZTk2IGxlZ2FjeS10cnVuaworMTA3ODMgOGI1MDc1MWYyNzJjODRlZTg0Njk0Njk3Y2I1ZGI0YjYxYjY4YjUyMyBsZWdhY3ktdHJ1bmsKKzEwNzg0IGQzZjNhMDU2OGJkNmEwOGQwODNkN2M0MzcxZjY2ZGU0NGI5YmFjMDUgbGVnYWN5LXRydW5rCisxMDc4NSBiNTliOTk0MmJhYzk2MWVjYTVkYjM3YmU1ZWFmYjI5YWJmMGUyZGFkIGxlZ2FjeS10cnVuaworMTA3ODYgNjIzYzQ1OWY4ZmJlZGViNzZkZjBkNDM1N2VlNmU5ZDEwMjE1MTU3MSBsZWdhY3ktdHJ1bmsKKzEwNzg3IDBkMmQ2MWY1MmI5YzUyZDYxZTk1ZTgyNTljZjAwMjY0ODQ3YjVmMjMgbGVnYWN5LXRydW5rCisxMDc4OCA0Njc0Y2QyZjZmMDcyYmNlOGRkN2FkM2Y1YWIyZTY1NGY5MjQwNzI3IGxlZ2FjeS10cnVuaworMTA3ODkgMDhkZjljYjU3M2FkYWM4MTU2OTAyMjk0NGY2MGJiZjFiODg0NDM5MiBsZWdhY3ktdHJ1bmsKKzEwNzkwIGZlMWZkNTZjYWRhNzAyMDAyZWNhNTBlNjgyMzY3NDFmNGM1ODdhNmEgbGVnYWN5LXRydW5rCisxMDc5MSA0MDcwODU5ZmU2MmVlYTQwODQxZTU3NDY1OWI1ZDg4MGIyMDVjMjc2IGxlZ2FjeS10cnVuaworMTA3OTIgNDE0MjQ3ZDRmZWQ3M2EzYmRiMzJjZGJkZDI3NWY0ZDVmYmM4ODVlYiBsZWdhY3ktdHJ1bmsKKzEwNzkzIGY0ZmM5ZDE4YTUzZDQ3MzM4MTQ4YjkxNDQ5MjY3MWVjYTdkYjhiY2MgbGVnYWN5LXRydW5rCisxMDc5NCBkNjdiZTEzZGEzY2MxOGU0OTQ0ZGZhODc1N2IyMmIwY2QzMzdlOTkzIGxlZ2FjeS10cnVuaworMTA3OTUgYzYyMzYwYWE1ZWE0MGFhYjhiOWFlZTg3ZmE0ZDhhZDMwMTU4YWE3MiBsZWdhY3ktdHJ1bmsKKzEwNzk2IGY5NGQ1YWU2NDJhOWIxY2RlOGZlYjEwNzJmOWRmNWMyZGFhMmZlZDAgbGVnYWN5LXRydW5rCisxMDc5NyBlNDJiOTQyNzU2NTJiOWQ1ODFiYTQ2NjA3ZDVlYjhjMzU4MWY3MTE0IGxlZ2FjeS10cnVuaworMTA3OTggNjNjY2U5ZDc3Nzk3NjIyZTU5NDU3M2E4YzhkMWMyMmE2NmI1NjFkZiBsZWdhY3ktdHJ1bmsKKzEwNzk5IDgxMDU3OTk2ZmYyMWQxYzRhZjJiMTI5OTMxYjg1NTU2NGUyYzk3YzUgbGVnYWN5LXRydW5rCisxMDgwMCBlYzg3YjYyNDY2ZDNhYWQ0YTUxM2YzZTJhNGMzZmVhMWJiMGQzNmZjIGxlZ2FjeS10cnVuaworMTA4MDEgZGY0MDNlZDM1YmRkZTAwYTBlMjdjN2U1NmJlOWQ3NTE0NWVmZWFhOSBsZWdhY3ktdHJ1bmsKKzEwODAyIGMxNGU2OGY1OTFjZTMwNWJkOGRkY2YzODRjNDVmZTJhMGFiMGUzYjkgbGVnYWN5LXRydW5rCisxMDgwMyA5ZGRkNjc5MzE5YTlkODEwMTRjNTM5YmZjYTBlODNjYzQzOTlkZWYzIGxlZ2FjeS10cnVuaworMTA4MDQgZTZlZjBlMzllMzVjZWQ4ZDY5NjJkMzljMTA5NTdkOGJmOWFkOTQ2YSBsZWdhY3ktdHJ1bmsKKzEwODA1IGUxMzkyMTA1MDMyNzgzYzU4NzJiMTQ3ZGJlYzkyOWIxZjkyOWI3ZDYgbGVnYWN5LXRydW5rCisxMDgwNiBjNDljOGY3ZmRmZjE4NmNlMTQzYjIyNGNmNzY0YzQ5ZThmMzI5NzI4IGxlZ2FjeS10cnVuaworMTA4MDcgYWYxMWRiZjM1ZWU1ZTlmYTlhZjQxODBhN2U3N2IyZTJjMzI3MzYzMSBsZWdhY3ktdHJ1bmsKKzEwODA4IGEyM2I3NTEzOGJiMGZiMjNmZmEzNDI0NGIwYzQxMTUyYzBmZTczNDcgbGVnYWN5LXRydW5rCisxMDgwOSAxODk3NzQ3NzM4ZjU5OGZhMzFhZTcxOGQ1MjdiMTcyYmNmMWY3MjJlIGxlZ2FjeS10cnVuaworMTA4MTAgNDgyNDBmNTI1ZWMzYmU1ODNjNTk1YmE5ZGQ2ZTM0MTkyMmE2NWRhNSBsZWdhY3ktdHJ1bmsKKzEwODExIGNkODI4NDYyYWNiYjgyZWMwOWIwMDhkZWJiNGQwYTQxOTQzNTYwYjYgbGVnYWN5LXRydW5rCisxMDgxMiA3YTFlN2RhOTIyZjg3MDU3MmI5ODQzMmI1ODBiMGE1ZGQwZWNiNWNlIGxlZ2FjeS10cnVuaworMTA4MTMgYzU5YjU3MzZmMzA3ZjM1MGUxYTA3YjNjOTVlNzViNmRlNGQwZWZkNCBsZWdhY3ktdHJ1bmsKKzEwODE0IDk2NzllNzdkNDJlM2Q1OGVhZGI4MTkxYzg3MmI1ZjMyZjgwY2M0M2QgbGVnYWN5LXRydW5rCisxMDgxNSBhNGFlNzkyYjliNjgwMmFkMjBlZmIwMzRkZjdmOGJiMWRiZjI1YTU4IGxlZ2FjeS10cnVuaworMTA4MTYgNWJmYjVlZGMzMTNjYjY2MjEzMDI1M2I3ZGVkNjk2ZWVlNDZlODhlMyBsZWdhY3ktdHJ1bmsKKzEwODE3IGJmMTEyNjIwMjZiZGY3NTI0NGM0Y2M1ODZjNzMxNjY3YjAzMDgyNDAgbGVnYWN5LXRydW5rCisxMDgxOCA2YjcwOTViOThlNTRjYTViMTFiNzZlNDQ2MGIxNmVjMWJkYWRkMzY5IGxlZ2FjeS10cnVuaworMTA4MTkgOGQ5MGU3ODFhZGE4YmMwYTliMGRmOTAyYmFmZDM2ZTI3MTRmZjIxMiBsZWdhY3ktdHJ1bmsKKzEwODIwIDc2NThjOGExNDlkMTg1YjM0YmEwYWEwOGJmM2U2YzIxNTlmNjJmYjQgbGVnYWN5LXRydW5rCisxMDgyMSAyOGRhZTkxYzVkMGNjZGZmZDM0MzJkYzAwNWUwMDcwNmQyMDA2ZGViIGxlZ2FjeS10cnVuaworMTA4MjIgYTg0ZjY1OGQ0YmE0Y2VjYjIyYzUyZTg0M2JmMDlkMjFiYjc1ZGI5NSBsZWdhY3ktdHJ1bmsKKzEwODIzIGViZmRlMDZmZGI4ZDhjZDlkZjVlNTNiZjAzMDM2ZDBmYzY4YzczYzkgbGVnYWN5LXRydW5rCisxMDgyNCAyMjgxNWEwYjEyNjc1NmU0MWQ4MTQwM2Y1NTRmZWNiZTA2NTk1M2Q2IGxlZ2FjeS10cnVuaworMTA4MjUgMWI0YTM3ZjM3MzQ1MGFkZTliMjFlMjBmZWRiZjBjZmZjOTVhYzAyNyBsZWdhY3ktdHJ1bmsKKzEwODI2IGQyZDgyZjdiNDE5YTYwMTFkZmIzZjcyMmZlNjZkZGRiOTgyYTZlZTggbGVnYWN5LXRydW5rCisxMDgyNyAwNTE5NmE0ZTU0NDhiZjhjYzViYzU1ZGRmYjBmYTI1YjkxNjAxZDVmIGxlZ2FjeS10cnVuaworMTA4MjggMWIzOTNkYjAwYjFhYjhjYjNlY2YwYmRjODQ0MTM3YWE5ZmE1MjRkNCBsZWdhY3ktdHJ1bmsKKzEwODI5IGU3ZGQ5OTFmYWE0YWYxOTBjMDk3ZjQ2MGNlODBhMmMxZjAwOTMwMzAgbGVnYWN5LXRydW5rCisxMDgzMCA4ZDkzNzNiZDgzODRkZmNjNjdkYjdiYjZhNWFiZTkxZjg5YzRiNmYzIGxlZ2FjeS10cnVuaworMTA4MzEgNDE3MmRhOTE0NDFhYTBmNTY0MmFlOGYxZGM2NTYzNzRmMzJkODYxYSBsZWdhY3ktdHJ1bmsKKzEwODMyIDUyYzMzOTUyNDYwYThmNDQ3YTJkOWE0YTEwOTYwMTBiYjgyZDE1MzcgbGVnYWN5LXRydW5rCisxMDgzMyAyNTNiZmNiNjViNzczNDNhYTFhODYwNmRiNTI3ZmYzYWRiZDMxMDBhIGxlZ2FjeS10cnVuaworMTA4MzQgYzU3MTU1NDEzNGQxNTA1MTcyNjhiMTgwN2UwNTg0MzI0ZDg3ZWY5YyBsZWdhY3ktdHJ1bmsKKzEwODM1IGM4OTE5MWMyZTYzZjAyMDhmOTAxZmNlMmJiY2FiOTIxZjM0NmU5YmYgbGVnYWN5LXRydW5rCisxMDgzNiBmMzA4OTYxYjAzZDdkNTFkZWY5Zjg4ZmUwMzQ3OWI5ZGZkMDIwM2YxIGxlZ2FjeS10cnVuaworMTA4MzcgMWJjMGRmOTZiNGRkYzNlOTA2ZjFkN2JjMWE4MjRhMGYxNDdkMzBiZSBsZWdhY3ktdHJ1bmsKKzEwODM4IGE3NDIzZTY4Y2VlOTQ3NDFmNmE1OTg5YmQ1N2YzYjM3NzUxNzkxMTQgbGVnYWN5LXRydW5rCisxMDgzOSA4MjBmMDZiYjQxYzdmNTZmNWY1NDRhNWU2OWNhMjY0ZmYzZjhlYjMwIGxlZ2FjeS10cnVuaworMTA4NDAgZGE0YmRjZWVhYWQ3YTc2OWQzNmNhNjdhODVmMTdlZTQ5NDc3YjQ4YyBsZWdhY3ktdHJ1bmsKKzEwODQxIDczOWQ1ZmRhZmMzMmViMmE2MDk3ZTZhNWUzYzM1NTM2ZjI1OWZiOTIgbGVnYWN5LXRydW5rCisxMDg0MiBlMDc0NmEwZGE3MzYyYjAzMmRlOTY1ZmE3YzUwZGIxZjRlZjkwODc4IGxlZ2FjeS10cnVuaworMTA4NDMgZTgwZDRjM2RiYjc4N2M4ZTVjOTQ5ZjlmOTUzYjA5NWVjMDVhM2IxNCBsZWdhY3ktdHJ1bmsKKzEwODQ0IGU0MTIxMWE3YWVmM2ZhNTExZTRhODgyNjcxM2E0NmU1Y2ZjY2Q1ZWYgbGVnYWN5LXRydW5rCisxMDg0NSA1MmQ3YTllNzEyMjE1MmE5Zjc3YTNiMDc0YTJjZWM5YjUzYmQyYjZlIGxlZ2FjeS10cnVuaworMTA4NDYgNDU1YjIyOTQ1NDgyZmYwZjQ2NjFjZTVmOWRkOGM4NTRiZmZkNmFiZCBsZWdhY3ktdHJ1bmsKKzEwODQ3IDVmODNmOTdhYWViOGUxOTIzOTBjMTY1MTdlYjA2Y2U4NDBmNWQ2N2QgbGVnYWN5LXRydW5rCisxMDg0OCBlMTdhMDE5ZjkzOTBmN2Y1MGRmZWFiYmViODFlMjY1MmVkMTkwM2YzIGxlZ2FjeS10cnVuaworMTA4NDkgYTQ2NGU5Yzk4NWY4ZTViZjlkYzUxYmVkZWUyYmUzMzYyMjUyZmQ2NSBsZWdhY3ktdHJ1bmsKKzEwODUwIDFjN2E4MmQ0NjllMDY3MTY3YWVmZDZhYTI4YTU0MmU4OGFhZjY4YTUgbGVnYWN5LXRydW5rCisxMDg1MSA2NTBiZDEzYmVjOTJkMTEzZmY0OWM5MjNhYzI5NTQ1YTc3YjA2NDgzIGxlZ2FjeS10cnVuaworMTA4NTIgZjJiMDg1OWZlY2UzYmJlN2Y1OTcwMDJiNjY4ZjUzZGVlMDQ5ZTUxMyBsZWdhY3ktdHJ1bmsKKzEwODUzIGE2NTkzMGY1Y2RkYmNkYjVmNzJlYjExNGZiYjQxZWYwMjI3ZmNmMjkgbGVnYWN5LXRydW5rCisxMDg1NCA2YWQ3YzE2NTZkMThiNjkzNDE5ZmMwOWYxNTFiZTlkNDE3YjNhNmFlIGxlZ2FjeS10cnVuaworMTA4NTUgNmM4MjZlZTNlNTUzOGU0MTE1OGM4ZmJmYmE3NTM4NmRjMTIwNjZiNyBsZWdhY3ktdHJ1bmsKKzEwODU2IGExYmZlNWJjNmQ4ZWE4MWE0NDM4YzA3NTBmMmFhMWQ5NzZiYjM1MjAgbGVnYWN5LXRydW5rCisxMDg1NyAyNDJiM2M5YzViZWMyNzNiYThhZDhlMzM3YTRmYjI2YTlkNjhlMTFkIGxlZ2FjeS10cnVuaworMTA4NTggNzdjMWYxMWQwYThhZmNhZjcwODkwMWQ4NmFmYWViNDJiMjNjOWVmMSBsZWdhY3ktdHJ1bmsKKzEwODU5IDk1ZjdjNTJiNjM5OTQ3N2MyMzQ3ZjgxZTc0OTExOGUwMmJiZTBiZWIgbGVnYWN5LXRydW5rCisxMDg2MCA3YWMxNWYxZTUzMDIxMDhmNDgzMTY1Yjk3OTg4OTY3NGMwNjhmOWVjIGxlZ2FjeS10cnVuaworMTA4NjEgZjVlYmNjN2E1YWIyNmUxZjcxMDU1OTI5ZjE3NTk2N2NiZWE3MjNiMyBsZWdhY3ktdHJ1bmsKKzEwODYyIGNkMmRmZWQwYzQ0YjUzYTQ4YzBmYTUyMWNiMTFhZDQzMjdmZGJiNjYgbGVnYWN5LXRydW5rCisxMDg2MyA4MjJlMDgxMmYyMGMzNTcyZDBlNTY0OTJkNjZhNjdhYzhhYTdkYzAyIGxlZ2FjeS10cnVuaworMTA4NjQgMDU4MTkwYzlhNGYxMjZlODhmNWE0OWE4MGMxMjRmOTdmMTdmYWI5YSBsZWdhY3ktdHJ1bmsKKzEwODY1IDkxYmI1YTgwOTQ4MWEyYjFjOTZmZjVjMDczMmRkNjBhNTNjZGUwODYgbGVnYWN5LXRydW5rCisxMDg2NiA3NTJiOWY1NTU3ODhjMDI3N2MxODEwNzcyMzNjMmU0NGJhY2E3NjE5IGxlZ2FjeS10cnVuaworMTA4NjcgM2EzMTAwMTg0OTQ5OGUzNzRjMDI0MzdmMDY4MjM5NmY1MjhhNzViNSBsZWdhY3ktdHJ1bmsKKzEwODY4IGQ2Yjg2M2QxYmViOTI0NGFjZmI3NWMyZmY1MmQ0MzQxZWMxODE3MjEgbGVnYWN5LXRydW5rCisxMDg2OSA4ZTlkNWU1MTAzZjVkYzE3NWIxYTg2YmY5ZmE3MmMyYjBkODEyZTNhIGxlZ2FjeS10cnVuaworMTA4NzAgNzNhMjU3NzllODM3MmUxMWUwMDAwM2ZmNzViNDc4MTU1M2JhMWI1YyBsZWdhY3ktdHJ1bmsKKzEwODcxIGRlNjhmODNjMTY5Y2E2ODhlNTM4OTIyZjdmNDE3NDk5MDUwODE2YzkgbGVnYWN5LXRydW5rCisxMDg3MiA3NmNkMDM5NzlmY2E0MjNhODcxZjA0OTY1Y2FlNWY3OWFiZWZhMmQyIGxlZ2FjeS10cnVuaworMTA4NzMgYTU4MmQ3MGUzMTJmZWVkOTBhOTA3MzQ5OTBhZjdhZmU3MTA1NThmYiBsZWdhY3ktdHJ1bmsKKzEwODc0IGVmOWI5M2IyYTBmYWEzMzBiNGYzYjc3YmUwMjRhZDQyYmVmNjVhNjQgbGVnYWN5LXRydW5rCisxMDg3NSA3NjY5ZGRmMGU3ZDQ5NTBhN2NhOGYzZTgzZjY1NmRlYzBkNmFiM2JlIGxlZ2FjeS10cnVuaworMTA4NzYgOTNhYTA4Yzc3ZTYwZWIyYmRmZWRlYWUzOWI3YzJkNzc3Mzk5MmQ2NCBsZWdhY3ktdHJ1bmsKKzEwODc3IGQ3YzU2OGU3NzA3YmYxNzk4ZDQ1ZDI2MTA1MzM2YTA1M2YyODNlMDggbGVnYWN5LXRydW5rCisxMDg3OCA3OTA3MWE0ZTBlY2FiNjMxNDNlOTgzZmJiZWVhNGM3ZDk5Mzk1ZDc3IGxlZ2FjeS10cnVuaworMTA4NzkgYzliN2U5MjZmZDg2OTk1ZjE4MTA2MzUyODIyZDBiYmJiNGJlOWM2MSBsZWdhY3ktdHJ1bmsKKzEwODgwIGZmMzFmMjUwMTc0MjUzNTJjMzFmZDgyN2NiYjBkMjg4MzZjNzQ1MjMgbGVnYWN5LXRydW5rCisxMDg4MSA0ZWY3ZDI2MGZlYWM5MzFlYzE4Yjc5ZDFkMzUxZmFiZjZlNWFhNDMzIGxlZ2FjeS10cnVuaworMTA4ODIgNjI3MGM2YmFkODExNmZlMTdhN2VkNGM4MWQ1MjlmMWQwYWI0OTcwYiBsZWdhY3ktdHJ1bmsKKzEwODgzIDcwZjkzZTBjNTgwZWVjYWZiYTI5Mjk3NWE5MDY3NWI2MjVkNzNkNGIgbGVnYWN5LXRydW5rCisxMDg4NCAwY2IwMzk0YzJlZGNmZTE4M2NkNzc3Yzg3YmU4Njk5YjU4YTU5ZTIzIGxlZ2FjeS10cnVuaworMTA4ODUgYzRkZjhiNjYzN2I2OTQ1YjJmOWU4MjM2M2JmNmQxNWM3MDc2MGE5YSBsZWdhY3ktdHJ1bmsKKzEwODg2IDY0Yjg4YTE3ODMyODY5MWNkNGMyNWU3OGRlN2E1ZGZmYjE1Yzk4ZjggbGVnYWN5LXRydW5rCisxMDg4NyAzYzQwYWYyZDFkZTllMTM0YjVlN2RiZDVlM2IxMDcyZmZiYTk2MmVjIGxlZ2FjeS10cnVuaworMTA4ODggNGEzM2JiN2FkZjdkNjFiYjg0NmQyNDlhM2EwMzdlMTBhNDgxZjllMSBsZWdhY3ktdHJ1bmsKKzEwODg5IDA5Njg1N2IwZTRiODVkYmRjZTA3Yzc2OTAyZTFmOTk4NzYzYjk4NTQgbGVnYWN5LXRydW5rCisxMDg5MCA4YTRmZTE5OWI0NWRlZjcyOGNjMmQzMmMxZDgxMzAxZWVkODk1ZWQzIGxlZ2FjeS10cnVuaworMTA4OTEgZjIxODY3ZjgwMzViZDM4OTk1YzJmMWFhZTFjMzdmODA1ZjczOGJkNiBsZWdhY3ktdHJ1bmsKKzEwODkyIGM5ZTNjZThlNzRiNWQ3ZjUxYjRmMDkzYTJhMjY3Y2JlY2JkNmM5Y2EgbGVnYWN5LXRydW5rCisxMDg5MyBkYjhiMTBiN2NjZjIyNDk3NTQ3MTg4MDZmNTA0MTNiMDFhNmU3YWU0IGxlZ2FjeS10cnVuaworMTA4OTQgNDUwNTE2MGE3ZTVjNmNlMTM2ZGYxMTIwMmU5OWE2NjZlOTlkMzFhYiBsZWdhY3ktdHJ1bmsKKzEwODk1IDU1ZmM4ZDkzMzA4NzY2ZjE4OWM5Y2Y2OTEwMGU4MDY0NjE2Y2I5NmMgbGVnYWN5LXRydW5rCisxMDg5NiA0MDY0YjY3Mjk1MzdmMDMxYzA4Nzc5OTc4ZWU2YmE2MzMyMzMyZWY4IGxlZ2FjeS10cnVuaworMTA4OTcgZWNkZDRiNDY4NjI2ODU5MmM4NTNlNzRiNjIwOWE3MGEwZDMyOTFmZSBsZWdhY3ktdHJ1bmsKKzEwODk4IDllYTUwMDMxMTQ5YzIyMDRlN2I1ODg2ZDljMmJmNjMwMDQwYTc1NjkgbGVnYWN5LXRydW5rCisxMDg5OSBmMzk4NDE5ZDUwZjk3NGM1NTVlYjZmMjkyM2RmOTM4NTE0OTJkN2JjIGxlZ2FjeS10cnVuaworMTA5MDAgYjVmZjY2M2VlNzZkOWVjMzA2MzE0MzZhNmUwMGI4MzQ2NjNmZGM0YyBsZWdhY3ktdHJ1bmsKKzEwOTAxIGM4NWUxNDI5M2MyZWUxY2M0NTE2M2Y4NWRlY2ZlMjExNDk0NmNkMDkgbGVnYWN5LXRydW5rCisxMDkwMiAzMDRkNGU0ODg3ZjRjYTYwYTdjNDdmMzM3YjJiYzIyZmE4YzJjMWJlIGxlZ2FjeS10cnVuaworMTA5MDMgZDk2Y2JkYWNiZTcyMjRjOWY5OGI2MjAzMGU5ZDI5OGVjZmJmOGU5OCBsZWdhY3ktdHJ1bmsKKzEwOTA0IDQ3MmU0MjU0MTRkODI0N2ZkOTM3NTdjOWI1NTM1MjExNGM2NzQ4ZjYgbGVnYWN5LXRydW5rCisxMDkwNSAwYTAwZGQ1NzExZTYyMTMxOWY5YWFhZThhYjZlYWUxNmNjOTc0Y2U4IGxlZ2FjeS10cnVuaworMTA5MDYgNzU2ZTJlZjUxYjE5YzYzZmQwNGU4Nzk0OGY1NmFiZTg2NjQ0ZjE0MyBsZWdhY3ktdHJ1bmsKKzEwOTA3IGUyZDQxYmYxYTBmMDRjZWQ3NWQzMzAzZDZlZTE1MzBhZDI3YmQxMjcgbGVnYWN5LXRydW5rCisxMDkwOCAwYjNlNTc3YThkZjQ3YmZmZWY5ZmE1MDU3YzMyY2FkNzgxMjU4YzAxIGxlZ2FjeS10cnVuaworMTA5MDkgZTk2ZTNkMzg3NjExZjAzYTI3Y2JiYjZiYmYzOTY1YmIxMzIyMDAyMyBsZWdhY3ktdHJ1bmsKKzEwOTEwIDNlNjUzZTIwNGFkN2JiZmU5YTQ2YjcwMTdiZjYyMzAwOWNkNGU1NDQgbGVnYWN5LXRydW5rCisxMDkxMSBmN2M1OGVkMjk4MWQxZWIxYmY1MzUzZTY4ZGI0MjRjOTk5MzkzZDA1IGxlZ2FjeS10cnVuaworMTA5MTIgMTJkZGI5YmQwZDMzOTFkNTYzMTRjMDliZDI2MDE3MDkyOGJkNDk0NCBsZWdhY3ktdHJ1bmsKKzEwOTEzIDgyZjAyMWVlY2UyYzc4N2ViYTAyMzNmMTI2ZTY4OWY5OThiYTBjNWIgbGVnYWN5LXRydW5rCisxMDkxNCA5MmMwYzk4YjQyYzUzNjc3OGI1MjNjODg5OTA1NmFiYTkxNTJlNDQ0IGxlZ2FjeS10cnVuaworMTA5MTUgN2NkZmY4YWE4MzE4M2Y3ZjUxZDMxYjYxN2NiZjhlNzU2ZGRlNDk3ZCBsZWdhY3ktdHJ1bmsKKzEwOTE2IGFlNzQ2ZWFiMmE5NjA1NTRhODVlOWU4ODc1NTkxNTEwNzFkYjRmNTUgbGVnYWN5LXRydW5rCisxMDkxNyA3OGViNDBmMDMyODQzY2IxZWFhMTQ0MjBiMDgwNmY0MzEwOWM4OGFjIGxlZ2FjeS10cnVuaworMTA5MTggYTlhNzg4Yzc0ZDZlN2MyNTE1ZTAzYzFlOWY2YWZmNGU3NmI2M2I3NCBsZWdhY3ktdHJ1bmsKKzEwOTE5IGM3YjA0MzEzNmZkYmQ4MTFiMzA4NWM0NDg0MjAwZjk1NmViYTNkNTYgbGVnYWN5LXRydW5rCisxMDkyMCBjMDU5YmJkMTRiMjMyZDNlZmUyNGYxMjVlNDYzYjQxMmIyMGI0ZjZiIGxlZ2FjeS10cnVuaworMTA5MjEgNTM0NjAyNzQ2MDc5ZDEzYzkyOWJmOTE2YjY3MGQzZWU0ZjdjODUzZSBsZWdhY3ktdHJ1bmsKKzEwOTIyIDc3NDljM2UwMzI0YWYwNjZhN2U4Yjg1Y2Y1ZWM0NjE5MGQ2MThlNjMgbGVnYWN5LXRydW5rCisxMDkyMyA5ZTRhZWE1YTY1MmQyMWFkMGI1MWNhMjNkNjBlM2Q4ODNmOWQ5ODBhIGxlZ2FjeS10cnVuaworMTA5MjQgZmQ1Y2VmZGQxZjYxZGNmNGJlNGJiODA0ZGFhZWM2MmJmMzRhZTgxMiBsZWdhY3ktdHJ1bmsKKzEwOTI1IGM1NTBlZTQ5MzViMGM3ODZlZmVkNzc0MGQ4ZDM3Y2I0MmZkYWVkMTUgbGVnYWN5LXRydW5rCisxMDkyNiA2ZjcwY2E3Yzg0ZTY2Y2QzMmQ2M2I5Zjc1YWJhODlmMDJlZGIwMDZiIGxlZ2FjeS10cnVuaworMTA5MjcgMDI0NzE0NTU4NjIwZWJkMzMyZTY3NTBkN2E0ZTdlNTlmYWEzNGE5MCBsZWdhY3ktdHJ1bmsKKzEwOTI4IDU5ZGZhOWViN2MwNzBmZjY1ZWI0YjFkM2UyNDFlNzU1NjAxOGNmMWMgbGVnYWN5LXRydW5rCisxMDkyOSA0ZTY2OGYxYTlkZGRlZjVhMmE0Y2EzZjYzNGM3Y2RjN2VlMGE4YzYxIGxlZ2FjeS10cnVuaworMTA5MzAgYTM0MTYwOTFjMmEyNWEzNjEzMWFlMzgxMDY2MjViMjgzNTJmMzExMyBsZWdhY3ktdHJ1bmsKKzEwOTMxIDM2ZWExM2JhMzEzNjQ0M2Y3MmJlNTI4MzQ2YjJiMDRmZGM1YTIwNjMgbGVnYWN5LXRydW5rCisxMDkzMiA2MTkxMmQ0YWQ1MmY2NzgzZTlmOWIwNWVjMGM1NjY1NzI2NzJiOWY2IGxlZ2FjeS10cnVuaworMTA5MzMgNzU0ZGU2MjFlOGIzMGNlOGNlMmQ1YjE5MWRkOGU3Y2E5MDc4MjMwNCBsZWdhY3ktdHJ1bmsKKzEwOTM0IDg0ZDFiN2NmODE1YTc5ZTkyM2RkZTA0MzA4MjY3YjliODg1NTM1Y2MgbGVnYWN5LXRydW5rCisxMDkzNSA0ZTU5ZDg5MGE0YmRhZDk4YmVlMjEzMzIxNzUxNGMyNTE4YWQ3Y2JiIGxlZ2FjeS10cnVuaworMTA5MzYgMmJkOGQ1MjBmZmFjMDFhNTdlMThiOTU0NDg1MzcxOTVlYzY2NzJjNCBsZWdhY3ktdHJ1bmsKKzEwOTM3IGFmOTI3M2IxMDczYWFhZjg5NzIxYjQyMWY0YjI3ODRmZjY2ZDA2OWIgbGVnYWN5LXRydW5rCisxMDkzOCA5MmM4OGNhNjJkYTdiODEzNjk2ZmViNTdkZWZhNmIxZjVkOWRkYjRlIGxlZ2FjeS10cnVuaworMTA5MzkgYWY0ODg4N2M5NzE3NmI2ZTg1NTMwMDE5NGU5YmQ0YWYwNGM3M2U1ZiBsZWdhY3ktdHJ1bmsKKzEwOTQwIDU3ZGFlMWM3ZWE4NDdiYjk1MTA5MmQ1MTJiYjFkODQyYmE2NGQ1YzkgbGVnYWN5LXRydW5rCisxMDk0MSBmNzUwYjFmZmUzNTI5MmUyZGI3NDVmYmMwZGFmNTI1YTIwNTcxY2ZiIGxlZ2FjeS10cnVuaworMTA5NDIgMjA5NWFlNjkwYWFjYTA0ZDc0MmJmYmE3Yjk0ZmE1ODU2ZjQ3ZDNjMyBsZWdhY3ktdHJ1bmsKKzEwOTQzIDEwMjY3Yzc1NTVhZTY1MTAxNjY4YzY0NmU2ODMwMmZlMjY0NDMyNDMgbGVnYWN5LXRydW5rCisxMDk0NCBkYTA3NjYzZjlmZmY0NmZkMDgxNmQ5YTA2NDE2ODc4N2JlODUwYmMyIGxlZ2FjeS10cnVuaworMTA5NDUgMTMzZjQ1NTRhMjZkNTdjZTU5MzRkODllZmQ2YTVmNzkyM2VjYWI3YSBsZWdhY3ktdHJ1bmsKKzEwOTQ2IDcxNjBlNTI5ZTlhMWViMmFlNmJjYWI5MWE5N2ZmZDVkM2VjNTUyZWEgbGVnYWN5LXRydW5rCisxMDk0NyAwZTZmYmJlM2I2M2MxNDBmNzhjNjk1ZjJiNzE5OGYxNjQ3NTg5NmQ2IGxlZ2FjeS10cnVuaworMTA5NDggNDEyMDlkNWQxZDY0OTBjODA3YmU2Zjk4ZTMwYjRmNDFmNzkzNjE3NCBsZWdhY3ktdHJ1bmsKKzEwOTQ5IDc2MzhlNDU5NDIwNjc1YjZiMDgwNTY3ODE2OGRmMDRiNTA5MDRhNjYgbGVnYWN5LXRydW5rCisxMDk1MCBjMjdjZDVmYzQ2YjUzMmZhZGQ0NDExYWU3ZDJlYzE4ZGIxNTRlNzk2IGxlZ2FjeS10cnVuaworMTA5NTEgOWMzMmNhYzU2MjUwNWQzY2RlMjBlZDlkNGU5NDYxYmIzOTM1MzcwYSBsZWdhY3ktdHJ1bmsKKzEwOTUyIDkzMzg4MmMwZTlmYmEwYTJkZmVkZDA1OGQ5NDA1NmVhM2RhYmM4ZmQgbGVnYWN5LXRydW5rCisxMDk1MyBjODkxODliMDIzNmVjMWYxMzkzOTBkNDljODEyMjc2MTg4OTE0N2IxIGxlZ2FjeS10cnVuaworMTA5NTQgYzU1NWM3MmYwOTBkZDA4NzA1MGM3NGFlMGU2OTViNTkzMDE1N2NhYiBsZWdhY3ktdHJ1bmsKKzEwOTU1IGE5ZDg4YmZhMjRhZjM3MjM4NTAzYWFiZTljZjU5MThlMWM3ZGY3N2YgbGVnYWN5LXRydW5rCisxMDk1NiAwNDlhYTNhOGExNzIwZDE0ZWQzOTg0NGU4ZWQxODNkMDQ0M2Q1M2E1IGxlZ2FjeS10cnVuaworMTA5NTcgZjhjNmNmNWNmYTdkMDE2YzI5Y2UwNDc0ZWE3YmJhMTZmMWY0ZGY4MSBsZWdhY3ktdHJ1bmsKKzEwOTU4IDdmOTViYjJmMTcwNDg5NDM3Yjc0MjE0YmVmMWVmMzFjNzQ1MzIwZGQgbGVnYWN5LXRydW5rCisxMDk1OSAzYTg1YWQ1ZTQxMTZjZDUwNmU1Yzc2NWQyYTRjYTJjYmM3ZWU0OTJiIGxlZ2FjeS10cnVuaworMTA5NjAgNGJhNTg3YWE4YTk4YzljOGI4NGQ5OWYxYjdlMzFlOWZmNGVkNTJmOCBsZWdhY3ktdHJ1bmsKKzEwOTYxIGUyODFkNTAzNjcyNTI5N2Y1MTVjNDUwOWE4ZmZkNmU0NDAyMGU2YzggbGVnYWN5LXRydW5rCisxMDk2MiBkOTNhZTM3NGZiOTk4YWJkYmE2NWM2NjQ3MTQ2NDE2YTg2OTQ1OWU0IGxlZ2FjeS10cnVuaworMTA5NjMgNjE0YTdmZmVlMTEzM2U3MTFjOGMyYmNjNDNkMmZmZjNlNzUzMjQ2MiBsZWdhY3ktdHJ1bmsKKzEwOTY0IDdlM2I3MmQ4YWU5NDYyMDIwNzhjMTYwMzI0OTRlNWNmMjVjMTljNjAgbGVnYWN5LXRydW5rCisxMDk2NSBmNmU5MDBkYTM3ZGI0NTgyNzRmZDE5ZmNmNjNjYjAxMmFmMGFiNTVhIGxlZ2FjeS10cnVuaworMTA5NjYgMmU0ZjE3OGQ3ZTE3NTkzOGM2Mjc3MmJmNTY2NTE3NmExZGY5OTIzZCBsZWdhY3ktdHJ1bmsKKzEwOTY3IDdmOTRiNDk1ODA1NjI5ZWU2ZWI4YzRhMmUzNjg1YzhlNzZmYWRjZjYgbGVnYWN5LXRydW5rCisxMDk2OCA1M2FmY2QyODMyNWVmOTE3Mzc1ZTRmODYyOTZiODlmMjNiODllNGVjIGxlZ2FjeS10cnVuaworMTA5NjkgNTE0NTc3NDBmNWNhZTlkNTdkMjY1YTQ2NjI4ZjczZGU1YTRhZjJjNSBsZWdhY3ktdHJ1bmsKKzEwOTcwIDM2MDQxMzFmOTQyZDY4ZjNhNmYzNThlYTIyZjRmOGMxMzczNWQ3OWIgbGVnYWN5LXRydW5rCisxMDk3MSBiYmI3ZTFkYTQ2ODYyMzUxZDBlNTFmYzM5MGM1ZjZkMjNhMTZjYjhjIGxlZ2FjeS10cnVuaworMTA5NzIgN2QxZGZlNjZmNjRiYzU1MWMwM2I5Yjk1ZThlOTg4MjIwMDQ5Yjk0ZCBsZWdhY3ktdHJ1bmsKKzEwOTczIDAzOGE1YzQzMzU4NjFmZWQ3NTYyYjJmMWNlNmExYzU4MjI2ODNmZmQgbGVnYWN5LXRydW5rCisxMDk3NCBlYjZmNjU5NjZmYjIyYjhmMzcwYjI0YzM4Yzk5N2NkMGZkYTk2NzU4IGxlZ2FjeS10cnVuaworMTA5NzUgMjhmNmIwM2JiNjRmMDU4ZDlhNWQ3ZDgwYTMxYzA5OGY2ZDk5NmMyNSBsZWdhY3ktdHJ1bmsKKzEwOTc2IGZjMjk2MjVkZjUzMjU5MmM1NDhlMDVjYWQ1ZDA1ZmQ0N2RiNTI1YjggbGVnYWN5LXRydW5rCisxMDk3NyAwMzYzZjE5ODg3ZDE1YjJlNjBhZjNmOWZlYWE2ZDM0Njc5Yzc0Yzg5IGxlZ2FjeS10cnVuaworMTA5NzggMWQ4ZGFiNWFhN2QxMGUyOTM5YzU4NGQ1OWIyMjMyMGU0MmNhN2U1MyBsZWdhY3ktdHJ1bmsKKzEwOTc5IDBmOTFjMGJiYWNjNTdjNDQyYmI0MDkyN2NmNmEyMGQ4ZmMzM2M2YjUgbGVnYWN5LXRydW5rCisxMDk4MCA2OWM5YmJiNjlhYWIyNjdmZWY1OThmZmJjMWJhMWMwYWQzZjA3NTdkIGxlZ2FjeS10cnVuaworMTA5ODEgMDQ0N2VmODQ4M2M4Yzc1NGU3M2QxMDQwNzU0ZGE5ZmNlOTFiZWM5MiBsZWdhY3ktdHJ1bmsKKzEwOTgyIDkyY2Y3ZjQyNzcyMzBlOTA5M2ZiNTc3M2RhMjJlZjg4NTdkY2VmZjkgbGVnYWN5LXRydW5rCisxMDk4MyBiYTMxMmU3OTBiMmEyY2I2MzlkYWY2YTJkN2E2ZjA4ODdhYjU4MGU4IGxlZ2FjeS10cnVuaworMTA5ODQgYjhiYmNjMDA5YTZhYjM1ZGZiYTc3MjExMjE2MmYxNTMzZjM4ZWFlYSBsZWdhY3ktdHJ1bmsKKzEwOTg1IDg1ZTY4MjA0ODJmZjgzNWNiMTljYjExODI0ZmY4MTQwNTZmNDkzZGMgbGVnYWN5LXRydW5rCisxMDk4NiBkZTExYTg4YWM0OThlYjRmMTI2ZDVkOTZlYjI4YjE0MWY3NGI5ODllIGxlZ2FjeS10cnVuaworMTA5ODcgZTgyZDAyNzdlNjUzYzA5ODVmNTBmZjE5MzExMTkzZWVhYmJkZDYyMCBsZWdhY3ktdHJ1bmsKKzEwOTg4IDZiZjViODdhZjAyZjlhNjBjODRlMjIxYzU1YmM1YTIwOTg0NTIzYjIgbGVnYWN5LXRydW5rCisxMDk4OSBmNDgwOWZmMWY0ZGE0ZTZhNTJiY2Y3OWFlOGNkMDhkZDQ5Y2M3MzNmIGxlZ2FjeS10cnVuaworMTA5OTAgZGVkNjlkMTJjYzY4MzVlYjA0NzIzMWMyOTQ1MTM3NWEzZDE1MjczMyBsZWdhY3ktdHJ1bmsKKzEwOTkxIDhlODIwNzE2Y2YxMjNlMmMyNWZlNjZkMjY5OTMxMTNmYTJjMTRkZmUgbGVnYWN5LXRydW5rCisxMDk5MiBkZTBmMGMzZWQ0MjRlNmE2NTM1MjA4ZjViYWM0Njc5NTRhMTBiZmVjIGxlZ2FjeS10cnVuaworMTA5OTMgNjk2NjJmMTZhODM4OTY0MzY1MGE1NmI5MjZiOTA1MGYwNzk4YjY3NyBsZWdhY3ktdHJ1bmsKKzEwOTk0IDRkZWQ0MDE4YjBlYjNjZmYzMmMzNGE1NWFmYjdkMzgxZTBiNWU2YmIgbGVnYWN5LXRydW5rCisxMDk5NSBkYTliZjllZWQxZmM3MjIyYWY1N2Q0YjA3NmIzNTU4YTAyNjE2NDIwIGxlZ2FjeS10cnVuaworMTA5OTYgMWVmNDBkNWFjY2UyMmI3NjZlNDBiM2RmZmY1MTQ2ZTVhYWJjYjJlNCBsZWdhY3ktdHJ1bmsKKzEwOTk3IDE2YjNhMTIxZmY3NzJlMjRkZmRmMmIyOTZlNmYwNjU0MWFlYTE2NGQgbGVnYWN5LXRydW5rCisxMDk5OCA4MWUyOTQ3N2QyYTRjMGM3NjJhMzMyZTRlODM4NGMzMmMwMDU5MWU4IGxlZ2FjeS10cnVuaworMTA5OTkgNTBlODdjMDljMjM2NmMzMzM4YmEzYmQyM2U0NzhmYWU2ZTYyNTExMSBsZWdhY3ktdHJ1bmsKKzExMDAwIGI1Njk4MWMwZDYxZWJiMmI4MWZmMzg5MzUwYmEyNmNjZDRmMWU1NmIgbGVnYWN5LXRydW5rCisxMTAwMSA2MWE5YzUyOTQ1NWE5MDgyYmQ5ZTJkYmRiMmYxNmY0Y2RjOWJmNzg3IGxlZ2FjeS10cnVuaworMTEwMDIgYjk0MDE1YzBjODM3YWZlNmQwZTc1NWQ1OTI1MWUwNzYwYTM3YjI1NCBsZWdhY3ktdHJ1bmsKKzExMDAzIDA2NGY4NWVlOWJlNWIwNzk1YTE5ZjkzMTNhYWYxNDM2ZmY4YjUzYzMgbGVnYWN5LXRydW5rCisxMTAwNCA0ZTRmZDk1NGRkYTBmYmNjYzQ5MDIzN2RiMjg3ZDg5NWE5NTAzZGE1IGxlZ2FjeS10cnVuaworMTEwMDUgZDk5OTIwYzBiZmIwMTVlNzFjY2RiNGVhMzliOWYwNjkxYzQzMDViMiBsZWdhY3ktdHJ1bmsKKzExMDA2IDQ3YmYzYmI5NTU2ZTIxZjhjMDZhOGJkYTQzYmUyMmNhOTY1ZTNhN2QgbGVnYWN5LXRydW5rCisxMTAwNyBlYzI2ZDUxNDJlYjQ0MDIxMzQ4Y2QzYzczMDc4NjhiMWVlMjRhZTkwIGxlZ2FjeS10cnVuaworMTEwMDggZDdlMzllZWE3NmY0Y2UzODZkNDY0Zjg4YmI2ZTU3ZTFlMGM0NDQyZCBsZWdhY3ktdHJ1bmsKKzExMDA5IDVmMWU0MzFhMGE4MjY4ZjczYWFiODFhNjNiYjRhZTliOGZlOGNhMjQgbGVnYWN5LXRydW5rCisxMTAxMCAzYzhiMTQ5YjQyZmYzYTY1NmU2OGIzOTIwYmEzZDVjOTJlYjljYjE1IGxlZ2FjeS10cnVuaworMTEwMTEgMDM2NmRhZWZhMjNjMjY5NzBkMjQ3YTViMWMzOWM5NWZjZmJlMjJlMyBsZWdhY3ktdHJ1bmsKKzExMDEyIDQ4MjliOGZhZjJiNDJiNGM4ZTg0ZTNmYTM1N2JmZjMzZjUzYTRkOTcgbGVnYWN5LXRydW5rCisxMTAxMyAxOGE5Mjg5ZGY5OWExZjVkMzhjNDkyMjc5MTBmN2RiZjI5YWFhMTQ3IGxlZ2FjeS10cnVuaworMTEwMTQgMjE2Njg2NmFmOTJiYjE2Yzg1NGEzNDg3ZWFmNjljNmIxNzU2MDcyMyBsZWdhY3ktdHJ1bmsKKzExMDE1IGU1ZDA2YTYwMjQ2OWNkOWRmYmQwNmU3YmE2YmRjMzQyODYwMTJmMGQgbGVnYWN5LXRydW5rCisxMTAxNiA1ZjViNDkyZDE4MDQzYmE2MTRiZGM3MmNkN2QwZmI4ZGZjNGMxNTdlIGxlZ2FjeS10cnVuaworMTEwMTcgZjMxY2U0NjIwMWM5NTYwMTc4ZmQwMDEwNGY4ZDM1NDk0NjVjYjczMyBsZWdhY3ktdHJ1bmsKKzExMDE4IDE4YTRlMDMxZDdjYTBhNjg5ZmFhMjI0MGJiNDc3ZDE1MDhiYTI0MWYgbGVnYWN5LXRydW5rCisxMTAxOSAzYzQwNjNmMGE3OGZhZjI3NjY1Mzk3MmY3NjE3Zjk3OGI3NmNjOWMwIGxlZ2FjeS10cnVuaworMTEwMjAgMjEzNTg3YjNiOWQwYWY3MGU1ZWEyODYwZWMxYzA1YzNjMDRiYjlhMiBsZWdhY3ktdHJ1bmsKKzExMDIxIDUwOTlmNDRiYWYyNTVjMTk3Mzk3MzJjZjJiZTE4OGU3ZWY3ZjMyMWUgbGVnYWN5LXRydW5rCisxMTAyMiBmNGI2MzZkMTVhYmNkOTVjZDdiOGNjZDhlNDJmYzVjM2I5NTU0Y2FjIGxlZ2FjeS10cnVuaworMTEwMjMgY2YwZmFhZjNjMDRiNmRlYmQwNjM5YjAxMTE2YzMwOTA2OTAxNDU0MSBsZWdhY3ktdHJ1bmsKKzExMDI0IDVjMmYxOWQxOTY0M2EyODliYzc2ZGI4Mjg5Mzg5MTBiZTVkNGJmMjQgbGVnYWN5LXRydW5rCisxMTAyNSBlOTUxYmYyZDdkOTNiMjNiMDMyZGRkYWFhNDgwNTNjM2EwODE1NTE1IGxlZ2FjeS10cnVuaworMTEwMjYgMzVhMjE1MWZiMWMzZjYyNDc1YTI1YTUzYjcwMGVmMDYyODVhYzZiZSBsZWdhY3ktdHJ1bmsKKzExMDI3IGU2MzM5M2Y1MzY3MDIzNDgzOTIzNjc5ODVhOTQxMGQ0OGExMDlmOTEgbGVnYWN5LXRydW5rCisxMTAyOCBkYzhkYWE3NDhjNDA5MzQ1MWFjOGE1MmI2ZDBkYWU2ODAwN2IzNjFhIGxlZ2FjeS10cnVuaworMTEwMjkgZDg0ZjEyMDljYmE1Mjk5ODQ2OTM2NzdlZmEyZDQ4N2IzOTI2MDc1YyBsZWdhY3ktdHJ1bmsKKzExMDMwIGZhYzMzNzE2YTIxODM0ZjllNmY0OTU4NTQ0NTFhMGUxMTQ4ZDM5MTAgbGVnYWN5LXRydW5rCisxMTAzMSAxZWExOTViMTQyNDU5OTg0Y2Y5NTBhMTczODUyZGNhM2YzZjczMTFjIGxlZ2FjeS10cnVuaworMTEwMzIgMWU5ZDY1ZjljYTUzY2YzNzljNDAzMzA5NWYzZDYzMGYyNWI2ZDA5YSBsZWdhY3ktdHJ1bmsKKzExMDMzIDU4OWI2NDEzNWVlNjUxMjdmOWQ1MzVlM2UzYThmZjdlOTVmMGE5M2IgbGVnYWN5LXRydW5rCisxMTAzNCAyMmEwNzI0YzZiYWM1MWExYWIzZGMwYjAwYzI0YWRjNzM4NDgyZTg3IGxlZ2FjeS10cnVuaworMTEwMzUgNDM1N2I0ZWI1YzE5YTY2MTAzNDRlZmU5OTVjYzExN2NhNTkzOWU1MiBsZWdhY3ktdHJ1bmsKKzExMDM2IGQ3Y2U5YWUzNjJhOTA0MTgxZmUzNDViNDgzM2U4MWQxODZmMzIzNzEgbGVnYWN5LXRydW5rCisxMTAzNyBmNmQ4MjMzNGNlYjE1NmM2MDNlNGJkMmZiNDM0ZWFmZTEzNWZhZGY0IGxlZ2FjeS10cnVuaworMTEwMzggZDBlZWM5NmI0YzU2MjNkN2FlMGNmN2Y4MTg2OWYxNGQ3NDRiODhkNiBsZWdhY3ktdHJ1bmsKKzExMDM5IGIwMmM0M2EyMDFhZTVkZWMwMzFhOTE4Yzc5MGE3NzE3NGRkZjZlMmMgbGVnYWN5LXRydW5rCisxMTA0MCA4ZTYwZmYwNjQ2MDk5MzQ2ZDNhY2QxN2MxMGVhMjQyZTE3ZTc5ZTEyIGxlZ2FjeS10cnVuaworMTEwNDEgOTIyNjc4MzhmZWI5Y2FlNzJmYmVlNjkxYmMzOGQzNjIwZDUzZGNmOSBsZWdhY3ktdHJ1bmsKKzExMDQyIDQ2ZmQ2MzBkY2U2MzMxY2I1ODFlM2U2MDM1MmFiMTg2ZWUzZTg1MjggbGVnYWN5LXRydW5rCisxMTA0MyA4OTczZTcwODVjZjQ5Y2QzYzg2ODg5M2I4YmZmZjUwMjJmNGIxMWJmIGxlZ2FjeS10cnVuaworMTEwNDQgZmY5YWRiNTdiOGI1MWIyOTkzOGZmMjk2ZWJmNjU1ZTQ1ZWQzNzM1YiBsZWdhY3ktdHJ1bmsKKzExMDQ1IDQxOWVlOTVkZjJkODhmNWQ5MjA2N2FiNmQyZTRkNGRlNDFkM2JiYjEgbGVnYWN5LXRydW5rCisxMTA0NiBlODdkMjJjN2RlM2MzYzk4MzhiMmM2NWViZDhiOTA4NDMyN2VkZWIwIGxlZ2FjeS10cnVuaworMTEwNDcgMTllODAxNmNkMzhjZmU2Y2FiZWVmZGQzNjc0MjhkNzZmMWQyMjRjNyBsZWdhY3ktdHJ1bmsKKzExMDQ4IDZlOGIwZTc1NGE3ZjM3MDliMmQ0NGRkMTIwNGNiMjVjMzI3MmUzODEgbGVnYWN5LXRydW5rCisxMTA0OSBiYzg2MTlhZjA5MjNiZTE2ZjUyNWRkOGEyODYyMjBjZTc4Nzg0MTc5IGxlZ2FjeS10cnVuaworMTEwNTAgODcxNjgxNmUwODU5NGY0MDg5NjFiZGE0NzU1NjgwN2M4YTdlYWQ1MyBsZWdhY3ktdHJ1bmsKKzExMDUxIDQ1MDA3NjA2OGIyMmFlZTRkNGU0M2NjYTM3ZjY0NzVjYTFhZGZmNjggbGVnYWN5LXRydW5rCisxMTA1MiBiZDY5NWRlMThlY2YyM2FkY2JiNWIyZTk3ZmMxNDdiOTk3ODA5ZDU5IGxlZ2FjeS10cnVuaworMTEwNTMgNjdhYTk5N2ZiYjBlMTRiMjEzNzIzMjQ1MTUxYjI1NWVkMjZhMWFiZiBsZWdhY3ktdHJ1bmsKKzExMDU0IGVhOGYwZjVhYjAxNTdlOWNhZTliODc4YzRjNmMwYzFmZDQyN2MxM2UgbGVnYWN5LXRydW5rCisxMTA1NSA2MDUxZjJlNDM1MTc2OThmNDU0MmZlYWM5NGU0ZTg2ZmQxMmNhNzIzIGxlZ2FjeS10cnVuaworMTEwNTYgMTEwZTk3MzM5NzQwZWI0NWY2ZjljOWFiNjE4YTEzYjc3NjJjOGJjOSBsZWdhY3ktdHJ1bmsKKzExMDU3IDk0Y2U3NWY0MzQ1MmY5ZGI1NmYzNjY4ZTFkODVkMTY4NmNmZDJmZDIgbGVnYWN5LXRydW5rCisxMTA1OCBhMzM5MjU0NWQ4NjUyYzhhY2MxZWY2MWVkOTZkYjk2NmQxYzU3MjdlIGxlZ2FjeS10cnVuaworMTEwNTkgZjBmYWFkOGQ1OTM3Y2UzZDlhODUzM2FkZmRjMTZlMTU1NzNjMjU2ZCBsZWdhY3ktdHJ1bmsKKzExMDYwIDJiMDQxMTA1OTYzMDIzYWZlMzVhZjVkNThiMzRlM2Y3YzhhZWFjYWMgbGVnYWN5LXRydW5rCisxMTA2MSBiMWIzNWY1MGYzZmE2YTQwZGQ3MTRhNjNhNGUxZWJjZmY2MTU5ZDg2IGxlZ2FjeS10cnVuaworMTEwNjIgMWNhNjg5NTAyNGQ5ZmVlYjhjY2VmN2NiNTYxOTJkMGY2MjBjM2QwNSBsZWdhY3ktdHJ1bmsKKzExMDYzIDIyMTY2N2Y4OTA2NDg2YzA5NWRiOTUzMmY4M2M3N2FlMWY3YzMzYWMgbGVnYWN5LXRydW5rCisxMTA2NCBjMzQ5NzAyNjUyMGQ3YTA4N2NlNWU0OGM5ZWRiMDJlZDIwNmE1NTVmIGxlZ2FjeS10cnVuaworMTEwNjUgZThhZGViNWNkMmZiN2I3OTcwYmVmMDQyMjg5ZGQ5MmEyYmNlNjhhZCBsZWdhY3ktdHJ1bmsKKzExMDY2IGNiN2ZjZmI1NjI3NTRjN2EzNmE5YTBjNjQ4ODM2ZmVkNWYxMjBkZTEgbGVnYWN5LXRydW5rCisxMTA2NyAxZTVlOWRjNmY5OTM5NDg0YzZlYzEyMWI0MjRiN2QxMjY2ZmQwYTg3IGxlZ2FjeS10cnVuaworMTEwNjggYmRmZWY4ZTczNDU3MjMwOTlkNDQxMGUxNzI0YzAwN2Q4ZWZlMWM2MSBsZWdhY3ktdHJ1bmsKKzExMDY5IDE1ODFjOTMxY2IzNWE2NTQ4YjU3NWE3ZTIxYzYxMjYyZjQ2MDY0ODUgbGVnYWN5LXRydW5rCisxMTA3MCA3NGExMDBjYjdhNjQzYjUxYzkyYjc4NzJlMjAwYWIxMzM1N2IxYzE4IGxlZ2FjeS10cnVuaworMTEwNzEgOTdkYzZhYTUzMmU3MjE0ZDRlMDI5ZmZjMGU5YTMwNzY4NzdiOWE1YiBsZWdhY3ktdHJ1bmsKKzExMDcyIGUxZmUzMGYzMjViOTkxNWQyMGE2ODc3NWRkMWQyZjEwYTQ4NTE3MGIgbGVnYWN5LXRydW5rCisxMTA3MyAyZjQzYjYxYTk4ZGY1YWUxOWYyZWE3YTM2ZjY5NTAzZGUwNTRlMGQwIGxlZ2FjeS10cnVuaworMTEwNzQgZWNmMGQ1MTUyOWFjNTlkNTM0YzFlMjUwZTc0MDA1NGU2OTQ5ZmI4OSBsZWdhY3ktdHJ1bmsKKzExMDc1IGZkMWY0ZWUxYjMyYTYxM2Q1ZjM3YjU4MDZjMWJmODNkNDFmYTAwN2UgbGVnYWN5LXRydW5rCisxMTA3NiA1ZDc3N2JlYTU0MzUxN2NkZGNlY2YyYmQwYjJmYzcyZjU4MDE1OTA5IGxlZ2FjeS10cnVuaworMTEwNzcgNjM1YzNkOTRhOTQ4MjE1OTQ0NTkyMDI4OTljMWI4OGQ4MTgwYWQ5ZCBsZWdhY3ktdHJ1bmsKKzExMDc4IDEyNWYyMWZkZThjNDA2NTVlMTdjODJiYTA3MTFhMGEzNDNmZTYzMWMgbGVnYWN5LXRydW5rCisxMTA3OSA3YmM3MTQxNDRiOThkODRmZjhiZjIzMWM3NGZlMDQxM2Y4MzhhZGM5IGxlZ2FjeS10cnVuaworMTEwODAgZWFiYjgzODFiZmM3NGFlZDhlMDk3MjIwYzM0NTUxOTRmYjlmYTk5OSBsZWdhY3ktdHJ1bmsKKzExMDgxIGQ0YTY4OGNjYjkzNzAxYzMxYjIyYmYyYWE4MmY1OWJhYTg4NTE1MTcgbGVnYWN5LXRydW5rCisxMTA4MiAyODM2MDJmMzAwNDMyNDFkMWM0ZjUxNjEwYjVjMjgwOTc3ZGU3MDI4IGxlZ2FjeS10cnVuaworMTEwODMgMDE5OGIyZjZiMWM4M2JiNTYyNWQxZjE3Njk3MDQ0NTJjMWU5Njg1OSBsZWdhY3ktdHJ1bmsKKzExMDg0IGNlMzYyYjliYTgzNjFmZTc1ZjVmZDA2ZDk3ZmJkMDgxMGYxOTlmNDkgbGVnYWN5LXRydW5rCisxMTA4NSBjMDQ0OTc3MTQ4ZTkwNGRjYTQxYzE4NGQ5ZjkxOTk1YmI1NDk2YmFiIGxlZ2FjeS10cnVuaworMTEwODYgZDFmMzkyY2RmY2VhNmQ3ZmMzNWUxYzQ3ZDkzZTdkMmM3MDYxMWY1NiBsZWdhY3ktdHJ1bmsKKzExMDg3IDNjOTZmYzg0NmI4OGJhM2ExOTQ0NWZkYTJjY2I2Y2UzZjk2NzgyMjIgbGVnYWN5LXRydW5rCisxMTA4OCBlMDE3MzcxYjdlZDFiMzJkYzY1NzQ1NGMwODAwZWI4MmNmMzE5MjA4IGxlZ2FjeS10cnVuaworMTEwODkgY2MwZmRlNGRkZjQ0ZWFlNWVhMmFkNmFjOGY4YTcwZTY3NzllYmFlOSBsZWdhY3ktdHJ1bmsKKzExMDkwIDQ1ZjlkZmZkYmEzZGMwOTMzY2UyYTFmZmIyZjdmMWE3OWM2OTVmNDcgbGVnYWN5LXRydW5rCisxMTA5MSBjZTI5NWJmYWNlZjM3Y2E2M2RhMzgyYjM3ZWE0NTExYTM4OTQxNWQxIGxlZ2FjeS10cnVuaworMTEwOTIgNjZmMDU0MDY1NmEwZTRhNjFmMTVmMWUzZThjZDAzYzdkZTNjNjAzMSBsZWdhY3ktdHJ1bmsKKzExMDkzIDA0ZDU5ODczNzBkZTJlZWVjMDg5NzAxOGVmYTQwMjc0NWMyNGYzMmEgbGVnYWN5LXRydW5rCisxMTA5NCAxYmJmYjkxZjhlODg2ZjI3YjdkMDNlODY5ODEwNmQ1YWExYmY3ODc3IGxlZ2FjeS10cnVuaworMTEwOTUgZTNkM2JiYmQ5M2YzNGMzYzE4ZTM1ZmE2ZjcwOGY3ZjdmYWFkODU4ZiBsZWdhY3ktdHJ1bmsKKzExMDk2IDY0ZjBjMzE4OGU3MDdhZTE1Y2FhZDczYTYwMzI4ZDA0OTM5MDI3MTIgbGVnYWN5LXRydW5rCisxMTA5NyBlNzgyMmI2NGEzM2QzZDNlY2JmMzMyOTZiMzgxOGRkZTU3MmE4MzI3IGxlZ2FjeS10cnVuaworMTEwOTggMjQxN2YxN2ZhM2U1ZmQyYzgwZDViYjdhY2MxOGFjYzA3YjViZjQyOCBsZWdhY3ktdHJ1bmsKKzExMDk5IDQ2YjQ3MmVjYjBmOTBhNTE4YTBlY2ZkZDBjNTczN2E2ZTA1M2U5YTkgbGVnYWN5LXRydW5rCisxMTEwMCBhODA3NTUzMWUyMGQ2MGJhMTJkMzM3NjljMWVhYzMzY2UyNGMyYmFlIGxlZ2FjeS10cnVuaworMTExMDEgNmVkNTAzZDljM2Q1MmNhNmJkZDA5N2IyZjE0N2I0NzFkYjU4MDRhNSBsZWdhY3ktdHJ1bmsKKzExMTAyIDBhM2M4YzIzZTFkYTJhNDkwZWM0ZGE4N2ZkMWYzMzhkZTEzZjk1YTYgbGVnYWN5LXRydW5rCisxMTEwMyA5Zjg0YjkxOTk1MmU1ZGM0ZmY0MGE5ZjgxZGQ2ZDFmYzQ3N2VjMTllIGxlZ2FjeS10cnVuaworMTExMDQgZjA1Nzc1MWNlZjYxOWM3Mzk1YmU3ZjBmYWQ0OTUyNzE2ZjQ2MzM4MCBsZWdhY3ktdHJ1bmsKKzExMTA1IGJkYTVhYzlmNjRlOTRlYmJlMzRiMGM1ZmQ3NzU1MTNjODEzZjk0M2IgbGVnYWN5LXRydW5rCisxMTEwNiAzNzFjMzEyNzY3Y2M5NjA4M2JmMzFmN2U4OWFkYTI0MzkyMGZiNmYxIGxlZ2FjeS10cnVuaworMTExMDcgNTFkY2JmOGEwYjkyYWI2MGRlMDViOGNhZWQyMjlhZGE5ZWI4NjI2OSBsZWdhY3ktdHJ1bmsKKzExMTA4IDI2ZjQ4MmQxNjE0MGJmZDQ2YjgyNTY2MWI1NmM3MDEyNDg2NTU0M2EgbGVnYWN5LXRydW5rCisxMTEwOSA2ZWQyY2MyNzkzNDZmZDcxMDRmOTEyMzYyMWZkZGQyMGM5NjAzN2VkIGxlZ2FjeS10cnVuaworMTExMTAgYWVhNjg0MWFiODk4ZDBiYTJlNTE5MzUwYTg2ZGNjYmZlN2JhYmY4OCBsZWdhY3ktdHJ1bmsKKzExMTExIDIzOTQ5MmIzNGY2ODJkNWNjYWRkYWQ5YmZjZWUxYjg4NjIxOThjNGIgbGVnYWN5LXRydW5rCisxMTExMiBhOTM5ZDRlMTRhOGQzMjQ1MGRlNjdkYWM1YjY0YjhhOWY2M2Q5OTdhIGxlZ2FjeS10cnVuaworMTExMTMgZDg2NzMzNjc2ODE1ODE1MjNjNGEyZTE0ZDk1YzM5N2Q1OTM3OTMyMiBsZWdhY3ktdHJ1bmsKKzExMTE0IDZkNzVhNDQzNDdhMjAyMTUyYmVlMzJlYmMzNmI5M2Q5M2M2NmNlMWYgbGVnYWN5LXRydW5rCisxMTExNSBjY2RlYmI1ZWQzM2EzOWIyYjI0MGU0M2QyMzhkNjMxNGYzMmY1ZjZiIGxlZ2FjeS10cnVuaworMTExMTYgMTE3MTM4MWZhMDFjOGE3NTBjMzIzNWJkZGU5OTNiYTkzNzc3ZjU1NiBsZWdhY3ktdHJ1bmsKKzExMTE3IDU3OThjZTNiZmYzNTRhMmUzZWJjNTE4NjU2MDE1NDc0MGM3Y2NjOTYgbGVnYWN5LXRydW5rCisxMTExOCBkY2VjOTgzNTc2ZDUxNGZjM2ZjMmIyMThmNWZmNzEyYTY4NzQ2MmFmIGxlZ2FjeS10cnVuaworMTExMTkgOWYxZTk1Y2RmYTE3MzE0NWVmOWNhZGE4NTdlN2I3ZmY4NDAwN2ZlMiBsZWdhY3ktdHJ1bmsKKzExMTIwIDFlMTIwYTVkMmU5MzQ1NDVlZGJiNjM2MGJhNjcxOWExNmQ4NzhlZjQgbGVnYWN5LXRydW5rCisxMTEyMSAwMjdhMWRhZDEzNTMyZmI2OTBiZjJjODIxZDg0YmU2ODFjYjcwMjk2IGxlZ2FjeS10cnVuaworMTExMjIgOGU4NmE3OTdlNTk2YzhjOWIxMGFjYjk5YzU5NmVhY2VlZDVhNTJiNyBsZWdhY3ktdHJ1bmsKKzExMTIzIGI0ODBlNmVkYmMwN2JkZjY5Mzg0ZTdiYTc0YzljMzg2NTYyNGNmMWQgbGVnYWN5LXRydW5rCisxMTEyNCAyYmZiMTIzNTViMTAyYTliNjI0NjlkZTVhOWI3ZTRhZTIxODFkZjlhIGxlZ2FjeS10cnVuaworMTExMjUgZDQ5Y2JlYzU5Mzk1YzI4ZGNlMmEzOGQ1M2JkMzEwMTIxM2RkZjQ4OSBsZWdhY3ktdHJ1bmsKKzExMTI2IDlhZTkxZTkzMDdlMGFlY2M1NjhjNTk3ZGY5YTVhMGNhZDlkNGUzMTEgbGVnYWN5LXRydW5rCisxMTEyNyBhZTBiNmMxYzllOGQ2YTNkZmIyMjM0M2ExYzIxNzQ2NjViZGIwOWI4IGxlZ2FjeS10cnVuaworMTExMjggZTgzYjM1M2QwYTFjZGFhZTg0Nzc5ZjRhOTk2NGQ4NWMxYjdhMjc3ZCBsZWdhY3ktdHJ1bmsKKzExMTI5IGEyYmVhZWRmMGFlZWYwYjY5NDUyNWVkZTk0ODAzOTM1MzNhNjIyYzEgbGVnYWN5LXRydW5rCisxMTEzMCA3NzUxODgxNDBmZTFmYWJkYzVmMTYxNTM1MWMzMGZlYjZiMDE1Njg0IGxlZ2FjeS10cnVuaworMTExMzEgOWFmOTVkNzI3MGRmZWY1NWNjNmFmNzhiMTdhNmU3ZDRiYWMyODQ0NiBsZWdhY3ktdHJ1bmsKKzExMTMyIDNiZTkwNjQ2Nzc0MDk1YTNmMWI2MzIxNGVhOTdiNDJmNmM2NDdlYWYgbGVnYWN5LXRydW5rCisxMTEzMyA0YmE5YjcwY2E1NmUyNGY2M2E0OWQ3NmE1YzEyY2MxYjVmNWQzNThkIGxlZ2FjeS10cnVuaworMTExMzQgOTdhMTEwOGIwZWIyODE1OTExMTQ0NDYyNDc1YTljOWEzMGQ1YjI1ZCBsZWdhY3ktdHJ1bmsKKzExMTM1IDJlYjljMjFjMjJmN2U5NTE1NWVlN2RmMjUyMWYwZmZkNWE5NmRjMTIgbGVnYWN5LXRydW5rCisxMTEzNiA3ZDRhMzg2YmVkM2ZjNTM5MmRmYWU4MmUwNGE1ZWNlZDRiMGMzMzhhIGxlZ2FjeS10cnVuaworMTExMzcgZWQwYTM4Y2JjM2U2M2Q3MjhmODBlYjNjOGE4ODIwNmFmYjc2N2NkNCBsZWdhY3ktdHJ1bmsKKzExMTM4IDllNTM2ZGQzZGM5N2YzOTk1N2E0MTllY2Y1MGUyOTEyMTY1YmQwMTMgbGVnYWN5LXRydW5rCisxMTEzOSBhYzQzZTIyNDY2OTViZWM3ZWViNTYzZDVhMTI3NzNhNDlmN2QzODU5IGxlZ2FjeS10cnVuaworMTExNDAgMWU5M2ZhMDIxNDA1NGI5NWNkMzIzNDRlOWUwN2I2NzNkM2FiZTgwZSBsZWdhY3ktdHJ1bmsKKzExMTQxIGNlNTRiNTQ0OGM4NWQ3NWFhNjExYzUyMzgxMDBlMzJmMWE5ZDIyM2EgbGVnYWN5LXRydW5rCisxMTE0MiBkZTc1OWFjYTEwYjI1Mjg5YmZmZDBjNTM1ZmJlZjk3OGVmOTUwNmY4IGxlZ2FjeS10cnVuaworMTExNDMgMzBmYmYxOGFmMjllOGFjOTVjZDc1MTkzMDYyMTAzYTcxYmRhNGYxZSBsZWdhY3ktdHJ1bmsKKzExMTQ0IDc0ZjM4NWVlNDRjYmJlZjgzMThkZGE2MzE5ZjAxOTNhZjU0ZWExMjUgbGVnYWN5LXRydW5rCisxMTE0NSAyZmRkZTc4NGQ4NDlhZTExMTNiY2UzOTI3ZGFmNDkzNjMyYWU3YzUyIGxlZ2FjeS10cnVuaworMTExNDYgODU2OGFhNDk0NGEwMWYxYTlhOTkwNTlkNDFjYWZjODVjNDNmM2RhYyBsZWdhY3ktdHJ1bmsKKzExMTQ3IGY1OTQ3NzhhNTZhZjk1NDVmMmQzYWJkOTRjYTQ2ZDk5MmM3ODZkYjcgbGVnYWN5LXRydW5rCisxMTE0OCA2MjQ1YjgxOWJkZDg1YzIxNWJjNzQ2OGViNmU1NzFkYjExNmJmODRhIGxlZ2FjeS10cnVuaworMTExNDkgM2FkMWJmZmJkYWViNDIwNTkxNjAwNDRiOWI3MGNmMDNhODI1MGQ2NiBsZWdhY3ktdHJ1bmsKKzExMTUwIDgyODExYzZjYjU4ZjViYjI5OGJlZTdmN2ZiNTFjMTI2M2I5MWE2OTcgbGVnYWN5LXRydW5rCisxMTE1MSAyYjJmZjVhODEzOTFhMjY0MDIxOGM4Y2QzMmUzMGMxN2RmNTY0NTA0IGxlZ2FjeS10cnVuaworMTExNTIgMDdlNDczNzBmY2I4YjliZDkyMTQyZDdiZTM1ZWEwYjM0NWEzM2ZjMyBsZWdhY3ktdHJ1bmsKKzExMTUzIDc0NDRmZTM4ZWFkYmQ0ZDk2NWMwMjg4YzczMDQyZWI4NTkzMjRhZGMgbGVnYWN5LXRydW5rCisxMTE1NCBiMWYxYmE0MjliNzNmMDJjMjIwODk1MTQwMTYwMjJlYjViMWI3MjI5IGxlZ2FjeS10cnVuaworMTExNTUgNWE4ZDljZTkwNjMyYjhkNGIwNzZmMmZiZjU1ZjU0MzQ3OTkyMmEwNyBsZWdhY3ktdHJ1bmsKKzExMTU2IGQ2ZjRlNDFiMmM2YWU4NzdiMDk3MDc1Y2NmZGJlZmUxMjZlYjYxY2IgbGVnYWN5LXRydW5rCisxMTE1NyA0NjllOGY0NTMzNjVhMzlmY2VhMjNmZWI3ZThjMDY2NTI4NTllNDg0IGxlZ2FjeS10cnVuaworMTExNTggN2Q5Njg0MjM4M2JiYTlkMTFhNTA5NjczZGI4YzA1NTBhNjJkZjA4MCBsZWdhY3ktdHJ1bmsKKzExMTU5IDYxNzA2ODNlOThlM2IyN2ZjOTY4ZjM5YmM2NGNmZGM5OTk4NGEzNDcgbGVnYWN5LXRydW5rCisxMTE2MCA0OGJjNDcwMzU4ODE1YTE4ZmZiZDk5NjBiNDk3NDQ5MDUxN2IzZjA0IGxlZ2FjeS10cnVuaworMTExNjEgYmE3NDQ0NjJlOTU4MzFkMjgxOWFhMGYzZDc4MmUxMDRmODYwYmUxNCBsZWdhY3ktdHJ1bmsKKzExMTYyIDQ2OGRiMmI3MTBmZDgyMzIwMDY3NzVlYjhhZDhiZjFiOWYwNzcxMDMgbGVnYWN5LXRydW5rCisxMTE2MyBjZTFlNTkxYjMxMjYzODQwYmE1YjVjYmM5YThkMmM3NWYzODE1NzM3IGxlZ2FjeS10cnVuaworMTExNjQgNmVkNzE1OGZmMjdjY2U0Nzc4MWYxMzllYjRkMGM4NGU2OGJhNjBjZiBsZWdhY3ktdHJ1bmsKKzExMTY1IGEwMzI0YTMwNjhlOTUzOWI1YjE0Njk5N2Y5MDA0OGVkODgyMWYxNGQgbGVnYWN5LXRydW5rCisxMTE2NiAxMDA0NDVhZTQ1ZTM2YmQ5MWFlMWFhOTFjZDg1ZWM3YTFkYzQzMDI0IGxlZ2FjeS10cnVuaworMTExNjcgNzgxNzMxOGVjZDNhMmY2OTk3MGFlMGViMDE4MWZiNmY3ZGM1MmFkZCBsZWdhY3ktdHJ1bmsKKzExMTY4IDU1MmU0MmU0MTcwZWU3MTg0ZmFlM2ZjY2YzYWIyZDU4OTFjOWMzNDMgbGVnYWN5LXRydW5rCisxMTE2OSBmZDQ5ZWQ2NWNkMjBiMjAyZWFhNzZhYzhlZmRjNjczNzU2NjQyYzYwIGxlZ2FjeS10cnVuaworMTExNzAgYTM3MjZmZTM0ZDU4ZWMwNDc2NjZlMjlhZWMxMWQxZTAyNDJmZDE4NSBsZWdhY3ktdHJ1bmsKKzExMTcxIGRlNTQwMTY2ZDczMjhjZjU0MzEwYTgyNWNhNzIzOWNjODU5MzJhYzUgbGVnYWN5LXRydW5rCisxMTE3MiBhMDQ3N2JjODIwYjI3MmRmMTcyMTJlM2NlODI2MmVhMzQwOTIwZjI5IGxlZ2FjeS10cnVuaworMTExNzMgMzVlMWExNDBmZTRlMjAwNmM2MDM1MzBmZTc2YWJhOGM1NDhkYjkxNyBsZWdhY3ktdHJ1bmsKKzExMTc0IGM5NTE0ZWIxZmMwNjI3YWMyOTYzY2VmNzE3ZjIwYmI2ZDRhOWJjZTMgbGVnYWN5LXRydW5rCisxMTE3NSA4YWE5ZDEyNmU0NzMzMDcwMDY5NmQ0NzhlMzM0YmUwMDM0Y2Q0MDIzIGxlZ2FjeS10cnVuaworMTExNzYgZjQxNTgwYjRlZWExNTQyN2ZlMjZiNzgxMjlkOTVmODM3Mzc2ZmE2ZiBsZWdhY3ktdHJ1bmsKKzExMTc3IDZkMjE2OGE5NjQxZmU3NTM3N2E1MjU2NTI0MDcyMThlMGEwZTQzMWEgbGVnYWN5LXRydW5rCisxMTE3OCBmN2I0ZGIwYzViMDhkNTdlNGQzNzg2NjliMTM5Y2IxODdhODBmZTBlIGxlZ2FjeS10cnVuaworMTExNzkgZGM4NTgwNGMyYzY0NTY4OWViYjA1NmYwYWRlYTM5NWVmZDQzODgwOSBsZWdhY3ktdHJ1bmsKKzExMTgwIDdkMTQ3N2NkYTgzZDM3ZWFmNzYwZGM1N2IxNWFjNjI0ZWEwN2JjYmMgbGVnYWN5LXRydW5rCisxMTE4MSBmMTBiNDY5Yzk4MTA1NGVhNWMzMTc0NGNjNWM4YjUyYTY5ZDFkY2VhIGxlZ2FjeS10cnVuaworMTExODIgOTVmMzI0MjcyZjU0OTZjMTM5ZTc4MWVjODAzNzdkOTgwNWMxNTRmMiBsZWdhY3ktdHJ1bmsKKzExMTgzIDc4MjE0ZThjOWViNDkwOGE1YTA3ZTJmNTFjM2UwOWVjMThiYTVhZDAgbGVnYWN5LXRydW5rCisxMTE4NCAyZjI5MDU2MDI2M2ZiMGRjZmM2NzRjN2VjNzVkMTYxN2JiZDg0ZGNmIGxlZ2FjeS10cnVuaworMTExODUgNTA3NTc0NjVmYTcwZGVjZGVhM2E3NGM0MTI4ZTc2ZDRiMWVkYmJhNSBsZWdhY3ktdHJ1bmsKKzExMTg2IDgzYzhhZGFhMDg0ZjY4MThmYmJhM2M2NDI3MDMxY2Y5ZDJjZmNmMDQgbGVnYWN5LXRydW5rCisxMTE4NyA4NTcxYzEyNDZmMDkzZDM5NTk2ZTU3MTFlNTM0YjI1MTczZDcyYmRmIGxlZ2FjeS10cnVuaworMTExODggY2ExYzY2OWJiMDQxNjljYTZmNDgzMGQxN2E5YjlhNDg1NmQ0M2E5OCBsZWdhY3ktdHJ1bmsKKzExMTg5IDRlZGYzNDk1YzY5Mjc2YjE4YTE5MTA1NWZkZGRlN2Q1MWI5MWI4NTcgbGVnYWN5LXRydW5rCisxMTE5MCBhY2Y0OWM5ZGVmN2RkYjU0MjUxZGNiMGI0NGNhOGY0ODJkOGFiOTIzIGxlZ2FjeS10cnVuaworMTExOTEgMGUyNTYzYzBlYjBkNGE2YjhmZjY3MWFmNGQ4NjY3ZjBiMDQ3ZWYyMyBsZWdhY3ktdHJ1bmsKKzExMTkyIDIwODQyN2FiNzU2NDViMTM1NWFmYjVkYjg1MWVlYTBiNGUwOTdjYzUgbGVnYWN5LXRydW5rCisxMTE5MyBhZTZiNDFkYzY1MjAxNmFiYTk4NGI5YzhhYTEzYTg0MDhkYjcyMDc0IGxlZ2FjeS10cnVuaworMTExOTQgNzk4M2Q4NmI0OGFmNzMyNjE1ZWZiOTJkZDUwMDAzMDNmYzk1NWE1MiBsZWdhY3ktdHJ1bmsKKzExMTk1IGVkOGY0ZTJlYjExYTFhYTc4YThiMmM5NGRmOWQ3MTVlMTAzOTc2N2QgbGVnYWN5LXRydW5rCisxMTE5NiA5NzMxZDhhNmI0ZjNkZjQ5ZmY0N2RjM2U2ZDdiMjliYzhkM2M2NTc1IGxlZ2FjeS10cnVuaworMTExOTcgYzc1MGM3YTIxZTAzNzg4NGNlZjU1NDMwMzA3MjljNjVmNjA2OGQ2NyBsZWdhY3ktdHJ1bmsKKzExMTk4IDc2MGRjZjE5NzA0ODEyNjhiMzMxY2E2NDcwYThlYTNhY2MxMWViNmUgbGVnYWN5LXRydW5rCisxMTE5OSA5NDZkNjM5NzdmYTQxMWQ1ZjA4MDM5MjFkYzI3Zjg0YjI2MzU0MTQ3IGxlZ2FjeS10cnVuaworMTEyMDAgMDI4ZWFmYmNlOGFjNzIxZDRhMzIwNjk5NTNhYzJlM2Q4NzUyZjRjMSBsZWdhY3ktdHJ1bmsKKzExMjAxIDgxNzVjNmUxZTYxMzFhOTU0NWQ1YjQxMGUzYTFmYmVhMDZmNDMyNGUgbGVnYWN5LXRydW5rCisxMTIwMiBlMGQwNDc0ODQ5ODAwOTc5ZjA4YjY4NTk2ODczNjM3ZjMxMTVjY2QzIGxlZ2FjeS10cnVuaworMTEyMDMgZDdjYTQyOWVmMWFiNWZiYTkyMzk0ZTE1OGU2ODEzMzJkMzViZWIzNyBsZWdhY3ktdHJ1bmsKKzExMjA0IDhhMjk0NzZhNTljNTQzODgzYzMxNjY3MWIyMDRkZDlmMDFjYzFiM2QgbGVnYWN5LXRydW5rCisxMTIwNSA2Nzk0Mjk0ZWIwMTQ5ZTk2ZTY3ZDE0NjBlZWM0MzMxOGU5MjYxM2YzIGxlZ2FjeS10cnVuaworMTEyMDYgNWQ2YmY2MGNiNzM2ZDFlMzVjNDYyNjU0YTU0M2ViYTVlYmFhNGZkMiBsZWdhY3ktdHJ1bmsKKzExMjA3IGY3OTc2ZTAyYjg3MzQzMjczZTQyYjQwMmQzY2I2ODZiYWYzNzZlOTIgbGVnYWN5LXRydW5rCisxMTIwOCA3NGVhNGRmZGE4MmQyNDFmNmQwOThmZjY1MWExNDNjZGI1ODJiNDBhIGxlZ2FjeS10cnVuaworMTEyMDkgNTNiNTJhMzNkNGJhNjQwZGM1OTcxOTk2MGVhYjcyNmJlZDI0YjY2YSBsZWdhY3ktdHJ1bmsKKzExMjEwIGQ1ZjQ4NTFlNzYxMTNiZTI1OWFhNGYyNmY2NDY2NTlkMDgzZWY0NjQgbGVnYWN5LXRydW5rCisxMTIxMSAxOTA3ZDEwYTIzMjhlZTA5ZjVmOWFhOGQzMTM5YWZjZDQ3NzUzYzQzIGxlZ2FjeS10cnVuaworMTEyMTIgOGEzMDZkZmQ5ZjMzM2UwNTI5ODVhYWFkMDM0ZGFlNjQ2ODc3ZTdmZCBsZWdhY3ktdHJ1bmsKKzExMjEzIDc1MTM3Y2ZlZDk1NGY3OTY0NGJlOWJlOTA0MjU2NGY0YTZkNTI5MzIgbGVnYWN5LXRydW5rCisxMTIxNCBhODA0MGI5NDE4NjQ5ZDlmM2VjYjFhOTMzYTFiYjFiMDdjMWQwZDRkIGxlZ2FjeS10cnVuaworMTEyMTUgYWVhZmFmMzgyYTRiZWM0ZGQ3MWQwMzdjZjU4YWQwNTc2MjZhODAxYiBsZWdhY3ktdHJ1bmsKKzExMjE2IGRkYWFjMDZlYzMyNjZmNTM5OGEzZWI3YWY3YjI3NDkzMzQxYzVkYmMgbGVnYWN5LXRydW5rCisxMTIxNyA4MDc3NmVhYmQwMDVmYmI4MTVkNjQyM2NmMTU4MjhhYmMwODkyZWMzIGxlZ2FjeS10cnVuaworMTEyMTggNmMyMGNhNzIzMTgwNDc4N2FmZTY4NjQ4NzdhMTEwZjI2Mjc2YWQ5OCBsZWdhY3ktdHJ1bmsKKzExMjE5IDhkMDU0OTU0NzA4YTJmMDUwYjk0YjJmMWU4ZTk1ZjFkODc0OTI2ZTYgbGVnYWN5LXRydW5rCisxMTIyMCA3ODFhZDMyZTdiMWZmM2M1ZDZmMzk0ZWEzNmVjZjFhMjk3NmUyYWE0IGxlZ2FjeS10cnVuaworMTEyMjEgMWYwMjBmNzk5NjdkOTk1OGQwOGMxZjZmNjgyMTUzZmE5MWRlMDY1OSBsZWdhY3ktdHJ1bmsKKzExMjIyIDc0ZTAzMTNjZDgxMGUzNDVmMDVlMjNmYmVlMjAwODM3ZWZkMTQwYjYgbGVnYWN5LXRydW5rCisxMTIyMyA0MzQ2NGIxYzg4MGVhOTZmMmU3ODA4YmVlYWIwNTI0ODFkYjZkNTVjIGxlZ2FjeS10cnVuaworMTEyMjQgNzNhZmU3N2EzOTQ3YmYyZWEyMjAyMmQ3ZmMwZjQ5MWM3NzIyMWZhZCBsZWdhY3ktdHJ1bmsKKzExMjI1IDJhMzBhODE4OTRhZTBjYzQ5YWIzMmMzN2U1MDJmNzc4NTgyZjY3YjUgbGVnYWN5LXRydW5rCisxMTIyNiAxZDU4MWE2ZGZlZWUxMTY5MTU4NWUzMjhlZGEwYmNhNDA2MmIyY2I2IGxlZ2FjeS10cnVuaworMTEyMjcgZTFiY2YwYmQzNGQ1OTMzOThmNmY1MmFlNjY4M2Q0YzM1YjcyNWJkYSBsZWdhY3ktdHJ1bmsKKzExMjI4IGNhMWI5MDYxNDllNjIwOWM4NTM1OTkzZDQ3NmFmZTQ5ZTZhZTc1MTcgbGVnYWN5LXRydW5rCisxMTIyOSBjZDk5NTIwMzIwYTMxZmQwYmE0NWJiOWQ3Yzc1ZDQyYzYxODEzYmMzIGxlZ2FjeS10cnVuaworMTEyMzAgZWFiZTU3NGRjOTIxYTkxMGI5MDdmZmM4ZTA1NDI5ZTFjZWE5MTdkMiBsZWdhY3ktdHJ1bmsKKzExMjMxIGQ4NGMxMTNlZmVkYmY1YTQ0NTQ4ZTI5MmU5MGNiZWRhNDY4ZWMzNTQgbGVnYWN5LXRydW5rCisxMTIzMiA1ZWM4OTc5YmYxNzY4NTQ3ZTM4YzY2NWRkNDBjNTcwYjJkM2UwNWMyIGxlZ2FjeS10cnVuaworMTEyMzMgOTk3OTMzMDJkMTBkM2UxYWUyZjkxMTE0ZDhhZmMwM2UwNjY4MmVjMyBsZWdhY3ktdHJ1bmsKKzExMjM0IDRlMDVlMzg0NDVjZWIzN2I4NDZkZjlkOTNlODg4Mzc5ZDVlMDY2ZTcgbGVnYWN5LXRydW5rCisxMTIzNSA5ZTA4OTA3MGQ0YzVkMGU4MjRiYWQ4NWY1N2RhNzkyMTc4NTI2NDdkIGxlZ2FjeS10cnVuaworMTEyMzYgZTg4ZDRlNmU0NjIyYjQzODFmNzJjMGY3ZmY0ZWQzNDM4ZDJhY2E4OSBsZWdhY3ktdHJ1bmsKKzExMjM3IDcwMWE4NWIwNDRiMzQ1ZjUwZWZjNjY3ODA2ZDM4YWNjYjY3NmFiNDQgbGVnYWN5LXRydW5rCisxMTIzOCBmYmE4NDU1ZGNiNTRjNDBlMGNhMjIyZDU2MzQ4M2EzNDI3ZjU4NDQ1IGxlZ2FjeS10cnVuaworMTEyMzkgYjhhNzE5YzhhMGE2MDE3YTBlNDBjM2Y3ZmQzN2ZjODgxMDJlZjViZCBsZWdhY3ktdHJ1bmsKKzExMjQwIDY4ZmU2Mzc1MGY4NGY1MGZlZWQ5YzUzYjEzZTU4ZDQ4YjQyYzg4ZTUgbGVnYWN5LXRydW5rCisxMTI0MSA0YWMyZDQzNWNlM2JiNWJmNWJlYzliZDM0OWIxYzc2YTI1YTRhYjc0IGxlZ2FjeS10cnVuaworMTEyNDIgMmIyZWY4MmVkYjVlYjczNGUxMTY0NjIxMTQ2OTYzNjhlYTU4YjgwMiBsZWdhY3ktdHJ1bmsKKzExMjQzIDg2MWNkMjI3ODM0OGE4MzI5YTQ4YTYwNGYwN2VlNWZjMzgwMzQwYmEgbGVnYWN5LXRydW5rCisxMTI0NCA0MTkyYTczY2E0MzBlYmRmMmUyYTA0ZTgzNTI4MTkzMzMxZjE0ZGU4IGxlZ2FjeS10cnVuaworMTEyNDUgNTVmNzkwYTVmNjRiZmI0NTYyYjNiODcxNzJjMmNmY2U5Njg4NzNhOSBsZWdhY3ktdHJ1bmsKKzExMjQ2IDA3NjYzZGQwZmU4NjU0ODZkYmFjMTQ5NzNmOGZjYWYyYWQ5MDI4NDUgbGVnYWN5LXRydW5rCisxMTI0NyA2MmZhYmUyNDc3YzRkZjdiNDRjN2QxZmQwYTBhMTBkZmY2YzE5Y2I5IGxlZ2FjeS10cnVuaworMTEyNDggMDU4NDE3MDcxYjBlNTI2YmMyM2MyMmRkZmJiNDkyYTJlMjc3ZjllZCBsZWdhY3ktdHJ1bmsKKzExMjQ5IDg0MzRlOWQwMGI1YTVlNDRlNzU2NzMwZjMzZGMyNzgxYThiYmQyMzcgbGVnYWN5LXRydW5rCisxMTI1MCBmYzJhNzAwYjEwMDdhNTJmNTIxN2NkOWU5YThkMzFlZTNhZWVhOWEyIGxlZ2FjeS10cnVuaworMTEyNTEgMDZmODBiY2M5NTY5MTFmMzc5NjE5NzI3OTE0ODYxN2RkMTAxYzI1NCBsZWdhY3ktdHJ1bmsKKzExMjUyIDI1NmE4MGYzOWE4OGZkNzk2MjJiZjI3ZTNhNjRlNWM4YTNiMDllODMgbGVnYWN5LXRydW5rCisxMTI1MyAyZjQ2Zjg3YWE4MGFhZjVjZDNjYmYyMDk1ZDYzNTg0N2ZmN2JiNjIxIGxlZ2FjeS10cnVuaworMTEyNTQgNzBiNjMzZmYyZmI3NWM1NjE0Yjk0MzUxZjEzYjFlOGU0NDM0ZmFkNiBsZWdhY3ktdHJ1bmsKKzExMjU1IDQ1YmU0MGVmY2I5NTA0OTJlZTNjNzMzNjNmYzkzZWI1ODYyZTI2NGQgbGVnYWN5LXRydW5rCisxMTI1NiBlZGJmNjMxZmI3ZTllNDEyNjk5YTQyYjg5NmJmNWIzOGQ5MWFlNDIyIGxlZ2FjeS10cnVuaworMTEyNTcgZDM5Njc4ZDIyYjRhMzNkMDNhNTlmMDdhZmFkOWM2YzI2YjBmNzgxMiBsZWdhY3ktdHJ1bmsKKzExMjU4IDA0ODQxZWVkOThlZjkxNjRiMTVkNmM5ZmFhNTQ3YWY4NzVhODdhNTUgbGVnYWN5LXRydW5rCisxMTI1OSAwMDUyNDU1NWVmMTc0MjgzNzYzYjE3MTA5YTY3ODNjZDVmNWQ0MDkzIGxlZ2FjeS10cnVuaworMTEyNjAgM2ExZGQwMTM3NWUwOTQxNmNhZTVkNWVkZmU4YzdlZGZlMTk5NTI0NiBsZWdhY3ktdHJ1bmsKKzExMjYxIDkxMzgyNzJjMWZlNmVjM2IxZDcxZjdkMDBiMmQ4OTM1ODJmODBjZGMgbGVnYWN5LXRydW5rCisxMTI2MiA2ZDYxZDQ4OWQ3Mjg4OTE0M2M5ODAxMjU5YjBiOWI0MTNhNjMzNzMyIGxlZ2FjeS10cnVuaworMTEyNjMgOWUzMTQxNTQzNmY2MmNkOTQ3N2NiMWY5ZDkxNTk0ZDlkYzQ0MWFhNCBsZWdhY3ktdHJ1bmsKKzExMjY0IGFlM2UyZWFlZjliOTUyNWY2NWJhNjMzMjA2NTg0NTQwYTgyY2UyNTMgbGVnYWN5LXRydW5rCisxMTI2NSA4ZTk0Y2U5Mzk0YmYyNDZlMmNiODgzZWUyNjljNGU5YzU3MmM2Y2M5IGxlZ2FjeS10cnVuaworMTEyNjYgYzk5MDkwNDYyNDc2NmVlODdjMWM1NjNhMTBlNGY2ZjViMjE0YjIwNCBsZWdhY3ktdHJ1bmsKKzExMjY3IGM4NWIzOGQ1OGFjZDhjZjA4YTVlZDM4M2QzNTQ0YTRlNTFlNDc1N2IgbGVnYWN5LXRydW5rCisxMTI2OCA3ZDIzMmMwZTRkZDZjOTBiZjMzOWJlYzdlNjczZDRjNzg3OTU3MTdhIGxlZ2FjeS10cnVuaworMTEyNjkgZDJiZmM4NjU0MjgwYTc5YzE3ZGEyNmM1YWNjMDA0YzcyMDQ4ZDJlYyBsZWdhY3ktdHJ1bmsKKzExMjcwIGQ2NDJlNjc0OGQxMmMzYWJmMzc3ZDg1NTBhZjljNDJlODgyNzBjMGIgbGVnYWN5LXRydW5rCisxMTI3MSBkMzJkYmMyMDI2MTNlMjliYWIzOGNjZWY2ZGY5OTdlNTFhZjg4OTA3IGxlZ2FjeS10cnVuaworMTEyNzIgMTA3NmEwMjgzNjVhMmVkNWJkZmM1MTljMmY5NTdmZWIxYjIxZmQ1ZiBsZWdhY3ktdHJ1bmsKKzExMjczIDMzZDU5MzM2ZTdlNmZiYzU2Nzc0ZGJkMzQ5ZDIwNWRmZmQ1YTJkOTcgbGVnYWN5LXRydW5rCisxMTI3NCAwZjVlMGI0MDViYzJmMmFiNzQ1ZjgzNjQwY2U2NGQ5MjdlNTM4YzA5IGxlZ2FjeS10cnVuaworMTEyNzUgMWY4MDRmYWNmNjM1NGZhMmYyZWI4N2ExNThmZTgxOWFkNWM3YWQxZiBsZWdhY3ktdHJ1bmsKKzExMjc2IDBlMzBiMzViOGEzZmZlMzU2MGEwNWRlNTIxMTg2MzM3NzNmMGRhMWYgbGVnYWN5LXRydW5rCisxMTI3NyBiOGQyYmE1OTcxMWMyMjcwMDQzNjhjOWY5MWJmOWU0NzMwMDhmODgwIGxlZ2FjeS10cnVuaworMTEyNzggNmZiYjU2MDdjZGQ2MDRjNDE0MjI3YzIzZDI2MGYwNjQxNTllMzFlNiBsZWdhY3ktdHJ1bmsKKzExMjc5IGQ1MWQxYTYxYjFjZWY0Nzc4M2VhODdkNjUxNWU1NTczNzY4MDY3ODggbGVnYWN5LXRydW5rCisxMTI4MCBjYTFlNWJjNTIwOWQ4NDcxMjczZTkzZjUyZTQ0OGEzZGJkZTRjZWQ3IGxlZ2FjeS10cnVuaworMTEyODEgNDQ3MjZiMDU4NzAwYWQ5M2ZmMjA4M2U5MWQ3MjFjYzUzZWMxMTJkMSBsZWdhY3ktdHJ1bmsKKzExMjgyIGU4YjU2YjM4NzA0NWFlNzRkZDljM2Y5OGQ4ZDRlOTFjY2FhNWZiNmUgbGVnYWN5LXRydW5rCisxMTI4MyA2MTQ2NDAzN2RhNTNjMmQwNTUyMWY5N2ZhZmMyY2VlM2Y4NDNiY2I4IGxlZ2FjeS10cnVuaworMTEyODQgODFjYjk0MDFhMjFiN2M4NjI5ZTgyNDliMmUzMDk4MzNkZTA2ZGEwNyBsZWdhY3ktdHJ1bmsKKzExMjg1IDRkMThlYmQ0Y2Y0MjNlZjg3YmJiYTc5NjRkYzMyYTRlZDFlOGZlN2EgbGVnYWN5LXRydW5rCisxMTI4NiA1ZDVhNWJjOGRlNWNiNjI4OTQ1ZGE5OWM2ZjEyODZiNDM1MmZjNDY1IGxlZ2FjeS10cnVuaworMTEyODcgYzllNDU3MDVlYzllMTI5NDAwM2JiMTkyZWE3YjY3ZTMzMGI0Mzk4MCBsZWdhY3ktdHJ1bmsKKzExMjg4IDhlOWQyMTQ2YWU5MzAyMTVjMTE2NjEzOTVmMzQ2Njc2N2U5OTgxOWIgbGVnYWN5LXRydW5rCisxMTI4OSA2NDVhMzI4ZTdmZDQ5NDljZjZlMjM0Mzg3NzQzYjI0M2ZlNGEyMGRmIGxlZ2FjeS10cnVuaworMTEyOTAgNzg3ODU5ODVhMmFiNTgxYjRlNTU1ZjhjNWRlZWUzNzFlZDUxZDNiZCBsZWdhY3ktdHJ1bmsKKzExMjkxIGM1ZDcyYmNkYTkzMmE4ZDM2Y2EzNjAwNWI0NWFiYWI4ZmI3OWQ3OTEgbGVnYWN5LXRydW5rCisxMTI5MiA0YWE3NjQ4MGQ4MTI1ODkyYzUxNWFlMWJjMzE0ZjkwZDNlMDQ0ZjdhIGxlZ2FjeS10cnVuaworMTEyOTMgZTU4YTYxNGZiOGU0MGVhYTY3MjEyMTI5NjMyMWI5OWQwOGJhNmUxYiBsZWdhY3ktdHJ1bmsKKzExMjk0IDE0MDY5Mzc0NGEzYzg1M2Y3YjQ0Njk0ZjZhMzc1OGI0MWFjYzZmZjQgbGVnYWN5LXRydW5rCisxMTI5NSBkZDY0OTgzN2ViZDQ4OTg0MjU1NzFlYWIyNDYxZDYxZmQzMWY4Y2FjIGxlZ2FjeS10cnVuaworMTEyOTYgNjczOGU1MzgzOTc3NGZhZTI4NmQ3ZTkxMTBiODYzM2YyZGY1YWQ2NCBsZWdhY3ktdHJ1bmsKKzExMjk3IDg0NjBiZGMzZGJmN2I3ZTZkMzNkNzM5MDQzZGE4Y2ExZjhmZDEwNzUgbGVnYWN5LXRydW5rCisxMTI5OCBkOGI0NjE5ODkyMzhkODJmODNkYWViZmY1OTkzMzVmZjg3MGRmZThkIGxlZ2FjeS10cnVuaworMTEyOTkgMGVkZDM4ZGIyMjg4NDU5NWFhY2EzMTE0Yzc0NTE5N2MyMWE3ZWFkZCBsZWdhY3ktdHJ1bmsKKzExMzAwIDcxZmNjNGNhMGU4YWVkYzkxNjE4YjJiMDEzMjAzYjVlMDUyZWJhYTkgbGVnYWN5LXRydW5rCisxMTMwMSBjMjgwMTEwMDBlZDM2OTNkNjNjMjE0ZDMzMGE0ZjdiMTI1NDIyNWY2IGxlZ2FjeS10cnVuaworMTEzMDIgOWIwZGRhOWE1NThiZDVlZWM5NmU5MzQ2MzZlYjVlMzQ1MTkwMTQ3NCBsZWdhY3ktdHJ1bmsKKzExMzA0IGExYzE2YTNmYTdkYjQwYTM3NTU4N2EyMjM1N2QwZDAxZGViY2JkODYgbGVnYWN5LXRydW5rCisxMTMwNSBiZDQ3ZWUwNjhiODNmYjlmMmE4YjZhOTg5YWI0MGYzZjg4YzRmOTY4IGxlZ2FjeS10cnVuaworMTEzMDYgZjJhNGEyYjYwODYwN2IwYWZjODdjNmJkYmViMGRiMTYwMWJhOWNiZSBsZWdhY3ktdHJ1bmsKKzExMzA3IGIwNDA5OGEyNTZkMDA0NmQ5Y2VhNGNjNDZjODhhOWRkYTA5NjIxYjMgbGVnYWN5LXRydW5rCisxMTMwOCAxMjk4NzBlMjE3OWE5MWQyNzhhZGVmN2FjN2E1OTY5OTc4MGJlZjBhIGxlZ2FjeS10cnVuaworMTEzMDkgNGJmYTUzYmQ5N2JjMDY3NjJlN2MzYjEzMTA4M2M0ZmJhYTJjM2M1MSBsZWdhY3ktdHJ1bmsKKzExMzEwIGRmMTYwMmI2YTJhODYyMTY2MTg2ZGFiNDA3NjBhZDU4NjRkNTczOGMgbGVnYWN5LXRydW5rCisxMTMxMSA4NTMyMTQxY2ZmNGMxZjVkZjZkZDVlNjYzZmVlYjVmMjE1MDJlNmFlIGxlZ2FjeS10cnVuaworMTEzMTIgM2NjMmZhZDRlMDIwZTE3ZDgzZWEwYjBhNzVjMzY2ZmJhMjg0YjAxZSBsZWdhY3ktdHJ1bmsKKzExMzEzIGVlYzRkY2ViNDQzNmFhZTYwNTgwZTdhNjlhYjQwMDA2NWQ4MDQ3ZmIgbGVnYWN5LXRydW5rCisxMTMxNCAwMGE2YmI2NWZmMjkzYzBlMGE4ZDYyM2M1ZTI1NDNjOWI1ZDE5ZDJiIGxlZ2FjeS10cnVuaworMTEzMTUgNzQxZDUwNjE4ZWMyY2FhN2M2NTc4ZWYwOWY1OTk4MDVmNzhiOTAwOCBsZWdhY3ktdHJ1bmsKKzExMzE2IDA0NWU5MDBhNDE5OGUwMmFjYTJkMTgxODg5N2MxYmJhZjVmYzg4MDkgbGVnYWN5LXRydW5rCisxMTMxNyAzMzZjYjUwOTg3OWE0OWMyN2MyNTUyZDc3NjE2YjEwYzUzMzRkMTgxIGxlZ2FjeS10cnVuaworMTEzMTggYjA0Zjk1ZmVkZDUwY2ExYWQ1YjM5MmRhZWJiZjQ3YzFmODFkNzZkNCBsZWdhY3ktdHJ1bmsKKzExMzE5IGYxY2E0MTk5NWU2MmU1MTcyOWZhNmI3Yzc4N2IxNDkyN2ZjMmRlZDAgbGVnYWN5LXRydW5rCisxMTMyMCA5MjlkYjgzODViYTRhNTNlMGJhM2IxZWQ2ODRmNDM2ZjFkZWI2MDM3IGxlZ2FjeS10cnVuaworMTEzMjEgZTVhODMxMTY4NGU0YmRhMzcyYmNmZjc3MDY1MDY0ZjhkZTQ5NThiNyBsZWdhY3ktdHJ1bmsKKzExMzIyIGMyZjllNTA1Zjc1YTFkYTkxY2EyMTdiMDdjMDNiMDM5NzQ1OWY5MTUgbGVnYWN5LXRydW5rCisxMTMyMyA0NGJhZWY4YWI1Yzg5ZDM0YjE0ZjkwODNlY2RlMDE5NzJiZjBmZDI4IGxlZ2FjeS10cnVuaworMTEzMjQgYmQ2ZDk3ZDZiMmFlMGI3NzBiYzgyOTUyOWY0MzUwNGNmN2FlNWQwMiBsZWdhY3ktdHJ1bmsKKzExMzI1IDhhMzcwNTI2ZGUwNmFkM2RiMGQxYzMxNDA1OGYwODZjNDY0OGFkM2IgbGVnYWN5LXRydW5rCisxMTMyNiAxYzdkODYwODcxZDlkMTBlZWRlYjlhY2NiMzYxNjNmOTYxMzk1YjFkIGxlZ2FjeS10cnVuaworMTEzMjcgYjY1ZWE4MTI3NzUyNWE5ZTRkZDI3NjcwNDQ1NDNmOWQzMTJmN2Q1NiBsZWdhY3ktdHJ1bmsKKzExMzI4IGI5MzNmNTg0YTI2ZDAzMTI2NDFlNmMzOGIwZTg1MTg1NzM5ZGZlZDggbGVnYWN5LXRydW5rCisxMTMyOSA3NDUzMzQ1NDU4OTgxYmU4ODBkOTYwNDM5YjEzMjA2NTYwMzYzNDg5IGxlZ2FjeS10cnVuaworMTEzMzAgMDg2NzAyMjUwMTUzNGExZjI0ZDAxM2E4ZDhlMmRmNTliNmZmYjcxMSBsZWdhY3ktdHJ1bmsKKzExMzMxIDM3YzY5MThlZmQzYmNhMTJmZDM1NzI2M2E2NTE1MThiYTkyYTU4NzYgbGVnYWN5LXRydW5rCisxMTMzMiA2MWVmODgxODY5NWJkNDM2ZGYwYzhkYWY4MjQ4MGE0NTdkMzA3MGI5IGxlZ2FjeS10cnVuaworMTEzMzMgYzM1MTUyM2ViYzA1ZWViZGM5YzQ0OTc0MTA4NmFmMGY1NmIzYzVhOSBsZWdhY3ktdHJ1bmsKKzExMzM0IDUzNGExYTQzN2FmM2E5YjhlYWY3MzUzMjM4NjFlMjcyODkwZWQwNmYgbGVnYWN5LXRydW5rCisxMTMzNSBjZWYyMGVjNmYyNDljYzQ2MmQ5YzRmMmZmNzlkYjRkZGRlZTE4ZDgxIGxlZ2FjeS10cnVuaworMTEzMzYgYmJlOWQ3MmJjY2RhMjdhOWRhYTMzZTA1ODgyOTAzZmQ5ZjNiZWJlZSBsZWdhY3ktdHJ1bmsKKzExMzM3IDVmOWRmZjY4MTc5N2ZmOTQwNzk0ODQwM2IyOGMwNjc0ODA1MmI5ZDQgbGVnYWN5LXRydW5rCisxMTMzOCAzNTRjZDI0ZTVkZmU0MmEwZjgyZjAzMDFmNzlhYTAwODc2OTA2MDQwIGxlZ2FjeS10cnVuaworMTEzMzkgZDI4MDQ2MDhiZWNkMDhhMWE0YjVlMjllZGEwYjM5MDUwZDRmZWYyYSBsZWdhY3ktdHJ1bmsKKzExMzQwIGY3ZDRhNTg1ZGEwMTg2YzBiNWI4OGI4MDE0ZTdjYTk0ZjMwZjc2MzEgbGVnYWN5LXRydW5rCisxMTM0MSA1Njc2MDcwNzZkOGY0Yzc2YTI5Mjc2N2JiNDQzOGMzYzJhOTQ4MDZhIGxlZ2FjeS10cnVuaworMTEzNDIgODY1M2UxZjIxOWYxYmQyMjYxZTEzN2M5NmY3MGZmZTEzYmE1MGEwMiBsZWdhY3ktdHJ1bmsKKzExMzQzIGQ4MDhlYmE0YjNjNjUzMDQ4ODBmMGUyZTZkNWIxMjM2NjJiZGJjYTggbGVnYWN5LXRydW5rCisxMTM0NCBlMTQ0NThmMTM2Y2NhZTNkN2E2YjQ5YzE4MTYzODFhZTYyZWMxMTk4IGxlZ2FjeS10cnVuaworMTEzNDUgZTAyNGM2OTYyNWUxMmY4ZWQ5NjY2NTZhNWZmNTNkMDVmYzFmMzUxYyBsZWdhY3ktdHJ1bmsKKzExMzQ2IDgwMTFmMTQ2NjlhODE3ZDRiZTljZjE1MmQzNTMwZDU0NGMzMmFiZDcgbGVnYWN5LXRydW5rCisxMTM0NyA1Y2RlY2FhYTliZWIwZDM3ZGQxZTQ0OWE4MTliZGVhNDEyNGUxZWRlIGxlZ2FjeS10cnVuaworMTEzNDggZjQ1NmY1YWE1NzE4NWEyZDMxYzkyMGE5YzM2MmNlMGJjZTMwNDc2YiBsZWdhY3ktdHJ1bmsKKzExMzQ5IGExZWMzZWMyNjAyZWNhNTgyNmViODBkZjYyMTQ5MDg3NTg5M2I2MDUgbGVnYWN5LXRydW5rCisxMTM1MCBiYjc4Y2MyNzQ2OWFiNGJlODczOGEwZWMwNmZhMTE4ODI2MzJhOTY3IGxlZ2FjeS10cnVuaworMTEzNTEgZjhlMmFkNGNkNDViYzNiMWJkMTE2NDUwOGUyMTJhMGQ2YWZhZTA3MyBsZWdhY3ktdHJ1bmsKKzExMzUyIDU3MDg5YWQ0ZDczYzZlMjBiYWY4NTk2YTI5NWE2NjljY2NkOTY2MGYgbGVnYWN5LXRydW5rCisxMTM1MyAzYmMzZjk0ZDYwNjFlNGYyYWYzNTc4ZDVkZTAwYzZlNmMwNDRhMzgwIGxlZ2FjeS10cnVuaworMTEzNTQgMDVjMTEwNGUwODRiMzE0NjM3NGM5Mjg3OWI2ZGIyNDI1NDYwNDc5OCBsZWdhY3ktdHJ1bmsKKzExMzU1IDg2OGEyNWNmNjUzYmYwNWViMzk3NTllOGE3YTBhZmU3ODFkYmRiZmYgbGVnYWN5LXRydW5rCisxMTM1NiBhYWNiZmRmNDk0M2U1Mjk4N2NjMzVhYWE5NDE5YzcyZjlkYWZkMjRjIGxlZ2FjeS10cnVuaworMTEzNTcgMTA3OTBmMTRkMTNhYmQyNmFhMjI4ZjBjMThmM2JkY2Q1NDk2YTNkMCBsZWdhY3ktdHJ1bmsKKzExMzU4IDcyYjY5OGMzMzI0Yjk5MDVhNDM3MDNiMTI4ZWU3ZWMzOWYzZjFiOTEgbGVnYWN5LXRydW5rCisxMTM1OSBkMzQyZWI0NGQ3YmRkNTRmNzUyOTgwMDY3ODMzZTdhNDk5MjVhZWYxIGxlZ2FjeS10cnVuaworMTEzNjAgZWIwNTlhMzNmN2ZmMzFjOTkyODY1ODc3NWY4YzQ5NjhiOTk4ZjA5NiBsZWdhY3ktdHJ1bmsKKzExMzYxIDgxM2Y1MjdmM2JlYzAxY2Q3YzJkZDk5YzJiNGNlYjBkMzQzYWU4Y2MgbGVnYWN5LXRydW5rCisxMTM2MiAyN2VlMzIzMWRmYTliZWM4MGE4MmI0ZTU1M2Q2MmM4N2YxMjM0MmQzIGxlZ2FjeS10cnVuaworMTEzNjMgYTllYjI2NWQyZjU3MGRlYmZkNGQ5NmQ1NDVmMGQyMjdjNjE1MzE2MiBsZWdhY3ktdHJ1bmsKKzExMzY0IGZlYmNhNmIxODI3ZGRkZGEzYTNkMjliZjk2ODI1Y2Q2MzQyMTE5ODIgbGVnYWN5LXRydW5rCisxMTM2NSBiMjhiODRlNmE0Mjk0MDVhMzFkZTcyZTlhNTFmYjMzMDU3MDZjOGY1IGxlZ2FjeS10cnVuaworMTEzNjYgZjg4ZjQwMjQxN2YyOWYzYzQzYWE2YjM3NjRlMmQzMjZlYWIzMjYyOSBsZWdhY3ktdHJ1bmsKKzExMzY3IDg1ZGNlMzJhY2Y5ZDc5Nzg4YTljZmI5YjZjNGZjMDIwN2YxMzE3NmQgbGVnYWN5LXRydW5rCisxMTM2OCBjMGE5ZWQyMWRmYTA1NjAyY2Y3NGE5OTQ4MGI1NmE5MTIwNjlkMmY1IGxlZ2FjeS10cnVuaworMTEzNjkgMDRhNDkyZjExMGRiZGM3MDZjYjZmOGQwM2NmYzZmZGE5ODgzODUzYyBsZWdhY3ktdHJ1bmsKKzExMzcwIDhjMDUyNGE3MTI0NGZkMGVjYThlYjZlYTBmYzJkMjhjZmQ5N2JiOWMgbGVnYWN5LXRydW5rCisxMTM3MSA5YTA3NWEyZWRiMWY1NDJmODg5MWI5NjE0ZDI5NmU3MzAyMzZmYjRlIGxlZ2FjeS10cnVuaworMTEzNzIgMzQwMTIxMmU1NGZjMzgwNWNiNjdjOTk3MDE0MmI1M2MwOWUzYjFmZCBsZWdhY3ktdHJ1bmsKKzExMzczIDMxYzA2MzUxN2MyMmVjMzRjN2UyMGQwMzM0YTVjODE5YmQwNGVkNGEgbGVnYWN5LXRydW5rCisxMTM3NCA2MGI0YTYxMGRjZmNjYWE3M2I3MDY2YTFlNzAyMDhhY2MyY2E1NDU0IGxlZ2FjeS10cnVuaworMTEzNzUgYTcwODMyOTVlYjM4ZWFjMDBiZDFmZTQ5OWZjMTNkYzQzZTFkZjEyZSBsZWdhY3ktdHJ1bmsKKzExMzc2IDA5MDYzZWVkYTJiNzAzZGE4OWMyMmI3NmM2MDdmM2I4ZDMyNWYxN2QgbGVnYWN5LXRydW5rCisxMTM3NyA3NjRkZTczMWM4MDYzZmE0M2M1NjI2OTk3YWNkOTFlMzI1YTJkMTM1IGxlZ2FjeS10cnVuaworMTEzNzggOWI0YmMzYjhiOWQ0Y2QwNWU4MDFjZmY4ZTEzOGUzNDEwOTUxNmRlYSBsZWdhY3ktdHJ1bmsKKzExMzc5IGQyOTVhNTE4NzRhNmFmYTJhZjIxN2ZhYjliMGYyMjdhMzU0NzJkNjcgbGVnYWN5LXRydW5rCisxMTM4MCA5ZGI4YjVlYTZiMjEyMjA2OWQ3YzY2YmIxMDY5MDM5Y2I2NjhlNGFlIGxlZ2FjeS10cnVuaworMTEzODEgNDkyMzYzZDZiYzk0NTExODRjMmVmNDUzMzQwZjFlMWNlN2ZlZDA5ZSBsZWdhY3ktdHJ1bmsKKzExMzgyIDM4NTQ0ZjgyOGQ3NDA4ZTI3ZjllM2Q4OGUwMjRjYTRjMGZhNjU0YzMgbGVnYWN5LXRydW5rCisxMTM4MyA2ZGMwYTlkYzViYmI5MWE1NGMzOTEyMmJkNDU3Y2I5NTE1OGJkN2Y5IGxlZ2FjeS10cnVuaworMTEzODQgZGRmNzEwYjdlNmViNmZmYjUyMDg4MTNiNDE2ZWU0YzY4M2Q0MGZlYiBsZWdhY3ktdHJ1bmsKKzExMzg1IDZmNzNhZTFjZjkzNDZhNzE2OTZiZGQ1ZmE1OTNjMWUyMDM2MmM2NWIgbGVnYWN5LXRydW5rCisxMTM4NiA2ZDhiOTJjYWY4Y2RiNTJlMDY4Y2NjYzdhZWI1NTQ1MmUwMDE3YzZiIGxlZ2FjeS10cnVuaworMTEzODcgZDQxZmY1YjE5MWQxZDExNmI4N2JkZDMwN2RjNTliMTAyZjNmZDVhZSBsZWdhY3ktdHJ1bmsKKzExMzg4IDI5ZDg0N2M0MjhmOWRhNzE5OTBjNDkyYWJlZTdjYWY0OGUzNmJjNDcgbGVnYWN5LXRydW5rCisxMTM4OSA5ODAzNTU2YzFhZTdjM2ZlZWVkYTFjMGVlNGViODg4ZWY0ZWNlYzg5IGxlZ2FjeS10cnVuaworMTEzOTAgYTViNzFhOGExYWI1ODY5NjJjNDY2MGViYWJlODNkN2NiMjg1ODk3YiBsZWdhY3ktdHJ1bmsKKzExMzkxIDdkNjgxMzUyMWY2MTM1OWVjNzZiMjkwYmE3MzUxZWJkN2ZjZWI2OTcgbGVnYWN5LXRydW5rCisxMTM5MiA4OWU2NWE5NmE3ZDNmYTgwNTUzNTUzNGYwYjdkOWU1NDRhZTVmYzgwIGxlZ2FjeS10cnVuaworMTEzOTMgYjFkMWQ4YzAwNzFiYTdjZDczNGI3YjFkNWZjMTQwM2Y5NWUyZGI2NyBsZWdhY3ktdHJ1bmsKKzExMzk0IDlhOTg0Mjc2Y2M1NjVjYTJmZDZmNjViNmIzNGYzNTIzMTk2NGI2YmUgbGVnYWN5LXRydW5rCisxMTM5NSA0NTliZGE5NDBkYWEyNzgxNGY3OTk3YmZhNTQ2MTIzZjA0YjQwMTY3IGxlZ2FjeS10cnVuaworMTEzOTYgZDZiNzM5NjI1MjliYjY2MTRmNjNjMjVlY2VmM2NhNzYxMmJlYzdiOSBsZWdhY3ktdHJ1bmsKKzExMzk3IDlhNDA1NGI4NDg1ZmY0ZWFmNjZjNGYwYjcwMDdkODk3YzQ0Njg0MmIgbGVnYWN5LXRydW5rCisxMTM5OCA1NTJjNmIzYWJhM2RlNTA1NGJiZjQ2OWVlNDZmNDRmNTZiMWI5MWRiIGxlZ2FjeS10cnVuaworMTEzOTkgNmI2MzNkZjQxZTU5NTFhYWNjNGYwYmY4NzU2OTVjYmEwN2MyMjM0MiBsZWdhY3ktdHJ1bmsKKzExNDAwIGU1NWE3OWZmODIyOGY5MjJhOGNjYzZlOGFiOTZiNjkxMzZjNGQwNzggbGVnYWN5LXRydW5rCisxMTQwMSBhY2ZmZmUxNDYyOGU0NDhiZmViMDhiNWE4ZDM5MjExNDlmNDg2YTRjIGxlZ2FjeS10cnVuaworMTE0MDIgNjEwNjgwZTNiOTI5M2ZiNmNkMWQzMWQxZGE2MDUwM2UzOWFjYjBmYyBsZWdhY3ktdHJ1bmsKKzExNDAzIDAyN2YzZWVmNmU1YTc5ZWVjNDQyODYxNTAwMTEzOGQ5NmU3MTNhMmIgbGVnYWN5LXRydW5rCisxMTQwNCBkMGY5M2ViYTliYWFkMGM0YmFiNTlmMzdhYjJjY2Y0OTJkYTUyYjM0IGxlZ2FjeS10cnVuaworMTE0MDUgOGU0MTkwNjg2M2JlN2JiNDdkMTEzZmU3ZWEwYWI0OWZiMmQxNjRjMiBsZWdhY3ktdHJ1bmsKKzExNDA2IDI4YmM1ZDhlOGRjYTM2YjMzZjAxNGYzMjUzMmQwZGUyZTdjNzJhM2QgbGVnYWN5LXRydW5rCisxMTQwNyAwOTU0YWQ0YWNkZmRlNWM4Y2Y1ZDU2M2IwZDA5YzUwMTYyNjczMzQ5IGxlZ2FjeS10cnVuaworMTE0MDggYmU5MzU4NTFkYzUwYzNkZGFmZmZjYzgwOTA2YjRjOTkwYTAzOTIxOSBsZWdhY3ktdHJ1bmsKKzExNDA5IGFmOWJmODRmYmM1ZWE0MmI5YTYxMzg3YWFkOTFhNzUyMTM5MWU2MDQgbGVnYWN5LXRydW5rCisxMTQxMCA3M2Y5YTFlOGFlNTJjMDVhNTQ4N2E2MTE1YmVlNmQxOTUwZGNjMTI0IGxlZ2FjeS10cnVuaworMTE0MTEgYTgyNDlhNmIxYjU4ZTQ3ZGRlODMzMjM5MTM4MzE1Yjc5M2FkODc1MyBsZWdhY3ktdHJ1bmsKKzExNDEyIGJhOGQxYmM5OGIyZDgxNTlkOWZkMGY3YTA3YjQ2NThlNDE2ODU4NmEgbGVnYWN5LXRydW5rCisxMTQxMyBjNDVhMmQ5MTFmMzE1NjZmMzNlM2UxNjdlYWI4Y2QyNGQzY2ViZDM0IGxlZ2FjeS10cnVuaworMTE0MTQgZGFlMmYyZWY5MDE1YWEzZTM4YjcxMGNlZDUwNDg0ZWRmNjU4ODBjMiBsZWdhY3ktdHJ1bmsKKzExNDE1IDBiYTgxYjk5ODhlZWZlZDFkNjEwMTA3ZTJlZGVlNzYxOGE3YWEwYjcgbGVnYWN5LXRydW5rCisxMTQxNiBkYzZlZGZkNGJhZTViZmIzM2U1ZGEyNzA5NjM2ODdlNWJjNGUyZDVjIGxlZ2FjeS10cnVuaworMTE0MTcgMjBiODNjYTA2Y2U4YTE4NzM2M2U0Y2VmZjEwNTM4NTFhODkxZGFkNiBsZWdhY3ktdHJ1bmsKKzExNDE4IDJmOTM2YjdhMDlmOTRmMTgwNGNhY2E3YjcxNGU0ODNjZGQ0NDVkZGEgbGVnYWN5LXRydW5rCisxMTQxOSA1YjczZDViYWJjNzhlOTFhYjU1MDVlYjg2NjZjMTE4MTIyNTk1ZTcyIGxlZ2FjeS10cnVuaworMTE0MjAgMTk3YWM1YWQzMGNkZjM2MDkzODc1MTkzMGExNTE3YWJiYzA3MmUyYSBsZWdhY3ktdHJ1bmsKKzExNDIxIGI0ZTJiMmNiNjViMWJkMTA1ZjdmY2IyOTVhMmFjZTk5MjhmMzZkMDYgbGVnYWN5LXRydW5rCisxMTQyMiAzNDc4ODRlYzUzMTgxMzdjZTJiN2E0ZjhiYmJhNDExNTU1ZDQwN2Q1IGxlZ2FjeS10cnVuaworMTE0MjMgMmQ3NzUzMDg1Mzg1OTJkZWE4ZGRiOTI5Njg5YTIyMTBkOGFlYjYzNyBsZWdhY3ktdHJ1bmsKKzExNDI0IDQwMDg5ZTU1ODMwOTBjYWViYzMwOWU0MzZhN2QwYThjZDNhYjFiN2MgbGVnYWN5LXRydW5rCisxMTQyNSBmZGE0NjNjM2IxNzY3ODk3ZTg1MDcxYTQxNjY0ZGE5NDQ5NjgzYjEwIGxlZ2FjeS10cnVuaworMTE0MjYgMGYzMzE4ODNjYzE1ZjA1M2VlOTdlZDljNDZiNTIxYWYxNjE2ZThhZCBsZWdhY3ktdHJ1bmsKKzExNDI3IDNiMDI5MTY1NWUzMTYzMTJhYmNlZWI3ZWJhY2NkNTVkOTQ4ZjAyYTEgbGVnYWN5LXRydW5rCisxMTQyOCA3NjAxYTdlOTU4M2RlNWRiOTA5M2E4YmIzOGY5NTAwOThiYzY5ZWY3IGxlZ2FjeS10cnVuaworMTE0MjkgNTBhZmEyOGFhNGI5MTljOWU2YzJkNmE3NWZkZDY2ZjRkMmIwN2U4NSBsZWdhY3ktdHJ1bmsKKzExNDMwIGM5MTgwOWNkNjdlNTQxYmU2NGE4MGRhMjJlNDUwMzJiM2UxN2YwMjggbGVnYWN5LXRydW5rCisxMTQzMSA3Y2Q0MmM4NzhmMTYxOWIyZGU0ODZkNmI3ZGFhMzkxN2JjMzdjMzZhIGxlZ2FjeS10cnVuaworMTE0MzIgMGE2ODkyYjFhNGFjMjgyOWNmOWJhYzJmMTdiZTc1OGE0YTEyNzAwOSBsZWdhY3ktdHJ1bmsKKzExNDMzIGNmM2NlYmE3ZWZkZGVkNjI1N2E5NzY3Y2ViYzY1ZDdiOGY3ZDg1NmIgbGVnYWN5LXRydW5rCisxMTQzNCA4YWNjNzJhODEzMTk5OGY4MDU2NzhmM2IxYjVlODg1Y2JmNWUzYmQxIGxlZ2FjeS10cnVuaworMTE0MzUgY2I3YTE1MDY5MTlhZjRmNzdiNzA3M2Q4ZjE2YmMwODhmMzRiMzRiYyBsZWdhY3ktdHJ1bmsKKzExNDM2IDk5MDE1Mzg1M2UzYmIxZTc5Nzk3YWZjMzljNGVhODdhMDc1NTdlOTUgbGVnYWN5LXRydW5rCisxMTQzNyAzODRmZmVkMjUyZTkxZmQ4NDg4OGViZTVlZGVkNDhlZDk2ZmU1MTI1IGxlZ2FjeS10cnVuaworMTE0MzggYzI2NTkwYjFjMzk2YjU3MGVmMjk2YWYzODJlNjAyZGVjYjNiZWRlNyBsZWdhY3ktdHJ1bmsKKzExNDM5IGFjMTg4MWM0YmE2ZDlkMDZhOTZiNzFjMTE2Mzk3YjIxNDYwOTBhZmEgbGVnYWN5LXRydW5rCisxMTQ0MCBjNzlkZWZiNWEzOWMxYmQ3M2MzZDYyYWE3YTBiMmExMWY4OTJhM2I3IGxlZ2FjeS10cnVuaworMTE0NDEgMjQ5Y2Q0NDMzY2YwOGViZjJiODY5NTI4MzIwMTQ3YzViNDJlN2NmZSBsZWdhY3ktdHJ1bmsKKzExNDQyIGExZGVhZjA0Mjc3YmJiOGEwZGE2ZTNjZTc1ZWE2NDM1ODM1MjhlMTAgbGVnYWN5LXRydW5rCisxMTQ0MyA5NjE4YTg2ODc5Y2FlZmFhYTdjYzAzNzZkMTA4ZjU1MGJhZDNlZTBlIGxlZ2FjeS10cnVuaworMTE0NDQgZTc5NThlOGM3NzdhNzg0YjljMGM2NmU2MTljOTUyN2VjNjQ2ZWVhYiBsZWdhY3ktdHJ1bmsKKzExNDQ1IGVjZGQ5NmRkYjAwMzVmN2JhYTcxM2ZjYjQyNjY2NjQ5ZGE1OTM1NjcgbGVnYWN5LXRydW5rCisxMTQ0NiA0YjY0ZjEzMWFhNGQ4NTM0MjNmNDMxMjc2OTkyYTcxY2UwNDQ5NWI0IGxlZ2FjeS10cnVuaworMTE0NDcgOTlmZmUwYTM4YTFjYWQzOGFiZjU5NTViN2Q1MDg0YWM5ZTAwMjhiZSBsZWdhY3ktdHJ1bmsKKzExNDQ4IGJlMjFhYWRmNDkwOGY3ZDllZjBkZjUwODRiMmMzODliMjM3OWY5MWEgbGVnYWN5LXRydW5rCisxMTQ0OSBjNGMzMjhhYWJkODI1YWFlOWRkNDdlZGQwYzllNjA3ZjRjNmJmOWNmIGxlZ2FjeS10cnVuaworMTE0NTAgZGUxNmUxOWZmMWRkOGIwZjhhODg1NTZjZTQ1NjEwMjE1MDgwNGYyNiBsZWdhY3ktdHJ1bmsKKzExNDUxIDE1N2U0ZjIwY2Q3MTYwOTRhN2ZkOTVkNjlkMWUzY2Q0NDdkZThmODEgbGVnYWN5LXRydW5rCisxMTQ1MiA0NTYxNGNmOWU5MTFiMGQ2NDA0MzMyN2NmZWFlNWNkNmY5MjFmOTFkIGxlZ2FjeS10cnVuaworMTE0NTMgNThkNjkwZDRlMzEyODM3NWI0YzY1MTc4OTVhMmE0MTY1NDI5NWQ1NCBsZWdhY3ktdHJ1bmsKKzExNDU0IDc4ODVmMTVkYTA4MDFjOWEzNTc5YjZhYTg2MTg4MjhlMTc5ZjllNzYgbGVnYWN5LXRydW5rCisxMTQ1NSA0NjhjYTg0ZmJjMTRhMjU1Y2EzMGY5OWRmOWQ5MWUxZGQ5YmJiMjdjIGxlZ2FjeS10cnVuaworMTE0NTUgZmVkNjNjY2JlNmRjM2FjNjYzYmZlOTdhMmY3MDA2YjFiMjg1NjhmOSBsZWdhY3ktdHJ1bmsKKzExNDU3IGQ2OWNmYzIzYWE3NjY0MzBjMWQ1MzE4N2RjYTIwYzlhZjI2OWJlNWMgbGVnYWN5LXRydW5rCisxMTQ1OCAzYmNkNjI3OGU2NTgxMDdlZGJiNDY3YTFjNGIzZTEzYmI3MGMyNmQ1IGxlZ2FjeS10cnVuaworMTE0NTkgODJhNDNlMWJmYTRmZGEwNjAyMzdiMDFmMzk3NGI1ZDhlYmZmODlhMiBsZWdhY3ktdHJ1bmsKKzExNDYwIDA3ZDk3ZDE1NDZkNGIzYzQ0Nzk1YmNjZjRjM2Q5YWY2YTg1MTE5NWQgbGVnYWN5LXRydW5rCisxMTQ2MSAwYWZjMzgyNzk3N2UxMmIwZjczYmJiOWEwMzdjYmNkYzk1MmJkODlmIGxlZ2FjeS10cnVuaworMTE0NjIgMjZjMDQxYjE0NWMxOTViNGRmYjgyZGY4YjJjM2U5Y2E1OTZmZTAxOSBsZWdhY3ktdHJ1bmsKKzExNDYzIGYxZTQxZmMyNzgzYzE5ZGQ5NjU3ZTVjMDc4YTkwZWU2Mzk1MDFlNzYgbGVnYWN5LXRydW5rCisxMTQ2NCAwMzk4MDUxZjhmZmFlMTc1MTM3Y2NhNjY2YTliM2EzZjZjM2ZmNjk4IGxlZ2FjeS10cnVuaworMTE0NjUgN2MyYmM3ZGI0OTMzNmNjMTY0ZTI4YjNhODhjMTE0MWMyZjAzNDMxZSBsZWdhY3ktdHJ1bmsKKzExNDY2IDRlZjY0MGFjZjIzNjVhYTcxNTI3OWYxNzlmNjk0MWU1OGMwZTE0MDEgbGVnYWN5LXRydW5rCisxMTQ2NyA2ZDRlYTM3ZDcwYzIyYWZhNTBhYjdlMGUwNjU4MzRhNmNmNDc0NDY1IGxlZ2FjeS10cnVuaworMTE0NjggZDc4NzhiMzg2ZGFmYTgxMWExODljZTlkMGNlYmMyYWMzYTcxYjJlMyBsZWdhY3ktdHJ1bmsKKzExNDcwIGZmNjdmOTNjNGE5YmMwZmYzZTM1ZDhjNWQ4NTczNzg1OGE0M2UyMTAgbGVnYWN5LXRydW5rCisxMTQ3MSAzZTEyN2JjYTg0ZTcyZmJkOTRhMjRhYTNlMWYzNzU4ZDBlNTNjZTg3IGxlZ2FjeS10cnVuaworMTE0NzIgMDcwZGU0ZDM5ZGRkODZhYzk2ZGJhNTZkZTlkYzM5OGQxNDIxNDRiMSBsZWdhY3ktdHJ1bmsKKzExNDczIDVmYjNjNjgzZTg2MjYyMzU2NjZjNjE5NGQ0MDYyZGU1MjQ1Nzk3NTAgbGVnYWN5LXRydW5rCisxMTQ3NCBkMTc4MjI3MTI0MjEwZWNhNDk0OTllODkyMWJkNDNlMjhjOGI0MjE0IGxlZ2FjeS10cnVuaworMTE0NzUgZGIxNmNhNGRlNGM0ODc4MTllNjEyZTQ4OGIzNjljYjVmODgzNmVlMyBsZWdhY3ktdHJ1bmsKKzExNDc2IGVlM2FmOTExYWQ1NmI2ZWQ5YjExNTgyYTE0NzRlMDQwYmE2NTdlMjUgbGVnYWN5LXRydW5rCisxMTQ3NyAwOTE4Mzk0MzE4MmViMzJhODZlOTMzOWQ4MjU4YWYzMGFiZWZmMDUyIGxlZ2FjeS10cnVuaworMTE0NzggOWM5YzRjM2VkZWMyZWQwMDc5N2VlZDVjNjViMTBjODNlNzliMjRiZiBsZWdhY3ktdHJ1bmsKKzExNDc5IGYxNDczOTI2MWEzNGMxODBjYmU3MzczOTEzYzEwMWRlNDM0OTQ1NzMgbGVnYWN5LXRydW5rCisxMTQ4MCAzYmRkMGU3OTBiYzk4NjljMTI2MDg4YzZlNmYwZjcwZDNiM2NmNjkyIGxlZ2FjeS10cnVuaworMTE0ODEgMjllM2IxZWI0NmIxOTBlN2QzOGJlMzE3YTdkODY2MmE5YTdjOTU0MSBsZWdhY3ktdHJ1bmsKKzExNDgyIGY4NjRjOWY2NTYwOTUyYjUxOTk3ODZjNzRhNmM3ZWVkYmQ1Yzg4NjMgbGVnYWN5LXRydW5rCisxMTQ4MyBkZmI3ZjQ2OGI3OGQzNzc1ODk5N2ZiZjZjN2ZmYWZhMmEwMjgwMDg5IGxlZ2FjeS10cnVuaworMTE0ODQgYzJkZDRmMDg2YTQyYmZhNDExZmFmN2RmYTY5YzFiYWE5MjcwMTg1NSBsZWdhY3ktdHJ1bmsKKzExNDg1IDQ0NTA1MDc1NTU4NmI1OTEyMmM1ZmE0YWNkOGNlZGIzOGE1ZWE4NTggbGVnYWN5LXRydW5rCisxMTQ4NiA3MTE2Y2I5NzEyYmNjNzA5OThkZjk0ZGVhNzVmNTViMjM2MzA5YjA3IGxlZ2FjeS10cnVuaworMTE0ODcgZjE2YTZlNjQ4NTliYjhjZjZjOTg2YjU1NDhhM2FkMTM4YmU5MjU3NyBsZWdhY3ktdHJ1bmsKKzExNDg4IDkzYmVjNmE4ZGIyMWIxZjEzNTMyMGRiMmNkZGNkNjg2ZWFlNjYwNDIgbGVnYWN5LXRydW5rCisxMTQ4OSBlYzAxZmU5YzI4NDE3YWJlZTgzMGNjZjBhOGRlMjQ4NWYzNzkxMGJiIGxlZ2FjeS10cnVuaworMTE0OTAgYTlmNmZiMTRhYmQ3Y2EyMDE4YjAwOWExMGVmZGFmNTliNGI3YWU1MiBsZWdhY3ktdHJ1bmsKKzExNDkxIGZmMWE4YTM4ZjhjMTFhZmI1YjlhN2MzNDdlNDMyOTljZDNkYWYzMDUgbGVnYWN5LXRydW5rCisxMTQ5MiBlYWJiZTBlZDM0NjhjY2VjOGI4MGIyMTI1Yzc2Y2JjZGI5ZDBiZjIyIGxlZ2FjeS10cnVuaworMTE0OTMgNTk5MTY3Mjg4NWNiMWFjNGRmY2Q4OTQxYjZmNGE4YTE5NzQzYzYzZiBsZWdhY3ktdHJ1bmsKKzExNDk0IDllMDFiNzRkYWY3N2M3MWM3NzU4MWZmM2U0NGUxOWFkMDAxMDg4ZTkgbGVnYWN5LXRydW5rCisxMTQ5NSBhMTEwYjYwNjk5YjFiNDEyNTUxN2ExNWZhODdkZGU3NTA1ZmRlY2NjIGxlZ2FjeS10cnVuaworMTE0OTYgMzZiZmFmZGRhOGQxNGYzYjlmY2YyOTY0NjE5OGM2OWQ5ZTcwNTlkNyBCQlBZCisxMTQ5NyBiZmQ4NDcyZjY5NmI5YzhmYzY5YTJjNzMxOTAyZWMxNDFkOWE0MDQxIE9TQU0KKzExNDk4IGQ4NWU4MDcwYjE2NGYzNzZmN2U2YzUyZDRiZmJhZTRlM2NkMTM0OTYgUFlUSE9OU0NSSVBUCisxMTUwMCBhOGQ0N2EzNzE4Y2U5ZmQ4YzRmZjc4Mzc2OWYxYWE1OTUzZDlkOWQwIEJCUFkKKzExNTAyIGI0ZDNmOThiZjIyOTcyZDRhMTIxMWU1YmMzZDkyZGNlMzc1M2Q3YTEgUFlUSE9OU0NSSVBUCisxMTUwNCBlMWYzMjNhZTljNGI1MjM3ZGRkZjBlMTg1MDljY2M2ZTMyZTUyMDk3IE9TQU0KKzExNTA1IDExYWJhZTI4NGMwNzFlZGJlZTRlNTE4NDc1ZmEwZGM3Y2Y2YjEyY2QgbGVnYWN5LXRydW5rCisxMTUwNiAxN2NkNmU1ZDI5NGJiM2EwNGJkOTk4Y2Q3YTVlNjM1ZGRhYWEwMjg3IFBZSURFCisxMTUwOCBlOTIxY2RiY2M1ZGQ2M2FmYjYzMzRhZDkzYzc0ZTQ0NTVlYjE3NGE2IFBZSURFCisxMTUwOSBkZmY2ODgxMjQ2NTcyZWM3OTFhNGIxNTkzNjIyMGEwMGQ3MGMyNzY0IGxlZ2FjeS10cnVuaworMTE1MTAgMmNlM2RhNDE5ZTFkMzllNzRlMDA3YTA4ODQ5YTNmZDU4ZGJlZWMwNSBsZWdhY3ktdHJ1bmsKKzExNTExIGRkNWZhMTc1NzU1NmRiNzNmYzYzMDRkNGM0NWJiN2NhYzA5ZGIyYzMgbGVnYWN5LXRydW5rCisxMTUxMiBiOWEwNzA3MzZlYWNiMzExYzdjNzIxODA4YzZjYWI0YzdhMjEwODNhIGxlZ2FjeS10cnVuaworMTE1MTMgODk3Y2UwOTc2Njk2NTIwYTRiMWUzZmI3YjIwMmZmYWQyOGRhOGFiYiBsZWdhY3ktdHJ1bmsKKzExNTE0IGIxNTBlYmY3YjJiNzJjNDhhOTAwZjIyMTU5MTNiY2VkODEyZDM4ZmIgbGVnYWN5LXRydW5rCisxMTUxNSA2NzRmNDUxYzQ4MTVmZjRhMDQwNjJlYWQ3NzU4Yjc3NzY5ODlhYWE2IGxlZ2FjeS10cnVuaworMTE1MTYgOTI4ZmU4YmM5ZWI2ZDY3NTZmZTcxNGE3ZTBmZTQ0YjMxYWNlODE0YSBsZWdhY3ktdHJ1bmsKKzExNTE3IGE5NzI0YzhlNmU2ZmQyYjAzMGMyNmExYjRlZjQxZjIzNWFiYTMzNzEgbGVnYWN5LXRydW5rCisxMTUxOCBiN2U3NzQ3YzE5Njk2OGY3ZWE1OTdkNTMzNTU5OGE2YmE1ZGRiYzlmIGxlZ2FjeS10cnVuaworMTE1MTkgNmEyZTkyNjIxNTQxMWRlMjFkOGQ5YWFhNWNmZTMzYWQ0MDk3N2FjYSBsZWdhY3ktdHJ1bmsKKzExNTIwIGE4N2IyM2Q0Mjg4MTRlMzkwNWMyODFiNmEyZTBiZGE0ZmNjOWE5YTYgbGVnYWN5LXRydW5rCisxMTUyMSAzZGY1YjlkODMzNWI3NzVhOTY0ZGVlNGE2MWJhYWYyNGExNTI2ZDNhIGxlZ2FjeS10cnVuaworMTE1MjIgZmI1YTVlYzJlYTFhYjAxYmY3NDkxMDhmZGRlNTJmOTdhMmI2OWI3MSBsZWdhY3ktdHJ1bmsKKzExNTIzIGQ1MzIzN2JjZjE1Zjc3NDIxNTQxOGY3M2Y4YmZjMmI2MGI3ODU4MmYgbGVnYWN5LXRydW5rCisxMTUyNCA2NTEzOTcxOWI2NTYwNTllNTJjNzY5YjJhNWZjODgwODg2ZGRmNzAyIGxlZ2FjeS10cnVuaworMTE1MjYgYjNlZWNkZTM2NzllZGMxMzMwMzQwMDNkOGZlNDU0Mzc0ZjEzYjgwZCBsZWdhY3ktdHJ1bmsKKzExNTI3IGQzYzA2NzkzNGM2M2NiZjc2ZWY3OTYyY2E2ODgzYmI2NmY5Y2UzMDkgbGVnYWN5LXRydW5rCisxMTUyOCBkMjcyMmE0Y2JkOWM2MTI4YjUyMTY4NjY4ZjhmNWI4ZWRhY2QyNjUxIGxlZ2FjeS10cnVuaworMTE1MjkgYmFmOWE1YTcxZDJkNmRkZjY4ODE1YzRkNWFkN2Y5MzRiMDRiZDRmZiBsZWdhY3ktdHJ1bmsKKzExNTMwIDk5NjI4MzNkNDlmZGRiOTMyNjIxOTdhMTVjMGVkOGQzZWM2NWIzZGUgbGVnYWN5LXRydW5rCisxMTUzMSAxODJjOWNiZGYwNTNkZTNhODMyZDA4MDUxNGI0NTlhMjhlNTZjMTE2IGxlZ2FjeS10cnVuaworMTE1MzIgMTFiNmYwYzllYWM5OThjYThmNmM4M2NlZDNkNDBlN2I1Y2Q1NWRhMCBsZWdhY3ktdHJ1bmsKKzExNTMzIDE4Njk3ZjU5ZmQ0OGI3N2JkNTQ2ZWE5MWY5NmRmYjQzMGU3OWVmOWYgbGVnYWN5LXRydW5rCisxMTUzNCA2MmI5NGNjOThkZTQ1OWU3YTgwMzk3MWQxNDc0MmRhNWQ2MTg1MWJhIGxlZ2FjeS10cnVuaworMTE1MzUgMjRkMGE1N2FlMjM0ZGM4MzU3NjgzZTFlMWM0MzFlNTRiODk1ZGQwOCBsZWdhY3ktdHJ1bmsKKzExNTM2IGYwYzhiOGEzM2YwOGVhZTA4ZDNmZjI5ZDE1ZTBlMjA4N2Q4ZTk3ZTggbGVnYWN5LXRydW5rCisxMTUzNyBlYmMwYzEyZGJkNzhkNjBkOGZlMDhkODkyOTZiMDliMmMxMzk1NWJiIGxlZ2FjeS10cnVuaworMTE1MzggOGQxOGQ0OTZhZjg3MDlmYzNhYWIwY2VlOTYyZmQ2YzAxN2UyYmJlMyBsZWdhY3ktdHJ1bmsKKzExNTM5IDlmZDkxNWQyM2NmYTAzYzAwZDNlODA4MmQyMmMxNWYzNDNiNjNhOTYgbGVnYWN5LXRydW5rCisxMTU0MCBkOGVkZTAyMGRmZWIyOTRiNzVhZTdkYzY5NWFiYTkyMzcwYzJhYjMwIGxlZ2FjeS10cnVuaworMTE1NDEgZDQzN2I2NjgzZTI0MTc2ZWFiNzViM2RhMDdkYjg1OTlkMmI0MzRmNCBsZWdhY3ktdHJ1bmsKKzExNTQyIGFkNmJjMmM1ZDM1M2VlZGNiMDIzNmVkYjY3ZWNhYzk3ZDRlYmMzMjEgbGVnYWN5LXRydW5rCisxMTU0MyA5MWQwODYwNzQ2ZmMyNzMzYmQyMGExNDg2YzkwMTMwNmY0NjZkYzMzIGxlZ2FjeS10cnVuaworMTE1NDQgNmQyZWI1OGYwNDE4NjgwODZkOTg3MWNkMWM0YWY3ZDg4NzNmMzYwMyBsZWdhY3ktdHJ1bmsKKzExNTQ1IDExOGY5ZjczYWJlOTE5ZTkyZWI5YjNkZTYyZmY4NTQ3YzIyNDlkYjIgbGVnYWN5LXRydW5rCisxMTU0NiBjYmY3MmIyMjEwYWVhOWVlNzgzMjYyODc5OWJkN2Q0MzdhODJmOWM0IGxlZ2FjeS10cnVuaworMTE1NDcgZjNlYmRiMjI3NGU0YTgyOWY3ZjdjZDJmYjAxN2RhMzVmODAxMDBiNiBsZWdhY3ktdHJ1bmsKKzExNTQ4IDgzOWM2NjIyZDE1YTA3MjEwYzc2ZDU5N2M1M2MyYWQyNDMxNmZlMTAgbGVnYWN5LXRydW5rCisxMTU0OSA5MDViZmFjMGZhMzJlMDU2OTU3ZGZiN2QyMGRhZjlhNTI1M2NjYmY0IGxlZ2FjeS10cnVuaworMTE1NTAgMTZmODM5N2Q4ZjA0OGRlNjRhMWI4ZDBlMjBhYTkxZGI0ODA4NjUwNSBsZWdhY3ktdHJ1bmsKKzExNTUxIGRhYmIyYjZhM2E4MWViMGZlOGM0NGU0NTYxN2RmMjYxN2YyNjQwNWIgbGVnYWN5LXRydW5rCisxMTU1MiA1YmM2NGVmYzY1ZTAyOTg0MWMzMzVmNzI2NzhkNTU2ZjZhNjE0NzM5IGxlZ2FjeS10cnVuaworMTE1NTMgMDUxODFlMTA0NDIwYWMwM2Y1MDYxNzkyZWU0ODJmYzFkY2RmZTYwYyBsZWdhY3ktdHJ1bmsKKzExNTU0IDAyNmUxMjM2MjQzZTZjYmFlMWNiN2JjZmIwNTRhMjU2ODlhYTJjZjUgbGVnYWN5LXRydW5rCisxMTU1NSAxOWVjNTM0Njk0YWRkZWI4NGRmZWUyMTRkYmI1ZGQ2ZmJkNzlkYjhiIGxlZ2FjeS10cnVuaworMTE1NTYgODY5NTJiZGFiYjIxZTExZmVjOTFjMzFjMTVjOTQ1YzYxODIyYWVhNyBsZWdhY3ktdHJ1bmsKKzExNTU3IDVjMWUxZmIzNzJkZTA2ZWUyODFhNmNmMTBmZTI0ZTNiNGQyMDMwMjcgbGVnYWN5LXRydW5rCisxMTU1OCAwODc2YjZjMjQwMDdkODY2NmRlYTI3NzZkYjI2N2IwZTM2YTY4Mzc4IGxlZ2FjeS10cnVuaworMTE1NTkgMDA4OGFkOWQ5NmMzODZhYzQyYmM1NDYwZmUyY2JhMDA4YjdlYjBlMyBsZWdhY3ktdHJ1bmsKKzExNTYwIDU0MDFjNzE0MjhlZWZiMGU2MmE2ODE3MzdjYzdhM2RhOTc0MjE1MDkgbGVnYWN5LXRydW5rCisxMTU2MSAwNzgxYTQ5OTkwNTE1YzE2Mjk4NmZkYmMyOGY3OTY1OGJkMzdkYWI3IGxlZ2FjeS10cnVuaworMTE1NjIgMjU3MDYzYWFlMDAwZjNmNTk4N2M2MjZhZWM0YmFjOGM0Y2I1N2NiNiBsZWdhY3ktdHJ1bmsKKzExNTYzIDM0MzNhOWViZGY0MzllNmQxOGM5ZjIyZmJhMmZlZTc5NTlkZTllOTcgbGVnYWN5LXRydW5rCisxMTU2NCBhNWUzYzY5NWQyZmJlMzc3ZmVmNGEyOGFkZmE0MzUwZTUxMDhhNmNhIGxlZ2FjeS10cnVuaworMTE1NjUgYjI1ZDVhNjJlMzU3NjNkNTg4M2U5MGQxY2I5ZTNiMTgxMjQ5MDAzZSBsZWdhY3ktdHJ1bmsKKzExNTY2IGViYzhjYjA3NzAzZjg5ZDQ2NTJkNjk0NjdiNTg0NGU3ZTRkNzhmZDEgbGVnYWN5LXRydW5rCisxMTU2NyBjMmNiZTlhY2ZjOGU1ODgzMGNkOWFmN2IyMzkzMzRjNzlkZGU1NzJiIGxlZ2FjeS10cnVuaworMTE1NjggMDE4OGQ2MjU5NjlhYjMxM2ZkNmMyYjQzZGE4MjJmM2M2MzBjOTM1YiBsZWdhY3ktdHJ1bmsKKzExNTY5IDljZWE2YjYxNzgzOGU1NDEyZjUzYWE3MDY1YzJhYmMxMzM5MTVmN2UgbGVnYWN5LXRydW5rCisxMTU3MCA2MThmYjgzMGJlNjU4Y2ZiNDQzNzk5ZDhkMTFkYWU0ODAyMDllOTU5IGxlZ2FjeS10cnVuaworMTE1NzEgYTk4MmIxN2U5MzhmNTI5ZGZhMDRjMzRkODE2NWYzNDY0ZDE4MmMyYSBsZWdhY3ktdHJ1bmsKKzExNTcyIDg1MGFjZjI5OWVhMjNkYmIxY2FkMWVmYjEwNjkxM2EzNTQwZmJkN2UgbGVnYWN5LXRydW5rCisxMTU3MyBjMDYyNzIzODRmMTE4YWZlMGRjNjI5MWVhZDAzY2ZjNjZhODNkM2I2IGxlZ2FjeS10cnVuaworMTE1NzQgYzQ0N2QxYWQ3ODUxN2QzNThmZmY3YmQ3NDBiOTE0MjkzYjE1OWJjNyBsZWdhY3ktdHJ1bmsKKzExNTc1IDE4ZjgxZmFmNGJkOTdiNDFmMTdhYjhmZjA1MWE4Njc4ZjM0YTZiYmMgbGVnYWN5LXRydW5rCisxMTU3NiA0ZDJjYjIxMmM4ZDE1ODU0OTM3NzViODcxZjhhM2JjNzJhOTYwODNmIGxlZ2FjeS10cnVuaworMTE1NzcgZTQ5YjVmZWQ3NDRjNGZmNzcxYzk4YjVlYjcyZDQ5NzhkZTVhYmFiMyBsZWdhY3ktdHJ1bmsKKzExNTc4IGVkYWM4NjBhZDcxMGI1YWEyOTIxMGVlNGM5ZDcyNDBmMDQ4MGE1Y2QgbGVnYWN5LXRydW5rCisxMTU3OSA2Yjg1NDkzMDUyZThhMzZmODJlNTgyNDVjMzgyY2JmY2Y2NDkwNDQxIGxlZ2FjeS10cnVuaworMTE1ODAgYmM0MWU4NmM5MzhjZjRiOWU3MGFlNWE0MmMwNDJkZTU3ODI0MWFjYyBsZWdhY3ktdHJ1bmsKKzExNTgxIDNmNGJlN2UyOGQ1Y2U3ODUxMTRjZGYyYjdkNTk5OTBjZmI3NDFmMDEgbGVnYWN5LXRydW5rCisxMTU4MiBlOTQzZjljMDk5MDFhZDgxOGJlMjNjYWJlYzhjNWQ3NzE2YjA4Mzc2IGxlZ2FjeS10cnVuaworMTE1ODMgZDRlYjM1YzZlNmVmYmU3MGFmZjU0ZjI2MTU5NDE0NDUyNWNlZWRmZCBsZWdhY3ktdHJ1bmsKKzExNTg0IGFjZmIzYTY0OGRjYWFiZmE2MzIyYmFhMGE3NmVmYjk2M2RiMGMxODggbGVnYWN5LXRydW5rCisxMTU4NSA3ZTZjNGY1N2FmNjk5MjBhNThkNGFjY2ZlZjNiOWU4NGZhZTJmYWIyIGxlZ2FjeS10cnVuaworMTE1ODYgZTcxZjgzOTIyMzkyMDRhNDVkNTM4Y2Q1NzI2N2E4NDMyODU2Yjg2NyBsZWdhY3ktdHJ1bmsKKzExNTg3IDI2ZjViZmQ3MTVhNDY1NmU4OWFjZTdmYmU3ZTI0ZDEwMWFmZDI3NmYgbGVnYWN5LXRydW5rCisxMTU4OCA1NTY5MjdkODY4ZDhkODg4MmI2NTIzY2Q2OWVmZWM1MjgzZmI0NzA3IGxlZ2FjeS10cnVuaworMTE1ODkgMmUwN2YxYjI5OGUxNmRiODFmMzU5ZDE1ZjNjZDA3Nzc1Y2Q3MThmZCBsZWdhY3ktdHJ1bmsKKzExNTkwIDQ3MWM2YzIyMTg3OTllZTI3MDBhZDZkMjFkYjA2ZmVhMzcwMDFlMTMgbGVnYWN5LXRydW5rCisxMTU5MSAwMzEwZWUxNjQ5N2E4N2Q3MTkzY2MxNzEwODkxMmQ2Y2I1ZjRjY2JkIGxlZ2FjeS10cnVuaworMTE1OTIgNjM3ZmVjOGE3ZGQzZGFmZjE3YTdmNmI0NzYwMDJhYzdkOGVhY2EyNiBsZWdhY3ktdHJ1bmsKKzExNTkzIDIwODhmODAyNTNkYjA0ZjIxNGI1ZjJiMDU4M2FmYTVhNzRiNDA1ZmEgbGVnYWN5LXRydW5rCisxMTU5NCA0Mjc4NTYxYmQ1ZTg3ZjU5YTEzODc3N2ZmNDY0OTVkZTdhNjVkNWI1IGxlZ2FjeS10cnVuaworMTE1OTUgYjgyNmU1MGU5NTczZjRlMDk0MGM4MmNiZjY0YTExYmJiNjlkMzIzNyBsZWdhY3ktdHJ1bmsKKzExNTk2IDcyOGJiZWI5ZTRmOTY1NDcyZjg5MmIzMGUzZmZhNjAxNjU4NjY2MWQgbGVnYWN5LXRydW5rCisxMTU5NyA2ODdiNjZlNjUzZDYxNWEwOGZjMGEwZTkyMmM2NWIwNDAzN2E4MGRiIGxlZ2FjeS10cnVuaworMTE1OTggMzEzNTMxNmNkNjcwYjA4ZmE4Y2FhMTQ0OTNlN2JjZTM4MWQ0Y2IxOCBsZWdhY3ktdHJ1bmsKKzExNTk5IGYyMzk2ZDQzMDU2YjZjNmQxY2Q5NzY1YTM1Yzk2ZWMwN2M2ZjZhNWEgbGVnYWN5LXRydW5rCisxMTYwMCA3N2E5Yjg1Zjc2MmE3NjQ4YTc4YzI3M2VmZmZlYmU4ZjkyMTk2MDI2IGxlZ2FjeS10cnVuaworMTE2MDEgMmJiN2I2NjBmMDA3YmVmNzQzOWM2MGExMjk3MDQ4NmEzYzY4NTA2MiBsZWdhY3ktdHJ1bmsKKzExNjAyIDllYjJkNmY2ZmQzZjRjNzFjYTY3ZGFhZTE3NzBkYjk4NDllZDAzMjQgbGVnYWN5LXRydW5rCisxMTYwMyBjZTUyZTkyMmZiYjI2ZWJhYjUzOWI5NmYzNTIwOTRlOTFhNjUwNDI5IGxlZ2FjeS10cnVuaworMTE2MDQgMjRjYWQ0ZTBkYjhkZDM5YzMyNTQ5MGM1NWUzNzIyZTcyMTVjYzBhNiBsZWdhY3ktdHJ1bmsKKzExNjA1IGI1Mjg2NGM1ZTljOTQyM2E1M2QwYjJlY2QxZTkyZmU0YjdlNzQ2ZWIgbGVnYWN5LXRydW5rCisxMTYwNiA5ZTE3NDU2NzllNzE1MDAzYjJjY2JiYzA5YWI0NzMyZTlmZThlNTk4IGxlZ2FjeS10cnVuaworMTE2MDcgMDQyMGY1NDM0ZjQ0OTMyYWE2NjdkZmJhYzlmYmU0OTczMzE4ZWMyZSBsZWdhY3ktdHJ1bmsKKzExNjA4IGIwODQ1ZDA5ZmVkZjZmODE2NTIwODQ0NDc1MjQ0ZDRmNzdlZGY5YjIgbGVnYWN5LXRydW5rCisxMTYwOSA4MzY2MGNkYTNlM2YzOTcwMDVmODU2OTcxYWZhMmU2YjU5NDU4MWQwIGxlZ2FjeS10cnVuaworMTE2MTAgZGJhNzExNjI2YjQzMjQxYzVlODFlYzBiMzRiOTNmZjVjNDVlNzZlZSBsZWdhY3ktdHJ1bmsKKzExNjExIGQyMzdjODA4YTAxZTExMzE4ZDI1MTZkZDA5MjI4MGE1NjRkMzBhYWEgbGVnYWN5LXRydW5rCisxMTYxMiAyOTM4MGE0ZmEyMzA4OTAzMTYzYWI1ZmQxY2RhODU2OTZkNjY5MzMwIGxlZ2FjeS10cnVuaworMTE2MTMgZGIxNTQ3ZmQ0MGU0Njc1YjcyOGU1YjZjYTE5YWRmZWZmYzZjZmVmZiBsZWdhY3ktdHJ1bmsKKzExNjE0IDRjYzEwOTA4ZTZmNDVmMDBmZTgyODczODhhNzAxNWRlZDlkYTMyNmYgbGVnYWN5LXRydW5rCisxMTYxNSAxMjEzNjU0MmUxNTU0OWIxZTNmZGEyM2JhNDRhYTNkYThjZTJkN2FhIGxlZ2FjeS10cnVuaworMTE2MTYgNDQ4Njg2MmQ1Y2JkZDBmYzA1ZGVmN2IxZjQ1MjE5OWY0NjdlOGQ4NCBsZWdhY3ktdHJ1bmsKKzExNjE3IDU1YzE4MTFiYjhlZmJhMjliNTMyMjNkNzJkMDhkNmM1OTUyYThjMTIgbGVnYWN5LXRydW5rCisxMTYxOCBmZGVlZjE3N2Y1MzZhZDk2Y2EyYjgwYWU1NzliNTUxZmI0MTczMzJjIGxlZ2FjeS10cnVuaworMTE2MTkgODZiNzEyOWQ4ZDA4YmQ5NzdmMDIwMzY2YmYyYTJhOWJlZTIyMThkNSBsZWdhY3ktdHJ1bmsKKzExNjIwIDE3ZDBjNTFlMDg4NzAxOTI2MTJhN2E0Mjg0YzkxYzk3NDM3ZmIzYjUgbGVnYWN5LXRydW5rCisxMTYyMSBiMTY2MzNiMjJlNmFlMTcwYjhiNzZjYmM3NjRiYjUxOGIyN2EwY2U5IGxlZ2FjeS10cnVuaworMTE2MjIgNmNkOTMzMjJiODEwYjZmNTNmYTE0NjhmZTBiZTEwMzY4NjBlNWIwMiBsZWdhY3ktdHJ1bmsKKzExNjIzIDNkMzBkZDU0NDQ1NjIxZDA3NGVkMWM2MjMyNmJjZjRkOWZhNzhlZTEgbGVnYWN5LXRydW5rCisxMTYyNCBmNDEyOWQ1MmRmYzVhZGYzZjk1YzY4YzNmN2JhYWE1MmUwNzFlNDRkIGxlZ2FjeS10cnVuaworMTE2MjUgYmE0MDA2NWUzOTlmMDQwNDEzOWRlYWYwYzNlZDVmNzcxM2Y3M2JmMiBsZWdhY3ktdHJ1bmsKKzExNjI2IDlmMTAyM2M4OGY1NzA2NTNiMDg5NDU1YWY2MjA2ZGI5ZGZlY2E1YjAgbGVnYWN5LXRydW5rCisxMTYyNyBiMGZhMmZjMTJkZmIyOGNkODUyODJjMWNiOTRkNmYyYjAwZmYwNTBlIGxlZ2FjeS10cnVuaworMTE2MjggNmNiZjA1Njk2MTIwZDA5YjE1MTZkZmQ1ZWM3YmMzM2RmYThiYzU1YiBsZWdhY3ktdHJ1bmsKKzExNjI5IGViYjAxMDg1ODc3MWFhYzdkMjk0NGZkMjRlOTI2Mjc2YjhmODc3NjAgbGVnYWN5LXRydW5rCisxMTYzMCAwNjYwYmU2ZTY3OTE0YjljZjFhNmUzYThmNGU3NzRkNjBhMWM2YWVkIGxlZ2FjeS10cnVuaworMTE2MzEgODhiMjIxMDkwMDdjMWNiOTE4ZDVlY2IyZTM1ODJkNWUzMWJiZjFhYSBsZWdhY3ktdHJ1bmsKKzExNjMyIDVhZjRiMTAyMTQ0YWU1ZDkwNGE0OTk1ZmQ5MmU0ZDc2OTQ3ZGI5ZmEgbGVnYWN5LXRydW5rCisxMTYzMyBlMWI3MTBlMzBhY2Y3M2M1YjU5YThkYjEwZGU5MzQyYjgwMWYzN2VjIGxlZ2FjeS10cnVuaworMTE2MzQgMDMyOWQ0MTllNTA2MTgyZTlhODA4ZWNlMWMzMDdlZWY3MTdkZTUyMCBsZWdhY3ktdHJ1bmsKKzExNjM1IGRlZWIzY2UyMGFjZjFhODViMTBjODYwNzBhY2IxMWI2MjljYzFmN2MgbGVnYWN5LXRydW5rCisxMTYzNiBmNWQyNjVkNWU5ZGMwMmFkYmZjYTE1Zjc2YzA2NDA3MTQyN2NmOTM5IGxlZ2FjeS10cnVuaworMTE2MzcgOGUzYjZkNmFmZTRjYzFiNTUxYzM4YmZkZTk4MzljZjI5M2QxNTU3NiBsZWdhY3ktdHJ1bmsKKzExNjM4IDg4MWI4NjM5OGMyMDQzZjVhMjMzNmU2ZGE3YzNhY2IwNzVhNTVmN2UgbGVnYWN5LXRydW5rCisxMTYzOSA5OGRjNjc1ZDA5MTNiNmIzM2JiODgwZmIxODU5Mzc4NzkxZWFhNjgwIGxlZ2FjeS10cnVuaworMTE2NDAgN2ZhYmJiYjdhZDlhN2ExZDQ3ODc3YWRlNjkwOWMxZGEyZTM0MjdiMiBsZWdhY3ktdHJ1bmsKKzExNjQxIDUyMDU4M2JkZjBiMDI5MGNlOThhMjUyOWYwOGFiMGNkOTU1MmI1YWEgbGVnYWN5LXRydW5rCisxMTY0MiBlNTc4NDM5Yjk4MWY4NTYxNDRiNDMyMzRhMmMwZTU5ZTRhYmEzODQxIGxlZ2FjeS10cnVuaworMTE2NDMgYzQ2MDIyMzY0MDllOGI5ZTA0OTg2MTAxMDBlYzMyYzNhZmI3NTBmYyBsZWdhY3ktdHJ1bmsKKzExNjQ0IDZlY2IyNDhlNjdmZjJjMGE1NDdkMTBkZDgyZDg2ZmVkOTYxMWQxN2YgbGVnYWN5LXRydW5rCisxMTY0NSBlNjAwNTUyMTZiOGY5ZmM5MDNkOTU5ODVmNGI4MDlhNzE0YjBiNmQ3IGxlZ2FjeS10cnVuaworMTE2NDYgMWMyMmNiZmI0YTFlMjA2YTdjYjAxMTk5YTViYWNhZGEyOWE2OWVmOCBsZWdhY3ktdHJ1bmsKKzExNjQ3IDRhZjg3Y2VkOWYzYWFiNmQ5ZmRjMzhhZGQ2NDM0MTRjZjNmMjg5YzQgbGVnYWN5LXRydW5rCisxMTY0OCA0ZmI0YjAwNzU1YjVlMDZkNzdlOGIwMjYzZWZjMzQwZDJjYTJlZWU3IGxlZ2FjeS10cnVuaworMTE2NDkgYTMwNzY1NmM3Nzg4OTc2YzQ0NGZkMWI1MGM3NWRhNDJhZjRiYjkwMCBsZWdhY3ktdHJ1bmsKKzExNjUwIDQ2ODMwZTVhMDM1MWZhZDBkNDEzN2RlYTNlNDU1YzYyODljMTY3ZGQgbGVnYWN5LXRydW5rCisxMTY1MSAxZThmMzEwNzQ1NDc1MTAyNzE3YTM1ZWUzOWM2MjIzZjZmMGJhMjBlIGxlZ2FjeS10cnVuaworMTE2NTIgMzUyOWJiNGNhZWZkNmUwYTVlNWRiMWNmN2MxYjZiM2M0ZDY3NzdjNCBsZWdhY3ktdHJ1bmsKKzExNjUzIGRhZjFkNjFiOTYxMWQ3YTI3MzEyOTcwMjRkY2JiZTI3ODQyNjVjODYgbGVnYWN5LXRydW5rCisxMTY1NCA5ZjcyOTFmNTUwMjZkNGQ1NWM0MjViOTNkMTFkYjIzYjBlZmYzODAwIGxlZ2FjeS10cnVuaworMTE2NTUgYjI2MzBhMjlmZWZkYjhiN2Y0NWQ4YzllOTA0NTUzZDRjYTU3NjcyMCBsZWdhY3ktdHJ1bmsKKzExNjU2IGYyYjk4Y2JjNTAzMDE4OGFhMmU0NWRhZDhlOGZhOWQ3ZWU5Yjg2ZGEgbGVnYWN5LXRydW5rCisxMTY1NyBmMGE5MmMwYTExNWVjZmNkZDU1NWYwZjE5YmMzOTY3MzhlYWUxOTA3IGxlZ2FjeS10cnVuaworMTE2NTggMWU0M2RmN2Q4YmUzZmZlNTdlMDczOGIzMGQxMzgxODI4YTAwYzgyZSBsZWdhY3ktdHJ1bmsKKzExNjU5IGUyZGFhNzgzYmQ0NzI4ZWEwZTgzMzg2MjA5NjVmMzMwY2ZkYjBhMjMgbGVnYWN5LXRydW5rCisxMTY2MCAwYTA4NWQ3MzFjMWM3OWE4ZjMyODU2OTQwY2M1MmZmZWNiMTRjMjhjIGxlZ2FjeS10cnVuaworMTE2NjEgZDA4NjQxNGFkZTZlYzQ5ZTkzNmEzOWMyOWY1MDNmMWYwY2Q4MDFhYyBsZWdhY3ktdHJ1bmsKKzExNjYyIGQzZWY0ZDEwZmI5NTRjOGU4NTEzMzQyNTBmYWM0Y2IzNWI5Y2I0MmQgbGVnYWN5LXRydW5rCisxMTY2MyA2YTU1OWRjNzhjOTEzZjhkNjY5M2U3NTQ1YjA5NmUyNjAzYWE2MjNkIGxlZ2FjeS10cnVuaworMTE2NjQgYjBiYTMxOTY3NzE5NTgyM2Q4NTBmZDcwNDA5NmJjNzZjMjMxZDZiMCBsZWdhY3ktdHJ1bmsKKzExNjY1IDc1YTgwNDdkZmMxMTAzYWZiMDFkN2FjY2VlNTMyZDA4ZTgyMGM1NTAgbGVnYWN5LXRydW5rCisxMTY2NiA2YmUzNDNkYTI5MTQ0YTM5MjA4MjdiMDc5NmI5MmY3ZWFlNmFhOTY4IGxlZ2FjeS10cnVuaworMTE2NjcgYzAwYjI3MzA4NWJlZDcwYWJiYTA3MjVjYmJiZjNmYzYyMTJmNTQ1NCBsZWdhY3ktdHJ1bmsKKzExNjY4IDNjZTUxMWJhNDI0MjI2MTMyMTA3NDIwYjdmMDcyZWZhN2Q5ZTYyMDEgbGVnYWN5LXRydW5rCisxMTY2OSA5ZmQyYmJkNDQ1NGUzNjc4YjFjZDZmMTEwNTgwZDlhOGM4MmFjMmYyIGxlZ2FjeS10cnVuaworMTE2NzAgMzJiMTk0OTFlNzBiNWE3OWQ1NTg5OWY5MTYwYTZmNjg3ZjlkMTcxYiBsZWdhY3ktdHJ1bmsKKzExNjcxIDlhODhmZTIwNGQ5NWNkODU2N2FjYzk5MjgyMzg0YjEwMzBjZGZhMGIgbGVnYWN5LXRydW5rCisxMTY3MiA2OGFhZDhlY2ZkNzBlY2FhYTk0MTVmNGMxNmQ5MGMyYjliNGI0M2Q1IGxlZ2FjeS10cnVuaworMTE2NzMgNmZjOTIwYzkwNjQwOGNjMmU2NzU5MTk5MWNjMGRlMzA0YTQ4M2E3OCBsZWdhY3ktdHJ1bmsKKzExNjc0IDk1OGUxZmFhMzhhOTEwNGZkOGI4ODY1MzE3OTg0ZjUzNTY1OTExMDQgbGVnYWN5LXRydW5rCisxMTY3NSAwNjI1Yjk5NThiMjNiZjYyYWYyODgxODUzMjBlZTBmMzNkNTY0YTI4IGxlZ2FjeS10cnVuaworMTE2NzYgNTNlZDZiY2QwNjQxZGYzN2ViMmY4ZWU4ZTZmMzUyNzA3NThhMzI0YSBsZWdhY3ktdHJ1bmsKKzExNjc3IDI1M2M5OTNlZjkzNmFkNWExZjkzYzc4NTQyZTEzMWE0NjcxNmQ0YjAgbGVnYWN5LXRydW5rCisxMTY3OCBmYTg5M2Q1NTc5NGVjZDk4NjYzODQ4ODEwMDIzOWU4ZDMxYzg2OTc1IGxlZ2FjeS10cnVuaworMTE2NzkgZTc1ZTIyOGY4Mzk1ZTdlYzUwZjZkMDU2YzE1ZmZhYjgxMDFhYzllNyBsZWdhY3ktdHJ1bmsKKzExNjgwIDhlOTUyYmRkMGZhMzcwNDc0OGIwODY2MmQxYjI4ZGFmMGI1ZWVjNDQgbGVnYWN5LXRydW5rCisxMTY4MSBmMjY0ZTU3ZDY1N2RkMzgwNjAzNTYxZDNkMWRkODAwMTBmMmM5ZTIyIGxlZ2FjeS10cnVuaworMTE2ODIgYTg2YTcxYmViZDY0MDdhMmNiOGI3YzkzOTI3YTJhMDM0NzM1ZTBlNSBsZWdhY3ktdHJ1bmsKKzExNjgzIGFhNzNkZWUyMzA5MzA3NTc3NmU0ZWIzZGRjOGE2MzQ5NTI4YjdlZTkgbGVnYWN5LXRydW5rCisxMTY4NCBlMjFkMDc5OGMwMmFhYWRlMjNlMjFkNTQ0YzMwOWI2NWQ4ODkwZDUyIGxlZ2FjeS10cnVuaworMTE2ODUgYTE2NzJlNzc1ZjMzMWVjYzM0NjU2Yjg1Y2Q5ZGFhM2RmNjRiYTBhNyBsZWdhY3ktdHJ1bmsKKzExNjg2IDVmZTRkNTk0YTBmMjE5MjQ2YmFmMjg4NTliYTMyYzliZTQ3MDZmMGIgbGVnYWN5LXRydW5rCisxMTY4NyAzZTBjODdiZGI1ODg5Njk0ODY1YjQ3ZGFkOGIxZTFlMTMwYjZmMGRlIGxlZ2FjeS10cnVuaworMTE2ODggNGZlOGE3NjcwYzBkMmEzMDg3ODIyMGI0NmM4OTFiYWQ2Y2U3NTVhZCBsZWdhY3ktdHJ1bmsKKzExNjg5IGFjNmMyOWQxZjEwYzljMmY5MDNlMDY0YTZjNTBmMWMyYmQzYTc5NTkgbGVnYWN5LXRydW5rCisxMTY5MCAwMmQ4ZjcyMTQwOWFiZjRmYWI4NDExNTNhYzM4YzRmOGJlYWU1MDg3IGxlZ2FjeS10cnVuaworMTE2OTEgNGMyMDQ1NjE1OWViZGJiMjgxMjY3ZjQ0ZmNjYmZkZTgyZDQ3ZGIzMiBsZWdhY3ktdHJ1bmsKKzExNjkyIDE5NWU3NDhjZjY5NmE2OTZmOWZkYWQ2ZTdkOGIyNmEyNmMyMDhmZmMgbGVnYWN5LXRydW5rCisxMTY5MyAzMzk4NDg0MTIxMWQ1YWMxNjAyNDcyY2E3MTdjMGQ1MzNkMDEyODg0IGxlZ2FjeS10cnVuaworMTE2OTQgNDdjY2RiN2ZiNjIzYWU5YWRmYmQyODE3NGQ1ZDM0NDNmZjg2ODZkMCBsZWdhY3ktdHJ1bmsKKzExNjk1IDU4ZWNlZDUzMDlhMDZiNzdkZWE1YzAyNjZmZDUyZjExODViOGY1ZmIgbGVnYWN5LXRydW5rCisxMTY5NiBiMjQwNDY3MjBkNTYwNDVlNDkxMzIzYzk0Njc0MDFlODM3MTc5YjBlIGxlZ2FjeS10cnVuaworMTE2OTcgZDU3OGNkNjQ3OTZkMTI2NTg1ZmEwZjk1NTlmOTZhNTg2YTFkYmQzZSBsZWdhY3ktdHJ1bmsKKzExNjk4IGViODAzZTE5MTg4N2U2ZWQyMGQ0NzQwYmJkYTkwNGE1OTk2ODU3YjcgbGVnYWN5LXRydW5rCisxMTY5OSAxNGFkMDJkMDZlMzJkODg0MjYyMWEwMTAxMGQxOGU2MjA2NjZkY2U4IGxlZ2FjeS10cnVuaworMTE3MDAgMDdkYWU2ZmRhZTc5NDEzZGY5MmJmMzIzMGY5M2VjMTc3NjkwZjQzMSBsZWdhY3ktdHJ1bmsKKzExNzAxIDg4NTA1MjY5YjQwMzdkZWVhMjgzZDdiNmNjM2ZmNzM2NTliZWFmYTAgbGVnYWN5LXRydW5rCisxMTcwMiAwODU4ZjExYzg4ZDcyNThjMTYzMzlmMTViY2I5YTViYjBkNGI2ZGFlIGxlZ2FjeS10cnVuaworMTE3MDMgYzFkYzE5ZjlhZDYwOGU2YjRiMWE4ZGE2MzE3MThmNGEyMTllNjViNCBsZWdhY3ktdHJ1bmsKKzExNzA0IDY3MDk2N2JlNmRiM2NlYjMwZGYyNzFhYzg0MTI3ZmIxNjFhZmRjNmIgbGVnYWN5LXRydW5rCisxMTcwNSA4MTQ4ZDQ0Zjk5MDNkZTJmZDhkMjJhZTlhYzJiN2NkYzBhY2I3NjJlIGxlZ2FjeS10cnVuaworMTE3MDYgZDNhZjMxMGYyMzBjYjE1NmM5NjJiODE4ZGYyODRiNWM2NDNjNjFmZCBsZWdhY3ktdHJ1bmsKKzExNzA3IDcwZTQ5ZjcxNTk1NzJmMTM3OTZhOWNkMzViMDk2OWU4MjZmNmFjNzcgbGVnYWN5LXRydW5rCisxMTcwOCBmMTcyZDQ3NGM1YTkwNGE4ZDUzMWI4YWQwMzE1NjJiZTQwNzJjZTJmIGxlZ2FjeS10cnVuaworMTE3MDkgYmUzZDg0ZmYyOWY5YTk1M2FkMDhmOTdhMWQzYTBiNzYyMGEzODY5YyBsZWdhY3ktdHJ1bmsKKzExNzEwIDg5ZDkxNmRmNDc5YjE1YjExYWM2MjNhYzc0YzM5NWJkNjE1NGMzOWQgbGVnYWN5LXRydW5rCisxMTcxMSBjMjU5YzNjNGQwY2NmOWJjMzllNjA5OWZhY2I2ZGI2OTliYzY2NzI1IGxlZ2FjeS10cnVuaworMTE3MTIgMTk5NWNkYmUzMzg0NmU0NzcwMjRlNjk2Nzk5N2NhYTM2MzQ2NmIzZiBsZWdhY3ktdHJ1bmsKKzExNzEzIDkzNjk5MTc5YTUwZjJmNGFjOTJlZmZhNGQ3ZTUzMmNiYjY3YWMzNGMgbGVnYWN5LXRydW5rCisxMTcxNCA0NGZmMWFjNTI5NWIzN2Q2ZDVkZDYyYmMxYWE3MzAzNGQ1YzhlYjI3IGxlZ2FjeS10cnVuaworMTE3MTUgYTRlODIzMzE1Njk5MDIxODNjNmFkZjRmYzgyMTM5YzdjZjAxMGY1ZCBsZWdhY3ktdHJ1bmsKKzExNzE2IDI5OTlmMWQ5MDQyOTk2Mjg5YTYwZTI1YTQ1YzkwYzY0YTgwMDAzMzIgbGVnYWN5LXRydW5rCisxMTcxNyA1NjIxY2Y5YjA5ZDYzMjBiMzZmMDUyMGVjNDM5NGZmYzQ1OGU3Y2VhIGxlZ2FjeS10cnVuaworMTE3MTggM2M5ZmVjNTdiODU4YTY0ZjA3OWVlNTg2MmNjYzc1NmE3YTI1NjYxZSBsZWdhY3ktdHJ1bmsKKzExNzE5IDk4NDhmNDIzNDNjOTk4ZjRhOTNmMTViYTlmNTlmNDY0YjZhYzQwYmYgbGVnYWN5LXRydW5rCisxMTcyMCBkYzFkNDQ1ZjIzNzE4NGQ1YzZkMTIyYjVlYzY3NjM2ZDhkOTYzNjdjIGxlZ2FjeS10cnVuaworMTE3MjEgNzNkZjI0ZjZiY2NmMzNhZGY3NDg0N2MwNTNmZTVmZWRjMmE1ZGM2OCBsZWdhY3ktdHJ1bmsKKzExNzIyIGNlOGYzY2VmNmFlZDJiZmY1YzQ0MWZmNDU5Mjg4Mjk5N2QyMzJmZTIgbGVnYWN5LXRydW5rCisxMTcyMyAyNWRhMDliNDI3YjQ3NWY0NDY1NDZmMWQxMDFlZDkzZTk3NDViN2FmIGxlZ2FjeS10cnVuaworMTE3MjQgNzk0MDBkMDc4ZjFiMDNmYzVmOTBhNjViN2EzNmM0ZGU5MGNhNTllNCBsZWdhY3ktdHJ1bmsKKzExNzI1IGEwM2M2ZmQ4MWQ0ZDZkMWFiMzQ5ZGUzMWRlYWVhMGE4ZjE3NDU3MjggbGVnYWN5LXRydW5rCisxMTcyNiAyZTM3MTJlODQ3ODFmYjEyNDY2NTFmNTVjZmRmMDU5OWE2ZWJhMWUwIGxlZ2FjeS10cnVuaworMTE3MjcgMzhjMDdiYTRiOGU0MTFmODZjYzJmNGNjNmYwMTlmMDI0MGQ5NGFiMiBsZWdhY3ktdHJ1bmsKKzExNzI4IDA4YjhkYTZkNGNhNmEwNzI5MGVjYmFiZDFiZTkzY2U1YWY1ZjA5M2UgbGVnYWN5LXRydW5rCisxMTcyOSA0YmZkMjlkNTNiOTUwYzE3YTdhMmE2ODE2MDdlMTgxNzYyMTQwM2I0IGxlZ2FjeS10cnVuaworMTE3MzAgYjE4ZDFmOTFkNjY0ODMyNDk2N2Y0NWE0YmM0ZTM3MjVlM2VlNjBlYyBsZWdhY3ktdHJ1bmsKKzExNzMxIDQxZjgzYzcyZTA5ODRjOTE3ODk3ZDFlNjgwNWMzYjA5YTMzNzE1MjYgbGVnYWN5LXRydW5rCisxMTczMiBkNzI1MmE1YjdlMWU3YWQ1ZmE4MjVmZTZhNjkyZDFiM2QwNDI1YWFkIGxlZ2FjeS10cnVuaworMTE3MzMgMzljNDEyMjBmN2VkNDZmMjM2OWM3MWM3MGNlZjVkODVlYjhjNDAyYyBsZWdhY3ktdHJ1bmsKKzExNzM0IGRkODQ0M2JkNDQ3NDBjN2E5ZjkxMmZjYmRkM2FkNjY4MjYyNTAwODggbGVnYWN5LXRydW5rCisxMTczNSA0YzRjZWM1NGJhNjM0ZGVmNDFiNDhjNTM2NTY2MWY5N2ZjMzQ1MDAxIGxlZ2FjeS10cnVuaworMTE3MzYgYjU1ZGIwOGRmZjdiZjI1OTI3YTJlNzhjYjU1OWY4ZGM5ZGNlYTMwOCBsZWdhY3ktdHJ1bmsKKzExNzM3IDIyOTQ3NWQyOTUxZjcwNTkxZTFmMDE3ZTAyZjdhNjUyY2E2YWI2NGQgbGVnYWN5LXRydW5rCisxMTczOCBlMjNlYzI0MDMxNTcyNDdiM2RkNTliOGU5ZDJmMjFmMjA0Yzg2YTdmIGxlZ2FjeS10cnVuaworMTE3MzkgNzEwZGExMGRlZTlkYjM0YTBlNGQxMTE4N2E4Zjk5NTk1MmZlMTk5YSBsZWdhY3ktdHJ1bmsKKzExNzQwIDA0ODAwMmYyN2MxZDhiY2E1YTkzYzFkYWJkOTI3NjQ0MDBkNjRhMTUgbGVnYWN5LXRydW5rCisxMTc0MSAxNTlmOWU3NDY3NTQ5NDcxMDVlN2I3OTE0NmJkMjMzZTcyM2M4NmI4IGxlZ2FjeS10cnVuaworMTE3NDIgOGE4ODVmM2E1ZjQ2YWNlNTQ1NmM2NGU3MDhhMzM2ZDdmNGU3NTljMCBsZWdhY3ktdHJ1bmsKKzExNzQzIDFjNGJhMGUyZjhlNzQzYjYxNmI5ZmQ3NTAyZTdlNjUzYjE3NmMxMGIgbGVnYWN5LXRydW5rCisxMTc0NCBiNDg3MmJjOGQ5ZWY3Mzg2MzRmMGEyNjlhYmI5MmNlZGQyNThhYjEwIGxlZ2FjeS10cnVuaworMTE3NDUgZTE5OTU0YmExYmM0MTM3ODhiMzNiNzU2ZDhhMWExZDZiMDdiNmY1NyBsZWdhY3ktdHJ1bmsKKzExNzQ2IDAyODM3NTk0MDdlMTYxZGYwMTUxOTM4NjVlMjNkNjA5ZmQ1MjhhZjAgbGVnYWN5LXRydW5rCisxMTc0NyBjYTg1ODdkMjE1ZTZmZWNhZTM4YTYzMmQ0N2VlMzZkMzU4NzYyZDQ0IGxlZ2FjeS10cnVuaworMTE3NDggNDMwMDM4ZTE2NDMzN2EzMDAxMTI5OTZiYTc5ZGFkOTllMWNhODY3NCBsZWdhY3ktdHJ1bmsKKzExNzQ5IDU5MGJkOWI0NWJmNjBkMTg3OWI0MmI2MjUyN2YxZWQ5MWFkMGFhNzUgbGVnYWN5LXRydW5rCisxMTc1MCBiZTE0OTMzOTFjNmRkM2JjN2JhZDMxN2U3YzAwYmI0MjFmM2YwNjZmIGxlZ2FjeS10cnVuaworMTE3NTEgOWQzOTNhMGY3MjdjNzU0NGE0YWQxYWJhM2ZlMjIxYzlhOGI4ZmUzOCBsZWdhY3ktdHJ1bmsKKzExNzUyIDA4MDc5OWQwY2YyYjJiZDlhNDc2MGFlNTM1NzljNzA4YWY2YjNiYTQgbGVnYWN5LXRydW5rCisxMTc1MyA4ZDE0OTA2MjkyYzY2Y2MwMDVmNDU1NWUzMWU5YzQwNmFhZDc5NzQ0IGxlZ2FjeS10cnVuaworMTE3NTQgMWUzM2E4YTU2YmNhNWI3YzYzMDg3ZjU2NWU4NmJiMzBjNTE2YzhkMiBsZWdhY3ktdHJ1bmsKKzExNzU1IDI1NzdjMGNjNzQ4MmE4ODg1NGYyMWE0MDA1NDcxNzc5MTZjMmZiNDggbGVnYWN5LXRydW5rCisxMTc1NiA2YjZiZDE0ZDc1MGI4MWI4NDRmZTI3NDQyM2I0NmQ5ZjQ1NzA0Y2Y3IGxlZ2FjeS10cnVuaworMTE3NTcgYTczY2Q3Zjk5Yjk1YmQxMmQwYTA3ODE5YzE4YjQ0Y2NmZDQ0MWY3OSBsZWdhY3ktdHJ1bmsKKzExNzU4IGFjZDgxYzMyMjdkZWI4OTY4OTkxNzdlNjBkMDY1MTkwZTdmYjcwODUgbGVnYWN5LXRydW5rCisxMTc1OSA5ZDJjMTJmMjQwZTYzNjEyZWNhYTRmODdjOGRjYTRiZDZlODk0N2I4IGxlZ2FjeS10cnVuaworMTE3NjAgNjVmMDhjYzU5NTUzNjQwNjQ5MjRmOWJjZDk1M2FlNGQ3NWVjOWNkMSBsZWdhY3ktdHJ1bmsKKzExNzYxIDg2ZGUxZmEwZmJiNzY3MmMwMmM1NjkyZjMwMmQ2NDQ4MGZkZmI1NGUgbGVnYWN5LXRydW5rCisxMTc2MiBjMTE2YmIzZTJhZDE4OGIzMTAxZDRmYWZjNGFkNDlmMmE0MTkyYThhIGxlZ2FjeS10cnVuaworMTE3NjMgYTBmMzMyNWZlZGYxOTFlN2M0ZWViYmU1NWY1YjY2OTcyYjhkNjg5YyBsZWdhY3ktdHJ1bmsKKzExNzY0IDU1MGE0NTZkOGY2MTU4NzZjODBlZTJiOTUzYjJiZGU0MmM5ZWQxNDQgbGVnYWN5LXRydW5rCisxMTc2NSBhY2VlMzU5NWU2MDNlZDJiNGI0N2Y5OWVlNDJjMTI4Y2QyMzU4MzBkIGxlZ2FjeS10cnVuaworMTE3NjYgZmJiNDUwNjBiZTAzMjQzY2Q1M2MxNzgxYmIyYmU1OThiM2Y1ZjE1NyBsZWdhY3ktdHJ1bmsKKzExNzY3IDcyNDQxMTEzMjQzYTg1ZTBhY2FjZGU5M2ZkMWZhMWE5ODM2YjExOTQgbGVnYWN5LXRydW5rCisxMTc2OCA1MGQ5ODUwY2M4YzNiMTRiMzQyZDJiMDI5MGNkOTliYzQxNjhkYWZmIGxlZ2FjeS10cnVuaworMTE3NjkgMmM2ZGQwZmE0ZWI5ODdiNmZkOTc3NDI1NzNlZmE1YThjNTI0ZTM2OCBsZWdhY3ktdHJ1bmsKKzExNzcwIDhmZWQ4Yzg1YzYxYTlhNTdhMGVjMjdlMDI3Nzg4MTI0NTA5YTMyNGEgbGVnYWN5LXRydW5rCisxMTc3MSA4NzkxNDU1NDg1ZTUyY2NkYmQzYTBmMGVmOTFkZjMyMmYzZjgyYWRlIGxlZ2FjeS10cnVuaworMTE3NzIgMmY4OGQ4YWE3MzEwOTNhN2VkZjI0MGMzZWNiNTEyNjdhOTRkY2U3YyBsZWdhY3ktdHJ1bmsKKzExNzczIGYzN2JlMGM4MjJkYzJhZDQxYWRkMGFkNDFlMTY3OGI2ZTU3ZTE2MjEgbGVnYWN5LXRydW5rCisxMTc3NCAyODRiZjk1ZGFiODBhMWY4ODA0ZDFjMjFjNjUwMzM2YWE5OWIzMzRiIGxlZ2FjeS10cnVuaworMTE3NzUgYzM5MjE4YTY4ZGYxZjM3NmQ5MTg1MWE5ZDM4ODM2NTdjYTZlY2ZhNCBsZWdhY3ktdHJ1bmsKKzExNzc2IDUzYWI4ZDBiMGQ2NDRlMTFmZDIwOTM5MGRmNGY2ZmU3OTBhNGI3ZjQgbGVnYWN5LXRydW5rCisxMTc3NyBmZTdjYmQxMzA4NmMzYTQ5MGU4M2FjNTM5YzE3MTM2NTBjZGI4YjM3IGxlZ2FjeS10cnVuaworMTE3NzggODA5ZGNjMWJiYzIxZGNkMzUzZjg4MjcxOTQyOWVkZDdmY2RhYmNiYSBsZWdhY3ktdHJ1bmsKKzExNzc5IDRiOWM0Y2U1OTk5YzkyYjdiMTUzZTQwOGIwN2MwNWIyZTk3ZDQwZDIgbGVnYWN5LXRydW5rCisxMTc4MCAwYTZlZDM4NGFmMDZhNTcyMzAzYjFhMWZlMjdkMTM3MjEzNzczNGY5IGxlZ2FjeS10cnVuaworMTE3ODEgZmFhMzFiMWMwYjU0MDU3MjliYTNmMDE3YzNiYWUyOTgxNDFkZDQ3NSBsZWdhY3ktdHJ1bmsKKzExNzgyIDUxNTZjZjhlNDI2OTFhZTVmYjExZDJhZWY4ZmYyYjQzNTQ0YTI3ZDEgbGVnYWN5LXRydW5rCisxMTc4MyBiYzUxNTA2NTJlZGNhZDcwZTZkNGQwNjY3MTMxYmVlM2ZiYTQyYjc4IGxlZ2FjeS10cnVuaworMTE3ODQgZWMzZDJiMzc1NmQ3NmQ5NWE0ODgxZmI4NTZhMmQ0NDg0M2FlOGNmOSBsZWdhY3ktdHJ1bmsKKzExNzg1IGE2Y2ZmOWMyOTBlNTI2NDVjMTMxMTBjNzY4MzBlNjM3NzQ4NzMxM2UgbGVnYWN5LXRydW5rCisxMTc4NiA1ZDM0NDcxMGZjYzNkNmEyMzc2ZGI0NmJhYWRhOTc1MzA5NmVmNTQzIGxlZ2FjeS10cnVuaworMTE3ODcgMjM0MGY2MTVkYThmNDM5NzA0NmZmNmQyN2ExM2YxNmQxZjM1ZTM5OCBsZWdhY3ktdHJ1bmsKKzExNzg4IGJjMzFkOWY2ZTBhMTRlMzYyMzE1YjNkMjU2OWM4OTA1ZTFhMzUxYWEgbGVnYWN5LXRydW5rCisxMTc4OSAwMmYzNTA0YjM5OGRmNDc2NmE1MDY2YTZlN2E2N2Q5Zjc0YjcxYjY2IGxlZ2FjeS10cnVuaworMTE3OTAgMGE2N2RiNDdlMWQwZTQ2ZWQ3Yjg2NGJlOTgxNzgxMGFiMTJmOTgwNCBsZWdhY3ktdHJ1bmsKKzExNzkxIDBkZTY2MmNlY2FjZmNhYWU5ODUwMTExMzUwOWY0NzFiN2ZhZDc3OTEgbGVnYWN5LXRydW5rCisxMTc5MiBhMWNhMDg1MTY4ZmM4MTE0MGNjMTFkZDY3ZmU3ODM4NmVkZTgyZjRiIGxlZ2FjeS10cnVuaworMTE3OTMgZDY0YjRjYzgxYmE2MmQzMzlmYjVjNTZhYThiYTQwYThjNzIyMTUxYiBsZWdhY3ktdHJ1bmsKKzExNzk0IGQyOGI0OTFmNDU1NTZhYTA1MzdkMGVlZjAzYjYyYmExNDdiN2ZiYjkgbGVnYWN5LXRydW5rCisxMTc5NSBhMjM5NzI1NWE2ZDMzZjVkMjRkNTI1ZTQ2ZDQ4YmVkMWZhZDAxMzI5IGxlZ2FjeS10cnVuaworMTE3OTYgZDY0MjAwODM0YTZiNGFmNDZjOTJhZTgwMGE5ZDcxOTcyNmNlMmVmMyBsZWdhY3ktdHJ1bmsKKzExNzk3IDY5MDM0ODI0MzgwMDFjNTgzMWQ3OWRlYzRkYzUxMjRkZTkzZDc3Y2MgbGVnYWN5LXRydW5rCisxMTc5OCA0MTQxMjhhMTViYmQ5ZjRkZTZmYTZiOWRlYjQ4YWNjZDNmODUzYTM2IGxlZ2FjeS10cnVuaworMTE3OTkgMjQxZDAxMmU4MmRjZTU4ODE4YzMzMDE4MzgwN2MzYjY5NWM4ZGMzNiBsZWdhY3ktdHJ1bmsKKzExODAwIDNiNmM3ZTcwY2FmZmY2YmRmZGY2YjcwYWE1NDY4YjkyYTdlODIxYjQgbGVnYWN5LXRydW5rCisxMTgwMSBjYzNlMTQ4MzczNzk5NjNkNWE5ODZlNjNiZjZjMjBkNjE0MDM1MGFkIGxlZ2FjeS10cnVuaworMTE4MDIgMDgzZWZhMDc2MzY2MTBmODlkODNkYzQ4MjM5YTk4OTY1NDAzOTY3ZCBsZWdhY3ktdHJ1bmsKKzExODAzIDc5NDM5ZTRlOTk3Njk1OGEwZDRjYzgzMTE0ZmNiNGNlNDU5NDlkOTggbGVnYWN5LXRydW5rCisxMTgwNCA5MjhlYTVhNDA5ZTUzNTFkNDY0NTZlYmJkM2E5YmE3YTZjMjljMDUxIGxlZ2FjeS10cnVuaworMTE4MDUgMzRlNDIwMmVkZTIwMWQ3ZDljMDQ0Y2QzMDc0YWNlZjcxZjQ0MjA3YSBsZWdhY3ktdHJ1bmsKKzExODA2IGJkOWQzOGQ2NDM2OTRlYzUyMzdiNTU5YjRhZGYyN2JhOGQzYzJhNDEgbGVnYWN5LXRydW5rCisxMTgwNyA1ZGI2NDdmZWRiYTAzM2NlY2VhMDQ0MGEyODcyY2MzYzM2NTBiOTQ4IGxlZ2FjeS10cnVuaworMTE4MDggNDhjNjE1ZDg0ZGE2NmRhYjg0MjYxZDQxN2MwMjQ3NTVlYWViYzE4MCBsZWdhY3ktdHJ1bmsKKzExODA5IDVlYTg4MzZkOTY3MDBiOTJhZWVhZjE2YjY3MDZjZDI0NTBhODg5NWEgbGVnYWN5LXRydW5rCisxMTgxMCA0NjdkZjYxZmZiZmE5NWZlZTZjMzk3NDA1MDFkMGE4M2E4MDI1ZTI5IGxlZ2FjeS10cnVuaworMTE4MTEgNDE2Yjc3YjgxMWM1YjgzMWIzOTU5ZjcyNDUxN2EzNzk4OTEyYjY2NCBsZWdhY3ktdHJ1bmsKKzExODEyIDc4NDg3ZTcwMTY4NmQ5NDFkMGJjNGJhNjY2OWFlMGJmY2M4Nzg0NmMgbGVnYWN5LXRydW5rCisxMTgxMyBmMzNiMzk0ZTVkN2ZjYmMzODU0MWViOTU4ZWY0OGRhZWE1M2FiZGVmIGxlZ2FjeS10cnVuaworMTE4MTQgMDAzYjQyYzlmMjRkMjEwODI3ZmRmYjBiMTk4YTkwMDMxNTg2MzdkMSBsZWdhY3ktdHJ1bmsKKzExODE1IDhhMjZlNTVlMThiODEyZGJhZWM1ZjEzOGFhN2E2NGRmYjJlNjczM2QgbGVnYWN5LXRydW5rCisxMTgxNiA4OTE4ZTRmNTRlY2E4ZDE2NmE0MGE0Nzk3MmFjYzIxNmQxNmQxYThlIGxlZ2FjeS10cnVuaworMTE4MTcgOGU5ZDk3OWRkZjU1MGIzMDIyNTk5NDNjNzA1NzJkZmMwM2FiOTM4ZCBsZWdhY3ktdHJ1bmsKKzExODE4IDQwZDIxYTViOTk5MDE1NmIwNDhjNzkyOThmNzc0MGQ3M2EwZDg4N2IgbGVnYWN5LXRydW5rCisxMTgxOSA4NGUyMWFjN2QzZWEzNThjZDhmNmZiNDIxMmU0OTI5ZGE0MmM4OWZmIGxlZ2FjeS10cnVuaworMTE4MjAgMTUwOTA3YzJjMmMwODI3OTczMDJjZWM0YWMzZjQ3OTIxODFmOWM2YSBsZWdhY3ktdHJ1bmsKKzExODIxIDk1OGU0ODg5ZWNhYjU2ZTM4M2U5ZDIzMWMzNmQ3YjZjNDJlZmVjZjcgbGVnYWN5LXRydW5rCisxMTgyMiBjYTZlMjI3M2ZiZjYyNzU0ODBhMDRlNTY2ZGIwMDA5ODliMDg3NjUxIGxlZ2FjeS10cnVuaworMTE4MjMgM2I5MTQzMmJhMWE0MTMxNTZiMzdmMjZiMDFlZDRlZDM4YTlkOTMzMyBsZWdhY3ktdHJ1bmsKKzExODI0IGM5MWU0ZDg3ZjY5NDY5NzE1YWY1ZTM4MjJmOTc1YjRjNGQzMzJlMTkgbGVnYWN5LXRydW5rCisxMTgyNSA4MTU3NGU0NjQ2YjQzY2FkZjE4M2MwMDg2ZDU2MmM4MjRjODBmNmRlIGxlZ2FjeS10cnVuaworMTE4MjYgN2YyNDJmMjlhNDVmYThhMDAwN2I4NDk0YmExNDBmOTM3NTI5NzdlZiBsZWdhY3ktdHJ1bmsKKzExODI3IGZkNWE0MzA5YmZkYzJkNGFmODI1NDg2YWVmZjVmZjEwMDI2OTYyZTYgbGVnYWN5LXRydW5rCisxMTgyOCA3NTIzN2NhNTZhZmYzNzU1MmI2ZGFlODAzYTY3ZTU5OGM5YzI1OGRhIGxlZ2FjeS10cnVuaworMTE4MjkgNDYyY2NkMGJiZTUwYWM2OTJmZDNkOGZiYjg1NDcwZmIwNzQxYjIxMyBsZWdhY3ktdHJ1bmsKKzExODMwIDkzNDBjYjJhZDNhODg3NGY5ZGZlZTg5ZGQ1YWNlZmIxNzhlNDNlODggbGVnYWN5LXRydW5rCisxMTgzMSBiNjA1ZjIyYTA5OWFhOWM2OTZkOGM4ZjFkZjM1MTFkYTAwOWUyMDI1IGxlZ2FjeS10cnVuaworMTE4MzIgZjRkY2I5MGFjNDE5ZjY5ZWEyMGZkOWQ3OTkyZjQwN2YwM2E5MDU1YyBsZWdhY3ktdHJ1bmsKKzExODMzIGZiMmU3ZjM4ZTFiYmU2OGFiYTg5OTlkMmU3ZDUzY2JkOTYyMjdkMjcgbGVnYWN5LXRydW5rCisxMTgzNCAwNDFmMjJhNWEzOWRkOWIxZTMyNzMwYTM3YWI3NzYwZjg1ZmNkN2U3IGxlZ2FjeS10cnVuaworMTE4MzUgYmEzMjc3Y2QzMDY4NWY1MmNjOTlkNjMxOGI1NmM5OTc2NTIyYzJkYyBsZWdhY3ktdHJ1bmsKKzExODM2IGQ3NDBjOTYxM2JiYTdhMWFkZGEyNjRhYjY2NTRlM2MyN2Q3ZGE4YjggbGVnYWN5LXRydW5rCisxMTgzNyA3MGIzMmY0MWE3ZmJmYjM4ZWU1NzI5NDYyOTE2MTg0NDA0ODNhNGQ5IGxlZ2FjeS10cnVuaworMTE4MzggNWEzZDIxMzAxYTA1MTQ1YWYxMDAyOTIzYjVhZWI2MzY5ODc5OTFkNSBsZWdhY3ktdHJ1bmsKKzExODM5IGVmNjhmMGU2MDllMTk4YWJlN2E4OGQ3Y2I0MTI3ZjdlZmQxZTBiMWMgbGVnYWN5LXRydW5rCisxMTg0MCA0Zjc4NTA0YTVmODFkYzc2YmZiODU4YTA3NGQyNzIyYTkwYTI5ZTYyIGxlZ2FjeS10cnVuaworMTE4NDEgNTBhMmQ2NDI3NmU0YjEyNmVmZTA4NTIxNjExMzQ0OWVkNDVkYjFlOSBsZWdhY3ktdHJ1bmsKKzExODQyIDIzMzYzYmI4YmQ5MGNmMTlmZTdlNDRlOWZjOGVjNzczYTlmYzUwMzMgbGVnYWN5LXRydW5rCisxMTg0MyBlMTZlMzYzZTM5MWI0MzNhMzg3MTA3YTJkY2I5NjMzOThiZjgwOTMxIGxlZ2FjeS10cnVuaworMTE4NDQgYmM5YWVhNzE4ZTRlMzJlM2Q3MWI5YjMzZmI0NTcwZTljZDIzMWMwZiBsZWdhY3ktdHJ1bmsKKzExODQ1IDY2OTA4MzhiYThkYTYwZTRmNWM0ZjAxODZlZTJmYTI0MTZlNDdiMzUgbGVnYWN5LXRydW5rCisxMTg0NiBiZjg5ZjE0MzViNzI4Y2QwZWUzYmRlMzhlOGQwMDg2YjYyZTAwZjJiIGxlZ2FjeS10cnVuaworMTE4NDcgNDQyMmJhMzg5ZTQxNTcwYjcyODBlOTYzODY1MjA5YjMxNWE5MjIwYSBsZWdhY3ktdHJ1bmsKKzExODQ4IGZkYzNjNDU5ZWQwMGFmYzI4MTRmMDc5ZGQ1Yjg2ZTFkNTk0ZWEwNWMgbGVnYWN5LXRydW5rCisxMTg0OSBjZDE5YTdkYjg3MzU2Y2ZkY2NkNzA2MmVlZDZiYmVjOWEyNDkwNGRiIGxlZ2FjeS10cnVuaworMTE4NTAgNjViMDg4MmE0NGFiY2Q5YWQ2YzVhMmIxZjg4NTkzNTI5ODBjMmRhZSBsZWdhY3ktdHJ1bmsKKzExODUxIDYxZjQ1ZGQ3YzQzYTUzMDQ2ODhjMzQ2ZmVlYzE4MmE1NTg5NGFkYTMgbGVnYWN5LXRydW5rCisxMTg1MiA2YjVmN2U5YTMxY2I5ZTZlMDM3NTM3ZjRkMTZhMWFhMGU0MDFjNzA1IGxlZ2FjeS10cnVuaworMTE4NTMgZjBhM2MxZmM3YjkwMjRlZmZjM2Q5MTlhNzlkNTBmZmNiODE0Nzc3YSBsZWdhY3ktdHJ1bmsKKzExODU0IDZiODg5ZTRjMDc1NGUwMjA5MTRkYmI3N2Q3MDcyZmQzZWZiMDdjNzggbGVnYWN5LXRydW5rCisxMTg1NSAyZmU3YmJlNzFkZDhjMGEwMmIxZWRkMTg3MGJmNTQ0OWQwMTU2YzQ3IGxlZ2FjeS10cnVuaworMTE4NTYgZDFlYWRhOWJiYzNjN2EyN2Q4M2NiOGY2MGFmZDI1NTE5MTU4ZjIxMCBsZWdhY3ktdHJ1bmsKKzExODU3IDRjMjNhZTZjNmU4MmM2MWNlYzdhYTlkNThmMTNkYjk5YTY0OTcyNjAgbGVnYWN5LXRydW5rCisxMTg1OCBiMTAwNGI0N2JhYzBlNzI5NmY1ZDE1YjJhZmUxNjUxZDEyODBhNzIwIGxlZ2FjeS10cnVuaworMTE4NTkgNTBlMDYzMWNmMTE3Mjk4ZGQwYTEzOGFkM2Q1NGFjMWEyZWNkOTNlNyBsZWdhY3ktdHJ1bmsKKzExODYwIGYzNTFjNjRjODJlZGI4NjQ4NjU1MmFmOWIyOTdlM2VhYWY0NTNhYmEgbGVnYWN5LXRydW5rCisxMTg2MSA5ZjEzNWIzZDlhNzgzMTVkOWIzMWU2ZWQzOGJkMzczNzllYWYzNzgxIGxlZ2FjeS10cnVuaworMTE4NjIgYzgwMzIxYzMyOGI1ZDBkOWI0MDFkMzQ1YjdkZmMxN2RiM2RkNTczMSBsZWdhY3ktdHJ1bmsKKzExODYzIDk4MWRkMjBiYzcxMTYyYmYwM2M4OTYwNWJkODJhOWQzNDMwZGZiYjAgbGVnYWN5LXRydW5rCisxMTg2NCBmNjgxOWI5MjZmYjJjNjYxMzFiZTZmMmFmODkxZmI2YjkwZDEwNjE2IGxlZ2FjeS10cnVuaworMTE4NjUgZjA0Mjg4Y2NmNzdiN2IzMmJjYzUzZGYyOWEwODc3MjRkZWE0ODhkMSBsZWdhY3ktdHJ1bmsKKzExODY2IGE2ODA4YmNmOGFjMjliNGNiNWIxOWZiNjExZDM1MDM1YmJkZjgwMzQgbGVnYWN5LXRydW5rCisxMTg2NyA3YzNiZWEwMTE4OTU4ZWEzNjM0NzEyMWExNDQ2MmU4YTk3MWZjODI5IGxlZ2FjeS10cnVuaworMTE4NjggMTA2ZmFmMzY2ZTNmMDdlZmExMWM4YTc4YzllNGI1OWJkZmE1ZTNlNSBsZWdhY3ktdHJ1bmsKKzExODY5IDZmZjA5NDhmZjk1MWM3YWJjODU0NGE4Y2M4ZmI0YzVlZWVjNjQ5OTIgbGVnYWN5LXRydW5rCisxMTg3MCAyMjlmNzNmMmM4NzhmZTNkMjE0OWYwM2EzZjc1ZmNjYWIwZWZjYjU1IGxlZ2FjeS10cnVuaworMTE4NzEgNDgwNTY3MzEwMTk0Y2EwNzY1Njk4MWEyNTFiZjMwZjM0ZDU0Yjk5YSBsZWdhY3ktdHJ1bmsKKzExODcyIDliZjQwZWYyMjdjOTJiNmI0NGM5NmRiZjUyYjM1YzgwNTM3YmU5YTIgbGVnYWN5LXRydW5rCisxMTg3MyA0MmEwN2JlZjYwZTAyYzczYTkzMDA1ZTM2ODM0MDZmZjg2NTkxY2FkIGxlZ2FjeS10cnVuaworMTE4NzQgYTRiNGJhNWM0YWEyMTFiNjdmNjNjN2Q2NDQ0MTMxYzY3YTUxODQ0MyBsZWdhY3ktdHJ1bmsKKzExODc1IGUxODAyNzEzMGJiZTIwZDM0ZTYyZmU2ZTdlZTNlYmQ0NGQ2ZWMwNTIgbGVnYWN5LXRydW5rCisxMTg3NiBiZmE3ZWQwYjFhNmJkMjBlNDQyMGU1MzRkMGZlYWNiNDBlZTNkZjZlIGxlZ2FjeS10cnVuaworMTE4NzcgMDliNWNiNDc1OTJkNDRhYmU3ODRmYTI5NzVhNjZmYWNkZjEwNmRkZSBsZWdhY3ktdHJ1bmsKKzExODc4IGFmZTUwYjY2MTU0OGM4ZDI3NzNkNzVmZTg1Mzc5NzRmNmM4ZmIzZDAgbGVnYWN5LXRydW5rCisxMTg3OSA4YTM0OTMwOWZkZjQzMzE5MGRkNjBjMzYxODhiYzYzY2Y3NWEzYTQzIGxlZ2FjeS10cnVuaworMTE4ODAgMmIzNDQ2MWJhNGEzYWNlYTY2OGJkYjVjMWM3MjdhNDMzZDM3MmUwZSBsZWdhY3ktdHJ1bmsKKzExODgxIDY0Y2ExMTU2ZWRmMTkwNjc2OTQzMzZmZjlkMDNjZTA2YTNiY2Y4ZDQgbGVnYWN5LXRydW5rCisxMTg4MiAwMGIwNmNjNWI5ZGExNzgxMTRjNWY0M2NlYmI0YWZkZjU2Mjg0N2U3IGxlZ2FjeS10cnVuaworMTE4ODMgZjVkMzk3NGQyMDlmMzNiOTJmMTMzZWY2NWQyZTQwZDAyNGRmZjZkMCBsZWdhY3ktdHJ1bmsKKzExODg0IGYxMGM2YTc0MzhmNWNlMTM5YzFiMTM2YmQxNTA5ODU3ZTc2ZGI1MGIgbGVnYWN5LXRydW5rCisxMTg4NSA5ZGQ2ZjQyOTY0NzlmYmY3Y2E3NDUxOWE4YjU3YzM4OTA1MmE1YzlhIGxlZ2FjeS10cnVuaworMTE4ODYgNmNlMGNlNGVhM2MxODQ3ZDVlY2FjMGZkYWY5NmU0Mjc5NDc4NWJkYyBsZWdhY3ktdHJ1bmsKKzExODg3IGE5YWU5OWY5MjE1NDAxODc2MzlkNmE5ZGNiMWVkN2RiNWUwZDljYWQgbGVnYWN5LXRydW5rCisxMTg4OCAyMTFjOWUyODM0NjZmNmU1YjJiYzQ4ZWIyMWY5MjYxY2M0Njk5NjkxIGxlZ2FjeS10cnVuaworMTE4ODkgM2Q5YTBhM2U1OTZiMjhhYmM5M2Y5ZTgzOWE5NzcwOTg3NmU3NGNiYSBsZWdhY3ktdHJ1bmsKKzExODg5IDIxZDcxZjJlMjcyNDhhMGY0ZTM5M2QwZmMzMjFlY2Y5Yjg5MzIxZDIgbGVnYWN5LXRydW5rCisxMTg5MSAwOTRjMzg1YjU2MjQzMTM2YjU5MzJlNTEzMjRkMGViNTRkM2IyNjMzIGxlZ2FjeS10cnVuaworMTE4OTIgOTdhNTQzYmY5ZjlhNjQ0MDFlNTg5ZTNlNGExODlmOTIxOWJlNTE1ZSBsZWdhY3ktdHJ1bmsKKzExODkzIDg3YzgyNWVmNzg3OGRhNmUzNmQ1YzM2NTUyZmYwZjljNTczMjkwOWUgbGVnYWN5LXRydW5rCisxMTg5NCA4Y2IzODhlNzFkZDkwNTA3NWU1ZDVkZjQ4NDQyOWZjYTE3YWZiYmZiIGxlZ2FjeS10cnVuaworMTE4OTUgYjA0NjVhZWIwZWZjZTMwMzBhNjFlNjAxOThhNmI4ODMyNWE3YmE1MCBsZWdhY3ktdHJ1bmsKKzExODk2IGMxOWU5YWMyYjBjOGM5OTc4YjMzNDMyMWI4ZDhiYzJmNjZjZmRkYTMgbGVnYWN5LXRydW5rCisxMTg5NyAzYmZmNjczNjliMTEwODU5ZmU5N2U0ZDQ2YzgyMGQzMTY3ZDRhNGM0IGxlZ2FjeS10cnVuaworMTE4OTggZjM2NzA5MjViMDk4Yzk2NjY3NGQzOWVjYTNlMjJjY2JmMTQ3NjRkYyBsZWdhY3ktdHJ1bmsKKzExODk5IDljY2FlY2QzZGVhMzJiZTY2NDg3MmZkNDk3ZmNkNDBlMzkwNTczZTkgbGVnYWN5LXRydW5rCisxMTkwMCA1OGEzNWU1ZDEzY2M2MjcxNjI0NWZhMTBhNjUyOWExZDQ1MTVkYjZmIGxlZ2FjeS10cnVuaworMTE5MDEgZjUwYjljYzc2YzFlNmQ5MTczNTk5MTdmYjc0MzE2NDRmMWFiMmM3NCBsZWdhY3ktdHJ1bmsKKzExOTAyIDM4ODYxNjVkYmE0MjY3OGM1MmRkZWMwMjUxNzZmN2Y5ZWM5ODZjNjMgbGVnYWN5LXRydW5rCisxMTkwMyA2M2VjZjdhNGMwNzBlYzliMzMwY2VhZDFkMzcyNGY3NGQ1ZGQ0MjU4IGxlZ2FjeS10cnVuaworMTE5MDQgZWU5OTJiMzEyMGQzYWVjZTVmYTM5NjEwYTQyZmUyNWQyNzQ1ZWJhZiBsZWdhY3ktdHJ1bmsKKzExOTA1IDlmOWRhMDE4OWI3YjRkZWUxMzQxZWYxZWVlNDQyNzhhZjNlMWU0NWEgbGVnYWN5LXRydW5rCisxMTkwNiA0NGM1NDY4ZjhkMzY0NTM1NjE3YzNiNWI4MjBhNjAxZDExODE0ZjAwIGxlZ2FjeS10cnVuaworMTE5MDcgNjIwZTAyMjUwYzgwYmM2MDkzMzYyNWJmMzI5NDA1NDg0YzY5NjQ2MSBsZWdhY3ktdHJ1bmsKKzExOTA4IGZiY2E0ODYzMjdjZTFjMTRiMDk4YWUxNTU3ZTAxOTdkOTNlYmUyZTQgbGVnYWN5LXRydW5rCisxMTkwOSAwMzc5ZWI3YmUzMjNlOGU3OWIxMTQxNWNlNDJkNjA1ZmQwMDc3MjMzIGxlZ2FjeS10cnVuaworMTE5MTAgZTcyNTRlMmYyZGMxY2QxMWYyNzVhMTYzYjNjODMyMjQ4NDI0MjhmYyBsZWdhY3ktdHJ1bmsKKzExOTExIGMwM2ZmZmYzODdmOGJkZDQyNDUzYjFmOTlkNDAyMmEwNTBiY2MyMzQgbGVnYWN5LXRydW5rCisxMTkxMiA3YmE3ZmJlYjg4ZWMzYWRlZjI1ZGVhYzZiMzZkMWMyYTMxN2E2MWY3IGxlZ2FjeS10cnVuaworMTE5MTMgMDEyOTk3YjlmMWViZDEyNjU3NmJiZTExZGQyOTdjZDU0NmQxY2FiZCBsZWdhY3ktdHJ1bmsKKzExOTE0IGU2ZWEyYmM5NzRlMjZmYmJmMzc0MTUwNTU2MTkyY2Y1NDk0ZDZiNWQgbGVnYWN5LXRydW5rCisxMTkxNSBmNmY4NmIzN2YxZmMzYjlhNGUwYzE1NTg5YmIyY2I5YWI5ODg4NjlkIGxlZ2FjeS10cnVuaworMTE5MTYgM2I4YjMxZDJjOWNhMzExZmU3MmYzNmRiMWU2Y2IxODU2NjIwZTJkYSBsZWdhY3ktdHJ1bmsKKzExOTE3IDhlNGZkYjBiMGJiOGU1OThlNGE5YWVjNWM0YzY5MTc2YWYyNWYzZTQgbGVnYWN5LXRydW5rCisxMTkxOCAwMmIwYjg0ZGQ1NDVlN2JhNWViNjdiZTkwOGJhNWZiZjc2NTA3MTQ5IGxlZ2FjeS10cnVuaworMTE5MTkgMWE1OWYzNjU0YmMxMTNhMzk5NjAxNzZjNTZjYjVhY2JkMGU1OWRlMCBsZWdhY3ktdHJ1bmsKKzExOTIwIGUxODA2YjI4MGY1MzkzY2RkYWYzYzUxYTQ1NjdkZjk0NzY4ZmY0N2MgbGVnYWN5LXRydW5rCisxMTkyMSA3ZjhmNjA4YWNkYmNkMzcwYTdjMTQyMzMwZDM3M2RmNmFjYjJiY2FlIGxlZ2FjeS10cnVuaworMTE5MjIgNzkyY2Q3YzVmZDg4YWQ2N2Q0MTQ0NDhkNTY3MDNjYWViOTQ2NTVkZiBsZWdhY3ktdHJ1bmsKKzExOTIzIDkwZmJlYzQzNDNkZWM2MmZlYmJmZjc3Yzc2NmU1YjY1Y2M3Nzk4MzMgbGVnYWN5LXRydW5rCisxMTkyNCA3NTY3ZWY0MGRlNzdjYjdiZTk1YTk2NGQxMGYzNTBkMTVjODE0MDZjIGxlZ2FjeS10cnVuaworMTE5MjUgMWM5NGYzNGI0OWUzZjc0YzM1YTA4NTc2NGM0YTk4N2ViYjM2YzJhYSBsZWdhY3ktdHJ1bmsKKzExOTI2IDMzN2FlMTJkODA1MDA3YWQxYzZkZmFjNmFkN2RhYzJiNDU1MTg0NGUgbGVnYWN5LXRydW5rCisxMTkyNyAyMmMzMmRkNjNmZjVkNzdjZDc0MWRkMTdkOTIwZWQwNzcxNTlkM2FlIGxlZ2FjeS10cnVuaworMTE5MjggODdiOTU1NGM1MWQ0YmE2ZWE1NzgwOTIzMDk0ZGJhMzViZDJkZDgxNCBsZWdhY3ktdHJ1bmsKKzExOTI5IGVkZjc1NTNmYjIwZWZlZGVmOWI5MDE5ZDA0Mzk3NGZlNzFiZDU5YzEgbGVnYWN5LXRydW5rCisxMTkzMCA5ZWE1YzQyZGNiZWRiNWMzZTE2NTY0ZjYwMjE5MzBmMjg0MDM0ZjY1IGxlZ2FjeS10cnVuaworMTE5MzEgNGY2ZjczMGQyNTU2ZGJlOTMxZTBlYWI4NzBiNjcyMDgyNmExYWRiZCBsZWdhY3ktdHJ1bmsKKzExOTMyIDYzZmU4NTczNWJkY2Q5NTRkMWEwZjQ0NWJkN2E0NGNhMjEyM2Y0YjMgbGVnYWN5LXRydW5rCisxMTkzMyA0OTYyM2RhM2M2M2YzZjUyZTJkNTc3OWFhMmQ0M2VkMmFjZWU0YjQ1IGxlZ2FjeS10cnVuaworMTE5MzQgYzYzNjY4OTNjZWUxZDk3NjBiNTM2MTZlMzhhYjc3MjBmNzVlYTc3YiBsZWdhY3ktdHJ1bmsKKzExOTM1IGNlYjg3ODc5NjEwODE2OTEzOWQ0ZDM3MWIyOGY2YmFmOThjZDY4MzYgbGVnYWN5LXRydW5rCisxMTkzNiBlMWMzMzA5NDMyMjFlNWQ5OWRmMjNhNDJhMDk1ZDJjYmQ1MDZlMjA1IGxlZ2FjeS10cnVuaworMTE5MzcgZjhkZGQyMzQwMzk4ODlkOWNmZmY5NWM3ZDBhMjFhMGNhYWUyZjE1ZiBsZWdhY3ktdHJ1bmsKKzExOTM4IDkxM2ViMzFiMDMxNzIyMTI2NTFlN2NhYTg0ZDA4YzVmNGJiZGU4MGIgbGVnYWN5LXRydW5rCisxMTkzOSAwZmVhNWQ1YzRmZDlkYThkNzgzMTQ3NjkxNTIzNGUyNGI4NGFmNDE1IGxlZ2FjeS10cnVuaworMTE5NDAgNTYyMTdlYWJjMDdhYjRkNWM1OTgzMmEzMjBhN2M5N2U0ZTUyODY1MiBsZWdhY3ktdHJ1bmsKKzExOTQxIDRiZDUxMjhlNWVkNDM0NGVkMWIxNzg2MGE3NmZjNjBiNDdlYTUyOWEgbGVnYWN5LXRydW5rCisxMTk0MiAxODgwZWFkMzIwMGNkNDVmZTJhOTFlZGQ5ZWNiYjYyNzc2ZjgxMTAzIGxlZ2FjeS10cnVuaworMTE5NDMgNDFjODg0ZGZhZDVlZjRiOTk3ZjZjNjVhYjc0ZjQxMGNiZmQzMzk3NSBsZWdhY3ktdHJ1bmsKKzExOTQ0IDI1YjY5MjlmZmIxM2RlMDA1YTg4NjE4ZjBhNzUzYjUzNWFkM2FiMTggbGVnYWN5LXRydW5rCisxMTk0NSBmMjQyY2QxMGUxNmEyNDhlZWNmZjE2NzU0MDg4OTQ4MGUzMjlhZDljIGxlZ2FjeS10cnVuaworMTE5NDYgZDM5MzlhZDM4MTc2NmFhMzAxOWQ2ZjA2NTMzMzY0YjU4YTg4ODMxOCBsZWdhY3ktdHJ1bmsKKzExOTQ3IGRhNzFhYTFiZTE5MWMwMWMzZTg1ZDc5NDg5YjViMjk4YWU0MWM0N2UgbGVnYWN5LXRydW5rCisxMTk0OCBiMzRmOWU3ZTI2OTE0NjU0ZDQ4NjNjNjdiZjQ4N2U2MDA2Yzk4NmMxIGxlZ2FjeS10cnVuaworMTE5NDkgNGQzZTJmMWQwYWU0N2VkYjc1ZWMxMzE3MmJkMTA3NmJhNTBlNTMwNiBsZWdhY3ktdHJ1bmsKKzExOTUwIDhiYzBhMzJkZGFiNWEyMmJiOTZlMjc3MDg4ZjJkMmNhNjZiNjUyMjYgbGVnYWN5LXRydW5rCisxMTk1MSBlNTk5NjI3OWY1OGM3YjMzMWNhMDgzMzM2ZTFlMTU0NjVlZWY0NDc0IGxlZ2FjeS10cnVuaworMTE5NTIgMTdiY2E0YjNkYTkzNTdjZjlkZDlkYjk1NDA1ODk4OWU4ZGFiMWU1MyBsZWdhY3ktdHJ1bmsKKzExOTUzIDFhZmRjNTU4MDE1NzhjZjFjYTU2NzJkMDNjNWUwYjZiODg0OWEyMDMgbGVnYWN5LXRydW5rCisxMTk1NCA1NDQyMmI0NmY2ZDE4MDJjYzkzYzQ3OWYyMjc4MzY3ZmY0ZWI4ODk0IGxlZ2FjeS10cnVuaworMTE5NTUgZTdkOTg0ZjI2NmNjNjFmNmU2YWZmOTZjODRlYjRlMmMyMmQxMjM5YSBsZWdhY3ktdHJ1bmsKKzExOTU2IDYyZTFiY2M2NmE5M2U0MjU1OTU5YTdjMTgyZDYwY2E1ZGUwOThjNzUgbGVnYWN5LXRydW5rCisxMTk1NyA0ZmE4ODEwZTg1Y2FjZjVjZjBlMmRlYTA0YmZiZmNhM2QzMWNlZGUwIGxlZ2FjeS10cnVuaworMTE5NTggOWZmZDYwNDgwN2MyMTY3M2RhMzBiMTQwOTQ4MjhkYTQzOTExZDRhMSBsZWdhY3ktdHJ1bmsKKzExOTU5IDhkYzBlOTdhNDVlYzc1MjA4YzUyYTFkYzA2NjU3NGI5MmZlYTc1NzQgbGVnYWN5LXRydW5rCisxMTk2MCA3OThiMTA0MWQyNjA2ZjA5NDZlOWM1NGZiMGM0MzFmZDhjNDdjODkyIGxlZ2FjeS10cnVuaworMTE5NjEgYTExNWMzZDQ5MmRiMDgzNDc0Y2NiOTk5YTAwMTMyNmJhOTJmYzY4MSBsZWdhY3ktdHJ1bmsKKzExOTYyIDRkZTA5ZWExMGVlMDhlMDIwYjBlMzY0ZWQ3Njk5MTViOGZlMGFmMjUgbGVnYWN5LXRydW5rCisxMTk2MyA2YTI0NGU2NGIzZTZiMmVjMDc2OTRiZmU5YWNhYjQ0ODU0NTYxZDQzIGxlZ2FjeS10cnVuaworMTE5NjQgZmViNmMzODZhYjc3MjY1ODNlNGYwODMzYWMyN2M3NTYyODJlZjVhYSBsZWdhY3ktdHJ1bmsKKzExOTY1IGQwN2JjOGJmMmQ4NDU5M2VmNzkxMDNlODIyZWUxZTNjZjdhYTU4YjcgbGVnYWN5LXRydW5rCisxMTk2NiAxYWJkOTFmOTcwMzMyNWM3NDM0MTU0ZTliNzJmNTE2ZWYwMjlhMzg0IGxlZ2FjeS10cnVuaworMTE5NjcgYzIxODE1ZmEwNzc4ODY2NTA2MTY3NjI0Mjk4YzY0NDZiMTY1YTMwYyBsZWdhY3ktdHJ1bmsKKzExOTY4IGRlMDA5MzE2OTY0OWJiMzBmNmY4YWVmZTMwOGUyNDM4Yjg3NWQwNGQgbGVnYWN5LXRydW5rCisxMTk2OSBhYmYyY2QyNTFiMjRhOWM0OTFmMzg4YmI5ZDkxZmJkODQ2ZmJhNjc4IGxlZ2FjeS10cnVuaworMTE5NzAgM2Y3MTczNDJmMGEzNmRlOTFkNmRjZjMyZDE5NTdkMjAyNjMyNmY1YSBsZWdhY3ktdHJ1bmsKKzExOTcxIGMxZmQ4MTQ2ZjJlOWE3OWM3N2U1ODc3YWJhY2IxNjIwNTI5MTYzNTUgbGVnYWN5LXRydW5rCisxMTk3MiBmODllYTliZjlhNTI1ZDk4MzJkOGQyMWQyNzcwODE2ZWQyNzQ2OWVhIGxlZ2FjeS10cnVuaworMTE5NzMgMWVhNmQyMzU2ZTUyZGE0MGY5NDdiZDIyOTZiZjcxYWMwOWRmODk3MiBsZWdhY3ktdHJ1bmsKKzExOTc0IGFmYTBjZDIxN2Y0ZWJhNzJkYjQxYzE2NWEzMmFiZTJjZDY5Y2YyMzYgbGVnYWN5LXRydW5rCisxMTk3NSBmNmE4NGExYzdlMDJjZmIyYWVmYzIyMzA4YmNjNGE4OTJmZWMzYzE1IGxlZ2FjeS10cnVuaworMTE5NzYgMzlmZmM1OTY3YjZiYWNiMjQ0N2IwNjQzNDI1NzMxMzM0YTY5YThhMyBsZWdhY3ktdHJ1bmsKKzExOTc3IDRhYmNiMzJmN2VmNTRhMzMyZGM0ZGViM2I0ODAzMGQxM2JlOTAyZGEgbGVnYWN5LXRydW5rCisxMTk3OCBlMWU5YzlkZjRmMTJjOGY1MDFkNmMxMDdiYmQ5MTk4YzUzYjI3N2MzIGxlZ2FjeS10cnVuaworMTE5NzkgNjM4NzZjZDk5ODRjOTI2ODFkZmE4MzRiYThlZjM2N2Q1ODQ2ODY5NCBsZWdhY3ktdHJ1bmsKKzExOTgwIDI1YmUwMGYzMWRhNjE1ZDQzNmVlNTkzZjBiOGMzZTBmNjI3YzYxODEgbGVnYWN5LXRydW5rCisxMTk4MiBkODQ3MTU1MjMwOTVhYzI3ZjdiMzk5Mjk2OGIxYzFmMjZlOWZlYTE4IGxlZ2FjeS10cnVuaworMTE5ODMgNmU2YmU4OTZlYzQ2NmU5NDRiMzlkMzY5M2M4OGQzOWJhNjFjNjg5OSBsZWdhY3ktdHJ1bmsKKzExOTg0IGQzOTI4Yjk4ZTJlMTNlOTIzOGMzMTUzNGU2NTFmM2I3M2I1YjAzNGUgbGVnYWN5LXRydW5rCisxMTk4NSA4ZjNlN2ZlMWQ0Zjc2M2MwYWY1MTE0ZjNhZTVjOTYyNmE3ZTM3Y2QxIGxlZ2FjeS10cnVuaworMTE5ODYgYjBjYTJjYTU4NmIxNThiMWQ0YzEwODI4NjljNTEyOWFiM2RjNzYyMCBsZWdhY3ktdHJ1bmsKKzExOTg3IGRiN2NjYTA5YmVhZmU3YjdjMjIxZTgxM2RiMmRlOGQ0NGNhYWZiODQgbGVnYWN5LXRydW5rCisxMTk4OCBiNzVkOTNlYzhlNWE2ZjdmMWIzZTExM2NmOWYyYjA3ZDMxODE4NjQxIGxlZ2FjeS10cnVuaworMTE5ODkgYTNiY2YxYjM2NTUxN2I1NGE5OWZmN2ZkMjgxMGM3MDBjNjZkZDdiOCBsZWdhY3ktdHJ1bmsKKzExOTkwIDk2NDdjNmFkNmE1MDk4Y2U4OTVhZTJkNzI3YjlhYThlMjQ2M2RlMWQgbGVnYWN5LXRydW5rCisxMTk5MSAxODE1MDdjYzFhNzI1OTVhNWYwMDU1NmFhODI3Nzg4MmJkY2VmYzI4IGxlZ2FjeS10cnVuaworMTE5OTIgNTQ5ODMxNzIzZWY4NTc4YTFhYTJmMTFjZmRlM2ExOTU3NmZmZTlhZiBsZWdhY3ktdHJ1bmsKKzExOTkzIGVhYmViYzE2MTUxODZiMWUyZTRmNmRiMzMxN2U2NTAyMmVjZjIxMDMgbGVnYWN5LXRydW5rCisxMTk5NCA1ZDgxZTQyYzZiYTJlOGUwNTk4ODI4MTA0MzIyZWM3N2RkNmI1ZjlkIGxlZ2FjeS10cnVuaworMTE5OTUgOTZjNzM0YWNmODRmNTVjZjkwM2Q1ZWE3OTZiMmZkOGNiOTU2NGE3NiBsZWdhY3ktdHJ1bmsKKzExOTk2IDc2ZTkzNTkyNGZhZTBiNDhjNzg1MWIyOWE3MWNmYzZjYmNhNTJlYTEgbGVnYWN5LXRydW5rCisxMTk5NyA2M2ExYTg1MTNjMWRjZTcwZmVmZTczNzc0MTY1MjRmNGJmZWZhMzRmIGxlZ2FjeS10cnVuaworMTE5OTggNDQzMWU3YTMxOTc3NWJiNmVkYjQ2YjEyYWQ1NzA3M2I1ZjkyMGUxOSBsZWdhY3ktdHJ1bmsKKzExOTk5IDM3Nzc3ZTBmODBlMzc1NTRlZDJiMDdkY2VhNWM5NDBmMjUwYWI1ZWIgbGVnYWN5LXRydW5rCisxMjAwMCA2MGRmYTIxMWRkZThiYWQ2NDg0ZDhhZTE0NDU0NzEzYjQwMjVkMTk2IGxlZ2FjeS10cnVuaworMTIwMDEgZmVjODYyMzAxZDZlMzNjZWFhMmRkNGIxMWM0NDJjYjU1MjMwN2NjZSBsZWdhY3ktdHJ1bmsKKzEyMDAyIGY1OTY1MThkMDY5MWUwMjViY2FlNmNlNzQ3YzgxNzE2MWRiY2RjZjUgbGVnYWN5LXRydW5rCisxMjAwMyAyNDQ5NzY0M2RjYzkxZDE0ZGY2NTJhZWM4NjE4OGZjZjM1OTk4ODlhIGxlZ2FjeS10cnVuaworMTIwMDQgMDQ0MjYyMjQzMDJhYWRhZTRhMjM3NDRjNTFjZDM5YThjNTE4YjgxMCBsZWdhY3ktdHJ1bmsKKzEyMDA1IGNkNzkwMzEwYmM0ZjA2ZjJhMzEwNTQxMjA2NGZjMTJmZDY2ZDcxYTggbGVnYWN5LXRydW5rCisxMjAwNiA2MGQ5OTBmN2Q3YWI1NmFmYzU5YzU1MjhkNGM4N2RmMzczY2Q1NjYwIGxlZ2FjeS10cnVuaworMTIwMDcgNGE3MzQ0ZDU1YWUxODc5NTI4ZDBhODYzYzM1MThlZjYwYzdhNDIwNiBsZWdhY3ktdHJ1bmsKKzEyMDA4IDg1NDQ0YWYyYmU5NWQwNTViMTIzMzYwNWNmMmFkY2MzYjUyNGZmZmIgbGVnYWN5LXRydW5rCisxMjAwOSBiYmU5MjkzMmEwMDVlNTdlMjI4Y2VjMTQyZGE2MWJiOWRlNWZiZjUzIGxlZ2FjeS10cnVuaworMTIwMTAgYTJlODNiZGMxZmVhZWY3M2JhNTk2YWUxZTRjNDYxY2FkNjcxYzdjNiBsZWdhY3ktdHJ1bmsKKzEyMDExIDM1MGYyNDE4MGRjYjQyMmExNGQ3ZjZlYmEwOGIwZDRlZmEwYTRmZDggbGVnYWN5LXRydW5rCisxMjAxMiBhMTI2MTA3YzQzM2E2ZjlhMDdjN2QzNmFkODk5Y2Y5NTVkNGYwMjRlIGxlZ2FjeS10cnVuaworMTIwMTMgOTgzZjUzZjJiNmY2ODNjYjRmYWY5YTBiN2NkYjZhYTYxZmJiNWM0MiBsZWdhY3ktdHJ1bmsKKzEyMDE0IDU4ZjZkYTdjOGJiODk0MjE0YWYzOWY0ZWUxMmM2NWVhMGFmOGRiYjAgbGVnYWN5LXRydW5rCisxMjAxNSBmZTc4Mzk4NGY5MmVhM2EyNDg4OWFmNTRmMmM0ZTBmZTA1YWFhZTdmIGxlZ2FjeS10cnVuaworMTIwMTYgMjMwOTI1ZmU1YjJkZTlkZDZiMzZiMjFlYzAwYmE3MDU4NzhmM2IzZiBsZWdhY3ktdHJ1bmsKKzEyMDE3IDVhZTFhMjBiYmU3MWViNTY5ZTYyMTFjNGQ0YWNjZDlkNjJkNjJiYzEgbGVnYWN5LXRydW5rCisxMjAxOCAzMTVjYzA2YTgxNjE1NDdkZDQ5ZGU5ZjJiMTJjMzJjODU5Mjk4ZTBjIGxlZ2FjeS10cnVuaworMTIwMTkgMGYyNzI1N2ZiNmNmNGY0MTViZDZiM2E2NDA2NzFiMmVkOTA4ZDg4MCBsZWdhY3ktdHJ1bmsKKzEyMDIwIGExYThkZjczYmZmZjUyM2ZlN2M3ZDhkMzk4Y2NiYzkyY2ViMTliNTYgbGVnYWN5LXRydW5rCisxMjAyMSBlZDZjYWNkZGM2YzY4ZTg3YjkwNjFhY2ZmNDUzNjkzZjI5MWQxNDZjIGxlZ2FjeS10cnVuaworMTIwMjIgYzZhMTEwM2VmYThhZjMxZTZlNzlhNjljMGU1ZTFhNDg1OTE1MGY0OSBsZWdhY3ktdHJ1bmsKKzEyMDIzIDQ4YzcwMDQxMDkzNjNiYjE1MTQ5NTQzZWU2YzZmMjAwNWY1ODkzMTcgbGVnYWN5LXRydW5rCisxMjAyNCA3NTA0ZjIzYzkyNDdkOTEwNmU4OWE1NmZjN2QxZDg0M2ZlNjY5MjFkIGxlZ2FjeS10cnVuaworMTIwMjUgZjkwMmVjYzg2N2QwOGQzNGM5YTBhMzlmMDkwMmY0ODQ0OTRjMWFkNiBsZWdhY3ktdHJ1bmsKKzEyMDI2IGUwNTkwNDliMWE3NjIwYzhlMTUzYjQxNDlmM2MyNTZmNjdmZTE0M2EgbGVnYWN5LXRydW5rCisxMjAyNyBkN2QzOTI2MGZlODJkNWZmZTFkNTdiNmNhNjY2NDZhOTZiNGZkNTczIGxlZ2FjeS10cnVuaworMTIwMjggODNmODNmMDAyZDJlYWU1MWZmYjgyMzY4OWNkYjEzOTQxMTY0Nzk5NyBsZWdhY3ktdHJ1bmsKKzEyMDI5IDY4ODYzZjUxMjc2YzA4NTExMDViYzkyNWMxYWRjNzQ4MTJkMGZhNjUgbGVnYWN5LXRydW5rCisxMjAzMCBkZjA3NzdhYjdjNjM4NTRmODYzMzBhZTlhMzY4OTY0ODAzYjI3NmVkIGxlZ2FjeS10cnVuaworMTIwMzEgNzlhOGExYTc0NjdiMTIyZjQwZTE4MmRhYWZiOGUxYTdhMGI4ZDNmZCBsZWdhY3ktdHJ1bmsKKzEyMDMyIDUzMzI1YjhmOGNlOWIxY2QzZWIyNWY4YTc4MmQ5ZDMyNTFkZmZhY2UgbGVnYWN5LXRydW5rCisxMjAzMyA5M2VjYzUxZjU5ZDEyYWYzODNiNTM0YzJmMzE3NGQxMTczNDFmOTZlIGxlZ2FjeS10cnVuaworMTIwMzQgM2U1MGMxZGRhYjNhM2JjYjExYTJjOTBlMDBmOGZiMDgxNjczNWZjNyBsZWdhY3ktdHJ1bmsKKzEyMDM1IGYxN2NlZGE2ZTY2NjkyNTczZDNlZjFlM2EwNWI1NDcwZjUyNDA1NTkgbGVnYWN5LXRydW5rCisxMjAzNiBmZjM5MmRkN2I5NzA5NzQ0YmM0YzQ4M2ExY2YwNmM5YjBlOTEzMDNmIGxlZ2FjeS10cnVuaworMTIwMzcgODdiYmM3MjFiYTJiOTlkZjU3MWY3OGMyYjQwN2FkMGYwYjhlNDA2MiBsZWdhY3ktdHJ1bmsKKzEyMDM4IGFhMmMxYThmYThjZTExMjQ5NDk0Yjk5ODQwOTgwODNlYzNiNDEyMjAgbGVnYWN5LXRydW5rCisxMjAzOSBiOGVjOTc0YWZkNjk1NmQ2NzI1OTI1ODFmNjI3MzA4OWYxMDc2ZTQyIGxlZ2FjeS10cnVuaworMTIwNDAgMTQzN2MyMzM1YjNiNDZhNWU4YzZjMDQ1MzQ0ZTY5MDVhMWNkZDJlNiBsZWdhY3ktdHJ1bmsKKzEyMDQxIDZiYWQ2OWQzODIxNjI1ZjgyOTM4MTE2YTBmNTIxOTM5ZTkyZWNmYmIgbGVnYWN5LXRydW5rCisxMjA0MiAxNmFmMjU4MmM5NjRjY2M3YzVhNWUwNTViMWM2YjM3NThlMTY2NjczIGxlZ2FjeS10cnVuaworMTIwNDMgZDY0MTVjMjdiM2IxYjRiZjBiZWQwMGZlOTBmZjVlZGUzYTU5MjQ1NyBsZWdhY3ktdHJ1bmsKKzEyMDQ0IGFhOTYxYTQ2YWU5ZTA5NzYzYjMxM2E3NWRkNGRkZDVkYWVkMTRlNGMgbGVnYWN5LXRydW5rCisxMjA0NSA2ZTI0OWIxMzVlZDNiMjFkNjlmMTRjYzA2M2Y4MTVhNGEyYmZmNmEyIGxlZ2FjeS10cnVuaworMTIwNDYgODgxOWRlZjFiMzljNmFjYTA0MDFkYjZmODQ2Y2IxZTU1ODA3OGNhYSBsZWdhY3ktdHJ1bmsKKzEyMDQ3IDQ4NWMwYmRmZThhMGUzOWVmY2U1MDliOWI1MDk3ZGNmYWJkYTFlZjggbGVnYWN5LXRydW5rCisxMjA0OCBkNTk0ZTgzMmE1NmNiYzE5MjMzYzZkMmEzNjgxYzE3MzA5Yjg2NzVlIGxlZ2FjeS10cnVuaworMTIwNDkgZGYzOTg1ZWI1ODczYmM4Zjc2M2E0OTRlOGFiNjViMGU2NDQ3NGU4NiBsZWdhY3ktdHJ1bmsKKzEyMDUwIDlhNGY1YmFhODI0ZTdhYmJkOGIwNDQ3N2ZlM2I5Mjk1ZjljMWQ3NjYgbGVnYWN5LXRydW5rCisxMjA1MSAxNjg3OGE0YzI2MGQyMGE1ZGZlNDhmNGQ0Yjk5YTM4ZTk3M2NmOGU5IGxlZ2FjeS10cnVuaworMTIwNTIgOTE3N2M0MDlkYzQ1MTJhMDliMmNjMDgwNjIyZmNlNmQ2MzI3MjdhZSBsZWdhY3ktdHJ1bmsKKzEyMDUzIDIyMDA5MDRhYmRkYzUxMzY1NDRiMGRkMDhkZDZhN2IxMjQyY2U4ZWUgbGVnYWN5LXRydW5rCisxMjA1NCA4M2JiNjA2YTMyZTZmNDQ4Zjk4MDhjYWI2N2FkNDM5YTJjYjQzZWRiIGxlZ2FjeS10cnVuaworMTIwNTUgZjAyYzY1NDllZDFiNTQxN2I0NjIyMzdmYzU1YzQyOWM3OTZiZmJlZSBsZWdhY3ktdHJ1bmsKKzEyMDU2IGZhODY3ZDhlZTdlYmMwMzkwZWQ0NzlmY2IwMWQwZDAzNGQ2ZGRiOTIgbGVnYWN5LXRydW5rCisxMjA1NyBmZWI4Zjg3NjllZjYyZGM1ZmFjMTA5YzhkMTFkOGVmMWQ5ZDNiODlhIGxlZ2FjeS10cnVuaworMTIwNTggMDY3MTdlNTIwNjhmZmUzMDg1NzNlYjUzMDJiMDlhOGRlYTcwZjMzMCBsZWdhY3ktdHJ1bmsKKzEyMDU5IGFlOGUxNDk0NDQxNDdjYWYyZGI1NWU3MGQ0MWVlZWEzY2M0YmQ1YmUgbGVnYWN5LXRydW5rCisxMjA2MCBiYzllNzcyMWM5MTYyMDNmNTMxYjBjYTVjZjY1MTQ5YjZiNzZjM2I3IGxlZ2FjeS10cnVuaworMTIwNjEgZDg1ZDJkOTk0ZjFmNzg5ZjZmYzNiY2ZiZDIzMTE0NTgzMTcxZGU1ZCBsZWdhY3ktdHJ1bmsKKzEyMDYyIGQxM2E2MGI0NGI0NTg3YzY1YjkwOTRhMGU3N2E3N2Q2NjQ4OWZmMDUgbGVnYWN5LXRydW5rCisxMjA2MyBhMDkxMTg1Y2NmYjZiNDU4ZTBiYzU0ODNhYmQ4MjA1M2U2MWZkZWVmIGxlZ2FjeS10cnVuaworMTIwNjQgYWM3NDI4NjJjYTM2Mjc3ODg0MDA0Y2JkYTI3YmE2MjY5YWE4ZjZjMyBsZWdhY3ktdHJ1bmsKKzEyMDY1IGI3MTU4ZGIzNDdkOWI5ZmVlZGY4OWU3OTJhMmRiOTAwZGIzMDMzNTEgbGVnYWN5LXRydW5rCisxMjA2NiA1NTk5MTE3NjhkY2JhZGIyODUzYmVkNzY3MTcxN2M2Y2E1MTU3MWM3IGxlZ2FjeS10cnVuaworMTIwNjcgYWIyMGY1Y2RkNzlmNmU1NGE1ZGFiNGFjM2ZhZWU3MTExYjk3MmJhYSBsZWdhY3ktdHJ1bmsKKzEyMDY4IDVjZGJkOGMwNDAxNmNjNjQ0ZmM2ZTNkYTgwMjg4NjdlNGM3YjE5YTAgbGVnYWN5LXRydW5rCisxMjA2OSBiMDlhOWM0MTJiYTI5OTRhOTc5ZmZkYTVhYTFiMTQxYTAzOTczZDczIGxlZ2FjeS10cnVuaworMTIwNzAgYjY3NzQzNjc1M2E4NzJiMzQ0ZDgzOGRiYjk0NmQ1MjkxYjRkMjVkNSBsZWdhY3ktdHJ1bmsKKzEyMDcxIDhlNmVhNWYwM2U3MzQwY2I3ZmZjY2UwZjU5ZWVmZDMwYTBkMGIzODYgbGVnYWN5LXRydW5rCisxMjA3MiBhYTFlNDgyODVkN2JjZTAwN2E4ZTUwYzVjNTkzYzgxYjZlMTM4NDQ5IGxlZ2FjeS10cnVuaworMTIwNzMgY2RmNTYxN2MyMDIyZDJiNzcxODAwNThhZGMyYmM3ODhmMTRiNzI5NiBsZWdhY3ktdHJ1bmsKKzEyMDc0IDk4YWQ1N2MzOWQyMGRjMWYxMDVhNWE2NDgyNzJhNDlhYjEyYTA1NDYgbGVnYWN5LXRydW5rCisxMjA3NSA4MWRkN2M3M2Y3YjIxZjQ5YjM4ODcyNGNhYzcxZTYyYTEwZDQzOGUzIGxlZ2FjeS10cnVuaworMTIwNzYgMjk5Mjg0ZWU2NjlkZmZmYjdhNGZjOGJjNzQ0NmMwOWFiZjMxYmY3ZiBsZWdhY3ktdHJ1bmsKKzEyMDc3IGY0ZGE5NDQ5ZjAxMTAxZTJkNTc0NjY2NGNkYTllNWVkNDVhNDAxYWMgbGVnYWN5LXRydW5rCisxMjA3OCA5YThlY2Q3NTllMTM0MTFjMmFlMmYwNTFiOThjYmM5YTg1ZjczMTQ4IGxlZ2FjeS10cnVuaworMTIwNzkgNDU5NWVmNWE5NjhhYzUzNmViNjIwZjEyNzRmOGMzYmNkMzRjNjRhMiBsZWdhY3ktdHJ1bmsKKzEyMDgwIDg4ZDU5MGNjMTExNmU0ZjRmYTBhOWE0MDBlOTU1NDA0NjNiNGYxMmIgbGVnYWN5LXRydW5rCisxMjA4MiA2NDgzZGJlMDlmMDYxODhjZTNmYmUxNmU4YzMxYjQyODJkMDQ5N2Q2IGxlZ2FjeS10cnVuaworMTIwODMgZTY2ZTg4ZjUyNjA2NDNkMzgzN2VlODEwYTg2Nzk0MzQ4NzRlNDBkMyBsZWdhY3ktdHJ1bmsKKzEyMDg0IDNjMjk3YTZhZDRlOGJmOTlhOWMxYzc0YzY0ZmNhNmIwNGY0ODI5ZDAgbGVnYWN5LXRydW5rCisxMjA4NSA2MGZkYjFkYjExNzU2NjViOWQ3NTlmMDJiMWRjYWIxMGQwMDRmNTJhIGxlZ2FjeS10cnVuaworMTIwODYgNWE5Y2EyZTkzN2I1YmQ3MzRkZmNkMmU4YTUwNWMzNzViNjBlODVhZiBsZWdhY3ktdHJ1bmsKKzEyMDg3IDM4MDIzYTQyNWU0ODM4MGJlZDdiNjJiM2I3NTNiMDQ1ZjMzNDU2Y2IgbGVnYWN5LXRydW5rCisxMjA4OCAwMWM4ZmU0NDA2NGIzMmRkMmY2ZTczMDRmMzUyOTc4MDQ2OTc5NDIzIGxlZ2FjeS10cnVuaworMTIwODkgNDViZDZjNDBjMDVhZTA1MmZhMDA1MzZkMDcxYTIwMTAxYzQzYTRlYyBsZWdhY3ktdHJ1bmsKKzEyMDkwIDdmOTA3MzY3MDFhMzUwZTMzOTU1MzAwM2MwZWM1YTI2MDI3NGUwNTUgbGVnYWN5LXRydW5rCisxMjA5MSAyYWFmY2VlMjIwYmMwYjc2ODlmODJmNDZlMDljNGY5ZTAwZWJmN2U0IGxlZ2FjeS10cnVuaworMTIwOTIgZjIyZjc2OWJmM2Q5NDIxYzlhOWFhMTRlNjA2NTRkZTc0YzhlYjA3ZSBsZWdhY3ktdHJ1bmsKKzEyMDkzIDg2YmY3MGE1NWVmZGU0ZGU3NDIyYTE2OGFjODQ1NjEyNmUxNTEzOWUgbGVnYWN5LXRydW5rCisxMjA5NCA2MTZiMTc0ZWViNTQ4MzBkZTg0ZTBkZDIzNjA2OWU2ZjEzZmFmN2VkIGxlZ2FjeS10cnVuaworMTIwOTUgMzYwOWNkZGM3OWRmNjEwM2VlNDg0NTk2MDZkNTQ1NjkzZDFlOTdiZSBsZWdhY3ktdHJ1bmsKKzEyMDk2IDU4MzFiYjNjYTQyYTQ5Zjg4YWQ2NjIxOTVlMGYwYTE3ZWIyZGNiN2YgbGVnYWN5LXRydW5rCisxMjA5NyA1NGFhZmU0MmMwYzNmMjAxZWNmNjg1ZTc3MmJmNjRjNGZkMTZiOGRjIGxlZ2FjeS10cnVuaworMTIwOTggMzA3NmZmZjMwNTM1ZjJkMGI1YWI5ZjRmNjA2NTU4ZWM2MTgxMTRiZCBsZWdhY3ktdHJ1bmsKKzEyMDk5IGZjYmYyMjJlNjg5ODFhYTZmNDZkZWNmMzk0NGI0MTA2M2FkNTA1Y2MgbGVnYWN5LXRydW5rCisxMjEwMCAwZjNmOWUzNjYzNTZjN2I4MTE4ODViMjMzYjhkMzdjODExMzM1YmZhIGxlZ2FjeS10cnVuaworMTIxMDEgZDc5ODZiNGI5MTAwOWMwYTIyYzE0MjMzOWNiMGMxY2EyNTljM2U5NiBsZWdhY3ktdHJ1bmsKKzEyMTAyIGM0ZTJkYTQ3Nzk0OTI5Y2UwNWUwYWZhMzhjNDE4NjIyYzgyM2RmYjEgbGVnYWN5LXRydW5rCisxMjEwMyAxZGMwZWYyNGIxNWQzMjAyZTIyOTkxYjQxNWI5NjAxNjhiYTlkMzBhIGxlZ2FjeS10cnVuaworMTIxMDQgNmI1OWY5YWI1ZGIxYTUxMzg0MTkyYjYwYjRlYjBmOWNjNTQ4MjQ5MiBsZWdhY3ktdHJ1bmsKKzEyMTA1IGNiOWUzZjAwZDZiNjU0NzRkZmU4MDNhNzIwNzVlNmE4NzQ4OWM3YTggbGVnYWN5LXRydW5rCisxMjEwNiA4NDgzOTUzYTkyNDgzZDdlYjk1MDQzMWU1ZDQxNDU1MDE2NjQ3MThiIGxlZ2FjeS10cnVuaworMTIxMDcgNWEzNmJhZDFkMjQ4OWI4N2FiZDc3YTFjYmMyMjE5OWVjZGM1OWZmNiBsZWdhY3ktdHJ1bmsKKzEyMTA4IGMxZjk4ODU3Y2M1YmI3ZjYwNzkwMmQ4MzU3MmVmNWMzOTk4MjcwNjAgbGVnYWN5LXRydW5rCisxMjEwOSAyNjc4ZGJmNGFkNjlhMzMwZDZlNGVhZTNhMWVkNDBlMmI2MzExMmI4IGxlZ2FjeS10cnVuaworMTIxMTAgNTcwZmVkNGFiOGRhZjZmYzk3YjY0NTE0YTNkOWU0NzE2ZTkwNDRjNCBsZWdhY3ktdHJ1bmsKKzEyMTExIGFhODhjZmZjMzVhYjk0YTMyYTgxZTlhMTk0N2UyNzAxM2YzZTk4Y2IgbGVnYWN5LXRydW5rCisxMjExMiA1NDI2YmVmODllYzMzOGQwNGQ4ZmZkZDM0NjE4MmIyNDcwZmYxYzNkIGxlZ2FjeS10cnVuaworMTIxMTMgY2U3OWMwZTc0ZjZmZTFmMjkwYmU0OGY2ZmZlOTI4ZmVlYTE0Y2NjNSBsZWdhY3ktdHJ1bmsKKzEyMTE0IGMwMzc4N2VjOTgxMWM5ODZiNTg2YTBmZjZlZjlmMmU0Y2ZjMTk4ZGUgbGVnYWN5LXRydW5rCisxMjExNSA5YWJlZTYzYzZiYWIzYzQ2ZDdmNmI2YmU0MDg2YzJlNDhlYjI4YWEyIGxlZ2FjeS10cnVuaworMTIxMTYgYzEyZmVlNGNlMzYzZDhmMzFiMGRmM2YwYmI3N2ZhZDhlMzdkN2RhMSBsZWdhY3ktdHJ1bmsKKzEyMTE3IDk5MWJkMzUzY2ZlYmZiZDdhYjY0OWUyZjkzYjM1NTA3MzRiNzE4MjQgbGVnYWN5LXRydW5rCisxMjExOCA5MGZkYjM3NzY0YTIyYjEwNmI0ZjUyNzM3YzNlODQ2OGZlNmFkZGIzIGxlZ2FjeS10cnVuaworMTIxMTkgMTc5ZmI2M2IxNTU0NzQ3M2JiM2RhYTA4YmMyYzcyMTgxYTBjOWViOCBsZWdhY3ktdHJ1bmsKKzEyMTIwIDA3ZWQzOGMyOTZlZThmODViODlkZjdhYjg1MDBiMDkwZjIxMzA0ZmYgbGVnYWN5LXRydW5rCisxMjEyMSA1NjcyZjVmMWRiNDY4NGQxYTc2OWI4MmVmMjc5ZGU4YjBjYzY0NGU3IGxlZ2FjeS10cnVuaworMTIxMjIgZmE4ZjlmZTBhMzNkOTg1MTVhY2E0NDg4ZWY3M2U1MTgyMTIxNzgzZCBsZWdhY3ktdHJ1bmsKKzEyMTIzIGIyZmRkNzFjYTAwNmNiNDYzZTM3ZjI4ZGZiMDM5YzVmMzA5N2NjMjYgbGVnYWN5LXRydW5rCisxMjEyNCAxZmU0ODAwOWQ4ZWE4Y2E1Yjc2NTFjODliZTc4Y2QzYTJlYjFjYThmIGxlZ2FjeS10cnVuaworMTIxMjUgOThhNmZjNjg3N2FlZTJjMjE5NzNhYzAxNThiYTRiY2QzMWYyZmI2ZiBsZWdhY3ktdHJ1bmsKKzEyMTI2IDRmNTBjNzA0NTRhOWIyZDEyMGNhZDZjNGQ2M2FiNGZlZWY5ODNkOTUgbGVnYWN5LXRydW5rCisxMjEyNyA4MjAzMGNhMGZhMmVhMDBjNTRmNWM0ZGU3OTVlNjY0N2ZjYTk2M2E1IGxlZ2FjeS10cnVuaworMTIxMjggY2EyMTI4NGU4NzVkY2Y1N2UwN2Y3OTNhNDgyOGUxNmZhOWJjOTIzMyBsZWdhY3ktdHJ1bmsKKzEyMTI5IGQ2NjcxMDkzOWEzMjU0ODdmNGIyNTI1MTNlMWQ2Y2IwMzdlMjhhOWQgbGVnYWN5LXRydW5rCisxMjEzMCAyYjAwYmI1MDg4MDM2YTQwNTg4ZTIyZjM0YWFmNzQzMzI0YzQzMTlhIGxlZ2FjeS10cnVuaworMTIxMzEgYWM1MzQ1ODE0YmEwOTMzYzNkNWE5MmYyZTNiZDgyNTgyODZhMjMzMSBsZWdhY3ktdHJ1bmsKKzEyMTMyIGUyZGMzY2IwOGM2MGE3Zjk2MDVhZDA2OWIzYjkyYWJiYmJlNjI5ODIgbGVnYWN5LXRydW5rCisxMjEzMyA4NTg2ZDkxMWZiMzkwMjM4YjIzZTdlZGFlN2QyOTNjNzkyOGZhZDRkIGxlZ2FjeS10cnVuaworMTIxMzQgNDQyNjdiODhmYjU5NDEwZWY2OGU0NzE2Njc5YzUzYjg0MzQ4YzlkYyBsZWdhY3ktdHJ1bmsKKzEyMTM1IGU1ODk1N2YwNmExNTM4NGUyZDdkYzI2NWQwZTU4ZDE3ZDI1Njk0MDEgbGVnYWN5LXRydW5rCisxMjEzNiBmNWU1ODZiNWY3OTAwMDQ1YWE0M2U3MzRhMmY2N2Q2YTQ1MzIyNDM1IGxlZ2FjeS10cnVuaworMTIxMzcgZjljYzUyMzc0YzUyYzNlY2VlMmM4OTJlN2M5MmNkZjAwMzBiZjkyZiBsZWdhY3ktdHJ1bmsKKzEyMTM4IGRhMWRkM2U1NGI3YWUyNGEyNjIzZDBjZDVmZGYwMTlmOWNiYWZlZGEgbGVnYWN5LXRydW5rCisxMjEzOSA3MmEyZmJiMGUxZjkwMDM4ZGMwOGZjNTFiYzg0ZTI4MTM0ZWUxZThlIGxlZ2FjeS10cnVuaworMTIxNDAgZDE1MmFkZjNmMDk0Y2IyMmI5MjgyNWE5MDQ2MzE2NmIwNmQyNDJjZiBsZWdhY3ktdHJ1bmsKKzEyMTQxIDA4Mzc5YzdmNWZhOWIzMDFmMjFlZjBhYjJmYTM4MzY2NjE0OGY3MTkgbGVnYWN5LXRydW5rCisxMjE0MiBjMmVjMjFjNjVkMDUwMDVkNjA3NmE1YzU3NTZhNjlmNzQwOWE5MzUyIGxlZ2FjeS10cnVuaworMTIxNDMgMmNkNThhNjFiMDUxNjA3M2M0OGM5MzA1NjdiZmJjOWY4YWM0YjM0MCBsZWdhY3ktdHJ1bmsKKzEyMTQ0IDRlMTVkMTc1ZWVkMGM5YmI0OTFmMzViNjk1N2U4MjdmODVmYjc5MmQgbGVnYWN5LXRydW5rCisxMjE0NSA0NzQyYzUyOWQ5YzhlMWM5ZDY2MTdjZTI5Y2UzNzIxY2VkYWU0YzFlIGxlZ2FjeS10cnVuaworMTIxNDYgYzRlYWVmODlhNGE3NWQ5ODBhY2Q1MjVmODc4YWZmY2NhMzY4YTQ0NCBsZWdhY3ktdHJ1bmsKKzEyMTQ3IGM2NmIwZDM5YTczNmJlNjBlN2VlYmY1ZTZhNjlmZDcwODliMzUzZmEgbGVnYWN5LXRydW5rCisxMjE0OCA0NzAxMmMxM2VmZTQ3YjRkZWJiOTcwODEyOThhZWM1N2VjY2M5NmVjIGxlZ2FjeS10cnVuaworMTIxNDkgYjRjZGEzOTQwYWMzZmM5N2Y0ZjZhZWJhODEzNTFkZTc1YzBkOGQ1NSBsZWdhY3ktdHJ1bmsKKzEyMTUwIGI3N2QzNzM5OTM0MzdhOTljZGU4OWQwZDdjN2JlY2IwZDZmOGRkZjIgbGVnYWN5LXRydW5rCisxMjE1MSBlN2VlMTg4NGZkNTQ5MWNmZThlZGU1OWNiZTJkY2UwMWEyMGQ1N2Q3IGxlZ2FjeS10cnVuaworMTIxNTIgNjk0MWY0M2QzYmI4MDljNzA2MTAyNGE5ZjNmMGQ2NDRiY2JiMjE3MCBsZWdhY3ktdHJ1bmsKKzEyMTUzIDkxNzM1N2MxMjU1MjI2YzlmODhiZGVkYjU1ZTJkNmRjZTQzYTUxYzYgbGVnYWN5LXRydW5rCisxMjE1NCBiZmNlNzNkMzU3NmMzMjA4Y2RjMTJjMDg2NWI4MDExMzljZThhZTZjIGxlZ2FjeS10cnVuaworMTIxNTUgYWQ0OTdjYjVkMmRjMmY5ODlhNzRjMTMxZmYxMmI5ODk4MGVlOGU2NyBsZWdhY3ktdHJ1bmsKKzEyMTU2IDdkZGU0NTAxZjUzYWRhMzRkMTFlNjIwMjFkZWQyNTdhZWE4OTFiOWIgbGVnYWN5LXRydW5rCisxMjE1NyAyMzIzN2JjYjc3NGJmMmVmNjNmOWUyYzdjM2NhN2VmMjY5ZDkyY2Y2IGxlZ2FjeS10cnVuaworMTIxNTggMDRiMGEwZjI5ZjY1ZjMwYWE1NWRjNGMwNTU1MjczYWYwNjc3YjAzYSBsZWdhY3ktdHJ1bmsKKzEyMTU5IGEyMDZjNjFhODk1MDllNWQ0MWMxZDcxYTVmNzAxYzFjMDhmYzRmMWEgbGVnYWN5LXRydW5rCisxMjE2MCA0ODA4YThiNTdhZjNhYmJlNzc3NGEwNWJiYmMwZjE0NWM5MTg5NzVkIGxlZ2FjeS10cnVuaworMTIxNjEgOWJhN2Y1MGI4MjVhZDA4NTFjMzczODYwMGJhYmViMDM1MWUzYTJmZCBsZWdhY3ktdHJ1bmsKKzEyMTYyIDQ0NDk3MDJhMDk2YTRmZDc0N2M2OTI4YTU5Njk2ODE0ZGU3NDgxMGQgbGVnYWN5LXRydW5rCisxMjE2MyA0ZWVlMDYxZGFjNDRjYmNiNDVmNTMzYTUxMWI5YjhmNjRiYzg3Zjg4IGxlZ2FjeS10cnVuaworMTIxNjQgZTExZDc1MDA1YTVhOTY2MmNmMmU0NzdiMzU1MTM3OTBhZTU5N2MwMiBsZWdhY3ktdHJ1bmsKKzEyMTY1IDlkYTAxZTU4YTBiNTViYTk4ZjM2NGIyMTgxZjI4YmRiM2Y0Y2UwMGUgbGVnYWN5LXRydW5rCisxMjE2NiA5MTRmODNlN2ZhMGEwMjg5OWEzN2YyNDg2MGI2MmFiMTdhZDExOGQwIGxlZ2FjeS10cnVuaworMTIxNjcgNDA4NThhYjIzNTY4MjEzOWRhNDc5YzFlMzc1NDcyODFmOGRhNDRhNyBsZWdhY3ktdHJ1bmsKKzEyMTY4IDI3MmVjY2M1NzNlMjQwNmFmZWI5ZWVmY2JiZGJlNmEwMGQxMmZlNWMgbGVnYWN5LXRydW5rCisxMjE2OSAyMTRmMzA0NGQxOGMxMGNmNzFlOWMwMGUzY2YxYjZmMzFmMWVkYWY3IGxlZ2FjeS10cnVuaworMTIxNzAgMWQ0MGJjMjU3MDNhNTdjOWQ0YWViYzdlODFlMGU5YmY5ODI0YzgxNyBsZWdhY3ktdHJ1bmsKKzEyMTcxIGI0ODQzYTA3ZDU3OTFjMTMwMzZiMmVmMGMyZjAyOTJiZGI2NjBmY2EgbGVnYWN5LXRydW5rCisxMjE3MiA5OTE2ZmM4NWIyOGE1OWZiMjRmNzhhODI5ODQyZGJjMGU1YTU0NzQ2IGxlZ2FjeS10cnVuaworMTIxNzMgNTM3NjZmZWQ5ZjhjYjhhZWEwMjI0MzdhMzM3OTE1MTQ3M2RmMGY5YiBsZWdhY3ktdHJ1bmsKKzEyMTc0IGI3ODA0OWZlZmNlYjI5N2M2NjcyMGIxOTZmM2I3ODNhNmU3MDAzYWQgbGVnYWN5LXRydW5rCisxMjE3NSA1ZDRmMTM0NzE1MGVkZWE0NjUyZmE3M2Q1MDIxZjBkMDA2N2EzM2EyIGxlZ2FjeS10cnVuaworMTIxNzYgMDBmZWQ3Njk4MGJjN2Y3MjdlY2EyNGI5N2QzODJlNjViMDg4OTI5ZSBsZWdhY3ktdHJ1bmsKKzEyMTc3IGYzOWExOWExMjI5YWY2ZTFlNWU2NmY1MWUzMzBjOTVjZmU2OWQ2YzkgbGVnYWN5LXRydW5rCisxMjE3OCA4NzdkMjNiZDViZGMyZDMwNGZhMjFjMzQ1Yzk5YmRjZTFmYmYzMTFlIGxlZ2FjeS10cnVuaworMTIxNzkgOGI2MWUxMjczYjRiZGEzNGE3ZmI4OGIyYTc5MjcxYmI4Yjg1MzU5ZSBsZWdhY3ktdHJ1bmsKKzEyMTgwIDYxNTRkMmU2ODYwMzI4NjY5YjRmNjQ3NjUwYzYxYTEzNTIzOGE5ZGMgbGVnYWN5LXRydW5rCisxMjE4MSA1MzQ1ZmQxM2RlM2Q5ZDdhNGZmNTk5NjY3ODYwYTg5NTBmNmQ0OWQyIGxlZ2FjeS10cnVuaworMTIxODIgNWE2YmQ0M2UyZDVhNzU1NDQwYThjY2YwNzg2NzQ2OGQ5M2YxMWIwNiBsZWdhY3ktdHJ1bmsKKzEyMTgzIDEwOTU1YzM5YzBlN2I2YmU2OGQ2NGNlOGIxZWY5MTE0NjU0NzBkZWEgbGVnYWN5LXRydW5rCisxMjE4NCA5M2NiMWFhMjRmN2QxMDY5NzM4YmZmOTNlZTg1OGQ2Y2I0MzgyZDQyIGxlZ2FjeS10cnVuaworMTIxODUgYjBiODE1ZWVlZDJjNDkxYThlNThlYTA5YmRmYzJiMjExMmUzOTY3ZCBsZWdhY3ktdHJ1bmsKKzEyMTg2IGI4ODNlZjNiMmQxOTZiMmQ5YzhlMGI3ODcwNGM5NTEzMjA5ZDIzMWMgbGVnYWN5LXRydW5rCisxMjE4NyBlY2QxMTU0MmVhYmU1MTkzOTAzOWQ3OGMyNGIyMDM3YTFhMDMyNzE5IGxlZ2FjeS10cnVuaworMTIxODggMGEwNDM0ZWZlYmNmZWJjYTkwZjA1NjA1NjJiYjg2NDc1ODM2OTkyNSBsZWdhY3ktdHJ1bmsKKzEyMTg5IDMxNDg5Nzk5YzhjNjBhMzA5MjU1NThiYTQ5YTE2YzY3ODMyMzdlYWUgbGVnYWN5LXRydW5rCisxMjE5MCA4ZDNjMmE4MDgzNGNjMTBiZjEyMTg3ZjUwMWM1ZGYzYWJiMTFlZDc4IGxlZ2FjeS10cnVuaworMTIxOTEgNTM4OWM2ZTMwZTU0YjEzMDc1MGYwZjgxZjY5MzMwMzk0YzNiNWFjMSBsZWdhY3ktdHJ1bmsKKzEyMTkyIDI2MzY1NWM2YjY1NjcxODBkN2I4ZTNhYTE4NGNlMGRjZjE2MDk3OTEgbGVnYWN5LXRydW5rCisxMjE5MyA2MzczMjUyOWY2ZGY3ZTk3NWY3MTQ3ZDhhZmI1ZDRiYTcxYmIxZjQwIGxlZ2FjeS10cnVuaworMTIxOTQgN2E0ZWVlZDU0YjI0NTE0ZTBiMTEwNmVlZDYwZmQxZmU1N2I1MWEwYiBsZWdhY3ktdHJ1bmsKKzEyMTk1IDIyZjNhOGQ4MDNhNTE3ZWMyZDk2MWU1MTIzMTg5N2NjNTg4Zjc2MjkgbGVnYWN5LXRydW5rCisxMjE5NiA5M2M2NmFjNmFmMTg5NmQyNmFkNGE5YzZkZDkwMjJjMDJkYTA4N2ZiIGxlZ2FjeS10cnVuaworMTIxOTcgZjdlODY2ODRjZDRjMmQzNjQyZmE0Yjc5ZTQwNzExNjdhY2RhMWIzOSBsZWdhY3ktdHJ1bmsKKzEyMTk4IDk3M2MyMWRmMmQ2MDFiOWRmMTdmMTliMTIyMGY1ZmQxZjU5MDE5MTIgbGVnYWN5LXRydW5rCisxMjE5OSA5NzAxYzUwYzY5NDYwNzM4YTQ3ODMwNmEwYzg2YWMxYmQ1NzJlYzc0IGxlZ2FjeS10cnVuaworMTIyMDAgNTU1OTAyNTFjZjUyNzNiNjViMTNjYmRlNTljZmQ2NmY3YTk5MDY0MSBsZWdhY3ktdHJ1bmsKKzEyMjAxIDZiYTdiZDU2M2UzYmY3ZmE2YWVmYmM3YWZjZmY2OWE2MzdhMTA1ZTUgbGVnYWN5LXRydW5rCisxMjIwMiBiNWQxYTE2MjVjZDVkYjRmZmRjMGQyZmFjYWNmODI4NjMxMGM3Mzc1IGxlZ2FjeS10cnVuaworMTIyMDMgNDM5NDIxY2RhODllYTc2ZDY3M2MwMGNmZmJjY2Y0ZjQ5M2U4YzAzNCBsZWdhY3ktdHJ1bmsKKzEyMjA0IGMyMmRjMzAxYjM2YTgxZTJhZGRhNzM0NGE1NGNhMDRjZDVhMmM4ZmMgbGVnYWN5LXRydW5rCisxMjIwNSAxMjc3OTQ2MDU0ZThjNmUxNjJhZWNmMWVhMzE0NjRkYWRlZmNiNGVlIGxlZ2FjeS10cnVuaworMTIyMDYgZTBhNGZiMGFiYjc2OWRkZTE4MjUyM2EzMTFkYzM5NmFkZmM3MTFjYyBsZWdhY3ktdHJ1bmsKKzEyMjA3IGYzZjYwMjNmZWI3ODhkOTFhODE5NTc2MTQ5NThkMTNjNjdkMWM3NzMgbGVnYWN5LXRydW5rCisxMjIwOCBkN2RkNzFkMGQxODMxYTY4ZjEzYWIyYWM5Y2QwMTcwYmJmZjhmODkzIGxlZ2FjeS10cnVuaworMTIyMDkgZTc4YmRjY2QyMjRmZmM5MWVkZTg1Zjg3ZjhkZmNiNDQ5NGQ3Mzc4MCBsZWdhY3ktdHJ1bmsKKzEyMjEwIDJiY2RlMzQ3NDZkMWNmMGJkNDFjNDk2NmY3MWIxMzNjOWI0MDE0YWIgbGVnYWN5LXRydW5rCisxMjIxMSBhM2M5Y2UyOTg1ZGVlOTUxYzhiMjBlYjg4NGU2OTZjYWJjZTVmNDMyIGxlZ2FjeS10cnVuaworMTIyMTEgZjA4YzdhMmE1NmY4MDc0MWY1ZjE5MmZkMGViZTBiMDk2N2EyMDNjZiBsZWdhY3ktdHJ1bmsKKzEyMjEzIGNmNjU0ZWQ1OGZmMTZhMDhkYWRhYjhiNDg2Njc2ZjhhYjI3YjNmODMgbGVnYWN5LXRydW5rCisxMjIxNCBkMWRiN2Y2YWI3NTNjOWYzNDUyOWQ4NDk3ZDYwZTQwMjM4ZGY2NDZkIGxlZ2FjeS10cnVuaworMTIyMTUgOGIyNWJhMjQ5NDQ2NTJhNjBiZjIyNzI3ZjBiYmZjNWVhM2I4NjI4ZiBsZWdhY3ktdHJ1bmsKKzEyMjE2IDJhODk1NDNkZDNjYWIwZTg0YzhkZjZkOGU2MDcxZGMwMWU4MTVlNzQgbGVnYWN5LXRydW5rCisxMjIxNyA0ODJlNjNkNzljOWRmZWU0YTllZDM5MTMzOTRlZDdhMTY4NTUyNWNjIGxlZ2FjeS10cnVuaworMTIyMTggMzUxOWRlNDQwZjg5MmMyYzdlMTU5NjVhM2NkNWU3NzlhMjk1ZjUzYSBsZWdhY3ktdHJ1bmsKKzEyMjE5IDI0Y2E2NDEzNDU5NGFkN2YzMzZjZWYxYzcxZjRlYTFhOGZhZGIwNmUgbGVnYWN5LXRydW5rCisxMjIyMCA3MmI3NjFiOTQ4ZTdlOWFiNzkxY2MwM2U4OWMyZWU3NzhkZWYxYzgyIGxlZ2FjeS10cnVuaworMTIyMjEgMzk1NWY3ODdlOWExMWMxNGJjNDRhZTZlNTM0MjlhMGU5OGMzNTUwYiBsZWdhY3ktdHJ1bmsKKzEyMjIyIDA0ZTQ0YzYwNzZlOGYyZjJmMzUwOTIyOTQ1Zjg2ZGYxN2NmNjk2YWUgbGVnYWN5LXRydW5rCisxMjIyMyA1NmYzOGJmM2FmOWYyZDYzMzgyNDA5YjZiMTYyZTlkNjAxYjRjMjMyIGxlZ2FjeS10cnVuaworMTIyMjQgNGIxYjk0MzJiMjZiZmQ4ZjY3OWVkYjc0MTNlODJhOWUzYmIzMDdmNiBsZWdhY3ktdHJ1bmsKKzEyMjI1IDQzMzZhMTkwNTA1YjY2ZTI2MzJjZGE1YTFlYjQ3ZjMzOWRkZWNhZDQgbGVnYWN5LXRydW5rCisxMjIyNiBlYWFiOGZlYjdmYzA3NjRkODljYzJjNDVmMDMxZTBjNWM4ZWQ0ZTc3IGxlZ2FjeS10cnVuaworMTIyMjcgMmNjZjA0NWY1YTIxMWYxMDE0MDE2YzIwODNkOWM2MTZhYTdiZGI5MiBsZWdhY3ktdHJ1bmsKKzEyMjI4IDI2NDY4OTNjYjQ5OTM3NWFhZDAwY2Y5ZWE1NjhmN2IxYWYwYTBlOTkgbGVnYWN5LXRydW5rCisxMjIyOSA2ZjFjYTlkYzk1ZGFiMTc1MWQ0NWI2ZWQ3ZGM1NjY0NDgwNjRhOTA3IGxlZ2FjeS10cnVuaworMTIyMzAgNzJmNTA2MzZkZmVhMWU0NTgzZGNjZTM3YjVkZmZkNjk0N2M1NDgxOCBsZWdhY3ktdHJ1bmsKKzEyMjMxIDEwYWIyYzVmYmQ4ZWU3YzBkN2Y5YWUwMTk1YzlmNjBlOGE2YTY3ZWQgbGVnYWN5LXRydW5rCisxMjIzMiA4NWQ1YjVlY2VkOWVhOTk4NjMzOTBlNWE1M2YxODJlM2QwMTg2MGM5IGxlZ2FjeS10cnVuaworMTIyMzMgNDdkMmU0ZjcxMTQ3OGRkNWYwZTA3NTdmYzQ0NWI3ZDRmZWE1ZTA2ZSBsZWdhY3ktdHJ1bmsKKzEyMjM0IDJlOTkzMWY0NGVmNGY3ODYyY2IwODY0MzViZWMyMjZhYjNkN2Q0MGYgbGVnYWN5LXRydW5rCisxMjIzNSA0N2JiZDBiYThlOGEwNTlmMDlhNmExMTZiM2QxYWIzZjFiY2E3ZGFhIGxlZ2FjeS10cnVuaworMTIyMzYgMzQxNWQxM2Y4YmM4YzAzZDA5YWQ3MzU3OWQ4YjNlOGMzYmUxYzk1OCBsZWdhY3ktdHJ1bmsKKzEyMjM3IDlmY2M5MDJkNzQwZmFhZWE5NGY5MjUwM2QzYzc4OTlhZTAwZTkwMTQgbGVnYWN5LXRydW5rCisxMjIzOCBlNmI2NjJhOWI3MDk2MTE4OWI3NGM2N2U0OTY3MjMxMzc5MTVjZjYzIGxlZ2FjeS10cnVuaworMTIyMzkgZTA2ZWY4N2IzNGNjNGE4ODU4NjRlZDc2MDYwZmMxOGMzYTRhYzY5YSBsZWdhY3ktdHJ1bmsKKzEyMjQwIDA1ZmI0ZDk2NmM3M2ZmYWIwZGFhYjYwODk3MTk2OTcyYmNlYTAzMzYgbGVnYWN5LXRydW5rCisxMjI0MSAyNTA3ZTE1ZWNhNmI5MGM2YmVmMmEyZWQ5NWIxZDllZTFjNDZlOTdhIGxlZ2FjeS10cnVuaworMTIyNDIgMDk5NWE3YTYzNzgyYmJkMGE0ZmYwNjc1OTAxMmI4YmJmMWVjNDRmMSBsZWdhY3ktdHJ1bmsKKzEyMjQzIDg1YWIyODY0NDIwMTQxNDExMzZiNjUwMjQzMTZjOTAzOGQwODhiM2UgbGVnYWN5LXRydW5rCisxMjI0NCA2ZmM1OGQ3OWRhYzVkYzVkMTZlMmUwOGQ4YjYzMTIxOGY0N2U5ZDE4IGxlZ2FjeS10cnVuaworMTIyNDUgOTM0MmM2MGVhYWMwNzVhZDIzODAzN2RiODM2MTgzNjllNzQ4ZDg1MiBsZWdhY3ktdHJ1bmsKKzEyMjQ2IGQ2MzI4ZDc0YjU4MGVmZDkwNDUyNzZlZDYwNjRkMzhmMTA0YzQxNTcgbGVnYWN5LXRydW5rCisxMjI0NyBmY2U2YzExYzgwZmExZGU5YWI0MWQyZDQ5ZTE0OTgxMGMyZDQwNzBlIGxlZ2FjeS10cnVuaworMTIyNDggOTY3YWM1ZTg5MDdhY2E5NGM0NjIwNmQ1NTdmMTYwNDMyMDNkMzYwNCBsZWdhY3ktdHJ1bmsKKzEyMjQ5IDdjZWI5MmJhODZmNzY0OWVjMTU1YmQyMTc4Yzg2OTEyNzFiMTY1MzkgbGVnYWN5LXRydW5rCisxMjI1MCAwOGE5MzczODYwZTgzNmIxZmU2YzliNGUzNGNkNzEyMGFlYzIyMmY5IGxlZ2FjeS10cnVuaworMTIyNTEgZTQ1ZGY2ZjQ1NjA0Yjk1MzBjYzc0NmQyZWNjOTA5NDEzNWQ3NzJmYiBsZWdhY3ktdHJ1bmsKKzEyMjUyIDg4YWY4YTQyODU3ZDMxZjJiNmMyMGIwNTNmOTY0ZDhjZTRiZGU2YTEgbGVnYWN5LXRydW5rCisxMjI1MyA3NjYzY2Y5NWJkMGVhODYyNjgwMjVkZWE2ZDRlNjZlZmU2YjU2MzllIGxlZ2FjeS10cnVuaworMTIyNTQgMzBmMzYzMGI3N2NhOTk0NWNmMzQzNWZkOTU5MjRmMzM2NTQyMTU4MiBsZWdhY3ktdHJ1bmsKKzEyMjU1IDU4NmQxYjA4NjE0ZTI2MTdkYzMwZjhmYzU4YWFiNTkyZjE3ODdlNWIgbGVnYWN5LXRydW5rCisxMjI1NiBjNzA4ZDcwYjEzOWUyMTVlNmNmYjBkZTZhYWVmYmRiMjU1ZTQ5YjgxIGxlZ2FjeS10cnVuaworMTIyNTcgY2QyZTA1ZGFlNGMyOTVmYTRmYWM3YmExNWMwNTdiNmVlNGUwNDkwNiBsZWdhY3ktdHJ1bmsKKzEyMjU4IDllNmY1YmFjMTVhYzI0YTNhMTcwZGE1NGVkYjA2MzU3YzkxY2EzMjUgbGVnYWN5LXRydW5rCisxMjI1OSAzZTdjNDM0NTNlNWU5OTljNzExMTViZmMyZGQ0MTFhYzUzODdmYTFjIGxlZ2FjeS10cnVuaworMTIyNjAgY2ZiOTBkYjM5OTU4YjI0YTNkZDY4YTRiNWE1OTkzMzA4NjU5ZTVmNSBsZWdhY3ktdHJ1bmsKKzEyMjYxIGVkNTIzZWEwNzNkYmEwNDlmOGFmY2ZjMTAxNDQ0YTZjMTljNzM4YjkgbGVnYWN5LXRydW5rCisxMjI2MiAxNmM5YTcxNDg4MGZjMDBmMDhiNjI1N2ZlNzE0ZGRmZDFlMDkyN2NjIGxlZ2FjeS10cnVuaworMTIyNjMgZjc1NTJkZDIzNmIwYWQ2MjdiZmZiMTg2MTMxM2NjMjdlNWNkZmIzZCBsZWdhY3ktdHJ1bmsKKzEyMjY0IDYzMWQ5NmQzY2Y2NjBmZWYzMDBiN2QxMDkxNGMyYjI3ZDBhYzQ1N2IgbGVnYWN5LXRydW5rCisxMjI2NSAwZDg4NzMzNDA4NDYyMjU2ZWE2NTIyNDBlYzRmZDMyOWU2YTFmZDUxIGxlZ2FjeS10cnVuaworMTIyNjYgNjFkZGU3ZWJmYTk1MTY4OGE4NGIwNTkwMGEwNTYyM2JmOTZjM2JmZCBsZWdhY3ktdHJ1bmsKKzEyMjY3IDRhMDdkNjk4NjRmNTc1MTIyMjFmMjc1ZmJiMWE2MWRjMTY5ZWQxNTkgbGVnYWN5LXRydW5rCisxMjI2OCBlMTUwOGY3MmM2MTBiYWQyMTA1YmRmYjgzMzg5ZDZhMGE2YWJjOWM4IGxlZ2FjeS10cnVuaworMTIyNjkgODU0N2QyNzdhMjJmOTYwYzVkYmM5OGJiNjYyOWNhNGNmMzE5MWI0YyBsZWdhY3ktdHJ1bmsKKzEyMjcwIGVhZjkzZDViYjQ2Y2Y2NWI5OWNlODY0MmU2YzUyNDNmMmE5MTFiMzQgbGVnYWN5LXRydW5rCisxMjI3MSA4ODEzNjI3YWFjNDY2YTAxZmQxOTZjNWE1OWE2M2QxYWNmOWNlNDBhIGxlZ2FjeS10cnVuaworMTIyNzIgZTIwOGIyNzRlYjgwOGM2YmQzZTE0MjVlNTI4NGY1NzY4ZjNkNjM2MyBsZWdhY3ktdHJ1bmsKKzEyMjczIDc3MGI0MGZlZDVmN2FiMTA2YzY1MWE3YmFlMGJhOTM5Y2NiOTMxZmUgbGVnYWN5LXRydW5rCisxMjI3NCBiMTE2YWZiODE3MzI4ZWMyZmRkMGQwODM4YWRiZTY0ZmMzZTA4MTUxIGxlZ2FjeS10cnVuaworMTIyNzUgNzcwZDg5NGUyMGJkOGQyM2M5ZTczZjVmMDRlZmQzZTQ5ZDU3ZmNmNyBsZWdhY3ktdHJ1bmsKKzEyMjc2IDhiMDg2MzQ5YTQ4OGNiMWExYmVhZDY0ZmY3YzkwZTRiMDMyOGQzOTcgbGVnYWN5LXRydW5rCisxMjI3NyBkYTk0NDY3OGIwMGUwYjhmMzMxYmM5Y2NjMzUxMTJjYTM1NDkyZTYxIGxlZ2FjeS10cnVuaworMTIyNzggYzQ2OTIwNDZiNDgyMDFiZmY4Y2VjMzIzMjlhY2EzMzJkOGRiZGIwMyBsZWdhY3ktdHJ1bmsKKzEyMjc5IDRiMThmOGVhYTE2YjJiZjhiYjM4NDc3MDExNGFmNDFjY2YwY2MyM2EgbGVnYWN5LXRydW5rCisxMjI4MCBjOTFjZTQ5YjQwNzUwODlhZDFkYzdkZTJiZTFkYzI4M2VjOWIzZTlmIGxlZ2FjeS10cnVuaworMTIyODEgNjY4MGZhY2I0ZDViNWUyN2I5ZGU5OTk2YmM3ZDhkYTljYjlhNTMyMCBsZWdhY3ktdHJ1bmsKKzEyMjgyIGJlMjRiNWI5MGRlY2Q2M2RhNWMwNWFiOGM1M2RiZGVjM2U0ZjhlYmYgbGVnYWN5LXRydW5rCisxMjI4MyA4ZGJhMDgyMjNkZWJhMTY0ZjA0YTk4ZmY1ZmJhODVlMDhiNGIxMjVlIGxlZ2FjeS10cnVuaworMTIyODQgZmFjYjQ1N2I0ZDMyZWQ2ZTIyNGY3Nzc4MzZhNDM1MTA4MTczNjQxOSBsZWdhY3ktdHJ1bmsKKzEyMjg1IDQwZjcyM2FjMjZlODI4MDczNzQ3MzNiNGNiMzEyNWY5MjBkMmI4YzcgbGVnYWN5LXRydW5rCisxMjI4NiAxYmVhZjkxNzkxMjViMjRhZjk5YjEyNDNhOTI3ZWNhMGY3ODM3Y2Y3IGxlZ2FjeS10cnVuaworMTIyODcgZWNiOTEyYmU0MzE4YTYzYzUyM2U0MDlmNzljOWViYmZkMjE5NTM1YiBsZWdhY3ktdHJ1bmsKKzEyMjg4IDA4ZGZiZWUwYTMyYTEzOTdmYjFiMWVhNmQ1ZWQzMTI5NWI0YjFjMjcgbGVnYWN5LXRydW5rCisxMjI4OSA3Y2RjZGY4Njg2YjNjOTFiN2QwM2Y5ZTg2MTM3NWQ2MDU2ZmUzNGMwIGxlZ2FjeS10cnVuaworMTIyOTAgOWU2MTE2NmVjZGQ4MWQ1YjA4MDk3MDU3MDBjYjFiZmYzN2M4NjUzNSBsZWdhY3ktdHJ1bmsKKzEyMjkxIGZlNzAxOTY5YmMyY2Y2Yjc5MTVkNTlhY2E3NTRkMjI0NGE0OTQ2YmEgbGVnYWN5LXRydW5rCisxMjI5MiA3MzdkMDVhOWJiNWU4YTlhZjk0Y2Q4NTY5ZWNkMDJiNjk3MWJlMDRkIGxlZ2FjeS10cnVuaworMTIyOTMgMjA5ZWVkNmEyZWY2NThlZDM4Y2JlMmMyMWFmNmFmMGY1MWM2MjgwZSBsZWdhY3ktdHJ1bmsKKzEyMjk0IDgzNmY5NDA4Yzk1NjVhYTU5YzgwMThkNTI5ZGY1Y2MyODkzZDNjYjUgbGVnYWN5LXRydW5rCisxMjI5NSA3ZWY1YTE1MjBhZTUzZDAxMTVlZmM3YzhjZGEyNDJjMjFmZDY2MmIxIGxlZ2FjeS10cnVuaworMTIyOTYgZGIyOTgyZmI2M2MwNGQ1ZDk0MzM5M2Y0ZWJkYmY4NzZmMmJiNGU2YiBsZWdhY3ktdHJ1bmsKKzEyMjk3IDljZmM1M2U1OTk2ZTBhYTBjOGM1YTQ2OWZiODlmMWEwYzYwNTkzNmUgbGVnYWN5LXRydW5rCisxMjI5OCA5ZDAyYWZhMDIyYzUyZmQ3NGU5NDRhNTczYTc0OWIyZmZlZWJiYjdhIGxlZ2FjeS10cnVuaworMTIyOTkgYzFlYWIxZGM3NTM2M2EzNDExOTFiZDU2NDg0MTAwNjJmNDc5NjM5ZCBsZWdhY3ktdHJ1bmsKKzEyMzAwIDkyOGM5M2QyYzEwNzFkYjlkMGM2ZGRlYmIzMDc1ZDVlMTFlZGM2MjggbGVnYWN5LXRydW5rCisxMjMwMSA1NjY4ZjhhM2E0MzA0ZmJjMTBhNDhlM2QxMTI2ODE4MjFjNWZjZTRkIGxlZ2FjeS10cnVuaworMTIzMDIgODFiM2U2Y2E0YTI5YWZiYjEzOGI2MjRjNzE5YTNmMTgzOWJkYzE4YSBsZWdhY3ktdHJ1bmsKKzEyMzAzIDEwMjcwMTE1Y2Q0YjgwNWNmZjM3ZTEzNjUyMzU5YzViYTA5NjA5NzggbGVnYWN5LXRydW5rCisxMjMwNCA4ZDZmODRjNTk0OGMyODUxYTAwMGRmNTMwZjY3M2Q3NWFlMWRhOWU5IGxlZ2FjeS10cnVuaworMTIzMDUgYTlhYWMwMDJlODQzNWJhMmI2NmE5YWRkNmJiMDM3YjJmODBhZWNiZSBsZWdhY3ktdHJ1bmsKKzEyMzA2IDQxNWI5ODQxMTcwN2YxMjIyZmYyYWMzMjYwMmM0OTg4MDUyN2FiZTkgbGVnYWN5LXRydW5rCisxMjMwNyAwYmZhZmYxMWM1NzM5OTc2YmZhYTQ3MTI5NTIwMmM1MzY0ODNiM2UxIGxlZ2FjeS10cnVuaworMTIzMDggOTNkNzAzMDhiZTE3MWJiNThhNDhhOWQ5ZmQzZmFjZjUzM2MwMDM1ZiBsZWdhY3ktdHJ1bmsKKzEyMzA5IGY5ODFjOWQzNmM4YWY4NTY1MzU2NTQ5ZmUwYWZiM2NkNzU5MjZiMDggbGVnYWN5LXRydW5rCisxMjMxMCAxZWFlYmFlYWEyMmI5YTJhMTYwOTRiN2ZiNWI4NGQ1MGVhZDEwNWQxIGxlZ2FjeS10cnVuaworMTIzMTEgMzBlZTg2MTcyMTY4YTMxYzEzYjQ0ZDNkYzg4OTNmZTk0NDQ0OGRiNiBsZWdhY3ktdHJ1bmsKKzEyMzEyIDg3MDEwOWE0NGUwZWJlMThhMGJiNmI3ZWE2ZjUwMDhkZjI3NjVjMGMgbGVnYWN5LXRydW5rCisxMjMxMyA0ZDA0NDAwNTYxMWU0MGZlYzM2OGEzOWNhMzliMDA0MTNkZWE5NWQyIGxlZ2FjeS10cnVuaworMTIzMTQgNDAxMGU1ZDI0M2Q2NmI4YjIxZWFiNTE0NzMwMzNhY2RiNzZmN2FiMiBsZWdhY3ktdHJ1bmsKKzEyMzE1IDE0MjBmODQwMDkyNDliODZkMTEzNjhkZTRlNGNiYmQyNTNkODc4Y2UgbGVnYWN5LXRydW5rCisxMjMxNiA2NjM3MzcyN2ZhYzg1YjI4MGJlNWJlZDVkY2VlZTkzMzI2OWI5YmNhIGxlZ2FjeS10cnVuaworMTIzMTcgYTNiMjUyNWM5MzcwNDA0Mjk5MTM5NjgxYmQ1M2ZlZDA1NzM4YzU2MCBsZWdhY3ktdHJ1bmsKKzEyMzE4IGJkMWNlNDEyMGU2Zjk1NDZkZWRmODVjYTk3ZThlY2YxYTVhYzIzODggbGVnYWN5LXRydW5rCisxMjMxOSA0NTdjYjg2OGMyNWU0NWE0MWI3YWQyZjNlYzQzM2YwMDg1NGQ0MGU2IGxlZ2FjeS10cnVuaworMTIzMjEgMjhkM2E5ZmNiNTc3ZGZjODU2MmYxODQ5YjRkZGM0ZTRiNjE4OWNhNSBsZWdhY3ktdHJ1bmsKKzEyMzIyIDE3ZTRkODE5NDliOWYxZWMwMzk0YzYxMDZhN2Y5Mjc0OWViMWM0MjIgbGVnYWN5LXRydW5rCisxMjMyMyBiYTYzYzZmNjAyNWI0ZjIzNWIxMGEwMjFhNzQ4NmJmOTJkZjlhZWRhIGxlZ2FjeS10cnVuaworMTIzMjQgNGU5NTA2NWE3MmExYTZmMmQ3M2M5OGU5NjBmMDQyZjUyZTgzNjA4NSBsZWdhY3ktdHJ1bmsKKzEyMzI1IDViZGY5MTY1MTM3NzI2ZWI3N2JlYjZlNDNiMzkxOWQyZDA5MWQ4MmIgbGVnYWN5LXRydW5rCisxMjMyNiBjZTBjMTdjYzc3Y2U1MGZlODM3MTZiZTdjMWU1ODRiMjZiNDhiOGFkIGxlZ2FjeS10cnVuaworMTIzMjcgZWY5N2I0ZjZkMTg3NWZjNmViNTAwYzM1MTM4YzUyMTNmOWYyMTI4NCBsZWdhY3ktdHJ1bmsKKzEyMzI4IDgwMTUwZjljOGM0MWZjZTlkYTJmYzEzYjNmMDcxOTkwOTBmZjNiZjcgbGVnYWN5LXRydW5rCisxMjMyOSAxMzk5YmVmN2FmNjEzNTVkNmVlYmVlMzZhNjE0ODc0MGNjYjNkOTMwIGxlZ2FjeS10cnVuaworMTIzMzAgYWI1NTY5OGJmZjFjYTlhOGEwYjExODBiYTYzOTkyZDhjOWE5MmNkYiBsZWdhY3ktdHJ1bmsKKzEyMzMxIDFkYWJjNzNiN2IwYmNjODJiZGNkYzZhOTdhMTE1NjFhNjAyYTUzNjQgbGVnYWN5LXRydW5rCisxMjMzMiA2MWNhZmE5N2ViNzdhZjA2NjliNzJiN2Y3ZWZmMmVhMmU5MGRhM2RlIGxlZ2FjeS10cnVuaworMTIzMzMgZTVjYjE1N2ZmMDkzMWZmMDVlMzZiZjNlOWJjNGViYzRhZjNjMzkyNSBsZWdhY3ktdHJ1bmsKKzEyMzM0IDgyNDM5ZDk5ODdiMmNmNjdhOTAxYzcxZmViYzdiZTVmZjZhNDdmMTkgbGVnYWN5LXRydW5rCisxMjMzNSBkZDNjN2ZjMGEzNGQ0YjljZmY0OGZjYzU5ZTY0MWQwYTE4YmJmMWEwIGxlZ2FjeS10cnVuaworMTIzMzYgYjA4MjFiMGJjY2YwZmQ1ZTQ0ZDM2ZWYyODBlMWMwYjA4OTU2NTI4NSBsZWdhY3ktdHJ1bmsKKzEyMzM3IGY3NGRlNzdmMDUxMGVmM2FhOWUzNjFkMGI5NzViOWQ2MTgyYmJhNjAgbGVnYWN5LXRydW5rCisxMjMzOCAxM2QwZjYyOGM1NzIyOTBmMmM0ZDg4MTE0MjA1NDZhYTY4N2FhMTZlIGxlZ2FjeS10cnVuaworMTIzMzkgYjhmZWRiMjI2ZjA5YzEwODRiYWI2ZWJhZmNjMDIzNjAyZGY4NGU1YiBsZWdhY3ktdHJ1bmsKKzEyMzQwIGFhYjBmMzQ2M2FmMDZiYzA1YzdiNjE1Y2YxNTYwM2EzNmE3M2I1MDIgbGVnYWN5LXRydW5rCisxMjM0MSBkZGYzZDU1MjIwYjkwZDgyMTU1Y2I1MjQ5YWQ3MDMyY2JlYzQ2MTk0IGxlZ2FjeS10cnVuaworMTIzNDIgODZjYjc3ZmIxOWU4OGFkZjhkMzA2ZDcwZTkyYTllYjJiN2VlNGE5NiBsZWdhY3ktdHJ1bmsKKzEyMzQzIGYzNGJiNDdhYWZhY2FjYWQ0MzE3YjY0OGFiOTMxZDM3YWY3Njc3OGEgbGVnYWN5LXRydW5rCisxMjM0NCA0OTY3MDAzNzRmYzQzOGNiMzQ3MGY5NDBmNzM4NzYyNDk5Y2ExNmUxIGxlZ2FjeS10cnVuaworMTIzNDUgOWEyOTNlNzdjNTU0NmNkN2ExOWYxZGIwZDI1MWFmZjM2NWJhOTk4YiBsZWdhY3ktdHJ1bmsKKzEyMzQ2IGQ2NGNlMjk4MDFjYjE3MDlhZDA2YmE4ZmZkM2UwZTVjM2ZjNDNjZGMgbGVnYWN5LXRydW5rCisxMjM0NyA1YmFjNTZmZmNjYThmODAxNGIxNWM5MzMyNDNiZTVkZTU1NWFhMmM3IGxlZ2FjeS10cnVuaworMTIzNDggZTE5Y2Q4ZWMyMGEyZThmZTczYzZhNjA1MDI4NDRmY2Y4MmI4M2U2YiBsZWdhY3ktdHJ1bmsKKzEyMzQ5IDVlOWVmOWQ4NTc1YmJjYjU3NTQ5YzdmY2EwNTMyNGU3ZDc2NTBjZTggbGVnYWN5LXRydW5rCisxMjM1MCBlYzgwYWQyNWNhODYxMzI4YWY1MDY4MzllOTg1OGYxYjYxMWFkNDUzIGxlZ2FjeS10cnVuaworMTIzNTEgNmM2ZWUzYmIzZmNjMjJkY2RlYjA0NzgzNjEzNjYyMjE2M2Y2YjNmNyBsZWdhY3ktdHJ1bmsKKzEyMzUyIDAxNDc3YjFhNzRmOWMxYzU2NzQxOThkYjlkZGQ1NDg4MjkzZTg4MDEgbGVnYWN5LXRydW5rCisxMjM1MyBiNTMwYmM2MmUzYjk5MWI4MTNkNDBmY2I3ZGZhMzExOWIyMDlkNGMzIGxlZ2FjeS10cnVuaworMTIzNTQgZTZjZDY4M2EyMmY4MTg5ODE3YjA3NDAxOWUzNjNjM2ZhMTRkN2NkNCBsZWdhY3ktdHJ1bmsKKzEyMzU1IDMwYzFjNDBjZDgwZmQzNjlmYzUzZmY4MzBiNzQyYzIyNjM3ZThkYjUgbGVnYWN5LXRydW5rCisxMjM1NiAxZThmZjhhODc5MmVmN2M5OGNjMjcxN2I0NmYzZjk5ZjVlYmE4M2NjIGxlZ2FjeS10cnVuaworMTIzNTcgY2RiNzcyYWFiYmEyNWQ1MDNiZmU5ODU3NDA0N2E4NWM4YWEwY2JhOSBsZWdhY3ktdHJ1bmsKKzEyMzU5IDYwNWVhZjhjYzZkMGVjZWRhMjE3NjgyNmNmMDg0NDRjMzcwZmM2MmMgbGVnYWN5LXRydW5rCisxMjM2MCBhMTU4NWY2OTI1NWRhMDBkMGUxZTQ1OWI2ZGFmYTcwMThmNDgzNTUzIGxlZ2FjeS10cnVuaworMTIzNjEgNTFlODY4ZWYzYjMxZTVhMTk4ZGJmMmY0YmMwZjVmOTU0MjIzOThkMiBsZWdhY3ktdHJ1bmsKKzEyMzYyIGI5M2MzOTBmZDI1ZDVmMTRkZmViNzU0NjM5Zjk4MTMzZmU3N2Y3ZmUgbGVnYWN5LXRydW5rCisxMjM2MyBhN2QxY2Y5NWRhZGM1OWU2NDk0NzkxOGJhMjlhNDRjZWE4ZWZkN2I1IGxlZ2FjeS10cnVuaworMTIzNjQgOGE2NTM2YzFhMGE0NjI2ODA2MTIzNWExZjQ0MDM2N2NhZWM3Y2I5YSBsZWdhY3ktdHJ1bmsKKzEyMzY1IDYwZjQyNTg2ODY2ZWFmMjUzNWY1YjI0YzEwMjkwYzg1YTg1MmI1NGUgbGVnYWN5LXRydW5rCisxMjM2NiAwYWFlYTQ4OTAyZTQzYjI3NjA3MzQ4MjExOGQ1OTE5ZjgxYTQxYTc5IGxlZ2FjeS10cnVuaworMTIzNjcgZjc3Yjk0MWEwZjkzNmRlM2JkMDFmZjczNzEzMzM2NWE3YzdkZmNkMiBsZWdhY3ktdHJ1bmsKKzEyMzY5IGM5NWZmZjhmMTgwYThkN2NjODZlMWNmZGVlOWNlM2UwODkzM2RiODIgbGVnYWN5LXRydW5rCisxMjM3MCBhNThmMzYzNTJjNGYzZmVkY2MzMTRjNzJmMGJiM2I3MjA5ZDQ2MmFhIGxlZ2FjeS10cnVuaworMTIzNzEgMzNjNGJhNzc3YTNhN2QxY2EyMjI0MzM1MjUwODQ5ZTJlZjcwMTQwNCBsZWdhY3ktdHJ1bmsKKzEyMzcyIGVlMzZlMWYxMzBjY2JiNzlmN2ViOTNlZjdlYTUyZTQ5MzM1NmExNjQgbGVnYWN5LXRydW5rCisxMjM3MyBlM2E3OWY5M2QxZDNlNThkOTE0MjllOWIxOGFkOTA3ZjllZGY3YTU0IGxlZ2FjeS10cnVuaworMTIzNzQgZjM1MmVlYTY4MzczNDkzNWM2YTdkNDY3MTI1NTZmYjE1MmQ0ZjBhYyBsZWdhY3ktdHJ1bmsKKzEyMzc1IDlkYTQyNDkzNWY3ODY3Mzg2ODcxOGViMjY3NGMyZjdkZDFkYTQ4ZmYgbGVnYWN5LXRydW5rCisxMjM3NiAyYWIxODk1ODVkMjM4NjU4YzkzZDYzM2Q0ZGM3ZDZlZTJmN2MzYmIxIGxlZ2FjeS10cnVuaworMTIzNzcgNzc4NjI5Nzg0N2FjYTBhNjBjM2E4OGI2MmM3YTQyM2FiNWExYTAzZCBsZWdhY3ktdHJ1bmsKKzEyMzc4IGY3OGZkOWI2NzI4NGFkYzRjYWVmNGUwNTQ4ZDMxZjc4N2E4MDkxYTUgbGVnYWN5LXRydW5rCisxMjM3OSAxYWMzNDg1ZjllM2UzNjc2YjJmZThjZDg3NjUzMWZkZWQ4ODM5OGZlIGxlZ2FjeS10cnVuaworMTIzODAgZTE0ZmVlZTRjNDU2YmM4NmUzZTI5YmE0OGY2MTEwZDAxODBkY2RkMSBsZWdhY3ktdHJ1bmsKKzEyMzgxIGIwZWRjODkyZmM3ODJlOTBiMzdjODkzNzZiNTNmMGQzZjMwM2E0N2IgbGVnYWN5LXRydW5rCisxMjM4MiA2NTkzN2ZmNzE4ZGVmYzVkYWUyOWM3NjJkN2EyMjk2ZmNjZDM5Mjg2IGxlZ2FjeS10cnVuaworMTIzODMgZGU0MWU4ZDgyMTFkZDM1ZGI2YmZhMjM5MTA0YzdjOWFkNzVkZDg4NyBsZWdhY3ktdHJ1bmsKKzEyMzg0IDM1ODljMGU1NmVmMjUxNjYxZDMyNTAyN2NlNjA4OGU3YThiYTZiODkgbGVnYWN5LXRydW5rCisxMjM4NSA3MTk1ZWMyOTZiM2Q5NDQwMzQyZmI4YTc4ODgxNGRiZTEwYmUyMWQwIGxlZ2FjeS10cnVuaworMTIzODYgMTRkY2JiMzRiOWRkM2FlMzFmMzc0MGI1MTVkZmNlYTNkZmVjM2JjOSBsZWdhY3ktdHJ1bmsKKzEyMzg3IDAzMGVlNTBiZDhkMWI0ODU4MDg4NjQzMmM1YWEyNTU4ZDM3MGVjZTMgbGVnYWN5LXRydW5rCisxMjM4OCBmYWU2ZDI0Yjg5N2JjZTY0YWJkOTY3OTg2NmNlYjQ0MGIzMjNkNjI2IGxlZ2FjeS10cnVuaworMTIzODkgYWU5MDhlZjkxY2YwY2M1Njk4ZjFhOGFhMTczZGU4M2UwNmYzZjQwOSBsZWdhY3ktdHJ1bmsKKzEyMzkwIGRkYjgzYjI1MjI2ZWI3MDNiZjAwMDBjYzJiMzI5NGMwZWFkNGEwMDIgbGVnYWN5LXRydW5rCisxMjM5MSA5ZjEzZDczODBiZjg5ODMzMjE5NGJlZjIyMmVhN2M0MjkzYmIzMmExIGxlZ2FjeS10cnVuaworMTIzOTIgMjkxYzJkMGE5NjgzYzRjOGU0Yjg5N2ExOTNlYjdjZWRkNzIyNTcxMCBsZWdhY3ktdHJ1bmsKKzEyMzkzIDViZDZkY2YxNmQ0MWFiZmFiMDI5N2IxY2QxM2UwNWM4MmJhZGUzYTQgbGVnYWN5LXRydW5rCisxMjM5NCBiM2ZiODQxMGY2YWU5OTI1YjliNzJmM2MwNmJlY2QzZTAwZTBjZTRjIGxlZ2FjeS10cnVuaworMTIzOTUgN2UyZTUzZTc0OGM4NTg1YmJlYTlhZGYzNTU3YzEzNGNhMjg0Yjg0ZSBsZWdhY3ktdHJ1bmsKKzEyMzk2IDRkODZiNWE1YmY5ZTI0YTg5MjEzYjMwY2ZkOTNjOTMyMDcyMjhmMDkgbGVnYWN5LXRydW5rCisxMjM5NyBhMmQzMzdiMmUyMWJhNGJmNGRlNDEzNzU2MTE5NjM4YmFlZTQ3ZjJlIGxlZ2FjeS10cnVuaworMTIzOTggZjg4ZDE0YWRlZDc3MDQwYWZkZWViY2VlZmQyOWVkZmNkNTNlYjUzNCBsZWdhY3ktdHJ1bmsKKzEyMzk5IDdiZGVmNGJlZGQ1Y2U2Mjg4MTIxNWFhY2FjNjMwMmJhOTAwOTViOWYgbGVnYWN5LXRydW5rCisxMjQwMCA5MmFlMTE1NTczYWYyOWJlZjA0NmY2NjkxMGNlZGU1NGYxODUyYjI1IGxlZ2FjeS10cnVuaworMTI0MDEgNWFkMWEzNWY1NDBjNjU5MGJlMjJlOTAwOGE5MTEwNjUxMTM4MTNhOSBsZWdhY3ktdHJ1bmsKKzEyNDAyIGJhYzk2NTU1MmY3ZTZjNGRmOTRlMzYyMTQ4MWRkYTJiNDlkM2E2ZTUgbGVnYWN5LXRydW5rCisxMjQwMyA2OTUxMTNjNjUwYmI1OTYyYmEyNDdlZTNiMWZhMzQwMjM3OTNiMjQ2IGxlZ2FjeS10cnVuaworMTI0MDQgN2FhNTE1MzIwMDZhOWUzMzhjZDE2OTllZDZmYmRhOTg5NWQ1YmEyNSBsZWdhY3ktdHJ1bmsKKzEyNDA1IDFjNDY5NzA4MGQwNzE5YWQwZWQ0ZDRmODQ3ZGY1YjZiZTUyN2NmMTggbGVnYWN5LXRydW5rCisxMjQwNiBkOTVhZmU4N2RiNGRjYWI0MjQwYzIzZGU0YzI4NzZmMzMwMWVjMzkzIGxlZ2FjeS10cnVuaworMTI0MDcgNmNmMDFlYWIwNWEzMmFhYmMwOWVkMjNjZjExOWY5ODJiMmQ1NmFmNSBsZWdhY3ktdHJ1bmsKKzEyNDA4IDc4MDU5Y2YwNjdkZWZiYTBlZWUwYTViYmUxMDkyYzYyMDQ2YWE0NWIgbGVnYWN5LXRydW5rCisxMjQwOSAxMTQxNGYwMjNhZDBhMTMzMzEyNGI2YzU5NWJiYjFhYTliMzIwMzcxIGxlZ2FjeS10cnVuaworMTI0MTAgYThhMDcxOTk2YTczZDk3ZmIzMDhhYTQ3YjgxYzBkOTQ1OTIyYzlmMyBsZWdhY3ktdHJ1bmsKKzEyNDExIDM3YzNhZmZiMDViYTIzZWY2ODkwMDdkZDllNjk5OTBlMGI5MGM4OWEgbGVnYWN5LXRydW5rCisxMjQxMiAxOGMwNmQzOWNlMmMyYTg3YzE1Y2Q5NTIwOTk3ZGM2ZTQ0ZjgyYzJjIGxlZ2FjeS10cnVuaworMTI0MTMgMjBkOThjYTNkMzJmYWJhYzBmY2YzYjNiNGY4YTY3N2ExMjVmZjAyOSBsZWdhY3ktdHJ1bmsKKzEyNDE0IDkwMzQ0YzI2MWYyNDUwZjU3ZmIwZjBhZTAyZmIwMjBlMGQ4ZGMyNzEgbGVnYWN5LXRydW5rCisxMjQxNSBiNzRmNTVlN2QyMDhmNzA3NTQwZjQyMzY1YmZiNWZkYThmMjJjYjNiIGxlZ2FjeS10cnVuaworMTI0MTYgOWUyNTU1ZWRjOTRmNDg4N2UwMzY1YWMwYzEyNzI1ODBhY2ZiNjMxOSBsZWdhY3ktdHJ1bmsKKzEyNDE3IDI0ODYxNmQzZWQxMmNkYzllMWM1YmZlY2YzOGUyZjcyZDk2Zjg1YzQgbGVnYWN5LXRydW5rCisxMjQxOCA5YTdlNzhlOGJkZmEyOTIyMzcxNjQ1MTE5YThiMzAyNjg4NzI5ZDgwIGxlZ2FjeS10cnVuaworMTI0MTkgMjg2ODU0NzcxYjExOTExZjhhODUyNzEzYmQwODM4N2MxMzQ3YzBjNiBsZWdhY3ktdHJ1bmsKKzEyNDIwIDM3YWE4NGQyNzhjNTU5OTg0ZjNiZjY1MjEwYmE2OWYyY2M5NWY2OGMgbGVnYWN5LXRydW5rCisxMjQyMSBhNzgxMDAzNzA1MTVjZDEzZmFiZTRjMzU2ZTRmMGY4OWExN2ZmZGMyIGxlZ2FjeS10cnVuaworMTI0MjIgNjMxMjQ4YzljNjJlMTYyMWZmOTVkNDM2Mjg5Y2I0NmM4N2RlNWVkOSBsZWdhY3ktdHJ1bmsKKzEyNDIzIDFhNzk5ZDFkNGI1YTZlMTljMzhlZDE1ZGRmZDM4ODEzZmVlNjEyOTAgbGVnYWN5LXRydW5rCisxMjQyNCA2YzEwNzcyODQwMDFkNjExZDkwNTU0NjAxZDI2NjM2MzhmMmEyY2Q5IGxlZ2FjeS10cnVuaworMTI0MjUgNzZiZGFkMjNmY2RiOGE3NWVlYjI2ZmQyMmNhODY3YzVlMjk0NTkxYiBsZWdhY3ktdHJ1bmsKKzEyNDI2IDViMTc3ZDUxYmEyNzU4MTNhOTEyMzJjZmJmMmJmOGExYjIxOTlkYjAgbGVnYWN5LXRydW5rCisxMjQyNyBhNThkOGU0NGNlMzJmZDQ2NzQwNTA1ZGI3YmIyOGI0Yzk5ZDBhYTBlIGxlZ2FjeS10cnVuaworMTI0MjggMDQ1NTQwMjY3N2E4YWRmMWM3ODQzMTE2ZmE5NzlmZGE3MTQ0ODUwMCBsZWdhY3ktdHJ1bmsKKzEyNDI5IDM1ZjU2ODQ4MDc2NGFmZmIzOTZkYTUwNjVhNjk5YWM5ZjAyMDcyNzEgbGVnYWN5LXRydW5rCisxMjQzMCA0YmRmZTVkODBhNmY1YjkyM2I1ZGJmYWU4NTcyODk3ZDE5OGFkZjViIGxlZ2FjeS10cnVuaworMTI0MzEgNWY0ZDMyYjFhNjU4M2ZmYmYzY2RmMTk4MjlmMzdiZDA5ZmJmMmNhYSBsZWdhY3ktdHJ1bmsKKzEyNDMyIGY4NjdlMTNkYTU3NGNlN2JkZWEwNDI0YWFkZjY0YTcyMzhkODdjYzEgbGVnYWN5LXRydW5rCisxMjQzMyAwMGZjMThhYzZhZWI4ZTdmMzI0NzYxNGFkNmJlYWIyMWNhOWRhODkyIGxlZ2FjeS10cnVuaworMTI0MzQgMWRlM2RiYjI2YzJmYTJlYWFlMmYzNzFkZmUxMTk3MTI2Y2NjZWI1NiBsZWdhY3ktdHJ1bmsKKzEyNDM1IDE4OWYxZWM1YzY4ZjNkZDY3ZTJkYTQ4YjI2OGUzNmY2ZmNlYWE3YmUgbGVnYWN5LXRydW5rCisxMjQzNiAxNWU5NzYxZTU0ZGUxZDU3YWM0ODY1OTU1MzkyNWRiYWJhOTNjZDM1IGxlZ2FjeS10cnVuaworMTI0MzcgYWQ3NDlmYjBiZDRiZDQ1YmE5NDg5NzFhMjU0YTAzNjdhNGM1Y2QyMyBsZWdhY3ktdHJ1bmsKKzEyNDM4IGE2NGE2MTViYjc1NjMzMGY3YjlkNWEzYmYwYjA0NWY3NzE4OTllMTEgbGVnYWN5LXRydW5rCisxMjQzOSBjNTkyYzE3NzFkZmI1ZTYzZmU3ZTlmNGE5ZGEyNTBiNTc0YjEwZDA2IGxlZ2FjeS10cnVuaworMTI0NDAgMzM3ODQzYzZhMTgzNjlkNTc1MGJlYjUwOTA2MGM0ZTM3MDEzNTlkOCBsZWdhY3ktdHJ1bmsKKzEyNDQxIGZhZjM1MWUzMTU3MWQ4OGFlNzY5MDA5ZjlmNzBhMWE5ZjY1ZTNkN2QgbGVnYWN5LXRydW5rCisxMjQ0MiA5M2I5ZWFmZTFmMWRlODJhMWEyMDcxZjg4OTBkZDVhODIyNjlmNWI1IGxlZ2FjeS10cnVuaworMTI0NDMgMDZjN2ZmZjUyNzRhN2JmZDNjOWM2NmM4OTEyMDEyMzMxNjYyODI0MSBsZWdhY3ktdHJ1bmsKKzEyNDQ0IDYyNjMyN2E3OGE4ZWUzNmE5YTRlYjM1OGZkNDgwNjQ3ZTU3MDdmNjggbGVnYWN5LXRydW5rCisxMjQ0NSA0ZGExZmFmMjk3YWI4ZmEzNzQ2NDYxYWU1NTUzMDYyOTRlZmJlOGM1IGxlZ2FjeS10cnVuaworMTI0NDYgMzk2YTM4ZWE5Yjg0ZmFjZWIyNmFkNTM3ZDYwNjc2YjZkNzFkMWYxOSBsZWdhY3ktdHJ1bmsKKzEyNDQ3IGMzOWM0YmM0NWQzOTFlMmRmMWRiOGExY2Y1MTlkZDM5ZGZlY2MzZTUgbGVnYWN5LXRydW5rCisxMjQ0OCBjODc2NjJlZjNmMWRiNThhMjM0M2NhNDM5NjVjOWQwOGFlMGJhZTE3IGxlZ2FjeS10cnVuaworMTI0NDkgN2M5OTZmMzQwNDcyMGEyMzcwYzIzODNjNWFiNGU3ZTNmMzU4MTNlZiBsZWdhY3ktdHJ1bmsKKzEyNDUwIDc1Mzk4NTllOTg1YTE0YTRhYzdhNDRiMGNjNzE3ZmVlMjdjYjU5ZDggbGVnYWN5LXRydW5rCisxMjQ1MSA5OGUzNzM0NzM3OGIwMDZjZTZmY2M0OTIwOGUyMjRhY2M4YzNjMzExIGxlZ2FjeS10cnVuaworMTI0NTIgYWU4M2Y2MWQzY2Q3ZTcxOTlmZDUxYTM0NGI1ZGExOThlYWUxZjBlMCBsZWdhY3ktdHJ1bmsKKzEyNDUzIDQwNDYzZDUxNGYzZWE0YmE0OGEyYzI2ODQ1NTMwMWUxYTBlZWViZDQgbGVnYWN5LXRydW5rCisxMjQ1NCBlNWQwZGY4MjRiZjM4Mjc0OGMxZTBkYmM0ZmMzNmEwNTg2NjVkMTlkIGxlZ2FjeS10cnVuaworMTI0NTUgY2EyNzQ1MjcxMTExNjQwMWMwMjE1MjgwYWU0Y2Q5YzA5Nzk3NzE3YiBsZWdhY3ktdHJ1bmsKKzEyNDU2IGM0MDRhNmIwY2RiMWUyN2E1N2EwMGMwZTM0ZTZmNTFkMWMxNWRhMDQgbGVnYWN5LXRydW5rCisxMjQ1NyA5YTg0MmI4MWQ5YzNlOTRkZTcxYTQxZmRlZGExNTFlMDVjYWZlM2JiIGxlZ2FjeS10cnVuaworMTI0NTggNzE2ZGMxZDFkYmZmODkwMWMyNTkxMDFhODhhZjBiYjkyZWFhY2I0ZCBsZWdhY3ktdHJ1bmsKKzEyNDU5IDU3YmNjNmVjNjM4ZjZlYjljZWQ5MTIyMjhiNTkxNDJlYjk5ZmY2NTYgbGVnYWN5LXRydW5rCisxMjQ2MCAyNzUwZTFkZTY4MjlhZDE3OWJlMjQ3ZjFjYjA5YWMxNzgzY2ViMTQxIGxlZ2FjeS10cnVuaworMTI0NjEgNTcyZTEzMWFlMzY5MGZiNWQyMDQ3OTA0MWI4ZGNlODRjNjg4Mjg4OSBsZWdhY3ktdHJ1bmsKKzEyNDYyIDkyYTI1ZDUxZmYyNmNlMjUxNWQ0MGUxZjhlZGVmOWJkZjdjOTJjMTAgbGVnYWN5LXRydW5rCisxMjQ2MyA4NzllMzQ5MWI2NjFiOGU1YTViZWJhODYyM2E3ZTU2OTE5ZGU0MjZhIGxlZ2FjeS10cnVuaworMTI0NjQgODk0OTYwZmE5MGJjNzU1OWI3YTVlNzkzMmVhZjM1OGFlZjRmZTQ4MyBsZWdhY3ktdHJ1bmsKKzEyNDY1IDBkMjc5MWM3MjA2ZGFmYmFjOWFlOGFkOWM1Njg3ZWMxZmEzOTg3Y2UgbGVnYWN5LXRydW5rCisxMjQ2NiBkNDRjYjg3ZTUwMGRiYmM3YTE4OTViMTMwOGNhMmRiYTZjZWZjZGJiIGxlZ2FjeS10cnVuaworMTI0NjcgYzEwOTFlODJlNWFhYjA2ZGQ0ZDI1NDcyYTE5YjU1ODcyN2ZhZjNjNCBsZWdhY3ktdHJ1bmsKKzEyNDY4IDA3ZDMzMzQ4NWE1ZTA4YjI0ZjcwNzQ5ZDMyM2M1YWNhY2E0NTQ2NzEgbGVnYWN5LXRydW5rCisxMjQ2OSA0NDE0NmMwNmU3ZWQzYzc4N2ViMDExY2U0NzgyN2FiYzAxMjg4NWVkIGxlZ2FjeS10cnVuaworMTI0NzAgNDg1NTAyYzQyZDg5YTVkNjhlNGZmYTkwYjBiYzU3ODhlYTNlZjJjYyBsZWdhY3ktdHJ1bmsKKzEyNDcxIGVlODRmNDQ1ZTZkN2ExY2Y4ZjhlNjljNTg4ZWRhYjllMDE2NWNmYzMgbGVnYWN5LXRydW5rCisxMjQ3MiA4ZWZhMzdhNzcwYzY0N2I2NTg1ZTZmZGEzMzU5MDE1NGMyZjdjZmYzIGxlZ2FjeS10cnVuaworMTI0NzMgMDM5MGFmNmFjZjdmYTk4OTVjZGJmZDg0NjQxYWFiNmNhZjA2ODBmYSBsZWdhY3ktdHJ1bmsKKzEyNDc0IDE5ZmRhZjM2N2Q0NWI2ZGQyNDFmMTFkOWVkYTExMWNlOTZhNjdjYzEgbGVnYWN5LXRydW5rCisxMjQ3NSA0ZWMzYjNjYjA3YzhhMWVhMDI1MmQ3MTU1NmUxYmZiZTdjMmVlMzYxIGxlZ2FjeS10cnVuaworMTI0NzYgNjJmYTAzYTMzM2FhZmVkY2U3MmM4ZWU5ZTM3YjljMGY2YTIzM2U1MSBsZWdhY3ktdHJ1bmsKKzEyNDc3IGYxYTUyMGQyNjMxYThlY2RiZDJjMjQ5ZWMzMDdmMWQxNmNhZWYxMDYgbGVnYWN5LXRydW5rCisxMjQ3OCA0ZTJlZmY5NjhjZjVjNjcxZDEyYTVjZmU0NWRjOWNjODE0MzZjY2FkIGxlZ2FjeS10cnVuaworMTI0NzkgZjhmYzkxYjAxN2ExNDMxNWFmYmRlNWNmMTQ2NDM2OTM0MGZjMGUzOCBsZWdhY3ktdHJ1bmsKKzEyNDgwIGY2YjJmMjBkYTU4MTY3ZGM4NjY2MTZlNmI3MjMwMjgxM2QxM2FlNzkgbGVnYWN5LXRydW5rCisxMjQ4MSA0ODllZjdmNjQwNDEwYjJjZTdmM2U5OGY4YzllYzY1MDBhZDI5M2U4IGxlZ2FjeS10cnVuaworMTI0ODIgZGNiZTcyYTBiMzkyNmI5NDJlNmFjYThhMmE1Y2QyYWEyN2QyODg4NCBsZWdhY3ktdHJ1bmsKKzEyNDgzIDc1OTEyMWUzZDliNmQ2NzI5NWQ4OGMxN2RhYTA5YzFkZTc1MjhkZWIgbGVnYWN5LXRydW5rCisxMjQ4NCBhZGZhY2JjYmQ5MzYxYzkyOWUyZGZlNDQ2MzU5MjY1Y2JhOTEzZDczIGxlZ2FjeS10cnVuaworMTI0ODUgYzg2NmYxNjYzMzFiYjY2NTVmN2Y3NGE3NmIzYmZkZDQxYTk5ODFiMyBsZWdhY3ktdHJ1bmsKKzEyNDg2IDRhZjM4YTQ1ZDI5YzhjOTIwYTg2YmRlOWJkNjFmMDMxZTM1ZjhkNmMgbGVnYWN5LXRydW5rCisxMjQ4NyBhNmNiODhiNTgxNjUyM2YzOTM2MTUyMWIyZmZmYzlhNDZlOWE4Y2U4IGxlZ2FjeS10cnVuaworMTI0ODggZDRiOGRkZDlhNGZkMGZkN2YyMDQyMmE2N2VjM2QxY2I4ZTNhZDQyNyBsZWdhY3ktdHJ1bmsKKzEyNDg5IGI3YmNjMmNkYTFiM2IyNjE4MmYyOGFlZDkwMDViMTEzNzgzZjc3NjQgbGVnYWN5LXRydW5rCisxMjQ5MCBjZmJjYWI4MTUwZGE5MTc0MzA0N2JhMmFlYTZhN2E1NzEzYmUyNTJkIGxlZ2FjeS10cnVuaworMTI0OTEgNzhmZjIwM2VhZDI0NTRkNGYwZjY2ZGNiNGM2ZmVhZDI1NzdkNDZjNCBsZWdhY3ktdHJ1bmsKKzEyNDkyIDEyNGVmNjk0YzI4NDQzZTQyMDZmMTQ4ODljNGFkMjFmZjYzOTVmNzcgbGVnYWN5LXRydW5rCisxMjQ5MyBkZGJiZWQ4Y2I4MzBlZTQ5ZGFjODdjNTJlYTlmNzE2YTA5YWYxMjQzIGxlZ2FjeS10cnVuaworMTI0OTQgMDA5YzliYTlmNjU4YjI1OWM3ZGNjZGU0MGQ4NmQ2YWIxMjg2ZDk4MiBsZWdhY3ktdHJ1bmsKKzEyNDk1IDE2YmQwZmRlMDlhZWNiNzIzNjdmNTVjZTdlNjhkNTIxMDY0MjhhZTcgbGVnYWN5LXRydW5rCisxMjQ5NiBhNzhkMzA1NmFiNjEwNGIzNTAyZjJkMzU5ZDRjYzIzOTQ0ZDUwYWNjIGxlZ2FjeS10cnVuaworMTI0OTcgYmRkZThmYmFlYTU4YzdkY2UyZjZlYjZhNTdkZjczYWRiNWFhNzhiYiBsZWdhY3ktdHJ1bmsKKzEyNDk4IGVlZDBjYWNmNGM2NGQ4ZmYxZWNhMzdmMTVmMzVlZTdmM2MyNDQyZjIgbGVnYWN5LXRydW5rCisxMjQ5OSA4YzZlNzA1YjZiOTcxZDQyMTI2YmEzMDA2MTgyMDYyODEzZjVlZjc3IGxlZ2FjeS10cnVuaworMTI1MDAgYTFiY2YzZjI5ZjY2ZGY1ZDQ2MzMyODY4NDFiYzU5NGZhNzVjNmEyOCBsZWdhY3ktdHJ1bmsKKzEyNTAxIGMwZGFmZmU0MDAzNDY4OWZjZDIyMmY4ZTJjN2E1NDQyYTkxNzI1YmYgbGVnYWN5LXRydW5rCisxMjUwMiA0NDE1MDAwMTlkNTBhY2MyNWM1ZmViNGQxNTE2ZmRlZjQ3ODMwZGVkIGxlZ2FjeS10cnVuaworMTI1MDMgMmIyMzhkMTlhZTg4YTdjYmIzNzNjNjUwNTc1NGMwZmQxYTIwZTczMSBsZWdhY3ktdHJ1bmsKKzEyNTA0IDRhYjVlOWY4MzlkOTc0NmQ5ZjJmZjk1MzA4NTFmYzdhZWU5MWI2ZGYgbGVnYWN5LXRydW5rCisxMjUwNSAwYTU2ZTUwODI2ODBiOWYyNTQxMGMxNjljM2JhNzA3YTVlZmE1NjkxIGxlZ2FjeS10cnVuaworMTI1MDYgM2E0MjA3MTdiYzhhNDJlOTU3NTAxZjA1MDAwYjNiMTkyOWY3ZmZhMyBsZWdhY3ktdHJ1bmsKKzEyNTA3IDc3YTk0NTMxNTI5ZWMyMTJhNzRlOGJhODc0NTJlNjc5NWY1NWViN2IgbGVnYWN5LXRydW5rCisxMjUwOCBmZTBiNTIyZTQ2Y2IzYzg2MTMzNDkzYjQyZDM2NWRjOTI4NjBlOTJjIGxlZ2FjeS10cnVuaworMTI1MDkgZWY1Y2YxYTRlNTJhOWM0ODU0MGM5ZmQzOWMzOTJlZDc3NTM2ZDBiMiBsZWdhY3ktdHJ1bmsKKzEyNTEwIDU1ZjhjNzAxYzlkYWQxMWE1NDFjNzBiMDAzNjEwNzFkNGQ5NGI1YWEgbGVnYWN5LXRydW5rCisxMjUxMSBhYjZkZDcwZjI1MDc2ZjY4OTI0YTg5OWNkMGZmNzQ4YjkyMzljMGExIGxlZ2FjeS10cnVuaworMTI1MTIgNDY3MWFlMTAzNWIzODk1OTkwOTgzN2FiYzZkOGUzNjk0NTlmNDcyZCBsZWdhY3ktdHJ1bmsKKzEyNTEzIDQyYjIyOGQ3OGJlYWQxMmQzM2U3ZDAzMGM0YjM2ODYzNzllOGMyMTIgbGVnYWN5LXRydW5rCisxMjUxNCA0YTI1ZGQ4NWRmNjIyYTVjODYwZGI5ODczZDc4NjU0Njc2NWMzMGFiIGxlZ2FjeS10cnVuaworMTI1MTUgOThmYTUzNWI5YWYxZWY2MGFmMWZlOGU3OWEwZGM4OGNhMzA0ZjBjZSBsZWdhY3ktdHJ1bmsKKzEyNTE2IDYzN2ViOTYxYzExYmY1MjZiOGMzNDAyZWU3OTczNWI5MWM1MmUxMzggbGVnYWN5LXRydW5rCisxMjUxNyAyYTBjZjk2NzcxOTM5ODMzNGNmZGVlMmVlNjY3ODAzYzY0YzRiNjU2IGxlZ2FjeS10cnVuaworMTI1MTggYzY5MTNjNzMyNmYwOTZjMDIzMDQyZjE1NTAzNTAzM2Q4MDNiNjY2ZCBsZWdhY3ktdHJ1bmsKKzEyNTE5IGYyNDU3ZDY5N2EyYTI4ZTEzZTkzOWI5NjVlZmQyMDQ3OTllNDc1NmYgbGVnYWN5LXRydW5rCisxMjUyMCBkNzk3OWY0ZWQyYjYxNjM1NjVlZWIyODQ3NzM0YmYyNDczZWUyZTZkIGxlZ2FjeS10cnVuaworMTI1MjEgODMyNzY2OGNmZDE3MTRkMTJkZGZkODk5NjExNWQ5MjA4MTA1M2MzNSBsZWdhY3ktdHJ1bmsKKzEyNTIyIDk0MTI1YTEzNDNkODE4ZGRkYmEwMjg2ZDhjZjc4NzY1MDZiNDEzZjQgbGVnYWN5LXRydW5rCisxMjUyMyAyMTgzZjUwNmEwOGUxYzhiZTY2YjVlZjZjMDk5M2Y2ZDQyMzIxOWU5IGxlZ2FjeS10cnVuaworMTI1MjQgMjgxOTRmNTFmN2ZlNTRjNDFjZjdiZDA3NzUyOWZjNTIwM2Q1ZjAyMSBsZWdhY3ktdHJ1bmsKKzEyNTI1IDg5ZGNlYTYzYzQ2YmVhMDJiNWMzNTgwMjQ3ZDMzZjRhOTVjNWZhYWUgbGVnYWN5LXRydW5rCisxMjUyNiBjYWYyYzY1YTZiY2YyNWY5NjUwYzM1MzAxY2U4ZTA2MDI5NGJlMTM4IGxlZ2FjeS10cnVuaworMTI1MjcgZjU3MmFlMzZkNWJhYzliNDU2YTM5ZDdhZGE3ZWJjZGIwNTZlNjg5NyBsZWdhY3ktdHJ1bmsKKzEyNTI4IDYyMDY4NWU0YzQ3N2UyMDdhOWUxODc5NDdmNTYyZTMzMTQ3Y2JjMDcgbGVnYWN5LXRydW5rCisxMjUyOSAwODBiZDQ2ZjM4NDg3OTljZGY1MDEwZTk3ZDgyNGIyNDZiMmMwMTllIGxlZ2FjeS10cnVuaworMTI1MzAgMTY3YWRmMzE3ODZkNzM0NjJhN2NjNmZhZTdiNDZjNjVmMGU2NzgwZSBsZWdhY3ktdHJ1bmsKKzEyNTMxIDAzNGI0MmJhNjhhNjk5M2E4YTFmM2FlNGYxNTc2NzVmMDBhZGI5YTMgbGVnYWN5LXRydW5rCisxMjUzMiA3NGQwZDJmM2NiMWRiYThmYzFhODE2MGNhNzgwNWUyOWM2YjM5M2I5IGxlZ2FjeS10cnVuaworMTI1MzMgZGU1NjhlYTBkMDQwZWI2MzBkZWRjNTkyZTY1Njg3YTY4NWE1MzA2YiBsZWdhY3ktdHJ1bmsKKzEyNTM0IDIwZThhMzM0NGEwZmY2MGNkOGM0YzZkMTM1NWZlOWNhNzk3ODU2MmEgbGVnYWN5LXRydW5rCisxMjUzNSAxMDUxZWY5OTQzMWU1ZmVkY2FlMWMwNGU3OWU5MTVlYTk3MzAzOTgzIGxlZ2FjeS10cnVuaworMTI1MzYgYzliMDcwMDc0Yzg1ZDNiY2YyYjMxMTBkMmVjNDU5YmIzMTcyYzgwNSBsZWdhY3ktdHJ1bmsKKzEyNTM3IGI3MmE4YzQ4ZjJkMDA0M2YzZmYwNTgwNTgzN2JhMjA2NTg3MGVjM2YgbGVnYWN5LXRydW5rCisxMjUzOCBmNWRmMjJmZGFkYTg4NTliODAxZDYwYWY1YWRlOThlMDIxNjc1ZWZjIGxlZ2FjeS10cnVuaworMTI1MzkgZjEzMmVjZmRiMjg1NTc3N2Y2MDQyY2Q1MWE1YWQ0N2FkNzU1ZmUzZiBsZWdhY3ktdHJ1bmsKKzEyNTQwIGJhMDNlNjhkZjBmZDRmMDkwZGQ3MDZlMWQ4NjM4NDRiMjhhZDVkYjAgbGVnYWN5LXRydW5rCisxMjU0MSA2ZGZmNzY5NmUzNTgxMTJlMmE1MDhkZWYxNWU1MmEzN2I0Y2E1ZTYyIGxlZ2FjeS10cnVuaworMTI1NDIgM2FkMmIyZTMxZjUzMDhlYTNmYjIyM2Q0YjVlMzYzZTZhMzQzYjEyNiBsZWdhY3ktdHJ1bmsKKzEyNTQzIDMyNjUyZjY5OTZlMzc0M2UxOGM2ZGI2NGY4NGFiZDliN2Q5ZWJiMmUgbGVnYWN5LXRydW5rCisxMjU0NCBmMmMwNzJiMDU0NjY1NGQ2MjE0YTAzYjQ4NTQ4ZDUwOGIwMjZmYzcyIGxlZ2FjeS10cnVuaworMTI1NDUgMGRjNTBkNDNmYjg0NjM0ZGQ5NzhlZDNiOWU4NzEwZTdkMmYxMDU5MiBsZWdhY3ktdHJ1bmsKKzEyNTQ2IDhjZjY2YjFkNDE1NWVjZDFlOTBjMzkxOTFmM2JlOWI0OTU0ZWFjZjEgbGVnYWN5LXRydW5rCisxMjU0NyBlZTlhOGZlMGNmY2E1ZjExMGQ3OGI4OWZmNDgzNjg2NTEwZWQzYTZlIGxlZ2FjeS10cnVuaworMTI1NDggYzA3MzlmNjQxYmQxZDU4MWEyMjkyMjIwMjVlNGU5YmVmYzdhZmI3YiBsZWdhY3ktdHJ1bmsKKzEyNTQ5IGEwYjA2ODkxZDI4NjAwNjZjZWM5N2Y0NDZiODU2Mzg1ZDIxNjQ4MGIgbGVnYWN5LXRydW5rCisxMjU1MCA3Yjg4YzEyYjg3MDFjZGU2NjMxNTM0NGQ1MjY2ZmU4MDBkMTk3ZWU1IGxlZ2FjeS10cnVuaworMTI1NTEgZGNlMTA0ZTFhNzNiYmRjY2FlNjRhYWVlODE1Y2IwMTUxNjk2MTFlZSBsZWdhY3ktdHJ1bmsKKzEyNTUyIDY2ODU4ZmRmNDY3ZWJhMWM1MmQ2MDMyM2Y3MTJkYTQ5OGU4ODc3NWIgbGVnYWN5LXRydW5rCisxMjU1MyBmMDcyMDNjYzI3NDBhOTE5NzEyNzg5OGY1MGNiY2Q3ZjU2NjJlYzAyIGxlZ2FjeS10cnVuaworMTI1NTQgNzk0YTIxYTVhZDM1ZTE5MWFjOTZhMTIxZmZiNDRkMjI5ODc1NGI0MSBsZWdhY3ktdHJ1bmsKKzEyNTU1IGYzM2VkOWUyYTYwN2ZhNGM5Y2Q1ODJhNTk2MzBmN2E4ZGJlNWEwYTUgbGVnYWN5LXRydW5rCisxMjU1NiAyN2NjN2EzMTQ1MDI2NjBhNzcyM2E1MGI5MTcwOTg1Y2UyOWQ4ZTM2IGxlZ2FjeS10cnVuaworMTI1NTcgODBlMGFhYjE3MDVlYmQ1NDIwMmFjMTM0MDM0ODk4OWQ4NGRmNjAyOSBsZWdhY3ktdHJ1bmsKKzEyNTU4IGI4MmE2MWE4ODRjZjI4NzYwN2E3ZTcyY2U0NmNjZGRmOGVjMGViZDEgbGVnYWN5LXRydW5rCisxMjU1OSAwNzVmODcxZDgwYjU1ZWVhYTU0OTM5N2RmZDlmZTE4ZTFiM2Y4NzE4IGxlZ2FjeS10cnVuaworMTI1NjAgZWU2MjU2MDgxMzY2ZDI4MTVjOGFlMWIzNjMzNDhhMTM1M2M1MmIyMiBsZWdhY3ktdHJ1bmsKKzEyNTYxIGM4OGFhOTU5M2EwOGVkMTEwMzBkNmY2MjdlMjhlNzk5ODUwZGEwMzEgbGVnYWN5LXRydW5rCisxMjU2MiAwMTVjYjYyMzFmM2Y4ZTY2ZWNhMWRmMDk0NmZkOGE2NWFmNWZkNzZlIGxlZ2FjeS10cnVuaworMTI1NjMgZGRkYTU4NTRlM2VhZDUyMjBkNmZhMGI4ZjU2NzhkMmEwODIzNGZjNCBsZWdhY3ktdHJ1bmsKKzEyNTY0IGQ1ZTY0YTYxNjMyMDAzYzZjNmE3ZGY2Y2U4MmZlMzc3YzY3ZmQ4MmQgbGVnYWN5LXRydW5rCisxMjU2NSA4ZmZlNDUwNDI4YjFiMzM5MDEwNWMwY2M5NzhiYzA4YmI5YWU0OTM1IGxlZ2FjeS10cnVuaworMTI1NjYgZDliN2EyMDgwOTcxYmEzMDllYjBkZTdmZGM1NDllYzNkYTU1NmEyYSBsZWdhY3ktdHJ1bmsKKzEyNTY3IDZhYmQ4NGFhYjA4YThlNTI5MWEwMmIyOGIwMjM5OGIxNGVjZmFjMTkgbGVnYWN5LXRydW5rCisxMjU2OCBkN2Y0MzRkNzg0YmY5ZTY4OTJjZGZlNWM2YmNlOWJhZmQzNTNjMmIwIGxlZ2FjeS10cnVuaworMTI1NjkgNzEwMjI4OTA0MmQ1ZThlNDQ5MGM0YTI2NjM1ZmNlNjM5ODJlOGEzNSBsZWdhY3ktdHJ1bmsKKzEyNTcwIDZkNmY0MjdhYjZlY2IxODM2M2JmNjJjZGE4NDViMWFkMDE0YTIzNjkgbGVnYWN5LXRydW5rCisxMjU3MSA1ZTAxNjQ1ZWU0MWI4YzIwY2Q2ZjAwMTM1OWFkZjYyYzQ2ZjZmNDNiIGxlZ2FjeS10cnVuaworMTI1NzIgMTM3MTc5MTg2OTI3YTA0MGMwZWE4MmFhNzNmYjNlMzE5NmE4NDBhNyBsZWdhY3ktdHJ1bmsKKzEyNTczIDY3ZWQwNWNmMTcxZDA4ZjUzNWEwYWFhM2JjMGU5MzA4NzQzMThiYWYgbGVnYWN5LXRydW5rCisxMjU3NCBlY2ViY2Q4NGRmMzdiMmFlZjBlMjI1MDc1ZWY5MDc5YTFiMjNhOTIyIGxlZ2FjeS10cnVuaworMTI1NzUgMWUyMWUyMjQ1M2RjM2M0Yzg1OGQyNTg4ZDU5ODM3NzAxZDE4OWNmZCBsZWdhY3ktdHJ1bmsKKzEyNTc2IGQ0ZTk2MzI1MDNkZmRhMzMwNGJlY2FmYjI1MzVhNWVjNDgwOTEyZDkgbGVnYWN5LXRydW5rCisxMjU3NyBkNmJhOGU1ZTU1YWQ0Yzg5YTQ4NzY0ZTdmYWNiNDJhMTYxNDhhODRmIGxlZ2FjeS10cnVuaworMTI1NzggY2JmNTUwM2IzMmQ1NTliNjNiM2MxMTljYTk1MTQ5NDc2ZmRkMDQyMCBsZWdhY3ktdHJ1bmsKKzEyNTc5IDgwYjIxNTI0OWIxN2Q1MWIyNjUwZjliYTBlODhmNzU5MzRiYjFmZjkgbGVnYWN5LXRydW5rCisxMjU4MCBjM2Q1MDY3OTQ5NjdkZjg0MWNjMjFiOTg5ZjNjYzZhOTIzYjY5N2Y1IGxlZ2FjeS10cnVuaworMTI1ODEgYmMzNjAyYTgzYWQzMjk1YjJkNjNmOGE4YjdjYjNhMmUxZmQ1ZjhhNyBsZWdhY3ktdHJ1bmsKKzEyNTgyIDZmNDJjOGZlODc1YjdkZTIyNTg0NzVmMjQ2NWJkY2YxYjY4MDcwYWIgbGVnYWN5LXRydW5rCisxMjU4MyA0OGFmMmM2Yjc0MWU5YzgwY2QzMGNhYTY0Yjc5NTE2MTA3MzhiNDI2IGxlZ2FjeS10cnVuaworMTI1ODQgYjU0NTRkYzIyZGNiODExZjNmMjEyN2NjYzA3ZWE1YTJiMzJmYzk1YSBsZWdhY3ktdHJ1bmsKKzEyNTg1IDQ4OTRkY2VhMTI2YjQwNzlkYzYwZTIwNzlhZDVkNjUyNjI4NGM1NjIgbGVnYWN5LXRydW5rCisxMjU4NiA1ODIzYjYxNWMzMDFlM2JiNjlmZjk5MTdmNDA4MGI2MDQwOWFhMzEzIGxlZ2FjeS10cnVuaworMTI1ODcgZDNlNDRlNjEwZWExNGIyMjdkMDBmMjU1MWVmN2Y4OGI2NzkyMjVjNiBsZWdhY3ktdHJ1bmsKKzEyNTg4IGM3MTQ0ZTdlODQ5NDIwNTA0ZjQyM2Y3MWQyOWQ5YWYxMTA5YWNmYTUgbGVnYWN5LXRydW5rCisxMjU4OSA5ZWZhNDI0NDVlYzlhZmVlZTMyYjliMDFjY2NiZjNhMTJjYTJiMmMzIGxlZ2FjeS10cnVuaworMTI1OTAgZjVhNTVkMzI3NjA4M2ViYzUwMWE0Yzk3YjkwNDU0YjI1OTVjZTY5YSBsZWdhY3ktdHJ1bmsKKzEyNTkxIDJhOWVmMWUwZjU0MWQ5ZGUxODE1M2RmODIxNDhmODFlY2E5YjQzMTUgbGVnYWN5LXRydW5rCisxMjU5MiBhYTAzMzY1MjdjNGU5NTYzMzk0ZGIwNGEyMGE4ZmQ0MmQ0NjFlN2JmIGxlZ2FjeS10cnVuaworMTI1OTMgOTY1ODZkYjM3OWZiYTlkOTg0YzYzNjg2NGI0MGY3YjQ0YTk4OTg3ZiBsZWdhY3ktdHJ1bmsKKzEyNTk0IDU3NDA3NWU5YTI1ZjRkYjdiNTQ2MTk1N2Y1YTNkN2M2ZmE2MDlmYmUgbGVnYWN5LXRydW5rCisxMjU5NSBkOGM0Mzc4ZWI4N2RhYmU5NDgzMzc1MjA1NWJiMDE2N2JiMWFlZjFhIGxlZ2FjeS10cnVuaworMTI1OTYgMWQyOGM3ZTE2NjM2NTczMTVkOGJhMWUxMmIzZGQ4MWYyM2ZlYTE3NCBsZWdhY3ktdHJ1bmsKKzEyNTk3IDdlYWQ0YTA0NDI3ZTg4NDAyYzc1NTZlM2JmNGU5ZTI2MWE1ZTUyM2EgbGVnYWN5LXRydW5rCisxMjU5OCAzYWUwM2I5YjY1ZWRjMmEwOWQ4ZmI0ZGRjYmRkODA0NjU1OGE5MTYzIGxlZ2FjeS10cnVuaworMTI1OTkgZjVmMWI1ZTk4MTRhNDhlYTJlY2NiMWMxNDE5NzVjYmQwNGJiYmEzZiBsZWdhY3ktdHJ1bmsKKzEyNjAwIDNmN2RjM2RlMDYxNzBkNDk4YzE2Y2IwMDFiNTA3NTZhZWI2MTJhNDUgbGVnYWN5LXRydW5rCisxMjYwMSA5YTNhNDY5MjhkYmZlYjhmYjJjMzllZmNhYjJjMjk5MmJmZTM4OTgzIGxlZ2FjeS10cnVuaworMTI2MDIgOTE4NDg2MmJkOGQxZTkyZGMyM2Y3YTZmMGFmNjczOWJkZTIwZjczNCBsZWdhY3ktdHJ1bmsKKzEyNjAzIDZiMjhiNWYxOTdjZmIwNDgyZDA0ZTMwODE1YWNhNDQxZjViMDY1Y2UgbGVnYWN5LXRydW5rCisxMjYwNCBjN2RmZDYxOTM1MGJjN2Y0YTljMzc4OWJjNjRhNzA3ZjBiOGFlZmQ0IGxlZ2FjeS10cnVuaworMTI2MDUgZWZmMDhiZDgxNjVkODJhZmYyZDczMzk3NjU0NDEwNWJhNDk4OGEzMSBsZWdhY3ktdHJ1bmsKKzEyNjA2IDU4ZTdjYzVhMzg0MTMwMGNhNWFiMTI2YTBmNGQ0ZmZmNDg0ODMzMTEgbGVnYWN5LXRydW5rCisxMjYwNyBlNmJiYTAyZmY2MjQ2ODRiYjA3NmNmNzFkNmY4YTU0ZTg5MThkNmFhIGxlZ2FjeS10cnVuaworMTI2MDggMTZhYTczNTg4ZDkzYjY4ZjUwMjAzZDIxYThhZDk2ODc1YjA3ZmQ0MSBsZWdhY3ktdHJ1bmsKKzEyNjA5IDY5N2UwYzlkMDk0MGVjOTUzYzAzNDhlOGJkOWFlOGEwOTkzMzljYmEgbGVnYWN5LXRydW5rCisxMjYxMCA1MmQ1N2NjMDNmNDI5ZTgyZTQ3ZWEyNWI3N2MwOGY4ZWEyMWU3NjVmIGxlZ2FjeS10cnVuaworMTI2MTEgM2Q1ODdlNjUzZjJkNjU4ZDk4ZTExNjE3ODQ4YzA5MDkxZTdjYWY5YSBsZWdhY3ktdHJ1bmsKKzEyNjEyIDMxYzExMjU5NGFiNjM3YWU4YjRjMmY5YWJiZmFkMGZjNmM5Yjg2NzUgbGVnYWN5LXRydW5rCisxMjYxMyAzZjkzODU4N2YyYTNmMDJhMDllZTcwY2RlMDNhNmRhNTc1N2Q1MzM1IGxlZ2FjeS10cnVuaworMTI2MTQgYWJmNDkzMDY0N2UyODIyYjc4MGY3ZDRjMDY1ODI5NGY3YzE0ZTg2OSBsZWdhY3ktdHJ1bmsKKzEyNjE1IGU5ZjU5ODViNmVhNDY0ZjgxY2FkM2IyNDkzYTE1ZGVjZjQzMDZhNTUgbGVnYWN5LXRydW5rCisxMjYxNiA1MDhhNjM5ZDhmZWIzNWFmNjIzZDUzNTNiMzNlYWY2NDA3NTVkNTU4IGxlZ2FjeS10cnVuaworMTI2MTcgYTk5ODg1YWYzOWY4OGM0ZWU4ZTUxMTMzMmU5MmMwODdmMzc3M2IyYyBsZWdhY3ktdHJ1bmsKKzEyNjE4IDQ5ZTdlMjE4NDliM2NjNTFmZGI2NWM1YTQxZTgxNjJiNTc5M2EzNjUgbGVnYWN5LXRydW5rCisxMjYxOSAzMTQ1ZGVmNTgzZTJjYTE0ZTM5OWE5YzcyNGY0MDZiYjFlZDlkMDk5IGxlZ2FjeS10cnVuaworMTI2MjAgYTlmYzczOThjZTdiYmY3ZjY2N2ZkZmYyZjAzMjE0ZWQ4YTJlMTk1ZSBsZWdhY3ktdHJ1bmsKKzEyNjIxIGE2M2M5YzNlOWVjYzAxZDRmNzUzNmJlMjJjMzY1OWFkOWViOTc4NzQgbGVnYWN5LXRydW5rCisxMjYyMiA1YjE1NjQyZTdiZGY0YTI4ZDc3Nzc4ZTg0OTkxYmZjMWZlOWZkZjY4IGxlZ2FjeS10cnVuaworMTI2MjMgYjdkODEyNWMyNDE3ZDg3ZGMzY2IwNGNiZDhiYzczYzVjYTcwMmFhOCBsZWdhY3ktdHJ1bmsKKzEyNjI0IGNiYjNiMmM1NTVkN2E3MGExNjk2NDEyYzg3OTEwYmExNjVkNmM4NWMgbGVnYWN5LXRydW5rCisxMjYyNSBiYzI4N2M2Y2ZhMjMwZjA1NjZlMDRmNjczZDRiYjEwYzI3YmVjNTUwIGxlZ2FjeS10cnVuaworMTI2MjYgZmI5NjY1NjJkYjBlNjFlNjExZWNhMjY2ODEzZTA3YTZjYjdjYTQ2MCBsZWdhY3ktdHJ1bmsKKzEyNjI3IDY0NzI4YTUxY2I1NTFlODZiNDNjZTYxNDAxOGJmMzAzODNmN2Q4OWMgbGVnYWN5LXRydW5rCisxMjYyOCA4OWY2NTU2ZjA1OWViNjgzYzBmMzRkMjI3YTY3ZGYwMTRmZjgwNTM3IGxlZ2FjeS10cnVuaworMTI2MjkgYmFmY2Q3YjYyMzI3NWM3NTNlMmQ1Zjk1NTEyNjk1NmNhYTJiMjQxZSBsZWdhY3ktdHJ1bmsKKzEyNjMwIDBkZDRmYWZlZmQ2YzQ4YTRjMzg2YzgyOGQ2ZWRiNjY5NDRjNTdlOTcgbGVnYWN5LXRydW5rCisxMjYzMSA4YjU1YzUxNTY4M2Q5MjdjYWMzMGIwYmZjOTRhMDE1OTNmMGU2NDIzIGxlZ2FjeS10cnVuaworMTI2MzIgZTU2OWY5YjBkOTY5YTExYjZlYzdkMTllMmYxZTZmNjUzNGNhZTE1ZiBsZWdhY3ktdHJ1bmsKKzEyNjMzIDFhYzJhOGJiN2RjMTA4NjRjMDlhOTcwYTUzMzBiMTNkM2VjZDQyNzYgbGVnYWN5LXRydW5rCisxMjYzNCA2NGU2NGVmMDhkMWM5MTE1NmFiMDc2MzVmMzY2MjcwMThkZDRhZGFiIGxlZ2FjeS10cnVuaworMTI2MzUgNTcxOGU4MzAyMGFlOTVlNTNiYmJkNTExYjNhNzZkY2VhYWY5YmE5MyBsZWdhY3ktdHJ1bmsKKzEyNjM2IDEzOWQ1ZjFhNmY4OTlkN2NiM2YwOWQ3YTVmZDc1YTY4ZDQ3OWI1ZDEgbGVnYWN5LXRydW5rCisxMjYzNyAwYzA3YzBkYmUzMjgyYzA0YjlkMDc1ZTU1MWRjNGFkN2VhZjE1ZTdhIGxlZ2FjeS10cnVuaworMTI2MzggNjU3MzE2OThjNmVkZjRhNzZhZjZlMTQ2ZWIyOTRjODNlZDc4MjU1NCBsZWdhY3ktdHJ1bmsKKzEyNjM5IDQ5Y2YxNDEyNDQ1ZjMyMDk2MGMwM2YxYTQwNDU3ZmNkYjE3YTlhZTAgbGVnYWN5LXRydW5rCisxMjY0MCBiMjE5MTVlNjU4OWUwNGY5OGZjMTM3YWJhMWNkNTEyNmMzNjk0OTkxIGxlZ2FjeS10cnVuaworMTI2NDEgYmMwMzQ3NjQzZWNmYzZjYWI5NWI4MzUxNTQ2MDcxMTQ5MDA2MGFjZSBsZWdhY3ktdHJ1bmsKKzEyNjQyIDkyMzIzNjEyOTRiYjY5MjQ1ZmUxYzVjZjg4MzYzMzE0NGY2MTg3NjUgbGVnYWN5LXRydW5rCisxMjY0MyAwOTkwMmUxMzA1MzczNDRlM2NlYjIxYzE2MjQ2MTI3MjM2MzJjMzQ5IGxlZ2FjeS10cnVuaworMTI2NDQgNWJkYjcyYjE5NTdlMTZlN2FiODg3M2RjMDIwNDgyNGZlM2JiNTgxNSBsZWdhY3ktdHJ1bmsKKzEyNjQ1IDNjNjk4YjUzYmU1OTIxMTZmYjMwZDI4NzY2NDA3MDQ2YjgwODVhYjIgbGVnYWN5LXRydW5rCisxMjY0NiBhYmQzZjA2NmM4N2FjNTM5ZjU0YmMyZjkwNDIxZDZiYTYyZGE5OGZmIGxlZ2FjeS10cnVuaworMTI2NDcgODI4NDkyNzAyNWJlNmZkMmI0YWQ3OWM1MzJhNTY5OTVkZDU5YmQyZSBsZWdhY3ktdHJ1bmsKKzEyNjQ4IGJkNDlmOTFkNTliMmQzMWE0Mjg5NDVjODQzN2UxNmY1OWQ0NmNmNjcgbGVnYWN5LXRydW5rCisxMjY0OSAzYWM3ZjAwNjYzNzVmYzg2MWYzNDliMWQwMTExZTJkZjA0MjY0ZDgxIGxlZ2FjeS10cnVuaworMTI2NTAgZTQwYmNmNmJjMWM4YmEzNjA2ZjQxOGQwM2UyNjc4NDJkMzcxMzkzMyBsZWdhY3ktdHJ1bmsKKzEyNjUxIDk1OWU4MWIzOWI4MTEyMmY2NzMwYTg2OGZiMjVlYTI1NmNlNDVjMmQgbGVnYWN5LXRydW5rCisxMjY1MiA5YTZjM2RjMWRjZDNmMGUxNGVjZWE2ODQzNDdmODI3MWJmNGE4MDc4IGxlZ2FjeS10cnVuaworMTI2NTMgMWQzZmU3Yzg4Y2M4YzQzM2Q4ZTUyYWE1OGMyZDQzMmIwNWYyNjZkNSBsZWdhY3ktdHJ1bmsKKzEyNjU0IDYyZGM5ZmY5Y2Q0YzM5MmNjZGVkMTc1OWZiMDliNGE4OTEyOTJiMjAgbGVnYWN5LXRydW5rCisxMjY1NSA5YWE0MzkwYmUzOGI3YzBhYzI4YWUxZTQzY2JhMzI2M2QzMWQzNDljIGxlZ2FjeS10cnVuaworMTI2NTYgZDM3ZjAzMTI0YzU0ZjgyM2Y0YjJjYWY5NGVjNWVhNjMyNDY1Mzk1MSBsZWdhY3ktdHJ1bmsKKzEyNjU3IDg0NjRlMzEzNzZlZDliZjFhMzBiODczMDBkMmI4YWFlNzJmZjQ5ZDIgbGVnYWN5LXRydW5rCisxMjY1OCAwZjdkNjk0YmMzMzRlZmYwZjFjYzAwMTAzMTE1ZDRhMmM1OTM0MmI2IGxlZ2FjeS10cnVuaworMTI2NTkgMTMyMzliNDhjNDY5YzFhODI5MWMwNWY5MWM3M2IyMjdjZjViNjdjMyBsZWdhY3ktdHJ1bmsKKzEyNjYwIDYyNWI3Y2ViZmRlMmIyZDlkMDNmODkzMjI5Y2I0OTA0MWU5MDdkNzMgbGVnYWN5LXRydW5rCisxMjY2MSAzYjdiNmQ1ZjE5MzE2N2RjOTg0ZGFiMGJjM2EyN2RkZjM1OTJjZjE0IGxlZ2FjeS10cnVuaworMTI2NjIgM2JhMDI1YmE3ZjA5NTA0YjcxOGU5YTBkOTBhYmIxZTRkMDdhYmFjNCBsZWdhY3ktdHJ1bmsKKzEyNjYzIDVjMWViZjIzZjFkNzdiNDNkZTQxNzNhNWIzOWVjMTA3ZmZiMGEyOWMgbGVnYWN5LXRydW5rCisxMjY2NCA1NjRmMDM2MzI5MTYyNWRjY2M0YjM1NmQ3ZGI1YWIyNjhiNzM1MmZiIGxlZ2FjeS10cnVuaworMTI2NjUgZGRmODYxZDg0YmJiOTIyODRiMzQ0ZTM5ZGRkYzhjYmMyMDNhNmE0OSBsZWdhY3ktdHJ1bmsKKzEyNjY2IDE1NGM2NDA4YzNjMmRkY2Q2Y2M0ZjQxNDgxM2I2OGRkMmYxZTgwMDMgbGVnYWN5LXRydW5rCisxMjY2NyA5YzljZjQ1NzJhOTc3ZWY2ZjdiZGY1OWE3OThjNGMxODZlMGU1YWNhIGxlZ2FjeS10cnVuaworMTI2NjggM2YxM2VlNTkyYTQwZjgzZTI5MTJlMDFkZWE3ZWVkMThmMWIzZjQxZCBsZWdhY3ktdHJ1bmsKKzEyNjY5IGJkOGM0M2RhZWY4NWUyMDQxYWQ5OWExYzI5MTRiN2I3ZGVmNmE3N2QgbGVnYWN5LXRydW5rCisxMjY3MCA3NjJjZmU5NmZhZjlkNzFlZGI3YWFjN2JhMGQzZjljZjdhYjExYjdhIGxlZ2FjeS10cnVuaworMTI2NzEgYmEyNWIyZDNkNzg0ZDdkN2U1NjNjNTdjMDdkMWU0MGY0Zjg5ZDE5ZSBsZWdhY3ktdHJ1bmsKKzEyNjcyIDdjZjk3NjU4Y2FlN2UzNmYzOTYzNTQzMDY3NThhOTYwNGU3MjEyOTQgbGVnYWN5LXRydW5rCisxMjY3MyA3M2U1ZTNmNTFiODc0ZmM5NzM5YjAyYWMyNjM3YTAzYjc1NTYxMDNlIGxlZ2FjeS10cnVuaworMTI2NzQgOTY1NTBiNWQwOWUxNGMyZDY4ZjViYjcwMTU3NzUzYTUxMjIwNDczNCBsZWdhY3ktdHJ1bmsKKzEyNjc1IDZhMWNiNmYzN2E1MmM1YjcwYzQzZWNiZTViYzMwM2FjZWY3NzhlM2IgbGVnYWN5LXRydW5rCisxMjY3NiA3NDRkYjg2ZTAzMTFhZmRmNjYzNjRkMDEzODk0NjZiNjEzYzY5MGNmIGxlZ2FjeS10cnVuaworMTI2NzcgNDlkNzc2ZjM4NzhkOGRkNTA0NTdhYzY1NzE1NWRkMzE1NmYwNzQyMyBsZWdhY3ktdHJ1bmsKKzEyNjc4IGE3OWRjZDI3YmRjM2E2YjVmOWZhOTA4MzM2NDEwZDk0ZDFmNTJhNmUgbGVnYWN5LXRydW5rCisxMjY3OSAzNWY5MWNhZWFhOGRhMzc1NDczZjg0NjY3YWFjMzk4NTMxNDBiMDYyIGxlZ2FjeS10cnVuaworMTI2ODAgZjBhNTdjY2YyMzNjYjM1NmQ5N2UzNTEyMjkyODg2MDI1MWFiY2M1NiBsZWdhY3ktdHJ1bmsKKzEyNjgxIDA0Yjg4MDQyYTkyYjhmYzJkYzg1YjBhZWVkYmRkYTg2MzRhMTQxMTYgbGVnYWN5LXRydW5rCisxMjY4MiAwMDViYTQxMmE4ZWNiNTJhNDA2OTUwMmM2YWI5ZGNlMzJjNmI1OWI1IGxlZ2FjeS10cnVuaworMTI2ODMgYjg5MzJhYjQxYWRkNGYyMDFjZjkzYjBiZTdmN2Q5MDY3MGJkZjU5ZSBsZWdhY3ktdHJ1bmsKKzEyNjg0IDU1MzlhZWJmODkzOGE4NjQ1OWQxY2U2NWQxODExM2Q1NWMwMmM2NGIgbGVnYWN5LXRydW5rCisxMjY4NSA2ZGJjZDVhNmU1ZTYxOGI3NTFiMWJhZDM1ZDNkZjZhMzY4YjUyN2QxIGxlZ2FjeS10cnVuaworMTI2ODYgZDg2NDAwNTAwYWEwMzczMTUzNWFlMzdhZjhlYjk1MTdjZmFkOWY0YyBsZWdhY3ktdHJ1bmsKKzEyNjg3IGIyNmUyNTE1ODkyMmVmN2QyMzJlN2MwYzFhZDM1ZmM0YTI5ZTIzMmUgbGVnYWN5LXRydW5rCisxMjY4OCA2MmU2MTA1ODQ4MGEzOTkzMmZkMjRiYTdjM2RiMDhmOGFhNjc3YzA3IGxlZ2FjeS10cnVuaworMTI2ODkgZWUxZDMyZjdhMDU1ZjBiOGQxYjU3ODc4NjNjZTQwMjIzOTdiOWFmMSBsZWdhY3ktdHJ1bmsKKzEyNjkwIDY2MzNjM2ZjYTYyNjNmMzZlYTYxMGJkYTc0MTVhNTdmMzc5MjU2MjkgbGVnYWN5LXRydW5rCisxMjY5MSBiZDMwZDM5Nzk3YTQwOWViZDNiZGFhNjBhYjBlMmU1OGRlM2M0NWZlIGxlZ2FjeS10cnVuaworMTI2OTIgOGY0YWQxNGMzNDA3M2NjOGVjMTQ3NWNkMzA1ZjFmYjgxYjE4NGIxOCBsZWdhY3ktdHJ1bmsKKzEyNjkzIGIwZjA0YjdjOTQwNzFlNzJkOGE5NjFjZDMyNTE2OGMwNDE1NWQxOWEgbGVnYWN5LXRydW5rCisxMjY5NCA0YWY4NGNkY2ZkYjUzZDIwOWI0NmFjMzQzN2MzMzQxNWJhNzMzY2ZjIGxlZ2FjeS10cnVuaworMTI2OTUgNjdmMWQ2YmQ1OGNmYmExMDkzM2VkNTQ4NWRmNjljYjMxMGJmOTMxOSBsZWdhY3ktdHJ1bmsKKzEyNjk2IDFkOTQyNDhmZTJiOTlhMjk5ZTQwMmM0NjRiYTYyNWEyODM1OTQ1ZjIgbGVnYWN5LXRydW5rCisxMjY5NyBhMzY5ODY1NjlhZjE4ZDY4NDFkOTYxNjY1ZmQ3YmM4Mjk0MTQ1NTdjIGxlZ2FjeS10cnVuaworMTI2OTggMWUwZGQyZWYzOTcxYzJhY2IwZDA3NTdlMTRhZThlNDVhY2Q1Y2U0NyBsZWdhY3ktdHJ1bmsKKzEyNjk5IGRlN2MwMDAzNTc4ZjhhYTZlMjlmYWQ3MGE3OGFmYWZhMjI5MzE4MzAgbGVnYWN5LXRydW5rCisxMjcwMCBiNWYwN2E0YTY1NGJmMDcxYzE1Y2NiODM2OTRmNTFmNGMzZmQ2MmFkIGxlZ2FjeS10cnVuaworMTI3MDEgMjc5MDI1NTVmNjcyMWRkM2EwMjExYmUyZjQ2Y2EzYmQ4NWE2MDgzNiBsZWdhY3ktdHJ1bmsKKzEyNzAyIDA0OWM5MTM0M2Y5NTg4YWY1MDQxOWRlZjUzNzZmZTU5NjhhODhiOTggbGVnYWN5LXRydW5rCisxMjcwMyBjMGY2OWNiZTgwNWQxN2U2YTk0M2VkYTQxZGQzYmMyZTUzYTcwYjhlIGxlZ2FjeS10cnVuaworMTI3MDQgZTFkYTI5MGFjYzVmMTBlZGQwMzlhN2M5YmU1ODNkMDNmYWRlNWE3ZCBsZWdhY3ktdHJ1bmsKKzEyNzA1IGRmZGZmODcyNDg4NzVkZjU2YTQxYTNkYzJmZGZjNDZiMjIwMDFmNjEgbGVnYWN5LXRydW5rCisxMjcwNiBiZjQxODQwYzgxNTA3MjJhYTBiOGI4YWI2OWNjZjJiYjNjNmMxOTUwIGxlZ2FjeS10cnVuaworMTI3MDcgMWM1OWE5OWU5OTcwZjA2OTUzNDQ5NTkyNGFiNGZlMzg3ZjE2OGEzZSBsZWdhY3ktdHJ1bmsKKzEyNzA4IDAyYjE3MmE1ZDg5M2Q3YTcxMWNhODYzMGE1MDJjY2RmODlhZGFjMjcgbGVnYWN5LXRydW5rCisxMjcwOSAyOWQxZDNiMDhjYTdkNGY1OTZlMzE0YWI4MTlkNWQ2OGFhZTY3OTYwIGxlZ2FjeS10cnVuaworMTI3MTAgYTg2ZmUxZjNjZjRlNjViMzc1MjZjOWE4YWVmOWJkOTRlODg4MWVlZSBsZWdhY3ktdHJ1bmsKKzEyNzExIGQyODIyNzRmYmI3MjJmZDg1NWM3OTFmNzEyMTRmNzIzNjE5ZGViYmMgbGVnYWN5LXRydW5rCisxMjcxMiBiMWQ0MGZiMTBhZjZjYmQ5ZGU1ODVhZjY4MTUyNzQwYzVhOTA4YTFkIGxlZ2FjeS10cnVuaworMTI3MTMgMzJiNDNlNWQ4OGQzNTgxZGE2MDIxMTk5Njg1YWMzNWQwZGU0OWE3ZiBsZWdhY3ktdHJ1bmsKKzEyNzE0IGUzMzk3YWU4ODEyOTIxZTg1NjM0MjQ2OWNhYTIxZjUyYTBlMjgyZjggbGVnYWN5LXRydW5rCisxMjcxNSAwMmUxMzNlYWJhYzY5NmRmNmE3YmJhMDE4OGMyNGRjNDYzMjZhZjljIGxlZ2FjeS10cnVuaworMTI3MTYgMWZiYzRiYWUyOGNmMDU4NzE3NGIxZDc3ZDZkOTBiZDYxOTc4MDI2ZSBsZWdhY3ktdHJ1bmsKKzEyNzE3IGQxNjg2Y2YwOGQxMTZjNzE3ZTVmMzY4M2JlNmJjMmZiOThiZDQyZTggbGVnYWN5LXRydW5rCisxMjcxOCA2MWVkZDNiODVkNjM2OWQyY2FjNzQ3ZGRiMjlmMTQ3MzdkYjcwM2M0IGxlZ2FjeS10cnVuaworMTI3MTkgY2Q0NzY0NDJlZjcxNWI2MjRlNjk5MWQxNGM5M2Q1ZWQ1MzAwOWZiYyBsZWdhY3ktdHJ1bmsKKzEyNzIwIDQ3N2U5ODEwOWM3ZDY2MTUxODgwZmIyY2MzMzViODcxOWM0MzVkZDIgbGVnYWN5LXRydW5rCisxMjcyMSBhMjkxOTJmMmQ0N2FmY2Y2NDMzMDg1Nzc5YTM5Njk4YWVjNmJmZTQ2IGxlZ2FjeS10cnVuaworMTI3MjIgMGVmMTA3MWNiN2ZlZWQ5MTczNTc3YmVmOTU5NmMwOWNiOWIyMzAwMiBsZWdhY3ktdHJ1bmsKKzEyNzIzIGZlYjQxNTAwODc2NWU0M2VlNjkxMjQyNTllZDhkOTNhNjMwNGRjMDQgbGVnYWN5LXRydW5rCisxMjcyNCBiMzAwNzdjNTczNDg1NDJiZDYxZTZkODFmNjFkZWU0ZmMyNGI5NzcyIGxlZ2FjeS10cnVuaworMTI3MjUgNTUzZWQ2YWU5ZTdhODVmYTRmODg2ZTJjZWNkZDlmNWE3OTk5MTYzYiBsZWdhY3ktdHJ1bmsKKzEyNzI2IGRmNGE5NjdhODE0NjJlYmQyZmMxZmRiOGE2NTAxOTRjNDBkNWE5OGQgbGVnYWN5LXRydW5rCisxMjcyNyA3YmJlNzE2MzFjM2YwMjg4M2JlMzZlNjFhODg1Y2QwMTJlYmU4ZDUxIGxlZ2FjeS10cnVuaworMTI3MjggY2QxMzBjOTU1OGRiMzhiNmVlNjA5YzA4NGRiZjhkODM3YjBlZDQ0NyBsZWdhY3ktdHJ1bmsKKzEyNzI5IGFlNjEzNTI5NzU3NDJmYjkwNjM5MDIzY2FhY2Y5YjJkZDE4ODA2MzUgbGVnYWN5LXRydW5rCisxMjcyOSA4ZmU3ZWM0YjRmYzE1MThmY2FjODllNmJmNjc0ZmJiY2UxNjE1MGE5IGxlZ2FjeS10cnVuaworMTI3MzEgY2U1N2ViMzA5NjhhNWI4OTJjOGQxNzdjYTA4ZTUxZjhhN2ZmZWJjNSBsZWdhY3ktdHJ1bmsKKzEyNzMyIDBlMTQ3YTUxNzRhMTUyMTllMTVkYjZlYzM3NTBmNmIwMTg5ODZkYjIgbGVnYWN5LXRydW5rCisxMjczMyBhNjVmODc1ODQzNTRhZTY2YTIyNGYwNmU3MDVlMzJjYzJkYjMxOTU3IGxlZ2FjeS10cnVuaworMTI3MzQgOGNjY2ZjNmQ2MjcyMzY3NGFiM2ZjNDhmMzYzZmRhOGZhZmU2NDIxYyBsZWdhY3ktdHJ1bmsKKzEyNzM1IDI0OWQ5YTJiNWJjOTY4ZGY0OTI5YTFmZjg1ZmQ1ZjMzNmFlYjY2ZTQgbGVnYWN5LXRydW5rCisxMjczNiA5MmZjZTQxNGYzODIzMDhkNGM2ZDQxMmY1MGVhZmEyNzYyMTIxMTRmIGxlZ2FjeS10cnVuaworMTI3MzcgNTc0NGE2ZGIyZDRmODQxOTU1MDYyNTA1NjVmYjdlZDdjNzVkNTRlNiBsZWdhY3ktdHJ1bmsKKzEyNzM4IGM1ZTgzNDdlYjgwOWMyOGM1NTIxMjNjNTRlNTQ2MzM5MTE0MjFhN2UgbGVnYWN5LXRydW5rCisxMjczOSBmMWNjYmQ2YTk0Y2UzMzNkMmM0ZjEzZjQ3Njg0MWNiOGUxNjZjY2U4IGxlZ2FjeS10cnVuaworMTI3NDAgODY2NDJiN2E3YTYwZjU4NDg4MDVjNTY0ODEyYmMxZTk5NTc1NTcwZSBsZWdhY3ktdHJ1bmsKKzEyNzQxIGMxYmVmZGJkNjRlNTcyMjllNTBjNTY1NTk1Njg1ZTk2OTcwZTI1YWYgbGVnYWN5LXRydW5rCisxMjc0MiAzNTkyNDRmYTZiNTJhYjBlYmJhZjljZjAzMTc2NjUwZThiMGJlYTYwIGxlZ2FjeS10cnVuaworMTI3NDMgZjEzOGJhNzJiZjJkOWYyZTNlOGUxODBlMzk1YzJmN2ZjYTcyZWY3YSBsZWdhY3ktdHJ1bmsKKzEyNzQ0IGI2YjkzMDA2ZDA3Njg0MDA2NzMzMzAzZmI0ZjA4MTNhYzI4NzZkMDkgbGVnYWN5LXRydW5rCisxMjc0NSA1NzVjNGVhMjU0MmJjMGUyZjQ0YjYzYWFjMGFkMTJmOGIyOTUwZmU3IGxlZ2FjeS10cnVuaworMTI3NDcgMzJjNDIwNDc0MmJhZmQ2ZDNjNjIyOWFjYTFjYzM2ZWRiMjQ5MThjYyBsZWdhY3ktdHJ1bmsKKzEyNzQ4IGJkYmZlMGVjOTcwZjg5MmQ2YmI4MjBhNTMwYzVjNWM5MjcxYmM5MmMgbGVnYWN5LXRydW5rCisxMjc0OSBjNWYxMWM1YmY1YjIyMDA2MTQ4MWFjMmFlZTQ5MGY0MzcyYzMwMmQ5IGxlZ2FjeS10cnVuaworMTI3NTAgMWEyYTBhM2U5ZGRiMmUxMjJmY2ZiMTlmMTQ3ODg3YzU5ODMxMjAzNiBsZWdhY3ktdHJ1bmsKKzEyNzUxIDg5NWQ4NjFhMDg3MDFmY2RjOGJiZTJhOWI1NDRjNzFjOGY0YzBjYWYgbGVnYWN5LXRydW5rCisxMjc1MiBlNTljYTVkMzQ2ZjRkZjJjODQ0NmMzYzJhMDIxNWMzYjg3MTUwYWJiIGxlZ2FjeS10cnVuaworMTI3NTMgNDdjMTFlODI3Njk5OWYwMDc4YzA3MWRlMmI5ODM4M2M3NzAyZjk1NiBsZWdhY3ktdHJ1bmsKKzEyNzU0IGQ4MzkzNWQxNDA4NDU2N2Y4ZWE0OWQ2NDhkODM1NjdiMGU2ZGMzZjEgbGVnYWN5LXRydW5rCisxMjc1NSBjMjdjMTBjNmI5ZjI4Mjc0MDFkOGQwM2FlYzgxNDFiNGY3ODdiYmVhIGxlZ2FjeS10cnVuaworMTI3NTYgMTNiNDVjNzRlOTdiNTMwNjYyMjYxYjJkYTM3ZTlhYjVkMzJiNTllMiBsZWdhY3ktdHJ1bmsKKzEyNzU3IDhmZWIyOTUwZGE3YjI2MzIzOGZhMmI0MGZiNDY0ZDljNGUwN2NjODYgbGVnYWN5LXRydW5rCisxMjc1OCAwNjE0ZTdmMTY3NDFmMmExNTg4ZTI0ZDRlMjkwYzQwYTBlNjdiM2U5IGxlZ2FjeS10cnVuaworMTI3NTkgYTQ5MTNiYWU5ZjkzZTdmNDEwMDAwOTgyNTY1OGU2MjdkMjMzYmJjZCBsZWdhY3ktdHJ1bmsKKzEyNzYwIDBjYjhlNWVhODRhOGRhYWMwZTk1ZDQ0NDY5N2NhOTZhOTAyYTZmZTYgbGVnYWN5LXRydW5rCisxMjc2MSAxNjNmZDNkOTVjMTdlNDA0ODIyNGExYzg5MjExZWY4NzFhNDEwZDVjIGxlZ2FjeS10cnVuaworMTI3NjIgMGE1Y2RkN2U1ZmMzZjg1MGE2YmRjMTllZDJkNWM0MzQ2ZTZjODhkOCBsZWdhY3ktdHJ1bmsKKzEyNzYzIDI2YTAyMDYwYmFiMTc0MTZjZjgyNGM3NWY1ZGQ1YWFmOWYzMzU1NDEgbGVnYWN5LXRydW5rCisxMjc2NCBiNjRmMzM1OTRhMzExMDY5OGYwZWJkYzdjYzU0YmM1Y2NmMWM3N2QwIGxlZ2FjeS10cnVuaworMTI3NjUgZTgzZjY3NmQxNWMyODljZWI2ZDdjOTAzYjU1Y2YwYWI0MjFkYTBmOCBsZWdhY3ktdHJ1bmsKKzEyNzY2IDI5NzAxZTI5MDRhYzU0OTcwOTlmZDA0M2QwMzE2MDVmZDNmMTNkMTIgbGVnYWN5LXRydW5rCisxMjc2NyBiOWJiNzVkZWQ4MDRhY2E1N2JlOTYzYWYyZGNkZDQ4NTZhYzkyZjUzIGxlZ2FjeS10cnVuaworMTI3NjggNDg3MDBmOTljNmE2ZDMxZDUyMmQxYzc0ZDNhMTBmMzUyMmUzM2ZkZiBsZWdhY3ktdHJ1bmsKKzEyNzY5IDJmNDI1YTU3ZDlhZmU3MWVmNDRlZGVmOWU5MTAzMDgzYThiMGE5ODMgbGVnYWN5LXRydW5rCisxMjc3MCBhYmFjN2Y2Mjc1N2M4MzExOGY1ZjNmZGNiNWU4MDc5YmQwZWM2YTg5IGxlZ2FjeS10cnVuaworMTI3NzEgMzVkZjRkYzJkMzBkNTQzNjJkNWEyOTE3OGFhYzg4MTVmZGU1YmIxMyBsZWdhY3ktdHJ1bmsKKzEyNzcyIDBlMzU1ZGZkNmY3ZDE1Y2MzMmRmMjcyODA2NGYxYWE2NmM0MjNhYTMgbGVnYWN5LXRydW5rCisxMjc3MyA2NGJjYTNiY2FhMzc0ZjE3NjUwYTE0MjIyZDY4ZDEyNzkyOTQyN2FmIGxlZ2FjeS10cnVuaworMTI3NzQgNjVhMjUzOTcxZWNjZTg2NjUzZTUwMzAwODBjYmZkZTU1Nzc4YWY5YSBsZWdhY3ktdHJ1bmsKKzEyNzc1IGEyYTc2ODFiMjVmMWY1OWJlY2VjYTU4NWUwZmJlMWEzOTNlMjg3ZDggbGVnYWN5LXRydW5rCisxMjc3NiAwOGVhZGM2NTBlZjA5NWM3YTVlZDZmYmFlM2ZlODVkYjliMDM5NGM2IGxlZ2FjeS10cnVuaworMTI3NzcgMTlkNjEyMWZlNGYzNDNjNDYzYmQ0Y2MzOGFkMWM0ZjY3MjA1YTlhYiBsZWdhY3ktdHJ1bmsKKzEyNzc4IDYzMmJkM2E1ZGRlZjViZGQwNWMxOTNhZjU1OTM4YmI3MThhYzIzYmIgbGVnYWN5LXRydW5rCisxMjc3OSBiYTVjNjI5MDgxMjI1YTJhOTNlZWM2Yjc5OWJkY2QyNjM3ODJlYWU4IGxlZ2FjeS10cnVuaworMTI3ODAgODYwMzVhZTUzMDZjMTE3YWY3ZGZkZDI5NTM2NmU1M2Q4YjIwMzk3MiBsZWdhY3ktdHJ1bmsKKzEyNzgxIDQ2YWMxMWI3OGU5Mjc4MDU2YWE5NmU3OTZkYWU3ZmQ4MmViOGMzMDcgbGVnYWN5LXRydW5rCisxMjc4MiA4ODZlYTI1NWYzODFmZjBjNmRiNzBlMjc5MTIyMmIyZWI3MjE4OGMyIGxlZ2FjeS10cnVuaworMTI3ODMgY2M5ZmQ1MDYzMGE2OTljYjAzYzJhZjBiMzI0ZjBiNzQ4MzIxOTFmZiBsZWdhY3ktdHJ1bmsKKzEyNzg0IGNlZjJhMTM0NTY5NWQxOGY4MjEzMGQ2MWQ1NjI2MzZjYzgxZDNkNmUgbGVnYWN5LXRydW5rCisxMjc4NSAwMWRhZmM1NzFhMzAzMjg1MTg2OGMxNTA1ZDdmZmJiODFjODExMjg3IGxlZ2FjeS10cnVuaworMTI3ODYgZDNiZWNlNDY0ODZlMjlkN2EyYzVhNjJmOWZiYzFjNTExZjM5ZGQzYiBsZWdhY3ktdHJ1bmsKKzEyNzg3IDA2ZGEzYmEzYWFkZTJlNDdlZjcyYmM4ZTY1MmE4YmEwNGMyYjNlM2MgbGVnYWN5LXRydW5rCisxMjc4OCBjZDRjNDUxMGFkYmQ0N2U5ODUzMTlkZjFjMDcwY2YxYzU0OGM0NjkwIGxlZ2FjeS10cnVuaworMTI3ODkgM2I4MWE3ZDQxOGNiZWU4ODQ3NjMwMjY4NzVjZTk5ZWJiMzg3ODRjZCBsZWdhY3ktdHJ1bmsKKzEyNzkwIDNlM2MwOWUxNDUwMzFkNDAzOWI4OGM5YWVmZGI3N2IwYzg3MmI2MTAgbGVnYWN5LXRydW5rCisxMjc5MSA1YzBjMDYxZGUyYWViYTZmOGVkNGVjZWQ2MTM1N2ZmNDA3ZGZjMWJiIGxlZ2FjeS10cnVuaworMTI3OTIgMWU3NjZkZTcxNGRlYmIwZDM3MTgyZTU4MTY4MTg4M2FmNjAxYTM3MiBsZWdhY3ktdHJ1bmsKKzEyNzkzIDVjYzcxMjI2NzFhZWFmYThlMzEwMzc2NzRkMjNkMjk2MTk5OGUyNjkgbGVnYWN5LXRydW5rCisxMjc5NCA5YmUyNzI2YzliMjU0Y2Q4YWRhNmExZTdlYTFjMTY1ZmFjMGU5ZTU5IGxlZ2FjeS10cnVuaworMTI3OTUgMWM2YjEwZGVhOWYwNWY4NTY0N2UwYWNhZGI5MzAxNmQzMTMwNTg0MSBsZWdhY3ktdHJ1bmsKKzEyNzk2IDI2ZGIxZTk2Y2FmMzk0NjlmZTk4YTc4ZTZjNjU2OWY3YWFiZTU5MWIgbGVnYWN5LXRydW5rCisxMjc5NyBiNzgxMzViMTBhOGUxZTZiZjMwYzk1NDc3MGM4ODViNDk3YWRjNGQ5IGxlZ2FjeS10cnVuaworMTI3OTggMjRkZWY2YzI1YjBhMDUwYWVlMWZiZWQwZTMzN2Y3NzI1ODAzZGIzMyBsZWdhY3ktdHJ1bmsKKzEyNzk5IDUwMDM2ZDA2ZTk0YWE4NDBkZmY1NDZiYjQ5ZDVkMTlhOGZiMmNiOTYgbGVnYWN5LXRydW5rCisxMjgwMCAzMjQxMWFmOGMwMTI5NzYwMzZiMzFhMDlhMDY4NjlhNDA5NTFjYzNhIGxlZ2FjeS10cnVuaworMTI4MDEgY2MwYzkwNmMyNDE1NjY4ZDMxNTJjM2RlNjM2NTQxMjZmMjZlZmUyMiBsZWdhY3ktdHJ1bmsKKzEyODAyIGE5NWM3ZDJhODNmN2QwMTUxYTA0MWQ4NTgxNzExY2I3YmQ3OTRkZWYgbGVnYWN5LXRydW5rCisxMjgwMyBmZDA5YjNmZDFlZGM0ZGE0Zjk4ZDM3NzE3NmUxYjc3NDRkODA1MmQ3IGxlZ2FjeS10cnVuaworMTI4MDQgNWU4OTg5YzJmODVkZmRmYWVmOTk3MjVkY2NlZmZiNmNiNzJiYzY5OSBsZWdhY3ktdHJ1bmsKKzEyODA1IDg4YTdkODU5OTAwZTNhMTM3N2U4MzJlMDQzZmU5OTJhMTYyMWIxYzYgbGVnYWN5LXRydW5rCisxMjgwNiBmMWY2MzY0YWRkYmRlZGMxOTk0ZGVmMDFjYjU5MWQ1YWZkNTFmMjA4IGxlZ2FjeS10cnVuaworMTI4MDcgYjY0OGY5ZThiM2VkYTI5ZmExMjVjNWE3YmJmMmY1Njg5Mzc1NTg2YyBsZWdhY3ktdHJ1bmsKKzEyODA4IDVkYmNkZGJkZWQwMGIyZDhlODAwYTc4NGI2ZDFmMjM4YmRkNDMxNzkgbGVnYWN5LXRydW5rCisxMjgwOSA0MmM5YThkMTA4MzQ0ZjE3NTgyN2E1NzFjNTNmZjAzMmY2ZDM1ZjAyIGxlZ2FjeS10cnVuaworMTI4MTAgZTdjMDlhNjJiZjFmMWE2MjI2YWY0Yzg0ZWZiMGRhMjNjYzU0ZjJhOCBsZWdhY3ktdHJ1bmsKKzEyODExIGUzMDg5Mzk2MTM5ODI3ZjcyMzM3Mjk3NGQ2NzE2YTRhMjI1MGJmZTMgbGVnYWN5LXRydW5rCisxMjgxMiBkYjMyZGViMTNjOWYwNmUwOWZjNzFhZWNlODZlYTdmN2U3ZmIyOTQxIGxlZ2FjeS10cnVuaworMTI4MTMgYTRkOTk2MDczNDRmMDc4Yjg2YjQ2YzFmYjliNzU5ODk4ZDJhZTBiNSBsZWdhY3ktdHJ1bmsKKzEyODE0IGNkYWU2YzExNDVmNGMzYjhlNzIwZjBjZGE4ZmQxNmRiZTU0MDdjMGMgbGVnYWN5LXRydW5rCisxMjgxNSAxZTU3YWVlNTA1NjU0ZWVlYzVhNzk1MTJjMjVlNzVmNTk2ODAzM2ViIGxlZ2FjeS10cnVuaworMTI4MTYgZmExOGIwZmMwYzE4MWU0M2U5OWFmNmI3ZTJlMDcxYTA4YTFhZTJmOCBsZWdhY3ktdHJ1bmsKKzEyODE3IDkwYzc1MmFlNDRhNmI5MWY5NDg4MzA1MWJlNTIyNGNhODFjODk4ZGQgbGVnYWN5LXRydW5rCisxMjgxOCA0NGEzNzVlMzFhZTJmZTdkODBjZGNkODMzMzhlYjliMmQ5ZWRkNmJhIGxlZ2FjeS10cnVuaworMTI4MTkgNDQ2YjA5NjdmN2Q5NjljZjA2MDBmMTMzYzk5MzIzYjhlMWU0N2IwNSBsZWdhY3ktdHJ1bmsKKzEyODIwIDM5YmQ3Yjg0NzhkYjM1Y2RlODJkYjFhNjY3YTVlOWRmNGMxYzQ1YTEgbGVnYWN5LXRydW5rCisxMjgyMSA0ZGQ3NjhhZTg5NWU2NGNjODEwZWU1MTY1ZGZjZDkzZDZiNTI1MTQ3IGxlZ2FjeS10cnVuaworMTI4MjIgOTAwMmY0YjQ3MDAwYTNmYzdjMzE4NGU2NmE0MmMyYzNmMmFlNDRlYSBsZWdhY3ktdHJ1bmsKKzEyODIzIGU5MzVkODk0N2UzMzk2ZThkMDdhMDczMzU5NmFhN2FmNDk1MmE2ZTAgbGVnYWN5LXRydW5rCisxMjgyNCBiZDA3Njc0YzNjOGIwNzRlZjg0OGE5MGVkZTNkOTk4M2NlMzY0YTRhIGxlZ2FjeS10cnVuaworMTI4MjUgYTg3Y2ZlYTMwYjA0ZDgwYTM3NjRiZGNlZGUzZjg3NTI1MmI3NDIzNyBsZWdhY3ktdHJ1bmsKKzEyODI2IGZlZDY2YmRkY2U2MzgxZWIzNDhkYjM3OWMyNDljYTY1NTVlMjI1NDUgbGVnYWN5LXRydW5rCisxMjgyNyAwZDBlMjIzOWRmZDhjMDY4NThiNDhlM2ZjMWQ0NGNhZTc3OTQxMjkzIGxlZ2FjeS10cnVuaworMTI4MjggNGEzZTYzOTM4NDY5NDExMWU5MWQ1ZTI1YmMyOTE5ZjdiZGE4OGJmMCBsZWdhY3ktdHJ1bmsKKzEyODI5IDRjNGYzNjJmYTBhNmFkODUyMDQ3ZTUwODMyNDMwMmU3ODY5NGNjOTQgbGVnYWN5LXRydW5rCisxMjgzMCA2NmE3ZDYxY2ZkODRhM2RkYTlkMjUxY2IwMWYyYzBhZDJhYjYyYWRhIGxlZ2FjeS10cnVuaworMTI4MzEgZjQzOGM2ZTJiNmMxOGU1N2NkOTI0ZDY2NDRmYjkyOWE5OTMzYjg2MCBsZWdhY3ktdHJ1bmsKKzEyODMyIDIwN2I0MGVjOWE3ZTM5MTRiZmFjYzJkMWE2ZGZiM2ZiMDE4YTczN2MgbGVnYWN5LXRydW5rCisxMjgzMyBiZTA1NjA5NDc4YmVmMDQzOTU1YjQzMzRkMmU5ZWMyYjljODdjNTU4IGxlZ2FjeS10cnVuaworMTI4MzQgYWJkNDIwMjlmYTAxMDFkNTQzZmU2MTE1YmQ3MDZmM2YwYjJhZDliMiBsZWdhY3ktdHJ1bmsKKzEyODM1IGZmZjgyZDJmYjM2OWVmZDJlYzA5YTZiZTBmNjlkZDlkYzZkOGZkY2EgbGVnYWN5LXRydW5rCisxMjgzNiBiNmVkZWMxZWZlNjQyNzg1MWJhMTkwODk0YzBmZjg4MjYyMzc0NWNjIGxlZ2FjeS10cnVuaworMTI4MzcgNjEyMjQ0NTliYjA5MzYxYjExZjM0MGI0OWYzYjI4OWUxMDE1M2YzYyBsZWdhY3ktdHJ1bmsKKzEyODM4IDA5M2ZjMjk4YWZkNmIwZTAyZTQxMWE2NDVkMWMxZWNhODdiYjk3NmMgbGVnYWN5LXRydW5rCisxMjgzOSBkZGJmMWFjYjcxNzAyZGQ1MTkzNGVkZmJmNTUyYjZkMzU4ZDJjYmI1IGxlZ2FjeS10cnVuaworMTI4NDAgYThkYzU5YjY2ZjQ5NjZjYWM4M2ZjYTA1YjlhMTE5OWEzNzNjNTllNyBsZWdhY3ktdHJ1bmsKKzEyODQxIDVjNzBlY2RlZGVmYzMzNjQ5YTdjNTViM2UyZWZmMDk1MWU3M2FmZDggbGVnYWN5LXRydW5rCisxMjg0MiA2ZWUwZWNlYjc3NWYyZDIyZTkwMWMwY2FhOGY1NDdjZjBlODgyN2FkIGxlZ2FjeS10cnVuaworMTI4NDMgNjVhZWQ1MjlhZDhhZGFmMzQ2ZDE2ZDNkOWE3N2NkZWUxMjBlNjQxOSBsZWdhY3ktdHJ1bmsKKzEyODQ0IDA4ZDMxOTRhM2MzZmM4ZDY1MjgzMjEwN2VkZDZlNjQzYmZlNDVlZGQgbGVnYWN5LXRydW5rCisxMjg0NSA4ZDA5MmE2NzJkMDliYjE4ZDg1ZjUwMTI5OTAxNzg1MWZhNmM3ZmNiIGxlZ2FjeS10cnVuaworMTI4NDYgYjlhODBiYmJlNGE1YTY4NWIzODVjMmUxZWUwMTNlZTllZjc3ZmQxNCBsZWdhY3ktdHJ1bmsKKzEyODQ3IDZkYjM1ZWU5MGJmYWMwM2U1YzBmY2UzNjBhMWQwY2Y4YTZhNmY5NTMgbGVnYWN5LXRydW5rCisxMjg0OCBkNzM5ZTFlYjYxNzUxYzE5OTVhMjY3Y2QyZDc2NmNiMGE5ZDJkN2EwIGxlZ2FjeS10cnVuaworMTI4NDkgNGUyZDE4OTczYjk0YTAzNzdmMjViMmE4ZGU2ZGQ0ZjAxN2UxNzczMCBsZWdhY3ktdHJ1bmsKKzEyODUwIDFkODU3YjU5NzU4MjM3ODc2MjYyMjM1YjE2ODdkYmZiY2E5ZGFhNDUgbGVnYWN5LXRydW5rCisxMjg1MSA4OTJkYmE3ZjQwZGVlZmVlZWJlOGJhNzVlYzQ3ODFkMjk2YTU3NjQ1IGxlZ2FjeS10cnVuaworMTI4NTIgN2EzOWM4NzNkYzgxODBjOTc0ZjFlMDRhM2M3NmZmY2M5NWJiZmMzYyBsZWdhY3ktdHJ1bmsKKzEyODUzIDY3ZmY5ZTdkYzhhZmY0YTAwZTVkYWUzYjVkMmE0ZGM5OTFkOTVkYTggbGVnYWN5LXRydW5rCisxMjg1NCBhNzk3ZjBjNmMyZTFkZDEzOWMxNDk1NzM2Y2MyM2EzYmQ5YWQ5ZmIxIGxlZ2FjeS10cnVuaworMTI4NTUgZTZkMzRjYzBjNzljOTYyYzM5ZmU2M2FkZWZkODM3NjZjMmY2YmY0NyBsZWdhY3ktdHJ1bmsKKzEyODU2IDZiNTc5MGNlMjUzNmRjNmU0NjEyN2UxZTIxMDdlYTk1ODA1NjY4MTIgbGVnYWN5LXRydW5rCisxMjg1NyA1MGQzMDk5ZDUwYzIxZDNjNzg2ZTBmOTY4MWY1MmZiYzNmMzFjM2Q0IGxlZ2FjeS10cnVuaworMTI4NTggNDA3MDIyY2YxOTMxYzE1ODc0MGU5ZWEzZGU1N2NhNzlkNzVlMjJmZSBsZWdhY3ktdHJ1bmsKKzEyODU5IDg5MjNhZDdlMTNmMmIwMTU5ZWRlMWFiMDM2Y2NhOTM3ZmFkZjY5YjMgbGVnYWN5LXRydW5rCisxMjg2MCBlOThlMWVhNTFmMTYyNmQ1ZTZmNGQ1ODk2ZTE2YzNkYjEzMjI1NjZhIGxlZ2FjeS10cnVuaworMTI4NjEgZGEwYzEzMzBlNjZlZjJjZDBmYzA1OTMwZWM5NWM1YjIxMWNmMDE1ZiBsZWdhY3ktdHJ1bmsKKzEyODYyIDcwYTNmYjFjZTIzYjQxY2I4MjYwZTA5MjkyMWE5MzJkODE2ZDg3MzUgbGVnYWN5LXRydW5rCisxMjg2MyBlYTBiYmMzYmYxZGZhNjE4YjRjYWExOWUzMDA3YTY2OWY0ZjA0ZjdiIGxlZ2FjeS10cnVuaworMTI4NjQgNTBlNGRkZGI4MjhiMjA3MTJlNTk0OTI5ODg0OTU5OWRiOTVhYzJjYiBsZWdhY3ktdHJ1bmsKKzEyODY1IDE0MDllNzY4N2E5YTAzYjI3OGRmYTRiOTc1YjU4MTBkOWYyYTdmMGYgbGVnYWN5LXRydW5rCisxMjg2NiA0ZGFhYjdhOWY1NjZhZDQyMTU1MjQ2OTI2Zjk1ODdkZDRjYjQ0YWViIGxlZ2FjeS10cnVuaworMTI4NjcgZDUxNjRjNjZhY2M5NjNiYmJmZjIwMjA2MmVhZmVkY2U5MGRjNWE4YSBsZWdhY3ktdHJ1bmsKKzEyODY4IDI1ZDdkNGQ3Mzk5ZjEwY2FhYWZmOTA4MzFlYWNlZjI3OWIxMTA1OTcgbGVnYWN5LXRydW5rCisxMjg2OSA2NWU3MjEyZGYxYmNmMWNjMTdhNGM5NmQ5YTI4NGE4NzMyODYyZGRjIGxlZ2FjeS10cnVuaworMTI4NzAgYzVmNDlkNGUyOWM1MDM5ODNlMTI1OGMxNmJlYTRlYzJkYWM1YjhkZSBsZWdhY3ktdHJ1bmsKKzEyODcxIDc5NWQ1MWFkMjI4YTI0MGRkNDY2NDczZWI2YTI4ZGQxM2EzZWFkYzIgbGVnYWN5LXRydW5rCisxMjg3MiAxMzJmOTQ2NDJjNzRkMjg3MjQzNTNkZjNiMGVlNjkyY2EwY2JjODM4IGxlZ2FjeS10cnVuaworMTI4NzMgOTViOTIyNWE1MmU0NWJiMjU2ZGJhZTE1ZjUxMTQxZjY4MjI4YTg4OCBsZWdhY3ktdHJ1bmsKKzEyODc0IDk2OTEzOTA3YWU2OGQ5NDY5YzUxMmQzZjg0OTA2Y2Q4MDA0NzM0ZGEgbGVnYWN5LXRydW5rCisxMjg3NSBmYjdmYTQ3NjIxMWYzNWQxNTljMjExNGMxNGE0Yjc5YjYyOWFhOWU5IGxlZ2FjeS10cnVuaworMTI4NzYgMDdlZTc5NTc3NGQ4OWI0MWJlYjNiZDU3ZmZmN2Q4OTRlYzJkZWE1MyBsZWdhY3ktdHJ1bmsKKzEyODc3IDQ4MTQxZGE1MThkZmE3Y2FjMjlkN2E2ZWE3MTQwMTU0MjViOGI4ZWIgbGVnYWN5LXRydW5rCisxMjg3OCA0MTdhYTQyNTAxM2FkNzNlYTM4MDJmNWYwMzZlYjNjZjk5YWFiMzMyIGxlZ2FjeS10cnVuaworMTI4NzkgMzM3NzMzY2U5NTkzZmIxZWEwNWQ2OTc2YTc5YTQ5ZTAyNjkwMDY0OSBsZWdhY3ktdHJ1bmsKKzEyODgwIDRjYmIyMTIyYzczNThmNDg1MjJhNDExMjNmOWIxZTYzNWUzYWYyZTYgbGVnYWN5LXRydW5rCisxMjg4MSBkOTgwODVkZTk3ZDFmZTg4YTVjYThkMjE4NDk4NjhkNjYwMDhmOTViIGxlZ2FjeS10cnVuaworMTI4ODIgOWU5Njk1ZTMxNGM5NjA3MDM2MjI2Zjk1NjJiNmUzNjJlMzhlNTM4MiBsZWdhY3ktdHJ1bmsKKzEyODgzIDY5ODk4YWNiMjNmMjgxYmQ2OWNhMmVmNzRkZjk1YzQ4ZGViNDM4NjkgbGVnYWN5LXRydW5rCisxMjg4NCBmYjUxYWE4MjRkZjJkNDcyMTdkNDY3ZjFjNGI0YTMyOTFlNGFiNWIxIGxlZ2FjeS10cnVuaworMTI4ODUgZTJhMDhhODFlNTZmNGVlMjg1Njk1ZTIxYTk4ODMzNDg3MDZhYWJlNSBsZWdhY3ktdHJ1bmsKKzEyODg2IDcwZGQ5MWMyMTUxMzRmYWU0ZWRmY2UxODU2ZTc0N2U3ZDFiZDkyMjkgbGVnYWN5LXRydW5rCisxMjg4NyBkM2RjNjIwMDQ3NzZkZjAyZjQzMDcwZDllNWZlMTFjODgyZTY4YWRhIGxlZ2FjeS10cnVuaworMTI4ODggZTkzMzUyMjg2YWFjNmQxOWU4M2Q1NjA3ZGY1MGYxZDg2MTE5MjJhNSBsZWdhY3ktdHJ1bmsKKzEyODg5IGM1ODkwMjFjNDdjOTMzN2VlZjQ3MjUwMjE2NjY3NzdlMmY1ZmE5MGYgbGVnYWN5LXRydW5rCisxMjg5MCA5YzVkOWJkZjdlNDIzNDE5YmRmYmJkYzk4NDk3MzA1YjA0ZDU4MjNlIGxlZ2FjeS10cnVuaworMTI4OTEgZjRlNjA1YmQ4ZjFiNzZiNjYyZjc2ZTAwMzllMTNkZjdmYTk4YTQ3ZiBsZWdhY3ktdHJ1bmsKKzEyODkyIDAxNzNhNWY0NzIwNmRiZTQxZmEyOTNmYjg2YWFjNDVkYzMyYTJmZjUgbGVnYWN5LXRydW5rCisxMjg5MyBmYjgxNjU5NDg5YTE2NjU2NGExZWJhYzhhOGQ0YmJmMWMxOGQ4MGE2IGxlZ2FjeS10cnVuaworMTI4OTQgN2I4MTBhYTM1YjVjZTg2ZGIxODAwMmFkODUwOWExZTE3YjgyMGU0NCBsZWdhY3ktdHJ1bmsKKzEyODk1IGY1NGJhYzVhZjk4Y2EwMTQ3ZDg1ZGFmYzQxN2M3ODYxMDg0MjgwYjIgbGVnYWN5LXRydW5rCisxMjg5NiA3NDllMWIzZDgxNzNhMzA5M2MzNzBiOTIxMmVlMTAwZDVjYzE1M2NhIGxlZ2FjeS10cnVuaworMTI4OTcgNTIyMDY1MzJkMzg5MWEwOTMzYTJhYzlmOWQzMzQ2MGQ4Njg3MjU2YyBsZWdhY3ktdHJ1bmsKKzEyODk4IGYzNDMzMjk1MDBiZTc5YjEyN2Q2MzY4MmQ5Njc2NjdlMjZiYWEyOTcgbGVnYWN5LXRydW5rCisxMjg5OSBjMDY2ZmQ4NDMzYmE4NGVjMDUzZDNlYmE0YjdjMDdiODVmZGJkMmY3IGxlZ2FjeS10cnVuaworMTI5MDAgZGM5YjBkNDE4YzAwOWJiOGQ2OGE0Y2E2M2FiZDExYjU1MDU2Mjk0YiBsZWdhY3ktdHJ1bmsKKzEyOTAxIDdmMTQ3YzRlNDIxOWIxNmQ2ZTM0ZGEzMzQyODY2YTgyMzQ4YjgzMWUgbGVnYWN5LXRydW5rCisxMjkwMiAyYTRjMTc2ZGU2Y2RkM2M4ODkxNzY2ZDMxMDk4YzE4MTY5YTYzZGY1IGxlZ2FjeS10cnVuaworMTI5MDMgOTRhZDkwZmQyNzEyNmZlNWJmNjg4ODk5NWUyNjkxMzYyNmJlZTlhNiBsZWdhY3ktdHJ1bmsKKzEyOTA0IGY4MWRiNzM4YWJkOTJjMjZiMGQ0MTMwZmE3MWE0M2I0ZDExOTk4ZWEgbGVnYWN5LXRydW5rCisxMjkwNSA5ZDRlZmNlMTFmMDliMTU5ODZhMTEwODRhYjJhMjllMzA5YjViYmQ1IGxlZ2FjeS10cnVuaworMTI5MDYgOWM2ZGEzMGFlNjc1ZGNhNWM2OWRlZDcwNTY4NmRhZjg4ZjFhYmMyOSBsZWdhY3ktdHJ1bmsKKzEyOTA3IDgwZDJiOWFmZDE5Y2M1NTQwZjE2MmFjMTlkMGE4Mzc4OTJjNzQ3YjcgbGVnYWN5LXRydW5rCisxMjkwOCAyYzAzOWMwMTA0Mzc3ZTk0NWZlZTIzYzgwNmNjMmFlYmMwZDljMzZlIGxlZ2FjeS10cnVuaworMTI5MDkgMTU5ZjFjM2FmZTI4NGU5ZWM5YWU1MDRkZTczNGFiZTYwY2UxNjFmOCBsZWdhY3ktdHJ1bmsKKzEyOTEwIGNjZWY1YzBlOGRkYzY4Y2U1MTk3MWFjZDk2ZTNhZTI2YjZlODEzOTMgbGVnYWN5LXRydW5rCisxMjkxMSBhMTU0NGZjNDlhNzYzNDU1YTNlMDdjZWY1YzkzNzhiNmUwYTg4YmRjIGxlZ2FjeS10cnVuaworMTI5MTIgMDUwODMyZDgzOGNhNWVmODZmN2E3MWE2NmFlMWY0YjcyYWVjNTI4NCBsZWdhY3ktdHJ1bmsKKzEyOTEzIDk3ODIzMTg0MjY2YTAxOTAyMDBlYjM5Y2NhOTBkMTg2YjBkNjlmYjUgbGVnYWN5LXRydW5rCisxMjkxNCA5OTUyZjE2YmJlOGNlM2U5NzJmMDA1ZTIxMmE0Y2FjZTE0NmE1NjdmIGxlZ2FjeS10cnVuaworMTI5MTUgZTllNjliMDJkMGYwZDEwZmYzYWVmODYzZmQ3MGZjNWY5YmJjNTZiMCBsZWdhY3ktdHJ1bmsKKzEyOTE2IDQzNjNmYjJkNDM0NTAzZjc1MWE4NTY4YzU0ODE4NDU4MTY1OWJmNzcgbGVnYWN5LXRydW5rCisxMjkxNyBhNjMwZTU0ZTk3ZjI5M2JiYjY4MWY4OTQzYjhlMWQ4M2QzMmU4OWFiIGxlZ2FjeS10cnVuaworMTI5MTggNDhmYmM1NWMwNTUzNDE4ODBmOTUxM2YyOWFkMmI4M2NmNWFlOWNhMyBsZWdhY3ktdHJ1bmsKKzEyOTE5IDUyNDM4Yzg3ZmVkY2MyMjZhNjdhYTUyODc2OWNmZDQ1M2FiMGEwZTYgbGVnYWN5LXRydW5rCisxMjkyMCBkYzUwMmNlNzU3NWEyMDcyMTAxNjk0MDZmYWMxNTAyOThlNTIzYTIwIGxlZ2FjeS10cnVuaworMTI5MjEgYjhlNGRlMWMzNWNkYWQ5MDk2ZGEwNTZlNjBjNDNlMTEzNjUyNmI4MyBsZWdhY3ktdHJ1bmsKKzEyOTIyIGNhYmFiMWY1NTk2ZTI4NTI4YjJiMmU5ZDhiYTY0YWJiNzJlN2Q3MmQgbGVnYWN5LXRydW5rCisxMjkyMyA2ZDU4MjcwZGJjZDQzZDQ0OGIxYThkODMxNzQyYWViZDA5MDgwNGQ5IGxlZ2FjeS10cnVuaworMTI5MjQgMGQ2YmQzOTFhY2Q4MzcwOTc1ZTc0OTFmYjRkNTgyNzE5ZDc5ZmI1ZiBsZWdhY3ktdHJ1bmsKKzEyOTI1IGIzNjQ2OTM5ODI2MjY5ZTNlZWE4OWY3MTdlZWQ4YjcxNTlkYzM3YjQgbGVnYWN5LXRydW5rCisxMjkyNiA5YTRiYWYwYzU3ZWExOTQxOWVkZDc5OWZhYjAwMzM4Y2I0YWZkODUyIGxlZ2FjeS10cnVuaworMTI5MjcgNWNjZDNiODZiMWE2MzdmZDMwMmNiN2NlMGIzOTQ1MjFlYjA1Y2RlMCBsZWdhY3ktdHJ1bmsKKzEyOTI4IDRlOGRlZmVjMDlmODUwNDA3NWM5ZjA2MDAzMTRlYWQ3M2E3ZjM0MzYgbGVnYWN5LXRydW5rCisxMjkyOSBjMTc2OTY4YmM5MWMxMDkzMjhjNGQ5MzE4MTBlYzZlYzFmZjRjNmJmIGxlZ2FjeS10cnVuaworMTI5MzAgZTY3OTlhODU1YWY3OGM1NDdkNGU4YzJkOGU5MzkxZDFiMjQ3MWQ5NyBsZWdhY3ktdHJ1bmsKKzEyOTMxIDM1NzFiNGMxYmMwZTNkMzdjZGRmNzkxNWVmNWNiYzNjOGM3ZWQwOTcgbGVnYWN5LXRydW5rCisxMjkzMiBmOWFkMTQ4Yzk4MGNjZTBiZjcyZmQ5ZTU0OTBkNTVmNTRmODkyMTYwIGxlZ2FjeS10cnVuaworMTI5MzMgZDU5MmZlNWUwOWQ1NzRkMGRmMzU3ZDU2NWE3ZWE0ZDk3YTJhOTdlNSBsZWdhY3ktdHJ1bmsKKzEyOTM0IDA3ODllMGI1NTU4N2JiMjE4MWYzZWNkNmZlMGNiZTY1YmYwODNiNjAgbGVnYWN5LXRydW5rCisxMjkzNSAxY2M1ZDIwZDJlZDg0Mjk2ODFkNWI5NjQ0N2IxMDk1YWE1ZGRjZDljIGxlZ2FjeS10cnVuaworMTI5MzYgMmFiMGVjODQ3MTg0NzY3YzM4MzBjN2YyMzE0ZWM5NWU5NWQzNmEwYiBsZWdhY3ktdHJ1bmsKKzEyOTM3IGE0NzY4MzE1OTQ4ZGMzMTA3Y2QwZmE4YzFkZmExMDRiNGE0NzAzNjEgbGVnYWN5LXRydW5rCisxMjkzOCAzMjQ0NTBlYTU0NTAyYjg5MzYyMjIwNzkxMTZhMGI5N2JlYWVjZGIwIGxlZ2FjeS10cnVuaworMTI5MzkgN2QzYTYwZjRlMGI0NzM0NmVlYTAxYWFlMDY2NTY3MjYwMTMxYjRjOSBsZWdhY3ktdHJ1bmsKKzEyOTQwIDNiYzhmNTMwNDFjMDE1YmRhZjQ4MTU4NjJjZGM2YzU2M2Q0YTg4NjMgbGVnYWN5LXRydW5rCisxMjk0MSBlZTZmYTliODY4ODU0YWMxMzA3NGIxYjE2MGE2YmVlZjcxZmUyZmU3IGxlZ2FjeS10cnVuaworMTI5NDIgOWNlMTQ3NGFiZGRkN2MzNjlkODRkMjZiMTBkZDQzMmUwNmNhMWM2YiBsZWdhY3ktdHJ1bmsKKzEyOTQzIGI5NDE0NGRlMmYzMmI1M2UyZmQ1MTgyNWJkYTkyMDAxMzg5ZGE2ZDIgbGVnYWN5LXRydW5rCisxMjk0NCA5YmE1ZGZmY2NiMWJkYjQzNjM2MjcxOGUyYmJjMjhlZjIxYjBhMzQ4IGxlZ2FjeS10cnVuaworMTI5NDUgOTE4NGM5ZTEwOGY5N2JiNjZjZTEyMzNmOTczOGY5MmRjMmIxZmEyYiBsZWdhY3ktdHJ1bmsKKzEyOTQ2IGYzYTRjNGY0MDQ0Njc4NWU4NTY2ODQ3N2VkMzg0ZjRhYTFiOTEwOWEgbGVnYWN5LXRydW5rCisxMjk0NyAyYTE0OWU5NGVmNGFjMTQ1ZDVkMjFlNjUyMWFjZDc3MTdmMDRhMDYzIGxlZ2FjeS10cnVuaworMTI5NDggMDBjMzdjYjc1YzI4NTQ5ZDA0OTdlYjZmNGJlOGRiMzVlNWQwYzcyNiBsZWdhY3ktdHJ1bmsKKzEyOTQ5IGJmMjZiN2MxZTZkZWMxOWNhN2NhOTkxMDJkYmVkNjA5NzNmYjA2YzIgbGVnYWN5LXRydW5rCisxMjk1MCBkMzc2MjkzM2JmZjg4OWE5MDgzNmRkNTUzMDZkNmNiZmUyMDQwNTM1IGxlZ2FjeS10cnVuaworMTI5NTEgOTdhMDZlYzdjNmY0OWI3MjNiYTU0MjFmNDM0YjRkZjVkYTAwYTdkYSBsZWdhY3ktdHJ1bmsKKzEyOTUyIDdmZWY2MGY4YmM0NTU1ZTYzYjU3Mjk2ZjBkMWUwOGNiMDZiZDdmNTAgbGVnYWN5LXRydW5rCisxMjk1MyA1Y2ZiZDQ4OWE1ZDM0ZDA5ZDllMWY5N2NjNTc0ZjU2YTA3MTk1OTc5IGxlZ2FjeS10cnVuaworMTI5NTQgMmIxZGZjMTM5NTFkZmI2MzBhYTY2ZjZmZDNjMmEyNTY3YjExMzU0YSBsZWdhY3ktdHJ1bmsKKzEyOTU1IGM5ZTEwZWQyNmQ5YWIxMDAwNWViMDZkYzljZmMwNWQ1NThjNTE5OGMgbGVnYWN5LXRydW5rCisxMjk1NiA1YjU0ZmE3NzVlNTUwZWNkOGViMjJmMmJiZjhkZDM5NTYxYmM4MTFiIGxlZ2FjeS10cnVuaworMTI5NTcgZGFkMTRmZmUxYzIyYTA2YjA1ZjU5NmYwMTMxYjAwZmY1NGU3ZDk5YSBsZWdhY3ktdHJ1bmsKKzEyOTU4IDExMTc4YzhkNmJlMmE2YzI5M2E5YmM0NTYwZWRlNDFiMjc1Yjc2YTkgbGVnYWN5LXRydW5rCisxMjk1OSAzZjIxM2E4ZmMwNGUwNmZkZmVhYTFiODcyNWJmYjhlMjBlODljYmY0IGxlZ2FjeS10cnVuaworMTI5NjAgODJhZGM1NGRkMzc3YzQ2NDRmMzRiMGRmOTU5OGYwZjhmODcyMzU3YiBsZWdhY3ktdHJ1bmsKKzEyOTYxIDcwOTEwZTMxMjVhMjc2MzE0MmZiMDhhODk2ODFkZWQ3YjJlODRlZmQgbGVnYWN5LXRydW5rCisxMjk2MiA0YzFiYmVkYWQxNGJlNjNjZDBmNDg1M2Q0NTRlMTkzNWQ5NTA2YTg0IGxlZ2FjeS10cnVuaworMTI5NjMgNjI3ODE5MTRmYWRiODkzY2Q2YWUzZmNhMWJmN2I2M2VlMzU1ZTcyZCBsZWdhY3ktdHJ1bmsKKzEyOTY0IDRhYmM1YWJhZWM5YWI4ODBmNTEyNGExOWVmMjdlODNkODAyYWRlNTkgbGVnYWN5LXRydW5rCisxMjk2NSBhNjQ2NGViOTg3ZThjZWFmMzlmYzFjOGUzNTAwMGM3MTA2Njc4Y2U2IGxlZ2FjeS10cnVuaworMTI5NjYgNTNjMWZhZWMxZDQ2NjZhNTA2NDM1MjBiOTE2MTdjNDU3OTY5YzczZSBsZWdhY3ktdHJ1bmsKKzEyOTY3IGY3NGVmMTk3MWJkMTI2ODA4NGU1NjI3ZDIzZDBlZjg3Y2JlMDhiY2YgbGVnYWN5LXRydW5rCisxMjk2OCA1ODY4ODQ2MjAxZWRlMjAxMzlmMDI2NzYxN2IwZDFiYmYyNWEwOWJhIGxlZ2FjeS10cnVuaworMTI5NjkgMzZiYTRkYmZmNjg2ZTg1M2FiMGM0ZDA2MmU2OTAwZDFmNmEzNTFjOCBsZWdhY3ktdHJ1bmsKKzEyOTcwIDI1NWFiYWIzYzU3NDMwNTA4YmUzMWYzZjUyYjM5NTYyMzU4ZjMxMDkgbGVnYWN5LXRydW5rCisxMjk3MSA5Y2Q0ZmQ5MjZkZjY0NDk5YjNhMDRhNzcyYmM4MDgwM2RlZDM1ZWJjIGxlZ2FjeS10cnVuaworMTI5NzIgNjAxYjRmMmQ1ZmM4NTI0M2EwYmIwNmI3MjhmZjk0ODJjMWI4ZWY1ZCBsZWdhY3ktdHJ1bmsKKzEyOTczIDAyMmIxNzhmZDBlZDU3NzgwNWU0ZjFkZjQxMDRlZjI2ZWZhNGE1MzkgbGVnYWN5LXRydW5rCisxMjk3NCBhYzNhNDY1ZTUwYTY3YmU5MWE3ZTMzY2E2MTAzMGRkMTk3Zjg1YjU1IGxlZ2FjeS10cnVuaworMTI5NzUgNGVlOTAwMDA1ZWQ4OGU2N2FkOGJhYTUyNzBiNzA1MTY0MzliYzJhMyBsZWdhY3ktdHJ1bmsKKzEyOTc2IDYzYzQ2M2E4NTI5MzZlZjQwMGFhYjIxMzJhZDM1ZjRkYWRmYWVhYjggbGVnYWN5LXRydW5rCisxMjk3NyBmODUwZWYzZGE0M2FmNDRkZGU0NDc3MzllYTA3ZWUwMTc2ZmQ5NTQwIGxlZ2FjeS10cnVuaworMTI5NzggYzgyYTg1YmExZGRlZjhlODI4NWJlMGE0Y2RlMTgxMWNkZWVmODlkYSBsZWdhY3ktdHJ1bmsKKzEyOTc5IDU3NzA0ZjBhZDliMDVjMDc0MDE0NzI2MjQ0NmZkZTZkZDRmMDY4MDggbGVnYWN5LXRydW5rCisxMjk4MCA0YjE5NDYxNzgwYjk5YTBjNTk2NDc4ZWU5MTRmNmUxNThmN2IwYjlhIGxlZ2FjeS10cnVuaworMTI5ODEgMDEyNTBiODMyMzc0YWIyYzU2ZmZhYjg4YjY2ZGZkZjI5N2VhOTFkMyBsZWdhY3ktdHJ1bmsKKzEyOTgyIGVlNjEwOTQ5ZjkwMjI2NGVhYzEwMzBmMjEzYmMzMmE0NGVjYjRkZGYgbGVnYWN5LXRydW5rCisxMjk4MyBjMjU1NGJmNjE3YzMyNTY1OTZiZjUxOTJmMmU2ZDFlNjNhMzljY2QxIGxlZ2FjeS10cnVuaworMTI5ODUgYmFlNjUwZjU3YzQxNTBiYjBjNDgxNmVhODcyOTM0MjIxYzUzOWFhMiBsZWdhY3ktdHJ1bmsKKzEyOTg2IDc1NjgzZmQzOWU5MWVhNGNkZmUzYmNmNDg2ODVmNzQ1YTQ0MDlmYjggbGVnYWN5LXRydW5rCisxMjk4NyA3NDc0YWQ3ZTBhNDQ5YWI5MTUwMjI5NWJjYWU4ZDVhZDRhNjk3OTE2IGxlZ2FjeS10cnVuaworMTI5ODggNTAwZjhlYzlkZWQxOGQ2ZGQ0OTg1Y2RjY2Q4NGM0NjhkOTlkYzg3MyBsZWdhY3ktdHJ1bmsKKzEyOTg5IDhkMTE1ZTExMWExNzQwZTkzZTI1NjhjOTRlNjdlMjQzY2ZmZTFmMGIgbGVnYWN5LXRydW5rCisxMjk5MCAzMGM5NGNkNDlhNjg4YTY2MDhiY2UyOGNiMjExNjA2YWNkYTFjZjYxIGxlZ2FjeS10cnVuaworMTI5OTEgMDVlOTdmNmEzNjM4YjM1MGVjMzk1ZTAxZWIxYTQ5OTUxMDQ0ZmMyOSBsZWdhY3ktdHJ1bmsKKzEyOTkyIGVjZGZjZWExMjQzODU2YzYyN2Q2NTAwZWZjMDI3ZmYwZTgwMTA5ZDggbGVnYWN5LXRydW5rCisxMjk5MyA4NzQ5ZTg4YWI0MDY2MGNjMTE4Zjc5MmMyNDlhNDVhNTc5Yzg1MDg5IGxlZ2FjeS10cnVuaworMTI5OTQgMzkwZTRjMTAzYmUyNjg4ZTBhMGNhN2FlZDVlZTYzMWQ0Y2M3NmI2NSBsZWdhY3ktdHJ1bmsKKzEyOTk1IGIyMzU3OTI0YTlhOTI2Y2RjZjM5YjUzZDkzMjA0N2ZjMDIzOGJmYzEgbGVnYWN5LXRydW5rCisxMjk5NiA0MzA1MmQ1Yjk4MDgzNDkyNjFhNzg5NjMxNTUzMDQ1NWVkMzFhYWI5IGxlZ2FjeS10cnVuaworMTI5OTcgZjVkN2M0OTQ1ZDVmNWI0ZGM5MmIxMGE5ZTgxMTgyMmIwNTI4ZTkzZSBsZWdhY3ktdHJ1bmsKKzEyOTk4IGU2NGM4Yjg0ZTI0Yjc5NWZiMDBlOTdmZDMwYTQxZDdmYWEyNDUxOGEgbGVnYWN5LXRydW5rCisxMjk5OSAyNDZiMTM0MTBhMzE3ZTRkMGFjYjQyNTQ0YzBiMjhiNjg1YmMyMGU3IGxlZ2FjeS10cnVuaworMTMwMDAgYmExYTI3ZDczY2RiMGEzM2ZhYmMzNzY4ZGZmOWNiMzkxOWNlMTJjYiBsZWdhY3ktdHJ1bmsKKzEzMDAxIDhkNDBlNmJhNGM5ZTIxNDE2YTI4YmUzOGQ3OTllMmQyODE0MDk4ZDggbGVnYWN5LXRydW5rCisxMzAwMiBmZTg2NDVlNDkzMTQ4MGM1YjdlNzdmODJjNTU4MmNjNWMzODc5ZDI2IGxlZ2FjeS10cnVuaworMTMwMDMgOTkzOTA4Mjg2YWM3MTY1Y2FkYTFkZGExMGExMmQ3NzE3OTQxZGI1NiBsZWdhY3ktdHJ1bmsKKzEzMDA0IGMwZjE0N2Y0ZjEwMGRiOTliOTk5ZDQ1MzdkN2VkOGY4ZTdkZGJiZDYgbGVnYWN5LXRydW5rCisxMzAwNSBlMDhkYTM0YzQ1ODJmZWRhMWVkM2U3YTc3ZTdhMzQzNGJiZDc2NmJmIGxlZ2FjeS10cnVuaworMTMwMDYgZmU4ODFmNDQ2YzVkMjhmZWE5N2VmYTE4NjI1YzI2MzEyNjhkNWRlMSBsZWdhY3ktdHJ1bmsKKzEzMDA3IDUzOTNjZTUyMDdjNzA2NTE2MGNkZGNkMGRkMTQ5OThlYWE4ZDIyZjggbGVnYWN5LXRydW5rCisxMzAwOCA0OGNkZGQwY2M3MzMwNzgyMjBhMjA2NGJkZWNmMWZiMGYzYTBkOWIwIGxlZ2FjeS10cnVuaworMTMwMDkgMjBmZWJhOTY3NDM3MTdiNWQ0NTU1ZWI2M2NmNDdhZjVlYjdjZDliYiBsZWdhY3ktdHJ1bmsKKzEzMDEwIDQ1ZTk5NzVjYjA5Mzk0ODU3NjAyOTBkMmUyY2Q1YjljNTJhMzhiYzAgbGVnYWN5LXRydW5rCisxMzAxMSA3NTNmM2Y5NWM1MGYxNWM4ZDJhYzU5NGIzMjNmMDQzNzY1NDQ4YzA3IGxlZ2FjeS10cnVuaworMTMwMTIgZDc5OTg5YTQzNWQ5MmUzMWI3MjJiYTcwNmVlZDA4ZTNmZjQ1ZWE0ZCBsZWdhY3ktdHJ1bmsKKzEzMDEzIDY1YjNjZmU2ZTY2NjkyNzk3MTA1Y2I3YTY2NmM4MGU1ZDcxZjc5NWMgbGVnYWN5LXRydW5rCisxMzAxNCBjM2VkYzE0YzM4ODBhMzk0ZGUzMTFhYzk3MTQ3NmJkNTQ5Zjg5NDkzIGxlZ2FjeS10cnVuaworMTMwMTUgMjE5OWY3MGIwZWRhNzJjODljMGMwODY0MjdkNGI3NzE4Mzk2MjZiMCBsZWdhY3ktdHJ1bmsKKzEzMDE2IGNhNDRmZjc0ODJjNzc1ZDE2Yjc3NmQyYzkyMGM2ZjE1NjVjN2NhNTUgbGVnYWN5LXRydW5rCisxMzAxNyA4MWY0YTc3ZTczMzczMDFiMzY2NTIwZDhjOTdjZjZjYmQzNDUxYjEyIGxlZ2FjeS10cnVuaworMTMwMTggOTZiZWFlYWQ4NzRmNzZhMDc5MmRiM2VhNGE1YzA0MzNjZDk2ZDhmNyBsZWdhY3ktdHJ1bmsKKzEzMDE5IDU2MTA1NDQ5NzcxYTY4NDMzYjlmYTZmZDczZjkxYTJlOGJiMDYwYTYgbGVnYWN5LXRydW5rCisxMzAyMCBkMzg0ODY4YWQ0NjIyZWJiOTBjODY4MWEyZjEyNWYzOTM3NGM4YzJhIGxlZ2FjeS10cnVuaworMTMwMjEgZTNmNTlhMDY0NzJlM2E1NjQzMzk5N2NjNjU5MzYwYzc0ZDk5YWM2ZiBsZWdhY3ktdHJ1bmsKKzEzMDIyIDlhYTY1ZDQ4ZGQwNTE3NzVkYTEyNmIzNjQ2ODU4OWIxNWZmOThkYWMgbGVnYWN5LXRydW5rCisxMzAyMyBiMTlmMmE5ODIwMzA1ZjkyNTQ0NzNiZWI3NWQ1MDNiOTNjMmRjMjg0IGxlZ2FjeS10cnVuaworMTMwMjQgN2VlMWUzMTM0MTQ3M2Y1MWMyNGRlMDFlODNlYjFiNWFmNmIxZThiNSBsZWdhY3ktdHJ1bmsKKzEzMDI1IGYwMDVhYzczNTg2MzQxM2FkYWVmYTVhYjAxYjU5NThiNDNlM2M2YjcgbGVnYWN5LXRydW5rCisxMzAyNiBiNWRlYTRjNzlkMjRlMGEwYjU2MGJmNjRhODdhMjNlNjA3MjAwODY3IGxlZ2FjeS10cnVuaworMTMwMjcgNDc0YzViODJkN2RlOTlmN2VlMDQyYTBjNmRmYmYxYTAzZjJlN2VhYiBsZWdhY3ktdHJ1bmsKKzEzMDI4IDg3OGE1NGEwNjExN2IzOWI5OTRiOWU4M2RhZjMxODczNGUxOWFjNDkgbGVnYWN5LXRydW5rCisxMzAyOSA2MWJlYzFlNWZhNTkzYTk3NTY3OTM0MjUxYjZhYzNiZTQ3NzRlMjAwIGxlZ2FjeS10cnVuaworMTMwMzAgNDE1N2YzODYyYTA5ZGYxNzE3NDZiMWJkYjdhZTcwM2JiNGUzODNjMiBsZWdhY3ktdHJ1bmsKKzEzMDMxIDNlZWZlNmIwODY2MmY0NTI5YTMyZjFiZWYyMGQ0NjRhZTdhNjRjZGYgbGVnYWN5LXRydW5rCisxMzAzMiBkNGNlOWYxZjYyNjY2ZTRkODhkOGIyYWNjNWRjNDdkOGM3YmRmZDQ1IGxlZ2FjeS10cnVuaworMTMwMzMgNTQwYzgxNzNlNGZkYmZlY2JhMjQ2NTQ3YzdiODFhZjk1MzkwNjEwZCBsZWdhY3ktdHJ1bmsKKzEzMDM0IGQ4MzRlY2RmOGMyNmUwZGY5MjMxODdmMjBiYTQ3YWNhNmVmMmUyMjAgbGVnYWN5LXRydW5rCisxMzAzNSA5ZWM5YWJmZWM3OTRlYzE0MWQ3Y2Q2OWMwZTVkMDZkMjEzNWU1NTRhIGxlZ2FjeS10cnVuaworMTMwMzYgYzA0ZjAzZTgyYTc1NDM4MjA4MDc3MzNhNmZmN2VkZmQ1MGQyMDM3ZCBsZWdhY3ktdHJ1bmsKKzEzMDM3IDMyYmEwOWM4NjkxN2JiNzBmNWE0ODY4YjY0YmQ2NWViYTVlZGUzNjQgbGVnYWN5LXRydW5rCisxMzAzOCBhNGEyNjhiNzI1YjJhNDYyMzZmODBlN2ZjYzFiM2ZiNjYxYjljZTZiIGxlZ2FjeS10cnVuaworMTMwMzkgYjYyNzI0YjA5MzAyZTc0OWNjNTkzZjM4NTE4ZTI4ODBjZmY2ZjlhYSBsZWdhY3ktdHJ1bmsKKzEzMDQwIDkzNDcxOWMyNWFmODJlZGVmMTU4ZWI3ZTJmY2JkMWY3ZGZkN2UyYjkgbGVnYWN5LXRydW5rCisxMzA0MSAzZmU5NWMyYjM3MTM0ZWE2OTZlMGZlMmU2MjI3ODM0YTA3MDY3ZDExIGxlZ2FjeS10cnVuaworMTMwNDIgY2NlZTNjMjhiN2VmZjFiZjVlMWQxMDcxY2VkNzRmNzRiOTBiMmE5OCBsZWdhY3ktdHJ1bmsKKzEzMDQzIDVmNDU0YjcwNjE1NmVhMzFjODhjOWZhZTcwZmM2ZTAxOGM1ZTU0ZWMgbGVnYWN5LXRydW5rCisxMzA0NCAwYmViN2QzNmMxYTk3Njk0NzI2MTEyMDhmMzY0NGE4NzA3MTIzZGZlIGxlZ2FjeS10cnVuaworMTMwNDUgZjI4ZTZhM2I5MTM0ZTE4M2VmMWYxOGNmM2MwZTRmMGVhMDFiNGJlZiBsZWdhY3ktdHJ1bmsKKzEzMDQ2IGVkYzdiMjhkOTA1MjExMzZiNTNkZDQ3NDM3OWE1MzI4OWY1NjcxYWEgbGVnYWN5LXRydW5rCisxMzA0NyA1ZTllYTNlYWI3N2M4MTAyNTMwNzcxNWQ1MTUzMmViZWZlZjNhMmRkIGxlZ2FjeS10cnVuaworMTMwNDggMzQwMGFhMWIwMDczZmM3OGMzNjI4NmQ2ZTIzZTQ1NzAzZTcyOTJiYyBsZWdhY3ktdHJ1bmsKKzEzMDQ5IGMwYTY5ZWNmOTY0NmY2MWE2MGVkMWY2OGIzZjM1MmMzYTA1MDQ1OGQgbGVnYWN5LXRydW5rCisxMzA1MCBlNjhkNTM3ZWI1MGZlYWI3NzA1ZmEyMWE0NDc1ZThjNmJjZjJkYTVlIGxlZ2FjeS10cnVuaworMTMwNTEgNTk4MGJiMDAxZjg2NGVjMDA2NmU0ZjNmZjA4N2Y1OWQwMGIwZDQwMSBsZWdhY3ktdHJ1bmsKKzEzMDUyIDhjMWNmZTk2NWQ5YjJkYzMxZjEwNTNmNDA4YWQ4MzEyZjRiY2M4MzIgbGVnYWN5LXRydW5rCisxMzA1MyBhZTYxYjcwZWZkYjNhOTQ4YmZhODFjOTU5N2QwMmYxMjYxYmVkY2M2IGxlZ2FjeS10cnVuaworMTMwNTQgYzY5YmZlMGVjYmQ4NzA2YTM1Yzc3ZGRlYWFiN2M5MzZiNGEzNWY2ZiBsZWdhY3ktdHJ1bmsKKzEzMDU1IGFmZjA3ZTA0OWFlZWZhMmJlNDMyMDhhZDBkMjZkNzNjNDhiMzNhZDAgbGVnYWN5LXRydW5rCisxMzA1NSAzOWZiMGRjYzgzZGMzNzVjMTU2NWJhNjVkYmNlMGVkNTliMTM1OWM5IGxlZ2FjeS10cnVuaworMTMwNTcgYTgzN2E2YWVkODNlNmRlMmYzNDc3MGViNDRiMjVkMGZmOGYyZDBlMyBsZWdhY3ktdHJ1bmsKKzEzMDU4IDA1Y2ZhMjhlNjVmNjI0NTM3MjIyNDljYjg0ZDk4YjRiYTQ3NDhhZmYgbGVnYWN5LXRydW5rCisxMzA1OSAyNDNjYzZkOWM1YjhmYmUwZWRhMTdmMTU2NzljM2E3MjRkZjE1Y2FjIGxlZ2FjeS10cnVuaworMTMwNjAgZTNlNWQ3NjM2OTU4Njc5YzQxMzZhOTdlODg5NjU3MTAyZmM1ZTk4ZCBsZWdhY3ktdHJ1bmsKKzEzMDYxIDI4NmIyY2U2NTI0ODg2NDkzZDUwM2VlZWQ1MTMyZGZlMmQ4ZTc5ODcgbGVnYWN5LXRydW5rCisxMzA2MiA4ZDJhOGE0OWQ5ODM5MjEyMThiYTRhMDQxNTRhODMyYTVjMTA1N2Q2IGxlZ2FjeS10cnVuaworMTMwNjMgYWZhYTNhYTgzNWY5ODMzNzlhNzc4OTM1OTFiOWIzY2FiMWY0MmMxNCBsZWdhY3ktdHJ1bmsKKzEzMDY0IDk3MGQ2MWJiNmFjZjkzODNiMzU2YmU0ZjFmNWYwYWMzNDljYWViNjAgbGVnYWN5LXRydW5rCisxMzA2NSAzYmUwNTI1YmY0N2YxYWM0MzY4ZTk2NDJkZDg1YmI3NWI3NWZmZDI1IGxlZ2FjeS10cnVuaworMTMwNjYgYTQyODI0Y2YwYjE4MWUyODZiMjUzZDVjMDc3MmNlNWJlZmQzOTFlMCBsZWdhY3ktdHJ1bmsKKzEzMDY3IGY2ZmM2N2Q3MDVkZWFkMmJkNDFlMDg3NTMzNjI1ZDI3NTYwMGM3ZTggbGVnYWN5LXRydW5rCisxMzA2OCAwNGFmYzFhYzFhMGZkOWZjOGIzZTk4ZDliYjlhNGQxNGU5NzE3MmQwIGxlZ2FjeS10cnVuaworMTMwNjkgMTA0YTQ0MWIyYmM4Y2Q5MWQ1MjkwMDI3Mjg3ZTk0OWFmODA0MDEwMiBsZWdhY3ktdHJ1bmsKKzEzMDcwIDdiZjNmNDEyZTEzNzg2MWJmYzY5MTkyN2IyYTg3ZDJkYWNlNWY5NDIgbGVnYWN5LXRydW5rCisxMzA3MSBkYTE1ZWQzMTRlMjQyODE0NzYzZmE0OWEzMjk0ZGI2Mzc4ZjA4OGQyIGxlZ2FjeS10cnVuaworMTMwNzIgYmZmMzM4MmM2ZDJmNTFlZjg4YjE2NzViOTk5YTNiYTNhNWQzOTM1ZCBsZWdhY3ktdHJ1bmsKKzEzMDczIGY1ODA0NjMzOWNiZjM1ZDliNWYwODhjMjZkYmY2OTY4N2JjMGFlMmUgbGVnYWN5LXRydW5rCisxMzA3NCA0ZTBjYzZlMDJhMGRlOWNjNTY2ZjFmMWQ2MmJjZTUyZTc3NThhNTA2IGxlZ2FjeS10cnVuaworMTMwNzUgNGFmZjM5MTc1MTM3MWRhNWY5NTQ4NTRhOWU3ZDIyZWIzZThlMWJiZiBsZWdhY3ktdHJ1bmsKKzEzMDc2IDEwYmQyZmIyYTBkNjdkOWQzZmVkY2JkMTBjYTM4ZDAwN2I5NGMyMjkgbGVnYWN5LXRydW5rCisxMzA3NyBhZjFlODE5YzA0NDU2OWJmYWFkZDFiMjEwZWFkMzgyNDhiYWNkOGJlIGxlZ2FjeS10cnVuaworMTMwNzggZjk2YjI3Mjk4MWJjYTY0YWQyY2NkYjcwZDUxZjU5OWI5MjE2NDhmMCBsZWdhY3ktdHJ1bmsKKzEzMDc5IDU2MTcyZTBlZmI3NTJlYzY1Mzc0OGYyNmIxMTRkZDA1M2UyOTlkMzAgbGVnYWN5LXRydW5rCisxMzA4MCA2ZTdmMTRhZjg5YjcxZmUyNGFkNTgxZGRiMmE2YTI5YjllZmRkODU2IGxlZ2FjeS10cnVuaworMTMwODEgODg1YmU2MDEwNGQ0MjM1NTA4MzAwYmI0Y2I4MzBjNGYyYzNhM2U0NyBsZWdhY3ktdHJ1bmsKKzEzMDgyIDYzNDJjZTRmZjk0NjU0ZjAzOTg0ZmJkYWZhNWE5ZjY2NGEyMGEzMmMgbGVnYWN5LXRydW5rCisxMzA4MyAxZWQxZWI1YmM2ZWMwYWU4MDQyYzM0ZjY1NWRjNGM2ZDE0ZmU4MWM3IGxlZ2FjeS10cnVuaworMTMwODQgNDM5ZmM4NTMyNGNkZDIyMzc0MDZlOTk1ODY0MTRmMzNjZDZlMWRjYiBsZWdhY3ktdHJ1bmsKKzEzMDg1IGJiYjVhZjc4YTI1OTI4OTA4YjhmZjcwZjdkZmJiMGNmNmQxMmI2NjIgbGVnYWN5LXRydW5rCisxMzA4NiBmN2I4Zjg4NmI1MWE3OGM0MGFlMzJiOTA2MzJiMGFlYWE3ZjZiYzRhIGxlZ2FjeS10cnVuaworMTMwODggNDRkYTAzNjUxYmQwMmFkNjRiMmZmMWQwMmM4NjU1ODA5Nzc1ZThkOCBsZWdhY3ktdHJ1bmsKKzEzMDg5IGU0MTExMGZmOGMyZmEwN2IxMzZmNDBlYzVkYmE0MTcxNDg3ZjFlZWMgbGVnYWN5LXRydW5rCisxMzA5MCA3MDBkYWE3NTg0N2E1ZDRiNDI4NjAwYTAzMzQ1OWE4OTEyMzYwZGM0IGxlZ2FjeS10cnVuaworMTMwOTEgOGRhNDZkNmI4YWYzYjI0MTg2NTJhNGI4MjRjYjMyNTQ1MmE1ZGY2ZiBsZWdhY3ktdHJ1bmsKKzEzMDkyIDA0MGI1Mjg2OGZlOGNlMjI2ODE1OTQ2YWZjMGE5NDEyNzdkMGVlZDAgbGVnYWN5LXRydW5rCisxMzA5MyAyNTFiYWEwMzJhZjBjM2NiMmE5MDA1ZDMzYTJjOTQyYmYzM2M0MTQ5IGxlZ2FjeS10cnVuaworMTMwOTQgY2U4NjFiNDNlZjUzNTZmMDk0YWZiNzNhM2YxYzc4YmQ2NzRmYmM2NSBsZWdhY3ktdHJ1bmsKKzEzMDk1IDA5NjVhYTJkZjVjYWQ4YzhjODBmMjQ5OTAwY2FiNGQxMjk2YmRjYWUgbGVnYWN5LXRydW5rCisxMzA5NiA4M2QzOGM0YWQxZGVmYjA4ZTE1ZjYxY2VmZmIwZDljN2UzZDM0N2EzIGxlZ2FjeS10cnVuaworMTMwOTYgNjFjOTFjN2YxMDFiYWIzMTQ5YWRmY2Q1NjQ2YWU0MGUwNDhkZTcxMiBsZWdhY3ktdHJ1bmsKKzEzMDk4IGMzMWI4ODBhZTg0ZjlkMjJiMDM1NDZlYjllYjQ5MWU4ZTcwNzQ1ZjYgbGVnYWN5LXRydW5rCisxMzA5OSAyOWFiYjdkOTZjMjU5NTE4YzEyZGI3OTNlNWVlMTQxZTMwNWM0NzBjIGxlZ2FjeS10cnVuaworMTMxMDAgNGUyNjk0MTRlZWU1MzBhNjdkMTQzODY1ODViODY4OTM5ZGQ2ZWMyOSBsZWdhY3ktdHJ1bmsKKzEzMTAxIDYzYzdhOGFjNGU0Y2Y5Y2QzMDhmY2UyYmE0MTVhZjI1NmFlMTU5ZDcgbGVnYWN5LXRydW5rCisxMzEwMiA1NjZiZDg3ZTAwMzJlNjkyYmRmN2Y4ODNmZGUyNTZmNmRiYjAwM2U5IGxlZ2FjeS10cnVuaworMTMxMDMgYzg3NTliYTgzNTUyYTU2YjlmNjFjMzAwMWU2ODg5ZjcxOTM4ZTViYSBsZWdhY3ktdHJ1bmsKKzEzMTA0IDg3NmQ3ZTc5MjI1MmM1ZTA1MjIyZDM0NGVmYWZjZmNkNDRhYjI5MDkgbGVnYWN5LXRydW5rCisxMzEwNSBkY2RiYjEwMDA2MGYyYTlmOGIwZmFmZTliYTZiYjU5MDkwNGY4YWY1IGxlZ2FjeS10cnVuaworMTMxMDYgOTBiZGY4ZmE3OGE5YjhlYjdhODBlYmQyOGUwMzAwNmI4ZTc2Y2ZkNCBsZWdhY3ktdHJ1bmsKKzEzMTA3IDJhYjk2N2Y4NDg5NWIwZGQ4MmZjZjI2MmEzMmJjNjg5OWVkMGRkNjcgbGVnYWN5LXRydW5rCisxMzEwOCAyOGM0NDM3MmRlMzg0MWUyYTFjMTNmMzcyNjEwZDE0ZmM1OWRjNGEyIGxlZ2FjeS10cnVuaworMTMxMDkgM2RlMDQ0ZTY1MGExYjYzYmVmMzMzNTY4NDNhZjUxNDU3N2IxZGYxZiBsZWdhY3ktdHJ1bmsKKzEzMTEwIDAyNzAxYjk5ZjliYWJiOTY4YWRjNThmZTNmZDg3MTczODhiMWZlMTIgbGVnYWN5LXRydW5rCisxMzExMSBmZTVmY2I3ZTczZjc5YmQ1NTEwMjMxMDc3M2ZmZTNlZTY4N2U2NzM4IGxlZ2FjeS10cnVuaworMTMxMTIgZmNhYWM0MWY2ZjNhMDMzZmI0YmJlOWU2ODY4NGUxYjRjMTNkNTJjZiBsZWdhY3ktdHJ1bmsKKzEzMTEzIGI0ODg5ZjEwNmMzYjE4MDZkY2Y3N2QzZTc4MzZhM2JhMjlmZDRiM2EgbGVnYWN5LXRydW5rCisxMzExNCAyNDE5YTZjOWY2MjgxMDYzZjhmYmQ3YWY4ZDEyMDFiYWZiMWFmMmJlIGxlZ2FjeS10cnVuaworMTMxMTUgM2YxZTcyYzcxYjNhNWNiZDZmNjFlZDNlNmI3YTA4MWZiNzZlOTZjMiBsZWdhY3ktdHJ1bmsKKzEzMTE2IDZmOGNkYzdlMjI1YzkxNzdmNjk0NTNiOGYwNDgwNmU2M2FlOTE2MGMgbGVnYWN5LXRydW5rCisxMzExNyBmNDI1ZTYwYWM3MWE0NmQ4MmMyOTgxMGM3YzI3M2RkYzliYmQzNzJmIGxlZ2FjeS10cnVuaworMTMxMTggZjYxNGY1Y2YyZGVjOWUzZGM4NGY3ZWQ3NjFmYTY0MmJhMzE0MjBjOCBsZWdhY3ktdHJ1bmsKKzEzMTE5IGEwNzdlNWRhNWZhNTczMGEwYTg2YTUzZDI5NThhOGY3ZWRhY2RmZTMgbGVnYWN5LXRydW5rCisxMzEyMCA1NjhlOTQ3MjdhMGNjOGQ5ZmJiZThjZjNhYzc3ODczYzk3MDVhMDI4IGxlZ2FjeS10cnVuaworMTMxMjEgYTZiOWQ0NTAwMzE3NTI4OTA4MGMzMGM0MTRiZDc3MjU1ZjkxOTJlYiBsZWdhY3ktdHJ1bmsKKzEzMTIyIDAxMmQzNjFmZGYyM2E4YTM0N2MzMDE4ZjI4ZjNiNTM3YWRkNTU4MGUgbGVnYWN5LXRydW5rCisxMzEyMyBmN2U5YmM4ZGExM2QyMTYzM2VhYTQyZjIxNGE3OGNjZGNjZTNlMTg0IGxlZ2FjeS10cnVuaworMTMxMjQgZmE0Njg1ZmQ1YWRmZjEzNDQ4YmNlNGRhYTVkMTUzOWZmOTZiZjNiNyBsZWdhY3ktdHJ1bmsKKzEzMTI1IDg5MWQwODlhYmE0MTJiYTYwOTVkYWU5YTBlYzhlNTA2ZGFlYTFmYzkgbGVnYWN5LXRydW5rCisxMzEyNiA1YjE3MGYwZGE5ZmViZDk5MjJjM2Q0NWVlZTM5YmMwYmU5NTcxYWM1IGxlZ2FjeS10cnVuaworMTMxMjcgZGRjZWRkZWY1OGExYzcxYTdjZWNhMThlZTRmNTFmMjk1ZThiYjhkZCBsZWdhY3ktdHJ1bmsKKzEzMTI4IDg0ZDRmMTcyNjY5YTZmZDM3ZDMxZWNiZmUyZTY2MGMzZjA5MDY4OTkgbGVnYWN5LXRydW5rCisxMzEyOSAzNGZkMjUyNDI3MzE5ZjIzMTEzZWEzM2ZhODYxYzYxMjYyM2UyNDgzIGxlZ2FjeS10cnVuaworMTMxMzAgYWQ1NWJkYmE1ZGZmZWQ4Y2EyMGI0NjIwODFhNDg4ZDFjNzFkNzQzZSBsZWdhY3ktdHJ1bmsKKzEzMTMxIDM3ZGQ4YjhiMWQ4NDAzOWEyOGViNGJjN2EzZWViMWYzZjAyNmFiYmUgbGVnYWN5LXRydW5rCisxMzEzMiA3NWYxMjg3MWVlZWE3YjVjOTJkMWE1MzRjYjRjNzU3YWE5ZTA5NmRjIGxlZ2FjeS10cnVuaworMTMxMzMgMThjNzRkNmJjYWU4ODA3NDE0NDE1ZmFhOWUyMzgxMzY5Yjg3NjczZSBsZWdhY3ktdHJ1bmsKKzEzMTM0IDFiZGVhMTdiYzQ3MWYyNWY3YTk3NzE0Nzk5Y2FkMGM1ZDg5ZWNhMjMgbGVnYWN5LXRydW5rCisxMzEzNSBkNzE5N2IzMmZiZmVhMWVjYzE5ZDY4YjRmMzQxMGExMGZjZmFkYTRjIGxlZ2FjeS10cnVuaworMTMxMzYgNjQ3MjcyOGRmMmQwY2YyZDY0MjM2MDYyODcxZjUyZTNmMTg0ZTg1NyBsZWdhY3ktdHJ1bmsKKzEzMTM3IDQ2YTcwOGIwY2EzOGYwMTA2OWMyODUzMjg0ZmEyZGFmYzkzMjQ0ZjggbGVnYWN5LXRydW5rCisxMzEzOCBhYTRlY2I3MTZlNmUxYzhhNmM2OWYyNGFmMDQ5Y2RlZjJhMGUyYzJmIGxlZ2FjeS10cnVuaworMTMxMzkgZTI2NDM5MmUxNTM2MWY5NTY5NzJiYzQzYjAzZTVkMjRjMzE0MGZjYyBsZWdhY3ktdHJ1bmsKKzEzMTQwIDNjMjU5MzcwYWM1N2FiMWVhNTQwZGFjNWZmNDRkMjA4NjVjMWRiMjMgbGVnYWN5LXRydW5rCisxMzE0MSA5ZmQyOTAyMWQxNDdlYWM5ZDI2Y2NmMmQ3ODNkMmQzMzgyOTE1YzE0IGxlZ2FjeS10cnVuaworMTMxNDIgYmVkMTVhMDE1YzFjMzk0ZWM5Yjg2ZjQxMTk3YmE2MTExNzg3MjkzMSBsZWdhY3ktdHJ1bmsKKzEzMTQzIGRmOGExYzI4MWFkN2Q3NGQ0ODk4Y2NhZWM2MGYyZTM0ZDdmMjY2NzMgbGVnYWN5LXRydW5rCisxMzE0NCAzNjA0OTRjMjVlMGU1YTlkODAyZGY4NTNjZjQxMDdiZGY5YWUxNjdiIGxlZ2FjeS10cnVuaworMTMxNDUgZWFjYTM3NzViNDI1ZDdiZDM4NDZmZjY0YjRlM2UyYzkyOWQzMWMyZSBsZWdhY3ktdHJ1bmsKKzEzMTQ2IGY2ZWM0YTljYjBiMzkzZmQyMzdiYTY3NGRlZTkwNWNjMmY1ZmM4YjEgbGVnYWN5LXRydW5rCisxMzE0NyA2MzcyYzJhNGQ0N2JkODE0ZGIyYmVhMjE1M2NmZGJkOWQwZTE0YjRhIGxlZ2FjeS10cnVuaworMTMxNDggZTNhMDg5ODNjZDI1MWY4ZWZlNzIzMWY1MGIxMzFiNTU0YWZmZTYxNyBsZWdhY3ktdHJ1bmsKKzEzMTQ5IGNmNjJhZmYxMDQ2ODdhNGIzYzQxNDM5ZGEzYzhmMzU1ZDVmYzExZGUgbGVnYWN5LXRydW5rCisxMzE1MCA0Njc4OGYxNjY1MGIwN2I4MDQyOTEwYTY0NDVmZDMzZjcwZTFhMzZkIGxlZ2FjeS10cnVuaworMTMxNTEgZTA5ZjE5NDQxMTM2Y2EzOWQ2NzYwNTZmNjk2YTAzMWVkMzc0MjY4OSBsZWdhY3ktdHJ1bmsKKzEzMTUyIGM3NDcwYjE0ZGVjN2MzZGYwODFjMTYxMzRmNDNmZTNiMGIxMWQzNDkgbGVnYWN5LXRydW5rCisxMzE1MyA0OGMzM2QwNTM2N2YyYTVlODI1MTA1ZDYwNDYyZTQyMmZmODI4NDhiIGxlZ2FjeS10cnVuaworMTMxNTQgNDM2OTRkMzUzNDQyMTliYzk1MmJlMTgyMmFkYjNlN2ZlYWVjNWMzZSBsZWdhY3ktdHJ1bmsKKzEzMTU1IGM5OWU2ODdkMWFjNGFjNjUxYTM0M2E1YTRmMjA4MzBkYTFjNzYzYzMgbGVnYWN5LXRydW5rCisxMzE1NiA4YjM4Y2U0MjI4M2VjYmNmZDVlM2NmNjFjYTUzMDE1YzU1MzI5MjFlIGxlZ2FjeS10cnVuaworMTMxNTcgNmMyNjUxMTNlN2U4YzZmYTcxYTcxMGUyOWQ0MzhiZjVkNmMwY2M1MSBsZWdhY3ktdHJ1bmsKKzEzMTU4IDQyZGJmZDQ5ODM4NzY3MzJkZDZhMzIzZWIwYjY1NzhlZTA4YmE4ZDIgbGVnYWN5LXRydW5rCisxMzE1OSA5ODgzZTMwYWNhYzU5Mjg4NjMwYzQ4NzY2YzNiODgyZGQyZDJkYmY5IGxlZ2FjeS10cnVuaworMTMxNjAgMjk5YmY1M2U2ODYxNmVmYmZhODRlOTFjYzMzOWYwMjVhY2NlYTEwZiBsZWdhY3ktdHJ1bmsKKzEzMTYxIDhlNzJmYzU3ZjU1ZmQ0MzFmNGIzZjA5Mzg3OTZiNjJlNmYwZmIwNDMgbGVnYWN5LXRydW5rCisxMzE2MiBkMjAzY2I5ZWNlMzcyNzdkZjE1YTE2MDM1NDYyNGI3ZTQ2YTQxMmJlIGxlZ2FjeS10cnVuaworMTMxNjMgOTk2ODFlZTg2Njk4MmQwNjRkOGQ5MjZjMzdlN2ZiZDk2MDEwMTk4NSBsZWdhY3ktdHJ1bmsKKzEzMTY0IDY5ZmI4MWZhY2IwMzc4NGM1MDUwMWExNjEzZDkzYTFlZmNlODFiMTEgbGVnYWN5LXRydW5rCisxMzE2NSA5NWFjMWM4YzA4NWU1NGNlMmM3OWY2NTczYzI5ZDg5ZTk0ZTViZGNkIGxlZ2FjeS10cnVuaworMTMxNjYgYTcxYzYzNmI4NWQxNGEzNzMwZmIyYjE2MGRkYmY4NmM0NGJmMWUyYiBsZWdhY3ktdHJ1bmsKKzEzMTY3IGFiMDIzMzQ0NTNmOTZkNDcwMmVmZWQ0YWI0MzJiNDZkZDc0MjkyZGIgbGVnYWN5LXRydW5rCisxMzE2OCAzN2EyMjM2ZDQ3MmYyZjRmMTU5NzdmYTY2MzY0MTMwYjkzMDAzZmEzIGxlZ2FjeS10cnVuaworMTMxNjkgOTMzNzMyMDI2ZTljZDQ5ZDg3YzBkODQ4ZjBkZWFiM2ZkMDYxOGUxMiBsZWdhY3ktdHJ1bmsKKzEzMTcwIDdkMDViYjNlMTM1ZjYyNzc2NzFlMjc2YjMxNmE5OWQxNjgxM2RhMWMgbGVnYWN5LXRydW5rCisxMzE3MSBiZWJlOTgzMGIzM2NkYTE5NmI2NTM2MWJmYTJhNWM2OGNmZTVlM2I1IGxlZ2FjeS10cnVuaworMTMxNzIgMDJlYjc0NzQ5MjYyZTU1YjVmMzJjMTI4MGFhYjdkZDg0MWNiYmU0MiBsZWdhY3ktdHJ1bmsKKzEzMTczIDhjNmZmZTY3MDk2M2IwMWVjOTRlMmU0MmQ0YjFjM2FhNWFiMDkwOGQgbGVnYWN5LXRydW5rCisxMzE3NCBlMDVmNmJkYzhiNTIwNDVjMzVhZTk5ZDAzZGE0NzBmZWIyMGVmNjgxIGxlZ2FjeS10cnVuaworMTMxNzUgOGMwYTYwZmI2YWNmNjljZDU2NTlhMDI4OWQzMzdjNTAxYzNkMTkzYyBsZWdhY3ktdHJ1bmsKKzEzMTc2IDc5ODY1NTU1NjQ1NjU1MGRiZWQyNGU0ZWQ4MThhY2NkMWU5OTY2ZjMgbGVnYWN5LXRydW5rCisxMzE3NyBmNjA2MmU1OTIzOGYzZTM1ZWEwMGQ1YzJhN2NjOTNjZDBlYzk3ODRhIGxlZ2FjeS10cnVuaworMTMxNzggZTJhMWM4ZDIzM2RmNzE5MjA3MjcyNDk4YzliMDMyNGI0YWVlOGNmYSBsZWdhY3ktdHJ1bmsKKzEzMTc5IGIyNjA2YThmY2FhYmE5NjdkYjMzNDNjNzI3OGVlNTcyOGQwMzc4YTkgbGVnYWN5LXRydW5rCisxMzE4MCBlZTg2MWQ3YmMwZTkzMGNmYzc4YTMzZmI2OTYyMWU4NTk3MTdiYTJkIGxlZ2FjeS10cnVuaworMTMxODEgNThkZGVlMTI1NmU5NTQwNWU3NzMzMmY2OGYyYzhlNDEzZDY0YzM4YiBsZWdhY3ktdHJ1bmsKKzEzMTgyIDllNGM1NzNlYTQ5YmE2YjMyY2E2MTFkNmJiZjcyMDdlMGMyNGRkMzYgbGVnYWN5LXRydW5rCisxMzE4MyAxOWI0ODcwMGFjZGJiZjc0ZGEzMGVkN2JmMWM5YzczNmJhMGYwN2NlIGxlZ2FjeS10cnVuaworMTMxODQgNGNiODQ5NGFiYTYyMGVmMjdlZWFhNjE0ZDUyOWQzMmFlZTk1NTUwOSBsZWdhY3ktdHJ1bmsKKzEzMTg1IGFlMThlOGVlYmUwNGRhOGQ0ZjRhZDkwMzAwMWM1ZTFmMDIyZTUwMjQgbGVnYWN5LXRydW5rCisxMzE4NiA2MzNkMmY3YTFlNDg4MDVjMGE4YTQ4YTFlY2E2ZTUzMTE4MDg1MWZlIGxlZ2FjeS10cnVuaworMTMxODcgNzEzNzQwMDAzN2UwMTU5MDE1NGNhNmQ2NTA2ZjdlZmFhNWQxODc5NSBsZWdhY3ktdHJ1bmsKKzEzMTg4IDNiYjAyOWM2ZGQzNzgyMmEwOWRjM2VlOTgyZGJiNzFkOTdiNTdiMjQgbGVnYWN5LXRydW5rCisxMzE4OSBmNjcxMTk1YWYwMjBlZDhkYjQ4M2I5ZmNlOTNkYmFiNzdkZDlkMDdhIGxlZ2FjeS10cnVuaworMTMxOTAgODVjZjQ3NjY1N2M1ZGU2MTk4NGU1ZDVmZjBiZDQ3NjVlMWE3ODA4NCBsZWdhY3ktdHJ1bmsKKzEzMTkxIGFlMDMwNmFhYTY4OGUxMWJlNWQ4ZDIyZDM0N2RiMGEwNDBiNWEyZTEgbGVnYWN5LXRydW5rCisxMzE5MiAzYjg3NjJiOGMxNDBkMDE2Y2U0NTI1ODg3ZWJkMWEyMmMxNGVlMTc4IGxlZ2FjeS10cnVuaworMTMxOTMgOTIxZmYzODVmMjU2YTE4YWMyNzE4MDJjMGZkYzdkZWMwZWYxZmU0MyBsZWdhY3ktdHJ1bmsKKzEzMTk0IDliN2Q4ZWM5YjkxMGMzMjI0YjljNDg4NzljNjI5NmMyNTJlNWQwYWEgbGVnYWN5LXRydW5rCisxMzE5NSBhOWQ2MTNhYjVhNzY1ZTMzNTE5ZTA1MTQ4NmRkNDdhYTM2OTZkY2ExIGxlZ2FjeS10cnVuaworMTMxOTYgYWIxMmM2MzFkNzM1ZDQ4ZmY3YzBjNjJlMGFkZDZmZWEwY2MzZDUyYSBsZWdhY3ktdHJ1bmsKKzEzMTk3IGQzMGNjYjAwYmQ3YjgwYjU4Mzc0YjAxYjJmN2IyYjljZGYxYjEyNzcgbGVnYWN5LXRydW5rCisxMzE5OCA5ZTA0MDJlZTM4MTIwNjg5NzcxOTZhYzYyOTc2YjdmODMzNTQyMzIyIGxlZ2FjeS10cnVuaworMTMxOTkgMjVjYzdmMGQ0NWYzOGRhZGM4OWMyZWNhZmExNDE5Nzk2YzJjYWQ3OCBsZWdhY3ktdHJ1bmsKKzEzMjAwIDBiOGJhOTM1MWEwNjM1MTY4NGIzNWQwMzUzZDhhZGNhNTNiZjNkOTkgbGVnYWN5LXRydW5rCisxMzIwMSBlNzAzOTc5ZmY1ZTc0NjkyOGI4NjRhNTQwNjczYmRhMTUyYzU2YzFjIGxlZ2FjeS10cnVuaworMTMyMDIgNjdhNGFjZWQwZDg4ZTUzYTgzYzBiOWQ3MDc3YTNjMzhiODJhNzY1YiBsZWdhY3ktdHJ1bmsKKzEzMjAzIDQ4MjI2MTdiMzlmMTRhNzM3NzljNTkxNTliNmVkYjI4YWRiOWQyOWQgbGVnYWN5LXRydW5rCisxMzIwNCBhYmExY2QwZDEzZWFmYmQ0NTY5ZjZlMDBiMmZkMjIxOWQ1MmFjNDc1IGxlZ2FjeS10cnVuaworMTMyMDUgODFmNTExMDVmNDI4OGQyM2JlY2U1NzNiMjY5MDUwZmQ4ODgwZjViMCBsZWdhY3ktdHJ1bmsKKzEzMjA2IDM0NmU5YTBmMGY4YzdjZTZhNjkwZWJlZTQ2OTZmYTUzYWFmZGQ1YjcgbGVnYWN5LXRydW5rCisxMzIwNyBjOTAzZWNlY2JhNjY5YmIzMGYwZjcxNjA1YThiOThmMGIyOGQ4Y2FiIGxlZ2FjeS10cnVuaworMTMyMDggZTRlODAwYTc4ZDhkZDI3OTk0OWE1YzNhYWMyNDZhMWU1NWFlMzliMiBsZWdhY3ktdHJ1bmsKKzEzMjA5IDU4YjE5MWJhZGI5YThiNWUwM2I1MGRiY2M2YzgyZWY3Mzk1YTZkMzIgbGVnYWN5LXRydW5rCisxMzIxMCA0Nzg4ZmQwNzBhMzBiM2UxZDE0ZjQ1ZThhMzgyMDk5ODg0MTY3YzUzIGxlZ2FjeS10cnVuaworMTMyMTEgODUxMWVmZWM3MzA5YzdlMzU0NmNmZmI5MzVlMmEwZmIxNmY5ZDUxOSBsZWdhY3ktdHJ1bmsKKzEzMjEyIGNhZDdiNTVhMzYzZmY1NDYzYzgwNWU3N2RkOGNkMGYwNjQzYTgyYTQgbGVnYWN5LXRydW5rCisxMzIxMyBiMmFhZTcxOTg3MjM4Njc5NWYzYjEyM2VmZTYzNGNhNGY2NjRjY2Q1IGxlZ2FjeS10cnVuaworMTMyMTQgMTRmNmUwZGM5NjIyOWZjZTFkMmQwOWJhZTk3MDhlZmIzZTMxZjY0NCBsZWdhY3ktdHJ1bmsKKzEzMjE1IGQ4YjJmODJmMzNlZDJkZGU0MTUwODNhYThiYTExM2VjM2Y0MGE0YWIgbGVnYWN5LXRydW5rCisxMzIxNiBjZDAxYmExMGE5NjJjMDlmYzQ1MmM4YWIwZDcyYWRmOTM0MWMxZGIwIGxlZ2FjeS10cnVuaworMTMyMTcgNDkwZWMwYzQwY2M2MDBjYzdmMGIwNTUwMTEzMzU5NTBlZWQ2YjU1MCBsZWdhY3ktdHJ1bmsKKzEzMjE4IGNmZDA5MzJhNTNlNDkxZjgzYWYyNDc5MjM2NDEwZjUyODg4MzlhOGQgbGVnYWN5LXRydW5rCisxMzIxOSA3NjY4YmNkZTljMGFkNjQwODcyMTI4Y2I3MGM1ZWI4ODVhMzY2YTI3IGxlZ2FjeS10cnVuaworMTMyMjAgNjcxMjFhMmM2MmJmOTMxNGNkMWQ5YTRkZDk0YmNjOGRkOTk5NmQwZSBsZWdhY3ktdHJ1bmsKKzEzMjIxIGJhZjY2ZDZlMWJjMTZkMjFmZjAxMjcyMmY5ZTNlZWQ1N2MwYjg0OTIgbGVnYWN5LXRydW5rCisxMzIyMiA4MGQ0ODg1ZWRkNjY0MDhhZTJhYmY5YzhmYzMzYzFjYjkwYTc2ODlmIGxlZ2FjeS10cnVuaworMTMyMjMgZmUxZTk4MTkwYWY2ZWU4M2EzZDQ1MjQ1NGRjYmNmYzUyOTIxYTM2NyBsZWdhY3ktdHJ1bmsKKzEzMjI0IGYwOTUwNzdkMjBiMDJlMmY1N2M4NmQ1MGRjNjRkZjUxZDhkZmI4OWUgbGVnYWN5LXRydW5rCisxMzIyNSBlOTk1YmNjNGNjODIyNGM4ZTg3OTEzYzhkNzZjMDA5NGUxN2QwOGYwIGxlZ2FjeS10cnVuaworMTMyMjYgOWY2OTVhNTQ5ODY1NDhjOTc0ZDkyNTc3Yzg5ZDdjNjk1OGQ2YTg3ZCBsZWdhY3ktdHJ1bmsKKzEzMjI3IGYzMzVmYTFkNmU3MTVlYThjMzNmOWFjM2ZiNDU3ZTY0OTBkM2EyYWEgbGVnYWN5LXRydW5rCisxMzIyOCA0ODAzN2Y0ODE0YjExMGMwYzE0NTgxODk4OWNhYTA3MTJhNjRiM2JmIGxlZ2FjeS10cnVuaworMTMyMjkgZjNjN2ZmN2E2ZTgxYWI1NjQyNThiMjFlYzAwNWY3YTYwNjUyZDc4OCBsZWdhY3ktdHJ1bmsKKzEzMjMwIGI2ZDFhMzJhZWQ3NjM4YmViNzgzM2U2ZmE0MDE4YjkzNDU4ZTIwOTIgbGVnYWN5LXRydW5rCisxMzIzMSA4ZGU3ZDkwYjBiMzRmZTRlZGQzNmI5NmYzZTg4NDE4ODVjMTUyZDNiIGxlZ2FjeS10cnVuaworMTMyMzIgOWU1ZGY0YzQ5YTU2NzU0ZGZjYTljYzQxN2Y4OGI0YWU0YWY1YWQ2YyBsZWdhY3ktdHJ1bmsKKzEzMjMzIGVlYTFhYjAyOGY0MzFlY2M2ZGVmODgyOGQzMTA5MDcwNTdhN2I1YzggbGVnYWN5LXRydW5rCisxMzIzNCBmMzg3NjkzMDg0Mzg2MmUxYzg3ZDljYmJhYTY2MmI5OTJlMzkzMDRmIGxlZ2FjeS10cnVuaworMTMyMzUgYzVmNDQ5YWE0MzQ1OTIxNDE1OWQ1NTRjMTFhMDMxMWZhNTE0MTk1MiBsZWdhY3ktdHJ1bmsKKzEzMjM2IDI0NzVjM2NmZTgzOTAzMjZlODgyYzJkMzk2OWJjOWM0MjBmN2RjM2IgbGVnYWN5LXRydW5rCisxMzIzNyBlMDc1MjcyZjQzZjI2NTY4OGY5ZWVjYTUxMGExMWRlNWJlNzI2Y2ZmIGxlZ2FjeS10cnVuaworMTMyMzggNjEwNTFmZDY1YWFiMDgxMDVhOTU3NzliMjFjZjRjODI4OGVjYmU0OSBsZWdhY3ktdHJ1bmsKKzEzMjM5IDI2NjY0ZDA3OTU5Nzk5NTkyYmJmYWFkMDk1MjY1ZGJlYzkwMjc5OWQgbGVnYWN5LXRydW5rCisxMzI0MCA3NDQyY2NlZGQ1ZmQzYzAyYjkxYzMyN2EzYTAxNmQzMWMyOTZhNjFmIGxlZ2FjeS10cnVuaworMTMyNDEgZWM2NjQyNTRlZjVhYWE5ZTFjMzc3NGZlZmUzYTJmZDkzMzk0MDZjNCBsZWdhY3ktdHJ1bmsKKzEzMjQyIDI3MzcxYjZkNzBjMTExZDZhNmMxNWI3MjY1YTVjZjc5MmU5ZmEwNjYgbGVnYWN5LXRydW5rCisxMzI0MyBkZjE1NGRhMThmMGVhMGRmYzFlZGY3ZGIyMDczMzdmZTY0YWRmMTNlIGxlZ2FjeS10cnVuaworMTMyNDQgZTRlZThlYTRlODM2OGQyZjNkYTQxOGEyMzYyNzg0ZGYzNmYxYWNmNyBsZWdhY3ktdHJ1bmsKKzEzMjQ1IDAzZTc0YzRiMTg5YzlkYTU0OWYyYzUwOTBlMTA5ZDUzOGY5NDkxNGEgbGVnYWN5LXRydW5rCisxMzI0NiAwOWM2YjJjZWJlZTljNjFlODY1YTI3Y2MwMjJiNDk2MjQ3NzYwODViIGxlZ2FjeS10cnVuaworMTMyNDcgNjc2ZGU4YTdhM2NiZDI1YTBmZDlmZmVkZmEzZTFkMmMxOGU5M2RhZiBsZWdhY3ktdHJ1bmsKKzEzMjQ4IDg1NTg4N2EyY2M2MDE3YzZkOGE3OTZmODMyMDBjYTEwNmI0MzFmMjcgbGVnYWN5LXRydW5rCisxMzI0OSA0YzlkZTZmZDI2N2I5M2ZhY2JjYzEyY2I4NDVhNThlNmUzNWVhOTYzIGxlZ2FjeS10cnVuaworMTMyNTAgM2U1YjA1MDM1ZWI5ODQyOWU2YWZkZDNlMzUwYmJkMDM1ZWNiN2ZkOSBsZWdhY3ktdHJ1bmsKKzEzMjUxIDRkYjM2OTFiOWM4NzE1ZmNiZjhkODQ1N2I0MTMwOTY2Y2E3NmNhOGYgbGVnYWN5LXRydW5rCisxMzI1MiBlN2ViY2ZkZTNiNWU0MjcxYWM2MWRjZDc3ZTM3ZTE4ZjE3OWY0ZWExIGxlZ2FjeS10cnVuaworMTMyNTMgZjBhNjE5ZWViZTlhMmEyNzMzMWU1ZDcxMmUxMmFiZGMwZjhiMzI5NCBsZWdhY3ktdHJ1bmsKKzEzMjU0IGEwZDRhOTU3ZmQ5MWMxMWYwN2FhNWU2NzUwZWUxZmFjMDI4N2EyMmMgbGVnYWN5LXRydW5rCisxMzI1NSA4ZjM2NjViYjllM2UwYzgxMmRhZjE3MzQ4MDUxOGQ4YTkzZjE4YzBmIGxlZ2FjeS10cnVuaworMTMyNTYgOGVkYmQ1YWI2MjE3NTcwYmVhZGIwMWJlZjJmMTFiZTYxYzc3MGRiMSBsZWdhY3ktdHJ1bmsKKzEzMjU3IDhlZWY2ZjY3NTY3N2M1N2MwZDQ5ODljMzJiNTZlNzM4M2E2YjdiOWMgbGVnYWN5LXRydW5rCisxMzI1OCA4MWY1NGMwMGUyMjRmZTViMWRmYzQ5YTgxNWM3ZGZjYmIzZDc4ZTk2IGxlZ2FjeS10cnVuaworMTMyNTkgY2RlOWIyZTY0YzAwOTdlMTkwOTRjN2U4NTdlYmY5MjIwYzVlNzgzNSBsZWdhY3ktdHJ1bmsKKzEzMjYwIGJmYTBjNzQzMzQ3YTlkY2M5MjJmMWE4ZTdjN2FlZGYxMmFkYTg4OTcgbGVnYWN5LXRydW5rCisxMzI2MSBmMWIyYmI1MzVlYjM2M2M0MDkxMjhjZmMxYjg4ZGQ0NzE3OTFhMDFiIGxlZ2FjeS10cnVuaworMTMyNjIgM2M0ZGI2YzZlOTc5M2NmZjYxYTNlNDM0NDY4YTBkYjQ4M2JlODg0MCBsZWdhY3ktdHJ1bmsKKzEzMjYzIGVjZTA5OGYzZTFkYzhlZDBiNGVhNDlhMTAwYWRjOTljZWQ4MmQxMGEgbGVnYWN5LXRydW5rCisxMzI2NCBhYWE1Zjk4Y2IyZDZkOWM1ZWU1YmE4NjFmM2JmZWUyMzRjYWZlNjFkIGxlZ2FjeS10cnVuaworMTMyNjUgNmEzOGU2NjdkMzQ5ODA4Y2EzZDFkZDgyMWE1ZWU3OTI1M2I5ZGE5YyBsZWdhY3ktdHJ1bmsKKzEzMjY2IDA1ZDcwMzAxNWRlMTU0ZjliZWQ5NWI5M2E4MWI3NjhiNWNkNDM3Y2YgbGVnYWN5LXRydW5rCisxMzI2NyAzOTNhNmRhZjI4OWRlMzg5NGM2NWY5YjA1OGNlYWY1NjQzNmY5NTMwIGxlZ2FjeS10cnVuaworMTMyNjggMTUwYWMwZDcwOTI5MjI0OTRhZjI2OGI2NjRjZDkxM2JhMTRkMDIxMiBsZWdhY3ktdHJ1bmsKKzEzMjY5IDkyYTkyZGU5NTliOWUyNGJkZjliMmUzMzY5NWEzOGI2ZDM4ZWYxNWMgbGVnYWN5LXRydW5rCisxMzI3MCAzZjBhNmIxNTY5ZTdlNmVhOGU3MWIzZjg0ODk5OTMwYWVkOWY2MzYwIGxlZ2FjeS10cnVuaworMTMyNzEgZGJjYTQ3MGFmOGYyNDg3MTkzNDljNjkwZTMwMTRiYTU1NGQ0YTRiZiBsZWdhY3ktdHJ1bmsKKzEzMjcyIGUzNzA3NGI2ZTc4Y2Y0YWI3MWExYzhmNWVkYTQ1MGMyNzA0NzE3YWEgbGVnYWN5LXRydW5rCisxMzI3MyBjNmE0ZTQ2ZjFiMDlkZGUzMjUwNzUzN2IyMmM2NTIxNjczNWVmM2E4IGxlZ2FjeS10cnVuaworMTMyNzQgMWFmN2ExNDY3MDg4MzhhZTBmMDg0YTRlZWY3NzU4NDY4MGZhNjljZSBsZWdhY3ktdHJ1bmsKKzEzMjc1IGZiMTczM2I2YmVmNWVhYzBlYjNjOTUwNzQzMjZhYmI1MTYzMWM2MzEgbGVnYWN5LXRydW5rCisxMzI3NiAyZjZiMTI3NmU1ZGM2NDI5ZmE0NDI0NTc5M2U3OGJmMWFjNjMzMGE5IGxlZ2FjeS10cnVuaworMTMyNzcgNDQyNDgzZjQ1MzQ1NTg1YTcyYmIyMzk2NDYxMmVhNDExMzIxYmNkZCBsZWdhY3ktdHJ1bmsKKzEzMjc4IDJiMDE2NmQyMjU1MTNlNGQ0MzVmYjU4MjQyMDRmMDc1M2YwYTYyN2YgbGVnYWN5LXRydW5rCisxMzI3OSAxZDdlYmJmMWYwZjI3NTUwODk1NGY1ZDQwNDFjODg3NDc0Y2MxMTc4IGxlZ2FjeS10cnVuaworMTMyODAgZTBlOTNlNDE2NmNlMmQ1MDgyOGJlMzY1ODMzODA3NzhiZDNiZDg0YyBsZWdhY3ktdHJ1bmsKKzEzMjgxIGMxYzcwYjc0M2RmMmU3OGI5ODdmNjhiYmQ3MTE4NDljNjRlNzJmOTMgbGVnYWN5LXRydW5rCisxMzI4MiA5NjY1OTRjNmIxZTI1NmFkYTUxYzFmZTU3NDRmMmE1MDM2MGM3ZDU0IGxlZ2FjeS10cnVuaworMTMyODMgYjcwODk2ZWI4OTQ0MGU5MDdkMTA1MGFhYjY2NDhlNjM0NmMxYWIwZCBsZWdhY3ktdHJ1bmsKKzEzMjg0IDlmMGYxZDhlNmViYWY3ZTczZjkxYjY1OTAxMGM1YWMwOTdmYTQ4ZjMgbGVnYWN5LXRydW5rCisxMzI4NSBiMzlmZTUxMjk5YmU5ZGFlOTRkODVkNDY1ZmIzY2U0NTZiOWE4Y2FmIGxlZ2FjeS10cnVuaworMTMyODYgNDc5YjRkMWMwYjQ3Mjg1ZGY2NmFjYjYyNzA0ZmE2ZDc3MGJmMDFkYSBsZWdhY3ktdHJ1bmsKKzEzMjg3IDU0YTMwZDZiMDFmMTA4YTgwNTQwOGUzNTIyMTAwZTY2NzA4NTY1ZDcgbGVnYWN5LXRydW5rCisxMzI4OCBjMzljMTQwYjA0YmNjOWNmM2EwMzMyY2Q3YWY5ZDIzMjA1YmUyNGJmIGxlZ2FjeS10cnVuaworMTMyODkgMzJlNzhjOWZiNDk2YzM4OGRkMDNhMWJkNGNiOTdiZmE2NGZhYTIzZSBsZWdhY3ktdHJ1bmsKKzEzMjkwIDVkYjJjMDQyN2NhZDM0YTQ5OWMyOWU4NjUwMTUyZjc4YjdmZWFlNWQgbGVnYWN5LXRydW5rCisxMzI5MSBhMzRkNjY1NmY4ZTJkZGZhOTJmN2M0MjcxYWM4NmMzYzQ0N2ZlYjdhIGxlZ2FjeS10cnVuaworMTMyOTIgMWJmYWE1Mzc0ZGY5OTc1OGIxNGE5MTFmYTZlM2EyZDhiMjdiNzAyNSBsZWdhY3ktdHJ1bmsKKzEzMjkzIDMzNWI0YzAyZjEwZGYwZDkwMGJhNDQzNjMzOTBhZTdjNzEyMmM5OWYgbGVnYWN5LXRydW5rCisxMzI5NCA3NjczNTFmNDk0NGFiYWRlNDFjMWU1ZjBkZTJiNDdiNmQ1MWQ1MGIwIGxlZ2FjeS10cnVuaworMTMyOTUgMTA1YmVlZDA2OGY4ZTYyZDI3M2IzZGQ1ZjFlYjA2OGRkMmQzM2Q1ZSBsZWdhY3ktdHJ1bmsKKzEzMjk2IDJkMzZmMDY4OWI4YTNlMDU1OWI3ZWJhMzQ1MzE1ZmJjMjZkMzQ0ZGYgbGVnYWN5LXRydW5rCisxMzI5NyBiMDE1ZDVmMWRhMWI1NzE3OTFmNDQwZjRiZDk1YTJiZjA4NjVjM2ZjIGxlZ2FjeS10cnVuaworMTMyOTggN2M0MGQ3YzFlZWY5NGY3NzAzNWFhYjg3ODkwYWRmYWQwOGEzZmM2ZiBsZWdhY3ktdHJ1bmsKKzEzMjk5IDg4NWFiZTA4ZWEyZGVhYzkzMzUwN2QyMTc5Njc3MGEyNzljZTk2N2MgbGVnYWN5LXRydW5rCisxMzMwMCA5ZWZlMDY3OTQwZWFhODdmOGIxMTkyY2U4NmFiZmQ3MjFmMzdhNmEyIGxlZ2FjeS10cnVuaworMTMzMDEgOTRjN2EzZjFjMDA1ZTY1OTQ3MjFjOWE4NWZiZjE3NWUzMWVmYjI4OSBsZWdhY3ktdHJ1bmsKKzEzMzAyIDhmMzExMDNjODhhOGUwN2U1NWQ5MjMyNjc4MzBhNDkwOTlmOTlkZGUgbGVnYWN5LXRydW5rCisxMzMwMyBkMjBlNGQwYWZiNDM2MmQ4OTI1OTkzN2U0N2IyNDQ3YzJlYzE2NmMzIGxlZ2FjeS10cnVuaworMTMzMDQgMzEyZWI0ODAxYTFjODE2YmJlOTQ2OWNkYWFmN2M2ZDBkOTcwYmNkMSBsZWdhY3ktdHJ1bmsKKzEzMzA1IDNkMmVhNTViYzRlNjhhNDgwZjU5NDg2YjYwMjc0MDkzZjA0Nzc2ZDAgbGVnYWN5LXRydW5rCisxMzMwNiA4NzlkMWFlNWM3YTViY2VkMmUwNDlmZTljYjFmMWNiZjY5YzY2ZjEyIGxlZ2FjeS10cnVuaworMTMzMDcgNzgxMjM4MzYxZjUzMWUzYzUwMTk5NDU4MWFjMjQ2MmViY2FkOTk1OSBsZWdhY3ktdHJ1bmsKKzEzMzA4IGFlYjEzY2I3Yjc4Y2E1ZTgwODRiM2E2MzBmZjM4MWQyN2QzNDFhZTMgbGVnYWN5LXRydW5rCisxMzMwOSBiODhhNjA1MjQyNjkwOWQ2MmI3NmU1M2VkMGExMDg4MGM3ZDI4ZDU1IGxlZ2FjeS10cnVuaworMTMzMTEgN2VhMzg1OTdlNzBmYWJiZGI0NWYyM2JjMzY5NzZiNjNmNjZjMTEwZSBsZWdhY3ktdHJ1bmsKKzEzMzEyIGZmYjJhNDdiNjQ1ZWM3YmYxYTViYmRhZmRlMzBhNDcxMGQ5NmNlODkgbGVnYWN5LXRydW5rCisxMzMxNCBmMTY0ZDkxOTMzNDFjOWI0ZjA4ZTQzNjg0MWRiYzM0NmJlMGViMmQ2IGxlZ2FjeS10cnVuaworMTMzMTUgMGZlOGNmN2FjNmQ1YTM1NjQzOTQxNTE3NmYyZWVkZTQyOWI4Y2QzYiBsZWdhY3ktdHJ1bmsKKzEzMzE2IGRmYmUyNThlMjhjMTgxN2RhMjIyOTEwNzFhMjVmZThjYTdiNGIwMmEgbGVnYWN5LXRydW5rCisxMzMxNyA2ODc5OWEyMDI3NjZhMTQ0MWE3ZjE5YzQ2OTYzNTQ5ZjBkNmE4MDgxIGxlZ2FjeS10cnVuaworMTMzMTggZDczYTMyOTNjNDdiMmNkZjFlODVmN2QwMzhiNmNlOTJmODM1NmM4ZSBsZWdhY3ktdHJ1bmsKKzEzMzE5IDVhZDI3YWVlN2U1ODg2MWY2MjVmZTdlZDg2NzAwNjMzMjA0MWE0OTcgbGVnYWN5LXRydW5rCisxMzMyMCAyZmUwYmI4YjllZWY3OWJiZGFhMWI3NzUzMDFmYTAzMTE5MzcxY2ZmIGxlZ2FjeS10cnVuaworMTMzMjEgOGRlMTNjZWE5NjQxMTIyNjg4OWRhMGU4YjFkNWNiZjExMjQ5OWY0NiBsZWdhY3ktdHJ1bmsKKzEzMzIyIDMzMWM4NWFjYTE5NTcyYzJmNTkzY2IwNTQxODI4YWMzNDYzY2Y1MzAgbGVnYWN5LXRydW5rCisxMzMyMyBjMTJmN2NmMTkyZmIzMzg2MDk4Yjg2MWM1OTljM2UzZTMwNGZkZmI3IGxlZ2FjeS10cnVuaworMTMzMjQgZDI2YTlmOTI1NGYxNGRjMzE3OTY2MDQ2OTE4NTVjNWQ0ZmVhMjQwOCBsZWdhY3ktdHJ1bmsKKzEzMzI1IGViN2E2MmFjZGQxZGM1YjRmODNkZTRkOGQzNGVlMTM4NTQzYTBiM2UgbGVnYWN5LXRydW5rCisxMzMyNiA1ZTAzZWE2OTI3ZjIwNmY1NjAwOTIzNGJkMTJiYzE1YWUxOGM4ZTQ1IGxlZ2FjeS10cnVuaworMTMzMjcgZGZiNWZkYTNiMjczYWQ3NGNhY2ZmZGRlMmMwOGZiNDgyYjkyNjgxYSBsZWdhY3ktdHJ1bmsKKzEzMzI4IGQzYzZlOWExMjZiMjlmYWM2ZDc4ZjI3YjdjNzNkZDI0YmUzYjcwMTkgbGVnYWN5LXRydW5rCisxMzMyOSA0OWEwYjhkY2IzNmE0ZTI2OTI4YTI2ZDE2MGIyZjA5Y2M5MWJjZmZjIGxlZ2FjeS10cnVuaworMTMzMzAgMGJjN2M1MDJlYjRkMmVjYzNhOTY4NmY0Y2U5OWYyODRiMDhhYzFmMyBsZWdhY3ktdHJ1bmsKKzEzMzMxIDk2Mzg5ZjBiNWVmMDg2YjRmMzhmM2NhNzZmYjBiZTI0NzY5ZWVkNTcgbGVnYWN5LXRydW5rCisxMzMzMiBmZTViN2RlYTVhMTBmZmFkYzI3M2RlYWVhODQzMTIyZDMwMWIxY2VmIGxlZ2FjeS10cnVuaworMTMzMzMgZWE4MzJjM2M2ZTZkYTI2M2E0OGNiNDM4MDA5YTY5OGY5ZTBiM2U5MCBsZWdhY3ktdHJ1bmsKKzEzMzM0IDJhMzBlZDkxMTJjNjFkNTljOWEwZGFjMWU5MTY0YjA5MmE4OTY2ZjkgbGVnYWN5LXRydW5rCisxMzMzNSA2OWQ4OWY3ZjUzMGM1Yzc5ZTk1N2YzZjRmNTgxZWY2ZTJjOGEyZWYyIGxlZ2FjeS10cnVuaworMTMzMzYgMzkxYTljYjJiMDcyOWY3MmEwMTU3YmNhODg5ZmJiMjZmZDVjZWMxZCBsZWdhY3ktdHJ1bmsKKzEzMzM3IDAwMzQ0ZGJmMmE2MDUyOTQ5ZWY1ODg4YzdiNDdhNDUwMDkzMTM0NmIgbGVnYWN5LXRydW5rCisxMzMzOCA2NWRiNWUyNjI5OGYyNjZkOGFiNDlhZTAzNGVjNzJjYmNiNzgyMWI3IGxlZ2FjeS10cnVuaworMTMzMzkgYWFlMTRjNjE4MWI5ZDg4ZDVkYzM5ZGQ1YTkzOWU2MGQ1YjJmNmEzNyBsZWdhY3ktdHJ1bmsKKzEzMzQwIDEzNWMxZWM5NjM2YzY4NmEyMGQwM2VkMjc3YTM1MzgyNGM5NzQyNGEgbGVnYWN5LXRydW5rCisxMzM0MSA1NTgxMzA3ZGIyZjczN2U2YTM4ZTJkNWM3MTM0MTRiZTIxMDZlOTFiIGxlZ2FjeS10cnVuaworMTMzNDIgZTY1MjQzNDZkNjZjYzE4NTliOWQ1OTZlNDAwOTM1MDc3ODE5ZmVhZSBsZWdhY3ktdHJ1bmsKKzEzMzQzIGVmZDE1NzNhNGIwM2IyMmRhMmExMDdlZGY3ZjAxMjUzNjQ5M2VjNDUgbGVnYWN5LXRydW5rCisxMzM0NCAwYmYzMDE5NDFlZmQ4YzUzMzU3ZmFjMTRhNDllNzFhNGUyYzkxM2FkIGxlZ2FjeS10cnVuaworMTMzNDUgOGZkYWM0MDI1MDMyNWY4OWJlN2U5NmQyM2QyMGNlYTFjNmJjNmMyMSBsZWdhY3ktdHJ1bmsKKzEzMzQ2IDg0YTRlY2QyY2I5NTM4MjQ4NmRkZTNlYmEwNDU2YWU4ODRiOGVlZWQgbGVnYWN5LXRydW5rCisxMzM0NyBhZWU3NGU5NzdhZGQwZmY3YTBhYmE3MjI5ZDA1NGFlYmE0Y2U1NzI2IGxlZ2FjeS10cnVuaworMTMzNDggZmE2YmUxZDBiODY0NWEzM2ZlNWI1YjMxZmM5NjllMDE5NjM2Y2M2MSBsZWdhY3ktdHJ1bmsKKzEzMzQ5IDM1MmU1ODI0ZWRhNjY2MGE0MTE0OGZjZWRmMzA0NjJiOWM0NjQyZDAgbGVnYWN5LXRydW5rCisxMzM1MCBlMWI4NmVmNDU1N2M1NzU5MmZhYmE5ZTkwNWY3NTM3ZTZkMmQ0ZjQxIGxlZ2FjeS10cnVuaworMTMzNTEgY2RmN2FlNWIzMzY3ZWVlNmU0ZGEyNDRlM2Q2NzA1ODJlYjk3OTc5ZCBsZWdhY3ktdHJ1bmsKKzEzMzUyIDVlZjRiM2NhNTU2NDU3MTJmNTYzZGZjMzJhNGIyNWE2OTMwYWNhNjcgbGVnYWN5LXRydW5rCisxMzM1MyBiNzM3OGRmM2RiNTZkNzA0MzE2MjdjMTdkOWJhYmNhY2JkOTE3ZjJiIGxlZ2FjeS10cnVuaworMTMzNTQgYzdhYTk5NjU4MzgzZjI3ZmIyNDJlNTY1YTI3OTg3YzFlM2MwNzM1MiBsZWdhY3ktdHJ1bmsKKzEzMzU1IGQ3OGNjMjY3NmM1NTFiNjcxODc0MDQzMmVmM2MzNzcxM2M5ZTk1Y2EgbGVnYWN5LXRydW5rCisxMzM1NiA0ZGE3NmY4MzhhNWU0ZWQ1YzNlM2IzMzE2YTNiMzZjNjkwZDI3MDIzIGxlZ2FjeS10cnVuaworMTMzNTcgYTE0MTVlY2VhMjNkNGEzMjFkNzFkYWRjNjU2MjQwOTU0MWJjYjcyNyBsZWdhY3ktdHJ1bmsKKzEzMzU4IGZjYjI1MzM1ZDZhZWRmMmMxZTVlZDlhOWUxNmM5YmZkNjAwYjM3NzUgbGVnYWN5LXRydW5rCisxMzM1OSBiMjdhZDUwOWI0NGIzNTAyNTY2MzljNTI5ODAwYzY3OGZiMzQxN2ZmIGxlZ2FjeS10cnVuaworMTMzNjAgZTJmZTY1ZTg3NzYxYjg4MGM0MGJmYzZlNzZkOTk1ZWM1OGI1MGY1ZCBsZWdhY3ktdHJ1bmsKKzEzMzYxIGYyZTEyM2FmMmFkYTQ0NzEzYTdjNGE2NDgwMWRkMjJjYmZjZGJhM2IgbGVnYWN5LXRydW5rCisxMzM2MiAyODg4N2Y0MGUzNDQyZTBiNTFkNDQ5MGE3MTI1MTY3NDczMTY3MGQzIGxlZ2FjeS10cnVuaworMTMzNjMgYmUwYWM1YWJlODNiN2I2YWI3ODFlZTJjZWJkMWNhZTY2NGYyNjNiZSBsZWdhY3ktdHJ1bmsKKzEzMzY0IDFhYTgwZjViZjlhYzkxZDNjMDEyYmQ2YWFiNzRjOTFjM2NiOTAyOTYgbGVnYWN5LXRydW5rCisxMzM2NSA4MjAyZjVhY2UyNDg0OWFmNzUxZjNiMWU5YTk0MDk5MzVkN2M3NzBmIGxlZ2FjeS10cnVuaworMTMzNjYgZTc1MjUwZTU1NDI0ZjQxZDk0OGI2NjEzMGI1MzQ4NjAyODQ0MTdhOSBsZWdhY3ktdHJ1bmsKKzEzMzY3IGNmZTQ3MjkxMmI3ZjhiMDI4MmU3NGRhOGU0Y2IwN2E0OWQyMzg1ZDAgbGVnYWN5LXRydW5rCisxMzM2OCA5YTNhMDQ2OGY1MWM3Zjk3ZmIzNDIyZTlkYzA3ZDc4ZjdlYmQ5NDBlIGxlZ2FjeS10cnVuaworMTMzNjkgNGY1ZDQ5NDU2MDVjNjdkMzRjNzU5YzdhOWU4MjU3YmUzNTEzYzZmOCBsZWdhY3ktdHJ1bmsKKzEzMzcwIGY3YjQxYjI3MDU1NDgyMTgzZGMyZmRiZmI4NmY0ZmExY2YzZjlhYWYgbGVnYWN5LXRydW5rCisxMzM3MSBjZDJhMjViN2I0Mzg1OGU1ODUzZmFiOWRlNGQ3YmNlZGU3YzFiN2NlIGxlZ2FjeS10cnVuaworMTMzNzIgM2VkYjMyOTgyMzRjZDBiMThlMmM0NDdlNTlkZGY2ZGQ5NzI0NmM3NCBsZWdhY3ktdHJ1bmsKKzEzMzczIDI1MTM4ZGIzNWNlMWVkZTdkN2YxZGZlZGE4ZWEwMzlkZWUyZWYzZTEgbGVnYWN5LXRydW5rCisxMzM3NCBiYmMyYTg3ODk0ZDA4MjkzMWYwN2EyMDE3NjIwN2U4ZGRmYWVmZTJkIGxlZ2FjeS10cnVuaworMTMzNzUgN2QxMTgyZDBjNDE5M2VhMTE4ZWVmYjExZjA2MzZmNjFkYTZmZTQ3OCBsZWdhY3ktdHJ1bmsKKzEzMzc2IGZmZmY2NjVmOGE3YmYyOWVmZjU1NjE2NWEyMzZiODU1OGE3ZThkMGEgbGVnYWN5LXRydW5rCisxMzM3NyA1YzVhZTE2MWYyOGFjMDQwNmI5YjNjZWQxMzM4MTI3YWEyMGExNTg0IGxlZ2FjeS10cnVuaworMTMzNzggNzU1MGEzNWQ4MGY5YmFmZmNiYWFhMjhiOWEyOTk1MWRiYWZjMDIzNSBsZWdhY3ktdHJ1bmsKKzEzMzc5IGE1NjM3OTIwMDA3NzBlMTYwOWIzY2Q3N2ZhZGM1ZTllNDU0ZTkyYzAgbGVnYWN5LXRydW5rCisxMzM4MCA5ODY4YzgwNzczMmQ1ODcwOGQ2NTAzMzYzOTQ2MzI4ZDI4MzkwZTJjIGxlZ2FjeS10cnVuaworMTMzODEgODYzNGVhMmVjNGUyZmRjMmE3MGQ1NGRmMTZmZjc0ODM1YmU0NjRkZCBsZWdhY3ktdHJ1bmsKKzEzMzgyIDE4MjFlNjRlMDhmY2VkYThmYzI4ZTEwZDEyZDhkMGFmOGI0NWRjNDMgbGVnYWN5LXRydW5rCisxMzM4MyAxN2FlMTc4YTMwMzg4YzRjZDFmMDNlNmYwNzQwMTMzNjY0NDYyNTM2IGxlZ2FjeS10cnVuaworMTMzODQgMjY2OWFjN2NkNzZhOTZmODcxMzIwZWJmOTI3ZWY5YjAzNjEyYTQwYSBsZWdhY3ktdHJ1bmsKKzEzMzg1IGI5ZWY0MjQxNjVkNjI1M2QyYmQ1ZmQ0NjA4MzY0YWY3MjlhMjc0MzMgbGVnYWN5LXRydW5rCisxMzM4NiA1MDIwYmZhNzQyZWFhNzUxMWM2MDg1MTU4NmQ2MTgwMGNkZDRmZDMzIGxlZ2FjeS10cnVuaworMTMzODcgZjg4ZDNhNzYzNzIzZDViYTBiZTc1OTljZGEzZmZiY2U2MGI2NmVhYSBsZWdhY3ktdHJ1bmsKKzEzMzg4IDgzOGNiMzRhYmI3OTE5YzM0MmYyNDNhOTYwMzI4YjM2NjBkMGFmZGQgbGVnYWN5LXRydW5rCisxMzM4OSAwNmRlZjgwNDJkOGUxNmZhMDEwNjU1YTA3YmVjMDE2YTUzMzQxYTViIGxlZ2FjeS10cnVuaworMTMzOTAgYzIwOWRkOThiODY5NTI1YTFkZGY5ODhiNjdmMzAzZTE5NjE2OGVhZiBsZWdhY3ktdHJ1bmsKKzEzMzkxIGYwMzE4YTFjOTg5MmNiNTcyN2Y4NmQxMjdlMzk5MmZmMmE2Yzk3MmEgbGVnYWN5LXRydW5rCisxMzM5MiA2MmVkMzJlNzliNWQyOTYyNDYzMzQwN2QwZGNhMzM5NDI0ZWNkYWRhIGxlZ2FjeS10cnVuaworMTMzOTMgODIyYzUyODJjMTQ1Njk3ODk3NTU3ZTc1NGJkZjkwYjI1ZmQ1MTlhOCBsZWdhY3ktdHJ1bmsKKzEzMzk0IGFmMDczODljODUxNzVmYmE1OTQ4MTU3MDJmZDZiZjJiMmRkYmI4MzQgbGVnYWN5LXRydW5rCisxMzM5NSBiYTZkM2FlM2EwMjE0N2EyMTZmYWU4MDcxMzc3ZDljMzA3YmRkODgxIGxlZ2FjeS10cnVuaworMTMzOTYgYTYyOGMzNzA1ODk3YWNlYmE2Zjg0YjEyMDI3MzdjNGU1MzUyY2MxOSBsZWdhY3ktdHJ1bmsKKzEzMzk3IDYzMmI2NzA1YmQ5ZmFkZDYwM2QxNDkwZmFjYjQwNDhhZTNjN2RhMGIgbGVnYWN5LXRydW5rCisxMzM5OCBiODEzNjU2NmNhZjVjMDBlMDc5NWQ4YjNkNWQ1OWU3YTQzNmI1NTdmIGxlZ2FjeS10cnVuaworMTMzOTkgNjc4Mzg0MmMxMDQyNDVjMDM2ZDNkOWJmMTEwODE3YTIxYzRjYjcyMSBsZWdhY3ktdHJ1bmsKKzEzNDAwIGQzOGQzYjhlYTQ2M2JmY2YxZWIwOTRkYzY1YThlNWEzOWI0YjYzZjQgbGVnYWN5LXRydW5rCisxMzQwMSBlMTgzYmMwMDQ5ZGNkZGMwMDM2NWU1OWEwODEzYzhiNDY5NzAzM2ZkIGxlZ2FjeS10cnVuaworMTM0MDIgNzQ4Njc5NmZhZTViOTQ0NWZkYmNjYjc5NTljNmUxYjViNWZlZDU1NCBsZWdhY3ktdHJ1bmsKKzEzNDAzIDgxN2QwNTM4MzUwZDMzNjQ0NzEwMGMzYjFjYzc5NzdhMDAxNmM0M2IgbGVnYWN5LXRydW5rCisxMzQwNCAzZTQxOWFiYzViYWFkY2ZiMTA5M2ZiODgyYmE1NjA1MDZiMDE2ODViIGxlZ2FjeS10cnVuaworMTM0MDUgOTU4MzdlMjczMjU3NTlkMjM0Mjc4YWQyZmVkYzk3MjhmN2Q0MDU3OSBsZWdhY3ktdHJ1bmsKKzEzNDA2IDg1Y2Y0OWE5YjAwYmNlZTczZmExNzQ3NzViNDYyNGI5NjcxOWZjMWYgbGVnYWN5LXRydW5rCisxMzQwNyBhNTllOTVkMmYxODEwYjQzNjY5NzQyN2ViYzdiZDU1M2ZhMjFlOWQ4IGxlZ2FjeS10cnVuaworMTM0MDggMTdjYTJmNjRiNmQ2NzE3Yjc4OGNlZGNiYjI0NDg1ZTA4NGJiYzRlMSBsZWdhY3ktdHJ1bmsKKzEzNDA5IDdlNTZkMzlkMDc0MTE0MzI2YzY5Y2E4MmZjMTAxYWIzYTNjZDgxZmEgbGVnYWN5LXRydW5rCisxMzQxMCBmMGEyMjEzNDQ0YTA0OTQ1ZDVkMzhmOGI1ZDFiNzhhMmFmYjdlOTU5IGxlZ2FjeS10cnVuaworMTM0MTEgOTU3YzMzNTA0Y2MxMjRkYWY3MWFmYmFmZGYyZWZkYmU5OTlkNTk5MCBsZWdhY3ktdHJ1bmsKKzEzNDEyIGQzMTc0MzIwZTNjZWM5YmVhZDU5OTIzYWIzMzBkYjI5NTgwMDU5NzkgbGVnYWN5LXRydW5rCisxMzQxMyBmNGM2Y2U1NTkzYjlkNjBkOGJkZjYyYTZjNDhjMTUyOWIxOGNjYTYxIGxlZ2FjeS10cnVuaworMTM0MTQgYzI0NTE2MTQ2ODVhYzRkOGViNjQ4NmQ4NWVhNTRmYTM1YWQ2YmExOCBsZWdhY3ktdHJ1bmsKKzEzNDE1IDI5ZTk2Mjc1YTQyZGNiNzk1ZDU1ZWU4M2M5NTgwMzIwMjdkYjUyZTAgbGVnYWN5LXRydW5rCisxMzQxNiA4YTMxMDk3NDBjNmFmZjBlNDVhNWMwMzg2N2NmYWE1YjA1ZDhhNWYzIGxlZ2FjeS10cnVuaworMTM0MTcgZDgzYTRhYTcwZWI0MjhkMjJkOTNkY2FiODE2ZTg4NDkyMWYzNDBjZiBsZWdhY3ktdHJ1bmsKKzEzNDE4IGNmYWM4M2Y1YzBlZmE0NzJjMTM2Nzc4YTg1ODNhZjM5OGYzZjk1ODUgbGVnYWN5LXRydW5rCisxMzQxOSBiMWExZWIzMzQ5ZjM3YWQxYjYzOGJlMzRlMGU5MmM1MTRlNzRlYTk0IGxlZ2FjeS10cnVuaworMTM0MjAgZDFiNGZkMDU3YjRhNjM0ZWM0YWFhOGU4NTU2NjVjMjRlOGRmOGFlYiBsZWdhY3ktdHJ1bmsKKzEzNDIxIDNmZGYxYzdkOWY5ODhmOWU5MWIwNDcxOTc0NmZkYmNiMzI1Y2NjMmIgbGVnYWN5LXRydW5rCisxMzQyMiBiYTc5NzE3OWUyYmE2MzkwYTVmYjIxYzRlZmRkNTQ0YTg3ZThjM2UzIGxlZ2FjeS10cnVuaworMTM0MjMgYjc1ZDAxMTllZDUxYTA3YjhjYmI2MDNkMjNmYmQxMWJmNzZiMmFhMiBsZWdhY3ktdHJ1bmsKKzEzNDI0IDZiMWNiODU4MmExZjkyYmNjNjc0M2M2YWU0YmY5YTRkMDRmYzAwYjkgbGVnYWN5LXRydW5rCisxMzQyNSBhOGExZWI5OTM0MWMyMWI4ZTYxMjI5NWI1ZDkzODliNjA1OWZjMjBmIGxlZ2FjeS10cnVuaworMTM0MjYgYmRkNmIwOWEzNzFjNDBkYWRkYTg2ZWE5OGZiNWJiYTk3MGE0ZGJkYiBsZWdhY3ktdHJ1bmsKKzEzNDI3IDNmYWE2MzQzMDkyNDZmNjQzNWU3NmY4ZjNjNGY2ZmZkMjQyMmZjYjIgbGVnYWN5LXRydW5rCisxMzQyOCA5YzQwMzQ4ODc1NTcyOTEzN2ExNjczMzFhZmRlMmVlMTRjYWJkNWUwIGxlZ2FjeS10cnVuaworMTM0MjkgMWM1NTJkY2Q0M2Y5NzVjZDg4YzkxYWJiZGI5NGZkMDljYTI4ZDMzNCBsZWdhY3ktdHJ1bmsKKzEzNDMwIDgyMzRiYjM2ZmI4YzM1ZjkwMzk4ODRmMTNlYmVjNmQwODk2NjU2ZGMgbGVnYWN5LXRydW5rCisxMzQzMSA1MjU5NzAzZjRiNWMwMjAyMjU1NGU0NmM1NTY3MmViMWVhNTIyYjU4IGxlZ2FjeS10cnVuaworMTM0MzIgYjM1YmFiNDU3MzUwYjUwYWE1ZjE5NjkxMTE0MzRkNzFhZWRlNTY4MiBsZWdhY3ktdHJ1bmsKKzEzNDMzIGY5YzAzYjNkMGYxNDZlOTE4MTYyYzg1YTQzYWVhYmZkNjhlMjNiZmQgbGVnYWN5LXRydW5rCisxMzQzNCBlNDEwNDlhYzgyOGI0OWMwNmRhODNmNWZlY2M3ZDdhYmMwZGJhOTQ4IGxlZ2FjeS10cnVuaworMTM0MzUgNWVkOWEyZGQxOGQ5ZTZmOGEwNWVjM2FlYTU3OTNmZTliYjQ3YTQ5MCBsZWdhY3ktdHJ1bmsKKzEzNDM2IDg0ZjFjYmUwMDk0MzM1YWU2ZTVhZDA1MDg1NDMzNTliYzIwMDY0MWMgbGVnYWN5LXRydW5rCisxMzQzNyA0NTFiMDg0OWM5NzcyNWRiZWMxMDc0OGU4ZDA0ZjM1NzJiNjFmY2JhIGxlZ2FjeS10cnVuaworMTM0MzggMThhMjkyMTlmNWUwNmY0ZGNlNWExYTYyMWIwYzllODVmN2QwNDE1NCBsZWdhY3ktdHJ1bmsKKzEzNDM5IDUwYzNiM2MyMTdhMzllNDZhN2FmNTQ3NDRiNGQ4NmIyZmFlZGMwMTAgbGVnYWN5LXRydW5rCisxMzQ0MCBjYzZhYmM5OWQyZGRmMTQxNDE4NGM4ODAwOTE5YzE0MDljYjRhZGQ3IGxlZ2FjeS10cnVuaworMTM0NDEgYzA4OTAyMGE3YTFlNTc2NWZmOThiNThkZjhlNDE1MGI5MjA1N2FlYiBsZWdhY3ktdHJ1bmsKKzEzNDQyIGRjY2JmNWU4Mjk0ZGQ5MWY2ZmUzYTIzYjRkNTFiMDBjOWE4MDQ3MTQgbGVnYWN5LXRydW5rCisxMzQ0MyA4NDE2NTUzYzMzZGYxN2ZmMmJiNzk1MTc1NGJjNTJmN2E4NGNmNzc2IGxlZ2FjeS10cnVuaworMTM0NDQgZThmZjRiMTI5OGMyMzNkMmY1NWQzZTI5ZTNiZjQ3MWM1N2NiOWE1ZiBsZWdhY3ktdHJ1bmsKKzEzNDQ1IGFmNzY1MzhkZDA3OWQyNGYwZDY3ODFiNDE0MGE4MWY3YTA2NzJlMjAgbGVnYWN5LXRydW5rCisxMzQ0NiA3MTI4YzBmZDJiY2Y1MjRlNzQzZjQ1YzFiNzI3MDI1MDhlOTMwNzIyIGxlZ2FjeS10cnVuaworMTM0NDcgOGNjMGM4OThmNmE3NDc4M2QxODMxZTQ4MDJjZTNhNGI5YjA3MDIyNiBsZWdhY3ktdHJ1bmsKKzEzNDQ4IGU3ZWFlNjNlOGI5MDc3OTA0OWU1ZjhlMTNhZjc4ODgwMGM2OGRmZGUgbGVnYWN5LXRydW5rCisxMzQ0OSBkOTc2NDUxYjQ2NWYyMTJiODI0ZGU3MGMwZDQ5N2U2MTM1NzBhNjg2IGxlZ2FjeS10cnVuaworMTM0NTAgNmVlNjZmZTE3OWFkNzJlMGIwNTJiYjM5NGJkNWNiOGJkZTc1NjI4YyBsZWdhY3ktdHJ1bmsKKzEzNDUxIDM1ZDViMDczNjI0MjI2MjFiZTg2NDk1OGFkMjFmOTUzMWU3YzQ4ZGIgbGVnYWN5LXRydW5rCisxMzQ1MiBiZjZhMDk4Mzk1MWRkZGQ5YTFhOTM2OWM5NDQyNGE5OGUyMmFiNjYyIGxlZ2FjeS10cnVuaworMTM0NTMgMWFiYzI3ODViMzQ0NmMwYmY4OGM2NzU3OTU0ZmE3MWNhMzI0ZDQ3MCBsZWdhY3ktdHJ1bmsKKzEzNDU0IDM4NDI1MThjZjgwMzAxMmNlNTBkM2Y5OGFmY2UzYzNmOTZmMjMxNTUgbGVnYWN5LXRydW5rCisxMzQ1NSBiOTI4ZjdiOWRmYTIzZDNmZWQ0NmMzYzIyODYzMDY4YjMwMTA0ODA1IGxlZ2FjeS10cnVuaworMTM0NTYgMDM1MzBlYTIxNDhjODU4NDY1MGE0OGJiYTdmMDJjNTdmYmY3YzJiNSBsZWdhY3ktdHJ1bmsKKzEzNDU3IDBmYzJlODU3ZTgyMjg1MDM4NzAyZDM5NGZiODk5YWIwOGYxMzIxY2YgbGVnYWN5LXRydW5rCisxMzQ1OCBiNmQzZDE3MTk1ZGNiYTg2NTU1NmExMjk1ZTFmMWFmNmY0YjZkOWFkIGxlZ2FjeS10cnVuaworMTM0NTkgMzE3MTFhMDU4NzM4MjM2OGYxZGQ4NGJhZWZjMjhmY2ExNDFiZTA5YyBsZWdhY3ktdHJ1bmsKKzEzNDYwIGUwNTBkNGMwMTMyN2NkOWM2ZjViMTI5NDMzOGU1YzdmMTZlZGExNjUgbGVnYWN5LXRydW5rCisxMzQ2MSA0ZDc2Y2FiYmY5OWU2NTU4MGIxMmNkODUwNGU1ZjU2NDA5MGI4OTJjIGxlZ2FjeS10cnVuaworMTM0NjIgNDI5NDBlZDIyY2ViZDc4YjA3NWUxMmVhZGVhYTcwODI4MzkxMGIzNSBsZWdhY3ktdHJ1bmsKKzEzNDYzIDY2Njg5YjJkYzg5NTRiNWM3M2FhYjIzODUwNDA1MWI0N2YwNmYzYTggbGVnYWN5LXRydW5rCisxMzQ2NCBiZGMxNzAzZmY5MmNlN2Y1MjRiZWQwZTJjZmFiYjgyNDcwNTBlNjA2IGxlZ2FjeS10cnVuaworMTM0NjUgYzc3OTAyNTQxYjEzYTU3ZGMxMDg4NDE2NmUwOTE0Nzc2MDBmZWI5OCBsZWdhY3ktdHJ1bmsKKzEzNDY2IGJiYjAzODY4ZjIxYjYyNzEyN2VmN2MxMWI5YTI3ZmUyOTczZjViMDQgbGVnYWN5LXRydW5rCisxMzQ2NyBhYTMyNzZlNWRjY2Y1YjIyMTEzNjNlYWIxMGI3ZDNhNjM1N2MxODU5IGxlZ2FjeS10cnVuaworMTM0NjggMzZmYTgzNTJkMDM4ODE2NzgwMzQxOGEzZGE3OTkyYjYzNjQ2ZTAwNCBsZWdhY3ktdHJ1bmsKKzEzNDY5IDRkYzllZWUyNjE1NzE0NTY3Y2IxYTFlODcwZGU2NjRiMjNjNTQwZmEgbGVnYWN5LXRydW5rCisxMzQ3MCAyYjlhZjlkN2RhMmQ4YTdlYjQ1YWY4MTVjMzM3ZTRkZjQzNzU1NjI1IGxlZ2FjeS10cnVuaworMTM0NzEgZGEyMzYwNDRjZjZjOGE5ODJmYzI4M2U4MDRhOGU1ZTVkY2JlMTI4NyBsZWdhY3ktdHJ1bmsKKzEzNDcyIDMwOWQ4Y2Y4M2ExMTc5ODJhMTcxM2MyMGRlZTM5YWNkMGNhMWUzODMgbGVnYWN5LXRydW5rCisxMzQ3NCA1MGU3ZWIyMGJiMWQ1MWJhNTY5MjY1MzYxZDQ2ZDU5NzNkZTdlMmE4IHN0cmluZ19tZXRob2RzCisxMzQ3NSAyNTkyMzdiMjViOTM1ZjlkNzg0MzVjMjA5MWY0NjY2YjBhNDA2MmJmIGxlZ2FjeS10cnVuaworMTM0NzYgNzBjZjEzNjA5YWVkNjhhM2VhOWY5NmVkOWM4NDM4MGM2MDNkNDNjZiBsZWdhY3ktdHJ1bmsKKzEzNDc3IGZiYjRlZGI3MjAyY2M1ZTFmZTY1M2FiNWFjMWQwZWFhM2UwYzU0Yzggc3RyaW5nX21ldGhvZHMKKzEzNDc4IDViYTJlNGNlNThjYjRiYWFkMzUyYjI5NThiOTQxMWRmZDE5OTBmMGQgbGVnYWN5LXRydW5rCisxMzQ3OSA1NDgwOTIxYWU3ZjNmZWU2OWQ2NmU1ODQyMDg5YjZjNTk5MjE1MzA1IHN0cmluZ19tZXRob2RzCisxMzQ4MCA5ZDcxYzJjM2E2NzU2ZjI2ZTM0ZjQ2Y2ZjMzJkMTg4M2NmNTY0ZmFiIHN0cmluZ19tZXRob2RzCisxMzQ4MSBlMTQwN2Q2MzIwY2JiN2MxMDJmMzdmMmY5ODM0N2ViMDY2MzJjMDlhIGxlZ2FjeS10cnVuaworMTM0ODIgNmZmYzlkOGRjNWI5ODZhODgyOTExOTRiZDZiNzA4YmQxYjZjODc2OCBsZWdhY3ktdHJ1bmsKKzEzNDgzIDE3YzRkYmQzNmU2Nzc2NDQ4NDVhNTExOGEzZTNlZjc3MjU5ODllZmQgc3RyaW5nX21ldGhvZHMKKzEzNDg0IDc4Y2VmNTY3NmNjZjYxMmVmYTdkYTA3NzQ3YTRmMzg3YTk3N2I5ZDYgc3RyaW5nX21ldGhvZHMKKzEzNDg1IGFlODUwODEzY2I3YjQ4Y2M5NDNkYzYxNDg0MWUxZTJmOWNkZGNkZTMgc3RyaW5nX21ldGhvZHMKKzEzNDg2IGZmMGU1NzZlNzU4YTdiNGU4NWY0NTlmZmE1M2NhYTRhZmQxOTRjOTYgc3RyaW5nX21ldGhvZHMKKzEzNDg3IDFkY2M5NTZmY2U2NDlmNGY0YWVmZmI3YTJmYTQ4NzQwMTU1MzBlNzMgc3RyaW5nX21ldGhvZHMKKzEzNDg4IGVlZDVlYjViOWQ0ZjU5Y2YwMzg2ZjdmNGFkZWJjYjlmMzA2YWIwZTYgc3RyaW5nX21ldGhvZHMKKzEzNDg5IGRkZDIxNjAwM2JkMTg3MWQzNjQ1ZjI1OWEzYzY5NGNiYmQ5YzZlNjkgbGVnYWN5LXRydW5rCisxMzQ5MCBjYmJmMjk3YWVhN2E5Mzc5N2I4ZmQ5YWMxYjRmOTViMGMyYjM3MDMxIGxlZ2FjeS10cnVuaworMTM0OTEgYjJkNjlmNzUxMzgzOWE0NTMyOTlkNWQxMzg0MTkxY2NlM2UzYTA1ZiBsZWdhY3ktdHJ1bmsKKzEzNDkyIGVjNmM4YWQ5ODM0MTA3OTQ2M2FmOWY2Mzg0MDM4MTU0ZGE5MDA5Y2Igc3RyaW5nX21ldGhvZHMKKzEzNDkzIDUxOTY5ZmQ3M2M0YTdlN2NjYjY2MWE1Y2E1Mjc4N2ExY2M5NjY0NWUgbGVnYWN5LXRydW5rCisxMzQ5NCAyZWMwNGZmMmI5YjczMmY5NTI5ZGI4MWU1OTQzNjdhZGMzZmFmYzgwIGxlZ2FjeS10cnVuaworMTM0OTUgY2ZlZDI5NDkzZWQ2NTYxY2JlYWIxNzk2NTkzZTVjNmExYTA2NjIzOCBzdHJpbmdfbWV0aG9kcworMTM0OTYgMGYwYTY2YzFkZWFjYTI2ODhhZTRmNDRlZTY4MjIyOTZmNjk5OTc2NCBsZWdhY3ktdHJ1bmsKKzEzNDk3IDBmMjI5MmY1N2E4MzE3NDM2NjkyMGJhOWM1NzU3ODBiMGU5OTI0MGQgbGVnYWN5LXRydW5rCisxMzQ5OCA5NWQ3ODI4MTU5MDFkOGJhZTU2NTgyMmZmZjcwZmYxYzVjNTBkNWNmIGxlZ2FjeS10cnVuaworMTM0OTkgYjJmYmQ5YTVhMWI1NWMxMzJkNzI2ZDcwZWQyMGYxNmE5YmVkZTc2OCBsZWdhY3ktdHJ1bmsKKzEzNTAwIGFlOTZiMWExMjhmOGMxNjk4YTEyOTUxNmMyYmMzZDc5YmM5ODYyZTEgbGVnYWN5LXRydW5rCisxMzUwMSBmOTBlZDk2NjMxNmU4YzY5NDIzOTdhZmQ5ZjYzMDM2MDYxMDhiYjFlIHN0cmluZ19tZXRob2RzCisxMzUwMiA0Yjk2OTI2NWI5ZDIxYmNjYTg2MmQ0ODZmNWY3ZjBlMmM3NWQ1NWVkIHN0cmluZ19tZXRob2RzCisxMzUwMyA3MTEzODAzNzJiYzkxOGEyZmYwZDY5NTU5YWMwM2FlMmQ2ZmJiNDg5IHN0cmluZ19tZXRob2RzCisxMzUwNCAxN2VjMDkwMmVhZmEwNmNkNzQwY2MzNjIwYzdiZDViOTE1NjA3NzNmIGxlZ2FjeS10cnVuaworMTM1MDUgYmVmNDZlYTVlZjc1YzA0YzRkYzY1ZDM1NjJjYTg4Yzg0MmIzMGVkMSBsZWdhY3ktdHJ1bmsKKzEzNTA2IDM5ZjI0MmJmNDYyMjgzNjg3NmEyNmUzZWRlY2I2ZjFiYzQ0YTk1YjkgbGVnYWN5LXRydW5rCisxMzUwNyAxZGNjYmVlYWY3NmFjZWY0MzZjMTA0MDZlOTk4Yjk3ZTE4OWVhOWE1IGxlZ2FjeS10cnVuaworMTM1MDggNjNiNTMwYzAzMGM1NGIwMWU3N2ZjNTFkMDk4NjdjZjJiYmQwMjk5NCBsZWdhY3ktdHJ1bmsKKzEzNTA5IGM3M2Y1Mzc2MmY5YjBmMmYxMTI1MGU3M2Y3YzFkYzY2YjhkZTQzNzUgbGVnYWN5LXRydW5rCisxMzUxMCBlMzlhOWYxMjkxNjMyNmQ1MmUzZjYxZDJmZTJkZGRiODg2MDZlZWE5IGxlZ2FjeS10cnVuaworMTM1MTEgN2ExMjdmMTk5MmQxOTc1ZGRlYjkwNGNkNzVlMTYwN2Y4MzMxOTIyMiBsZWdhY3ktdHJ1bmsKKzEzNTEyIDZjYWZhM2Q0ZTIyOWU4YjBmZjUwYjQ5ODY0NmNiYjMwZjYyZGQ5OWYgbGVnYWN5LXRydW5rCisxMzUxMyAxMzQ2MmNhNmQ5NDc1NWVhYmViOGVhYjE2ZDFjYmRlYzFjNzU5M2Q3IGxlZ2FjeS10cnVuaworMTM1MTQgNDA1MDk5NWE2NjM5YmI4ODJjZTY3NGE0YmVhMjI3YjNiYTUxN2JkZSBzdHJpbmdfbWV0aG9kcworMTM1MTUgM2MzNTEyNTVmMTczYWE5NzMyMTM0NDc3MjU1ZGQ4MGEyNTk0NjBhNiBzdHJpbmdfbWV0aG9kcworMTM1MTYgNDZhNTYxNzczMjJlYjA2YWE0OWIxOTFiMWJlNjE0MzhmNzUyMzczNyBsZWdhY3ktdHJ1bmsKKzEzNTE3IDg3ZDNmOTFlNDRkNGQ3YzRjZTUxMjYzZWVhYTliY2I4ODIwNTU1MWIgbGVnYWN5LXRydW5rCisxMzUxOCAzZTA1ZmNhYWFlZDIxOTIxOGViYTg2MTI3YTlkZGEyMDZkMzg3ZDU3IGxlZ2FjeS10cnVuaworMTM1MTkgNzA4NjI4YjZjMDRiZjIyZTRlNzAxOGMyYzYzNjdjOTZiYmIwMWZiNiBsZWdhY3ktdHJ1bmsKKzEzNTIwIDBkMTg2YzEwYTcwZTI0YmQ5Y2I0Nzk1NWViMjhiMmRkMzBlNjljNGIgbGVnYWN5LXRydW5rCisxMzUyMSA4NGFiMTRkODU3NjM0MzBjM2RjNTFjMzcyM2NiZWI4MTQ0M2U2ZTAwIGxlZ2FjeS10cnVuaworMTM1MjIgZTY4ZTYwNmMxMzBmNTFhZTkwYWI4NTc1OWQ1Zjc0MDNmNGI0ZTdlNCBsZWdhY3ktdHJ1bmsKKzEzNTIzIDY5NjE1ZDUwZjU4YzAwNWQyZGY1OWYzNGNlNzRjYjFmNGE2OTY4ZTQgbGVnYWN5LXRydW5rCisxMzUyNCA4YTRmYzRkYTc2OGQ4ZWNjZWQ2YTM4MjE1Y2QyNDZkZjk3ZWQ2ZGNjIGxlZ2FjeS10cnVuaworMTM1MjUgZmNhYzY0MzJhN2RmYjNmNTE5NzhiNWUxZGY3Y2Y0MjRkYTdlZjE2NyBsZWdhY3ktdHJ1bmsKKzEzNTI2IDkyNmNiNWE1ZWUzMDkzMzU5N2UwOThhYTgyYTA5ZDExYzZiNWE3YjIgbGVnYWN5LXRydW5rCisxMzUyNyBlNTI3MjNhZjNjZDVlNmYxMGVkOTVkZWY4YjRkOTg0YmQ3OTNmYTFlIGxlZ2FjeS10cnVuaworMTM1MjggMDg2YjJiYzc1NzhmOWVmMmM1YzVjMDM2MDQzZWM5YjQ2NGM0YWIxNCBsZWdhY3ktdHJ1bmsKKzEzNTI5IDhjMTE0ZWRlMDU2ODYxZGQ1ZTI1YmEzMTE5YmY0YjZjM2Y5N2I0MDQgbGVnYWN5LXRydW5rCisxMzUzMCBjOGVkNWExNDQ4OGRlNmQzMjRkMTY3YTE1Y2IxZGNjZmM1MDJiOGQ1IGxlZ2FjeS10cnVuaworMTM1MzEgMDg3MmRhM2YzZjU2MTIxMDlmYzA2MzFmN2UyMGU2ODc1MTI5N2IxMiBsZWdhY3ktdHJ1bmsKKzEzNTMyIGI5ZjU1Y2MxMGFiM2YxMGFhNGI0NTM0ZTlkNzIwOTA2NWNlNDc2OTIgbGVnYWN5LXRydW5rCisxMzUzMyA0ODE4Y2I4ZTExMTAxZGY0MDBkN2I3ZTc3ZDMyYzI2MGIxNWE5ZDY2IGxlZ2FjeS10cnVuaworMTM1MzQgNDkyYTY5NDg5MDI4NmEyYWRjNGEyODZiMWYzNzY5MDViOWYyMDE4MCBsZWdhY3ktdHJ1bmsKKzEzNTM1IGU5NDQyNzM0YmM0OTczZDkyZDllYzQyMjMyM2NkODcyMGI0OTI4OTAgbGVnYWN5LXRydW5rCisxMzUzNiAzYjNjN2I4YWRlN2ZmYzg5NzZmM2I2YWU1MGE4NDQ3YmM3YWZhMGY0IGxlZ2FjeS10cnVuaworMTM1MzcgNDA3N2NhM2IyNjU2MzI4OThiY2RjZjQ3NWE5ZjdjNDU0ZTkwMzVhMSBsZWdhY3ktdHJ1bmsKKzEzNTM4IDJhMmU5OWFmMzgyOTE0ZTYyOTZiZWJiNzA5NjExNjM1ZGUwZmM3OTUgbGVnYWN5LXRydW5rCisxMzUzOSA2YzkyZGIzYTc3Y2YzN2EwM2I4M2RkNjMzZDU1ZjkyNjAyMDcwMmI5IGxlZ2FjeS10cnVuaworMTM1NDAgNDEzODVkNTBhMTBjNzQ2NTI0MzdkOGNlZjRiYTVmODlhYzUyNzAzZSBsZWdhY3ktdHJ1bmsKKzEzNTQxIDc0OTcxMWY4ODVjZDNlNTYwZWFlYThmMDVmYzEzMGZmMDYyYWM0YzMgbGVnYWN5LXRydW5rCisxMzU0MiBmNGM2MzE4NWNlMTEwODc0MTk0YjQwYzI5NGJjNzQyNDdiN2I2MjNhIGxlZ2FjeS10cnVuaworMTM1NDMgMzA4Y2UyMTgzOWQ2M2ZhMDE5OTkzMWRkODJjODFjY2RlOGZkZjAzOSBsZWdhY3ktdHJ1bmsKKzEzNTQ0IDYxMjdiNzM4NThiYzkxZjM1MzE5ODNlZTRmNzY4ODE3M2ZiYjhkNDIgbGVnYWN5LXRydW5rCisxMzU0NSAzYWRjMDM0MmQwOGJkMjVmNjgzZGIwNGE0MjhiMzZkNzc4MWRlZjhlIGxlZ2FjeS10cnVuaworMTM1NDYgMTE5ZTExOWZjZjVhYzBiMzcwNjNhNmE4ODdmOTUxM2ViN2NlYTM2ZCBsZWdhY3ktdHJ1bmsKKzEzNTQ3IDEyNmE5Y2RmMDU3MjllMTVmNDBjNWFkNTFkMzNjMzgxODM3MjU3NDYgbGVnYWN5LXRydW5rCisxMzU0OCBlNmFiZWRiYzc5YzY5ZWU5ZThkNDg5MWE4MjViZmU0ZDdkMGYzNDliIGxlZ2FjeS10cnVuaworMTM1NDkgMjcxYWYyOTdhYTNlYTc5ODUzNGI4ZmI2ZmU4N2I2ZTBmYmRmZWJkNyBsZWdhY3ktdHJ1bmsKKzEzNTUwIDMxZmQ0ZWQ3M2QyOWU1MWVlNDFiYjljZDg0NmFlNTEzMTBiNTg4ODUgbGVnYWN5LXRydW5rCisxMzU1MSA2NDlkYWFkNmNmNTE2N2ZkM2RiYjdiNWFhNzkyYjc2ZDNkNTU5ZWE3IGxlZ2FjeS10cnVuaworMTM1NTIgNzcxYTlhMTAwZDc1YmM4ZDcwOTZlMDM3OGY5OTM3MzAwZDQ2YzM5NiBsZWdhY3ktdHJ1bmsKKzEzNTUzIDM4MTllYjdjODM0YjM1OGU0MWFlMDBmZDAxYjZkNGM3YzczZTA5NjkgbGVnYWN5LXRydW5rCisxMzU1NCBmOWJhODAyMzk3NmQ2NjIwYTkyYTU5NzEzMDUxY2Q2Y2Y5YmM3NTM3IGxlZ2FjeS10cnVuaworMTM1NTUgM2JlOTM1YmUzNzgxZmNkM2Q2ZjAzM2YxMjhmNGFlZjhiNjhhMmE4YiBsZWdhY3ktdHJ1bmsKKzEzNTU2IDhiN2Y2NWIwZGIxOGEzNmM5ODRkNTk2MTNhMDU5N2IzZWE2NDJhODAgbGVnYWN5LXRydW5rCisxMzU1NyAzNjY4NGNlMGQ0MGQ2MzY5MGNlOTFhZGYwN2U3Yjg3MDgzZTQzM2Y5IGxlZ2FjeS10cnVuaworMTM1NTggY2IzNjYzMjExNTJjYjJlNjk3MWViZTQ2ZjI3MTBjYmM0YzViZTJkMiBsZWdhY3ktdHJ1bmsKKzEzNTU5IGI2YTQzOGNjMTk1Yjk5N2JhYzI0NDhhMDBjYTVhNjJjMjEwYjIwY2QgbGVnYWN5LXRydW5rCisxMzU2MCBhZDE1YTAzOTRmNzgyOGZkMWU3YjQ1OWU3MjY4NDRjMjViZDA2NDQwIGxlZ2FjeS10cnVuaworMTM1NjEgNWFkYmIzZjA0Y2JjMmY5Mjc4OGQzMDg2NmE4NDQzODg0YmE0YzE4MiBsZWdhY3ktdHJ1bmsKKzEzNTYyIDEyY2Y5MDk2NjgyMjMwMzYyODFiM2ZlYWQwZGM2YjhkZjc1ZTAzNjkgbGVnYWN5LXRydW5rCisxMzU2MyA1ZmE5NmQwNTAzMTlkODRiYmNjMGEyYWI0ZDNhNDY2MjM4NDRmYzE1IGxlZ2FjeS10cnVuaworMTM1NjQgOTc4OTZjMDllZjFiMzMxZTA5MTRiYzM3OTQxMjI1YmI5NWNhODBmOCBsZWdhY3ktdHJ1bmsKKzEzNTY1IDYyNmNhZWNhNTM1YTI0M2IwYzgxZWQ3NDQ2MzFlZGNlM2YxODRmNGMgbGVnYWN5LXRydW5rCisxMzU2NiAyN2M0OGRmMWNlYjc5NTkxZmIyZWFkYzhmYjRiOTc2OTM0MDE0NTRlIGxlZ2FjeS10cnVuaworMTM1NjcgZjc4ZjE2ZmVhNDU1N2Y0ZDRiYTgwNDc2ODljOWY3M2RjYzU3MDYzNiBsZWdhY3ktdHJ1bmsKKzEzNTY4IGNjMmViMDFhMTZmNDIzYmZiMDQ3MjJkMDgwYmJiYTdkYWUwZjQ3OWYgbGVnYWN5LXRydW5rCisxMzU2OSA4MTQ5OGM0ZTU2OWQzNDk4ZTQxZGI0ZGRjMjNlZTVlYTA1ZDdhOTIwIGxlZ2FjeS10cnVuaworMTM1NzAgNWJiNGY1MGRhNDc0YTViNDU3MjE0ZTJhMmRlNGZiYzg4ZDUzNjQyZSBsZWdhY3ktdHJ1bmsKKzEzNTcxIGZkNTQ2Y2JkZmI1Zjg2NWE5MWVlYTQ3ODM3M2Y0NGJmMWQ0MzE0ZWYgbGVnYWN5LXRydW5rCisxMzU3MiBhZWIxMGNjMjMwMGQ2ZTZhNWM4NDAxN2JkZDJlYTMyMGM4ZmFiMjJhIGxlZ2FjeS10cnVuaworMTM1NzMgMjIyYWVlOTZkYzQyNTEwYThhNzdkMDdiOWRkMmViZTk1YTc4YzIwNyBsZWdhY3ktdHJ1bmsKKzEzNTc0IDRmNTFlOTdhNmVkZjVkNzhhMDlmMmZjZjM3ZGZjZDg1NjIyMGM3MzIgbGVnYWN5LXRydW5rCisxMzU3NSA1YTgyZmI0Zjc4ZTU5NGNkZjhiOGYwM2JlMDcxM2M1MTk3Yzg4MmFiIGxlZ2FjeS10cnVuaworMTM1NzYgMjdmYmIwOGY4YzM4ZGNhZTc0MWZlOTFkNmEyNmFlOTM5ZGZkMjU0OSBsZWdhY3ktdHJ1bmsKKzEzNTc3IDI1Mzk3MGEyYzA1ZDY2NDU1YzkxZjdhYzRlYjc5NjM2NGFiNzQ0ZmIgbGVnYWN5LXRydW5rCisxMzU3OCAyNTZiODc4Njg5ZjNiMWU0YTA4OTk5M2Q0ZDk4MDRiOGExMzM3OWM2IGxlZ2FjeS10cnVuaworMTM1NzkgYjNhY2Q1NjUyMGNkOWZhZjcyMzIxZTM3MzJlMzdlZTBlZTYwMTgyZSBsZWdhY3ktdHJ1bmsKKzEzNTgwIGJjYzBiZTdjYjQwODAxZGIxYTBhYzhlMGY4ZTUzZTQwNzdhZDlhNWYgbGVnYWN5LXRydW5rCisxMzU4MSAxMjA5OGE4YTk1ZWNiOGI1NzM3YzA4YjQ0YTUyYTlkMDUxMzgzYjNiIGxlZ2FjeS10cnVuaworMTM1ODIgNzllZTZkYzkzZDBlOWUzY2JkOWY4NWRiMjk5N2Q5MWQxZWY0MTAxOCBsZWdhY3ktdHJ1bmsKKzEzNTgzIDk2MzFmOTcyNmE3MDViNDkwNzhmNjI5N2QxNzUzMDM1Mzg4NGI0NzcgbGVnYWN5LXRydW5rCisxMzU4NCAwN2IwNzM3NmNhNzI4OGM0OTMxNGViNWRjMjNjYmU5ZGM1MWIxNzAyIGxlZ2FjeS10cnVuaworMTM1ODUgOTAyMzE2YzcyYjQzZjk1M2UwZDNjNDlmZWY5Nzk1ZDE4ZTk1YTA3YiBsZWdhY3ktdHJ1bmsKKzEzNTg2IGUzZGRiODc2MTYzNzFjYmI1N2I3Yzc0OTdlOTdkOTc2MDQ3NDIyMzUgbGVnYWN5LXRydW5rCisxMzU4NyA0OWU4ZGUwYjVlYTc0YTg1NWJiNTQ1NGIwN2Y0ZWY3ODFlNGRlODU2IGxlZ2FjeS10cnVuaworMTM1ODggN2VkNmZiYTgyNjVjYjc5ZjYxMTdlZjdmOTVjYTk5ODFiMjAxZmI5NSBsZWdhY3ktdHJ1bmsKKzEzNTg5IGYxMTE0OGM1ZmJlZGNjZjJiNGFhMzIyN2EwYTc0NDkyM2ZjOWNkNzggbGVnYWN5LXRydW5rCisxMzU5MCBkNmNhOTEwNjNjZWM5M2NiZWJjN2Y4MmY1OTYxM2UzM2UwYTZkMjQ3IGxlZ2FjeS10cnVuaworMTM1OTEgZjUyNmRiOWE2Y2Y4MzZkZjAxYmY4MzdmZWQyZTE0NDJhZDYyYmY0NyBsZWdhY3ktdHJ1bmsKKzEzNTkyIGRmYjVhZGQ2ODRjM2U4MTIxNWQzNWY2OTQ2Y2MxNWNmODI2NzdhNTMgbGVnYWN5LXRydW5rCisxMzU5MyA2MjgyYWNlMjc5NWUwNmNiYzVhMzA2MjRkNDY1NmU4MWJhZDViZmMxIGxlZ2FjeS10cnVuaworMTM1OTQgYmFlM2ZiZTJiNTkxYWY5ZGVhM2I2MTRjODBjZWRmOTliZWE4NjU3ZSBsZWdhY3ktdHJ1bmsKKzEzNTk1IDBiNjU4MzVlMmIyOTA5ZDY1YmUyYmU5YTQwNjJhZDMzNTM2M2U4MDQgc3RyaW5nX21ldGhvZHMKKzEzNTk2IDhlNGRkNmExNjFmZmI3Y2M0NzgwZTE3ZjdjNzhiZTYwMzAyNmFkNzkgc3RyaW5nX21ldGhvZHMKKzEzNTk3IDBkZDUwYTcwYzQ3ZTIyZDYyZjgxMGM2NmZhZWMyZDlkZjk1NWE5ZjIgbGVnYWN5LXRydW5rCisxMzU5OCAyZmQ2NWQwZjNkNDE1MDgzY2MxZjczMGViODJkOGIzMjkzNWI2MTA1IGxlZ2FjeS10cnVuaworMTM1OTkgOWRkODE5ZDk5MzI2MzkyNmMyYTRmNGVhYWY3ZmU3MmJjYzZhYTUwMSBsZWdhY3ktdHJ1bmsKKzEzNjAwIGE4NGY5ZDM5OTlhZTg0NjU5NGExMzQzZGZlOGJiNzJhMDAxYWZmYTYgbGVnYWN5LXRydW5rCisxMzYwMSA2NjEzZGZkNzM5MTcxOGNkYzVmNDE0M2FmNjEzYTA0YTFlMTJhMDcwIGxlZ2FjeS10cnVuaworMTM2MDIgMzZlMjU4YjU3NzUwNjY5M2M0MTIxMTg4NjZjNzg0NzMyY2Y3MTExYyBsZWdhY3ktdHJ1bmsKKzEzNjAzIDRhMWQ2YzdiMDk1MDFmOTNjNzhlNTJiOWJlYTRiOWQ2YmZhNWFkOTcgbGVnYWN5LXRydW5rCisxMzYwNCA2MTkzY2MxNDViOGM3YWQ4ZTFjYzk3ZGU4ZDE5NTkxZDBjOWQ3ODFiIGxlZ2FjeS10cnVuaworMTM2MDUgZDFiNDhlZTE0NjAxZjhhNTQ0NjliNTE2NTU2YTg5YmQ0NzU5MDQ5ZCBsZWdhY3ktdHJ1bmsKKzEzNjA2IDg3YTM5MzVlNjZhYWNkY2IxZDQ4ZjM1N2Q4NDZkYTc3MzAzZDdkMWQgbGVnYWN5LXRydW5rCisxMzYwNyAzZTVmNjk2NGNkMzMxN2IwMmQ0ZTQ2NmVkYTFlZmFiMDc5ZjExZTNjIGxlZ2FjeS10cnVuaworMTM2MDggNzYwMDhmOGEwZTVmNmNkZTE3MTVmZWQxZWQ0NjQyNTg2ZGJlOTUzOSBsZWdhY3ktdHJ1bmsKKzEzNjA5IGQwNDYwOWEzN2RjMTE2NjNiMTYyNDNhYmJiNWZjYTA0ODgzODNhM2MgbGVnYWN5LXRydW5rCisxMzYxMCA1YmU5NDA2YmJiMDVjYTExMDM3NWNjODVhY2Y0MzA2NDEwYWZiOGZhIGxlZ2FjeS10cnVuaworMTM2MTEgZDQ1MWEyMTFjMTZhM2Q2N2Q4ZmZjYjFkOTQ3MjY0OGNhMDkxMGZjNyBsZWdhY3ktdHJ1bmsKKzEzNjEyIDI1NjczODg0YTNkMGYzY2QyNzM4N2Y5MjE1NWNiYjFiZDFkMzRkZDcgbGVnYWN5LXRydW5rCisxMzYxMyA4NDYxMmE1Njg4ZmM5M2MyNGUxZDVmMGQ0NjY2M2ZhZDBhNjQ3MzIwIGxlZ2FjeS10cnVuaworMTM2MTQgZGM2YmUwZWQzOThjZmQzNzY4OGM2N2FiNGQ1ZmY3ZmNiMGVjMjI1MyBsZWdhY3ktdHJ1bmsKKzEzNjE1IDQ0NjNkZDdiYjNlODk1ZjNlMDU5YzdhZGRkOWVjYzNhOTlmMGQ4ZjMgbGVnYWN5LXRydW5rCisxMzYxNiA0YTdiMmI0ZDE2NjlhZWY1ZjBkZTljNzcxNTRlYTgzZjdkNjlkZjNkIGxlZ2FjeS10cnVuaworMTM2MTcgNDdlMDAzYmQzNWVkMDUzYTg5ZjU5ZjNiNGNkNzQzN2Y4OGU2MjhiNyBsZWdhY3ktdHJ1bmsKKzEzNjE4IDRiNTNmNGEwYTk4YWNkMWJmY2RmYzYzMDMzZGY1Yjc1ZTAzZTE3NDUgbGVnYWN5LXRydW5rCisxMzYxOSA3MDI5ZTE4YjRmMTFlNzdjNDk1NzhhZmFiZmM0ZDNlN2E2YzI1N2NlIGxlZ2FjeS10cnVuaworMTM2MjAgMmUwMGI4ODkwMzVmMmY0NjdmOGE0MGY4NDg3NDFmMTk1MjQ2MzNkZCBsZWdhY3ktdHJ1bmsKKzEzNjIxIDcyOGEyNTAwZWE0MmZiNWZhODMxYmZjOTBjNTVlOThmYmQ0N2M0Y2IgbGVnYWN5LXRydW5rCisxMzYyMiAxZDRmNWY0OWRlNGVjZjM4ZjE5NjA5YzhjZTNkOGZjODJhZWYxNjJiIGxlZ2FjeS10cnVuaworMTM2MjMgNzY5YzZiNGM1Yjg4N2MzNGU3NTNmZjU2NmU4OTQ3NGIzOTBlMzA0NSBsZWdhY3ktdHJ1bmsKKzEzNjI0IDRjNzU1OTZlOTJmNGY4YWRlZmJlMDNjYWVjNTM3N2Q5ZDgzZjdhNjggbGVnYWN5LXRydW5rCisxMzYyNSA5YzI5MmFkOGE2ZDQ2M2MwMzRmNTQyZmFlMzA3Y2U5OThmOGRiNTFhIGxlZ2FjeS10cnVuaworMTM2MjYgNzFlZDBhMmMyNzlhNjA1ZjFiZGQ5OGY2NzdiZTU2NzNjZTVjZGEwYSBsZWdhY3ktdHJ1bmsKKzEzNjI3IGZhMmUzZDA2Yzc5MDJlMTZiZDdhMjBlNzNiODUzOGMwNDM0NTQwMDEgbGVnYWN5LXRydW5rCisxMzYyOCA4NzJhODJmZDBlYzQxZDQ4NzRiMjUwZjQwMjQyMGY1MDc3YjI4YWQ5IGxlZ2FjeS10cnVuaworMTM2MjkgYWE2YzVmODZkZjg3YTRlNWViM2NkNmQxNmI2OTllZWNhYzE5NTkwMiBsZWdhY3ktdHJ1bmsKKzEzNjMwIGZiZjQwZDdmZDRkYWMyNjVjMTIxNDM3ODNhN2VkZDU1ZWNkYTJkM2IgbGVnYWN5LXRydW5rCisxMzYzMSA2N2JkMmFhZTI3MzJlYWE1YTFhOWQ2NjE3M2Q3OWJkNzQ0ZjM0ODk3IGxlZ2FjeS10cnVuaworMTM2MzMgMDY4ZmJmNGY1NThhMjMzYzU0NmM2YTM3YTMxNmI4M2ExZWQ1ZTQzYSBsZWdhY3ktdHJ1bmsKKzEzNjM0IDVlODQ4YzNlOWM1YzcxYzQ0ZTQzMmQyYzQ1NTY5NjhhYjY5NTIwMjIgbGVnYWN5LXRydW5rCisxMzYzNSAxNDM3NGJhMzQxYTY3YThmNjU1ODVlYWMyOWJjYTdlNDZhY2NjZmUzIGxlZ2FjeS10cnVuaworMTM2MzYgMWNkZTUyMzBjNTA4MTllM2QyNDczY2MxMGQyNjcxNGJhMWI4YzdmNyBsZWdhY3ktdHJ1bmsKKzEzNjM3IDZiZjYyMDM3NTk3NjM0OWE5NmRlYjE0NjY1NmY4MzcxMzFkNDdiMjMgbGVnYWN5LXRydW5rCisxMzYzOCA5OTI4NmRhYTkwMGRkNDhlNTQwZmI3OTJjYTQ2OWM0MWFjYzg3NDc5IGxlZ2FjeS10cnVuaworMTM2MzkgMTJmMjA4ZGI0MmIwZTkyZmFjNmE4ZjkzNzZmMzI0YjUyMGQ2YmJlMiBsZWdhY3ktdHJ1bmsKKzEzNjQwIDc4ZjViZjE3OTc1MDRhOWU2Njk1MjVmYjBiNTNlYjJmNWFlYzA1ZmEgbGVnYWN5LXRydW5rCisxMzY0MSBiZThlYzgyOGMwNzIzNzI4YzI3MTk4YmY0MTdjMzIyMDMxOTM4Y2JlIGxlZ2FjeS10cnVuaworMTM2NDIgMDEwZTdiNjlkODZiZjBlMGYxYjczODk0YTNlOGEyZjIxMWUzMTZkNCBsZWdhY3ktdHJ1bmsKKzEzNjQzIGRjYzA5MjI4YTNkMjQyMjNjNzkxYTFlZDQ4ZjA1ZDViN2ZjYzk3NjQgbGVnYWN5LXRydW5rCisxMzY0NCA5MzlkOTE0YWY1ODE2ZmZjNDZjZmY3NzI1NTY5MTliNjQyMGY2YjMyIGxlZ2FjeS10cnVuaworMTM2NDUgZGE5YzgzYjVmYjA3NDVlY2FhYzRiYjUyMzQ0YjhiMmJjZGRjNDk3NiBsZWdhY3ktdHJ1bmsKKzEzNjQ2IDNiMTk4MGRiNGFlOTkwNDZjZWQyYTgwYzMxMzE1NGVjZmI3OTBjZGYgbGVnYWN5LXRydW5rCisxMzY0NyAxNjRiNGJjNGRkZGQwZjgyOTU4NjVkY2M2NzIxYTJiMDY5OTBmMDg4IGxlZ2FjeS10cnVuaworMTM2NDggM2EzOWViZTI3NmM4ZjRmOGM4OTc3OGYzMzMwMDBjZTA4YTVhNTk2NSBsZWdhY3ktdHJ1bmsKKzEzNjQ5IGQ0MjNmNTc4NDRiMjZiNzJiODFkMmVhZjI2ODU3ZjQyMTFkM2Y1M2YgbGVnYWN5LXRydW5rCisxMzY1MCAzMDZiNDlkNjgyMzM3Y2I5NTZkMDVlYzJkZjAwOTZiZDhjZmYxYzFhIGxlZ2FjeS10cnVuaworMTM2NTEgMmViMjg3OWQ1NjdmNGIzMTY5ZjJhZGE5YTNjOGZmMDNhNjIyMTM3ZSBsZWdhY3ktdHJ1bmsKKzEzNjUyIDdjMjM5NzExMjIxYTI0NzQ1ZjNiMWU2MGY5MzFmNGI2MDYwZDg0MWYgbGVnYWN5LXRydW5rCisxMzY1MyA0NDJmZmU5YTU4YzEzYzk3MDFjNDdlYTczNjZjZDA5YjQ3MDVlNTYwIGxlZ2FjeS10cnVuaworMTM2NTQgNWU3NmM5OTY1ZmU4MzkwMWUwYjE3NzI1ZmU4YjgwZmI2ZDdiNjI4YiBsZWdhY3ktdHJ1bmsKKzEzNjU1IDlhMjAwMzhmMGI5OTdlZjBkYzIwMGNmZjE1MTBhZmQ2ODZkMWVhNTQgbGVnYWN5LXRydW5rCisxMzY1NiBhNGI3MjQyYTRiNzRjYmY0N2M5YjZjYTYwNDcyZWMwNTFhZjZlZTg5IGxlZ2FjeS10cnVuaworMTM2NTcgMWM2ZmRjOGFkYWIwYTRjNmZkYzVkZDE2ZWM2M2I3MGMwOTBhYTE2ZCBsZWdhY3ktdHJ1bmsKKzEzNjU4IGY3MjliYmM0YTlmMzEwZjlmN2VhNWRmZjk4OWQ1YmJkM2E4YjRhZGMgbGVnYWN5LXRydW5rCisxMzY1OSAwZDg4ZTBkMjE4NGY4OTM5YWJkMGQ3ZDBmMDQwMWNiNWY5M2Y1OTM5IGxlZ2FjeS10cnVuaworMTM2NjAgNDFhNDY5NzhhNDQ0YTcyOWQ3NzJmMTg3NzE3ZDI2MmJlM2YxMWNjNyBsZWdhY3ktdHJ1bmsKKzEzNjYxIDJjNTg1NTI2NDQ3ZTk1ZWI4ZjQzZWY5YzNiYmFjMGZhMzRhNjlhMDcgbGVnYWN5LXRydW5rCisxMzY2MiA4MDQ5ZDJkZTFlNzk0YWFjNDY2M2ZmZmNiMjQ4YmI4ODI0YWU1YzY5IGxlZ2FjeS10cnVuaworMTM2NjMgODRlMzRkODEzOGFjOTA0MzUxZmY4ZDU2N2EyZTNmMWE5Y2I5ZTBmNSBsZWdhY3ktdHJ1bmsKKzEzNjY0IGMyYWM4OTY5MjZjYzRhNzk4NGU4NTI4ZDkzNzU3YTE4ZjJlOTZhMDIgbGVnYWN5LXRydW5rCisxMzY2NSAwYTVhOGY1MTNkMTM2M2E3YTc5MzFjNDk2MGE0ZTBiNjgzMTc3ZDhjIGxlZ2FjeS10cnVuaworMTM2NjYgYjU2YmRhMTkwMGZjMGVkMDBjNzliZDZhYmIzYTRhYTk0ZDBkNDhjZiBsZWdhY3ktdHJ1bmsKKzEzNjY3IDJjM2FmOTBmM2ZhZWI0NTU2YTUzMTdmZDIxYzMzZmJlN2E1YzhhMDEgbGVnYWN5LXRydW5rCisxMzY2OCBjZGZhOWNkNGU3MmJiMjZhN2Q1YzQyNTQ3MTg4NDc0OWIzNDZmZDM4IGxlZ2FjeS10cnVuaworMTM2NjkgYzA5NTQxMTI4YzVhNDFkZTM1NmY5NDBkNjAxZjZiODg2MzFmNjQ2ZCBsZWdhY3ktdHJ1bmsKKzEzNjcwIGM5NWUxZmQ4N2FmMGYwNjk2ZmIyNzk3Y2QwY2M1YTI4OGRmMTNiNGUgbGVnYWN5LXRydW5rCisxMzY3MSAyYjdjNDNkNGI0NjliMGYyMjIwYzk1YTY2YTBmMTFhNGJlNjhhNDJkIGxlZ2FjeS10cnVuaworMTM2NzIgMWRiYzVlNjk3OGY5ZGQyZjU4ODk0MmI0MjFiZjg0MGYwNDE1YzBkMSBzdHJpbmdfbWV0aG9kcworMTM2NzMgNDFmY2I0MGU4NDFmZDZhNjMxM2NlZGYyZWNhYWJkNzU2MWJlNjk5YSBsZWdhY3ktdHJ1bmsKKzEzNjc0IGQ5OTdlMjdlMzMxMmJjMGRjNjZmMjcwOTk1ZDU4NzMxZjg5ZjNjMzEgbGVnYWN5LXRydW5rCisxMzY3NSBmNjJlNDY1YzRkMDE0YjhlMzZiODUyNDhmYTgxMjlkZTA2OTE4YWU3IGxlZ2FjeS10cnVuaworMTM2NzYgYmJkMDM1ZTVhOTcyY2ZhMWVhYTRlZmFjN2Y0NDNjMWUwYzM2OGQ1ZCBsZWdhY3ktdHJ1bmsKKzEzNjc3IGI4YTI5ZGU5ZWQ1NGIyNDNhYmQzNDQ3MDk5NWI5ZTQ2NmJlMGY3MDEgbGVnYWN5LXRydW5rCisxMzY3OCA4NzhhYzBjZDBlNzY4MThlMjU2M2RlZWUzZTJhOTE2M2UyOWI4OGVkIGxlZ2FjeS10cnVuaworMTM2NzkgZjRlZmJhMzIzMjBlYzQzYTgxOTRjMjFiNThhMmNkODkzNWQ1YjEzOSBsZWdhY3ktdHJ1bmsKKzEzNjgwIDgzZjM5ZmM4NTc2M2JlZjQyOWI5ZmYyNWEwOGUxYzU5ZmNhNzNiYjAgbGVnYWN5LXRydW5rCisxMzY4MSAzNmE2NTQ2MmMyNjlkMGNjZDI1YzQxMmVlYmY3ZDZhZTBjODU4NDBjIGxlZ2FjeS10cnVuaworMTM2ODIgMWE2OGM5NzJkMDg0MWUzNWQ0ZTNlMTMwMzkxNTQyMTg3OTA0Njc4MyBsZWdhY3ktdHJ1bmsKKzEzNjgzIDY4NTJmZjAzMDMwODg0YmRmZTc1OWYyZjM0YzQxYTI0YzVjOTc3MWMgbGVnYWN5LXRydW5rCisxMzY4NCAyYzRkNDhlMzFiZDVlNzhhYjcwOTNjMmZhYTM4ZTk1MmQxZDNlODZlIGxlZ2FjeS10cnVuaworMTM2ODUgNDNjY2JjZjQzODRmMTIzMTEzMjAyZDlhYTZhODlkY2U2ZjM2Y2JkYiBsZWdhY3ktdHJ1bmsKKzEzNjg2IDdjZTViYWU3Zjc2NWE0NmVjZTE1NWQwZTQxNjUzYjkyMTJiYWY0ZTYgbGVnYWN5LXRydW5rCisxMzY4NyAyZjEwMjZkYjgyMjgwYmVmZTdmNjhiZDNlYTU5NTkxOTllZjBjY2ZiIGxlZ2FjeS10cnVuaworMTM2ODggYWVkMTlhZjYwZWEzMjUyYzhkZjBjYWVlNjU2ZTRmYzJkY2U5YjYzYyBsZWdhY3ktdHJ1bmsKKzEzNjg5IDBiYWZmMTM1YzRiNGUxYjA4YmEwYWU3OGJkMDY0MWJkM2Q0YmY5YTAgbGVnYWN5LXRydW5rCisxMzY5MCBkMTU0YWU3Y2EwMTRmNzkxMzBlNDYwMjk0NmJhZjczM2EyOWFmNjQ4IGxlZ2FjeS10cnVuaworMTM2OTEgM2M4YzU1NzYxMDljMzU3ZjFmNmI1NDk5OWIzZGM4NDUxZmE3NDFkYyBsZWdhY3ktdHJ1bmsKKzEzNjkyIDZlNmJkYWU4ODA4YTUzMTk0NTRiN2U2ZGRiYzZlM2JmMWM2MjI1NzcgbGVnYWN5LXRydW5rCisxMzY5MyA5OGU1OWM4NGVjMzFhM2ViZGJmODYyODI3OTZlMTg3MjYwNmY3YTlkIGxlZ2FjeS10cnVuaworMTM2OTQgYTRhYmEyMDUwMzhlYjVhMmFiOTkyNjNlMDJmMjMwMWY4NzQzOGZiZCBsZWdhY3ktdHJ1bmsKKzEzNjk1IDNlMGM3ZTY5MzliZDAyYTY3NTUwY2ExMDUyZDgwMmRhMzRiNGQ0ZWUgbGVnYWN5LXRydW5rCisxMzY5NiAxYTI3ZGQwNmNjZTE2OWRhZGMyODFkNmFkYzQ0MTcwMTgwMzMxMmZhIGxlZ2FjeS10cnVuaworMTM2OTcgNjE3ZTEwZmM1ZDhkMzI4ZmEwMDhmZDEzN2M3Yzk0OWMxYThhZTA5YyBsZWdhY3ktdHJ1bmsKKzEzNjk4IDVkYTU3ZWE1ZmM2NDE4MTNiNWYyNTA2MDU3ZmQwMTE3ZDRiNjg5ZmUgbGVnYWN5LXRydW5rCisxMzY5OSAzMjA2NTIyNDJlNmJhMDZjNTE1YTNiNjhlNTA2OTJmZjcyNGU5N2MyIGxlZ2FjeS10cnVuaworMTM3MDAgMDQ5MjlhYmNhZDg2YmNiNTI3NTQ3OGVkMGNkZDVhYzk2OWE1NTA4NiBsZWdhY3ktdHJ1bmsKKzEzNzAxIDhlNzRlZDE1NGY2MDg3ZmVjNzJmNWU2Mzg0YzdjNzYwZjcwNDQ3MjUgbGVnYWN5LXRydW5rCisxMzcwMiBmNzY2ZmI2Zjg1MjY1YTQ5YjgzOGI3ZTNkNjVhNmExYzY4YTgxODI0IGxlZ2FjeS10cnVuaworMTM3MDMgMzQ4NWE3ZTQ2MDBiOWZlZGYxOGU2NTVmYmY4YWU5ZGU1NDY0NjEzZCBsZWdhY3ktdHJ1bmsKKzEzNzA0IGZhYjgxZGY1NjZkMGNmY2U0NjRiZmE4NGM4YjUwNGViMWM1MzA0NTAgbGVnYWN5LXRydW5rCisxMzcwNSA2NGIxNWU5MDkxYTkyYmI2MzU4OTdjZmY5OTg3NTdjMzU1MDRiMjI2IGxlZ2FjeS10cnVuaworMTM3MDYgNWY1ZmMxMDMxOTU3YWE1YTQyZmUxYjYyN2E0M2M4ZTI3MzU2MWRkMiBsZWdhY3ktdHJ1bmsKKzEzNzA3IDI0NWQyYjYwNTAzNmQxNGYxNDk0NjdjODA5YjhjYTM1YTFkMmQzY2YgbGVnYWN5LXRydW5rCisxMzcwOCBkNmFiNzJjYjE2MjU4ZTljMTExMWE1NThiZmE0ZDZlNzUxZDVlYWQ2IGxlZ2FjeS10cnVuaworMTM3MDkgODE3NWJmZGZiZWE5ZTQwZjgxOWYwZjZjZGU2YTlkNzMyZjZhZWFjYSBsZWdhY3ktdHJ1bmsKKzEzNzEwIDZjMTMwOWQ4MmNiMTE0MWZmZTMxYjZjZjQyMTNlZWY4NWJhNWJhYWIgbGVnYWN5LXRydW5rCisxMzcxMSAzNWUwZDAzZjJiMDJmOWY4YzVkZGZiMzEwYWJiOWFiY2ZjNWZjMjA4IGxlZ2FjeS10cnVuaworMTM3MTIgMWUwYjE5NjdiZTdmM2U1ZDk0YjI4YzRjZDRmNTgwNTE2YTAzNDIzNCBsZWdhY3ktdHJ1bmsKKzEzNzEzIDkzOGI0NmZhNjM5NGU4ODhlM2RiZDc4YzA5Mzg3MjU2NjQ3OTRhNDIgbGVnYWN5LXRydW5rCisxMzcxNCBkYmI4MDgzZjBjZTcxYzM5Y2MyMjZkYjI5NjE3ZDBjYWNhNjk0MWIxIGxlZ2FjeS10cnVuaworMTM3MTYgMjRjNWJjNmJmY2FhZmU4ZWU1YjVmNjY5NGQ2NDdjMWQzZGM1NTBlOCBsZWdhY3ktdHJ1bmsKKzEzNzE3IGY2ZTZjZGJhZGJiNTA0ZTBjMzJiZTBhNmY0NjVhNjVjOTM4Y2ZlMzEgbGVnYWN5LXRydW5rCisxMzcxOCAxMjNjMzhkYTZmNDM4M2Y4M2ZkYzY5YzNkNWQzZTY2ZjkwODk1YWFhIGxlZ2FjeS10cnVuaworMTM3MTkgZWNlZTlkZTc5YjFlZjU3MzRmOGYxZGNmY2Q2MGUxY2EzYWFiZTVkNSBsZWdhY3ktdHJ1bmsKKzEzNzIwIDNkNjZhMTk3MTkzNjk4MGE1YzBjOTQxNjA4M2UzYmQ5ZDU5N2Q2M2IgbGVnYWN5LXRydW5rCisxMzcyMSAwMWM1MWIyNjhjMDQ5NjFmZjJjYTVlNmJkZmU0NWFhYTk3MjU2ZDdkIGxlZ2FjeS10cnVuaworMTM3MjIgYzcyMDMxOGUzYzQ5MjA3ODE3ZGZkYjBjMzY5YzEzOTk5NTUyZTE0NiBsZWdhY3ktdHJ1bmsKKzEzNzIzIDg5OTYxYjY4MTNhYzM5MTliNDdhYjkyZWFhNTg4YjAyOTk0MjBmMDQgbGVnYWN5LXRydW5rCisxMzcyNCBjNjI3NzM0ZWFmOTI5YTc5YzYyYTMzNWE5ZGE3ZjZhNDE1MGYxNjhmIGxlZ2FjeS10cnVuaworMTM3MjUgYTgxOTVmYTMyOWFjMzliZmMyYTM5MWZiMmQxYmNhNTU1MzFiNGMxZSBsZWdhY3ktdHJ1bmsKKzEzNzI2IDFjOGU0MjI3ZDk4NzkxYmFhOWQ4MDk5OWNkNGM1ODM1ZDY2NTQ5ZGQgbGVnYWN5LXRydW5rCisxMzcyNyA0ZmRkMzM5MTRlZGFiNDgyMDI5NjVhMjhiOWNlMTE0MGFmYjkyNzViIGxlZ2FjeS10cnVuaworMTM3MjggZThiMjRjZDE3ZGYyM2Q4NzJlMjZlNzU2YmZhMzZhM2VjNjdkNTcxMCBsZWdhY3ktdHJ1bmsKKzEzNzI5IGM1MmZiYzZiZDM4YTkxNzAxNWIzOTJkOWM5ZTAzYTk0ZGU2MDAyMTYgbGVnYWN5LXRydW5rCisxMzczMCBiY2EyZDE0ZjNlMzY1MGY2YjE3ZDQyMzNmOGMxZmNlNTc4OTRjNGUzIGxlZ2FjeS10cnVuaworMTM3MzEgYmY1NjViMThjZmRjNGZiYWQxMGYwN2VkYThmOWEzODJhMWEyMGVhMCBsZWdhY3ktdHJ1bmsKKzEzNzMyIDdlZWViMGQyYjBhNDAxYjE4NzI4MjdiMDVhNTY2MGZiNjY3MzdlMTUgbGVnYWN5LXRydW5rCisxMzczMyA3MWUwYjQ1ZDU1OGMyZjY5ZTRiMjM3MTc1ZmNiYjJjMjkyNDVlNmM3IGxlZ2FjeS10cnVuaworMTM3MzQgOTE1N2M2ZGE3NjE5M2ExNTNhNDZhZmRkZjdkZWI0MTAxNzk1NGU5OSBsZWdhY3ktdHJ1bmsKKzEzNzM1IGRlOGZmZDJlNzFiNWZhZWFkNjcwMjJmMzgwYWY5YWU2N2JjMTZkZDYgbGVnYWN5LXRydW5rCisxMzczNiA5OGQ0NTczODNhMmQzZjRiMDVmYzc3YTZhMTcyNGVjMzdkNzdmYzg2IGxlZ2FjeS10cnVuaworMTM3MzcgYzM4OGYwMGFmZmU3ZGNiM2NhYTFmYmNmMzZjMzdiNWUyM2IzOTYzMSBsZWdhY3ktdHJ1bmsKKzEzNzM4IDVmZTI2M2ZiNjc0YWIxYTAwNjdlNmNhYzA5MGM0NDA2NjVhYTE3ZGEgbGVnYWN5LXRydW5rCisxMzczOSBhOGI1YTViMzkyZmJjNTJjMDk2ODFlMGNhMmM1YTM1Nzg0YTM0MzZlIGxlZ2FjeS10cnVuaworMTM3NDAgY2Y3Y2Q3YjA0ZmE2NTlhNWMyMTNhMjgxOGUwZDc3M2ZiMmZjZDM0MCBsZWdhY3ktdHJ1bmsKKzEzNzQxIGQ1ZjQ2ZjU5OTU4NWJiNjg0NWY3ODJlYzdlOTc0MWVmN2UxNzJjYTMgbGVnYWN5LXRydW5rCisxMzc0MiBkNWIzNzM0NDBmOTlhMzgyNWVjYjg3YTQ4MDU2MDNlNzM4NTY0NTYwIGxlZ2FjeS10cnVuaworMTM3NDMgZWFmOWVlYWIzYmNmZjkxZGNkZGUxOTg5ZmY1MTYxYTNhNmNhMTc2OSBsZWdhY3ktdHJ1bmsKKzEzNzQ0IDk2NTAxY2MzYTY2M2I0Nzg1MzI1NDdjMDBiNmNlZjVhZDg3ZjZmZTMgbGVnYWN5LXRydW5rCisxMzc0NSBiNWJkM2Y5NzlkYzk4YzMxY2FiNjVlNWQwN2Q3YmZhMTk1NjUyOGE3IGxlZ2FjeS10cnVuaworMTM3NDYgNGFhZTVhZmUxZjE0NDQ0MmY1NmVjY2JkMjQwNzcwYzg1NzIyMDI1YyBsZWdhY3ktdHJ1bmsKKzEzNzQ3IGY0MDZlNzhlYzEwYmNkZjZjZWZkOWNhMjVmZDk5ZGIyNDY0ZDA0YTQgbGVnYWN5LXRydW5rCisxMzc0OCA0NDVjYmU4ZGI4ZjZmNDdlNjE3NjJlYmNjNjc5YzFkZDZiNjE3NTg3IGxlZ2FjeS10cnVuaworMTM3NDkgMmQ3MzMxZjRkZmUzNTFiYzlmYjhmYWU4NGI4MWIxYmMxOTEyZDUzZCBsZWdhY3ktdHJ1bmsKKzEzNzUwIDhiYjI3ZjRlYmUxNmU1YTk3NGMwOTUzNmViOTMyYjNmOTg2MTZjZWMgbGVnYWN5LXRydW5rCisxMzc1MSAzMDg5NDYxOTYzYzRiOTU3NjNlNTMwNWMzMDdhMTliNWUzMDYzNTNkIGxlZ2FjeS10cnVuaworMTM3NTIgZWNmZTNkOGNiMGMzNDcxMGQ2YmRlY2VlMWE0MDZmYmIwNDM0YjVjNiBsZWdhY3ktdHJ1bmsKKzEzNzUzIDI4NTZhZDVjNjc5YWU3MzljNjYzMTEyOTc1YmE1YmUzMDY0NjA2NDkgbGVnYWN5LXRydW5rCisxMzc1NCA5YTY2ZTc4MDdjNzczNDE5ZTE1ODY2YjhmNzY2ZTIxODZlZjg0ZjEzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzc1NSBhYTRjOGUyZWY1YjQyOWU5MDg2Y2U4MWY2N2E4ZDE2MWE5M2RmNWUxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzc1NiA5MDUyMjY0NzFiNGM3ZjlmYjE5MDljMjhmZjhjMzM4OTMzYzAyZmFhIGxlZ2FjeS10cnVuaworMTM3NTcgZTAxZjIzNTM5YjZjYThiMzJjNTBjYjgwYTcxYTgxZTBkNmQzYjI2MiBsZWdhY3ktdHJ1bmsKKzEzNzU4IGEwYzUyMGMxZDEyZDQ2YjVlOTQ4MzlhODAyYzljOGRmZWMxOGIzMjUgbGVnYWN5LXRydW5rCisxMzc1OSBlNzczZDJmMDc0MWRjNTg3MjQ5MmVlOGU2NTk5NDhlOTZmMTI4ZGM1IGxlZ2FjeS10cnVuaworMTM3NjAgZTBlNjdjZjJmYzY0NDUxOTgwYjU0MWYyZDI1NzEzNGI2NmQzODMwZSBsZWdhY3ktdHJ1bmsKKzEzNzYxIDEwZWJiMjViMjQyZDdhMDA5NGE1OWE3MDI5YTc3Y2Y5ZDJmYzYyMjcgbGVnYWN5LXRydW5rCisxMzc2MiBiNjk4NTliNjk3NjM5Y2VkZjU2OWU1NzM1MmRmYzViZTFkYmVkNTUyIGxlZ2FjeS10cnVuaworMTM3NjMgNmRjNGNjMzE4YTVjOGExMDMzYjk5ODE4Mzg2MzJjZmVhYWY4MmU2OSBsZWdhY3ktdHJ1bmsKKzEzNzY0IGU3NDY5NDRlOWE0YTY3NmY5YzgzNzIzYjJmM2Y3ZDU4YzUzYzY3YjEgbGVnYWN5LXRydW5rCisxMzc2NSA4MzNmZDIzMzhjNjk4ZGI0NjM0M2Y3NmYwZDc4YjEwYzY3YTE1OWM4IGxlZ2FjeS10cnVuaworMTM3NjYgMDI4N2Y1YjMyMjRjYzc4MTdiM2Q0ZWZmMzA1MTg0NGFmZGE2MzFhNSBsZWdhY3ktdHJ1bmsKKzEzNzY3IDA1ZTBjYjM2OTE0NjI3YTY5MjJiYjAzNTAwNzljMDRiZGMzYmIzMjUgbGVnYWN5LXRydW5rCisxMzc2OCA3ZmIyZjQ1NjJmNzY1N2RhMzQ5YjRmYTFlMzQ5NTc3NWQyMDU4MGNkIGxlZ2FjeS10cnVuaworMTM3NjkgNzc5Y2U0NmUzNDMwYThhZDY1YWQ5MTZjZTJhMzQ2ZGY3ZGZlMGY0NSBsZWdhY3ktdHJ1bmsKKzEzNzcwIDU2ZWY0YzJlMGQ3ZWZiYmQ5MWNhNThjMGQ2ZDNiZmI0NmUzOGQ2OGIgbGVnYWN5LXRydW5rCisxMzc3MSA1NzdlYTI2MWJkZjI1OWFhMzI0MTY3MTBiMDE3MjZhMDk4ODZiNWE1IGxlZ2FjeS10cnVuaworMTM3NzIgNGNjNGJhYTI0YTQwMDZlM2RmMjFiNDNmNjU3MWRlMzYzN2RmYTgxMSBsZWdhY3ktdHJ1bmsKKzEzNzczIDVmMDMyNjg2YTM3MTJkNmNkODNjNjg5MjYzNDFjYjczYmI5NGY2NTQgbGVnYWN5LXRydW5rCisxMzc3NCAwMDYxY2E0ODY1ZDczNGM4ZTg4YjFjYWRhNmNlMjMwOWM2NWEyOGZkIGxlZ2FjeS10cnVuaworMTM3NzUgNmFhYzMxY2QyMTAyNWQ4MjQxZDY2MjU0MGU3NjMxODg2N2Y5NDhiYyBsZWdhY3ktdHJ1bmsKKzEzNzc2IDQzODViMWJjYmMzYjNlYWI5MWY0MzlhMDY3MGEyNjE0ZWY1YzUyYTEgbGVnYWN5LXRydW5rCisxMzc3NyA4NTRiODAxMjUzZjBmZmM2YjdkNzJjMDFmZTlkMzlmZDVlNGY1OTcxIGxlZ2FjeS10cnVuaworMTM3NzggZDEzZGExOTQxOGVjYThkZWYyNzdhYzE4MTY3MzVhODk5MjU0MmM4MCBsZWdhY3ktdHJ1bmsKKzEzNzc5IGM5YzE4ODQyNmU3NmMyZTkzYzMzY2MzMDFhNDE0YTVlNWY2ZThmNTQgbGVnYWN5LXRydW5rCisxMzc4MCBlNjFjNDg2YjM1OGE1MDQ1NDI1NTUwOTM2ZDQzM2I4OGI5ZDE4ZmM5IGxlZ2FjeS10cnVuaworMTM3ODEgYWVkZTdiMmRkNDJmZTBmZTJkMzU4NDZjYzE1ZGU0OWFiOWRjOGI0NyBsZWdhY3ktdHJ1bmsKKzEzNzgyIGIzZjFhYmQzMDI3ZmRiOWZjMTBjMmNjNWYyOWFiZGZlMjE3NGIxMmYgbGVnYWN5LXRydW5rCisxMzc4MyAyZjA3YmM1NmU5N2U3YWM3NWI0YWEwMDIxZmZlOTFkYWU0M2Y3ZjZiIGxlZ2FjeS10cnVuaworMTM3ODQgZWNjODAxOGE0MThjMzQ3NTdhZTA3MjU3YTU1ZTVlMTc3YWZiMTkwYiBsZWdhY3ktdHJ1bmsKKzEzNzg1IGM2YmRmMDMyYjcwNTZlMmE4ZGJhODJlMWYwODcyZWZkODZjMmU3NzUgbGVnYWN5LXRydW5rCisxMzc4NiAwZDczY2U2ZDYyMjY3Y2FlNzQzM2ZlZDY3NDEzNmMzNDQyYjIyMGQ4IGxlZ2FjeS10cnVuaworMTM3ODcgNDI3YzNiNTAwNThlYWIwYzkwYTQ2NzgwMWQ4M2I2NjUwZDlkNDcxOCBsZWdhY3ktdHJ1bmsKKzEzNzg4IDI2ZmJjODBmYWRmMjVhZGMwZTI5MWViNzgyZDAxZTgxOTM5MGU2MjYgbGVnYWN5LXRydW5rCisxMzc4OSAwZDQ0YjBkYmRkOTUxYjE5MDBkZjZkZWUxNThiN2VhNTBkNmJiYjQ3IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzc5MCA3YWQ0ZTM5OGYzZWEzZGMyNDIzODJmZWNhMTI1NWI1NmVmNDFmYTk0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzc5MSA5Mjg2ZDNlMTQ3NGM1NDYzNTk2NTEzNDFiZTliODE1N2JmYWRhNmNhIGxlZ2FjeS10cnVuaworMTM3OTIgMjM0MWJlNzRiNzU4MmY3NjM4YTc0MWRmZDI4NTRiYjcwYTMyZDM3YiBsZWdhY3ktdHJ1bmsKKzEzNzkzIDBhNzBhMmM1ZDllNjk5NzhjZWE0OTJlNjMwM2E5MDYwOWM1ZGMyNDEgbGVnYWN5LXRydW5rCisxMzc5NCBlYWVlYTllNDIzNjk4YTMyNzczODMzOTIzMzVjZjMwYTJjZjJhOTRkIGxlZ2FjeS10cnVuaworMTM3OTUgNjk2OGZkYmIxYTNmZWM5M2QzODcxNWI2NmIzN2RmODMxNGYwYTMzMyBsZWdhY3ktdHJ1bmsKKzEzNzk2IDgxMGMyNWQ1MDQxYzRhNTM0YjJmNTVjZDE3Y2U4MmRkZTBiZWQ0MDggbGVnYWN5LXRydW5rCisxMzc5NyA0NzE3MWYyZDdkNTg1ZDAwOGIyODJlODZhNzc3YWMyY2FmMjI2YjFjIGxlZ2FjeS10cnVuaworMTM3OTggMzFiZWNjNDMyNTIzOWUwZGY0OTQyMDQxOWM2NjFjNmRmMDYzZDlmMSBsZWdhY3ktdHJ1bmsKKzEzNzk5IDgzMzYxODhhM2MxMDA1MjA2NDUzOThiZGUxZWU1ZWZlMDVjZDk1NDcgbGVnYWN5LXRydW5rCisxMzgwMCBjMGI4NmE0NGExMjAzYTQ1NGYwOGYxYzhiNmI2ZmZhNWU5Y2Y0OTExIGxlZ2FjeS10cnVuaworMTM4MDEgMmIyNmU0OGE4NWE2YTI0ZTA1M2ViZWJhOGU2YjdkZWIxZmU4MGQyYSBsZWdhY3ktdHJ1bmsKKzEzODAyIDNmZThkMTMzMjhjODEzMjkzNDcyNTUxNWRhODVlNGZlNzI5OGFkYTIgbGVnYWN5LXRydW5rCisxMzgwMyAyZTA4NzUzOWRhNjA0ZGNiNTk1ZjNiMzQ0Nzg3NDJhMDc3YmMzYmY0IGxlZ2FjeS10cnVuaworMTM4MDQgMmNjNmExMmNkNDExOGUyZGZiNzc0Y2E2MDMyZTQ4NGE0ZDVhYjhjMSBsZWdhY3ktdHJ1bmsKKzEzODA1IDkyZjdhZjQyZWQ5MWM1YWE3NWFlMDM0ODYxNzI1NzgyYTAwYWFlYTQgbGVnYWN5LXRydW5rCisxMzgwNiAyMDFhYzA2OWIwZDBiOGE4ODNmZGI0Nzg1YWJmZTY0Njk2ODEyZDllIGxlZ2FjeS10cnVuaworMTM4MDcgZmZjZGIwNzExNjk1ODRmZjk3ZjExOThlNGRhNTFmMDMzZTQxOTIwNSBsZWdhY3ktdHJ1bmsKKzEzODA4IGVmYTc1YzY5ODU3ZDJiMjgyZmM4ZjhhNDY4NDcxNTc0NjljMzViZDcgbGVnYWN5LXRydW5rCisxMzgwOSA2NzJkYmJjMzliYTA4MzRiOTZjOTFjM2EyYjc2NjYyMDIyYmJlOTQ1IGxlZ2FjeS10cnVuaworMTM4MTAgNDI4ODY1ZDAwZWVlZjU1MmUxMmMwZTNlMTAzYjZkYjUwYTljNTRjMSBsZWdhY3ktdHJ1bmsKKzEzODExIDJlMjBhMGZjMmM1ZjNiMmI5ODk5NDhlMmI5OWM3NWI3ZTlmNGZkODUgbGVnYWN5LXRydW5rCisxMzgxMiAzYjk4MWVhY2FkN2I0MzkzNGU5Njc2YTlhOTJhZmUyOGUzNjNmMWZhIGxlZ2FjeS10cnVuaworMTM4MTMgNzBjY2NjYTZiZGYwNjFlMzlmYzM0NWM0NWJhZDU2ODk2MTlmYjk2NyBsZWdhY3ktdHJ1bmsKKzEzODE0IGE0OTlkMjBhMzVjYTJjZWFkODc2ZDJhMDllYjFmZmQxY2FhYjM5MzcgbGVnYWN5LXRydW5rCisxMzgxNSBjYWU0YjA5MjczYjMwYzc4NmQ1YmQzMTQwODg3NWEzZjA3OTIzMDBhIGxlZ2FjeS10cnVuaworMTM4MTYgYWRmNmQyMWNjZDdmMWFhNDRkOGM2Yzk5OWU5M2Q2ZDAxYWI0MjZhMiBsZWdhY3ktdHJ1bmsKKzEzODE3IGNkZDkyOGQyMjkzYzI4MmVmMGI5ZmNmYjIwNTVkNWZkMDQ0NjMxZTkgbGVnYWN5LXRydW5rCisxMzgxOCBkNDExMmQ0YzViYjE4M2U2NGFiNzdkZmUxMGM5NzliY2QyY2UzMWIyIGxlZ2FjeS10cnVuaworMTM4MTkgOThlMzAzOTM5YjM5ZTIyZWFlMjdiNmYyMTZiZjVkOGNjNWI2NzkyOSBsZWdhY3ktdHJ1bmsKKzEzODIwIDIwMzUwZWNjYTZlNGIxMzI4MTY4NjI1ZGFiOTIyYzUzODNkZjJlNDQgbGVnYWN5LXRydW5rCisxMzgyMSBmNjdjZTE1MjcxOWFhZmU5Y2ExY2ZiMjhlNzUxZThiOGNlNWVjYTI3IGxlZ2FjeS10cnVuaworMTM4MjIgODM3ZmU3NWQ2ZGMxOWUwMzYwMjFjODBhMjYxODcwMmEzODBmNDIxNiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4MjMgNTE4OWVhNmU0YmY2ZWU0MjMxMzcxYmNkMjZkNzU3NGJkMmViYTExYyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4MjQgYWRmODdkMTNhMGMxYWFmMTEzZTk0NTNmYzBiOGUyMjVmZjI5NDBlOSBsZWdhY3ktdHJ1bmsKKzEzODI1IGYyYzkyMGQwM2Y0NGNlMzFkMzk3ZDgwN2IwYWVhN2M3YWNkMWEwYmUgbGVnYWN5LXRydW5rCisxMzgyNiBjY2RmNWRjMmFjZjY1MjY0N2I4ODQ0NDU2YzNiODIzMTkwOWRkMzY5IGxlZ2FjeS10cnVuaworMTM4MjcgOTY0MTg2NzQ1ZWE2YTRkMTg1Njk4YjczOTFlNDIzMThjM2JmZTAyYiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4MjggZDk3MGFmMGNlY2U5NjIwZDI0NzExYjZmYzI0NmQzYjVkZDA4MzJmOCBsZWdhY3ktdHJ1bmsKKzEzODI5IDMzMWVlNGFmZTliZWQ4NmJkZTkzMTAxZWQ1ZWQ1NWFlNzkzOTcwNTQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzODMwIGI3YWQxODA5YmUwNDlmMDIzOGMxZjdiOGUyYjI0ZjY5YmNkNDBmZjUgbGVnYWN5LXRydW5rCisxMzgzMSA3OGZkYjZjMGMwYTE1MTIzMjgyNzQzNzM2MzA4OWNlZGRjMGZmMDRlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzgzMiBhOWQyOGEwN2EzMjc2Zjg5OTM5ZjNiNmI0MWZkZjIwNmE2ZGY2YzUwIGxlZ2FjeS10cnVuaworMTM4MzMgZDM2OTZiZjA4ZWVlYTg2MWQ4MDU5OTNmN2Q1YzJkMWFlYWU1NTViZSBsZWdhY3ktdHJ1bmsKKzEzODM0IGM2YWEzMmZiM2NmOGZhZjE2MWQzNzU0ZmE0N2Q3NTIwNjkzODA1MjQgbGVnYWN5LXRydW5rCisxMzgzNSAwMDk0YmYxOGU2ODg4NWIwMWNlNWIyMjNhODIwYjI1Yzc5MGZmMGM2IGxlZ2FjeS10cnVuaworMTM4MzYgMjU2MDIzNmVjZWRiYWRhYmI3OTNhM2M1MmMzM2RlZDQxNGY2ZWZiOSBsZWdhY3ktdHJ1bmsKKzEzODM3IDQ4ZjJiMThiYWQ1ZDFmZmExM2Q2Yzg0Yzc5YmQzMmFiZDk4Yjg5OGQgbGVnYWN5LXRydW5rCisxMzgzOCA2ZDY0NmY3ZTFhMWM3ZWY0YjE1NmUxZWEyMGQxMWI2MTg4NWJiZGE2IGxlZ2FjeS10cnVuaworMTM4MzkgOGVjNmQyYzZjNTk4MWVmMjY1YTRmZDZkMGIwZTgzNjkzMjIzOGNkOSBsZWdhY3ktdHJ1bmsKKzEzODQwIDdmMTc1YzMyM2I4ZTQ2YThjNWRkZTkxNzBiZDQwZjY2OGQyNzM3ODkgbGVnYWN5LXRydW5rCisxMzg0MSA4MDI4OTA4YTk4ODk5MTIzNjkyYzY2NmQ3ZmQ2YWE5ZjZlNzliMGI0IGxlZ2FjeS10cnVuaworMTM4NDIgYWRiNWI2ZGRjMWU1ZWY1YzdmMDRkMGVhZDhhYjdlZTQ4MGU1NTMyNiBsZWdhY3ktdHJ1bmsKKzEzODQzIDQyNGIzMWFmNmQ1MTBlMTU1ZDgxNTE3NmY5ZmQ4OTg2ZDRlYzAyNjkgbGVnYWN5LXRydW5rCisxMzg0NCA0NGM4MjJhNGQ5NTAxODY1NjkzODljNzVmM2ZjY2ZiNzI1OWM0M2M3IGxlZ2FjeS10cnVuaworMTM4NDUgMTU4NDlmZWFjM2ZhMDFkYzYxZDA0NTJkN2Y1OTgxNzFkZWVlOTZiZSBsZWdhY3ktdHJ1bmsKKzEzODQ2IGQzYzRjMTNlMDEzOGMyNGNlZjRkMGM3MTFmMjA5MjZhZThkNjc0N2IgbGVnYWN5LXRydW5rCisxMzg0NyA3N2IzMzJkYzIwNjM2NDRlZjE0YTU0MjNhNGQwNGU4NTViYzJkZTEzIGxlZ2FjeS10cnVuaworMTM4NDggZTM0NGMxZmZjZGFmNTM2ZTMzMjg1ZGNiMTk0NmEzN2JjMTRiMjE5YiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4NDkgNDIzMjAzYWFiZWZiNDhjY2Q2NmQ2OGE3Y2NkNWYxNTY0YmUwYTg0YSBsZWdhY3ktdHJ1bmsKKzEzODUwIDU4YjhkMjE2ZDcyMTRjZTNjMmIzZTY4ZDIyOGRiNTBkNWVlZmNlYmUgbGVnYWN5LXRydW5rCisxMzg1MSBlNmU0NWE2MGUxZTAyNzNhZjg4MGI3MzgwZGMxZmM3NTUxNDcwMjEzIGxlZ2FjeS10cnVuaworMTM4NTIgYjQ0MjQwYjI3M2NmYjUzM2RjZDM0NzIzZTZlNDExYzEyN2E0ZjIxMyBsZWdhY3ktdHJ1bmsKKzEzODUzIGIxYmI2ZDdhMzM1ZjRmNTI0NGNjYWFjZWE1ODY1YWQ0NmJiOGYxOGUgbGVnYWN5LXRydW5rCisxMzg1NCAxNTgxMzA3NmNiZWY2YWY1NzE4NzEyMDhjZGU1MjA0ZDdmYjVkMTM4IGxlZ2FjeS10cnVuaworMTM4NTUgZmRjYjg5ZDAwNjk1NGI4ZTkzOTYwMTkzMmViODg5MTA3OTQ1ZTRjOCBsZWdhY3ktdHJ1bmsKKzEzODU2IDAwZDU3N2U0NGQzNDFlODZiMjMwYWMyNzA3YzM3ZDEyZjhjZDVkNGQgbGVnYWN5LXRydW5rCisxMzg1NyBhNTk0ZDFlOGNkMWFhNWE4MjA2ZWNjMTBmYTdlNzhjMjgwZDQ4ZWEzIGxlZ2FjeS10cnVuaworMTM4NTggODNhOTg2MTgwZjQxZDY4N2UwN2E1OTRmYTg1YjFhZWUyNzRmOWZiYyBsZWdhY3ktdHJ1bmsKKzEzODU5IDU1NjY2NGM2MzlmYzI2NGVhM2VhNDQzY2FkZWU0MzkyMWRjMWY3MjcgbGVnYWN5LXRydW5rCisxMzg2MCAzYzQ0MDI4YjkxOWQ0YmVmNjdlZDQ5Y2Y2NWJkY2ZhNDQ5MTVkZTc4IGxlZ2FjeS10cnVuaworMTM4NjEgODk4YzMzZTIxNmJiMzYwN2IxN2VmNjExMWMxNTY4NDJlZWE5YzU3OCBsZWdhY3ktdHJ1bmsKKzEzODYyIGI0ZDJmNTQ2NWIzZjg5OGZkNjg1ZTRjNGVkZTY1MmVhN2JkYjgzNDEgbGVnYWN5LXRydW5rCisxMzg2MyAwNWY2OGQ3ZjkxYWM0MjBjNDQxMjdlZDE2ODVhYTk4YzY2YzdmMGQ3IGxlZ2FjeS10cnVuaworMTM4NjQgNTVhMWVmOWViZDRjZGVjNjllNWFhMWZmYzRjNmQ0ODk2MTI5MWFmNiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4NjUgMGFlMjQ0MjBjOGE5ZjI2ZmIwMGNkN2NlNzE3MjM1ZmJkOTIxNDRiYyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM4NjYgYzFiNzI1YjFhMTQ0NjJjYjMxMzEwMTQxZGVkYTUxMTVjMGIwM2QxMyBsZWdhY3ktdHJ1bmsKKzEzODY3IGM3MDJhMTJkMzE4ZDY4NmMzNWQzNjI3NzhmZjEwYzdjY2YzZjc2NTQgbGVnYWN5LXRydW5rCisxMzg2OCBlZDFiNDk4MjJmNzA1NWUzODJmOTkzM2Y1YzNhNjIxNmZhMGU1ZWZiIGxlZ2FjeS10cnVuaworMTM4NjkgMDgyZjQyZDVlYWUzMGVjZDI1ZTNmZmE1ZDRhMWI0NTU2MTRhMTFlZCBsZWdhY3ktdHJ1bmsKKzEzODcwIGEyYjk2M2Y3YWM5OTA3MDUxM2M2NjJmY2Y1NWU2YzhkY2I3ZTMyMDggbGVnYWN5LXRydW5rCisxMzg3MSA1OTVjYjI5YTg4NjdlZTJhZTY2OWJlMWM4NDU1OTUxMWM1MWYxMjQxIGxlZ2FjeS10cnVuaworMTM4NzIgYWQ3NTdhZmY4ZDM3OTVjMTFlMDRkNzJiNTRlZmVkZjI2ZmVjNTBiNiBsZWdhY3ktdHJ1bmsKKzEzODczIDRmZGM5YzFlY2FmNmI3Y2NmZmFhNjdiOGIwOGY3MGRmN2QyMzFhNzQgbGVnYWN5LXRydW5rCisxMzg3NCBmYWQ1NWVlYzVkZmNkYTEzZjJiODkzNjg1MjVhYjk2YjZlNTVmNTgxIGxlZ2FjeS10cnVuaworMTM4NzUgZjllZjM2OGI4YzJkM2ZhZGU3Y2RlNThiOTIxNzAzNTQxOTU1MTQ3MSBsZWdhY3ktdHJ1bmsKKzEzODc2IDQ4NzYyMjI4OGY5YzI5OTQ1MDQyYTZlYmUzYmU3ZGNiNTY0ODJiNWQgbGVnYWN5LXRydW5rCisxMzg3NyAzZDE1NGJlODcxNjI5ZWM2YjZjYWE3ZjEyYzQyNGViNjdmMGU2MmNiIGxlZ2FjeS10cnVuaworMTM4NzggNzBhZGNjZDQ1MjNhNDkxZjJlZWYyOGIwM2YzMjU2ZGYzZTI4M2U0YiBsZWdhY3ktdHJ1bmsKKzEzODc5IDMzNDEwMDIxOGE0YjFkZDIwMTY3ZTViOGNhZTNiNDJmMTMxMDI5N2MgbGVnYWN5LXRydW5rCisxMzg4MCA0Mjk0MWUyZWI5ZDg2YTQ4ZjIzZGMyYWEzZDc3MzI3OTk3MWUyMjllIGxlZ2FjeS10cnVuaworMTM4ODEgNmY3NTA3ZWYyYjExNWE1M2JiOWNmNDZiOGYxYTQzOWVlODI4NjgzYSBsZWdhY3ktdHJ1bmsKKzEzODgyIDdhZTVjNDA1MTA0MWU1YTAzZTg3MjA1ZmQ2Yjc2MTZkY2QyYzQ3YzIgbGVnYWN5LXRydW5rCisxMzg4MyA4YjgxNTgwNWYxMGNiNzJiZDhlMGRkOTk1Y2QyNWUzMTFkMzJjYjMwIGxlZ2FjeS10cnVuaworMTM4ODQgZDgzZmExZGQ3Yjc5ODE5OTQ4M2FiN2I0NjFjMDU4YzA4NmMzNjA1YiBsZWdhY3ktdHJ1bmsKKzEzODg1IGNiYzQ2Mjg0YTVhY2I4NGNiNTNmYjIyMjA2YTkzNmEzYTI2OWUwMDMgbGVnYWN5LXRydW5rCisxMzg4NyA0YzZjOGVmZmNiNDJhMTJiZTI1YzhmYjc3MDVkMjg1MjE1NWZiN2Y5IGxlZ2FjeS10cnVuaworMTM4ODggNTNiMjk3NGVkM2QzNmY3MjQyNTc0ZjdkZjY3ODUwYWZmMjQzODgwZSBsZWdhY3ktdHJ1bmsKKzEzODg5IDEwNjY4ZThhMDk3NTZjMTRkZTc4YmQ4OWVjZjVlNzY5ZGNjMTY4OWMgbGVnYWN5LXRydW5rCisxMzg5MCA4MjZlZjhmMjg3ODJjZThkMjcyMTk1Njk2NzJjZWRlZWQ3NDBlZjM2IGxlZ2FjeS10cnVuaworMTM4OTEgY2ZjNjUxNTkzN2E2OTU0YmRiODEyYzVhYTMzNDJlZWEyMjVmZGM2ZiBsZWdhY3ktdHJ1bmsKKzEzODkyIGM1ZWRkODZlMjY5ODBkNGY5OWY0NTk4Y2MxMTg5MDE1ZDhjMzM0ZjYgbGVnYWN5LXRydW5rCisxMzg5MyA2NzhhOWE3OWM3ZTg1YjcyNjIyZTRkY2FhODU0M2NkZmI1MWUyZWNjIGxlZ2FjeS10cnVuaworMTM4OTQgMDNkMWI5OGQxNzhkY2ZlNTU1MGRkNWNhZDcwZmVhZDk2NGU5MjhiNCBsZWdhY3ktdHJ1bmsKKzEzODk1IDkxNWZhZGYyMjk0MTEzOWFjYjNjODFhNDY2NmIxNWI0MDg4NDgyOGUgbGVnYWN5LXRydW5rCisxMzg5NiAzNzFiOTc2MmQ2M2RlNDU1MTQzZDk1OTIyOGFiNDIzNzdmODI5MjdkIGxlZ2FjeS10cnVuaworMTM4OTcgNWQ1N2M2OGIyYjMyMTI3NGI3YzA5ZWI5MmVhNjExMmM0NWFhYTk5MiBsZWdhY3ktdHJ1bmsKKzEzODk4IDA0ZjAyNGQ4NTQxYzhkNTljNzQ5ZThlZjIyOWFkZmFmYzk4NGZjOTUgbGVnYWN5LXRydW5rCisxMzg5OSBlNTU1YmEwNGI5MjI3NmRjODg1MWEwZWUxZWY2NmI5NTY1NzVhZmQ2IGxlZ2FjeS10cnVuaworMTM5MDAgNWY0NmM3Nzg0OTcxNTBlMGFmNzAxZWQ5ZGUxNzBjOWE1YWI0YWJkZiBsZWdhY3ktdHJ1bmsKKzEzOTAxIGJlNjAzZmNiYTAwMWFhZmU3NDI4M2IyMzhhZmQ1Yzg3ZDJmMDkwZjMgbGVnYWN5LXRydW5rCisxMzkwMiBjYTliZjY5MzVjNTJhNjNlNTY5NDBjYmFlNWJiY2JmZjlmMWQzZTY2IGxlZ2FjeS10cnVuaworMTM5MDMgNGM3ZDYwNDNiNDNhMjg5NDQ0MzM2NDg0OWFjYTk3MTViZDU3ZWE2MyBsZWdhY3ktdHJ1bmsKKzEzOTA0IGRmZDJjN2QzNGQ0NDNjNjk5NGM2MDU1NDA3YmU4ODQzMTA4MTNiM2YgbGVnYWN5LXRydW5rCisxMzkwNSBkMzQ1OTk2ZmNiNjUyMWZiYzkzNGQ0MThiMDQzYmI0YzIzODI2OGRhIGxlZ2FjeS10cnVuaworMTM5MDYgMjVjMDIwMmUwMWE2MjYzODFmMWExMTA0ZTdhMTY3YjY1MDdiMTVhZSBsZWdhY3ktdHJ1bmsKKzEzOTA3IDhmZGFjMTY1NDRlMWM3YzY3OGQ5YjViZGVmNjliYTdkYzNmZjNkNjYgbGVnYWN5LXRydW5rCisxMzkwOCAwOWU4YWFlMTZlOTk4MDMyOTcxMTJkZDFmODc0NjA5MWMwNWQ0ZmFhIGxlZ2FjeS10cnVuaworMTM5MDkgMjNmMjc4NjYwY2E5YTkyNTNkNDM5MmM4MWVmNDhkODE2MTIyNjlkMyBsZWdhY3ktdHJ1bmsKKzEzOTEwIDhiNjNhNmY3YTUyM2M0ZTE1ZTVmYTMxNzg2MTViZDY0MjNhOGJhYjUgbGVnYWN5LXRydW5rCisxMzkxMSBiOWJiZTg4ZDk1NTQ3N2EzZjQwYjRhOGNmNzdmNTQ1ZjFlZThjOWE1IGxlZ2FjeS10cnVuaworMTM5MTIgMjljZTk1NmZhN2I3NWU3YWUxMzYyMTE0ZWE0ZDA3NTg2MTcxYjkzNSBsZWdhY3ktdHJ1bmsKKzEzOTEzIDQxOTkwYmNlMDIzYTgxMDM4NmM2ZTk2NzlkMDhiMTAyMGQyMDUyZTIgbGVnYWN5LXRydW5rCisxMzkxNCA4NjE4NDE1ZTdhNjZjNzFiYWQyOWY0MmY4MWUyMTc5NDhiOTAwYThmIGxlZ2FjeS10cnVuaworMTM5MTUgZDkxOWNmOWZkZDg5ZTcyYjExYzRlZjkzNGEwYjBlMTRlN2U5ZmIwNSBsZWdhY3ktdHJ1bmsKKzEzOTE2IDdlMDVhN2QwYjUxMWQ1ZGYwNThjNTIwMzJmYmVjNDkwYzgzZTdjMjkgbGVnYWN5LXRydW5rCisxMzkxNyA2NjIxNmYzMjQwM2QxYTkxYjQ2MjYwNzdjMzY1NmMwNzkzM2UxYmI3IGxlZ2FjeS10cnVuaworMTM5MTggMDQwYjA1ODE2YjE3Zjk4MTEwOTA4ZWFmMjcwN2VjNWI2ZDg3MWE3OCBsZWdhY3ktdHJ1bmsKKzEzOTE5IGExMGRiNWI2ODQzZjI5MGQyYmRjYThjNzA2OTVhMDU4MjVjMzFkY2YgbGVnYWN5LXRydW5rCisxMzkyMCAzMjI5YjEzODEyMWUyYTRjYWJmNDMzN2Y2NGZmNTU1M2M5YjA1M2FiIGxlZ2FjeS10cnVuaworMTM5MjEgZGM5ZjFmOTY0NjkwYmE0MDU4YzE2MzUxMjBhNmM5Y2MzZTBkYWE2MiBsZWdhY3ktdHJ1bmsKKzEzOTIyIDNmYWExMjE4OTUwZWVjZTMzZWEyZGVjOGIyNjZkNDAxYTc2N2VhYWQgbGVnYWN5LXRydW5rCisxMzkyMyAzZTNjNzFmNGQyZGVkMWU0ZjFmZWJhZWI5MDY0MzhjMDM5OWNhNDYxIGxlZ2FjeS10cnVuaworMTM5MjQgNGFkMTRlNGRjN2U1MTYwMGMwOWU5NDVjZjY1Mzg2MGI0Yjc1ZTVkMyBsZWdhY3ktdHJ1bmsKKzEzOTI1IDFlZjE4MDczNzdiZmE5ZWM4YWQzZDY3YjFjZWU1MWM4NWE0ZWE1ZTIgbGVnYWN5LXRydW5rCisxMzkyNiAzMmMwNTNjNzljY2IzYzJjZTAwNzQ4MDZlYWFiNTFjNDhjNjBlOTZlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxMzkyNyBhY2E3YjVlYWY1ZTgyZjhhMGYwMGI0YzlmOWY0MmMzOTgwMDJhYjA5IGxlZ2FjeS10cnVuaworMTM5MjggYzI0YzI0MTg1MzUxNmZmMmJmMzlkOGYzMzBlZjQ2MDA5MjgwOGEyMiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM5MjkgZGFmODhlOGVkYmMwZTUzZGFiZDQyYmFiNDI3ZGFhZWY5NzYxZDRjYSBsZWdhY3ktdHJ1bmsKKzEzOTMwIGMyMDhjNGU5ZTJhYWNmOGZkMjgyNTQ2YzhhODliMjcxYzZlMDk1MTMgbGVnYWN5LXRydW5rCisxMzkzMSAxNDY2MjgwZTZiYjBhM2I0MWQzNDBkZDVkMWM1ZmIwNzRkNWIzYTY5IGxlZ2FjeS10cnVuaworMTM5MzIgYzdlNzIzY2Q2MzQ5N2NiOTM4Mzk0MmJhYTQwMjVkMGFmMjY2NTFiNSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM5MzMgMDE5Y2QyMWM4YzlmY2I2NTg0M2M3YTM2NzI3OWY1ZWM1ZDdlOWM1MSBsZWdhY3ktdHJ1bmsKKzEzOTM0IDYxYTBmMDIxNWE5NzZiY2VkZGM0NTEwOGZkZTUyNjM2NDI1MjZjM2QgbGVnYWN5LXRydW5rCisxMzkzNSA4OTUxMDJlZWE0ODUxYTc3OGMwNWFhZWVjZmVjNDU2MmU3NzQ4MTMzIGxlZ2FjeS10cnVuaworMTM5MzYgNmViZjY5MzhjODg3MjAxNzYyMTg4YjUzZjI4NzQ0ZmY4MjZkM2NjOCBsZWdhY3ktdHJ1bmsKKzEzOTM3IDU0ODZkY2YxM2Q3NzRjYWNkMzQ2MzFiZDI3YTgyNmJjMzY0NTA1YTggbGVnYWN5LXRydW5rCisxMzkzOCBhMTRkOTYxNGRhMDA3ZTFhOTMwNmI0MDk1Mjg2MjQ1OTIyZWQ0MDA4IGxlZ2FjeS10cnVuaworMTM5MzkgMGIyZTk5NGVmMTc1YTU5NzcwMzlmMmM0NDc3OTAxZGY1ZDM2NTAyZiBsZWdhY3ktdHJ1bmsKKzEzOTQwIDRjYTdiN2I4YTg0OTE2ZjU0MjBhNzY1NWE5YmUwZmQzZGM4ZGQzMzcgbGVnYWN5LXRydW5rCisxMzk0MSA4YzVlZTNjM2QzODkwMWJkZjRjNTM2MzFlZDg2YmViYjlkNTk1ZTk3IGxlZ2FjeS10cnVuaworMTM5NDIgZTBlY2YxYWVmZTA0ZTJkZWJlMWYwZDRjOTI2ODgyOGMzYTJlYmE3YSBsZWdhY3ktdHJ1bmsKKzEzOTQzIDY1MGU4OWQxNTU3ZjE0NjBmZjA5NzE3NGYxMDkzZGRhOWMwNjE3YmMgbGVnYWN5LXRydW5rCisxMzk0NCA4N2M1ZDBiM2RlNTllYmUwMTkzMDk1OWI1ZDk2MzY0OTFiMDZmYjdkIGxlZ2FjeS10cnVuaworMTM5NDUgNzkxY2Y3MTdjMGJlNGJmMWJiYTYxYmQ1ZjNhODc1N2MyNzk2YTcyNyBsZWdhY3ktdHJ1bmsKKzEzOTQ2IDZjNDUxNzFjMWExZmU3YmM4MjIzZjhiOWI1OGFhMDdlMmYzY2JiMTcgbGVnYWN5LXRydW5rCisxMzk0NyA0ODgyYjJlNTJjYjI0OWE4OTUwNjhmOWVkMTZiYTdhYWRkYzgzMWFkIGxlZ2FjeS10cnVuaworMTM5NDggOTVlOTY5OGZjOTA4YzJkM2VkNDRiOWZhNjA5ZTAzYjk1NWYyNzNlNSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM5NDkgYzE2MWQyYjg1MjA3ZmE3OGUwMGY5ZWIzYWY2YzJlYTI4Mjg2MzdjYiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM5NTAgYTVhNTEzZmVlNWIxZGIzYTYyMTQzZjVlZmUwOWUwYzRkMGZlNmM1OCBsZWdhY3ktdHJ1bmsKKzEzOTUxIDUzZjY5Yjg2NzZmM2MxZTU4ZjFlZTljODhiYWFmYTQwMGQ3ODZlNTUgbGVnYWN5LXRydW5rCisxMzk1MiBiZjM2OGYyZjdjMDA2ZDVlNzczZmUzNDM0MDkzNjMyZjRhMWM2MTRjIGxlZ2FjeS10cnVuaworMTM5NTMgNTI1YjVhOWFjZmQ1ZGRlNTFjOWFiOTViN2Q4YjgwMjRhNTcwZGVjYiBsZWdhY3ktdHJ1bmsKKzEzOTU0IGY0NmM4N2I2NjE1NDIwNGEyNjdkMDg3NmQ4MjJhNGE0ZDIxYWYzYTkgbGVnYWN5LXRydW5rCisxMzk1NiA1MDc1NDZhODdkY2ZkM2JiNTBmZjg4M2UzM2RlOTg5MTYxMWQ4NmMzIGxlZ2FjeS10cnVuaworMTM5NTcgYjU1MTFjMDE3MTMxZmU2MjlhMjRmMDQ4NmUwMDhmN2IxN2E1NDY3ZiBsZWdhY3ktdHJ1bmsKKzEzOTU4IDA2MTE1NjQ1MWQzNmFmODIxZjg5NjQ5Yzg1MDkxMmM4OWIyNTliNGEgbGVnYWN5LXRydW5rCisxMzk1OSAwNjA2NjgyYzdlYmMzNWM0MmYyZTExZTc1OGY4MTgzM2I4NTNmMWFlIGxlZ2FjeS10cnVuaworMTM5NjAgMjQxMzhlYzNmMzk2MjExZTQ2NGMwMDg5MjY2M2MwNDE5YWUzYTM2YyBsZWdhY3ktdHJ1bmsKKzEzOTYxIDNmYWIzNzExYzdkYzY4NzMzMDk0NjEwMmU5M2JmMmIyMDA2ZmVmNDUgbGVnYWN5LXRydW5rCisxMzk2MiBmYmMyYzQ4NThjY2U4YTUwMTdhMGUxMmVhZjMyZjU1OTRlNTcwZTJkIGxlZ2FjeS10cnVuaworMTM5NjMgYzgxNTVkMDVkOWNhNmZhZjhlMTEyYzI1ZjJlMjE0ZGVkZDk5ZjlmNSBsZWdhY3ktdHJ1bmsKKzEzOTY0IDI4ODc0MDc2NTA4OGQzNWQ2YTk0YzFmMTk3NTNkZjFkZDM4NGQ5ZWMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTY1IDUzYjJmMjFhZDY3ZjA4MTZkY2I2NmI5YjJhMTZiNWZkNzhlMWNkNjQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTY2IDJmOWI2NWIzOGFmMmRmMDc1MTUxMWYyMTgxZDFkMDE2YjFlNWUwM2IgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTY3IGM1ODIxYzNiZWZjYWNiY2E5NGMxZmQ1NDA1YjAzODNkZmNlMDZkZmEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTY4IGM2ZDA5OWI0ZWI0MmE0NDE5NTYxYTEzYmI2MWRlYzcyYTQxYzQ1YzMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTY5IDFlMGZiZTMzNzUxODU3M2NjZWYzOTVhNGJkMDZhMGJjOWRjMjA1OGYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzEzOTcwIGE2MGZhNzRhYWVhZmQ5YTVhNDhkMmJhMTA2YzZhODAwMDcyMDYzNGUgbGVnYWN5LXRydW5rCisxMzk3MSBjYTc2OWQ5ODY1MTRiYjI5MDJmYjM2YTkxMTg3YTQ3YzgyZWMyMGQ5IGxlZ2FjeS10cnVuaworMTM5NzIgMWNlNDE5ODlhMDNkMGFlZWI0Mjg0ZTRlMDIxYmM0ZjQyOTVmYjIyNyBsZWdhY3ktdHJ1bmsKKzEzOTczIDQxZTAwNzFkYjUzYTgwMDg0MzUyNmZmZTUxMTg4M2UxYjU5ZWJlZWUgbGVnYWN5LXRydW5rCisxMzk3NCAxMGFkMzcwYmM1YmQxYWE2Y2NjMzcyZGEwNmFhNGFmNmFlOTExZjAwIGxlZ2FjeS10cnVuaworMTM5NzUgN2ExODhhYWJlZjExNWM3NDBjNWU0MmM2NDJmZGFhMzg5MWVmZDdkMCBsZWdhY3ktdHJ1bmsKKzEzOTc2IGE5ODllZTg3Mjk2MWMwNjg3MTM2ZDViOGViYjVkZTE4Y2YzYTMwY2IgbGVnYWN5LXRydW5rCisxMzk3NyA3ZmI4YjBmMTNkYTBhMDk0NzNhOWMwZjMzOTAwZDAxNTBlYzczZjRhIGxlZ2FjeS10cnVuaworMTM5NzggMzMzMGViOGRhMjIyNzRjZTBkZDExZTdlNjIxZWIxODc2YTA1Mzk4ZiBsZWdhY3ktdHJ1bmsKKzEzOTc5IGJjMDg1NjYwZGJjMTMzODNiYTdiNDQ0NDJlOWQ0ZmEwOWZlODk5YTMgbGVnYWN5LXRydW5rCisxMzk4MCBmMzA4NjU0ODQ0NmVjNWIwNzQyYTczYTNjM2I4ZTA3YmE2YjJhZmI5IGxlZ2FjeS10cnVuaworMTM5ODEgOTQwNGE1YjQxNmI1Zjc2OWQ3MWQ4NDNiZDZkMjk2OWQ4ODAyYWRlMCBsZWdhY3ktdHJ1bmsKKzEzOTgyIDk4OTk3YWE0OTE2NDIzNjQyMmJjM2U2MjRmMDFjYjNlN2U1NGUzYzQgbGVnYWN5LXRydW5rCisxMzk4MyA4NGRmZjVjYzcyMTYyMWMxM2U5NWQ5NmZiMTkyYmZhZjU1YjMwNGM5IGxlZ2FjeS10cnVuaworMTM5ODQgNGZiODkzNDQ4YTZiOTVhMTQwY2JkZjM1NjZmY2UyMzFmYzE0YzFkZSBsZWdhY3ktdHJ1bmsKKzEzOTg1IGUzZGM1ODRlOTYyMzBjNGMzNDU3ODg0N2VlMTNhN2Y2MDdiN2Y4YTcgbGVnYWN5LXRydW5rCisxMzk4NiBhMzE2Y2Y5ZjgxYTc2OGY5ZDM3MmRiZGUyYmRkODkyZjBkZWM3ZGM4IGxlZ2FjeS10cnVuaworMTM5ODcgOGVkYjgxZmEwYTVmMjZkODY1MGMzZmM1MjgzMTcwNDU4M2Y0N2NiYiBsZWdhY3ktdHJ1bmsKKzEzOTg4IDA5YzYzZDkxM2FlMDVhZjQxYjg5YmI1MjczZTZkNWIzOTdjM2RmNjIgbGVnYWN5LXRydW5rCisxMzk4OSAzZDZiOTdhNThlOWNhNDBjNGY4ZjNhODllZWY2M2Y4NWE0NDRiOWQ0IGxlZ2FjeS10cnVuaworMTM5OTAgMDY2NzAyNDFhN2IxZGEyMjdlZTZmMjVhOGJjODE2MmFiODI2YzFiZSBsZWdhY3ktdHJ1bmsKKzEzOTkxIGViODQ2YjRkMDM4NTY0ODhlNGExYzAxY2IzNGFhM2E0NTFmNDA5ZTkgbGVnYWN5LXRydW5rCisxMzk5MiAzMmE0ODBkMDgyM2NmYTFjNDNlYTA5MjdiZTI5MTg5YWFiMDYyNzMzIGxlZ2FjeS10cnVuaworMTM5OTMgY2M5MjJhOWE0OGMwMjBiMDVmMWVlNTdkNDdmOGIzNjVlM2NmZDdmYSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTM5OTQgYmUyNWFhY2ExMWY0NTZmNGMxMTBkMzg3MDJkYjkwZmZiMDBjODRkOSBsZWdhY3ktdHJ1bmsKKzEzOTk1IDMxNmJlMDhjOWVjZGExZDlmZDJmN2UyOTNiMjE2ZWI1ODgwZTlhNjMgbGVnYWN5LXRydW5rCisxMzk5NiA1ZjE4ZTc4NTNkOTI0M2UyYzJmMzU1MjYyZWMxMzM3MzY3ZTRlMmZjIGxlZ2FjeS10cnVuaworMTM5OTcgMWRjMzkzNmU4NGRiMjgxNjFhNjA3MzhmZGM0Y2E1ZDhiMWVmNDFlMyBsZWdhY3ktdHJ1bmsKKzEzOTk4IDAxM2RkMzhhNTAzMWQwYjk4MzcwNDcxMGQ1YWRmNTIzMGY5MTY3ZDggbGVnYWN5LXRydW5rCisxMzk5OSAwYmMyYmExNzUyMzA1ODkxODQ2ZjBmZGZjNmFlNjY0NmM3OTQ4YjZjIGxlZ2FjeS10cnVuaworMTQwMDAgOTBmNDgzMGUyMTIyZjJkYWEwYzFmODE3MjU2YTE4MTY1NTBkNGYyZiBsZWdhY3ktdHJ1bmsKKzE0MDAxIGYwMjlkNDdkZDI5NjRhNmM0OTY5ODJkZmJlMzZhMGQ0OGZlZGZkM2EgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDAyIDViODAyNDM4ZDhmYzhkMjM2MDFmNTJkYTEyZTUzMjcxM2RlNWM0MjYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDAzIDNhNTA2YWIxYzEzODlkMGJlN2Y5ZDc4NjhiYmY0ZmI3NTNjZjAzNmEgbGVnYWN5LXRydW5rCisxNDAwNCBhYWJmYTBkNzIxM2MzZWE4YzgxN2ExN2M4MzRkNmYyMjcyZjA5OTNlIGxlZ2FjeS10cnVuaworMTQwMDUgMjM5Y2E0Nzg4YmVjMGJmYWNiYzA3Yjc0YmZjZWU1ODkxYTI2M2ZhMSBsZWdhY3ktdHJ1bmsKKzE0MDA2IDhhNjg3MWU5NWQ4MGIwZWE1MTg0Y2Y3MTFmYjBkMmU2ZmRkNTI3MzIgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDA3IGNjMThiMjRkZWUzZGI3OWY5NzdhYjIyZWM1OGYzOTE4ZDVmYTIwZGMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDA4IDJkNzliNDkxYTUyOWM1NDlhNjQ0ODUyZWU1YWFkYzMwODU1ODMwMzUgbGVnYWN5LXRydW5rCisxNDAwOSBlMGZlNGM3YTllZmYzM2RlYmYwMTE0Y2Q3YjNlNjcwNGU2NTdlM2JiIGxlZ2FjeS10cnVuaworMTQwMTAgMGEzYmI0MDNhNDMwNWExZDA5NTMyNzE0OTM4YjhhNjk0MmNlYjk5MCBsZWdhY3ktdHJ1bmsKKzE0MDExIDM4Yzc0NDRmNjMzYWI4MDJmYTUwNDcyZDgxYzE5YTMyMjIzZGYxNjEgbGVnYWN5LXRydW5rCisxNDAxMiBlMTJiZThmNTE4OGZkNzYyNTM1NDQ2YzczOTgwYzJiZGU0YTc0Mzk0IGxlZ2FjeS10cnVuaworMTQwMTMgYTA1YTA1NjAyOTAyOGE4MDU4M2Q2YWZlY2YyNDgzZWIzYmIyMTUyMSBsZWdhY3ktdHJ1bmsKKzE0MDE0IGU3NGVmMmI1MDU1NTZlZDNkZWU4YWUwMTE5MDQ5OWUzYjJmYmJjNDUgbGVnYWN5LXRydW5rCisxNDAxNSA3ZTQyOWU0Njk2OGEyNDYxYTFkM2U5ZDBiNGRiNDE2ODc4Zjk0NjE3IGxlZ2FjeS10cnVuaworMTQwMTYgNDI2OThmMzQ1YmQzMDQwYzQyNTY5ZjIyNDk4NGE4Y2Y1YTcwZTJhZiBsZWdhY3ktdHJ1bmsKKzE0MDE3IGVmMDNmMTZhZTVlYjI3NTM0ODNjMDZlMjRhZTc3OGY1NTI3OTQ2ZGIgbGVnYWN5LXRydW5rCisxNDAxOCA2YzVlMTJjNWE2MTY0ZDJkMWE4YjQ1MTQ2ZmNhNjdlMTE2YTY4NjY2IGxlZ2FjeS10cnVuaworMTQwMTkgMTJmNDYyZmQyNGY3NTNlZTI1MmFlNmEyN2ZhMDYxYzc1YTdmNTFkOCBsZWdhY3ktdHJ1bmsKKzE0MDIwIGQwZjRhNzliOTg1ZDRkZmRiYmVhNWM2MDE2MTI3Nzc1MjY3OWY0NzQgbGVnYWN5LXRydW5rCisxNDAyMSAyNDU5ZjExNzYxZjA5NTdkODhlOGNjMGUwYzdhZTU2OWU0MDBmMWVjIGxlZ2FjeS10cnVuaworMTQwMjIgOTVhOTgzM2IwMDBlOTdkZmUyYWRjMTIxZmZhMjgwZjM0N2MzMDg4NiBsZWdhY3ktdHJ1bmsKKzE0MDIzIDE3ZTEyMzA1OTczZWFiMGE3YjY1ZWMxNzkwYzU0ODllMGNlMjcwNDAgbGVnYWN5LXRydW5rCisxNDAyNCBhYWFlZTdiMjMzODAyMTVjODZiOTUwYzExZTRhNWEwNDQxYzVjYjlhIGxlZ2FjeS10cnVuaworMTQwMjUgNjk4MGQwNmUzNjA3NTI4M2Y4NTA0NDg4ODkxNTI2MmM5ZGE1MGJkMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQwMjYgNjc1N2U4MGM3NDc4MzI2OWEyMmEwNTg3MjFhYzlmNmY5MGNmYmRhNCBsZWdhY3ktdHJ1bmsKKzE0MDI3IDA3N2ZmNmVmY2EzNWU4NDYxMjk1MWE3MTU0ZjYyNGE0YTVkNGI1OTkgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDI4IGExNzBiN2YwNGM2NDdhMWM0ZDE1ZmVjMDUxMzk4MGQ1MDIxM2UzYjAgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDI5IGFiMmE2ZjkxMGY2NTMxMjA5NjJmZWEyYTExMWVlYTFlODFmZGE3OTUgbGVnYWN5LXRydW5rCisxNDAzMCBhMjY3M2E4YmRjYTI4MjQyNWE5ZjQ3OTlkZGNkZDBlNDE1N2M4YjQxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDAzMSAxNDhmZDQ3NWIzOTNkYzcyYmI4Mjg3NjFkYzY1MWZlZGRkZWY4N2JlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDAzMiBiNGQwN2JlYWMwOWJlZWQ1NzNhZTNiMzU5YzEwMGM3OWRjYjI4M2FkIGxlZ2FjeS10cnVuaworMTQwMzMgMTg1NTEzMWE0ZGNkNDdhMDQwZmJhYzcyNTE3MmY4ZGQyOGRlNmIyNCBsZWdhY3ktdHJ1bmsKKzE0MDM0IGMwNTM2M2NmMWI3M2IwZjI1ZmM3MTY0MjYyNjBkOTk5YTI2ZTVjZDcgbGVnYWN5LXRydW5rCisxNDAzNSA5NmYzZWJhY2E2YWU1ODBmMTEyZTJhNzAxYmFlNDZjNjg3NWY3M2I1IGxlZ2FjeS10cnVuaworMTQwMzYgNGYyNzY4OTMzMzEzYWQ0MTE0YzYwNjY0M2Y2ZjJhYzQzZTNkNTk3YSBsZWdhY3ktdHJ1bmsKKzE0MDM3IDA5ZDM1MTg4MmM1MTBmOTZmOTZhYmRlZDA0MWFjNjA5YTU0MTkyNmQgbGVnYWN5LXRydW5rCisxNDAzOCBhZjExYWRjM2NiZDcxN2M2ZWZlYThmM2Q3NTcwZGJjNmQzMzAzYWY5IGxlZ2FjeS10cnVuaworMTQwMzkgOGI0NmVlMzI1ZGMwM2U2MjhjYWY3NzEyYmYzMDUwNmJkYTM4MmZiYyBsZWdhY3ktdHJ1bmsKKzE0MDQwIGM5Y2Q0YmJlZDhlMjgzZTI2NTcxMWQ5OGU2MWNiNzQyMzJkNjllYTAgbGVnYWN5LXRydW5rCisxNDA0MSBmMjFmMTk4ODZlZTM4ZjVmOGNjYWJhYThhMjUwNzgzNWI2NjQzMzYxIGxlZ2FjeS10cnVuaworMTQwNDIgNWM1YTNhNWNjNzlmY2RlNjJkMWM0OGZkMGFlZjNjNDVjZTcwMTg0YSBsZWdhY3ktdHJ1bmsKKzE0MDQzIGUyNDA4NzQ0ZGM3ZjM5ZTc2OWZiNjkyNjE2YmMzNzczOGFlZjYwYWQgbGVnYWN5LXRydW5rCisxNDA0NCBiYWI0NmFjYTJiZWNlNjYwMzRiODFlNGRkZGM0ZWQyMjY2N2FmMTY2IGxlZ2FjeS10cnVuaworMTQwNDUgYTk3ZTYyNWVkNWQwNGQwNWQxZTBmNmQ4Yzk2MzQ2OTVkYjI3OGZhMSBsZWdhY3ktdHJ1bmsKKzE0MDQ2IDdkYzkyNzIwNGQ2NTgyZTEyZTM5NzY5ZDJkZDUwOGU0MmE3ODEzYTAgbGVnYWN5LXRydW5rCisxNDA0NyAwNjgwZTY3YTBkNDk1NzM3ZDIxMzJjMDdkZGY5NGRiODdmNjg4ZWJkIGxlZ2FjeS10cnVuaworMTQwNDggNmI4Zjc0NmJiZDVhYTAyYTIzYjBjZGMzYmM1YTA1NjcwOWJlNmMzOCBsZWdhY3ktdHJ1bmsKKzE0MDQ5IDM0YjZhOTJmYTA4ODQyZmRjNzcwYWIyMGMwZmNmMTgzYjg3MGU1NGUgbGVnYWN5LXRydW5rCisxNDA1MCA5Y2RmM2ZhZGRhOTI3NmM2MmE1MTRiZDVhNTU4NzMzMzVkNDQ3M2ZkIGxlZ2FjeS10cnVuaworMTQwNTEgNTg1MTNlYmE1NjY0MzAwNjU0MzAxMDhiYjM0MmJkYjBmYzQyYWUxYiBsZWdhY3ktdHJ1bmsKKzE0MDUyIGJkZTA2ZDlkNGNiNGYxNjJmYTgxZjZlMTE3MzJhMDU4MTJkYzY2MDQgbGVnYWN5LXRydW5rCisxNDA1MyBiZGFlNjFhZWJhNTVlODczOGNlM2YzMzk2NTdmZDgxNjc3MmE2MWFkIGxlZ2FjeS10cnVuaworMTQwNTQgNzAzNGI3NWFhZDAzYjcxNDZmZjUxNWU2Njg3NWEyMzlmZWZmNjQxOSBsZWdhY3ktdHJ1bmsKKzE0MDU1IDNiMjBlNTBmMmQ4M2EzMTczZDNhMmZlZGY1ZGJlZTA4N2NkMzU3ZTggbGVnYWN5LXRydW5rCisxNDA1NiBkMDIzZDFjOWFjNDkxNDZmMTE4NzViYTk1NWRlZmIxOWY2ZGE2YWUxIGxlZ2FjeS10cnVuaworMTQwNTcgY2ViMDZkZTIzZmFhOTJlMWU1YTFkODFmMjI5MjZlYjg3NThmYWJkZiBsZWdhY3ktdHJ1bmsKKzE0MDU4IDYxMmI4MjMwYzZlN2ZjNjk3MDFmNDFjODk2MjU2NDBmMjBjMzZiOTcgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDU5IDAyYWUyZTU1NWVmOWQyNmVmZmZkNDc2NjcwNzgwYzJjMTFjNjhmMzcgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDYwIDU5MTE0YmUyMWE3NWY4OTdjZDRiZDg3YTlhOGE3MTQwN2ZiYWFkZDkgbGVnYWN5LXRydW5rCisxNDA2MSBkZmUzNzE5ZDc4ZTlkYzZlZWFjYmUzNjRjNDBkZTZiYWY3NDQ0ZGIxIGxlZ2FjeS10cnVuaworMTQwNjIgMzNmN2IxMmM3NzZjZmI2ZDk0ZjNkZmM1YTE5MmM4ZjAxOTQ0YzZlOSBsZWdhY3ktdHJ1bmsKKzE0MDYzIGNkZTg4MzdjODI1OWFkMDlkMjZmZmM0NmExZTU5NTU1N2Y1NmNmNDMgbGVnYWN5LXRydW5rCisxNDA2NCA5MjNiNDNkYjM4MTQ2MmIyZjc0M2JiZTg4YjA0YTBmZDVhN2ZkMTZmIGxlZ2FjeS10cnVuaworMTQwNjUgMTZiMTFhY2QzZThjM2Q1OGQzZjhjZDhjMWUzZjgxMmNhYjQ2NWIxZSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQwNjYgNzU2MzUxNzA3Y2FjYzViY2QwYjllMDFkZDBjOTcwZmY2NGY2MzY3YSBsZWdhY3ktdHJ1bmsKKzE0MDY3IGQ3MTk5YjlmOTA5MTJhYTM3NTQyMDhlNDA3ZTU4YjlmMjYwMWI4N2EgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDY4IDRjNTAzMGQ0MmM2ZmZlY2QzMjdlOTNiYTZiZTRlNTE5N2IyMWFkYTUgbGVnYWN5LXRydW5rCisxNDA2OSBiMDRiZjI3NzRkMDVlZGM3NGU1MTliMzViNzUwODkwNjM1OTk3ODJlIGxlZ2FjeS10cnVuaworMTQwNzAgN2VmZWNjNWEzOTRjNjlhN2ZkMzAwNjRkNDI3NmZhNWFlNTRjMmVhOSBsZWdhY3ktdHJ1bmsKKzE0MDcxIDdlNWY1MWRjMWI0YjlhMTQ5NTcwMzQ2MzQ5MzUxZDE2OTc4MjEyODMgbGVnYWN5LXRydW5rCisxNDA3MiA5NjM2YTUwMmY3OTE3ZDFkMGQyMmM3ZDMwNWVjOWI3NGM2ODNkZjU1IGxlZ2FjeS10cnVuaworMTQwNzMgMzNlOGU3NDA5YjEyMDIwMzFhYTQ5OTU4ZDAzNTBlZTUwMzFkYzI1ZCBsZWdhY3ktdHJ1bmsKKzE0MDc0IGNhODhlNTlhNmViY2EzYjhkMzFiMTcxN2U0MmI1ZWI2MWYyOGE4MmIgbGVnYWN5LXRydW5rCisxNDA3NSAzYjcxY2RmYTAyYzc0MmMyNjJkOGFjMTk2MmQ4NDExNjFhOThhN2JhIGxlZ2FjeS10cnVuaworMTQwNzYgYzdmMGFhNDUxMGUyNjM4ZTA0OTk5ZTE4ZTNlNGUwMzE1ODcyMDRjYiBsZWdhY3ktdHJ1bmsKKzE0MDc3IGRhNmYxNjkzY2Q2NTEzYzAzMjA3NzgzYWFjYmRmNDZmMzJhMjgwM2YgbGVnYWN5LXRydW5rCisxNDA3OCA5ZWFjZDI5ZTYwNjYxODA0MmRlNTI4NGJjMDgzZmZjZTMzNWU5ZTJhIGxlZ2FjeS10cnVuaworMTQwNzkgM2YyNzQ0NzhjNGRhYTk4OWQwNzY3NDgxODc5ZDFhNTliZTU4YWNlZiBsZWdhY3ktdHJ1bmsKKzE0MDgwIDUzZDljMTU2MGZlMTRmM2ZiOTQwNGE1NzljYzAxZWJlYjEyMzNhMmUgbGVnYWN5LXRydW5rCisxNDA4MSA2NjQzODZkNjk2N2NhZWZjY2Q3YWM5YzJhMjQ3OTM2NzQyYTMyMmMyIGxlZ2FjeS10cnVuaworMTQwODIgOWNhMzA0NTNkZDRlNGU0NzYxYmZlZGIyNTMzMGIxMzEyOWFkMzk3ZSBsZWdhY3ktdHJ1bmsKKzE0MDgzIGY5Zjc1YjIxMmRhNDE4OWNmYWYyNzUwYzk2NTVmYTc1Y2IwOWEyNmYgbGVnYWN5LXRydW5rCisxNDA4NCAwMWY3YTEzNmM2NzdmMTE5ODNjMjVlMmUzNzg3OWMzY2FjMWY0MWY4IGxlZ2FjeS10cnVuaworMTQwODUgMTc1ZDdmNjgwNGQ3YTNiNmM5M2FkYTQ2N2QyYjE2ZTA3YWI2NWRjMCBsZWdhY3ktdHJ1bmsKKzE0MDg2IDcxMjgxZmY4YzZhMmJhNTYwOTE2NDQwYWNjMjhiZjE5MWVmOTVjNTIgbGVnYWN5LXRydW5rCisxNDA4NyBjYzQxMmRmZDc5Zjc3YzdkYjA4OGEyYmJjMTRiNTk1NmU1ZWMyMWRiIGxlZ2FjeS10cnVuaworMTQwODggMTZmYzcxN2JlYTNjOWFlYjM4MDYzMDdmMzllZTY1MWI2YzZmNDRhNSBsZWdhY3ktdHJ1bmsKKzE0MDg5IGMwZWI2M2M4ZjFmZWJiOGNhOThmMzBiOTFhYzYxYWI5MWVhN2RlOWMgbGVnYWN5LXRydW5rCisxNDA5MCBiYTA3ZmZmNzI1MTFiMmM5NDgxYzIwZTdmNjdiZTY3MDkxNjU1NmFkIGxlZ2FjeS10cnVuaworMTQwOTEgNGRiYjdjNjA5YWMxZjViNWQwMTM3MzdlYWM5YTgyNmQ1N2VlODIzOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQwOTIgY2JmNThjZDBiYjU3NDI5MjkyOTI2NjRiMWM5Mjc2ZWEzMGFkYzk4ZiBsZWdhY3ktdHJ1bmsKKzE0MDkzIDgyZmIwMmRlNTQyMTEzOTM3YzQzZWQ3YmRjM2IwNjBjNDlmOGQ3MjMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDk0IDVhMmYxM2E3YmQ0NWYwNzkzMTg1MTMwMjEyY2RkOWFhYzFiZTcwYTEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDk1IDgwYWMwNzY4MWFiZWIxMjNiZTE4YWRhMTM2M2FhNDkxOWZmOTRjZGUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDk2IDkwNjZmNjI3ZDM2MmYxMTkzNTQwZTQ1MDQ0MTZjZjQxMjYzMGJlYzYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MDk3IGI1YmJjY2I3NWYyZGQ5MzVkNmVkNWJiZTA0YzIyOTRjYzY5ZDg5NmYgbGVnYWN5LXRydW5rCisxNDA5OCBhNDZjOWNiNDIxMjNlOWU5Yzc1MGQxZjVjZTVjN2U1OTM2M2NlMzQyIGxlZ2FjeS10cnVuaworMTQwOTkgYjEyYTExYWUxMjNjZjg1YjA5ZDlmMjQzM2JiMmQyOWYwOTgzZTMyNyBsZWdhY3ktdHJ1bmsKKzE0MTAwIDVjMTM1Y2VhYjIwYzU0NGRkMDBhNThmMTdlOGZkYjlmNTFkOGI2NTggbGVnYWN5LXRydW5rCisxNDEwMSA3NjFkMjVjZmMyNTk0MTJkNThmYmUwOTc1NWM0ODJkYjNlY2U3MzUyIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDEwMiBmODg2ZmRlNzY1YTA1NzAwNDQ5MDk5YmY3OTEzN2M2MWIyZmIwOTQzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDEwMyAyOGI4NTg1MzU0ZGU1ODA4OTQzZThlMzkzMjIxZmM4NDYxMjc5ZGY1IGxlZ2FjeS10cnVuaworMTQxMDQgNTM1ZjQwZjlmODdkYzY3OTg4OTc3MjM0NzBkYWIzZGM5NGE2ZjVkYiBsZWdhY3ktdHJ1bmsKKzE0MTA1IGY4M2I3NDI3M2RhMjNhMDA4YzI0NzU1NzM3NDViMjZiOWJlZGYyYTAgbGVnYWN5LXRydW5rCisxNDEwNiA4MDU2OWQ3MjUzMjkxYTAwZTEyYTUzMDUwNjBiYjAwY2EyNTE3MjQ2IGxlZ2FjeS10cnVuaworMTQxMDcgOGNmY2QyNzNmYTVjYTJiNjQ0ZWZmN2I3ZGUxMDk1NWQ4ZDMxNWRiOCBsZWdhY3ktdHJ1bmsKKzE0MTA4IDI5NTFlMmQyNzg1MjJlZDQwMzdjYjg1MjBmZDU0ZWFjZGY4YTYxZjkgbGVnYWN5LXRydW5rCisxNDEwOSBhODNkMmExY2UxOTdhMzlhNzIyZWU4MmNmYmMzNGEyNTFhOWM1MzViIGxlZ2FjeS10cnVuaworMTQxMTAgNjgzNjRiZjAwMmYxMzg5MGIyYThkNTQ1OTRiMWFkMTY1YTgyNmM3YiBsZWdhY3ktdHJ1bmsKKzE0MTExIGJiZDNhOGFkN2NiNzY2NzI5YTZjMTY0YmQ3NGQ2YjM0Yjk0ZDk0YzggbGVnYWN5LXRydW5rCisxNDExMiBiM2U1NWNlMGViZDc1ZjRiMzhhNDg5YzRiOWRiNDY3ZTYwY2YyMGE3IGxlZ2FjeS10cnVuaworMTQxMTMgYWZiOTg3YTg0NGRiYTIxNzgzNDFmNDYxMTRjODllNmIxMzk0ZmJkOCBsZWdhY3ktdHJ1bmsKKzE0MTE0IDI2MGQ0MGYyMDA3NzhmZWY4YzJiMGQ5M2M0Y2RkZmIxNzk4ZmZiYzQgbGVnYWN5LXRydW5rCisxNDExNSA0YzY5M2ViMzIzYzZmMzE3MzJlZjVlZDhjMzZiZWRkMDc0NjE0M2UyIGxlZ2FjeS10cnVuaworMTQxMTYgNTBmN2QzNDVmMTU3YTZlMDc1ZDE3ZDVlNDA4NGUwOWY4ZDlmNWIyYSBsZWdhY3ktdHJ1bmsKKzE0MTE3IGI2MDVjNDY2ZDFjMGU4ZmMxNjYzY2ZiMDY2ZjI1ZDI0MGNlOWVlZDcgbGVnYWN5LXRydW5rCisxNDExOCAxOGZjMDhmYzlmZDQ3OGUyZGM2MjE3ODg3M2UyNGVkZTFkODM0NmRlIGxlZ2FjeS10cnVuaworMTQxMTkgOGQ0Y2E3YmU3Mzc5OGM5NzAwMTk3NjA3YTg0ZjI3YTAxNTYzODFlNyBsZWdhY3ktdHJ1bmsKKzE0MTIwIDkwZmZjMDdmNWQxMGYwMWQ2ZjI0YTE1Mzc0YWVmOTRlODQwYmZmZWEgbGVnYWN5LXRydW5rCisxNDEyMSA3NTU1OTkwZThkYjlhNDEzYTI0NjJlZGQ5MjhjODdhMjc4Y2QxYTY4IGxlZ2FjeS10cnVuaworMTQxMjIgZjcwMWU5MTYzYzc2ZDEzNTI5OWU4MzRiY2FjOTNhZjJiYzBjY2Q0YiBsZWdhY3ktdHJ1bmsKKzE0MTIzIDIzNmQ4NDI4YzRjNTBkYmQxYjI4YWUwZTBlYThkYTE3NjE2NWY3MjggbGVnYWN5LXRydW5rCisxNDEyNCBjMDQyZTQxNDBmMWVlM2M4OWNhNGY2MWNjYjNmMTc2M2VlYzM4NjMzIGxlZ2FjeS10cnVuaworMTQxMjUgNzNlYzY2YWRkOTQ3OGRlY2NkZmM2NWI3ZTA4ZjU1MTQ1MmJkMjVjZiBsZWdhY3ktdHJ1bmsKKzE0MTI2IDgxOThjNTMxYmJjNDdkNTgxOTFiNGJjOTMwNzgyZjA4MzQ1NzViMjEgbGVnYWN5LXRydW5rCisxNDEyNyBlZWFjNTRjYmIxZGNlZDBlYzk3NjFkY2JkMDUzODcyNGFjMTY5MzczIGxlZ2FjeS10cnVuaworMTQxMjggODk0M2I3N2YyMTlhZjE3MjYwMTY5MTU2N2JlM2VhN2E5ODJmZTI3MCBsZWdhY3ktdHJ1bmsKKzE0MTI5IDM5ZDY2YTA2N2QwYmYzODYyMzEzY2NiOThlYTNhYTNlOWYwMWViN2QgbGVnYWN5LXRydW5rCisxNDEzMCBiZWY4NjY4NmI3NTJiN2FhMTgyMjE2MzhhZTVlYTk5NjA3NGViNTEwIGxlZ2FjeS10cnVuaworMTQxMzEgN2E0ZjYyNDljOTc4N2RjNmJhMjkxNjcyYjA5ZWEwNTI1MWZiNDFkMyBsZWdhY3ktdHJ1bmsKKzE0MTMyIGIxN2VmNTRjOTFjNDFmZTJiNDAzY2QyNzFjNTcwYzY1N2MwNzk0MjUgbGVnYWN5LXRydW5rCisxNDEzMyAxNTZiMWJmZWMzYjg5ZDdjMDYxMGVhN2FmNzJhMDM2ZDY5MTZmY2IwIGxlZ2FjeS10cnVuaworMTQxMzQgNDUyMGY2OTNiNzY1ZjY4MzI5M2ZhZWZlMmRjYjcwZTc5ZGMzN2MxMSBsZWdhY3ktdHJ1bmsKKzE0MTM1IDIyZjRjZjE2YjVhMzE2MThiMzMyZDg1MjhlNjc3MjcxZTc2MDJiNTQgbGVnYWN5LXRydW5rCisxNDEzNiAyY2I1NmU5OGNmNTIzYWM1ZThlMzM1NDQyYThjOWJjZmY1OTgxMmNkIGxlZ2FjeS10cnVuaworMTQxMzcgMWU3ZWZjMThhODlkYjQ1MTUwMmFlYzFmNGViZDQ3MmM2NmYxNDBhNyBsZWdhY3ktdHJ1bmsKKzE0MTM4IGM3MTE1NWNlMTIxNTlmYWYyYzBhZDE4MzJkOGYxMzAzMzNiODcxNTMgbGVnYWN5LXRydW5rCisxNDEzOSBjYTE1Y2NjMjZmMGMyZGI1OTJlYmY3ZjI0YjVhMDI2ZWJkZmRkOTM5IGxlZ2FjeS10cnVuaworMTQxNDAgOGVmZWI4NzEyMTViNDhmMWEzY2ZhZjIxNWFjMThmMWY2MWE5NTUxYiBsZWdhY3ktdHJ1bmsKKzE0MTQxIDA0YWZiODdkMTEwM2QxMmZjNjQ3YjBlYmIwNjdmOTNkZGQ5NDY3MjQgbGVnYWN5LXRydW5rCisxNDE0MiBlMjY2MGFmZGMzODFiOGM2NWYxOGVjMmNjYTRhNmRiODlkZDRmMGI4IGxlZ2FjeS10cnVuaworMTQxNDMgNTI1NWQwNTA0MGMyNTIyMjc1ZGQzMzU0ODIxMDdmMmVhZmUwZDM5NyBsZWdhY3ktdHJ1bmsKKzE0MTQ0IGQ0NzMxZTQzZmE2MDUzYTQyYzQzYTA5YjAwMTUzZjA3NDZjNzRiZTMgbGVnYWN5LXRydW5rCisxNDE0NSA2YWJjNTBiYjQ3MDc0ZDM4YmM4YWVjYmEzODQwMTI3MWNkODVkNTk4IGxlZ2FjeS10cnVuaworMTQxNDYgODg1ODIwZmE3ZTMxODc3OGFiNzZiZmZhYWVlNmE2NjFkNDg0ZDVmYiBsZWdhY3ktdHJ1bmsKKzE0MTQ3IDA3ZDJlYTcxYWNkYzY2MDA2MmRkZjk0Y2JjMGRmZDg3YTNkMWEyYmMgbGVnYWN5LXRydW5rCisxNDE0OCAyMmMwM2FiNGZiMTY1MjVkNTMzMmFmY2IzMjFmYTgwMGNjNzNjNTgzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDE0OSA2YWRjM2M1ZmExODVhMTFhOWVjNDM2ZmE4NTExZjFiYjcwY2VlZDY4IGxlZ2FjeS10cnVuaworMTQxNTAgYzVhYmM4MWRkMWVlZDkwMjQ0OGQ1ZjAzNThhYmJiYmVkYmMzYTQ2NCBsZWdhY3ktdHJ1bmsKKzE0MTUxIGZkMGQzMWMzNDZiMmJiNDk4M2FiZDAzODY0NmIxYTZiNWExYWQ2MzggbGVnYWN5LXRydW5rCisxNDE1MiA1NWRmMzcwM2M5NTNiNjdlMDZkNTBjZTViM2Q0MjA4ZDY3MGIzZmNiIGxlZ2FjeS10cnVuaworMTQxNTMgZjU3ZmY0Mjg5ZmM2NGI2YjhkMjZkZTYxNDMxZjdlMGQ2N2Y3OWY0OCBsZWdhY3ktdHJ1bmsKKzE0MTU0IDU3YzE2ODVhY2IxNjczZWVmZTQwMmNhYmZmMDcyMTUxN2FiMzdmMWYgbGVnYWN5LXRydW5rCisxNDE1NSA0YzNlNTVjODI4ZDNiZTNhMmZjN2FjZWFhMDAyNmJlMGYzYTZiMjM5IGxlZ2FjeS10cnVuaworMTQxNTYgNDlkNmQzMDI3N2RhNzdjOWJkZjQ5ZGE0MmFiZGFiMDgyMWJjM2MwNCBsZWdhY3ktdHJ1bmsKKzE0MTU3IDY2YWEyMWY1MGVhMzUxMGNmZTBhYzI5YTVmOTM3MDU5ZTc4MTQxM2QgbGVnYWN5LXRydW5rCisxNDE1OSAzZmUyN2JiMmYxMTkzNDBhMDMxNGRlYmVkMDIyNWZjMmVkZDk2OWUzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDE2MCAyNzNhNWU5YWE2MzNlMzAzZTJjNmI3ZTlmNTcwMTQxMjEzOTU0ZjhlIGxlZ2FjeS10cnVuaworMTQxNjEgODZhMTYzYTUzYjFjYWI3ZTg5NDg0ZjQyZWQzYjBhYTNiZTZjYjhhZCBsZWdhY3ktdHJ1bmsKKzE0MTYyIGYzNjExY2IzYTI2MTczNzQyMWYxOWU5MjdhZWE4ZTZlZjc2MzA0ZTYgbGVnYWN5LXRydW5rCisxNDE2MyAxNzc1OTAwZGIxMDg3NTRmNmY1MGJlZTM5YjM5OTY3NTY0Yjc0MjljIGxlZ2FjeS10cnVuaworMTQxNjQgNTdhYTI3N2Q3YTAwZGU3ZTMxZGVhOGJlMDgzMWM3YTc4NTU5ZmRkMSBsZWdhY3ktdHJ1bmsKKzE0MTY1IGM2MjA1YmM3MTBlZThiMmIxZDJkZDJmM2VkODU1NTg2NDgyMjUzYjUgbGVnYWN5LXRydW5rCisxNDE2NiAzZmZkZjA1ZjU2MzVkZjNiYzQ4ZmIwYjIwM2Y4ODNlOWFiMjE3MzQ4IGxlZ2FjeS10cnVuaworMTQxNjcgYWY1YWQ1ZWRiN2E1ZGExZjAxOGRlNzljYWFlZTliYzVkNTNlMGUzZCBsZWdhY3ktdHJ1bmsKKzE0MTY4IDRiZDRiZDNiNTk3YWJlNjVmOTY2YjdiYzk4YmE3OGU5ZWE4N2Y0MmYgbGVnYWN5LXRydW5rCisxNDE2OSA2NDhkOTdiZDNhYzZjMzc3NWM4ZDQxZGU4MGI0NWFiNjkxNmQzYjlmIGxlZ2FjeS10cnVuaworMTQxNzAgMTEzMWJmYTFhZDk5MzIzNjg5ZGY3YTIzYzJjN2RjZGMxNjE2YTY2ZCBsZWdhY3ktdHJ1bmsKKzE0MTcxIDFiMmUzZTJhMjQzNzkzZjYwZGEwMmRjZjk1YzhkNjAzOWY4ZDM4ZTUgbGVnYWN5LXRydW5rCisxNDE3MiBjYWIzZmY1NTFmNGJjNjI2NTRlMjhlMWFhNzY1ODg0N2E2ZTYwYTNkIGxlZ2FjeS10cnVuaworMTQxNzMgZjI0OTY1ZTc3Yjg1NTZiYWQ1ZGVmMGEwNGU4MTdhNjBlOTNkZTNiMSBsZWdhY3ktdHJ1bmsKKzE0MTc0IGUwZTAxMWU0MDczYzVhNWEyZGIxMzRmM2I1ZWRmMGEwZTkwNGIxODggbGVnYWN5LXRydW5rCisxNDE3NSAxNWU1YmQ4OTM5NWE3ZDUyMDdkMjM4MWY3MmJlMzE4YzJlNzNjYWY5IGxlZ2FjeS10cnVuaworMTQxNzYgMjM4YjQzOTg4MmU1MjNiOGQ1OTA2ZTliYTE2MDA5N2NkNzJkNmUxMiBsZWdhY3ktdHJ1bmsKKzE0MTc3IDAxMTcxYmU0NzY5ZDEzZTQzNzlmNWI3NDdlZmRlODdkM2NhOGZmZmIgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MTc4IDc3MDYxOGQ5YTdmY2ZhMGQ3OGUyYWIzNzVmYmZmNTg5MzEyNGQwMzcgbGVnYWN5LXRydW5rCisxNDE3OSA3OGZlODdjZTBkZWQxMDYyMzcwMzYwOTk0ZDM3NzQ0ZDVlM2FkNWJlIGxlZ2FjeS10cnVuaworMTQxODAgMTQ1NjFlODM5NWJiOWRlZmU4NTNlMDY5M2YyMzgxMWMyMjA3OGRiOCBsZWdhY3ktdHJ1bmsKKzE0MTgxIDBiYWQ5ZDhiOTQ1ZjcyMjM5NGVmMGYxNzIyNzk2MDIzMDExMWQxOWIgbGVnYWN5LXRydW5rCisxNDE4MiA1NzM4YWQ3MzcxMTQ0NzM5YTJlZjNjM2E0ZjQyZDgyZDBiYTVjNGQzIGxlZ2FjeS10cnVuaworMTQxODMgMmFhYjQ3NDg0MDEyMjJlNzBiNmQ3ZTE1YjUwMzJlZTkwYzQ0NzVjZSBsZWdhY3ktdHJ1bmsKKzE0MTg0IDFjZmQ4MTc2OGU3MDM1ZDM5ZDMxNDc4MGIyN2EzODRmODUxMzdiZDIgbGVnYWN5LXRydW5rCisxNDE4NSBlY2Q2Njc5OGNmMGJkYmNkOTlmMzliY2RkNjU1MjBkYWM3YzZlYjU3IGxlZ2FjeS10cnVuaworMTQxODYgMTNkYWFkOGE2ZWVlMTA4Yzg0MTkzYzczMGQxYjc0YTQ4NmE5YjRlYyBsZWdhY3ktdHJ1bmsKKzE0MTg3IDY5MjE2YzExYTFiZDdjNjZmMjI0ZDkzNDQyNzg3MGY1ODJjMWM4OGUgbGVnYWN5LXRydW5rCisxNDE4OCA5ZWM3ZDk3ODgwMGQyNjY4ODNmZmU4ZmM0NTdhMjEyZDUwNzhkMjI2IGxlZ2FjeS10cnVuaworMTQxODkgYjM2MDQxMGQ2M2M2NzcxYjgxOGM3Y2M2YmRlN2ZjOTliNDRhYWY5MSBsZWdhY3ktdHJ1bmsKKzE0MTkwIDZkOGNiNjZjZDIzODU2NDVjMDU2N2EwNjhkZDY3YmYyNzY2MTQyNDMgbGVnYWN5LXRydW5rCisxNDE5MSAwODMxM2FjMTdjZjNkYWM2NjI1MjdkMTIzYWJiMjAxYzA0ZDMzOWJhIGxlZ2FjeS10cnVuaworMTQxOTIgNjc1Mjg0NDk3NDQzZTIyOTY5MTA4OWEwMjY0Y2EwYmMwOTE5N2Q2NiBsZWdhY3ktdHJ1bmsKKzE0MTkzIDIwYWYwMmE1N2E1ZjFlMzU4MTQ4OTdhNTQ0NTllMzY2ZTk2MjZiZmUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MTk0IDY4YzI1OWI2ZTZjZGY4Y2QzYTVmZWI3ZTJmMzNmYmJkMTIzNGY1YTMgbGVnYWN5LXRydW5rCisxNDE5NSA1OTAyNzJhYmU2OWM4NWJjM2ZmYzA1ZDJkYjg4MDY3ZTA3MjQxYjNhIGxlZ2FjeS10cnVuaworMTQxOTYgYmIxZjQzZjI1Y2UwOWE1M2I5YmFmZjNkMDU0YTllNDBiMzVmYjE5OSBsZWdhY3ktdHJ1bmsKKzE0MTk3IGE3MGRjNzNhMjhkZTA5MzI0NTBiNDRiOTJmZjY4ZTY0ZGM0YzlhMWMgbGVnYWN5LXRydW5rCisxNDE5OCAxMDdjZTI5YjA0YTQ1ZDg0ODM4MTUwMDU3NjU2MmE2OTQ5NTdkOTQ0IGxlZ2FjeS10cnVuaworMTQxOTkgNTI4NTU5YTBiMmYyNTIwZTk4NzFkOTA0NmNkODNkZjRhZWJiOTY2NyBsZWdhY3ktdHJ1bmsKKzE0MjAwIDkxMjQ1ZGM5NDBlYmFmMDIxZjQzNzhlNmViZWNkMzM4YzE5ZmZmODAgbGVnYWN5LXRydW5rCisxNDIwMSA4Y2Y3YjIzZmI5NTUxNmUwM2NiMTkwMmMyNjMwNWFjZTczMzEwYzI0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDIwMiBjODdiODYxYzZlYzYwNjExYjczMDliY2UwMTIxNzhkYjBjYzY3MDlhIGxlZ2FjeS10cnVuaworMTQyMDMgMGVjODAzY2JkODcyMjVhZTVmMDNmNGU3ZmI4ZDdkNDYwNDZjOTc4ZCBsZWdhY3ktdHJ1bmsKKzE0MjA0IDY1ZGMwODJmNzAwNGExZDNmYTU4OGRhNjgwM2RmMjEzNjU4OGJhOGYgbGVnYWN5LXRydW5rCisxNDIwNSA2ZjIxMTljZDk5ZDI1NmFjNjdlNzgyMzgzNWY1NjcxOWQxNjY1MjljIGxlZ2FjeS10cnVuaworMTQyMDYgM2MyMTNlMzcyYjIyODlmNzg3YTNlNmIyOTQ0ZGE3MTQ3OGUwODE4YSBsZWdhY3ktdHJ1bmsKKzE0MjA3IDkyYzUzYjBiMmVlNWEwZDY5MGM1NTA4YzlkN2Q5Mjg0MjQyNTc3NWIgbGVnYWN5LXRydW5rCisxNDIwOCBjNmUxNDNkZmM1YTMzMmIwNTkwYjBiNWNjNGY4OGYxYWY1M2JlODVjIGxlZ2FjeS10cnVuaworMTQyMDkgZDRlYTEzNjE3MzFiNjM1NjBhODEwYzYwNTY5MGM1NWI4NjJkZGEyYyBsZWdhY3ktdHJ1bmsKKzE0MjEwIDQ3ZjkzYTk2OTM2NmFiYTZlNDAzOTljODRlYTBiNTEwNDg5ZDk3YjIgbGVnYWN5LXRydW5rCisxNDIxMSBkN2U5NmNkZTZiNDdiZGQzZmI1NjY1M2I3YjYzYWNjZTFjMjQ2YmM2IGxlZ2FjeS10cnVuaworMTQyMTIgYzM1ZWVmOGEyMTcxYTUyNWRmYzczZmYzZmEwNjAxMjc0ODU4MzMwNCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQyMTMgNGUzMDk1YzRhZWEwZTc3YmNkYmFhNjEyMjZjYzU4MGM1NDczYWFlZSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQyMTQgZGZlMmJmYzgwNTBjYjkyOTM4ZWQ2NGYzN2RkZWJhNGY5MGI0NGU3ZCBsZWdhY3ktdHJ1bmsKKzE0MjE1IGI4MjczZTVkZTM3NGJmYjA3NzEzM2Y3ZGZiYmVhZDQ5N2M3NjkwMDEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjE2IGNmN2EwZjFiN2I0OGI2YzhlZjgwYTg2NGJlN2Y5NTkxNWIxOTNmZDMgbGVnYWN5LXRydW5rCisxNDIxNyA0Y2Y5MjVmY2I1NjE5ZTZiNjc2N2Y0Y2QxNmRmNTA0MmU3YmVkNjBiIGxlZ2FjeS10cnVuaworMTQyMTggZjRjYzYwM2RkNzk5MWIzMWM0MWJkZDMxZmY2Zjc1NmJjMTIxYTllZCBsZWdhY3ktdHJ1bmsKKzE0MjE5IDgxNzU4OTE1NmYyMTYxN2Y4N2RmYTJjMWU0MTNiM2E3NGIxYTM4YTggbGVnYWN5LXRydW5rCisxNDIyMCA3Nzg1NDZkY2JhMDUyYmEwZmJkNWRiYTQ1MWQxZDBmODZjNWI1NDE4IGxlZ2FjeS10cnVuaworMTQyMjEgMzMyMjk4ODAxMGI1ZTE3MmQ0ODMxNDVlNDJjY2ViMDA5NTVmNWZhMiBsZWdhY3ktdHJ1bmsKKzE0MjIyIGE3ZjI3ZjMwMzk5NWRiNTRlMjE0ZjhiYTc4NzU2ZTBiNjlmNjM4YjkgbGVnYWN5LXRydW5rCisxNDIyMyBhOTRjMjk2YTZmY2NjYzgxMTU2ZDdlYjAyZTIwNmIwYjljNjIwOGUyIGxlZ2FjeS10cnVuaworMTQyMjQgY2Y3ZmNiMGM1YmRlMmIxZjUzOTg2NWRkNTRmNTEyZTY4YmVjNWM1MCBsZWdhY3ktdHJ1bmsKKzE0MjI1IDFmYzhlNjY3M2I0OGVkMjYyM2MzZWNjMjE1MDBhNDUwN2FhYjdlZWQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjI2IDg0ZmQzMWRkNGIxMjFiOWE3MjFlYWNlY2U2N2EwZWEyNGVkMjFmZWMgbGVnYWN5LXRydW5rCisxNDIyNyBhN2RmN2Q1MjNkMjkzNWJhNzYyNThhNzVmYjRkZWI5YzQyNzNjOWNmIGxlZ2FjeS10cnVuaworMTQyMjggYmNiMGQ2MzlhY2YyMWJkMjRkMWQ0ZWIzYTc0ZDUyMjZmMDg3MDEzNSBsZWdhY3ktdHJ1bmsKKzE0MjI5IDA2OWExZmQ0MGFiYmQ3NWQ2N2Y5MmFlOTIzOTgxM2Y5NTUyYmExZDEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjMwIDg2ODkwYzA3M2MzYmZiY2FlYmEyM2RjMWJmODA5NTcxMGY4MmI0MjEgbGVnYWN5LXRydW5rCisxNDIzMSAxZGNmOWI3NTkzNzRmMjEzYWE3OWMyODAyZGYyMGY2Y2FkNWE1ZTU0IGxlZ2FjeS10cnVuaworMTQyMzIgNGEzMjQ3ZWRkYzQzODY5Y2YwMmYxNDRhNGEwNDE1YmViYzdmODVlNSBsZWdhY3ktdHJ1bmsKKzE0MjMzIDQ3MmExN2YyY2E5ZmNlMzE3MDJhZmQ1MDQ1ZTZhZGY3Y2RhMTM2ZTMgbGVnYWN5LXRydW5rCisxNDIzNCBjMGQ0ZWU5MzkxYjY4MjI2MTZkZjBkN2M0YmU0NGMzNDI4ZTUzOTI3IGxlZ2FjeS10cnVuaworMTQyMzUgZDA5MzRhODAzOGY2YTk2N2JhZDg5ZDRlNTQxYmY1MmE0ODQwMmZlMSBsZWdhY3ktdHJ1bmsKKzE0MjM2IDg3MDVlYTM5MGRiYTA1MmIwOTRhZTRhMTI3YmMyYWNiZWNlNDNkZWIgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjM3IGRlZDk2MzY3ZThjYTcyYmViMmQ0ODVhZGQ5ZTFhYmIzOWRhNDEwOWYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjM4IGQzMzUyMDgyMGZhZmFjNGRhYTlkMTJlMWQ1NzRhYzM5ZDYzMDBmZjUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjM5IGU4Mjc2NzMzZGE4ZmJlOGM4ZDBmNjE1YzE4NzNjZmE3ZTNhOTVhOWMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjQwIDBiMDE5NGQ0MzUyZjMxMjRjOGRlMjViYTY2ODRiZjQ5ZTIyMWRmNDMgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjQxIDM4NTYwYTNhMzI0OTEyYzU2OTEzNDhlODU5NzcyN2MwZTgwN2MwYWYgbGVnYWN5LXRydW5rCisxNDI0MiA5OWEwMWNiM2RkYjVlZjVkMTViYzQxYzA3M2FlYmEwZjM3MTVkNjliIGxlZ2FjeS10cnVuaworMTQyNDMgZDg4OTk2ZTQ2Y2IyY2UwMTFmMGVmYmQwMTk3NTc2YTNmODEwMDg4ZCBsZWdhY3ktdHJ1bmsKKzE0MjQ0IDk5YzliMTI2NjkwZGZiMDUwMjM1ODQ3NmIwYTFkNmRjODI3YzYxNjUgbGVnYWN5LXRydW5rCisxNDI0NSA0YzNjYTZjMDViY2IzMjFmOGQ3ZmE5YjQwODJmM2U1MzZjNzZmMGRmIGxlZ2FjeS10cnVuaworMTQyNDYgMGFkMjMzMjQwMTZlNGVkMzEyZmI5N2Q0NjAzZTU2MGQzMWYzNzk5MyBsZWdhY3ktdHJ1bmsKKzE0MjQ3IGZkNWNlYWQ3MzNiNjgyODhkMDkzMTAwZDE1OGMxY2QzZTgyM2E3MjAgbGVnYWN5LXRydW5rCisxNDI0OCBkYjc1NmQzMWU3MjdhM2JiY2Q2ZTdjNWZhMjQyNDliZmEzOTE4ZTBkIGxlZ2FjeS10cnVuaworMTQyNDkgMDIzZWQyNjYzMDc0NjNjZDIwNWZmMWQ4MmRlZTlmMmIxMTJhY2M1YyBsZWdhY3ktdHJ1bmsKKzE0MjUwIDBkMjdlOGQ4ZjA0YzFhMjAyOTY0NGZmYTFlYzNkN2VmNTU2YjQ3OGUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MjUxIDY3NjQ2OWY3NWFlNjcyM2Q3MWI2NWM2Y2ExMTIwOGI2ODY0MzEwZDMgbGVnYWN5LXRydW5rCisxNDI1MiBlYTYxMDQ0Zjk4YWVkODYyZjJlOTg3MGQ2MGQzZjI2MGQ2Y2UyZTRkIGxlZ2FjeS10cnVuaworMTQyNTMgYWQ4NTk0MDg0MGNiYjViNTg4YjdjMjgyYWEzYzgzMGUyNGM4YWJlMCBsZWdhY3ktdHJ1bmsKKzE0MjU0IGI4OTZjMTJjMmVlYTVjYTM0OTcwNWQ4ZjdiMTZkNjM0ZGUyNWM5MDUgbGVnYWN5LXRydW5rCisxNDI1NSBjNDM0Zjk0MjdjOWIwM2M1MTljNDdhYWM4N2YwNTA3OWQ5NzE0ODhkIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI1NiAyNGY4MTRkOWUzZmY1NDU0NWJlMjdmN2Q5NDgzMmQ3MzA1ODExZWNjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI1NyAwMDAxNzIyNWYwNzc5NTU1MTNjNzY4MmE1NzAxYWZlZTMyYTBhZDk5IGxlZ2FjeS10cnVuaworMTQyNTggMmFiNzRiMTkzMjg2ZDljOGRiYTYxZGE2ZjdmYTgzNjAxMWNiNGMyNiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQyNTkgNTI4ZWYzOGIzZDNhNzY3YTJhODQ1ZWQ3NGI4MDllMmJmOWRiNmIwNiBsZWdhY3ktdHJ1bmsKKzE0MjYwIDdmZGZhYWE2NTgyNzA5NjQzMTUyZjdmMzI4MjJiMjYwY2I2NjQ1NDMgbGVnYWN5LXRydW5rCisxNDI2MSBlOTk4YjM1MGE0YmIxZGExMmJiOGVjZWMxNjg5Y2RlZGVmZTc4YTYzIGxlZ2FjeS10cnVuaworMTQyNjIgODI4MzU1NGYxMzE5YTRkM2FkMGNiZDI0YzE0M2M2YmNkNmEzYTNmMCBsZWdhY3ktdHJ1bmsKKzE0MjYzIDc3MDljOTgzNTM4MjhjMmJiMjNiYWJkZWFkMjcwOGQzMWZlNzY4NmYgbGVnYWN5LXRydW5rCisxNDI2NCBiN2YyNjI4NzNiZTA0YmJlNGFmYzk4NGY2NjI2YjM1MWRkODhkZTAyIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI2NSBhMjM4NmI5ZjQ3NGQ4YWIxYTU0N2ZkY2Q2MzcwYjk2ZGRhOWFjNmZjIGxlZ2FjeS10cnVuaworMTQyNjYgOTU1MTFmMzkzMTlhNGExZjc5YTQwMDlkMWFjZDU1ZGQxNTg4NmIzYiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQyNjcgYjgwMGUzNmFlZDRlYmRhYmVjY2RkZDI4NWUyMGZjZTExZDJjMjNiNyBsZWdhY3ktdHJ1bmsKKzE0MjY4IDQ0MmQ0Y2I0NDBjODgyMjg4NzgxMDYxMTE0ZWE1Y2FiOTQzN2JiMmMgbGVnYWN5LXRydW5rCisxNDI2OSBkZmY3YTAzZTdkMjRlZGEwOTE3YThmZTIyM2EyNWU2N2IxYjIxYjU1IGxlZ2FjeS10cnVuaworMTQyNzAgOGFmZDZmYjU4OGVlN2I5YzY1M2ZlODIyNTFmNjBiNGJhYWEzNjI1MyBsZWdhY3ktdHJ1bmsKKzE0MjcxIDVlNmU5ZTg5M2FjZGNlZmQ0M2FlYjUzOTZmZWIzMWZiMGQ5ZWU1NTQgbGVnYWN5LXRydW5rCisxNDI3MiBhMTI2ZmI1YzYyZGM3NDc4ODRmODI2OGE4ZjFmOWRmYjAyMzM2NDgyIGxlZ2FjeS10cnVuaworMTQyNzMgNDgzNzBjNjdkZDllNmM3ZmIxOTJkYTMyODBkYzYyZDUyNjVjOTIyZSBsZWdhY3ktdHJ1bmsKKzE0Mjc0IDQ4OTQ4M2I2NWIzYTNlYjFiYjk1MzM4NDM3NDNiZDQwOWE0ZjYxNjkgbGVnYWN5LXRydW5rCisxNDI3NSA2OWM5OTUxNjIyNzA2NDc0MWVmNWU3MGYzNmJjMjA2MzUxOTdjMjNhIGxlZ2FjeS10cnVuaworMTQyNzYgMDc1NmRmZWVjNGVlY2JkODM3N2VkNTE0M2M4ZDBiZTQzNGUxY2ExMiBsZWdhY3ktdHJ1bmsKKzE0Mjc3IDIxNmVmZGFkOWE0YjZmZjY1NDVlYjM3YWE1MGY4ZTE3Y2YzYmFmNWMgbGVnYWN5LXRydW5rCisxNDI3OCBmZjkxOTg1MzYyYzdjYzBkMjViY2ViMDJhNDE3ZWEzZWFjZGRlM2FjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI3OSBmOTRkNjYwMTY5MjFlOWQwZTA2ZTdhM2Y5Njc1YmIyZGUwMzkyMmUzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI4MCA5MTliMzdjNTJhODQyYTI2NWQ2NmZlYTY4MDdjM2FkZjhlODRiZWY2IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI4MSBjYmY0NDEwMmQ0MmFmYzVkYjgyYjg2MWQ0ZDJkM2FlZjg4ODIzMTNlIGxlZ2FjeS10cnVuaworMTQyODIgNmQxZDVmM2NjYTVmYjYyYjk3OGE2OWI1YmJjMDExZjc5NGY3OGQ3MyBsZWdhY3ktdHJ1bmsKKzE0MjgzIDY3YzYyMzljN2JjN2FmYmZhYjUxNWQxYWIxYWRjODU0ZjZhZDg4Y2QgbGVnYWN5LXRydW5rCisxNDI4NCA0N2Y3NWExN2IxMDM3NGIyY2Q0Y2FjNjBkY2JjYTQwMGI2MWY1ZDdiIGxlZ2FjeS10cnVuaworMTQyODUgYTk0NzEzZDZkOWY2YTgzMDA4NDRjMjJhNGViYWFjYmVkNThkODRhZSBsZWdhY3ktdHJ1bmsKKzE0Mjg2IDVlZmI2MmFjZjI2ZWYzZDkzZjdlNjJlYjc3YjdiNGRlYjc2NTFmZDkgbGVnYWN5LXRydW5rCisxNDI4OCBiNWFlYzMzNzkwYzhlNTUyNWRlNDI4MTgyMGRjZjMzYjIxZDM0NzhhIERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE0Mjg5IDkzYmVkNjAzNTVlNGU5ZTU4NDg3NmJiZjIyNGUwZDhjYWE3ZGM0YTEgbGVnYWN5LXRydW5rCisxNDI5MCA4YjM0ODE4N2UzMDMzMjZjNDA0MDMzODFlYzhkMTE4Yzg1NzY3NjJhIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI5MSBlZjFlNjNmNzc0NDU5OTBhYmQ0N2JiZDgzMDVhMjM2ZTgzZGJkYTUxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI5MiBmNjgwYWIxMDZlODYxZTA3ZTI2YjUxNTE1MmY0NjBhMzgyMGRmNTNjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDI5MyA0N2Q3MGY0ZjYzNWYzMTBlOTFhZjRmM2QzMzE0Mzk2NjUwYmNiOTA2IGxlZ2FjeS10cnVuaworMTQyOTQgMWM0MzU0YmJhNDJiOWExOWJlZGRmMjA3YWI4OTY1Y2M2OWQzODBhZiBsZWdhY3ktdHJ1bmsKKzE0Mjk1IDA5ZGJiNDcwMzRlMGY1MmJmOTBkZjE5Zjk0Nzk3NmRiNzllMzJmNTYgbGVnYWN5LXRydW5rCisxNDI5NiA0YzE2ZjQyNWM3MTJjNDIzNzBmZmUzYjg3MTNhZTA0OGE5ZjBjMTY1IGxlZ2FjeS10cnVuaworMTQyOTcgZTM0OTkxMDIyNTcxNzUxMTJhMDFjYWVjMzEzYmZkYjQzYzNhMmY0MyBsZWdhY3ktdHJ1bmsKKzE0Mjk4IGY0ZjliNmI0NGU5ZTQ3YzczODgxNjIzYzUwMzg3MjRlM2VkOWU3MDUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0Mjk5IDBkZDUyMGY0ZGNlOGRjMWRkZDQ2YjUwYzI4ZTM3YWY0OGZmYzg4OGUgbGVnYWN5LXRydW5rCisxNDMwMCA4Zjg4YjMxODQzYWJjNTI0NDlmMGY0Y2E3ZDgzM2IwMDRhODg1NDMxIGxlZ2FjeS10cnVuaworMTQzMDEgODkwYjExYWEyZWJjNzJmODY4NGUwYjgzMjljYjFiYjYzYzJjZDU0OSBsZWdhY3ktdHJ1bmsKKzE0MzAyIGRlNDRmNTExNzY4YWM2NjcwZGE1NGNmMWQ2ZmY3MDMzNTJkY2MzMjcgbGVnYWN5LXRydW5rCisxNDMwMyBiMGViNDIxZjhhZTliZWI3ZDhhMTc4YWUzZmMzMTVkNmM3YjYwYjg0IGxlZ2FjeS10cnVuaworMTQzMDQgNTg4MzcxM2UyZGEzYTYxZjEzOWE0Y2JlOGU4NTYyZTIzMWU0OTJkZSBsZWdhY3ktdHJ1bmsKKzE0MzA1IGRhY2FhMzRkZmNhNDZmOTQzYzBiOTk3ZmZmY2E4Yjc3YmM0NzExN2MgbGVnYWN5LXRydW5rCisxNDMwNiBkMzZkMzEyY2Y5MGJlZTg2MGRhZTc3YWIxMmU2ZDczZTBlNDk4ZmE3IGxlZ2FjeS10cnVuaworMTQzMDcgZmY3OWVlNDNiOGExZmE3NThlMGQ5OTRiYTIzZDE0ODk3ZGI4Y2I0YyBsZWdhY3ktdHJ1bmsKKzE0MzA4IDg2ZTdlNWVjYWY3OTYwYjE2MzEzODg5ZGQ4ZDY1MDJiZmNiYjI3MGIgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0MzA5IDQ5N2UwMTFlZjFhMzI1YzA3NWZlMmZmZjI3ODM1NDkwNTcwZWUzMjkgbGVnYWN5LXRydW5rCisxNDMxMCA3ZjI5MzM5ZWMzYTUwYTNhNTM0MjNhMjMzYjZhOGQxYTQyOTU2MjAxIGxlZ2FjeS10cnVuaworMTQzMTEgMzRmNTNjMzZiYTlhMWIxZDBjNTE3ZTUyODJjOGM2YzQxNDFjOTI1NyBsZWdhY3ktdHJ1bmsKKzE0MzEyIDcxNmZiNTk1NDhiZTQ5ZmMzOTY5YTRmYmRjNDgxMGI1NTdlMDNjMWMgbGVnYWN5LXRydW5rCisxNDMxMyBkMTBjMTA4ZDNmZDc2MjEyNTJmOTVkZGIxMzM2NGVlNmNjZWE2YzI5IGxlZ2FjeS10cnVuaworMTQzMTQgYjZmNTJjMWVmNmRhOGE4YWNiMGY3MjY2ZGQxY2Y0ZjY4YTFjZWUyNiBsZWdhY3ktdHJ1bmsKKzE0MzE1IDZmNDE0Njg0NjMzNzg3OGMwYmJmMTQ5ODJiMmMwYjQwMWQ1M2Q4N2UgbGVnYWN5LXRydW5rCisxNDMxNiA0YTIzY2M0OWUyYjA2NGQ5ZDI2ZjNhNDBjNDQ5N2E1M2UwOWRjOGIyIGxlZ2FjeS10cnVuaworMTQzMTcgZDkwMDBlZTk1OWU1MzdlOGQ5Mjg2MzRjMWYyMDcxOWRhN2RlNjI4NyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQzMTggNWQ2MjVhMzY1ZTc2NTdhMjkyODAzZjJjZGEyOWM5ZTg1NWFkYzJkNiBsZWdhY3ktdHJ1bmsKKzE0MzE5IDM4YzRkNjFkYjdlYTFmOTEwODRiMzUxNDQwNjU1NDQ5YTAxMzRmNTkgbGVnYWN5LXRydW5rCisxNDMyMCA2NTQ2ZWEwNmUxNTcwOTkyNTU3MWE0OTMwMmYxYWY3MDg0NWE3Yjg5IGxlZ2FjeS10cnVuaworMTQzMjEgOTI1MGU1ZDNhYTMxZmRkNGY5ZjZmY2ExOTFlMWNlYjYwNzIwOWJlMCBsZWdhY3ktdHJ1bmsKKzE0MzIyIGFiZmExY2IxZWQwNTJhNTQyZDJhODZhOWY5MTQxZTIxMDBjNWUzMzkgbGVnYWN5LXRydW5rCisxNDMyMyBiMzIyM2YwM2M5ZWE4OGRmOTVmNjY1ZWI4ZGEwYWZjYjhlMTdjYTAzIGxlZ2FjeS10cnVuaworMTQzMjQgNjI3YjRkYmExMTkyZTI1YjA5OGIwM2MxZjk0YjRiYzFjNjVlY2M4ZCBsZWdhY3ktdHJ1bmsKKzE0MzI1IGU0MjU1NTZlNjk4ZWJmYTMzNmE5ZjY4ZDQ1YzEwYTE1MWQ4ZDFkMWYgbGVnYWN5LXRydW5rCisxNDMyNiBlOTE2OWIxOWU5ZTVjNDQ3YzY1YWQ5ZWViNTIwZjQ3MzE1YzYzZjdlIGxlZ2FjeS10cnVuaworMTQzMjcgMTE2M2E3YTFjYzY3OWI4MjBhMDIxYmE4OTY2YmY1ZmI4N2E2MjdkNiBsZWdhY3ktdHJ1bmsKKzE0MzI4IDgzOWY4Zjg2Y2NhYTNhYTFlZTMxZDk0MTliZDkxNzBmYjQxOWE4ZGQgbGVnYWN5LXRydW5rCisxNDMyOSBmZGM5ZWViODllMGIzMGU2NjgxYTRhMjRlNjBlMzU0MThkMTIyZjdhIGxlZ2FjeS10cnVuaworMTQzMzAgZWIzODFmZjE3YTMxOThjMjMyNGM2NDRmMzE2NDI2MGE2ZWViYTdlMSBsZWdhY3ktdHJ1bmsKKzE0MzMxIDQyMjMzN2MzMjI5YWRlYTFmNzc2MWEwM2FiZmUzNWViNmM0Y2Q3Y2EgbGVnYWN5LXRydW5rCisxNDMzMiA2NzZlNjQ3YjFiZTZiOTQzYzk4NWVmNTYyYjlhMTg2MDc0MjE3NTYyIGxlZ2FjeS10cnVuaworMTQzMzMgNzFkMDM4ZGIwZGQyM2MyZjEyMDQ1NDJlM2IwZjAxYTRkNTAwNDA1NSBsZWdhY3ktdHJ1bmsKKzE0MzM0IGI3YWViYzg0Y2JjMTY0YTVlMDBjOWRlYzU3ZjhhZWZlNzNiOTliOGQgbGVnYWN5LXRydW5rCisxNDMzNSBhNTMyOTMyYWM0MDgzODdkMTk0YmE1N2JhMjdjZjJlMWQ5NWQyOGMxIGxlZ2FjeS10cnVuaworMTQzMzYgMWU5NTJkOTMzYWJiZWY1ZDNkOWJlMjYyM2U5ZDRiMDI1OWQxMDZmNyBsZWdhY3ktdHJ1bmsKKzE0MzM3IDk4NTcyMzQ5OGIxYmE2NDJjYzI2OTVlNjA5NzFlOGI5YmY4ZTZkMjkgbGVnYWN5LXRydW5rCisxNDMzOCA2MDI1YjA3YzVjMjk2NmU1NmMzNzBjOTAyOGIwNTk0YWVkM2Q5YjgzIGxlZ2FjeS10cnVuaworMTQzMzkgMGI0NmQyNTBlMTk5Y2ZhNmU4YTcxYjMwODJjYmM5MmNkZGJmMDZmYyBsZWdhY3ktdHJ1bmsKKzE0MzQwIDcyZWJmOTFkYWEwNWQ1YTczMGZhMzczOTFiNWFmZjBjNTM3YjZkOWEgbGVnYWN5LXRydW5rCisxNDM0MSBjOTc2ZDY5M2RkZWIzNjQwNWNkOTcxODAzNGFmZjllNmVmYTYxYzE1IGxlZ2FjeS10cnVuaworMTQzNDIgNzhmMDA5ODgxMmI3NGIyNTdiMjVjNTQxYjAyZTA0MDU1MzlkOTcwMiBsZWdhY3ktdHJ1bmsKKzE0MzQzIDZhOTlmZjA2OTQ1N2Q3MThkNDE4OTEwMGFlNWVhYzM3ZDExYzZjM2EgbGVnYWN5LXRydW5rCisxNDM0NCA4OWQzMDhmY2Y2ZjQ1ODM2M2I0ZGZmMDMyYzY5NDVmYzZlOWM5MzE2IGxlZ2FjeS10cnVuaworMTQzNDUgZTE5YTM1MDk5NGI3NWFmYzFiZDQ3OTFjMmMxYjdhMDVmZmVhMmJkMiBsZWdhY3ktdHJ1bmsKKzE0MzQ2IDY1M2E5MzUwYTgxNzMzOTY5YjNlNzAyNzYzZmRhNWUwNGQwN2FiMWIgbGVnYWN5LXRydW5rCisxNDM0NyA4M2QzNTFmOTQ4YWI3NWNlZGM4YTZlNmZiZTMyZGI4ZTRiMTk3NWM3IGxlZ2FjeS10cnVuaworMTQzNDggYTg2YmRmZTQ1NzI1ODRkNmM2YzY2YTJiMjljOGI5ZGNkMGI3YmMxMiBsZWdhY3ktdHJ1bmsKKzE0MzQ5IDIzZTdkOTc4MTAxMzExNTY5M2NkZTAyOTQwMzc5MDkzMDQ2NGUwNjggbGVnYWN5LXRydW5rCisxNDM1MCBkYTdmNWY2YTg0OWQwZWU4YTgyYWU3Njg5Y2YzNGNiODA4MTJhNGRlIGxlZ2FjeS10cnVuaworMTQzNTEgODQwZTE4ZWVjMDdmNGY1NWM4NzM5MDIyYTNiNWY1NmMzNGNmOTIwYyBsZWdhY3ktdHJ1bmsKKzE0MzUyIGM5NzhhMjNhNGRhYjEwNzU5MWU4ZDA3NjlmMDdhYmRjMTdmNDUxNmMgbGVnYWN5LXRydW5rCisxNDM1MyAzYzc3ZDZjNWM4ZTkxODBmMmZiYjlmYmMwOTM2MmQ4Yjc0NjhhZjA4IGxlZ2FjeS10cnVuaworMTQzNTQgNDVjMzViNTM3NmU0YmRiYjViYjNhNjFkYjcwYWI4OGU0YmQ1ZmE5ZSBsZWdhY3ktdHJ1bmsKKzE0MzU1IDc3NDY1ZDhiOWY1ZTI5MGRiYzM0MjdlN2NmMjJiMGZkZTdjZDQ0OWMgbGVnYWN5LXRydW5rCisxNDM1NiA3ZWYzOWUwNzEyMGE3ZGFiNWYzNGY2YmUzYTk0ZTAyZDllY2MxN2FjIGxlZ2FjeS10cnVuaworMTQzNTcgNzZhNjA5YTk0NzMwMjIzOGY1MTQ4YTUzNGI4ZjgyNTFmZDI0MTFmNSBsZWdhY3ktdHJ1bmsKKzE0MzU4IDVjMjc3MDEyNDkwNGVkYjNjMjNiMzExODg0MTQ4MTcwMGEyNDk0NjUgbGVnYWN5LXRydW5rCisxNDM1OSA3N2ZhMzMxNmJmNTgyNTQ3MDcwZmU0MGMwNzYxYjVjYWJiY2IzYzAzIGxlZ2FjeS10cnVuaworMTQzNjEgNGQ5MTIyMTIwOGZmYjBiNDk0MTEyNDBlNDAwMmQyZTgxYjkwYzdlNCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQzNjIgM2YxZGEwNWNlZDU1MzZhMjFhY2EyMTdkYjgwZTZhZmM0M2ZlYjhkNSBsZWdhY3ktdHJ1bmsKKzE0MzYzIDNkY2RkYjQ3OWE3ZTY0NzM5ZTBjOGFkNzhkMjIwZjEyYTc2ZjhkNDkgbGVnYWN5LXRydW5rCisxNDM2NCA2MDU2Y2Q1MDI5N2U0Yzk5MTkxNzhjZmRmNjgwMzcxYjVkOTE1N2IxIGxlZ2FjeS10cnVuaworMTQzNjUgZGZmYmQ5MjFlZWVkNDVjYjMwODRkN2M3YWU5NTQ2NTllYmZhOThjYyBsZWdhY3ktdHJ1bmsKKzE0MzY2IDU3ZmIzNTAxYWIyMmIyZjY0ODk4NDljNjBlNzViMGM1YWYyMDUwYTkgbGVnYWN5LXRydW5rCisxNDM2NyA2MzY3ZDgyOWYzNmJjMjBjOTZhNjU5Nzg4OGE3NzlhOTY5ZmE2Y2IzIGxlZ2FjeS10cnVuaworMTQzNjggZTM2MDZkMzA4ODZmMDM4MzdhYzcyZjIxZmQyOTc0MTAyZmIyMzE0OCBsZWdhY3ktdHJ1bmsKKzE0MzY5IDk0NWNlNjBkOTg3OTE3MzY4YjA5ODZjYWU4NThiODA2Y2M1ZTZmZjMgbGVnYWN5LXRydW5rCisxNDM3MCAwMjA1MjZlNzJlYWNmMjgzNTRjZDU1MWE2ZjcyMTg3YzUxMGQ3YjA3IGxlZ2FjeS10cnVuaworMTQzNzEgOTA5MmQzMGMyYmI3ZDU4NmY3OTA2YjFmMmZiNGZmNzFhZWI2MzlmYyBsZWdhY3ktdHJ1bmsKKzE0MzcyIDYyZmE4ZWM4NTk1ZjAyZWEyZjc4YWE1YzlhZTNjY2Q2MjJjYWMwNzkgbGVnYWN5LXRydW5rCisxNDM3MyBhNGVlZjA4MTNkNGNiZTBiZWY4N2FkYTRkMzg1MmY5MjYyMmJmYjBjIGxlZ2FjeS10cnVuaworMTQzNzQgOTg3NmE2NGMxODFhYWE2MTgyN2RhNzZiNWE5Y2FmMTIzODg2MjE3ZiBsZWdhY3ktdHJ1bmsKKzE0Mzc1IDM1Nzk5NzU1MDlkOTM1Nzk2MjllYTJjMTQ3Njg4NjYwNmIxMjYxNzggcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0Mzc2IDRjZjg0ZGRmNTEyOTA0M2QyNjkxYTI3NDVmOWEzOThiYmRiMDg4MjIgbGVnYWN5LXRydW5rCisxNDM3NyAzY2RlMTJiYjNkYTVkNzRjN2I2MWNkNWVjMzk4MmVlNTllMWUxZWExIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDM3OCAwM2JkNThmOGM5ZDAzZTEyYjliYmE1YjRkZjFhZTJhZTdjNzIwMTFiIGxlZ2FjeS10cnVuaworMTQzNzkgYjAzNjllOGRhYTBiZmYzOTY1NDFjZGIwYjZkZjU5ZTg5ZWZjNDY5NSBsZWdhY3ktdHJ1bmsKKzE0MzgwIDFhMjViYzJkMzI3MmFkYzZhMWUxMGY0ODhjMWE3NWFhNGIxODc1OTIgbGVnYWN5LXRydW5rCisxNDM4MSAxMDMzYTI0YzRhNTI5OGYwZDA5NjkxMzZiZmYzZDdjZGViYjU2YzU2IGxlZ2FjeS10cnVuaworMTQzODIgMzZjNjc1MGNmMjI3NTg2M2YzZWNhMTZhZTE4ZjdjYTcxNGRiNTBiOSBsZWdhY3ktdHJ1bmsKKzE0MzgzIDhkNWI5MGViYjkxOWJiMTdiODk3MTkyNzE3OWQ0OWZhNDE2NTY1MjggbGVnYWN5LXRydW5rCisxNDM4NCA3MDdkMTZmMGQzNDVhYTgzNDNlMjhhOTM5NjViNmI0YjBiZDI4MTA4IGxlZ2FjeS10cnVuaworMTQzODUgN2Y1MGY3MWFlN2JmMjU2MTU2ZjdhZjQ3MWRjOWRlM2RlZDEyZGUzNyBsZWdhY3ktdHJ1bmsKKzE0Mzg2IDI4MzlkODRjZmQ5NjY2ZDk2ODg4ODJjNjY3YjhkZmE1ZTg0N2YxZjYgbGVnYWN5LXRydW5rCisxNDM4NyA4YjZlMmIyMzZiYWI1MjM0NDhmYzhjMTczZWE5MzBjM2VhMjNlNDRmIGxlZ2FjeS10cnVuaworMTQzODggNmI4ZGFmMzM3ZDZiYWJjY2YzNDkzZThkNGJiZDJjNjBhZTAzZWUxMiBsZWdhY3ktdHJ1bmsKKzE0Mzg5IGNhZThlOGVkZDNlMmFiMjljYTIwOGRmNjg1MzM1YjkzMGM0NzY5M2IgbGVnYWN5LXRydW5rCisxNDM5MCBkYzE5YjU5MDBkYWViYmRmMTg3M2M5MWNiZTY3OTQ5MmNkNTY5YmUzIGxlZ2FjeS10cnVuaworMTQzOTEgYTc0MjE0NzM5NmVlZTA0ZGJkNGUzZGQ1NWJkZDU5Mjk5MjY2OTM2NCBsZWdhY3ktdHJ1bmsKKzE0MzkyIGUyYmJjM2U0MGNkYjk2NGQ1NzhjYzJjMTcxYTA3MTA1NjhmZjg3NTggbGVnYWN5LXRydW5rCisxNDM5MyBlYzQ2ZmFhODM1OTU2N2RhMzI0NmJhMDI4YzRlOTNmMzVkMTI2ODliIGxlZ2FjeS10cnVuaworMTQzOTQgYjdjZmMyZGJhNTg2YmJhZDExYmQ4ODlkYjQ3NTFkNThiOTYzZTc0MCBsZWdhY3ktdHJ1bmsKKzE0Mzk1IDA0OWFiOGYzNGRmMTY0ZmE1M2EwNTBhYjc4OWU4Y2FiMzY1MzA0NDcgbGVnYWN5LXRydW5rCisxNDM5NiA0MWRjMjRiMjBhMTc1YTQyNDgzMDAwMGJhOTRjMDY4MGQ4NmEyMWMxIGxlZ2FjeS10cnVuaworMTQzOTcgYjZmMTI4N2UxOTcwNzMxZTVlZGM4ODNlYzdkMDY3YmQ3MmQ3MDRmMSBsZWdhY3ktdHJ1bmsKKzE0Mzk4IDVhZjAxNTcxODI4NWUzNTYxNGY1MjEyNTU2NWNiN2QwMGYxZDViOWQgbGVnYWN5LXRydW5rCisxNDM5OSA0ODY3MjFlYzlkZDc0NmZjNTQwZWE1NmZkZTYzMDIyYmZkODM0MjVmIGxlZ2FjeS10cnVuaworMTQ0MDAgYWU4ZGYwN2Q0YjZhMWI2ZWQ2ZDgwNjUwYzkxOWIxNmJhMzU4ZmM0NyBsZWdhY3ktdHJ1bmsKKzE0NDAxIGY4M2NkY2JjYTFiMDhmMTM2OTViMzlhYjUzNDljMGYwYjA5ZGE0MjYgbGVnYWN5LXRydW5rCisxNDQwMiA4NjA1MjQxODJiOWM4Y2FjZDFiZjVmNTQxMWIyYzFiNTUwOGVmMTNiIGxlZ2FjeS10cnVuaworMTQ0MDMgNzI4NDhjNmI2MTFjZWQ0MDRhMDBlNDI3M2UyOGU5NTVmMDlhNDI5OCBsZWdhY3ktdHJ1bmsKKzE0NDA0IGZkNDgxNGI1OWI3M2E2ODBkYzE2Njg1N2FkNWNhMDA0YWZjMjhmNjQgbGVnYWN5LXRydW5rCisxNDQwNSA3ZWIxMjdhZGUwNjk0ZWIyMDNmYzM3Mjk2MzVhODY4OWJiMjczYmNiIGxlZ2FjeS10cnVuaworMTQ0MDYgZDJhYjk1NTNmODcxMmUzZjYyNzQxNjE4ZGI3NWQxMTQ2MjFjZmRmMCBsZWdhY3ktdHJ1bmsKKzE0NDA3IDA5YTNhNjhjZTk2NDA0ZWE4ZDhiMzVhMzAxN2RiZDRkYWE0OGNiZWQgbGVnYWN5LXRydW5rCisxNDQwOSBlOTNhNWE5MDZkNzNhMjhmODRlOGQwMWRmZDQ2MjE0MGEwY2JlODA0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxMCA3MzNlYzZlODY5ZGQzMTczYjc0ZjhkNjg0ZDFlNGYyMDkyMDExNGQ4IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxMSA4YmM4NzEwODE3MjQ3NzhiMDRlZWE0OGM2NTdmMWNlOGQ2NjM0ODU0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxMiBmNDVkOGIyNmJiMjQ1MzRkOTZjMTgxMGJlODRkYjljZTQ5MGZjNjhhIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxMyA3MWVjMzFmOTdmZmM3ZTA0ZTIxOWJhZmY0ZjAyMDU2YTNhZmU3NGNkIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxNCBhNGJiMzg0M2E1ODIyMzE2NTllODU0MjE1OTI1MzVlZWFiMzVjY2JhIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxNSA0NTQxOTYxMTRmZDI0NTM1OWExMzBhMjE2M2YzNzdiMjgxN2E1ZjYzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxNiBjZWQ4ZGQ2MjI3ZGQyZDJjM2I1NTk0NjUyOTcyZDU4YTQ2YjFlMDdkIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxNyA1YWYzYzViNzRjNTQ1ODkzMDE4ZTc1OTVkOWRhZjgzMDZlZDNhM2Q1IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxOCAyOTVmZjNiMTc1MjJhMmVjNmU5ODMxMDM5YWI4MGFlNTczNzk1YTczIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQxOSA2M2NlMDlkZjYwN2RlMTlmNTgxMzM5NmQ1NWViNjUxNzdlYWQ5YzI5IGxlZ2FjeS10cnVuaworMTQ0MjAgZjUzZmVjMGM3NDJiZjViNDRiNGJjZTAzYWY0NzZhZWFlYWM0YTdhMyBsZWdhY3ktdHJ1bmsKKzE0NDIxIDI5ZTc0YzcwZGUxOGFmZDUzZDhlMDI4ZDIxZjBmYzRjMTkwMzU1ZmUgbGVnYWN5LXRydW5rCisxNDQyMiA1MGE2YWIzZmEwMzZhMmRkNjM4NjkxNDYzNmRhYTQ5MTI1ZDQzMGJlIGxlZ2FjeS10cnVuaworMTQ0MjMgMzY3OGRkNjg1ODY3MDVkOWI3OTdhMGJmZTNmNjNiYTAxOTY5MDk2MiBsZWdhY3ktdHJ1bmsKKzE0NDI0IDQ0OWIwNzRjMzA1MWIxNzFiZDE1Njk0YTQwM2RhYmM5NmI2N2EzNTEgbGVnYWN5LXRydW5rCisxNDQyNSBmZTk2MGFkM2RiNjViYzI0MDk2YmQyMWM1MGJjN2Y0OGU4MGZiOGJiIGxlZ2FjeS10cnVuaworMTQ0MjYgZTc3YTI4NmQwZWIxMDMwZGQzZDMxYTlmNTMyMTlhZWFmZTY1YzM3OCBsZWdhY3ktdHJ1bmsKKzE0NDI3IGMyMjg2YTFjMmYyOTU4NWI0YTYyZjU1Yjc5NGJhY2FmM2NlZTJhMjIgbGVnYWN5LXRydW5rCisxNDQyOCA1Nzc4OGRhMTY0ODg5Njk0ZjI3Yzk0NjdmYzI0MGEzYjM2Mjc3ODI2IGxlZ2FjeS10cnVuaworMTQ0MjkgZmZiZTBhMjNhMGYxNzU4ZmY5MzA2NTYwYzU0MjRlYWRkZjk2OTc0YSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ0MzAgYmQxNjFhOTA4YjNiZGE1YTBjNDNhYjBlYzQzMmM2OWJhZmUwOGUxNyBsZWdhY3ktdHJ1bmsKKzE0NDMxIDU3MTY3NzMxZDEyNDJlMzg3MjQyODc3MTJhYjBiYmRlMGFmNTAzODEgbGVnYWN5LXRydW5rCisxNDQzMiAzMDIyODZiMTYwYTdhMjY4ZTJmY2M1ODc3NGY3MjM0YTkyZmNkNmU3IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQzMyA4ZDBiMmZlZDdkNTU5ODFjMmQwZDU5ZTBmNTUzNWMwM2YyMWM4NTI4IGxlZ2FjeS10cnVuaworMTQ0MzQgY2Y4ZmE5MmViZjNkOTRlNGRhMTBkNzc0OWFkYWY1ZGM5NGFlY2ZlYiBsZWdhY3ktdHJ1bmsKKzE0NDM1IGUyYjYzMzk5MWUwMTM1NDY3OTZlNjQzMmZjMTk5NWU2YjI0MjMwZTMgbGVnYWN5LXRydW5rCisxNDQzNiBmYmMxM2ZiODAzOGNhNTk1ZjRkNWNjNzI4NWRmY2U4NjQzOTk1OWIyIGxlZ2FjeS10cnVuaworMTQ0MzcgMjBjYTcyMzBhZTNmOGE5NTVmOGY5MzdmNTcwOGY2MDVlOWZkMDc0OCBsZWdhY3ktdHJ1bmsKKzE0NDM4IDZlNWVhN2RjZjFmNTViNjM3ZDMyZTBlMzNmZjczNDZhMzYzOGQxN2QgbGVnYWN5LXRydW5rCisxNDQzOSBlYWVkYTQ2MjFmN2RjZDU1NGU2Yzk5ZDViMzRlMGVkNmU1YTQ1M2M0IGxlZ2FjeS10cnVuaworMTQ0NDAgODRmNzdjMTlkMTQzYjRiMTQyZDVlMjIzZTRmMDk4NjFmNTI0YWI1YiBsZWdhY3ktdHJ1bmsKKzE0NDQxIDAzOTAyYmMwMjE0YTE1MWQ1OGM0OGZjNmI2MjFiNTI0NTI2NjRiNmMgbGVnYWN5LXRydW5rCisxNDQ0MiA1MGYxMjg4M2NkZDc5Y2JmNDM3NWYzOWU3NzA3Y2QyMWVkOTY5NGNhIGxlZ2FjeS10cnVuaworMTQ0NDMgNDc2ZWFhMzhlMmQ2YWE3N2U4ZjUyOTdiNTJhNjc2ODcwYjRjOTI5NyBsZWdhY3ktdHJ1bmsKKzE0NDQ0IGI3YmNhMDUwZDdkZWJjZmU2MGQzYWEwMDQ4NzFkNjk2MWQ5N2RiOTYgbGVnYWN5LXRydW5rCisxNDQ0NSBiZjE1MDFjZjVmMDgyZDliNWJkYzViNmU1YzczNTAyZjA4YjI4MzgwIGxlZ2FjeS10cnVuaworMTQ0NDYgYmU5NTAwZTY0NzdmZDMxNjA4NjU1Yjc5ZmI1ODRhNzI5YTExZThmNiBsZWdhY3ktdHJ1bmsKKzE0NDQ3IDE5ZGU2ZDE5NGFjZTk4MzdjYzZhNTUzOWIyMjRhNDViZWUyYjI1ODggcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NDQ4IGFhMDdjNDdmNmVlODgyODEwNDM3M2NiZWI1NjUzYmM2OGExZjFjYzcgbGVnYWN5LXRydW5rCisxNDQ0OSBjNWZiNjUwNmVlYzQwZTI4YTM0ZWM2ZmU2MzZhYzFkZWYwNzA0ZTgwIGxlZ2FjeS10cnVuaworMTQ0NTAgZmMwZmNlYTE0YmEwNzIzZTZkZjIyYmI2MzM2OTQ5MjQzMjVjNWVhOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ0NTEgODg3OGMwOTZmYTE5ZTczOWFmNjA1YWU3NWU2NmEwMDBhOWQ2ZGM0NSBsZWdhY3ktdHJ1bmsKKzE0NDUyIDdjMjU1ZTdhMjFjMmM1NzQ4OTEzYWQ4ZmNlNTFiYjY3MGE5ODI1NTMgbGVnYWN5LXRydW5rCisxNDQ1MyAzNjg0ZDVjNzkwM2MzZWRkZTc1ODU0ZWIyZmRlMmM4NzRlNTZmOTE3IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1NCA3YmVkMWYwZWM2MWFjNTY4YTFmYjhhMGEyMmIxYmU5MTIxYjQ3YTgyIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1NSBjNmY4NGNkMWZmNzA1YTBlNTQyNThiZDNiMzg4YWRmMmYwMjQ2ZDAzIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1NiAzYjZkOGFkMjQ2OGUzNWEyN2NjMGI3ZDExM2Q5Y2VkZjNlZTM0YzFjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1NyA0ZDVkNWNmYThhNTM5MzFiMTNhMGUzYjJmODdkMzYwZmY3YzQ4MTk3IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1OCBlYjQ4M2Q5YTBmNjJjZjAyODk1ZDk0MzNmMDM4NjU0M2ZkM2JiNGM5IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ1OSA0MDgwYzdhMGYxZWQ2YzlmOWQxNzExYWZjNjUxYWQ2M2JkNGQxY2E4IGxlZ2FjeS10cnVuaworMTQ0NjAgMGMwYmZhZGZmNzdhY2EzNDUxYWRkNDJkY2JlOTQyNjc3MjBjYzE4YyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ0NjEgYjJkNGIyZTAzYzk5NTNmYjcwOGExMGYwOTc5NTdhN2NmZDFhMTVlMyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ0NjIgOTRiNjQyMDc5Mzk4Y2E2NzY1Njg0Y2Q1Y2M3ZmRhOGIxNTQzOGQ5OCBsZWdhY3ktdHJ1bmsKKzE0NDYzIDcxOGQyMmRhMDAxN2Y1ZTI2ZDg1ZTg2NjZkODVhZWNiNzVkODI4OWEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NDY0IGUyNTEyZDRmZDQ3MDgzMWZlNzQzNTY3NDE3MTZlMzZhMzNhODI4YTQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NDY1IDY4MzQ0M2Q4ZGEzYjlkNDM5ZTU0ZDlhYzQ3MTJkNGZmOGE0M2M0OTQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NDY2IGZlNzYzMmZiZDRmNTM2OWI3YzhhNGI3ZDIyZDQ1MTYzZTdlNWJiOGEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NDY3IDU5NGE3NmJiOWZmMDMxNTc5Zjg1NmMxNjdmYjcwYzZjMDEwOTJjMzMgbGVnYWN5LXRydW5rCisxNDQ2OCBhMDMxMzAwM2NiMmQ1MjA2N2QwYzYwZGMwZmNhZjJmYmEwMWY4NWE0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ2OSBkZDBhZTEwYjcyMDYwZjU3NDgyOTgzN2YyYmVkM2E0MTg5M2Y5NzU1IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ3MCA5YzU5Y2JhMDRkODU4YWE2YTY3ZTg2OWZkMTJmODcwMGUwYTRhM2UxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ3MSA1MWMyMTc0NTQ5NTNmODIzNGFjNWYzM2Y1Y2FlMTk1NDEzODMyNzFjIGxlZ2FjeS10cnVuaworMTQ0NzIgM2U1MmYzZGJlM2RjZDlmMzZmODc4Yjg1NTQ2MzliNTkwOWUzNjM0NCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ0NzMgZWNkYzc4MTQ4ODExODk3MzMyYzFhZTBmZGIyODQ2YmNlZTM0MmFjYyBsZWdhY3ktdHJ1bmsKKzE0NDc0IDE4OWRlZTcwZDMyYTBjYjA3ZDU4ZGJiMTExZDAxNWNjMWExNDI0NzEgbGVnYWN5LXRydW5rCisxNDQ3NSBhMDQ2OTgzY2I1NzYxMmQ5MzhhNzBlOTRhYjE5ODlmMjBkYWY4MDVjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ3NiBiYTIxMTE3NDgwMzhlMDI4NWZiOTZjNWRmMDFmZWM0MTA4Y2U0MGFiIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDQ3NyAzMjg3Y2NkMGRkMDEzM2VlNzRlZDNhOTMxMmQwOTU5MjcxNjgxNTVmIGxlZ2FjeS10cnVuaworMTQ0NzggZDIyOWJiNzkyNjU5MDAxMDNhOWEyZThmY2QwODM0MWMyOWI1MjkxNSBsZWdhY3ktdHJ1bmsKKzE0NDc5IDFiNzMxZWNkOWVkMzJiZGMyNThlNTdlZGNiMGEzZWFhY2Q3MWM5MDkgbGVnYWN5LXRydW5rCisxNDQ4MCAyYzcyNTZlMzk4OWNmOWIwNmYyODcyOTEwY2Y5MTY0ZDU0ZTU0NzI3IGxlZ2FjeS10cnVuaworMTQ0ODEgNzk3ZDk5NmY3YzZkYTAwOTRiZjdkNGI5MWIyMTMzN2VlZjM5NTUwMSBsZWdhY3ktdHJ1bmsKKzE0NDgyIGIwYzRmMjYxZTQ3MDMyNjM3NTczYzJhY2I5NWFkNmMzMGUxNTFiYTYgbGVnYWN5LXRydW5rCisxNDQ4MyBjYTUzNTM4NjdiZTIzMzIyMGNiMGVjN2Q0MzBkMzczNzU5MDEyZDYyIGxlZ2FjeS10cnVuaworMTQ0ODQgNzI2OTIxNjc0NmQwMmZhZGQ5NjMwOTY0ZTA2NGEzODQ2OGU3YzNhMyBsZWdhY3ktdHJ1bmsKKzE0NDg1IDkxY2ZiNmU2OGNhNDcxOWVhM2QwOWIzZjU4NGM1ODQ2ZjFmY2M1MDMgbGVnYWN5LXRydW5rCisxNDQ4NiAzMmY5NzVjYjlmNWZmMjIwNjU2YTQyMTYzMGRiZDc2NDhkYjc1YzFiIGxlZ2FjeS10cnVuaworMTQ0ODcgYmY2ZjE3NDZiMTBiYTBmZmExYTlhMGM3ZTRjMjc2NzZkMDk4YjRmYiBsZWdhY3ktdHJ1bmsKKzE0NDg4IGUxMTljMDI1MGIyMDkxNWQzMjYzNWU1ODU0YWYwNjMxMjkyM2RkNDYgbGVnYWN5LXRydW5rCisxNDQ4OSBjMDRlMWM3MGYwZjEyNmExMmU1YTFhZGNiNDI2YmVlMDlkOGE4MmViIGxlZ2FjeS10cnVuaworMTQ0OTAgZTEyM2U2NWVmMjU1Yjg0NjliMmIyOGMwZjUwMWE3YzVlMDBiYzNlZSBEaXN0dXRpbHNfMF8xXzMtYnJhbmNoCisxNDQ5MSAyNTE3NTY5YWExZGQ0MWI4ZWEyZTIzYWY4MjViMzEwN2Y0Y2MwMjI0IERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE0NDkyIDEwNDczMTNjZWI1YmM5ODMzNDk5YWU0MTgwMWMyYjM4YjJmOTAyNzYgRGlzdHV0aWxzXzBfMV8zLWJyYW5jaAorMTQ0OTMgMjUzZWM5NWYzOTFlMWM1YTk5ZjI2MzRlMjg3MTQxOTFhOGQyMjNiZiBsZWdhY3ktdHJ1bmsKKzE0NDk0IGU1Njc4MGI3NDM2YTZhNTc0MjU5NjBkZWE5YmQwMGM3YTNjNGFjNTAgbGVnYWN5LXRydW5rCisxNDQ5NSA4YjcwZWFhYWRmNGI0MGQ4NjM0NzBjMzExODEzYjQwOWM0MDMxOGQxIGxlZ2FjeS10cnVuaworMTQ0OTYgZDE1ZDhmNTE0MWE4ODhmYjE2NGE0ZDMzNjBiNTA4YTMwMDQyYTU5MCBsZWdhY3ktdHJ1bmsKKzE0NDk3IDZmOTc5OWExNDVlNTgyZTQ2NWU4ODc5NDU2OWY3ZWUxOWIxNDYyZDQgbGVnYWN5LXRydW5rCisxNDQ5OCBlYzA2MmM3YzM4YTU5ODM2NzEzYTM0Y2YxMGFjOWI0Mjk5YzE0MGE1IGxlZ2FjeS10cnVuaworMTQ0OTkgYjcwZGVlNzE1MzRhNmNhODIxYjdhYmJiZjUxMDliNzE3NWZjMzUzNSBsZWdhY3ktdHJ1bmsKKzE0NTAwIDBjZGU3MmY2ZWFjZWIwYmQ2OTBiNTc5NGUzNmZhZDI1MWVlMTg0MzAgbGVnYWN5LXRydW5rCisxNDUwMSA4OWI1Mjg5NTMxMGM3ZTI0N2I3YzUzMGJiYzYyYzE5NDg4YTZlZTcyIGxlZ2FjeS10cnVuaworMTQ1MDIgOTE5NzFlYjIxNTI3ZmE5NDFlMDg5OGI5ODhjZGYwMGJkZWExZThiMCBsZWdhY3ktdHJ1bmsKKzE0NTAzIGU2OTViNTIyOTVhODZhODFiMGQyYzY3OThlYjJmNjE1NmQyNGZjZTQgbGVnYWN5LXRydW5rCisxNDUwNCA3OWVhMTkwODVmYjZhYjhjODNiNzllZjZjZjBkZmVmNzhkMmRkYjdiIGxlZ2FjeS10cnVuaworMTQ1MDUgMTQ1MTUzOWEyN2VjZjRhZGVlNDVkODcyYjMyZGVhNmVjYmQ0NTc1YiBsZWdhY3ktdHJ1bmsKKzE0NTA2IDc4MWY0ODI5MWEyOTY5M2ZlNTAzZmM0MmJhMzJiODJhMmNjOTMzOWQgbGVnYWN5LXRydW5rCisxNDUwNyBiYmI3NTFmNTVkMDQ4ZWIwMGZhODQzODNlOTY1NDExMTFkMGI0YzIzIGxlZ2FjeS10cnVuaworMTQ1MDggMmQ4NzQwNjQ3ZTk5OGMzZTAzZmJhYWI5MzBlNGFjNTJiMDk3NjYwNyBsZWdhY3ktdHJ1bmsKKzE0NTA5IDk4NmE4NzM2M2E2NjkxMmEzZmY4MzI0NDM3YTIyNWM3MGE3NGNiYjcgbGVnYWN5LXRydW5rCisxNDUxMCBlMDA1OTQzNjZlYzRmNzQ0NjNlODcxOGY5MzIzYzAyYzllYzFhYjNkIGxlZ2FjeS10cnVuaworMTQ1MTEgNWUxZjRmN2Q3OWE3NTQwMDFhMzQ5NGVlNjNkZGFhOTlmZDE5YmI3ZiBsZWdhY3ktdHJ1bmsKKzE0NTEyIDQxYjg1YTI2Y2VlZGFhNGVmYzdlZjJkNWUxZTlkNWExMDNmN2Q5MTQgbGVnYWN5LXRydW5rCisxNDUxMyBjYTM1MGE3MTk4ODczM2VkNzU3ZWFmMTc4ZDdkZTk0ODUxNjQxZGVkIGxlZ2FjeS10cnVuaworMTQ1MTQgMmZhODllNjU3YTRlZGRlZjMxMDc5NDU3NjQxMmQzZjBjMzU5MzJkMCBsZWdhY3ktdHJ1bmsKKzE0NTE1IDA2OWVhNTczNmZmNjA3YTgxZjM4MjM0Yjk2Y2I1MDllM2IyZGQ0MjQgbGVnYWN5LXRydW5rCisxNDUxNiAwNjEwNGJjZjA2YTY0ZmIwODE5MDY2MmQ3NzA2OWI0NWJkNjhhMjA3IGxlZ2FjeS10cnVuaworMTQ1MTcgZDdlNjZlZjM0NWQwN2I5Y2NiYTljYzQzNGQ1Njc0Y2Q3ZmFkMGNiOCBsZWdhY3ktdHJ1bmsKKzE0NTE4IDMyYzU5ZTI4ODljNGNjNGFhMDE4NmMwMjZjMzY2NzE1MGFkYmRhMTEgbGVnYWN5LXRydW5rCisxNDUxOSBkN2VjYTViMDk2MGFiYjAyMWI0ODFlZTEyYTVjYTM5ODc5OGU3NzAyIGxlZ2FjeS10cnVuaworMTQ1MjAgMmZlOTU2OGJkZWYyYjkxYjFiNjA3ODE2Yzk5MTJkMmY3MjE5MDk0NyBsZWdhY3ktdHJ1bmsKKzE0NTIxIGM5MGFjNjk4MjE0ZGI3MzBiNTQ3YzVmZGJlNTViNWIxNWE4NTgwZDMgbGVnYWN5LXRydW5rCisxNDUyMiA0NDRiNzdjZWViZTY5MzEwZTJjZTdjMjZlZGFjMjNiOTlkNmFjOWI4IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDUyMyBiOTFkODQ4YzlhMWFkNGViNDNkYTZlNWRjZTY3ZDgyMmY0YmZjNGNmIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDUyNCA3MTQyMzIwOWQ3ZmMyYzUxZjdlODEwYWYzZjNhMDc3NTc0NTBhYmZlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDUyNSA3ZWQxMDRjNDBkYjMzNjU5OWUyNWYwNTg2MWRkNTQ4ODNhM2MzNWE1IGxlZ2FjeS10cnVuaworMTQ1MjYgY2FiMDcxZTkyZjMyMWY1MmFjNmIzMmM5OTcxNjc5YmNjNGE3YTViYiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1MjcgNTJhM2I0NjQ1NzhmMmU4NzIzNGYwN2RkNGE0NjYxNzhlNmNlMGFiOCBsZWdhY3ktdHJ1bmsKKzE0NTI4IDI4NjMwM2YwMDU0NmJjZWY1MDc3NjdiOTk2ZGFiODQ0YzBiZTFjZmQgbGVnYWN5LXRydW5rCisxNDUyOSBjMjdkM2U4YzQ1YzQ2NjY3Y2NhZDk4ZDUyYmNkMTM1Y2E4OGMzY2NhIGxlZ2FjeS10cnVuaworMTQ1MzAgNWQwODc5ZTFmZjM3YzU3ZWEwMjJjM2ZlYWM0ZDNlNTM4YjczZjg1NiBsZWdhY3ktdHJ1bmsKKzE0NTMxIDNkNzNmZmMxMDVkMGE0OGM5OGRjZGJhOWZlNTBmYTJjNGVkM2VjYzcgbGVnYWN5LXRydW5rCisxNDUzMiBhN2Q2MDllYTkwY2M2ODI2NjQwZWJjNTcxNGZmMmNlYzUzZmRmYzQ1IGxlZ2FjeS10cnVuaworMTQ1MzMgZDI3Njg0YWIyMTVhNmE1YWNiNDA3NDc0OTllYTQ5ZDJkMGYyODAxYiBsZWdhY3ktdHJ1bmsKKzE0NTM0IGVmZDYzMTVhZTY3OGQ2MmU1NTk3NDUzYWYyYmVhZmIyNzUxMmRiMWEgbGVnYWN5LXRydW5rCisxNDUzNSBkYzY1YzVmNmFkN2MxNGNhNDQ2OWY2ZWQyOGZmMTM0Y2IwOWVjMDg3IGxlZ2FjeS10cnVuaworMTQ1MzYgZDI0YWQ1NTAzODMxYTdkOTgxOTUwNzlhMDI2NjU0MGRlNmI4OGM5NSBEaXN0dXRpbHNfMF8xXzMtYnJhbmNoCisxNDUzNyA5YmVkMzM1OTljMzM5YzE1YTI2ZjEwYjM5ZTAzODNmOTJjMjJjYzU2IERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE0NTM4IDljOTNmMTBkY2Q2OTY4Y2Q5MDRjYzY0ZGRiOWMzNTliYzliZjk5OTkgRGlzdHV0aWxzXzBfMV8zLWJyYW5jaAorMTQ1MzkgOGVlNzU5ZDc5OTY0NmVkMTE0MjJmZWUxZmQyMDczN2IyZWVmMzY1ZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1NDAgMGM0NzI5ZTM4YzNkYjhmNDhkMGRkZTgyNTJkNWM5YjI5ZjJmOWEwMCBsZWdhY3ktdHJ1bmsKKzE0NTQxIDU0Y2YzYmIzYjhiN2NmNGM3MTAxYzE3MjM2OTE0ZTk4NDRjZmRkZjggcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTQyIDEwZmJmZDA3ZjM4OTQxYjNkYjNjMDZlNWQzMmVkYzA4MzUyNTZhZTUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTQzIGEzOGZiY2I3ZDMzNTY4MGY2YTU5MWFhZDE0ZWIxMzI5YzViZWU5MGQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTQ0IGUzOTlhYmNjNWRlNjMwZWE4NTVjZGI2MzA3ODUzMTFhYTBiNmMzNzggcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTQ1IDc1OGE4N2Y0Y2IyYzllOGQ4YjY3OTQ4M2U4Mzg5YmE0NjU3ZGFiZWIgbGVnYWN5LXRydW5rCisxNDU0NiAzOWJiMDE3NTUwNzkwOTcyM2MyNDMwOGFiNjdkMzZmMTliYjcxMTA3IGxlZ2FjeS10cnVuaworMTQ1NDcgMjcwYTExNDg4YzZjNWMzZDJlYzk4ZTUxNTVlNjFjMzQzY2RkZDZlYiBsZWdhY3ktdHJ1bmsKKzE0NTQ4IDgxZjEwNjllMTU1ODY5OTM5YzczZDEyMzk2YzM1YzExYWQzZGJmMDAgbGVnYWN5LXRydW5rCisxNDU0OSBhNDU3MGY0MDk4NzEwZjRmZDdlYzMxMWJkY2VhODhlYzQwZjA5OTU1IGxlZ2FjeS10cnVuaworMTQ1NTAgMWE0OWI2MTQ0ZjBkZTMyNWI1OTc4ZDEyYzY0ODNlMmUwM2NkMDBjNiBsZWdhY3ktdHJ1bmsKKzE0NTUxIDk0MzJkOGIxNWM5NzE0ZmQyNzg0YzcwYzcxY2E4NmIyNGY5Mzk2ZDEgbGVnYWN5LXRydW5rCisxNDU1MiBlODJhOTYzMzA3OGJjOTI1NWY4YzNkNTUyNTRlZmE0NzZkMjk1ZjI4IGxlZ2FjeS10cnVuaworMTQ1NTMgMDAxNjYzM2ZiZDMyMGExYzU4NjdkMzU5MmFkNjQ2YWExNTQ1MDBlMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1NTQgMjMxMDhjY2UxNjliNDVkZmJiM2VkYWM5MjY1YzdiZTAyNjk4ZDNiNCBsZWdhY3ktdHJ1bmsKKzE0NTU1IGVmOGIwNjJiNTc5ODA0NGZmMzMzNGZhZGQxMGE3NTUwODgzY2Q1ZWEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTU2IDYxMGQ3ZDY0MjkxN2U1ZmNiZDEzYjY0Njc5Y2UwMjQ3Yzc3NTUxYjIgbGVnYWN5LXRydW5rCisxNDU1NyA3ODQyZWNmNWI0MjQ4OWYyYjIzMzhlMmZmMzg2YjllMWM3NTAwMGM4IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU1OCBjZmNmYWEzOTUwZDY0MmM5YTIwYjMyOGE0M2Q2M2Y2ODM4MDZhM2UyIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU1OSA1OGQxZTc3OTE5ODA1Yjg3ZTdlMDFhNjQwZmIwNjNkOGJkMjE2ZGM2IGxlZ2FjeS10cnVuaworMTQ1NjAgY2Q1N2Y3NzZjMWRmODUxNWY3NzhhMDE1MTdiYjc0Yjk5M2MzMGRhOSBsZWdhY3ktdHJ1bmsKKzE0NTYxIDI4MDJmYjUyZTk5YmM3OWE2NWJkMDM0ZjFlNjczMTA4YmE5YTBmOTYgbGVnYWN5LXRydW5rCisxNDU2MiAwMTdlNTkyYzBmZDJjM2U4NTNjNzQzOTA4MTdlMzE2NzYzNTk2NWJkIGxlZ2FjeS10cnVuaworMTQ1NjMgNDY3OWJjZWY3YTRmNjQ1YWIzOWVmOGI1YjE4MjEzYWRlMTUwZTA3MCBsZWdhY3ktdHJ1bmsKKzE0NTY0IDcyM2VmY2RjY2UxYmRhNWQwNmIyYmFmYzkyM2I5NWEwNTY5MzQzYjcgbGVnYWN5LXRydW5rCisxNDU2NSA2MmViZThjNzE1NjU5YjFmZDI1OTlhOWQ2YzJkMzA3ZGM3MjdiZmNmIGxlZ2FjeS10cnVuaworMTQ1NjYgMDFkNWI3ZDExZmMxMjhlMmNlMTViMDIzNTgyMWI0MzFlYzg3YThmOSBsZWdhY3ktdHJ1bmsKKzE0NTY3IDY5MzJlMThhZmY5OGFkN2YxNmYwOWQ5M2RiNDcwY2ZmYWFiYzg5NTMgbGVnYWN5LXRydW5rCisxNDU2OCBmODUxOGYwNjBiZWRmOGY4ZjVjZmVlZWJmYzZhOGMwOTZkYWUwMzVkIGxlZ2FjeS10cnVuaworMTQ1NjkgYTQwYzJmZWNkNTI2OWYzYWU4MjYxMzg4M2VkYWI2MjhhYWIzMDg0MiBsZWdhY3ktdHJ1bmsKKzE0NTcwIDBhNGJhY2NiZTlmZTkzNGQwMWFhM2JlMDg1YjQ0MzcxYTRjN2RiYzAgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTcxIDQ5YjEwOWI0NTBkYTdkNzZhOTEzMjAxMWIyMDA3MWNkNTU0OThjOTQgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTcyIGFiMWVmMWFhNDAyZWE1MjM2YmUyNWFmNDA1Yjc5MTE2NGFiYzdjNTAgbGVnYWN5LXRydW5rCisxNDU3MyBiM2NhM2NhYTM3NGM1MThiYjU4ZGM1Yjg4ZGM0ZTZhODcxMWVkZGU1IGxlZ2FjeS10cnVuaworMTQ1NzQgMTFhZTFlZmVjODcxYTM3YTBjZjdlNTljNTY5M2RlMDcwYjM2MjhkMyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1NzUgZDc0ZTEyZDQ2NTgwZDM3YjE3NTU5MjVlNWNmNDJmNTk0NjBjNjRkYSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1NzYgMDBhOWVmNzQ0N2JhYTUzOTMyNTlmOGY3M2Q3YTc1MjMyM2FiYjdkMiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ1NzcgODU1Yzc4ZjViNWRkZDRmYzUzYWY2YjI4YTg1YjVjYWNlOWU3ZmFlMyBsZWdhY3ktdHJ1bmsKKzE0NTc4IDk5NDhmZDUzMmQzYjRjYjJhODQyZGZhNzZlYjllZjlkZjg3Zjk2ODAgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTc5IGI5NzVhMDU2ZGViNjY2NWM3ZDliODMxNWM0ZmJlNjcyMTQ4ZWI1YWQgbGVnYWN5LXRydW5rCisxNDU4MCAwZWNhNTY3ZTUzMmMyODRiNmY1ZDNhZmNlMTExY2RlNjk2OTA1MTIwIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU4MSBmZTQ4NWE1ZDA0M2ZjN2JiN2Y1YjU0NzkxNDdiMWQ0YmI4MTU0NGYyIGxlZ2FjeS10cnVuaworMTQ1ODIgYzBmMThlMTFmNGVmMzI5MjBkODViZGFlZTc4YWY3MzcwNjY4ZWIyNCBsZWdhY3ktdHJ1bmsKKzE0NTgzIGMxNjcxMWZkZDk3MjQ0MzNjN2M5OTAxM2JmNGUzMjI0MGFjM2RkMjAgbGVnYWN5LXRydW5rCisxNDU4NCAxYzhhOWZhYTM1MDFlYzQ3MjkxZmZiNWZjOGUyNjY1MzFjOTEyYjRiIGxlZ2FjeS10cnVuaworMTQ1ODUgYzlkODdhN2E3MGIwYTI5MzI0OTMzNDViYjNhMzNhNWFiMTAxMTM3MCBsZWdhY3ktdHJ1bmsKKzE0NTg2IGE2ZTVmMDI3NGU1MTcyYzVkMDhlMzJhMjMyZTY1ZWU3YWM4NWExZDAgbGVnYWN5LXRydW5rCisxNDU4NyA3OTIyZDA4NDI2Y2FhZTdhM2I3ZDE4NTVjMDEzNTU3MGU5NjczM2RmIGxlZ2FjeS10cnVuaworMTQ1ODggZDEzNTk4MzFlNWYyNjRjOWFiMzg4ODlhMzI1NmJmYjNkZDI2ODk5ZSBsZWdhY3ktdHJ1bmsKKzE0NTg5IDViMDNjNTI3ODMxN2Q2NDlhNDBiNGFkNDk4MGQ3ZmRmZDY1MmM5MGUgbGVnYWN5LXRydW5rCisxNDU5MCAxNWNiYjU3Y2E3NDcyNTdkZTBmYjVjMDRkMDY5OTFhNDlkMDUxOGQwIGxlZ2FjeS10cnVuaworMTQ1OTEgYTg1MWVmMzI2ZDkzMmY3MTQ3OGQ4ZGE2YzJkMmNkY2QxMmI2NGQ5MiBsZWdhY3ktdHJ1bmsKKzE0NTkyIDdjYjQ5MWUzOTllNjE5ZjRlN2Y1NTk1YWM0MGRmMzc3YTc3NzZmYWEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NTkzIDI5YzVjNTQxNWRhNzFkZWNiZWJjZDgyNWIzMDhhM2E5MzA2ZGM1MzQgbGVnYWN5LXRydW5rCisxNDU5NCBmODJiOTIzYTdhOTZjMmFmNWQ0MGRmMzliYWQ0YjEwNTA1ZThkNWRlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU5NSBjZTI2OThkOGRmZWJmNmQ4ODUyYTQ2MGQ1MmI1YTQ2MzQ1NGY5NjJlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU5NiAwNmZiMmRkMzhkN2QyOTk5MGFjYjcyY2YyNjc4M2EzY2YxOGI0ZTBiIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU5NyBjZmVjMTFiNGE4YTcyY2JlOGE3MmY3MDdhMzAwZmQ4MzBhNmY5MTkxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDU5OCBhYTBkMGIxZjFiZTNlMTFiNjJhMTkwMmRjZDc0MWNiNWIyY2EzMDU3IGxlZ2FjeS10cnVuaworMTQ1OTkgOGNjNDQyOGM3YmFkOTFlNjRmZDlhMjRlOGQ1MDJmYWJiZTU1MWYzYiBsZWdhY3ktdHJ1bmsKKzE0NjAwIGQwOTdiYzVhYTdmMzQ0NDRlNWY0ZTQ5OTZlMmRiYjlhMjAyMDY4YmMgbGVnYWN5LXRydW5rCisxNDYwMSA0YjhiYzlhYjgxNzU1NTZmOWU4NzkzOGU4Y2RiYjc5YzZlZTM3YzQyIGxlZ2FjeS10cnVuaworMTQ2MDIgMmE2MjgwNjc5NjliOTNjYTU2MDRhM2I3ZmYyZjQyOTMyYWY5ZGZjZiBsZWdhY3ktdHJ1bmsKKzE0NjAzIGE0NjlhYThiMzMyYTU4NDYzNTU3NzFlZDFlODg5YTk5YTA2MTZiZmMgbGVnYWN5LXRydW5rCisxNDYwNCA3OWI2YTZhODgyZDllOGQ1NzEzNzA5MWRhYWFkNzA2ZmZhYTNlYTc4IGxlZ2FjeS10cnVuaworMTQ2MDUgYmRiNWY2YTUyNGI1ZTNmNjQxNzkxOTc5ODgzYzI1ZGJlOTAxNzU0OCBsZWdhY3ktdHJ1bmsKKzE0NjA2IDlkOGY0N2Y4NDQ3Zjk3NjIwMTM4ZDE0ZmFjZjZkYTJkNDdkYmUwMzEgbGVnYWN5LXRydW5rCisxNDYwNyAxYjU0YjIxMzQ2ZDI0ZmEyNDY5MGE3NjJjZWYxYjdjYmEyOGRiMzBmIGxlZ2FjeS10cnVuaworMTQ2MDggYWVmNWE3YzYyMjkxZWI2OWVlNDM4ZTg3YzFiYWEzMmMyNGJkZjI1NyBsZWdhY3ktdHJ1bmsKKzE0NjA5IDI1YWRjNWM4ZGQ2ODAwNGUzZmYxNzgwZDYwMDNjMGExYTkxOTIxY2UgbGVnYWN5LXRydW5rCisxNDYxMCA2OGUwZWYwNTI4MTUwNThmMDIyNTQ3OGI0OTM5ZDJlOTY5ZWQyODA5IGxlZ2FjeS10cnVuaworMTQ2MTEgN2JkOTdjM2RkNDMyZmQ5NDU5OGQ4Y2NkYzVkZDMyNGY2MTYwZjlhOCBsZWdhY3ktdHJ1bmsKKzE0NjEyIGM5NDU3MmE1MDk5NTIzMThlYTEzODgzMTQwNmE4ZDU4ZGM0YmZkYjQgbGVnYWN5LXRydW5rCisxNDYxMyBjMGQzNmY5MTZhZmQ4Y2E3MDFkZDU2NTg4ZDY0MWY5MmNhY2RhZTQxIGxlZ2FjeS10cnVuaworMTQ2MTQgZWY5OGVlNmFlYjQyYWUwMWU0Y2MwZjY4Zjk2NTNiZTExYWEzNzJmMCBsZWdhY3ktdHJ1bmsKKzE0NjE1IDA0NTZhOGMyZWJmN2MyYTk3MGYxNjczNjE2MmJiMzE0YmQxOTAyMGEgbGVnYWN5LXRydW5rCisxNDYxNiA3M2RmYmVlMTUwMjcxZjNhN2EwYmRmODE5MjNmNzY5Y2JhNjA4NTE3IGxlZ2FjeS10cnVuaworMTQ2MTcgZGU4NDA0NTczZmU1MTJjN2NkYTY5Y2M2MDRjYzhjOTNjMTUxMTEyNCBsZWdhY3ktdHJ1bmsKKzE0NjE4IGY2ZDFkMGZkYzFjN2M3MjAxYjQ5MGFjNzU5NjA3ODQwNzczN2FjNjcgbGVnYWN5LXRydW5rCisxNDYxOSA0MjFiMTYyMGY1ODJmOWE3YjgzZmMzYjkwY2FhOGVmOTQ5ZmIzMjU0IGxlZ2FjeS10cnVuaworMTQ2MjAgODAyMzcwYTYwZWY3ZTNkNzFmNGFhN2RiYmNiNGZlNmI5Njc1OGE0ZiBsZWdhY3ktdHJ1bmsKKzE0NjIxIDczNGYzYzA3YTZiYjlmM2Q1Y2MyNzkyMmVkMDcyYzY5MjBlNjkwMWIgbGVnYWN5LXRydW5rCisxNDYyMiAxYTU4ZTZmYzNhOTU0ZGY3OWY4NWYzOGQxMzAzMzgwMTI0ODU1OTU1IGxlZ2FjeS10cnVuaworMTQ2MjMgODI2NjkwYmExYWU2OWI4YjU4NGU0ZjY5NDdkNmZlZGM1NWUzM2UyMiBsZWdhY3ktdHJ1bmsKKzE0NjI0IDJhNDBlOWNhZTg1OWRjYTA0ODhmZGNkZTgxNjhjOGY1MDk4NWMyMmQgbGVnYWN5LXRydW5rCisxNDYyNSBkMDQwNDc4MGYwM2JmNGUyZjJhMzIwOGNlZWE2YWFhZGIzNGQ2MmIyIGxlZ2FjeS10cnVuaworMTQ2MjYgNWU0OGQ4M2MwZmNlMTcyMDQxOWJhZWU2MzdhM2QwNDc3MzM1OTBkNiBsZWdhY3ktdHJ1bmsKKzE0NjI3IGEzOTkyYTc4OWUyZTdiYjE1N2U3YjI5OGE1N2U4NzhhNzFlYzQ1NzkgbGVnYWN5LXRydW5rCisxNDYyOCA1YjMzZmNhMDJiNzg1YmI2ZGI3MDE1YzExNTkxNzAyZDU4ZDYwNTRlIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDYyOSBhZGRlYTExNTdhYTdmOTA3Mjk4YmFiOWU5OTcwNTIyNGIyNjVkY2UxIGxlZ2FjeS10cnVuaworMTQ2MzAgZTEwNTE1ZTdkMzU2Y2NiYTdkNDc0MTY0YzE3YTRmNTM4NTE4NjM0MyBsZWdhY3ktdHJ1bmsKKzE0NjMxIGY5ZGIzNjU0YTFmZDA4NzY2YTA1NmUzNjAzNzBlYTVmOWM3ZTAwYWQgbGVnYWN5LXRydW5rCisxNDYzMiAzOThhNDU5OWVlZTMzY2U5YjczNGMzY2U5YTg0OTM0MWZjNjNiY2RiIGxlZ2FjeS10cnVuaworMTQ2MzQgNmUzYzgxYmQ4MjkxZWRlYTdmN2Y0ZDc2MDQ1NGVkZTUyNjU0MmViYyBsZWdhY3ktdHJ1bmsKKzE0NjM1IDIzZmQ3ZDEwMDY0ZWIxNjIxZmNlY2JmYTAyZjJiMDE1ZGE5Yzc2ZGUgbGVnYWN5LXRydW5rCisxNDYzNiBkNDY2MmQzODE3NDhhYzZjYTZiNTUwYWUzMTI2OWY1MWRkNzM1Y2EzIGxlZ2FjeS10cnVuaworMTQ2MzcgZjkxNDFiZWJlZDQ4ZjRlNTlhMTFkYjEyY2U2MGNhNTQ1YmEwZTI1YSBsZWdhY3ktdHJ1bmsKKzE0NjM4IDNlNWZiZWY5YjFmNTFjYTYxNGFlYzczZTMzNDJjZmRjN2FiNWFiOTggbGVnYWN5LXRydW5rCisxNDYzOSAyNGMxODdiOTI3NzM4NDg2YWYwYWI0NGUwNmRkMDIzZmQxYzc5NzExIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDY0MCA3NDEwNjkwOTI4MzE5YmQ4MTJkNmMyMGIyNDZiNDczYjg0OTU4ZTk4IGxlZ2FjeS10cnVuaworMTQ2NDEgOWQ1M2ZjODA0M2JhNzlmNTRhMjk2MDFiNDQyZDZmZDEyZTY1MjA3NyBsZWdhY3ktdHJ1bmsKKzE0NjQyIGJlOThlMDU1ZTM5ZDk5MTQ1N2RkNjdjODg4ZmJhZWE0NTE5YTQ5NjAgbGVnYWN5LXRydW5rCisxNDY0MyAyNDE5OWMxYjkxODJhMzZjYzc5M2MyNjQ0NWVhMGJlZTYzYmU5YzA3IGxlZ2FjeS10cnVuaworMTQ2NDQgNDQxMmM3YTMyNDk3ZjkwYzI5NzFiMmQxZDBhMWEwYzc1ZWUxMGFhZSBsZWdhY3ktdHJ1bmsKKzE0NjQ1IDlmMjYxZTk0YjJiMjViMDQxZGJmZmEzZWIyZTUzNTJmNzQ0MTU1ODEgbGVnYWN5LXRydW5rCisxNDY0NiA1MzA1ZjliMDFmYzc1NDU3ODAyYjE3MTYyN2Y0Zjk4ZGJlNmY5MTc0IGxlZ2FjeS10cnVuaworMTQ2NDcgNTA3ODMzYjE4MjEzYjcwYjdjMjIzZWI5Njg2MzdkNTJhYTU1NTk3NSBsZWdhY3ktdHJ1bmsKKzE0NjQ4IDEzYmM2OGZhZWI2NTViNjZkYjY1M2Q0NjFkZTgwZmM3MGExN2Y2MTEgbGVnYWN5LXRydW5rCisxNDY0OSA3NGI3MjEzZmI2MDkyMGEwMWU0MjFjOTQ1MGNlNmU0Njk2ZWY0MGZiIGxlZ2FjeS10cnVuaworMTQ2NTAgZjc2YmY2MWNiMTljNGE3ODNhZmEzZjc4OTg3MGFhNWU5MTU2NzE1NCBsZWdhY3ktdHJ1bmsKKzE0NjUxIDU3NDI4M2RiMmIzZGRkZWYzNjlkZmQwMzY5Y2U4YTg4ZTJiMDJkMjQgbGVnYWN5LXRydW5rCisxNDY1MiBkMGUwNmVmYjMxNjUxZjBlNGNkY2I0M2Y2MDc4Nzc1NTgxOWEwYWEzIGxlZ2FjeS10cnVuaworMTQ2NTMgOGJkYzI1ZDIyOTI1YzIxYTEzNmM1MzMxMDE3OGU5MTNkYmUwNjY5NCBsZWdhY3ktdHJ1bmsKKzE0NjU0IDI4MDAzYWZhMWEyZjA5MWYzMmZmZjMzYWJiMTc1YTJmMmIyOTA4NTMgbGVnYWN5LXRydW5rCisxNDY1NSA4NzZmMzU4MjhlODcwYTJmMmE3Mjg4NmYzMTI1OWYyYTlkZDhkMjRmIGxlZ2FjeS10cnVuaworMTQ2NTYgNTEzMzU0ZDg3YTg1ZTc3ZTMxMTM5N2VlOGY5MDQ2YjM1OTljZjBmZCBsZWdhY3ktdHJ1bmsKKzE0NjU3IDhiODhlMWJjMGUxYjRiMGM4MmVjNDIzYWZhYzRlMzFkY2VlY2IwZDYgbGVnYWN5LXRydW5rCisxNDY1OCAzYzYyMGY2NWVhYTViNWViNjViNGU2ZmM2MWUxMjkxZjNkN2Q2YmMxIGxlZ2FjeS10cnVuaworMTQ2NTkgMzBkOTI0OGUxMWJiYjIzMWY3Mzg3NDNmM2MyZDFlNTViMjA0NDkxMSBsZWdhY3ktdHJ1bmsKKzE0NjYwIGE5YjVhMzFmZjhjYjE5MTM3MDc1ZjkzYWE3ZmE5YjU2YmZmMmI1YTUgbGVnYWN5LXRydW5rCisxNDY2MSBkN2E0YTVhZTJkYWVjNDdkNjc1ZjI2NmMzNjYyNmRiMzg5MDA5NGYwIGxlZ2FjeS10cnVuaworMTQ2NjIgYTEzMjk0YWVmMDJlYTRmZWIzNGI1NmU4ZjhmODg1NWVlMDEwNDVjNyBsZWdhY3ktdHJ1bmsKKzE0NjYzIDRjN2JjODg1ZjQyMGFmYTU4YTY2NmY5NDE2YmEyNDAyNzE3YmI1OTEgbGVnYWN5LXRydW5rCisxNDY2NCBlZmIzYTQ1YzY2ZjMxYWM4OWE4NGQ3YmM0NzkzMzRhZDhlZGM5MjRmIGxlZ2FjeS10cnVuaworMTQ2NjUgODgyMjVkZjM1ZWZiYWM0NmJiNWJjMTc2NWZkYzI4Zjc0MTk0NzdjZiBsZWdhY3ktdHJ1bmsKKzE0NjY2IDMzMDNhNWJhYzZkZGQ0MjAxMzM4MDFlNjk1YzRjY2JhODAxZjNjMDAgbGVnYWN5LXRydW5rCisxNDY2NyAwZmRhYzFmNTRlYzgxMDM1MTE1ZWY2ZmQ3N2MwMDRhN2M1ZDA2ZWZmIGxlZ2FjeS10cnVuaworMTQ2NjggOTNkYWM0MDUzMTg5YzBmNTUwYmY1NjlhNmY4MmY5NmQ3MjYxNTAxMyBsZWdhY3ktdHJ1bmsKKzE0NjY5IGVlNjQ5MmE1ZmRlZTY2YTgzNDIxNWIxNmFiYzg4NjI5NTUxNWRiZGIgbGVnYWN5LXRydW5rCisxNDY3MCBmMTA0MjUxYjZmOGYzN2VmNWZiMDAxMTQ4YmVlNjE3NzEzZDNmMDkyIGxlZ2FjeS10cnVuaworMTQ2NzEgODE3MDJhNzM1NGVjYjUwY2UwNDYzMzRkZDA5ZDhiYmU5ZGVkNWY4YyBsZWdhY3ktdHJ1bmsKKzE0NjcyIDE3ODlmYWU1ZjA3NDFhMDNjOWQ0NTZiNGUzYzM2ZDQ2NzNmNmM2NzQgbGVnYWN5LXRydW5rCisxNDY3MyBiNWU4MTI3MWM0YzhiYmNjNWFmNTZjNWY1Mjk1ZjZlOTkyYzMxOGVmIGxlZ2FjeS10cnVuaworMTQ2NzQgNGI4YjJlMjhiZTM0OTI1OThmYzkxZjFkOWFhYmRlZmY1NDViZGM3OSBsZWdhY3ktdHJ1bmsKKzE0Njc1IDk2ZmE0NmQzNDg5OGFjZGQ3YmM2YWZhYTNjMTk5MTEzZTYzM2VmMGIgbGVnYWN5LXRydW5rCisxNDY3NiAzMjYyN2RjYWZhYmZmNzJmNTNjNTc2NGJmOTQ0ZDYwNzQ0MmJiYTgwIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDY3NyAyM2RjODlhZDA5OTZlODk1NjFiNDBlMzg1YTAzYzU5M2YxYmQ1NGY5IGxlZ2FjeS10cnVuaworMTQ2NzggMzgzMTBlYjA2NTllM2E0YzQxNzM1YzhmZDkzMzc0ZDk5OWYyMjUyNiBsZWdhY3ktdHJ1bmsKKzE0Njc5IGY5NGQxMGI2ZDBmNGQxMzM2NmQ2YzdlZmMyMGM2YjNlNzgxMWI3MTkgbGVnYWN5LXRydW5rCisxNDY4MCBjOTQyNDdiNWMzNTU1NzhmNDYyNmQzZjY3Yjk1ZDllOTAxOTMyZTcxIGxlZ2FjeS10cnVuaworMTQ2ODEgODY1MWYyZGE3YzRjODcwMWU1ZDkyOTNmNGI2NWI5YzVmYjc1ZjlkOSBsZWdhY3ktdHJ1bmsKKzE0NjgyIGUzNjJmMzI2MDQ4Y2EyZDFkOTJmMTExMzQzOGJlOTYxYjlmM2YyZWQgbGVnYWN5LXRydW5rCisxNDY4MyBkNTBmYTM2NzBiNjZhMTdmNTYzMTU5ZjIwY2Q1OTU5Yjk0ZGNmZWQzIGxlZ2FjeS10cnVuaworMTQ2ODQgMTQ4ZGI2MzIyMTYxZmUyODQ5NmE0MDY2YTlmNzFjNmRhZDNmN2NmZCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2ODUgMDFmYTVjYTk4ODEzYjQ1NWM4MGMwNThmMGE4OWY5MzE2YWNiNmY1OSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2ODYgNzVkNmM3YzNlYzU1MDBlNDZhMzFhZTUzOTFkMTU2Y2ZkZjY4MzNkYiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2ODcgNzYxMGVlZDNlMDMzMjgzZmZjYTlhYzUxNWQzMzg3ZWI4OWI4OTljOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2ODggZjc4ZjQ3NzI1NjhlYzYxY2FmMWNlMTk0NmYzMWYxOGQzNmFiY2NiYyBsZWdhY3ktdHJ1bmsKKzE0Njg5IDc0ZDk3ZDc5NWM0ZWU3M2NkODc3Mzk0MTY0MzM1ZDQ1MzBiZmVlYmIgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NjkwIDNmNTZjZGEzZDJmYzQxNzEzOGFhMGUzNGZiMDU3ZWJkNTNjZTRkZmMgbGVnYWN5LXRydW5rCisxNDY5MSBjNzQ1ODkyM2Y2YTJkMzMwMzQ1ZDExMDllYWMyYWQ5ODgzZWZlNTQxIGxlZ2FjeS10cnVuaworMTQ2OTMgZjI3Y2MxNzM1MTdlMzQyYzMxMjdmMjAwN2RmMzlmOGM5NzA5OGQxMCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTQgMGY2ZWFiMDNmMjg4MDFiNjMxNGY0OWE5YjFiZWI4ZjE5YWY1MmFhZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTUgMzY2YzFlOThmNzA3OGJmODBjNDFjNjVhNWUwNTExYWQ0NmJkZTgwMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTYgMGE3MDYwNzJkNTBhZjBmNmNmNzk5MTgyMjFhNDZhMWNiYmY2ZjUyNiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTcgMWM5MzVjYTM3ODVjOGQ4MDU4MDI0NjhmM2UzMDI4OWZiYjdkN2JhYyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTggNDM4YTQ0MGJiMDg1ZTVlOTUyYzlmNTEzYWMxMDFhZjNkYTI0OTZhZSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ2OTkgM2Y4NWM0Yjk5ZDMzMjIwNWI1NWRjMzc3ODI5Yjg1NDg0NTY3ZmM5ZSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDAgZmFmMGM5ZTliOTJmZWIzOTNlYWUxNWMyYTYzZGE0Y2U2MTk1MmFhMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDEgZjIzODY0ZTRhZDJjYzU1MTI0YzFjZGEwY2M4NTJiN2EzODFjOTQ3ZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDIgZTU3Y2U0ZGY1NzA3YTcyZmE1MjIxMTEwNTE2OTE0NjYwZTAyNzE4ZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDMgNGZiZjY5NjIwODdkNThmM2IxMGQ5OGNmYTJjY2I1ZTdmNzhlZWRiNSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDQgYmRhYjljNTVmMTY4Mjk3ZWNkMDhkMmY2ZDZhNWYzNWUwMjVjMGIzOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDUgYTMzZjJhM2RiODkyN2ViMjU0MjJlYTI2ZTJlOWQzZWYyYzY3ZGQyYyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDYgMmVhYWVkNzU4OWFlNWUwZDk2OTliZmMyMzA1ZjBhOGE3YTZkNTYzOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDcgM2FmM2IxZWI2N2ZlMTRjMWE5MDAwZmY0ZGNhYTQ4YTI4Mzk1NGQyNyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDggMjYxMmI5NmI5OWFjNDRmYmY3MDQzZTIxNjYzMDljOGEyOGZhMDY1YSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MDkgMjhjOGNlNjY1YjAzMjBkZTk3YmEzM2FkNWIzNzM1Yzc2NDIxNWE1YiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTAgYjU4ZjJmMGNkNTViM2U0MjgxOWI2YzBkNGQyOTI2ZjYwYzQ5MjA0NiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTEgOTYzNDhiZWI5Mzg0Mzg5ZmJlN2YyZDkwNWQ1YjNiYmEyNjMzMmJmZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTIgMTY5YWRkNmE0ZGMxYjBhMjI5NjMxOTRkYTM2YTkxODQwY2Q3NTY5MSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTMgNTAwMGVhZjA1OGRiNzhjZDc4NDI2YmMyMmE2NjA5YWY2ZjBkNDhmNyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTQgNzAzZGE3ZTk0YjIxNjVkMjU4OTc4NjNhYzQ4NGM2MjFkY2U4Zjg0YiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTUgZDdiODdmMGZmMGQyYTdmNzFmY2E2NjQ1YjAyMmQwNDZhYWQ4MjQ1ZSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MTYgOWQ3MzU2Mzk0MjlkMTNhZmNiOWFkY2MwNDAxMGQ0ZjFiZGQ3MjVmNCBsZWdhY3ktdHJ1bmsKKzE0NzE3IGUwZmIwNGQxYmQ5MzRiOTBiMzhhNjBiNWZmYTBlZTQ4MGYzYjljYTkgbGVnYWN5LXRydW5rCisxNDcxOCA3NGZiNjAyYjc2YzJmZmIxZGU5Mzc1YmNlNGEzMmI4ZGI5MjJhZjA2IGxlZ2FjeS10cnVuaworMTQ3MTkgMTI3ZjcwZjU5YjAyNjY0M2EyMzJiODllMDU0NWMyMDQyOWMzYzZmZCBsZWdhY3ktdHJ1bmsKKzE0NzIwIDY2MzEyOWYzYWJlMDAxZWJkNzU3MGUyMWFjZTQxMDkzMDNiOTc2OWUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzIxIGI0NzI0OGNlN2I2Yzk0NTA0OWM2ZGZlNWU3YWM4OWJlMjdjN2MzMTEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzIyIDM5NTIzMTg5NTdjZmEzMzY0ZmFlYWE4ZmJlNmRhOWY4OWJjNGY5ZjUgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzIzIGJkMTAxNDIxNWY2MjI1NGE2ZDA0YTViODNmZTU2ODI5Y2VhYzI1YzMgbGVnYWN5LXRydW5rCisxNDcyNCA0ZmEyNWEyOTIyNzNiNzU0ZGJhYjBkZGUwNjQ3OTEwNmUwYTMxMGQ3IGxlZ2FjeS10cnVuaworMTQ3MjUgYzJlZmQxN2NlY2JmMWQ2ZjI1ZWZkNzhlYmMyYmQyOTZkOWYxZWYzYSBsZWdhY3ktdHJ1bmsKKzE0NzI2IGU2YzQ2ODE5ZGI5MjcyOTc2YTJkOGZmOGNlYjBiODgxZjQwMTU1OWUgbGVnYWN5LXRydW5rCisxNDcyNyBiYTgwYzkwNjQ0OTE4MDY3ZTZmNzU4Y2E2YzY0OThkOTM3MjVkYTNlIGxlZ2FjeS10cnVuaworMTQ3MjggYTQxMTgzNjcwMzg2ZTYyZmYzODk4ZTE5NjhlN2I4ZmUzNDJjMTYyMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MjkgYzYwM2NkZWRhZTE3NzRlMGVmYzU5YmFhNTVkOGY5MGRjODQxNjhiMiBsZWdhY3ktdHJ1bmsKKzE0NzMwIDEzZmQwZGZlYzU2MGE3ZGQ1NTZhZTA2ODY5YTVhNGZjZWY3NWFlNGYgbGVnYWN5LXRydW5rCisxNDczMSBlNzgyMDM1MmNiODBkMGYzZDdiMGVhYWNjNTFiMWIzZjg3N2M2YjA2IGxlZ2FjeS10cnVuaworMTQ3MzIgMDU2OTcyNTE3MTkxMmU1YjdkN2QxYTU5ODRiM2U5NzkyNzUwN2RhNSBsZWdhY3ktdHJ1bmsKKzE0NzMzIDY5YjBmY2VmNGMwZjIxZDc2OGI3NDc1NWU0ZGJlNDJkMTVlMmRiYzMgbGVnYWN5LXRydW5rCisxNDczNCA3NjUxNjIwNGI2MjBiZWI4NGZjMWRkZTlmYWVkYjg0MzQ0ZTIyZTUyIGxlZ2FjeS10cnVuaworMTQ3MzUgMWUxYWViYjNlNGY2OWU1OGYwYjRkOGQyMDUzNzA0MzM3ZDQ0Nzk2ZiBsZWdhY3ktdHJ1bmsKKzE0NzM2IDg2ZDljZTE1ODA4OThlZjQ3ODY5NzdkM2Y2YTZhNDE0ZDNjOGIxYjQgbGVnYWN5LXRydW5rCisxNDczNyA5MTRlZDUyODg5NmUwZWQ1YTUwYzJkNTZhZDAwOWQxNzMzOTM4OTI0IGxlZ2FjeS10cnVuaworMTQ3MzggYTBhOWM2OWFmOWY3ODc5NDY1M2I2ZjA5YzA3OWQxOWUzMzExN2NiOCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3MzkgNmZkMGJiMGMwMzMxZWZiZTdiMWYxNTQ1ZGFiYjFlNzM1MTlmNDk2MiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDAgZjA3YzMzMDU1N2NmZjg2M2Y1ZTMxNWZiOGQ1ZjFkNjEyMDUyM2FmNCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDEgZDc0ZWFhOTJmMGI0NTgzNDQ5MmY0NWUyNDY0YzRhZGM2Mjc5NDExMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDIgNDNkMjI0Nzg2YTU4MWU0NWQzMjZjZTM1MzczY2Q2ZGE1YWMzNzVhNyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDMgNjI4Y2ExZTkwNTkxZTUwZTk1ODk4OThiN2Y1YzFkZDAwMWFkMzhmZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDQgZjIyMGZiYTU3NzQ5ZmI4MDMwNWNmZmU5MWJhMDdkNTZhYWI3NmFlZiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDUgMGI5NjMzYTQ1ZDY4ZWI4M2JiYmFjOWU4YjI3OTRiM2NhNzQ1MDQ5YyByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDYgY2EwMTdkZTRmMmZkOTRjNjdiYzJlZTIwYmNhMWI1NzAyM2MxYWExNCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NDcgMjVkM2RkMGIxY2EyOTM4MDMyOWY0NGFkYWQ2Njg0ODZiMjg0MTgxNSBsZWdhY3ktdHJ1bmsKKzE0NzQ4IDc5OTRkOWRiN2Y0ZDVkZmU1MWViYWQzMDA0NzFkMDFlYmJjMDAyOWIgbGVnYWN5LXRydW5rCisxNDc0OSAwMDlkOGZhZTgxZWFlNmVkYmI3ZmQ3M2YwYjBmOTA3ZWZkNmNlMmE1IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc1MCAwYzQ0N2MyODkxNDY2ZmQxM2ExMmQyM2RlNTRkOTQyYjg3Njg2MDYyIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc1MSBkMmEwMDYxMDkyZjgwNTAxNTVkNGNiOWI0NGQyNjljYmFhZGQ5ZmNmIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc1MiBkYWY0ZWZjM2FiYTkxYmMxZTlhOTI1ZDI5ODNmOWQxZjU5NWNiMWU0IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc1MyA4ZGMwOTE4YWUyYzJmZmNlN2NhYTRlYTBkMjNhYzZmNDJlYTAxNmFlIGxlZ2FjeS10cnVuaworMTQ3NTQgZjk1NWZiZDUxM2VlNGY2ZDRhNmM5ODY2OGUzNDhhMjdhZTAxYTgyOSBsZWdhY3ktdHJ1bmsKKzE0NzU1IDU1NmMyN2IzYWI2ZWJmNTZkMzM3ODI0NGM4MzcwNGE0NjIyZTJlODYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzU2IGM4ZTAwMTBjMTJlZjMxZWRjYmUzMjkyZGY2NmU2M2QyM2FkZmM3MGEgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzU3IDg3YWVlNGVmMjlmNTI4NmFjNmFjODMwMDRhMjRhNGI3YWY5YmIzMGYgcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzU4IDMyNTkzODMwMGE3ODQxNWM2MWI3Yjg0M2NiMTVlNDhjM2JiMzAyYzggcmVsZWFzZTE1MnAxLXBhdGNoZXMKKzE0NzU5IDZlN2VjOWEwMGNjZTVjYjA5ZDhkNjU3YTkxNjhkMGI5Y2M3OWZlZTEgbGVnYWN5LXRydW5rCisxNDc2MCAzNjkwYzg3YTliYzY2NGM2NTM0YzMzNjkwNTk0MDg4MmY4YTAwMjI5IGxlZ2FjeS10cnVuaworMTQ3NjEgYWZhYjdiZDcyYzQ3OTVkNDg1NWVhYjNlMzk4NDgyMzY0ZTUxMzFkZCBsZWdhY3ktdHJ1bmsKKzE0NzYyIGEwNWQ4MzM4ZmFjNTczNzQxZWEwYmQzOWU4YTdiY2JhYWYzMjkzYTcgbGVnYWN5LXRydW5rCisxNDc2MyA5Y2FjZDExNjY5ODYyM2NmZGFkOTAzMDkwMTY2MjM5NmNjNjk4NDBjIGxlZ2FjeS10cnVuaworMTQ3NjQgODU2ZGFkZjU2Y2Q5N2IyOGYwM2E4ZjMyYzRiNzJiYjNiMDY2OGRjNCBsZWdhY3ktdHJ1bmsKKzE0NzY1IDIzZmNlOWI5ZjNiYzkzMTdjYzI4MmRhNTY0ZGY5YWY5Y2U3NmIwNjggbGVnYWN5LXRydW5rCisxNDc2NiA2ZjBkMWUzMzQ2Zjk1YTcwMWM4ODBjN2ViNTViNmFhM2NkYzI4OTk3IGxlZ2FjeS10cnVuaworMTQ3NjcgOTQwNDE5NWZmM2ZlZmZhY2JlMjYwOTFjMGUxMGUwYTkyNTkzZDE3MyBsZWdhY3ktdHJ1bmsKKzE0NzY4IGQzZTRhNDU2OTI4YmUxZGE0MTRiNmQ0ZTA0MWIyNmE4ZjVlMmYyNGUgbGVnYWN5LXRydW5rCisxNDc2OSAxOTU2ZWMwNzY3OGU4NmYwNWVhMWRjNDJjODMzMWE4N2I4ZjMxMTFiIGxlZ2FjeS10cnVuaworMTQ3NzAgNzQwZWMwOGU2ZWMxYzU5MjdmNjNlNTFjZGFmNGRiMTNiOTk3YzMzNCBsZWdhY3ktdHJ1bmsKKzE0NzcxIDQxYTcyNWMxMjU1MWY2MWI0YjI4Y2YzNDFlNTAxN2UzM2IzNDFiZGYgbGVnYWN5LXRydW5rCisxNDc3MiBkNmJjM2JkNTI0MjRlNmExYmNhNjFhOTlmZDBjODZkNGVhY2RhN2RjIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc3MyBlMTIwNDE3MzIzMDQwOTM1ODllM2RlN2ZmNDAyMzg0NDRkYTFiYjA4IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc3NCBhNGE3ODVhMDEzNjBhZWFlMTlhYzQxODM5NzRkZWQ2NWFjMmZmNjcxIHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc3NSAwMWE2MGI5M2MyZjUwMGYzNTczMDZiMzlmYTlmMGVlOTU2ODdlYjY2IHJlbGVhc2UxNTJwMS1wYXRjaGVzCisxNDc3NiAwMTljMzQyODBmYzIxZjNiNzI5ZmU5MzlhYjU1ODdhZjRmZDMyZDUwIGxlZ2FjeS10cnVuaworMTQ3NzcgYTlhMWU1OTFlYjNhMWIxZWEwNTgwMTQ4NWI2MWNkYTM5YmQ0ZjRlMSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NzggODFjMjNiMzg3YmIwODQ4YjBmNWVhZWRiYWQ5YjQ5ODZkYTFmOGQ5NiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3NzkgMmUyMWFkMWM2MGZmODY2MzAxMzg2NDBmNWE0YjcwMDM0YWVlNDc5NCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODAgYWY0Nzc4YTEzMDU1NjkxN2RiYWFkZTNmYTQyMTYzMTViYzM5N2JmOSByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODEgNjM3NGM2NjY5MTQ3OGU2NzJhZTlkNWY1YmEyNjg0NzFmY2Q3YzIyMiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODIgNDJjYmVhNjc3N2I3ZWU5ZmFjYTZiY2Y3NzZiNWZiYWQwNzFlNTg1YiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODMgY2FlNTZmN2U4MGZmZWU3M2E4NGI2MTc3ZDJhNzBiNDViY2Y2YWMwNiByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODQgZDhiMjJhNzgxOTA1YzE5MTE0ZTEwMWMzOGUzODYwMGQwMjMwM2Q3ZCByZWxlYXNlMTUycDEtcGF0Y2hlcworMTQ3ODYgNWNhY2NhY2UxZGNmODg0MmQ0YzQ1ODZlZjllYzBlOTUwZjY3MmEzNiBsZWdhY3ktdHJ1bmsKKzE0Nzg3IDE3OGM2ZWZhZWQ4YmFlMzFiM2Q1M2VlYWFmZDM3MDdjODE1ZmVlNTMgbGVnYWN5LXRydW5rCisxNDc4OCAxNDA5MmFiYjhiYjRiZTU0N2M4NGFlOTE0Y2VhNTUxNDQ4YWQwNDM2IGxlZ2FjeS10cnVuaworMTQ3ODkgYjJkNDRiYjc2MWQ0YjVhMTRkY2VkZjQ3ZmI5Njk2ZDg1ZGYyZTg1NyBsZWdhY3ktdHJ1bmsKKzE0NzkwIGEzODRiMGY2OTUxMmY2ZGRlZTYyMzVjZGNkY2Y0ZmFiMmU2Mjk2NGYgbGVnYWN5LXRydW5rCisxNDc5MSBmYTEyYTU2MzM2OGQ1MmYyYTcyN2Q4ODcyYmY5ZDlmMWI4ZTNhZTYwIGxlZ2FjeS10cnVuaworMTQ3OTIgZjg3YjU2ZWViYWNjNzJjM2VhYWE0OTFmNzFkMmUzZTQ5YzE0MThlNCBsZWdhY3ktdHJ1bmsKKzE0NzkzIGRkYTM3OTRjOWNkOTA0OWJhZTU3NGVjZWE5ODJjMjY2MmJkYjM1MDMgbGVnYWN5LXRydW5rCisxNDc5NCBiOTA4ODBjMGU1ZWIyMjVjMThmMDA3MjMxMjA0ZDY5NGFkMDkwM2JhIGxlZ2FjeS10cnVuaworMTQ3OTUgZDg5NTU2YzA0ZWY5OWRiYzlmYTZiMzhiNzg2YjFmODA4NDIyMmJjNCBsZWdhY3ktdHJ1bmsKKzE0Nzk2IDVkMzE2NWUzMGJjZTYzMTNjNDU4M2IxZjQ0ZDUxMDhmYzAzMjFiZTQgbGVnYWN5LXRydW5rCisxNDc5NyA4OGIwYjMyMTA4Y2ZhMmQ0ZTM0ODM0ZjllYjMyMDJjNjhkMTM2OWM3IGxlZ2FjeS10cnVuaworMTQ3OTggMjNhMWM1MjZjNmYwMmM1YmRiMDU2ZWM2ZWRmOTdhOTYwNzk0YTZkNiBsZWdhY3ktdHJ1bmsKKzE0Nzk5IDVkNDVjZmExYmM5MTM4OWE4NmUzZDRjOGY5ZDA2NzA2YzVjMzczZTMgbGVnYWN5LXRydW5rCisxNDgwMCAxZTVjZDcwY2VlMTA3NTZiODg4YTc1NjRkMjAxZWY2YzJkOGI3Nzk2IGxlZ2FjeS10cnVuaworMTQ4MDEgNDJkOGQ3NmRhZTZkMmM1ZDViYzEwOGIzMjJiMTE2NWQ2NzEyOThiOSBsZWdhY3ktdHJ1bmsKKzE0ODAyIGM2Y2IwZDI2NjgzOTMwMmI4YzljNzVlOGE5MWMwYzYzMTVjZmUzOGIgbGVnYWN5LXRydW5rCisxNDgwMyBkZTI5NmE3OGFiZmRjNGU1MDJkYTM2NTdmYmZmMmJkNWEyZGM1YzJjIGxlZ2FjeS10cnVuaworMTQ4MDQgNzc5NTU3M2VjMzU4MWM1MTgxOTU3Mzc3ZThkYzM5YTA3N2Q5ZDg5ZCBsZWdhY3ktdHJ1bmsKKzE0ODA1IDA0OWYwMGJmYjljZWYzNDAyODg2ZTU2OTBhMTcwNDdjYTE0NTg3M2EgbGVnYWN5LXRydW5rCisxNDgwNiBjNDNiMzgwNzkyMjhmMzk5MTU1ODk4NzViMThhMzRiNTAxYzczOTI4IGxlZ2FjeS10cnVuaworMTQ4MDcgY2E4ODgwY2YzNjc0Y2EwZjgyNjM1MGRhYzRjY2Y3ZWFlMzU1OWE1MiBsZWdhY3ktdHJ1bmsKKzE0ODA4IGRiMDNhMjljZjE2YjVjMjJjYmNlNGQxNTVjMzgxMzc4OGZkNjljOGMgbGVnYWN5LXRydW5rCisxNDgwOSBiOTgxYTdhOWI3MzhlOWMxOTM1YjAzYTkxNTI1NTZiZmQwYzIwN2QwIGxlZ2FjeS10cnVuaworMTQ4MTAgODZjZmZlNTBmYjE3MmMwMjUzZDBiMTQwOTg4ZTcwNGNlYjQ5YmJmOSBsZWdhY3ktdHJ1bmsKKzE0ODExIGJjYWIxODlkZGY4NmJkZWNjNjU2MmY1ZjFkMzAxNTBjMGNiYmQ3NTEgbGVnYWN5LXRydW5rCisxNDgxMiBlMjQzNTE5MjZlMTNlYTYwNzUzZDAxYTg2MjdkYTY4ZjBmZjYxOThjIGxlZ2FjeS10cnVuaworMTQ4MTMgMzMyMzEwZmUzZDNhZjM3Mjc0ZTg2OWY1MGVlYWYyOTA2NjA0OTFmMCBsZWdhY3ktdHJ1bmsKKzE0ODE0IGExYmZjOGQ0ZmMwMDZjODE4MDg1OWY5NjI4MmZlYjFhZTc4Yzg1MjQgbGVnYWN5LXRydW5rCisxNDgxNSA5NzUwYWY1ZTcxYjAxMzlhZWNjMGQ0YWNmZDE0ZDY2NjMxMjZjYjZlIGxlZ2FjeS10cnVuaworMTQ4MTYgNjdkNDEyOGRhMjU0M2ExYjQwYTQ0OTUyNTRhYmFhNDA5Mjk3NDc4ZSBsZWdhY3ktdHJ1bmsKKzE0ODE3IGU0OTQzZWJiNWY3ZDIyNTExMDA3ZjllODBkNTI3ZWQwZjI5YzJjYmIgbGVnYWN5LXRydW5rCisxNDgxOCA2NWYzNWI3M2UzNTA1NGQ5NWFmZWFhYmQyODk3MGRkMzg2OTg1NDI2IGxlZ2FjeS10cnVuaworMTQ4MTkgOWVkZWRlNjUxZmIxYTQ4ZTcwY2IwODgwY2EyODI1ZWRmNWY5M2Q4NiBsZWdhY3ktdHJ1bmsKKzE0ODIwIDRhNjFjYzgxZjM2NzM1ZDE2MzU2MTZkODVlYzMzMTNhZWQxOTE1OGYgbGVnYWN5LXRydW5rCisxNDgyMSBmZDJiMDZjNmZmNTNiNzIzNzczMDFjMDNhNGQ1ODcyOTQyYTgwYmZjIGxlZ2FjeS10cnVuaworMTQ4MjIgODk3Y2YwZTVhNDM0YTYwZDE3YTJiYWY0MWNlN2Y1MzU5MmRkZDAxOSBsZWdhY3ktdHJ1bmsKKzE0ODIzIDgzOGRjMzgwZTQ2NzdlZTg4NTcwYTA1YzBhNmM3NzM0NDc4MmJlZTMgbGVnYWN5LXRydW5rCisxNDgyNCA0NGI5NDJmN2ZlYjc2NmViM2U1YmRkNDgzOTBiMmY0Yjc5YTZmZDNmIGxlZ2FjeS10cnVuaworMTQ4MjUgZGM4YWE5NTFkZWY4MDQ1YzEzOGJmMDU5OTYxZGI1ZDRhNDIyOTBmZCBsZWdhY3ktdHJ1bmsKKzE0ODI2IDYwM2RiMGQwYWVkMTQzNDVjOTAwMDQ0YmFkOWU2NWYxYjZjMzMyZTQgbGVnYWN5LXRydW5rCisxNDgyNyA3ZTAwNjM0MmU3OTA3YzY5OTU4YTBlYzQ1ZmIwN2FiZjI0M2FkNmRlIGxlZ2FjeS10cnVuaworMTQ4MjggYTZlNTIyY2I1OTE4NGE1YzBhZjMyNTFmYTExMWI2YTAzYmIwZjM5NSBsZWdhY3ktdHJ1bmsKKzE0ODI5IDI1YjYzMzY3Mzg1ZWIwNjUzYWIyYmMyODRmMjlmMDA2MzE1YWQyOGEgbGVnYWN5LXRydW5rCisxNDgzMCA5NmVhMWE4MDBiMjM5M2M5NjdiYjVmM2M4MmI3YzllMzg4YWVkM2FmIGxlZ2FjeS10cnVuaworMTQ4MzEgZTJkYjg5YTk4Y2IyZjQ5YjQyYzlmMTU3MDE4ZTcwNWRlNTEzYjI1ZiBsZWdhY3ktdHJ1bmsKKzE0ODMyIDM3ODliNjQzZmU4OTgxMjkwYzM1MjA2NDYzMWUyYTY0NDFlYmNhODYgbGVnYWN5LXRydW5rCisxNDgzMyBiYjkwMDQ0OTIwMzA1MzhiZDYxMWZiZDRlZjJiNDYxN2NlMjRkOWEyIGxlZ2FjeS10cnVuaworMTQ4MzQgOTg3N2U5NzgxNzBlYTc1YjI2NjA3MTRkMWNlNWFiMmY4OTE4ZTZiZiBsZWdhY3ktdHJ1bmsKKzE0ODM1IGFlMDY1ZGRiYTBmMTQ2N2NhMjM3M2M0MWJhNDc0NDQ2MDI1ZWM5MDIgbGVnYWN5LXRydW5rCisxNDgzNiAyYTYwZDZmODM0ZmZiNDEyMDIwNzA4NzBhMWE0YTdjZDIyZTc3MGRiIGxlZ2FjeS10cnVuaworMTQ4MzcgZTA5ZDc0MTRkM2VjZjgxNjU3ZjZiZTMyYzIxODc0OWJhM2IzMWRhNCBsZWdhY3ktdHJ1bmsKKzE0ODM4IDhkMWM2OWJkYzRmMmMyYzk1YzE0YjJkMmM4ZWUwMzhkMDQ4MWQ0NGQgbGVnYWN5LXRydW5rCisxNDgzOSA0Mzg3NjA2YTEyODFiNWEwZjlmMzc3ZjlhMGM4YWVlNGZmOWMzZGZiIGxlZ2FjeS10cnVuaworMTQ4NDAgYzBlNGE5MGRjNGZmOWY3Njg4YmJmNGFlYzVkYTdhMGI1YWY0MWUxYyBsZWdhY3ktdHJ1bmsKKzE0ODQxIDdhNTE1ZmMxMGMxZDc3YzM5MjYyODEyMWQ5MjQ4MzM1Mzk3ODMyZmMgbGVnYWN5LXRydW5rCisxNDg0MiA4ODEyNTdkMWU4NTQ0YmY4YWQ1MTVhZTMyZWU5OGIyNWNlODM3NTExIGxlZ2FjeS10cnVuaworMTQ4NDMgNDBhMjY4OWRhZjM3NzY2YzIxZDdmNWZmMmU2NGQ1NTNlNmYyOTkzNyBsZWdhY3ktdHJ1bmsKKzE0ODQ0IDQxY2JkMjk4ZmZjNmMxZDJiNjYyYjhlNTc5ZWNiOTQwMzBmNjhjODIgbGVnYWN5LXRydW5rCisxNDg0NSBmMGUwMmFkYjkxZWJhMTliMzdmNTM1OWZlZjQ2N2U5ZjA5NDRkZDI4IGxlZ2FjeS10cnVuaworMTQ4NDYgZTgxYjEzOWFiOGE0OTU5ZmVhZGIzYTY5MjM5MTZiNzI3ZWM2ZjUwNCBsZWdhY3ktdHJ1bmsKKzE0ODQ3IGQ3MzFjZWY4MTJiMzVlNjE0ZDI2Mzg1MzM3YjQ4OGU0OWVlNDBlM2QgbGVnYWN5LXRydW5rCisxNDg0OCBlOTg3NzBkZTMxNDcyZDM2N2E4ODI4MjBlMzFlNDdiYmEwYzkzMWU2IGxlZ2FjeS10cnVuaworMTQ4NDkgNjZmMTRmZmU4ZWI3MTZmOTZlOGE0ODVkOTZiMWFmZjI2NDcyN2JiZSBsZWdhY3ktdHJ1bmsKKzE0ODUwIDJhOTEwYTc3NTc5YTRkODMyZjZkOWFiODliMWNjMjFkNTQ0MTFkMjggbGVnYWN5LXRydW5rCisxNDg1MSAzMjQwN2MwOGNhZjRkMzU4OWVhZWZmZDIwNWM5MmIyMTEwMzQyODkwIGxlZ2FjeS10cnVuaworMTQ4NTIgNmZkNDM4NjdhYTRmYjA3ZjlmZmViMTM3N2E5ZjNiNDIyMDE2ZTU0ZiBsZWdhY3ktdHJ1bmsKKzE0ODUzIGY3YTBkMjlmYjhiODFlMTQ0NTAyOWMxM2IyNmRjMmZjZDJmMTYxOTMgbGVnYWN5LXRydW5rCisxNDg1NCA5MmVjNzhlMjE3ZDI5YWY4OTkwNGQzZjczNGFjMTJjY2FjNjBjODYzIGxlZ2FjeS10cnVuaworMTQ4NTUgZTJiMDJkNDBhMTQyNWMzYzg1ODJmNjYxOGRmMDk3NjZhY2U5ZTM2YiBsZWdhY3ktdHJ1bmsKKzE0ODU2IGRmZTNiYWYwYWVjZGNlNDgwNDk1YWI5YzdhNTY1N2RlMDBkNGNhYTIgbGVnYWN5LXRydW5rCisxNDg1NyAyZjJmMmIxY2U1NjhkNjFlMWQ2ODcyYTc0ZjA4NGVkNjkyNjQyOGQyIGxlZ2FjeS10cnVuaworMTQ4NTggMjcyMWM3Y2MwYjI3MTVmM2QxYzUxZWI5NTg3NDQ4OTMwOWJhMmI3MCBsZWdhY3ktdHJ1bmsKKzE0ODU5IDYzMzM2ZjIwN2Q1MTI4ZDU1ZDM4ZWVmOGZkNjdiOTAwM2QwZTUyNjkgbGVnYWN5LXRydW5rCisxNDg2MCBlNmFiM2M2MDNmZjkxM2JhNjE3ZWFiNjIxOTU2NjY5ZWE0MzlmZDk3IGxlZ2FjeS10cnVuaworMTQ4NjEgNWYyMjM5NDA2ZGQyMGQzNzQ0OTljYjBlZTI0Y2ViZTYxOTgwNTFiNyBsZWdhY3ktdHJ1bmsKKzE0ODYyIDMwYTQ5ZDE1ZGE5NzVjMjYzN2VlOWMyZDNlNWQ5ZDNmN2UwNzI3NDIgbGVnYWN5LXRydW5rCisxNDg2MyAwNjk5YTdkZmQ3MzdjMjM1MTM5NGVkZDNmZmZmMTM4ZjZiNjgxYTQzIGxlZ2FjeS10cnVuaworMTQ4NjQgZWM1OGI1MDNiNjcwMGM1ZmQ2YjUwNThkNTFkZDAyZjY1NDg3OWExOCBsZWdhY3ktdHJ1bmsKKzE0ODY1IDA3MjdmZjM5ZTY0ZmI5MjY0N2UyZmRkYmQ1YzVmOGNmYjIwOTllMTUgbGVnYWN5LXRydW5rCisxNDg2NiAzZDc4NWMyY2RhODgxNWRiYTY3MzIxZDg3NjM0MTU1NDU4MDE2M2FlIGxlZ2FjeS10cnVuaworMTQ4NjcgYTBlZjhmYTRiMjQ4OGI0MzhkYWVhMTVkZDM1MjU3OTdjNDY3MWM4YyBsZWdhY3ktdHJ1bmsKKzE0ODY4IGVjMzYwYjRlOGY2NmZlN2ViYWQxNjAwN2ZhMzAzYzRiY2M2NGIzMjcgbGVnYWN5LXRydW5rCisxNDg2OSBlMmIzMjgzYzVkYjBhNGQ2ODIwMTliMjk0ZjlmOGFkNDM5MGU4N2U4IGxlZ2FjeS10cnVuaworMTQ4NzAgZTYyMTRhZDJhNjBjYjA3YjFkZDk0OTg4YzY4MjEyN2MwZDkwMjIzZSBsZWdhY3ktdHJ1bmsKKzE0ODcxIGIzYTRlNDUxYzA2Yzg2YTBiMDJmNmQ5NTA4MDdkMjJjNzc1ZDlmNjAgbGVnYWN5LXRydW5rCisxNDg3MiBiNWZjYjUzOTY5OTk0N2NlYjQ3NTM5Yjc3NmRiNGQwNzVlNGM3MjU1IGxlZ2FjeS10cnVuaworMTQ4NzMgMmNkOWM0MzZiZDQyYjM3OWFmMTdhZDRkNWUyMjk0YTVmYzFlYTY5ZCBsZWdhY3ktdHJ1bmsKKzE0ODc0IDEwMzhlNTg2MTA3OThlNGM4MDY3NDIwZGRjMzViYjViZmE2NjdmYTYgbGVnYWN5LXRydW5rCisxNDg3NSBiNDBmNjc5YjEwN2NlNTU4MjljNmI2YWY2YTk0OWIwNzEwNjk5M2FmIGxlZ2FjeS10cnVuaworMTQ4NzYgMWI2OGQwYWQ3ODM1NmMwZmEyMGRkNzQzM2EyOTBiMzI0ZWE1OGYzZCBsZWdhY3ktdHJ1bmsKKzE0ODc3IDcxMTM0MGQ0NDc3NzYzOTE0OTYwODAxNDljZWIyZTliY2UwMTdmMDkgbGVnYWN5LXRydW5rCisxNDg3OCBjMTYwNzQ5YWNmZjg1NzFiNWFjMmM0MTVlYjFlNjJhZGMzYWQ3ZjJlIGxlZ2FjeS10cnVuaworMTQ4NzkgNjY3ODc4Nzc2OTMzNmEzNWZiMTg5MDliODJiNjc4N2EzNDUxNDM5MSBsZWdhY3ktdHJ1bmsKKzE0ODgwIDliOWFiZGUwMzJiMzI0NTUxMThlY2QxNGM0ZTgxYzMxZDdhOTg2ZTEgbGVnYWN5LXRydW5rCisxNDg4MSA1YjU1ODFhZjk1MWM1ZDRkYTgwYzhmYTExOTIyOTM2NmNlYjE4NmY3IGxlZ2FjeS10cnVuaworMTQ4ODIgNTcyMGQxYzE4ZjRkMTMxNWUxYjVlOTA0NmQyZmM1NDgwYjdmMTYyYyBsZWdhY3ktdHJ1bmsKKzE0ODgzIDMzOGUwNTViN2NjMDljODAzOTM5MmI5YjgxNTZkYzVmZTU2OGY1NTQgbGVnYWN5LXRydW5rCisxNDg4NCBkYWRlODJiOWVlMTljZTBmMDg4OWViOWJlYmY5MDA5OGFhNDhhYTIwIGxlZ2FjeS10cnVuaworMTQ4ODUgNGEzZmQyYzEzNzJmMjI4MWUxODM1Zjc0MWNjYWQ3ZTI0ZjAxNTcwOSBsZWdhY3ktdHJ1bmsKKzE0ODg2IDQzYzM2ZjYzZjg2N2M5MzkyMDE1MzJiMjcyYTdmMzkzZWNlMTdmYmQgbGVnYWN5LXRydW5rCisxNDg4NyA5OTlmYzNlZWRhOTlhOTliOGI5NTRiNmJhODQxZGQ4NTEwNmM1MGIxIGxlZ2FjeS10cnVuaworMTQ4ODggNGNhYzM3NjQ4YTdmOTg2MDI0YjUwMmNhNTkzMTVhMGQ3MTU2YmJmYSBsZWdhY3ktdHJ1bmsKKzE0ODg5IDQ5ZTAyN2I0ODYyN2YwNTFiZmQyNzVlNTE1NThkNGM1MzAzNDg2ZTAgbGVnYWN5LXRydW5rCisxNDg5MCBlOGMzMGU2OTY2NmIwZTQyYThiMjc0MWU4NmRjNjA4Mjk0ODVlMjRjIGxlZ2FjeS10cnVuaworMTQ4OTEgMTRlOTNkODlkMzRlYmQxYTVjNzkwMmRiOTg2YmE1MDEzMzRlZmE3NiBsZWdhY3ktdHJ1bmsKKzE0ODkyIDgwNDQzM2YwMTEyYzliODBiMmZmZmI5OTRiNDlkY2VjMzc3ZDdmOTUgbGVnYWN5LXRydW5rCisxNDg5MyAwYWM1NzdlYjgyODJmMDdhYmM0Mjk2NDBlZmJhZThiOTRiZWFmMmIzIGxlZ2FjeS10cnVuaworMTQ4OTQgODFlNWY4MDAwMDk0NGZjNzU0ZTQ1MjQ1MzkzMjRmMTNiNGFiNzYyMiBsZWdhY3ktdHJ1bmsKKzE0ODk1IGNhOTM4ZjM4ZDA4N2RmYjFmMzczOWFlNTc4NDM4NDMxOGE3ZjNkNjUgbGVnYWN5LXRydW5rCisxNDg5NiAyMWE5YmJiNTcyZDczN2I5YTBmODM5MGQzMTNkYWVmMjFhMzE5ZjkwIGxlZ2FjeS10cnVuaworMTQ4OTcgODMwZGQ1ODFlOTM0ZjZjN2I1MTMwYmQ1YmZmZTViN2UwOTFjYWMzYyBsZWdhY3ktdHJ1bmsKKzE0ODk4IDc4ZTM2ZTA2ZTUzNjlkMjBlMjkwNjdiYTg3YmQ0Y2ZmYzEzZWYxYzEgbGVnYWN5LXRydW5rCisxNDg5OSBmZWQ4OWI1NzYzN2E2ZTQyZjAyMTdiZWE1MWI1NzMwYWFkZTU3NmFhIGxlZ2FjeS10cnVuaworMTQ5MDAgZGI1YzAzZmE4YzczZjU1ZDk2NzQzODFlZjhjN2YyNzRjZTdiODFjNyBsZWdhY3ktdHJ1bmsKKzE0OTAxIGJlMmYwMDNkNDdjYzZmMWUxM2Q0MzU5NGZjZTYwNjUzODhjMjVhMGQgbGVnYWN5LXRydW5rCisxNDkwMiA5ZTdhYmIyOGU5MmExNzEyOTQzZTU3ZDFjOGIzYzRlY2Y1YjAwZTRlIGxlZ2FjeS10cnVuaworMTQ5MDMgNzVhZGQ5NjQ0ZmYzNGEyOWYyYzA5OTQxNGJkNjljNzkxODBlNjMyZCBsZWdhY3ktdHJ1bmsKKzE0OTA0IDUyMmVlYWU2YzA2NjMyZTJhOTMxZDMzZjA5ZWE2ZjkwMWEzODQwYzAgbGVnYWN5LXRydW5rCisxNDkwNSAyMzZhYzFlYjE4OGUzZDI2OWZiZmFiN2IzZWZjZjkwYjI2N2FmYWJiIGxlZ2FjeS10cnVuaworMTQ5MDYgOThiMDljNDBkOTdjYzlkOGNhOWFmYTU0ZjFjZmU3MzllYmExN2JlZiBsZWdhY3ktdHJ1bmsKKzE0OTA3IGZlYjlhZjc1MjdhNTdmNWFkZTI1NWUwYTRkZGI1MjQyYTBmMDYyZDQgbGVnYWN5LXRydW5rCisxNDkwOCA0MjM4N2FkZTZhZmJlNTJlMzk4YWNhY2Y1ODk0NjczOTI3NDg1M2IzIGxlZ2FjeS10cnVuaworMTQ5MDkgMzU2YjhlODlmOGUzMDY0NWEzMDBlN2QzODA0N2FmMjhiMGQ5YjhlZSBsZWdhY3ktdHJ1bmsKKzE0OTEwIGM4OGM4YTg1Mjc0NDA1YjQwMmZmNjEwM2UxMzUxNjBhNGEwYTc4MDYgbGVnYWN5LXRydW5rCisxNDkxMSA2ZTY4YzdkZGNkYjU3ZjZmYTgyYzBiYjUxYWUzOGQ0YjJkYjE1YjI0IGxlZ2FjeS10cnVuaworMTQ5MTIgYTJmYmMwZmY3YzJlMDcyZTNkYzM3OTdlNjNkZWZiNmNkYTBhNzRmMiBsZWdhY3ktdHJ1bmsKKzE0OTEzIGZmNmMxYTgyYzMyMmFjYzQ1ZjA1MTNjNjQ2OGE4ZWFlNTdlNjM4ZGEgbGVnYWN5LXRydW5rCisxNDkxNCBmNDA3ZmFiMjczNTg5YTMzZGUyMjJkYzZmYTM1MTRmZDdlOThjN2Q0IGxlZ2FjeS10cnVuaworMTQ5MTUgMjY1M2ZkNTE2ZDRlMmVlMjAxN2ZiN2M1Zjc1YzFhYTRmM2E1NmUwNSBsZWdhY3ktdHJ1bmsKKzE0OTE2IGI3MzAzZjJmZjYxM2EzYTQxYTZiZjBjMGM3MjAzOGY4M2E2YWIzN2MgbGVnYWN5LXRydW5rCisxNDkxNyAwZDNkZTRjMTNjYjcyNGNiZjBlZmI4ZGIzZjNkM2Q2ZTc3ODNkZjZiIGxlZ2FjeS10cnVuaworMTQ5MTggMjc0NWRhZTg3MDVmMTk0MmQ0NDQ4MjMyODdhNjExZjY4ZWJiMTNjZCBsZWdhY3ktdHJ1bmsKKzE0OTE5IDAxNTVhM2IxM2JmMGUwYzliODY5NjU5NzFlYmZiMDAyYjFiZWEwMTAgbGVnYWN5LXRydW5rCisxNDkyMCBkYjgzZTYzYjM4NGI2ZGM3MmYwZmQ1MGY3ZjJlMzdjM2Y1NjBlNjgzIGxlZ2FjeS10cnVuaworMTQ5MjEgZjAzZTJhODE4OGFhMDdjZjVjMDdjY2MxZTAxMTgzMTk1ODc1NjU1ZiBsZWdhY3ktdHJ1bmsKKzE0OTIyIDc3MTkzZThlMDEzNzE5MmVhYjUzOTg0NWNmZjA3MzMxNjY0MjdmYzQgbGVnYWN5LXRydW5rCisxNDkyMyBlNzg5ZTJiZjA1YjNlZWUxYmZjMzdjYThiOTkzOGRkMWJlZGQ0ZDY4IGxlZ2FjeS10cnVuaworMTQ5MjQgYzI5Y2RkZThlYmQ4MDMwODg4Zjg5YTg0ODE5YWIyMDk5YTVmYjNkNiBsZWdhY3ktdHJ1bmsKKzE0OTI1IGI1OGFlZDcxY2Q2M2YzNzdiZjdjNDk0MjM2MDUzYzY5NDk0MmRhNGIgbGVnYWN5LXRydW5rCisxNDkyNiBjODg4NzkyZGU2YTc3MDg4MGE2N2M1MmI5OWQ1YTQ0YWFhNzk1N2ZlIGxlZ2FjeS10cnVuaworMTQ5MjcgMjQyNDU4NTAzYjEzMTFiNWQ2OGM3ODE2NmZmNGU5MjMzNWJjOWY3NSBsZWdhY3ktdHJ1bmsKKzE0OTI4IGY1YTFlOTU0NGM1ZGU2ZWU3NDM1MjQ5OTI2YjcyMzJiOTk3YzQ4OGYgbGVnYWN5LXRydW5rCisxNDkyOSA4MzI1N2YzMzk0YWUzMTBjOWNhZmFhZDAwYTExMGZlNmU1ZTY4NGJjIGxlZ2FjeS10cnVuaworMTQ5MzAgMTcxOWU0MWUyMzMwMzFlZDdhMWYzMWI3ZDcwNGEyNTcwMmFlZmQwNiBsZWdhY3ktdHJ1bmsKKzE0OTMxIDM5YjkxY2I4MGI0MWMxYWJhNDg0NDJmYjIwNDMwZDk5OTJmYmQ3ZTQgbGVnYWN5LXRydW5rCisxNDkzMiBjZGY2OGNlNTg2YzQzOWVjNTUzNzIxMWNiOGVlZTk2ZDI5MjkyNDM0IGxlZ2FjeS10cnVuaworMTQ5MzMgMTUxYjkxM2U3NGExMzc2MjY3OTU0MjExYTMwZjIzZDhhOGFiYjZmNCBsZWdhY3ktdHJ1bmsKKzE0OTM0IDk0YjYwMWZhZWJhY2VhZjJjNGViODBiNTc1OTY1ZWZlMTlhZjc4NmUgbGVnYWN5LXRydW5rCisxNDkzNSBlNzVhYzI5MmVmNGMxZmFhODVmMThiMzg3NWU5NGNmZTM3ZjZiMGUwIGxlZ2FjeS10cnVuaworMTQ5MzYgZjA5ZTlkNjU2YTExNTRlYmRlOWFjOGNlZjU5YzlmNTY3YTIxNmUwMSBsZWdhY3ktdHJ1bmsKKzE0OTM3IGMzZmMyYjQ2MTdmY2Q5NmUyNzk5YWQ4MWRjY2RmYTU4ODBmZGNkZWMgbGVnYWN5LXRydW5rCisxNDkzOCA0ZGQ4YjZhM2I5YzVkZGE4YjRhMzU5OGM1YzQ2M2FhMTZlM2YwOTI0IGxlZ2FjeS10cnVuaworMTQ5MzkgYmM4NjFhZGQ1ZDcxMmExODM1YmJmNmNkZDhiZDAxNzkzY2QzNDI3OSBsZWdhY3ktdHJ1bmsKKzE0OTQwIDZkMTA4ZDUwOTM0NmE4OTIwNGRmM2I5ODgzMWI2YWY2YmEwYWUyYmMgbGVnYWN5LXRydW5rCisxNDk0MSA3ZjE4Zjk3OWE5M2FmYTNjY2RmN2FkNDcwMTNjY2U5OGUyNzIzM2RjIGxlZ2FjeS10cnVuaworMTQ5NDIgNDc2M2EzZDU5YWI5YTI1NTgyMDM3NDNlODU0ODYyMDM1OGRmZDE5OCBsZWdhY3ktdHJ1bmsKKzE0OTQzIGYyOGU5MmRiYjllOGUxNGQ4YjY0MDgwZjQ2ODMwZWM1NjRiOTI5NGEgbGVnYWN5LXRydW5rCisxNDk0NCA0MmYyMWU0N2I0ODYwNzA3MmU5ZmM3NzdkNmI0ODViNWEwZTA5NGQyIGxlZ2FjeS10cnVuaworMTQ5NDUgNDFkZmM3ZDRhMzZiMjI2ZmJmNTIzYjIzNzJkZWZiNTgzYTY0ODM5YiBsZWdhY3ktdHJ1bmsKKzE0OTQ2IDZmZjdmNzZhNmYyZTU4MmUxMGY5YjlkZGExYjhkMzY2NDhmYjNiMzUgbGVnYWN5LXRydW5rCisxNDk0NyBmZTNjYjczNDFiNzA4NDJiNGFmNTEyY2ExMzUyMzQ3ZmY4NjBkNDliIGxlZ2FjeS10cnVuaworMTQ5NDggZjgzZTQwOGFlYjA1ZGYxMjkxZTdkNDYwNzZkODFjNjMyNWQwODg3OCBsZWdhY3ktdHJ1bmsKKzE0OTQ5IDI1M2NkZWVhZjQyZWY2ZTg3ZGQxNzVhNjc5NTlmM2RmNTVlMzk2OWIgbGVnYWN5LXRydW5rCisxNDk0OSA2MDVlYjkzMjZmZmUxZmQxZTQzZjQwZTIzMzhkNjY1MmFiNDQ5ZmRmIGxlZ2FjeS10cnVuaworMTQ5NTEgM2UzZDE1MmE4NTU0NzA0MGYzZmE4NTNiNjM5NTM4NGJjZDkwY2Q3MiBsZWdhY3ktdHJ1bmsKKzE0OTUyIGI3M2M5ZjhjNTM3YzFhZWQxNTNhYWMzZjZhNzI5MDhkZTM1NDZhNjggbGVnYWN5LXRydW5rCisxNDk1MyAwOTA5ZjU2MjNkNGZhMmMyYzA1ZWMxYTYzMjgzYjhhZjZlYjRmOWMyIGxlZ2FjeS10cnVuaworMTQ5NTQgMzdkODIyNzJmMGY0NDViZWYwMzQyYTdjMTFmN2JjZjg2NjcyMWZkOCBsZWdhY3ktdHJ1bmsKKzE0OTU1IDRiZjk4Y2MzOGRiNzFhYzYxNWExMmZhZTVkMDgzNzdjZjM3MDIzODQgbGVnYWN5LXRydW5rCisxNDk1NiAyNjNiZWU0ZWYxM2M1OWE0ZTAyOGFhMTk0YmJhZDIyY2Y1MzY1ZDhhIGxlZ2FjeS10cnVuaworMTQ5NTcgMWRjMGI2MzdlYjFiM2E1OTMxNTkxOWI5Yjc0MTZhYWI2M2NjMGQyMiBsZWdhY3ktdHJ1bmsKKzE0OTU4IGEyMTZmZTc5YWUwMGI0MTdiZGQ0YWRmNDdmMWFkNjU2MTk4NDk4OGIgbGVnYWN5LXRydW5rCisxNDk1OSA3NzQ4MTcyODViOGNhMjAzNTU1MGQ0NTgxYjZmMTUxYzkwOGEwOGFiIGxlZ2FjeS10cnVuaworMTQ5NjAgMzNiZmM1MWRlYzA1Y2YzOTQ3NmZjYTU1NGE4MjhkMWM1ZDRhN2Y1OCBsZWdhY3ktdHJ1bmsKKzE0OTYxIDVlYTc3MzQxMzUzMTk4ZTA3YjI1NzEyYmU0ZThhNzA5ZjkyOGExNTkgbGVnYWN5LXRydW5rCisxNDk2MiBmOTdiYjQyZDQzNDQ4NWMxZDY5ZDEzOTM2N2IzNzE0N2E0OTU3NTA4IGxlZ2FjeS10cnVuaworMTQ5NjMgNTMwY2Q5YWZhODBkNTQzYmFiZGUzYWEwOGFhMDgwZjU4MzMxNzg5NyBsZWdhY3ktdHJ1bmsKKzE0OTY0IDVhNjIwMGZmNzdhYWM0NTQ3YzVjMjgzM2JmZmQ5ZjlmOTg0ODA4NzAgbGVnYWN5LXRydW5rCisxNDk2NSAxN2NlNjYzOTY3ZDg0MDhjNTM1ZWUxYzBmNTI1YjgwNTM3NTUzM2I4IGxlZ2FjeS10cnVuaworMTQ5NjYgM2U5YTFjMWE5ZjU2NzYxZTkyZWNjNTA3MjQ0NWE3ODg5MzEyYTczYyBsZWdhY3ktdHJ1bmsKKzE0OTY3IGU4MmU4MmIzYjlhZDU2NWFjOGRmODEzNWE2N2ZhNjExMzU2ZGJlNjcgbGVnYWN5LXRydW5rCisxNDk2OCAyZGMxYmRiNDA4OGVkNmYxOGQ1NmQyNWQ3M2I0NmY2MTk2Yjk1YTk1IGxlZ2FjeS10cnVuaworMTQ5NjkgYzQwNWRiZGQyNmM5ZWM1ZGNiZTBjNzA4ODdiZjJmZDEyNTE0YjFmNyBsZWdhY3ktdHJ1bmsKKzE0OTcwIGZmZDI0MmZlZDBlMmRjOWRjOTg3Mjc4MGMxOTNjZDA2ZDMxOTE1NTEgbGVnYWN5LXRydW5rCisxNDk3MSAyMzY2MGI2NmJjYTMwYzBlNWVlZDg0MDBiNjhmZTRiOTgzYmQzNGI3IGxlZ2FjeS10cnVuaworMTQ5NzIgNzdiMDJlNTNmNjY2MmY0YzQyNmM2Yzg4MGYwZDdjNDkzYmE3ZDFmNCBsZWdhY3ktdHJ1bmsKKzE0OTczIDc4NTljMGE0YWQ5NTQzMGJhYjUyYTgwZmVhMWQxYjdkYTQyZjY4NjcgbGVnYWN5LXRydW5rCisxNDk3NCA3YmY4YjEwY2UyYWI1YzBkM2IzODA3ODhjMThlNjEzNjVhYzE5NzQ3IGxlZ2FjeS10cnVuaworMTQ5NzUgMDc0YzMwZmYzMjA2ZmQ5ZmZkYjc0ZmMzMzlkMmYxNjQxMThhZWQ4YyBsZWdhY3ktdHJ1bmsKKzE0OTc2IDYzMTM1ZTlkZWYyNDFlNmYwYTBhNTk3MzJhMjcxNzUzYjE3OTNjOWQgbGVnYWN5LXRydW5rCisxNDk3NyBkNDkyMzc3NTIwMjk3NmUzZDE0OTcxNWY4YTY4ZTVmZWJjZDdlZTU0IGxlZ2FjeS10cnVuaworMTQ5NzggMTQ1YzAwNzNkNzg1ODFiNGE0OGQ1YWNhNDViMjg3YTdhMzZiYjcyYiBsZWdhY3ktdHJ1bmsKKzE0OTc5IGNlMjZkNWYzZDNjZTdmYTVjOWQ5MjQ3Yjk3ZTM3OWFhMTEyYWRmZDQgbGVnYWN5LXRydW5rCisxNDk4MCA5MjM1YWM3NjE3NmQ0NTIyODU0MzRhMDBiMzU1MGIwNDYxNDMzMTRkIGxlZ2FjeS10cnVuaworMTQ5ODEgMGNkMjJjODRhNGYxNGQ2ZmJjYmY5YTdmNDU0NzI0MWEyY2FhNDEzOCBsZWdhY3ktdHJ1bmsKKzE0OTgyIGRlMGY5M2Q5MGVlNGQxOTU1M2JiZmY4MzM0YTI1YTVhODU5ODAwMzEgbGVnYWN5LXRydW5rCisxNDk4MyAwODM5ODM4MjcyMjQxZWQ3NWE2NDk3ZjNmNTIwNzU4OWJjMDgyMGMzIGxlZ2FjeS10cnVuaworMTQ5ODQgNzI5ZjMxNTI3NjVjYjhmNTZiZGMwYTliYWI1OTc2Y2E5Yjc5MzI1YiBEaXN0dXRpbHNfMF8xXzMtYnJhbmNoCisxNDk4NSAxYjdjNDk0NWM2MWMxODlhNDZhOTU0NmQxY2IxZThmYmU5MzI4MGIwIGxlZ2FjeS10cnVuaworMTQ5ODYgN2ZhMzE3NDg0OWJkYmE3YmQyODg0Y2JkNWU1YmM4YjEyMzM0NzliYiBEaXN0dXRpbHNfMF8xXzMtYnJhbmNoCisxNDk4NyAxOTBhOTI0MmY4M2E4YjAwZDMwMWNkMjA5ODM5YTA0MDk5NmUxOWNhIERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE0OTg4IGEwYTI0ZDNjZmQ5NjExYjZkZWUyYzlmNzExM2UxODM5NTFjMzQ1NGYgRGlzdHV0aWxzXzBfMV8zLWJyYW5jaAorMTQ5ODkgMTc2MDUyNDE2NjNjMTljMDUwZDEzNzUzYTJjY2M3YzI1ZTE0NTRkNyBEaXN0dXRpbHNfMF8xXzMtYnJhbmNoCisxNDk5MCBmYmZmYTdlYjJhNGY3NGY1NmU5NTAzZjhlMjVjZDBhYWE4ODhhNGE5IERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE0OTkzIDdlOWE1Y2Y1NWM3Njc2YTU5Njk2MTY4NjUzOTI2ZTgzYTA3ZWE2ZjUgbGVnYWN5LXRydW5rCisxNDk5NCAxYzNmOTE5NTFmNzM3YTAzNzMyZWRlNzM2MjdkMTA2ZTExMTJjMGE4IGxlZ2FjeS10cnVuaworMTQ5OTUgYmUzZTBkMTk3NTIyM2VlNjgxMDA2MGRmNDc1YjIwY2I1MDVlZDZkMCBsZWdhY3ktdHJ1bmsKKzE0OTk2IDNkYWM4NTRlNjExODUwZWRlNzkwZTEyNDU5NDNjZWI4ZTFiYTBiY2MgbGVnYWN5LXRydW5rCisxNDk5NyA2MTJiZTFiYjY1ZmZlMWMxYmQ3ZjI2YjY1MDQ1NmNmYzM2Y2Y4MzIwIGxlZ2FjeS10cnVuaworMTQ5OTggYmRmY2E1NGExNDFjYmMzYmJmMTkzN2IzZWQ5ZDQ2MTQzYjU2MmE5OSBsZWdhY3ktdHJ1bmsKKzE0OTk5IDY5ZDExZGY4NDNjMTU0NGIyZjIwNDgzOTY1ODdhOTNmYzU5OGUxZjkgbGVnYWN5LXRydW5rCisxNTAwMCA3MDE1NGUyZTljODkwZTkzZjFlOWIyNTcwN2UwOWE1NjVjN2QyMjBmIGxlZ2FjeS10cnVuaworMTUwMDEgOWViNzY5ZTE1ZjgxYmMyNDA2N2Y1YjQzYTQwMzhhZWRhZDlhMDcxZSBsZWdhY3ktdHJ1bmsKKzE1MDAyIDBhM2NiMDgyYzVkYmRiNGY5ZTc4OThjZGNhYjRhNDczYTU5ZDY1NzIgbGVnYWN5LXRydW5rCisxNTAwNCA5ZGRlMzE1Y2RlMzk2OWE2MGQxYWM0OGYxM2EwZGQ0YmM4NzYyOTllIGxlZ2FjeS10cnVuaworMTUwMDUgNGRhMDZmZGQzZTYzODFiYmZlYjkxNjU0YTk0MGI0MjVhNWY2NDJjNyBsZWdhY3ktdHJ1bmsKKzE1MDA2IDQxNTg1ZTg1MWY1NWI2MTQ5NDVjMjBhMWY0ZDdiODBhZjYzODAzZDAgbGVnYWN5LXRydW5rCisxNTAwNyA2NjkwM2MzZjE0ZGI0Mjg2ZDQ2ZjkzYTEyNjIxMjVkM2VjNTgwYTUyIGxlZ2FjeS10cnVuaworMTUwMDggYzM0MWU2OGYxOTg4ZTM5M2QwNmI0YjE3NjZkODZjOTVjNzU4YjA0MiBsZWdhY3ktdHJ1bmsKKzE1MDA5IDBiYTg1NzA5YTY3MTI5NTFhNzcwYTFiNWQ1OTczMzhhZGFjNzBhMDAgbGVnYWN5LXRydW5rCisxNTAxMCAyMzI2NjM1MmYxMzhjMDBjZTdhOWZiMGIxNThiZjc0NzhkNTFhYzMzIGxlZ2FjeS10cnVuaworMTUwMTEgNjViYzVlYWY0N2NlOTZlMTJlYjA2ZDhhZjdjN2RjZGE3NDY0OTk0ZiBsZWdhY3ktdHJ1bmsKKzE1MDEyIGQxZDAxNmFjY2U3NGViMjg5YTQxMjJmN2U3MTJjNmQ2ZDJkOTgzNGUgbGVnYWN5LXRydW5rCisxNTAxMyA4YzBmODYzYmE1MGM2N2UzOGJmNzQ3ZTRiN2VkNzFiYjhjMDI2ZDA0IGxlZ2FjeS10cnVuaworMTUwMTQgZmIyMGY2ZmRkMTZkNmQwNDhiYzcxYjFjNDJmYzU5M2ZiMzlhYTFkOSBsZWdhY3ktdHJ1bmsKKzE1MDE1IGFhYzExMmNjYTc5YjUxNmQ5YWUyMTNlYmU2NzgxYTM4ZjkwZTBhMjIgbGVnYWN5LXRydW5rCisxNTAxNiBmZjc1ZTQ3MzRkZDlmZWZkY2E3YjBmNzM4NmU2MThlODBmMDJkZDFkIGxlZ2FjeS10cnVuaworMTUwMTcgNjRmY2FlNzhkNDdhZjYzNTY0N2I5NmU1YjI1OGMwZGZmYjgxZTQ4ZSBsZWdhY3ktdHJ1bmsKKzE1MDE4IDY2ZTljOTdmOWY2NzdjMGJjNjc4YjA4Zjc2YjUwMzljOTZlMDUxNmUgbGVnYWN5LXRydW5rCisxNTAxOSA3NmVkMTM5ZmNlNTk3MzVmYzUwZWQ4ZTE1MGEyYjc1NDhjYWU5N2Y0IGxlZ2FjeS10cnVuaworMTUwMjAgM2ZkYWVjZmZjNGRkZGJjNTI1NDVhY2MxODIyNzVhZWNiZDNjMDBlMiBsZWdhY3ktdHJ1bmsKKzE1MDIxIDllMWY2MDk3NjIwOWYyN2ZjM2Y4ZGFmMjQzZmU1MDA0ZWNmMDRkNTMgbGVnYWN5LXRydW5rCisxNTAyMiAyNjFlODk1NDQwODU0ZjkwZDIxMzQzZDlhMDI0MGY2ZjllYWNmMjQyIGxlZ2FjeS10cnVuaworMTUwMjMgZjZiNThiMDIxZTU2ODkyOTdiMDZlZmU2MjQ1YjBhOWMwYTdlY2FmMCBsZWdhY3ktdHJ1bmsKKzE1MDI0IDhhMWVjOGZjMDBmZWE2NmE2MDMzMDcxODZkOTAzZTdlNjhkMDNhNmUgbGVnYWN5LXRydW5rCisxNTAyNSAwYWM0MGU0N2JkYjVlMWYyMjYwOWZkMTgwM2RhNzQxYmQ2NGUxNDRmIGxlZ2FjeS10cnVuaworMTUwMjYgZmQ3NTYxMTI0MjA3NjRiMGRmYWY2YWZhZWM5MTQ2ZDJhNzFkN2Y5NSBsZWdhY3ktdHJ1bmsKKzE1MDI3IDU1OWIyNWE3OTAzMmFjYmM2ZmRkOWNlNGE3M2FlYzRmZWNhZGUxMmIgbGVnYWN5LXRydW5rCisxNTAyOCBjZjEzMzhiYzIxYzAwMGJmNWVkMjA2YWJkMzRlZTVjNDgxYzE1NWUyIERpc3R1dGlsc18wXzFfMy1icmFuY2gKKzE1MDI5IGNhMzFlNjc5MDI0YjVjODhhMzFjNjg5MWJlOGM5OGMyNWJlNWUzNDYgRGlzdHV0aWxzXzBfMV8zLWJyYW5jaAorMTUwMzEgY2JmYTk1YTZhMDNlZTY5YWU3OGViY2JmYTJkZWY4MzQxNjQ1OGYxOCBsZWdhY3ktdHJ1bmsKKzE1MDMyIDhlZjM2NzIzNDI2NDllYTUzOWQzN2Q4MTM5OTYzYTNiNzhkNGRkYjcgbGVnYWN5LXRydW5rCisxNTAzMyA1N2ZkZmEwMGRhOTMzN2E4OGYyZmY1YTFjY2U5MDZhYjMwODZkZWM4IGxlZ2FjeS10cnVuaworMTUwMzQgNjQ3YmY3MTkxMmYwMmMxNDYzOGUzNDk3NDg5OGY0ZjMwYWJjOTY5MyBsZWdhY3ktdHJ1bmsKKzE1MDM1IGFmOGQyMTEzYmMxZDAyNGJjMzRlNTc2MzUyNWZiMmI4MTU0NzUwYzQgbGVnYWN5LXRydW5rCisxNTAzNiBkMDZiNTBiYTgxYTYyY2MxYmYzMWY3ZDQxMGI3Mzk5ODI4Y2Y3NzliIGxlZ2FjeS10cnVuaworMTUwMzcgNTFjMGMzYjZkOTE5ZWZmYzU2MWJhYWUyMTMwZThkNDRlMjk1YjM3ZSBsZWdhY3ktdHJ1bmsKKzE1MDM4IDNhOTRjN2Y4NTU1MWU4OTllZTVmYzcwN2ZlNDc4ZTE0ZTkwOGJjZWIgbGVnYWN5LXRydW5rCisxNTAzOSA5NjAxOTI1MTg4MjliMWVlZTk2MjRhYzg5ZGQwZjZhNjA4NjM2ODVlIGxlZ2FjeS10cnVuaworMTUwNDAgOWM5NmU1ZDQzN2E4MjFiNzQ5OTRlMmQ4OThmY2QzY2ZhMGQ0ZThiNCBsZWdhY3ktdHJ1bmsKKzE1MDQxIDgxODYxNDVjNGEwN2Q2ZTI4NmVlODViYmE3MTMxYTU5ODYxOTU5YWMgbGVnYWN5LXRydW5rCisxNTA0MiA0YzZjMjQ4MTY5M2VkNDA2OTFiNmVjYTQyNDY1MzlmZDY0ZGVjNGY5IGxlZ2FjeS10cnVuaworMTUwNDMgZDFkMjJhMzYyNjhmOTUzNDU5OWNhZDNkYzUyMjdiYmRkNzhiOWJiMyBsZWdhY3ktdHJ1bmsKKzE1MDQ0IDVmMzYyNGJmYTU5NGMzN2NkZWE3YzhiYzdjYTVhZTAyYzBhNTFlN2QgbGVnYWN5LXRydW5rCisxNTA0NSBmYjc1ZThhY2ZiMDU3OTllNjcxMzYyZGU2NDM5NmM3NTg0ZGVmZjA2IGxlZ2FjeS10cnVuaworMTUwNDYgMTVkNDExNDliZjI0Mjk0MjljYWQ0YTFkMzk0MTQ1ZDVkMzU3NGQ1ZiBsZWdhY3ktdHJ1bmsKKzE1MDQ3IGI3ZjJiMjI1ZDBjMDIwNTY5MWFkODgxMzk3MjlkMjM3ZTMxNWNkMzQgbGVnYWN5LXRydW5rCisxNTA0OCAwZDY0Y2U3MzU0Yjk5OWU0NmYxNGI3MDU4MzYwZTQyMTBkNmI0NDhhIGxlZ2FjeS10cnVuaworMTUwNDkgOWFmOTk3MDY1N2ZhZWI4NTM0ZDc1OTljNTkzN2M2MmFhYzliNTg2NCBsZWdhY3ktdHJ1bmsKKzE1MDUwIDM1YTExOWFhMTliNGJlZTMxYjk0OWZhZjUxODZhNDZiYTlkODRlYTAgbGVnYWN5LXRydW5rCisxNTA1MSAyMzQ2YWMwNzgwY2U5MTFiMzMxOTU1YTQxZGNiNjVmMDMwYzBlYjRjIGxlZ2FjeS10cnVuaworMTUwNTIgYjE1NzI1NmRiYTc2OTdjOWJkYjhlYWRmOWJlNzRhMWQ1ODU1ZGY1NyBsZWdhY3ktdHJ1bmsKKzE1MDUzIDE2MzE5ODZkYjEzYTY2NGZmOGMwZmE1ZmQ0ZDJjYmJlNzg4OTViYzAgbGVnYWN5LXRydW5rCisxNTA1NCBkNjQwZTdkNGFlYzQ4YzVkNjFjNDBkYjZkOTk3ZjIxYjhmZWIyNmE0IGxlZ2FjeS10cnVuaworMTUwNTUgOTE3MmVkYWFlZmY1ODY5MTBkYzRiNTBlNGM4YjQ0YzI4YjJmNjlkMCBsZWdhY3ktdHJ1bmsKKzE1MDU2IDE3ZmM5Zjk1OTkwYjQ4ZTE3ODI3Y2VkOTNkN2I2NjYwZTIyN2YzZmUgbGVnYWN5LXRydW5rCisxNTA1NyA0MGU1OGM1YjZmODRmYWRjMjhhNjdiZDExOGQ0MDBkOTNiYjVlMDAyIGxlZ2FjeS10cnVuaworMTUwNTggZmQ5MDViYjJmNmI2MzEwMzJmMDJlNDM5MTUyODgzZDY4Yzg5M2YxZCBsZWdhY3ktdHJ1bmsKKzE1MDU5IDBjNjJkMWM3NmMwNjQ5N2RjMGQzODEyNGJkNjhjYmUzNTIwZmE2NzIgbGVnYWN5LXRydW5rCisxNTA2MCBiYmFhZGE0MWEyMGI2OWRkNDBmNDJhODg2YzAwMmZiZmQ2YzMyNzRlIGxlZ2FjeS10cnVuaworMTUwNjEgMWY3YzMyODAxZGMxMWU4NTAyN2JjYjg3OTEyYTk0ZDhhMWVhNTI2NSBsZWdhY3ktdHJ1bmsKKzE1MDYyIDBhNDViOTUzZjRjMDNlOGRmMjlmNGUxZThmNmZkZjk5YjgxMTAwOTEgbGVnYWN5LXRydW5rCisxNTA2MyBlNTQwOTMwNjQyOTU1YTg3ZjA4YmFiOGY5YmNkM2Q5ZGU5MjY4OWVlIGxlZ2FjeS10cnVuaworMTUwNjQgZGRjNGU2MmIyMTZiMmZjYmM1NmNjYWZhMDFiZTcwNTA5NDUzNWMyZSBsZWdhY3ktdHJ1bmsKKzE1MDY1IGQzMjM5YjdjMDVmZTk4ZGE1MTk5OWY4MWI3Nzg1MmY4MTQ5ZjAwZTcgbGVnYWN5LXRydW5rCisxNTA2NiAzZTcwYzQ1ZjhkNmJiOGViMjljY2U2OWY4MjNjZjc1NTlmNzhjZjBlIGxlZ2FjeS10cnVuaworMTUwNjcgYTNiMDQ2MjM0YzA5MzEyMWE0ZWY4NGUzYjBkMTAwNmViYTc3ZWMyMCBsZWdhY3ktdHJ1bmsKKzE1MDY4IGY3ODI0NDYzOTVkYjJkM2U1OWI5ZGFiOWU2ZGVjOTk0ZjhhYThmMjIgbGVnYWN5LXRydW5rCisxNTA2OSA5MGIyYTNjZDM2NWZlMzBhMTc0MGRlMTFhYzkxYTUwZGVmMDYxMTAxIGxlZ2FjeS10cnVuaworMTUwNzAgMjBhNWNiZjlmY2MwMmM1MWM1OGIwNGE0ZGI0OGY1ODVkZGM0NjNhOSBsZWdhY3ktdHJ1bmsKKzE1MDcxIGYxZjY2NWUwNzVjYTMwNTk5YzU2ZDcxYzUwOGMzMzcyMWQyZTZkY2EgbGVnYWN5LXRydW5rCisxNTA3MiA1NDBmMTA4ODFhNTk3MjlmZTQxMGQyYzljMDFmMjA1MzNlYWZjMTc1IGxlZ2FjeS10cnVuaworMTUwNzMgMjllNzUzNDkzZDhlNWQ3ODk5YjZhZDc5NTQ5OGY0NWZhOTdlNTFiMCBsZWdhY3ktdHJ1bmsKKzE1MDc0IDIwYTM3MGYxYWY4ZGZhOWE2NmY4MDA1YzhiMGM0NGNlNTFjZjFlMTIgbGVnYWN5LXRydW5rCisxNTA3NSA1N2YzNGUxNjJlNjc2MjU4ZDgyYWVjYWYzZjI5ZmY0NjIwOTAyMjBlIGxlZ2FjeS10cnVuaworMTUwNzYgNWRlMGI5MzlmZTYxY2NiZGY3NDIyNDU1YjNjODc2M2Q3YTZlMGM5ZCBsZWdhY3ktdHJ1bmsKKzE1MDc3IGIzMjE2MjczODJiYzE0NTk3ZWJmM2E5MTc4NTJiOGJiYTI2OWMxNTQgbGVnYWN5LXRydW5rCisxNTA3OCBkNzYyOWZhM2IyOWY1ODE3ZWY3MDU4MmEyZDFhZDI0YmIyODliM2RhIGxlZ2FjeS10cnVuaworMTUwNzkgMWEyMDdjNjhlOGI0ZDVmOGNlZjUzYWRlZTljY2I0NTVhYmVmYmQxYSBsZWdhY3ktdHJ1bmsKKzE1MDgwIDcyOTZjZGRlOGE1ZTNiZTkxOGE5OTJkODAzOGI3YzBkZDBjMjE1NjUgbGVnYWN5LXRydW5rCisxNTA4MSBiNWY2YjRiY2VmOTBlY2Y2MzczNzRjOTVmZmQ1YjdmMTA2MDI4YmMxIGxlZ2FjeS10cnVuaworMTUwODIgOTQ4OGU0ZmRhZmU0NmIyNTU4YWMyNDViNzg5MTUzZWZhODExOTE0OCBsZWdhY3ktdHJ1bmsKKzE1MDgzIDY2YjQ5MDZkMGZjNmJlOWVhN2NmZjFiNDM2MTkxNjI5NGE3Mzg2M2YgbGVnYWN5LXRydW5rCisxNTA4NCA0ZjU2NzFhMzEzNDczYzZhZDJiNTQyODZhYjU4MTM3MTRjOTYxYTM4IGxlZ2FjeS10cnVuaworMTUwODUgM2NjNzc4NDhhNjJhZjdiNzA2MTZiMDk2YzFkNDI1N2Q2ZjI4MWU5MSBsZWdhY3ktdHJ1bmsKKzE1MDg2IDc3ZTRmMjFlM2VlNjRhOTVkYmVmODZmNjk0ZWY2NWJkNzJjZjczNmMgbGVnYWN5LXRydW5rCisxNTA4NyBkMTk1ZjE3ZjI5MjczMWU2MWM5MTc5YmM1MjQzYTY3YjE0YjZmZThkIGxlZ2FjeS10cnVuaworMTUwODggNmI0NjY3ZmE0OTM4MWRiZWQwMGUwMTY2ODY1ZjlmNmFkMjBkNTkyZiBsZWdhY3ktdHJ1bmsKKzE1MDg5IDUyNWIyMzU4NzIxZTllOTBmNzU1NTJhMmJiNjZkYzgwN2YwZjc3NDUgbGVnYWN5LXRydW5rCisxNTA5MCAzN2ZkMmU2YzgxYzdkNzBlODg0YjEyODljYjVjNDM0ODMyZThjZWQ3IGxlZ2FjeS10cnVuaworMTUwOTEgZTY5ZWVmNjkyNjEyNTUzMzc2MjAxYzI3YmEwY2Y3NmU2MTk3NjhmYyBsZWdhY3ktdHJ1bmsKKzE1MDkyIGQzMzc0MzEwMmY4YWQzZjIyMWU5MzM2YzhmOTdjNDExZWUxMGRkOWUgbGVnYWN5LXRydW5rCisxNTA5MyA4NTEwYjRhYjNjM2RlYmMzM2ExZDczN2U1YmVjYjc1NWFjNTA1ZjYzIGxlZ2FjeS10cnVuaworMTUwOTQgMTg1ZGU0ZTdjZWYxMGUyYmQ0MDM2MWYwODYwOGQzYjdjNGQ1ZmRmYSBsZWdhY3ktdHJ1bmsKKzE1MDk1IDllOTY2NmY2NzlmNzJjMjU2ODBhOGM2N2JkYjlkMTRiOTBkYTZmMTIgbGVnYWN5LXRydW5rCisxNTA5NiBlMjYyMGFhYjlmMmQ2Y2IxY2U4NWRjYzBhYmJiOGIzNzM0YzY5YTI0IGxlZ2FjeS10cnVuaworMTUwOTcgZmM1NTdmNDMxZTg3ZTBkZGI2MzE4NjVhYTUxZTk5YTczYzk0ZWE1NCBsZWdhY3ktdHJ1bmsKKzE1MDk4IGFhM2IwMmEwMzhhMzdhYWE3ZGEyNTZiNzVlYjI4NzMxNWU0MmFlMTUgbGVnYWN5LXRydW5rCisxNTA5OSBiZTUxMDBhZmExYjdlZDFhOWNkZWZiZjE3OTJjMjRjZDc0MmI2NjVmIGxlZ2FjeS10cnVuaworMTUxMDAgZmNmNTg4ZDg2YjE0MDllZmVmMjdmZGU3Yzc4ZDAyOWE2MGFkMmVhNiBsZWdhY3ktdHJ1bmsKKzE1MTAxIGU5NTJhNGI5MjBhZGYwN2I1MDM0MDQ4MTkxNmZhMzk2MGQ1NjYxM2UgbGVnYWN5LXRydW5rCisxNTEwMiAyNGQ0MTE2ODk3ZGQ0NDdiODFjMjZmYjg5YWM4MTkwNTQ3NGFiMDdhIGxlZ2FjeS10cnVuaworMTUxMDMgZmFjYzEwNWI2NDFiMDFiOWJkZTY4ZGU5NWE4Njg3NWJjMzIyMGYyOCBsZWdhY3ktdHJ1bmsKKzE1MTA0IDE2ODA0YjM3ZDc1MjVjZTkxMGJmNjJlZTZmOTlmYWFjMDBiNzY0ZWEgbGVnYWN5LXRydW5rCisxNTEwNSBlNDM0OWI2MmZkOWI0MTljMzE0ODMyOGM2ZjdmNDJmYzFiYzYyMGQyIGxlZ2FjeS10cnVuaworMTUxMDYgYzU5YmRjN2ZkOGE2MWRjYWNkZTEyMDU5ZDYyYzM2MjE4N2IwOTQwZiBsZWdhY3ktdHJ1bmsKKzE1MTA3IDY3ODU2MTljMzNlMWNiMWM5NWU4MWM3MjI3NjJiZTgyMTM2YzEwMTQgbGVnYWN5LXRydW5rCisxNTEwOCAxNzlhNmUyODUwYWNhNWQwYzc1MTc2ZDNjODhhZjI5ZTQ1MmEzNGVjIGxlZ2FjeS10cnVuaworMTUxMDkgNTRlODBkYjQ5NDIzNzVlYjljMWRjNTlkMGE5OWZiYWM1ZThkMDk3OCBsZWdhY3ktdHJ1bmsKKzE1MTEwIDk5NmViM2IzYjMzZWM1MzIzZjUwNmM0MWY0ZWI1Y2E3YzkwNTYyYzUgbGVnYWN5LXRydW5rCisxNTExMSAwNDgwMmI3ZThhMWYwODQ2ZTcwYTQwMTE2NzA3YTc4MzdmNjQ2YTk5IGxlZ2FjeS10cnVuaworMTUxMTIgMWU3OTFkMmU4ODc1MmUyZWU3NmQ5NjY1MTdlNmIxYjdhZjUyZWNlZiBsZWdhY3ktdHJ1bmsKKzE1MTEzIDViNTllYTQxZGI0ZTg2OTBiMTY3NmU0ZTUwYzVkMGRkNjZiMmIxYjIgbGVnYWN5LXRydW5rCisxNTExNCBmYmM4ZGFmYTQ0ODRjN2UwYjRjYTRjYzYzMWNjNWRjZDc4NGZhZWRhIGxlZ2FjeS10cnVuaworMTUxMTUgMTFlY2I2NjcwZjRmOWU0ODAxNjU2MWUxODMwZWQ1MWFkZDRjZGEyOSBsZWdhY3ktdHJ1bmsKKzE1MTE2IGY3M2JmNDkyNDM4NjgyZjM4Y2ZkODhkYjVmYTZkODk2YjY4ZjM3YjMgbGVnYWN5LXRydW5rCisxNTExNyA3OTFhMTEyYmUzYmNmOGJhY2E4MWMyNjlkOTdlMGJhMGMzNmE4YTNkIGxlZ2FjeS10cnVuaworMTUxMTggODc3OTY5ZWMwOTZmZDRmNjEwNTg2Y2I1YmE5YjZiOTkxMmYwOThkMiBsZWdhY3ktdHJ1bmsKKzE1MTE5IDdmNjUwZGYyNzFjOWUzZWU5ZjNjOWI1MDA4OWRjOGY3M2RjZGRlZWIgbGVnYWN5LXRydW5rCisxNTEyMCBlNjRmYWE2ZTI3MDIyZDMzYjUxYzMxNWRlYmQyMWRkYTM3ZGI3NTk5IGxlZ2FjeS10cnVuaworMTUxMjEgN2ZhNzZjY2RmMmRlNzNmMzY4MjQ0NjkwN2U5N2U2NGVkYzMzNjAwZiBsZWdhY3ktdHJ1bmsKKzE1MTIyIDA0ODEwOTZhMGY0NWJjOTcwODE3ZDZmYjljZjExNDA0ZDQ5YTM3NDMgbGVnYWN5LXRydW5rCisxNTEyMyA2NzdlMjE0NzgyOWE5ZDJjYTBiOWZmNGRjZGE3N2YxODVhM2Y3ODZkIGxlZ2FjeS10cnVuaworMTUxMjQgYzJkMGQ2NzQ0YjNiYjdlNTE0NGI3YjM5ODBhOTAxZWE4MWZiZjIxYSBsZWdhY3ktdHJ1bmsKKzE1MTI1IDY4ZTQ4YmI5NDA3MTFmYjE4YTZjNjdiMDc2ZTMzM2U4Yzc3MzM1OTUgbGVnYWN5LXRydW5rCisxNTEyNiBhZjg3ZmNhZTg4MGZkOWM4ZTQ3NWZkY2ZjZjg4Y2YzZGI2ZjI2NWZkIGxlZ2FjeS10cnVuaworMTUxMjcgNDI5YTM3ZmY5ZGI1Y2MyN2JlOTE2MGQ4Mzc3MjU2N2I2NTI4OTA4YiBsZWdhY3ktdHJ1bmsKKzE1MTI4IDIxNDMwM2QzMmY3NjY0ZDQzZjg0YmRkMGE2NThjYWFkM2QyMzRjNDkgbGVnYWN5LXRydW5rCisxNTEyOSBkNjNiNTdhYzYxN2Q0ZGIyM2JiYTZhNGQ2MzRiZjJjOTg3NDM2NmI3IGxlZ2FjeS10cnVuaworMTUxMzAgZjU3YWYzNjBiN2U1ZWYzN2U2M2E4ODZmY2M4NGE5NzFiOWJlYTJjZSBsZWdhY3ktdHJ1bmsKKzE1MTMwIDAxMWJlZThmZDlmN2Y0ZGE0NTdlYzcxNTk2NDg0ZmIwODgyYzA2MTQgbGVnYWN5LXRydW5rCisxNTEzMiA2Y2U2YzIzYWNkMTQyMWM4NjE0YWRiNGFhNzZkMjczOWIxM2ZjZTJkIGxlZ2FjeS10cnVuaworMTUxMzMgMDUyZmJkOTMxNDkyMWZmN2M3ZTgyZGUxODgyYjMyNTYyOWFlMWRkYiBsZWdhY3ktdHJ1bmsKKzE1MTM0IDYzYWQ3NTRhYTMwZWUyZTY2ZTZlNTAwNWFhNWVkNmYyNjMyZWJhMDEgbGVnYWN5LXRydW5rCisxNTEzNSAzYmUyZjc1NGMwMjM5YjgxYmUxMjM2NDI2NjgwMTI0ZjA3OGRlMDA2IGxlZ2FjeS10cnVuaworMTUxMzYgMzdkOWRlZDVhYjkxNDUwOWY0NDMyZTQzMGE2ZjY3YWNiODUxYWM2NCBsZWdhY3ktdHJ1bmsKKzE1MTM3IDExNmMzYWEzY2NmNzJkMTVkZThjNTZkZDI0NGY3Yjc5Mzk3Mjg2MTMgbGVnYWN5LXRydW5rCisxNTEzOCA1ZjI5ZDdjMDI0MzM4NzE4NThkY2M0NzIxNThhMGRmMGJhNWM2ZjUyIGxlZ2FjeS10cnVuaworMTUxNDAgYmU4MjU3M2U0NDQ0ODJkNTA5M2UwNDVkNjUwM2E3MGUyMjQzYjE4YyBsZWdhY3ktdHJ1bmsKKzE1MTQxIGFhMDEzZjJjZjgwYmU4YmQwMTVhYTg3YmJkYTQ5ODk0NTczZjI2ODYgbGVnYWN5LXRydW5rCisxNTE0MiA2MjcyMjZkZjlmMDE4MWQ5YTc1MTBkYjQ0ZTFhZWZiNWZjZWY2ZGMwIGxlZ2FjeS10cnVuaworMTUxNDMgMzJlOWQwZTc4OTM1MzM0MzY0OWEyNWE5ZTZhNzg1ZWUzODYwZDBlNiBsZWdhY3ktdHJ1bmsKKzE1MTQ0IGVlZjZhMjVmMDljNTMxNmRiOGEyMTkzNTMxYzUyNmUwZmIzZjI1NDMgbGVnYWN5LXRydW5rCisxNTE0NSBjNDgxNzJhZjEzZGMxNTI4Y2FlZTY1YTA2ZTE3MWVlMGY1MDJmMzExIGxlZ2FjeS10cnVuaworMTUxNDYgZTViMGJlYTAzY2ZhNTA1NTZlY2VhMTAwNWFhODU0NzgwZjFmZDQzYiBsZWdhY3ktdHJ1bmsKKzE1MTQ3IDZlZGJhZTZkYmNmNTVhOGI3YjJjNjg3OTI4OTQ1MDczZmI5ZDIzY2IgbGVnYWN5LXRydW5rCisxNTE0OCBhNmYwYjM5OWY2NjU2OTU5MTk4MDk4YjE3YThjZDZlZjIxMDk2NDg3IGxlZ2FjeS10cnVuaworMTUxNDkgOGQ3ZTA3NzM3YjRjNmExNGMyZWZlZjFhOGFhNDQ3YTM0YzMxYjRkNCBsZWdhY3ktdHJ1bmsKKzE1MTUwIGEwNDk4YjE1MjQ0Y2QxMGM4ZGJhYTIwMDYzZDk1MWNmODRmMDMyYjkgbGVnYWN5LXRydW5rCisxNTE1MSA2MGRkOTVjNzU5OTk5MzYyOWM0OTZkZTJjNDYzMTQwM2U2ZTViODQ2IGxlZ2FjeS10cnVuaworMTUxNTIgM2JiMzk4OTk2MjkxZjkzZjIxZjc0ODFiMmQzZjRiMDdkMTM2NjY3ZSBsZWdhY3ktdHJ1bmsKKzE1MTUzIGY4MmIyNTc3ZmEwY2YwNjcyNmY3YTQ4YWUxMjY4NzEzY2I0ZTk3MWUgbGVnYWN5LXRydW5rCisxNTE1NCBmMDcwNWJjZjY3M2IyYzc1M2ExNGJhMDczMzY3NDEyYzA4ZDZjYjBkIGxlZ2FjeS10cnVuaworMTUxNTUgMjM5MmQxMGUyMWYxNjk0ZjY3YTk0NzI0MGMzODg3MjA5ODYwNGEzYSBsZWdhY3ktdHJ1bmsKKzE1MTU2IDhiZjkxMzAyMDYwNGVjZGVkNDc5ODJkNDY0ODUzMDhjYzZlYWQ1OTcgbGVnYWN5LXRydW5rCisxNTE1NyA5ZjJjN2Y3MjcyZmE3MWVkYjBjMWRhOTc3OGY1NzMwNDE1YmU2YjU2IGxlZ2FjeS10cnVuaworMTUxNTggYTU3NDNlMTQ3ODYwYzE2YWE2NWIzYzg1Y2I2OWRmZGE2NDJiNWY5YyBsZWdhY3ktdHJ1bmsKKzE1MTU5IDRjNTFhOTY2ZDJhMzkwZWIzNjE0NGVlNzMzZGU1MGNkZDg3NDkyNTggbGVnYWN5LXRydW5rCisxNTE2MCA4MWM5NjZiMzVjMTI2MjIwMWJmNmNjZTVmYjQ1MzNhZDE5ODBhNTE2IGxlZ2FjeS10cnVuaworMTUxNjEgNjdlOTYxNTc3ZDBlYjhmYTM4ZWQ5Y2E5NjRkZTU0NzAzYjcyOGMxOSBsZWdhY3ktdHJ1bmsKKzE1MTYyIDE1NTU0ZDNhNjhjNzE1YzgzOTVlZDE0NWMyMzE2ZWZiMTMwYWMxZDcgbGVnYWN5LXRydW5rCisxNTE2MyBlYzZiNmNhNWQxMTE2MjNhZjc1YmM2ZmQwNTJkYmJhZjI5NTZmMDJiIGxlZ2FjeS10cnVuaworMTUxNjQgMDFjZmY5ZmUyZDQ1MjEyOTU1OGI0N2RkN2RmN2MxYWYyNjY0MjQ4MSBsZWdhY3ktdHJ1bmsKKzE1MTY1IDJmYjZjNzM5ZDMyNDcxYzExZGRlMWRlNTc0MWRiZTRlNmVlNDJmMjIgbGVnYWN5LXRydW5rCisxNTE2NiBjYjRmMGQ4MTg4MGQ1YjRiNTgzNTkyMmViNTcyYmFmZWUyMjRjNTFlIGxlZ2FjeS10cnVuaworMTUxNjcgNWI4NzBjMGVhN2I2MWEwZjhkYjQwYmJlZTYxNjEyYTQ2NDI3OWVjNSBsZWdhY3ktdHJ1bmsKKzE1MTY4IDRjNWQ2MmU4Njc1YjM4OTEyNGI2MmM5MWQ4OGExMTc0ZTNkZDljZWIgbGVnYWN5LXRydW5rCisxNTE2OSBhZTUyNWFiMjNlZWZjNjFlYzUyZGJlOTc3MWUyNmU0NWIyOGY2OGY1IGxlZ2FjeS10cnVuaworMTUxNzAgN2RlOTAyYzFmNDM5ZTU2ZDFlOTA4ZmY4MTAzYjZmNDQzMGQwMGU3NCBsZWdhY3ktdHJ1bmsKKzE1MTcxIDJmYzUzZGRhMjBlYjYzZTQ1NzBjY2I0MzRhODU3ZWI2NDdhN2ZhMDAgbGVnYWN5LXRydW5rCisxNTE3MiAwYjY4OTkwMDg5ZDIxNDllMDM0MmYwMmM2ZmMxZTU0ZTVhNGI4MzIwIGxlZ2FjeS10cnVuaworMTUxNzMgOTVlMjk2ZTY3YTEyYzAxZGQ2MjlkODhjM2U2ODQ3NzhhNGY4ZjljYyBsZWdhY3ktdHJ1bmsKKzE1MTc0IDI1OWM0YjljNGM4ODk3NmZiMjMxNzFmZmM5YjlkYmNlZWY2NmUyNDAgbGVnYWN5LXRydW5rCisxNTE3NSBhZTEwNjM3OWU3NTZjMjc3NmNhNjljMDQzZTFmY2FmMGQ5NzRiNDFkIGxlZ2FjeS10cnVuaworMTUxNzYgMWM4NWFlNjc2YmE3ZTVkYmI4MjEwNjZmODQ0MDUzOTNiMWZjYTMxYSBsZWdhY3ktdHJ1bmsKKzE1MTc3IDM2MjYyNjExODliNDhkOWIxN2EzNmM3ZTUzMWYwZjczNTgzMWFkMGIgbGVnYWN5LXRydW5rCisxNTE3OCA2OTc5OTY2ZWU5NGRhMTY3YTBlYzE2YWQ1MmM5ZWE4YjBiZTM1NzZjIGxlZ2FjeS10cnVuaworMTUxNzkgNmZiNDBhODVhNTE5NzU4OTk1NGY2MjIzMzZlMDQ4N2JlZDg5MGE3OCBsZWdhY3ktdHJ1bmsKKzE1MTgwIDBkMTNjZTJlMTU1YjkzODI2N2YzZjQxOTlhMDliZDY4NDRhNDVlOWMgbGVnYWN5LXRydW5rCisxNTE4MSAwYWU2MzUyM2Q1MDRiZGZhMzg4YzE2NjliODMzNzc4ZjRlZGIzMGU2IGxlZ2FjeS10cnVuaworMTUxODIgYzBiZjNlZDkzODM1ODBmZmUwNzJlOWY1YmFkNjQzMjg5ZTQxMjlkYSBsZWdhY3ktdHJ1bmsKKzE1MTgzIGU4N2U2YmRmY2JkYzY3Nzg5MWQyMzY1MDNmNmQwYzY2NzU2NTg1M2UgbGVnYWN5LXRydW5rCisxNTE4NCA5NzhjOTY4N2JlZWY0ZmQ2NGRlYjU1NDg0Y2MyZDFkNzk4NjY2ZDU3IGxlZ2FjeS10cnVuaworMTUxODUgNmIyYjlhMjNhNDFmMWY4Y2E1NjQ4Njg1YzRlYzY0M2MwYjUxNWJlYSBsZWdhY3ktdHJ1bmsKKzE1MTg2IGQ5NDAwYzQ3NmI5ZGMyZTVlMzExNjQ3ZGNhYmE0M2M5MGUxY2Y0NjUgbGVnYWN5LXRydW5rCisxNTE4NyBjNjA1OWU3MGJhYjIzYmViZDQ4NjdmOTAyZWM2NGFlNjczNGVkOTViIGxlZ2FjeS10cnVuaworMTUxODggY2E5ODk0MmZlMTAzYjljYzIyMDIxMjgxOGVlNGQ3MWE1YjJlZWMzNiBsZWdhY3ktdHJ1bmsKKzE1MTg5IDNmZDEzMjIyYTg3NmYzYTE4Nzc4OTk5NmM4MmU2Nzk4MDMxNzA2MjUgbGVnYWN5LXRydW5rCisxNTE5MCA4MTYxMzM0OTQyZDRmZjViMzFhNjAxOThhOTZkODBlMmMxOTcwZWJkIGxlZ2FjeS10cnVuaworMTUxOTEgNmE4Y2QwNjgyMDk2MWVhYjkwMGIyNzNlYWYzM2ExNzdmMGQ4NjI2YiBsZWdhY3ktdHJ1bmsKKzE1MTkyIGNhN2I5OWQyN2E0MDcxYTFlMWE5YzU1OTlkODE3YjcyMDhmNDRhMjIgbGVnYWN5LXRydW5rCisxNTE5MyBkZmY3YjI2MTE2ZGViZDNiZjRkZDE0YzVkZmEyMjViZjE4ZGE3YjFlIGxlZ2FjeS10cnVuaworMTUxOTQgODI4OWMwZTU1MWNkMzEyODRmZmI4YmZiY2I5Mjg1MmY5ZGE3YjNjZSBsZWdhY3ktdHJ1bmsKKzE1MTk1IGYwYjcxOTEzYzBhYTdiMDhjYzMwNzM3NGZmZWEwMzdiOWE2NTI5YzcgbGVnYWN5LXRydW5rCisxNTE5NiA0NTY4NjllYWE3ZDU5MWE1ZGRiODdiNWQ1YWFkMjc4ZDgzMmU4MWJmIGxlZ2FjeS10cnVuaworMTUxOTcgZDQ3NDYwYjFhNjc5OTcyNzcwNDNmYzI1MzVmMjYyN2U0ZjFkZjVjMyBsZWdhY3ktdHJ1bmsKKzE1MTk4IGQ3NjMzNDFkMzMxMGJlMGViNDZmNTVjYTgwYjRjOTgwMWQ0MmFmNTEgbGVnYWN5LXRydW5rCisxNTE5OSBjOTliYmE5ZTkyMTJjYjEwZGUzNDUzNjVmZGQ1ZjM1OTllMmM2ZGFiIGxlZ2FjeS10cnVuaworMTUyMDAgZjg3NjE2NGZhMTUxNDk4OWQxZjQzMTcyM2U1NDNlMTM5NWExNDkzYSBsZWdhY3ktdHJ1bmsKKzE1MjAxIDAzYjgxOTEyODM1ZWJlOWI1YzFhZWYxOGM3OTE4MmYxMzk2OTdmMDQgbGVnYWN5LXRydW5rCisxNTIwMiA5YzRhNGU2YmQ1NTVhZWQwYTc2MTNhZjRkZTE4NTVmMmU2OTA5YzFjIGxlZ2FjeS10cnVuaworMTUyMDMgZTM2N2FkM2VhNTlhODYxZDMxYjEwYzhlMWU4YzBmMTg4YzJkZGU1MyBsZWdhY3ktdHJ1bmsKKzE1MjA0IDk1MWQ4NGUxZDU0YmViMDA3NjQ5M2VmMTVlMGMxOTI1NjVkZGVjMjYgbGVnYWN5LXRydW5rCisxNTIwNSBlM2JiMjM5YjJkYmY1ZTA1ZGI3ZTRkODIyYTFhNzNiZTQ4OTQ0YThiIGxlZ2FjeS10cnVuaworMTUyMDYgMTlmNTNkOGJkMjk4MTA2YzI4Njc2NDljYjllMDJkYWU1MzY2ZGM5MiBsZWdhY3ktdHJ1bmsKKzE1MjA3IDE2ZGM4MDczMWMyM2EyMGMxOTAzNGYwN2FiNjllNDEyZjY1ZTg3MmQgbGVnYWN5LXRydW5rCisxNTIwOCAzM2JhMDYyNmVmNzJhOWUxMDNhODVlMzUzODk5YjY5NWFlOWE1NzU1IGxlZ2FjeS10cnVuaworMTUyMDkgMzQ2OWIyZjE3NjI0Zjg2MjcyMTRjMTZiOTlhZTVkZjBkMTZhZWFkNSBsZWdhY3ktdHJ1bmsKKzE1MjExIGQwZjI5MGIzYzBiMjNiYzA1ODRhZDk0YzFjMDk3MDc3MjBjMzZkNmMgbGVnYWN5LXRydW5rCisxNTIxMiA0ODYxNjE4OTQ1MDdmNDA1OGU3ZTRlN2I1NzQ2ODY1ZDVjNzViODAzIGxlZ2FjeS10cnVuaworMTUyMTMgNGNiMzMzNDgyMTYwYzhmODIzMDljY2RhMWU5YzQ2NDFkODRiNGUxYiBsZWdhY3ktdHJ1bmsKKzE1MjE0IGRlMzY1YjY1YzE3YmM4ZDlmMzJmMGNlNjlhNGE4YzRkZTRiYzAzYjYgbGVnYWN5LXRydW5rCisxNTIxNSBkNWZkYzliMWU0NzRjNzIxY2VlZDVmYzYyNTkxZWU2OTJiZjllNzcxIGxlZ2FjeS10cnVuaworMTUyMTYgYzI4ZmEwMWU3MzI5YzNjNDE2YzFmZDVlYWJmZTVmZGE3YzcyODk3YSBsZWdhY3ktdHJ1bmsKKzE1MjE3IGU3NjIzZDAxOTI3YzhjOWZiNWJkOTI5M2U1MTFkODliMmNmZjZhY2YgbGVnYWN5LXRydW5rCisxNTIxOCBlNWIzMWFjYjEwY2ViNmJmMTM4ZDI5ZWZmOGYwZDllNjEyMDIyMjFiIGxlZ2FjeS10cnVuaworMTUyMTkgZmQwZTVkYWVmODZhZTZkYTJlNmY3ZTBiODhkMmFmOTYyOTg3MWE2YSBsZWdhY3ktdHJ1bmsKKzE1MjIwIDE0NGE4OTU3MGEzOWNmMDVjNTE0N2VlYTNjMmM3YTJmYThmZmI3MGMgbGVnYWN5LXRydW5rCisxNTIyMSA3NGQ0ZTQ1M2E3ZjdkYTM5NjVlMTUzOGIwY2VkMzk2MDFjNDY4ZDFlIGxlZ2FjeS10cnVuaworMTUyMjIgMTg5NTFhMDI0ZDExZGYyYTc1ODkwNmJiNjI3ZTU5OWY0NjZhOGQ0YiBsZWdhY3ktdHJ1bmsKKzE1MjIzIDZmNTA5NmE4ZDAzYTIwYjhjNTc1YWM2Yzk5Nzk2MWM4NGQ0YjU3ODEgbGVnYWN5LXRydW5rCisxNTIyNCA0OWIwYjg0NmY2ODM0NzJkMzQzMDYxZWQwMTFlZjNmMGVkMzEwMzliIGxlZ2FjeS10cnVuaworMTUyMjUgMGJmOGFiZDAyYmQ4ZDdjZDFlNjRlNzRhYjE4ZmNhNmQ3MDAyNWE0OCBsZWdhY3ktdHJ1bmsKKzE1MjI2IDE4MWM2Zjk1ZjZmNmE1ZWJiZTNjN2MzZGU5YTc4ODQzZDVkYzM4MmUgbGVnYWN5LXRydW5rCisxNTIyNyA3NjEzZjhiM2MxY2U0Y2Q1MDk4ZGVlMjY3OTFlMjNkMWM3NDIyYzJiIGxlZ2FjeS10cnVuaworMTUyMjggZTM5ZWI5MGIyNTBhMDJhNjI0MWRmYzQ5NjcwNzYyMjY0ODhjNzExNSBsZWdhY3ktdHJ1bmsKKzE1MjI5IDJhMmQ1ZmY5MzMwODA3NzE4NjViOWJhMGVlMGMzY2QzOTY5MmNlZWYgbGVnYWN5LXRydW5rCisxNTIzMCBlNTY3ZTMzZGU2NDViZjcwZDI1ZTZhNGE2MjhhYjA3OWUyZmUzNjg0IGxlZ2FjeS10cnVuaworMTUyMzEgZmNiOTJiOTZmMWFmYjU2MDM5MzEyYzAyMjMwNWRjZjc4N2Y3MTE1ZCBsZWdhY3ktdHJ1bmsKKzE1MjMyIDY5OWRmYjEyNTRjYmY3MjM4YmYyOTJmNDllYjdjMTU3YjAxMTljYjQgbGVnYWN5LXRydW5rCisxNTIzMyBjMjdmNDg0YWVmZmZhN2ZlNDMwNmZmMTQ2NWVhNjY0MDE0M2YwNjc1IGxlZ2FjeS10cnVuaworMTUyMzQgMzUwMGM0MzUwZjYyNmUxMTBjMDg5MjU1NDJlN2U4MzY4ZTFjNTY2YSBsZWdhY3ktdHJ1bmsKKzE1MjM1IGYxYmZmMWVjNzk2YjY0MTA5MzIxMTVjMTY0OGRmNzkzMGU0MjQ4Y2QgbGVnYWN5LXRydW5rCisxNTIzNiA4NjZhZjFkODc5NzA4NGM2NzJhZmM4YTY1MzU3YTEzODc3ZTU3YmNiIGxlZ2FjeS10cnVuaworMTUyMzcgYTNlMWZlY2I0M2M2ZTUxOWRkYWRkMTUwNzBlMDc3MTBmZTBmZjU5ZCBsZWdhY3ktdHJ1bmsKKzE1MjM4IGJlMWQ3NWUxNmNiODE2MjllNGMxOThlNGZkZGZjNGFlOWZkMWI5YzAgbGVnYWN5LXRydW5rCisxNTIzOSBhODg5OGExNzJmZTJmMDc2OTcyNTc1NzVmMzQ2NTkzNGE2OWRjZDczIGxlZ2FjeS10cnVuaworMTUyNDAgYTNjMGI2Y2RkMTY4YTY5NDMxM2ZiYWQ4OWNiOGI3OTU5MzMwMzVkOSBsZWdhY3ktdHJ1bmsKKzE1MjQxIDE5ZTNlOGY4YzU3NGQyMmE2ODZiYTM5MWQyNDkxZjYwMGQzN2U4NzIgbGVnYWN5LXRydW5rCisxNTI0MiBmYzI3Njg3NzVmODIxOTgzOTAyZWJhNTA5MTYxZDI4YjIzN2NmNmIxIGxlZ2FjeS10cnVuaworMTUyNDMgMGRiNWEzNjAyNTI2MWZmOGU2NzFmMDQ3YTZlNzQ4ZGYyMzhiMGJmNSBsZWdhY3ktdHJ1bmsKKzE1MjQ1IDEwYWRiZjgxODNlNjhlMDI3ZDU1OTk5NWYxMDdmMTI4YmQ2ZmI0YjcgbGVnYWN5LXRydW5rCisxNTI0NiBmMWU4NjdhZDdkODVhYzNhMzA0MDJjYzQ5MjNjOWE5NDI2ZDBjMzhiIGxlZ2FjeS10cnVuaworMTUyNDcgOGIzMzBkMTYzODAwNzcxODA1NjU4MDcwNzE3NWNmYThjNTg0MmY0MiBsZWdhY3ktdHJ1bmsKKzE1MjQ4IDE5NTg1NzFkMjVjMTZiY2U0ZGZjYzU5Njg4Mjg1ZWJmMzI1YTk0ZDUgbGVnYWN5LXRydW5rCisxNTI0OSA0Y2VlMmRhM2RhY2ZkNzVkYzdkMTE3MzhiMjk0YWMzZTM1YmM0NTMyIGxlZ2FjeS10cnVuaworMTUyNTAgNzIwZDM1NTZiMTQzODUyMTdmZjM1NjE2YjJiZTU2YjM2NzlmMjAxNSBsZWdhY3ktdHJ1bmsKKzE1MjUxIDE3MjVlODAyZTNlYmQ1MmU3ZGE1YmQ5YTg0Mjc2MGI3YTY1OWM3ZWQgbGVnYWN5LXRydW5rCisxNTI1MiAwNGNmYTEzNDFhNTA5YzE3OTY5ZDkxYTRmMjdlNzlhYjUwNTU2YjUyIGxlZ2FjeS10cnVuaworMTUyNTMgMWNiYTY1ODljZTY2N2NlZjdjNDU2OTk1NDlmZmRlZTA4MzYwNzE2ZCBsZWdhY3ktdHJ1bmsKKzE1MjU0IGJlZjI0ZDQ4YWZjOGM1YjRkMzZhZDE4YzYwNDIyMDY2N2NiZTE5MWMgbGVnYWN5LXRydW5rCisxNTI1NSAyYTUzYTNhNDc5NjJhOGZmMmYwODRlYzM2Y2ZkZWQ3OGNiZWJlZDgyIGxlZ2FjeS10cnVuaworMTUyNTYgZTUwYmJiOGU5OGRhZDJhZThiYzJjODdjNTIxNzdjNGU0NWI4ZDI3MCBsZWdhY3ktdHJ1bmsKKzE1MjU3IDBkNzU1NTVlZDZlYjZkOTcwOTA2ZWFkMGFjYTY1OTIzZWVjNDJiZGYgbGVnYWN5LXRydW5rCisxNTI1OCAwNzgwYWJhOTc4OTg5MzE4YWYyMGZlNGVkNjIzNTZmMTYwOWQwMzY4IGxlZ2FjeS10cnVuaworMTUyNTkgZWI0MzNlZmEyNGRlZWE4NDYyZGYwNTA4NTkwNDlkYjQ4YjI5Y2Y1YSBsZWdhY3ktdHJ1bmsKKzE1MjYwIGJkOTJjNTNiMTY2OTkzMzQ0YTE0YjUyODQ1NDE0MDNiODk3MDViZTkgbGVnYWN5LXRydW5rCisxNTI2MSAyY2UyYTgzMjUzZTgwMzE3YzQyN2JmZmE2NTZiZjY4Y2VjNTg4YjdiIGxlZ2FjeS10cnVuaworMTUyNjIgMjExNDgzYmQwYTUxODJkY2I2MzYwYzNlNjgwMjUzYjdjODY5ODVmYSBsZWdhY3ktdHJ1bmsKKzE1MjYzIDQ0ZTUyMWE5MzY0OGE1MTI3ZWE0ZDcwYThmNWY4ODk0ZmNkNTMxM2QgbGVnYWN5LXRydW5rCisxNTI2NCA1YzNlNTk5OWRhYTE2YjgxMTk2OTNmNzk5NzQyMzU2OGJlYzVkMzA4IGxlZ2FjeS10cnVuaworMTUyNjUgZjRkZDdjODg0OGZjYTQ1ZDhiM2ViMGEzZWRlMmIwNDEwN2MzM2VjMCBsZWdhY3ktdHJ1bmsKKzE1MjY2IDU2NjFmNGY5YTQ3Zjc5ODQ4OGI0OWZhNTk3Y2Q3MjExN2M4N2EyN2MgbGVnYWN5LXRydW5rCisxNTI2NyBiNzZiYWNjY2QzNDYzMTBkNjJhOTc5YmU3ZGE5YjFmNDQxODcxNjZiIGxlZ2FjeS10cnVuaworMTUyNjggZTYzZWNjYmE4NzNiNzY0NzQxYWU1NDI0ZGE0NjMxZGUxMzY0NzlkYyBsZWdhY3ktdHJ1bmsKKzE1MjY5IDEzYTE2NzkzYmIxY2YwODA5OGNiZGFhYzc0ZDBmMDBiOGNhMTVjOGQgbGVnYWN5LXRydW5rCisxNTI3MCA4NzQ3ZjFjOGI1ZmJlYjFmNzhkZjNhMzlmNjdmM2JhNzlmZWEwOWZiIGxlZ2FjeS10cnVuaworMTUyNzEgYTYxMTU3MzI4YjEyMWUxNWRiNjExMTNiYmQ1ZDhhNDUzMjYyZThiOCBsZWdhY3ktdHJ1bmsKKzE1MjcyIGNhMGU5ZDk3ZDU1NGM0ODVhZGQ2YmI4YTg1NTllMjE5MWQ4NTU4YjcgbGVnYWN5LXRydW5rCisxNTI3MyBiYTU0ODYyYzg3ODVjMjBlZjg4N2RmNDk2NTBhN2IzYmU0ZjhmMmIxIGxlZ2FjeS10cnVuaworMTUyNzQgZmI0Nzc1MTExZWQ5ZDUxMmY1MWM4MDQ0ZGQxZTM3MGFmNTE4ZmYwMyBsZWdhY3ktdHJ1bmsKKzE1Mjc1IGU2ZTkxNGQ1YjIwNzJmZTQ2ZWRkNTg2ZGQ0M2Q3NjgzNDU4OTI0MDcgbGVnYWN5LXRydW5rCisxNTI3NiA2ZWJlMGFjYjc3NzY0OTEyY2EzZTA4YWEzMmRhYzg4NmUyZmNjYTI1IGxlZ2FjeS10cnVuaworMTUyNzcgOWU1M2E3MTEyMzk1ZmI0MDlkODA1NmQzODMzYmIyYjY4MWUzNTFlMCBsZWdhY3ktdHJ1bmsKKzE1Mjc4IGFmOWQ2MjNiYWJiMDc3MTc3NTEwYjhjZjAwOGU4ODY2MTRmOTFlOWEgbGVnYWN5LXRydW5rCisxNTI3OSBiNmI3YmQyMGM4NDViNzM3Njg5YjEyOTBjNTEwN2EwYWJiZDQyMTkyIGxlZ2FjeS10cnVuaworMTUyODAgZDM1N2FlOGZiZmU1OTBhYWFiMWNmNWU2Y2E0ZjRhYTg3MWNiNDMwNSBsZWdhY3ktdHJ1bmsKKzE1MjgxIDBjMjhjOWNhYmJkYWViMGZiOTdlZDY1MmRmYjk2MDNmN2MzN2YwZDYgbGVnYWN5LXRydW5rCisxNTI4MiAwMTllYWVmNjM3ZmY1Zjk5Y2U2MTJhMWQ5Zjg4ZDRhZDkzYzIzZTI0IGxlZ2FjeS10cnVuaworMTUyODMgNGFlMTI3MzEyYmJmZDc4NWVkYjdmZDMxNzk4ZTRkOGY0MGJlZmFkMSBsZWdhY3ktdHJ1bmsKKzE1Mjg0IGI0NzZlNGE4Yzg5MTFkMmM0ZWVhYmFkY2YxZDc1MTliM2RlNDQ2YjIgbGVnYWN5LXRydW5rCisxNTI4NSA2ZjczODQ4Yjg0NTIxOTE5M2YwZTBkMmJhZTBjNWViMGFkMTliODY5IGxlZ2FjeS10cnVuaworMTUyODYgNWFlODViZGM1ZjYxNjUwYTU0ZGQ4MWY4MWEzYjM4MDYyMWFjMzMzZSBsZWdhY3ktdHJ1bmsKKzE1Mjg3IGMwYWRiYzljYTU4MTMxOGQ2NDQyOTg2Y2RjMzJhYjRlNDY2MjZkMjAgbGVnYWN5LXRydW5rCisxNTI4OCA1NDBkOWJiMTY0MzlmMDdiYWNlMDdhZjdhMzg2MTQ0MmI2MmU1ZTRjIGxlZ2FjeS10cnVuaworMTUyODkgYzJiYjVlNGIwNGE4OWQ2M2Y3MDI4NDM0MjRiNmZjMzY2MjVkNTJhMSBsZWdhY3ktdHJ1bmsKKzE1MjkwIDg0Y2Q1MmI1NjBlNTcxZWJhMzcxZDcxMzZhYmNjOWM0MmMyN2IwMDIgbGVnYWN5LXRydW5rCisxNTI5MSA4MmNiYjJkZmU4YmRiMjdiZTEyMzcwYmRhODMwYzkyNzU2MDQ4ZDQ0IGxlZ2FjeS10cnVuaworMTUyOTIgNTIzNTY1NmY5ZDBmMGUyMmRjZDExM2E1MDg4NzFmYjYwY2E1MjA5NCBsZWdhY3ktdHJ1bmsKKzE1MjkzIDE4OTI5OGExZmFiNGMyMjMyODZmZGQyNjg3NzkzM2UxMWU0MWU4OTAgbGVnYWN5LXRydW5rCisxNTI5NCA4YTUwMzY1NDQ3Mjc3ODgzNWYxYjVmYjJmY2U3MTMwNDIzYmJiMmRiIGxlZ2FjeS10cnVuaworMTUyOTUgY2MwNWVkY2NjZjUyYmEzN2FmNTJkZTQ4MDY5ZjY4MjM1MmM0MGFlMiBsZWdhY3ktdHJ1bmsKKzE1Mjk2IDdjYzNkZDdjZDMxYWM2YTVjZjgyNmZiMGJjODNkNmRmZmMzOTZjMjEgbGVnYWN5LXRydW5rCisxNTI5NyA4NTllNTAwZjA3NjAwNDYzZDU3ZGJiOWY2Njg3ZTYxMzQ5YTc2NmY1IGxlZ2FjeS10cnVuaworMTUyOTggZDc0ODRhNzQzMzU0MWFhOTc4ZjA0MzcyNmJjNzlmNTIxN2RhMjAwOSBsZWdhY3ktdHJ1bmsKKzE1Mjk5IDgxYTEyMWQyMTM0MDgzZmRiYmYzMjZlNjE3NGYxMzc5N2IzNGEwNGYgbGVnYWN5LXRydW5rCisxNTMwMCBjMzRiYTNlM2NmY2QzODUwZGNjNDE3ZTZiYmE5YzdiNTcyODk5NDRjIGxlZ2FjeS10cnVuaworMTUzMDEgNTllZTE3MTI0NTExNTljOTE4YWQyOTg2NjRlOTdkODFiNGVhMGU0NyBsZWdhY3ktdHJ1bmsKKzE1MzAyIGM4ZGJkNWY3MDI4OGI4NDljN2UwYWY5MzM3ZWM3YTA4NDYzNmM3NTIgbGVnYWN5LXRydW5rCisxNTMwMyA1OTliZmE0ZmZkNDljMTQ1OTRiY2I1NDQyMGMwYjQzMWQxOGE3NzQ1IGxlZ2FjeS10cnVuaworMTUzMDQgNmI2NDdlMDg3OTI1YWI3NzM4ZDQxZDU4MThmYjQ4YmQ0N2M3YjM4NyBsZWdhY3ktdHJ1bmsKKzE1MzA1IDc2OWVkYjJkYThiOTNmZjdhMjE0YTgyYTAxMWJhMjQwNWFmMGFmMDYgbGVnYWN5LXRydW5rCisxNTMwNiAxNzdlNjFjNTU0MjZkYjQxNjY4MmY5YTY3OGNiNDRhYzYxN2VmNjEzIGxlZ2FjeS10cnVuaworMTUzMDcgM2U2ZThmNzZhOTg4MzgzNjM4ZGM4NzU4N2FlNGM4YjMxMDk0YWU2ZCBsZWdhY3ktdHJ1bmsKKzE1MzA4IGVmZDFlNWQyMjg0YWY1NGVhMzNmMzM4MWUwM2E2MDRiYzk4NzI1Y2UgbGVnYWN5LXRydW5rCisxNTMwOSBkYzlkMWI3MWNjMzgwYzZmN2VlNTg1NzJlNTQ2ZWI2OGEwYTgyNWRiIGxlZ2FjeS10cnVuaworMTUzMTAgYmVmNjc1ZGMxMWNjMGJjMTg0NDcyZGY2NzBmNmZkN2NhY2U2MzRhZCBsZWdhY3ktdHJ1bmsKKzE1MzExIDY2ZTQ3ZTg1ZWM1M2I1ZWJhODdiMDBhNWVlMTBjZTdjMWUyNWJjMzggbGVnYWN5LXRydW5rCisxNTMxMiAxMmM3NGIxMDJkMDI3ZDdkYjA2ZTNhMmEwMzAzOWQ1Y2VjY2IzNjEyIGxlZ2FjeS10cnVuaworMTUzMTMgOGY3YjI0YjQwZGU3MzYxNzNhNDNjNDkxMzRhMDU0MTdlNjMyZWU5YSBsZWdhY3ktdHJ1bmsKKzE1MzE0IDA0Y2Y3ODhkODYyYmUwNmFhOWZmZjhkOWYxZjJlNTQ4OGQ5MWQ3MDggbGVnYWN5LXRydW5rCisxNTMxNSA3ODM4MGRmYjJhOTA2ZGFlMjZkZDBjYmQ0ZTllMTNhYTc3OWEwOTNhIGxlZ2FjeS10cnVuaworMTUzMTYgOWE4NDFkNjg0NTNhN2M4ZGVlZjUyMTljZDMyYTY3MGI5MDRiYTNlZSBsZWdhY3ktdHJ1bmsKKzE1MzE3IDRkZjg0NjJhMjU5ZGViODgwZjJhNzhmNGM1ZTQ2N2Q4ZDExNGUwMWIgbGVnYWN5LXRydW5rCisxNTMxOCAzYjhkOWU2M2U0ZTE1N2I3MTVlNzk2OGE4NmZhNGJjNGM5ZDg3Mjk0IGxlZ2FjeS10cnVuaworMTUzMTkgMzhkNWExMWQ5Y2Q0YjAwMGVmNjFhNDE2N2ZhNjY3ODczZWI4ZTg5NiBsZWdhY3ktdHJ1bmsKKzE1MzIwIDdiOGQwYTQ3ZGFhOTdiNjY2MDBkOTI2ZjJlYTc1YmE2NGM3ZjUyNWUgbGVnYWN5LXRydW5rCisxNTMyMSA3YjBlMGI1ODY3ZTJkMzk2NjEwMzNiY2I3NjM1ODMzOTI5NGJmOTZkIGxlZ2FjeS10cnVuaworMTUzMjIgYjg3ZDc1Nzk4ZDgxNmMzMmExNGNjZWZlMTgwYmU2MjhmYmRlNWM0ZiBsZWdhY3ktdHJ1bmsKKzE1MzIzIGIwYTQzNTBkNWMwMzEzNzg4MzQxMmFhZTRiNDI3ZjFjZjU3MWI1NDcgbGVnYWN5LXRydW5rCisxNTMyNCA1MzlhMWE5OWE3OGI0ODIzNmYwMGMyZDYyODNiNjFkZTI2MGFkYWNlIGxlZ2FjeS10cnVuaworMTUzMjUgMTllNjFiOGY0ZTAwNmNkZjJiZjY0OGI1NTE1ZWNlNmViOWVkMzliMyBsZWdhY3ktdHJ1bmsKKzE1MzI2IDFiZTIzMzE1ODhiMjM4YjNkOGZkODAyYzJjMzYxNDNhZjE0ODc4YzMgbGVnYWN5LXRydW5rCisxNTMyNyA2NmRkMjk4ZWFmOGE1ZDRhYTVmODJhNjY4YTJjODhiY2FiMjVjZWIyIGxlZ2FjeS10cnVuaworMTUzMjggOWE5N2E3MTRhMWJlMDMwMWVmYzVhNDliYWJiYWRhYWEyNmU4NTcxNiBsZWdhY3ktdHJ1bmsKKzE1MzI5IDNkYmU0MTM4MDI2NjYwODQzYTZkNmJlZjU0ZGNkMzk5ZjM5MTYxOWUgbGVnYWN5LXRydW5rCisxNTMzMCA4YmNkMTQzMTNjMTFjZGM5MTc2OGMxNjUwMWY3ZGNiZDVhM2MwOWQ4IGxlZ2FjeS10cnVuaworMTUzMzEgMGRmMThmOTQ3MjY3OGM2YzBjMzI0Yzg2MDc3M2M4YmIzNTNjMTc2NSBsZWdhY3ktdHJ1bmsKKzE1MzMyIDU5NTJlZjY3ODZjMjAwODMzZmNjM2IxZmFhNGM3MjkxNzFhMzkyMTkgbGVnYWN5LXRydW5rCisxNTMzMyBhZWU3YzQ0YmI0ZmU1YmVmYmVkZTdhOGY4YTQ2NzYwZjRmZTk2ZjU2IGxlZ2FjeS10cnVuaworMTUzMzQgOGJhOGI1ODU3ZTg5NzU2YzhhYjcxZGY3MzhhNzVjODU5YzVlN2YwNyBsZWdhY3ktdHJ1bmsKKzE1MzM1IGFmODZjZjg4MmQwZmZjMGQ2MWFlMTJjZjVlZjdlZWJlYzU3MTJjZmMgdW5sYWJlbGVkLTEuOTguMgorMTUzMzYgMWM3YzJkZDFiZWIxZjgxMDZhN2FmYTYxZDRiOGJhYmNjODNlMTc1NyBsZWdhY3ktdHJ1bmsKKzE1MzM3IGRjNzg5YjNlMmI5Yjk4ZDg0NjBmMDBlMWYxYzkxNWE0NWQyMjExYTUgdW5sYWJlbGVkLTIuMTA4LjIKKzE1MzM4IDg1ZjAwZjhjZDY3NGJiYzYzN2MxODFmZTVhYzc1YTgxNzBlNWFmNDEgbGVnYWN5LXRydW5rCisxNTMzOSAwNzc0NTZjMzI0YmM1OTg5MDE0OTBiYTBhNDUxNzcwMDVlNWMxMGY5IGxlZ2FjeS10cnVuaworMTUzNDAgOTc4MjUzNTQyMDc2MGNiZWU5NjBiODZjMTNmMzhhZDE3ZDk5YTc5ZCBsZWdhY3ktdHJ1bmsKKzE1MzQxIGUwYTEyMDk1ZmFjMmUxMDhkZDdkYzM0NjYyOGI3MGVkMGY0NWZmMzQgbGVnYWN5LXRydW5rCisxNTM0MiA2YWMzYTJjMDA0MGZjYjFkZmI0Yzg4ZDkyZWNhODZiM2U2ZDljMGE5IGxlZ2FjeS10cnVuaworMTUzNDMgMGJhYjFlMzZhM2E2YzIzZjczNmEwOTUxOTgwOWFlOTEzMjkwZGVhOSBsZWdhY3ktdHJ1bmsKKzE1MzQ0IGRiOTQ1OGMyYjYzMTA3ZjM1MDU2MWRhMmZmZmRjN2IzZDVlOGYxOWMgbGVnYWN5LXRydW5rCisxNTM0NSBjZGU0ZGExOGM0ZmEwOWFhZDgyMTlkNjU5NmYxYmZlMzk5N2IyMDczIGxlZ2FjeS10cnVuaworMTUzNDYgMGI5MWMzYjM4NGQ4Y2MzNmVkZDM0YWE0MzYxMzI4OGUzY2ZkNmQ4OCBsZWdhY3ktdHJ1bmsKKzE1MzQ3IDZjZTIxZTQ1YTk2ZWViYjg4OTVhODI4NmZiYTExMzJjNDhlMmFlMzMgbGVnYWN5LXRydW5rCisxNTM0OCA0ODVkNWVhZjBmNzU3MTA2ZjA0NmI0MmM5NzhlYTc1MjBkYTA5MDllIGxlZ2FjeS10cnVuaworMTUzNDkgNTQyNzRiZWIyNDRkMWQ5YjBjNmUzNGRmMjQzYzk3MzI4NGQzZTE3OCBsZWdhY3ktdHJ1bmsKKzE1MzUwIDJjYzZlNmRmZTliYjc1NjVlMzE3YjVmNmI3Y2FmMTE0ODU3NGUwNGMgbGVnYWN5LXRydW5rCisxNTM1MSBjZWY0NWYxYTc5NDMwNzhjYjA0ZGE1Yzk3MmYzNjU2NDgzYTAyNjE0IGxlZ2FjeS10cnVuaworMTUzNTIgZTQ0MjY2MmIyOGUxODkwMDE3MWViOWVjMzQ3M2M2MDU4OWM1YmEyMiBsZWdhY3ktdHJ1bmsKKzE1MzUzIDc2YjMzOTliMzY0Y2RkNjYxNDk4YzgxZmIwOWFmOGFlYzlhYmQ1NDIgbGVnYWN5LXRydW5rCisxNTM1NCBlYWVlOTI0ZWZiMTkyY2Q5OTQwZTAxOTZhN2JmYmI1OGZlYmFlZjJjIGxlZ2FjeS10cnVuaworMTUzNTUgNTI4Y2ZlODc5NjY1MjA3YTFlNGNlN2QwMjVkOTBhOTEzMjM4MzdjOSBsZWdhY3ktdHJ1bmsKKzE1MzU2IDA1YzA2NzE1NjU3YmNjNGUwOTI2YThjNTJjZWRhNzUwMzdiZTRjZGUgbGVnYWN5LXRydW5rCisxNTM1NyA1NjQyM2I5MzgwZjRmNzZiMzZjMDZjMmQyZGYzZjJhYzUzY2I4NGE0IGxlZ2FjeS10cnVuaworMTUzNTggNjI2Yzk3YWIxMjhjZmU5OTc2ODZkNjNlN2ExM2Y5MTc4ZGI3ODM0MiBsZWdhY3ktdHJ1bmsKKzE1MzU5IDkyZDFkZGMxYzU3ZmRiOWUwNmM2NDBhN2RkMmYyY2VhMWM1NmJhOTAgbGVnYWN5LXRydW5rCisxNTM2MCA2NDU1ZDhmYjc4NzYxZTY5NjdmOTdlZTBjNzY2NzljZTQwNWE1YjcyIGxlZ2FjeS10cnVuaworMTUzNjEgYjU3MGQ0Y2Q2NDBhYzM4ZGZlYmYzZTM2YTllOTY3MGFjZjhiNTU3NSBsZWdhY3ktdHJ1bmsKKzE1MzYyIDgyZjE3NmI3MDY3YjdjZjMyYzY2ZDkyZDk3ZjFjNmFlMjFhODk2MTQgbGVnYWN5LXRydW5rCisxNTM2MyBkZDYwNzhkMjBmN2Y4MmUwNWI5YjE4MzFmNzZkOWFhMDIzNmFmNzdmIGxlZ2FjeS10cnVuaworMTUzNjQgMzVjZGIzZDAzZmQzNTJjNTAwZGVkNTVjYzAxNzlmOTQ5ZTZmMjQxOSBsZWdhY3ktdHJ1bmsKKzE1MzY1IGI1ZjdhYjI3MjIzNzk1MzM0Yzk5NDAzMDBmMzRkZDE0NmI4NmI0MmMgbGVnYWN5LXRydW5rCisxNTM2NiBhMTExMjljZWVjYTVkZjY5ZTQ3YzFiYmM3YmFmZDBlN2ZmODk4NTc4IGxlZ2FjeS10cnVuaworMTUzNjcgNTEyNTNlMDhmNzY3ODgxMGNkZDE0MGQ4YTY3MWU5NWM0YjhjMmY2NCBsZWdhY3ktdHJ1bmsKKzE1MzY4IGE4YWIwOWVmNDhiN2FmNTVmNTc1NDZlOTc1NTI1MTkwNDk0MWIwNDEgbGVnYWN5LXRydW5rCisxNTM2OSAzMmJkNGJhZDEwOGJhOGNjYzRiNDZhNzIwOWFjOWNkMDg3YzUyYzVkIGxlZ2FjeS10cnVuaworMTUzNzAgNzFlNDIwMjk2ZWYxMTI3ZWU1NTE1MDRiMWU0ZDdiMTQyYjZmMjFiNyBsZWdhY3ktdHJ1bmsKKzE1MzcxIGMxOTVmYTE1NzU0MWM2MWNmZjdkODNkYjYxMzk3NzI5NjkxZTIzZDYgbGVnYWN5LXRydW5rCisxNTM3MiBiMzIwY2YzYTk4YjkwNmZkYWY3ZjU3ZjBhNzU2ZDUwMDAxYzhmYjJmIGxlZ2FjeS10cnVuaworMTUzNzMgNTY0OGRmNzQzOTVmOWI0MzdiZDlmYWMyNGM5MDBmNTRhMDk2OTlhZiBsZWdhY3ktdHJ1bmsKKzE1Mzc0IDgyMjhjM2FlOTEzMGFhODgwODNiNGMyNjY3MzY3MGRjMjIzNGYzMGIgbGVnYWN5LXRydW5rCisxNTM3NSA4ZDdhZDM4MThlYTZlNzM4YzVlOWNlODcwOWFjZjU3ZGIyZDJlOTYwIGxlZ2FjeS10cnVuaworMTUzNzYgNjcyMzNkZjEzMDM3M2U3N2UxOTJhMmI2NzNmYmVjY2UxMWQ1NDZkNyBsZWdhY3ktdHJ1bmsKKzE1Mzc3IDgxYmFiYmE1YmQzNGU5OWIzMTAzYTFjOTI4N2IwNGEzOTgyNWE1ODIgbGVnYWN5LXRydW5rCisxNTM3OCBkOWNmYTJlNmY3ODIwODUwNzgxNjdlZDAwYWNjMWNkZTVkM2JlOWYxIGxlZ2FjeS10cnVuaworMTUzNzkgY2M0MzUwYjFiOTFmYzk1MzcyMTdhOGM0MmFiNWQ1MTdiODIxNDFiOCBsZWdhY3ktdHJ1bmsKKzE1MzgwIGViNDkxNDFkNmUxMGYwNzU0NDYxZTM3ZjZkZDhlY2Q4Zjk0NDY1YjQgbGVnYWN5LXRydW5rCisxNTM4MSA5ZWE2YWU4Y2YwNWNiZWNmODliMTg0Yzc4MGNlOWNhZDI1NmI3YWEyIGxlZ2FjeS10cnVuaworMTUzODIgOGE4MmRkYWViYTZhYTE0MGFjMTZmZDczZjNkMmNhY2EwYWU0ZTc3OCBsZWdhY3ktdHJ1bmsKKzE1MzgzIGY3ZjlhNzQwZWQxY2I1ZDIzYjJkOTRhMTE4OTIwODIyNWQ5MDJlNzUgbGVnYWN5LXRydW5rCisxNTM4NCA5YTc3MjVlYTc4ZWIwYjBhNzExNDM2MGY3MjQ1NzBmZWU1NDMzNWJiIGxlZ2FjeS10cnVuaworMTUzODUgNmUwNzNiYTUxNDE0MmQ5OTAwNzUwOTkxNGFhNGRhOGE5MGFkYzc1YiBsZWdhY3ktdHJ1bmsKKzE1Mzg2IDExMWRjOTE2OGU0MzVjMmMyZTdmYTNiNDExZDU4NDc1N2Q3MzIyNjYgbGVnYWN5LXRydW5rCisxNTM4NyBhNmM4NDEzYjNjNGZmNTM4NmI1NTg3YjI4OTRiY2I0NGIzZDc3YzU4IGxlZ2FjeS10cnVuaworMTUzODggODdmNTk0NmM1NmY1NjZiNWZjMzcyMWM5N2U3ZjAwOGFlMzhjZGFmMCBsZWdhY3ktdHJ1bmsKKzE1Mzg5IGU3Yzk4YWYwMjA4NDkxZDljYzFjMzhkMmQ0MmIwZGFkNDY0Y2JlMGYgbGVnYWN5LXRydW5rCisxNTM5MCAzZWZlYWE3NTIxZTQxYjJmYWRkNjhkYjE4MTM5MWVhMTQwOWY1N2JjIGxlZ2FjeS10cnVuaworMTUzOTEgNTdkNGZjODMwOGUzZjE3Y2Y3MzJiMDcyOTY2MWQ5OWVlNDQxNTMwNSBsZWdhY3ktdHJ1bmsKKzE1MzkyIDEzMmUyNzE0OWY5ZjNkNjc4ZTFjYWUxM2ZmNDQ0NGYwNmQyYTAxNzYgbGVnYWN5LXRydW5rCisxNTM5MyAzNGQyYjUwZWZmMmViOTMxZDUxM2IwY2NlODRhMGI5ZDdjMTgzYTEwIGxlZ2FjeS10cnVuaworMTUzOTQgYTU2NzA3YjA3YjgxZGQ0NDE3YTQ2MWU0MTVlYjRlYWUzYjViYzQ2YiBsZWdhY3ktdHJ1bmsKKzE1Mzk1IGRkZjk4NmE5NzFiNTY4YTQyMmIzNWY0YzViY2JjZTgwYTc0NDkxYTMgbGVnYWN5LXRydW5rCisxNTM5NiBiZWEzZDc3MGJlMGFjNGVlYjBlNDVhYjNhMjkyMWE2ZDYwY2FlNWIyIGxlZ2FjeS10cnVuaworMTUzOTcgNzVkYTlkNjM1MzFkMzI1NzkwNDQ4NmVjN2JkZTc2YzQxNjBlYzQ0OSBsZWdhY3ktdHJ1bmsKKzE1Mzk4IDY5NDgxY2RlNTExZDg2NWRmNzE5YWMwZTY2NjIwYmUxZmIxOTFhNTkgbGVnYWN5LXRydW5rCisxNTM5OSBkZWY5NTkzNTI0MjJkMThkN2RiM2Q2MTliZDI4Y2UxOTllNThiYmI0IGxlZ2FjeS10cnVuaworMTU0MDAgOTE3ZDg0NWU2ZTVmMjFlNDk5ZTVlOTdhNTYyNTk5M2FjYmI1NTFjYSBsZWdhY3ktdHJ1bmsKKzE1NDAxIDNmMDZmNDc2NWJhNDIxYjJmZTc4NzU0NWJhNDJiNTFhNjlkMDVhY2QgbGVnYWN5LXRydW5rCisxNTQwMiAwMDRiYjIwZGIxMWUwODY3ZWM1NDAwOTczNmNlZTcwN2FiZDg4M2YxIGxlZ2FjeS10cnVuaworMTU0MDMgOTFiMmVjMjA3NjMzNDllZjQwZWEzMTI5OGNmYWMyMTljYjE2OTIzOSBsZWdhY3ktdHJ1bmsKKzE1NDA0IDA2ZmY5NjZmNjlkNTJmM2IwMzcwODRkNDNjYTVhOTlmMDMyYmM5MzQgbGVnYWN5LXRydW5rCisxNTQwNSAwMGFhNjNkNmQyNmVhMGQ1MDAyMTkyNzU2ODM2ZjViZmIzNWRkNzljIGxlZ2FjeS10cnVuaworMTU0MDYgYzRlYjcwZDI0YTg3M2ZjYzQzY2U1ZTE5MjNmMGQ1MjA0YTZjZjNjMSBsZWdhY3ktdHJ1bmsKKzE1NDA3IDE3ZDFhM2YxZjA4NWQ3YTY0ZTM2ZjUwYmQzMGY1MzRhNGE0OTJmNzAgbGVnYWN5LXRydW5rCisxNTQwOCAwMzVhYmI5MzAzMTdmM2RjODBlZDQ4M2YxYjI3NzM4NDQ4OTczYjM0IGxlZ2FjeS10cnVuaworMTU0MDkgMmE1M2Y1ZGMwNTkwZmRkODBiMDZiOWNjZDJjMGM3MzM5NTg4ZWE5MCBsZWdhY3ktdHJ1bmsKKzE1NDEwIGM5MjY2ODc2NmY1ZGY5YjlhZTM0MzIyN2YwMmY3YjYyM2Y5NjA2OTEgbGVnYWN5LXRydW5rCisxNTQxMSAxYjA4M2ZlZDlhNDhmM2I0ZTU1YTg4NGMxZDk2NDg1MGUwOTlkMDdmIGxlZ2FjeS10cnVuaworMTU0MTIgZmFhOThjOGYzZjQyMjUyNTlmNDA0MDQ5YmE5NzFiODFmZTJiOGQ3NSBsZWdhY3ktdHJ1bmsKKzE1NDEzIDg2NjM2NWI0NGYyMzc0ODU3ZDc5MWU2YzA2NGM4NzY5YjRhNjg2ZjIgbGVnYWN5LXRydW5rCisxNTQxNCAwYTMwODFkZTU1YTE4NTc4N2RiYzQzNjU4YmQ2MjkzOTViZTY4MzFhIGxlZ2FjeS10cnVuaworMTU0MTUgNmIxNDNjYTRmZDdmMjM0ZTA0NzJiZGYxNGM0NWQ0NTBiODdkYjA3MyBsZWdhY3ktdHJ1bmsKKzE1NDE2IDRjYzc0YmY4MGUwYmM3ZmIyODIzNzUxYmIyYjRhNTMyNTcwZDZhYzIgbGVnYWN5LXRydW5rCisxNTQxNyBmN2E4OTk2NDdjYjNmYjBmMDliOWRjMTQwOTViMDNiYjQ2YTYxMzI2IGxlZ2FjeS10cnVuaworMTU0MTggODA1YmI5MGFmMTRkNzEwZjQzZjE4ZmExNTA2YjVjMWY0MzMxNDk1YSBsZWdhY3ktdHJ1bmsKKzE1NDE5IGUyZTQzNmE2Mjg5ODE5MTIyMjkxYTJkZjc3ZGE1YzMzZGQ3ZmUzNTggbGVnYWN5LXRydW5rCisxNTQyMCBiNjU2M2Q5ZGYwNmQwNzJlMzIyOTM0MmU3ZjFlMDYxNmQxZjY3MjdlIGxlZ2FjeS10cnVuaworMTU0MjEgMDU0OTMzZmFmNzdhMTE3ZGRmMzc0NGJmYmY1MDA5OTQ2NmE2MDIxNCBsZWdhY3ktdHJ1bmsKKzE1NDIyIGI5MWZkYzI5YzViZDJjMGEzNmQyNDJkMzJmYzRlMmZlYzdkOWJhODUgbGVnYWN5LXRydW5rCisxNTQyMyBhYTlhNjM1YTZmNDc3YTg3NTk5YjliMmQwYjM1YTQ5NWU2OTZlNzQ1IGxlZ2FjeS10cnVuaworMTU0MjQgMWVhOGNmODg1ZjdiZDkzMWJmOGM1OWRmNjg2MTZkODYxMjE3ZDFmYiBsZWdhY3ktdHJ1bmsKKzE1NDI1IGI3Nzg5MWZhOTNiMGU0M2QwMzRjYzdjMzlkOTUwNTIwOWFkN2MzNWMgbGVnYWN5LXRydW5rCisxNTQyNiAwNTcwOTc3OTYxMjBiODYzY2Q4OGRkOGM2NTFmNmI4MjlkMzE0NmFmIGxlZ2FjeS10cnVuaworMTU0MjcgNGRmNTIzOTk4ZTVkOTQ5NzYzYTMyNzcyNzUyNjk1Y2RkZDFhNWFkNiBsZWdhY3ktdHJ1bmsKKzE1NDI4IDdkMDI1NWJlZTBmOThhODEzZGE1NzA5MGY5MDhhMGU3MzdmZDUwNGMgbGVnYWN5LXRydW5rCisxNTQyOSAwNmEzNDZlYjNjYmYwM2IwNjVmZDExYTE0NGQ3NmZiZDU0MThhMjIyIGxlZ2FjeS10cnVuaworMTU0MzAgMmE2ZGM2NWMwNjBmNThkZDMwMWVhOGQ5OThjM2FhOWI4YWU3ZGFiZiBsZWdhY3ktdHJ1bmsKKzE1NDMxIDJmZWI5NzkwYjQwNDU2ZmVjNzM2NGNiYWRhOTY4MzU5Yzc3MGRhN2UgbGVnYWN5LXRydW5rCisxNTQzMiBhMDJlNmE0M2NhMTViMDk5MWUxN2M1NGJiM2NhYjY4ZDg5YjQ5N2Y4IGxlZ2FjeS10cnVuaworMTU0MzMgNDdiZGI2MzYxNTljODA1YTM1N2UyZWIxOGQwYjAxNjA5MjYwNTgwYSBsZWdhY3ktdHJ1bmsKKzE1NDM0IDU2NDY3NzMzMjBiZWE2ZGFkNjRiNTU0NTA4MDZhMjc1Nzc4MWE5MmMgbGVnYWN5LXRydW5rCisxNTQzNSAxMTZmYzQzMDVhMzliMTMyZWQyZWZmN2NmZGRhZWI0NTU5NDZhYmE5IGxlZ2FjeS10cnVuaworMTU0MzYgZGU0MzVhNTlhNGQ1MzU1NWQxNTFlMDQxMGYxNTA0ZWQ0OTI3MzgyZCBsZWdhY3ktdHJ1bmsKKzE1NDM3IDA3ZGMzZWQxN2RkNWQ5NWI2ZTRlNmFmNTY4MzVjNWM4ZmRjYTVjM2YgbGVnYWN5LXRydW5rCisxNTQzOCAyMzQwNzQ1NDVlYjRlMTk3YTdmOGRlOGIzNTY1NGIzNTJkNDY2ZGEzIGxlZ2FjeS10cnVuaworMTU0MzkgODc1ZTY3NzIzNmE3MTg5ODgyNmJlOTgyMDQ2M2MxMmNjZWZmMGQyNCBsZWdhY3ktdHJ1bmsKKzE1NDQwIDhlODFjNmM1MjRiMjA1YWQ1MTMyNWY1YTQ2YTUyYmEyYzBkOWU1NWMgbGVnYWN5LXRydW5rCisxNTQ0MSBiODlkYTIwMmQxOGQ3NjljM2FhODNmNjk5YTNmYTBmMjk4NWFkNGMzIGxlZ2FjeS10cnVuaworMTU0NDIgYmRhZTZiOTA5MzRmNDZkZDQ2OGEzYzMwODk0OWJkNmMzMDY3MzcyMSBsZWdhY3ktdHJ1bmsKKzE1NDQzIDdjODllZTQwNzMwZjQwZTMwNTQ3ZmYwMzdmYTVkMDExY2VjZmRhMzkgbGVnYWN5LXRydW5rCisxNTQ0NCAyZTFiMDQ4M2IxMDFiMzA3NjQ4MmNkN2NkNDUzZmMyYzA3NDMxOGRiIGxlZ2FjeS10cnVuaworMTU0NDUgMzRmMDkwNmZlODIzNDg0NjE0ZGI5ZmI1YTE2MjlmYjMyYjdiMmJlMSBsZWdhY3ktdHJ1bmsKKzE1NDQ2IGNiZjlkNjdiNWZjMWY1YjBhMzRlOWM0ZGZhZjZmMzhhNzAyMDliMWMgbGVnYWN5LXRydW5rCisxNTQ0NyBiYzk2YzkxMmRjZThjZDU5ZWUwY2Q4NDZkNzg1ODlmYjE2YjViMTM5IGxlZ2FjeS10cnVuaworMTU0NDggNmJhZDE2Nzg5Zjc5YjQ1MjUzM2QyOTE3NjA3YWY5MjI4OGY5YTcxZiBsZWdhY3ktdHJ1bmsKKzE1NDQ5IDljYjk2MDg2MDUyOGYzMzdmZmQ0MTUzZTdjNTg1MzQ4ZTk2OTQ3ODYgbGVnYWN5LXRydW5rCisxNTQ1MCAyMGIzYjk3NjVjZWM2NmJkYWE3Y2E0YmQ1MjQ2ZDgyN2I2MjcyOTEzIGxlZ2FjeS10cnVuaworMTU0NTEgNzI4YzE2MDUzMzY4YWVkYzYwYWQ2ZGI4M2ExMDRjNDBiMzU0MWZkYSBsZWdhY3ktdHJ1bmsKKzE1NDUyIDdiNDY2YTczYzk2MTY2M2U4YjhjMjQ3ZTgzOTg5ZmFiYjkyZDhlODAgbGVnYWN5LXRydW5rCisxNTQ1MyA0MjBmOWFhZjg4MGJkZTMxZGU0ZDEwYzg4ZjJhMWIzMGE1OTg4OWM0IGxlZ2FjeS10cnVuaworMTU0NTQgMWRlZTkzZWI5ZWUzMjE1YTdmNWZmNmFhZGQ2NzEyODU5ZTQ1NDhkNSBsZWdhY3ktdHJ1bmsKKzE1NDU1IGE5NDI2OWJkNjU4NTkxOTRhZDUxZGFlODM0MjQ4YzAwNjFhYzZlNzkgbGVnYWN5LXRydW5rCisxNTQ1NiBhNDhiNjBiNmViNDgzN2RjNjhlMzYxZjg3YzAzNzRmNjUwNTNlZDc2IGxlZ2FjeS10cnVuaworMTU0NTcgYTQ5ZTQ1MDY4OGUyZTBkNjgwNTNkZjBkOWVkZWIxZGZkMjMwODQyYSBsZWdhY3ktdHJ1bmsKKzE1NDU4IDkwMjgwMGQ4ZThiZTExNWU1MmU1YjI0YmIxOTFjY2Q3MTMwYjg2YWEgbGVnYWN5LXRydW5rCisxNTQ1OSBlYjE3MThjNWE1NmMwZGJlYTAzZmVkOTJjYmNlMWNmNGJjNjY3N2ZjIGxlZ2FjeS10cnVuaworMTU0NjAgZWU5NzJjYTY1YzFjMjMxNGFhMWFmNzhkNGYwNzE4MTRhM2U0OTkyZCBsZWdhY3ktdHJ1bmsKKzE1NDYxIDk0ZWRlMDRiOWE5ZWVhZGZhMjRjMTY4ZWUzYjBhNGFlYWFlNTk4MDcgbGVnYWN5LXRydW5rCisxNTQ2MiA5MGM3OTA2YjA5OTliNTFhNzVkOGRhNTFmNzU5ZWIzMDgxYjYyZTg4IGxlZ2FjeS10cnVuaworMTU0NjMgNThhZDYxOTZkODFmMmI0ODk5NTRlMTRmM2ZhYzcyYmYxYjU5ZDhiNyBsZWdhY3ktdHJ1bmsKKzE1NDY0IGY1NTVmZDgwNTA4NTVlYThjMTk5ODRmZGJiNzM4MmE2N2QyZWQ5ZjUgbGVnYWN5LXRydW5rCisxNTQ2NSA2MDU5YTkyNzlkOTk5NGIwNWRhNjBjMjJmNWFiYmY2MGY5ZTM5ZDhmIGxlZ2FjeS10cnVuaworMTU0NjYgN2ZmNWFlMTBhNzcxZDdjNmQ5ZmQ4OGIyZDUwOWRmNmIyYjYxY2M3MCBsZWdhY3ktdHJ1bmsKKzE1NDY3IDI5Nzc1YzI4NzIzNzhmNTQzOGRhN2U0ZTk1ZDhkZjI5YThjYjA5MzAgbGVnYWN5LXRydW5rCisxNTQ2OCA5YWJlZmM1YjFkODlhMmZiNjMxMmI3NGIwYzZhMDI4YmI0YmQ3NTY0IGxlZ2FjeS10cnVuaworMTU0NjkgMzUzMDU5OTE3MTliNTE3ZTI5ZGQ1ZjFhOWFhMTIzZTA4ODZlNzU2ZiBsZWdhY3ktdHJ1bmsKKzE1NDcwIDFiZjcxNGUwYzEwZjVhZGM2ZDI1MmFjZWIxOGZiZjc4Y2RjM2Y5YWYgbGVnYWN5LXRydW5rCisxNTQ3MSA5NDJjZTIyMTEyOGEyODMwMTU1MzBmNjkzNzdmNThjNDMyOWNjZjE5IGxlZ2FjeS10cnVuaworMTU0NzIgYjgxN2YxNjM5OTM5Y2ZkNDRmMzk2ZjZlYjZiMDRkZDU4YWI1MDA5MCBsZWdhY3ktdHJ1bmsKKzE1NDczIGJlNTVmNWRkYzYxNWJkMjE1YzE4NDZjZjUyMTIwODJiODhkZTVjM2IgbGVnYWN5LXRydW5rCisxNTQ3NCA3ZWZiYjRlNmFmY2E4MzBkYjFmZThkYWZkMjQ5MzgyYzZlOTVlOGY4IGxlZ2FjeS10cnVuaworMTU0NzUgOGRjYTU1ODY3OTk4YTU5MmNmMDljM2YzOTQ2OWQ3OWJiMDRhMTM5MSBsZWdhY3ktdHJ1bmsKKzE1NDc2IDZhZDhjZDM0YWQ4YzhmMWFjYjE4ZjJiZjU3YWJjZDkyMzAzNTMxOWYgbGVnYWN5LXRydW5rCisxNTQ3NyBhZWNmMzVmMGMxNmJhM2M5ZTkzOWEyMTIzMzQ1ZGUzZmY1NTI1YWM4IGxlZ2FjeS10cnVuaworMTU0NzggMGE2YWY1OWViZmZkOTNhZDViODliMmQwMTY2NTEyMGQ5OTRiMzBjNCBsZWdhY3ktdHJ1bmsKKzE1NDc5IDUzZTU0YmQ0ZTVmNGFjYjFiYWY1OGU4NGEwMjMyNTQyZjk0ODMxNjMgbGVnYWN5LXRydW5rCisxNTQ4MCBmZjgxYTY1ZTBhOWJiMjIwNjdmYzZhNWY0YzNjY2ZhMDg1ZDRiZDNiIGxlZ2FjeS10cnVuaworMTU0ODEgMmVhOThkOWRjNjY5NDQ5ZjY5MTdiYTk3YWY5MDNjZWRmZGY1NTUyNCBsZWdhY3ktdHJ1bmsKKzE1NDgyIGE1OThhY2UwMTk0MzljNTAzMzk1ZTk1NzhlODMwNDZmNTBjNGI5ZTcgbGVnYWN5LXRydW5rCisxNTQ4MyAwNTJhZmI3NDk1MmVjZmQzMjk4MGQxZTQ4MGMxNWE5NTA3YjNjNzQxIGxlZ2FjeS10cnVuaworMTU0ODQgZDA0MGNlYmQ3NGFjMmYyNTM1MjA3OTRmM2Y3ZDY1MzJkMGFjZTIyZCBsZWdhY3ktdHJ1bmsKKzE1NDg1IDJiNDk4ODM3Y2Q4NTg2ODY3NzFjYzI2YTkxOGMyNTU1YzY1NGE2NGIgbGVnYWN5LXRydW5rCisxNTQ4NiA0MGQ2ZDJmYzljZmZmNDc5NzIxNTZiZDFiZGYyZWFmMzhlODI0NjYyIGxlZ2FjeS10cnVuaworMTU0ODcgNWRkM2IzNWJmZDUyMmY4YTMwYzhmN2M3ODg1NDY0YjgzZDcxMTMxZSBsZWdhY3ktdHJ1bmsKKzE1NDg4IGNlM2RlMjk0MzYyYjhhODUyYmIxMDcxN2JiYzc1Nzk1MWY0M2RjNzUgbGVnYWN5LXRydW5rCisxNTQ4OSA0ZmQ4NDU5MjJjNDlhZTBlNGNlOTIwZTg1NWZkN2UzZmE3NWRmNjhlIGxlZ2FjeS10cnVuaworMTU0OTAgMjRhYjg0ZGM0MmFiZjA5ODQwYTZjNGRlMmNhYjFkMTY0Y2NiY2M5OSBsZWdhY3ktdHJ1bmsKKzE1NDkxIDE0N2QwYjQxNDRlYTE3ZGYwZjgwM2M1NDE5YjBkZGQzZjFkNDdkZDUgbGVnYWN5LXRydW5rCisxNTQ5MiA0MTE4ZjAwMmU3Mzc3MzJlZDA3N2YxZmJkZTdiOWZmMTc2MmYyMmY2IGxlZ2FjeS10cnVuaworMTU0OTMgNzk1NGZmOTNlZTNiYzY5Zjc5Yzk4YzRmZDMwMWFiMDFhOTY3OWI5ZiBsZWdhY3ktdHJ1bmsKKzE1NDk0IDgxMzgzMjIyMDk4YTNkOWQ0MThmYzJiZWRlNTM5NWFlZjBjOTI2NGUgbGVnYWN5LXRydW5rCisxNTQ5NSBjYWIyMmJjYmY1YjZkYzZhM2U5NGU0OGM5YzViZjhkMDEyNTI0ZDNkIGxlZ2FjeS10cnVuaworMTU0OTYgZDJkODY1ZDk1ODYxMjY0M2IwOTBjYmU2NTE4MGY1NGMyYTI1N2RjNiBsZWdhY3ktdHJ1bmsKKzE1NDk3IGQyNTczZGJmNjg1MjU0NDg3ZGM4N2I4ODdlY2RlNmI3MGY3NjRlMDggbGVnYWN5LXRydW5rCisxNTQ5OCA3N2E1YTE0Njk1YjMyYTllMTc3YTI1NDcxZWNkNGQ0ZTRlN2VkOWQ4IGxlZ2FjeS10cnVuaworMTU0OTkgM2QyNmNiMzgwOGE3ZDIyMGRkZjdjZjEyNGE3NWQyZjk3YzM5NmE5YiBsZWdhY3ktdHJ1bmsKKzE1NTAwIDE4YjAzNTY1MDVhNWE0YWMyNjc3ODQ4YmZiNTY0ZTdmZjdiNDk1ODEgbGVnYWN5LXRydW5rCisxNTUwMSA4OWY0MjA5OWM1ZGQ2ZjQyZjQyZTQyZjRiNjBiOWM2ZjRjMjUwN2UzIGxlZ2FjeS10cnVuaworMTU1MDIgYjUwYmY3ZDM5NjFmODdlNTZhMjhhY2JlMGY1OWQ5OTBhMjZlYzc3YSBsZWdhY3ktdHJ1bmsKKzE1NTAzIDU3MGZhY2I3M2UzNjRmNzc3MjU1ZjYyZmU5NDg5OTAxNWRmNmUzMTEgbGVnYWN5LXRydW5rCisxNTUwNCBlODc4YTY0N2UwNmVhZjkxZmM0ZDgzNDQyZDVhMDkwNzQ3ZjRiMjY1IGxlZ2FjeS10cnVuaworMTU1MDUgZWVhZmFiOGM5MjViZTY4NDRmZmI1M2Q4MDFhMWZkYTgxNTgxN2NkMyBsZWdhY3ktdHJ1bmsKKzE1NTA2IGRhZDIwNWQxM2JiNTlkYjYzNDI3OTJkZDBhNDJiYjBjMDBkMGMyNDggbGVnYWN5LXRydW5rCisxNTUwNyAzYzMwZjdiNTEwZDM0MTM2ZmE2YWQzNzZmZGE0OGI1NmY0NWQwODA0IGxlZ2FjeS10cnVuaworMTU1MDggNmM2ODQ0YTJmYTMwNGYwMjAzMGQ1NjgxMjliNGQ5MjI1OTExNjQ0OSBsZWdhY3ktdHJ1bmsKKzE1NTA5IGViNTYyZGYwY2ViZTBlZmVmY2YwZGY2MjBiZDgyMGM0YzhmNmUzYzYgbGVnYWN5LXRydW5rCisxNTUxMCBiY2U0OWE2ZmE4YjllNWJkMjZiMjNlNDU5N2RkOGMyNjQxZGZjNThiIGxlZ2FjeS10cnVuaworMTU1MTEgMjQ5N2UxYzllYmNlZWE3MTg4ZTM4NWJiYTlhNjVjNDNjNzRlMzZkNyBsZWdhY3ktdHJ1bmsKKzE1NTEyIDJjMmI0MGViM2E2NTQ2MzE5MDczMTE0MDc2ZGNjNTNmMjUwZjFjYTQgbGVnYWN5LXRydW5rCisxNTUxMyA3YjQ5MzM0YTYzNjk2YWNjNGM4M2RkMDdkYjkxZTZjMjYxZWE1OWM3IGxlZ2FjeS10cnVuaworMTU1MTQgODZlYzc1ZGFjMjcyYmFmYzdlNmFkZDk5NzM5YWNjYzFjY2NlYjFmOCBsZWdhY3ktdHJ1bmsKKzE1NTE1IDUyMTNhYmZlNTIzMGJlYjAzZmMxOTk2MDEwMTc2NTcwNDg4YWJjNGMgbGVnYWN5LXRydW5rCisxNTUxNiA4ODlmMmNiM2Y3MmFhZjgyMDk2MzU5MTJiNmVmNjdjZGUyOWUwMjU4IGxlZ2FjeS10cnVuaworMTU1MTcgZWNkZGIyZWQ0Yzc1NmE3NWNkYmRmZjRhNzdhNWFhYjg1MGU3OThmMSBsZWdhY3ktdHJ1bmsKKzE1NTE4IGYwZDIyNTNiNjY0ZjU4ZDNjYTQ5OWIyYTJlNTczODkxZjQ3MjI2YWUgbGVnYWN5LXRydW5rCisxNTUxOSA0MDZiMGUyNGQ2MmU3M2Y4YWI4YjRlNTZmNTlkMTM0NzBhZTZiMzFhIGxlZ2FjeS10cnVuaworMTU1MjAgMWRlMDAxN2UxMjI2N2IxMDExOTM2ZjU3MWYzMDZjODBiNzczNzkwOSBsZWdhY3ktdHJ1bmsKKzE1NTIxIDBmMWU0ZTM5MzVkN2M0MDAzOGJmOWQyMDAwMGM5MzkyYzRlYmVkMzEgbGVnYWN5LXRydW5rCisxNTUyMiBkYTAyYTg5MmQ2MTE4NjQ1OTY2OTcxMzY5OWI3YmRmMTNlMTljMjE0IGxlZ2FjeS10cnVuaworMTU1MjMgOWUxYjgwNTBkZTYzYTQ1ZWE0ZDIwODNjOGIxMjdmMTJjNWVhOGU4YiBsZWdhY3ktdHJ1bmsKKzE1NTI0IDNjMTQ5ZDM4YWJmOWZjNDg5Zjk0N2Y5OTU0OThiNjM0NTYyZmFlYmEgbGVnYWN5LXRydW5rCisxNTUyNSBjOGE5ZDE3NjY0NjVjZTVhZmJlZTljMDA5OTFiNzkwOGY2YWIwYTY2IGxlZ2FjeS10cnVuaworMTU1MjYgZTBlZjYyMmY4YzIzY2U5NGVjMjlkYjU5MGM0Y2NkYmExOTkwOTc2OSBsZWdhY3ktdHJ1bmsKKzE1NTI3IDk2NzczMmRkM2Y5NTliYTg2ZjE2ZmVkOGQ5Y2I5ZTU5ZWQ5Njc3NDAgbGVnYWN5LXRydW5rCisxNTUyOCA5Y2JjYWQyZTg3MjM4NDU5MWNhOTZjZmE2M2I5YTljZDg1Y2MyMjM3IGxlZ2FjeS10cnVuaworMTU1MjkgYjVhYjQ3MzY1YmFkNjU4YWMyMGEzYTkxZmE3YjhlYjExYTFmMWExYSBsZWdhY3ktdHJ1bmsKKzE1NTMwIDI2M2NkZjljODQyZWU3NGQ0MWM1MDQ5YTZmNGRhOWRiMTU3ZjQzNjEgbGVnYWN5LXRydW5rCisxNTUzMSBmYjQwMzliMWNmOGQ3NWYxMmJkNWY5Zjg4MGVlOTYxYTc5Y2I0YzA1IGxlZ2FjeS10cnVuaworMTU1MzIgNTJjNmFjMmQxNmE4Y2FlZWI4MDc4NjYxMmU4Y2IyNDY2Mjk5Y2NlZiBsZWdhY3ktdHJ1bmsKKzE1NTMzIDdhNGY2NDAyYzY3Zjg4NzVjNjZkZjgwMjQ5NTljMGM2NjI0NmJiYzMgbGVnYWN5LXRydW5rCisxNTUzNCBiMDY5NGMxYzEyODdkOGI2ZGY5MzlhMzUzZGE3YjFiYWRkMjUxYjQ0IGxlZ2FjeS10cnVuaworMTU1MzUgNDBkYjkwOWNlMmUzMmFhZjZhNzRlODI5YmFhNjU0MDI2NjQzNDljNiBsZWdhY3ktdHJ1bmsKKzE1NTM2IDhlMmIzNWQzODZhYWNhYzc2ZDc5NTRjZDZjYmEzZGUyMTZiZjg0ODYgbGVnYWN5LXRydW5rCisxNTUzNyAzNDI5NDdmMmZiNTE0MzFkODRiNzQzMzQzYTI2MDkzOGI4YjFjODQ0IGxlZ2FjeS10cnVuaworMTU1MzggMzhkYTg2NGEwYzgwNjZhYzVkMjg0OWYxOGVkNDhhNGUyNTRiNGVmMSBsZWdhY3ktdHJ1bmsKKzE1NTM5IDAyNjNhOTlkMGViMjg4OGRjOWE5N2NjZDhmYTNlM2I4MTE5OWQ1ZmIgbGVnYWN5LXRydW5rCisxNTU0MCAwNTcwZGU5YzgyMDJkNWJlMDYzY2VmZDE4ZmYwMDYwOTVhYmY3YmEyIGxlZ2FjeS10cnVuaworMTU1NDEgOTMzNWRhYTlkZGQzYjAzODYyNjE0YjIxZTNkZjFmYzFhMGExYWFlMSBsZWdhY3ktdHJ1bmsKKzE1NTQyIDkzNmVmZGMwMWQ1MjQ2OTBmZTIxODhiMjkxMTNhZmU4MWU2MWUzZDMgbGVnYWN5LXRydW5rCisxNTU0MyA3NzFiM2UxYTc3MWM4Zjg3NzQzNDA1Nzg3ODFhMjIxYzE2Y2M1ODQxIGxlZ2FjeS10cnVuaworMTU1NDQgYjkxYjM1YzFkNGMwMDhlZDhiOTlmOWE5YzA3MTllYjkwZTViNjYwMSBsZWdhY3ktdHJ1bmsKKzE1NTQ1IDUzOThiMThmODMxOWQxZTQ0ZmU1NDI2YTZkZGI3MzFhY2JjNWVmMjggbGVnYWN5LXRydW5rCisxNTU0NiBmNmU3MzBmNjViY2U2MmViZjk1YzgyYTU3YTk5MmJlNmRiMDBlMjdlIGxlZ2FjeS10cnVuaworMTU1NDcgZjc2OGQ0ZGFkOWE2MmEzN2VkYzBmYzc4ODc4NGQ3MjY4OTEwMDRjZSBsZWdhY3ktdHJ1bmsKKzE1NTQ4IDZmN2RmOTg1YTgwYzQ3ZDYwYTNiYjUzYWVlODk5N2JhOGMxOWFmODkgbGVnYWN5LXRydW5rCisxNTU0OSA4MDA0ZDI5Yzc3YjhiZDI5NjI5ZTA3Yzc4YzRjMjMxMTNlMmEwNDdhIGxlZ2FjeS10cnVuaworMTU1NTAgZjBkMDM2ODljMWFlMDA0ZmY3ZWMxNjI5ODNhNGNmOWZhMDA0ODE2MyBsZWdhY3ktdHJ1bmsKKzE1NTUxIGY4YzFjNWI3ZGM5ZjRiOTczNzA0NmNiODc0NjkzYWVlYjdhYWYyMTMgbGVnYWN5LXRydW5rCisxNTU1MiA5MzdmOTg1OWM5ZGUxYjY5Njg4YzQ0ZjZhOTVmNmU2N2NiOTVjOWM1IGxlZ2FjeS10cnVuaworMTU1NTMgNWNlNDJlMDdhZmQ4NWFlOWNmNzhkODQ3NTQ1NDQxODIyMWY0MDA3NiBsZWdhY3ktdHJ1bmsKKzE1NTU0IDUzOTc0NDUxZTMxZjExNjY4ODI4ZGU5NmFjODAyM2MzYjBiZTQ4ZTkgbGVnYWN5LXRydW5rCisxNTU1NSAwNzQ4MTlhZmRjOTVhYjFkMTYzMjQzMGY3NzMyODYzMDE1ZjI1MTI2IGxlZ2FjeS10cnVuaworMTU1NTYgZWUxMTkwNTFkZjc3ZjQxNWRhZWI1YjkxMTE4OTZkZDIyZjgyYjQ3MSBsZWdhY3ktdHJ1bmsKKzE1NTU3IDVjMGVkYjM1MWMwNzI3OTE4ODU0MGM0ODhlNGQ5MDRhZTQ5ZjYzNDIgbGVnYWN5LXRydW5rCisxNTU1OCAwOWY3MGY5MWJkYWUyZThmNWFjOWFlMWIyYWQ3NmRiNDBiZDFmMGY3IGxlZ2FjeS10cnVuaworMTU1NTkgODhkMGIzMzgzZmUyNTU2NDM5ZWUzMDY1MGYzNzZhNGMxMGRmODE4YSBsZWdhY3ktdHJ1bmsKKzE1NTYwIGQ4MWM5NWRkNDAzOWRkYThmNWFkNjk2NTMxZmJjYWIwNjljMzdjMjcgbGVnYWN5LXRydW5rCisxNTU2MSAzYWFiMGM1MTkwMDkwYWY2OTYxNWFkOGNlMzE0NDQxNGU2ZjAxNTFhIGxlZ2FjeS10cnVuaworMTU1NjIgZWVmMmI5MThkMDdhYzg2OTI0ZGIwYWU1MDJjYmI4YTFhODYxYWRlOCBsZWdhY3ktdHJ1bmsKKzE1NTYzIDMzZGRjMTJkZjI2N2Q4NGQxMDgzMTIyZmQ3YzBiODExY2RlNTA4ZjcgbGVnYWN5LXRydW5rCisxNTU2NCBmNmQ3ZTMyODY2MDkyNjExZDQ0M2E2MmM5NzkwYTM3Njc4NDdkMzYxIGxlZ2FjeS10cnVuaworMTU1NjUgM2JlOTJjZWYxOTE3NDQ5OTZmYjAwYmY3NmZjOTgzZjVmMmUyNDYyZSBsZWdhY3ktdHJ1bmsKKzE1NTY2IGUzNmJlN2ZiNzZjY2M3ZmJhZjg0MDJjNDY0NjJmZjFlMzJmOGY4MDQgbGVnYWN5LXRydW5rCisxNTU2NyA1ODNkZWY4Y2VkZjQzMTBkYzFkMTVlNmNlYzdhMWJlOTRmNTI2YmMzIGxlZ2FjeS10cnVuaworMTU1NjggYmNlNTNiMTQ3MjFlOTE5YmM5NTIxZWZjMzc4NTgzMjAyMDU5NzBhNyBsZWdhY3ktdHJ1bmsKKzE1NTY5IGJjMWZlOTU2MjM5OTgzZjIyZWQzNmZhM2RiYTZjNmZkMDdkMDRjMWUgbGVnYWN5LXRydW5rCisxNTU3MCAyNThlZWQ0NTcwY2U4OTBjMTBmNzM0N2Q1ZTA2YTljZDczYjlhZDk3IGxlZ2FjeS10cnVuaworMTU1NzEgNzExYjMyOTYwOTM0N2Q1ZDI3MDY4MWY5NTQzYmI2MzgyMjZlNWIxYSBsZWdhY3ktdHJ1bmsKKzE1NTcyIGIxMmFkYTJlYjMxMmIwNmQwMzllMTQwNzEzMjEzOTczY2M1ZGZlYzAgbGVnYWN5LXRydW5rCisxNTU3MyAwYzIxN2U1ZjA1NWI3NmU0OTBiMTgyM2U0NjEzYTA2YzRkMzdkODNmIGxlZ2FjeS10cnVuaworMTU1NzQgZjFmOWMzMGE0MTU2OTU3NDhiOGQ5YjU0MDQzNzE1OTI1MzFmZDAxZSBsZWdhY3ktdHJ1bmsKKzE1NTc1IGIxYjI2MGEyZGU5ODdlODc4NTM5ODE3NzZhM2RkZGQyODZhZjBiM2UgbGVnYWN5LXRydW5rCisxNTU3NiBmZjBmNzI4MWJmYjg0YmMyNjQ0NDQ4ZjgyYjgwNGZjMjUwN2MxMTcyIGxlZ2FjeS10cnVuaworMTU1NzcgNDI3MmIzNjhiZjY5ZjZjZWFhM2ZlN2Y5YmIxOGJiNWM4NTU2YmViYiBsZWdhY3ktdHJ1bmsKKzE1NTc4IDVmMWY4ZGRjMmEwY2RlNDlhODdlOTM3OGVkMjUxOTkyMzI5MWE3YjMgbGVnYWN5LXRydW5rCisxNTU3OSA2NjY3ODIzMjZkNDJjMGRiMzViMDEzMTJhZTYyYjkwNmQyZTVjODI4IGxlZ2FjeS10cnVuaworMTU1ODAgYTI0ZDlhZDY3ODZkNjYzOTI2NjFhYTI1NmQ2YzU4YWE0ODQ0MjZiZiBsZWdhY3ktdHJ1bmsKKzE1NTgxIDM1ZWE1ZGUxZWU4M2FiNWY1Njc5YzIxNzIwNTBkNThmNGY4YTRlNGUgbGVnYWN5LXRydW5rCisxNTU4MiBmMmRiNjA5NDNkNmI4MzFiOTQyZmYwNTRkZjc2NjAxMzViMjlhMDEwIGxlZ2FjeS10cnVuaworMTU1ODMgNzIzZGYwYzgwMWQxZGM0YTVhNWY3NWY0ZWRlMmFkZTE2YjZkOGE1ZiBsZWdhY3ktdHJ1bmsKKzE1NTg0IDJjN2E0N2M2NGUzMDZlNmNhYTJmZDgyNWM4ZDQwMTBlNTJlN2RjZmMgbGVnYWN5LXRydW5rCisxNTU4NSBiNTMxOWY0MjI1OTEzZjA0MDE2NzU5YzFmMDJlZDNhNWI3ODM2NjQ4IGxlZ2FjeS10cnVuaworMTU1ODYgYzkyOThlYzYzN2M1YTYxMmQ3NDlkMjk5NzlmODYxOTE4MjU0MjczNSBsZWdhY3ktdHJ1bmsKKzE1NTg3IDdkMmEwMDYzZTI2ZGZmZWJlMmQyNTNhMDIyNzllYWEwMDIwOWFkNDEgbGVnYWN5LXRydW5rCisxNTU4OCAwNDc3NGQ2MjJlYTJkZTIxOWJlOWE4NWMyOTE5NTQ5MmVhNDUzZDVlIGxlZ2FjeS10cnVuaworMTU1ODkgNjJhZDM1NzA4YjhjNmY3NzAyMmM5ZDRjZmQ4ZGU2NTAxY2M1YmFmMyBsZWdhY3ktdHJ1bmsKKzE1NTkwIGFmMzhhN2E3YWYxMGI3NmMzYWE4NzVkMzAyYTNkOTI0YWZlOGE4YTYgbGVnYWN5LXRydW5rCisxNTU5MSAyZjYwNjg2N2FiNGU3YjA2MTc5ZGUzMDQ5ZTYxM2M1OTI1N2JkOWJhIGxlZ2FjeS10cnVuaworMTU1OTIgMWY1MzEyMDhiZTExNzNiN2RlMDNiMDQ2MmVlNTc4MTM4OWQxN2EyMCBsZWdhY3ktdHJ1bmsKKzE1NTkzIGI5MGQ2MDFkNGQ1OTNhODJmNDg3YWM4YmU1MDAxMjkzMjQ0YjhjMDcgbGVnYWN5LXRydW5rCisxNTU5NCA0MWMwYzYwZGNhZjVmNTI5NmE2MzVjY2Q1YTM4MDkwNjY2NDIzYmI5IGxlZ2FjeS10cnVuaworMTU1OTUgYzJhMGYyYTgxZmE4YTliNWE5Y2UyMzVkZTk3NTEzYTA2MzNiZGExNyBsZWdhY3ktdHJ1bmsKKzE1NTk2IGJjMzU2NDdmZTQ3MjljMWIzNTY1ZmE1MDg2OGQzZDhlOWRjYjMxYmQgbGVnYWN5LXRydW5rCisxNTU5NyAzZmUzMDQwNTA0MzRlM2EwMDY2ZDc5OWQyNWNhMGM5NDhhNjc2ZmJjIGxlZ2FjeS10cnVuaworMTU1OTggNGU5ZWI4NjZhYWM2YTU4MzVkNzFkZWJhY2NmMjU1NzRiODc3NjgzMCBsZWdhY3ktdHJ1bmsKKzE1NTk5IDE2MTU1OTg5ZmE5MzJhNjIxODFkYTUwYjkxZGRiOGQwZWU5MDg1YmQgbGVnYWN5LXRydW5rCisxNTYwMCBiNGJhMzJiYjc1OGJlYzNjODhkMDg4OGRkNDRkZGJiMzcyOGM3MjFkIGxlZ2FjeS10cnVuaworMTU2MDEgMzkxMmZiNmM2M2Y2MTMzZGJmYjQ2YWNlNTZiYWM2ZjVjNWI4OWE3OCBsZWdhY3ktdHJ1bmsKKzE1NjAyIDY0NWQ1N2VmMTYzOTU2NzNjZjY3ZTFiNThhZDI2OGQ4MDUyZWY2NWMgbGVnYWN5LXRydW5rCisxNTYwMyA0ZTlmNzcyNGFjNTU5NTAyYzU0MDcwMTA4M2IyMDllZGIzNjUwYmM3IGxlZ2FjeS10cnVuaworMTU2MDQgMDQwYzEwOTdjZDM1MjQ0ZTk5ZmU2ODhjNGY0Mjg5M2JkOWY1ODlkMSBsZWdhY3ktdHJ1bmsKKzE1NjA1IGFmZDdjYmUxYzQ5MmY2MzU2ZjlhN2QyNWE1ZjA1YTVmMTU4ZGRkMzQgbGVnYWN5LXRydW5rCisxNTYwNiAyMjlmZDNhNWFmYTA4MWQ0YTI0ZjdhYTU4N2I3NzhlMDI3NzBmOGFkIGxlZ2FjeS10cnVuaworMTU2MDcgYjU4YjkwMzNjNjVhNDJlYzAyNzI2NDc0N2EwNWQyMDVlM2YzNjg2YyBsZWdhY3ktdHJ1bmsKKzE1NjA4IDQ5MTZkNDBkOTY3NzZhOWM4NDRjODAzZjlhMWIzZWVkY2FiNzcwOWEgbGVnYWN5LXRydW5rCisxNTYwOSAwNTdhZDg4YWFlOWE2MzU5NzNjODgyZmE1YjgxYzgxZmU5NTQ0OTRmIGxlZ2FjeS10cnVuaworMTU2MTAgNTk0YzI3Yzg3MGFkZWRmZWRmZTYzYzYyMGMyNjM0NzNkOTgwMWEyNCBsZWdhY3ktdHJ1bmsKKzE1NjExIGE5MmFkYjc4MGY0M2Q5MmU0NTNjNGMzMWQ1NDRjYjNkYjI4YTBjODMgbGVnYWN5LXRydW5rCisxNTYxMiBlNzg3ZjY2NDFhZmI4YzkwYjk4MGY3YTU1N2FmNjkzYjZlNGNiODkxIGxlZ2FjeS10cnVuaworMTU2MTMgMjg5MDllODBmMzZjZjU4ZDZjNzQ2YWY1YjQ0ZDdjZDk1YTg3NTc3ZiBsZWdhY3ktdHJ1bmsKKzE1NjE0IDIxNTUzYmQyZTg3NWYyY2Q2YzNjNzFiZWFkYTlhNjMzMGNiZTc4NjYgbGVnYWN5LXRydW5rCisxNTYxNSA2M2QzOTM1OGRiMDkzNDJlMDdiZjEzNDdhZjkyMGU2Mzg3N2UxODY2IGxlZ2FjeS10cnVuaworMTU2MTYgMGZlMDIxNmY2YzRlNGExM2ViMDRlNDYyODQ3MTE0OTZiMjY4MjRmMSBsZWdhY3ktdHJ1bmsKKzE1NjE3IDBjODg0YzhkMWU3NWNkYTA0N2Y3NWE2YjdhMDk4Y2ZhNWFkODc3YjIgbGVnYWN5LXRydW5rCisxNTYxOCA2YWUwNDZkNGNkMDQyMDNlYTJkNWIwMDhiMGExYjFmODAwZTc3MDc4IGxlZ2FjeS10cnVuaworMTU2MTkgMTRiMWI1ZGI2Y2IyZGViYmUwZGJhZTEzYjFmMmNiNjA2NTBhYzRkNCBsZWdhY3ktdHJ1bmsKKzE1NjIwIDM3OTc5N2YzZWViMjA2MDQ0NTUwNzc0ZWI0ZGVlZjBhZjJhOTgwOWIgbGVnYWN5LXRydW5rCisxNTYyMSA0MzIzZDQ4NTUwNDdiOGM3MjRiNTRkOTI3ZDIwMjhmMzRmNmY4NGY4IGxlZ2FjeS10cnVuaworMTU2MjIgMzk3MWU2YjE0YTA5NzQ5N2Q1MWIwYmRkMzlkZWY2MGQ2ZTBhOTQyYSBsZWdhY3ktdHJ1bmsKKzE1NjIzIGFmMGRlZjA2MzY1ODAzNmNlYWE4MWNjZjUwNjg4ZTlmMjU3NmFhMDMgbGVnYWN5LXRydW5rCisxNTYyNCBjMGZkODhmMmE2NWE5MTY0YWM4MjllNmI5YzRmMWE2NGE0ZTA4ZTgyIGxlZ2FjeS10cnVuaworMTU2MjUgMzFkMDk4OGRhOGE5NzMxNGY2MjZmMGVlMTlmYzBkMjYzYmM1MzlmYyBsZWdhY3ktdHJ1bmsKKzE1NjI2IGU1NDVhMGM0NGZlMTVjYjJmMmUzMGY1MWRjYjAzYWNlZjE3OTRkY2YgbGVnYWN5LXRydW5rCisxNTYyNyA1NDhjYzEwZGY5ZWJhYzgwOGU1YjY0MDU4YjAxY2E3YWQxMjNlMTQ3IGxlZ2FjeS10cnVuaworMTU2MjggZTA0NjQ5YzNjZWQwM2RiMjEzOTA2OGY4YzFiMjAxMjk2OGIxNTQxOSBsZWdhY3ktdHJ1bmsKKzE1NjI5IGY0YjQ4N2UzNTIxNDBjZTQxYmNjODFkMjg2MjQxN2NhYTgxYzRhZDQgbGVnYWN5LXRydW5rCisxNTYzMCA4ODg3Mjc5MTk5OGEwZGExOTYwODAzMTdjM2RkZWNiMGIxZWI2MThkIGxlZ2FjeS10cnVuaworMTU2MzEgNTI3ZjdlM2JiNzZkN2VhODRlZWZiM2M2Y2VjODE5ZGEyY2Q3MTg3OSBsZWdhY3ktdHJ1bmsKKzE1NjMyIGRkYTFjYTUzZWE4YTI2MThlOTZjZjJjMWU3NDdkYjBiMzE2YTUxMmMgbGVnYWN5LXRydW5rCisxNTYzMyBlMDI0ZWQyZGI2MjViOGUzZThkNmY1Njk5Yjc3YjJkNWMzMTJmYmZkIGxlZ2FjeS10cnVuaworMTU2MzQgZWZjNmQ3Nzg5ZDllNmY3MzM5Y2MyMmFkNDdlMDM1NWQzNmE5ZGQwNCBsZWdhY3ktdHJ1bmsKKzE1NjM1IGQ5OGE3NTU3MzI2YTRkODBlYzkwNWI2NDZhZmNkZGU1YWM5MzU0MzUgbGVnYWN5LXRydW5rCisxNTYzNiBhOGNlMTljMzJkYjlhN2NmN2FhYzIzNzlmYzQ1M2NlN2MwNTdmYjgwIGxlZ2FjeS10cnVuaworMTU2MzcgMjQzNTkzZjExZmNmNjhlNjc1ZmJhM2E5M2ZhMTM1Zjg5MjY2MjEwOCBsZWdhY3ktdHJ1bmsKKzE1NjM4IDc4MjMxYmJlNjA1ZGMyZWE3Y2ZhODNhYjU1NTVlYmY1NmI5YmEwODEgbGVnYWN5LXRydW5rCisxNTYzOSA2ZDc5MTQ4ODVkNjNmMWMzOWFmNzk2MTAyZjE4MmM2NDUwODhkMDk2IGxlZ2FjeS10cnVuaworMTU2NDAgMzAxZmYxNGIyYTBlYTYxZmJjMGVjYjkyMWU4ZjU0M2VmMzFlNTQ1MyBsZWdhY3ktdHJ1bmsKKzE1NjQxIDI2ZTIwYTI4ZDA1MWM2Y2VkNGI3NGNhMDdiYWU4NjFjY2ZhMjgzODcgbGVnYWN5LXRydW5rCisxNTY0MiA2ODg5ZGUyOWM1NTg0YjI4ZWE5ZjMwNjBmMTBiMGY5YTYwYTJiZWQyIGxlZ2FjeS10cnVuaworMTU2NDMgMTFlNWJmOGViNDczNjlhZjBkNWViYzMzMDg0OTk5YzBkNjFiNjM2ZSBsZWdhY3ktdHJ1bmsKKzE1NjQ0IDdiYWJmOTFiNmQ3NWM2NjUwMmE1N2UzMGQ3ZThjMmVjOTI2YzA3YWIgbGVnYWN5LXRydW5rCisxNTY0NSAwOTJiYWY2OWQ2YWY4N2Q2MGNiYjM1ZTdhZGQwMDAzYmVkNWJmYTZlIGxlZ2FjeS10cnVuaworMTU2NDYgNWEwZDE1NmM0MjBhYzcxM2IwMTI1ZTExYzRhODk2ZmMyNmNkOTQzYSBsZWdhY3ktdHJ1bmsKKzE1NjQ3IDFhZTAzNWEzMWNiNDgzNWQwMWU5MzI1NjRhNjM4NDMyNDkwY2U0ZWMgbGVnYWN5LXRydW5rCisxNTY0OCAxMWQxMGU5YjUwOGQ4MGIwYTQ4NGNmMDlkYWM1M2NhYzgwMWU5YTFmIGxlZ2FjeS10cnVuaworMTU2NDkgYjU3NTJkZTBjZmE0NjczNTRkMTFmNTI0MzQ2MGE3MDM3ZmM1ZjcyZSBsZWdhY3ktdHJ1bmsKKzE1NjUwIGY1NGMzNjc3YmFlN2Q4NjFhY2I4N2QwM2NjYjEzZTU0YjMzOGNlYWEgbGVnYWN5LXRydW5rCisxNTY1MSAxN2YzNWY2NmVjZDhiYzk1NGY3MTA5N2RkMTU2NTI1YzI0ZDMwZDMyIGxlZ2FjeS10cnVuaworMTU2NTIgMGM4YjlmOTZiMjZhYzczMGJhN2NjMTAzYmYzNzQwNTA4MzBmNWVmYiBsZWdhY3ktdHJ1bmsKKzE1NjUzIDBjMmNkZDdjZjdkYzZjNjI3MmViMDllNDNlODY5ZmMzYmNkZjI3NzMgbGVnYWN5LXRydW5rCisxNTY1NCBmZDU4ODFlMTc0MjdiM2Y2YmMyNTRjMTYyMzE2YzVlZGUwNDFmMTY3IGxlZ2FjeS10cnVuaworMTU2NTUgNjFmNmFjYzRhYTc0OGRkNDBlOGMzODE4YzcyYzcxMWQxNDAxMDgyMiBsZWdhY3ktdHJ1bmsKKzE1NjU2IGYwYThmMTI3MzQ1NjRiYzJiNmIxOTQ5OWQ4ODA0YzljM2MwYTY1MmQgbGVnYWN5LXRydW5rCisxNTY1NyBhZGVmOTdmM2ZlYTBmNTQwN2RlMjUyMWFlN2EzODY3MmY1OGM3OGU4IGxlZ2FjeS10cnVuaworMTU2NTggZTQ3YjFhMGQ2NDg0Nzk3NzExMWQ4Y2UwY2NkYTc1ZDQ5YzEzOTU0YiBsZWdhY3ktdHJ1bmsKKzE1NjU5IGYzMWRjZDFhZDhjNDExODc5YjY3OWIyMWQ1YjFlZDE0YjJiM2FhNmUgbGVnYWN5LXRydW5rCisxNTY2MCA5ZGY5MWY5MWU1Y2M5YTQ0MjQwMGJiNzQ5NzEwZWQ1M2I5NDQ0MzllIGxlZ2FjeS10cnVuaworMTU2NjEgZjgyYjE1N2Y0NWUyOWMxMDZiNjU2ZTFkZmMyMGFhOTExNjQ5ZGI3NSBsZWdhY3ktdHJ1bmsKKzE1NjYyIGVmZjI0MTA2ODVjYzQ2MGY3NTE4OWI0ZDY4M2YwNDIwOWVhMjMzZDMgbGVnYWN5LXRydW5rCisxNTY2MyA5OGViMzA1OWFlNzYwYmNkZjE5ZGU2ZDgzMzVjYWNiYjA5NDQwNmFiIGxlZ2FjeS10cnVuaworMTU2NjQgOWVlMWU1OTQ1NzFkNzE1NWQ4ZTVlMzY5NmM1ZTcxODU0YTEwMTcyOSBsZWdhY3ktdHJ1bmsKKzE1NjY1IDc1MmFhOGRmZjUyMGI5NGVkYzUxNjlmNjRhOGZmZDc3MGIzYjU2MmYgbGVnYWN5LXRydW5rCisxNTY2NiAyNTQzMTk3MjI5NGI0ZjM3Y2Q2N2M2ODA0NTlkMjZjMDY3YjAyNGNhIGxlZ2FjeS10cnVuaworMTU2NjcgZjY5MTAyYzFmNDEzZjFjNjZhNGUzN2Q5MDAwMjA3ZmNmZjVhYmFiZCBsZWdhY3ktdHJ1bmsKKzE1NjY4IGRkZTdlOTFmMmYyZTVjMzE2ZDhkNDBiYmI5NzkxYTNiN2NjZjQ4OTcgbGVnYWN5LXRydW5rCisxNTY2OSAxZTc4NGI4NzkwMzkwZTMzNjYwY2JlOWIyYWY0ODBkYzJlN2JhOTk3IGxlZ2FjeS10cnVuaworMTU2NzAgYmUzNmYxMDNhOTUzOWMzZGRkZGRiZjU1OWY3OTBhZTM3NjBkYzMxYyBsZWdhY3ktdHJ1bmsKKzE1NjcxIDUxMzk4ZjcxZDMwMTIyNzg0MzY0NDJmZDRlZWUxODU5MTI1MDA1MzkgbGVnYWN5LXRydW5rCisxNTY3MiAzY2VlMGQ3NTE5MWUyMzFjMDM2ZmJkZTkyOWZiMGYyMmU4NWZiOGI0IGxlZ2FjeS10cnVuaworMTU2NzMgMzQ0NTJiODgzYTcxZDVmNzBiOGQ4MTYxODY1NjBkZTFhYWMzYzQyYSBsZWdhY3ktdHJ1bmsKKzE1Njc0IGU1YWFjOWRmYWNmODcxNWJkOTJkMmI0ZmRkNzJiZjIyYWQzYTU5MjEgbGVnYWN5LXRydW5rCisxNTY3NSBjOGUxMzUzNWZkYzMxOWFiMjA3MTdhNzViZDM0YjdmNTM4ZjAyZGM1IGxlZ2FjeS10cnVuaworMTU2NzYgNTdlMjk0NTQzNWM5MDA0OWU2NGY2MDgxMTJlN2FmMTE5ZDMyNzNmMSBsZWdhY3ktdHJ1bmsKKzE1Njc3IDAwZjVkMGRmNzBhZDgwZTFkOGU3YmJkZGQ0ODJlMDg2OTIyMzdmNzQgbGVnYWN5LXRydW5rCisxNTY3OCAyYTJjYWFlZTY3OTczYThkYmUxMTlmMmJmOTFmY2RjZGE5NmMzNGFkIGxlZ2FjeS10cnVuaworMTU2NzkgOGEyM2FiMDU3YWY2MTc2Y2UyYmUzN2Q0ODUyYjFkNDc4ZWVmZjYzNSBsZWdhY3ktdHJ1bmsKKzE1NjgwIDMxYzcyNWQ3MGU2NTIxMmQzYjE4NzUzNTM4MWRjNDk3OWM3OWFiOWUgbGVnYWN5LXRydW5rCisxNTY4MSBkZWFmMjVkZjE1ZmUyN2U2NGNiNjUxZGNmMGQwZDUyMzFhMGM1MjVkIGxlZ2FjeS10cnVuaworMTU2ODIgMTJkMGM0NjViMTAzY2ZlOTQwODlkZmMwY2NjZjFhNWJlOWQ4MmY2YSBsZWdhY3ktdHJ1bmsKKzE1NjgzIGE4YWZlZmM0ZmNlZDk5NDdiNmU3OTYwNDUwMDJkZmI3MGM1NGQ1ZWEgbGVnYWN5LXRydW5rCisxNTY4NCAxY2FhZGZiOGNhNzEwYmQ5MWQ4MTQ2ZWNlMjlhNDYzOGE2OGU1M2NkIGxlZ2FjeS10cnVuaworMTU2ODUgMmQwYjk5Nzc4ZWRmMWJhNmNhYmU4NGNlMDU1OTRkN2U2ZGI3NzRlZSBsZWdhY3ktdHJ1bmsKKzE1Njg2IDEyOGU3Yjk5NDUwNTljNjAwYjVhNmNhZTFlNGIwNTFmZTRmOTU0YmEgbGVnYWN5LXRydW5rCisxNTY4NyBkZjY4NjliZWJlMDNjNTdjMzE0OTUwNWYwNmMyZDljOTVmMjczYWYxIGxlZ2FjeS10cnVuaworMTU2ODggMTVkZjNmYTBmZDRkN2RhOGUyMjhmYzBhMTAzN2QwMDY0NDg0Y2QxMSBsZWdhY3ktdHJ1bmsKKzE1Njg5IDU5ZTQ5NGMwODAyZmM5MjU2YTY1YWU2ZDQ2NWY2OTIyNDgwMGNiZGMgbGVnYWN5LXRydW5rCisxNTY5MCAyZWVmNjM2YmExYjYyZjZlMTAwYzYyYzE4MzIyNGFiYjA1MmQ4YWFlIGxlZ2FjeS10cnVuaworMTU2OTEgNjYxODMyNTU3NGNiOTUzZWYyN2U0ZmYxNTM0ZDM2NTQ1NGUyOGRkZSBsZWdhY3ktdHJ1bmsKKzE1NjkyIDBhYTNmODBkYmIyM2FlNTZkNDAyNzc3ZmVhNDgzYmNiZThmYWIzNjUgbGVnYWN5LXRydW5rCisxNTY5MyAxZmE3YzExOWI3YTU2ZjIwYTk4OGQ1YmFjYjhlYmI4NWEzZGRkMjQxIGxlZ2FjeS10cnVuaworMTU2OTQgYjY2MGVjYmVhZWI4ZTMyYWQ4NDM4ZWY2MGMyOGM4ZjY4OTc4NWYwOSBsZWdhY3ktdHJ1bmsKKzE1Njk1IDc1M2Y5MTYzZGYwYmIzZjM3OTMxOTViMmE5Y2E1YmZkODY2YTUzYmEgbGVnYWN5LXRydW5rCisxNTY5NiBhOTgwMDlhNDM5MWU3ODc5MTZmMDZhOGZmMDBmOWJlMGJiMjczNTQ3IGxlZ2FjeS10cnVuaworMTU2OTcgMzQyN2IwZjg1YTdjZTcxYmFiOWNkMmExNjYzYzVhOTcwNDE0NWE3MiBsZWdhY3ktdHJ1bmsKKzE1Njk4IGFiYmNlYjZhMjUzMjRiNWI0NGM1MWJmZDYxYTc1NWVlNzFiNmZkYTEgbGVnYWN5LXRydW5rCisxNTY5OSA3YWI1YjFlZWViZGU5MjgzOTM0ZmE5YmE2NWY0YzgyM2YyYjliOTdkIGxlZ2FjeS10cnVuaworMTU3MDAgODgwMDRmMjVkYzI1YWJiZGIzNTA3Y2UwZjQwZGYxZDY1NjY4MzZiMiBsZWdhY3ktdHJ1bmsKKzE1NzAxIDNmN2EzNTc5OGFjZWExMDliNGU1ZTg0MzcwN2RiZmUxMjVjNGM0YTcgbGVnYWN5LXRydW5rCisxNTcwMiA4Yzk1NTRlZGJlYmJiNDhmNDZkZTY5MTU5M2EyNDIwYjRjNjcwMWQ5IGxlZ2FjeS10cnVuaworMTU3MDMgYTg1MzBkMzYwMjFjNmM4MWU1OTk2NjcyZDcxY2U1NDFkNmVjYmM3MyBsZWdhY3ktdHJ1bmsKKzE1NzA0IDQyOWRkMDIyNzJkNjgwNzkyNmIxYTIzZDJmNzFmZjY3NTdiZGFmOGUgbGVnYWN5LXRydW5rCisxNTcwNSBiMWVjNDliMmM1YzJhOTAzYjNiOTNkZjE3MmMzMzkzYTgyYjQyMzdkIGxlZ2FjeS10cnVuaworMTU3MDYgNWQyZmI2NzQwOGE3Y2M2MzI0Yjg5ZDIxMTY5YWQwNTVlOWYwNzI4NyBsZWdhY3ktdHJ1bmsKKzE1NzA3IDc1NWM5YWM5ZTZhZWJiNWYxNDY4MTMxNzZiNWI4ZmI4NzE5ODg4M2IgbGVnYWN5LXRydW5rCisxNTcwOCA2YjJlY2QxNzIyMDNiNGExMTc3MmNlNWFjOTg2MjI2OWVhOTIzYmI5IGxlZ2FjeS10cnVuaworMTU3MDkgYWNiMDI2MWI2OTQyZjNiZTdiMGJhMzc0ZWRiMWYwMzhiYjkyMzA1OSBsZWdhY3ktdHJ1bmsKKzE1NzEwIDJhNjRmMjI1YTEwNTMxYzI0Yjc1ODI5OWQ5Y2JmMmNlOGQwMDBiNTUgbGVnYWN5LXRydW5rCisxNTcxMSA4OTRlZmVhNzFhY2ZlZTI1ZDcwYmQ0YmU2MWVmMjhiZWM5MGRmY2QxIGxlZ2FjeS10cnVuaworMTU3MTIgN2YwMjJlMjYwYTRkOTMzNzcwOTBhZjM0YTI0MjFmYjA3YTc4ZDVjYyBsZWdhY3ktdHJ1bmsKKzE1NzEzIDUxOTQ5ZGU3NjM2NWIxYjU0MGM5NzQ4YWFiM2YzNGJiNGI5ZjU3YjMgbGVnYWN5LXRydW5rCisxNTcxNCBhM2UxMjg4MWNjM2MyM2UzNzNkMGE4ZTczY2NlZjZjMWM0OThlNTE4IGxlZ2FjeS10cnVuaworMTU3MTUgNDMwOTg1ZDU3ZGEzMTZmNWQzNGM5MWI2MjAyZDEzOWIxZTlkOGI2ZCBsZWdhY3ktdHJ1bmsKKzE1NzE2IGNhYWU3NTAxZGJhNTU2ODUxNTRiOWY4MmUxOWJkNDIyODMzMjI0YTQgbGVnYWN5LXRydW5rCisxNTcxNyBkYzBhMjEyZmIzNTM5MGZkYmRiOTA5YjI3NTY4M2ZiODExNzkwNjQzIGxlZ2FjeS10cnVuaworMTU3MTggOTdkZDZkYzMzNTAzNjdmNGU2MWQ0M2VkOTUxYTdlMTY0NDZmN2Y4ZSBsZWdhY3ktdHJ1bmsKKzE1NzE5IDNjNjY0MWM4MTBkYmEyYjU3NTY0YzljZDBkOGNhOGU2OWY1YmRjZTQgbGVnYWN5LXRydW5rCisxNTcyMCAyNTEzY2Q3NDE0N2M3Mzg5NDFiYjU3NmQ5MDEzNDE4YjI0MDgwMmExIGxlZ2FjeS10cnVuaworMTU3MjEgNDVhYWE3NWYwOGEzNzgwMmZjZDAyODc2NGFhMjg0YTRlZjE2Njg1NiBsZWdhY3ktdHJ1bmsKKzE1NzIyIGViOTExZWNhOWVlOWU4MTljMDAwMjk1MzVjMzE5MDQyNjQzMTM2MjcgbGVnYWN5LXRydW5rCisxNTcyMyBiYWMwNDViODUyNjNmMzU5ZjRkZTYxNDEwNGI1NTVlMzU0YWYxN2Q4IGxlZ2FjeS10cnVuaworMTU3MjQgYWNlMTM3MDFmMzM0ZDg3YmQ5OTI0NjkwYmViYmYzYzU1ZjgzMDAxMyBsZWdhY3ktdHJ1bmsKKzE1NzI1IDkzNjYxZDBlYjVjYzUxZGNhNTY1NTY3YWE0YTFmOTRiMzc1MjE4YTUgbGVnYWN5LXRydW5rCisxNTcyNiAwNGM4OWQ3N2RmZGJmN2Q1NWZkZDU2ZjAyMDQzMDAzNjk1OWI0ZTVmIGxlZ2FjeS10cnVuaworMTU3MjcgNDQ3ZWZiNjRjNzJkZGNiM2FkNTEwOGY1ZDc5NTA3MzUyNTIzNjlhNiBsZWdhY3ktdHJ1bmsKKzE1NzI4IGQxMTVhOTFjYTVmYTdmM2NmYzllNDRlMDQxYmQ4NzQ2N2E0ZTdiYzUgbGVnYWN5LXRydW5rCisxNTcyOSBmMzFmZmIzN2Q3MmNmNzMzNjQ4YmYwYzMwMzE0ZGJhYzE2NTM1ZWNhIGxlZ2FjeS10cnVuaworMTU3MzAgZTZiNDA3YmE0NzE1M2VjYjZmNDllN2M3ZTcxNzNhNzMxNDVhM2ZhMyBsZWdhY3ktdHJ1bmsKKzE1NzMxIDYzNDM2NzE5ZDEyZTAyYmQ5M2QwZGExOGYyY2E5ZDY2OGUwMTkzYzggbGVnYWN5LXRydW5rCisxNTczMiBiYzBkNDk2ODBhYTNkZjZhYWM4YjRkMDQwMTkwMWUyZGNjMTY5OTJlIGxlZ2FjeS10cnVuaworMTU3MzMgZmM3N2UzNGVmMjc0M2Y4Mjk1N2JkYjAyMjcyMmMxZWZiZjM2MDZkZSBsZWdhY3ktdHJ1bmsKKzE1NzM0IDBiNDIyNjRhYzAyMTU0NGJhZjZlNDg5NzcwZDVlYTAxNjA2Y2M2YWIgbGVnYWN5LXRydW5rCisxNTczNSBlNzk5MmQwZDY4MDgyOGNjMjZkNmEwMDA3ZWYxYWU0NThjN2VkZGFiIGxlZ2FjeS10cnVuaworMTU3MzYgZGY2MjdlNjE5MTZlMjBhMTA0ZTFjOTkwZjVmNzkyMjI0OWIzMWU0ZCBsZWdhY3ktdHJ1bmsKKzE1NzM3IGY3OTNjNDdjNTEwZTEzNjczMzRiNjdlMDRjZTBhYjUwYzkxMzljYTQgbGVnYWN5LXRydW5rCisxNTczOCBkYmIxMDNlOWE1NmY1MTNkODBkZjlhZmFjM2JmYTkwMjIwMTYwNjZkIGxlZ2FjeS10cnVuaworMTU3MzkgNzdjNjUxMTMxOTg0YjJlZWIzNzcyNzIxZjJjMGUwNzU4ZGM3MzY2MyBsZWdhY3ktdHJ1bmsKKzE1NzQwIDQwMDM4MjE5MDM2NDk3YzQ0NjU5YWM5ZWIxOGUzNTI3OTM4ZTM4ZGYgbGVnYWN5LXRydW5rCisxNTc0MSBkZmE4ZDlmMWMxMjMxOGU5OGMyY2Q0MjIwMzA4ZmVmYmUxNjk3MjczIGxlZ2FjeS10cnVuaworMTU3NDIgOTU2OWM1NjI1NzY1N2UwNjFlZmZmOGQ2MTVlNWUzOGVhZDA0ZmIxYiBsZWdhY3ktdHJ1bmsKKzE1NzQzIDg5NjAyZjMzMjQ0N2I0ZWYzMmMxYjg4YTdkNjg5MzA0ZjNjZjY2YTUgbGVnYWN5LXRydW5rCisxNTc0NCBiNTQ0Mjk5ZTY4YzVmYTc0ZmE0NTdjZGFiYTE1M2QwOWU5ZDU0NWUzIGxlZ2FjeS10cnVuaworMTU3NDUgNTM2YzYzMTI5OTMyOWIyYmMyMjg1NWMwZThiOTAyY2M2MmY2ZmU4YiBsZWdhY3ktdHJ1bmsKKzE1NzQ2IDU1ZTJmYzRkMzQwZTQ4Mjk5N2U0MGYwYzNlYWUwN2IwMzJkNjU2ZjQgbGVnYWN5LXRydW5rCisxNTc0NyA1Mjc5YTZlMDBkMzY3YjAwZjU0YWY0ZTA3OWVmOWNkZTU1NGUyZmZlIGxlZ2FjeS10cnVuaworMTU3NDggNjU4YzU1YzA4MTM5Y2NmNmIzOTM4OTIxMmRkYTc3ZjAyNTMwYWRiYyBsZWdhY3ktdHJ1bmsKKzE1NzQ5IDBlYjUzMWNlMDhkMThiY2E3ZThmZmMwZTk0NGZiZWY0MmIzNTdkMWQgbGVnYWN5LXRydW5rCisxNTc1MCAyNzJkYjQ2MDViZTQ3YWZhNDZlYTJjODk1ODM3OTc3Mzk0ODFlZGU2IGxlZ2FjeS10cnVuaworMTU3NTEgZTYxNTU5NmM1YzQ3YzAwMTg0MjA3MmNlZmU2MjJlOTk2ZGI5YzRkNyBsZWdhY3ktdHJ1bmsKKzE1NzUyIDFhNDBmMDBhNDhiZjY0OWEwYmZjNjNiNWRjZjJjOWUzOTY1YmNmMzEgbGVnYWN5LXRydW5rCisxNTc1MyAzZjk5MGVmNjY2Njc5ZDdlZWJhMzZlYzZlNzg0MjliNDJmYTY0YzhhIGxlZ2FjeS10cnVuaworMTU3NTQgOGY3OWM1YjY5ZTBhZGEzYzdjMDUzNjRhYTgxYjIzMmEyOGE4ODNmMiBsZWdhY3ktdHJ1bmsKKzE1NzU1IDAxY2U4OWZjNzQ1ZmUxYWVkZTdkNjkyYWYxMTA0NjI2YmI1MzkxOGQgbGVnYWN5LXRydW5rCisxNTc1NiBjOTEwYjlkOWEwYzBlODVlMGMyMWZkMzY5OGFkNDljNGZkYWY0Zjk1IGxlZ2FjeS10cnVuaworMTU3NTcgYzc1NzE4ZmJkODYyNmU4YmVlZWM2NGM4N2FiMjQ3NDQ1ODEwODQyOSBsZWdhY3ktdHJ1bmsKKzE1NzU4IDI3ZjNhMThmZDI5NjU3YjY1ZTIwMzYyNTFlYzc3YzZlMWYyYjVhYTAgbGVnYWN5LXRydW5rCisxNTc1OSA4NmQ0OTg5NDY4NjhjZjVhNjcyMDZiMmYyZTkyZmMzOTAxZjQ2ZmVkIGxlZ2FjeS10cnVuaworMTU3NjAgNzE2MGI1MmNhNzRhMDZiMWIwMDNlNTJhNmI1MDQ2MjQ1OTBiZTg1YSBsZWdhY3ktdHJ1bmsKKzE1NzYxIGJjMTQ3ZTE4OWI3ZjliNDc5MDNlYmFiYmViNmNkYWI5NjVmYzQzYTQgbGVnYWN5LXRydW5rCisxNTc2MiA3Y2QxNTJlMTUzOWM1Y2JjNjlhODgwOTA3NmY1MjZhOTZiZDBjMjBjIGxlZ2FjeS10cnVuaworMTU3NjMgNWYzNjI2ZmU1OGNhOGVkMmExMDljY2UwNjQ0MjA5NmVjNDM1YmYyOCBsZWdhY3ktdHJ1bmsKKzE1NzY0IDU3NzA3ZGJjYzI0NWM4MTE2YmEyNWMwZGM4N2Q0N2ExNTk5Y2Q4ZDQgbGVnYWN5LXRydW5rCisxNTc2NSAzN2JhNzA1NmQ0YWJmYjZkZjBmNjUyNzcwMjdjYjg4NDMzZDM0NzAwIGxlZ2FjeS10cnVuaworMTU3NjYgODIxODFlODIwZGUzYzg4OGNjYmQ4N2NlY2FiMTQ4ODJhNGMyNjYwZiBsZWdhY3ktdHJ1bmsKKzE1NzY3IDg3MDAzODQyZmFlY2E2ZWZjMjliYWIyMzYwMjkyN2E5YzgxODE1OTYgbGVnYWN5LXRydW5rCisxNTc2OCA1ZDhlZjIyYWRjYTUxNDY4MzM3MTBjMWM0ZjM0NzkyMmVlNGQ2YmI5IGxlZ2FjeS10cnVuaworMTU3NjkgNmUxODYxZTBlZDY4NzZiYmY3MDI3ZWViOWRkOTBmOWZjMmM0ZDU5ZSBsZWdhY3ktdHJ1bmsKKzE1NzcwIDdiMzg2NzhiMzY1MjY1ZTJiYjhlODU2OGMxZTBiZTMwYTRiMjRhNzYgbGVnYWN5LXRydW5rCisxNTc3MSBmYmFjZjZkNTVkYzY5MzgzMzYwNjIxOGQxYTI5ZjgwNDg1M2FiZjYzIGxlZ2FjeS10cnVuaworMTU3NzIgMzc0MDFlYzJlOTEwYjBjYmJlZDdjODZkNDQ3ODA0OGYyN2RhYzBhZSBsZWdhY3ktdHJ1bmsKKzE1NzczIDkwNzZlZmFjODQyMGI3NjA4MDYxNWRhODYwYjQ4OTk5ZWJjYjg5ZWUgbGVnYWN5LXRydW5rCisxNTc3NCBkYWRiMGNjNWMyZDI4NWVkZWQ5ODJiYzk4ZDUxOWNiZDI0NTIxZTBkIGxlZ2FjeS10cnVuaworMTU3NzUgNGYxM2MyYjgzMjBiYzNhYTI5MDk1YTY5ZjAwMWYwN2UxOWI1YjVlZiBsZWdhY3ktdHJ1bmsKKzE1Nzc2IGFmZmUxMGMzYjkyZWNlMjMwY2JiYzEwYzBkYmU2MDNkNzRhOTkyZTIgbGVnYWN5LXRydW5rCisxNTc3NyA3YTI5MjU4YzU1ZGRhZGZmZTNmNjNmOGExNDlhOTdhOGQxNTFkYWI2IGxlZ2FjeS10cnVuaworMTU3NzggMzgzZjQwNGI3NmQ3ZmIxNjJiMjcwOWY4YjRmZWVhZWNjMjliM2QxMCBsZWdhY3ktdHJ1bmsKKzE1Nzc5IDJlMmVlMTE3ZDQwZmQ2YjE0NDExY2Q1MGQ2YTIwMDRkN2M4Y2QzNDMgbGVnYWN5LXRydW5rCisxNTc4MCA0YTNlOTg3MWI0MWJiYTBiNTVkOGUyOWE2NmJjMjI4OWJkMWNjMjdmIGxlZ2FjeS10cnVuaworMTU3ODEgMWRhYzg5YmJiY2QyMTczM2Q2ZjEzMmYyZmM1ZjFhYjM1YjA4NzA2YyBsZWdhY3ktdHJ1bmsKKzE1NzgyIDMwYTRlMTM5NTIxMTAzNWJiZmZmMGVjMWM0ZWU3ZDY2NTNhOTllN2YgbGVnYWN5LXRydW5rCisxNTc4MyA4N2VjZTEyN2NiYTJkNjllYmE5MWZiODFmZjI1NmJkZjdmYTIxYTEwIGxlZ2FjeS10cnVuaworMTU3ODQgNDEwMmY3ZWRlOGU5OTljZTEwMWFlYTc5NDA4NTNlZGVkMDU3MzU5MiBsZWdhY3ktdHJ1bmsKKzE1Nzg1IDIzZThhYTQ4NWE3MGQ1NmUyZTE1OGMxY2Q3YTExZWMyMDE2MDIxNzUgbGVnYWN5LXRydW5rCisxNTc4NiA1ODY2MWE1NTdkYzY5MzRkZDRlYmQ0NTE0MzZiZjRmZDk0NGU4YTM1IGxlZ2FjeS10cnVuaworMTU3ODcgY2E5NmQ4Y2UxMmYzZGRlMjdmMjkyMTdjZDk1Yzc2YTAxMzI3NDg4MSBsZWdhY3ktdHJ1bmsKKzE1Nzg4IGJmMmVlODU2NzIwMTU0OGY5NDkzZDg2ZTQ3MDljYWEzM2I5ZDVkMjYgbGVnYWN5LXRydW5rCisxNTc4OSA5NzQ4MWQ3YWM1NDhhZDRjYThjZmFhYWNjYzBhOTJmNDI0MWVjYzAxIGxlZ2FjeS10cnVuaworMTU3OTAgNzBiMTZkYzYxMzdmMjQ5MDBkYTQ1NTFmYTVmN2EyNmNiNTJiYWRjYiBsZWdhY3ktdHJ1bmsKKzE1NzkxIDVkZjAzNDgyNjczNTJhZGQzM2UzYTdlZTk4ZWIyN2FjM2NlODlmZTIgbGVnYWN5LXRydW5rCisxNTc5MiAwMGE5ODExOTRjYTY5ZmYwZjRmYTk5Yjc3ODIyOGQ0MjRiYTVmZjhhIGxlZ2FjeS10cnVuaworMTU3OTMgMTI0MGJjOTk3YzhmYjg2OTQzODA5NWUyNjYxOGNkNzI0YWUwZDQwMSBsZWdhY3ktdHJ1bmsKKzE1Nzk0IGY3YWQ3ZTc5MTVlOTlmNTczYjQ5MDlmZmFhNGJkYzkyNDUyY2I2ZjYgbGVnYWN5LXRydW5rCisxNTc5NSBmMWU0MGFiYmVkYjNlMzFiNTY5MDA5ZmNiNjM0NDBjMTQ3YjhkZGIzIGxlZ2FjeS10cnVuaworMTU3OTYgMWY2MWVmNjQ1M2Q1NGYxMDQ4N2M3MjE0YzQ1ODkyYTk0ZTM2MWVkYyBsZWdhY3ktdHJ1bmsKKzE1Nzk3IGMwOWE1NzBlYjZlYjVmZjc0MGFjMGQxMjViYjIzMDExOTcxZjc1ZDUgbGVnYWN5LXRydW5rCisxNTc5OCAzNjAzMjBkMmZlOTQ0ZDY0ODgwZGE4MWFjODI0ZDNjM2VmZGYyYjhkIGxlZ2FjeS10cnVuaworMTU3OTkgZWFhNGM2ZmFmM2M0YjIzYmU5YWEyNjc4YmEzMjQyYTY0M2I4YWFhNyBsZWdhY3ktdHJ1bmsKKzE1ODAwIDFjOGMxMDFmMmJlMWUzMGRkYTVhNzUxMmU1OTRkZDlhYTZjMzhkZGEgbGVnYWN5LXRydW5rCisxNTgwMSAxMmFjMmMyNjdiOTMyZTVjMzY4ZDJhYjI0YzEwYTZjNDgyMGNjOTk5IGxlZ2FjeS10cnVuaworMTU4MDIgODRjMmE0ZDJkZjlmNGZmMDdlY2EzOGVlOTE0MTNiZGViNmY1YTljNCBsZWdhY3ktdHJ1bmsKKzE1ODAzIDFmMjQ0MTk3OGFiMTQwMDYzNmUwZmY0MGNhZTczOTgxNGVkYTA2ODEgbGVnYWN5LXRydW5rCisxNTgwNCA3ZGY3NDUyZDEzY2Q0MzM5MjQzNTIxYzM4M2JiMmViZWEzYWI2MWViIGxlZ2FjeS10cnVuaworMTU4MDUgMGQzMDlmN2YwMjNmYzRhZWM4YmFiMzkxNGQxYTM4ZGI0YzcxYTQ0NCBsZWdhY3ktdHJ1bmsKKzE1ODA2IDcyMDU4ZGM3ZDU0NWI3N2UxZDE3ZjY3NjViNGIxMDYxNTZmNzg3YjMgbGVnYWN5LXRydW5rCisxNTgwNyAwMWQxZTEwMTg0OTUwZjJhNDM4MWU3NTZlMGZmYjEyYTUzZWQ2ZDhlIGxlZ2FjeS10cnVuaworMTU4MDggZjczNDU4YzVjMzVkMDFkZDkxYzc3OTQ1YmNiOTQ4YzM3NzZmNjVlMyBsZWdhY3ktdHJ1bmsKKzE1ODA5IDcwMDk4NDEwOWNiOTlmZWJlOGJhYWMyOGRkNmU4MDU3MTU2MjU4MjYgbGVnYWN5LXRydW5rCisxNTgxMCAwYmU0YjdiNjUwZTMzZGRhMDgyODlkN2Y2ZWFiZDJjNTQ0NzQ3YWRhIGxlZ2FjeS10cnVuaworMTU4MTEgYTE5NTk2MmUzODljYjJhM2NhMTI2ZDVkZjBjN2YzNDkzY2Q3NWUxNyBsZWdhY3ktdHJ1bmsKKzE1ODEyIGYxMzM4NDEwNTUyODljN2JjNmZjYmY1NWU0ZjhkMDQ3NjIzZTEzMGMgbGVnYWN5LXRydW5rCisxNTgxMyA0ZGJlMTMwMjdjYjMxOWNlMWM4OTUzODNjZDc5MDE5OWUxYWU2MWVhIGxlZ2FjeS10cnVuaworMTU4MTQgYjAwNzQ0MjM3ODc3MGRmZWY3OGM3ZDBjNmM3NDhmY2VjZDg3ZTliMCBsZWdhY3ktdHJ1bmsKKzE1ODE1IDI3N2JhODI2Y2ZjOTdmZmVkMmZhMjVkZWNjMDA3OTdjN2YxZTcyMTIgbGVnYWN5LXRydW5rCisxNTgxNiBjYjgxMDllNzI4NzcxY2Y3NWUxNzJkMTZlYjIyYjQ3OWZjMzNhNThlIGxlZ2FjeS10cnVuaworMTU4MTcgOGEwNzQwMmUyM2RlYWZjNGVlY2EwODU1NDlkNmM1YWVhOTY5NTUyOCBsZWdhY3ktdHJ1bmsKKzE1ODE4IDJiMjFjYzFiYjU2NDkxMmFiOTY0Yjc1MmQxOWFiYTBhYTc2M2I3MDAgbGVnYWN5LXRydW5rCisxNTgxOSA1M2Y0MDIyYzBjZDU4N2M5N2FkNDdhMTU4MDNhNzMxYjY2NTMyZTE3IGxlZ2FjeS10cnVuaworMTU4MjAgZjQwMjA1NzU2MWIzYTFjNmM0NTcwZmMyNzY5YTQyYjY5MjZkZWQ5NCBsZWdhY3ktdHJ1bmsKKzE1ODIxIDRiNDgyMWJmNTNkY2YzMWIwZTdiZDdjMzRjNWJiODQzNmJlZTE2OTMgbGVnYWN5LXRydW5rCisxNTgyMiA5YjJlNzBiNTVjN2YxNWYzNGU3MDBiNGYzNjdjMTgxNzE4MzcxMjMzIGxlZ2FjeS10cnVuaworMTU4MjMgY2JkYjA1NWU3OWQ5MjUwMjQ3MmQ2YzAyMTgyZTk3YzYxOWNkMzg5NCBsZWdhY3ktdHJ1bmsKKzE1ODI0IGViMjQzNDQzYjg4NDBlODJmYWI3ZDMyMzgwYzQ3MzcxYWYyYjBjY2MgbGVnYWN5LXRydW5rCisxNTgyNSBiZDhkYjcxNDIyZjYwODlmNmJmMDYxMGMyZDIyMTM5ZDI4MTgxNDMxIGxlZ2FjeS10cnVuaworMTU4MjYgN2IyNGM4MThlMmNmMmQzMTk3YzlkM2Y5OGFlODBiZDdkZTM2NDY0YyBsZWdhY3ktdHJ1bmsKKzE1ODI3IDViYWJjMGFkZDY0ZjI3OWJmZjJmMDM2YWM3NDJhNTFjMzgxYjRkYjQgbGVnYWN5LXRydW5rCisxNTgyOCBhNjc5YmRiNDNmYWRjOTFlZDRlMmQ3NTkxOTgxMmMxNWRhYjgyZDEwIGxlZ2FjeS10cnVuaworMTU4MjkgNzA1MTMyNjY3ZjdiYTJjZDdiYzcyMzg3MjIzYmM2ODQxNDY4YzU4YiBsZWdhY3ktdHJ1bmsKKzE1ODMwIGI3NmRmNjgwOTlhNWY3OTYzMWJmNmQ4ZGVmYTFjNWIwZjRmMTZhOWQgbGVnYWN5LXRydW5rCisxNTgzMSA3MzkyZTcxZjZjY2UwMjcyYmE3MTM5MzFiZDkwMTM2NWY0OTliMDg1IGxlZ2FjeS10cnVuaworMTU4MzIgYzg3OGRjNjNkN2FlZmFiY2FmYTY2ZTVhODQwNTgyYTQ5YzcxODhmMyBsZWdhY3ktdHJ1bmsKKzE1ODMzIDZhYjhlMWJiMTY3Y2QzMzcyZjhkNWVlY2JlOWU2YWM1MGE3ZDJiMjIgbGVnYWN5LXRydW5rCisxNTgzNCBlZjNkNDk4YWEzM2MyZWU0NzIyNmYwZDk3MzM3MTBjNmFjNTI3NjEwIGxlZ2FjeS10cnVuaworMTU4MzUgNGZmM2NlM2YzY2M2MjFlNGM1OTJiMzZiNWZiOTZmNzNkYTUxNDMyZCBsZWdhY3ktdHJ1bmsKKzE1ODM2IDJjZjk4NzRiNjIxMTRmZmU4NDQ3NjM1YzI1Njk3NjFjNWY0NGE5YmYgbGVnYWN5LXRydW5rCisxNTgzNyA1YTcwODM2OTA4ODRiN2NjMTUxNDAwODQ3NGIyYjc2ZDQ4MDE0ZmUwIGxlZ2FjeS10cnVuaworMTU4MzggMDNiMWNjNDdhODZkMDE0MjI3MzM2M2UxNDA5Mjg0ZmZhNGI0Zjc0ZSBsZWdhY3ktdHJ1bmsKKzE1ODM5IDFkMDQwNzk2MDk1M2E2ZDgwMzI0YWUzNmI5OWUyMzEwYzk5YzkxODggbGVnYWN5LXRydW5rCisxNTg0MCAxODUwMDNkMDllNzY2YzgzYjJiZjYxMmJiZDE1OTc3YzMwZmE4ZWZhIGxlZ2FjeS10cnVuaworMTU4NDEgODdiNDY2YjcwMmQ2MDgzZGJmYjQ3OTgyNGJjOTk3NDVmOGQ4ODU2YiBsZWdhY3ktdHJ1bmsKKzE1ODQyIDBhY2VjMjExYTIwOTBmYzg4NDMxYTMwMGNhNTc4ZTc5YTE4MDdlOWIgbGVnYWN5LXRydW5rCisxNTg0MyA2YjJjNjk2M2M0MGI2OGYxMWU4YjMyZGMwNTc4NGNkNTNkN2I3ODljIGxlZ2FjeS10cnVuaworMTU4NDQgZTBjOTAzMTEyZTRlZDRmNGNhMDg3MDMxYjE1YWNlMjAxMTA5YTIxYSBsZWdhY3ktdHJ1bmsKKzE1ODQ1IDA4MTc0YmYyMzcwMmZjMDg3NDhjZTExYjlmMTQ5YWVkOTkzNGI5ZmYgbGVnYWN5LXRydW5rCisxNTg0NiA5MjQ2OGQ0M2EyM2YwMzQ4NjRlMmIzMzc1ODdkODYyMDMzYjYyYTJkIGxlZ2FjeS10cnVuaworMTU4NDcgZGU0ZTMwOTYyZmFiYTAwNjU5ODlmZTU0NzQ0MTY5ZTY0MGViNjhhNyBsZWdhY3ktdHJ1bmsKKzE1ODQ4IDBmMjE2YTU0ZDM0YjQ5MDNlM2VlNGJjYTQzMDQ5ODhhZmE2MDA0ZmQgbGVnYWN5LXRydW5rCisxNTg0OSBhODgzNDg4YjlkY2JmMjhhY2UyNzUwYThmMTIwYTZhM2ExYTdhMGQzIGxlZ2FjeS10cnVuaworMTU4NTAgYmYxZWJlODY5ODc4MWNmNjU4MDIzYWZmY2I1Y2UyMzI5MmRkODY3OCBsZWdhY3ktdHJ1bmsKKzE1ODUxIGQwNjAxMjk2N2VhYTIyZWM4MmY5M2RjMzEyYmE1NTZmZDZjZGZkM2YgbGVnYWN5LXRydW5rCisxNTg1MiBiOWFiM2IyYWNjOGNlNDBmNzA2ZmVkMWE4YzE2ODA1ODIzZjUyOGQ1IGxlZ2FjeS10cnVuaworMTU4NTMgNTUyZmI0M2FlODIzNzc2NGRiYzI5MmVhZWMzNDg2Mjc1OGQxNmFmYiBsZWdhY3ktdHJ1bmsKKzE1ODU0IGNiZTAyYjhhZWUwNzg5MGZmODc0OWI4NTEyMGNlOGVjN2Q1YTk1ZDcgbGVnYWN5LXRydW5rCisxNTg1NSAwN2E0ZDE2MzdlMDZkZjkzYjAwODY0OTUxZTc3Yjg1NTBiZjhlZGI4IGxlZ2FjeS10cnVuaworMTU4NTYgMjIzMDllOTU3ZmE3M2VlMmQ3NTkxNDJhNWQwZDk0NTQ3MzhjNTdmMiBsZWdhY3ktdHJ1bmsKKzE1ODU3IDhjOGRlNWI3MzZkYzIxZjBlNGQ0MjYwMmY0N2UyZTRhMWYxOWNkNWEgbGVnYWN5LXRydW5rCisxNTg1OCBkODQ5YTBkMjI5MjdhZDM2MjUzY2MxMDZmMjA2YjkxZTZmZWIyMTVhIGxlZ2FjeS10cnVuaworMTU4NTkgN2JlNTQ4MjQyNmQxZWZjNjIxYmViMzEyNjVhY2Q2MmE4NzE4YWQ2MyBsZWdhY3ktdHJ1bmsKKzE1ODYwIDk5Y2VlMGM4N2Y2YTA0ZjA5MWM0YzAzOGMxZjE3NDU1MTk3MjA0NGIgbGVnYWN5LXRydW5rCisxNTg2MSAzNjU4NDRlNzU1ODY2OTM5OWVkMDgxZmI2ZmYzYWMzMTBkMmZhN2E4IGxlZ2FjeS10cnVuaworMTU4NjIgM2NlYTczYTJiYmQ4YzEyNjY3MDQyZTI4NjI0ODA5NjI4OTMxMmQzNyBsZWdhY3ktdHJ1bmsKKzE1ODYzIDQ1OWQxOTdhZGIwOGZjNjdkOTIwMjgzMzk2ZTQ4NmViNmNhM2Y5MmYgbGVnYWN5LXRydW5rCisxNTg2NCBlODM5ZThlOGQzZTljMGExMDZkMGZmM2YwYzgwNmU3OThiMTk0NWU0IGxlZ2FjeS10cnVuaworMTU4NjUgNzk3YWNmM2ZmZDI2NjU3MzFjMThjMTg5MzY1MGMxZDcxZmYyOTc1YSBsZWdhY3ktdHJ1bmsKKzE1ODY2IGZkODQ2N2QxMzc1ZDIwNGE1OThkZmQ0OTZjNGE5MjM2ZGZlYmFhYTQgbGVnYWN5LXRydW5rCisxNTg2NyBhNjcyNWFjZGYzM2IxYjk4ZjQwYTkzMjYwNjVlMzBhZmU3NzdkNzhlIGxlZ2FjeS10cnVuaworMTU4NjggZjYxYjRhOThiOTcyOTJjZDZkOTczNzUwY2U2ZTcxOWZjYWJjY2JjZiBsZWdhY3ktdHJ1bmsKKzE1ODY5IDY4ZTU3YzVkMWJlYzA3Mjg3N2JlMzJiMGVjNTEyNTlkNWQzOTczOTUgbGVnYWN5LXRydW5rCisxNTg3MCBjM2EwMWI2NDJjOTcxODlhZGE0MzJmMGUzZTZmYzBmNGI1YTc3Y2NlIGxlZ2FjeS10cnVuaworMTU4NzEgMzQ2ZjJhMWMwMmEwYTM0YTM3MGRhY2RlNTBjZjQ3MGYzYWU1Yzc0NiBsZWdhY3ktdHJ1bmsKKzE1ODcyIDUyZDVmYjQ3MWUxNzIwZjA1ZjFlYzE3MGY1NTk1MTVjMjExYWZkN2QgbGVnYWN5LXRydW5rCisxNTg3MyBmOGJjN2Y2MmRjMjNhZmRjZTYwOWQ3N2Q0YzM0YjdlYTRlZDZjZmEyIGxlZ2FjeS10cnVuaworMTU4NzQgNWJkMTI3MzNhNjRhYzQ4YjIzYmEwZmZkNDQwYjA3ZjY5MDZmNjBhMiBsZWdhY3ktdHJ1bmsKKzE1ODc1IDkwZWI1ODIyNGU0MzE3MjM3ZjJlY2MwOWJmMjRlMTRjNWU4MDBiY2UgbGVnYWN5LXRydW5rCisxNTg3NiA4MTkzZTA0NTc4N2JmZjA4MTZlMjQ0NmRhM2RhMjU2YzVhMWEyMTcwIGxlZ2FjeS10cnVuaworMTU4NzcgODk0NjEzYjRlYjA3NWE4NTBmZTI1MzUwN2RiNjNlMDJhZWEyNzczNSBsZWdhY3ktdHJ1bmsKKzE1ODc4IDI2ZWMxYjMwZWZhOTNmZGY1ZDRiMzNlOGIwNjNmNDViMWM5NjhmZWYgbGVnYWN5LXRydW5rCisxNTg3OSA3ZmY0MGRhMDhjMmE2NDY1MGVlMzI3MjhjZTJlMDBjZTRhY2Q3ZmJhIGxlZ2FjeS10cnVuaworMTU4ODAgZmQxMmNkOTk2MTU0NDQ0ZmJjMTE4MDQwYTM4YWZkYmUzYmFlNTllNSBsZWdhY3ktdHJ1bmsKKzE1ODgxIDg5NmIzNTlkMWM3ZDZkMjQyMWUzOWZlNDRhNTNiNzdiZjE5NDNiNDMgbGVnYWN5LXRydW5rCisxNTg4MiBmYWVmZmY0M2U1OGE5OWIyZTUzMzlhNTYzNDMzOGM2N2IzYTBkODkzIGxlZ2FjeS10cnVuaworMTU4ODMgNTNkMDBlN2M1ODQ4NDM2N2IwYmMzMWNmMDE0NzAyY2E5NzNhYTJkNyBsZWdhY3ktdHJ1bmsKKzE1ODg0IDQ2MjE3NTgyN2E3NGVlYmY5MDgwNzYzMTdjNmMwZmFiOTNlOWQ2ZTYgbGVnYWN5LXRydW5rCisxNTg4NSA1MDIxZGI2NzQwMTkzMWY2Y2U0OWMzODBmZTA1NWNlNGZmOTBmODAxIGxlZ2FjeS10cnVuaworMTU4ODYgNDI1NThmMWJiZmM0ZGM3MTkzNWE1YTgyY2ZiOGVjOWY3YjI3NmFkMSBsZWdhY3ktdHJ1bmsKKzE1ODg3IDc4YWQ0ZjY0YWRjNWY0MTgyNWVlZGIxYWM2NGFmY2Y5MzdjY2FhYmUgbGVnYWN5LXRydW5rCisxNTg4OCAwNzA0MGQ1NjFmMDkxMjQzOGY5MDc1NzNjMmQ0YTg1OGIyMTk5ODA3IGxlZ2FjeS10cnVuaworMTU4ODkgY2I5MjhkOTI2ZjI3M2RiOTE0Yjc4ZDQ5NGFhZWRjNmM2YjE1YzRmZCBsZWdhY3ktdHJ1bmsKKzE1ODkwIGUwNDJjNGMzODYwNTZhODQzNWE4MmI1NzkxYTJkNjE2ZTE3ZTRhNGIgbGVnYWN5LXRydW5rCisxNTg5MSA3YTc4NzE1MzU3MjcxZTdmN2Y4MjU5NWNmZDE1OGJhMTFlMDkxODM0IGxlZ2FjeS10cnVuaworMTU4OTIgMDVjYzQ1ZDU3YTdmYTE2MGIzYmJlYTA3ODAxNmE0NmU3YjVlOGRjMiBsZWdhY3ktdHJ1bmsKKzE1ODkzIGVhY2E5ZTI1YTA0ODk2MDdkZDUxYTFiMjVhMTdkOGRhZmYyYjdjODIgbGVnYWN5LXRydW5rCisxNTg5NCAxNTY1MTQ5MGFmMzQyZjA2MjU0NDhiMjNiMzdjZmFkNzg1N2E0MzEwIGxlZ2FjeS10cnVuaworMTU4OTUgZjgyNjUyNTRkOGE5ZmNjNTcxODc5MjE0MWJiYzg2YWJhYzhhNzEzOCBsZWdhY3ktdHJ1bmsKKzE1ODk2IGIzMWZmZjU5NjIyYTNkZjM3Y2JjNmQ4ZDEyYTMyZThjNzk5ODEzYTIgbGVnYWN5LXRydW5rCisxNTg5NyBiNmVkOGZhMjY3NWM3N2Q0MWIyY2UxNjEyMjRjNmY4NjdkYWJlN2VhIGxlZ2FjeS10cnVuaworMTU4OTggNzJlM2NkYjMyYTZjNjE0NDdhNjFkZjU2M2UzYzVmMzdmNmZhMzNjYiBsZWdhY3ktdHJ1bmsKKzE1ODk5IDQwNDE1NjA5MmY3ODFiODk3ZjRhZjY1OWNjOWIxMGU0NGVmNWQ0YzMgbGVnYWN5LXRydW5rCisxNTkwMCBjMjIwN2Q2YzAzYTgxOGVmNTNmNTViZDkxYzYxY2EwMDQxMmNjZDQ2IGxlZ2FjeS10cnVuaworMTU5MDEgN2M2YjEyY2VjZWYyNmUzMzhlOWJlMTY5MjZhZjVhMmYyNjUzOTJhZCBsZWdhY3ktdHJ1bmsKKzE1OTAyIGNjYTg0NzQ1ZGEzZTAwY2JmODNhNGY2Y2U0ZGViYjVjM2I0OGIxYTQgbGVnYWN5LXRydW5rCisxNTkwMyBmODZlYTVhNjljNWVhZGI4MDQwZmMxOGY2N2Y1Mjk4NDA4ODJjMzc4IGxlZ2FjeS10cnVuaworMTU5MDQgZjVmMGYwMGY5MjJhMzZhYWFjOGZhMDY5MmJmZjc4ZjJjN2ViMjY2YSBsZWdhY3ktdHJ1bmsKKzE1OTA1IGZmYTRiNGI0MzcwMzFkMzRmMDEwMGFlZmI2M2UzZGZiZGExYWRjNmUgbGVnYWN5LXRydW5rCisxNTkwNiAwYTE0NjNiYTI5MzQ4N2Q2ZWE1NmMwOGIxYjliNjliNjllNzNjZjE3IGxlZ2FjeS10cnVuaworMTU5MDcgNzk1YjMyN2E5NWZlYmRhYmJmYzliZGRhYzAyMDFhOTEzYWRhYmFmOCBsZWdhY3ktdHJ1bmsKKzE1OTA4IDJmM2U0MTg2NWQzZDNiZmJiYzNmOWFiMmY5MDFlMjY2MTBhZDkzZmMgbGVnYWN5LXRydW5rCisxNTkwOSA2MDdlNTI4NDFkZjI3OGZjZTJhNDEwNzk0MWVmMjFiNTY0ZWQ0NGY1IGxlZ2FjeS10cnVuaworMTU5MTAgNjdlNzc0NjYxOWRhN2VkN2NiNzVjYWI2MDJjOTRhYTczZDI1YTgzMiBsZWdhY3ktdHJ1bmsKKzE1OTExIGYxZjRkODIyZTc2MWU3YWNlYTlmY2QyNDUyNTY1MDliNzkxY2NiMjAgbGVnYWN5LXRydW5rCisxNTkxMiAzZjgwNzNjNjMwMzNjMTYzYTc5NDBlNjNiNzk3NWY3MjJkNjIzZGIxIGxlZ2FjeS10cnVuaworMTU5MTMgMmI3MmFhYmE3ODk1MTExNTY0ZWE3M2FiMWEwZDhkZTYxYWYyMzZkZSBsZWdhY3ktdHJ1bmsKKzE1OTE0IDMyODE2Y2U2MGE0OWIwOWFkZTk3NTkxNzI5ZTI4MDMzMTZmZmMzNzIgbGVnYWN5LXRydW5rCisxNTkxNSAzNTdiNzFjNjkzM2I4NTEzZDI1YmY5MWVmOTRhNzUzMDQ2ZmMzOGY3IGxlZ2FjeS10cnVuaworMTU5MTYgOTkxOWQ2NWVkYzc2Y2FmZmJkNmZjMjgwMDBiNjhiZjI3ZmUxMGVjYSBsZWdhY3ktdHJ1bmsKKzE1OTE3IGMzMzlhYzdiNmQ0ZjFlMTEyYjhiZmZlNjFmN2M1MmZiNGY5ODFlNjUgbGVnYWN5LXRydW5rCisxNTkxOCBmYTNkYzIxZDBlMDg4MGU1YzQyZDBkOTYyODQxODQ4NjIxOTYyY2ZjIGxlZ2FjeS10cnVuaworMTU5MTkgMWE0MmE5ZDEwMzU3ZTE0NmFmYWRkZTdiNDIxMGE2NzBjODA3ZTExMCBsZWdhY3ktdHJ1bmsKKzE1OTIwIDUzMzU1ZWQ2MTI4ODkyODE4N2M4NWNiN2U2MWM3NGYyYzJjYzBjNTUgbGVnYWN5LXRydW5rCisxNTkyMSAxMzllYWYyZjk2YWI2NzIxZTMyYTE4YmMyNGRlYmQ3NjFmNTA0YTA1IGxlZ2FjeS10cnVuaworMTU5MjIgY2NlMmM3YTM4YmQ1NmRlMTI2NjM0OTc4MTFjOWY1NjQxZGE2ZWNkNCBsZWdhY3ktdHJ1bmsKKzE1OTIzIGMzNjA4MDZjMDZjNzYzMjYxYWM1ZGRkODI0MTZiNGU4OGI0MzU4OTggbGVnYWN5LXRydW5rCisxNTkyNCBhMDllODYzNTUzNGRlMTJiNDJlMTc5MjY4MmExMjlmNGE1ZDM2NTlkIGxlZ2FjeS10cnVuaworMTU5MjUgNmZhYTQxMWM2MWZiNGFlZGYzMTAyYTIyMzUwNWJmOWZlYmM3ZDBjOCBsZWdhY3ktdHJ1bmsKKzE1OTI2IGM5YjFmMTk4NmM0MDI5NDhkNzIyN2Q4YjNjODJlNGFjMzFhMDQ3MmUgbGVnYWN5LXRydW5rCisxNTkyNyAwMjNhMjAxOGI5NmRlYmE4NGY5Nzc3NzIwMjFlZDE1MDNjYjI5NzAxIGxlZ2FjeS10cnVuaworMTU5MjggZjcyOTQyNDZkMDRmOGQ0YzU2ZDY2YTEwMzFjYTk2NDhlMzQwNWNiMCBsZWdhY3ktdHJ1bmsKKzE1OTI5IDVmNmYwODg2OTA1Y2QzMzE4NTAwZWVlYjE2MTUwNDIxMWIwMjA4NDEgbGVnYWN5LXRydW5rCisxNTkzMCBiNzhiOTk2ZThlYmMyYjA2MzIxY2ZhYmYxOTczYzZhNWU5ZjQ5MTAwIGxlZ2FjeS10cnVuaworMTU5MzEgMjA4MzQ2ZTkyNGNiMDI5MGFkNDA3MTc5NWIyNjQxNzA1NmFlYTUxMCBsZWdhY3ktdHJ1bmsKKzE1OTMyIGMxN2ZkMmNhNjY1OWMwMTQ4YThiNjhiNWVlYjRkYWU1NDIzMjAyMzIgbGVnYWN5LXRydW5rCisxNTkzMyAwNWU0NWM1ZjJkZTViN2NlZmQ2ODBkOGYxNmI3ZDA0NzQ2MjdhNmZiIGxlZ2FjeS10cnVuaworMTU5MzQgMDAyMWYzYzBiMjM4MDMyMzhlY2M1NDIyN2E5Yzk5ZTUwYmU5YzkxNiBsZWdhY3ktdHJ1bmsKKzE1OTM1IDlkOWU1YTdjMTJkYWJkMzkxOThkNzc0YjRjODMwZjMzZDFkZDVkNzIgbGVnYWN5LXRydW5rCisxNTkzNyBkMzdjMDI3ZTNmYWU5N2JkOGM1MGI2OTZlODkwN2Y1ZmExYjUwNjRjIGxlZ2FjeS10cnVuaworMTU5MzggMjhhOGJiNzk0ZjE5ZDU4YzgyMjJhYmI5NTcyMGY1MzA0YTQ5M2ZiZSBsZWdhY3ktdHJ1bmsKKzE1OTM5IDdhOTZlYzAxMDMzM2RjODI2MTIxOTc4N2QyODliZTQ0MmFjN2FhNDIgbGVnYWN5LXRydW5rCisxNTk0MCBkMzczNzQ1NTJhMTVmOWI2ZGMyZjhjNGQwNzVjN2UxYjRhZGY2NDJhIGxlZ2FjeS10cnVuaworMTU5NDEgOTE1ZDk4NTkxOGUyMWQzYTljZGJkN2Q3M2NjZmQ5N2Y2MTQwMzQyNiBsZWdhY3ktdHJ1bmsKKzE1OTQyIGVmMTMyNDJkZTQzM2U3NGQwYzI3N2RlMjk4NGVhNTk2YWUzNzY2NDQgbGVnYWN5LXRydW5rCisxNTk0MyA2ZjQ2Njk4MTQ4ODRhMzEwNjhlYjA4NTNkMTJmOTU0NDlhYjgzM2U0IGxlZ2FjeS10cnVuaworMTU5NDQgMWUzMDJkOTk2ZDU4ZDhjYjRhOTkwMWIzOTk5ZDMyYjBjOWM1ZjJlNSBsZWdhY3ktdHJ1bmsKKzE1OTQ1IDU0YmZmZGRkYzBlZjA4MzE1ZDY1MGU5YWYyZWM5ODQzMDQ1NGVhZGUgbGVnYWN5LXRydW5rCisxNTk0NiBlZmVjYmJmNzI3NjUzZDc3YTYyYWM4MDc2YzkyYTY3Y2FkYWFiNDZkIGxlZ2FjeS10cnVuaworMTU5NDcgZTljMzRjY2EwYzk2ODYyNDM1NTJlNmQ3YzBhZjZmNDQ3OTgzODg4MyBsZWdhY3ktdHJ1bmsKKzE1OTQ4IGM0NWJjMjU4ZjgzM2MxMjkwYTZlMDk2NWViYjNhY2ZlMmVmODQ0ODIgbGVnYWN5LXRydW5rCisxNTk0OSA1OTI5NGRkNGJmZGRmMWUxNDI4MzcxNjhiZGI2NzYwNmZhOGUyZWY3IGxlZ2FjeS10cnVuaworMTU5NTAgOTJiYTkyOGMwOWI4YjhjYzFhNzYyMTEzNTQ0YjdkZDIxMTFlOTIxNiBsZWdhY3ktdHJ1bmsKKzE1OTUxIDdlMjQ1YmM1OThiN2JjMzcxODNhNTVhNjllMzM1MWRiMmMwNTAxOTkgbGVnYWN5LXRydW5rCisxNTk1MiBjN2JlODQ3ODI2YjE3MjQxMGYyZDBlNmE5MWZiYzQ5NjRkYWMyMGI2IGxlZ2FjeS10cnVuaworMTU5NTMgN2U3MTk3NWVhNWYwOTBmZmZjMTQzZTkxNzdjZjQ5NGRmNTRiOTQyNiBsZWdhY3ktdHJ1bmsKKzE1OTU0IDMxMjhjM2NkMThlODZjZWE0NWYyMjA1ZmYxNzQyY2MyM2IzMWJmZGMgbGVnYWN5LXRydW5rCisxNTk1NSA1NDFkYjVmNjI1OWU5NmFjMzRjNzNjZDliMGI3OTc5NWQ0MjkzNzgwIGxlZ2FjeS10cnVuaworMTU5NTYgNzUzYWY2MmFiOGExOWJmOWFlYjMzNjhlMjQ0YWJiMjUxNzVhMTEyZSBsZWdhY3ktdHJ1bmsKKzE1OTU3IDk2MTY3YWY5MGZhMDMxMTRmMTk4ZTMyZGNiNzZlYjAxNDFhMmVmZjQgbGVnYWN5LXRydW5rCisxNTk1OCAxODkyMGVhYTEyMjY0YTdhZmE4ZDc0YWJiOTM0MGI1YmRkZmYxZjAxIGxlZ2FjeS10cnVuaworMTU5NTkgZWRlMThmZDVlZDE1YWU4ZDZmZWZhZjUyYTNmNGE2MzAxNzIxNzFmMSBsZWdhY3ktdHJ1bmsKKzE1OTYwIDRkZWVlZDU4YmY3NjRjZDU2N2I0ODVkY2NkYWM5ZTZjMGRlZTI4NmQgbGVnYWN5LXRydW5rCisxNTk2MSBjNTI3OWMwZjcxNmYwNWIyN2VjMGZjMDJkNmZhYjhmMzgyNzMxOTc1IGxlZ2FjeS10cnVuaworMTU5NjIgZWUxYTM0ZTVlZGIxMjc1Y2NiM2Y1NzU4NzU4YWZmZjY3MzcxZWY2MCBsZWdhY3ktdHJ1bmsKKzE1OTYzIGEwOTNmYWQ5MmNjZjg5NTA0ODhkY2Q2ZDg4MDcxODljZmU2Njk4MTAgbGVnYWN5LXRydW5rCisxNTk2NCA3OWM0YTA1NDI1NzI0NDJmNGY0ZGZkODNmMjg0YTg4ODQ1Y2RiMjVlIGxlZ2FjeS10cnVuaworMTU5NjUgYTYyNWNlMmZiZmJkODU1MmFhYTM0ZTc5Y2E5NWJlZmFlODQxMGI5ZSBsZWdhY3ktdHJ1bmsKKzE1OTY2IDVhNGRmOWQ5YzdiZjU2ZTNiNDdmNmRiYTJlZjUwYmMyOTUyYWMxYTQgbGVnYWN5LXRydW5rCisxNTk2NyBiOWE1NmU1ZTNkMjI3ZmQ5ZDAxZDc5NmNkNWNkZTc2ZjBjZWIwZTcxIGxlZ2FjeS10cnVuaworMTU5NjggZDY2NDM1MzM3ZTFjMmI1NTNiNGNjYjgzYWFjYTA5Nzk0YzcxZGJjYSBsZWdhY3ktdHJ1bmsKKzE1OTY5IGVhNGJiYWJjNzQ5NzMwOWJmZTUwYzJiYWRhOTE1ZTI5MjNiNzg3NWYgbGVnYWN5LXRydW5rCisxNTk3MCA5ZDIwNjg3M2M1YmQ0YjFmYThlODlkZmY3NWRhNGIxYjk1NjczNTNmIGxlZ2FjeS10cnVuaworMTU5NzEgYjExZTBhODk4ZGUwOTU1YmQ0Y2VmYWRlODZhYzg1M2ZmMjUwNjI5ZiBsZWdhY3ktdHJ1bmsKKzE1OTcyIGZmMjQzYjBmMTZlZWI4ODU1OTI3YzEyNjA5NWI1ODVmOWI1YzhhNjAgbGVnYWN5LXRydW5rCisxNTk3MyA4MjdiNTc2ZTI2NWI5NjA4ZDkyNWYzMzNjMGM0YThmMTA4MTgwOTczIGxlZ2FjeS10cnVuaworMTU5NzQgZjI5ZmJhNWM5OGJkZjdiMDgzMzI2MzBlMDU1YmQzODM1OTEyZDZkYSBsZWdhY3ktdHJ1bmsKKzE1OTc1IGMyOTA5ZWM3ZDRjZGNhMDI1Mzg1ZWEyYmM2ZWVjODliMDgyY2U3MzggbGVnYWN5LXRydW5rCisxNTk3NiA1NTViMmUyMmVlODk4MmRhMmRhNmYwZGI5ZmFiYTQ3ZWQxNjM0YTliIGxlZ2FjeS10cnVuaworMTU5NzcgMDk3Njg0YjkzY2E5YzEwNDlhODI2ZjI3NjdmNWI3NmQ1N2ZlMWE3OSBsZWdhY3ktdHJ1bmsKKzE1OTc4IDYzZWJiNjkwNjg3NzQ5ZDgyMDRlYWExYmUxOThiMjkyZjQ0MzMzNjMgbGVnYWN5LXRydW5rCisxNTk3OSBlMmFlZTYxOTBiMTk4NTAwM2UwMmI4YjZmYjMyYWJhYTk1MmE3NzhkIGxlZ2FjeS10cnVuaworMTU5ODAgNzlkYzFlZjVjMjJkMTk2OTE4OTI0NzZjYzcxOTYwNjVlMmFhODk5NSBsZWdhY3ktdHJ1bmsKKzE1OTgxIGE5MmY0M2QyMGVjYjE1ZjgzNzhiNTJhZjlmMWM0YTZkNTJlNmVhNDQgbGVnYWN5LXRydW5rCisxNTk4MiAwNDJiOTZjZGY3ZDc5NDUwMDgyMGM3MGRmNDA3N2Y4NTFlM2FmYmYyIGxlZ2FjeS10cnVuaworMTU5ODMgZDdiNDhjODQ5MTg5NTM0YjUzZjRhMzQzZDQ3MDk5OGE2NGI2YjEwOSBsZWdhY3ktdHJ1bmsKKzE1OTg0IDVkZDM4MWFlYjIzYjI3YTg4YTI0NGNiNGNmZDRlNDQ3OTU1MjI3NDMgbGVnYWN5LXRydW5rCisxNTk4NSAwNWQ1ZDNmOWExOGNiZmFmZGI4MDc1NDc3Mjg0MmMyMWU3ODlkZmQwIGxlZ2FjeS10cnVuaworMTU5ODYgMWNmNTQ0YmEyMzllNTYxNjU4ZGU0YjUzNjQwZTNhMzEyOTBiZjAzNiBsZWdhY3ktdHJ1bmsKKzE1OTg3IDJlYmZmZjEzOTM2YzI0YzBkMWJmZjFkYzVlMTZlMGI4MTMxNGZiYjEgbGVnYWN5LXRydW5rCisxNTk4OCAxMjQzN2RlYjA2ODBhYmFmYzExNzQ3ZGFlMTZhOTAwODkzY2MxYTcwIGxlZ2FjeS10cnVuaworMTU5ODkgYzJkZjVkMjgwMzRkYTU3N2I4OWI1YmVkMGM4MmQyMGEyODkyYmM2ZSBsZWdhY3ktdHJ1bmsKKzE1OTkwIGYxOTVjOTk4MWZhMWE5YTY1MGViZDNiNTA2MWJjNTFhY2VmMmViMDIgbGVnYWN5LXRydW5rCisxNTk5MSAzNDRhYjM0OGYxZTljOWQ4YjAwNzMzMmY4NjA4YzBkZTdhMzU4Zjg0IGxlZ2FjeS10cnVuaworMTU5OTIgNzA2NmJlMmVkYzNiNjlkNWY2OTMxZTUxZjQxOTdkMThjYzFmM2U0OCBsZWdhY3ktdHJ1bmsKKzE1OTkzIDIwOWViNDRjZGJmN2UxMTQ2NjIyNThhMjU0Yzg4YzU4MTNkMzYyYjQgbGVnYWN5LXRydW5rCisxNTk5NCA2OGRkNDAzMDcxNzI2ZTFmOTlhYzQ5YTU2OWU2OTE1Nzc3YzI2NDE5IGxlZ2FjeS10cnVuaworMTU5OTUgODZjOWY2OTFmMzc5MGEzOTBiYjcyMzkwZDAyNDNjOTg3ODRhNWZlNCBsZWdhY3ktdHJ1bmsKKzE1OTk2IDc5ZjhmNmI5NjNjMjY5YTI0OWY0NjgwOTA0YjVlYTJjMWIwNDVmZTYgbGVnYWN5LXRydW5rCisxNTk5NyA3OGJmYzc0MGI2MWNkMWQ5Y2UxZGI2ZWY0YTNjMDA2ODU0ZmU2NTUwIGxlZ2FjeS10cnVuaworMTU5OTggMzFmOWZhNDJkZjYwMGFhY2Y1ZWUwODM3NWJhYjRjNmQ5ZmUxMTBlMiBsZWdhY3ktdHJ1bmsKKzE1OTk5IGFmNzI4MDVlOTk0MmFkMmZkZjVhZmI5MjVjOWQyNTNiNTNhYzI5MTEgbGVnYWN5LXRydW5rCisxNjAwMCAwNDkzOTViMDI2MDJhMzRkMTBiNDVhNjI4ODkwMWQxZjlkNDE1MWQzIGxlZ2FjeS10cnVuaworMTYwMDEgNjUwMTU0MjkyZWUxMTczYTYzMDRlMmI2NmYxMWE0OGM4NzExN2RkYSBsZWdhY3ktdHJ1bmsKKzE2MDAyIDUzYmUyODVjZmQyY2FjNmJiOWI2ODZkYTQ0MzcyYjlhMDA0MDNiOTQgbGVnYWN5LXRydW5rCisxNjAwMyA2MTA0YjYxMjE1ZTY3Y2E2M2Q2Yjg1MzYyMjBlNDdkNWVjNmY1YTdiIGxlZ2FjeS10cnVuaworMTYwMDQgNTQ2NjI3MGRiYzkyNjhhMGNhMWE5N2RkZmI5MjU3ZTM5ZDkwYzFkNyBsZWdhY3ktdHJ1bmsKKzE2MDA1IDFlNDZjMjNiMWRhZGI3NGU2ZWMzMzdlMjY4OWIwZjIyYzkwMmMxODcgbGVnYWN5LXRydW5rCisxNjAwNiBhNzkyYjc0Y2M5ZThjMzUyNjdiOTlhYmQ4ZTk5OTczNTc2YmQ0YTU4IGxlZ2FjeS10cnVuaworMTYwMDcgMDlkOTE3MmZiMWQzNGNkNzIwMGQwNjVhN2E2OTYxYTcwNWI1NzZiMyBsZWdhY3ktdHJ1bmsKKzE2MDA4IDU3ZDZhMzFlZTQwZTAxNDlkMTk4Nzk5MzY5Njg3NTNkYTYxZjVmYzYgbGVnYWN5LXRydW5rCisxNjAwOSA1ODkyMDJjNjQ4ODc5MWQwZTdjNzMyN2M4YWM0OWFiMDkyM2QwMDAyIGxlZ2FjeS10cnVuaworMTYwMTAgOGVkZTRiMDgwM2ZiNzlmZmMzN2NiMmQwNzZkYjE3NzU4NjZhYjFjMiBsZWdhY3ktdHJ1bmsKKzE2MDExIGFjNGQzY2ZiYzFjOWQxODQxOTRjYjljMmU1OWMzYWZkMTI3NzNkZGIgbGVnYWN5LXRydW5rCisxNjAxMiA4ODY0MGVjZjU1MDYxZjMyNWNlZjhiMTIyMmJhNGY4YTk3MTBkYmQ2IGxlZ2FjeS10cnVuaworMTYwMTMgODYxNzdmYjBlZGQ4MzVjY2M0Yjg4ZDc2ZDEyY2M4NDc2YTEwOWViZiBsZWdhY3ktdHJ1bmsKKzE2MDE0IDMxMGQ3Y2JiYTMyOTIzOWM5YmM2N2EyYjczNzk3NTFkMGMwOTI5NTggbGVnYWN5LXRydW5rCisxNjAxNSBhNmE2NGU5YWIyMzhkMGZlNDFjMjY4NGY2ZWEwNWFiOWY5NWVkZTUzIGxlZ2FjeS10cnVuaworMTYwMTYgZmYwOTc0ZTg4MjFiZWVjMzJkNzYxZTAxYzk5MzFmZjUzYzZmNmUxMCBsZWdhY3ktdHJ1bmsKKzE2MDE3IDkxNmZiMDI0Y2U5NDJkMDk3YjA4Y2U1Nzc5NDc0Y2E2ZDZiYTZiNjQgbGVnYWN5LXRydW5rCisxNjAxOCA4N2VlODJlNWM1NmQzMWI3NzFmNzZlZDVjZTMwYWNiNjMzNGY5ZmY0IGxlZ2FjeS10cnVuaworMTYwMTkgMzRhNmU1ZmVjYTE4ZTNlNGIzMmFmNTJkMTYyOTQ0ZGJlMjcxZGM1NCBsZWdhY3ktdHJ1bmsKKzE2MDIwIGJhYmU3YjljYzYxNzQ1NmY0MmQzNTVmMWMyOTllMDUzODViYWUwOTggbGVnYWN5LXRydW5rCisxNjAyMSAzZGE0OTM0MjE5ZTVmNDc3ZTc1YzQ4ODdiOGQ2ZGU4YjQ0NWIyNjJmIGxlZ2FjeS10cnVuaworMTYwMjIgNWZjMThiY2E3ZjU1YWMzM2E1MjkwYzUyNDA5ODA3MTE0YmIzM2Q5NyBsZWdhY3ktdHJ1bmsKKzE2MDIzIDFjNWE1YWRlMDRlMjc2MmM5YjExZTI5ZGI5MTI5YTJmMjY1YWEyZGYgbGVnYWN5LXRydW5rCisxNjAyNCBjNmZkNmZmYmNiMTVjNzgxY2E0ZDRlYjg1MjViNmVkNmZlYWUyNjgzIGxlZ2FjeS10cnVuaworMTYwMjUgODQ4NzlhYjcxYjlmM2ZkOGRhZjk2YmZiNzdiZGYxMWExMjY3ODc4MSBsZWdhY3ktdHJ1bmsKKzE2MDI2IGI5YWRiNzljZGViNjM0MDlmOWY1MWQ0YjQxOGIxZjIzODM2MGY4NWUgbGVnYWN5LXRydW5rCisxNjAyNyBlOGJiMGQ1MzY2MzNhZTc5NTIzMDk4YTI1N2YxOGM0ZDUyMzc0ZDM0IGxlZ2FjeS10cnVuaworMTYwMjggNGM0ZTk1MTQ3MjU4MTExMjU4Mjc0ZjU0NGQ1ZGVlNzU2ZmRkNmRhMiBsZWdhY3ktdHJ1bmsKKzE2MDI5IDRjZTI1NTQ5NWRhMzQwMzA0NDBhNThiN2M3MGY0YTU1YWJiOWJhYzcgbGVnYWN5LXRydW5rCisxNjAzMCA4MzM3N2ZjMjk4ZDgzYzhhZjRlZDdlZmQzZDhmY2RlNmU1OTI5MjFjIGxlZ2FjeS10cnVuaworMTYwMzEgZTcyY2I0MjE3NmJjNzE5M2Q5NTIyMzI0ZDdkMzVjNDVhY2Y0YzU3MCBsZWdhY3ktdHJ1bmsKKzE2MDMyIDYxNTVmNTMyZjFmY2M0ODg3YmZlODlhNTA5MTliYWRjNDUwZDVmZWEgbGVnYWN5LXRydW5rCisxNjAzMyA4OWYwYTY2NGUyODMwYjFjZWJlZDNlOGRiM2ZiOWExZTUwMjdjZmJlIGxlZ2FjeS10cnVuaworMTYwMzQgZmRiNzhjZmQ5ZTc2N2Q5MmE4MjExNjMwMDg1NjlkMmViMDkyOTMxYSBsZWdhY3ktdHJ1bmsKKzE2MDM1IGVmYjRiMGM2NjY4OGU0MzYzMmRjMTM1NWI5YzllYjcwMDc5NWI1YzIgbGVnYWN5LXRydW5rCisxNjAzNiBiNTMyOTBiN2I1NDY4YTE5YjdlOGQwOGY0ODBiZDFhNzk0MDVhZDU4IGxlZ2FjeS10cnVuaworMTYwMzcgMWMyN2IzN2VkMWExYWU3N2YyNWU2NWU2NmI4MjNlNDYxYjY1ODNiMyBsZWdhY3ktdHJ1bmsKKzE2MDM4IGJjNzE0YTdhMDA0Mjg0YmVkYzc0NzhiNDU1YTc1NGFlY2U1MmMwN2UgbGVnYWN5LXRydW5rCisxNjAzOSBlMmIzNjIxZTY1MjEzOTJhZWI2YmI3Y2NjNzVmNTliMzViZjUyNmVlIGxlZ2FjeS10cnVuaworMTYwNDAgMzM3MGVkYWQwOGNlZDVkZjg4OGVhY2JhNzk2ZjlhYWVlYTYwNTc5NiBsZWdhY3ktdHJ1bmsKKzE2MDQxIGUyZWUzOGVhN2YzNWU0ZDRhMDNlMDczY2UxMTQzMDAyM2I0ZGRjMzEgbGVnYWN5LXRydW5rCisxNjA0MiA1MDNhNzM5OTgyMjJjNTMxMjQ2OWM4MWI2YjA5ZDYyYjZjNGNlNmE3IGxlZ2FjeS10cnVuaworMTYwNDMgM2Y1OThiOThkN2Y5MjI0MDZmYzRkMTgzN2JiYjAzYjI0OTkwOWQ3MSBsZWdhY3ktdHJ1bmsKKzE2MDQ0IDkxZGUzZjAzYWU4OTI3YWYyZjc3OTAxMTcyMmQ0NTViMTA3NmIxMjIgbGVnYWN5LXRydW5rCisxNjA0NSAzZTA3YTczMTVhZjUyZmY2ODQ1Zjk4YzQ5MDZhNGRlZmZkNGE1NjVmIGxlZ2FjeS10cnVuaworMTYwNDYgNTEwMmVmZmIwYzRiNGM1ZWI1ZTZjMmRlODVjOTljNmY5ODA4YjZhNSBsZWdhY3ktdHJ1bmsKKzE2MDQ3IGUwZWI0MzFlNDM5M2FjZDdmNjI2YjFjMmJhNzM5NmIyY2RmYzU5YzMgbGVnYWN5LXRydW5rCisxNjA0OCA3Mjk1ZjM2MDI2NGU0N2NjNTFlNmFlMWE2MTA3ZjEwN2YxMTkwMDUwIGxlZ2FjeS10cnVuaworMTYwNDkgNDAxMWFjZmUxNDMzZmE5NjE1YmIyZDY1ZGQ0YWIzZDY5MTE3MTUwZSBsZWdhY3ktdHJ1bmsKKzE2MDUwIGYxMTljMmQ4ZDU2MDNmN2ZmNGMxOTk4ZGJiZjliZjRjNTNmNDg4ZGIgbGVnYWN5LXRydW5rCisxNjA1MSBjYjE4NjQwMjU5OWE3MjdmYWExMDI0MzI5NzI5MDc3OGQ0MDNhNGIyIGxlZ2FjeS10cnVuaworMTYwNTIgN2VkYzQ4MGJiOWYzOThlOWQyNDFlZjU4YTQzZjUzZTQ3OTkzNjQ5YyBsZWdhY3ktdHJ1bmsKKzE2MDUzIGNmYzY0ZmFmMTJjZTU5OTAzOWFlMTlmZGQ0YjllZDQ1MmVlOTIzNDQgbGVnYWN5LXRydW5rCisxNjA1NCAxOGM4MWYxYTBkYTIzNDg5MDM5NGI3MTZmMmNhZTZjMmY5ZGU3NWZkIGxlZ2FjeS10cnVuaworMTYwNTUgZTM4YmU4NzE3ZWMwMzFiNjEyYjhlZjU1NjFiYWUzMjYzNmQzY2JmZSBsZWdhY3ktdHJ1bmsKKzE2MDU2IDgwMGE3NWQwNzg3ZjBhMDFhODg5NWNjNmQ4NmVjYjk5OWIzZWE0YTcgbGVnYWN5LXRydW5rCisxNjA1NyA2ZTRkZjM0MTRhNWZjZjUwMGM1NzhiYTNjMTJiNjBmOWZlYWQ1M2I3IGxlZ2FjeS10cnVuaworMTYwNTggYjkxYjU3NjJiMWNkMTE0YWI3YzAzN2ZkMzY0ZTg5ODVkZGVhZmFmMiBsZWdhY3ktdHJ1bmsKKzE2MDU5IGE1ZTIwZDA3NDcwYzVlN2I4MzE5ZDkwNTRmZDEzZTRjOTkwMzhhNmYgbGVnYWN5LXRydW5rCisxNjA2MCA0NmVlMjcxNWQyOTgzOWJkNjNlYWJhYjI0NjliYjM1OWZjZTNmYmE0IGxlZ2FjeS10cnVuaworMTYwNjEgMmZiM2ZiNjQ2Y2M1OTU5NjMwNGEzNThkNTYzNGNjY2I4MzllMmVkYiBsZWdhY3ktdHJ1bmsKKzE2MDYyIDNkYjYyYzc1ZTY1YjE1NzI5ZmU2NjBlN2IwMmRlMjA0MzBiYjVhMDQgbGVnYWN5LXRydW5rCisxNjA2MyAxY2Y2NzM4MjQ5YWZmNWUzMzM5YmU3OTFmM2I0OWVhZDAzZDZhMjBhIGxlZ2FjeS10cnVuaworMTYwNjQgOTA1NDBjZGY5YzhkOTY0N2E2ZjRlNmM4OGY2ZmE5YzI5ZGY4OGE1OSBsZWdhY3ktdHJ1bmsKKzE2MDY1IDM2MDc0MjIyMTYxYzBiMWI0ZTdmOThhNWQ0NWM2ZmZmYjQzN2MxNTYgbGVnYWN5LXRydW5rCisxNjA2NiA1MGY5NzdlMWUyYWI3MGQyYmU3ODkzZmZkMjliNWRkOWQ0MmNiMDMxIGxlZ2FjeS10cnVuaworMTYwNjcgMzNjZTYzYjA2MzU5MDhmYTNmYzAyMzc3MTYwYWQxNTBiZDc5NDljMSBsZWdhY3ktdHJ1bmsKKzE2MDY4IDM4NGZhOWI5ZTI1M2NhMGY3NDQwN2FjYzNmZDBmNDRjYTBjZTFkZjMgbGVnYWN5LXRydW5rCisxNjA2OSAwODViMDE1YTkyOTFkOWQ1YTEzNjk4ZWMzODA3YzBkNDQyYjc2MTdmIGxlZ2FjeS10cnVuaworMTYwNzAgZmMyYWQ2ZmEwOGVjZTkxMmIzOGQ1MTc2ZTVhMTY3N2U0NzUyOWU5MCBsZWdhY3ktdHJ1bmsKKzE2MDcxIGM3ZWYxNTg1OTgzYzQ2NjU0Y2M0YzdhMjExMDJhMjk5NWMwOGY5MjQgbGVnYWN5LXRydW5rCisxNjA3MiAzYzM1YmY3YjU4MGIwMjJlOGI3YmU3NjAzNGQ4MGZkYjQ3OTBiNDc4IGxlZ2FjeS10cnVuaworMTYwNzMgMDY5NGNlM2JkNDhmNjdiMTE1ZGI1ZTc4OTU0ODA0YzZhYmRkZmRmMyBsZWdhY3ktdHJ1bmsKKzE2MDc0IDQyMGFiNDQzMDIxZTk2NWQzYmNjYjJjMzgxYzI0MjYyMDA4NzRkMGQgbGVnYWN5LXRydW5rCisxNjA3NSBhMmJjOGRmZjU1ZGZmNTQ3NDRhNGMxM2RmMTY0M2NmYmQ0NzBlNzk4IGxlZ2FjeS10cnVuaworMTYwNzYgMDNhYTI2ODE5YWMyNzY1MWQ5Y2Q5MmUwYjk0YTIzMDQ3Y2E4MTYyMSBsZWdhY3ktdHJ1bmsKKzE2MDc3IDU4MTgzNjc5YzkwYTIyMDk4YjYwOWUxZjJiNDBlZTUwMWUyOWU3MDcgbGVnYWN5LXRydW5rCisxNjA3OCBmZDc4YmM1ZjJiMmNjYjFiZjRkMzg0NDExMTc3NzRjODQ0NWEzM2I1IGxlZ2FjeS10cnVuaworMTYwNzkgNjZkNDJjNTFkZjE2YWVmOTJlYWJlNDIwOGVkMmM5MzYxYTY0N2I5MyBsZWdhY3ktdHJ1bmsKKzE2MDgwIGNkOGE0MWJmNGFjMjBiOWE3MmI0ZjBmNzE4MjRiZTdlZjdjODYxZDkgbGVnYWN5LXRydW5rCisxNjA4MSAzOTBlNWQ1MWZmNzMzMmI2NTEyYjhmN2U0MWQ4OTc4ZTdkNTcxMmQ4IGxlZ2FjeS10cnVuaworMTYwODIgNjdhMDQ4MTZlYTUwMTFhMzAwZWUzN2EwNjM2ZWE0NzNiZjM0NGUwOSBsZWdhY3ktdHJ1bmsKKzE2MDgzIGFjMjRkODJkOGUzM2JhYTYzYTllN2VjMTgwZTY2ODY4MjBlMDhlYzggbGVnYWN5LXRydW5rCisxNjA4NCBhZjEwZDliNzQxNDNkMmMzYWIxOGQ4OGNiOGEzZmUyMzk0M2RkYWFmIGxlZ2FjeS10cnVuaworMTYwODUgY2VkODYwZjJkOGQyY2E1ZTBlYzJmYTBjOTRkYWMyOTY4NGU3MjhjYyBsZWdhY3ktdHJ1bmsKKzE2MDg2IDM0MThkNWMwZjk2MDIyY2E4ZWMzY2U1ZTA3N2NlNmFkMjk0NTBhNmQgbGVnYWN5LXRydW5rCisxNjA4NyA3YmFjMTBhOWJiNjFjZjZlYTBiZGExZjA2YzNkZTk1MmMzOTJjYzNiIGxlZ2FjeS10cnVuaworMTYwODggMjQ3MTc0MDVkZDg5OTBmOWIxYTk2MjU4ZjFmOTIzMGIyMDYzZjIwOSBsZWdhY3ktdHJ1bmsKKzE2MDg5IGMxNTViY2NiN2EyMmZiMjQ2OGExZTQwZGY0YjkyNjUxOGI3ZmZkMDggbGVnYWN5LXRydW5rCisxNjA5MCBkOGE0MDc3NzdhNmY0YjdhNGE4MTMxNGM1NDM3MmYzZWQ5Nzg5Mzc5IGxlZ2FjeS10cnVuaworMTYwOTEgNDU0OTQwNDZjMmZiNjFjNTdiZjNhNzk1NGNlMWVkMTUyMjk1Y2NkNSBsZWdhY3ktdHJ1bmsKKzE2MDkyIDYzZDI4ODdiYWYxMTg0MjZkMzJmYzQ5MzRjMzZiY2MxZDUzMmQ4NmEgbGVnYWN5LXRydW5rCisxNjA5MyA3ZTNkNjA0NTU5NThmYzczODYzYjY1ZTQ0YzI5ZDEwYTQyNzQwNzAxIGxlZ2FjeS10cnVuaworMTYwOTQgNTYyNmQ0MjU1ZmNlZDVjYzkzNjE2MDgzOTg3NDNjOWRlY2JlN2NmZCBsZWdhY3ktdHJ1bmsKKzE2MDk1IDg5ZTQ3ZWJhMjc3MTg5YmM4OGY0ZDkxYTgzY2MzZjU2ODliNjk0Y2UgbGVnYWN5LXRydW5rCisxNjA5NiA4N2RmMWFlNGYxMTBjNWQwOTdkMjMyNDE1YTQ1MDk1YjA2NjgxYzNkIGxlZ2FjeS10cnVuaworMTYwOTcgOGQzMjRkOWQ1MThmZGJkNTBlMGM4OTMxNDRhYmZmMTg5MGM4MTlhOCBsZWdhY3ktdHJ1bmsKKzE2MDk4IGYwZDQwMmQ0ODE4MGJlOTQ4OGRiOWRkZTZjMjI5MjBhZTRkY2IxMGEgbGVnYWN5LXRydW5rCisxNjA5OSBlMTAxNjAwYWRlZTQ0YTYzMTJlOWYxMjAyMTZiZTFmY2E1YzU0MzZkIGxlZ2FjeS10cnVuaworMTYxMDAgYTdmNzIwMjJiOTNhYzg5NzIzOGMyNmRjZmNhYjM3OWZkYmRmMjEyMyBsZWdhY3ktdHJ1bmsKKzE2MTAxIGY5OGQ2ZDYzYWQ3MWI2YmMxNDRhMGRmNDdlMWM0N2FiZDFjMDYwYTYgbGVnYWN5LXRydW5rCisxNjEwMiBkZmYyNzdkNWZlYjI1YjBlZTlkY2EyNWFkODMwMjMyMDdlMTEzZTYzIGxlZ2FjeS10cnVuaworMTYxMDMgM2YxYmQ0NzgyNjI4YjZhMmQ1ZjQ3NDYzNDY1MTY0MDk4MzZkZTBlMyBsZWdhY3ktdHJ1bmsKKzE2MTA0IDJhNWEzY2FkNTE3NGE1ZmJhNzU3NzJhYzNmZGNhNGVjZmNiODBlYmUgbGVnYWN5LXRydW5rCisxNjEwNSBhYmVkODBiNTBhMmNjYWJhNDMzMmRhZWRjYzQ5OTY4NjA3YTRmYjQ2IGxlZ2FjeS10cnVuaworMTYxMDYgYzMwMjlmMjc2MDQ3MmNkODU0YjBmOTYyZTJjZmVjNTExZDQzYzdiNSBsZWdhY3ktdHJ1bmsKKzE2MTA3IDRjNDBlZjVkY2Q4MjdhZjlmYWQ4MWZjMjhhZWEzOWRhZDZkOTNkOTcgbGVnYWN5LXRydW5rCisxNjEwOCBmYjMwOTk2MTAxYmM4MzRkMjllOGEzMTZiZWE0YzBiMGM4NzNiMjgxIGxlZ2FjeS10cnVuaworMTYxMDkgMzg0ODM1ZWEwYTVhMTZiMzg1ZTIwOGNiY2FkNDRmNzg5NjZiZDNjNyBsZWdhY3ktdHJ1bmsKKzE2MTEwIDc2Mjg4ODJkY2NjZGU4N2UwNjhlZDQzMWM5M2E0YzU1OTgzNTI3M2MgbGVnYWN5LXRydW5rCisxNjExMSBiMzUzMGRhZTAzYmZiOTdmZDhhMzA3NzIzYzIyZDJmZGRjOTBjNmY0IGxlZ2FjeS10cnVuaworMTYxMTIgZTBkNjc2ZTljYjY2YzE0MGE3N2ViNWQwOTg1Nzg4ODEzMTA1ZThmYyBsZWdhY3ktdHJ1bmsKKzE2MTEzIDU2MTljM2Y3YTQ0YmRjNWFkMTY0MzA3NjE0NmU5Y2QyMGNlNWM4YmMgbGVnYWN5LXRydW5rCisxNjExNCBkODg1MzVjY2FlZTVjMjY5YzY4NDJmOTc1ZTdkNDRkYzE1MWY2M2ExIGxlZ2FjeS10cnVuaworMTYxMTUgMGIyODllMDBkNTJhMjc0NTUyMTNhZWRjZTBiMGQwYjIxY2VjZDRkMCBsZWdhY3ktdHJ1bmsKKzE2MTE2IDk5ZjM0MWE5N2ZkZWI2ZjA3OTI0YWU1ZDgwY2ZlYzQ2OTQ5NTEwOGQgbGVnYWN5LXRydW5rCisxNjExNyBiNGFlZGQ5MGM4NjQyZTlkYTBlYTRjMTYxMmMyNmQ3YTZhOWUxOTM4IGxlZ2FjeS10cnVuaworMTYxMTggOWExYjk2MWUwYzNhZjUwNDFiMDlhNTNkZmQyOTJjZjhmNWQ1NjllMiBsZWdhY3ktdHJ1bmsKKzE2MTE5IGQ4MDM4MTMzNjYxMmQ2MWQ3ZTI4ZjQxNTkwMzk4Yjk1ZDI2MmU4ZjQgbGVnYWN5LXRydW5rCisxNjEyMCBjODcwNmU1YTg4MmZhMjEyZGYzM2MwZTU4ZGFhZjk1NDE3ODI5ZDc4IGxlZ2FjeS10cnVuaworMTYxMjEgNjBhOTcyNmQ4NWY4ZTMwMzQ2YzhmY2EwYmNlYzFlYTE1ZTVmZjRiYiBsZWdhY3ktdHJ1bmsKKzE2MTIyIDQ4NGJmZGU3MGRjY2JmNGNiNmJjODNjNjA4NjlkNDk2YjU0ODY4MWMgbGVnYWN5LXRydW5rCisxNjEyMyBiZWY3YjYyOWFjOTU5YmUxMzVjN2NkZDA1ZDFlOTU5Y2I1NDU3YjY4IGxlZ2FjeS10cnVuaworMTYxMjQgMDJmODcwNWJkYTA1ZTUyMDZmZDg2MTExZTllOGIwODk1NDZkMWUxZSBsZWdhY3ktdHJ1bmsKKzE2MTI1IGYzNjkzNmQ0M2QwMmJiYzYzYmUwMzA5ZjQxYWE2OGJhZTRmZmVhNTIgbGVnYWN5LXRydW5rCisxNjEyNiAzYmUyOTQ0OTU5ZGE3M2M1Nzk3MTc1YmY5MGE0ZmI4MDBkNjgyYmY2IGxlZ2FjeS10cnVuaworMTYxMjcgYjU5NzA2N2UwNTZmNzkxYjM0NTk5MDI4MjJmZWJjYTY3ZTg2ZDhhMSBsZWdhY3ktdHJ1bmsKKzE2MTI4IGExMTEwZGE2NTdlNTBkZGU1M2UwZmE5MzBlYTQ2ODUyMjIyNTFiYTQgbGVnYWN5LXRydW5rCisxNjEyOSBjYmY2NmU0ZmYwOGYwZWU5Y2EwYjEyYTllYjFjZTg2MGZiMzk3OWQ0IGxlZ2FjeS10cnVuaworMTYxMzAgOTQ3OTBiMGM1NWQwNGFjY2NmMzk2Y2Q2MTYzODQzMmYyMzM3Mjc1NCBsZWdhY3ktdHJ1bmsKKzE2MTMxIGYwYzgwYjgzNjRlMjBiM2I0OGQyOGVhZGI2MzcxYmM4ODlmN2EyODEgbGVnYWN5LXRydW5rCisxNjEzMiAzYTAwMDMxZjlkNjBjN2MyZGYyZTFmYzFkODJhZGJhYTkwYzNjOTYxIGxlZ2FjeS10cnVuaworMTYxMzMgY2Q4YjhiYWZiYjMzOTczYjE5NDEwOGY2N2E3NTMyMmViZmNhYjk5ZCBsZWdhY3ktdHJ1bmsKKzE2MTM0IDc0NTE3N2JlMWE3MTdjZjE1MzJhMTUxZjI3YTVjOWNkOTYxMDgxOTkgbGVnYWN5LXRydW5rCisxNjEzNSBkNjc5NzQ1ZDk4NmZkYjQ5MGE3Mjc2YTMxNDRjNGZlMTA0ZWVmZmJkIGxlZ2FjeS10cnVuaworMTYxMzYgOGZiNzMxMWQxMzgxMDg4ZTU4ZDY3MGIxOWJmMGVmMzVhMTM5MTViOCBsZWdhY3ktdHJ1bmsKKzE2MTM3IGNiYmU1MTJkMjRlMDVjZWQzNDdhMGQ2ZjgyMTlhYTFmOTZhYTNhOTggbGVnYWN5LXRydW5rCisxNjEzOCBiZmUyMmNmNmU3NzA4YmE2NDJhNDBhZGQyNmYxZjBiM2IxNDQ4YTFjIGxlZ2FjeS10cnVuaworMTYxMzkgMjAxN2Y1NGIwMzI1YzdhNjliMjdjZTJkYzY3YzA0MjlkYTFlOTNhNyBsZWdhY3ktdHJ1bmsKKzE2MTQwIDExM2Q4MzNlZWE3ZTA3YTkxOGJiNTE2YWI1NDU0OWQ5NDQwNDE4MzkgbGVnYWN5LXRydW5rCisxNjE0MSA2MmUxNDBiYTc4MmRjMDQwMDk0ZDE4ZGY4NWNmN2U0MzU3ZmE3NDZkIGxlZ2FjeS10cnVuaworMTYxNDIgZDE2NmExZTYwNzYwZmQyNmY2MTFhMmMzMzNlOTViMmI0ODEzODFkZCBsZWdhY3ktdHJ1bmsKKzE2MTQzIDg5ZmY1OTE3YmM4YmM3ZjA5Y2RhZTVjMzczZWE5MTdiMDgyMTQ5M2EgbGVnYWN5LXRydW5rCisxNjE0NCBiMmQxMDQwN2FiOWRiY2FjYTZkYzBlN2E0ZThiZTI0OGU2ODg2OGI2IGxlZ2FjeS10cnVuaworMTYxNDUgM2ZmMDIyZTFiOTVkMWFhZjA1YjE4MjJmYWUzNTZlZDc4YzIxYTE4OCBsZWdhY3ktdHJ1bmsKKzE2MTQ2IGVhY2IyZTUxZTE2OTY1MjBiZGM4NWYwMjczZmY3Y2M0YjUxOGEzNDggbGVnYWN5LXRydW5rCisxNjE0NyBhZmYxYzQxNDZjMWMyZjNhODc0Zjk2YjUzNDJkNTNjYWMxNDVkY2RlIGxlZ2FjeS10cnVuaworMTYxNDggM2YwOGJlZGMxYzI2MTUxNmM1MjIzY2JlN2U5ZTIyZDc2M2JhNWMwNCBsZWdhY3ktdHJ1bmsKKzE2MTQ5IDFiZTQ2NjUxOTBmMDY5NTFiMzgyMmIzOGNkZGU4MjhiYTg0YjMyMWIgbGVnYWN5LXRydW5rCisxNjE1MCA4ODA0NGY5ZGY4MzNkNTY0ZDgzZmNjNWM5NzMzODhjMjQ2M2M5OWNkIGxlZ2FjeS10cnVuaworMTYxNTEgMWMwZDM1YmExNmIxYzYyYjIxYzA2MzhkNDI1NWUzYTYyMTM5MmQ4MSBsZWdhY3ktdHJ1bmsKKzE2MTUyIDYyNzU0YjllYzdkZmMwNWY1NjIwZWM2N2Q0YzUwZWY5YTg2YjA5ZjkgbGVnYWN5LXRydW5rCisxNjE1MyAxYjQzNTlhMjk3NmRhYzMzMTY0NzViYjFiZTI0MzBhZDVkYTZhOTczIGxlZ2FjeS10cnVuaworMTYxNTQgYjA1ZGY2ODcyMTVlZjQ0Yzk3ZjVmZTEwZDA4MjFhOGFjN2IzYTI1NCBsZWdhY3ktdHJ1bmsKKzE2MTU1IGJjYjE0NjI3YjhmNDFjYTExMTZkNTA3ZmVmNGM1NzljNWMzZWM3OWIgbGVnYWN5LXRydW5rCisxNjE1NiA4MTA3ZGUyOGJjODIxMzlkMDQ3ODMxMmRhMGFjOWVkYjNjNmY0NzFlIGxlZ2FjeS10cnVuaworMTYxNTcgMzE3ZThlMDljZTg3NzFjNjJjYmM2ZDdjYTI0NGI2MDNkYzI0ZTgwYSBsZWdhY3ktdHJ1bmsKKzE2MTU4IDc1OWY2OTg3NDBjY2YzZDZjZTk2YmY3MzM5OWY4OTA2OGM1ZDBlYTcgbGVnYWN5LXRydW5rCisxNjE1OSA4ZWI1YzM2ZWRlOWU3MTNkNjVlMGZiOGNiMmI4NTY5ODlhMTk4ZjU1IGxlZ2FjeS10cnVuaworMTYxNjAgZThjZTFiYjA1NmFlYzIxY2RkNmZhY2I5OWVkY2I4MGI3NDQyZWZlZCBsZWdhY3ktdHJ1bmsKKzE2MTYxIDIxMTE5MTg5ZWUxODJjYmU4MDkxMmZkZDBhOGE1YjZlZWUwNWI2ZGUgbGVnYWN5LXRydW5rCisxNjE2MiA5OGRiMGMzYzFmYjlkYzAwNDk3M2EwMWFmMDJhODQ5MzcyMDk4MTFiIGxlZ2FjeS10cnVuaworMTYxNjMgOGYxYTJkZWViOWIwMDBkNDgzZTBhNGFjOGE0ODA4YWRlMjU0ODAzNCBsZWdhY3ktdHJ1bmsKKzE2MTY0IDdmYmRiNTgxODM4ZjYzMWJkZDc0YzJjZGIyZTE0ODg3NTE2ZmFiZTUgbGVnYWN5LXRydW5rCisxNjE2NSBlOTVmZjIxMWI5ZDNjN2I4YTAwZjhlMGRjOWViNjFiZDgzZDFlODQ2IGxlZ2FjeS10cnVuaworMTYxNjYgNGNmMjE4NTJmZDUyMTYwMDkxNzYwMmU2MjcyNTNmM2I0OThkNDFlYyBsZWdhY3ktdHJ1bmsKKzE2MTY3IDUzNzE0NzhmNmY1Yjg2ZGUzZTZkMjUxZjVjYTRiMWFkNDM2NDdiNTUgbGVnYWN5LXRydW5rCisxNjE2OCBhNTAzYWY3ZTdmYjdiYTY3YTRlMzBmNTE3OGY2NTE3NWYzYWQ0ZGM0IGxlZ2FjeS10cnVuaworMTYxNjkgZjI2MzNjOTNlMmU1N2U3YTk4Zjg3MDc0MTk0MTVlNTM3ODJlMzYzOCBsZWdhY3ktdHJ1bmsKKzE2MTcwIGY1MjEyYWY5ZTY0MTNmMzE3NGZjYjAxNzExYWY0MmYzYWZlNjlkZjUgbGVnYWN5LXRydW5rCisxNjE3MSBjMzhiYWNkOGVmYWQyZmUyMjgwMDY0ZTk2MTJmMmExNmQxMDY1MGU4IGxlZ2FjeS10cnVuaworMTYxNzIgNTE1N2ViN2JlMjBkNzgwMzJlOWFkZTI2MmM2NTg4M2JjNDdmNTA2NCBsZWdhY3ktdHJ1bmsKKzE2MTczIDlhODM5MTA1NDg0MDkyNzRkMmEwM2E2NGNkNmJmN2U0YmIyMDc3MzYgbGVnYWN5LXRydW5rCisxNjE3NCBlNzEwNmMyZmMyNmNjNDc0M2FiOGNiMDJkZDBiNTM0OGI3NjRjOGI3IGxlZ2FjeS10cnVuaworMTYxNzUgN2ZlYTRhMWFmMDkwOWZlYWE2OWNmMDExMjRjNGRjY2ZjYTMxZmYyMyBsZWdhY3ktdHJ1bmsKKzE2MTc2IDZhNzhlYWQxMzk4NzA0MzY4YjVjZjg0YWZlZmMwNGUyNjliYmM4MTMgbGVnYWN5LXRydW5rCisxNjE3NyAyYmE3NmUzMTUwMTZiMjM2YmQ1M2Q5ZGFkODQ1MmM5MTg2YWViMjJhIGxlZ2FjeS10cnVuaworMTYxNzggZGE2MTA5MzA2MzhiNDc4NTk5NjYxOWM5Y2MyYWYwOGVmYTc5NjU5YSBsZWdhY3ktdHJ1bmsKKzE2MTc5IDcwZTRjYmZjM2IyNDc5YzhlYWUzOTRhMGNhZGMwNWY5NWEzZTQ1Y2MgbGVnYWN5LXRydW5rCisxNjE4MCA4NTUyMGMyMjAwNjdhMjlhYjFhNmJkMWQ1ZTdlYjZlZGY3Mjk4NDZkIGxlZ2FjeS10cnVuaworMTYxODEgZGI5MzkyYTA0YmVkNDIxY2U5ZTAyNjZmMDVkZDQ4NGVlYTFkNWZhZCBsZWdhY3ktdHJ1bmsKKzE2MTgyIGQzZjFlZWZkY2IzYTljYTE2YjEyOTRmYWQwM2FiYTQyZmU0NjljNjcgbGVnYWN5LXRydW5rCisxNjE4MyAzNDZkZjE5MjA4NzM3YWJkZWI2YzkzZGYzZGM3ODQ0MDM1ODQ1NTk3IGxlZ2FjeS10cnVuaworMTYxODQgYWEzZDNiZWNlNzc0NTQ1ZDIyZjYxOGY3M2Q4NzgzYjgzOWI4MDMwOSBsZWdhY3ktdHJ1bmsKKzE2MTg1IGE4NzgwM2ViOWRmYjE0NDdmNTlmZjY1NDFiZjYzYmMwZmZlNTY3MzcgbGVnYWN5LXRydW5rCisxNjE4NiA2NGExNGJhNzQ2NDEzODUzZjAwZDk1ZjY4YzNjMjIxOWNkZDNhNmI3IGxlZ2FjeS10cnVuaworMTYxODcgMjYzYjQ0OTI4NDRhMjA2YTNiOTU0YjcxMzg1ODllNzNjNjIyYmI4NCBsZWdhY3ktdHJ1bmsKKzE2MTg4IDVlYmFkNjg5YjdhNzkyMjRlMDdhNDc0YzA5NmE3NjdlNzM0OGEzODcgbGVnYWN5LXRydW5rCisxNjE4OSA2MThhNzI4MGY2YmU1MGI5NzY3Zjk3NjcyOWM1NzFiYzQzZmI4NDFhIGxlZ2FjeS10cnVuaworMTYxOTAgMGQ2YWYzMDNhODZjYjRkMzY3NzZlOTRkODlhZTlkN2ZkNzg2ZTIxNiBsZWdhY3ktdHJ1bmsKKzE2MTkxIDhhM2Q1MGVkMDZmNzk3YzczNzA2NDQyY2QzMDEwZWVkOWVmNWZkMWIgbGVnYWN5LXRydW5rCisxNjE5MiAwODhjNWYzYjcwOTRjOTU5MjQ5OWRiYTUyODQ2ZjVmYzdiYWRkZmQzIGxlZ2FjeS10cnVuaworMTYxOTMgYzcxMTE4Yjc4MDU5NGJiYmE5MTgwNzE2ZjQwY2Q1OWE3OTA5MGNkZCBsZWdhY3ktdHJ1bmsKKzE2MTk0IGQxNzY2NGJkOWI2NTdlYzU0YmJhNmZjOWIyYmIyYjgyZDAyYWY5ZDMgbGVnYWN5LXRydW5rCisxNjE5NSBmYzc4ZTVhNzgxMmE1MTBhNTk1ODk2NGFlMTYwZTczNjdkMWMyMzA4IGxlZ2FjeS10cnVuaworMTYxOTYgY2RlMjczMThjZjg3YjViZTgyYzE2MjgxNzEyMmQwY2U1YjY4ZGFlMSBsZWdhY3ktdHJ1bmsKKzE2MTk3IDdlM2NkOTQ4MGY2NjM4YWMxNDY0ZTA3MzlmZmMwN2IwMWM2NTk0OWMgbGVnYWN5LXRydW5rCisxNjE5OCBiYzllMjJhZDVjNDYwODExODJiOWIzNjc4MmExMWNlZDc3NTkwMjI1IGxlZ2FjeS10cnVuaworMTYxOTkgOWZkMzMzNjkzMzUwODFkYjc0YjhmZTI1MmZmZTY5NjA5ZDdiYWU4ZSBsZWdhY3ktdHJ1bmsKKzE2MjAwIGRkZjA3NGVjNjUwNjNmODgxYTNkMzFlZjEyNjhkMDg3MzdkNGRlZTkgbGVnYWN5LXRydW5rCisxNjIwMSA5NjhhMDA2ZTU0ODBjMjY4Y2MwODZjZDM3OTY2MjdkMzk2NmUzZjFmIGxlZ2FjeS10cnVuaworMTYyMDIgZjhkMDg0ZTNmOGVjZjFmODNlYTViMjBiZGUyMTMzMWMxMjY0OTcwMiBsZWdhY3ktdHJ1bmsKKzE2MjAzIDVlZGVlNjg3ODk0MzI2MmI3ZDAwNmVjZDBjNDgzNWI4NWJhOTE5MjcgbGVnYWN5LXRydW5rCisxNjIwNCBlZDcyMDY3YWFjMDMyODg0MTMzNTYwZGNiMzQyMzAwNWYyYmRmY2Q2IGxlZ2FjeS10cnVuaworMTYyMDUgN2U1OGMwNjBkNTM0MmQ0ODMyMjI2N2Y0ODg1OTI0Zjk5OTMzMzA2NyBsZWdhY3ktdHJ1bmsKKzE2MjA2IDU3MDlkZGJhNDIzY2M4ZGJmZWRjMTU1OGM4YTZmZjhhZWE5NGQwNjcgbGVnYWN5LXRydW5rCisxNjIwNyAwOTFjYTZiOTM0OGY1MGQ1MThmM2Y2NDVmNzAwNGRiYTZkYjQ0ZDFhIGxlZ2FjeS10cnVuaworMTYyMDggMjNmOTY4OWFjZTUwNjM3N2JjMmU4YjUyZjE3YTY4YzVlMGYxNGJhNCBsZWdhY3ktdHJ1bmsKKzE2MjA5IGE4OWY3ZjI2OGRlNDVmMTE0M2I0ZDliNDFmNjE0NzE1OWM0ZGRiZjMgbGVnYWN5LXRydW5rCisxNjIxMCAzZTEwYWM3YTViZjM2ZmQzYzc2NzM3MzY5NzU2NDhjMTk2ZGIzYWY3IGxlZ2FjeS10cnVuaworMTYyMTEgMDQwOWE5OGNkNTgyZTM2NzVjMzAyNWU4ODlkNzJmZDQzZTVmNzFkNiBsZWdhY3ktdHJ1bmsKKzE2MjEyIDRhZDI2OTY4NjYyYmUwNjI2NjJiNmIyYjdmMmYyZWMyM2Y5NzJhOGUgbGVnYWN5LXRydW5rCisxNjIxMyA4MDhiNDQ2YWY5N2M3NjM2MTFlYTdhODlhYjg2ZWIzM2E5MmE5ZjNiIGxlZ2FjeS10cnVuaworMTYyMTQgZWQ0ZjdhMjJlOTI4Y2FhMjMzY2Q5MjJmNTcyZWU2MzBlZDg5Y2U1YyBsZWdhY3ktdHJ1bmsKKzE2MjE1IGQ2MTk4ZTcwMzYwMmJlMzA3MGIxNjA4Mjc5ZjBkNTBkMTM1YjljODkgbGVnYWN5LXRydW5rCisxNjIxNiBmY2M3NWEzNzQ4ZjU0MTk2NzBmOWQzZGEwODIyYzg0MjQ5NDE4ZTkzIGxlZ2FjeS10cnVuaworMTYyMTcgNDMxNTM4ZmZiM2FkMzIxNDY1YTExZDQ4YTI5Zjg5NTE3MDdiNDI1ZiBsZWdhY3ktdHJ1bmsKKzE2MjE4IDYyMTEzMTVlYjU5MmNlZDJkYTM3OWZiMWNiY2QzOWFhZTJiZDNiMWEgbGVnYWN5LXRydW5rCisxNjIxOSBlZjJlYmIzYjBjNjQ3ZmZhYzFlY2ZlOWU4MjM1MDQ3ZGRkOGQ3NjllIGxlZ2FjeS10cnVuaworMTYyMjAgNzkwOGVjODU1NjY1ZGNiZDRkMjZjNDI0ZjZhNmJlYTJlMzUzZjRkYSBsZWdhY3ktdHJ1bmsKKzE2MjIxIDBmOTVjOTNmMjAwYmRlZWIyZjA1YTk0ZjQxYTk1ZGE4NzY3NmNlYWMgbGVnYWN5LXRydW5rCisxNjIyMiBlNmQxN2YxNWFlNmFlZmFlOTViOWExNDEyMjNkMDlmOTUzMWQxNjc1IGxlZ2FjeS10cnVuaworMTYyMjMgZjZjZGVhYzQ0YTEwNTI4ZGU2MjQyMDM4NThhMDZmOTRjNjE2NzFjMSBsZWdhY3ktdHJ1bmsKKzE2MjI0IDRjZjBkZTI5YzA4YzcxYWJlZTk1YjkxZWY3ZTZiMzBhNDcwNzA1M2UgbGVnYWN5LXRydW5rCisxNjIyNSBiNzA2NmJiNzk1ODEwY2IxOTRmYTEwNTEwM2Q4MWM3YWU5OGQ4OGZlIGxlZ2FjeS10cnVuaworMTYyMjYgZWE4MjM1ZWRmYzk2MTU4MzcyZmE5OWI4Yzg2NDg0YjEzYTE4NTM2NiBsZWdhY3ktdHJ1bmsKKzE2MjI3IDhlOTJkOTQxZTA3ZjUwNDQ5Yzg3YmRiYzU3MTJhNjg2NDhmZGNiZjMgbGVnYWN5LXRydW5rCisxNjIyOCBiZmFkZDM2M2EyMDBhMzFhNjhmMTIxODU4YmI5MTRlZTdmYWRkNDNkIGxlZ2FjeS10cnVuaworMTYyMjkgNjY5MDM3NGExZGMxYTVhMGVhYjgwNGRlNjkwOTVmMThhNTJlMjkwYSBsZWdhY3ktdHJ1bmsKKzE2MjMwIGI5MDdlYmYzYjA1MmI5MzIxNDQ2NGQ4Y2JmNTJjYzkyMjI3N2U4NDggbGVnYWN5LXRydW5rCisxNjIzMSBkZDdlMTM5MTUzMjhmYzlhNTkxNzRiODgxOWUzYzA4NjIyMjU3MDBmIGxlZ2FjeS10cnVuaworMTYyMzIgNzViMGU4Y2IwNzgzMWQzZGZjZmRkY2Q5MjcyYzRlNzdhNDgyNjliMiBsZWdhY3ktdHJ1bmsKKzE2MjMzIGRmMTg5ZjljZDAxMGRlYTBlZmNkODk5ZjIyNDAxOTQwYTA3OTkxNjcgbGVnYWN5LXRydW5rCisxNjIzNCBkYmU4M2ZkMjMzOTNhMjEwOTk5YWFiNDQyMmQwMWE5NjdmYmEyMzJkIGxlZ2FjeS10cnVuaworMTYyMzUgMzFiMWY2OTFhN2Q5MTg5ZTdiNzc5ZWVhMjY4YTUyMmVmMWZiYTcyMSBsZWdhY3ktdHJ1bmsKKzE2MjM2IGUxYjA3MGQ3MTYyYzhkZTc2NmFiYjQzODJjNmQyZGQ3M2JjN2RmMzkgbGVnYWN5LXRydW5rCisxNjIzNyAyZmYyNzg1ZTUyOTE5YzFjYzYxYzVjYzEwZThhM2U1ZjYwZjQ3OWJkIGxlZ2FjeS10cnVuaworMTYyMzggOGY2NmM1ZmZhMjZjODYwNTI1M2M0ZDQ1MWM3OTRlYjc1MGI0NDlmNyBsZWdhY3ktdHJ1bmsKKzE2MjM5IDE2MjJiYjI0ZGE1NTY2NGQzOGQ0NTgyMGViYWMwMmJiODliYzQzNjYgbGVnYWN5LXRydW5rCisxNjI0MCA3MGQzNTFmY2I4ZDU5MDBjODZlYWJmYjI0Yzc1MmM2MGZlNzk3OThlIGxlZ2FjeS10cnVuaworMTYyNDEgOTNhZTM0YWEyMGFiMzYzNTY3YjFhMmUwY2I0M2Q4OGMzZWVkMDkwYyBsZWdhY3ktdHJ1bmsKKzE2MjQyIDYwODRmOGQzYTgyNWMwYTc2NDdiMjQyZjNiOGFkZDVhMzAwN2Y5NTUgbGVnYWN5LXRydW5rCisxNjI0MyAzYWJlY2IzNDczN2ZjYzgwNmVkZDIyZGNjNmI5Mjk0YWVmN2Q2YmEwIGxlZ2FjeS10cnVuaworMTYyNDQgMDAwYTFjN2ViMDlmYmNmYTg4ZmE0M2U2YzJlZTBlNTkzNDg2NjI3YyBsZWdhY3ktdHJ1bmsKKzE2MjQ1IDg3ZjgzOTY4NTFiMmFhNjVmMTRhNTNjYjk1NDU0ZTBmMmU4MDkyYjYgbGVnYWN5LXRydW5rCisxNjI0NiA2N2ZkMTlkNzQ1MjgxOGQ2OTRhYjZiNGI5Njg1OTkyZGJlMDY1MmQ3IGxlZ2FjeS10cnVuaworMTYyNDcgZTRlYzc3ODc5ZGRkMDJlZDg4YTI2NTY1ZjRhMTMzZmFhMjI1NzQ4ZSBsZWdhY3ktdHJ1bmsKKzE2MjQ4IDMyYjY4NmRhM2U1MTkxM2E3NDc0MmFkYjcxYjNlMjRkMTA3YjhjMTEgbGVnYWN5LXRydW5rCisxNjI0OSA4NDI0ZWM0YzRiYjIwMzBjZTM2MTI5YzgxNjVhYTgxYTYyMzBjMzJjIGxlZ2FjeS10cnVuaworMTYyNTAgYjMxMzExYTc4YTVkYTY1MzE3Mjk1MWJmMTE0ODFlZWRmZGUyM2I2NiBsZWdhY3ktdHJ1bmsKKzE2MjUxIGY1MGJkY2IwZGQwZWFlMDFkOTAwNmUxMmZmMmJhYmIwZjQyYjM0ZWYgbGVnYWN5LXRydW5rCisxNjI1MiBjYjUzOTgyNDQ0OGU4NWUyYjUzY2YyYjVmYWM4ZDI1ZjI4OWZjZWMzIGxlZ2FjeS10cnVuaworMTYyNTMgNWRhODQ1NmYyZTRkMzQ0MzdiYzI5ZjBiOWY4YTlhMTI0ZDk3ODc5YSBsZWdhY3ktdHJ1bmsKKzE2MjU0IDUwODdkMWQ0NWYxZGE2NmNlZTdmNTE1MjM5NzZhZTZjZjFjYmJmOTggbGVnYWN5LXRydW5rCisxNjI1NSA4YmFjZjg2MzFhMTFjZWNlNTgwZGUzNmQzMzdmN2YwYzk3MDk0YjI5IGxlZ2FjeS10cnVuaworMTYyNTYgNGFhMTJlNTViZjk1ZDFkZjIyM2I2NDBhYTE2MGYwODI2YTNkYWY2ZiBsZWdhY3ktdHJ1bmsKKzE2MjU3IDQyM2E1Yjk1MGNjOTgzY2EyOTU0MDhiMjViNjc1NjVlODMwNThmNTMgbGVnYWN5LXRydW5rCisxNjI1OCAwM2JjNTFlNDNmN2FmNzU1YmVlMGEyZDcyOTlhMmM4ODZlMDczMmE0IGxlZ2FjeS10cnVuaworMTYyNTkgOTU0NTRiNzNlYTkxZDNkNmJhMmRmNzMxM2MwZWU1MDYzNzQxMjlmYyBsZWdhY3ktdHJ1bmsKKzE2MjYwIGM4MzA4NTRmYTUwN2FkZGE4M2Q1ZjY0YjlkYTc0MWM4ODdjZjMwYjMgbGVnYWN5LXRydW5rCisxNjI2MSAwNDY3OTlhMDgwNTdjMjlmYjlkZjhmMDJmMDdjMjE4YjZkMDY3ODc3IGxlZ2FjeS10cnVuaworMTYyNjIgZDljYzYyMGZmMTg2ZWY4YWFmYjYxYWU1ZTM4Y2I2NWVlZjk1YTkxMCBsZWdhY3ktdHJ1bmsKKzE2MjYzIGNhMzJmZjdhMDY3ZTY5NWMxZDNiMjJmNTlhOGIyYjE3MmVjY2EzY2IgbGVnYWN5LXRydW5rCisxNjI2NCA3MzQ4Y2NlZWU4ZmFhOWQ0Yjg3NTViYjRmMjg2OTM5ZjQ2MWFkMjQxIGxlZ2FjeS10cnVuaworMTYyNjUgNjQ4NDA5OGY0MGZjM2QyNDhkNGQ1ZGIyYTUyNWYwYzY3OGMyNTVkOCBsZWdhY3ktdHJ1bmsKKzE2MjY2IDgyNTZkNjE5OGVjMmY3Yjg5YjI0N2Q5MmZjMDE1MWIyNGFjM2UwOWQgbGVnYWN5LXRydW5rCisxNjI2NyAwZWRlYjRlZmU2ZGJjMzljZTc3OWIzZTMyNzEyYTg2M2NjMzk3YjQxIGxlZ2FjeS10cnVuaworMTYyNjggODZiMzY3ZDJlN2FmYWJjZjA3YmIwZmEwZjJiYmE4Mzg5MjYyMjI0NiBsZWdhY3ktdHJ1bmsKKzE2MjY5IGMwNWViOTAyZTU2MDBkNWU1MGQ1NWQwZTQ2YzgxODZmNTczYmQ0ODEgbGVnYWN5LXRydW5rCisxNjI3MCA3YjBmNDQ4M2MzMzE3NjA0ZDQ5YjM3Y2ViMmM5YTYwMGY3Yjg1MmY4IGxlZ2FjeS10cnVuaworMTYyNzEgZmE3NDE5ODhkYjE3ODVkODMzYTg2YWQ3NzIwMjgyOTZlYjA4M2IzOSBsZWdhY3ktdHJ1bmsKKzE2MjcyIGQwMTg0ODUyNzFmYjRlMDAyYzcyMThlZDE5MjliNzg4ZGY4NzQ2NWIgbGVnYWN5LXRydW5rCisxNjI3MyAxODM5NWNhNWMzMGVmYmI3ZTIxZTFiNDY1MDg1MGQwM2Y0ODk3ZWE3IGxlZ2FjeS10cnVuaworMTYyNzQgOWE0MGYxOGYwNTYxZmZmMmM2NGI0OGI3OWRhMmY5MWJiOGRjMDA3MiBsZWdhY3ktdHJ1bmsKKzE2Mjc1IDYwNTdmNDRiMGI3YWM1Y2M0Nzk5MTQ1ZTY0NTE2OWUzOWE3ZjI2ZTYgbGVnYWN5LXRydW5rCisxNjI3NiA1MzA0Yjg4ZmUzY2NmMDc5ZTU2NDM1ZmI2MTUzMjE3ODgwNzQ4N2NlIGxlZ2FjeS10cnVuaworMTYyNzcgY2Q3YWJiNGZlYjFiYTZmM2Y1YTNhYWMzZmQ3OGZlNjE4YjBjMmE0YiBsZWdhY3ktdHJ1bmsKKzE2Mjc4IGU0NGNhNjFkYjcxNTg0ZjU0YmQwM2QwNDllNGZmNjAyZmM1NTY5YjIgbGVnYWN5LXRydW5rCisxNjI3OSA0ZjExMDQ0MWRiMzkxODJhYTM3MWIyOWIyNDVlMTkzM2U4ZTcxNjI0IGxlZ2FjeS10cnVuaworMTYyODAgODY3MDQ0MzJkMjgzYTVkNGE3ZGM1MDk2M2YyOGUzNzMzZmI5Zjk0MyBsZWdhY3ktdHJ1bmsKKzE2MjgxIDA3MGU0MWYyNjk3YjZjZjk3NmU4MTBjMDM0NmJjZmNiMTcwNzhjNDEgbGVnYWN5LXRydW5rCisxNjI4MiAyN2Q4N2UwNzJiZmIwNTJjOTk3MmNmZDRhYzNlNjk4MjkxNjkzZGYwIGxlZ2FjeS10cnVuaworMTYyODMgNGRiYzc1YzE4OWJjZWQ5Y2UwNjM1ZmQ4Y2I2N2Q2NjNiODQzNWVhMyBsZWdhY3ktdHJ1bmsKKzE2Mjg0IGFjYzQ2MzhmMzdkNTdhNjBlMjVhZTg3NzNmN2Y5NzhjN2Q1NjZlNmIgbGVnYWN5LXRydW5rCisxNjI4NSAwMjQ3NGRmNTQ2ZjYwMGEzZGFmMjc3NWNmMTQ4MWYyOWFjMzEzYWJjIGxlZ2FjeS10cnVuaworMTYyODYgMTZlNDkwNDYyZTZiZjE5OGQxNTE3ODY3ZjBkMDQ4ZDdjZWU0MDdmZiBsZWdhY3ktdHJ1bmsKKzE2Mjg3IGYzMzZhMjY3YTJhMjU2Mjk2NGNiOTdhNWJmODg2NTE5M2JhNThlYjAgbGVnYWN5LXRydW5rCisxNjI4OCAzNjg2ZDEyMzYyYjhjMDk2MGZiOTdkNTQ0YmQ0NTQ4NTNkZTM0ZjZiIGxlZ2FjeS10cnVuaworMTYyODkgMDdjMzExODJmMjM3MWQwNDEyM2NhZDkyY2Y1NWMxMjU5MGI5NzZjMCBsZWdhY3ktdHJ1bmsKKzE2MjkwIGU4NDhkNmVkM2ViOWQwM2M2MjYyMmQxYWY0OTI5N2U2MWNlNzE2OTAgbGVnYWN5LXRydW5rCisxNjI5MSBiYWJhZTkxMGMyZTEzYTM2MjI5ZjhmNjk3NGJmYTJjMTM2YzYyMDkzIGxlZ2FjeS10cnVuaworMTYyOTIgZWQ1NjViMGZlNjQ4NDE3OGIxYjNhODQ3ODcxOWU2YTU5ODlkYzNhYyBsZWdhY3ktdHJ1bmsKKzE2MjkzIDMwNDk1ZDczYjk0MzYxNWE2NDdmZjM1ZTExYmRjNjFhMGRhZTRjYjAgbGVnYWN5LXRydW5rCisxNjI5NCBiMDYzNmE1MjdhODc5OTlhZGY5MzEwMjU0MDFmYTI1MTBmYmUzNmY3IGxlZ2FjeS10cnVuaworMTYyOTUgMWU3YzMyYmRkYjhmNzAwNDM0ZmI1M2Y5ODU2ZTUwZjBjMjcyMjNjMiBsZWdhY3ktdHJ1bmsKKzE2Mjk2IDQ3ZmVjNDhjYTQ5NTk0NjliMWM2ODY5ZTI0OTVjNWYwNjE0YTE1NGEgbGVnYWN5LXRydW5rCisxNjI5NyA4YjEzNDVmZjk4MDEzZjkyZjhlZDg3Y2MzNDU5OWU1YzRlZDUyMzk4IGxlZ2FjeS10cnVuaworMTYyOTggOTdjZDQ3MzYzOTJjMTc3NzliMGM5NzE2ZDg3NzM4NGFiYjk3MjdlMCBsZWdhY3ktdHJ1bmsKKzE2Mjk5IGI5ZjlkYTFhM2ZjNDczZjUxMzA1NzkyNDUxYmNhYWUzNDUxODQxYzYgbGVnYWN5LXRydW5rCisxNjMwMCA0MjI4Nzc1ZDQ1NWVkNTdiMTRhOTliMmFkNjllNjMwODFkMTEyYWI2IGxlZ2FjeS10cnVuaworMTYzMDEgZmVhYjY3NzI2OWUwOGMxNWVjMGZhYTk1ZWY2OTM3ZmJiMzVkZDg5YiBsZWdhY3ktdHJ1bmsKKzE2MzAyIDA2MTVkY2VmMDI0ZGUwNWQzNjEyNzc1NDBiZGFjZTFkNmZjNzljNjAgbGVnYWN5LXRydW5rCisxNjMwMyA5ZGJlZTRiNGMwM2ZkYWM4ZDNiM2U2MmI2ZDUzZGVjMGQ2NzAyNDM1IGxlZ2FjeS10cnVuaworMTYzMDQgZGRkNjEzOGM5ZTZmZTc2MmRiYTFlNzMxY2FmODA3MGEzMzNmMGE1ZSBsZWdhY3ktdHJ1bmsKKzE2MzA1IDdhYTUxZWJmNDgzZjk5MmQzZTQ5MDI2YThiZDc0OWEwNjRkMzcwNDEgbGVnYWN5LXRydW5rCisxNjMwNiAzY2Y0ZjVhZWUwMGUyZmFjM2ZkNDA5NGNiYjYwZmJmZTZiZDdlNWEzIGxlZ2FjeS10cnVuaworMTYzMDcgMWQ2NjMwNzkyMjEyNTkxMWE2M2VjNTBkMjg5MjAyOGM1MmI5YmRlYyBsZWdhY3ktdHJ1bmsKKzE2MzA4IDFmODJhNGJmZDI5NDU1OGU1YTgxOGI3ODE4MTA5Y2U1YTc0MTMyZmEgbGVnYWN5LXRydW5rCisxNjMwOSBkYjk2M2E2MTViYzkzMTJjMWM5NmMzMTM0MTM5MjA5MmUwMmFiZjIyIGxlZ2FjeS10cnVuaworMTYzMTAgZDhiODc0OWRlMDRhYmE2MWQ2OTgxZjhhOTAxY2UzZjkzOTVkYjQyZCBsZWdhY3ktdHJ1bmsKKzE2MzExIDMzMzg4OTI3YWMyZmFhNzkwMWZhNjQ1ZmZkZTA1YmExZjRmZDljMTAgbGVnYWN5LXRydW5rCisxNjMxMiA5NWI5ZGRiMDAzNTIzZTM2N2ViYjY4ZTdjNzI0YmNiMjI3MTRjZjk4IGxlZ2FjeS10cnVuaworMTYzMTMgMTViMThlMGNjM2ZkMjQ4MjkwMDgzODlhNmYzN2IzNGMyN2M1NjhjOSBsZWdhY3ktdHJ1bmsKKzE2MzE0IGRkMmI1MjE4ZTA2OWVhMjllODhiZDMwZTBjNGZiOWM0MmQ3NDcwYTcgbGVnYWN5LXRydW5rCisxNjMxNSA2MzFiNmEwM2MxNjBlYjljMzJhNjA4ZTAzMTkxMDIyYTM1MTJmOTM4IGxlZ2FjeS10cnVuaworMTYzMTYgOTA2ZWZjMWRhMjQ3YTM2MTU3MWZmMWJkZmNjYjg3ZTIxMTRiZjM5ZSBsZWdhY3ktdHJ1bmsKKzE2MzE3IDljNzRiODIzOWZmODBmODcyZDc5NzU3ZTBkN2Y1MWU2ZmM0MTk2MzQgbGVnYWN5LXRydW5rCisxNjMxOCAzN2IxYTM5NjA2Y2U4YmZiNGE3ZTgwMzZkNDNlMjNiZWJjOTM0ZmVhIGxlZ2FjeS10cnVuaworMTYzMTkgYzM5NmI2MDI2MTdkYzQ2MGI3NzlkMTg1MDlmMmUwYTM1Y2IzNmI3OCBsZWdhY3ktdHJ1bmsKKzE2MzIwIDZhNDQzNmQ2OTU4YjBjNjc0OTNlYzM2Mjc0NTE1ZWI4NDhiZmM1MGEgbGVnYWN5LXRydW5rCisxNjMyMSBiNzg2NTM2ZjIxYWNiZjgzODEwMTlkZjRlZjA3MmU0ZmYyMzI2MjMxIGxlZ2FjeS10cnVuaworMTYzMjIgNjk4N2U5NDUwNjE5YjdjYmRlN2ZjNzRlNzlkNDAwNDlhOTVlYTliMSBsZWdhY3ktdHJ1bmsKKzE2MzIzIGVhNzMyNzE5YjNmZDA3YzAxNDMxMmNkMTNjYzU2MzliY2ExNGEyNzMgbGVnYWN5LXRydW5rCisxNjMyNCA5MTlmM2Q1MTcyYTk1ZWYzM2RjNTEwMmY0ZTRhZmNjZmU5ODhlYmVmIGxlZ2FjeS10cnVuaworMTYzMjUgZDFmNmI2NTYxMDNiMmMyMDA4ZmMyNzA4M2U0MmIxNWZlNWRkZDIwNyBsZWdhY3ktdHJ1bmsKKzE2MzI2IDc5OTFhZWIzNTk4ZmViMmVlN2IxYzdkNGY3ZTRmMWM3ZjBiNWI4MzggbGVnYWN5LXRydW5rCisxNjMyNyBlNTU4ZWIyMjhhNDYzZjU0ZGQ1Y2VhOWNkZGU5ZmQwZTFjOTgzMmNkIGxlZ2FjeS10cnVuaworMTYzMjggNDdhOTQ3MTk1NmFmOWJmYWJkMTZlZDFjZWU4Njk2MmExYzgwMTgwZiBsZWdhY3ktdHJ1bmsKKzE2MzI5IGNmYjJhMGQwYTg2OTZmMzc3NDIzNDA4NjQxMmRiNDIzZWNiZmJhMmYgbGVnYWN5LXRydW5rCisxNjMzMCBhYzJiYjc3MDgzMjBkYmU0NzUyYTk5MGM5YmRhMzE5ZmJiZDk3MmMzIGxlZ2FjeS10cnVuaworMTYzMzEgNWQ2MWI2ZjJhZWEzY2RhMWE3MzEzODQzYWVlNGQwNGI0NTQ3YmJjYyBsZWdhY3ktdHJ1bmsKKzE2MzMyIGVmM2VkNzVmMTk1Yzc4MGE3ODhjNGFlODIyNjgwZjQ3MzRjYmQ3ZTggbGVnYWN5LXRydW5rCisxNjMzMyAzYThjNjcwMzA5YTIxZGI0YjE3NjZjNWRkOGRlYjZmMDk5NWE0N2M4IGxlZ2FjeS10cnVuaworMTYzMzQgZTQxN2Q5NTI4ZmQ2MTE1NDRjMWZlMTM0N2MyNjlhNGY4OWU1OTIwYiBsZWdhY3ktdHJ1bmsKKzE2MzM1IDAxYjIzMDcyY2M3Njk2NzYyMjEyNWY0YjI4MmYwY2YwYzVhNmExYzkgbGVnYWN5LXRydW5rCisxNjMzNiBjYjc2ZDdkYTY3MDI3OWUwZTY4OWY4NTRjODQ4YzQ1MWUyZjQ1OGUwIGxlZ2FjeS10cnVuaworMTYzMzcgN2MxMTlmMDUwMjkwZTNhMmQ5ZmNlMTMwODc0Y2Q5NDJiMWY3MTc2NiBsZWdhY3ktdHJ1bmsKKzE2MzM4IDYxZTRjMjlkNTNkOGQyNzdiYzhjMjQ5ZWZhMWI3M2FhZDEwZDYzYjEgbGVnYWN5LXRydW5rCisxNjMzOSAyZTQ1YjdjMjNkYzY4NjVmODE4YWZjNDFjNjQ2NDY4MjlkYjljN2MwIGxlZ2FjeS10cnVuaworMTYzNDAgYTAzMjEwMWVkOTI2NDRjMmU2MmEzNmE1ZTAxMzhhMDQ1MTNhYjg5OCBsZWdhY3ktdHJ1bmsKKzE2MzQxIGZmZDVlOGI2N2M4NDMzMmIyOGZkNDZlYmE1YTk1ZDM2NjcwNTRjOWYgbGVnYWN5LXRydW5rCisxNjM0MiBiNGI2ZjM5NjJiZDEyMzk4YmEwMzg2ZDVhMWNhNzA2ZTYyZmUwYmQwIGxlZ2FjeS10cnVuaworMTYzNDMgZTg3MWJkMDVjNmE3NDRkMjViY2ViODg0ZDJhNDRjYTE2OTkzNjVlMyBsZWdhY3ktdHJ1bmsKKzE2MzQ0IDA4NGE3NTgwNTFlMGUxYzZlMmI2ZGUwNmM2MzVjOTEwMjVlZmZmZmQgbGVnYWN5LXRydW5rCisxNjM0NSBhZDFjODI3MWI2ZjgyODg2MGU1NjZmMTMxMWQxZWExOGJiMjhiMGFkIGxlZ2FjeS10cnVuaworMTYzNDYgMjk3N2ZiYWU0Y2E1MWI0YTA0NDA4ZTBlMzAwMjc4OGNjNmU0ZWY0OSBsZWdhY3ktdHJ1bmsKKzE2MzQ3IDg5ZjkwNTg3MGMwYTkwZGU3YmFjNjc3Nzk3OGRjYzlhZWI5Y2JlYjAgbGVnYWN5LXRydW5rCisxNjM0OCAxNGNlYjE1OWU0NDk5YTM3NjZlMGEzMGYyMDhmNWJjYzczY2QzNWM5IGxlZ2FjeS10cnVuaworMTYzNDkgN2MxMjdhNzlhMzY5ZTU3NGU3YzhiYTQ3ZDFkMGMzZjFhMmJhMjIxZSBsZWdhY3ktdHJ1bmsKKzE2MzUwIDRmYWY4YzIyZGE2MGJlMmEyZDc4MWUzYjFiZGQ5NjM5ZjYxZDE1NjcgbGVnYWN5LXRydW5rCisxNjM1MSA1MDI1MTE1ZDIzY2YyYjFmMGQzMWE4OWY5ZGQ0OWZiN2EyYzg5ZmQ2IGxlZ2FjeS10cnVuaworMTYzNTIgYzUwM2Q4ZTQ3NGIzNzBjMmEzYzkwMWQwNDZkMWMyOTdlMDQzYjU4MyBsZWdhY3ktdHJ1bmsKKzE2MzUzIDIwNzdiZjE0MWIzNzdhNDQyNjg0ZGQ0MDg1Yzk2YjJmMjM2MTYwZjkgbGVnYWN5LXRydW5rCisxNjM1NCA5Y2E1MGUyNDMzZWI0MWVmMjQ5NmMzNDM0OTJiY2YxMTE4ZjNjNDVlIGxlZ2FjeS10cnVuaworMTYzNTUgZGY2NGNjMGU4NGUyYTkyYTc0ZTk2ZTQwNDE4OTNiM2IzODI5NjVmMyBsZWdhY3ktdHJ1bmsKKzE2MzU2IDU5NDliNDc1ODdkOTU1NWJhNDZkYTI1YTYxZjZjZDJhOTQyMTg5YzYgbGVnYWN5LXRydW5rCisxNjM1NyBhMTNjZWE0MzBjMTM2MGU0ZThjMmUxM2M4ZDIzMzlhM2VkOTM2ZThhIGxlZ2FjeS10cnVuaworMTYzNTggOTMwZjRiYmJkOTNhYTZkMTU1OTNmNWFmOTc2OGUzMmMxM2U5ZmU1YSBsZWdhY3ktdHJ1bmsKKzE2MzU5IDI1ODQ2OGEyMGQ3NDU3NmU1ZGQ3YjMxZDYwMjg4OGE3NTlkZTA4YmEgbGVnYWN5LXRydW5rCisxNjM2MCAwN2Q3NDAzY2ViMGYyNWFjYzNjNjRiZTNmOGEzMDA0ZTAyOTQwOWE3IGxlZ2FjeS10cnVuaworMTYzNjEgMzI2MDIyMGFhZWU0M2QyYzU3ZjY4Njc0ZmFmNTBiNDQwNDExY2UzNCBsZWdhY3ktdHJ1bmsKKzE2MzYyIDM5ZjU0YjlhN2Y5Y2I2OTYyMjQzMGUzZDk3OTYzYmM2YTg5OTc1NDUgbGVnYWN5LXRydW5rCisxNjM2MyBlZjhiMjBiOWY2ZjUzNzE4Mjc2MmMwY2M0YzY1MDhjOTVjODk4OWJmIGxlZ2FjeS10cnVuaworMTYzNjQgZDdhZWMxN2NkMGI1MDQ2YjU5NDgwZDZkNTlhNjllMGM3M2UzZWZiMSBsZWdhY3ktdHJ1bmsKKzE2MzY1IDQyYjY3MmEwOWM0YTEwM2U1NTlmZDYxMDMzYjAyZjhiNjhiODRhZTcgbGVnYWN5LXRydW5rCisxNjM2NiA0ODNlNzVlZmMxMTEyMTgwZGZhNGYwY2Q0MzAwZjI1N2RmNWI4MTJmIGxlZ2FjeS10cnVuaworMTYzNjcgZGMxN2VmMWE3NjEzODBjYmVlZTJhZmE0MjBmMTdmMjgyYTQ0ODEwYyBsZWdhY3ktdHJ1bmsKKzE2MzY4IGM5YTRhMTMxNjE3MDgwOTBiMDczZjg0Nzk2ZmIzOGIxYzM0YjA3OGEgbGVnYWN5LXRydW5rCisxNjM2OSA1NTgzY2ZhNmQyYjBmM2NkYjE0M2I0OWFkMDQ4N2E0YzMyODBlNzU3IGxlZ2FjeS10cnVuaworMTYzNzAgYTkwMWMyYzAxNjZiYWE2YTE5NTI4OWJlYzMzNWUzMGMzOTFjYmM0YSBsZWdhY3ktdHJ1bmsKKzE2MzcxIDI5NTk4N2YzZmJkMjIwMTI3NDE5OWE0ZWRlZGMxODhlYWQyNzE0OGYgbGVnYWN5LXRydW5rCisxNjM3MiAyZWNhNDA1MWYwNWNiNWY5NDE1YWY5ZDZiMjkyYzJhNDAwZDAxYzE2IGxlZ2FjeS10cnVuaworMTYzNzMgODhiNGYzYjUwOGRhYTU5ODliNWMyNjk0M2VhOWRhYTg0NzU0MTZhZCBsZWdhY3ktdHJ1bmsKKzE2Mzc0IGYzNDAxZWQxMzJhMTRjZmY0YTYyODNlZjM3MGJjY2VhZmUxNTMwODkgbGVnYWN5LXRydW5rCisxNjM3NSAyNjA3NWMwM2YwMjI3OTU5NWIwMmIyNzU1Zjc4MjM5ODkyNjQwZjdkIGxlZ2FjeS10cnVuaworMTYzNzYgZTc4ZWRjM2NmYWU2ZWFlNzMyMzZkODcwODU2ZDUxNjFjMjVmZGUyNSBsZWdhY3ktdHJ1bmsKKzE2Mzc3IDg3YTQxNmQ5ZDliNmY3NDAxNTRlNmUzYTBlMzg1YmRkOWMzNTg1YWEgbGVnYWN5LXRydW5rCisxNjM3OCBmN2Q5ZTYxODVmNjIyMmMxZWIyZDc0ZmI0ZTZiM2E2OWRjODY4ZmMyIGxlZ2FjeS10cnVuaworMTYzNzkgZmE4OTQ5NjU4NGM2MjdiM2ZkZWMyMzJkMzJkZWU2NWEzNTMwMjdmZiBsZWdhY3ktdHJ1bmsKKzE2MzgwIDA4Njk0N2NkMjAyY2MxMzU2ZWExODNkNzA4ZDM4ZDE0YmJhOWFmZDAgbGVnYWN5LXRydW5rCisxNjM4MSBiNzQ1NDhhOTBhNjNjMDM2OWVkZDI0NzkyOWNmNzVhNTIyZjRhZjJjIGxlZ2FjeS10cnVuaworMTYzODIgNWI3MjdhYjM3MDkyZDU3MmFhNzg5NGY2MzljY2UxMDBjNjg5OGYxMSBsZWdhY3ktdHJ1bmsKKzE2Mzg0IGYxMWM0NzI3NjRhZDM3MTcxN2NhMTllMzE2ODIxNGU5MGVhZWQwNzUgbGVnYWN5LXRydW5rCisxNjM4NSAzNzkxOTY3Y2IzMmVmODZmYzQ5MTQ1MTcwMDIwYTg3NmEzM2RkMzNiIGxlZ2FjeS10cnVuaworMTYzODYgMTY3ZGU0OTUzODEyZmFjYWE2YWQxYmYyMDMwMjQyYmVhZWQwNmE5MyBsZWdhY3ktdHJ1bmsKKzE2Mzg3IDgzYTU5NWU2OTFlNDI2MmI3YzI0MmI2MGNiODVhZGVmZGEzMDdlNWMgbGVnYWN5LXRydW5rCisxNjM4OCBmZGZkMTA0OWYzNmU5NDNlN2Q1OTQ2OGVkOGE0ZTk0ZDM1ZjQ5ZTQ5IGxlZ2FjeS10cnVuaworMTYzODkgZjRkYTQzNTVhY2RlNjJmZTYyY2E2NmRiMzBjOGE3ZjdkMmVhZDdjYiBsZWdhY3ktdHJ1bmsKKzE2MzkwIGY0MDg0ZjQ0M2YzMTlkYTU5OTRhNTcyMjcwYjYxZTc1YzEyNjRiNDQgbGVnYWN5LXRydW5rCisxNjM5MSBkNmQyM2Q1ZTI5NmQ0MmY0YWNhYmY1MTBkNzczMjY2NmZkYWI1ZDZhIGxlZ2FjeS10cnVuaworMTYzOTIgYTFhZDc5MWUxODIxODJlZTZjNzE0MTQ4ZTg4MWRhOTg0MmY2NDYwMyBsZWdhY3ktdHJ1bmsKKzE2MzkzIDczYzY2MWJlMWVhM2RlNjNmNzM4NmRmNzkzODk4MTZmMjNhY2I5MmQgbGVnYWN5LXRydW5rCisxNjM5NCBmZjgyZmQ0MjJmMWMxYTMyOGQyZTNhYjE2NGE5MTgxM2U5ZjViYjUwIGxlZ2FjeS10cnVuaworMTYzOTUgMDg1OTYwN2NhM2U1M2JhYWYzNTFjZDhlYmFkZjNiNTU4YTA5ZTUzYSBsZWdhY3ktdHJ1bmsKKzE2Mzk2IGUxNDY5YjdhMmU2OGRiMjkyNmUyMDkwYjc0MTJiNTllMmNlYWFhYWYgbGVnYWN5LXRydW5rCisxNjM5NyA2ZjBkOTZlNmI1YTUxM2NiN2IxNDA3ZjNjNjEyYzM0ZmFmNzQ0ZDY1IGxlZ2FjeS10cnVuaworMTYzOTggZGZiN2VjZmZmZTNkNWIxYzY2YjY0YjdmMTJhOTU3NjI3NGFkMjg0NyBsZWdhY3ktdHJ1bmsKKzE2Mzk5IGI1MTIwZjU4YzVkYTU4MzEwZjhkZjdjMWNlNmZkNjA1YTRjYjE4YzIgbGVnYWN5LXRydW5rCisxNjQwMCBkOTAxYzQzZTdkNThjZTk5ZjdhZjg0OTBjMmIzNGM4M2ZmZGFlMzdjIGxlZ2FjeS10cnVuaworMTY0MDEgNTgzOThjMGY5NDhiYzg5Njc2Mzc4OTA5YmRhMTQ0OWE0MWM1ODg0NiBsZWdhY3ktdHJ1bmsKKzE2NDAyIGUyZTI1ZWVlNmE0YjE0N2I4Y2QzMzM3OTI3Y2UzMTgxMWQ2ZTc5MmMgbGVnYWN5LXRydW5rCisxNjQwMyAzNzE4ZTUzOThmYWQzNGI3NjgyYTkxNjJjYTdkZmM0ODBmODViNjlmIGxlZ2FjeS10cnVuaworMTY0MDQgMzhlYTI3NDU1Y2JiM2NiODg3NGE4OTg2Mjc2MjUwYTdmYmVjNDc2NSBsZWdhY3ktdHJ1bmsKKzE2NDA1IGRhY2M5ZjE2N2U5NTlmZjcwYjZiZmZmNmRhZDgyMjgyYTQwZmVkMzQgbGVnYWN5LXRydW5rCisxNjQwNiAxNTI4YmMzYWM3M2Q1MDMxOTQ4YzZlNDNjYzg4OGQwZTdiNzQyM2Y1IGxlZ2FjeS10cnVuaworMTY0MDcgMmQ1YWEyMTJhMzIyYjJmOTk1ODMzNzIzMDZlNDNhZTQ2ZmVjMTU4OCBsZWdhY3ktdHJ1bmsKKzE2NDA4IDBjMDhkZmE2MzRjMzRlNDdiYzMzNmM1NTg1Y2ZhYWNjYjNkMjFmMGUgbGVnYWN5LXRydW5rCisxNjQwOSA1MjU5NWI3MGE1Njg0ODhmYTM1Njk1YmE5MWIwNTk5ZDI1ODQzZDA1IGxlZ2FjeS10cnVuaworMTY0MTAgYjJmYmQ5ZmNlMDVlNWU1MDA1YmUyM2Q5M2Q0ZGIzMGU3YjJmMWY2MyBsZWdhY3ktdHJ1bmsKKzE2NDExIDhlZTRhMjA5YTllZjViYWJkMWJmMTA4MDQwOGM2ZGUzZmJlOGUzYTAgbGVnYWN5LXRydW5rCisxNjQxMiBmODA1NzFiYjI5MTNlNzg3NzlhNDQxOTMxZTM2Yzk3YmY3ZGY2NDczIGxlZ2FjeS10cnVuaworMTY0MTMgM2Q2ZDIxOGI2NzNkMGNmMTQ1NWEzMDgyYTljMTBhMWU0NGRkZjhhYyBsZWdhY3ktdHJ1bmsKKzE2NDE0IDhhMDYzNDIzZTBiN2RmOTk3NDg4ZjMxZTZiYjZlYWM1N2M5NzIxMjUgbGVnYWN5LXRydW5rCisxNjQxNSAxMTdkMjA5NjhhMTA0MmQwMDUxODg0NTM3N2FjMTI1YTlmYzE5MmYxIGxlZ2FjeS10cnVuaworMTY0MTYgYTc0YWE0OWIwYzM3ZmFkOWVlNmNhYTBmZGEyYjliMjE2ZDczYmE1ZCBsZWdhY3ktdHJ1bmsKKzE2NDE3IDBiYjQ5YjNkYmRmMGFjYWRiZTM2ZDBlMDBhMDZiMGZlNmU4M2FkNjIgbGVnYWN5LXRydW5rCisxNjQxOCAxMjY1MmRhNmQ2MzJiYTA4ZDI3NTBmZGUxOGM3YWM3NjgyNDI5ODFmIGxlZ2FjeS10cnVuaworMTY0MTkgOTlkZDFjOTMzMTYxNmJkYjg5NzdjZjE0MjQ5ZDkyNTBlNDU4OGY3OSBsZWdhY3ktdHJ1bmsKKzE2NDIwIDZhNTMxNGE2YzJjMjk5ZTMzYzczYzc5NGFmMzFkYTNhM2ExMDJlOGYgbGVnYWN5LXRydW5rCisxNjQyMSBmNzk0MzRlZTQxZmE4NjAxOTIxNjI0MGJhMzJiZTY2MGJjZmM1NDE5IGxlZ2FjeS10cnVuaworMTY0MjIgZTc4MTUzZTE3OWZiY2NhYTUxMjk3YTA5MTE1ZjNmN2E1YWFlNjNjOSBsZWdhY3ktdHJ1bmsKKzE2NDIzIGExY2UwNzIxODc4MTM0YjM2ZDUwZGIxMWZkODJmMDdkODQzZGZlZmMgbGVnYWN5LXRydW5rCisxNjQyNCBlZjI1ZjMyYzQ1MjM5M2YwZDRkMTAxYzMyNzM0N2ExNDNlMDE3ZWQzIGxlZ2FjeS10cnVuaworMTY0MjUgYTM4NTZhYjZiMjA2ZDdkMmNmNmJhNjc2YjBiNTE5OTdjZWFmM2Y2YiBsZWdhY3ktdHJ1bmsKKzE2NDI2IDI5ZGEzNTU0MzgzMzIxNjAzNmQ5NDE1Mjc1Y2MzZWNjNjBjZGI3YzMgbGVnYWN5LXRydW5rCisxNjQyNyBlZTEwODM0ZDY3YTM2YzRmN2IyNjMwODNkN2JhNzNmNmEyYjQ3NDE1IGxlZ2FjeS10cnVuaworMTY0MjggZWFmYjc5OTYzZWE2NGVlOTE1MDRkZGI0ZTI4ODFlMmM3ZDk1YzA0MyBsZWdhY3ktdHJ1bmsKKzE2NDI5IDM2ZGU3YjZhYjdlYjk5NDE3MDEzM2MxY2MzOWQ4ZTA3YjA2YWRjYTggbGVnYWN5LXRydW5rCisxNjQzMCBhNmM3YmZkZDY3Nzc0NjRhYmU5NDc5ZDI4MmI1NTk5YWY5OTk5OWNkIGxlZ2FjeS10cnVuaworMTY0MzEgZDdkODFlYTljODJkZTAxNzcxOWM1M2NmYzgxNzQxM2VmYjlmZjYxNiBsZWdhY3ktdHJ1bmsKKzE2NDMyIGU5NGMwNTM1MWQ0Mzc0YmVhNWQ5YTBiYjRiNjE3ZTUyYmFhZDU2YTcgbGVnYWN5LXRydW5rCisxNjQzMyA0Mzg4MjQ5NTA2ZDE5MGE3NmE0ZGJiYmM3MDI5NGVmNmJhMDY1NmQ1IGxlZ2FjeS10cnVuaworMTY0MzQgMjY2ODViZDJjMDllNjFiZjM4OTY1NWY4M2VmMTRmNDJiNTYwNTVkMyBsZWdhY3ktdHJ1bmsKKzE2NDM1IGJmYzViMmE4YzExZjVlNjI2NjgyYjk4ZDM3NmZhMmVmNjk3MGEzOWQgbGVnYWN5LXRydW5rCisxNjQzNiBjYzBjMGRjOWZlZjBkYzQ0MWI4NTYzYTliNDRjOGQwNDBjMmUwM2I5IGxlZ2FjeS10cnVuaworMTY0MzcgYzkwZDk0ZDI4N2Q3OWI3NDVlNGI1YTBiZDU1MTVjZWRhNzMxNzRlNiBsZWdhY3ktdHJ1bmsKKzE2NDM4IGIxOTU5ZjAwNjU2NjU5MWIzYmUxNDAxYjljZDBmMTY0NTFlYmM2MDAgbGVnYWN5LXRydW5rCisxNjQzOSA1NDIzYjEzMmJjOTdhZjRkMjQwNzZjZWYxNmYyNzNiNjRmYWYwNGQzIGxlZ2FjeS10cnVuaworMTY0NDAgZWRiMWE4ZTZiODU5NTk2MGJiZGQ3OGJiYzYwYWUxZjdkZTc1YmQ5MiBsZWdhY3ktdHJ1bmsKKzE2NDQxIDMxNzdlMjgyOTE2Nzc5N2VhMDgxNmNmNzA3MmU0MDNjZjhjMjdhZTggbGVnYWN5LXRydW5rCisxNjQ0MiA2MWY2NWRlMTllMWU2OGVhYWM5NzVlM2JjNTUyNDcxMTJiZmIwNDJiIGxlZ2FjeS10cnVuaworMTY0NDMgOWY2MTg5ZTg5MjEyMTU5NDY5YTYxNWVhNzI0MTA1OWRkYTgyZjJhMiBsZWdhY3ktdHJ1bmsKKzE2NDQ0IGIwZTgzOTYyZjRkYTcwOGRiNzhlZjE3MGI0NDMxMjNiYWIzYjJkMGYgbGVnYWN5LXRydW5rCisxNjQ0NSA3ZGUxOGYwNGY4NWE3N2ExZDU1YWI2MTkxYmZlM2JjNTk1ZGE3NTVhIGxlZ2FjeS10cnVuaworMTY0NDYgOGNiMjRlMGJlZjliZTU5YzNkZjUwOGZkNjE4M2I1Y2YzODRkOTliYSBsZWdhY3ktdHJ1bmsKKzE2NDQ3IGVjMTlhMGE4Y2Q2ODc3YjE5ZDQyNWU0OGM3YWFmMDg1YzdiNDdiOGYgbGVnYWN5LXRydW5rCisxNjQ0OCAxMjljOTc3NWNjMTkzMjBjZTU4OGUwNGNhODdhMzQ3NzBlYWVkNTk4IGxlZ2FjeS10cnVuaworMTY0NDkgOWE1ODU1ZWEzZTU2YWU1NDM5NDA1NzNmNTdiZjM5ZGVmNDkwNTNjMSBsZWdhY3ktdHJ1bmsKKzE2NDUwIDYzODMyZWRlNTc3ZmM1OWY5YjQ4YWVjOTllYjRmNGVkNWEwZjYzM2YgbGVnYWN5LXRydW5rCisxNjQ1MSA5NTg5NGMzMTA4ZDE5ODVmNjA0ODVlMzQ1YjEwMzY4MWY4MTFhMTM2IGxlZ2FjeS10cnVuaworMTY0NTIgOWRiODZiMjcyNzhmYzkyMzY1YThlNDY5OGY3NjM2NmZhMjdlYWE5NSBsZWdhY3ktdHJ1bmsKKzE2NDUzIGMwOWMwMTcxNDc0ZjBmNDljMWRhYmMwODRkYWQ4NDM5OTZiOTkwZDUgbGVnYWN5LXRydW5rCisxNjQ1NCAwZjFjNjA1M2U4ZDA5MjIzNzI4Y2E3OGFkY2UwNjg3NmUzM2M3YWJlIGxlZ2FjeS10cnVuaworMTY0NTUgNzkzYmJhZDZkMDljZjA4MzhjNTgwYmM2MWUwNDkyNDgxYjJmNDczNiBsZWdhY3ktdHJ1bmsKKzE2NDU2IDI1ZmM2ODA3N2I2NjU0MzQwMmU3MmFmODlhMmJkYzBhYmUzNGYwNmIgbGVnYWN5LXRydW5rCisxNjQ1NyBiNTRmMTFhZGE5MWVhMDEzODg1YTMxNDhhZDViZDA2MGJjYmU2ZWJhIGxlZ2FjeS10cnVuaworMTY0NTggYTI4ZWQ4YzVlNjJlMDI2Y2EyODM1Y2E4NGI3ZTVmMzcxMGVjZDFkMiBsZWdhY3ktdHJ1bmsKKzE2NDU5IGJiMzY0ZDZmOWY2OTI1NjA0MTYwYmUzNmM0MmUyNzg1MDc0MDJjZTggbGVnYWN5LXRydW5rCisxNjQ2MCA1ZTJlOTFmZmFkY2Q4ZTQ4NWVmYTQxM2YyYzhhZmE0ZWNkZTM5YjQzIGxlZ2FjeS10cnVuaworMTY0NjEgY2IyOWQ0YTJjMTdiMGIzZmVmYjRjNjdjMzkzZWUwNzI5ZmM4NTViNiBsZWdhY3ktdHJ1bmsKKzE2NDYyIDAyNmUxMmFjOWY3MWI0MzllY2M3MDZmZWY0NmQzYTNmMzAxNWNhZDggbGVnYWN5LXRydW5rCisxNjQ2MyBkNmRkZWQzYzg1MDc3OGVjMTliZTNjZTg3ODc2NDkzYzEzNTJlODdhIGxlZ2FjeS10cnVuaworMTY0NjQgYzY4MDAzZWZiNzk2YTNhMWQwOGQwY2IxYmRkNzdkOTJiYTYyZWI1NyBsZWdhY3ktdHJ1bmsKKzE2NDY1IGY4NDBiZjZhMzM1MWU2MzhjYTQzMTQwNWE2NjAxMWE3MjM5M2RmNDYgbGVnYWN5LXRydW5rCisxNjQ2NiA5Nzk3MDE2OThjZDI5NzExNWZkYzMzYThhYjVjMGE2ZmUwNjJhNjljIGxlZ2FjeS10cnVuaworMTY0NjcgYzlmZDUyZDdjYTBhZTdjOTQzYzk5Zjk0ZjllYmIxODRlY2I5NzA0MyBsZWdhY3ktdHJ1bmsKKzE2NDY4IDQ2MWY5YjZlZTU1NTc1YmE1NjFhY2E1MTc5NTY1OGFmNDNlMTBiN2YgbGVnYWN5LXRydW5rCisxNjQ2OSAyZTYwM2JkMGMxYTkzZDdjNDcxMjkyNGFmNjE2NTMyM2I3YjgxNjgzIGxlZ2FjeS10cnVuaworMTY0NzAgZGQ5ZmZhMGE2YjExMDdlMDc3NjExMmViNmFhOWJjN2JjY2I3NjNmNCBsZWdhY3ktdHJ1bmsKKzE2NDcxIGZlODllYTFjOTEwODk4YmEzZGJhMTk5NzRkNTkzZmMwMGZmYWQzNDkgbGVnYWN5LXRydW5rCisxNjQ3MiA0ZTJhYWYxZTcyMmE3ODcyNTE3MjcwNjA4Y2YxZTI4NjI4M2Y3MzM3IGxlZ2FjeS10cnVuaworMTY0NzMgNjk3Yzg4Y2M0NzE0ZGZiMDJkNjNlYTIyZmQxMWM4ZTAzNTEzZTY0OCBsZWdhY3ktdHJ1bmsKKzE2NDc0IDQ4ODg2ZmE4MmFkNTBlODZhYTVmODVlY2U1ZjgyZGE5NTVmZDc2ZjAgbGVnYWN5LXRydW5rCisxNjQ3NSAwMDAzMGViODgxMzFmODQwZjNiMmJlZTkyZDAzN2VjNGM5MzYxYTQxIGxlZ2FjeS10cnVuaworMTY0NzYgYzg3YTM3YTNkMmU2NWI3NjE0ZDcxY2RkM2EzNWRiZDE5Mjc1MmFjYSBsZWdhY3ktdHJ1bmsKKzE2NDc3IGM5ZDAzOTE5NmRiNjEwOGIyMmVhZTNiYTZhMDlhNWM1YTc2YTczOWUgbGVnYWN5LXRydW5rCisxNjQ3OCAwNmQ0MjI1OTE5ZDRkMjYzNzI2NzljZTMwNzEwYzZhN2U5ZTZmOWQxIGxlZ2FjeS10cnVuaworMTY0NzkgNjU3OGZhZjQ4Y2QxZDQ5Y2Q5ODk3MDQ1ZTg5OGY4Y2VlNTYzZmI2ZSBsZWdhY3ktdHJ1bmsKKzE2NDgwIDVjM2VlNzZkMjQyZTNlOGYxZWQ2NmRhMTlhYTNiZDc2NzljM2RlMTggbGVnYWN5LXRydW5rCisxNjQ4MSAxNzI5M2YxMmU4ODQwZWIyZTdmODQwMTA4ZTUwY2FhOTM0NzIzMTQyIGxlZ2FjeS10cnVuaworMTY0ODIgNzY3YjJmN2JlNDBlNjNkZmU1NDhlMGQyYmZmNzg1MGJkZGYyNTEyYiBsZWdhY3ktdHJ1bmsKKzE2NDgzIGQzZjY5NDAyMzY0MjViY2Y4OGEwMjI1ZDIzNDE5MDU0OTdjOTkzZWYgbGVnYWN5LXRydW5rCisxNjQ4NCAwNWQ1OWY0NDc2YWQ1MGY2YTk0OTY0ZDJhNmJiZTA3OWYxMzNkY2IyIGxlZ2FjeS10cnVuaworMTY0ODUgYjNlOGQyZTNkYzczYjA0YjBlZDEzZGVjMjRmMmVlNmVjMjY1NjIzOSBsZWdhY3ktdHJ1bmsKKzE2NDg2IGI3YzkzYzY3N2U1NjU4OWU2NjAzN2NlYTFhNzQ3ZDkyZjAzZTgzMTUgbGVnYWN5LXRydW5rCisxNjQ4NyA1N2QwMmY2MzRhMDJiNzc4OTBjNjA5MmRiZmQxN2JmZTAyYWVhMzc5IGxlZ2FjeS10cnVuaworMTY0ODggNDQ5ZGQzYTAwYmQ3MjkyOTg5NmViMTA3MzRjZGY4OWNjNjQ3M2VlNiBsZWdhY3ktdHJ1bmsKKzE2NDg5IGVjYjhhYWNmZjJlM2FlODZmZjUzN2NlMGIwZGI5MmI1MzQ2YzE5ZmQgbGVnYWN5LXRydW5rCisxNjQ5MCAwNTE3N2NkNDQxYTE4ZTc4Njc4ZWQ5N2E2ZjQyYmQyYmQzZjEwYWUzIGxlZ2FjeS10cnVuaworMTY0OTEgYjc2OWUyZGQ2YTUxYmZmZDY2MDdlMGY1Nzc5ZjNkYTAyNTJkMGRhMCBsZWdhY3ktdHJ1bmsKKzE2NDkyIDU0ODYxYmY2NzQ4ZGE2M2Y3ODRmNmRlODI4YWM4NGI3ODBjYzExZmMgbGVnYWN5LXRydW5rCisxNjQ5MyA2ODlmMTkwMDQwNjM1NDM2YjkwMTcyZmNkY2I3MWU1MzU2NGY4OTUwIGxlZ2FjeS10cnVuaworMTY0OTQgOGQ5OTZmOWM1OTAzYmYwY2Q2ZTdiNjhiZTY2ZWMzOWZkYzdmMWUwZSBsZWdhY3ktdHJ1bmsKKzE2NDk1IDljZTNlMDViN2ZkYjI3NGE2YTc1NTk5NTFlMTg1MzIxZDA3ZTg2OTUgbGVnYWN5LXRydW5rCisxNjQ5NiBiYTM2YTljM2Y0NzcxNDIwMzQ2MmQyYzJkZGE4Mzg5OGQ1MDcxYWMwIGxlZ2FjeS10cnVuaworMTY0OTcgM2I2OWE5ZDA0NGYxYzQzMWY3ODMyMjEyMjNmZWQyMTM1OGE2Y2JkYyBsZWdhY3ktdHJ1bmsKKzE2NDk4IGE5NDlhNzJhZjk2OWNiMmZmOTQwMmExZjg0OTVlNGZkMGE1N2RmMmEgbGVnYWN5LXRydW5rCisxNjQ5OSAzMmNlMjU0ZjNiZWE2ZjkwYmE0NjZjMTI5NWI2ODExN2IyODAyNjZjIGxlZ2FjeS10cnVuaworMTY1MDAgYzMxYjEzYjdkYjc0MDc1MTA2OGI2Yzc0YmY0NWViMTA3OGI2ZjZjOSBsZWdhY3ktdHJ1bmsKKzE2NTAxIDE0NzVjMWNjM2JmMWVlOWMwMTU5NWJkODdkNjFjYmEwNmYzNDRhYjcgbGVnYWN5LXRydW5rCisxNjUwMiA4MmQ5YzJmMTMwOThlNWM3NmZmNDlhY2NiZDZlZWZkZGU2YmQxNDM0IGxlZ2FjeS10cnVuaworMTY1MDMgOThkODE2OTU2M2U3MWQ3NGFhZTM2YTMxZDQ5Y2I2YjRkNmJmNGRiYiBsZWdhY3ktdHJ1bmsKKzE2NTA0IGY2NWI4NjczOGQzYjU4YzIxYjEzOTZmNjgxMTdiNmY1M2JkZGZkNmIgbGVnYWN5LXRydW5rCisxNjUwNSBlZThmMDllNDEzOTU0NjFiYWI4YThlMDE4ODA3ZDM2NTg0MWZhYzkzIGxlZ2FjeS10cnVuaworMTY1MDYgYzc2ZTc0YWJiNjViYWYzZGVmNTQ0NWViMzI0MDc1NTljODBiMGI2ZCBsZWdhY3ktdHJ1bmsKKzE2NTA3IDVhMzExNGU4YzAyN2E5NDYzZWE4NDkzODI3ODJlMjY4ZmJjODUwNmMgbGVnYWN5LXRydW5rCisxNjUwOCA1YzA2N2MxYjVlZDBkOGE1ZTY5MWY3OTM2OWQ5MzFlOTcyZDVjNTUzIGxlZ2FjeS10cnVuaworMTY1MDkgYTQ0ZGJiZGU1ZWNmZGE1NzlhOTY1OWI5ZGJiM2E2NmMyOWE0NWRhOSBsZWdhY3ktdHJ1bmsKKzE2NTEwIDdhZTlmYTQwOWI0NmYyNmM1MjMxMDNmNjFiMzgzY2ZmNTQyY2NlZTQgbGVnYWN5LXRydW5rCisxNjUxMSAwODNiNGU1NDcxNzFlZjlhNGRiZTQ1NzJkMWQ1NGYwZjcxNDA0NjNiIGxlZ2FjeS10cnVuaworMTY1MTIgMWU5ZjMwZWVjNDgyNDQ4MWVkYmFhMDMxNDJkM2NmMGUwNmEwZDVhNiBsZWdhY3ktdHJ1bmsKKzE2NTEzIGRmZGI5MTFjYmVjMjUyYzkzNjY1YmJjMWQ3YTlmOGFkYWZiNGI0YjcgbGVnYWN5LXRydW5rCisxNjUxNCA4M2RiYTNmNWY3YjQ2YTAwOGI5MDAxZDk0MGI1NTU3YTBiNzY4MDcwIGxlZ2FjeS10cnVuaworMTY1MTUgOGQxMDc1N2E1NzViMGE2Y2ZlNTFmZDg4YTM0MzI4YjA1OTczYzFmZSBsZWdhY3ktdHJ1bmsKKzE2NTE2IDg0Zjg1NzlhMDc5Y2RhYWJmZGJlZDk1NWE4ZTE0OTUwODVmMmQzZmYgbGVnYWN5LXRydW5rCisxNjUxNyBlOGRjMGEwYmU0YmFjYzA4MTdhMTQ1YTU2NmQ3MjFmNTcwOTBhMTcwIGxlZ2FjeS10cnVuaworMTY1MTggNjMyYmU5OWNjMmNiMTM4NGMwMmM1ZjVkYmQwODNlYTc3ZjMyNDVlMiBsZWdhY3ktdHJ1bmsKKzE2NTE5IDAwZWQ0Yjc0MzAyZmQ3ZTg2NzllMDViMTdmZGQxYzA4YmQ1YTY1ZjQgbGVnYWN5LXRydW5rCisxNjUyMCA2N2I5YjA1Y2U1YTVkZmIyNzUyMTYwM2MwZTY0Mjc1Yzc2M2FkNThlIGxlZ2FjeS10cnVuaworMTY1MjEgYmMzN2U2YTMzNWYyMTVkOWI5Y2E5M2Q1ZjM2YzU0YzMxMGE4ZGNhYyBsZWdhY3ktdHJ1bmsKKzE2NTIyIDQ5M2IxMDY1NzYzZGJmY2JjM2YyNDIwZTg1ZTgwOWNjMzQ3NjAxNmMgbGVnYWN5LXRydW5rCisxNjUyMyAxNmI2MGJkNmMzNzVkYTliZjRmYWU2ODBkNTBhODBlNGRkODgxMzc0IGxlZ2FjeS10cnVuaworMTY1MjQgZDg5ZGExN2I0NmY2MTBhYTVmY2Y5NjIyOTEwM2ZlZDA3YmE4MTZiNiBjbnJpLTE2LXN0YXJ0CisxNjUyNSA2ZjhkMjRiMzMyZDM1ZDU5NWNmNGYyYjJkMWFkZWQ1MDBhNzcxZjRkIGNucmktMTYtc3RhcnQKKzE2NTI2IDU5ZjhjZWRjZjA0OTUxYzMwZmQ4YTBjMmEyOWNhMTNjYjg1MjU0N2YgbGVnYWN5LXRydW5rCisxNjUyNyAyZDAwYmNlZDYwMzg3MGEzMjczNjhhMTY1NjI5Y2VkZDMwYzgxNTdmIGxlZ2FjeS10cnVuaworMTY1MjggYzFmYzQwNjY0NjAzODJmM2QzMzkyMjc2ZWQ4MzM0Mjg3MTJhMDllYSBsZWdhY3ktdHJ1bmsKKzE2NTI5IGZkYmM4NzMwZDM1Njk4OTcwZGRkZTQwZjk1NTNhZWQwZTkyZmM0MGUgbGVnYWN5LXRydW5rCisxNjUzMCBiMWI0NzRjYzg5NjY0MzdkYTRlYTIxNGVlMTY2NTE0NzhjYTczMTY4IGxlZ2FjeS10cnVuaworMTY1MzEgZGFkMDEzMTdiZWQ3MmZhZjcwNWViNTA5NmYxOWQyOWYzMTIyN2IxMSBsZWdhY3ktdHJ1bmsKKzE2NTMyIDhiYmMwZTY0MzJhYjQ4MmJiODc4YmNkOTc4MzYwMzY2MTY2NTIwZWMgbGVnYWN5LXRydW5rCisxNjUzMyAzMjNkZTNhOGZmOGViYzI1YjhmMzZiODU1MjA5NTlmY2UzOGM3M2MwIGxlZ2FjeS10cnVuaworMTY1MzQgZjcxY2QyNDUzNWM0MDYxOWNjOTE2MmQ5ZjMyNDUzZDdlMzJjYjMwMCBsZWdhY3ktdHJ1bmsKKzE2NTM1IGIwOGFiMmNkZjc0MmQxMGFkYzgyZjI0MzE3MmEwOGNjODQwYTEzMjggbGVnYWN5LXRydW5rCisxNjUzNiAyY2ZmY2Q3MWQ1ZTQxNDcxNDgyZDNjY2NhNGJhM2MxMTZlNTU2NDg5IGxlZ2FjeS10cnVuaworMTY1MzcgZWVhNTEyNzVhY2JmYjQ0MmZhZWRhYzQzZmQwM2Y4NWYzYWZhZWYwMCBsZWdhY3ktdHJ1bmsKKzE2NTM4IGI2ZDkzZGJhMTIwZWFiNWQ1NjEwMjIzN2MzZjIzOGE2ZGY1MjhmMjkgbGVnYWN5LXRydW5rCisxNjUzOSBmMWM5N2FmNGM4NDcwOWJlNjJhNzBmNjZiMDRmZjExMzA4MDg3ZGNkIGxlZ2FjeS10cnVuaworMTY1NDAgOWZiY2ZiZjhhMWQyOTJiOGZlZjAzYmQzOGRmYzU2MzRlNTA1ZDY5ZSBsZWdhY3ktdHJ1bmsKKzE2NTQxIDMzZGYzYjUxNjcxMTllMDUzYjBkZTMyMGFkYzM1NjNhMTIxZjllMTUgbGVnYWN5LXRydW5rCisxNjU0MiBiMzkwM2UwNTAxN2YxNjA0MmE2NTA5MTYwZmE2ODRjNDc4ZmI2MGQ1IGxlZ2FjeS10cnVuaworMTY1NDMgZjZlNGE5ZGQ2N2NkZDNlYTRhY2NlZjc2OTY2NjNhZjIzNTVkOTNjZSBsZWdhY3ktdHJ1bmsKKzE2NTQ0IGFiNDJkNDU0MjQyNDg1MmY5MGQ1OWUzZWYyOGJlMjJhNTQwYjI4NjMgbGVnYWN5LXRydW5rCisxNjU0NSBlMjBmZTAwNTI2ODA5NTU0YzA4YjRmNjFiODhlNGEwY2U2YzgxNjhjIGxlZ2FjeS10cnVuaworMTY1NDYgYWQzOTAyNDBlZmIzYjA5NWFjMWE4ZmJjMTI4ZTA2MmI3YjAyODg2MyBsZWdhY3ktdHJ1bmsKKzE2NTQ3IGZmMTExZDI4OTkwNWQ1MjQ3N2MzNTkxMTA5MTY0ZDdjNzk5NTFiODEgbGVnYWN5LXRydW5rCisxNjU0OCBjMjRmNzc1NWIxZjUyNTUxZDA1YmRiZjM5YjVkMzE0YTlmMTA4NGQwIGxlZ2FjeS10cnVuaworMTY1NDkgMWMxODYwMzA2ODgyMjk3MTZjZWUzYWJiMTMzN2JjZWMyNmM1YzZkOCBsZWdhY3ktdHJ1bmsKKzE2NTUwIDQyMDQ1NjRhYmYyMGM1M2ZmZWE2NGM2NTAwYWIxY2Y4MjkwN2QxMGEgbGVnYWN5LXRydW5rCisxNjU1MSA2NjU3OTU2YWYzMWUwYWE2NWZkMDU4ZThmZDUzYjgyZWJiZmEyNGM3IGNucmktMTYtc3RhcnQKKzE2NTUyIGM5MzY4N2Q2YzczMTcxOGY5ZmMyNGM5MmIyZDVlMjc1OTlhNmUwMzMgY25yaS0xNi1zdGFydAorMTY1NTMgZjEyOTBhYmEyOWRhNGEyNzhhYWU4ZmM0MmRhOTg4ZDkzMDYyZjQxYiBsZWdhY3ktdHJ1bmsKKzE2NTU0IDFmOTY2ZjBkNDY3Y2ExZGE3NGJmNjI1NTgxMzJiMDUxNDcwNGI3YzYgbGVnYWN5LXRydW5rCisxNjU1NSBmNjY1MTNhMGRlYTVhNTVlMmFmYTI0ZjgxNDQ4ZjFiYTMxZDkzNWZkIGxlZ2FjeS10cnVuaworMTY1NTYgNGVkZDEzZWI3NTlkMjZjM2Y2MDhhNjg3ZjExN2EyMzYzMWYxNzFjYiBsZWdhY3ktdHJ1bmsKKzE2NTU3IGM2NmU5OTFiNWYyMTdjYmE2OThkN2QwNzg3MGNjZjM0MmE2YzliMzYgbGVnYWN5LXRydW5rCisxNjU1OCAwNjM3NDEzZTU5Mzk3ZTc0ODVjNWE1NjhmNmJlOWRhZDcyNjY1ZmVmIGxlZ2FjeS10cnVuaworMTY1NTkgMWI3ODEzNTc1YWY3ZGM5NDI4ZGZlYTZhZjYwMDllMzE0OGU5MDE5NSB1bmxhYmVsZWQtMS44LjIKKzE2NTYwIDM1Mjk2OGVlNDBlNjI5YWQyNzgzZmZkYTBjYzViNjc5MjkwNzcyZjQgdW5sYWJlbGVkLTEuOC4yCisxNjU2MCA2ZjdhYjc0YjEyOThkYWM1MWEyMTQzYjJmODNiMmI2ODAzZWExMmQ1IGNucmktMTYtc3RhcnQKKzE2NTYxIDhmYmYzMDdiOTBhNmMyZjRlNDdhZmFkNzRiYTU0ZWU4ODdjYmMwOTAgY25yaS0xNi1zdGFydAorMTY1NjIgMTM2ZDNkNzI2NjZhNzk1M2ZjNzQyZTM4ZGUxNzFhNTBiNWQ1NDdiMSBsZWdhY3ktdHJ1bmsKKzE2NTYzIDRjMTBiYzgxMWZlZGFhZDZhMWI5Yjc5MGY3NzZmOTQwMDE1YTA5NTkgbGVnYWN5LXRydW5rCisxNjU2NCBiYTEzODNjOTg3YzhkZTk4ODI4OTY0MGEzMGIyY2FiNTQzMmUxOTc5IGxlZ2FjeS10cnVuaworMTY1NjUgODI5NWY4NTA2ZWFlYTc1OTZmOTNjNzVjZWMwMTYyNWRkYWFiMTkxZSBsZWdhY3ktdHJ1bmsKKzE2NTY2IDQyYTRhNDE3YjQ3NTAzZmQzMWMxMWNmNTg1MTY1ZmMwYjg4MzI3OWMgdW5sYWJlbGVkLTEuMjMuNAorMTY1NjcgMmM3ODY4OTZlNTQ5ZDRlZWI3NWYxYjQ0YmMzNzhjZWMxNDQ3MDg5ZiBsZWdhY3ktdHJ1bmsKKzE2NTY4IGUwMGQzY2U3MWY4OTNhYmNlNWIxNzY3MGFlOGE4YmZhZjE0NzhiNzAgbGVnYWN5LXRydW5rCisxNjU2OSAwMzFkYWUwOGEwYTk4ODAyZGE2ZGFkZWY2OGEwZjg0YTc4NzlmODhhIGxlZ2FjeS10cnVuaworMTY1NzAgYWM0OGQwNzdlYWFjOTdiYzVjZjMyMjk0ODA0OGRhYWVjOGVmMTU4YyBsZWdhY3ktdHJ1bmsKKzE2NTcxIDU0NjYzMjRiYjgxMTRlZjdiYTg4OWZhOGY0NzFmMjQyNTM3NTc4NjcgbGVnYWN5LXRydW5rCisxNjU3MiBmZDQzNzI3ODc2MTFhYTcxZWNjNjk5ZGJkYjZiOWUwN2U0MGM2OTExIGxlZ2FjeS10cnVuaworMTY1NzMgYjFhN2Y2MWFiNzgxMWIxY2UyOGQ3NGI1MmViMGNlMGYxNDk1YThiMCBsZWdhY3ktdHJ1bmsKKzE2NTc0IGU4YjIyYmM4OGQ5NWVhM2Y3ZjFhZTA1YWJjNTkzNmFiNWYzNjM2MGEgbGVnYWN5LXRydW5rCisxNjU3NSBjNzdmODg3M2RhODQxMzI0ODJjMmRmN2U5NTE2YzI3NmU5MDBlZDkyIGxlZ2FjeS10cnVuaworMTY1NzYgMTE2MjU2MzNkMGY2NzAwZmMwMmU4Mjk0ZThmNTNkZWQ2ZjZjOGZhMyBsZWdhY3ktdHJ1bmsKKzE2NTc3IGRlOTA2NjJmMmVhYjE1NDZjY2VlNWFkNDc3MjIwZDY2MmQ0NzI0YjAgbGVnYWN5LXRydW5rCisxNjU3OCBiYThkYjk2ZWE0ZDlmZDQ1Y2RlN2VlODM2NmNmOWQ1NzFmNTA0NWViIGxlZ2FjeS10cnVuaworMTY1NzkgMzc0ZGE1ODJlYzEyZjRkYWE4ZmViMDZiZGRiZjEwMmUwNTAyMzBkNSBsZWdhY3ktdHJ1bmsKKzE2NTgwIGYzOTY4ZGQxNzExYjI1YWI3Yjc1OTBjNGY1Yjg4ZDFjYjk5NmU1OWYgbGVnYWN5LXRydW5rCisxNjU4MSA3NjIzN2MwY2JmMTMzZjZkYjhhNmRjZDk1YTVhZTY5OWVlM2QxYmQ2IGxlZ2FjeS10cnVuaworMTY1ODIgZjM4ZTMyMWJlOGE0MzY0MTYwMWEyODZlMTBjMGZkOWVmNzY0NzE1ZSBsZWdhY3ktdHJ1bmsKKzE2NTgzIDY0ODczY2YyMGIxNmI0MGY5OTExMzhhZTBjODhmMTllN2RkYmI3ZDQgbGVnYWN5LXRydW5rCisxNjU4NCBhY2QwNzU1ZWU3NzI1MTM4ZjcyNTBmYzQ3N2M0ZDgxZDBmYjA0NjM2IGNucmktMTYtc3RhcnQKKzE2NTg1IDRmNzM3ZmIwNDUyOGRiZGIxZWQyNWNiMmY3NWU0MmM5NTVjZjk3MzAgY25yaS0xNi1zdGFydAorMTY1ODYgNDFhZDM2ZmIwMGVlOTM1ZWZkOTZlM2Y3YjYxNDRlNTI2ZmNjODg3MyBsZWdhY3ktdHJ1bmsKKzE2NTg3IDQ1ZDhmMjNkZjIxODJjMWQ3NjY2OWU0OThmYTRkZTBiMTgzNTBhYzEgbGVnYWN5LXRydW5rCisxNjU4OCA1MWYyOWZjYmQ5YmE1YTMwZTM0ZmJiODkxOGIyNWQ1NWNhZTJjOTNjIGxlZ2FjeS10cnVuaworMTY1ODkgMzNmZjRkNGQ5MWFjM2Q4YjM3NzIzNmY1OTUzMWFiZWRkYTcxNGY3NyBjbnJpLTE2LXN0YXJ0CisxNjU5MCBhZmJiZTY3NGQ1OGEwYmFiZmU5YTljNGY3YzkzYWI3ZTQyMzU2NmJiIGxlZ2FjeS10cnVuaworMTY1OTEgM2MwZjc1YTIxOThmZjE5MTIzMzE4ZTQzY2EzYmUxYzE1ODkyMDU5YyBsZWdhY3ktdHJ1bmsKKzE2NTkyIDY2MjJkNzYzMWNjZmYxZjcwZjUwNWRmMTczMjllYThiMmI3NmY5YmIgbGVnYWN5LXRydW5rCisxNjU5MyA5NWVlZTg2ODYxMWVjNjhmN2MyOTAyZTFhY2IzOWE2ZWMyNGE5NjQxIGxlZ2FjeS10cnVuaworMTY1OTQgOGJkODJjZjM2MWFhNDI0MDg1NGNiNDI4NjE4OTg3YjFkNDViODA5ZCBsZWdhY3ktdHJ1bmsKKzE2NTk1IDM1ZTIyNjY4NmMyZWQ4MDBhMzg3NDg2NzFhZGFjOTMzYzk3ZDc5NWEgY25yaS0xNi1zdGFydAorMTY1OTYgZDQzMDA5N2QxYmZkMTg5OWUzMDQ2NzllNGZkMzA2ODZmNzA2YjdiNiBsZWdhY3ktdHJ1bmsKKzE2NTk3IGM1N2I1NzRlNjc2NjRkYzJjOGMwYmQ0MTMwYzViOWVhNWM3NjY2OTMgbGVnYWN5LXRydW5rCisxNjU5OCBlZWVkN2JjOGEyODNkOTVhMzhjOTMzMjgzN2VlOTFlOTY0MDkxOTg0IGxlZ2FjeS10cnVuaworMTY1OTkgMDg0YzYzZDg1ZjkwODI5NTRkNTUxNjUyODMwN2Y2MGJlMzNmYjRlNyBsZWdhY3ktdHJ1bmsKKzE2NjAwIGExMGRjNzIxNWMxZWMxNzViYzMwNDkxYjYyZDczMjlkYTczYTY1YmQgbGVnYWN5LXRydW5rCisxNjYwMSBjNjM4NjNhYmUxYWE5ZGRlYWIxMmQ2MDdhMDM1OTI5NjQ5NmIwNDM0IGxlZ2FjeS10cnVuaworMTY2MDIgNWZkODBjODJhMTVhOTE0MzQ4NzBlYzZhMWI5YTE4OTFlOTMxNmZkZiBsZWdhY3ktdHJ1bmsKKzE2NjAzIDI1NGY4YjdjNGE4MzgxMzY1OWYyMWRhMTAxZjJlMzE1NDhlNTY0YzAgbGVnYWN5LXRydW5rCisxNjYwNCA2MWNjNTRjMzEzZjZjZDE1ODdmZGNlMTRhMzAxYzhhMDUzODA4NGYzIHVubGFiZWxlZC0yLjU0LjIKKzE2NjA1IDAyZTA4MTZlNGIzNzE3YjlmMDE3MWFmZWRjYTY2NjdjYTUyYTI3NWIgbGVnYWN5LXRydW5rCisxNjYwNiBlNGMzODBlZTkwNzlmNzEzNTI3Mzc1NDJjNzkxZjdkYTZmZDE3ZGZjIHVubGFiZWxlZC0yLjU0LjIKKzE2NjA3IDIzYTYyYTg3NTFiNDc2MmI4NTg5NzI0Y2Q5MTUxYTY5MzM5N2ZhMjIgbGVnYWN5LXRydW5rCisxNjYwOCAxNTExNGUwMTc2NTI5NDYwMzg3YWQxYjgyMmU3YWQ3NTBhZDQzZGFlIGNucmktMTYtc3RhcnQKKzE2NjA5IDQwM2M5NzBkMWE1ZTRhYzljYjFhYTY5Njc3ZGRjMmNiYjllZTBjZGQgdW5sYWJlbGVkLTIuMTA4LjIKKzE2NjA5IDlhY2ZkMDM3Y2I5NGRhMTgzNjA2MDI0MzM4MzRhYmRiYzI5YWQ5NGMgY25yaS0xNi1zdGFydAorMTY2MTAgYzM3ODNhMzNmODRiZjAzNTc4ZTkyNmQ2YjQ2YjM4ZTM4OGQ5NTczNyBsZWdhY3ktdHJ1bmsKKzE2NjExIGIwMTZlYzg3MzhmOWQyM2RlOGYyYjgxNWJlOWViMjVjODJlZmU2YzAgbGVnYWN5LXRydW5rCisxNjYxMiA1MTM2ZTM3ZmY1NDhlNjkxMDE3MzIxNDU5YmZkZWM2ZGZiNmE1NzM0IGxlZ2FjeS10cnVuaworMTY2MTMgNGFlYmQwZjJhMDYyNjkyM2Y1YzE3NjU4MGM1MDRmOTJiMjEyMTQzOSBsZWdhY3ktdHJ1bmsKKzE2NjE0IDYzMWI1ZGY0NGRlNjA5NTEzODllZjcwZmI3M2JlYTcyZmJhMjA3OWYgbGVnYWN5LXRydW5rCisxNjYxNSBiMzY4YWE4MjA4ZjNhMWY0ZTZjZjVhZGJiMTE0MmJlNzg5N2FkOWQxIGxlZ2FjeS10cnVuaworMTY2MTYgMTFkODgyMjBmYjUyMjhmZjhjODIyZDk0ODFiNmYwZjBiMjViYTAwMCBjbnJpLTE2LXN0YXJ0CisxNjYxNyAyYmFkYjMyMjM1NWZjZTQ5ODQzNGM2N2ZiZDQ2YmQ0YTYwMjA1NDlkIGxlZ2FjeS10cnVuaworMTY2MTggOTFkOTVhN2I3ODU4Mzc0MDMxMTliMDhlZjYwYzI3MTE1MDVlOGE5MCBsZWdhY3ktdHJ1bmsKKzE2NjE5IDNhZTA2YzU3ZDA5ZWE4Y2I4MWJkZTlhZjVmMTljOTUzODYxMWY4NWIgbGVnYWN5LXRydW5rCisxNjYyMCA0NjUxNDRhYmYwMmEyZWE5OWUwYzA2NjBkNDgzODA1ZGYxOWJlYjAwIGxlZ2FjeS10cnVuaworMTY2MjEgMWU5ZDFjYzJiYzNmN2FjNThhMTJkZDY3ZWIyNjYxYjlhMzRmMWJmYSBsZWdhY3ktdHJ1bmsKKzE2NjIyIDkyNGYwOTgxYmY3NmRjZDkxNGZhYjUxZDRlMWQyMmZiM2RkMDJhNzAgY25yaS0xNi1zdGFydAorMTY2MjMgOTc1NzNjZjkxZTZhZGU5NDc4YmUwZGI0NjVmZTY2MmVmZGQ2OGJhOCBjbnJpLTE2LXN0YXJ0CisxNjYyNCA4NzQ4OGMzMTEzZjI3NmQ2N2RhNDU1ODg4YjVlMmM1NTQyNjY2MDE0IGxlZ2FjeS10cnVuaworMTY2MjUgMDBhNWM4MDZjZjdjYjhhYmE5NDU2M2YxNTMzNWQ4YTYxNzM2Yzk0YSBsZWdhY3ktdHJ1bmsKKzE2NjI2IGIzN2YwODYzNTAyM2YyNjczYWJmYzI2ZTVjMjc5MGFkZWQ2ODE2NTMgbGVnYWN5LXRydW5rCisxNjYyNyBmYzg3M2NhMGM3ZDNmNDhkN2Y3ZDJiYzhiMWU3ODU5YmZkODVkYWE1IGxlZ2FjeS10cnVuaworMTY2MjggMDUyNTg1MWJhMGI3N2FiNzBjMzQyYzM2N2RkM2UxYWU0NDViNzU2YSBsZWdhY3ktdHJ1bmsKKzE2NjI5IGE1NWU0ODgzZjg4NmI5Y2M5NmY3MDIyMGJiZTM5NmE0ZTdhMDFlYTEgbGVnYWN5LXRydW5rCisxNjYzMCBkZDA0MmY1YThmYTIyMTQ0OGVhYmJkOTAxMGM4MjBjMmFmYTU2ODViIGxlZ2FjeS10cnVuaworMTY2MzEgMDk4ODI1ZTc0YTA1YWQ5MmNkZmU3ZmIwNWVlYWJkOTQxMjhjNDI1YyBsZWdhY3ktdHJ1bmsKKzE2NjMyIDM0OGE3YzE4ZTBlNjNhN2YzMjYzMDVhZTE2ZWRhM2ZiMzQ4ODJlNDYgbGVnYWN5LXRydW5rCisxNjYzMyBiNzMxYTIwNjMwMmFlNzBhOWE0MzQ4ZGNmN2UyYmY2NzhiMDA4NGJiIGxlZ2FjeS10cnVuaworMTY2MzQgYzQ4MDUyOTgwN2FiMzMwNmFhNGZhMzExZDNhZjczZjQ3MjIzMzlkYSBsZWdhY3ktdHJ1bmsKKzE2NjM1IDA3Yjg1ZmM3ZWY2ODRmNzc4M2E0NTU5ZTRhMmJlOTcxZjZmOTljNDIgbGVnYWN5LXRydW5rCisxNjYzNiA2NjU4OWIwNmM2MzMwODYxNGZjZGRkZjcwNjg4ZWJiYzA1MDI5ZmUxIGxlZ2FjeS10cnVuaworMTY2MzcgMDRhMzZlOTNkYzNkZDgwNjZmNTA4MWFiOWU2MGJhOWFkMWMwN2YxMCBsZWdhY3ktdHJ1bmsKKzE2NjM4IDQ1ZWRjMzI1ZTg5YTU3NjkwZDg2ZmVmMmNkMTY4YzZjOTdlYTg3YWUgY25yaS0xNi1zdGFydAorMTY2MzkgOTRhZGQ4OGVmMDhjMDZiNTUxODRmNjJmODFjM2UwMDdkNGVjMzQ0YiBsZWdhY3ktdHJ1bmsKKzE2NjQwIDY2ODJmZjNlMzE4ZjVmMjk0MjgzOWFmYWQ4MWQ2MGIxNmRhZWFhZGIgY25yaS0xNi1zdGFydAorMTY2NDEgYTI5NmZmNTUyMjFmNzEyMGI1NmY3ZWU1N2UwMGIxYjcxODdlYjM0YiBsZWdhY3ktdHJ1bmsKKzE2NjQyIDk5ZjA0MTNlZjc5NWYzMTViMjUxZDE3MmI3MmU5YzA5NTg3M2FhNTAgbGVnYWN5LXRydW5rCisxNjY0MyBiZjhkNTZlMjdjN2JiYTU2ZGZmODQ0N2EwZTQ5YzBmZDA0NzBkNzU1IGNucmktMTYtc3RhcnQKKzE2NjQ0IDk0ZjZlYzg3OTMwYWJlNWVkZDRiZmRhMTIxZTI1MzNlOTY1NGUwZTkgbGVnYWN5LXRydW5rCisxNjY0NSBkNzRhNGE0M2Y0NWZiODhhZGM4N2NjMmRiNjYwMzU2YWQ0ODE1YmUwIGxlZ2FjeS10cnVuaworMTY2NDYgNDY4ZGY1YThjZjRhY2ZkMzQyY2ZmYjNlOTE1NjAwODMwY2Y0N2QwNiB1bmxhYmVsZWQtMS4yMy40CisxNjY0NyA5NmFkMzI0OThkYjc4MjE0ODY5MDFiMDJlMmEzZjMzZDAxOWE4N2UyIHVubGFiZWxlZC0yLjU0LjIKKzE2NjQ3IDFjMmFkYWU0NTA2OTdkZmMzMWM2NjUzM2ZiNzJjODA2M2ZiM2JhYzEgY25yaS0xNi1zdGFydAorMTY2NDggZjNkNWY3MWNjYmI0NWU3MzZmOGNjM2NhNGJhN2UzZTFiNTM4ODI4YiBsZWdhY3ktdHJ1bmsKKzE2NjQ5IDRjM2Y5NzdjZTA2Y2ZlN2NiNWJkNDg3OTFhNWQ1MGY5Zjg4MzNhYmYgbGVnYWN5LXRydW5rCisxNjY1MCBhOTRlMzdlY2RiZWI2ZmI2OGQwZGU2ZGFmZWE5M2Y0MjMyNmM1ZjY5IGxlZ2FjeS10cnVuaworMTY2NTEgYzU4MTQ5YzA2NzBhYTk5MWVkNzQ4YTE2ZDVlZGUxMGIwODQ1ODQwMiBsZWdhY3ktdHJ1bmsKKzE2NjUyIGZjNDlhM2IzODYzYjE5NmM1YzEwYjAwNzczMDJiMjhlNWU3OWRiMzEgbGVnYWN5LXRydW5rCisxNjY1MyBkZmRiNjAxY2VlMWNmNTE0MzViYjMzODZhMmU2YjZiMWYzOGM0YzkzIGxlZ2FjeS10cnVuaworMTY2NTQgNTkyYWMyNzI2NDFkMjJkZjM1ZmY3MTQ3ZDVjOTM0MDE2YTU1N2JmNCBjbnJpLTE2LXN0YXJ0CisxNjY1NCBhNjk4NWQ4OTQ2NDM3NmI5MTczYzlhNTc3YzY3MGI3ZDBiNzY3ZDNkIGNucmktMTYtc3RhcnQKKzE2NjU2IGUyNjNhMjczZTMyMWY5NmU5N2FkYWNjNTMwYjliZWU4MDdiYjkyM2QgbGVnYWN5LXRydW5rCisxNjY1NyBlZThjNWNmYWQzMzVlNmJjNmZkZjRhNzRhOGY2MjQzY2NhZWU5MmEzIGxlZ2FjeS10cnVuaworMTY2NTggNGVmNDYxZGYzMmMxOTFlOTEzMGRjOWJjYjdiOTUxZWEwYTExNDg3MiBsZWdhY3ktdHJ1bmsKKzE2NjU5IDU4ZmVmZWY3MGZhY2I3MzAwYTJlNDU2ZmM3NTY3NjIwOTA4MzgzYzQgY25yaS0xNi1zdGFydAorMTY2NjAgZGY3ZGViMmViYTQxNDEwN2VkZmJjYmFiZTk2NTk1NDY4YTlkNjQ5NyBsZWdhY3ktdHJ1bmsKKzE2NjYxIDgzMDc0NDZiYzZhYWQ2NjBkZDUxMTdlNjMxMThmODBlNzgwYjUyYmMgbGVnYWN5LXRydW5rCisxNjY2MiAzNWZjOTUxMWEzNmZmMmM0N2E2YmE2Njc4MmE0MzAwOWM0NDk2ODZlIGxlZ2FjeS10cnVuaworMTY2NjMgZDAxNGM4YWI2YTgyNDM1M2QzMzAwMWEyMzJiMTAxMDZiODQxN2Q0NiBsZWdhY3ktdHJ1bmsKKzE2NjY0IDI2NmUxMWEyMjZmN2NkODM5YzIyNmYzNDAxNzk5MDZhMjA3YWVjZjYgbGVnYWN5LXRydW5rCisxNjY2NSBlYTVlYjUxZWQwZjY5OGM0YjQ2NjJjZDA3OTA4MjU0OTEzNTA4OTNkIHVubGFiZWxlZC0xLjguMgorMTY2NjYgZjkxMTYxOGEwZWEwZmFjNDZjZTk2ZTJjYjY1Y2QzZjAzOTFkMDJhNyBsZWdhY3ktdHJ1bmsKKzE2NjY3IDFjMDBmZWE5YWU0MGMwZjFmYjQyZmVkM2VhYjM4MjE4ZmNiM2Q5NzAgbGVnYWN5LXRydW5rCisxNjY2OCA3NTVlMjEzNWExOTQ4YThkM2MxMzFmMWZiNzYzYmQzMDRiMjRiNTVhIGxlZ2FjeS10cnVuaworMTY2NjkgYWJmYTRlNGIyZjNlOWFjZTJlZjI4MmRlZGZhZDY3OWRjODg0MWRjMyBsZWdhY3ktdHJ1bmsKKzE2NjcwIDBmNjgwMThjY2U1OGY5ZjFmYTlkYjQyNzZiYmZmNzdlZjdhNjEwNGIgbGVnYWN5LXRydW5rCisxNjY3MSBkZDgzMGM5ZTVjMjE4ZmFlNTkxODI2ZTQwMTQ1ZTMyNDU5NGY4MzhlIGxlZ2FjeS10cnVuaworMTY2NzIgYzRlMzIxODM0MjUwM2FjNjI2N2RhMjE1MTU2ZDMxNWMzYzMyZGExOSBsZWdhY3ktdHJ1bmsKKzE2NjczIDg4MWQzOThhNDRlMDcxMGFlMDBmZDcwNjNlMDNmM2U2M2M1NTcxM2QgbGVnYWN5LXRydW5rCisxNjY3NCBiZjcwNjJlOGVlYWNmNDNlM2U3NjcyZDc3ODQ0ODEzZTA5ZGYyNTFlIGNucmktMTYtc3RhcnQKKzE2Njc1IDMxYTdiMDA0NTU4ZmI3YzNhOTEzZTBkYTFmOTgzZmQ1YzE4YmQ1NDggY25yaS0xNi1zdGFydAorMTY2NzYgMzNmZDYwYWJkNDgyMmM0YWFkNTcxYmU5Nzk2N2EwOTViMjQ4ODg2ZiB1bmxhYmVsZWQtMi4xMDguMgorMTY2NzcgMTVhZDQwODhhNzAwYmZiMDViZDMwMGE4NmFmNzBiYzI5YTUwNTI3OSBsZWdhY3ktdHJ1bmsKKzE2Njc4IDhlZWFmZjk2YjRjMjQ0MjJmYWFmMjcxNmYzMWMyYWFjODAwYzBhZjggbGVnYWN5LXRydW5rCisxNjY3OSAwOTU2NTc4NDcxNWUxYzY2NTVlNjk4OTlmNjkyOWEwMDVmY2YyMTkyIHVubGFiZWxlZC0xLjk4LjIKKzE2NjgwIDNhNWE3ZDI3ZjFiNzJiOWRlMWY5ODhhMThjZDA0NDRiODZkOTEwYTYgbGVnYWN5LXRydW5rCisxNjY4MSA2MjQ5NGE5NmRjY2FiNWFhMjM5ZTY3ZWRlOWFmNjFiNjBlZWVmZGVjIGxlZ2FjeS10cnVuaworMTY2ODIgYzBjMTczNDdkYTViYmVjY2JlZmYxYzc1ZDFlYTNmMDFkYTUwNDQzOSBsZWdhY3ktdHJ1bmsKKzE2NjgzIGFhNDlkMDc0ZjcxNjFiMDcyN2M5NjUzY2FjMDk2OThmYmJiYTUxZGQgbGVnYWN5LXRydW5rCisxNjY4NCA5OGYwOGNhZmUxOWIxMjU0MWVhZjNkMWEzY2E2ZmUyM2Y1NjY5YTMyIGxlZ2FjeS10cnVuaworMTY2ODUgOGYwZmMwYjVmNzg0Y2NkMDZhMGM3MTE0NGZiZGYxZTNhODViNDNmMiBsZWdhY3ktdHJ1bmsKKzE2Njg2IDA4ZmViNTM4YzgzNzE2MGViNDg1ZTljMDQ0Y2IxOTk5NWE3N2E4OTcgbGVnYWN5LXRydW5rCisxNjY4NyAyMTkwYjc1OTk4MzczNGEwYzRlOTRkZjBkNTIxZGM4YTEzYzg2NDJhIGxlZ2FjeS10cnVuaworMTY2ODggMWM1YmRiNjYyM2M4YzExNDg1YzI1ODkxOGZjMzNlOGMxMjQwYmQzNSBsZWdhY3ktdHJ1bmsKKzE2Njg5IDc3YjllMDQxYjU5NWNiNTA5ZDBkODIyNTEwNzQyMDBjNDliOTRmYWYgbGVnYWN5LXRydW5rCisxNjY5MCBjMzMyMGQyNGQ3ZGU0NmFkZDBlZTRiNzMzODAwYmY5MmY4YzZjMmZkIGxlZ2FjeS10cnVuaworMTY2OTEgZTJlYTAwNjIwZWQ2ODk5YTRkNDE3NDY5MDYxNjE1NGI4MTI1Zjc0NCBsZWdhY3ktdHJ1bmsKKzE2NjkyIDA0MzBhMTMwOTU5NmM4NzkwZDM3ZDc2ZmQ3OWY3NzUwZTExYTYwMmIgbGVnYWN5LXRydW5rCisxNjY5MyBkM2JmOTdkNTMyYTA4YjRmMTNmMmQzZjUwNzk1NTM2MWRjNWEyMzkxIGxlZ2FjeS10cnVuaworMTY2OTQgMjVkZTcxOTNmOWZjZWE2NTgzNDUwNGE3NmY1OGRmZjJlOTdjYmVhNSBsZWdhY3ktdHJ1bmsKKzE2Njk1IGEwYjM2NTk4YjMxZDBkMjk4OTkxMTc0NTkzZjRhYmYyZmFmZmFiMmQgbGVnYWN5LXRydW5rCisxNjY5NiA5YzY5YmQxYTI4MjJmMGU1MDVmMDhkZDRjMzQwOGFjMzUzM2NlY2NkIGxlZ2FjeS10cnVuaworMTY2OTcgZTMwYTE5NGRjYTAxNDgyYzRkZTIxYzY4ZGI2NDBmMTU4ZTVlMDdmZiBsZWdhY3ktdHJ1bmsKKzE2Njk4IDBlZmRmNDViZjZiYjZiOGQxNjM4NjA4MzE3ZDljYzM1YmY0MDk0ZWQgY25yaS0xNi1zdGFydAorMTY2OTkgMGFjOTE5Y2E4ZTY5NjI0MDU5ZTg3YTVjY2RlNTA1ZWNiZTc4N2M1NCBsZWdhY3ktdHJ1bmsKKzE2NzAwIDk5ZTE5Yzk4MmY5NDQ1ZGY4Y2Y4YzMxY2YyZmI0MTFkZThhNDE2OGUgbGVnYWN5LXRydW5rCisxNjcwMSA5YzFlNjg5ODQwMjczZjk0MjM3ZTIxNzIyZDVjZmY0ZmQ4NDE2NTM0IGxlZ2FjeS10cnVuaworMTY3MDIgYzQ1YWNjYzhlNmQwMzZmZjc1YWRhNWJjNTE1OGE2OGI2YWE1NzAzNiBsZWdhY3ktdHJ1bmsKKzE2NzAzIDQ0NmMzNjE2YzMyM2IwZjQ3YmZmZWE5YzNiMDFmNjljNzQ5MmU4MzIgbGVnYWN5LXRydW5rCisxNjcwNCA1Mjc1N2JhZjAzMGRkYTBmMDgzOTE0OTUyYTUzNmEyODk3NjMyZWJiIGxlZ2FjeS10cnVuaworMTY3MDUgYjM0N2ZjNWRhZWI3MGM3MDA2ZDM1OGY3ZDRhNTg2ODY4Yzk1NDQzMyBsZWdhY3ktdHJ1bmsKKzE2NzA2IGE0MjU5YmZjYTViZmU4YmEyZjJmMDFmZTAzNGEzMmU5NzUwNGYxOTMgbGVnYWN5LXRydW5rCisxNjcwNyA2YmYxMjgxZWM3NjM5YmRlNDE3MTY4Yzg0ZGE0NTkzNWEyMjIyODAxIGxlZ2FjeS10cnVuaworMTY3MDggNjAyNDM5OWI3OGJmYTYyZjkzZGFkOWIwZjA1ZDA2NTZmZWJkOWZmOSBjbnJpLTE2LXN0YXJ0CisxNjcwOSA5NDE0ZDAzMWEyYzNhNGNiZjY0Y2U4MThmNTg0MjE2NWIxMzU0YTRlIGxlZ2FjeS10cnVuaworMTY3MTAgYzhmZjgwY2VhNGY3YmU2MTkxZDVkN2NjOTYwOTRjY2NmZDZhOGQ1YyBsZWdhY3ktdHJ1bmsKKzE2NzExIDhmNDNlNTkyY2Y5YTRmNjhhNWIwZTUyMWUyZDhjNDE2MjMyZGE4MGUgY25yaS0xNi1zdGFydAorMTY3MTIgZDcwYWVjMmUzNDljZWFiNWU5ZjI0YzhkYzVlMmJmZjIxY2YzODQwZiBjbnJpLTE2LXN0YXJ0CisxNjcxMyA0NjZlNWZmMjg5MjYyMGEwMjdjMmY0OTgxZjVlODgzYmVkOWNmOWY0IGNucmktMTYtc3RhcnQKKzE2NzE0IGY0MDVmY2JhYWVmNWE5NzU0ODBjOGI4MTM4YzkwMDg4ODlhN2ZlMTkgY25yaS0xNi1zdGFydAorMTY3MTUgZTZlZmNmY2YxNzRhODdkZGQ0OTFkYWQxNTA3NzU5MTI2YzY1YjJmMyBjbnJpLTE2LXN0YXJ0CisxNjcxNiBjZjUwMzQ1MGYwN2IyNGM2MmQ2NmQzOTE3OWExZTVjMTkyMjdlMzAwIGNucmktMTYtc3RhcnQKKzE2NzE3IGJkNjdhNGQ2ZjRmOGMxZDZkNzVhZTgyOWZmNjQyMWMzYWNhYTE5MzQgY25yaS0xNi1zdGFydAorMTY3MTggMDgwMjNkMjZhMGNlODc1MDllMjQ2OWFhNWQ2MWE5MzViOGE2MzM5MCBjbnJpLTE2LXN0YXJ0CisxNjcxOSA1OWM2ZTk4MzJhMjA0MjUyNmVlMWRkYTNmMzE1ZDliNzQ0NTlhMDAzIGNucmktMTYtc3RhcnQKKzE2NzIwIDY5M2I2MTU4MTc0NjY5MDdjYmY3NDY0MWM3NDg3NmE2YTdiZDI0NGQgbGVnYWN5LXRydW5rCisxNjcyMSA0ZDE2YzhkZDg5OWM0ZWVhMjEwOTQ2OTFhNzkyNmJlNjMxYTk0ZjA5IGxlZ2FjeS10cnVuaworMTY3MjIgYmMwMTUzYTczOWFlZjQ2N2U1YTJjZDMxYTA3YTliMDFkN2RiZTVmYyBsZWdhY3ktdHJ1bmsKKzE2NzIzIDAzZmE0MDUyOGQxNzlmYWI2NTI4MDc5ODc3MjE4NjJhNzgxMWU3MGYgbGVnYWN5LXRydW5rCisxNjcyNCAwODA5MmQxZWIyNmFmOTdjOTZmYjI3MzgyYWQ0MjA1ZjllNWJhNjNjIGxlZ2FjeS10cnVuaworMTY3MjUgMzM5Njk3NTFlMzUxZmQ3OTA0OWY3ZDk0ZWUzYTdlOWI5NTJiYjExMiBsZWdhY3ktdHJ1bmsKKzE2NzI2IDUyZmNkMDk4NTQ3ZTllY2IzNjgxYTY3NjM4Nzg5MjUwODJiNWI0MTcgY25yaS0xNi1zdGFydAorMTY3MjcgZDA1N2NkNTQzZWQ5NjZkZjAzNjEyYTZjNDJlMDcxMWFkYzc2MGExOCBsZWdhY3ktdHJ1bmsKKzE2NzI4IGM3YjNmZTg0MzM1ODY3NWMyYjcxMWYwNGVkZTc0YjkyNjY1ODZkYzUgbGVnYWN5LXRydW5rCisxNjcyOSAxZDE3YzVlNjdlZjU3MjUyNDg4MDA4YTJmOGFlNTY5YTg1MjZjMzk4IGxlZ2FjeS10cnVuaworMTY3MzAgNjU4YjA4NWUxNzViZjg0N2Q3NmQ2ZTFhMTZjZWYxMjYwYWNiZTE5ZCBsZWdhY3ktdHJ1bmsKKzE2NzMxIGRkZjMwMmQ2OTIxMTNlNmU0YjlkYjIxY2M1Mzc2Y2Q2MTRkNWNiMWUgbGVnYWN5LXRydW5rCisxNjczMiAyYTA0ZmJiN2MwN2Q5NjQ3N2RiMDcyNTZhMmQwOGU2YTY5YTFlOGNhIGxlZ2FjeS10cnVuaworMTY3MzMgYjZlMDdjMjcyNDg3OTAwZmRkOTc2OTBmZjIzM2Q1ODM3MmFhZDVjNiBsZWdhY3ktdHJ1bmsKKzE2NzM0IDI2NmZiNjMwMmYzMTE3ZDcxZjhjMTY3Mzk4NzI1MzA0Y2QxN2JhMTkgbGVnYWN5LXRydW5rCisxNjczNSAzOTI3YTRkOWMyZmIwMmRhMjcxOGYzY2Y0M2Q0YmMwOTk0YTZiY2NhIGxlZ2FjeS10cnVuaworMTY3MzYgZjE5NGQ4YjI0ODY1OTEyYmQxNmMxNzU1MzAxZTliZTFhMzg3N2Q3MiBsZWdhY3ktdHJ1bmsKKzE2NzM3IDRlYWE0NjNjMDMxYTFiZGI1ZTc3OTFjMzcwZDA0MTA4ZTA2ODJkZDQgbGVnYWN5LXRydW5rCisxNjczOCA2MGM3Y2RhMzVjZmE0ODc3ZWNjNWExNTQ4ZTkwMzYyMWNhODU4MDhmIGxlZ2FjeS10cnVuaworMTY3MzkgNzE3MmMyZDhiOTJiNjU4ZjJjZGM2ZDJmNGYyMjJjNzA3M2NlZjdkNCBsZWdhY3ktdHJ1bmsKKzE2NzQwIDRkMTRlZWY4ZWEwNzY1NjhiYTc1MjkwNjcyYzUwMThhYjU4MzAyMmEgbGVnYWN5LXRydW5rCisxNjc0MSAyZTBkMWFlYTljMzc0MWUwNGFkZmY4ZGExNTM3NjIwZjRmNTMyYjkxIGxlZ2FjeS10cnVuaworMTY3NDIgNDRiMWI4MThmMjhlOTI1ODMzMWFkYzRiNGVmMzIzYmI2MGE4YmRlOSBsZWdhY3ktdHJ1bmsKKzE2NzQzIDI1ZmQ5ODQ2YmQ1NDJjMzQ0ZjBjZTU4MDczNDEyM2ViOWMyY2FlMjIgbGVnYWN5LXRydW5rCisxNjc0NCA0NjRhMjE5MGQ5YjY3NmE2OTM1N2ViZmNlY2JmOTU2MzQxOTcyZDA3IGxlZ2FjeS10cnVuaworMTY3NDUgODAwODlhNDUwYzM0ZDBiNWJkYTFmNDZiMWUzYTA2MGI5YTQwNjIwOSBsZWdhY3ktdHJ1bmsKKzE2NzQ2IDg3YWYyYzM0MWI3OWJhMGI1NTkxMDZkNjUwNDhmMjNlYTQxMzliMjYgbGVnYWN5LXRydW5rCisxNjc0NyBlY2U3NWIwN2IxMzYwODAxMGNiNWEyOTdmNGUwY2E1NjNhNTIwZTU4IGxlZ2FjeS10cnVuaworMTY3NDggZDU2ZGQxNTMwY2UxMTMyYzI1N2MxZWZhY2YxMTFjOTA1MWMzNDcwYSBsZWdhY3ktdHJ1bmsKKzE2NzQ5IDMxYjI1YWMxZjAxOWFmMzAzYzY2MmJhMTA3MGFhN2ZmMDI3YzNjMzIgbGVnYWN5LXRydW5rCisxNjc1MCA1NzgwYjE5OGFiYzg5OWVhNzg3NTgxYjQ5ZmNlMWQwYjc4MWNlMzI4IGxlZ2FjeS10cnVuaworMTY3NTEgNjQ4YmE0MDQ0NDU1OWZiNGZhNWRmNDJhNjRiY2RmNDA0NDUwYjRiYSBsZWdhY3ktdHJ1bmsKKzE2NzUyIGFmZGIzZjQ4NWQ4ZjkzZTM4N2YxZTQ3Yzg2YjQ2MGQyOTNjNjI5ZDggbGVnYWN5LXRydW5rCisxNjc1MyA3YTk5NDUwZGEyZDY0ZjdiMjUwNWVmYTRjOTg2YzQ0MDZjNTYyOGI3IGxlZ2FjeS10cnVuaworMTY3NTQgMTkxZjIwZTA0NzNlZTFmZmM0MGU4ZDNlM2I2YzQ4YzRlZGM1NTFlNSBsZWdhY3ktdHJ1bmsKKzE2NzU1IDI2ODk4YTk4ZGI2ZWQwYmMxYWQwNTE0ODI2ODBjZGIyMWJiMDk0MDMgbGVnYWN5LXRydW5rCisxNjc1NiAyOGFmYmM1ZTA3NzAwNGFlNzJkN2YxNzgwMjEzMDZiNjRlOTg2NDc1IGxlZ2FjeS10cnVuaworMTY3NTcgMzcwYWRlODhhNTJhNTQ0Y2JkNjQzOTgyZWY5YTJjYjczODNkNDU2ZCBsZWdhY3ktdHJ1bmsKKzE2NzU4IDFiMTU2ZWY4MjgxYjhiZWFiYWJmYjc5MTU1NTg5YzhlYmY4MGYxMGMgbGVnYWN5LXRydW5rCisxNjc1OSA3MGM0N2FiMDFhODVlMmJlY2UzMGM4ODYwOTFiYzM3NTU2OTAxOWJmIGxlZ2FjeS10cnVuaworMTY3NjAgNzQ0NWQ5OWRhOGRkODgyNTUxNDI2NmYzZGQxNjY5NGIxMWQ0NmJlMiBsZWdhY3ktdHJ1bmsKKzE2NzYxIDgyYTIyZDgyOTYwNzEwZWE5NDY3ODA3ZDA1YWE0MGJkOGI4MDQzYTUgbGVnYWN5LXRydW5rCisxNjc2MiA0OTRjZjVmYjhmMTc0ZWYwNDBjNDgyNWViNGNjZDZiNjI2NzlhMzcwIGxlZ2FjeS10cnVuaworMTY3NjMgOGU4YThkZjBmZTczNGYyYjkwYzhhZTMwNTY3ZWYwMGVhMzlmNmVhNCBsZWdhY3ktdHJ1bmsKKzE2NzY0IGI5MDAyZGE0NmY2OTNhYzdmNDcyODM5OGQ3NzNhYzlhOTA0M2I0NWMgbGVnYWN5LXRydW5rCisxNjc2NSAwYmIwYzcxNjdkMWZjN2IwYzQ3MWZjNGE5MWMwMTQ4N2EyZjgzYzkwIGxlZ2FjeS10cnVuaworMTY3NjYgOGJlNzUyNDA4NWQ2MTk0YTYzODI5MDcyNmM3NzRlMzRmNDY2YzBjYiBsZWdhY3ktdHJ1bmsKKzE2NzY3IDdkZGU3NGMxZWJiZTRjZjUyMzg3OTdlNWZhYjE1N2ZiYzllYzQwYTQgbGVnYWN5LXRydW5rCisxNjc2OCBjOWFhNDllODc0OGU3MTViNGQ1MzcyYWEwMzBkODFlMDllMWQ4NzY1IGxlZ2FjeS10cnVuaworMTY3NjkgNzA3OWFhMDViYmQwNThjOTU2NzkwOWY2OTYzN2RhYWNiZDRlMjA3OSBsZWdhY3ktdHJ1bmsKKzE2NzcwIDJlZTBmNDdmMTRkM2IwYTQ0ZDU4ZjZkNmNiZWY2MGE5MDQzYjAxZDkgbGVnYWN5LXRydW5rCisxNjc3MSBhMjU2YzEwMWJmMjc5NWVjMjFlYTI0MmM5MzU1NjNjZTQ4NGNmY2E2IGxlZ2FjeS10cnVuaworMTY3NzIgNTYwMTc1ODAwYTA3ZTcxMmRkODI2ZGY4MDMxMGI4OTNlYzdjZjQwOSBsZWdhY3ktdHJ1bmsKKzE2NzczIDkxZGRlZWQxMmZhNzAzYTZjYzQ4NzIxYmJiNzBhNzFhOWRjNTMwNzIgbGVnYWN5LXRydW5rCisxNjc3NCA3YjdlZTU4OTAxZmIwZjBhN2UwZjJmMDdkMDkyYzdkODkwNmFkMWYzIGxlZ2FjeS10cnVuaworMTY3NzUgODQxY2Y5MDEyYWMzY2JmZmFhMTgyY2JlZTNiOWQ5YmQyOWFiYjRjOCBsZWdhY3ktdHJ1bmsKKzE2Nzc2IDU1ZTM5ODgyMDViMzQ4MGJjZTdlZDA1ZWUwY2FlMTY4ZDRlM2EwNDggbGVnYWN5LXRydW5rCisxNjc3NyBkOTkxODNjZGJiZGM5N2E5YmI5MTgwZmFjZjFhZDc2M2FmZGFlMjdlIGxlZ2FjeS10cnVuaworMTY3NzggNGVhYmQ3ZDM5MjVmYzk4Yzg5NzYwZGQxMmNlYWFiMzVlNWFiYmI0NiBjbnJpLTE2LXN0YXJ0CisxNjc3OSA4MTU1YThiMzA0NDRhNGE0YTZlZjBmNTBhMzk4Nzk4Y2RmZDFhODg2IGNucmktMTYtc3RhcnQKKzE2NzgwIDZlMmMwZDBjM2ZkNTZkNGFlOTc0YTAzNDE5YzAwNWNlYThjNTQ3OTMgY25yaS0xNi1zdGFydAorMTY3ODEgZGUyYmZjMTVmOWVjZTVhNWJlNDUzMjQyZWRlYjRiMDA1ZTYxYWM4NCBjbnJpLTE2LXN0YXJ0CisxNjc4MiBhYTQyMDI3MDIyNTI2MjcxMWVkNmUwMjY3MTBhMThiMjViMGY4OTc3IGxlZ2FjeS10cnVuaworMTY3ODMgYzI1OGYwNWViODVkYzk4YjM4YTM5NDk1ZWJmN2IxNjFkN2MwYmVjYiBsZWdhY3ktdHJ1bmsKKzE2Nzg0IDRlMjhjYTM0NWNmZWU3NmZiZWQ1NTViOTFkY2JlMzk3ZWEwMGZhOTcgbGVnYWN5LXRydW5rCisxNjc4NSAzZTZlM2QwNWQwMGI3ZDVmMTZjYzg3YjZlNmFiM2RmMzBiMDNkNjEyIGxlZ2FjeS10cnVuaworMTY3ODYgMzA3MTNkNTI4OGRmNDljNDQyNTJlOTA3YjFmYTRjYmJhNzJhMDI4OCBsZWdhY3ktdHJ1bmsKKzE2Nzg3IDhhNGExNzk0MTRkNGFhNDg0MWIzNDBlZDA5Y2JmZmFkZTU1YjY2ZTUgYXZlbmRvcgorMTY3ODkgNThhYzgzMDQwMWJkNWM5NDlmZTA1MWIwYjc5OWZlM2NkOGNkYmI5ZiBhdmVuZG9yCisxNjc5MCA1YWRhOWZhNTQ4MDE1YmViNjlhZjUwNzI4ZGI4ZjAzNjUyYTFmNjYxIGxlZ2FjeS10cnVuaworMTY3OTEgZWI5YTM2MTYzYTllYWE5OTQzMWM5ZWQzNDBkODg2M2M1ODRhNDMxOCBsZWdhY3ktdHJ1bmsKKzE2NzkyIGIyY2Q2NmU1ZWE0YzI0YjczZDUzY2Y2YjhkOTMyZDkxZDEwNTk4OTcgbGVnYWN5LXRydW5rCisxNjc5MyA2M2RlN2YwMGI1YmNjYmU5YmE5N2NiYzQwYWVhNGM5YmM4ZDU5ZGFlIGxlZ2FjeS10cnVuaworMTY3OTQgODhmNGU3MmQ3MjQ1MzlkZGQzMGNmNDQzOWRjZjA3MDBiNzY5YTFmZCBsZWdhY3ktdHJ1bmsKKzE2Nzk1IDcyZjY4MmViOWFkYmU0MWIyYTkyZTU0ZDMxODU0YWJjYzczZTc0MmUgbGVnYWN5LXRydW5rCisxNjc5NiA0M2Y0ZjhkMTU5NzFlYTI0MmZiOTRmMzU0NGNiNDdlMmFjYjM1OTUxIGxlZ2FjeS10cnVuaworMTY3OTcgMWIxMDdjOWJhNzAyMTM2NzlhNzFjY2VhMDA0OGI2NDhjZDY3MjI4MCBsZWdhY3ktdHJ1bmsKKzE2Nzk4IDJjNDI0Mzk1OTRiN2U4MDM0OTEzNjY0YjY4ZDU1Zjg2N2QyMWRiODEgbGVnYWN5LXRydW5rCisxNjc5OSA2MTM0N2VjYjliMDEzN2VlOWZkNTg2NjU0MDNiMzU2N2YzNjM1ZDVhIGxlZ2FjeS10cnVuaworMTY4MDAgNDAwYTVlM2FjNzZjOTRhYWJkOTUxNTkwMjgwMjhlMzUwYzIzYzI4NCBsZWdhY3ktdHJ1bmsKKzE2ODAxIGYzYmZjZWU3NDVhNzYzNmNkZGU4YjM4NmEyZWRmYjVjYWUzYjUxNzYgbGVnYWN5LXRydW5rCisxNjgwMiBlNWE3NGNmY2M5NzFjMDVlYjgyMWM2ODNjNDg5NjQ5OTg1MjA5ZWRhIGxlZ2FjeS10cnVuaworMTY4MDMgZjI3OTJlYWQxZjA2ZWU4ODlkZjI3Zjc4ODZkZGI0NjcxNDJlMzhmZSBsZWdhY3ktdHJ1bmsKKzE2ODA0IGE5NTVmZDVkZTAzNTA1NDhkZWM3ZjQwZDVjNmEzYjY0YTM0OTU5OGQgbGVnYWN5LXRydW5rCisxNjgwNiBhMjg0ZWQyMWEwZGRhZTcxZWNkNWE4MGY3NzQ2MDlhMjU0ZGJjN2I4IE5vbmUKKzE2ODA3IDc4MzRhMTEzY2UyNDgwMTBkYWMwNGY4NDhmYTdjMzhkNTg2M2JmOTIgbGVnYWN5LXRydW5rCisxNjgwOCA5N2Y1Mzg4YTZkY2UwNTdhZjA4NTZiYmNjMjQ4YWQ0YTZlN2Y0NzIxIGxlZ2FjeS10cnVuaworMTY4MDkgNzE2ZTFjNGUzZjc4OTQ3MjZmOTIzYTkwNzQzZTI1MzdhNjE0Mjg1MCBsZWdhY3ktdHJ1bmsKKzE2ODEwIDJlODdiYmI4N2FkNDQwNWM2ZDIxMThkZTgyZTA3MjU2YzExODFiODYgbGVnYWN5LXRydW5rCisxNjgxMSA2NWMxYWJmNDUxZGMwNTMwZjcyZjNkNmFlNjU1ODM4ZThlYmI3YzRlIGxlZ2FjeS10cnVuaworMTY4MTIgZDgwNjllZmNkNzZlNDgzNDdjODBmZWM1NzA5ZmRmOTk3NWZkYmM4YiBsZWdhY3ktdHJ1bmsKKzE2ODEzIDE0M2ZmYmY4N2U1MWJiMWIyMGExNWU4YTE1ZjEyY2ZkMWUzOTk3NzkgbGVnYWN5LXRydW5rCisxNjgxNCAzMGRiYjMwZmYwMTkxOWIwZTU1ZWQyZjBlNWU1NDQ1Y2M4ZTYyNGM3IGxlZ2FjeS10cnVuaworMTY4MTUgNDQzZjNjNzdkODhjZWQ2ODc3YTJkOWYzMDQwZGFhMDBiYmFhODE2NyBsZWdhY3ktdHJ1bmsKKzE2ODE2IDU1ZTRmNDI4OWUxODgzM2I1NzAyZjUxNWY3NTczYTdmMjMzOTRlNDQgbGVnYWN5LXRydW5rCisxNjgxNyA3M2Q5NzZhZmE4ZDQzZjQ5ZTljZjE3MTQyYmIxMWU2MGM1OTZjNWU4IGxlZ2FjeS10cnVuaworMTY4MTggNTkxYWZlMmZjODIzMGI2MDk0ZWY3MzFjMGNkNjEwYjY3OTFiYTJhMSBsZWdhY3ktdHJ1bmsKKzE2ODE5IGYzNjkzODg3NGNlNWFiYjk4MTBkNzJmMTMxMWUwNTE4NjlmN2UxMjYgbGVnYWN5LXRydW5rCisxNjgyMCA5YTA1MjY5NmNhMTIzN2JiNzJjZDE2NTQzZDFlMTY0ZjczYzE1ODFhIGxlZ2FjeS10cnVuaworMTY4MjEgOWNkYjZmOTc5ZmE1NTBhZmZiNTZhZDU5ZjhhM2VkOGEzY2JlYzA4NyBsZWdhY3ktdHJ1bmsKKzE2ODIyIGVkMzY5ZjBhYTMyYjM5NjNhYjlhNDNjZDhhMmVjNTM0YmY3ZDFkYjkgbGVnYWN5LXRydW5rCisxNjgyMyBlZGEwOWY4MjRhOWZiOTA4YzZjNTFhOGViODU4MjdhN2QxOTExN2RkIGxlZ2FjeS10cnVuaworMTY4MjQgNmM5MWFkOWMwZTA2YzNjZWI4NTk1MmU4ODQ3M2I0YTk4NzhhNzFhZiBsZWdhY3ktdHJ1bmsKKzE2ODI1IGZhYTk3MGYxNTQwZmY5NGViODc3MWVhMWQwYzIxZTBiZmU5YjgwYjAgbGVnYWN5LXRydW5rCisxNjgyNiA0OWM3YTRkZDlmNjE1ZDc0M2QzMzZkNmNlYjNkZTMzZmVhNmVmZGExIGxlZ2FjeS10cnVuaworMTY4MjcgNDljODMwNTAwNDgwMWVkYzQxYWFiNTliOTNhYTg4MTFhZTVjYjg0NyBsZWdhY3ktdHJ1bmsKKzE2ODI4IDgyZjc5NjE4YjQ0Mjg1MTgwNmM1ZDBhNDQ2MTgzMjY2MTFiYTM3ODggbGVnYWN5LXRydW5rCisxNjgyOSA2YzdmYTUyMzcyNmZjNTU2ZmFhZjEyOThhNzIyNjYxMDkzNWQzMTViIGxlZ2FjeS10cnVuaworMTY4MzAgM2Q2OGQ1YmNjZDQwNmU4OGQ1YjU0N2FiZTk4NWQ1ZTJkM2VmMWY4OSBsZWdhY3ktdHJ1bmsKKzE2ODMxIDliOTQ2MWE2NTZkZGM1NTdhYzM5YTczOWVjNWEyNGJkYzhlNzM3ZWEgbGVnYWN5LXRydW5rCisxNjgzMiA5YTI5MTg4OWFiNWYxNzg4NDY3Y2UyNjUwMWQ5ZDc3MWZjN2FlZTA5IGxlZ2FjeS10cnVuaworMTY4MzMgMTI4ZjY0MTE5MWMzM2M4OTUzMjViYmY4M2E3N2VmYzljNjVkYTQ5MSBsZWdhY3ktdHJ1bmsKKzE2ODM0IDBkODA1ZTIzOWQ4ZjQ0Y2ZlMjNhNmQ4NmM5ZDVmODhlYTM3NmMyOWEgbGVnYWN5LXRydW5rCisxNjgzNSA1OTg0YzNkNzYxZjc4NDQyZTI4MDkwMzRjOTU5ZDg2OGI4MTkzZTRlIGxlZ2FjeS10cnVuaworMTY4MzYgYjRiMjYxMmVhMzMzMGZkN2NiZWNhMWZjNmE0ODY1Y2M1YTg1NmYxNiBsZWdhY3ktdHJ1bmsKKzE2ODM3IDViMzRiNzBlY2YyMmZkYjRhOTNmMDk1MTIwYjJmNTk0OWZhMzUxZDIgbGVnYWN5LXRydW5rCisxNjgzOCBkNDQ2MDNmMmI5Mjg5YjRhNjgyNzllMDUwZDMxNzkyZDA4MTg3M2JmIGxlZ2FjeS10cnVuaworMTY4MzkgNzQwMjkwYTU2MTkwYTEzM2NkM2ZkMjUzM2IyZWJmNjc3YTQwZGE4MiBsZWdhY3ktdHJ1bmsKKzE2ODQwIDA0NjBjY2NlZmU0ZTNiNmU0OGM2ZGYzZjViOTgxOWY5MzVhYWYwMzggbGVnYWN5LXRydW5rCisxNjg0MSBhZTIyOGE2NDI5M2UxMmRjYmMxMjQ2ZGFhMmI2YjFhODQ1Yzc4ZWFjIGxlZ2FjeS10cnVuaworMTY4NDIgMjE5Y2U5NjIyMzUyNTE0ZGJmMjI0MTczNzM5ZWQxMzE4YmE1ZjMzNSBsZWdhY3ktdHJ1bmsKKzE2ODQzIDY3YTU0NDhjOWEwZjI1YTc0MWM2ZjA1ZGYwMWZlNDBlN2RlZDZjMzMgbGVnYWN5LXRydW5rCisxNjg0NCA1YjBmM2M0MDA2MGZjMTgyMDJmYTgyZjUyYTRkNGM2NjI5MGM4MjdjIGxlZ2FjeS10cnVuaworMTY4NDUgZjVkOGU3M2Q3N2I3ZjViYmI2NThhNmU0MmRhZDc2MjAwNWU1MWFmYyBsZWdhY3ktdHJ1bmsKKzE2ODQ2IGE5NmQ3YzQ1ZDk2MWYzMzYyOTNhYWFlY2YyNTQ2ODE5ZDgyYTExZWIgbGVnYWN5LXRydW5rCisxNjg0NyBkMjZjYzViZGQyNDgyMWU2YWE2YjU0YmJlNTA2NGE0MWM4YmRkZjJhIGxlZ2FjeS10cnVuaworMTY4NDggNzdhNjE1YzkyMTdlMTk5ZTkzY2Q2NjQ3MDhlYTFmODZiY2Y0N2ZkNSBsZWdhY3ktdHJ1bmsKKzE2ODQ5IDNkZGZhMmQ2N2JlNDY3Y2MyZjQ1Y2EwYjAxZGJlN2JmMjQxYTViYmMgbGVnYWN5LXRydW5rCisxNjg1MCA5MWM2NTk5NjhhODAxOGUyNjFmZmIzZDhlMjRhNjVhZmVhMjlkZjhkIGxlZ2FjeS10cnVuaworMTY4NTEgNzliZjZiMzhiN2Q1ZWU5NjhiNjQ4OTcxOGQ5NDczMWY5ZDIwOGQxZiBsZWdhY3ktdHJ1bmsKKzE2ODUyIDMyMDQ1ZDQyM2E3ODY5ZjAwMjU3MmIxYjJmYmVhYjM0OTM3YzU5N2UgbGVnYWN5LXRydW5rCisxNjg1MyA5MWY4NDdhNzgzZDJhMDI3ZjVmNWM4MjU4ZmEwY2FmY2NmZTdlZDhhIGxlZ2FjeS10cnVuaworMTY4NTQgMTgzODUxNzJmYWMwYjcwOTliZDJkMjI2NGRmNjE0ZWQ0NDY2ZjA4MyBsZWdhY3ktdHJ1bmsKKzE2ODU1IGEyOWE4Y2Y1ZTY2ZGQzZjdmMTY3N2RlYmI1MzgyOTBmMTYzZDY1NzUgbGVnYWN5LXRydW5rCisxNjg1NiA4MzA4MDUzOWY3YjRiODQ5OTM4YWMxOGFiOWIyNmU2YTRkM2FiOGY0IGxlZ2FjeS10cnVuaworMTY4NTcgNTNhYzNlMjA2MmVmYTk2ODU1ZjkwMzYyZGQxMDRjZGYzNzk3MWQ5OCBsZWdhY3ktdHJ1bmsKKzE2ODU4IDk4ZTMyNTU0ODY3OTAyNjRjMmZkMDZkMzc3Y2I2NjI0NjRmNWYyNjQgbGVnYWN5LXRydW5rCisxNjg1OSAwMjM0NjgxMTc1MTRmNDhlZGU3MmMxNDIxMjQ1NWJkMTA0MTQ1NDZlIGxlZ2FjeS10cnVuaworMTY4NjAgYTkwNWM1YWEwNjkxY2RiOWVhYTZjNDVlYzE3MmY2Y2Q5YjhhODg2YiBsZWdhY3ktdHJ1bmsKKzE2ODYxIGM0NDQ0ZjY4ZWJmOTY3NzNmYmRhYmM5YTA4NzUwZGVhMmJlYmQ3MzYgbGVnYWN5LXRydW5rCisxNjg2MiAxZjk0YTExZDJiODBiZjQ4NzgxNGJiNjdhNjUwOGZlY2VkMWFmMzgzIGxlZ2FjeS10cnVuaworMTY4NjMgMGE4N2M1Yjc1ZmUzZDVlZjRkNjRhOWNkYjIzZjVhMWJlZmRjNjQxMCBsZWdhY3ktdHJ1bmsKKzE2ODY0IDhjZjU2MTQ3ZDdiNWRiZjlmYjQ3NjI0N2QxYTk4NTdmMTU0OTdjZjggbGVnYWN5LXRydW5rCisxNjg2NSBiOTEzMTI1NjE5YzhiYjc0MGY1MTAxNmZkMTA5ZTFmYWE1NzE2OWNiIGxlZ2FjeS10cnVuaworMTY4NjYgNmUyZGJhNDVjODNlNWRlNDEzYzg2YzRjN2JjZDc3MjU0NDk5NzhhOSBsZWdhY3ktdHJ1bmsKKzE2ODY3IGZlZTBmNDAyZWNjYjRlMDg1ODliODcxMWNiMWNiYjc3MzBmOGEyODEgbGVnYWN5LXRydW5rCisxNjg2OCAyNzViYzRmOWQ1MGQxNzU4ODMwY2U5NDYxNmNkMTg3NjVmZWU4NDc1IGxlZ2FjeS10cnVuaworMTY4NjkgODBhNDE5Mjk0MmNlOTVmMjNiNWUzY2I0NjQ5ZDI4NDgyMDE1NzIyMCBsZWdhY3ktdHJ1bmsKKzE2ODcwIGU4MzAxNjEyZTdkODBiOTM3NTcyM2U5YWE3MWYyZmM3MjY2NjYzNTggbGVnYWN5LXRydW5rCisxNjg3MSA3YTZjNTg2OWY0NTY2NjQyZDk0OWNjZGEwZWNjNjYwZmQxNmI1ZTRjIGxlZ2FjeS10cnVuaworMTY4NzIgNjM2NWE4NWJmNGZiMWNlZjM5MDNmODAzMzg1NmI0ZmMyMmI3MmMwYiBsZWdhY3ktdHJ1bmsKKzE2ODczIGNhOGRjMWJhZTY3ZDdkYzk3YTc3ZjFlMjk0YmE5NWIwOTAxMzI2ZWUgbGVnYWN5LXRydW5rCisxNjg3NCBmNjlhMzcyNDA5ZmMwZjAxMmQyNGUzZGY4NTQwYjI5YmRkZDU0YTM1IGxlZ2FjeS10cnVuaworMTY4NzUgZDAzNDhhMjZiMDkzOWViYWJjYTYzMDVhNzhkNGNhNmFlMGYxZTA1MCBsZWdhY3ktdHJ1bmsKKzE2ODc2IGRjMmRlZGNhOTNmNzBlY2IxZmY1NzFjNTYwZWEwNzRjNmU3YTA5MmQgbGVnYWN5LXRydW5rCisxNjg3NyA2NTMxZmIxYzg3OWZlOTE4ODdjZTcxMGMyMjkyYmM4OWE2ZThmMDJkIGxlZ2FjeS10cnVuaworMTY4NzggYzcyMmI0YzQyMjlhNjExNTRjOWJmYzJlZmMxY2NkZGJmNjNkYmNlMCBsZWdhY3ktdHJ1bmsKKzE2ODc5IDE3YjdmYzQ0MDE5NWJkNmEwNzM4ODk1YzY3MmMyOThlNDk0NDkwYTMgbGVnYWN5LXRydW5rCisxNjg4MCBjN2ZlNzU2OWU0ZTE3N2Q3NTZmZmQyNmY0NTQ1ZDcxYzJhZjcwYjZmIGxlZ2FjeS10cnVuaworMTY4ODEgYzUwZmVmZmFlODIyMDk0NjhlNDkzMzU1NTA4ZmIwYzJlY2QzZGJhOSBsZWdhY3ktdHJ1bmsKKzE2ODgyIDI1ZWVhODgwNDdlOWVjZmNjYWMyNzlhZTMzNjA5ZmJlYWFiODFkYzMgbGVnYWN5LXRydW5rCisxNjg4MyBkYzJkYjQ1NjJkMDYwMmQ3ZTg0Y2M0ZDlmMmRhMTQ0OTJkZjFlMjQxIGxlZ2FjeS10cnVuaworMTY4ODQgMDM0MDFhZjM2YjVjMGExMmU3OWI1Mjc2NDAzZTM4ZGM5ZTdjYTE0YSBsZWdhY3ktdHJ1bmsKKzE2ODg1IDkyMGZjMjg2ODU0Mzk2ZmQyYTEzNWNhNWFjNjM0Y2QyYTMxYjNlNzIgbGVnYWN5LXRydW5rCisxNjg4NiAyNjZkN2VhZjA2OWU4ZTcyYjAxMGU2NTE2OWVlZTFkOWVhYmNjYWU2IGxlZ2FjeS10cnVuaworMTY4ODcgMWZjZjdiNDM4Y2FiOWI0OTI4YjNiMmNhMzBhZjljYzU0MDY5MGY2YiBsZWdhY3ktdHJ1bmsKKzE2ODg4IDAwODliMzlmZTQ5Y2JjMzIzODhmMGFhYTFmN2U2MjAyYTExNWJlOTcgbGVnYWN5LXRydW5rCisxNjg4OSAzMTRlYzU5ZTRlMTRjZTJmZTU4ZmJkYzVlZTMzYzFmZmViNDZkYzNhIGxlZ2FjeS10cnVuaworMTY4OTAgNzEzZGQ3NmJlMzdiYWM3ODJhNzYyMWI3ZDUzOGRhYjgzNmJmZTU0YSBsZWdhY3ktdHJ1bmsKKzE2ODkxIGM2NGFjODNkM2YxODIyNWRlNDlhNDlhN2U5ODI4ZWE0MzE5MmFkZjUgbGVnYWN5LXRydW5rCisxNjg5MiBmODg0MzEwMWM5NDNiOGE3YjUzZTEyNDJmMWUxZWQ2ZGJlMmUzNDVlIGxlZ2FjeS10cnVuaworMTY4OTMgYjY3ODQ5MWY3ZTExNmY4NTAzZDM5MDMyZGExOTRjMjdiM2ViNjc0NCBsZWdhY3ktdHJ1bmsKKzE2ODk0IGI2NTJhOWFhOTRmMTMzNTFhMTM2Y2NjYTUxOTY3YTc4NTZkMWVjNTggbGVnYWN5LXRydW5rCisxNjg5NSA1MWMyZWVkNjAxNTkwY2Y4M2IyNWY1NzRlYWEyMjdhMTE2MThkZjhhIGxlZ2FjeS10cnVuaworMTY4OTYgNTc3OGY5M2NmMjJiNGMyMTg1N2VmNTU1NDIwNTgxMzlhZTBkYTM0MCBsZWdhY3ktdHJ1bmsKKzE2ODk3IGRlNzQyMzAzYzQ1NjkxMGQ2ZGUxYjY1YTUzYTFmYzZiMjUyM2FmMGEgbGVnYWN5LXRydW5rCisxNjg5OCBlNjc4ZTU4MDQ5YjRjNTQwZDYxM2Y1NzA5ZjE3MTllOGFmYjM1ZDljIGxlZ2FjeS10cnVuaworMTY4OTkgZjE5YmVhNjgxYjY2N2M0Mzg0ZTg0OWZkZjA1YTk3OTk4NmMzYjIxNSBsZWdhY3ktdHJ1bmsKKzE2OTAwIDAyYWJmNzcxN2M5NmUxNzlkOWMzZDRlNTEwMmQ1YTZiMDVlM2Y5OTAgbGVnYWN5LXRydW5rCisxNjkwMSAwYTYzYjQ3ODlkZmNlNGJlMjBjOWRiNWE2Y2RiNmIwNTM2MDVhZjY2IGxlZ2FjeS10cnVuaworMTY5MDIgMDYxMmExY2ZiYmY2ODk1MmE0ZWUyMTZhYTQ1YWUyMDY1YTA3NGRiZiBsZWdhY3ktdHJ1bmsKKzE2OTAzIDViZjU2MzkyNDE5NDM4MzYzZjcxYmZlMjFiZDU1MjU1ZDFjMTdiMjggbGVnYWN5LXRydW5rCisxNjkwNCBkNjM4ZjUzNWY0MDNjOGUxOGVlZThhODRjMzU3OTRjYjIyMDgwMGJlIGxlZ2FjeS10cnVuaworMTY5MDUgNTc5ZTVjNzAzNWUyZDAwMzlkMmI4OWEyMjQ1MDc5ZjI2MDdhZTRjZSBsZWdhY3ktdHJ1bmsKKzE2OTA2IDk1MzQ2MTlkYWFhMTJmNzVkNjVlMzYzYTAwNGU4OTQzZjMyN2IxN2YgbGVnYWN5LXRydW5rCisxNjkwNyBkM2Y1YjQ1M2FkZTg0ZTFkZWE2YWUyMDU3MjZmYmRmMzgwNTNlNzY5IGxlZ2FjeS10cnVuaworMTY5MDggNDY1YzdjMmU4ZjIxNDZkNzYxZmM0MDY3NjAwYzZiYWQ0NWQ0Yzg2NSBsZWdhY3ktdHJ1bmsKKzE2OTA5IGVjNmEwYjRhNjQ3OWE1NTgxNzU1MTgyZTM2YTdkYjA2NDIwYWExYmEgbGVnYWN5LXRydW5rCisxNjkxMCA2MDY3MTRmYWUxYjUwN2M5MDkxYTY4MTZiYmIxMTU4ZWUzYmZhYjgwIGxlZ2FjeS10cnVuaworMTY5MTEgODhkMTFmNDhhMzg0NWI0N2YxMThlOTI4ZjcyOGE1ZWU0NjJmNDA2MyBsZWdhY3ktdHJ1bmsKKzE2OTEyIDAzZGI3YjIzOTJhZTg4YTQwMmI4MjQwZDkyOGNlMDU5MTlkNjk2OWQgbGVnYWN5LXRydW5rCisxNjkxMyA3NDYzOGQyMGM0ZmQwZjQxNjhmNGVjZWMzNmYxMDU0MzJlZTY5MTRlIGxlZ2FjeS10cnVuaworMTY5MTQgNDRlNjY2Y2M4YzA3YmRlZWMyYmExNDViN2Q5OGNiNjYxYmRmMTNhMCBsZWdhY3ktdHJ1bmsKKzE2OTE1IDQ2ODQ4MTEzNWM0OTBiMWEzMTk0MWY1NTUwYWVlYzk5ZDllYWJiYTMgbGVnYWN5LXRydW5rCisxNjkxNiAyZGUwY2MxNzRjM2JlOTFhZTQ1NTAxOWIwYTk1ZDQyZWRkZDY1MjI3IGxlZ2FjeS10cnVuaworMTY5MTcgZTJlZDY5YjgyZDhkNzE4MTg1MjhlMjFjOWU2MGMwNGY4ZmFmYjk3NSBsZWdhY3ktdHJ1bmsKKzE2OTE4IDI5NjM2ZjAyMGQ0YzdiNGE1YjNhZjM0NGM1ZGNkNDZjYTNhOTFiNGQgbGVnYWN5LXRydW5rCisxNjkxOSBmNjU3ZGM4ZmYyNWU5M2I4NzczMDViYmNmYzQ1ZTM2MDE5MWJiMzI2IGxlZ2FjeS10cnVuaworMTY5MjAgZGE2OWI3ZDFmMjBmMGE2Y2JhNGFmMmYwMzZmMmI3ZjQ5Y2IyMDI5ZiBsZWdhY3ktdHJ1bmsKKzE2OTIxIGQ4MDliOWI3NWI5OTM5MzE5Zjc0ODVlNDZiMjYyMmViOTk1ODBkMDEgbGVnYWN5LXRydW5rCisxNjkyMiA0ZGFjOWUzMTQ5YmVhYzk5MGZmMTBlNDQ2OGExMGY5MmI5ZTY2NTFmIGxlZ2FjeS10cnVuaworMTY5MjMgZTk0MzQyZWVhNGY4OGU0MmQ1ZmQyM2E5M2QyYzNhMzExNjRkZWI4YSBsZWdhY3ktdHJ1bmsKKzE2OTI0IDE3ZDMxMjg0NzhjM2I5M2YxYjlkMjU4ODM4ZGI1NDhkMWVkODkwNDcgbGVnYWN5LXRydW5rCisxNjkyNSAzMTQ4ZWZlNTYwNmZjMTgxOGMzM2NjZTM4MTM1ZjJmNjExMjVlMDg4IGxlZ2FjeS10cnVuaworMTY5MjYgMGFiZmNhMDAzNWRjYzgzMmZhMTVjMGUyZDMyNTBjYzA4MWM4ZmFjYyBsZWdhY3ktdHJ1bmsKKzE2OTI3IDg3YjhmMGVhNTBlOGQxNTYwNjUzNDk2M2I3YmRlYzE4YmI2ZDk2MGEgbGVnYWN5LXRydW5rCisxNjkyOCAzZWEyM2UzYzFiMDZlMmE2NDllMzI2OWQyYTk5YTkyNjQxYjNjYWJlIGxlZ2FjeS10cnVuaworMTY5MjkgNGVhY2MwYzkxMjA5MGJhMGU1NmYwNjBkNjJhMWQwZTAwNTJlYjlhMCBsZWdhY3ktdHJ1bmsKKzE2OTMwIDNhM2FkZmRkYzI5ZDFmMDgyM2U2MTVhYzY3NTdiOWVjYTc2NzMyZjIgbGVnYWN5LXRydW5rCisxNjkzMSAwZjgzNDFkY2MzY2JjNmI0YWY2ODZmYjNkOTg5OTY2ZmYwYzQ1YWRkIGxlZ2FjeS10cnVuaworMTY5MzIgOTI5ODA5MjBkNWVkMTBkZTViNWZlYzcxZjcxMTEwNTE2ZTdmMWY4NCBsZWdhY3ktdHJ1bmsKKzE2OTMzIGFjODgwOTk1OWQwMTY0NDE0MGU3MjFkYzUxNDkyN2UxMTdlYjllYTAgbGVnYWN5LXRydW5rCisxNjkzNCA0NGY0YTg0YTgwYTgyNWQ4YmYwYzA4MzA5NDNkNTY0NDUxNTIzNTJlIGxlZ2FjeS10cnVuaworMTY5MzUgZjYzMzhkNzRkY2ExMDdhYmE4NmU0N2U2Y2U1YTE5ZTU4NmExZmIxOSBsZWdhY3ktdHJ1bmsKKzE2OTM2IDgwZDQ2NjhmMWUxMDM3YjUyZDQ4NmI1ZTk4ZGFmNDUzODQ4ZWYwZmEgbGVnYWN5LXRydW5rCisxNjkzNyBjMTRjYTIwZDFmYzhkOTViNTExYjIyZjBmM2IwZWRhOGUzYTlkYzgwIGNucmktMTYtc3RhcnQKKzE2OTM4IDczYzU2NGU0YTBmMzUyN2FlYmRlNjZiY2ZiNGIyNzNlNDNmYjVlNDUgbGVnYWN5LXRydW5rCisxNjkzOSBlOGFlNzBjM2FiYjQzYTE3OWNkOWQyYjE3NzE0ZmUyODdlYzg5ZjY1IGxlZ2FjeS10cnVuaworMTY5NDAgMjY4OTY3Yzk5MzRhMDU4NjQxNmMzYjQ4NmU3OWJmNTFiOTcxOTYzNSBjbnJpLTE2LXN0YXJ0CisxNjk0MSBkYzVmNjdlOGEyYWYxOTM4OTBlM2JkMDU1ZWE4ZjhmZDAxZTkxYmYzIGxlZ2FjeS10cnVuaworMTY5NDIgY2VmNGRhNDE0N2M4M2Q1ODk4OTM5MmU2ZmM3OGEwZjVjZGUxNDU3NyBsZWdhY3ktdHJ1bmsKKzE2OTQzIGZkM2Y4YWNmMTAzZDFlN2EzZjhmMDJlZWFkOTQ5NDI1MDM1NTdmYjAgbGVnYWN5LXRydW5rCisxNjk0NCA0MWViNzU1ZTRlZDE1M2Y2NThiODYzYTljZTZhYmIxM2MxNTBjMGM1IGxlZ2FjeS10cnVuaworMTY5NDUgMjY3NjhlMjFhY2Y5MGVjZjUwMmQ1ZDVjNjU0OWE0ZjY5M2JjMzZhNCBsZWdhY3ktdHJ1bmsKKzE2OTQ2IDAzOTU4M2MwOTBjNDM0MjRiOWE4NDQzMGMxZTc5NWRjZmQyZTlkZWEgbGVnYWN5LXRydW5rCisxNjk0NyAyYzJhZTg2ZGZlODc3MjU5YWIwOTFlOWM5YzNhNjM1NDE2MDNhYTZmIGxlZ2FjeS10cnVuaworMTY5NDggN2FhZDdkOWI2MTZlOWRkYmRkYmJhMDRmMmZiZWE5OTVhMjA1OWVmZiBsZWdhY3ktdHJ1bmsKKzE2OTQ5IDQ0MWRhMmM1ZGU0M2E5NTNhY2I2NWM2NTk3NjcyOGY4NmI2ODllZGMgbGVnYWN5LXRydW5rCisxNjk1MCA0NDIxMjMzNmQ3MWVhOTdlZmU3YWUyMzc0MzJmOTc0MzAzOGI0NzEyIGxlZ2FjeS10cnVuaworMTY5NTEgM2ViMTM1ZDYyZTJhZWQyYzMxZmRjMzI3Y2QzYzJiMjUwZmE4NmZmOCBsZWdhY3ktdHJ1bmsKKzE2OTUyIDc2ZTczMzg5YzM0MDcwMTIwZTY2MmYyN2ZlNTgyNGJmMWRlNTBlNzAgbGVnYWN5LXRydW5rCisxNjk1MyA5OTZjYzA2NzVkYjY3ODY5ZTk2ZTAyNmJmOTg0YmQ2YmI1YTNkMGQzIGxlZ2FjeS10cnVuaworMTY5NTQgYWFlMzdkYzk5ZjU3NTU3MDhjZDFhMDI5NmU2MmI2ZTIzYzRlYTA5MSBsZWdhY3ktdHJ1bmsKKzE2OTU1IDA3MDhjYWM1OWRlZjNhNjY4NDY4MzNiZjVkODZmNDI2NGU0MDQ0OTQgbGVnYWN5LXRydW5rCisxNjk1NiBmNmU1Y2MyYWY2ZjE5N2E0NDMwMzE1YjBmZWQzOTVmODkxNjVjOGYyIGxlZ2FjeS10cnVuaworMTY5NTcgMzExNmIwYjkxMmU5NzVjNjE4NjlkYTU5ZTQ2MDA0ZjI3MTY1MTA3NSBsZWdhY3ktdHJ1bmsKKzE2OTU4IGY3YThjNDBiMzg4MGM0MTM3MzJhMDExZTRlMDczYTZjNmIzZGUxMDEgbGVnYWN5LXRydW5rCisxNjk1OSA0Mjg3MjlmZjg4MjQ5ZmRlYjUxOTdiNmEwMDFkYTRjZmNkNTc3NTJhIGxlZ2FjeS10cnVuaworMTY5NjAgZjcwNDI0ZWJiMzliNGExZjQ4YzIyNDA1ODhkYjRmZThmMjkyYWU4NSBsZWdhY3ktdHJ1bmsKKzE2OTYxIDIyYjU5MGY4Y2Y1MzgyNDEwZTBjMzVkNDBiMDNmYjBlYTkzOTAzY2YgbGVnYWN5LXRydW5rCisxNjk2MiAzMWNkYTg3ZTlmZjRlYTQ3MzE4YTY4YzQzZjk3ZWRkMjczMWIwZjJmIGxlZ2FjeS10cnVuaworMTY5NjMgNzNlNDg4NDcxMjYzMDhiMjBjNzg5OWY5MjFkYTlhYjA1Mjg2YmUzYiBsZWdhY3ktdHJ1bmsKKzE2OTY0IGY1Zjg3ODRhNGMyN2M4YTUxMGFlM2RkZWZiMjNmNzQ0NzRmZTVhODkgbGVnYWN5LXRydW5rCisxNjk2NSAyMWVjNjlhNTYyMjg4NjNkODlmODdjNmQ0OTdhZDIxNjg5NmE5NWVhIGxlZ2FjeS10cnVuaworMTY5NjYgYjhlNWU5MzM4MDFlMzZhZmJkMzVjNjhjODZmYjAzZTY4NzBhNmZkNiBsZWdhY3ktdHJ1bmsKKzE2OTY3IDhkY2RkY2YxMzMwYTc3ZDU4MmUwYjg4OWZhNTEyMDIzZjQ4NzI5MmUgbGVnYWN5LXRydW5rCisxNjk2OCAzMDJkZmQ1M2IzYzhmYzIyNThhZDg4YjIxNzUyMGFkMzVhOWM2MTc4IGxlZ2FjeS10cnVuaworMTY5NjkgNzJkOGEzYjIwM2IxNGY2YjFkYjZmNDM0Mjk5MDJhNDVlNTRlNzczMCBsZWdhY3ktdHJ1bmsKKzE2OTcwIDNkYTViZjNjNWYxNTc0ODY0ZTE4NDNjMjQxYWU4MTg2YjdlZGFmMWEgbGVnYWN5LXRydW5rCisxNjk3MSA0MDQ0N2I2NzIwNjRiNDIwNDk4ZTk2YTcwM2E1NGIyMzA5ZTBiNTEyIGxlZ2FjeS10cnVuaworMTY5NzIgZWMzZTBmZTE3YjNkNzdhOTljMzk4N2M1NTlmNjRkNDMyMjJkN2VjMCBsZWdhY3ktdHJ1bmsKKzE2OTczIGRhZDU0ZDQ0ZDllY2MyNzM0NDY0NzFiZTEzOGZiOTY3MzhmZTk0M2EgbGVnYWN5LXRydW5rCisxNjk3NCAwNTFkY2Q3Y2QxOTkxZGU5ZTE2ZWQwMzBhYWU2YjFmMDRiYzBlNjExIGxlZ2FjeS10cnVuaworMTY5NzUgZTdjOGI1OThmZjc1ZmEyMzk1MzY2ZmQ1ZjIxZDgwYzc0MTI0ODVmMyBsZWdhY3ktdHJ1bmsKKzE2OTc2IGMxMmU3OTZiYzRiNjc1YjA4NDkwOTUwNjZiMWUwZjYwNGI3ZWRhNmQgbGVnYWN5LXRydW5rCisxNjk3NyA2YmYwNjFhMmZjNzgwMmY3NmFlYzYzYjZlZmQzZjg2YjY3NWY3MDYxIGxlZ2FjeS10cnVuaworMTY5NzggNTQ2OGI2ZTNiOTZhN2QxN2Y1OWIwNTUxZjQ3NTE0ZDA4MThkYjY1NSBsZWdhY3ktdHJ1bmsKKzE2OTc5IDUyZmQ0OTZkMzUzMjA5YzUzZjdhN2FjMDJmYzA2NDc1MzE1N2I4ZDggbGVnYWN5LXRydW5rCisxNjk4MCAyN2Q3ZDg5Yzc3NGIxMDAwM2E4ZTgzMzMwYmM2M2Y2NDQ0ZmYwNjI0IGxlZ2FjeS10cnVuaworMTY5ODEgMWI5ZmQwY2JkOTE0OTQ3Y2M0MjFiYTdlNDVhYTA5M2Q3YmE5YWYwMCBsZWdhY3ktdHJ1bmsKKzE2OTgyIGRiYTRhZWM5NzBlNmNkYjUwZDE3NjUxMmMxYjdmMGJjNjBhYjUyMTYgbGVnYWN5LXRydW5rCisxNjk4MyAwMTg0NjU2OGQxNDdkMTY3MDdlZDk1OTJkODY5YjkwNmNmMWFkZDBmIGxlZ2FjeS10cnVuaworMTY5ODQgZTljMmY4MzBmOWJhNTJiZjU5NjhjYzdjZDI2OGQyY2U3MTc1YTJkZSBsZWdhY3ktdHJ1bmsKKzE2OTg1IDUxYTMzYTNiMmJhOTM1NDU3ZmQ1ZmM4NmNhNzlkZWExNGYwYzdhNzEgbGVnYWN5LXRydW5rCisxNjk4NiA5MWRlYWRmZGFlMzZiYWFlNmEyYWQ3Y2NlMmY5ZjY0MTdjMjIzN2EwIGxlZ2FjeS10cnVuaworMTY5ODcgYjhlYWRlZWQ4ZWQzNTE4MDM2NjRhNmI4NzhmMzk5MWZmNzNhZjM5MCBsZWdhY3ktdHJ1bmsKKzE2OTg4IDAxOTI2NWIzYTg1NjU5YzQyNjlhOWNhZDdmNTM4ODAwY2RmZjZhZjMgbGVnYWN5LXRydW5rCisxNjk4OSBjNTYzNzJhZDkzNDM1ZjFmY2M1Y2RjNTBlYjU5OTBlMTEzNTBhMTViIGxlZ2FjeS10cnVuaworMTY5OTAgMmI2YTYzNzU5Yjk3Y2Y5N2YzZTdhMTg0NWQ1N2YxZmZkNGJjNjhhYyBsZWdhY3ktdHJ1bmsKKzE2OTkxIGY2NmU4NjNhMmE1YjFlNDI3ZDZmYzE3MDUyM2JlYzI0MmNlMmM2OTYgbGVnYWN5LXRydW5rCisxNjk5MiAzNWI3OTg5YmEyMGM4YTE1M2E0N2MwMTQ4YmM2MjRmYzFkMmVmYjA3IGxlZ2FjeS10cnVuaworMTY5OTMgOGQxYTA1OWFlOTlkNDRlMjI2YTNlMjUzMDhiOWNhNGVmODkwMGU3ZiBsZWdhY3ktdHJ1bmsKKzE2OTk0IGFjYzcyODU4ZWI3MmM4MzYwMTY5ZmRiMWM4YTE2OWExMzE2OWI3OTIgbGVnYWN5LXRydW5rCisxNjk5NSBhYmJjMDI3OTVjNGRlZmVjYTI5ZThjNjg1OGExNWVmZmUxODIwY2ExIGxlZ2FjeS10cnVuaworMTY5OTYgZGZmMjJkNGE0OGRhZTM2ZmIwYThhNGRiMjc4MGZmOWJkYjNlNmFjNiBsZWdhY3ktdHJ1bmsKKzE2OTk3IDU3NzJjNDk4M2RkODdkMzgyMDI5MDg3ZGJjNmFhYzQ3N2ExZTJjYWQgbGVnYWN5LXRydW5rCisxNjk5OCBlYTcwNDBhYjcyODZmMjJhY2IxMjYwMWI4NThiMjA4MmY3Y2NlZDM0IGxlZ2FjeS10cnVuaworMTY5OTkgODlmODE1M2ZkMWJhMTYxZjgyM2YxOTYxZTNmNGE4NDFiODU2MjJhZSBsZWdhY3ktdHJ1bmsKKzE3MDAwIGM4NWE4MGRiNjg0NWIwNjJmNTc5OTRiYjVlYWEwY2JjOTBmODcyNDYgbGVnYWN5LXRydW5rCisxNzAwMSAyMzg1ZWE1ODcyZTE5M2JlNTRiYjdhMGRmYThiNTMyNjIxYTEzZjY3IGxlZ2FjeS10cnVuaworMTcwMDIgMjg2M2ZiYjEzNWYxZjljYzZjOTdmZjQ1MTBlNGQ0ZGU2YjY5ZWU4ZSBsZWdhY3ktdHJ1bmsKKzE3MDAzIDkzMDEzZTRiYmUwMmUyNGIwMmNhMDM3NzE1YjM2NDU4MDUxYjY0ZGEgbGVnYWN5LXRydW5rCisxNzAwNCBlOTIxMjI4YWY0MzU2N2VmYzkwMTIzNTg3ZTAxNmU5MTQ1ZjBlYjVmIGxlZ2FjeS10cnVuaworMTcwMDUgNTgxNDYwZmNmMTQyNTYwMGU1MWE5YTQxMjc3OGRhNmIwMGNmNWE1NSBsZWdhY3ktdHJ1bmsKKzE3MDA2IDYyMjMzOTdiZDZhMjY2MTg0MzM2MjIwOWZhNjdlM2I4MTlmZTNlZGMgbGVnYWN5LXRydW5rCisxNzAwNyAyNzdmZGQ5NjQ3ZmUwOGIxYTdhYTI3YjgwYWY1ZWIxNjIzYjQ0NGUyIGxlZ2FjeS10cnVuaworMTcwMDggNGU2NmEzYWI3NTdkYTMyZjY2ODFkZWNlYmVkZjBkMDA1YzM4OWZiZiBsZWdhY3ktdHJ1bmsKKzE3MDA5IGJkM2QxNDExYjY2YzFkNDA1ZDYzNjJkNTQ5YjlmNDgxNzRmYmI4YTUgbGVnYWN5LXRydW5rCisxNzAxMCA5YmYxNTlmZjQ5MTI5MjNlZDJkNDUyMDlhMzFlYTU3YTIxMjcwMDJmIGxlZ2FjeS10cnVuaworMTcwMTEgMjExOTc2MDM0Y2Y3ZWUzOTBjMzBmNzk3NjY3NjE2ZWRkNGE3Yzg1NyBsZWdhY3ktdHJ1bmsKKzE3MDEyIDlkOGNlNmVkNGEyOWFiNDIwMDM1ODAxOWI3MmUxYjY5ODI2NjVjNzggbGVnYWN5LXRydW5rCisxNzAxMyA5OTk2NzFmNjlkZjRkMDVmZjc0ZmYxOTEzNTA5YWZiNWIwYjFmNTg1IGxlZ2FjeS10cnVuaworMTcwMTQgNDEyMzRhZTk1ZDJhMDdlNWRiMDM0MTFhZTQ1MmNmMTBlYWQ5NWZmMiBsZWdhY3ktdHJ1bmsKKzE3MDE1IDI3ODdlOTM4MTdjNmEwYTE4ZGZiZTlhMGYzM2U1NjVmYWVjMTQyMjEgbGVnYWN5LXRydW5rCisxNzAxNiAzNGU3ZGU0YWRhNzBhZjNjYmI2MDc2YTNkZGY1ODJiNzRmOTE1MGU3IGxlZ2FjeS10cnVuaworMTcwMTcgOTAwYTE3NzU0MDIxM2NiZmRhNTRmM2IwMWMzZmE0M2VkOGQ3Nzk2YSBsZWdhY3ktdHJ1bmsKKzE3MDE4IGVjNmEyMWY1NWZhMWNlN2Q3NDVhMmRjOTZhZGQwMDE4NDhhODg3ZjMgbGVnYWN5LXRydW5rCisxNzAxOSBkMjIzNjIwYTgxMTI2ODljOGIxZmM4NDYyYjhmZTNlN2E4YjI1NzExIGxlZ2FjeS10cnVuaworMTcwMjAgMWIwZGFiZmZjNTFjZjA5MDA0MGVhYTk3YTM4ZWUxNmRiOTJlN2UzYiBsZWdhY3ktdHJ1bmsKKzE3MDIxIDFjMzQ0NTM3ODg3OWJhMjZiNDgxYjBjMmQ5NWRhY2FmNjA2NTYwZmUgbGVnYWN5LXRydW5rCisxNzAyMiA2ODE2ZGIyNjUwY2FiZjliMDFkY2UwNWZjYWFlNjg5ODg2ZGNlYzdjIGxlZ2FjeS10cnVuaworMTcwMjMgM2FlMTg1YjhmZjAzMWIxNDhlNTY0YzgyN2E0NTM2YjQyMmViNjA3NyBsZWdhY3ktdHJ1bmsKKzE3MDI0IDRlOTA3YTUxYTdhZmZjMWYzY2MyZGI5ODRiYWRlZjlkYzQ1YzFhNGYgbGVnYWN5LXRydW5rCisxNzAyNSA4YzdkY2QxZWQwOGE1N2Y2M2E3ODFlYjk2OGNhMTE5NzUzYzliYzNjIHVuaXZlcnNhbC0zMworMTcwMjYgYzE2ZjJkYzljMDg5ZTg2YTVjY2MwMDFiYTRiN2ExZjQ5NjM1ODY1OCBsZWdhY3ktdHJ1bmsKKzE3MDI3IDk0ZDcxZjJmYzlhODNjZGRjNzAzNWE4OWZlNTIxZmFiN2IzM2FiNmUgbGVnYWN5LXRydW5rCisxNzAyOCAwYzBlZTg4NmZiMDNiNzkwNTdmMDBiYjUxNzIzNzRhMGU3ODZiOTZmIGxlZ2FjeS10cnVuaworMTcwMzEgMTkxMjZlNTU3Y2U4NDFmNzQ1MzYwYzA2NmJjYWI1OWM4ZTM2MTIwNCBsZWdhY3ktdHJ1bmsKKzE3MDMyIGE4NTZjOTJiMWQ3YmYxYTNkZWMwZTMwMWFmY2UzYWU1YzQ1MTc3NzEgbGVnYWN5LXRydW5rCisxNzAzMyA1ODkxMTJjNDgyNzM0MTAwOGFjOGE5MTJjZTJhOWZjZGE1OGYyZWQ1IGxlZ2FjeS10cnVuaworMTcwMzQgNjNlYTJhMmRmMDZmM2QxOGFlNWQ0YjJlYzZlYzJjYzVlMjE4MGQ3NCBsZWdhY3ktdHJ1bmsKKzE3MDM1IGI1ZmIxNzVhZDUyODI1NDFjNmMyM2Q3MDQyZWE5ODk3ZGU2NTM3ZWQgbGVnYWN5LXRydW5rCisxNzAzNiAwNzk3ZmRiMjVhNzc5ZTE3YThiY2RlZjM0MzhjZWIxNjBlOWQxNmJmIGxlZ2FjeS10cnVuaworMTcwMzcgZDMzMTc5Y2RjNTExMjFkM2I5Mjk1NDhkYTgxZWVjOGFiOTc1MzNmOSBsZWdhY3ktdHJ1bmsKKzE3MDM4IGFlMWVkYzZmZjU0MzVmYWRmOGM2M2ZkNzc0Mzc2ZjdkOWZmNWEzNGQgbGVnYWN5LXRydW5rCisxNzAzOSBlNzlkM2NmNDQ0M2VkOWQ3ZmQ3MWY1Zjk0Y2JhZWNkOTExMjNlOGMzIGxlZ2FjeS10cnVuaworMTcwNDAgMmMzMjgzMDk0MzExNjc5NzNlYjU5M2VjYzJhNmVjM2I4NTM0ZDEyYyBsZWdhY3ktdHJ1bmsKKzE3MDQxIDMwM2MzNmU0ODc2OWY5Mzk1MjdjMmQyOGE0MTBlMDY3NjU4MjhkNDggbGVnYWN5LXRydW5rCisxNzA0MiBlNzVlYjRkOGUzMjliNDdhYjM5YTBjYThiNTQzYmVlNTkzMGQ1OGM1IGxlZ2FjeS10cnVuaworMTcwNDMgZDk3NGNmNTQ1Y2E2YWRiM2MyMjMzNWVlNDUxODlkYzFjYTE2OTIxNCBjbnJpLTE2LXN0YXJ0CisxNzA0NCA4YzUyNjkzMzk3ZDI0YTExZGRjYTI4OGE4Y2MwYzVlMjQ2NzAzNGM4IGxlZ2FjeS10cnVuaworMTcwNDUgYzM5NzMzYmUwZGM4MTFhYThiMTEwOWVmOWNjZDliNWM0MThmMWJjMiBsZWdhY3ktdHJ1bmsKKzE3MDQ2IGE0ZjUzMjhjY2YxOTIyN2JmZGYwZTVlNjM4OGM1NTA4M2EwOWNlNGEgbGVnYWN5LXRydW5rCisxNzA0NyBjYmU5NTkwZDIzNDRjNGI4MjZjY2M5YmFhZmI2NWM2MGVlNWJjOTE4IGxlZ2FjeS10cnVuaworMTcwNDggMTFhMjZlOTYzZGM5MDhmNmQ0MDBhZWQwY2NiMzAwOWQ0MTU1MWZhZSBsZWdhY3ktdHJ1bmsKKzE3MDQ5IDlmOWYzMjgwZGM2OGEwMTc4YjY0YzQzMDljODI4ZWY0MGEyOWRlODggbGVnYWN5LXRydW5rCisxNzA1MCAyMDM3N2YxNWI5NmE3Y2JmMWYxOGMxMGU2YmQ0ZjUyNDcyZjBjNDBiIGxlZ2FjeS10cnVuaworMTcwNTEgYWIwZWJmMTJkNGRlMjIyYzA3NDUxYWY5N2JlZWY4ZDIzZmE3NGZlYyBsZWdhY3ktdHJ1bmsKKzE3MDUyIDMxOTI1YWI0NmIyMzU0MmExYzM0N2UzZmMzMTViMjZhZDI3NTQwZTcgbGVnYWN5LXRydW5rCisxNzA1MyAzOTZiNGFiM2I5YzJhOWNiZGNiMjVkN2FlZmE0NzExYzUzMGU0OGMzIGxlZ2FjeS10cnVuaworMTcwNTQgMWYxYTE1NmVkNWFmOGY3YTUwY2UwNWZjODVmODU0MjNhMjRmMmFhNCBsZWdhY3ktdHJ1bmsKKzE3MDU1IGI5N2U2MjAyZjBiMTk2OGJkOTg5MDMxZjJhMTE4NTkwMjNiNmUyOTQgbGVnYWN5LXRydW5rCisxNzA1NiAzZTVkNmUyMDkzZGZlMWM1YmQ5NjU5YjYxYWRiOWI1ZjlkOGNjMThhIGxlZ2FjeS10cnVuaworMTcwNTcgNjNkODU4OTdjNjlmYTRkNTdjMTcxZTNiODlhZDM1MGE3YjM0ZTY3ZSBsZWdhY3ktdHJ1bmsKKzE3MDU4IDU4ZDc5OTVjZTc5NWY3OWZlYjAyY2ZkOWVjYmY4Y2ZlMDE3YmU3OWEgbGVnYWN5LXRydW5rCisxNzA1OSBkOTY0M2U5YzkwZWIxYTVjYzlkMDFlNzg4MjNlYTFjZDMxOTA3MDQ0IGxlZ2FjeS10cnVuaworMTcwNjAgNzRmN2YyMzdmNzM5ZDhkNmM5MWU0NTM3MTY0M2M3NGYzNGM4YWJlNiBsZWdhY3ktdHJ1bmsKKzE3MDYxIDBlNjZiNzc0MDk0YmZlNTUxNDU0Y2U3YjJjOWIxZDUyNTZiYjRlNjkgbGVnYWN5LXRydW5rCisxNzA2MiAzNDgzYTc4ZDEzNWZkNDYyNDFiYzZmM2E2OGU3Y2RmNThkMDQ1NGQyIGxlZ2FjeS10cnVuaworMTcwNjMgM2ZjYWMzNWM3ZjVlMjFmZmVlMTdiMjViNWNjMjI3YzU3OTMzNDRiMSBsZWdhY3ktdHJ1bmsKKzE3MDY0IDA2NzBjNGY5MDE3MTBmMmQwOWMyMjk0N2Y0MTZkNWJmNDc2MzVjMGQgbGVnYWN5LXRydW5rCisxNzA2NSBiMmE4MjkyYzM5YTlhMmRmM2ZlOTkxOTIwMWZhYWE3MzU1MTZkMjE2IGxlZ2FjeS10cnVuaworMTcwNjYgN2IzMmNjZGYxZDRhMjAyNGZjZjM4ZmNiM2ZmMTZkNmE3MzM2NjcwZSBsZWdhY3ktdHJ1bmsKKzE3MDY3IDU5OTRiYjYxOTE2MzMyYzVmZGU5MTRjNTJmNjgyMjkwYWZjMjQyYTkgbGVnYWN5LXRydW5rCisxNzA2OCA5Y2QyZjc5MGM1MGMzODI4NjRlYTM2YWNkMjdlNmQ3YjBkMDU4ZjVhIGxlZ2FjeS10cnVuaworMTcwNjkgYTE0MmVhMjBmZTk0ZjE4NDZmNDVjODlhMjk4MzRmNjlmN2U3YmQ4MyBsZWdhY3ktdHJ1bmsKKzE3MDcwIDQzODg3MWU3MDUzMmIxN2JlMjcwY2I4ZDVkODJmMjYxNjdkMTFkNGYgY25yaS0xNi1zdGFydAorMTcwNzEgYTFiMmZiMTdiZGU3ZWQ3YWI3Y2FmM2YwNmFlMTA5YWY2ODYzMzdhNCBsZWdhY3ktdHJ1bmsKKzE3MDcyIDRlMzY0MGEwNjg1NzIwNmJmMTY2ZWZmNWFiZjY3OGY3M2RiNWRlYzIgbGVnYWN5LXRydW5rCisxNzA3MyA0YWZiMDg4OWExNjVjMTk3NWI0YTEwNjEzMmI4YzJlN2U5ODlhNDc2IGxlZ2FjeS10cnVuaworMTcwNzQgNThmM2Y5MzYyNzlmZjY4MmM2MDVjODFiNTIzZDI0YTk3N2FmZTViNSBsZWdhY3ktdHJ1bmsKKzE3MDc1IGE5OWZhYjBiYTJkZjg4YzlhOGMxNjYwNzAzYjJlNzZjYzVjNGU3YTIgbGVnYWN5LXRydW5rCisxNzA3NiA3NDU5MTU5YmEyNDlmNDZmZjFkNDMwNWY1YmIxOGJjZTJmYTUxYzQ2IGxlZ2FjeS10cnVuaworMTcwNzcgODMwZGU2OGRlMzMwOTVhYjczZThlMTQ4ZDkwY2Q4MTgwZWM4OTc1ZCBsZWdhY3ktdHJ1bmsKKzE3MDc4IGNkZDk1ZDY3YTcxNDI1ODI5ZGU4Yjg1OTA4NTNiZTg3NzBkOTA3M2YgbGVnYWN5LXRydW5rCisxNzA3OSAxZmMzM2RmY2VjNDQyY2NmZjhlM2NmOTQxODAwZTJmMTZjNzVmZDE3IGxlZ2FjeS10cnVuaworMTcwODAgNWZmZjRmZmViMzVkNWM1YWYxZjdjM2ZkMmJiODRjYmRiMDRkOGYzYyBsZWdhY3ktdHJ1bmsKKzE3MDgxIDYzOTY1MjlhNDIxYzllYTQzMTMyNjVhMDIxMzU1NmJiNWVlZjdiODUgbGVnYWN5LXRydW5rCisxNzA4MiBhZTI3NTY0NDQ1N2I1NTRhY2U0NmJlYWY3YjhjOGNmYWRhYjE3ZWI5IGxlZ2FjeS10cnVuaworMTcwODMgZDg3Y2UyZDJlNDI1NzMxNjU2ODQwZTUxMTA3ODA4ZDE0ZTEzMDhmZSBsZWdhY3ktdHJ1bmsKKzE3MDg0IGFkZjNhMjg0YTJjZjFkNjZlNmFiMDE0MmFlNWJjMTdiM2NjMWZlYTkgbGVnYWN5LXRydW5rCisxNzA4NSA5YjIwYTY5YTUwNWUwZTZmMjg4N2I4NjY3MjI2OTMwYzljZTA5M2RhIGxlZ2FjeS10cnVuaworMTcwODYgMzYzODUxY2NjZjJhZWQyMmE3NWY2YWI2YzY3OWI1MGVlMjYyOTQyNyBsZWdhY3ktdHJ1bmsKKzE3MDg3IDY2MGRiY2MxOGI5ZWM2ZTk2ZmNlMWEwNDg4MzE1NGIzZDQ0YmQ0NWUgbGVnYWN5LXRydW5rCisxNzA4OCAxZjc2ZmM5OGI0YzhkZjAwN2IwODg2NTYwYTZlYjM5NzE0NWMxNWJkIGxlZ2FjeS10cnVuaworMTcwODkgZDNmOTJmM2ZjMGIwOTAyNmQ5M2FlYTVmYWY5ODk1YWZjOWMyOWQzYiBsZWdhY3ktdHJ1bmsKKzE3MDkwIDk4NjA4NDI5Y2E2ZTQyOTI0MzBkMjJhM2M4NGRhNGYyY2U2MjI0NGMgbGVnYWN5LXRydW5rCisxNzA5MSBjZDhiODE1Y2IxOTY1N2EwY2Y1MjFhZjBlYjVkZDRiMmNkN2Y3ZTc5IGxlZ2FjeS10cnVuaworMTcwOTIgOTBjYTZhYjI2OTA5ZWMzNDFlMDUxZGIyNGVmZjAzYmVlNzI1YWI3OCBsZWdhY3ktdHJ1bmsKKzE3MDkzIGRjOWQ5ZWM0NDY3OTM5NWEwZjljNmFmNWIxNzM4YWZhNGJlN2UyMDcgbGVnYWN5LXRydW5rCisxNzA5NCAxNWI2ZmMyNWY2MDUwOTZmOTM2NmM3MzcxMjk3OGMxODBiZmFlYjM3IGxlZ2FjeS10cnVuaworMTcwOTUgMjE1NTdiYTRhZmJjZWRiY2ZkZDQ3NmQwOWY5MTdkZTdhYTVhYTA1NyBsZWdhY3ktdHJ1bmsKKzE3MDk2IGJiZmM0OWE4NDM4OTY0MmU5OTBhOGJiYWQ4YzdjYzk2MDQ5MjIwMTAgbGVnYWN5LXRydW5rCisxNzA5NyAxOGRhMmJjNTA1OGMwZmRmOGI3OGY2NDFkN2NjMzYxNGUzNGYxODk3IGxlZ2FjeS10cnVuaworMTcwOTggYmQ5NTBjNTAxNjdmYTFkODFjMTQ0ZjgyZTcxZWM4YWRjYWQzZjJkMyBsZWdhY3ktdHJ1bmsKKzE3MDk5IGYzYThmNjAzNjU2NzA5OTUzYTRlNWQ0YTJmNDQ1MDE3NGVmMDU3YTAgbGVnYWN5LXRydW5rCisxNzEwMCA5ODRhYmQyMGVlYzI2MGQyNWI0MmU0NzNkOWU1NTdmNThjNTA3ZWE5IGxlZ2FjeS10cnVuaworMTcxMDEgZmI4ZmI1M2EyZWZmMDEzYzU2ZmMxYTllZDFiYTcwYmJhZWZlYjQ5ZSBsZWdhY3ktdHJ1bmsKKzE3MTAyIGIxYTBmZDNkZjFmYzhkNjEwN2NjZDlkZmZiMTQ4NmMzMjFjM2RkYTAgbGVnYWN5LXRydW5rCisxNzEwMyA2OGI2MWFhMWFhNGFhMDk0MDRiOWNiMGY2NDQ3OTg4ZDc1ZGJkYTRlIGxlZ2FjeS10cnVuaworMTcxMDQgOGNmNjYzMTI2NzIzYWRhZmU2NGYzZGU0ZTgxZTA5Y2E4MWQ4ODM1NCBsZWdhY3ktdHJ1bmsKKzE3MTA1IDRkNTY1MDk1YWU5OTMzMDE3MjcyZjk3ODAxMTdlOGM4OTZlNTYzOGEgbGVnYWN5LXRydW5rCisxNzEwNiBkZjg5MjM4YWM3NDc3MTkxODc1OGRlZDQ5YTk1NzM0ODc5ODE4MDllIGxlZ2FjeS10cnVuaworMTcxMDcgZTI1YWE1NmE1MjA3ZGY4YTkwYTU3MWQ2M2JiMTBhZWExYWFmY2I1YiBsZWdhY3ktdHJ1bmsKKzE3MTA4IGQzNTdhZDM2N2YyNjBmYmI5Y2IyYjM3MGYyNDE1ZjY2NzY4ZTZkYWIgbGVnYWN5LXRydW5rCisxNzEwOSBlYTk1ZWVlZTA0ZTcyNDkzNDhlNWRhZjdlM2NiZThjMTg2MDVlMGExIGxlZ2FjeS10cnVuaworMTcxMTAgNmFiNThjNTVlMGEzYzA2ODQwNjUwNzBhN2ZmNGZlYjc2NjU1NDQ4YiBsZWdhY3ktdHJ1bmsKKzE3MTExIDc3ZTI0NDNhYmY5YmRlMzI1MTg5ZmNjY2Y2ZWJmMGY1YTBhOTM1ZDcgbGVnYWN5LXRydW5rCisxNzExMiAyZTJmYmVlNTNlNjlmZTZjY2U2ZjA2YmU3N2FhNmZmZTkxYTk4MzM0IGxlZ2FjeS10cnVuaworMTcxMTMgNTljMTkwNTJhZTRmYjAyMWU4MDM3ZTRkMDI4YTgxZjJkZDIwZTY2YiBsZWdhY3ktdHJ1bmsKKzE3MTE0IGJmZTMwNGZjMDZhYjkxMjI0NDQ4NTc2ZDkzYjVmMzQyNDkxMTZkMTAgbGVnYWN5LXRydW5rCisxNzExNSAxMWE4OTNjYmMxYTAxMmE3ZGY4ODU5NGVkYjQyNDcyMWFlMTk1ZDFhIGxlZ2FjeS10cnVuaworMTcxMTYgMjZkYzYyZGU5YjZlMTVhYTU4OWNlNTk3OWZjMTVlYThhNjc4MTY4YiBsZWdhY3ktdHJ1bmsKKzE3MTE3IDA1MzYyN2U3YWMxNDFlNDhlM2MyNWIyNjNhZjY5ODQ2ZDFmYjU5NTEgbGVnYWN5LXRydW5rCisxNzExOCBlNTI1M2I2OTJlOWZiZTM2NWFiNDM2OWNkNzU5YjI0YjhiODZkNjA5IGxlZ2FjeS10cnVuaworMTcxMTkgODE3MmFjOWQyMTk2NmNmYmE1MDlmYmNkZTIxNWVmMjZlY2FkNGJhMiBsZWdhY3ktdHJ1bmsKKzE3MTIwIGVkYTQ0OWY1NGU0NDllZjIyZTczY2FhZDUzY2UzODBhZmZlMzEwNGMgbGVnYWN5LXRydW5rCisxNzEyMSAxMjA1YjE4MGJhOTAzYzZhYTA0ZDdlZGYzYTM0ZTIwMjY1NDY1M2YwIGxlZ2FjeS10cnVuaworMTcxMjIgYmVjYjFlZjBhNTczNTM5MDc2YTY5YjcxYjI3NDdiM2I0ZmYxZjNiYiBsZWdhY3ktdHJ1bmsKKzE3MTIzIDUxNjdlZDY4MzZmYzRhMWFhMjAxYzYxYzAxYzRhNTIzMjNhM2I0MTggbGVnYWN5LXRydW5rCisxNzEyNCAwMTNjZTdlZTcxNjdjMzlmZjM5ZTQ1YTc4OGZmMTcyMmU1YWE1NTE5IGxlZ2FjeS10cnVuaworMTcxMjUgMzE2NDFlYTg5YTUzNGQ3MDZjMWIwODM0ODcxNTdiNTMxOWU0Nzg4MSBsZWdhY3ktdHJ1bmsKKzE3MTI2IGY4YjIwZDkwYzlhZjI1NDA4MDYwZTZjZmU5NmVmODY4OTUxODI0MmQgbGVnYWN5LXRydW5rCisxNzEyNyAwMTk4ZDIwMjAzOTAzNjgzMTQ1NWFmYzlhZDU1ZGE3N2VlYjk3NDVhIGxlZ2FjeS10cnVuaworMTcxMjggZTM3NzllZTk0MmQwYTAwNWViMzI2YWU5YjYxNjYwOTA0ZGI3NmU3MCBsZWdhY3ktdHJ1bmsKKzE3MTI5IDYyZWMwYmZkOTNmODA4YzY3YTNiMjhmNmU0MDdjYTBjZGJmYmVlY2YgbGVnYWN5LXRydW5rCisxNzEzMCBiMjRkYjc3MGRmZmRkYTljMDhkZmNhZGY5YjRlNThiYjIxOWU1OTRmIGxlZ2FjeS10cnVuaworMTcxMzEgYjhiM2Y3NmZmZDUxZDEyNDFhNjgyZjgyZWQ3MmQwMWY4NTI3N2M5MiBsZWdhY3ktdHJ1bmsKKzE3MTMyIDdkNDBiZDA3YjEyOTY2MzViYTgwZWM2YWI4ZmZkN2U3YTNkMmEzZDggbGVnYWN5LXRydW5rCisxNzEzMyAyZGI4MDdmMzQ1YmNjMDc3NTQ2OTFhYzgxNzc3MDZmY2E3OGE4Njk1IGxlZ2FjeS10cnVuaworMTcxMzQgOTc2NTFmMjhiMDA0YzViNmZiZWJkY2NmNWNiMjE1MDY0MjI5MTU1NyBsZWdhY3ktdHJ1bmsKKzE3MTM1IDRiOThkZmRlZDQ5ZjQwYjA5YTYxNDMwZmRlMzE5YzBjYTE1NDk5MjUgbGVnYWN5LXRydW5rCisxNzEzNiBjMGZlMWE4Yjg3MmMwNDA3MzJhOTUzMTU2ZWZiMTFiYWVjMTllNzBiIGxlZ2FjeS10cnVuaworMTcxMzcgNGQ0OTFhZWI5ODBmZDFkMzNhNzZjZTY1MTE0OTM0YWYzNGMyNGI4MCBsZWdhY3ktdHJ1bmsKKzE3MTM4IDRkZmJkOWIzNDEyYmFhZTM2MzYzYzdmMzFhOGY5YjhjYTEwMGVjZTggbGVnYWN5LXRydW5rCisxNzEzOSA1MTExMjNkZDg0MjQzZDM0MmRjMDZmNmY3YWNkYTFlYjg3Zjg4NjZjIGxlZ2FjeS10cnVuaworMTcxNDAgMmRjZmFkM2IyMTE1ZGViNjU3NmFmZDk0MDhjNzY4YTc5NWI5MjcxOSBsZWdhY3ktdHJ1bmsKKzE3MTQxIDMzYzdkZjBjNTQ5ZDcyZmUzZGFmM2Y1NWZhYmRlNjllMTQ4ODMyZTEgbGVnYWN5LXRydW5rCisxNzE0MiBkZGFlZjQ1NTk1ZTJkNzYyYmUzYTAyZmQ4NDc3ZDIxNzQwY2UwZGRkIGxlZ2FjeS10cnVuaworMTcxNDMgMWZhYjkyODM2NzU4ZjgwNDNiY2NhNjUzYjQxYzlmZWUzMjNjYWQyYiBsZWdhY3ktdHJ1bmsKKzE3MTQ0IGFkYTRlYzRjZmZkNTAxZGJjZGE4OGMwOWYwNDI4OWE1ZDRmYjBhY2QgbGVnYWN5LXRydW5rCisxNzE0NSA1OGYxMDBhY2MzYWMwZWZhMmE1OGZhZGUzZjNjMDE3NWY2NzJjOWMzIGxlZ2FjeS10cnVuaworMTcxNDYgNDYwZmYzY2YzMTk1YmUyZGMxZWQ2NDhjNGFhZThiMzI4ZjZlNDI4YyBsZWdhY3ktdHJ1bmsKKzE3MTQ3IDU4ODQyY2JhOGRiY2QyMzFmNTM0ZDI4ZDU2NmVhZjU5NDhiZmYwNDEgbGVnYWN5LXRydW5rCisxNzE0OSAyMmIyZWJkNzgzNzJmMjU1M2ZlZTg4MDcxOTJmMmQ5MDQ4YjllMTliIGxlZ2FjeS10cnVuaworMTcxNTAgMTRhMmI4ZDRmY2ZmMDhiYmYzZDBlNzZmMGRmZGJjYTgzNjBjMDRlZSBsZWdhY3ktdHJ1bmsKKzE3MTUxIDczZjM5ZWE0ZWZiN2E3NGY2OTEzOTk2MmUwZTMyMDU0NzE0ZGFjY2MgbGVnYWN5LXRydW5rCisxNzE1MiA4ZjJlNjEzNGNlYTAwYTUwNmE5NWNlZjk0MzdiZDg3MjQ1M2Y3ODFhIGxlZ2FjeS10cnVuaworMTcxNTMgYjU3ZTM2MGE2ZDE2MWE5YWM2ZGVmYzM2MjY2NmI1NDYyZjU5MzQxZSBsZWdhY3ktdHJ1bmsKKzE3MTU0IDZkZWUxOTg1YzY4MWMxMGFjNTAyYzJlNmM5MDk2ZGIzNTRhOGU0MTkgbGVnYWN5LXRydW5rCisxNzE1NSBjYmU0MjNiM2JhM2EwNjViYTY1ZDYzOGIzOTQwNjhmYzY5YjZlZDQ3IGxlZ2FjeS10cnVuaworMTcxNTYgZWI3YzI3ZThmZTM3ZWU3ZDRhYzYwMmMwMmM5YTE3ZTFiZjQ0MDBkNSBsZWdhY3ktdHJ1bmsKKzE3MTU3IGY1NWI2NzNkOWFjZDc0MjVjYWY5NWUwZGUxMTg5Y2YxOGUxMjcyNjUgbGVnYWN5LXRydW5rCisxNzE1OCBiZWE4ZjE0ZTdkNjFjZjgwZTUzMjNjMWRjOTlkMjczOGMzMGUxMmZhIGxlZ2FjeS10cnVuaworMTcxNTkgOTUxZWIzYWYzNDk0ODNiZDU3MTYzYTQwN2I1MDhhZDIzMjc4OWEwYyBsZWdhY3ktdHJ1bmsKKzE3MTYwIDAxMTVmNDAzZmFkZDhmYjUwZGQzMDRmYzJjNTFiZjcwMGEwYWY3OWMgbGVnYWN5LXRydW5rCisxNzE2MSAzYjg0YzVmZjg5ZGE4OTNmZDlmYmI0NzZkZmM1ZDhhNDFiMjljZmI1IGxlZ2FjeS10cnVuaworMTcxNjIgMDU3YzdjZWI5MmYwNDQ4NmYyOTdiYmY3Njg2M2U2NGYxNTJlN2Y4NCBsZWdhY3ktdHJ1bmsKKzE3MTYzIGY0OGVkOTQ0ODg0YmZmZjJhNTUxNzM0ZjQ5N2QyZGUxOTkxOTcyZDMgbGVnYWN5LXRydW5rCisxNzE2NCA4MDFhMzA0ZjI0OGZiZmY3NjhjZDRlYzJlMDljMGMyMjM2NTNlZjg1IGxlZ2FjeS10cnVuaworMTcxNjUgYWI2MWMzMzVhMDRkY2QxYmY0OTU1YjZkYmMwYTUxNzI4ZjM0MTUwOSBsZWdhY3ktdHJ1bmsKKzE3MTY2IGQ0MWM0MTM3MWRjMTA4OTA0MGRiNzQ3ZTE1ZDMyODU5NGY3OTlkMTQgbGVnYWN5LXRydW5rCisxNzE2NyA2OTQ5YjUwMzY0ZGQwOGM4MjE4Y2U3YjczNGM2OTYxMDRkOTIzMjc3IGxlZ2FjeS10cnVuaworMTcxNjggN2I1M2VjMjcwNGUwMGEzYTVlNWQ3NDhkM2UwZjgyYTI4ZjcwMjVhZCBsZWdhY3ktdHJ1bmsKKzE3MTY5IDQzMmQzMDhjNDVlOGQ4YjQxZmMxYWM3MjQ3MDI4N2FlZGZkZWUyZWUgbGVnYWN5LXRydW5rCisxNzE3MCA1Mzk3ZmRmODhlYzI1YTFiNTgzN2RlYzlmYzg1MjgzOWFiZTQ0MWUwIGxlZ2FjeS10cnVuaworMTcxNzEgMmRlMWZiNTMwMmVkODdlZDY4ZjJiZDk3ZDBmNTMxZThlYmY5MzlkNSBsZWdhY3ktdHJ1bmsKKzE3MTcyIDZkMGY2NGY3ZGVkZDE4MzU0ZTU4YzkyYjNmYWRlNmE3NDc2OWU1YTkgbGVnYWN5LXRydW5rCisxNzE3MyAyMWJmOWZhOTIyNTU4NTNlZTQyY2FjY2MyNDRlNGU0ZWM1Y2E4Mjk4IGxlZ2FjeS10cnVuaworMTcxNzQgNzM1MmJiMTYzMmJjMDFhNDkxNjEyMjAzY2ZhNWM2MjY5NmNjYmNhYSBsZWdhY3ktdHJ1bmsKKzE3MTc1IGVmOTc4NTIwMDg1ZjEwZTU5NzgyNmIyNTlhYTkwNmIxYjdiOWU2NDYgbGVnYWN5LXRydW5rCisxNzE3NiA5M2RhYmZjM2E4M2ZjOGM1MmJhZDg4MmJjYjUzNzY1M2NiOGNhZTYzIGxlZ2FjeS10cnVuaworMTcxNzcgZGViNzI3NDM1ZjM5MDY0ZTM1ZjY4MjVkNzk0OGQyMGVjODkwMmJlYSBsZWdhY3ktdHJ1bmsKKzE3MTc4IDBmNjgwOWViYTUwYTg4Yzc3M2QxZDcxMThiYzM2OTdhZmI1N2E2MmYgbGVnYWN5LXRydW5rCisxNzE3OSA2MzBjOGFiZmE4ZDdjMDhlNTQ1NjdlNzk0OTE1OTIwOWZjMzgzMzhjIGxlZ2FjeS10cnVuaworMTcxODAgM2IyZGZiYzM0Njg5ZGVkMGIwZTcyNjI2ODIyNjdmYTY3MmE5MmNmMyBsZWdhY3ktdHJ1bmsKKzE3MTgxIGEzOGUxMmU0YWZiNzBjNTlkYmU1ZTY0Nzg0NDFhNGFmNzU1MDAxNTEgbGVnYWN5LXRydW5rCisxNzE4MiAzZWRhMzAxMGJjMGEwZGI4NWQxOTgxODI4Yzk2NmJmYTA2OGYxMzQ5IGxlZ2FjeS10cnVuaworMTcxODMgZWE5ZTYyNWIwMWEyYTA1NmQxZTUyMzU5NThlNmZiYzU3ZmYwOWE1OSBjbnJpLTE2LXN0YXJ0CisxNzE4NCAzNTc2M2JlNzVkZGI3Y2E2ZjcyMjhkNTdmODJjY2E0NjRmMzNjZWQ0IGxlZ2FjeS10cnVuaworMTcxODUgZDFkNWUyZGMyOWRiNTBkNzQ4ZDkyZGEwYzhlNDRkZWJlZjlmZjU1MyBsZWdhY3ktdHJ1bmsKKzE3MTg2IDVjNTFjMDk2ZGUzYmZlNmNjMzZiYTcxOGRiZjBlMzRmNTRkMGM4OWIgbGVnYWN5LXRydW5rCisxNzE4NyBhNjY1YmRjNDkyMmY1ZGZiMGRhZGRiYTkyNmRjN2ZjMjNkOGZjOWFiIGxlZ2FjeS10cnVuaworMTcxODggNWRhNDA2ZWJlZjU1MjA0ZjdkYTFiN2E5YmFmYTk4MGNjMDM0ZGEzNyBsZWdhY3ktdHJ1bmsKKzE3MTg5IDY2NWIxOWU3Nzc2YjUzYjIwMWU1NDI5NmVmYjBhMGQ5NGE0Mjc1OGUgbGVnYWN5LXRydW5rCisxNzE5MCBjN2VkNDEyYTA3NWIwMTlkZDUwZDdjZmE2MDY1YjgzNjU2Y2IzNGVmIGxlZ2FjeS10cnVuaworMTcxOTEgMzZkMGI1YjA5NGU0MjFmYjdlNzk2NmEwYjU0YTUzNjM3NjA4MDExYSBjbnJpLTE2LXN0YXJ0CisxNzE5MiA3YTFmZWNjMDhkNzBhOGNhMDBlMjIwNGU1YjIyYzU2ZWJlYjNkMjIyIGxlZ2FjeS10cnVuaworMTcxOTMgNjQ4YTEyYTc4MGQ5MDgzNDRhYmY3ZGY5NGZlMTZjYmViOWI4YjYwMiBsZWdhY3ktdHJ1bmsKKzE3MTk0IDAzNGJmMTA4MTMwNDc1MDIzOGE0NjU2Njk2YzhhN2I5NWZjMGE2MWMgbGVnYWN5LXRydW5rCisxNzE5NSBjYWM5MzkwNzZjN2RiZWU3MjIwMWJkZTMwYzYwYTMzMDg3MjQ2NDI0IGxlZ2FjeS10cnVuaworMTcxOTYgY2QwNDdhODU4YWNlMTliYmI1MWQ3NjBjOGU5OGJlYTg0ODA5ZDE2ZSBsZWdhY3ktdHJ1bmsKKzE3MTk3IDA5ZGNmZjUxOTMyYzc3ZGRlNTJiYmY2MmE2YzVkMTZmMjk0OWFmNjggbGVnYWN5LXRydW5rCisxNzE5OCA2NGMyNWZkMjlkNmY2NzE3YmRjYWZmNzEwYmM4YzY3NjgwM2I3NDdhIGxlZ2FjeS10cnVuaworMTcxOTkgZWQxNDdhNTM3MDFiODAwNjUyNDc4MTRhNTVhYWM5NWRkNjliMDA3NiBsZWdhY3ktdHJ1bmsKKzE3MjAwIDhkZjE2NmNhMDliMjVhZTkyNWI3MjM2MzE1YTM0Njk5YjkwOGY1MDQgbGVnYWN5LXRydW5rCisxNzIwMSA2ZjZmOTY1YzVlMmRiNjRiOTQ3ZDRmY2M3MzgxZTgzYWEwY2IwNzU2IGxlZ2FjeS10cnVuaworMTcyMDIgZmQ0Nzk5NjBlNWUwYzJjMDc3OGVjNDIwODEyNzZiNDE3YTAyYjU0NiBsZWdhY3ktdHJ1bmsKKzE3MjAzIGRkNDc2NmFhMmZkMmY3N2I3NmE4Mjg3NzgyOTg1YTQ4N2E2YWE5NTkgbGVnYWN5LXRydW5rCisxNzIwNCBjYTczMTZhMDA0NjRlYTQ4ZjE4ZjBlYTg1MTlkZGE5MjVkY2ZmZGVmIGxlZ2FjeS10cnVuaworMTcyMDUgYjA2OWQ3ZDljZThhMDBkZmFmNzEyNDBiOTEyZTNhY2QyM2ViY2ZjZiBsZWdhY3ktdHJ1bmsKKzE3MjA2IGNkMGM0ZGQ0OTA0Yzk2MzQxMmJjMmM2NTM4NTczZWU4NWY0M2NlOGIgY25yaS0xNi1zdGFydAorMTcyMDcgZTk5YjBkYjE2ZGQ3ZDNjOTNjYTg4NTg1ZTI2YzBlNjkwY2E4MjgyNSBsZWdhY3ktdHJ1bmsKKzE3MjA4IDc5NThhODhlZGRhMTc3Mzg5NTI3NTkyYThjMGJiODk4NmZkNmQ2MzkgbGVnYWN5LXRydW5rCisxNzIwOSAyZDZjZjY4YWE2NGE1NWQyZmEyYjJmN2NkM2RkNTMyZjA4NGQ1MDMzIGxlZ2FjeS10cnVuaworMTcyMTAgMzg4YzcyMWMyMGNmYjk1MzQxMGU4MDFlZWMxNmU1ZDUzMzE2ZGE1NCBjbnJpLTE2LXN0YXJ0CisxNzIxMSBjZmQwNzQzMjFhYWQ5ZDFhNTJjZGVhZTdlMDBlZGZkOTdmOGU4NTExIGxlZ2FjeS10cnVuaworMTcyMTIgN2U0N2IzNzBlYjY3NTUxOWI4NzUyODY0NzAyNjYxNjA2NGNlYmQ4NiBjbnJpLTE2LXN0YXJ0CisxNzIxMyA2ZmI2MWI4MzQzNWRhMWI2Zjg3ZDZiYjBhOGZjMzI1NTYwMDA4MTM5IGxlZ2FjeS10cnVuaworMTcyMTQgZDM5NWNhYzc4NmIyMjRiMTg2MWUzMjhjZGRhZjMwNTJlMGVhY2NkYSBjbnJpLTE2LXN0YXJ0CisxNzIxNSAwNTA3ZTU2OWQ3NGFlNjUxNmVhZDY3M2RkYmNkMjU0ZjZkYzM5M2EyIGNucmktMTYtc3RhcnQKKzE3MjE2IDhhOTMzZWM0N2VmNzMzOWNkYjE1ZTEyYWM5MmFiODE2NTE2M2IzYmQgY25yaS0xNi1zdGFydAorMTcyMTcgMzlhYjI4NTcyMzA3ZjgxODhhZTU1MmMyYWNkNmQ4OGNlOWE4ZmZlNSBsZWdhY3ktdHJ1bmsKKzE3MjE4IDU3OWExZTczMWZjODQyNGVlODUxZTJkYTBlNWQwNmE3OThhOGE3ZGYgY25yaS0xNi1zdGFydAorMTcyMTkgMWZkY2EwYWY3MWQzNDNlODhlNmJmNTBmNzk1NDQyMTMxNGM5YmJiZSBsZWdhY3ktdHJ1bmsKKzE3MjIwIGFmZDZmYWU0NjdlNTkyNTk1MWJlOTk5OTM5NWVjYTdhM2ZkNGJiMGYgbGVnYWN5LXRydW5rCisxNzIyMSBlZjI3MTRiYjA3MzBhNzUyNTZlODMyYjcwNzcyYTQ3M2I3YTNhYmM3IGxlZ2FjeS10cnVuaworMTcyMjIgOWYwM2QyZmFmMTU2YWRlOWRjMjk2YjEwNWYwNDlmMjVkMjc2ODg1MyBsZWdhY3ktdHJ1bmsKKzE3MjIzIDFjNDM4ZmQ1YzBlOTM0MDA2ZWI0MmI5YzU2M2FhNTEwZTdhMjMzMDAgY25yaS0xNi1zdGFydAorMTcyMjQgNDRmZjdlNDE2M2FhMWUwY2IyMjUwMmJjMDY4NGI4YzhlYWUxOTk0OCByMTYxLWJyYW5jaAorMTcyMjUgNTU4ZWE5MGY1YjFjYTI4YzNmNjA0MmJjNDZkZTEyYjljNTU4MTdjZiBjbnJpLTE2LXN0YXJ0CisxNzIyNiA5YjFkYWYzZGVlMTRkNGU0MWNkMjQ3Y2M3Mzc2ODkxNWE1Mzg1MTEwIGxlZ2FjeS10cnVuaworMTcyMjcgZjFiZDMwNDQ3ZTMwYjU5YzA4ZjAyMWM1OWYxN2M2OGQ4OGM2ODM5ZCBjbnJpLTE2LXN0YXJ0CisxNzIyOCAxZmQ2NGIzYWY3NjAyMjhiYjVlYjUxMzRhNjI0YWUwODFkNjNjNDM5IGxlZ2FjeS10cnVuaworMTcyMjkgNjNkODI0Njc5YjI4NTMzYmZhYTEwZTM0Y2Y0OTdhMDU2ZDBjNDExZCBsZWdhY3ktdHJ1bmsKKzE3MjMwIDdlNGY2MDJkYzY4NTc2YjJlODg2YjBmNTIyMTkyNmQwOWUxMTczM2QgbGVnYWN5LXRydW5rCisxNzIzMSAyZWViNThiNDNlYjE4ODNiZGY0NDM3MmZmNGM4MTFjN2I4MzFiYmY2IGxlZ2FjeS10cnVuaworMTcyMzIgMDVmMTIxMjhjMzhkYmU0MjRjMjk3YjRmY2FhM2RmODc2NzBiZTczZiBjbnJpLTE2LXN0YXJ0CisxNzIzMyA1MzJjOWNlNmM4N2MxN2Q5YmI1MWIwN2FhMGZjYzRjZTM4MDkwYmNiIGxlZ2FjeS10cnVuaworMTcyMzQgYTEwYWZiM2FkMjc1MGMwZTI2MjQxMzRiMWY1OWJjOTAwOTBiNzI0MyBsZWdhY3ktdHJ1bmsKKzE3MjM1IDU0MmQxMGJkMDRmNDc3YTRiODk5ODdmYjEyNjc1MGZlOWU0ZDIyYTAgY25yaS0xNi1zdGFydAorMTcyMzYgY2Q2ZjcwNWM1NGI4YzQ1M2I5Y2QzNjljOGYxNjcwMWFiMTQwNGQwOSBjbnJpLTE2LXN0YXJ0CisxNzIzNyBmNjI5YWYxZDRiZGFhODJjYjVmZTYwOTkyYjM1ODhlZTg4YjdlYmQzIGNucmktMTYtc3RhcnQKKzE3MjM4IDhkNDcxMDE0MTliODRjYWI5M2RjNWFjZjJkMjAxMTEzMmIxNzJkMWUgbGVnYWN5LXRydW5rCisxNzIzOSBjZDJiZTE1M2YyMjhmN2ZjZTc2OTAzZDFjOGM5YTZmNmYzNmMwMTEyIGxlZ2FjeS10cnVuaworMTcyNDAgMzY3Y2E0OTE5MGJjNTI2NWU2ZDcxZWZmYWJkYzc5NTAyNGQ2ZTE3OSBsZWdhY3ktdHJ1bmsKKzE3MjQxIDMyMDE1ODAyNmE0YmM0ZWU5MTY1MGVkOTA3YmQ0MDgzMmUxNGY3M2IgY25yaS0xNi1zdGFydAorMTcyNDIgODg4NTNjMTAzMDg3OTdjODVjYWM1ODg3NTljZjA5MTA3MWU1YTExNCBsZWdhY3ktdHJ1bmsKKzE3MjQzIDZhNWZiZThjNWFhNmE4ODkzOGY4MTIyZGIyMjA3ODRjZGFhOTdkYzMgbGVnYWN5LXRydW5rCisxNzI0NCAzZTM3Njk4Y2Q3MzdmNGY3Y2FjYzQ0OTM5ZWEwMTcyODc0Zjg3YjcwIGxlZ2FjeS10cnVuaworMTcyNDUgOGI0MDY4NTZiYzMxYzEyYWY0Yjc4MGM1NTU2NzI3NzI3NTdhODliMiBsZWdhY3ktdHJ1bmsKKzE3MjQ2IDA1N2JjMTk3MDM0NTI2YTVkZjEwY2U1ZjFhNWJhNDEzM2UwOWYzZDQgbGVnYWN5LXRydW5rCisxNzI0NyBkNjg5YjhjZTlkMGE5MjhiYTY1MjM5MjY4NTIxYjBkZDNlNDAxZGYxIGNucmktMTYtc3RhcnQKKzE3MjQ4IDg3MjE5MTVhNmFjYjgzMDdhNWVjMTIwYTg3MGVlMjI4YjNhYmNiZTUgY25yaS0xNi1zdGFydAorMTcyNDkgYjE3NTk4ZmYyY2RkNzQwMWQ4Zjg2NjUxZjVmZTAwMGZiYmFhNjgwZCBjbnJpLTE2LXN0YXJ0CisxNzI1MCBkOGQxODEyZGZjZTA2NDZiMmZkZTU1OWJkMjYyYTkxYzgxOTI1YTc5IGNucmktMTYtc3RhcnQKKzE3MjUxIGQ4NDY2ODU1MDI2ZjVlOWJkYWJhYjdhMmJhM2Q2OGNkMDMyNmJjMDcgY25yaS0xNi1zdGFydAorMTcyNTIgNjU2M2Q3MWU3ZDk1YWQwYmY4ZGFhMTZjNDQ3MThmMDdkMTM0ODI4MSBjbnJpLTE2LXN0YXJ0CisxNzI1MiA3ODZhNTdiN2RjNmNjZjU2ZTYzMGViOTFhMjYyMDE2YjlhMTQ5ODJmIGNucmktMTYtc3RhcnQKKzE3MjU0IGJlZWZhODVhMzkyNGMzZTIyYTU4MzdiZDNlYjYxODZkNzZlYzg0OWMgbGVnYWN5LXRydW5rCisxNzI1NSBmYzEwYjIyN2MxN2RkYzJmOTE4OTUyYWJjODczNmU2MDQyZGIwMmE1IGxlZ2FjeS10cnVuaworMTcyNTYgOGQwMzVjMmZjMjM0MDg1ODM1MDljODI1ZmU3NTA3ZDg5Mjk3M2I5ZiBsZWdhY3ktdHJ1bmsKKzE3MjU3IGQxYzM5NWM0NzEwMmExNTZiNDIyYjJiZjVkMzA5OTU1OTI0NzliMDEgbGVnYWN5LXRydW5rCisxNzI1OCBhNzZhYjdjOGZjMjkyMWJiYzFlYzAyNTJhY2MwMjkwMDg5M2U5NzAwIGxlZ2FjeS10cnVuaworMTcyNTkgNDMwNjEwN2IxMzk1NTE4ZDlkMzI5N2UxODMzYWJlYTBhZWZkMzcxNyBsZWdhY3ktdHJ1bmsKKzE3MjYwIGE3MDdhNWYxNzEzOTMyNGE4NGRjMmU2ZTQ1MTAzMGVjZGY2Y2IwMmUgbGVnYWN5LXRydW5rCisxNzI2MSBiMTk0NGNlNTQ5MmIyZjJiYzMyZjBmZGE3YTlhMDE0NzcyODkxNzFiIGxlZ2FjeS10cnVuaworMTcyNjIgODYyNjZmNzYzZDQ0MTk3MTdlZDY0MGYyMDdkNjAzODIyODkzZTNlZiBsZWdhY3ktdHJ1bmsKKzE3MjYzIDkwZjA5NDZmNjRlNzgxZTczMmQ2ZjU2N2NlY2JkNDZlNjM1YTkwMjkgbGVnYWN5LXRydW5rCisxNzI2NCA2MDcyNjRlN2JmNTE0MzQwYjYyMTc5MTEzNTBiZjAwNzZjYWRkOGU2IGxlZ2FjeS10cnVuaworMTcyNjUgNmJlNDQ2ZmZhMmQ5YWJjOTEzYTcyZDNjYzZiOTI4ZTBkZGVmOTU2MCBsZWdhY3ktdHJ1bmsKKzE3MjY2IGQ0MmZjM2M3MTczZTVjNzNjN2I4OWZiMmVlYTYwOTFkNGI3NjBmNmQgbGVnYWN5LXRydW5rCisxNzI2NyAxMGJlOTY4MmIwMDNmMjNjMjI3NmQxMjcxZDI1YjViMzFjMTA2ZTVkIGxlZ2FjeS10cnVuaworMTcyNjggMGRjYWU4NDUwNmJhYTljYjczNTJjMjc3NjRiNzE5Yjc2OWJiMTI4ZCBsZWdhY3ktdHJ1bmsKKzE3MjY5IGJhMjJhNWVkNDY0MTBiY2Q5MWFhMGY1NjZjY2EwN2VmYzZiZjhiNGIgbGVnYWN5LXRydW5rCisxNzI3MCBlMzZhZmY1MmZiNGUwZmMzNjA4YzBkNTkyMjI2Y2RkY2M4OGZiYTMyIGxlZ2FjeS10cnVuaworMTcyNzEgYWNkNDExM2UzMDFhM2M3YmEzZDJhN2EwMmRhNDIxMjQ2YTNiMzJhMCBsZWdhY3ktdHJ1bmsKKzE3MjcyIDI0YmUwNDlkMjAzNzkzNDJhNWUwNjc3YzA5NGIzYjRjODM0YTU1MzUgY25yaS0xNi1zdGFydAorMTcyNzMgZjk0NDhmNDRlNzAxY2FkNTZjN2NmNTgxNTk2ZjE1MDM1NTBjOGY1OSBsZWdhY3ktdHJ1bmsKKzE3Mjc0IDY0NjA0MTFmNDczZWZmY2ZkODYwNjVjNmQwN2M3YTkwNjMwZmIwMDggbGVnYWN5LXRydW5rCisxNzI3NSBjNjE2Yjc5MTA3NDU4ZGZlYjRmYWQ1ZThmMTgxMmE3YzI1MGMwMTAzIGNucmktMTYtc3RhcnQKKzE3Mjc2IGMzODRmYWFlNTA1MmM1ZjM5ZTY4M2JhYmEyMDExZGMyOGRlODY3ZDggY25yaS0xNi1zdGFydAorMTcyNzcgZjhlNjY4NDQ3ZTJhMWQyOTBkNTcxYTQ5OWFiYzE2ZGE4NmQ0YzQzMSBsZWdhY3ktdHJ1bmsKKzE3Mjc4IDQ0OGJkZjQ0MTc5MjNmYWI3YWFjZDhmNTU2Mjc4ODYxODMzNGVkODEgbGVnYWN5LXRydW5rCisxNzI3OSBiYjkwODMzMTJkODE0YzRlYjRkYWNmZjE3ZTFjM2RlYzkwMTA3OWE5IGxlZ2FjeS10cnVuaworMTcyODAgY2NiMzdlMmIyNDYwM2I3YzIyMmQ1OGQwNjllMWY3OWFlNjhmYWRhOCBsZWdhY3ktdHJ1bmsKKzE3MjgxIDlmMWYwYTZiYzE4ZTc1N2Y1Mjc0Y2M3MmRlMzRhZmFjNDQ5ODYzYjggbGVnYWN5LXRydW5rCisxNzI4MiA4Mzc2YWQ2NjQ1ZTNkZGM1OTI4N2I1ZWYxZGFhOTU1NGE4MzMzMDk1IGxlZ2FjeS10cnVuaworMTcyODIgMzVjNGZjMTQxNGE1OTg4ODYxNGI5YmU3ODRhMjVmMjMzYmE2Nzk4NCBsZWdhY3ktdHJ1bmsKKzE3Mjg0IDc3ZThlNTUwYWUxM2Y3NWUxYzY0MzcwMjMwNDc1OWU5NDkxMmM5NDcgdW5pdmVyc2FsLTMzCisxNzI4NSA0ZmUwMTQ4MDg4ODVhNDZmNDdiODEzYTM1MjczODc5OTRhYjU3ZTQxIGxlZ2FjeS10cnVuaworMTcyODYgNzg4NmIzYjZjNDBmN2JkNWVlY2FlNWMzNmNmZmYxOGUyNjc5N2NmNCBsZWdhY3ktdHJ1bmsKKzE3Mjg3IDM0Mzc5MTI3ZWUzYjRkOTFmZjA1ZTMwZTU4M2YyNmExNjQ2ODM1N2YgbGVnYWN5LXRydW5rCisxNzI4OCA5ZmEzYzU3MWRhZmYyMDJlMzc3ZDIzMGJkZTNlODIwOTY3ZDE0MTQyIGxlZ2FjeS10cnVuaworMTcyODkgYzA1MDk5ODk0MDVlYzBlZWJhNzZjYjdmMmYxNTlhOTgxYzI3NzA3OCBsZWdhY3ktdHJ1bmsKKzE3MjkwIGUzNDhlZDk0NmQxZjRjMWIwYmMxOGI4NWZmYjlkYmFmYTk5Nzk2NjIgbGVnYWN5LXRydW5rCisxNzI5MSBhYzM5MTc4ZmE4NWZjOWU0YzI0ZTFkMTY5MTYxOWYyZjg2M2JkOTRlIGxlZ2FjeS10cnVuaworMTcyOTIgM2E5MzJjYzY0MzIzM2ZkY2Q4ZGJhYTkyZWY2MGRjMjg4MzQ2YzQyYSBsZWdhY3ktdHJ1bmsKKzE3MjkzIDE5NDQzNTg1Y2NjYzI1NWU4N2M1N2RhN2VhMThkNjRmMTI4ZDg1YzcgbGVnYWN5LXRydW5rCisxNzI5NCBmN2ZkMDk1YzMxYTZhYWM5OWM5ZTI4M2FlNzM1ZWJiMmZkZjdmOGY2IGxlZ2FjeS10cnVuaworMTcyOTUgYzczODA0MWY5NzVkYmU4M2VhNjRiYzFlMWRmNDU4YTIxZGQ0YjViMyBsZWdhY3ktdHJ1bmsKKzE3Mjk2IGY0YzkyYTI0MjExYmRkZDAzMGNlNTQzNWQ3MGIxNzFmNzc2MDg3NDkgbGVnYWN5LXRydW5rCisxNzI5NyBmMDUxYWM4MzQwZjdiOGExZmMwN2YyM2JkYTIyMDlmOTE0NDMxNTEzIGxlZ2FjeS10cnVuaworMTcyOTggOTNiMWRhYjA5NzY3NmQ5Mjk0NzAzMmFjM2ZjMDVjZjJlOTcxZWQwOSBsZWdhY3ktdHJ1bmsKKzE3Mjk5IDUyMGNlN2VjZTI1Mzk4NWFmMDg5ZTYxN2MxNDMwZTc2OGU1NzZkZTMgbGVnYWN5LXRydW5rCisxNzMwMCA1ZDEyZDk2NjBjMmVhOGQzODc3ZTQ4MmQyNjEyNDEyY2RmZDc0OTA1IGxlZ2FjeS10cnVuaworMTczMDEgYzllZTZmNzQ2NzBkYWY1NWQ1ZWIyYTZhMjQ3ZjcxZTQ4YzZlNzI3YyBsZWdhY3ktdHJ1bmsKKzE3MzAyIDNlMzg3NTA3YTk5MTliMDU1MTMyOGNmMmNiNzMyYmUxMDc3MWIxYzQgbGVnYWN5LXRydW5rCisxNzMwMyBmYzViNDA2MTYyNjIzNzNlZjc0NmJkYWQ3ZWYzMWFkZGJjYzEzODBjIGxlZ2FjeS10cnVuaworMTczMDQgZTVjZGNlMmEyYjE2NDlmNmQ2MmU3Mjk0NTk3ZTc3ZGY1YmMyYTkyYiBsZWdhY3ktdHJ1bmsKKzE3MzA1IDBkMDYxM2I5NTc1OGU3YmNmOWQwOTNiNTJlOGI0ZmQ5MDI3MjQzMjYgbGVnYWN5LXRydW5rCisxNzMwNiAwZDEwMjVhZWZlYmZmMjQ4OGM5MzVkNTMzMjk3OTM5MTgxZWEwMDcyIGxlZ2FjeS10cnVuaworMTczMDcgMDE1YTM0YmZiY2NiYTA5OTJiZGE3NDUxOTc4ZjE0YjNiN2Q5NjljMCBsZWdhY3ktdHJ1bmsKKzE3MzA4IDY5MTlkOGUxNGEzMDM2OTAwNjI4OTNlYmY3ZjM4YWVmMjExMGY4OTAgbGVnYWN5LXRydW5rCisxNzMwOSAyMGFjZWI4ZWRmYTVlNmNhNGZhZGY5YzUyOTg3YzQyNDZjMGVlNTBkIGxlZ2FjeS10cnVuaworMTczMTAgMGI2NmQwMzAwZWViZTljMjA3YjlmYzhjYzEwMzE1NzY1YTI2NDA2OCBsZWdhY3ktdHJ1bmsKKzE3MzExIDk1ZWViMDYxZmM2ZDRkNDU1MWU3ODM3OWFlODJkM2UwMTBjMDE0ZjUgbGVnYWN5LXRydW5rCisxNzMxMiBlZGEyNmYxMjMyMjc0YmY2YmYxOGIwNGE5MWZjN2FlMTg1YjZjMzY0IGxlZ2FjeS10cnVuaworMTczMTMgNWVkZDQ5ZDM0MGVhOWFhMGE0ZGJiNDliNTMwZWM0MDZjOWJjNjVkOCBsZWdhY3ktdHJ1bmsKKzE3MzE0IGRiMDI2MDkyY2I3ZTQ5ZDhlNzY1ZmY1YzUzODJlNzg4YTA4ZDI2NDkgbGVnYWN5LXRydW5rCisxNzMxNSBhYTQ0NTM3ZDgwYjUzZmVkZDU2YzJlNDc5NTZjMGQ0ZTE1ZThiNGFlIGxlZ2FjeS10cnVuaworMTczMTYgZWMxNjVkMDNkNDZjYTg2MTc2YzA0NzhmNWZhNDExNWNkNjRhM2FiZCBsZWdhY3ktdHJ1bmsKKzE3MzE3IDE3Y2VjOTZmNzViYzFkNTYwOWQyMjMxNWY4N2EwMThkZTQxMzI4M2UgbGVnYWN5LXRydW5rCisxNzMxOCBlMTNkZjRlOTA3NmY3NThiYzdkOTA0M2Q4ZTg3NjMxMjliZDM5ODQ3IGxlZ2FjeS10cnVuaworMTczMTkgMDcyMWRmNzg5MjcwZTc5NDM4ZGE4YzJlYzBmOWMyMGRmYzMyZjA5NSBsZWdhY3ktdHJ1bmsKKzE3MzIwIDE0MmNiNGU3MzEwY2RlYTRjNWUwODFkMTQzZTY1MzY4MjhjYzEyMzAgbGVnYWN5LXRydW5rCisxNzMyMSAwZWY2ZWE1ODU5MGI2MGE1YTM2Yzg3MDk4ZGM3N2FkOGZhYzFkNTNiIGxlZ2FjeS10cnVuaworMTczMjIgZjkwYjgyMzIwNWZmMWUxYzY4YmIyZTdkZWMyOThmMjA2MWI2NGFkZiBsZWdhY3ktdHJ1bmsKKzE3MzIzIDM5ZmY2YjNjNDNhZmMzZWIzYWI0ZDg2ZjY2NzFhYTQ3OWU2Yjg2ZTcgbGVnYWN5LXRydW5rCisxNzMyNCBjM2M0OTg1OWU4MGIwOGZkMTEwZGU0YmEyMjU3YTY1MjY0OWM5OGE1IGxlZ2FjeS10cnVuaworMTczMjUgZjZiODZlMmRjNTViYmZmMjZhOGNhMzQ3NTEyYTVkNGZhMzMwNzRlZiBsZWdhY3ktdHJ1bmsKKzE3MzI2IDk1MzdlNzg5M2YzYzNkNDUzYWM1MmY2NDZlZDc5MGFjNjg0M2Y2NTkgbGVnYWN5LXRydW5rCisxNzMyNyBiN2JiNGEzNWMxMjE4OTc3NzlhOGUxZDk5NGE3OGJmMDVlODM4ZjI0IGxlZ2FjeS10cnVuaworMTczMjggZTRjYThjMjEzNzdhM2NiNzNiOTNjMjVlMzU4MDlkMmY1YTMzMmUxMyBsZWdhY3ktdHJ1bmsKKzE3MzI5IDcxNDU2NzgyZDhmZDVhMWYzMGI5NWZkMDEwM2UyZGY2N2IxMTUyODQgbGVnYWN5LXRydW5rCisxNzMzMCA5OTk4YjcwODdlZTYwNDlhYzBmZWMxZmY3ZTBmYjJjZWNjYjM2OThmIGxlZ2FjeS10cnVuaworMTczMzEgY2M2ODNhMGFjNTY4ZWI4NDQ3MDUwODBjYjFmM2EzYmZlMjgxNmU0MyBsZWdhY3ktdHJ1bmsKKzE3MzMyIDg5ZTNiNmE1NGZlOTNjNmRjNTM4MjhjYzk5YjllODJjNGZkZDBkNDYgbGVnYWN5LXRydW5rCisxNzMzMyAwZDE1YzgwNTM3MjZiMjdmNGYyYjAyZmQxOTRhMTMxZjRiYjdlYjczIGxlZ2FjeS10cnVuaworMTczMzQgNTAwNDM0OWVkZTRkZjhlY2E0MTFlZWZiYzQ4ZDgyZGY1MjVkNDZmMCBsZWdhY3ktdHJ1bmsKKzE3MzM1IDhhNjNjNjA0ZWU1OThmYjY0MGYxZWU1MmY5NWUyMzU3MGE3ZDlkMzQgbGVnYWN5LXRydW5rCisxNzMzNiBjMzJmNTQ5MGY1ZTNhYzJlODI5MjgxYjhlNGEzZDNkNzFkN2Y3NWRlIGxlZ2FjeS10cnVuaworMTczMzcgMzRmOWEwMTdjZTYzMmNjZGM4YzE3MjhkMTI1Njg0Njc0NGU0ZDkxYSBsZWdhY3ktdHJ1bmsKKzE3MzM4IGFjMDI0NjU4NmQ1Mjc4MmI1Y2VmZWIxNzk2NzFlZDE3MTQ4MWE2MjggbGVnYWN5LXRydW5rCisxNzMzOSA1MTM2OWE1N2IwYWFiNDgwYTA3OWM2ZThiZDEzZTEzYTkyNzVhNzEyIGxlZ2FjeS10cnVuaworMTczNDAgOGE3MTVkMmRmZWI5ZjlhNjFkN2FjMjYwYWM2M2Y1MzFjNDU1ZWU3ZCBsZWdhY3ktdHJ1bmsKKzE3MzQxIGFiYTdlYjlkOGQ2MTQ1NGY4OWE1ZmQ4N2U5OWRiMzM2MWIzOTEwZjAgbGVnYWN5LXRydW5rCisxNzM0MiA1MmE2MDBiMzhmN2VlNTk4MGMwZWJlNjIwZjk4OWMxZmYzMzIxYzViIGxlZ2FjeS10cnVuaworMTczNDMgZjc4ZjI4N2IzYWRkYmM4ODdjMTk0NGI1Yjg3M2U2OTQxZmUwMTkyZiBsZWdhY3ktdHJ1bmsKKzE3MzQ0IDMzNGQ5YWViYWFmMTBhMDJlZDEzYTI5YjcwZDIxMTY1YTQzOWZhMDkgbGVnYWN5LXRydW5rCisxNzM0NSA3NzI4YjBlYTkzNDQxYzUzMDBhY2FmZWUzMDY4YzY4YzIyMDRlYjAxIGxlZ2FjeS10cnVuaworMTczNDYgMmJhMDhkOTkxYzQzMzBhZjRkN2VlNDY4MTBjMjkxNzZlMTkyODkzOSBsZWdhY3ktdHJ1bmsKKzE3MzQ3IGIxOTg4NmJlYTM3ODdmYWZjMGQyMWI4ZDQ1YWEyYTcwYWVhNGI2OGYgbGVnYWN5LXRydW5rCisxNzM0OCBlNmE5ZDQxMjY1MmQyOGE5Y2U1MWM1NGMyOTliNWNjNzRkYmYwYjY1IGxlZ2FjeS10cnVuaworMTczNDkgYWVkMzdmNWFhNDc1ZTc0NzNmOWU4ZDZhZGNkMjlmYTRjMDhjMWJkOCBsZWdhY3ktdHJ1bmsKKzE3MzUwIGQzMjdmYzQ3ZjhmZGRmYWQ5N2RkOTBkZGQwYzFiOGIzYTg2MWVlODEgbGVnYWN5LXRydW5rCisxNzM1MSAzNzFlODhhZjY0NWYxZTg1NzQ5NWZkYTVlZTNhMDMwNTQ2M2QwNWZmIGxlZ2FjeS10cnVuaworMTczNTIgN2YyM2VjNWNkOWNhODQ1OGM5NmE4ZjFlZmJkM2RjZDZmMGQzODBmYSBsZWdhY3ktdHJ1bmsKKzE3MzUzIDIxZDg0NzY1M2Y1NGI5NTk5MDMyNDAzMTM5YmEzNGEwOTMzN2Q1YWEgbGVnYWN5LXRydW5rCisxNzM1NCA1OGJhOTBlNGU5ODVmMWJhYTljZWZhYWVkMWRjNDdlOWE4ZDMzMjRmIGxlZ2FjeS10cnVuaworMTczNTUgZWVmMjU3MzBlNjRkYWFlNzgyMTI0MjlkZjg4MzdiMzkzZWQ4MTQ4MSBsZWdhY3ktdHJ1bmsKKzE3MzU2IDE1YWNkNWM1OTFmZDRjMDUxOGRmMjRlYjliMzEwOWUwZjhkZWVlMTcgbGVnYWN5LXRydW5rCisxNzM1NyBkZWIzZTk2ODVhMWVkZGMyZTFiYTllY2NlNWNmMDFmNzhmZDQ0MmM3IGxlZ2FjeS10cnVuaworMTczNTggMzgyM2ZjNzIyYjUwYzUzMDlkMTc0ZDU1YzViOWJhMWQ0OWZkNTQ5MiBsZWdhY3ktdHJ1bmsKKzE3MzU5IDI4YWMxNDhkMDEyOWE3ODAyY2M3NThmZmMxOGQ4NmEzZmFlZTQyMWYgbGVnYWN5LXRydW5rCisxNzM2MCBjODcyN2FjYTE0MDRjODlmMzY2YmRlZjBkZjM2YWU0OGJmMzBkOWE3IGxlZ2FjeS10cnVuaworMTczNjEgYzJmN2FkMDcwYjllZmYzMDEzZTg4ZmFlOWUzNmU2ZDc1YjIwMmQwZSBsZWdhY3ktdHJ1bmsKKzE3MzYyIGEwMzkyZjQzODk2MDVmODcwNTA3YjI5ZDMyZGEyMDVhNmQzODRjZjAgbGVnYWN5LXRydW5rCisxNzM2MyA3NWVkNDI2MzQzNjYyOWVhYjQ5NzBkZDJiOTliNTI5ZGFiMWE5OGM2IGxlZ2FjeS10cnVuaworMTczNjQgMjlmYWNiNzhkNmY0MTY3NDA4ZWM2ZjIyODc3OTc1MDRkMDZmN2I5OCBsZWdhY3ktdHJ1bmsKKzE3MzY1IDBkNDlkZDBmMWJjZTMxMzVkMjYxOWI3ODIyODQ3MDUzZWJlOGFkMjEgbGVnYWN5LXRydW5rCisxNzM2NiBiMzQwOTVlNDg4Y2YxYWM4ODE4YjIyMTNjYmRjMjlhYmU4OTQyZTliIGxlZ2FjeS10cnVuaworMTczNjcgM2I2MTkzODVhOTBlNDdjOTY4Y2YwMmNmZGM5ZmI3YjM3ODRlZDg3YiBsZWdhY3ktdHJ1bmsKKzE3MzY4IDFkYjQ1MzI5NmM3NjdiZGFjZWZhY2VmZjA2MGFmNWRlN2FmYWM1NmMgbGVnYWN5LXRydW5rCisxNzM2OSBiODI4MDJiZjdmZmYyZGZjYzRhOWFlNzE5MGYwYTUxMGJiZDM0NGY1IGxlZ2FjeS10cnVuaworMTczNzEgYmY4NDRhYzJjODFhYmYzMDIzMjVjODIxMmIyNGJlZjAzM2I2MDk5ZSBsZWdhY3ktdHJ1bmsKKzE3MzcyIDUxNjdkMjNiZDZiMGJmMDFkYWQyMDhlMDNiNjk0MmZhOGY5MWI3YjAgbGVnYWN5LXRydW5rCisxNzM3MyA3NDM1MzMxYjQ4ZWU2NTg0MDUxMTY1ZTYxMDc0ZjMxYzc4YjBhYzczIGxlZ2FjeS10cnVuaworMTczNzQgYWRkYWJhOTkxMDc3ZDQ4MzhiYmQ2MWY2NDZlNWE4MDZjMDBhYTJlOCBsZWdhY3ktdHJ1bmsKKzE3Mzc1IDlmZWQ0ZWViYzU4NjRmY2Q4ZTRlZWE1MDczOWVjY2M1NTZmYTI3ZWEgbGVnYWN5LXRydW5rCisxNzM3NiAyMzViY2QzZTVmMTc0NDY5M2Y2YThkODM3YzNmZTg0NWU0NWFmNGI2IGxlZ2FjeS10cnVuaworMTczNzcgY2QzZTRkNzNkZjhlNDg2M2Y2MzJjNTNlMGMwMDc5MDM5NmM1MDVmNSBsZWdhY3ktdHJ1bmsKKzE3Mzc4IDkxOWQzNmZkYThjOGQxODU3MTE4NzE4YTc2NjUxMDNlZjMzM2ZlYWEgbGVnYWN5LXRydW5rCisxNzM3OSBmYzU0ZTM5NzE2OWZmNmVhZGJjYjA5ZjY1NGU4ODM1MWQzZGYxZjI1IGxlZ2FjeS10cnVuaworMTczODAgZmY0YWU2OTFiZTliNTBmOWMyZTZlMTJlM2I0NDAyYzZkYTcyODcwNCBsZWdhY3ktdHJ1bmsKKzE3MzgxIDg2ZDQ3ODY3MzRjYTFkZDY1MDBlNGRlMzk0MGRkZGIwMTBkMDlkNDcgbGVnYWN5LXRydW5rCisxNzM4MiA3MzY2YmI5NWYyMTI5OTBhODBiYTdjZjY3M2ZlNDM5NDYwMWMyZDdkIGxlZ2FjeS10cnVuaworMTczODMgYmUxYWIxODczNThjODFmMDk2MmRiYzgyY2FiODAzNTA5ODM3MDk0MyBsZWdhY3ktdHJ1bmsKKzE3Mzg0IDhkMWE0NjhmOGU1OTE1NGI3MDJiOWU0Y2NjNWYzMTc0YjNlYzkxMjQgbGVnYWN5LXRydW5rCisxNzM4NSAzMDY3YWUyNzQ1OGMyNDA1OTJlY2MyZWU1YThjNjI4NDQ0MzJhNDllIGxlZ2FjeS10cnVuaworMTczODYgNzE1MDk3OWY5Njk0MTU2NTUxZWY4ZjY0NDNkZGFiMmY4MGYzZTNjNSBsZWdhY3ktdHJ1bmsKKzE3Mzg4IDYzNWY2OTEyMzM0OTNlNWI3OTM1YTk0Mjg3NGEwMGNjODMyZWY2YzMgbGVnYWN5LXRydW5rCisxNzM4OSBhNWQ2NTQ1OWE3YjY5MjAzMGU1NDUxMTM0YzA2Nzc0YzA4ZGFiNGJmIGxlZ2FjeS10cnVuaworMTczOTAgNjg3OTVjMTNhY2VhMDAxMTZhMTVlMTE2Y2Y0MzRjYjU2N2YzMWRmOCBsZWdhY3ktdHJ1bmsKKzE3MzkxIDQxNzVlZTgwYTA4NThjOTg3NmYwNzMwNmY3MTFjOGI5ZGJmODgyZjAgbGVnYWN5LXRydW5rCisxNzM5MiAwNTJiMTEzYzc1ZDRjYmU2ZWQ5NjAxNDg4OTFjZGYwZGRiZGNiMDE0IGxlZ2FjeS10cnVuaworMTczOTMgMzY5YWMxODUwNTVkMzExYzAxZGEzMDg5MmNkY2FkZmE3NDc4M2Y4OSBsZWdhY3ktdHJ1bmsKKzE3Mzk0IGRjM2JlZjc3MWQwNzMyYzY5MWNlNWRhOTVhOTUwZTI0MjZkY2RhMjAgbGVnYWN5LXRydW5rCisxNzM5NSAzNWFlOGRmZjhlZDA5OWJlYTlkOWE1ZDJiMDcyMzIwYjZhYTJjYTk2IGxlZ2FjeS10cnVuaworMTczOTYgNTYxYzBiMWQ1MTRiMzRmODlhYmNiM2MyY2U0MzYxY2RmYTZmZDA4ZSBsZWdhY3ktdHJ1bmsKKzE3Mzk3IGE0NWNhMWY3ZjI0MTViYjcyNDFlZDk3ODU2OGNhZGI5ZTQ1NDFiMzcgbGVnYWN5LXRydW5rCisxNzM5OCBjMTYzOTY1MTFhYTM1NmFhMWM5ZGI3ZDg4YTNmOWZkYzQ1NTMwYzI2IGxlZ2FjeS10cnVuaworMTczOTkgZmY3MTJkZThiZDgxMzQ1ZDc0OGM0MTJhYzJhMWZkZTEyZTM4NzQ4YyBsZWdhY3ktdHJ1bmsKKzE3NDAwIDEyMjc3NWZmYTM2YzkzZmUwMmRjZDU0MDU0ZDVjZWI3YThmNDFmZDcgbGVnYWN5LXRydW5rCisxNzQwMSBlZmJhMzA3MGNkZGVjOGFmOWJhYzhhNzYxYWIxOWQ2ZTgyOTAxZDEzIGxlZ2FjeS10cnVuaworMTc0MDIgYWVkMTIyNmE3ZmM0ZjM0ZDEwY2MzNGEwNzBjYTZlZGExYjc4OTljMiBsZWdhY3ktdHJ1bmsKKzE3NDAzIGU5YzMxMzc0NTMwMjE3YTY2OGMzODA0ZDRmN2M4ZDMxMDBlZjljYTAgbGVnYWN5LXRydW5rCisxNzQwNCBkNDkwYzJhMTg2ZGFmY2Q5YWYzOGUzZGQ2ZmQwMzI1NzVjZDNjNjI3IGxlZ2FjeS10cnVuaworMTc0MDUgN2ZhNDMwMmE1YTA4NzBmMDQ2MzE5M2EyNTBhYmY0Mzk0YzM3YTgwMSBsZWdhY3ktdHJ1bmsKKzE3NDA2IDI4ZGY0ZjQ1OTY3ZmI2NGViOTJiOGNjZWY1MTllZjBhMDEzOWQ1YjAgbGVnYWN5LXRydW5rCisxNzQwNyBhOGQxYzAzMGIxOWZlNjgwYzcwYjY3Njk1ZTQzNjEzOTU1YjExY2IyIGxlZ2FjeS10cnVuaworMTc0MDggYjNmMTU2MTE2MjcxMjNkOTA5Zjk5ZjUyYzYzZTc3YmRhOGFiMGVmMCBsZWdhY3ktdHJ1bmsKKzE3NDA5IDg3NzQ1ZTU1NDcyNzE0ZGNjMjg4YjM1Zjc0MDhlYmYzYzg1MmM4OGIgbGVnYWN5LXRydW5rCisxNzQxMCAyMTllMDAyMjFjODQzNWNmYjdmZDQ4ZjM2Mzc5NzA3ZjlkY2M4ZWRlIGxlZ2FjeS10cnVuaworMTc0MTEgNGFjMDllOTcwODI4MmRmNTcxYzA1ZWEyNDFjMDMzOTAyYzc3ZmQ0NSBsZWdhY3ktdHJ1bmsKKzE3NDEyIGE3MTM4NWY4YjRkYWJmZDgxZjMzZDFlZGJiZTg4NjM5Yjg5ZTc0N2EgbGVnYWN5LXRydW5rCisxNzQxMyA1ZjJiOWVmM2YyYWVjMWMzODIzYTM5MzNhMDRjMjk2Mjc5NDRlMzQyIGxlZ2FjeS10cnVuaworMTc0MTQgMjhjYWFhM2UyOTJmZmUxYzNiMTA4ODZlNTEwMTVkOWI2MmNhMmIzNiBsZWdhY3ktdHJ1bmsKKzE3NDE1IGVlYjhlZTQ4ODEwNmE3Y2I5YjllYmYzZjliMDFjODMyNjEzNDEwMmQgbGVnYWN5LXRydW5rCisxNzQxNiAwN2EyZGMxYjcyYWVhMmZlZDE0OWVjYjljNDQwYTMxMWE2OGU2NmQ0IGxlZ2FjeS10cnVuaworMTc0MTcgZmU4ZWY0MWMzMjIzZjk5ZjliMTdkYTYwZDUyY2I2MTM2ZDZkZWIzNiBsZWdhY3ktdHJ1bmsKKzE3NDE4IDAzZTYxNTBmZDhkNTI0YTgyZGU1Mjc1ZjY3Y2Y3YzQzMTA1ZTQ1YmYgbGVnYWN5LXRydW5rCisxNzQxOSBiY2YyM2I1MmIwMmZkOWFlYjBhYjY4NWQ5YmFkMTQ3YjY1OThiMzcyIGxlZ2FjeS10cnVuaworMTc0MjAgYWM4MWUwY2FjNWY2Y2Q4YjA5ZjZhMzE4ZTJjMDRmMTY2MWZjNDUwZiBsZWdhY3ktdHJ1bmsKKzE3NDIxIGI3ZWQ1NDNmNGM1NmQyYTYyMWY2YWM1MTRkNzgxMzVmOWVlNWM0OTcgbGVnYWN5LXRydW5rCisxNzQyMiA2Mjk3OWM3YjlhNzE5YjMxMjQzOTJiZTEyNTgwNmQyYTJkZDYxYjY3IGxlZ2FjeS10cnVuaworMTc0MjMgZjQ0NGNmZDRmYTA3NTQxMDkyMTk2NzFlMWRhMGMzMjA3NzE1ZmYyZiBsZWdhY3ktdHJ1bmsKKzE3NDI0IDU1ZDY3MzAyNGU1Zjk2YjdiNDY2OTEzMjVlY2M1YzM3NGExOTZhMjUgbGVnYWN5LXRydW5rCisxNzQyNSBiY2ExZDIwMTM2MjZiOTI0NTgxN2JjOTdlNGRhNTFlOTMxOTI0ODAxIGxlZ2FjeS10cnVuaworMTc0MjYgNjAwNTE1NzQ3YzUxYTM1YTI0ZjI2YjlmODQyOWRkZGQ0YThhZDE4OCBsZWdhY3ktdHJ1bmsKKzE3NDI3IDI1YjdhYzA1Njg5ZTUwOTJkZGVjZjA2NzMwZjY4YmUyMjVlYmE2YzggbGVnYWN5LXRydW5rCisxNzQyOCA4NTczNzZkNjk5YmI5ZGY0MjlhNTA4Yzc3YWQwYWZhY2UyODZiYWFhIGxlZ2FjeS10cnVuaworMTc0MjkgYjRhMzdhYjMyOWRhMjQ4MWI5NWMzYzMxYTZkOWFhYjBkZWY4ZTE5ZCBsZWdhY3ktdHJ1bmsKKzE3NDMwIGJhNTQyMWZmMDI1NjdiMDJlNzM4NjViNjRiZThkNGFiOTdkYzQ4M2EgbGVnYWN5LXRydW5rCisxNzQzMSA4MzY5ZmNkNzlhNjRiY2RmNDhmOThhNmM0ZTg2MWI5ZjI0NTU0MjAwIGxlZ2FjeS10cnVuaworMTc0MzIgMTgzM2QyYmJmNzZhNDljYTEwZmVmZjM3NGNhNDZlMjUzYWU2MWZjYSBsZWdhY3ktdHJ1bmsKKzE3NDMzIDM0NGQyMmI5ZGIzMmFkOTJiODg1M2NmMDZiOGM1MGJmMzE5MzhiNjggbGVnYWN5LXRydW5rCisxNzQzNCAyMGIyMmZkZTFjYjc5ZjhmM2QzYmQ1ODI0ZGRmYzc0ZmMzYTA0NTIyIGxlZ2FjeS10cnVuaworMTc0MzUgNWY4N2VlYzdiNmI4ZjY2ZDJiNmE2MGVhOGU1NThiMmQwODZmMTBjZSBsZWdhY3ktdHJ1bmsKKzE3NDM2IDRkNzQ0NTE1YTczZTRiMmI0MzJlMjY1YjU5ODVmNWY0N2MzZjBiODEgbGVnYWN5LXRydW5rCisxNzQzNyA2NDM1Y2M0N2ZjYzZmZjI0OGIxOTY3NGU3NTYwYjNmYTBmN2U0MGViIGxlZ2FjeS10cnVuaworMTc0MzggMjEzZGJjODgwMTU5OTY3ZmMwMDNjYzE3NzBjNWRiYTQ3ZGY5NzAzNyBsZWdhY3ktdHJ1bmsKKzE3NDM5IDg5Y2U0ODA5NjNmOWJiNDBlNGNlZGZhMDhhYjEzMjM1NTBlNWUxZTAgbGVnYWN5LXRydW5rCisxNzQ0MCBkODRkNTc1OTQ4MTU1NmFhN2E4MjBkMzlmYTkwYWFkMjJjZjY3MzE1IGxlZ2FjeS10cnVuaworMTc0NDEgY2QxYjlkOGQwNDVkZDk0ZGUyZWIzOTFjMzMyMzIyNzdhYjM2NTg1MiBsZWdhY3ktdHJ1bmsKKzE3NDQyIGU4ZDg3NThhZGZkYjYzOGM2MjRkMjMzMTkzYjlmOWE4OGNhNjRkY2MgbGVnYWN5LXRydW5rCisxNzQ0MyBkY2JjMDg0ZDA0NmViYTVkMDI0YjI0MzViOTgzMzQ0NTQzN2Y1MDkyIGxlZ2FjeS10cnVuaworMTc0NDQgOWFiNDE5YTVlMDUyODkxOTg5YTQ3MjllNDY3ZTI2MzA1Zjg1NmY0NyBsZWdhY3ktdHJ1bmsKKzE3NDQ1IGM0MjEwNWJkYjVmYzRlYjFhZTQ2MGRlNmNmYWQwM2U3MjNmNzhiNmQgbGVnYWN5LXRydW5rCisxNzQ0NiAxNmE5YzA1N2RjMTE5ZjJjNTM1N2UyMzgzYzIzZmYyMzc2MTQ1NTRlIGxlZ2FjeS10cnVuaworMTc0NDcgOTBmMDc4OWQ1N2I3MTdkMzBkMjc0ZGQ5ZjZmNGViNmE0ODNjZDYxMCBsZWdhY3ktdHJ1bmsKKzE3NDQ4IDZjMzE3YWRjMThhOWUyYmFkZjFhY2I2YjhkNjk5ZGUzMDM5MGViMjYgbGVnYWN5LXRydW5rCisxNzQ0OSBhMWUyZThkNTVlZjAwNTAwN2EwZmZkNzNiZTQzNGJlZTcxMzA3ZTZhIGxlZ2FjeS10cnVuaworMTc0NTAgMmE0NDE2YWQ4MzdjNDU5NmE0MmY5MzVlOGYxYjU3YzZkNzE3YjEyMCBsZWdhY3ktdHJ1bmsKKzE3NDUxIDI1NmQxYmI2Mzg4ODk0N2ZjNjE2MGQ2MmYwOGQ0NTRiN2NhMTM4YmMgbGVnYWN5LXRydW5rCisxNzQ1MiBmNDg2MTc2ZjU2Zjg3MDg3MGFhNDcxZjlkNTQ3YjNiZmEwNWI1ZWE1IGxlZ2FjeS10cnVuaworMTc0NTMgNjlmOTZiNmNhZDI5MmI0MDYwZjEyYzQzODU4ODdjNDkwMGYxZTRmOSBsZWdhY3ktdHJ1bmsKKzE3NDU0IDQ5YTA0MTMzMDQ2MWNlODRhODQ1ZTBlYWE4ZWZkNGVhMjhiMTFjYWMgbGVnYWN5LXRydW5rCisxNzQ1NSAwMTRjZjZkMjkzOTg3MmRhYWUyYTgxMGU4YTAyYjJlMTkzOGE0ZmEzIGxlZ2FjeS10cnVuaworMTc0NTYgOGU1Y2EzZmJjZGI2NDYzMmI5NTFjMjQyNmI0YWZjNjkwODRiZjBlNiBsZWdhY3ktdHJ1bmsKKzE3NDU3IDI0ZmJiZjEzZGFhNWJkNjc2ZTNmMzE4ZDRlYThjNzMzZWMyZjA1YWMgbGVnYWN5LXRydW5rCisxNzQ1OCA4MGE3ODIwODZhNTdmMTliN2MyZTZhYmNhYWU4ZjhlMTkxMTYxNDMyIGxlZ2FjeS10cnVuaworMTc0NTkgZDI2MDlkNDMwNGVmYzVjYWNmYzczMGQ4NWE4Y2NhOWUwMjQwNTcyZiBsZWdhY3ktdHJ1bmsKKzE3NDYwIDhhZDliZDljYTYwYzAwNGFlY2I3ZWU4YmFiNDk0MGJmYWNkZmVkOTAgbGVnYWN5LXRydW5rCisxNzQ2MSBmMmZjNjZhNjE1M2I0MDU2ZTYyZDlhZWU1ZjEwYzg5NDIxMzYyYzBhIGxlZ2FjeS10cnVuaworMTc0NjIgYWM1ODNlNmEzYzhiNTFhNWYyMGI2MzU4NmIwNjU1OWQ0MmEwM2FmMiBsZWdhY3ktdHJ1bmsKKzE3NDYzIDE0MmE5MGVlYThmNGExODkyMTY5MTQ3YjEzYzkxZGIxMTAzZDUxMTIgbGVnYWN5LXRydW5rCisxNzQ2NCAwYjYzMzMyNThmNTQ3ZDFlOTAwY2RkMjdkNmQ5ZTI3M2Q5YWY5MDdlIGxlZ2FjeS10cnVuaworMTc0NjUgMTNjNzNhMjE5Y2IxMWQ5ZWUzNzc4M2Q0NzE1NTAyNTBmYWMyY2NmNCBsZWdhY3ktdHJ1bmsKKzE3NDY2IGRjYjkyNmU3Mjk2ZWMwYWQyZmM0YmEwM2VjMTQ1NzYwNjNlYzlhN2UgbGVnYWN5LXRydW5rCisxNzQ2NyAxZTZjMDQ0ZDhlNTk4NTE1N2Q2YTBkZjZiYjUwNzc1MzE4NTcxNGU1IGxlZ2FjeS10cnVuaworMTc0NjggNWE1MTJlYzhhN2FkZTI4ZDllOWMxNWJjOGVkNWU5NTI1OTk1NTE5NSBsZWdhY3ktdHJ1bmsKKzE3NDY5IDMzZTJlZjMzOWU1MGQxOTEzZDVmNWNiNGNkMjYzMzIyOThhZWRjZWMgbGVnYWN5LXRydW5rCisxNzQ3MCBjNGQwNTk4NWM2ZjMwNjljOTEyZTYxZjUwNzFmYWYzMTZlZjBhM2RlIGxlZ2FjeS10cnVuaworMTc0NzEgMjg0NTA4YzY1M2M3YzNlOTMxYjFiZTIzYzFjNTU5ZjU2MjMyYzA2NCBsZWdhY3ktdHJ1bmsKKzE3NDcyIDlkNzk4YTc2M2QyNDE3OThkNzBmMDUyZDE2NTM3Y2U1ZDg4OTFhNWQgbGVnYWN5LXRydW5rCisxNzQ3MyBjYjc2MzgzNWIxNzYxZGE3ZTcxZWY3MzFmNzllYmIzNTQ1NGNhOWE4IGxlZ2FjeS10cnVuaworMTc0NzQgNGYwNjlmNWRmYTdiOTc4MGIwYTUyYTY2ZGNmNjZhYTE0NWU4NDAxZiBsZWdhY3ktdHJ1bmsKKzE3NDc1IDRhY2NjNjNkNTZkYzU2Njg2NDgxNTc0MjhlMDBmZDIwMjBkNTE4OGYgbGVnYWN5LXRydW5rCisxNzQ3NiA0MWFmY2QwNjlhNmM1MTg0ZDAzOWU5MGVkNDQyMzQ4YjIxNzFhMDRlIGxlZ2FjeS10cnVuaworMTc0NzcgNDZmNzYyYTYxYjk5NjMwMDUyMTMxMTVhZGU1NTVkMjMxMjhiODIzOSBsZWdhY3ktdHJ1bmsKKzE3NDc4IGFhYTFkYzE2MWNlM2QyZjMwYjFjMzgxNTU2NDA0ZGM5NjA3ZTQ4MzUgbGVnYWN5LXRydW5rCisxNzQ3OSA5NjE4NjBkNmJlYTkzYmE1NGY0MTJlNDUyZTQwNjFmMzE2MmQwZmExIGxlZ2FjeS10cnVuaworMTc0ODAgYWYzNmJhNTA2MWY2ZTg0NTM4OGVmMzI1OWVkMGVlMWFhNzg3NTY2NiBsZWdhY3ktdHJ1bmsKKzE3NDgxIGZlNDdkMjM4YjUwZGUyNTJjMGQ4ODIwNzRhNjczMTRkM2Q3NDFiNjkgbGVnYWN5LXRydW5rCisxNzQ4MiA0MDU5NTAxN2E5OTJlNTUyZTNiY2FlM2U5YTNiYTNhNzNkYzkwZDhlIGxlZ2FjeS10cnVuaworMTc0ODMgNzIxMWZiZTBkYjlkODcwOWI4MmEyMGZjMmM4OTlmZjBmZWJmYjRiMyBsZWdhY3ktdHJ1bmsKKzE3NDg0IDlkOTlhMmRmNjc1ZjQ5NmFiNGIwNzZhZGU5MjgxNzNiMDAxZTJiMTYgbGVnYWN5LXRydW5rCisxNzQ4NSA3ODljNWI2YzBmMDlhMDk3OWM1OTI0ZmUxMTBlYjA3YTZlYjU4MmVhIGxlZ2FjeS10cnVuaworMTc0ODYgM2NkMjE3NGVlMTBkMTE2MjIzNDUzNGMyNWQ0NmM0ODAzYTY3Yjc5MiBsZWdhY3ktdHJ1bmsKKzE3NDg3IDRkNmE1ZTVmZTk4ZGM4OTEwNjhkNGU4MmI0MjEwZjk3OTg4YzVkZTQgbGVnYWN5LXRydW5rCisxNzQ4OCA3ZDBlMzQ1MGVlNDEwNzQ2YTQ2YTY4MjdkNTAxMjg3ZmY5Y2UzNWE2IGxlZ2FjeS10cnVuaworMTc0ODkgOGJkNTM0OWU3YWE4ZTA0YzYxNWMzNzM0NDNiMDI2N2U3YTYwOTgxMiBsZWdhY3ktdHJ1bmsKKzE3NDkwIGRiOWVhNWI1ZjMzN2U3ZjVmMmFlMjZjM2E2YTMyN2QwNThhZDM1NTQgbGVnYWN5LXRydW5rCisxNzQ5MSAwYzMwM2EyMmQ5YTQ5NzExOTExNGQ2MzZlMTQ2NzkxMzExYzk1YmQzIGxlZ2FjeS10cnVuaworMTc0OTIgMzczOTdiZDFmOGE4ZGI0YjE4NmYxMDE1NTI1NDg5MDU5NDk4ZjA5MyBsZWdhY3ktdHJ1bmsKKzE3NDkzIDJlMTcwYzJmNjFlMTM4YjBlN2I1YWU4ZWYyZmY1NzA1MTEyMjVjZWIgbGVnYWN5LXRydW5rCisxNzQ5NCAxMzM2MjRhYmM1MjVhZWNkZWJmM2ViNWUwYTI3OGRkNWNkN2IyZTk1IGxlZ2FjeS10cnVuaworMTc0OTUgM2ZlZmVhZmEzZjRhMGY1YTJhNmU2YjM0NTU5MDhkMDMzOTcwNzI5NyBsZWdhY3ktdHJ1bmsKKzE3NDk2IDhhN2Q0N2QwNzk4MTIyYjRlOTNhNzg4YTBkNGU5YTQxYmZmOWNhY2IgbGVnYWN5LXRydW5rCisxNzQ5NyAwOGUxYzNjNDFlNjA3ZjQ2MWZlYTNhMDAxOWI3ZDI5Y2QyMTkyYjk2IGxlZ2FjeS10cnVuaworMTc0OTggYjk1NGMzM2YwYjRiMGNkNzkzNGYwYTkyMmE3ZjcyYmE3NTExNzIwNSBsZWdhY3ktdHJ1bmsKKzE3NDk5IDY2MzdjMDkxZmY0NGYzNjJiODkzZDFhZmI3ZjdlOGRjM2FlZjQ3MDYgbGVnYWN5LXRydW5rCisxNzUwMCAyZDMwYzM1ZmVlYmU1MDMxYWU4NzU1MWUyZTgxYTAzOTkwZTFjMzFiIGxlZ2FjeS10cnVuaworMTc1MDEgMWI4MDY1NTM5MDlmNWRiYmYyMjQ2ODI2YjgxOWNhOWU2NjBmOTQ5NSBsZWdhY3ktdHJ1bmsKKzE3NTAyIDNiNzBlNjAyOTlhMzE4Nzc1MDYxMjViYjY5YmY1M2FkZjE5ODI4MWQgbGVnYWN5LXRydW5rCisxNzUwMyAxNWNiZTM5OWE5YzNiNTg1YzIwNDM0OGQyODE0YzM4OTBlNTljYWUxIGxlZ2FjeS10cnVuaworMTc1MDQgMWVjNmM2MzM0N2VhMzgzM2UyNzdhNTZjYTJhYmVhNGI1NGVmYWZhOCBsZWdhY3ktdHJ1bmsKKzE3NTA1IGVkZGEzNTNiZGUxMmExZGI2YmU4MjA3NmY4MDViMGIyNTQzYzljODkgbGVnYWN5LXRydW5rCisxNzUwNiA3ZmM0NTY5ZDk2MjUwNzA1MmNkNmIzMzdlODQwZjQ0NGNkMGJjZmY3IGxlZ2FjeS10cnVuaworMTc1MDcgZjRmMzg0MWEyNmVkZDE0YmJjNDY5MzI2NGUxOTdmMDVhNWUzYzgxMiBsZWdhY3ktdHJ1bmsKKzE3NTA4IDNkNmZlNjRiY2QyMThhMGM0Y2U3YjJlZWExYjZiM2FhNjNhNWQ4ZjMgbGVnYWN5LXRydW5rCisxNzUwOSAwYmQ3NDZiYzc2MjdmN2Y0MDdhZjAxNDdiYjAzZjJkYmU1NmY3OWQyIGxlZ2FjeS10cnVuaworMTc1MTAgMDIyODkxNGUwYzVmMGY3MTBiNmRiMjQ0MGUzZjQ2MzczZjYwZmE4ZiBsZWdhY3ktdHJ1bmsKKzE3NTExIDYwMDI5ZTNlMDVlZWE4ZTFmZGEwMDEyOTc2YTk2MjU5OGJlNDVmMTYgbGVnYWN5LXRydW5rCisxNzUxMiA5NDY3MDllODJiZTAyZDcwNjFhMDk2YzZkN2VkNjY4MzAzOGMzYzQxIGxlZ2FjeS10cnVuaworMTc1MTMgNjg2ZDNjY2FlYjRhN2UxYTAzMTI0MTQ2ZGRlZGMxNTJjMmFhNzY4ZiBsZWdhY3ktdHJ1bmsKKzE3NTE0IDY5OWZiYmJhMjlhNzMwYzhhMDgzODE5Y2ZmNmRhNmJjZWYxMDA1NzEgbGVnYWN5LXRydW5rCisxNzUxNSA5ODM1MDJiMmNkNDNhNDNmOGFiN2RhYWVjODczOGZjNzA0N2I5Yjk2IGxlZ2FjeS10cnVuaworMTc1MTYgZTdmNzNkMzVlY2Q4YzJmODJmMWI2NDkyZGJjY2RkZGFhZjIwMGMwNSBsZWdhY3ktdHJ1bmsKKzE3NTE3IDJkNjE4OGMyZWE1NmYxYmFmOWVhOWY3YTljMTVkMjJjMWRmNmRkOTIgbGVnYWN5LXRydW5rCisxNzUxOCBkMWVkMzA4MjU4MWE2MjgxNWY0ZjFmNjk5M2NjMmQ2MjA1M2Q5YjgwIGxlZ2FjeS10cnVuaworMTc1MTkgZjgzODQwOTg2MjY4NDQxZjFiYTljYmExMTE0MWE1YWJmNzI2NjNmNCBsZWdhY3ktdHJ1bmsKKzE3NTIwIDZmY2Y1YTcwNTMzY2YwY2VjZWI5MjAyMmY2ZTc4NmQ2Mzg1NTZhMWEgbGVnYWN5LXRydW5rCisxNzUyMSAxNTcwODU0OTExY2UwNmU3ZmZmZTRlMGVhYjUzMGM4ZjNjZDZhODUwIGxlZ2FjeS10cnVuaworMTc1MjIgMDgwMDU0YjEyMzU2NWE3NGIzYTVmNWNlZWQ5YmM5OWUyNGZkN2U4YSBsZWdhY3ktdHJ1bmsKKzE3NTIzIDQyYzQxZGFkZjI5MzZmZTQwYzYyOWQyMWE4NzQwOTgyN2Y0M2M2OWQgbGVnYWN5LXRydW5rCisxNzUyNCBhNWI0MDI5NWRjMTliYTdlMjg3OGIzZmE4ZDhlODJlMmM2OWUxZTVjIGxlZ2FjeS10cnVuaworMTc1MjUgOGRiODYwNmQ4NGVhYTBhNTZjMjEzZGU1NWY2OTFlYmVlZWZmOGVlZCBsZWdhY3ktdHJ1bmsKKzE3NTI2IDBjNmI5ZGUxOTEwMGY0OTM3MjIxNzBiYmNkNzg3ZGIwNjNlMjMzODggbGVnYWN5LXRydW5rCisxNzUyNyAxYjIwYWQ2ZWI1MDE5NDBkNzMxYzg2NThkZjIzMzY0YTViMTY2OTRiIGxlZ2FjeS10cnVuaworMTc1MjggZGY4ZDU3NWQ5NjdkODhkMDU4MTFiZDZlZDQ2MGJiZmE2NzFkODFkOSBsZWdhY3ktdHJ1bmsKKzE3NTI5IDc1NmM4YzY1MzVmZTJkZGVjMmYwZWRjZjhhMjRkNDlhMDgzOWNmY2EgbGVnYWN5LXRydW5rCisxNzUzMCAyMjAxMWQ5NzY5MTczODRmNjg5OGYxMDliOWJjODA2MTU3MTE2YzFkIGxlZ2FjeS10cnVuaworMTc1MzEgM2M1ODcxNmZhZmRlOGIzZjczZjZhOGFlN2Q2ZjgxOGY2MTQwM2MxOSBsZWdhY3ktdHJ1bmsKKzE3NTMyIGE3ODEzYWQ3M2E0ZWRlZWQwMzJjYjVmOWEzMzAxZGMxOTFkZTMxM2EgbGVnYWN5LXRydW5rCisxNzUzMyA5NGNhODdhM2U1ZWVlMjhjNTgwZmE3ZGVjOTY0YzVjMDBiNWMwZTZmIGxlZ2FjeS10cnVuaworMTc1MzQgMDg4MjMwOTlhZTYyNmUxMTIyYjRiOTQ2MmUzZTk4ZjYyZDFiYjFmMSBsZWdhY3ktdHJ1bmsKKzE3NTM1IGUyZDYyZDc0N2Y3YTgyYzE4M2NlN2YwNGM1MGY5YTlkOGZjODMyODcgbGVnYWN5LXRydW5rCisxNzUzNiBlNDMyYTE4NWY0ZGI4MzMxYjMxZWRhNmMwZWY4NjNiMzFlNzc1ZjMzIGxlZ2FjeS10cnVuaworMTc1MzcgMjk1MTI2NDMzODU2Y2QzMzNhMjNhMDJjMWJiOGY4YTFiNTdlNjYzMiBsZWdhY3ktdHJ1bmsKKzE3NTM4IGVkZjFlMTVjNjcxYTA4NGU1MzhlMTFiYWRhZTg2MWZlMDlhYmM4ZjcgbGVnYWN5LXRydW5rCisxNzUzOSBjNTJmZjAyYmJkNzA0ZmU0N2M5Y2Y1MmI2NDU0ZmY5ZDQzNTU2YTliIGxlZ2FjeS10cnVuaworMTc1NDAgZmFmM2U3MzQyNTRkZDZmNjExYWZjYmI4MDRjNmY4ZTVhMWVhYWIyNCBsZWdhY3ktdHJ1bmsKKzE3NTQxIGUzODRmNTAxNDljOTQwNDQ1MDhhZTkzNTdmMGY3MDlmMmVhZGUxMDkgbGVnYWN5LXRydW5rCisxNzU0MiBlODZmYTdlODUwZjE0MjBiY2I1NDQ4YjkyZjFmYThmMWY0NzM2YTk5IGxlZ2FjeS10cnVuaworMTc1NDMgZDZmZmI2ZDdmZThhZDM2NWZjMWM1NWQ5OTQ3MTFhMDc5MzJjMDAyOSBsZWdhY3ktdHJ1bmsKKzE3NTQ0IGNlYzAwM2JhM2M3Yjk3OWM3NDAzYmYxYjg4ZGUxOTc2Mjk3ODIyNjIgbGVnYWN5LXRydW5rCisxNzU0NSA2N2E0OTEzYzA3N2ZlZmM5MTJlZjdiMzFkY2FmZDJlYzM3Y2UxY2NiIGxlZ2FjeS10cnVuaworMTc1NDYgYmFiNGZhNmMzYzI0MWI2YTlkYTRhM2Q2YzI2MTBkOWZkNzBmOTYxOCBsZWdhY3ktdHJ1bmsKKzE3NTQ3IGM2ZjQzYzYwMzZiYTEwNTEzN2JiNzEyZDQ1MTcyMmRlYTZkZjFmMjggbGVnYWN5LXRydW5rCisxNzU0OCAzNDExMDUzOGIxMTg0NDg1NWQ4YzEyYTE0OGY1NzJmODA2YTA1MjkyIGxlZ2FjeS10cnVuaworMTc1NDkgMmI5YjE1OTY1OTUxNWY4ODllYTU0NmExNmJjYmI5NzNlMGMwNDlhNSBsZWdhY3ktdHJ1bmsKKzE3NTUwIGVmMzcwNzhkMjcyZDY0MmMxMTA1NGVkNWNkZGQwYzJmMWI0OGVkYjggbGVnYWN5LXRydW5rCisxNzU1MSA4NTAzOGEwMjRiMTkxYTg4ODFhZGM2ZmRkZDM0OTY1OTJiYTMwMzllIGxlZ2FjeS10cnVuaworMTc1NTIgOWUzZGM3YzQ3YWZhMjlmMTA3NTlmYTMxYTkxODk1NDdlMzEzM2E4ZiBsZWdhY3ktdHJ1bmsKKzE3NTUzIDQwN2NlMWM5OWU5OGUzMjkxNTY2NmQ0MWU1MTEwNjg4ZDdkYzY2NWIgbGVnYWN5LXRydW5rCisxNzU1NCBmYTgyODIwYmQzZmYzZGQzYzI3YTc3ZWNlNjk5ZGJhYTAwODY4ZTU0IGxlZ2FjeS10cnVuaworMTc1NTUgOTVmZTA4M2M3OGVlNWUwYjQ4MzJkNDQ0YjEwMjdkZGEwZmJmZDUzMyBsZWdhY3ktdHJ1bmsKKzE3NTU2IDU4MWQxZTc3ZTM1ZTc1ZGVkMzM3YmY2Njg1NjcyMDAxMjBiNzc5ZGIgbGVnYWN5LXRydW5rCisxNzU1NyA5MWRkZTdiZmZlN2Q5ZTNjMjA5YWE1NjVjNGQyZmIxNDU2NWMyMTE5IGxlZ2FjeS10cnVuaworMTc1NTggNDM5MzZhMjVlYWYxMDAzNDg5MjYyNGM2NGU3ZGQ0YjVhODU5NmMwZCBsZWdhY3ktdHJ1bmsKKzE3NTU5IDA0YzM5OGU3NDg3ODljN2M0MDE0ZjJkYjQyNmRkNDQzZjZlYWM4ODkgbGVnYWN5LXRydW5rCisxNzU2MCA0NzEyZjViOGYyNzlhZjJhODdmOTUxMTA4ZTQ3YmM4ZTUwMTQ1NTMwIGxlZ2FjeS10cnVuaworMTc1NjEgZmVmOWI4OWFkMTYyMmFlOTdhYzYxZjUxNTE4ZTM0MWYxYTRkZjExMCBsZWdhY3ktdHJ1bmsKKzE3NTYyIDJmY2I5OTBiOTY1Zjg2ZjVmMmFhNTJiNDc1M2ExNTI1ZWU1ZjViNDkgbGVnYWN5LXRydW5rCisxNzU2MyA4OWIyYWVlNDNlMGJkNTI3ZGYyZTZiYTc5ZmI0NmUwNTAyNzM2OGNhIGxlZ2FjeS10cnVuaworMTc1NjQgZTAyNDQzODUyMmRkNzBiYjM3Y2FlZGY1NjRiOTRmNmI4Yjg0YzE2ZCBsZWdhY3ktdHJ1bmsKKzE3NTY1IGFjNmRmMDQ5NGM1ODI2YmJiZjgzYWFkMDJkZjE3MDlhYTU0M2JiYTYgbGVnYWN5LXRydW5rCisxNzU2NiAxOTIyM2JiZjFhYTE5ZTU1MGFlNWEyZTJiYTAzMjM2N2I1ZTZhMmRmIGxlZ2FjeS10cnVuaworMTc1NjcgYTY5NzA0NDlkZjQyNWE1ZjRkYzUzYzc1OGIxMDA5YTk2NWVlOWU3NiBsZWdhY3ktdHJ1bmsKKzE3NTY4IDU4YjgzMmI4NzQ1ZWUyZWU2M2ViNmU3ODgxZWVkZDhmNzk4ZmZiMjMgbGVnYWN5LXRydW5rCisxNzU2OSAyZWM1OWExMWQzYzYxZTMxNmFmMjI1ZjYzZmEwNGM5NTUwNWE0ZGRkIGxlZ2FjeS10cnVuaworMTc1NzAgODMwZThlY2U2NTYzOWI1M2JkZTU2YWQ1MDVmOTQwZWZkYWQwZWUzNSBsZWdhY3ktdHJ1bmsKKzE3NTcxIDVhZTFkOGE5ZjFkZDhlZmZiNzNlNDYyN2E2ODYzOWYxODdmM2JmNDAgbGVnYWN5LXRydW5rCisxNzU3MiBjM2EyN2I2ZWJlMWJjYjFmZTAyNWIwMWVjMjk5YjVlMmFmOTVjYmE3IGxlZ2FjeS10cnVuaworMTc1NzMgNjljYTQ2YWY0MzZhNmMyM2I0ZTRiZjQxYmE3YzNkM2VkNTJjOWJjOCBsZWdhY3ktdHJ1bmsKKzE3NTc0IDg3MDIzNzA4OWJhMjhlNzYzNTA3NTY3NjJlMjljMmU4YjJkMTAwOGYgbGVnYWN5LXRydW5rCisxNzU3NSBkOGI3OWUzOWM0N2UxNDQyZmYwOTlhMTMxNmJiZjIyMDk5YmFlODEzIGxlZ2FjeS10cnVuaworMTc1NzYgN2Y0OWM1ODY0Zjc3NDFiNTBmNjdkNjk5YTQyZDM4NzlmMjRlOWY0NiBsZWdhY3ktdHJ1bmsKKzE3NTc3IDRkMmU5Y2YxZWIyMGI2YmRiYTIwZGFmYTAxZmYxYmNlMTlkOGNkNjQgbGVnYWN5LXRydW5rCisxNzU3OCBjMDRhYWMxODY1NmFiMjk4M2ExOGJhOWFlMzQwZDQ2MTQ2Nzc0NTZiIGxlZ2FjeS10cnVuaworMTc1NzkgYTZmODAxM2JiYzNkMTZmMGE1OTRlYTNjNzNkMmJhODNhNGY5MThlZCBsZWdhY3ktdHJ1bmsKKzE3NTgwIDA2YmI1ZDVkODk5MjdkNTY1MWNmMDE5NzkwMDU5ZjU0MzUwZDgzMTMgbGVnYWN5LXRydW5rCisxNzU4MSAxNzY2NjBmZjBjOTU5NjY5NDg5MDg4YzQyNDQ1MTMzNzI5NzY1ZDU2IGxlZ2FjeS10cnVuaworMTc1ODIgYmY0NmYxODVjNWU0YzBjMTYyNmZkYWM0NzJjNDUzYWQzM2M5NGM5OSBsZWdhY3ktdHJ1bmsKKzE3NTgzIGUyYzAzYzMwYjA2ZGRmYzZmZWFjYzgzZGJmN2ExMTlhYjI4M2E4ZGMgbGVnYWN5LXRydW5rCisxNzU4NCA4NzQ5Y2M4NDc5NzAyMjY1YTEyMDEwNDk2ZWU5ZDYxZjJkNTQ1NDE0IGxlZ2FjeS10cnVuaworMTc1ODUgZmZjMzAwZTlkODY3YmQxZDk4NDA3ZmQwNzE4ODkxYTYzYTcxZjFjNyBsZWdhY3ktdHJ1bmsKKzE3NTg2IGYxYWJlMDNiMmYxNjg0NjcyOThkYjBkMzVmODM3MTk3YmYwMmFlNTUgbGVnYWN5LXRydW5rCisxNzU4NyAzMzZhNjE3OWUwNTk3MjRkZWY4MDJkNTdhY2EzZDhlN2EwNmU4MTg3IGxlZ2FjeS10cnVuaworMTc1ODggODE0ZjQyMWUwMzI2NzMxNmQ3YjdkYTQyNzhiMzAyZDgyOGFkODE4OCBsZWdhY3ktdHJ1bmsKKzE3NTg5IDhhYTExMmY5ZTEzMGMzMmQxN2ZiODkxODQ4ODg4OWEwYzk3NjA5ODkgbGVnYWN5LXRydW5rCisxNzU5MCBkNDZhMDQzNmQ2ZTE5ODE3ZjNmZTA2ZjNhMDdkZGZkN2NkOGE5OGJjIGxlZ2FjeS10cnVuaworMTc1OTEgMmI5YTg5MDE2MmIwNTM4ZTQ3NDJkM2I0ZTA0NzJlNjRjMmFlZmQ5OSBsZWdhY3ktdHJ1bmsKKzE3NTkyIDdlZDA4MGI4Y2RhY2E3NzlhOGY3ZGNhZmRjNzJjZmM2ZmU2ZGM4ZmQgbGVnYWN5LXRydW5rCisxNzU5MyAyMjE0MDYyNjk1ZTc5OWU2OTYzNjVjZTNiY2JhOTkwMGQ1M2Q1NjE4IGxlZ2FjeS10cnVuaworMTc1OTQgNTcwNDM3MzQxYTA5ZDA3ZmZiNjJkNmVhY2QwZWY3N2E2ODVmMjQzMyBsZWdhY3ktdHJ1bmsKKzE3NTk1IDhiYjZkY2E2NmVjZGM0OGE3ZTVhNGI5ZmZiNmY0NzRiMDFmNThlMTEgbGVnYWN5LXRydW5rCisxNzU5NiBjMWRlMmMzZTQ1Y2E2NDY3YTIzYzllMjc4NTkzYzg4YmRjMTljMjMzIGxlZ2FjeS10cnVuaworMTc1OTcgZDczMmEzYTEzOThlYjA4ZmJhOWM3N2RhNmEzZjU2NjQzYzM3M2JhOSBsZWdhY3ktdHJ1bmsKKzE3NTk4IDhkYjA5NmI3ODJmOTczM2QyYmRlZWVlYTE4OWQwNjZiMDBiYWI0NjcgbGVnYWN5LXRydW5rCisxNzU5OSA0Zjk1Y2YxYjI2NjRmN2M3MmI5MWE0ZjZiNDMzNGYwM2YzNDQ5M2U2IGxlZ2FjeS10cnVuaworMTc2MDAgNzA5NDI3NjdkYzgxMGM4YmU1M2YwNWZlNzQzOTVkN2VlZTc5YjAzNCBsZWdhY3ktdHJ1bmsKKzE3NjAxIDAyOWZmNDZjNzk4YzdjMTE2NWIzZWM0ZjAyODU0MzQ2ZDMwZGYyZjMgbGVnYWN5LXRydW5rCisxNzYwMiBlMTU0ZTc5ZjRkMjJiZjk2YmQxNDM1NDdmZWM5OTg2MDdjNmRiNzVlIGxlZ2FjeS10cnVuaworMTc2MDMgOWY4YjIxM2I4NDE1NzcxMmUxNjg1MzE1M2NmOWM5ZjZlNzAzNWY2MiBsZWdhY3ktdHJ1bmsKKzE3NjA0IDZmM2ZkN2EyYTdiY2IzODNiYmEyNjNiMzI5ZWEyZDBhZGE5ODRhZGQgbGVnYWN5LXRydW5rCisxNzYwNSAwMGU4MTcyYWMwY2I5NTRiNTQ4NTZiODRiNzJiYTM3ZDlmMTU1ODRhIGxlZ2FjeS10cnVuaworMTc2MDYgZjg5ODRmMDNkZTIwMjUzMTkxZjVhNDkwMzJiZWEzZjZkM2Y2ZDk0YSBsZWdhY3ktdHJ1bmsKKzE3NjA3IDQ2YTY5OTA3NjlkMTcwYWI1NjYwNmY2MDAzYmRjMjI5YWNjMWY1MWIgbGVnYWN5LXRydW5rCisxNzYwOCA5ZmZjZjc0OWMxNWE5ZmJiYzY1ODgxNWNhZWJkZWVhZWU2YTM1ZWFjIGxlZ2FjeS10cnVuaworMTc2MDkgMmY3N2NiODU0N2ExYzAxNDJmNGExZTZlZTBmNDMzZjVlZTEwOGI2MSBsZWdhY3ktdHJ1bmsKKzE3NjEwIDkzMjA3MDc2ZDYxMjE4ZDBjZTlkOWY2YjBmNDc0MTBjYjU1NGRmYTggbGVnYWN5LXRydW5rCisxNzYxMSA2ZTkzMzFlNjhhM2JkNzhlOWY4NDVlNTJhYzU0M2UyYjRjNTdiN2JlIGxlZ2FjeS10cnVuaworMTc2MTIgYjRlYTU3ODcwZjJhYWM1OWQyMGNmZDAzMzg5M2E2Nzk2NWJmZDUwOSBsZWdhY3ktdHJ1bmsKKzE3NjEzIGE4NjU2OGY1NDM3NWRkYzQ4MjUwNWFmNzQzMTdjZTBmZjNhNTI5YWYgbGVnYWN5LXRydW5rCisxNzYxNCA1YTlkZmZmZjBkYTJiNDZkMDMwMTI5MjBjZDM0MTk5MTI2YjE1NzNiIGxlZ2FjeS10cnVuaworMTc2MTUgYjU0NTFhNjg3MmEyOThhMTc0MGM0YzYyZWMxMDkzYzk5MDk1Mzc1MCBsZWdhY3ktdHJ1bmsKKzE3NjE2IGM1NjZhYzljNTJkNzkyZWNjZDViMGY4MDc4YjdmNDE1YmRjMjUwMTQgbGVnYWN5LXRydW5rCisxNzYxNyA1ZjYzOGEyOTk4ODhjNzA0ZDdlNDJkZWU1OGQ4ODc3YzlkNjM2YWI5IGxlZ2FjeS10cnVuaworMTc2MTggZDI3MDU4NDA0OTgxMDYzNjM3NGE2MWE3MGU5ZDU4MzM5NDA1MDQ1NiBsZWdhY3ktdHJ1bmsKKzE3NjE5IDgyOGVmN2VjZDFmNzZjZDgzM2FjOGVlZWY5MTMwOTllYzE5NjY1NTEgbGVnYWN5LXRydW5rCisxNzYyMCA5ZmU1YzgyYzRjOGEwYjhjNGFlNDdiNmM3YTQzZDE3MTdiMWZkNzg0IGxlZ2FjeS10cnVuaworMTc2MjEgNzI4NjBlZjAzMTcxNDg2NzFmYWU3MGEyZmViZmFjZjYxYWVjNGYwZCBsZWdhY3ktdHJ1bmsKKzE3NjIyIDYwY2UzN2YwNjZkOGNlYTEwODJlYzZlNmQyZGFlYzM1ODVhNjQ4ZmIgbGVnYWN5LXRydW5rCisxNzYyMyA5MmFlZTMxZDc2MTM4YmE3NGRkODgyOGEyMmIyMmQzMzBiZDhlZTBmIGxlZ2FjeS10cnVuaworMTc2MjQgYWExOGU1MjM5YjQ2OWMzYmYyMDFhZTViMTdjYTgxYTdiYzQ0ZmU0MCBsZWdhY3ktdHJ1bmsKKzE3NjI1IDNmZmFjZjFkYzhmMDVmNmU5ZjkwZDJkMDc2NTQ5ZDE3YzUzNWI0NmMgbGVnYWN5LXRydW5rCisxNzYyNiAxMzMwMDc2NDZmYjQ3NzBmNzI0YzhhYmQwNWMxOGFkZjdjYzRjMTViIGxlZ2FjeS10cnVuaworMTc2MjcgNjQ4NjNjNTZjZThlM2U5MDkyNDUyMmNkZWQxYTg1Y2YyODRlOWQ2NCBsZWdhY3ktdHJ1bmsKKzE3NjI4IGM1ZWMwYjExZjhjOTU4MzhmZmYxZDYzNWY1ZTE2OGI2NDMyYjUxZTAgbGVnYWN5LXRydW5rCisxNzYyOSA1MjE3NGIwMDJmMWZmMzdmMzBhZDU1MTBjYmZhYzkxMjU3YjM4OGY2IGxlZ2FjeS10cnVuaworMTc2MzAgNzQ1NmM5N2M5OWVmYTA2ODY0NmQ4YmRiNzgxNDc0YWFlNjczNTE2YyBsZWdhY3ktdHJ1bmsKKzE3NjMxIDE3OTg3NzBjYTM2YjIwYWM3OWVjOGUwZWU3M2ViOGQyY2RkZWJmMGEgbGVnYWN5LXRydW5rCisxNzYzMiA2Yjc3MmM1MjdjYTc0Y2ZlNzBiOTYxYzg1NWFhZTJhZDYwZGQ5MmYwIGxlZ2FjeS10cnVuaworMTc2MzMgOGZhZTNmOTExNjFmOGViNGRiMmQ1NDQ4ZTg4MDIyOTY0ZjdlZDg2OSBsZWdhY3ktdHJ1bmsKKzE3NjM0IDdiYTQ5M2JjMjRhMGMwZjgxZjQ2OWZmYTJhOWQ2NDIwOWRkNGFmMmMgbGVnYWN5LXRydW5rCisxNzYzNSAwNjRlNDM0ZTc0NGYxNzI0M2YwZjI3MTM2NzA2NjJjZDczM2NhZjRmIGxlZ2FjeS10cnVuaworMTc2MzYgMDgxNjcxY2VmN2MxYjZkZmQxODc2MmRmNmZjYTMzYzQ3MzI0NWZiOSBsZWdhY3ktdHJ1bmsKKzE3NjM3IDNjMDFmOTIxYzQ1M2VjMzY4NDY0NzAzMzk1ZDUzOGIxNWQ4ZjBiMTcgbGVnYWN5LXRydW5rCisxNzYzOCA3N2VkZGRkYmI3Y2NmOTQxODc2ODg3ODIzZjViYjA3N2JmNjNjNDFhIGxlZ2FjeS10cnVuaworMTc2MzkgMDk4NWRkZmQ0NDJiZTliMDg4MjYwODEzYzc3ZDE4MGI3NzE4ZTI0YSBsZWdhY3ktdHJ1bmsKKzE3NjQwIGQwYjc3N2VjOWUwMjdhZGMxYmZmNWUyNDQzMzA1MWI2OWQ5NTdjZGIgbGVnYWN5LXRydW5rCisxNzY0MSBhZDBkOTMyY2NlMzJkNzYzZTdkZDk4MTQzOThmMTQ3ZmFjNGJiMjFlIGxlZ2FjeS10cnVuaworMTc2NDIgMWVkYjZiNmUzYjViNTk0MjM3NmU4ODFmNDgzZmJmZGQ3NjE3Y2M5ZSBsZWdhY3ktdHJ1bmsKKzE3NjQzIDE3OWUwOTgyMzhlODA5NjM5YmVlYzcwMzQ4NmZmZTIxMTM4NTZhZGYgbGVnYWN5LXRydW5rCisxNzY0NCBiZTJkZjk5MzVlZGQ4ZmExYmIxMDlkYzY4YTRhMWZlODRkYThjNjE0IGxlZ2FjeS10cnVuaworMTc2NDUgNDMyOTNjZjc1M2MxNWMwMWJmNTlhZGI3NTkxMzc4OTg4NTBiYTBkNSBsZWdhY3ktdHJ1bmsKKzE3NjQ2IGZmODhjNjRjZmYyZTUxOTVhMjFjZDhlMWM0MGZjYTNjMjk0OTg3NGEgbGVnYWN5LXRydW5rCisxNzY0NyBhZmJhZGFjNjBmZjc0YzhmMDE0MTFlZjkzY2QxNTcxNjNmNmM5MjJjIGxlZ2FjeS10cnVuaworMTc2NDggZmZkM2U5ZGE4OWIwZWI4ZjQ0MzE4ZTMxNjRjNWZjNGUxZDBlMDc2ZiBsZWdhY3ktdHJ1bmsKKzE3NjQ5IGMzNjAyYWU0OTg5MDY5ZDNhNTZjNjZjM2RiN2NjMWJmMWNlNzhkZTQgbGVnYWN5LXRydW5rCisxNzY1MCA3YzU3NGJmYTZlMTM4Y2YzZDJkNmE2MGU4MzE2MTZiNTE4MGFlNTBiIGxlZ2FjeS10cnVuaworMTc2NTEgZDY4MjhkZDlhOTI3MDU5NTEzODNlYzk0M2Q0YzJjOTBiZjU2YzgxNiBsZWdhY3ktdHJ1bmsKKzE3NjUyIGE5MGRhYzRiZjg4YTI0YTEwMGIwNmM3ZGQ1MWJjNDNiMzcwOGE1ODMgbGVnYWN5LXRydW5rCisxNzY1MyAzZTNjMmVmYzc5YzczYzAxYzljZWZjNzJkNjIzZTliMzlhMjVlYTY4IGxlZ2FjeS10cnVuaworMTc2NTQgY2Y5ZDhiZjU2ZDE0NTA3NWQ5NDExOTJhYjYzMjllODE4MjA2ZjMxYSBsZWdhY3ktdHJ1bmsKKzE3NjU1IGZjYTVmOGYxYThmNDcxZThkNDdjZGE5MjBmZWVlMDkzMTVmYzlhMGEgbGVnYWN5LXRydW5rCisxNzY1NiAyNTc0Mjk1NTQ1ZmY3YzE2MGQ5Y2EzZjZkODRhNTM2N2FmY2Q4MzhjIGxlZ2FjeS10cnVuaworMTc2NTcgMWQ3ODAzM2E1M2Q3NzJhMjc2ODBlM2MxMGVkMmE0ODQxOWMyOTAxMiBsZWdhY3ktdHJ1bmsKKzE3NjU4IDI5OTAyZjc3NDhmYTY3OGU5YmY0YWJkN2Y1NWQzMGE2OGY4ZDVlOTIgbGVnYWN5LXRydW5rCisxNzY1OSA3ZGEzNmY2ZmQ1NDRiYTc3ZjI1MWRlYTA5YTI3NzNkODEwYmNiNmI2IGxlZ2FjeS10cnVuaworMTc2NjAgNjk4NzNhMzBiN2M5OTczODQwMTU2ZGQ1NTQxMjkyY2VmMDZlZDlkZSBsZWdhY3ktdHJ1bmsKKzE3NjYxIDc0NjFlZGNkMjQ5ZDQ1MTI4NDU3NDc3N2RhMjY3MDgwYjU0YjA5OWQgbGVnYWN5LXRydW5rCisxNzY2MiA2ZGI2OTUyZDg4N2FjOWI1NzdmYzNjYWQzMDNhNDM3ODc2OTI0NmYwIGxlZ2FjeS10cnVuaworMTc2NjMgMDNlZWE3ZWE3ZTVjYmRiMmQyYWQ4MTVkMTIwZWQ0Y2FmODc4YWRjMiBsZWdhY3ktdHJ1bmsKKzE3NjY0IDRkMTBhMTM1NjhhYTNkOTUxMWE2YTI0MmYxZWJlODQzYmQzNzNlMDggbGVnYWN5LXRydW5rCisxNzY2NSA1MjNhMTJlZDMxZjBkZTNjMTc5MWQ3NDQ0ZmJiZjlkOGNlNzBmYTRkIGxlZ2FjeS10cnVuaworMTc2NjYgZjU2NTNhYWUxY2JkN2NjNzIwNTY1MWZlMDA0Mjg4MTc0ZjkwZGY4NCBsZWdhY3ktdHJ1bmsKKzE3NjY3IGQ1NDNkYWExNWQ3MTU4ODZkNmI2NjgyY2E3OWFjOTg0OGNjYzE5ZWEgbGVnYWN5LXRydW5rCisxNzY2OCBiN2ZiMTIxNmY2YjYyMjIyNzNlYjMxZGQxYjc5N2JhNGExZTY2ZGEwIGxlZ2FjeS10cnVuaworMTc2NjkgYjU2YTg4Mjc3ZThjZWY1OWVjMTliNDk5MTM3Mzg1MTY3MDkwYWI2ZSBsZWdhY3ktdHJ1bmsKKzE3NjcwIDRmZjg0ZTczNDU4OGZhY2QxODFlYmMxZGMxOTZmM2E4MWM4MmRjMTYgbGVnYWN5LXRydW5rCisxNzY3MSBiNDEzZTg3ZWVlZDQyMzczOTBhYjJhMzVlYzE4NjUwMjlmZDIxMTg0IGxlZ2FjeS10cnVuaworMTc2NzIgMGRkMjA0ZDkzNmUxNjM1MjI2Njg0YTc5ZTUyOTFlZjE0ZDcyZmYwMCBsZWdhY3ktdHJ1bmsKKzE3NjczIGM5NWM2NzZiMTg0MDcwMDQ1YmVhMTIxMGE5MGZiMzk3OWY5NmE4YTEgbGVnYWN5LXRydW5rCisxNzY3NCAxODJkODI0ZjJiNDczYmUwODM5OTZlZDc2NjIwNzA1MjYzNjBiMzI2IGxlZ2FjeS10cnVuaworMTc2NzUgMDc5NjM0MjFmYWZjYzlmZTU0NDg1MDEyZTFhYWIyM2RlZDQ0ZjQ2OCBsZWdhY3ktdHJ1bmsKKzE3Njc2IGM1MzY5NWYzZDg0MGQxNGFjMzgwZWFjOWVhNjBiZjEyNDE1ZWNiNjkgbGVnYWN5LXRydW5rCisxNzY3NyAzZTM5M2Y5YjEyOTM5MjY4MjA3ZTM5YjMwYTM2NWU5M2QxOWNkMDRjIGxlZ2FjeS10cnVuaworMTc2NzggNDk0NGUzODU5YTg2MDllZDM2MDdkNTM3NTY2YWM5YzkwYTM1ZjNhOCBsZWdhY3ktdHJ1bmsKKzE3Njc5IGExMDMzMjgzYTI1ZGM2MGJkZjU1YjFmY2EwNzczZGNlMDc3M2NlMmQgbGVnYWN5LXRydW5rCisxNzY4MCA5ZmQwMzBhZjJmZTAzOWFjZTRiOGI0NGI1MTM4YTRlNDBhMGFhY2ExIGxlZ2FjeS10cnVuaworMTc2ODEgOTJkY2VhMDg1OTMwNTg3NmZmMTZjMGVlMjhjOWYxMjAzNDA4MTgwYyBsZWdhY3ktdHJ1bmsKKzE3NjgyIGIxYTBmYjU1NDQ1NmNhZTBhMjY3MzYyMzU4NzFiOTBjNDAwNTI2MTcgbGVnYWN5LXRydW5rCisxNzY4MyA5Zjk2YzkyZjAzZTNiZTZjM2IxNjg3YWZiNzIxZTI2NzljYTI1ZmNkIGxlZ2FjeS10cnVuaworMTc2ODQgYjFmMjIwZjYzNmVkZDFlOGNjMDFjYTI4NzdkNGRmZTBlMWRjNTI2NiBsZWdhY3ktdHJ1bmsKKzE3Njg1IDA3Mjg4ZDJkYjU5NjQyNDZhY2EzOTZiNzRmNTZjN2ViY2UzMWIxYjcgbGVnYWN5LXRydW5rCisxNzY4NiAxYTFiNzk1ZjBjOWI5ZWRkMGQ4NDIxZTY5ZTU1ZjdlYWJlYzU2MmViIGxlZ2FjeS10cnVuaworMTc2ODcgNTRhZGI3YjRmOGM4NGRlOGRjN2JiNTNiZDg2NGU3ZDkzYTBiNTJkYiBsZWdhY3ktdHJ1bmsKKzE3Njg4IGVlODEzZTg0M2YzZTU3MGUzNmM3ZTk3NDQwZDAyODJiNmY5MDcyNmIgbGVnYWN5LXRydW5rCisxNzY4OSAxZDYyNzI0MmUyOWEyY2ZiNmFjZGNkZTg2ZDgxNGE5M2MyYTFhZjg5IGxlZ2FjeS10cnVuaworMTc2OTAgOTZkMzFhMTQzODU3Y2Y4YjVmMzU0OTRiNzgzMmFjM2MzMDZkNTVhMCBsZWdhY3ktdHJ1bmsKKzE3NjkxIDY3ZTBmZjRhYTdiOTc3ZjFhYjU2NWExZjVjMDNkNjNkMzA5YmFkZmQgbGVnYWN5LXRydW5rCisxNzY5MiBiNzc4N2E5MDUyZTNkMDgxZDAwZjY5OGYxODc0MzY5NWMxODVlYzc3IGxlZ2FjeS10cnVuaworMTc2OTMgNzZhYWQ1YjA2NTQzYWZjNzQ0NGNiN2E3OTZiY2I3NjljMWU2Mzc4MCBsZWdhY3ktdHJ1bmsKKzE3Njk0IDNiMGNhMGNjMzc1MGUyMjMzYTFiYzg0MGU5MjI4OWNjMzUyOGQ4YjEgbGVnYWN5LXRydW5rCisxNzY5NSA2MjVhOWE2OTU0NjliNWNjNGJlM2M5NTRiYjdkZGM1NTQ3MGRjZGYyIGxlZ2FjeS10cnVuaworMTc2OTYgNjgxODkyODU2NThmMjI4ODBmZjUxZGFjOTlkNjc1N2QxNWQ0ZDkwZSBsZWdhY3ktdHJ1bmsKKzE3Njk3IDQ2MGFiMTlhMzI4OWJiOWY3M2FmY2MxMDFlNWEyYWZmMWQ3NzQwOTggbGVnYWN5LXRydW5rCisxNzY5OCA5NGMyNDZlNjM5OWQyMjAxYTM4ZDFmNjkxYjE3ODQ4NWQ4ZTNhMGVkIGxlZ2FjeS10cnVuaworMTc2OTkgZTdkNjc4OTkwOGQ3MDkzNGIzYzkyZGFhMWExYTZkMTAwZTkxNDNmYSBsZWdhY3ktdHJ1bmsKKzE3NzAwIDg4ZDNhODk3NDQwOWVlNzJjNjI5MjU3ZWQ3ODg4NWQ2Y2JmNGFmZGUgbGVnYWN5LXRydW5rCisxNzcwMSA0NWVjNWRmOWE2MmQzMWVhZDU1MjlmMmM3YTNkNmI4NGIwNWI0MTVlIGxlZ2FjeS10cnVuaworMTc3MDIgZjZlNTAxZmMzMmM3NzFkZmVmNTRlMTE5NWUxYjU5NmY3ZGRlOTU3MiBsZWdhY3ktdHJ1bmsKKzE3NzAzIGU1MmMyNDMxOWFlZjUxOGI0MzBlNzc3MDQ0NTk5YjEyYTc3NGJjNTEgbGVnYWN5LXRydW5rCisxNzcwNCA5MmNkYmMwZjU1ZDUwMzJmNjRmN2FkZDBkMjc2MDA2YWU5Y2VlZjYyIGxlZ2FjeS10cnVuaworMTc3MDUgYzhjYTkzMTA3ZjJlZGM0ZmY4OTg2OTY4Mzc1MjY1OTUwZTliMTc2MyBsZWdhY3ktdHJ1bmsKKzE3NzA2IDU0NDkzMDJjNGQyZTE0OGQ0N2VkMTllZjAzNjMwZjRjMWZkODFjZTQgbGVnYWN5LXRydW5rCisxNzcwNyA0NjNmYWYwMTY4NWU3MTI3MTgzMjU3MWJlNWRlMzM3N2NlYjQxMGFlIGxlZ2FjeS10cnVuaworMTc3MDggMTI5MzQ5MmRmZTYwM2VhNGFiNzdhOTI4ZTM1ZmEzNTY3ZjY4YmY4MCBsZWdhY3ktdHJ1bmsKKzE3NzA5IDg5YmM4NDc1ZmM4NGUxNzBkNjYwNGY4NmY1ZDE1YmVhY2JlZDMxZGEgbGVnYWN5LXRydW5rCisxNzcxMCBhZTEyYjhjM2MzYjMzYWI2ZjA1OGE3ZTQyY2E4MTE0OGIzOWE5MzdiIGxlZ2FjeS10cnVuaworMTc3MTEgODNhZmYxZWE1YjcwZGU2NTI0ZmRhMTE3MWM4ZWFiYTM3ZTkxZTBhMSBsZWdhY3ktdHJ1bmsKKzE3NzEyIDZlZGE2YTFhNjkzYzU0NzI1ZTUxNzFjYmE4NmQ4NzYxYmE2MDdjMDkgbGVnYWN5LXRydW5rCisxNzcxMyAxNjYxMTllYzMxOTU1YjU5ZTU3ZmUzY2IzOTc0YjEyODJjYWZjMTIxIGxlZ2FjeS10cnVuaworMTc3MTQgZTk3NjYwZDFmMWFhZWIxMmUzY2YwYTU2OGVjOTljMTI2NDM3NWMwOSBsZWdhY3ktdHJ1bmsKKzE3NzE1IDE4YjNkZWY2YzRiODI3NjJjMzYwMThmNjlmNzQwNTIzNzQ0MTVkM2IgbGVnYWN5LXRydW5rCisxNzcxNiAwOWMxNGFlNWMyZjU0MzU3OGI4Y2MxOTY1ZWJkNWE3NTcwN2Y0Yzk0IGxlZ2FjeS10cnVuaworMTc3MTcgNWI4Y2RhNmYzYjVmNjllYzI0NzMwNWEwNGU5MGQzZmEwMzViZTY0OCBsZWdhY3ktdHJ1bmsKKzE3NzE4IGMzZjBkNmYxOWY3YmZmYzNkZDYzNDBmZDk3OTk5MjFmYTEyYTA1YmUgbGVnYWN5LXRydW5rCisxNzcxOSA1NmZkYTRlOWVjZTlmN2MyMjg4ODEwNGVlMmMzOTFjMDU4ZDdjNWNkIGxlZ2FjeS10cnVuaworMTc3MjAgNWJhZjdmNzQzOTZmMWRhZmMyZjhhZmE2ZTEwOTZhNmVmY2ZiYjUwYiBsZWdhY3ktdHJ1bmsKKzE3NzIxIDRjMDg5YWQyOWVlYWM0NWE0YTlkZDZhY2Q5NWJiMWQ4MDZkYTVmMTggbGVnYWN5LXRydW5rCisxNzcyMiBjODkyZTZhYTk5OTc2YzgzMDE5M2Y0MGM0YTQ3YWM5Njc4MTExYWIxIGxlZ2FjeS10cnVuaworMTc3MjQgYjY4MDA2YTU2NDcxMTZiMDFjNDI2MTE0OTI4Nzc4YzEzMDQzMzQ5YiBsZWdhY3ktdHJ1bmsKKzE3NzI1IDI1ZGRkM2RjN2E3YTJlNGQ1N2MzMmM0MGU5YjBiMTQ0YjQ5YTdiYzkgbGVnYWN5LXRydW5rCisxNzcyNiBlMzVhM2E3NzJkY2E5ZWZiMjU2ODY1YzJmMDZjZDcxYjA0MTFkNGNmIGxlZ2FjeS10cnVuaworMTc3MjcgZmI2YjUxMDMzYzNiNjBlMTE3NmUxNThkNzNiMGU0YWYxY2Y2NzE0MyBsZWdhY3ktdHJ1bmsKKzE3NzI4IGFjMTRiODZmMGY4YjhmODBlZWE1MmRhMDg1MGM1OTZiNDNjNmY0ZGIgbGVnYWN5LXRydW5rCisxNzcyOSBhOTNiMmYxNzZhNWUyZjE1ZWM5MDFlNGVkMWVjY2I0MWRmOWNkOGE0IGxlZ2FjeS10cnVuaworMTc3MzAgNjQzMWNmNWM4YTAwNGM2NjY1MWM0ZjQ3OTA2MTIwOGE1NTNkZjM2OSBsZWdhY3ktdHJ1bmsKKzE3NzMxIDE3YjVjNDNjMDhhNmM0ZDhhZWYwYzZkNjFmOTc2ZmIyM2RlNjc3ZTIgbGVnYWN5LXRydW5rCisxNzczMiA3M2ZkZTQ0NTYzZDFlZjkyOGQxZWYxYTJjNjBiOGQ2NTkwOTVlZDhmIGxlZ2FjeS10cnVuaworMTc3MzMgNzk4NmE0NTUzOTMwYjI2MzAxZTcwYzBkYzQ4YzNhOGZiYTU2MmU2NyBsZWdhY3ktdHJ1bmsKKzE3NzM0IDY4ZTIzZjFmZjVkYjdhMjg4YzNkNmZlZDZkOWE5YmNhOTE4ODkyMzMgbGVnYWN5LXRydW5rCisxNzczNSAyODA5NjYyYWU5Y2UxODM4NGU3Y2FjNmI3Y2Q3ZDU4ZTc5MjgxYWIwIGxlZ2FjeS10cnVuaworMTc3MzYgM2E1OWEwNzMzZGY4YzE2ZmEzZTE2Yzk5ZTBhYzRlZmEwNGRhNmE4YyBsZWdhY3ktdHJ1bmsKKzE3NzM3IDVkMDg5MDk1ZjQwZjVjZTY1ZGIwY2Q0NjdlNzcxZDFlOGU4N2EyMzggbGVnYWN5LXRydW5rCisxNzczOCA1MjhiNTJiZDRiYzMyZWQyM2ViZWYzNzcwYmY2YjhkNDRlY2EwMWZlIGxlZ2FjeS10cnVuaworMTc3MzkgZDZiZGNiMDg5OWRkYTkwZGYzMTE5YzZiMmY2MmZiNjljYTVmM2UzOCBsZWdhY3ktdHJ1bmsKKzE3NzQwIDk2OGFlNTVmZTZlZWFiMjhkMGZjODgyZDFhNzBjZmZlNjBjZDhiY2UgbGVnYWN5LXRydW5rCisxNzc0MCA1NWJiYTE5N2Q0ODcwY2RhZTYyYWVjYTAwZTIwMjQwYTc1NmI4NGY4IGxlZ2FjeS10cnVuaworMTc3NDIgZjY1NzkzMGZkMjc0YzNiODFmMmRhNTQwOGMwNTA1MjJiZmU5NzJkMSBsZWdhY3ktdHJ1bmsKKzE3NzQzIDRmZGY2NjAwZDhhYTcwMTBjMjlmZTI0NTY2NWNmZDQzNDMwZTdiNGEgbGVnYWN5LXRydW5rCisxNzc0NSA2NTM3NDkwMDNkYjk3NjM5MDJjYzgyMjFjMzY4NTY3MmJjZjc2NzAzIGxlZ2FjeS10cnVuaworMTc3NDYgYzdmNTU1NTFmZTMxYmNjYzBiMWJhMzg3ZGFmM2U5ZWIwMTgzOTk2NCBsZWdhY3ktdHJ1bmsKKzE3NzQ3IGFmZDdlY2UzN2M0Njk1ZWU2OWY1OWNiZTYyMDc5N2E5YzgzNTk0MWQgbGVnYWN5LXRydW5rCisxNzc0OCBlNDY0MWQxOTMyMjBmMzg2YzBkOTdhNzM4NTY3NGQ4OGQxNzdlOGQzIGxlZ2FjeS10cnVuaworMTc3NDkgMTk2N2JlMTM1OWVlNTk4YmE5MzhkMTFiOGYxZTY1Y2E1MzYxODdkNCBsZWdhY3ktdHJ1bmsKKzE3NzUwIDgzNDA2MmY2OTVlMGYyMWM3NGI5MDE3ZWE5MjY2MDA0YTc3NTgzYjggbGVnYWN5LXRydW5rCisxNzc1MSBkZTE4OTJlYWNjZmZhY2FiZWVjMDg4OTA1OWZlODg5MWY3MWI2ZjE3IGxlZ2FjeS10cnVuaworMTc3NTIgNDIwZDNjNTdlZmVjNzM4NzRlZGE3YjJkZjAxOTVhYjU2NjAwOTRjNSBsZWdhY3ktdHJ1bmsKKzE3NzUzIGFkOThjMTM2NDc1ZTdiMjM3MzJiOWJkODg3ZWRjZTkxNzNkNTgwMzYgbGVnYWN5LXRydW5rCisxNzc1NCA0MTExY2YyMmEwYWQ5NDFjYTJlNDUyOGQ5ZWY5NTA0MzQ0ZmM4MDQzIGxlZ2FjeS10cnVuaworMTc3NTUgNGJlYTRmNTljNGU0M2M5YzVjNGE2MjY1M2I4ZmU0MGRmZjdlYWQ4ZSBsZWdhY3ktdHJ1bmsKKzE3NzU2IDYwNmE4MDgzNGE4NjIyMzhjN2NhOTdjZTVhNWJiNDRhOTM2M2JmM2UgbGVnYWN5LXRydW5rCisxNzc1NyBmOTMyYzEyODI3OWJjZjNmYzQ3Nzc2ZjcwOGNkZDQ3ZGRmNGQ5MmJmIGxlZ2FjeS10cnVuaworMTc3NTggMjkxYWJlYmVhNTViMmVkN2M0MDhlMWEwOWQ1NzY0Mjk2OWRiZjA5MCBsZWdhY3ktdHJ1bmsKKzE3NzU5IGVjNzU2ZDU4ZThhNzBlZmE3NzVkYjRmNTM1ZWEyNzYwMjc0ODFlYWEgbGVnYWN5LXRydW5rCisxNzc2MCBmNGExZDNmOGYyNjI4OTc3MDNiMDVmMGU1ZmM3N2I4ZGM2OTAzZWE3IGxlZ2FjeS10cnVuaworMTc3NjEgYjE1ZmNlODY4ZTUwYjc3YTA2OTk0N2VmNjEyZmI4YjllNTVjZDI3MCBsZWdhY3ktdHJ1bmsKKzE3NzYyIDQ1OTY3ZmYxYjZkYzE4ZTU3MTBkMDYwMWY1NGY2ZGZjNzhlN2UxZDMgbGVnYWN5LXRydW5rCisxNzc2MyBhMGExM2YxMGNlNGJmNWNlY2MyNWRjYzBjMDI2YTM1MGM4NjMzMDA0IGxlZ2FjeS10cnVuaworMTc3NjQgZDAxMzk0YjBhYTY5ODgwYTRiNWQ1OWE5YmQ4ZGFhNGNjMDNhMTgxMCBsZWdhY3ktdHJ1bmsKKzE3NzY1IDhmNTliZDk1Nzk1MjU3NzY4ZTljZWYyNjI3MDM3ZmE2ZjdhNmVlOWUgbGVnYWN5LXRydW5rCisxNzc2NiAxMDE4NzI3ZjMyMzE3NmNhZmQwZTJlYzkxYTlhM2QyMTNmZTY1ODYyIGxlZ2FjeS10cnVuaworMTc3NjcgNmZiMmFmNzY2ODkyZWI4N2JiYjNkNmM0MmMwZTIwMjFjYTJlMGZkNCBsZWdhY3ktdHJ1bmsKKzE3NzY4IGFmOGQ3N2FhOTBmODg1ODcwYjdmNGVlOTMyY2U1OWU4NzQ4NjUyZTggbGVnYWN5LXRydW5rCisxNzc2OSAyY2RmN2FjOTE2MmQ5MzUwNGRlMmVkZTY0YTdmNWU4ZjQyY2E0NjEyIGxlZ2FjeS10cnVuaworMTc3NzAgYTA2Mjc0OWI4MGY4YzUwM2VlNGNkZWU3ZWYyODIyMTgwY2I5MDk4YSBsZWdhY3ktdHJ1bmsKKzE3NzcxIDc5Y2RlZWVlZmFmYTU3NTVlOTMxMGJjOTg2ZjBjNWU4YTI0NDU4MDEgbGVnYWN5LXRydW5rCisxNzc3MiBlYTJiYTkxMGU1ZjA1ZmU2Y2FjY2JjMDY2MWIyNDFiMGE4Y2VhM2UyIGxlZ2FjeS10cnVuaworMTc3NzMgYWFkMmI1YTNmN2JmNGMzN2FhMjE3ZTI1ZGU0Yjc2YjI0NDAyODU1OSBsZWdhY3ktdHJ1bmsKKzE3Nzc0IGNlZmIxOTEwYWQwZDdiODRkZmIzZmQ5N2NhZDc0YWY4NTI3OWQ4MmQgbGVnYWN5LXRydW5rCisxNzc3NSA5MTRhZTdmOWM2NGNmN2YwMDYxNGIzOWM3MWFlYzA0ZGI2NzE0ZDhhIGxlZ2FjeS10cnVuaworMTc3NzYgOTViMjAwMTliNzExNDU0YzQ3NTdjN2NkNjViZDU3MTcxZDMyMTgwZiBsZWdhY3ktdHJ1bmsKKzE3Nzc3IGZhZDgyNDdlZjBhNTJkYTczNGM3Mjg4ZjVlYjkwMWU0OWYyZGM1YzMgbGVnYWN5LXRydW5rCisxNzc3OCAzZGI4YjgwMzFhNmE0NzQ0MTg0MDU5ODQ5N2JkYzZjOWI2ZGY3YjZkIGxlZ2FjeS10cnVuaworMTc3NzkgOWE4NzAwZmRjNTJiZTgwNjBmMzdkZjk3YmQ3NjQzYjA5ZWI5ZmNkYSBsZWdhY3ktdHJ1bmsKKzE3NzgwIDc1ZjNkNWU3Yjg5Y2EyZTE4NWFjMDMwMTlmMjk0NTA5ZDMzNmY2ZjUgbGVnYWN5LXRydW5rCisxNzc4MSAxNTM1NDFmODI0YTM2Mzk2NzkyNTc2ZjFlMGM2NjI2NmY4ZDFlMmM5IGxlZ2FjeS10cnVuaworMTc3ODIgYjRmNzQ0ODJmOWFmZTEwNzgwMzA2N2E3ZGQwNjIwOWZkZTNjZWJlYiBsZWdhY3ktdHJ1bmsKKzE3NzgzIDc2YzFlNDBjNWM1ZGU5MDYxZTQ2MGE2YjhhZGNlZmY5ZWRiMmY5OTkgbGVnYWN5LXRydW5rCisxNzc4NCBjOGYyMmYxNTQ5OWY4YjE3ZGU2NDE2MTk4MjBlMTAyOTJjMjk4MTBkIGxlZ2FjeS10cnVuaworMTc3ODUgMmVhMjk3ODY5YjAyNzFlMGViNTE5MjhlNDI3NTI5ZTMwMDZmOTdjZiBsZWdhY3ktdHJ1bmsKKzE3Nzg2IGFmMWRlNGY1MDUwODliMzQ2Y2Q0N2ZjODVhMTMzZWNiNmU0NjViYTEgbGVnYWN5LXRydW5rCisxNzc4NyA1NjEwZWNkMDdkYzAzNmU0YWEyMWI2MWVjYWNlZmRjYTE1Y2VlMGI2IGxlZ2FjeS10cnVuaworMTc3ODggMGM5M2QyZTI3YWMwN2MxMzAzOGRjYzdhMTc4MTdlNDAzYzAxZTJhYSBsZWdhY3ktdHJ1bmsKKzE3Nzg5IDgyN2U5ZDIxYTc4MTY0ZGVmYjNjOGE1ZWY3MjY4NDE5YmFlYzhkZGYgbGVnYWN5LXRydW5rCisxNzc5MCA3MTVhM2U5MjQ3MzcxODI4MDZhOWI1MDcyMTgzM2NlYTM1ZTBiMTZhIGxlZ2FjeS10cnVuaworMTc3OTEgM2RhOTlmMGMxODRmMjZiYTRjYmU5ZmY0ODg0OTlkMjkyMzhhNjUxNiBsZWdhY3ktdHJ1bmsKKzE3NzkyIDEzNDg4NTM5ZjAyYmZlMjhiYmFhZjFiM2Y0N2Y5MGFmYzY2ZTVjNTkgbGVnYWN5LXRydW5rCisxNzc5MyAwMTFkZjI2NDdmNDEzZDJkMTVkZDg0ZDc3M2NiODA0OTIwZjU5NDBjIGxlZ2FjeS10cnVuaworMTc3OTQgZmQ3Zjg3OWFmZjgxYzVhYmNkM2Q1YWJiYzkyYmZlMTE0NGExMThlNCBsZWdhY3ktdHJ1bmsKKzE3Nzk1IGMxMjg3NWRlZmMwZTRlMzk2MDdmMzA0ZThiMTk1YTU3YmJlOTVhMDAgbGVnYWN5LXRydW5rCisxNzc5NiAxNjI5ZWY3MzhiMmYwOTY3ZmIzMzkwNDQ5OTUwOGE2OGRkZjNjZTVmIGxlZ2FjeS10cnVuaworMTc3OTcgOWNlYTRkYjQxZDlmYWZlZWQ0ZmM0M2Y2YzY0OGU3MGRiYjk1MTJmMSBsZWdhY3ktdHJ1bmsKKzE3Nzk4IGY5Y2Y2MTEwOTZiZjUwMmY4ZmQ3OWIyNTk1NWU4NjAwYzMzNTZmYjkgbGVnYWN5LXRydW5rCisxNzc5OSBlMTVlOTdhNmMxNGE4MzQ2NTE4M2Y3YzlkNGNjMTQ0N2IwMjZlYmRkIGxlZ2FjeS10cnVuaworMTc4MDAgMTk5MTllMTQ2ZmY4ZjMxYjVlM2ZiY2E5Y2I3YjZhZWRkZmUyMDE2ZCBsZWdhY3ktdHJ1bmsKKzE3ODAxIDc1OTJmNzIxOWI3YzZjYTFkMTEzNTc1ZjI5MWE4OTJjZmNiM2Y1YWYgbGVnYWN5LXRydW5rCisxNzgwMiBhNTk2MDBhOTc1ZDEyNDcwZDJlZDg2ZmM0NDUyNGU1OTQ2OGJkZjdhIGxlZ2FjeS10cnVuaworMTc4MDMgOWU0NDVkZGNhMmQ3NGEwMDE4MmVhOTI1OTYxYzBiZWM1Y2RmYWU5NSBsZWdhY3ktdHJ1bmsKKzE3ODA0IDczY2VhNTk2NTdiYWJjN2U2M2Q2Y2ZiNmUzZGI5ZjI1MzM4NzkzNzcgbGVnYWN5LXRydW5rCisxNzgwNSA3YWNiOGJiYzIxNWJiNzJhMzMwODg2MzJiZmQ5OTNlNmE4MjBkMGM1IGxlZ2FjeS10cnVuaworMTc4MDYgMTRiNjQ3ZDU1MGQzNzkzMWE5MjEwODVjNDYzOTM2MDMyNTJjYThlYiBsZWdhY3ktdHJ1bmsKKzE3ODA3IGY4YjUyNmZjMzlmNjdmZDI2NDE5MTgyNDNlOWVhZTk3ODFhNjViYWEgbGVnYWN5LXRydW5rCisxNzgwOCAwMDVhMGI0YzM4MmQzNWY0NWRkNmIyYzEyMzU3YjFjNzQ0MjdmNjc3IGxlZ2FjeS10cnVuaworMTc4MDkgNmU3MDUyNDczNzc4NmIzNWUyNjI5YWUzM2E4NTNhMjMyNzk4MzUyZCBsZWdhY3ktdHJ1bmsKKzE3ODEwIGQ5ZTY2YTgzZTQzMzg0YTYzNDFlNzYxYTA2NWRiMTIwZGIyZjdhYWQgbGVnYWN5LXRydW5rCisxNzgxMSAzNDI0OTdhZDhmZWM5NzYzMmQ0MGUyOTY0ZGFiNTM4NTJhYjBkZTE4IGxlZ2FjeS10cnVuaworMTc4MTIgMWY5ZDIzNzc3ZmQwMTc0NDllYjI4OTE5NmRjNTRhYzkxYWExNzkwYSBsZWdhY3ktdHJ1bmsKKzE3ODEzIGM3OGU3NmE1NzFiNjVkYjkzOTJiMjAxMmIwMmJlZjNiNzE1OTZhMzkgbGVnYWN5LXRydW5rCisxNzgxNCBkYjFjY2UxZmZiNjA4MjY4MTE1M2I2MjYzMjZkNDhiOTk4OWY4YmU5IGxlZ2FjeS10cnVuaworMTc4MTUgNTAzODZjNzNiYTIyNWQyOTg1ZmQyNjUwNjQ1OTRiYTllNDlkZDhmMiBsZWdhY3ktdHJ1bmsKKzE3ODE2IGIwMzFhYmNhM2U5MWFiZTA1ZDNlMDYwYjlkNTI4YTBkNGE4NDE4NmYgbGVnYWN5LXRydW5rCisxNzgxNyA1NjkyMTRhNDE4MmM5M2U0ZjNjMjY3MWIzOWI1YWZiYTc1YmZlMWJkIGxlZ2FjeS10cnVuaworMTc4MTggZWJhZWIxOWUwMzgwOWI4ODYxY2JkMmNmMWIxZGVlMWE0NDBkZTY0YyBsZWdhY3ktdHJ1bmsKKzE3ODE5IDljM2FlZmE1Y2Q3ZjU5MzJhZDM0Zjc4MDYzOGNhMjJkZWMyMmQ2ZmEgbGVnYWN5LXRydW5rCisxNzgyMCA3M2QwOTMyMmYyYzM2MDA3NTQ3ZjE1NjBjYTkzMzc4NDE0OWQ0NDcxIGxlZ2FjeS10cnVuaworMTc4MjEgNTRlYzVlYzMyMzUyZjBlYTg3YjNlNDhhYWE4YjQ5MDE0ZDIyNWUxMCBsZWdhY3ktdHJ1bmsKKzE3ODIyIDFhYTM3MDA4ZmQyYzgyNWUxMGFiNzg0MjUyMmQwMzAyYjE0ZTRiNTMgbGVnYWN5LXRydW5rCisxNzgyMyA5MzE0Y2M3OWQ2ZTEyZTdjMWRhZmRlYTY1NDQxYTEyYzY5YzU2YzI4IGxlZ2FjeS10cnVuaworMTc4MjQgMzE0ZWI4ZjdhZTEzNTI5YTU3OGQ2Y2JjZTgxMjA4OTg0N2U3MmIzMiBsZWdhY3ktdHJ1bmsKKzE3ODI1IDUzMzY5NDZiNjQ5NWExNjQwZWJiMmQwYjc5NmQ0OGFjNGQ3ODY5MzIgbGVnYWN5LXRydW5rCisxNzgyNiBiNDExMjM4ZGU5ZDEwZjEyYTE4MmJlNWQzYjVhZjdiMmY2OGY0YWY0IGxlZ2FjeS10cnVuaworMTc4MjcgNmFmOWFhMTU2NDdmOThmNzg3NDcxOWY4YjBlODlhNGI0NmM0MzhhMSBsZWdhY3ktdHJ1bmsKKzE3ODI4IDMyZDI2M2Q0NDdiN2UxM2E3NmI1YmJhMjA4MDMyNjM3N2YwMWU3OTMgbGVnYWN5LXRydW5rCisxNzgyOSAzZWVjZGEyYmE5M2EzODQ2NjYyMDI3NjVhMDRhZjBmNzllMTc0Njc0IGxlZ2FjeS10cnVuaworMTc4MzAgNDhiNDVhMjgxMjc3MDAxNjE4NGRkZjRlZWY1MGU2ZjQwNzk1NTE0OCBsZWdhY3ktdHJ1bmsKKzE3ODMxIGM3OTA3Mzc5YTZiZDIyODUzZDA2NzQ0ZmRkOWZkMWM4ZTQxZDEyNmUgbGVnYWN5LXRydW5rCisxNzgzMiAyN2VhYjgwMzI3NjYyYTdlZTU1ZGZmM2IxMTJkZjk4NmI3NzU1NzA2IGxlZ2FjeS10cnVuaworMTc4MzMgODM5YmEzNWIwYWEzMTQ0Mjg1ZTQxOTIwMjVjNmEwMTE3OGRjMTBkOSBsZWdhY3ktdHJ1bmsKKzE3ODM0IGIwMTJhZWJiYmU1MTc4ZmEwZDkxZWNiMTUwZGU0YzNmY2Q4YWJiODcgbGVnYWN5LXRydW5rCisxNzgzNSAxNzRkMzRlYWM1MTYzYjljOTRjMTIyNzdlZTNlZDQwMWM5YTJmN2JiIGxlZ2FjeS10cnVuaworMTc4MzYgZTc5ZDA3YzI0NTcxZTM4ZTIxOTljN2U5YmYyYjY0MDI5Y2QwN2QwYSBsZWdhY3ktdHJ1bmsKKzE3ODM3IDI2ZDJlNGY1OGFkY2E5NzBiZGRmOTk4NDQyM2NkM2Y0OGRhNTUwYmIgbGVnYWN5LXRydW5rCisxNzgzOCA4MjEyM2NlMDI2ODRmZTI1MDFmZGJhMjViMzEwNzY3NDliYjdhYTkzIGxlZ2FjeS10cnVuaworMTc4MzkgMGZhNThmZWEzMGNmMjE2YzIzN2YyZWYyZWNlOGFlOTFkYjIwYTc1MiBsZWdhY3ktdHJ1bmsKKzE3ODQwIGI2MWNkMWE0ODk2MDNiYzQ3OWY2ZGIyZTc2Y2VkM2ZiNjVhYzQ0ZWQgbGVnYWN5LXRydW5rCisxNzg0MSBlY2U2YzE5ZWRjYzE1NWI0ZmY3YzRiZmU2NWU3NDJkYjU4MGI5Y2ZiIGxlZ2FjeS10cnVuaworMTc4NDIgM2ZjNmM1YWRkZjFlYzFhYzI1NjNmMGJmYzU5NDQ3ODY3ZTQ2NzQyMyBsZWdhY3ktdHJ1bmsKKzE3ODQ0IGE5ZDI0YTUzYzU1MzM0ZGEyMmFhYmNiMDY3ZTE3MmE1NzM3Yjk4ZDYgbGVnYWN5LXRydW5rCisxNzg0NSBiYmUwOWNjY2I0OWJlMDcwNGYwODAwNjFlZjRhM2I4OTljYTAzZGEzIGxlZ2FjeS10cnVuaworMTc4NDYgZTg1NzU0ZmE2OTE3NGZhNzJlYzYxNGIxNzJhY2JhMDljNTJmMDFjOSBsZWdhY3ktdHJ1bmsKKzE3ODQ3IDJiNDIzNjU4MGUwYzRmYmEwZTZmNmY4ODNlYjFhZjFjOTU4YmMwOWYgbGVnYWN5LXRydW5rCisxNzg0OCBiYjZjY2E1N2ViOGIwYzk0YjE2Njk5ZDhjYmU0OWU0NmY1MjljM2ZlIGxlZ2FjeS10cnVuaworMTc4NDkgNWQ0MWNhNDlhMTBhZGMyZThjYjJlOTY4ZmYxMjQ5NGQ5ZGI2N2JkOCBsZWdhY3ktdHJ1bmsKKzE3ODUwIDRjNDkzNGNhODU3OTYyMGUyMWI4MzI3YzBmYzMzMjcyY2NkNDdhNWIgbGVnYWN5LXRydW5rCisxNzg1MSBmYTVjNDgyMzY3YzdhZjUwMzhkZWJlZmY2ZTdjODQ3ZDNmNzkzMmY2IGxlZ2FjeS10cnVuaworMTc4NTIgN2Y0ZTI4MDQ1ZGZiNDU4NDEyNDYyNTgxZTc0OGRjNjliYjk1ZDM3OSBsZWdhY3ktdHJ1bmsKKzE3ODUzIGVlYzJlYjEyMWRhZTBjYzFkMGM4MWY0NjkzOWM1ZjM5MDY0YTdkNjYgbGVnYWN5LXRydW5rCisxNzg1NCA1ZTRlZWQwNjJiNTRhOWU2ZjIzODAwMWMyNzAyZDY2YTJmOTk1MjZkIGxlZ2FjeS10cnVuaworMTc4NTUgMGM1YjAyY2M1NDg5MzkyYTJjZmNiZjkwYjI3OWE1YWQwNDRhMDNmZCBsZWdhY3ktdHJ1bmsKKzE3ODU2IGMxNmJkZjU1NWM3OTc4MTEwODg3OTZjMjIxZGY3MWMwYmUyOWY3MmMgbGVnYWN5LXRydW5rCisxNzg1NyAxYTNiNWM4ZDY3MzBkOTc5NzNkOTAyYzgwMmQwOTNlZGM2ZWY2YjVmIGxlZ2FjeS10cnVuaworMTc4NTggMGE5N2Y1ZGRlM2E3OGRjN2MzNzM5YmY4MmMzODg0OTMyNDk4Y2M5NCBsZWdhY3ktdHJ1bmsKKzE3ODU5IGEzNDliODliZjEwZWU1ZDUxZDdiMmIyNDQ3N2JhMzAzOGFhYjE5N2IgbGVnYWN5LXRydW5rCisxNzg2MCA5ZDUxNDJjOGNmMmRkZGQ5NzM4YmQ0ZjQ1NTY4ZjczZmJjYzU3OWRkIGxlZ2FjeS10cnVuaworMTc4NjEgMDAzMmRmZmViMTYzYjRmYWQ4MjVhODIxNDM5MjNhYzQxNjAwMDM4ZiBsZWdhY3ktdHJ1bmsKKzE3ODYyIGRkYjIwMTkwNTkxZGJiZjE2ZjUyM2VmMDVmOGU2ZTg3NWZmOTEzNzggbGVnYWN5LXRydW5rCisxNzg2MyAwY2Y1MTExYmYwOWNiMWJmMTcwNTBlZmVmMjI5YWVlMThkOGMwYmYwIGxlZ2FjeS10cnVuaworMTc4NjQgOGI2ZmU2Yjk5N2MyZGI3YjRhMzkxMmNmZmY4NzUzNDZmZDMzMWE3MCBsZWdhY3ktdHJ1bmsKKzE3ODY1IGNiNGIyYTE2ZWI4NzEyNTU5ODhlZjE2MzBkZmVjN2VhYTNkZGZmNjggbGVnYWN5LXRydW5rCisxNzg2NiBhYTA1MmE1MmVmODcxMmYwODVmNmVmNTVkZmY4NWY1Y2VhMWE4NDM3IGxlZ2FjeS10cnVuaworMTc4NjcgOTg0N2I0ODZkMTVmYmE4MDlmNDdmMzA0MGZhYTg2OGIzYTUzMGM5ZiBsZWdhY3ktdHJ1bmsKKzE3ODY4IGM1Y2Y2ZmJhNTRkZGI4YjczNjYyNzIzMGYwZjMzZjFlNmNhZWRmZDMgbGVnYWN5LXRydW5rCisxNzg2OSBkYjNhOTU3OGFiMGJlZmNlYmMzOWI0NzRlYzdkMmU3MGYyM2VkZTExIGxlZ2FjeS10cnVuaworMTc4NzAgNmM1MWI1YWYxYmRlMTMwOTYyMGVlY2E5NjNkYmJjMTZjMDVlYThlNCBsZWdhY3ktdHJ1bmsKKzE3ODcxIDI1YmMxNjk1MmEyNGU1NDc3YjliODQ0NTJjMGI3Mjg4ZThmMmUwM2IgbGVnYWN5LXRydW5rCisxNzg3MiBiMGQxZGVjMjM1M2E0MTFhZWNkOWNiMzMzNDk4ZWQ5ODUwYWIzYWMyIGxlZ2FjeS10cnVuaworMTc4NzMgZGEzZThjNTA2NGNhZjNiZDIyYjFkMTNkY2ZjZmE3ZTg4OTUyMDBhMSBsZWdhY3ktdHJ1bmsKKzE3ODc0IGZiN2FjOGE0MGE5N2MyNGUwZGEzYzI3YTVjNTQ2MWVmZjdlOGFhNzkgbGVnYWN5LXRydW5rCisxNzg3NSBjMjg1ZGYxNWEwNTAzODMwMTU5ZGZlNGI3MGU5MmMzNDU4ZmJlYjNiIGxlZ2FjeS10cnVuaworMTc4NzYgOThiMWZhNmMxNjAwMGU3YTRmMzU0ODEzY2M3N2M5MTg4YWM5ODM4ZSBsZWdhY3ktdHJ1bmsKKzE3ODc3IGE2ZDM1Y2M0YmY1ZWU1ZDgzMjE3NGJiMDZhZDRlZWEyNjQ2ZGQ0MDkgbGVnYWN5LXRydW5rCisxNzg3OCA0MDVhZDBhN2Y3YTYxMDk5ZTdiYmQ4YzU3ODdkNmFjZGJmMDI5NWE2IGxlZ2FjeS10cnVuaworMTc4NzkgZjEyZDM1Zjk5NDg4NTVmYzM0Yzk2NTk3ZDRiYTM0YmYyNjkyNGMyMSBsZWdhY3ktdHJ1bmsKKzE3ODgwIDM3YjFjYWVlZDcwNTU3YTU5MDYzMzJmNjJmMWY2ZWQ0NTk4MmUzMGIgbGVnYWN5LXRydW5rCisxNzg4MSBkYjkxMzVmMzgwNjg5YTIzZWEwMDI0MjNmM2U1MWVmZTNiZWMxYzAyIGxlZ2FjeS10cnVuaworMTc4ODIgMGJiMzQ4OTg2ZDUyODFiMmUzZDk2NjljZTc1MGJlMmNlZmM1OWI5NiBsZWdhY3ktdHJ1bmsKKzE3ODgzIDI5YzJkNWU1MjE2MTJiODEyM2I2Yzk0ZjIxOGM4YzM5NTRhNjc1YzUgbGVnYWN5LXRydW5rCisxNzg4NCBiMzY4ZTA2YTNiNjI3NWU5MTQ2NTY5MjJhMzY3NTdjNjVjZTYwNDc4IGxlZ2FjeS10cnVuaworMTc4ODUgNWZmYTUxNWU2MjBlNGQ3NjQ0ODU3MzQyNDU2ZTg2ZWI1ZDQyZDY4NSBsZWdhY3ktdHJ1bmsKKzE3ODg2IDI1ZjEwOTJlY2Q4NmQ1NDgwZjI4OTI0OGViMjQzOWNhZWRlZTA0YzYgbGVnYWN5LXRydW5rCisxNzg4NyA1MmViNDk5ZjI1YjA5ZmQ1N2JlNTA4N2MzMjlkZTc2ZTA4MjM0NmY1IGxlZ2FjeS10cnVuaworMTc4ODggN2E1YzM4NTlhMzYxMzk4ZmExNjJjZmFmMTMwZWYwMjE2ZTQ5MDIxOCBsZWdhY3ktdHJ1bmsKKzE3ODg5IDliYzUyNzA2ZDI4MzRmN2E4YzUzODY5ZTMyOGE5ZDRlNTc4MTg5NjEgbGVnYWN5LXRydW5rCisxNzg5MCBjZTVkZmYzMGE5MzVkMTlmMThlZGViNDJlNGMxOTdiYzM5Y2I3MmZiIGxlZ2FjeS10cnVuaworMTc4OTEgNmM5MWEwNDFjMWQyYjJjOTVmZTZlZmVkYmYwNjA3OWQ0MmY3NTY2MyBsZWdhY3ktdHJ1bmsKKzE3ODkyIDk0YzAzMWQ3ZTljMmU4Mjg5ZTRhMWJmMzM0MTY2N2E5M2UyYmE2MjkgbGVnYWN5LXRydW5rCisxNzg5MyA4OTRkY2EyMjVkMjRhZWMyODU5Y2FlOWQyNWZhM2JiYTJiNTY2YTQ0IGxlZ2FjeS10cnVuaworMTc4OTQgNmU5ZmYwNjBhNzI4ODI5OWY5OTdlMTcyNDNiY2QyM2VkYmY5Y2FjNCBsZWdhY3ktdHJ1bmsKKzE3ODk1IGM3ZDQ2ZWFlOTVkODk4ZDg4MDQ4YTE0ZGZkZWUwZGM4MDBlYzliMjEgbGVnYWN5LXRydW5rCisxNzg5NiBlOTcxM2NiZTJiYThkMzA3ZDQ5NzFmZjc5YzA2NzllZTRlYzJjMzhhIGxlZ2FjeS10cnVuaworMTc4OTcgOTIxYzc0NTk3NzFiNDEyZWNhMjRlZmE4MWMzMDAwZjU2YTg0ZmRjZiBsZWdhY3ktdHJ1bmsKKzE3ODk4IGQxMDZkZmRmZjQ4MGFlYmYxYTM1OWM2OWEzYjliNzJkZjIyNGQ0ZDggbGVnYWN5LXRydW5rCisxNzg5OSA3ZWVmZGU5MGVjMGVlNGI0Y2UxZjQ5MDg0MzgxNTJlYzgyOGU4MDMxIGxlZ2FjeS10cnVuaworMTc5MDAgMjkzY2FmMGU2MzJhMTc0NDhiMjZjMTNiNWExYzE3YWE5Zjc3ZDE4YSBsZWdhY3ktdHJ1bmsKKzE3OTAxIGMwYzI1NGZiZGU1NzZiYzAxOWRkYzhjMTUxNWEzNTI0ODJiZTQ0ZmUgbGVnYWN5LXRydW5rCisxNzkwMiBkYWU3Y2VmNThhYzI2YWRkYzIxMzA1MTA4NWQ2YWNmYmQ4MDBlZjU2IGxlZ2FjeS10cnVuaworMTc5MDMgYzkwYzNhYWJkOGY1MDM2YTVmODE4N2UxNzIwNTFlZDQ4ZjQzNjI3YiBsZWdhY3ktdHJ1bmsKKzE3OTA0IGM2NTRiMjAxODQwMzljODhjNWU3MDcwMGVhM2YyNmI4NjI2ODA2ZTkgbGVnYWN5LXRydW5rCisxNzkwNSA0NTdmMGRmNDZkZDk4MDU1ZWI4ZWFkMDAxZTdhZjYwZWMzZDZmODU0IGxlZ2FjeS10cnVuaworMTc5MDYgMWRkNzJhOTJlOTIyYzM1YWQzZGM1Y2ZhYTJmY2VlMWFhZGM5OTg2YyBsZWdhY3ktdHJ1bmsKKzE3OTA3IDQzYzQ5ZGJkNDU0NmU4ZWNhZDE0OTBjMWQyMjI4MzJmM2FkOTU4MWQgbGVnYWN5LXRydW5rCisxNzkwOCA3OGJjYWU3N2U4YzcwM2U4NjZiYWE5MzRiZGQ4OGZlMjU0NmFhN2QxIGxlZ2FjeS10cnVuaworMTc5MDkgZmNmODVjOTBhMjc0MGJmYzZmYmMxYjY0MTYzMjc2ZWVlZjg1M2E0YSBsZWdhY3ktdHJ1bmsKKzE3OTEwIDI1NTc5Y2Q2Y2RkOTAzODA3ZmU0ODI5OGY5YWM4Mzg3OTFjMGVkMWEgbGVnYWN5LXRydW5rCisxNzkxMSBiZTRmYzhiNmUxY2I4M2EwMzA2Mjg2ZjgxZGMxODNjYTFkZTNmOWM0IGxlZ2FjeS10cnVuaworMTc5MTIgMDhlNmYxMDE5MTcxNDk4YjA0Yjc4MDNmNDkyM2YxNmNhNDI0OTgyYSBsZWdhY3ktdHJ1bmsKKzE3OTEzIDYyN2ZmNTc4ZjEyZjhmODUxOTJmMTczMmI5NGI0NjllNTY5OTA1NTQgbGVnYWN5LXRydW5rCisxNzkxNCA0MWJmYzlhNDBmZTM5NDk2YjgzNGQyMzU1OWQ2YzgxOGVkZThmODMwIGxlZ2FjeS10cnVuaworMTc5MTUgYmYyN2NhYmEzZDBlNDA5MjMxODU5OGM0MzNkMzc1NDQyZWY5ZWE5NiBsZWdhY3ktdHJ1bmsKKzE3OTE2IDNhMDRiZWJiNjY2YWViMGUwYmNlOGZkY2YxMGU3OTU0YjBhMzRjODQgbGVnYWN5LXRydW5rCisxNzkxNyBhY2I4ODYwN2I0YmQ3ZThiYzBkZTQyYTRmOWZiY2JlMmQ3YTBlMjk2IGxlZ2FjeS10cnVuaworMTc5MTggMTc3YWUxYzUyMDM3NjUwMjA2YWNkYjU3ZTM0MTM0Yzk5NjA3NGI3YiBsZWdhY3ktdHJ1bmsKKzE3OTE5IDEwMzYxMjUxNmFhOGQzNWZjZGRlYTBmZGNkOTk5ZWM3ZDhkOTA0NjEgbGVnYWN5LXRydW5rCisxNzkyMCA2NzU3NDgzNzhjODE5OWQ5NzQ5YjU0YTg5MWNlZjcxN2QyNmYzY2UxIGxlZ2FjeS10cnVuaworMTc5MjEgZjc4MDQ2OWE5NTc3Zjk1YzhjOTc1ZjEyMTRjMDMwZTk4ODY5MjFmYSBsZWdhY3ktdHJ1bmsKKzE3OTIyIGMwNThiYzM1NjQwZjc4YWU4ODQwZGI2MTJmMmE5YmI5M2JlZDg3Y2EgbGVnYWN5LXRydW5rCisxNzkyMyAxMThhYzg1YWYzMGEwNWM0YmMxMjE3MWFjYjZjZDhkMzQyODFjOGZjIGxlZ2FjeS10cnVuaworMTc5MjQgMTg3OWE0OGEzMTMzNmE0ZWI0Y2QyNWVkNzkxYWE0MzAxNDY1ZWU4YiBsZWdhY3ktdHJ1bmsKKzE3OTI1IDY5MGI0MWQ0N2MxZDZhZDU2NTg2ZmRhNjY4OWM5M2IwMjAwMmZjNDIgbGVnYWN5LXRydW5rCisxNzkyNiBhNTNmMTZiMjBmMWQ5MWJkOWRiMDMzMzViODkwOTZkZGUxYTMxODQ1IGxlZ2FjeS10cnVuaworMTc5MjcgNTdmZWE4NzA5NzU4ZjFmMzdmZjgwYjE0YmE4MTg0NDJmMzVjNmI2MyBsZWdhY3ktdHJ1bmsKKzE3OTI4IDcxYTRhYWRkZTAxOThiODY2YTQ2MDZmMWM3M2E2MWY1NTcyZTdhNzAgbGVnYWN5LXRydW5rCisxNzkyOSA2M2QyMzdhMjVmNDkxZTI2OGVjYWU3NjI0ZDg0OWM2ZDg4ZTI1MjQ5IGxlZ2FjeS10cnVuaworMTc5MzAgYjI1ZWFiZjY2ZDhkMzc1YzQ1NTUyODIzYjUxYjc1NjQ4ODY0NTg1NyBsZWdhY3ktdHJ1bmsKKzE3OTMxIDdjZTkwNjFmNzk2N2ZmYzczMjUyNTk1NWQzYTQ3ZWNmZjlmZTExNTUgbGVnYWN5LXRydW5rCisxNzkzMiA3N2QxZDc5YTY1ZDc1ZTg0YTg0NzczYzM3ZDgxYzMyZjUwZmZmZWE3IGxlZ2FjeS10cnVuaworMTc5MzMgMzE0MjAyN2I1OTc5ZGFlYWJkNTI2MTc1MTVmNDE4NGI5MTU3NmEyNiBsZWdhY3ktdHJ1bmsKKzE3OTM0IGFkOGVmMTU1Y2EzOTBlOGE2ODEwMjJhZTMxMWQ0MzM4ZDhiYWFiMWIgbGVnYWN5LXRydW5rCisxNzkzNSBkYzRjYWVkYzU5NjExYjE3MWIxNDk3OGMxNmE2YWYxZGI3MDYyNjQxIGxlZ2FjeS10cnVuaworMTc5MzYgNDdlNjgwNzcxMTdlNDIxMTUwOWRjMjgzYTNlNzY3YTEyMzhlNWY1MCBsZWdhY3ktdHJ1bmsKKzE3OTM3IGNkZmVjMzZmMTJjYzlmYTFiOGU5ZGE1ZWFhNTYwYTg2NTc5MmU5YmQgbGVnYWN5LXRydW5rCisxNzkzOCAwZTBlYTU2ZTRiZTg0YzA0ODgyMGIxMDI4NjVjMmEwNmZkZmFiZmM1IGxlZ2FjeS10cnVuaworMTc5MzkgYTExOWUwYzhiODBiMGU0ZDE5NjNiYjMzNGM2M2VhMzgyYjdiYjI5MCBsZWdhY3ktdHJ1bmsKKzE3OTQwIGMyZjEzYzM5NWI5YWU3Zjg4NWZjNDdhODE2YWFiMDZmMzI4OGUxZTEgbGVnYWN5LXRydW5rCisxNzk0MSAwMmFkOWNiNTIyMjI3ODMwNmE1N2Q4NzM3YmRkOTJjNWU4YmMxZGZhIGxlZ2FjeS10cnVuaworMTc5NDIgOWJlNjdjNWE4MjNhYjFkYTFjOTMyMGE2MTFhY2M1MWUzZTczMzQ2ZiBsZWdhY3ktdHJ1bmsKKzE3OTQzIGY5ZDRiZDc5YjQ2NDgwYzE0YWM0YWQ3YTI3NzIzMGUxMTRhM2FjMjAgbGVnYWN5LXRydW5rCisxNzk0NCBmMDlhODRhZjY0YmQ4NjMyMDFiY2I2NWZmZWJmNjA5ZDZjZDFhMTM2IGxlZ2FjeS10cnVuaworMTc5NDUgYTEzYTJhY2JlMjE0ZWY4ZmMwNmJhMzVlMzgwMGEzZWNjMzRiMTU5ZiBsZWdhY3ktdHJ1bmsKKzE3OTQ2IDFhNmY5MTU4NjMwZjFkNmVmYTk1YmVkODcwYjA5MDZlNDA1YmFhNTIgbGVnYWN5LXRydW5rCisxNzk0NyBkMGE2ZDQ0NGQ2YmM3N2IxNmQ4NjYzN2IzNmJhMWU1ZmJiNjUyYThjIGxlZ2FjeS10cnVuaworMTc5NDggNWRhOTYyMmZlZDdiNTQ3NGI1ZGM0ZTkxYmM3YjVlMjg3YzQ3YzBjZCBsZWdhY3ktdHJ1bmsKKzE3OTQ5IDQxYzQyYjFiZDU4MjhiOTQ4ODgwYzk1Y2U3N2RiMjYwNGMwYWI2N2EgbGVnYWN5LXRydW5rCisxNzk1MCA0NGZhMTZmMDFiNGUxMjI5YWNjM2QyNDU2ZWM2N2M2NjQ4OTZhNmVjIGxlZ2FjeS10cnVuaworMTc5NTEgMWIzNGM0NzVkYTg3ZmFlM2VhOGQ1YTU0NjY0NzEzZWFmZDczODc2YiBsZWdhY3ktdHJ1bmsKKzE3OTUyIGVjMWYyMzY1YmMyZDU3YjExZTYwYzI1NTVkZTcyZDc3N2FlNjA2MWEgbGVnYWN5LXRydW5rCisxNzk1MyBjMTk5NDYwY2NkZTkwNjYwM2M5MzI2YjgwMzgxNjA4NTE4OTE2MzkyIGxlZ2FjeS10cnVuaworMTc5NTQgOTViZTQzZDFkMzMyNjU3MTkzNmVkZTU5NzRhOTBlZTIwNzUxYTY2ZSBsZWdhY3ktdHJ1bmsKKzE3OTU1IDVmYjhkYzI4OTgxMmRmOWViNGQ2NDYyMDA5OGU4NGQyMzMwZDIwMzMgbGVnYWN5LXRydW5rCisxNzk1NiA3ZGUwODA4ZjFmZTMyMDdkYmM2NWExMTBmMGM2MDQ2NDNlMmJlZmYzIGxlZ2FjeS10cnVuaworMTc5NTcgMWFjYWM0NzU2YTAzYmViYTQwZmZiZDI0NzcwZDgwMGEwNGFmN2Y4MSBsZWdhY3ktdHJ1bmsKKzE3OTU4IGY4ZTk2MjUwNjA2M2RkYWY1MDgwZDEzNjg2NTgxNzdlNDQzZTI5YjUgbGVnYWN5LXRydW5rCisxNzk1OSBhMDJmOWRhYzIxNmNkOTg5NDI0ZmYwOWNkOWMzM2ZiM2NmNDZmN2IwIGxlZ2FjeS10cnVuaworMTc5NjAgOGJmYTk3MDNhNGU0ZjQwMzcwZTVlOWE0Y2M0NzRiYjY4M2NiZDA0MCBsZWdhY3ktdHJ1bmsKKzE3OTYxIGE1YTljZmMwMDliNWIzYzBhYjhiM2VkYTkxNGRiMjdiMWRjNjQzYTEgbGVnYWN5LXRydW5rCisxNzk2MiAyOTAwNDUyMDI2Y2NkNWVlMjIyNWRkODdkOGYxZGU4MmJiZjRmOGNlIGxlZ2FjeS10cnVuaworMTc5NjMgZjc2YTFlY2Q2YjU5MTZhZmUwZjU2NTZlNjY4NTI0NTg4ZDFhZjZhOCBsZWdhY3ktdHJ1bmsKKzE3OTY0IDY2NjA5MWYwZDcxNDQ3MWFlZDU1ZDg3N2UzMzg5NTYwNTk2YjRiNzcgbGVnYWN5LXRydW5rCisxNzk2NSBkMmMxN2FkZjJmMGM0NTU2OTUyYmE3NDQwZDkzZTc1ZWNkNWIwODAwIGxlZ2FjeS10cnVuaworMTc5NjYgY2UwNjY3OTkxMzNlYTQ3NTA1NWYxM2UzZGUwN2RlNzYwM2EyZWM4OSBsZWdhY3ktdHJ1bmsKKzE3OTY3IDMwODFkNzAxYmU4NjE1ZjMyYzlhODkxMDI3MGQyZGQxZTFiNDA2MTMgbGVnYWN5LXRydW5rCisxNzk2OCAxNTRiNzFlMTY1NjUwM2E2OWU4YjEzZWE5ZjJkZjVmNzEwNWY2M2NjIGxlZ2FjeS10cnVuaworMTc5NjkgYTgwNTQxMjQ1YjY2MzIwMGQxZTJjOGMxODRiZTg2YTFjYTdlOGJjNiBsZWdhY3ktdHJ1bmsKKzE3OTcwIGU5NmQ2NjRkZTI1NmFjYjlkZWQ4NjA3MTM2YjJiZmJiZDQzZGJmOWEgbGVnYWN5LXRydW5rCisxNzk3MSBjNmQ5YWZhNmU2YTA1YzVlN2IzODRkODJkZDI5NTZlMGM0NjYyYTRhIGxlZ2FjeS10cnVuaworMTc5NzIgZmM2ODZkZTg2MDU5Yjg0NTYwZjE0YTg3YjliYzQ4MmQxZDQwMmU1NyBsZWdhY3ktdHJ1bmsKKzE3OTczIDRlMWU5ZjVjMDc5NTA2OGU0M2QyYWU4ZjJlYWU5ZGYwM2ZjNjM5NzQgbGVnYWN5LXRydW5rCisxNzk3NCAxY2QwMjg1ZTNjZmVkODdjMjE4ODc4ZTZiZDdmZDcyMDY1OWMyN2Q0IGxlZ2FjeS10cnVuaworMTc5NzUgZDE2Yjc0MTNkYzY5NmRmNzRmZjllY2NhNGMyYjJhNzQ3NjNmNzc4MyBsZWdhY3ktdHJ1bmsKKzE3OTc2IDY2ZDI0ODMyODk2NzJkNzVlMmM4ZDNiZGNkODkzNWI4YmQyZDY2MzYgbGVnYWN5LXRydW5rCisxNzk3NyBhMzU4YmE3MDdlNGQzNTFlNTQ1ZDRiNDllYjRjYTVlMmU5YjBmYjU5IGxlZ2FjeS10cnVuaworMTc5NzggMGMwZTkwOWI4ZWQyM2FkNDBkNmI4ZDJhOTJjOWNiZDliNDc4Njc1NSBsZWdhY3ktdHJ1bmsKKzE3OTc5IDdkMGFmNGU4MTNkODVkZWVhYmZhODk5ZDMzYmQ0MTdlNzkzNWUyNTAgbGVnYWN5LXRydW5rCisxNzk4MCBlZjFmNDczYWFlZWJlYjNmMmU2NGNiNDJmODdkZjk2YzU0ODk2YzI0IGxlZ2FjeS10cnVuaworMTc5ODEgMzJiOGM1YTQ4MGFkZTM1Y2RiNTVmYjViMzY5M2ZkMmZhYjhkZDI2ZSBsZWdhY3ktdHJ1bmsKKzE3OTgyIDNhZTlkMzEzYmMzM2UwYjRmYTVmYWU2NTVhNzMyM2IzOGMyNDJjNjYgbGVnYWN5LXRydW5rCisxNzk4MyA2ODAzNDI5MjUwZTliZDA4ZmM3NTBhOTE4MjYzNjNkYjBjYTI1OGEyIGxlZ2FjeS10cnVuaworMTc5ODQgZjc3MTQ1M2MzYWY1ODg2NDg4MmZjMzM5NzNkNWE5ZDBmODVjY2M1YyBsZWdhY3ktdHJ1bmsKKzE3OTg1IGViYTMyM2Q3NDA3ZmExMzZlYjJmMjRkMzYzMDIzMzMwZDE4ZDg3YTEgbGVnYWN5LXRydW5rCisxNzk4NiBjZjI2NjFhNDU5OGViYjI3YzY3ZTlkODI2MTFkYTgyYmMzOTE3NDczIGxlZ2FjeS10cnVuaworMTc5ODcgN2U2ZTQwZTQxYzZlNGE3YzM2NDU0NTEzZTkwNWUyYjVlOTRmYjFiOCBsZWdhY3ktdHJ1bmsKKzE3OTg4IGIzOTE3OTQwZTFmYTFjMWEwNGE2OWYxYjk1MjRhZTBmN2VlZTBlYWEgbGVnYWN5LXRydW5rCisxNzk4OSAzNGE2ZTNlYWQxYzA0ODU1NzBmMjJmYjQxNTgyMzg3MDg1MmE0YjBkIGxlZ2FjeS10cnVuaworMTc5OTAgMDU2ODZmOTdmMzhkMjQ2ZGQzNDVmZWFiYmM4ZTM2NTI1MmQxYzlmZCBsZWdhY3ktdHJ1bmsKKzE3OTkxIGE1YzM0NjkyMThlOWM0NTRjYjVhZTI0ZGI2NmNkNmJiZGNjMjVlOTMgbGVnYWN5LXRydW5rCisxNzk5MiA5YWQwNzY0ZjJlODQxYjE2NTliZTc2NzE3MmY0MDgzZDJmODQwN2JlIGxlZ2FjeS10cnVuaworMTc5OTMgOTEyMDFkZTI1ZjM2ZDY0OTAyODQwN2U0ZGQ1OGJjMDQwMDRjOGFkMCBsZWdhY3ktdHJ1bmsKKzE3OTkzIGUyNzYzMjljY2UwMzZhNWY5ZTlkMzQ1MTI1NmRjYTU5ODRlNTQzZGMgbGVnYWN5LXRydW5rCisxNzk5NSBkYTkwNjdiYzk0OTQyOGY2ZDg4NDhiZDUxNjI0Y2JjZGI5N2VlMmQ5IGxlZ2FjeS10cnVuaworMTc5OTYgNTcxOTJmMGFjMTNhN2Q2ZmRmOTNmNTZhODE2MDI4MDVmNTgzNTc3NyBsZWdhY3ktdHJ1bmsKKzE3OTk3IGRkNDlmMjlkOTg3OTVlMjVkMTM0MjZiYzM3ZTMwMjM0NmI3ZWM2Y2MgbGVnYWN5LXRydW5rCisxNzk5OCBmYjk5NTg5MzNiMjU4YjU4MzZlYTM3Y2E2NjE0NmNlNzMxNzJmOWUzIGxlZ2FjeS10cnVuaworMTc5OTkgNDMzMTg3NDY2OTAxNjlkMmI0OTU0NDI1NTc4Y2UyNWViMzFiYTNiYSBsZWdhY3ktdHJ1bmsKKzE4MDAwIDU2M2RlZTU5OGQzYTlmNDYzZDM4MzY0NDI3ZmQzZGU5ZWE4NDNlY2IgbGVnYWN5LXRydW5rCisxODAwMSA3NGMwMjBhZGQ4NDZlYzRiNjZhMjBjOWI4MjljNjBhYjFlYzNhNDQwIGxlZ2FjeS10cnVuaworMTgwMDIgNmIwMWZjMjJlZjZlZjhlZDNkZmUzOTk4YzkwOTUwYjhlMDhmMWM4NCBsZWdhY3ktdHJ1bmsKKzE4MDAzIGExOWIxZDZhNTljZTFjNjhlNjJhYmIzYzY1YjU1MDhlMGM0NWVjNWEgbGVnYWN5LXRydW5rCisxODAwNCA1Y2YwYTAyYTU3NGIxMTk5OWJjZTNjNzM3OGVhYjVkZTc0ZDk2YzdkIGxlZ2FjeS10cnVuaworMTgwMDUgNWU1YjQzMTE4YzUyZGE2ZmM2YmM5YmVlNDdiMDI0YzUyMzAxZDc1ZCBsZWdhY3ktdHJ1bmsKKzE4MDA2IGEyZmNjNDg3YjlkYTE4NTg3NmZkN2U5Y2UwMzFhZWIxNWI2YmQzOTMgbGVnYWN5LXRydW5rCisxODAwNyBmZGMyYWJkZjQ3NzdlYmQyZjhkOWRkMzNhNmY5ZmM5OGRjZTBlZTdiIGxlZ2FjeS10cnVuaworMTgwMDggNDg2ZjNmZjE0ZDk1YWM5NzgyYTUzY2ViZTE5YjM1ZmVhMmVmMWRmOSBsZWdhY3ktdHJ1bmsKKzE4MDA5IGNhOWY2YThlOTg4NTcxM2JjN2Q4MTk4ZjYwMmFjM2QxMjVmM2Y4YWQgbGVnYWN5LXRydW5rCisxODAxMCBlZDQ5YTY3ODY5ZTljMjBmNGI2YzNlNDk5Y2Y2NjYzYzdkZDBiOWE0IGxlZ2FjeS10cnVuaworMTgwMTEgZTE3ZDhjZDA5Njg5ZjAxYWI3Y2FhYzJkZjZiNDYzZjA4N2Y0ZTYzNSBsZWdhY3ktdHJ1bmsKKzE4MDEyIDE3MzA1OTFkNWQ1ZGE4YTI1M2FiZTNjYzBmNzc5NmQwMDZkYTgwZDggbGVnYWN5LXRydW5rCisxODAxMyA3NGYxNjVkYzBiNWFlN2I1YWJmMjA0MDBhNDJmNTMzY2NhZGQ1NTk2IGxlZ2FjeS10cnVuaworMTgwMTQgYmVjZDhhMTIxNDY0ZjM2YTRhYTlkYmQyN2E2NzRlOGE3N2MzNjc2NCBsZWdhY3ktdHJ1bmsKKzE4MDE1IDQ1OTIzMmE5YjgwNGMwYTBjZjY0OTU3YzkyM2FlOTYxN2I4MjY0NDkgbGVnYWN5LXRydW5rCisxODAxNiA3YjA3ZDYyZDJjNzk2MWQ0NTRmNmRlMDc4NzM0NGMxZjMyMGU0ZmU1IGxlZ2FjeS10cnVuaworMTgwMTcgZTcxOTcxYTQwMmQzMTlhZWZjNGUzY2FiMmVjN2EyNzY0YjkzZTY5ZiBsZWdhY3ktdHJ1bmsKKzE4MDE4IDNjMjEwNjRlODIxNGMyN2RkZWU2MjE2YTI4MDM0MmM1MWIyY2I3NGIgbGVnYWN5LXRydW5rCisxODAxOSAwMDdhOTFkNzc3MDNmZWI2YmMyYTU2NGQyMzAwYTMzYjU2OTRmNjU0IGxlZ2FjeS10cnVuaworMTgwMjAgYjA3NTM1OTgwMzAxNjU0MGNmYjk0Mjc3ODQ4ZWFjMDU1MDFiMDRjNCBsZWdhY3ktdHJ1bmsKKzE4MDIxIGE4MDA2YmJiNjIyNTc3OWMzYTBkN2ViYTgwZmU4ODk3NTBhYzhhMTggbGVnYWN5LXRydW5rCisxODAyMiA4OTMwZWMzYmMwMGE5MWI3MjJhMjdmYzRmY2JkMjg4YTFmY2U3NTA3IGxlZ2FjeS10cnVuaworMTgwMjMgMjU3NzUxOWQ1ZWExMzk3NDZhNmUyOTcwZDA0ZTM3ZjI4ZjA4ZDQzOCBsZWdhY3ktdHJ1bmsKKzE4MDI0IGU2MWU2NGQxYjVlYzNiODFjNzQyMjgzODg4ZmJkYmNiZGRmYzJkMjkgbGVnYWN5LXRydW5rCisxODAyNSBlNTgyZjU3MzQzZjRkNWM4Mzc0M2RlY2I3YmE4MDQxZmQzMmJkYmMyIGxlZ2FjeS10cnVuaworMTgwMjYgMmVkZjM2NmY1NjNjOGRiNjg3NmIyMTNhODAxNDBjOTA5NzgwOGJhNiBsZWdhY3ktdHJ1bmsKKzE4MDI3IGY2MTAyYzVkM2Y5YzJjMzJkOTk5ZmIzOGRmNTVmOTMxMjQ1MTYyNTYgbGVnYWN5LXRydW5rCisxODAyOCAwOWM3YWMxODhjZTIxNzhiODdiMDY1MDRiMGU0ZmU1NWIzYmM0ZGI5IGxlZ2FjeS10cnVuaworMTgwMjkgODVhMDJjYzM3NTkwYTZmNDkwZGQ4OGNiZDk4ODYwNjg5NDY1YjhkZiBsZWdhY3ktdHJ1bmsKKzE4MDMwIGQyZjRkNzQ4YzkyMWViZGIwOTBmMzI3OGRjYTE2Yjg0ZjQ4NWVmOWYgbGVnYWN5LXRydW5rCisxODAzMSA3NDRhYTA2MmY0NzAxYTQxNTQwZGQ0NjgyN2FjZTVjMmFhZTkwYjgwIGxlZ2FjeS10cnVuaworMTgwMzIgM2ViODY4N2M5OGM2ZjdjMmM0Y2M3OTEyOTViNWNjYTdjNWYzN2I1NSBsZWdhY3ktdHJ1bmsKKzE4MDMzIGFiMWY5MGRkNTAyZjhhYTg1OTIwMzdkYjY3NzQzZGNmMmM1ZWQ3NDQgbGVnYWN5LXRydW5rCisxODAzNCBlNzgyM2YwY2EyMWEwNjEyYWEwNTk5ZGNjODUxNjVjM2Q1NjY1NDc5IGxlZ2FjeS10cnVuaworMTgwMzUgNTJkMmQzNmI4YmY3Zjc4NTZlZWM3NjUyMzI2ODg0ZTBkNWMzNGUwZSBsZWdhY3ktdHJ1bmsKKzE4MDM2IDFiNzNiMzUxNGI1ODU1ZDVlZDQ3YjcyMzg1YjIzOTU3NWRlMDJhZGEgbGVnYWN5LXRydW5rCisxODAzNyAwMTVkYTEzZjAwMzhjMTY2ZjBlNDZlYjc0YzE2OWI5ZjYwOTE3Mjg0IGxlZ2FjeS10cnVuaworMTgwMzggNTQyNzM4NThlYWQ5YzYyNTEwNTRlOTU0NzdhYTU0Nzk2N2IzMmI5OSBsZWdhY3ktdHJ1bmsKKzE4MDM5IDJlZDM1ODQ0NmYyZmUzMzkwMjM5MWU4ZjQ4MjM1OWZkMjExZThmZTEgbGVnYWN5LXRydW5rCisxODA0MCBiMzM4N2VlYmE2OGRmZTRjYTk4ZDVmOTJhZDJkNGUyMGYzNDBmNWUyIGxlZ2FjeS10cnVuaworMTgwNDEgNGQyMTg3MjY0Y2ZhN2FkMTEzMDBjZTllZDgyNTMzZDA5MWUwYWMwYyBsZWdhY3ktdHJ1bmsKKzE4MDQyIDllOWVlM2M1YTYwNzhmM2FlZmIxM2E1OWU0Y2FkYmYxNjFhZTkwZjMgbGVnYWN5LXRydW5rCisxODA0MyAxMDBiZWViZGU5ZGZmNTRkNDhiNDUwNTU3MTIxYTIxMWI0N2RhZTJlIGxlZ2FjeS10cnVuaworMTgwNDQgYjI4OTJjYmM2M2RiNzM0NDE4MGNiNTI3MDI1OTJlZDU2Yjc5OTUzZiBsZWdhY3ktdHJ1bmsKKzE4MDQ1IDVhYThjNWFhZmZhZGQ2NDI0NWQ0MDk3Mzk2NzBhNjYxMTZkOTdhMjggbGVnYWN5LXRydW5rCisxODA0NiBmMDQ0YjA2ZTMxN2RhYTI0MDJkMzc5ZjY0ODRjN2YxNDkwZDVhOGYwIGxlZ2FjeS10cnVuaworMTgwNDcgMzE5YzZlMzcxODI1MWM5ODM1MzQzNjExZmQyNzMyODBmNDBmYzEzYiBsZWdhY3ktdHJ1bmsKKzE4MDQ4IDY1NmQ0MzQzODhjOGUyMjgzMDIyYWMxNGQ5NmQ0Y2I1MjJjNDJjNGEgbGVnYWN5LXRydW5rCisxODA0OSBkYjRkODBhNjczODlhMjA2MWQxYTFhM2RlMjMwOGMzNDAwMTBmYzA0IGxlZ2FjeS10cnVuaworMTgwNTAgMWM2M2UyMjRmNjE2NjQwYzY4ZWE0NjU5YzViZDg3ZTg0NGU3YWFiMSBsZWdhY3ktdHJ1bmsKKzE4MDUxIGUzZDgzNjVlYTIzMTUxMjZlODAzZDQ5MmQ3ZjlkOGE3MDFiNTg4OWYgbGVnYWN5LXRydW5rCisxODA1MiBhZjAyYWM1ODAwMjhjOWU1ZDFjMDkyZjIwMzUyZjVjYWM0YTJmYmVjIGxlZ2FjeS10cnVuaworMTgwNTMgMzc0M2E2ZGJjNGE3NzJiNWIwOGJkY2QxMTJiMzgyNzVmODZkNjA5MyBsZWdhY3ktdHJ1bmsKKzE4MDU0IDQ4Y2M3N2I2M2FkNWRmNWRlYzBjM2IwNTk3ODI2OTExMzE2YzRmM2UgbGVnYWN5LXRydW5rCisxODA1NSAyM2JmMzA4NThlZjQ1MzFlZjE0MjYyZjkwNjFlMzhlNjE3YTUzNDNjIGxlZ2FjeS10cnVuaworMTgwNTYgZDQ2OWQxNTcyM2QzNWYwNTJmZmI2NGMwNGNkZmJiNGUyMDRmMmNiMCBsZWdhY3ktdHJ1bmsKKzE4MDU3IDc3ZWE4ZmNlZjI0Y2IzNTViMGJlMWZkNjgyMDgzNWUzZjFiMTg0MzYgbGVnYWN5LXRydW5rCisxODA1OCBjNTBiNzg2ZWJjNDg0YjI0ZmI5MDdiZjIwMWQ4N2E5OWFmNTNiYjQ1IGxlZ2FjeS10cnVuaworMTgwNTkgNGVlYjAyODE3YjVkODBlNDEzYjdhNmVhZGM1YjNlNWNmYmYyN2FlZCBsZWdhY3ktdHJ1bmsKKzE4MDYwIDliN2RkZDljYWUzM2UyNzcxZThkMjcyZTYzNDI1OTg5NjFlYjkzNGYgbGVnYWN5LXRydW5rCisxODA2MSA2NDE3Y2U5MTRkYWU4N2VkZDI4NDkxNDhhZDFmNmI0MjA5OWU0MGI3IGxlZ2FjeS10cnVuaworMTgwNjIgZTBhNTgzNWFmODMzNTBhMDc4NjBhYjdlMWE3OWY5NWY0OWQwOGI3ZCBsZWdhY3ktdHJ1bmsKKzE4MDYzIDA0ZTc2ZTA4ZTEwZmY0MWZlMmFlYzhhNTZiZWFlNmZkYTM1MWRiYWEgbGVnYWN5LXRydW5rCisxODA2NCBjOTRmMWM3NzYxNTM2ZWE3MDYzMTY3MWZjMGNlMzljMWUxMDRkZGY1IGxlZ2FjeS10cnVuaworMTgwNjUgNzAxYTU2MWJkZWZhODE2NDg2NGNhYTkyODJhNGFiMmU1YTg1YmFhZCBsZWdhY3ktdHJ1bmsKKzE4MDY2IDc4Mzk2N2IxNjg3OWE4YTg0YmU1OGIxOTJmZTE2Yjk3YWU5MjJhNTkgbGVnYWN5LXRydW5rCisxODA2NyA5ZjMwNzc1MDZkMWExNmJhNDg3YmM1MTBiMDdmZjAxYTE2ZDhkY2JkIGxlZ2FjeS10cnVuaworMTgwNjggZDJjMjA1YzM2ZDhhNDE4ZjcwZGM5MTFmMDhmOTNiNDQ0YmQzNGI2MyBsZWdhY3ktdHJ1bmsKKzE4MDY5IGU0YzliODA1ZjM5ZmJkNzgzYTA5MjUwYTEwOWRjMTc3YjMzN2QxMzYgbGVnYWN5LXRydW5rCisxODA3MCA1MGE4ODhlYzU3YzEyNzExZmQ1MTFhMjkzY2UwNTM2NTkxMjBjYWJkIGxlZ2FjeS10cnVuaworMTgwNzEgODgyY2VmZTIxZGMzNjgxODVkN2ZmZDc5MDk4NjNjYjA2NzU4MjdlOCBsZWdhY3ktdHJ1bmsKKzE4MDcyIDdkNDUyNDliMTQ3N2Q5Yzc4Yjk1NGZhMzk0MDM1OTZiNDViYzA3ZmIgbGVnYWN5LXRydW5rCisxODA3MyA5NTk4NjUwZjJiYzkwMjMyMGI3ZTkyMGNlYzgyYzYwZmQ0OGQwMzFiIGxlZ2FjeS10cnVuaworMTgwNzQgYTM5NzVkMjgxMWYwMDg5ZjUyZGEyY2UzYzU4NmFhN2U3YjZjYTg4YyBsZWdhY3ktdHJ1bmsKKzE4MDc1IGE4MmU0YzI5NWI5MzAwZDMwOGIyNmQxNGJmNDIwOWJiMWYzMDc4NTggbGVnYWN5LXRydW5rCisxODA3NiA1YjU2NTRjYTc1NTViOThiMGUyYjQxY2Y2NjExMDlkNjAzZTQzY2MyIGxlZ2FjeS10cnVuaworMTgwNzcgOTlmMzhjNzU1YWJlYmE0NTUwMTA5OGY2YTJhYjQwNTY2MzU5MDFlNyBsZWdhY3ktdHJ1bmsKKzE4MDc4IDNlNzAxNmM3OWRhYTBlN2FmY2QzZTQ1MmZkZjJkZjcwMGM1ZTMzYzcgbGVnYWN5LXRydW5rCisxODA3OSBkN2M5M2E3OGM5NDkyOGFmYjljMjhjM2I0NGFiOWYxN2Y4OTJlMDQ1IGxlZ2FjeS10cnVuaworMTgwODAgM2Q5MGUxZDc2MDVmNzEyNzIzYzRiNGQ2YmNlMzBiZWNjNGIyNDBkMiBsZWdhY3ktdHJ1bmsKKzE4MDgxIGU0NzBhOTYxOGNhNzJhYmEzNTg2ZDE0YTM0YTNkMjM0NjE0MjcwZmQgbGVnYWN5LXRydW5rCisxODA4MiA3ZTkyYjdhNTA1N2M1MTBmMWQzYmVlMjc5MmUzNDNkZjAzYWNkN2U0IGxlZ2FjeS10cnVuaworMTgwODMgNDg2YTMxZDhhM2IzNWM1ZjkxZmUxNzI3YzU0M2M4ZmE3NmMwNjNmNSBsZWdhY3ktdHJ1bmsKKzE4MDg0IDQ4N2IzNTAyYTQ1YjMxMGZjZGE3MGFhMDlmZGIyZDY1OGNkNWQxYWQgbGVnYWN5LXRydW5rCisxODA4NSBmNzkyODIwZjNjZDRiZWY1NjA1M2NhZGZlOGU0ZGU1ZDAxMjY0NWFkIGxlZ2FjeS10cnVuaworMTgwODYgZDJiOWNjNDQwYjhkZDQyZTAzMTVmMmI4ZDMyNjFmMzEwYzdhMGIwMSBsZWdhY3ktdHJ1bmsKKzE4MDg3IGJkODhkZjIwZGEyZjU5YWI0ZWRkZDU5MmEzOTUzNzYwMjQwY2E1OTEgbGVnYWN5LXRydW5rCisxODA4OCAxMGIzY2JkYmRmZDlmZDkxOTVmNWY1NDAyM2EyZDQzZjcwMTMyMDk3IGxlZ2FjeS10cnVuaworMTgwODkgMzhjNzk1YWZiM2I4MDUzZWI2YThkMmFjZGY2ZTg3YjY5YjZkMmFkMyBsZWdhY3ktdHJ1bmsKKzE4MDkwIDg2NGYxNzE0YWYyODcxYjMwN2NlNDM3MWY5NmE5YWE1NmMwNGNiZGYgbGVnYWN5LXRydW5rCisxODA5MSAwMzcyMGEyNmNmZTczNjU0N2Y4NjdmNDc4MTM4OGQwMmI3Y2RkZGJlIGxlZ2FjeS10cnVuaworMTgwOTIgOGZlMmE3OTgxZDcwYjMyYTk4ZGJhNjQwYTY0NDIwNjJmMDkwN2VkMSBsZWdhY3ktdHJ1bmsKKzE4MDkzIGM5NGMyYWU3NDZmMWNiM2E2NDJhNWZkMTRhODMwM2MwYTdlYmU1OWQgbGVnYWN5LXRydW5rCisxODA5NCBmMWFkZThhYjE4Njk1NTM3Y2NlYzkwZjdjZTMzYTg2ZDY2NTY5NTU3IGxlZ2FjeS10cnVuaworMTgwOTUgNzViZmJlMzdhYjdhNmMwOTAzNGJmYTdjMGEwNmViNzZjNzQ2ZTk5ZSBsZWdhY3ktdHJ1bmsKKzE4MDk2IDlhZjdmY2UzNjM4NDEzMTczYTAwN2ZjZDM0MjI0MmVlZjE5ZjkwODMgbGVnYWN5LXRydW5rCisxODA5NyAwMjI3YjU5NjFlZWY3NGE4NzgyMzBhNjA4ZDBmMWYyYTk5YTViODBmIGxlZ2FjeS10cnVuaworMTgwOTkgZGE0M2IxNjk4NmI2NzcwMWQ4YjcwNDQ1ODdjNzE1ZGMyYzc5MzY2MyBsZWdhY3ktdHJ1bmsKKzE4MTAwIDY1Nzc1MGMxZDc4MzU0ZDg3ODc3M2RjZjJjMzJkOGQ5MjQ4NjRjNzAgbGVnYWN5LXRydW5rCisxODEwMSAyY2RmYzQ2ZTgwNjhkMGQ4YWQ5ODIzYzQ1YzgxMWY0NmM4NGVmZmFiIGxlZ2FjeS10cnVuaworMTgxMDIgZTllODgyNGUzZDhkZmQ5YTNiZmIyZWQ5ZmQ0N2FjMjRiNjg0NDA2MiBsZWdhY3ktdHJ1bmsKKzE4MTAzIDcxZWEyYmIwMTg4OTU3MmY5Njg3ODY2OGQxMTZkMTc2NDE0OWE5ZDAgbGVnYWN5LXRydW5rCisxODEwNCBlNGVhNDRiMTBhYmJlZjI1YWQxMDdlMGZlMTE2NGI5YzllZTRkNjg0IGxlZ2FjeS10cnVuaworMTgxMDUgNjgzNzEzNTA4MWQ0NzI3ZWVmZGU3NDc1NGJkZjJiMDIwYTYxZDMyNyBsZWdhY3ktdHJ1bmsKKzE4MTA2IGRkMGQxOTk2NzRmODJhNGNmNWUzMWY3MTMxOTNjMGY0ZDJmOTcxODMgbGVnYWN5LXRydW5rCisxODEwNyA4Njg2ZjI4NGZhOGQ3NDkwMTNlY2Y0M2Q5Nzk3NjgwZDAzOWVmNGE4IGxlZ2FjeS10cnVuaworMTgxMDggNzM1ZWQ4NTZkZTYwZTQxOGY2NzU3YWM3M2NiYWU0YmEwYzBhNTVjMiBsZWdhY3ktdHJ1bmsKKzE4MTA5IDJhMDVjMWZiZDg5NDdkZDIzMzAxZjhmNDgwZWVmZWRhNTFkYzU5YjIgbGVnYWN5LXRydW5rCisxODExMCBjYzllYjE4N2I3MzAyY2EzNzcwYjExNmE5YWMyY2Q0YWRkYzg4OTQ1IGxlZ2FjeS10cnVuaworMTgxMTEgOTcyMGMyYzZmNDM1ZDNkNmNkZWIzYjkwMmY0YWIyMDJiMmNkNjU2NyBsZWdhY3ktdHJ1bmsKKzE4MTEyIDBmOWZkM2ZkNzc5OWE4YWNjZjFmNTZiYmFjZWZkMTkwOTMxMTEwYzkgbGVnYWN5LXRydW5rCisxODExMyAwODEzMDIwYjI5Nzc1ZTFjZjJjZmEzNDE4MGYzYWFkZTQ3ZTY3ZTQ2IGxlZ2FjeS10cnVuaworMTgxMTMgMmZhNGUzNTA4M2UwMjM0MmNhMDE0YmY1YmZiYTQ2YWVjYjgxNmMzMSBsZWdhY3ktdHJ1bmsKKzE4MTE1IGJkNGNkNzNjYjBkNmQ1Zjg4Y2VkN2RmNzRkMzBkN2QxNGIyMjZiYjcgbGVnYWN5LXRydW5rCisxODExNiA2MWY4MjMwMDkxNDVjYTEzYThmYjVmNjk4N2ExNjI5Mjk5NjYzM2NjIGxlZ2FjeS10cnVuaworMTgxMTcgMzE0MjY5OGQxNzJjODU3YmI5OTE4YzUxMmYxZWI4ZjA1NjYyMjYwYiBsZWdhY3ktdHJ1bmsKKzE4MTE4IGExODdhZDgyYzMzZjQ3MjkzZjQ0YTRjMzQyMzhkM2Q0NGM2MDRhYzAgbGVnYWN5LXRydW5rCisxODExOSBkMmFhMjY2YWU0MWM4OGViN2VjMGUyMTg5MWZlYTA2YzQ1ZDhiYzA3IGxlZ2FjeS10cnVuaworMTgxMjAgYmM0Zjg5ZWVmYjA0ZDQyZWI3ZTFiMWMyM2Y0YTM2NmU4MDMwMDRkYiBsZWdhY3ktdHJ1bmsKKzE4MTIxIDg3NzgwZGJmOGQxNzRiMWJkZTc1M2FmNTBlODYxNTYxM2U4OGFiM2QgbGVnYWN5LXRydW5rCisxODEyMiAwZDNiYWJhYzQzOThmYmUzOGI1ZjQ3MGFkOWE4OGI0ZjAyYTEwMDRkIGxlZ2FjeS10cnVuaworMTgxMjMgYjUxNjI5OTgwYzg4NmMyODRlYjQzYjVkY2I0NDI2YjkxY2EzMTVjOSBsZWdhY3ktdHJ1bmsKKzE4MTI0IDM4N2YzMWFjMzJlNjQ4YzU0Mzc5N2Y0M2EyZmYyMzkwYmQ4ZmZjMjMgbGVnYWN5LXRydW5rCisxODEyNSBjOTRjMWI2NjBkZGIxNTZhN2VmYjRlZDgxZDAwZDg0ZjhjNDEyNWM1IGxlZ2FjeS10cnVuaworMTgxMjYgZDUwMzM1YWM1NTgwM2MwNDkxMWY0YzkxMzUxYzIyNDM5ZWNkNTFiNSBsZWdhY3ktdHJ1bmsKKzE4MTI3IDA4MzI4MTBjNDYxMjQzMzc4YzUzMDU4MWE1ODQ3Y2I1MGEwMDEzY2QgbGVnYWN5LXRydW5rCisxODEyOCBkNTc0MGUxMmVhOGEyOWE5ZGFhNGFkYWI1ZGFlNTlmMzk3YjNlNWY0IGxlZ2FjeS10cnVuaworMTgxMjkgNzRjNjE1M2FiYmMxMGQwZDdkZWQyNDBmYzQ3ZWIyNWJiODc5MDI2OSBsZWdhY3ktdHJ1bmsKKzE4MTMwIDkyOWM5MmM1MGNiMmJiZWM4MzY3YzA1OGJlMDE5MTI0MDlhZjA1N2UgbGVnYWN5LXRydW5rCisxODEzMSAzZTk2ZmQ0NGI5ZDBmNzhmZDQ5MjU5ODFjNDJhZmQ1Y2NiOGQzODA0IGxlZ2FjeS10cnVuaworMTgxMzIgNjM4MWZhOGQ3ZGYzMzcwNGJjMjk2ZDgwNGViN2M3NmUzMGVjOTdlMiBsZWdhY3ktdHJ1bmsKKzE4MTMzIDY4MTU4ZDY0ZTg3NGU5NTA3NGM4OTE2NzBkZGI0NGMwZDI3ZjNmNDQgbGVnYWN5LXRydW5rCisxODEzNCA4NDdkOTllNGYyNGFkM2UyMDdlOWE2YjhkMGFiZTdlMTk0ZDgwNjAxIGxlZ2FjeS10cnVuaworMTgxMzUgNjVkMjY1ZDg5ZDhmNDI1NWM3MzU3Yjk5OGQyMjBlOWY2YzA3ODJjZCBsZWdhY3ktdHJ1bmsKKzE4MTM2IGJhMzY3N2UxZjgxYjY1ZGM3NGM0MWRlZjk1ZWVkNWQ2MDZiYzhkNjEgbGVnYWN5LXRydW5rCisxODEzNyAxMTY3NmRkYWZmMDE1ZTI4N2EwZTc4MWYyN2I5YjY3MGU4NmEyMGQ5IGxlZ2FjeS10cnVuaworMTgxMzggMjU0MTA2MmVkNGRkOThiYWM5Y2IxZmM3MDk0Y2NmMGIyOTUyMmFkNSBsZWdhY3ktdHJ1bmsKKzE4MTM5IGE1Y2E1NDk2OWEzZmZlNzI4YWY1MzYxNmU3NmRjYjgzMzkxMmE3MzkgbGVnYWN5LXRydW5rCisxODE0MCBhZjJhYTgwN2FjZGU3ZmE0Y2EwODg2NDMwNDIyNDkyMWJhNjE2ZTAxIGxlZ2FjeS10cnVuaworMTgxNDEgYmYyMWU0MTdiZWQyMjM0OTIwNTg1YzMyYjM5OWJiOGU0M2M4NmE1MSBsZWdhY3ktdHJ1bmsKKzE4MTQyIDRjN2M3NzliYWQ4NzliOGRlYjcwZGRkMzVjZTdhMmE0NTQ4ZGMyOGIgbGVnYWN5LXRydW5rCisxODE0MyBiOTQwYTBmYzI5ZTMzOTQ5MzY1MDc3YTBmNWExZTg1NzczMzczYmY0IGxlZ2FjeS10cnVuaworMTgxNDQgOGY0NTkyZjU0OTg4ZGJlZDQ2MGE3MmQ5MzE2NGM2MzRiMjFjM2RkZiBsZWdhY3ktdHJ1bmsKKzE4MTQ1IDEzMmU2OTg5MmFhNWQxNWFlNTA4ODBhZDFjNWFhMTExYmZkOWE0ZTAgbGVnYWN5LXRydW5rCisxODE0NiAzYTdhZmQzZTZjOTc4MTRiNDA0ODQ3ODEzMDMxMDNlNzE1MTE4ZDNkIGxlZ2FjeS10cnVuaworMTgxNDcgMWY0YTlhZGUzMGVjYzE3Y2IxYjc4MzQxZDFlMGIwNWI4ZjM5ZmEzMyBsZWdhY3ktdHJ1bmsKKzE4MTQ4IDI3MmMyOTY1MDgxYzY1MTg2MDM2OGQ3NDFjNWM2ZWZjOTE0YzE5Y2IgbGVnYWN5LXRydW5rCisxODE0OSAyM2IxMTA4ZDZjOGI1ZmNhZDcyODI4MDFiMTI3OGQ0ZDFiZjUxOGExIGxlZ2FjeS10cnVuaworMTgxNTAgMWY5ZDVlYjg0YjBiMjBjMGJiNmU4YWJhNmRiMDc2ZWM4NDYzOTY5MSBsZWdhY3ktdHJ1bmsKKzE4MTUxIDlkZDdlYWI4MzZkN2NmYzljNTljM2VlYTZiOTYwNGE3MGNlNDMyM2QgbGVnYWN5LXRydW5rCisxODE1MiAwOWJmNmQzMDAyNGZiMDg4YTUwOGY2OTAyZWVmNTBlNTAzNGVkNzc2IGxlZ2FjeS10cnVuaworMTgxNTMgODQ3ZGM2MWUzMGY1YzhlODhlOTc2OTViNDQ3YTk0NWEwOWM2OTZkYiBsZWdhY3ktdHJ1bmsKKzE4MTU0IDc1N2ZmODhlMTdhYWRiZGEzZDMxY2Y4OGM2YWY0ZjI5MzBkZmIyZjQgbGVnYWN5LXRydW5rCisxODE1NSBlNmExMDg1NzI1YWNmNDc4YTllODFlYjM3NWU0NzMwNWY4Y2QwY2ZlIGxlZ2FjeS10cnVuaworMTgxNTcgZjIwZGVhZWFmOGI5N2MyMWQ2ZmUwMjk1NGJlZGZiN2ZkMDQ1NjgwMyBsZWdhY3ktdHJ1bmsKKzE4MTU4IDg1YTUwOWZhY2NjNzk2ZjMwMmRmZjk2NGRiZmEyOWRiZDNiNTU1MjggbGVnYWN5LXRydW5rCisxODE1OSA2OGJjZTVkODNmN2I5M2E3MWVlMmQ0YTdlM2Q5Y2Q4N2Y2MmE2NTg4IGxlZ2FjeS10cnVuaworMTgxNjAgMGRhNGNjYzdlOGNmMzZlNmZiMmJmNWVjZWJmYjhkNWEzODY1YTNiNSBsZWdhY3ktdHJ1bmsKKzE4MTYxIDJhOWQyNzY1NjI1ZTVhNzc1ZGQ1YmRhNjBkNDM1NTRhNzY3Y2QyMjcgbGVnYWN5LXRydW5rCisxODE2MiBiMjExMDI2Y2VmODRjYTgwM2Q4NmY5ZGFhMmI5NjM2ODBlNTYyYWM4IGxlZ2FjeS10cnVuaworMTgxNjMgMDgyMDk5NGUyZDVlODc2ZjFlMDliZjJjNDc1ZDg3N2RjMWFjMzczYyBsZWdhY3ktdHJ1bmsKKzE4MTY0IGE2ZjNlZjEwODE1ZWNiOGRjMTBkOGQ3YjljYTA5NGFhZGRjYTBmYmMgbGVnYWN5LXRydW5rCisxODE2NSAwN2YyNDI2MWM2ZTZlYmUzZWZjZTQ0OGNlNDk0NmM1MTZmN2ZiMjZhIGxlZ2FjeS10cnVuaworMTgxNjYgYTk5OWQwNThmYWI1NTgxNTgzOGMwMDA2MjM1Yjk4Nzg4OWE0N2FlOCBsZWdhY3ktdHJ1bmsKKzE4MTY3IGY4NzIxZTg0OTQyNDZjYmE0MTgzMDE5MmVkYjdhMjg0N2VjZWJjODkgbGVnYWN5LXRydW5rCisxODE2OCA4NDdhZTQwMDc0ZDRlMDA3MzRiMzBhMGQ0Zjc2YmUyNWFiYTY0OTQ3IGxlZ2FjeS10cnVuaworMTgxNjkgMDc1OGNjYjMzNjNjZmQ2NGU5Zjc2YzQ4ODAxMWNlZDZlNWNjYjg2ZSBsZWdhY3ktdHJ1bmsKKzE4MTcwIDVkMmEyMTg1YzY1MWE0MzM5YmE0ZWE4MTY3ZDYwYTY0YmY1NjBjNjAgbGVnYWN5LXRydW5rCisxODE3MSAzMzMzN2U1YTQzMDBjOThkYWExNTlhY2Q4YzBmMTU4Zjc1MjVlYzM5IGxlZ2FjeS10cnVuaworMTgxNzIgODZkMDY5NDE0MDk5ZmU5ODM2MzU0MjFmOWU1Yjg3MTMyYWIwNzEzZSBsZWdhY3ktdHJ1bmsKKzE4MTczIDQ5NDY4YzAwN2MwY2Q1YWYyOWMzOTcxZWZmNzQ5NjRjNTQxNWIzYjcgbGVnYWN5LXRydW5rCisxODE3NCA4N2I1ZTQ4MDc2MmY4NmIxNzk3MGM1YjNjYTkwMWJhNjQ2ODE3MDE5IGxlZ2FjeS10cnVuaworMTgxNzUgYjQ5ZjUyMmJmODkzZWE1MmFiMDU5OTY4YWY2MjE1ZGFlYWQ1MGY0ZiBsZWdhY3ktdHJ1bmsKKzE4MTc2IDhlODY1ZjVlY2Y3ODQxZmQ0MTkxMmFiMDRlMzBiZDEzZjdjODFmNGUgbGVnYWN5LXRydW5rCisxODE3NyAxMzk3NWFlYzUxNTIxNTYwMTczMzhmYWZmMWUyOTZlM2Y4YjNjZGNjIGxlZ2FjeS10cnVuaworMTgxNzggOGFhOTQ3ZTFlZWU4MmEyZWYyZTJjZjYwZDAwMTFjMDQzOGFmY2JhNSBsZWdhY3ktdHJ1bmsKKzE4MTc5IDA5ZWM4ODJjZGU2MTQ0MjBiOTU1MWEzOGJjMTk3YjBkYTc2YWI2ZGMgbGVnYWN5LXRydW5rCisxODE4MCAzYmQxM2EyZmM4MzgyNDg0ZTAwMmM1MmU3M2NlMWI1YTVhMjM0MjkyIGxlZ2FjeS10cnVuaworMTgxODEgMTFlM2E2ZTE2YTlmMjI1ZmE2MmE4ODE0ZGVjMDRmZTRjMDNlMDZkOCBsZWdhY3ktdHJ1bmsKKzE4MTgyIGQxN2JhMTQxNDgwYWU3YTYzYjc3ODI3MGFjZTQ2ZmUxZDRmOWU1OWQgbGVnYWN5LXRydW5rCisxODE4MyBmZDE3MjE3ZDViYTg2OGFmMGZlYTM0N2M4YThjY2NhOWZiM2M4MGYwIGxlZ2FjeS10cnVuaworMTgxODQgZDhhY2EzYzg5MGY3YTRmYzM1Mjg1NmIyYzFlZTQ4YjU2MjM1MDcyOCBsZWdhY3ktdHJ1bmsKKzE4MTg1IDY1NTk0ZmViNTUyNzU3ZTc2ZWFkOTY3MGU1M2QwYmM0M2ViZjY3MjkgbGVnYWN5LXRydW5rCisxODE4NiBlNWQ0YzQyNGM0NGY5MzZiNzY0ZjhhNTBhM2ZjYWRjZjgzMzIzZGQ3IGxlZ2FjeS10cnVuaworMTgxODcgYzE4NDZkMzMxZGU5ZDFkMzk3NTJkNWU1MTEzMDFmM2JmZWI3OTI0NyBsZWdhY3ktdHJ1bmsKKzE4MTg4IDBkNjNjMGNhN2FlNDIyMzk0NjUzZWMxYjE0NzMzNGVhMDRmNzNkOTQgbGVnYWN5LXRydW5rCisxODE4OSA1ZDU4NmQ0NWNiNWE1MjRhZDhhMDNkODE4OTg1MjcxZTc3OGU5NGY5IGxlZ2FjeS10cnVuaworMTgxOTAgODE4OTA0YTk5Y2EzNzMxN2UxYzIzN2IxN2ViZjhiN2I3MDhlYTE2NSBsZWdhY3ktdHJ1bmsKKzE4MTkxIDc4OGI1MjNkNDgyN2IyNDY5NDZjMDUzYzU1Zjg0OGI2MDRjZjkyZWYgbGVnYWN5LXRydW5rCisxODE5MiAxMmFlYzMzODFjOTQ2YmM3YjE4ODcwZjIzNWQwYWY5YWQwMjc5NzZkIGxlZ2FjeS10cnVuaworMTgxOTMgZDUxNTdjOGJiMTFhNGRkYTEyYzBjN2YxY2ZkOTJiODgzNDM4YjI1ZSBsZWdhY3ktdHJ1bmsKKzE4MTk0IDEwMGM1MzNkOWEzZTYxNTY2ZDNjNTFlYTcwNGJiNmM0MWI4NzdiYjIgbGVnYWN5LXRydW5rCisxODE5NSBlYzc5ODAwZjRjMjc3MDI1ZjAwN2NhZDMzY2Q1YmVhN2UwNDY0NWZhIGxlZ2FjeS10cnVuaworMTgxOTYgYmJjOTkxYWI2ZDMyMjFhNmY1M2Q1MmM1ZWY1MjIxODg2ZmVkZjg4NCBsZWdhY3ktdHJ1bmsKKzE4MTk3IGE4MWY5MjAyODAzZGJkMmU1NTE2MGExNDk1NTk1N2UzMjA0ZWQxYTUgbGVnYWN5LXRydW5rCisxODE5OCBjYTFhZTIxYTMwMzliMzQxZDNlNjY1NWY4NDk2ZGRiOTM3MGMwN2I5IGxlZ2FjeS10cnVuaworMTgxOTkgYzJkNzQ1MWI0MmY2NmM1MjhiNTAzMjZmZGFhNGZlMWMyN2YwMGFiZSBsZWdhY3ktdHJ1bmsKKzE4MjAwIGQ5OWEwZjZjZmNlMjBjOGFlOTk2MjY2NmU2Y2UzOTU1ZDBhMTYxMjkgbGVnYWN5LXRydW5rCisxODIwMSBjMmQxMDI3NGEyMTQ4OTJmNTNmNzIzZTIxNmNiMmI4ZDI5Mzc3OWVkIGxlZ2FjeS10cnVuaworMTgyMDIgY2IxMWZhNWIxMWY0MjNkZmI1MzM4OWFkNGQyMjMxNTk5MGVlNzU1ZiBsZWdhY3ktdHJ1bmsKKzE4MjAzIGFjZjJiMTllNDM0NDMyMzE0YWI2NzAyMTNiNzcyY2RlZDNiODFmODQgbGVnYWN5LXRydW5rCisxODIwNCBlNTlmNTM4YmI4MjkzYWYyODg1MTFkNTkwZWM0NjRiZWZkNjEzMzFkIGxlZ2FjeS10cnVuaworMTgyMDUgMDNkYzc2MWQyY2M0OWU4ODQ4NTZhZDIxMTVhZTY1NTM2ZTc3ZDZjNyBsZWdhY3ktdHJ1bmsKKzE4MjA2IDU2M2RjZmVjMmFlOWU2YzNhZTE5ZmU1YmM3Yzk3NWI5ODU5MWNmYTIgbGVnYWN5LXRydW5rCisxODIwNyAzMDQ4NzFkNmU4NjYyNDQ2Nzg0NzdiZTE5NzM5MjQxYmIzMmQzN2NkIGxlZ2FjeS10cnVuaworMTgyMDggZDRhNDYzMjZmYWY0MzY5NGVhNjczOWVmMjBlNzYwNzM1NDZkYTNmNyBsZWdhY3ktdHJ1bmsKKzE4MjA5IDBjMTk2NzJkNDdiYjFlMTcxMWNkNGJiMjkxMGQ2NzM5ZTUwYTNiMWMgbGVnYWN5LXRydW5rCisxODIxMCBiM2RlYmY2NDdiNTNlYTgzMTJiYjg2MGI3NTI1ODEwMzhiNDM1Yjk2IGxlZ2FjeS10cnVuaworMTgyMTEgYTYyMjRkYTdiNGU0MzVjYmZmMmUxN2E5NGUxYjU4NTg1OTFmOGQ2OSBsZWdhY3ktdHJ1bmsKKzE4MjEyIDNlNTRjZWZjNThjNjAxZThmMjBlMjlkOTc2N2FlOTQwMjNkOGIyZTMgbGVnYWN5LXRydW5rCisxODIxMyBmNDgwZDUyYzA3NjBhZGIxNDkyZTJjMjM1ZGYyNjZhOTZmNWY3NThiIGxlZ2FjeS10cnVuaworMTgyMTQgN2JlOWVkYzRkNWRiMTFiMDI2ZGM3Y2E0OGQ5MjYxZDllYmJhMjA0YSBsZWdhY3ktdHJ1bmsKKzE4MjE1IDJhMzY5NmQzMjcyMWU3MDA5ZDI5Zjg3YzFkMDUxMGYyNmYwNzFjNDggbGVnYWN5LXRydW5rCisxODIxNiA2ZTcwYmFhNDg3ZWQ1MjM0ZDRiM2ZiZDY1ZmJkMjRlYWJlMDdhMmU5IGxlZ2FjeS10cnVuaworMTgyMTcgZWUyNzFjMjBiMDVmM2IyNDlhMGMyMjdlYmUwYzZkZjdkZmRiOGZiZiBsZWdhY3ktdHJ1bmsKKzE4MjE4IGFiMzQzOGNmMWYzZTZiMzZhOTkwY2I4YTI1YWIxMmUyYzk1YmI2MzIgbGVnYWN5LXRydW5rCisxODIxOSAxMmI5MmEzNTY0MWJlMmVlY2JhNjhlZmVhY2FkMGJlZmU0MmQ4MzkxIGxlZ2FjeS10cnVuaworMTgyMjAgNzRlMWQ3OTUyMGZkNGNkZWNjZWFmYWFjZGQzZmExYWU4YmM3YzNjOSBsZWdhY3ktdHJ1bmsKKzE4MjIxIGEzYWYxNDVkMjUzMWUwYzM2NDI3ZmM1MTM3NzRmMDNhM2UzNDU5MjUgbGVnYWN5LXRydW5rCisxODIyMiA5YTE3Y2RjZDMzMjAzNThkYzE2NTMzZDQ2ODQ3MmExYTFiOGJkNDY1IGxlZ2FjeS10cnVuaworMTgyMjMgNDdkOWZiZTY1MzdjODdjZDZkYjkzYzJiYzY3NjdhZjlkNmE2YzIwMiBsZWdhY3ktdHJ1bmsKKzE4MjI0IDA5OTUyZDZlZDM3MjU5ZjE2ZDU2MTY1MmIyMDA1MWI4NTZjNGFjODggbGVnYWN5LXRydW5rCisxODIyNSAxZTRkZTYwMTA1MWMxNjI0MTE4ZGVhMzM2NDM5MWU1NzQ3OGYyOTk1IGxlZ2FjeS10cnVuaworMTgyMjYgM2M2MDgzMjQ3Y2U3NTVjOTYwMDI3NTJlYTljNTkzZTc3NDVmNjQ5OCBsZWdhY3ktdHJ1bmsKKzE4MjI3IDgyNzVkODY0M2U3OTg5MTM0ZWRiMDQ3YTUzYTIzMWI0OTA5ODllZmEgbGVnYWN5LXRydW5rCisxODIyOCA5MDBmMjY2YzVkOGUyYzE5MjcyNDZmNzc0ZDZhYjkyODA0YzQ1MTM5IGxlZ2FjeS10cnVuaworMTgyMjkgM2FiY2I2OTY2NjE3NTkyNjRjYWI2YTU2Mjg2OWVlOGEwZTM5ZjMxMCBsZWdhY3ktdHJ1bmsKKzE4MjMwIDJlMWFiMGM5NDFjMGVjYzI3YWRlYTA5MzNjM2FmMWY3OTkwMzA1NTggbGVnYWN5LXRydW5rCisxODIzMSBjN2Y1ZGQyYmRjN2Q2OWY1M2U5ZWY3OWIwOThjMmU2ZmZjNGY0NTE0IGxlZ2FjeS10cnVuaworMTgyMzIgZjYyMzM5MzhmZjg5YjBlNjQ4ZjZmMzEwMjBlOTgxZTVhZDY5N2M0NiBsZWdhY3ktdHJ1bmsKKzE4MjMzIDAxOTIyYTBmNmY5MmIyZTNmZWIzZjhjODllYTk5ZTIxOTkyNWZjODcgbGVnYWN5LXRydW5rCisxODIzNCBhODI2YTQ2YmFlNTRhYzkwZjBmYTllZDAxZmQyNjUyMGRiYWNlZGQxIGxlZ2FjeS10cnVuaworMTgyMzUgY2VlOTZiMzkxZmZjMjYwNjc1ZWI1Njk4MTJhZDIxNmQ2ZTYxOGJjNCBsZWdhY3ktdHJ1bmsKKzE4MjM2IDQ5M2NhOWU0MjYwZTUyYTIzN2Y0MGRkMzQ3NjViY2E0Yzg4MThhOGQgbGVnYWN5LXRydW5rCisxODIzNyA4M2NkZDQ1NDg1YTU3M2EyYWU1YmY4NzI0YjcxNTE4ZTk2ZjYxNTBiIGxlZ2FjeS10cnVuaworMTgyMzggOWIxYmUxZDg0ODEwNDY3Mzk3NDY4MGFjZmM0YjQ4ZjczMDhjNTcxOSBsZWdhY3ktdHJ1bmsKKzE4MjM5IDdhODJmODQyOTBmN2JiZDMwNDg4YTE1NWE4NmIzOWQyYjgzMWYyZDcgbGVnYWN5LXRydW5rCisxODI0MCBiYjAwNmFkMDBkOWVhYzZjZjk1NzgzN2ExMmQzYmE4M2ZiZjRmODIyIGxlZ2FjeS10cnVuaworMTgyNDEgNTJjMjdiNzExNjg2OTAwNzI0OWI2M2YxNTU1YzJhNGQwNjJlMjk2MyBsZWdhY3ktdHJ1bmsKKzE4MjQyIGMxMDRmMDBjOTkwOWViMTg2MDVkODc4MzkwMjgzY2E5ODdkMTViZmEgbGVnYWN5LXRydW5rCisxODI0MyBlZWI3YzhhNWI3OWY2NDNjMmRiNzdiNDcwOWRiN2M2OTQzMzUzYWZhIGxlZ2FjeS10cnVuaworMTgyNDQgM2NiMTJlMGU3YWNkMTAyZGMzOGI2Y2Y0ZTViNGFiMzAxN2U0NTg2OCBsZWdhY3ktdHJ1bmsKKzE4MjQ1IDIyZGJjZmZjNTRlZjEwZjg4MDNjZWNhNGNhZGQ1ZDEyNDgwYWEyMjEgbGVnYWN5LXRydW5rCisxODI0NiAxNmMxMmQxNjk4ZjZhZDYwZDFkNjlkMmJkNmM1MTFlMmE0YzhhNjI3IGxlZ2FjeS10cnVuaworMTgyNDcgYjM0NjllYjc4YmM2NjgxMTMzZGEyNWRkZTUwYmE3MzI3MGMyNTZhNSBsZWdhY3ktdHJ1bmsKKzE4MjQ5IGYyOTAxYjZhYzVlZDk0NjhjNTYyYzkwNGYyODMyODFiYzA4MTE2MWUgbGVnYWN5LXRydW5rCisxODI1MCA4N2E1YmFlMWI5NDRhOTk5MzFmN2I1YzFiNzc3MmRiOTZiMGUwZGIxIGxlZ2FjeS10cnVuaworMTgyNTEgZjYyZTNlNzg3MWJlOTIzOTJjYjkzZWQyMTRhNjAyMWZlM2RkMTE5YiBsZWdhY3ktdHJ1bmsKKzE4MjUyIDUxOTJiZmQ3YThiYmQ1OTAxNzkzMjRlMDJkYzY5YjdmZTljZjViYzcgbGVnYWN5LXRydW5rCisxODI1MyBmYWU1YjFlNDE0OTFkNjM2YTk0ZGY1MmFjNGNkZmM4MDc2YjYxMWQxIGxlZ2FjeS10cnVuaworMTgyNTQgODZmMDZjMTUzZGRhNGEzYTM0MzZiNzk3MzIxMDFlMjFmYTk1YTVhNiBsZWdhY3ktdHJ1bmsKKzE4MjU1IDk2YzM5NGE0M2I1YmFmYzY3MWViYjA0MGYzZTkxMjAzZDBkM2VlYjUgbGVnYWN5LXRydW5rCisxODI1NiBkMjY1YmY0YWRhN2M5MjEwZjU2ZGYzZDk1Mjk4MzViNzM1OGMxY2Q5IGxlZ2FjeS10cnVuaworMTgyNTcgYjcxNDU5YWVkYTk1NjhkZTc5Y2EzOGI0NGU5ZWZkNjY3M2FjMzFjMiBsZWdhY3ktdHJ1bmsKKzE4MjU4IDVkNWM1MTMwNGY3YzVhYThjNzA1MDI2OTI0ZGRjYjEzYTY5NTA1ZWYgbGVnYWN5LXRydW5rCisxODI1OSAzYWI3ZmFhZTgwM2FmMjRjM2M2NzBjZTAxOGE2NmViNmMyNzgyMTAyIGxlZ2FjeS10cnVuaworMTgyNjAgYWExZWMyNzBmMmQzOGI4NGUwMmMxN2E5ZTZjNDhiOTk3MmVkYmZjMyBsZWdhY3ktdHJ1bmsKKzE4MjYxIDhmODIzMTZmNjlkNDA1MWZiOTgxYmRlZWY3Nzg5MWI3ODI0OWU3ODYgbGVnYWN5LXRydW5rCisxODI2MiBjNDVjNTA4MGM4NDQ4MTBmMmFkMzFjOTE2ZGUzYThjNTczZDU3MDMyIGxlZ2FjeS10cnVuaworMTgyNjMgZmRlZDVjOWVjYzliYmY0YTBkOGQ0M2ZjYjBlMzhiZDUxMGFlOTM2OSBsZWdhY3ktdHJ1bmsKKzE4MjY0IDViNGFiY2VmZjUzZDRkMzk1YWJjMjFhYjc5NzQ3ZWMxYzJkNGQwOTEgbGVnYWN5LXRydW5rCisxODI2NSA5YTY4OTRmOGUxYTA5NzM1ZDk5M2YyNDI5ODA4ZmY2ZTFkZWJmMzA4IGxlZ2FjeS10cnVuaworMTgyNjYgYWYxZTllNjRlZDlkMjQxODkwZGVhNjQ1ZDczYzBmYzI1MDlkYmU5NiBsZWdhY3ktdHJ1bmsKKzE4MjY3IDc3MTcxMzE4ZTMyMTI4NzI5ODQyZTY3MWFkMjY0OThhZjNhYWVhMDUgbGVnYWN5LXRydW5rCisxODI2OCAzNzUyMjljM2FjMGQ5OWVhY2FjOWJlNDFiOTY3ODRmZjQwZTAxMmJmIGxlZ2FjeS10cnVuaworMTgyNjkgZGRkOTAzZmI2YTcxMDgwMzdjZDQ5ODIzOWQ5MGExZjBiZTBiNzA3ZCBsZWdhY3ktdHJ1bmsKKzE4MjcwIDk5Y2E0MTljYTU4YmJiN2UxM2RlMDlkYjEwZmQxODcxY2YyMzRiMzUgbGVnYWN5LXRydW5rCisxODI3MSBiNjQ4Y2IwZDE5ODhmMTdmNDQ1OTg0YjEwMWFkNTUwNjA2NzFmNWEzIGxlZ2FjeS10cnVuaworMTgyNzIgNTZlOTdlNzI3NTY5YzNhMjYzMTA4N2U3NzM4MWU2ZTI0OTJjZGMxYiBsZWdhY3ktdHJ1bmsKKzE4MjczIDg3NmNmN2IzZDNkZmIxYjViOWYxMjRkNzlhZDYxOWRmOTAwMTMwZTkgbGVnYWN5LXRydW5rCisxODI3NCA0YWU0OTI5YjEyZmZlMWQ4NzMxNmU3ZjgwMjdmMGQ4NWQzY2VhYzhjIGxlZ2FjeS10cnVuaworMTgyNzUgODZmNGUxZWY4MWNhYWMwNTViOGRjNjIwMmEyYTdjNzM5MDVmNDgyMyBsZWdhY3ktdHJ1bmsKKzE4Mjc2IDBmMDBiNmM3YjliOTVlMTM2NGQwYjI2NjFiMTgxZjM0NjhlNGUzYzQgbGVnYWN5LXRydW5rCisxODI3NyBjOGQ0ZTZmMWI1ZmU5NzVjMjc2ZjE5NWZhODE0ZDhiMDZiZjhhZjQ0IGxlZ2FjeS10cnVuaworMTgyNzggNmIyNTI0ZTljNjcyZTgwNWQ2MGQ2NTVlODE2MzA4Y2UyZTllNjM0YyBsZWdhY3ktdHJ1bmsKKzE4Mjc5IDA2NDY1ZWQ4MTgyNjMwNWE4ODdkYWEyMTg2ODlmYWQ1ZGEzNDZkN2MgbGVnYWN5LXRydW5rCisxODI4MCBiZDQxZTYyNzNlZDliMzE0NjY5Yzc4MmEzOTk1YzBmNDM5NWNiYWY1IGxlZ2FjeS10cnVuaworMTgyODEgMjdlNGY1NjAxYWE1ODljMjBkZjc2MjhmZjEyZmE1MmRiY2M2YzI0OSBsZWdhY3ktdHJ1bmsKKzE4MjgyIDQ5MTg1MTdlZDZiNGNiNGYwYjNmYWY4MTQ1OWJiNjZlMDdkMGQ5ODUgbGVnYWN5LXRydW5rCisxODI4MyAzOWFiODI3ZTcyYmQ2ZTc3YmRlM2Q5MzQyYTlmNWJjNThjZWIwZmNjIGxlZ2FjeS10cnVuaworMTgyODQgN2ViZGZlNDI1YzgxZWI2MjM2NzYyYjgzN2QyNDZkZGI1OWFiNjBjMyBsZWdhY3ktdHJ1bmsKKzE4Mjg1IDk3ZWEwYjQ5NDIyZmZmMmE4NGFiOWI5ZjJiODQxZWZkNDUyYjY3MmMgbGVnYWN5LXRydW5rCisxODI4NiBiZTMzMDc5MzYwYzY2OTRhY2QwNTcxNzllZGFhZjExN2M4NzgxZGNiIGxlZ2FjeS10cnVuaworMTgyODcgYTkzNTEwNTE5MjNlMGIwNDUxNWEyMzg5NGJjMDMxY2I4OGI1YTM3YiBsZWdhY3ktdHJ1bmsKKzE4Mjg4IGMwZjFlYmQzMjA3MjM5MDA4MzUwNjFmNTUwMTNjOGIwNGRlZDk5NDIgbGVnYWN5LXRydW5rCisxODI4OSBjODMzZGNkYjNhMTU1NDdhOWJkOTExZjY5MzJlNjNjZDkwMzdhNjY5IGxlZ2FjeS10cnVuaworMTgyOTAgNzhhN2Y4YTY0Zjg1YTc0ODE3YjU5YmFmN2U3ZDEzYjUwNWE0ZTAwZSBsZWdhY3ktdHJ1bmsKKzE4MjkxIGQ1YTU0MjhlOTY1YzRkMjUwYmI0NWMxNDVkODU0MWIzZTdlNTA0NDAgbGVnYWN5LXRydW5rCisxODI5MiA4NDk2OTg1NTBiMzJhNjhiOTVmNWQxMzYzNzlmYWYzYjNmMTdlMzE4IGxlZ2FjeS10cnVuaworMTgyOTMgMjA0OWQ1NzBjYTVhN2IwZTQzY2ExNTU3MWQwNTE3N2E2NDViNGIzOSBsZWdhY3ktdHJ1bmsKKzE4Mjk0IGFjNmZiYTBlY2MyOTAyNDI4OGZiZjdhNjhiODNiNGIxZDI1MGU2YzkgbGVnYWN5LXRydW5rCisxODI5NSA1M2M5ZDE1YWQ5OGVkNjkzNGYxMTE0OGIyNDRhZTJhZTlhODI3ODk5IGxlZ2FjeS10cnVuaworMTgyOTYgZmIxMDkzNzA2MGNjYmMzODhkOGRkNjM3YmNlZTJkZjg1N2Y1Mzc4YyBsZWdhY3ktdHJ1bmsKKzE4Mjk3IDRlODU3N2ZiOTQwN2ZmNmU0ZTQwMzE4OWIzMGQ3NTdmM2E4ZTZjOGQgbGVnYWN5LXRydW5rCisxODI5OCBkNWYwNjk2YzM3ZTgxYmFiMmY5MDdiZjljNGY5YzIwYjc2YWQ3YzhjIGxlZ2FjeS10cnVuaworMTgyOTkgNDMzNDU4NjUxZWI0MDI3OTU0ZmI3MzI1YzAzNjljMGRiN2M0MzlhYSBsZWdhY3ktdHJ1bmsKKzE4MzAwIDMyOGZhYzFjYTIxMGZjYjYwMGIzNWJmYTY0MjU2NjRlM2VjZTJmYWIgbGVnYWN5LXRydW5rCisxODMwMSBlZjQ2NmExOWUzYmM2YTI1NmQwMzQzODA5NGRlNzQxZTViNjU2ZjgwIGxlZ2FjeS10cnVuaworMTgzMDIgNGFjNTU1YTg3NmEyM2Y1MDBmNzY0Zjg2NDE3NTM2NGQ2YTc4ZmFiMiBsZWdhY3ktdHJ1bmsKKzE4MzAzIGI4NTVjODhjNmFmNmE0MTZkMjgxMjUxNWJlNTZjMzc4MDc5MDE5NjcgbGVnYWN5LXRydW5rCisxODMwNCA2OGRlOTE4NWI0MWUyYTMxY2UyM2NhNmUzYjhjYzRiNjQ4ZjJjMDU4IGxlZ2FjeS10cnVuaworMTgzMDUgN2U1MTRmMWZlMzFmY2Q0ZmFmYzYwN2JmMGY4MDFlYzQ2ZGVhMzVjMiBsZWdhY3ktdHJ1bmsKKzE4MzA2IGRjZDJiZWJjMTgwZWY0M2I1ZTBhNjU0ZjkwNmVlZTkzZWU3NTkxNGIgbGVnYWN5LXRydW5rCisxODMwNyBmODEzZWRlMTM0YmY2OGQ0NWM3MmNjMDMwYjA0YTc2MDJhNjgyYjZmIGxlZ2FjeS10cnVuaworMTgzMDggZjgyM2I5YWEwYzAzNjE1MTQ5ODQ2Yjc1Mjk1NmE5NDNjZThkMTkyOCBsZWdhY3ktdHJ1bmsKKzE4MzA5IDMxZjcwY2EwNmM2OGY5NGE3NGY0YTRkNmQ3NzY0ODk1ZDI2NzIxYjAgbGVnYWN5LXRydW5rCisxODMxMCA5YWI3YTU5N2VlZmU5MTQyOWVkZDA4ODdiM2MyMmYzZDg3NzU4NGUyIGxlZ2FjeS10cnVuaworMTgzMTEgYWU0OTAwNmIyZDhmYWE2YThiODA4MDViYTM1Y2I3NDJlMDc3ZDZlNyBsZWdhY3ktdHJ1bmsKKzE4MzEyIGRiNmQ5YmI3ZWM5NDUzYjc3NGI5ODhmNDgxZDQzOTBiOGE5NWU3MzggbGVnYWN5LXRydW5rCisxODMxMyBmMmMxNzZkODQ2YTRhNWI5MGNjMWM3YmIyOTc4NDZiOTQxOWNjZjc4IGxlZ2FjeS10cnVuaworMTgzMTQgNzcyMWZiNTA5NDYyMzFkOWY4NjNlMjNjYzg3NmZlMzg2MTc4OWZmZiBsZWdhY3ktdHJ1bmsKKzE4MzE1IGNlNzc3MzhiODFhY2JmNmJkZmY0OTE4MTVkODNjZGE4Y2Y0MjlmOWIgbGVnYWN5LXRydW5rCisxODMxNiBkMDE0NmQxMjg4OTdlNzM1NDY2MWQ5MTQ4ODI5NjhjMGQ3MWZlMTRhIGxlZ2FjeS10cnVuaworMTgzMTcgNTk3MDg5ZGQyNjA5YTVlYTJlMWVkNTdhNTY1MzljOWYxZjFiMzI5MSBsZWdhY3ktdHJ1bmsKKzE4MzE4IGFmMzk3ZjdkYmJkNWViNTA3NTdlOWU1YjU2Njg4ZjRhNGEzOGFiNGIgbGVnYWN5LXRydW5rCisxODMxOSA1ZDc1OGNmNTExMWQ3ZDhjZjg0MDEwZjE0OTFhNDcyNzc2NmU5YzM2IGxlZ2FjeS10cnVuaworMTgzMjAgYTc5ZDM2MjRmODQ1NGE2ZDQyODIxOGI4Y2U0NGU3ZWUzMjlmZjNhMSBsZWdhY3ktdHJ1bmsKKzE4MzIxIGQzOTdmNjY3NzVlOGJjNDFjYTYzYzU1MDY1MTM2YzY5ODcwOGI4NWIgbGVnYWN5LXRydW5rCisxODMyMiA5Zjc3NWUyNDliYTE4MDg0MTk2YjU2MjE5YTdlNGM1NDU5YmUxNDlmIGxlZ2FjeS10cnVuaworMTgzMjMgYmJlOGE2NGUyMTllNThmNWZiNTI5ODQ5ZDVhMWNlNjAyODhmY2QzOCBsZWdhY3ktdHJ1bmsKKzE4MzI0IGFhYTkxZWQzZmNmZDI5ZDU5NDAzMmQxM2M3OGMyNTE4MTY3NmQ4ODcgbGVnYWN5LXRydW5rCisxODMyNSBjN2YyMjVhZTMxNjA1YjIwMTM1MmY1ZjNlYWIxNWU0OTgwY2JhN2UyIGxlZ2FjeS10cnVuaworMTgzMjYgMGI4NGIzMWFhOTc1MTg5N2ZiNGY4NjU3M2EyYmZhZjdmZTk3YzZkOCBsZWdhY3ktdHJ1bmsKKzE4MzI3IDk3MzFiYmI1MmZiNGFjNDliNmUzZTVjN2I2OWI4NDc0NTE0ZjQzMjIgbGVnYWN5LXRydW5rCisxODMyOCBkNzg2NDM0NWIxYzhhOGM0ZTdhYjkyYjU5MmYwZDNjZGYzMWUwMjg5IGxlZ2FjeS10cnVuaworMTgzMjkgMjE5ODZjYzE0YmIyYTdkMGM0NTcxZTI3NThmYTg0NWVlODIzMDhmOCBsZWdhY3ktdHJ1bmsKKzE4MzMwIGFjMjIwYzMxZGRkN2U5YWIwM2QyMDlhMmJmZmQ3ZWQzOTlhNWNiOTEgbGVnYWN5LXRydW5rCisxODMzMSBlMGQ4YTZmMmQwOTExYjI2ZDZmYTVjNTM0M2NiZTg0Yzk2NGI1ZjNkIGxlZ2FjeS10cnVuaworMTgzMzIgODZjZjY0ODBkMmZhNjNiN2U0ZGEzMmIzMTEzYjQ1ZTQ3NTk5OTE0NSBsZWdhY3ktdHJ1bmsKKzE4MzMzIDQ4ODA0ZGFiNzg4Y2E2ZGE1YzBlZGU1MDllNGJkMmRkZTU2MDZiNDggbGVnYWN5LXRydW5rCisxODMzNCAyZWNlOGZhNTY4MDgwNzhiNzQ1NjZmYTNlNmJlNzI0ZTIxYjBlZjU1IGxlZ2FjeS10cnVuaworMTgzMzUgZWY5MTM5MzM3NTQ3NGZhOWQ2ZDM0OTk0MmMzNmViNzc5ZWY0NDczMSBsZWdhY3ktdHJ1bmsKKzE4MzM2IDY1NWY0YzRiYjk0NDliMWRhNjBkNGRiMWNjY2NlYTMxNGJjZmE1NzMgbGVnYWN5LXRydW5rCisxODMzNyAzYmUxZjVjNTIwYWQ1MjVmMmY1NzY5MDI1YmMwMDRjNjhhNWUxYzVkIGxlZ2FjeS10cnVuaworMTgzMzggYTVjZmY4YzFmNGU0YTQyMTRiOGYzOWNlZjNjMDY4NjczMjA2MmRkZSBsZWdhY3ktdHJ1bmsKKzE4MzM5IDg1NmIyYmMyMTZmOWZiMzgyNmNmMjE1MTRhNTQ2MTRjM2ExNTQ2NDggbGVnYWN5LXRydW5rCisxODM0MCBlOTg5NjRiYzI2ODE0MzIzMTQwY2YxOTRlMzM3ZTJlNDg3MGY0YjBlIGxlZ2FjeS10cnVuaworMTgzNDEgM2MzM2YyYzM1N2QzYjZjNzVmNGMzMDY5ZWUxOWFkMWQwYWE3ZDY1NCBsZWdhY3ktdHJ1bmsKKzE4MzQyIDA3YzJlMTM2MjYwYzNlY2U0MDI2NWQ4NTIwZjIyZTFkOTljY2YxY2EgbGVnYWN5LXRydW5rCisxODM0MyA2ODM4ZTcyZjhkZDI3MDdkYTA4ZTIxMDU5NmVlNmQ5YjhkMGQ0NWY2IGxlZ2FjeS10cnVuaworMTgzNDQgMTA1YzI1MDUyZGU5OGVjNmE0NjQ1NjRkMDZlMWY5YzY0NDc5MjRkOSBsZWdhY3ktdHJ1bmsKKzE4MzQ1IDA3NzA1MTc3Y2E2YmVkOTVhODgyNjY0OWQ1NDk5YzEwNGVlN2Y2M2QgbGVnYWN5LXRydW5rCisxODM0NiAxMDkxYWQ5YTAzMDNjZmM4YTI2YTM5YTM1ZmU0OGZlNDNhMTg2N2Q5IGxlZ2FjeS10cnVuaworMTgzNDcgYjMzOThjNDUyZDk1OTFhMjE0NDUwNDA2MDlhYjNhMzAyN2Q3YTQ3MSBsZWdhY3ktdHJ1bmsKKzE4MzQ4IGYwY2E0YzY3OTU3YjU3YTlmMmNjNWFmMDZiOTVhMGNlYWUxY2IyYjUgbGVnYWN5LXRydW5rCisxODM0OSAyZDFiYmJhYzc2ZDMwN2EwZjk4YmVlY2Y1ZGMzNDAzZTI0OGRlYzU3IGxlZ2FjeS10cnVuaworMTgzNTAgMTBmNmUxOTU2NzFkZmU3ZjdhOGI4ZTlhMDVkMjJlMTg1MmNlZGNhYiBsZWdhY3ktdHJ1bmsKKzE4MzUxIDhhNTk2ZDEwYmM3MDg1M2JiZmJhYTkxY2FkYzJmOTA3MjExY2IzMzcgbGVnYWN5LXRydW5rCisxODM1MiA1OGI0YWU0ZWM1NWM2ZThjZTJiMGJhZjI3OTg3MDJmYWY3YTUxMzJkIGxlZ2FjeS10cnVuaworMTgzNTMgZjY0MDM5MDIzZDY0OTIzYTA5ZmJlNDhiODQ4YzQ0NjlmMTFmNDhkOSBsZWdhY3ktdHJ1bmsKKzE4MzU0IGZkODRiMzUyNDE0NTc2MTM4OWQ2Y2JkOGY5OTY5MGNjYmE3ZmI0OGEgbGVnYWN5LXRydW5rCisxODM1NSA4YjU5NjQ1MWYxYzE4ZjE3NGZkY2ZhOWFlYTNlYmEzOTQ5M2VmNjI2IGxlZ2FjeS10cnVuaworMTgzNTYgMzJjNDQwZDJiMGRmZDZkZDFjNzZkZmM0NzE3OWIyZjRlMGIxZDE1NSBsZWdhY3ktdHJ1bmsKKzE4MzU3IDI2ZDQxNGMwYTA5MjAyZTBiZjA1MWRiN2Q4YzkwOTA0YTBhNjEzYTcgbGVnYWN5LXRydW5rCisxODM1OCBmM2JmNWYwODJhM2Y4YTc5ZmYyMTZiNGZjZmQ1NmRlNmIxNDJiZjE4IGxlZ2FjeS10cnVuaworMTgzNTkgNDYyNzU2MTFjZDU5YmU4ODgyNTNkMjFmMmIzYzllMTQzNjAxZDFhZCBsZWdhY3ktdHJ1bmsKKzE4MzYwIDhiZTg4OWU4MTE1YmNiMDRkNGZjOWFhNTg5YmI1NWUwZjY3ZmYyY2MgbGVnYWN5LXRydW5rCisxODM2MSBkMTM3Yjk0ZjNkZGZkMTZlYmUzNTRmM2VmNDFjYTM0ZDk5YjUzNmYyIGxlZ2FjeS10cnVuaworMTgzNjIgNTVmNGE2ZThiNWIzYTdlNDMxYjkzMjliZjQ5YTY5Yjg1NmJkMGQ0YSBsZWdhY3ktdHJ1bmsKKzE4MzYzIGRhYWRkMWU4NTMxNjU4MTg0Yzg2OGQ3OTM2YTQyMjVmNmZhNjI4ZGUgbGVnYWN5LXRydW5rCisxODM2NCAzOTc0MmM5MWFkZDNlNDdlMTEyOGM0MDkxMzdkOTVmZGQyZTY5MTIxIGxlZ2FjeS10cnVuaworMTgzNjUgNGI2NThjMDU5YzIzZDlkZjljYmNiYzQ4YzcyNjg5MmJjNjA0NWFjZSBsZWdhY3ktdHJ1bmsKKzE4MzY2IDVlOWQwMTI3YWNlOWExY2M2MDFhNzA1NGJjMzE0M2YyZGI4OGRhMGEgbGVnYWN5LXRydW5rCisxODM2NyBhYzgzMGM5ZTlhODM3MmEzMWMxYjc1Zjc4NzE3ZjcwOTkwYmNiODc1IGxlZ2FjeS10cnVuaworMTgzNjggMzQwNThhZjk3NmNlY2VlYWRmMTAzMjQwYmVjMjVlNWM5Y2M3MDY0OCBsZWdhY3ktdHJ1bmsKKzE4MzY5IGVjZGU3NzE0MjhmOWViNDcyZTg2NWU5ZDMwZjI2Y2QxYTFlMTA3ZDUgbGVnYWN5LXRydW5rCisxODM3MCAzMDU0NmEyYjk0NTBlNTg5Yzk4MDk1MTIwM2UyZDYwMjMxYzk2OTkwIGxlZ2FjeS10cnVuaworMTgzNzEgZGI3NTcwMjI1ZWY4NDIxOWE5MDBiZmE3YjE4ZmY0MzY4MTJlMWQyNiBsZWdhY3ktdHJ1bmsKKzE4MzcyIDM0ODBlODNlMTdhYmIxZTg0N2FjMjIxNGFlOWE4ZTY4NWJhZjFjMTEgbGVnYWN5LXRydW5rCisxODM3MyBlMTFjMTIzMjNlYmY1YzUwOTI1MWQ5NjJjMTg0ODA3NDk3NDVkYWE2IGxlZ2FjeS10cnVuaworMTgzNzQgZWZjOTZhYWI3MWMyODkxZDA3ZTEwM2ViM2JkMjE4YTE4NDlmZmU3ZiBsZWdhY3ktdHJ1bmsKKzE4Mzc1IDNlOTRjYzJhMDQ3M2ZmNWY4YmQ3NTg2OWVjMDQ1MzMxOTJmMWRiNDIgbGVnYWN5LXRydW5rCisxODM3NiBkZDU4M2MzM2Y0NTVhY2EzNTNlNDhiODI1YzU0OGZhNjY3MmZkMWIwIGxlZ2FjeS10cnVuaworMTgzNzcgYzEzMzM2NTcyZjRmNDFhMDFiYzM4Y2Y1YzkxOTA4YTFmMDMwZWI3ZiBsZWdhY3ktdHJ1bmsKKzE4Mzc4IDVlNDFlYmRmYTlhMDBlNDNmNTZjOGYzOGNhOTlmMTY0MTk2NDJiNmIgbGVnYWN5LXRydW5rCisxODM3OSBjMGFkNGMyZWY0NDQ2MWZjYTI4NmYzNzI3YjlkMjM4MGUyOGUyMzNlIGxlZ2FjeS10cnVuaworMTgzODAgZWQyOWRmN2ViNWM5NjE4NmU3ZDIwMDI3OTFjYWZjZTViOWQ3Y2JjNyBsZWdhY3ktdHJ1bmsKKzE4MzgxIDg4NTRkOWQ1YWRkNWY0NjIxZTJmZTcxOTVmMzdjYzExZjRmNWYwOWYgbGVnYWN5LXRydW5rCisxODM4MiAwNzBlZTMxY2FmMjhiNzBlYzA1MTIyYjFmMjE0NmEzYzA2YjNmYWFlIGxlZ2FjeS10cnVuaworMTgzODMgYWFhNTQ3NTJlNGJhZDAzOTYwNWFjYzgzOWRmMDlmZTk2M2RlNjI3OSBsZWdhY3ktdHJ1bmsKKzE4Mzg0IDEwMjIxYTZjN2MzYzVmNmNlY2FmZjNiMzA4MmE1MTVhYzlhZGQ4YzUgbGVnYWN5LXRydW5rCisxODM4NSBjZjE3NTBjM2Y3ZjdmOThkMDhlZGYwMDBmYWZjNGIwZjc5NTcwNjIzIGxlZ2FjeS10cnVuaworMTgzODYgMzJjNTVmNTc0NmRlZDIwYTIzNTNmNzQ4ZTI5M2Q4MmNlOTc4YWRhZCBsZWdhY3ktdHJ1bmsKKzE4Mzg3IDhkOWZmZmVkMzRmNDA2NGJkYzkwZDJhN2Y1Y2E4MzNlNTY1YjQ2YTcgbGVnYWN5LXRydW5rCisxODM4OCAwNDFkNTdlM2EyYjkwNGJlNWE4ZmZmMGNjNmYyOThmNTA3YTExMWE1IGxlZ2FjeS10cnVuaworMTgzODkgNWZlMmVjNTA0ODM2YzEwZjIwOTk5NDY4ZjY1Njk1MDk1M2VlOGFiYyBsZWdhY3ktdHJ1bmsKKzE4MzkwIGE5M2Q3OWRhNGY4YzVkYmNmM2Y4NGJkYzQwNzA3NjY1NGU5ZDUyNDcgbGVnYWN5LXRydW5rCisxODM5MSA3OWZjZDJiMzE4MDhiZGU2Y2RhMTQ3ODYzMTVlYjYyYWM5ZjUzNTk1IGxlZ2FjeS10cnVuaworMTgzOTIgYWQxNGRkYmQwOWE3MjVlZjZiNDNlZWExNDNiYzcyODFjNjA1N2QwMCBsZWdhY3ktdHJ1bmsKKzE4MzkzIDI5ZjQyNjk0NDAyYjgwY2Q5NDM3NWIwMjhjMjEwNTZkYWNjOWQyNjcgbGVnYWN5LXRydW5rCisxODM5NCA1ZDk4ZDQ5NzEzZjIxYTFjNjkzZGNiMzE0MTgxNDcyNDI4MmIwMWI1IGxlZ2FjeS10cnVuaworMTgzOTUgMGNiNzUxYjU2MzkxNmMzMGU4ZTdhNmViMzU1NWViNWY2Y2EwMDdmZCBsZWdhY3ktdHJ1bmsKKzE4Mzk2IDdlZTM5ZTE0Y2YyYjBmODJjNGJlODVhZTA5ZWIyYzQ3ZmVkMzA2OTIgbGVnYWN5LXRydW5rCisxODM5NyBjNTlmNjQ1ZGFlZGVkMGRkYTRlOGIwMTEyNTllNjA1YzQ2ZmYwNzVhIGxlZ2FjeS10cnVuaworMTgzOTggNTAzNThkNjRkYzQzN2I3ZTVhYjM5MTVjMmRiODJhYTQ0ZTY2Njg5MSBsZWdhY3ktdHJ1bmsKKzE4Mzk5IDNiMDRkMzQyNWZmMGYzMTA4OTRjZTcyNTU4NzIzMjRjYmZkM2Q5MmUgbGVnYWN5LXRydW5rCisxODQwMCA1YWFjNTg3M2FhYWU3ZDA0ZGY3Y2QzOWUyNzZkNmIwZWM4N2Y4OWJmIGxlZ2FjeS10cnVuaworMTg0MDEgOWQ0MzEyOWM4YzU1ZjMzN2E5YmY1OTU2YjE3YjYyNjQ5MTU5MTliOCBsZWdhY3ktdHJ1bmsKKzE4NDAyIDU4YmM5OWUwMTJhODVmYTk5NzcxNWI4ZGZkNjA2ZmRhMDA4NzY1MjEgbGVnYWN5LXRydW5rCisxODQwMyA2MzU5NDgwMTA2ZWNmYTk5YWQ2MTljNGViZDcyYmNhZTAwYzU0NGZkIGxlZ2FjeS10cnVuaworMTg0MDQgNzg1MTU1ZTJjZmNhMjk0OWYwZDc3ZmI2MDYwZTVmODk0NDk4OThiZCBsZWdhY3ktdHJ1bmsKKzE4NDA1IGNiZDRmMzU1YmI5NmY3OThjMzBjMWZlYjdmMzAyNTNmODY3ODY4ZDQgbGVnYWN5LXRydW5rCisxODQwNiBkNjk2MTFjY2U4Nzc2ODNiY2M1OTdkMmUyNTZkZGUyNmJjZDM1Y2U0IGxlZ2FjeS10cnVuaworMTg0MDcgYmI5M2IxZGNhNTcxOThkMTlhZDM4NDI4ZDc1Y2ViNTQ4NGRhN2MyYSBsZWdhY3ktdHJ1bmsKKzE4NDA4IGFmN2M2MjNkOGQzM2JkN2E5MDAzYzEzNWIxMjk5MWU2YmJiODE5M2IgbGVnYWN5LXRydW5rCisxODQwOSBmM2IwNjgyZDI2ZDYwMTFhMzdmNWIxNzcyZmRiYzJjNGNkNjAyNDBkIGxlZ2FjeS10cnVuaworMTg0MTAgMmZkYmNkZWUyZTFmMmVkNjhhNWU5YTZlZGJjNjE5MDVkOTMzYjEzNSBsZWdhY3ktdHJ1bmsKKzE4NDExIDg0NTY0NmIwOWJmODI0NTgyYjg3MWQwOTI3ZmY5NzIwYTRiMmU1MTQgbGVnYWN5LXRydW5rCisxODQxMiBmOWIxODRhNTcyMjM5NTAxNzliMWM2Y2YxMDNkZGMzMjdmMmRiOGMwIGxlZ2FjeS10cnVuaworMTg0MTMgNGQ5YzMxZjMyYzA5YzI0YmZlMjQ0MGNhNjljYTZjZTAwNDMxN2QyNCBsZWdhY3ktdHJ1bmsKKzE4NDE0IDU3NDM5MzM2YzJlMGVlOTZlZjU5MjIwMTJmN2NiMmVmMTU4N2ZhNjYgbGVnYWN5LXRydW5rCisxODQxNSA0MzU0NmM1YWVlY2NlYTdlZDk5OTA4OWM5OWNkNjAwN2RjODgxNzViIGxlZ2FjeS10cnVuaworMTg0MTYgZjcyMzQ1YjQzNjYyMDFjZmU1NjU0ZTFmZDExZTNkNjk0Y2YzMWMyNSBsZWdhY3ktdHJ1bmsKKzE4NDE3IGQzZjZmMzE1NWMyNDA0YmQxYzkxZDY3YTAyY2E0MTdlNDU5YjlkNTAgbGVnYWN5LXRydW5rCisxODQxOCBiMTc1NDAwZThiMjJhZmQzM2M5NDdiMzFmODRhMzFhMzQzYWJhNzgzIGxlZ2FjeS10cnVuaworMTg0MTkgYzgxYmVkMDE2OGEwOTQ5Y2IxOWNhMjQ0OWRhNmZlOGJhYjYxNWZiMSBsZWdhY3ktdHJ1bmsKKzE4NDIwIGQwOGY4Y2ViM2Q1NTZlM2VlNDVmNDYxY2ViZTFiNzFlZDU5MzhhZGYgbGVnYWN5LXRydW5rCisxODQyMSAxNDM2NDZiYWZkMWJlODkwZjZkZmVmYjE1N2IzY2VhZmVmMGMzOTVkIGxlZ2FjeS10cnVuaworMTg0MjIgOTQ1M2Y2ZmFjZWZhNDVlMTc2OWQzNjE5ZDU1ZWE4MjMxNmUwYzgwOCBsZWdhY3ktdHJ1bmsKKzE4NDIzIDc0ZWU2NjE1ODFiNmQ0N2U4NmU1NDRkMmJhNzViMzliN2I0ODAzNDQgbGVnYWN5LXRydW5rCisxODQyNCAzNWU4YTI5ZTU0ODg0ZTAzYmE1MmVmYTQ2NDFmYzgxZjU5YWE5NzJkIGxlZ2FjeS10cnVuaworMTg0MjUgYzEwNDI2ZGE3YmNlMjQyMGQ1OTMwN2Q1Y2E0NzgxZTg2NDQ5YWFjNCBsZWdhY3ktdHJ1bmsKKzE4NDI2IDRjMjAzNzllNjYzZDQ1ODJiZjBhNDIxNmJhZjQ1ODgwMGYyNTU3YzMgbGVnYWN5LXRydW5rCisxODQyNyA5OTQyMmQ2MTBkYjNhZTk2ZjMxMjhiODA0ZGVhYzgyYmU2ZmVhMTlmIGxlZ2FjeS10cnVuaworMTg0MjggZDM4NTE2Y2U2ZjE0MTlkN2UyOTM4NzA4NDQzMjU2YzFkZGY5MWRmNSBsZWdhY3ktdHJ1bmsKKzE4NDI5IGIzNDIwYjAwMmQ1NWNmNzE5MGE0N2EzYzJjY2IzY2UwMWM4ZDY1NWUgbGVnYWN5LXRydW5rCisxODQzMCA1NmFkYzY4ZTA2ZjY5MTNkYzk0NzM5YzU0OTRkZjMyODNjYzQ1NzFjIGxlZ2FjeS10cnVuaworMTg0MzEgZDQxMGY2YWQzYzYwMThlZWEzMTQxMDdhZjFiNjNhOTg1M2E1OTc4NiBsZWdhY3ktdHJ1bmsKKzE4NDMyIDAyN2VlOWE4NzBkMmMyMzNjOGZkMTU1NmU1YTg2MzkyMzcxOTlmZTggbGVnYWN5LXRydW5rCisxODQzMyAyMTc1ZTU2N2JkMDYyOTBkYmJhNzI4MGIyODA4MDk2NDc5NjVhNjMwIGxlZ2FjeS10cnVuaworMTg0MzQgMjQwNzRmOTcyMzVjNDlkM2IzOTNkN2FkMWU2ZmEyNGEwOTY2MGI5MSBsZWdhY3ktdHJ1bmsKKzE4NDM1IDRhOWYxNTUyYmE2OGUwYmYwMzk4NzAzOTY2NTc4NTAzMTcwYzAxYTUgbGVnYWN5LXRydW5rCisxODQzNiAwM2MzMmZhYTFhNDliNGM3YzU0NDJjMmEwN2UyYzBiZTg2MjFmMjYwIGxlZ2FjeS10cnVuaworMTg0MzcgNThmZTkzN2Y3MzRhNDg3OGFmNDQ5YjlhNTk5ZmI5ZmY4ZDQ2ZTViMyBsZWdhY3ktdHJ1bmsKKzE4NDM4IDk2YzNhZTEzZGRjYTgxOGIyMTNjYzE0NmQzZDE3ZDNlNjQxYTkxNjMgbGVnYWN5LXRydW5rCisxODQzOSBlMDc2NWM1NTEyZDcxOTg5N2QwNWFhNGE0M2IyZTQ3NWYxZjVmNjY3IGxlZ2FjeS10cnVuaworMTg0NDAgMzFkNzhmMzYxNTMwY2YwODczZTkzNDE2ZTYyMGFkMDA5NDJjMjIxNSBsZWdhY3ktdHJ1bmsKKzE4NDQxIDY2ODE2NmE1MGM3MDcxYjY1NzYyOTE1ZDUwMzQxY2ZlNDRlYTI3N2QgbGVnYWN5LXRydW5rCisxODQ0MiBhZmI0NWI3ZmEyNTI4Y2VhOTA0NzIyYjZkNjUyZGVjZWFlZTQwZDNjIGxlZ2FjeS10cnVuaworMTg0NDMgNjE3OWQ0YWZhNGU0ZTVjZmYzYzI1NjJhYjY4MGZmMzUyNzhlMmFkZSBsZWdhY3ktdHJ1bmsKKzE4NDQ0IGI4ZjViNzI2N2YxNDk3YzQ1NjM4YTFlMmE4MWViOTUzNWFiMTY3NDcgbGVnYWN5LXRydW5rCisxODQ0NSA2N2MyNGM3NGYxOGNjNDM0NGM0MTRiMjJhNzIzOGMxNzUzMjExYWNiIGxlZ2FjeS10cnVuaworMTg0NDYgYjJhOWJjOTE2NjhhN2YyNDBmNDkzYTg2NjFlZDgyMDQ4NjVhYTM0YiBsZWdhY3ktdHJ1bmsKKzE4NDQ3IGZmODQxMTJkYWJjODk1MjM2MDU4MjJmMGU3YWM1MDY2OTgyNDQ3ODEgbGVnYWN5LXRydW5rCisxODQ0OCBlYmNlOWIyNjdiYjhlYTYxOTJkMTk5ZjFhNjgzYzgzOTExZWRlNGViIGxlZ2FjeS10cnVuaworMTg0NDkgY2U5MjIzMDI4MTY0OGNmZDVjMDVhYzI2MTk3N2Y2Mjk1YjQzYzQwNCBsZWdhY3ktdHJ1bmsKKzE4NDUwIDg1N2E1NDAwYmU4N2VhZGFjZTg3MGZhMzgzMjU4OGViMGY2N2ZlY2UgbGVnYWN5LXRydW5rCisxODQ1MSAxZTc1NmY5M2JmNWRhMWU5N2QzOGYyM2QyYmE2N2JjYWU4NmNkNzY1IGxlZ2FjeS10cnVuaworMTg0NTIgMzYyODY2MzJmZjNhOTNjZjIzZjkyYmRhZDlkOGZhY2IzZjAzMGFhOCBsZWdhY3ktdHJ1bmsKKzE4NDUzIDUyNzU2ZjYxM2MxODJhOGIzMDE0NjU2YTE1ODc5Njk5YTBhNzg2MWIgbGVnYWN5LXRydW5rCisxODQ1NCA5Njk0OTA5ZGJiMGE3OTg4NmM1MjBlZjI4NzE4YzA0OWJjMjZhMjU4IGxlZ2FjeS10cnVuaworMTg0NTUgMTc3OWY4NTc0YTgzYTBmNDdjYjZlNDI2ZWU0MmY2OWUwODFjZjczOSBsZWdhY3ktdHJ1bmsKKzE4NDU2IDBmNDJmNjY2OWU4MDJjMmVmMjQ2YzlkMGM2YWY1Y2NlYTFmNDY0ZWUgbGVnYWN5LXRydW5rCisxODQ1NyA1OWE0NWZhOTUzMThmZWVmNzc5MDg1ZWMxMzhmYTc1MTJjODgwMDEzIGxlZ2FjeS10cnVuaworMTg0NTggM2ZlNTllZDExYWYxMGU1NDEyODZmNmJiOTQyZTBiNzJkMWUxMjU1YSBsZWdhY3ktdHJ1bmsKKzE4NDU5IDE0OGI4YzFiNzEzYTlkYTlhMDhiMDE1Y2Q1ZDQ0Njk4NDdlNzdiODYgbGVnYWN5LXRydW5rCisxODQ2MCBkNWM5ZGQyNGQ5NzdiOGM3MDQ1MmIyOWVlYzUzYWVmNDhlOGRlYjllIGxlZ2FjeS10cnVuaworMTg0NjEgNjYzMGNjYTI5OGNjMGViOWZjZGE3MmE1MDg3YzAzYTgyNGMxMDNiZCBsZWdhY3ktdHJ1bmsKKzE4NDYyIDUzNDIzZWMwYTcyODg0YjA1N2Y0NjEyNGVjZWRlOWMyMDM3ODVmNzYgbGVnYWN5LXRydW5rCisxODQ2MyBlMjNkNWIyZTIyOGM0MmMyMzhiNjM0MzJkMTUyNDcyMmM4ZGFlMjczIGxlZ2FjeS10cnVuaworMTg0NjQgOTg3Yzc0Yzg4NDI4OTdkNmY4MzY2ODllMmI3YTFkODYxYmExNGM3OSBsZWdhY3ktdHJ1bmsKKzE4NDY1IDE1ZTFlYjEwMTliOGEzN2FmNDg4YWNmMzZkZWJmZmI3YmNmNWIxNDcgbGVnYWN5LXRydW5rCisxODQ2NiBlMWYyZTNlYzc2ZDRmZTZhZmJmNDZmYzdkMDJmZmE5NGY1ZjljYjZjIGxlZ2FjeS10cnVuaworMTg0NjcgZjk5YmI2YTkyZTg0Zjc4MWE2N2ViZmNlNjUxMjg3OTQ0ZTgyNmI5MSBsZWdhY3ktdHJ1bmsKKzE4NDY4IDU5YmZiYmU1ODFjMmQwYmE5ZTc2Yzg0YTcxYmI1YmRiMzQ3Y2Q5ODggbGVnYWN5LXRydW5rCisxODQ2OSBmZjA3Njc3NTNkODEzZGMwODBiNDBjYzE2MGFkYWFiNTVmZmMyZTA0IGxlZ2FjeS10cnVuaworMTg0NzAgMDkwNmM4ZTJjOTYxYzNiMDNmMWIzYWFmM2Y4MGM1MzdmMjQ1YmQ0OCBsZWdhY3ktdHJ1bmsKKzE4NDcxIGVkMzE1YjU1ZjE5ZTYyZmFmMzhjZGQwMzc0YjdlZmMzM2EwNDc1NTYgbGVnYWN5LXRydW5rCisxODQ3MiAyZmU3NDI3NTkxZWE5NjdmYzg3YjBkOTFkYzI2OTk5MWM2ZDEwYjI4IGxlZ2FjeS10cnVuaworMTg0NzMgZTU3ZjkzYWU0ZmU5ZjY4NTJjMmNlOWJhOTcwOGUxMTdlNDFiYzUzZSBsZWdhY3ktdHJ1bmsKKzE4NDc0IDM1NzQ5YTU1N2YxZTVkNmQwYmE1YTdmOWIzZWZjNTAyZjEzYmNkOTYgbGVnYWN5LXRydW5rCisxODQ3NSA3YmI3YjcyZmE2NjY2YzE1MmYwNDJhNWExMmVkYmYxNmEzODY0YjY5IGxlZ2FjeS10cnVuaworMTg0NzYgMDc4OWRkMDYyZDZjMDgzM2QwMWZiYjRmZjFiNDIzMjU2Yzg1M2U4NCBsZWdhY3ktdHJ1bmsKKzE4NDc3IGUxMmI2NTBmMGZhY2U2ZDFmODdmZGU5Y2VlOTFhZmY1NDkyMmMwMzEgbGVnYWN5LXRydW5rCisxODQ3OCAwNTJlMzcyY2UxNTFjODQ3NzdmM2ZkZDlhMjhiMGIyMTJmNGU1ZjAwIGxlZ2FjeS10cnVuaworMTg0NzkgZDNlODZmZjg5M2IxMDU2ZDdlMDY1MTdkMWU5ZDg2YTU4NDZiY2M1OSBsZWdhY3ktdHJ1bmsKKzE4NDgwIDUwZDliNTkwNjI3ZDY0ZTM2ZDI5YTA1ODNiYjc0ZDczZTg5ZTUxZWEgbGVnYWN5LXRydW5rCisxODQ4MSAzMGVjODczMzM4YWQxNTY0NGZkZTdmYWVlMjQ2NjFkMGM5ZWE3ZDRiIGxlZ2FjeS10cnVuaworMTg0ODIgODI2MmJmYTUxNGMyYzAwMjkzZTczNmQyNmY1YmE4YzY3NjY2MTM0ZSBsZWdhY3ktdHJ1bmsKKzE4NDgzIGY1OTQ5Mzk3YzhhNTg4ZmY2ZWQwMWQzODBlYTQ2OWRlMTQ1Y2I2MGQgbGVnYWN5LXRydW5rCisxODQ4NCBkYjY5YzA5MmM5MDZkMzk3OTM0YjMwMjNkNjc4MjliODkzMTFjN2U5IGxlZ2FjeS10cnVuaworMTg0ODUgNTBkZTNiMTk4YTYyMDViMDU3MDBjYzJhM2I4MDdlYmRmYWVkYjMzNyBsZWdhY3ktdHJ1bmsKKzE4NDg2IDM4ZjA5ZmIxOGI4MDIwYzc3YTJjNmM5ZDY4YTlmNGRmZjNlYzZjYWMgbGVnYWN5LXRydW5rCisxODQ4NyA1MzgwOTcxOTk3ODM5ODZkMzRiNzVlYWU2ODBjY2Q1ZDNlZjY3MmViIGxlZ2FjeS10cnVuaworMTg0ODggN2UyYmI5OTRjMmQzYWM2ZTU2MzAyZTEyYjhkMzQ4NjQyM2NjZjZiNSBsZWdhY3ktdHJ1bmsKKzE4NDg5IDdmMjJlMzRjZTQwZTNlYWEyY2I5MmVjNTZjZDdmYThkNzg5ZTQyY2MgbGVnYWN5LXRydW5rCisxODQ5MCA1MGJiZWVkYmNlNGE2ODNiYTMwNjNmODNiYjIwMmQ4MjM0MTc4NmZjIGxlZ2FjeS10cnVuaworMTg0OTEgZGI3ZWU1YzYwYWYwYjg3ZDIzMDZjMDIwODY0OWM3NjYxMDhkNjc1MCBsZWdhY3ktdHJ1bmsKKzE4NDkyIDU1MmRiOGQ4M2FjZDg5NmQyMWQ2M2JhZTZkZjBiOWQ2N2QyNTIwZDMgbGVnYWN5LXRydW5rCisxODQ5MyAxOTc1NmI5MTgwNDE2NjI2Zjk1NDhlNzgyYTEzNmVjNjdmZTExYWE5IGxlZ2FjeS10cnVuaworMTg0OTQgMmE2MTJhZTI1MDk1OTJhMmMzODA5OGMzNGFhNTZiMWY3MTFlZWE1YSBsZWdhY3ktdHJ1bmsKKzE4NDk1IDQ0NmYzZjkzOWRmMDM5NzY2NTdlMTkxY2IzYzJiOTAyNmRmMDBiNDYgbGVnYWN5LXRydW5rCisxODQ5NiA4Mzg1NTE4Njk3OTA0ZDg5M2I3MDJjNDA1ZGU0MjQ5YzkyOWQ2ZmFhIGxlZ2FjeS10cnVuaworMTg0OTcgMmQ2ZTc2ODlkYzQyMDU3OTUyYmM2MmYyNzQ1ZGVjNWFhYzc2NjkzYyBsZWdhY3ktdHJ1bmsKKzE4NDk4IDdmYjdjNTFhMmU2MTYyMDA3YzNlYjNjNWFkNzVjMWI5M2FhNGQyZDcgbGVnYWN5LXRydW5rCisxODQ5OSA3NjM5YTk1NTI0NzllMzA5M2RhY2E4MmQzNzBlYzBhZTExNjU2YjhiIGxlZ2FjeS10cnVuaworMTg1MDAgN2ZiNTA5OWJlMjAyNjliYzUwYjcyM2I1NzNhMGI4ZDhiOTAzYWFkYSBsZWdhY3ktdHJ1bmsKKzE4NTAxIGM0YmVjN2M0ZDZmZjY0MTM4ZGNlMmEyYzgwZGY2NGMyYjhlODc0MjggbGVnYWN5LXRydW5rCisxODUwMiBmMGNkYTBkNGI1M2MyMDgyNmE4ZTU4M2FhMDMwMTc1NDc1N2U3MzZhIGxlZ2FjeS10cnVuaworMTg1MDMgMTljOGEyZDM4MDdkNThkYTA0MGVhYTdkM2NlNmYzODhjMWY4NDdhMSBsZWdhY3ktdHJ1bmsKKzE4NTA0IDYzYjgwYjc3ZjViMmRiMzA5Zjk4NzJhNmVhYTUxMTAyNmZjODJkNjQgbGVnYWN5LXRydW5rCisxODUwNSA4Y2ZlMjZlZDcyOGQ5NDJkMGQ1MmYxYTQ1NjMxZGNiY2VkNTBkOWIyIGxlZ2FjeS10cnVuaworMTg1MDYgYzEzZjVhMjBlYTMxMjMzOGExZmQ2OWIzNGRkZTFhNWNlMjhjMTE0NiBsZWdhY3ktdHJ1bmsKKzE4NTA3IDViMTU4ZmMwZWQ1NTVhMWFiMWU4NDI0NTE5MzIzMWEwMTkwMWU2NzIgbGVnYWN5LXRydW5rCisxODUwOCBlOWY0Yjc2Njk5YWEyMzEwZGNmMTk2NWMxMzM4Nzk3ODU1OGMxNzA0IGxlZ2FjeS10cnVuaworMTg1MDkgMWE0YTVhOTM2ZjUwOGNlNWM1NDdmYTAwODQ0NzE4OTA4MjIyYTdhYSBsZWdhY3ktdHJ1bmsKKzE4NTEwIDU2Yzc0NDgzYjA1MGNjMjE2NzBlZjU3NDkzZTBlNDE5MzUyMzE0MTkgbGVnYWN5LXRydW5rCisxODUxMSAyZjE3OGJkZGRjMTYzN2QxYjE1YzI4YmJjZmI5MWE3Njc2NDg2NWEzIGxlZ2FjeS10cnVuaworMTg1MTIgOTI3YmNjMzE1ZTU2ZTgzMDFmMmM1NWU3YjFjZmE0NzU5NjdmOWRhOSBsZWdhY3ktdHJ1bmsKKzE4NTEzIDNlMjU0ZjU2ZWVmMWNkNWM0ZjI3NjVmNDIxOWY4OWRkNDRjMTU1NjkgbGVnYWN5LXRydW5rCisxODUxNCA4MmJlYzM4OGM2MzYyOWFhYzViODQwYThhODFkNDY1NGU4ZjI5ODkxIGxlZ2FjeS10cnVuaworMTg1MTUgNjQwNWYzMGFhMDhjMmNjNTEwOGVjYTZlMzNmN2UzOTM5NGE4MzVhNiBsZWdhY3ktdHJ1bmsKKzE4NTE2IDgzZDU5OTY1MmI2MjJiNTM5YWFiZWRjOGEwZGY4MjA3NTMxMTYyOTkgbGVnYWN5LXRydW5rCisxODUxNyAxNzNkNzBlNzJjOWY2NWFlOGE1YTk2ZDJlZThhNDE3NDExZGI4YzU5IGxlZ2FjeS10cnVuaworMTg1MTggMDI2YTkyMTA1MTQ1MjhjNGRiZWZkZWU3ZTlhNmMyMzViNzcwMmY4ZiBsZWdhY3ktdHJ1bmsKKzE4NTE5IDU2Y2UzOGU1NzUwMjZiYjNjMmIwNjk2NzQ3OTQyOWVkNjZhNDUxM2EgbGVnYWN5LXRydW5rCisxODUyMCA2NTg1ZDNjMDRhMjlkODU2OWFkNjRkNjhiYTBhZjUxY2RmMmQ5Mjc3IGxlZ2FjeS10cnVuaworMTg1MjEgZWFmNWE3OGJkMjgyNzExOGEyNjE2NmIzMDkwM2I0ZDY0YTgxMmQwNyBsZWdhY3ktdHJ1bmsKKzE4NTIyIGFmYWQ2NTk3NWE4MmU1YzQ5OWFjZTMxMDcyMTgzMjEzOGNjMmI3YjcgbGVnYWN5LXRydW5rCisxODUyMyA1ZjNlZTVmMWIzZDc5N2Y5ZWRmNDhjYmUyYjdiYjczNzczNjY3ODQyIGxlZ2FjeS10cnVuaworMTg1MjQgMWU0MTcxNzE3ZTc3Y2NmMTgxZmM2YzFkM2I3MDg5MmU5ZDg0M2FjYyBsZWdhY3ktdHJ1bmsKKzE4NTI1IDE4M2QwYmQyZmQ2NmRjMmVjNTRhMDg2NzZmNDIwZTUyZjg0MTZlNWQgbGVnYWN5LXRydW5rCisxODUyNiAxNjkwNzU1YzU5ODZiYWJkMzQ0MDU1ZjZhOGZkZGM4NmNiNWZlYWU2IGxlZ2FjeS10cnVuaworMTg1MjcgOTBlYTFlM2VlZWIxNGQzNDNkZDkxYTRiMDAxZGIxZWZkMWVhNmQ3MCBsZWdhY3ktdHJ1bmsKKzE4NTI4IDNkNTViZjY1Njk5YWRkYzQ2YTBmZTgyNjEyOTA1YWE1MjgwNzc0NTkgbGVnYWN5LXRydW5rCisxODUyOSA4YjRjYTVkYTdkYzI2NWQ4NzZjYjMxMjM3MTk5ZWE2NzE5NWJhNmZiIGxlZ2FjeS10cnVuaworMTg1MzAgNWM2NWU2NzZmMjk5NmM1MGYwODY0YjRmMDQ4MzgyZmE5OGJmOTk1NCBsZWdhY3ktdHJ1bmsKKzE4NTMxIDUxYjU4OTgwNDA1MTRmODNiZTc0YTczNDMzNzcxNGI5MTAzZmU5OGMgbGVnYWN5LXRydW5rCisxODUzMiBjM2M4YmZhZDA3Y2EzMmMzMjljOGMyZTkzZDZlYzYyYTZmNTQ3ZWNlIGxlZ2FjeS10cnVuaworMTg1MzMgMjc3YTdhMTVlYjk0YjA1MzYxNTJjNTVlYWVkMGM4MjZlN2E2NzEwYyBsZWdhY3ktdHJ1bmsKKzE4NTM0IDY3YjNhYzQzOWY2NDAyMjgwZjk1N2MzMTA5MTVhMzVmMmRlODRjNGQgbGVnYWN5LXRydW5rCisxODUzNSA3NWMzYTY0ODQ3YzQ5YWYyMDc2NTMyZjViZjUzZjEwZDA0NDgzMWIyIGxlZ2FjeS10cnVuaworMTg1MzYgOTNhNTc1YmJhMDlmNmY4NTY4OGE3YjZlYjY3Y2U5OWFiNTQ4YThlZCBsZWdhY3ktdHJ1bmsKKzE4NTM3IDNmMmZmMzhjYzY1NzRlZDk5YzEyMTgwZGFlYWVlZTRlZDllNTAzMTUgbGVnYWN5LXRydW5rCisxODUzOCAyOWEyYTExNGU5YzkzMzJjNjhkMGI0MDE0MTkwZTdkNjY2NjUxYWZkIGxlZ2FjeS10cnVuaworMTg1MzkgMDFhNGRjMzFiNTc5YjI0ZDFiNjY3ZTQ1MjRiMGUwNWQ5YTczYjYyOSBsZWdhY3ktdHJ1bmsKKzE4NTQwIDljNzFhZGQ3ZTE2MDgxOGFlY2NhMjdjYzFiMmFhOTM2ZmQ5ZDA4ZTcgbGVnYWN5LXRydW5rCisxODU0MSBlYTQ4MzJkZWVhYzU5ZjE3YTBiNzUzZTA2NWRjNDg3MWRhMmFlMGUyIGxlZ2FjeS10cnVuaworMTg1NDIgM2NhNzAyY2FhNjFhZWFjYzY5OTVkMGNiZmRhOGE4NjJhNGVlMTBmNSBsZWdhY3ktdHJ1bmsKKzE4NTQzIGE1MTlmMjA3ZWQzNjg3MjNkYzIwOTZjZGI4YjRkMDhhMTY0NjRlZjAgbGVnYWN5LXRydW5rCisxODU0NCAxMDYxMmNiYjQ2MjNhZGVmYjk2Y2Y2OWRlOTgyYmYwYTE3YTU0NjBlIGxlZ2FjeS10cnVuaworMTg1NDUgZWNkYWNmNTE3NTk0NTI1ZGFhNWI4ZThjMjQ0NTE0ZTMwOTMyOGEwMyBsZWdhY3ktdHJ1bmsKKzE4NTQ2IGQ2Zjg2NjE5ZGJjNzM0ZmFlM2MzZGU0NzVlNWE5ZjExMDJjNWM4ZGIgbGVnYWN5LXRydW5rCisxODU0NyA5ODZkMWMzY2NkZGU5MWExNDE2YzkzNWU4OGVlNTNkMjllYjFjMDFmIGxlZ2FjeS10cnVuaworMTg1NDggZThmNWU2MWE4Yjk0MzVhODM2NTk1MTFjYTE0YWEwMTZhYmQ5MmU0ZCBsZWdhY3ktdHJ1bmsKKzE4NTQ5IDg0Y2RjODlhYzU2MWY5ODJhYjdiOThhM2Q0NmQ1NjVhNjBhNzRmOWUgcmVsZWFzZTIwLW1haW50CisxODU1MCAxNzVhM2IxNzIwNjg4MGEyOGQ3ZjQxNmZjMTEwYzhlYTI5ODA1NDljIHJlbGVhc2UyMC1tYWludAorMTg1NTEgNTU2YTRlNTNjMjY5NzczMzkxODgxYzYxNWRmYTE3YTEwZDNlZDI4YSByZWxlYXNlMjAtbWFpbnQKKzE4NTUyIGU2MDU2MjQwMDBiZjE5MTA1MDY5YjA3YTBjNjhiMjQ2YWZiNjdhNTMgbGVnYWN5LXRydW5rCisxODU1MyBmNDE3MDUzMDRhZjQ0MmYzMmNlOTA2ZGQyZjRkODk5MTE0NmNmMDlhIGxlZ2FjeS10cnVuaworMTg1NTQgMjgwYTc4ZWQwMDM1NTI4MDhkYzQ0Y2JiZjdjNTc2MjY2YWUxOWQ0YSBsZWdhY3ktdHJ1bmsKKzE4NTU1IDZmMTQ1M2JiZDU2OTAyZWI0ZmE3NTE3MTEwMTA3MGYxYjQwZjllZjYgbGVnYWN5LXRydW5rCisxODU1NiAxMzk2ODRhOTAwNDFhMGVjYzg5MDc2YTc2NWE0YmY2MWNkNTkzZTUyIGxlZ2FjeS10cnVuaworMTg1NTcgNTdhNDg1NzQzMGZmNWQyNTc3MWQ1Y2YyNDMyNTM3ZjFlNDgzYjk5YyBsZWdhY3ktdHJ1bmsKKzE4NTU4IDM2ZjdjMDljMmQ3ZjI0M2U2YzNhNmY1Y2Y3N2ZjMDk3ZmU1YTAyN2IgbGVnYWN5LXRydW5rCisxODU1OSAwYzIyYWYyY2RkNmZiMzdhNzEwOTg5NGJiNjIxN2IyMWEyNDQ3Zjg4IGxlZ2FjeS10cnVuaworMTg1NjAgOGUwMTQxN2VjMDAxN2FiNGU0ZjI1OTY0N2YzZjY0ZDgzZjk4MzM4OCBsZWdhY3ktdHJ1bmsKKzE4NTYxIDRiMTY4ZWViNjFiM2I3Yzc0YzY4YmRkYmFmMGNlNjIzNDRmNjQxMDYgbGVnYWN5LXRydW5rCisxODU2MiA1YTVlOWU3ZmI2YjIxMjcwOWM0NWFiYmM4ZTY0ZWM0MWI0YmI1YTZmIGxlZ2FjeS10cnVuaworMTg1NjMgMTk5N2RmZWQ4ZDIxZDZkOWY1ZWJkZDRkNWQwYzhlOGVmNDExNjVkNiBsZWdhY3ktdHJ1bmsKKzE4NTY0IGY2ZWUwZDQ2NzJkNjI5NjA2NWQ2Yjg4MTZlYTA4MTVmZTM0YmIzMTAgbGVnYWN5LXRydW5rCisxODU2NSA2MTJmYjc3MjdmYTI5OGUxNmYxY2M5NDRhZjNmOGQ2NjZmOTU4ZTkzIGxlZ2FjeS10cnVuaworMTg1NjYgYjQwOGFjZGNhZjNlZWVjYzVmZjBmMmExYmRjYzgwZGU3ODAwZGJhMyBsZWdhY3ktdHJ1bmsKKzE4NTY3IGJmOWJiMGUzZGQzNDEzZjMwNjc2MmZjYTE5YmU4M2RhODk1MTk2ZWYgbGVnYWN5LXRydW5rCisxODU2OCAzMDc1YTE1M2EwODNlMjI5YmRjYTJmZWJhZjAxOTMwZTFlMDFmNGI4IGxlZ2FjeS10cnVuaworMTg1NjkgZTI5NzhjMGI3Y2JkNjkyMWFmOTZhMzlkMzQxYjBiZjBhOTUyMDdhNyBsZWdhY3ktdHJ1bmsKKzE4NTcwIDE2MTg5MmJmN2MxNWVmZTk4ZWRmNDk5MDNlZmE5MDFlMmI0YjUzMWUgbGVnYWN5LXRydW5rCisxODU3MSBhNjI2ZTM5ZDY4NGRjMjNmYTZmNWY0YWE2MWRlNzk4NmU1ZDlmMGVjIGxlZ2FjeS10cnVuaworMTg1NzIgMjQ4MWI1ZmU4NmQ2ZGNlN2FjNDYwM2MzM2I5NTE1YTZiZjQzMTkxNiBsZWdhY3ktdHJ1bmsKKzE4NTczIDkwMWYzOGY3ZjZmNzU1MDc3NTJkMDM2YTIwNzA0MDdhNWExYjNjZDEgbGVnYWN5LXRydW5rCisxODU3NCAzNjkzYWJkMGVhYzFkNDFhNDcwODdlMDI3NmU3NTRjNTYzZmZjMTg5IGxlZ2FjeS10cnVuaworMTg1NzUgMmEzMDUxMjlkNTY2ZWMxNDNlNDI3MmE4YjA1MGJmMjg1NjE5ZmM5MCBsZWdhY3ktdHJ1bmsKKzE4NTc2IDRkOTc4YWQ4ZmIwNWQ2MDRlYTk3NGEwNjg2NzNiNzJkOGI5MDUxNWEgbGVnYWN5LXRydW5rCisxODU3NyAzNjJlNTNmNDNkZDIzNjFiOTA5ODhmZTY0YzgyODJlZDk0MzhkZThjIGxlZ2FjeS10cnVuaworMTg1NzggYzY1NmYzMDhhYTFmODdmY2ZkZGZhMjNhZGZiODBiNTgwMGI1MjEwOCBsZWdhY3ktdHJ1bmsKKzE4NTc5IDZlMmVjOGY3Yzg3MWY3NGEzYmVjMmVhMWZlNjEyN2YxYWZhOWQ1ZjMgbGVnYWN5LXRydW5rCisxODU4MCAyNjVmNGVmN2Q3YjFkMGQ2MjVhMzQzMDZlYzA2YWQ4ZDkwNjgzZWM3IGxlZ2FjeS10cnVuaworMTg1ODEgMDYxMjUyZjVjNzI5NmNkMzQ2ODQ4ZWNjMzQxYThlZjYyZjQ4ZTU5NiBsZWdhY3ktdHJ1bmsKKzE4NTgyIGVhZDhiNWI5OTRhZDdjZTYxMmNmNjBlYmM0NjAyY2VmNWU0YWEzNzUgbGVnYWN5LXRydW5rCisxODU4MyAzZTg2MmE1MTg2MWZkNmI2ZGNmMTkyZTE3ZDhiZjdkMzUwZGM1YTMyIGxlZ2FjeS10cnVuaworMTg1ODQgYWM3YWUzZWFkODhhNDRhYWEzNTQ5YWYwMGI1ZmU3ZmU4MWJhMzZlNSBsZWdhY3ktdHJ1bmsKKzE4NTg1IDJkY2M0YTg2YTg3NmE3MWY3YzZhOWU3MzdhYzVhNjNmNWMzNjBhMjAgbGVnYWN5LXRydW5rCisxODU4NiA4ZTQwMmFlY2EwYTNkMWNkZjhkYzM0YmZhMGU1ZjQ3OGM3ZTliMjM5IGxlZ2FjeS10cnVuaworMTg1ODcgZGI5ZjE4OTNiZTAxNjgxNjY3NjI1YWEzNDhlM2E4YmM5ZDA1NTQyYSBsZWdhY3ktdHJ1bmsKKzE4NTg4IDY0MWFkNmM4MzNiZTgwNGNhZGY1YWM4MDVlMmFhMzczY2FhMzAyYmQgbGVnYWN5LXRydW5rCisxODU4OSA0ZGQwYjk3YWE2ZTE2NjkyOGIwYzVhNWEyNmI5MGZkOWQ5OWNkMDk5IGxlZ2FjeS10cnVuaworMTg1OTAgMmIzYmMwOGQ0ZDg1M2FlZjQwNDg0ZjEzZDk3YTVhNTgyNWZhMWJiNyBsZWdhY3ktdHJ1bmsKKzE4NTkxIGQzYzdlZDE1Y2UyNTc3OGViOTUxMWZiZjEwNzFhODNkODRmZjY1ZTcgbGVnYWN5LXRydW5rCisxODU5MiBhMDY0MTU5OTRjYjU2YTc4NmY2MWY1ZTEwMzAwOTQ1NzRiZGE3YTAzIGxlZ2FjeS10cnVuaworMTg1OTMgM2FkMzAwNGRmZTZkYjZkOWQ0M2E4NjY4Mjc3NTRmYjIwNjAwZjMyMyBsZWdhY3ktdHJ1bmsKKzE4NTk0IDAwYzY4NTVkNzQyYThkMmE1MTg4M2Y2OGU3OTRlN2NlYjhhOTZhM2IgbGVnYWN5LXRydW5rCisxODU5NSAzMTdjMjAzYWJlZTY4NmNiNmJkYTI4N2FiZmExZDUyZTk5ZjBmZTNmIGxlZ2FjeS10cnVuaworMTg1OTYgODVkYzBjZTAxNjJlNmYzY2U2NTY0NDNlMGE0NjQwZTZiODllN2UxNSBsZWdhY3ktdHJ1bmsKKzE4NTk3IDYxMjRjZWRmODQzOGRjODZhMGY4Mzk1MjQzZmM5NGExNmYzNmJlNjggbGVnYWN5LXRydW5rCisxODU5OCAyNzI5MGViOWM1MjY0YjA3Yjk1YzVjOWRjZGZmY2Q1NDZkOTFmMzA4IGxlZ2FjeS10cnVuaworMTg1OTkgNzZjYWYwODU1ZDFmZmU3ZTk3MWJjMTEwMmNhODkyOTBhOTljZjgzZiBsZWdhY3ktdHJ1bmsKKzE4NjAwIDk3ODIxYTQ2ZTAwMDMwM2E2YjgyYzA5MjMxNjFmZTBiYzA1ZmIwYzggbGVnYWN5LXRydW5rCisxODYwMSAwYTc3MDEzYzUwYWNhMjA0NWIxNDg4NGY1ODMxODA3NWM3N2QzMTkyIGxlZ2FjeS10cnVuaworMTg2MDIgOWQxNWJhZjcxNDVhZmYyZTUwNWMwZjJiM2JmNDVhZWRiYjFkODg5NCBsZWdhY3ktdHJ1bmsKKzE4NjAzIGFiYjk0NjA5MzE4ZTZjNDM0MDQ3N2QwZjIxNmIzYjYyMjNhNDY3OGQgbGVnYWN5LXRydW5rCisxODYwNCBiZjgwODY2ODI0ZWNiNWVmOGE3OGM1OWEzODg4ZWMxMTk3MDBjM2Q5IGxlZ2FjeS10cnVuaworMTg2MDUgNGMwNDNlMjI3YzQ0MDdlYWRiMDlmMWYxYmQzODg5OWZkZjI0ZDRjZiBsZWdhY3ktdHJ1bmsKKzE4NjA2IGY1YzA0MTM0ZjRlMmJkN2FkM2E5ZGM4YzVhYmNhNjdhMDNiMTkyZjQgbGVnYWN5LXRydW5rCisxODYwNyA0ZGJiZjMyMmE5ZGYyY2ZiYjU1ODkwYWM0MTVhNDNiNmNmMmE2Yjc1IGxlZ2FjeS10cnVuaworMTg2MDggZmEzZjUzN2M4MjQ5YzQ0YWFmNjYwNTU2YTVhMWVkMzIyOWUyNzA4MCBsZWdhY3ktdHJ1bmsKKzE4NjA5IDc5ZjllMzMzMzE2ZTZiY2RlMmIwOWFjMWMwN2FlNDU5N2E2NWQ4ZTkgbGVnYWN5LXRydW5rCisxODYxMCA3N2M3NjFjZDEyNzJlOWIwMzA0M2JlNWEyNmFiM2Q2NDM2Mjc5MmUzIGxlZ2FjeS10cnVuaworMTg2MTEgZDY3Y2ZjYzA2ODNlZGE4NGZkMTY0MTU1NWJiOGUwMTk1MmU0Y2Y2MyBsZWdhY3ktdHJ1bmsKKzE4NjEyIDkzOWI4ZmZmYzQ1MmUwNTI1YjM4MDA2MWI2MzI4NjhkMzU1ZTZlOWQgbGVnYWN5LXRydW5rCisxODYxMyBjMDgyMmEwNWU5MjNiNmY1MDA5NGQ4NTkwZDQyNDBlYTgxOWZkOGI1IGxlZ2FjeS10cnVuaworMTg2MTQgOGQwMGY3NTU1ZWVjMjc4MmY4NTBjYTBmY2ZiOTg2NzBmZjNhZmViOCBsZWdhY3ktdHJ1bmsKKzE4NjE1IDdjOGZhYzRhYzMxYWJkNThjOTMxYmFiZTI2ZmUzYzA5ZjAwNDNiMTcgbGVnYWN5LXRydW5rCisxODYxNiBhNDNhOGExZjQ2ZWUxYmI2NWM3NDczYmM5YmU2OWUyYTNmYjUzNjBjIGxlZ2FjeS10cnVuaworMTg2MTcgNDU5NzljZGNkMzY5NzM5Y2JiODU5YTg1ZjVmNmM1ZDY1NWE0OTQ3NSBsZWdhY3ktdHJ1bmsKKzE4NjE4IGE5ZTE1YmNhYjMyY2I2MDEzM2RiNzYxMGYwMWIzZDI2ZTljZTE1MmMgbGVnYWN5LXRydW5rCisxODYxOSBhMWQ4OGFiMDIzYTBiZWNkNWRlZmE1MGI4YzM1MzZmMzRjZTFlNzI5IGxlZ2FjeS10cnVuaworMTg2MjAgYTMxYzM4NjhjODEyZmNlNzY2NmQxMjRiOGNiNTQ0NWY2ZGVkZmFjMSBsZWdhY3ktdHJ1bmsKKzE4NjIxIGE1NmMwMDBlNTc5Y2Y3ZTQzNTY3MWVmY2I4YTc1MjM3MzhmNTI5MDAgbGVnYWN5LXRydW5rCisxODYyMiA5NWVlNzlkZmQ3NDYyMzE4NjdkNzM4NGViMGIwMzdhNGZhNTEwNDgxIGxlZ2FjeS10cnVuaworMTg2MjMgZGVmNDE2Y2Q5MjNkZjIyYThiMWFmZGE0MGM0Y2E2NDlkODY5MGQwYiBsZWdhY3ktdHJ1bmsKKzE4NjI0IDM1ZTA4ZGQzN2RmMTM3ZTE2NTI4NTY4MDVlOTM5NWMyZWE2Y2ZlMjYgbGVnYWN5LXRydW5rCisxODYyNSA3YjNmOGU3NjFhMmQ4MmRiMzc2YzI4MzMwNzhiNDg1OWRlMTM4NWNkIGxlZ2FjeS10cnVuaworMTg2MjYgNmQ4ZjdlMTI0MmMwMjlkODE2Mjg5OGMzMWQ2NjQ2YTA1YjIwM2QyNyBsZWdhY3ktdHJ1bmsKKzE4NjI3IGQ2ZTZhNWNmZWIzZDZiN2QwMWFlNWZlZGU2YzQ2OTdlYzQyODM4MmIgbGVnYWN5LXRydW5rCisxODYyOCA4NzQ1ZmIzYTExOTE3MmFkOGViM2Y4MDRmOWEwNzEwZTBmNWZiZjgzIGxlZ2FjeS10cnVuaworMTg2MjkgZTc5MWY0OTA1ZDI1NjFjMjdmZGExNWRhMzJlMzVhZDcxZjJiNzBjNCBsZWdhY3ktdHJ1bmsKKzE4NjMwIGZiMTQzZmIyMzZkMGFmNGI2NTRmMjEwZmI2ODhhZmViNGJlODNmOWMgbGVnYWN5LXRydW5rCisxODYzMSAxOGE2ZTZkOWI0Zjg4YmVmMzlmNjM0ZDRiZTdjMzUwNmMwMjRlYzI0IGxlZ2FjeS10cnVuaworMTg2MzIgMDg2OGMzNjFhZjVhZmRhMmZmMmFjZTM5MDEzNjc5MzY1NzJlYzFiNyBsZWdhY3ktdHJ1bmsKKzE4NjMzIGVkYjk2NjZjMDdjMDRhOGY5ZTg3OWNjM2E5YzQ1ZTVmMDkyMDRmYzYgbGVnYWN5LXRydW5rCisxODYzNCAwNzZiYjI5YTY1ZGM0YjA5M2NjYWMzMjg3YjAxODQ1YTk0MzlkMGY3IGxlZ2FjeS10cnVuaworMTg2MzUgNWQ2ZmI3ZmY2OGM3OWE2OWZjZTQ0YzA0YjEzY2FjMGNmMTQ3M2MxMiBsZWdhY3ktdHJ1bmsKKzE4NjM2IGU4YWFkODQyNDczYTRhNWRiYzE5ZjVkZTc4MDcxOGVmMjQxOWNiNTcgbGVnYWN5LXRydW5rCisxODYzNyA0MzcwZmMxOTY5N2U0YTk2OTMwZGUwYjljODc5Njg5ZTBlNWNlMGE0IGxlZ2FjeS10cnVuaworMTg2MzggNTA3NjU0NGMzMzhiMTM5ZGI5YTZjYTA4MzljNTBhMWEzOWMzYWQ5YiBsZWdhY3ktdHJ1bmsKKzE4NjM5IGI1YTM3YmY5ZDEyZGE3YTIxMTQ4ZTI1Y2E3YWY2NmNlZmFhMDc4ZjEgbGVnYWN5LXRydW5rCisxODY0MCBjNjY5YzI5ZDFiOGNkZjliZGQ4MGEyODNhZWFiMGI3OTIxNGUyMzIwIGxlZ2FjeS10cnVuaworMTg2NDEgZDY0NmQ2MDY4OTI0MzBkMTYyMjJjNWYwZmY1ODRmYzBlZTAzNmEwOSBsZWdhY3ktdHJ1bmsKKzE4NjQyIGIxYzU3Nzg0ODBhMTlmOTU2MzdiMGVlMTg0M2VhNzVmZDMwYTg5MjIgbGVnYWN5LXRydW5rCisxODY0MyBhYjUzNTI0NDQyMDU3ZWRhMGUyMjhmODJjYWUzMGY0OTc5YWQ2YmM2IGxlZ2FjeS10cnVuaworMTg2NDQgZmNhMmNmODUwZTRhY2YxMjJiNGUxMjAwYTJlZmRjMGIxMzUzYTJjNyBsZWdhY3ktdHJ1bmsKKzE4NjQ1IDc4YzRiNjNiNWI5ZDM1NGY3MmUzZDY5ZjQwOWQ5NjM5ZTYxMzJjZTcgbGVnYWN5LXRydW5rCisxODY0NiBlZmYxMWZhYzVmMzYzOWE5OTFjMjQxMjZhZGU1ZWM2YjQ2NGRlOTRhIGxlZ2FjeS10cnVuaworMTg2NDcgODNlMTQ2OTc0YjcyYTRhOTdmMjg2MGIyMmY1Mzg1YzA2M2Q5OGM5ZiBsZWdhY3ktdHJ1bmsKKzE4NjQ4IGIzMWEwNDZmODhhNzcyNDEyOWVkYTU4M2NhN2Q4NDM5ZGUwYjhiZGMgbGVnYWN5LXRydW5rCisxODY0OSBkZGQzZDhjMmNjYTA1MjhhOGFkNTI5NDdlZmUwZWQxZGJiMWFmOGVmIGxlZ2FjeS10cnVuaworMTg2NTAgOWU5NTU2OTI0YjBhNzQyMWU4Y2JiNDQ2N2JiN2QzZWRkMDhjOTJhMyBsZWdhY3ktdHJ1bmsKKzE4NjUxIDFkYjNjYTk1MzBjMjg2M2RlN2JmYjBiZDA5OWQ3ZGYxYjZmYzUxODQgbGVnYWN5LXRydW5rCisxODY1MiA0ODU0ZWU1ODVlMGRmODgxYzgwMjU2MDg1NmI2OGQwZDI0YmQwYTYwIGxlZ2FjeS10cnVuaworMTg2NTMgMDEzMTc5Mzc2ZmEzNWU1M2UwNjBlZTU3MGY3OWUxMTU1MGNhZDA5ZiBsZWdhY3ktdHJ1bmsKKzE4NjU0IDBmZGZhYWVhNWUyZjkwMzFjZTMwMWE4MThiYTNhMGUxOWNmYmU0MzkgbGVnYWN5LXRydW5rCisxODY1NSBiN2Q1ZjY4YmUwMTdmNGM4MDM5YmI4NTdhZmJkYjE5ZDkyZjJhMTk5IGxlZ2FjeS10cnVuaworMTg2NTYgNjNjMDQ4M2VmZjY4ZmY4ZDIyNzQ0OTY4YzVmZDY4MjhjNmIzZjg4YiBsZWdhY3ktdHJ1bmsKKzE4NjU3IGI1N2UzZTM3NDMxNGUzNTNiNWE4NzBhZWU2ZjdkNzQzN2JhYzU0MjUgbGVnYWN5LXRydW5rCisxODY1OCBlZGQxOTIxN2IzOTY5NWRhOWJhNzY5NzZlYjdjYzg0NmQxMzI5NjUwIGxlZ2FjeS10cnVuaworMTg2NTkgZDAyN2U4NWUyMDlmN2Q4NGQxOWRmYzhkZmQ1MzE0MDY0MWJjMWY2MyBsZWdhY3ktdHJ1bmsKKzE4NjYwIDVhMzA4YTlmOTlhNTY2NDdmZGIzYzJkM2E0MWNmODI0Y2VkNThhMzcgbGVnYWN5LXRydW5rCisxODY2MSAzYTI2MDI3NGJjYzZhMTViNGVjNjcwMmY4YjEwYzMxMzlkN2E5ZmI5IGxlZ2FjeS10cnVuaworMTg2NjIgMjI4ZmZkMzZhMGRkYzczOWUwYjc5M2E0NjA0ODRmYTY2N2EwMGEzZSBsZWdhY3ktdHJ1bmsKKzE4NjYzIGViMTc2N2IwNjhmZWMyMjc2ZjczMmE5MjhlNGQxNmQyNmM0MTE3MDkgbGVnYWN5LXRydW5rCisxODY2NCA5YjY4MTRiZmIyYzBkOWY1MzIyMzk5MjgxY2U5YWNhYjExODM2ZmM4IGxlZ2FjeS10cnVuaworMTg2NjUgMzc4MTlhNzc3ZmMwYzQ5ZWY0MzBlNDdhMGNhM2QzZDc5MTYyNmZhMyBsZWdhY3ktdHJ1bmsKKzE4NjY2IDU0MTU4MDRmYjM0NWM2OTIyNGJmZjE3ZjkxZmFmZDg1YmJhYzM4ZGUgbGVnYWN5LXRydW5rCisxODY2NyAzYjliOGYyZGRmZTc5NmJjZDg3MzA4MDk0ZTk3ODJlZDRiMzhkYWQzIGxlZ2FjeS10cnVuaworMTg2NjggMjJmZWQyYjE1YTU0YjJiNWMxYTU2ODRhYWZhYjc1ZjZlMjM1YjJmNSBsZWdhY3ktdHJ1bmsKKzE4NjY5IDM3ZDEyMDIxZGYwNTExMzQ1OTc0MWI4MmY0NTMzZWJkYjY4MTI0YjUgbGVnYWN5LXRydW5rCisxODY3MCBmOTc3MmY4N2IxM2UzZDBmY2U2ZGE1ZjdiYTI1MDdmZWRkNjhiYjY2IGxlZ2FjeS10cnVuaworMTg2NzEgOTU0NjExZmQzNWUxZTk0MGQ0NmNmMTI2ZWJjMWJhNzFhNGY5MzhiOSBsZWdhY3ktdHJ1bmsKKzE4NjcyIDFhMDBkMjE5MTBjODlmMWIzOGIxMmE4NjUzYzFhMjYyZDZlNTc5OWIgbGVnYWN5LXRydW5rCisxODY3MyBhNTYzZWVjNDZjMWFiZTkxZjZhMTNjMDBhNjE5MDAyMzE2YzE5NjIzIGxlZ2FjeS10cnVuaworMTg2NzQgMDY0MDI2ZGM3NjRlODllNTBlN2E4MGFhN2IxZWZkYWQ0ODMwNWYwOSBsZWdhY3ktdHJ1bmsKKzE4Njc1IGZhYWY5ZjEwZDg0OTQzOWU3OTEzYzlkNDUyODYwZDM0M2MzMjQ3YzEgbGVnYWN5LXRydW5rCisxODY3NiA4NjhkMmFjZjc0NTgwOGM5MDMzZjU3Y2Q1ODI5ZDk3YTY5ZWNmNTZlIGxlZ2FjeS10cnVuaworMTg2NzcgYzY4YjA2MjQ5ZDhhMjE0NjdhN2FlNTNjNWYzYjZjNGJlYmFkOWEwNCBsZWdhY3ktdHJ1bmsKKzE4Njc4IDY0NWY4ZmQ2ZmE5ZGNjNTk5NTFjYzJkMjlkMjY5ODA1Mjg4ZjA3ZTggbGVnYWN5LXRydW5rCisxODY3OSAyZDM5OTA2NTYyNDgwMDQxODI2MGVmN2Y5ZDQzYmNlYzk4NTUyNmMxIGxlZ2FjeS10cnVuaworMTg2ODEgNzk3NzBjYTE1YzVhOWY1MjkxNGIxNjJjYjkwMWU1ZTRiM2VlNzBhMSBsZWdhY3ktdHJ1bmsKKzE4NjgyIDMzYjQ0NGNiYWRiOTkyYTdlNTcyOTFiYjllNzUzOTEzYjg3YTZiZWQgbGVnYWN5LXRydW5rCisxODY4MyAwZjIyZmViOTM5N2RiOWIxYjgwN2ZjZTYwNGQ3Zjg2ZDk0YTA2NzhlIGxlZ2FjeS10cnVuaworMTg2ODQgYzdkZmJhMGRiODc5MGIwMDRkMTFmYmMzYjViYTU1NzFmYmQxNjVmNiBsZWdhY3ktdHJ1bmsKKzE4Njg1IDk4MjE3NzdmOGRhZDZjMGY0NWYzMmRiODM1M2VhOTkwNzFkY2ZmZjggbGVnYWN5LXRydW5rCisxODY4NiA3ZjdlZjk0NDdlNTlmY2E0YjhlMjBhNTJiZGQzMTUzMzU3ZGZlYjA0IGxlZ2FjeS10cnVuaworMTg2ODcgNDMyOGZmZTY0N2JmN2JlYWZjY2RkNzU1ODEzOGVlMmQ4Yjc4Mzk4MyBsZWdhY3ktdHJ1bmsKKzE4Njg4IDE3NDQ5MGU5MjRkNDdmMTkyYmQ5OGZhOGRkMmVlNTNkNjlmNTA3ZjIgbGVnYWN5LXRydW5rCisxODY4OSA4MWRiOTJlODBlYTg4NjNkYjk5OWZjOWVlZWEzNjRmY2Y3MjU1N2Y1IGxlZ2FjeS10cnVuaworMTg2OTAgMDVhZDI5N2UxNDRmZTk3ZGU1MmVlMDJiNzUwNDQ4ODgwYzEyMGNkNyBsZWdhY3ktdHJ1bmsKKzE4NjkxIDkzMDhkYzhjODVlMDM1YzQ0NGI1ZDRmYTdhMjk5MWIxNzQwMTMwN2IgbGVnYWN5LXRydW5rCisxODY5MiBlMDBmNzE4ZTRkOGFiMzk1ZTY4MTk0ZTNkY2NlMTU4ZTdjY2ZiZGE2IGxlZ2FjeS10cnVuaworMTg2OTMgOWEyMzg1ZWUxZDk5NDQ2NDA3NjE3ODU1Yzg0ZDYyNGVlNmJkZDkzMiBsZWdhY3ktdHJ1bmsKKzE4Njk0IDBhZTM4OWU5MzVmYzQxNmViODc0MzdiY2QzNWNlMzkxODgxNDhjM2IgbGVnYWN5LXRydW5rCisxODY5NSA3ZWEzMGExNjM0NjM2ZDhmZWFjMmQ2NGU4YmI1OGMzY2Y5YzJiMTFhIGxlZ2FjeS10cnVuaworMTg2OTYgNmUzMjlmM2UxN2YwZTUzOWE2MjhkODhkMzAzNTZiYTFkNmYyODE1MyBsZWdhY3ktdHJ1bmsKKzE4Njk3IGIxYjBhNzAzZWM0ZTZhM2IwNjczZDEzZDJiM2JmMTU3NDBiNmViNzEgbGVnYWN5LXRydW5rCisxODY5OCAwZTRmNDhjNWZjODRkODgwNjA1M2Q5YzY4NTUzOTA4NjM0N2JkYmRjIGxlZ2FjeS10cnVuaworMTg2OTkgYmIzMDNhNzZhNDc4MzdjZjA0NzI2NmJiNDY3OWU3YjRjYjZkMTU1NiBsZWdhY3ktdHJ1bmsKKzE4NzAwIDY3YzhhYmQyMTAyNWE1NDJmZWE3NjM2Y2M4M2ExNDg4ZTU3MDU3NTUgbGVnYWN5LXRydW5rCisxODcwMSAzYjY0MzY1M2UwNzgyMGJmNTczNWIyNmQ1NmE2NjE3ODUzZWJkODc5IGxlZ2FjeS10cnVuaworMTg3MDIgN2Q1MDI1YmJhMDM3YzZjNGZhNTEwOTFiOTg4ZTU5NWE2NWE5NTUxYiBsZWdhY3ktdHJ1bmsKKzE4NzAzIDE3ZWJhNzQwNDA5OWNlNTNkM2Y1ODYyMTQxYWRiZmUyOTNlMmQxZGQgbGVnYWN5LXRydW5rCisxODcwNCBmNmNkMzY0OThhNTAzZjMxNjUxNjczMTJmZGQ1YWM4NjZhODhjMjkyIGxlZ2FjeS10cnVuaworMTg3MDUgNjAxYzUzYTllNDlkZjFmYjIwYTkyZThmNjQxZjBjNmQyMmUwMzc2ZCBsZWdhY3ktdHJ1bmsKKzE4NzA2IDI4MzM1NmZiNmVmYzc1OWRhYTc5ZDQ1MTU3MTg0NGQwZTIyMjdhNmEgbGVnYWN5LXRydW5rCisxODcwNyAyMTBiYmU1M2I2ZDRhYzc4YmRlYjQ3NDczM2QxYTk0OTNiZTcwODgzIGxlZ2FjeS10cnVuaworMTg3MDggZDQxZjliMGE0MGNhYTYxNDc4OTVlZTRjYTI1NzZhMGVmYjgyYjUxNyBsZWdhY3ktdHJ1bmsKKzE4NzA5IDY3OWQ1MDcwNWUwNjk1ZTExNjZiNDM1MjEyMGJjMWVmNDNjYTc1YzQgbGVnYWN5LXRydW5rCisxODcxMCA0MDVhNTk3MzU4NDE2ZDAyYTQwOTA1ZGY0OTJjYWY2YTQ5YjA0ZTY5IGxlZ2FjeS10cnVuaworMTg3MTEgMTdkM2E2M2UyMmM3NDI4MzkwZjgyMjEyNTdjMmI4N2UzZGZlYzhiMiBsZWdhY3ktdHJ1bmsKKzE4NzEyIGM3MDQyMTQzMzk5ZjMxODQ0YTJkMGEyMjQyMTUzMTIwM2ZjZTQwNmYgbGVnYWN5LXRydW5rCisxODcxMyBhM2MxYTIzNGNlZTcxODQxNGNjMjdjOGNlZWQwZTY4MGJjM2RlZDEwIGxlZ2FjeS10cnVuaworMTg3MTQgMGQ4YjViM2Q5ZDgzZDA2NmNlZDY4MWI5OWUzYTJjZjYyZTZjNzY4ZSBsZWdhY3ktdHJ1bmsKKzE4NzE1IGE4NGI1M2JhOTBjNDFkYmVkY2EzM2NmNDM2MjI3ZWVlYmNlYTZmMDIgbGVnYWN5LXRydW5rCisxODcxNiBmYzc2NTQ2NGIxNzgwMTJjN2NjMmFiOWI0MjQ4MWI3MWJkMGJkNTljIGxlZ2FjeS10cnVuaworMTg3MTcgMTUyZDAwNzE4MDA2MDlkNTBiMGNhNGU5NjJmZWU3YTc3ODUyM2Q5NSBsZWdhY3ktdHJ1bmsKKzE4NzE4IDhjNzE0MDlhYzBjMzk0ZDE5NjY1ODY5OGU4OTU0MWRlNTIyMTVhMTEgbGVnYWN5LXRydW5rCisxODcxOSAwYThkYTZmMzk3Yjc4ZjU4MThkOTA3ODc4NDE3MDlkZWU4YjBkYThhIGxlZ2FjeS10cnVuaworMTg3MjAgODFlM2Q4NjI2YWRmMGY3OTA1NzliYTg5NTExMDQyOTFhYWZlYzJhYiBsZWdhY3ktdHJ1bmsKKzE4NzIxIDMxOTY3YTIzMzYwMDkyYTVjODdmODdkYjA5Zjg0ODJkYmMxYmFhNDggbGVnYWN5LXRydW5rCisxODcyMiAwODNhNWM3NWVkOTA0NTIyMTNiNDg0NjA0NjA4OTYyYjhkMjJjMWE5IGxlZ2FjeS10cnVuaworMTg3MjMgZTdmNmQ1NGMwMTRkMzQxZWU1M2EzNzVjOWY1ZTdhYTEyMjhjMzdkYiBsZWdhY3ktdHJ1bmsKKzE4NzI0IGZjMWU1ODMxZmUxMDc3Yjc4MjFlZTNkNWZmZTA1NThmOTY2NWM2ZWUgbGVnYWN5LXRydW5rCisxODcyNSA3MWIxOWQzNmFhZmE5M2ZlYjAwM2MyMTQwMjc5MDJhNzNkYjcyNTlhIGxlZ2FjeS10cnVuaworMTg3MjYgMWIwM2Y3NmFiMDNlYTc0MjU1ZWI3NTQ1MmI5NmE0OTk1Yjk0YzhlZSBsZWdhY3ktdHJ1bmsKKzE4NzI3IDU1NzhlOWI0MjRkNGFhOGRkY2U1NmVhMGFjZmQyZGMwNGJiZjMyNGUgbGVnYWN5LXRydW5rCisxODcyOCA3MGE1OWUzZmIyNzhiYjUyMGU5NzEzN2JjY2RjNTVhOGQ4OGQ2OWZkIGxlZ2FjeS10cnVuaworMTg3MjkgZjVhM2Q5OGEzNWJjNGJkYzc0YTg0ZmJhNmVlZDg1OWQwZjA3YWQyOSBsZWdhY3ktdHJ1bmsKKzE4NzMwIDMwNjBjYmZhMDFiZTZkZmM2ZmRiODhmMGY1YzEwYjczYmJmYmYwNmQgbGVnYWN5LXRydW5rCisxODczMSAxYTRjMWMwZTE0YTEzZjU5NTI2NWFiNjRjYjE0Y2M0OTEzODY2MWE4IGxlZ2FjeS10cnVuaworMTg3MzIgMDEwZDAzODUzNTQ2NDZmMTU3MDA1MWYxOTM2ZjY1MDc0MzMxZGUwYiBsZWdhY3ktdHJ1bmsKKzE4NzMzIDYyYWVlZmEwMWZkZDU1NGUzMGI1MDVlNWUwMzc3NTRkZTcxYzU0ZTQgbGVnYWN5LXRydW5rCisxODczNCAzNjg1ZWYyYTU1YTQ4ZTNkNmMwMGE5MThlYmFmZjczMGYzYjI0ZGY1IGxlZ2FjeS10cnVuaworMTg3MzUgM2RkMjE3ZmJkZDU5YjFlZDI2ODM3MjE4N2RjODFkOWYxNTgwOWVhYyBsZWdhY3ktdHJ1bmsKKzE4NzM2IDRjMDFlZTBhODA3M2Y5ZGU0OGQyYzBmNTdkOGJhZjhmNWQ2MzcxMTMgbGVnYWN5LXRydW5rCisxODczNyAxOTU1NTdhMGYwNTBiODEyNzJlMmE1YTYxNTdlMTA3MzRhOTIyM2M3IGxlZ2FjeS10cnVuaworMTg3MzggYTMzZGUyM2IzMDY2ZmJjZGJiMjdlOTE2ZjQyZTg0MDg4N2VkODNhZSBsZWdhY3ktdHJ1bmsKKzE4NzM5IDkzZDA1NjdjOWZjOWNiMWYxNGU4MzcyZjExMWYzZjVjYThkMjNlOWIgbGVnYWN5LXRydW5rCisxODc0MCA3NTEyMTVmYTBkYTdmM2MzMTI2NzQ2NWY0Y2QwOTY3NTgxYjJhMDFkIGxlZ2FjeS10cnVuaworMTg3NDEgOTA5OTJjODJkNDZlOWZjZmZjNGY1YWY0NjA4MTE0Y2JmMDQ2ZmIzOSBsZWdhY3ktdHJ1bmsKKzE4NzQyIDNlYTEwZWU5MWU5YzVlNWQ0OTliODRiMDA5OGQxMmE0ZGNlM2ViMWYgbGVnYWN5LXRydW5rCisxODc0MyA0MTU0NjM1MzI1NWM3ZjBhOWI4NDM0NWRmMTBhNDEyOGM1YzRmMTdkIGxlZ2FjeS10cnVuaworMTg3NDQgMTkwZDE0YjcwYzI3YjhmNTUzMjBjNTk5MjQ0MWIxMDFjNDQ3ZTczZiBsZWdhY3ktdHJ1bmsKKzE4NzQ1IGY0N2QxY2JmYmU3MDYzMjRiOWE2ZTNkNjhmM2Y1MjM5ZDIwZWRkZDYgbGVnYWN5LXRydW5rCisxODc0NiA3Y2Q0NmZmODliZmMzYjBlZmZlMThjODk1NGM2ZmM5NmFmZWUyNjg5IGxlZ2FjeS10cnVuaworMTg3NDcgZTZhMGZkNTRiNjA3MmZhODRhMjhlZTU2OTBhMjgwYTNlZTJmYjM2ZSBsZWdhY3ktdHJ1bmsKKzE4NzQ4IGE3MDI1ZjA3MDljNWI5OWY5NTA4YjgyMjZjMTk5OTUwNjE0NGE1ZDMgbGVnYWN5LXRydW5rCisxODc0OSBmODMxMTVlZGYxNmFmNmFkNmI0N2U4N2YwZmVlYzk1YmFjN2JjOWMzIGxlZ2FjeS10cnVuaworMTg3NTAgYjUzMjA2Mjk1YmRmZWY3NTQyNDI5NTJjNGFjMjRmZDkzOTgwMmQwZiBsZWdhY3ktdHJ1bmsKKzE4NzUxIGIwYmE0NmIxNmUwNzUwOTRmYjA0NGM5NWViOTM3ZDU0MmFhNzI0YWYgbGVnYWN5LXRydW5rCisxODc1MiA3Y2JlNDVkNzlhYjVjMGJkMDYyMDcyMTE2ZjE3YjIyZDc5Njg3MzkwIGxlZ2FjeS10cnVuaworMTg3NTMgMThjNGM3Y2E5M2VhMDZhMTljYjMzMTcxYWJlNjFiZjViNTgzYzhiYSBsZWdhY3ktdHJ1bmsKKzE4NzU0IDhlZjMxYTAzOWE5NjQwYTA1NzUxYTEzNjYxMmViZTk4YjU5NjY3MzMgbGVnYWN5LXRydW5rCisxODc1NSA1NTNhMzE1ZjU4ZTkyZmQxMzJkMTRkNmVkOGQ4N2I3Y2M3NThjY2EyIGxlZ2FjeS10cnVuaworMTg3NTYgMWM2YjBkM2E1OGVhZGI1NTY3ZmNjZGRiZDg2MWZjN2Q5NDg0NGM0NSBsZWdhY3ktdHJ1bmsKKzE4NzU3IDg3NjRkZmZiYWYyMzRlMTk2ODdmMjI5ZmM4MWRhNDNiOWQzM2U3NzQgbGVnYWN5LXRydW5rCisxODc1OCBjODdlMmEyZTMzNWQwYTI5MDI2MjViNTJlMWRkZjRmY2YyMTEwZmJmIGxlZ2FjeS10cnVuaworMTg3NTkgYzU2OGJhOWRjMTgwYTJjYTIzMDkyNGY1MTRhMDEyZDk4MzY3ZGNiYyBsZWdhY3ktdHJ1bmsKKzE4NzYwIDgzNjZmY2ZiNjA5MDRjZmI1ZmFmNjgzZDYyNDFjOTUyOGJkMzNhZWEgbGVnYWN5LXRydW5rCisxODc2MSAxNTI4MTRmNmNkMTEzM2U3YjMyYTI3NzZhZmFlNzI0ZTMzNDg4MjJkIGxlZ2FjeS10cnVuaworMTg3NjIgMTEyOWUxNmExMWRmYjM1NzkxN2Q1YTZhOGMxZDE0MjkxOTcxMWUyZSBsZWdhY3ktdHJ1bmsKKzE4NzYzIGNkODNmN2E5Y2RjZDFmMzE1OWU2MzkxYmExNmMxMDZiNjBlYzBhMWIgbGVnYWN5LXRydW5rCisxODc2NCBlZWYzMjFiNmU0MWNlNjYzYzY4NmI3ZmI2Mzk4ZmE2ZmQzOGRlNmU5IGxlZ2FjeS10cnVuaworMTg3NjUgYzlkZGJlMzQwN2ZhNDQwMGRhOWFjY2ZmNGYwN2U3NWUyOWIzODgxYSBsZWdhY3ktdHJ1bmsKKzE4NzY2IDE0OTQ1OGE1NzQwYWYxZjU5NmQ1YWViNzhiOGJmZDE4NWEyM2U2YzQgbGVnYWN5LXRydW5rCisxODc2NyAxM2U1ZWIwMDZlYjMyMWJiZmU0OTM5YzMyYTQxNzRiZGRhYWM1MGFmIGxlZ2FjeS10cnVuaworMTg3NjggNTA4OTBlMzQ1NGM5NTBhODhlYjQzMTNlNTA0YmE2YWU4YTEwNDNiYyBsZWdhY3ktdHJ1bmsKKzE4NzY5IDEzMjViZGU5NDg5NmRkNWRkMzZmODU5ZjE1MTE1MmMzZmQ0MjQ3YTcgbGVnYWN5LXRydW5rCisxODc3MCA5OGU5NWUwZjViZWM3NDVlOWUwMTAyNzlmZTdlMGFmOTY3YmU5NWJiIGxlZ2FjeS10cnVuaworMTg3NzEgOGRiMzE5ZGRmYjM3OWU3Y2Y2YTc3OTgyMTczMTA4NjkxNmVkZTUyOSBsZWdhY3ktdHJ1bmsKKzE4NzcyIGY3ZjNiZTNkMDBiOWM5ZGVkNmM0ZmI2MTAzNGQxZWNlZWM0YjJjYWQgbGVnYWN5LXRydW5rCisxODc3MyBhOGVkYjNmN2Y0ZjgzYjk1YTA1M2JlZDA1NDEzNWMxOTNmMDFmMDZjIGxlZ2FjeS10cnVuaworMTg3NzQgZTgyNDY0NDBhODI1Yzk0ZGVhOWFkMjc5ZmY2ZjZiYmJkMzE0ODM2NiBsZWdhY3ktdHJ1bmsKKzE4Nzc1IGQ3ZDE2NjU1MGM0MzM5ZmFlZjk4YmIyMTk3YWMyM2U4N2MwODYyZWIgbGVnYWN5LXRydW5rCisxODc3NiA4OGExMjY3YTMzOTVlYWYxMzNlMTk4NDkxNWIwMmQ2Y2ZlYzg2NzQ2IGxlZ2FjeS10cnVuaworMTg3NzcgMTg1MTFlMTEyODcwMGQxZWQ1YjhkNjkyZTliZmFmODJhMGJmZWQ1MyBsZWdhY3ktdHJ1bmsKKzE4Nzc4IGFlNjM2YjhhYzQ4MDhkZjRiYmE5Y2ZhYmI5NDgyMTEzMzk2M2ZmMGUgbGVnYWN5LXRydW5rCisxODc3OSBhMzgxOTBmNzFiZjJiNWY1NzdhYjUyMzNkMGZlNTI0ZTUzODFlMzMwIGxlZ2FjeS10cnVuaworMTg3ODAgYmE2ZDRiNTIxODBhNzdmZmRjNjYyMTMwZTJiNTYyODIwYTc3YWJhMCBsZWdhY3ktdHJ1bmsKKzE4NzgxIGJlMjU3YTc1NTNhMjI3MTY2M2ZiZDEwNWQzZjE2NjZkMmU0OWUwNzQgbGVnYWN5LXRydW5rCisxODc4MiAwMDdmN2ZhZjYyYjIwMzE4ZjI3ZGEwZGIxYjQ4NDE5NmQ0MzM1NDVhIGxlZ2FjeS10cnVuaworMTg3ODMgNDg5NjkyZTc5MTUxNDMyMTQxNDgwZTFjYzA0ZWU4NjJmMDBkMzU3NiBsZWdhY3ktdHJ1bmsKKzE4Nzg0IGZkYTlmODZkYzRlODQ0NTVkYjkzOWI1NmI3MDEyMGRiY2M4NDE4YmEgbGVnYWN5LXRydW5rCisxODc4NSBmZjZjMzBlOGNhNzNjODY5Y2ZiZDEyYzQ0MGZjOTBkZTkwYjRmZTQzIGxlZ2FjeS10cnVuaworMTg3ODYgNzAyZWQ5OTY1MjI4YmIwN2I2MGE3ZjdmMGE1MGU2YTYyNmUzMjRhZCBsZWdhY3ktdHJ1bmsKKzE4Nzg3IDlkNWJlZWQwYjkzZmRmMzVhY2YyMTE5NWY1NmE5YmY0ZDRkMzdmMmIgbGVnYWN5LXRydW5rCisxODc4OCBhYzEzY2VmNDIzYzgzM2Y1ZDEyNzk3MjMyMDMxNTEzNjk0MTUyNDc4IGxlZ2FjeS10cnVuaworMTg3ODkgYzk1OWY0YjNlZmExMWFlNDlhMzE3OTZiOGFkYWVlMmIyNzFlZDg1YiBsZWdhY3ktdHJ1bmsKKzE4NzkwIDE4NzJlNjA5YTYzNGMwMmMxNDNiMTg3MDc5YzViNTJjNDQzZTFjZmIgbGVnYWN5LXRydW5rCisxODc5MSBhNDg0NTkzY2Q0MDdlMWM2NjE1NzRhMDcxZmIxZmZhMTg2NzUzZDg0IGxlZ2FjeS10cnVuaworMTg3OTIgMTRhMjdhY2M3NTVhYjQzNDFmYjc3Y2M4YzY2ZDllZTQyMjcxMGEwYiBsZWdhY3ktdHJ1bmsKKzE4NzkzIGRjM2I5YTU4MTY4NmNkOGM0YzRhOTJkYWJiMjFhNDZlMjQ4NzI3NDUgbGVnYWN5LXRydW5rCisxODc5NCAxODgxYjk2ODk4OWI4OGRhNzNkYjg0NjUwNTM3NDU1MDU2ZDZkZDFkIGxlZ2FjeS10cnVuaworMTg3OTUgMzVhNDE5NGY5ZWFkOWI5NmZjNjNmNTIyMDFlZTcyMjU5OWZhNDMzNyBsZWdhY3ktdHJ1bmsKKzE4Nzk2IGIxYTVlZGI4MGY1Y2ZjZWNiNWIzMTZiYTI2MTQxMTg3MjM5YjRlY2IgbGVnYWN5LXRydW5rCisxODc5NyAwYjBmY2UxNGQ0ZTg4MjZiZmM2YmNhYjMxZGM4Yjc3NDkxNTc5ZmVkIGxlZ2FjeS10cnVuaworMTg3OTggYmVjMGY2MWNmY2Q1NmUwNjM0ZGI3ZjdlMzE0OTgyYTQ0ZGM3ODYyOCBsZWdhY3ktdHJ1bmsKKzE4Nzk5IGQ5ZDBkY2I3MzVkN2Y3YWM0NTcyNzVkMWMxNTA3YTAxNGY4ZDZmYmIgbGVnYWN5LXRydW5rCisxODgwMCA4ZmQyMjFhZWQzNTc1OWJmMDlkZWI4MzYyMDQ5YWI3MmNmNGMwODM3IGxlZ2FjeS10cnVuaworMTg4MDEgODY3YTRhNmU3Y2RhODc3Zjg3YjZjZTAwZDM3NWY4MjhjNmI0OWUxYiBsZWdhY3ktdHJ1bmsKKzE4ODAyIGVhNDY0ZWRhNjE1ODRiODk4OTQyMzA1ODVkMWEzNDQ0NmIyNzM0YTggbGVnYWN5LXRydW5rCisxODgwMyA1YWJhZTc5NTc0MmVhOTY5MzdkZmViMWJlZDI2ZTg2M2QwMDUwZTM0IGxlZ2FjeS10cnVuaworMTg4MDQgNjQzOTBjZWFhYzFhZjljZjk2OGZjMDBmZTQzMTY3NWY1OGQ4Zjg1OSBsZWdhY3ktdHJ1bmsKKzE4ODA1IDViMDYzYmFlYmVmOGM2ZDU3Y2Q5NGZkZjFlMDUwZTIwOGViNTIwODkgbGVnYWN5LXRydW5rCisxODgwNiBmNDY0YTAzYmU4NWFlNmQ5MTJhYWJlMGQ1NTM0ZmExYWY4Njc5ZjFkIGxlZ2FjeS10cnVuaworMTg4MDcgMmVkZjVlZDMwNTgzOWIxY2NmMjU0MTE3M2U2MTg0ODdhNDQ3NGQwYyBsZWdhY3ktdHJ1bmsKKzE4ODA4IDRmNjIxNzA4NTE0YjFhYTVmMjFhMDYxMzEwNDEyNTllZmJjMDA5ZGMgbGVnYWN5LXRydW5rCisxODgwOSA2YTg1MjQ4YjQzOWVhYTNkOTA4ZWMxM2M2MmUwOThiMDJlYTZiNTM1IGxlZ2FjeS10cnVuaworMTg4MTAgM2JjMjQ0MDQyN2QzMzFjZmQyMTdhOTBmNjVkNjM2ZmZlNzA0MzhiMCBsZWdhY3ktdHJ1bmsKKzE4ODExIDc2YWQyYTlhM2U1MzRlMWMwNTY0YjQ2MzM1MzM5YWRmNWFkYzIwZDcgbGVnYWN5LXRydW5rCisxODgxMiBmMmUxMzg5NWJkYTdkZjUxODA3NzE2ZmQwYWUwMWNkMGVhNWMwOWJiIGxlZ2FjeS10cnVuaworMTg4MTMgZGIyNmI0M2M5MjRmMzBkY2EwNzRlYmRiNzM1MjQ1Mjc1MzExN2U4NiBsZWdhY3ktdHJ1bmsKKzE4ODE0IDFmOTJkNjNiMjBmMDIzMTA3ZmE1OWVlZjQwNzk5Nzg0ZThmZjYzMjkgbGVnYWN5LXRydW5rCisxODgxNSA4MzQ5YjRkZmM1MWFkZTYzZDI0ZmM5YzBiMjcxZjIxZmYxN2NlNTMwIGxlZ2FjeS10cnVuaworMTg4MTYgMDFlYWU0MDg1N2Q4M2RiZTU5YWVmODM5YTg2ODNmOWVkZjRhNjczOCBsZWdhY3ktdHJ1bmsKKzE4ODE3IDI4M2EwYjJhYWRjNWYyYWE5NGFiZjNmYTZjYzYzYjc0NmVlZWNmZTMgbGVnYWN5LXRydW5rCisxODgxOCA4NTdhYWQ4NDJhZTdkOTlkMTI4MmYzMGRmZjA4Y2VhZmNjMDk4MzNiIGxlZ2FjeS10cnVuaworMTg4MTkgYzFhOGRlYjE1ZjBlMDY2ZWUxYTEwYTE3MzQyNzYwNzBhMGJmMzFjYiBsZWdhY3ktdHJ1bmsKKzE4ODIwIGM4MjA1NTUyZGRlMWViNjhkZTBjOGJiNWY2NTZhOTQxYTkwOThlMDYgbGVnYWN5LXRydW5rCisxODgyMSBmZGEzZmYxOWQxYzRhOTY5ZWE2NDg1NGVmMjQzZGNjNWRiN2IzMjExIGxlZ2FjeS10cnVuaworMTg4MjIgZDczYjIxZGFlMjlhMmVlODk4OTNkMDRhOTY0ZjM5MmFjMGVhNGFhMCBsZWdhY3ktdHJ1bmsKKzE4ODIzIGMwMDAwYmQ2MjUyYzY4MDMyNTA0ZDE0ZjIxNDczNWE4MTYxMGJiNWIgbGVnYWN5LXRydW5rCisxODgyNCBmMTc1MWFiZjc3MWZmYzRhY2I2MTE5OTYzMmMyYTE5NzVlYTk0NWRkIGxlZ2FjeS10cnVuaworMTg4MjUgY2YxN2EzY2U1Mzg3NDNlZDIzYWYzMmFlNmQwY2FhNWE0NzE1ZWU1NyBsZWdhY3ktdHJ1bmsKKzE4ODI2IGRjOGEzMGI4ODg3YzgwNzNiZTVhN2QyMmQ5ZTgzZTc4YzU1M2JlNjQgbGVnYWN5LXRydW5rCisxODgyNyA1YWJiNDczMDRiYzc2ODVlNjkwYzVkZTA4MjlhNWY5OWNhMjMzZGMyIGxlZ2FjeS10cnVuaworMTg4MjggZTU5YjgzNWFkODlhNTJlY2Y5NzFjMjRlNWNjMWYyNjRkZTliMWE4OSBsZWdhY3ktdHJ1bmsKKzE4ODI5IGRjYWUzZTA4ZDg0ODQ4NTczYzJmMmJjOTc0NDRlNzdkOWIzYzdmNGYgbGVnYWN5LXRydW5rCisxODgzMCA1YmJhODVkNDllNWFmOGI2YzI5NGQ0YWExOWZmYmEyYTc5MTA1OGQ5IGxlZ2FjeS10cnVuaworMTg4MzEgZTIxZGE4NGQwYzY1ZjBhMTAyNDI0ZWQ4ZDg2OGM3Nzk1ZDE0ZDRiZiBsZWdhY3ktdHJ1bmsKKzE4ODMyIDc3MDA4ZjA3Y2UyNWRhYTAzYzQ3MjgzN2E1YWFlNjc3YTRiMTM2NjcgbGVnYWN5LXRydW5rCisxODgzMyBmZjljNzliYmMzZWVkMWIyMTU2ZjdhMmU3NzdiNGRjNGQ2MjM3MDE2IGxlZ2FjeS10cnVuaworMTg4MzQgODg5YjdiYWY4YmJiNGIzYzlkZDIwMzZkZDU4ZDRhOWRhNzg0MTc2MyBsZWdhY3ktdHJ1bmsKKzE4ODM1IDcyMTM5MjYzZjhhNzk3NTJkMjMxZThkMzk5YzA0NDZhZDUwMDk5MzYgbGVnYWN5LXRydW5rCisxODgzNiA1YjkxMDNlNjJmYWMzZGE0Y2YyODI1ZjljM2E3YzYzZmFlZGRjOTBiIGxlZ2FjeS10cnVuaworMTg4MzcgNTQyMDU4MjhiMWUxNzNjNmY5MmU4ZjJkOWEzMzQxZGM4MjYwZWYyZSBsZWdhY3ktdHJ1bmsKKzE4ODM4IDUxZmM0NTI3NmE0MzNkN2EwNWI1MzM3Y2RiYTY3OWE5ZWQzMDJmMjYgbGVnYWN5LXRydW5rCisxODgzOSBmMTY1NDVmNTgzNDU2MDhiNWFkY2U4NDM3MzQ5MDdjYzQxMGYxMjM3IGxlZ2FjeS10cnVuaworMTg4NDAgMjRkYWZiYjBkYjU4ZjY2MmU1ZTBlM2I3MjEwYWZlODc2YWI0YzRlMSBsZWdhY3ktdHJ1bmsKKzE4ODQxIGEzNmE0OTMyZTM5OTEzNWMxNTQwNGQ2NTc2YWI5ZmZlNWI4MjVkNmEgbGVnYWN5LXRydW5rCisxODg0MiBhZmFlNDA2OGQyZGQ5ODgyOGYyM2M2NDM5NDZkNTJkMmRkMGNiMjg0IGxlZ2FjeS10cnVuaworMTg4NDMgZDFjYjQxMzhmZDM0YTRhOTY5NzUyMDc0Yjc3MDI4NWVhZGJjZjVjYyBsZWdhY3ktdHJ1bmsKKzE4ODQ0IDkxMzA0YzRjNzI1NmY4M2Q2MDI3NWNhMzhjZTVhODU4NjYwMzA1YjYgbGVnYWN5LXRydW5rCisxODg0NSAyYjI5MzE5YWU2ODE5NDAzZWYwMzNjMThmY2IwMWZmM2RmMzgwYzdjIGxlZ2FjeS10cnVuaworMTg4NDYgNmMxNzUxZjZhZmUyM2UwZGViNDM0YjQ1YWZiNGI1NDAzMjc0OWRlMiBsZWdhY3ktdHJ1bmsKKzE4ODQ3IDE3ZjIzZjhjZDhjNzdmMmQ1OTU4YzUzM2FmYTgwMmMwNDhkYjYwMDQgbGVnYWN5LXRydW5rCisxODg0OCBiZDVhZWU2YjgzOTBkNGRiMjIwZjM5M2M3MWIyNDBkYTNiZWNlYjhkIGxlZ2FjeS10cnVuaworMTg4NDkgNWZiODY1MDc1MTljMDlkOWFkZWNjYzFmYTJjNTU0ZTY5NDcyZjY2OCBsZWdhY3ktdHJ1bmsKKzE4ODUwIGFlMjlhODliNzdjM2ExMjY0ZGU4NTNlMjg3ODNjNmNjYmEwN2JlZjAgbGVnYWN5LXRydW5rCisxODg1MSAxZjFlZmYwODFhMmE3NTEyZTgyMmQ5MDA0ZTM4ZmI4YWY1MDljZjNiIGxlZ2FjeS10cnVuaworMTg4NTIgM2Y0YjYwMDJjMDdkMzEzZGE2MzczYzliNWI5N2UxZGI2YjFiYWQ2MCBsZWdhY3ktdHJ1bmsKKzE4ODUzIDYyMDg0Y2Q5NTdiZDZkNGQyNDgxZjU2N2FiZmFkNmQyNDE0ZGM5ODYgbGVnYWN5LXRydW5rCisxODg1NCBhYWNiYTM3NDc2ZDQyNmVkMmNhNjVkMmI5ODZiMmE3YjAzODU4MjkyIGxlZ2FjeS10cnVuaworMTg4NTUgZWFlMjYxMTc5ODZmYTRiOGIyMjI1ODE5YjQ1ZTc1ZjkxMDYwODcxOSBsZWdhY3ktdHJ1bmsKKzE4ODU2IGY5YTE1YTU4M2M3OWQ5YTYxOTA3NWQyM2FmODg2MGU1N2NlZjM5ZDQgbGVnYWN5LXRydW5rCisxODg1NyA4ODMyNWI3M2E2YTNiMTI5NjZhOGUzY2U4NDZmNzA4NGMzYjk0ZjU0IGxlZ2FjeS10cnVuaworMTg4NTggYzUwM2ZhOWIyNjVlMjJiZTJlNTVhZDRhNWNkZDI5ZWU5NzE0MDYxZCBsZWdhY3ktdHJ1bmsKKzE4ODU5IDY5NjVjMjA1YjYwMzY0ZmU4OGZlYjk1MzZhOGVhODQyZGI1ODgwMWMgbGVnYWN5LXRydW5rCisxODg2MCBmMzkwZjQzYWM0YjY0OWE5YWE4MzNmYmVhMmEyYzU5YjdjMGI1MWMzIGxlZ2FjeS10cnVuaworMTg4NjEgMWRjMDJiMjI5NWE5NzQ2OTVlYzRhNmQ0YWMyZDkzZGIyOGQyZDkxNSBsZWdhY3ktdHJ1bmsKKzE4ODYyIDNmNjFlZjcyYWVmMzUwNmUyN2M0ZWRhMjBiMjVlMmFjYzQ0ZmM2NTEgbGVnYWN5LXRydW5rCisxODg2MyBmMzc0MDY3NGFjNWJmMzI5OWVmZjk1NmFlOGZhMjk3MWE2Mjg3MTZhIGxlZ2FjeS10cnVuaworMTg4NjQgZTFlNzZmZTNjYjUzYjE1MjVlY2I1YzdjMDg0YmI3Y2M5YThkMzM1ZCBsZWdhY3ktdHJ1bmsKKzE4ODY1IGU4ZWUwNzg1Yzg0Njg2OGNkZGQ0ODczYzYxNWVkNzAxOTRiNjM1MGYgbGVnYWN5LXRydW5rCisxODg2NiA5MjUxY2Y3MGVkMWY4YjVlZDViM2MwMmJjZTE3MjBkOWZlMGU1ODQyIGxlZ2FjeS10cnVuaworMTg4NjcgY2VkODA0MWViNGVhN2RhOTU1NDZiZDc0MTM5NzM2YzM0YmQ4NWZmMCBsZWdhY3ktdHJ1bmsKKzE4ODY4IDUxODExZDc4YTlkYWE2NGZlNTlhM2ZhNWE0NmI2YzBmMjc3NWU2NmQgbGVnYWN5LXRydW5rCisxODg2OSAzMjM1MmUxMjBjMzc5NDgyYzE4ODEyZDlhZjI2NDU2MTA1MWJiMTk4IGxlZ2FjeS10cnVuaworMTg4NzAgNGM4NTZhMTgwNDU4N2IwNTE3NzA1NDliOGY0ZGVjMDQ2NTdiODk5NSBsZWdhY3ktdHJ1bmsKKzE4ODcxIDJkZjQ1NzRkOTBmZTZkODg4NDBjZTdiOGNiNDA2OGU3MGZkMzVlMzggbGVnYWN5LXRydW5rCisxODg3MiAzM2Y1ZWU2YTBlYmU3NDlmZjQ1ZGYyZWJmODA2OTQ1NjIyNjk2ODc5IGxlZ2FjeS10cnVuaworMTg4NzMgZDkwZWVhYjVmOWE0MThlZGY4MzEzMjgxNDE5Zjc1YWM2M2FmNzkwNiBsZWdhY3ktdHJ1bmsKKzE4ODc0IDhlNGRmYjY4MTY4OWJhMGMzZjZlZTRkOTc5MTMzMWYxYTU1OWZhYTAgbGVnYWN5LXRydW5rCisxODg3NSA5YmM3NTQ0MTNhOGMyZGEzZGJkMzA1YWNiN2ZjNDVhMDdjMjEwNGJjIGxlZ2FjeS10cnVuaworMTg4NzYgNzU0ZWNkMjFmYmVmNjVlMmVlMTU0OTY1NzVjNDJiOWFhYWVjMjFlYyBsZWdhY3ktdHJ1bmsKKzE4ODc3IGM4MzJlZjcyNDk5ZGIzYmQ1NTI4MWRkYjY4MWMzNGFkYzExNDZjYTYgbGVnYWN5LXRydW5rCisxODg3OCA4Y2E2ZDhjYWZjZDM3Njc0ZjBjMmYxOGY2YTFkNjRkNzBjZmQxODliIGxlZ2FjeS10cnVuaworMTg4NzkgNzIzNGQ3YzNjMjlmOTc1Yzk0MDQwMzgyN2FlMjM4Yzg0MDcyYTQ5ZiBsZWdhY3ktdHJ1bmsKKzE4ODgwIDIxZTdhMThkZWJlNjgxYjU0NTNmYmRiMDY2NjU3MWUwZTI0Yzc2ZTYgbGVnYWN5LXRydW5rCisxODg4MSA0NmY3NzJjNmEyMDAzY2U5MjEyZDdiZDY1MzJiM2EyOWQxODkyMmZkIGxlZ2FjeS10cnVuaworMTg4ODIgN2MxM2JjN2M0ODVmYTdlMWE0NmY3ZTMwYzY5N2VjNzE2NTQwMzY4MiBsZWdhY3ktdHJ1bmsKKzE4ODgzIGNmYWMyMjQ1YTJjNzJlMTFmMDA5YTM0MzE3NmVhMzgxYmFjNjk3Y2QgbGVnYWN5LXRydW5rCisxODg4NCBkN2Y1M2YxMmRiZWUxZmY5MWY3ZGY3NmFjY2NmM2ZlOTZmNmE4Y2FmIGxlZ2FjeS10cnVuaworMTg4ODUgY2UwZTQxY2U3ODdmZmY5M2Q1MGU2NTM1ZTBlZjRiYjEwYTkxODc5YyBsZWdhY3ktdHJ1bmsKKzE4ODg2IDBmODEyNzM2NmEzZjdiZTI3MTc0NWU1MDcyNGZkNmViYTlkZDE1ODEgbGVnYWN5LXRydW5rCisxODg4NyA1ZGMxNzczYzdmN2M5N2UwN2U4MjgzZjdkOTUyM2YyYzY2MmVlNmM4IGxlZ2FjeS10cnVuaworMTg4ODggODY1MjY2MDExZGZhOTJhMmIxYTAwYzFlYTk2MzQzNjU0ZTJmMjVhZSBsZWdhY3ktdHJ1bmsKKzE4ODg5IDU5ODhmNzY0ODBkNmQ5ZmE4NzQwYWFmMWQxMGRmNmI5YTY5NDAzNjggbGVnYWN5LXRydW5rCisxODg5MCA4M2QzM2Y3ZTlmZDQ1NzQ3ODhlYjc2YTk3NzhmZjU5YmQxYzhkYTAyIGxlZ2FjeS10cnVuaworMTg4OTEgNTVkODlhOGZlOTYzZmViMTdiMTFjMzVlMzkwMTA5ZGYwM2U5ZWExNyBsZWdhY3ktdHJ1bmsKKzE4ODkyIDhiYTg5MDlmYjgyMzA0ZWNjOTdlOTZjZDdkMmZkMjdiOTE3ODBhOWQgbGVnYWN5LXRydW5rCisxODg5MyAxYmY1ZDhiNGNlYmU4OGVkMDkyZjE0OTc5ZGRlMmEzOTUyNDM2MGEwIGxlZ2FjeS10cnVuaworMTg4OTQgNWJhNDU5MTZhZmM3ZjA3NWIyZThhMzFhYmQwYzUzMmNmYzdkOGQ0NiBsZWdhY3ktdHJ1bmsKKzE4ODk1IDc2MTU1MTEyMTg3ZTBhZGRiMTVmMzVmZjAxYTc5MTI5YjI3NTEwYWQgbGVnYWN5LXRydW5rCisxODg5NiAxOWVlZTJkYjJiMTZjYjU4NDk5NDNjYjJlMTZkM2Q4MWYyNzk2Nzg3IGxlZ2FjeS10cnVuaworMTg4OTcgMTE0NGFmYjk0MDE5Y2RhMDlmYTkyNWI1NGM5OTkyNzJhOTJmN2U2NSBsZWdhY3ktdHJ1bmsKKzE4ODk4IDczYzQxYjQ5YTliODBlZmVkNDhjZDFlMmQ4ODRlOTFjZTYwZTMzOWMgbGVnYWN5LXRydW5rCisxODg5OSBiYTI5NWUyYzczZWE2MDhiZGUxZDhlNTdkMmM5ZDUwZGRhMjhkNWU5IGxlZ2FjeS10cnVuaworMTg5MDAgYjY4NjNiYTg4OTg5NjJkNTljOWQ4NmJjNmU5YWRmMjdlYjlhYzRiMSBsZWdhY3ktdHJ1bmsKKzE4OTAxIDRhNjY1OGUxOGYzNmYxMDBjNjk0YzFlN2RlN2ZhNjg4OTllZWMyMjYgbGVnYWN5LXRydW5rCisxODkwMiA2M2EwYTZkMThhNjA0MjU2ODQ4YjU1OGRiYTVjNTM0Y2EzMGMzNDRhIGxlZ2FjeS10cnVuaworMTg5MDMgMzBlMzFjMmFiNjBmYTU5YmI4MzBiMGRkN2Y0ODc3MjIyYmQ3Nzg2ZiBsZWdhY3ktdHJ1bmsKKzE4OTA0IDc4YmQ5N2Q4NDEzY2NmN2JmN2I0NDNmMTVlNjBkNDMzMzM5ODI1MTIgbGVnYWN5LXRydW5rCisxODkwNSA4YmFjMDY1OTM5M2ViZGZmZGU0NzY2Yjg1Mzc4ZTNhZjQ1M2JmNzE4IGxlZ2FjeS10cnVuaworMTg5MDYgMzVkZmY0NzEyYzhlNjI1YTZkZDE2NDkzNDRmNzA5ZTI2ZWU4NGEyZiBsZWdhY3ktdHJ1bmsKKzE4OTA3IDNhNTZmNjUwOTlhYTc4ZGRjODQyZWIwZDIzZmQ3ZDkzMGM1MGQ5YjIgbGVnYWN5LXRydW5rCisxODkwOCA3OTM3YmNiYmRkMjRhMDhkOGZhNjQ3ZWIyNDYzMzBkZmVlMjIwYjJlIGxlZ2FjeS10cnVuaworMTg5MDkgZTUwY2ZhNTQ3NWYzNDIwN2NlMTkxZjcxYTdkZWExZDA2NWY1MzZjMCBsZWdhY3ktdHJ1bmsKKzE4OTEwIDcwYmIxMTE5MDQ0YWNlZWViMzA3ZDU5ZTViZTEyMTczZTM5Yzk0Y2IgbGVnYWN5LXRydW5rCisxODkxMSBiYjgwNWNjZWI0MDMwMGE4NDAzZTU3MzJiMzczM2FkMmI4NGViMjFkIGxlZ2FjeS10cnVuaworMTg5MTIgZTYyZDVhZmYwYzNhZjFkMjQ0NjUzOGQ4ZTkxOWViNmI1NTY3NDI0MiBsZWdhY3ktdHJ1bmsKKzE4OTEzIDQ3OThkYzczOWMxOWEzOWY2NDExYmM5ZmM3ZTFjZTZiODAwZDJiZjYgbGVnYWN5LXRydW5rCisxODkxNCA3NWEyMWMyMzBhMjY4MTlmMWU3Nzc4YWQ4ZTNmMTI5ODlmN2VjODA4IGxlZ2FjeS10cnVuaworMTg5MTUgYWNhMDVkNzVkMjMyZjEwMGQ5NjgwMmEyYWQxYjJkYTRkOWI3ZjdlYyBsZWdhY3ktdHJ1bmsKKzE4OTE2IDRjYzlhMWViZWE2MjhlZDE4NDZkMjQ3OTk4OTBiMTM4YmRiNmU4MjggbGVnYWN5LXRydW5rCisxODkxNyA2NGZhYjAwNDdhMTQyOTJhNzIwYTk2ZmE3NWU0NGNlYTgzMjE1N2RjIGxlZ2FjeS10cnVuaworMTg5MTggODgzYzdmNjE1Nzg5MDk5YzY0ZTU3YmZjMTUwNTJkNDQ1MDExZjk1NiBsZWdhY3ktdHJ1bmsKKzE4OTE5IGUzMjU5ZTRiZWM2MDYzOTJkNzQwMzQ2MDM2YmRlYTFhMDhkNDkzZGYgbGVnYWN5LXRydW5rCisxODkyMCA0YzQwZTlkNzRjNWFhNWQyMDQ1YjgwOTUyNzI2YTNhYTdhOTRkMjJmIGxlZ2FjeS10cnVuaworMTg5MjEgNTY0YmMyNDJmZjBmMDgzZWIyYjZiYzcwNTA2N2VmMzVhMDc4NDgzZCBsZWdhY3ktdHJ1bmsKKzE4OTIyIDU5NmVkZjgxMjlhMDc4MGQ1Njg2YjQzNDBiZTVjYjg5MWEwZTY2NjkgbGVnYWN5LXRydW5rCisxODkyMyA2YjY0N2E1ZDViN2UzOTFlZTkyYjE3Y2YwM2ViMzExYTliZDRmYjk5IGxlZ2FjeS10cnVuaworMTg5MjQgYWZjNmYxMTM3ZWE0N2M5MjQyNzA2NDdkYjY4MjQyMzg1NjU2YWU5NCBsZWdhY3ktdHJ1bmsKKzE4OTI1IDgxMjg1ZjU0NWQ1NDY5NjhhYTFlMzNjOTIwNzlkMmU1ZGUyMjYyMGMgbGVnYWN5LXRydW5rCisxODkyNiBhOTdhYTkyMzg3NzExM2MxNjU2MWQ1ODY3MjA0YjJjNDE1ZWY1MDZjIGxlZ2FjeS10cnVuaworMTg5MjcgYzI5ZGEyYzE0NDE3ZDhlMDY5ZWUzZTU1Nzc1NmNhZTA3NjBhYThmZCBsZWdhY3ktdHJ1bmsKKzE4OTI4IGQ5YjY5ZDc4MGExNjBiMDUyYzViYWM4YjNhZDNkZTRkMzJlNzliZmUgbGVnYWN5LXRydW5rCisxODkyOSBmZTM2YWI0YjNlOTczMjU0M2FkMjZmY2YxODE5ZmY0MjU1YjA1YTVlIGxlZ2FjeS10cnVuaworMTg5MzAgNGRiNjY0Mzg5NDE1MjAyZGI5YTkxYWUxYmRiZjZkZDcwMDNkOTVhMCBsZWdhY3ktdHJ1bmsKKzE4OTMxIDY4YTgwM2I0ZDYxODJhYjRjNzJhNWUwYTJmZDEwYzU2NTE3NTYyYjEgbGVnYWN5LXRydW5rCisxODkzMiBiNTM0NWU5OTU5NmJlYTk4NDRiNzA1N2UyNTEwZDEzNTU4M2YzYmE4IGxlZ2FjeS10cnVuaworMTg5MzMgYWY3ZDc5MTRmYmY5OWJjYjI0M2NhYzE3ZGYyMWJjMmQ5MjMzOWFjYSBsZWdhY3ktdHJ1bmsKKzE4OTM0IGJhZTg4OWY0NGNkMWZkZGQyMjUxODZkZTkyYmI5ZjExZWE5NGU3NjQgbGVnYWN5LXRydW5rCisxODkzNSA3MTNlZDZjNmJjYjUzNGZkM2YwZTU0MDhhM2ZkODE4Y2MzMjczMzVkIGxlZ2FjeS10cnVuaworMTg5MzYgN2U1NWZhOTNmNGRiYzI4NzkwZTRhYzAzMGQ2NjljNGI0ZmJhMDM3ZiBsZWdhY3ktdHJ1bmsKKzE4OTM3IDUwYmJlODExYjM0NGM5MDY1MjVmYzRhZmQwYzEwOTI2YWE5NTc4ZDggbGVnYWN5LXRydW5rCisxODkzOCBlYWJkMDA4YjM2ZWU3ZmVjYTdlMmJlODY0ODZmZGYzYTllYzE2MTc2IGxlZ2FjeS10cnVuaworMTg5MzkgMmQzZTYwMTc5ZDdhZmVhZDcxNjBlNGNjMDM3MGJlNjVkOThiMzg0YiBsZWdhY3ktdHJ1bmsKKzE4OTQwIDkxYTYzZGY3ZWVlNDE4ZDE4NzE2Yjg1MWQ1Y2M1MTk4YjE0NDY5ZTUgbGVnYWN5LXRydW5rCisxODk0MSBjNDM1NTkwNWIwNDRkZTEwZDUyOThjODk1YjhmYzRlNjRjYjc3MWNiIGxlZ2FjeS10cnVuaworMTg5NDIgOTNmODM2NDMyYzJiZDJhMDI4ZDEyM2E1OWQ1NjhhMzM5OWFkMzVjMCBsZWdhY3ktdHJ1bmsKKzE4OTQzIDFiNmU0NTdkMDNhYjZjYjVlMzI4M2VmMjY0YTgwODc5NTA5ZjM3MjEgbGVnYWN5LXRydW5rCisxODk0NCBlMmIyYjA0M2FiNGVmOTc1NTExN2JhZDUyOTZjYzBhOGY2ZmY1OWFlIGxlZ2FjeS10cnVuaworMTg5NDUgYWJmYjExZjhlMDUxYTAxM2MzODIyYmI5YzQ1ZjRmMzZlNWMyZDJiMiBsZWdhY3ktdHJ1bmsKKzE4OTQ2IDRjMzA3YTEyZGNiOTc2YTQ3MTY2NmE2NTMxNThlNzc4MGZlMmNkNDggbGVnYWN5LXRydW5rCisxODk0NyBkNTZiNDkyNjUzMTBmZWE0ZGE2NTUxMDcyNDBiYzA3OTU3OGNkYzcyIGxlZ2FjeS10cnVuaworMTg5NDggNDgxYzNkNTBhNGU1NTU3YzViNWM3MTVjZWE0OGY2ODU1ZTI3ZTgyMiBsZWdhY3ktdHJ1bmsKKzE4OTQ5IDI2MzAzNWJlYTNhZjIxMGUyNDQ4OTg5Yzc0MjMwNDRiMGYyOTk0OWEgbGVnYWN5LXRydW5rCisxODk1MCBkYmE4MzgwOWE3NzUwNzcxMzAyMzQxN2UyNGExZmU1NmMxMzkzZTI2IGxlZ2FjeS10cnVuaworMTg5NTEgNmUxNDNhZjg0OTI3YTg2YTE1OGI1ZDMxNDUxNDBmMjkwOGRlZmFlMyBsZWdhY3ktdHJ1bmsKKzE4OTUyIDhhYzQwZDQ4YTU4MTRiZjk3MWJhZmUwMTExMDAzMzAzYmY1ZjQzM2QgbGVnYWN5LXRydW5rCisxODk1MyA0NWMwNjU2NjhlYTVjOGY5OWMxMjgxYjc2ZGZhNGVjN2M1NTg4MTQ3IGxlZ2FjeS10cnVuaworMTg5NTQgZjNmNmI3NTk4YmM1YTA1MjM2MjQ2N2Y5MTNjMjNhMTQ2ZmI4Y2I2NyBsZWdhY3ktdHJ1bmsKKzE4OTU1IDBjMWFjYzE1NDU1ZjBiNGIwZTI5M2NlMTBkZWU4MDM5ZTdjYWM4NjcgbGVnYWN5LXRydW5rCisxODk1NiBjYTQ2ZDM0NTQyNjllNjlkN2FhYTVhOTMwZWQ1YTFhNmM1ZjZlYzQyIGxlZ2FjeS10cnVuaworMTg5NTcgYWIwMmYxNzQxYTI4YzdjYzE3MDdjZGUxNjA3YWUwODY5MjI0MGM4NiBsZWdhY3ktdHJ1bmsKKzE4OTU4IGZiNjcxMjJlNWMxZWRiYWU3YjUxMWY3MzZmMDk2MjYyYjNjZDliMGYgbGVnYWN5LXRydW5rCisxODk1OSBlMzUzNmFhN2FlNGFjNGE0YTFhNWUxYTM2Y2M2MGU4MGFkYWVjNmRlIGxlZ2FjeS10cnVuaworMTg5NjAgZmI3NjdhNDQ5NjFlNzE5MjU5NzlhM2EzZmIyODk2OWVmOWYzOTMxYyBsZWdhY3ktdHJ1bmsKKzE4OTYxIDk2N2FiYmVjYzQwNDFhMjJlMTEzMjY0MjNkOTFkYzE2NzhmNGU3YWEgbGVnYWN5LXRydW5rCisxODk2MiBhZTI5NjIyOWY0MjY5NTdlNjhiNWQ0NGM5ODQxOTE0YzBiMDhiY2U2IGxlZ2FjeS10cnVuaworMTg5NjMgM2ZjZDdmNDY1ZjM0OWZjYjhmNjMyNWJmMGFkYTgwZTFmZjA5YzNiZCBsZWdhY3ktdHJ1bmsKKzE4OTY0IDdjYjk0MGMxNTY0NTFlZTNlNTBlMjY1YTZlZTFlMjBhOTA3NWM3YjMgbGVnYWN5LXRydW5rCisxODk2NSBlMDQxOGIxZjVjYjdjYjE3MGQyMjU5ZjdmYTU4MDdlNzNjNDQ3MWQ3IGxlZ2FjeS10cnVuaworMTg5NjYgYmFlOWFiYWRlZTIyYTQ4ODM4MDdkYjZhMWY2ZGNhODIzYjRhMjU0ZCBsZWdhY3ktdHJ1bmsKKzE4OTY3IGQ2OTU3MWJmNzg0MjY3YmRlZDc0NGY4N2U0Yjg2ZWMwMzJmNTJiZWIgbGVnYWN5LXRydW5rCisxODk2OCAyOGM0MTRkY2IzZTE4ZTU0M2YwMDA5MTY0ODJkYTk0NjdiMDE1NWU1IGxlZ2FjeS10cnVuaworMTg5NjkgZGMxYzU3NzE0YjNkZDRmMjQzZjYwY2ZmZDE0NTJhNzBhZjUzYjI0YyBsZWdhY3ktdHJ1bmsKKzE4OTcwIDI4ZDhjY2JlMjM3ZjY4M2QyMTUxOTY4MWEzZDUwMWNkMjkyYWJlODcgbGVnYWN5LXRydW5rCisxODk3MSA0ZDQ1MWM5MmJjNTBiMmQ2NDQ1YTlmNjE4ZWNjMWFkMGJiOTY1YzkxIGxlZ2FjeS10cnVuaworMTg5NzIgMTQwZDQ1YWEwOWRjMDlkNjAxZTc5NGNjNjI5NTAxNTg5ZjBjNWY4YyBsZWdhY3ktdHJ1bmsKKzE4OTczIGUwODI0YjM1NDRmYmVlODFiMjYzNzcxZGNmYmJjZTQwNTllYjIxNGEgbGVnYWN5LXRydW5rCisxODk3NCBhMDU5ZDEzNjA1YTBlMTc5OWEyYzQwOTAyN2FkNzlmODEyYTFhODMxIGxlZ2FjeS10cnVuaworMTg5NzUgNzA2NjZiMjdjMWIxYWNkZDcxMmYzZmFhZTcxYTVkYjA4YzdlYTU1OCBsZWdhY3ktdHJ1bmsKKzE4OTc2IDQ0ZmQxYTdjYjI3OTM5YWYxZGVhNGY0ODQ3YjE4NzBlZjkyZmUzYjAgbGVnYWN5LXRydW5rCisxODk3NyAzZTEzNTI0ZWQ4NmNjMGVjMzRmYTUxOWQ3YzQwNmI5YTY5ZjkzNDM4IGxlZ2FjeS10cnVuaworMTg5NzggNjBmYWM2MmY2YzE1ZWEwNjAwODZjZTRhZWIzNzU4YjMyYTBkY2U1ZiBsZWdhY3ktdHJ1bmsKKzE4OTc5IDhlMDEyYWU5YTA0MjMyN2E3ZDUxZjk5YTgwZWU1ZGEwNTNhMGE2MWQgbGVnYWN5LXRydW5rCisxODk4MCA2NDU0NWM5ODZiOThiMjZmMGQ0MjI4ZTA4MzI2MTZlNmQ2Zjc4OTg2IGxlZ2FjeS10cnVuaworMTg5ODEgOTJiMjE0YmI0Mjg4NDg1ODQxNmQ1ZDkwZGRjY2Y2MzhmNTE0ZWNiNSBsZWdhY3ktdHJ1bmsKKzE4OTgyIGUwNTIzYTQyYzc4Y2FlOTJlYWFlODY3MDE1MzUxMDhiNTVhMDg3Y2QgbGVnYWN5LXRydW5rCisxODk4MyBmNmQ4YTEzOTI5ZDcyNzA1MjQ0NTE2MzJmZjc2OWI2MDY3OWNjNGI5IGxlZ2FjeS10cnVuaworMTg5ODQgMjM5YzczNzJjM2QzN2Y4Y2U0YjY0OTFiNGM5NjU5MTJhNWQyZTY2MyBsZWdhY3ktdHJ1bmsKKzE4OTg1IGY5OTdkZWQ0ZTIxOWYzMGFkYjBiODk0NGJhNmIzMGE1MmY3NGQyYTQgbGVnYWN5LXRydW5rCisxODk4NiA0NTQwZTQxOGI4M2FiNGYxMDg1MTYzYWUxYzAxNjM5Yjg5NGRmZGVjIGxlZ2FjeS10cnVuaworMTg5ODcgNTQ4ZTdhNTQyOTE4NWZmMGFlZGRhZGNmYmYzZDU3NDAyYzNkYWRlMCBsZWdhY3ktdHJ1bmsKKzE4OTg4IGZiZjA3ZTFmM2NhMDcxZDkyNzBlNzEyYjQzMmY3ZDJlMDIxZTc4Y2UgbGVnYWN5LXRydW5rCisxODk4OSA2ZjFmZDg1MDAzOThjYTkxZDlmZDk2ZDVhOTk5ODZiMDMxMzRlOWMxIGxlZ2FjeS10cnVuaworMTg5OTAgZDA4NjQ5MDJjOGM3ZDg5OTRmZWY0ZTk1MTAxZDA0M2EyZDQyMzk5YiBsZWdhY3ktdHJ1bmsKKzE4OTkxIDU2MzY4ZDM1MDhkZTU2MDI0NDQ5MGY4ODU1ODE1NzAzZGUyMjI1OGQgbGVnYWN5LXRydW5rCisxODk5MiBhOWUzYTUyODE1ZTJiYjNlMGViZTdiZjVjYTE4NmE1Njk1MjVmZDg4IGxlZ2FjeS10cnVuaworMTg5OTMgYWEwM2MyMGU4OWI3YWVmOTJkODViM2I2MWZkNmNjZjRkZDFiZWI5ZiBsZWdhY3ktdHJ1bmsKKzE4OTk0IDhmNjU1MmM3MDMwZDA1NGZhMGVhYzhkZGIyNDU2YTk1ZDUxODYyZTEgbGVnYWN5LXRydW5rCisxODk5NSBkNDgwMThiMzNlMzU3ZjQ5ZmRhYmEwMDYxYjljM2IyNzQzNWI0NGVlIGxlZ2FjeS10cnVuaworMTg5OTYgYTA2YjczYWQzNzFlYTc3NjBmNWM0MzNjMzcyZWUzNDk1NDVjMjQwZCBsZWdhY3ktdHJ1bmsKKzE4OTk3IDUxM2U1OWIzYjlhOTBiNDI1MGY2ZmYyOGNmNGYzYWU2Nzk3MjQzM2UgbGVnYWN5LXRydW5rCisxODk5OCBmYTllZjBlMmRjMDdkYWRlM2U3NWEyZTczYTNmMGQwMDAzMDcyZmY4IGxlZ2FjeS10cnVuaworMTg5OTkgODgzY2IwZTMxYmIyYjNmNTNhMmRhODI1OTc1NWYzMjY4MGJkYzFiYiBsZWdhY3ktdHJ1bmsKKzE5MDAwIDQ5YjdjMWJjNjAwNDI5M2JlMjJlNGEwYTBjYjI4Nzk4OTdmZjRiYTMgbGVnYWN5LXRydW5rCisxOTAwMSBkOTZjZTk3MDhjMDA3YzdkZDI4ZjBmZWQ5NWZjNDMyM2Y0MzI2MWM3IGxlZ2FjeS10cnVuaworMTkwMDIgMzhkY2VjMDY2MTdiZGZhMWY1MmI4YWIwMjhhYmFmNzQwNWJkZTE1OSBsZWdhY3ktdHJ1bmsKKzE5MDAzIDA1OGJkMWJmZjAwODBlNTliMDJjNTFhNTBlMDcxZTk3Y2E3NmQ1OGUgbGVnYWN5LXRydW5rCisxOTAwNCA0OWY5NGEyYjFkZDQwY2Y5MTQ4ODQwMzkxZGRkYWFjMTEwY2U0MDc0IGxlZ2FjeS10cnVuaworMTkwMDUgNmFhOTcyZGY4MGQ1NzYyY2YyNDdhMDAyM2RmYzM4M2U2MWM1ZjIwMyBsZWdhY3ktdHJ1bmsKKzE5MDA2IGQxMmJkZTRiMmFlOTJjZDFlZmRkOWM3MTMzOGMwZGYxOGY4Y2I5ZWYgbGVnYWN5LXRydW5rCisxOTAwNyAyNmU4MzFiYjBkNmVjNjg4YzUwYTlkNDRkMjQxN2EwYWI1Njk0NmE2IGxlZ2FjeS10cnVuaworMTkwMDggY2Q5ZGRkZDg5N2E5NTUzZTJmODZiMjJlOTA1ZDM3YjMyYjNlYzliNyBsZWdhY3ktdHJ1bmsKKzE5MDA5IGZiZjhhYmVjOTNkMTlmYzAzNDdhZTdjZGEwM2UyZDFhMjFhMDI1Y2UgbGVnYWN5LXRydW5rCisxOTAwOSBiNjA4MzFlZWFiNWEwNmRkM2M1ZTgyOTdhOTllMzkyOTdhYTg3OTRiIGxlZ2FjeS10cnVuaworMTkwMTEgN2Q3NjVjMWQ0OWUyZjMxNTdhNmYxODljYzU3ODRkMzY1NTk4NWQ5MCBsZWdhY3ktdHJ1bmsKKzE5MDEyIGNhMDU1NjA2YjNhMTFjMTc1YjM0ZjllNmY4MzM4OGY2ODE4ODM5OTAgbGVnYWN5LXRydW5rCisxOTAxMyA0OTUxZjVjNDgxMDViYmRkZjcyODM0ZWVlMGM3YmVjNzNhYWEyZTZkIGxlZ2FjeS10cnVuaworMTkwMTQgODVlMzVlNjhlM2RiMDU3ODk2ZTQ2ZGQwYjJlZTViZmUyODhlNWVhYSBsZWdhY3ktdHJ1bmsKKzE5MDE1IGRmN2JmYjM0YjJhMmU4ZGQ2ODhmMTMxYzExMGMwYjU4NjNjNDBlM2QgbGVnYWN5LXRydW5rCisxOTAxNiAzZWU1NTg2MzQxNjRkYWY0OTlmNzc2NTcwMzVhZDg0ZDRlNjFmZjgyIGxlZ2FjeS10cnVuaworMTkwMTcgYjJjODc5NWEzNDQ4OWViMjJmNjY4Y2RhNmVmNjgzNzdmOTNjYTQzYiBsZWdhY3ktdHJ1bmsKKzE5MDE4IDgzYzFmMTQ2ODJhMjU2MWFkN2M0ZjVlNzJiN2RmYjZjNmQ1NTdiMGYgbGVnYWN5LXRydW5rCisxOTAxOSA2MmJmNzM5OThjZGIyMWI0OTRjMzZlMTI4OWVkZDYwZmQ5NDg1NDFjIGxlZ2FjeS10cnVuaworMTkwMjAgNjM5NmNjNmIxZjdhMTI3ZWQyMTdhOTEzM2JmODQ0YmE5NWVjZDJkMyBsZWdhY3ktdHJ1bmsKKzE5MDIxIDY4MGQ2YTUwYzJlODQ0ZjExODhhOGNmYWM2MWNlZDE3YmM1ZmY4ZGEgbGVnYWN5LXRydW5rCisxOTAyMiA0NjkyMGI2MGNkMzM0M2YyNjMzNTU0OTQ0YTc3ODhkNDBmYjEzYzVjIGxlZ2FjeS10cnVuaworMTkwMjMgYzBkZTcxMGYzMWMwM2Y4MDE5NDU1ZTFkY2EzNDMyODM4ZGM3OTEwYyBsZWdhY3ktdHJ1bmsKKzE5MDI0IGZkMjc4MDMxZjQ0OWNiODUxNzQ0ZmRiYzQ0NzU2NTA3NTJkMDJlNmMgbGVnYWN5LXRydW5rCisxOTAyNSA1ZjQwZmRiZGQwMmM0MThkMWFlM2UxYzJiZDhhZTI0ZDBhYTBkN2UyIGxlZ2FjeS10cnVuaworMTkwMjYgMjIwOGEwM2QwNWEzYWRkMWYzMmM1OTYwYTEwMzJkNzA2MzA4OTFiNiBsZWdhY3ktdHJ1bmsKKzE5MDI3IDBhNzIwNzBlYWI2ZWJhNjMwYzQ4OGRjNzQ2ZjM4NTljMzE0MGIyODIgbGVnYWN5LXRydW5rCisxOTAyOCAxMDY0NmQwOTJhNTJmYjJkMzYzM2ZmZTJkZDBiMTgyZjViNDY3OWMzIGxlZ2FjeS10cnVuaworMTkwMjkgNzFjZWFiYTNmNjE1MWI0NGY5ZTdjYjgwOGIwNDY2N2NmMmQzNjIxMyBsZWdhY3ktdHJ1bmsKKzE5MDMwIGEwZTUyMDM4Y2M0ZTFjODEzYzY0ZTg0Mjc0N2MzMGM2YjFiNjFjZTYgbGVnYWN5LXRydW5rCisxOTAzMSA3OGNkZGJhNDU4MDUzMmZhYTc3YmI1NTZhMzUzMjVjN2Y0NWRmOWVhIGxlZ2FjeS10cnVuaworMTkwMzIgMmM3ZGY0NTQ5NmE2Mjc2ZTQ2MzliZDI0MjE3MjAzYTIyYzIxNGYyNSBsZWdhY3ktdHJ1bmsKKzE5MDMzIDdhZTZhMDlkNGQwMmRlZGQ1ZWM5ZjYxNTg5MzBkNmI1M2NhMDc4ODAgbGVnYWN5LXRydW5rCisxOTAzNCA3MjViMWJhZjNkYWI5MWMyYjQzMWU1M2I5ZDU5N2RlMDNkZTkxMjFlIGxlZ2FjeS10cnVuaworMTkwMzUgZjc1Yjg2NDg5OWZiMTUzMTVkODEwOGU4NGY4NjM2N2FiZDY1OWQ1MCBsZWdhY3ktdHJ1bmsKKzE5MDM2IDMwYzRjNGU5ZTNkNTY3N2Y0NDgwMjlkNjUxYjkyNGZiOWNlMDlhYjEgbGVnYWN5LXRydW5rCisxOTAzNyA0Mzg0MjhkMWJmMjcwZTY5NzBmMmI0YWU1NjFlNDhlNjlkYjRjNTZkIGxlZ2FjeS10cnVuaworMTkwMzggMmRjYmMxZGZjYTljNTRkZTYzMDcxODY0NmQ3Y2UzNzY4ZTlhNmI1ZCBsZWdhY3ktdHJ1bmsKKzE5MDM5IDI3NzQ5ODE4MzAzMDc0OGEwZDYxOTUyZmRmOTQ2ZjE1NTQ3ZjVjOTYgbGVnYWN5LXRydW5rCisxOTA0MCBkMGU4ZTE5NTljMGJlNDJmMTIwYjlkMzg4NDEwMzNkOWRiZmQzZjY0IGxlZ2FjeS10cnVuaworMTkwNDEgM2EwZWI0NWIyYjVlMDI2ZGZkMzUxNzUzNjQ0NTM0NTU5NjM2NGE2NyBsZWdhY3ktdHJ1bmsKKzE5MDQyIDZmOTI5MjBjMTE1MDA5ZGY0NWEwMjM4ODJmNjMxYjdmNDAyMTgxOTcgbGVnYWN5LXRydW5rCisxOTA0MyBhNTRjMjgyYmZiNjNkYTJiN2E3OGU1ZTZjOWZiNGYxZmFjNTMyNDA0IGxlZ2FjeS10cnVuaworMTkwNDQgYjg4MmY0Yzg1NjY2OGFmMzMyNzQ4NzQyNThlNGZjNDk0Mjc4MzRhMyBsZWdhY3ktdHJ1bmsKKzE5MDQ1IGExMzBkNWY3ZTU4YWViMjE5NjRkY2U2NGE0N2Q5YzRkZWEyZmIxYzAgbGVnYWN5LXRydW5rCisxOTA0NiBlMjZmOGQ2Y2YyODhlZjM2ZTJiYjQ3NGVlY2EyZmZmZWYzNjViZDMzIGxlZ2FjeS10cnVuaworMTkwNDcgMTE1ZmRjNjFhZTkxNGI4MmE5YzhmYjEzNDM4ZDA4MTJmMjdkMTYyNCBsZWdhY3ktdHJ1bmsKKzE5MDQ4IDAxZThhNmQ4ZGE4YmI2NWVmZWY1MTUxNTk5MTExMTdlZDVkMDkyYzkgbGVnYWN5LXRydW5rCisxOTA0OSBkNzIxOGFjOTljMDlhYjJjZWU2ZGE3NGViMDE3YmJlYTJkZmNiZjVhIGxlZ2FjeS10cnVuaworMTkwNTAgNDk5ZTIyOWU2Y2VkYTg5MmVmNTcyMDM1ZWE1OWNkNjZhNGRhMWZiYyBsZWdhY3ktdHJ1bmsKKzE5MDUxIDk5MWExN2Q2MTAzNjI3NjljYTQyNWJjYjQ3ZmViYjY1ZTRmMjkwYTAgbGVnYWN5LXRydW5rCisxOTA1MiBjMTJkODYyM2IyOTQ5MGUxMjBiOTAwZGNhZTUzNDk0OTE1NjhlZDc4IGxlZ2FjeS10cnVuaworMTkwNTMgYzAyYWU3YWUwMTFkNjI4MmFiMjE5M2NhMzhkZTdkZjkzYTlhOWZlMiBsZWdhY3ktdHJ1bmsKKzE5MDU0IDRmZTY5YTlmOGIzMDc2YjllZjE3MWY5NGYxOWYyMzA1YjUzNTBiYjYgbGVnYWN5LXRydW5rCisxOTA1NSAxZmY0Zjg5MDFkOTYwNjA5NTVkMjdiNjllMWY1N2QxNzc4ZTIyMzcwIGxlZ2FjeS10cnVuaworMTkwNTYgZjRhYzA2MGE4NDFiMzk5YzA3MTZkNzZlN2Y0N2Q4ZDkwNjYzYTYzMiBsZWdhY3ktdHJ1bmsKKzE5MDU3IDFhYTgzNDlmNjY5NTU4MDZiMDA1ZDA0N2JhZWVjMDY0NTA4OTI3MGEgbGVnYWN5LXRydW5rCisxOTA1OCA1NzEyNjIwMjk4ODgyYWMwNjk3MWYwOWRjY2Y5YmQxOTBiNTkwZDY1IGxlZ2FjeS10cnVuaworMTkwNTkgMWJiNzY1MTY4M2U3NDEyODRhMTQyYzU3M2Y1ODFjODg1ZWNmYjk3ZiBsZWdhY3ktdHJ1bmsKKzE5MDYwIDMyNzU1YjQ1NjM2OWQ4MjI2OWI0NzNhMWExZjQyODgwZTVkZmI1ZTggbGVnYWN5LXRydW5rCisxOTA2MSAwMWU1ZDNlNTg4MzNhZDllOTkwZGY4N2U0MzJmNmY3YjIwZjY5NjQwIGxlZ2FjeS10cnVuaworMTkwNjIgMzQ4NDY3MGMzN2YyZThkYmYyMDYwMTFjM2Q5OWVmZTRjYmIwY2E5OCBsZWdhY3ktdHJ1bmsKKzE5MDYzIDM4Njc4Y2IwYjNjZGI4ZGQ2MjIwN2VlZTJkYzMzMzgzMGUxM2EzYjggbGVnYWN5LXRydW5rCisxOTA2NCAzOTdhZTUzZjFhNDg5OTA2ZTU2MTUxOTc5ZmUzNjRkNjAwNjNkYzU2IGxlZ2FjeS10cnVuaworMTkwNjUgNzQzZDUyMDc1YmU1ZWZjYmYwNzgxOTJhNmVjOGQyODUzMDMxYTlkMCBsZWdhY3ktdHJ1bmsKKzE5MDY2IDIzYWI1OTkyMTIyZTgxNDA4ZmZlMjM0NTJkNzVhN2Q3NTlkZTFiYjUgbGVnYWN5LXRydW5rCisxOTA2NyBhM2Y1N2VkNzU3ZTUwYTliNTQ5NjQwMmU0ZGQ3MTE3ODZiMjM1N2IwIGxlZ2FjeS10cnVuaworMTkwNjggYTY0NTNjZmI3MzNmMWQ3YWY4MzVmZmZkMmE2ZWEyM2FmNjY3ZjVkYiBsZWdhY3ktdHJ1bmsKKzE5MDY5IDc0M2YxNjMzNjgyNzNiM2I1ZDVmNDAyOTdlNDcxOTQxM2Y0N2Q4MjcgbGVnYWN5LXRydW5rCisxOTA3MCA4ZDRhMjVjODFhOWI5NDMwZmIwMmRhOTBkMGQ1ODgzYjVlZGRjZGE4IGxlZ2FjeS10cnVuaworMTkwNzEgNTVlOGMwMjZlMWUzZmYyMmM1ZTYyNGJlMjUwYWQ5ZjMyN2UzZDM4MyBsZWdhY3ktdHJ1bmsKKzE5MDcyIDFlNDNhMjQ1NmU4ZmU0Y2NlNTFkNTJhNDJiMmZkNDFjN2ZiYWUzMjYgbGVnYWN5LXRydW5rCisxOTA3MyA5OGI2NTQ4NGFkZTZhODRjZTgxMWRhYmI4YjBkMzEzZjVmMWM4NTU3IGxlZ2FjeS10cnVuaworMTkwNzQgMWRmNDBkNzcyNGNjZGU0MDY1N2MzOGM3NDUxOGE5MzY2NDU1MTVlNSBsZWdhY3ktdHJ1bmsKKzE5MDc1IGMwZjYxZDRmNWEwNDg4MTIzNDY5ZmIzY2MzMGM1NTk2ZjdhNzUzODAgbGVnYWN5LXRydW5rCisxOTA3NiA2MzVlOWRjZmVkMmNjNjU4NDg5NWNjYzQyMTcwNGI2ZGMzMzQzNmQ1IGxlZ2FjeS10cnVuaworMTkwNzcgNzI4NjBlZTllYWYwODkwZmQwZTJiNmJhNTkzMDM1MjMxYzBjOWU2ZCBsZWdhY3ktdHJ1bmsKKzE5MDc4IDVhZWExNTgxNTQzYjQ0ODI4NTBhNWIyMWFhMzg1ZDYzODc2ZTA2MTYgbGVnYWN5LXRydW5rCisxOTA3OSAzOTc0OTFhYTIwYTZlYmNhN2M5Mjg5MWI1ZTVkZDcwZjM3ZDg1ODJjIGxlZ2FjeS10cnVuaworMTkwODAgYTRlNTRiZmQzYzI5ZDY1NjkxMWVhYWI4YmNiZGYwOTkyOTA0MGU0ZSBsZWdhY3ktdHJ1bmsKKzE5MDgxIDI1OWY3OWEzNmUyZjM2ZDBiMmRlMWI0YmRhODI1MDY2ZDRmZWIxYmMgbGVnYWN5LXRydW5rCisxOTA4MiAxODVkZmMxNGE5MzQyZmI3NjViZDE1MWI0YWRjNWU5ZThlNjE4ZTEyIGxlZ2FjeS10cnVuaworMTkwODMgNTg4NjkxZjgwNmY0ZDA4MWEzNDQxNjcwMjEzOGMxZmQ4YmYzMGVlMCBsZWdhY3ktdHJ1bmsKKzE5MDg0IGEwZTQ2YzNiZTYzZWYyZGY0ZjQxZDQ1OTcxNzg2MDZhZTQ4YzVlYjYgbGVnYWN5LXRydW5rCisxOTA4NSA1NDUzNDE0ODg3M2U2ZjljMTc5MmNlNmVmZGQyZGMyY2E1NjZhYTgzIGxlZ2FjeS10cnVuaworMTkwODYgZDMyOTJlZTViNmUyNGExNWM1NDVlMGIxYjkxMTJiZTliODJlNzM0OSBsZWdhY3ktdHJ1bmsKKzE5MDg3IGU1NmRkMmRkOTk2MDcyYTc5NDk2ODllNDg3YTM0ZmIxNTA1MTNhYjAgbGVnYWN5LXRydW5rCisxOTA4OCBjN2M0MDRiMzVmMzNhMGQ1NGM4MmY2NzU4OTlmMTkwYzEzZTUwZmQ3IGxlZ2FjeS10cnVuaworMTkwODkgOGM0ZGI4YjlhZjliOTBlNTM2YmZiNTAwZTQ3MGU2MjA2MmUxZjhmMCBsZWdhY3ktdHJ1bmsKKzE5MDkwIGFiYjk0NTA2NjQzNjc1MDgwNDRmOTRmZGViMDJlNGM0MTBhZjMxYmQgbGVnYWN5LXRydW5rCisxOTA5MSBlMzAyNTg2NDUyYTMwODM4MGNiYTQ5ZTYwNjAyZDg4ZTEwN2U3NjY5IGxlZ2FjeS10cnVuaworMTkwOTIgMzlhMTRiYzhhMGY3OTBiODQ4YmVkZmQzYzZkNDg3Yjk5YWNlYTZjZCBsZWdhY3ktdHJ1bmsKKzE5MDkzIDNhMjBkYTI4OTNjNDdmNThiZDZkYTlhYTI2NWRlN2Q0ODc2MmE5YTIgbGVnYWN5LXRydW5rCisxOTA5NCBkZjJlZDU2NjRiZTUxNTIyZTEyZmRmNzg1MzZkN2RhZGMzN2IwM2U2IGxlZ2FjeS10cnVuaworMTkwOTUgOWJmNDM4YzhmNWM3OTM4YTVmNWY1NTE3Y2QzMjk2MDYwYjUwMWEyYiBsZWdhY3ktdHJ1bmsKKzE5MDk2IDQxZWQ0ZDg2ZGI3NzcyNTBjNjJjNDFiYTZlM2QwODcxMmNlZWM1Y2UgbGVnYWN5LXRydW5rCisxOTA5NyA1YzYwMTg0ZjdmNTJhYjFkNTIyMzNlYzllMzk4MzQ5MjBhZmM5NzU3IGxlZ2FjeS10cnVuaworMTkwOTggZTVkNTlhOWRiZmMwMjhjZGVmMGVkMjY3YTIzOWFjMmMwMzUyN2I0ZiBsZWdhY3ktdHJ1bmsKKzE5MDk5IDNmZTc1OTI0ZWFjMTBkY2FhOTczOWE2MzIzNGVlMmI3M2IxOTUzZTMgbGVnYWN5LXRydW5rCisxOTEwMCBiNGQ0ZjIwMjExMTQ0YTljOGUyODAzMWY0OGRmYTJlYTUwYzdkMTEzIGxlZ2FjeS10cnVuaworMTkxMDEgMmZmODI2MzE4ZTg5ZWRmYmQwZDc2ZWE3Y2E1ODI1NGRhMTRjNDM2MSBsZWdhY3ktdHJ1bmsKKzE5MTAyIDdmNjE4YmMxMzk4MTEwOTIyYzU1NTZkNmNiZGUzYjUzZDA5ZDJmYmMgbGVnYWN5LXRydW5rCisxOTEwMyAwNWJlNWY4NWYzYmY2MDhkNmI5ZDkyODU3MWI1YTNkZmQ4ZTlmMTVkIGxlZ2FjeS10cnVuaworMTkxMDQgM2M1ZjA5NDIyYjY5YTlmZDg3MjMwYmU3NGVlOWM1ZjcwMjFjNGJkMyBsZWdhY3ktdHJ1bmsKKzE5MTA1IDlmZDk2ZTI0NTViNjJjNzc1N2YxZTBlMTdkZGU1ZDQ1OTYwYzBmYjUgbGVnYWN5LXRydW5rCisxOTEwNiBmYTIwOWNjODRjYWNlM2VjOGQzYzk4ODM3OWI3ZjE2ODVlNDE3Njg1IGxlZ2FjeS10cnVuaworMTkxMDcgMDk3MzZhZWFiODMxMWZmMjM3ZGJhNWVjMDI0NWE2M2EyMmE3MGE5ZCBsZWdhY3ktdHJ1bmsKKzE5MTA4IGM0MWRkMjIwNGI5YzhlMGIzMDNkMTIyMTgwYzE3Y2Q1ZGEwNTI4ZDggbGVnYWN5LXRydW5rCisxOTEwOSBhNjhjNzAzMmNkZjI5OWYyYjNlZjgxMzhkY2E3ZmE0NTUyM2QyOWY0IGxlZ2FjeS10cnVuaworMTkxMTAgMTQwYzUyODU4ZjY1ZTQwODhhYjE1ZmY1Nzk2YWVkZDk3YTMwM2ZiZSBsZWdhY3ktdHJ1bmsKKzE5MTExIGZhMjcxZDdiMmE2MmJjYWZkZjkzNmY0YzE2Yzk2OWQ4NTIzYjkyNTYgbGVnYWN5LXRydW5rCisxOTExMiBhYWI4NzE2MzVmZmFlNDliODkwOWVmNjYwZWRiMjY0ZjYwMzBhZWQ4IGxlZ2FjeS10cnVuaworMTkxMTMgYmQ4ZDI5OGFmODgwYzJhMWUwMmMxOGVkNzk5ZjIzNDg2YTUwMmUxZiBsZWdhY3ktdHJ1bmsKKzE5MTE0IDNmODllNzI0MDA4NjA1NjgzOTQxM2UzOWYwNGE3YzhiYjVjYzIyMzMgbGVnYWN5LXRydW5rCisxOTExNSA0YjUxZDA2OWJlMzUwZWQ5YTU0MDRmMDI0NzYzOTY5YWNiZjAwMmE2IGxlZ2FjeS10cnVuaworMTkxMTYgYzFjZjVkMmMyNmNhZTcwZTMwYzhjMzVlMjg0NmIxZTFiMDAxMThlNCBsZWdhY3ktdHJ1bmsKKzE5MTE3IGY4MDQ1M2U0NDViNWE0NDE1OGVkOTY4NjJhZDAyYzVhYmViMTBkYWIgbGVnYWN5LXRydW5rCisxOTExOCAwNzA3MTg3MmRlM2UxMTRiMDEyNmMzZTI3YWI3ZTZmN2U5NTA2MjAwIGxlZ2FjeS10cnVuaworMTkxMTkgZmQ4YzcyMDMyNTFmZjM3ZGJiMzk3ZjdkNDIzYWU0MWYxNmEwM2M2OCBsZWdhY3ktdHJ1bmsKKzE5MTIwIGY0OTRjYTBhMmIzNDZmZjY4ZmFhY2NjNjUwOGJlYTI4MDJkYTlhMDggbGVnYWN5LXRydW5rCisxOTEyMSA5Mzg2YjMyYmZmMWRhYjQyNGQwYjU1NGY2OTg2MTliY2I1NDNhOGZhIGxlZ2FjeS10cnVuaworMTkxMjIgMjBlZjg0OWVjODc3YzcyZTU0YjZhNDRiZjU4ZDQ1YWUzYWQ0MzUxYSBsZWdhY3ktdHJ1bmsKKzE5MTIzIGJkZmM2ZjFmYTQ3NWNlNjczMTNkOTNkYzFlMzNhZTJiY2ViYWY1M2QgbGVnYWN5LXRydW5rCisxOTEyNCBhNzA0ZWE1ZWNlYjZiM2QxYWZjMWZhZGNkYzg4NTQ0MWNlZGY3ODRhIGxlZ2FjeS10cnVuaworMTkxMjUgNzYzYTNkNDJiYWVkZjE2N2QyOTI1OTA3NDhhZjNhMDY3MTJkMzJmNiBsZWdhY3ktdHJ1bmsKKzE5MTI2IGUxODg4OWUzOTQ5YzA2OWYxYzM0MWUwZTc3YzJiNjQ2NTNiMWZjYzUgbGVnYWN5LXRydW5rCisxOTEyNyBkNjE0YjZlOWZiNGVkOTRlMWYwMGI3MTA5MGU5NDFjMTM5YzdhY2UyIGxlZ2FjeS10cnVuaworMTkxMjggOTlmMzQ2NzM4NDE1YTA2YjMyZmI3YTRiYjExODkwMTc5Y2QxODkyYiBsZWdhY3ktdHJ1bmsKKzE5MTI5IDYwZWUzMzhmMGQ2NjZmZGVmZTAwMzYwMjE1MzE5NjZmY2M2MWY5MGYgbGVnYWN5LXRydW5rCisxOTEzMCBjMmNlOWIyZTViYjQyM2FhZWVkYjBmMWQ5NTQ5ODhhMTllMTk3YTBiIGxlZ2FjeS10cnVuaworMTkxMzEgNzc5NTgyNjZjN2Q3YWFiZmVjNTM5ZmJiNzFlNDU0MmY2ZDZlMGRlZSBsZWdhY3ktdHJ1bmsKKzE5MTMyIDkwMjU1ZDQ0MWNkNWY2MjFkMDg1YTQ4ZTNiZTE2NzI0ZmVlMzIyOWIgbGVnYWN5LXRydW5rCisxOTEzMyA3ZWYyMzgyZjYxMjNhMDY1ZjkwNzYyMTBkYTdjMTI0NTkzZjllY2YxIGxlZ2FjeS10cnVuaworMTkxMzQgODM1ZTlkZDU0YmZiOGFjNjNmZWFlMzkzZDhlMWY0Y2JmZTFlODg0OSBsZWdhY3ktdHJ1bmsKKzE5MTM1IGM4NWNhOGM2MjEyOWNjODExNGM1M2E3MDQxZjNhY2IxYmE2ZTQ5NzcgbGVnYWN5LXRydW5rCisxOTEzNiAyYWViM2EzNGM3YWNkYjMzZmZhNWY5ODdlNDVmN2IyYmM2YTZhYzM5IGxlZ2FjeS10cnVuaworMTkxMzcgOWNlNTE0OTgyNWY2YWVhYmQwZDdjYjQ2OTBmNjAyZmQ1YjBhODRiZiBsZWdhY3ktdHJ1bmsKKzE5MTM4IGNhODU1NDdmY2I1ZTQyNGY1M2JmNmM0ZDQ0NmVjMGM3OTU5NjYxNzYgbGVnYWN5LXRydW5rCisxOTEzOSAxNmUyMTc3MmNhM2YxNDYyMDJkYWQ3NTk5YWVkMTljNDI1NDliYjAwIGxlZ2FjeS10cnVuaworMTkxNDAgYjQ2Zjk1NmFiY2Y4NTJmNTYwYWU5OTM0MGU0MmZlMWIxZThhYjM3MCBsZWdhY3ktdHJ1bmsKKzE5MTQxIDc4NWNlNjE5Njc5NjE0MjgzNDMwZGY0OTMwZGZmMDYyNGNmZTM3MDQgbGVnYWN5LXRydW5rCisxOTE0MiA4YjgxYTdlNThhMWQxOWM4YmY2Zjk1YWJmNDU4NzgyNzU1ZjdmMzZlIGxlZ2FjeS10cnVuaworMTkxNDMgMmFiY2JlNDQyNzFhYmIwNzYzNDUzNzI4NTljYzUxOGJjMzVmMjMxZSBsZWdhY3ktdHJ1bmsKKzE5MTQ0IGVhNGEyZjNiMjY2ZTAxODY1ZmQ2NGEzMjU4MjY2NGI4Y2ZiNzhiNDkgbGVnYWN5LXRydW5rCisxOTE0NSA2NWM2YTI5OThiMWJkZWQwYzk5NjUzZDYyMjA3MzIyNWZlNzk0MzJkIGxlZ2FjeS10cnVuaworMTkxNDYgYTA1NThlYmY2NjEyNzUzZTAzODhiNmQ3YWUzYzBjMDQ2NTVkYTQ1OCBsZWdhY3ktdHJ1bmsKKzE5MTQ3IDE1ZTBjMTAwOTJiYjRkYjBhZDY3MzI3MmZhMjk3MzEyOGExYzk4NjIgbGVnYWN5LXRydW5rCisxOTE0OCAyMGUzYzBkNWU0NmZkMzQzZTE4ZjExYzYwYzNhZTVmZmRhYTZhMTQ5IGxlZ2FjeS10cnVuaworMTkxNDkgNGI3Mjg4OGM5ZTJmN2VkZDMzNjY5M2Y4NWYyZjY2YTMyY2UzOWNiYiBsZWdhY3ktdHJ1bmsKKzE5MTUwIGMwYTI0NDFhNDQ1NGJkZjMwZGExZDI3ODRkYmMyYTRiMWFlOTNlOGEgbGVnYWN5LXRydW5rCisxOTE1MSA5M2JhMzNkYzMzM2FmMjJjN2FhZGVkYzdiMGIxMWNiMTA2YjgxNWY3IGxlZ2FjeS10cnVuaworMTkxNTIgN2EyNTE0NDBjZTY3ZDY4OTRhYmYyZmJkZThiMzI2YjYyZjYwMmNhMSBsZWdhY3ktdHJ1bmsKKzE5MTUzIDA5NDAzYzVjZGFmYmMwOGE2MGIyNjg1NmYxZDQyODBkZjNiNjZhY2MgbGVnYWN5LXRydW5rCisxOTE1NCAwNTAxYzJhMTAzMTVmYzRmMGQ0YzE0ODUzZWMxMDY0MjYzN2NmMmY2IGxlZ2FjeS10cnVuaworMTkxNTUgMjdhNGExN2FlYzI1MTRjZDg4NjQ2Nzk5NzI5ZTk1NmQxODVmNTNmNyBsZWdhY3ktdHJ1bmsKKzE5MTU2IDI4YzZlYzU4MWFhNjk2ODIyYjk5ZTNjZjI5MmJhYTMxMjUzZDZiNzUgbGVnYWN5LXRydW5rCisxOTE1NyA3YjM0NzZjMTM4MmViY2JmY2E1ZGQ3NzcxNGNkZTA5NWNhZjU2NzIyIGxlZ2FjeS10cnVuaworMTkxNTggYWI5OWJkMzk0NzBjZTM5MWJhYzJmOGNjYzYwNzk5OTk3MTNhMTBkNSBsZWdhY3ktdHJ1bmsKKzE5MTU5IGQwZDhjOWQ1MmYxODQ5OWQwYWFkZWNlYjAxMWE0MDI4MWE0NjZjZGEgbGVnYWN5LXRydW5rCisxOTE2MCAyZGIyOTkzOTU4MGRiYTc4ZDUwNmEzMjFhMDYyYzJhNTI0MDkyZGY0IGxlZ2FjeS10cnVuaworMTkxNjEgZTFlMGU5OTZiMDAzNWRhMjJkOWRiNTZlODRiZjA2MmUwYThlMTdlYSBsZWdhY3ktdHJ1bmsKKzE5MTYyIDI2YzFmZmZkZmZmMmYwOGU3NGM5ZjRjYWJjMDNmMzY0YjcxYzM2YTAgbGVnYWN5LXRydW5rCisxOTE2MyBiZGZiODFkM2M2MTBlYWQ4ZjM5ZGM2YTUzOTY3M2VjNjFhM2I3ODUyIGxlZ2FjeS10cnVuaworMTkxNjQgM2ExZTY1OGU0NDc0NmMwMjE2YzcwYWY2ZmQ1NTI5YTllODc5MjE0OSBsZWdhY3ktdHJ1bmsKKzE5MTY1IGU3ZjQxM2Q0ZWUxNWFiODZkNDY0YTE1YmUzZmM3ZGFkMWQ0MmQ5MDAgbGVnYWN5LXRydW5rCisxOTE2NiBmYzNmNTA1OTQ1ZDRjZDA4MmQ2NTA2Y2FlMzE4NzMyMDYzMTc0YWJlIGxlZ2FjeS10cnVuaworMTkxNjcgZmIwZjU2YmIxNDA1OTk3M2U1NjQ1OTZkODY4OWNkYTg3ZDYyYzMxZCBsZWdhY3ktdHJ1bmsKKzE5MTY4IDhlODczZmE1NDUwZWJmNTZiZTQwNmYxOTZhNThkNGVhODg2NWRhOTcgbGVnYWN5LXRydW5rCisxOTE2OSBmODRmOGQ4MWUzMmNlNzA3MTEyYjM4NjUwOWQ5OTk3M2I0MjYzMTcxIGxlZ2FjeS10cnVuaworMTkxNzAgOGU2NmVhNjAyNjE2ZGE4ZmVlOTE4YWE3MTE5MGQ0ODdjNGE3ODU2OSBsZWdhY3ktdHJ1bmsKKzE5MTcxIDk2NjNkNWViYjY0NmMxMjJjOGMxYjUzOTc3NTQ0NzA3Mzk1ZjU4MjYgbGVnYWN5LXRydW5rCisxOTE3MiA1NGIwYWVmNjUwYzUyOWQwNzZlODc4MDkxZjc3MDY5YTBkNjRlODRiIGxlZ2FjeS10cnVuaworMTkxNzMgOGM0MWYzODYxYWFkZGNjYWYyZDBmMmJhYjE1ZjhlN2Y0OWQ4NzE5MiBsZWdhY3ktdHJ1bmsKKzE5MTc0IGI4MDE4MTQ1ZTJhNWU3OTUyNmI1NjllNzJhMGY3ZDc1NzNlNTcxYjYgbGVnYWN5LXRydW5rCisxOTE3NSA2NjJhZGYwM2U0ZmEyZjY2ZGE2Zjg4MGE4MWMwNzEwMjVjNThhMmVmIGxlZ2FjeS10cnVuaworMTkxNzYgMjRlNDU3YmExZjkyNmM1YjRjNzRjOGMyMjE2NmY4YjA0MzYwNjVlMCBsZWdhY3ktdHJ1bmsKKzE5MTc3IDI4YzYwZWY0OGZhM2ExY2JhMWUxOTM4Mzk4ZmZiZDQyZTJlOGEyMDAgbGVnYWN5LXRydW5rCisxOTE3OCA3OWU3MmNlMjJhNDMwZjAxYTA0YmJmZGE1N2ZkZDIyZjliNWZjMGVmIGxlZ2FjeS10cnVuaworMTkxNzkgODYxYmY4ZGNmYjU4Yjg2NjdkODVlOTZhMjA3MzI4MjM5MDFmZmU4MiBsZWdhY3ktdHJ1bmsKKzE5MTgwIDE3Y2FjNzBjYWU3NjYyMTcwYTJhOTU4ZTQ3ZWNkZWY2MzZlZjZlMzUgbGVnYWN5LXRydW5rCisxOTE4MSBiMzM1ZDRkZDIyM2YzODg0YTY3NmJjNDAwMjZiZTk3OTExNDZiZTVlIGxlZ2FjeS10cnVuaworMTkxODIgMGVmYTZjOTdhNGZhYjU2NTg2YWQ0N2MwMGM5ZWI1NTY5M2M3NWVkNCBsZWdhY3ktdHJ1bmsKKzE5MTgzIGE1OGM5OTNkOTIzNDU3MmY4MjlkODU4YTRlODJiM2Q3NzVlZmFmZDQgbGVnYWN5LXRydW5rCisxOTE4NCA5MjViMjMzZjAyZWEwZGNlMTk0NDY5NjQ3OWRkZjFkNGU2MjM2ZjdkIGxlZ2FjeS10cnVuaworMTkxODUgYWZkMDkzMGY4NjgzOTlhZWIyNTBmZTRkMmQzMTYwYTNiMjU0Y2ZkZCBsZWdhY3ktdHJ1bmsKKzE5MTg2IDlkNTcyMDM4MjA2ZTAyNzYwODk1NjMxM2JmN2U5MWNlYTMwOTRmZTMgbGVnYWN5LXRydW5rCisxOTE4NyAzMzAyMzk1NzVlMWU2NzU3ZmNmZTc3YTY3ZmRmNGFlM2I2ZjJhZTIzIGxlZ2FjeS10cnVuaworMTkxODggZmZkMjUxZGZhYmY0MmFkODJhOTcyMDY0NWYzMjljMTllZWJjMDA5YiBsZWdhY3ktdHJ1bmsKKzE5MTg5IDkzYWZiMmJiMjJlZDA5YmFmOGY5NjA3MDQ4MDM2NTE3MmQ4OGUxYjUgbGVnYWN5LXRydW5rCisxOTE5MCBhYmQzODNmMTkwNWM4MWVjZTkwZjRlMjJjZTNkZTQxOGM1YzViNWNiIGxlZ2FjeS10cnVuaworMTkxOTEgNGQ0MjRkMTM5N2IyZDhiOTg1NDc4MzU3OWViZjMyMGQ1NzEyMTVjMiBsZWdhY3ktdHJ1bmsKKzE5MTkyIGJlMDZiZmNiZTUxYTJlYWM1MDI1OGI3NzJjZjQyNTZhYzI3ZWFmYTMgbGVnYWN5LXRydW5rCisxOTE5MyAyNGU4YzY5Y2QzNGRhNTRhNTgyOTc3MDMzYTAwYjgyYWNlM2I5MGM0IGxlZ2FjeS10cnVuaworMTkxOTQgYmFjYmI0NWZlODQ0OGZlMjM2N2Y0NTIyMTBkNDdhODE3MDI1ZDE3MCBsZWdhY3ktdHJ1bmsKKzE5MTk1IDAxZDViODBhM2MwMzgyMzc1ZGY5NDY0OGE3NDZjY2I4OTM4ZGVmM2MgbGVnYWN5LXRydW5rCisxOTE5NiAzNmRiMTkzNjA4YmVlMTU0NWI3Zjk1OTQxNTg4MTI3Y2RjZmNmM2UxIGxlZ2FjeS10cnVuaworMTkxOTcgMjg1MmVhZGI3ZGFiYTUxMmNiMzFlZGNjNDMyNjYzNTJiZDQ4OGQ2MCBsZWdhY3ktdHJ1bmsKKzE5MTk4IDJkOGUwMjkwMmQ2N2U5ODg5NzE0ZDkwMDNhYWZlOWYyNmEwZmQ2ZjkgbGVnYWN5LXRydW5rCisxOTE5OSBmYTkzYmQxZDg3MDlkOGNiYmRjYmUwNGJiOTdjMDc2YTdiMDkyOGQ2IGxlZ2FjeS10cnVuaworMTkyMDAgNjg3ZjkzZGRmM2Q3MzQzYmEwM2JjYTIzY2RkOTlhOTM4YmQ4MmU0OSBsZWdhY3ktdHJ1bmsKKzE5MjAxIDY1NDk4MmE0NjYwNzc2OWVlYjIwZjVjYWQ0ODIxYzk4NmI4ZjFmMGEgbGVnYWN5LXRydW5rCisxOTIwMiAyMDcwNzQ1ODhiOWZkZTA0ZDFkNmMxZjMwNDU2ZTIwOTRiNGZmZTU4IGxlZ2FjeS10cnVuaworMTkyMDMgYTRiYmEzZWIzNGMxZjE3MzZlMjkzNTY2MzVkZTFhZDM1MDM3ODAzNSBsZWdhY3ktdHJ1bmsKKzE5MjA0IDA1YTkxM2ZmOTdhNmUyMTBmNmEyMDE5ODdiOTU5NDcxZmNhYzQzM2EgbGVnYWN5LXRydW5rCisxOTIwNSBmODdhNDFiOTZlMjhjYzk4ZDEwMTQ0ZTRiMGFlODQ2ZDc2YmNkZjVlIGxlZ2FjeS10cnVuaworMTkyMDYgYThkODg1N2FiMGYxZWNkNWJhYTYwY2U5ZjU1OWIzMDI4YTg0NTMzZSBsZWdhY3ktdHJ1bmsKKzE5MjA3IDBjYjQ3OTU1MzQ0ZTQ0NGUwMTFhYjM3OTI1MGRkY2FjMDc2YWRiZWMgbGVnYWN5LXRydW5rCisxOTIwOCA5MGVkZTUxNjVkMWYzYzE1ZWEwOGEyYjg3ODhiMzI3YTUxNzBhYjA3IGxlZ2FjeS10cnVuaworMTkyMDkgNmYxYzM3ZTgxMTYwNWJmYTA1MTE1Y2NlZjY3ZDI5OWJlODFmMTg4ZiBsZWdhY3ktdHJ1bmsKKzE5MjEwIDZkZjEyNzMyZTI2MmYzYzc4M2IyYzA2OWE3ZGQ2Y2JlYWI4YjhlYjUgbGVnYWN5LXRydW5rCisxOTIxMSA3YzRlYjQwZDRmZjc5MjhlNTBkZTEzZDJkNjBkODc1MDFiMDlkZTE5IGxlZ2FjeS10cnVuaworMTkyMTIgNjZkNGJmNTZlMzJkYmIxODViMmVlMmMzNjFlNDIwMzAzMjY2MWJjMCBsZWdhY3ktdHJ1bmsKKzE5MjEzIGVmMzJiZmE1ZjVjNjgxMzQ4MGI0YTEzOGM2MTRkNTczNTUwMWM4OTIgbGVnYWN5LXRydW5rCisxOTIxNCAwZWViMmVlMjA3OTk5ZGFhZWIxZGI2ZjFhMDU4ZjRmZjk1ODQxM2Y3IGxlZ2FjeS10cnVuaworMTkyMTUgYWUwNGQ2MTRhM2UwMzNiNDBlYmY3ZGFhODY3OTc5Y2I4YTdiNDc5YiBsZWdhY3ktdHJ1bmsKKzE5MjE2IGMzYjc1YTdmYWQzZjc4MDZjNzQ5MDk3NWIyYjdiNzIyMDk3MDRhODcgbGVnYWN5LXRydW5rCisxOTIxNyBlNDQyMGMyNDY4ZjkwYWE2YjFiNjFmZjE3MGIzYmYyMGZhODA1MmYzIGxlZ2FjeS10cnVuaworMTkyMTggNGZmMjg1OGQ3YTg1NTY4NjQ2OTU3NjgxMmZmNTMyZTRhNDFjYjQzYyBsZWdhY3ktdHJ1bmsKKzE5MjE5IDlmMmNhODU1ZmE0NGRiNjRhMTY4Y2I5MmVkZGJmOWU3NWQyODBmOGMgbGVnYWN5LXRydW5rCisxOTIyMCBmYThiZTI4NzMwYzk4NTMyNDNiNDI3ZmMwY2ZmMzczMjQyMGJiYWMwIGxlZ2FjeS10cnVuaworMTkyMjEgMTA5YzZhMjgwZTUxYWEyYzdlZjJjMzVmZDYwMTY2NjU0Njk4YjRlNSBsZWdhY3ktdHJ1bmsKKzE5MjIyIDk1ZGFlNjFjZWQ1MTgzM2Q4ZjE4NTkxZjg3MDE2MGNmZGY3NjhjOTAgbGVnYWN5LXRydW5rCisxOTIyMyA4YzVkOGI2MTc5NzlhYmIxZTZiZGQyNTFmNWY5OGFkYjQ3MDA3ZGRjIGxlZ2FjeS10cnVuaworMTkyMjQgNjU1YWFjY2QxY2FmOGE1NTlmZmMzMmYxNjNkMTAyMjhlNTljNDEyYiBsZWdhY3ktdHJ1bmsKKzE5MjI1IGMyOWNhMTk4MDMwMzhiY2I0YTJmMGFhNDk2OWNlYmJmYTFjZWJjM2IgbGVnYWN5LXRydW5rCisxOTIyNiBmMWUyZjk4ZjAxMjA3ODAzNzFkMjBhYmRhZTE2ZjRiZDZkMjlhYjYwIGxlZ2FjeS10cnVuaworMTkyMjcgNTBmN2RkMWE1MzU3ZDljOTU5MzI3YjliMTY3NzMyMWYyNTM5Y2IyZiBsZWdhY3ktdHJ1bmsKKzE5MjI4IDM4Y2E5Y2M5ZmM0OGExY2YzMDA3YTlhOTA5YmNmMjA4NzJkOTU3NWIgbGVnYWN5LXRydW5rCisxOTIyOSAzYzFiNDI2YjNmZjRjNmVjY2ViMWUxMjZmYmVmYTQ3ZDBmNzM0ZjNlIGxlZ2FjeS10cnVuaworMTkyMzAgYzY5NmE1MmMyNjIxODQ1ODIzMWZkOGY2MzcxZDZiZGI5ZTM3OWI3YSBsZWdhY3ktdHJ1bmsKKzE5MjMxIGMwNGNhNmNiYTFlM2M4ZThiNTJkNWEzNjE1MTE0ODcwNWI3YzEwMjYgbGVnYWN5LXRydW5rCisxOTIzMiA0YjViZWNmYTJlYjNhY2Q0ZjFmNTljZDc5YzMwNjNjNzMwMTM3Y2Y2IGxlZ2FjeS10cnVuaworMTkyMzMgM2ZlODU1NTI2YzU1NjA0OWQ4OWM0NGUwNmIyZjExYmQ2YTVhNjc1NCBsZWdhY3ktdHJ1bmsKKzE5MjM0IDY3MGEwMTk0YThkYTdlOGJlOGQxOTc5MTk2OWY4MmZhNjg5ZTJkZmQgbGVnYWN5LXRydW5rCisxOTIzNSA1ZGZkN2UxNmM2MmYxNzJlNjRhZDRiNGVkODUwMzE3ZDliOWQyZjQ3IGxlZ2FjeS10cnVuaworMTkyMzYgNjMyNWJkMDYzZjBhODgzMzZmYmE1NTA3Yzk0NTY2YzhjNGQ5YTU1MyBsZWdhY3ktdHJ1bmsKKzE5MjM3IDZmZDYzYzVjMTlhOTIxOGIyODk5ZWNlMjk0M2RiZTlhNWYwYzcwNjcgbGVnYWN5LXRydW5rCisxOTIzOCA4YjFhMzgyMjRhZGU5YjU3NWE1NTNiMjU4NTg2OWExMjlkMjMxYTdkIGxlZ2FjeS10cnVuaworMTkyMzkgMGQ0YjZiYTVlZWVjODUwNTIyY2Q5MzU3NzkzYjNjZWU4MWZmMWVmZSBsZWdhY3ktdHJ1bmsKKzE5MjQwIDRjZDU3NDQ2OWZlMWFhOGM5ZGEwZGU4ZjFjYzYyNzQyYTY5YTFlMjkgbGVnYWN5LXRydW5rCisxOTI0MSA1ZjA2ODNhNjllZmM2ODg0YzY0MTczYTAzZDhjZDAzZTU0NjI5NjZhIGxlZ2FjeS10cnVuaworMTkyNDIgM2E0ZDJiZWZiYjc0NzM0MmRmMzMwYThlMzNiYTZkNjc4MGM4YTM4ZCBsZWdhY3ktdHJ1bmsKKzE5MjQzIDQ4YjRhY2Y3M2FkN2FiZDIwM2QzMmQzYzg5NWEwMzZjMmVjZDk0NDIgbGVnYWN5LXRydW5rCisxOTI0NCBlYzhmNDdhMWNjNDgzODg3ODFkODJjNDJjNzcxZTdiYTg2YmNiNTgzIGxlZ2FjeS10cnVuaworMTkyNDUgOThhODhhYmU1OGQ0MmViNzg5MGQ5MTI4ZTIzMmFiMDE0ZWM5OTI3MyBsZWdhY3ktdHJ1bmsKKzE5MjQ2IGM4OThjZWJhMjI2MTg0MGViOWNkNGExMTkxYjQ4Yjc1MWZkNzZjMDUgbGVnYWN5LXRydW5rCisxOTI0NyAxZmI2NjcyYjIwZWYzY2NhZjIxMDQ4Njc4MDFiOTExY2QwYWQ2N2NiIGxlZ2FjeS10cnVuaworMTkyNDggYzI1NTViNGYzOGEzMTQwZjYxMjExOWE4ZDZiZTA0NTE0NDc4Y2VhZCBsZWdhY3ktdHJ1bmsKKzE5MjQ5IDU1Njg4NzI5NmQyYWQ4YWUxYWRkNDE4NmFiMDAwNjc2ODcyOGNkZTAgbGVnYWN5LXRydW5rCisxOTI1MCBmZDRhNjM1NjZiYTFmNGQ5OWEyNzk1OThhMTZjMzA4YjEzNjgwZjQ1IGxlZ2FjeS10cnVuaworMTkyNTEgNDZhOGNmZTlhZmE2MzRkMGMzOGMzZDQxYzFiOWNmMzQzYWViNTEzNSBsZWdhY3ktdHJ1bmsKKzE5MjUyIGQzNGYyNTA0NmFkNGJhNDY5ZDc3ZTdhNDQ0YjdlYTgxMWQwOTJjY2YgbGVnYWN5LXRydW5rCisxOTI1MyAyYWIyOGIyMTNkNzA1ZGNjOWZkMDMzYTI1NDM0YmE0ZGJhNjg2ZmVjIGxlZ2FjeS10cnVuaworMTkyNTQgMmVjY2ViOWQ4N2Y1OWUyMjBmZGI0NmRhZjAxNjZlN2VkMTExZmMyNyBsZWdhY3ktdHJ1bmsKKzE5MjU1IDAzOTQyNzBkNGQwNmQ1YTE4NzI1N2U0OTQ1ZTQxM2VmMjc0NzkyM2QgbGVnYWN5LXRydW5rCisxOTI1NiBmNzAwZTZiOGRlMWZhNjA1OWUyN2ViZDRlMjY3MWIwMTQwMTQyMDAwIGxlZ2FjeS10cnVuaworMTkyNTcgNzRkMTQwYTNmMDM0NjM1NDg0ODI0YTIyOTZjZjVhMGQ2YTBiMTI4MiBsZWdhY3ktdHJ1bmsKKzE5MjU4IGIyMmU0ZGNhNDUxYTM1NzY5N2M2YmJkNTFjNTQ5ZTVjMzAyNzJkMTkgbGVnYWN5LXRydW5rCisxOTI1OSAwYmI1OGNkZmE2ODhmZjFkOTM3ZmFiOWMwZWEyOTAyZmY3NzZiZjYyIGxlZ2FjeS10cnVuaworMTkyNjAgODBjMGIyODBhNGY5MTFlZjZiN2M4MmZlMzJjOWQ0YTBjM2NmZTQyZiBsZWdhY3ktdHJ1bmsKKzE5MjYxIGRjZTdiNGU2ZDQyMWJjYjhjYzcxM2RlNGE0YzMyNjBlN2ExZDYxYTIgbGVnYWN5LXRydW5rCisxOTI2MiAxNjZlODc4MzZlOGU2MDU5MjYwYzlhYTdkMzYxMTZkMjZmODExNDczIGxlZ2FjeS10cnVuaworMTkyNjMgYWJlODVkMjYyMmY5ZmJkZWY1M2NiNTQwZTViOGQyZmQxMDA5MTVkMiBsZWdhY3ktdHJ1bmsKKzE5MjY0IDA4YWM1NTZmMmQxMmRlNTllYmE2NWQzNDVhNDdkOTdhN2Q1ZjY5MzAgbGVnYWN5LXRydW5rCisxOTI2NSBjMjJlODcyNTAxYTBjOTUyZTQ2ZmY0NTk5OTExZDU4YmE0N2E2YWQ5IGxlZ2FjeS10cnVuaworMTkyNjYgMzkwY2E0M2U1Zjc5ZDBmMmZiMDlmZmMxYzBhNThjZGQ0ZDRmYTY2NSBsZWdhY3ktdHJ1bmsKKzE5MjY3IDdhZDk3ODMyYTVjZDA1YjE3YTVlZTIwYTQ1MWIyZTY3Y2YyMTVjMTggbGVnYWN5LXRydW5rCisxOTI2OCAyZDcyZGI5ZjVjYTU0NGNkYmVkMDkyZjkwOTA0YWYzYmI4Y2I3OTAwIGxlZ2FjeS10cnVuaworMTkyNjkgOTllZGUyMTkwODcyNzM2NDE2MmMxNWJlMmFjNjI0YjNhNzY0YWFhZSBsZWdhY3ktdHJ1bmsKKzE5MjcwIGVjNzA5ZWU4ZTZmYTY1MjdiYWRiMDNmZDE0YTczMjBmN2ZkNjUzZDEgbGVnYWN5LXRydW5rCisxOTI3MSA3NDMwZWJhYmRiZGNhZWUzMjljY2IxYzdiYzJkN2FlYzM0OWQzNmUyIGxlZ2FjeS10cnVuaworMTkyNzIgM2Q0YTdjZDBiZjE3OGFkNjNlMzhiZDNjZWVmNTBmMTMyNzI0MDJkYSBsZWdhY3ktdHJ1bmsKKzE5MjczIGFlZGI5M2Y5YzZiODBkNTk5MWMwMmRjOTY1ZThiMGFmOGUwNmFjYjQgbGVnYWN5LXRydW5rCisxOTI3NCAxMGVhNDA2MGM4ZGM1NWJkNTNmOGFmZWIwMWJmMjJhY2NjZmM1YWQ5IGxlZ2FjeS10cnVuaworMTkyNzUgODgxOTg2N2YxNGVmNjU5YmU4ZmY4MDUxYzAxMjRhNGQ5YzVkNDM5ZSBsZWdhY3ktdHJ1bmsKKzE5Mjc2IDE4NWI5MTk2NzE0N2RkMDI3NjYxNWUyOGEzMmYyYjc2MWQyZmI5OTkgbGVnYWN5LXRydW5rCisxOTI3NyAxMmQwMDQ4ZWQ2Y2E1YjY4YzJlNjQ3ZjU2YTJmMzc4ODBhNDU3Y2U5IGxlZ2FjeS10cnVuaworMTkyNzggN2QzOWQ5ZGNmMmQ2MTEzNzhmYWNjNjgwNDA4MDI0YmZiNzU1NGRjZiBsZWdhY3ktdHJ1bmsKKzE5Mjc5IDkwMWI5NDY1NjkyOGIwZDBhZWViNmMwNzI4MGEyOWM4ZjI0Nzk4YzEgbGVnYWN5LXRydW5rCisxOTI4MCAxYWM3ZTYxODZiNmUzZjc3YmE3YjM4NWFlZGRjNDY5MjA0NjVkZTlmIGxlZ2FjeS10cnVuaworMTkyODEgMWVmN2U0MzcxNWY1NDBjMzBiZGQ2MTA3YzVhZmNiMGZjMzhkNjljMCBsZWdhY3ktdHJ1bmsKKzE5MjgyIDM4MjA0MDkzZDljOTI5ZDY0NGVmOWM1NmJiODlkYWY5OTQ1ODdjMGEgbGVnYWN5LXRydW5rCisxOTI4MyBhYTg0NDcxMTQ2M2FhODk0YWZmY2UwOWE4N2JiYWMzZjRjN2UwZTI3IGxlZ2FjeS10cnVuaworMTkyODQgOGIzMThiOGQ3OGM5NDQ2NmRjYmVmNWJhOTEyNWNiNTNiMzk2ZjI5MiBsZWdhY3ktdHJ1bmsKKzE5Mjg1IDVjNDAxMTM0MDljMzI3N2M2NjI0MWM5YmM3ZjNjZTYxZWU5MGFjNzcgbGVnYWN5LXRydW5rCisxOTI4NiAyNWVjNGY4YzYwYWFjZjZhMDI4MzQ5YmM3Mjg3MTI2MWVjZDcyZTIwIGxlZ2FjeS10cnVuaworMTkyODcgM2ZmY2M5YjNiYWI4N2Y3MTQ4ODQzNzMwNmQ3YzAyYmJiMGFmNDFlYyBsZWdhY3ktdHJ1bmsKKzE5Mjg4IDdlYTdhMWM1YThkMjAzYjNmYjI1MDJlNjhlZjE1NWE5ODgwOWRhODEgbGVnYWN5LXRydW5rCisxOTI4OSBjOGVmODY0YmE4NjFmMjM0Y2I1MzVhYWZkOGY4Mzc1ZTZhZmYzYjQ0IGxlZ2FjeS10cnVuaworMTkyOTAgNjQ5Njg0NGM0YTQyODA5MDZiNzUyOWNkMzhkNDkxMjQzZDQ3OTVmMyBsZWdhY3ktdHJ1bmsKKzE5MjkxIDhhNDQwZmYyNzRlY2JjYjFlNTM1NjY0MTliODljZTM0ZTA1Y2Y1YzAgbGVnYWN5LXRydW5rCisxOTI5MiAyYmU3YzkwYzFkZGVkMmU2NDEwYzE3N2Q5NTUxOGQ1ODg0NTNkMTM2IGxlZ2FjeS10cnVuaworMTkyOTMgYzE2ZTA2MWQyM2U4ODZiYjFiMTFjY2JhNDI5NDhkMTY2Mzc3NzIyYyBsZWdhY3ktdHJ1bmsKKzE5Mjk0IDZiNWUyMGY2OWU5ZWU5ZDU2Y2JmNTBjZGUwNDYzNDQ2ZjhjOWE3YmUgbGVnYWN5LXRydW5rCisxOTI5NSAwMDc2ZThkMjhmOWViYTllZmY0NTA4Njk2ZGMzMzczMGFmMmI0MDAxIGxlZ2FjeS10cnVuaworMTkyOTYgNWE0YmRmYzY2MDgzZWNjMzNjM2MyMDBkODE4NGVhZjUyNmU5ZmY4NCBsZWdhY3ktdHJ1bmsKKzE5Mjk3IGE2MjE5OTUwNzY2ZTc4YWYzODZkOWU0ZWU1ZTdhZTJhMDVmMGUzYmUgbGVnYWN5LXRydW5rCisxOTI5NyBiMzgyZjFmMDdlYzZiMmM5NTU1MTY1OGIzMGM2MTM5ZWViMzIwNzdhIGxlZ2FjeS10cnVuaworMTkyOTkgNjc5ZjgyNmIyNGNhMjY5YjhmMThjNDA0M2VjZjVjM2Q1YWQ4N2ZmNiBsZWdhY3ktdHJ1bmsKKzE5MzAwIDI0NmIzYTZhYTdhOTQxMWVhNzc4NjEzNGEzMjVmZDAyMmQ0ZjJmZTEgbGVnYWN5LXRydW5rCisxOTMwMSBkNTU3ZmYwYTJmNmM5N2Q0MmE4MDMyNDM2OTljNTEwMWNlNWIxYjBlIGxlZ2FjeS10cnVuaworMTkzMDIgN2EzOTcwNGE1MDQ3ZTRmNmZjNzMwMTEwOTJiZTJkZTkyMTU4Y2QzMiBsZWdhY3ktdHJ1bmsKKzE5MzAzIGM0NTNmYmYzMGY2MTM3NzgxZjRmNTg0ZDA2OTgxNmQ4N2QxYzViMDMgbGVnYWN5LXRydW5rCisxOTMwNCBiMmM1MTZiYjczNGE3MjllYWYyZGU2Y2M3NjY2ZGVjZTQwYzM0YTI1IGxlZ2FjeS10cnVuaworMTkzMDUgY2U5ODUwMDUxMTIwNDkwZGUzMDg1MmQzZWJjOTdjMGEwZDI1OGVlYyBsZWdhY3ktdHJ1bmsKKzE5MzA2IGI3OGM4ZDhjNTJlNjFmNmExNmM2OTU4MjVlZDczYmJkZGYzZGYwN2EgbGVnYWN5LXRydW5rCisxOTMwNyBmOTNlMjNhODJhNzNkMmYxYmE5YTZlMGIwMjQwOTA3OGQ1NjFkNDljIGxlZ2FjeS10cnVuaworMTkzMDggNTc1ODcyNTg0YjBjZmM2ZGQ1ZjMyNjEwODE2MDg5YTBmMTkyZmVkMSBsZWdhY3ktdHJ1bmsKKzE5MzA5IGFjNTJkMzcyNzg2NzNmY2Y0NzM5NGVlNzcxOTU4ZWRlYzM4YzM3ZTQgbGVnYWN5LXRydW5rCisxOTMxMCAxODc3MDU3YWE5MjYyMDc2MTdiOTVmNmM5ZTg0NmY0ODY1MzRjN2EzIGxlZ2FjeS10cnVuaworMTkzMTEgNjRhMzJkZjVjMDYzNDVkODkwNmViMjVmNzgyM2RkYmVkZmM0MGZlMiBsZWdhY3ktdHJ1bmsKKzE5MzEyIGFmMzlkZTI2MmI5YzliOGYxYjdmODlhYWJjZWY1ZjMxODRmYzBhMTQgbGVnYWN5LXRydW5rCisxOTMxMyA5OWJlZmVhYzg0MDBmZmE4MDYyOTkwYjE2NThhZWU3NWZlZTBiNzA4IGxlZ2FjeS10cnVuaworMTkzMTQgMjg4NWEzMzk2MzVlZGU5YTAyNzFjMjkwZDMyZDM1NTg4Yjk5MzIwMSBsZWdhY3ktdHJ1bmsKKzE5MzE1IDJlM2RkNjJjZWFjNWY4ODQzOWUzOWMzODAxMmEzYjM2YjE4Y2I1OWYgbGVnYWN5LXRydW5rCisxOTMxNiBkZGNlNzE1ZTQ5YmEwNjc3ODdkNWFhMDliYTAwMzRiOGJmOTA4OGRjIGxlZ2FjeS10cnVuaworMTkzMTcgYjMwNWMxNTM2YjdhYTRkNDIwYmRiZDg3ZGZiYjM1Y2YzNzJiNWE1ZSBsZWdhY3ktdHJ1bmsKKzE5MzE4IGE1MDZmM2I3NTY5NDE0OTkzZTgxNGYwNzc1ZjgxMjRjODQzNzI2MTMgbGVnYWN5LXRydW5rCisxOTMxOSAzY2M4NjM1NTg3OTMzZWM1YTkxYWI2MGNiMzZiOTM4MzE4YzBjN2FkIGxlZ2FjeS10cnVuaworMTkzMjAgYzk5ZDZkNWFmZDc1ZDBiY2IwMGViZThhYjliYTU3NjMyMjRiZDJlNSBsZWdhY3ktdHJ1bmsKKzE5MzIxIDVlZjcxY2I2NjQ5NTM2MTQxZmRlZmRkODVlYWI2ZTEzYTk5NmEyN2QgbGVnYWN5LXRydW5rCisxOTMyMiBjMThhYzhjMmYwMzY1YmE3ZDNhNTllNjcyNThkMjAxOTRiMTk2NDYxIGxlZ2FjeS10cnVuaworMTkzMjMgMGJiMTcxMjdiMmY4ZWEzYzI4YTlmYWFkNmM0Y2RjNzNjN2YxMWZkMiBsZWdhY3ktdHJ1bmsKKzE5MzI0IGE0ZjZiNjMzMjMwYzM3MjJkMzdhOGRiNWI2N2FiOWExZjMyOWUzODggbGVnYWN5LXRydW5rCisxOTMyNSAyY2E4NzgzY2U4YTM1YWU3ZTJjZTkyM2MxNGNkOGZlMWZjMjY4YjBiIGxlZ2FjeS10cnVuaworMTkzMjYgMjg2YTlkOTg3Mzc1MzYzZDNlMmE1OTI1ODhlNzE1NmQ5MzQ5NTUwZiBsZWdhY3ktdHJ1bmsKKzE5MzI3IDY1YTcwODk1MDkyMmI2ZjhmODMyNGY5MDhiNTBhNmMwMzJiYzBkNTAgbGVnYWN5LXRydW5rCisxOTMyOCBlYTg4YzJhNzMxNzMwNDRmMTQ4MGE5YmZmMTJhZDhhMzU2MmNjMTlkIGxlZ2FjeS10cnVuaworMTkzMjkgMWM3MWFhN2Q1NTEzMWFiZjJkMDBiYzFhMjBmNjQyOWYyYWNlZjUwNSBsZWdhY3ktdHJ1bmsKKzE5MzMwIGVkNDMzOGM3ZThhNDVjODk3YmY4NDAzZWY1OGRkZDkzNDY1NDJiZTQgbGVnYWN5LXRydW5rCisxOTMzMSBjMGIwZmMxMzI3OWUyMzIxNjQ3YzI0OGRhNzA3ZDY0NGU5NWNmOTNmIGxlZ2FjeS10cnVuaworMTkzMzIgODA3Y2E2OTc2MjBhZWUxOGJjMjZhZTMwZDEwMmUzZDk5YWJmOWVhNSBsZWdhY3ktdHJ1bmsKKzE5MzMzIGFiMDJiYzZhNWFiMmNhZGMwODg1OTZjNjgxODNlZjJlMjdhMjNkN2QgbGVnYWN5LXRydW5rCisxOTMzNCA1NDllOTkzYTQ3NmNkNzBmMjUzNjkzMDMxYTQ0NGFmMTk1NmJjMjIyIGxlZ2FjeS10cnVuaworMTkzMzUgZjViY2JhNWZhNDFjOGIwYzZmMmE5Nzg0YjY1MzQyMDE0Zjc2MWNhZSBsZWdhY3ktdHJ1bmsKKzE5MzM2IDRkNDA2YzI2YzE2ZWE3OWRhN2EzNjk3MzI3MzYwMWQyYzJlNTA0YzYgbGVnYWN5LXRydW5rCisxOTMzNyBiNjMxM2M5MTE0ZWQ2ZDEyYzZhOWNkZjE2MWEzZDFkOGNmNjRjM2MwIGxlZ2FjeS10cnVuaworMTkzMzggZjdiMTY3YzgzMzE4NThkZDc0ODM1ZmQ0YzgxOWM4MjdjMDE0MmRiYiBsZWdhY3ktdHJ1bmsKKzE5MzM5IDU3Y2U5MmExNmIzYzllZWIyOGE2MzBiNzVjMjg5NmNjNjg3OWM5YmUgbGVnYWN5LXRydW5rCisxOTM0MCBlZGMwYzk5YTY5ZDZkMjI1NjIyNzNkYmJiNTljNDVjOWM2YjZhYzAyIGxlZ2FjeS10cnVuaworMTkzNDEgZDU5NjYzZDNlNDMzYTM1OTk3Y2U4NjlkYzMzNDBhYjBhYTI0NjFhYiBsZWdhY3ktdHJ1bmsKKzE5MzQyIGU5NzIxN2Y1YjMyMzE5ZjNhN2Y5ODdlMzIyZWZjYjY3ZmYyZGQ5OWUgbGVnYWN5LXRydW5rCisxOTM0MyA4MTFiMGNjYjYyYWVjZTkzN2QxMDNkYjllYzVhM2ZjNzQxMDhlOWQxIGxlZ2FjeS10cnVuaworMTkzNDQgMWZiN2JlZmI1OWYwNzNiMDFiYTE0NDdkZjM1NjExYTA3ZWVkOTdiYSBsZWdhY3ktdHJ1bmsKKzE5MzQ1IGMyMzNlZmNiNDg5ZTViZjVmNDdjNGU2OTRmZGUxMGQ0OGMzYWZjYzMgbGVnYWN5LXRydW5rCisxOTM0NiBiZjk3ODE4ZGQ5ZTFlMjhiOGFkMWRkYzlhZjU5OGUzMjEyMmQxZThmIGxlZ2FjeS10cnVuaworMTkzNDcgNWYxMmRmODhhMjA4NWFhMjM4OWUwZTI1MmRiMWU5ZGU5YjUxNTRhOSBsZWdhY3ktdHJ1bmsKKzE5MzQ4IDQ2NGRlOGRmYTU5ZTlhNzVkYWQ5ZDQ3MTk4ZjZjODJlZDk1NWIwNjcgbGVnYWN5LXRydW5rCisxOTM0OSA3NzFkYmIxNTU1NzVmYmNmZThkYTVkN2Q4ZGNlNDI4ZTE5MDA1YzY1IGxlZ2FjeS10cnVuaworMTkzNTAgOTJjYmVmZGI2NzRhNjVjZDc4MjFiY2M2N2FlZGRhYTI4OWI2Yzk5MiBsZWdhY3ktdHJ1bmsKKzE5MzUxIGE2ODg4NGRlMTJlYzU0ZTU0YjY4Yzk2ZDczNTUzZmRmYWJkYTBmZDIgbGVnYWN5LXRydW5rCisxOTM1MiA4N2YyYWJiNzMxODQ4YjZmZmEyYmYyNDk2OGFlZmY2NTk2NmE3YzhkIGxlZ2FjeS10cnVuaworMTkzNTMgYTRjNmU0MDFlZTE4NGMzZmZkNTI1ODA0ODMzNDMxM2UyM2IzMDI3NiBsZWdhY3ktdHJ1bmsKKzE5MzU0IGZjNGFjZTAyNDJjYjA5NGI2YjM2ZWQ2MWRiMTY2ODNlNzhjNDczYWUgbGVnYWN5LXRydW5rCisxOTM1NSA2ZTVhYjc4NDBiMDVkMGJjOTRkOWJmZWVjMTkwNWEyY2ZiYzUwYzM1IGxlZ2FjeS10cnVuaworMTkzNTYgZjRkMTVmZGQxNWRkN2IxZWU3NTFjYjc2OTIzN2YyZTkwODZjNjQ2MCBsZWdhY3ktdHJ1bmsKKzE5MzU3IDY5ZjE2MmRjZDhiNGMwOWM1ZWY0ZGRkNGI1N2I5MDdiNzlkNmY4YzkgbGVnYWN5LXRydW5rCisxOTM1OCAxZmY5ZDU3MWJhYzA5YTc4MTU2N2UwNmE5MTdkYTVlMDk5ZjgwZTgyIGxlZ2FjeS10cnVuaworMTkzNTkgZDMyOTYwNjM2MWY4YjNiYzVkZTU4NGQzM2VmMzdkOWQ1MmNlOGU4OSBsZWdhY3ktdHJ1bmsKKzE5MzYwIGY3NTFiOTZkZTYyMWVlNzE0ZTVhYWU1YmJlOGM2ODBlMWM4NjllNzQgbGVnYWN5LXRydW5rCisxOTM2MSA1OGRlMjgyOWNmZGQzYjg5ODEwMjU1M2NmOTdlZGY4MTBjOTRjZWExIGxlZ2FjeS10cnVuaworMTkzNjIgYzk3ZTYxODlhZDk2YTllYWQ1MmFiYTUxZjRiOTM4YzVlMjc5OGI1MyBsZWdhY3ktdHJ1bmsKKzE5MzYzIGIxMTc4MGIwNjhmYTZjMTIyOWNiZWQyOTVkZjNjYmU5NzQwNzVmYWIgbGVnYWN5LXRydW5rCisxOTM2NCBiZjAzMDlkNWZjMGE5MzllOTBhZWIxYjc2M2UxMjhiZjQxNjcyYTVkIGxlZ2FjeS10cnVuaworMTkzNjUgOGQ3NjU1YWM4YmY4NjhhNTM0ZTA0MTM4OTY5MDY2OWNjYWQyMGQ4NyBsZWdhY3ktdHJ1bmsKKzE5MzY2IDZmZmNlOGJlM2UwYjhkZDMxNGM2OTZlNjYxYzY0ODA2ZWRhNGFmNmIgbGVnYWN5LXRydW5rCisxOTM2NyA4OGM4N2M4OWI0MDY4MDA3ODk0YTExOTI1YThiNmNlNjVjNGVjYTIyIGxlZ2FjeS10cnVuaworMTkzNjggYjI2Y2JjMWZlNGUzYjViZjYxOTZiYTY5NTM4OTE2ZDY0YzkzNmQ0NSBsZWdhY3ktdHJ1bmsKKzE5MzY5IGJkZmM2YmY3YjBkYWU3ZDIyOGFhN2ZmZDc1MDlmZDZkYmJkZWVhYmUgbGVnYWN5LXRydW5rCisxOTM3MCA1YzNiZjJlODlkODAxMWFmYjVmZWY2OGI5OGE3MWEyNmIzNzU5YzdmIGxlZ2FjeS10cnVuaworMTkzNzEgNWY1ODhkZDU0MzliZjAwNmExNmRmMGYxNDUxZDBkZjRiOTA5MGYxMSBsZWdhY3ktdHJ1bmsKKzE5MzcyIGM4N2ZkZjdkZTBlNmI4ZjkxNzcwMGQxMDhmMWFlMTcyYTcyZmNiNjIgbGVnYWN5LXRydW5rCisxOTM3MyAxOGVmM2Q1ZWFiNGYyMmNiOTNhN2M3MDAyYTZhYzZmYWE4NDQ3ZDYwIGxlZ2FjeS10cnVuaworMTkzNzQgODkzYTUxNWQzMzFhNzNhYWIzNjdkOWUxYmFmOWFhY2ViZmRmNWM4OCBsZWdhY3ktdHJ1bmsKKzE5Mzc1IDU2NDNlMzdiOTlhZTY5ZWVmNjNiYmVlNWU0YjdjMDk2ODE5MWY3Y2UgbGVnYWN5LXRydW5rCisxOTM3NiA5MGM2MDBhODE5ZTk2ZDQ2MDY5NzllMmQ2OGUzOGRkMTRmZGI0MTEyIGxlZ2FjeS10cnVuaworMTkzNzcgOGJhNmJjOGMyZTA5MzgxZjM3NmYxMTkzOWE5ODljOWQzYzQxMTRjNCBsZWdhY3ktdHJ1bmsKKzE5Mzc4IGFmODg0NjU5OTljN2E2YzAzMzQ2YmIwYjhmNzVkN2U4ZmExZWUyNjAgbGVnYWN5LXRydW5rCisxOTM3OSBlZWU2N2E4NGU1ZmFhZjMwMGExZWYyNjgxYjg5OWUzNjgwMWQyZmY5IGxlZ2FjeS10cnVuaworMTkzODAgYjNkOTIzYTY2MTUyY2Q4ZDUzNjlmNjllY2ZhNGZkMjQ4ZDhlMTE1NSBsZWdhY3ktdHJ1bmsKKzE5MzgxIDYzMWQ0YzhkYjc4NDA4MDI4NjdmOTNiMzk2ZjIyNWE2MWY1N2MzNTcgbGVnYWN5LXRydW5rCisxOTM4MiBjODAyMzg1YTZhYzNlNjQyMjY5MjhhYzAzZTI4YzY4N2Q1ZDQ1M2I4IGxlZ2FjeS10cnVuaworMTkzODMgZTNkNDg4MDc0OGI1YzQ3NWM0YzU4ZThmZjAwM2VlYTUzZDFiNDQ5ZiBsZWdhY3ktdHJ1bmsKKzE5Mzg0IGY0Mjc5OWM2ODkyOWVlNjRjOWM4MjRmNmY5MmFhZDVkZTlhYjgyOTUgbGVnYWN5LXRydW5rCisxOTM4NSA5ZDYyNTMwM2Y5MTRiZTgzMGE5OTI3ZDNhNTRhMjUxMDVkNjE1ODU1IGxlZ2FjeS10cnVuaworMTkzODYgMjRlOTQ2ZTk1MWZhMmEzNWExOGE1OTIxY2E0ZDY5YWE0NTBjMjM1OCBsZWdhY3ktdHJ1bmsKKzE5Mzg3IGMzNjk2N2JkYzlkZDRkYWJiNzhiYzVmNzI0MGNlMzIwOWI3ZDRiMGEgbGVnYWN5LXRydW5rCisxOTM4OCA1N2QyNDhkZGJlMmFiYWI0ZGZmNGFhNjZjNWIwODY4YjgzN2RlOWY2IGxlZ2FjeS10cnVuaworMTkzODkgYThlMTIzZGYyNjhiOWNiZmEwNTAxODcwMGI2ZDFhNmU1OTM0NzIxNyBsZWdhY3ktdHJ1bmsKKzE5MzkwIGYzZTgzZTUxNGRkODlhZmNlZjgwNDk4MGY3ZjQwMWRjZjFiZjFjYmYgbGVnYWN5LXRydW5rCisxOTM5MSA3NTFlOWNjNDc3ZDlkMDM0OTI3NWRhYjkzYWNiYThhNGEyNDYyYzA1IGxlZ2FjeS10cnVuaworMTkzOTIgYTgwZjY3YjcyMzA4ZTlkMDUxNWJkYjQ5YWZmYWRlZmJlYzI1Njg1ZSBsZWdhY3ktdHJ1bmsKKzE5MzkzIDA2ZGQ5NGUyMGYzYjgxYmNjMTQwOGQ1MzcyOGIwMTI2NTQwZDNlZTcgbGVnYWN5LXRydW5rCisxOTM5NCA3ZmM2NGRmMTNkYjBhY2FmYzYzMzkxZDAyZGM0YWEzYjYxNTE2MDc0IGxlZ2FjeS10cnVuaworMTkzOTUgYzQ4YWYzOWNiMjkyZTAxYjdjOTJiNzAwNzQ2ZmNkZjY4ZThhOTgyYyBsZWdhY3ktdHJ1bmsKKzE5Mzk2IGI1OWYzYTFlYjEyMzkxYmMxYWVkYTc1YTY5ZDkyYzMzOTVmMTkwYjUgbGVnYWN5LXRydW5rCisxOTM5NyAwODRiM2RjOWI2ZmYzMTAyYWU4ZDVmOWU5YjdjYjRiNzliNTQ5MmJhIGxlZ2FjeS10cnVuaworMTkzOTggNTRmNzIwOWNjNzFlN2I2OTA5ZDMyZjJjMzZkMTRjOGVmNDE3ZjRkMyBsZWdhY3ktdHJ1bmsKKzE5Mzk5IGY0ZTcxYmFiNzg1M2M5N2I1NTc5NzkwOWMwZWZlOTY2NGNhMWQzZGMgbGVnYWN5LXRydW5rCisxOTQwMCBhNTQwYzZmZDBjZWQxZDg4MWRiZWNhMTdiODIxYjIxMjdlM2Y0MTdjIGxlZ2FjeS10cnVuaworMTk0MDEgYTQ3ZDkzZWYxMDNhNzY3M2JjMjJmM2I2NWU3ZjUyZGNhYjMyYjhkNiBsZWdhY3ktdHJ1bmsKKzE5NDAyIDgyMzZmM2U3NTg1ZTE0ZmM4MDAwYTRhOTI2ZjRlMDU1MTdjNDA2NzYgbGVnYWN5LXRydW5rCisxOTQwMyA4ZWVkMzczYmNlN2ZlNTBhZGUyYTYxZjU3ODRjMDUwYTRmOThhNWFiIGxlZ2FjeS10cnVuaworMTk0MDQgZmVmNGMwMzk3MzNkY2I4MWRjNzc5NGJjMjk1OWNlNDE2YWEwYzNiYSBsZWdhY3ktdHJ1bmsKKzE5NDA1IDEyMTRhYmVhMGM3YjJhODM1MTE3MGQ4ODg0NTVhM2U2ZGQyZTFkNDAgbGVnYWN5LXRydW5rCisxOTQwNiA0NjUyNzIzZWE2NTVjYTgyYThmZTI2OGExZTFjNDY2N2E3MTNlYjZkIGxlZ2FjeS10cnVuaworMTk0MDcgMzhlY2ZkMTFkOWI1M2EyNmM0Y2ViMzFjY2MxN2U0OGViOWFlOGM2NyBsZWdhY3ktdHJ1bmsKKzE5NDA4IDYwYTJlOTljODYzYmU5NzE5ZTMxNDM4OTU2OGRiMzhhOWUwNTFhMGMgbGVnYWN5LXRydW5rCisxOTQwOSBjYzljYjFlOTBiM2QyNGJkNzhkMzQwM2IzN2ZhYmE4NTNkMTU3MmMzIGxlZ2FjeS10cnVuaworMTk0MTAgZGE4NjgxZjE3YjUwMGU2NGUxZGU2NzFkNDRlNDUzYjRmZWI1N2NiMyBsZWdhY3ktdHJ1bmsKKzE5NDExIDdlOWY0MDUxYmE0YWYxM2ZmZDVhNWNjOWYxZTRlYWMwMmNmMzNkMjYgbGVnYWN5LXRydW5rCisxOTQxMiA4ZjcwYjVkZGQ1YzA4ZjY0MDg4ZjY3ODNjYWFjZDVjNTM3ZjdmYjZlIGxlZ2FjeS10cnVuaworMTk0MTMgN2RlNTA0MzgyN2Y3MGZkYzE4NmI2ZGY2ZWVlY2JjMDIxODcxZDRhMSBsZWdhY3ktdHJ1bmsKKzE5NDE0IGU1NTkyZjFlZjQxZjg2NTFmMjdlM2ZiNjVjOGIxMDU1MWQ2YThhZmUgbGVnYWN5LXRydW5rCisxOTQxNSA5YTk1Nzk0ZTBmN2VjNjViNTM2OWRkODQ1ZjdiMGYwMGI4YmI5NjdkIGxlZ2FjeS10cnVuaworMTk0MTYgNDQ0YzBlZWQ1YTY2YzVhYzk1NTIxYjQ3M2QwNzg3NGE0ZjEyNGMzOCBsZWdhY3ktdHJ1bmsKKzE5NDE3IGQzOGFmYjIwYzMzNmE3MjRhZWUyMzI0Mzg5MTc5MzViNDVkNjRhZTYgbGVnYWN5LXRydW5rCisxOTQxOCAyN2ZjZTJkN2ZhY2RiNDI3ZDk3NjhhYjgxYTZjYzJjZTU0ZmQwYjg0IGxlZ2FjeS10cnVuaworMTk0MTkgOWNlOWUwMzQyY2MxZjBmMDJlNTliZWNiZWU3NjBiMTY5ZDc5YmJlZSBsZWdhY3ktdHJ1bmsKKzE5NDIwIDE5MmU5ODU1YzdjMDA2NTU2YWQyNzhlMzBlYmE2N2E5ZDVmNWQ0Y2UgbGVnYWN5LXRydW5rCisxOTQyMSA4YzFjNzg3YmQ2ZjllMmI1YTVkY2QzNWVkMjRkNmUzMThkNTJhYTYxIGxlZ2FjeS10cnVuaworMTk0MjIgZThlNjM2Y2MxYTA5MzNkNmU3N2NjZGYwYzEzMmJmMDIzMzE1NDEzZiBsZWdhY3ktdHJ1bmsKKzE5NDIzIDBkMTMwNWM4M2RlNGM5ZTBkYzU4MWRmM2YwMzE2ZTJiMzYxOGI1MDEgbGVnYWN5LXRydW5rCisxOTQyNCA2MjM0NTY1NzZkNmE4ZTU0ZDVlOTBiNDY4MDY4YmQ4ZmMxMzU1OGQyIGxlZ2FjeS10cnVuaworMTk0MjUgMzBkMzRiYmY4NjIwMWFhOThjOGI0YTg2YTY4ZWYzYThmMTBkM2JmOSBsZWdhY3ktdHJ1bmsKKzE5NDI2IGQzNDg0Y2E0MGI4YTBkN2Y5MTFjYWMxMjQyZDYyZWJhMzY2ZTY5ZDAgbGVnYWN5LXRydW5rCisxOTQyNyAyM2I1ZTdkMDNmNzZmYmI4NTk0MGIwMDIwMDlhZWQxMTI1NmRkNmM4IGxlZ2FjeS10cnVuaworMTk0MjggNGNlZGM4MjZiZWU4YjZkMTk4NjQ4ODg5OTEzOWNjNDg0YWYyMDk2NiBsZWdhY3ktdHJ1bmsKKzE5NDI5IGI0ZmYxY2Y0YTEwZmFmYjg3ODI5NDYxYjdmNTUyOThlNWM0MjFmMjYgbGVnYWN5LXRydW5rCisxOTQzMCA5MTc2MzAxM2MzNmZjZjVjNmUxZTA5YmMwYzJjYzQzMTYyM2RjMGM3IGxlZ2FjeS10cnVuaworMTk0MzEgYzkwNGE0MGUxNGVhOWZmM2U0NzIwMTMyODZiMTVhMjJhMjMwNzdmNCBsZWdhY3ktdHJ1bmsKKzE5NDMyIDg2NTczODRkY2M0YWIyODNlZGQzYTcyZDM3Y2RkM2I4NjNjNzZmMGYgbGVnYWN5LXRydW5rCisxOTQzMyAyYzY0MTdlZjQ2Mjg1MGJkZWY4NjdlYWE2YmEwYzlhMjM4NTA5NjExIGxlZ2FjeS10cnVuaworMTk0MzQgZWUwZGQwYzc5NjRlZGJjYTA2NjNhMjY0ZGE1YTA2NzQ5MjkyNmExNSBsZWdhY3ktdHJ1bmsKKzE5NDM1IDQ3NzJmZTJkYjJjNDZjMjQ1YWUzNDg1YjgzNjkxNWNiZDU3M2I5MWEgbGVnYWN5LXRydW5rCisxOTQzNiBiZjljMjRiZWRhN2Q1NzUzNGU5MzBmNjY5OTU5OGU3MDJmYjdlMzA3IGxlZ2FjeS10cnVuaworMTk0MzcgNWYzYTgzNTA2MTVjOGI5Y2U2Mzg3MjM0NjhhMjliNTMzYzY3NzE1MyBsZWdhY3ktdHJ1bmsKKzE5NDM4IGY2NTQ0NjhiOWFlOGE5YTA1MWFhYTI4ZGNlN2VmMThhNDYzMTJmZjcgbGVnYWN5LXRydW5rCisxOTQzOSAwNjhjYjg0OTRiN2IxZTY2MWZmMDM0MjI2OTk3ZDk3YzM5NmUwODMzIGxlZ2FjeS10cnVuaworMTk0NDAgYjQzOWVlZGEwMDgyOGYzYmYwZDZhZTUwNTFhNzJlZDY0N2M3ZTI4YSBsZWdhY3ktdHJ1bmsKKzE5NDQxIGE2M2RjNTliZTBmOTg2YTI0MmFiM2Y0NDQwODk4M2IwODhjMjMyMjQgbGVnYWN5LXRydW5rCisxOTQ0MiBkYTE1ZTVmNjg2NDRhOTYwZGViMGI2YzcyNTViNTlmZTFhMzlhNzVmIGNucmktMTYtc3RhcnQKKzE5NDQzIGUyYjJmZTdmYWJiODk0MzkwNDFlMWE1YzgyNDczNjc2YmQ4ZGQ4MTcgY25yaS0xNi1zdGFydAorMTk0NDQgOWQwOGMzNzQ3M2NiOTI2YWJmOTYzOWQ2NzY2NWYxOTY3NWRjMmVlNCByZWxlYXNlMjAtbWFpbnQKKzE5NDQ1IGMwY2RmODI1OTllMDNmMzk0Yzg1MjE2ZjBiNmNjZjE3ZGIyNWIxMDAgbGVnYWN5LXRydW5rCisxOTQ0NiA5YThlOTYxYjUwNWYwMzA2OTZkMDJjZjFjOGEyYzMwMjg3MDQxYjUzIGxlZ2FjeS10cnVuaworMTk0NDcgODE3ZGY5ZWZhY2JhZTc0MzAxNmY1OGVmNzcxZDBhZmVmMTBlNzRhOCBsZWdhY3ktdHJ1bmsKKzE5NDQ4IDNmNmMwNWUwNDA4MjZkYzcyMjlkNDNkYjM3NDE0MjQxNmYwMmQ4ZTggbGVnYWN5LXRydW5rCisxOTQ0OSBhYWUyYmI4YWMzNzM5ZTBjNThlNGYyZGY3YmQ1YmRjZTFhMzlhNjRjIGxlZ2FjeS10cnVuaworMTk0NTAgNWZhMjU1NDJiODk2NzVkNDJiMTVkOGRmYTU1YjZmNjYyMzJiM2M0NSBsZWdhY3ktdHJ1bmsKKzE5NDUxIDliYjJiNjk2M2M4MjVhYTkwZTVlZTZiYzBmNzkxMWJhN2NhYzU3ZjggbGVnYWN5LXRydW5rCisxOTQ1MiA1NmE4MTA2YmFmNjM1YWRhMjkwMTk0YjYxOGIwNWMxZDVlOTg4ZGUxIGxlZ2FjeS10cnVuaworMTk0NTMgYmE4NDQ2M2VmYzdiYzVjYmVlZmQyYTczMGE0YjhiOTEyNjhjZDIwMCBsZWdhY3ktdHJ1bmsKKzE5NDU0IGY4MTNlOTg3ZTY1Y2U0MGE4M2Y0ZTkzNjJjZjBlYmI0NTdiZWY2OTAgbGVnYWN5LXRydW5rCisxOTQ1NSBkZjdkNTJhZTIwZTRjZDA1MzYwYzhhMWU3YWEwOGNiOTgzNzlhNWVmIGxlZ2FjeS10cnVuaworMTk0NTYgNzRhZTgwZDkwZmE2Y2MyNjQzNjU5YTg4NjU5YzFmYzEwNDUyZGVjYyBsZWdhY3ktdHJ1bmsKKzE5NDU3IGIzNjI1MTMxNmY2YWVkYTZlM2I5ZmI1MWQ5NjA3ODhhYTEyZDNiMTYgbGVnYWN5LXRydW5rCisxOTQ1OCA5ZWY5NzhjNmYwMzk1NjUwYzk5YjcyYjhhMDExNGQ4MmIwNGQ5YjM0IGxlZ2FjeS10cnVuaworMTk0NTkgZmZkYzcxODViZGFiZDYzZTA0OTMwYjAxNTc2YThmOTI2Nzg5ZDBhYyBsZWdhY3ktdHJ1bmsKKzE5NDYwIDA4NTUxMTkxNjc3NjI2OTZjNmExOGE0YWU1N2NhZmUwODA2NDA0M2IgbGVnYWN5LXRydW5rCisxOTQ2MSAwN2ZmYjBjM2JkNWVlNjdjMThiZWI3YjIyMTQyZjQ1M2Q1NDBhZTMyIGxlZ2FjeS10cnVuaworMTk0NjIgZTEwNDM2NzI1NmYwMjAzNzU0ZDRmZmE1ZjczYjgwNzZlNDlkYzRjMCBsZWdhY3ktdHJ1bmsKKzE5NDYzIDI2MGYwMzNhZTdkZjM4OThiOTMzYjZmMmU3NWNjYWFjZjFkNDBlMGUgbGVnYWN5LXRydW5rCisxOTQ2NCA4ODVkNTQ1MjQ4ZGIzODA3OTMzNzE1MTAzYWMwMjYyYjNkOWY5OGJjIGxlZ2FjeS10cnVuaworMTk0NjUgMGI0NTVhNDI4OTY3Nzg3ZTA0Y2NmOGMzOGM4NDZhNDhjOTcyYzQ5OSBsZWdhY3ktdHJ1bmsKKzE5NDY2IDk2ZDg4NjhhMDAyODRkOTljODhlMzk0MjgyNGE3NjUxOWMyMDYwNjIgbGVnYWN5LXRydW5rCisxOTQ2NyAwY2Q4N2E1ZDFlZjk3NGVhZTdmMDFjMjk4YmVhOTQzYWRjNWZkNDZlIGxlZ2FjeS10cnVuaworMTk0NjggZWYyYmUxMmIxOGZlYTM5NjZhOTdlOGE2MjQ0YjM2NWQ0MDNkYjBlYSBsZWdhY3ktdHJ1bmsKKzE5NDY5IGIwNWI4YjZjMGI0MzA5ODljN2I3YjZkOGM0MzliNTVmZTE4NjhlMjggbGVnYWN5LXRydW5rCisxOTQ3MCA0NGVmNjQ0Y2I1MjZlZWI3ZmRjMmE0NGQ4ZTdkOGEwNGNjYWE0MTA3IGxlZ2FjeS10cnVuaworMTk0NzEgOTQxYTc2ZjM4NzQ3NDI1NjE0MThkYjlkYzQ2N2Y4YzE5ZGEwMWE4ZSBsZWdhY3ktdHJ1bmsKKzE5NDcyIGY0MjVkODUyMzQ4MGIwMWZjMzY0NjEwOTI5NTViN2FlNjhlMTY0YzEgbGVnYWN5LXRydW5rCisxOTQ3MyA3MzMwNjk0OTExOWMwNGQzNThhMTA1NjhhZTBkMjNjNmY1ODQ5NjAxIGxlZ2FjeS10cnVuaworMTk0NzQgZjBmNTcyOWQ2MDNmYjU5ZjhhOTZmNjczNzE1OTgzMTZjNmI2ZWQ5NCBsZWdhY3ktdHJ1bmsKKzE5NDc1IGUzY2ZmYzAzOTRiZmI2YzA0NTJiNTg2NWM4Nzc3MzJkNmQ2MzA2NDUgbGVnYWN5LXRydW5rCisxOTQ3NiA4ZWYyNDY3ZjAxOTFiYjYxMDA0YjMwMDZhZGYwZjlmMDk3ZjdlZDQ5IGxlZ2FjeS10cnVuaworMTk0NzcgZjY4ZGJmZmZmOTI3YmZhNTY2ZmQyYzNhOWU4YWVmYjViNjEzMGFkOSBsZWdhY3ktdHJ1bmsKKzE5NDc4IDIwZTUyZTVhNDA4YTE2ZjAyODY2YTZmYWUyMjg2M2QwNDJhNGExZDYgbGVnYWN5LXRydW5rCisxOTQ3OSA4ZmY0Y2Y0OTI2N2VjNTQ3OTAxYzBkZTZmNjUyMThmYmIxMDBjNmJlIGxlZ2FjeS10cnVuaworMTk0ODAgZTJhNjM1ODQ1NjZmODJkYjkzN2UwYTMzMWExYjNiZGY4YjI1MjdlNiBsZWdhY3ktdHJ1bmsKKzE5NDgxIGUwNTBiOTRmMDRkM2M5NjcyNzkzZWY2YTQ5Y2QxODNlM2ZmOTM3ODggbGVnYWN5LXRydW5rCisxOTQ4MiA1NjkxNDg4NGFhYjYzMDFiNDc2MjRlZmNiMDYwOGQ2YzVjMTcyMzE5IGxlZ2FjeS10cnVuaworMTk0ODMgNGUyZDFjNmYyOTA0ZGE2NGJlZjNjNWQxMjkxZGY5YWQ4MDgzOGNlMyBsZWdhY3ktdHJ1bmsKKzE5NDg0IDFjNmJhOTQ2ZDhmYTBiZTJlNDQwMjEzZmI0Y2QzYTc0NWY1ZDQxOTggbGVnYWN5LXRydW5rCisxOTQ4NSBjOTU4Njc4NzIwZmRhYzQyNDY1NDVmNWE4OTg1NDVkZGIxMzAyZDA2IGxlZ2FjeS10cnVuaworMTk0ODYgOTE3ODBlYWQ4YzI1YjI3MjdjNDIyY2I4ZjdlYTVmYzRlNmUyNjRjOSBsZWdhY3ktdHJ1bmsKKzE5NDg3IDNhNmI0YTAwM2ExN2U0YjlhZjZmZGZiMWQzM2E3MzQ5ZTk5ZjcyMmMgbGVnYWN5LXRydW5rCisxOTQ4OCA2N2EwNjY2ZjExZTMyMzA3MGY1MzI4NTIzMTFmYWQ3NWMzNDE2NjA5IGxlZ2FjeS10cnVuaworMTk0ODkgYzlmMjNmODBmYzkzMGQ4NWZiMjlmYTMzZWM4NDRlYmNhNmE0ZDI5OSBsZWdhY3ktdHJ1bmsKKzE5NDkwIDYxMTc2ODM0OWRkOTBmMzlhZGYxMDljZGNkOWUxYWUwOTNlYjBlMWMgbGVnYWN5LXRydW5rCisxOTQ5MSAwNjNkNWM0ZjZjZTU4YjM0MDg4MTFjOWQ0NzdhZjc1OGE1MjkxMzYyIGxlZ2FjeS10cnVuaworMTk0OTIgYzg3ZTcwMTdkNjZiMzNhODhhYmQ5OWUzOTFmOTU5MzViZDcxYjhlNCBsZWdhY3ktdHJ1bmsKKzE5NDkzIDk2ZTljY2JmMTY1ZjZhNGUyMDE1Zjc5ZDE3MTQ4MmYzYTkwOWIxNTkgbGVnYWN5LXRydW5rCisxOTQ5NCBjOTUwOWQ4NGYzZGY3ZjhlYjBmNjM4YzgyODIzMDFlYjY4NDRhNjZmIGxlZ2FjeS10cnVuaworMTk0OTUgZTM4MTQ1MzA2MjMxMjYzNWE3NDE2MzMxOTY4N2I0YzVhOTk5NmVhMiBsZWdhY3ktdHJ1bmsKKzE5NDk2IDA1NjRiMTM0YjU4NDAzNTUxYmRiYTFkMDk4Y2EyZjQ1MGNmZDk5NDYgbGVnYWN5LXRydW5rCisxOTQ5NyAyMTcyNzc1ODM0NjhkMDU2ODg0ZTRmM2I1YWQ1YjU5ZmZmYzc5ZTIyIGxlZ2FjeS10cnVuaworMTk0OTggZDQ1NTliNzQ1N2EwZTMyYTMxNTI1ZGFhYjQyNjk5ODIxYzFkMGMwZSBsZWdhY3ktdHJ1bmsKKzE5NDk5IDJmYjY0OTgzOTY1ZmYyMjNhZWEyNTIzOTFmZjM0Y2ExYjUzYTRhZTggbGVnYWN5LXRydW5rCisxOTUwMCBlMzBjMTk3NTMyYWExMjZhNmRhYTRiMDdmYzY5ODM2YTA2MWJhYzkyIGxlZ2FjeS10cnVuaworMTk1MDEgNTlmNGY2OTYwMTAxNjhkYTE4YTliYTlhNzkwZDJmNGUyZTNmN2EzZCBsZWdhY3ktdHJ1bmsKKzE5NTAyIDc5NTY4YzBkM2U3N2E2OTM2MmIzNTc5Y2NmNWI0NzUwMzU2NTBhMWYgbGVnYWN5LXRydW5rCisxOTUwMyAxNDZkZmU3ZTAzMzgyY2ViMjE5MGNiMTljZTliN2Q2OTE5ZDMwZTdjIGxlZ2FjeS10cnVuaworMTk1MDQgN2QxZTdiNmVjODM5NDUzNDg2ZGIyYWNlODFlZjFmNjI1OTJjZmU5YyBsZWdhY3ktdHJ1bmsKKzE5NTA1IDM4ZjY5NzJkYzhiNDE3ZmYyYmFiOTg1MzIxNTVlYzhkOTFjYzYxNjQgbGVnYWN5LXRydW5rCisxOTUwNiAxNWYwMDY0Yzg0MDA5NmVmZGM5YWRjNTU2ZjE3MzVjNzU4YWExOTFkIGxlZ2FjeS10cnVuaworMTk1MDcgZjdhOTc3Njc3MWFiMGVmZTFkNjcyMDkyZTkwMDEwYmFhYTVkMjNlNSBsZWdhY3ktdHJ1bmsKKzE5NTA4IDdmMTI3YmUwN2M1MDk1Nzc4MWUxYzM4MWVkZjc3YjM3OTA5NmE2MTAgbGVnYWN5LXRydW5rCisxOTUwOSBkNmQ1YzExZjc1YTkyMmU5NWNlMmI5Mzc0Y2MwZWFiYmQ2MDFmODc4IGxlZ2FjeS10cnVuaworMTk1MTAgYjllNTQ4MWY2NDRjMzBhZjc0NjM0ZDZjN2U1ZDQ5YzEzNmYxNGFlMyBsZWdhY3ktdHJ1bmsKKzE5NTExIDcyOGMxMTU2MjE4NzJmMTcwMWNlZTNkY2ZlN2YzNTNiOGYzY2RjYzIgbGVnYWN5LXRydW5rCisxOTUxMiBhNTFiOTk2MWYzYmJiMGMwNjA1ZGE3ZTEyZDBlOWNiNGVmMDc5NDdhIGxlZ2FjeS10cnVuaworMTk1MTMgOGQ4NTA5NjE3ODc0MWY1OTQwODg3ODg4OGUyOGJkMjBmYTJjODgyYyBsZWdhY3ktdHJ1bmsKKzE5NTE0IGQzZThiODgwNjUxYjdkNDczNTRlOTg5OTFiMTMzZjEyYzRiMzIxOTIgbGVnYWN5LXRydW5rCisxOTUxNSA5MTUyMWM1MmIxZGI1NWFmYzZkNmZjY2E0MjA0ODM5YzM5YWE0ZmRmIGxlZ2FjeS10cnVuaworMTk1MTcgZGE5YTRhMTY5OGYxZjY4NGU3OTY5MWI5NjY0YjdjNjA3YmJlMWM5MiBsZWdhY3ktdHJ1bmsKKzE5NTE4IGI5ZmU4YmQ5ZTVmNGZiYjA2ZDI5OTY3YWIyZmU2YjBjMGRiZDY3ODUgbGVnYWN5LXRydW5rCisxOTUxOSA1OTIxYjEyOWYzNTA0ODQzNWMwNmVjNzQ5ZDlmOGQ0NzA2MTFhZmQ4IGxlZ2FjeS10cnVuaworMTk1MjAgMWQ3YWVkMDc2OTY0ODEyNmE1ZjYwNGM5M2MxODJmNzFkZjhiYjMwNSBsZWdhY3ktdHJ1bmsKKzE5NTIxIDdmOGU4MTdhYzQyM2M0NTY5Zjg5MTU2OGI3ZDEwMWE3ZTIwYzc5ZWMgbGVnYWN5LXRydW5rCisxOTUyMiA3OWQ1MzM5MzRhYzFiMzA5NWUwYzRmOWE0YjczMWUyMWMwZWZmZjI4IGxlZ2FjeS10cnVuaworMTk1MjMgMWE1YTQ0MTc3MmZmNjNhYTlmOTE4YzFiZTllYjU5YmIyYjA2YTFiYyBsZWdhY3ktdHJ1bmsKKzE5NTI0IGRlZWM2ZmE4MDQ3MTA4MzdkMTc2ODEyZGY4ZTk1YWQxOTMyODk1M2UgbGVnYWN5LXRydW5rCisxOTUyNSAwMDQ5Zjc3YjM2YzYyMzIzN2U3MWQyOTY5ZDFiZTE2NzdmZjA5ODdlIGxlZ2FjeS10cnVuaworMTk1MjYgNmFmNDE1ZjBjMDFlYjAwZDIzNzI0OTY1Y2UyMzllNzAyM2U2MTY3OSBsZWdhY3ktdHJ1bmsKKzE5NTI3IDg5YzFjY2VmNWNlODM2MGUzYjQ2NjQwM2EwM2Q3MTA0NWY1MjY2MTggbGVnYWN5LXRydW5rCisxOTUyOCA5NGEzODQ0M2Y5OWJiNTcwNTU1Y2IxNzFkNTQ1YTk5Mjk5YzUzNTVlIGxlZ2FjeS10cnVuaworMTk1MjkgNTc0NmQwYmY1ZjA0ZGY3ZjI1M2I5Y2IyMGY1NDY2MTU2ZjZkMjhjMyBsZWdhY3ktdHJ1bmsKKzE5NTMwIGRlMGU4NzUyZDViNzJjZTc0NTBjZjQ4NTUwYzM4M2IxMWEyZDMyMmUgbGVnYWN5LXRydW5rCisxOTUzMSBlOWZjYjQ2YzFmMmNhY2JjMzk3NDZkNWU3ZjU0ODM2YWRlZjYyMWRiIGxlZ2FjeS10cnVuaworMTk1MzIgNzI1MjM4MjkzODY5Y2M1YWM5ZjY2NWE3MGM3MTQ2M2FlN2VmMzc5OSBsZWdhY3ktdHJ1bmsKKzE5NTMzIDU3YTk3MjJjNTg4ZDRkYTJiOGE1YTBlODkxZjkyYmZkNTdjNWNkNjEgbGVnYWN5LXRydW5rCisxOTUzNCA5OTBmYTI1Y2RlMWNjZjE1NjhjODY5NDMwYThkZTY2M2VlZjIyYjAxIGxlZ2FjeS10cnVuaworMTk1MzUgYThhMDBkZTAyNGU3MzgwYTlmZTg0ZGNiZDcyNWYyYTdjYjU2YjlhZCBsZWdhY3ktdHJ1bmsKKzE5NTM2IDhiY2MxMGRiNTYyZTRmOWZmOGUyMmYyN2MxMzU4ZDBmZDdlMGQxYmEgbGVnYWN5LXRydW5rCisxOTUzNyAwZDNhZThmMDg0OWQ5MmE1Mzk3ZTFlNDhjYTg4ZTdiZDY2OTM0ZjY4IGxlZ2FjeS10cnVuaworMTk1MzggNWJjZjljNDliNmU3OGM0NWZiNmVhMGU3NzJjN2JhZjE5MjFiYjBjOCBsZWdhY3ktdHJ1bmsKKzE5NTM5IGY0ZTk3ZWMxZGM5YWI2MmU2MTUyZWZkY2EyODhjMjc0OWE2OWZmZjcgbGVnYWN5LXRydW5rCisxOTU0MCA5NjNmOTVlYjc2NDZkYWExODgxOGE0OTFmMzEyNjBlZTYyNDQzZDg2IGxlZ2FjeS10cnVuaworMTk1NDEgMjk0YmExNmIwZTg4YTQ3NjNkM2VhMDdiNTgxYTU0ZDRhNWVhODVhYyBsZWdhY3ktdHJ1bmsKKzE5NTQyIGI5NTVlNzQ5NTVkNTRjOTU4YTY5MjIyNzkxNzE4MjJmMGJkMTk4MzMgbGVnYWN5LXRydW5rCisxOTU0MyAwNmFkNTA1M2Y0MGEwNjJjOTA3Nzk3ZTUwM2MwYjEzNWJlNGZmODg5IGxlZ2FjeS10cnVuaworMTk1NDQgZGI0ZmM4MmFhNDRiYTliNTNiNjg0YTY4MGNmYjVhZmFhMTI1NTBjYiBsZWdhY3ktdHJ1bmsKKzE5NTQ1IDE3ZWQ2MWZkNWI2NTQwOTMzZjM1OTZjNzRhMzdjMGIwOGQwYTJhODEgbGVnYWN5LXRydW5rCisxOTU0NiAyNmFjYzI0NDVmMzczNzMyZjE3ZGQ1MTgyYWMwZjJlMWMwNjFhYTI5IGxlZ2FjeS10cnVuaworMTk1NDcgM2NiMDBjYmU3NDU1MDg0ZTcyMWU5MWNjYWE4ZDM1NTNmNjQ5YWMyMCBsZWdhY3ktdHJ1bmsKKzE5NTQ4IGQ5NGZlYTU3ODM0YzMzYTAxZGFiMDBjOTEzOGRjYjc1ODA3NTYxMDUgbGVnYWN5LXRydW5rCisxOTU0OSBmN2FlMGQ5MzdjZDA3NDMxYTMwMGM3MjMzMDlmZTgyNjIwYTM2NDE1IGxlZ2FjeS10cnVuaworMTk1NTAgYTZmMDgwZmU1MjUxMWY5Mjg2YWEzMzUyODcyZThkOTBmMWZmNDYwZSBsZWdhY3ktdHJ1bmsKKzE5NTUxIGEwYmFmNGNkODM1Y2YyZjQwZGI5MTU0NDY5MmNiNjkyYjA1ODRlNWMgbGVnYWN5LXRydW5rCisxOTU1MiAxMDJmZmUxNjExZTBmODQ3NDlkOGZkZmMwMmI4ZjhhZWQyY2EzYjg1IGxlZ2FjeS10cnVuaworMTk1NTMgNmViYjE0YjE0MWFkNTFiOWNjNGI4OGYyMTdiOGRiM2IxODNlZjA4OCBsZWdhY3ktdHJ1bmsKKzE5NTU0IDczNmJjZWVjYTNkYmQ2M2FmODMyODhkYjJiYmIxNzZmNzE3ZGE0ZjUgbGVnYWN5LXRydW5rCisxOTU1NSA0MTM0YjU5NzIyMTljZmJjOWVmZTYzYTc1NzMzYmI4MDU1ZjA5MzU1IGxlZ2FjeS10cnVuaworMTk1NTYgNjYyNjZjNDZjY2ZkY2Q2MmFhOTdhOGVjYjNmMmQ2ODdmNmE2MTJmNSBsZWdhY3ktdHJ1bmsKKzE5NTU3IDJhODZkNTE5ZjgwZTVlODg1MjEzN2NmOWRlYmM4MzU2MzdlNDNmZDMgbGVnYWN5LXRydW5rCisxOTU1OCBkZTVhOGRkMWM2ZjI0NzU2ZmE0M2E0MTYzYTBjN2YzMWNiOWM1ZTgxIGxlZ2FjeS10cnVuaworMTk1NTkgM2JkZDU2NWM3N2JkZGRkMjI4MDRmMDczZTE1OTdlZjJiNzVmZGFhYSBsZWdhY3ktdHJ1bmsKKzE5NTYwIGUxNGM1ZjM0ZmEwNTg1NmE1NDEyY2E4NWQwMzJhNDE5MmIzYTk0ZGEgbGVnYWN5LXRydW5rCisxOTU2MSA1NjQ5MjdjNTU3NDI1ZjhiZjU4Y2RiYWNkMzg2MmRhYjQxNWY5OTRjIGxlZ2FjeS10cnVuaworMTk1NjIgYzAyYTlkYjU2ZmUxNWQ1YjA1MzI2MDNhNDI1Y2Q5YWFmNzIyMWM1YyBsZWdhY3ktdHJ1bmsKKzE5NTYzIDFiNDAwYzg1NGEyYzJmZmU0MTg5ZDI4NGVlNmYyOTNkYjY0ZDhiOTQgbGVnYWN5LXRydW5rCisxOTU2NCA3MzM0YjJjZWRkYThlNzUwYmUyZWI1MzQ4ZDBiN2U3YzE5YzdhMGQzIGxlZ2FjeS10cnVuaworMTk1NjUgZDJhODQxNGExZWFiM2QxZTNkODVkMjhkNmM3NGUzNDJkNDllZmFhNCBsZWdhY3ktdHJ1bmsKKzE5NTY2IDYwYzkwZmY5YzJmNzhhZDZkOGU4MzhiMjM0YTA3MTgxMzQzYTg4YzYgbGVnYWN5LXRydW5rCisxOTU2NyBmOWY0YzIzM2VlMDM3Y2Q1MzRjNTY4Y2UxMDY1NzAyNWE0ODczZDI1IGxlZ2FjeS10cnVuaworMTk1NjggODE3MjkwNmM2ZGM4ZmIzNzg2MTU4OGJiYmMwZWE2ZTZhNWE0N2E5ZCBsZWdhY3ktdHJ1bmsKKzE5NTY5IDA0Njg1OTZlMzAxODc0MDA4ZDA3ZTZhN2E4YTM1ZTAxMGVlOGU4YzYgbGVnYWN5LXRydW5rCisxOTU3MCA5MzJhMWY4ZDkyZjcwOTE3MmMyN2Q2YTlmOGU0YjJjZDcyNThkYmJkIGxlZ2FjeS10cnVuaworMTk1NzEgNjE3Y2I0MGNiNzRiOGY3NDIwMDFkMTY3OTMzYmUyMTIzZWVmZmYzZCBsZWdhY3ktdHJ1bmsKKzE5NTcyIDk2OTZjOTVkMDliNzQyNGNkMTIzZDQwYmU4Zjk5N2FlMWI3YzAwZjEgbGVnYWN5LXRydW5rCisxOTU3MyA1Nzc5OWYwMTNhYWQyNTRhOGY4OWRmNmI2MTRhOGI0YmQ5NjBlODQ0IGxlZ2FjeS10cnVuaworMTk1NzQgMWNmMzZlYjVhMjVjMGY1NjAyZmNlMDczZmM0MzYxYzhjZDk4ZTc2OCBsZWdhY3ktdHJ1bmsKKzE5NTc1IDU4OTA4YmI0N2NjYWNhZDdhNjE3MGRkMGU4MTVkNzYzZWQwZGU4MTYgbGVnYWN5LXRydW5rCisxOTU3NiAyYzFmOGQzYmJhMmY4MWViYjUyN2I2NjRkNTIxOTA5NzYxZTk1OGFjIGxlZ2FjeS10cnVuaworMTk1NzcgNjM0MWY4ZDkwOWFjNWY1NmMxYzJmNzRkNmY5ZGEwNjIzOWI2NGQ5MyBsZWdhY3ktdHJ1bmsKKzE5NTc4IGU0YjQ3YjQzOTNjOGFkNGQ2YWNkMjVlMjhmODFiOTNmODQwMmEyNzcgbGVnYWN5LXRydW5rCisxOTU3OSA2ZDFmZDkyNDRkYWRhYWJlZjJhOWVlZWUyMTZjZTcxMTE2NWZjYjdiIGxlZ2FjeS10cnVuaworMTk1ODAgM2U5Mzk2YWM0YmEwN2U0ZGNkOTg2MDQ1NTlmOTY0YzE1MjQ0Mzc0OCBsZWdhY3ktdHJ1bmsKKzE5NTgxIGVmNjRkYzY4NTIwZmRiOTkyZmFlNTJkZjk0MzQ3ZDZiNWVkZmEwOWMgbGVnYWN5LXRydW5rCisxOTU4MiBhMWQ4YmI2ODY1OWE0NzQzN2VlZjcwZGY3ZGQyMzE0NDljMzA4NWUyIGxlZ2FjeS10cnVuaworMTk1ODMgMDFjMjQ3MGVlYjJlYTAzNDE1ODc2Y2EzN2M1NDZkZGZjM2JmN2Y5YSBsZWdhY3ktdHJ1bmsKKzE5NTg0IDg5YzEyNjg4N2RmMDkzZTBkMzdiNzU0OTAyYWU4M2FmYWI2Njg4NzYgbGVnYWN5LXRydW5rCisxOTU4NSA0MDdkNDAyMmNjOGMwNDI4YjE1NGZlOTZhNThlNTBkMDNlMWRjNDA1IGxlZ2FjeS10cnVuaworMTk1ODYgNGRiMGZkZGI2OTE3OGRiZmNmZDdiYTFhYWYzOTNkNzYwOTA0NzVjMCBsZWdhY3ktdHJ1bmsKKzE5NTg3IGNjMzM4YTVjMTZlNWM0MjAzZTRmZTMxZDE2NTE1ZjMzNWUxMTQ4NmUgbGVnYWN5LXRydW5rCisxOTU4OCA1OWYxYjU3YmM5MDk5OGYwNzQ5NzY4NmNhYzY2YTUyNTcyMjlkZjIzIGxlZ2FjeS10cnVuaworMTk1ODkgMTIwNjIxYmQzM2ZjYTU5YTEwMjZhMTZiNGJkYTViNDE2YjNjNjc1ZiBsZWdhY3ktdHJ1bmsKKzE5NTkwIGQxNzBjMWU3NzJjNTUzYTliNTg5NmI2YTRhMTRkZWY1ZDdlNDkzZDkgbGVnYWN5LXRydW5rCisxOTU5MSA1ODNhODEyYzQ1Yzg4NjEzNDU1NjdhNWNlN2NiOGMxYjc1ZDQzYWJiIGxlZ2FjeS10cnVuaworMTk1OTIgODAwYjAwNGFjYzcxNzgwZTZkOTkzZDMyYmY4MTQzNDNjYTkxNTkyNiBsZWdhY3ktdHJ1bmsKKzE5NTkzIDI1NmUxNTk5ZDhkOTZjM2JiZDc0N2JjMzYxZmY1YTBmMTQ2OWI0YzMgbGVnYWN5LXRydW5rCisxOTU5NCA3NDE0NWFiMWZkYzViZDlkZjUwM2ZhNjc1YjY0OTkyYmM2NjViM2Q1IGxlZ2FjeS10cnVuaworMTk1OTUgZTgxZGRhNWQzN2M0YjFiMDYzMDIwNjM5OGQ2YjUxZjQyNTBlOGUyZSBsZWdhY3ktdHJ1bmsKKzE5NTk2IDg2Yzc2ODNiNjA2YTkwYmVlOWNjOTA4NDBlYWI1ZWI2ODk0MjAyMTkgbGVnYWN5LXRydW5rCisxOTU5NyA4ZjAzNGJjZWU4NTZiYWRmMGY1NDY0ZjcyMzI3NjIyN2RlODA4YjE0IGxlZ2FjeS10cnVuaworMTk1OTggYzk5ZDE5YTk2ZTllYmJlY2Y2MmRjNzcxNTE2NmFlN2ZlZGI5YmMxOCBsZWdhY3ktdHJ1bmsKKzE5NTk5IDA1ZWMxYjA1NGI0ZDkzZmUwNmYyODllN2U4ZDM3M2NmZGQ3ZjZkMWQgbGVnYWN5LXRydW5rCisxOTYwMCA5Zjg2Y2JhNDc2NmI1NGVlOTUxNzAwZGQ4MGY1MGQ1Yjc4N2NiMmUwIGxlZ2FjeS10cnVuaworMTk2MDEgYjMyNzhiZjRmMDkxODIzNzEzY2ZjNDcxMTMzMjBjMmJiY2RhOWU3NCBsZWdhY3ktdHJ1bmsKKzE5NjAyIDM4NmNjNjk4YWVmOTU1NmY2ZGI0MGJiMWM0Mjc5ZWMxZWIyYzEzMDcgbGVnYWN5LXRydW5rCisxOTYwMyA4NDRmZGU2MDBhNjFkMzM4OWFhYjFiZjFkZWQ2ZjZhNDVjZjA2Y2ZjIGxlZ2FjeS10cnVuaworMTk2MDQgZGRhZmRiZjkxNDk4NWI4OTE0Y2Q4YTA0YTU3MDk5NGY2YTYzM2M3OCBsZWdhY3ktdHJ1bmsKKzE5NjA1IGMxMDA1NjEwMGVhNWRkMmZlODRkNTJjMmUzMjcwZDg5YmJlOWVlMGMgbGVnYWN5LXRydW5rCisxOTYwNiA4NDY2YmIzNzI4OWNkNmU3NjEwYWE4OGQzOGZlYTI0NzE0NTY4ZmJmIGxlZ2FjeS10cnVuaworMTk2MDcgZGI2MTg5NGIwZDZmYzNlNDAwZTQwMjQ0YzA1ZjhjOTg2ODQxMDhlZiBsZWdhY3ktdHJ1bmsKKzE5NjA4IDg1ZDJhZjk3MmU2MjMwNGMwYjkyMDYyMDk3NmRmYTNlZjc0YzJhMmQgbGVnYWN5LXRydW5rCisxOTYwOSAzNWY1N2M3MTcwYmQ0MGE3NWQ4ZGMzMmMyMTA1NGVmYjFiZjJhMzE1IGxlZ2FjeS10cnVuaworMTk2MTAgNGNhNjJhZmVjMDA0NTI1ZmMzY2I3MzRmYWFmNTY2MGNhMWU5MTI1MiBsZWdhY3ktdHJ1bmsKKzE5NjExIGI0MmIyMmE5MjI4Y2M4NjA1YTU5ZjkxNmIwNTQ5OWFiZDA4ZjA3MzEgbGVnYWN5LXRydW5rCisxOTYxMiBlMmEwZGI4MzllYjFhNDNiNDUyNjg2MzlkMmU1NWYyOTJjNDY3YzBmIGxlZ2FjeS10cnVuaworMTk2MTMgZTQ0NGE1MjcxMTgxMmNjY2M3MTBhOWFkYzAwMTU0MWM5ZGQzMWZiMiBsZWdhY3ktdHJ1bmsKKzE5NjE0IDk1MTg4OTNjYzhhN2Q2ZjVkMjI2ZWNkNzgwY2VjMjU0MmYzM2QwOWMgY25yaS0xNi1zdGFydAorMTk2MTUgMDZmNmYwZTFlMTA2MTZjOGI2NjM0ZDc3ZDFmOTk2Mzk5MTA1Y2MwMiBjbnJpLTE2LXN0YXJ0CisxOTYxNiAzYzBhMzUwMDIxMDhkMmUxMjA0MzFkNTRkNmMzY2JiZjUxNTdiNWFjIGNucmktMTYtc3RhcnQKKzE5NjE3IDZhNTViNjc3ZjUwOTY0NWYzYzg3YmJlYTk1MGNiMTk4MGVlYTE2MjAgY25yaS0xNi1zdGFydAorMTk2MTggNzgxNTkxOWUyYWY4YjYzZTBlYTc2MTY2ZGQzNWE5MGQwNTYzMWU3YyBsZWdhY3ktdHJ1bmsKKzE5NjE5IDkwZTkwYzkyMTk4YjdkYTYwOWU1NjBmYzNiM2ZjNzY3ZTUzNmNlYzMgbGVnYWN5LXRydW5rCisxOTYyMCBjYTFiZTdkMDA0MTNlOGFhYTVlMzljZjVhZGMzNDE2MGNhY2U3ODBmIGxlZ2FjeS10cnVuaworMTk2MjEgNWMzYWVkYzk2OWRhNDU2NzhjYzliMGVkMjBmMzkzNDg1ZThiMGU0NCBsZWdhY3ktdHJ1bmsKKzE5NjIyIDUxOTc3YWYyMzBmYTQ3YmVlOTQ4MTM3NjMxYzA1YjcxODI5MDcyZWQgbGVnYWN5LXRydW5rCisxOTYyMyAyM2M3YTAxMDhmNTkwY2ZjN2MxYjk4MWIwMmFlY2M1MzUxODU3YmUxIGxlZ2FjeS10cnVuaworMTk2MjQgMmZiNGQ2MjViZDM5ZjAxYTRhMmNiZjg3YmNkODliZTkyZDY1ZjBhMSBsZWdhY3ktdHJ1bmsKKzE5NjI1IDM0NDg1OTFlODI3NWU3YTc1YTQ3MmUwMjk1ZjRlZmM4MTUxN2NjOWIgbGVnYWN5LXRydW5rCisxOTYyNiBlMWZhOThmZDIzOWU3NWExM2YwOGY3NzVhODJhOWQzNTYyODRlNTA5IGxlZ2FjeS10cnVuaworMTk2MjcgODk5NjI4OGE4ODczYjFjNGU3ODE0YmJiMGE4ZWNkYTUyNDVmYjllZiBsZWdhY3ktdHJ1bmsKKzE5NjI4IDZjOTZlODMyOGQ1MzAxYjdiNmQ1YzE0MjFjOThkMTI2YTBiZTQ3ZDEgbGVnYWN5LXRydW5rCisxOTYyOSBhOGU1MWY2YjVjZmMwOTdjNWQ0ZmFiZDgyNDUyMTEzNWM1ZTQyODVmIGxlZ2FjeS10cnVuaworMTk2MzAgZmYxMjJjNDA0ZjY0MzFjNmY0NThhNGIxZmY3NzQ0ZDM5ODVkZmM5NCBsZWdhY3ktdHJ1bmsKKzE5NjMxIGRiNDhkMGIxM2IxZWQwMTIyMzcxOTA1NTgzOTRmMzc3Nzc1MzM0MzkgbGVnYWN5LXRydW5rCisxOTYzMiAyZjU4NWNiZTcxZGE1OWRlMzk3YTc3YzBhODVkNzA4YjVhMzEwMzQ3IGxlZ2FjeS10cnVuaworMTk2MzMgYTdjNTE0ZTE1MDAzNjcwYWFiOTFmY2M1OWQwNzNmZmEzNTMwNjgxMiBsZWdhY3ktdHJ1bmsKKzE5NjM0IGE4MDRjOTFjMTgyZTFjMTVlMTc5NmIxNTFmYzBmMDhjZDI3ZjM2NmYgY25yaS0xNi1zdGFydAorMTk2MzUgMGEzOGY0ZDk2NjdlY2VmZDlhMThmMWY2ODU4MWFiNjM3ZDYxOWUwNyBjbnJpLTE2LXN0YXJ0CisxOTYzNiBmNGYyODYwZDNhNWYzZTA5OThjOGNkM2E2ZmQyZmM2MDA2MjBkZTA3IGNucmktMTYtc3RhcnQKKzE5NjM3IGI0ZTQyZDI5OTYzZGQ0Y2JkMmQyYzU2ZTkwZTgyOTFkYjIyZjJlZmQgcjE2MS1icmFuY2gKKzE5NjM3IDdlZTM3OGQ1YTQxZDJkODMxNmVlMzI2ZjgxODk5MjQxOWE0ODA0ZTIgcjE2MS1icmFuY2gKKzE5NjM5IDYzNDhjZDQ1OWVlNDllM2U1NTdlN2Y1YjUxMjdlMDc4YjMwZjdiMmIgbGVnYWN5LXRydW5rCisxOTY0MCA2ODBjODg1ZGZhY2U5MWI5NDYxNjJlYjU2MjJmY2YzY2U2ZTE1OTVlIGxlZ2FjeS10cnVuaworMTk2NDEgYjZhNTJlNDM4MzQ0MWY1YTMzMTQwMWJiYmQyMmIzZjk5ZGUxMzMzNCBsZWdhY3ktdHJ1bmsKKzE5NjQyIGQ0NDZlNGVjOWI3YjM5NzcwY2ZmN2ZhOTI5ZTRmNjliMzA0NjE4YTUgbGVnYWN5LXRydW5rCisxOTY0MyA5MDUwMTFlODc0MGM1NDU5Y2Y4YmIxYjg3OTIzYTA1ZjRkZDdlYmY5IGxlZ2FjeS10cnVuaworMTk2NDQgMTRhZmZiZDAzNzUwNmM0ZDk4YmM5ODA3NDBlMDJhMDY1NDYxYTlhOCBsZWdhY3ktdHJ1bmsKKzE5NjQ1IGIyMzUxNjBmMTM0NjcwODUxOWNlMjVmNTJhMTAwOGJmNjM1MTA4ZGIgbGVnYWN5LXRydW5rCisxOTY0NiBlNGQ5YmEwYWMwYjJjYTE0Y2IzNDE4ZDI3NmNkNDdjYTcwZmNmNzdlIGxlZ2FjeS10cnVuaworMTk2NDcgNjdlZDhhNjkwNWMzMzlkYThlNWE5YTE4OTFmYzYwNjVhNDRlNWJjMyBsZWdhY3ktdHJ1bmsKKzE5NjQ4IDM4MzlmMGFhMWU3Y2NlY2U4YTEyMDg3MzEzZjQ5MmYzNzc5ZWI3NDkgbGVnYWN5LXRydW5rCisxOTY0OSBhNDE4MmM2NzljNjFjNDQ4MjUyNDBmNjNjNGVhNDJkZmY1M2MzN2FjIGxlZ2FjeS10cnVuaworMTk2NTAgMjkxNWViMDdiZDI1YTM0YjlmZTg0ZWYzYzc5MTBhODE4ZWQwNjQ1OSBsZWdhY3ktdHJ1bmsKKzE5NjUxIGI5ZTVjMTIyMjEyZWYzNDc4NmIxMDliNTI4NDY5ODIxMWI3Y2Y3ZDggbGVnYWN5LXRydW5rCisxOTY1MiA2OGJkOTZlNDI2ZTMyYmIxYjk5MmJhMTFiZjEwMTJhZGZlOWI0Y2Q0IGxlZ2FjeS10cnVuaworMTk2NTMgZWIyOTkyNGEzMzcwZTFmYTgyMGFhYmI4MjJkYWVjNTY5NWM0NzNjMSBsZWdhY3ktdHJ1bmsKKzE5NjU0IGJmOGQyYjkyZWEwZWYzMjUxY2NhYjZjMzNiMGNhYzEwYzkyYjA4ZDYgbGVnYWN5LXRydW5rCisxOTY1NSA1YTEyMzBkZTQzNmE4NjA1N2Y3ZmQ0NTgyODMyMWY2MzFlNjJjODRkIGxlZ2FjeS10cnVuaworMTk2NTYgNTg2NGE5YzU4YzgxYzIyODFhNjE3ODU0ZDE5ZDdjZTRhOTExNjlhNSBsZWdhY3ktdHJ1bmsKKzE5NjU3IDRmZWVhOTliZTc3N2Y5NjI3YjQwZDg2OTgyYTcwYmY4MmFkN2NhNmMgbGVnYWN5LXRydW5rCisxOTY1OCA2MGZkOWQ0NTQyMDZkYTU3ZWY1ZjIzOTkyMjc5ZTM2ZDZhYzJlM2VkIGxlZ2FjeS10cnVuaworMTk2NTkgOTk3NzgwNmI4NjE3NGQ5NmRiNzc2MTMzOGU2N2E0YmM3NDI0NWM5MCBsZWdhY3ktdHJ1bmsKKzE5NjYwIDI2ZDNlOGVhY2VkZmFkZWU2YjkwOWE1ZTE0ZjRkYzRhNDJlNzc2MTMgbGVnYWN5LXRydW5rCisxOTY2MSA5NTE5Y2FkNmJmOWQ0YzUzYjZiMTgzZTM2MGQ0ZDIwYWM3ZjBhMTgyIGxlZ2FjeS10cnVuaworMTk2NjIgMDBmZWE0MTczMGNmNDNjNWNjODE4ODlmMmQ4NzIyZGQzNTUzNDBiZiBsZWdhY3ktdHJ1bmsKKzE5NjYzIGU5OTFkODg0M2FiNDdlOTE2YjljNGI0ZjZhM2E5MmU4MjE0ZWM2MWQgbGVnYWN5LXRydW5rCisxOTY2NCA2N2JhZDlmMjBiMjljMTc5M2VlOWFjNzFmY2ZlOWJiMjUzMzc4NzFlIGxlZ2FjeS10cnVuaworMTk2NjUgYTg5Zjc4M2MxMzNhNTAyODg4ZmU3MGYzMmU3YzE0MzE1Njk2MDZkYyBsZWdhY3ktdHJ1bmsKKzE5NjY2IGRhZTM5ZWJiYzAwNDFjYzE1YmUyY2ZiNWI4NjNhNzY4ZTE5M2JlNTQgbGVnYWN5LXRydW5rCisxOTY2NyA3ZjhmN2JlYmQxZjY0Njc2NzlmNzJlYTI5OGEzOTExYWQxOGZkZjljIGxlZ2FjeS10cnVuaworMTk2NjggMjlhYTgzMmI4Nzg3NDc4NjZkNzhmOTgwMmRjYWRmYzA2NGYzZmJkNyBsZWdhY3ktdHJ1bmsKKzE5NjY5IGI4MDI0M2Y3Zjk3Y2JlNmE3ODY0MDVkYzg5YzU5YTE4NDhlZGY4YzggbGVnYWN5LXRydW5rCisxOTY3MCBhYzE4MGM5ODIyOTUwMDFhN2U0NjYyNTQwY2I4ZTQzYjVjNjE1NGQ2IGxlZ2FjeS10cnVuaworMTk2NzEgM2MyMTQyZjA3NmI0NmZlMmFiMmJkMDQ2NWY5NTVjNGZkYjQ3YWJhNiBsZWdhY3ktdHJ1bmsKKzE5NjcyIDI1OGRjYWZlMmQwYjhkYzZiY2VjMTZlMmEyMzJkOTE4NzdhMDI2OGUgbGVnYWN5LXRydW5rCisxOTY3MyAwOGQ5MzcxMDdmZTZjYzIwOTViMThhNjU0OTNjOGRkMjRkOTI0ZjVkIGxlZ2FjeS10cnVuaworMTk2NzQgZTAwNjJlODlkOGY0MjdhNWZhODhlNTBmZTUxMzVhNmU5MmJmZWQwYSBsZWdhY3ktdHJ1bmsKKzE5Njc1IDJjOTE4NmU0MGIzMDc3OGZkMDcwMWIxNGE3MzQxYjJhYWYxMTYzYWEgbGVnYWN5LXRydW5rCisxOTY3NiBhODY5NTA1MTk1ODYzYzg3YWVmMjAzNzMyY2ZkZWVlYzEzYWY1MDU3IGxlZ2FjeS10cnVuaworMTk2NzcgNDQ0NThmZTk0N2RkYjA1NTQ1Y2Y4YTg0NmZlOGIyNTc4Y2JiNjU5YyBsZWdhY3ktdHJ1bmsKKzE5Njc4IDgxNTY4NzlmZTYwZDFlMmRhYjMwNzk2YjkyNDg5ODZlZDMxOTIwNGEgbGVnYWN5LXRydW5rCisxOTY3OSA4Mzg5NWI0Y2UwYmJmMWVlZjVlNDcwZjNjNmNkYmUzNDZkM2VmZDdhIGxlZ2FjeS10cnVuaworMTk2ODAgYjI1ODVkOGZkYjhiYmY0NDIyNWNmNzJkZjYxZGY4OTUxMTQzZWEzNyBsZWdhY3ktdHJ1bmsKKzE5NjgxIDc0ZmQxOTU5Y2Y0NGVlMmIzZmMwMjE2ZDAyMzcwNmQxNWIzOGZiMmQgbGVnYWN5LXRydW5rCisxOTY4MiBhZTdkNzIwN2RhNDg4MDM2ZTJmNzE4ZmRhYThiZTlmNzZkNzk4N2Q5IGxlZ2FjeS10cnVuaworMTk2ODMgOGJmMGM0OWZjZTEwMWFiYTkxNzk2YjRlMDQxODhhMTA4MjVlYzAzMyBsZWdhY3ktdHJ1bmsKKzE5Njg0IDUwZDkxNTllZGFhYjY3NmJiZmYyZWU3NzRlMmIyNmU0M2Y1ZjM5YzkgbGVnYWN5LXRydW5rCisxOTY4NSAxZDFiZjY4MTNlZTU2OTg3OWRjNTA3NjkzMTlmOWIzZGNlNmM4MGFkIGxlZ2FjeS10cnVuaworMTk2ODYgNTgwYWQ2ODU0NDVmNTE4M2E2MTYxYTVkY2M2MjQ5NDNmM2U3YTUzNyBsZWdhY3ktdHJ1bmsKKzE5Njg3IGMzZmIwNDRkN2U2ZjFhYzhkNjA2MTk2M2E3YmJhYjU1MjI4Yjg2NzAgbGVnYWN5LXRydW5rCisxOTY4OCA0ZWFkZGY0NzhlOTdhNDYzYjc3YTk5MTdhNzNmNmFhMGZhMDllOGY0IGxlZ2FjeS10cnVuaworMTk2ODkgYjJjZmY1NzA1Nzc1ZTI2OTkzOThjZGRjNzkxNjEwNTExMzEyNmZhMyBsZWdhY3ktdHJ1bmsKKzE5NjkwIDc2NTgwMWRlMTUxMjA4M2Q2YTQ5NjBjMGFiYmNkM2ZlYzVlNTkwYTAgbGVnYWN5LXRydW5rCisxOTY5MSBmZmNiM2NmZjk0Mzk0ZDA1MjMyNjMxNTBhNTUyNjRmZDFmZDFmMzMwIGxlZ2FjeS10cnVuaworMTk2OTMgZmQyYTg2OTc2OWIyNDliODc2NzMxMzlkOWUxNjRlZTE3MjAyODU5NCBsZWdhY3ktdHJ1bmsKKzE5Njk0IDUzZThlYmQxMTYyMGQ0NWMwOGE3Mjg0ZDczMTU1ODI1ZGJhNDY1NGMgbGVnYWN5LXRydW5rCisxOTY5NSBmNTRiYWU4NmEyYzZiY2M2MTZiZTBjZTJlZTdjODExZjcwZTdjZDk0IGxlZ2FjeS10cnVuaworMTk2OTYgZjc5NmE4NzcxMTdlNzE1YjM0MWYxYmE3ZTAwZGMwNDI0ZTIwM2YzZSBsZWdhY3ktdHJ1bmsKKzE5Njk3IDBmMGVmYzJkMTJmMTQzYTY4NmVjZTc2NjhjMzVjMTc4NTM5NWFlZjUgbGVnYWN5LXRydW5rCisxOTY5OCBhY2JlNzRmM2E3ODZmMmY0NTc5YzZmNzg0M2M2YzJjN2UzOGQxNmVjIGxlZ2FjeS10cnVuaworMTk2OTkgZDRhMzE1ZTQwOTRjNDg3MWRmNDMzZDBmNmY2NjFiMjFiYjAyMDllNiBsZWdhY3ktdHJ1bmsKKzE5NzAwIDUxY2Y0NTFmYWFlNDYwMTk4Zjk3MDQ2YzBiZjU0MDUwYmMwMWNkZTAgbGVnYWN5LXRydW5rCisxOTcwMSBhOTU2OTM0OTFlY2FhZjcxMmRlYjc4ODY3MmU3ZmEwZWNjM2YyNDQ1IGxlZ2FjeS10cnVuaworMTk3MDIgY2U0NzQ5OGEzMTU4NTk3M2JhN2QzYzk1NWYzMjc5ODA0YmQ5OGFjMyBsZWdhY3ktdHJ1bmsKKzE5NzAzIDNiMDUyMTJjMTYxNjAyNTU3MDM4YWM4ODgwZTY0ZjhiMmQwYzZjZTEgbGVnYWN5LXRydW5rCisxOTcwNCA2NzMyOTA1Njg2ZDQwZTgxY2JmMDgxZDI5ZDhhZTdkM2FmMDFlZTg4IGxlZ2FjeS10cnVuaworMTk3MDUgZjUzNzBlMWUyMzkyZTZlNDJhZDQzOWE5ZDYxYTU5ZTA1ZDFkMWNmNSBsZWdhY3ktdHJ1bmsKKzE5NzA2IDI3ZjA0ZDcxNGVjYmM1MzZjZTdhZmRmMjNlYWUxZmQyNmI1YTNlMTkgbGVnYWN5LXRydW5rCisxOTcwNyBiNDYzYWNkNmRhMjIyOTllZDFhMDcwZmU4ZjJiYmI3Y2NmMjllZDJhIGxlZ2FjeS10cnVuaworMTk3MDggYmJkZWI2ZDRkZWExNTJmYzM2YTUxOGFhMjk2ZjljYzdmMWZkMzEyMiBsZWdhY3ktdHJ1bmsKKzE5NzA5IDUyZmUzNzdmMDdmMmNlMTYwYjAzMjVmMGFlYzIyNDA1NzM2ZThmOGQgbGVnYWN5LXRydW5rCisxOTcxMCA1OTAyYjU3OTRhMTdlYjdmNzMwZmYzODZmMDIwMmNjYjQzZjNmOTM2IGxlZ2FjeS10cnVuaworMTk3MTEgZjI5Yzc2Njg2NGNiNWEzODhmMzQyNzdlNWI5N2NmOGVkMjhhNjA4MSBsZWdhY3ktdHJ1bmsKKzE5NzEyIDBlNmEzZGE0Zjk1NjEzMDUyMTY2NWFiNjBhOGNjYmIxZDk4NmZiYTMgbGVnYWN5LXRydW5rCisxOTcxMyAwOWY2YzEzNzIwNTY5OTM3MDg4NmVmNmM3YzY2ZjFhYzc5YjU2Njc4IGxlZ2FjeS10cnVuaworMTk3MTQgZTFiMWU2OGNiZDhjMTViODFjZTkyMWU0ZGRmNmZlODhkMDMxNDY4MyBsZWdhY3ktdHJ1bmsKKzE5NzE1IDk1MGZjMjI2MWRhNDYxYTEyODg5OWMyZTRlMDFmOWM3NGQyMTM5YTYgbGVnYWN5LXRydW5rCisxOTcxNiAzZDI5NjkwYTI0ZTg5NTUwNjRkMDczOWQ3ZTMyM2NkMjcwODg1MzQxIGxlZ2FjeS10cnVuaworMTk3MTcgNzZhNjg0ZmUzZjdmYzVkODM5MGRhMjRhMDIzNzg3Y2M4OTJhZjhlMyBsZWdhY3ktdHJ1bmsKKzE5NzE4IDMyNmE0ZGNiY2QyMmE3NjZmMzk2ZTQxMDRhYzE3N2FhZjc0ZjVlMDIgbGVnYWN5LXRydW5rCisxOTcxOSA4MTU2ZGViMGU2MmRlNWUxMjE1OTdhODk2YTVhYjgyNTA1OWRhZGM4IGxlZ2FjeS10cnVuaworMTk3MjAgMDlkY2Y1ZWJjZDgwMzJmYzliZTMwNzRjYzk1NzUzYWExZjlhM2NiZiBsZWdhY3ktdHJ1bmsKKzE5NzIxIDJkMmVlMzBmNDNlYWRkNWRjZDJkN2FjMDg3YWVjZDk4YzFlNzUwMzYgbGVnYWN5LXRydW5rCisxOTcyMiA5NWE3YzU4OThmYWExZGE3YTBjNGI2ZDM1M2ExZjgwMjhmYzU5NjYwIGxlZ2FjeS10cnVuaworMTk3MjMgNDg5NGJhM2VkZDBhNTM0NGY0YTE5ZjEyZTFmMzJmOGRjMTFmZTkyYiBsZWdhY3ktdHJ1bmsKKzE5NzI0IGE4NzcxYTUyYWJiMzdmZTA3YzljNWVlY2UxZTViODVmMjU2Y2M1NTkgbGVnYWN5LXRydW5rCisxOTcyNSAyZDRkYTZjZmVlNjE4MjlmODNiNGQ2ZGQ5ZGIzMjcyYTA0YzY3ZDlmIGxlZ2FjeS10cnVuaworMTk3MjYgZTVmMmFiODExZWMzZDgxOGJkNDY3YzY1Y2E4M2NhNmZkZjEwZjk4NSBsZWdhY3ktdHJ1bmsKKzE5NzI3IDg0Nzg0NDI0OGM2ZjkyNzcyOTY4YmU5NGM5ZjMwMzc5ZDEzNzUxN2IgbGVnYWN5LXRydW5rCisxOTcyOCAwNTc4NWJkZjI4OWNkMDYwOGEzMTUyYzFmZDViOTdlZDFhNjJiMDJjIGxlZ2FjeS10cnVuaworMTk3MjkgYmM4OWYxMTYxNjBiOTc0YWMyNjg4ODUzYTkzZDFmZDk4YmY2ODE2OSBsZWdhY3ktdHJ1bmsKKzE5NzMwIGVjOTA4M2FjMjZkZjdkZGMxYTdiYmJmN2I3YWI0N2FkMjMxNDBiM2MgbGVnYWN5LXRydW5rCisxOTczMSAyNmNlNmVmYzk3NDQyNzlhYzY3ZmJjMWJiMTk2ODVkZjk0YWJhMTljIGxlZ2FjeS10cnVuaworMTk3MzIgYzU1NzgwODE1YTZlNWEzNWQzM2FmMGE2NmI2YzA2NDQ4MGMwNWNhMiBsZWdhY3ktdHJ1bmsKKzE5NzMzIGIwYWFmOGY4NWQxMjhlMjQwYTYyZDg5NDEzN2FkMTZjNjZjMzE5M2QgbGVnYWN5LXRydW5rCisxOTczNCA4ZDdmNzJjYzJlY2M4MTQ1NGM0OTFkNjY5YmMwM2I4NThhOWMyODQwIGxlZ2FjeS10cnVuaworMTk3MzUgY2Q0MDg1Y2VlMzA5M2FhNWY0MTAyOTJmMzY4YWFhNmFlZmI3OGY3MCBsZWdhY3ktdHJ1bmsKKzE5NzM2IDlmYTIwMDk4MjU4MzNjODE4NjE4NTQ1ZjU2YmYzYzdmNjVlMmJlZjQgbGVnYWN5LXRydW5rCisxOTczNyA3N2E1NDcwMjk5ZGJlNGQyN2U0M2JhYzUxNDZkYmI3YmFiYjVkOTQ5IGxlZ2FjeS10cnVuaworMTk3MzggMTNjZGJmYjU5MWE0NzQzYTE3NTBiOWYzNGIxM2M0ZDYwMGNkOTE0MCBsZWdhY3ktdHJ1bmsKKzE5NzM5IGQwNTJkZGRiZmQ0NDUwYTExOTM1ZDIwMDA3Njc5ZThiNWFmMjg1M2QgbGVnYWN5LXRydW5rCisxOTc0MCAyNTE0ZmNmYTBmMDgyNTRmZjM0NWNmNWQyNDIwOTNjMzQxNTlmYzYyIGxlZ2FjeS10cnVuaworMTk3NDEgM2E0MTFkNDFlZWI0ZmYwNzA0ZDJlYjJiNDVmMWJlZWYzY2ZjZGU1NSBsZWdhY3ktdHJ1bmsKKzE5NzQyIDc5NzZjZjdmZDE5NjgzYjU4YTQ0ZTRjNjQzMWZhMjk1NmE2OThlYWEgbGVnYWN5LXRydW5rCisxOTc0MyA3ZGM2NmQ1YjEwMGVlYWZmMDljNTI0ZTg4NmY0MGExOTdlOGUxMDZiIGxlZ2FjeS10cnVuaworMTk3NDQgNDEyNjgwM2UxYTg1ZGNhZmRkZWExZWI2ZjU4NjU3MThkYTdkMmNiYiBsZWdhY3ktdHJ1bmsKKzE5NzQ1IGYzOTllNmE4OGY2NTg0OTU4MTYyMWM3NjFlMzgzNmY5OGM0MGIzMjcgbGVnYWN5LXRydW5rCisxOTc0NiBkNjc1ZDc1YWY4Mzk1ZWI4NGFlOGYzMmFiMWNlZDgwOTdkZWUxMzllIGxlZ2FjeS10cnVuaworMTk3NDcgNTI4MGU4NDM5ZDU1NjM4NDI5NDA0NTRiYTE3ZjdkNDlmOTBkMjIzYSBsZWdhY3ktdHJ1bmsKKzE5NzQ4IDlkMDE4YTNkNzk0NmFhNzFkMTk3NTk2MGUwNjBmN2M5NDA1YTY0N2IgbGVnYWN5LXRydW5rCisxOTc0OSA3OWJiZjdhZDBmYzE3OWIyNmM0ZGE0MzZlMDgyM2MxMjVlZGFjMjBiIGxlZ2FjeS10cnVuaworMTk3NTAgMTBiODQwNjBiN2YzOWM2NzVjZjhlZDlkODZiMmM3NDU1ZjNmZDZjMiBsZWdhY3ktdHJ1bmsKKzE5NzUxIDhkNzQ4NmE4ZDY5YWMwYjFhNWJjY2M4OWRlYzMwN2UzNjZhOTFhNzUgbGVnYWN5LXRydW5rCisxOTc1MiAzMGJhODgzNzY0ZWJiNGUxOTU0ZjYxYTcyOWMxZGM4M2RiMmI3YWY2IGxlZ2FjeS10cnVuaworMTk3NTMgMWNmNTI1MzZjMzgxZWQwZGMzMWI1YzZkYWVjNmZmYjZiMjY1OGEyYiBsZWdhY3ktdHJ1bmsKKzE5NzU0IGFiYWVhNDQzZTI4YzJmY2FiOTQxNGE0N2EyNmYxNjY2NTliMmM2YzUgbGVnYWN5LXRydW5rCisxOTc1NSBiZGNkNzk4NzM5MjRjZTY0MmIwYWMzZGJiMzA5NDVjZDk2ODVmNDlkIGxlZ2FjeS10cnVuaworMTk3NTYgODU5ODI5Mzg0NjYzYjM2ZDkwZjk0YjkwYTg4MWU2ZGZlM2ExMThhMCBsZWdhY3ktdHJ1bmsKKzE5NzU3IGFkNzM0MzczN2FlZTllMTJlZTc0NjJlOWEyYmE2ZDE4NjdjMWRiNmUgbGVnYWN5LXRydW5rCisxOTc1OCA3YjViNTc1NmIyY2FkMGUxZjE0ZTIzMzhhZGIwZmYyN2ViMmJhYTdiIGxlZ2FjeS10cnVuaworMTk3NTkgMWNlNzUxZmE2N2Q4MDZlZTdiNTQ5MjcwY2E2ZGY5MzcyNjU5OTIwMSBsZWdhY3ktdHJ1bmsKKzE5NzYwIGQzZjY0NjQwNGE0MzU3MmE1NmIwNDFjNzUxZGU4NzZjYjBjZTZjNzQgbGVnYWN5LXRydW5rCisxOTc2MSA2OGNlMzI4NjE2MjZmOGU2NDMzNTZmYzhlOWIxYzBmNWEzZTIwZTI1IGxlZ2FjeS10cnVuaworMTk3NjIgMTRkYmRlMWVjZGVhYjljMzM2Nzc1ODIwOTZkZTZjOTEwMjIzMjIyYiBsZWdhY3ktdHJ1bmsKKzE5NzYzIGZjZmI0NDJkN2IzNGUyOTY1MzA1OTRkZmMxNDY3ZmFlNmNkYzY3NzMgbGVnYWN5LXRydW5rCisxOTc2NCAwZmViNjM0OTAwOTM1YWE2YjM3NzRhMDRjZjkzYzQ0Yjc1N2ZlMWNmIGxlZ2FjeS10cnVuaworMTk3NjUgZjI4N2M2ODRlMDRjNDVlNjgwMWU5YWIxOWY2N2Y5MmU3ZDI5MWQwYyBsZWdhY3ktdHJ1bmsKKzE5NzY2IDgwNmM2YWUyMzEwMzI0NzU1NTdjMDg3ODc2NDUwODkwNjgxMjU3MmMgbGVnYWN5LXRydW5rCisxOTc2NyBmMjdkMzI5OWRmMzkwNjIwNmE5ZWNmZWYwYThlZjA5Y2EyNzllZjllIGxlZ2FjeS10cnVuaworMTk3NjggZjFjOGVhOTJlZTg1MmVlNGE3YWJjZjE5YzgwZDc1NjMwYjRkNjQ3ZiBsZWdhY3ktdHJ1bmsKKzE5NzY5IGIzZDUwNGJkZDk3OWZhMzZlNDBhNjEyNGI0MGFkZDdlNjQxMjk2YmMgbGVnYWN5LXRydW5rCisxOTc3MCA4YWVjZGIyMjM0ODgxNzMwYTFkODExNDQ4YWJlMjM2MTdlN2M3ZDdhIGxlZ2FjeS10cnVuaworMTk3NzEgZmE4NGY5ZjQxMDkyMzExNmIxY2Q1Nzg3NzFlMDUwODRkOWU5ZDFlZCBsZWdhY3ktdHJ1bmsKKzE5NzcyIDc0YTlkMGE0MjMxYTVlYjBhMWIzODY0YjZlMTQyZjVlMDZiZjFmNDggbGVnYWN5LXRydW5rCisxOTc3MyBkY2VhMDkzODgzMzJjYWI4NTcyOTM0M2E4M2Y3NTI3OTdiYWUwNmUyIGxlZ2FjeS10cnVuaworMTk3NzQgMzIwZmE1MGExYTdkMjU1NjE4M2QxMTg2ZWUwZmExMDBmYjk2NDNiZSBsZWdhY3ktdHJ1bmsKKzE5Nzc1IDhkMWU4NDRmYmIxYWI1YWYwY2IwMTc2OTk1YWNkOTVlZjk2YzJkNzEgbGVnYWN5LXRydW5rCisxOTc3NiA1NzJiNjU0YmY0ZWQ1NGIwN2NlMzA2ZGYzNzIyNTAwYjllYzM0NjhmIGxlZ2FjeS10cnVuaworMTk3NzcgZjU1ZjM1ZGM1MzIwMWE1NDlkNGNjODk3OTYwOGZhZDAzZjk1NWU0NiBsZWdhY3ktdHJ1bmsKKzE5Nzc4IGU4Njg3NWYwNjliMTZlMzRkMDk2YjAzNzNiN2I0OGU4Njc3MjQ0OGIgbGVnYWN5LXRydW5rCisxOTc3OSA0MWYzZjRiMmZlNGE2NzYyYWIwMTA4NWJkZDc1OWRhOGZmNjE0ZTFjIGxlZ2FjeS10cnVuaworMTk3ODAgMGYwNzcwYTc5M2FjZDJmYjg1Yjk4OTRiOTIzY2ExZDZjMTExOTE3ZiBsZWdhY3ktdHJ1bmsKKzE5NzgxIGI3MzI0OWM4ZGUxODAxNjkzZDM2NGQ5OTEzMjZjMDI5ZDQ0ZjExZTggbGVnYWN5LXRydW5rCisxOTc4MiBmMWQ0NWQ2YzEyYTI4YzIyYTM5YThhYzE0ZmM3MzA4OWJjMTYxMWE5IGxlZ2FjeS10cnVuaworMTk3ODMgNmM5M2YxOGQzMjMzNDVlYWY2ZWI3ZjM3NDRkOGZkMTdlOGU1ZmNkMyBsZWdhY3ktdHJ1bmsKKzE5Nzg0IGZhODkwNmVjZGI3MDI0NTk1MGQ4ZWZkNzNlM2E2MGU1NjZmZDg0NWQgbGVnYWN5LXRydW5rCisxOTc4NSAyMDNhZDZmM2VmOGNlMTJlMmJmYTE5MmJjYmRmMzk5YTk5YTZlNGNjIGxlZ2FjeS10cnVuaworMTk3ODYgZGE2MzhjNDg0ZDA4YzYzZDY1NjU2ZWE1OThlNWRhY2NhMGIwMzA5NyBsZWdhY3ktdHJ1bmsKKzE5Nzg3IGE0NmExMzIwMWVlYjg4NDRjMTM5MmQ3MTJmMjBlNjQ1YWEzZTFmOTAgbGVnYWN5LXRydW5rCisxOTc4OCBmMDdmYTdmNTI2MmE5MmZkYzQ1M2U3YmQ4YTZjNjA0ZGY4NTMxYTM3IGxlZ2FjeS10cnVuaworMTk3ODkgZjI5MDI2NTkzNzRhYzg4ZTgyNGIyYjJhMWJiNDg3NWY3YzY5NmMxYiBsZWdhY3ktdHJ1bmsKKzE5NzkwIDQ5MzQxMDIyMjcxOTJlY2I2N2UyMmM3Y2E3OWM3MzUxNjQyMDYwZmUgbGVnYWN5LXRydW5rCisxOTc5MSBiMDQ1NmQzYTBmMWYxZDNlYzYzMmRmMTZiMGIzYWViMGZkZDg5MzM5IGxlZ2FjeS10cnVuaworMTk3OTIgYmIyNWYyYjdiZGFlMDNiOGM0MTYxZmVmYTM3ZjBkOTZhOGMwNTUzOCBsZWdhY3ktdHJ1bmsKKzE5NzkzIDZkNTk4MTdjZjc5MjhlYmViNTM5NmJlNDlmNGJmZDExNmIzOGVjNGUgbGVnYWN5LXRydW5rCisxOTc5NCA0OTFmYjQ5YjQ2ZTZmZGVkOTY1ODU4MmE5YjRmODllYTVmY2RlMmNmIGxlZ2FjeS10cnVuaworMTk3OTUgMDA0OTg1YTVhZDVhODA2M2E1OWE4NTE4MDk4ZDU5NzIyOTE2OTY5YiBsZWdhY3ktdHJ1bmsKKzE5Nzk2IDQxNTIwNWIyY2RiMmRkY2YyNTFhZjhhNDRmOTZiZjQ5ODcxOThmNTYgbGVnYWN5LXRydW5rCisxOTc5NyBiNWRiMjNjN2E4MDRhMTkyYmFiZGIwY2ZlYWYyZWMyY2M3OTk0MGMwIGxlZ2FjeS10cnVuaworMTk3OTggNWFiNGRhNmFkNGZjN2JjODg0MGM2YmRmNDZiNzZhZDRlYzY5ZGI5YiBsZWdhY3ktdHJ1bmsKKzE5Nzk5IGIwYTk4MmM5MWFmMDEzM2YzNjVhZDRmMjYwYWI2NDY3NTg4M2JkMzIgbGVnYWN5LXRydW5rCisxOTgwMCBmYWE3YWFlYjAyMTBkZjkxOGMwY2YyYjhlYTE0ZTMzYTYzYTNlZjc5IGxlZ2FjeS10cnVuaworMTk4MDEgM2M2NWJhYmYzMjJmYjNjNWZhZDM2ZDcyY2ExNjg4NmYzMjhiOTRkNyBsZWdhY3ktdHJ1bmsKKzE5ODAyIDI1NDhkMWE3MDE4MDAyZjVhNjY2MWVkY2Y0MmJmMmIyYzkyZGUyMDUgbGVnYWN5LXRydW5rCisxOTgwMyAwMmUwOTdmNzJkNDdiMGEzYjVjOTM1Mjg0NmE5ZDVmYWQ2MDNiODNkIGxlZ2FjeS10cnVuaworMTk4MDQgM2EyZThhM2VkZTQ4MTkzOTQ2NjU3ZTc4YzNlNDQwYjc3Yjk2ZDRmMSBsZWdhY3ktdHJ1bmsKKzE5ODA1IDljOTIxYThlZDNhNzIzYjg0ZGJmOWQ4ZjkxNzY4ODI5YWRiOWRkZmYgbGVnYWN5LXRydW5rCisxOTgwNiA1MmEzZjgyNjE3YzQwYzdlNGZlMWYxZjVlZjljOTgzNjc3MjUwNGY0IGxlZ2FjeS10cnVuaworMTk4MDcgYWJjOGM2YzAyNWNlODM3MTE5NjQ3MjliZWE2ZGYyZjk4ZTFkYjE2OCBsZWdhY3ktdHJ1bmsKKzE5ODA4IGIwNDZhMzFhZjJlMDZlODNhMTMyNzNlNzcwOGZiNjM1YTQ2MTQxMmYgbGVnYWN5LXRydW5rCisxOTgwOSBlYjRlZDlmMjNkMjA2OThlNTFhNjE1YzZmOGRjZTRmMGZhZjkxZDZjIGxlZ2FjeS10cnVuaworMTk4MTAgOTQ2ODNjODVlYzc2ZTZkMTYwNGMwNjg0YWZkMGY1MzdkN2MzZmQzYyBsZWdhY3ktdHJ1bmsKKzE5ODExIDhjNjRkZGExZDI2ZjMwZGVhYTNmMGU2ZTYzODNhN2U3Y2ZiNjdmNDAgbGVnYWN5LXRydW5rCisxOTgxMiBiODI1OWM3ZmY0OWM5YmRlYjU4ZDYyNmFhYWU1YjM1ZDdhNDc5MDdlIGxlZ2FjeS10cnVuaworMTk4MTMgNWQ3ZTBlYTMxODE4MGNmYjA0YmU5NzE4NzdjYjdlNmU4MjFmZTdiMyBsZWdhY3ktdHJ1bmsKKzE5ODE0IDA5YWVjNjY4ZGYzYWUyOGMyNmZlM2RhOGFiNDViYjU1NzBhZjA0OTIgbGVnYWN5LXRydW5rCisxOTgxNSBjMjhkZmU1Zjg3YTczYmUxOTA4Yzg3ZTE5OTFlNjJhN2E0NWViZTZiIGxlZ2FjeS10cnVuaworMTk4MTYgYTAxNWFlZDNhMWFjMTA5OGZlMzRlNDU5MTY5MTFjMDY0ZjRkMzU0MiBsZWdhY3ktdHJ1bmsKKzE5ODE3IGFmODEwZjA4NDI1YmVmMjU0OGI1ZmZiNTA4NzdhYTgxNjIwM2E1NWYgbGVnYWN5LXRydW5rCisxOTgxOCBlOTQ0NWM1MWZmMjlmNjkyMzE2NjcwNWVjMjYwYTNkZmY0NDZlMjE1IGxlZ2FjeS10cnVuaworMTk4MTkgNGJhYTVhOTU1NTMyYWU1NWE4ODFkNWNiNDUwNDYxMzI0OWRjODE4NSBsZWdhY3ktdHJ1bmsKKzE5ODIwIDhhNDY5NmQ3Zjc0YzBjMjFlNmVmZmZjNjM4MmJkMTc5ZDlmZjUzMDYgbGVnYWN5LXRydW5rCisxOTgyMSAzMWUzMDJlOTRkYTg4MWIyZGUzYjdkYTgyYjhjNzc3MmZkMjU0ZjAxIGxlZ2FjeS10cnVuaworMTk4MjIgYjI1MTMxYmM2ZWM3Yzg4MjU0NzE1Mzk5OWU4ZGVhNGVmNTcwOWRlMCBsZWdhY3ktdHJ1bmsKKzE5ODIzIGZhYTUyZjM4NGFmNjUyNDhkYjRiYzI2MmZiMjA3M2ExODMzMTM4MTUgbGVnYWN5LXRydW5rCisxOTgyNCAwOWJhMTVlZTE5NjFiYTMzNTdkYTkxOTcyYzI0ZTYxNWEzNmQ0NjgyIGxlZ2FjeS10cnVuaworMTk4MjUgYjZjMGNmYjFlZmVhY2NjNjY5NWI2NjM1YmY2YTAyMmIxZTFmNTk4NiBsZWdhY3ktdHJ1bmsKKzE5ODI2IGRmZWIzYWU2OTJjMTExOWVkNzA5MTQwOTAzMjAwYjQzNTM4NjljN2UgbGVnYWN5LXRydW5rCisxOTgyNyA4MzJlNDA5MDllZjQ4NGY0YWRmMTEwODg5OThiYzkzNmY4MGI3Mzc3IGxlZ2FjeS10cnVuaworMTk4MjggOWZkMjBjYWU3Yjc2Njc1NGM1NmM3YjI0ODQyZWZlNzhjNTQ1MDU0OSBsZWdhY3ktdHJ1bmsKKzE5ODI5IGM3YzUzNTM2MTQ2N2Q0OTAxZDE5NWJiOWUwZjkyMmQ2OGNkNzc3YjkgbGVnYWN5LXRydW5rCisxOTgzMCBhY2Q1MDYwODQ3MjdlNzM0ZDg3YjMwMmNjZmI2ZjZjZjhmZmQxOTBlIGxlZ2FjeS10cnVuaworMTk4MzEgYTFiMzQ0NmM3MjBmMWE0ZmY3NThlMmUxNDFhMGYwM2ZiNzgzYWU4ZiBsZWdhY3ktdHJ1bmsKKzE5ODMyIGNkNmU0YmM5OTI5NWI4NTVmZjQ3NWE4YzdmMThlZjcxMjgxNWE4NTEgbGVnYWN5LXRydW5rCisxOTgzMyBlNTNiMzI4NDUyMjRlNzkzMTk1MjE2ZGE4NjZiNjRhZmM1YjQ4NWVjIGxlZ2FjeS10cnVuaworMTk4MzQgOTEyMzFiYmIzODQyZjQ3NmYwOGM2ZTNkOGFiZjBlMGE4NTBlMDk0NSBsZWdhY3ktdHJ1bmsKKzE5ODM1IGI4MzIwYTI2YzA2NTc2ZDczOGE1YzA0NGRhM2Y0OGFmMGE2MWQzMjEgbGVnYWN5LXRydW5rCisxOTgzNiAwZDRlODA2YzQyY2NiZDNlYzJiYTM5MzM1OGVjZmFjOThjYTg5ZTU5IGxlZ2FjeS10cnVuaworMTk4MzcgNjAyZWIwNDZiM2U3ZDM0NDQ3OTcyMjExN2MxZTgxMDE4ZGYzMjQyOCBsZWdhY3ktdHJ1bmsKKzE5ODM4IDJjMjkwZDRjM2IzODJmN2E4N2ZiNTg2M2NkNGY0YTVmMjFkODVmZDggbGVnYWN5LXRydW5rCisxOTgzOSA2ZjQyYzFkNTVlNmFmMDY4NDAxZjFhNDRlMGY1Mzk0MDgxMGM5ZTE0IGxlZ2FjeS10cnVuaworMTk4NDAgZWMyOTg5NWVlNDBjZmQyNjExZjlmNTRhNzA0MjczZTZhMjYzMjIwMCBsZWdhY3ktdHJ1bmsKKzE5ODQxIDM4ZTE3YTA4OTQ5MjkwNjRmMjc1OTgwMWNkZmY3M2QwNTEzMzQ2ODMgbGVnYWN5LXRydW5rCisxOTg0MiA2YmJlMjY4ZjhhZDg0OTE4Y2Y0YWFiYjcyNzI3MDAxOGEzNDdiMzdmIGxlZ2FjeS10cnVuaworMTk4NDIgZDBjODMwZGI1ZTY4ZWRkNGFhYTM0MDEyMTZlNjEwYzlmZjE0NTgyNiBsZWdhY3ktdHJ1bmsKKzE5ODQ0IDlhOWVhZWNmMGZkODI5MjZiZDIzMDBlNjFlYjlkMmNiZWNkNDk5NzAgbGVnYWN5LXRydW5rCisxOTg0NSA3MjNjZjVlMzc4ZTU3ZGJkMmZhZWQ4N2M3YjdiMWQ0NWM1OTY5NmZjIGxlZ2FjeS10cnVuaworMTk4NDYgNjQ1MzJiYTVkY2VkNWRmZjNlNWM1Mjg5NWNkMmZmM2Y1YzgyOGQxZCBsZWdhY3ktdHJ1bmsKKzE5ODQ3IGI4M2EzYjc4MzE0ZWI4OTMxOTkzYTVlZmNkY2MyNThmY2FiZjJkZjYgbGVnYWN5LXRydW5rCisxOTg0OCBkODg4ZGM3YmVhMzJlYmY1MzE4MjY1OWJkOGM0NjFmZTI2MGFlYjJjIGxlZ2FjeS10cnVuaworMTk4NDkgMmRmZWUzMzNhNjUxMDA2Mzc4MDI2ZGZhNmI1MzM4NzgzMTlkMDRjNiBsZWdhY3ktdHJ1bmsKKzE5ODUwIGE3OWViYmE2NDY2YTYzN2JmMzU5ZmI4MTZiM2JlNjFmOTU3MTU3NTcgbGVnYWN5LXRydW5rCisxOTg1MSBlNmM1YmM1YmVhYjNhMDdjNzFhNDVjZTNlNDBiZmQ2YTBlMTA2M2U2IGxlZ2FjeS10cnVuaworMTk4NTIgMGI0YzU3YTI1OTc3ZWRhN2E5NzU2MWVjMWM0MDE2ZTJjZDFjOTljNiBsZWdhY3ktdHJ1bmsKKzE5ODUzIGQ1ZTUzY2Y5ZGU3YzMzMDkzNjJmNGM3ZGUwNjc1MTc1MTc3MjEyYTYgbGVnYWN5LXRydW5rCisxOTg1NCAyYjkzNTRmNDg1MmZhYWIwNWZkODM3M2MyMGE2M2ZmODkzZGI5NDY4IGxlZ2FjeS10cnVuaworMTk4NTUgYzFlMTk0OWYzOWZlYTIxNTJlNWJmZjhhMWVhYTkwYjczZWNhMzM5YyBsZWdhY3ktdHJ1bmsKKzE5ODU2IDY3MDJjMGRmMTZiNjY4YWEwM2RlNzZmODRkM2ZhYzhiNTFlMWE1ZWIgbGVnYWN5LXRydW5rCisxOTg1NyBjNzlkYWI2NTJlYTg0NDEzYzhjMzRiNzVmOTFkNjhmYTNhY2Q2YzYwIGxlZ2FjeS10cnVuaworMTk4NTggZDZlY2U3YzNiMzVlYWY2YTVlOWQ3ODg5NjBmYmZmNjUzNzdkZDk5MiBsZWdhY3ktdHJ1bmsKKzE5ODU5IGY1Y2I2ZDY2YTk3N2JkZTMzMDg3NDRjMDBkMTIxNjI3MjkwMjU2ZWIgbGVnYWN5LXRydW5rCisxOTg2MCAxYTVhMDNlMmRhNzM5NjllMjI2NTVmZWNkNmUwYzUzZGE4ZjQzODFjIGxlZ2FjeS10cnVuaworMTk4NjEgYzVhNDE3ZThkODRjODM2Mzc0YTI5MGMxZjA4N2RlZjgyYjkxY2M0ZiBsZWdhY3ktdHJ1bmsKKzE5ODYyIDYxYzlmYTk0Y2U5ZDlhNGFkOWExODBjYTU4NmJlNDljMGRkMTAxYjEgbGVnYWN5LXRydW5rCisxOTg2MyAxYzk1YjZiMDZhZTMxZDI3YTVhYjQxNTg2OTUyYWQwNzlhNjY4MzBkIGxlZ2FjeS10cnVuaworMTk4NjQgNDE1Mjg1NWVmOWE4YjYzNWE4NDEwMTBkZmUzNDk1N2FmNWUxMWZkOCBsZWdhY3ktdHJ1bmsKKzE5ODY1IGE5NzVmMmMxNTRjMDYwNDU5OTkxM2I2M2NlMWYxYTExZDc2ZWFkNTggbGVnYWN5LXRydW5rCisxOTg2NiA3YzdjY2ZiNWRiM2VmMTM3NWJjNjcwN2Q4YjdmZTZjMmNjMzI0Yjc2IGxlZ2FjeS10cnVuaworMTk4NjcgMWRkYzcwZGQxZDFiYmFkMDMxOTg4YmMzNTM2MTYyMTQ3ZTgwMTE2YyBsZWdhY3ktdHJ1bmsKKzE5ODY4IDg2MzE4NzMzZmU3MDkzNTlmYTcxOTljZGE2YmYxMWFlNjQwZjRkMWUgbGVnYWN5LXRydW5rCisxOTg2OSA0NTljOGVmMGEwMTAzNTk4MzQ5YzA1MzNkY2M1ZmQ1NjMyOTRmZDQ2IGxlZ2FjeS10cnVuaworMTk4NzAgOTEwNGVkMzhhYzA1MWM5ZDUwOTFhZGMyZDE5OWJlOTRmNTc3MDVhZCBsZWdhY3ktdHJ1bmsKKzE5ODcxIDQxYjkyNDllNGQ0ODYzYmQ1YWEyYmFjNzYyYTM1ODc5MTViM2NhMTAgbGVnYWN5LXRydW5rCisxOTg3MiA4NmZkNzIzZjI5Mjg2YTJjM2ZkNzM2NzM3N2Y3MDdiZjg4NTUyMTZmIGxlZ2FjeS10cnVuaworMTk4NzMgNGY5ZGI4MzQ4MjVjYWEwYzNmZDhiMTZlZDY3ZmI3OWFjZTk5MjE1MiBsZWdhY3ktdHJ1bmsKKzE5ODc0IGVlZTdkMGM1YWU1OTJhZjRkZTk1MGZiNzJiMzYyMDk0YzE4YmE1MjMgbGVnYWN5LXRydW5rCisxOTg3NSBlNTllZGE1MjVmYzFlN2I1MmI3NDVlYjNmOGYwYTBmY2RjMGJjZDdjIGxlZ2FjeS10cnVuaworMTk4NzYgMmRjM2NhMWQ4OTBjNzczMTdlNjM0Y2RiNjU1YTAzM2MxOWExNDQ3NSBsZWdhY3ktdHJ1bmsKKzE5ODc3IGYzZmIwNWJmZWVlYjEzNWM2ZTkyNjZmNjEwYmJlMjk2N2EyNWQyNzggbGVnYWN5LXRydW5rCisxOTg3OCA1MzRhOTNkODJlZGNhMWFkZmIwZThlMGNlNjZhODAxOWQ2MjczMDM4IGxlZ2FjeS10cnVuaworMTk4NzkgYjdiMDQ4ZGExNjczNWYwNGMxNjBjMWQ2MTIxODIyYWI2YTE1YzcyOCBsZWdhY3ktdHJ1bmsKKzE5ODgwIDU0ODcxNmUyZjFmMTNjMzhiOGI1ZmFkODJhZTAwZjgzOGUwMzY0NzAgbGVnYWN5LXRydW5rCisxOTg4MSAzYjQ5NGM1YzYyMzRkZWFkMTFhMzViODY3NjEzOTgyNGQ0M2M4YjY5IGxlZ2FjeS10cnVuaworMTk4ODMgNGMxN2NiMmM2MjFlOWJkMDlhYmI3YmIyMDkwNjY2MWRlOWEwYTJlOCBsZWdhY3ktdHJ1bmsKKzE5ODg0IGExZGQwYjA3MDlkMjA2M2ZmM2ZmNmNlN2Q1MDdhYjA1NTkyNDZjYWMgbGVnYWN5LXRydW5rCisxOTg4NSA5OWRlNGJmMmI5ZTU1MTkzYjI4MGE3MGNhOWQwOWIyZWUwYTMyZWZkIGxlZ2FjeS10cnVuaworMTk4ODYgZDU2ZDc3ZjkzNzNiZGVmOTliYjNiZmY4MTA5ZDNmZmIyMjEwMzllMCBsZWdhY3ktdHJ1bmsKKzE5ODg3IGRiNTU2MDQzNTNiM2EyYTRkYTJjOTM2YzIxN2E2MzY2YTk4MTY1NjggbGVnYWN5LXRydW5rCisxOTg4OCA4ZWFmNzRhMTExZWJkOTIwNTk4M2FlODEyYTcxMTkzMzgwMWNmNzQ2IGxlZ2FjeS10cnVuaworMTk4ODkgZDE1YWNlMzIxMTAyNjZmNmUzZDUwMGJhOThiNGYwMjk5NTlmMjZkZiBsZWdhY3ktdHJ1bmsKKzE5ODkwIDZiZGY1NjNjNzYzYjNhNGQwMzM3NzBjOTdhNmE1MTVhM2E5M2RmNjcgbGVnYWN5LXRydW5rCisxOTg5MSAzYzY1MGQ5YzM4ZTc0ZWVhYzNmZTQwZjdiZmM2N2Y4MjdlNDVjNDk0IGxlZ2FjeS10cnVuaworMTk4OTIgMTljMmY1MGU1Mzk1NzFjNGVmOWRhNTcyYzY4NjY5MWI2NTY2YzE1YiBsZWdhY3ktdHJ1bmsKKzE5ODkzIDNmNWE1NGE4YTFmYjUwNTg5NjdhM2YwYjBkZGZkNzgwOWFhYWFjNDggbGVnYWN5LXRydW5rCisxOTg5NCA3YTM2ZjYyMDFjOTQwMDcyZDJmMzYxYWNiODAyYTljNDRiYmNiNGY0IGxlZ2FjeS10cnVuaworMTk4OTUgODk1NDZiZGRjMjJjYzBkZWVmMWI0ZGM2NmMyNjQwMjBjOWUzNDIzZCBsZWdhY3ktdHJ1bmsKKzE5ODk2IDk1M2M1MGYxMjE4NGFhZTJjNDAyMmI0ZGJiZDI2NzRiNDRlMWU1NGQgbGVnYWN5LXRydW5rCisxOTg5NyBmMGVmZGNkMjQ1MTJmYjhkNGI0YjRmMGUwNjAzMDc3OTBhYzRmYWEyIGxlZ2FjeS10cnVuaworMTk4OTggY2Q3YWM0ZDlhZGQwMjA3OWEyOGI5NzI4NjViZjdkYjkzODU5MmE0ZiBsZWdhY3ktdHJ1bmsKKzE5ODk5IGUyMWQ0YzIwNTY1ZDAwY2E0MjQ3MzM0NGE1Mjk4NGEzN2QwNmVlNmMgbGVnYWN5LXRydW5rCisxOTkwMCAzY2ZiYmNiZjcxMzRkMTE3YjgyMTM4MGZiMmI1NTZkYmE5ZGVjYTUzIGxlZ2FjeS10cnVuaworMTk5MDEgOTcxZmY2YjU4ZWRiZmI3ZTY2ZmI1MTRlZTI4MTQ4MTljOGMyZTBmMyBsZWdhY3ktdHJ1bmsKKzE5OTAyIGY0MTQ2Y2EwZjI5MjFlMjBiNGQ3NDJjNThmNzMxZjE4MTI4MDg1MDAgbGVnYWN5LXRydW5rCisxOTkwMyAyYTgwMTkxZDEyMDMwZTgzOTgxYmQwNzlhMDNiYmI1MmYxMzZmZTMxIGxlZ2FjeS10cnVuaworMTk5MDQgNTFjNmEyY2IwM2QxYjQxOWUxZDRhNmE3YTMxYTM4YjkzMzBjYzg0MSBsZWdhY3ktdHJ1bmsKKzE5OTA1IDY1YTYzOGEyNGY3ZTk1NGY0ODA3N2JiZWQzODU3MDc0YjYzMWM5N2EgbGVnYWN5LXRydW5rCisxOTkwNiAzZWM1MDA0MDNmMDEwZDhlZmQ1NDMwNzFjZWVlYTM5ZDFkMDI3YzU4IGxlZ2FjeS10cnVuaworMTk5MDcgYjQwYWIzMTA1NTIxZjE5NDVjZGRiNzVjOTZjYWFjNTMzMTMzMjkxYyBsZWdhY3ktdHJ1bmsKKzE5OTA4IDFlNThkNzgyYzA5YWM5ZjNmYzEzNWI5NTQwYzNjNzVjZDhjNTliOTMgaXRlci1icmFuY2gKKzE5OTA5IGQ1ODExYWY4YWNmM2RkNGUzMjhiZGJkMTZiNzI4MWM3ZGFhZjg0NDkgbGVnYWN5LXRydW5rCisxOTkxMCA1MzNjYzkwN2VkYmQyY2I2MTM3OWRkNzUwNDBmMDVhMDg3MjUwYjMwIGxlZ2FjeS10cnVuaworMTk5MTEgYmE4MWQ3OWRjM2EzMWRhZjU3MDFmN2ZlMjRmMmFmZWUzOWE0OTRkNSBsZWdhY3ktdHJ1bmsKKzE5OTEyIDdlMWU2NzI1NTA5ZTZjNTk3MWM5ZTk0ZDgyZTRkY2Y3OTQyZDQ3ZDQgbGVnYWN5LXRydW5rCisxOTkxMyBhZDc0MTc0NWNiNmMwOTQxNjI2ZmNhNTQwNGIzMmFlZWE0MmJjYTVlIGxlZ2FjeS10cnVuaworMTk5MTQgOGEzNDgzMDgzMTZkNTQ0ZmIwNjgxZWM0OTQ4YWQ4MTMyZDA2YzI3ZSBpdGVyLWJyYW5jaAorMTk5MTUgNDIwYTA3ODFiYjkyZjdjNjAxMWM3ZTg4YTY4MDIxY2MxZjY1NDRjZiBsZWdhY3ktdHJ1bmsKKzE5OTE2IGMxZWRiMTRmMDQzYmJiNzMyYTJlZDI0NzFjMDY5ZWFiZWU3NDJjZmIgaXRlci1icmFuY2gKKzE5OTE3IDQwYWQwYTA3NjFkMjRmYTY1NGIwMTViZWQ4N2IxNDBkN2M2YWYyMjggaXRlci1icmFuY2gKKzE5OTE4IGYzOTRhZjhjNTgwZjA1NTFlNDYwOTNhYWQyZDQ5NTlhNDdlNjkwYzMgaXRlci1icmFuY2gKKzE5OTE5IDYyZjc0YzI1OTc2MmRmZTVlNWVkMDQ4M2JjZDIwYjY0YTkyMTFkNzMgaXRlci1icmFuY2gKKzE5OTIwIDNmNTU4N2MyOGE1MGY5MTNhN2MwZDA1Y2JlZGRkMjg4ZTI4ZWQ2N2IgaXRlci1icmFuY2gKKzE5OTIxIGY0ZDQ5OGE5ZDk4OTAzZmJjMTY4MTAwMmRlMWNlMjhiZjAxMGJlMjcgaXRlci1icmFuY2gKKzE5OTIyIDUyNzk3YjRiMzc1YmM5NDI2Y2QxYjA3NDJlYWJkZDJlZTM5NWQzODMgaXRlci1icmFuY2gKKzE5OTIzIGQyN2Y4NDRmNmNmZTU2MmUyNzNhNThlMDk5NjQ4ZGNlMTY2ZmZmNWQgaXRlci1icmFuY2gKKzE5OTI0IDk4YTJiYjkwNTIwZDZjZjVlMjgzMDg4NzQ4YmI1MWZiODVkMDI4ZjEgaXRlci1icmFuY2gKKzE5OTI1IGFmYjMzZmVmMTRjYjhlMzZlNGNmNGJhODgxODRmMDUxZTJmNmE4YWUgaXRlci1icmFuY2gKKzE5OTI2IDNhODY2NmUxMjlhZGY5ZWI2ZTBjNmIwNDhkN2E0ZWFiYjQxNzkxY2UgaXRlci1icmFuY2gKKzE5OTI3IDIyMGI2MjczOGQ3NDI4MTMzOTAyYzQzZWQyZjUwMGFmNjE1ZjhmNjMgbGVnYWN5LXRydW5rCisxOTkyOCA1ZDY4YWZjNTIyN2M5MWIxYmYzZGYyYWE2OThjMTkyMTUxMTgxNjVkIGxlZ2FjeS10cnVuaworMTk5MjkgMTcyZDJhMjgxNmJmYTNhMGFmZWIxMjZmMGJlMDM1N2Y0Mjg5NDUxMiBpdGVyLWJyYW5jaAorMTk5MzAgMDk1YjgwZDJlNzg1ZDlmOTIwYzllYjI0NGQyYzcyZjY5ZWYzZTgyYyBsZWdhY3ktdHJ1bmsKKzE5OTMxIDJlZDdjNTg5NDNlNjExMmFmMjVmOWJhYTdkY2NmODRhNzFlOGU4YzQgaXRlci1icmFuY2gKKzE5OTMyIGM1N2ExYjY3ODFiMDRmYjQ1MTdkMzFlYTk4N2E2YWYzMDY4N2M0OTcgaXRlci1icmFuY2gKKzE5OTMzIDdiYjEyNTZiNTA2ZGI0NjRkZThhYzk5NDRjZmJiNGIxMWY2NTdiMjUgbGVnYWN5LXRydW5rCisxOTkzNCAzMzc1YTJhOThlNTY2ZmQxM2U0M2MyYmJmNjliZjgzN2FkY2QxNWRkIGxlZ2FjeS10cnVuaworMTk5MzUgZWI0MzY2YjNlMzkxYWE5MGMzYzgzNzEzNTU4ODkwY2E1Mzk1ZTExYyBsZWdhY3ktdHJ1bmsKKzE5OTM2IDZjYTcyZDcxNTM2ZTBjN2YxZGVlYjg0ZjY3ODU3MTgzZDQxMGM5MzUgbGVnYWN5LXRydW5rCisxOTkzNyBmZjc1YzM4MmYwZDMyZTBmNzJkMzkwM2RkYjFhODY5NmUxNDNkNTAyIGxlZ2FjeS10cnVuaworMTk5MzggMWY3MDBhNzIwNmIyZmM0NGZiM2E3MmVjMWQ5NGIxNjIwY2RhYTAxMCBsZWdhY3ktdHJ1bmsKKzE5OTM5IDVlNmFiOTM5YmRiY2M0ZGE2YzRlZGQwNGI5OTc5ZmM5ZThjNzcwOTEgbGVnYWN5LXRydW5rCisxOTk0MCBiZDQwYjEzZmE1YWJmYWI5M2RhNGEzNTVhNjg1M2FmZTEwNmIzOWJlIGxlZ2FjeS10cnVuaworMTk5NDEgN2ViNWE2ZThjOThkNDUwY2NiZDM4YjA5ZGNhZjY3ODVkMDc5ODE2YSBsZWdhY3ktdHJ1bmsKKzE5OTQyIDdhNDE3NWUxMDYyNmNmNzQ5OGMzOTI4ZDQxMWU1NThmODk3MzUxMzQgbGVnYWN5LXRydW5rCisxOTk0MyBkNThlOTNkYWZiOThjMmZkZGRmNTA1MWVmMzY4M2E2ZGEwNzEzYzYyIGxlZ2FjeS10cnVuaworMTk5NDQgNGU2ZjE0ZTc1NTdlOTkwMDU0NzZjNGEwOTBiZmYxMDgxZDQyZGQzYyBsZWdhY3ktdHJ1bmsKKzE5OTQ2IDkwZTQwNjRjYTA0NWVjZThkMWE5ODUwMmQ4MmM3ZjAwNmRlZDRlZGUgcmVsZWFzZTIwLW1haW50CisxOTk0NyA0MTVhMTliYjE2NzVjNDc5NGMxNjhjNjRlYjhkNDI1MmRiZmY1MWE4IHJlbGVhc2UyMC1tYWludAorMTk5NDggNzQzMjk2Y2UwNTJiMTg3YWEwNzQzMGFmZGVhNTQ2MDY4YzkzYTY4MCBsZWdhY3ktdHJ1bmsKKzE5OTQ5IDE0YjdhN2I4ZDU4ZGJiZjJhNGRlMmRiYjE4NGY2MjFlODViNzI0OTIgbGVnYWN5LXRydW5rCisxOTk1MCA3OTdlYmI3MDMzZDcyNmVmMGU5MjhlYzQ4YjlhYWVhNDE0MGY3ZWEwIGxlZ2FjeS10cnVuaworMTk5NTEgYTEwNjZlNWExMDY1Y2FkNDE2ZWY0YzFiYWZmOTg0YzFkZWQzNzAyZSBsZWdhY3ktdHJ1bmsKKzE5OTUyIGRjMGY2MmU3NTg4YjNlODk1Y2RkNGQ4MzQ4YjE2NDc2NmZjN2QyNTYgbGVnYWN5LXRydW5rCisxOTk1MyAzZjUyNzZjYmJjNGRhMjQ0YWFmYzQ4ZjkyOWVjNjVlMjFhYWY5YmNlIGxlZ2FjeS10cnVuaworMTk5NTQgYTU4MTRmNjIwZTg2ZDlhNzAzZDY5N2M5ZjAyY2RkODhjOGMxN2I5ZSBsZWdhY3ktdHJ1bmsKKzE5OTU1IDMzYzg2ODBiM2IzNTQwNDZkMjMyNGE4NmMxN2ZjMmFkOTk5MDUyYTkgbGVnYWN5LXRydW5rCisxOTk1NiBkN2UwMmI5ZWUxNzljMWU0M2FkY2ZkNGE5ZGFjOWQ3OTAyMjUwNzJkIGxlZ2FjeS10cnVuaworMTk5NTcgNTQ2OTIyZmE4ZDk5NDkwYTM0MDIzZDg2ZWY3MWExY2I2MGIyZWNhNCBsZWdhY3ktdHJ1bmsKKzE5OTU4IGRkMDRiYmZkNWE3NmNlZWFhMDUyZDQxMzFhMzJmOGNhYzFmMjg1YzcgbGVnYWN5LXRydW5rCisxOTk1OSAyYzFiZTc5MjRiMDRhZmFmNzRiYWM3YzNjNzdlMTIwNmJlNDU4MzZiIGxlZ2FjeS10cnVuaworMTk5NjAgMjZjZGVkNTljMTcyNTNmOTdjNjVlMTRkM2M3MjQ5MGUyZjNkZmMxMCBsZWdhY3ktdHJ1bmsKKzE5OTYxIGViNGE1ZmYwZjcyY2M4NTM3MjlkYzliZGYzN2ZjMjMzYTVlZDNkZGMgbGVnYWN5LXRydW5rCisxOTk2MiBlZTY3OTNhZTA2YzE0ZTAwMzg3MjhiNjRmM2NjZjdhMWVmZmRlMTIzIGxlZ2FjeS10cnVuaworMTk5NjMgYjY1MGQ3ZGFhNTkzY2M5NmIyMzMwMDZiMTBjMThjN2IzY2M4NjE4MyBsZWdhY3ktdHJ1bmsKKzE5OTY0IGI0NWFlOGM0NjdhYWY0NGQwYWViY2M4MjI3MTAyNDY3MTY1N2Q3NzQgbGVnYWN5LXRydW5rCisxOTk2NSA0MzE3Mjg4OWU4ZTY2YjE4OThjNWVmMjI3NjM0Mjk1MWI3N2JiNmFmIGxlZ2FjeS10cnVuaworMTk5NjYgNDYyYjhkZmU4NzUzOTFlOTYzMTYwOTYyN2NmNzk1Y2IwY2ZhODFkNCBsZWdhY3ktdHJ1bmsKKzE5OTY3IDgzMjNiMDk4YzZjZTBiMWM2MzExZDJhZTUzZDI4Y2MxOGJkNDQ0YWIgbGVnYWN5LXRydW5rCisxOTk2OCA5MDc5ZjcwYTViODNmOWYyMjhlNWRhODI0N2Q2NjA0MGRjYTU3YzBkIGxlZ2FjeS10cnVuaworMTk5NjkgODVkNzRmMDQwNzEyZTY0ZGE1MzA5NDhmZWMwY2FkYWMwNGVlMTg3NSBsZWdhY3ktdHJ1bmsKKzE5OTcwIGY3ZTJjM2Q5YzM4NzkxZDMxNzljYjU0YTM0MTFhMDU2Y2JlOGFlNGQgbGVnYWN5LXRydW5rCisxOTk3MSA3ZTE4MWViYTZiOWJkNGQ4MTRiOTRiMDExZTA5NDEzNWQ2YTEzZDViIGxlZ2FjeS10cnVuaworMTk5NzIgYmMwNTU1YmUyMjEyM2E0ZDVhOGRjMzI0Y2I1Y2MxODg3ZDQ3ODI0MyBsZWdhY3ktdHJ1bmsKKzE5OTczIDUyY2IwYzVmZGYyMzgwOTkyODM5MmQzMjM0NjFhZDFjNmEyMmNlMzMgbGVnYWN5LXRydW5rCisxOTk3NCBmMjcxN2IwMTM3ZDA3Mjc0ZGVhYWZhNTAxZjczNTlhMjFiODA5YzI4IGxlZ2FjeS10cnVuaworMTk5NzUgNjQzNGRjNzc2Y2I5NzVhMmMzNTk1MDY0YTNmN2RiOTAwZmFjZmQxNyBsZWdhY3ktdHJ1bmsKKzE5OTc2IDEzODBhNTJmMWEyMTg2MjkwZjllYTVjYzI1OWEyOWM3ODU3NTI3ZTYgbGVnYWN5LXRydW5rCisxOTk3NyBjZThhYzM3ZGIzMDBhNWE3NDA0OGY4NTdiMzliYjQ1YzQ3ZDM2NDBkIHJlbGVhc2UyMC1tYWludAorMTk5NzggNmE1MjdiZTRjNGQxOTA3ZDg0ZDllYjQzNjIwZTU2ODhmM2M4ZmY5NSBsZWdhY3ktdHJ1bmsKKzE5OTc5IDNmMjI4MWUyNGUyZGM0Y2M5YTYxOTlmNGQ5NTdhNWYwNDUzNDI3MmQgbGVnYWN5LXRydW5rCisxOTk4MCBjMDY0YzBkM2M0OWI5MzYyMjQ5ZjZkMWJjZGI0ZTY2ZWNlNTA2NzNjIGxlZ2FjeS10cnVuaworMTk5ODEgNzQwNDY3ODIwNzJkNjA4YzhhYzBkNzljY2ZmNDk5OGU5YTc4MmM0MSBsZWdhY3ktdHJ1bmsKKzE5OTgyIGIxYWJiMjYyMjk3OTNkZjdjNWZkZGJlOGViOTMzMGNhM2VhNjBkYzggbGVnYWN5LXRydW5rCisxOTk4MyA3ZTkzOGYwZTlhNDk3NTQ4ZTg5OWQ0MmE2ZDU4N2U4YjQ2NDRjNmVhIGxlZ2FjeS10cnVuaworMTk5ODQgNzcxOTY1NTdmZDMxNjdjYWU0MzNkYjgwOWNhNzc1MzFjMWRiNjJkMyBsZWdhY3ktdHJ1bmsKKzE5OTg1IDljZmQ5YzMyOTdkZDQyOTNjNjAyM2M2YjBjNTRlYTg3MTg3YWYwMDEgbGVnYWN5LXRydW5rCisxOTk4NiA0NWFkN2E0NjhiYTJhMzUzYmZjNmQ2ZjI0OGFhYjg1ZWM2YTgzNWQ3IGxlZ2FjeS10cnVuaworMTk5ODcgZGQ1YTFiMjgwNDQwNzljMDYyMmYwNWU3MDNjYWQ2Mjc0NDBkNGMzNiBsZWdhY3ktdHJ1bmsKKzE5OTg4IDU3OWFjOGUzNWY1YjVlODI3Nzg3N2Y1NTVkODM0ZTg5NTFlMDQ0MjAgbGVnYWN5LXRydW5rCisxOTk4OSA4ZjMzOTI2OWUwMjdkNmY4OTE2YzNmM2RlZDZjNWQ5YTAyNWJlYjc0IGxlZ2FjeS10cnVuaworMTk5OTAgYzIxNGYzNzIwNjU4ZTJiODY1MzVmMDg2MmJjOTc0N2RmMDY5ZjQxYyBsZWdhY3ktdHJ1bmsKKzE5OTkxIDk4OWZlZDI4Yjc0ZjMzYTQ0OGUwNGY2MzljZDg0ZjczMWI0NzIwNzYgbGVnYWN5LXRydW5rCisxOTk5MiBkOWVlNTZiNmRiMjZhNTQ3ZmQ3M2Y4YzVlZDY4ZTZlYzc5ZjA5NDFjIGxlZ2FjeS10cnVuaworMTk5OTMgZGNmNzNmMTBmN2NjZjAzZDc5Y2RmMTFiZDQ4OTE1MTUxODA1NjI4NyBsZWdhY3ktdHJ1bmsKKzE5OTk0IDliZjM3NDkzMzg3MjA1YWNmM2RkYmVhN2M4MGE3NDBkZjJhMWYzYTEgbGVnYWN5LXRydW5rCisxOTk5NSBlZGRhNGE0MzIzOWJjYzMwYjUwYzIwMzA0ZTg4YTY3ZWI3ODQyMjRjIGxlZ2FjeS10cnVuaworMTk5OTYgYTM4Y2NlM2Y0MWI0MWRmYzIyMGRhMzU2YzVjZjBhNTA2NTFlZTVhMSBsZWdhY3ktdHJ1bmsKKzE5OTk3IGE0ODhhNjNjYjg2NzRlNmI3MDQyNGM5NjcwMzE4MmU0ZTY5OTk5ZTMgbGVnYWN5LXRydW5rCisxOTk5OCA4ZmYyNGFiZWIzODgxMTBjYjRjNTgyNzU4NWFiY2RkOWVmMzQwZWQxIGxlZ2FjeS10cnVuaworMTk5OTkgMTgyM2ZhMjMxNTIxNWMwNGU4NWUwZDRhMDJkMGUwOWQ4YjFjNDQ2ZiBsZWdhY3ktdHJ1bmsKKzIwMDAwIGFkYzhhNDFiZWU5ZjY5NzY5MTNiMmIyNTE5MWUxOTQ3NzZjZTI4OTUgbGVnYWN5LXRydW5rCisyMDAwMSAzM2Y3NzY5YTIxOGVkN2I1NGY2YjdhODVkOWE1NjI1YjAyODA1Zjc3IGxlZ2FjeS10cnVuaworMjAwMDIgN2ViOGIyNDBkZDZjNGIwMTc3NWZhODliY2I4ZTBmYTM3YzUwZWViYiBsZWdhY3ktdHJ1bmsKKzIwMDAzIDdlZDNlN2EwOGEzMTAxOWRjODM5M2Q3MDI0YTcxZjQzMzI3YjQ3OGQgbGVnYWN5LXRydW5rCisyMDAwNCBiZjY3OGExMWMyMWFlYzdkMTlmYjc0NThlNzBjMzNhM2I4NTEzOWIxIGxlZ2FjeS10cnVuaworMjAwMDUgNzZlYWIyZWJjZTU4YTQ0YjQ4ODBlNWUyY2YzYTAyMjA5ZjY3NmY3NyBsZWdhY3ktdHJ1bmsKKzIwMDA2IDQ4NjNiNTk1YmRhZTg2MDAxMjQ2ZTE0YmYyMTMzM2I1ZDE1OWFmOWIgbGVnYWN5LXRydW5rCisyMDAwNyA2ZmUxM2QwMDhlMjVmN2E5MzJlMzNjZjAxNTBlZGFjOTA2ZTFkMTdlIGxlZ2FjeS10cnVuaworMjAwMDggZTEyMTRmOWUxMmEzY2NmMTg2OGUzZmQ1ZjI1OGZkMDI3NDdjZGFlYyBsZWdhY3ktdHJ1bmsKKzIwMDA5IGQzMWFkZDk5YTg0NjhjYThjYjEzMDA1MmNkZjRkNmFmYTM5YzBlZGEgbGVnYWN5LXRydW5rCisyMDAxMCAzM2Q4ZGQwMmFhOTkxMjkxOWZlNjJiYzc4M2E2M2Y4NjczY2JlZjMxIGxlZ2FjeS10cnVuaworMjAwMTEgZjlhMDdlOTk5MDdlNmViOTc0ZTQ5M2E0NGVjNTI5YWFhN2ZjMWExOCBsZWdhY3ktdHJ1bmsKKzIwMDEyIDNiNmVhNGNmZWVlMDYyZWNiYmMwZjQ2ODY5NGU5NjRjZWZhMjE4ZTggbGVnYWN5LXRydW5rCisyMDAxMyA4NDhmMDg1NTk5MTZkNGE3MzE4OTZkZjMyODNjNDAyNWExNGQxZDE3IGxlZ2FjeS10cnVuaworMjAwMTQgNjQ2ZWMyYTRkN2Y0ZTBjYjI3NjA5MDI4NjEyOTBmNjdjOTlkZjY4YyBsZWdhY3ktdHJ1bmsKKzIwMDE1IDllNmU0ZjVlNTYwNDVmODY0MzUyMjI1ZDllNzBkN2M0YzYzZDVjMmQgbGVnYWN5LXRydW5rCisyMDAxNiBkYTZjNjYyOTgyYjY0NDQzYWFlMTE5ZjlkZDYxNjI1NjY5NDQzMWQzIGxlZ2FjeS10cnVuaworMjAwMTcgYTgzMDFkNGVkMmIxYjk1ODk2ZTBiN2E0OTllOGVmOGMyYjcwNjdjOCBsZWdhY3ktdHJ1bmsKKzIwMDE4IDIwNTRjZWEzODc1NGJkM2JhZGJjYTNmYzQ0MDNjNDNmYmNkNDZhM2MgbGVnYWN5LXRydW5rCisyMDAxOSAxYjg3NDVmYWEyZWQyYzlmMTRiZWFjNWVjYzI1YjM3MzJmNzg3YTU4IGxlZ2FjeS10cnVuaworMjAwMjAgNTRiNmQyOGE2ODc4YzliMTAyYzY4ZWQ0YmYzOTgzNDgxYjJlNWFiZiBsZWdhY3ktdHJ1bmsKKzIwMDIxIDExNDYwNzBmNDdlYzZiN2VhYzQ0NWQ1Yzg2Njg5YWE1NDNlMTk3NTcgbGVnYWN5LXRydW5rCisyMDAyMiAzMmJjYjRlMjEwMDU0ZmYxODJmNGNiNTEyODYzNDUwNzkyMzc1OTg4IGxlZ2FjeS10cnVuaworMjAwMjMgMGIzM2ZjNjdjYTRlNDlkN2UzYWY0NGNkMDE3YjAwZGExNzM2ZjM0ZiBsZWdhY3ktdHJ1bmsKKzIwMDI0IDFjOTBhMWNmNzk1Yzk2ODBiN2U0NzhjMzhmN2NhYzkyZmMxZWUyNDkgbGVnYWN5LXRydW5rCisyMDAyNSA1NTIxOGUwNDk1YmM0Nzg0ZjNiYTdlYTU0NGM4ZDE5NDI4NjEzYmI1IGxlZ2FjeS10cnVuaworMjAwMjYgZDBmZDYwYzU5YWVmYWQwYThlZjhlYmI5OGI5ZjIzNGQ5OWM3ZGY1YyBsZWdhY3ktdHJ1bmsKKzIwMDI3IDBmYTJjMDUxODhhMGI3OWM2ZTkyZTQwNTRlNjI3ZTk1ZjhhNWM3ODIgbGVnYWN5LXRydW5rCisyMDAyOCAyMDZhOWYxOTc4ZTUwMGE4NjljZmEzZjgyMDVmZDYwOWE2N2RmNThiIGxlZ2FjeS10cnVuaworMjAwMjkgMmVkODQ1ZjgxYjBjNWRmODg0ODE2ZGEyZjA5YWRmZTA0NjMzNjExZSBsZWdhY3ktdHJ1bmsKKzIwMDMwIDgxNmQ4NjAwMjY4MzFiMjQwOWRmMDY1MzM3ZGQ3YzA2MzY5YzAyMGYgbGVnYWN5LXRydW5rCisyMDAzMSA3MjQzZGViMDIwZTg3ZTMyYzA3NWJiZDQxNDllNzhiN2NmZTA1Y2IwIGxlZ2FjeS10cnVuaworMjAwMzIgYzliNGVmZjE1ZGNkYWNmNzkwNDg0NWNiOWQ3MDBiNGE1NWYyNWQyMCBsZWdhY3ktdHJ1bmsKKzIwMDMzIGY1OGE2NWQ0Y2MyMzc4MzdlZDU0ZjczYzZiMTQ0NDg5MTUxMTVjODMgbGVnYWN5LXRydW5rCisyMDAzNCBmNDI5ZWU5NDQ4YWFkNGQyZWIzNzY0NTUzYzc1NTRmM2VjNDc2Y2MzIGxlZ2FjeS10cnVuaworMjAwMzUgOGZiMTBhZmZiNjE1N2FjZGU1N2VjZjgyMWZiMTNiOTdlNWEwM2RjMiBsZWdhY3ktdHJ1bmsKKzIwMDM2IGMyZTRiYTNjODVjYzkyY2I4MzkyOTIwNzBhYmJmYjdhNDJlYTE2MGIgbGVnYWN5LXRydW5rCisyMDAzNyBiYmY1ZWEyYTIyZTU1OTdiOWQ3YzRkYTU5ODZlOWJmYWFhMmZkOTlmIGxlZ2FjeS10cnVuaworMjAwMzggODM2ODQwNDM3M2VjY2YyNjM3ZjNmYmUzMDA1MzllNjUyNGUwMzIxYyBsZWdhY3ktdHJ1bmsKKzIwMDM5IGYwN2JjNGY4ZGI5ZTY5ODdjZDJmNjY3NWZmMjMxMzk1Mjc3NmYwNDkgbGVnYWN5LXRydW5rCisyMDA0MCAzNDljODc4ODYwNGUyOTMyNDliOWVlYWQ5MmIzZmYwYzMxYzQyOWY1IGxlZ2FjeS10cnVuaworMjAwNDEgMjA2ODA5ZTI1YjUwZDJkZGUyMzg4YWE4MTkyOWI5ZTU1YjNlMWZiOCBsZWdhY3ktdHJ1bmsKKzIwMDQyIDUwODA3YzQ2NTAzNGI2OWEyM2MyODQ2NmRmNzBhZTg2MWVmNDI0MDcgbGVnYWN5LXRydW5rCisyMDA0MyBjNzRjNGJkY2I0MTEyMmYzODA4M2E5ZGFkZDk5NjgwZDM2MmU2MWQ2IGxlZ2FjeS10cnVuaworMjAwNDQgMjYwODY4Y2FlMWExZDVkZmQ4NzdmYzRmMWVmZTg5NmY0ZTY0ZWU5ZCBsZWdhY3ktdHJ1bmsKKzIwMDQ1IGNlOTBmNTY3ZmE0MjAyYTU5YzRkN2FlMTE3MWI5ZTA3Yzc5NWI1MzQgbGVnYWN5LXRydW5rCisyMDA0NiAwYjhiNmY4NDA2ZGNmYjgwNmQyZWQ4ZjU5MGViZmY4ZjQxZTZmYjAxIGxlZ2FjeS10cnVuaworMjAwNDcgM2I4YTViYmZkMmU1NzIwZDZlOTYxNDBlNGM0MGQ1MGJmNDk1OTFhYSBsZWdhY3ktdHJ1bmsKKzIwMDQ4IDE1NTA4NzIyNDllOWU4NTE5MzEwZjFiZmZjYzliNzg0OWQ5NDA3NmQgbGVnYWN5LXRydW5rCisyMDA0OSAxYmUwZDFjNTc4MzQwMjVkZDVkMWMzMzVkMmIwOTBmZjUwNTcxOWZhIGxlZ2FjeS10cnVuaworMjAwNTAgOGM2ZjIyY2VmODc4MjJkNmUwMGFiNjVlMTFhYTY5ZDJjNTllZmFiZiBsZWdhY3ktdHJ1bmsKKzIwMDUxIGY3MjE3M2M3OTNiNmQ4MzJjYmU0NzdmNjY2NTZmMWMyZGUzNGU5NjggbGVnYWN5LXRydW5rCisyMDA1MiAxMDk0MDU2MWU4OTFjMTAwYzk5MzVhMTlmZTUyODUxMGMwNmI5N2EwIGxlZ2FjeS10cnVuaworMjAwNTMgNzI5MTg5MWNiMGJmNzY4N2NjNWRmMDczYjZlOTIzYmUwNTg5N2E0MSBsZWdhY3ktdHJ1bmsKKzIwMDU0IGUzYjVkMDNlM2Q3ZGI3YzZjZmJiM2Y2MGRlYWM2MmJiMzg2ZTlhYzMgbGVnYWN5LXRydW5rCisyMDA1NSAxNDNlZjg4ZWM4NTYzNGI0NDA2NmU2ZGQ3ZTY3NDU1MmIyNzRhYzUwIGxlZ2FjeS10cnVuaworMjAwNTYgYWQ2ODNmMjBiYjE0MDc1YjFhYzIxMTQxZmYwMzJmZTkxNmZmYmJlNCBsZWdhY3ktdHJ1bmsKKzIwMDU3IGI0NGU3N2ExMjk3ODhkZTViOTA2MjI5YTgyMDlhZmRhN2JlNTI4YWIgbGVnYWN5LXRydW5rCisyMDA1OCBkYzlhMTUxYTBiZDUyYTk2ODJiZDA3NzAwZThkMjI5YjhhMjY5MDIwIGxlZ2FjeS10cnVuaworMjAwNTkgOWRiYWIzZDU0ZGVlZWMzZmEwYzU0NmZlMGFlODliODUyYjBhYzRjNSBsZWdhY3ktdHJ1bmsKKzIwMDYwIDM0NmU5Nzg2MzBhOWMzYmM3ZGUxYmYwNmYwNzY1NzQxMDlmYjA0ZDkgbGVnYWN5LXRydW5rCisyMDA2MSAwZDUyMzU4Y2IyODgzNDE5NTQ4ZDRhN2Y4NTQyNjIyNTE0MDk0OGFhIGxlZ2FjeS10cnVuaworMjAwNjIgZDgwNzQ4OGRmYzdhMTJiN2FlM2ZhYmM5MjFjOTUyNDg5Y2NhMjE0ZCBsZWdhY3ktdHJ1bmsKKzIwMDYzIDk2MjE5NmNlNzIzMTU2M2ZiMDU4NDRmYjYzZTZlOWIxM2Q4ODg2MmEgbGVnYWN5LXRydW5rCisyMDA2NCA0ZjY4ZDNmOGZkYzgyMDA4MDU5Nzc5YTg0NWFkNDg5N2NhZWMyZjlkIGxlZ2FjeS10cnVuaworMjAwNjUgMTA5MDJlY2FiY2E5YzczMGExZGYwZWQwNjE3ZTc5MzgyZjA5M2ZmYiBsZWdhY3ktdHJ1bmsKKzIwMDY2IDczZjQxYjBmZjc3NzVhZmRlNWY0MjZhZjFhMGQwZDBhYTlkNTljM2QgbGVnYWN5LXRydW5rCisyMDA2NyBjZDI0NTVjYjEzZWY1NWM2NWVjNmY1ODQwMWMxZWIwYmVjMGUzZDdkIGxlZ2FjeS10cnVuaworMjAwNjggZTQ5MDc4MTAxYTY4NzQxZDc3YTVmMDRiOGNiNzRhYjUxMjFhN2RlMSBsZWdhY3ktdHJ1bmsKKzIwMDY5IDU5NmVmYTdlN2RmODNjZmFmZDdiYThhNDQxYTMwYTYwNDY5MzlkNzUgbGVnYWN5LXRydW5rCisyMDA3MCA2M2NhY2RlYjgwNDViZDUxOWEyNmQ2ZDZhNzk3MjAwMDE4OTVjYzlkIGxlZ2FjeS10cnVuaworMjAwNzEgNzA3Zjk1ZDA1ZTY5MDc2NGU4OGJkMWNjNGE2N2IyNGRkMDM5NGQyOSBsZWdhY3ktdHJ1bmsKKzIwMDcyIDhkZjBmNjVlMzg2MDM1ODc4MTZkMTk1NzdkYjRiOWYwMWE5OGRhNGYgbGVnYWN5LXRydW5rCisyMDA3MyBhN2JiZjMzZmNlMDVhZTRiYmYwMjI5ZTEyNzk5YmI1ZmEzOTJlODliIGxlZ2FjeS10cnVuaworMjAwNzQgNzkxNmQzMmFhMDgxMjVkOGM5ZGY2ZWRmYzYyZGQyODgzYzhmZjQwNyBsZWdhY3ktdHJ1bmsKKzIwMDc1IDVlZTM1NDNlYTMzZjQyNTBlOTdjODFmZThjODU1NDFmNDZkOTdjZjIgbGVnYWN5LXRydW5rCisyMDA3NiA5ZTY0NjgzNTZhMGIzMzcxNjVmNWIyNWRmMDdkMjU1NmNhYzhkOTYwIGxlZ2FjeS10cnVuaworMjAwNzcgNTZkMTk1ZjIxYjRmZTBkYThlNWFjZGE5ZWVhYjlmNDJkN2VmOWQ0NSBsZWdhY3ktdHJ1bmsKKzIwMDc4IGY5YTMwMDE1ZThiMGZjYjRmY2M3ZjVjZjJjZjc4N2MyZTQxMmU4OWMgbGVnYWN5LXRydW5rCisyMDA3OSBmMmY4ZjNlMmFjMjMxYzFiZjQ5YWNkYzVmMjc0NzY4YzBiMTdiZDFkIGxlZ2FjeS10cnVuaworMjAwODAgZDQ4ZDA5Yzc4N2E4NDlkMTQwNTgyZTc4NWZiYjlhYjQzYWY1OTRkNyBsZWdhY3ktdHJ1bmsKKzIwMDgxIGY1ZDM4YzViMTc1MWUzZDcxNmQ1YzE1NjNhMDg3NDlmODJkZWRkYzcgbGVnYWN5LXRydW5rCisyMDA4MiBkNzE4YzI5M2ExZmZhMmI3ZjRmOTgxOGJjNzA4MjZjMGUxMGViMTA1IGxlZ2FjeS10cnVuaworMjAwODMgYmFjYWM3NWQyMmZkZTllODZhMjRkMGQ2MGE3ODU1MzBkYTMzMGM4YyBsZWdhY3ktdHJ1bmsKKzIwMDg0IGViMDZhMDJlMDUwNzZiZTRjZTE2ZDRhZDk5MDY3N2RiMWEwNDNjMzkgbGVnYWN5LXRydW5rCisyMDA4NSAxMTUzNzk2ZDIxYzI0MDcwNmJkMDkzMTIwZTgzM2YxZDdkNTJmOTk2IGxlZ2FjeS10cnVuaworMjAwODYgNDEyMGViZTA4ZGQwNDE2Y2MzZDdjODdjYWNhY2U1ZDBmMTdiMTA5MiBsZWdhY3ktdHJ1bmsKKzIwMDg3IDM0ZWYwNTQ0MTQxM2YyNmI2NWNiMTU0MDBjYWU4MmEyNzc2NThlMDcgbGVnYWN5LXRydW5rCisyMDA4OCAzOGVmNDY2MzU5NDkyNjU2OTAzYzc0NGViMjRkNmQwNWQxZTA3OWI0IGxlZ2FjeS10cnVuaworMjAwODkgMmU3ZjQ3MzE0YWRhYTMxNzc4MzRiY2YxMmQ0YmZkMWY3ZDRhODNmYiBsZWdhY3ktdHJ1bmsKKzIwMDkwIDU3MDVkNWE4YmNiM2NkOTVlNGZhYjBkMzNjMTJhOWVmMzZkOGE3ZGMgbGVnYWN5LXRydW5rCisyMDA5MSBjNThiNmQ4NjhkMDgxNmY1YTY5NGUxMGE2YmUzNTI0MTI1NGRlZTg5IGxlZ2FjeS10cnVuaworMjAwOTIgN2E0OTQwYTRhY2E2ZjcyOWUyOTA4MGNiOWZkZDkzNmQ3NjBlYjQyOCBsZWdhY3ktdHJ1bmsKKzIwMDkzIDcwNTdiNmFhNDZlYzU1ZmNhMTgwYzVmZGU1OGQ3MGUwYzU2ZGFkN2EgbGVnYWN5LXRydW5rCisyMDA5NCBhYzY1NmM4MzdiNmM3NjRiYWMxMGViOTJkMDk2ZjMzOTcyZWE2YWZhIGxlZ2FjeS10cnVuaworMjAwOTUgNmNmYTNkNjVhYjU0NjliZjA2OGI5MmU1MmM2YWVhZDQ4MWUzZTM1MSBsZWdhY3ktdHJ1bmsKKzIwMDk2IDkwNTQ2ZDZlNTQ0NTRmYzY4NTk0YTIwNWY5MTEyZTY2MTEyMWUxYzggbGVnYWN5LXRydW5rCisyMDA5NyBiNzQyY2FmMGE4NjJhNDVjM2YxNTY1NTcwYThiZTczYjIwNTdlYzg1IGxlZ2FjeS10cnVuaworMjAwOTggNDA3ZDYwYjJmYTQxYTk0YzlkZjRlM2M2NjVjYThjMDdlZDMzZWEwYSBsZWdhY3ktdHJ1bmsKKzIwMDk5IDc4MjIzOTQ4ODA1ODViZjdiNmE1YmEyZDJhZjdlN2IyMWNiYjRlOWYgbGVnYWN5LXRydW5rCisyMDEwMCAxNmYxNDVhYWMyZWMxMmU1ZDYxMjE3ODMyYzQ3NDlhN2I5ZjM2MWY2IGxlZ2FjeS10cnVuaworMjAxMDEgYzg4MTdhOWJiYmRkYmM0YzBjY2RhYmUxYTZiMDZhNzljYjZjNzRiMyBsZWdhY3ktdHJ1bmsKKzIwMTAyIDUyZGEwOTRiNTNlYzM5YmY5NTA1YWVmNjE5NmViOGYwMWQ4NGM3NDcgbGVnYWN5LXRydW5rCisyMDEwMyBkM2Y3YzdmYWRlYzAzOTg5Y2FlZDc5NDkwYmU5Y2QwMjg4MWJlYWJmIGxlZ2FjeS10cnVuaworMjAxMDQgNjQ4NzZiYjhhYWNkYzViMWRmOWQwNjM3NDg0MjViMmNkMjU1YWE1NCBsZWdhY3ktdHJ1bmsKKzIwMTA1IDIxNWRjNzI1ZGI4NDA0OWVkNjhmNTVhNzViOGQ3ZWY1MWI2YjVlZDYgbGVnYWN5LXRydW5rCisyMDEwNiA0ZDZlZTdmMmJlZTY2MDlhMGMzMDY3NmNkYjEyYTg2NzU0MWEyNGJjIGxlZ2FjeS10cnVuaworMjAxMDcgZjFhNDllZWM3YzJiZjFkYjc1ODVkMmVjMjczMTA5NjkxZjBkMTUyMyBsZWdhY3ktdHJ1bmsKKzIwMTA4IGY2ZTFmYTJkYjQ4Y2JiN2E0ZjcyZDI1YmU3ZjkwZjAzZDA0ZmE2MGYgbGVnYWN5LXRydW5rCisyMDEwOSBhMWI5OWQwODhjZWE4Mjk0ZDViOTIxMzI3ZDJiNDM0YTAzMTgzMzg1IGxlZ2FjeS10cnVuaworMjAxMDkgYjU5YTUzNmFlMWVmMzc3NGZkODVjMTdmNjIzZTg5MjZiN2I2YzA5NSBsZWdhY3ktdHJ1bmsKKzIwMTExIGIzZGNlMDY4NjhkNmQzNWY1OTAzNDUyZTZlOTBkN2YwYWM0MTdjMzggbGVnYWN5LXRydW5rCisyMDExMiAzZjkxMmZiOGMxODA4MTg0ZWJhNjMyODY3YjIwYWIxZGJiY2JhMzU4IGxlZ2FjeS10cnVuaworMjAxMTMgYjYwMDk2ZDUwMDFhNmUwZDgzNmEwNjYwZmY5NWM3OWNkMTFlMDE5MSBsZWdhY3ktdHJ1bmsKKzIwMTE0IGUzY2MyMGU5ZWEzNmVjZGQ3ODdiZmI3YmZkNmRmMDIxMWEzZWQ3NDggbGVnYWN5LXRydW5rCisyMDExNSBlZWMzOTFhNTVmODQ0MDE5ZWI0ZjNmOWM2NGMxNmUzM2Q4MjMxYzY0IGxlZ2FjeS10cnVuaworMjAxMTYgYjI5MTgzM2EwZWZiN2UxZDE0NjZkM2U0MTcyZWIwMTM0ZTNhYzFiOSBsZWdhY3ktdHJ1bmsKKzIwMTE3IGY5Mzk1Zjc2MjdjNGI3YmYyNGFmNGI2OTkzOTZkNDVmZTBkYzVkNmMgbGVnYWN5LXRydW5rCisyMDExOCBhYjcwNzIwOTQwOWJiOTU4NTc0YWQzNDYxMDY1YTQxNWE4MTBkMjg3IGxlZ2FjeS10cnVuaworMjAxMTkgMDJhNGIwY2ZjNTdlMTM1NGIwZWY3ZTBhNjZlM2M5NTMyODA5NGFjMiBsZWdhY3ktdHJ1bmsKKzIwMTIwIDNlYjhkNzI1OTk2OTI0YzJhNzU3ZmMwYWM5NjE5NmQ0MGZkNjcxOGUgbGVnYWN5LXRydW5rCisyMDEyMSAzMmZiNjY0M2FkZjFmMDRjYjg3OGViNmZhYjU1NTVjZTZiYzcxNWY4IGxlZ2FjeS10cnVuaworMjAxMjIgOTJiM2UwODMxOTcwMmE0YzczM2I0YmY0MzJjYWUwYzBjOTkyNjZiMiBsZWdhY3ktdHJ1bmsKKzIwMTIzIDQ1Y2RhMWIzOTM1NWJjNzY2MzllM2Y1YWRkOTcxN2Y3MjBjNTIyZGUgbGVnYWN5LXRydW5rCisyMDEyNCBiZjRjYzk5ZDcxMWQwYWM3NGYwMDE0NTlhNWNjMWI1ZWUzZDgzYzE0IGxlZ2FjeS10cnVuaworMjAxMjUgNGUxOWZiOGNmMWZiZDM5ODcwZWNiYWQ2YjZkNzg4MjA3OGU3YmUyNyBsZWdhY3ktdHJ1bmsKKzIwMTI2IGQyYjAxZDRlMTdlOWRjZmQyYjI3NmE5OGNhNzNkNDlkZGQwZjEwZTMgbGVnYWN5LXRydW5rCisyMDEyNyA3MWFmM2I2MGFhNjI5MTIzYTU2NDMyOTRjOWRmZWQ1Yjg2MjFmZWQ1IGxlZ2FjeS10cnVuaworMjAxMjggNWY3MTE4NWVmMmI1YWRkZWRlN2FjMjFiYmRlN2NmMmY4NzMzNWZjNiBsZWdhY3ktdHJ1bmsKKzIwMTI5IDE0MTIzMDk1NjMyNTZlMWU0MzAxNjNmYzdmZmVlYzc2Njg1ZTBlNGYgbGVnYWN5LXRydW5rCisyMDEzMCAzOTBhODMxNWQ2MzQyYjRjMmY3MGY4YTIxYmVhMjQ0ZWM4ZGJlYzc5IGxlZ2FjeS10cnVuaworMjAxMzIgN2MwNDcyOTMyZmJmOTYwYmQ1OWJiMjhkMmM5MmExNzYyMzJlNWVmMyBsZWdhY3ktdHJ1bmsKKzIwMTMzIDIyZDg1MDE3YmVjZTg5ODk5YjcyMTA2MmYzMGIyOWNkZTkyMDE3MjkgbGVnYWN5LXRydW5rCisyMDEzNCA1MzZlOGRkMzU5NTMyNDRkMzAyNmZkZjMxOTZiNmE4NGUyN2M2M2VhIGxlZ2FjeS10cnVuaworMjAxMzUgZWU0ODAzODI2Nzg0Nzk2NjkzNTc4OTdiMDQwNDNmMTc2MTk5MTUyMSBsZWdhY3ktdHJ1bmsKKzIwMTM2IDFiMTJlNjM0MDAzODk0Y2MxOGM4NDEyMTU4ZmQ5ZTdlMWY4ZTlmOGYgbGVnYWN5LXRydW5rCisyMDEzNyBhMzQwYmE0YWFjMjcwZDg0YWY2YjhkMWUwMjJhN2Y3ZDY3MjFmYTA5IGxlZ2FjeS10cnVuaworMjAxMzggMjVlOTNhMDFmODZkOWVmMDVkZTQ4MmZmYTEyYzY3ODAzYjQ5NjBlMCBsZWdhY3ktdHJ1bmsKKzIwMTM5IDAzNzdmOTI3Y2FmYTMzODQ2Mzg2MzQwYjJmZTdkNDQ5YWYwN2ZiZDcgbGVnYWN5LXRydW5rCisyMDE0MCA3NTEwM2JlZjBjMjQ1NWQzMzg2Y2FmMDQ0N2RmYmE0MjNmMzUyNzQwIGxlZ2FjeS10cnVuaworMjAxNDEgNTk0NzJiY2JmYjhlOGE1YWJkNThiMTcyN2QwM2I1NTdhNzFjNWI4NiBsZWdhY3ktdHJ1bmsKKzIwMTQyIDAyY2VjMDBmMjJiYjUzY2Y2MDhkMmUzMDZmMGI4MTIyZjhmZWQxMGMgbGVnYWN5LXRydW5rCisyMDE0MyA2ZDMwNTUyY2I0Zjk5MDg3YTFmMzkwYWZkZWIxMjQzZTkyOTZjYzE1IGxlZ2FjeS10cnVuaworMjAxNDQgNGFhN2FmYmYyOWQ4MjE1N2UyNDljODMwZjFiOTc2ZDgxMzQ0YjJhZSByZWxlYXNlMjAtbWFpbnQKKzIwMTQ1IGZkYzUyMmRjOWRmNTU2Y2NhYmJjYTdmZDk2NzQ4NmRlMWI0MTQzYWQgbGVnYWN5LXRydW5rCisyMDE0NiBiNTUzZmJhYzE0NmRkYmVhZDA2OWI0NjkxOWExMmIyMjgzNGVjYmIzIGxlZ2FjeS10cnVuaworMjAxNDcgODdkNTA5ZDA4NWEwZmMzODg1MmQ3MTk4NTY0ZWZlZjM0ZDY4MTgwMCBsZWdhY3ktdHJ1bmsKKzIwMTQ4IDg3MGRhMjRkNGJhZjI0ZTdhZjA3OGYxNjA1MTI5MDRlYzU1ZTg0MmYgcmVsZWFzZTIwLW1haW50CisyMDE0OSAyMmQzNDk3NDgzODRmODY2NmE4MGE4NmU4NjliNTMzNmIzOWE5M2MwIHJlbGVhc2UyMC1tYWludAorMjAxNTAgYzRhNWJkMDg4NTFiY2ZhYjVmN2FkOGE2MjA2OTY3ZDgxNWJiYjYyMiByZWxlYXNlMjAtbWFpbnQKKzIwMTUxIGVlMjY0NjY5YjY3ODBlOTdlZGU1MDRmNDAyZWJjM2UzMzZmZDM2NTggcmVsZWFzZTIwLW1haW50CisyMDE1MiBhMDAyOTE4ZmMwYzI3NjQ0YzQ3OTkwYzEzNzFiOTg2MzMyY2RhN2QyIHJlbGVhc2UyMC1tYWludAorMjAxNTMgMTJmZWU3ZmIwMTliM2I4NDM1NmIzMjJmY2M3NmJiYzJlYzllN2VmNiByZWxlYXNlMjAtbWFpbnQKKzIwMTU0IGJlYjI5ODJkODVhYTgyMmM0NTRmZWZlNGM5NzA0MmZmYjE1MTBjOWMgcmVsZWFzZTIwLW1haW50CisyMDE1NSAxMWEyMWQ1OTI4MzQ4N2E1ZTNjYTYxNzE4NjllYTRmOGMxNzQzMjA0IHJlbGVhc2UyMC1tYWludAorMjAxNTYgYTYyNmFjYzMwZmMyMzk5YWJkOWFiYjk5Njg5ZWFkNjY0NjllYjkxZiByZWxlYXNlMjAtbWFpbnQKKzIwMTU3IGY0Y2E5M2U4YTJkNDc5NjRjODdkNzhhNmEwZDY4ZTNlNjc0NDIyMTEgcmVsZWFzZTIwLW1haW50CisyMDE1OCA2MzkzZjU1ZGJkN2JlOWRmN2UyNzhjYmU3YjAzYzE5MmNhNWYwNzExIHJlbGVhc2UyMC1tYWludAorMjAxNTkgNWVkNGM3ZThiNGY5OGVjZmRmNDYzNWFjNjc1MGJhMDkzZmUzMmY3ZiByZWxlYXNlMjAtbWFpbnQKKzIwMTYwIDlkZGJiNzZjMzExNDU0MzViZTJmYWZjYjkxNmVhYjM1ZjE1YzRhODUgcmVsZWFzZTIwLW1haW50CisyMDE2MSA0MmIxYTY5OWE1ZGRjMWNkNTAwYjU5NGRlYWVhNjk2ZWUyNDZiOTNmIHJlbGVhc2UyMC1tYWludAorMjAxNjIgZDQ2N2QxODRiNDI5MzA0ZTgzYzFjMDI4YzEwM2ZkYzBmYjEzMTExNiByZWxlYXNlMjAtbWFpbnQKKzIwMTYzIDA5M2U5YTI0ZWU3NjdhMWQ0Y2NkZWYxOTZkMTViZmI5ODU5MjcwOWUgbGVnYWN5LXRydW5rCisyMDE2NCBlMmU5MTQ2ZjRhYjRkOWMyOWJmMzRiMGIxMTA0NDVjOTdlODViOTFiIGxlZ2FjeS10cnVuaworMjAxNjUgMjRkMjJlZWU5NGNmMzcxNTczZDEyMzJiNmNkMDEzZTMyNjRhOTI3MiBsZWdhY3ktdHJ1bmsKKzIwMTY2IDcyZmQyNjU3YmUzNDI4N2Y1OTZmMzRiYjZiN2IxZDU2YjFiMGYzMDIgbGVnYWN5LXRydW5rCisyMDE2NyA1MzZjYzEyNmZiOWY4YTA3MTEyYjA1MGJkMWI3NDJiYWZmMDhlODk3IHJlbGVhc2UyMC1tYWludAorMjAxNjggNmRjNDNlMGM2YmJmNTAzNTM0MzMwMDYyZTczYjcyOWVlMGJlMTkwYyByZWxlYXNlMjAtbWFpbnQKKzIwMTY5IGU1MTBjNGNjNTczNzYzZDNkY2QxNGI2MTJmYzk1YWFlMGUzMjJjMzkgcmVsZWFzZTIwLW1haW50CisyMDE3MCBhNDY5NjRkNzExMWRkZWY0YTJhMjkyMWZkNzRkMGMzYzRkNDY2N2NkIHJlbGVhc2UyMC1tYWludAorMjAxNzEgZDdlMGQyMGNkZGFkYjM2MzJlNWUwMDA2ZjUyMGI5MWEzOGMwZjU5NCByZWxlYXNlMjAtbWFpbnQKKzIwMTcyIGQ5ZmYxMzEwMGUyZjIxMjJjYTIzYTk5NDVmNjU1OTFhNWE2ZTNlNGMgcmVsZWFzZTIwLW1haW50CisyMDE3MyA1Y2YzNTVmNjdhYTM3YjFmNmZjZGQ1MGI4ZjliYWUzYjRjYWE2OTViIHJlbGVhc2UyMC1tYWludAorMjAxNzQgNTczYTkxMzg4NzA1YjUwMGZjYTViNGQ3M2FjMWYzZGYwMDFhYzAzOCByZWxlYXNlMjAtbWFpbnQKKzIwMTc1IGNjZWYwMmRhODhhNjdmOTkxODM3NGU4YTdlYTBjMTg0M2Y0YjE3NTkgcmVsZWFzZTIwLW1haW50CisyMDE3NiAzMTIwM2Q5OTM1ODI3M2NmNzMzYjlmZTFkYzIzZmM2Zjc4N2JlMTE1IHJlbGVhc2UyMC1tYWludAorMjAxNzcgOTk1NmExYzVkNDQwNTRkNjRmNjFmODg1YWViMGY4MWU0ZWNiYzEwMSByZWxlYXNlMjAtbWFpbnQKKzIwMTc4IDE5MmYyNWU0MWZiYmVlOTg4YmYxYjVkOTk1Mzg2ZDRkMWRmMTgyYTkgcmVsZWFzZTIwLW1haW50CisyMDE3OSAyYjU3NjhjMTM1OTkyMDI5M2U1NmUwZTg2MzVhZDJhMzc0NjQzMDQxIHJlbGVhc2UyMC1tYWludAorMjAxODAgOTkyNDYwYzY2OGMxNWJmOTI2NDg0Y2VlMzAzNmM5MDdlMzg4NGQ5NSByZWxlYXNlMjAtbWFpbnQKKzIwMTgxIDhkZWNhNzllYTZhYmI1NWUzM2Y4YjM4MDU3Yzk1NmI4ZmEwZDg3OGMgcmVsZWFzZTIwLW1haW50CisyMDE4MiAwNDM3NzViM2I4YjI5NjYzNDc0OWJmOTIxZjlhYzgwZjhjN2U2NjZiIHJlbGVhc2UyMC1tYWludAorMjAxODMgZjM0YzkwOTg5MTM4MzQ1ZGNmNjczYWQyMzIzNTViNDk2ODVmNjJlYiByZWxlYXNlMjAtbWFpbnQKKzIwMTg0IGQxYzEzNTBhM2E1ZjQyYjU4NWM2OGM0OThhYTI0ZWM4ZDQ3OWRhZDcgcmVsZWFzZTIwLW1haW50CisyMDE4NSA1YTRlMDgzOWNjZTc2Y2YwNmRlMjRmMTM0ZTY2YmVmNDdlYWFlMzExIHJlbGVhc2UyMC1tYWludAorMjAxODYgNWJkNjg2ZTBlY2Q0MWY2MDAxOTg3Mjk0YmZhODdiZmNmMDNlNjZkYyByZWxlYXNlMjAtbWFpbnQKKzIwMTg3IGQxNmVkYzcwNGRhMWY1OGNjNTRkODI4ZjJhYjM4ZGEyZDNmOWRjMTAgcmVsZWFzZTIwLW1haW50CisyMDE4OCBkNTNhOTY3OWE5M2JiOGJlODFhZDk1ZDNlMDNiZWYzZDI1ZDE2OGY1IHJlbGVhc2UyMC1tYWludAorMjAxODkgOTc3NmNmNWRiZmUzOGQwYzc4ODFiNmRlZTJkMWI1NWQ2YmIwYjNmMCByZWxlYXNlMjAtbWFpbnQKKzIwMTkwIDc2Yjg5ZmEzZWYzNDA2MGEzY2MxZDQ2ZTRmOWEzZWE1ZjQ0MjZkZTggcmVsZWFzZTIwLW1haW50CisyMDE5MSBjMDExNGVkZmQzMTM3NmE4ODZjYmQ3Y2FhOGUxMzUzMThkZjA1YjRlIHJlbGVhc2UyMC1tYWludAorMjAxOTIgZWYxMjIzZDg0NDJkYzU2ODFkOWVhNDhlZmExOTU0MzY3MjAyYmM1NSByZWxlYXNlMjAtbWFpbnQKKzIwMTkzIDZiMGZmNTI5ZDYxNTAyNDNiOTBlMDllODZlMWJiNjc0NGRkYTQyNjYgcmVsZWFzZTIwLW1haW50CisyMDE5NCA3ZDA0MjQ1ZWQ3NWYzOWJmMmU0ZmQzNGJjZGE2NzFmYTc1ZTg4NzZmIHJlbGVhc2UyMC1tYWludAorMjAxOTUgZDY1NDdmZjk0MTZiYWI4MTlhYjg5YmRhOWViMDhlMDI3ZmNhMzUzZCBsZWdhY3ktdHJ1bmsKKzIwMTk2IDAzYmEwNjI0NzQ4NjYzMGFhZmE3ZTBmNGVkY2EyMzA4ZTFlZjVlM2MgbGVnYWN5LXRydW5rCisyMDE5NyA4MzZjZGY4ZDEyNDVkNWY5MmIzZDVkMzZhODUzNjlkOTQ5MTJkNGNiIGxlZ2FjeS10cnVuaworMjAxOTggZWEzMjZlYjQ3NzVjYzFjNDBlZTFlMjEyZDVkZDc1OTY4ZTAxNTFlZCBsZWdhY3ktdHJ1bmsKKzIwMTk5IDQ2YTZjMjhkMzVlNWRiOGQxNGE2MTcxYzM0NzY5MmI0ZjQ5M2Q1NjkgbGVnYWN5LXRydW5rCisyMDIwMCAzMTFlNmFlZWY4NThhZDUwNTIzZTA2ZWE2NTEwNTMzMTk1ODkyNGUzIGxlZ2FjeS10cnVuaworMjAyMDEgMjg4ZDgwNWFmMTQyMThmM2Y0OTI5OTViZWJiMjZkYWUwZDY0N2Y0OSBsZWdhY3ktdHJ1bmsKKzIwMjAyIDUwNmEwODBkMzllY2ZjMjI5MjM5ODc0YWZlMGNiZTYxYmIyYTFiYzUgbGVnYWN5LXRydW5rCisyMDIwMyAzN2Q5ZWQ1NTQxNmZmMTlhZDY0ZTRmMjk4ZTMzMzZlMDc0MzY5MzU3IGxlZ2FjeS10cnVuaworMjAyMDQgMGNkZmNjZGI2ODcxMGExMGM1NjY4ZGRkZjMyYWQzNDllOTQ2NWE0MiBsZWdhY3ktdHJ1bmsKKzIwMjA1IGIwYTdmYWY5OGE4ZWRiM2YzYWUwM2FjNDBmM2ZjMzQ3ZWVjOTYxZDggbGVnYWN5LXRydW5rCisyMDIwNiA3NjM1Zjg4MzhjNjg5MmUyOWMxNjBiODM5OGNkMmE0ZDQ5ZTZmZTYxIGxlZ2FjeS10cnVuaworMjAyMDcgYjczNTQ3YmY4YmMyNDg3MjkxYzUwZjVkYjNiZGVmNWM5Nzk3ZjY1YyBsZWdhY3ktdHJ1bmsKKzIwMjA4IDExZWJhNWJiZmExNGFiNTFhMzIyYzNjNDcyMmVkMjE1MWU0OWE5YTUgbGVnYWN5LXRydW5rCisyMDIwOSA2YmU4YmI0ODA4ZTE0ZWY5ZGRmOTg4NmI4ZWM1Njg1OWJiNzJmMTdkIGxlZ2FjeS10cnVuaworMjAyMTAgNTdhNWY2YjAzMzdkMWUxNzM4ODRlYjg1NGE2ZjhkZjIxNmIyOTVhZCBsZWdhY3ktdHJ1bmsKKzIwMjExIDMxMDA2NmI5OTJmMmY4YThlMWI3ODcwZGYyYWU5M2ZiOGI4YTc0YTcgbGVnYWN5LXRydW5rCisyMDIxMiBiMjVhMjQxMzAyMGUyMzU4Y2VkNzk5ZDcxZDJkZDkwOTg5NTFmMjYzIGxlZ2FjeS10cnVuaworMjAyMTMgOTkwNmRiMmExZmZhNzg2MTE0N2M3NzkzMjRiYzQ3YzY5OWE5NThiZCBsZWdhY3ktdHJ1bmsKKzIwMjE0IDkyYjY1ZjEyMWEzZTk3NjcyMDFlYTcxMDZkNjM2YTA1YjkxNWQ5YWEgbGVnYWN5LXRydW5rCisyMDIxNSA5YjhlYTYzODdkYzYwOWZkMGE5M2Y0ZjQ2OWJjNjg4MDgxM2U0N2MwIGxlZ2FjeS10cnVuaworMjAyMTYgYmQxMTBlYWRjMTlhZDQwOTk1MWJmM2FmMzAyYzE0ZDQ5YTQ1ZTc3MCBsZWdhY3ktdHJ1bmsKKzIwMjE3IGU3ZjViNzBiMDYwNmFiYjBkOGI1ZDk4OTNiNWM4OGI1NzYwMjI4OTAgbGVnYWN5LXRydW5rCisyMDIxOCA5MTFlMjExYjg5MzBiOTBlMjRmYmUyMmQxOWRhNWIzYTIwMDczMDhmIGxlZ2FjeS10cnVuaworMjAyMTkgYTNkZWIyMDFlY2RhMTBmODE1ZGFmNGFkOTI2YTE0ODM0YTg3ZDQ5NyBsZWdhY3ktdHJ1bmsKKzIwMjIwIGJiOWUyMTQwMzVlMTI1YjkxMzQ4NWMyNzUzNmUzNjBjNGY1NjM0NzYgbGVnYWN5LXRydW5rCisyMDIyMSA3NjA3NTQ0MThlZTAyNzBhYzRlZGViODVhOWEzOWE2Y2MxODdmNDg0IGxlZ2FjeS10cnVuaworMjAyMjIgMDgwODI4YmY4ZGJkZThmZTE4YjE0NTNiNmE5NmNmNzlhOTkyOTY1YSBsZWdhY3ktdHJ1bmsKKzIwMjIzIDRiMzQ2Y2MzOTg5YmFhOTkzZWE1NzU4ZGM5NGRiMmY0OWI3MmU4ZTIgbGVnYWN5LXRydW5rCisyMDIyNCAxMmY3ZjE2N2FjNTMzZDQ2YTRmZWU0MmNjMWI2MWM1MDZlOTk0NWFkIGxlZ2FjeS10cnVuaworMjAyMjUgZDMyOGNmZWIwYzc1YmMwNDY0ZGVkMDBhZDVjNzhmN2ZhM2QwMDY2MiBsZWdhY3ktdHJ1bmsKKzIwMjI2IDE4MWQwMTMyMGVmNDNlM2Y1NjRlNzZkNDBlOGZhMTBmZDA2MTczOWYgbGVnYWN5LXRydW5rCisyMDIyNyBiM2ZkNDRmZmFiMWU5MTYxMDJlMmY2YWIxM2ZlYjFlOGE0NDQwZTQ0IGxlZ2FjeS10cnVuaworMjAyMjggOTJiNjBkZWU3ZjA4MzVkZjI4OWNjZTU2ODIxNjYxNWI3YjgwNWE1NiBsZWdhY3ktdHJ1bmsKKzIwMjI5IGNjYWU0MTJiYmMzZTIyY2ZhNjI0OWE3MDJhOTdjOGQyN2IyMTA2NDIgbGVnYWN5LXRydW5rCisyMDIzMCAyMTQ2YTczY2UzNWMwYmRkNDQ5OWYzZWU5YjRiMTdiZTg1NGZmMTZlIGxlZ2FjeS10cnVuaworMjAyMzEgOTZlYTBlY2NkYjMxNzM3ODg4MzU4ODE2YjY3NzE2NmZiYTBmMjhjNSBsZWdhY3ktdHJ1bmsKKzIwMjMyIGMzMjc1MmEyODY1MjIxM2UyYzM3ZTY3ODM3YzIxZGIwZDExNTA1MjQgbGVnYWN5LXRydW5rCisyMDIzMyBhNTcxMDU3OGMyZTAyMjE2NjI5MzM0YzFhMWI3Y2UxZTViYWJmODIzIGxlZ2FjeS10cnVuaworMjAyMzQgYWI0ZTRjYjA5NGMxZjY0MzBkNDM4YzkzZjdhZmM3M2FhOWYyODc3MyBsZWdhY3ktdHJ1bmsKKzIwMjM1IDgzZWU2M2JjZjAzNjU5ODcyN2ZiNjI3MDNiYTEyZTBmMjA1M2Y4YzEgbGVnYWN5LXRydW5rCisyMDIzNiA5ODc2ZDZiYWY4NDM4OTYzODFjZmM4NjJlY2RlMDlmYTQxZDUzN2VkIGxlZ2FjeS10cnVuaworMjAyMzcgZGU5ODU4NTMwYTU1M2RjODRlYWFkZGU4MjE2OTZiZDExMGFiOTczMCBsZWdhY3ktdHJ1bmsKKzIwMjM4IGYxZDJlODhmYTExZGUzMjYwNTgzNTkwZTIxOTVlMzFmOGFmZmQ3NzQgbGVnYWN5LXRydW5rCisyMDIzOSA1YWZmZmNhNjZlMmZhZTI2ZjIwNjAyN2ZhYmIwZmMwOWU3MTlhZDYyIGxlZ2FjeS10cnVuaworMjAyNDAgZjhmZGJlYjczNjY3MDhiNzMzOWNmMWQ3ZDhjODQ2NGUyNWE2MGRlYyBsZWdhY3ktdHJ1bmsKKzIwMjQxIDg3Njg2MWYxMzU0MzZjZTdjNzljZjk2ZWMwNWIyOTcwMTY1YWEzZjAgbGVnYWN5LXRydW5rCisyMDI0MiBhOWVmNDRiYmQ5NjgyOTA1OTdiNTY4NjY2OTRmMjMwN2U4Mjc2ODg2IGxlZ2FjeS10cnVuaworMjAyNDMgZTcyMmQ0ODgzZTE5NzE1ZWYyODhhNTJlMTY1M2RmMGNjMDNlNDc3YSBsZWdhY3ktdHJ1bmsKKzIwMjQ0IDMzMDhhZmNhYTEzMTU1ZDczZDYzYjNlYmViM2RkMTgzNzRjYTdmZDMgbGVnYWN5LXRydW5rCisyMDI0NSAyZDMwYTA5OTcwNWYzOWZjZGNlYWFlZDg1ZDYzNDk5NjdlMjdiMWViIGxlZ2FjeS10cnVuaworMjAyNDYgZWQzZTY2ZjMwODM3YzIyMTE2NTE2ZmNjZmQ3ZTNiNWY2MzY5M2E2ZiBsZWdhY3ktdHJ1bmsKKzIwMjQ3IGFlZDZiMTQzNmRiNDc4NzBmNWM4MDA1OTQyMzBhNDQzOTkwYjNkYTAgbGVnYWN5LXRydW5rCisyMDI0OCAxOTQzMzE4ZmFlMzE3N2E1OGVjYmVlYzBmM2M5NGRjODE2NDk5NTI0IGxlZ2FjeS10cnVuaworMjAyNDkgNDQ2OGE4ZGE2N2NhMDEwNDI0ZWFlYTc0YTc4MjhjZGJmMGY2ZjVmOCBsZWdhY3ktdHJ1bmsKKzIwMjUwIDI4Y2YwYTc5NDNjZmQ3YjIzNTMxYmMyZGQ2OGIxNDMwNzMyYTRiZGMgbGVnYWN5LXRydW5rCisyMDI1MSBjYzhhMjFiYTY0NDk5OGNjZWFkNDI5NjkyNDUzZTdiZmQ4ZDI0YTNmIGxlZ2FjeS10cnVuaworMjAyNTIgM2FhZWRiYWM5NWIzMTJiZTVmMTM5MTg4NDk5NDk1NGI2ZmM2MTg2ZSBsZWdhY3ktdHJ1bmsKKzIwMjUzIGExODQwYjliMTRmMTQ1ZjBkMWYxMGQ5NzJjYTZiN2QzZmNlODA5ZjIgbGVnYWN5LXRydW5rCisyMDI1NCA5NjIxZDBmYmMyZTUyZjBkN2Y0OTgxYjczZjk3MGViZjBlN2YzMzY2IGxlZ2FjeS10cnVuaworMjAyNTUgY2E1NjVlM2QzY2M1YzA2OTdmY2EzZDNiZTUxODM5ZGYxNTc2YWNjNyBsZWdhY3ktdHJ1bmsKKzIwMjU2IDZiOGQ5MWVhOWRlMzQzNDBmZGRhNmQ0MmYyMTJiZGRlZTFhZDk4NDUgbGVnYWN5LXRydW5rCisyMDI1NyBkMTA5ZWM2NjdlYzI1ZDhmZWQxMDYyYTM0NzZmMGZlNjhmMTQyMWE4IGxlZ2FjeS10cnVuaworMjAyNTggOGEzYmExMGYxMGY2YTI1NDkxNmFkNDgwZWFiY2ExMjM4NWI3YzFiMCBsZWdhY3ktdHJ1bmsKKzIwMjU5IDExZThiYjRkODQ1ZDJjMGJlNTNmZTAxYWJiZjU2NjM4MTE3ZGMzYTQgbGVnYWN5LXRydW5rCisyMDI2MCA1MDc5ZDZlM2I2MTUwODAwNzg2NjVmY2I0ZDYyZmQyNDdiZDBiMmIyIGxlZ2FjeS10cnVuaworMjAyNjEgZTJiM2U2ZDg1MzQzMGEyMTBmY2JhYWZlZmZhZTNhZDExNTAzMzFlYiBsZWdhY3ktdHJ1bmsKKzIwMjYyIGJiNzVkOTNmNmEzMWM5MzM0ZGVhNmMzNWFlZDgwYmRjNDdhYWRhNzcgbGVnYWN5LXRydW5rCisyMDI2MyBmMzk4ZTU4NTZmYTc0NjUzMDU1YjhiYmMzOGE2MzkzMjkwMDFiMWY1IGxlZ2FjeS10cnVuaworMjAyNjQgNjVmMzYzMjM2ZWNmN2ZhNmE4MzZhYTlmMzVjZGMxZTIzNzQyMTkwMSBsZWdhY3ktdHJ1bmsKKzIwMjY1IGU4NDNlZWU3YTMzZTg2MjViMDYyNmE0OTdmZmE2NDIyMzI5ZjFiNWUgbGVnYWN5LXRydW5rCisyMDI2NiBkMzgyNzkyMjkwOWNhMjU3NTRkYjljNzY1MWUxZDUxNTQ0MTUyY2UyIGxlZ2FjeS10cnVuaworMjAyNjcgZTU0ZTExYzMwZTRiMTU0OTdjM2Y3MmNmZTQ2OWUxODRkMDIwM2EwMiBsZWdhY3ktdHJ1bmsKKzIwMjY4IGNiNDBlNzcwYzkwM2RkOGUwYjk5ODk5MWYyYTEzNGI1ZjkyNDIxYWUgbGVnYWN5LXRydW5rCisyMDI2OSAwYzg3YWM2NzRjZTE4MjA2NzRhOTgzZDRjZjVkMjMxYWU3YTM0NDhkIGxlZ2FjeS10cnVuaworMjAyNzAgYTgwYTg0N2Y1ZjRlYmE1OGJlMTAwOTUwNDQ2ZmJiYzU0ZmQxNjNmNiBsZWdhY3ktdHJ1bmsKKzIwMjcxIDVmNjg3NTRlYjNiNmJjODAwN2MzM2U5NzBmZDBlY2M5MWI4ZDgxZGYgbGVnYWN5LXRydW5rCisyMDI3MiAzMGU1MjcwZGIxMjgzYmY4Y2RhMGFhODZkMTYyNmRmZDg0YzM5MjNkIGxlZ2FjeS10cnVuaworMjAyNzMgMGY2ZDhmZTRhM2E5MWNmZDdjZGM3MDkyN2Y1YTQyYWZlY2RjY2M0OSBsZWdhY3ktdHJ1bmsKKzIwMjc0IDQ2MjJhZjRkYTllMjgyZmIxZGNlNzhhNWFlMzExOWNhMTlkNDRhMWIgbGVnYWN5LXRydW5rCisyMDI3NSA4YTJkZDk3ODczZjI1NzYyZmY0YjdjYjMzOTcwZmE2MjVjYjkzNDg5IGxlZ2FjeS10cnVuaworMjAyNzYgZDM2ODU1MmMyYjcyNjEwMWY5ZmZiODY5YWM2NTY1NTc5YWQ5NjgxZiBsZWdhY3ktdHJ1bmsKKzIwMjc3IDdjNGJhYzJmN2IzYWI3MThlMjM5YjcwMzQ1MWNlODUxNjNjOWQ1OWUgbGVnYWN5LXRydW5rCisyMDI3OCA5YjI5N2FmMThlMmYzMTUwODQ0OWNlNDY2MjNiN2U0ODE4N2M4ZmQ2IGxlZ2FjeS10cnVuaworMjAyNzkgYjYxMmI1MTlkNDFhNTQ2OTg3NmU1MzA5YTllNmM3MTI2ZjRlYzUyMSBsZWdhY3ktdHJ1bmsKKzIwMjgwIGJiY2M5ODM3MzEyZThlNTlmNmJjNTgwOWQ1M2E4MWY3ZTNjY2EzNDggbGVnYWN5LXRydW5rCisyMDI4MSAwZWMwNmI0NzU1ZGI3MjRkNTI2ZWRhMzkyNDNlM2YzNGNjNzRmODEyIGxlZ2FjeS10cnVuaworMjAyODIgZTRhYmU3NGJjOTczMmQ3MjhiMzFhNWY0YTUzOTUxMjkwM2MyZTZlNyBsZWdhY3ktdHJ1bmsKKzIwMjgzIDQ3MWNlMGZhYTc3NTBmNDIwOGU2OTUyMTZlYzc0NGQ3NDFkZmJmY2YgbGVnYWN5LXRydW5rCisyMDI4NCBiMmJjNTYzMzIwNDVhZTAyNTI1YWI5MzFmODgyYzQwN2M1MWU1ZDlhIGxlZ2FjeS10cnVuaworMjAyODUgMTEyYmQ0N2UwNzhkMzE5MzBjNmM1YzgxNzJhNThhMGVjYTY2NzQ3MCBsZWdhY3ktdHJ1bmsKKzIwMjg2IDY4NzM1NDlkNDg0Yzc1ODVkNjBiZDJiZjM0NzRlODhhMmEzMmIwMmMgbGVnYWN5LXRydW5rCisyMDI4NyA0YjA2ZTRkYjAwNzVkYzNiMDU1YmZlZmRjMThlNmNlYTNlNGMzYjQ4IGxlZ2FjeS10cnVuaworMjAyODggNzE3YjBjOGRlNzFlOWExMjY3ZWU2MmNjOGQ4ZmI2ZDdjMmZmZmU0OSBsZWdhY3ktdHJ1bmsKKzIwMjg5IDg2M2U4MDczYzdhYWYzMWYzMTdiZTg3MmZkMWQ3NjU3ZGMzYzA5YWUgbGVnYWN5LXRydW5rCisyMDI5MCBiZWI5ZDJiMDI4NDY1N2JlMjNmYTlmOWIzNDQ5OGUyZGFhODhjODlmIGxlZ2FjeS10cnVuaworMjAyOTEgY2Y4YTU5NWNlYzMzNzQ4YjUyMzYyNDA0ZjczMzUzYTVhNmY4OWI1OCBsZWdhY3ktdHJ1bmsKKzIwMjkyIDAwNGM5YjAzMTkyNDFjNWMwNTQ2YWMxMGNiNTliNTRiOTA0N2I3ZTQgbGVnYWN5LXRydW5rCisyMDI5MyA3MDc2M2M0NzUyZTJmYTNmN2VjNmJhMzkwMTI1MDQ2YmYwMDM5YTg5IGxlZ2FjeS10cnVuaworMjAyOTQgMTM4NTdmYjMzMDE3NzBjZDJjYTQyNzZiMWEwYmYyNTlkNDEwYWZiOSBsZWdhY3ktdHJ1bmsKKzIwMjk1IDg1M2Q2YTk3YjdkOWI0ZDM4NmM3MzVmNmNmMGEyNzBjNmU4NjUzNWIgbGVnYWN5LXRydW5rCisyMDI5NiAzYjkwNWYyOGYyMjU2OThjOGI0ZDNmNTZjNTEzMDQ3ZDk4ZWFmMzkxIGxlZ2FjeS10cnVuaworMjAyOTcgMzRlYzVlMmZhMzU2MWVjYmYwM2FlYWVjYTg1OTlhZmM5YzA2MjBhNCBsZWdhY3ktdHJ1bmsKKzIwMjk4IDAxNzkxYTA5NzQ1NmI2ZmU3NTEyZTYwOGQ3MTExMDQzYTIxMmIwZTkgcmVsZWFzZTIwLW1haW50CisyMDI5OSBhZmJiNjViNjBmYTIwMzgxOTMyNDFiNTA1NjYyNDcwZTkzMjZlYTkzIHJlbGVhc2UyMC1tYWludAorMjAzMDAgYzllMDdiYzMwM2EyM2VkMGM3ODNiOTkwNjFhMzE5MjcwZDY5YzIyZSBsZWdhY3ktdHJ1bmsKKzIwMzAxIDlkNzZkODU1MmMzNjEyNzc0ZDZhYWFmNDc4ZTY0Nzk4NmQwZTBmOTMgbGVnYWN5LXRydW5rCisyMDMwMiA2OTRiOGMzZjI1ZTdjNmQzNzMxZjE0MjU1OWE4NDJhOGM0ODg3ZDI0IGxlZ2FjeS10cnVuaworMjAzMDMgODRhM2Q3MGVjNmY0NGQ2NWZhZWJjNzQ5ZDhlOTIzOTgyNTU5NTVkNiBsZWdhY3ktdHJ1bmsKKzIwMzA0IGY5Njc0ODllZTNiNjRiYWQ4NmU3NDVkMTVmZDg2N2U0ZDI1YmY2ZjMgbGVnYWN5LXRydW5rCisyMDMwNSBiZDg0NGIyMGI5Yzg1NDRmYjkxOTk3NzhhZmU3OWYwODk3MmRlMTRlIGxlZ2FjeS10cnVuaworMjAzMDYgMzcwNGJlM2RiMzAyODYyNjBmNjI4YmJmYjZhYmMxOGVmYWVkZTRmYSBsZWdhY3ktdHJ1bmsKKzIwMzA3IGJhZDJkYWViNzQ0MGMzMzEyMDQyZDU2Zjg2NDBmZWZkMmQyN2NmNmEgbGVnYWN5LXRydW5rCisyMDMwOCA0YzQ5N2M1ZTcyYWRjZTFkYjhkY2I4NWEyNmM0OTIxMzBkMDJmMWQ2IGxlZ2FjeS10cnVuaworMjAzMDkgNjVhOTIyNTFkNmI4NWNhYzIzNTllMjYzZDgzNTg2NmE3YmQxMTg4OSBsZWdhY3ktdHJ1bmsKKzIwMzEwIDlkY2I0YmQ2NTE1NDhlODc2OTlhNjIwZjBiYzZmOTBiM2RhZDk2YzMgbGVnYWN5LXRydW5rCisyMDMxMSBiOGZjZjQ1ZGM2ZmRjNzQzOTIzZGI3NjY0Yzk0MDRhMmI1N2M1NTliIGxlZ2FjeS10cnVuaworMjAzMTIgOTY1ZWViNDRlNDU0NDEyMWMyMjE3NDY5MGMwMjYxM2UxMmUwYzJmYyBsZWdhY3ktdHJ1bmsKKzIwMzEzIDNmYWRjMzdjZmE5MjA5ZWQ0MDY3NmU1YTA5YzI2NDBhMzc3NmM1NmIgbGVnYWN5LXRydW5rCisyMDMxNCA2NDM5NjI0M2MxMTQxZGNmOTA4NzYwZDczYzFkNDA3MDQ1YmJiNDNkIGxlZ2FjeS10cnVuaworMjAzMTUgMzQwMmM3MTY2ZDMwODExNDRjY2E0Y2JmMjQyZWVjMDM2ODU1ODQ2NCBsZWdhY3ktdHJ1bmsKKzIwMzE2IGYzZjk2NDE3NDNhMDdlODhkZjllZmM3OTg2NTI5YWJjZjBkYzY5YjQgbGVnYWN5LXRydW5rCisyMDMxNyA2MzJjNGQ1Yjc1YjdhOTZkZWMzZmNhMzJkM2FhYWFiOWEyYWEyMTIxIGxlZ2FjeS10cnVuaworMjAzMTggN2M2MTcxNTc1MmJlMjAyNmFiYjU4YjA0NTEzODQwNzkwMTA5ZDAxZCBsZWdhY3ktdHJ1bmsKKzIwMzE5IDhlYzdmNjU2ZjgwODMxZTZkYzY2MTJhMjQzZTVlNTYxMDc3OWYwYTAgbGVnYWN5LXRydW5rCisyMDMyMCAyNTdiNTdiY2NkZjNiZTg5NGIyYmQ4ZmQ5NzY3ZWQ3OTIxNjNhNjQ3IGxlZ2FjeS10cnVuaworMjAzMjEgMzE2MGRhNGRkZDg5MWFlMGJlODA2ZmQxZmZlMmViNjdjYTMwNzc5OCBsZWdhY3ktdHJ1bmsKKzIwMzIyIGVjMDc1Y2M4MmJkYjNmNTdjMmVmNWJmNzhmY2RkNDczOGYzN2IyZDIgbGVnYWN5LXRydW5rCisyMDMyMyBjMmZiMmQ0NzZiZDM4Y2RmMjdhYjM4NWMzNDk0ODM2MjgyYmIwMDg1IGxlZ2FjeS10cnVuaworMjAzMjQgZTUwMDkwMjVlNjJmMmMxYWY5OGZjMzQ3MGYzMDE1ZmEwMmRjNmYxNCBsZWdhY3ktdHJ1bmsKKzIwMzI1IGI0YjNjZmZjN2MzNTVmZjIxNGE0YjQ0ZDU3ZjAwZjFhZGNlMGRkODYgbGVnYWN5LXRydW5rCisyMDMyNiBiZmMxMGE4MDU0NWJhYWQ4ODkzYjJiOTMxNDFiOGM0NGQ2ZDhiNzI0IGxlZ2FjeS10cnVuaworMjAzMjcgYjAwNWViOWJjODQyZDk3YTVhMzE1ZDIxZDk1YWMxMWJhMmU4MWYxMyBsZWdhY3ktdHJ1bmsKKzIwMzI4IDJjY2MwZjJjOWUxZjI4MWZhMmNmY2MxYjJmYTA2M2M3NDJkOTE1ODQgbGVnYWN5LXRydW5rCisyMDMyOSAwZjMyYWI1YWZmZjg5ZTY0NGIxNjc3MDYxNGQ4NWFhNjYyNjY1MjRmIGxlZ2FjeS10cnVuaworMjAzMzAgOThmNjkyNDViYjY5Y2QyNDdhZmQ0MzI5ODQ0NmJjZDkzYWJiNzQ2NyBsZWdhY3ktdHJ1bmsKKzIwMzMxIDAyZDY5YTg4NzAzODkxMjE0Yjc4NzI4YzUyYzM0YWFmMWE1NGVhMGMgbGVnYWN5LXRydW5rCisyMDMzMiA0MWE0MjMyOTRjYjUxMzEyODU5YTVlYzYwNjZkYzMyZmMzYjVkYTY4IGxlZ2FjeS10cnVuaworMjAzMzMgZmJjMTJkNmNkMDUxMWI5NGU2NDE0YjA1ZDU3MGUwMzliOWFmZmZlOSBsZWdhY3ktdHJ1bmsKKzIwMzM0IDFjZGZmMjgzOGExNzhlZjQ2MWQ5MjRiYjlmODc5NjQ1NGJhNzA0YjMgbGVnYWN5LXRydW5rCisyMDMzNSA3NGI5ZmIxYzk2MzM5NzkyOGEzZTVjMGVjOGRjOGY5YWU1MTMxYTJkIGxlZ2FjeS10cnVuaworMjAzMzYgMmQ1MjE0MjBkYjhmMWUyOTJiZTJkNGMxY2Q3MTE4ZGUxYWZjM2NkOSBsZWdhY3ktdHJ1bmsKKzIwMzM3IDkyMzdmNThkY2MxOTIyOGYwOTBkNWY2MzJlZDgwYTMwNWQ2YmU1MzEgbGVnYWN5LXRydW5rCisyMDMzOCAxMTE5MDJjOTkxYTkwNGYzY2EyZTE0MDI0ZmE3OGEwZjU0NDU0NDA3IGxlZ2FjeS10cnVuaworMjAzMzkgZjBmMDQ2N2EzMzM0MmRhYzg2NzY5ZWMxN2I5MTAzNzg0MThjMDZmNiBsZWdhY3ktdHJ1bmsKKzIwMzQwIDAxODRjNTBhODc1MTBhZGE4MTdlYjU5OWFlYTU5MzllYjQ0NWFiZGEgbGVnYWN5LXRydW5rCisyMDM0MSAwNDc1YzhiNzIyM2JhNThiODQ3MTlhNjk4NzFhMjFmZjc5MTk3NjdmIGxlZ2FjeS10cnVuaworMjAzNDIgNDVjMTgyNTE5NmVkNjYwM2E3ZDJkYTVkNTllMjBhYTI4OTgxODJhZCBsZWdhY3ktdHJ1bmsKKzIwMzQzIDUxYzhjZTFhMmUyNTk5NTNmMjlkY2YyNmM2YjIwMWI1ZmNlN2Y4N2YgbGVnYWN5LXRydW5rCisyMDM0NCBmNzRmNWFhZmRjN2UyNTBhNWQ1NGQzMzUyMzhmOGY5NDVlNGNhOWE3IGxlZ2FjeS10cnVuaworMjAzNDUgOTk0MWM0NDgxNmMxYzczMDY4OWJkNGY1ZmE5NDFlN2Y3ZjY4NDNjMyBsZWdhY3ktdHJ1bmsKKzIwMzQ2IDFhMmZkNWM0ZGNmNTcwZmQxMGRjZTQ0Mzg1MTMwMGE4N2QxNDZlMzYgbGVnYWN5LXRydW5rCisyMDM0NyBmM2I2YWMxMjhkZTlmMTM3NWI4YTRmOGQwNzQ4Nzc4Zjg5YThkMmY3IGxlZ2FjeS10cnVuaworMjAzNDggZDkxNTc3NzgzMzM1NzY0MTQ2MWU0OGQ5MTZmMzI3YmMxY2JjYzliYiBsZWdhY3ktdHJ1bmsKKzIwMzQ5IDRlZTM0NmIzNTUyNGE4ODVkZGRlZTQwOTljYmFhYTE5MjVlNDRmMzkgbGVnYWN5LXRydW5rCisyMDM1MCAzYmRhNTkwNzEzODk1MTM0MTcwNDFlODgxZTFiOTRjZWJlMDhkZjU0IGxlZ2FjeS10cnVuaworMjAzNTEgNjZhN2M4YzhkZDI3MjM4ZjY0NDMwYjIyZGZjMGYyODZkZjdkNzNiZiBsZWdhY3ktdHJ1bmsKKzIwMzUyIDBkMDU0NmJkODQ0OGFjNTIyMGMwMWZkYjgzYjIwMTg4N2FjZTdlOWUgbGVnYWN5LXRydW5rCisyMDM1MyBlODQ2ZTk2MGU3ZjYzMWZiYjNhYTA2MWFkNTFjM2U1MDBmYTE0MjEzIGxlZ2FjeS10cnVuaworMjAzNTQgOTljNDcxY2VkMTcwMTg1Y2RmY2Q4MmRiZGU2MDRiN2M3N2VkNTFlNyBsZWdhY3ktdHJ1bmsKKzIwMzU1IGEwMDRjNjJlNjk2ZTZlMjI5MTA2ZjdhMzg3ODFjYTE5MzFmYmJkYjUgbGVnYWN5LXRydW5rCisyMDM1NiBlODc0MWRjMzZhZDEzYjkxOTQxOTQ4OTRkNjJhYzIyOTNlYThhMzk5IGxlZ2FjeS10cnVuaworMjAzNTcgYzI5ZWUzNzNmNzE4Zjc4YWI0MjM0NmQ1YWNjMTRlYThjYjYzYjVhYyBsZWdhY3ktdHJ1bmsKKzIwMzU4IGYxZWM1MmVmNzcxYzExYTZiNGJkYzRiNzhiNWExNTZhM2Y3MGE5YmQgbGVnYWN5LXRydW5rCisyMDM1OSBmMjQyNzJlODk2MjE1MjU3ODg1MWRjOTEyOTAzZTNiMjAwNWNlNWE0IGxlZ2FjeS10cnVuaworMjAzNjAgYjg0ZjA4NGIyOTkyYTgxZTZiMDZjMjA5YmIzY2VjMzVmNzA2NzYyMSBsZWdhY3ktdHJ1bmsKKzIwMzYxIDRiOWU2ODRiZWJiODcyZWIzYmUyNWZkNDdlZTVhYzMzZTZjNWIwNTEgbGVnYWN5LXRydW5rCisyMDM2MiA4YWE0ZGUyMDdhZTM2NGI0NGJhYWMyMjg2OGVhOWI4YmUwMzIxZTZiIGxlZ2FjeS10cnVuaworMjAzNjMgOTI2YjY0ZmJhNWU3ZWQ1OWEyZjQwMTNhY2Q2MzQzMTNiOTA1NGQyZiBsZWdhY3ktdHJ1bmsKKzIwMzY0IGI0ZTJiOGU5ZjFlNjg0MjM2OGY5NmZhOTQzOTk1ZjI1OTMxZTI3YTQgbGVnYWN5LXRydW5rCisyMDM2NSAyNGU4MWI0MzA2N2RjNjVmNWFhMjM4MTVkMDk0MGFjNDQ4YTJkODIwIGxlZ2FjeS10cnVuaworMjAzNjYgMjg4OGZjNjBiZjlhY2VhZDY0ZGUxMjgzZDFhNzY2NWJjOWQ5MjBkMCBsZWdhY3ktdHJ1bmsKKzIwMzY3IDMzOWE5M2IwMDg0Yzc1YjNhYzQxNzg2ZDYyMzFmZTU0NTU1ODY3NjggbGVnYWN5LXRydW5rCisyMDM2OCAxNDI1NDVkMmFhZmM4MGE3NzczYTZmOTBmYTc1MDBiY2ZiOGI2NTQwIGxlZ2FjeS10cnVuaworMjAzNjkgNGFiNTg2MjQ2NTNlN2Y1NWFlMWI5MDRhMjgwZjkyMTViOWQzNmY0ZCBsZWdhY3ktdHJ1bmsKKzIwMzcwIDI1ZjU1YjJlMzhhY2M4M2QyYmQyZWExNTRhMTc3ZDlkOWE0YjUxMGQgbGVnYWN5LXRydW5rCisyMDM3MSAwYjY5ZTE3ZTA1NWZhNzRlMjU5N2NmM2U3NmFlMTFkMDE2YTQxMDRhIGxlZ2FjeS10cnVuaworMjAzNzIgNjEzZGNkNTQ3NmI2ZTZkYTliZmZlZTMzYmVmMmYyYjRlNzNkMTBlMCBsZWdhY3ktdHJ1bmsKKzIwMzczIGVkMDdkNmE4NzNlNzM0MGM1ZWQ5Y2EyYTBmOTM5MmJkOGNlOGI0ZjkgbGVnYWN5LXRydW5rCisyMDM3NCAwNGRhZWUzYWI2MjdhMGE2OTJiYWI5MjE5NGQ1MmI5YzZiNDkzNzgzIGxlZ2FjeS10cnVuaworMjAzNzUgOTlhZDAyNTdiOTQyZGVkYzE3YzZiMmRmZGUwYWY4ZTU2MDBkNzhiYiBsZWdhY3ktdHJ1bmsKKzIwMzc2IDIyNjUwMzJlZmM5ZjBmNGJjNjI4ZGIyNGY5ZDNmNjM1NTI5ZTQzN2QgbGVnYWN5LXRydW5rCisyMDM3NyA3MTc1MmE0MWI1N2Y5OGJhNmNjNjVmZDg4YjExMTgyYTRmY2NjYjg3IGxlZ2FjeS10cnVuaworMjAzNzggN2U4MjlkZDAzZjk3YThiNjljZjA5ZmYxYWEyZmM2M2YzMzE5NWNmYyBsZWdhY3ktdHJ1bmsKKzIwMzc5IDY0MGFmZmRmOTllNTA3ZWE1MTQxMmViODcyNzE5ZDE5ZGFjMmUwMWMgbGVnYWN5LXRydW5rCisyMDM4MCA3NGU3ZTkzZWNkNDE0MTlkYTY5NTZhZGJmMmNmN2ExZGM3NzZjMjNiIGxlZ2FjeS10cnVuaworMjAzODEgOTZiZDRhODRmMWE0OTRjMjdlNWM0YWNhYjNkYjVkNDNmNmFkMTViZSBsZWdhY3ktdHJ1bmsKKzIwMzgyIGY3YzEyYmE0MjczNzA4ZWM4YTkyOTJhNzcwMjcwMmU2MDRkMjQyZWUgcmVsZWFzZTIwLW1haW50CisyMDM4MyA1ZjRmY2ZiOGQzZGQzNjY3MDFhY2UzMDgzYjRiODAyZjRmYTA1MDRhIHJlbGVhc2UyMC1tYWludAorMjAzODQgMzUxMzlhOTQ1NGQ0MzgwMTVhZTdiMjBhNzI2MmQ5MjVmM2Y2OTQwYSBsZWdhY3ktdHJ1bmsKKzIwMzg1IDE1Yjc2MDllM2UyYzg5MWQ0ZDYwMjM0ZmU2MGY1YTcyNmJmYzc0MzcgcmVsZWFzZTIwLW1haW50CisyMDM4NiBiNjVkMDg5ZTg4NDE4OTBhMTBmN2I4OGFkOWVhZjdhNmExZWYxZjA3IGxlZ2FjeS10cnVuaworMjAzODcgNmVlYTRjZWI3NTE2NTI4MmUyYjliODI5YzYwY2IyZmU4MjY5MzQ5ZiBsZWdhY3ktdHJ1bmsKKzIwMzg4IGEzNDI5M2NlZDYzYjYxMDlmNDc1ZTY1ZDg4MzY2ZjEyYzFmN2Q0Y2IgbGVnYWN5LXRydW5rCisyMDM4OSBlNTI2ZDkyNDg5NjVmNDdkNDczNWNiNTU0ZWYwOTE1NDhkYTAwYmI2IGxlZ2FjeS10cnVuaworMjAzOTAgMGIwNjBjZjc2MmNlNzM4NTE5ZTkyZTllYTRmYzQ3MmFkODI3MjBmYSBsZWdhY3ktdHJ1bmsKKzIwMzkxIDZhMzc3NjIwMTc1MDc1ZmQzY2I5NzZkZmQwMWViNDVmYTNjN2E3MzQgbGVnYWN5LXRydW5rCisyMDM5MiBmNzJkY2Q2N2NjY2IwOWNiMWE4MDE0OWQ0MWJkNTY0ZTRhNWUwYzFiIGxlZ2FjeS10cnVuaworMjAzOTMgODA2ZmQ4ODAxNWY1M2I3MzkxNjI2NmVhNGE2YTYxNzEyZThmZDYzMiBsZWdhY3ktdHJ1bmsKKzIwMzk0IDVlOTlhMWQwZWE0ZGQ3OTA0NGE3MGMwMTE0ZDI3MTg3ZGJmMWU5NDkgbGVnYWN5LXRydW5rCisyMDM5NSA2MWQ5NTRlN2JlOTkyM2E0MzRlYzk3ODNjNjgwN2UzZTY0NDFhZWU5IGxlZ2FjeS10cnVuaworMjAzOTYgYzViYWI3OTRkY2RlNjQ0OWMyODU3YjBhMmNiNjcyNmE2MjY3MzZmOSBsZWdhY3ktdHJ1bmsKKzIwMzk3IDMyN2VmYjU5ZGJjZGU3YjYwY2JhMzhjM2FjOWMzOGYyYWY3MzE3N2YgbGVnYWN5LXRydW5rCisyMDM5OCA4ZTE0MTVlZjliMjhkODMyNmViZmUyNWJjYmM1YzQxMWM2MjNjNjcwIGxlZ2FjeS10cnVuaworMjAzOTkgMTExNTNjMTQxOTk5MzFhYWE2NDZiMTE2MmM3OWQ3ZmE1OTU0ODFjMyBsZWdhY3ktdHJ1bmsKKzIwNDAwIDU1ZWUxNWM0ZWVlNjgzZjRhYWEyNTBiMDk0ODJmNWU0YjcyZWI0MmQgbGVnYWN5LXRydW5rCisyMDQwMSAwNjhmYjU4YTExZDQ4NjgxYzE1YWU5NzAzYjg1YzIwMjJhZmFjOTcyIGxlZ2FjeS10cnVuaworMjA0MDEgZDYxMTI3NmU5YWQ1M2I1ZDMyZDFlODA2NWUxZDgxMWMzMmY3ZDk2ZiBsZWdhY3ktdHJ1bmsKKzIwNDAzIDdiNjdlYjI2YjM5YWI2OGJmNTYyZjczNjJkYzk1ZGI1ZTRhZTY0MjcgcmVsZWFzZTIwLW1haW50CisyMDQwNCBmZDA2ODNjYjczMDEyZmFhYzA1ZmIzZDBjOTE2NjQ4ZDQyZDEzNmZlIGxlZ2FjeS10cnVuaworMjA0MDUgOTBhZTM3ZmY2MTdmY2ViNjA0MTYzOTI5MDE3MWNmNWQzMzViNzllNyBsZWdhY3ktdHJ1bmsKKzIwNDA2IDc2ZmFlNjE0NTI2Y2VjMWViNmI1NWRhOTViOWM2ZWRlMmM3MDg3YWEgbGVnYWN5LXRydW5rCisyMDQwNyBjNjUxY2ZkMGZmZDQ4OGE1Y2MzN2NjOWQ4ZDk2MGJhZmNmNzU0ZTliIGxlZ2FjeS10cnVuaworMjA0MDggNzczYzY0ZDM4YWM2ODk3Y2U0ZTk5OGFiNGQ2ZWFhNjA1MjM4ZGRmNSBsZWdhY3ktdHJ1bmsKKzIwNDA5IDgxODIzY2ZiNWIxNDY4MjNiMzYyMTcyZGQ4MjhiM2QwM2E4MWE5ZmYgbGVnYWN5LXRydW5rCisyMDQxMCAzM2Q3MWU4MGEwOWM3NzMxOTA5NGRkYWEwNzQyMGY2OTRlMzIxOWQyIGxlZ2FjeS10cnVuaworMjA0MTEgMWUyM2Q5MWMwYTgyMWMwNmRjNjgyNzJiNDAyYWVjMGY2NjVmZDA1ZiBsZWdhY3ktdHJ1bmsKKzIwNDEyIGY5MzljZTUyYTczNGQ1ZDJmNmIwNGMyMDY4MGQ3MGIxM2IxMzZjZWMgbGVnYWN5LXRydW5rCisyMDQxMyBmOWRmZDU4N2MxNDJiNjhkZGJkZmU5Y2NmYzlkYmUzN2M3NTE3YjkxIGxlZ2FjeS10cnVuaworMjA0MTQgMDViYWQyZjA1YmZhNmVjZWYyZjE0ZTQwODczYWY2YmI4ZDdmZGI1ZCBsZWdhY3ktdHJ1bmsKKzIwNDE1IGM5Y2FlNWE3MGI0ODI5NzIxMjUwN2ViYzQ4YmViMTQ3Yjk5MGNlMDcgbGVnYWN5LXRydW5rCisyMDQxNiBiMjg0MGEzYzU2MDFkNzc0MzAwMDI0MWY2ODcxZTQ1ZmJmOTJlNDk1IGxlZ2FjeS10cnVuaworMjA0MTcgODM4OWM0ZGY0ODhkYjA1YjNlMDE1MGJiNzg3M2QwMzViMmUzNjdjYiBsZWdhY3ktdHJ1bmsKKzIwNDE4IDc5ZWZiYzlhMDNkZWZjMzJlMzcwMDllMzlkNmE1YTI3Y2ZhNjMyNDEgbGVnYWN5LXRydW5rCisyMDQxOSA1ZmIwYzQ2NzUzZjk4MzAxMDc3M2MyOTI5ZGYxNzcxZTI1Yjg3YzM0IGxlZ2FjeS10cnVuaworMjA0MjAgMGY1YTI2YWE0ZTRhMzBhZTY0YjNkM2QxZjZkZjc5MmY0MGE0OTU3NCBsZWdhY3ktdHJ1bmsKKzIwNDIxIDAxYmUwODMzMzMwOGVhMzUzYmM0N2Q2YzY0OTBjMjMxOGE0ZjBhMDUgbGVnYWN5LXRydW5rCisyMDQyMiA1MDBkNTM0NjBmNTYwODM1OGIwNjFhYTU4NjIzOTFlZWQ1MGYxYzYxIGxlZ2FjeS10cnVuaworMjA0MjMgYzQ0NDJmYjk5ZDI2NWZiMTQ5OGM5MTM4NWUyNDFjYzk1ODYwOWUyNyBsZWdhY3ktdHJ1bmsKKzIwNDI0IDE3YTcxZDJiODFmN2NmNzg1NDJjYjM1MzhmNzk2OTM4OThlODFmMDggbGVnYWN5LXRydW5rCisyMDQyNSBjNDk3ZmEzZmUzOGEyZTNjODVkOTI2ZmUxY2FmMzlmNTJjZGM0Y2MxIGxlZ2FjeS10cnVuaworMjA0MjYgZGQ2YmU2MjVhOTIzM2Y4NTk1OTAyMTg5NGJlMDkzYjAyNTkzNmYyNyBsZWdhY3ktdHJ1bmsKKzIwNDI3IDFjZmVmOGFkZTI3MDczOTAzNDBlOTcyMmI2MGZlMzRkYzFjZjEzODQgbGVnYWN5LXRydW5rCisyMDQyOCAwMjU5MjljMTUzMWQzZDc2ZjZkZTRjZjdiZjJjZTkxZGNkYzVlZjRkIGxlZ2FjeS10cnVuaworMjA0MjkgODNjN2I0Yjc1NjY4ZmZjZDQ3MjJlZWQ1MTM5YzEwZjhiN2FkMGUyNCBsZWdhY3ktdHJ1bmsKKzIwNDMwIGQyZGE2ODFjY2I1NGRmNGIwYjJlNmUzZGU3NjNjM2MwYzgwYmFhNzcgbGVnYWN5LXRydW5rCisyMDQzMSBlMWM1MDdjZGM2ZjFmN2NmZDc3MDBlOGRlYTQwZjlkM2Y5ZWJmNTQ2IGxlZ2FjeS10cnVuaworMjA0MzIgMTYyZmE2YjEzNjZmM2I0YTQ3YzJjZGFiMGI0OTJhNzk3MzBiOGY4NiBsZWdhY3ktdHJ1bmsKKzIwNDMzIGYxN2E4MzBlMjVlYWIzNGUyMTgwMTU1NzNhOTlhYzBlYTg2NmE1Y2QgbGVnYWN5LXRydW5rCisyMDQzNCA1MmE4ZTM1ZGYxMjc5OTRjMjhiNWU1MTE3MWY4Y2MwZTk2ODQ2MjVkIGxlZ2FjeS10cnVuaworMjA0MzUgZTBhNWE2M2FkNzU2OTYxYmRiNmI0NGIwMDgwNDFkYTRkNjI1M2FiYSBsZWdhY3ktdHJ1bmsKKzIwNDM2IDQ0OTMxOTlkMmI5NTZlYzE4Y2JiYzJiZjMzZTgyMzQwNWQ2OTBlMjYgbGVnYWN5LXRydW5rCisyMDQzNiBmZjA2NWU2NzRhZjZjOWFiODk1YmQ5ZWZmN2Q5ZTkwMzlhMzc2YzdkIGxlZ2FjeS10cnVuaworMjA0MzggNDkwODViYjdiY2Q5OTQxNjk5YzlhMGFmMjk1YWRkZGQ2NTE2YzE0MyBsZWdhY3ktdHJ1bmsKKzIwNDM5IGU1MjJlZDgwZmIzOTMzYTYxYjZhNWFhMGM3YmZjZWU1YjNmYzlhNTcgbGVnYWN5LXRydW5rCisyMDQ0MCBkYTVlYWIzMzE0N2I5NTk1YjA0YzMyNGJkNzgzZDNmMmE1MDU1MGM4IGxlZ2FjeS10cnVuaworMjA0NDEgNjI1MjY5M2FmZDlhZjFjYmQ5ZDZkNjk0NmEzMjM3OWIwNmNkZThjMyBsZWdhY3ktdHJ1bmsKKzIwNDQyIDM1NGE1NzFhMDViNGY0ZTUxMDgxODdjNTNlNDNkZDM1MDI5YzI4ZTggbGVnYWN5LXRydW5rCisyMDQ0MyA2OTNmYTZiNDFkZmE1ZTBiY2U2YTI1Y2Y1NTA4N2NjYmQyMGQ4ZDYyIGxlZ2FjeS10cnVuaworMjA0NDQgODRkNzgzOWJkY2Y2M2RjMGUzNTk0YWM4OWE0OTdjODFkZTcwOWZkNSBsZWdhY3ktdHJ1bmsKKzIwNDQ1IGNiYzlmODg2NTU5NTg5Y2M0ZDQwODk4YjFjMDgxMDFjZjFmYzkzN2EgbGVnYWN5LXRydW5rCisyMDQ0NiAwNTQzNmE3NDAxMmQxYzYwMjZkOTI5MjUxZWFjYWQ2YWNhNzk2MjdjIGxlZ2FjeS10cnVuaworMjA0NDcgMWQ5OTUxZDEyNmY1YzM0NTkwOGUzMjA1MjU0NWQ3OGUzNjgzMGFjOCBsZWdhY3ktdHJ1bmsKKzIwNDQ3IDAyMGU5NWQ4MTgwZDc5NDNmZTU0NzAxZTFkYjBhN2Q3ZDg3ZTJiMWUgbGVnYWN5LXRydW5rCisyMDQ0OSAxOTY4NmE2Mjc5ZjQ3NWViODcxMTc1OGI0Y2EzM2QyNzYzYzI2ZGI2IHJlbGVhc2UyMS1tYWludAorMjA0NTAgZmZmMzAyMjFkMTlhMzRjMGVlYmZkZGRhMzBiNjU5NzVhNjg2YzQ4ZSByZWxlYXNlMjEtbWFpbnQKKzIwNDUxIDczMmRkZWU2ODk1NzIwOGIxZTdlZmEyODA5OTczMzQ5NzUwYzhjNDcgbGVnYWN5LXRydW5rCisyMDQ1MiBkMDZiYmI4YzQ5M2FjMDE2OTdlZWY0MDE0ODRhMWI0Yzg1ZDk0ZGE0IGxlZ2FjeS10cnVuaworMjA0NTMgMjhjMTRhNzlhZDIyNWI1MzIxNWYzY2Y0NDI3OWNlZmEyMGU4NjdhYyBsZWdhY3ktdHJ1bmsKKzIwNDU0IGRiOTI4YTI3N2Y4YjJlODQ4NTMzZDM5OWRiYjI2MjMyNTg3MDU3OGQgbGVnYWN5LXRydW5rCisyMDQ1NSAzNjIzMmY1NDMyMjBlZWRjOGQzYWY3YTExNDkzMzYzNjU3Zjc2ZjZmIGxlZ2FjeS10cnVuaworMjA0NTYgODk1ZmM1Yzk1NzYzZWQxMGQ3YTRkNzRkYjk4MTNjMTFkYTE0NzM4YyBsZWdhY3ktdHJ1bmsKKzIwNDU3IDI4MzY4M2I1ZTc2N2M3OTE0ZTgxODBlZWZlOWEwODBjNmRlMzY3ODggcmVsZWFzZTIxLW1haW50CisyMDQ1OCBiNmYwOGQyNzk1YjVlMjQ0MmM4ZmFhZjA1MWQ5ZjllZDBlZDQ4NzY3IGxlZ2FjeS10cnVuaworMjA0NTkgODhhNWM3NmZmYzhkM2Q4YWVlMzQyNDk2MWM5ZGM3ZTVkMmUyMzI4YSBsZWdhY3ktdHJ1bmsKKzIwNDYwIDQyYmNhZmZhNWQ5YjFhZTc0N2IzYzUyYTY4MGZjNzk3YTE1MDRiYWEgbGVnYWN5LXRydW5rCisyMDQ2MSBkOTQ0NDIzZTZmZmY2ZGMyNjI3NjgzY2QwMmNlODZiMGMxMGFjNDhlIGxlZ2FjeS10cnVuaworMjA0NjIgYTlhZDhkZWFjMTdkNWIyZmIyNmQzOTEzYmI2YmM0M2NhNDZjODkzNyBsZWdhY3ktdHJ1bmsKKzIwNDYzIDA0MDVjNjU3ZDJhYzlmZGRmMmRmZjY3ZDhiYjUzY2UzYzg3NGRjNmYgbGVnYWN5LXRydW5rCisyMDQ2NCA3NWUzMjJkNjA0ZjE2ZTI5ODcyZWUzMWY5ZDAxZjEwNmRhZWQ4NzhmIGxlZ2FjeS10cnVuaworMjA0NjUgM2VhYzIwYWZkNTRhYWFkNzQ3NzI2NmRhY2M5MDQyZjRkOTI2NjUzYiBsZWdhY3ktdHJ1bmsKKzIwNDY2IDUxOGRiNDU0ODYzMDE5YTRlOGZhYmIzYzE0ZTJhZjg5NDU0MGMzYTkgbGVnYWN5LXRydW5rCisyMDQ2NyBkMTEyZjEzNWFmOGQxNDE5ZjM3NjcyZWFmY2NlOTc1NGI4ODdjOTBmIGxlZ2FjeS10cnVuaworMjA0NjggMGRkNWQ2ZDlhOTUyYTZmMTExMDU0NjA4MzQ0NTJhNGFjMjFhMzdlNiByZWxlYXNlMjEtbWFpbnQKKzIwNDY5IDcwNzQzMDM4NDYwMzE5MTdjMjYzMGQzZjk4Y2VlYTg1NmQxM2ViNzUgbGVnYWN5LXRydW5rCisyMDQ3MCBjY2M0NGU1NDNiZWVmMTdlYjg0MTA4YjQ1OTgxZjdjZTNmYzUwMjI3IGxlZ2FjeS10cnVuaworMjA0NzEgM2RkOTg2MGU0ZTJkNGJkM2U3ZDgyNDYyNGMyNmRjZTQ5ZDRjYWZlMiByZWxlYXNlMjEtbWFpbnQKKzIwNDcyIDIyOGY0YjhkMThmMDFhOTkwODczOWI0MWI3MmZiNjU3NTA4MzMzNWMgbGVnYWN5LXRydW5rCisyMDQ3MyA0NTI2NjZjYjI4M2RmOGI5MjQ1YjMzOTA1ZmE4ZDk5MTdmMDMwZDQ2IGxlZ2FjeS10cnVuaworMjA0NzQgYzY1N2EzOTM3OTAyMDc3MjY1ZGUwYWRjNGEwNmViNzFlODU5MDUxZCByZWxlYXNlMjEtbWFpbnQKKzIwNDc1IGMxOTM3ZmFhYmIyMzc0OGE0ZTI4M2U3YzRlOTBjN2QyYWI3N2EwYTIgcmVsZWFzZTIxLW1haW50CisyMDQ3NiAyZmNiM2ZhNjdlM2I2ODc4NjY0YzUyYTM0NzljY2MxYmIzMmE3MGRkIHJlbGVhc2UyMS1tYWludAorMjA0NzcgMGQ3MGRhZWI4OTZlMWVmMzliOTA0MDMyMTlmZjI0YzllNGVmZDAyZiByZWxlYXNlMjEtbWFpbnQKKzIwNDc4IGY5OWRmMmEwZTJjZjljNjIzMTE4YWM2ZTk5MDAxOGYzYmZiMGQyYzggbGVnYWN5LXRydW5rCisyMDQ3OSBkMTZkYzI2ZWM0MjdhYjAwYjk1NDBlOGM4MGMxNjBlMTc4MjVjMmUzIGxlZ2FjeS10cnVuaworMjA0ODAgYzVmNzE5MWNlNjdlOTM0YmQxZjEyYmM1ZGQxN2NlM2E1ODYxYmU4ZCBsZWdhY3ktdHJ1bmsKKzIwNDgxIDdlYjg3Y2YxNmE1MzYwYzE0NGJjNTI5ZjI5ZjAwMzNhYmNjNDYzYWEgcmVsZWFzZTIxLW1haW50CisyMDQ4MiA1YTU4MDVhNDVkYmY0OTQxMTFlMGFhZjhmNDIxZWY2MzFmNzE4NTZkIGxlZ2FjeS10cnVuaworMjA0ODMgOTZmOWI4NmI3YjNkZGQ2NzYwZDBlYTNmNzk2MTFmYzU4MDRkMTgyMSBsZWdhY3ktdHJ1bmsKKzIwNDg0IDFlMzA0MmE0ZTYwZTJlM2NmMTI0N2Y3MDljY2ZiOWFhOWExODA0NzggcmVsZWFzZTIxLW1haW50CisyMDQ4NSA0NGEzYWM1OWMyNjhkZDhlYTUyMGY4ZmFkYjgwODJlODg1ZGViM2I5IGxlZ2FjeS10cnVuaworMjA0ODYgMWYzYTE5NGUyMWYzMWY0NTdmYmRkNDNiN2U2Y2M5MjI5NDNjMmE5YSBsZWdhY3ktdHJ1bmsKKzIwNDg3IDAwYTZiMDYwNTExMzUzNWUzZjMxODgzOGU0ODU3MTY1ODlmNmI2YmIgbGVnYWN5LXRydW5rCisyMDQ4OCA1NmYxYjhiYTVjYTE3ZDFiZDI5NTFhZmM1ODU1ZjQxODQ5NWQxNWUxIGl0ZXItYnJhbmNoCisyMDQ4OSBiZjk0YWYzOTZiMWUxMDdhZDNjZDhmMTE2NzE2YjI3NmVhODEyZGI4IGxlZ2FjeS10cnVuaworMjA0OTAgMWQ3MjZmNWNkNTdhMGZkZmJhNjIyZmFhYTM1ZmVjMmQ2NzZjOWUyYiBsZWdhY3ktdHJ1bmsKKzIwNDkxIDFiNDliMTc3YTEwNWUxM2NjYTFmMWM0ZTdiNDFmZWViYzQ2NWRiMjYgbGVnYWN5LXRydW5rCisyMDQ5MiAzMmU3ZDA4OThlYWI4NWRlODEzNGY5MzI2ODBhODVjNmU3YWJjZWMwIGxlZ2FjeS10cnVuaworMjA0OTMgYzNiYjBmZjM5NmRjYzYzM2NiNjcxOTZhNDM3NzYxMzNmNzAyM2ZmOSBsZWdhY3ktdHJ1bmsKKzIwNDk0IGUxNWFiNGU2NTJhZGNiN2ZhNTU2YTE4MTU0Y2MxMTZkNDljN2I1NjIgbGVnYWN5LXRydW5rCisyMDQ5NSAxZmU4ZTUwZTZlMWI5ODJkN2I3ZGQxZjY4ZTZhOTRkNDA2YTM1YjM1IGxlZ2FjeS10cnVuaworMjA0OTYgYjZkYmZjNDVhYzliZjE5MDM4ZTFjZDMyNThkOWI5YWMyMDg0MmYzOSBsZWdhY3ktdHJ1bmsKKzIwNDk3IGY2M2Y3NDkzNjRlZmZkZDM2ZTBmN2M4NDk5MThkOWI2NzkzMjk1NTQgbGVnYWN5LXRydW5rCisyMDQ5OCBkNjM4ZTQxOWMzMDQ1MmQ5ZDFkN2ZlOWE5ODYxZmQwYjlkNDVlZjNkIGxlZ2FjeS10cnVuaworMjA0OTkgZDMyNGFlMjg5MmZmYTRhYmZiMjE3ZjVhNTk4OWE3ZDJkMDlhOTBlOSByZWxlYXNlMjEtbWFpbnQKKzIwNTAwIDRkN2ZiMjRmZTc5NTNmOTBmODM2NGIyYTFmYWQ5MjZiMmU2YmJhNjUgcmVsZWFzZTIxLW1haW50CisyMDUwMSA0YWJkMDcyYWIzZDViNWJkYTFjZDZhY2JkMGFmNzEyOTIyMTNhZDVhIGxlZ2FjeS10cnVuaworMjA1MDIgMzg3ZTgwZTExYTc5NWZjZTU2NzY3Y2Y0OWZhYzMyMWEzZTdjZGYxZSBsZWdhY3ktdHJ1bmsKKzIwNTAzIDIyYWYxNWY4NDEwYThiMjc3MzQzNGQ5YWZjZGFjMjI4YzA0MjE4NDIgbGVnYWN5LXRydW5rCisyMDUwNCA3OWYwY2QzYTcxYTFlOTk2ZWQ4NDNhMjBjNzE3MGNiOGRjYmM5MmNlIGxlZ2FjeS10cnVuaworMjA1MDUgNjI0ZmM5NzEzZDE4YjExMDE1NmRmYjY2OTJkNmE1ZjI2MWYwYWY4NCBsZWdhY3ktdHJ1bmsKKzIwNTA2IDFlYjAwYTEyM2EwZWNkN2Q2ODE0NjIwOTA0MDM1YjBiYzU5NTFiZDYgbGVnYWN5LXRydW5rCisyMDUwNyBjMTlkNmRiNmU5OWI3YWFjN2NmN2M4ZWM5YTIwZmFjNTU4MDY4MjY0IGxlZ2FjeS10cnVuaworMjA1MDggN2RjZGIxNmJkMDY4Y2NhZWM1OTE3NDc1NmQ3OTljM2I0Mjk3NzQ0MCByZWxlYXNlMjEtbWFpbnQKKzIwNTA5IDE4ODU0MTdmNDVkYTM5ODU1YjhjNDIwMjgzNmEyZjQzYjAwNjdlMGEgcmVsZWFzZTIxLW1haW50CisyMDUxMCBiODMwZGYwODNhOWFkZDA3MDliNjhkMGI1MTkyMzE2YTAxMTE4NTg2IGxlZ2FjeS10cnVuaworMjA1MTEgN2FjYmE3OGUxZTA5MWRiYjdlZWMyOTA4MzAxNmY1YmI5MWMxNzhlNiBsZWdhY3ktdHJ1bmsKKzIwNTEyIGFhYzY1ZjUwZGY2ZmYxNDRiNjcwMWZlNTFhMTYzYjMwYTZiY2QwMmMgbGVnYWN5LXRydW5rCisyMDUxMyBiNDRiYTdjMDEyMTc3NWQ2NDQxMGNmMWM5M2QwMjc1YjVjODJhNGI0IGxlZ2FjeS10cnVuaworMjA1MTQgMWI3MzBiZjNmOGQyYWMxZDE1MjM3ZWM5ZWVlNGQ1MmQyNjdkZmM2ZCBsZWdhY3ktdHJ1bmsKKzIwNTE1IGVmYjVjODE0ZmZiNmFiNDg1NmNlODIyYmYzY2VhNzMxNjMzYmM2ZDEgbGVnYWN5LXRydW5rCisyMDUxNyA5OWU5NDZhODI2OTkyMTcwNjBiOTVkYTQ2MmFiN2Y3YWZiMDA2YjJhIGRlc2NyLWJyYW5jaAorMjA1MTggZTJhZjkwYjYxYjJiZDI2NzliNGVhY2NlM2Y4NGQzNWRjNjY0ZGMxNiBkZXNjci1icmFuY2gKKzIwNTE5IGI3YTcxMzViY2NjOGIzZTFhZDE0ODVlN2Y3NzBlZTZkNDExZGU4YTIgZGVzY3ItYnJhbmNoCisyMDUyMCAwYjVkM2UwMzEyMDE4YWRjY2QwOTAwNzZlYmUxMWYwYThkY2JmYjA3IGRlc2NyLWJyYW5jaAorMjA1MjEgYzk3YjM3MTM2ZDgzZTM1MzAwNTA5YmVhNTJhNDViMTFhZTFlYWJhMyBkZXNjci1icmFuY2gKKzIwNTIyIDY4MTkzMTBkZTgyODQ0N2NkZGZmZjBkNjAxNjUwNjkxYWZkNTU5YmEgZGVzY3ItYnJhbmNoCisyMDUyMyBhMWYwN2ZjYzNkNDEzZjc1MjdmNGZkOTUyMjIwZTNjOWM3MDNlYzEzIGxlZ2FjeS10cnVuaworMjA1MjQgNDRhMGE5YTI3N2VmNjkxYTNjYjNkYjY4NWFmMTA1N2I5Mzg2MDg0NSBsZWdhY3ktdHJ1bmsKKzIwNTI1IDE2ODYwODBhN2M2YzM3NmQzN2IwNWVlMjUyMjk3ZmI5MDQ3OGQ0OTEgbGVnYWN5LXRydW5rCisyMDUyNiBkOTFmYzAyMjY4ZDhkMDEwYjcyNWIxMGYwMGI1NzRjOWUxM2U3Y2FmIGxlZ2FjeS10cnVuaworMjA1MjcgOWMxMTMyZjMwOTVhMDYzYWU0YmU2YzM4N2E2MDcyMmUxNDU0NjgzNiByZWxlYXNlMjAtbWFpbnQKKzIwNTI4IDk1MGYxYzNhOGU2YWExNWYxZDQzN2EyODIyMTkwMzE2ZGIyYTAzNjUgcmVsZWFzZTIxLW1haW50CisyMDUyOSA3ZThlZDZlMzllYmQwZDc1NTkzZjAxYWQzMTM4NzdlOTFkZWJiMDdlIGxlZ2FjeS10cnVuaworMjA1MzAgOTFjYmQwMWI4NWNiZGY5MWFjMzUxZjdkN2QxMGQ2M2M3MTk5MTZmOSBsZWdhY3ktdHJ1bmsKKzIwNTMxIGE5NDg1ZDQwNGYwNWQyNDEwNjM3MTE0NTBhMTk3NzZjYjg4NTQ1OGYgbGVnYWN5LXRydW5rCisyMDUzMiBkYTQ4MDk5NDdhMzIxMDViOGY0ZDJiNzUyNjFjY2YxZTU1NmUyNDAxIGxlZ2FjeS10cnVuaworMjA1MzMgMjQ5MTIzYzFmNGRjMTEzNDBhNGI0MGM3ZGY0NWQyZmMzM2U0NDY3YSBsZWdhY3ktdHJ1bmsKKzIwNTM0IGZjZGRlNjgwMzMxZTVhZWNjNDg0MmIyM2YxMDAzOWQwMTY1ODJmMmYgbGVnYWN5LXRydW5rCisyMDUzNSA3ZjVlM2U2YjJhMzkyMDc1MDBjMjBlMDljN2RiMWZhNWRhNTU0Y2U1IGxlZ2FjeS10cnVuaworMjA1MzYgMGJjMzM3N2QwZDcyMDhiYzIyMzliYWM0MDQ3OGM2MGZlNjYwMzY4OCBsZWdhY3ktdHJ1bmsKKzIwNTM3IGI3ZGY4OGE3OGFkYmFiODFkOWY4N2I2ODA1OTk5NjlmNWFmMGQ2ZDggbGVnYWN5LXRydW5rCisyMDUzOSA5OTIxYTlkMjdmNzI4YzYxOTA1NjEzZWY2MmVhYjAzZjE5Y2UyM2M1IGxlZ2FjeS10cnVuaworMjA1NDAgOGZmNzZjZjMwYThjYzM3Y2Y2ZWVhMzZjZjYwNGI0YmViNzk5Yjg0OCBsZWdhY3ktdHJ1bmsKKzIwNTQxIDdkNjc2YjQyMzdhOTkzMmY5MTNmYjI4MTMxN2RjMmM5MTkxMDEwMzggZGVzY3ItYnJhbmNoCisyMDU0MiAzMmU3MzViZWYwYmMyOWIwNTY5MzY2NDc0ZDExM2NjYjNlYTg4NWI3IGxlZ2FjeS10cnVuaworMjA1NDMgYmQ2NWY4ODkzYmUzYWVmNDA1MDE0YzVhMzI3OWNjYWEzMzNkMTE5YyBkZXNjci1icmFuY2gKKzIwNTQ0IGIxMjU0MTYzOTRmYWNhMzA2NGZmZDdmMjEyODIwZGI0ZWJmNjczNjkgbGVnYWN5LXRydW5rCisyMDU0NSBhMTllNjhlMzY1Yzc1NzFkOTc4NDk0NjEzMWIzODg1N2RjMjFmZmMzIGRlc2NyLWJyYW5jaAorMjA1NDYgOTkzNDIyNWZlMjk3ODI3NDBiZjBiZmVmMDhlMmE2MDBmYjY4NGRjMCBsZWdhY3ktdHJ1bmsKKzIwNTQ3IDliZTc3NThhOGM5NGM4ODk2OTc0MzE5YTYzMzBkZTI0ZGQzMTA4ZTYgbGVnYWN5LXRydW5rCisyMDU0OCBiMjgyMzYzNDlkZTUxNDczNzExMWQzYzVlNjZjNGYxMTEyMmFiMzc4IGRlc2NyLWJyYW5jaAorMjA1NDkgOWU4MWQzOTFiNzY1ODlkODZmYWNjNDVkYWMyYWQzNTVjMzcwMDU2NyBkZXNjci1icmFuY2gKKzIwNTUwIDk4N2NlYjllYzAyMzMzZGMwYjFkMDM1MzY1NGRiN2Q3ODVkMjhjOTggZGVzY3ItYnJhbmNoCisyMDU1MSA4ODdiNTI5NzY1MmEzYzZmYWZhZjBkMmVlNGFiYjYyYjA3Y2ExNGMzIGRlc2NyLWJyYW5jaAorMjA1NTIgZTA2YzM2YzEzZjEyODYyNDNlZDA4NWRmMDUwNTU0MzU3ODFlNDkxNCBsZWdhY3ktdHJ1bmsKKzIwNTUzIDUzZWUwZmE2NzY2MTdhOTE3YzlhODJhOWU3MTFkYzI2ZTRhZjAwZjAgZGVzY3ItYnJhbmNoCisyMDU1NCAwMTNkZWI1ZTE3MmJmNWM5NGExMzZlMTE3ZmEwNTE1ZTc3ZDBiN2M1IGRlc2NyLWJyYW5jaAorMjA1NTUgNzAzN2QxZjZlNzlhZWI0Njk0MDAxZjdmOTYxMDg0NjZmNTJjZjUyNCBkZXNjci1icmFuY2gKKzIwNTU2IDU4N2RhMjlkNjlkNWQwY2U5NzE0MzU0MTQxNDc5NmQ2YmU3OTNjMTAgZGVzY3ItYnJhbmNoCisyMDU1NyAxNzIxMjYyYWJhYTgyYTMzN2RiYWViNDU3M2YyMWY5ODE3NzRmZTljIGRlc2NyLWJyYW5jaAorMjA1NTggNGI4MTFhNzFiZTVjMmZhZDk3YWU1YzlmYTIyMGFiMjljZjFjNzBiYSBkZXNjci1icmFuY2gKKzIwNTU5IGFlMDc1OTlhZGYzM2Y3YTg2ZGJkNzVlNWNmYjdlZjY3MjgxMWY3NzUgZGVzY3ItYnJhbmNoCisyMDU2MCBlMmRhZWYwNjg0OTZiYzEzNmI2MTMxNzRjNzQ1MDA4MzdiYTRlMWQ2IGRlc2NyLWJyYW5jaAorMjA1NjEgNTZjNTQ0NWVjODM1ODZlNWY3NzdhYWZjYTVkMDZhNjMzZjM2ZTU4ZiBsZWdhY3ktdHJ1bmsKKzIwNTYyIGFhNzA4N2FjNmQ5NTU5YmM5OTFmOGRkMDlmNGRlY2Q0Yjc0NjcwMDUgZGVzY3ItYnJhbmNoCisyMDU2MyBiZDMxM2E1ZTIwZDc4OGZmOTBkMTEwNTA1N2YzNmY5ZjQxZGY2NDBmIGRlc2NyLWJyYW5jaAorMjA1NjQgNWRiZmU4MzE2MjM2Mzg5Y2U3YTNkOWU2MGJkODgzMzk4YzRhMWY3NSBsZWdhY3ktdHJ1bmsKKzIwNTY1IGI1ZjU4M2VlY2IyMDNjNGMyODRiMjBjYzM0M2IwNGM3NTIwMDExNzAgbGVnYWN5LXRydW5rCisyMDU2NiBkMWVjNjc5YmFhM2RiODJhYjg1YWRjODA3YzJhZDE5ZDBlMTUwYzQzIGxlZ2FjeS10cnVuaworMjA1NjcgNTU3YWFkM2U3NGJhNjM0YjAyZmViODA3NmQxM2I3NWIyYTI5NDNmMCBsZWdhY3ktdHJ1bmsKKzIwNTY4IDZjODIyNzdlNzdmMzU3ZDc0YTM1NzE4MDQ3NmQ0YzQwNTgwYmUwNmUgbGVnYWN5LXRydW5rCisyMDU2OSBkZDI0YWJjYjIzMzFjNzhjZDY4ZDVlYTRkNzI5MjkxNWU4Y2M5NDE3IGxlZ2FjeS10cnVuaworMjA1NzAgMTExODFjZDM4OTdkYzFiODAxY2MxZDE5NzY0YmMzMWE3MDVjZjVhOSBkZXNjci1icmFuY2gKKzIwNTcxIDdhMzY3YWQ0M2YzNTIzOGQ0NjY0Y2NmYjk4YWY0ZTAxOTRhYzczNzkgbGVnYWN5LXRydW5rCisyMDU3MiBmYTgzMjZjYzc2MWNiM2FmZmQ2ODAyZWUwM2UxM2IzNWE1ZjA0YTc0IGxlZ2FjeS10cnVuaworMjA1NzMgZWJjMjRhMTA0MTMyOWM1ZWVmMmU1MGFlOWM5ZjZhNjQ4NjI4OGVkNyBsZWdhY3ktdHJ1bmsKKzIwNTc0IGE4NDg3NDY4N2NiMWNkZTM4NzE3ODA5ODY1YzU1Nzg4YTA3N2I1MTEgbGVnYWN5LXRydW5rCisyMDU3NSBhOTdlMThlNDk5YTljZjdiMWJiNGMwYTlhMjNkNGM5MTU2ZjA1ODQ1IGxlZ2FjeS10cnVuaworMjA1NzYgMDQ3MGJhYmRhZTQ5ZmVlODMzNjQ4NGU0ZDEyMzk3ODdkY2VlOGVkOCBsZWdhY3ktdHJ1bmsKKzIwNTc3IGE2Njk4YTAxNmFmZTIwNjFmNzc3NDViMTcyYjhlMDI2MjQxNGY3MDAgbGVnYWN5LXRydW5rCisyMDU3OCAwODVmNDYwYjBlM2I1OTk0YTI0YmQ4NDBiMDIyOWFlYWY2MGRiY2I3IGxlZ2FjeS10cnVuaworMjA1NzkgZDY0OThiMWVmNTBkMWNkOTNmMGQ3MjY0MjkzYjhlZjUzMDFmYTNjMiBsZWdhY3ktdHJ1bmsKKzIwNTgwIGRlYjhhNWUxNTFhMzQ2Y2Q1NGE2NGIwNDY3Y2RmZjBhMWRlMjg2YjkgbGVnYWN5LXRydW5rCisyMDU4MSAzMGQ3NTE4ZTE3ZTViZmE5MzUyZDI1Njk4NWFjNjRjNzA2MGU0NWZkIGxlZ2FjeS10cnVuaworMjA1ODIgMGZmNGNkZjM0ZmMxYTUwZjNlMGI2ZjQ1YTdkNzRhZGVmMWQwNmE1ZiBsZWdhY3ktdHJ1bmsKKzIwNTgzIDY0NTIzMzA3Nzk0ZTkzNTQ3YzU4NTYyNWEwNmI0YjcxZjNmYmZjMzcgZGVzY3ItYnJhbmNoCisyMDU4NCA1YjZkNTk2MWM5ZTM4ZTBmNjJmMTk0OGRiYjM2MzMzYzYwZjZiZTc0IGxlZ2FjeS10cnVuaworMjA1ODUgZDc2NjQ5YmQzOGQwMWM5NmU1ZGUyNmMxY2RmNmIwMGJjM2MxOTE0ZiBsZWdhY3ktdHJ1bmsKKzIwNTg2IGI5MDc2ZDg3MThhYjFkMmRiYWQwYTBjNDRkYWEwOGZkOTdmMDE3ZTIgbGVnYWN5LXRydW5rCisyMDU4NyA0YzI5YjA0ZTRkNmZjMTg2YzUxZmRmMTQyMmU4YTEyNjliNzUxNzQ1IGxlZ2FjeS10cnVuaworMjA1ODggMTJjODBiNTcwZDAwYTBlY2I5MjliOGNiZTY3YWZiZDQ1Y2MxMTI0NiBsZWdhY3ktdHJ1bmsKKzIwNTg5IDc2ZWU4YjYyZWUyYTgyZDYyM2M2YzRlMDkxYTRjOGNmZjEwZWRjNjYgbGVnYWN5LXRydW5rCisyMDU5MCAxNWNjZTNkODBkMGZkOGQzYmIxYTc2ZDMwNDA3YWE5NjI0OGI1MmE1IGxlZ2FjeS10cnVuaworMjA1OTEgZDdkMDUxMDNjMDIzZmM2NDU5OWNjYWUzNGYxZmQxMjQzN2IxMDJlNiBsZWdhY3ktdHJ1bmsKKzIwNTkyIDhkOWViNWE0ZWJjZDk4ZGRiNTg0ZTk0ODcwYWQyYWNhYjRlZTc1ODIgbGVnYWN5LXRydW5rCisyMDU5MyA5OWIwNmE2NDliMTQ3Yjc1MGM3ZDhhZGY1ZTYxMzZiODkyOTkyYzA2IGxlZ2FjeS10cnVuaworMjA1OTQgNzk0OGNkNGY3NjYzNzQyNDNmY2ExNDg3Y2I2ZTRhYWU3ZTQ3ZmNiMSByZWxlYXNlMjEtbWFpbnQKKzIwNTk1IDg2NDNlNmRlMTNkZmE3MDM1YTRlOGRlNDNiMjNiN2RhMzg0ZWIwYjcgZGVzY3ItYnJhbmNoCisyMDU5NiBlNmU4MWRjZWJmZGU1ZDllNGMyNTYzYTgxMGMwMmY5ZTBlNGNmNTRjIGxlZ2FjeS10cnVuaworMjA1OTcgOThmMzRjNDY0M2U5ODAwMTI0Y2JlNGRkZjBmNjRmODdjNDFmZjJhOCByZWxlYXNlMjEtbWFpbnQKKzIwNTk4IDBiZTI3NzAzOWQ5M2I0MmYzNmRhN2NmOTM1MWZlMzJjOGU3M2JlYzUgbGVnYWN5LXRydW5rCisyMDU5OSBkODA1MDAwNzZlOWZiOTVjZmY4MmI4MGUyNDI5ZDhmYjU1NzE2NDhiIGxlZ2FjeS10cnVuaworMjA2MDAgYmY3ZjE2NmQzYzk3NDYwZGIwZTg5MjJlMGE1NzkxN2VhNDQ2NGJkMCBsZWdhY3ktdHJ1bmsKKzIwNjAxIDU1ZTMyMDE4OTUwODdiM2VkMTE1MTUzMmY5NTg2MGI1ZjI5NmI1YzUgbGVnYWN5LXRydW5rCisyMDYwMiAxYzJkMjZlZWY3ZWQxYjU5Yzk4MmQ3NTVhMTRkODRlNDYzOTgwMzhiIGxlZ2FjeS10cnVuaworMjA2MDMgYmI2YzU5YTg1Y2ExNDdkZDE0ZDc3YzdjOWViZWQzN2JlYTBiMDdhYSBkZXNjci1icmFuY2gKKzIwNjA0IDhiMGMwYzQ4MmE1NWZkMDZkOWVjZTlkMzdkN2MwZjY2N2Y0ODFkMGYgZGVzY3ItYnJhbmNoCisyMDYwNSA4MzlmNmYyY2Q2NmYzY2ZkYTI2MTk5NjgxNWFlMGViOWY4ZWFjYWZlIGRlc2NyLWJyYW5jaAorMjA2MDYgMzA5MWZiODNkNTI3MWNjZDM5MTI3N2FiNTNhNzgwZjY2ZDM2NWU2NiBkZXNjci1icmFuY2gKKzIwNjA3IDhmYzdiZWNmNzgzOTQ3MjkyN2ZmNjQ4Y2RmNmY5YmQ5ODJlZTE4ZmUgZGVzY3ItYnJhbmNoCisyMDYwOCAwYTllM2FhNzFkYjlmMjMwYjg1N2U4OWQ4Mzg0M2VkNWE5OGMzOGJkIGRlc2NyLWJyYW5jaAorMjA2MDkgODJmOGEyYjFiNzljYzMyZGIxNmE3Njk4ZjJjNmFmYmEyMGMyZTNhMSBkZXNjci1icmFuY2gKKzIwNjEwIGZjNjU4YWRjZWRjOGU5YjRiYzI4NmU5NWZlNWJmMmM5NTU2MzJiNWEgZGVzY3ItYnJhbmNoCisyMDYxMSBmODllODUxNTNkMDQ3NTM5YzRmNDc0MzQ0YTBjOTY4MDJiNWZjMGY1IGRlc2NyLWJyYW5jaAorMjA2MTIgMzljYWJkMGFhZTFlYmQyODUzZTVjYzU4Y2YzNjZjN2IxZDM0ZGIzYiBsZWdhY3ktdHJ1bmsKKzIwNjEzIDlkMWUzMDRlY2IxOGE1OGRiNGZkYWNjMzA4MWFkMmE3NTU4NGQ1MjkgcmVsZWFzZTIwLW1haW50CisyMDYxNCA1NTI3ZDYyZmFmZTA1ZTZiNjZhNWU4MGE5ZjZlMGZiMWFmZGRjNTk0IHJlbGVhc2UyMS1tYWludAorMjA2MTUgNmY4ZWZkYmRmZjQ4MjNiY2FmZWRlMjFjMzhhNmVhOGExYzFiNTZlMCBkZXNjci1icmFuY2gKKzIwNjE2IDE2MmI5NGM4ZDJkMWE5NGFlNmI4YzQ1Zjc1MTA4ZWFjYWU3NjI5YTkgZGVzY3ItYnJhbmNoCisyMDYxOCBlOWE0ZTI3ZThkNGUxNmUxNGIzMmFiMjY2OTUzMDM3ZWEyNDY4MTE1IGxlZ2FjeS10cnVuaworMjA2MTkgMzk5ZDk5NjAxYjJkYzBkMmU3YmI0YjU1MGQ4NDIxOGMzNzczZDE5NSBsZWdhY3ktdHJ1bmsKKzIwNjIwIDBjOTg3NzEyMGYzODE3ODNmNzUwM2JkY2FiNGQ1NjAwNTA2OTNmNmIgbGVnYWN5LXRydW5rCisyMDYyMSAzY2Q0YWY2NjZkZTZiM2U2ZjAwYzgxMjIyMjBiMWFkOWY5NzU3YzM5IGxlZ2FjeS10cnVuaworMjA2MjIgOWUwOTNiZjhmNmE5M2YyYzMzZDdjZmFiMDkxNjZiZTZkMTk2OGU1OSBsZWdhY3ktdHJ1bmsKKzIwNjIzIDFlYmI0ZTU2NjI1N2FhODlkZWQwZjNkNmYwMTA4MzRmNWFhMDE0YWYgbGVnYWN5LXRydW5rCisyMDYyNCA0OWQ5YmE1NTU4OGI2N2I2Y2M2MTFiYzMxNGZiOWFhYTYzOWI0ODExIGxlZ2FjeS10cnVuaworMjA2MjUgZWU0ZDE3ODYyYjYxODBiMTQwNzU4MGZmNTc2OTM3NzQ2NTQ4M2QzMiBsZWdhY3ktdHJ1bmsKKzIwNjI2IDAwMmVjNzMzYjVkYzViNjM4ZDVjZGQ1MDA0N2FhODQwNDc0ZWU0MjkgZGVzY3ItYnJhbmNoCisyMDYyOCBkNGQwNjUyOWMyMTgxMWQzMGVjYjcyYWUyYzIxMTIyNDdlZjgyMTA0IGRlc2NyLWJyYW5jaAorMjA2MjkgOWU1M2E1ZDcxZjFkYTFlZjMxMDQ1ZjVmMzNhMzY5NjYzZWRkMWQ5MCBsZWdhY3ktdHJ1bmsKKzIwNjMwIDE4MTI0NzZiN2ZlNDU3MDIxOGUzZDZjNTNhZmU5NWRkOGZhNjg0NjggbGVnYWN5LXRydW5rCisyMDYzMSA2OGU3MWU5YmMyMDQ1NDJhOWEyY2RkYWQxNWIyODUwMGIxN2I3NTBmIGxlZ2FjeS10cnVuaworMjA2MzIgYWFiNmMxZjE5Mjg5ZGNmZGJkYmEyYzE5ODY2MWNlOTcxMThjNzAzMCBsZWdhY3ktdHJ1bmsKKzIwNjMzIDMwNjRiNzNhZGMxYWQ3NzA0YTE5ZWU3YzIxNDY2ZDM1MjViZmNhYjkgZGVzY3ItYnJhbmNoCisyMDYzNCA0NDI0ZTA2ZDQxNTk1NGZhMTIyNzdiM2I2YjI3MWZjZjQzMzUzNzQzIGRlc2NyLWJyYW5jaAorMjA2MzUgMWU5MDJmYzczNjQ1MTg1NDczZDc0NTQxMDI4YzhiNDZkMjIxZDcxNCBsZWdhY3ktdHJ1bmsKKzIwNjM2IGZmYzI5MjNiYWQxYTk2NDU4YmM2YTg5OGIyYTJkODAxMGRiNzYyOGQgbGVnYWN5LXRydW5rCisyMDYzNyBmOTcwMTk1MTk2YzRmYmU3NjMxMmNkZmY1ODRmOThjMTlkODZiZWNjIGxlZ2FjeS10cnVuaworMjA2MzggYWFkMGFkZjgwNmFkYzgyZGIyNmFmMTQ3MmExMjk4ZjgwZTlkNDUyMSBsZWdhY3ktdHJ1bmsKKzIwNjM5IDM3OWZlODg3NjQ0ZmI4MGM2M2Q3OTI3MjkxYzE3MGZjMzdmYjJiYTEgZGVzY3ItYnJhbmNoCisyMDY0MCA1NDYyMzYyNmRhNGUzYTFmZTkxOGJlYjFlZTM3MGYwZTQ4NGU0M2NhIGxlZ2FjeS10cnVuaworMjA2NDEgNDMzMDEzYWY0NTk4NzhhOGIwYzQ0NWIzYjVmZjAzOGUyZjQxZjg5ZiBsZWdhY3ktdHJ1bmsKKzIwNjQyIGRlZDQxYmU4NGRhNGZhY2MxNWQ5ZmMwNzJkODM3YmY0OGZhNWEzNjggbGVnYWN5LXRydW5rCisyMDY0MyBlM2YwZmQzOGMyNGI3MGIwOWI1OTE2ZDM2OWE4MWE1ZDdmZjRlZTE4IGxlZ2FjeS10cnVuaworMjA2NDQgZjNiODc4NWJkMDIyMmE2MWZlMmJiYTM4MDMyNGRjN2I4YWMzOThkMyBsZWdhY3ktdHJ1bmsKKzIwNjQ1IGI0MWY2ZWY2ZWE4Zjc4ZjE2YWNhYmM4MDgwYmE2OGE3ZDUzN2JlODggbGVnYWN5LXRydW5rCisyMDY0NiAyZjE2MDYyYTFiN2M3NWNmYmU2NjBhOWY4ZWE3N2VlZWFjZjg5MzY5IGxlZ2FjeS10cnVuaworMjA2NDcgYWQyNWJmY2M0Mzc3MTVmNzBjZmQzNzdkOWVmYWE5OGJlYTI5YTMxZiBsZWdhY3ktdHJ1bmsKKzIwNjQ4IGZlNGMxMDM0YjQ4MDEzYjRmMjJkYzc3MThkMzE1YzFlZjlkMWFlMWQgbGVnYWN5LXRydW5rCisyMDY0OSBiYThmOGU0ZDQyYjA0NzkyNWY4MTYxNjA5ZjEwYjY4NzRhNGVhNjU5IGxlZ2FjeS10cnVuaworMjA2NTAgMWM4NmM4ZDFjOWM3NjJhNzIyYTY2ZWE2YzRhYjdhY2I3MDU3MjZhZiByZWxlYXNlMjAtbWFpbnQKKzIwNjUxIDYxOTllNWJkMzcwYjU2MGM0NTMzODg1MmMxYzE3ZjJjMzZjOGI4MDQgbGVnYWN5LXRydW5rCisyMDY1MiAzNTBiZTE5Y2E2YTVmODlkZGNhNmI2MjhhNWJiYzA2YmZlMWE1NzRkIGxlZ2FjeS10cnVuaworMjA2NTMgMmE3Y2ZjMTcyYTY4NGEwYTJkNzQyMDE2OWI4NWM2OWM0NDZjNzJhZCBsZWdhY3ktdHJ1bmsKKzIwNjU0IDVlM2JhYjhhZWY3YjBmYWEyN2MxZGFlZDU4MGNkNjhjYmFjNmEyY2QgbGVnYWN5LXRydW5rCisyMDY1NSA2NDkzZDVlOTQxYzJhODBmZmVhNTgyZmMyNzQxYWI0YTg4YzY5Mjg2IGxlZ2FjeS10cnVuaworMjA2NTYgZmY4MTBmYjU5NTEzMjE5YWNkMmNlZDY5MjRjZDkzMGIzMTc5N2JmNiByZWxlYXNlMjEtbWFpbnQKKzIwNjU3IDc1ZTc4MTQwNDFkYWNiOGViZDNmOTQzMmU3NzMzOTdjY2VlOWVlYzUgbGVnYWN5LXRydW5rCisyMDY1OCBhNmEzOTlhY2Y2MjA2NGY5YWMyZmE0MTJjNjUzMDQ0NzVmZTJhMGM5IHJlbGVhc2UyMS1tYWludAorMjA2NTkgOTk0OWM4NzBlMTQ0MjBhMjY4MjY3YjRhOGQ2MDYwOGY5MTY1NmJmNSBsZWdhY3ktdHJ1bmsKKzIwNjYwIGJiMDk1MzQwYWM5ODc1OTNlYzE5NGUyNGE4ZmMwMGVmZjY2ZmUyNzggcmVsZWFzZTIxLW1haW50CisyMDY2MSBlZGUyOWFkNjQ0MGFjMDI4YjgzNzA4YjQwZjU1ZjU4NWQ3ODZlODYwIGxlZ2FjeS10cnVuaworMjA2NjIgMWRlYTQzMWZiMGEwNDExMjMxNzg3MjRhMzBmMThiYWUwMjM2OTczNCBsZWdhY3ktdHJ1bmsKKzIwNjYzIGNkOTJjMGQ3ZWFjNDdmOWQ0NzU2NjdiMTE2YjEyZTcxMzEwYjdiYzMgbGVnYWN5LXRydW5rCisyMDY2NCA5ZjZjZmRmNzFkNTA2OWFhNDMzMjRjNTk5NjcwNDI3OTk3NzI5NTg1IGxlZ2FjeS10cnVuaworMjA2NjUgNmRjMzYwNzhmNTNlMWU4Njg3ZWEzYjEwZDE3YjNlMjIwN2ZhNWRiZiBsZWdhY3ktdHJ1bmsKKzIwNjY2IDFiMWYwY2IyODVjMjU4MzZhNjIyZjE3OGMyYjY0NDJiY2NkM2MwZTEgbGVnYWN5LXRydW5rCisyMDY2NyBiZGVkNmQzMTg2YzBkMjk4YWQ2N2U5MGJjZjg3OWVkYTQ5Zjk5ZDFmIHJlbGVhc2UyMS1tYWludAorMjA2NjggNDg5NjYzMDU5MzQxMzIyZDI3M2QwOWM0YjA5MGFmYTUyMzRhNDQxMSByZWxlYXNlMjEtbWFpbnQKKzIwNjY5IGE2MjZmYTBlM2Q3NTA0ZDZjZTcwOWM1YjE0MDk5MDQwOWQwM2QzMDggbGVnYWN5LXRydW5rCisyMDY3MCAwY2ZhZGQ3NjA3ZDUxZTI1NGQyMjU5YmM5N2FlYWUyMGRlNTI1MWE2IGxlZ2FjeS10cnVuaworMjA2NzEgMDZkN2RhODE0MDlkZTFjMGZjNGYzMzI5NDNiNjZlMGFiY2RmN2I5YSBsZWdhY3ktdHJ1bmsKKzIwNjcyIGUxM2VlZGQwNGE0YTgxYzc1YzEzNWZiOTBhNjA0NjZlN2YyMTQ2MGYgcmVsZWFzZTIxLW1haW50CisyMDY3MyBlNzg1ZDdiZDc1OThmYTQ5ZjBlZjUwODdjOWVjYjYyMDNhZGNlMjA0IGxlZ2FjeS10cnVuaworMjA2NzQgNjBmOGMxNWMwMjU1ZGI5ODdlM2I3NjYwNzVkOWMyZTA4OGY2NWMwMCByZWxlYXNlMjEtbWFpbnQKKzIwNjc1IDM5YmYxZjZjZjBmOWJkNWY4MjA2ODE1YWY2YWYxZWZmNjFlZjUwYzYgbGVnYWN5LXRydW5rCisyMDY3NiAxNDc2MzJhZDFiY2MzYTNkNzMzMzIzNzNmMjMzZTYxZGE5OThlNTZiIGxlZ2FjeS10cnVuaworMjA2NzcgNDM3NDgyZmU1NWU2NDc3YzU1MjMzODE1ZjIwZGZlYmNhOGRkNzQ0ZSBsZWdhY3ktdHJ1bmsKKzIwNjc4IDBlYmZlOWExZWI0M2U5NWM0NGJjZDBmYTkwNzkwN2RlZmE5YjU0MjEgbGVnYWN5LXRydW5rCisyMDY3OSA4MjBlNWEwYzMxMTJmY2YzZDc5YjdkOWJlYjM2NjQ0MWEzYzFlYTQxIHJlbGVhc2UyMS1tYWludAorMjA2ODAgZjk3MWYyNTJkOWI4N2E2NTYyN2ZiZDY1YzIwMmM4YTI4MDRmOTU0OSBsZWdhY3ktdHJ1bmsKKzIwNjgxIGQwNWRiZjNmMzZmNjcyOTQyOGNiOWVlNjUxMWYyYWRhNjIwNTRkNjUgcmVsZWFzZTIxLW1haW50CisyMDY4MiBlZDc3MWI1ZGI1YWFmM2E3NzY3MDRlMDE2MTNhZWQ5ZjMzMGYxM2UwIGxlZ2FjeS10cnVuaworMjA2ODMgMWEyMWRkMTNlNjBhNmU3NDJlYTFiMGJkNTk4NzZmMDBiYWU3MzJmNSBsZWdhY3ktdHJ1bmsKKzIwNjg0IDNlZTlhM2Y2MGJjNzk2NGExNzIxZDE1YmQ0MDI2ZDRlNzU3YWVjNzkgbGVnYWN5LXRydW5rCisyMDY4NSA1M2JiZWIyNWJkZTcxOWY0NmFiNmI4YzZhOTNmYWRmNDM5MTc2Y2U4IGxlZ2FjeS10cnVuaworMjA2ODYgYjE2ZmM4OWMxOTRmNmEzNTRmMTVjNDE3OGI4ZGM3ZmFiOWZmNTNhZiBsZWdhY3ktdHJ1bmsKKzIwNjg3IGI3NmQxYjVlODg2MDBkNmVlZmUzN2JlMWE4NzEyYWE0YTg5NjQzODIgbGVnYWN5LXRydW5rCisyMDY4OCBjNTdjZTc1ZGNkZTBjODJmMTc2ZDhjMWUyZmY0ZjQ2N2Q1YmE3MzY1IGxlZ2FjeS10cnVuaworMjA2ODkgMjYxMTk2YmQxNmQ3ZWYyMmNmYzk5N2ViYjljZDc4NjE5NjdhNmE0OCBsZWdhY3ktdHJ1bmsKKzIwNjkwIGY0NjVjYWUzMDFlZTYxNWQzMDE4OGRiNDBiMzViODQ0YTA2ZTI1Y2MgbGVnYWN5LXRydW5rCisyMDY5MSBiMzkyNjZmNzQ4NGM0NDgwNTRlMzY5ZmE4YTYxZWQ1ZjhhMmE4NzBmIGxlZ2FjeS10cnVuaworMjA2OTIgYzg4NmNkMWMyMTg0NzNkMmNmZmY3NjM2ZTI0MzA0NjgxNTBmNTgxOCBsZWdhY3ktdHJ1bmsKKzIwNjkzIGY0Mzc0ZDc5MzFiYTlmZmJlYjUzNWE0MTRmOTE2YWNiOWY0NzUxNWEgbGVnYWN5LXRydW5rCisyMDY5NCBjNDdjYzlhOTg2NGM0ZTQyMWEwNGY4N2ZlOTMxYTJhNGY3MjVmMTlhIGxlZ2FjeS10cnVuaworMjA2OTUgZWY2ZjNlMTgxODc4NjYzM2I0YWJhMjVmYmYzYzZhNWI5ODM4MDkwMSBsZWdhY3ktdHJ1bmsKKzIwNjk2IDQ3ZDE4NjAyZDVlYTQ1NTEwNmU0MmVkYTk2YjJkNmMwMzNlODFjZWEgbGVnYWN5LXRydW5rCisyMDY5NyBhMDZhNzA0MjYwZTk2YTFkNWZlNWY0NTQ3YTA3ZDJiYTc5OTQ5Nzk4IGxlZ2FjeS10cnVuaworMjA2OTggYTk4N2NmMTgxNDM0OTBkYThhZGI5NDdjOGFjZjRlMzZlM2Y2MDJlNiBsZWdhY3ktdHJ1bmsKKzIwNjk5IDVlMGVjMzljNGNlY2M0YzQ4NGU2MzRlNjRmMDcyZjFiYzE3MTk5NjkgbGVnYWN5LXRydW5rCisyMDcwMSAwODBhMTI5MWJmNmM5ZjgxZjc2MTJjNDExNjIwYmU2YWZiNzk4M2NlIGxlZ2FjeS10cnVuaworMjA3MDIgMzMyNjk3ZGU4ZGI4ZTJkNTI5NGE3YzNiZGI1ODQxNWY2ZGQzMTczMSBsZWdhY3ktdHJ1bmsKKzIwNzAzIGI1MzRmMTA3Mzk4N2NkMzYwMzA2ODZiNzNjYTY3ZDVlZGQ5OWU1MTkgcmVsZWFzZTIxLW1haW50CisyMDcwNCAwOThkNmY4NjlhOWRlODU1MTc0ZDVmN2YwYWUzMmE0N2VmMDJjZjlkIHJlbGVhc2UyMS1tYWludAorMjA3MDUgNjg2MDU0ZTAzYWM1OWM1YmQyMGM2MDRmMmRkMDFhNDYxYjU1N2FhMiBkZXNjci1icmFuY2gKKzIwNzA2IGVmNjViY2VlNzJjYTIyMzZjYTdiM2NhMGU4MTA0M2U4NjY3OTdjMzggZGVzY3ItYnJhbmNoCisyMDcwNyA2NWUyNjExM2IzZmIyZTExZjliNjExZGFlMzBkOGE0ZDRjMzQ0MTMwIGxlZ2FjeS10cnVuaworMjA3MDggNGVmMWI2YTgzYTQ3OTRlMTQ0YjY4ZTRiZjY1OTc1NWUyYjc4NTNjOSBsZWdhY3ktdHJ1bmsKKzIwNzA5IDJmMGRmOWYwYjA4ODc4MmQ4NjdmZGM4ZTc3NzU4MTNjZTQ3NzZkZWEgbGVnYWN5LXRydW5rCisyMDcxMCA2NThjMDc3ZGQzNTEzMTM1YzQ5ZjIxNDdkNmQ4Zjg1OTg2OWMwZDM1IGxlZ2FjeS10cnVuaworMjA3MTEgNTFhYTQyNTAyOTc1NTBkYjFlYWFiNWUwYjc2ZmE2NTMxNDJlNDI3NyBkZXNjci1icmFuY2gKKzIwNzEyIDQ3ZDQ0ZDg1NDJiN2IyZmI2NTEyMjhiZTA0NTMzN2RiMWFjMTFiZjMgZGVzY3ItYnJhbmNoCisyMDcxMyBkZDZmOGM5Y2FmZjBlYzVlMDQ1ZWQ1NjExNjBmOTk3MmRhYWNhYjM0IGRlc2NyLWJyYW5jaAorMjA3MTQgN2E5ZjZjMDk3OTFhOGVlZDI2NGE0ODQyZGE5NWExODFkZTg2M2MwMCBkZXNjci1icmFuY2gKKzIwNzE1IDQ3ZjRkMDU2OGM3Y2I3MzI3NGRjZThmNDE2MmE0N2Y3YTExMWMwOTcgbGVnYWN5LXRydW5rCisyMDcxNiBjMTg4MGY2YjMxODljZjg0YzM0ZWYyZTAzODA0NDdmZDRkZDY3YWUxIGxlZ2FjeS10cnVuaworMjA3MTcgY2UzNzM0MmY2ZjZlM2YzMGU2MzZhMDdlMWU2YmRhNzYzNDI0ZGJlYSByZWxlYXNlMjEtbWFpbnQKKzIwNzE4IGNjOGQxNDhjMzk2YWU5MDhjOWI0MzM0NmFkODhlZGMxOGY1ZTM0ZTAgbGVnYWN5LXRydW5rCisyMDcxOSBmYjEwM2UzZGEyYWVhZmYzYzlmZTE5YzIyYzk2MDZlMTc0ZDYzOWM2IGxlZ2FjeS10cnVuaworMjA3MjAgMDFiNTA0M2E0NTA5ZjcwNDQ0MzQwODcxYTE0MDhkZWE0NDYxNDUxOSBsZWdhY3ktdHJ1bmsKKzIwNzIxIDY2OTYwNGQ5MzQzZjA1ZDE3Y2E4MzViN2FhNTU5YWZiZDI1N2U1OWEgbGVnYWN5LXRydW5rCisyMDcyMiA0YjJmZGFlYmJmZTVkZTMxYzg3MGIzNGYwNmNkZDRhYTE4ZGI3YmQ2IGxlZ2FjeS10cnVuaworMjA3MjMgMGVhMDkxM2Y4MjRkYWIzZmUxYjViMDEzNzdlOTJiYzMzYzkwOTNhNSBkZXNjci1icmFuY2gKKzIwNzI0IGQ3Y2NiOTMxY2E3OTU1NWVmODY3ODI0NjE3NTViMTJjYWVlMTdmMGQgZGVzY3ItYnJhbmNoCisyMDcyNSA3YTJhMTIyYzk5N2MyMDYzNzViZDEzMDE0NDdlZGMwNjc4NTI2MThlIGRlc2NyLWJyYW5jaAorMjA3MjYgZGNlMWY1MzQ1MWE1YWY0NjkyZTVkMzhhNmZlOTViNjNjYzczNDM4YSBsZWdhY3ktdHJ1bmsKKzIwNzI3IDU5NjA0ZjViNGRkMTI5MGUxZWM0ZmQxYWJjNjdmYTI5NDc4MWRhNTAgZGVzY3ItYnJhbmNoCisyMDcyOCA0MTllYmM2NzNlZDhkZjljNmY5ODEwYjhmNjAwYTU2NGRlNDEwYjdhIGxlZ2FjeS10cnVuaworMjA3MjkgMGViYjkxNTIxYWU2YmNlZGJiYzA1ZWVjN2I5MjYxOTJiMjEyOGI2YiBsZWdhY3ktdHJ1bmsKKzIwNzMwIGI0YjM2NTdjYjFmYWE0NTczYTRkNTRkZTc0ZDY5NzI4NjQ5ODc5ZDEgbGVnYWN5LXRydW5rCisyMDczMSA5OTNmYjE4MDFmNDFiMjRhNmFjMDgwOGVkYWViNmM0YmRjNTdmNTU1IGxlZ2FjeS10cnVuaworMjA3MzIgYTE1NzVkYmY3ZDgxMmIxOWU4NjU3YjAwMzkyNmY0YjhiN2FkMmE1MSBsZWdhY3ktdHJ1bmsKKzIwNzMzIGFiMTdiOGI4ODY5NjJkOTEwMGFlNjBiYmIxNmYwOGM5ZTM2NDNiNDAgbGVnYWN5LXRydW5rCisyMDczNCA1Mzg3Y2I3NjcwNTk0YTJmOWVmZDZjNGYzYzQ2N2Y0ZTYyMTc3ZTIxIGxlZ2FjeS10cnVuaworMjA3MzUgMWRhY2QwZDYwNjM3Yzg3M2M5MzcxZmQ0ZTAzOTgwNTRmMTEyMDYzZSBsZWdhY3ktdHJ1bmsKKzIwNzM2IDEyOTZlODYzMDRlZjU4ZjRmMmJlNWM1N2U1ZGRkYjM2YmRkYmYxMDEgbGVnYWN5LXRydW5rCisyMDczNyAwZWQ4YzVmM2Y1MzA2MjQxMjUyMWM0MzBjMzA2Y2IzZTNmMmQ0YTA1IGxlZ2FjeS10cnVuaworMjA3MzggOTljNDlmMDA5Mzg4ZTUyY2I0ODI0OWQyZWEzYTY2NTFlNTYxYWFmNiBsZWdhY3ktdHJ1bmsKKzIwNzM5IDg5OWYzNjdlYmE1NmI1MGM5MmUxMDZhNGU3ZDM4NDJlYjNiOWY2NTYgbGVnYWN5LXRydW5rCisyMDc0MCA0NzllYTY5ZWM4NWIzMjBiOWJiNjBiMzM3ZDI3MzA3ZDcxNGNjYWM0IGxlZ2FjeS10cnVuaworMjA3NDEgMjJhMGIyZTMyOTFmMDJhODg5ZTRkZWM4NTRhMzExNDZmMzNjMTdlNiByZWxlYXNlMjEtbWFpbnQKKzIwNzQyIDc4YzY0YzBmNjYxY2JjNGY1M2E4ODU0ZjUyY2MwOTEwOGU1NDIyM2UgcmVsZWFzZTIxLW1haW50CisyMDc0MyA4MDQyNWIyYzFlNGM3MDIzY2Q1ZWIxN2ZjYmVmMjdjZTJiZWE5MTJkIHJlbGVhc2UyMS1tYWludAorMjA3NDQgMmUwMTVmOGExYWMyMDFiMTJmMjI1MzRmNDFlYjBhMmI2NjIwMTk0ZSBsZWdhY3ktdHJ1bmsKKzIwNzQ1IDFjNjA0YmM2YjkxZTU0ZmRmMTYxNjdhYmU5MWRiZjVhMmQzOTg0MDIgbGVnYWN5LXRydW5rCisyMDc0NiAxZmIzZWNhODk2OWVhOGNmZTcwMDA3NWFiODIxZmY4YWEzMzNmODlkIGxlZ2FjeS10cnVuaworMjA3NDcgNmUwMDhjNjE5ODU1Mzg1NmYxMTc3NzhiODYxYTJmY2ViY2ZlNGUyZiBsZWdhY3ktdHJ1bmsKKzIwNzQ4IDNiNWJlYjkyNzdlMDQ3YmUzMzExYjk2ZjkzNDBhOTc5MjMzZTVkODggbGVnYWN5LXRydW5rCisyMDc0OSBhOGZhOWMwZjFlMGJiNWNjZDc4OTJiYTc3OTBkNjkwZTBkMTAzMWEyIGxlZ2FjeS10cnVuaworMjA3NTAgOGFlZTUzOTUwNTgzMDkyNTMzODRhY2ZjYjJhM2U1YzIwZTUxYmI3YyBsZWdhY3ktdHJ1bmsKKzIwNzUxIGEyYjY1NmE1MjI5NDNhMTkxOTNjMTJhNDkxZjdlZGQ0NGNiOWEwNGEgbGVnYWN5LXRydW5rCisyMDc1MiBjMTk5ODBjMDNlMmRlMTVmNDc4NzZiZTcwODJhNDA5NDdiNDg5N2U3IGxlZ2FjeS10cnVuaworMjA3NTMgNTU5N2Q0YmNkZTA3NTg1YjM5MzE1Nzg5ZWNlYTM2YjQ2MTk3M2Q3MiBsZWdhY3ktdHJ1bmsKKzIwNzU0IDdlYjMyODhjODFlMzU1YmNmN2U3OGVlMjM1MWM5OGE2MWRiODA2ODggbGVnYWN5LXRydW5rCisyMDc1NSA1M2ZjY2Y0ZDZhNDE0MTM1NzI3ZWUyNGQzZDBjYzQ3MjQ1YTRlMjE5IGxlZ2FjeS10cnVuaworMjA3NTYgNDllNzFhODNmNzkwZmEyMjRhMTdhNTU4OTdmZDM5YmY1MGY1ZDhhNyBsZWdhY3ktdHJ1bmsKKzIwNzU3IGJmNzBkMWY0ZjYxZjZjZDE1MTc0M2VlYmYzMzI3NTNlZTUwMjI1ZDggbGVnYWN5LXRydW5rCisyMDc1OCBjZThjMzU2NTQyYWI3Y2U2NmJjMmJkNDIxYTMxNDY2ZDA2NDk0YmVhIGRlc2NyLWJyYW5jaAorMjA3NTkgZGQ1ZmIzOWU2NWVmMzY1M2YyZGYwMDY3NTM1NmRmNTE2NjA4N2YzMCBkZXNjci1icmFuY2gKKzIwNzYwIDMzODAyNzk2MTJhMzNjOGJjN2IzOTNiODI0MDA0ZDBhMDI4ZWEyYzUgbGVnYWN5LXRydW5rCisyMDc2MSBmZjlhODMzOWFkMWI0YjI5NTliNmM2NTg3MjIxNGI0NDdkOTk1MWY3IGRlc2NyLWJyYW5jaAorMjA3NjIgOWY1NTk3ZWE5NmZjMTRlZDE3ZmUxZThmMDk5M2RkZDM3MzQ2NmRhNSBkZXNjci1icmFuY2gKKzIwNzYzIDdmMGY1ZWNlNDU2MjhiZTljNDIzZTI4NjMzMmExZTk5NDE4NzAwMTQgZGVzY3ItYnJhbmNoCisyMDc2NCAxNGZkNGJiNzc5OWFjMTVmNzg5ODM5M2I3N2NmNGU1YWM3ZDA5MGViIGRlc2NyLWJyYW5jaAorMjA3NjUgMTU3OWQzMDk2NzZlMzUwN2NhOTlhNjNkYzU4ODQ4ZjQ2NTllNThiMyBsZWdhY3ktdHJ1bmsKKzIwNzY2IDU0ZDM5NTQyNWU5MjkzNDY3ZDYxYmY3N2FhM2M4Y2I2YzcwOWYwMDYgbGVnYWN5LXRydW5rCisyMDc2NyBjMzRjYWI4N2Q3MjE5ZmJmODBmZmE4MWUzNjQ0ZDc1ZWUzMTZhY2Y0IGxlZ2FjeS10cnVuaworMjA3NjggYzgzNjIzMDNlYzNiMWUzMzIyM2IyZTY2ZjIzYjhmYzJkOTM1YzRkNSBsZWdhY3ktdHJ1bmsKKzIwNzY5IDIyMjc2N2ViMjhmNzVjZWUwYTFhOGM2Y2YzMWJhYzIzOTg3OTRjZTkgbGVnYWN5LXRydW5rCisyMDc3MCA0ZjIwNDk1YjhiZWRjNTk5ZWQ3NDFlN2UzNTMzNmY4YTcyYmI1ZWY4IGRlc2NyLWJyYW5jaAorMjA3NzEgNGFmODY1YjIyMWVkZjBjMjE5ODQ4MmFmNDE2OGEwMmNmMjkzM2I1NyBkZXNjci1icmFuY2gKKzIwNzcyIGI4ODFkYzNiY2ZiM2QzYjMyMjVkNWY5YTZjMzA2M2JhZDhmNmI0MDYgZGVzY3ItYnJhbmNoCisyMDc3MyA0YjA4ZmQwODdkMzY0M2U0OGJhNDc1NjZkM2RlNWQzMTg1ODNhMWM1IGxlZ2FjeS10cnVuaworMjA3NzQgOGNkODc0MWViZWMwZDQ0ODMxY2Q5YWViODE2MWU3ZGQzN2M4NjhiYSBsZWdhY3ktdHJ1bmsKKzIwNzc1IDIyMTFjODk5NWE1ZjhkODVhY2ZjZjhhYTE4OWUxOTgzMDljZjIxMDYgbGVnYWN5LXRydW5rCisyMDc3NiBkNmRmOGQzNzFiNjc0Njc4YWY5MGI1MzVjMzM0OTVlYTk0NzBlNTBhIGxlZ2FjeS10cnVuaworMjA3NzcgOGY1Y2U1ODExOWUwNTRhYjcyMzY1OGVmZGUyNWEyMTUzOGE4ZjI0NiBsZWdhY3ktdHJ1bmsKKzIwNzc4IGY3YzM4NTIyNmY2NWE4NTM1ZWQ1MjIyOWQzNDM2Mzg0NjliZTg0OWIgbGVnYWN5LXRydW5rCisyMDc3OSAyOWQ4NGY5MjBkNWI5NzMxYjA3NGNiZjU1YWMyYzcyZGY0YzM4MjgwIGxlZ2FjeS10cnVuaworMjA3ODAgMTlhNDQ4ZmRlZGY3MjRiNjE0YmNmODY4ODgxOWRkNjU5YzA2ZDVkMyBsZWdhY3ktdHJ1bmsKKzIwNzgxIDRiY2Y4OGU0YWJmZjIwOTljNDVhNjBjOWMxMjA1MmI5ZDdhZWJjMTUgbGVnYWN5LXRydW5rCisyMDc4MiA3ODAyNDhjZDFkOWFmYTViNzA2N2MwOWM1MTE5NzY3OTdiOThkZWUwIGxlZ2FjeS10cnVuaworMjA3ODMgNTAzNzZkNDcwNjQ4MjE3Nzg3ODFkZTVlYzIwNTI4YzE2NDFmNGNjNCBsZWdhY3ktdHJ1bmsKKzIwNzg0IGYxMjM5NmM1MWFlYWY0ZDQ5ZDJlNmNmYzE3Njg2OGU2YTQwMGEwMWEgbGVnYWN5LXRydW5rCisyMDc4NSAwYWRmYmUzMjg5ZDVhZTNjYjBlMzUyODIwYjhlODg4MmM3NTg3N2FiIGxlZ2FjeS10cnVuaworMjA3ODYgMGJlMTZkMGVjZjY0YTc5NzEyMzM4NzE5ZTE3ODI2NzZjYzMzYTJlMCBsZWdhY3ktdHJ1bmsKKzIwNzg3IDA3YTg3NTIwMDFiYWNiOWMxNWQxNDA4YWQ4ODZkMDg2NTE5NzU3ODIgcmVsZWFzZTIxLW1haW50CisyMDc4OCAwYjNkYTk5ODI0YzdkNWRmY2FhMzIyODliYjA2M2RhMDdkNGIxN2E0IGxlZ2FjeS10cnVuaworMjA3ODkgMjY3NDUwNTNmODQwNTk2YWMzNGQ5MTFkY2E2YzA1ZmM5NjgxMjc1MiBsZWdhY3ktdHJ1bmsKKzIwNzkwIGI1NGRiZWYxZjhkMzY1NjRmZmVjZjA4ZTBhYTY2ZWQ3YmYxMjU2YzkgbGVnYWN5LXRydW5rCisyMDc5MSBkODkwYTIxYmViZGEyYjhhMTRmMzE5MjQ2YTIzMGNmNmYxOWM4ZGU2IGxlZ2FjeS10cnVuaworMjA3OTIgY2VmNWI2MDBmYTE2Mjg0NmZhZWJkZmU4MWVjZjBiMTA1MTI4YzExMSBkZXNjci1icmFuY2gKKzIwNzkzIDc1MDllYTA3MmNjYjQyMmQxY2Y3M2E3N2NkMDE4NDc3MTQzZTExYzYgZGVzY3ItYnJhbmNoCisyMDc5NCA1YzA2YTk1OTZmYmZmZGQxMWQzYjViZDFkMjE1YjVkYWQ3ZTUwMTNjIGxlZ2FjeS10cnVuaworMjA3OTUgMWJlY2Y0NDJkNzM1NTliYzU2NmI4ZWQ1MGJhOWExZTMxMzcyYzlkZSBsZWdhY3ktdHJ1bmsKKzIwNzk2IGMzZmY1NzIyNjNkMzMyZjg1MTVhY2IwZTMxOGFhNTUwMTI5OGY4ZWEgbGVnYWN5LXRydW5rCisyMDc5NyBlZDFlOGI2ZTI2ZWNiMWM3M2ZmM2U3OGMwY2IzNjNlZTM5MDRkN2JlIGxlZ2FjeS10cnVuaworMjA3OTggOWVhODdjMGE3YzA0Mzc4MGQ1NjliNjNhNzFkMjI0NGQ4NjZmZDg4YyBsZWdhY3ktdHJ1bmsKKzIwNzk5IGFkNTAwYjUyNjczYzYzOTg2ZDY0YmQwNWU1ZTU2MDI4MjY3NTA4YjQgbGVnYWN5LXRydW5rCisyMDgwMCAyODkyYWEyNjA3ZDVmNWU3NDc4YWQ4M2M0MDc2ZjE2YzZlMmJkNWQyIGxlZ2FjeS10cnVuaworMjA4MDEgZGIwNzRhYmE5ZTM2NGNhNzYyNzVjYjE2MzkyOWYwNGFkOTEwNTllMSBsZWdhY3ktdHJ1bmsKKzIwODAyIDNkZDQ5NTQyYzRkMDFhMTYxYzllMjkzMDI4YWVjNDFmZmZlYjYzMGYgZGVzY3ItYnJhbmNoCisyMDgwMyBjODcyZmRmMTAxMzBmNDY5ZTkyZjhhMDg4MjFhM2FmODZhODYxMjBkIGxlZ2FjeS10cnVuaworMjA4MDQgZjE4ZTgwOGMwMjMwZDAzODdhZDZjMjJkZTM2ZTkyNDEwZWJmZGQwOCBsZWdhY3ktdHJ1bmsKKzIwODA1IDJiNWE5YmZmMWIxMWU5MzgyZDVhOWFmODJhYmQ1MmIwZTY2ZmMxMmMgbGVnYWN5LXRydW5rCisyMDgwNiA3ZWQwY2FlYmRkODYxY2UyZGFhMmYyNTQyMjU5MTJiMWQ2ZTczMmM4IGxlZ2FjeS10cnVuaworMjA4MDcgM2UyNTZmOWQ5OWFkZTBhOTE1Mjg5N2EzMDRkM2Q2ODk0OThhNDI0OSBsZWdhY3ktdHJ1bmsKKzIwODA4IGFkYTNiZDFiODcxMzQ3Y2NiMmEwZWZkOTlmYTUyMmYxOWE1NjhlZGMgbGVnYWN5LXRydW5rCisyMDgwOSBmYjMxYzMzNzYxYzk2NWYwYzA4YjFhMjg1NTllMTNlZGMxMWI2ZDVmIGxlZ2FjeS10cnVuaworMjA4MTAgOWZmMzVmNzY2MWJkNzNlZDYwMWI1NDI0MjYyNzAwM2U5Nzg4ZjM0MiBsZWdhY3ktdHJ1bmsKKzIwODExIDdmNDU1NGExY2FlMjI4ZjAyOTE5NzZjOWU5MzRmYTNiNzhlZjc4M2EgbGVnYWN5LXRydW5rCisyMDgxMiA2OTYwYjJiYmJmY2FhMjExYmJmMGIxMDg5ZDM3YjdiMzQ1YjE0YzU3IGxlZ2FjeS10cnVuaworMjA4MTMgMDE3YTY0YTRiZGM3YTk4YzYwMThjNGQ3NzRjODBkZGM1MmZiODQzNCBsZWdhY3ktdHJ1bmsKKzIwODE0IDI5NWEyZjQ5MjdhYjY5YTVjYWNhMGQzOTNlZjcyOWY5MTNmMzYzYzMgbGVnYWN5LXRydW5rCisyMDgxNSBhMGQwOGM0MmU3MTAyYmFlYWIzMzFhMTQ5MWZkOTY5ZjEwYWQwNzlhIGxlZ2FjeS10cnVuaworMjA4MTYgYmE5NzExMWE2YWQ5Zjk5N2YwMTA4ODY1ZTIzMzJjYzJmMzk2YTM5MSBsZWdhY3ktdHJ1bmsKKzIwODE3IDA1NWZjMDQ2ZTA4MGVjMGUyZGE0YTE4ZmQwZmFhMjAxMDY5MDMyZmUgbGVnYWN5LXRydW5rCisyMDgxOCAwMjhhMWQzOWVmYjY1YzRiMzhmYTg1NGNlYTQyNDljMTYzNzYwZTEyIGxlZ2FjeS10cnVuaworMjA4MTkgZDJkM2Y4ODY2MWEzZTk5NGFmNzE3ODI1NjBmZDJmYzYwNGRjYzM2ZCBsZWdhY3ktdHJ1bmsKKzIwODIwIDI4MDc5NDllMGJhNTkxZjE0ZmYxZDIzMDFkYTViMTk5ODgzMTkzNzEgbGVnYWN5LXRydW5rCisyMDgyMSA3OWFlZTQ5OGEyYmU1MWJmODg5YTE4NjY1YTdjMTgyYjU4MzU3ZGIyIGxlZ2FjeS10cnVuaworMjA4MjIgNzc2MzU0OWNjYTQ1NjRhNGU1MTMxZTVlNTZkYzRjNDI4NTJmMzdlYyBsZWdhY3ktdHJ1bmsKKzIwODIzIGI3N2M0ODg4ZDdjY2FkZDZmNzQ3NmJmY2YzMjU2ZjQzMGYzZjQzOTEgbGVnYWN5LXRydW5rCisyMDgyNCBiNTNiNjBmMWVkNDU5Njc4N2ZmMWE0YWMzNGMyM2Q5NDlmMzVhMzM3IGxlZ2FjeS10cnVuaworMjA4MjUgMzM1ZmJkZWU3Y2Y4M2MyN2JmYWNiYTMzNTI0MmY3NWJiNmJjNDEyOCBsZWdhY3ktdHJ1bmsKKzIwODI2IDk3ZWNlOTMyMWM1MzY0ZmU4NzllOGVjNjExNGJiODU5MzBiYTMzMzcgbGVnYWN5LXRydW5rCisyMDgyNyAwZTg2YmRlYjBiOTI2MTdlYjcwODJjZTk0ZGYwNDg3ZDc3ZTI1MjcyIGxlZ2FjeS10cnVuaworMjA4MjggYmU5NjllNzE3YjkxYjBhMjhiZjUyYzBjZGFlY2E5MTJiYWYyMDk5ZSBsZWdhY3ktdHJ1bmsKKzIwODI5IGZkZTU1MDhlODJkZTZjZDlkOGRkNzcwZGE2ODg5YjIzNzJjYzhmNWMgbGVnYWN5LXRydW5rCisyMDgzMCAwNDJkY2ExZDQ1MjZlMTU5MWNjZDk2NWUzZDVlN2RlY2Y5NzdmMmEyIGxlZ2FjeS10cnVuaworMjA4MzEgY2NiNmQ3NjYzM2JlNGQ5ZGEyN2VhOGU2YTQzYTQ0YmZmM2Q3NjFmYSBsZWdhY3ktdHJ1bmsKKzIwODMyIDY4YmYwN2U3YmNjYzk0ZGQ2ZTJkYWI4YTdkNTBjOWRkNzYzNGU3NDMgbGVnYWN5LXRydW5rCisyMDgzMyBiODIzYTMzMTgzZmM2NGJiZjk2Y2I3NjcxZTgwMDc0YjllMGY3MjU5IGxlZ2FjeS10cnVuaworMjA4MzQgMDk0Y2VlNjg5OGMxMDI2YzRhOTg2N2Y3OTVmNmVjY2Y2Mzk4Zjc2MCBsZWdhY3ktdHJ1bmsKKzIwODM1IDQzYjdlZTcxOGY1M2ZmYTkxYzNlNmE2NDJlZWYwNTYzMTZkOWYxYmEgbGVnYWN5LXRydW5rCisyMDgzNiAyMDBmM2E1ZGUxYzlhZGIyZWU4Y2FkNzJjM2ZhMWZkZjNjMzM4NzYyIHJlbGVhc2UyMS1tYWludAorMjA4MzcgMWViMTIyNTlmZWVhNjQ3OTg0ODI2Nzg2NzVlZWIzOTJkYTFhODJmOSBsZWdhY3ktdHJ1bmsKKzIwODM4IGViMDNjNmZjMzFlNWJkOWZiNTMxMGUwODE1OTUwNzJkN2Y2ZGZkZTUgbGVnYWN5LXRydW5rCisyMDgzOSAxNTFhMmZhMjk2ZmU0MmFmYTQxZmRjZTVlN2NlODU4NWEyYjExN2FhIGxlZ2FjeS10cnVuaworMjA4NDAgY2IxMWM1OWMxOGRkM2JmZmFjZmUxYmU2Mjk1NTI5NDM5ODM4N2UxOCByZWxlYXNlMjEtbWFpbnQKKzIwODQxIDEzYmRiNWIyMDdkMjZkOTM2OTY1OTQ2ZmZkMDkzZmUwYjRlNWZmNDIgbGVnYWN5LXRydW5rCisyMDg0MiA1MjRlMGYzYzE2OWIyNzA3YmFhNWU5NTEyOTc2NjM3MWRmMjBjMTNhIHJlbGVhc2UyMS1tYWludAorMjA4NDMgMTdjMjAwYTdkYjg1YWQ2ZDQ4ZTVhZDhlYTY1ZDc0YzRjNWZlZTk4MSBsZWdhY3ktdHJ1bmsKKzIwODQ0IDQzYWI5ZjgyNGQ4OTBkNTVjYjNhODRhYzljMzIyNDJlMTVhNTdkOGYgcmVsZWFzZTIxLW1haW50CisyMDg0NSBkNTY2NjZkZWI5NTM4ZmYzYWUwMzk1OTA0NjdkZmM4YWQxNmMwN2ZjIGxlZ2FjeS10cnVuaworMjA4NDYgNjAyN2QzY2Y4MDVjZjcwN2EzYjU5OGFkODk5M2Y3MDlhZTdhOTE2ZiBsZWdhY3ktdHJ1bmsKKzIwODQ3IDIwNjBlZTBhN2Q5MmM0MWYzZDJiMDlkOTU5MGIwMWY0ZThhMDg5MzMgbGVnYWN5LXRydW5rCisyMDg0OCAyMTM1ZDdkZTg2YWRiMmFhNWQ4NzExYTFjM2EzZjY1ZjFjMmI3OWRkIGxlZ2FjeS10cnVuaworMjA4NDkgYTkzZGFhZmJkMTNkNzQ4Y2U5NWQxNmFjOWVkY2FiY2RhNWJkYzEyNyBsZWdhY3ktdHJ1bmsKKzIwODUwIDBhZjgyNGM4ODIwMzA2MWU0MDRlYWQwNWJjM2YxZjljYTdiYjhlM2IgbGVnYWN5LXRydW5rCisyMDg1MSBmZDVmODMxODg3Nzg2ZDMxMmMzOGIzNmY3YWJkYmFmMWE5NmMzOThkIGxlZ2FjeS10cnVuaworMjA4NTIgOTNiNTkwNzI5YmRjODk5MGVlZjcxY2E1NDUxZWJiMWMzYWFkNjZiNiBsZWdhY3ktdHJ1bmsKKzIwODUzIGZkMTJlODJiNzcyN2ZiMjgyZjVlZDdkZDQxMDdiZjA5NjIyZDlkMjYgbGVnYWN5LXRydW5rCisyMDg1NCBhMWRkYzQwODBjYzU3MjE5N2VjZTg2Nzk4Zjg5OWEzNmY5NzcwZDQ3IGxlZ2FjeS10cnVuaworMjA4NTUgZjk1YmFkYTUyNzNlMjg5OTBjY2NjMzZmMzZiMzRlZjA2NDI3MzVmZCBsZWdhY3ktdHJ1bmsKKzIwODU2IDkzOWUzZGE1OWM2MTIyMTI2MzBhMTRmYzk1NzEwMGE2YjdhNWU3OWMgbGVnYWN5LXRydW5rCisyMDg1NyA1YjA5N2Y2MTcxNzM1Mzg5MmQwOGY0N2JmYTJhNTRlZDY1NTBlMjA3IGxlZ2FjeS10cnVuaworMjA4NTggOGRhOTQ3M2YwNzM2YjA0OGJhNGNhZTE0Zjg1MzRiMzJlZGM0NTdjMyBkZXNjci1icmFuY2gKKzIwODU5IDE0ZGE1MzE0NjY0ZDk0ODJjZGEyMTA2ZTA0OTUxODRkZjhlYWVlMjEgbGVnYWN5LXRydW5rCisyMDg2MCBjNGY1NTQwMWU4YWVkNTcwMWUxNDEyMzJhZDU3NWNjN2NmM2ZlNDIxIGRlc2NyLWJyYW5jaAorMjA4NjEgZTIwODBkYjcxYjFiMGNiYWFiNjZmZWM5Nzc2YzQ4Y2E2ODgyNGViYiBkZXNjci1icmFuY2gKKzIwODYyIGMxMGI0MTg1NTIwMjhhZDdiZmMxMWJlZDUzNGM2ZGI2MjBkZTAwZmMgbGVnYWN5LXRydW5rCisyMDg2MyBmMGMzZGUyMmNhZWRkZWEyMjRiNzgxMzQ1NGYyYmE3NGIzMGJmZGRkIGxlZ2FjeS10cnVuaworMjA4NjQgY2M5ODRlZDI2NTg2YWMwNmM2ZWM4OWQ2ZjQ3NzBkZWQ3YjNkNTNkNyBsZWdhY3ktdHJ1bmsKKzIwODY1IDVkNTBkMWZhZTA3ODdmNTkyZDU3ZGRiMTczZDBkZGYwNzJiOGI4YmIgbGVnYWN5LXRydW5rCisyMDg2NiAzOGZkZjk4ZGE5OWZkZDE2MmUyZGJmM2FmZjRjN2Q2YTljNWY2M2JmIGxlZ2FjeS10cnVuaworMjA4NjcgMzRiMTUwNGU2NjQ0YzdlOGRhMTBkYTIzNGIwYjFkNGY3YjQ0NDE1MiByZWxlYXNlMjEtbWFpbnQKKzIwODY4IGFlOGM0ZjQ3MGEwZTQ0NzI3YzczOTI0MDM1ZmExMDA4MDllMDQ2OWQgbGVnYWN5LXRydW5rCisyMDg2OSA1M2RlMGVlYTRkMjVjODZlOTk4ZWVjNTdhMzcyM2I4ZDU1NGFkNDkyIGxlZ2FjeS10cnVuaworMjA4NzAgNjk3MzdkN2Y0Nzc2ZmQ2YzMyOTQzZDUwYmQ2MjFjYTIxMzhkNmQyNSBsZWdhY3ktdHJ1bmsKKzIwODcxIGE0NmYxZjdhOWM4NjlhMmM3NTQ5ZTFiNTc2MWI1M2Q1ZTUzYTk0NTEgcmVsZWFzZTIxLW1haW50CisyMDg3MiAwYTdhZjBlNTM4ZDRhYmRjYzBiNTdmYTMzNmQ2Nzc1YWVjMTQxMWE3IGxlZ2FjeS10cnVuaworMjA4NzMgOWFmODA2YjI4NmM2MTY1NDc2NmQzZTMwYzE0OGMxNTA0OWMwYjExNyBsZWdhY3ktdHJ1bmsKKzIwODc0IDdiOTc3MWY2ODU2YjMwOWRkMzMyY2E5YTZkMmViYzY0MjRlMTE3OGIgbGVnYWN5LXRydW5rCisyMDg3NSBkODg0MjM1ZmU3NWMzZjRmNjUxMzEzNDAzZDE5MjA3MGVjZTZlMWU2IGxlZ2FjeS10cnVuaworMjA4NzYgNzc4NzFjNDk5MjE1ZmIxOWM3NDY3NGZjZTMyNmI3YzMyMTM4NjFlNCBsZWdhY3ktdHJ1bmsKKzIwODc3IDYxOWZkOGUwNjdkYWVjZjA3NzA4M2Q5NzY1ZmE0NDVmMTk3NDgwNjIgbGVnYWN5LXRydW5rCisyMDg3OCBmYmZmYjZkZTI1ZGRjYjNiODNlZGMyZjhlZDE3ZGFmNzllZjcxMGMxIGxlZ2FjeS10cnVuaworMjA4NzkgNDIxYjFkNjYwNDk1MDg4NjlmMWM3ZTcyOGUyOTY0ZGUyYzVlMDNiZCBsZWdhY3ktdHJ1bmsKKzIwODgwIDg0ZmYxOTc3ZDc3MjVmYjUyNDA1N2VkNzNlYmY5YWM3NGM1YWVhODMgZGVzY3ItYnJhbmNoCisyMDg4MSA0NjkwOWYyMjE3MGMzZTg2ODI2MDJkNjY3ZDBlYTVmYmExMjYwZGMxIGxlZ2FjeS10cnVuaworMjA4ODIgZmY2YTZkMzQ3MTk1YWQ0ZDI0MjNkODdjNmJjYzZkNWNjY2QwMGVjYyBsZWdhY3ktdHJ1bmsKKzIwODgzIDFiZTZkNjhhZTEyY2U3YjFhNGZjMzRhYjM2NjkxNmI4Y2NiYmZhODggbGVnYWN5LXRydW5rCisyMDg4NCA2YzVhODAwZGE3OTFmNDI1OWNkMWUxZDNmODY2ZGUwMjE3ZmY1OGE0IGRlc2NyLWJyYW5jaAorMjA4ODUgYTY0M2E4N2E0YjJjYWE0NjMxYzgzMjI0ZTczNWU5YTllYzA3ZjFkMyBkZXNjci1icmFuY2gKKzIwODg2IDcwY2Q5YTQxOTA3Njk0Mjc0MDQyN2ZkODgzNDI1YTMwYmU0ZTVhY2QgbGVnYWN5LXRydW5rCisyMDg4NyBiZDUzNDliNDExZjYxYTY5ZjFhZjUwMWZkNmVmMzU0NTljMjBkZWU5IGxlZ2FjeS10cnVuaworMjA4ODggZDQyNjk0MzdlOGIzZGMxZmM1ZjE3ZDU3NzQ5MWExZThjOTlkNDc2OCBsZWdhY3ktdHJ1bmsKKzIwODg5IGNlNjlmYjljOGQ1NjE3MDhiODkyOWUzYTkyN2VmMmNiNDUxNjY2YzkgbGVnYWN5LXRydW5rCisyMDg5MCAxNjAwNWIyODU1NzYyZGYxZGEwMGIxM2RlNzRjZTA4OGZkYTczODQzIGxlZ2FjeS10cnVuaworMjA4OTEgYTFmY2ZkY2IzNDc5NjY4MTUzMmRmZGIyYmUzN2U0YmFmYjc3MDA2YiBsZWdhY3ktdHJ1bmsKKzIwODkyIDVhYmMyMzI5OTIyZmVkNmEzMjYwZGU4MTZlZjAzYzFiN2IzMTA1NDEgbGVnYWN5LXRydW5rCisyMDg5MyBhODk1ZDdkNzM5YWQ0MTZiNzRlMmY4ZDU2ZGVhNTM2NWQ2NDhkMWVhIGxlZ2FjeS10cnVuaworMjA4OTQgNDc0ZTNkZTAwYjA1MGVjYmJiMDUxMmUzNGQ3ODBiODg5Nzk1OThlMyBsZWdhY3ktdHJ1bmsKKzIwODk1IDI5N2EyNjZhYzRlZTE3MmJkZDVmZjJlYWVmZjA0OTNkOTgwNjk3NWEgbGVnYWN5LXRydW5rCisyMDg5NiBkZWEwYmFkZTY1NmQ0OTE1MTBmMDhhYmViNGZlZmE2YWJiOWZmMmE1IGxlZ2FjeS10cnVuaworMjA4OTcgNjk0YzlmMGNkODE0Mjk3OTM0OGQ2YjM0MTJjZWU1MzkwYjJhYmJhMSBsZWdhY3ktdHJ1bmsKKzIwODk4IDgzMWMyN2Y4NzZhYzlkYmNkOWI3N2FiNzY2MzAwYWZiNjRhMGJlMzUgbGVnYWN5LXRydW5rCisyMDg5OSBiYmY3MDIwNDllYzZiMWJmMWY5YjM2MGQwMmY5NjE5MzdkYmZiODY3IGxlZ2FjeS10cnVuaworMjA5MDAgZTRlODUzZDU1Njc1YTI5NmJlM2U2YjdiZWVkZGFjZGEwMjJiOTNmMyBsZWdhY3ktdHJ1bmsKKzIwOTAxIGVhMGNhZDkyY2ZkMjdiN2Y2ZGNjYTczZTAyZWQ0NDUzNjE3NTY3YTggbGVnYWN5LXRydW5rCisyMDkwMiBjZTdmMGUzODA4MzA0ODdiZDkzZDhlMGYxZDY3ZjgwZDRhNDUyNGJkIGxlZ2FjeS10cnVuaworMjA5MDMgNTYyMTc2MTkxZTYwNDk4NzU5ZGI2YTAwYjJiYzc4ZjI1MmQwZjU3YSBsZWdhY3ktdHJ1bmsKKzIwOTA0IGUxNGI0MWZkMmFiMjUxNTIxODg2NzIzNGYyNzE4MTc0NTRiMGE0NzUgbGVnYWN5LXRydW5rCisyMDkwNSBjZmUwODFjOTU1M2VjNzg0NzZmZDc1NGFjODkzYmMxNzFiMzY3N2MwIGxlZ2FjeS10cnVuaworMjA5MDYgM2U2OWQ3ZGI1ZjhkNTBmYjU1MzllNDdmODk3YTg0ZTM1MjQyMTVhNiBsZWdhY3ktdHJ1bmsKKzIwOTA3IGE0MjkxMGI1NDQyYThmZDc3NGFmNmU0M2RjNzU3MmQzMGUzYmU3MWUgbGVnYWN5LXRydW5rCisyMDkwOCAyMmI1MTUyZDIzZmMyYmVlMDgwZmYyNjkxMzZhZDIzODBiMzczNDI4IHJlbGVhc2UyMS1tYWludAorMjA5MDkgMjIzNDQxNTQwNDQzMTY2NzhiNzc3YTFjOGI2ODNjNWQ5YjliMTQ3YiByZWxlYXNlMjEtbWFpbnQKKzIwOTEwIGI4NmVlZWRkYWUyMTM0NmU0YmNmZDJmNmUwNmQ0NGUyNzNhZjI0MzcgcmVsZWFzZTIxLW1haW50CisyMDkxMSBkYjQzYmUxOWQzZTMzYjAwMDE1OTE3MTQzNTg4YjEzYmQ2OTZkZWJkIHJlbGVhc2UyMS1tYWludAorMjA5MTIgMDk2MDcyZDg4Nzk4NjhhY2IwZGMyYmQ4ZmJhMjRkZjVjZjk5MjQwOSByZWxlYXNlMjEtbWFpbnQKKzIwOTEzIGQwNzk4YjNhMzhjMTU2ZWYxN2IyODg0ZTM3OGI0NTVmYjk3YjNmNjUgcmVsZWFzZTIxLW1haW50CisyMDkxNCAyZWRhYThlOWYzODE1MTVjYjBhNzg3ZTczZDllZmRjODJiOGIxOWQ4IHJlbGVhc2UyMS1tYWludAorMjA5MTUgMDcxMWYzY2Q0NGQwNzcwNzAzOTQzZjY2ZmQ1ZDQ4OWUyZjQ4OGUzZCByZWxlYXNlMjEtbWFpbnQKKzIwOTE2IGUxODE2ZjY0OWZmOGUxMjM2NDk4MTE3MjdmZDZiZmE5M2VjMTE0NjUgcmVsZWFzZTIxLW1haW50CisyMDkxNyA1ZDg5NGE1ZmNlMzhjMmM5NWRlMDA2NzY3NjVjMzhhMjY2ZTVkMDY1IHJlbGVhc2UyMS1tYWludAorMjA5MTggYjM4ZmQyYmQ2OGMwYTE5ZTQ1MjQwN2Y0ZTJmYjU2N2IwZWVhZDU2MSByZWxlYXNlMjEtbWFpbnQKKzIwOTE5IDE0NThiNTk2YTQzNGFjOGMzY2QwNDc5MDc2YTc0ZmQ3OWY1NDJhOTYgcmVsZWFzZTIxLW1haW50CisyMDkyMCA3OTNiNzU1NDNmMTNmNWI1YjNiODJmM2E1YjU1MTA4ZjJmOGE0ZWI1IGxlZ2FjeS10cnVuaworMjA5MjEgOGM0N2Q5ZGEzMGRlMjZkYzg4ODliYzliZDIyNTVjODM5MWExMTA4YSByZWxlYXNlMjEtbWFpbnQKKzIwOTIyIDlkZmQyMmU4ZTliNzZkZDE5NzEwMjg2NjgwNWQ4NmM5YjIyMzE1NzUgcmVsZWFzZTIxLW1haW50CisyMDkyMyBhNDI5ZGE3ZGI3MDY5NTQ2N2NkNjJjZTVmODZkYjdkZDFmOTIwYzFmIHJlbGVhc2UyMS1tYWludAorMjA5MjQgMjQ4NDE4Y2JkMDA1MjdkNDdlNTVmNTg3NmZiNDVkODMyNjBhOGYzNyByZWxlYXNlMjEtbWFpbnQKKzIwOTI1IDRlZDY1N2QzN2NlYTdiZDhjM2RhODBlNGRhMTJiNjdkYjVjYzg2ZGYgcmVsZWFzZTIxLW1haW50CisyMDkyNiA1Njk2ZGRkYTNlNDBmOTcxZmJhMTczZGEyNGY5NDQxMjljMmVkNTU4IHJlbGVhc2UyMS1tYWludAorMjA5MjcgZmM2OGY2ZWQ3MDE0MjA0NTVmNjdkMDhiNDg4ZWQ4OWI0ZjQ3MGIwOSByZWxlYXNlMjEtbWFpbnQKKzIwOTI4IDRhZDdhMmFiNDJiNDJlOGM1MGM5OGU5ZGE3MTUzNDA5MzQxNGIyYmUgcmVsZWFzZTIxLW1haW50CisyMDkyOSBlNWJhMGQyYjQ3ZTI5NDI1MmUxZWFiNGVmMzUxZWM1MmEzZTJlMjg4IHJlbGVhc2UyMS1tYWludAorMjA5MzAgMTAzMTExYWQ5OWYxZjBlMmViYTUwNDMxNjM2OWRkZWNkYmUwMjE1NyBsZWdhY3ktdHJ1bmsKKzIwOTMxIGFmNDg5NTg3NTA5ZGNkZGU2M2MwOTJlODAzZGNjYWRlYzlhMWY4YzkgbGVnYWN5LXRydW5rCisyMDkzMiBkODZiMjQ1ZTA4NTgwMWMyNGM3MjQxNDM4ZDI4ZGU1Yjk1ZDNjNjhhIGxlZ2FjeS10cnVuaworMjA5MzMgOTViYWEzMzNlZTQzY2I4MDE3ODc1YWRhZjI4ODdjOGZkZDU5N2YyMiBsZWdhY3ktdHJ1bmsKKzIwOTM0IDVlMTE0MTE1N2Q1M2ZkOTVlNzY4Y2EwY2VjMDY3NGYyNmViOWI3MGMgbGVnYWN5LXRydW5rCisyMDkzNSA3OGY2NzA3MWM5NDllYjJjOTJjM2ZlZTlkZDJhMzc3MGNkOWY0YmM4IGxlZ2FjeS10cnVuaworMjA5MzYgMTc4YmVkZjk1MzZkOGNlMWMwZmM2NjY2ZWUzMTA4NTVjNzA3MWUyYSBsZWdhY3ktdHJ1bmsKKzIwOTM3IDA1YWIwYTcxNGU0Y2FlYTk3NDBjZTI1ODljZDQ3NTkxMmVjM2EwMGEgbGVnYWN5LXRydW5rCisyMDkzOCBiMjAxOGU1ZDIxNDJiOTQxZDIxNzEyMDhkYjY4N2NhN2MxYjVmNGQyIHJlbGVhc2UyMS1tYWludAorMjA5MzkgZWQ4Yjc5YzZjYjRiMmNkYWFjNDNmNzZhYjk4ZDFhYThiOTJlNjVjZCBsZWdhY3ktdHJ1bmsKKzIwOTQwIGY5YTM0YWMxNGM4YmU5OTYyMjIyYjI0MWI3Njg3NDhlZDJjM2U2MTMgbGVnYWN5LXRydW5rCisyMDk0MSA3M2ZjYzRmNGExODIyOTBlZDE1MzA0YjlkODA4NTNhZmE5NjZhYjM2IGxlZ2FjeS10cnVuaworMjA5NDIgNDAxY2NmY2YyOGMzODg0MGVhN2U3NzJkZTIxMDBkYzg3MzM1MWI2OCBsZWdhY3ktdHJ1bmsKKzIwOTQzIDJmMmVlNWRhYTYwZGI2NTc5NzBjZjU2ZTc1ODE5ZGZlN2ZlMjk4ZjUgbGVnYWN5LXRydW5rCisyMDk0NCBiMGI0NmQ3NzM0ZTBlZDNlNDhjNGJmNTJhNGM0MjhjZWJkM2ViMjcxIHJlbGVhc2UyMS1tYWludAorMjA5NDUgNTI3ZDBmZmRmMDk5MDE2MTFiZjYzNjFjMzM4YmJmMmMzMzU2YjYyYyBsZWdhY3ktdHJ1bmsKKzIwOTQ2IGQ1NzlhNWQ4YjNmZWE4MWMxMTVjZmZjNjc0YTAwZTM4MDg0MDJjZjUgbGVnYWN5LXRydW5rCisyMDk0NyAyYTk0YmYyMzVkYWFjZmFlZjRlNzkzNzdlMDkxYjc4ZWYwZTdkNTM2IGxlZ2FjeS10cnVuaworMjA5NDggNWU4N2EwOGFiYjA1N2ExNWNhOTJjZDJhYzliYjBhYTA1ZTMzMDU5MyBsZWdhY3ktdHJ1bmsKKzIwOTQ5IDE5MmQzNjg2OTQ0NTU4YTNmMzU5N2RjZjRkYjljNmIxM2MwZmE5MGIgbGVnYWN5LXRydW5rCisyMDk1MCBkYjEzZmI1Yzg1OGE1MTkzMTExNmIyNDRmZTY3YjNlOWY2MDAwNjRhIHJlbGVhc2UyMS1tYWludAorMjA5NTEgYTJiOTk2YzcxNmExYzUwNDQ1OTkxYmY1NGQxMGJhYWZiNDc3YTA0OCBsZWdhY3ktdHJ1bmsKKzIwOTUyIDYyZWVjMjkzNmNkM2Y5ZTFiNjAwNTg1ZmE5MWEzNWZjNmIwZjI5NzUgbGVnYWN5LXRydW5rCisyMDk1MyA5NTI2ZjBlZDA2NmEwNDdlNGM0ZThmZDA1NGRlZDVlOTc3MjI0ODkzIGxlZ2FjeS10cnVuaworMjA5NTQgNDdjN2MxZWI5NTc0ZDE5OWNlNTRlNWUzMjJiNDNiNDY5ODc5NjkyOSBsZWdhY3ktdHJ1bmsKKzIwOTU1IDcwNmJiNmM5NDVkZmY1ODMzN2E3ZjkzNGY0NjY1MDM2YjI0MGJhNDIgcmVsZWFzZTIxLW1haW50CisyMDk1NiA4NTg1MDQxYmE1N2IxYmVjZTFkZjdkMzk0NGQ2MDdlYmJmNDBlYjM3IGxlZ2FjeS10cnVuaworMjA5NTcgYWUwOGEwMWYyZjJkZDJmNTg3ZmE2OTdkY2M1YzMwMDcyY2MyM2QwNSByZWxlYXNlMjEtbWFpbnQKKzIwOTU4IGU4MTljYzBhOWVmNmRjMGJlZGYxOWY1M2JlNDUzOTVlM2YzMzk5ZjQgbGVnYWN5LXRydW5rCisyMDk1OSA4MzYxNGQwZTAwZjE1ZTc0NWYwZTI0Yzk5OGFlMmE5MjQ2NzM3NDE1IHJlbGVhc2UyMS1tYWludAorMjA5NjAgY2RmODhiYTJkOTY4YjkzYjBiYWM1ZTQzODA5Y2Y4NGIxOTU0MWI3NyBsZWdhY3ktdHJ1bmsKKzIwOTYxIDA3NjllMTFkOWQ1ZjQ4ZjNlMzYxYTU0YTk1NjNlMTBlYjcwNDM3MzYgbGVnYWN5LXRydW5rCisyMDk2MiA5ZWUyMTgyNDgxYWY5YTE0NzNhNmFiNzBiODJkOWJlNTQxOTc2Y2VmIGxlZ2FjeS10cnVuaworMjA5NjMgNDQ3ZWE2NTE4MWMyODVjMDY3NDc5ODJiYTQ3ZDdlZDE3YzEwZThhZSBsZWdhY3ktdHJ1bmsKKzIwOTY0IDI5OGZiMjlkYWE4MWMyNzM0MzYyYzY3YWZlMDhlZjViZTc1NGE2YTAgbGVnYWN5LXRydW5rCisyMDk2NSA4Mzc4MjVhNzc5YzE2ZWEzMjFjNTMyNjYxODRiMjA0M2ZmMDZjOTYxIGxlZ2FjeS10cnVuaworMjA5NjYgNWE5ZGViYjE0NDQwZTI1MmUzMzU1ZjMzYmE0OTViYzE0Yjk2YjliNCBsZWdhY3ktdHJ1bmsKKzIwOTY3IDI3ZjI0MjJlYTMzNTc4MGE3NzBmZTE0NzI4NmY2YmMyNjk0YWM4YWUgbGVnYWN5LXRydW5rCisyMDk2OCBjOGNiNzk3NzIzNjRlNDg2MGFiMWNhZjQwYzMyYjg4YmIzZDE4NjRmIGxlZ2FjeS10cnVuaworMjA5NjkgZmY2NDRlNjA4NTI4Y2Y2YzQ3NWNhMDNjOTVhZTcyMThjNDM3YjFjNSByZWxlYXNlMjEtbWFpbnQKKzIwOTcwIGVjOTM0M2FkMWU2MDlhN2M1YmE1ZGU4NGMyZjQzYWQzMzI0ZDY2MTUgbGVnYWN5LXRydW5rCisyMDk3MSA5NzgwNmE1OTljN2ViNWE2OTc2N2NjM2IzODkxNTBiMTMwZDA3ZGViIHJlbGVhc2UyMS1tYWludAorMjA5NzIgNDViYWRmYmZiMDBlZjYxMzZmMDU3M2YxZTYxMTZhZmFjYjA3ZDI1OSBsZWdhY3ktdHJ1bmsKKzIwOTczIDI3ZWRlOGIwOTVkNmRmMWQxNGUxOWRhMmFkYTU1Y2Q0NzNlOWU5ZDkgbGVnYWN5LXRydW5rCisyMDk3NCA2NGUxZWEzNGI1NTMwMGQzZjJlNTU5NGY3NGUwY2IzZWUxOWQ4NWYzIGxlZ2FjeS10cnVuaworMjA5NzUgYmFmMjEzN2U5Njc2Y2I0NDZjOWY3ZDRiZDFhOTMyZTI0YWEwZTZlMSBsZWdhY3ktdHJ1bmsKKzIwOTc2IGU2MGZjMDE3NjJhMGY5MDE3NzQ2NjQ0ODc0M2NhZmVhNzg2ZmYyNjYgbGVnYWN5LXRydW5rCisyMDk3NyA2YTJlMjU0OGU2Y2YzOWExZDlmMWQzNTc0YjFlYWJlMmNjMDliOTRkIGxlZ2FjeS10cnVuaworMjA5NzggYTQzMDE0MzFiMmFjOGU3NWVmYzM4YzkyNjlkNzRjZjU2OTgxYzk2YSByZWxlYXNlMjEtbWFpbnQKKzIwOTc5IDUwZTMzODBiMDg2YTFkNDc2MjFlM2Y5ODg1ZjFlYzY2MWFjZWZhNmQgbGVnYWN5LXRydW5rCisyMDk4MCA1M2IwZjY1YTBhMDVkNzVkZjEzYWRlNDVmMzI2MmVlN2FiM2NhZmUzIHJlbGVhc2UyMS1tYWludAorMjA5ODEgMTgwNzEwOTExZjE1ZDdkYzY3ZDRhNDA4Njc5NmRlNmRkNjg5NDMzZSByZWxlYXNlMjEtbWFpbnQKKzIwOTgyIDU4Mjg0NWUxNGU1Y2MxNWNjMDhjZDE4ODdmMmI3MDJkODJmNDY4NmQgbGVnYWN5LXRydW5rCisyMDk4MyA5OWFlYTZmNWNlYmQyOGVmNTE5YzgxMGFmMmRlNjQ2ZDIzZjJlMzUyIGxlZ2FjeS10cnVuaworMjA5ODQgOWY5NzE2N2YxNjQzMDE2NzNjZWVjYjk2YTdlZmE3NDQwMTEwNzNjZiBsZWdhY3ktdHJ1bmsKKzIwOTg1IDBjMWEwNGU5ODEzNDJmZDViOTRkMWNhM2FjOGU1ODY4NmY4NWY0N2UgbGVnYWN5LXRydW5rCisyMDk4NiAwZDZmNzYwYjZlZjFhNjQ0MzZiMThmYTcxMTc3ODkxNTBlODliYzJkIGxlZ2FjeS10cnVuaworMjA5ODcgZmFjZmY1ZjUwZmNjYWYyOGU5ZGQ5MDA2YTRhZjU2NGJlY2I1ZjdkNyBsZWdhY3ktdHJ1bmsKKzIwOTg4IDAzOGUyZjc0ODAwZDk3ODMwMWVlNDBjZDgxZGI1MTJiZDM5NDJhZjMgbGVnYWN5LXRydW5rCisyMDk4OSBjYTdlMmUxYWU4ZGY5NmU1ODY2OTAyZDQyZjYzNzMyMjJlOGI3NGNjIGxlZ2FjeS10cnVuaworMjA5OTAgZTg2ZDMzMDgxYmJhOTRiZTlkNzg2ZTY2ODVmOTNmOWI1NWM3NGRkZiBsZWdhY3ktdHJ1bmsKKzIwOTkxIGM5ODdkY2Q4ODJiOWM3MzE4ZDg1MWY3NmRkZGEwMGMxYjgwYjc0NjMgcmVsZWFzZTIxLW1haW50CisyMDk5MiBiZDFjNGZlOTc3Y2JkYzc1NzMyZjVmMDFjYmQxYTJmY2FjYTFmNjg5IGxlZ2FjeS10cnVuaworMjA5OTMgOGQyYmJiYmYyY2I5ZmRjMmZhODdiYTNiODNiZGZkYmMzMzIwYzQ5NyBsZWdhY3ktdHJ1bmsKKzIwOTk0IDE5YjUwNGZiOWQxNTZlN2IxN2Y5ODkyMjFkMTVkNmNhODNlMGZiNDggbGVnYWN5LXRydW5rCisyMDk5NSA1MTE1ODdhYjJkZDJlNmYyODJkNmZhZGU4MDkyZTA4OGUzYjI1Y2Q5IGxlZ2FjeS10cnVuaworMjA5OTYgMDI0MjY3NDQxNzYxZTk0NGJmYWFmM2RjYWM4M2Q2MzE1NWRhNjI1MyBsZWdhY3ktdHJ1bmsKKzIwOTk3IDUzOTFiOWQwMjJhYzEyNzU3MTUxZjc4N2IzNDFmY2I0MGJiMGNhODYgbGVnYWN5LXRydW5rCisyMDk5OCBlZTVmMDE2NWU0ZTNlYjFkYjBkMDk0NGNjYmZmYjVhNmZkYTQ5ODFmIHJlbGVhc2UyMS1tYWludAorMjA5OTkgNGQ2MmEyZmVjOTMwYTJhODg0MDE3N2Q3Y2Q1ZDVmNzU0MTMyMzUwNSBsZWdhY3ktdHJ1bmsKKzIxMDAwIDZhZTYxMjI5MTJkMmVkYjlkNDI1MTBiOGY2OGZlZTMwZjhkYTNkZDkgcmVsZWFzZTIwLW1haW50CisyMTAwMSA5ZWJlODVlNzE1NTA0MTA0YzAwYmNkYjNkZjZlNjlhMWQ2ZmNjZDAxIHJlbGVhc2UyMC1tYWludAorMjEwMDIgYjk5OTc5ZDBmOWU3YzA4MDRkYjQ5Yjc1YzFhNjk2NDUyNTRmNjkxMiBsZWdhY3ktdHJ1bmsKKzIxMDAzIGJkOTdhNGZkYjZmM2M1ZjgyNmQ2NjZlZGNiZGI3NDM1NzM0OTQwNDMgbGVnYWN5LXRydW5rCisyMTAwNCBjMDAzNzMxNzdiYmI2ZDZhODY4YTQ2YWIzNzhjMDI3ZTJiOGM4Y2I5IGxlZ2FjeS10cnVuaworMjEwMDUgZmEyMjU1ZDMxNTAwZTkyZDQ0NzYyZDM2ODAxY2UyOWZjNDhlN2ZmMSByZWxlYXNlMjEtbWFpbnQKKzIxMDA2IGEwMjA4NTg3MWMzZmU0ZmM2NjVhM2QxMTY2NjFlZmE1Y2U0NjE4NmEgbGVnYWN5LXRydW5rCisyMTAwNyBkZjFjNTNhODE1MDI5MTI2NWQ2NzljZDQzZWM1NzNhMTUyNDk2NjBjIGxlZ2FjeS10cnVuaworMjEwMDggYTZmOGIyZmEyZTIwMTgzZTUxMTE5NDJmZWE3YzY3NmJiMjdhMjlmOCBsZWdhY3ktdHJ1bmsKKzIxMDA5IDkxNjE5ZDdkZjU4YjliMDdhZTk0ODFkYmNkZWViMTE1MTJjN2E1YzggbGVnYWN5LXRydW5rCisyMTAxMCA2ZmRjZTc2ZDQwNjY1ZTBkZDYyMzI1MmMwZDI3MDQzM2E3NTc2ZDI1IGRlc2NyLWJyYW5jaAorMjEwMTEgYmYxNmMzY2E1ODBlYzY0Nzc0YmU5ZmZhY2Y0OWYyYmU1OTA4ZWU3YyBkZXNjci1icmFuY2gKKzIxMDEyIDczYTFlOWY3YzgzZjIxNjYxOTYzZTQwM2JjNTRmYTE5ZDI5MTJhY2YgZGVzY3ItYnJhbmNoCisyMTAxMyA4YzQ1YTY0ZWU4MzFiNzg5MmJmYjdiOTA2OTM2MzZlMDAwZjFkMzM2IGRlc2NyLWJyYW5jaAorMjEwMTQgZTkxOTQ3MzE3NmM4MjM0ZGNiNTgxODUyMzUxM2UzNTIxMDY5MTdmMCBkZXNjci1icmFuY2gKKzIxMDE1IGVkNDI1MmJmMDgwYzk3ZTFkODY3OTBlNTAzYzY3MGQwMjcxYjUzZmEgZGVzY3ItYnJhbmNoCisyMTAxNiA0OWYwZmY2ZWI0ZWIxMzVkYzJhNWVjNTQyNmEyMzgyZWVjM2QyODU1IGRlc2NyLWJyYW5jaAorMjEwMTcgYzA3NDMwMjViMjNkYjM4ZjFmMzAzODJkOTkyODU0MTYwY2NlMjhkYSBkZXNjci1icmFuY2gKKzIxMDE4IDU0NjZjY2JiMmY5NzQ5OGViYmIwZjc1OGZhMmRiYzRjMDg1MDMyNmMgZGVzY3ItYnJhbmNoCisyMTAxOSA1YjUwNTZjZjE0ODhjNzVjYzRjM2EzZDhmMzYxOWIwMjQ0NDVmMjY1IGRlc2NyLWJyYW5jaAorMjEwMjAgZmI5M2RmYmQ4MDUyMzU3ZThkODU4NGVmZjg5N2JjZGZlZmYwOWYzZiBsZWdhY3ktdHJ1bmsKKzIxMDIxIGMyZDQ5YTczMjE2NmRiYjFkOTJlOTFkYWI4MmZiZGJlM2I1NTM3ODEgbGVnYWN5LXRydW5rCisyMTAyMiA5NTdmOTQyODY2MGYyMjk2NGQ1MmZhYzE2MGYwYzdhZDAzMjAyY2UxIGxlZ2FjeS10cnVuaworMjEwMjMgM2NiYjg1NzI2ZjZlZDIxNDI2M2Q5ZjNjOGUxMTE1ZDBjMWRiNjhjZSBkZXNjci1icmFuY2gKKzIxMDI0IGUwZjBmN2JjNWRhNzY5NGJhYzcwNWFiMmFlOWJhMGJmOWRlYTgyNDUgZGVzY3ItYnJhbmNoCisyMTAyNSAzYWI2YzQzNGE5Yzg3NTNjMjRhYmZlNTJmZDFlNzAwZjI5MTlkMjlhIGRlc2NyLWJyYW5jaAorMjEwMjYgNjUzMjIxMDM5NTVhMDRkMDkwZjA4N2U5MDE3ZDhlOGNmY2QwMjEwMyBkZXNjci1icmFuY2gKKzIxMDI3IDBkNDZiN2M3MTA1ZTJlM2VlMTE0YmZlMmU5ZjJlMWM2NTE0OGExMDggZGVzY3ItYnJhbmNoCisyMTAyOCBhNzgyNjg0MjQ4NjhhMTkxYWJiNGFiNGMzMGM1M2NkY2Y1NWRkMmFkIGRlc2NyLWJyYW5jaAorMjEwMjkgMGU1MThhNTNlYzViZWFkOWFkYmZjYjhkOTFiODY5NTJjNGZjNGZkOSBsZWdhY3ktdHJ1bmsKKzIxMDMwIGRjYjFjM2JkOGUwZTg5NzY2ZGZlY2U0NzMxOGVkODk5OGFmNjk3NmYgbGVnYWN5LXRydW5rCisyMTAzMSA5NmQxMTIxNTAxM2FiMjMzMGU5OWVkY2MwZmNlOWNmODIzZjNhMDA0IHJlbGVhc2UyMS1tYWludAorMjEwMzIgOTYzMzBjY2M4NzBhOTQ0NDEzMDE0NDI3M2QwZDJhYTczNDk5MmMxNSByZWxlYXNlMjEtbWFpbnQKKzIxMDMzIGVhODMwOGZkMDZmMjNkOWEzOTg4NTRjZTNjY2QwZGFiNDZlMzdiYTggZGVzY3ItYnJhbmNoCisyMTAzNCA4NTkzYjdlMGI2NDU0MTYzZmUzMDgyYzQzNmQ4Yzk4NDNkNTcyZTk0IGRlc2NyLWJyYW5jaAorMjEwMzUgNjU2OWM4NDk5YjE3MGZhN2I1MWQwYjY2NjVkZjE5YzcyYTBiYmJkMiBkZXNjci1icmFuY2gKKzIxMDM2IGU3OWJiNWI4YTVkMGU5YWE1MjRmZDExYTYyMWI3ZTc0ZjBjMjY2NDQgbGVnYWN5LXRydW5rCisyMTAzNyAxYjkyNzAxYTBlZDJkZDVmYjQ3MjNmYTljMjgzYzQxOTMyZWY3YThjIGRlc2NyLWJyYW5jaAorMjEwMzggYjczYzI4MTdjYzFhYzAyMWNjNzIwZjZmODQ5MmJhODJkYTMwZjQ5NyBkZXNjci1icmFuY2gKKzIxMDM5IDE0ZGM3NWE1NjAwYWM1YWJhMjhiZTY2MDFkMWQ4ZGJiM2E3YjNjNjAgbGVnYWN5LXRydW5rCisyMTA0MCA4MWE4ZDE4MzBiNjNhYmM5ODFkYmQyNjNjYzZjOTE5OTE0YzhkMzkxIGxlZ2FjeS10cnVuaworMjEwNDEgNjVhMmUzZThiZjU2ZDEwOTdmNDMwNWU2ODJjMGU4YmU1NzkyYjNhNyBsZWdhY3ktdHJ1bmsKKzIxMDQyIDU4NmZkNzllZjRkOTdjOGQ3NDkxN2QyY2I0ZjBkMTZjODZkZDhiMDIgZGVzY3ItYnJhbmNoCisyMTA0MyAxM2E4ZGNhNGIwNDBhZjg4MDlkYjA4ZjY1NDE2MmQ1OGExMGE3MTcxIGRlc2NyLWJyYW5jaAorMjEwNDQgYjBmYzgzNmYyY2VhZDBiMjBhODBkZDhkZDJmZTcyODAzZGZmMGVhYyBkZXNjci1icmFuY2gKKzIxMDQ1IGU4OTc1NTBiNDc0ODQwZjc2MTZiNTAzZTFhZmIxMWEyZjQzMTQxYzcgbGVnYWN5LXRydW5rCisyMTA0NiBmODQ3NWZhNmJhMzZkYTVjNWJhOGVlODE3MGIzN2RlNTVlY2E0N2EyIGRlc2NyLWJyYW5jaAorMjEwNDcgYzQwMTZhYmQ2YjdmM2VhMWRkNTA1ZDU2Zjg3MTljOTcxZjk2MjE0MSBsZWdhY3ktdHJ1bmsKKzIxMDQ4IGEzYzMyOWY2OWUzYTYwYmU0M2E2MmE4MzAwMTE2Y2FmOTg0ODRmNmUgZGVzY3ItYnJhbmNoCisyMTA0OSAyYjAxN2IyYzhmN2NiNTJmYTZhODU0NjhhNDBlZjg1MmI2NjYyOWI0IGxlZ2FjeS10cnVuaworMjEwNTAgZTY2Y2Y5ZDZhZDQzZWQwNTVmYzkzMTY3MDdkZjU1ZmJmYjI4NzZiNSBsZWdhY3ktdHJ1bmsKKzIxMDUxIDlhMjY4MzJkYTBmOWU2NTc3NTk4NzIzZmNjMmUyODRhNDE4ODhhOGUgZGVzY3ItYnJhbmNoCisyMTA1MiBhMWYzNTc2OTYyNjRiM2NiZWZhZjg1M2E0N2Q2NTM4NzFlYjA3Y2E0IGRlc2NyLWJyYW5jaAorMjEwNTMgOGNhZjIxOTcxZjM3ODc5ZWNlMjhmNTA4NzI2YWJiMDY3NDFkZGQ2NCBkZXNjci1icmFuY2gKKzIxMDU0IDdkZTdkMDY5NGJhODdhNGZmYjRjMzNlNGI1MmY0ZjYwZGI1NWUyNjggbGVnYWN5LXRydW5rCisyMTA1NSBhMjMyYTZjM2ZjOGM3ZGZhODNlMTJmNjczOTNhZDBiOGVhZjI3YmMzIGxlZ2FjeS10cnVuaworMjEwNTYgMTVmNDM4MWNmZjBmMGM2OGJmNGUzN2I0NDBhMGFjZTUwOWVjYmUwMCBsZWdhY3ktdHJ1bmsKKzIxMDU3IGQ5M2I0OTI5OGFmZDZmMTIxZjkyYTljN2U3ZGFjYmUyMjczMjFhZmMgbGVnYWN5LXRydW5rCisyMTA1OCAyZWMwOGQ2YzdkMTIwNDY5NTQ3YTEwODc3ODJiNTEwODYyZTIxOGRjIGxlZ2FjeS10cnVuaworMjEwNTkgOTk5YjEzZGUzOWE0MmRjNzdiNzg0OTUzYzY5NTE5ZDI2NDk0ZjA1ZCBsZWdhY3ktdHJ1bmsKKzIxMDYwIDFjMTgzYWU1YzkzNDkyYmM4ZjJhM2RlZWZmMWVmZTFjZDU2OWU3OTMgbGVnYWN5LXRydW5rCisyMTA2MSA1YTZiODNmNDE1MjdiNzgwYjA2ZjQyOGM3ZTY5MWFkMDk0OTliZjg2IGxlZ2FjeS10cnVuaworMjEwNjIgYmJhYzJhNmE1ZDE2ZmMyNzJiMWE3Y2E2MDdhZDA2NzM3ZjFhMWU5MyBsZWdhY3ktdHJ1bmsKKzIxMDYzIGFjNTQ4OWEyNTQ4ZGU0NjM1N2IwZmQ3NzUxZjA5YzExMmU3YTkxOGEgbGVnYWN5LXRydW5rCisyMTA2NCA4ODlkYjZkNTU1MDYwMWM1MzJiM2VhYjQwYzc0YTMyYTEyNjE4ZDAzIGxlZ2FjeS10cnVuaworMjEwNjUgYmRlMWNmNTc0MGVjNjlmOGI3NDY4Y2RlY2FmMGQyNTAwMTlkNWYxOCBsZWdhY3ktdHJ1bmsKKzIxMDY2IDEwOTkyMTk4YzlkNjdhYTVkZWQyNDY3OWUxMGUzMWY4ZTNkZDViMTQgbGVnYWN5LXRydW5rCisyMTA2NyA2MjQ3MjY1NjgwN2VhOThlNGU2YTBhODc1MzY2ODBjM2U4NWQ5NTg4IGxlZ2FjeS10cnVuaworMjEwNjggOGUxODc3NDBhYTk2YTY4MzEzY2U1YzVhM2MzMzA4OGRmOGQ2NWY3YyBsZWdhY3ktdHJ1bmsKKzIxMDY5IGY5MDFhN2RjNWZiNGNiOGYxNjdlMTc2YjBiMjExZjFhMTdkMDZmZjUgbGVnYWN5LXRydW5rCisyMTA3MCAxZjgzZTQxNTVmY2QxNzJiNDczOTc4MTk0NDQ5YWIyYTU1ODZiMGMxIGxlZ2FjeS10cnVuaworMjEwNzEgN2RlNWQzNzg1NzhjZGUxZDAwNzZiMGEwZWJjNzJiY2QyZTE5NGQzNCByZWxlYXNlMjEtbWFpbnQKKzIxMDcyIGU4NDk0ODg2NzRkYTI2NjE4ZDU0YTdhMmM0ODEyZmVlNzcwYTQyOGEgcmVsZWFzZTIxLW1haW50CisyMTA3MyA0MTBiYmY1ZDk4Zjk3YWEyMzU4MWY4MDI1M2UxM2I5YThmOGYwMWJkIGxlZ2FjeS10cnVuaworMjEwNzQgNzJiMTU3MzFhODc2OWEzZGU0NmU5ZGY3MDdlOWZlODU5MDkzYjM3NiByZWxlYXNlMjEtbWFpbnQKKzIxMDc1IDkwMTkzNzUwY2M4Mzc2YmYzYzgwMWQ1OTBhZmU1ZTkwZmZiMjA2NmUgbGVnYWN5LXRydW5rCisyMTA3NiBmM2JhYjkyOWQ3MGVlMDc3MGY1ZDY4ZmM0N2QzYTJiNmE0NjNkYWZiIGRlc2NyLWJyYW5jaAorMjEwNzcgNjIyODY3ZTRkODMyZmIwM2ExYTFkMjQwNDgxYzZmMmYyNGM1YmEzOSBsZWdhY3ktdHJ1bmsKKzIxMDc4IGFkZDA5NTYzOTg1MzBkZTQ5ZTM1NjU3Mzg5ODc2YzY1OWY5ZTEwMDAgbGVnYWN5LXRydW5rCisyMTA3OSBiYzA1YjBiNWUwNTc4MTMyZGFiNjUyNzRiOGJjOGFkOTE5OGU2YjU5IGxlZ2FjeS10cnVuaworMjEwODAgZmYyZDdjMTgzNzE1MmI2OWUxOTY4MmUwYmQzMzZlMWI1NWZjNTk0MyBsZWdhY3ktdHJ1bmsKKzIxMDgxIDRjY2JiOGU1ZmIyNGNiYzczOTVmZmUxODk0YWFkMjI3MmFjYTJlYjIgcmVsZWFzZTIxLW1haW50CisyMTA4MiBiOGZiZmE1NjljMzQ4MDNiNmM1MGUxMjU3NzYwNTE0MzQ3ZGE2MjdhIGRlc2NyLWJyYW5jaAorMjEwODMgNmI2ZTBiMGRiNGY3NTUxMWM3ZjZmMWVmZTBiNjIxYzY2MGY2ZTllZCBkZXNjci1icmFuY2gKKzIxMDg0IGM5MGJkZThiNjdiOGRjODc1N2JiOTY3ZjRmYmRmZGMwOWJjOGJmNTkgZGVzY3ItYnJhbmNoCisyMTA4NSBkYWJlNzEwMGIyMWYzMDdkOWMxNzBlNzQxZjQ4YTUxYmU0ZjQzM2NmIGRlc2NyLWJyYW5jaAorMjEwODYgNGNjMmFmOGEyZjRlNjYzMGQxZGFkNjVjMDkyZWFhMDk0NTBiNDY3MSBkZXNjci1icmFuY2gKKzIxMDg3IDZmZTU2YTliMzAyMThmOTIwNGQ5NDhjZWQyNTlkNTdjZjJkOTJkYmUgZGVzY3ItYnJhbmNoCisyMTA4OCBkZDA5ZjExZmE0MGRjOTVkZjg1ZjBiNjliMDE5N2ExYzdlMjVmZGQxIGxlZ2FjeS10cnVuaworMjEwODkgNWZjNmQwMjdlODYxMThlZWM3MTFkY2U5Y2FhMzc0NWY3Y2Q1ZjBlMCBsZWdhY3ktdHJ1bmsKKzIxMDkwIGJiY2RiZDhmNDQ2OTk1MWFjMDVlMDA5MmE5MzkyZjU4N2I2OWEwOGYgbGVnYWN5LXRydW5rCisyMTA5MSA3ZTQ1OWZiM2MzMzI5YmUyZWVlYjkzMTNjOTM3ZDQyNzdiYTllODYxIGxlZ2FjeS10cnVuaworMjEwOTIgNTkyMTA5ZjJhNmZkNjk2MDY5ZmVkNjNkMmNkMGM3ZjhjZTVkYmU1NyBsZWdhY3ktdHJ1bmsKKzIxMDkzIDYyNTQ3MzdjYjYyOTY4MDEzMzk5NjVkMzRiYTI4ODA3N2FkMjg5ZmYgbGVnYWN5LXRydW5rCisyMTA5NCA4NmNjZjkzY2M5NTIyODIyZDQ0MWU3ZDdmOTg0MjI2NmUxOTZkNmEzIGxlZ2FjeS10cnVuaworMjEwOTUgMThhMWUwOTM5N2RhYzk1YzZlZmU4YzczNTQ3ODUzMTU3ZWYyMjM4YiByZWxlYXNlMjEtbWFpbnQKKzIxMDk2IDQxMDE2Njc1MDAyZmU0ZDk5ZjI0MGQ5MzhhNjc5MjcxMWFiMjA0MzMgbGVnYWN5LXRydW5rCisyMTA5NyBhMDAxZmNiNzYxNzc5ZGU0NTljZGE4MjM2ZmQ1N2NmYzFmMWE5NzcxIGxlZ2FjeS10cnVuaworMjEwOTggYmQwMDU2ZWUxYTZlNDkwNWYzOTJkMzNjZmEwZWVmMmZiOTAyYWQ0NCBsZWdhY3ktdHJ1bmsKKzIxMDk5IDZlYTM2NmEyYjJhNjM0ZjRjMTUxNjk1NmUxYzJkYTRhYTIwNGQzMGQgbGVnYWN5LXRydW5rCisyMTEwMCAyMzY3YjdhMDAxYTdlN2U2OWE5ZjRhZjY4N2NkODQwOGVkMmQ3ZTM4IGxlZ2FjeS10cnVuaworMjExMDEgN2E5YTY5MjcyOWI0MDM5Y2Y3NDAzMWZlMTZiM2FkOWY2NjI5NGUxNSBsZWdhY3ktdHJ1bmsKKzIxMTAyIGMyZmNhNzdiYmYzYWI4ZDZmYzI3YjFkMmVkZTkzNTNiYjE0MzdmMjQgbGVnYWN5LXRydW5rCisyMTEwMyBkZTdmOWFhMGE2M2E1MjNiZjI3MTY0Yjg0M2E1NThlZmU1MTc2MGJmIHJlbGVhc2UyMC1tYWludAorMjExMDQgZjc0ZTkyYzhlYWMxYTY5ZTk4ZjE3MWU4MjhiNzJiNDMwNzY4ZDA5ZiByZWxlYXNlMjAtbWFpbnQKKzIxMTA1IDAzNzM4NmEyYjI0N2NiZTkzMjBmMDM4N2M2ZGQ4MmM2MjEyOTc5YjEgcmVsZWFzZTIwLW1haW50CisyMTEwNiAxNDIxMjllOWE5ODU2NDkwNjA3NmQ1MDgyYTQzMGNjMWNhYmNkZmIxIHJlbGVhc2UyMC1tYWludAorMjExMDcgOWRkYTBjMTFlMDA2OTlhOTQ0MDI4ZmMxYzAxN2Y2ZGNjMjZlYTViMyBsZWdhY3ktdHJ1bmsKKzIxMTA4IGEzYzliNDE0MGNjNWVjNWJmZjdhM2IzZTFkMTRhN2ZjZDA4MDkwNDYgcmVsZWFzZTIwLW1haW50CisyMTEwOSAwMjI0ODczYzBhYzc0YjAxYjAxMzdkY2QxNTU4MTY0Zjg0ZTk2MWQ5IGxlZ2FjeS10cnVuaworMjExMTAgNWQ2ZmMxOGM0MDA5ODVkYWQ3NDkxNmJhZDQ5ODA2ODQzMjQ4NWQ3NyByZWxlYXNlMjAtbWFpbnQKKzIxMTExIDE1YzA0ZmUyNGQ4NTg2NjJkZjUzMmZlMjBjNTcyMWIzYTNiZjMyNDEgcmVsZWFzZTIwLW1haW50CisyMTExMSA4MzQ1OWNjMTkxYzFjOWM4Y2M2YjA4YWRhOTljMDJmMGFmNmFkNTRmIHJlbGVhc2UyMC1tYWludAorMjExMTMgYzU3OGI3NWFkNjJmZGVkNzBiNjRhYjczNTFmZDRhMjg4Njk1OTdkYSBsZWdhY3ktdHJ1bmsKKzIxMTE0IDhjZjcyYjE4N2IzYWI5ODY2ZThkODQxZGY5MmYxODRhNzYwZTUyODIgbGVnYWN5LXRydW5rCisyMTExNSBiZTJkZGIyNWI2OThiMzlhODc5YzQ2NDUxNjE2YWVjYTliYjJiMWZiIGxlZ2FjeS10cnVuaworMjExMTYgZTIxY2Q0MTM1ZjNkYjFhZjIzYjNlNWY3MTBiMDdkNjM4MDMzZGJhNCBsZWdhY3ktdHJ1bmsKKzIxMTE3IDA5OWFlNDkxODA2OWE1YmI5NTA4MzY0NDg3NjhjMWM1MGNiNGQyMjEgbGVnYWN5LXRydW5rCisyMTExOCA3ZjVkODA0NGY5OTRjMWY1MTQwNjk1M2Q1ODc5M2UyYzA3MTU5YWIyIGRlc2NyLWJyYW5jaAorMjExMTkgYjE0MGI3OGYxNzg1Y2JhODg0ZDViYTVjYjExZmM4ZTAzZTlkYzhiZSBkZXNjci1icmFuY2gKKzIxMTIwIGE2MjMxZjI0ZGJiNmUwYTQ3NGU0ODNmZWUxNWQwMDg1OTczODhiZDMgZGVzY3ItYnJhbmNoCisyMTEyMSA5ZWI0NjlhNDMxNDQxNzY4ZGU4MTExMjEwNWEzNmYxZjYxYmQyOGIzIGxlZ2FjeS10cnVuaworMjExMjIgZTY0YzcwMzFkOTRmY2I3MmE0NDUyYzMyMGMxYjkxYWU1Mjc2YjY4ZSBkZXNjci1icmFuY2gKKzIxMTIzIGE0NzYzYmZlZDlmMGU5MzA3NTUzYjhjMjVjYmVmNTMzZjlmOWEwZDcgbGVnYWN5LXRydW5rCisyMTEyNCAzMWNkMGRiMGYwOWZjZDk5NWQxOTg1ODE0OTA5MjFmOWM2NGIxYzViIGxlZ2FjeS10cnVuaworMjExMjUgMmVjYWY5ZTIxYTA0NmQ2ZmU5MTg0OWI4ZWNkNjUxYWI3YTBjMjllOSBsZWdhY3ktdHJ1bmsKKzIxMTI2IDc1MTdmY2EzMjI2MmNiYWZkMzg5YzljMDIyNDIyMjdmZTg1Yzg2ZTYgcmVsZWFzZTIwLW1haW50CisyMTEyNyA2OTkxMDE5NDk1OTk0NDg0MDEzOGZjMjBjYzk0OWVjNWM3N2U4YzUwIGxlZ2FjeS10cnVuaworMjExMjggYzA2MTZlMDk2NDMwZjIwZDcxMWM0NDlmNjM4NDM1ZDRlYWI0ZTYwNCByZWxlYXNlMjEtbWFpbnQKKzIxMTI5IGU0MDY4MTU3ODJhZmQ0NzFiOGE0YTc1ODg3YzQ0MTk4NjY4YmRlNDkgcmVsZWFzZTIwLW1haW50CisyMTEzMCA0MGQ3OTRiNTA0MWRmMDQxNDcwNTFhMTY3NGMyZjgxMWQ0ZDIyMjQ4IGRlc2NyLWJyYW5jaAorMjExMzEgMDI1MzA3NzdiNTIxOGQ0MWI5Njk2MGZjOWY5NmVhZWZkODEwYWQ5YSBkZXNjci1icmFuY2gKKzIxMTMyIDA1MDU0YmQ3OTU5YjY0NTE1ODlkN2RjMDNmMDRhYjA0NGY4YTQzOGQgZGVzY3ItYnJhbmNoCisyMTEzMyBjNjE2NjU1NzgyZjFhZmMxOTA4NzkwNWY2MTQxYjZhMjE3YjYzYjY4IGRlc2NyLWJyYW5jaAorMjExMzQgYzI5ZjMxMzVhMjBjYjA0NDQ5NTZjYjE1NGVjNTdlYzQ5ZDU3OWFlNSBsZWdhY3ktdHJ1bmsKKzIxMTM1IDMzM2EyYzZlYjc0MzhhNTE3MTVlNWFjODMyYTI4OGJhODg0ZWNkNjYgZGVzY3ItYnJhbmNoCisyMTEzNiAxNjZiN2IzNjU4NTE5M2NhNzg2ZDNmN2Q3NGRlMTViYjUwNzRjMjVkIGxlZ2FjeS10cnVuaworMjExMzcgOTUyMjk3NmQxZTk5NmNjY2IzNTQxMzlmN2YwM2QxMzQ0MmU4OWU2NiBsZWdhY3ktdHJ1bmsKKzIxMTM4IGFjN2RjZjBlNTEwNGFmYTE0MGY0MzdiZTA1YTE2NTRiYzNkMjFjMjAgcmVsZWFzZTIxLW1haW50CisyMTEzOSAxZjEzNjQ4MDY1OTljYTMxZWU4YmQ1MGIxZWYyNTk4ODc4YzQ3YmQyIGxlZ2FjeS10cnVuaworMjExNDAgOWU5ZWRkYWMyNWI4NThmNmZjMGExZWQ5ZGMwMTEzNTZhMWRiNzRlYyBnZW4tYnJhbmNoCisyMTE0MSAyN2RkOWVjMzE2MmNkOGNhYjk0YmQ3MzQwOTRlMjA0NTcwMzUxZWIzIGxlZ2FjeS10cnVuaworMjExNDIgMGFmNmVhZjlmODllZWY0YTlkYWVkMTRkM2YzNTkyZWRjOWI4MzI2YSByZWxlYXNlMjAtbWFpbnQKKzIxMTQzIDM2NDI0NDI2OTUwNjNhOTgxMDkyZWE0ZTk3NzZiOWU1ZGYyMjE2OWEgZ2VuLWJyYW5jaAorMjExNDQgNmFjYmE5ZTQ3NThjYjAxODkwYmUwNjkxNzFmOGRlZmJmY2ExNjYzNyBnZW4tYnJhbmNoCisyMTE0NSBlMzI4MjE4NTQ2YjU5OGJmZTQ2ZjY4OTQ1MmFhM2JmMjhmYTg2MWNjIGxlZ2FjeS10cnVuaworMjExNDYgYjdmMmUyMzEyNjEwZWM0ZmIzNTFkN2RlZjQzYzEwODNjODJiMDAxYyBsZWdhY3ktdHJ1bmsKKzIxMTQ3IDlkNTMzYWU1NzRkMjBkMTRjM2RjYWQyYjZiYzA0MzZiNjQ3MDBmNjMgbGVnYWN5LXRydW5rCisyMTE0OCA4ZWVhMmVmYjM0Y2QxZjE2ZTZjYmY3MTI3Mjc1YzllNTE3MWEyOTY4IGxlZ2FjeS10cnVuaworMjExNDkgODVlM2ZhMWViODM2Yzg4MjIwZWZmNGEwYjc1YWE5NzE3N2QyY2MyNyBsZWdhY3ktdHJ1bmsKKzIxMTUwIGU4ODdkNjg2MmY3N2I0MDgzMGQ3NDdmMWEwNWExNmI0NjkwYWNhM2UgbGVnYWN5LXRydW5rCisyMTE1MSBiNDk5NDVlODA0NGE4MDZmYjJiYTI4YzUwMTY4OGQ1ZmZiZmNkY2JmIGxlZ2FjeS10cnVuaworMjExNTIgZWZmOGRhN2MzZGNiOWJlYjBlODViYmZmODA4NTcyOTJjNzg1MDk0NyBsZWdhY3ktdHJ1bmsKKzIxMTUzIGNhYzIwN2IzYTQzZmQ4YTg5NDY0ZGQyY2UwY2FlNGMzZDIzZmQ4OTkgZGVzY3ItYnJhbmNoCisyMTE1NCA3YTMzOGY1MzdlNDJiYjJhM2QxYWI0YzYwZDEwYTQwMGEzNjUxOTFkIGRlc2NyLWJyYW5jaAorMjExNTUgYTQ0N2ZjOTQ3Mjk5OWExNjM4ODAyNjRmMzU0MThjOTg5YTg1ZDk4NyBkZXNjci1icmFuY2gKKzIxMTU2IDI4YzRiNjZlY2JjNThkYWI0YTM5MTZhNzljYWQ1OWZjZDVmOTgzNDMgZGVzY3ItYnJhbmNoCisyMTE1NyBhN2MyZmZlYmJkMjY2ZmFmYjAxNGU4MTI0OTFkZjUxMWYzOTYwNTYyIHJlbGVhc2UyMS1tYWludAorMjExNTggNGNiMzQzMTRiZDk3MDljMDA1NmY3MzNlYTczMjQ5OTI5OGY2ZDE1NiBsZWdhY3ktdHJ1bmsKKzIxMTU5IDU0MWUwOTVhNmVkNjUxNjkyNWU2NjFmOGI5YmM4YzdmNzFlZTc2YzAgbGVnYWN5LXRydW5rCisyMTE2MCA0MThjYWJjYjc2M2YwYWMyZDU1YjBmYTVkNzZjODE4M2UyZDk4ZWRmIGxlZ2FjeS10cnVuaworMjExNjEgMzU0YTRkZjA5ZTM4NWI4NDkzZTAyZDgzMGU5NWE3YTVjN2E5ZjAwNSBsZWdhY3ktdHJ1bmsKKzIxMTYyIDMxY2I1ZDE3MzExYWI1Mjg5MDkxMWY3MjVlYWE1MWRlMmMyMjFiM2QgbGVnYWN5LXRydW5rCisyMTE2MyAwMTE2ZTQ1OWRhZDJjYmRlNmU5MjI2NGRmMTc3ZGMwNjU2ZjFkODIxIGRlc2NyLWJyYW5jaAorMjExNjQgNGUzMDE5ZGE5MWE5MzY1ZWJhNTE1NzIyYjI4ZDBlODE0MjBiYTFkNiBkZXNjci1icmFuY2gKKzIxMTY1IDIyZmViYTk2NTljZTc5MjBkZDYxMmNkODUzNjJlYzk0MmYzNDFhOTkgZGVzY3ItYnJhbmNoCisyMTE2NiAxMWFjMDJjMDM2OTBkNDE0NGEwYmZlZjUyNWE3ZDQ0ZjVjMzRkNDU5IGRlc2NyLWJyYW5jaAorMjExNjcgOTdhMjA4MjkxY2Q4YmIwODQ5YmQ1NWY4OTU3MWE2OTQ4M2M2NTQ1NiBsZWdhY3ktdHJ1bmsKKzIxMTY4IDQ3YzlkMGNiNmUzMTRkYmI3OTZkOTgxM2IzNDcxMDgwYjYwNjdhMjQgbGVnYWN5LXRydW5rCisyMTE2OSA3NjdjNGIyODIxMGFkZWI0ZWUyOGMzZGFiNmZhNmJlYmMwYTUwYzUxIHJlbGVhc2UyMS1tYWludAorMjExNzAgZGJlODJhOWM2ZjdkNzNmNTk5M2M0NTEwNjM2ODljYjc5OTIzYzliNiBkZXNjci1icmFuY2gKKzIxMTcxIDgwNjQ3YjgyZTFiMmQ4NzQ2YzdjZmI3MWFjYjBlMWVkNTUyYzExMjAgZGVzY3ItYnJhbmNoCisyMTE3MiAwZTdjYWQ1MWNmNjY1MzBlOGE0YWQ3YTc3MWZiNGM4MjFlYTlmNWM5IGxlZ2FjeS10cnVuaworMjExNzMgYTcxZmVlODRiNGU0OTAxYjk1NzI0NDIwYjVlMTg4YmY1NzIzMWE0OSBkZXNjci1icmFuY2gKKzIxMTc0IDhjZDRhM2YwMTk1MjFkOWE3ZDQ3NTYwNjQxMjYyMWEyYzBmOWZiN2EgbGVnYWN5LXRydW5rCisyMTE3NSBiNTFiNGMyYmY1ZjllYWZhODk4ZjAwZTgzYzE5MjgyYjhmM2IyZDhlIGxlZ2FjeS10cnVuaworMjExNzYgMTdiM2VlOWNjNDNmYTJmOTEzNTk4YzNmYmRlMTNkYjAzNzBmZDRjOCBkZXNjci1icmFuY2gKKzIxMTc3IGUxYjMwNjI1YTQ2NzQwODkzM2Q0OGIwNjU0ZDhiZWNkNDY3ZDYyMDcgZGVzY3ItYnJhbmNoCisyMTE3OCAyY2U3MGE4ODNhZjZhN2MwNjBlM2U3NTc5YjkwMGIzY2VlZTAwYTZhIHJlbGVhc2UyMS1tYWludAorMjExNzkgMzFjMTFhYjFhM2U4NTc0ZWE0MmIyZWQ2NGZmNWM1MjFmYjUzYjQ2OSBkZXNjci1icmFuY2gKKzIxMTgwIDA0NjNiOWU1NzA0ZWIyODc4NTdlOGNjMzI2ZDNlZDdmZTlhNzEwOWYgZGVzY3ItYnJhbmNoCisyMTE4MSA3YmM0NzNiMmM2NTQyNDMwNDI3ODRiOGFjYTI2NGNjMDI1Y2NkYzg5IGxlZ2FjeS10cnVuaworMjExODIgMWJjZThiYjQxZGJkM2YwOWQ3MGUwMmY5MGNkODIzMTZmMDk5Yjk2YiBkZXNjci1icmFuY2gKKzIxMTgzIDJlNGM2YmE3ZDA5YzE0ZDEwYjgxNDg3N2M0OGVlOWEwYTZhYmRmMWUgbGVnYWN5LXRydW5rCisyMTE4NCA5Y2U4YTk5NWJmMTJlNTgzZDQ3NDRhNDMzZTJhOGVlYjZiZmIzZWYxIGxlZ2FjeS10cnVuaworMjExODUgMDY3NmVhMmZmODY3YTk4ZGE0MmQ5ZTVkOGZkY2Q0YWFmZDk5MGFkNSBsZWdhY3ktdHJ1bmsKKzIxMTg2IDU0Zjc2MjkzZDkyNjk4NTE1ZDUwMzM3Yzg5MjVkMzQ3OGE5MjVhNzQgbGVnYWN5LXRydW5rCisyMTE4NyA4ZWY4NGI4M2VjMWZhNDM1NTE0Y2IxNWUwZjhlMGI3YWI1NTkxNjljIGxlZ2FjeS10cnVuaworMjExODggMTI2YTY2YjM0MTNjZDJiYmZmNDJhNjdlYjZmODIyYjhmMjE2ZGU5YyBkZXNjci1icmFuY2gKKzIxMTg5IGIxZjYzMjgwYjJjMjk4ZWM5MTE1MThmZWM4NTgxZThhZmNjOGFkNjYgZGVzY3ItYnJhbmNoCisyMTE5MCA2NTFjNjY0MDZiZjgyMTFjMGMxMGJkMGM1ZThlNGYyYWViNGI4MzEzIGRlc2NyLWJyYW5jaAorMjExOTEgZDYzOWExZTFmMWY0OGY4OGZlNDNjMDcxZjE1MDdmYzE2NjA3ZmFiOSBsZWdhY3ktdHJ1bmsKKzIxMTkyIDdjMzQ4OTlhZDUwNjIzZTJjM2I1MWQ3MTBjM2I1NmQ5OGJiOTY3MjQgbGVnYWN5LXRydW5rCisyMTE5MyAwZWMwM2UxYmU1NTg4ZWI3ZWFjZjJjMGQ4OGJkYzU2ODdhYTQ5NTdhIGxlZ2FjeS10cnVuaworMjExOTQgNGQxYzc4NDkzMjIxYWJhYTMyMWE2ZDkwMzRmMTQyYTg3MjI3YTk0MyBsZWdhY3ktdHJ1bmsKKzIxMTk1IGU1YjI3M2U5NWY3NGI4NDk4YzgzYzhhYzM3OWJmYTk1YmEzNDQzNDQgbGVnYWN5LXRydW5rCisyMTE5NiAzMWJkMjVhMmQ4YzViOGQ3YWY3MTg5NTVkMTZjMmFmYmYwNGZiNzMxIGxlZ2FjeS10cnVuaworMjExOTcgNmZiYzVmMjAxYTFmODc2MGNlN2ExNTFlNzNlOWU1OGNkNzA5NmVlMSBsZWdhY3ktdHJ1bmsKKzIxMTk4IGE2NjU3MmFjNzFlN2RjNzg0Yjk1MWE3OTI3MTc3NmNmYzg3YTEyNzAgbGVnYWN5LXRydW5rCisyMTE5OSAwMmFhMTMzZGViNTM4ZTRlODdmMmY0MTBkMmY5OWNmOWNjOWExZDcxIGxlZ2FjeS10cnVuaworMjEyMDAgZjkyNmViMWY1NzcwMWMyMzAxMDcyZDEwN2I5YWVmZGMzOWJhZDBmYyBsZWdhY3ktdHJ1bmsKKzIxMjAxIGVmYjUwNjljYzc0ZmU3MDhjMzhiZjU2MWQzN2FkMGMyZDllOTQ4ZGQgbGVnYWN5LXRydW5rCisyMTIwMiAwYmFkNDJlNTYzMjA0MTVjMmQxMjc1MmIxYjY3ZGMwNGFjODEwN2M4IGxlZ2FjeS10cnVuaworMjEyMDMgY2Y2YTg2NDM4N2QzNzg4MWFkNzI4NTg2NDNmNmZhZmE5N2Y0ZWU4OCBsZWdhY3ktdHJ1bmsKKzIxMjA0IGM1YWM2ZjA1NWM2MjM1YzI0N2EwNGRiMzQ4OTE2Y2JkMmNkMDE3YTggbGVnYWN5LXRydW5rCisyMTIwNSBkM2U0Mzk5ZmUyZjk0MzE2MTVhZGJhYmY2YTQzYjdkZjY0ZWI4ZTc2IGxlZ2FjeS10cnVuaworMjEyMDYgYzYzOGE3YTJmZTc3YjkzMjIyZjA3ZmMwZGZiMjgwZDZmMWQ1MjlmYSBsZWdhY3ktdHJ1bmsKKzIxMjA3IDY3NzFkYWIxZmUzMmZmMzkwODBjNmJlNDQ4NTdlZmRmOGEzZjFiMmMgbGVnYWN5LXRydW5rCisyMTIwOCAzNDBlOTMwMWU4NWIzMjRmYzVjMTU1ODExYmIwZmM5N2M4NDVhMjNmIGxlZ2FjeS10cnVuaworMjEyMDkgMTJkN2Q0ZGI2OWYyZjZmMDUxNmFmZTBiMmQ1MWIxMGQ2OTM1Yjk4YSBsZWdhY3ktdHJ1bmsKKzIxMjEwIDA5YTA4YTFlNDdkNjhhYTc2ZmNmZjZiMDRmMTA3YWExNWM1OTdiMjggcmVsZWFzZTIwLW1haW50CisyMTIxMSBlN2Y3ZWVmMThjOTg2M2NjM2E3NmNjMTg2Njk1Yjk0YzQwMmVjZTBjIHJlbGVhc2UyMC1tYWludAorMjEyMTIgYjczMjQxZTUwNTU2NzBlZTRmNDkyOGJlNDYzMThiMTc5YjAzZjhlNSBsZWdhY3ktdHJ1bmsKKzIxMjEzIGNjNzYzMWZiZjdmOTJlMTNkNGQ0YTRhZTdiYjk2OWE5NTI3OGM5YTkgbGVnYWN5LXRydW5rCisyMTIxNCA4MjYwMDBhNDA4NjY1MjI4YzY3NTAwZGRkNzBiNzMwMGRkNTA2OWY0IGxlZ2FjeS10cnVuaworMjEyMTUgMmYyMWZlYmY2ZDQ2MmI3Zjc0YjVkNjc5YmVjMzk2NDhjNjM2NzgwMyBsZWdhY3ktdHJ1bmsKKzIxMjE2IGY1YWIzNDc5YWNkNGQ1MzJhODJmZWQ4YzgyMzQwMjc1ZjUzZjRiMjQgbGVnYWN5LXRydW5rCisyMTIxNyBjMjU4NzZhNTFmMWI1OTYzMGZkYzBmMDk5ODdkYWFhZDhjYWIxMmQxIGxlZ2FjeS10cnVuaworMjEyMTggYTJlNmZmZjQ3MWIwMjUzMjAwOTY3ZGFkY2ExNDg5OWE4YThlZjllMiBsZWdhY3ktdHJ1bmsKKzIxMjE5IDE1YTI0ZTBiZjk0ZjIyZDEyYTVmODU4YmQxNWI1NTkzY2Q5YzYzNzIgbGVnYWN5LXRydW5rCisyMTIyMCBkMTIyMWZiZGQ4NWQ4Y2RmOTRjZGE1NmQyODU4MDVkZjdkOWQ4YzhhIGxlZ2FjeS10cnVuaworMjEyMjEgYmQzOTkzYzQ5NGExYmVlYTFhN2I2ZWI0MzUxNDIxNjFhMjc5MjYxYSBsZWdhY3ktdHJ1bmsKKzIxMjIyIGQzYjE5NTZlM2RlMGMxM2VjMDRkNmE4NTdhYjg5ZWVmY2FlNjg5YjEgbGVnYWN5LXRydW5rCisyMTIyMyBhZTBmMDljN2MxZTkxMTYwNDhjN2M3Y2MxNTJiOWViZmIzODkyM2M2IGxlZ2FjeS10cnVuaworMjEyMjQgM2E1ODAyN2NhZTRlN2RkZjdkNDYzOTM4NmE2YTQ4MDk4ODhiODdiMCBsZWdhY3ktdHJ1bmsKKzIxMjI1IGE3ODI1NDQxY2FhNGE3NzdhN2VjMDM0Yzg0YzUwYWQ2YzA3Mjg4Y2EgbGVnYWN5LXRydW5rCisyMTIyNiBhNDM4YWJhMmQxMzdiN2E1OTEzMjczNmI1OTdhNTQzYzBkNGVlZDZiIGxlZ2FjeS10cnVuaworMjEyMjcgYWVkYzNlOTIwZGViY2FkYThkMmY4ZTEzZmM4ZmNlMzIxY2QyM2IzNiByZWxlYXNlMjAtbWFpbnQKKzIxMjI4IDhlNWI1MzdmODdhMTkxOGNjMjc1M2E4NjIxZDM5YTlkZDkxMTY1NDAgbGVnYWN5LXRydW5rCisyMTIyOSAxOWJjNjNhODQ0MzkwZTRhODJiNzkxYmU1MjRhMDBiNjkzMTA3YmJmIGxlZ2FjeS10cnVuaworMjEyMzAgNTk2NTMzOTQyOWM5Y2QyMmZlNWIwNTMwMGE2NDZjMzEwM2NhY2IyYSBsZWdhY3ktdHJ1bmsKKzIxMjMxIDk5MGI3M2ZhMDc0Y2RhNGNhYjMxMmViODRlNjY1OWU4MDZlNzc2NzggbGVnYWN5LXRydW5rCisyMTIzMiAzNmU4MjU2NjBhMjQ1MWFjYzhiNmU1NTFlNWM4YmRkOTU5MGY1YzBlIGxlZ2FjeS10cnVuaworMjEyMzMgOWE0Y2FjMmI4YjhmYzk4NjcwMzEyYzhhZDZkODM1M2VlNjQxNWMxMCBsZWdhY3ktdHJ1bmsKKzIxMjM0IDFhNmI4ZjY5ZmVkNjIxODRmYTE3NTZhNzc3ZDhmNDEwYzAzMjQ2OWYgbGVnYWN5LXRydW5rCisyMTIzNSA1ZTQzNTczZjBkZjFmMTlhNzM4OTY0N2QxMDE2YzRjYjFlZDcwNjNlIGxlZ2FjeS10cnVuaworMjEyMzYgZWQzNzQ1ZGE3NDE5MjgwODZjNzRiOTY0NmQyNjBiMDNhMGVkY2YyNCByZWxlYXNlMjAtbWFpbnQKKzIxMjM3IGJlNDJjZTI5NWVkYjUzYTM1OTQ4N2UwNGRhYmNlNTA4NmMxMzkxZDYgcmVsZWFzZTIwLW1haW50CisyMTIzOCA1ODczNmNhOTE0M2MwZjZmNzVmY2QzYjg5MDAzM2M4OGI1MmRhNjRkIHJlbGVhc2UyMS1tYWludAorMjEyMzkgOTAwNTk0M2M3NTRlZTkyMGEwYjY4MmY1NjY3NmFlOWNiMDQxNDFlYSByZWxlYXNlMjEtbWFpbnQKKzIxMjQwIDRhODcyNjc3OWJiYWY3M2EzNmYyYWMxYTMxODZmNGJhMjlmOTdkYTEgcmVsZWFzZTIxLW1haW50CisyMTI0MSAyNTY0MDZiNWNmMGM0ZjRiOGZkMTM4YmIzYmRmZDQ0MmZmZDFmYjExIHJlbGVhc2UyMS1tYWludAorMjEyNDIgNzZjM2ZmNTdlYjZkMDY2ZjIxNDkwNDA0YWQ4Yzc1NGM4MGIxOGY3NCByZWxlYXNlMjAtbWFpbnQKKzIxMjQzIDYyNTNkMTI4YTc4YmY5MmM3NjdmNTBkNzMzOWU4ZDRjYjkzOTQzZDYgbGVnYWN5LXRydW5rCisyMTI0NCBlMzcwOGNiMWUwZDA3Y2I5YzVjY2MxZDAxMGIyMWUyMDcwODQyYzNhIHJlbGVhc2UyMC1tYWludAorMjEyNDUgODI2OTk0OTliMzhlYzFkMzA0MjljOGQyOThjMTFhMWMyYTM4ZWU3YSBsZWdhY3ktdHJ1bmsKKzIxMjQ2IDU0NmM3ODUyYmFjNTVjZDkyMjY3N2EzNzVkM2I5YTlkMTFkYjNhMGQgcmVsZWFzZTIwLW1haW50CisyMTI0NyAwZDRhZDg5ZWQzMmQ4N2VjYWVkYjNlOGE1ZGMxM2IyMDk5MDFkNzI3IHJlbGVhc2UyMC1tYWludAorMjEyNDcgNzNkZTk0YTcyMmQyMDZhNDVjMGI0OWQzMDExYzYyOWVhZDRkNjJiMSByZWxlYXNlMjAtbWFpbnQKKzIxMjQ5IDA3NTdiNmM5OTMwNDE0MzdkMWZiMzAwODQ0NmFiZDU0ODQzYTBlYjEgbGVnYWN5LXRydW5rCisyMTI1MCBmOWQxMjdhYjMyZWM5YWFkMzM3Mjg4MDYwNjRlZTNhMDM2NWFhNjhjIHJlbGVhc2UyMS1tYWludAorMjEyNTEgYjY2NGIwMmMzZTkxY2Y0OWUyZTEyZWVmMGVjODczOTBhMDYyZTMxYSByZWxlYXNlMjEtbWFpbnQKKzIxMjUyIDQwOWFiZjIyNTE4NWQyMWQzNzA0YjkzMTNiZjA0ZTBiNDYxMDliN2QgcmVsZWFzZTIxLW1haW50CisyMTI1MyAwODYxOWJmMTgyOTkwNDIzN2U3YTBjYzlkYThhN2Y5MmVjYzg5MzU2IHJlbGVhc2UyMS1tYWludAorMjEyNTQgZTFkZDQ2MzBlZjNiOTFiYWQ3ZjIxZDU4MWQzOWFlNjk0ODc5ZDE3ZiBsZWdhY3ktdHJ1bmsKKzIxMjU1IDY5OTFkZGFmZTM4MjhhMmRjMThmZWQ1ZDJmOGEzYWQzYThkY2ZlMTMgbGVnYWN5LXRydW5rCisyMTI1NiA2ZWVmMjFlNTIzYjY0NTY5NDkxNDI3ODJiMWY4YzUzZjFlMzY1NjllIGxlZ2FjeS10cnVuaworMjEyNTcgM2E4NzMyYzY3ODk4YzZkYWE0Y2ZhMGFhNWQ0OWUwNDNkYjVhYzc0OSBsZWdhY3ktdHJ1bmsKKzIxMjU4IGFjZDNkYTVkNTYzY2M4MmNmYjA3NDBhNTVjODQ0YzZlYjZhMDI4NDMgcmVsZWFzZTIxLW1haW50CisyMTI1OSA0OTc1MTczZTFhMDJkODJhZWQ4ODljMDczM2Y2YTVlNmNjNzY4OTdhIHJlbGVhc2UyMS1tYWludAorMjEyNjAgMjIwNDA1YzA3MjMyNTkzYTRjZDlhNzEyNzRjMzI4ZGIyZWZiZmYwYSBsZWdhY3ktdHJ1bmsKKzIxMjYxIDgzYzQ3NDhiOTM5MGU4Y2U0MjQ0MGZhMDU4ZjAzMThjOWE3NGM1ZmQgbGVnYWN5LXRydW5rCisyMTI2MiBhYThlMjM4YWIwYWQ3NjM0ZTdkZGQ2N2RhOWYxY2E3OGFhMzM0MWFhIGxlZ2FjeS10cnVuaworMjEyNjMgYTRkYzIxYjQ3NzRkYzk5N2UwNzAzOWUxYmViYWQ3OTExMWFiMzhlNSByZWxlYXNlMjEtbWFpbnQKKzIxMjY0IDdkMmU2ZTFkNjBjZTU4YmE0ZjlkZmYwOWVhZDFlNmI3MGM4MzVjYzEgbGVnYWN5LXRydW5rCisyMTI2NSA0ZWJkMjkyYzk3NWY4MDk4ZjFmNWFiNGE5Y2IyNzU5Yzg3MmE2OGZjIGxlZ2FjeS10cnVuaworMjEyNjYgZjAzNjE4MzczMjNkNmQ2YTQ4Mjc0MzEyYzRiYTFkODNlYjI1NmQxNSBsZWdhY3ktdHJ1bmsKKzIxMjY3IGI4OTNkMTIwNDVjYjQ2MDllYTIyMTM1ZjU3YzJkYjY1ZWJmMTg1OGMgbGVnYWN5LXRydW5rCisyMTI2OCBmOTI2MTkwNGNlYmJjNTU5YTRjZTA0ZWFjNjIyNzE2NmY2NGNhM2IyIGxlZ2FjeS10cnVuaworMjEyNjkgZDkyM2IzYzhiMTUyNjlhY2YyN2M3ZDEwMDE4OGViYzc5MjQ5YjY1MyBsZWdhY3ktdHJ1bmsKKzIxMjcwIGVhZTY2YmYyNDg3ODg4YmQ0NjkxNjYyOGNjZjNkMzU3MGFlNTI3MjYgbGVnYWN5LXRydW5rCisyMTI3MSBmZTQwNzFiZWZmNDE4NjhmOGMwZjQ2OTA0Y2RlMzQzMWM4N2JlYjU5IGxlZ2FjeS10cnVuaworMjEyNzIgZWI1MjQzMjJhMWMzMWM2MzUyOTc5ZDI1NWE1MjE1MjMyNjdhYWU2MyBsZWdhY3ktdHJ1bmsKKzIxMjczIGY4Mjg3ZDg0Yjc1NTE3MTZmNWFjOGMyMWUzNWFkNTUyZDhjZGVlZDYgbGVnYWN5LXRydW5rCisyMTI3NCBmMDI2MDViOGZkYzFlNTk3MTU2MjFmODgxZjVkYjllMDgxZThjYzViIGxlZ2FjeS10cnVuaworMjEyNzUgMDM3YzhiZTUwNWUwNTlkNzc0Yzg3MzQ1ZjUxMTVmMTU4Y2JkMjNmYiBsZWdhY3ktdHJ1bmsKKzIxMjc2IGExZWY0M2E2ZDZlMTMxM2Y0OWE5MTdkYTY2MWY5YmJiY2YwYjg0ZTQgbGVnYWN5LXRydW5rCisyMTI3NyAwNDM5YzgyYThmZjQ3NTYxMzA2NWFiZjY0NGZkNjljNTRlYTY3Yjk3IGxlZ2FjeS10cnVuaworMjEyNzggNDUxNzA5M2ViOTllYWNiYThhZDA4YjEyZWYzZjBmMGE5NTFmNGIzMCBsZWdhY3ktdHJ1bmsKKzIxMjc5IGU0ZDY1NWFlOTE0MGUzMTNmOTk1MzM5M2Q5YmY5NzRkOWI0ZTI2YzMgbGVnYWN5LXRydW5rCisyMTI4MCA0NzcxN2U1NjY3ZWIxNWYxODRlMGE3NzJkMzJiNWQ3YzhhZjVmZjU4IGxlZ2FjeS10cnVuaworMjEyODEgMjRjMjliMzcxNTEwMmNkYjM1NjlmMGI2YTQ4YzBjMmMyYjBlZTE2MSBsZWdhY3ktdHJ1bmsKKzIxMjgyIDlmYTU0YmQ3YTdjYjU2ZWM4ZTk0ZGQ0NDAzMDhkZjIyMzQxNzQxNmMgbGVnYWN5LXRydW5rCisyMTI4MyBjNGRiMDliODc0MjQyMzBkMjJlOWZmZWVmZGYzZTVjNGJiN2IzMDk5IGxlZ2FjeS10cnVuaworMjEyODQgZTNjZjMzNDhmZWNhNTMwYWY0ODNkZWRjNzRhNzQ1OGQxZjg4YTJjMSBsZWdhY3ktdHJ1bmsKKzIxMjg1IGYxYjVmYmVlY2MwZTk5MjE3MTQ3MmQ5ZThlZmUxMjdiZGY1ZjhkMmQgbGVnYWN5LXRydW5rCisyMTI4NiA0ODI2YTZjZGFmYzQwZGUyMmFjYmVjZTQzN2QwMGYzOGZmNjZmMTY2IGxlZ2FjeS10cnVuaworMjEyODcgNDVkZTFhYzJhMzc2N2I2ODVjYTBiYTEwOGQ1OGU0YThmNzU5NTMxMiBsZWdhY3ktdHJ1bmsKKzIxMjg4IDVkM2U3Zjk5Y2Y1MmNmNDZkZmM5YTU4MWJmZDc4YWQ0YmM5YmZmNjQgbGVnYWN5LXRydW5rCisyMTI4OSAwNjViMTdmYzBkMmVlMDZmNjUxMjhiNWFiZWIyNjIxY2QzZWVmMTcwIGxlZ2FjeS10cnVuaworMjEyOTAgOWYxZGZhNzg2YmE2NTVlZGExMjdmMWZlNWM2Mjg4OWY2YTQ4ZGU5MiBsZWdhY3ktdHJ1bmsKKzIxMjkxIDA1MTRiMTZjMWE2ODNmM2JkNTQ3YWNkOWZhMGQ0NjYzYzFiZWI3MTEgbGVnYWN5LXRydW5rCisyMTI5MiBmYjdjNDRhZTRhNjI3N2Q0MmI2NjMxZmU2MGY2YWFiNjZhN2Y0NGI5IGxlZ2FjeS10cnVuaworMjEyOTMgZDUwZDRmODFhYTRjNWE3YzAwZWRmOTA0NTMzYzU4OTVkYWYwMDE0ZiBsZWdhY3ktdHJ1bmsKKzIxMjk0IDM1OGNiNzRjMDg2NGY5YThiNzkzYTY3MWRmMmEzNmFhNDFkNmUzYTUgbGVnYWN5LXRydW5rCisyMTI5NSA1N2RkMTNiNmM4MDMxMGQ0NDNiMjBmZjU1Y2NmZDYzZjI4YjM4ZjQwIGxlZ2FjeS10cnVuaworMjEyOTYgMzA5ZmIwMjZjODRlY2Q1N2ZkMjU3MDk1ZTdjODM1ZGIwMjI5NzM4ZiBsZWdhY3ktdHJ1bmsKKzIxMjk3IDFhMmE5MTRiMjQ2YzIyYzZmMTMxZWJjYTA0ZjRlOGQxOTIxNThiMmMgbGVnYWN5LXRydW5rCisyMTI5OCBjODhmNDE0ODYwNWZkNTJjZTBlYjIwNjI2MzRkNzk4OTQxZjYyOWE5IGxlZ2FjeS10cnVuaworMjEyOTkgNmIwYTgxNTdiZTNiNjgwNmYxM2UwYTMyYjA0ZmVlYWMwYjdkN2FiNiBsZWdhY3ktdHJ1bmsKKzIxMzAwIDQxNDkxZDE5Njc0OGNkNGRmZjkwMzIyOWYwZDY1MTFkMjU3NmU0N2EgbGVnYWN5LXRydW5rCisyMTMwMSAzZDkxNjRkOTVlNzg5ZjcxOGQ2NzlkODI2MTgxMTc4MjdmNWYzNDY2IGxlZ2FjeS10cnVuaworMjEzMDIgYTQ2ZTM1YWNmOWMxYzY0YmE5MDE2M2JhYzBlZDRlY2Q5YjZmMTg1NyBsZWdhY3ktdHJ1bmsKKzIxMzAzIDE2ZTRlYjQyNzc5NzhmNjZiZThiNDY2Y2VlNTQ4Y2U5NTNlNzUzODIgbGVnYWN5LXRydW5rCisyMTMwNCA3OGJmYmUyZTcxOWNiM2JkOTAzNTRkNDg0OTc2NmQxMGU5NDcyYTk3IGxlZ2FjeS10cnVuaworMjEzMDUgNDI2ZTBjNzIxYmJmNmViMjBhNTI5N2NiZTA3NGNkMTgxOTQxZDBmOSBsZWdhY3ktdHJ1bmsKKzIxMzA2IGViZjYxYjViNWFlYmJjYTcxMWNjNmNhNzU0ZmRhMjExNTBjNGFlYzYgdW5sYWJlbGVkLTEuMS4xCisyMTMwOCBmZDgzMjEyZWI4ZjI0ZWZkNjQ5NGM4OWE0MzI2MjVjNTg1N2VmNDA1IGxlZ2FjeS10cnVuaworMjEzMDkgZGVlNDk4OTYxYmZlM2M5MGZjNzU5ZTAyYWI0YzRhOGRkOGQzZDdmMiBsZWdhY3ktdHJ1bmsKKzIxMzEwIDRhZDg0MmY5ZDQzMTQ3YTgwMThiYzBmOGIxZDdkOWEzMTllZTdjNzcgcmVsZWFzZTIxLW1haW50CisyMTMxMSA0NDEyMmU3YjQ5Y2YyYzk0NzNlNjhkYTIxM2RjYTg5MjVmYzQ5YzAyIGxlZ2FjeS10cnVuaworMjEzMTIgOWUzMjZjOWU2YmU1OTQyMTAxYzEwM2Q2YThjNjdkNTU0NTZkZmEyNSBsZWdhY3ktdHJ1bmsKKzIxMzEzIDg2ZGFiMGQ0M2I3MzEyZjBiODg3ZTU3NjkxYzRmZTc4ZDU4N2U3MzggbGVnYWN5LXRydW5rCisyMTMxNCA5NzM0Zjg5NWY0ZmJlZDk4YjQ3ZmE2MmRkMTI2Njk4ZjBmNDdkOTJhIGxlZ2FjeS10cnVuaworMjEzMTUgZDJjOTUwMDMyMzkzMDAxZjdiZDIzMmZjOGE4ZmU0NWQxYjI2NTY1NCBsZWdhY3ktdHJ1bmsKKzIxMzE2IDdjOGRhZDVmMmQ5NjZkYzIxZGJkZGQ3MGRkYjkwZjkxZTI5YjdkMDYgbGVnYWN5LXRydW5rCisyMTMxNyBiNTY1OGEyMzBlMWE1Mjc2MDQ1ZTI3YmQ0NmEzZTlhYzEzZmY4ZjM1IGxlZ2FjeS10cnVuaworMjEzMTggOGI3ZmY0NGI0NjY5NTk3YTY0N2Y0ODA2MjNkMzVkYThmNjg3YWM5MCBsZWdhY3ktdHJ1bmsKKzIxMzE5IDA2MzJkY2Q2OWVhM2FmMTlhNjk4MzU2NzRiNGQ2NDVhNzE0NmI2NDIgbGVnYWN5LXRydW5rCisyMTMyMCBlM2JhMzczOTg1NWFkMWZmNzdkODg0YmQ3ZjU3YmRjMDg5ZmMzZTQ5IGxlZ2FjeS10cnVuaworMjEzMjEgZjM4OTIzY2UzYzZiMGY0YWRiYTMxNjdiZjI0OTI1ODQ2N2Y3Zjg1YiBsZWdhY3ktdHJ1bmsKKzIxMzIyIDFmMWQyYzUwYjNjNzg0ODExYzc0YTEzYTRjNjZjZDY1ODg4MzQ4OTggbGVnYWN5LXRydW5rCisyMTMyMyBmN2MwMWI5MzhhMTczOGFkNzUyNWYxNDExMjVhMGYxODZhYTA5NDA5IGxlZ2FjeS10cnVuaworMjEzMjQgMDQzZTIwMDE3NGYxYjdlOWMzNGY0ZWQ2MWYxZDJjOGVlYzY5ODJjOSBsZWdhY3ktdHJ1bmsKKzIxMzI1IGUzMWEzNDkxNjZmNGUwY2QxZTI1ZTE5OTgwZWZhMjdjMzAxM2I0MmQgZGVzY3ItYnJhbmNoCisyMTMyNiBiYzA1YTk1MjQyYTM3ODAzYTUxYmRlNTI5MmExZDliZGJkMTkzMjVkIGxlZ2FjeS10cnVuaworMjEzMjcgZjYwNzhhMzBmNzBhMjgwZWE2ZWI1ODRlMjMzYjllYzgzNmE2ODc2ZCBsZWdhY3ktdHJ1bmsKKzIxMzI4IDY4MDBiY2NlMDQ1NTViOWZhM2ZlMjRmMzQwNTA5NWFlNjUyNzZhYzUgbGVnYWN5LXRydW5rCisyMTMyOSA0ZmEzMWVjYTNiZTRhNTRkOGU5MTdkMzUwODBiNDFjY2QzMTM2ZDA5IGxlZ2FjeS10cnVuaworMjEzMzAgMjk1YWNjMDc1NWYwYzdmZWM4YTFkOWFkZWM1MDJhMWZlYTM5ZTFiYiBsZWdhY3ktdHJ1bmsKKzIxMzMxIDU1ZjNhMDRlMDY0MTFlY2ZmMjc2NWQwN2YwM2NkOWE3MDQzOWFkODEgbGVnYWN5LXRydW5rCisyMTMzMiBmZmJiOWM5MThhYzA0NmIwY2U2YzViYjZiN2IxNDQwYjM0ODY2ZjcwIGxlZ2FjeS10cnVuaworMjEzMzMgMDM0NGU0YWM3MGIwYzhmOTU1ZTIxNWYwM2Q2NjRkNTJkYzlkNmRiNSBsZWdhY3ktdHJ1bmsKKzIxMzM0IGIxNDUyMWZkOGUzOTE2MjFhMzFkMGZiZmNiMTM1ZmVkMWUxMWM4MGEgbGVnYWN5LXRydW5rCisyMTMzNSAyMGUzYTZlMTBjMjQ4ZmUwM2NjYmNkZjQ1MmNkN2Q3MDdhZjcwNWM1IGxlZ2FjeS10cnVuaworMjEzMzYgMjJmODVjNmE2NTIwYTY5NThiM2E5MTE4NWM4Y2Q5NWU1YjAyMzllYiBsZWdhY3ktdHJ1bmsKKzIxMzM3IDkzMjkwM2M3ZDA1NGIwMmJiODk3MGNlMmYyMjE0Zjk3MTI2MDE4ZWQgbGVnYWN5LXRydW5rCisyMTMzOCA5ODIxNjNjNGU5ZDJiZTBhMDMyZjZlNjE4NTFjODM4OWUwMjJiMzA5IGxlZ2FjeS10cnVuaworMjEzMzkgNjhjMTJkNTU1NmRmNzE2YmQwNDZjZGY4ODMxNTAwNzM0NjJmYWQ3YSBsZWdhY3ktdHJ1bmsKKzIxMzQwIDBmZjc2ZDc4MWQyYzYxMThkNjk4MjE5ODljNGRlNDk0OWIyNmYxZDIgcmVsZWFzZTIxLW1haW50CisyMTM0MSBmZjhlMTgzYWU1OGY5NDFlZTI2OTY2NTI2MTI0ZTQ0ZmNlMjRhOTVhIHJlbGVhc2UyMS1tYWludAorMjEzNDIgN2NkNmU1MTVmZDMwYTY5MTYxNzk0MWFjNmUxMWY0YTZiYTY0Y2NiNSByZWxlYXNlMjEtbWFpbnQKKzIxMzQzIDMxNDg0MmRjZDUyZTk0ZTc0MWVjNzljZTkyMmVhMmE2YWZlNzM4NzIgcmVsZWFzZTIxLW1haW50CisyMTM0NCA4OTNiYTFmMDM3OGExZjY0NGJjMDVhZDRjNDhiNjBiNDhmM2RkNzE0IHJlbGVhc2UyMS1tYWludAorMjEzNDUgNjdjODQxZDgyMWUwNzRhOWI3ZjRjZTcxNDAxYjU1ZDEzNTIyZDA1NyByZWxlYXNlMjEtbWFpbnQKKzIxMzQ2IDkwOTg0MTU5NzFkMDE3MDFiYzNmMmE5OWNjMjcyNDFkMjJiOWM3ODggcmVsZWFzZTIxLW1haW50CisyMTM0NyBiZTk2NzFlNjFmNGE2MDg2N2E0ZmYxMWQwMWE4YmVlYzJhZjdkMzBmIHJlbGVhc2UyMS1tYWludAorMjEzNDggM2E2YTJlNTlkZTAzYzM3MWZmMzlmODAyNjM4MjI5YWFkZjExNjliNSByZWxlYXNlMjEtbWFpbnQKKzIxMzQ5IGFjMDAyN2UyYjNiN2E0ZmQzZjJiMDA0ZjU1ZWU3NmUzY2U0OTViMjUgcmVsZWFzZTIxLW1haW50CisyMTM1MCBlODY1MGQ3NWU1YTQ1NGM4OGM1MDZkYjI2NTYyYjk1ZTRmMGI1MzA1IHJlbGVhc2UyMS1tYWludAorMjEzNTEgNzVjMWY5YzNmMGQxZjdiODMwNmE4NjczNWZjY2ExMDA5NjNjY2IyNyBsZWdhY3ktdHJ1bmsKKzIxMzUyIDljMmJjM2U0ZGY3MzgzNzFmYTk3NDBmODdkZTU5MjM2NDJjYTM4N2IgcmVsZWFzZTIxLW1haW50CisyMTM1MyBkNTJlNjM1ZTIwNWY4NzYzNDM0YWJlNzU4ODJlNDUzZTE5MDNiYTE3IHJlbGVhc2UyMS1tYWludAorMjEzNTQgNmNlYzc2MWRmMmMzNGFlMTk4YTU5NDM1ZjIzMjIzZGFiYjU2OWQ5YSByZWxlYXNlMjEtbWFpbnQKKzIxMzU1IGZhNGE3N2U0MjRkZGIzNWU4OTMxMTM3NDVmZWYyYjM4NTQyMDNlMDQgcmVsZWFzZTIxLW1haW50CisyMTM1NiAwNzFjOTU3MjIxZWNjNTlkODU1NDVhMjA5NjBjMmU3ZDUwMTZlMDk1IHJlbGVhc2UyMS1tYWludAorMjEzNTcgYzgyM2VjNDdkZjQ5NWU1OGNmMTczODUxM2YwMzA0NTdhZDc3ZTQwNSByZWxlYXNlMjEtbWFpbnQKKzIxMzU4IDFhYTU5MWU0MTgxNTQ1YzNiZGM4NTA5ODM0MWU1NDdjMjQ0MzU5NmYgcmVsZWFzZTIxLW1haW50CisyMTM1OSAxNDBjYjI0NmI4NjRhZWEwM2Y1YWI2N2UxZWEwNjg3MDc0NThlNzI3IHJlbGVhc2UyMS1tYWludAorMjEzNjAgMTU5YWJmYzhiMWJjNTFiZmM5MmQxNmEwYmRkNjhhMDU3NjUwOTRjZSByZWxlYXNlMjEtbWFpbnQKKzIxMzYxIDBjOTc4NzI4ZWJhZmVjODczMmQ4ODljNDNmMGVkYTdmNWM5ZmExMDMgcmVsZWFzZTIxLW1haW50CisyMTM2MiAwZDI4NzQzNDE0NGI1OWMyYzFlNzZmNGNiZDJjNDA1OTE3NzkwNzgwIHJlbGVhc2UyMS1tYWludAorMjEzNjMgY2RhNmNhOWRmZDU5MGQ0OWY4MTllMWZhN2NlMzc0NmE4YWE5OTVlZCBsZWdhY3ktdHJ1bmsKKzIxMzY0IDNiYTdhMzU4Y2UwMjg4NWFmNGQ1YTNiNWIyZWQ2NTgyNDhkM2U0OTMgbGVnYWN5LXRydW5rCisyMTM2NSBmYjM1YjNhMjI2MDQ2MjIxZjdiN2QzNGEyYjY2NWI0M2JhMzYyOTFhIGxlZ2FjeS10cnVuaworMjEzNjYgZTQyN2FmYjU2MzdmMDhjMWMyNDBlZmVhZTE5NTJiMzI5MDlhMGZkZSBsZWdhY3ktdHJ1bmsKKzIxMzY3IDkzYmRjNWVjZTFiZjY5ODdiNjE3Yjg5Y2FiNGNmMjU5YTZhZDc3YjAgbGVnYWN5LXRydW5rCisyMTM2OCBlNDUyN2Q0NWU5NDJkMWM5NWY2MjBlZTE5NjFiZDM1YjJiYWY4MzY2IGxlZ2FjeS10cnVuaworMjEzNjkgZjk5NWM0ZjI1MTIwMDhiM2E1YTY0Yzk5YzlkNGUzY2IzMmNmZmQ4NiBsZWdhY3ktdHJ1bmsKKzIxMzcwIGQwMTRiNTIyNjkwMGQ3MzMyMTE5YjY4ZmEzODdjYmVhYWM3YTIzNTIgbGVnYWN5LXRydW5rCisyMTM3MSBiZjkzNmM1Mjk2MzUzYzI2OTRjYTNlZmM1Y2RjNzAyMDM4MzRmYzlkIGxlZ2FjeS10cnVuaworMjEzNzIgNDlhY2M4YWM2MGMyMzI0MTVkOWJkNTdkYmNiZWI0NjIyMWI4N2JmNyBsZWdhY3ktdHJ1bmsKKzIxMzczIDQxMjQzY2I0ZWEwNWQ3NzcxMmE1NDZjODk2NDUxODA1NDU0ODRjNTYgbGVnYWN5LXRydW5rCisyMTM3NCA5NzZiMGFlNGY1MjdjMWExZTc1YzViNWFjNDM1MTIzMWRhZWJlZTEyIGRlc2NyLWJyYW5jaAorMjEzNzUgM2YwYmRkNGFlNjg0MDBmNjQ4ODdjMDg2NmMzM2I2NWEwMThkYjVhOSBkZXNjci1icmFuY2gKKzIxMzc2IDc1NGRlYjg2ODIwZTVmNWNhOGNmYmE2MGYyNGYyYTM5OTUwYzA2YmQgZGVzY3ItYnJhbmNoCisyMTM3NyA2Y2EzZGQ4MmNiMDdlZDQzNTVhYjViMjMyMmRhYWQ1OGI0ZDNmMDM3IGRlc2NyLWJyYW5jaAorMjEzNzggMDRhNjRkMmQ4YjJkMjA1Nzg5MDVjNTdkY2VjNDYzMGFkNDUyYjM1OCBkZXNjci1icmFuY2gKKzIxMzc5IDAyMjZkMDZlM2VmZjU5Mjc0OTBlYTdjZTY3NThjMDQ2YjlkNTc4ZmYgZGVzY3ItYnJhbmNoCisyMTM4MCA3ZWY2NjJhZWQ5ZGU0ZTBhNjdhNTljYzI0MzhjNjFhNzc1NzM1ODcwIGRlc2NyLWJyYW5jaAorMjEzODEgZjczMDI5YzcxYjBkZjA5ZWUwNzk1NTkyMTFiNGE0MDZhOTRlZjc3OSBkZXNjci1icmFuY2gKKzIxMzgyIDJkMGI2OWE2N2Y2OTRjNjViMzliNWYzN2UyZTBmMDliMjA4MTQzMDYgZGVzY3ItYnJhbmNoCisyMTM4MyA0MDVlYWJhMzZiMmZjODYyZWMyYmE3YTRkN2VhZjllYjI4Y2NhMjJmIGRlc2NyLWJyYW5jaAorMjEzODQgMjc4MzliYTdlYzIyZWQ0OWUyYzMxNGY5MTYzYWJkNjlhNTk0YmM1MyBkZXNjci1icmFuY2gKKzIxMzg1IDg1ZGI5ODlmNmE3M2M2Y2NjNTZhYzQzOWRiNjhiNGU4ZjVhOTMyYTIgbGVnYWN5LXRydW5rCisyMTM4NiA2YTE2MzAxMTc4MDUxNjdlYWI5YzA4ZDQ2Y2QzYTlmOTc0NTA4OGY3IGxlZ2FjeS10cnVuaworMjEzODcgNzk0NTgyZmMwNjIzZTNiOTU4NzdhZDhmZDVkZWFmMTUzNTIxY2IzMCBsZWdhY3ktdHJ1bmsKKzIxMzg4IGMyYTYwZGU5MWQyYzcxMzgxM2YzY2QyMjEyNzVlZThlMDI0ZWIwNTcgbGVnYWN5LXRydW5rCisyMTM4OSBlZGFkZmEyODM1OWY4NTI1MzAwZGFjYjQzMDQ0MDFhMGZkMjg5NDE3IGRlc2NyLWJyYW5jaAorMjEzOTAgNTg0NjkyMDJlZThkOGIxYjVjOTdkMWQ1ZDg1YmFlNmY0MDEyYWJjZiBkZXNjci1icmFuY2gKKzIxMzkxIGZlNjMzNTM0ZjQ0Nzg2Mzc1NDdhMjc0NzhiOWMzNjk2NjYzNTIxMzAgZGVzY3ItYnJhbmNoCisyMTM5MiBhMTJlYzg4NzY1MTVjMzdlNzYzOTZiNmFjNTdhYzU3NmQ3ZjQyZjk5IGRlc2NyLWJyYW5jaAorMjEzOTMgNTY2OGE4NTUwYmU0NTQ1YjRiZTRkMjE1M2NkODllMjk3M2JlNjk4MCBsZWdhY3ktdHJ1bmsKKzIxMzk0IGU5MGZjMzRkNzNkMDBmYTIyYTFiNTJhYWY1OTVhZDMzOTlhMjY4NjIgcmVsZWFzZTIxLW1haW50CisyMTM5NSBlOGRjNzMzODY3MDYyYTE0OWFhMTI3NzMyODBmOTU3YWI3NzRiYjM5IHJlbGVhc2UyMS1tYWludAorMjEzOTYgMGZkYzI3NzllOGQ0M2M0Y2Q3ZWZjMmIyNmI2YWNmZTMyOTlmNzBiMiBkZXNjci1icmFuY2gKKzIxMzk3IDhkYjk0MzY3ZmFlMWM4MDgwNzBiMWMxZmMyMTE5ZjU0MDA3YjU5ODUgZGVzY3ItYnJhbmNoCisyMTM5OCBiM2JhMGY0OGFkYzRjZTgwNWI1MTZlM2RmY2RmODdmYmNiMTQ0N2RkIGRlc2NyLWJyYW5jaAorMjEzOTkgMTE2NjAxMWE5Y2ZjYTk4MmUwMzAyODNkNTJmNjIzMmZlOWNiYmUwMSBkZXNjci1icmFuY2gKKzIxNDAwIGY3MGIyZDYzZjMwOWE4ZTI2MTFmNjUxYWI4MjdkYjY0OGEzNzY0MTAgbGVnYWN5LXRydW5rCisyMTQwMSBkMzJmZTQ4ZmJiOTY4ZDcwYzEwMGU2ZGViN2MyZWYzODc1MjkyYjIwIHJlbGVhc2UyMS1tYWludAorMjE0MDIgMjY0ZWQ1NWRlYzZlMWFkMzU0MTljZjlkZDBiYjEzNjQ2YjM0MDVhNyByZWxlYXNlMjEtbWFpbnQKKzIxNDAzIDQ0OWRhODU3ZGNlNTk0NDFhOTFmZDI3ZTIwZjdlMzNmZGRmNjU2ZjkgbGVnYWN5LXRydW5rCisyMTQwNCBjMDI5Yjc0MzMyZDJhYWZjYmJjMGNkODA3MWQ1NDJmYjZiMTE1YzU1IGRlc2NyLWJyYW5jaAorMjE0MDUgZDJjOTk2M2U0MjkxNTU1NjgxN2MxYmRjNmI2ZWI1OWQ3YTlkYTZjYSBkZXNjci1icmFuY2gKKzIxNDA2IDFkYTcyNGNlZTIyZDNmNjU1OWNkYmEwMWQxMjdlZGU5MWMwZDNiNzggZGVzY3ItYnJhbmNoCisyMTQwNyA1YTc4NDEzNDBkYzdjMWM5MzBkMWQ1OTg0MzVmMjI5Y2I4MjllODQ0IGRlc2NyLWJyYW5jaAorMjE0MDggMDhhMmMyZTc5NGVmZGU2Yzk0MWM4YTYxNTNmMTlmZjkxMWNiMzZlZiBkZXNjci1icmFuY2gKKzIxNDA5IDAyMDBjZDIyNDkyZWMyNjA5Y2YxNGZkNDA2MzA0MjM5OGNkMTJmZjIgbGVnYWN5LXRydW5rCisyMTQxMCA0YmFiOWVjZjNlMDVlMmY2NjhmZjBiZmZiMGZlZjEwNmE3YTlmYzU2IHJlbGVhc2UyMS1tYWludAorMjE0MTEgMTczMzA0MjljZGZlYjU4MDhiMDgxYjgzY2VlYjk3N2YyYzJmNDM1MSByZWxlYXNlMjEtbWFpbnQKKzIxNDEyIDc5OGI1ZTZiNDkxNWYwZGU5NGVhNjI4MzE5OTMxM2FhYjYzYTQyYmQgbGVnYWN5LXRydW5rCisyMTQxMyA1NTk2NTA0YWQ0OWFmYjBhNWNmYTAzNzU2N2M5ZWY2OWE0NWFjZjI2IGRlc2NyLWJyYW5jaAorMjE0MTQgZTU4Nzk5ZWVmYTM5NzgxYzAxYjg4ZGJjYWI5MjA0MTA3OWViOTFhNyBkZXNjci1icmFuY2gKKzIxNDE1IDI3Yjg2NjUxNGM5ZWJkY2ZkMmEwNjgwODUwN2U4NDM0MDA0MjQyMDIgbGVnYWN5LXRydW5rCisyMTQxNiAyNTEzYmMxZGIxMmZlZGFhNDMwOTgyYzI4ZjFiNTE4ZTU1MDVmOTRlIHJlbGVhc2UyMS1tYWludAorMjE0MTcgNTIwZTFmNDAxMDFhYTAxZDM4MWI0MjA4MDZhNDEzMzM1OTVmZDFiNiBkZXNjci1icmFuY2gKKzIxNDE4IDg5MzdkMjM0YjJhOGQ2NTJmYzk1YjYwM2UzYTUzZjI1NTA4NGQxYzkgZGVzY3ItYnJhbmNoCisyMTQxOSBjNjcyM2NkNTU0NThiMjQ4ZGE3ODBjNTFjMTJjNzEzYTA0Zjc4Y2FjIGRlc2NyLWJyYW5jaAorMjE0MjAgNjUwZjcwMDRlNmQzOWFhMzM2Mjc0NmQzZmE2ZDQwNDU0MTI3MWZmYyBkZXNjci1icmFuY2gKKzIxNDIxIDIzYmIzZjQ5Y2I5NDI0OTgzYmRiYWFmYzM5YmE5YTNmZjg4M2JkMDYgZGVzY3ItYnJhbmNoCisyMTQyMiA0NGE4N2MzMDBmMmJhNGYzYTBmODRjYjQzYTE4MjIxMzY2MzdiNjgxIGxlZ2FjeS10cnVuaworMjE0MjMgM2VkYTYyMzFlMWMyNTg0OTA4YTQ4MTQxYTBlMTdlMmZjODgyMmQzNCBsZWdhY3ktdHJ1bmsKKzIxNDI0IGQyM2Y5OTMxYjAzMzU5YTg1ZmNmMmMyOTdjOGUzM2ZmODIwODQ0NjcgZGVzY3ItYnJhbmNoCisyMTQyNSA0ZTI2YjQxZDJmM2RiY2I2ZTc0YzQ0ODgwYzcyNDVhYzJlZWM3YjFiIGRlc2NyLWJyYW5jaAorMjE0MjYgOWRlNjU2MDA0MjBiNjA3MTgzNDFmYmI5Y2FjMzRlNzM2MmY2N2Q2YSBkZXNjci1icmFuY2gKKzIxNDI3IDljNThkZGM0NzE5NWFkODMzMTE4MWU5ZTk3MjRkNjMwZmI2YTYwYmMgbGVnYWN5LXRydW5rCisyMTQyOCBiZTA5NmJiNGUzZjIyN2E3NDQ0MzNhMzQyYjJkMzVkZDY3NDUzZTlmIGxlZ2FjeS10cnVuaworMjE0MjkgOTg1NTZjZGZlNzE2OTRlYjVjMGVhOGI3MDMwNmVjY2IwMDljMTAyNSBsZWdhY3ktdHJ1bmsKKzIxNDMwIGE4MGUwZDM5ZjEwYjI3ZmE4YWQ0ZTk1MWM2MGRhM2QwMjkyYWI0NDQgbGVnYWN5LXRydW5rCisyMTQzMSBmYTNhNDIwN2Q5NTcwODQ3NTJjZDVhZDNkM2NmOTJjNTEwMDU5ODEzIHJlbGVhc2UyMS1tYWludAorMjE0MzIgNTY2NTJlNjg0NzM3YjlkYjJmYzUyZTBkZTBkZjUzZmJjMmZhY2M1YyBsZWdhY3ktdHJ1bmsKKzIxNDMzIDkwMzIxMjYxMjc3MTI5MGE0OWY2MDdiNjYyNGIyNWE0ZjJjZDk3N2EgbGVnYWN5LXRydW5rCisyMTQzNCAxMTczNzFhZjU0NGIwOTBhNTQwOGIzMDAyYjVhNzI5YmZlNGJlZGQ3IHJlbGVhc2UyMS1tYWludAorMjE0MzUgY2FhOGZmYzNjZDFjNzBlMDdiNzY3ZjQ0MmU1MTZlMTAyM2JmNTdlNSByZWxlYXNlMjEtbWFpbnQKKzIxNDM2IDc3ZjQxNjM4NzkyMmVhNzgxOGIyNjQ1ZmE4MzNiYTJmZDE4NDNjNGYgbGVnYWN5LXRydW5rCisyMTQzNyBjMDI4ODY3MDIzMGU5MzI1YmY0NjNlNDZlMjkzNzhlYjAwNzljM2JlIGxlZ2FjeS10cnVuaworMjE0MzggMmUxYWRiZTg5ZTRhNTg0NDFlYjdlMTI5YmJhYzgyNTBlZjYyNjVjYyBsZWdhY3ktdHJ1bmsKKzIxNDM5IDgxMTg0MmRhY2QzOWUxZTljNzk5MWUxYjlmNDA1N2RiY2YzMGY2NTggcmVsZWFzZTIxLW1haW50CisyMTQ0MCA0NTFjMGFiYmY4YTlmNTQ1MjhlMWMwYmQ5NWYxMTVkNTRjYzM3YWM3IGxlZ2FjeS10cnVuaworMjE0NDEgZWFhYmNhMTMxNzRlMDNmYzRkZjY5ZWEyYjJjOWNiNWE5MzIwMWNiNCBsZWdhY3ktdHJ1bmsKKzIxNDQyIDNmZGUxZDIwMzMxZWFmNjFkZjEwZDAzMjQyYWY1NzNiMTZmZDEyZWUgZGVzY3ItYnJhbmNoCisyMTQ0MyA0NzJlZjY4MzE4YThiZjhmZDI3MTkyMDNhYzkzMjNlZDlhODE1NDFjIGxlZ2FjeS10cnVuaworMjE0NDQgNGQzN2I3MmFlMmQyNjA0MDA1NjZjNmMxMjEwNTU4NDQxNDNkZjQwNSBkZXNjci1icmFuY2gKKzIxNDQ1IGYyNGVjMjNjZDQ3ZWRmZjc2YjQyZDJiNjhhZjI2OWM4MDgxZGUzNDYgbGVnYWN5LXRydW5rCisyMTQ0NiBjNzZkYWQwNjQ2MWI4ODg0MDIwNzEwM2FmYjNkZDg3YTcyZWE1MjkwIGxlZ2FjeS10cnVuaworMjE0NDcgZmJlMGRlZDVlNGMxYmYwMjkxZTQ3ZGIzOWMyNGMyNTNjZDQ3YjE5YSByZWxlYXNlMjEtbWFpbnQKKzIxNDQ4IGZiOTZhNzhlNzJhYzZmNTQ4N2QyODNjNjUzYjQ1NzMyN2I4ZWQ5NTQgZGVzY3ItYnJhbmNoCisyMTQ0OSA3NjQ0OTJhOGY2YTc1OTM3M2U2YWJlMTM0YzVjOWUxNTVhMjA3ODdjIGRlc2NyLWJyYW5jaAorMjE0NTAgZTNlYWMyMWUxZDMwNGJjMzc2YzM3MWQ0OWZlNmUzMTE2OGI2NzVkZSBkZXNjci1icmFuY2gKKzIxNDUxIDlkNmQxMTE2YmYyY2NlOGM0MzI5ZDkwOWFlNTg2NmJkNGFiZjE3YWIgZGVzY3ItYnJhbmNoCisyMTQ1MiAxNjk0YWI4N2YxZDdjMzMzOTVlOTkzYWJkYmFlYjI2MmI4NDcyMTVjIGRlc2NyLWJyYW5jaAorMjE0NTMgZjM5OWU2YmM1MGFmZDVmM2RlNDIyNGUxODFkNTNkNzRmNGE0NTYxMCBkZXNjci1icmFuY2gKKzIxNDU0IDAxYjkyMGVhNTJmMTZmZGVkNDU3OTA3NWI1OWM3NmY4NzZmYTE3ZjkgZGVzY3ItYnJhbmNoCisyMTQ1NSAyZTMxNjY1YmJkYzI1NTMxNDg5ZTA2M2I1NWM5YjJhNjljYzkwMDQwIGRlc2NyLWJyYW5jaAorMjE0NTYgYmZlZDIxMjNiMTRkN2M0NTA2Nzk2ZTBjYjI5ODMxMmVmZDg3Mzk5MCBkZXNjci1icmFuY2gKKzIxNDU3IDBiZDY3YzhhOTY5ZTA1MThkYTk4OTRjMjdmYTBkYzBmMjhiNjM5MDMgbGVnYWN5LXRydW5rCisyMTQ1OCBiNjFmM2I2Y2UxZmY5MGQyNDNjODZlYjEzZjcyNGRkNDY0NTQyMDM3IGxlZ2FjeS10cnVuaworMjE0NTkgM2IyOTVjZTI3MDVmNjdhYzZmMTJiNTRhYzJkZDYxMmVjMWE2NzkxMSBsZWdhY3ktdHJ1bmsKKzIxNDYwIGUxMDBjMDVkNDQ0ZWU5MDE2NWNjOWQzY2YwOWJhZWQzZTkwZmUxNDQgZGVzY3ItYnJhbmNoCisyMTQ2MSAyNGEwZjg0YWQ3NDY1ZTdiMjEzMGNlZjMyNGI0MGRkYjU3YjEyMDVhIGRlc2NyLWJyYW5jaAorMjE0NjIgMzM4YWFhMTRjNGU1YWVlYmUzMWE3ZmFmODgzNmZhMTQ5YzBlOGRhZSBkZXNjci1icmFuY2gKKzIxNDYzIGIyMWU3MGM2ZDA5ZDRhMzAzN2Y1OTI1OGRmZTUwOGE4MTllZmZlZTEgZGVzY3ItYnJhbmNoCisyMTQ2NCA2MzBjODZkMzMzMGJkNDk3Y2E2MmU0N2ViNWYwNzk3ZjYyZjk3MTc5IGxlZ2FjeS10cnVuaworMjE0NjUgYmFmMDRjZGY2NWEzMDBkZTZhNDQ2M2UyZTJkYmEwMTE2MTFiMWViNyBsZWdhY3ktdHJ1bmsKKzIxNDY3IGZkYzNiMTYyMTVjNzVmMzJkYTJkMDczZGUyYjI5ZmE3YjFiNWI3NzggcmVsZWFzZTIxLW1haW50CisyMTQ2OCBmNjkyNWFkMmQxOTExYjM4ZTg3MjdlOTIzYjBkNDM1YjcyNGUxNzMyIGxlZ2FjeS10cnVuaworMjE0NjkgNDBkMTlmOTA3ZTEyMDE1NDYwMDhlOTU5OWQyMjI1MzA4NmYwNWE1MSBsZWdhY3ktdHJ1bmsKKzIxNDcwIGQxYzYwYjA3MjE3ZjhjNjJkZjY0OGE1ZGE2MWZjZGMzMTU2NmY4YTIgbGVnYWN5LXRydW5rCisyMTQ3MSBkYzc0ODIzYjQ5ZWE1NzBkZWM0ZDk5YWZkNmEyN2ExZDIyZjgzOWM3IGxlZ2FjeS10cnVuaworMjE0NzIgZjZiM2E3YTkwZDgzZmMwYmEwMjRlMDNhMGMxYjNkNTNmYjliYTIwZSBsZWdhY3ktdHJ1bmsKKzIxNDczIDA4MDEwMDY0NzM5NmM4ZDAzNGZjNmUzMDZkNzdmNDhlMGNiNTUxYmQgbGVnYWN5LXRydW5rCisyMTQ3NCA5NWUzOTQ3Y2EzY2VhMTk0NTA4NzhmZDhiNWQ3NWQ4NjZkNDQxNWRjIGxlZ2FjeS10cnVuaworMjE0NzUgODM0NzkyNTIzMDk0ODkxMjJmOGU4OTAyOTk1ZjRlOWE2Y2RlYjVkMyBsZWdhY3ktdHJ1bmsKKzIxNDc2IDhjZGZmNTQ1Y2JkZTUwZTI5NTZmZjBlMWY2NmQzNTZkYTMxNWUxODYgbGVnYWN5LXRydW5rCisyMTQ3NyA5YzZhOGRjZDcyMmQ1NTUzMTA2YWFhYzlmNTc3Yzc5ZTliZTJkMmEwIGxlZ2FjeS10cnVuaworMjE0NzggMDYzMzJiM2M0MzM1ZDQzMzAwYjJkNDQyZTJlNzE3MjBhM2ZjY2ZmMyBsZWdhY3ktdHJ1bmsKKzIxNDc5IDYxMzVjMTJlODQ0ODY3MmIxM2RjNGJjOGY0YjhiMGZlM2QzMzU2YjUgbGVnYWN5LXRydW5rCisyMTQ4MCAxZTAyZTIwMTRlMzZhNDA5ZDQ2NTZjY2JjZTdkYzVlZDVlYWY4ZDBkIGxlZ2FjeS10cnVuaworMjE0ODEgYWFkZDk5ODMwNTMxYWY1MDY1MzhhMWQ5ZTA5OGE1Mzg1MGE5MzA4MCBsZWdhY3ktdHJ1bmsKKzIxNDgyIDc0YjNjNGUzZjQ4NjExMGE0OGFhM2ExYTg3YjMyYzMxYTc1MDE4NzYgbGVnYWN5LXRydW5rCisyMTQ4MyBmODBmNmU5MjI4ZGU2ZGU0M2YwMGE5ZGQ2ZTY4YzY0YzY2NTIzNmQxIGxlZ2FjeS10cnVuaworMjE0ODQgMTE2NTMyMTQxYWRlZTM4MDQzODQzODgwNDgxNTc1ZmYxZmRmOTMwMiBsZWdhY3ktdHJ1bmsKKzIxNDg1IDFkMGQzZTZhMzIwMWEwMTM2NzVmNWQ0YzJkNDE3ZjFlM2U4MTU2YzMgbGVnYWN5LXRydW5rCisyMTQ4NiA3MjZlNWYyY2QzNmVkMGQ3ZGViYTgzOTBlOGU5NDY5ZDhjNDc4Y2Y3IGRlc2NyLWJyYW5jaAorMjE0ODcgN2RlNWMzNzYyMzJjYjRhMzgwNjYxOTdjYzUwMzllYzMxYzVjYjY3NSBsZWdhY3ktdHJ1bmsKKzIxNDg4IDgyNGQ2MTExM2E3MTIyMGNjOTMzY2YyZjg1ZTg0M2Q1NTgzZTgzNzMgbGVnYWN5LXRydW5rCisyMTQ4OSBjODY2MjU0M2NhNmE2ODVkNDE2N2U4ZGM3Y2RjM2QwMDJkZmVjMzYxIHJlbGVhc2UyMS1tYWludAorMjE0OTAgY2FkYzE4OTQyYTM0NDU3OTExZmVkNjNiZjg4MzY5OWI2Mzc4YWE3NyBsZWdhY3ktdHJ1bmsKKzIxNDkxIDdmODNlZTM3OTdhMjY0NjZkZmY0Yzk5M2Y1NWYwNzg1M2MxMDg5ZjkgbGVnYWN5LXRydW5rCisyMTQ5MiA3YjAzYzE1MDc1NGEwOWQ0MmZjOWNhNWY4NjAzZDFjZjQyMTRhMzFmIGxlZ2FjeS10cnVuaworMjE0OTQgYWZkYTVmZmY1MDI3MWJkNDJjNGMwNmNmMTlhZDU1YjIzYzJhNTkzMiByZWxlYXNlMjEtbWFpbnQKKzIxNDk1IDgyZjk1MjRjYzg0NDEyYWFiNDEzMjQwNzg3NTYwNTljMjAwMTg1YzggZGVzY3ItYnJhbmNoCisyMTQ5NiBiNGFmMDkxZTMxYzRhNDYxNzNmNGNmNDcyMjk0M2Y1OWU5N2IwZDk2IGRlc2NyLWJyYW5jaAorMjE0OTcgMmU2ZmI2ZTY0MjhmYTA5N2RjZjVlMmI2OGI1OTk5OWMwOThiMDdhNCBkZXNjci1icmFuY2gKKzIxNDk4IGQ5NGY4YjMyMTNlOGNkZmVkZTU5NTA1MzBmYjA2NDExZGM0ZjdjZjkgZGVzY3ItYnJhbmNoCisyMTQ5OSBhNDU3NzYyNzBjOGUxMWFjYzgyOGE4NjRkOTllYzkyMzBjZGZiYWIzIGRlc2NyLWJyYW5jaAorMjE1MDAgMjMyMDhmMzAyN2Y2ODMxYTNjYjk0ODNlYWQxODgxYjlhODhkMzZhMiBkZXNjci1icmFuY2gKKzIxNTAxIGEzMTg5MWNiYWQ0NDI3YjQ4NzJjODJhY2MxMTYyNGFlMDAwMGE0YjggZGVzY3ItYnJhbmNoCisyMTUwMiA2OWI4OGQzNGU3MjJkZTlmMjg2NzgwMWExNzZjN2UyNDJmNjYzNjkwIGRlc2NyLWJyYW5jaAorMjE1MDMgNDdiYjA2MDIzZTgwNTkzYTk0Nzg4Y2QyYzcyNDVjNTYxZWI2NTIxZSBsZWdhY3ktdHJ1bmsKKzIxNTA0IGY0MDMyYmVkNDcwZjM4ZjJkZmYwODIyMGMwM2UxYmQ2OGJkZjg1ZTcgZGVzY3ItYnJhbmNoCisyMTUwNSBjNWU0NjYzNGM3ZDk3OGU0NzFiZTg3ZTRhODUyYjE2Y2UxNmIwY2Q2IGRlc2NyLWJyYW5jaAorMjE1MDYgNTNkNGU3MmJiNDQzYjBiMzU4YjgxMDZjNTI0Yjg3ZjUyMzY2N2UwOSBkZXNjci1icmFuY2gKKzIxNTA3IGZmODFlNzM1ZTE4NGZlMzUxZWRmOWY3M2RmYWRkMjYyNDVmOTJlYjcgZGVzY3ItYnJhbmNoCisyMTUwOCAyMzkyNzY2NGM3Mjk1ZTg2ZWY2M2FhM2UzMzc4Y2FkMDIyYzViMmE3IGRlc2NyLWJyYW5jaAorMjE1MDkgZWI4MGI0OWM3YjE1ZmZjNmQ2ZGE1Zjg3MTE0YWZhMmIwZDAwZTIzOCBkZXNjci1icmFuY2gKKzIxNTEwIGU2ZGVmZTI0Y2U4NTU2NWQ4ZDAwOGYxOWUwMTEwNzRhMzQ2NzA5MGUgbGVnYWN5LXRydW5rCisyMTUxMSBiNjg5NDBjZjIwMTcyMTA0YjhhM2NiMDZjMjU3YjA2YTY1OTNiN2EwIHJlbGVhc2UyMS1tYWludAorMjE1MTIgMTE2NWQzZjdlYWYzY2E1ZmQwNGU3ZGRhMjY4ZmYxY2VkZWUzNTMwZCBsZWdhY3ktdHJ1bmsKKzIxNTEzIDk1MTI3NDdhZmU5ZTk0MmE3OWM0NDljY2M3MTZhOTgyZjY0MGY4YjcgcmVsZWFzZTIxLW1haW50CisyMTUxNCA1NjgyZjk2ZjI1ZGUyNDM4OWExYTlkZTgwZjZhNGFjN2RiZmQ2ZDQxIGxlZ2FjeS10cnVuaworMjE1MTUgMjgzNmIyNjg2MTgwNmM2OTU1NTRhMGE5NDBkMmFlZTM5OGI3MjQ5MCBsZWdhY3ktdHJ1bmsKKzIxNTE2IGZjMTY4MGZjOWQyMzY4OWNjMjQxM2VlZDc4ZTNhN2Y5Y2NhYWU4OTkgcmVsZWFzZTIxLW1haW50CisyMTUxOCBiY2JiYzUxZjBiYjNkOTZjYmEzYzY1YzU0NWZhMmMzZGFhZjVmZDI5IGRlc2NyLWJyYW5jaAorMjE1MTkgYjBmOTg0NzU5MTdkNGU1ZTEwMDRhYjVjMjViNDliMTU3Yjg2ZjAwNSBkZXNjci1icmFuY2gKKzIxNTIwIDM3ZDlkMmE3Y2E1MGRmYWJjOWMwYjI4MjU5YTFlNzgzNDBhZTExYmMgZGVzY3ItYnJhbmNoCisyMTUyMSBlZWIyZTc3YzViYWQyYWEyZDZjOWQwYWUwMTVkOTk1NjM2NmEzNjE0IGxlZ2FjeS10cnVuaworMjE1MjIgN2FiMDlmYmI4NjlhMGU1Yzc5ZmYzOGQ0ZGU0NzhlYzYxNmExMWM1ZiBkZXNjci1icmFuY2gKKzIxNTIzIGEyOWJlZjQ1N2VkOGYwMmJjY2M1MDU0NjUwODg0MDg3ZTJhOWIwZjEgbGVnYWN5LXRydW5rCisyMTUyNCBjMWU0MTNlZjk4MTc3NjUxNGNkNzZkNmVmZjJhOGU0MDM5MTdmMDkyIGxlZ2FjeS10cnVuaworMjE1MjUgZGZjYzAzOGMyZDRjYTY5OThmZTE0YzQzOGIwNzA5MWU4ZGUxZTZjNSBsZWdhY3ktdHJ1bmsKKzIxNTI2IGQ4NDE0ZjUxZDRmNThlZjc5YzM2YmRjYzM0MTc2NmNhOTNkNzY2MzQgbGVnYWN5LXRydW5rCisyMTUyNyAzM2I0MzU3YWViYjhjM2IxYjJiYjMzYzk2MzdmZGMzMjBmYzI0OTZhIGxlZ2FjeS10cnVuaworMjE1MjggNGU1ZTk3N2JkM2UyYTc0MGYyNTQzMTk2ZmNmNGViYjRkN2NjNzkxMyBsZWdhY3ktdHJ1bmsKKzIxNTI5IDA5MjM1YmU3NDY0OTM3NTE4NjExMWI2MzAwODRjYTZmZTNmMDM5OWQgbGVnYWN5LXRydW5rCisyMTUzMCBkNTZlY2FlNTdlMGMyNTI5M2Q5ZTY2Nzk2ZDFkOWFiY2Q5NTkxMjBiIGxlZ2FjeS10cnVuaworMjE1MzEgYjZjZWJiZWIwN2QxYjI5MjI0ZWE2YmU0MDZlMmVkZjY4M2E0YWRiYSBsZWdhY3ktdHJ1bmsKKzIxNTMyIGY4M2JkZDA3NTM2MWIxZjk4YTI1MzQxMjBmNDQyODA2MzU4MzA0NWEgZGVzY3ItYnJhbmNoCisyMTUzMyA5ZjAxM2QxM2EyOGIxZGFmMTg1ZjI5ZWM1YzFiNWE5YmZiZGVmZWRiIGRlc2NyLWJyYW5jaAorMjE1MzQgYjQ0MTFkZTAxNjYyZjdmOTI0NThmM2Y0OGJkNDUyOTk2MDFmOGVhZCBsZWdhY3ktdHJ1bmsKKzIxNTM1IDc2MzYwYWZkYjk3MDI3ZjAzZmFmNjY5NzJlMzU2OTA2YzgyNjBiMmEgZGVzY3ItYnJhbmNoCisyMTUzNiBmYTFlODhlYjE5OTRhNmJkZDJiMDFkMGJkOTFjYzUyMTdlYTZiNDQ4IGRlc2NyLWJyYW5jaAorMjE1MzcgMTQxN2NmNDcwYWU5ZTVkZjQ3MTg5ZTU2NjhlMmE3YjgxZTIwMDE4ZSBkZXNjci1icmFuY2gKKzIxNTM4IGQyZWIyMzYzNmNjNjI3ZWM5OTU1MmRmNDgwZWQ5M2Q2MzdkM2JmNjUgZGVzY3ItYnJhbmNoCisyMTUzOSA0NjgyNWVkMjM1MjhhMmMzYmEwMGJmZGU5MjJlYzc5OGNkNWExMTIwIGxlZ2FjeS10cnVuaworMjE1NDAgZjMxNWY1Njc0Yjk1ZjYyYmE2MzI5MjZhODkyZDBlZjFhMjc5NTFkNiBsZWdhY3ktdHJ1bmsKKzIxNTQxIGE5NzMzNDk3MWE4MTg2YjRhNzljNDQ4MDg2ZDE2MGFlMTgzYmZhOGUgbGVnYWN5LXRydW5rCisyMTU0MiAyZmQxMzc3ZWM0OGMwZDJiMWE2YjNjMTMwYjc5MzU4YWM5NzM3ZjExIGxlZ2FjeS10cnVuaworMjE1NDMgYTgzZmY3NzM5OTkyOWY1Y2ZmY2RhYjEzZWYwYmQ5ZmY3NzFlNjgwMSBsZWdhY3ktdHJ1bmsKKzIxNTQ0IDZhNWVmMTk5NDE1MzZlMWJkNGQyOTU1OWUzZGM1ZTRlNGIxYjkyZTIgbGVnYWN5LXRydW5rCisyMTU0NSA5OWM4YjViMGM4OTYzODQ1OGFiN2JiNjU4ODMzNWZjZmM4NzY5YWE1IGxlZ2FjeS10cnVuaworMjE1NDYgOWMzNTRlNjlhNDg5ZTg1OTFiYmM2ZTUyMWFhMDhmZjIzZDllNDljMCBsZWdhY3ktdHJ1bmsKKzIxNTQ3IDBiNDA2MWVlYzY4ZTAzOThjMGJiYzNmNWJkYjVmN2MxOGM4ZWNkNTUgbGVnYWN5LXRydW5rCisyMTU0OCA0NTkxNzMyMzc5MTUwM2Q4Y2E3Njk3MDZhYTA0ZTU1ZDhkNGY0OTE3IGxlZ2FjeS10cnVuaworMjE1NDkgNzFmMTYxZThhMWQ3MTY4NjdlOGQ4MTFlMjdkMWExYzg2NWFlZjY5MCBsZWdhY3ktdHJ1bmsKKzIxNTUwIDQwZTBmNWEzMzJlOTBhNjZhZTA0MGRkYWNiZGI0ZjFjNDhiOTMyZWQgZGVzY3ItYnJhbmNoCisyMTU1MSBkOTA1MmNkOWUwYTc2M2UxYzE5NzQ2YTkzOGFhZWVjYmIzZDExYjU1IGRlc2NyLWJyYW5jaAorMjE1NTIgZjA0YTFkZGQ3NDFhMzQ4NjU0ZWI3MDM5NzJjYmUxZTk3M2ZlM2NlMCBkZXNjci1icmFuY2gKKzIxNTUzIGJhOGE1NjJiZTM4MzU4Y2Y1ZDRlOTEyMzA0Y2RlMGI5ZDg2NmI0MTYgZGVzY3ItYnJhbmNoCisyMTU1NCA2YTVmZTFhOTQzY2NkNWMxNWQ1NWRlZTAwZjZlNzc1ZWRhYmY3MTA0IGRlc2NyLWJyYW5jaAorMjE1NTUgZWFjYjc4ZDljYjhlZGIwY2NmN2FiZmU0NTlhOTA5NDIzMjYyYmM1ZiBkZXNjci1icmFuY2gKKzIxNTU2IDY2MzcwMTZkZjZlMjhmNjZmOTQyNmYxZWFjMjA3ZmU1MjIzYzkyNDAgZGVzY3ItYnJhbmNoCisyMTU1NyAxNzNiYzcyNGQxMTBlMjk4MDM2MWYzZGY4MTk4YzY0NDA4ZWQyNjlhIGRlc2NyLWJyYW5jaAorMjE1NTggM2RhZTI1MWI1ZGY1YTMyNzVkY2FmNzYxNTk5YmExMWQyYThkMjM0OSBkZXNjci1icmFuY2gKKzIxNTU5IDVjOTc2OTAxNjczZTVkMDZmNDJkNTQ5YWQ2MTQyMDQxZjE2M2M2ZTMgbGVnYWN5LXRydW5rCisyMTU2MCBmN2RlOWUwNDg3Y2YxNGMyZTE0NDYyNDU0ZTFkYjRiMDFmMDZiNmIwIGRlc2NyLWJyYW5jaAorMjE1NjEgODhlZTk2NjVkZTA1NDNkYmZmNjNlYjMwNjVjZTE2NTM3MDRhN2FiOSBkZXNjci1icmFuY2gKKzIxNTYyIGY3ZjA3NmJmY2FlOWM4YzJkMjhlMzlmNmQ3MjBlY2I5MTI3OTUyYmUgbGVnYWN5LXRydW5rCisyMTU2MyBiNjZhNjUyZTNjM2ZlN2I4YTcxZjAzZWQ0NzJhNTEyM2NkYzFmZGViIGRlc2NyLWJyYW5jaAorMjE1NjQgYWE3NmMxN2E1ZjA4Y2Q5OTlmODg5MTg4YWI4N2M3ZGExMDYwY2RiZCBkZXNjci1icmFuY2gKKzIxNTY1IGRlODU2MGM2OGM2ZmRjZDY2NzFhNTY0OGZkOWVjOWUwYjlmYjU0NGQgZGVzY3ItYnJhbmNoCisyMTU2NiBlOGM2NjFkZjMwMzgxNGFlZDljY2Y2ODM3NTE2Y2M4YmFlNTY1NzNhIGRlc2NyLWJyYW5jaAorMjE1NjcgYzE1YWNmMmUwMTEwOGNhZDNiZjIzNjNmYTUyYzNkNTNjNjZkNWUyZCBkZXNjci1icmFuY2gKKzIxNTY4IGViMDRhMDU2NGE4MTg2MDdiMTA5ZDc0YjA4ZjQ3NDRhMjM2OGMyZGYgbGVnYWN5LXRydW5rCisyMTU2OSA5NjUzMjcyZjAzNmY0MGEzMzY4MWVlZTE3NTI2NGRkODExYWQ1ZmQ5IGxlZ2FjeS10cnVuaworMjE1NzAgNjg0YjAwOTkwMzJkNDYyYzhhMmEzYWU5YjYzMzM1NjBlYTAxNTlhYyByZWxlYXNlMjEtbWFpbnQKKzIxNTcxIDA1YzQ5MzQ2YjY4YjhkZjZlOTA2MmFiMjlkZTE0MmJjYTRlZjg3MmIgbGVnYWN5LXRydW5rCisyMTU3MiAzMTExOWQwYTE4ZTZmYzI5M2YwOThkOWZmMTM4N2Q2OGRiMGVjMDk0IGxlZ2FjeS10cnVuaworMjE1NzMgMTAzMDI4NzI1MjUzYjM4N2Q3M2VlYjRlMjk1MGVlZDI2OWE2YTJhZiBsZWdhY3ktdHJ1bmsKKzIxNTc0IDUxYzUwMWM2ODYwOGM1M2FmMDY3ZDliYjFlYzZjM2FkYmMzMWU5ZDUgZGVzY3ItYnJhbmNoCisyMTU3NSA2NWM5Mjg3YWJmODViYTg4ZTAwOTdlNmYyOGRmZWFiOGYwOWI4YjM0IGxlZ2FjeS10cnVuaworMjE1NzYgZWU3YTg2Zjg3MzgzNWZjNTdiNmJkMTM3MjE2MDIzZDQxN2FiODlmZCBkZXNjci1icmFuY2gKKzIxNTc3IGE0ZmJjMmYwMTM5YTgyZDdlZDdiMmQ1NjhlNmE4YWEzZDY2MTk0YjQgbGVnYWN5LXRydW5rCisyMTU3OCA5YzA0ZTIzZjhkNDNiMzkxODZlMjM0NGE1ZGQyN2Q2MTYwZTQ1YmViIGxlZ2FjeS10cnVuaworMjE1NzkgZDQ1YWI3MTQ2YjM3Y2Y4NzY4ZDQwZmQ1OTdlZGI2OWQ5MWJkNTdkZSBsZWdhY3ktdHJ1bmsKKzIxNTgwIDZkYTg2MjMzOWEwZTk5ZGI1ZDk3ZTVkMzYxNDNhYjhlMzVjNjc3OTMgcmVsZWFzZTIxLW1haW50CisyMTU4MSAyOTMzYWU0OTIxNmYyNjM4MmMyYWY1MDI3YjlkYmY2ZDRlNjI0OTJmIGxlZ2FjeS10cnVuaworMjE1ODIgY2EyZWE3NWRmM2YyNTJiMDcyODg2MTM2YTMzYmZiODg2NTc5YjM2MiBsZWdhY3ktdHJ1bmsKKzIxNTgzIDk0NmI4MTZhZDVjYjhmZGY4M2Q3MjViY2JjNmMyODdkMmQ2ZjM5OWIgcmVsZWFzZTIxLW1haW50CisyMTU4NCA5YWQ0ZGI5N2UyZDliNmVkMjkxMDkzNzkxZWNiY2M5NDI3ODI3NjljIGxlZ2FjeS10cnVuaworMjE1ODUgZDRmYjk0MTUzYjMwODIwOWU1ZjliMGM3MTg5ODZmY2VmNTRmYzZkNCByZWxlYXNlMjEtbWFpbnQKKzIxNTg2IGZiY2NmMThhYTU3YmZlYjBjM2Q3ZmUwYTE3ZTQ4NDljMzA1N2EyZjUgcmVsZWFzZTIxLW1haW50CisyMTU4NyBhNzhmNGJkNTllMTBhMGIzZWYzZDNkZTMwZGVlYzg0MDQwMzY5YjM0IGRlc2NyLWJyYW5jaAorMjE1ODggYWJjNGEzYjdkMThlMDFjNzkxYjE4YWZmMDFkMDA3YjkwNDRhMmNkZiBkZXNjci1icmFuY2gKKzIxNTg5IDJmMWI0Y2RjYmIwNmM0NDIyMjliYjYyZmVkYTczNDY4NTk1YTU4ZTkgbGVnYWN5LXRydW5rCisyMTU5MCBlNzhhNTEyNjhjODFkZmM3NTcwN2ZiYjcwNGEyNDk5MjcwNzdjOGQ2IGxlZ2FjeS10cnVuaworMjE1OTEgOGMzODQ0OWRmNzQ2MDk0MTFjMTM0YTRiZGJiYjQwNzVjM2JlY2EwOSBkZXNjci1icmFuY2gKKzIxNTkyIGZlZTViNTcxN2RiYmI4OTBkNGY5NGFkN2RiMGRjM2VkOWJmM2NiNTIgbGVnYWN5LXRydW5rCisyMTU5MyBjNmQ4NjQ1ZDRjODg1ZmZmOTlhMDMyODliNmI4ZTRmZThkYWM1NjE5IGxlZ2FjeS10cnVuaworMjE1OTQgNzBhZjRhMTczYTk1NjRmMDg4MDllNjk2NzI3MDJmZDZlM2E3ZjljYiBsZWdhY3ktdHJ1bmsKKzIxNTk1IGNiMmVhZjQ1NzM4NmI3ODY5MDE0NDQ3ODdlNDUyN2Q2MDkyMGI1ODcgbGVnYWN5LXRydW5rCisyMTU5NiA2YjkzMWJmNmJkZjY3ZjliN2U4ODY5Mzg3YzBmNGU5NjZkOTBhODYyIGxlZ2FjeS10cnVuaworMjE1OTcgY2Y4MTQ5Y2VkY2NkMjFhZjJlZjZjNDI2MTI4NmM2ZTRkY2JkZWNmYiBsZWdhY3ktdHJ1bmsKKzIxNTk4IDAwOTM0ZDYyZTc4MTY3MjMyZGMzNWE4YjY5NTEyZmRlNmY1NWRlZWEgbGVnYWN5LXRydW5rCisyMTU5OSAzZGI5MjFmM2VkZTBiYTU1YzhiNjE5NmQ1Mjc0ZjQ5Y2JiMTdmMGFlIGxlZ2FjeS10cnVuaworMjE2MDAgZWQwZjBkOTY3NTBjZGU2NTY2NDk0ZTU2YWM4MTg0NDUwMWI3YWQwMSBsZWdhY3ktdHJ1bmsKKzIxNjAxIDkzOWJiYzUxY2QyMTkzZDJkYzIxZDM0NTQ1Njc4ODkzMjI3NzM0ZTIgbGVnYWN5LXRydW5rCisyMTYwMiBjMWE1ZTUxNzU5MDdiMTI2MWQ2NGI5NmE1YzJiY2QzYTM2ZTA4ZDQzIGxlZ2FjeS10cnVuaworMjE2MDMgY2RhMTYzODNiYzZiYWEyZWJkNzVlNGU5NGJlNWM3NTY5NzhjYzdjMiBkZXNjci1icmFuY2gKKzIxNjA0IDNiMTNiMjY5NWI3YTZiNzYwM2EyYmE0ZGQ3ZmRlOGFjY2NhZmYzZTcgZGVzY3ItYnJhbmNoCisyMTYwNSBiNzNlMWY0MjJlYThiZmFhM2IyNGM2MjdjYWRlNzYwMmI3ZGQyM2MzIHB5LWN2cy12ZW5kb3ItYnJhbmNoCisyMTYwNiA0MDRjNjBlMDAzNDQ3MDY3M2I5MTJjZTEyY2NjMGQxMGIwYmYyZjlmIHB5LWN2cy12ZW5kb3ItYnJhbmNoCisyMTYwOCA4ZDZiNGFjMDQ0MGI0YzBjMjE3N2VhZmMyZGIwYWRhNGMyMzFmODg5IGxlZ2FjeS10cnVuaworMjE2MDkgZmVlYTNkMmYzNTYzZjBiZmFmNTg2ZTFiN2FmMWFjNDAwM2EwMjhlMyBweS1jdnMtdmVuZG9yLWJyYW5jaAorMjE2MTAgMTFkOWU0NmYxNDcwNTE3MTlmMzg4YTdiYzJjMjJjYjZhYjNiMWE5MCBweS1jdnMtdmVuZG9yLWJyYW5jaAorMjE2MTIgOGI5M2QwNGZhN2E5YjlmNTBhNTg2ZjBhOGNhYWJhN2EwOWY3MDhjOSBsZWdhY3ktdHJ1bmsKKzIxNjEzIDlmNzQ5NjVlMGYzNTg1NWM4NjBjOGYxODRlY2IwYmVlOGQwNTI2MjUgbGVnYWN5LXRydW5rCisyMTYxNCAzNGQ1ZTQ4YzFlZDI2MjU3YzVhZGY1Nzk4YjVkNjhhNmE5ODYwY2E2IGxlZ2FjeS10cnVuaworMjE2MTUgNmM1MDFkODkyMDAzMGE5MmFkZDk2YTRjZjcyMTRiOGExODAzY2Q1OCByZWxlYXNlMjEtbWFpbnQKKzIxNjE2IDQ5OGQ3ZGQ5OWRhNDFlOTI2NjM4OWYxZTMxODYxMzI1MmQ5YTA1Y2IgcmVsZWFzZTIxLW1haW50CisyMTYxNyA5OWFkNmZkMjc5ZTliZjVhNjA5YTEwZTU0YThmMTQzOGMxNDYzMDRmIHJlbGVhc2UyMS1tYWludAorMjE2MTggYjFhMWRlMThmOTFmYmNkMDc0NjQ1ODE5ODM2ODE5M2VjMTkyZTVhYyByZWxlYXNlMjEtbWFpbnQKKzIxNjE5IDg3ZWUxYzNmZDBjODIyNzU1ODVlN2IwN2E3YTRmOGFkNmZiMzljM2MgcmVsZWFzZTIxLW1haW50CisyMTYyMCA4MmEzNDkzMmVhMjJkNjI5ZDE0Y2UyZjg3ZjM4NzI2NmE2MjFjYjg1IHJlbGVhc2UyMS1tYWludAorMjE2MjEgYzk5MTI5YTBhNDdkOTA3YmI3ZDRmMzI1ZjAwOGRjZmNmNzQ2YjY4YiByZWxlYXNlMjEtbWFpbnQKKzIxNjIyIDA0ZTI1YzAxODQ5YjQ0YmI0NGZlMjk0NzRiNDY3OTU5MGNjYzg1OWUgbGVnYWN5LXRydW5rCisyMTYyMyBjMzk3ZDRjZDgzN2QyMDZmNWExMGEzMWQ5YzJkM2JhY2UwMDVhNThlIGxlZ2FjeS10cnVuaworMjE2MjQgYTRkMzUwOGFlZmMwZjk1OGE5OTAwOGNjMDk0NDFhMDkxMzNkY2ZkMiBsZWdhY3ktdHJ1bmsKKzIxNjI1IGRmYjc3NDIyYzYwNzQyOTY3MDIwNzQxYjJkMzAxMjQ3MzJmYjUyNmQgcmVsZWFzZTIxLW1haW50CisyMTYyNiAxMDZjOTk5NWRiNjhhZTVjOGY3Njk4MzBjNzI2MWIwNDg3MTQ3OWE5IGxlZ2FjeS10cnVuaworMjE2MjcgNzk1YWE0NTkwMjExMGE5OTg2MWQ3M2ZiODczNmFiZmEyMDZhZWJkMCBsZWdhY3ktdHJ1bmsKKzIxNjI4IDJlMmVmNDcxMTRmNzcyNDBkMDY4YjFjMzczZTM2ODJhNjVmMzdmNDggcmVsZWFzZTIxLW1haW50CisyMTYyOSAyZmJiMjVjMzA3MmViNmQ0N2U2NjgxMTM0OTYwMTdlZDgxNDczZTVjIGxlZ2FjeS10cnVuaworMjE2MzAgZTA2MTE1NWY5OWU4ZWIwNzcwNDNmMjA0MDljZDBhOWM5YjM4MGNmOCBsZWdhY3ktdHJ1bmsKKzIxNjMxIDk4YmRlNmU1ZTc0MzJkYzdkNzc2N2VmNzRjZTliMjc5ODk5NGE1MWEgcmVsZWFzZTIxLW1haW50CisyMTYzMiAyNmZjOTA1ZGRjMTJlNTViN2I3ODFjZGI0M2Y2MDQzMzE5MWNmZmRmIGxlZ2FjeS10cnVuaworMjE2MzMgNmY4YTI0MDJmNmZhNGIzZjkxZTUwZGVjMzFmNDQ3NzU2MWQ0YTA5YyBsZWdhY3ktdHJ1bmsKKzIxNjM0IDk5NzdjZjIwNjUzMmIxNDZmMzE5MjcyYWE4MjMwYmI5Y2RkNGI4ZjEgbGVnYWN5LXRydW5rCisyMTYzNSA0YzMzZGMzNDU5MDJhOTE1N2ZmMDM5NDE4NmE3YjU2ZTVlM2NmZDc0IGxlZ2FjeS10cnVuaworMjE2MzYgYzdhMjRkM2IzNTk3Mzk2OTcyOTdiZjBkNTFlOTNjZDEzNDNlNGZhYSBsZWdhY3ktdHJ1bmsKKzIxNjM3IDRiN2ZkM2FlMWQ5MzBiOTIyNThlNGY5N2NmMDZlODkyMWJiMWZlNDUgbGVnYWN5LXRydW5rCisyMTYzOCBmNDA5MmE1ZjdiYmM3MTQwYjFkNDA5NzE2M2QyMDg2Yzk4Y2U4NjJhIGxlZ2FjeS10cnVuaworMjE2MzkgMDY5YjgxNTE5YmU3ODUwYmI0MGFhM2NlNjRkYjQzYjMyZGU0MTZjYSBsZWdhY3ktdHJ1bmsKKzIxNjQwIDU4NDZjMjU4Yjg4OTYzNjk2ZDhlNTVlYzhmYmFiODM0Nzk3ZGM2ZGMgbGVnYWN5LXRydW5rCisyMTY0MSBjNGY3NTg1NzUwMmE2ZDNmNjcxOGYwNzZhYmY2MzlkMDVhNjg3ZmFlIGxlZ2FjeS10cnVuaworMjE2NDIgYmExZjNkZTEwMDg1NDM0ZjExZWY5NzExNzM1ZjFlMDViNWM4OGU0NSBsZWdhY3ktdHJ1bmsKKzIxNjQzIDQyNzQxZTY3NzMzODQxZjI5M2Q4YmRhNDg5MTBiOGZkYmUyMjgxMGUgbGVnYWN5LXRydW5rCisyMTY0NCBlYTdjNzdmZTUwYWU5OWRhYTRkMDVlOTAxOWJmZmE4NzJjNjkzODc1IGxlZ2FjeS10cnVuaworMjE2NDUgMmJiNzVhMWYzMTg0MTkyODVjZDhjMjg3ODlkOWQ0ZTcwOTY3MDI0OCBsZWdhY3ktdHJ1bmsKKzIxNjQ2IGU2ZWNkOGEwN2VhODhmMjdiZjU1MDQ4YWU2YmMyOTUwODg1NTE0YTkgbGVnYWN5LXRydW5rCisyMTY0NyA0NmRkODczZDI2ZjY0NGY0OTgzMWM2Zjg0ZjRjYjVhN2E4NmEzMmE5IGxlZ2FjeS10cnVuaworMjE2NDggMjAyZGRkYjdjOTc0NzRjYTcwNmY2NzY2NGNmMThjNGI3ZDJhNTVlZCBsZWdhY3ktdHJ1bmsKKzIxNjQ5IDg2MjYxNzFiMmM3MjUyODU1MmMxNjBhZTZjNjM1OTUwYzU2OTVkMjEgcmVsZWFzZTIxLW1haW50CisyMTY1MCBjYzI0ODY3NTdjOGJmM2UyMmJiOTRjNmIzMzUyYmMwMjdmZjYzYmRjIHJlbGVhc2UyMS1tYWludAorMjE2NTEgYzViNTA1NTJkNTZkMWY2MjczYzMxYzYzYzZiYjEzZDUwOGE2YjI1OSByZWxlYXNlMjEtbWFpbnQKKzIxNjUyIDMyY2IyOTVkMDg2MmMyMmExYjA3ZTgxNDU5MTc2ZWEwZjdlOTcyNTggbGVnYWN5LXRydW5rCisyMTY1MyA4NmIxYzgyMTYwZWE5OGQ1N2EwZjlmNDFhMmQwYmI4OWU4YmIyMTZjIGxlZ2FjeS10cnVuaworMjE2NTQgOGRlOTEwNDIxNzNmN2Y0ZTEwMWZhNDgyN2RjMDkyYWY4YWI3NGVlYiBsZWdhY3ktdHJ1bmsKKzIxNjU1IDI1NGE0YTlhZjBmYmM2ZTg1ODBlNDliYTJjNWI3MjFiNWRhZDEzM2MgbGVnYWN5LXRydW5rCisyMTY1NiBmNGVhMjFhMGY5NTQyZDM3ZmQzOGE0YWM1NjYzNzYzNGYzZDBkNTcxIGxlZ2FjeS10cnVuaworMjE2NTcgZDIxMTcwOWYyNWYxZWVjYjQxN2FjNTIxOTEwZWUxODBiYzIzODY0YyBsZWdhY3ktdHJ1bmsKKzIxNjU4IGIyYmY4OGUwNmZjNTk5N2I1ZmRkZjYyZDQxMDljM2E0YzFmZjgxMzggbGVnYWN5LXRydW5rCisyMTY1OSA2NWFmYWM4NGQ0ZjczMjM2ZWNhMTNlNzgzNjQwNGU4NzE3NjhjNGJjIGxlZ2FjeS10cnVuaworMjE2NjAgNzMyOGM4Y2Q5MTdkOWVmNjBlZWIxODZkMGFjM2FmYzA4YWY5MjkwYSByZWxlYXNlMjEtbWFpbnQKKzIxNjYxIGE1OWNhODQ0NmY5MmI2ZWRiNzdhMTljMzFiMzk5Mjk0YTc5NmM5ODAgbGVnYWN5LXRydW5rCisyMTY2MiA0ODYxMzczOTU5MTc2YzU4Y2QyNjdhMTFiNDEzNzQ5YzRkNzZkNDAzIHJlbGVhc2UyMS1tYWludAorMjE2NjMgZjcyYmNlY2RkMWY3ZTJmY2IxZDFhMWMyMmI5MTIwNGRjY2VkMWM4YSByZWxlYXNlMjEtbWFpbnQKKzIxNjY0IGQ5N2M4MmNiZDc2NjkxY2NjMDM2YmIxNWRiYTk1Y2Q0ZTZjZjY3NTMgbGVnYWN5LXRydW5rCisyMTY2NSBkNTAyNjZiNWRjNDhjNWFlMWNmMDY0NGQ1NzliOTkwYTQ0NTBlYTM3IGxlZ2FjeS10cnVuaworMjE2NjYgZWFlOTI3MjkwMzU3MWEyNzdjYjA4ZGQ0YjlhNDc4ODc5ZDZhZmEzMCBsZWdhY3ktdHJ1bmsKKzIxNjY3IGIxZDZhZTMyOWRkMDU4ZmQ1YTU2NTViNGViMzMzOTJjNjE0ZjZjMzcgbGVnYWN5LXRydW5rCisyMTY2OCBmZDk0NjEzNzNjYWIzMDA4YjgyOTJhNTUxMzljYTViZjQzMDcxNjg4IGxlZ2FjeS10cnVuaworMjE2NjkgMjFiNWIyZWFlYjNkNDFlNjI4MjNhMTMzZTg0YTYxNmU5MTVhM2IzYSBsZWdhY3ktdHJ1bmsKKzIxNjcwIDFmYmNmNTQ5YzFjNDUzNWYzYmU4MDNhMTg0NGQ4MDY4NDBjNzIyNGYgbGVnYWN5LXRydW5rCisyMTY3MSA2NGZhNzJhODQzNDc0OTAwMzkwNWY4MGQ1YWNlNGJmMGE4YTg3NjAxIGxlZ2FjeS10cnVuaworMjE2NzIgMjNkOGViMjllNGZhMGZmZTY4M2YyYzAxYzhhOTE3ZTQxODI5NWQxNiBsZWdhY3ktdHJ1bmsKKzIxNjczIGU0ZDZhNzM5OTk3ZDk2MWQyZDQ4MjA2ZDMwMmQ2MGM3ZDFmNmZkMGYgbGVnYWN5LXRydW5rCisyMTY3NCAzN2VlOWNkNTRhMTEzZmNiMjUyNTJiYzMxNzVhNDQ3OTJjMjcyNDNjIGxlZ2FjeS10cnVuaworMjE2NzUgZTA2NGY1MjZhNmVmZTgxOTJhMmFjYzNhOWY5ZGFjNTI2YTE2ZGU3NyBsZWdhY3ktdHJ1bmsKKzIxNjc2IGZjNWEzZWMwNzQ1ZTFkNmI4N2Y1OTBhMDU3MWZjYjk3MDU1OWRlOTUgbGVnYWN5LXRydW5rCisyMTY3NyBlYzlhYTBkYzhiNzM2MDZhNzE2ZWIxZWEwZjljMzI3MDA0NTI2MWJlIGxlZ2FjeS10cnVuaworMjE2NzggYmY1NjI0MThkZmI4MWUwZjY2YTNhNGJhYjA1NGNhMjRiY2JkZWVlYiBsZWdhY3ktdHJ1bmsKKzIxNjc5IGNkM2I0ZGQzZTRjYTE5MTc5NGVmZWIzMDM1MmFhMTRiZjYwODU3NmYgbGVnYWN5LXRydW5rCisyMTY4MCBlYTI2YzliNjZmYmQ5ZDJlYWIzNTNmZGNjMzdkY2NhZDBmYmUzYWY2IGxlZ2FjeS10cnVuaworMjE2ODEgMGM3MDEzNTM4OTk4M2NjNDVjNTQyYTEzNzIzYWFlZWVmN2ZmMTQxMyBsZWdhY3ktdHJ1bmsKKzIxNjgyIGIyODdmMjkyN2RiMzhhM2U1MWQwZGMwNWM4OTExNGVhMTE0OTU4OTQgbGVnYWN5LXRydW5rCisyMTY4MyAzZmNmOThjYTZjNGExNDZmNWFmN2M4ZmEzMDlkNGFjYTJmMTc2ZTJiIGxlZ2FjeS10cnVuaworMjE2ODQgOTA2MGMwNmJlZGJjNDMxODQ0NGFiMjBhOGE5MTkzN2NlYjZhZmE5YyBsZWdhY3ktdHJ1bmsKKzIxNjg1IGM0OTMwMTMxZjVlM2FjNzI3NWE2N2M0ZDM1MjYxOWNmOGEzZjZjNDQgbGVnYWN5LXRydW5rCisyMTY4NiBjMWVjODdmMTA0NGE0OWNkMTc4NmU4MGU5ZWFiMGRiNTBkYTdiYmY2IGxlZ2FjeS10cnVuaworMjE2ODcgNzA0NjFmMmQyMTA5OGQxYzUyOTI4NDMwMjYwZDllMmYzMTk0NmQ1NCBsZWdhY3ktdHJ1bmsKKzIxNjg4IGU2NzVmZjU3NDhmMDVmMjc5YWM0NjlmNDQzZWMxNjJkMDAzZjNkNGUgcmVsZWFzZTIxLW1haW50CisyMTY4OCAyMmJlZDJkZDFiMjg2NTY0ZGVhNGQ5YTY3ZDRlZDgwZGMzMjI1MTkzIHJlbGVhc2UyMS1tYWludAorMjE2OTAgMTM3ODNlMGEzNDIzN2Q1MGQ1MmFhOTIwZDA3NTU5ZDBlYTEyNTBjMSByZWxlYXNlMjEtbWFpbnQKKzIxNjkxIDZkNGM4YTI5YmU3MDg3ZjkwNmVlMmY0NjljODk0YTY1YWNkNTRiMWUgbGVnYWN5LXRydW5rCisyMTY5MiAwNDdkN2M0ODA2OGFkZDdhMzUwNGQ0MTJkNjcyZjU0YjMzZjVjNDIwIGxlZ2FjeS10cnVuaworMjE2OTMgZjUzZDhjNTJjODFmOGQ5ZTM0ZDJmMThjMDY5YjRiZTc5OWQ5MDFiZCBsZWdhY3ktdHJ1bmsKKzIxNjk0IGY2MGU4NTM4NGI3OTgxYTZlZjhlOGExMWViZTE1OWJjMTJiMmNjMTIgbGVnYWN5LXRydW5rCisyMTY5NSAwMDIzYTc4YzFjODJjNzE1MjBkNDUzNTdhYTdjYWY3YmUwZDMyMTk1IGxlZ2FjeS10cnVuaworMjE2OTYgMDlhNWZlMmE3NDI2NzM4ODljMTliMTIzNDhhMDM1YTI0YjU2YTQ1MiBsZWdhY3ktdHJ1bmsKKzIxNjk3IDcyOTM5YTIyMzBkM2JmMTcwODlhM2QyNTJjZmZmMzhmMjIyNTM1NjEgbGVnYWN5LXRydW5rCisyMTY5OCBiZmFhOTdhMTliMzA4M2YzNGY4N2FjYjQ5ZWUxYzlhZGQxZDAwMDJiIGxlZ2FjeS10cnVuaworMjE2OTkgMjliZTg3MWJkODc2ODU2NjNkYjg1MjI3YTk2NThlZDJhNTExNzVhOSBsZWdhY3ktdHJ1bmsKKzIxNzAwIDY0MTdkNTg4MTZjZmRkNWI5NjU0MDkwNjE3YjkyYzk2YWY0M2M0YzUgbGVnYWN5LXRydW5rCisyMTcwMSBhMDY4MzFiMzU0MDc2MWIwODViZGNkYzkzMTVhNTMwMmMwNjliYWQxIGxlZ2FjeS10cnVuaworMjE3MDIgZmQ4OTZiN2NhYmI3NDIyNTMyYzJlZTQ1MDZmNDNiN2Y3YjdiNWQ5MyBsZWdhY3ktdHJ1bmsKKzIxNzAzIDc0NjEzNDhkOTlkYTQ0MzZmZmQyODY2Yzk4NjY5NDc5MTBhYzcwNzEgbGVnYWN5LXRydW5rCisyMTcwNCBlYWUxN2M1NzY3Mjc0MjU5N2EwNmNmYTc0NmRlM2NkZWFmYTlhNGU1IGRlc2NyLWJyYW5jaAorMjE3MDUgY2ZlNTNhNjIwY2ZmZTgxMjczNjhlNjliMDBhYmRhZDJmM2IwZTc2NSBkZXNjci1icmFuY2gKKzIxNzA2IDQ5YzA3YWNjNmU4M2U3YjdiNjcxYmY3MTllNWM2NmY1Y2EyOTgyNzUgZGVzY3ItYnJhbmNoCisyMTcwNyBjOTQwMjg3ZGJhNzliZGY1NjM5MGFhZDkzZTVmYTYzODY4NmFiMmM1IGRlc2NyLWJyYW5jaAorMjE3MDggNjQ2ZTA1MmUwNWJlZDUxZWYyZDQzMDFlYTQ1YzE3YzdiYWYyZTA1ZiBsZWdhY3ktdHJ1bmsKKzIxNzA5IDU4ZWI1MDUyODY5MmM4ZTZjNDM4MTcyYjhlY2VjYmQwMWYxOTdlNzMgbGVnYWN5LXRydW5rCisyMTcxMSAxMmU3YWQxMDgyMjkxNjA1ZGU1NTRiN2Y0OTIwOWQ0YjY3NjE2NGY3IGxlZ2FjeS10cnVuaworMjE3MTIgOWI0MmRmNGI3NGQ0NTYzZWE0ZjliM2ZhZWZjMzM1MjBhM2UwZjc1ZCBsZWdhY3ktdHJ1bmsKKzIxNzEzIGY0MDE0MDU4OGIxZTgzYTc1ZmFhNTVlM2JiMzljNGVkNmQ1MmI2NzIgbGVnYWN5LXRydW5rCisyMTcxNCBlNzYwZWVkNWY2ODgyY2Q0NzYwYzUwNzA4MTUwMjU1ZTdjNDIyNjE2IGxlZ2FjeS10cnVuaworMjE3MTUgYWEzNDQzNjE0NWQwMzNkYmIwMjQxNDBjNmMyNzNhZGVlMmUwOGJiYiBsZWdhY3ktdHJ1bmsKKzIxNzE2IDVkMzk2NGU2MjJhODUyY2MzYjllOTY3NDRmYjYxYTY4YTM1MjJjMTAgZGVzY3ItYnJhbmNoCisyMTcxNyA2MzhkOTA0NGZiZTIxZWI4ZmE2MzhkNWIwZWM4Nzc0OTQ1NzE3NjZhIGxlZ2FjeS10cnVuaworMjE3MTggYTc1Y2EyMTdmNzM3NzdkNGRmZjY2NWY2ZTUwMDA3MGNlZTk3MGY1ZCBsZWdhY3ktdHJ1bmsKKzIxNzIwIGFjZTcwZTMyNzkyOWNhYmJkZTVkOTE5YTVkNTJkMTA1ODBmNTkwYjcgbGVnYWN5LXRydW5rCisyMTcyMSA1NTUxMWNhYTI0ZWViNTk2ZWM2Zjc4MjYzMWI1YzVjMTA4NDJhNzE3IGxlZ2FjeS10cnVuaworMjE3MjIgNWUxYTE0ZDk5M2IzNWI5MjM1NjI5OGI1M2FhYTlkYjJlNzUxMDAwZSBsZWdhY3ktdHJ1bmsKKzIxNzIzIDk5YjVkMzM0ZGUxZTQzMWZkYjZmMDBkMDVlY2VlMTE5MjkzZDdmOTIgbGVnYWN5LXRydW5rCisyMTcyNCAxNDRhMzAwNWI1YmFlM2RhNTFjMmE0ZjNlYzg3NjVhNjc3NWU5NTRhIGxlZ2FjeS10cnVuaworMjE3MjUgOWI4NTY0ZjZlMzRkNTFjYWUyOTU4MmRiYTJjYWQ4ZmYwMGJiNjkyOSBsZWdhY3ktdHJ1bmsKKzIxNzI2IGM0MDQxMDcyZDEwMTAxMGRiMmQzYzg1NDlmOTc3ODVmMjU5M2MwYzUgbGVnYWN5LXRydW5rCisyMTcyNyAzNDZkY2FmYzg3OGI0NjZlNmUwODFmMjk3Y2U3YjFlOTNkYzc0OWVjIGxlZ2FjeS10cnVuaworMjE3MjggNjcwNDY0Yzk0YjkyYTY4MjMyMGQxNzk0OTMxMzVjOWIwYzNhOGEzYiBsZWdhY3ktdHJ1bmsKKzIxNzI5IDdkNzc2MTRmZDBiN2ZkNzAxYzc4NjE4M2JhYTY5M2YzMjA3ODkwNGUgbGVnYWN5LXRydW5rCisyMTczMCBjNmMzMGU0NWFiNWJhNjYyYjU4NWYzNDkzM2NkNjljNjQzODdlOTAwIHJlbGVhc2UyMS1tYWludAorMjE3MzEgNDM4NGY5MTliNDQ4NTQxZmYxMjhjZThjMzAwY2I5NjI2NDY4YjNmNSBsZWdhY3ktdHJ1bmsKKzIxNzMyIDhkNjJkZGU3NjI3Y2VmN2NmMGU0Zjg4YzAzZmMzYzY0MWYxZWJhMWQgbGVnYWN5LXRydW5rCisyMTczMyAxMzJhMDZhZDk2ZWVjMWE1ZTg5ZDliNmYzMjJhZDBlZjI0YjU1N2M5IGxlZ2FjeS10cnVuaworMjE3MzQgYTg2MTk1ZTZjN2UzMzJhNTdiNjhiYWIwYzNlZDJmODE0ZGVmMTI2NyBweS1jdnMtdmVuZG9yLWJyYW5jaAorMjE3MzYgNmI2MGQwZDk3NGMzMWQ1YjlkYzk2ZTk3YjllODI1MTMxZDdjOGE3YyByZWxlYXNlMjEtbWFpbnQKKzIxNzM3IDI4ODE4NzY2YTY0Y2E1Zjk1YmJkMWY2OGU2ZDNhOGUyZTIwN2ZjNjAgbGVnYWN5LXRydW5rCisyMTczOCA2MWU1MGQwYWE1OWExZDg5NjlkOWQ4OTdlNzM0MWViOWMyOTg1ZDk2IGxlZ2FjeS10cnVuaworMjE3MzkgNDA1MzUyZWE1MGEwN2QzMWY2NWQ3YjFiZDA1MzEyODBjMWFkMjJjMiBsZWdhY3ktdHJ1bmsKKzIxNzQwIDQyNDdiNGIyYzQ4ZTY5MTQ3YTk4YjFlMWEzNzIyYWU4ODIzYWVhMzUgbGVnYWN5LXRydW5rCisyMTc0MSBmZTQ0NDI4Zjk3NzRkZjg0NWJiZjM3MzVjZmE4YWE1YTM5NmQxNjI1IGxlZ2FjeS10cnVuaworMjE3NDIgMzA0MTRiNDFmYWM5Nzg0YjZmMTM1YmE3NWIxZWEyOTQxMzAzYjNhMSBsZWdhY3ktdHJ1bmsKKzIxNzQzIGU5OTU0NTY3YzU0YjAyZjcwNGE5Y2ZkMGExMjVkZDVkZjBkZDc0YjggbGVnYWN5LXRydW5rCisyMTc0NCAyMWEwNGQxNWUzOGMyNmQ4MzNkMWUwMWI5NjlkZmUzYmEyZTc4NDEzIGxlZ2FjeS10cnVuaworMjE3NDUgNWI4MjBkN2EzZTdjMTNlMjlmM2YzNDJjYzk0NjZkOGFiNGNmZjkxMSBsZWdhY3ktdHJ1bmsKKzIxNzQ3IDI3ODMxODMwNDM1NzkxOTJkZjUwMzQ5N2NiODkyMjA0MjI3MzY0ODAgbGVnYWN5LXRydW5rCisyMTc0OCBjN2JlZjZhYTZmOTI2NzI3ZDExOTlmYmFjYTdhNWU1NmFjMDcyZDdhIGxlZ2FjeS10cnVuaworMjE3NDkgMjFjNTQ5YjY2NzAyNDExYzhlNjI4NzE1MzEzN2M0ZjI1OTEyOTEyZSBkZXNjci1icmFuY2gKKzIxNzUwIDExNTM4ODA1OTdjYzcyYThjZWNiZDFlYjNlODM1MjAzMTllNzA0NjYgZGVzY3ItYnJhbmNoCisyMTc1MSA5YTM3M2ExNDNhMTMwZjJhYmM4NjM0MDBiODIzMWEwM2UyMzFmOWRhIGxlZ2FjeS10cnVuaworMjE3NTIgMTkyNTBmOTE4MWRjNDRlMWE5NTZhOTM5NTdmNmRiNmI4NDJjODIwOCBsZWdhY3ktdHJ1bmsKKzIxNzUzIDIzZTZiYmE4OGQ2YTdmYzdmNWI5Yzk4NjIxMDY5NmI2M2Y2MDU5ODcgbGVnYWN5LXRydW5rCisyMTc1NCAyOGI2MjkxZTJhNWNmN2Y1NTJkM2RiOTlmYjdlOTAwNmNiNzZkNTFhIGxlZ2FjeS10cnVuaworMjE3NTUgM2YyODNjOThlODE1MDc5YjU0Y2RmZDNhMDczZDA2MzljY2QzY2IxMyBsZWdhY3ktdHJ1bmsKKzIxNzU2IDExNTFhYjhhMmNkZmU1OGUyNTBiNTA1NjFkZGJkMWI1ZTkxMWM4NzAgbGVnYWN5LXRydW5rCisyMTc1NyA3ZmRiNDE2MDNlOWEzYzNjMzEwY2E5N2E3NGUwMDQ0Nzg0ODY4NGUyIGxlZ2FjeS10cnVuaworMjE3NTggODU5NTA1MjI0ODUwMjBlZmIwMWY4YjIzOGZjZTg1ZGYzNWEyYWU5OSBsZWdhY3ktdHJ1bmsKKzIxNzU5IDcyMWYxYTg5M2ZiYmMyNDhjYzA3MWZlMzIzZjU4Y2MzZWUyNTVlNGYgbGVnYWN5LXRydW5rCisyMTc2MCA5ZjQzZTNhOWJiNmVlMjUyNmUyODljOTI2ZDU5YmE4MjY3NDQ5NWQ2IGxlZ2FjeS10cnVuaworMjE3NjEgYjlkNDdkMDgzZDJjYWYzNDI4N2I1ZDg5NzdmNDMyNzlmNThlNzQ3YSBsZWdhY3ktdHJ1bmsKKzIxNzYyIDI3NWFmYjVhNzY3ZTJiZDkxMTEwYjk3OTU2MDNlYzBiYzk3ZDhiNTggbGVnYWN5LXRydW5rCisyMTc2MyBmODRhY2M5ZGZkMGI1Y2RjYmFkOWNmMzE0MDJlNzAwNWVkMmY1MjliIGRlc2NyLWJyYW5jaAorMjE3NjQgMDg1N2ZiNDg5ZmEzYTYzMTA3N2E5NzMxZDhlNjE1ZjcwMzkzOWU2ZiBsZWdhY3ktdHJ1bmsKKzIxNzY1IDczMGFiMGJlZDZhYjQ2ZjBhMTcwODc4Y2YxYjQ4Yzk3NTQ3MmFlNTMgbGVnYWN5LXRydW5rCisyMTc2NiBmYWY3ZjE3MWE5ZjMyMjQwOWI1MThlMDE2ZmMzNTVlOGRhMGU3ZTQ0IGxlZ2FjeS10cnVuaworMjE3NjcgZGNkMWEwYWFhZWNiNDljYTc5N2NhNmNlYTdlNWI4NmZkN2U3NjMzMiBsZWdhY3ktdHJ1bmsKKzIxNzY5IDIxZDdiYWU5ZGMyZGI2YzJjYjNkNzJkOWUzZjczZDkyYTkzYTgwODUgZGVzY3ItYnJhbmNoCisyMTc3MCA1OTQ0NmQwZjgzNDFkZDE3MzBmMTYxZTAzZTFkNzI5NjIxNTc0MDljIGxlZ2FjeS10cnVuaworMjE3NzEgMWY5YzdiNGNlZTc3YWZlOWZhOGE0YTVlNGRlZTExMDAwNzc2YjUyYyBsZWdhY3ktdHJ1bmsKKzIxNzcyIGZkYjM2YTBjN2U2ZTk4ZTYyMGJmZjFmYTA2NDg4NjU2MTBlNjgxMzUgbGVnYWN5LXRydW5rCisyMTc3MyA0YWM5OGZlN2FiZDJiNTE2NzYyNjk4Njc0NmRlNDJjNDY0NTMxNDQzIGxlZ2FjeS10cnVuaworMjE3NzQgNjIzOGEyMjJiN2NkNjU4YWI0MzM5ZWE2YzNhNmJhNDc3NWNhODg5YyBsZWdhY3ktdHJ1bmsKKzIxNzc1IDM4NGE2MWZhNmY1YTIwNDdkYzRmMzllZjZmYjM1OWQ2Nzc3Y2IxNDMgbGVnYWN5LXRydW5rCisyMTc3NiAwYTkwZTVlYzYxYjY5ODFlNjU2ZTdlYzhkNDlhMjk2NGY4Mzc1ODc3IGxlZ2FjeS10cnVuaworMjE3NzcgMDFmYzk4YmEzOTlmMWE4YWYxZjM5ZDRmNzQzNDRiZTQwZjIxNGUzNCBsZWdhY3ktdHJ1bmsKKzIxNzc4IDE5ZGNmYjkzNWY2MGU0ZTBmOGFjZjg2MTI4YmMzMDQyOGQ0Y2M3NzEgbGVnYWN5LXRydW5rCisyMTc3OSAyNzEwNjRkYTFkNTJjY2VjOThmZTE4NTMxMDBiODU4MzRjOGNmNWRmIGxlZ2FjeS10cnVuaworMjE3ODAgMWYzZDc2NmRhZDkxZTVlZTI2OTI4ZTU5MjU5NGMyMWNkNWNmZGJiMSBsZWdhY3ktdHJ1bmsKKzIxNzgxIDkxNTkyMjJlNjQ2M2ZkNTk0NTA0OGI2N2QzYzlkNzYyYmI2YTVhZDkgbGVnYWN5LXRydW5rCisyMTc4MiAxMDcxN2Y4YTZkOTY4NGMyOTdlMTUwOWJhY2ZlNDg1YWY0YjAzZDJlIGxlZ2FjeS10cnVuaworMjE3ODMgOThkODFjYmU4YmJkN2ZkYjM5NjE3NDA1YTJhMGVhNzMyM2FhYzczNCBsZWdhY3ktdHJ1bmsKKzIxNzg0IDM1ZmVjNDg3YmNlZjc3NzM4ZDVmYjNmZmE5ZDgzOGM3MmQxNGFhMDMgbGVnYWN5LXRydW5rCisyMTc4NSBlNWU1YmI1NDgyZDNiNzJjNjcxMTI2YTg5NzEzOGNiNDE4N2U3YTAwIHJlbGVhc2UyMS1tYWludAorMjE3ODYgOTIwZWU3ZjJhNTkyMmU2ODVlYThjNTQzMjA3ZDkzZWM2NWM2MTdlZiByZWxlYXNlMjEtbWFpbnQKKzIxNzg3IDJiNWU3MzgzYzc3YTE2ZjM0ZWRlNDg3NmUzZmY4MWY4ZDdmNWY0YjAgbGVnYWN5LXRydW5rCisyMTc4OCAyOTU1MThlNmZjZWFiZTE5MDc2MjVkODU0YmVkOTkwMjJhZmUwZmVlIHJlbGVhc2UyMS1tYWludAorMjE3ODkgYzA2ZDgxNzllOWUzYjMzNjg5NmE1NmQ5ZDIwOGQzODZkMTc4NTk4NyByZWxlYXNlMjEtbWFpbnQKKzIxNzkwIDkxNDk0MDk0NmUyZWExZmNjYWUwMDNmYzAxMDNkYmM4MDkwZWNiODMgcmVsZWFzZTIxLW1haW50CisyMTc5MSBjOWI0YzhhZTYxNzkyMzA1MWE2MWZmMjYzMjdiOGM4MWVhZjgxMTYzIGxlZ2FjeS10cnVuaworMjE3OTIgNDAzMGM5MDE5MDY3YzVjMjA2N2U4ODMwYTMyZjAxYjBjNjg0ZTI1NCBsZWdhY3ktdHJ1bmsKKzIxNzkzIGZkZGU5ZmFjYmI2ZWE3ZDE1NWQwZDRkZTI4YWM2Y2MxZWQ2ZTA4NmUgbGVnYWN5LXRydW5rCisyMTc5NCA3N2M4MjgyNGRmNDEyOWYzN2JkYTYxMTk3N2FiMThkMzg4MTQ0MGZmIGxlZ2FjeS10cnVuaworMjE3OTUgZDU5YTg0NzZhZmFiOWRmNTRhYTA0MThlZDVjZTA0M2M3YTM3MmUyMSBsZWdhY3ktdHJ1bmsKKzIxNzk2IGM4ZTQ3MjhkMmFiMGYzY2E4YTBkMmIyMTY5ZGZmYTRjMDVjZWY1NTUgbGVnYWN5LXRydW5rCisyMTc5NyAxZDNjNTdjYzhkMDg1Yzg2ODdiNzhkODllNjk4YWQwYzMzNmRkMjU4IGxlZ2FjeS10cnVuaworMjE3OTkgOTgzYWNhYzU2NDY2YjNiY2ZjZGRkMmM0MzE4MjkwZWE3Yzk1MzZkYyBkZXNjci1icmFuY2gKKzIxODAwIDA1Y2Y2YjNlNjNkZTU1NGUxN2I5MzU2NjUzNDQwZDZiYzUzZGJhNDMgbGVnYWN5LXRydW5rCisyMTgwMSBlNTNiY2JjMzE2NWUzOTY3OWFmNjM4OTkzZWUyNWJiNDUwNzU2Y2NmIGxlZ2FjeS10cnVuaworMjE4MDIgZDNjMjViMDZiN2U1YjQ0ZGM1MzAxZmRmY2MyNjQ4ODAwOTY2NWRmMiBsZWdhY3ktdHJ1bmsKKzIxODAzIDU3ZTU5NTI1ZDIxN2RmY2UzNWQxOGE0NmViOGQyNDhlYmFiOGNlZWQgbGVnYWN5LXRydW5rCisyMTgwNCBmZGY4ZDA4MzEyNzg5NTNhMjg1NzljMWRjYTAzMmI3MGQ3MDVkNTM0IGxlZ2FjeS10cnVuaworMjE4MDUgZjcxOTY0ODZmNDJkMTgwOWQ1ZThhNGE2ZWRkN2MxY2NhZmQ1MzUyYSBsZWdhY3ktdHJ1bmsKKzIxODA2IDZhNTA5MTBjYTMwM2FkMDRhMzdjZjlkOGFlZmU5OWMzZWE2YzhjZmUgZGVzY3ItYnJhbmNoCisyMTgwNyA1NTcxN2RjMjI3ZjRkZTEwYjQ5MGM4ZjVmNjMzYjVkNjVjYmMxZWEyIGRlc2NyLWJyYW5jaAorMjE4MDggOTRmYmNmMTk2NTQ5NTU3YjhlMjcxZmI2ZDllYWY2N2U4ZDlkYTU3ZiBkZXNjci1icmFuY2gKKzIxODA5IDA3NzJlYWExNzYzMTlhYjRmZmM1OTQ4ZTY4MDM4ZmVlMDQ1MDc3ODUgbGVnYWN5LXRydW5rCisyMTgxMCA3MzM1YWM3YzUzMTU3ZmMwMGQ5YzFkZTM4YTUyMGFhMzg4ZmJhMDdkIGxlZ2FjeS10cnVuaworMjE4MTEgY2I1ZWE0ZDhlOGJmOTgxMWQ2NjZkZjQ0YzNiNDBhMGM3Njk0NDNhOSBsZWdhY3ktdHJ1bmsKKzIxODEyIGU1YTJlODkxNmUwYjRlNjRjM2YyNzgwYmJlMjUwNDY2MWUzN2IxN2EgZGVzY3ItYnJhbmNoCisyMTgxMyBjNDNmZTIxM2VlMTA4ZjUzNTMzOWI5YjI5M2I1NTc5Y2U2YjRiYWU0IGxlZ2FjeS10cnVuaworMjE4MTQgYWQ4MmNhZmU0NWFjZjQ5MWY4OTg2MTVkYWY5MmEzYzJkMjc0Mzk0MyBsZWdhY3ktdHJ1bmsKKzIxODE1IDMzODE4ZWM2Mzk1YmFkOTBhOGRjYzMyOGZkYmE1ZjMyMTQ3NWZkZjMgbGVnYWN5LXRydW5rCisyMTgxNyAxZjFjNzhiYTU3ZmY0NTdmNjAwYTI0YzU0NjM1NjI5Mzg2NDVkNjExIGRlc2NyLWJyYW5jaAorMjE4MTggZDYyMzNmN2I3NGMxOGZlNWNhZjY0NDU3NTYxNTdmMTc2MjNlZjM2YSBkZXNjci1icmFuY2gKKzIxODE5IDhhYTYzYWVhNzI2OTU5OGE3MTNiZTQ0NzQ4NmFjNTZlODhhODIwMTcgbGVnYWN5LXRydW5rCisyMTgyMCBjYjY2YTk4MzA5NmY3Y2YzOTUxNWI0YzMzYWU0YWVlMTU2NmM1MGM1IGxlZ2FjeS10cnVuaworMjE4MjEgM2I4ODg4NTlkNTJiM2E2MDdiYzg1YjU5ZDZhOGM4OTQwZGVhZTBjMyBsZWdhY3ktdHJ1bmsKKzIxODIyIGNhOGE0OGFiYTIyZWNlMjliZDY3NzA5ZDU1ZWFiOWQ1OGRmZTFjZTUgbGVnYWN5LXRydW5rCisyMTgyMyA1ZWJlZTVjMDYwZDBlN2RiMjE4YzdjMWJmZTIxMDhkYTVhN2I2NGQyIGxlZ2FjeS10cnVuaworMjE4MjQgNzQ4ZjZiM2E4YmY2Mjc0ODFmMjk3NjJkZWIyMjU0MzhjMmNjOWYwNiBsZWdhY3ktdHJ1bmsKKzIxODI1IGFjMTFhZjdkODYwYTM1ZjVjZTc2Njk0NzYxNGRlM2ZjNTM4NTUxMmYgbGVnYWN5LXRydW5rCisyMTgyNiBmY2RiOGM5NGI1ZDhmMzNkZWI4YjQ2NzBiNmYyN2NlZmNjN2I5ZTk4IGRlc2NyLWJyYW5jaAorMjE4MjcgY2Q2MzlhOTQ3MWI4Zjc5MDVlZjU4MWVjOTQ2YTkwYWMwZmMxMzdlYSBsZWdhY3ktdHJ1bmsKKzIxODI4IGU2MzhmMTIwNmVlMGJkOTlhOWE5MWYyNDUyZDg5MzhkMGE1M2EyYTQgbGVnYWN5LXRydW5rCisyMTgyOSA3MDI3NTAzN2YxMmQ4ZGVkNmFkMjJiY2FmOTNhZDc0MzIzYzBmYjhlIGxlZ2FjeS10cnVuaworMjE4MzAgNzQ2MjNiMDc2ZDFiZTllMzNkMDhmY2RmNjVlMTFkN2VmYjZlYzk2NSBsZWdhY3ktdHJ1bmsKKzIxODMxIDk1ZGRjZDQ0NGQzOTJmYmIxMzZjNzY3YjFhM2EyMzdhYTE0ODJhMTYgZGVzY3ItYnJhbmNoCisyMTgzMiBkODllOTM2ZTFiMTA2NWM1ZjU3MGMwMjU5ZTczMzAyZGQ2NDNjNWRhIGRlc2NyLWJyYW5jaAorMjE4MzMgNzA3MTFhOThkOTg5N2M4OTM3OWJhZDA0YWZlNDM5YzMxNWRjOWY4YiBkZXNjci1icmFuY2gKKzIxODM0IGUwOWJlZTliNTcyOTJkNzYxM2VlNzYyNDRiZTg0MjRhNTY3NDdhZTIgbGVnYWN5LXRydW5rCisyMTgzNSA1ODRiZTBiYmQ5NDJiNjQ1NWMzOTkyZmFiNDg2Y2YxNjE2YzkwZTljIGxlZ2FjeS10cnVuaworMjE4MzYgZjY1Y2U1OTkwNTQ3ZDUxMDRjYWRhZmEwMDk2NTJjNmVmOGI2MDExOCBsZWdhY3ktdHJ1bmsKKzIxODM3IGI3Nzc1ZWJiZjQ0OTA5OWE0ZTFiMDU0OTgyNTg1MTVjZjBlNjNmNWIgbGVnYWN5LXRydW5rCisyMTgzOCBmMTQ4MDAyMjk2NzdkZWEwYWFiNmU4ZjVhN2RiMmY0ZmI5NThmZDg4IGxlZ2FjeS10cnVuaworMjE4MzkgOTI2MjZmNDJlMDQzM2NlZjY2ZjVkZTY2MGRlZThhNDhiNjUyODU2ZiBsZWdhY3ktdHJ1bmsKKzIxODQwIDVmYzJiYTFjM2YyNDIzZWU5MzkzMDMzMjhiZGE2NmE1ODFlMDZiZTMgbGVnYWN5LXRydW5rCisyMTg0MSBhMDI3NzlmZDliOTIwZWI3ZmE5NWI3OWM1YzQxMzJiOWU1OTI4N2VmIGxlZ2FjeS10cnVuaworMjE4NDIgMWY5NzQzYTFlZDdiMGIwOGFhOTQxOGI4ZTczZDcyYjIyYzE1NTIyZiBsZWdhY3ktdHJ1bmsKKzIxODQzIDZkNGE1MzBmZTdjMTYyMjExMTY4OTgwZDZlMGE5MTE5ZDRmYWIxOTQgbGVnYWN5LXRydW5rCisyMTg0NCAzODRiOTExM2EyZTBjNjlhZGZiNDJkNWE3MWQ5MjAzMmExZDJhN2QwIGxlZ2FjeS10cnVuaworMjE4NDUgNzkyN2U4Y2Y0NjE1MGFjNGQxMmFlMDg3MjJjN2Y3NWE5MzhjOWVlOCBkZXNjci1icmFuY2gKKzIxODQ2IDM4MjA2ZjI5YjBmYzFjNTQ3NWQ3NzE4NWFhYmE1M2YyMjJjZjFiYjkgbGVnYWN5LXRydW5rCisyMTg0NyBjZmI1N2RiNGMzODhlNzU1ZjlkZTFhMDVkNzJlYWNjZTYwYjYzODgxIGxlZ2FjeS10cnVuaworMjE4NDggNDkyYTFiZDRkMGM1ZmUxYTJkZmM2ZGJjMTIxNTdmNWFlNWIzZDliZiBsZWdhY3ktdHJ1bmsKKzIxODQ5IDllZThmMTZiMGUyNzJmNjllYTQ0MGFmNThmMjg5NTdiODUwNjU4NDYgbGVnYWN5LXRydW5rCisyMTg1MCBmN2JlN2U5YTZmMjAyODFjYmJlNTY4M2EwZDE4MDU4NTFiYjkyYWJjIGxlZ2FjeS10cnVuaworMjE4NTEgZDNiYzgyZDFjNWE5Mjg1NWMwNDA4NzQ0M2NkMWU5MmM5Yjc4NDZmNCBsZWdhY3ktdHJ1bmsKKzIxODUyIGU0MjFhYTQ1MDQwY2QwODY5MWNhMzgyMjQ5NTVmMjU3M2IyYWMwYzYgbGVnYWN5LXRydW5rCisyMTg1MyBhN2JjMzM5ZWUyZjM1MDg5N2NhNTc1MWNhM2MxMTYzMWNmMmZhMWU4IGxlZ2FjeS10cnVuaworMjE4NTQgMmJhMWQ5ZDk5NmEzODNlZTIxMjRkYzNiNzcxNjFlN2Y4NjM2YTVmYyBsZWdhY3ktdHJ1bmsKKzIxODU1IDA1MDVkOWRjODMzZDc0MDM1OTUyODM1MzMxZGEyY2Q0Y2U2YWY2ZWUgbGVnYWN5LXRydW5rCisyMTg1NiBjNjU5ZDRjMDA5Y2JmYjM3ZjE0NGNkOGYwNmQ4Njk5OWVkNzExNzNhIGxlZ2FjeS10cnVuaworMjE4NTcgYWQyZjUyNmYwMDE5ZDQxOTgxZTk5MjA4MDQyNzUyN2VhYmU0MDk5MSBsZWdhY3ktdHJ1bmsKKzIxODU4IDhjYTcwYzljMTk3MTM3NmU1NGI1NTU1OTY0Yjk4MGZhMWViZmJiZjUgbGVnYWN5LXRydW5rCisyMTg1OSA0NzkzMmQ4MmI4ZWIxZmY2MDE4YWQxYzhhYmQzMWU2ZDcwMWM0NjU2IGxlZ2FjeS10cnVuaworMjE4NjAgYTM4ZTc3MjQwYTY3Mzk4MGVlOGQ5ODE4MTQ2MTVmMzEyNzJkMjQ0MiBsZWdhY3ktdHJ1bmsKKzIxODYxIDU0ZDA0NTljOGUwZmRiZDYzYzI0YmVhM2I0NWE1ODc2NTAxNTc4ZDkgbGVnYWN5LXRydW5rCisyMTg2MiBmZDc0Y2I1Yjk1NzMyYzg5ZjRmOTBmNjgzYTJhNTUwMTY0OGJkODFmIGxlZ2FjeS10cnVuaworMjE4NjQgMDljNmZlN2RiYjFjNTNjZDdhZTFlODViZDQxMjU2MTg1ZTZiMWUzOSBkZXNjci1icmFuY2gKKzIxODY1IDQ1ZjUzZmU0NGMwZTZkNWNhNmM1MmY0NzRiNDQyNGIxZjY1ZWIxODYgZGVzY3ItYnJhbmNoCisyMTg2NiA2MmUyNGJjNDdiNjIwNzJkMzE1NzQxM2U0MjQyMDJkZDM5YTJjYTVkIGRlc2NyLWJyYW5jaAorMjE4NjcgYjIxZGYwOTFmYmJmZDZkN2M3ZmZlODY4MTZjODRiZTQxZTQxMmJjMSBkZXNjci1icmFuY2gKKzIxODY3IGQyNTA5NTkxMzNiNWE5OTZiMWVkZjhhNDc3MmZhMDJlNThhM2E5NzIgZGVzY3ItYnJhbmNoCisyMTg2OSA0YzU5ZTkzNGU3NjVkZTUwM2JlOTM2OTg5OGU2OTExNjY5ZmY3ZTkyIGxlZ2FjeS10cnVuaworMjE4NzAgMDY0ZGU4NDM4NWNhZWEwZDI3ZDdlNTlkMDRlNmE5Y2ZhMjM4OTM3YyBsZWdhY3ktdHJ1bmsKKzIxODcxIDUxYzM4MmQ1ODUxYjkxOTJmODZkMWM0NWM2MTgyZTc5NGE1YjhhZDQgbGVnYWN5LXRydW5rCisyMTg3MiAwNzkxN2YxNDM0ODg2MjE2MDNlYzU2NzE5ZDc5OWI3NDBkMjEzZjIyIGxlZ2FjeS10cnVuaworMjE4NzMgMDA2OTU1NTFkNzIxMjExNzA1ZGQ3M2EyMjUxNjMyZjIxZDg2YmQ5NSBsZWdhY3ktdHJ1bmsKKzIxODc0IDQzODE0NjFjY2U1ZGY5MmNlMTM1ZDVhNGQ0YmMzZjBmMjZlN2YxNWYgbGVnYWN5LXRydW5rCisyMTg3NSA5MjE4ZmE2NTIzOTFmM2E4OTFjNzI0YzRiOThkMzdmODZiN2NjNDc1IGxlZ2FjeS10cnVuaworMjE4NzYgMjUyNDRiZGIxNjNkOTIxZTIxMzBjZTZhZTBlMDJlMmFmM2Y2MWE0NyBsZWdhY3ktdHJ1bmsKKzIxODc3IDFjMmRhNzhiODM5YjliMDU4ZDY2YjY3MzVhMjhlNTBmMDY1MGNiMjkgbGVnYWN5LXRydW5rCisyMTg3OCA2Nzk0ZGNhZTVkMGNkOTg0ZTBkMGQ3NDgzYWE1YWU4MjQ4ZDBiYjM2IGxlZ2FjeS10cnVuaworMjE4NzkgYzc2Njc1NmQ4NGQzMzc1ODMzOGU5NDlmNGFlN2ViZDJkN2M1ZjcwMCByZWxlYXNlMjEtbWFpbnQKKzIxODgwIGRhZWE5NGYwNjQyOTYwOWY0YmZiZGQ5YmZiNjQwY2U3OTM2MWI4MzggcmVsZWFzZTIxLW1haW50CisyMTg4MSBhMWYxOWVlMDFhYWUwZDVlZTNjMzJiOTdlZmJjM2MzZjFiNTMxZjU0IHJlbGVhc2UyMS1tYWludAorMjE4ODIgNTM1NDVjMzcxZmUzODQwZDEyMDk0N2M1OTFjNDBjM2Q4MmUxNjlkMCByZWxlYXNlMjEtbWFpbnQKKzIxODgzIDNjZDMwODFkZjYwMWMyMGE5MmY4MWFmNDI1MTg4YWIxN2MwNzIzYjEgbGVnYWN5LXRydW5rCisyMTg4NCA5NWVhNjEwZjNmNTRkNzJhYzg2NmUzNDk3YjgxNmI4MTI1ZTdkZDYxIHJlbGVhc2UyMS1tYWludAorMjE4ODUgMzZjNTYxZWU5NmI1MzI5ZjUwYjAzMGNkYjkzZjVhOWJiZWYwMzNmZSBsZWdhY3ktdHJ1bmsKKzIxODg2IDhkZjc3NDE1YTYxZDU2NGM4NjM5NTY4MjM1OWI0Y2MxYjhjZjZmYWEgbGVnYWN5LXRydW5rCisyMTg4NyAwM2MyMGU3Y2NlNmFjZDRkMjgwNDQ4MGRiNGI3YmNiZTFkZDkzNWY2IGxlZ2FjeS10cnVuaworMjE4ODggNzBlMTg1OGFkNzAzMjIxYTYyNjA4MzdlY2FiOTI5OGZjOGY4OGQ1MiBsZWdhY3ktdHJ1bmsKKzIxODg5IDIzNzM2ODY0NGMxM2Q1MzdjN2MyY2M4NzNhNTkzMzE1ZjQ0MzI1MDkgbGVnYWN5LXRydW5rCisyMTg5MCA3MjZmNGQwNmJkNGJkMzg4MDI5MWVjYTE2MzdjYTllMjA1NTFiMTUyIHJlbGVhc2UyMS1tYWludAorMjE4OTEgMjRkMDA1NTdmYmM5NWFhN2ZkMWZkYTMzODEyZjhiN2UxMDBjMjlhZCByZWxlYXNlMjEtbWFpbnQKKzIxODkyIGIwOTQ5NjU5NjBhZjkxZDBhOTMxNjdhMjg5ZmQxNDU5ZWViNGQzNTMgcmVsZWFzZTIxLW1haW50CisyMTg5MyA0YzBhZGI4YTViYzY1MzkzNDI4ZjY0NTFhNDA0N2M4YjQ3MzMyMTMxIHJlbGVhc2UyMS1tYWludAorMjE4OTQgOGNmNTNkMGY4NWM4NzRlN2ExZTdmN2MwMTVmZTJhMjRkM2I1ZGVkZiByZWxlYXNlMjEtbWFpbnQKKzIxODk1IDVjNzM2MjFjOTU1OWI1OGZiZmNjMDU2OWNmN2Q4M2UwN2E1OTcxOWMgcmVsZWFzZTIxLW1haW50CisyMTg5NiA1YjA3NDcwMjM5ZGI4OTI0Yjg3MzY0M2JmNDY3MzMzNGU5NzliNjEwIGxlZ2FjeS10cnVuaworMjE4OTcgNGNhOWFjZWQ1NTAzN2NmMzE2NTcxOTk3MWM4NDM2MmNhZWVhMjQ3MSBsZWdhY3ktdHJ1bmsKKzIxODk4IDU1MzIwZDYyOTFjOWY1YWI4ZThkNjFlZTQ1MGJlYmE2MWY3NGI3MjIgbGVnYWN5LXRydW5rCisyMTg5OSAzYzA1MGQxZTM1YjEwMmE5NmNkMTMxMDVkZDFiODM4ZmZkZGY5YjY3IGxlZ2FjeS10cnVuaworMjE5MDAgMTFmNGNkNDVhODBjMDc4MzdkMDg0OTVkY2RlZDhkMDRmZGZmODY4NyBsZWdhY3ktdHJ1bmsKKzIxOTAxIGJhYWFjOTRmZWM1NDc1MjBhZmU3MTY2NDZkZjUyNGU0NmU2OGI1NzUgcmVsZWFzZTIxLW1haW50CisyMTkwMiBlZTliNDU4MDQzMzc3MGI0MjdkZTZmMmVlMWQyNzMyOWY2YzVmMGE5IGxlZ2FjeS10cnVuaworMjE5MDMgY2E5ZDdhNjM3OTRmMDE1YjhiOGM3ODVlNWQxMzllNTdhNGFjODhhMSByZWxlYXNlMjEtbWFpbnQKKzIxOTA0IDkxNzE2OGZiZmQ5NGIzZGY3ZmU2YTNlOGViMzFkZTgyMDlmYjIxODQgbGVnYWN5LXRydW5rCisyMTkwNSBhNTU3ZTk1YjkyZjBiZGYyZWUxZTU3MTliMjhkYmY2MjliM2ZlZGI4IHJlbGVhc2UyMS1tYWludAorMjE5MDYgYWU2NzZjZjE0OTVkNGZjZmYzN2U3ODhjY2RhNTI4ODg3NTJhOTQ3MyBsZWdhY3ktdHJ1bmsKKzIxOTA3IGM3ODBjNjFiMzVjZWM5OGRiOTJlOTNiNGY1YmZlMjg3YTgzMjRmMDggcmVsZWFzZTIxLW1haW50CisyMTkwOCBhZDZjNWMyN2VjYmU2M2U4NjE2YTIzZjM2OGVhMTllMDlkYzgxN2NhIHJlbGVhc2UyMS1tYWludAorMjE5MDkgZjhlMjg2OTk3NmIwZTUwNzUwOTE0NTIyMGFhNmI4NTIyNDhhNWQ4MiByZWxlYXNlMjEtbWFpbnQKKzIxOTEwIGQ1MWIyZDkzMzgxNDc4NjE5YzI3Y2ZhNGQzMGJkZjVlOTA0ZTEyZGEgbGVnYWN5LXRydW5rCisyMTkxMSAzMzVlNzViY2I1MWFkODZlMDBiYjc1OGU0MjVlNTI0MjY4YzA5YzYxIGxlZ2FjeS10cnVuaworMjE5MTIgMmNlNmE5YjBhNTFkNjg0Nzc5MjA3NTA0YTljOTIyNDZhMWY0MjAwYSByZWxlYXNlMjEtbWFpbnQKKzIxOTEzIDE0MGI3MjkxMzBkMGM1ZjBiZTMyOGRkZjU3MjNiZjM0NDQ0ODk4NzggcmVsZWFzZTIxLW1haW50CisyMTkxNCBiMDMyOTY0OWI4Y2ZjZmE1YmEzNjFmYTE2MmFlOTQ3NmZlZDVkNjYxIGxlZ2FjeS10cnVuaworMjE5MTUgYzI1ZjJjMTNkMzgwNmY0YzM4NzY1N2VjYWIzOWU1NjY4OTI0ZDE0MCBkZXNjci1icmFuY2gKKzIxOTE2IGRmNGI2YjVlYTliODVjNWM3OGI4ZGZlODcwZTk0YTQ1N2I5NWE0ODYgcmVsZWFzZTIxLW1haW50CisyMTkxNyA1OWQxNGM4ODY1MWNiNDQ0Y2EwZTkyNTc1YWJhMTI1YjQxMTc1Y2YwIGxlZ2FjeS10cnVuaworMjE5MTggZmVjOGY0MDM1ZmIyODY2YWU0NWU4MTQ4MjNkZTY5MWM5YWFlNzY1NSBsZWdhY3ktdHJ1bmsKKzIxOTE5IGRlNmYxNTg5Njg2MTk4MGNhOGQ3MmYzZjgxZDNhNzdmOTBjMDA1MmQgbGVnYWN5LXRydW5rCisyMTkyMCBiMjZmZjE2NDMyMTFmMTRjMmM2MGQ0YTM4ZTkxMWM5Y2QyMTFlMmRlIGxlZ2FjeS10cnVuaworMjE5MjEgNzA0NDg2NjQyMDc5ZmU2MzEzN2MzYTEzODVlNjFiNjJkMWQ5MzM4NCBsZWdhY3ktdHJ1bmsKKzIxOTIyIDFhYTdlMjE5ZjUyZGM4MmE5ZDU2YzY4MDQ4MmVjYzk2ZDNhNTk5ZGEgbGVnYWN5LXRydW5rCisyMTkyMyBjN2NiMWM5ZTlkOWM1N2RiNTI2MTc1YjdmM2ZmY2QyODUyYjU5MjRlIGRlc2NyLWJyYW5jaAorMjE5MjQgYzcxMmIxNmZmYWNkNjNiNWQ2MjgyYjEzMzlkMDEyNmRiYmE0MjZhYSBkZXNjci1icmFuY2gKKzIxOTI1IGIxNDJiNTE3MzA5Yzc1MmQxMTFhNTQ1NTI0MGVlYTg0MTFhMWUwODYgcmVsZWFzZTIxLW1haW50CisyMTkyNiA5MjBlMDM2MWRkNmUzZTc0MmNkNTAzMmM0Y2U3MDQ1NmVjODQxMGY4IGxlZ2FjeS10cnVuaworMjE5MjcgMTMzZTU3MDE1MTAxNGY5ZGYwN2EyMjA2ZGMyMjYxNDYzMWI2ZmQ2OCBsZWdhY3ktdHJ1bmsKKzIxOTI4IDhjYTJlZjY2M2FkMjBjYmQ5ZTgyMDNiODJkZjg5ZjY5NmQzNTQyYzggbGVnYWN5LXRydW5rCisyMTkyOSAyNzZiZjU5NmU4ZDE4MDg2MTU4ZTBlYjg2MjFjODhiZTg3ZGMyYjcwIGxlZ2FjeS10cnVuaworMjE5MzAgZGY5YzRjNTRlZjNlZjlkNjM0MjU4NTczZWJhMmZmNWZjNjU4YTQ3ZiBsZWdhY3ktdHJ1bmsKKzIxOTMxIDc0YjdiOGE5NjI4YjY2MjAwZjAxNDIyNzAwMzlkMzRiMjZkNmRiNTUgbGVnYWN5LXRydW5rCisyMTkzMiBlNWJhZmRkZDFkYTA0MmU5YzQwZjBhNDFkMGRhMWNiOTRiY2ZkY2JlIGxlZ2FjeS10cnVuaworMjE5MzMgZDA5MzhiYzEyYTExZTY3YjNiZTA4ZTFlYmM2MDM1NTMxNTA0NDdhNCBkZXNjci1icmFuY2gKKzIxOTM0IGM2ZWY3MWU5NDNkZDY0MGI0ZmQyMWVlM2JiOTJmZDYzZmFlYTgzNjMgbGVnYWN5LXRydW5rCisyMTkzNSBhYWM2MmFhYTg0NmRlZmFkMGJjNDU1NDljYTMzNDVmZWYyN2Q0ZjJkIGxlZ2FjeS10cnVuaworMjE5MzYgZGI2NDdmN2M4MzFiYzU4YTIzMDI2ZGFmYmFlNzQzOGVmMDYyYzEzYSByZWxlYXNlMjEtbWFpbnQKKzIxOTM3IDkyZjgxNDQ5ZTE2YzIxZTdmOGY5NGE0NWM0YTE4YTExMTIxOGZmODggbGVnYWN5LXRydW5rCisyMTkzOCAwMTY5MmJmMDJmOTc4NTA1NTdhNmU0NGM4ODY2MmUzMTliZGYxM2Y3IGxlZ2FjeS10cnVuaworMjE5MzkgM2NkMDNhNjRjMzM4YzAwMzQzOThhMzI0NjIxZDhiZTE2MzFmZGU3OSBsZWdhY3ktdHJ1bmsKKzIxOTQwIGY4YmQxNGFlZjRkNmZiNWRkZjRlOWQ3YzcyNmYyZmQ4Njg5YzQ5N2MgbGVnYWN5LXRydW5rCisyMTk0MSBhZjlhZDkwYTQ0NDU4YjZlMmQ0OGNjZDhkZGUxYzMxNDM4MmQ2NWY3IGxlZ2FjeS10cnVuaworMjE5NDIgNGQ0NmExYjMzYzYyMTNiZTAwZTdlN2M5NDU5ZTRjZDNkMGUzMzg0ZiBsZWdhY3ktdHJ1bmsKKzIxOTQzIGU3MDkyOWUxMDY2M2NlZGRhODBiNmI0MGM0YTc0M2I4ZTU1NzhiOGYgbGVnYWN5LXRydW5rCisyMTk0NCA4MDJhODRlODRlYTk0MmY2MDY0MDhkMWQ0NjY3MjM0YmI1NjFmMzYxIGxlZ2FjeS10cnVuaworMjE5NDUgMjllMDliOTZlZDM2MzVhOTNjMzljZGVkY2Y3ZjU1ZDYxMzg1MTMzNCBsZWdhY3ktdHJ1bmsKKzIxOTQ2IDc0ZGZlMzIwMDQyM2RkMzZjM2NhYTBkZmJmYmM0YzYyMDg4NDczNDMgcmVsZWFzZTIxLW1haW50CisyMTk0NyAxZDUwODNlNmQxN2U2Y2NlNTdlNmE5YTAwYzJiODNiZjgzODJkMTExIGxlZ2FjeS10cnVuaworMjE5NDggNmJlZjA5ZGE5YjkzMjRmMjgyZDlhZDZiMzNmMzY0Mjk3NWY3YWY1OCBsZWdhY3ktdHJ1bmsKKzIxOTQ5IDBlYmZiMjU5ZWNjNjVlOGNjMjcxNWU2YTRlOTU5ODQwZTA5NzlmZDMgbGVnYWN5LXRydW5rCisyMTk1MCBjYmQyMmM5MDI3YjJiM2QzZjM0OTY2NjVmOWEwMWU0NjQyY2FiYWQyIGxlZ2FjeS10cnVuaworMjE5NTEgZmY4ZTBjZTFkOTg2OTgwNmZjNjhkNjUyNmFkNWIwMDZjYTVhYjYxMSByZWxlYXNlMjEtbWFpbnQKKzIxOTUyIDE0MWJkNzBlMGI3MjMwNTljNmRkNTQ4ZmJjNzk3ZDRlYzQwYWU2ODQgbGVnYWN5LXRydW5rCisyMTk1MyAyZTE3M2RhMTFkMmQxNDZjOGJiODIzYTcyZmZjNTlmM2Q2ODcxYmZmIGxlZ2FjeS10cnVuaworMjE5NTQgODI0MjkwN2M4OTU3M2Y4ZWViMzZhY2UyMWI0YzA5MjkxNTM3N2ZmNyByZWxlYXNlMjEtbWFpbnQKKzIxOTU0IDU3MjUzM2EzMDM4ZDE4MzJjOGEyMDBmYjg3MTgxMTJkZDgzNzU4ZTkgcmVsZWFzZTIxLW1haW50CisyMTk1NiA3OWQzMDRlM2JhMjU3YzkwY2E5MTRhOTg1MmZmMTRiNTFkNWI1ZDFiIGxlZ2FjeS10cnVuaworMjE5NTcgYjEwZmYzMzc4OTZiZTU3N2VkN2MzZWY0MDFiM2Q5YWI2M2RiNTZkMCBsZWdhY3ktdHJ1bmsKKzIxOTU4IDVkZTIzYTYzOGFkNjRlOWY1OTVkY2FkOTc3NGNkMDJmMzdhOWE5YjMgZGVzY3ItYnJhbmNoCisyMTk1OSA3NDNmOGUxZDk1M2NiYzFiZWY2ODk0YWVjMDZlMDhhYjJhOGVhN2ExIGxlZ2FjeS10cnVuaworMjE5NjAgNTc2ODRkM2NlZmNlOTFjMDM5MTliMWM1MWRiNDNkOGRjNWY1NGNhYyBsZWdhY3ktdHJ1bmsKKzIxOTYxIDJkNjg2MjYxNDNhNzljOWZhZjcxYjA5ZTdiYzRjNWNjMDQxMDk5YmIgbGVnYWN5LXRydW5rCisyMTk2MiAyMmIyZjRiNDM2YWZmODM5MDI1YTUzNzdjOTZkMzEzMGNmYjg5NWNmIGxlZ2FjeS10cnVuaworMjE5NjMgNGQzM2FjYmRjNTA4ZjRiZDc5NmJmMWI4ZjJjYmIwNGQ4Mzc2NWVhMiBsZWdhY3ktdHJ1bmsKKzIxOTY0IDIzYWU0N2UwMDExOWYzYzY5NjJlYjc0ODg2MTkwNTM4MTY0YzM3YjggbGVnYWN5LXRydW5rCisyMTk2NSA0NDE1NTEyMWYwMmIxZTI4Mzc0MWY1NjJiMjI0M2FiNmI1MGZjYTUwIGxlZ2FjeS10cnVuaworMjE5NjYgNWViNDYwYTY1ZmY3MGEzNGU1ZjQ1ODg1ZTljMDc5YzY0NWQ1OTYwNyBsZWdhY3ktdHJ1bmsKKzIxOTY3IDAxYWU5NjJkZjg4NWU0ZTZlN2JjY2M4ZjI1NTQ2MTAyMzhjYzMxNzQgbGVnYWN5LXRydW5rCisyMTk2OCA5ODQ4NGVmMjI1ZjkyODlmNjIxODE1OWNhN2YzYjg0ZjcxNmM4MDA3IGxlZ2FjeS10cnVuaworMjE5NjkgYWMxM2E2Y2UxM2UyNGNkMGRhYTE4Y2Y0MDJjODhjMzc0NTk0ZmM1NiBsZWdhY3ktdHJ1bmsKKzIxOTcwIDAxYzYzOTk3MWJmZjEzYmZkNTRmODQ0OTZlODJiZWM5NjA1MDIxOTggbGVnYWN5LXRydW5rCisyMTk3MSBiNDY1Y2Q1MGNmMzY0YTk2MjM1YWIyMzdjNDU0ZDk5Njk3YWVmMTc5IGxlZ2FjeS10cnVuaworMjE5NzIgMGUyMjMxMmM0NzMzNGJiZDg5Y2I5ZGUzMjFiNTNjZDU1ZGUwNmM3YyBsZWdhY3ktdHJ1bmsKKzIxOTczIGY5OTlkMzYwOWY3NDY2ZGM2NDUyNzMyZmI3YTViZDU3M2YwMTU4MDQgbGVnYWN5LXRydW5rCisyMTk3NCAyNDAyMDcwZWUwMjRjMzJlMjFiYTVjMDc3OGYwMjc1NjRjZjA3ZTliIGxlZ2FjeS10cnVuaworMjE5NzUgMThkZjA5NzhkZTVkMmUxMTIyODc2ZGZkYzlkMjA1NmFlMjg2NjAyNiBsZWdhY3ktdHJ1bmsKKzIxOTc3IGIzMDdlNWE4YjRkOGQ1OTFmOWZlOTQ2MTg5MmMyZTNkNjFkY2E2MTcgZGVzY3ItYnJhbmNoCisyMTk3OCAwMTQ2MzlkYzY1ZjhjNzY0ZDkxNjRiYTRiNDg0ZmMyMzg1ZmQ3NzlmIGRlc2NyLWJyYW5jaAorMjE5NzkgN2NkMjJiZjU2ZDdiYzIxODFjNDMyZGU2NzdmNTA5YTdjYWE4YjIxMiBsZWdhY3ktdHJ1bmsKKzIxOTgwIGQxMTE5NjMzYTczZTljZGRhNmI3ZDFkZmM0MWNkNWM1OTBhZDVhYjIgbGVnYWN5LXRydW5rCisyMTk4MSAwMmI4MWRmMDQ4YmM1OWY2N2ZjNjlhNWMxMDZmMjNlNDJlZTY2ODY2IGxlZ2FjeS10cnVuaworMjE5ODMgYzJmYmI1OTQxZWU1NmZiOGE5ODU2ZTkzYjMwM2Q0NDdmMDljMmZkZiBsZWdhY3ktdHJ1bmsKKzIxOTg0IDRkMGVhNGMyMzg2ZDVkODhjNDMzNzE5MWYwYjE3NzBhOWI3NzgwZjIgbGVnYWN5LXRydW5rCisyMTk4NSAzZDUzYjU5ZjQ4ZTY2YzgzNWQwMjg2MzljODY4OGU2M2JhOTEwYTRlIGxlZ2FjeS10cnVuaworMjE5ODYgNjA0NzkwZDQ5M2ZhNzM1OWQ2NmU4MmY5ZDA4ZjkyOGZjZGIyZmE4YyBsZWdhY3ktdHJ1bmsKKzIxOTg3IDE4YTNlMGQ4ODA4ZTBmNzU1NjRiMTNjOTFlOGJjMTMwY2E3ZGJmOTkgcmVsZWFzZTIxLW1haW50CisyMTk4OCBkNTkxYTk2YWVkMDY0M2Q1OWVlNjc1NGJiZWZhNmNjY2JjZDUxYmY1IGxlZ2FjeS10cnVuaworMjE5ODkgOTY0NTVmNGFiYWRkMzNlN2JhNDExMDRmMGI0MjIyZTk2NzY3NTE5YiBsZWdhY3ktdHJ1bmsKKzIxOTkwIDRhNDMxOTUyNjc2YjU3YjAyZWJiMTdiMjI4Mzc5MDU3NTg1Yjc2Y2QgbGVnYWN5LXRydW5rCisyMTk5MSA2ZDk4NzRiYjk3OGZiZjVjNWZkOWY2MmVlOGUzN2FkMzVkNmE2ZGY4IGxlZ2FjeS10cnVuaworMjE5OTIgOTk4ZjgwNTE0YTEzMTI5ODhiMzU0NDk1ODBkNDQ0YzdiMDVmZDY0NiBsZWdhY3ktdHJ1bmsKKzIxOTkzIDc2M2JiNmZhZTI4MGZmNzAyN2VkNzRmZTAwZTdlNDU2NmRlYzI5NzMgbGVnYWN5LXRydW5rCisyMTk5NCA3MGI5YjZmNGU3OWMyYTgyOTY0Y2Y5N2U4OGU3YzI0MmQ0MTJmYzM1IGxlZ2FjeS10cnVuaworMjE5OTUgNDQ2MmM1N2Y2Yzk0OGRkZDhkMDI2YmNlNmNlNWQxNmRmY2E3MDZjYiBsZWdhY3ktdHJ1bmsKKzIxOTk2IDc0ZjA1MGY3YzM2NGRlZmI1OGMxOWE1NzhiNmY3NDVmMjZjNTNkODQgbGVnYWN5LXRydW5rCisyMTk5NyAxYjY4NjhlODlhMjNlOGYwYTBlMDdjYWIxZDhjZWVjMjc5NDJiMmY4IGxlZ2FjeS10cnVuaworMjE5OTggYThiMWFjYzdhMjFmNTRkM2Q1MmQ0ZWZlZjRlMDczYjg2NGM1ZGVmMCBsZWdhY3ktdHJ1bmsKKzIxOTk5IDgxMzE1YjZmOTQ2OTUxMDIwNzRmNGIxYzA0NzdmMzJjMzNhOGUwZGEgbGVnYWN5LXRydW5rCisyMjAwMCA0MTAwN2Q1MGNjYjczZDI3NTYwM2RjZTY0MDYzZjliZjE4ODRjYmIzIGxlZ2FjeS10cnVuaworMjIwMDEgMjllNjYxYzUyYzBiNTVlOWI1OGJiYjE3ZjAyNTZhN2ViNGZlZTlmNiBsZWdhY3ktdHJ1bmsKKzIyMDAyIDBjM2FkNTAzYWQ2YzQ5MjAyODFlMzZjZjllMzk4NTM5ZjlmMTk0MmIgbGVnYWN5LXRydW5rCisyMjAwMyBjMzA3MWJkNmE3MTMzMThjYjBhYjc5ZWY5NjlmYzMzZmQ1YzMwMDYxIGxlZ2FjeS10cnVuaworMjIwMDQgMTA3MzI2NTE1NDI1ZGI3OWE5Mjk0MmIwNTY5MDViODE2YTg0ZTc1YSBsZWdhY3ktdHJ1bmsKKzIyMDA1IDY5M2IzOTgzMWY3MTgxMDcyNTU3NDZlMjAxNDViNTQ2NDRjZDkxOTcgbGVnYWN5LXRydW5rCisyMjAwNiA1MDAwNGJlZDRlNjVhOTE2YjNiNTE1MjM0YTdhZjliOTUzM2NhZWNiIGxlZ2FjeS10cnVuaworMjIwMDcgMzE1YjNjYjEyN2MwNjIyMWQ4NDJlZWFlZGI1YjAwMDE4NDIxMTBjMCBsZWdhY3ktdHJ1bmsKKzIyMDA4IGNlYmI0ZTE4NzQ0OTlkNDgzMDU3NzAxMTU1MDJiODYyMmM2NGFlM2MgbGVnYWN5LXRydW5rCisyMjAwOSBkYzliYWY4MGM0NWFmZDkyNjc2NzlhNjU2NjNkOWUxYWE0N2RkYjEwIGxlZ2FjeS10cnVuaworMjIwMTAgNDY3N2QyZmYzMTUwOGY1ZmE2YWFiNjQwYzU4MzRmNTU5MDYzM2Y0OSBsZWdhY3ktdHJ1bmsKKzIyMDExIGE2MzYxYzJlNTA0NGFjZDQ0NzFhYTg1NDljM2FkMDRjZTEwZTk5NzggbGVnYWN5LXRydW5rCisyMjAxMiAzM2Y4MjA4MDU1OWUxNjk4ZDQwNzkyMzkyMmM0MGMxN2FlNmFhNjk2IGxlZ2FjeS10cnVuaworMjIwMTMgM2FhODdmMzRjYWIwMWI2NDRkMjYyMmEwMzkwZjEyNjFkM2M5NDk5ZiBsZWdhY3ktdHJ1bmsKKzIyMDE0IDZmOTI0MmQ4NzA1OWU4NGZhOGE4YWE2N2VhZTQ5YmNmZGVkNjI2NjcgbGVnYWN5LXRydW5rCisyMjAxNSA0MDkwMDYyMDI5M2U2ZDZkY2MwMWNkNWRhY2ZlMjI5NjAzOWYxMWYzIGxlZ2FjeS10cnVuaworMjIwMTYgYjgwYWM4ZTMxYTgwMmVmZTc0OTYwZDMzODc1MjgxMjQzMzAzNzU3MyBsZWdhY3ktdHJ1bmsKKzIyMDE3IDdjOTI4MTE2YmFhMDBkZTBmM2QxYzI0NjUwNWViNGEzZWY4OWU4YWUgbGVnYWN5LXRydW5rCisyMjAxOCAwODFkOTZmYmNmNDMyY2JiNzUxOGRmZTc2MGQ1N2MwZjFiNjVlODBkIGxlZ2FjeS10cnVuaworMjIwMTkgMWJjMWZkZjE0ODJiMDZjNzdmYWNhNTYwYTVjMmM2YjZjYjZjNWFhNSBsZWdhY3ktdHJ1bmsKKzIyMDIwIGZkYjM4OGYyZGY0ZWFhNzMxOTBiNDI1MDE4NDU0ZTBlOTFkNGZlYjYgbGVnYWN5LXRydW5rCisyMjAyMSAxMzJjNGJmZGJhNzQ4MDE4Y2QwNjYwZTBjOTIzNDljMjc4OTM5ZjI4IGxlZ2FjeS10cnVuaworMjIwMjIgMTMxYTlmNzVlMjU4MmRkNTRlZjZjMTNkYTk2NTY1NzBjZTVmMmQ0OCByZWxlYXNlMjEtbWFpbnQKKzIyMDIzIDNjYzY2NzUwNjg3ZDVjZTgzNGU2NTE4ZGQ2ZjNmNTFhMGQ5NWRiZmUgbGVnYWN5LXRydW5rCisyMjAyNCA3ZTUyYmY1MmFlMzM0ODdkYzQ3NWYyMDM0NjM4ZmM1YmM5MDc5YzZlIGxlZ2FjeS10cnVuaworMjIwMjUgMmRlYTQwZTQwZDlkNTczZTUwNjdhNWM3NjBlOTkwYTM3NTI0ZDBjNyBsZWdhY3ktdHJ1bmsKKzIyMDI2IDAzMzA1NjAyYmE5Yjg1YjNiZmE4MWEzMzdiMjZkNDVlNGNiOGE0NDggbGVnYWN5LXRydW5rCisyMjAyNyA1ZTBhNDBjY2I5ZGE0Y2ZjOTVhNzI3ZTU0MGEwYjNlZGM0OWYwNmZkIGxlZ2FjeS10cnVuaworMjIwMjggYTg1NzVmMzU4YjlmZGY3ZDcwYTU0YzEzNTRlOWFhZTgwZjBhZDdhZCBsZWdhY3ktdHJ1bmsKKzIyMDI5IGFiOGFhNDMwMjEwOTkxMzIyNmUzMTdmMDdhNzkxNjVkZTMzZWM3YmEgbGVnYWN5LXRydW5rCisyMjAzMCBjMDMyYWFmNmM4MTIzMjBkZjIxMjE4NTA4ZGZkMzk2ODA3OTk3MDQwIHJlbGVhc2UyMS1tYWludAorMjIwMzEgYTFmNmZkMDEyMDVmMDIyY2NlZTMwMjZkZjBlNWJhOGYwZGMwMWE2YiByZWxlYXNlMjEtbWFpbnQKKzIyMDMyIGU2NmQ2NDdiNzMyZjIzZjc1YjQxYTdlYmVlODU3OTY3YjFiNjY5Y2EgcmVsZWFzZTIxLW1haW50CisyMjAzMyAxYzVkMjU2YjEyNWE0YzQ4YTA5ODNjZDI4ODBlZGFmYmRlNGNiZWY3IHJlbGVhc2UyMS1tYWludAorMjIwMzQgMDQ1ZjU1MTM1YWQwMDRhNGNiYjFmZWQ3ZTU1MzU4ZGFjNWNkYzA1ZCBsZWdhY3ktdHJ1bmsKKzIyMDM1IDg3NmFlY2VmNjQ4M2YzNGUzOTUyM2NjODkyYTgzMmMwNzkzMzJjNWIgbGVnYWN5LXRydW5rCisyMjAzNiAzZTVjZTk5NDU5ODYyYTIyMjc2OTY4NDJmNTFlZWI3ZGM4NWZkZTFjIGxlZ2FjeS10cnVuaworMjIwMzcgZTE0NjQxNDNjNDYzMzA2MjQ0NjRiZGVmOWFjMTQ0NzgyMDc0Zjk4ZiBsZWdhY3ktdHJ1bmsKKzIyMDM4IDEyY2JjOTQyZjU0OWQ1MzhlZmZmMDVkOTc2Y2ZhNjcwNzAwOTY4MTYgbGVnYWN5LXRydW5rCisyMjAzOSA3N2ZkMjBiY2M3NjYxYTcwYjg0YjViMTRkNDNiYWNmOGEyYTliNDJhIGxlZ2FjeS10cnVuaworMjIwNDAgNDNhYzE4MDRkMmFhY2JkZGNiNWM5Mzk4Yjg5OGU1MTMwZDQ3NmMwNCByZWxlYXNlMjEtbWFpbnQKKzIyMDQxIGVmMjAzMWM1NDg3NTc2MzI0ZDY3ZjM2NzFiOWQ1MWI4NDNmMDU4NmUgbGVnYWN5LXRydW5rCisyMjA0MiA1MzMxZjQ3MDU4YTE5OTEyMzIwMWEyMWZmZGMyNzQ3MmJlZmJjNDJkIGxlZ2FjeS10cnVuaworMjIwNDQgMmIxNjUyNmEzNWE0ZGUxMjFlYjdmMWEyZjZlNWY2YzY4YzUxMWMyNSBkZXNjci1icmFuY2gKKzIyMDQ1IGY1MmMwODNiNTU4ODE2ZTEzYjYzNTlmZjhlNzQ3NDQ3MDdiZjIzMWUgZGVzY3ItYnJhbmNoCisyMjA0NiAzMTQ3ZWZlMzFlYjg5ODIxNTM2OWNiNzFkMWE4MTBiNjlhZWJjNTI2IGRlc2NyLWJyYW5jaAorMjIwNDcgZDk3MmNlYjRkYzA2NDBjZjA1MTliNWQzODI2NzVjYzkzNDhjMmQ3NSBsZWdhY3ktdHJ1bmsKKzIyMDQ4IGQ2NDYyOGNjOGZmYzhhODZkZmY3M2ZjMTNiNjc1ZjNkNTNhY2E0NjIgbGVnYWN5LXRydW5rCisyMjA0OSA2ZjMwMWIzY2YzMjNlYzkzNTQ5YzY4ODZmMDFiMDViODI5ZTc1ODc0IGxlZ2FjeS10cnVuaworMjIwNTAgNGVlMWZlZTFkNGFkYjc0MzA0MGJlNWM5YzY0YzhkNDU3ZDcxYjFlZSBsZWdhY3ktdHJ1bmsKKzIyMDUxIGQxNjY5YWY5ZDBlYzUyZDM3Yjc0OTVlMTNjMzUzMGQ2MTNlZTUxZWIgbGVnYWN5LXRydW5rCisyMjA1MiA3MzQzNjIyZjJiODVkMTQxMjRhNGMzYjc4ZTk4MGU2MGM1YjliOGU1IGxlZ2FjeS10cnVuaworMjIwNTMgZDNkOWNlYTIzMTU2NjlhMjFlNzRlNGU4Y2EyMmE2ZGMwMWYwNTE0MyBsZWdhY3ktdHJ1bmsKKzIyMDU0IGFlMTljNjk5MDc0OTYyMGIwYWU5MThhNzg3ZTcyMDQ2MmMzNmRhYmUgbGVnYWN5LXRydW5rCisyMjA1NSA5YWMxZDM1ZjgxMzY2Y2UyYjI1NGU4MjJiNWFmODhlYmJjMmUxYTE2IGxlZ2FjeS10cnVuaworMjIwNTYgZWE4ZTk2M2Q5ZTY3MjQ0NjlkY2Y2MzYxNjAxYmE2ZjFjMjc5OWRhMSBsZWdhY3ktdHJ1bmsKKzIyMDU3IDZmNTkwMzJhZjE1OGYxODU2MTQ2MDVlOTNhMGU5NjM1MzA5YzdlYzMgbGVnYWN5LXRydW5rCisyMjA1OCA4MTMzN2ZiYTdkZGJlMDU5YjA5MTgyZjE1ZjhkZjE1Mjc5OTlkNDQzIGxlZ2FjeS10cnVuaworMjIwNTkgYzA3NjU1ZjcyNjQ3YjBkZmQ5NDQyZGY2MDJkYzJiMmVhYjliMTgwMSBsZWdhY3ktdHJ1bmsKKzIyMDYwIGE1YWFmNjhmZmNkYWFhYmM5MTg3ZGRhYWFlNGEyNzg2OTNjYjJkM2QgbGVnYWN5LXRydW5rCisyMjA2MSA5ZWNjZjc4ZmVhMWFjMDNlYjU4OWJjNzkwNjFmYjhhNjNjNGI5ZjBkIGxlZ2FjeS10cnVuaworMjIwNjIgNDMyNDU3ZjAyMjg3ODQxMDk2YmJmZjQxZDVhZGFkYmQ3MzJhMmY2NSBsZWdhY3ktdHJ1bmsKKzIyMDYzIGNiNzYxMTdjMWI0YmI4MDA5YjM5ZTRkODE4MTE2ZmIxZWU3NDczOTUgcmVsZWFzZTIxLW1haW50CisyMjA2NCAyNzYzNmM5MWNiMjdjNWExMDU0NDg3NGE2NTFhZTIzNmVlMDM3YmYxIGxlZ2FjeS10cnVuaworMjIwNjUgMWIwOWE5Y2IwNmQ1OWY1MDAwZTMyN2RkMzdhZGEyN2FlZDZhM2I1MCBsZWdhY3ktdHJ1bmsKKzIyMDY2IDNjMTJlZWU3YmJkNDIzNjQ3NmJhYzQ0MWE3Yzc0YTM1YTAxOGIyMTIgcmVsZWFzZTIxLW1haW50CisyMjA2NyBhMzU2NmVlNWIxZjk0ODQ0NGQ5ZjRiNmEwNDA1Mzc1MTY0ZjQ4N2MyIHJlbGVhc2UyMS1tYWludAorMjIwNjggMTExMTJiNzM2YzdiNWFjMGUyN2FhZTdlNDA0MWQxYzc0Yjc3ZThjOCBsZWdhY3ktdHJ1bmsKKzIyMDcwIDEyYjRiYzRhODA0ODhlNTgzYTMwMDE2N2VjZGE0MDNkNTRiZDJkNmYgZGVzY3ItYnJhbmNoCisyMjA3MSA0MDgxYjU2ZjIwZmY1OWJmYjExMzU2NDRhOGJhMmVlYTEwNjQyZDJjIGxlZ2FjeS10cnVuaworMjIwNzIgMmRmZmEzZDNkOTRmZjFhZGEyYjdkZjAwYzUwNWQ4ODNjZjE1Nzk5NyByZWxlYXNlMjEtbWFpbnQKKzIyMDczIDBlMjEyZTg4ZDMzZDA5MmQ5ZDQ3MTY3ZWU2YTc0MTYyMmIwNDU0NTkgbGVnYWN5LXRydW5rCisyMjA3NCA0ZDllYmVlZGJkMDQ1ZmUxOGE5N2RjNDZhNTFkMGViMjZjYWVmODFiIGxlZ2FjeS10cnVuaworMjIwNzUgOGM0MDJhZGVlY2NiYjViMDNhYWU2ZGU2ZjNmY2MwMDBjNjdjMjkyZSBsZWdhY3ktdHJ1bmsKKzIyMDc2IDBiOWNlYTYzYmNmY2RjYzMzYzk4NDI5OTQzNzQ2ZWM2OTkwZjVmNTkgcmVsZWFzZTIxLW1haW50CisyMjA3NyBmNWUyNWZlNDY2YTQxOTFkZDVkMGQ2MjMxNzc5OTI0NDZlZWY3MWVmIHJlbGVhc2UyMS1tYWludAorMjIwNzggOTJlZjM4YjAxMzQ2M2IyNjNlMzc5YjU1MGUwZjVjNDljMGQzMGUwYiByZWxlYXNlMjEtbWFpbnQKKzIyMDc5IDBjZTM1ZTdkNmUzMzY2MzUzNmNjY2I5OWEwNGVkZDU0N2VkY2VjNDkgbGVnYWN5LXRydW5rCisyMjA4MCA2NDM0M2ExMjcyMDgzYzA1MGNjMmVjNmI2OGE1ZjY1YWMxOTRjMjg4IGxlZ2FjeS10cnVuaworMjIwODEgMjI0NTZkMGVlNzM3OThjNDcyMjY2M2Y2Nzc0ZjFiOWRkODYwNDQ4ZSBsZWdhY3ktdHJ1bmsKKzIyMDgyIGM3YmI5NTYzYjE0OTgwMzdjM2EwMmJmZWVlYjczMzMzYTUyM2EwMTIgbGVnYWN5LXRydW5rCisyMjA4MyA5YjI5MWNhNjU0NmM0YjRmOTI0ZmU2ZmMxYjJlYzlmZjI1MzZkY2M2IGxlZ2FjeS10cnVuaworMjIwODQgZjEyZTFhNzY2YTE0MmQ1NDc1NTQ3ZGQ0MzU3ZDcyMTYyNTI5NmEzNyBsZWdhY3ktdHJ1bmsKKzIyMDg1IGFhYWZjODUyYzJkNTNmOGQyOTI1MmY3N2U4OTM4ODQ3YTUyMzA2OTIgbGVnYWN5LXRydW5rCisyMjA4NiBmYjgzN2M1YWU1ZDNmMzZiMTg2OWVmMzA5MGE1NTkwODUwYzVkMDgwIGxlZ2FjeS10cnVuaworMjIwODcgNWJkYmU2MWEwYzI4YmIyYzNmOTYwNTg1MGZkYmQxMGQyYzI3MjQ4YSBsZWdhY3ktdHJ1bmsKKzIyMDg4IDU5YjdlOGVjZmI5NjY3MzIxZDI5ZjRhMzM3NmJjYjY1MTQ0YTI3NWYgbGVnYWN5LXRydW5rCisyMjA4OSA3MWZlYWU3YmY1NjA5NGJmMzQwMTcxOTRjZjBhNmM5OTkxYTIxYzAyIGxlZ2FjeS10cnVuaworMjIwOTAgYmRiYjdjNGRjNjNhZGM1Nzc2NzUwYTE1ZDJkZDZiNjMxMDFkZTZmMyBsZWdhY3ktdHJ1bmsKKzIyMDkxIDIyMTU1YTcxODI1NDE1ZTczYmY4NWFhOWUyZTE0Nzc2MDgwNTYyZjMgbGVnYWN5LXRydW5rCisyMjA5MiBkZWFkOWZhYmJlZmI3YjU3YTAxOWVjZWM0ZTk1NTQwZjAxYTBjNWY1IGxlZ2FjeS10cnVuaworMjIwOTMgMGIxNjI1YTllODlhNzJjZmVjNjdjZjdjZWEyODJjZjcwZTVlMTM0YSBsZWdhY3ktdHJ1bmsKKzIyMDk0IGQyMGE0Y2EwNzA1YzFlYWQ5MzA5ZDM2YTI2NGEyYWE5NGUxMGJhODUgbGVnYWN5LXRydW5rCisyMjA5NSAwMTMyYWY2MzUwNmI5Y2RlMGQ3ZDc2YzcxZDkyNGZhYWQ3ZjJmZmRhIGxlZ2FjeS10cnVuaworMjIwOTYgODU4NDIxN2RkYzhkNmQyMDgyMWZhMjc5ODc3YzNjOTFjODc3MDM0YyBsZWdhY3ktdHJ1bmsKKzIyMDk3IGNiYWJlNTIyYjhmMTY3NmU1ZjdhODFlMjcxYWE4MjNkMTIxMTU0YmMgbGVnYWN5LXRydW5rCisyMjA5OCAyMmU4MjMxNDYzYmE2YjIzZTE1ZTRkZGExNDVjNmRjOWFiYzZjZjY1IGRlc2NyLWJyYW5jaAorMjIwOTkgZWRmMDU4YjE2ZGRmM2ZhZDNmMjI1NTBkNDVkNTZiYjI0YTQzY2YzOCBsZWdhY3ktdHJ1bmsKKzIyMTAwIGNiZmRmNjIzYzI2NmY2OTNmZGEyOWU1NTFjY2ViMTRiODdlNWI0NjMgbGVnYWN5LXRydW5rCisyMjEwMSA1YWYxZWU0MjI1NzUyN2I1MjRhZDZhZDljM2VmNzFhMGFjMzlkNDYxIGxlZ2FjeS10cnVuaworMjIxMDIgNzYyOGFhODE2YWRhOWRhOTY4YTI0YzM1MzRkMTBiZTliMzIzZmJmMCBsZWdhY3ktdHJ1bmsKKzIyMTAzIDI5MTA0MTczYTA3MmViZDYzYzFjZGZlNjcyY2RmY2FhMzA4NzUwMWQgbGVnYWN5LXRydW5rCisyMjEwNCA0NDNhODYyMmU4NTFhYmNmNjJlMjg2NWZhY2MyNTkxN2ZhMDI4NzY0IGxlZ2FjeS10cnVuaworMjIxMDUgNzljNjc2ZjliMzRhOTE0MGI5ODQ3ZTc5YzA1ODE5YTA1MGIxZGI4MyBsZWdhY3ktdHJ1bmsKKzIyMTA2IDk3NTNiMDI2OWYzYWMwZGQ2ODQwZWM4YTIxOTQzZmYyZWJmNDk2YzIgbGVnYWN5LXRydW5rCisyMjEwNyAzNGYwMWM2Y2M4MTg2MTM3MmVmOTg5ODBhYWNkMzgzNzk2YmJkOGNmIGxlZ2FjeS10cnVuaworMjIxMDggNTViNDViNDdmYzQ4NzhmYmY0NTQ0OGRjNzM3OTM4Njg5YzJiNGM1MiBsZWdhY3ktdHJ1bmsKKzIyMTA5IDM2ZTdkMWVhYmQ5MjFhYjA0MzRlNzUyMGRhZmFjMWQzMTk3YjRjNDggbGVnYWN5LXRydW5rCisyMjExMCA5MTQxMjJmYmVhZDJkYzJkZGJhOTk4YjNkZDFhYzQ1MzRlMGMzODliIGxlZ2FjeS10cnVuaworMjIxMTEgZjYxZGY4ZjBjYjQzOGE2NzUzOTRlNzA5OWFhOTQzZGUyNTkwZGQ2NSBsZWdhY3ktdHJ1bmsKKzIyMTEyIGRlYWY3YjEzOWJjOGY0YmJjMGM2Y2QzZWExODUyZjczYWU3ZGY0OGUgZGVzY3ItYnJhbmNoCisyMjExMyBmMDgyMTg5YTQ0NDI5NGI0Njg5OGY2NWU1YTlkNmRkNWI1MzYxODM5IGRlc2NyLWJyYW5jaAorMjIxMTQgNTEwZjdmNmE4NzdlY2Y3NGI1NjNmZWZkODZlNDljNDBiMTQ2ZWQ0ZiBsZWdhY3ktdHJ1bmsKKzIyMTE1IDJiYzY0ODkzMmQ0NGZiMTUzM2RjNDY2Yjg3MGFmNDBkNDQ5ODQ3N2UgbGVnYWN5LXRydW5rCisyMjExNiBiNzMyNjkwZjU2MWM2ZTc2NWI1MDM3NThhMGUwZTk1NmQzYmM1OTlkIGxlZ2FjeS10cnVuaworMjIxMTcgZTdjM2M5YmY1MmIyN2Q1OGVhYjZjOWJiZjFhMTU1MGRiM2Y3NDFkYyBsZWdhY3ktdHJ1bmsKKzIyMTE4IDQyZGQ2MjUxY2MzY2M0ZjAxYmQ0MTFlYjA5MTMxOWMzMzc0Mjg0NTIgbGVnYWN5LXRydW5rCisyMjExOSA3MmEzNjkxZjEwNzFmYWYyZTI2MTFiZTliYzFkN2JhMmI0YmZlNDdhIGxlZ2FjeS10cnVuaworMjIxMjAgNTJiZDllMWRiM2Q5MGE1MjE2OWVlMWEyN2UwNmFkN2JmZjAzMjRmNyBkZXNjci1icmFuY2gKKzIyMTIxIDUyZTkyY2ZhYjIzNzZhM2Q0NTBhMDhkOTg0ODgxYWExZGQyMzQyNzQgbGVnYWN5LXRydW5rCisyMjEyMiAyZjI3ODM4ZDhmYzU5NDI3NTg2MjQ4NmYwMzM1MDUwMTM4ZTA1NzQ4IGxlZ2FjeS10cnVuaworMjIxMjMgMmU0OWYwZTkyYmM1YWE1YzhiODZmZGU5YmNmMmVkM2JlMzJlYjBlNyBsZWdhY3ktdHJ1bmsKKzIyMTI0IDFlZmQ2OWJmMTg0YzM5MDg1MjNiMzkxODU3NzVhNWIxMmRjYjBiMmQgbGVnYWN5LXRydW5rCisyMjEyNSBmYTAyZjc5YmI0OTFjYzcxMTBmODc0YTUwNWFiMjI4YmI2MzZhYTMxIGxlZ2FjeS10cnVuaworMjIxMjYgMGFhMTkxNmNmMTAzNDkxZGM3YjZkNGVjZDg5YmJhZjVkNmYzNTg3YyBsZWdhY3ktdHJ1bmsKKzIyMTI3IDhlMmY2Mjk2ZmQ3YjRhNjc1ZDVjMGJhNmFjMDBhZTJmNmFjY2ZlYWYgbGVnYWN5LXRydW5rCisyMjEyOCBmNDlhMTJlN2UyNGE0MGEwZjQ3NDUzNDc4MjQyOTE4ZmZiMjQ2OGQyIGxlZ2FjeS10cnVuaworMjIxMjkgNGJmZDhhNWRhMGIxZGYxYjdmNzc4OWQ2NDE0NGFkMTNhNWQ2ZWZmNCBkZXNjci1icmFuY2gKKzIyMTMwIDIzZjU1YjlmNGJjNzQ0YjExMGY1YjU1NWY0NDE0ZDk0NTI4NzBiZjIgbGVnYWN5LXRydW5rCisyMjEzMSA0YThkZWQwODcyNjJmMmM1NjZlMDdhZGQzMGI2MWMxMGQ0NWM1NmEzIGxlZ2FjeS10cnVuaworMjIxMzIgMGRlZGFlN2JlM2FhMTA0NzFiYWMwZWU5N2M5NmU2ZGUwNjY1OWEzMyBkZXNjci1icmFuY2gKKzIyMTMzIDBmZGM1ZWViZTQyZDFjNTE4N2I5NjRjNmI1MTBiNzYxMTllMGM5YTEgZGVzY3ItYnJhbmNoCisyMjEzNCA2YzAxODVkZjcxNDdjMzk4MzA0NTJmNmM1ZmMzNDk2NmI4YTQwNmFjIGxlZ2FjeS10cnVuaworMjIxMzUgZGFiOTVjYThhY2ZjMmE0YTcwNjUyMDQ1Yzc1OWFhZjkzMzQzMTRlYiBsZWdhY3ktdHJ1bmsKKzIyMTM3IDQxOTA4NjkzNzc0Njc1YWI2YTAxZTg3OGJlYTlmM2JiMmM2NTQ4MjggZGVzY3ItYnJhbmNoCisyMjEzOCA2NTA5NzNlMjkyNmNhMWY0MDc4MmQxYTczMTJiZDA4MWNiNDE3NmQyIGRlc2NyLWJyYW5jaAorMjIxMzkgMDlkZjMyNTRiNDlkN2M5MzA2NTg1MzAyZmU4MTVhYjBiZGI1MzQzOSBsZWdhY3ktdHJ1bmsKKzIyMTQxIDE1NDFkNWM2YThmMTgxMjA4YWE3Mzc2ZTU3OGIwN2EwNzJjOWVlZGIgbGVnYWN5LXRydW5rCisyMjE0MiA5MDBlMzg1MjRiZjI5MWIxY2Q2YWVlMmUxM2IwOTg1OTZkZjM2NDdiIGxlZ2FjeS10cnVuaworMjIxNDMgNzE0OTE3M2U4ZWRjZGFjNmJmYjI2YWU1NTNjMGQwM2JhOTkyMjQ2MyBsZWdhY3ktdHJ1bmsKKzIyMTQ0IGY4NThmOTg3ZTc3MmEyOTIwMDZlOGY0NjJjZmQwNDVjOTU0YWM2YTkgbGVnYWN5LXRydW5rCisyMjE0NSA2YzIxZTkzOTRiNDRmNGZlMWVkODhkNjhiN2M5YTJhN2MxMzZkYjY3IGxlZ2FjeS10cnVuaworMjIxNDYgZmUzYmM0YTRhZDg0MzZlOWFlMWQ4YzUzMDkwN2MzMzAwNGZiM2M2YiBsZWdhY3ktdHJ1bmsKKzIyMTQ3IGE1ZTRkNGEzMGM5ODM4NTM2NzY5OWMxZDJjMzczMGUxNGFhNjIwZTcgbGVnYWN5LXRydW5rCisyMjE0OCAwMTNjZmZjZmQ4YTNiNDAxOWFhNjMyZDBjNTI1MjFkMTQ5Y2E4YWNiIGxlZ2FjeS10cnVuaworMjIxNDkgOTBkMDZjYmNlMjZhNGIwMTQ1Nzg5NTNjZGMyMTI3MjgwZTFkNDY4NSBsZWdhY3ktdHJ1bmsKKzIyMTUwIGUwMWQyOTYzOWQ4ZTVkM2M3YTU3ZTM3YzI3ZjVmNTUxOTRiNDY3ZGMgbGVnYWN5LXRydW5rCisyMjE1MSBhMDgxOTcwOGZlOWM3MmQ1OGI0ZmU2MTc1MDhhZjUxMDMxYTRiMjVjIGxlZ2FjeS10cnVuaworMjIxNTIgZjhmZGQ1MDgzYWYzNjU5MzgwZmQ1NTkxNGYwNWI1MjA5NmM2OGY2ZSBsZWdhY3ktdHJ1bmsKKzIyMTUzIDJiMTRmMTMwODI3NTUyN2QyYjRkNGVhMmU2NmEyM2I3ZjI2MjIwYzYgbGVnYWN5LXRydW5rCisyMjE1NCAxMzQ2ZWNmMzE4ZjI3N2QwYmU1MmNhYzA5NzVjNDNlYTMwOWRmNjFlIGxlZ2FjeS10cnVuaworMjIxNTUgOTMwNmRhZGRjMjZmZGFiNzg1ODBjZTA2OGM4OTFkZmVkNjFjNGIzZCBsZWdhY3ktdHJ1bmsKKzIyMTU2IDM4OGRmNDljMWMzODIyODI4YzM1M2FiMTkxNGU2ZDk2OTQ0NmViMzAgcmVsZWFzZTIxLW1haW50CisyMjE1NyA0ZGRjNWFiOWJlYzQxOWY2MzBjM2I0ZTc0ODRhYzc4M2JiZDQ0YzJkIHJlbGVhc2UyMS1tYWludAorMjIxNTggZjcyZDYxYjEyNDZlZTAxYzEzMTg2OGEyOWVlODkxNzJiZjllMmJjYyBsZWdhY3ktdHJ1bmsKKzIyMTU5IGU5MGE2NThhNThkNGY2MzNhZmExNjM4YjljMGMwNzNjYWY1YTE1ZDcgbGVnYWN5LXRydW5rCisyMjE2MCA0OGUwZmIwNTVjMzNjYWJhMjQ5ZTM3NWU0YjcyOTZjOTVlODg3NDlkIGxlZ2FjeS10cnVuaworMjIxNjEgZmVmY2MxZTgwY2VlMzU2MGFiNWE3MTI0Y2RjMTY3MmM3MGQ5NDAxYiBsZWdhY3ktdHJ1bmsKKzIyMTYyIDFkYjY5MDBhMDc4MzVhM2Y1YzNlOWVhODk0OTUyNzc0MjdkZmY3YTggbGVnYWN5LXRydW5rCisyMjE2MyBiNzYyMjIwYTYxNTlmYzMzY2MyZTc3MjE5ZmQyNGE4N2RhM2RmZTVmIGxlZ2FjeS10cnVuaworMjIxNjQgZjI4ODViMGRkYmFlYjYwYWNiMDYwOGViYjRhYTE4MjkzM2JjNjQzNCBsZWdhY3ktdHJ1bmsKKzIyMTY1IDQ3ODljMTJhODlmMWJmNDQzMjNiYjA3ZjNkODliOGRhZmNhZjQ2ZTkgbGVnYWN5LXRydW5rCisyMjE2NiBjZjkyNTQyMTAwMTVkYjZmOTY2NDFmYmJjOWJhMmU0NjlhMWRiYzlmIGxlZ2FjeS10cnVuaworMjIxNjcgOWFhNWQ2NmNkMTNkY2ZhM2QyMmU1ZGI2ZDgwODgwYjIyNjNhNGFkNCBsZWdhY3ktdHJ1bmsKKzIyMTY4IGVlZDhhOGE4ZjYyMmM4ZDk5ZDM5Y2M4ODI2YTAxNGM2MTQwYjlmMTcgbGVnYWN5LXRydW5rCisyMjE2OSBkNzU5MDEyMmY5YTI2MTM3MzExMzNhM2I2MmU2ZDRmNmQwOWM0OGI1IGxlZ2FjeS10cnVuaworMjIxNzAgOTMxM2I0OGYxMWMzZjhjNjdiZDI3Mjg1ZjkwNTExMDdmODU1NTI2OSBsZWdhY3ktdHJ1bmsKKzIyMTcxIDkxOWU2MGQ3NzMzNDJjYTRhYWJhMzkxYTQ5OWU1NWM2MjkyYzIxZjggbGVnYWN5LXRydW5rCisyMjE3MiBmOTQ2YjdmN2Q4MzE4ZWYzMDRkM2Y1NjVlNTJkOWRiMjk4N2MwYjliIGxlZ2FjeS10cnVuaworMjIxNzMgZWQ2MmFkMzA4MzRlYjBiNTM1NThkYTcxMWFkZjUyMTc2NjI5MTYzMiBsZWdhY3ktdHJ1bmsKKzIyMTc0IDFhZTcxODk3NmFjNmRjMTE4ZWIyNGJmMzQ3N2RlNGFiMmFkMjg1YjUgbGVnYWN5LXRydW5rCisyMjE3NSAwYzMwN2ZhMzQ0YjVjYTYzNTYzMTkxYTQ2ODY4N2RiMjM3MmNkZmUxIGxlZ2FjeS10cnVuaworMjIxNzYgYjAwZTdiMzhmNzdmMjc1MWY0ZDc1MGE3MjZjOWQ4ZGNlYjNjYTkzMSBsZWdhY3ktdHJ1bmsKKzIyMTc3IGJkOTcyZmE4NDFjNWZlYjZhY2Q0NzQwNWE2ODY0NDk0NTQ4M2RmMDAgbGVnYWN5LXRydW5rCisyMjE3OCA5YzNkNTM5NWUzZmQ5MzA5MzkyYmM2ZmQzYjNmMmViMWQzYTM5NDI1IGxlZ2FjeS10cnVuaworMjIxNzkgZDE0NGM4MWVhZjQ0NjgwZjk1MDc2YzgyNTMwNWRjZTJhYzE5ZWI5NSBsZWdhY3ktdHJ1bmsKKzIyMTgwIGRjNGJlN2JkNjc0NjEwNDFlMDAxNjhjMjU0MjYyMzU0ZTRmOWUxOWEgbGVnYWN5LXRydW5rCisyMjE4MSA2NTFlNjM5NDIwOGM4ZDkxZDgzMmJjYjVlYTg4Y2ZiOGU4YWVmMTNiIGxlZ2FjeS10cnVuaworMjIxODIgMWU2ODZiMDg5OGEyZjY4NzNlZjNlMWJiOWZlNjMxMGUzMzM3NjllYiBsZWdhY3ktdHJ1bmsKKzIyMTgzIDQ3MWE5MDE4MTI5YzNmZDE5MTkxZDY3N2VmNzUwOTUwN2Q5Mzg2ZjAgbGVnYWN5LXRydW5rCisyMjE4NCBmMWNmMmE0NDQxNzQ5ZmIyMDAyMzI5ZWFkZmM3MWJhMDI4ZGM5NDRjIGxlZ2FjeS10cnVuaworMjIxODUgMzQyODQyMTYyMDFiZWE5OTM1YjQxODIzYzFlOWQxOTM1ZWFiNmMwYyBsZWdhY3ktdHJ1bmsKKzIyMTg2IDNkZDhlNjRmNTEyZTg0YWZjNGMzODhiZjQ2NTRiODdiNGNmYjc3MTkgbGVnYWN5LXRydW5rCisyMjE4NyA5ZTRjMTI2NzNmYWI0NGZiZTUyNmVkYmM2YmJjZTA5MmQ0YzliZTAzIGxlZ2FjeS10cnVuaworMjIxODggZGFjOWNjYTQ5MDEyMWMxYWI2MGE1MWJhZmNhZjcyYjBkN2Q4MDlkZCBsZWdhY3ktdHJ1bmsKKzIyMTg5IDhiOWQ4N2FmNjFlYmRiZjY5NTNiZmEwYThhZTVlYzQzNDUyYTkzYmYgbGVnYWN5LXRydW5rCisyMjE5MCAxMTNmMGI1NzQ0YzQwYzkxZjA5MDUxMDQ1ZjQxMTJhNjBmNDlkMjE3IGxlZ2FjeS10cnVuaworMjIxOTEgMDA5MzUwMzFiMzczYzU0OTA4NmUyZDAzNmRjNzYzN2RmZDQ4Y2Y4NSBsZWdhY3ktdHJ1bmsKKzIyMTkyIGJhOWU0ZjU1MTMzZjkzYmUzNjQxMmIxYzM5NmFiZGRjMmVmY2M5ZjcgbGVnYWN5LXRydW5rCisyMjE5MyA5Zjc4NzU5YTUxYjBmNzNjODM4Zjg2YzUzNTA5MGIyZjgwZmFkZDI4IGxlZ2FjeS10cnVuaworMjIxOTQgNGY0ZDgzMDNkZTYwY2Y2YzA2ZmRlNGY4OTgyZDdiNWUyZWEzMjFiMSBsZWdhY3ktdHJ1bmsKKzIyMTk1IDA4Y2Q4MWNkZmZhOWRkMmY0ZDY2OTM5MjhlMzY3Zjc2ZDA4YzM4NWEgbGVnYWN5LXRydW5rCisyMjE5NiBhY2NmMTkyNTQzMWM3NzBlODMxZjE2YjU3NGQ1ZGRlN2JiMWVjYjViIGxlZ2FjeS10cnVuaworMjIxOTcgMmIxMWQxNjZiMDdiNzFhMGM1MDc0NTYzOWY5ZTllZjJmZDg3MzI5MSBsZWdhY3ktdHJ1bmsKKzIyMTk4IDM2MGNlY2U3NjEyMzU1ZTNmYWU0YmY0YWMyOGJiNmQxMWEyMjBlYWIgbGVnYWN5LXRydW5rCisyMjE5OSA3ZmExZjg3Y2E2YjJkM2Y2MmFiOGE4NzhjZmQxZDQyMDBhZDgxNjYzIGxlZ2FjeS10cnVuaworMjIyMDAgYjBhYWY3ODBiY2E2NmM3ZGY0MWM4ZWQ3OTIzMzkyMmFiYTg2NTc2YyBsZWdhY3ktdHJ1bmsKKzIyMjAxIDExNGE5MGE0M2RiN2U5ZTgwN2JmZDQxNTI0ODFmY2Y4NjRiMzE2Y2UgbGVnYWN5LXRydW5rCisyMjIwMiA4MDUwOTBjZTMyOGEwMDE3YzhlZTA5Mjk3MGM3OTFhZTI0ZmEyY2E0IGxlZ2FjeS10cnVuaworMjIyMDMgOTA1OWU3YzFkOGIwMThiN2QxNzE1ZjdlNWQ4MjFmNTY2MWVkYjRjNSBsZWdhY3ktdHJ1bmsKKzIyMjA0IDlmYzRhNWFiYjM2OTQzYWZmM2UzMzRmYzdiYzljN2M0NzdkMWU4YmIgbGVnYWN5LXRydW5rCisyMjIwNSBhZTQzZjk5YjQ3ZTFlMjc2NmJkMjk4ODY3NTNjZWVjYWYyZjY2ZDI0IGxlZ2FjeS10cnVuaworMjIyMDYgYTJiMzU4N2Y1OTJhOGY1ZGRlOWRlN2M2NGQxYmMxNzNkNTkwYzQ5YyBsZWdhY3ktdHJ1bmsKKzIyMjA3IDhlYTYwZTJiMGYyMTllNDIzM2JmYmE1YmVhMTY4MTQwZTEwODU3ZDggbGVnYWN5LXRydW5rCisyMjIwOCAyOGYwZWE4ZDYyNzgxYjRhYzJjNTRlOGZiYWFjZTQ5ZjAwNzdiYjMwIGxlZ2FjeS10cnVuaworMjIyMDkgMmFlMzdjZmIxODlmOWU5YWI0OGIyMjUzZjVlZDk0YzY5MjY0YzgyMCBsZWdhY3ktdHJ1bmsKKzIyMjEwIDE5YTNjNmFmNDM3NDQ2NGUwMTcyYzE2ZDY0OTVhNGVkYWM2Yzk4YmEgbGVnYWN5LXRydW5rCisyMjIxMSBiMTZmOGQwMWM1MWUzYTMzYTgzNTgxNjVlNWZhZTQyZGQ1NmM0OGQ0IGxlZ2FjeS10cnVuaworMjIyMTIgYzk0MmE5ODIxZDA5OTczODZiNGU0YTVjNjlkOWZkZGZmZWUzNDAwMiBsZWdhY3ktdHJ1bmsKKzIyMjEzIDgxMTE0MjA5ZWU4ZWVlODlhNjM5NjI4ZGQ1OTE1OTY3M2E4OGM3NTIgbGVnYWN5LXRydW5rCisyMjIxNCBjZWZkY2Q2MGE4YjJiMDE2NDRjZWM3ZGY2MmU0ZTE0MTNkZGJlMTllIGxlZ2FjeS10cnVuaworMjIyMTUgZjViN2ExZWM0YjlmMmIxZDQ2N2Q1MTY0OWE4MTlhYzUwOTVmMmU2YiBsZWdhY3ktdHJ1bmsKKzIyMjE2IDFiYzY3Y2Y1N2QwYWI2YTZiNzMxNjM4ODA2ZDZkOTNiMDZhMTVhZDggbGVnYWN5LXRydW5rCisyMjIxNyBmZTIwZDFjZmVjM2Q5YTNjMzllMWZiMWUwOGQ2YmZjY2U1NGY3M2E2IGxlZ2FjeS10cnVuaworMjIyMTggYzFkYWE5NGMyMWQ4MzBlMzJlOGFjMTg1ZjU5ZGEzY2EzOGM1MzFjOCBsZWdhY3ktdHJ1bmsKKzIyMjE5IGJiODVjY2JkNGZlZTU1NDNkZTkyZWY4YWViZDlmOWY0NzRjNzFjMDcgbGVnYWN5LXRydW5rCisyMjIyMCA3ZDI3ZTM4OGVjNmM5ZWQwMjM1MTU5ODZhOGExODZkNTJkMzZjYTgyIGxlZ2FjeS10cnVuaworMjIyMjEgZWM2NzZlMTQwNzNkN2ZjZmE1MjFjZDg4MWJmZDQ1OGU3NzE2OWUyNyBsZWdhY3ktdHJ1bmsKKzIyMjIyIDUwZGE2MzczNDFhZTUyMmZiYTJhY2I1MjVhZWMwMWYwZDUzZWVlMzYgbGVnYWN5LXRydW5rCisyMjIyMyAwMzg0OTk0NjY3MjcyOGYxYTdjMmFiMDdkYTJmMDJlNWJkNjFlOWE1IGxlZ2FjeS10cnVuaworMjIyMjQgMDc4YzE5NjFlMTc1MTQ2MDBkNjVmYThjNTIxMmM2NGFiMTg0ZDBhNSBsZWdhY3ktdHJ1bmsKKzIyMjI1IDgyMWUzNTcwNmMwNzE1OWY1YjExMjIzMWJlOGIzNzQ3ZDFjNmI3NzEgbGVnYWN5LXRydW5rCisyMjIyNiAzMGFlM2FmZjAzYmQ5ODQ4OTlmNWE3MTAyOTVlNDNjOWQ1MWZiNzhlIGxlZ2FjeS10cnVuaworMjIyMjcgNjAwYWM1ZGJjNjY2NGY1NGI2MzE1NjMyNzIwNGI5NjQ2ZmVlMDAwNiBsZWdhY3ktdHJ1bmsKKzIyMjI4IGU1NzU0ZjA0OGYwYmMzNWZiYzAwZTQ1ZmY1MTQyZjJkMzMzYjRkNDcgbGVnYWN5LXRydW5rCisyMjIyOSBiYWQ0MDhjN2Q5ZDc4NTQwNmNkNWE5YjY4MzI2YmY5MjNkMzgwNzA2IGxlZ2FjeS10cnVuaworMjIyMzAgN2IxYTA4MDQxNjFlZWQ4NzI0NWRiZWVmYmNiMTgxODc3ODM2OTAwMyBsZWdhY3ktdHJ1bmsKKzIyMjMxIDBhYjhmOTM3ZmY2NjViODU4ZGFkYmI5NzI5OTcxMzQ5YjRkZDlhODkgbGVnYWN5LXRydW5rCisyMjIzMiAyMzg3NmUyZDg0YjZmMWU1MTIyNTAxMGVlNWYzNTY1YzMyOWIxMmM5IGxlZ2FjeS10cnVuaworMjIyMzMgNjBhNzUwMDJhNzRjZmQwMmI1N2I3OWRiMWJkMzFmYmRlY2FmOGQwYiBsZWdhY3ktdHJ1bmsKKzIyMjM0IDk4MzE1ZjBlMWQyNmQ3NDI3ZjY3YjYwMWU2NWU0OGQyZWUyYTE5YjAgbGVnYWN5LXRydW5rCisyMjIzNSA2YjhiNjVmY2NiMDNkOWYxZmM4MzZiMWZhMTgxOTZmNThlOWU2OTlhIGxlZ2FjeS10cnVuaworMjIyMzYgMjYzZGNhZjAwZWVkY2UwY2YyYjZjYjRkMTkyNWRkY2MwODE5MzdiZiBsZWdhY3ktdHJ1bmsKKzIyMjM3IGU0YjY3MDVkYzg0ZjkwZGQxODUwMDUyNTg3YWY4NDNlNjk1N2Q1NmMgbGVnYWN5LXRydW5rCisyMjIzOCA5ZTU3OGZjYjhkZGFiNzNmZDEzMGNjMmFlMjA5NzY3Yjc5YWQ5ZDBiIGxlZ2FjeS10cnVuaworMjIyMzkgZDMyNjhkNjJlNDYyMjFkMjZkZGY4ZDk3N2M4MTJhOWQxMDA1NGM1OCBsZWdhY3ktdHJ1bmsKKzIyMjQwIGQ5MTVhMGVkYjJlYTMxMTFkNzM2YWQyMGRhYTdjMzIxZDEzODhlYWUgbGVnYWN5LXRydW5rCisyMjI0MSBiMTUzMDdkMjliZTdiYzRmZGVjODgzNjQyYjFiZTRmZjMyNjAwNWUzIGxlZ2FjeS10cnVuaworMjIyNDIgYzE3MjljZGMwNzM0MGNlNjIwZDRiZThkZTcyZDI4MGZhN2FmYmQzOCBsZWdhY3ktdHJ1bmsKKzIyMjQzIDNhN2Q2N2VlMTAxMTNlOGZiMjU2ZGM0NzE5MWQ0ZWIyNzI3ODQzYzkgbGVnYWN5LXRydW5rCisyMjI0NCA4MDNhN2ExNDQ4YjJkMWZhZmExNTQwMDc5MzJkZTg1MDc2NzBhNzNmIGxlZ2FjeS10cnVuaworMjIyNDUgMmQwYTA0ZTI3NTgxZThhZGJkY2YxYTA0OWU1MDNjMGFmNDU5MjhjNSBsZWdhY3ktdHJ1bmsKKzIyMjQ2IGY2NmNjZjJjNjNlYjNhOTNlMDJhZGZjOTBiYmM0NDhlODc3MmNkZTUgbGVnYWN5LXRydW5rCisyMjI0NyA0ZGY3MmVhNzhhZTgwNjI4MGMyZTdjNzY5MjRmZmM0ZDIxMWQzY2RjIGxlZ2FjeS10cnVuaworMjIyNDggOWE4OGU1MGJmMTE0NTZlMThlNWUwMDQwZGRiYzBkY2JiMDlkYTIwYyBsZWdhY3ktdHJ1bmsKKzIyMjQ5IGFkMmI4MDc1NWQyZDRjNmJkYmU0NzBiZjk4N2QyYTZhMmE3YjViZmEgbGVnYWN5LXRydW5rCisyMjI1MCA4ZDQ3YTIxZDk1ZTA0MjA3Y2M3NGI5NTQ4ZWYyMDgzOWVmMzNlMzdkIGxlZ2FjeS10cnVuaworMjIyNTEgOGU2MGYzMDAzN2ExZmNmOThkODU2YTIzYTVlMThmYjI4MWU2NGQ0MSBsZWdhY3ktdHJ1bmsKKzIyMjUyIDc0NTc3NGRiZWQ1OGU3NWY4YmFkNjIyYWZmYjg0NjdjYmY1ODc4ZTQgbGVnYWN5LXRydW5rCisyMjI1MyA3ZGI1YjU0MjNjY2Y5OTAzZGMxYjJmZDNmNWM4MzE2NzZmYjM3ZGNjIGxlZ2FjeS10cnVuaworMjIyNTQgMzUwNTBkMTg4YTZhYzFjMWM0OWZkN2Y5YzQ3OTU0YzdmZmU5OTQ0ZSBsZWdhY3ktdHJ1bmsKKzIyMjU1IGUyODJkNmIyYjc1OGU2NGYzNGQyNTIyN2NjNTQ5NTFkN2MyZWI4OTUgbGVnYWN5LXRydW5rCisyMjI1NiAyOGI2NDNiYWQ3NGQyYjY4NTA3ZWMzZWE2NmIyY2YzNzQzODIyM2MxIGxlZ2FjeS10cnVuaworMjIyNTcgMGM1ZTUxNjk0YjBmN2VmNGRmZjY0MDdhMzE2ZDVhMjllYzU4MzY4ZCBsZWdhY3ktdHJ1bmsKKzIyMjU4IGYyMDcyN2NjM2QwZjJmM2JmMTI0ZGFlMTg4ZjBiOWFjNWYyMzkxNzggbGVnYWN5LXRydW5rCisyMjI1OSAzOTY5ZmNiZjk1MDA4NmY0ZTY3MmUwOGY3YTUxNmZiZTVhNjRiZmZhIGxlZ2FjeS10cnVuaworMjIyNjAgMmJiMjQyZGM2OWQ4ZTQ5YTc2ZGJjMDE0YTBhZGIyN2VmZDYyYzE2NSBsZWdhY3ktdHJ1bmsKKzIyMjYxIDExYmJhMzBlOWMyODQwZTA0MzFlNDVmNzZiM2Q3YjFiNTNmMDg2YTQgbGVnYWN5LXRydW5rCisyMjI2MiBjOTBmMDAzNjEwOWQ0YmFhNzFhYzYyMWYwYjdlMTA4MTA0MmE4YTUzIGxlZ2FjeS10cnVuaworMjIyNjMgYTMwNzdmOTZkNDc4OTU5ZjJkMTRlNWNmYzkxYzBiYmIyODE3YzY0OCBsZWdhY3ktdHJ1bmsKKzIyMjY0IDY1ZmU2YjA3MjQ3YjAwNzA3YjVjODk0YTQ3YTg3Mjk4ZDI4MzBhMDcgbGVnYWN5LXRydW5rCisyMjI2NSBmOTQ5NDEzNWI1NzkwOTVkMGJjYmQyZWQ3Yjg2NmFkMWM5N2U0MzU5IGxlZ2FjeS10cnVuaworMjIyNjYgYzk3OTYyNWZlYjQ5Njg5MWU1NDI5N2ZmNjY5OTcyNDA1MWJjNTM2MSBsZWdhY3ktdHJ1bmsKKzIyMjY3IDhiZDA2ZTMyNDliYjVlMGMxYjk4YTA4NGFlYjhiMThmNDQyNjY3NmQgbGVnYWN5LXRydW5rCisyMjI2OCBmNTFiMTNiZjVkNTRmOWYyYThlMGRhYTQwZWE0ZTBkOWJhNDNmY2JlIGxlZ2FjeS10cnVuaworMjIyNjkgZTQyNjIzMGVhNTczMWM5ZjE2MTE1NjJhMmU5ZjlmMWVlZGRiY2Q1YyBsZWdhY3ktdHJ1bmsKKzIyMjcwIDljYzY3YWFmZWM2YzE4ODAwMmJmOTRkYWRlOTg4NzkzZTdkYTM2MWMgbGVnYWN5LXRydW5rCisyMjI3MSBlNTdhNDYxNDQ2OWU2ZjRjYjAzN2JjYzk5N2MxOTQ4NjI2NTY4YzdiIGxlZ2FjeS10cnVuaworMjIyNzIgYWIyZjgwOTVjNGZjYzZkMDJiODNhNDlhOWJiNTUxYzkyY2VjNDk4NSBsZWdhY3ktdHJ1bmsKKzIyMjczIGExYjRmM2ExZWUwNzk2NTVjYmViNWNiYTkzODRjYmUwNTg0MTYyNzkgbGVnYWN5LXRydW5rCisyMjI3NCBkNzk4NjVjMGY4MDQ1ODlkOGI3YmExY2NmZDMyNWUwZTBiOGEzYzk5IGxlZ2FjeS10cnVuaworMjIyNzUgZDAwODAyYzc0YmE0ZGM0MTkwMjQxZTMwNDRmZDA1Yjk4Mjk1MzVlMSBsZWdhY3ktdHJ1bmsKKzIyMjc2IGI2MmM4MGQ1OGQxZWMzYmU1ZDA3Nzc3YjQ1ZTNlODZhZWY3N2E4OTQgbGVnYWN5LXRydW5rCisyMjI3NyAzOWE3M2M2NzczZjEyZWQ5OWJiYjBkYjZlOTE4YzgxOWY3YjcwZTdiIGxlZ2FjeS10cnVuaworMjIyNzggNzY0OTIzZDk4NWE3NjgxNGU0YTdjOTJiZTk0ZDdmY2QzZTNkNGZmMyBsZWdhY3ktdHJ1bmsKKzIyMjc5IDMxMGE5MTcwYWFkNDc2ZGFlMTJkNmM0OThmMDNkZTVlYTQ2ZDQzNGUgbGVnYWN5LXRydW5rCisyMjI4MCBlZmRkY2Y3MTlmZjJlZmM3MmEyNWZkNzE0ZDdkNTMxOGMxYWY5MDc0IGxlZ2FjeS10cnVuaworMjIyODEgOTRjYThlYmE3ZTRmMDk3YmExNjIwZDI0NWVlNjg4ZjM2MmQwMDc0NCBsZWdhY3ktdHJ1bmsKKzIyMjgyIGUyZTU4OWZlYWQzMGYxYWQ4ZmU3NGMyMTdkMDM1YmQ3OTZkYzYwODUgbGVnYWN5LXRydW5rCisyMjI4MyBmNzUxMjVlYWQwYTIzYjk2MzQ4MDZhYWMxZTg2YmM1YjYwYzkwNWMwIGxlZ2FjeS10cnVuaworMjIyODQgYzNlOGY0N2ZlN2M4NGRmNTVjNmM3MzMyNzMzNWUwODVjZDM0NDZjMCBsZWdhY3ktdHJ1bmsKKzIyMjg1IDBhOWNlODFkZTM5OTkxNmE3MWNhY2M0Yjk5YzMzNmQwYWU1YTVmYzUgbGVnYWN5LXRydW5rCisyMjI4NiBjYjhmZGNlOWU2NWE2ZDI5Yzk5OWE1NmIzZTE4ZWI4ZDNiMWQzYmVjIGxlZ2FjeS10cnVuaworMjIyODcgMjdiNGRiZDQyOGZlN2Q1YjAwNjZlOWJjY2Y4ZTdmYzE5NWVjMzIwYiBsZWdhY3ktdHJ1bmsKKzIyMjg4IDM2Y2EzNzZlNTg2NDY1ZWRlMDg4Zjg3NjExNWNkMDQxY2RhMWRhY2MgbGVnYWN5LXRydW5rCisyMjI4OSA4OGQxMjRjNzQ3NjYwNmY2ZDJjMzIyMGZiYzUxODBlYWNjNjkzOTlmIGxlZ2FjeS10cnVuaworMjIyOTAgNWMyN2YwZTRmNTBmNzM2ZWY4NWU2MTY3YTdlNzFjMDA5ZWU0YjE0YyBsZWdhY3ktdHJ1bmsKKzIyMjkxIDlmNzg1MDczZTQ4YmRmM2M0OWRmNDNhMmJjZGE3NDZhMDM0ZWVhNTAgbGVnYWN5LXRydW5rCisyMjI5MiA2ZTk1OGQ1ZTk4OGJkMDVjMzQ2YzczNTJkNTMwN2Q5MzhkMDA4YWU5IGxlZ2FjeS10cnVuaworMjIyOTMgZjNlMjc4YmM0MzllMjcwOGExYWQwNzQyMmM5YzIwYzYwMmU0ZTlmMCBsZWdhY3ktdHJ1bmsKKzIyMjk0IDk2ZWJmMmI4ODZmNzY4MjliNGY5NzlhOTc2M2E4MWNjYWJhYmMzNDIgbGVnYWN5LXRydW5rCisyMjI5NSAxOTYwY2VlYzFhMDBiYTU2MjM5MTRhMGFmNDMwY2UyM2MwZjg4NmQ2IGxlZ2FjeS10cnVuaworMjIyOTYgYzRiMzFiZTdlMDgwYjk1YmM5NmVlMWIxOWE5YTBlZDg1NDhlNDc0ZCBsZWdhY3ktdHJ1bmsKKzIyMjk3IGU0MTFiZmI5ZGI1NzY0YWJiNDVlMzc1ZWE4MzU3NzRmYjQzMmRlZWYgbGVnYWN5LXRydW5rCisyMjI5OCA2ZmFlZDYxNWIwNThkZmMwMmEyOWE2NWIzMGJlMWFkNGVkYjhkNzM2IGxlZ2FjeS10cnVuaworMjIyOTkgZTc5ZmQzOTM0ZjYxMDI3ZmYwNDQ5M2FlYTlkNWQ3NWI4ZmE2YWJjYSBsZWdhY3ktdHJ1bmsKKzIyMzAwIDk3ZGU4NjhhZDBmNDAyODQzYzU2YzExNTY3ODlmYjFmMDZlNGQzOTQgbGVnYWN5LXRydW5rCisyMjMwMSA4ZWJmNzFlMWVkMjk4ZWE5MjFiNjgyMWNhYjY1ZTk4MmMyNmM5ODMyIGxlZ2FjeS10cnVuaworMjIzMDIgMTFhOTc2N2U1ZDhhNTNmMjVlNGMxNTU3YmM4YTMxNzc2OGYwYjMyNSBsZWdhY3ktdHJ1bmsKKzIyMzAzIDQ1Y2NmM2I4ODliNTAzNjhkZDAxNWZhOTBhYWM3Nzc5MDNiMjBkNDkgbGVnYWN5LXRydW5rCisyMjMwNCA5ZTZmNzgwNGVmMTQ1ZGQ4YzM3NTYzZjU3YjMzYTYyODE0NzljMjY2IGxlZ2FjeS10cnVuaworMjIzMDUgYzk1ZjBhMTJiNTFhNTlkMDZhNzUxYmY3NjA5ZDBhMDdlMGY3NmM0MSBsZWdhY3ktdHJ1bmsKKzIyMzA2IGRlNWQ3YTk0MjhlZjkwY2I3ZjM5NGFhNTE2NjUzMWIxYjM0OGUxOGYgbGVnYWN5LXRydW5rCisyMjMwNyBjMjM4NzQ1ZTBhYWU2YzA2NmNlMjIwODM5NTIyOWZhNzdmODI3YzY5IGxlZ2FjeS10cnVuaworMjIzMDggNjM1MGJiYWE2MzJhNzU1ZDgzOWMzZDY2Y2EwZDg0NGZmMTA1ZGY5ZSBsZWdhY3ktdHJ1bmsKKzIyMzA5IDllYzU2MTFjZmU5YzAzMzAzNDMyYmE3NTkwYzlhMTNkMWZmZDJlMDUgbGVnYWN5LXRydW5rCisyMjMxMCAzNDIwYzllNmFmMTEyOWU1YmE2NDU4MGY3Y2Q3MTliMTY0NjRhMDlhIGxlZ2FjeS10cnVuaworMjIzMTEgODc1YWM4ZTkzNTQyNGJkNmIwMzUzMjg0MTRiMTcyZGNiYmY4ODFhOCBsZWdhY3ktdHJ1bmsKKzIyMzEyIGVlYThkZmJiZWU4NjAyOTBmNzgzMWZiOWUyYTdlN2U2YjQwNzY4NDAgbGVnYWN5LXRydW5rCisyMjMxMyAxMGVjMzk2ODQyOGRjODNjODVjMjExZGY2MDAzYWRjODRhODI4MWM2IGxlZ2FjeS10cnVuaworMjIzMTQgMTMxYTAxYjZmNmM3MTRlNTkxOGJlZWU1ZDUwYTg4YzA2ZDcyNjg2NCBsZWdhY3ktdHJ1bmsKKzIyMzE1IGI3OTg0YzliYmYyY2RlMDM4YjQzYTAwNmE1YzU3MGJjMGFhNzU3YWEgbGVnYWN5LXRydW5rCisyMjMxNiAzNzNjYzU5NDE1OTAwYjQ0YjU5YmUyNzM2Y2EwNzQ1M2YwY2UzNDFiIGxlZ2FjeS10cnVuaworMjIzMTcgMDIwMWJiNWUzYjgzNmIzN2I2ZmE1Y2M0YjdjZmNjY2ZhYmNhMjhkZiBsZWdhY3ktdHJ1bmsKKzIyMzE4IDZiYTQ0MTUwNzIyMDRhNjFiYzI3YjE4ZTI5Y2NlYjcwMGI5NDRjYjkgbGVnYWN5LXRydW5rCisyMjMxOSBiNTU0NzhiZDkxNjVjNGZlMzlmNDI2NjJmN2Y4NDI4ZWExOWVhNDhjIGxlZ2FjeS10cnVuaworMjIzMjAgYjM1NTM3NmQwNzMxMjc4YWVjNWZhZDFlOTM5OTJiYTg3ODk3ZDkzMiBsZWdhY3ktdHJ1bmsKKzIyMzIxIDc4MjZjYzM3YTIzNGI4YjEwYmZhNWU1YWQ4NTk3OGY2M2MzOTkxNmEgbGVnYWN5LXRydW5rCisyMjMyMiAxNzUyNWI2YzUzMmM1OTI0ZTYxZjgyYzFjMzcxNGM1OTcxYmU5NzhhIGxlZ2FjeS10cnVuaworMjIzMjMgMTNkMGYzNGI2YTE2MDk5OWZlYzExYmY3NTE5Zjg5NjQwMDc3NzA0MiBsZWdhY3ktdHJ1bmsKKzIyMzI0IDhjYmY5ODRjOWMxM2Y0NzVhNmMwOGYwYTc5NjRmODA0YzU4OTQ1YmYgbGVnYWN5LXRydW5rCisyMjMyNSA5MTI5OTQxOGI3MmRjOWE4YmZjYjJlNjEyNjEyYjJlNzA1MTUyOTljIGxlZ2FjeS10cnVuaworMjIzMjYgNjAwYTlhMmI3YTE4MzEzMGYwYjY0ZmRlMmMwZjEyZWNjYWJlOGQ2YyBsZWdhY3ktdHJ1bmsKKzIyMzI3IDk1NTE1YzZiNjk0YWI1Y2ZhZGRjNjVlNGU1MzIyODdjMjgwMGRkNTggcmVsZWFzZTIxLW1haW50CisyMjMyOCA3N2U0MDVmM2E5NDJhOTE3ZmYxZTQ1OGM2MTA3M2FiMWY4ZTk4MWY5IGxlZ2FjeS10cnVuaworMjIzMjkgNjcyOWJmMzBkM2FlNWIxOGRmNjU2NTI2ZTUxNDAzNGU4MjQ0YTdmZiBsZWdhY3ktdHJ1bmsKKzIyMzMwIGUwODQ3YmExZDZmNGViMDZhM2U4NjgxNDc0ZjRhYTgxZDhjNDM0OGYgbGVnYWN5LXRydW5rCisyMjMzMSBhZjQ4MjA1NWQ1Y2U0OTBhMGRjY2JkZjZiY2Q1MzEwMGM2NjBlNDczIGxlZ2FjeS10cnVuaworMjIzMzIgZjhiNTFjOGNhMDgyNjMxOGM2ZjI4N2EwM2FlZWJhZTU4NGRjOTc4OSBsZWdhY3ktdHJ1bmsKKzIyMzMzIDY3YmUzYTY4ZmRlNDkyNDE0YmEyMjM3MmVmNDMzNTA4ZWE5Mzk0NWYgbGVnYWN5LXRydW5rCisyMjMzNCA3ODc1MmVhZTEzMmUxYjJjYTlkMTczMWFhZjljNzVlMzIwMWYxYTBjIGxlZ2FjeS10cnVuaworMjIzMzUgNDkwMWE5MzU0OTBkZDg2YmI0MDcyZWFmZDE0OTYxYTU2MTcxNjc2ZiBsZWdhY3ktdHJ1bmsKKzIyMzM2IGMzOTU5ZjZlNDA0NDc4YmQ1NjMzOWEzZTE2YzAzMWE2MmEwMjE2ZmQgbGVnYWN5LXRydW5rCisyMjMzNyA5NTdkZDY0NmI1Yjc0MzRmZDg5YTMwNjE3NDA3N2IzMTJiNjUyMmJkIGxlZ2FjeS10cnVuaworMjIzMzggNjc2OThkNjg5MjAzMjBmYThlMjFhZWUzZWZlZmIwMTRhNmI4MmEzZiBsZWdhY3ktdHJ1bmsKKzIyMzM5IDQwYTE3ZDk1MDBhOGI2ZWU3ZjI5NGY2M2IyNDZjZDMyYmFhN2M1MjggbGVnYWN5LXRydW5rCisyMjM0MCA5OGJiYTk4M2JmZDM3Y2ZmOTkwOTJkYjcwMjQ5ZjQ4OTRhNWMzYmE2IGxlZ2FjeS10cnVuaworMjIzNDEgZDk4MTIxOTMwZTcwNjFmNGNiZjcyNTJmMDdmN2M0MGFkNWE0NzI4ZCBsZWdhY3ktdHJ1bmsKKzIyMzQyIDNmOGE1NmY1MmNkNjFiYmE1NWM5ODBlYmQ5NGM1ZTkxNDc5YmIwMzAgbGVnYWN5LXRydW5rCisyMjM0MyA2NDYzY2Q5ZGIyZmNlZWNmNThjMmU2OGQ0Mzk1OTMyMDhkNWRlMDE1IGxlZ2FjeS10cnVuaworMjIzNDQgZmIxMmVhOTI5MGIyZDIxNzI5MTZhYTM1YzMyYTczMWMxZjkwMmUwNSBsZWdhY3ktdHJ1bmsKKzIyMzQ1IDgxNWU3ODEyNTM1N2FmNzk4ZDU4Mjg1NTVlNTE5MGU1NmUyMjI1MGMgbGVnYWN5LXRydW5rCisyMjM0NiA0YThhYjY3NzczYTljNmM1M2E1MzA1Y2RkNjE4YjcwNmI1MGU2M2I4IGxlZ2FjeS10cnVuaworMjIzNDcgOGMzNzhmOTA4NmNkNzNiNTRiZmJiMjFiYmRlMDY2ODAyYzAzY2QzYyBsZWdhY3ktdHJ1bmsKKzIyMzQ4IGUwMDFhOWNkZTZiYWY2YzhhY2RiNmU1YTJkZTkzN2RlZDlkOGJmNjUgbGVnYWN5LXRydW5rCisyMjM0OSAyZDY3ZDIzOGQ0ZTkxOGJhYmVjMWIzNGEyNjBlYzExNWFjMmQzZDM1IGxlZ2FjeS10cnVuaworMjIzNTAgODUyOTJkOTU5ZTFiODc3ZTk1NzgzOWViNTE2NWZlYzMzYjczZGQwYSBsZWdhY3ktdHJ1bmsKKzIyMzUxIDA4Y2ZkOGU5OTgwNjYyODQxOTkyM2NiZGJiZTBkODc5M2RhMDEzNGEgbGVnYWN5LXRydW5rCisyMjM1MiBmMGQ1MmE4ZmRlNWZlOGQ5OTM4OWQxNWIxZjUxZTU1YmI0NWEyZjFmIGxlZ2FjeS10cnVuaworMjIzNTMgZWRmOGQyZDFhOTBiNjk4OTNkNWFlNmI1OGUwNDNmOGJhYThjMzlkZSBsZWdhY3ktdHJ1bmsKKzIyMzU0IDJmM2IxODMwOWNjZTY3OGM0NmZjZGVjYjY2ODQ1NGM1NjRmMDJiMTMgbGVnYWN5LXRydW5rCisyMjM1NSA4MDlhZWM2NGE3OGViYTJmODEwMjljMmFiNGU5MjlhNzhhY2IxZDgwIGxlZ2FjeS10cnVuaworMjIzNTYgNDgxYjgxZDMwMGRmODJlOTRlOTgwZjQ1YmMxMTM5NmRmYzU1OGM5YiBsZWdhY3ktdHJ1bmsKKzIyMzU3IDNmMzRmNzI0ZjAxNDg5YmNiZDYxOTNlODhhZDA2NjVhMDNjZGFmODMgbGVnYWN5LXRydW5rCisyMjM1OCBjZDQ0MjU0MzYwYjZlYTk0YzdmNGQxN2RjMjIyNmVjZWYxYmY1ZTUxIGxlZ2FjeS10cnVuaworMjIzNTkgMWU2ZjRiYjY1MDY5ZDIzZTI0YzYwMDNiZDYwYWY2Yjk2YjZiOTFlMSBsZWdhY3ktdHJ1bmsKKzIyMzYwIDY0ZDRhZDczYTg4NzVlMGU4MTgyMTMwZDQwYWQwOWNjYmU3OTZiY2YgbGVnYWN5LXRydW5rCisyMjM2MSA3YTFlZjY3NWQ4YWNmMDQ0YWQwMWNhNDA4YmM3N2JhYTA1Y2U0MDkzIGxlZ2FjeS10cnVuaworMjIzNjIgMmY0MWM5NTJiZWIwNThlZDM4ZjY5MzNmZWJmNWEwMTNkMDQ3MGE0MiBsZWdhY3ktdHJ1bmsKKzIyMzYzIDc3NjYyOGVlYThmNzM2NzQ2MGZhZDA5ZDUzYWRkNGM2OTVmNzg1NTYgbGVnYWN5LXRydW5rCisyMjM2NCBiNzY1OGU2NjVkMmVjN2EzOTg3NGQ4ZmZjNzdiYTEzYTE4OTFmMGEzIGxlZ2FjeS10cnVuaworMjIzNjUgOTdhM2QzZDcwMjlmOGZiMjZiMjQ0NTBkZWRjNTQ3ZmFlMTllNDU3MiBsZWdhY3ktdHJ1bmsKKzIyMzY2IDM1MzcwNjJiM2RjMWJlMDgxZDRiOGU0NjgyNzE0ZTRkNWMxZmE4ZmYgbGVnYWN5LXRydW5rCisyMjM2NyA5ZDAyNGFlMDU4MzdjOTRiZTg2NTNlY2QxMjNlODY5YzY0YjhhNTRjIGxlZ2FjeS10cnVuaworMjIzNjggZDY0ZTA1OWNkMTk5ZGEzOGVhMTJmNjQzN2E0YzIwZGNhOGIxNTFkZCBsZWdhY3ktdHJ1bmsKKzIyMzY5IGIwNmQ5ZGJkYWY4ZmJlNzViYjMxMzE4Y2I1MzQwYWY5OTA0MWJhYzggbGVnYWN5LXRydW5rCisyMjM3MCBiMTYwZmE2M2Y0MGM1N2E0NDEzNjg0MDRmNTFiNWVkMWIwM2I5YTExIGxlZ2FjeS10cnVuaworMjIzNzEgNWQ2YjJjMTdlYTJjZDdhODcxODEyMDA2OGYzNjVjNjk5Y2RjODUxMyBsZWdhY3ktdHJ1bmsKKzIyMzcyIDAzOWUzZDI2ZWEzNWNhNjEzMzhhYTI1MTA5NjlkZTg2MzlmZTY3MDkgbGVnYWN5LXRydW5rCisyMjM3MyA2N2YzNTRkNDM0N2Q1ODIyODIzNmI2YWE4ZGY1ZjVlYmFjMDg4ZTk4IGxlZ2FjeS10cnVuaworMjIzNzQgMzA4NjBiZTNhZTdiZTlmNGRkZjVmMTdjNjBiN2RhZTUyYjQ3NTRiMSBsZWdhY3ktdHJ1bmsKKzIyMzc1IDgwMmM0Zjk0MGE0ZWEzMWEwOTkzNjFiM2E2YzAwM2MyNDlhMWEyM2UgbGVnYWN5LXRydW5rCisyMjM3NiA5NjYxMDkzZDNlMmFmZmMzZjc2OTMwMzcwZmVjNTI5MWRhNzc5NTUwIGxlZ2FjeS10cnVuaworMjIzNzcgODFmNGNkZjg2ODU1NzIyNjJiMmI5ODFlOWQ1YzU1NTlhZDk3N2VmYyBsZWdhY3ktdHJ1bmsKKzIyMzc4IDJmNjU5M2JmNThhZmJmOTNmZGE0NmQ2YjUwNDVhMDY3NDBkNzgzNjQgbGVnYWN5LXRydW5rCisyMjM3OSBjYjM0NmJhZWRhZDZjNGE0MThiY2JjZDgwNjIxNDBhNWIxYTVlOTRlIGxlZ2FjeS10cnVuaworMjIzODAgZjBkYjM0NTYyMWJhN2VmY2FmMmQwMjc1M2MxMTQ0YjgyOTViN2I2OCBsZWdhY3ktdHJ1bmsKKzIyMzgxIDcwNGFkODM0ZGUyNzY5NmJlNWE1MGU5MWVkZGJlNjg3MzA1YjliNTQgcmVsZWFzZTIxLW1haW50CisyMjM4MiBiMDAwMmQ3YzIyYjFmMGNkY2E5NmVhNTUxMTgyNWZiMDAzZGJkMTIyIGxlZ2FjeS10cnVuaworMjIzODMgZmZmNmM2NjI4NTlkOWMwYTA5Yjg4MWE3ZGJjMDNiMTYxNWViMjk0ZiBsZWdhY3ktdHJ1bmsKKzIyMzg0IDUwZjg4ZWU3MWQ0NWEzZDdmMjgwNzIwNjliYjQxOGQzNzM2ZGEyOGUgbGVnYWN5LXRydW5rCisyMjM4NSBjYTEyZTFlMzMzZWExMDQwMzYwMjg5MTM5ZWUzN2I4ODVjNDhkMjQ2IGxlZ2FjeS10cnVuaworMjIzODYgNjM3MGEwZjk4OGYwZDNmNjVhMjE3OWM5YWY2OWY2ZTkxNmFiYzIzOSBsZWdhY3ktdHJ1bmsKKzIyMzg3IGZkZTNiMGY3MmUzODkwMmVlY2U1NzhjZDhhNDM1NWUxM2U0NzU2MGQgbGVnYWN5LXRydW5rCisyMjM4OCAxZDQ2MmI3Mzc4MTBkYzgyMGQ5OTdmMmU4MTM0NjNiMTVlYmJjNTUyIGxlZ2FjeS10cnVuaworMjIzODkgZmMzOWMyMmI1YTdhZDE1YjQ3NDhlYzVlMTAwNzhlZGE0ZDk2Y2M3YyBsZWdhY3ktdHJ1bmsKKzIyMzkwIGIxNDk1MWNkMjU2NzNhNjAxNjZjNzBlOGE0OTE0NzU2ZTFhMTZjMWQgbGVnYWN5LXRydW5rCisyMjM5MiAyOTY3Y2E5NmQwN2VlN2VlMDk5N2JiNjgwODM5MTU1NzQ2YzVjOWY0IGxlZ2FjeS10cnVuaworMjIzOTMgNzhkMDBmNzAyM2EyMTZmMWI3NzU4MjEzNjhiZmUxZjBhMWY2ZGFhMCBsZWdhY3ktdHJ1bmsKKzIyMzk0IGNkZDBjN2E0NTU3NWEyOTExZjk1YjkwY2NmMzliNGZmZjlkZWM5YzIgbGVnYWN5LXRydW5rCisyMjM5NSAzMGY4YjY1NGMyZTViZmYzY2RhZjEyYTliMTgxMDFjZDVkZjVjMDE2IGxlZ2FjeS10cnVuaworMjIzOTYgYmNmZTMwY2QxZjBkZTE2YzllZDk1ODJjNGM4NzA3ZGI4NGU4ODRlZiBsZWdhY3ktdHJ1bmsKKzIyMzk3IDExNWU0MDk5ZjNkOTc5ZmIwZGViNDRjOWI2YjNiMzk2ZmZmMjEwZDcgbGVnYWN5LXRydW5rCisyMjM5OCBiZWU3NTU3MjEzYjIyOTkzMjk2NDYzZDg4OTAzMjM5ZTJjOTZjN2Y5IGxlZ2FjeS10cnVuaworMjIzOTkgYTk3YzgwNjRjOWQ4M2E0MTU4YTdhZTY5MmVkOTg4YjFmMzcxMzUzYiBsZWdhY3ktdHJ1bmsKKzIyNDAwIDY4MDIzMmZiNjFmMzAyMDdmMWRjN2ZmZDI3NGY4ZDQ2OWFhNTlmY2YgbGVnYWN5LXRydW5rCisyMjQwMSAwOTVjODlhODI1YTkwYTFiZjk3ZDg4MTE1YjA1NTY2MDgxM2I3YWM1IGxlZ2FjeS10cnVuaworMjI0MDIgN2U5ZjVjNTllOWYyN2YwMjY0ZGEyNjU3MDQ3NGY5YWQzNWFmNGVlZSBsZWdhY3ktdHJ1bmsKKzIyNDAzIDdlNDQ4NzNkYWY3YmRjMzdiYTFlZmM5M2IxZjIyMzE4OWRiZGMxZDcgbGVnYWN5LXRydW5rCisyMjQwNCAzMDFiY2IwMWI1MDM0NWYxYWQ2MDM3NDlkZjg2Yjc4YWQ5NGZjYTJlIGxlZ2FjeS10cnVuaworMjI0MDUgMDFhOWI3ODA3MTYwYjE4MTA4YTM4OTQyYjdmMzEyMDNmYjY4ZjdjYyBsZWdhY3ktdHJ1bmsKKzIyNDA2IDNjMWM5OTQ4ZmY2NTU3Y2VkYzBjYzQyZjRjYjI4OGI1ZGM5MDZiZjYgbGVnYWN5LXRydW5rCisyMjQwNyAzODM3ZGNjZDExY2FkMzUyNzUwMGRhMTI0YWZmMzgwYTg0NzU3Yzg1IGxlZ2FjeS10cnVuaworMjI0MDggNTBmYjQ2ODNhNDYxODYzNzlmZDU3YjMxOGRjY2U3NDMzZDMxMGVmYiBsZWdhY3ktdHJ1bmsKKzIyNDA5IDJjNGMyY2FhYmNmY2Q5M2IzNGJmMjM5Y2QyZWI3M2ZkZTM0MThlOGYgbGVnYWN5LXRydW5rCisyMjQxMCA0N2E0NWRhMDNiMDlhYzgxMjVmYzUwNzVjZTI3OTk1MzA5Mjc3YTQyIGxlZ2FjeS10cnVuaworMjI0MTEgY2QxMzEwZTg3ZmUyMTU1ZjM0M2M1YTU3ODkzOGJhYTg4NWY2NzhjZiBsZWdhY3ktdHJ1bmsKKzIyNDEyIDY3ZGNmMDRmYTc1NDE4NTRjNWFhYWU4MThmOTZkZjY2Njc3NzA4ZmMgbGVnYWN5LXRydW5rCisyMjQxMyBhY2MwZmZhYjA3NzFjOTAzNzQzOGRmYmU5NTQ3OTgzZDVkMDc0NTg5IGxlZ2FjeS10cnVuaworMjI0MTQgZGUxYzJkNGQ3MmJhMTc3YTJhOGZlM2EwNmRmZjQ5MzIxMzRkYTA0MyBsZWdhY3ktdHJ1bmsKKzIyNDE1IGZiMTUzZTMwNjE1Mjg4NmUzNDBkNWJkMWRhYTQ3NWU0NDVlYzM3MDkgbGVnYWN5LXRydW5rCisyMjQxNiA3YjUzZmIzYmEwMTE5MmJlYTA0OTMxMTM1NmE0MGNkZmEwMDZiNzRiIGxlZ2FjeS10cnVuaworMjI0MTcgODY5MTQ4NGM1YmVmNTMzZGRhMDRjYWRiZmQ1NTUyMmQyMTgxZjNlZCBsZWdhY3ktdHJ1bmsKKzIyNDE4IGI0ODRiMjA3ZTk2NDE5ZTgwYzViM2M0NjJkYjE2NDk1MzA1NDM2YzAgbGVnYWN5LXRydW5rCisyMjQxOSA0ZGQzOGQ5MzAxNTczYzkwY2NkOTRlODg1MmZiMmY4ZDAzYzU2M2YzIGxlZ2FjeS10cnVuaworMjI0MjAgYzlhNGU2ZDFiYzMwYjE5OGViZmZhZjExMDQ3YjI3MjRlM2M4NTNlNCBsZWdhY3ktdHJ1bmsKKzIyNDIxIGMwYTE2YjRjOWVkYjdlMWEwOWJiNmEzMzFhNTZkY2I2YThlZTcxOTkgbGVnYWN5LXRydW5rCisyMjQyMiBkMzdlMTc2NTgwNDhkYWI4ZWQzZTk4MGUwOGMwYjhiNzkwNmQwMjVlIGxlZ2FjeS10cnVuaworMjI0MjMgZjUxM2M2YzdkMTY3MGJjY2VkNTk2M2ExMjViYzhhMTczMGMxMTU3OSBsZWdhY3ktdHJ1bmsKKzIyNDI0IGU4YmU0MGM3NWEzZjcxN2M3ZTU1YzRjODFkY2ZhOGNjZTM5MjAwYjkgbGVnYWN5LXRydW5rCisyMjQyNSA3NzY0MGMzODg0N2JhMjU3YjM5YTk4YmMwMTVjOGI1YTFhMjljYzMwIGxlZ2FjeS10cnVuaworMjI0MjYgZDE2YTNhNWM4YTg2YjEzMGIyOWQyY2ExMGEyZWRmMWQ3ZmNiNTdhOCBsZWdhY3ktdHJ1bmsKKzIyNDI3IDM3M2I2YWJhZGM1MDBmY2M4Y2ZjYzY2MTM2ZjYyNGZiMTE4ODJjN2UgbGVnYWN5LXRydW5rCisyMjQyOCAyNDJhYzQyN2YwZDBmMGQzZDZmOTE3YmJlMDk1M2ZkODFhM2E3NzUzIGxlZ2FjeS10cnVuaworMjI0MjkgM2M3YWQ1MDM3YWIxYmM1YTIyM2E5NDZjOWQzOTExMWUyNTI0YjM4YSBsZWdhY3ktdHJ1bmsKKzIyNDMwIDQxNzg1NzkzYThhMzc1ZTBiZTFmZjhhZmMwMGY0MzlmYmQ5ZjgzY2EgbGVnYWN5LXRydW5rCisyMjQzMSBjZDFjMjc4N2ViYjRhOTMwMTk0YjJhNGMzZGFjOGE2MDAyMzczNzU4IGxlZ2FjeS10cnVuaworMjI0MzIgNmU0NmM3Y2QzNzQ5MGUxNDE0NDkwZDMwYTQyMGFkODg1NzAyNWU1NSBsZWdhY3ktdHJ1bmsKKzIyNDMzIDcxZjA1ZmQzMGU3M2Q1Y2I3ODI3NTQzNjVjYzRlZTk0NjM0ZGQ3OGEgbGVnYWN5LXRydW5rCisyMjQzNCAyNTU5MjY2OTg2OTJkNDZjOTFhMTBmYTQwZDcwZDFjMDU4ZjVhNWM3IGxlZ2FjeS10cnVuaworMjI0MzUgODRiNjAyMTMxNTliMDIyMzY4MDkyNWFkM2E5MzY5MTFkZmYwOGZlNiBsZWdhY3ktdHJ1bmsKKzIyNDM2IDBmNjEyZDY4N2ViY2Q3NzQ3NGVkOTEzMjFiNzliYzE3MWJhMDFlNWQgbGVnYWN5LXRydW5rCisyMjQzNyA1M2YzOTk1OTg3OTk5ZWMzZjYxMjZhNDU5YzdiMjIyNmQyZThjMTQ2IGxlZ2FjeS10cnVuaworMjI0MzggYWNiMThjOWZiMjBmNmE1MTkwOGFiMWRlM2NjZDE1NjExNWI1MjIzMSBsZWdhY3ktdHJ1bmsKKzIyNDM5IGUyOWJhOGYxZTdmODBhMmU2MjI1ZWM1MjgzMzQ3ZjUzNDAzNTlhOGEgbGVnYWN5LXRydW5rCisyMjQ0MCA2NTg4NWVhNzZjMzc3MTY0MThkZDEyZDZjYWRkZTkwZTFmOTQxZGExIGxlZ2FjeS10cnVuaworMjI0NDEgY2I3ZmI1NjVjODliOTRmYzgzMWY0OWQzM2FkM2U4MDAyY2IzNTdkYyBsZWdhY3ktdHJ1bmsKKzIyNDQyIGMzMzYzZTRkNmQxZDYwYWQ0YWVlYTJhY2JmZTYzNjIzOTVhN2FkMmQgbGVnYWN5LXRydW5rCisyMjQ0MyBjNjEyOTQyOGUwNTNjY2FkMDFiZDdlNjFjZGZiZmNkNWM4ZmZkYjQzIGxlZ2FjeS10cnVuaworMjI0NDQgMzhiNTkwNmZmMDMxZDNjZjkzYzEyNjhkNWQwOTUxMTI0ZDA4MWJkOCBsZWdhY3ktdHJ1bmsKKzIyNDQ1IGUxMTBjZDRmYzNjNjI1MGQxNjBkZjM2MjY1M2U3NTk4ZDg3MjYyOTQgbGVnYWN5LXRydW5rCisyMjQ0NiA1Yjg3ZWU0NDAwMGJhYTA2Yjg1YjQ5M2IzOGVkOTU1N2I2MmM0NmRlIGxlZ2FjeS10cnVuaworMjI0NDcgYTA4ZDBlNTg2MWNjZjI1OGFiM2Q0OGY5NTU2MzYzZDNmMDk1NWQzMSBsZWdhY3ktdHJ1bmsKKzIyNDQ4IGFjNmQ5Yzc0Mjg2NDMyNTMxNmQ4ZjY4ZjgwZGRlYjgzZmU1YWM2MDAgbGVnYWN5LXRydW5rCisyMjQ0OSBkM2RkMGYyZmIxZjQ0MWE4NjU0ZmJjN2Y5NDMxYTRlYTFkODQzY2IwIGxlZ2FjeS10cnVuaworMjI0NTAgZDk5YzEyNDBkMGFjM2VlOTliNGVjNDM2ZDBmNWM4NmZjNjVlMTZmOSBsZWdhY3ktdHJ1bmsKKzIyNDUxIDc4OGExNjM1MWUxODk0Mzg4Njk1MmY2ZmU1OGVmNGI1MTY4NDE0OTggbGVnYWN5LXRydW5rCisyMjQ1MiBmYmUyMDc0YzVmYTVhMjE5MTQyM2U5NDg5MWJkNTM4YjQ0MmM0ZWE3IGxlZ2FjeS10cnVuaworMjI0NTMgM2I5OGNmMTY5MmQ0MTU1Y2Y5MmZjZDE1OTRhNWI0Mzk2M2Y1ZTVmYyBsZWdhY3ktdHJ1bmsKKzIyNDU0IGJlMDI0YzI3NGUwMmNmOWEyN2M0M2ZmNDg1YTg2ODZhZmM4NGNmYWMgbGVnYWN5LXRydW5rCisyMjQ1NSAzODhiY2RlZTUxMjlhM2RmYWRjNWQwNTYwMTU0Njk1OTQyOGZhZDc3IGxlZ2FjeS10cnVuaworMjI0NTYgOWY4MGM3MGE3YTUxZWJmNzAxMjMyNjU4ZmJlZDk1NTNiOWE2ZjFiZiBsZWdhY3ktdHJ1bmsKKzIyNDU3IDA2ZjkwMjcxNDFmZjlhYjkyMjgwZGIyMzM5M2FlMmY3NDQ3YTQwYTkgbGVnYWN5LXRydW5rCisyMjQ1OCAyZmY1NzAyYWRiNTZkYWI4NDI5YzAzMGM2NDAzZmIzNzI1ZDhiM2Q5IGxlZ2FjeS10cnVuaworMjI0NTkgMzk1NmIyMmQ1ZTI5MzRmNjJlYmQ3MWUzNGQ0NDFhNzU3MDJmZjVkOCBsZWdhY3ktdHJ1bmsKKzIyNDYwIGZiZjFhZTc2OTMwNjYwMTVjZmZkNTM5YmI5NjliNDhjZmY2ZmRlZTAgbGVnYWN5LXRydW5rCisyMjQ2MSA5NjhkMTY5NTAxZjI3NjZhYmQwYjJlNTEzNmFhMmNjZGE3Y2MxYjY1IGxlZ2FjeS10cnVuaworMjI0NjIgNjYxNzAzMGM1MWUzYWQ4NTAzMGM3ZGUxZDUzMjc1NDRjNWRmNjdjZSBsZWdhY3ktdHJ1bmsKKzIyNDYzIGFmMWM2ODkzMjRmNTMxNmFmNjVlMTUwNTdhYWM1ZGZlY2U2NTZhZDEgbGVnYWN5LXRydW5rCisyMjQ2NCBmZWRiYTg2ODY1ZTI5NGM5NGIwZmM5Y2U1Yzg2NDBlMGQ0YWExODU2IGxlZ2FjeS10cnVuaworMjI0NjUgMWMzOWI5NmQyOWMzMjVmYWQxMTUyOTU3OGQ1MGNkYWQ5MjEzZTJkYSBsZWdhY3ktdHJ1bmsKKzIyNDY2IDE0Zjc4MmJhNDBmOTEyZjc1ODhjNjA4ZTYzYmQ5MjVjZWU3OTUwMTAgbGVnYWN5LXRydW5rCisyMjQ2NyAwNDY0M2ExODQ1NDZhMTE2N2Y5ZmJmY2ZlOTQ2ZGQyMDBlOGRjMjJjIGxlZ2FjeS10cnVuaworMjI0NjggNDlmZDcyNDM1MWY0YTg1NGI3YjIyYjJmMjVlMjVhOGMxNWNjZTIxNCBsZWdhY3ktdHJ1bmsKKzIyNDY5IGNhN2RiYWNiYmUxODY2YjZkYTc0ZDcwN2JkNTkwYzdiN2I1MTM1NTIgbGVnYWN5LXRydW5rCisyMjQ3MCBjM2M4N2NlNGFmZGNhNmIzNzhiZWIzZDFiZmM0MDg0OGRmMDBlNzhmIGxlZ2FjeS10cnVuaworMjI0NzEgNzg2MWVlOTUxYTkxYzRlOWY1ZmY3MTQwMmMyNGMyZWU0ZGNkMjQ0NiBsZWdhY3ktdHJ1bmsKKzIyNDcyIGViNWUyYjY4MzU0ZjVkZWJmMjNkMzAyMGY4YWVjMjQzNGU3MGRkOTIgbGVnYWN5LXRydW5rCisyMjQ3MyBiZDhjYjY2NWI1ZTEwOGIyZjk0Y2YwNGQ0OGM1ZWY2ZjI3MzQzMDRjIGxlZ2FjeS10cnVuaworMjI0NzQgZTlhOTdiMDI4ODliMDgwZjgzYzlkZjQ5MzllNzRjZTk5YzgxZGI0ZCBsZWdhY3ktdHJ1bmsKKzIyNDc1IGE5ZmYwZjZmZjI2MGVhNDEzNjExOTlhYjhkNjkyYjY0ZWM4MzRiNzYgbGVnYWN5LXRydW5rCisyMjQ3NiBkZDgyY2Q0ODZkOGExZDE5YTI0NzhjZjAxYzBkYzcwYTg1N2YxNjljIGxlZ2FjeS10cnVuaworMjI0NzcgMzVjNjVkOWFhODZhMjZmODc5YmJlZjYwZjhkN2M5ZDkxODZmYzEzMSBsZWdhY3ktdHJ1bmsKKzIyNDc4IGI2NTMxMjIzOGMwYjY2NGFhZDMyZGVjOGVhZjg3ZWZiMjc1MmEyZTkgbGVnYWN5LXRydW5rCisyMjQ3OSAxY2U1YTkwZmIxOTJiODQ2OTgyY2ZhZjI3NDU4MjA5YWI4OGNlYWQxIGxlZ2FjeS10cnVuaworMjI0ODAgZDg5OWJmYmZmYmJhMTc5NDc1N2NmMDE3NmYzZDU1MjNmNjMxMzg3ZCBsZWdhY3ktdHJ1bmsKKzIyNDgxIGMzNGJiZjE3Mzg1ZTRkNGQwYzg1YzQ2NDM3NjNhY2MzNGQyOGY3ZmEgbGVnYWN5LXRydW5rCisyMjQ4MiA1NTAxOTU4ZWRjMzYxZDE0YzgxZTBkZDcyMDMyOGU1YjRlZDY2ZGY2IGxlZ2FjeS10cnVuaworMjI0ODMgNGM4ZDc4NjhhOGU3NjEwMDM1M2M0YTY3MzBkNWNkNTIwM2M1M2YxMiBsZWdhY3ktdHJ1bmsKKzIyNDg0IDlmYjQ5Y2UyNDBkMTllYmU0ZWNkOTFjYTBlZTBkNjEyZTJjNmEzMmMgbGVnYWN5LXRydW5rCisyMjQ4NSBiOTUwMmQxYTI3YTdhNTk3OGE4YmFjZjcxY2FkZWRlMmUzOWU0OGVkIGxlZ2FjeS10cnVuaworMjI0ODYgMWFmYzMxMTZjNjAyMzViYTMwZGU5MmZmZGRlNDI2ZjNkNWRmZDhlNCBsZWdhY3ktdHJ1bmsKKzIyNDg3IDFiYTllMzY4NGQzNTQ4MmI3M2EzNzRmZjU3NDJiNTY0Y2UzNmRkZmIgbGVnYWN5LXRydW5rCisyMjQ4OCBmMTBiNjhlY2VlZmMxYWFmZTI5NDVlZWI5ZjMxZTMzYzUzOGE2ODlhIGxlZ2FjeS10cnVuaworMjI0ODkgYmU4NWY2ODZhZDk3YmJiZTIwZmM0ZTA1ZWJjZjNiMjZlNjAzZTBkNCBsZWdhY3ktdHJ1bmsKKzIyNDkwIDZmNmFjYmY3ODkzOTQzZjgzNGI1YzQyM2M5ZTM5MDgxYjIwZjc5MTcgbGVnYWN5LXRydW5rCisyMjQ5MSBiODY1Y2Q1YzE5MjUwMzZkYWVhYjNkOGIyYWRmYzNiNmEzNWU1MGM2IGxlZ2FjeS10cnVuaworMjI0OTIgYTVhOTMyYzIxNTgzMGUwOTUwNTdkNmMyNjY1OWVjZjIyNzNlNTFkZiBsZWdhY3ktdHJ1bmsKKzIyNDkzIGJhOGM2MmU1ZjkyZDY5ZGZhMzFjYmViMDJkOGZmYzVkNmI2NGFjOTAgbGVnYWN5LXRydW5rCisyMjQ5NCAxNGU2MDUxZDVmMWYwN2E4YjQ0MGEyN2NjMDUzY2U4MzRhYzBhNGJjIGxlZ2FjeS10cnVuaworMjI0OTUgM2FhMDYwNjQ0OTAzMTY2ZTkxZDc1YWM3YTEyNDNhYTQxZjhlODk0OSBsZWdhY3ktdHJ1bmsKKzIyNDk2IDVhZDcxZmRiMjA1YjM1NjdhYjJiMGIwNzc0Y2NhNmJmZjE5YTIyZjkgbGVnYWN5LXRydW5rCisyMjQ5NyA1YzJiZjZjZGUxMjMwM2IxYzJhYzIyM2E5YjI3YTI3ZjA2MmE4ZGQ3IGxlZ2FjeS10cnVuaworMjI0OTggZjdhMjEzMGEyNTYzNjc3NDRkZTczODQzZGRmNjkyOGQ3Zjk1ODcwOCBsZWdhY3ktdHJ1bmsKKzIyNDk5IDM3NTU4ZTg2NWVhZDU0YzI3OWM5NjE1N2RkYTU1N2IyNTZjNDdiYWEgbGVnYWN5LXRydW5rCisyMjUwMCBjM2Q1M2QzNGFiNDRkZWJjNjk0YjMwYjM2ZGUzZWI5NmQwNWRkOGMyIGxlZ2FjeS10cnVuaworMjI1MDEgMWU4N2RiMGNhMjQ4MmUxYzhlNTMxMzZjN2M2OTcyMmU4NzA0MjFiYyBsZWdhY3ktdHJ1bmsKKzIyNTAyIDE0NTZlYzczNTA4NzJkNjdhOTUyYjk1MmYwZTU5NGQyNjc2OTVkYzIgbGVnYWN5LXRydW5rCisyMjUwMyAxNTdiYmI4OTYxOThiOThjMWZmOWM5YTM1MzFjYjU2ODMwNDY0YTc5IGxlZ2FjeS10cnVuaworMjI1MDQgMTA2OTA5MGIxMjRlZjg3ZjNlNWNkM2YzN2U4Nzk5YzU3Njk4ZjA1NSBsZWdhY3ktdHJ1bmsKKzIyNTA1IDNkZGIyMTA5MzJjYTZkZDFjOGMzNGY2NTIzYWUyMmUxYzc4MDA5ZjIgbGVnYWN5LXRydW5rCisyMjUwNiA2YzRhODczMDY2M2FkZTBlOGUzODQ3ZTk4OTk1ZWQwMTk5MzJhMWM1IGxlZ2FjeS10cnVuaworMjI1MDcgNjMwMzAyNjY2NDY2MmI5ZmQwYjk0M2U3ZjVlODc4M2M4NzY3YjE5MSBsZWdhY3ktdHJ1bmsKKzIyNTA4IDgxNDQwZGQzMjZiYmUxNzUyZWFmZDEwNjg1ZGU4NWYyMjllYjkwOWQgbGVnYWN5LXRydW5rCisyMjUwOSBiOTcwMTUzOGY4Mjc2YTY5NGM1ZmFiNWE3YzVmNmNkOWRmNTg0Mjc2IGxlZ2FjeS10cnVuaworMjI1MTAgZWQ5YWJhYjk3MTA3OGNkYWZiMTFkOGJjZThmYjcxMmM0NjlhYTcyYiBsZWdhY3ktdHJ1bmsKKzIyNTExIGNlYTk0NTc2NGRiMjE5ZmQ5NGI2Njk5YmM4NjJkN2EyNmUzMjQ2MDggbGVnYWN5LXRydW5rCisyMjUxMiAxMTkwM2ViMDA5ZjY3MDIxYzliZDY0MzlmNWE1NDY2ZTFjODZkZWFjIGxlZ2FjeS10cnVuaworMjI1MTMgZmE3ODZmOGE3NTcwYTViM2MyNjI4OWIwMjNlOGFhZjUyYjE4MGNhYyBsZWdhY3ktdHJ1bmsKKzIyNTE0IGE3YmJhYzY5YzhlZjIyNjYwNjdlNjkxOGNlZWMxZmUyYmU1YzI2ZjUgbGVnYWN5LXRydW5rCisyMjUxNSBiMGQyZGU4Y2UyNGY0YzI1NzMzNGNiZDY2YzI2NTcyNDExODNkZTg3IGxlZ2FjeS10cnVuaworMjI1MTYgYWYwMDE4YmI4Y2ZjMzE5ZWNiYjk2MTMyMzI3NzVhYTE3YTZiMjAyNiBsZWdhY3ktdHJ1bmsKKzIyNTE3IDBjMmI0MzkxZGY3ZGQwYzRlNWFkZWZiNDdhNWIzNjA5NzY4MDkxMTEgbGVnYWN5LXRydW5rCisyMjUxOCA2Y2I5ZjUzOGRjZTQ5ODdkMGYyYmRhZDMzNmRjZmI4OWQzMzQ2MWQ5IGxlZ2FjeS10cnVuaworMjI1MTkgZmM3NjE3MzEyMTgyODNmN2IxYjZlMTc2NTg5MjdjODA5YjY2MTc1ZSBsZWdhY3ktdHJ1bmsKKzIyNTIwIGE2M2E2OTMzNTU0Zjk1MGQ4MmUzOTE0YmYyZmJiNDk2ZTRkMDA4ZDAgbGVnYWN5LXRydW5rCisyMjUyMSA2ZjYyZjVhNjJhMmM2YmQwNmE5MWVkNzRhYTkzOTA5MGRkYmJmMDIyIGxlZ2FjeS10cnVuaworMjI1MjIgMmQ4OGRlYTQ2NDE3N2NhNTdjMjcyZGRlZjNjNjRhMTA2OGRiYzNlMyBsZWdhY3ktdHJ1bmsKKzIyNTIzIDFmNGViOGM5MjVkNTE4ZTU5YmNhODAyNmE0MjQyYmE0MWVlNDRhNTQgbGVnYWN5LXRydW5rCisyMjUyNCBmN2RjMjFjYjE2NjFkYzM3OGIyMzkzNDVkOGQyMWJjNDViMzgzMzEwIGxlZ2FjeS10cnVuaworMjI1MjUgM2VhMjkwOWUwNTFmZmI2Njc3MThkNTE0NzZlM2M3YjgzOTg1OWUzMyBsZWdhY3ktdHJ1bmsKKzIyNTI2IGNiYWE1NDVjNzg4ZGFhOTc5MjEwNDYwNjgxNTRmMmI3ZmJiODE4N2EgbGVnYWN5LXRydW5rCisyMjUyNyBkMzcwYTU4ZmI3ZmQ4ZjNkZDA1OTJmYWRhNGFkMzQ2MDMzYTdlNzhkIGxlZ2FjeS10cnVuaworMjI1MjggNzk1N2IzZjVkNDYyZDdkZDAxNWEzMGFjZmUzNTczNDZiNmFjOTdiYiBsZWdhY3ktdHJ1bmsKKzIyNTI5IDQyMjQ2YjhjNThiYmE4OTYwYjNjYjc0NDJkMDcyZDgwNDU2N2Q4NjEgbGVnYWN5LXRydW5rCisyMjUzMCAxZmVjMDMwMTIzNDY3ODk1NGMwM2MyZDY4MzVmN2E2MmRhNjJlOTdjIGxlZ2FjeS10cnVuaworMjI1MzEgMjYxZTI4ZTdmYTAxZmFhMTI1ZTM0YmIyYjQ3YzBkMjlmOWQ2NDBmMCBsZWdhY3ktdHJ1bmsKKzIyNTMyIGI1MjVlNjAyZjZjMmE0Mjg1OTY0OWNkYzk3NDE4ZjNmMmY2ZWUyNGIgbGVnYWN5LXRydW5rCisyMjUzMyBkYjQ4OGNjOWYyNTk4ODZlNjZlNzFkODUxZWU2M2MzOTgyNzYwYjlmIGxlZ2FjeS10cnVuaworMjI1MzQgZWZkY2Y0MmY4ODUyNzJlYmRkOGE5MWEyYmZiMDc4NTcyODg2Yjk1NSBsZWdhY3ktdHJ1bmsKKzIyNTM1IDczZjY4NWRiOGMwYzc5Mjk3ZjhiNzVmMmNhMjQyYzY1MjlmZmRiMjIgbGVnYWN5LXRydW5rCisyMjUzNiBiNDE2MzhhMTFlNGU0MzllZmRiZWZiMDA1YWFjZjVkMjhlZTI4N2E4IGxlZ2FjeS10cnVuaworMjI1MzcgZjkzYzE2YzEwYTU1YzBlOWRkYTM3MzBiZGNhM2FhMDZhMmNiODEzMSBsZWdhY3ktdHJ1bmsKKzIyNTM4IGVhOWNmYzM4ZTExYmQ4MGUxODdjZDkxMzI2YWQzMTM0OTEwYTcwZjIgbGVnYWN5LXRydW5rCisyMjUzOSBiYTg3YzI0NGZiNTliZTY1NGI3ZmJhZGVkNzE2NjdhMWMwNzllYTMzIGxlZ2FjeS10cnVuaworMjI1NDAgMDYxM2ZhNTdhZTZkOWM3MzU0ZmVmODRiNWUyNTY4MDAyY2YwNmFjYSBsZWdhY3ktdHJ1bmsKKzIyNTQxIDA1YzlhMzVmMjE0ZjI4YjQ5ZjU3NWZlZDdjZTBkNzMwMjM0YjYwYzEgbGVnYWN5LXRydW5rCisyMjU0MiA2MDI2NGQxZTEwMGU5ZDY0ZTkyMWY0NGI5MjZlZGZmYzQ0MzA0OTU4IGxlZ2FjeS10cnVuaworMjI1NDMgZDZiMDg0YzI1YmE4YmQxMTc0ZjBmNDJiOWUyOTA4ZTkyZTUyYmJlNyBsZWdhY3ktdHJ1bmsKKzIyNTQ0IGViZmI3NGNlN2U1NjgxMzQ3NzQ5MjEyYjI3NTgwMGIxODc3Y2Q0NjMgbGVnYWN5LXRydW5rCisyMjU0NSBiMTExMmEyYzM1NGZmM2I0ZDVmNDkwMzY4YTNkZGE5NGFlNDczODQ2IGxlZ2FjeS10cnVuaworMjI1NDYgNzg2YWNlZDkzN2M1Mzg5YjFjNWY5MTg1MTE3YzFlZjFhOWVmOTBhYiBsZWdhY3ktdHJ1bmsKKzIyNTQ3IDYxMzBkZWViNGNjNjE1YjRjMDJjMGU2NTFlNGIwOGZjM2Y2ZTA1ZWYgbGVnYWN5LXRydW5rCisyMjU0OCA4NmNkNTdmOWRiOWI5NmYwZWQ2Y2Y5NTk5NjNmYjNkMGUxM2UyODRkIGxlZ2FjeS10cnVuaworMjI1NDkgZDQ2NjgyYmRhODJmZjVjZDgwMmE2MWFkZjQ5MzIxOGIxM2RlMjdhYyBsZWdhY3ktdHJ1bmsKKzIyNTUwIDgxNDQ3MjJkYzA3NjVlZjkyYTNmMDdmZWU3NmJiOTRjYjYwYzI2N2QgbGVnYWN5LXRydW5rCisyMjU1MSA3MjU3ZTg3ZTA3MjAxNmEzNzgwMGUxNmNjNzY5NzYxNzAyYWQwMjlmIGxlZ2FjeS10cnVuaworMjI1NTIgZGI5NzYyNTI5ZjQ1NDY2NjY0MmIwZTA0OTc0MWZlZGNhZjAwZGEzZCBsZWdhY3ktdHJ1bmsKKzIyNTUzIDM4YmUxNzdiZDQ5M2EwOGYxMjU3NGMyMDllYWI1MWMyYmRhMWVkNDAgbGVnYWN5LXRydW5rCisyMjU1NCBhNDhhM2Q3NTQ3NWVjZjJmMDM1ZDVjNDA0OTlhMjg1ZTQ1NTM0NjJlIGxlZ2FjeS10cnVuaworMjI1NTUgM2Q5N2E0YjVjNmFhNWU0NzNhOTA4OGQ4NmFmZDkzYzIxODVlOTU4YSBsZWdhY3ktdHJ1bmsKKzIyNTU2IDEzZjRiYTA1NTY4N2Y0N2U3MTg5MjU0Mjg3MjJjZGQ2ZGFjNzc2NmMgbGVnYWN5LXRydW5rCisyMjU1NyA5YjVhMmMxYTAyZjNjMGI5ZDU3ODY0NmUyMTFjNWVlMmI4MTVmMmFkIGxlZ2FjeS10cnVuaworMjI1NTggNWI2YTZkN2Q0NGFlZDJiMjAxYjdlNDI1NGE2YzAxYzIwYjg4N2E1ZCBsZWdhY3ktdHJ1bmsKKzIyNTU5IGY5MjBkZGI3N2Q4YjNmODQwN2E5YTlkOWQ4YjM2NmExY2Q1ODc0MzYgbGVnYWN5LXRydW5rCisyMjU2MCA5NDkwNWViNzJmNGZjYjViMjM1ODk5MWRmN2JiMjk3ZTJkZDE4ZmRhIGxlZ2FjeS10cnVuaworMjI1NjEgMDUxZDhlMzgwZjM4MmZlZDFhNDZmZGMxZWQyYWE3NGVlNGY3MWVhMyBsZWdhY3ktdHJ1bmsKKzIyNTYyIGU5M2Y1YzM4NWZmNDQzNGMzNGIxMDg4N2EzMDhmM2IyNWI4OWIxOGEgbGVnYWN5LXRydW5rCisyMjU2MyBkNWFjZmYxNzhhZDVlNjY0M2ZlZTJlMjE2NzZhNzZlN2YzMTFmY2QxIGxlZ2FjeS10cnVuaworMjI1NjQgYzBlZTEwZTBlMTNlMzVlNTQyODI4ZjA0YmQ1MDg3ZDIwNjBmNjQ1NiBsZWdhY3ktdHJ1bmsKKzIyNTY1IGJlOWI1MDcwNGU0YzBhODAzMTQ5YzU4MGM0MWUwZmZiNzg3ZjQ4MGIgbGVnYWN5LXRydW5rCisyMjU2NiAwZGFkMGRjNzE0OWIyYjdjMWRiMDdkMmRlN2QzYzMzZmNkM2JhZDdjIGxlZ2FjeS10cnVuaworMjI1NjcgZWZmOGNhNjc5YmY2YWVjYTY3M2QwYWU0NWNjZDhiNmEyMmY5OTI3NiBsZWdhY3ktdHJ1bmsKKzIyNTY4IGVhMTMxZmYxZDhjZDgyZjk5OTA4OTgzMWRlZjFiYWYwODU4MjMwNmEgbGVnYWN5LXRydW5rCisyMjU2OSA5MjIyYjZlM2IzNjg3ZWYwMjkyNWMyMjY4YWI4NTQyNzZjMWRlMWQ3IGxlZ2FjeS10cnVuaworMjI1NzAgNzhkYWNiNTQzODg3ZWZiODFiNWVkY2Q5NDY3YmE0MmYzNTgxMDUzMSBsZWdhY3ktdHJ1bmsKKzIyNTcxIGYxOTlkMGFhOWY4MTBmN2NhNWVhNDFiMjlhMzg5YmIzOWUxN2JlOWYgbGVnYWN5LXRydW5rCisyMjU3MiBiNzM4NDI4MjM4ZjE5NTAwY2IxMGFkNTBjMGZlMzFkOWQzMjU1ZjM3IGxlZ2FjeS10cnVuaworMjI1NzMgYTFhZGJmMDc1NjU3NzNjOTcxMGY1ZmVlN2NjNTQ5YjlkYzc4ZDQ4MyBsZWdhY3ktdHJ1bmsKKzIyNTc0IDYzYjliMTc3ZTM1MGZkNjZkNTM2NDA3NDllMjZkYzFlNWE0NzRjNjcgbGVnYWN5LXRydW5rCisyMjU3NSAxNzgwMjA3N2U3N2NmNTlmZDE0N2M5MmI0MGE1ZjdiM2E0NDA0NWE4IGxlZ2FjeS10cnVuaworMjI1NzYgM2IzMDc5Yjg1NzI3NDM1MjBhNzdhNzA5N2Y0NTQ2Zjg3ZDQ5MTIyYiBsZWdhY3ktdHJ1bmsKKzIyNTc3IDhjMmEyOWI3NTQ4ZWQ2MjQyZTE1ZDM1MDIwY2UyOTUxZTIxM2ZhNzggbGVnYWN5LXRydW5rCisyMjU3OCBiYWZiZTVjYzk0MWZmMWFjNzIwN2Q1N2E1ZmYxOWRiYTYxMjQ0MjYzIGxlZ2FjeS10cnVuaworMjI1NzkgMmJmMjY5MDk2NmZmZDMyMWFjNjUzYTFlMWY2NjdkNjNjZTlhNDU3YSBsZWdhY3ktdHJ1bmsKKzIyNTgwIDM2ZmE4ZTliYzJkYTllODI1NDM5MGE5NGQyNWIwZTY0NjYzZDk5NjQgbGVnYWN5LXRydW5rCisyMjU4MSAwMzM0NjJkZjE3YmY1OGI3YjdkYjc3OWQ2ZTNjMTViNTA2MWM5NWYzIGxlZ2FjeS10cnVuaworMjI1ODIgYzRiMmE2YjA0ZDBiOTBjMTA0MzA0YTRkZTFmZTBiYjk5MTU4NDA0YiBsZWdhY3ktdHJ1bmsKKzIyNTg0IGZjYWIzNmM5MzMyN2NhNWE1NmZjMGEwNjcwYmFmZjQ1NGEyMjJiYjUgcjIyYTItYnJhbmNoCisyMjU4NSA0ODRjMDVkYzQ5OTg0MTc3ZDE1ZmVkZGI5NjIxZjNlNzJkMzVkNzljIHIyMmEyLWJyYW5jaAorMjI1ODYgMjk0YTU2YmY3MzE1ZjAwMDRiZmQ1YTFkNzg4Y2JjYWM1NTI0NjZmOSByMjJhMi1icmFuY2gKKzIyNTg3IGZkMTE5ODk5MDQ1YzgzODRjY2VlZDg2MzYwZWU0MGUyMjFkNjJiNTYgbGVnYWN5LXRydW5rCisyMjU4OCA5ZTRmNzM5ZTlhODQ4NjhlYTA1ZjYwZTRlMWZmODExYWJlYjM5MzE0IGxlZ2FjeS10cnVuaworMjI1ODkgNjM4NmYwMWYyNDAxNjJkOTdhMDhiOWVlMmI4Njc2MzllNGY4MmQ2NCBsZWdhY3ktdHJ1bmsKKzIyNTkwIDVmMWU3NTcxYjEyOWNiMDdiOTJhNTUxZTNhYzg2MDc4MGNkN2FiM2IgcjIyYTItYnJhbmNoCisyMjU5MSA4YTZjZGExNzU1ZWI5OTFkMjQzNDY3ZDdkOTA2MWI5NDQzMjRlNTM5IHIyMmEyLWJyYW5jaAorMjI1OTIgNzM0MDY2ZjIxNjRmMzZlNDJiMjY1MWMwMTcwMTlmMTEzYmJhZGUxYyByMjJhMi1icmFuY2gKKzIyNTkzIDVjOGRlNjhiM2NkY2JjNDYzZGFhNTMzNTk0YjdlMjQyYjczZmJmOWMgcjIyYTItYnJhbmNoCisyMjU5NCBhZjA1OGQ2OWVhZWRkNzkyMmJmMTJiZDZlYjUxMjk3M2ZlYmM0ZTU1IGxlZ2FjeS10cnVuaworMjI1OTUgZDc2NGQ1NTY5MmExNGY0MWM2NTNmZjlkN2E2MTBkZjFjNDNkYmY0ZSByMjJhMi1icmFuY2gKKzIyNTk2IDQ3OWI1NjBkZWNhNzAxNzE3YWE5ZjIyMDk1MzRmYTk4MzM3ODFhM2QgcjIyYTItYnJhbmNoCisyMjU5NyA5MzVhYTA3NGNkYjg2YWJjOTE1MzJiYjU2YmQ2NGIwNzM2NTVlZTBhIHIyMmEyLWJyYW5jaAorMjI1OTggMmEwODNlMDUwNjE3YjU5MjFkMjIyYmNiYTY4YzIyOGI1YTc0MTE1MCBsZWdhY3ktdHJ1bmsKKzIyNTk5IDUwZDNiMzY2ZThjOGE5MGQ2ZjMwZGM3MmUxNDE5ODE4YTg2NDM3YTcgcjIyYTItYnJhbmNoCisyMjYwMCA4ODQyMjA4MTA5NWFmNDA4ZWNiODg2OGRhM2M4YTU3Mzg2YTE4MzVmIHIyMmEyLWJyYW5jaAorMjI2MDEgZTliNzk1ZDRjMDYwY2Q3MjIwNDNkNzIyOTM3NzQ2Mjk2NTg3YzM2OSByMjJhMi1icmFuY2gKKzIyNjAyIDdiNTUzYjFjM2U4YmQxNGQwYzhiNDE2OWM0YmMyMzZhYTM0YWQ5YWYgbGVnYWN5LXRydW5rCisyMjYwMyA2MGQ1Y2JiZWFkYzNiODY4ZjZlZWY1ZWZjNmJlZmRhMTVkYzZiNDExIGxlZ2FjeS10cnVuaworMjI2MDQgZmI0N2RiODU0MTBlNDlmODU1ODMwMDg3ZjFkY2ZkNWZiZmY2NWUzZiBsZWdhY3ktdHJ1bmsKKzIyNjA1IGMyZGIxOGMwNzBmZWNkYTE2YzRkZjQ1MTUyMDg0ZGRlZjhmMGIzOWIgbGVnYWN5LXRydW5rCisyMjYwNiA1ZWJkYzNhZDg4Nzc5ZmU4YWRlZTlkMmVhN2U0YWRlNzYyZDA5YmNhIGxlZ2FjeS10cnVuaworMjI2MDcgY2U2ZWE0NDQ5ZTk3Y2IxZWEyOTkwMzZiYmI4NjAxZTJjMTRhOTYxOSBsZWdhY3ktdHJ1bmsKKzIyNjA4IGI5Y2FmOGNiMTJhMmVjMzhmNjFmM2ExYjhiZGMyNTMwNTEzMzc3MGQgbGVnYWN5LXRydW5rCisyMjYwOSBiNDUwODQ3MzA5MTZkOTllMDEyMDI3NGNhZTAxMjVjZGUwZGE3MjNjIGxlZ2FjeS10cnVuaworMjI2MTAgNzdmNDk1ZTgyMmMxNTgyMDFhZjllYWJlNTM4MGZiYTQyMWNlNmNlMiBsZWdhY3ktdHJ1bmsKKzIyNjExIDBlN2FlZDUzYjU4MzMzMmJkYmI2NzlhYzdlZGRkYjRmZTU4MmQyOWQgbGVnYWN5LXRydW5rCisyMjYxMiAzYTJmZTc0NWEwYmJmYWZmNzU1OWM4MjgxZjQ1NDgwYjIyNWFkYTEyIGxlZ2FjeS10cnVuaworMjI2MTMgYjIyNjU4YTQ2OGNmYWFkNDM2NTQyYzAxYzcyMjk3NjM4NmE1N2MwYyBsZWdhY3ktdHJ1bmsKKzIyNjE0IDYyMTg0OTlhZWJkYTJiOTk5MjYyNDE2MDMwMDY1ODk3YzhlMGQ4OTQgbGVnYWN5LXRydW5rCisyMjYxNSAwZjg3M2QwNmFjMTNmYmUxNTMxNzM4MjUyZmNiYzdjNmJlMDZlNWE1IGxlZ2FjeS10cnVuaworMjI2MTYgZmIzMTllOWNjMmFkZmVkM2ZhNTg3YzIwMWYxZWFhYjQ2NWZhMGE3YSBsZWdhY3ktdHJ1bmsKKzIyNjE3IDc3NjFhYzhiZWI4MTllMmNhYmNjZTliYTFiMzY0NzYwMmI3ZmYwMWEgbGVnYWN5LXRydW5rCisyMjYxOCAwYzZjNmU4NzgzODhiOWFjNDljYWRiYmM1MzQ4MTY2ZjcwY2E2ODYyIHIyMmEyLWJyYW5jaAorMjI2MTkgODhiMWVjZDA0OGZiYzIzYzUwN2U5MDkyZTg0MTQ2NzlhMjlhZjlkYyByMjJhMi1icmFuY2gKKzIyNjIwIDhiYzdiY2EzMmE5NTY4YzZhYzJkNjM4MzEyODE3NTI4MjA1YTU5YzIgbGVnYWN5LXRydW5rCisyMjYyMSAyZmMxMDJiODM4ZWQ4MjBmNzY4MTZhNDVmZmNjOTE5MWJiNDczZjA1IGxlZ2FjeS10cnVuaworMjI2MjIgOTYyNjNjZmIyYzk2NjI5OTliYzZhYTdhMjQzNTgyZDdlZWRmNDA1NCBsZWdhY3ktdHJ1bmsKKzIyNjIzIGU4NTFlNjE0OGFkOGQ5ZTU2NWZmMzhmZjgzNTQ4ZmU4NjIzMTA3N2YgbGVnYWN5LXRydW5rCisyMjYyNCAxMDBkY2M5ZTZmMmYzYWFkOTAwMjkxZDY2MzA3NzI5MjQ2OGVkMGYyIHIyMmEyLWJyYW5jaAorMjI2MjUgYjk0Y2U3ZDcwY2ZjYTkwNjU1ZGJlNmRmOGI2NzcwYzIxZDhlZTZmZiByMjJhMi1icmFuY2gKKzIyNjI2IDYwYzBjZmY1ZDU3ZWNiZTBlOWNmMWI3NWRjY2RmZDM4ZWE0ZGMyYjMgcjIyYTItYnJhbmNoCisyMjYyNyA4NTNkYmUxMmJiZTY4YTY2MmFlYzc2YjUyNGMwYjI5YzEzMGU0Yjk3IHIyMmEyLWJyYW5jaAorMjI2MjggYmU1YmU5ODljYWZmZWEwNDZiYTBlMzMwY2ZjN2U1ODU2ZjJhMTZkZiBsZWdhY3ktdHJ1bmsKKzIyNjI5IDg2MDdiYzg5MGIxZjAyNWQyZGRlZmM4ZjBjYzFmMzE0YjE1MzFjN2MgbGVnYWN5LXRydW5rCisyMjYzMCBhMDM4OTkzODkwYjIzZTZjMzJjZGU5NDU4MDE0OTY1MWZmYmM3Nzk2IHIyMmEyLWJyYW5jaAorMjI2MzEgNTU0NDUwNDA5YTczOGUyMWY5ODAwOTM3MGEwZjgwNTczZTY5NzU0ZiBsZWdhY3ktdHJ1bmsKKzIyNjMyIGQ5ZWE5OWE2ZjZiNDQ2Njg2ZTdjODdlZDYxMGM4M2MwZjY3YmE2MmQgcjIyYTItYnJhbmNoCisyMjYzMyA1YmNiYzU5MGY0YTcxMTYwY2U4NjExMTE2MDQ2MzgwMjdlMzA3Y2M2IHIyMmEyLWJyYW5jaAorMjI2MzQgODk5NmRjNTIwYjU3YmI3MjRhOTNmYmM2YTFmNzVjNjUzNGM2YTVmYyByMjJhMi1icmFuY2gKKzIyNjM1IGFjNmJmYTU1ZmNlYmY0YjgwMTA2YjUxNjM3OTI1NjFjOGY4ODdkYjEgbGVnYWN5LXRydW5rCisyMjYzNiA2MTI1ZDlmOTI0NDFkYzMyYTUzZDYxMTVjODgyOTFjNDZlYzdlMzc4IGxlZ2FjeS10cnVuaworMjI2MzcgOWRlODNkZGE5ZjA5YTNkMTZiYWUyOWE5Y2E0MzE1NTk1N2M1Yjk1NCBsZWdhY3ktdHJ1bmsKKzIyNjM4IDkzMDZmODI4ZmJiNzczNGZiMTJkNTc3ZjRmMDk1Zjc2MTA5NWYzNjkgbGVnYWN5LXRydW5rCisyMjYzOSAwMWU2Njc4MGFmNjE2MzFiZWI3NjgxNjZkYTVlODMzY2ZmMWI0OWI2IHIyMmEyLWJyYW5jaAorMjI2NDAgODFjNzU2NWE1NmFjY2U4NThlNmVkZmNlYWU4NjMzNWM3NzZhYjM0ZSBsZWdhY3ktdHJ1bmsKKzIyNjQxIDdlNWU5NzRiM2QzNzZkNGJiNWVmYTEzMTk4YWJmMmFjOWRiNzQ1NzcgbGVnYWN5LXRydW5rCisyMjY0MiBiYzljOGNlYmMyZWZjODA3ODYwNTE0YTllZWYwYzhjZTVkMDNiZjI1IGxlZ2FjeS10cnVuaworMjI2NDMgYzQwM2FmMDAzODg0ZTZhZGI1ZjUyM2Q5MWY3NmZkZjg0ZTljMWFkOSBsZWdhY3ktdHJ1bmsKKzIyNjQ0IDBkMWJiZTY1YTFkODc3Yjg1NzUwNGU4MzJiMzRhNTRmZjMxNTc3MjkgbGVnYWN5LXRydW5rCisyMjY0NSBkNGJhNmUyYWFhZTM0YWMzZTBiYjAzOTExNzlmNDdiZjFkZWQ1MzgwIGxlZ2FjeS10cnVuaworMjI2NDcgY2NjNGFmNjg3Y2FjNmNkMjE4ZWMwMTM5NWJhMWFiOWRhYWQ4OTc4NCBsZWdhY3ktdHJ1bmsKKzIyNjQ4IDVmNzMxMTE1ZTM1MjZiZGE3OGEzMWFjZjlhOTcwM2YwMzYwYmZlYjIgbGVnYWN5LXRydW5rCisyMjY0OSA0NzYzM2I3OWVjMTlmM2FlNjZlZGRkZmI2MWNmNjY5Nzc2MDMyODI1IHIyMmEyLWJyYW5jaAorMjI2NTAgYjJkYWQ0ZDE3Y2E5YWUxZGZmM2ZiNWMyMzhmMDVkZTczOThjZmEyYiByMjJhMi1icmFuY2gKKzIyNjUxIDA5MjhjZDYyZGRlYTVkMjBjMWFjODAyNDA3ODMyY2ZiNjNkODMzMzQgbGVnYWN5LXRydW5rCisyMjY1MiBhNmNlMmQxNmQ3MzlmNzJiMjRiNzE5ZDhmYTA5NTI5ZTFmNzFmNzdiIGxlZ2FjeS10cnVuaworMjI2NTMgMGIxMWYwOWNmMWU0MGQzY2MwNTE3YzhmNzYwNDkyZmZiZTJmMDRhNCBsZWdhY3ktdHJ1bmsKKzIyNjU0IDI5M2E0MTJjOWZkOTdkOTUyNGJlNTllYzY2MTE3OGMxNmQxNzNjODkgbGVnYWN5LXRydW5rCisyMjY1NSAxMjU3ODVmMWUxMmZlN2I4MmE1MTg4MmU1MGI2NTlhZDcxNzg2ZDFkIGxlZ2FjeS10cnVuaworMjI2NTYgODExZjI4OTYzN2FkMjRlZjFlMmYyNGNjZGYxZGM4OTkzMWJmZjc1MCByMjJhMi1icmFuY2gKKzIyNjU3IGIxNTljZTMzMTVjYjhkYTY4YzBiZWQ1MGI4Yzc1NWRkMjM1YjgxYWMgcjIyYTItYnJhbmNoCisyMjY1OCAzNGE3NGI4MWM5YjJmYTY4NTY0MDA4MmIyMTgzYzBkNGVmODIzZmIzIHIyMmEyLWJyYW5jaAorMjI2NTkgNzMwZGNkNmQ1OTBiMmJiZTFjYThlYWQyYWE3YmQ5ZWJiMTg2YzE4MCByMjJhMi1icmFuY2gKKzIyNjYwIGY1MmZhMmI3MDNkNzJjNmRkMDE5ZjI1ZGRmNjc0YzE1ZWUyZjczM2MgbGVnYWN5LXRydW5rCisyMjY2MSBlNzZmN2M4M2ViMGQ1NjA5Nzk3YTY0OGJjNTBkYTU3NjgxYzM3YWIyIGxlZ2FjeS10cnVuaworMjI2NjIgNWMwMzU4NGNmM2NjMWM2NWRkYjE5NmE1MzhkNzAwNjk4ZmY2MWExZiBsZWdhY3ktdHJ1bmsKKzIyNjYzIDJiN2MwYmVkZmZkYmQzOTQyOTQ2MzA1Y2YwMTY0NWY1NTY1ZThlMTcgbGVnYWN5LXRydW5rCisyMjY2NCA4NTg2MjhjZjZlMjU2OTQ1NDcyYWNjOTY5ZGViNmM3NzI5NzdmNTMzIHIyMmEyLWJyYW5jaAorMjI2NjUgMTdlN2IxYTMzMWYzNWRmZWYwMmRiODlkZjQ4OWIwMWU0MWJjMjRlNiByMjJhMi1icmFuY2gKKzIyNjY2IGZhMzlmMDBkZDVjMzMzYmRhY2NhZDhkN2VhMDBlYjE3ZTk0OGNlMWEgcjIyYTItYnJhbmNoCisyMjY2NyBmZmVmNGU0MWYwNmVkYzQxZmQ4MmFkYzFjNTQ1MjRmMzRiY2FlYWM5IGxlZ2FjeS10cnVuaworMjI2NjggYzYzN2YyOWM4MTk4YWUwMzcyYzU4MmQwMjY2OTJjNGRlYjFlNzBiYSByMjJhMi1icmFuY2gKKzIyNjY4IGQ3ZjQyYzlkZTk0NDBkN2E2YTI1MmM1MGYzZGNiMDVjOTdlYmVjYzQgcjIyYTItYnJhbmNoCisyMjY3MCBkZTJmYmM1MmMxZWI5ZjRkODE5YjI3ZDIxNjdiZmQxZDEzMjc3ZTE3IGxlZ2FjeS10cnVuaworMjI2NzEgNzUyNjlhYjI2ZDAzMTM3N2IxNzAyNjE0YzlmMmU0Y2QwOTI1OWU5YyBsZWdhY3ktdHJ1bmsKKzIyNjcyIDhkNjQwNDQ1MzQ0ODU3ZTQ4ZDVhMzQ5NzJhZWZiYzQzMTY2MmQ3NmQgbGVnYWN5LXRydW5rCisyMjY3MyBjNzI2MTZkNjE0M2MyYzg5NzI3MmFmMTA4MGE0MjI3NDQxNmVjOTkzIGxlZ2FjeS10cnVuaworMjI2NzQgOWNmNjY5NTgxMTEwMzRiZTYzMjgxMDdmYWI0OTM1ZGUwZTVmNTg3NCBsZWdhY3ktdHJ1bmsKKzIyNjc1IDUwMGMzNTkwMzhjN2IyMzVmOTkxN2ZhMDhkMjM5ODJlYWMxYTJhM2IgbGVnYWN5LXRydW5rCisyMjY3NiBiMTM5YmRiNmQ0OGE0YmNkNTA5OWNjOGZlMzdmODQyYWFkMDFlOTExIGxlZ2FjeS10cnVuaworMjI2NzcgOTk5ZGU1NGFjNmE2MjFlNmU3ZmJmMmY5ODk1OWJmOGE4MWEwOTg2ZCBsZWdhY3ktdHJ1bmsKKzIyNjc4IDVkODFjNmJmZjMwNmU1YWYwYTY1ODAxNjJmOWVmZjZiNWEyY2E0ZmMgbGVnYWN5LXRydW5rCisyMjY3OSBjMTQwYmQ3ZDNiZGNmZmNlZmVlMGU4OTliNGY5OTY3M2Q2M2FmNWRmIGxlZ2FjeS10cnVuaworMjI2ODAgZGFkMzIwOWNlOTczMzJhOWRhMjU1OWU2YjlmNWU5MTA5YmM4ODliYyBsZWdhY3ktdHJ1bmsKKzIyNjgxIGUxNmFkNWY3ZjM4NzIyMWJmN2VlMGJlN2NiZTNmY2I3NjY3YzUwYWQgbGVnYWN5LXRydW5rCisyMjY4MiA1ZmVjMWM5YTIxZWFkZjRlOTU1ZTAyYjRjNjhkYzhiMWRmNTg4MWUzIGxlZ2FjeS10cnVuaworMjI2ODMgN2JlNGM3M2JhYzUzZTE0OTM3YTRiODhiOGQwODNlZWIyM2Q5NTRkMCBsZWdhY3ktdHJ1bmsKKzIyNjg0IGRlNzQ4MzQ3YTQwNDgwZmY0MjQwMjlmYzc4ZGU3YjJhOGU4NjY2NTYgbGVnYWN5LXRydW5rCisyMjY4NSBjYTFiOGNjMWJhMmJkNjViZGVlYzAyNmZkYzA1NjJlNzAxODUwM2UwIGxlZ2FjeS10cnVuaworMjI2ODYgMDc1NzA5ODM1MGMyODU3ZDUwNmY0ZjAzMGM5NzQ4ODhmZGU2NTAzZCBsZWdhY3ktdHJ1bmsKKzIyNjg3IDRkNjlkNzQyZGIyZjQ0YmQ4NjRlMDhhNWFjYTNmZjczMTM5NWI2NzIgbGVnYWN5LXRydW5rCisyMjY4OCAwOTIyZDYwOWFjZDEyNTJhNzdlYTA5NWQ5Yzc2YmQyNDdiNWRmNmI0IGxlZ2FjeS10cnVuaworMjI2ODkgNzEzNzJhMGY1MGUxYjRkNTBkODA0MTFhN2MxMzYyNTdiYzExYzNmZCBsZWdhY3ktdHJ1bmsKKzIyNjkwIDJhZWEzOTRmNDdkZDQwZTFmMmM2NGM3NDFhMDZiYTFjNjJlMWQ5NTkgbGVnYWN5LXRydW5rCisyMjY5MSBmNWQ4N2M0MWY2NWIyMDI3YjYwOTBhYWU1N2ZlNjEzMDg2NjkzM2IyIGxlZ2FjeS10cnVuaworMjI2OTIgM2JmY2RjYWJhNzAzNDI1NDRjYjVjNTE5ODZjM2VlYTVlZmM3MWZhMCBsZWdhY3ktdHJ1bmsKKzIyNjkzIDI1ZDJmNjQ4MzM4NDE5ZmI1YTBhOTNkMjNkY2E2OTk5OGYzYTdkNzMgbGVnYWN5LXRydW5rCisyMjY5NCBmOTRjNGJiNzg4OGIyYzc4Mjc5YTMxYjQ1Y2U2ZWNkMjcyZDhlODQ3IGxlZ2FjeS10cnVuaworMjI2OTUgY2VlMWRlY2M0ZmYyMDlhM2Y0MmVmMzdlNWM0M2Y0YzRhZTZiYjc4MCBsZWdhY3ktdHJ1bmsKKzIyNjk2IDI4MTdmMWQzYWRiZTMwM2YwYWEwNTRhMWM4Nzk0YTU3ZTZiOTUxZDkgbGVnYWN5LXRydW5rCisyMjY5NyAxMGI0NGUzYjM5MDU0N2ExNzZmYTQwYWM1NDQzNjg0MTAxMmJiZWViIGxlZ2FjeS10cnVuaworMjI2OTggN2ZiNWYxNTY4NWRkMDZhOTI2OGFiOTRlZDVjNWUwOTEzZGVmNDI3YiBsZWdhY3ktdHJ1bmsKKzIyNjk5IDlhZmQ5ZDVmYjk3YTBiNjBlNmMxNDA2MjA5MzY5NDc4MzVhYmFlZDEgbGVnYWN5LXRydW5rCisyMjcwMCAyNWI5YjYzNGQ5ZTNkMWVhZmY1NzA1MzExOTVjNzE3ZDM5MTAxYmViIGxlZ2FjeS10cnVuaworMjI3MDEgM2I1ZjM0YzViYzZjOTNhMTcwMDgwZDViNDc1NWIyNDg5YzQ1NDNhYiBsZWdhY3ktdHJ1bmsKKzIyNzAyIDZjMmI3YjYyNGVmMjNmMjJkMjg0Nzg1ODc5OGM3ZmI1MDY1MjM4YjEgbGVnYWN5LXRydW5rCisyMjcwMyA4ZjkwZTFmNTBjMTE4MzhmY2FkMDNiZjgwMmZlZTFiOGZjMzQ3NzQxIGxlZ2FjeS10cnVuaworMjI3MDQgNTAwMTljYjc4NGUwZGNlZWIzZGRhMTU0ZjZhYjkwMjM5NzA3NzhiOCBsZWdhY3ktdHJ1bmsKKzIyNzA1IDc1MzM0MTJkYzU4Y2Q2YTlmY2ViZmI2OTkzZDlhNzRkZmM4NGVjZjIgbGVnYWN5LXRydW5rCisyMjcwNiBmN2FhZjcyMWE4MWIzY2ZiNzVjODViYzU2ZjlkOTU5ODc2ZTA0NjM1IGxlZ2FjeS10cnVuaworMjI3MDcgMTM0ZTEzM2Q4YzQ0NWNjNmRhZmM2NTkxZDdiNTdiM2RhM2VmODA3ZCBsZWdhY3ktdHJ1bmsKKzIyNzA4IDBiNjQyZDIyMGIwMmUyZDBkZjg5M2FjMjM4OGRkNzY5YTUxZmI2YWUgbGVnYWN5LXRydW5rCisyMjcwOSA0NWQwZTExNDIxMmU5ODA1MTY0OGJjMWM2OGU5NzgwNmVkNzNkN2ZkIGxlZ2FjeS10cnVuaworMjI3MTAgNGEzMGVjNzk4ZTZjMmViODU4YTA3MGI4NTI0NmE2ODQ0NDE2ZmMzMSBsZWdhY3ktdHJ1bmsKKzIyNzExIDYxZDUzYzA1M2U0MzRlOWVhMDY2MmM1MTNjMjBkMWYyM2M0YmRlZmEgbGVnYWN5LXRydW5rCisyMjcxMiA2ZTZmYzdiNmEzNjAxYmRlNmVmNDgzNzM4YWRmYjYyNGMyNjA4ZDI5IGxlZ2FjeS10cnVuaworMjI3MTMgMGRjZWU5YmNkODEzZTg2MTYwNTI3OGVkOTZlYzE3NDE2N2EwODNmMSBsZWdhY3ktdHJ1bmsKKzIyNzE0IGIzYzkyZjAxMzg2OWYwNjg5ZWZmZDUyY2I1YTAxOTlhYTc5ZDVjOWYgbGVnYWN5LXRydW5rCisyMjcxNSA0NWVhM2I1ZmNiZTU3ODdiMDVjYmVjNjU3NjFmNjVkOGFmYmVhNjA3IGxlZ2FjeS10cnVuaworMjI3MTYgOGQyYjJjYjJmZWJjZjA0ZTk1MTIxZDhhNjhlYmE4YzNmNDAzZjM5MCBsZWdhY3ktdHJ1bmsKKzIyNzE3IDU1M2Q2ODg0MzhjNDM0NTZlYTc0NWU1NDhjZmEyMzQ4MTMyNTkxNDUgbGVnYWN5LXRydW5rCisyMjcxOCBjMzkyYzNlNDlkZDU2ZWQxNDJmZWM2ZWJhY2FhMzE1MDFkMjI2ZmZlIGxlZ2FjeS10cnVuaworMjI3MTkgZjlmNGJkY2JjMjVhYWUzYjg1MmRiNGMxMmM0ODlhMjg3YTAyMTdhMSBsZWdhY3ktdHJ1bmsKKzIyNzIwIGJjNjNhZmM3MDFlZjcwZGE2NWUwZjdkNjk4NmZjMzI4NmI5Y2RlZGEgbGVnYWN5LXRydW5rCisyMjcyMSAwZTcwZGY5ODQyNGVkY2MzNmI4ODgxZmNiMGRhMmZmNDMzYjdiMWE0IGxlZ2FjeS10cnVuaworMjI3MjIgZTFjOTFhYzU1Y2NhODA0Y2U3ZDEyOTIzYjQ1ODM2N2U0MjNlNDRkNiBsZWdhY3ktdHJ1bmsKKzIyNzIzIDY3YjMyNWNlMDIyNmQ0MGFmMTAxMjRkYmEzOTU2ZmZlMWQyMzA3MjcgbGVnYWN5LXRydW5rCisyMjcyNCA0Nzk2YTY3YTk5OGI5OTBjYjgyMzM3OGI4ZDdlMWUxY2RjZjFlZDM1IGxlZ2FjeS10cnVuaworMjI3MjUgOTg0ZmZhMTI0NjA2MDliOTkyN2MxYjk3NzE1MzIyNDM3ODYzNzIyNSBsZWdhY3ktdHJ1bmsKKzIyNzI2IDc3ZmVhOGZhMWYxNjQzMWMzOWZlZTcyZGZjNDdiZGFjYzFlZmFjYjkgbGVnYWN5LXRydW5rCisyMjcyNyA5M2NiNWVjNDQwMTc5OGQ1MjNhNjgxZjJhYmQ2NTBmZjAzMWEyNzY4IGxlZ2FjeS10cnVuaworMjI3MjggYzE3MWIwN2JmNmE5ZThkZWVmY2Q5N2FjZmE2Yzk5NmFhYThjMDBlNyBsZWdhY3ktdHJ1bmsKKzIyNzI5IGRlOTc3ZDc2MjdlYmZmYzE5MTcxMjA2Y2E0MTUwMmVlYzY1MWJjZjIgbGVnYWN5LXRydW5rCisyMjczMCAwMDNhMGZlOWMzNTAzZWVkMDZhZTU4OWE0NzUzNGE2YWViYzhjZmJjIGxlZ2FjeS10cnVuaworMjI3MzEgNWM4NTlkMmNiMzdiZGM1MDY5NjUyY2E4MzQwYjMzYjBhNDg3Y2ZhZSBsZWdhY3ktdHJ1bmsKKzIyNzMyIDNlNjhlMWEwMmFkMjA4YWRkOGYzM2JhY2MyZDcwMjBiZjRjNjIwMTggbGVnYWN5LXRydW5rCisyMjczMyA0MmIyZjE5MzYyNTQ2ZWQzYjgxNTE3ZmJkYjczODFkMjYwNmViMjBlIGxlZ2FjeS10cnVuaworMjI3MzQgM2U3NDMxOGExYjc2M2JkYjRiMTRiMzg4MjY2MDEzNmI3ZGIwOThmZiBsZWdhY3ktdHJ1bmsKKzIyNzM1IGM2Mzg1MDM4ZGUzOWFmZTVjNzEyNjI2YmQxODE0YjcwNmU4MWU1OGEgbGVnYWN5LXRydW5rCisyMjczNiBjMWFjNWY4MjdiYzI2MzAwM2M2YzJmNThlNGNhYjMzNmJhYzBiMDMzIGxlZ2FjeS10cnVuaworMjI3MzcgZDc5YjUxODY3Y2RiNTE5MDFhNWVkMTI0ZjkzZWNmYzAzZTU0NjRhMCBsZWdhY3ktdHJ1bmsKKzIyNzM4IDU2YjUwZTRkNjg3ZWJhNTEyM2RkOTAxNDliODQwOWZhNmUxNDQwMzIgbGVnYWN5LXRydW5rCisyMjczOSA2NzM0YzgwNjUxMTQ4ZjVhMDg1NWFmNjhkN2U3ZGRkODM2YjUxYzE1IGxlZ2FjeS10cnVuaworMjI3NDAgNDM1NGJhNDczNWEwOTY3NzYxNDRjODY3OTIxYmUyNzVhZGJlOTg0NSBsZWdhY3ktdHJ1bmsKKzIyNzQxIDYxNzU1NTU3OTYxMWZhM2JiMjU3Njk5MGZlNzMyYTE4OWI0MjNhM2YgbGVnYWN5LXRydW5rCisyMjc0MiA1NDdiNmVmMTEwOGM4NDk0NzlkOTA2YTM0YmFkZmIxZWNmYWE0MTUwIGxlZ2FjeS10cnVuaworMjI3NDMgZmM1Yzc1ODA3ZTE5NTJjYjZkZTk2MjIyYjAyN2NkOWY4NTk2MTVjZCBsZWdhY3ktdHJ1bmsKKzIyNzQ0IDA3ODI5MmJmOTRjYzcyMTBhNzVhZWVkMDRkNDI4NDA4YjViZmE1MGEgbGVnYWN5LXRydW5rCisyMjc0NSBkMGNlMDQ2MGY0YTdjNjFhZGQ0ODRiYjVlYmE3YmEwYWE3OWQ4ZDI2IGxlZ2FjeS10cnVuaworMjI3NDYgY2U0ZjFlOThiYTdlNDM2OWIzZWM5MDZlOTNhNzgzZjhhYzY2MzdjYyBsZWdhY3ktdHJ1bmsKKzIyNzQ3IDYyYmY5NDAxYTFhY2ZkZGZiOWVjOWU0ZTUzM2M4MGJiZDFmNWZmMTggbGVnYWN5LXRydW5rCisyMjc0OCAxN2IyYWZiYTdhNmZiMDRhMzEyMWUyNDE2Yzk5OWU3MGViZDk0YWM0IGxlZ2FjeS10cnVuaworMjI3NDkgNTk5MzFkYjU3MmIyNDQ5YTg4MjczNTRiMGZkMWJiZGMzYjlhYTdhMSBsZWdhY3ktdHJ1bmsKKzIyNzUwIGZlZmU5NTMxOWYyNGIwZDIyMjIwZjAyM2M4NDViMjIwY2IzNjk3MzYgbGVnYWN5LXRydW5rCisyMjc1MSA4NzYyODAzMGFkNzVkNjg3YmZkZTQ5Njg1YjU5ZDk3OTgzNWEwYzc3IGxlZ2FjeS10cnVuaworMjI3NTIgMDc2YWI4Y2I0NTFlYTAyMzc2OWNjMGE2MzFlZjhjNmZlNjE5OGE2OSBsZWdhY3ktdHJ1bmsKKzIyNzUzIGRiYmEyY2E3ZGMxZTVkNGQzNmVkYjk5ZGFjZDVlYWM0MDU1NjAwNGEgbGVnYWN5LXRydW5rCisyMjc1NCAzMzRmNDE3ODQ3N2FhNzc3MjE2OTFjNDRjMzAyYzdkZWE3MzI2NzU0IGxlZ2FjeS10cnVuaworMjI3NTUgY2UzMTliODJhOGU0ZGQ5ZDMyZmMyNjUyNmVlZTdkOWE3ZDA5YmQ4YSBsZWdhY3ktdHJ1bmsKKzIyNzU2IDVjZjkyNDFkMzViMDlhOWIwZGRmYzNkOTI5ZWRlN2M3M2EyZGNiOGYgbGVnYWN5LXRydW5rCisyMjc1NyBjYzAyMzQxZGVkZTQ3ZTA1OGQ1ZDY0NzcxNDJkZTdmZmI3MGFmYTRhIGxlZ2FjeS10cnVuaworMjI3NTggMjQ0ODBhNmQyN2M0ZDQ3OTM1Yzk0NGNkMTA5YzM1YzcwMGZlZDc1MyBsZWdhY3ktdHJ1bmsKKzIyNzU5IGIxYWNiY2Y3ZDU4Njg0MjZjZWNmYjQwZjg5NjhlNTE2OTQ3NTVlNjkgbGVnYWN5LXRydW5rCisyMjc2MCA1NDZlZjMxOGJhNWRjZDRhNzNiOWQ3N2E4Yjg1MzZjYmI0MDk2MGViIGxlZ2FjeS10cnVuaworMjI3NjEgNGFlYzljYjdmZTVkOWQ1ODMzMjAwNWNiNTU4MDllNDdkNzVlYmM2NiBsZWdhY3ktdHJ1bmsKKzIyNzYyIDFhNmNmMzI1MTQxZTBkOTU1ZjIwZmZlZTIyNWI0ODFjNTkxMTQzNGQgbGVnYWN5LXRydW5rCisyMjc2MyBmYmIzNTI2OGZlZDRmODc4YjFlY2E4MjM0Yzc5ZDA1YTZhN2JlMGM4IGxlZ2FjeS10cnVuaworMjI3NjQgOTllOTUzYzY3MDljZWVmNDcxOGIzZTIxNzI3NTQ3NTNlYzg2MGY3ZiBsZWdhY3ktdHJ1bmsKKzIyNzY1IGMwYzVmZTc5MDJjZjI3MWMyNjE0Yzc0NGViOTIwZWQ5ZGQwZjc0ZWUgbGVnYWN5LXRydW5rCisyMjc2NiA0MTJkMGViNWQ0YmE1MjE0MjZkODI0YTRlMTliOTRhNDc4ZGYzMTE0IGxlZ2FjeS10cnVuaworMjI3NjcgYTA4NDdiN2E4OTAyOGM3NjYxNWY4MGIxYjI5ZTdjNjYzMjVkODYwZSBsZWdhY3ktdHJ1bmsKKzIyNzY4IDNhOTAyMTFhMDI5NThmZWFlNDg3ZTMwM2U5NWRhZDllMjZiNTFkYjIgbGVnYWN5LXRydW5rCisyMjc2OSBhYjE5NGYxZjA1M2I2NmZkZjg2Y2ZjYmFmZjgzY2I3OWUxZTNiZmIxIGxlZ2FjeS10cnVuaworMjI3NzAgZjNlYzU0ODg5MDhiM2M0OTlkODYwMDIwMzcyMmRiYmRiYTgwZjBkOSBsZWdhY3ktdHJ1bmsKKzIyNzcxIDQ0MzNlYmE3MzllN2YxNmE3YzBkZjAxMjMwMjlmOWQ1NWNhNDgwM2YgbGVnYWN5LXRydW5rCisyMjc3MiBlYzUxZTEwYTYyMjljNmVjMTYyOTdkZTJmNWVkNTE4MmU1ODMyMmY5IGxlZ2FjeS10cnVuaworMjI3NzMgOTZhMGJiM2E4NTIxYTFiNmI1OTgyMzdlNDg3ZDA5NzA2YWVkNGE4MSBsZWdhY3ktdHJ1bmsKKzIyNzc0IGRkOGQ2MTUzYThjNjVkYjhlMWM0NzVjNTQ0OTg4ZmQ4MWM3MWMxZmEgbGVnYWN5LXRydW5rCisyMjc3NSBlZGU3ZmNiOGIwYjIzNzcxZjcxODBmYThjZDM4Yjk3NmJkYWVmMjk3IGxlZ2FjeS10cnVuaworMjI3NzYgZGVhY2Q2MDI3MmJlMzI0N2JmMDg2ZDdkMDVmMmIyN2RiYzVmZjRkMCBsZWdhY3ktdHJ1bmsKKzIyNzc3IDIwMmQ4ZGQ2NWViNWIyZmY0ZjcwYzk3ZjMwZTRhNDc3YTk2NTQ3ZDcgbGVnYWN5LXRydW5rCisyMjc3OCAzZTc4OTc4MjI0NTk3ZjQxNjEzMDk4NjE1NWY1YWEyODNlZGRlMzE5IGxlZ2FjeS10cnVuaworMjI3NzkgZGUxMDE1MWE3ZjYzZWRiZDE5ZjQ4NWFhNWFmMGYzYTQ0NTMzYjEzZCBsZWdhY3ktdHJ1bmsKKzIyNzgwIDk3NTM2MDhlMmQ1N2EzZDNjODA3MmMxYzQzMDViYTNhY2RjZGUxOTUgbGVnYWN5LXRydW5rCisyMjc4MSBjZjllMzQxODg3NjNjMDIxNDUyM2M3OTA4OWZiZTIzMzgzMjBlMDVkIGxlZ2FjeS10cnVuaworMjI3ODIgNDdmYTRhYzA0MmQ3ZjBlMzJlODEyOTZjYWU2MWQzZGRhODRlN2Y5YyBsZWdhY3ktdHJ1bmsKKzIyNzgzIGI0YTNmYzE0NzkyOTRiNDM5M2M0MWE1ZTE1YWI1ODE3Nzk0MjE1NzcgbGVnYWN5LXRydW5rCisyMjc4NCA3MmQ5YjdjMGQyMTFkYjc2OTViMzc3YjdiNzMyNjM2MTg4NjYxZThhIGxlZ2FjeS10cnVuaworMjI3ODUgZTE0MWIzOTJiNjFkZDJiNDNlNTY1N2Y3ZmQyYjgxOTE5ODQ5OTc2MiBsZWdhY3ktdHJ1bmsKKzIyNzg2IDNlMTBjMDg3NDAxY2ZjY2ViNWQwZTAwY2VmMTAwNzIwNTNkM2YxNDYgbGVnYWN5LXRydW5rCisyMjc4NyAyZDI1MTZlMzcyOTkzMTJjYTc0NjRjZmQ5NWMwZjlhMjdkZjBiMTNhIGxlZ2FjeS10cnVuaworMjI3ODggMWNkODc2NDIzNTljYTU5NTI5Zjg5MzVmMTk0YjM5YmRiODJhZDkyNCBsZWdhY3ktdHJ1bmsKKzIyNzg5IGQ3MTFlODJlY2UyMzMyZjEwMTk5NWVmN2MwODc5MTlhODI0NDQ2OGIgbGVnYWN5LXRydW5rCisyMjc5MCA4NTYwNWM5MzY1MmI1YTRlMDNhYjIwZWYwNGNkZTI1M2VkMGY4ZTYxIGxlZ2FjeS10cnVuaworMjI3OTEgNDc3YjZkZGQ0MjQyNWY2MmQwODM2ZTY2N2Q0NDZiOTExNzNlMDkxZiBsZWdhY3ktdHJ1bmsKKzIyNzkyIDdlNjI4ZjYwMjQ1ZTliMmQzYjBlZmRjNDc2MDIyZmYyNzBiOTQzZDggbGVnYWN5LXRydW5rCisyMjc5MyBkYTVlZWJiZmU0MWRhNWY3NThiZmQ0ZDNlZWZjZDkzODUwMjY1MTNmIGxlZ2FjeS10cnVuaworMjI3OTQgMTFhNzU4YzU2MDI3OTBmNjkzNGEzMDI3ZmEwZmE1NTM0MjE1NTBlOSBsZWdhY3ktdHJ1bmsKKzIyNzk1IDE5ZDI3MWYyOTdkYzc1OGNlMzdlNzUwNjZlZjA5MmQ1ZTE2Mjg3Y2QgbGVnYWN5LXRydW5rCisyMjc5NiAwMWE2OTAxY2QzMDVlMjllYWM3MmU1MmUyYTc3NjFhYTNlOTdiZGQ5IGxlZ2FjeS10cnVuaworMjI3OTcgNmMzMGQyMGQyN2YyY2NhOGFhYTVlOTI1YmE4ZTUyMTljOTY3MmE4YiBsZWdhY3ktdHJ1bmsKKzIyNzk4IDdiMzlkOTE0MjRhMmFmMGM5ZjEyZjY1MDcwZjgxZTM4OWViY2Y4NDQgbGVnYWN5LXRydW5rCisyMjc5OSBkZGM0YzJmNWVmYmM5NTk4YzVhODFkODdlZjAyYjYxMmViNjVhM2MxIGxlZ2FjeS10cnVuaworMjI4MDAgZWE3NmRlYTY0NDBmOTc4NTc2OWJjNDQzZTEzYTcyODcyZmQ1Nzk4NCBsZWdhY3ktdHJ1bmsKKzIyODAxIDM3ZTBiMGZjY2E1NDBmNjdiMzgxNjllNWFkNTRlYWE3ODllZTUzYmEgbGVnYWN5LXRydW5rCisyMjgwMiAyYzJjYzMxYmRmMTUzYWM2NzA1YzJjZTQ0NTljMmFjMzUxMDllZmVlIGxlZ2FjeS10cnVuaworMjI4MDMgMDIyNTFiMDQ4YmJiZjE5MmNiMDY2MDdlNDQwNGQ4N2U3NjgwODUwMSBsZWdhY3ktdHJ1bmsKKzIyODA0IDE4NDlmNDlhYTZmODY2NWZiOThlN2YxMDI4OGZkYzQ0MDIyYWMxY2IgbGVnYWN5LXRydW5rCisyMjgwNSAwNzM4OGE2YTU1MjZiOTVhNDQyM2ZhMDNkZDczMzQ5NDQ2N2NiOTQwIGxlZ2FjeS10cnVuaworMjI4MDYgODExNjhlZjRjYjY1OGJmNWNmZjQ3OWIxMzRlMGI2OWFlOWU0OTBkOSBsZWdhY3ktdHJ1bmsKKzIyODA3IDQ5YmI0MWE2OWRmYzM4ZWJjNmM0YTc4MDkwMzAwMDkzY2Q3MzJlM2IgbGVnYWN5LXRydW5rCisyMjgwOCBkOWVjYjIxNzAzNTRmNTYyZGZhNmJjYmRlOGU5MjM2NmViMWYyZmE5IGxlZ2FjeS10cnVuaworMjI4MDkgMzgxMTU4MGZkYzM3M2NjZDcyZDhlY2ZjOTRmNDRlZjUxN2U2OTI4NCBsZWdhY3ktdHJ1bmsKKzIyODEwIDNmYTI5Y2Y3MzE5ZDQ4NDUwNTY4ZGQ5ZjVjMjliZjMwMWI2OThiNjUgbGVnYWN5LXRydW5rCisyMjgxMSA4NTZlM2ZhMTRjYmE2OGZmODQzZDA2ZDk4MzljZWEwMjliZDY3ZTM4IGxlZ2FjeS10cnVuaworMjI4MTIgYjk4ZTQzNDYyNTdiZmJjMzdjMThmODMxMDliMGE5Yzc2NzUwNmQ5OCBsZWdhY3ktdHJ1bmsKKzIyODEzIGIwZjUyNzhhMmFiNDM3ZjJkMTE2NzlmZTUxODRiYzMyNTY3ZjFiNjEgbGVnYWN5LXRydW5rCisyMjgxNCBjZWE3ZmVhMTc0MmI0MDM4NDE2MzU0YjAyZjM0YjcxNjEyZjE5NjcyIGxlZ2FjeS10cnVuaworMjI4MTUgOWRhNjhjMDM3OWFiYjliYmViNWIxZmRiOTFhZTUyZDAxNzQxNTMzYiBsZWdhY3ktdHJ1bmsKKzIyODE2IGM0ODVkNzczNzZmYTQwNzUwNjA4ZjM1M2M1NzdmMzQ1ODJlYWU3MTMgbGVnYWN5LXRydW5rCisyMjgxNyA0NzZlYjdkY2VlZWMyNDk3ZDRiMTdmMmIwZTBiNzI2MjRjMzhiMTEwIGxlZ2FjeS10cnVuaworMjI4MTggNzI1NzYyY2EyNzc0OWFkNmVhOTdjMzc1OWE4NDkyYWQ5N2FmMWRmZCBsZWdhY3ktdHJ1bmsKKzIyODE5IDI2NTg4ZDcwMzUzMDhmMTBjMzk1NDBmNDMyOGM2YThkNTYxZTU2NmQgbGVnYWN5LXRydW5rCisyMjgyMCA3ZWRjMmZjZTFmODgxNTc0ODI4ZWQ4ZGVhYWZkNGJkNGZjZGM5YjJjIGxlZ2FjeS10cnVuaworMjI4MjEgYjY3MzA5NDA3Y2ZjODg1NGMxMzQwZjAwYzI0NThkMTZmN2NmZmZjZiBsZWdhY3ktdHJ1bmsKKzIyODIyIGZiZDQ5ZDE3MTdjNGMyODM4YWRjZWFhMzVhZmZjZmM5ZmFlNjFhYmYgbGVnYWN5LXRydW5rCisyMjgyMyBmNmY5MzQxOWJmYjY4MDIzY2MyNGI4MGZlZTBmMGZlMzQwNzczODhmIGxlZ2FjeS10cnVuaworMjI4MjQgNDNkZGM0NmM1YTk5Njc4Yzc5MDJlMjZlODNkZGE1MjY5NjM3MGNlZCBsZWdhY3ktdHJ1bmsKKzIyODI1IGRjMjc4MzljMGI4MGZhYjFlZjBhMzA3OGFmZjcyZTU0MzgwZDg4NDkgbGVnYWN5LXRydW5rCisyMjgyNiBmZDQ4YTU1YWMzNjRmZTMwN2ZhYzI2YTc4NmJhODQxM2I0MWJkZDk3IGxlZ2FjeS10cnVuaworMjI4MjcgMTNhOTNhNWRjYjFkZTY3ZTcyYjYyYjQyYWJjZmY0ZGQ4MDlhYmQ4MCBsZWdhY3ktdHJ1bmsKKzIyODI4IDQ0YTYyZTNiNzA2ZjkyN2YyYWIzMDE2YjQ5YjI0ZWVkMmRjN2ZiNjggbGVnYWN5LXRydW5rCisyMjgyOSBjMGNmMWEyNGZjMTNkZDlkOTMxNDQ3ZTMyMmJmMjZmZDVjMmI4YjM2IGxlZ2FjeS10cnVuaworMjI4MzAgYzQzZDdhOGYwMGE0NTk1YWEwMDJmZTYyY2U0ZWI2ZDM0YmFlNjkwNCBsZWdhY3ktdHJ1bmsKKzIyODMxIGM1OWYwNmYzOGE0NjhmOTgwM2UwZTdhMWRkZTM2NDliNzNkMTY4MjQgbGVnYWN5LXRydW5rCisyMjgzMiA1MDA5ZmE2ZGRmZWIzMjI4Njc1YjU2MWI1NTg3ZjE3OWExYjUwMmU4IGxlZ2FjeS10cnVuaworMjI4MzMgMmZlMDg5MThmYWM2NjdjOWYwZTBhMTFmNmQ3YzcyNmYxNGQ4ZDcxZiBsZWdhY3ktdHJ1bmsKKzIyODM0IDg0NDU1MzQ3M2ZhNDY2OGYwMzRhOWQ4MTJkY2E0ZTI5Mjc1Y2VjMDIgbGVnYWN5LXRydW5rCisyMjgzNSBiZjJjNzc4NDBmMWNjNmZmYjA4NzJhMTk1ODhhNjcxNjJmMTc0YTkxIGxlZ2FjeS10cnVuaworMjI4MzYgNDdlMGMwZmRkNGM4YTAwNzk3YmM3YTdmZTVmZTI1YzlhMjIyYmQwNiBsZWdhY3ktdHJ1bmsKKzIyODM3IDg1NzY1ZTYxZGViMGMzMWQ4M2Q0MGRkNTkwMjJjMGEyMjdhNzA2N2UgbGVnYWN5LXRydW5rCisyMjgzOCBhODBiNGIwMDZlYjdjZjMzZjgzODJiMjFiM2IzNjkxNTFiN2IxMDYwIGxlZ2FjeS10cnVuaworMjI4MzkgYzQ4NjU0OTU5ZGM0NmZkMDE0OWU5MTNiZGJlMGVjMGIyMWJkZDUxOCBsZWdhY3ktdHJ1bmsKKzIyODQwIGRiMzZlMzk2ZjA0MzE3MjJhYTZiMDAzMmFlOWUyNzA2NjM2ZTlkNzkgbGVnYWN5LXRydW5rCisyMjg0MSAxYmUxOGVmODY5YTQ3ODg5MzczZGEzMjE5OWI0NGNmYzc5NzE3NThhIGxlZ2FjeS10cnVuaworMjI4NDIgYmJkZjg2ZjM1OGU5NTU4ODhiNDA0ZDdkNTFkNTQwYzc5MTllMGU0YiBsZWdhY3ktdHJ1bmsKKzIyODQzIDA2NjMxNTQ0Nzk0MTZiMDk3YjRmZDUyYWRkMjZhZDJkYjgzMDZlMjkgbGVnYWN5LXRydW5rCisyMjg0NCAwMGRlNzE5YWU4MzE5Nzc5NGI1NWZiOWM1YWYwMjQ4ZDE1M2JjMmVjIGxlZ2FjeS10cnVuaworMjI4NDUgMWNlY2U3NDNhNzA4NDNhYzMzMWZiYmI2ZGFkYzVmZWRkN2UyYzgzZiBsZWdhY3ktdHJ1bmsKKzIyODQ2IDA0ZmQzODY5YzZiYmViMjA1ZDExOTFkNzExZGQ5NmM3NWJmMmUyYzEgbGVnYWN5LXRydW5rCisyMjg0NyA5MDRiMmY5ODExYTI5MTJlZGQ1YWY1NTZhMTkxMzU1NDRjZDBkZThmIGxlZ2FjeS10cnVuaworMjI4NDggNWQ5NzM0NDhlNjkxZGYzMzg1NGViNDZjZjIxZTdhZTIxZWE1ZTFjZiBsZWdhY3ktdHJ1bmsKKzIyODQ5IDRhYzlhNDRjN2U0NzhjOWY5YjhmMWZhYTk2MmE5MDM3MGYzYTkxNzEgbGVnYWN5LXRydW5rCisyMjg1MCAxMGJmNGJlZDUwOTZmODRiMTczMTRkZTA1MGE3YWU5NjZiOTVjOTY2IGxlZ2FjeS10cnVuaworMjI4NTEgNmQ1YWMzYzQzNDE2MzRmNjE0NmQyYWI5ZDIyYjdmYzcxMzY1NzIzZiBsZWdhY3ktdHJ1bmsKKzIyODUyIDQzZmU5Mzc3ZTJjZjYwMzY1NmQ1MTRiMzljMmIyODljNmNlMWY4MTkgbGVnYWN5LXRydW5rCisyMjg1MyA2YmViYThiNmY2MGFkZDk2YjBhNmVkODk1M2QwYTAzYTg0NjFlOWVhIGxlZ2FjeS10cnVuaworMjI4NTQgYjRlOTE4NjEyZGM5NzUwYmVlMzhkMWExNzk3NmE3Njc0NDFlNzIyYiBsZWdhY3ktdHJ1bmsKKzIyODU1IGM3NzNkYWE0NDg0MDZlOGM5NGRkOWRiNGFmNjZkZmYzMjlmMzI4MWEgbGVnYWN5LXRydW5rCisyMjg1NiA4ZjAzNTgwMGEzNzNkNzZjOTk2NmZkNzJmZjA3NmMzYzY4YmZjMmNkIGxlZ2FjeS10cnVuaworMjI4NTcgYzM5NmFmZWYxYWE5MjMyOWE0MWU3MDgzMWQ0ZTlkMjMzNWUyNDUwZSBsZWdhY3ktdHJ1bmsKKzIyODU4IGY3Y2Y4OTYxYzY2NzhlNDBlM2Q1NGUzMGQ0ZjZjNjkyNzE2Yjc2NTQgbGVnYWN5LXRydW5rCisyMjg1OSBmNGE4OTllN2VjOTNhZjA1NjhiNmIyNjI3YTdlNmE3NzZjZTE1ODI4IGxlZ2FjeS10cnVuaworMjI4NjAgMjUzYWFhMWVkY2JkMTgwNTNiMmFiMTRjYjJjMGI4ZDY4ZmNhOWRkZSBsZWdhY3ktdHJ1bmsKKzIyODYxIDMzN2I1MzY3OWM3MzQ4OWQ5NTI4ZTExNGExNmQ2ODhlNjI0ODMyZWUgbGVnYWN5LXRydW5rCisyMjg2MiBiNzMwMTA3ZGJkMTM3NTJhMGZjOTc3MzAxNTBmZDAwNTA4YzI5ODEyIGxlZ2FjeS10cnVuaworMjI4NjMgYTg4NWQ4NzYxYmQyOTA1MDBmNGFhZmQ0N2Q3YWQ5ZDg4YjU0Mzg5YyBsZWdhY3ktdHJ1bmsKKzIyODY0IDU2NjNiODgzZWE1ZDk5OWI2MTg0NzZlOGI4MGI3YTAzY2E4M2UxOTcgbGVnYWN5LXRydW5rCisyMjg2NSBiNzA2YzAyN2MzYzBjYTE0MjVkNDkxNjIxMDkzY2QzODNkMGIwZDI5IGxlZ2FjeS10cnVuaworMjI4NjYgMGJlYzY5OTc4M2QwMDliZGMyYTM0ZjgyYjY2MWFmNTU1OWZkODc1YSBsZWdhY3ktdHJ1bmsKKzIyODY3IDFhYzExMGU5MDVjMmYyNWU0YTQ5NWE5Y2JhMDBiMGI0MDNiYjYyZDcgbGVnYWN5LXRydW5rCisyMjg2OCAzOGE2ZGRmZjg2NmYxNzg2ZTU2NDRlMjA1NTM4YzA0YmMwZjAzNmFlIGxlZ2FjeS10cnVuaworMjI4NjkgMGY1MTQ2NWY5ZjMzNDBjNjlkMTI2NDMzNTEzNTU0MjYwN2UwZjkyZSBsZWdhY3ktdHJ1bmsKKzIyODcwIGQxMDY1M2U3MWNmZTA0MjIwNWMzNjgwYmIyODdiY2VkYWQwYmQ2MzIgbGVnYWN5LXRydW5rCisyMjg3MSBmMDliZTY0MWM3YTNhMWIxOTJkZGQyYWNlN2NmMDFiYzZmZjk1ODg2IGxlZ2FjeS10cnVuaworMjI4NzIgNTQ1MDgwZTMwNjI3Y2RjYjBlY2VjMDQwMTM4MDIyODJmMjkxYjc4YiBsZWdhY3ktdHJ1bmsKKzIyODczIGVmMmNmOTk0M2FjZGE3ZWVkMmM0MmM3ZDBiYzc5MjcwNTFmMjQ4NzcgbGVnYWN5LXRydW5rCisyMjg3NCA0M2NkMGI0ZTcyNjFmZDgxMGY4ZjNiOTkxZDM2ZTI0YTA4M2YyN2M2IGxlZ2FjeS10cnVuaworMjI4NzUgYWUwNTZmMTE0OTc0OTY1NTNlODg5N2QzYmIyMjk4ZmQ0MDIyMzAwMCBsZWdhY3ktdHJ1bmsKKzIyODc2IGFkMGNjZTRhNWRlMWY3OGEyMDkzZmFiY2NiZjNlMTkzNmZhZmEzNmQgbGVnYWN5LXRydW5rCisyMjg3NyAyMGZiNzU5MWY4ODU1OWMwYTY5NjU1MjAyMDQ5MjYyNDllZGU1YWMxIGxlZ2FjeS10cnVuaworMjI4NzggYzBhNDQ4MjliY2Q1ZmYyNjExNWYxYjk1YTc3N2NiNDAxZDdlMmYzMCBsZWdhY3ktdHJ1bmsKKzIyODc5IGNmMTkxOWVhOTRjMjhhMmYxZDNkOTg0MGM4NmI2NDdjODczYzEyNjggbGVnYWN5LXRydW5rCisyMjg4MCBmNWNkZTdlZWI2ZDc3ZGE2OWZiZjU4NzNjNTYwMDNjY2I4MGI1MDM5IGxlZ2FjeS10cnVuaworMjI4ODEgNzFkNDVmMzE0ZDkwYWUzNTJlZjE2ZTM4MjliMzNhOGQzMDk1NGEyMSBsZWdhY3ktdHJ1bmsKKzIyODgyIDA4YWJlZTJhMzk4ZWZhNTRlZjQ2YTk4ZDQ2MTk1NTk2NTVkMGMxNDQgbGVnYWN5LXRydW5rCisyMjg4MyA0MGZlYWVkYjc4NjdlMzRjNzc4ZjZmN2JjYmYwZDhiZjIyYmRjNGJkIGxlZ2FjeS10cnVuaworMjI4ODQgNjBmMjkwYTdlYWU4YzE0ODliM2Y3ZDgyNmE5NjgxMmUyY2VhNWM5NiBsZWdhY3ktdHJ1bmsKKzIyODg1IGY0YWYyN2NiMjYzMjQwYTBhMjFlMmUyNzQ3NWVkODQ3ZTFjYWNjMjMgbGVnYWN5LXRydW5rCisyMjg4NiBjOTY0N2ZhNzhmMDUyZjNlZjBiNTNiYWVlZjM1MDFmMDU2MTAxMjM2IGxlZ2FjeS10cnVuaworMjI4ODcgZTAzY2UyZDY1NTg1NTdhMjk0MmRhZTI2MjgwODY5Y2UyZGUxZGM5YyBsZWdhY3ktdHJ1bmsKKzIyODg4IGIxYjA0NzljOTEwNmQ1ZWQ3M2FmZmZjNTFiZTZhMTU5NGMyY2M5YjYgbGVnYWN5LXRydW5rCisyMjg4OSA5MmRmNjg0NTEyMGQ2NDYxODM3OWVmYzlkNjc3NTRkZmE4ZDU0NGExIGxlZ2FjeS10cnVuaworMjI4OTAgZDU1Yjc1YWMyZmI0ODgzMTY1ZjQ4NTAwMTk3NWZjZjU4ZWRhNGRkZCBsZWdhY3ktdHJ1bmsKKzIyODkxIDc5NzQwOWQ5NzAyMjQ1YTM5YjM3YzQxNWE4OGFkZWZjNjc1NjBiMTEgbGVnYWN5LXRydW5rCisyMjg5MiAwMWRhZThhMDNmODYzNzYyMDZjODRmZDZiZWFkYTZmYWYxMTM3OGQyIGxlZ2FjeS10cnVuaworMjI4OTMgYTNjMDQ1ZmE0OWY1MGNhOTU3ZTM4NTlhYjA3NzVkOWIwNzhkOWNjMiBsZWdhY3ktdHJ1bmsKKzIyODk0IGE0ZmVlZmNlMGNlODQ5NjlhYzQ5NTc0ZjFlNzIxMDcyMzNmZjYxZWEgbGVnYWN5LXRydW5rCisyMjg5NSBkNGIzYjhlMjM1NDRiOGY0ZGVmODJiNzZhOWI4OTBjNGY0NmEwOGRjIGxlZ2FjeS10cnVuaworMjI4OTYgYjM5ZTU2ZGZlMzVkMmI5OTQ0ZTQyMWZmMWRmNjhlOGIxMmNlYjYyMSBsZWdhY3ktdHJ1bmsKKzIyODk3IGRlMGYwMzUyMDVlZjlhMzQ3YzNiNDY3NmM4ODU3OGRlMmNhYzU5MzggbGVnYWN5LXRydW5rCisyMjg5OCA3OWUyMzI3ZTUxZDYxMzZkOGQyMmY2ZWYzNWRlZmEyOGM5NWNmZTBhIGxlZ2FjeS10cnVuaworMjI4OTkgNmI4MWY5ZTlkODYwMGEyODRmZWEzYzJlODM4ZTFlZWQzZjAzYmFkOCBsZWdhY3ktdHJ1bmsKKzIyOTAwIDkyZDBmYWM4YTE2OTM0ZjU5ZTIyMjU4N2M1MWIzMzI2ZTY4YzIxNGUgbGVnYWN5LXRydW5rCisyMjkwMSA1NzVmNTBjZWNlYmExODMxYTk4OTIwZjQyMzdmYzgwMWQyNDU0OWRkIGxlZ2FjeS10cnVuaworMjI5MDIgOTM3OTY1NTE2YjU0NzJmMjlmNGY0NTY4Yjk4MmQ5YmQwZTQ1NTU4OCBsZWdhY3ktdHJ1bmsKKzIyOTAzIDJmYTYxNWRmYzQ2NGM4MGUyNjM0MGE2NGJhODhiNjBkNmRjMWRkMzggbGVnYWN5LXRydW5rCisyMjkwNCA4MGJlYmM1Mzg5ZmQwZDE4YmY1NzE1YzExYmM0YjY0NzNhMDI5ODZkIGxlZ2FjeS10cnVuaworMjI5MDUgYjRlZGNlOWQ2ZTk5MGVjNGU5MTU2M2ZkYTZmNjE4YTlkNTc2Mzk2ZiBsZWdhY3ktdHJ1bmsKKzIyOTA2IDg0YmUwY2FiNjNhODg0YjQ2YjBhMjc2ZmU3Y2FkZGYyODU1ZmRmZWUgbGVnYWN5LXRydW5rCisyMjkwNyA3ODBlNzQxNTg1ZTEwZTI2YzU2ZDExZjhiZmMxYmIzNjdhZjg2ODMxIGxlZ2FjeS10cnVuaworMjI5MDggOGY4ZTk3MTEzMmI4NjczODQ2NTQyNzE0MzBhNDcyNjRlZTI5ZDE5MSBsZWdhY3ktdHJ1bmsKKzIyOTA5IGVjN2EyYTZjZGJlOWM0ODZhN2E2ODkxNGI4MzBmNjViMGYwMDM1N2EgbGVnYWN5LXRydW5rCisyMjkxMCAwOGMzYzllZGQ5OWJiMGJhMWU0ODA4MWFiYzQwZmU4YzA3NDdmMmFmIGxlZ2FjeS10cnVuaworMjI5MTEgY2Y2NWViZjg3NTYwOTEzMWU4YzkzZTYzMmM2NWQxMzhhODVkNTVkOSBsZWdhY3ktdHJ1bmsKKzIyOTEyIDhkMzU4YzI0ZGNmYmIxMDQzYTk3MGE4ZmExMWI3ZGRjMTZlZmI5ODMgbGVnYWN5LXRydW5rCisyMjkxMyBjYzYwNGI3MTAzNmM0ZmY4YzJkMjEzYjQ4ZWJjYzg2Mjc1OTA5Yzc4IGxlZ2FjeS10cnVuaworMjI5MTQgODdlOGZjMGE5ODYyYjU1MzljN2YyYTZmMjdiMTYxM2M0ZjQ5Njc3OSBsZWdhY3ktdHJ1bmsKKzIyOTE1IDc4Y2ZiOTkzZjI3NDE5MDZkNzQxODdmMGYzNjUyODRkOTE3YzY5MmQgbGVnYWN5LXRydW5rCisyMjkxNiA3ZGYzMDBkMjg0YzZhYTAyM2YzYjNmZjI1MDgzMDg1Y2UwNjg4YWY2IGxlZ2FjeS10cnVuaworMjI5MTcgMzU4NDU1MGE2MjJhZDU5YTY5MmVhZTgyOTJhZTE5Y2JiYzdmZDQwYSBsZWdhY3ktdHJ1bmsKKzIyOTE4IGIzMjcxMjk3Yjk4NGVhNDliNjkzNjE0ZGVhY2I4NGI1Nzc4Y2JiYzcgbGVnYWN5LXRydW5rCisyMjkxOSA3MTUyNDQxMDhmYWEwZjc3MThiZTliNTg2MGZjYjJkZWYyYjVjNjllIGxlZ2FjeS10cnVuaworMjI5MjAgNjg1ZGNhZTVjMTIzNzAyOTgzNmI5ZWIzOWUxMzY3NDU3YTIwOTI4OSBsZWdhY3ktdHJ1bmsKKzIyOTIxIGM3NjhkMzE5MWRmMWMxZWJlYTViOWQxODc2YWZmMTY4ZDFiZTZmZjYgbGVnYWN5LXRydW5rCisyMjkyMiA5MTUzMzY3NWQ2Y2JmMGFkNWYyNzUxNzUxZDE1NzAwNTU0NWU1NDY3IGxlZ2FjeS10cnVuaworMjI5MjMgODJkYjlhOTAwNmFjNWVlM2NlYmYzNzNhYWFmYTVkNjRhZTc4ZGQyYyBsZWdhY3ktdHJ1bmsKKzIyOTI0IDY5NTg3ODRiMWNlZjAxNWNkZGZlMjMyYjg4NTZhODhmYjk5NWM0NGEgbGVnYWN5LXRydW5rCisyMjkyNSAzZjg0YjIwMDBmNjJiNDE0OGZmN2E0ZmY2MjI3NDA2ODAxM2ExNGM3IGxlZ2FjeS10cnVuaworMjI5MjYgN2RlNGU2YjhkMTk5YzBlNGE0NTJkY2VkZDE4M2RkYTkwZDczMzQwZCBsZWdhY3ktdHJ1bmsKKzIyOTI3IDhkZmIxM2E0ZTE3NWMwZjM1MTU2MTM2ZGExZDNjNTg0ZTBkZTU3NzAgbGVnYWN5LXRydW5rCisyMjkyOCA4Y2JjNzRmNTU4NmI1MDc2N2QzMGQ2MmVmM2VkNmU3MjVlYjE5ODVmIGxlZ2FjeS10cnVuaworMjI5MjkgNzE0YWVlY2MyMzE2MmY3NDdiYWQxYWZmN2UyZWVkY2M5ZjYzZGVmZCBsZWdhY3ktdHJ1bmsKKzIyOTMwIDZlYmMyNjMzM2U2ZDdjYzFlYWVlMzhhZTU2ZGE0YTk2NTZmNmY0MjUgbGVnYWN5LXRydW5rCisyMjkzMSA3NDllNDljOTQ3YzA3MWJlOTAzMGE4ZDg1MGJmZDAzOGNlMzA1OWZkIGxlZ2FjeS10cnVuaworMjI5MzIgMzczMWFkMWQ5MDMzM2VkMTFiMzgzODczNThiMzc3ZTdmMWNlMDJlZCBsZWdhY3ktdHJ1bmsKKzIyOTMzIDMxYTY2YzBjN2QzMDFlNmEzYWUyNTdhZjEwNzg3NThkNWQ0ODc5ZmIgbGVnYWN5LXRydW5rCisyMjkzNCBjZmM1ZTUxNjBjZjVkZjgyNjUwMjFiNzM5MjQyNjVkZmJiNzQ5MTRhIGxlZ2FjeS10cnVuaworMjI5MzUgNmI4Mjg1M2RmMmVkYjc4Njc3N2ZiMmRjZjM1Zjk3YjZmZDQwNTQ5NCBsZWdhY3ktdHJ1bmsKKzIyOTM2IDkzM2U4MTI5NzRjM2VhOTBkOTNlMmUwMjA0NTc2NjcxNjRjYzBjMTAgbGVnYWN5LXRydW5rCisyMjkzNyAwNDIxOGU4NWIxNTZmZDY1OGY0NzAwYzAxMDA0MzAwZjRiNzBlZGMwIGxlZ2FjeS10cnVuaworMjI5MzggNjE3ZjVlNzJiMGVjODMzMmQ5MmZkOTVhMTY0YzI0MzFhMjI4YmI4NiBsZWdhY3ktdHJ1bmsKKzIyOTM5IDM3MTZiMTE2ZmIzMTMyMjU1YjQ1NzRjYjE1OTA5ZmVhZTMxZDRkMWUgbGVnYWN5LXRydW5rCisyMjk0MCA5ODMwZDAwYjg4N2RmYTQyNmQwZDk5MjA2YmZkYTQ4OGU3ZGI0Mjc5IGxlZ2FjeS10cnVuaworMjI5NDEgODQzZGE5Nzk1MzgxMzA3ZjAxNTI0N2IxZmMxOWZjYmU5ZDczNDY0OSBsZWdhY3ktdHJ1bmsKKzIyOTQyIGJjNmJkMzVmNTk5OGRmNDlmNWRjNGYyMjEwMTk0MTZjNmJlNzczZmIgbGVnYWN5LXRydW5rCisyMjk0MyAzNzJkOGMxZDJiNjRlMjg4ZDYxMDIwNzBjZTYxZThmNTU2MWQxZGI0IGxlZ2FjeS10cnVuaworMjI5NDQgMmE0ZTNjOTI4NWI1NGZiZTg2YmM4N2MxMmJhMWU2NzQyMTkwOWQ2ZCBsZWdhY3ktdHJ1bmsKKzIyOTQ1IGZiYWY0ZTU1MjYzZjkxMDM5M2Y5Zjg3YTNmMGRjZTgzMTQ5MmRiZjMgbGVnYWN5LXRydW5rCisyMjk0NiA0NTY1NzM3NmI5YjhjYzkzNDYzNWJmZjY4ZjIzY2E2M2EyZWY3NzM2IGxlZ2FjeS10cnVuaworMjI5NDcgZDZlMWIxMDkxNjA5NzFiMzcyNDhhYzFkYzYyZTNjMDczNDYzZTJjOCBsZWdhY3ktdHJ1bmsKKzIyOTQ4IGUyMDJhNzVkODgxZTE0Nzk5NWJiNDM2NTU2ZjZlNzg2OWQ2ZWRhNjkgbGVnYWN5LXRydW5rCisyMjk0OSAxOTAxZjg3NWI3ZDNkMWQ4ZDRmMzAyZDEyNzk4YjYyYjFkYjgzZmJhIGxlZ2FjeS10cnVuaworMjI5NTAgYjdmNmZiYzA4N2E3N2VhYTcwNzY3MWIyNmJhMGVlMTMzYmJlODQzYSBsZWdhY3ktdHJ1bmsKKzIyOTUxIDUwMDU1NDViNjQ4N2YwNmE3ZWQ2OWFmZmIzZDMyMDQ1MWFmMjQ0NzkgbGVnYWN5LXRydW5rCisyMjk1MiAxMWIzNzNiMDBmMmFmZTFhZWYwNTdlOGNmMjMwZjgwOTQ3NGQ5ZjdhIGxlZ2FjeS10cnVuaworMjI5NTMgNmVhZmM0YTYzNTlhODBhOGVlMTU0MWUwNzg2NWFlNDY4YjgxMTFlMSBsZWdhY3ktdHJ1bmsKKzIyOTU0IDBiMGM4NDA3OGY5MTYwZGEyNjE1ZWQ4MGY3MGMzYjQ3OWM5MGM0NGEgbGVnYWN5LXRydW5rCisyMjk1NSAxYzhhOTUwZDY5NzAwZTc1YjE0NDNlODE4YjQ3OGVmMDExMGQyMjA5IGxlZ2FjeS10cnVuaworMjI5NTYgYmQyNTJiMTgzMmEyZGJhMTg5MDgwMmVhMGMzNjE2YzU2NWQwMDkwMiBsZWdhY3ktdHJ1bmsKKzIyOTU3IGI0NTIxNDM2ZThmOGY5OWQyODE3MjdhMzc3Njc4M2E1N2RiYTUzZmIgbGVnYWN5LXRydW5rCisyMjk1OCA5NDMzZGQzYzE5N2VmNGIxZjZhM2Q1YTU5OTJiNjQxYjUwOTYwNWY1IGxlZ2FjeS10cnVuaworMjI5NTkgNDUwZTVhMGU5MjZiOTQwZGI4OTM5YTE0NzJiODc1Nzg0YzcyNDA2YiBsZWdhY3ktdHJ1bmsKKzIyOTYwIDBkOTYxNDVjNDRiODlmNmEwZmQzYjgxZDcyODYzNWU2MTkyYjYyMGMgbGVnYWN5LXRydW5rCisyMjk2MSBmYjJkODNhYWZmNjg2NDVmZTdmNmYyYTEwZjZjMTg1NGJiMTk2NjUwIGxlZ2FjeS10cnVuaworMjI5NjIgMDFkZTBhNzAzMDY5OGM3NGMzMjhlNTE0ZjUzYmYyYmEyZTY1NjY2NiBsZWdhY3ktdHJ1bmsKKzIyOTYzIGQxOTY0OGNhODc0OWNjYzFhNDI0OWIxNDU3NTI1OWRiMjViOGI1ZWMgbGVnYWN5LXRydW5rCisyMjk2NCBjZGZkZDUzNTk0MTFhMDk3NDI5MGI0MDQyOTc3YjcyZWVmNDdhMDhlIGxlZ2FjeS10cnVuaworMjI5NjUgYTY4NGI0YzEwMTI4NDNlOTMxYmUzMDIyN2E2NGFiNDU3OTcxMzU1OSBsZWdhY3ktdHJ1bmsKKzIyOTY2IDc3NjZlYTcyNDMyMDk0Zjc5ZjNhYmYzNDkzOGQ5NjI4ZjQ0MjRmNTUgbGVnYWN5LXRydW5rCisyMjk2NyAyMWQyYjllZWRjMmRlMTc5OTYwNDNjNDU5ZWY1YTIwNDZlYTMyNjYwIGxlZ2FjeS10cnVuaworMjI5NjggMmE5YmJkYmVmYmIxYzk0ZjFkMmZlMjA5NjMxNmU3OTcxNjYxMmM2NiBsZWdhY3ktdHJ1bmsKKzIyOTY5IGJhOWFhYmNkODllM2RlY2VhMmVlOTJlMWVjZDU3Nzc5OTZkMmZiNDEgbGVnYWN5LXRydW5rCisyMjk3MCAyMjZkNWVlZmE0NGFmZDZiNWNiYzU2Yjg2Njg4N2E2MDBkOTk2M2FjIGxlZ2FjeS10cnVuaworMjI5NzEgNTQ4N2Q5ZDUzYTBlMWU1NTIxMjFiYzkwMGRiNzMzMzM3NTA5NjNmZiBsZWdhY3ktdHJ1bmsKKzIyOTcyIGYzMDM2ZDRlM2MyMmFmODEyZjA4OWFhZTE0MTM1ZmUxZjc5MGNmMjkgbGVnYWN5LXRydW5rCisyMjk3MyA0ZDJjYjZlYWE0MTEzOGM5YTAwNDJiMjUzZWI4ZDFkNWViNWMwNWNkIGxlZ2FjeS10cnVuaworMjI5NzQgZGViMDhhZjg5YTM1ZDY5ODg0NjEyZDMyZWYxMTQyODlkMDY2MzA5YiBsZWdhY3ktdHJ1bmsKKzIyOTc1IDJlNmRhMmRkMmFiODIwNzBiNDExMWY1OWFiNDRmYWY1MzU0NzdhNDggbGVnYWN5LXRydW5rCisyMjk3NiA4NWViMWM5MTFhZTVjMGM3NjZjMGY3ODhlYmY1Y2UzOGY4MDJjZDE5IGxlZ2FjeS10cnVuaworMjI5NzcgYjdkYzUxNTk0NDhmNDhhNzczMjJiOTJkZWZkYmQ5YTM0MjgzYjU2MiBsZWdhY3ktdHJ1bmsKKzIyOTc4IDJjMWE5ODMwOThhMDY0YjQ4ZDkyNWEyOTM4ZjRmY2ZiMmM0ZjllNTYgbGVnYWN5LXRydW5rCisyMjk3OSBkOWRhYTRhNjdiZTI2MjM4OWExMGM0ZjYyMjExMGQ0YWExNDM0NjMyIGxlZ2FjeS10cnVuaworMjI5ODAgZjU2YzkxODIwZmFlMmQyY2E4M2JkM2ZhODIxZDU2YjBhODYyN2NmYSBsZWdhY3ktdHJ1bmsKKzIyOTgxIDBlNDY0NmJmODA0MTEwZTMzN2VlMzg0OTRhN2UxZTQ5YTk4MTJhNDcgbGVnYWN5LXRydW5rCisyMjk4MiA1NmM1NDlhMjUzYTZlOTRjNmZjOWE2YTExYTQ3OTNhOGU5YjI5MzI2IGxlZ2FjeS10cnVuaworMjI5ODMgNWRkMjhhYTJiZTZiZmQwMDQwNDMxMmMwYzY2NDIxNTkyMDA5ZDUxZSBsZWdhY3ktdHJ1bmsKKzIyOTg0IDhkMmM3NDM2YjlkMjdmN2YzMjVjZTY0OWI0MzI3MDJjZDM4NGVhMDkgbGVnYWN5LXRydW5rCisyMjk4NSA4ZTZlMjQ4ZGZkZDg2NWJiOGI2YzMyMDI4YjViNDI2MTcyNjg5YTEzIGxlZ2FjeS10cnVuaworMjI5ODYgYTVlZWIxZTcwZjQxZjJmZTg2ZGQ4NTI3NjEyODI4NjdmZDk5YzNiZSBsZWdhY3ktdHJ1bmsKKzIyOTg3IDJhNDY1YjBlYjU0ZTQyMGFhM2RmMjQ3OTZkYmYyZTNmMGVlYTIwMDQgbGVnYWN5LXRydW5rCisyMjk4OCA4NTQxODc4Y2YyZTEzZDI1NjA0ZmE5NTAzOGI0YmY4ZjRjM2I4NzBhIGxlZ2FjeS10cnVuaworMjI5ODkgZjE0MzBlMzM4MmJiZTRiYWY4MjQyYjhiNTg1OTk4MTY5M2MxNzU5YyBsZWdhY3ktdHJ1bmsKKzIyOTkwIGRjMDU5YmZiNTNiMjJlY2Q2NTEyMjg3ZTlmMGJiZDIyNTU3OGUyMmUgbGVnYWN5LXRydW5rCisyMjk5MSA5ODg1NmE0YWVkMTAxNzI2YWU2ZDI0YjVhZDA2N2QwMWQ4NzEyY2MxIGxlZ2FjeS10cnVuaworMjI5OTIgN2ZhNDA1OTdkYTdlN2Y5MmUzNDgwZmM2N2JhMjBjNTc1NTQzYjJkMCBsZWdhY3ktdHJ1bmsKKzIyOTkzIGM5M2Q3ZDA4NTdhMjc2ZGJjYjFhMTI0MzFkMTE1MmNlNDM0YjVjMTggbGVnYWN5LXRydW5rCisyMjk5NCBmYTA2MjFlNGFkOGFjN2Y3ZjhkNTc0YzRmYWUzNGM1MzFhZTM2OWM2IGxlZ2FjeS10cnVuaworMjI5OTUgMzViNmExZDBiMWUwNTRiNGQ2NGUyMDU4OWFmOGQyNGZkOGNhMTU2YyBsZWdhY3ktdHJ1bmsKKzIyOTk2IDNkNzZkZmMzNGM1N2U2Mzc1NTI4ZDgxNzZlMDFiZjhkNTQyMWJjODIgbGVnYWN5LXRydW5rCisyMjk5NyBkYmI5ZDgyYzdjZTM3ZmY0Mjg1NzMwNDlhNGYyOGFjYmI3OTM0ODAzIGxlZ2FjeS10cnVuaworMjI5OTggYzA1ODBkOGMxOTNlM2UzM2ZjYjc4YzU3OTRiM2FhNjQ4ZDI0NTU4ZiBsZWdhY3ktdHJ1bmsKKzIyOTk5IGUxZjFlOWViZjA1MDEzYTcwNmU2ZjA3OTEzYzYzMjE1NGNjOWZkYjEgbGVnYWN5LXRydW5rCisyMzAwMCA1YTdhYzhjMDYzY2NjZmMwYzZlYzI3YTMwNGNkZDlmNWUzNGMwZmM0IGxlZ2FjeS10cnVuaworMjMwMDEgYTFkMzk3MDg4NWJkYmViYmU3MDZhZGI2NDlmMWU4YTJiNzA3MDA1NiBsZWdhY3ktdHJ1bmsKKzIzMDAyIGNhN2Y3NTc2ZDgyM2U4YzcwYjg2ZDAyYTVmODg4MmRlZjA1MTcyNWUgbGVnYWN5LXRydW5rCisyMzAwMyA2NGJjZWYxNzAyYWQ5N2FlMDE3ZmVmNmMwNzlmYjcxOGExYjZjZTlhIGxlZ2FjeS10cnVuaworMjMwMDQgOGU4N2NkZGVkOTZmYmZlN2Y1YTZlNWMyYzRlMzM0OWQ1ZTc2MTZiMyBsZWdhY3ktdHJ1bmsKKzIzMDA1IDk2ZGE5ODVjZGU5ODQyNmFhYzRkM2ExYjVkNGRhNDkzYTkwNmFjMjAgbGVnYWN5LXRydW5rCisyMzAwNiA0NDE3NWJiMGI3YmZjODA3ZWVjNmRkYTkyOTYwZGJhOTgwZDRhMTRkIGxlZ2FjeS10cnVuaworMjMwMDcgZDA5MjY4ZDBlYTUyOWI2NDkxM2NlMDRiOWJiYmZiYzUzYjBhNzJiOSBsZWdhY3ktdHJ1bmsKKzIzMDA4IDk0ZDBmMmVlYTA0N2UyZThiMTIzZTMxOTc1MWRmNGYxMDcwZjU2ZDUgbGVnYWN5LXRydW5rCisyMzAwOSA1NzhlZjM2ZjhmZGUwYTQyYjZjYmRkNGE0YmJlOGU5OGQ4NGMzMjg3IGxlZ2FjeS10cnVuaworMjMwMTAgNWZjZDBkNDFhNDQ2YmQ2NTI1MDcwOTRlMDBmNGE4YWU0MTQ3ZDdiYiBsZWdhY3ktdHJ1bmsKKzIzMDExIDJiY2NlOGJhYjhiYmU4ZGJkMzc4MjNjODI2NTc3YTQwZWEzMzBlYzkgbGVnYWN5LXRydW5rCisyMzAxMiBkNTQzNzhkMzMzNGZkNDI4ZTBhYWVjOTE5NDIyODBjYzRmNTBkMTA5IGxlZ2FjeS10cnVuaworMjMwMTMgZDRmNTNiMWZiNDI0MGRmYzJiMzg3Y2RlZTBkMjZjY2ZkZTk1YjU3OSBsZWdhY3ktdHJ1bmsKKzIzMDE0IGE1ZWFlZjQ3YTliMzM2MGZmNDIyYzdkM2E2YTQyODMwMmM5MDQzZDkgbGVnYWN5LXRydW5rCisyMzAxNSA0MmQwYmRlNzM1MzNlMTI0NWM2MzUzMTQyNmM2ZmNiMjVmMWVmNDQwIGxlZ2FjeS10cnVuaworMjMwMTYgNDMyNTkxMzI4NDEwMjQ1YmQ4YjUwNjYxN2YxNDFiMDE4YmE2Y2RkZSBsZWdhY3ktdHJ1bmsKKzIzMDE3IDMzNWJmM2VhYjlmMWFkZDlkOWE1ZjAzYTg5NjczNzQ4OTAxNmY1ZmIgbGVnYWN5LXRydW5rCisyMzAxOCA2YzdkZDliM2U1MGI1ZjMzNjhkNDEzMmNiMjMzMDAzOTMzMjhjY2ZhIGxlZ2FjeS10cnVuaworMjMwMTkgYzU1MjNiMGY4OWQ1ODNkZWRlZDFlYTcwZTJlMDFiMzg3MzIyNmRkZCBsZWdhY3ktdHJ1bmsKKzIzMDIwIGVlMTJjMzhlNDZhNmZjMDM1Yzg3YWMwMjNlNDlmZTk0MTYwNjc3OTEgbGVnYWN5LXRydW5rCisyMzAyMSBiMjMyMzg2NDZkMTU2YjJkMTcwOTU0MWRhYWFhZmViODc1Yzk4Yzc3IGxlZ2FjeS10cnVuaworMjMwMjIgZTcxNDcxNTZlZjMzZTc0YTQ3N2JjMDcxM2ExYmE0MDk5MDI3ZmYyZSBsZWdhY3ktdHJ1bmsKKzIzMDIzIDFjNjJiNGE1OTdmNmU3MmIwNWM3M2RmMmZjMTJmYjVmMzdjNWVlODEgbGVnYWN5LXRydW5rCisyMzAyNCAwN2JiMDlkZjMzMjRmMTAyMDFjODgyOTI5OTc5OGRkNmE0NjczNzg4IGxlZ2FjeS10cnVuaworMjMwMjUgMWNjODRkZmNkNmJkMjc0ZjNiNTdmNGIzNDY2ZWY4OWMwY2FjMjVkMiBsZWdhY3ktdHJ1bmsKKzIzMDI2IDdiNzIyYjZjYzc3YjMxYzI4OWYyNjU4MDFhZTdhYjMwMjNiYzc4NjIgbGVnYWN5LXRydW5rCisyMzAyNyA5ZGUyZjdlMWI2ZThiOWJlMzgxYmExMGFmMTA2OTUzNjM5N2JjOThjIGxlZ2FjeS10cnVuaworMjMwMjggMTNiNjU0Y2U2M2E0NzdiZjZkNjg1YTVhMThkY2JiMWQyM2RhNDkwOSBsZWdhY3ktdHJ1bmsKKzIzMDI5IDE3MzEyMmU1ZWRlNDE3MmM0MTFhMWU4YjY4MGFkNzA2YjQ2ODA5NWMgbGVnYWN5LXRydW5rCisyMzAzMCBjNzM3ZDEzZGE5MmQyYWUwYTA2MDMwYTZhOTA4YjIxODkxNTU1N2UzIGxlZ2FjeS10cnVuaworMjMwMzIgNGFiZmMxNzY2ODVjMzAyYTIxYzE2MDNjNTdlNGM3YmNjNDMwOTZmNCBsZWdhY3ktdHJ1bmsKKzIzMDMzIGY4MTRlYTZiYjY2NzZiODI0MTk1YzUxMjA4ZGQ2NjNhN2M5ZmVhZTIgbGVnYWN5LXRydW5rCisyMzAzNCBjYWQ5MzNhNDU0ZmU2MWQ0ZGYxODBhYTJiZTI5MzhmMjdlOGRjNjZiIGxlZ2FjeS10cnVuaworMjMwMzUgOTRlMTQxZTIwZDYxOGU4ZTEzMWY5MGJmN2NkYWMyNjExYmFhODhjYSBsZWdhY3ktdHJ1bmsKKzIzMDM2IDBiNTc3MjkyODRkZmI0ZTZjMjM5ZjE2YWIzNDk0MWUxOTQyNmUwOTggbGVnYWN5LXRydW5rCisyMzAzNyA5MDc5NzEwZWMyMTY5NmUzOTg0Njc5ODJjYmM2MWM4YzkxYjY5NmM2IHIyMmEzLWJyYW5jaAorMjMwMzkgOTYwNDc0ZDEyOWFlZDczNjVlYzc5YWFlYjBhMjZiY2E0ZGZlODY0MyByMjJhMy1icmFuY2gKKzIzMDQwIGM5N2RkYTIzOGIzNjI2NjFiYWI3N2JiYTlkMGFjM2E3OWM1MmEyMTkgbGVnYWN5LXRydW5rCisyMzA0MSAzZjYyMTQ4OWJlNzIxZGE2ZTRhZTUyYmNlNDQ2NzI5ZGQ3MDViNzI3IHIyMmEzLWJyYW5jaAorMjMwNDIgYjM1YTJiZjBjOTgwYWI0NTNiNGRhYTQzMWRkMWE0YTlkYzI3ZGYzNyBsZWdhY3ktdHJ1bmsKKzIzMDQzIGUyZTlmMTcyMmM0ZmEyOWYwY2ZjZTBmY2RkODM5NDE5NTg3MmUwMGQgbGVnYWN5LXRydW5rCisyMzA0NCA5NWVhNjYxMjIzMjU2ODhlMjRiN2ViMTcxNGFmMzIyMzg1ZmY1NzNhIGxlZ2FjeS10cnVuaworMjMwNDUgOWM1NGExNmFjOGI5ZWRjNTM0ZGE4YTZkMzIxNWY0NmMyODZlMDJhMSBsZWdhY3ktdHJ1bmsKKzIzMDQ2IDcwMGZlZmRjMDNkMjg1ZjMyNGZhY2UzM2IzYTg3ODVmYTJiODJjZmIgbGVnYWN5LXRydW5rCisyMzA0NyBjMGY5NGJjNWZmZTgwNmU3Nzg2MWY2OTJiYmQxNjE0NGExMzhkODc5IHIyMmEzLWJyYW5jaAorMjMwNDggNzcwOTdhNTVlOTczMWYwNWUwNGY3OGQ1YTUzMjU2OWQzOWU5YmZlOSByMjJhMy1icmFuY2gKKzIzMDQ5IDAzMDgwZTM5NWM5ZWQwZmVhODU4MzU2ZmU5MDM3NWFlYmVmZTdhOGYgcjIyYTMtYnJhbmNoCisyMzA1MCA3OGU3M2I4NTFhYTlkYmEzNjRmZTkxZmZiNjM3ZDM0Nzk2OGFjODk5IHIyMmEzLWJyYW5jaAorMjMwNTEgMjg1Yjc0MGI4NDQxOTJjNjdmODQzODIwYzYyNmQ2NGVkYWNjNjZhMyByMjJhMy1icmFuY2gKKzIzMDUyIDQzZGM4MjdkZDcxN2NhZmJhZDViNGE0NDVhN2YyNjUzZjUxZTgxMzUgbGVnYWN5LXRydW5rCisyMzA1MyAwOTFjMDFkMDdkOTgxNDI3Y2ExNGMxMjA4NGQyMmY5OThmOWVjOWRkIGxlZ2FjeS10cnVuaworMjMwNTQgZDQ4MDE0ZGJiODVmNmE5YTViNmQyZWMwNDQwY2Y1YzMwNjI5MmMwOSBsZWdhY3ktdHJ1bmsKKzIzMDU1IGVkNTQ5NDNjZTI0ZTBmZTQ0Njg4OGY5NWY4MDZkMThkOTZjYzQ3NjEgbGVnYWN5LXRydW5rCisyMzA1NiBmZTIyOTcyN2E0MGNmZDQ5ZGI0MTk2M2JjNTFhYWUzMmNmNjM3N2E5IGxlZ2FjeS10cnVuaworMjMwNTcgYjQ3ZDI5Njk5Y2QyOThiMWIyYjQzMjZmODQ1NTNiZTY5NWRhMzkxOCBsZWdhY3ktdHJ1bmsKKzIzMDU4IDMyY2ZjZTRkODNkYzA2MDQ4MGI5MWZiNDhhNDdiYzQ4YmVhM2U4NDIgbGVnYWN5LXRydW5rCisyMzA1OSA5MDMxYWFiMjdlYWVkZDJhNTBiNGIzZjQzNTFlMDNkMGY3ODhjNWM5IGxlZ2FjeS10cnVuaworMjMwNjAgNTYwMTU1ZTc1MDg3OGMyZGYwMDBkOWFmNTc1MDY5MWVlZTAyYTNmZSBsZWdhY3ktdHJ1bmsKKzIzMDYxIDhjYWM1ZWI3MDNmZDg0NjVkYzI0MDllZmNhOTY2ZTQ1NTVhNWMyOGYgbGVnYWN5LXRydW5rCisyMzA2MiAwODZmZmFmYWVkNTUyNTk5MGY1NDg3NWEwYWRhM2UwNDdhMjAwNTA5IGxlZ2FjeS10cnVuaworMjMwNjMgMDU4NGM5MTMyNTI1YTU4OGUwNTQ0NjJjNzRmZDhhNmViMDJmOTg5YSBsZWdhY3ktdHJ1bmsKKzIzMDY0IDc5YTMxYmE4NzNhMzQzZGQ5NzUzOGFlMDRlMmJmNDJiY2NjYzFkNWMgbGVnYWN5LXRydW5rCisyMzA2NSBjZTU3ZmZmOTM5NjI5ZDBjYWJlODEzMWVhMTMwODUwODllZGMzMzZjIGxlZ2FjeS10cnVuaworMjMwNjYgMzhjMTJmYWY2MTJhYTU4OWM4MDk5MDRlZTQwNzg3NTExMTU2MTg1MyBsZWdhY3ktdHJ1bmsKKzIzMDY2IDA4Nzk2YTEzN2YxYWRhMjQ2MmY3YTMxNzczMDZkZjVmNjdhNzY3ZTEgbGVnYWN5LXRydW5rCisyMzA2OCA3MDQxMWViYTIyNWIxYTUxZjdjYzNhN2YyNjhlZTk2ZjVmNzUzYmVjIGxlZ2FjeS10cnVuaworMjMwNjkgZGM4N2Q5MWQwZGZkNjg1ZTg1NDRlMWU2MmU0N2RkYjQ3NDdiN2U4NSBsZWdhY3ktdHJ1bmsKKzIzMDcwIDhkNTg1ZDgyMmY5ZDBkYjFjYzkxMGE4MmQ1NWEyYzAzMGY0OGU3M2UgbGVnYWN5LXRydW5rCisyMzA3MSAwY2JiMDYwZGEyYzM0YmNkMDk0ZWY1YTFiYjE5MmQwOTk4YzM1YWZmIGxlZ2FjeS10cnVuaworMjMwNzIgYjczOTYyODdjZjY1Yjk3MjZjMjQ4NTE5NzkyNzlmNWQ3NzBhMDFhYyBsZWdhY3ktdHJ1bmsKKzIzMDczIDZiMWJlMTRkNzY1MDMyNDkwMzc1ZDIwMGU4NDQ0ZWMxYzFkYTM5MDIgbGVnYWN5LXRydW5rCisyMzA3NCA1M2UwY2FlM2NmNmNkMDkzMWI2ZTdkN2U4Yjc4MjY2MWNlNjQ1YjBiIGxlZ2FjeS10cnVuaworMjMwNzUgZmU1ZWMxYTNhN2UwZjczMGIwN2ExZDY1OWNjMmJhNGVkMmNmOWU2MCBsZWdhY3ktdHJ1bmsKKzIzMDc2IDNmNzNhOGJmNzZmN2M5OWJhOTZmMTY4ZTQ2Y2FiMWUyN2Y5NTQyOTMgbGVnYWN5LXRydW5rCisyMzA3NyAzZGMzMTU0MDk5NjgxNDJjMGQ2ZDU2ZDUxMWJlM2RkYWI1NDNjMzc2IGxlZ2FjeS10cnVuaworMjMwNzggNmU1N2RjMzA1NTUxMDhhNmZjMTgzMzRhMWEyZDgwMTZjZGMwMmU4NiBsZWdhY3ktdHJ1bmsKKzIzMDc5IDM3MjE0OTc3OTI0MDY2OWY4NDc1MzEyYmJiODg5ZDNkOWQ1YmUzMTcgbGVnYWN5LXRydW5rCisyMzA4MCA5MTk1MzJjNTBhMTc1OWI4OTRkYjk1ZjAxMDU1MzRiNDFkMWI1YTAxIGxlZ2FjeS10cnVuaworMjMwODEgOGVmNDU2OTQ5Yjc2MjQ2YWVlODRjNjg1NTJkOTVlNDM1YzNlMTdiOCBsZWdhY3ktdHJ1bmsKKzIzMDgyIDM5ZWVhYjY4OWQwNjdiMDljYTVmZGIzODA5YjFkYTczMTk0YzE3NTggbGVnYWN5LXRydW5rCisyMzA4MyA1YjI4ZDdkYzMwMDYyNWI1ODNmMmRmMTYyZDg4MzMxOGRmMzg1N2IxIGxlZ2FjeS10cnVuaworMjMwODQgYmJhZWE1M2FjMDg3ZjU4NjU3ODJkNTA1ODBmNTkyZjk0YmRjZjljOCBsZWdhY3ktdHJ1bmsKKzIzMDg1IGU0MTkwNjBlMTNjOGQ0NDEzZjBkN2E2ZGE0YzJjZmFmNTlhMDM5MDQgbGVnYWN5LXRydW5rCisyMzA4NiAxMzU5ZmFjNjE3ZjFiYjQ3Yjg2NmYwNmE1OTU0Y2YwOTVjYTU0Y2RkIGxlZ2FjeS10cnVuaworMjMwODcgMDBkODA5NDdkODE3OWY4ODlhMGM3ODJhOGI2MzEwMjM1YWYwMDk4ZSBsZWdhY3ktdHJ1bmsKKzIzMDg4IGY0NDYwNmIyNDJjNTkxMTE0MDc5MTYxNDI2OTg5NmE4NWYyZTE5ODUgbGVnYWN5LXRydW5rCisyMzA4OSA1MzI1MGNiMTA2ZWI0NzFiNzQ0ODNhYjY4MWU2NmQ4MjI1ZjEzNDkxIGxlZ2FjeS10cnVuaworMjMwOTAgOWNmMTMzOGZkOGQ5ODUwMDIyMjlkYmViMTRiMzYxOWJjMzVkOTNjMyBsZWdhY3ktdHJ1bmsKKzIzMDkxIDU0MjBlN2QzNDhhNDRjNjMxYjhjMzVlYzliYjU1NjQzNDAxZmJkZDIgbGVnYWN5LXRydW5rCisyMzA5MiA1MTU4ZTQ3ODk0NTkyMTgxMGUwZDY2OTM2Y2YxMjY5OWNiMDZhNzlhIGxlZ2FjeS10cnVuaworMjMwOTMgYzE1OTIwYzJjZjZjY2I5ZmU5ODg0NDg0ZDQwMjNmNmQ0MmM4ZWQxMyBsZWdhY3ktdHJ1bmsKKzIzMDk0IDEwZjU5MjdkYmYwNWQwODlkYzZiNmIzMDI2MDZmNWM1NWU0NDEzZTcgbGVnYWN5LXRydW5rCisyMzA5NSAzNzc3NDZhMzg5NzIxOTk4YzQxYjlkYjQ5NDc5ODcxOGZjOTk2ZmEwIGxlZ2FjeS10cnVuaworMjMwOTYgZDhkZDc1ZTNiMzA0NjVmYjFlNTczYjY5MDhiZGZmYThiMDU1ZmU2YyBsZWdhY3ktdHJ1bmsKKzIzMDk3IDIwOTI0YTcwZmExYmJjNjQ3M2E4MmE3NzI0Njc2MGJkOGE2NDg0OTYgbGVnYWN5LXRydW5rCisyMzA5OCA2ZmY3ZWU4NGQ1YTE1ODM1ZDljNjE0YmM3ZTBhOTdkYjE4NmIzZjZjIGxlZ2FjeS10cnVuaworMjMwOTkgOWU0ZDFhNjMwN2Y2Mzg1NTUyNWIzMGI3MDllMzBmOGYwYzNlM2Q3NCBsZWdhY3ktdHJ1bmsKKzIzMTAwIDdhOTgwYzk4YzhhZWZmZDNmMjJlM2M5MDE3Yzg0MmM3YjQwZmQ5NzUgbGVnYWN5LXRydW5rCisyMzEwMSA2NjJlMjJmOTk2MzlmNTA3NGUyYzg0ZTg0NGNlMjljYWZhODBkMzEyIGxlZ2FjeS10cnVuaworMjMxMDIgYzVjMjQxYmVmODhkM2IwNjZmNGI4ZmExZmEwOTdjMmMyZDA4OTViNCBsZWdhY3ktdHJ1bmsKKzIzMTAzIDhhZjc0ZjAzNThhYzM5YTliY2QwOTViMDFiNGE2MmU0Mjk0NmU1MjcgbGVnYWN5LXRydW5rCisyMzEwNCBiZjAyMDJkYWM0NDE3MTYwYmViNzU1MWZlN2VmZDI0OWRmMjRiNmM4IGxlZ2FjeS10cnVuaworMjMxMDUgMmI1ODFmNGM2OWI0ZjIwOTRlM2YxMGUyMzhmMzE3MjRlMjNiZjkwMCBsZWdhY3ktdHJ1bmsKKzIzMTA2IGYzZjY5NDExMWVhMDgxNjBiNDdhMzYxMjRkOTFlOGIwOGQ5MzlkMzAgbGVnYWN5LXRydW5rCisyMzEwNyA1ZTc5YmVkMzQyNmY5M2RmMzM2ZmQ2YTc3ZWUwZDE5YTkwNzkxYTkwIGxlZ2FjeS10cnVuaworMjMxMDggOTgzMDMyM2Y1ZjhlYjJlNThiYTZlYTVhNjc4YmQ2MzM5MzI3MzNhMCBsZWdhY3ktdHJ1bmsKKzIzMTA5IDQzZWQ4YTM0NWY0ZDgzMzkxZDM4NWU1Y2Q3ZjI4ZjM3MDRjOWM3MGMgbGVnYWN5LXRydW5rCisyMzExMCA1NTY4YjMyMDkxNGY2ZGI5NTc0MjMwN2Y4MzcyMTMzYmU0MTBlM2U3IGxlZ2FjeS10cnVuaworMjMxMTEgNDE0MTNjNzgzODM2NzkzNzM5NjIwZTZkOGZhZWFkMzQyYmEwZTc3OSBsZWdhY3ktdHJ1bmsKKzIzMTEyIDlhNWJiZjg0NWM2MzNlYzdhMWU2NWM1OGNlZjE2MWExMGM0NDc4Y2QgbGVnYWN5LXRydW5rCisyMzExMyA4NzNiZThlMzQ2MmJlZTY3YmFiNTNjN2Y4YmY4MjllYzE1OGNhNTZlIGxlZ2FjeS10cnVuaworMjMxMTQgNTg3MWUwYWEwMjFiODUwY2NkOWVjOWRjY2ExOWIxMjM2MTBhNmU2MCBsZWdhY3ktdHJ1bmsKKzIzMTE1IDJhODA5YjNkMDNlOTRiZmY2MDY2ZDNkMmE2ZWU3YzljYmExMzk4MzkgbGVnYWN5LXRydW5rCisyMzExNiBkOTk3MGQ2MzE4NzgwYjk4OGY1MzU0ZTM5MGFhZjkwZDIwNzBjN2U4IGxlZ2FjeS10cnVuaworMjMxMTcgMzZjYTE2ZGMzNWI5ZDk5OWRmMDRhY2VhMzAxNTc4MGI1MzE2MjQwZiBsZWdhY3ktdHJ1bmsKKzIzMTE4IDY3NjI5OGMwYzc2Mjk2MzQ4ODc4YzBmZTA3MmZkNGNkMTUwOGMxM2MgbGVnYWN5LXRydW5rCisyMzExOSAzMDQ2NTJmZmM2YWM2MDM1NGY5ZGM3M2ExMzNlNDgwODA0MWM1ODE1IGxlZ2FjeS10cnVuaworMjMxMjAgZjJhMzAwOWI1MjhlOTNlNWMwNjNjYTU0NmUyZTc1YTNiYjg4ZGU2MiBsZWdhY3ktdHJ1bmsKKzIzMTIxIGEzNDk5MWI5MTAwODYxOWNiYzdlMDVmMDViYjhlZjBiYmY4MjA0YzAgbGVnYWN5LXRydW5rCisyMzEyMiA1NzgwNzI0NDcwZWViNGU3YTBiZDc3ZTFlMDNmNmJiMDFlNDIxZTZkIGxlZ2FjeS10cnVuaworMjMxMjMgYWY5ODI4MmU5Mjc3YjdjZGNhODYxOWI3NjljYjllNmY0YTQ4OTRiNiBsZWdhY3ktdHJ1bmsKKzIzMTI0IGRmNDkzNjQ2ZWM0ZGNkOWU4NmIxMzNlMjNhOTg2YTBmNzA4NjViNTMgbGVnYWN5LXRydW5rCisyMzEyNSBlOTFiOTkxMzg5ODVhZTk1MTU4ZmI4YTQxMzFlZmY4NDBlYjY5NjU4IGxlZ2FjeS10cnVuaworMjMxMjYgMTgwODZjOTEzZWQ1YzUxMzFiMjRhZTA5MzI2ZWZjOTRiZDhlNDhlYiBsZWdhY3ktdHJ1bmsKKzIzMTI3IDUxMzYzMzQ4ZGNmYWI3YjAyZjdkMGY0NGJiNzM1NTUwZDg1NjBiZmUgbGVnYWN5LXRydW5rCisyMzEyOCBhMTllZWE0MTY2OGZjZmZhMDBlZjEyYmI0MDgwNWNiN2JiMTkxMTNjIGxlZ2FjeS10cnVuaworMjMxMjkgZWQzZTUyOWZiZTQ3OTFjOGFiZTlkNDJmODA2NTZiODg1MzgzYzQ1NCBsZWdhY3ktdHJ1bmsKKzIzMTMwIDcwYmRmODQ4NjJhZDFjYjMzNDNmOGY1M2E0NDRlYjg2N2JmY2Y2MmYgbGVnYWN5LXRydW5rCisyMzEzMSBiODdjMDU4NjI4MTU1OTY3MmVjNGRiODk3ZWE4NTVmMjY0OGFlMDhkIGxlZ2FjeS10cnVuaworMjMxMzIgNjJkMzFlYzQzZGY2NjM0OTdkNDJjOGQ3M2IxZjFmMWUyNmIwOTQ5ZiBsZWdhY3ktdHJ1bmsKKzIzMTMzIGNjMTQ2ZWU1Mjg5NzViNTI3M2FjZDg2YzFmNTdmMDg1NWQ1YWMwNGIgbGVnYWN5LXRydW5rCisyMzEzNCBiYzUwNTgxYjNkN2NkZTI3OGZkY2MwNTBjYmJiYmFmYTFlZjZmMzk2IGxlZ2FjeS10cnVuaworMjMxMzUgZDFjZDRjZDcyMjcxZTA3YTc1N2ZmOTAwNGQ0ODAwZGY0YTNlYmQyYSBsZWdhY3ktdHJ1bmsKKzIzMTM2IDE2ZTRkMDk2Zjc4N2QxYTk1MjQ4OTJiYjkxZjE0N2EzNGRjYzU0MWEgbGVnYWN5LXRydW5rCisyMzEzNyA5NmY1M2Y4ODMxZWVlNGQyOTA5ZjY4ZjhiODY3MjM1YmM2YTVhOTZlIGxlZ2FjeS10cnVuaworMjMxMzggYzhmZWNlMzdmMDIwYjBlOTYyNjIzZjI4OTAxZGU5YzM2MTlmOTQxMyBsZWdhY3ktdHJ1bmsKKzIzMTM5IGRmNjZiNGRkMGIwZGJiNDQ4OGJhY2Y2YTNmNmJhNzdhMGQ3ZjZjODUgbGVnYWN5LXRydW5rCisyMzE0MCA3MmU2ZWI2NTMzMTIwN2I4MTZlM2ViYTViMDgyYjQ0OTE0NDJhZjUyIGxlZ2FjeS10cnVuaworMjMxNDEgM2IwZGExM2FjZTQ4NTcyMmVkMmU0Njg5MTUwYTAyMmM2YWQ0N2UyMSBsZWdhY3ktdHJ1bmsKKzIzMTQyIGIyOGZjOGMzNmUzZGU3OGY3ZTE1MTE5M2M4OTA0NDRiM2JlZDFjMzUgbGVnYWN5LXRydW5rCisyMzE0MyAyZGE2NmNlN2VlMjI5NTE3NDcyMDkzNDEzMTJjOTY0ZTE1ZDliYmM0IGxlZ2FjeS10cnVuaworMjMxNDQgNzMzMzE0ZmNmZGFhMGE5NWVmNmJiNzhkN2ZlZWQyNDgyYzJlZmY3OSBsZWdhY3ktdHJ1bmsKKzIzMTQ1IDMxZmU4YjNlMjc2YmFhZGU0NTAxZjc1ZDU4ZjA3Yjg0Y2Q4MTBhYTQgbGVnYWN5LXRydW5rCisyMzE0NiBjMzNhODU1YzEyNzQ1ZjgyYTljOGQ1MmRjZjhkOWJmMjcyZGUyODAwIGxlZ2FjeS10cnVuaworMjMxNDcgZTkxM2Q3NTcxM2U2NDMyNTE3MzlhZDYyMWI4NjY0NTVhMGZlYTBjYiBsZWdhY3ktdHJ1bmsKKzIzMTQ4IDNhZjAwNjUwMzY3OGE3YzRlYTYyNTVhYjA1ZjVlZTIzNDU2OTBmMDkgbGVnYWN5LXRydW5rCisyMzE0OSA1MWNjODI2MDVkMzJkYjdiMTQyZjU1MzY2ZTkxZGU2YjFkYTQxZmVmIGxlZ2FjeS10cnVuaworMjMxNTAgMWM0MWZiZDA5ZDkzYTY4NjExYzIwZWNhN2IwOGQ0NzhjYzAwNjdjMCBsZWdhY3ktdHJ1bmsKKzIzMTUxIDA0OTFlYTYxMWJjNGI3NzNjMWJiOWZjYTViNTBjZmM2MDNmZGE1ZTcgbGVnYWN5LXRydW5rCisyMzE1MiA4NDM3NjM1NmZmODkwZTkwMjc5MjBkZDIyNDZmMGQ2ZGRhNGVhZTBlIGxlZ2FjeS10cnVuaworMjMxNTMgZmM0MGQwYjU0MDQzN2U5ODg3MzQyODM2ZTFjMzM5YTJjZmZkNjRkZCBsZWdhY3ktdHJ1bmsKKzIzMTU0IDFmNjE1MjYzMDdjMDBiNjc4OGExYTY5OGJjODlmNDcwODU2OTY4MTUgbGVnYWN5LXRydW5rCisyMzE1NSBmZjM3NzQ3MmVhYzk0MGIyNWRhMTMxMjQ0NjllMjc0YzY4MjgwZjFkIGxlZ2FjeS10cnVuaworMjMxNTYgMDc4MThjYmNkMzAyNjg4Y2ExMjQxNzU2ZmM5OWVmN2MxOWVlZTZjYSBsZWdhY3ktdHJ1bmsKKzIzMTU3IGRlMzk5NTZiNTQ1ODA0MzY1ZjE2MjRhNTJlNTJkMjdiNDlkMTI4ZDEgbGVnYWN5LXRydW5rCisyMzE1OCBjMDgyOTcxODIzY2U5MTMwODhhMTk4ZGY5YThlYmMxOWQ1Y2Q2OGE0IGxlZ2FjeS10cnVuaworMjMxNTkgNThkNTAwOTRiZjgwODQ3NDAxMWY4Yjc0ZGQzODE5YTg2MzlhYTc5MSBsZWdhY3ktdHJ1bmsKKzIzMTYwIGE3YmEwMGUzYjBkZTJmZDRiZGM3MjlkMzAzNTNlZGJlYzdmMTViYmYgbGVnYWN5LXRydW5rCisyMzE2MSBmMzlhOWJlN2M5YWY3NDY4NWM0MTFlYTU3ODMyOTIzYTBjYTdmYmNkIGxlZ2FjeS10cnVuaworMjMxNjIgZDY4Y2ZkODVlNmRiOWI1ZmJiYzgzMmY2ZDJjNTMxYTBjOTczM2JiMSBsZWdhY3ktdHJ1bmsKKzIzMTYzIGQ1N2E2YzgxMzY1OGNjMDMwMGY1ZjRkMzY5YWVlNzAzZDNjZWQ1YjYgbGVnYWN5LXRydW5rCisyMzE2NCBhMjg4YTU1ZjkyOTE1MWJiYWQ1ZWEyZTZhOGY0NjQzMGU2YTc3ODAzIGxlZ2FjeS10cnVuaworMjMxNjUgNDliN2UzOTgwODUzYmMyZDU1MzQ3YzFiY2Q3ZTZkYTJhYzFiODU0MyBsZWdhY3ktdHJ1bmsKKzIzMTY2IGNiYTQ0OWFiNTkxNTc5Yzk0ZmNkMmQ3YzBiNWZhNzdmNTk2ZDM2ODIgbGVnYWN5LXRydW5rCisyMzE2NyA3MWM4NTNkZWRiMDcyOTFkZWYwYmNlOGM0NjBhZmMyNDY4ODc3MjNjIGxlZ2FjeS10cnVuaworMjMxNjggY2EwZjU0ZGFjZGQ4YzQ1ZmU1ZmJkMGM2MDA4NGVlMGIwNGVlZDkzNyBsZWdhY3ktdHJ1bmsKKzIzMTY5IDIwMjdkYzEyNGVkZGFkYmM5ZTgwNGVjNmNmMGEyZjY0MjZjZjJlOWYgbGVnYWN5LXRydW5rCisyMzE3MCAyMjYzY2I0M2VhYWJiZWEwY2ZkNWViMWNlMzEyNTQ3YmI2ZTIyNjEzIGxlZ2FjeS10cnVuaworMjMxNzEgMWI1NWQ3OWM2OWQ1ZmUwNDlkMzUzYTc1MzAzM2FkYWMxYTZmNDYxYSBsZWdhY3ktdHJ1bmsKKzIzMTcyIDI5NGEzOGExOWI1YTk3ZWU1YWFkZTFiODRjZWRiZjA5NTQ1Yjk2N2EgbGVnYWN5LXRydW5rCisyMzE3MyBkOTZjZGJiNGQyN2JjMWUxNWM3YjVmZGY4YmVmOTY3ZDgzZGJhYTEwIGxlZ2FjeS10cnVuaworMjMxNzQgOGU0ZDM1YmM2NzNmZmFkOWRiM2MyYjk3NGI4NzgzZDllMWUxZGZiZiBsZWdhY3ktdHJ1bmsKKzIzMTc1IDYzOTMwMTU5Y2EzYzcyYThiOGY0NDNmMzQzOTczZmFhOGMyMjAwNTcgbGVnYWN5LXRydW5rCisyMzE3NiAxNmY2NGQ3ZGE4ZTMyMWMyMWRhMDc1NmZiZDdkMTA2NWUzMjk0NTBkIGxlZ2FjeS10cnVuaworMjMxNzcgOTdjZjZkY2QwYWVkMjdhNmJkZmJlYTJhZWZlYTE4ODQ2M2JkNDNjNyBsZWdhY3ktdHJ1bmsKKzIzMTc4IGNiMzVkMGY3MDRkZTBiNzBiMDZiMWJiZmUxMDEyYjAzY2M2MWNlMjYgbGVnYWN5LXRydW5rCisyMzE3OSAwMWY2NmY1ZGIzMjYxODUzMTgyZGM0Zjk4ZTk4MmU3MjQ2YmJkODI4IGxlZ2FjeS10cnVuaworMjMxODAgZGY0MDk4NDRiNjU5NzkzZjM2OWZhYWRiODVhY2E5NjhlNjkzZGQ0MSBsZWdhY3ktdHJ1bmsKKzIzMTgxIGNlNDE0YTZkMzBiNDZlODM2ZWNlNjYxZDI5NzMwMGI0ODBmNDc0NzIgbGVnYWN5LXRydW5rCisyMzE4MiAyODk0NDU4ODc3YzgyOTkzNzEyOTA5MWEyYjU0NjMwNzdjYmM1M2RhIGxlZ2FjeS10cnVuaworMjMxODMgNjA0NmU5NTQ2YTcwMmI2MTUzMjM2MWE5MWM2ZmNjOTc0YzA0OTZkNSBsZWdhY3ktdHJ1bmsKKzIzMTg0IDliYzc2ZTM2YmE1N2VjOGY1YTNmYmNjMzE0OGRmZTNiODUyMmYxYjEgbGVnYWN5LXRydW5rCisyMzE4NSAzNmMwN2ExNzE4ZTk4OTI5OGU2MGQ4ZjBmNDU3ZThhYWI1N2UzNzliIGxlZ2FjeS10cnVuaworMjMxODYgYzMyN2E4YWM5ZjJiNWZkMTAwZjA1ZmE0MjYwYWU3ZDgyODVkYWJlZCBsZWdhY3ktdHJ1bmsKKzIzMTg3IDYyMWVkMTM0NDVkZTU1Zjc5YTdhMTAxNzk2YjlkMjNhNTllYWRhZDAgbGVnYWN5LXRydW5rCisyMzE4OCBiNmNmMmYyN2U0NGZhYTUzZGFlZDI1MzM5ZDI0MzA3ZDdiZDQ3OTA1IGxlZ2FjeS10cnVuaworMjMxODkgZjJmMjVhNzM4ZjdmMDkzYjQ0YzUyOTJkNTc2OTY2ZGNlOGJjYzk3MSBsZWdhY3ktdHJ1bmsKKzIzMTkwIDYxOWEyZDZiNWVhOTIxOWQxNzY0MTUyZTNjNTZhMWU5OWY2MDUyOGYgbGVnYWN5LXRydW5rCisyMzE5MSA2OTQ0ZjViOWRlMDNkYjllODYwYThiOTFjOGQ0N2RhOTEzZDdkZGVmIGxlZ2FjeS10cnVuaworMjMxOTIgODk2ZjJkMWUyZjQ2ZDc2YzE3MzQzMzM0MTlkOTk0M2E5Y2ZmMjQxYyBsZWdhY3ktdHJ1bmsKKzIzMTkzIGZkN2E3ZjgzMjI1OGQ3YTk3MjM4YTljMzM4MmQ0ZTE2YmM1ZDA4OWMgbGVnYWN5LXRydW5rCisyMzE5NCBhYWNhNGQzY2Y2MmI2NzViZTA3MGM2NzdhMjMwZjg0MTQzODNmOGRlIGxlZ2FjeS10cnVuaworMjMxOTUgM2JmNjIyYmMyNzkyMTgxOTNkZjE4ODE3MTU1NDU2OTNhMDIwZTU2MCBsZWdhY3ktdHJ1bmsKKzIzMTk2IDBkNTM1Yzg2YmU1ZjUyZjBhODQxMWM4ZGMxYTlhMTkyMmZhNGVjYzMgbGVnYWN5LXRydW5rCisyMzE5NyA4NTIyYjAyMmY4MGEyOTM1ZjY2MDJhYzBlODQ2M2JjNTUyZWRiOWVkIGxlZ2FjeS10cnVuaworMjMxOTggNjc3M2RjZmUzNGEzNjkxZjU4MGYxOWUyNjI1MjJjNGVmYzFiNmE1MiBsZWdhY3ktdHJ1bmsKKzIzMTk5IGQ5NDBhZjUyNTg0MDhlZDQ4ZDBiZDlmYzI0M2EzMzAzYzlhZjczYTEgbGVnYWN5LXRydW5rCisyMzIwMCBiZTRiYWFmYTRjNTI4ZDA2MjM1NjRlM2VhNzU0NTkwZTFmZjliNmU3IGxlZ2FjeS10cnVuaworMjMyMDEgNDE3OTliNzBhOTZjMWUzY2MxMTllYTkzM2M2MmY5YTUwOGQ5MWI1OSBsZWdhY3ktdHJ1bmsKKzIzMjAyIDNmMTkyMjk5MDkwMzQ5MjQwY2EzMmRhMDljY2ZhYzQ1ODdjMTU3MDAgbGVnYWN5LXRydW5rCisyMzIwMyBlYWYxMjAzYjg1Y2ZkMDg0ZTAyN2JiNGU0YTlhN2Y4YjkzZTZmNGE0IGxlZ2FjeS10cnVuaworMjMyMDQgMDRjZTJhNDhjMGE4MzFhODRiMWEyMmI1NjA5OWU4NGIwNmFkMWI4NiBsZWdhY3ktdHJ1bmsKKzIzMjA1IDc2MTMzYTQ2NWUwMzk2ZjQ4Y2RmM2NjOTVkMmM1NDYyNjc1ZmIyNWMgbGVnYWN5LXRydW5rCisyMzIwNiA3ODk0NmE3ODQzNTEyMDJkMDUyZDJmYWIzOWJmNGZjYThkNTJjNjMyIGxlZ2FjeS10cnVuaworMjMyMDcgOTZjNGEzZjA4ZGNlMjRkYmRmNWY3MDUxZTE5OTAwY2JmZWU5OGJmMSBsZWdhY3ktdHJ1bmsKKzIzMjA4IDBmOWRmNTYzYjY1ZGU0ZTE0ODIyMzFhM2U0ZDQ4NGJiMTdlMjE2MWUgbGVnYWN5LXRydW5rCisyMzIwOSA4NGFmMWRkMDExZWUzM2Y3YWNkZjlkZTY2NjVlZGQwODcyYjc3OTE3IGxlZ2FjeS10cnVuaworMjMyMTAgZjM2YTJkNDBhMWRmNjhhZjM0MjIzMzE3MTEwNDZhN2M4NGZmMjMzMiBsZWdhY3ktdHJ1bmsKKzIzMjExIDMzNjY5Yzg5MTRiNGFlMTIzYzNjOTU4NDI3YTkwZDljYmY1NDE0NTEgbGVnYWN5LXRydW5rCisyMzIxMiA5MDk4YTMwOGE1N2IwNzhjYTAyNjc0M2E1NzBiNzI5OWI4YTViYzA4IGxlZ2FjeS10cnVuaworMjMyMTMgNjA4MWQ3MzYxNjdiMGU2OTNmMDViMzc5ZWZjMDc1ZjZkMDE1NTExYiBsZWdhY3ktdHJ1bmsKKzIzMjE0IDAzZjNhYjBjNzI4NmRjYTFhZWJkMTM2YWRhN2I2NGQxN2Q0MjhiNjUgbGVnYWN5LXRydW5rCisyMzIxNSBjYWUzZmYzMWJkOTEyYzE0MzdkYWI0NmM4MjEzYThjM2I1OWY4M2ZjIGxlZ2FjeS10cnVuaworMjMyMTYgMDgzNzRhODUyNmUyMTAzZmQ2YzBiNmNkNDIwYjIwZDIxZGMwN2EyZSBsZWdhY3ktdHJ1bmsKKzIzMjE3IGNjNTJiMDVhYzk3OTU0NDJhNzQ3N2RmODFjZGY4MTFjMzVhOGMxN2UgbGVnYWN5LXRydW5rCisyMzIxOCA5NjllMzA2YjYyZmRlOWJkYTY3ODQ4NjM3MGI5M2M3NTE4MjBhZmY0IGxlZ2FjeS10cnVuaworMjMyMTkgNDNlNWZkNTRmOGM5OGQ5YTdkZjVmMjllNWQ2ZDkzZGQ4Y2Y4NjhlZSBsZWdhY3ktdHJ1bmsKKzIzMjIwIDgxNzc0NWU1YWRmYjM3NmQxNjU3MThjZDRiOGMyNDFkZTE5ODg2ZTEgbGVnYWN5LXRydW5rCisyMzIyMSA0ODY4OTM0NmU4YmJkNjY3MDJiNGIxNzRjNmUxNGMzNWE1MmUzMDIxIGxlZ2FjeS10cnVuaworMjMyMjIgMGI1MWU2MDdmMzMzN2Y5NDU3MDI0NGQ5NjlhZDU1NWY4M2YxNDMxNCBsZWdhY3ktdHJ1bmsKKzIzMjIzIGU5MTI4ZWE0NWNkYTgyM2U3NzhlNTkwMjA1MTYwOTQwNWU0ZjFjZDcgbGVnYWN5LXRydW5rCisyMzIyNCBiMTQwOGEyOGQ4YmUyYjZmMTY3ODllMzFjNTE5NDJiNDVjZjM2YjUyIGxlZ2FjeS10cnVuaworMjMyMjUgZjc2MWNhYjI4YzFjMTBmNDk1ZTlkMTMyNmZmYWI5YjNiZjhlZmE3MCBsZWdhY3ktdHJ1bmsKKzIzMjI2IGQ0Yzk2NTMxNjYxMDRmNjlkZmU0YjM3MWMxNDE4MmNhNDIwMGVhODYgbGVnYWN5LXRydW5rCisyMzIyNyAyMGFkZmVjNjE0NjdkNWJjNGRjMmEyM2Y3MjM3ODVhYTAyMWExYzI3IGxlZ2FjeS10cnVuaworMjMyMjggMDVmNmIwOTg5OTUzMmE2NjE3YjU2Y2MyOWI5ZGQwZDJhZWI5Yjk4YyBsZWdhY3ktdHJ1bmsKKzIzMjI5IDhlZGM0NGJkMGFjN2YxNDNhMzkwN2U1M2Y4NThkMDAyYjY2M2M4YjQgbGVnYWN5LXRydW5rCisyMzIzMCA0ZTQ0NWEzZTA3YzZiNTM1OGI5ZmUxZmY4ZWJmNDJmMmIyNDRhMjNmIGxlZ2FjeS10cnVuaworMjMyMzEgZGEwMDE4OGQ1MjcwOWFmNjg5YTM1M2Q5MDlmZWMxMzIyODk1NGU5ZSBsZWdhY3ktdHJ1bmsKKzIzMjMyIDYzMTNmYTM4ZTkwZWFkYTM0ZDY0MDkyMjk3ODBhOTcxZWJhZGZiZmUgbGVnYWN5LXRydW5rCisyMzIzMyBhOTYwZTY3MzA3N2ZjNWIyODM1NWUzMWYxZjU0MmFmNzJhZmJjOGY3IGxlZ2FjeS10cnVuaworMjMyMzQgOGRjZmFmMGU2NTU5YmI2ZGNiNDFiYTY5NGNiODJiMmFiZWM2MDg5NCBsZWdhY3ktdHJ1bmsKKzIzMjM1IDlhYjZhZjY4MTVhZmNiNmRhMDYwNWNmZWJjOGM4YjA5MmQ5ZTEzOGQgbGVnYWN5LXRydW5rCisyMzIzNiAwZmQ5NTIwMGFiNmVjNGQ3YTA0OTE2MmY1MzI5NDQyZjFkMDVkMjgyIGxlZ2FjeS10cnVuaworMjMyMzcgYmY0YjFiMDhhMmM2ZjIyOWE5OGZkY2I4MzcyZDI4M2JjYjk5ODdkYyBsZWdhY3ktdHJ1bmsKKzIzMjM4IGQ1NjQ2YzBjNTEzMGNjMmY5MmRlMDcxYWMxMzhiOGJlODc4MzY5YWMgbGVnYWN5LXRydW5rCisyMzIzOSA5ODgxMmQyMjEwNzUxODA2Y2U3MmY2MzYyODMxMjEwNGJiZTE0YWIxIGxlZ2FjeS10cnVuaworMjMyNDAgNzEyYWZkYWUxMTIzOTRjMGE5ODlmMGYxNGE1Y2M5NThjOTA4ZDI3OCBsZWdhY3ktdHJ1bmsKKzIzMjQxIGY0MmY4OWI1YjhmOWJiNDZhMmM0NWIxNTBmM2ZhMzkyYjRjMmI4YmUgbGVnYWN5LXRydW5rCisyMzI0MiBkYjE2ZTI2YTA3MWI4MzQzYzM5YjkwNGM5ZTkxYzBlMjYxOTFhMjQ0IGxlZ2FjeS10cnVuaworMjMyNDMgZmNiODc3MDY5ZmFhNzExNzMyYzA5YmYyMDgzODBlMjc4NGYyZjU4MiBsZWdhY3ktdHJ1bmsKKzIzMjQ0IGNlYzllMjVhZjEyMWIxNjU3MWY4MTA3YjEyMjNkNzIyY2IxYzFkZTYgbGVnYWN5LXRydW5rCisyMzI0NSBmZmExYTg3YWM0M2E4ODZlZjI1NDgyMjAyMzU4NmE5NWI4ZDAxMTFmIGxlZ2FjeS10cnVuaworMjMyNDYgODcxMzRjN2YyYmM3N2I4MzY0NTRiNmQ2YTk3MzkxNzkyMTM1NzFlZCBsZWdhY3ktdHJ1bmsKKzIzMjQ3IDlkN2NhNTkxNGQxY2ViNTYzYjUwYjgzZGVmNzg0NzhlNTI2NWE4MTMgbGVnYWN5LXRydW5rCisyMzI0OCAyOGVmMjJhMjU5OGU1YWEzMWIxN2ViZTVhMmU0N2JkMGI2ZTZiZGYzIGxlZ2FjeS10cnVuaworMjMyNDkgYWI2YzE0ODIyZGUxYmY2NWVjMTBkYzBlNzY2YmVjN2ZhMTYxMjg3MSBsZWdhY3ktdHJ1bmsKKzIzMjUwIGIwN2NiNTFkNzMxYzg3MTE1YTE2MjE1NzBmM2M5ZjgxY2NjNjgyZmQgbGVnYWN5LXRydW5rCisyMzI1MSA2NDZlMjQ3Mjg4NTIzYjhlYzkwYTBhNzRlMjlmMjI3YzJiMWRmMDRhIGxlZ2FjeS10cnVuaworMjMyNTIgOTQxYzI4Njg2MDM5Njg0ZjAyMThjNzkwNDdiNGZiMDNhODZiYTNjOSBsZWdhY3ktdHJ1bmsKKzIzMjUzIDhhMGM5NzQ1M2RmNDgzNWQyZmJjZmJhMzI0ZDkyMjgyNjk3ZTExYTEgbGVnYWN5LXRydW5rCisyMzI1NCAxZjRlMjYyN2I2MjcwMTFkNDNiMTAyNDNmY2ExZjY3MDZkNDQ1ODU5IGxlZ2FjeS10cnVuaworMjMyNTUgMzRhZjE5ZGNlZjU5M2YxY2FkMGU2N2U5OTMzZTkzNGY4MTMyNTZjMiBsZWdhY3ktdHJ1bmsKKzIzMjU2IDdmZmUyNzZhNjg1NGM4MzIyN2QyNGQ1ODAzYmYxZDFiZjYyYTYzMDIgbGVnYWN5LXRydW5rCisyMzI1NyBiMGFmYjY5MTM0MDFhYTc0YWViYzk2MmFjYmE1ZjA4NzViZjFjNTY2IGxlZ2FjeS10cnVuaworMjMyNTggYzdjYWY3OWY1MTQzM2Q4NmJjNGI5NTE4YmVkMGZmZDQ0ZTY0YWYyZCBsZWdhY3ktdHJ1bmsKKzIzMjU5IDM4MTVjOGFkMDJkMDMzNDA5MWUyMDdhODZkMDk5ZDZiYmZhMjcxMjEgbGVnYWN5LXRydW5rCisyMzI2MCA5YzhiMTk2MTUwMzQxMzQzNTYwNGZhYzJlNDY3NmU3ZmM4NGRmZTg0IGxlZ2FjeS10cnVuaworMjMyNjEgMmE3YjRkNDQ2MGQzZWJlODZiMmQ5M2VkMWY5Nzc4MDBhM2Y1NGY2ZSBsZWdhY3ktdHJ1bmsKKzIzMjYyIDU2ZmZlZTFlZWVlYzRmOTkwZGExMmZlYTRiZjEzOWI3YjkwNzIwZmEgbGVnYWN5LXRydW5rCisyMzI2MyBlZDE4ZDQ0MzlmMDg0ZjI5ZWQ5NjJhOGI5MDIxYTY5ZDU5ODU4ZDdmIGxlZ2FjeS10cnVuaworMjMyNjQgMGZlMzE4YTc4OTkwNDE0OWZjMDI4NTVhMmM5MjM3ODRiNjNhZDk4MCBsZWdhY3ktdHJ1bmsKKzIzMjY1IGQwM2MxOWRiMzA5NDc3YmViNDRlOTNlNWQ3Mjc1ZGVkMGNlMjBhYWQgbGVnYWN5LXRydW5rCisyMzI2NiA3NWI3ZThiZGIyMWVmNjA1NDVjOTZlYTgxYzAzMWY5ZjYxOTkzNWUxIGxlZ2FjeS10cnVuaworMjMyNjcgM2ZhYWJmNTRiOGI4M2QxMjVkZmNlY2Q1YmE5NzUyNDA2YzA0YmYzMyBsZWdhY3ktdHJ1bmsKKzIzMjY4IGUzMTg0ZTQ2MzAzYjU0OTgyOWRlNjgwYTU1NjIxZGM4MDhkMDNkYjUgbGVnYWN5LXRydW5rCisyMzI2OSBmMDIwZGE3ODFiOTE1Y2M2YWJhM2RhNjczMDQyY2JmNmIzZjFjMDViIGxlZ2FjeS10cnVuaworMjMyNzAgY2E3YWYyYTVkOTE1YjljNjRmM2EzMzhlNTk0Mjk0OGYzZmExNTU5MyBsZWdhY3ktdHJ1bmsKKzIzMjcxIDcxODk1ZGQyNjhlMmQwNjM4NDc4NjE1ZmI3OTZiYjYwYzg5N2RmZjEgbGVnYWN5LXRydW5rCisyMzI3MiAwODQ0NmE5ODZhNTYyZDJhYTkwZWYzNTllMTk3NTBkNTdhNGFhNGYwIGxlZ2FjeS10cnVuaworMjMyNzMgOGFhMWFkYTMzZjY0ZTIwMjdiYzRjOTkzMGYyNjRjZmFmMWQ1NmZiMSBsZWdhY3ktdHJ1bmsKKzIzMjc0IDBmZDEyZjkyY2U4ZjBjNjBjNjU3MmNlZjAyMDc0NThjMDc3NmMyNDMgbGVnYWN5LXRydW5rCisyMzI3NSBiNzBjMDg4MTNiYTk3YzI0YWEwNzMwYTNkMGU2OTY0YTE1MTMyMTEyIGxlZ2FjeS10cnVuaworMjMyNzYgNDBjYzY2MjFlZGRjYTA3MjFiZDE5OWU3ZTc5ZGUyZjRmY2E4NGJlNSBsZWdhY3ktdHJ1bmsKKzIzMjc3IDEwOWRlZjRhNWY2ZTk4NTJhNjIyMWIyM2Q1YTk2NThlYzc2YmM3OWEgbGVnYWN5LXRydW5rCisyMzI3OCA3MjlmZGYwNDU0OTQxZTk2MGI5MjNkOWI3ZWFmYjgwNThmMTk1NWMzIGxlZ2FjeS10cnVuaworMjMyNzkgNGY3NDcxNDJlODRjODM5OTI2MGEzMzljZDg1MzkwMThjMDMzYzc4NCBsZWdhY3ktdHJ1bmsKKzIzMjgwIGI3ZWM5ODVkODVjNjE5NmUyMjBiNTIwNDNmZmU2Y2QxMzFmYWY5M2EgbGVnYWN5LXRydW5rCisyMzI4MSA3YzVjZDY4NWMxZGUwMmQ5NzVmMzllMGNlNzRhY2Q3YTFhZWIyNGY3IGxlZ2FjeS10cnVuaworMjMyODIgZTYzZjk3NTYyYTYyOTE0MTZmZWJiNGQ0YzA4YWMwMGFkZTk3NzRlOCBsZWdhY3ktdHJ1bmsKKzIzMjgzIGRmMWI4M2ZkMGViYmRiYjdhZGFmN2QwOWNlMmU2YmY5YTBiZDgzYTkgbGVnYWN5LXRydW5rCisyMzI4NCA0YmJiNGQ5YjRkNzc2NDFkMGQ1OWE5MmNjY2EyOGFmZmNlN2YxZWVhIGxlZ2FjeS10cnVuaworMjMyODUgNjM3OGNiMTE3YjczYmIzMmFlOWQ1MGQ5YzQ1MDRkMjkyYmE1MDVmMSBsZWdhY3ktdHJ1bmsKKzIzMjg2IGU1YTNmOWQ3NzY2YjdkMGY0Yjk0MDFlYzZjNzg4YWY1YzNiYWRlMmUgbGVnYWN5LXRydW5rCisyMzI4NyA1YzlhOTU1ZWYxN2NkYTExNzMwMTJjZGU2MjllMTcxYTNmMTRhOTJiIGxlZ2FjeS10cnVuaworMjMyODggMTA0YjVjOWI4OGVhZTk3ZGRiOGM1OTE2MjM5NGUyMTY5OThlOGM1ZiBsZWdhY3ktdHJ1bmsKKzIzMjg5IDA2MmFjOWFhZmU0N2I4MzBiMzQ5YTRiY2M1ODE5Nzg4MmFiN2EyYTIgbGVnYWN5LXRydW5rCisyMzI5MCAwOTk2ZjA3ZDA0YTNhY2YwZDYwYzE0ZTA1ZmI3ODQxYjExOGI4MGVlIGxlZ2FjeS10cnVuaworMjMyOTEgYWI2MmQxNDdiYTkwZjM1OTc1Mzg4OGQzNTc1M2YyZTE2ZjJjMzJkZiBsZWdhY3ktdHJ1bmsKKzIzMjkyIGU1MjFmYzM3MGJlMjA1MGY0NTNhNmExZTk4MGJkNDQ3MGUwMGRmNGEgbGVnYWN5LXRydW5rCisyMzI5MyA4YTZmMmVlNmVhYmEzMWE0Y2E0NjhhZDdmNGEyYTFhNzJhYjRlOWEzIGxlZ2FjeS10cnVuaworMjMyOTQgM2E0YTAwMzllZGYzMmJmNjkyNThkOWQwZjk5ZGQ1MjlkMmVkNzI2NyBsZWdhY3ktdHJ1bmsKKzIzMjk1IDU5ODgyZTdhYWI4OWM5MTI0NDBkZDdiMTUwOWQzNzJjNzRhZWQxM2IgbGVnYWN5LXRydW5rCisyMzI5NiBjZDcyYjY0YWVjOTc4OWNlZGZlN2YwNzI5ZWU0MTI0NGYxZmVkMmQyIGxlZ2FjeS10cnVuaworMjMyOTcgZTA4ZjQyM2Y5MTY1YzA1Y2VlZDM0MDMxNjkxYTRkMWJjNjU2OWRhYSBsZWdhY3ktdHJ1bmsKKzIzMjk4IDY2YmIxMGVlNDk2MTJiOTE2MGRiN2Q5YWFiMjVhZTU3Mjg1ZWFmNjQgbGVnYWN5LXRydW5rCisyMzI5OSAxOTI5ZmM2OTZhMDQ4NDFjM2Q2MWRlZjk5ZjkwNzVkYjZhZmVjNWVkIGxlZ2FjeS10cnVuaworMjMzMDAgN2I4YzExNzM5NzE0ZDI3MDA2NDZmNjNjYjJiN2MwMWFlZWYwMzMxMSBsZWdhY3ktdHJ1bmsKKzIzMzAxIDliODE4YWYwZDczMGU5YmMwYTU3NjhiYmU4Y2FjNWMyNGVhODY2NjQgbGVnYWN5LXRydW5rCisyMzMwMiA0YzVjZDNkMWNmNGI1YmMzYzgxZDI3Y2JlOWE4ZmU4NTc1N2VhZDMyIGxlZ2FjeS10cnVuaworMjMzMDMgNjMxMDgzN2NhNTM0MzkxNzdhYTQ2N2ZmOTA0YmVhYjQ3YzkzM2EzYiBsZWdhY3ktdHJ1bmsKKzIzMzA0IDFhNThjNzQ2NjJlOTNkNjRkODY2OWU2N2UzYjI2MzJiMzUyZGU4MDQgbGVnYWN5LXRydW5rCisyMzMwNSA2ZTkzYTE1ODY4MDBhNzlhNWVmNmIwZmQ0YjdiOThiOGFiOTAwMGIzIGxlZ2FjeS10cnVuaworMjMzMDYgNDk2NmNmNzkzYjQ0YzA2MjM5NmY5Y2IyMzFjZjljNjI3OGU2MjVjZCBsZWdhY3ktdHJ1bmsKKzIzMzA3IDBlZTg5MDNkM2ZlZDAxNzEyN2NkMTQyYjg2MjBhMWY4NGJiYWQyZTggbGVnYWN5LXRydW5rCisyMzMwOCBiZmQ0ZTAzYWQyMTJkMjQ5ZGY0OTdmZGY1ZjgxZmUxZWNmNWVhZmQzIGxlZ2FjeS10cnVuaworMjMzMDkgOTIwYzYzY2ZjYTBjZGUzMjgyYWQ1ZmRiZWM1NmRlYzQwYzQ4YzZlMSBsZWdhY3ktdHJ1bmsKKzIzMzEwIDg4YTAzZWE1NzcxNGY4ZjE1NWRmYTdlNjI0MWUyZWEwZTIzMWIwOWYgbGVnYWN5LXRydW5rCisyMzMxMSAzM2VkYzk5ODYxYjkwZDRkM2Y1YTQxMDRhOGYzMWVmYjM3YWM3YjJjIGxlZ2FjeS10cnVuaworMjMzMTIgNWIxYWQ3YWNhYmI1YmM1NGNlZGQ5NDRmODI4NjVlZTc0MmZjZmI1NSBsZWdhY3ktdHJ1bmsKKzIzMzEzIGMyYmYwYjEzMzgwZTMwNGYwZDY2MDk3NjllOTQ2ODNmNTJhNDkzZjMgbGVnYWN5LXRydW5rCisyMzMxNCBkMmQ4MzViMzVkNDc1ZTViNzVkMmY0YTMxMDZkZjBjNGQxYzU1M2VkIGxlZ2FjeS10cnVuaworMjMzMTUgY2NlYzAyYmZlOWEwNThmNjQ0OTY4ZWFkYWM1ODY2YTU2MGJlNjBiMCBsZWdhY3ktdHJ1bmsKKzIzMzE2IDJjYWRkYjgyZmZlYTJmNTNiYjk4YWYzNTQ3NGVhNmQ1ZjUwNWU0OWQgbGVnYWN5LXRydW5rCisyMzMxNyA2MzkwMTM5YWQwODI1ZGNiMWRhZGI3MmVjYmMxMzUyYjY5NGEyZWFjIGxlZ2FjeS10cnVuaworMjMzMTggOWE1OTliMWQ5ZDFjODRhNzc3OGNlZGU1NzMyZDE0YzliYzE4OTJhNCBsZWdhY3ktdHJ1bmsKKzIzMzE5IGVmMzAzNGE2MGEzZWMyZWYyOWRiYjIwZTQzMDNhNDI1ZmJlYWVhMTMgbGVnYWN5LXRydW5rCisyMzMyMCBmODQ2OTFiMTE0MDI3YTlhOTkxOTcyYmQ3M2I5OGQyYjQxNDc3MzFlIGxlZ2FjeS10cnVuaworMjMzMjEgMTRjODNjZjdmMzM4MmUyZmMwZjBiMTk1MGU1NjliNWNjODliZDc1NCBsZWdhY3ktdHJ1bmsKKzIzMzIyIDI5OWY1ZmNiMGJhODBlY2RkNmQwYmE2ZWRjYzY2OTBhYWU2YjMzYzAgbGVnYWN5LXRydW5rCisyMzMyMyA2OWU4MjA2MjRjYmMzMTZhMzllMTg5NWUwZWQwYTNkOWQ5ZGEzODEzIGxlZ2FjeS10cnVuaworMjMzMjQgOTBhNGYyM2FiZGE3ZGNmMDYyZDFlMzVjYTQxMjJlM2NhZTU0YzgwMCBsZWdhY3ktdHJ1bmsKKzIzMzI1IDkzOTc3ZjE3NTUyZDU4ZTgzOTNjZWMwMDM2N2VkOTQwY2MwZjZkNjQgbGVnYWN5LXRydW5rCisyMzMyNiBlMDFkZThiYzU4MTM3NzhhZjhjNTc2YzlmZjJhMzIwYWEwYjdhNjcwIGxlZ2FjeS10cnVuaworMjMzMjcgMzk5ZDc3N2FmMDQ4NTEyNjdkZDA3MDQ0ZTIwYTFiMzlhYjk1ZjBjMSBsZWdhY3ktdHJ1bmsKKzIzMzI4IGQ4YWJmOWNlMzIyNTMyNTY3OWNjMzg0N2FkZWM5Y2NkMjFkMzhlZjkgbGVnYWN5LXRydW5rCisyMzMyOSA1MTE3NzZkNmQ3ZDg2ODVhODZhNDI5NzE1MGJlMzA2YWE5NGEwZmIwIGxlZ2FjeS10cnVuaworMjMzMzAgYWFlNWNmN2U1ODYxNWM0N2NiMTVmYzg1OGQ3MWJkNGEzZDczMjc3MiBsZWdhY3ktdHJ1bmsKKzIzMzMxIGQ5MjUwZDViNzlhNzU5MjZjYjFiNjUyMjZiYzNkYzg2MTBhNTYzMmIgbGVnYWN5LXRydW5rCisyMzMzMiA4ZjE5YjJhOGM2M2M2Nzc5NzBkMjc0OTY3YzBkMjE1MmQ4MmIzNDRjIGxlZ2FjeS10cnVuaworMjMzMzMgMDA0Y2RlZmI3MGQxZjlkYmNmMmQyOTU3ZDI0OWU2Y2YyM2E1N2U0NiBsZWdhY3ktdHJ1bmsKKzIzMzM0IDkyOThmZWU0NDZiNzc0MGFkM2ZjNmNhZjM0ODA5MGVkY2Q0OGYxYTcgbGVnYWN5LXRydW5rCisyMzMzNSBmNDhhNDFjOTcwMjE1Njk0MjI1YTI5NjVhNDliZTFjZWI1Y2NjZDJjIGxlZ2FjeS10cnVuaworMjMzMzYgNDM5N2ZhNTE1MmZhNDE2NjgxYjY1MjZlMWFmYzIzMzU2ZjY1ZjZkMCBsZWdhY3ktdHJ1bmsKKzIzMzM3IDE4ZGYzMmY2Y2VhMTNlM2UyN2ZkZjRkYTE0Y2YwMDIyNmU0ZWE3ZmMgbGVnYWN5LXRydW5rCisyMzMzOCBmZGZjMThkNTU2MTUzMDg5ZDExZTUwOWRiYTM3OGI3M2ZiMWZmYjkyIGxlZ2FjeS10cnVuaworMjMzMzkgNDhlOTNlZjNjNWI3MGI4ZTQ0M2I3ZDBjZTYxNmQwN2IxODUxNTA1NyBsZWdhY3ktdHJ1bmsKKzIzMzQwIDMxOTJhMzJmZDQ4ZjZjNGM5ODliZDE3MGE0MjBjZTVmZTkwMzE4MjAgbGVnYWN5LXRydW5rCisyMzM0MSBkYWQ5NGNhNDdlMjEzOTE0ZTQxMWFkNDUyOTljZmM3ZTdmZjUyNzhmIGxlZ2FjeS10cnVuaworMjMzNDIgYjQxNjFjZTU4NWU2NGNhMWM5ZDIxZWQxYWI5YWE0ZDgyZmVlY2U4NCBsZWdhY3ktdHJ1bmsKKzIzMzQzIDM4NmZiMjZlMDg3NDdlYmY1NWVmMjBiZWI4ZGFmNDJlNWVjYzI3MTggbGVnYWN5LXRydW5rCisyMzM0NCAzNzE5YmE1ZWU4NDQ2YTZkZDIzMWRlYTdlNGVmNTNhYWMwYzE3NDRjIGxlZ2FjeS10cnVuaworMjMzNDUgOTMzYmY2OGUyNjUwM2E4YzJiMzZjMTgyM2MxYzc3ZWMyZDdhN2ZmYSBsZWdhY3ktdHJ1bmsKKzIzMzQ2IDQwZDRkMWNkNmM4NGE0MTYxNjZmNmNlMjk5OGQ0ZTRhM2UzNjQwZmMgbGVnYWN5LXRydW5rCisyMzM0NyBiNTJhNjMwNTIzMDY4NjliMmY1ZjU2OWQ0OTI1YTU1MTYzZjMyOGRmIGxlZ2FjeS10cnVuaworMjMzNDggYjI4YzA3YTFiNDBkZjk5ZTUxMzMyM2MyZTJiZWNmNzc4YTc0YTBmYiBsZWdhY3ktdHJ1bmsKKzIzMzQ5IGQ2NThhMTVhOTBhZDk1OTI4NmE2MjcyZWY4MDVkNjBhZTFjYmYzOTcgbGVnYWN5LXRydW5rCisyMzM1MCAyODljMWE3MDAyODY0Yjk1YzNmNTllY2EzNDYwZjIxNTM0OTZiNzQ5IGxlZ2FjeS10cnVuaworMjMzNTEgMTlhYmMzMzlkM2ZjZjJmMWJhOTJkYTMwMjczOTZjNzcwMTc5ZWMxOSBsZWdhY3ktdHJ1bmsKKzIzMzUyIGEzODFhYjBmOWQyODNiYmFiMjY2Yzg4ODRjYTFhMzM2MTM5NWEyYjkgbGVnYWN5LXRydW5rCisyMzM1MyA1NmJkZDkwYzlmZDZkZDg2NjZmNzQyNzNhOGIwMDI1YmI0MTM5N2MyIGxlZ2FjeS10cnVuaworMjMzNTQgODE5YjZmZjdlNTZhNmI1ZmM2MDE4NDZmYWEyZTUzN2RjN2YzOGE3OCBsZWdhY3ktdHJ1bmsKKzIzMzU1IDJhNjhjNmUxZjljNTRhOWRhYWMyNjdkN2RjOTcxNWQ2NjkxYmY0NzcgbGVnYWN5LXRydW5rCisyMzM1NiBhYjFhZjFjYTAzMGM1YzViYzQwZGE0YjBiYmNmMGI0ZTFmYWI3MzllIGxlZ2FjeS10cnVuaworMjMzNTcgNjAwOWQ4NTlmYjU3M2VjYjBiYWYyYzBkOGZmZjZlMjM5MzY1NGE3NiBsZWdhY3ktdHJ1bmsKKzIzMzU4IGQxOTEwMjIzYjI0N2RmM2QzMDFlMzM4Y2VjMWRjNmU3YTQ4ZmQwYWUgbGVnYWN5LXRydW5rCisyMzM1OSA4YTE2MTRjZWIzNzc3ZWMwYmFlMGM1YTE5NGJkYjdhOWFmNmYyNTYzIGxlZ2FjeS10cnVuaworMjMzNjAgM2RmNGI4Y2RiOGM2ODc5YzBiZWJkMDA3YTgxMzAyODdkZTBhZDIyZSBsZWdhY3ktdHJ1bmsKKzIzMzYxIDhmMjVlYzAxMDE4YjVhODY1ZDY1NzQ5NDVlMjZiNWZkNWY0NjE3YzcgbGVnYWN5LXRydW5rCisyMzM2MiA4MzIxNmNhNjdlYmVhMWIzNDBlZjYzNzc0MjRmY2QwZDM5ZmU1MDNiIGxlZ2FjeS10cnVuaworMjMzNjMgMzM0YmYwYmFlZWI3ZWI5MWEwZTU5NTY0MzFmNmYzZGU4NDNlMWE1OCBsZWdhY3ktdHJ1bmsKKzIzMzY0IGQ3ZDg0ZWFlOTJiYTBhMTI5YjE2NzExMzQ5ODYxNGY3ZTk0YTEzZDUgbGVnYWN5LXRydW5rCisyMzM2NSBiZWZhNzI1OGMyMDBmMzhlODllMTVhM2VlNmY1NWNiMGM4YzY0NDc2IGxlZ2FjeS10cnVuaworMjMzNjYgODBlMzZkYWIyMTExN2E0NDBiMWZkN2E5Mzg0MmYzNTI2OThkMmM3ZSBsZWdhY3ktdHJ1bmsKKzIzMzY3IGU4YTI5ZDIzYzcwYThkM2NiY2ZiMDAzMjNjYWQyZTdkNjBmZWVlNjcgbGVnYWN5LXRydW5rCisyMzM2OCAxMmE3ODdmYjcxZGYzNTI2ZTAxODdlZmRiYzM3ODM5ZDIyMjE1YTU4IGxlZ2FjeS10cnVuaworMjMzNjkgMjMzZjk2MDZiYThlMjRlMDMyMTc0ZjE3ODBiOTNkMTFhNTE4ZDViNiBsZWdhY3ktdHJ1bmsKKzIzMzcwIDhlYzk1Y2U3ODczNTgzNjZhYmJmZWRiYzZiNzZkMmQ0MjQzYWU3MGEgbGVnYWN5LXRydW5rCisyMzM3MSA1NTg3NGQ4ZTBkZmJhOGEwZDZjYTU4YTJmNWM2NjBjMTNiOTFmZDFhIGxlZ2FjeS10cnVuaworMjMzNzIgZTAyNmY1MTdmNjU1YjQ1MDk2MDJkZDAwNzI4Mjg1ZTYyMzQyNzE1OSBsZWdhY3ktdHJ1bmsKKzIzMzczIDhjMzcxNDM1ZjY5M2MwZmJlNmQ4ZmE4NzQ3ZGI5ZWM5NzNlZDBlOTQgbGVnYWN5LXRydW5rCisyMzM3NCBiOWY2MGI4MjUyNjFhMGY5NWQ2MzA4NDA2MzNmZWEyYmI0Y2EwNTNiIGxlZ2FjeS10cnVuaworMjMzNzUgMDE3NmY2MWFmODQ1ZDRjOGNmMmJkMmE1MGY0OTQ3MGRjZGQwNTRjZSBsZWdhY3ktdHJ1bmsKKzIzMzc2IGY4MjJiMzU2YzNkOWRmYTgwYTViNmRiNDk0NmE3NzNmMzNjNWUwMjIgbGVnYWN5LXRydW5rCisyMzM3NyAwOTgxODY2MTNiMDU3ZDgxY2FhMGVmODQzZjUxZDgyODk0ZjYxMGI1IGxlZ2FjeS10cnVuaworMjMzNzggYWVkNjIxMThkNjMyZTg4ZDM1YmJmNmQyNzc2YzQ0Yzc0OTExNGZlMyBsZWdhY3ktdHJ1bmsKKzIzMzc5IDljMmI5Yjc2YTA4ZTNlY2Q5OTY4MjZjZjRmZDhlN2Q1YWQxYzE3MGMgbGVnYWN5LXRydW5rCisyMzM4MCAzYmNkYjUxOWFiZjg4MTEyOTI5ZDIwZjYyNjQ3ODc5YjBmZTRiYmI5IGxlZ2FjeS10cnVuaworMjMzODEgM2ZiMjkzZmExN2M1NDY4NDg5ZmVhY2IzYjYyNzkwYjNhMDM3YmU5OCBsZWdhY3ktdHJ1bmsKKzIzMzgyIDY5NzIwNmU3NDc2MzliMThhYTk0YTc4ZGVlODBiNTA2ODUwNTZiY2EgbGVnYWN5LXRydW5rCisyMzM4MyBmZGZjZmZjMjE1MmM2MGVhYjYyMzdlZWViYWZhNWVlMTNhMTk5OWZiIGxlZ2FjeS10cnVuaworMjMzODQgZTNhMmU2MDc2YmM1MjY1MGEwMmI3YWFkMTgwMmJmNzE2ODczYzVlYiBsZWdhY3ktdHJ1bmsKKzIzMzg1IDczZmJjYzk1ODI5NWYzOTU2OWUzYjUwNTNiMDk1NjEwZmUzZDQxMGYgbGVnYWN5LXRydW5rCisyMzM4NiBhMjc2YWU1ZmU4YzMwMjliMmQyOThlNzkxMTY3MDhmOGY0MTZjZmJiIGxlZ2FjeS10cnVuaworMjMzODcgYmEzNzE0MTkxYTdhMmYzZWViZGEyYjdhMDQxYTRhNGRjMDVjZDU2NyBsZWdhY3ktdHJ1bmsKKzIzMzg4IDQ0MWIyZTE1NTgyNmMxOGVmNzI2OTAzYTQ2ZTZiNGNhNjNhMGFjNzggbGVnYWN5LXRydW5rCisyMzM5MCBjZTI3ZDljMGMzNTgyMzE1NGFlZTlhZDZjYWZiNzE2NzU1ZWFiNzQxIHIyMmE0LWJyYW5jaAorMjMzOTEgYzI3ODJjMzVlNzJkNzQ1YjM1ZmMzZjBjOWJiODliNjc3MzZhODYxYiByMjJhNC1icmFuY2gKKzIzMzkyIDNhYWM5MTZjMTUwNWM3ZGI3NmY4ZGIwNmExNTkwODMxYzNhMWU5ZjcgbGVnYWN5LXRydW5rCisyMzM5MyBhOTdmYmM1YjE4YjZmYzExYzk4MGM0OGQyNzZiYzBiYjgyYTE1YTNlIGxlZ2FjeS10cnVuaworMjMzOTQgZmNjMjE2YzU4Yzg3ZmEyYzYyMDE1YWMzNjI4MDIyMDdjYWQwOTYxNyBsZWdhY3ktdHJ1bmsKKzIzMzk1IDcyN2I5NWRkODY4ODYxMTVhMTVjYjk1MjlmNjU3ZGEzYzFjYjQ1ODcgcjIyYTQtYnJhbmNoCisyMzM5NiAxYzUyOTEyODA1NGM4YzIwY2UxYTU5Y2QyOTJhOTljMDhlM2I5NzgxIGxlZ2FjeS10cnVuaworMjMzOTcgODMyNTZiZWYwZDc1ZTMxMzVlNDg3MTRhNjlkNjY3ZmU1ZjAyMWFkNiBsZWdhY3ktdHJ1bmsKKzIzMzk4IDcwZTU3Zjc1OTQwMjdkMjhmOGZjZDQ0YWIxNTE4ZWE2NjkzM2RiNWMgbGVnYWN5LXRydW5rCisyMzM5OSBlYzJkNGY5OWJhZGM0YjcxM2NkMWViMjFjNmJlMTA4OGM0ZjJiMjZmIHIyMmE0LWJyYW5jaAorMjM0MDAgNjg5MDA3MTg3N2RjODYwY2RkOTYzYTRkYTc0NWUxYWU4Zjk5YWE4ZiByMjJhNC1icmFuY2gKKzIzNDAxIDIyNWYxN2VjODkzMjNhOGIxN2I4OTUwY2U5OTFjNDRiOWVhYzVlYTAgbGVnYWN5LXRydW5rCisyMzQwMiA5NTYwZjg2YzRmYTRhN2YzMGQzNDkzN2M2NjM3MWJjNDdkMjQ5YWM1IHIyMmE0LWJyYW5jaAorMjM0MDMgY2E5NWJjZTVhMzNlZmZmN2I4YjNjYThhZjUzNTYxODJhMTg4MjA3MyBsZWdhY3ktdHJ1bmsKKzIzNDA0IGJkZTlkZWI1OWQxYmMwOTU3MzFlYjdiZDZiNzllYzU5Nzk0MTAzY2EgcjIyYTQtYnJhbmNoCisyMzQwNCAyYWM2YzMyZmMyMDZkZjkxNGRjMmY5ZDQ1NmU3OWM1OTY1MzcyOGI2IHIyMmE0LWJyYW5jaAorMjM0MDYgODllNWYxMGM5Zjk5NDAwZjI4NzBlZDg3MGI4NmI5M2E0M2Y1Y2I3MCBsZWdhY3ktdHJ1bmsKKzIzNDA3IGI5NGJjN2VjN2JlODUxZWJlZjRkZjM0NDRmYzI5ZWY1Njc2NGZmZTMgbGVnYWN5LXRydW5rCisyMzQwOCBlNzhjOGY0ZTJiOGM5NDM1NTMzMDRlMmJmMmIxZGJjN2EzNWQwYTEyIGxlZ2FjeS10cnVuaworMjM0MDkgYzZmYzg3ODEwNTUxNDNjMDQzZWQzZjllY2YzZGQ1MDNkYTU5MzI2ZiBsZWdhY3ktdHJ1bmsKKzIzNDEwIGI1Y2M1ODZhYzI1YWVkMGQ4MmYwNjAxZDVjOWEwYTIyY2IyNTNmYTcgbGVnYWN5LXRydW5rCisyMzQxMSA4OGRhMzhhNWYwYmY1YTg1MjYyZjY0ZmZhZmNjNzJkMGM0YTY3NDJjIGxlZ2FjeS10cnVuaworMjM0MTIgMjA2YjI1ZmViZGUzY2VhMDAwNDQ0NWUyNmViYzU1ZmIwNzM3ODVjNiBsZWdhY3ktdHJ1bmsKKzIzNDEzIDFmNGQ5OWU3YjFlNzU0OTljYzM1M2JlNWE4ZGM3MWY5ZWJhZGEzOTQgbGVnYWN5LXRydW5rCisyMzQxNCA1NzA3ZGE5MDA5MzYyOWJmZjZiMWJmZmZmZjUxNzMwYTMxMTUzNzJkIGxlZ2FjeS10cnVuaworMjM0MTUgYzhmYjAwZjVlYjVlNWRhOGU5YjQwOWQ5NTBjNGNlN2ZkZDhmZjBjOSBsZWdhY3ktdHJ1bmsKKzIzNDE2IDcyYTUzNDdkMmY5YWQ5OWU4ZDkwNGQwNDg4NTYzZjNjZDgxYTQ1M2IgbGVnYWN5LXRydW5rCisyMzQxNyBjNjhlZjQ3YjE3MDlkYWU2NmRhM2FjZmRjNzUzZTI1NmVjY2FkOTlhIGxlZ2FjeS10cnVuaworMjM0MTggZDVkMDAwODYyYTY2OWE5ODQ2NDYwYzdlMTIwMzcxZDUxMTc5MmIxMSBsZWdhY3ktdHJ1bmsKKzIzNDE5IGJiYjM1M2QzMWUyNTQyNWM4ZWNkNmEzNGM0YjBkYWFhMGFhMTIwMWIgbGVnYWN5LXRydW5rCisyMzQyMCA0MTZmMGJjMjI4ZThiOTQ1OTc5ZDg5NDE1YjY4Njk3ZDFhMWVkNGM4IGxlZ2FjeS10cnVuaworMjM0MjEgOGJhMzI4NzE4M2UwNWJlMWFkNjE4OWI5MjljMDBmZmI4NzVmNmQ4ZCBsZWdhY3ktdHJ1bmsKKzIzNDIyIDJjOGE1YTE3MmY0N2JiMzVhODVhMTBkNDVkYTgyYWQ0YWFlNTIzZDIgbGVnYWN5LXRydW5rCisyMzQyMyA2ZmY1MzE0MzViMzRkYzcxOTg0ZmFkZTAyMTc1OGQyMjJjNzE2ZGM2IGxlZ2FjeS10cnVuaworMjM0MjQgYmVhNjg2NDQ5NTk1NjM1NDgyYjA0YmJlYjhmYTQ2OGNiMzI0NDcxNiBsZWdhY3ktdHJ1bmsKKzIzNDI1IGVkYjBiODA1ZTU0OTg4OTBhYjAwYWE1MmY0MGFhOWU5M2Q5ZTlmZWEgbGVnYWN5LXRydW5rCisyMzQyNiAzYjM1NmY3NzkyMmQ4ZGI1ZDEzMzgzZTczZDAxZjY5NjA2NjM4OGE5IGxlZ2FjeS10cnVuaworMjM0MjcgNDcwYzFjNzJhMGE3YTVmMGI5YmEwNDkwYTRiYTQ0N2MzNjM2MTRiMSBsZWdhY3ktdHJ1bmsKKzIzNDI4IDViNGY3MzIxZDljYmY4MWI2YmQ0NTFhNjVhYWNhZTk0ZTY0MmUzOGEgbGVnYWN5LXRydW5rCisyMzQyOSBkYjgyYzBiNDBkZmM0MGZlZTFiZWRkYjVmZGUzNmY2MTI2ZjgyOGQ5IGxlZ2FjeS10cnVuaworMjM0MzAgNjUwOGFkYmQwYmIxYmIyNjYzNzRkN2I0OTcyMzg3YzdlNWQyNjEyNyBsZWdhY3ktdHJ1bmsKKzIzNDMxIDAwNmNmYWFjMDI5YTc2ODRiYzdiYjE4OTM0NjQxZDllZjI2ZjU2MGYgbGVnYWN5LXRydW5rCisyMzQzMiAwOTFlOWUzY2VlYWYwN2I0MjlmYjE1MTFjNGVlY2E1MDUxMzQ0Y2YzIGxlZ2FjeS10cnVuaworMjM0MzMgYWJkNmEwOGIyYzMyNzFhZmQ4ZjA0NGIyMTkyNzJkMzQyMGE3NzBmZSBsZWdhY3ktdHJ1bmsKKzIzNDM0IDVmYjA2OTFmYjY5MDM5MWUzN2MyMTdjMTlhOWIxMjQyMDMwZDA2NGUgbGVnYWN5LXRydW5rCisyMzQzNSA4MzEwNjYzM2Y5MzMzNGY1NzI4Njc0YTdlMzhkMmJmOTIxNDMyOWM0IGxlZ2FjeS10cnVuaworMjM0MzYgZGUzZTg1MTgxOGE0MzI3ZmI5OWNkMGM1ZjNiN2Y5MTE3MDNkNWQyNiBsZWdhY3ktdHJ1bmsKKzIzNDM3IGYxMDA3OTNjYTlhZmM3MGZjM2ZiOTgwYjgxYjkyODY0MWVkNDNjNWYgbGVnYWN5LXRydW5rCisyMzQzOCA4Zjc5ZmE1MzdiZDI0YjMwYTM4YzE5NzVjYTY5MDVkNjM2NjY2Zjk3IGxlZ2FjeS10cnVuaworMjM0MzkgZmVmMjg5ZDY2ZThlMTU4MjMxMjlhN2M3NzVlNDU1ZmJlYjNmMzUyNiBsZWdhY3ktdHJ1bmsKKzIzNDQwIDc1NGI4MTYyODRkMTM4ZWVjZjY3ODdjY2JhZjgzZDc5NDYxNWY0MWQgbGVnYWN5LXRydW5rCisyMzQ0MSA4Nzk5ZGZhMGY3NmFjNDdjNTEyYWY5YzJlNWRiZmMwMmRkNTk2Y2YyIGxlZ2FjeS10cnVuaworMjM0NDIgMDFhNWM0M2YxODk0Y2RmMWMxMzZmOTc3NjU3OTMzMDk3ZWJkYTVkOSBsZWdhY3ktdHJ1bmsKKzIzNDQzIDVlY2MwMmMxZWRhYzNhYzY3OTYwZGI5YzA2ZWUzZGZlNjM3ZTQzMDMgbGVnYWN5LXRydW5rCisyMzQ0NCA3ODRlMjFiZGQ5YTJmOWRkYTM0ZmU2YzM2MjEyMDYzNTNmN2EyZTdmIGxlZ2FjeS10cnVuaworMjM0NDUgOWRlMjkxNjk0YjFlMWJkMWNmY2NkZWE3YjJjZWU2MDBlOGM4OGUzMSBsZWdhY3ktdHJ1bmsKKzIzNDQ2IDZkNzNiNTRkOTIwNTIwMTRlMjMxYmE5NzljYjM5YjY1MzU1MDczOTggbGVnYWN5LXRydW5rCisyMzQ0NyBjNmI2MTg5YTgzOTc2MDhjNjQyNGRjODQ5ZWIwYzVkZmI5YzQ1ZTUzIGxlZ2FjeS10cnVuaworMjM0NDggNGM2OTIyZjI2NmYwNzk0ZmE4MDE1NTJiOTQwZjc1ZDM1ZjZiNDFkOSBsZWdhY3ktdHJ1bmsKKzIzNDQ5IDhkNzlkYjAxYjJiYTI1ZGI4ZWUxYjkyM2Q5YThhNDUwNzA1MGQ4OTAgbGVnYWN5LXRydW5rCisyMzQ1MCBjNzgxN2I2MDc0YjU4MDQ0Y2E2OGI3YzkzYzFiMDIyNGZlMTkzNzlmIGxlZ2FjeS10cnVuaworMjM0NTEgOGU0ZTQ5MTA1NTk1NGJiZjY3YjA0OGE3Yjc0NTgzZDdlMzE1ZjAzNyBsZWdhY3ktdHJ1bmsKKzIzNDUyIDZkZGE0OThjY2NjNDg1NWEyMmRmMDMyNTJiMzFlNWY2NTk0ODU5NmQgbGVnYWN5LXRydW5rCisyMzQ1MyA1OGI0Y2ZhNTQ4NzE5MWMxZmIyZjgyZjBlOGJhMDE5OTkzZDZiODQ1IGxlZ2FjeS10cnVuaworMjM0NTQgNTY0MmQzN2YxYjE2MWQ1NTUzNTg0N2M5MTMyOTUzMTA0OTQxN2E4OCBsZWdhY3ktdHJ1bmsKKzIzNDU1IGU5NDZjNWQyZmUxNTFmNWIxYjI3NTFkODNiMGE5MGZmOWYzZGZkYzQgbGVnYWN5LXRydW5rCisyMzQ1NiA0OWExM2U2ZTkzNWRiMjk2NmEyNWVkMTAzNDQxN2UwYzY3MTQ4MWFlIGxlZ2FjeS10cnVuaworMjM0NTcgYmU1NDhkNGJlODg4ZjQ3ZWVjODY1OTBjOGJjODIxOTIyY2NmZmUyOCBsZWdhY3ktdHJ1bmsKKzIzNDU4IDIxMDYwMzE4ZjUzOWFmMDk5YWE0YzcxNzYxODI5ODM1NWNmNTdlYjYgbGVnYWN5LXRydW5rCisyMzQ1OSAzNDA4ZDkyOWJiOTQwYWQ2MTBkMmI2OTRkNjZjNzkzOTAzNTAxNTM1IGxlZ2FjeS10cnVuaworMjM0NjAgNmRlNGVlNDc3OTQ5ZjhkNzg2Mzc0MWYzOTQxODUyYzIwMzEzMDRkNiBsZWdhY3ktdHJ1bmsKKzIzNDYxIGI0ZjBmMTBhNmM1ZjRkMzcyMTI1MThjNjJmMmFhNDI1M2Q4ZGFkM2EgbGVnYWN5LXRydW5rCisyMzQ2MiA1NzhjMWJiNzI4Mzk5MjU2NTk2NGEwOGIxZTRjODk2MmY4NTczNzk0IGxlZ2FjeS10cnVuaworMjM0NjMgNzJlZTU3MzQ3YWVhNjUzMzQxYWM2Zjc1YzczYTEyZTFiOWU5ZTc4YyBsZWdhY3ktdHJ1bmsKKzIzNDY0IGY1ZDc5MWMyYWNjOTUwZWViOGVmZWM4NTVmZjIzMTU0YjczMmUxMDEgbGVnYWN5LXRydW5rCisyMzQ2NSA3ZDVhZTdkN2M3YTk2MzZlYWM3YzJiZGQwZWU0YWM0MjJkYzNkNTE4IGxlZ2FjeS10cnVuaworMjM0NjYgZTVjM2NhN2I1MDk5MjRiNWM0NTgyMTcyMDEyZmUzM2JmNTFjZDEzZSBsZWdhY3ktdHJ1bmsKKzIzNDY3IDk4NzNjOTljNDNmNzUzNjc4NzQzYzRjMzM5ZmY2ZWQ4YjY5NzQyMTQgbGVnYWN5LXRydW5rCisyMzQ2OCA4ZTZmNjA0YjA3OTkzN2JhODc0YzE3ZTc1MmRjMmQ4YTIyNmQ2OTM1IGxlZ2FjeS10cnVuaworMjM0NjkgMDAxNTJlNjg3NDVhNTE4ZGZlMmU1MmY2NTg5YzEzNGY0YTc1ZjEyNSBsZWdhY3ktdHJ1bmsKKzIzNDcwIDIwYmE0MmNjYjM2ZjY3NjU0OTJiODg2ODAyZTI0NWFiMzM2OWI0MTcgbGVnYWN5LXRydW5rCisyMzQ3MSBlMmRhOWE5MjlhY2FiNTUyOTBlOWU3NjgyNWJkYzJkNmZjODZmODM1IGxlZ2FjeS10cnVuaworMjM0NzIgYmE1YWFhNmJjMWU1NmI1YmQ3NjExZmRlMDFlOTU2OGQ4MzY3YzNlYiBsZWdhY3ktdHJ1bmsKKzIzNDczIGU3ZWY4ODEzODk0MTlhNjg2NzcwODkyMDIxOWIxN2I0YWY1OGY1MGYgbGVnYWN5LXRydW5rCisyMzQ3NCA2OWI5NDFkMTMxNzY3NTM1Zjg5MWIxMGM5YTAzYWZiYzc3ZTEyZGJmIGxlZ2FjeS10cnVuaworMjM0NzUgYjJmOTU3ZjljNmY0MTNiY2YzOTc5ZjAyMTFjYmE3ZWFlN2Q2Nzg4ZCBsZWdhY3ktdHJ1bmsKKzIzNDc2IGUzZDc1Nzc4NjE5ZTNkYzZiN2VmNjI5YTVmNjU5N2E3M2Y1ZTZiZjcgbGVnYWN5LXRydW5rCisyMzQ3NyBkMDUzNzI2ZmIwMWJkYzY0YWE1OGJhNzQzMDJkOTZmOTNjMWQ4M2M3IGxlZ2FjeS10cnVuaworMjM0NzggOTY5OGI3MWIwMDMxNWFiOWFiNzM4OTViYzRkNjc0MzQyZGI5Y2IxNSBsZWdhY3ktdHJ1bmsKKzIzNDc5IGZhY2UxZWFhNjhjYTliNWFlZWVmZTY4MjY5NTgwMTZjZGE2MDFjNDUgbGVnYWN5LXRydW5rCisyMzQ4MCBhNWEzMzA2NDZjMTMyYWMyZjQzZGU1MGVhYzhhYzNhM2VmMGVlYjhmIGxlZ2FjeS10cnVuaworMjM0ODEgYzBhNmY1Mzc3M2UzNTNjZTkyYTJmYTgxMTM0MjZhNmYzNTBmZWIxOSBsZWdhY3ktdHJ1bmsKKzIzNDgyIGJmNTU3NGY0ZjQxZjc2ZmQ2NGUwYWIzYzFmNzRjY2IwYTE5MmYwY2QgbGVnYWN5LXRydW5rCisyMzQ4MyA1YWNkMmE4MWQ2ZmE3MTQ2NzdhODdlMDIwNTRmMTMxYzE4NWQ1YzczIGxlZ2FjeS10cnVuaworMjM0ODQgMGI5OTE3NGQ2YjE3ODQ1ODc2YmU3ODkzNTVhNzZjZjU0MjM0YzJhNyBsZWdhY3ktdHJ1bmsKKzIzNDg1IGFiYWY5ZWEyZTU2MDcyOTk1MDk2MmM3ZTE3MzdkNGRjZmVjNTVkYWIgbGVnYWN5LXRydW5rCisyMzQ4NiBhNGVmMDNiNWE5Mjg2ZDlkYzkxYjUxMWIwMGQxOWYwODczMGY4NTUwIGxlZ2FjeS10cnVuaworMjM0ODcgYTgxZGIxMjk1YTllMjI3OGVjZmVhMjBiOTc3ZDVjZWRmZmJiMGQ0NSBsZWdhY3ktdHJ1bmsKKzIzNDg4IGQ2ZWFlNjRmZGI1YWMxODYwZjdhZjliNTEzOGFmMDYyYjJjN2IyYzQgbGVnYWN5LXRydW5rCisyMzQ4OSBhYTE4YzBlY2M0ZmI2Nzg0N2VlNDU0NzM5YWM1ZDlkMWI2ZThjYmM0IGxlZ2FjeS10cnVuaworMjM0OTAgYWI1MDQyMDU4YjZmMWVmZWE0MGU2OTUyZDM3ZGQ2NzY1ZWQ5MDhiNCBsZWdhY3ktdHJ1bmsKKzIzNDkxIDkyZjg2NDM2YjZiZTYzM2RhMzBhMzg4ODYwZWQ0YjFmNjIyNGMwMWQgbGVnYWN5LXRydW5rCisyMzQ5MiAxYmVlNDliYzhkOWM1NWVkOWU2MTc1Yzk2MGJjZjdkZjljOWJjYjYxIGxlZ2FjeS10cnVuaworMjM0OTMgOGJhZDU1ZWRmZGYzOTM4MWE2NmFmZmE3Yjc4NGUzMzg1NDQzY2JmMiBsZWdhY3ktdHJ1bmsKKzIzNDk0IDVhMmU3Yzc4ZDQzMzQ1ZWI2YzgyN2M5ZjZkYTc5MTY2NmVkODg3NmQgbGVnYWN5LXRydW5rCisyMzQ5NSA0NjRmOWEwOWE5MTAzOGE5ZGNjODQxMDkxODFjZDA4NDJhYzVjMWIyIGxlZ2FjeS10cnVuaworMjM0OTYgZDQ3ODI0OTRhMWUzYzI5ZWQzMjRlZTU0NjI5YzU0NmQ5OGI2ZWJmMiBsZWdhY3ktdHJ1bmsKKzIzNDk3IDgxMzg2YTcxZWNjZTg2NWM4ODJjN2Q3YTc1MDNjN2M5YWVkYzRmMGUgbGVnYWN5LXRydW5rCisyMzQ5OCA3ZWE2MWRhODc4YWYxMDczZTFlODI1OGQxOTg0OTRlNzZhMzkyMDE1IGxlZ2FjeS10cnVuaworMjM0OTkgYWNmYjI3ODY2MmM2MmMzMjAyMjU5NTA1N2U4MjBlOTQ1ZjFlMzYyNiBsZWdhY3ktdHJ1bmsKKzIzNTAwIDllZTZhOThmMDMyYzMxM2U4ZjA4OWZhNGVlNTUyY2Y3YjhlZjBjOWEgbGVnYWN5LXRydW5rCisyMzUwMSBkMTY3MWRkZWFjZTBiNjQ0MTY2NGZjZGEwODhlOTUxZTFjMTRjNDEyIGxlZ2FjeS10cnVuaworMjM1MDIgZTdhY2EyYTMwMmNkNzEzNDg0NGY5OTFjM2FkNTRiYzBkZmEwM2I1OSBsZWdhY3ktdHJ1bmsKKzIzNTAzIDI3NDVjM2RjMjRhZjI5Y2U0MzA5NmQwNDJiN2JlZGU4ZDBiODBlMWUgbGVnYWN5LXRydW5rCisyMzUwNCA1YzQyNjFlNzQ0NzgwY2YwMDMxMWNhNjgyMWRlZTk4ZTZlZDQyM2VlIGxlZ2FjeS10cnVuaworMjM1MDUgYWZmNmZjZDI2YzE1YzQ3MTMwMWI2ZGE5YzExYWFhNWRjZDk3ZDFmOSBsZWdhY3ktdHJ1bmsKKzIzNTA2IDdjZWRiYWFhMTJlNDc0ZmM1NjgyNzkzMGEzMGFiYjI2M2QxZDlhYzMgbGVnYWN5LXRydW5rCisyMzUwNyAwZTk0MGRhODQ1YmY4Mzc5MDgyYjI0MzYzNTY3YzVjN2Y5MzBiOTU0IGxlZ2FjeS10cnVuaworMjM1MDggMTY2NThkZjg0NTZhNjYyODFiNWZjMGY1NzA3MTJiZjZjOGE5NTg2YiBsZWdhY3ktdHJ1bmsKKzIzNTA5IDcxNjBkNzk1NDczZTkxODNlNzRkZGMxYjI4M2Y5Y2VlZDkxOTBiNDkgbGVnYWN5LXRydW5rCisyMzUxMCBmM2IzZmQ1YWJmYTYxNmRmYTNjNzBlMDM3M2MyODhlYzczNzVhZDIxIGxlZ2FjeS10cnVuaworMjM1MTEgYTRkMzI4ZDUwODk3NTliY2Q4MTg1ZWYyZTUxOWUwNzdkOGY0NjgyYyBsZWdhY3ktdHJ1bmsKKzIzNTEyIDEwYjk3YWU2OTAyNWM2NTRhNzM1YzYzYzM2ODAwZTk5NzNjNjU0OWIgbGVnYWN5LXRydW5rCisyMzUxMyAxYWNlY2M5MDhlZTg2YjRmM2QxMDdjMTllYjdkYzVmODk0MDQ2YjRmIGxlZ2FjeS10cnVuaworMjM1MTQgMWRiNWFhNjc2NWMwMWIxNDVkMWEzYzY5YWE0MzAyNGMzYmQzMGVmZSBsZWdhY3ktdHJ1bmsKKzIzNTE1IGIwY2U5MjU2MWUwNzViZDVhYjM3Mzg1NDA0N2RhZTNiZWRiMmMzZmIgbGVnYWN5LXRydW5rCisyMzUxNiBiODVjZDE2M2NkNWNkMGU3ZDE1NjVmMTY4MDRjM2VkNzhhNDQ2ZjBjIGxlZ2FjeS10cnVuaworMjM1MTcgZDk2Y2QzOGEzZmVjNzI5NDI2MDdkYWMxNDIxY2ZmOGQ5MTI1MTMyZCBsZWdhY3ktdHJ1bmsKKzIzNTE4IGM2OGYzNjQxYmFjZDgyNzIzZDMwYTUxNWE3NGI5ZTc2Y2Y1NjBhOGYgbGVnYWN5LXRydW5rCisyMzUxOSA2NjkyODU1OTIyODg0YjUxYzg4YWJlYjJlMjlhOWRlNWI2NzQ3OTBiIGxlZ2FjeS10cnVuaworMjM1MjAgNmYwMjU2OWNjNDZmZGE1MjE3ZmNiNzc0ZDM3MDQ0MzM2ZGJmZTk1ZiBsZWdhY3ktdHJ1bmsKKzIzNTIxIGUzZjYzYTk1NDU1ZjdjMDI0ODJmOThiZDVmZmZjZjNmY2JlODA3OTggbGVnYWN5LXRydW5rCisyMzUyMiAzMTg1ODk0MDRiOTU3Mjc4MzBiZWI1MzkyYTAyZTc5NDFjOTNjZjdlIGxlZ2FjeS10cnVuaworMjM1MjMgNjE1MmY4MmVhODIzODAzMGRjNTdhYzkwZTQ1NzIwNzRlNDQ4MjI5YSBsZWdhY3ktdHJ1bmsKKzIzNTI0IDFlYTViYmJhYjdkNzcxZGNhOTg5YzY3YTIzZmI4MDY2ZWFhYTM5MTEgbGVnYWN5LXRydW5rCisyMzUyNSA1NmYxNzgxMDUzNGMyZDNiNTU4ZDk4YjgyMGNiNjAzYzljODY1MWExIGxlZ2FjeS10cnVuaworMjM1MjYgZGUyOWM4ZTRkZTliMzE0YTg3NTY0OWY2MWJmMzYyYjVhOTJkMTJkOCBsZWdhY3ktdHJ1bmsKKzIzNTI3IDg3M2Q1ODRjMTIyMTM5MGI5OWYxNWM2YjQ1MDM3MDg0ODVhNWUxYmMgbGVnYWN5LXRydW5rCisyMzUyOCBkMDkyYWJjZjljNGI3NmVmMjgyY2JkYjViYWM3OWVlYTQ1MDAxZTk5IGxlZ2FjeS10cnVuaworMjM1MjkgZTRlNzQ5YzQyZjQ2MTdmZTY0MGVkMTQ2OTJmMTQwMDM3NmU2YTdmMSBsZWdhY3ktdHJ1bmsKKzIzNTMwIDI0MWVmOGE5MjNjNzYzOWEzZjE4N2E1OWVhZThmOTRmODM0OTE4YjIgbGVnYWN5LXRydW5rCisyMzUzMSA1OTM0YWVlYjM5N2YwZWZlNWU5YmJkZjBiMmJkMWU3MDIyYWFkMmFhIGxlZ2FjeS10cnVuaworMjM1MzIgMDUyNTA0NzYxNThhNjU1YTU5MDI0OTlhMmNkNDU4MmZkZDJmZGU1OCBsZWdhY3ktdHJ1bmsKKzIzNTMzIDdlYTA0MDI5ZDFhZWFkN2EyOTMyMTkzYzg3YmZiMmI3MjMyNmRjZjggbGVnYWN5LXRydW5rCisyMzUzNCBjZTRhN2U0YWQ2YzQ4YzlmMDE2ZjRiZWIyMjViYTk4MzIxNWI3ZmVjIGxlZ2FjeS10cnVuaworMjM1MzUgNjEyZTg2YTRjZDlmNmVjM2E1MTQwMjYxZWE0MGRjYjQwZTJlM2YxMiBsZWdhY3ktdHJ1bmsKKzIzNTM2IGYwOTE2YTZkY2VmMjc1ZmZlMmNhNDkwNTcyZmRmMTZkY2M2NTc0OWIgbGVnYWN5LXRydW5rCisyMzUzNyAyMjY5Y2IzNzFlMDVmYzBjYjVjZjRmNTQ4MGRhM2Q3YWI2ODk5N2NhIGxlZ2FjeS10cnVuaworMjM1MzggZDdkOTU2YjQ3ZDI0MmUyYjdlNjBkNDk1ZjliYjIzMWJjMzFhYTgwYiBsZWdhY3ktdHJ1bmsKKzIzNTM5IDE2N2U3Zjk4YjUxZmIzN2QwMTY0MDUwODcwMzU5OTdmMGExMGYxNzcgbGVnYWN5LXRydW5rCisyMzU0MCA2NmE1NmEyMGNmYTNmNmNlMjI2OTUwNTU4N2NlZGUzNTY0NTBmYjNkIGxlZ2FjeS10cnVuaworMjM1NDEgMjk4M2I1NDI1NmM3MjI1ZTYxZGVjYmIyYmQ1ZTU5ZGQyNzRmNTg5OSBsZWdhY3ktdHJ1bmsKKzIzNTQyIGEyNjVkOGJkMmYyNzc3YzFlNTk2ZDMzYjZkOTk0MjQ2MTllNTZiYzggbGVnYWN5LXRydW5rCisyMzU0MyA4YjNlYTczMzVjMWJkYzY1MzIwM2QzMWMwMjUyNDg5YjgxYzQyMmFmIGxlZ2FjeS10cnVuaworMjM1NDQgOTdjZmE0NjFkNzkzZDM1ZGU3OWY1YmE1ZWQ0NjAwZDQ2ZWU0NjVmOCBsZWdhY3ktdHJ1bmsKKzIzNTQ1IDM4MGQ0YjRlZTYwMjQzYzIyM2FlMDVhMjA3ZTFjMzZiNWE1OTRiOWEgbGVnYWN5LXRydW5rCisyMzU0NiBlMzc1MWFmMGYxZGQxNzhjMjQwNTg2MmQxZWY5YTkzYzcxNmY4ZjM1IGxlZ2FjeS10cnVuaworMjM1NDcgMDRmMjk2ZjcxMWRmMDIzYWZkMWYyMWM5MTkxOGZmOTA0MDdkZDY4YyBsZWdhY3ktdHJ1bmsKKzIzNTQ4IGZiNWYxMjExNzAzNjAzNTA5NjI1YWRjMzJmZWQ1NWFmZTYwODU5MDIgbGVnYWN5LXRydW5rCisyMzU0OSBjY2I3YWJjNzE0ZWRkYTdlOTQ5ZDgxMjdiODJmZTdhYTA0ZGQyYzM4IGxlZ2FjeS10cnVuaworMjM1NTAgYzg1M2QyNDZmM2M4ZjcwMDQxMDY1NDcxOWQ1YTI1MWFjMWYyZDhiMSBsZWdhY3ktdHJ1bmsKKzIzNTUxIGY0ODc4MjIzN2Y4NTMyODgwMjdiMjg4NjY3ZmU1ZjhlNmIyNDQ1ZGUgbGVnYWN5LXRydW5rCisyMzU1MiA1Y2NmZTA0NDkyYWM5YjczNDZiZmI0ZjM1YmMwMWZlY2ViZDhhMWVmIGxlZ2FjeS10cnVuaworMjM1NTMgNmU3ZDVhZTI4MDBmYzk0NzQxNDBlYzhiYzgxNjMyYzliY2E5YmJkNSBsZWdhY3ktdHJ1bmsKKzIzNTU0IGFjZDgzNzgyMTZjMzFmMWNjMmI2NjA3YmI3Y2FhMjhlMThmODA3N2EgbGVnYWN5LXRydW5rCisyMzU1NSAxNzhiYTMzZjY3ZTRlOGQxZTQ2N2RlZDRiNzAzNTM5NmZhMzQ5OTA3IGxlZ2FjeS10cnVuaworMjM1NTYgYTQzY2I2YzU5MDcwZjgwZTUwYzY3YjdkOTZmYWFhNThkMTA3NWNhOCBsZWdhY3ktdHJ1bmsKKzIzNTU3IGIyODVkZWNmMDQyMWVjNjY5OTE0MDAzNDkwZjU2NDEwYzIzNGUyYjAgbGVnYWN5LXRydW5rCisyMzU1OCA0MjZiMzc5YTEzOGI0MWI3MWFiNzZhNzVkOWY0MTgzY2QwODc3NWM0IGxlZ2FjeS10cnVuaworMjM1NTkgNWQyZDFlMmVjNDczYjEwMjUwYjE4OTQ1MDRjOTVkYjMxOWIwZjE2YSBsZWdhY3ktdHJ1bmsKKzIzNTYwIDZjYzBiNDgwNDllYzRiNTllYmQ3NWVlZjZjNWJkNjQ2N2E1NGI5OTMgbGVnYWN5LXRydW5rCisyMzU2MSA3OTM5MmFiMmMwMmE5ZTJkZDliZjkzMWZjYTIxNjEwZjY1OWFmZGM0IGxlZ2FjeS10cnVuaworMjM1NjIgNjIxMTY4NGVkOWRkZjA3NzM2MDEyNmFjOTU0M2VjZDc4MjQ5NjRiOCBsZWdhY3ktdHJ1bmsKKzIzNTYzIDQyYjUyNzkzNzQwYzBkZjE3MDVhMWZjMjlkYjM3ODIxMjQ3OTE1Y2IgbGVnYWN5LXRydW5rCisyMzU2NCA4NzRiYjE3MDc0YjBkNGRmOGYzMGNhNjlhZTI1NzAyNTdmNzVlYTFmIGxlZ2FjeS10cnVuaworMjM1NjUgM2IzZWU5NzYzM2MxMWRiMDQ5ZTdhMmZmOWFkYTE3MjRmZjA1NDRmMiBsZWdhY3ktdHJ1bmsKKzIzNTY2IGM1MzQ1YzBhYmQ3MDYxOTMwNjQwNTlhNzZkMjdkZjhiNjMyYzRjNWMgbGVnYWN5LXRydW5rCisyMzU2NyBmYWVjNjljMTE2NDAzNjFhMWFlOGMxOWY3OThlNTQ2ZWQ4MGViNDAzIGxlZ2FjeS10cnVuaworMjM1NjggZTQ0Y2RlZjc5MWVlODQwNTVhODJlNWIxY2NkYjNkZDdjMGJjOGY0NSBsZWdhY3ktdHJ1bmsKKzIzNTY5IDA4Mjk1ZWM1OGVhOTdkZGUxNjViZGU5YmRkZTkzYjVhZTg5ZTJiN2QgbGVnYWN5LXRydW5rCisyMzU3MCAxY2EyMjhlMjFhOTg3YTcyMmYxNDQ2YzgyZWM3OWNmYTZhNGE0NTVkIGxlZ2FjeS10cnVuaworMjM1NzEgYWE2ODEzNDViZmFiMTMzNzNkMmFmMjlhNWFiNDE1NTg2NDNiMzc4MyBsZWdhY3ktdHJ1bmsKKzIzNTcyIGNhMmJjNWNkYWE4ZTllZDIxZDQ2MmUzM2RjYjhlZjVlYjFhYTg5OWQgbGVnYWN5LXRydW5rCisyMzU3MyAzMjZlNWE3MmM2NjAyOGUyYmE3ZDBiMjYyYzU5NGI2NDUyYTkyNGEwIGxlZ2FjeS10cnVuaworMjM1NzQgYjQ0NDdiYjVhYTBlYWRlYzk1NmE5NWI3OTAzZDZhM2YwN2U2OWU0NSBsZWdhY3ktdHJ1bmsKKzIzNTc1IDEyMzUzYjEzMTIyNGM2YWNjODU5OTY2OWNjNGUyZThiNzJiMDc4NzggbGVnYWN5LXRydW5rCisyMzU3NiAzMzkzZDZmODA3ZjVkN2I1YmEzMWVhMWQ5Y2UyOWI5ZjZhMWU0NjJlIGxlZ2FjeS10cnVuaworMjM1NzcgZWExOTEwZDJjNzgxZGQwYTlkZGI4MGI0MzBmYmEyNzM5ZWVkM2Y1ZSBsZWdhY3ktdHJ1bmsKKzIzNTc4IDI4NGVhYmUzYjU1MmNkYTNmY2RkMDY4YTU2NjhmMjgxNjBlOTg4ZjEgbGVnYWN5LXRydW5rCisyMzU3OSA3YjQxZjdhMmU1Mjg1NGYyOWJjY2EwNzhkODI2M2MyOGZmMTUwYjk2IGxlZ2FjeS10cnVuaworMjM1ODAgMmUwNzNiYzcyNjg2OTUxYTJhYTkzNjA5ZTZkNTg2MjMzNjBkYWM2YyBsZWdhY3ktdHJ1bmsKKzIzNTgxIDRlZjdlYjkwYjY5YWM3NGRjN2Y0NjAxOTExZWVmZDY4YjE0ODU2ZTIgbGVnYWN5LXRydW5rCisyMzU4MiBmOWE2NmIyNGJmZmZiYTJlMmY2MDk2OTQwOGE0MGU1MjY0NjUwMTdhIGxlZ2FjeS10cnVuaworMjM1ODMgMTI1MzU1M2ZjM2NjOGVjMmIzMTkwZjRmNDM4M2RlMjc4N2MzMmUzMCBsZWdhY3ktdHJ1bmsKKzIzNTg0IGYyOWI4ZWEwYjY5NTQ0OWNiOGIyYzQ5MDZiODUwMjU4M2JhMzIyYWYgbGVnYWN5LXRydW5rCisyMzU4NSAyNjdjNmZlMGFiYzJlZWI4YjdkYjEyOGRmZTM1OGM0ZGMwNjZjODM3IGxlZ2FjeS10cnVuaworMjM1ODYgNWE5ODgwMTU2ZDcxMjUzN2U1NGFmNjRmY2JiYjFhYzk2ZTJiYTNmZSBsZWdhY3ktdHJ1bmsKKzIzNTg3IGJkYTI3NGRkZTI3ZTEwMjY0YjEwZTUzOGUyMDJhNWFkMTVmYzE2MDEgbGVnYWN5LXRydW5rCisyMzU4OCA0MjlhMDhlMmZjNzgyYzNjNmI2Y2U4OTAyZDE5YWY1ZjhmMjdjNDg0IGxlZ2FjeS10cnVuaworMjM1ODkgODU4NTUzNWU0MDRiY2FiOWRiNGQxNDgzNWQxOTg0NDAzNzljYmJlNiBsZWdhY3ktdHJ1bmsKKzIzNTkwIGIzMmQ2NmE0YjVlNmFkNDJiOGI1NmNjZmE3ZWQ2Yjc5MmZjYTkzYjcgbGVnYWN5LXRydW5rCisyMzU5MSA1NGYwNWI5YjFmYzRiYmJhOTJmNmNmZTk1MGM3ZTg3ODI3ZjBkNjg3IGxlZ2FjeS10cnVuaworMjM1OTIgMjZiNWY4Yjk0ODcyYjdhZmY3MmFkNzQ3MWExNWE5ZmQwNzdlMmQ2OCBsZWdhY3ktdHJ1bmsKKzIzNTkzIGE5NzYzNjc1Yjc0YzdhNWZiZDJiNTQ0N2YwNTM1ZDJhMTQxNTAzZTcgbGVnYWN5LXRydW5rCisyMzU5NCA3OWZiY2ZmZjU3OTcwYmUxNmE5YzNiYzA4YmM0Y2FiZTE4MDU1YTI3IGxlZ2FjeS10cnVuaworMjM1OTUgYzUyNDdhMzY2ZmY1N2JlZDg4OGRkNDk0ZDJkY2VkODdiMjhlNjM1OSBsZWdhY3ktdHJ1bmsKKzIzNTk2IDA0ZmVlNzBmZWQ4ZmVhYjk0YzIzOWQ1YTRmMzdmZTAyMzlmYmJiYjUgbGVnYWN5LXRydW5rCisyMzU5NyA4Njg5NmI1ZjFlYmMyZjgxYjIxMzhhYjRiMGZhZjk3NDdjYzdkMGZiIGxlZ2FjeS10cnVuaworMjM1OTggYzcwYTJiNTdhNGRkMjUxZWFjMjQ1ZjFhNWE2ODk2MzI3MTA3ZTA4ZSBsZWdhY3ktdHJ1bmsKKzIzNTk5IDgzODM3YWM1YmI0MGY0ZDVhNTE0MDg3ODc2NTEzZTRlNzNlYzViNjkgbGVnYWN5LXRydW5rCisyMzYwMCAxYjNmZmRmMTIxNTA5YmY2NDQxNDFkZmI5MDFkNDc4ZWRkYWJiMTViIGxlZ2FjeS10cnVuaworMjM2MDEgNGJmM2ZjZTNmNmNlZGY1ZWJmZTc5MzIyYTZiNmYyZTZhYzQxYmIyMSBsZWdhY3ktdHJ1bmsKKzIzNjAyIDcwOTZlNDRjZDFiZDI5ZWUxMGY5YzVlZThhNmJmYjkzYzZkY2U4Y2YgbGVnYWN5LXRydW5rCisyMzYwMyA4NTIyNmRmOWE1YmU5MWUxNzhhODNjOGI0MWJjYmIyNjE1MTA3Njg0IGxlZ2FjeS10cnVuaworMjM2MDQgNTNhOTU3MmI2MjM3NzdlMDFhNzliZmY2MDdkOGM3NTFkMWVmNmZiOSBsZWdhY3ktdHJ1bmsKKzIzNjA1IDE0ZTBmZTE1MjcxMWZhMjQ2N2RkOTBmMDczN2YwMDQxYWY5NWM4MzAgbGVnYWN5LXRydW5rCisyMzYwNiA0NGJlZDI1NGQ4MzczY2VjZmNmYmMwZDg5OTc0NzNkYTgzNWNhYmEwIGxlZ2FjeS10cnVuaworMjM2MDcgN2JkMTIyNzBkYzNlNzdjZGM5ZjRmOGIyM2IyMjVlNDI2ZDIwNTMyNyBsZWdhY3ktdHJ1bmsKKzIzNjA4IDM2ZDE0ODIxNGQ4ZTI3ZGZmNDI1ODkzNjE2M2Q0MmIxMWExYzVlMGQgbGVnYWN5LXRydW5rCisyMzYwOSA2N2E3YTk5ZjJkNWFjMzhjNjM2ZGJjMDMyYmQ0MTVkNzk3OTE0NDg1IGxlZ2FjeS10cnVuaworMjM2MTAgMzJlMTJmOGQ3NWQ4MzI2YjM0Njc0OTA0OTZkMjg5YzYxOGEyMGNlOSBsZWdhY3ktdHJ1bmsKKzIzNjExIGI3OWZmZDNmY2EyOGM4ZmY1YTlkYThiZWVkZTRlNGUzN2I4NzE1YWQgbGVnYWN5LXRydW5rCisyMzYxMiA0MjVjNmM1NThmYWMxYWE5OWM0NTk1NDhiMDRjZDU5ZDNlMGZjYmY1IGxlZ2FjeS10cnVuaworMjM2MTMgMzNkYWM2MTgxYmU1N2M4ZTkyOGYwMTNiMWVhODVmNTEwZGIwYjIyMyBsZWdhY3ktdHJ1bmsKKzIzNjE0IDBhOTE1YjIyZTAwNmFhMWNiYjAwZWVmZWM5MWQ0MTQxMmRhYTYxZjMgbGVnYWN5LXRydW5rCisyMzYxNSA2NmU3NzU4NWI0YmQ5NTk0Mzc1MjM5MGU5Yjk1ZTUwZDY2NjNkMjE1IGxlZ2FjeS10cnVuaworMjM2MTYgOWU3YTBhZjRjMGEzYjZhNzFjNDc3NGQ4YjU2MjllM2EzYjYxOWE5YSBsZWdhY3ktdHJ1bmsKKzIzNjE3IGQxYzdiM2VkZTQ4MTU5MjYyMDI0ZDZkZjJmOGIwNTVmMjBmZDU3OWQgbGVnYWN5LXRydW5rCisyMzYxOCBmZGMxOTE0NDA2ZTI2ZTI3MmZmYjQ2OWQ4YzIzNTZjNTlkMjZmNzc4IGxlZ2FjeS10cnVuaworMjM2MTkgNGRiYjUwNTgxZDkwM2E0NDI4YjQxNThjZTc4MTkyYWVkZjYwOWVkMiBsZWdhY3ktdHJ1bmsKKzIzNjIwIGMwZDY2Mjk2NjI3Mjc0NjQ3YzljZWIyMWY1MWM3MmRmM2U0OWFjZjUgbGVnYWN5LXRydW5rCisyMzYyMSA5MmQ1NmFlNjNlZDNmN2QwZGM1MzBmYmE0MDZhZmM1Y2U0NDJjZjkwIGxlZ2FjeS10cnVuaworMjM2MjIgOThmNTk3YTE3YzkwN2Y5NjJkODMyYmNhMTAyNGU1ZGU0MDA2MDljNSBsZWdhY3ktdHJ1bmsKKzIzNjIzIGUxOTFjZWVlNjcyZmZlMTU1ZjVjNDg5MTg2MmQ2ZDc2ZWNiMGU4MjcgbGVnYWN5LXRydW5rCisyMzYyNCA4YTA5Yzg1NWY5NTczMDQxMDVkYjhiNjEyZGE2YzAyYzQxYTVhMTAyIGxlZ2FjeS10cnVuaworMjM2MjUgYzQwODMzM2QzN2YwNjE1NTYwMmViNTczMDI1MjE1YjMxMmZhM2JiMSBsZWdhY3ktdHJ1bmsKKzIzNjI2IGI5OTdhYzcwZTQ0NWVkYmEzZmI1MTc2M2ZkMzEyZjg0OTEwY2NhNTEgbGVnYWN5LXRydW5rCisyMzYyNyA2YjFkOGNiOTkwNGFjMDFkNDEyNmYyZDIwZjg4NGFlMTNjMjlkMDNiIGxlZ2FjeS10cnVuaworMjM2MjggYjBkODMwNmMwOWM1MWIwYjY5ZGNhODZjMzYwZDY0NTA1ODBiZTcyZCBsZWdhY3ktdHJ1bmsKKzIzNjI5IGU0NmY2OWY1Nzk4YjY4OGMxYjAyY2JjODA5NmVlZWI0ZGU2NGIzNmUgbGVnYWN5LXRydW5rCisyMzYzMCA3YmNhY2E2NTMzODgyNGQ2NDYyNzMyZGJmYmM4ODgxYzAzYmJhMjk1IGxlZ2FjeS10cnVuaworMjM2MzEgMzAwYjFkOGJmYTRkZTFkMzUxMzFkZWE4NjViNjk3ODI5ZjZjOGE5NSBsZWdhY3ktdHJ1bmsKKzIzNjMyIDllNzJiY2ViNTQwYjU0NzQwZjRkZWExNDRkYjJhZDliOTk0NTY0MWIgbGVnYWN5LXRydW5rCisyMzYzMyA4ODMwYmUzMjA5YTJhZDFiZmQzYTQxNjcwMTU2NmI5YWUyZmIyNTdhIGxlZ2FjeS10cnVuaworMjM2MzQgYWJmZDE3MDAxZThmNWVmZTFhNzM5Y2JmM2YyNjNhN2VhMDhkOGY2YiBsZWdhY3ktdHJ1bmsKKzIzNjM1IDhlZjNlOTUxODJjMzZkYzEzZDViNTJmYzE1ZDU0ZjgwNTRkODk0YmIgbGVnYWN5LXRydW5rCisyMzYzNiBkYmVjODYzZDMzZDdlYTM1MDE1YzQwZTA1ZmVmOWU5NDg5MWNiYmNkIGxlZ2FjeS10cnVuaworMjM2MzcgNGJjYzIzMWMxYTQxYTRlMjkzZDNlNmUyMmI0ZDQ2OWI0YzFlODJlYiBsZWdhY3ktdHJ1bmsKKzIzNjM4IDk0OTgzOTQyYzk0YjliN2VhYmUzMWU5MjlhN2JjY2I4YzhiNzhhNTIgbGVnYWN5LXRydW5rCisyMzYzOSAzYWIzYjUzNWRhZjI0OTVmNmVhMDlkMmRjYzZmY2M5MDc5MDUyYzkxIGxlZ2FjeS10cnVuaworMjM2NDAgMDYxZGEyMmY0MjAzOWNjYWRhYmQxZDM0ZWM1N2U3ZDdhZDYzZmFhYSBsZWdhY3ktdHJ1bmsKKzIzNjQxIDljMmQ0NDQ2NzRkMDkwMWY1OTRmNWUyODM2Y2Y0Yzg1ODg5ZGE4ZjcgbGVnYWN5LXRydW5rCisyMzY0MiAyZjg5YjM0NGZkYjNkZDVjODRjMjdkYzU5ZmI4YWJmNjVjNmYxN2RmIGxlZ2FjeS10cnVuaworMjM2NDMgYWZmOGQxNGIyOGFkYTNkNzllZjBiNjVhNTJhZjg5NWUzYTQyNTg4NyBsZWdhY3ktdHJ1bmsKKzIzNjQ0IDNhZGMzYTE0Y2RlNDEyN2FjMWY0YWU0ZGY5YjQwZDdkYmZhMjc2MTggbGVnYWN5LXRydW5rCisyMzY0NSBiNGY4Mjk5NDFmM2RmNDExZTExNDNhMTFjZGM3ZGQxODA4MmU2NzA1IGxlZ2FjeS10cnVuaworMjM2NDYgYmUwODczNGIwYWZkMjEwMTY5MmFkODlhMjI0NWQ5MTE2YTg2YzU5NyBsZWdhY3ktdHJ1bmsKKzIzNjQ3IDNiNDVjMDRhNDgzM2JlOTBjZTdjNGQ1NGI4YzgzMGM4NzIwZWU2MTUgbGVnYWN5LXRydW5rCisyMzY0OCAyYmE0MDE4ZGUyZTMxMDY0ODA5YjVjNmQ1M2UyNGI5Zjc3NDQ1NzdlIGxlZ2FjeS10cnVuaworMjM2NDkgYmU1OGVlZTY5YTk0OTQ0M2IwYTllZWY4ODk0NjhmYmI1MjAyYjQ5ZCBsZWdhY3ktdHJ1bmsKKzIzNjUwIDNjMDFjMzRkMDdmNjhlYzE2Y2E0Yzk1MmM3MmE4ODdhOGQ1YWQ1YjcgbGVnYWN5LXRydW5rCisyMzY1MSBmOTA4YjA2M2YyOGI3OTc1ZTVlZjg4NWJkNmU5NjJjNzJkODFkYzhmIGxlZ2FjeS10cnVuaworMjM2NTIgYmU4Y2JhNWEzYjdiZTg3OTkzMGNkYTNkZTM3NjJjYTAwZDk2ZmNiYiBsZWdhY3ktdHJ1bmsKKzIzNjUzIGI0NzE2ODE3OGQ4NzljYmUzMjkzODBkN2Q3MGI3MTcyNzRkZjk3YTggbGVnYWN5LXRydW5rCisyMzY1NCA5NDZiZWJkMDAxMzJjM2JiZDQwMzc4MjBiY2FiYTAwZGU3YTIxMjhmIGxlZ2FjeS10cnVuaworMjM2NTUgNzczYTEzMGIzMzBlYmVhY2VjOTNiMTQ0NzA0ZmFjZjYyYzYzODk5NyBsZWdhY3ktdHJ1bmsKKzIzNjU2IDg1M2MyNjhiZjI0Nzk1ZTdhMjViZWFjYjc0M2FhMzE1NDZjMTA4YjMgbGVnYWN5LXRydW5rCisyMzY1NyBjMjdjZjkxM2IxZDY5MTAzMGQ3ZTJkMzNlNzE0MDJmZDg4ZDIyMzIzIGxlZ2FjeS10cnVuaworMjM2NTggYWQxZjA4MTI4MGFhMDA5ZjVlMzJmYWM1MzllODkxZDg3Yjg4ZWZkMiBsZWdhY3ktdHJ1bmsKKzIzNjU5IDIwNTA4NzdjMGMzNjNhYzE4MTFhYjVjYTMxMDU1MTdmNjE0MDVmMzYgbGVnYWN5LXRydW5rCisyMzY2MCA3Mjk0OTMyZDc0ZWNhZWY1YzUzYzk1NmQ1OGE0NmMyYWVlNmZhNDgxIGxlZ2FjeS10cnVuaworMjM2NjEgOWZlOTc1NDhkOTUyMWZkOGVhODQ5N2IyOGJiZjRjNjk0NzM3YmEzOCBsZWdhY3ktdHJ1bmsKKzIzNjYyIGM5YTIxMjMyOWRhNmYwY2ExYmM3ZTFmMzhhYTJlZTY4NjRmYWFlZTAgbGVnYWN5LXRydW5rCisyMzY2MyA2NWY2MGQzZmNkZDc3ZTAyZTczMDI1YTQ0ZmYyMjBjN2MyMzAwNDUyIGxlZ2FjeS10cnVuaworMjM2NjQgNjU3OTA1NjIwMzNjMTNjYmM4MmIwZmQ0YzE4ZWU3YWMyN2E3OGM0NiBsZWdhY3ktdHJ1bmsKKzIzNjY1IGI3NDYxMGM5MmQ4YjgyNmQwYjNiZGViZWIyN2VjMjEwZjI0MTMzNjAgbGVnYWN5LXRydW5rCisyMzY2NiBmNTdmMTdjYjQxMDg2NTQyYmNhYjBhMjIwOGM4ZjkyMDNhM2RjZDY2IGxlZ2FjeS10cnVuaworMjM2NjcgZWQyZWVhYjgwMmQyYzQ5YmQxNTQ5NDAyNzM4ZjA1ZmQ5NjcxN2YwMiBsZWdhY3ktdHJ1bmsKKzIzNjY4IDlhZTc4ZWY4NThlMmNhOWJiZWE2ZmIwMmIwOWI2MzJlMWYxYmM2NzQgbGVnYWN5LXRydW5rCisyMzY2OSBiNmE1ZmVjYmVjM2NiZWE2ZjhjY2NjMGMwOTYyOGZiZjE4NWQ2YTM5IGxlZ2FjeS10cnVuaworMjM2NzAgYzNhOTM3Y2Y2MGE1ZjVjZGE3ZDY1YmIzMTUxNDFhYWJhYjIzOTg0MSBsZWdhY3ktdHJ1bmsKKzIzNjcxIDZiMTA0MDgzZjVmMzNhOTBiOGU3Y2YxN2I2YTgxMDJlNTU0OTA1M2MgbGVnYWN5LXRydW5rCisyMzY3MiA0NjlhOGUxZjdlZGY1MTM3ZjBjMzIyMTRjYjgyNDgzNzBjMjdhZWM1IGxlZ2FjeS10cnVuaworMjM2NzMgYjk4MTg1Yzg4MmU0ZTc2ZmExOTI5YThjMWE1ODVkZGY0YTliZjY5MCBsZWdhY3ktdHJ1bmsKKzIzNjc0IDJhNGJiN2QxOWI2MDNmZTg1NmQ0ODVmZmMzYzU1NDM0NTg2MDY0ZDYgbGVnYWN5LXRydW5rCisyMzY3NSA0ZGFiNjFmNDg0NTgxNzIxZmIwOWRjYmU2Mjc3OTdiNmQ1ZmRjOWZkIGxlZ2FjeS10cnVuaworMjM2NzYgNjk4YmY3YzIyYmZlYmE2MmNlZWNlNzljNGFlOTg3ODQ4YTUyODg1ZCBsZWdhY3ktdHJ1bmsKKzIzNjc3IDFjYTYyN2M0YzEwNWYyMWZiZDJjMjdlOTU1ZDM5Nzg4MzVjZjViMTggbGVnYWN5LXRydW5rCisyMzY3OCBlNGQwYjFmOTRlY2E4ZDZiMjMyNDU3MjU0NjNkYjhlYzMxYWM3YmE2IGxlZ2FjeS10cnVuaworMjM2NzkgNjIxYzc3MDNlOGI3NTI4ZTlkZjliYTM3MzhiZWJhY2FhNjg2NjNiYiBsZWdhY3ktdHJ1bmsKKzIzNjgwIDU5MDBhOWQ4MDg0ODA5MjY5YzU1YmJiYmM4OTRkMGJlMTU1OTViN2YgbGVnYWN5LXRydW5rCisyMzY4MSBjMTY4ZWRhNzM2ZTQ0YTdjOGI0Y2RhZTM0YjIxNmM3MTE0MTg2Yjg1IGxlZ2FjeS10cnVuaworMjM2ODIgOTAzMjIxODUyYzNhNTljMzE3MDczNmVhMjQzYWUyYTEzOGRlNjAzYSBsZWdhY3ktdHJ1bmsKKzIzNjgzIDRmM2QxMjQwODMwZTZmNTMwMzhhODAyZWRkYTA0MDgwNGQ1YjVhMWYgbGVnYWN5LXRydW5rCisyMzY4NCAzYTE4MTMzZjk5MDY0MzUwNGI0OGUwMDA0YmM1OTE4NGQyYjJmMjM0IGxlZ2FjeS10cnVuaworMjM2ODUgZWU4OTU2N2JjYWI0NDUwYTUxYWRlODg0MTFhNzhhNTI4MTEyYzhhNCBsZWdhY3ktdHJ1bmsKKzIzNjg2IGY2MTg2MDdlOGY5ODQyMGQ2ODg4YzRlNDc3NzJiZTgyMjhhOWE4MDAgbGVnYWN5LXRydW5rCisyMzY4NyA0Njk4YTNlYzVmYThjZmFkOWI0ZDc5NTEzOWU0ZGFkYmI2NDZmNTk2IGxlZ2FjeS10cnVuaworMjM2ODggNmRhMDM3MThjMTMzMGMzYzIyMTE4Nzg3M2FhOWM5Nzg4MTllMmEwYiBsZWdhY3ktdHJ1bmsKKzIzNjg5IDdkMWY0OTBiNmNiMTcyODI0ZjlkZGViMDczZWE0ZGY1MTUyNDlmMDggbGVnYWN5LXRydW5rCisyMzY5MCA1MThlMzBmOTBkMWY3ZDg4NDRlMjcxODhkYWE1OWNjYTU2YzQ2ODJmIGxlZ2FjeS10cnVuaworMjM2OTEgNDcxMmJiNjJjYzI1ZDA1YjJkMGM3NmE5M2NiM2JmNThhZWU4ODkxYSBsZWdhY3ktdHJ1bmsKKzIzNjkyIDYzMmI5ZDNhOGQxYTdiMjkwNmY3YzgyYjE3NDFmY2Q2YjE5NjQyYWEgbGVnYWN5LXRydW5rCisyMzY5MyBiMDI5ODZlOWE2YmU0NzIyNjY0MmI3ZTVlZDY1N2RlMThiYWQ4ZTU0IGxlZ2FjeS10cnVuaworMjM2OTQgNWQ1YWQ5NTFhNmQ2ZTE3MGQ0ZjMzYjY0MjlhNjhlY2NhOGJhOTA5NiBsZWdhY3ktdHJ1bmsKKzIzNjk1IGNlZTBmZTVmY2UxMTVkYTU5NTk4YTg0ZmE5ZThjMjdiM2NlMDVmM2MgbGVnYWN5LXRydW5rCisyMzY5NiA1NjE0MWI4NmE3ZjJjOTVhMTJmNjZkZWVhNDk4MmY3NGE1MzU5Y2IzIGxlZ2FjeS10cnVuaworMjM2OTcgN2Y1MWE0YjdkZWI0NDBlZTJmZDVkNmM0NzNjNGNmMTAxZDE2M2Q1YSBsZWdhY3ktdHJ1bmsKKzIzNjk4IGJhMjg1MDQwOGYwYTI2MGQ1OGQ5NDM2Y2EyNDM0YTRlZjRiZDQ3ZDIgbGVnYWN5LXRydW5rCisyMzY5OSA1MDAwYjVkNGMzMjY1ZjU0MTBlNzc4YjMzYWQ3YzJlMjUzODdiZDRhIGxlZ2FjeS10cnVuaworMjM3MDAgMjAxMThmNDEyOWRlZmRmZTMxOWZlMDg3OTc4MTA3N2ZkY2Q1MGJiNSBsZWdhY3ktdHJ1bmsKKzIzNzAxIDM1ODM5N2I5MDcwZjZhN2VlOTVmZTM5MzQwOTdhMGZkZjFiOTc5YzQgbGVnYWN5LXRydW5rCisyMzcwMiAwOGQ3YTY3NTZiZmVkOTJhODg4YTgwYjNhZjRlYzk3YzQ1NjY3OTFhIGxlZ2FjeS10cnVuaworMjM3MDMgODU1NzFkNWY2NTQ1YjY3YmE2ZWJmODA4N2FmN2E2NDBlYWY4MGUxZCBsZWdhY3ktdHJ1bmsKKzIzNzA0IDliZTJjYzZiOTk1OWQ4MzFjNTFhYjA2ZTA0YjAxMzRjNjk5ZjIyNDYgbGVnYWN5LXRydW5rCisyMzcwNSA1NjI4MzRlZDhiYWJkZjdhZTMxY2I2YjkzMTgxODlmNGY5MTQ0MWFkIGxlZ2FjeS10cnVuaworMjM3MDYgNDY3YWM0NTNjY2MzMmM3ZWI2M2QyYjlkZWRhNWYyODQ3YWNiZjdiMiBsZWdhY3ktdHJ1bmsKKzIzNzA3IDAzNjI0ZDc0ODRmYTA2MDBlMGM0OGZkZWNhNzRhMTg0MjE3ZTc1ZTkgbGVnYWN5LXRydW5rCisyMzcwOCBiYzkwNWExMWMxNDhhNDhiY2I1ZmQ0MGIxMzM1YTUyZDlkNjQ5ZjMwIGxlZ2FjeS10cnVuaworMjM3MDkgMjdhYjAzMjdiMmZjM2E5ZTdhN2JkMDNhOGU4NjNjMzM0NWZmNDkxMiBsZWdhY3ktdHJ1bmsKKzIzNzEwIDg1NTI0NWJiNGQ0Mjc2Y2VmNzhhMmNjZWRkOWVmNmU2M2I1NDY2NjcgbGVnYWN5LXRydW5rCisyMzcxMSAzNTNhM2U5Zjg1MTZjMTU5OWI3OGZkYWEzZTM2ODM0OGNlNTBjYTViIGxlZ2FjeS10cnVuaworMjM3MTIgYjFhODYxNmYxM2U0Y2Q3MjZiZTU1ODAzOThmNzQ0ZTA0YWU5ZDM4ZSBsZWdhY3ktdHJ1bmsKKzIzNzEzIDY5ZTY1ZTczOTFiODE3YmMwNDg0NmI3ZThhMWJmNzA5ODVmNDAyNzAgbGVnYWN5LXRydW5rCisyMzcxNCBiNzI1NjhhMmMxN2NlYzIzMDg5MTE0Y2ExZDI1NGQzZGFkNDVlNmJmIGxlZ2FjeS10cnVuaworMjM3MTUgOTliMmJkMjViYjEyZDQ3YTAxZmMxNDMxNDQ1OTU1NWFlNjE2ZWYyNCBsZWdhY3ktdHJ1bmsKKzIzNzE2IDQxYmVkMWY2ZDI2Y2ViM2E3NTdiM2VhMjEzMzk4YzJmODE1NmYyYmIgbGVnYWN5LXRydW5rCisyMzcxNyA2NGY0YWM2MDZhZTUzMTNkNDI1ZWQ4YTNjMDA4NmNmYWNiMTJhY2M0IGxlZ2FjeS10cnVuaworMjM3MTggNTk4YzAyYWIwNjJkNDNmZmNjNjZmMWRlOTRiNDdjMGMxNjNiNWJkNCBsZWdhY3ktdHJ1bmsKKzIzNzE5IGVjOTU5NjY4NzI5Mjk2M2UzNmU0YmFkNGI3OWQxODg0Mjg1Zjc1ZTYgbGVnYWN5LXRydW5rCisyMzcyMCBiZmY2YzJkNzZmMzM2YzUyZDZkZWI0OGM2NzkxNDMzZWE3YTAzZmJhIGxlZ2FjeS10cnVuaworMjM3MjEgNGY3MWRjZmQwYTkzNzBlZjdiZTQyNmI0Mzk4NzI3NjgxODI3YzcyZSBsZWdhY3ktdHJ1bmsKKzIzNzIyIGE5NjIzNWIyY2E2MjViMzBhNjg2NDZhNjM4NGVhZWFjM2M2OGQ5N2YgbGVnYWN5LXRydW5rCisyMzcyMyBjNjhkMTg1NWRhYTllYTI0ODUxYWFiYzFmMzA5Yzg3NWI5Nzk0ODdiIGxlZ2FjeS10cnVuaworMjM3MjQgZmZiZjk0ZmQ5Y2VmOGUyZjZlODUzMWRhY2UwM2UzMWVlMmFiMDA2MyBsZWdhY3ktdHJ1bmsKKzIzNzI1IDdlNzFlZWJhYjRlYTM5ZTk5ZDYyNmQ3MmNiYjM5NWFhNWU5NzZhNWEgbGVnYWN5LXRydW5rCisyMzcyNiAyZjBjNWFmNGQ1ZWEwN2ZiNTZhMDViNmU2ZDE1YmE0YmRiMWRkNGU0IGxlZ2FjeS10cnVuaworMjM3MjcgY2UxMmJiMTA5N2E0MTY3NTM0ZTQzYzQ2NGY3ZjFlNzY1MWM1M2ZjZSBsZWdhY3ktdHJ1bmsKKzIzNzI4IDk4ZGYwMTE1ZWNmOTAxMmM0NmNlYzk5OWFhOTZjMzdjMWQ2NTMyNWIgbGVnYWN5LXRydW5rCisyMzcyOSBjNzI5MTVkOGFhYzcyODlmODZjZGM4YjMyNDAxNGE0ZmE2ZTVmNDNhIGxlZ2FjeS10cnVuaworMjM3MzAgNjBlMTJmODNkMmQyMjVlM2IxYTg5MmVmMDRmMWI5NmE4NjQ2ZDNlYiBsZWdhY3ktdHJ1bmsKKzIzNzMxIDViNWMxNWEwOTVjYzdhYmI1MTVmNDg3MTU0ZTQ0NGI5ZTk2MjMyMTAgbGVnYWN5LXRydW5rCisyMzczMiBlYmZkODdlODc4ODRlMDZmODAyZTEwZGFhYjJlOTMxODllY2RiZjczIGxlZ2FjeS10cnVuaworMjM3MzMgYzQ2ZTk0ZmQ2OTg2YjZlMGVhNjZmNzhjMDQ0MzUxZTEzODM3ZmJlNCBsZWdhY3ktdHJ1bmsKKzIzNzM0IDg5NjRlZjg0YzkyZjRkMjE3OGJiMzhmZTQxZDFmOWZhMzRjNThlNGIgbGVnYWN5LXRydW5rCisyMzczNSBiYmRjMGFiZmJiMTM5N2ZmNTFiYTk3MzQ3NzJiY2NlNWVmMmQ5OWFlIGxlZ2FjeS10cnVuaworMjM3MzYgZGM3MjA0ZGQyNjg2ZWEzZWNmYjkyOGFkOGVmMDY5NTQzZDI1MjA4OSBsZWdhY3ktdHJ1bmsKKzIzNzM3IDhkNWMwMDBlMGU1YjQ0Mzg4ZjUzMzM5MmJlMjYwOTdjYTM4NWYzYWYgbGVnYWN5LXRydW5rCisyMzczOCBhNWEzMGJhMjg5OWY1N2U5ZGVmNjFmYzc5YjNjNWMyNGM0NmJiNjExIGxlZ2FjeS10cnVuaworMjM3MzkgMmYwOTVjM2UwMDdkZDc3NmQ0NzQ0OWNkODFhNWJjNjZmY2QwOWI2OSBsZWdhY3ktdHJ1bmsKKzIzNzQwIDBjYjI4N2NkNzU0N2E4NDdjNjI0M2VlZDY1NjE0NTVmMjIyNTA1YjYgbGVnYWN5LXRydW5rCisyMzc0MSBjMjM5ODllMjJmZmE1MDExNGZiMTVmZjg4MmRmMzg1MGZiNjMyYzRjIGxlZ2FjeS10cnVuaworMjM3NDIgMDcxY2ZlZThkOGViOWFjMjk2ODNhYWY4MDA0MzdlNDZhODA0MTUxNCBsZWdhY3ktdHJ1bmsKKzIzNzQzIDc2OWRmODVkNzBiYzEzZmYwZGM0MjVlNDNmNDZkNGNlNzRlNzFjNGYgbGVnYWN5LXRydW5rCisyMzc0NCBkZDBjZGQzZGVmZDgzOWY4OGM2YmZlZmExYmIwMGI0ZTA4ZjE3NWQwIGxlZ2FjeS10cnVuaworMjM3NDUgY2Q5NmM0YjAxZmYwZjBhODMxM2VjMDMxZmJkMzYwNGE2ODJiMDFhMCBsZWdhY3ktdHJ1bmsKKzIzNzQ2IDhmNDczMTc5YjA3MzAwOTRmMmE1ODA4OGY0YzBjMmU3YmViNGU0NzkgbGVnYWN5LXRydW5rCisyMzc0NyA1ZDY3ODM1NmM4OTQyOWIyZTRiOTNjYTlmYzRhZjEwYzQ0NjNlZmNkIGxlZ2FjeS10cnVuaworMjM3NDggMWE5NDk0ZjllZGIyNzAyMTdkNjgwMDg0ODgyMDlhMjI1ZmRkOWI5ZSBsZWdhY3ktdHJ1bmsKKzIzNzQ5IDRhZjhkMjRmYTY5MWVlYTFhMGU2YTFmNTAwMTVlZDNlYTlhZTQ0ZDAgbGVnYWN5LXRydW5rCisyMzc1MCA0YmZkYmM4MjMxMGYxYmMzNWE2ZDBiNmU0YWQyYTUyMDQwZjQ5YTY3IGxlZ2FjeS10cnVuaworMjM3NTEgYjY5MjczYmVlMDk1MGNkN2M5MGIyMjMyMDVlZTNjNmU2ZWZiZGQ3NiBsZWdhY3ktdHJ1bmsKKzIzNzUyIGJlNjdiNjZlNWZlZDBmNzI2NmNlZTc5M2QxNmY5ZGFiMGI4NGNjMjUgbGVnYWN5LXRydW5rCisyMzc1MyBlMDlmYjQ4NDg3NjUzNTI4ZmU2NDEyYzNjMzM0NjFhODViMjQ0OGRkIGxlZ2FjeS10cnVuaworMjM3NTQgN2NiZDQwN2JlNmU3ZDNkMTZkNzc4NjQyZWYxMjJhNzAwNjAyMWIyNSBsZWdhY3ktdHJ1bmsKKzIzNzU1IDE0OWE2NWZhNDI3YzM0OTU5YjYyMWRmZmFkNzI1ODZmN2VkY2E4MGMgbGVnYWN5LXRydW5rCisyMzc1NiBiZjRmZjA1ZWFiNTIwN2FkMDY2ZWViMjA1MzE0MTJhOTk1OWQ1ZGUwIGxlZ2FjeS10cnVuaworMjM3NTcgMWQ5ZTY5ZmNmMGY4ZDRmNTE2MjdlZWYyMWU5ZWRjZGQxYmFkMzY4NyBsZWdhY3ktdHJ1bmsKKzIzNzU4IGM4YjBlOTk0NTE1OTlmNWM3NzE3OGIxNjJlYWQ2MzQ1MjNjMWU1ZDAgbGVnYWN5LXRydW5rCisyMzc1OSA2OGZlZmE5ODJjNWMyOTFlOTc5YzdjMjYyNjU2YTVjNTFkMGIwZGYzIGxlZ2FjeS10cnVuaworMjM3NjAgN2NiZDI4ODdmNjBmY2UzZTRhOTQ2OTJhMDkwNTRmZTNmYjE0ODkxNyBsZWdhY3ktdHJ1bmsKKzIzNzYxIGE5YjE5ZGIxODBhMjYwMGIwMjFiM2M2ODFlNmJmYzlkNDM1MzY5ZDMgbGVnYWN5LXRydW5rCisyMzc2MiAyYmM0MTgzZmI1N2U2OWZhMTYwZGMyNDFkNDhlYzg5NGE1MDNmNDk2IGxlZ2FjeS10cnVuaworMjM3NjMgYTBjOGMyZTVhNDRkMDg3MmFjNTIzZjhkOGI5OGY3NTY3NDE0ZjNlYyBsZWdhY3ktdHJ1bmsKKzIzNzY0IGZkZGFjZWZlZWIzNmRmYTI2YjE1MTJhNTcxZWRhMTY4ODgzZmVjYzkgbGVnYWN5LXRydW5rCisyMzc2NSA3MzNjYjI2OGFkMmZiMGI3NDA3Y2NjZjVkODVhMjc5ZmUzNzRiODBjIGxlZ2FjeS10cnVuaworMjM3NjYgNjQyNmE1YWRiZjc3NTNiZjA2YzdjNzVkZDQwYTE2ZGVjZGU0NzdmMCBsZWdhY3ktdHJ1bmsKKzIzNzY3IDg0MzMxYzhkOThhNDFhZGQ5MGQ3YjY3MTRmZjQzZjk4ZjlmZTViYzUgbGVnYWN5LXRydW5rCisyMzc2OCBlMDg2NGFhYzliNmIyNWQyN2ZjMTVkYWY5YzY4OWFlYTk3MzU1MGZkIGxlZ2FjeS10cnVuaworMjM3NjkgOTM4NDFjNWY0NzViMTAwYThjMjU0ZmRmZGE2Mzk3ZDA3NGMyNDU1MSBsZWdhY3ktdHJ1bmsKKzIzNzcwIDk3Yzc1Zjk4MWE5ZTYyNzNkNzNjNmYyZGMxN2IyMjMwYmZmMTA3NWIgbGVnYWN5LXRydW5rCisyMzc3MSAzNjRjMjM4YTY4NzEwZmQ5NDYzMmJkNTA4NjBlMWQ4ZmI1M2E0YjUwIGxlZ2FjeS10cnVuaworMjM3NzIgOGUwYzMxODQ5YzY0OGU3ZDM2ZWZiYmQxY2U3NTgxYmM1ZDQxOWI2MSBsZWdhY3ktdHJ1bmsKKzIzNzczIGRmYzlmMjNjODY1NTM0NTMzMjMxNWRkNzI0YjNhZWE1NzA3NGQzNzMgbGVnYWN5LXRydW5rCisyMzc3NCBiZGM0ODZjNjZkZjA0YmEwZDc0NDkxOTFhNzZlYzk3NmU4YWIzN2RiIGxlZ2FjeS10cnVuaworMjM3NzUgYzEzYTQ3M2NlMWI3ZWRkYmIwOGRmMDhiNjNjZDA0Zjg4OTUwMDU0MiBsZWdhY3ktdHJ1bmsKKzIzNzc2IGRmYjJlZmE1NTk2NzJiODdlZWEwZjU3YjVlNTk2ODUwNjZiNTUwMWEgbGVnYWN5LXRydW5rCisyMzc3NyA2MmIyMDc1ODg4NjZjYzZmNTBlNTUwOGYzYWFmMzFiZTk1YzljYzA5IGxlZ2FjeS10cnVuaworMjM3NzggZjkzOGNkMWJhOTRlYzRlMzI3MzAwNTQwNGUwOWFhYTg1MDAwNmI5ZiBsZWdhY3ktdHJ1bmsKKzIzNzc5IDA2ZjEyNTRkMjI4MDhlYWQxODIwMjNhYTVjNjY0OWQwMDgxYjdlNmIgbGVnYWN5LXRydW5rCisyMzc4MCBkMjExNjBhOTIxNzkxMzg5YzEyODU2ZmIxM2U1MGYzNDliNWMzZmU0IGxlZ2FjeS10cnVuaworMjM3ODEgZDUxZmU1MjBlNWZkYzAyMGMzMjc1ZGJhNDAwMjEwMmJiMjg3NmUxOCBsZWdhY3ktdHJ1bmsKKzIzNzgyIDIzZGM3YmIwYmU0ZmI3Nzg2OGUwNTM5NmYxNTEwMWM5NWUwZTk0ODkgbGVnYWN5LXRydW5rCisyMzc4MyBkMDFjNWYyOTkxNWEyOGM4MzhhNDcyNTI3NTNlMjNmODVmNzg1YjE5IGxlZ2FjeS10cnVuaworMjM3ODQgYmMzYzg0MTk4NzRjNmUxZjM4OWNmNWM4Nzk3ZjIwMTgwMDc3YWFkMCBsZWdhY3ktdHJ1bmsKKzIzNzg1IGNiODdiZDk3Zjc0MGYxNzUxYWZmZTQ4MDFlMjUxYjI5ZDA5MzFmN2YgbGVnYWN5LXRydW5rCisyMzc4NiAzZDEzNDE3YTYzZTBmZDczNWE4NWUyZDFiMDZjOGVlMDcxN2M4ZjAxIGxlZ2FjeS10cnVuaworMjM3ODcgNTRhODM5NjA0NTQwM2MwZTI4N2YyZWNmZDFiMzhhNzBmZDBlMjgxNiBsZWdhY3ktdHJ1bmsKKzIzNzg4IGZkNTYxNDRhOTZlOGZhNjQ0YzVlMjkxODliNjUzOTFlNmE1ZTU5M2YgbGVnYWN5LXRydW5rCisyMzc4OSBjOTQ4YmNiMDQxNWUwYzMyZWE0MTM4NmJmODQ0M2ZkZDA0Y2M5MTkyIGxlZ2FjeS10cnVuaworMjM3OTAgMWYzYzFlODMxZjIxNmE0OWJlNmMwODMyM2E3MzA2MjljZjdlMDk1NyBsZWdhY3ktdHJ1bmsKKzIzNzkxIDNkM2I2YjRjYjc5ZjM5OWIyMmUyMTQ5YTc3MDcyYTkyNjE3M2YyMTUgbGVnYWN5LXRydW5rCisyMzc5MiBjYjMzNGE4YzhkZDIzYTU2NmZkYWQwYmY3YjA0NDVjMTI5ZGFlMmM3IGxlZ2FjeS10cnVuaworMjM3OTMgZGJmZWQzYmYxNjBlZWRhMDNkM2EzMjAxNzk5YTMxYTM1MzVlODQzNiBsZWdhY3ktdHJ1bmsKKzIzNzk0IGYwZTMzYzU3ZTQ2ZTgwMTAxNGQ5NzhkMTBiY2FjY2I0NTZkOWY5MmIgbGVnYWN5LXRydW5rCisyMzc5NSA5Yjg0ZWZiZjZiMGQwYjc3NjczMzJkMjM0YzNlN2U0NmRmNDEyNjMxIGxlZ2FjeS10cnVuaworMjM3OTYgYmMxMzhiYzczY2RkMWMzNTRmNzE5ZTc2MzM2N2E3OTZjMDFhZDMxMSBsZWdhY3ktdHJ1bmsKKzIzNzk3IDRmN2JlZmVjMzViMDE5N2Y0Yjc5MDcyYTU4YTE4OWFlNDI4NzZiZjIgbGVnYWN5LXRydW5rCisyMzc5OCBjMjAwNWJiODc5YjQ2N2Q1NDc5ZmYzMmFjYzI3ZjU4NjQ0Y2M3MzU4IGxlZ2FjeS10cnVuaworMjM3OTkgODBiOGJmYTA0NDA2YmYzZjQ5MTVmN2JhYTJiYzZjNDBmNzEzNDgxNCBsZWdhY3ktdHJ1bmsKKzIzODAwIDRiMTYxNWJmNmViMDlkMzFjNzYyMWM2NWE5ZWY5MTM0MTNlOTM5YjggbGVnYWN5LXRydW5rCisyMzgwMiAwMWFmOTFhZWNjZDQ0NzI1NDI0MTc5ZTI3YWY2ODMxZjM5MzY4OTU5IGxlZ2FjeS10cnVuaworMjM4MDMgZmUxYjZjZTRlYjkzNjM1OTg5MmM0NzBmYzc5NTIyOTc2YTk0NDBlYiBsZWdhY3ktdHJ1bmsKKzIzODA0IDJkNTk5YTM2YjY3YThjMzBjYjk4YTQzZGVmNDljN2VkZjM3ZWQ5YWEgbGVnYWN5LXRydW5rCisyMzgwNSBhZDI2NjIwOTVkNzcyNDY5MWQwYzQ4NGFmZjQ2YzJiZDI5NmQ0ODgwIGxlZ2FjeS10cnVuaworMjM4MDYgZjU2N2I0NTczN2MwZTM0ODBlMjhkMTJmMTEwMjg4M2UwNTIxNmNiOCBsZWdhY3ktdHJ1bmsKKzIzODA3IDI5NDkwMWFiODYzMGI1ZGMwOTcwM2NmYzA3NzA4YTI0NmZhZTRhZTAgbGVnYWN5LXRydW5rCisyMzgwOCBhODk5NWE2ZGU4ZDAwNWU2NjM2NmU3MzE1YzYwZjgzMDk4YWFkNDAyIGxlZ2FjeS10cnVuaworMjM4MDkgNGJhNDU0OGJhOTQxNzk0MGRlMmJiODMzOTdjMTJmM2M5YTYzMTM5NiBsZWdhY3ktdHJ1bmsKKzIzODEwIDM2NzE0Yjk4ZmU1MTIwZTY1MjcxZDgwMzFlN2RhZWM5ZmU1OThjYzggbGVnYWN5LXRydW5rCisyMzgxMSA3M2ExMzk1YTIzNTE2NDkwOTY5YTA0MzFmNmQzMzlkZjE4MTRmNDMyIGxlZ2FjeS10cnVuaworMjM4MTIgYTEyY2NkYmNlOGRhOTNlYmE2NWI4ZmE0ZTQyOWM1MTQ2Nzg5N2M2OCBsZWdhY3ktdHJ1bmsKKzIzODEzIGE1NjQyN2U1YzVlMTcyODRjMjJmOTI3ZWYxY2IzNDJlM2UyMTdlZTQgbGVnYWN5LXRydW5rCisyMzgxNCBkODgyNTQ3NWI4MDA3MmU4ZWE5Yjk4N2ZlODZjYjgzMGI5N2UwMzgyIGxlZ2FjeS10cnVuaworMjM4MTUgNmE1YTEwYTViNTI2NWRkMTNlNjY1MDhiZmEwMWZhMWFjZmU1ZWUxOCBsZWdhY3ktdHJ1bmsKKzIzODE2IGM5NjA4Yzc5MGY2ZjVmYTg1MTM5MTRhMzQ5ZTRlZWE1YzdlOTcxMzQgbGVnYWN5LXRydW5rCisyMzgxNyA2NWRkNjE1N2Y5OTkzNGJhNDEwNzBmODZjOGY2M2VhYzkwZDIwMzRjIGxlZ2FjeS10cnVuaworMjM4MTggNzIyYmIxZmQzMWVhMDk2ZmNlYmYwY2MwMWQxZjg2ZTlkYTNiYjVmMSBsZWdhY3ktdHJ1bmsKKzIzODE5IDAzMzZlZTViNDZkNDIyMmVjMzA3YTRiZGU2ZjdmYjVjMmQ5YWViZDQgbGVnYWN5LXRydW5rCisyMzgyMCA5NDliYTQ3ZThmMzBjYTdmM2Q2MzgyMTljNTM5ZmQxN2NkN2VlMGRmIGxlZ2FjeS10cnVuaworMjM4MjEgODdlNWZlMDU2ZDI5OWY1ZWEyYWFjNTJkOGE3ODkwZDYxNDJlYTc3MSBsZWdhY3ktdHJ1bmsKKzIzODIyIGFlNTA3Y2Y2N2ZiZmM0M2QyZjE5MTg5OTIwMDgxZmM0NzBkMjdkNzkgbGVnYWN5LXRydW5rCisyMzgyMyA0YTI1N2E1OGJlOGJmYjczMzFhZjc2YTZiOTAyOTQ4ZDFmOGQ0MzU5IGxlZ2FjeS10cnVuaworMjM4MjQgZGE4MTEyNWIyYWY4ZWFmMTBiZDEzMmZhYjMwYWU3NjU3MmJkNjM2YSBsZWdhY3ktdHJ1bmsKKzIzODI1IDQ3M2FkYmY1MjE3MTg0OGQyMTczMzE2MTQ4M2EzMGU1NTYwMjg3MjQgbGVnYWN5LXRydW5rCisyMzgyNiBlYzcyYjYzZDI2OWFlYjlhMzI5Mjg0YjAwZDdlNmFiNWVjYzdhNjRjIGxlZ2FjeS10cnVuaworMjM4MjcgZDA2MjFhNjY5YzU2OTBkMDZiZGUyODUwZTZiMzZkNjk1ZDMzNGM0YSByMjJiMS1icmFuY2gKKzIzODI5IGVjMDVhZmFmZTEzYjk1ZDdmNjRhYTUxMmFhYjc2ZTdlMDdjNzgwZjUgcjIyYjEtYnJhbmNoCisyMzgzMCAzNzdiMDlhYzcyNmU3ZWEyZTI2NTg0MjcxYjdhM2RhOGQ2ZmZmYWQzIHJlbGVhc2UyMS1tYWludAorMjM4MzEgOTA1OGU0OWM2YzU3ZDIzN2I5MGJhYzY0MGU4YzUwNGU4MGNjMDJiNCBsZWdhY3ktdHJ1bmsKKzIzODMyIGNlMmEzZjE1NjE1ZjZiYTNhZjcyNzNlYzEzNTMyMjRjYmViOTlhYmIgcjIyYjEtYnJhbmNoCisyMzgzMyA4ZGRkZmZmYjlmMmJiN2U0YzhmN2MxYzkyZTViZjI3NmUyMTUzNjFmIGxlZ2FjeS10cnVuaworMjM4MzQgNmY5OTAyYWNlMThkOGViNmYwYjgwMmJlNjkyNmEzZTM2ODhiZmM2NiBsZWdhY3ktdHJ1bmsKKzIzODM1IDA4ZjE2NWYxMzVhOGE2NDM2MGU0ZDgyMzU5Zjg0NDI1ZGI4NjUzZGYgcmVsZWFzZTIxLW1haW50CisyMzgzNiBjYjhlOGI0MmNkZmJlYjVlMTc0MzA0YzQxZjlhNGY5Y2I4NDc4ZTYxIHIyMmIxLWJyYW5jaAorMjM4MzYgZTlmYWQ1NWVmNzA0ZGJlYmNkZTVlMTRjYjhkYjk2YWY4NGMyMmU1NSByMjJiMS1icmFuY2gKKzIzODM4IDYxODA5YzUxNGFkODA2OWVmMjQzMjM2MjBkNjNjNGVkMmNkNGVjMGYgcmVsZWFzZTIxLW1haW50CisyMzgzOSA4MDVmMTg0YjZkZTA5YTUyOWNhMjAzN2MxNjNkZWE1NzY0ZmZmMmJmIHJlbGVhc2UyMS1tYWludAorMjM4NDAgZDA2NDQ2ZDRlNzhkYTIzNDA4YmY1ODU1YjIzMDhjZjkzOGJhNjViMiByZWxlYXNlMjEtbWFpbnQKKzIzODQxIDcxMTEzNWNlMWU1NGY1ZTc2OTExNTAxMmQxYzlkM2ZkZGMzN2QzMTkgcmVsZWFzZTIxLW1haW50CisyMzg0MiA1NDFmODI1YzdkNjM3Y2VjOWRjZmVjZDI0YmM2ODU2YTkxNjU0N2VkIGxlZ2FjeS10cnVuaworMjM4NDMgYTliYWJhMTZlYmYzOWQxYzk5ODcwMDBkNzdjOGZkZmVlM2ViMWFiNiByZWxlYXNlMjEtbWFpbnQKKzIzODQ0IDVmNDk1MGRkMzdjOGE5YjczYzQyMTZiYTc3OGU0MmExMzE1ZGZhNzUgbGVnYWN5LXRydW5rCisyMzg0NSA1YWY2Yzg5YzhjYjc1ZjMzN2QzMDVlOTc2ODc5MjkwMDM5YjNmNGQ5IGxlZ2FjeS10cnVuaworMjM4NDYgMTUxZTQ1ZTk4YzExZDM1NjMwMTk1N2EzMDBlNTIzZjgxYTIzZDM4YyBsZWdhY3ktdHJ1bmsKKzIzODQ3IDJjYjMyZjdmNzhjMmQxZTRmZDZlZjgxYjI2Y2IyNDdlYTgzZGMwYTIgbGVnYWN5LXRydW5rCisyMzg0OCBjZTg4ZWI0NjVjZTc2YzEzYWQwOWQ5MTFiMGFiMWRkOTFhN2YzOGJhIGxlZ2FjeS10cnVuaworMjM4NDkgOTA1OGJjY2U2OWUzMThjODBkNDRmYTAzYWYyMmVhNWMyYjAyNmY2MCBsZWdhY3ktdHJ1bmsKKzIzODUwIDg0YTU4NmFjZGMwMjM3MzNhYWUzZmUxZGE4ZWUzMTMzYjM3Y2E1M2UgbGVnYWN5LXRydW5rCisyMzg1MSAzNzZlZTE3NGVjZDA3NzQyMTE2OWI4OTAzM2MwNDc3NGU0YjQ1N2JiIGxlZ2FjeS10cnVuaworMjM4NTIgYmYwM2I4ZTNlZjkzYWYxMTUwOTA5ZDhjOTVjYzMzM2NiNDYwMzdlOCBsZWdhY3ktdHJ1bmsKKzIzODUzIDgwYmNjOGI3ZDYxOTBlYjczZTBhMTFmNDFmNjQwNGUzZWFjNDdhNWQgbGVnYWN5LXRydW5rCisyMzg1NCBiNWNhMDY4N2JhNmE4MDk2YjExYmJmOGQ2ZTZlOTVlMGJhY2JmYWFlIGxlZ2FjeS10cnVuaworMjM4NTUgODg3YTkzZjlkNWQ1ZDljYmZhMzhjNGJlYmQyMzI1MDljZjM0ZmUwYSBsZWdhY3ktdHJ1bmsKKzIzODU2IDdkMTI1NzQ4NWFlZjJlN2I4MGY3MWQ3ZmVmYjhiMTBlMDFiYTI4YTQgbGVnYWN5LXRydW5rCisyMzg1NyA5YmQ2MDNkNDM0ZjU1MmFiODMzYjAzMzE1NTU3NTUwODFmN2FhZWMyIGxlZ2FjeS10cnVuaworMjM4NTggMzI1ZDUxM2E1MGJiYThlOTAwYmI2ZmE0MmVhYjI2MDRjYWRlMjJlNCByZWxlYXNlMjEtbWFpbnQKKzIzODU5IGFhZDc2MjUwM2QxMWU4YzI0NDMyNjVmYTk1NDMyZTMwMDNjNzNmYmIgbGVnYWN5LXRydW5rCisyMzg2MCBkMzI5ODQzNWQ4NWI1ODRiNjUwOWZiMDhiYmNjMjc3M2VjZGFmNzYzIGxlZ2FjeS10cnVuaworMjM4NjEgMDUwZWQ4YTIxY2RlNWRkZjNlZmI1YWQ1ZjMzMmU4ZGViNjE0ZTAyMiBsZWdhY3ktdHJ1bmsKKzIzODYyIDkyNDZiNmM3ZTc0MjJiYzZlOTIzNTczYzAyYTIzMzc1NjE5Njk2ODAgbGVnYWN5LXRydW5rCisyMzg2MyA4MmJjZmFjODk2NDI1Y2M4YWZmZDVjNzM2ZDE2ZTgxMmVjMjVjODY3IGxlZ2FjeS10cnVuaworMjM4NjQgMjVkNzY0ZDg4MTQ5MWM3M2QxMDE5OGU0ODI4NGUxZWUyMGE0ZjU1YyBsZWdhY3ktdHJ1bmsKKzIzODY1IDBkNWU2ZmMwNDgxZDYxNGFjZmM5MDI0ZWQzN2RiYzE1YzAzMGE1MDUgbGVnYWN5LXRydW5rCisyMzg2NiBjNGQ5ZDg2NzQ1MDYyZWExZTMyNGIxOTQ3YjE3NzlhODFhNGE5OTBmIGxlZ2FjeS10cnVuaworMjM4NjcgY2E1ZjJmZjgzOTc5MmFjODJlOTViOTlhM2U4ZTUxYjhkMDIzZTIyYSBsZWdhY3ktdHJ1bmsKKzIzODY4IGI0N2UxNWZhNDNlODUxYzM2MDcyYjhmNjg4OGZmMDUxN2NiMmVkNjEgbGVnYWN5LXRydW5rCisyMzg2OSBlYjZiOTUzZWNmN2NhN2VmMzUzYzgyMjk1MzFjMmE3YjkwMTg4MjZkIGxlZ2FjeS10cnVuaworMjM4NzAgZmY1N2ExYTM3MGIzNTAxZjI1MjI2ZTJhZDI2YjZjNzJkYzRjYTQyMCBsZWdhY3ktdHJ1bmsKKzIzODcxIGVlYmRkZDNiOTRhNTMwY2E5MTUwM2E0NWE4ZTZiMjVmMDJlZGYwMDkgbGVnYWN5LXRydW5rCisyMzg3MiA1YzFkZmQ5Mjg3N2Q0NTdkNzUxMWE1Y2Y3ZjQ4YTkyNjFlNzE0ZGIzIGxlZ2FjeS10cnVuaworMjM4NzMgOTAwOWMyNTY5NGQxZmMxYmJjZTU1YTBkYTBkNjBhNzkxMGJiODc0YSBsZWdhY3ktdHJ1bmsKKzIzODc0IDRiNzlkN2Q5MWI0ZjlhMmEzZTkzZWUyOTM4ZDk1NGVkY2I3ZWE2OGYgbGVnYWN5LXRydW5rCisyMzg3NSA3OTQ1NjM5ZGYyNjUwMGNhY2RkZDA0MTY4YWE4ZWM0NGI3YzIxYjc1IGxlZ2FjeS10cnVuaworMjM4NzYgNzM3MDJkN2YxM2IxYjE1OWEzOGVlZTllNzBmZWViOTdmZmQ5NjFhNyBsZWdhY3ktdHJ1bmsKKzIzODc3IDJkOGRiZWJmODFlMDZhMTdjZWY0YmM4ZmRmZjQzZjM2ZDg1NzExY2EgbGVnYWN5LXRydW5rCisyMzg3OCA3ZjNkMGNjMjE4ODk5NmZmMDMxZGI3YTNiZjcyYTk5ODk5OWFmN2NkIGxlZ2FjeS10cnVuaworMjM4NzkgNjg5ZDBiYmM5MWIxMzkyNTkyNzNmNGFjYWJiYWMxMDEzNjc5ZDZhZSByZWxlYXNlMjEtbWFpbnQKKzIzODgwIDgyOGNiMGMyYzQ4MDVkZTMxNGRiMzIwNDQ1NDNkNTM5YjU4ZDI0YjMgbGVnYWN5LXRydW5rCisyMzg4MSA3ZGNjOGEyODEzM2EyMmIwOTQzZTg1MWI1OGJhYjdmOTdhZWU0MmNjIGxlZ2FjeS10cnVuaworMjM4ODIgNzE2YTQwNmU5YjRmYjNkNWE3NDcwOTVmMGRlNGViZDhlOGZjOWQ1YyBsZWdhY3ktdHJ1bmsKKzIzODgzIGJlYTk0MDRjZTYyY2QyNDgzYWNiZDdmMzgxNWViMWJlMDEyZTNkYTAgbGVnYWN5LXRydW5rCisyMzg4NCBiZjRiMzc1MThjMTQ3NzJlYTIzZWFhY2JmMzAwMjczMzM0OTcxYTYyIGxlZ2FjeS10cnVuaworMjM4ODUgNDAzZGQ1OWNhN2Q1ZGYwMTIwMzhkZWM3YjM0OTUwOGVjYWRhYWQ0MSBsZWdhY3ktdHJ1bmsKKzIzODg2IDMwMmExYzAyNWRjNzkyZWE4ODJiOTQwNzAzNGY4NDY4MzQ0YWY4N2EgbGVnYWN5LXRydW5rCisyMzg4NyBhM2Q2YjMxZThiYjlmZGNkZWM0MGQ4MjQ1MDBlZGI1OTBhNTRiYzZlIGxlZ2FjeS10cnVuaworMjM4ODggYjk3NDUyMjliZDEzMmM3MjQ5YTlhZWRkMjI5OTcwZmQ2M2FjZGEzYSBsZWdhY3ktdHJ1bmsKKzIzODg5IDU3YjUxOTY2YTRmMWYwNmYzMDcyZTY5MWQ5OGM3OGM3MDQyNjUxOTUgbGVnYWN5LXRydW5rCisyMzg5MCAwYjFjMTM5NGJlYzYxMTkzYTAyZGE5YjA1NjdmODRhNWYzMzYyYWM4IGxlZ2FjeS10cnVuaworMjM4OTEgZTRmNTEzODI5MmU2NTliZTI2NWZkNzAwYjRhMDk2YTI4NWRkZTlmOSBsZWdhY3ktdHJ1bmsKKzIzODkyIGI2ZjgxOTdmNGRmNzg0YWFhYmE2OGUyOGZlYTNiNDA0ZDY5Y2MwYjMgbGVnYWN5LXRydW5rCisyMzg5MyBhYTU2NDc1NjllZTJhYjM0MTVmYjJkMDgzNmRhMzMxYTMwMzZlOWRiIGxlZ2FjeS10cnVuaworMjM4OTQgNGZiNzcyN2U0ZjQ3NWJlYWMwODQwZWY1YTQxZGE2ZGE1ZTM3MmUwNiBsZWdhY3ktdHJ1bmsKKzIzODk1IDdjMzgxZGQwNzc5Y2E3NmM5ZmIwNjE1NjUyZTg3OTY5YjU2NDJjZGEgbGVnYWN5LXRydW5rCisyMzg5NiAyYzFhNDU4NGE3MDQzMzVlMDU2OWU5OTA1MDY4NjQ0Y2UwOWZlMWU3IGxlZ2FjeS10cnVuaworMjM4OTcgM2QyOTliMTU2NTExMThjYzk4ZmVmMjkzNjg1YjNjOTYyNTliODUyYyBsZWdhY3ktdHJ1bmsKKzIzODk4IDk3YjE4YzA5ZDIyYTJhMzQ2NDE3YTFjMTA3ZjI1ZDg1N2RlNzc1ZmUgbGVnYWN5LXRydW5rCisyMzg5OSAxNTk4NTg4ZWYxYWRiN2U0ZjhkOTQxNmNkNjI1MWU5YTZlNWY3MmE3IGxlZ2FjeS10cnVuaworMjM5MDAgYWNjN2UzYjRkMDQyZmVlNWE3NzQyMzM5ODE0Y2U4N2JhMmM5ZTU2ZiBsZWdhY3ktdHJ1bmsKKzIzOTAxIGU0OTZiODUyMjljNzliZDAyYTljNzZjOTIzNzg4NzdjYTFiYzY4YzcgbGVnYWN5LXRydW5rCisyMzkwMiBkNWIzMWVmMjNjZWJlMzFmMzZiNzEwZWU0NTAzZjRlMjdhNzY1NWUyIGxlZ2FjeS10cnVuaworMjM5MDMgNmM4NGQ1NWFiYjU4YTEzNTdhNzBjODhhZWNjMzlhZjA3NTc2NTVkMCBsZWdhY3ktdHJ1bmsKKzIzOTA0IGZlZDhhMTg4OTRmNWY5YmJkNGM4NWY1MGUzMDUxNTdiZDQxZWRjMWIgbGVnYWN5LXRydW5rCisyMzkwNSA4OTliZWJjODkwNDdlNTA4MGIzMjA5YjQyZDIwODk2ZDVmNTEzNmUwIGxlZ2FjeS10cnVuaworMjM5MDYgMDRmMjgwMWQ5OTc3MGY1OTM0N2NhNWVlNWUxZDlmY2U3MWE5MzljOCBsZWdhY3ktdHJ1bmsKKzIzOTA3IDNmODBjOTFiNWMzY2ZkYjU0ZThhMGY3YmU2ZWFmZjFkN2Q0YjhkZjQgbGVnYWN5LXRydW5rCisyMzkwOCA4YjllMmZiY2FlMWZmY2ZiY2MyNGQ3NTk2MDFiYjVmOGFhYjkwNDAyIGxlZ2FjeS10cnVuaworMjM5MDkgNmYyY2IxODA2OGRkZjkwNjUyZTc0OTk3Njc4M2NjOTIyMmZkNDEzNCBsZWdhY3ktdHJ1bmsKKzIzOTEwIGFhNDZjNjYxODhkMzZjOTU1MDIzZDEyYmQwZGNiOTUyNWZjNzFjMmIgbGVnYWN5LXRydW5rCisyMzkxMSA3MWE5YjA1M2FiNDJiMmNkMmJiNTA3OTg0Y2QwOWI0NWIzYTdkYmRlIGxlZ2FjeS10cnVuaworMjM5MTIgYzgwZGFmY2UxYjc0YTZhZGY5NDMyMzI3YWNlMDlmNTBiNTNiY2M2YSBsZWdhY3ktdHJ1bmsKKzIzOTEzIGFiODMzZDlhMDliOTgwYWYwZGZiOTc3MTcwMDY4NTlmMWIyNTllZjkgbGVnYWN5LXRydW5rCisyMzkxNCBlZjc4ZWM2MDJhNDA2MzgwN2QwOWNmNGZlMDkxYmQ2NGFlMzZlNzE2IGxlZ2FjeS10cnVuaworMjM5MTUgN2M0MWM0ZmJmOWM3M2MyYTc1ZjQzMWUzNzg1NTc1MmY3ODZiYTlmZiBsZWdhY3ktdHJ1bmsKKzIzOTE2IGIwNzg5OTFjYjU2YTNkMDNmMDRjNWQyNDBhMjVlNDcxYWIwMzU3OGYgbGVnYWN5LXRydW5rCisyMzkxNyBjYWJiNTY4YTU1OGIxZTYzNGNlNWUzZjUwMTEyYjU5NzQ4Mjg2ZTUxIGxlZ2FjeS10cnVuaworMjM5MTggZGQ3OGIxYTcxZjNlYWY3MzEyMTVkMjQ4M2VlNWFhNDRlNzA0ZTlkOSBsZWdhY3ktdHJ1bmsKKzIzOTE5IGZlYzk1MGQ4YzI1ZDdiNGZhYjJjOTMxNDhiMjQ2NDhjZWEzMzFlOTUgbGVnYWN5LXRydW5rCisyMzkyMCA1Mjk1N2EyZGZhZmU2OTA0NTk4OTYzMjQyMDNiNGJmYmVkMWMzMGM1IGxlZ2FjeS10cnVuaworMjM5MjEgZWIwMDRjYzAwOGQyNzc2YzhhODEwMTcwYTEzN2I1MzU0ZWIxMWYzMSByZWxlYXNlMjEtbWFpbnQKKzIzOTIyIDhkZWIzYjVmZDdjMTc4OWZiNmQyOWM5ODNhNDhmODQ1MjllYzgzNTIgbGVnYWN5LXRydW5rCisyMzkyMyAyZDNjZWU5ZjE2MzMyMGFjMzQ2MDc4NWQwMzFlZGEzODE2NTRlYmEzIGxlZ2FjeS10cnVuaworMjM5MjQgNzU3YmNmYTIwMWRjMTk4YTQ2Mjc4MjI3YjM5ZDQzMjAyOGRhNzAwOCBsZWdhY3ktdHJ1bmsKKzIzOTI1IGVkZDlkMGIzYzQ3ZWZhZTdmYjIwMTBlMTMzMjkwYjU2ZWFhZjBiN2YgbGVnYWN5LXRydW5rCisyMzkyNiA3MzQ0Njg3YmYyYzBhYjhmZGQ5ZDUwZDcxNzE5OGY3ZjE3NGQ3ZWNjIGxlZ2FjeS10cnVuaworMjM5MjcgZDBlYjIwMzZlY2NhZjI2NGU5NWZhNWFhODdhZjRmZDkyZDRmN2Q0ZSBsZWdhY3ktdHJ1bmsKKzIzOTI4IDM5MzU1NmFkYjI5NTBhMzc3MmI0MWE2NWZjZDg2ZWFiZjFiZGM5YTggbGVnYWN5LXRydW5rCisyMzkyOSBkY2FhMmM4OTQzMGU3OGZlYzExYTdmYWZiODNiOTdhN2E5MjBjZWEyIGxlZ2FjeS10cnVuaworMjM5MzAgY2UxM2FhMzFlMTg5YTA5ODFkYzQ1YzJmMjU2NmMwN2IxNDVhZDIxZSBsZWdhY3ktdHJ1bmsKKzIzOTMxIGMwNWQ0ODk1MjM0YzEwZWI5ZGYxZTMxYTkyODAxMmM2OWRlNzhhNDYgbGVnYWN5LXRydW5rCisyMzkzMiBmNzAwOTE2N2RkNjdjMzhkZDA0YWQyNTYzMDk3NzM2ZDgwOGE4MTE5IGxlZ2FjeS10cnVuaworMjM5MzMgYzQ3OGE1MDkxZjNmZmZiZDVhOTg5MjNjZjk4YmFhYzIxOGJkNzM3NiBsZWdhY3ktdHJ1bmsKKzIzOTM0IDVjZDhjODdhODhhZWQ4MWI0NzRhMGVhZjI3MDE4M2I1MTM2NGYwM2YgbGVnYWN5LXRydW5rCisyMzkzNSAwMzk3YTc1YTViZmRkNWZjZmQyYjE0YmRiYTVhOGE0ZmY1Y2Q1OWRlIGxlZ2FjeS10cnVuaworMjM5MzYgM2NlMDNlMmYwMWVmN2YwMTZmMjQxOGYyZTI3NzQ5MWQ3OGUzOGQxNSBsZWdhY3ktdHJ1bmsKKzIzOTM3IDg4YTI0MmJmYjIzYWIwYTE1ZDk0YWI4MDBkMTc2MjFlOWZjZTAwMTYgbGVnYWN5LXRydW5rCisyMzkzOCA5OGU1ZDkwMWJmZGZkOTIwODgzNDQzM2ZlZjlkMjgwNWE4N2Q4MTA5IGxlZ2FjeS10cnVuaworMjM5MzkgM2U5Yjg1ZGU0NDdiOWE2MDdjNmNlMjk3NGFmY2RkOTliMDkxZjk4NCBsZWdhY3ktdHJ1bmsKKzIzOTQwIDUzNWRjMzY1MGJlY2Y1M2RlYWVjOGNmMDBmY2NkNDZmZTRjMWVhMzcgbGVnYWN5LXRydW5rCisyMzk0MSAzY2ZkNTc4ZjY0OGIyNDhlZGYyMDc4YmRjMWQyNGViMGIyOTA0ZDY3IHJlbGVhc2UyMS1tYWludAorMjM5NDIgM2ZiNDAzZWFlZGUxZTYyN2FlMmYzYzY3YTE5NzA2ZGQ3MTBhYjQ5OSBsZWdhY3ktdHJ1bmsKKzIzOTQzIGQ5NTFjMmRlMDk1Y2FlYzQ5NmViODhkZjUxZDI1MGQ5MmU0YTU5MzkgbGVnYWN5LXRydW5rCisyMzk0NCBhZjlmMjkwMjY0YWZkZDc5M2I0N2MzNzBhNjllMzk3NTdjZDI3YjhmIGxlZ2FjeS10cnVuaworMjM5NDUgYWJhN2E0ODk1ZTRkYWU0OTFjZWIwNDE4MTYyYzkyY2ZiMTI4ZGJiYSBsZWdhY3ktdHJ1bmsKKzIzOTQ2IDc0MThlMGQ1ZmMwMTBmYTE4NzlkMDY2MDc5NTY4YWFmNTg2YjE2ZjMgbGVnYWN5LXRydW5rCisyMzk0NyBhZTk0YjVmN2RkMzBmNTU0MTAxOWNiMWM4NThiNDkyNWJlM2UyMzQ3IGxlZ2FjeS10cnVuaworMjM5NDggZjYxNDgyNWQzMjZhYzI3OGIzYjc5NmQyMTE0YzAwMzMyYTNmNWEzMCBsZWdhY3ktdHJ1bmsKKzIzOTQ5IDYxZThmMDFkZTgyMTI1ODU2M2U0NDdkOWNiYjEyZTdiYWJjYTQyNmYgbGVnYWN5LXRydW5rCisyMzk1MCBlODljMjVjYTZiMjlmNjA1MDY3NmUxZjZiN2NlY2E1M2I1ODM5ZTBjIGxlZ2FjeS10cnVuaworMjM5NTEgZTNjMjRmYzIwYThkYmMwNmM0NDk0Mjg0OGQwY2VlNjkxZDU2NGI3NyBsZWdhY3ktdHJ1bmsKKzIzOTUyIGEwZjFjMmQyYWM5ZTRhMjMwMzMyMzQ5YzQ3ZDcyNTUwYzUzYzVjNGQgbGVnYWN5LXRydW5rCisyMzk1MyBmMzFiMTJhNDI5NTFjZDc1N2YyMmIyMDEwMjVmNWNjNTNiYWIzNzNlIGxlZ2FjeS10cnVuaworMjM5NTQgNTA1ZGQzNGUwZWViZjlmODI4OTM2YjU5NTJhZjdmZjg1Zjg5YWYyZiBsZWdhY3ktdHJ1bmsKKzIzOTU1IDQzM2FlNDgzODcwMzVmMTk2NzNmMWRjNzFkNTcwZDQ1M2NlNGNkOTYgbGVnYWN5LXRydW5rCisyMzk1NiA5OWFkMmE5ZDIwZTFjMTI3OGYwYWNmYTg2OTYyMDYxYTkyYmExOTZhIGxlZ2FjeS10cnVuaworMjM5NTcgMzExYTJhYmVhOGE0N2FjMzJhMzUzNGIxZTU5ZjNiYzc5YTdjNTQwNyBsZWdhY3ktdHJ1bmsKKzIzOTU4IDM2N2NkOGU1ZGY0Nzk0OTRlN2NlMDc1YmMxZjVhNDU0M2YxMDcyNGUgbGVnYWN5LXRydW5rCisyMzk1OSA5OWVlNzE5MTk3YmE3ZWMwYTQwZDM1NzFmOGRkOWQxOWEwOTE3NjQ0IGxlZ2FjeS10cnVuaworMjM5NjAgYTAzMzJhZTg0OGUyNmZiOTZhYzYwMzc5ZWI2MzFkYjNmYmEyYzBhOSBsZWdhY3ktdHJ1bmsKKzIzOTYxIDg2ZmIxOGZhMzQ2ZjhhOGE2OTc4NzQ0ZjI3NmI1ZDQ4ZTVmYjE3NjYgbGVnYWN5LXRydW5rCisyMzk2MiBjM2UwYmQyMDc3NWNjNDlmNDM0NGI1NmMyYTUyYmE0MTNmY2UyYjQzIGxlZ2FjeS10cnVuaworMjM5NjMgMzgzODBkNWYyN2Q0MGIyY2I0NmRjMTViODA0YmU3NDQzMjg2NWFiMiBsZWdhY3ktdHJ1bmsKKzIzOTY0IDY5MDM0MjBmMGE4MjVhY2NlZWY0OThhYzljOGFjNWI5MDc1ZTMwNDEgbGVnYWN5LXRydW5rCisyMzk2NSBkMDIwNjhkMTYzY2ZjZWRlYzEwNjI3OWVhZDI3YjlmYjBhMzhkYjMwIGxlZ2FjeS10cnVuaworMjM5NjYgYWRmNTY1ZjBmOGFlNjA4NWVlODBjYmJlNjBhN2ZhMGFjOGE4NzBjOSBsZWdhY3ktdHJ1bmsKKzIzOTY3IDM5ODEzNWU0MDBjN2Y4M2I1MmQ5NzZhN2I2NGY3ZjNmOWUxYWI1YjEgbGVnYWN5LXRydW5rCisyMzk2OCA2NDhiYzc0YzQ3YWI3MjYyZTNmODFkZDNhOTQ2MTBhZWNkMjJkZTQyIGxlZ2FjeS10cnVuaworMjM5NjkgYjIyOTIwOGEyYTcyNzM4Yjk4ZWZkZDA5MTI0OTZkYmMyYjZiNThmOSBsZWdhY3ktdHJ1bmsKKzIzOTcwIGZhMGJmNmM3OWUwNDJhMDJhZjMzZDgyOGMwODlhMzQ3MDkyOGEzNDYgbGVnYWN5LXRydW5rCisyMzk3MSA1ZGUzYTU5NDcyNTdiYmIxNDQ2NDhkMTM2M2Y0YTNjMDI2MGJhYTBkIGxlZ2FjeS10cnVuaworMjM5NzIgNWY2ODUwZDFmOWU4NTIzOTIxZGRhMWE0OGI5MDk2NDY2ZGMzNzdlYSBsZWdhY3ktdHJ1bmsKKzIzOTczIDRiM2VmYzc1MDEzOTZmYzIwMWQ2Mzg2NDVkNDg4ZGZlYzdkYmRiOWIgbGVnYWN5LXRydW5rCisyMzk3NCBiM2EwMGQzMTY1YmVlMjMwOGUxMjU5MzUyZWI0YzljZWRiYTdhYjJiIGxlZ2FjeS10cnVuaworMjM5NzUgMjkyNWUyN2EyODFjNTIxYTNiZjFhYTE0MzFiNjNkYzk5YWEzOTg3MSBsZWdhY3ktdHJ1bmsKKzIzOTc2IDc5OGY2MTk5N2MwOGQ1ZDJkMDQxZWRiZmQxNzRiYTUxZTgxZjIyMzAgbGVnYWN5LXRydW5rCisyMzk3NyA0MTMzYWJlZjVhYmJkMWEwZmM5YWQ4MzJlNDUyMTVjMTRlMjU5MmQ2IGxlZ2FjeS10cnVuaworMjM5NzkgMTg0YjhiOWEyNjU0Y2JkZmNmY2Y1N2M0NmI3MzY5MjA2YzcyMjQxNCBsZWdhY3ktdHJ1bmsKKzIzOTgwIGU5MTJiNjgzZWQzZTE1MzZmMGI0YzlmNWU2ZTFkM2I1NmEyMGY1NDQgbGVnYWN5LXRydW5rCisyMzk4MSAzMTA0NTBlNzRmMmY1N2RkZmRiYWIyYWU2OGE5MmJiMzVlNDc3NDY1IGxlZ2FjeS10cnVuaworMjM5ODIgYTQ0Y2MwYzIxY2ZlMzE1NDI1ZTM4MGU2NDZjMDFhZDJkMWUzMzMzNyBsZWdhY3ktdHJ1bmsKKzIzOTgzIDI4OTA3NjliMWU2OTY2MjRmNmY5M2QwYTk4MWRjNDFiYmJjNGRlMzUgbGVnYWN5LXRydW5rCisyMzk4NCBhNmE0YmQyZjA2ZDBmOWZlMjg0NzEwODQ0OTc4ZjQ1NmEzZmJmNGFhIGxlZ2FjeS10cnVuaworMjM5ODUgN2Y0MDg5NTE5OTI2ZTVjNWExNDMzMTcyNDRjYjRhZGJkZjNjMTUyNCBsZWdhY3ktdHJ1bmsKKzIzOTg2IDA5MWY5NjU2ZDc5YjM1OTE4ZjkwNDJjYWI2NzhlYWEyMTgyNTFjYTcgbGVnYWN5LXRydW5rCisyMzk4NyA1ZTZmODE4N2JkNDg5M2YzOTU0NTBiMmYxYzM4NDg1ZWY3ODMwN2M3IGxlZ2FjeS10cnVuaworMjM5ODggZGNmNzY5YzEyZDhiNDEyZmJkYjcxNTc5NTIyOTQ1NDRiZGVjZWI1MCBsZWdhY3ktdHJ1bmsKKzIzOTg5IDg0NzE1ZDUyZDk1NGU5ZDUwNzk0N2I1NjViZDAwMGQwYjkzNGViZjYgbGVnYWN5LXRydW5rCisyMzk5MCBjNjM4NDU5MWQ4NDZjZTZhMWIzZDY2YzcyNGExNzM3ZTM1MjM2NGQ5IGxlZ2FjeS10cnVuaworMjM5OTEgNWUzNDdlNGUwNWJmNWVjYzhiMGRhNDIzZmQ0OTM0ZDVhNjhkY2VlNyBsZWdhY3ktdHJ1bmsKKzIzOTkyIGFhZWZjMmYyMWJhZWYxY2UzOWU4MmQwYjM0OTRmY2FhZDYxZjFmYjIgbGVnYWN5LXRydW5rCisyMzk5MyBhY2I4NTRiODk3YmI2MTU0Zjg0OWEzOTBhNjg0MmVhM2RjYjk3MjQwIGxlZ2FjeS10cnVuaworMjM5OTQgNjc2ZjEwNmE1MDAyM2Q0MTBmMjVhMDAzNjFiN2Q0MTIzOGYxMDJmZiBsZWdhY3ktdHJ1bmsKKzIzOTk1IDZhYzQ1MjQ0YzQxZTBhZTdjZDU3NzBjNTg0NDI1MzNmY2QzYzBiZjkgbGVnYWN5LXRydW5rCisyMzk5NiBmMjI0NjMyZDAyNjAzZjFiNjg0MzZlZjQyNjdiOTQ2NWI0NWRjYjhmIGxlZ2FjeS10cnVuaworMjM5OTcgNzEzMDc1MGE2MjIyMmU0NGZjNGIxZWMxYzQ4NGRlMjQ2NzFhOTljYSBsZWdhY3ktdHJ1bmsKKzIzOTk4IDU4N2I3NDg1NGY4YzA1MDQ5MmJlM2E5ZmVlNjA5MTE4YjJjZDFhMTIgbGVnYWN5LXRydW5rCisyMzk5OSBhYmQ3MWU4OTg0MGY3Nzg0MWYwNTQ4ZjZjMmRhZTlhMThmMjcwNDRmIGxlZ2FjeS10cnVuaworMjQwMDAgY2Q4MzVjYWE1MDZjMDkyYjEwNGExZjI2NmZmNTg2MTY0ZWFiN2UzMiBsZWdhY3ktdHJ1bmsKKzI0MDAxIGNkNjAwMDM5YTEyM2UwZjdiNTU3M2FlYTBiMmVkYWY1ZWM5YTMwZTYgbGVnYWN5LXRydW5rCisyNDAwMiA3M2NhYmU2NjRjMTFlYjZiYTdiYjJiNDIxN2Y0YzcwYzZkNTE1ZjliIGxlZ2FjeS10cnVuaworMjQwMDMgODM1OWMxMTg5ZjczMDI1MDQ5ZGY5MWUwZGQwYzYyZWFiNTVkNjJjYyBsZWdhY3ktdHJ1bmsKKzI0MDA0IGIzYjJmYTc2YTM5MjllY2VmMDZjMWI3OTM4MDFlM2E3ZTI4NjY5OGEgbGVnYWN5LXRydW5rCisyNDAwNSA2MzVmYTE0ZWRhNTA5YTgxZWIzNTQyYzk0MGUwNDlmNTE5MDVjNDMzIGxlZ2FjeS10cnVuaworMjQwMDYgYjA2MjgwNDNlNTM3ZGFkNzg0YTUwMWJmMmY2MjY5MGQ5ZjRkZDg3ZiBsZWdhY3ktdHJ1bmsKKzI0MDA3IGZhYTI3MjZkZWEzNzE1NzgzN2M4YjkyOTYyYjIwNmNjMjEzNjAxOGYgbGVnYWN5LXRydW5rCisyNDAwOCBhNzg4NGU3ZWVjYzliMjU4OTM5OTE3MWM5MTU4N2NiMmViMTFjZGM1IGxlZ2FjeS10cnVuaworMjQwMDkgMDBhNTgxYmRlZGViYWYwMjQyZjUxYzlkYWI3ODgwMWU5NWZmNTQ0OCBsZWdhY3ktdHJ1bmsKKzI0MDEwIGM3YWFjNzhlMjNiNDljMzFiZTE5NDczZGRiOWRjYTQxZjg4MTEzYzMgbGVnYWN5LXRydW5rCisyNDAxMSAzYjg3NzQwZDFiYmM4NWE2Mjg4NDQ1NmRkOWUwNDY4MjcyYmJiOWI2IGxlZ2FjeS10cnVuaworMjQwMTIgYWQ0NWQyMmIxOTVkMTNhODI5ZjUyYTQxNDcyOTMzNDFkYWMzNzZlYSBsZWdhY3ktdHJ1bmsKKzI0MDEzIDNlNDYyNTgxOGY1ZmY1OTY0Y2E4ZTljMGFmOGU5MjJkZmVmYzEwNmMgbGVnYWN5LXRydW5rCisyNDAxNCBkNWY2YjRkNTgzODBlYWE1ZDY0YjdlZDkyYmE3OTAxNWMyOTlmYTJmIGxlZ2FjeS10cnVuaworMjQwMTUgN2RhNDE3OTk5NTExMTMwOGY2NTk3ZmYxM2JiNzc3ZTZhNmVmOTRmMCBsZWdhY3ktdHJ1bmsKKzI0MDE2IDIzZDIzMGVmNDE1YmE1NmEzMmIyM2UyZmY2NzIzNTg4ZDBjY2Q0ZTAgbGVnYWN5LXRydW5rCisyNDAxNyA4MzYwZDY0MzI3MDdjNWI4NzQ0M2UwM2QxMzI1NzNjZTYzOTgzODdkIGxlZ2FjeS10cnVuaworMjQwMTggNDYxN2QzZDc3MGM1OTkwZmJiMzBkMDY4Y2NlMTNlODFlNTMwODNlZiBsZWdhY3ktdHJ1bmsKKzI0MDIwIDlmNjI5NTVkZTRjM2ExZTcyYjBkMjEyNDJkMDg0OWNkMDEyOGQwMWYgbGVnYWN5LXRydW5rCisyNDAyMSAwOGRmZDNjMjJmNDFkY2UzYTE0OGI2YzBhMmI4MjI3ZjVjYjU0YWYwIGxlZ2FjeS10cnVuaworMjQwMjIgNzc1OTI2YmNmMDY5MjVmNzFlYjc4MTg2OGU4ZmU1MGYwYmMxNmRiYSBsZWdhY3ktdHJ1bmsKKzI0MDIzIGM4YmEyZGIxYzNjMjRiY2FmMDFkNzU0OTg3M2Y3YmJlNjZhYWUxOGQgbGVnYWN5LXRydW5rCisyNDAyNCA4NTEwOWE2MDk5YjVlMWYyN2I0MzM3NjZiM2QwMmI2MjljMGMwOWJkIGxlZ2FjeS10cnVuaworMjQwMjUgZjJhZjQyY2Y4MjdhYjdlMzk2MTFkYjZkNzY3NDMzMGFkMjdkNTc1NiBsZWdhY3ktdHJ1bmsKKzI0MDI2IGVjZDY0OTMxNDgyYzlmMmU3NTUxNmM5NzZlYjcxNThmZTQ2MzgxYjAgbGVnYWN5LXRydW5rCisyNDAyNyAyNzIzMzY2NDhkMWZmMWUyY2ExZTFkZjc1N2UxOGNiNDE0ZDcyYTVhIGxlZ2FjeS10cnVuaworMjQwMjggMTdmN2M5YzFkNjZhNTE0YWJkODgyMzJkNzcxOWM0YTE3NTQ4ZmZhZiBsZWdhY3ktdHJ1bmsKKzI0MDI5IDgyOGJmMzE3ODgwYTIwNWU5ZTc0MzIwNTdhYWNjMzdmZGJmNGVlY2MgbGVnYWN5LXRydW5rCisyNDAzMCAwNTBmYzUyYWIzZDQxNTI3MjBhMTZkYThjNjQ5ZjIxZGMwZmQwNmU0IGxlZ2FjeS10cnVuaworMjQwMzEgYTRiZjNjNWNjNDVhMmJhMjNjNDdhODg5OTk0OWFlZTBhMGIxOTE0MiBsZWdhY3ktdHJ1bmsKKzI0MDMyIDViMjM2ZjM3N2EyNTg4NzFmZGU2MDZmMjcwMzU3ZjhkMzVlMTE2ZTIgbGVnYWN5LXRydW5rCisyNDAzMyA2YWVhYjM4MDI5MmVkNDY5OWM4MmZmOWFiMGZjMWU2NjE1OWI0NGIwIGxlZ2FjeS10cnVuaworMjQwMzQgMDgzNDEzNjIyNTk1OTdiYTRmZjNjMTI5ZmZjZjFmODliNWIzNDhmMCBsZWdhY3ktdHJ1bmsKKzI0MDM1IDZiMTRkMjllNTMwODk3MDJmMGIxMzU4YTc5OGY4NWJhZmE5NWE4ZTYgbGVnYWN5LXRydW5rCisyNDAzNiA3ODFhZTE3NmJhYzJjMjUyMDA4ZjRlNTFjZTJlN2E5MzI5OGE3OTQ3IGxlZ2FjeS10cnVuaworMjQwMzcgMzdiOGQ5MmUxMmY1MThkYzcwZmExOGJkY2RjN2U2NGNhZjRiM2FhZiBsZWdhY3ktdHJ1bmsKKzI0MDM4IDNhMDdiZDJiMDM4NmUxZjNiMGZmZTg0NGZiODFjMWU5ODNhMmY1NDQgbGVnYWN5LXRydW5rCisyNDAzOSBhNmFmMDA5MzQ3ZTEzMTI4ODY5YzVlZjVkNDg3MDkyN2M4ZWI5OTAyIGxlZ2FjeS10cnVuaworMjQwNDAgYjNmNDhjNWQ2ZTE2NzQ4MjZiM2EzNTk5NWNmYzM2NDE1NTYyNmU4MyBsZWdhY3ktdHJ1bmsKKzI0MDQxIDdiMDU0NmVlNDc4OWVkZDY1NzA1YTBiZjlhOTQyYzA2MDA4ZGMxNWQgbGVnYWN5LXRydW5rCisyNDA0MiA1MjNlYzcwMjE4ZTQ5MGE2ZThiODJlN2NhMGUyMmJjZDJiN2UyNzc2IGxlZ2FjeS10cnVuaworMjQwNDMgZWJhNjNkZDBjMmY1YTkyZGZlNTA0NmM4OTk1NDVjNjgyYmUwMDczZCBsZWdhY3ktdHJ1bmsKKzI0MDQ0IDEyNDRlZTE4YmFlYzMzZjQ2ZjZhMGRlZGUwOTRlZjI4YTlkOGNkNzQgbGVnYWN5LXRydW5rCisyNDA0NSA3NDQxMmU1OWJmZjgyNjEwMDBiNWY2ODQ1NTRhZjkzZjZhODljOGMyIGxlZ2FjeS10cnVuaworMjQwNDYgNzZhODU3NTJkNDUyNGMyNDQ4MGIxZTczNTdiMDMyZWE5MGVjMDcyMSBsZWdhY3ktdHJ1bmsKKzI0MDQ3IDEwNDNlMTBiZTc4MDA5MTIxMDQxMTIxOTgzMDFhNzQ3ZTNjNjIwYjcgbGVnYWN5LXRydW5rCisyNDA0OCA3NDRhMTkyMjBhM2NiNzZmZTMzMGRmMjJhZTA1YWY3MTUxODkxNjllIGxlZ2FjeS10cnVuaworMjQwNDkgYTZiYmEzMWIzY2Q3NzU4MTQyMWRlMGMxNDEzMTUyNGJjOGY0YTJkMiBsZWdhY3ktdHJ1bmsKKzI0MDUwIDU3YzYxYzYyMjRhMmY0YjYwYzcyNzhlNmEzYWEzNWE1MDdhMTQ4NDUgbGVnYWN5LXRydW5rCisyNDA1MiA0YmI2NzUzZTdkNTNlZTU3ZDZkNTY5NTM1ZTFkZmExZGIyMmFlNTA1IGxlZ2FjeS10cnVuaworMjQwNTMgNjExMjNiODYwYjQ1NTZhNGFhN2Q2Y2VkMzkyOTZhMjgyZjNlZTFhMSBsZWdhY3ktdHJ1bmsKKzI0MDU1IGFiMmUzMTU4NDlhN2I2YzdhYTMxNWJmYzg1MWZjZjI1NTM5MWEwMjcgbGVnYWN5LXRydW5rCisyNDA1NiA2MTIyNmRkYWRjOTc1NzIzNjg0YzUzY2ZkMzcxNDU2YmYxZmZjODEwIGxlZ2FjeS10cnVuaworMjQwNTcgYjFkOTAyOWUwOWQxNGQ1MTc3NThiZDAwN2FjYjAyNjdkNWQ3Mjg1YiBsZWdhY3ktdHJ1bmsKKzI0MDU4IGEyYjExZDAwYjY5NzQ2NmMyNzZiOTAzZTg5ZDk5ZTgwMjNhNTMwYTggbGVnYWN5LXRydW5rCisyNDA1OSBhOTAwMmZiMGE3ZDc5ZDNiNGNkY2MxMzE0YTEzYTY2ZTM5YzEwYjNjIGxlZ2FjeS10cnVuaworMjQwNjAgNGRmNjUyN2I3ODgyMjA3ODg4OGY3MGI3NTQxMjU4N2RkMjU4NjRjZCBsZWdhY3ktdHJ1bmsKKzI0MDYxIGZlYjgwNTA5ZmIyMTUwNjE4MzZkYThjZTJjNmVhZDUwMDg1MDI2ZjUgbGVnYWN5LXRydW5rCisyNDA2MiAyNWZlZDFkMDk2MDUzNWUzMTA4NTU1ZWE3ZDk3OTEzMWNjMWJjN2RiIGxlZ2FjeS10cnVuaworMjQwNjMgNDBkZTg0YmM2MmFkMDIxNDhmMDJhYzI2MTdjMTgyNTJjMzlkMGJmNSBsZWdhY3ktdHJ1bmsKKzI0MDY0IDk2MWIyNGY4ZTFkODI5OGY3ZjM1ZDg1YTk2ZTY2N2E0Nzc1MzhjZDIgbGVnYWN5LXRydW5rCisyNDA2NSBjOTFmMTdhNGRjN2JmMjJlOTdhYjAyYjhiYzZkZTE2NTUxMjY2ZTVlIGxlZ2FjeS10cnVuaworMjQwNjYgMmY3YjY5MjZlMzhkZDEyNTU2NDhlOTY5Yjg2N2IwOTIxYWIyN2FkZSBsZWdhY3ktdHJ1bmsKKzI0MDY3IGUwYWYyODJmNWRmYWM0YWI5YzNjNWJmNmVhYjVkNmQ1Y2MyN2M3NjcgbGVnYWN5LXRydW5rCisyNDA2OSA3OWZjYmMzMWEwM2VjOWRlNDM5NWVhNDAzYTQ0YjdiNjE5OWQ3YTU4IGxlZ2FjeS10cnVuaworMjQwNzAgODNhM2UyMWE3Y2MzZjQ3YWIzYjNkYzZjYjFjYWY1N2Y2MmM5ZmNiYiBsZWdhY3ktdHJ1bmsKKzI0MDcxIDczYWJlMGFmN2UwNzBlYWMxNzg3Njg3MTJiZDQxYTQ4Zjk5ZGFhNzcgbGVnYWN5LXRydW5rCisyNDA3MiA5YzIzYWJhYjk2MmRhNTBhZjA2MjE3ZDUxZTNjYjM4ZjlmNGY5ODJiIGxlZ2FjeS10cnVuaworMjQwNzMgZmE5N2M5OTcyZDFiMzhlYjc5MWM0MzUyYzBmZWVhZDYwMGYyM2FkZiBsZWdhY3ktdHJ1bmsKKzI0MDc0IDYxMGE2NDRmZDRjM2FiZjQyYWUyZDNmYzUzMGM5MzcxNTk0NDMyMjQgcmVsZWFzZTIxLW1haW50CisyNDA3NSBlZjhiZDhiZTk4YmViMGI1YTI0MTNkYTYwNWRkZGMxOTcxOTAzNDU2IHJlbGVhc2UyMS1tYWludAorMjQwNzYgZWU3MGZhYzk1MzViNDUwOWI1N2I3ZjMyOWNmMDQzYmFlYzgzNDI2ZCByZWxlYXNlMjEtbWFpbnQKKzI0MDc3IDc1NmI5ZWRmMjU0ZmMyMTNkNGYyMzFhMDllY2Y4YTkzOWNmZGY3ZGEgcmVsZWFzZTIxLW1haW50CisyNDA3OCA1MWVhY2FkYzgxNWEyOTYwNWZlOGQ4MzQzMmU5M2IwMjMzZTk1ODA1IHJlbGVhc2UyMS1tYWludAorMjQwNzkgMTA0MjIzYjMyMjZhNDBhYjNiNzFkNGY0ZWIxNDA4NTdhNGJiMDI4ZiByZWxlYXNlMjEtbWFpbnQKKzI0MDgwIDA2Mjk2NjZlNjVjNTNmOGQ0Y2I0NDgzODFkMTk5MGU5ODMxZmQ1NDIgcmVsZWFzZTIxLW1haW50CisyNDA4MSAwNzZlNWU0OWUyN2QzOTQ2MjdhNmUxYWYwZjQwMTNkMDZhN2Y3MDRjIHJlbGVhc2UyMS1tYWludAorMjQwODIgNDJmMjJlYTZhMGYxMzYxMzczZWViYWQ2NTM5MWNhNTA2ZmE2MWI5YSBsZWdhY3ktdHJ1bmsKKzI0MDgzIDAyNmJmMGFiNjhhNTE1YjRkNzlhMzlmNzc5M2Y0MDBmYzdjZmIzYmYgcmVsZWFzZTIxLW1haW50CisyNDA4NCA0NjRkMjEzZGE4ODhjN2YyZjExNjJjMjFlZTk2NjI3NTI3OWUzODliIHJlbGVhc2UyMS1tYWludAorMjQwODUgODIxZTE0MmUxOWZhNGNkODFiMGEzZWY1NGQzZjRhNWFlNmE0ZjA5OSByZWxlYXNlMjEtbWFpbnQKKzI0MDg2IDZkMzhmYmEwNWYzNTc0ZTgyNzAxYzc0Y2ZhZjY0OGE1ZmVkYjIxYzMgbGVnYWN5LXRydW5rCisyNDA4NyA4ZDRiNjY0MmE2MDRhMDAxYjdjMmM1OWZkZTc0NjdmNGMzZGRlNzU4IHJlbGVhc2UyMS1tYWludAorMjQwODggMTk2NTExNmQxYWVjYTk0NGIxZWI1YjVmMTAyNjE0YzU2ZGQ4NzY0MCByZWxlYXNlMjEtbWFpbnQKKzI0MDg5IGY0ZWZmMzI0N2M2NmFjOWY4MDk4NDBmOGUyNzhkNjU3MTdkMmFkMmIgcmVsZWFzZTIxLW1haW50CisyNDA5MCBlZjFlOWM4YWEzZGRmZGI2ODA0OTE2MjZiNTEzOTk3M2ZhMzlmN2NlIHJlbGVhc2UyMS1tYWludAorMjQwOTEgNTdhYjY1YzJmMTcwNzkxZDZlMGFjNDFiZDlmODU3ZTZlMDA5MTg2YiBsZWdhY3ktdHJ1bmsKKzI0MDkyIDNlMDk4YTk2MzU2MWQ3NzAzNzkyMDg2OWRkZjE2ZTRkNDM2ZDE1NjMgcmVsZWFzZTIxLW1haW50CisyNDA5MyAzYTc0OGNhYTAzYjkxYTE1MGM1YWZiMDgyMWFjYzE3NDhlMzJmMjg5IHJlbGVhc2UyMS1tYWludAorMjQwOTQgOWFkZWQ2MjM1ZDg5MGU5MGEyMzczOGRmZDlkODViMDI5NTg3OWFkZCBsZWdhY3ktdHJ1bmsKKzI0MDk1IDI2MWE3MGMwYWE3OTJjM2I2ODZlNzQ2YmUyMDlkNjc0NjUxMjNmOGMgbGVnYWN5LXRydW5rCisyNDA5NiA1MzQ2YjY5MDZkMWFmODVlOTFhM2Y3MjAzZGJjMzg5YjljZTk3YTg4IGxlZ2FjeS10cnVuaworMjQwOTcgY2E0MThhNWZhNDcxY2I4ZDI1OTczZWFjOWJiMDgzYTRkZTE3YTBkNSBsZWdhY3ktdHJ1bmsKKzI0MDk4IDY1NmMzYzg0ZGViZWY0ZWY3YjljNDc3ZDA1ODllMjk0NWE1MDE5M2QgcmVsZWFzZTIxLW1haW50CisyNDA5OSBjN2FhMzMyYTJmZmFmYjczNDA0ZDU3YzRkMjJlMjc1ZTE4N2FlMDBjIGxlZ2FjeS10cnVuaworMjQxMDAgYjNkOGQyNjE1YjIzYmY0ZjBkYjNiMDhmN2E4NGQyOGE0Mzg1NGVjNCBsZWdhY3ktdHJ1bmsKKzI0MTAxIGRlZjJhMTE5ZDVjZGEzMWE0NmJlYmI2ZWRjNWZiNjVjYzVjYTI0ZWUgbGVnYWN5LXRydW5rCisyNDEwMiAzNzUxMzY2YzJmMzkzMWNhOWRiMjgxMTNkNjdlZDU1YWVmZWU3ZDcxIGxlZ2FjeS10cnVuaworMjQxMDMgOTUyMDExNTMyNTFjYmIwYmY5MzQ1ZmM0ZmI3OWQ3N2ZmZWM1MDU4MSBsZWdhY3ktdHJ1bmsKKzI0MTA0IDZmMjU5ZjdiYmVkODBlNGE1Y2E5ZjMyZDYyZjBhMGJlZGFhMTNjN2IgbGVnYWN5LXRydW5rCisyNDEwNSAxNGRjNjkzYWY1MzIxOTU2OTlhODAzNTgyNGYxOWFhMTNkZjZjMjRlIGxlZ2FjeS10cnVuaworMjQxMDYgNWYyNGIyMGUxMDNkMjMyZDk4NDc5NWM0YmVjMTQzNzU5MGRlNmU4MSBsZWdhY3ktdHJ1bmsKKzI0MTA3IGRhYjUyZGJkMTJhYTE0NDRiZTk3NzM4ZGI4NGU5MjE5ZWFiMzIwZjIgbGVnYWN5LXRydW5rCisyNDEwOCBkMTM5ZWM0OWQyMDRkNzA3ODlmODQyZmU3MWQ3MjEzZWY4ZGNjZTU5IGxlZ2FjeS10cnVuaworMjQxMDkgODYwNDcyODc3ZGRhMTUxMTFiODExYjRkYTQzMGRjOThjYjY4NjgyMSBsZWdhY3ktdHJ1bmsKKzI0MTEwIGIwYzMxMGNkYjk4NjlhZjY5M2UwYmIyZmI2N2NiNjczOWIzZGMwZWYgbGVnYWN5LXRydW5rCisyNDExMSAzZmJkMjUzZGVhNWQ0YTljNmY4NTNmMmI0YmRhNDM3OTg4MzhlMTYwIGxlZ2FjeS10cnVuaworMjQxMTIgYzFlYmMwMjg1YTVlN2QxYjE5YzgwNzkwODBiNmJiYzczNjQyYmEzMyBsZWdhY3ktdHJ1bmsKKzI0MTEzIDk4MWU1NDY4YzliNTMxZmVkNDlkMDAyMzM1YmI1NmMyOTllNDUwODggbGVnYWN5LXRydW5rCisyNDExNCBmMTg3ZDI0MDU2ZjQ4ZDg1NmZhYzQ3YTQyOThjMmE2MjFjYTUwZDllIHJlbGVhc2UyMS1tYWludAorMjQxMTUgZjZjNzQ2MGNjYWY4OTlmMTIzODhmZjhkNDhiMDI4ZWRkNjYyMGE3ZiBsZWdhY3ktdHJ1bmsKKzI0MTE2IDM4MDNhZjlkODc5NjNmOGMyOTdiNDcyNDZmNjFmYjBhZjg1MDFmOTYgbGVnYWN5LXRydW5rCisyNDExNyBlYWNmODFkZjZjNDI3NTZkZmJjMWQ3MzYyOTc5MWU0OGQyMDVhYjdjIGxlZ2FjeS10cnVuaworMjQxMTggOTE2ZjE5MWZjZmY0M2YwNWI2NDk1ZDQwNDU4Y2VkY2JiM2ZjZGY4YyBsZWdhY3ktdHJ1bmsKKzI0MTE5IDhkMTRmNTM0YTVjMjc2ZjY5YzVmYjkwM2E1ZDk2ZTI0MzM0ZDEwNmIgbGVnYWN5LXRydW5rCisyNDEyMCA2OTkwZmU5YzQwZjZhN2EyOGIwZTkwYTI0OTkxM2MyY2ZjMDYzMDAxIGxlZ2FjeS10cnVuaworMjQxMjEgNGFkZTc2YTZiMjQ1YmE3OGRiZWU4NThiZTkwMzdmM2IyYTVkYTIwOCBsZWdhY3ktdHJ1bmsKKzI0MTIyIGUxMGQ5MDcwZTEwNzMyYzExZWMzYWI1M2M0ZWZhZGM0NzE2OWYzNTIgbGVnYWN5LXRydW5rCisyNDEyMyBlYzYzMmE0MWVlMzVkOWI2NDYxMzRkY2FhMThhNTk1MmViODkzMGNhIGxlZ2FjeS10cnVuaworMjQxMjQgZDlhOWQ5MjYyNGRiOTc0MjhhMzRjMmFlZGJkZGU0ZDBmOTU2Zjk3YSBsZWdhY3ktdHJ1bmsKKzI0MTI1IDQwNGFlZWNhNTFlOWM0NTFhMTBiY2MzYTFhZmZiMDU0NDcwMDkyNTggbGVnYWN5LXRydW5rCisyNDEyNiAyOTYyZjAxOTI0Yzk5N2EzNWNmOTJlZWY0Y2FlNjQwZGQ2ZDBkZGU5IGxlZ2FjeS10cnVuaworMjQxMjcgZjM0YThkZjhiYmE0NjAwODhiMWVlOTM0MWM0MzVhOGU3NTQ5OGZmNyBsZWdhY3ktdHJ1bmsKKzI0MTI4IDA1M2RiZDliNThkZjAzYzAwMjMxOTdkODMwOTViYmYwODZlYmM1MWYgbGVnYWN5LXRydW5rCisyNDEyOSA3N2JiMmFlMDY3YzI1OGNkNGE3ZDY2Y2FhOTNkMWEyNzFjZDczYmJmIGxlZ2FjeS10cnVuaworMjQxMzAgMDQ0NGY1NzZjOTJiMTllODFjMjQ1NWRjNjIwNWIxMDQzYzc1NDY4NCBsZWdhY3ktdHJ1bmsKKzI0MTMxIDYzOThkMTA1NWZjZmI5ZGUyY2RkODY1YzhhNzQyMDlhODJlMGM2OTUgbGVnYWN5LXRydW5rCisyNDEzMiA4Y2YxZDkyNjY5MTEzMjhlODNkNmU0ODY5OTJkYWRjZTAwZjk2NzFmIGxlZ2FjeS10cnVuaworMjQxMzMgZDFiM2NhODlkNzhiNDlkYmRjZmNiNWIwOTJkZThlM2YyZjQ5OTdlMyBsZWdhY3ktdHJ1bmsKKzI0MTM0IDI0MTA1ZTk4OWYxNzhmMmY2MDhlNTFkMWRmMGE3ZGJmOTkwMmYyZDQgbGVnYWN5LXRydW5rCisyNDEzNSAxNWM5MjRhMTFhZWNjNGRlNGE2NzhkOTQzOTg3MWNlODRlODA4MGM3IGxlZ2FjeS10cnVuaworMjQxMzYgMGNhZWE1ZmVmYTVjMWM3ZGRlNjhiMTcyNTk4M2FlYWZjNDc4ZjcxMCBsZWdhY3ktdHJ1bmsKKzI0MTM3IDVhNDdiNThhNDRiYjRlNGFiMTNjMWE1NWI2MzgzOTcyZDllYmQ2NTAgbGVnYWN5LXRydW5rCisyNDEzOCBkOWI5YjViNDgxNWI2MjFkY2YzMmIwYzQ2NmE5M2I5YThlZGZjNzhiIGxlZ2FjeS10cnVuaworMjQxMzkgZDZmZjFkYWFlMzk4MTc2NDZlNzhhODRiNDA3Y2U5ODE2ODE0ZTE1NyBsZWdhY3ktdHJ1bmsKKzI0MTQwIDg5NTczNDFmOThmODQ3ZDZmNGQ2M2RlMGQ0NjA3ZTZmNWRlZThhNWEgbGVnYWN5LXRydW5rCisyNDE0MSBmNTQ4MjhlYjhlMDc2ODlhMWY1ZGQ1OTYwYjAxMGY5NzgzZTgxYTg4IGxlZ2FjeS10cnVuaworMjQxNDIgZWJiZGMzOGViMTFjOGE4YmY5ZjE2NWU5NTY4ZWVhMDFjOWI3Yzg2ZCBsZWdhY3ktdHJ1bmsKKzI0MTQzIDQwYTg4OTg5ZDZjYmE0NGU4NTNhZTJlYTA5NTA4NjRhYWMyNTc0NzMgbGVnYWN5LXRydW5rCisyNDE0NCAyZDllNDFhNzJhNjhiMzkyNGE1ZWE3Nzk4NmNjOWIxZTBmZTEwZDc1IGxlZ2FjeS10cnVuaworMjQxNDUgN2JiMzFmYjQ4M2JjODY3YjQ0NzkyYTM5NTk4YzU4NjkzMzI4ODgwYiBsZWdhY3ktdHJ1bmsKKzI0MTQ2IGE4YTY2MTIwYmFkZWRiYWRiZjhiYzE4YjkzNTk2MmZlN2U3YWUyZmYgbGVnYWN5LXRydW5rCisyNDE0NyBmNTc2ZmZkNTc5NjZiNTdkYWJkNjVkNjUyYjcxMjM5YTYyMjliNTY1IGxlZ2FjeS10cnVuaworMjQxNDggN2U4Y2RlNDY0ZGI0MGU5OTI4ZmM4Y2I0MzI1YjY0MGNkYmU2NTdiMyBsZWdhY3ktdHJ1bmsKKzI0MTQ5IDdlMjQ3ZjA4MzdlMjY5NTQ0ZDJiYTg1ODZmODU1NGNkYTZmNjZiN2EgbGVnYWN5LXRydW5rCisyNDE1MCA4MTFhY2UzYzQwZDAxYzJhZWViMGU0M2JlOGY2YjNlYmIxMTkwZmM2IGxlZ2FjeS10cnVuaworMjQxNTEgMTc5Y2QzNzBiNjIxZmEyNGZjMzZjODNjZjI2N2U0N2Q5ZDJiYjgyYyBsZWdhY3ktdHJ1bmsKKzI0MTUyIDI3ODc0Yzg2MDI2ODM3MzExOTE4ZGM2NDFjYzRjYjUwMmRiODRjOTUgbGVnYWN5LXRydW5rCisyNDE1MyBkNTRlMjk0NDg0YjJiZmRiM2IyNzFhMDRjOGIwODYxY2YyM2NmMTAxIGxlZ2FjeS10cnVuaworMjQxNTQgNzMyZWEyMmViNTE4MmZkMzBhMGViMjdmM2MwOGRmZGI2MTZkNTdiZCBsZWdhY3ktdHJ1bmsKKzI0MTU1IDhhNzJlZjZiODExOGQ3YzVhYzc3YTQxZThlNTY5MTE5NjUwMmI3MGUgbGVnYWN5LXRydW5rCisyNDE1NiBlZWY5YmQ4N2ZjYzA3OGQ4ODk2MTFkZjI1OWI3OGUwZjk2MzA5MDgyIGxlZ2FjeS10cnVuaworMjQxNTcgMTk4MTdhNGZhMmI2Y2ZiYmI1NTBhZjdkZGEwODZhMGE3ZjcwZDE5NyBsZWdhY3ktdHJ1bmsKKzI0MTU4IDg5ZDE3MWY2YmM3ZDYzMDU4MjU3MDQ4NzE4NmJkNTE0OTQwMzM3OTkgbGVnYWN5LXRydW5rCisyNDE1OSA2ZWUxOWMxOWIyYzM3M2E4MzYzYjdjNWYwZjBjYTE0MDdlYjg4YzE2IGxlZ2FjeS10cnVuaworMjQxNjAgNWM0MzViNWI1OWRmOTBlZjE1MmZjYjk5Yzc2NDM0YzBlNzY1Zjk5ZSBsZWdhY3ktdHJ1bmsKKzI0MTYxIGE2MGMxZThiMGJiYmViYThmMDgyNWYwOGQxYTY5ZmU5NTFhZGNhZmQgbGVnYWN5LXRydW5rCisyNDE2MiA3ZjU2MWZlOWVkZmMyMjgzYzQ5MmYyYTliODVmNzdhNTY4MGExNmFhIGxlZ2FjeS10cnVuaworMjQxNjMgMGMxNzUxNWIwNWRiOGI3YTJlNDZjZjZhYjIxNzE1YTljNjcyZGVhOSBsZWdhY3ktdHJ1bmsKKzI0MTY0IDJjZDJhZTRkZTMwZDkyMWFiMmY0ZjRjMjQ0ZWM1ZmJhNDVmYTY3MGUgbGVnYWN5LXRydW5rCisyNDE2NSA2NDBmMDI4NGUzMGFiMjk0Y2NhYzU4MzUyNDY4MmJhNzRhODM3ZmNmIGxlZ2FjeS10cnVuaworMjQxNjYgZTIzMTQwZjZmYjkwMzk2ZTMzNDc2YTkyM2E4NDlkMDYxMTNkYjFjZSBsZWdhY3ktdHJ1bmsKKzI0MTY3IDQxZDJkMDBhMzFmMTVkOTE1OGRlNTZkZWNjZGYxYmM0OGRhMDAzY2QgbGVnYWN5LXRydW5rCisyNDE2OCBmNDY3OWY2YTk1OGY5NTRlOTZjZGZkZjk1NjA0MGZjYjg4NTc0NDkwIGxlZ2FjeS10cnVuaworMjQxNjkgZGU0ZjZiMTRkMzgwYWNkMTM1ZmQxN2YyYjM4OTM3NjBmYWZjYTk2YSBsZWdhY3ktdHJ1bmsKKzI0MTcwIDViNjFhMmZmNjk2ZDBmNWE4NjRhNDY0OGUyMmRmN2FhN2EzMDJlZmEgbGVnYWN5LXRydW5rCisyNDE3MSBiNWZlOWE5NDE0ZmNhNjZiOTZmNTcyM2JmNzliODBiNjMwNDk2ZWU3IGxlZ2FjeS10cnVuaworMjQxNzIgYWYzNjczODEyZTMzNjEyYTFhYmJmNWY4ODRjMWNmZDBhYjRhOGFhNiBsZWdhY3ktdHJ1bmsKKzI0MTczIGUxODRiYmQ3MTY3YzNmMDQ3ZjliZDI0MWNmMTA0YjNkOGJjZDI5YjEgbGVnYWN5LXRydW5rCisyNDE3NCBjM2QzZGM4Mjc2NGM5ZjRhMTllMTExMWJjZjM1NDdiYTY5Y2E5MThkIGxlZ2FjeS10cnVuaworMjQxNzUgODcyMmIwYWJlYWM2Mjc4ZWZmYzhlNzYxZjk2N2M3YzI5YmY0MWUzZCBsZWdhY3ktdHJ1bmsKKzI0MTc2IDBiNjMzMmMyYWJhMDFjYWNlNjc2YzQzNmU1YjE5ZTg4NzdhZDA1MDggbGVnYWN5LXRydW5rCisyNDE3NyAzNTg2NDg4NzNhZGVhMmRiZTBiZDZmOTFjMjBhNDc3ZTAzNmE3YTdjIGxlZ2FjeS10cnVuaworMjQxNzggZDNmM2QyMWFjMDRiYzkzNjMyOGQ5MDc2MDgwY2VhNTY5Y2M3Y2QwZiBsZWdhY3ktdHJ1bmsKKzI0MTc5IGJmY2MyZWQ5Y2FiYTI3ZWQ0MDFmMzAzYzVmOWI1Yzg2YmU5N2ZjY2EgbGVnYWN5LXRydW5rCisyNDE4MCBmMmM3ODhhZGJkYmJhZjNiNDU4MTRmMDgyMmFhNWU3NDFhMjZhOWY2IGxlZ2FjeS10cnVuaworMjQxODEgYjBhNmRiYzkwMDQ3MDYzOTg3NGNmMmQ4NGY2MjA4ZGZiNjIwNWYzYyBsZWdhY3ktdHJ1bmsKKzI0MTgyIDYwMjdmZGYxZWJkYTNhYzA5OWFlZTUzZWQ0MDUxMDRjNTQ5YTMxZDkgbGVnYWN5LXRydW5rCisyNDE4MyAzMTZmZmZkODBiMTYxYzhkMjNmNDkxYTMxNzRjYjM4YTdmYWRhOTFlIGxlZ2FjeS10cnVuaworMjQxODQgODBiYWEyN2JmMGVjMzE2NTI3OWY0NTgxNjI1MDY4OTQxZDQ0NDViMCBsZWdhY3ktdHJ1bmsKKzI0MTg1IDY2OWVkZGY0NzBiYWRkNmU3Nzg3M2IyY2NlNjVmMzMxN2FhZTYwYWQgbGVnYWN5LXRydW5rCisyNDE4NiA4MzQ2MjU1Y2NhN2M3YTkxMmY4ZGZmNjk0MGQ1NGQ1ZDNkNGNmMWNkIGxlZ2FjeS10cnVuaworMjQxODcgNTVhMDYwZjQxNzNmNzIwNjZkNjljODA0NDc5YmQyMTA5MjBlNzRkNyBsZWdhY3ktdHJ1bmsKKzI0MTg4IDA2ZDk1YjY4NzdjNDVhYWY5OTBkY2M5YjgwM2RmYTI2NmE2NDU1ODkgbGVnYWN5LXRydW5rCisyNDE4OSBkODhkZDVjMmIyODJiOTUwNjE0NWZhNmU1NmU1MzAyNDU0ZDUzYjZiIGxlZ2FjeS10cnVuaworMjQxOTAgOTMyNTNjNjVkODYzMTE1Y2VmNTU1MDBmYjNhNDkyOWYyZjVkNTMxZCBsZWdhY3ktdHJ1bmsKKzI0MTkxIDIzYTIwOTQ4NGYwMjhlNjYxZTg0ZTM4MjkxNjhjOTg3ODYxMzdhZDUgbGVnYWN5LXRydW5rCisyNDE5MiBiOTg1MGM0NDc1NmIzYzc4YzBiOWFlZWQ1N2U1ZjNjNGNhNzE5OGZhIGxlZ2FjeS10cnVuaworMjQxOTMgMjAwMTQ3MTY1NTZiNmJiYmFhNjgyMzE4YzdlNDI5MzE0NjhiNjY1OCBsZWdhY3ktdHJ1bmsKKzI0MTk0IDdiNTg2NDk0N2JhZjZjYzkzNDg5NTM2NDFhZWM3YzU1MDEyY2IzMDggbGVnYWN5LXRydW5rCisyNDE5NSBiMjFiNDIzMzBlNDAyMTk4OThiNzcxNDRiMTgzZGIzOTU5MTAyYmZhIGxlZ2FjeS10cnVuaworMjQxOTYgOTA4NzFmYTQzZjRlMGFlMDExNDdiNDE3ZTk4NjJhYTAyYTRjZmYxNCBsZWdhY3ktdHJ1bmsKKzI0MTk3IDllODg4NWJiZGJjOTUzMzFiYzRkZDg3MGYxMjYwNzA3NjI1NmYwYTEgbGVnYWN5LXRydW5rCisyNDE5OCA3YTk5MWQwMTJjZDYzMWNhMTIwNDAxZjk5YmJjYjM1NTAyOWFmNjc4IGxlZ2FjeS10cnVuaworMjQxOTkgOThkYmIwNzljNWQ0OGMxYzljN2M5YThkNDIzZjQ3NDVhODRkNTUxNSBsZWdhY3ktdHJ1bmsKKzI0MjAwIDIxZmE3NTc5MDgyMjIzYzc2NTE0YjI5ZmEwMmRlMmJjYzBlNjdlMzYgbGVnYWN5LXRydW5rCisyNDIwMSBlZTE0MzdmNWRlMDMzMjg4OWQ1ZTgzNGVlN2Y0MDVmMGU4NjQxNWE2IGxlZ2FjeS10cnVuaworMjQyMDIgN2NlZGJmYWM3NDZiOTc3M2QyNDk5ZDU3NDdiYTI3M2Y1ZjE5MWQ2MyBsZWdhY3ktdHJ1bmsKKzI0MjAzIDVjMDJkMjE1YTM4ZGI5MDI2ODQxY2FlMTUzMDA5ZWM5NDIzN2VhZmYgbGVnYWN5LXRydW5rCisyNDIwNCAyYjVkMzMyOWQ3ZTJhNGJlOTNjOTIyN2U2NjdlYzRmNDkwYjkzYzhhIGxlZ2FjeS10cnVuaworMjQyMDUgOWFlZDc0NTI4NjYxZjcyNTM3NmFjNDAyNjNkMGJiZjMwNzQ5ZTI5NSBsZWdhY3ktdHJ1bmsKKzI0MjA2IGZhN2UwZDAwYzgyOGU0NWU0NmU5YTc1OTgwZWNjMTA1M2I2ZGYxODUgbGVnYWN5LXRydW5rCisyNDIwNyBjZDYwNmE1ODQ5MDNlNDgxNWVmYmRiNTA1MjkzMWQ3ZTI4ZWIwNjQ3IGxlZ2FjeS10cnVuaworMjQyMDggMTk3NTA1ZTY3NTJhMjU0ZGE4YjU0MzAwZjVmYzlmYmUzZTEyYTg0OCBsZWdhY3ktdHJ1bmsKKzI0MjA5IGVjY2U1ZDdkYTYwN2RlNGFmMjkzY2U0ZTM5NWYxMjE2YzBlOWZlMmIgbGVnYWN5LXRydW5rCisyNDIxMCBiYTk0NTVmYzRjOGIwZTI1YjJkYTY0OTUzMzY4ZDgyNjgwMzE5MmZhIGxlZ2FjeS10cnVuaworMjQyMTEgMGI2NDUyMGMyMDBjODhjN2Q0ZTQ1YzAzOTkwZGQ2NmU1Zjg3YThjYiBsZWdhY3ktdHJ1bmsKKzI0MjEyIGUwNTNlNDRmOTY2NmZmOGRhNDY3ZDk5NDM5ZDJjZTE0OWM1OTI3ZjggbGVnYWN5LXRydW5rCisyNDIxMyAxM2ExOGNiZmZkOWM3MGJjYmRjMWQyMDNkMDFmMWJlMTM2N2UwYjg0IGxlZ2FjeS10cnVuaworMjQyMTQgNTQwZTUzMjVmYzZiMDhkYjIyMDQzMTQ1ZTJjNmFiMGU4YzYxZjI1OSBsZWdhY3ktdHJ1bmsKKzI0MjE1IDEzZGY4YjZjMmI4MGM3NTI4MTYyMmRiY2MwMzMzZjY5ZjExNDk5MWQgbGVnYWN5LXRydW5rCisyNDIxNiA0NWM5NTJkMmE2MTEzNTIzM2YyMTc0ZGIwYzg2ZjMzZDJmOTRiYjQwIGxlZ2FjeS10cnVuaworMjQyMTcgNWU3MzVmMTk3Y2E2N2RiZjg2Yzc4Mzk1NzA2M2M1NTI1MzJjMzQ3OSBsZWdhY3ktdHJ1bmsKKzI0MjE4IGQzZGQwYzJhMTc3MWQ4NWZlZmFiNmQ5MmUzOTFlNjc4MTM5MGRkYmIgbGVnYWN5LXRydW5rCisyNDIxOSBlNGQzODBmNWYyOTc2NjQxYjZiNjJmNDg2NjhlMDYzM2U0NjFmODBhIGxlZ2FjeS10cnVuaworMjQyMjAgYzNiMzNlYWQzNTQ2ZWY0MWI5NzQxZmM3ZjMzYjRlYjZlM2Q4MDllMCBsZWdhY3ktdHJ1bmsKKzI0MjIxIDNjNWQwZWVhMWFlMmIyMjhjYTdhOGM4Y2Y2OWQxNDM3NGQ0ZTIxMTcgbGVnYWN5LXRydW5rCisyNDIyMiBlZjEyYzlkZGVmYTcwNTYwM2I5MDM0ZTVhNjczNjI3Yzc3ZDcyYjFlIGxlZ2FjeS10cnVuaworMjQyMjMgYzU1NWYxZTdjNGJlNGQ5M2QzOTg2YTI5ZDI3YzczZTEyODE0ZTQwNyBsZWdhY3ktdHJ1bmsKKzI0MjI0IDliZmMzMWNhODBmMzQyZmEyNDY3ZWExNmEzZDY2OTI2NTVjM2Q1YTQgbGVnYWN5LXRydW5rCisyNDIyNSBkMjdjZThmZTQzZjgzOTkxZjMxNDcyZTRlNzMzZThiZTkzYjM3ZTkwIGxlZ2FjeS10cnVuaworMjQyMjYgYzNiMDgzMTk5NTljNGNhMDlkMmQzNTBjNTk4Y2I5OWUzNjViZjQxOCBsZWdhY3ktdHJ1bmsKKzI0MjI3IDBkMTc2Nzg0NGM0YjcwN2EyNGIwYWY4ZmYxNDFkOGQyMGJkMTY1ZTUgbGVnYWN5LXRydW5rCisyNDIyOCA3NzFiMDI5YmRiOGExODM2Y2NmMGU1YzAyYmY4YjRlOGM0OGJiNDIwIGxlZ2FjeS10cnVuaworMjQyMjkgOWVkZTRkNmNjOWRlOGQ1ZWRmMjAwOWY4NTJhY2VmMTQxMzdjMzY4YyBsZWdhY3ktdHJ1bmsKKzI0MjMwIGMzYjNlMmU0MDAzNWVhMGU3ZTI5ZmFlN2IzZDViMTAyMmY5MzBmZTUgbGVnYWN5LXRydW5rCisyNDIzMSA2MTVhNGY1NjAyNjg1MTA2ODczMmMxNjQxN2VmZjhhMzdhMzQzYTcxIGxlZ2FjeS10cnVuaworMjQyMzIgZjc5Y2ZkMDU0ZjIxYjgxYzllMjM3ZTVlZDA1YmI5ZjI2NDM1NzQ3MiBsZWdhY3ktdHJ1bmsKKzI0MjMzIGNhOGJlYzRiMzM4Mzc0MmNmM2FiZTM4YjExMzc4ZmE1NDdlOTIxZTQgbGVnYWN5LXRydW5rCisyNDIzNCBhMTNkN2NkMGVmN2YyNzUxMWQxNGNmNmIzMjMyOGUxNGQ1MGFjMTk2IGxlZ2FjeS10cnVuaworMjQyMzUgZGE1ZmJjMWViMWQwNWZmOTFjNjE2NGEyNDM0OWQ0NjJhMmE0MTQ2YSBsZWdhY3ktdHJ1bmsKKzI0MjM2IDNkNTIyY2JiN2E4MWYxOTY1YjI3N2I3NTQ4ZTM1YzZhZTUxMGNlZWMgbGVnYWN5LXRydW5rCisyNDIzNyAzMDBiNjhkNjNiOWY0YzI1YmI1YjA2MjNhNzIzNTVjNjg4ZDhiNzliIGxlZ2FjeS10cnVuaworMjQyMzggYTNjNTdlNTliNWE4MTNiZmRmYjRjYTcxNzE1MzVjZjZkZWEzMjk5YiBsZWdhY3ktdHJ1bmsKKzI0MjM5IDNlOWQ2ZTlmYmU1OGY2YTYzNmRjZTk0NzA2NmM5MjAyNTExODRmYWUgbGVnYWN5LXRydW5rCisyNDI0MCA5Y2E3ZTQ2ZmFhMjRiYzI5ODRhOGRmZGRkMTUxNjZjNjg2OGQ3Mjg2IGxlZ2FjeS10cnVuaworMjQyNDEgNTU0NTgxOGY1ODFhODJmNmQ2MzNiMWM2ZTdkOWVjMmQzNjFlODM3MSBsZWdhY3ktdHJ1bmsKKzI0MjQyIDkwYTBmMDk1MThjOGY2ZWYyYjUxZmE0OWRmODU2NzlhYzE0Y2RjY2UgbGVnYWN5LXRydW5rCisyNDI0MyBiYjg3MTYwOTVhODFhNWNkNTU2NTJhY2JjNjFmZWMwZWNhNWRlMGMyIGxlZ2FjeS10cnVuaworMjQyNDQgZjFjZmRjYTczZjg2OTU4NzdjOGJlOWVmOGViMGViNDlhMThmMTRmNSBsZWdhY3ktdHJ1bmsKKzI0MjQ1IGMxZWNhZmQxNTU2MGI1MTliMWU2NDQxOWU1MWVjZWM0YTYxYzI2ZjIgbGVnYWN5LXRydW5rCisyNDI0NiBlMTY3YjgyYzY0NDQwZDgwYzBkY2E3ZjdiNzgyNDZiNDA1ZTU0OTU3IGxlZ2FjeS10cnVuaworMjQyNDcgZWJhOGM3NzFkYjY0Y2I1MDk4YTJhN2IxZjVlOGE2MWM3MDU4MGUwZCBsZWdhY3ktdHJ1bmsKKzI0MjQ4IGNlNjlkNGVlMmZhMDBlMTdhZjY1Y2M4NTcyODk5YzQ2OWY3NjY4ODAgbGVnYWN5LXRydW5rCisyNDI0OSBhYzUxOTE2YmZkYTA3ZTJkODkwYzA5MjkzMWJlMmY0NTQzNDg1ZWE2IGxlZ2FjeS10cnVuaworMjQyNTAgZjE2NzFhNjEwMDc5OTM5NjBhZTNkZTQ3MDA2YmNlNzI0ZmUzZTM3NSBsZWdhY3ktdHJ1bmsKKzI0MjUxIGU3MWNjZmJmMzZiYjhkZWQ2Mjg0NjJkYWY1NDc0OWM5MzU2N2YxMTggbGVnYWN5LXRydW5rCisyNDI1MiAwN2YxZDJjNWRkMDQxYzhkODQxMThmNGI2YTY2Y2E0MGJkOGRhMGZlIGxlZ2FjeS10cnVuaworMjQyNTMgOTVlMzU4NGFiZTQ1NzZlMWRjNDgyYjYyNzQ3ZDFiNzU2MmY3N2IwYiBsZWdhY3ktdHJ1bmsKKzI0MjU0IDQ0ZjNmNWE1YmZlMjQ1ZDc0YWE3ZDA4NmRkNTU5YWEyN2E2ZjAzM2QgbGVnYWN5LXRydW5rCisyNDI1NSA2M2MxNDY2OTUyN2U0OTdkOTA0MWEyZjE5YjEyZjE4ZmRiOGUyNGMyIGxlZ2FjeS10cnVuaworMjQyNTYgNGI5ZTYzY2YwMmE2ZjgyOGM5ZDBjOTAzMWMyZGM1NjU3Y2RkM2QwNSBsZWdhY3ktdHJ1bmsKKzI0MjU3IGIwZGYxZmQ4MThmYzFmNTY1YjFhMjQ1ZTE4YWNiOTBhYTU3NDE3ODIgbGVnYWN5LXRydW5rCisyNDI1OCBiMTYzZTc4NmFjNzRlNGE1NjdlNDEwOGI5MDUxODdjNDBiNzQ5YTJiIGxlZ2FjeS10cnVuaworMjQyNTkgZjcxMWNmNDU4NTI1ZWVkN2NiZjhhMmMwZDE2ZDQ1YWI4ZmY4ZWNhNSBsZWdhY3ktdHJ1bmsKKzI0MjYwIGFhY2U0ZmFmZjE3ZGQ5MjQ1ZWRmYjdmYjUxNGYyZmVmMzI0NDBhMjMgbGVnYWN5LXRydW5rCisyNDI2MSBmOTZlODkxY2YwZTRlZTUyZGI5YjQ0ZDBhZWYxNzhhOTg0NjlhZWRjIGxlZ2FjeS10cnVuaworMjQyNjIgYWMyYmMwN2U4Njk3Zjc2NWVhNTk0OWE2Mzk0ODFjYjAzOWFmZjRjYSBsZWdhY3ktdHJ1bmsKKzI0MjYzIGE4NWEzYzEwYmE0ZGE0YWQ5MGNiMzgxMDk0NzE3Y2UxYTQ1NDE5NjIgbGVnYWN5LXRydW5rCisyNDI2NCAwMWU0N2NlOTYyMDEwZjZjMTRhYWUwYmFhMTJiZWIxZGQwYzI0NWMzIGxlZ2FjeS10cnVuaworMjQyNjUgODE2MjY0YmRhMTM2Y2U2MjE3Zjg1OWYwZjBjODdhZTFmZDdlYzRmZSBsZWdhY3ktdHJ1bmsKKzI0MjY2IDBkMWRlYjQwMjE5ZjlmYzAyODdmY2RmYTE3MTVmMjU1ZGIxYzY3MGEgbGVnYWN5LXRydW5rCisyNDI2NyA1YjU3OGQ0ZDg5MDJiOTViNTIxZGRiZTBiNDg4YTBjYTRjY2U4MDExIGxlZ2FjeS10cnVuaworMjQyNjggZDliNzg1M2EwNDMxYjM2ODQ4ODYzZWVhMmQxNWYwMzg5ZTVjMjhiZSBsZWdhY3ktdHJ1bmsKKzI0MjY5IDNhNTQzYWYxOWM3OTVmYTE5M2Y0ODUyYTI2MjFiZDFlYzAwZDIzNGIgbGVnYWN5LXRydW5rCisyNDI3MCAyMmRmM2VkMTFlMjE5NmRjMmIzOGY0MGU4N2UyYzRlYWIyZTFmMzIxIHIyMmIyLWJyYW5jaAorMjQyNzIgMDkyNDRjNDY4MzBmN2I4OTA4NmJiOGMyZjc0ZDI2Mjk0OGM3OGFjMiBsZWdhY3ktdHJ1bmsKKzI0MjczIDE3NGNjYjAzNWIzZDg1ODkzYmI4MGJhZjg4NTFhZjA5Y2Y4MjY1YzggbGVnYWN5LXRydW5rCisyNDI3NCA1NzBhNTRiYjFhNTk4ODgyYzEwNWI3ZTFjMmRkYjRiMjY5YzExZjg1IHIyMmIyLWJyYW5jaAorMjQyNzUgYzMyOWI4MTFlZTU0OTZiZDU5YzQ4NDkyNDA0NzA0YWUzOGEzNjgyYSByMjJiMi1icmFuY2gKKzI0Mjc2IGYwYjU3NWQ2ZmVhYTcwZGY0MzM5ZTQwNDdjYTc3MzA3ZTliMmMyOGMgbGVnYWN5LXRydW5rCisyNDI3NyA1NTVhOWUwMDE5YTc3OTk2YjkzOWJkOWU3N2M5NmM5ZWJhMDdiNDUwIHIyMmIyLWJyYW5jaAorMjQyNzggNmJmZmQyZTIzMjZhMzE0MTgwNjlmZDI1ODA3N2E4YTg5ZWE1OGRiYiByMjJiMi1icmFuY2gKKzI0Mjc5IDg0YmNhMWVmMTE2OGJjOTdhODJlNTRmN2Q0Nzc0NGRkZDU4ZDVkZGUgbGVnYWN5LXRydW5rCisyNDI4MCAzZTBjY2NjYzRkY2IxZTc3YWFiMWU5NWQ1ZDE4NzM5NzU2ZGJiYjk5IHIyMmIyLWJyYW5jaAorMjQyODEgNDY1YmFiMDdkMmE4ODQ4MDhmNjAwNWQ0OGNkNjM1MjI1OTYxNTMyZCByMjJiMi1icmFuY2gKKzI0MjgxIGY3MTU4MWNlN2EzY2VkNjljMWJiZTVhYjkxMzk5MGE1YzhjNDE2OTQgcjIyYjItYnJhbmNoCisyNDI4MyA5MmQ2ZjZmOTdjNzBjOTRmNjg4N2E1YzMyMzRjODFkYzRlZjQ1ZWU1IGxlZ2FjeS10cnVuaworMjQyODQgMzBlMTNmMGVhNzZiMjFjN2EyNTJjZTQyMzQ2YmEwMjMyMmFjOGIzZCBsZWdhY3ktdHJ1bmsKKzI0Mjg1IDQzNjUzMWIwYWNmODFhMTQ3YmEwN2U2MjcwNDRlZWU4ZWExMzQ1YTMgbGVnYWN5LXRydW5rCisyNDI4NiBmN2I2MTAwNTkzZGNmMTc2OTVjM2RjMzMzNzVkMTI4OGRhNzllMDBjIGxlZ2FjeS10cnVuaworMjQyODcgYmVhOTJjM2Q3N2EzMmE0MTZlNjNiMGVjYjYwNzg5ODEzZGQyOGM4MiBsZWdhY3ktdHJ1bmsKKzI0Mjg4IDM5NGRhNGVmZmJlYzY4ODI4NGMyOGYzMTNmNzRhZDljMDg3MmJiMWQgbGVnYWN5LXRydW5rCisyNDI4OSBkOTE0ZTBmMzlmODM3OGUzMTkzNzYzMGE1NTY2Y2FiY2ExZmUwZDRkIGxlZ2FjeS10cnVuaworMjQyOTAgMWI0ZTJhNzk3NTk2MWEwODlkYTk0MGFiMDkxMDdlMGZmMmQzYjlmMSBsZWdhY3ktdHJ1bmsKKzI0MjkxIDZlMTBhMTQ5OWUyNDIzZDJiNDdkNGY0Y2QyNGI2ZWM3OWZkNmQ0MzQgbGVnYWN5LXRydW5rCisyNDI5MiA5NGZlMTdjNjc3MTU0MDgwMjc5MDYyZTdiNDUxNWE0ZDZiNWIwYTM2IGxlZ2FjeS10cnVuaworMjQyOTMgNjFhMmRmNTY3NDZlZWUzZmRhMWY5OGY4NjljZDIxNzgzZDM0NmQ2MiBsZWdhY3ktdHJ1bmsKKzI0Mjk0IDIyY2VkZWRhMmE3M2NjNTk2YzZmYTdhODMzMDEyOGIzN2FhYjdlODMgcjIyYjItYnJhbmNoCisyNDI5NSBiNWMyZjc5NGQ4MDU5MzcxN2UyZTg3N2Y2MTgwNDk3NGQ5NDc0NzBlIHIyMmIyLWJyYW5jaAorMjQyOTYgMWZkYjg5YThiNjIxOTliYThlNjI4ODE3OWQzZTQ1NGJlOTdjYTBjNiByMjJiMi1icmFuY2gKKzI0Mjk3IDQ0Yzc3ODFkM2YwY2NkNDhjMTE5N2M0OWJhOGE1Njk2ZWM5ZDRiY2IgcjIyYjItYnJhbmNoCisyNDI5OCA0MWVmOTgyYTY0YjFiMWQxOWQ3YWE5OTNlZmRjMGQ2M2ZhMTU2OGY1IHIyMmIyLWJyYW5jaAorMjQyOTkgMTI2ODk1YTM5MmJhNzNmYjk3ODM1N2MzYmRlZWYxY2VhMmY5NWIzZiByMjJiMi1icmFuY2gKKzI0MzAwIDE0NWZhZjI5OGNkY2MxMzI0Y2VjYmViZDVkYjIzNjE1Y2Y2YjQ3ZDggcjIyYjItYnJhbmNoCisyNDMwMSA5NGM4NThmZWFlN2Y4ODYxMGNmM2UzMjdjMDcyNjQxYTg3YjMxNzQxIHIyMmIyLWJyYW5jaAorMjQzMDIgYzUyYmI4NjJkMGY3NzM1NGRhN2M0ZGFmNDdjOTM4MDZmYTUwOTkwYiByMjJiMi1icmFuY2gKKzI0MzAzIDMwYTQwODBiYzMwYjU5MWRjY2JhODMxM2RiYWRhYWY3NDcwM2JjYjYgbGVnYWN5LXRydW5rCisyNDMwNCA0YTlhOWNjMDQxZGVjZTZhMTllMWQwOGIwMGM4Y2YwNzQxZWZjZmM5IGxlZ2FjeS10cnVuaworMjQzMDUgZmUyOTMyN2U0NzFjZTJlNmY0ZjFjNTRkMWYxNTFlN2E4NjcxZDc3MyBsZWdhY3ktdHJ1bmsKKzI0MzA2IDhjMzIxOWE0ZGNkNmRlYjYxOWE4NWM2YjcwNzQ3MTg1OGM2OGJlMTIgbGVnYWN5LXRydW5rCisyNDMwNyA0MWI4ZDY2NzMwZDYxZjRhMWE2MGVhOTk1YjQ0MTkwMTJjZmJlODNhIGxlZ2FjeS10cnVuaworMjQzMDggMzNlYjYzYjg2YTE5MzZlZTQ3NDhjZWEyZmM3MjE1YjUyNWIwNDcwYSBsZWdhY3ktdHJ1bmsKKzI0MzA5IDQ5ZGMxNDRhMTU1NTdjMTdlNmE5MTU3M2M5NGRiMTZmZjY3MDMxYTMgbGVnYWN5LXRydW5rCisyNDMxMCA1N2M3OTFhNWY4MWM3NTg3MmJlZGJlNGJkMDMxOWY3MWVmMzA1Njc3IGxlZ2FjeS10cnVuaworMjQzMTEgMmI2NTBjMjFhNTYzOGQ1OGZhZGU4NzA0YjY3Mjc4ZWNjNTVjY2NiMyBsZWdhY3ktdHJ1bmsKKzI0MzEyIDQyMzY1YjcwZTlkOGI4ZTRlYjUwNGIzMDUwZjQwNjc0NjIwZDliZjQgbGVnYWN5LXRydW5rCisyNDMxMyBmNGQ5ZmEyMDdlNDBlNWIwZWJhZGVlNzI2NDhhMGQzNTFlNTk1ODc0IHIyMmIyLWJyYW5jaAorMjQzMTQgNjJjNjNiYTkwZGYyMTBiYTM2MGE4Zjk3NWY2NjE4MTVlODNlOTc3ZiByZWxlYXNlMjEtbWFpbnQKKzI0MzE1IDBmNDA4MjYxYjNjOGI3YWFiYWMxZDM5YjI1NWQ2OWQ1OWYwZDI4OWYgbGVnYWN5LXRydW5rCisyNDMxNiBhOTY1MzgxMTczMWEwMDNiYTQ4MDFjY2EyZDcwM2JjOTEzMGRlYzIwIGxlZ2FjeS10cnVuaworMjQzMTcgOWY2NmFhZGRmOGQ0MGJmMWEzODIxZjJhZDE5MWY5ZGMzODdmOGU2YyBsZWdhY3ktdHJ1bmsKKzI0MzE4IDdlYmMzZTI5ODNkMTFiMmQ1ZmEzY2M1NjU0OWQ5ZmE5ODBjNTk4ZTMgbGVnYWN5LXRydW5rCisyNDMxOSAxZGFlYmZmMTc3ZWYxMzc3ZTFjYjk5MGUzMmZiZDAxZjlmY2U5NTg4IGxlZ2FjeS10cnVuaworMjQzMjAgZjk1N2QzOTZjODRlNzFkZjIyN2JlZjczMGM2MjEyOGUyYWFlNThlZSBsZWdhY3ktdHJ1bmsKKzI0MzIxIGU3OWZjMjU3YmNhMGU2ZWQxMDc4MWIwN2JhODM3NzY2MTZjYTY0ZWEgbGVnYWN5LXRydW5rCisyNDMyMiBkZWUwZTg2NjY1M2U2ZTQxYjVmNjUxYTIwOTIyMzkwZWJkZDk4YjBkIGxlZ2FjeS10cnVuaworMjQzMjMgM2RmYmJmNDJiZjE2YWU5N2ZiYmQyYTQ2ZWYxM2IxOWIwZmYwYzVlYiBsZWdhY3ktdHJ1bmsKKzI0MzI0IDFlZTc1YmQ0ZWUzNDY4ZDUxN2JjNTE3NWJjN2RmNjE1ODhmN2E4MzYgcjIyYjItYnJhbmNoCisyNDMyNSAxMDllZDY5NjQ4MzJhZGY4N2M5YjA0ZGM0NTYwNjJmNzFlMDFjNGVjIHIyMmIyLWJyYW5jaAorMjQzMjYgYmQyZTg5ZDc3ZDQ1YWRmMTdiZTA3ZjhkNTEyODEyZjM3YWU0YjYxNSByMjJiMi1icmFuY2gKKzI0MzI3IDRjODMyODc4ZGU3NGViNzIxYTVmNmNlZmRjMTZiOWFiNGQ0MjVkMGIgcjIyYjItYnJhbmNoCisyNDMyOCBlM2UzY2Q0N2JhZDVmZDM4M2JjNThiYjIyNTg5MjU4MjhhZjc0MTI4IHIyMmIyLWJyYW5jaAorMjQzMjkgZDIxMDI4ZDVjYzg1MjhjNDY1ZDc4ZDY2ZTI2ZWNmNDRiMTAxODczMSByMjJiMi1icmFuY2gKKzI0MzMwIDQ4MjYwYjBiNTI2ZjY5YTE1YTFkNDcwZDdkYzc2ZDFlZmVhNTc3YjQgcjIyYjItYnJhbmNoCisyNDMzMSBlZTI0YmQwY2FkMjkwM2IxMDg0YWYwYjE4MzM2OTQ0M2Y3MzllNjdmIHJlbGVhc2UyMS1tYWludAorMjQzMzIgYzdlODMzYjNjZDljNWFhYTJmZWY1ZGQyY2I1MjNiMzZkODlmZjE3OCByZWxlYXNlMjEtbWFpbnQKKzI0MzMzIDk3NDYyMTk4MTNmOTk3OTI3ZWVkYzI3YWRlZWM1NTBlNjU4OTJjMWUgcmVsZWFzZTIxLW1haW50CisyNDMzNCAxMWNiM2RlMDgyM2RhOGVjMjhiOGUyNTY0MmQ1NzE1OTU4NzlkMjIyIHJlbGVhc2UyMS1tYWludAorMjQzMzUgMjIzOTUzMDY5YTFhMDlmMDI5NmFmMmE5ZGFmMTBlZDM2OTEwNDAyOSByZWxlYXNlMjEtbWFpbnQKKzI0MzM2IDNmYzA2YzExNDlhNDNkYjJmODY2YTc1MzllZTdhZjljYjBiOTNhYzMgcmVsZWFzZTIxLW1haW50CisyNDMzNyBjNDQ5OTU5NmIxYTQwZmQ4YmNmMWQ4OTY3ODg3MDg4Mjc0YjhkYjYxIGxlZ2FjeS10cnVuaworMjQzMzggMWNmNzdkZjk1ZjQ1MjUzODk3NjU5M2U0ZjliN2VlODFjMzI3ZGM4YSBsZWdhY3ktdHJ1bmsKKzI0MzM5IDU5ODFkZmRkYTg1NzBiNjE3MjNlZDg4Zjk5MTk4OTMyMzA5YmM2N2YgcmVsZWFzZTIxLW1haW50CisyNDM0MCBhZmI3ODlhYWRhMTZmZDhkYTZmZDQyZDkzZTRiZDZlYWU4MWNmNjEzIGxlZ2FjeS10cnVuaworMjQzNDEgNzc4ZTZhODBmY2VlNGY1NWZmNDM2NmQ4OGFkY2ZkYzMyOTU2YjQxNiBsZWdhY3ktdHJ1bmsKKzI0MzQyIGMzZTZlNjNkOWJhMmQ4MjlmMDFjYzY4NjM5NGExOGJiOGZmNjkxNjUgbGVnYWN5LXRydW5rCisyNDM0MyBlNWNmNzRmNzkxNjc5YmFlMTVlYTM0MzQyNjdlMTRkZDMxNDgzNGU2IGxlZ2FjeS10cnVuaworMjQzNDQgMDg0NmI0ZTI1MTdkZjAyOGJjYTJhNGI2ZDJhMDAyZThmZTExOTI1NiBsZWdhY3ktdHJ1bmsKKzI0MzQ1IDcwYjQzMDZmNDg4ZGIxNDYwZWExMDA5N2FmNzgxZTRmNWIxZjJkYjkgbGVnYWN5LXRydW5rCisyNDM0NiBiM2Q2MjdlZTJiNzNmZTFjMDVmNzA2MWEzMmI5NjVhOGZkNzZmNjMyIGxlZ2FjeS10cnVuaworMjQzNDcgZTZlYWY5NTdlYTI2ZjcxNjRkZmI2ZDBhZDA0YzA2MjQ2ZTg4OGI3NCBsZWdhY3ktdHJ1bmsKKzI0MzQ4IGIxMTRiMTAwNzQxOGVlMmUxMGQxNDE2YzBmMWEyMGQ3NjNjZTRiOTUgbGVnYWN5LXRydW5rCisyNDM0OSA4ODFmNDliZWZjYTNjMDFhMDRiYTk4Y2M2ZDA3YTFkMmE0NTIwMjhkIGxlZ2FjeS10cnVuaworMjQzNTAgY2QwYjc1YjE5ZGY3ZDgyNjI3ODJhYTU1NzE1OGNhYjAzNTFmMDA0MSBsZWdhY3ktdHJ1bmsKKzI0MzUxIGZlZDUwNzFkYTk1NzVkNGQ2OTQ0NWY0OGMzMDIxZTQxMWU2YWYyNDYgbGVnYWN5LXRydW5rCisyNDM1MiA3Y2E1YTQ4MWMwZDE3OTU1Njk2M2NkMmRlYzU1NmVmNTdhYzg0N2E5IGxlZ2FjeS10cnVuaworMjQzNTMgMWFlMmFmZTY3NWZkYTdiY2M1MTBjZDk2Y2NmOWVjNTA0Yzc2MzE2NCBsZWdhY3ktdHJ1bmsKKzI0MzU0IGRhMzg4ZTFkNDA0YmZiODNmNTkxMDNiZjI4YzY2MmVkY2MzNzcwYjkgbGVnYWN5LXRydW5rCisyNDM1NSBiN2YzOGU3NjUxNDc5MzM5MzVhYWRlYzZhMDVhZWNkYWRhZjc0MmQ2IGxlZ2FjeS10cnVuaworMjQzNTYgYmNiZGE2MDZkOGM3NTcxOGI0MDI4M2M3YzVmOTgxYzE2MGRjY2I2YSBsZWdhY3ktdHJ1bmsKKzI0MzU3IGQ0NTY5MWE2OTg3ZmU5NjdhMDVmYmJjZjFiN2YwOTdjNDkwY2YzMzggbGVnYWN5LXRydW5rCisyNDM1OCBiYWM5NDJlNjg1ZmFkMmRiYmQyMGQ5ZjYzYWU4MTliMDQyYzgzN2RhIHIyMmIyLWJyYW5jaAorMjQzNTkgMzZjODk3YmNmNGQ3ZTY5NDI0MDExMzg2MjNlZjNjMzlmOTkxMmViYSByMjJiMi1icmFuY2gKKzI0MzYwIGY4ZmRiZmE4ZDVmM2I4MmZlYTk5Zjk1ZWI3OTlmODdkODcyZDg2MzYgbGVnYWN5LXRydW5rCisyNDM2MSAyYzBhOWE1MDg2ZTEwYjk5ZjA0MWQwYjBhY2EyZGI2Y2MxZGRkNDczIGxlZ2FjeS10cnVuaworMjQzNjIgOWRmODJjMTNjNjc1ZjA3NDAwMmQwMjgzMmJmYWQ5OTEzNTk3NjZkZSBsZWdhY3ktdHJ1bmsKKzI0MzYzIGU3NjMwNmVlYTM3MDk3NTBkYjU3NjgzNWVhYzViNjdkMjFjNDJmZmIgbGVnYWN5LXRydW5rCisyNDM2NCA1OTdkMTBjZjc5MzhlOWJiMjY1OTdlMzM2ZjVhZWYyNmQzZDZlMTY4IGxlZ2FjeS10cnVuaworMjQzNjUgMTgwMmE5ZWRiNGVlZjRkOGU2MGVmZDhlMTc1OWM5NDAwYWViMDcyNyBsZWdhY3ktdHJ1bmsKKzI0MzY2IGJjMDJjM2IwOTYyNmEwNDVmNjZiNDc5MGQyYzlmNzdjNjZkZTQ5OWUgbGVnYWN5LXRydW5rCisyNDM2NyBmMTg3NDk2ZmZhZWY5ZDIxZmMyNjM4OTBlOWE1OTdlODkzZTljNzkzIGxlZ2FjeS10cnVuaworMjQzNjggYTJkNzhlMjFhNzg1N2UxNmVjMDdlNDA2OTcxMDEwNDI1YzAyYmI2MSBsZWdhY3ktdHJ1bmsKKzI0MzY5IDUwY2ZiZGRjNjAzN2U5NzUxZThlMTk3ZWE0NzlhN2MxNjJkZDMzMGMgbGVnYWN5LXRydW5rCisyNDM3MCAyMjVjN2RkMTdlMzcyNjc5NDNkM2Q3M2FjZTQ0MDI3YmMzYTlhODBhIGxlZ2FjeS10cnVuaworMjQzNzEgYzljNGM1MjNkY2JmMTI4ZDdhNjVhYjc5YWJkNzJiMmQxNGU3Y2M4ZCBsZWdhY3ktdHJ1bmsKKzI0MzcyIDliMDU5ZjFiMmExZjA1Njk5OGY5OTg2NTEyN2MzMTAyZGMwMWEyZDQgbGVnYWN5LXRydW5rCisyNDM3MyA3ZDNhMjExZWYyMzM2OTlmZWRhZjQ5YWQ5MDk3MjRkODg2MmFhMTljIGxlZ2FjeS10cnVuaworMjQzNzQgYmE2N2I5Yzk3YjY5NmJmNjI1NWQ1YjM5YjBjMmY1YTA3NWE1OWFlNSBsZWdhY3ktdHJ1bmsKKzI0Mzc1IDYzOTJmMDMyMjJlMDEwZTgwMzM4NjcyOGE3OWZkYTg2OGYzNzU4MmUgbGVnYWN5LXRydW5rCisyNDM3NiA2MzljMGEzYWU4ZGNiNDVkYTE2MWYyZDgwZWNkOGQyNzkxMDE2ZDZiIGxlZ2FjeS10cnVuaworMjQzNzcgMzA0YjM0MDIzODc2OTIwZjU3MDQ2NWMyODYyYmVkNDA2ZjQyYzZjMCBsZWdhY3ktdHJ1bmsKKzI0Mzc4IDQ3ZWE3M2ZkN2U2YmEzMGNiOTg2YjAxMzc5MTRkNzM3OTAyYTYwM2EgbGVnYWN5LXRydW5rCisyNDM3OSBkYzY0MWUxMjU2ZjljNGRlODA3MjdlZjZkMjVkYzMwMDIwOWU4MGY5IGxlZ2FjeS10cnVuaworMjQzODAgYzVmYmU5MmUwMmQzYTE1NzAwYzlmNDljNGVkOGEyOWIzNmRmOGE0ZSBsZWdhY3ktdHJ1bmsKKzI0MzgxIDM3OWZjNjZmNGM5NmQwYTFmN2MxNzZmOWJlZGQxMGNkNzM1YjZkMmYgbGVnYWN5LXRydW5rCisyNDM4MiAwMjVhZDI3ZDQyMjRmNDU3MjQ1MTM0ZmNjOWJhZWUwYjM4NmNlNmE1IGxlZ2FjeS10cnVuaworMjQzODMgOGNlZjc1Y2FjYjAxNjA0Y2RmMDAwMGFkZmViNjY4YzY3MWQ0OTg1YSBsZWdhY3ktdHJ1bmsKKzI0Mzg0IDViNDU5Njc3ZmM0NDRmYzliMGMwM2JiYjk2ZGQ1MGFiMThhMGQxOTkgbGVnYWN5LXRydW5rCisyNDM4NSA5NGY1YTlmYTM1ODM0NzUwODE0ZDE2MjlkNjdkNDNkYWViZDk0MGIzIGxlZ2FjeS10cnVuaworMjQzODYgYzhkNzc1YjlmZjkyYTliYjkzOTVkNTBiNmFmNmZhMjE2ODZkYTQzMCBsZWdhY3ktdHJ1bmsKKzI0Mzg3IGQzYjY0MDFjYTI3M2I1ZTRjOGVjZGEzYWE5Mzc3NTg5ZmI4MDQzMzEgbGVnYWN5LXRydW5rCisyNDM4OCA1MmNlODg3ZGIzYzkzMWE2MzhlMWFmNWZjYTVjMjNlOGY3OTc4ZjNkIGxlZ2FjeS10cnVuaworMjQzODkgM2ViMjRmNGM4OGQ1YjE5Y2ZlYTRmOGRlZWM5YmYxNDQ0YWVmYjNiNSBsZWdhY3ktdHJ1bmsKKzI0MzkwIGVhNWIwZjBiNzE2ZjI1NDg0MzI2OGE5MjdhMjg0Yzc0NzY0NGQxYjggbGVnYWN5LXRydW5rCisyNDM5MSA0MWVhMmFiYjc0ZmIzOWMxYmM3NzdiNmVmN2E4YWIxOTY4ZTU3ZDkyIGxlZ2FjeS10cnVuaworMjQzOTIgMzQ3ZWE2OTMwMDJkNTJiODllMzEwZDBiNDU4NjBmM2IxM2ZiNGI1MyBsZWdhY3ktdHJ1bmsKKzI0MzkzIGQ5NWE0ZWM2ODVlMGUzOGEzOTc0ZWVjYmE2OWQ1MDVhMjE2YTQ5OTEgbGVnYWN5LXRydW5rCisyNDM5NCA1ZTI1YzY2OTc0MWNmOTExYTFkYWE5MTE2MWI1NTdiNGYzN2MyYTkzIGxlZ2FjeS10cnVuaworMjQzOTUgNDdmNjUzMzY3NGZkYTJkYjYyNmJkZmI2Mzc0MzM3MzU4NWE5M2NiYiBsZWdhY3ktdHJ1bmsKKzI0Mzk2IDUzMjcwZDI4MWJmMDgzYmQ4ZDE2NGUyODc2ZDQ0NjRmYTYwOWFlNWIgbGVnYWN5LXRydW5rCisyNDM5NyA3ZGUxMzNjYmJhZjE4ZTg2ODNhMDQ4MTMyOTExMmE0NTY0YjQ1YzgwIGxlZ2FjeS10cnVuaworMjQzOTggYzIxNTAzMTNkOWQxM2U2YjUyNmVlY2IxZjUyYTQwZTQ5ZDNiMTg2NSBsZWdhY3ktdHJ1bmsKKzI0Mzk5IGIxMjgwY2JhNzliNTlhYzNmNmI5Y2Q0ZGYxZmM0MzRiNDdkMDkzZTcgbGVnYWN5LXRydW5rCisyNDQwMCBjZGI3MGJmODhkYjFhOGQwYmE2MDBmNDAyNDYyZGExMzNiYTA2MDBkIGxlZ2FjeS10cnVuaworMjQ0MDEgOWJhM2M4Mjk0NmI4OTYxYzE3Njc5ZTZlMDNlYjY5N2VjZjg3ZTRkMCBsZWdhY3ktdHJ1bmsKKzI0NDAyIDgyZDg0MTM2MzZlNzc5MGQ1NWY5ZjhmYjgzYjQ0NzVmZTNmYjhlZTAgbGVnYWN5LXRydW5rCisyNDQwMyA4M2ZjODgzNTBmODBhMjJiOWVjYWM1NzViZGQxMTExNzc0Njk1ZGI3IGxlZ2FjeS10cnVuaworMjQ0MDQgMGZlYWM0NWVlNjYyZWZkMDllNzMwYzY0ODAwYzNmZTUyZTUyNzRmZiBsZWdhY3ktdHJ1bmsKKzI0NDA1IDE4M2YyODU5OTczNjYzMWQ1MDkyMzAzOThmYjI3MTAyNTIxZjkxMTkgbGVnYWN5LXRydW5rCisyNDQwNiBkNmMxODNjYTA5M2M4MDNiNDZlZTg2YjcwNGE5NjNiOWExYTJiZmY2IGxlZ2FjeS10cnVuaworMjQ0MDcgY2VjODAwOTMxYTM3MGQyNWM5NGE5ZmFlMzNhOGZmMzRmNmUyOTEyNSBsZWdhY3ktdHJ1bmsKKzI0NDA4IGU0MjIwMzFiOGZkNzA4NjJlMDU3NzRhMDM2OTg5NTQ2NTdiOGVkZGEgbGVnYWN5LXRydW5rCisyNDQwOSA2NzQ3MTA3MGI5NjY4M2MxZjJlNWYwZjNmYjVmZTA3ZWMyMjk0ODc5IHIyMmIyLWJyYW5jaAorMjQ0MTAgMTE0NzVkZDQ2ZmE3NjEzMjcwNDcyM2UzM2U4ODJiMTY0ZjQ1NDNiMyByMjJiMi1icmFuY2gKKzI0NDExIDM0ZmM1MjM4MzEwZDMzYzQwODUzNGVlZmE4ZjcyMDIxOWRjNzRlOWYgcjIyYjItYnJhbmNoCisyNDQxMiBlOWEwMWUyNGE0YTk3NGY1NGMwYjRiOGRjMWIzNTQ2OThkY2E3OWNiIHIyMmIyLWJyYW5jaAorMjQ0MTMgNjE4NWE2N2IzMDEyODQwOWU5NTM4MTdjZDlkZTE4ZDUyZDA1YjUzMyByMjJiMi1icmFuY2gKKzI0NDE0IDAzYWVhNzU3NWFmYmE2YmY5ODIwZDFiYzQzMjMwOTA5MDA4MmFkYjAgcjIyYjItYnJhbmNoCisyNDQxNSBhNzE4YmE5OTJmMTA0YWYzZDlhYmU3YTllYTk0NWI2Yjk0ZDU1MWQwIHIyMmIyLWJyYW5jaAorMjQ0MTYgYmUzOWZhNTU1OGM1NDVkYTMzZTljODMzZTQ1NzVlMWFjOTdkZjA1MCByMjJiMi1icmFuY2gKKzI0NDE4IGQxOTUxM2UyODkzYzk5ZWZlNWViY2JmMTVlNTE3NmM1MDRiYzBiYzEgbGVnYWN5LXRydW5rCisyNDQxOSAzODI3ZjEzNmUwZDZlNmEwYTE5NTRhYTM5MjViZTk4MjliYmFiMmZhIGxlZ2FjeS10cnVuaworMjQ0MjAgMjcxMWY4ZGIxNjRjZmFiNWU3ZDk0ZGRlZjRjZTIzYzllZTNhM2UzMiBsZWdhY3ktdHJ1bmsKKzI0NDIxIDEyNjY4ZDBhZjhmN2Y1NGY3OTI3ZTg2OWEyY2QwMjg5OTUwM2ZlMmMgbGVnYWN5LXRydW5rCisyNDQyMiAwNTA5NTM5OGY5MzkyZTJlODc0YTNhZWM2OWI5ZGI1NTcyNjNiNjBkIGxlZ2FjeS10cnVuaworMjQ0MjMgYWYxYzVmYjZhNzAzOTJiMzBlYzYxYTFmMWE2MzEzMWFjNGNlMTkwZSBsZWdhY3ktdHJ1bmsKKzI0NDI0IDhkMGMxMDZkOTA5OTI2ODExZTMzYTAzN2ViMzNmMTE2YjM0YjA2MjEgbGVnYWN5LXRydW5rCisyNDQyNSAzOGQwYmQwZmE3ZjJlN2I3MGJiNTNlOWM5ZTk0NTMzOTVhNTlkNjQyIGxlZ2FjeS10cnVuaworMjQ0MjYgZWQzZGNlMTdmYzc5YjdhNmM2ZmZjY2M2YTI5ZGNjNTU1MWJlMDZjNiBsZWdhY3ktdHJ1bmsKKzI0NDI3IGY3ZGIyYzBhMzBmY2U4ZDU5NzNjMjBlOGIxODRkZDllMGM3MTM3YjcgbGVnYWN5LXRydW5rCisyNDQyOCAwZWQ2ZmM3YzFjMDkzZDA2Y2QwOGQ1OGY0NDNhODlmYjZiMzMyMjdlIGxlZ2FjeS10cnVuaworMjQ0MjkgMGE2NzQ2M2Y4YjdkMjI1OWM4ZmYyZmUxZTYxNmU0ZTVlODhjYTVhOSBsZWdhY3ktdHJ1bmsKKzI0NDMwIGNmNzk3MDMzNDA0MThmZDc0ZDk0M2M3ZDgwZjMzNmFiOTY3ZjZhMzMgbGVnYWN5LXRydW5rCisyNDQzMSAyZTZjZTNhNTYyODRiZmVjYTViOGY3YTVhNjAwYzM0NGQ4NzhiMjE2IGxlZ2FjeS10cnVuaworMjQ0MzIgNDkzZjkzMmQ1ODI5YjFkYzhjMTgwMmMxMTgyNDBmZmM2Y2VlZmIyZiBsZWdhY3ktdHJ1bmsKKzI0NDMzIDQ2ODUzMDczODRlYjBkN2ZkMzFhMDg2MGE4YzY1ZDAxNjgwNWRjMDMgbGVnYWN5LXRydW5rCisyNDQzNCA2NzFhODQ4NjZhYzk5OTYzOGVjZjBlYmQ4YTY2MmU4Nzg2YWEyZTAzIGxlZ2FjeS10cnVuaworMjQ0MzUgNjg3YjhjNzE5MmExYTE2NmMwNmQ0N2FiNzBlYzlmZTFjYjBiOTUwMSBsZWdhY3ktdHJ1bmsKKzI0NDM2IDIxODIwNzMyYTExNzFiZmM2NzQ2YjcyYWQzZjlmZjQwNzE3ODJlNGQgbGVnYWN5LXRydW5rCisyNDQzNyAyMWJiNGM0YjdlMjZmNTA4NzA2ZWI3OGI0ZmU1NDhjZDVhYTlhYTM0IGxlZ2FjeS10cnVuaworMjQ0MzggMTdlODdhYTM3Nzk2MmM1ODY0ZDZhZDA5ZjcyNDBmYjgxMDE1ZjczNCBsZWdhY3ktdHJ1bmsKKzI0NDM5IDZiNmE5Y2FlMjU2ZWUzMWMzNGNkODY1ZGViMzAyMTgwOGRjMjRhYTIgbGVnYWN5LXRydW5rCisyNDQ0MCBkZDI4YTRlY2IzN2Y2MDkzOTQ5NTEwZTliZTRlMzg5ZjZkYzJhYWE3IGxlZ2FjeS10cnVuaworMjQ0NDEgMTVmZjUwNDYzMmVkNmE4ZTgxZDc3ZjkwMWUzYTlkZWQ1NDFlMzEzNyBsZWdhY3ktdHJ1bmsKKzI0NDQyIGExM2E0MzkzZjQ1YzAxZWFlYjBjMDI1MTM2ZjE0YzUwN2RhYjMyM2UgbGVnYWN5LXRydW5rCisyNDQ0MyA2ZTM0MTUxYWVmZTY2MzA1M2YxYmNkMjhmZGUwMWFjM2ZkOTc3MjIzIGxlZ2FjeS10cnVuaworMjQ0NDQgNjBlMzZkNTE4NzU4ZjFlMjk0ZmMxNzJiOWNkMmE2NmZjMGU1NjEzMyBsZWdhY3ktdHJ1bmsKKzI0NDQ1IGE5YTg3MzQxYTllN2IwNmVjZDA0OGZkNDA3MDRkNWRkNTU5NDdmY2QgbGVnYWN5LXRydW5rCisyNDQ0NiBlYzg4ZmM0MzAxMjc2MTFlNmE4ODBlYmNhOWY2MGU1Zjc1NDFkZjY0IGxlZ2FjeS10cnVuaworMjQ0NDcgYWJlMTRhYzYyMDI0MjEzNzU1Mzg3ZDYyYzFkMDkwOTY0ODY1Y2FjMyBsZWdhY3ktdHJ1bmsKKzI0NDQ4IDk0MzYzOWI5NDRhYjRlZTMyYjMzZDk0ZmIxNWUwYjdkOGQ4ODMyODQgbGVnYWN5LXRydW5rCisyNDQ0OSAxOTdhOTA0ODliZWVkOWM1ZGFkNTQ3MGZmMTVjNWYwYzhhZjAxYTY1IGxlZ2FjeS10cnVuaworMjQ0NTAgNWI4ZjA3ZTYzOTljMWU2NzAyZTlkYTQyMzUxNTlmMTY4YmFhOTc3ZCBsZWdhY3ktdHJ1bmsKKzI0NDUxIGEyZDAzY2ViYTgwZWJmYTYyNWNjMmE0NTdlOGYxMDQ1MDdmM2ViMDUgbGVnYWN5LXRydW5rCisyNDQ1MiA2NzUwOGEzNTFhYTJiZmJiNjI3OTA0MGJmMDc4Zjk3ZDExYjIwOTJhIGxlZ2FjeS10cnVuaworMjQ0NTMgMWM2YzAyN2ZkMTEwYmY5YjVlM2Y0ZjQ5YTI5MmVmNDhiYzY1MGU4ZiBsZWdhY3ktdHJ1bmsKKzI0NDU0IDUxYjQ1NzJjZjAxM2QxYTZjOGM3OTZiMThlMjBmNTZiODU5ZTczNTAgbGVnYWN5LXRydW5rCisyNDQ1NSA4NDJiMjgwNDIxYmE2MWVjZDRhMTlhZGJmYzA5MWI3MDZkMmU3NjQwIGxlZ2FjeS10cnVuaworMjQ0NTYgNzI5NjZjOWRmOWE5OTg3ZWNjNjMxNDNiMjI5OGE0NTk1OTdmNGIwMSBsZWdhY3ktdHJ1bmsKKzI0NDU3IDk2YTA4ZmQzOGVmODEyNTk4ZDQ1OGZmOGEzNzQxODRmMzViYjkxOWMgbGVnYWN5LXRydW5rCisyNDQ1OCA4N2ZhNmU5YmQ3N2VjM2M3YmQ2MTgxM2RkNmM1MzJjN2IyNTZjYzAxIGxlZ2FjeS10cnVuaworMjQ0NTkgMzRmZTc0MzM1MjZiYTQ3ODViYTZlMjA2ZjAyODQ4ZmFiNzI4MWU0MSBsZWdhY3ktdHJ1bmsKKzI0NDYwIDkwYTBkODAwMzNiNGY3MDM0NmJmZjk2MGZlNzdiMGViOTk2OWVjODUgbGVnYWN5LXRydW5rCisyNDQ2MSBkNDUwOWNmOTNmNTBmOTJjMGE2NzJiMzE4N2QzY2Y4YTQxODhlZmU0IGxlZ2FjeS10cnVuaworMjQ0NjIgOGU3MjQ1NDYwZDMwYmZmNDllOGQ3NTFlMTZhNWZhMjRmZGVjZTUwNCBsZWdhY3ktdHJ1bmsKKzI0NDYzIDBkZDE2ZmQzNmVlOGU1YzRiOTE1NTVjNzZmNDU3MGNjZWQwYmJkZDUgbGVnYWN5LXRydW5rCisyNDQ2NCA5MThiNTczNTRkODc0OGI5NzM0ZDEzYzJhNDQyODU0YTJkMGU5OTQ2IGxlZ2FjeS10cnVuaworMjQ0NjUgYmU1ZjUyOTYyYWRiMzRkMmQ1M2NhMWEwYjI3ZGJlNmUwYjc2Yjk2MSBsZWdhY3ktdHJ1bmsKKzI0NDY2IDExYTk2OWUyZmE1MDUzNTZiMGYwNmQzZDBkY2ZkMGI0Y2EzOTMxNjEgbGVnYWN5LXRydW5rCisyNDQ2NyBhMjBiMzcyZmI5MzljMjIwODQxMDhlYTVhMDIxY2M5YjQzMGNmNTJhIGxlZ2FjeS10cnVuaworMjQ0NjggYmNhNTNhMzdhOGE1YWZlMjQ5OTg2ZTA5Mjk2NjBkMjZlN2U5MjUxZSBsZWdhY3ktdHJ1bmsKKzI0NDY5IDlmZWNiYTUyNjkzNjdhZWI5M2NhNzU1YWY4MWE4NWM5MDQ1MTRlYjcgbGVnYWN5LXRydW5rCisyNDQ3MCBlNTkyNDcyZDU1YTM4ZjBiZGQ0ODhkYTFlZDM5NWU5MzQxYzA1MjE4IGxlZ2FjeS10cnVuaworMjQ0NzEgMWFjYzRiYTczYjlkMTYxNzdjMzZkNzE3NWVjYzBmN2NlZDkwOGQ5NCBsZWdhY3ktdHJ1bmsKKzI0NDcyIDZmYTk2YjMyOWUxNWVlMWMwNWRmNzkzYjZkZWVjMDQwNzM3N2QzZGEgbGVnYWN5LXRydW5rCisyNDQ3MyA3MzM4NGUxM2JkMmFlMTEyYmU0NmRjYTVhOGIxMWZlODljMDgwNDg3IGxlZ2FjeS10cnVuaworMjQ0NzQgOTQzY2E4MWFkMWRmM2Y1Mzk5NzMzM2Y4YjVkYTNjMDg1OTU2YTMwZCBsZWdhY3ktdHJ1bmsKKzI0NDc1IGUxYTY3YmU2YzZlNDBhM2UwYjY1ZjI0YmNmM2ExZDRhNjIxNGMzMDEgbGVnYWN5LXRydW5rCisyNDQ3NiA3YjY4Nzk3MTRiNzQ2NmU0NDlmMTdhMjczMzZlYmNjZGJmNDdlZjRlIGxlZ2FjeS10cnVuaworMjQ0NzcgMjFhYzU1ZmIyZGQ4YzgyYWQyMGZjZjZjMWNhOGNkOTNkODQ4MTcwZSBsZWdhY3ktdHJ1bmsKKzI0NDc4IGNmZTQwN2U0ZDhjMDE1ZGE2NGIxODc4ZWE2YjI5YmM5NGU4ZGYyYTYgbGVnYWN5LXRydW5rCisyNDQ3OSAwYjRhZWI0MTNkN2RmNzMwYTg4MTZlZTgzNjBiMGExODAyZjFhZWY5IGxlZ2FjeS10cnVuaworMjQ0ODAgZmQ0MmVhY2U1MGVhNWRhYjQ2NzYzNGJmMWY3ODVmNWFlYTg3Mjc3YyBsZWdhY3ktdHJ1bmsKKzI0NDgxIDQ3NWM4MjcxZTA1N2U5ZmU4YTY2ODRlNGU3ZTBkODIwOTMwNmE5ZGIgbGVnYWN5LXRydW5rCisyNDQ4MiA4OTA1ZTY3MjVjYTFiM2E4MzA4MTdiZjA1YjM3OTA4ZWQxYzc0NzQ4IGxlZ2FjeS10cnVuaworMjQ0ODMgMmRmYzYwMGY5OWNlZTZkNjIxYTc5ZGZmMjFhMTVmMWFmN2YzMTFhOCBsZWdhY3ktdHJ1bmsKKzI0NDg0IDI0NThjYmNjMWRkMzc2NWU2ZjZjZTViODMyYzlhNzJkNmZkYjRjNzAgbGVnYWN5LXRydW5rCisyNDQ4NSBkZjJmZmIwY2Q2YmJhNjBiMjJjYjhiODUwNWM4OTMwNDRmMWFkNzYyIGxlZ2FjeS10cnVuaworMjQ0ODYgMGI2YTE4YzZlNTllYzQ1MDg1NmFjNmQxYmI1OWY4ZWM2OTE1YzkxNSBsZWdhY3ktdHJ1bmsKKzI0NDg3IDc4OTI5MmNmMDkxNGM0MzYzZDQxNDZlNGM2YjEwOTcyMTVmMmY1NmMgbGVnYWN5LXRydW5rCisyNDQ4OCBjOWE3OTY0MDBhNTFjNTE0ODdjMjcxZTMzNTQxOTU2YzdlOGYxYTc5IGxlZ2FjeS10cnVuaworMjQ0ODkgZDRjYzA1ZjZlMTgzOWQzMGY0ZGIwYmE5ODE5YjUxNzcwYTlkMjg4ZSBsZWdhY3ktdHJ1bmsKKzI0NDkwIDdkMWVhYzQxY2UzZWNmZTBhZTJjZmQ0OTI3MTJjOGY4ZjU0YTczNmIgbGVnYWN5LXRydW5rCisyNDQ5MSBiYzUxZGU2NDNiNWU1OGNhY2YzZWIxNjdjY2U5NDcxNGVjZmFjODBjIGxlZ2FjeS10cnVuaworMjQ0OTIgNDg1NDIyOTAwZWYwNzljMjE3ZmM3NWRmYjNmYjcxN2Y1OTllNjE2MCBsZWdhY3ktdHJ1bmsKKzI0NDkzIDBmYmM5Mjg5YTRjN2NlNDAzOWJjNGYxMmNkNDgwYzhjN2Y1MmFlNGQgbGVnYWN5LXRydW5rCisyNDQ5NCA5NDRkNmUwMmYzNTkxNzc4M2I0Y2I4YjM2NTVkNmMwZTM0NzljYTM4IGxlZ2FjeS10cnVuaworMjQ0OTUgNDczZjI5NDExZjNiMmVkMjM4NzM1NmQ3MTYyOTQ5ODNmZWE4M2E3ZiBsZWdhY3ktdHJ1bmsKKzI0NDk2IGFjMTM1N2ZkMWFlYTFmOGExMjRjZDgyMjY1ZWNlN2FmZTk0YmQxNjkgbGVnYWN5LXRydW5rCisyNDQ5NyBjMmJmZmE2NzJiNzU5YmY5YWYzNzUzMzMxZjdkZWU2ZTk4MTJiOTZiIGxlZ2FjeS10cnVuaworMjQ0OTggYWViY2U0ODViNTZiOWNiNTA1OWFhNjhhYmMxYTcxODllMGZlYTJkNyBsZWdhY3ktdHJ1bmsKKzI0NDk5IDAxODkxODZmNGVkOTE4MjI5MWZlNzQwNzdkNzhjZGI5MTE1OTBjMWQgbGVnYWN5LXRydW5rCisyNDUwMCBlZjZmNjkyYzc2ZTIyYTliZWYxZTc4M2QzYTlhOTA0ZDE5NjhiYWI2IGxlZ2FjeS10cnVuaworMjQ1MDEgMDhmMjFhNTM3NGQ5YTlmYjljOWFiMjRlYmNiOTRjM2FlMjNkNjJkNSBsZWdhY3ktdHJ1bmsKKzI0NTAyIGE2MjNmOWNmOTUzNTQyMzFhMmRjYmJjMjViMGMwZDI3M2FjODRkOWYgbGVnYWN5LXRydW5rCisyNDUwMyA2YTczZDU4ZTE3NDcyMmYyOWY4ZTE0YWM4YmUzZDAwZjJhOTk3ZTY4IGxlZ2FjeS10cnVuaworMjQ1MDQgMzNjOGQzMzVhMmM0Mzc3NjJlOGE3YzFhMDcxYjRiZWViMzMzN2E1MCBsZWdhY3ktdHJ1bmsKKzI0NTA1IGMxOGFkNTJkZWNlMzVjMzgxY2RjOGRhYzQ4YzAzOWJjMWE2ZTdjMzAgbGVnYWN5LXRydW5rCisyNDUwNiA0MjZjMGQyNGRlYmQ4YTU4ZWU3YjYxNmQwNTE3ZDNmNzJiMjZlYTVjIGxlZ2FjeS10cnVuaworMjQ1MDcgMTUxOWQ2ZmFhYjE1OTQwNDVlZGE1N2UzN2M1NzAxOTVmMzRiNDI2MCBsZWdhY3ktdHJ1bmsKKzI0NTA4IDViM2IyOTI0NzU3MzVhOThmZGNmMThlNzBmZjY0MGJjMDlhZjUwM2QgbGVnYWN5LXRydW5rCisyNDUwOSA5MjA5MDJmNWE4ODRjMDlmNDVhOGQwMTJmNDllNWRmZmExNjA0OGQxIGxlZ2FjeS10cnVuaworMjQ1MTAgYWQ3YjQ0MjRhYWI2ZjNiMzNiNGEzNDg3NGI3ZDY0MTU0YTdiNzFhNyBsZWdhY3ktdHJ1bmsKKzI0NTExIGYxN2EzN2RlNjI4NWFhNTFkZGVhYTkzYWM1OGI2OGMxMDQ4ZDc2NGUgbGVnYWN5LXRydW5rCisyNDUxMiA2MDQxNWJmNWY4ZjJhNDY2MWUwOWY5ZmE1YmM1ODRlMDc5YWNlN2MyIGxlZ2FjeS10cnVuaworMjQ1MTMgOTQ3OTMxMzkyNjk0ZWQzOWEzMmE5ZmIzNWYzN2UyZTFkOTBlMmU3MCBsZWdhY3ktdHJ1bmsKKzI0NTE0IGRiOWI1OTc2ODI5ZTQ0N2MzYTM2ZjNmYTk3YTJlZGMzZTM2NTZkNTcgbGVnYWN5LXRydW5rCisyNDUxNSBjODRkZjg0ODYxNjM2NmY3YWZiODc2NDEwODhlYjhiNzYxYzI1N2Q3IGxlZ2FjeS10cnVuaworMjQ1MTYgZDk1ZWI3ZWM0NTUzNTQyYjU4ZWFhMmMxNTI1Y2M0ZjdjZThlNWZhOCBsZWdhY3ktdHJ1bmsKKzI0NTE3IGY3OWU0NzE5ZGI5NjQ1ZjVjMzgwODU5NmVlNDhhMmNhMTk5OTc4NjAgbGVnYWN5LXRydW5rCisyNDUxOCA4NjRjYzU5M2JkZGEyNzdkZjk3OTlmNDAxOTMyZTc4M2U3MGU2ZWYyIGxlZ2FjeS10cnVuaworMjQ1MTkgODE5MjhjOWQ3MDExN2VlZDZkM2EyYzQyMDJhM2Y3YTMzMWQ0ZGM0ZiBsZWdhY3ktdHJ1bmsKKzI0NTIwIGJjZjY2NmU4ODMxMjFkMmI3ZTM3ZTcxNTNkYzBjMGUxNzY2MTNmN2EgbGVnYWN5LXRydW5rCisyNDUyMSBlYWQxZmEyNjk1MDJhMWNlNmZiNGZkM2I1OGQxOGQ1N2U4ZjBhOGE1IHJlbGVhc2UyMS1tYWludAorMjQ1MjIgZDgyNjVhMGMzY2YwMjg4YTZkMjFlOWVkYjljNTA1NTVmMzdjZDU3OSByZWxlYXNlMjEtbWFpbnQKKzI0NTIzIDJkMjE2NTBmNDZmODlkMmVhMGZjNWJkYTY2YjdiYWQ1NzFkNDUxNWQgcmVsZWFzZTIxLW1haW50CisyNDUyNCAxNTFiNjk2N2JkMjEwYjJjMTJjZTViMWQ3ZjhkOWYyODFkNjg1YjAxIHJlbGVhc2UyMS1tYWludAorMjQ1MjUgNjcwOWFkNGZlNzVlYzhlNTU4YzZlZWE5ZjFiY2Y5NTM0NDc1OGRkZSByZWxlYXNlMjEtbWFpbnQKKzI0NTI2IDNiMDllYTcyM2VjZTcyMmU5MWM4MDM5MjlkZTFkNjUxZjAyZjcwZTkgbGVnYWN5LXRydW5rCisyNDUyNyBkMjZlNjU5NTA3NDAyYzM3NmQyOGM1ZTNhYzc0ZDUwNDNkZjU4MTUwIHJlbGVhc2UyMS1tYWludAorMjQ1MjggMTk4YWViZTEyMzk5OGQ5NjVkN2FhYWZiNTE2MjE4ZWQxN2U0ZjIzNCBsZWdhY3ktdHJ1bmsKKzI0NTI5IGEzOWFmODAwYjlhM2VkOWY0N2U1MTRmNjBkMGJkZjljMmM4MzljOTggcmVsZWFzZTIxLW1haW50CisyNDUzMCAxNDhmZmQ5NTc2MThkMzJlYWUwOTRiZDk5OGRkNDM1NmFiMDlhYjIzIHJlbGVhc2UyMS1tYWludAorMjQ1MzEgNjU2YzRjZjUxNjVmYTgwZGMzNWE2NzY3ODRjYmNlNzQ5MDhkZjNjYiBsZWdhY3ktdHJ1bmsKKzI0NTMyIDkyMDVjZmI3NzA5NDY2NTAwNDE4MDgyZDliMDFhN2ZiY2U0NTFiYWIgcmVsZWFzZTIxLW1haW50CisyNDUzMyBkMjI5MGU5N2RlMTg3ZDNkZDk2NGQzYmFiYWEzNTM2YzY5ODQyMTQ2IHJlbGVhc2UyMS1tYWludAorMjQ1MzQgMzQzMjdjZjQ1Mjk5NGE4ZjA1YjM4NmFkOThkMjQ2NDI0NDlmNDY0YiByZWxlYXNlMjEtbWFpbnQKKzI0NTM1IDIyZDgyMTY3M2U1MjY3YTEzMzVkODhlMjNjYTI4ODIxNTNhMDk2ZjYgcmVsZWFzZTIxLW1haW50CisyNDUzNiAwMmQwMTcwMzk3ODg1YzZkZTc2NTc4ZDc1NDAwMGI4YTIxYjM0OGFhIHJlbGVhc2UyMS1tYWludAorMjQ1MzcgNGFmMzE4NmU2NjMxNTE4ODE3MGIwN2IwYmYyYjk3MWVlMjQ1M2U4YiBsZWdhY3ktdHJ1bmsKKzI0NTM4IDVhYjBkYzdmMmViMDQ2MmZmZTM0NTFlNzgwZjE4OTY2YzA0YzkwZTYgcmVsZWFzZTIxLW1haW50CisyNDUzOSA5NWI0MmYxMDU1YzI0ZTcwYzE5NGJmYWIwYWM2NzI1MzczNzkwNjM2IHJlbGVhc2UyMS1tYWludAorMjQ1NDAgMGJjODgzODQwN2JiNTc5NmU4OWFiYWZhZDZlYjEzODZiZGYwZGJmOSBsZWdhY3ktdHJ1bmsKKzI0NTQxIGFjY2JlNTY4NGFjNjE0ZDVlYjMzZDk5YzM5ZjgwZjExYjJhMjE3ZmUgcmVsZWFzZTIxLW1haW50CisyNDU0MiAwMGVjZmUxOWE4ZDI5ZmVhNDRlZGQyOTM4NmM5YWE4MzAxN2FlOWExIHJlbGVhc2UyMS1tYWludAorMjQ1NDMgMDYwYzM3NTg3OTUxYjFhODQxYzUxYTQyYWI5YWFhODBkNjRlNjg0MCByZWxlYXNlMjEtbWFpbnQKKzI0NTQ0IGEzZDAxYTIyNTMyOTczZGI2MTMxY2JlMTU3ZmNhYWFhMDZiMDg0NTkgcmVsZWFzZTIxLW1haW50CisyNDU0NSA0OTMwMTk4ZjkyZGJmMzYzNDFjMDIwMjc4ZGFlNmQyZGQ5OTUwMjU5IGxlZ2FjeS10cnVuaworMjQ1NDYgODAzY2NiZTNlZTdjYWI1YzIxODI4YTBjZGI1OGNlNDczZThjYTFiMyBsZWdhY3ktdHJ1bmsKKzI0NTQ3IDlkYzg3ZTYxYjVhMmUyMmVlMjI5ZTAyY2M5OWY3MWNiOWJkZTZiNzUgbGVnYWN5LXRydW5rCisyNDU0OCBiNzgyNDkwZGE3ZjA4MjE4NDI2MTQwZTBiMjVjMDgxOGVjNzM0YzBkIGxlZ2FjeS10cnVuaworMjQ1NDkgODlhNWMxMTA2YjgyZjE4MDg3MjBmYjc5NThjZGU1MzlkOWZkYzJiNiBsZWdhY3ktdHJ1bmsKKzI0NTUwIDQyZDA4MTk1NDZkNjA5ZmI4MmI5YmMyNjM1ODU4NGM3YjNmZWQ5ZDQgbGVnYWN5LXRydW5rCisyNDU1MSAzZTg0NjBmYjJmYmU0OWY4MDc2ZmU1MzE4ZTcwNTc0NWVlMGE1NzdjIGxlZ2FjeS10cnVuaworMjQ1NTIgOWQ2ZmJjYjk1MGY5YjM0YTRkYzFkYmMxZTQ1NTg3MTE2M2JlZDZhZSBsZWdhY3ktdHJ1bmsKKzI0NTUzIDU0ZGRjMzc5ZDRmYzI4OTgwMjg5YzAwMDQwYmZmOTQ5MDU0YjdiZGEgbGVnYWN5LXRydW5rCisyNDU1NCBhZDg3Njc0ZGUzYTFiM2M0ZWZlZTI1NjNhZDI1NzQyZWVlZmQ2ZGVlIGxlZ2FjeS10cnVuaworMjQ1NTUgNWMwYmE2ZWJjNjJkMGNkYjkzMjUzNjM0NTBiNjFjMWEwYTJiMDAwNyBsZWdhY3ktdHJ1bmsKKzI0NTU2IDIwMzQ5MDJiMGYxYWM4NGFmYmI1ZWU5N2MxOWY4MmRhZGIxZWM3YzUgbGVnYWN5LXRydW5rCisyNDU1NyAxMjg5YTA1NTllNWE0NGRkMWQwYzdlMDdhNTRiYzc1YTQxNjU0YjhmIGxlZ2FjeS10cnVuaworMjQ1NTggYmE2YTdhNWMzMmU4NzE3MzFiZmM3ZDU2MzBiYWVjNmQ5MDA4MTg3NiBsZWdhY3ktdHJ1bmsKKzI0NTU5IGNiOTIxZDQ4M2UwMDk0MmU0NGZjMTI2M2MxOTliYzRjOGQ1YmFlMTcgbGVnYWN5LXRydW5rCisyNDU2MCBiYTE2ODU2YmZiYWJkOGQ0ZGVhMDEyMGY2ZDkwMGU5ZDA2ZWQ3MjJkIGxlZ2FjeS10cnVuaworMjQ1NjEgMDYyYzZmNDcxMDZmYmUxYWNmNGM4MDhmYzMxNDAyZGE0YjYyYWYwMyBsZWdhY3ktdHJ1bmsKKzI0NTYyIDIyNGVkYmFmNjMwMTkxNTQ0MjUxYmEyODc1MDcxZTc4ZTMzYjMyOTYgbGVnYWN5LXRydW5rCisyNDU2MyBiMjZkNThiOTgxMGNhZDdlODMxNmMyMDYxODczOGYwMzdmNjhkZTUxIGxlZ2FjeS10cnVuaworMjQ1NjQgNDVlMTE3NzQyNGUxYzc5OTY4NzJmNWJiZWUxMGI3M2VlNzVkN2ZlYSBsZWdhY3ktdHJ1bmsKKzI0NTY1IGUzODZmNmUyNmE0MmUzODFmNzg0ZTllMTkxNWY1MGJjMzBmYWJjYWQgbGVnYWN5LXRydW5rCisyNDU2NiBkMDI0YTVjNzJjYjU2M2M0YjQzNDQ2OWM0ODNkYzk4YmFmODJkZDg2IGxlZ2FjeS10cnVuaworMjQ1NjcgMTkxODZiMTdkMjVhYTM5MDBkN2JhYTBhODgzZjBlMDkzNTYwNzJmZCBsZWdhY3ktdHJ1bmsKKzI0NTY4IDE0NTA3NjcxYzAyY2M5OTg5ZDI5OWFjMTMyZGE2YWZmOGI2NDI2ODIgbGVnYWN5LXRydW5rCisyNDU2OSBmYmY2OGM1OWQ2NmNjZDI2MDcxYTc0YTg3YWQzNzUzMGQ3YWFkNzM5IGxlZ2FjeS10cnVuaworMjQ1NzAgMDhkYmY2YjNjMzE2NDMxOGViYjI1NzBkYmE4N2FmMTQ3NWE1YjA2NyBsZWdhY3ktdHJ1bmsKKzI0NTcxIGU1ZDI5NTU0MmM3ZmI5NjYxMTY5YzE3YTg4MDE1ZGJiZjkwMDcxMTEgbGVnYWN5LXRydW5rCisyNDU3MiAxMDJkMThlYTAyY2ZhYzM5YTIxMzhlYWI3MjllYTI1OTFjODhiMDNkIGxlZ2FjeS10cnVuaworMjQ1NzMgYzUwNmJmN2IyNmI4YTBmMWY5OGYyY2U5YWYwY2NkMzk2YjdjODY1MiBsZWdhY3ktdHJ1bmsKKzI0NTc0IDQyNzFkYTcwZWQ5ZTEzNjIxZjNlNTc1NWJjMGViMjQ2NGI5MmQzZTMgbGVnYWN5LXRydW5rCisyNDU3NSBlOGZlYTk1YTgyYTQwMzYwNzgwYWRiMzAwYmFiNGY0NzI3NGFiNTM1IGxlZ2FjeS10cnVuaworMjQ1NzYgMmYyYWJlZWVmZDg3OGJlZjMzN2M3MTZiZTg5ZTAyMjU5ZDUzMjVhZCBsZWdhY3ktdHJ1bmsKKzI0NTc3IDI2NTY3ZjI4Njc3ZTE0YWZiNDVlZDlkNWVmM2E4MzhmNjg1YTA2YmMgbGVnYWN5LXRydW5rCisyNDU3NyBhYmVjNGUzYjA4MWYyZjgwMmMwZjI3YmMxZWE3MGVkNzUyYWJkODRjIHJlbGVhc2UyMS1tYWludAorMjQ1NzggNGRhZTg0MmFhN2M1OGZmZGU0YjQ3YmY5NTAyODNmNzA3ZDM3OTM0NSBsZWdhY3ktdHJ1bmsKKzI0NTc5IDdhN2Y1NTdiNGQ1NDE4ZWIzNzAyZGE1MmU5NWRjOWM4M2RlOTZlMmIgbGVnYWN5LXRydW5rCisyNDU4MCBkMjk2ZTZiYjE3ZTU0Y2YwN2NmMDFlMWFhZmNmYmFmYjc0OTBjOWRlIGxlZ2FjeS10cnVuaworMjQ1ODEgMmI1ZGM2Yzc3YzNkZTZkZmI1ZjMxNWY5NTliOWEzYzc0NTdlNWEwNyBsZWdhY3ktdHJ1bmsKKzI0NTgyIDk3NzA5ZmQ4ZmRhMDI2YmVlOGFhM2Q3ZThlYWI1M2IzYjMxODZmOTcgbGVnYWN5LXRydW5rCisyNDU4MyBhYzNmZGQxNDEyZDllYWE4M2M3Y2MwMTU5MTQ5NTZkNjUwNjYzMDY5IGxlZ2FjeS10cnVuaworMjQ1ODQgZDY0ZGZiZGM1ZjhjNDQ4MDZjMDI0M2MyNjAyYjMyYzIwMTA2MWM0YiBsZWdhY3ktdHJ1bmsKKzI0NTg1IGVjYmJlY2NkZTA3ZGQzYjk2MDVlNGNiMDg1YTc5MjkzZTg2M2MwZWYgbGVnYWN5LXRydW5rCisyNDU4NiBjZmJlMzhhMDNlOGMxOTA3YzBjYjJlNjk5YTMzMzY2Zjg0MDJhNzk2IGxlZ2FjeS10cnVuaworMjQ1ODcgYjAxMzIzYmZjZjZjZTkzMjlmNDkyZmUyYTg4NDAyYmI4ZTY2OTZmYyBsZWdhY3ktdHJ1bmsKKzI0NTg4IDI4ZjRjZWEyMDlkNzhlYTg2YTUyNzlkZjg2N2Y5MDUxOWMwZTI2MDUgbGVnYWN5LXRydW5rCisyNDU4OSBmNzAyZmYzOTBlNGRjNzczZDJjMWYyNTZhNThhNWExMjhjM2NiMjVkIGxlZ2FjeS10cnVuaworMjQ1OTAgMDNmMzE1NWNiNmViZTE3ZmM2N2Q2ZTU4YWFmYzc3ODViOGY2NjY2YiBsZWdhY3ktdHJ1bmsKKzI0NTkxIDY0MzI0NGY3ZjQ2NzA4ZDFlNzE5NGQxMzgxYzk3YjIzMjBiN2QyYzggbGVnYWN5LXRydW5rCisyNDU5MiAzNjU3YmVmYWJhNGYwYTgxZGExYmUxZWViYmVmNDIyMjk1NWM1MDg0IGxlZ2FjeS10cnVuaworMjQ1OTMgOTkxYjE3MGNmNDM4NWQxMDI1NzFkYTNhOTI2ZWIwMjNmMDM1YTQ1NCBsZWdhY3ktdHJ1bmsKKzI0NTk0IGQzNWE1NzcxYzRjNjlmNGUzYjc4NjMwNzIxNzgxODAwNTRkNWM4M2UgbGVnYWN5LXRydW5rCisyNDU5NSBkNDkwN2NkY2MyOTk0NTQzNjY2MzQ1ZjhjMGJkOGQwYjhjNmU0NTAyIGxlZ2FjeS10cnVuaworMjQ1OTcgNDNiOGE5NjJhMzJhZWVjZWUyM2QyYjZiNGYyMDk5NGU5YWQ3MDhhYyBsZWdhY3ktdHJ1bmsKKzI0NTk4IDUwZjI4ZWQ4MDQ0ZmZjMWM0NDVmYzczYzBmZDFhOGQxNzc5YTE5NjYgbGVnYWN5LXRydW5rCisyNDU5OSAxZTdjMGI4NDk1ODRkN2ZmN2ZmYmQ3M2ZhMjBmZjYwYTE1ODI2Yzg0IGxlZ2FjeS10cnVuaworMjQ2MDAgZDUxZjIxNThmYTc5MDcwYTRhZDE1MzU4MTgwMGE1MGJmNGFhM2YwZCBsZWdhY3ktdHJ1bmsKKzI0NjAxIGQwYzIwNDBmZWRlN2Q0ZmFkODVmM2E5MTAwZDk3OTJhNDRlMWQ2ODEgbGVnYWN5LXRydW5rCisyNDYwMiA3NzZkZDJlNzY3OGUwNDNkNjVlODRjMWQ0MDg5MWNhYTIzZGJhZTM4IGxlZ2FjeS10cnVuaworMjQ2MDMgOTgzNWJhYjI4NzZlNDJmODNkNmJlYzU0YTBiNzgyYTYwODA4ZTMxNCBsZWdhY3ktdHJ1bmsKKzI0NjA0IDIzNzVkMmRmYjViM2E2MmI4NmNkYThmM2JiYzI5NDRiZGFlOGZiMzkgbGVnYWN5LXRydW5rCisyNDYwNSBlOGRkYWIxMzczMmFiYWQwYjI5NDljOGI5Y2JjNjNhZGVkNzBlMzYyIGxlZ2FjeS10cnVuaworMjQ2MDYgYjgxMGMzMGI0YWExYTdhZDkwZTA3ZGJhOTZkMDQ3NWM0ZjdmNWJjMSBsZWdhY3ktdHJ1bmsKKzI0NjA3IDI0YTZjM2ZkMGU1OGJjMGExOTQzNmQwYWU3Y2Y1NTQ1YzgwMmVhODQgbGVnYWN5LXRydW5rCisyNDYwOCA1OTg5NDQ5NmI1YzczNjJkZDRlYzljZmE2NTY0MzFmNDE5ZDVhMzEyIGxlZ2FjeS10cnVuaworMjQ2MDkgYmI3OGE1MmI4ZmZjZTI3MDVkZTgzYTk1MTA2MDI2ZTUyYzE2Y2JmNCBsZWdhY3ktdHJ1bmsKKzI0NjEwIDExOTQyMjQzMGU4ZmNiZTFmMjBjOTA4OThhNzVmMTVlNGExOTkzN2IgbGVnYWN5LXRydW5rCisyNDYxMSA5YTI0M2VlMzU0YTEzNGNjNWQzZmFiNzczNmI1N2Q1NzM0NjE2NjVjIGxlZ2FjeS10cnVuaworMjQ2MTIgNjJlYTMxN2RmYzdmNGEwYTU4ZTVmMDI2ZWY2ZDViNmQ1NWYwMjU2MSByZWxlYXNlMjEtbWFpbnQKKzI0NjEzIGY1NTMyY2MxNTE0YjdkYjYzNWIwNjY0ZTc4NjYwZTk0ODE4MjdmNTIgbGVnYWN5LXRydW5rCisyNDYxNCAxMmMwOTRhMjMyNzM0NmU2YjliM2E0OTEzYTNmOWM4ZDQwY2ZiZWNkIGxlZ2FjeS10cnVuaworMjQ2MTUgZGU3NjQ2NjNjMzI1YzA0NjdhNDQwMmY2YTZlMTNhYTg4MmMzZDlmMCBsZWdhY3ktdHJ1bmsKKzI0NjE2IGI2ZjU5MmVlYzI0MWQ2ZWNjY2IyNmQ5Yzk4YjNiNzIyZjM0YzNkZTUgcmVsZWFzZTIxLW1haW50CisyNDYxNyBkOTgwZWJjYzY5NmEyODgyOTVhODQ0N2NjY2NjNWQzNjhiZGE2MGRmIGxlZ2FjeS10cnVuaworMjQ2MTggZDg2ZDZlMGQxNThjNWM4MjQwNzQxMmNjMTIzZTA3Yzc0YzM4NjhmNSBsZWdhY3ktdHJ1bmsKKzI0NjE5IDBkMmVlZjYzNmQxMjljNTc1ZDkyZDk4NTg1YWE2NzY2MmU4OTBiZGEgbGVnYWN5LXRydW5rCisyNDYyMCA4OThjODI1ZTA4YWNjY2Q2NDUwNWYzZDJlNjI3OWZhZTU1ZDc4N2I1IGxlZ2FjeS10cnVuaworMjQ2MjEgY2I2MjAzZmYyOWU1YTFlM2I1ODgwMDcwNmZjNTI2NDRhNTRmY2M0OSBsZWdhY3ktdHJ1bmsKKzI0NjIyIDI2MDc0MzNiMTNlOWU4MWVjYTI4MmQzMmEzNjAyYTQyNjgzODk5YTEgbGVnYWN5LXRydW5rCisyNDYyMyA5MDgwNGEzNDg5MjNkYzdmMjc2OGJkMDM3OTM2MDYyNTFjN2U0ZWZhIGxlZ2FjeS10cnVuaworMjQ2MjQgYmZhNWY3YjRlNzg4NTk4YmVmZjFmMjBmYzg1N2VjMDNkNWJiZmQwZiBsZWdhY3ktdHJ1bmsKKzI0NjI1IDAxMDI2OTI0MTdhZjBmZTNlMTJlMWIyMTdlYzFmOTU1YTMwY2U2YTggbGVnYWN5LXRydW5rCisyNDYyNiA5MWRkMjIzODI5YzZlMDM1NjAxMWJlMmM2YzFmNGJiNDc5YjE2NWE4IGxlZ2FjeS10cnVuaworMjQ2MjggNGQ1MDk4Y2ZhNzgxYmZlM2E3YmYzM2VhNjY0YmIyYTE1OWMyZjFhZSBsZWdhY3ktdHJ1bmsKKzI0NjI5IDliMmQxZjhmNGJlMzQ5ODNiODQwOWYyOTEwM2YwOTBlNThhYzVlZmQgbGVnYWN5LXRydW5rCisyNDYzMCAwYzJlYTIzM2FkMjQ5M2I1MDQ5YjBjMmQ4MmVlYmMxMGZlOGE1NWI0IGxlZ2FjeS10cnVuaworMjQ2MzEgYjU4M2NhZjFiZTg4MmIzMjk4MDliMTkwM2Y5OWU2MDBlZWNjYjgyMCBsZWdhY3ktdHJ1bmsKKzI0NjMyIGJiNTY2ZjUyNWYxMmNmODhlZGNiYTAwN2I5ODdjZjgzMjg1NTM1MjMgbGVnYWN5LXRydW5rCisyNDYzMyA0YmNmYjlkYzU3ZTAzZGNiMzUwODgyZTc2MDc0NmQ3MzEwYWZhNjgxIGxlZ2FjeS10cnVuaworMjQ2MzQgNjBkZjJiZjg1NGFjZTQxN2I3MTAwOGE1NDYwMThhZDEyYzIzOTVhNyBsZWdhY3ktdHJ1bmsKKzI0NjM1IDNhMmNmNWU0NTY1NmE5OGE3NTcyOTQzNWEzNjNkNmM5YzBhZjBhOWIgbGVnYWN5LXRydW5rCisyNDYzNiAxODUyY2FiYTcwMTRiNDE1NDk3YjM5OGIyZmIyMDk1ZjFkN2ZkNDY1IGxlZ2FjeS10cnVuaworMjQ2MzcgNjQ0ODg1MTE4ZmU3Nzk4NzZjNzM5OWJhYWIzNGJmNTZkZGU3M2E3MCBsZWdhY3ktdHJ1bmsKKzI0NjM4IDc1MmZhNDg1YzRhYmE1ZjQ3MmExMTI1YWY3NjkxYWVkOTJmNTk5NTAgbGVnYWN5LXRydW5rCisyNDYzOSA4YTI2YmIzNjlmNTM3N2Q2OGEzOTcxMGZjYTQ1NGVmNzZkOWEyY2NiIGxlZ2FjeS10cnVuaworMjQ2NDAgYzlhZGFjZTNjODIzZWZkZjU3ZDRhZmQ5OWEzZTYwMjI0MTVmNzBkMCBsZWdhY3ktdHJ1bmsKKzI0NjQxIDM0YTFhNTBlNmFiNmY4MTkxYTE2YzZlMmZmM2JmNjRiZDhkZWVkMDMgbGVnYWN5LXRydW5rCisyNDY0MiA3ODRjOGJjMGIzMDM0YTU0ODVhM2ZkNzlhODJhMzZmZTAyNjgyNWZhIGxlZ2FjeS10cnVuaworMjQ2NDMgODQ4ZjY5ODg4MjlmMWEyZTU0MGQ0ZmZmNzdmOGE3NTIwNjVjMzFlYyBsZWdhY3ktdHJ1bmsKKzI0NjQ0IDQ0MjBhNGJkOTZhNDRjMWEzMGM1YTA5Y2I3NjQyNmRlZWM3OTFjNjEgbGVnYWN5LXRydW5rCisyNDY0NSAyYTdkNWZmZWNlMWM5Yjg3YmY0NDNiOGE1YzgzNjE3OTM5OGQ1NmFjIGxlZ2FjeS10cnVuaworMjQ2NDYgZmJiZDhhNGNhN2E2ZmNjNWI5ODk4YTliN2VjNmQwNDdiODQyY2JmNSBsZWdhY3ktdHJ1bmsKKzI0NjQ3IDZkODc0YTkxYjU4YjgxYjg4M2EwYzllM2ZhM2M2ZGY0NTFjODJiNTYgbGVnYWN5LXRydW5rCisyNDY0OCBjZjJmYjIwYTZjZTdlYjNiMDJlZDI5ZWJhYTYzYmFkNjEwMTcxNGUzIGxlZ2FjeS10cnVuaworMjQ2NDkgMThmNjA4MTBiOTRhM2YwMTBmZTRkODE0NWUzZGUzNTdmZjdiZWY3ZCBsZWdhY3ktdHJ1bmsKKzI0NjUwIDdjNmRmOTY0YjA0YmI0MTRhYjQ1YjliYTU2MmIyMGI1YzVjMWIxZTAgbGVnYWN5LXRydW5rCisyNDY1MSA5M2Y1NDA1OGVmNDhmNWRjYmZkOWNhMDUyMmM1NjM5MjM0MmM0NDUwIGxlZ2FjeS10cnVuaworMjQ2NTIgNjgwNDBkYjA4NGI2YWE1N2FjZDVlNmYyMjY3ZTVmOTAyOTA2NzUzMSBsZWdhY3ktdHJ1bmsKKzI0NjUzIDUyNWM3NzM2OGNkMDU3ZGYzNTk3NmNlN2JhODg0ODdlMmZhM2UzMGQgbGVnYWN5LXRydW5rCisyNDY1NCAzZDY4ZTMxMTBlMWZlNThlZTZlNmU1MzIxY2JlNDdjZDM0MTM3NTc3IGxlZ2FjeS10cnVuaworMjQ2NTUgMGIxZmFmMTE2ZjYzZWE4YzU2ZDE3ZjI0Nzk1MDEyYWE5ZDQxNzBhZiBsZWdhY3ktdHJ1bmsKKzI0NjU2IGEzOTJlMWZhZTYxZGQyMmZlOTEyMjgxNDVlZWUzY2UwOTlkMjIyMGEgbGVnYWN5LXRydW5rCisyNDY1NyA3YTU4Y2QzMzdjZjQ0MGExYzExMGQxMmM5ZTEyNTA1MzVkODIzZjg5IGxlZ2FjeS10cnVuaworMjQ2NTggZjdlYWVlYWM5YzY1ZTdiZTRiODFjODczNmQ4NWIyYzNlNmU5YWIyNCBsZWdhY3ktdHJ1bmsKKzI0NjYwIGQxZjkzOGVlZTcwMGEyNjI5MTc3OGFkOTA4NTE5ZjczMGU3ODBmNzggbGVnYWN5LXRydW5rCisyNDY2MSA4YThmNTdkY2Y5ZmU3MzYzOTdmNDk5YjMyNTMzODdhNjM1ZGE0NDY0IGxlZ2FjeS10cnVuaworMjQ2NjIgZjU5YzZiNWRkMTIyMmIyZmNiMjJkNTRmYWZlNmU3MjI4ZDc0OWVkNSBsZWdhY3ktdHJ1bmsKKzI0NjYzIDEyMzEwZDY0M2Q4ZDcyOTc2NWQxMTMyYzQxOTZlMzJiYjA5MmNjYmMgbGVnYWN5LXRydW5rCisyNDY2NCA5MzhiNWJmNzRmYjk0ZjViZjg1NWY3ODMyZDBhMjMzZDZhNDg2MTk2IGxlZ2FjeS10cnVuaworMjQ2NjUgYTUxNDZmODQzMDEwMDYyNzUwYjM0MWU2N2I5NzMzMWY3NzU0OWI3OSBsZWdhY3ktdHJ1bmsKKzI0NjY2IGJlOTkwZTcwM2QwZjE0NzJjZmRjNzQyNGY5MTE4ZWY2NDZiMjZjMDIgbGVnYWN5LXRydW5rCisyNDY2NyBiZTMyODNlZDhmOTc1ODg0MzkzMDRjODU5NDAwZTI3NjcxNmRhYjhlIGxlZ2FjeS10cnVuaworMjQ2NjggMjU3YzkzODkwMGE2ZTVlM2Q0ZTc4MDFmZThhOGY5ZDAxMTlkZDk4ZSBsZWdhY3ktdHJ1bmsKKzI0NjY5IGZiZGRiNjRkMjFjMmNiM2Q5OGVjYmZiMGM5NTE1MjE2NmZiODM4NzUgbGVnYWN5LXRydW5rCisyNDY3MCAwMDNkYzU3M2IyOTUwY2ViNGU3ODMxNTI2MjYxZDQ1OGU1YTU2ZTdhIGxlZ2FjeS10cnVuaworMjQ2NzEgYzY3MDQ2ZWY1Mzg1NjdiY2Q0YWM5NTcyOWMyNzBlNTBiNTM1NDgyZSBsZWdhY3ktdHJ1bmsKKzI0NjcyIGRlM2M4OGI1Zjg4OTYyYmQ3ZmUxYTNmNjQ1NGE5MDk2YTBjMWE2NzMgbGVnYWN5LXRydW5rCisyNDY3MyAyZWIyNWVmMzQzODZjMzk3NWRkMmRjZjJlYjNkNzBhN2FlMzk4ZDJjIGxlZ2FjeS10cnVuaworMjQ2NzQgMmMyMDhkYmYwY2IwMzg3NTcwN2JkMTA3Y2Q3MWU1Y2EzYmY1ODc1OSBsZWdhY3ktdHJ1bmsKKzI0Njc1IDI5MDcyZThlOGQ5ODJiMWFmYmE0MjY3OTFhYjNlNzE5OTdlY2NjYWYgbGVnYWN5LXRydW5rCisyNDY3NiBlOGIwOThmZTNkZjg3OGY4YzQxYmRkYTM4M2UwM2NlYWU4ODc3MWU1IGxlZ2FjeS10cnVuaworMjQ2NzcgMzAxMmY2MjZkZjdjYjM1ZTEzMGNlZGEwOWI2MDJmNzNjODA0YjMyYSBsZWdhY3ktdHJ1bmsKKzI0Njc4IDcxZTVlZWNkNTg5ZTU1YzMzNTZlY2JjY2YwYWQyYzgwMmY3ZjhmNWUgbGVnYWN5LXRydW5rCisyNDY3OSAwNDAyMzBjMTU4OTA0N2E3ZTJjYzJmNWVhOTM4N2ZiYjU1OWE3ZjEwIGxlZ2FjeS10cnVuaworMjQ2ODAgNWFiOWE2NWUyMzQ2NjE0NjE1MzViMWE0NDcxZmM2ZjA3YWM2ZmViYyBsZWdhY3ktdHJ1bmsKKzI0NjgxIGY1Nzc2N2Q3NmRlNmRiN2Y0ZjRkZjUwYTQzOWEzNzM0NWRiNzRjMzEgbGVnYWN5LXRydW5rCisyNDY4MiA4YTg5ZmYxZTA2NjJkYjRkYTA0ZTU5ZTZiN2VhOGUzZmM4NmZiZmExIGxlZ2FjeS10cnVuaworMjQ2ODMgZDg3Y2E5MzJlNzBmY2QwYmE1MDBhYTg3MDhlY2NhNTEzNjQ3OTQ1YSBsZWdhY3ktdHJ1bmsKKzI0Njg0IGFmNTE2MDRkMDBkYjI3MTQ0OWI3N2YxM2I2ODE2YTUwNjdiN2ZiYzIgbGVnYWN5LXRydW5rCisyNDY4NSA4YTAzNTA4N2ViNzI5Nzc2YjI3ZGVkMmRhZWJmMTk0ZmU3MDUxZTA2IGxlZ2FjeS10cnVuaworMjQ2ODYgNzM0NjZhNzZmMjVlMmU3MTcyNTI5MDQ4N2FkYzdlYTJmZTE0NDMxZSBsZWdhY3ktdHJ1bmsKKzI0Njg3IGMyOTY2YTdiZDExMzUxNDk4MzlkNDNlMGIxZmRjZTBkNjk4MTJmYTIgbGVnYWN5LXRydW5rCisyNDY4OCBjNTkzOWQwYzc0N2E0OTJjMjUyZWZjNDcyOGMzY2ViYzM2MWFlMTY5IGxlZ2FjeS10cnVuaworMjQ2ODkgNDk3NzJkMzE4NDQwYjhiNDk1NmJhYWQzMDY0Y2E5ZjUwNjYwMDU3YiBsZWdhY3ktdHJ1bmsKKzI0NjkwIDdlMGQyZDU5YmJjZTliN2VjNDg3NTkxYmQ3NjY2MjVkZTljYTY4OTAgbGVnYWN5LXRydW5rCisyNDY5MSA1MGQwMzY2ZThmMDU4MjJmOWNlYjgxMzRjZDEzNDg5MTFkMDcwZmU3IGxlZ2FjeS10cnVuaworMjQ2OTIgNWY1NzEzNDRjODljY2YwMzI2NzBiMGRkNzE4NjJlYjc5YjMyYjNlZCBsZWdhY3ktdHJ1bmsKKzI0NjkzIDExNmFmMmYwMTQ0MmE5MDBiMDg4ZGU3ZTYxNzkwYTI1NGJkMGRhNWEgbGVnYWN5LXRydW5rCisyNDY5NCA3NDNmNjdiZWZiNTdlOTUzMjY4YzcyN2U1ZmNhMTNjMmE1ODNiYjk5IGxlZ2FjeS10cnVuaworMjQ2OTUgNDRlYmVhYjI2OWM1YTc3ZWZlMjA4MDAyZmM4Yzk3OGNmZWU3YjVkMiBsZWdhY3ktdHJ1bmsKKzI0Njk2IDkxMzQ1OGVhZWY5MDBiOWMxNjlmYTRiNzU2Zjg0YzdlOGFjZDJlNTEgbGVnYWN5LXRydW5rCisyNDY5NyBkMTZiMzI3MTgxYThkNmIxNjEzZDIyNjc1MWJlNTZlZmQyY2MzMzBhIGxlZ2FjeS10cnVuaworMjQ2OTggYWJjZDJmNTJmMzE2ZGEwN2YzMjRkNWE0YzE5MTRhNDEzMTA5OGZlZiBsZWdhY3ktdHJ1bmsKKzI0Njk5IGM0NGM5MTE2MDZhNDRjZjcxM2EwMjBmZTA0YTgwYTNhNmYxZGE4OGYgbGVnYWN5LXRydW5rCisyNDcwMCBlYjc4ZjAzZGNkZWM2ODMwMjgzZjNhMWU3MDllNDYwYWJlMGUzMmEyIGxlZ2FjeS10cnVuaworMjQ3MDEgODFhNTc4ZWI3MzQ2Mzk1Y2ZkNzcyZWZiNmVhOTA3ZjE2ZWRkZjk0ZiBsZWdhY3ktdHJ1bmsKKzI0NzAyIDQyY2Q1MDU5NGQwZDk3ODJkMWM3YjYwM2FiYjIxMGY3MzJhZDg1MTMgbGVnYWN5LXRydW5rCisyNDcwMyBkZmFjYzczM2NiZjRiNWM5NDU2YzI3ZDJmZTVkM2YxMzA0Yzg1NTQ3IGxlZ2FjeS10cnVuaworMjQ3MDQgNzUwMzdkODZiMTEzNjMxODE3MGY4ZWM3ZTllZDAyYzI5ZmMzMjQ1MSBsZWdhY3ktdHJ1bmsKKzI0NzA1IDk2YmJiM2QwYzZhMDQ0ZjAxNjI1ZTFhYmU3ZWM0NTdmNDVlMWVlNmQgbGVnYWN5LXRydW5rCisyNDcwNiAyYzMyZmM1ZjIzYzAzNzA0M2YyZTVlMWJlYjczMWRiMzM3YjZlNzFmIGxlZ2FjeS10cnVuaworMjQ3MDcgNjU3OGM3ZGMzMjhiMWU3Mjc2OWY5OWJlNGQ2MjQ1ZDkyYTljMTY2OSBsZWdhY3ktdHJ1bmsKKzI0NzA4IDNmM2VmMDc0MzUzN2IyN2E0MDg3MGViZTdkOWZmMzgwYTAyMjFhMGYgbGVnYWN5LXRydW5rCisyNDcwOSA4MmFmNTRiNDM4MTc3NTFjZTNlNGY0MTA0YmQ0NDUwMjcwNWQwNWM1IGxlZ2FjeS10cnVuaworMjQ3MTAgNTYwMjIyZTlkNDcxMGIwYTRmNjI3NWYyYmQ3NTNhYTI2NWQ0ZmYzMCBsZWdhY3ktdHJ1bmsKKzI0NzExIGVjMzJlNTlkZjQwMGJiNzY3ZDQwNzJkZTZjMmVmYjJmOTQwMDEzMDQgbGVnYWN5LXRydW5rCisyNDcxMiA1YzliYTI0MTgzOTAxYmY1OTI0Mzc4YzkxZTkyZWYyMjc4ODg4MmYzIGxlZ2FjeS10cnVuaworMjQ3MTQgZGUxMjU3OTJiZmFhZGRkMDgyYTc5MDZiOTI1NmMwMjRmY2FiNWFkMyBsZWdhY3ktdHJ1bmsKKzI0NzE1IDMzZDU5ZTE4YjY4ZDQ0NGEzNWQ1NzdjNmZmYTkwNTQxYmY4ZGZiOGIgbGVnYWN5LXRydW5rCisyNDcxNiBjYjA4YmM2OTg2ODU5ZTc0ZDY1YTY5YWMwNDc5NDc1YmQwODNhYzIxIGxlZ2FjeS10cnVuaworMjQ3MTcgNmRhNjA5MWEzMWVlZjIwOWE2MTE0N2MxOWJkM2U4OGJmMTQxNGU1ZCBsZWdhY3ktdHJ1bmsKKzI0NzE4IDA1YmM1OTA1MjI0OTM0ZWZhNDM2NDA4MDMzMmIzM2M2MTFiYzQwMGMgcjIycmMxLWJyYW5jaAorMjQ3MTkgMjJjOTg4Y2MxNTJkMTIyYjI0NzE3ZTc2ZGM2NDA4MzdlOTUyZDkyYSByMjJyYzEtYnJhbmNoCisyNDcyMCAzZDk3YTA1NGY5ZDRhZmU1YTZhNzg2ZDNiNmU4MTdjZGYwYTEzN2E2IGxlZ2FjeS10cnVuaworMjQ3MjEgNjk4YjZlZWI5YTg2ZDg5MzgxYmIzMzU5YTgyNDhjMWIzOWEzZTc0OSByMjJyYzEtYnJhbmNoCisyNDcyMiBlYmY4YTAzNjE1MWQ0NjVjMjU5NmVhODJjZjBhMjExYTkwZjNkZTdhIHIyMnJjMS1icmFuY2gKKzI0NzIzIDIwNGQxZDViMDhkNjhhOGM3OGY1NzA4Mzg1ZGJiYTI2ZTk1MWM2ZTggcjIycmMxLWJyYW5jaAorMjQ3MjQgZmJkNTdlZTViNzdkNzgyNTAwOTI5MWNlNzVhMWQ1ZDg2YTIyMDkzNiBsZWdhY3ktdHJ1bmsKKzI0NzI1IDNjZTg3MWEwNDU1YjUyZDVkYjQ0MjFhYjkwZmQ1NmE5YmZlMTMxYzYgcjIycmMxLWJyYW5jaAorMjQ3MjYgMzYzYjJmNzUyOTM1MWVkY2FiYjA1ZTliYmQzOWYxMjYzNTE3ODIxYSByMjJyYzEtYnJhbmNoCisyNDcyNyA2ZWE3MTkzYmRjMmVhZmQxOTQzZTVhZDgzNTdhOTIyODA2YjZmZWUyIHIyMnJjMS1icmFuY2gKKzI0NzI4IDA2NDMxMTE0OWNiNGQzZGZjNDhiZWUyZmM0ZWM5MTdjMDdlYzZhYzEgbGVnYWN5LXRydW5rCisyNDcyOSAyYWZlNDJmMjQ1NTkwOGYwZDAwZTQzZGJmYWFmMmNlODIzZjA0ZDAzIGxlZ2FjeS10cnVuaworMjQ3MzAgOWM4MGI1YWY4MTIxYTc0YmRhMjcwOGVmYTNhZjhjMWY2MGViNTE3NCBsZWdhY3ktdHJ1bmsKKzI0NzMxIGZlMThlYjA1NTEwNzQwODI2OWI1Mjk2YmRjZTAwMjAzNWQ3YmQ3OGQgcjIycmMxLWJyYW5jaAorMjQ3MzIgY2VkYjUwMzkxNTVhNjU1MzMxNGEyZjc0M2ZmNjM5N2M0ODc2NjQzYSBsZWdhY3ktdHJ1bmsKKzI0NzMzIDMxYTI0OWEzNDBmODE3YWQyOTFiN2JiYjdiNzVjN2M1ZThiY2FkMWYgbGVnYWN5LXRydW5rCisyNDczNCA4NTA4NmYzZTcwZjM0Nzg4OTNmNGM2Y2VkZDcyYTk0YmU4MjAyZTFjIHIyMnJjMS1icmFuY2gKKzI0NzM1IGZkYzBjZjU2YmE5Y2ZkNWYwMjRlZTQyZTdhOTBkNWIxNjBkZmZkYmMgbGVnYWN5LXRydW5rCisyNDczNiAyNzY2OGRhYjc3Zjg4YWNmMmVlYTA1ZjdmMGQ1OGQ2MTljMWNiZDEzIGxlZ2FjeS10cnVuaworMjQ3MzcgMDQwNzI5NDAyMWEwYTZhMDE4YTE2ODIzNDUxZmZmZGQ0NWQ5MjVkMCBsZWdhY3ktdHJ1bmsKKzI0NzM4IDFkODlkYTgyNWY5NTc4ODZlYmRiMmNhMTMxOGZmNTI2MTNhYmQ1YzMgcjIycmMxLWJyYW5jaAorMjQ3MzkgMGE5NDhjZTQ3ZTdhMDZhMzUyNjc1N2Y3YjNmYWZlOTM1M2VjMWRkYyByMjJyYzEtYnJhbmNoCisyNDc0MCBlNjNmNDY2OGM5NWQwODcwOTNlYjY2NGE3ZTI0MWY1NTkyMTY4Zjc0IHIyMnJjMS1icmFuY2gKKzI0NzQxIGZmMWI1NzFhY2E3MTBmNDAzOTE5OThkNjljNWIwNDllMGEzZGNjMzEgcjIycmMxLWJyYW5jaAorMjQ3NDIgOGZiMGMyNGY0ZDQ1MGQ5NDBiNGU1Y2Y2MzMzYzYxY2E2M2M1YzgyYSByMjJyYzEtYnJhbmNoCisyNDc0MyBiMTE3NzRjY2QxMDFmNzMwZTkyNzEzMGNlZjEwYzgxODYxYjAzOGMyIHIyMnJjMS1icmFuY2gKKzI0NzQzIDdmNDY3OGVlZmFmYjE0MzkzNWMzOWMwMzY0ZTBiNTNiMzNkMjg4MjAgcjIycmMxLWJyYW5jaAorMjQ3NDUgNDIxNmVmMTk2MjBiYmRlZGU0Y2IzYjFmMzA1ZjU5NmE4ZTM3ZWU2MyBsZWdhY3ktdHJ1bmsKKzI0NzQ2IDhiMmJkMDc4MDkyNWY5ZDVmMWM2Yjc3NzBlY2E4ODJkMzEyNDQ0NjcgbGVnYWN5LXRydW5rCisyNDc0NyBmNTM2Zjg1Mjk1Yjg2MzdjYmYxNWE3NWUzYTU3MjcxZmYyMjJiNDZkIGxlZ2FjeS10cnVuaworMjQ3NDggM2ZjYjIyNDhiYmU4ZDkwN2U4ZTZjY2UxODg1YzZiMTE4MmJmOGUyMiBsZWdhY3ktdHJ1bmsKKzI0NzQ5IDZiMzBjM2Y0Mzc4ZDQzMDRjZTFlN2Y2ODY0MjY3NTFhZGM1ZWEzZTQgbGVnYWN5LXRydW5rCisyNDc1MCBjMzkyMGM0MzUzMzMxODg0ZjJmMjI4ZGFmZTUyY2FmZjdiZTk2N2U0IGxlZ2FjeS10cnVuaworMjQ3NTEgNTcxZDViN2I3NDZjODJhZDgxMThkNDJjM2I2YTJhZmVjZWFlMDZlZCBsZWdhY3ktdHJ1bmsKKzI0NzUyIDgxMzQ5ZTUxNjU5YjUxYzVmY2RlMmFlYTJjZDFiYTQ5OTZlNzBjZmUgbGVnYWN5LXRydW5rCisyNDc1MyA0Y2IyMjNlZjg2OWJhMDUzN2M3YzkxYmNiNzAzOGRhNzUzODU4NjYwIGxlZ2FjeS10cnVuaworMjQ3NTQgYWE0NzUzZjk0NTcyMjE0MTYyMTYwOWI5OTdkMWYwYmE4MzdiMmFjMiBsZWdhY3ktdHJ1bmsKKzI0NzU1IDU1OTIxMjU1ZWM5M2QyMzQzODRhZjFhNjc2ZTQ3ODE0MTAzNTY0ZTAgbGVnYWN5LXRydW5rCisyNDc1NiAyNzRhYTkxYjQxN2MxM2Y1MDk5MDIyZjIwZmQ5NjMyN2EzM2I3ZDgzIGxlZ2FjeS10cnVuaworMjQ3NTcgZTBlMmI2MTYxYzdmZDZiZGVhZTdhYThjMTQyNDZjYzU1MDI2MzUwMSBsZWdhY3ktdHJ1bmsKKzI0NzU4IGE5NjU2Y2UwMTViMGQ4ZjEyOWQ3OWE4NzcwY2E0MDQ3NWZhMmU3OWIgbGVnYWN5LXRydW5rCisyNDc1OSAwNjNmOGEzMWI2YjhiNzI5ZTJjOGY4N2UxOTM0OWY2MjI3YWI2NGVjIGxlZ2FjeS10cnVuaworMjQ3NjAgYTYyMGVmODRiMGZiMjYyMzE4NTE4Mjg0M2RmY2ZjZjUzNTBiN2M3MSBsZWdhY3ktdHJ1bmsKKzI0NzYxIDNmY2MyZTI5OTJkNGQ1ZTU3YjQ3N2I5NDU1ZTAwOGYxN2YxNGI4ZDggbGVnYWN5LXRydW5rCisyNDc2MiBiMmQzMzkxMzY0YmJiNzMxNmNmMDMwNDgyODk2YmJkNzkwNzM0MjE5IGxlZ2FjeS10cnVuaworMjQ3NjMgZGJkNmE3NjEyMTU5NmJlMDNiM2NjYWE3M2RjYzRmYmY0YzI5NDE0MyByMjJyYzEtYnJhbmNoCisyNDc2NCBhMDI5ZTM0ODMwNGM4ZTdjYTU5MTM4ZjA5NDY1ZWJmMmE4YjkzMjExIGxlZ2FjeS10cnVuaworMjQ3NjUgZmQ5ZDdhZTNmOTRhNzAyNWRlNjVkNTIxOGYzNGIzODhkZDc2NTEyYyBsZWdhY3ktdHJ1bmsKKzI0NzY2IDNkMmNjODU3NzEyN2U1NjNlOGZiMmNjYjRhMDRhMmE1MGI1OThmMjUgbGVnYWN5LXRydW5rCisyNDc2NyAxNDUwZWU2YjhiOWVjZDdkYTk3YWQ2MDI2NjI0MzkwZGJlMmUwMzdkIGxlZ2FjeS10cnVuaworMjQ3NjggYzY1ZmFjN2MyODQzM2U2ZTg2MTRmNWNmODZlODkzNDJmNTkzZGY4YiByZWxlYXNlMjEtbWFpbnQKKzI0NzY5IDk3ZDg1Nzg4MWM4MmFmM2QyZGU5N2I4N2VlZGI2NGVjYjIwOWJjNTEgcmVsZWFzZTIxLW1haW50CisyNDc3MCBmNTQ2NjIzZWYwYzY1NjVkY2ZiNGU5MTRhZTM4YzlkZDdlZmM1NDMwIGxlZ2FjeS10cnVuaworMjQ3NzEgNWE1OTBmMTk2ZWM1ODNhNzE4MGFlN2NhNTU4ZGQyZDZiMWQ5YjQ5YSBsZWdhY3ktdHJ1bmsKKzI0NzcyIDlhNjM0ZDYwNTQyYWU3MTY0NDYyNzMwYzU1NDY3ZWMwMzk2NTFiMzYgbGVnYWN5LXRydW5rCisyNDc3MyBkN2E5ZWJhNzRmZTI2MTFjZmEwZWIwZjEwNzIxZTEwZGIzYzkzNTA1IGxlZ2FjeS10cnVuaworMjQ3NzQgMzBlZmU0NmY4ZTNjYWE1YWIxZmU0NDBhMThiMzE3MzlmYjdlYTQ2NCBsZWdhY3ktdHJ1bmsKKzI0Nzc1IDA1YWQ3YTY5ZDkzMzExYzdkZjFhOWQzYWM1YjM1NDkwODZlNTI1MmYgbGVnYWN5LXRydW5rCisyNDc3NiBkN2QyNWVjMDJkNDEyOWJlY2UzZWYwZWM2Y2ViMDJiNGI3Mjg0MzY3IGxlZ2FjeS10cnVuaworMjQ3NzcgNGY2MjFiYWM3NTI2NWRhMjdlZDQyYjMzYThmMjExYzk0ZTgxMDFkZCBsZWdhY3ktdHJ1bmsKKzI0Nzc4IDUxOTMyOTBhZWYwYTViNGMxZTMzODY4MmU3NTQxODgwYWYzZmRkYjIgbGVnYWN5LXRydW5rCisyNDc3OSA0MGM1NmZlZmExNzcyYjYyOTQwNjlhYTI1M2FkNTMxYjUxNTFjNjY5IGxlZ2FjeS10cnVuaworMjQ3ODAgNzdjNzQ3NmY0MWJkZTc2NzQxMjgzYTA1OTA3YzdkOWMyMmYyYjY5OCBsZWdhY3ktdHJ1bmsKKzI0NzgxIDdlNzQ1NTg5MGZkNmViMWE1OWM2ZmI1NTQ0MTZiMmVhMDMzNDEwYWYgbGVnYWN5LXRydW5rCisyNDc4MiA5N2YwOTk2NzFiYmNkZGU4ZjAyYjhkZTAzYzZiYjMxNTNjODNmNjEzIGxlZ2FjeS10cnVuaworMjQ3ODMgM2FiZjAwMjE1YzFjY2UwNjMwM2I1MjAyZDdlMjlmMTUwZTVkNWZmZCBsZWdhY3ktdHJ1bmsKKzI0Nzg0IGZhMGJkZTNjODZiMjc4Yjk1ZDBkZWRhZGJkN2Y0ZGQwYWQ5YzkyZGUgbGVnYWN5LXRydW5rCisyNDc4NSBiZTVjYTBiMjViZmRjN2JkYjI2MzE4MzBhNWQyZTFhYWQwODBmMzk1IGxlZ2FjeS10cnVuaworMjQ3ODYgZmI2YjNmYzRlMGMxYWFiMTM0NjgwYzllYmYwZjg3NDY3MzcwYTJhZiBsZWdhY3ktdHJ1bmsKKzI0Nzg3IGJkMTJiNTk3M2RhYTk5NjUyNGUxOTVhNjQ2Zjc2N2I5NjlmODUyZjQgbGVnYWN5LXRydW5rCisyNDc4OCA3YWY0NWFmZmQzNTMyYTBiMDhjZjdiYTg0YzZiNzViNWQ2OGIwZDdkIGxlZ2FjeS10cnVuaworMjQ3ODkgOTg0NjQzOTRjY2UzMzY4M2JhZWUxNmZmYjhiMmNhODQ2M2M1MDQ1YiByZWxlYXNlMjEtbWFpbnQKKzI0NzkwIGUzYzJmZDE3N2E2ZTRlMmVlNzg5ODkzNmE4MGM1Y2VlNTI4ZWM0ZjEgcmVsZWFzZTIxLW1haW50CisyNDc5MSBjNTc5N2EwMDgzZDhmYTJhMGQ1MzZlNmQ4NGQ1OWZhOTFmYWY5ZWEwIHJlbGVhc2UyMS1tYWludAorMjQ3OTIgNDY1YzkzMjVhZjY5ZjQxODY0ZDI2Y2U4NzcwZWRjNjliNTJlOWYzZCByZWxlYXNlMjEtbWFpbnQKKzI0NzkzIGY2ODVmMDcwNGJiZDNhOTg1Y2QyY2U3ZWI3N2I4ZmUwMTAwODQ3ZmYgcmVsZWFzZTIxLW1haW50CisyNDc5NCAwZjc0ZGI3NGE4ZjQwODAzMDdiYzQ4YTdiZGQwYjVkZWM5NmM2MjhhIGxlZ2FjeS10cnVuaworMjQ3OTUgMzMwM2YyZDkyY2VmOWM4ZDM0ODkyZWNjNzQwNDc5ZTcwMWQ5YTM3OCBsZWdhY3ktdHJ1bmsKKzI0Nzk2IDY2NGFjODIyN2NjNTNmM2UzNGFjOWRmZTkwNmI5YmFlMmRkZDg2NmEgbGVnYWN5LXRydW5rCisyNDc5NyBkZjc3MGRkMGJlYzRhNzZmZWZiYTRiMTdlMjE3YmJlODE4YmJmOGExIHJlbGVhc2UyMS1tYWludAorMjQ3OTggYjI3NTk5YWJjYzQ5YTExN2U4MWRkZTU3OTk3ZmFkZjQ5YTJjZjk2YSBsZWdhY3ktdHJ1bmsKKzI0Nzk5IDk0MjMyNDU1MTRhODg1ZWM5ZTc3YmQ5YjdjZmE4YTFjZWRhNzA1NTQgbGVnYWN5LXRydW5rCisyNDgwMCAzYTkzMTQ1YjZhOTYzMmRiMjY5NDZkYTliOTdhZjIzYWU3MDViZjhkIGxlZ2FjeS10cnVuaworMjQ4MDEgNGUzNWZhNWQ1NzA4ZGM1NTcwY2JlYTMxNzkyZDZhNzRjM2IxYzJmZCBsZWdhY3ktdHJ1bmsKKzI0ODAyIDgzNDhlODQ0MWVhZjc1YmU4OGViYmU5Nzc5MmMzMDgyMWI0MmI1NzEgbGVnYWN5LXRydW5rCisyNDgwMyBmMThjZmRlMmU4MDQ5ZThlMGQyOTZmY2RkZDRmM2NiY2E2ZDhlMzFjIGxlZ2FjeS10cnVuaworMjQ4MDQgOTU5YTJlZDU3MzVjZDA4NTliZGJlOWRkNmZjMTliYTVmOTExYzcxZSBsZWdhY3ktdHJ1bmsKKzI0ODA1IDgwM2FhMGMyYjEzMGY5MmQ1ZDQyNTc5NmM0OGYzNWM4NmY0ZDFjODYgbGVnYWN5LXRydW5rCisyNDgwNiA2NzNiYmYxMTU1MDg5MjI1ZjRlOWJhYjI2MGY4MzQ5ODY2ZTZkNDI2IGxlZ2FjeS10cnVuaworMjQ4MDcgZTFmM2ZlNTY3N2RhM2Q4ZWU1ZWU4YTRhMDhiZDhmZTUzMmQ0Mzk4OCBsZWdhY3ktdHJ1bmsKKzI0ODA4IGEzYjA2NzNiYTJjYTVmYTQzYzM5ODU1Njc3ZjRlNDVkNDU3YTEyNmYgbGVnYWN5LXRydW5rCisyNDgwOSBhYWMyMzMzMWEyNWQ3ODMwZWZjZmI2M2E5ZDMwYzczYzM1ZjAyY2M1IGxlZ2FjeS10cnVuaworMjQ4MTAgYWYyNjIzYmI1ZDBiYzNkOGRhNGIyZWQxZGVkOTA3ZjEyNGQ4ZTYyYiBsZWdhY3ktdHJ1bmsKKzI0ODExIGNjYjI2YTExODg2N2U4MjA0Yzc0YTc2ZGU4ODBhNzQ2MjUwNzM0ODQgbGVnYWN5LXRydW5rCisyNDgxMiBiNDg5MTBhOTU3OTcxYTc5ZTlhMzk3NGVjYjc5M2E4ODZlZjQ1MDNmIGxlZ2FjeS10cnVuaworMjQ4MTMgNGM4MmM4ZWQ2ZGY0ZDRjNDdkNDc1NWE5OTQzZTBjZjJhNzA0ODIwMiBsZWdhY3ktdHJ1bmsKKzI0ODE0IDIxYzdkNzU2NTk3N2NlYTY5NjY3ZmQ4NDYzNDM5M2U2OGQxM2U3MmYgbGVnYWN5LXRydW5rCisyNDgxNSAwMGIzYWQxY2U0MDRkNmZmZDMzYWI2NGVlZmMzNTZkMGExMDhiYzlkIHIyMnJjMS1icmFuY2gKKzI0ODE3IDAwM2E5ODVjYWI5NWJiYjZhOTliNjM2MThiMGFmZDIzYTQzYzYyYzIgbGVnYWN5LXRydW5rCisyNDgxOCA3NjIyNTQzNGE2ZmVkNzQ0YTFjMmQ0ZTlkZWRlZTAxNDdlYmU4N2Y2IGxlZ2FjeS10cnVuaworMjQ4MTkgODczMjkxYTQ4ODllYzkyZTZlYjA4ZjQ3NjA1YzYzODM0MWNjNGZkZCBsZWdhY3ktdHJ1bmsKKzI0ODIwIDJkMzc2ZDkyNmRhODJhOTAyMWZhODE0MmI0ZDVlZjQ2MDIwODEzOGEgbGVnYWN5LXRydW5rCisyNDgyMSA5ZDk1YzFhODljZmNiMGEzMzk3YTk2OGJlNzRhMzBmZTM2YzI0OGMzIGxlZ2FjeS10cnVuaworMjQ4MjIgNWUwNmY4ZmUzOGVlNGFmZjgzN2UxMTZkMWE0M2RiODM4YTY4ZGQ0NyBsZWdhY3ktdHJ1bmsKKzI0ODIzIGExOTkyNjk0YzgyNDI1ZTBjNDI1YzRlMzEzMTEyM2Y0YWVkN2Q1OTEgbGVnYWN5LXRydW5rCisyNDgyNCBiYjE2OGRlNTBhMDMyYjczOThjOGU0NTBmMWFiMzYyNjE5YmRkM2RmIGxlZ2FjeS10cnVuaworMjQ4MjUgMWQxYzQ2ODI0ZmMzZTdlZDUwMGFhNzRhNTRiZjQ3ZTJiMWE1YmY0ZCBsZWdhY3ktdHJ1bmsKKzI0ODI2IGJmNjQ0OGYwMjI3Mzc0ZWRhOTE4OWVlZTViZGFjNTgyNzZjYmQxNjMgcmVsZWFzZTIxLW1haW50CisyNDgyNyBjYTQ1MGU0ZGZmOWE2MjY0ODQwNTIxN2M0ZTQ0MDdkZWZkOGM4ZWQ2IGxlZ2FjeS10cnVuaworMjQ4MjggMDQ0NjMwMTYxMDkzYzkxNzQ0YzUzOWU2ZjUwYjllZDQwYjYzYWRhNiByZWxlYXNlMjEtbWFpbnQKKzI0ODI5IDE2MjEwNmIxNmU0NDRjMWE0NzViNjA4NGQwZGZmYTQ0YjMxNGRmYjIgbGVnYWN5LXRydW5rCisyNDgzMCA0NGM0NzlmODRlMzY4YzBiNWYzZDg1MzU4NGJjODg5YWYzMjY4MTI4IGxlZ2FjeS10cnVuaworMjQ4MzEgMjQ3NDQxNGQ0MzQyOTI0YjA2ZmJiOWRjMThiYjA2NDQ2ZmFmODRmMSBsZWdhY3ktdHJ1bmsKKzI0ODMyIDdjMmY5NWRlY2NhZDVlMjQ4NDg1YzA1MDE3Mzg3MDE3MDM2YjdhODEgcjIycmMxLWJyYW5jaAorMjQ4MzQgNjVmNDA5NGY0M2Y0NmZkNTI5YTY4NGZlMjlhNzhjMTUyMjAyMTNiZiByZWxlYXNlMjEtbWFpbnQKKzI0ODM1IDgxNGNlMDkyOTUzZWMyM2YzOTgxNGZjOGRjMGQ0MGJmZDc4NWU3NWEgbGVnYWN5LXRydW5rCisyNDgzNiBlOTIwMmZlMzJmMGI4ZmY2ZWFiODU5OWQyYzM0Zjc2OGJjOGJkNmZkIGxlZ2FjeS10cnVuaworMjQ4MzcgODhiYWE0YzRlZWUxMDViNmU0NzlhZjRlNWJkMTM3NjY5MzBhOGM3ZiBsZWdhY3ktdHJ1bmsKKzI0ODM4IGNjYTU2YTk3NmNiMjVjYjA2MDI0ODUxZTgxZmExMmYyMGIyYTZiNDYgbGVnYWN5LXRydW5rCisyNDgzOSA0YTM0ODYyYTM5OTQyM2Y0NzAyNTkzOWQzNDRmYzM4ZjBhZDgzNTcwIGxlZ2FjeS10cnVuaworMjQ4NDAgNjUyZTE4Mjc5NTgzYzE0NmE5Mjk2NDg1ZDE3Y2RkOWU0YWFmZjE0YiBsZWdhY3ktdHJ1bmsKKzI0ODQxIDVhNTA0MTAyYTA5YzUwMjQ3YTEyM2E3N2Q5MWQyYWNmMzMxOWRiYWMgbGVnYWN5LXRydW5rCisyNDg0MiBhMDNiMTNiZTJmNjhmOTViZDQ2ZGJkZTFiMmNhODYxYmZjZmE0OTlhIGxlZ2FjeS10cnVuaworMjQ4NDMgMzgxNWE5NTk4MTljNDY5MzgzYjVlN2YxM2ZmODgxMWNhYTRjNDQxYSBsZWdhY3ktdHJ1bmsKKzI0ODQ0IDNjOWYzOTFkN2UwMzM4NDIwY2MyYmY4OTU5YWZlYjA1MGQ5YjJjYmQgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NDYgMzI0OGVhZDcxOTI4NzlkOGNiZDBjNDA0NzRmMTMzNDA3ZmVjMWQ2OSByZWxlYXNlMjItYnJhbmNoCisyNDg0NyBkNmE0NGZkMWY0YzE0MzcwOTA2NzkyNzYyMTlmNGQ2NzY2NjFmYzg5IGxlZ2FjeS10cnVuaworMjQ4NDggZTNkZTM4YWE2NDYyMzE0ODFhZDAzNjRlNDlkMDA3Yzg0NDA2N2RhZiBsZWdhY3ktdHJ1bmsKKzI0ODQ5IDA5N2RkOTUzZTExOTYyNGYwMTlmODkwNWVjMzhiZjc1NTMzNmQ2ZmYgcmVsZWFzZTIxLW1haW50CisyNDg1MCA1NjhjNzVkZDUwNzgyYTliNDAzMTE3MTZjMjNiOThjYjBmZTNiMGNmIHJlbGVhc2UyMS1tYWludAorMjQ4NTEgODVlNjk0ZTliOWZjMTQ2NDRkMjU1MWIwMzQxZDJkMGFmZGVkZTk5NyByZWxlYXNlMjEtbWFpbnQKKzI0ODUyIGUzYWE1YWFiMjg3NmRmYmUxZDlhZDFhZjllZTViZGZkMDdhY2VkMTIgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NTMgODJhYzgzNDc0NDYyOTExMjVhZTFjZWNmY2ZhODNjNjhiNzYwZmRiNiByZWxlYXNlMjEtbWFpbnQKKzI0ODU0IDI1YmFiZDQzMmIyNGY0YmIxMjVkYWUxZTJjYmVlOGYxNzYwMDZmZmYgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NTUgMzI2ZDk5NzJmNmY2MTAwMzZmOWE0ZThiYmVlMjFhMWE2YTdmNjQwNyBsZWdhY3ktdHJ1bmsKKzI0ODU2IGU4ZDM2YzE4MzEzNzU3Mzc0ZmJjMjg2NWJkMjAwZTQ3MjQ1ZTlkYjYgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NTcgMDQ2MTJkYzMyM2RmMzA4MjBjNDhlOGU4ZThkMjE3MDU0ZGM3M2NmZiBsZWdhY3ktdHJ1bmsKKzI0ODU4IDc2N2QyNDVmZDhkY2ZiNjllZjZiNGYzM2I0YjliMjgxZjBmMzdlZTUgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NTkgMDk1MThjNGM2ODUwOGI0MmQwOGY3MDg5YTQ0Yjg5YWQ5MDBhMjU2NCBsZWdhY3ktdHJ1bmsKKzI0ODYwIDQ4ZjMyMTk4Y2ViOTFmNDlkZDhhMDBhNDBkOTJkZDRhNTVmZTA1N2QgcmVsZWFzZTIxLW1haW50CisyNDg2MSAwODI1ZWIxZGJlYjgxY2FiNzYwMTdmNWY0ZWEzN2ZiYTAwOGFkODI3IGxlZ2FjeS10cnVuaworMjQ4NjIgMTc5OTc4MjA5NzFkMGMyOWJlNTdkY2M1YTFkOWY5OGE5MjNkMTRlMyByZWxlYXNlMjItYnJhbmNoCisyNDg2MyBmYzllMjcxMTcxNGRlZTk5NTk2YWQzNjQxM2QwMmEyYmNmZmU4N2JkIHJlbGVhc2UyMi1icmFuY2gKKzI0ODY0IDZjMjNhM2ZiMGIwNDk4NzJhNTM3NzRhZWIxNzUwNjcyNTA2YjNhMmUgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NjUgNjA2MzU0NDAxMzk2ZjU0MDZiZmEwMTk5ZDcyZmE0YWIxZjcwNjNmZiByZWxlYXNlMjItYnJhbmNoCisyNDg2NiAzZmZlZWRhMDIwZGNhZTEwZDY4MjIzMmU3YzVhYjNhOGI0MDBlNGRiIHJlbGVhc2UyMi1icmFuY2gKKzI0ODY3IDQ3OWNmODgyYmRiNWU2NjJjYjcxOGZkM2JlMzNhMDUwNzJiNDVkMDIgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NjggMTEwMDNiNjY1NTQ1ZDYxZjE0OGJlN2MwODUwMDljMmVjNTA3ZDUwZSByZWxlYXNlMjItYnJhbmNoCisyNDg2OSAzMjQ2ODRhZGI0ODM1MjQxMDUzMDEzY2U4NzAwYTU2NDA2MDgwMDVjIGxlZ2FjeS10cnVuaworMjQ4NzAgNzRjNWRjYzE1YjczNTU2NTQ5MjY4OGE1YmU2MGFlODY1YTcxNjg1MyByZWxlYXNlMjItYnJhbmNoCisyNDg3MSBlOTNmMTQ0ODYyZGU5NzJiMWIxMTdlNDZhMWZjYTMyZmZlMjA0NDY3IHJlbGVhc2UyMi1icmFuY2gKKzI0ODcyIDhhZjg2YTk1MmIyY2EzZmEyMGI3ODNmZThkOGRlMDM0MWQ3MmNlN2UgbGVnYWN5LXRydW5rCisyNDg3MyA0Zjg5MzIxMzRkY2EzYjNmZDdhNDgxMDIxMjNiYjY3NDhlYTQ0MTA5IHJlbGVhc2UyMi1icmFuY2gKKzI0ODczIGRjYThiNTg3NDY0MzlhOWY3ZGYyMTJmNjQzZWU0ZDQwZWI4ZGYyNGIgcmVsZWFzZTIyLWJyYW5jaAorMjQ4NzUgOTM1Yjg2MDJjYWQ5ODM2NzA0YTNhYTE3Y2JiZDhlNGVjOTgyNDA5MiBsZWdhY3ktdHJ1bmsKKzI0ODc2IDkwMjUxOTdhOGVhMGM0YmJjNzZhMGQwOGIyNDRlNGE3ZGQ4YjAyMzIgcmVsZWFzZTIxLW1haW50CisyNDg3NyBlMGE1ZDE2YTljYjk1MTk2Y2ExODYxNDQyMzA5M2JlYjIyMWUzOWQwIGxlZ2FjeS10cnVuaworMjQ4NzggY2I1NWYxNWIyNzMwMTA1ZmQ5YjU5M2UyMWE5OTA3MjRjOWI5NDVhNyBsZWdhY3ktdHJ1bmsKKzI0ODc5IGI0ODRhYTYxY2FiNGE2YWVlNmZmMDdmMTg5MmY5NWE0NWE5YjdlYTEgbGVnYWN5LXRydW5rCisyNDg4MCA5ZDQ4MGQwZmU2OTA1NzFjZmJhZTUyMGIyZDcxZDY1YmMxZWFlMDIyIGxlZ2FjeS10cnVuaworMjQ4ODEgMjY4YjU3ZDlkYWVkMThhM2M4ZTc2YjVkNDNiMGZhOGE1ZDkwYzkzNCBsZWdhY3ktdHJ1bmsKKzI0ODgyIGZjODEzMTY0Y2U5Zjk4MTNlNjcyMDBiNDY3YmM4ZTlmODU4YmRkY2IgcmVsZWFzZTIyLWJyYW5jaAorMjQ4ODQgMzQ5ZDY2Y2Q4NzRjMzM1ZGM0NjU2MDk0YmQzYmM0NzZmMWFiOTUyZCBsZWdhY3ktdHJ1bmsKKzI0ODg1IDdjMjhlOTU2ZjliMGJhZDZiYzZhMTQ5ZTNlZWVjYmUwMWYyN2VjMDYgbGVnYWN5LXRydW5rCisyNDg4NiBhYzNjZTFmYWVjNjhlYTNjNzExNGExY2YwZGU0Y2ZjMjY2MGY3YTM0IGxlZ2FjeS10cnVuaworMjQ4ODcgNDIzMmQyNTdlNGZmMjJlYjg3ZjdiMzM1MDE4NzQ3YTlkNzZiMzBhNyByZWxlYXNlMjEtbWFpbnQKKzI0ODg4IDQxZmY0Nzc3OTI2ZWI1MTkxOTlhNWRiOTcxZWU1NWQ5ZWFjZGZjYTUgcmVsZWFzZTIxLW1haW50CisyNDg4OSAxMzM5YjZkMzJlOTUzZGI4YjhiNmI0MDY3Njg3OTk0NzgyMjM0NGRlIHJlbGVhc2UyMS1tYWludAorMjQ4OTAgZTY5YjIxZjI1MjllZTZjNDU5YWEyZmI3MjY4ZmU5NDgzZmEzNTVkYSByZWxlYXNlMjEtbWFpbnQKKzI0ODkxIDRhMmMzYWUwOWUwYzRlZmRlYTJhNTYzY2M4MzcwNmNiMWUzZGRjMDIgcmVsZWFzZTIxLW1haW50CisyNDg5MiAyYTc4NWI2NjhhMTYwOTI1NGVkYzdmNjBiM2Q2ODYzZmIwYTcyY2RlIHJlbGVhc2UyMS1tYWludAorMjQ4OTMgMDA2YzU1YmRmN2UxNTZmYzJlNTc1NmVkZGM0MGY1MjdlZjY5OTJiYSByZWxlYXNlMjEtbWFpbnQKKzI0ODk0IGM0OGQ4YjM2MmFjZWUxY2RlMmIwNzQwNmJhYzEzYzA4ZDQyNmJjNDkgbGVnYWN5LXRydW5rCisyNDg5NSBjYTI3ZDgyYWM4OWI0NmUzZDNlOWVhM2UwN2EzMzQ4OTJjOWQ3NzA4IGxlZ2FjeS10cnVuaworMjQ4OTYgZThjYjIzNmFhZDI3OTYyNmZhYWY3ZWJhNmM0Zjg2YjU4MTUzYzYxYiBsZWdhY3ktdHJ1bmsKKzI0ODk3IDdiZGU5Y2E5MDU1NDkzNGUxMmVkYTZkNGQ2ZDkxYmNkYTQ4ZGU3MTkgbGVnYWN5LXRydW5rCisyNDg5OCAwYWY5YWM4N2ZmYmMxZDllMzI1NjZmODIxNTMxMTE2NTAxYTBiZThmIGxlZ2FjeS10cnVuaworMjQ4OTkgYmY1MTkzMjFlNzk2N2UyZDIwNmMxOTBiODJjYjc4MDE1ZGFkYzdiNCBsZWdhY3ktdHJ1bmsKKzI0OTAwIDVkNDEzNTYwOWVmYzFhODQwODNkZmViMWYxY2ZkNTIxOTlmMGNhOWQgbGVnYWN5LXRydW5rCisyNDkwMSA5YzMyZTkyMDBhYmVlOTFlMjE3MDkyNzI3NWM5MWNkYzBhNDM3NjhjIHJlbGVhc2UyMS1tYWludAorMjQ5MDIgNWYzMjEzNjU1ZDk1NWY0MTdiNTEwMWI4N2M0YWQzNTU4NmY2ODIxYyByZWxlYXNlMjEtbWFpbnQKKzI0OTAzIDExNGE2YmNmZTg2YmI4NGYxZmNhNjdiY2VjNTFiMWExYzAyOGZiOGEgbGVnYWN5LXRydW5rCisyNDkwNCBmNzIyNDRjZjg1YTliNzYyMmI0N2JhZDZkNzRlYjA4ZDY5YTZlMTZkIGxlZ2FjeS10cnVuaworMjQ5MDUgYWQxMjZjMDYzNjU0OGQzNWJlNDc1YTExZDYxNmNlNmU3N2JjYjYzMyByZWxlYXNlMjItYnJhbmNoCisyNDkwNiBhNjBmY2RjNzUzNDZiM2UzNjhhNDQ4NDA5OWZlMWU1N2JjN2E3MzQ0IHJlbGVhc2UyMi1icmFuY2gKKzI0OTA4IGQ1OTg2OGJhZmViMTBiMmNlZDhjMmFiMjZiZDQ2MzhiMDY2ODllOTAgcmVsZWFzZTIxLW1haW50CisyNDkwOSA1OGE4MmE0YmU4YjE3M2U1MmU5ZmNjZTFmZWUzM2I2ZmRjNWEzYjAwIGxlZ2FjeS10cnVuaworMjQ5MTAgNjg4NDJkMjk1ZDJjY2NkZjg2YjkwY2NiOWMxYzg0NjQ1NTZhNzE1OCBsZWdhY3ktdHJ1bmsKKzI0OTExIDgyY2IxNzQ5OGZjMWZiN2RlYjczYjJmM2I5OTI2MzhkYzU0ODM0NmIgbGVnYWN5LXRydW5rCisyNDkxMiAzYjM5YmEyYjgwMGVkZDdkOWEyNDU0N2YwNWYzMGQ1OWYzODNmYzZjIGxlZ2FjeS10cnVuaworMjQ5MTMgMTg5NDc5NmU5MzBjMTQ1NzRiZDMzNGRiZGU1Mjg2ZTUxODU0ZTk4OSBsZWdhY3ktdHJ1bmsKKzI0OTE0IDQ1NTQwNzJlNzZiNGYwOWFiNmZlYzk5M2I4Y2U5MDgwNGVhMWEyNDEgbGVnYWN5LXRydW5rCisyNDkxNSBiMmU3OWNhYTY4ZTBiMWM5YmM4NWNlMzlkY2IzM2JhMTFhYjRmMmMxIGxlZ2FjeS10cnVuaworMjQ5MTYgZTZhN2FkNmMzNjUyZGEzYTM4ZDRiZmEyNjU5N2M4ZGI1ZmNkMDc3NiByZWxlYXNlMjEtbWFpbnQKKzI0OTE3IDU4Yjc3ZWY0NzJkNGMyYTMzMjBmNjVjNDk4Yjc2ZTc0YjBhOGRiMDkgbGVnYWN5LXRydW5rCisyNDkxOCA1MjA1M2FmY2FkMzI1YzYzODY3YTljNTZlMDgxNTBiY2NjOTk4NjEzIHJlbGVhc2UyMS1tYWludAorMjQ5MTkgMWVjMzRhMGQwMmE3N2NlNDNhYjI5YmVkYjU1M2Q4OGVjYThhOTM1NSByZWxlYXNlMjEtbWFpbnQKKzI0OTIwIDQzYjY0MjQ1ZjFhYTdiOWUxM2M3N2U3OTY5Y2E5OTk3ODliOWQxZmYgcmVsZWFzZTIxLW1haW50CisyNDkyMSBhYjkyZWFhMTQwZWY5NGU3NWNkMmY2MzliOTVlNGY2ZWVhZDZiYWU5IGxlZ2FjeS10cnVuaworMjQ5MjIgODQ3NDI1ZDViY2E4MDc5MzliNzZkOTE4NjkxMDgxZjY4NDM3YjNlOSBsZWdhY3ktdHJ1bmsKKzI0OTIzIGY4NDc1MTM1YWMxMzQzNmYwNjJjMzVlZTE5ZjhjNmM3Yzg4ZjI1ZTggbGVnYWN5LXRydW5rCisyNDkyNCBmY2I2NDliMTAwNGRlMzdlOThkMWYyNzdkNGZiMTdhMzgwNDFkYWJjIHJlbGVhc2UyMi1tYWludAorMjQ5MjUgNWQ3NzgyNWJiYzEwNjU4ZjIxMTUxMzM1NWU4N2JhY2ZiYWRmMGY5OSByZWxlYXNlMjItbWFpbnQKKzI0OTI2IDllMDIzM2MwZTAwM2M5MThjNzUyNDM5OGQwZjAyMDg2NjdiMTBmYjcgcmVsZWFzZTIyLW1haW50CisyNDkyNyBhYzhkODVkYTZkMGRiYmU0ODczN2MwZTEwNzFlNWMyZmM2Zjc4MjhkIHJlbGVhc2UyMi1tYWludAorMjQ5MjggZTIwNDdhZjBiMmU2ZTZmZDJiNTI1ZWMxOTBhZDE2ZDI0ZDVmNjVlMyByZWxlYXNlMjItbWFpbnQKKzI0OTI5IDEyZTBkNThlNDRiZGJhMTRjYTQ2NmEzZDc3ZDQzOGEyNmU0NWVhMGUgcmVsZWFzZTIyLW1haW50CisyNDkzMCAxOGRiOTFjMGE3OGYxY2U3ZjIwYjQyODI3ZWExMmQ4NTc0MWM1NzM2IHJlbGVhc2UyMi1tYWludAorMjQ5MzEgZWZkMDRkMWYzMDg1ZTFmYTYxNDJkZjIyMzgyZDZjMjFlYzZhN2M1MCByZWxlYXNlMjItbWFpbnQKKzI0OTMyIGNkNzdhYTExZWRkYzE5ZjZjOGEzZjVmMjUxZjJjYTVmZDlmZWM2OWMgcmVsZWFzZTIyLW1haW50CisyNDkzMyA4MTJkMTU0M2JhMDg5YWExMDNmNDY1NmIzYjg5ZjdlODEyZmI1M2IzIHJlbGVhc2UyMi1tYWludAorMjQ5MzQgZDA4OWQxZTg0MTFjY2M0MzQ5YjUxYzUzNDVjZDk3OTgyMTJhNGJmZSByZWxlYXNlMjItbWFpbnQKKzI0OTM1IGY3Nzc1OGM4NzJmYjUxMWY2M2IwMDFiZGEwYzcxYTIwOGY3ZTllYTYgcmVsZWFzZTIyLW1haW50CisyNDkzNiA4ZDUxYzc1Mzk3MTliMTljNTQxNWI4NjI1ZDgxZjY5MjNjZDRlNTQ2IHJlbGVhc2UyMi1tYWludAorMjQ5MzcgOWNjZWFkNWZkMjk3MTE3OGE2ZDE2NGI3OGU2MGQ1MWVkYTc1OWZmZiByZWxlYXNlMjItbWFpbnQKKzI0OTM4IDM5NzdhZDNiMDgyNTdkNTBhNjQ3YWI4NjYyZDhhZTQ4OThhMDU2NzQgcmVsZWFzZTIyLW1haW50CisyNDkzOSBiOTM3MWYzMjQxYjg1MDA3ZTJiOGE1ZjZkNTA1NWZiOWJlMjgxYWEwIHJlbGVhc2UyMi1tYWludAorMjQ5NDAgYWM0YjFjNGMzYjEyZjI4NGRmMzcxYTBmZWM3ZmQ0ZmJlNDBhMDg3NyByZWxlYXNlMjItbWFpbnQKKzI0OTQxIDdiMmQ3MDFlYzQwNGQ3MzlhODgwNjYyYzIyZWEzMDE2ODY3NzI3NDIgcmVsZWFzZTIyLW1haW50CisyNDk0MiBhOTRlNDgyMTM5OGRhMjljNTgyMDE3ZDkwMjNkMWNiM2U5MTczNTdkIHJlbGVhc2UyMi1tYWludAorMjQ5NDMgYTJlYWI0ZGU1NTA1Mzk5YjIwMTQ1NzNhYjk4Y2NmMGZmYjE2NWFhNiBsZWdhY3ktdHJ1bmsKKzI0OTQ0IGVjNjIzMDQ3MDczYTJiZTQxNzI4NDQ5OTVmYzBjZDVkZDY0YzRjZjggbGVnYWN5LXRydW5rCisyNDk0NSAxNmE4MjQyM2I4NjAyMDQ1N2E0ZjRlODE5YzgwNGI0YmZmMjI3ZTljIGxlZ2FjeS10cnVuaworMjQ5NDYgZmRjMzllMjdhNDk0ZThiNmE3NGIyZTUwMzcyMTcxNmNjOThhMjhlZCBsZWdhY3ktdHJ1bmsKKzI0OTQ3IDI5YzFhNThkZGE1M2ZhZjM1OTllY2U2ZjhhMWFkOTQ0MjI1MzAzNWMgcmVsZWFzZTIyLW1haW50CisyNDk0OCAwOTdhZTBhZGY0N2ZiYzQxNmNjZGZkNDAwYWVhNzkxMTM4MTc0NzBjIGxlZ2FjeS10cnVuaworMjQ5NDkgNmU5YTRmOWE1NWE0MWIzNGE2ZjljNmYzYjNkYjg3YzE1YTU0N2Y2OSBsZWdhY3ktdHJ1bmsKKzI0OTUwIGQwNGViOGQ2NjRlMmRmMzBjNmZiZTA0YWRlZTBkY2UzZWRmY2Y4MjkgbGVnYWN5LXRydW5rCisyNDk1MSA5MmRhNzRjOGU1ZThjMDJiN2Q3YTE5NTU3OTBjZWE1ZmM1ODM0MzkwIGxlZ2FjeS10cnVuaworMjQ5NTIgNWI3YjM4NmNiMGQ0NTM1NzZhN2I4NTE5NjhiOGQxZmI3OTE3NGNmZiBsZWdhY3ktdHJ1bmsKKzI0OTUzIDdkZDM5NTk4ODI3NTgxY2IxNWNmNmY2ZTlmYjc2ZjQ3ZWJlN2I2ZWUgbGVnYWN5LXRydW5rCisyNDk1NCBmZjcwZTU2MzRhZTkxMjdhNzkxZmIxYjM3ZWJlZGE5NDYyZjc2MjBiIGxlZ2FjeS10cnVuaworMjQ5NTUgMThhNzBhODJhZjE1OTc4ODYxNDYyZjdiOTZmZWRiYjY5NDU5ZDk4YyBsZWdhY3ktdHJ1bmsKKzI0OTU2IGU1NjA0N2RiNjUzODQ3MjM1MzIyYjQ1MDIwMjIyY2EzYjM0YTNlODAgbGVnYWN5LXRydW5rCisyNDk1NyA1ZmY4YmIyNTAzMWM4MjMwOGM4MWExYTE5YWZiMmJlODJhZDZhMmZlIGxlZ2FjeS10cnVuaworMjQ5NTggODU3ODM1NWQyM2QzNDk1YTA0YTMwOGM3OWM1OTJlMDA1MjNlYzY5MiBsZWdhY3ktdHJ1bmsKKzI0OTU5IGNhYzkzMWFkM2NjNWE2NzJkMGUyNjYzNTkxNmJkZDkwMDFlZjYwYjQgbGVnYWN5LXRydW5rCisyNDk2MCA2OTcwNTFmNjdlOTc2YTUwM2E2ODM2MTJmOGZiODA3Nzg4OGM1ZmYzIGxlZ2FjeS10cnVuaworMjQ5NjEgZmU1NGU4ZDkzY2I0OGMyMGQxZjg1MDA2ZTA3MTQ3NGZiYTViOWJmMiBsZWdhY3ktdHJ1bmsKKzI0OTYyIDUyYjNiODQ2ZjExZjU0ZGNiNWQ2N2EwMzYyZmMyMmYwMDczMGEyNjAgbGVnYWN5LXRydW5rCisyNDk2MyBhNTBkZjY1YWNhN2E5YjgxNTAwNGNjY2JjNDNhNjkzMTFhNTQ3NWU0IGxlZ2FjeS10cnVuaworMjQ5NjQgMmY0MDczMjY5ZGFmZDMzODdiYTE4MWFhZGY5OWQzYmQyZTBmZjc4YiBsZWdhY3ktdHJ1bmsKKzI0OTY1IDY0ZDBjOTQ5ZjMzZTJmZWJkYTdiYzFlNDYzZmE4ZDY3NjQwYjU2MzggbGVnYWN5LXRydW5rCisyNDk2NiAwMzVkOWM5NmFhZWNmYzg4NDBkNTgyNDQwYjVmMWQ3YmNiNzM2MzY5IGxlZ2FjeS10cnVuaworMjQ5NjcgNjdkYTExMjkzNDA2Y2Q0Zjc0NGZjMzE4Njc3NTI1NTAzMDU4MjI2NiBsZWdhY3ktdHJ1bmsKKzI0OTY4IGJlMjEzZjFjZDQ2MmUxYjU4YWFmY2FmMWQyNDAyZWZiNDdmZmIwODUgbGVnYWN5LXRydW5rCisyNDk2OSBmYjM0ZjU1YTAzZmFiZjQwMjE3ZjIxNzRkZWExYzIzMzA0OTA3YjYzIGxlZ2FjeS10cnVuaworMjQ5NzAgM2JhMGYxYjIwMzIwYzk3NGZiMGJjMDk1YzQxMWIzOTgxMjNiMjIxMyBsZWdhY3ktdHJ1bmsKKzI0OTcxIGE5ZTA2ZmZhZjdmYmU5ZDhjNzlhOTg4ZTY4NGU2ODE0YmZhYmRkNzYgbGVnYWN5LXRydW5rCisyNDk3MiA5MzdjYzEwY2QzOWRmMDE3N2MxZTJjZjk3MTg3ODgxZWI1YTBhZWYzIGxlZ2FjeS10cnVuaworMjQ5NzMgZGE4Yjk5NzQ2OWU3ZGMwZmI1ODE4MWIxNWE3M2MzNjY4M2M0NGNmNSBsZWdhY3ktdHJ1bmsKKzI0OTc0IDhkZmJmYmM5MzFiNGE2N2I4OTFmNDIxZDg4NGZiOWM1OGFjMTc3MjAgbGVnYWN5LXRydW5rCisyNDk3NSAwOTVjZmYyMTk1NmNiZjkxNGU1NzFlOWViZTJlMjBmNGQ1NmEyMTE2IGxlZ2FjeS10cnVuaworMjQ5NzYgZWE4NWVlYTZiMmI5NDlmZGE2MmI1NjUwYWJjOTU2ZGI0NTE1NzBhZCBsZWdhY3ktdHJ1bmsKKzI0OTc3IDNiNDNmNDBhZjI3YTk4NGExYTY2MDkxMGZkMzAwMGZjNjdiZmIwY2EgbGVnYWN5LXRydW5rCisyNDk3OCBjY2VhODc4MmI4NDcyMzFlMGNlODRjYzNhYjc4NGQ0YzJiYjgxMWQ1IGxlZ2FjeS10cnVuaworMjQ5NzkgM2M4YTllZjNiOTU0Mzk2MmViN2RiMGI4NWMyNGU0MTE2YTBkOTU3MSBsZWdhY3ktdHJ1bmsKKzI0OTgwIDVkMDA5ZTVlMTNmNzk5ZWVkODU0NDgwYzBiY2Q5ZmQ4NjVlODVmMTEgbGVnYWN5LXRydW5rCisyNDk4MSA3MjQ2ZmU1ZTVhMjgyN2UyZDRlOTkwYjhjNmE5MGUxODViZTA0NzMwIGxlZ2FjeS10cnVuaworMjQ5ODIgZDU5NGE1OGI0NDZkNWYzY2U0YmJlY2RkZjE4ZWYxZDAwMWQ4ZThkZCBsZWdhY3ktdHJ1bmsKKzI0OTgzIDE0OTFmMTEzN2UwZWE1NzBlNThhYjQ5YzIxODcwNGM0MTVhZjM3ZDkgbGVnYWN5LXRydW5rCisyNDk4NCBiZTg2OTdjNzBlN2MyZTU1NDQ5YTU2MjEzYjliYjEwOTkyYjU0MGIyIGxlZ2FjeS10cnVuaworMjQ5ODUgYTMzYmI3MzI0NjgzOWRiOGNkOTNjNDcxMDY0ZTdiY2IzNDYyMjA0NyBsZWdhY3ktdHJ1bmsKKzI0OTg2IDc1ODMzOWRiZGFlYTc4MmQ1ZmUwMTU4ODMxMTcwMDYyOTRjNDUxMDQgbGVnYWN5LXRydW5rCisyNDk4NyBkZTFlYmNlZjdkMzEwN2U0YjMwODIyZjkyZGVhNTM3NzMxNzA1YTAyIGxlZ2FjeS10cnVuaworMjQ5ODggMDUxZjNiNjVkZGFiODQ5NWJjZjFiMDY2NjgyY2EyNGVjNDhkNTYzOSBsZWdhY3ktdHJ1bmsKKzI0OTg5IDZkNDI4OGU4OTE4YjI2NzRiODdjZjQzOGIyZDM3MTc3MGUxYjU3YjYgcmVsZWFzZTIyLW1haW50CisyNDk5MCBkY2NjYjljZWEwNTkzMWEyNTQyNDcyY2Q1NDljNTY4ZmM5YjIwNGJkIHJlbGVhc2UyMi1tYWludAorMjQ5OTEgZGZjOTcwNDA5ZjdlZDAyMzQxZjdlMjJiNjcwZmZjNTI2Zjc2MzM2YiBsZWdhY3ktdHJ1bmsKKzI0OTkyIDY2ZTAwODBjNmRjYzkwMWIwYjg0Y2M4ODAzYjRhN2E4ODc0MjRhOGEgbGVnYWN5LXRydW5rCisyNDk5MyA1ODYxODg1NTc3ZTk5NzA1MWEyOTIzNTU3ZDgwMWIyZTU4NDE1NDJhIGxlZ2FjeS10cnVuaworMjQ5OTQgNmY2ZjBlMTAzNTY2ZGM5Yzk1MWY2ZjMyOTkwNmZjYmI2MjRjNjA2YyBsZWdhY3ktdHJ1bmsKKzI0OTk1IDYzYTJmYWMyMTA0YzlhN2EyZGM1MTBiM2ZlNGFiNjI1ZDFkYjVlMzIgbGVnYWN5LXRydW5rCisyNDk5NiA2YWU4NWQ4Mzg0NjZhMjU3Y2Y1M2MzZTYxZjAzYTdkOThiYzBjNjE3IGxlZ2FjeS10cnVuaworMjQ5OTcgOWM3ZGEyNzJjOWI5NGU4ODE2MjdjN2I4YTYwZmVhMWVmZDNiZjRhOSByZWxlYXNlMjEtbWFpbnQKKzI0OTk4IGNkMDdlODQyMzVlNmRiMDM1M2UxYWNmYzAzOWZkODY3MDFiYWY3MzIgcmVsZWFzZTIyLW1haW50CisyNDk5OSAyYjc0NjU0M2FiM2Q3MjhkZTQ3NjgzZTJhNDE4ZjdkNTU5ZTY1N2NhIGxlZ2FjeS10cnVuaworMjUwMDAgNjIyMTllZDIxNTk5YmNlNGQ5MzBiZGI1MWRiZjgyYzk4Yzc5N2M1ZSBsZWdhY3ktdHJ1bmsKKzI1MDAxIDg1MWU0YmYzMDM1OGVmOGQwM2UwNDZjZDA5M2MxN2QzMzZlZTRlMWEgcmVsZWFzZTIyLW1haW50CisyNTAwMiBiNzJkYTA3ODBlN2E1OTJhMmU1YzQwOWViZmFmMmMzNWRmYTYyOGUyIGxlZ2FjeS10cnVuaworMjUwMDMgM2E0YTM0ZmRmYTgxYTA5NmJjYThiMWRkNjhhYmFhMjFhNTk2Zjc0MyByZWxlYXNlMjItbWFpbnQKKzI1MDA0IDM1ZTNmMjQxOGIyZGE5ZjZmMjk4YzZjNDE0MTI2ZmFlYjRkMzI4ZDkgcmVsZWFzZTIxLW1haW50CisyNTAwNSAzYzBiZDJmMzdhNzg4YTFmZjA0YmY5ZDQ1MTdkOTJhZTVhYTU3NmMzIGxlZ2FjeS10cnVuaworMjUwMDYgYTNhNjJlNDQwZjJhNjkyZDBmZjc1MzgwYjMxMDk0YThkM2U4NDIwZCByZWxlYXNlMjItbWFpbnQKKzI1MDA3IDdlMmEzYTJiYWMzM2ZjOTg4ZmU2MTQ2NmJjZjIxMjNmYjllZWRjNWIgbGVnYWN5LXRydW5rCisyNTAwOCBhNWJlMDc2NWM1NzEzNjExOWY1NGU0YWUyNThkZTg0NTNlYjg0ZjFjIHJlbGVhc2UyMi1tYWludAorMjUwMDkgOTkxMmE5NmMxZmIzOTRmMGMxMTc3MGNmNzBlNmFhZWM1Mzc2MmE1NSBsZWdhY3ktdHJ1bmsKKzI1MDEwIDE5NTkxN2I3YTYwMjQyZmI0ZDA2ZWYxMzA2NWIwZDc3YzE3NmQ1NTYgbGVnYWN5LXRydW5rCisyNTAxMSBlYjA1MTlhNDY3YWJhMjRmZDA3M2Q4ZGZhYTU2YzFmMjU2ODY0ZmNmIHJlbGVhc2UyMi1tYWludAorMjUwMTIgZWM0OGY5NmM5Mjk1ZGRlMDgwZWYyN2VmNDlmNTRiMWNiMzk0MGFmNCBsZWdhY3ktdHJ1bmsKKzI1MDEzIGMzYzZkZTE0NTMwOTk2YTY2YmFjYTI3Njg5N2JjN2FmYzJmZTdjMzQgcmVsZWFzZTIyLW1haW50CisyNTAxNCA2ODgzNGE2OTc0NmE4NWY3Y2JiYzBkM2VmMzg1YjFmMzI4MjEyYjI1IGxlZ2FjeS10cnVuaworMjUwMTUgMjliM2RjOTBiZTk1Y2I0OGFhNWU1YmI4ZDk2Yzk1YjQ1MTBiNmRjMCBsZWdhY3ktdHJ1bmsKKzI1MDE2IDlhMjY4Mjk4MjZlOTc5MmI4MTc0ZjM3YjNmMTlkNzljOTEwNDFhZmEgbGVnYWN5LXRydW5rCisyNTAxNyA2YjBlMTZjYjY1ZDU5MjllZGM4ZGY3NzgxMjdmNjI0ZWVhOWRmYjNkIGxlZ2FjeS10cnVuaworMjUwMTggMzRlZGRjYTFmZGE3OWE1NTQwYzI3OWU0N2UwY2I2MGY3YTdjMWZlZCBsZWdhY3ktdHJ1bmsKKzI1MDE5IDdjNTgyZDFiOWNmODFlMWE0YWJiMzZmMWJhNDE1MDgxNmE4NGEyNzcgbGVnYWN5LXRydW5rCisyNTAyMCAyMmRhZDlmZTA5Y2ExM2RjZjk5YWQxMWUyOThmMDMxNmMyNzA5ZDE1IHJlbGVhc2UyMS1tYWludAorMjUwMjEgMzYyOTE1YjM4NzI0NDRjYzk5NDA3ODMwMjU3OTk2YzZjOGZmZjY5YiBsZWdhY3ktdHJ1bmsKKzI1MDIyIDlkZTM1MGE2NTQyZWRmMWE4NzE5MzQ3NGIzZTY0YjJmY2FjMzY3MjkgbGVnYWN5LXRydW5rCisyNTAyMyBiNTY4NDNjMTUyNDliMzk4OWVlNDU2ZDMxODM4Yjk0NGU2ZmM0MTkxIHJlbGVhc2UyMi1tYWludAorMjUwMjQgYTkxMTkzNDEyNmZkODY2ZGMxMGZjOWE1MGYxZjE1MDJiMjM2NzdlNCByZWxlYXNlMjEtbWFpbnQKKzI1MDI1IDcyNDhjMzc1MTNmMzc1ZGQzMDMwNTZiOGQ5NTI1MTY0Y2VlZGQ1YzYgbGVnYWN5LXRydW5rCisyNTAyNiA4MjM5MTI5ZTc1ZDBhMGFhNTI1YzIyN2Y5NWYwYjU5ZGE2YzRhYWY2IGxlZ2FjeS10cnVuaworMjUwMjcgNzJiYjcwZTk2NDBlNDgwNGIxMjZjYmQ3NTFlNGQ1OTQ5MGRkNWU2NiBsZWdhY3ktdHJ1bmsKKzI1MDI4IDBkM2JiNjhlM2EyOGEzMmUxMjYwNmFlZjRlM2RiNTNjNmY4ZGFlODggbGVnYWN5LXRydW5rCisyNTAyOSA1NDRlMjYyMDYxYTM2MmNjZDIwNTgxY2YxZTcyMTkwYjIyZTU1YWI3IGxlZ2FjeS10cnVuaworMjUwMzAgNjQ2ZjhjMDg4ZjVkODQ3ZWI4NzBkZmFjOThmZTk5NGQ3ZDljMTk5YSBsZWdhY3ktdHJ1bmsKKzI1MDMxIDg5NzBlNzQ2NjgxMTMzYTg0MmE1YTA5N2EwOGM0ZTI0YzViMmJlNzggbGVnYWN5LXRydW5rCisyNTAzMiBmZmFiYWM1MDk3M2RmYzYxOTM5NGQwYThjNjNlYWVlNmI1Y2FkNmEzIHJlbGVhc2UyMS1tYWludAorMjUwMzMgYTFjMzI4MzM3YzhlODQ4ODYyMjA3YzBiNWFmZTNjMjIxZjBmMDFmMiByZWxlYXNlMjEtbWFpbnQKKzI1MDM0IDg4YzQ2M2Y4NzllZjI3NTViYjMxNGI1MmU0MDM1M2I5YzU3MGE1MDAgcmVsZWFzZTIxLW1haW50CisyNTAzNSAwNjhlODczZjA5MzJhYWJhYjM3ODQ2ZGQzODNlNGMyNjU4MDMxMjRjIHJlbGVhc2UyMS1tYWludAorMjUwMzYgMDhhM2FhOTUxMmU5ODJiMjBhYjg0MGNjNmRiNDhhMDMxNWY0NTRlMCByZWxlYXNlMjEtbWFpbnQKKzI1MDM3IDI5OTk2OGMyNzliOTgwZDczMTA2ZDFjOTIxOGY1NGNiNzkwMmEwODQgcmVsZWFzZTIxLW1haW50CisyNTAzOCAzYTU1MTUwNTBiNDM2YmM1MjNmNjkzYzE3MTUxNmM4YWRkY2ZjNjdlIHJlbGVhc2UyMS1tYWludAorMjUwMzkgYTFkNmNkOTdlMzE5NjNjZTJlZjZhYjkzMTIwYTcwMGUyNjhmODJjNCByZWxlYXNlMjEtbWFpbnQKKzI1MDQwIGVkYzM1MzJmYjJiOGZkMGZmZDYxMDYxOWU0ODZmZGFhMGMwYTgzYTQgcmVsZWFzZTIxLW1haW50CisyNTA0MSBjNGZlOTVmZWEzZTZmZmFmZjAyZDJjOWM3OWYyYjdiMWM4OGJlZjQzIGxlZ2FjeS10cnVuaworMjUwNDIgZDA1ZWJiZDk2NWEzNzEyNWY3NDcxNTg0NmY4NjZlYjliOGYwM2NjMSByZWxlYXNlMjItbWFpbnQKKzI1MDQzIDExNmUzMjE4YTdjYTYwN2E4ZTI3N2M3NzFhZTA0ZWFiZjg0M2UzY2UgcmVsZWFzZTIxLW1haW50CisyNTA0NCA4YjI0NTI5N2MxNjZlNmNjMjU2Y2MyZjAzZTM4ZGNhODgyMTA4NmMzIHJlbGVhc2UyMS1tYWludAorMjUwNDUgNTkxNWQ0NWI4MDk4NDE2Zjk4ZTFmYjcyNDkwNDM1OTIxYjlkMTUxZSByZWxlYXNlMjEtbWFpbnQKKzI1MDQ2IGE0OWE2NWE5NWUzNWNkMzY5Y2M4ZTZhM2RmYTI5MGZlMTFkMjUzYmUgcmVsZWFzZTIxLW1haW50CisyNTA0NyAxZWRmNWVkMWFmMDgxYTAyNTVkMGU4MWY1YjkzY2E4ODAzOTIyNjFjIHJlbGVhc2UyMS1tYWludAorMjUwNDcgZjc2YTQyNWIxNGU0ZWU4YWRlNWU5MjM5NTk4NTM4NTM0YjNhOTBhNCByZWxlYXNlMjEtbWFpbnQKKzI1MDQ5IDNlNzhiZjBlMmJlOGQyZGRmMTkyNmJkZGMzYzIzODQ1ZmZiYmNmMTEgbGVnYWN5LXRydW5rCisyNTA1MCBkYjJjMTI4MTI1ZjQ1NjlhYjliZGRiZjBhYmE4YWQ4ZjJiYjljNTZmIHJlbGVhc2UyMS1tYWludAorMjUwNTEgMTBkMWQ3ZDYzNWQ0MjJlZjc0YTRkNjNiZTk1OTI3MjE3NWMzZTFhYiByZWxlYXNlMjEtbWFpbnQKKzI1MDUyIDJmMzY0ODYwMGU2MDFmZGQ5OTU5YzdhNDUzOWI2NGZlY2E2OGEwODUgcmVsZWFzZTIxLW1haW50CisyNTA1MyA3ZmUzZTYxYWJjZTNlYTgyYzJkM2I0OWFhZjI2ZTFhYTE4NWY4YTkwIHJlbGVhc2UyMS1tYWludAorMjUwNTQgNWM2MmVmYmNlNGZhMDYxZGRkYzg4NjE5M2MyZTY2Njk1NzgyYjEwZSByZWxlYXNlMjEtbWFpbnQKKzI1MDU1IGQ3NGRjNDA2NjQxNjg5MjQ5MDI3ZWM3YWFjNzNjMjIwZTE0OGUxYzQgcmVsZWFzZTIxLW1haW50CisyNTA1NiBhZWRkODUxODc0OTY0ODdlYjkxYzc0YjFhMTcyNGIyNTQwZDA2MmI5IHJlbGVhc2UyMS1tYWludAorMjUwNTcgY2UzNWU1NzBmZmEyMWViZGIwNzQ3YzZjNDlmYjEzOWRhNzYxNzQ3NSByZWxlYXNlMjEtbWFpbnQKKzI1MDU4IGEwYjM1MmU3Njg2MmRmMGM4OTk1YmRiOWU1NzVlODBhMjdlZDMxZjggcmVsZWFzZTIxLW1haW50CisyNTA1OSBlYTE3NTVkNzNlOTIxYWM5MGE2MDNmYzJlMmY2Yzc4MDgzYmEzNTk5IHJlbGVhc2UyMS1tYWludAorMjUwNjAgMmUyMjg0NjFhMzkxYjE4ZDc5NjVjNTkzYzRjOWM2YTgyYTQzZjQxYyByZWxlYXNlMjEtbWFpbnQKKzI1MDYxIDMyYzFjMGFmY2Y5OGRjNGM3ZDc4NTY0MWI2YTBmMWNjODc3YjFkYTUgcmVsZWFzZTIxLW1haW50CisyNTA2MiAzYjU0YzQ0NTI0ZWI2MjQzNDM5NjYzMzlhNTdlZjI1N2JiN2FkNjU4IHJlbGVhc2UyMS1tYWludAorMjUwNjMgNDhlY2Q2MDYxZTg4ZDBkYmU5MDJjZTY3M2M3MTQzZDkxYjUzNDUzZSBsZWdhY3ktdHJ1bmsKKzI1MDY0IDQwMjczNjFlNzk1NmEyMWVmZjlmMDRiMTA4MDg0NTQ4ZjE4NjU0MzYgcmVsZWFzZTIyLW1haW50CisyNTA2NSA3NTMxY2M1OTJlNDYzYTFmODQwZWRkNTc2NDhhMGUzYTY3OGUyOWRmIGxlZ2FjeS10cnVuaworMjUwNjYgNGE1YTAxMGM4ZjQ0NDI5OTc5NmFkZTVkZTA1ZGJhNzI5ODRiNzI2NSByZWxlYXNlMjEtbWFpbnQKKzI1MDY3IGFhODNmZTZlOWM0ZjVkZGM0ZmU0MWI3M2ExMThhY2U0NmE1NDkyZDQgbGVnYWN5LXRydW5rCisyNTA2OCAzYjczMzI1YjMyZTU5NDNmYjQxN2Q1Njg2NjFkYTg3N2Q0MWRiZjliIGxlZ2FjeS10cnVuaworMjUwNjkgYTZhMzFjNTVhMTZkMDUwMDg4ZDM3Yzc1NTRhYmFhYzY5MzM4Y2I4ZiBsZWdhY3ktdHJ1bmsKKzI1MDcwIDg2NjYxNWYwYWUyYTcyNThkNmIwNDUxZmVmZDRjYjgxYTk3ZGZmNGUgbGVnYWN5LXRydW5rCisyNTA3MSAzYmU0MGQzYWZmOTQ1ZjZhOTAzOGEzNmY2M2FkY2JhMzgxNmJlM2Q2IGxlZ2FjeS10cnVuaworMjUwNzIgNDM3MzkzZTc4MGNiZmYzZDMyZWE5NDQwMjQxYzQwYThlYzQ3ZjA3MiBsZWdhY3ktdHJ1bmsKKzI1MDczIGM2NGZjNTZmNjA3MjVmODkyODI4MWZjZDI0ZmZhMGI5OWMwY2NmMjggbGVnYWN5LXRydW5rCisyNTA3NCBlMjIzMzk3YjI2ZmE1YTI2NWZkZjM0OTJmZmFjY2VmODBjZWE0MTUyIHJlbGVhc2UyMi1tYWludAorMjUwNzUgNjMwMjkzYmUxMDM1NmUxYjA2MjczNTZhNGU3NjIzNjk3NmNkMmZhZSBsZWdhY3ktdHJ1bmsKKzI1MDc2IDRjNmMxM2FhOGE5OTc1MjlmNzA2MjhjNWZmNmJjYTc1NTAxZmQ2NTQgbGVnYWN5LXRydW5rCisyNTA3NyA0ZWFlNjZiZTFkMjkxYmEyNzQ1OWFiNjE4NzZkMjhhYmM5YTM5NDk1IGxlZ2FjeS10cnVuaworMjUwNzggMWQ5MTgyMDEyOGExYzk5Y2EwODQ0OGUxOTY4OTIwMDY2ZDAzMzdhNiBsZWdhY3ktdHJ1bmsKKzI1MDc5IDgxYTgzYTY1MjQ2ZDMwMDZjOTY3YTRjNTI0N2NkZGU3OGUzOGY1MzggbGVnYWN5LXRydW5rCisyNTA4MCBlYzZiNjdkMjgwM2QyZmEyMmRjMWMyZTVmOGI3MzQwNDMwMTcyY2Y5IGxlZ2FjeS10cnVuaworMjUwODEgZTk5MTk4MjM0ZDk2ZDI0ZDU0YjQ5MzBjZjkwNzExYjM4Y2NkYTRkYyBsZWdhY3ktdHJ1bmsKKzI1MDgyIDI1ZTQ0YTAxMjVlNDU3YzZhZjY2ZDc0NTQ2ZjViNjZlNDdmZTY0YTQgcmVsZWFzZTIxLW1haW50CisyNTA4MyA5ZTE3M2NiMzViNmRmZGQ3M2VkMzViMGQxZGQ2MzQyZTRiOTNkOTUwIHJlbGVhc2UyMi1tYWludAorMjUwODQgZWJlNmJkNTc2ZjY1ZDliOGFlZTA4YzI4OTE0M2UzY2QyODg2NjVhZCBsZWdhY3ktdHJ1bmsKKzI1MDg1IDg4NGU1N2JmM2FkYTQxMDczYjZlNmQ3OTE4YWI4YWUyMzIwODkzZTMgbGVnYWN5LXRydW5rCisyNTA4NiA1ZDJiZmJkNDdmMWJlMmEwMmFmYjAyMDUyN2QyY2FjYTE5ZDZiYTI4IGxlZ2FjeS10cnVuaworMjUwODcgNjc3NjFkNWI0YWU2YTJlZjE1NzFkZjdkNDY5YTUyZDBmZTU0MmMyYyByZWxlYXNlMjEtbWFpbnQKKzI1MDg4IDVhMzI5YTI1NzE5N2Y5NTJjNmRkZjZkYTdjNDZkY2E4NjVlM2IwNjEgbGVnYWN5LXRydW5rCisyNTA4OSA1NGVjY2M1ZDIyZGQyNzQxZWY4OWY4MGUwMDU2ODUzZTlhOGU2MjI2IHJlbGVhc2UyMS1tYWludAorMjUwOTAgZTY1NDc1YjRmM2NmOGI1OGU2OTk0YTRjMGE5YWFhZjY3OWU3ODIzNyByZWxlYXNlMjEtbWFpbnQKKzI1MDkxIDNlMjZmNWRhY2JiZTY2MmYxMGI1OWNmOGNjNjFmNDNmMjZjNjNhOWIgcmVsZWFzZTIxLW1haW50CisyNTA5MiBkOTYzMTg0MzgxMTg3Mjg4ZGY4OTc4NDFmMDY2ZmY2NzU5YTZhZjUzIHJlbGVhc2UyMS1tYWludAorMjUwOTMgMzFiMjUwMTQxNzRiZDZjODQ4MjQzY2ZhZGNlOTQ2Njk0NWUyZDc3OSByZWxlYXNlMjEtbWFpbnQKKzI1MDk0IGRjY2JkN2JiNWJkNWM4NTE1MzMzZWNkOTY5NzRmOGYwOWNlZTkyOTcgbGVnYWN5LXRydW5rCisyNTA5NSBjM2E4NjQ4YmYwOTdhYjcwMTI4YjRmYjFmZWE5NjNkYzdmNzViMDQ3IHJlbGVhc2UyMS1tYWludAorMjUwOTUgY2YzMWIxMGU0NWI0ODYxNTA5NGNhZTkwZTNjNWJkMDcyNTg3ZDhlNiByZWxlYXNlMjEtbWFpbnQKKzI1MDk3IGJhOGRiOTBlZWY0ZWNhYThhMWZjYmU0MDNhNmUzYTQ4YjA4NDVkZGIgbGVnYWN5LXRydW5rCisyNTA5OCAzMGE4MTcwMzhhZjBmNGJkNmRiNjg5ZGQzMGQ2NjUyMzlkMjg4NDE5IGxlZ2FjeS10cnVuaworMjUwOTkgY2ExYjY3ZjVhM2VjZDhmNDdiNjNhNDc3Y2M1Y2UwMmU5ZGU0ZDQ2ZSBsZWdhY3ktdHJ1bmsKKzI1MTAwIDJiNTZhZjY5ZjY3ZGVkOWY2ODRmYTMzNmRiNmRmNjM4M2RiOGU4N2EgbGVnYWN5LXRydW5rCisyNTEwMSA4ZjRjYzgyMWFmYWE3MjgzYTVlOGU4MTNmYjI1NzVkOTUzZjQzZjI4IGxlZ2FjeS10cnVuaworMjUxMDIgZWE4Yzg0MDBhNGM4ZDAwZTc0ZTc0YWI0ZTE4M2UxY2Y2MGRmNWFiOSBsZWdhY3ktdHJ1bmsKKzI1MTAzIDlkNWFkZmY4N2YzMDAyMGFhMmJkOGMzNGIzNzU0N2FjODUwYzNhMGEgbGVnYWN5LXRydW5rCisyNTEwNCAzNGY4NWEwYTdmYWFkY2I3ZGNmZDhkZDhlYzZhZjIwYWJjNjllMGM1IGxlZ2FjeS10cnVuaworMjUxMDUgNTNmYzZlYzhhODM3NjA1YjMxZmM4MDk4NzM3ZTczZWIxMDUwYzkzNyBsZWdhY3ktdHJ1bmsKKzI1MTA2IDFiN2VjMzk1ZDM5MjRmOGYyOWY1NGRlNDdhMzcxMDJjZmIzZDkyOWIgbGVnYWN5LXRydW5rCisyNTEwNyA0NDJlZmYyOWI0OWY3YjMzNjM4ZjgzMDViMWU4ZTc5ZTM2YjFjZTc4IHJlbGVhc2UyMS1tYWludAorMjUxMDcgZDgyM2ZjMTM1ZTkwZTdiYjg0NTkxNWNlYzkwMjc3ZWJmY2QyYzhkMyByZWxlYXNlMjItbWFpbnQKKzI1MTA4IDc0MjQ2YTJkOTk2MjIzZWMxZWUxZGVjOWE3NDZhODdjOTcxZTkyNTMgbGVnYWN5LXRydW5rCisyNTEwOSA2NjA1ZjA3NmY5NWEyZDA1NmMyM2MwYzhlZDExZTg3NzUyYWRhZDdjIGxlZ2FjeS10cnVuaworMjUxMTAgYzRmNzJiNDcyMmRhNjM0ZDBjNTE3ZTA0ZGU0MzRiYjJkZTZjM2E5MiBsZWdhY3ktdHJ1bmsKKzI1MTExIDljMGEwYzg5NzczZjE4MmIwMDY1OTdlZTlmNDhhZGNmZTEwZDZlYmEgcmVsZWFzZTIyLW1haW50CisyNTExMiA5ZDc3MDhkZGNmYjk5OGUyOTQ5MDI1NDJlYmMwNWUzNDM2Y2Y2OTc4IHJlbGVhc2UyMS1tYWludAorMjUxMTMgMTlkNjY4NzUxYjFlYWYwMzQzMDA4MDY2YzVlM2NiODM5NTllNGY0NCByZWxlYXNlMjEtbWFpbnQKKzI1MTE0IGNmYmRlODUxOWU1MDBlMTIzMGEzZTY3NGIzZDAzZWFlMzE5MzJlNTEgcmVsZWFzZTIyLW1haW50CisyNTExNSAwZWZmOTYxYTE1YjUzODhlZWI1MzFlNDdiOWQzOTNkZGZlMmE5ODZhIGxlZ2FjeS10cnVuaworMjUxMTYgZDYwMzUwZDcxYjYwNTgyOGU1YjYwNDRmZjcxOGIxYWM5OTczYWE4MyBsZWdhY3ktdHJ1bmsKKzI1MTE3IDQwNjMxYWU3NGIxN2JiYTIwNTFjODc0Yjk1OTJkZWU3ZjVjNDMzMGIgbGVnYWN5LXRydW5rCisyNTExOCBjYjQwYWNhNDE4ODljZTc3Mzg1ZjZmNDY4ZWI5MzllZjBkMjFmYWFmIGxlZ2FjeS10cnVuaworMjUxMTkgNzIzM2I4NmJlNjU2ZTM5Zjk0ZWE5MmY2MGIwM2ExNDI3YjFiNTlmOSBsZWdhY3ktdHJ1bmsKKzI1MTIwIGRiYjcwM2ViNmIzZDliNGUwYTNlZmM4ZDE3ZGE5NjIxYjJlMGZiNDEgbGVnYWN5LXRydW5rCisyNTEyMSAxYTI2ZGNkZmI2Y2M5ZGVlM2Q4ZDMwOTU3NTllYzJiZTkwNDM5YTMzIGxlZ2FjeS10cnVuaworMjUxMjIgYTFiMDY1ODI5M2E3MDk5MTNiODEzOTRkOTY1MjI1Y2JiZTkzMjA1YSBsZWdhY3ktdHJ1bmsKKzI1MTIzIDY1MmRjNTFiNWY4MzIxODdjYmFkMDczNGZmODQwYWUxNjUxYzgyY2IgbGVnYWN5LXRydW5rCisyNTEyNCAwMTEwYTA5ODNlNjE5MzBjYzEwNWQxYzQ2MTc4NGRmNmY3YjQ4NTExIGxlZ2FjeS10cnVuaworMjUxMjUgMzY4NTYxNWQyMWIzMjdmNTgxMWU2OGQxMjNmMDI5N2VjMTRhMzY2NCBsZWdhY3ktdHJ1bmsKKzI1MTI2IDhiMTE2YTg0NDliZDVlZWRmYzgyY2ZlNzYzZDJhMmQzMjdjNzIyOWMgbGVnYWN5LXRydW5rCisyNTEyNyA4YTJjZDFjMGMxMzU0ZWM4ZmFkNmIzOGYyMzM1YzAwYjg4ZmEwNDZmIGxlZ2FjeS10cnVuaworMjUxMjggZTIyN2M4ZDAzZDZkOGMyNGQ0NTRjNTNhNzE2MzFkYTRmY2QwOTcyNyBsZWdhY3ktdHJ1bmsKKzI1MTI5IGU2ZDVjNGM3NDViYzAxM2M0ZmM2MzEwODhjNTNmYjMxNzQ0NWE3YjkgcmVsZWFzZTIyLW1haW50CisyNTEzMCA1Nzg3ZmM0OGMyYjU1YTUwNzE4YWE0MDZkZjRhMzkxYjYxOGUwN2YyIHJlbGVhc2UyMS1tYWludAorMjUxMzEgOGU2N2Q5MDM1YjY5OWFiYmEyMTE4MTJjNTUzYjY1ZTJkOWRhMTk1YiBsZWdhY3ktdHJ1bmsKKzI1MTMyIGVjNzUwZTM3NjcxYmUzZWI1MjVlZDg4ZWQxN2U5ZDRhOWQ1ODIwMWUgbGVnYWN5LXRydW5rCisyNTEzMyBkNWEzOGEzMmY3OGI1MGNjODU4OGVjYzI0NDVhNDIzNjdjNGU1NWZhIGxlZ2FjeS10cnVuaworMjUxMzQgMWVkMjY4ZWEyZDI2MzAzOTMzNjUxYzZmMWMxMDIxZTVlNjk4YzE0ZSBsZWdhY3ktdHJ1bmsKKzI1MTM1IDE2Y2M1Mzg0MDFiM2YwODJkZGQ4ZmQ1NjdlN2Q1YTIzZDFmOWRiMWIgbGVnYWN5LXRydW5rCisyNTEzNiA5YmVjMTgzZmVmZmY2MWNlZDNjY2FkMWMwNWQ2ZDNmMTYwYjM5OWVlIGxlZ2FjeS10cnVuaworMjUxMzcgNjMzZTY0NTY0ZWRmYTFhYmM1Y2EyYTY1Njg2MDhmZWIxNzliOWYwYSBsZWdhY3ktdHJ1bmsKKzI1MTM4IGY4ODczNjI1ZDhmNjA0YjZmYmY1ODNkMWUzMzMzOWNmMGUxOWM1YjMgbGVnYWN5LXRydW5rCisyNTEzOSA2Zjk1OGY0OTliNDI5NTcwNTM2NGU1Y2VmYmY1YzE0ZjBlZGNhMjAwIGxlZ2FjeS10cnVuaworMjUxNDAgMGZlODc1ODY2ZDRlZjU2ODYyNTUzODFkNmJiYTU4NjQzYTU4ZmM4MiBsZWdhY3ktdHJ1bmsKKzI1MTQxIGRhMTdhMTBlMmYyMzFjOTIwNzY1OTQyZWI1YjI3YTEwNjFhNGNiMjUgbGVnYWN5LXRydW5rCisyNTE0MiAzZTBkYjk4NGJkM2UzMDRjNzdhZTE5YjNhMmNkZjhmZWM4N2JlZDQyIGxlZ2FjeS10cnVuaworMjUxNDMgMmM2NjE3ZjI3MGUyYzkyZGJiY2YwMWYwZDIxYzdkYjY0MjJjZWY2YiBsZWdhY3ktdHJ1bmsKKzI1MTQ0IDVhNWQ5NGM0OTk3NTBlM2QzY2E4YzU5NDM2OGY1ZGViNDZiMTZmMWEgbGVnYWN5LXRydW5rCisyNTE0NSA2YzVjMTEyZDQ1MzM5YmQ3NzI4NTNiZjg5OTk5Y2QxZDg5ZmE2MTI2IGxlZ2FjeS10cnVuaworMjUxNDYgMTM4M2U2ZjdiMTFmOTlkNzQzNjllZWNiOTAzYjI5M2I1MDJiZjZjMCBsZWdhY3ktdHJ1bmsKKzI1MTQ3IDNlZjdiZWQwMDdmNmVkMzdjMjk2OTlmNjRjZWMwM2Q4Njc3ZGE0MDAgbGVnYWN5LXRydW5rCisyNTE0OCAwNWZhYmQ4ZjRlN2Y4ZDY1ZjNkMWIwYWE1MzE1YWY5NDJhNGUyMDYyIGxlZ2FjeS10cnVuaworMjUxNDkgMTllMGE5MmUzMjc3N2VkNmZhNWRjMjdjZmJmOWU4ODcxYTc1ZWRmYiBsZWdhY3ktdHJ1bmsKKzI1MTUwIDZhOGM0NmQ4MjEyYmM2N2IyOTJlNjk4MmU3NTQxNDY3MTFmMjlhYjEgbGVnYWN5LXRydW5rCisyNTE1MSA5NTc2MGFiMTE4NzU1ZjU3MWZiMWRjOWU0MjNiOTc4YzhhYWQ0NTk3IHJlbGVhc2UyMi1tYWludAorMjUxNTIgYTY4YmE3NTVkNzAwZTVlMzFhY2ZlZjQxOGZmMjNmZTUzYzI4ZGUyYiBsZWdhY3ktdHJ1bmsKKzI1MTUzIGNlMTBhN2Y5NjdlNWE3YmRiNjI0ZWM3M2Q2NDA4YTVkMTM1NTliNGQgbGVnYWN5LXRydW5rCisyNTE1NCA0ODNmNWYyNzJkZWZjNmY0N2U0OTljM2Y2OWI3NjZiYzFlMTc0NjAzIGxlZ2FjeS10cnVuaworMjUxNTUgYzg4ODYyMGU4MDYyYzdjN2QwZjUwOGIwMjE4YjMzOWEzN2NhNzBiYSBsZWdhY3ktdHJ1bmsKKzI1MTU2IDI2YTU0ZDNmNTVlNDdmZjM1NDczNGZhMDY1YzU5YzNlZmNhN2M1NzAgbGVnYWN5LXRydW5rCisyNTE1NyBlN2Q4YTlkYTNiMTgwNDBiN2YzMTJkYjM2ZDg4ZmQ0ZGYyM2EzODM1IGxlZ2FjeS10cnVuaworMjUxNTggMDNhMmJhNzQxNzliOWYxNWYwZGFjNzNiYjc0YTBiMWE1MmEwODIxYyBsZWdhY3ktdHJ1bmsKKzI1MTU5IGFkY2MxNDE0MjQzMmU4MTRlMjA3NTVhYzhkM2FlZjA1NGMzZGQyYzUgbGVnYWN5LXRydW5rCisyNTE2MCAyNDA5OGY0ZjY4MmVkMTZmZWYxNmRmYTIyOTUyYmZlNzVkN2ZhYTBiIGxlZ2FjeS10cnVuaworMjUxNjEgZmEzMDUxZTBmZDkzMjEyMDlmN2VhNDY3YzU3NDk4MDgyOGNhYjE0OCBsZWdhY3ktdHJ1bmsKKzI1MTYyIDJjOGIwM2VkMzkwNjNhNGUzMGZlMDU1NGZlNzY4NDNhYTQ1N2Y2OGEgcmVsZWFzZTIyLW1haW50CisyNTE2MyBlMGRiZDE3NTRhYTkwOGMxN2MxNWY4ZTM3NWI4YjZhYTEyYzljMDY3IHJlbGVhc2UyMi1tYWludAorMjUxNjQgYWFlOTc3Y2E1OGEzYTdiMWUxM2UxNDAyMzc2YjhiYjdlMjQzMDNiMSByZWxlYXNlMjEtbWFpbnQKKzI1MTY1IDM0NWI5MmVkMmEzZmI3YWEyZmM5YTU0MWQ0ZGM5NDU2ZmI1ODM1ZTMgcmVsZWFzZTIxLW1haW50CisyNTE2NiA5MjYwZjY5NDMyYTkzYzlhN2Q0YWZkMjJlNGIxOTVjMzI0YzYxMzQ4IGxlZ2FjeS10cnVuaworMjUxNjcgNTlkMDliYTFmNzgyYzhmOGVhZjNhZTE3YjYwNDVmZmI4NzE1NjFhMSBsZWdhY3ktdHJ1bmsKKzI1MTY4IDYzY2JhNDIzZmEwNDBiZjEwNWYyYzg4YzhiMThlNTMwNzJkMTlkYzUgbGVnYWN5LXRydW5rCisyNTE2OSA3NDQxNTMzYWNhM2JiOWJmNjA1M2ZlOGJmOTFkOTM2YzUxNzg5NDJiIGxlZ2FjeS10cnVuaworMjUxNzAgN2ExMWJmYzY2MjE0MzE3MTM3ZjM1NjE4ZWUwZDY0NTU5ZjFjYzNmZiBsZWdhY3ktdHJ1bmsKKzI1MTcxIDQ0NDU5MWFmZmQwZTAzY2MzMDZjNmM2NjM0OWM2N2Y0ZmM1YmQzODggbGVnYWN5LXRydW5rCisyNTE3MiBmZmM0MTE2ZWMxMTlmOGFiY2Q5YmY5ZWZiNmI3MGMwM2FkNDE3ODVmIGxlZ2FjeS10cnVuaworMjUxNzMgZjNiMGUzY2IzNDBiMzAyMTg5MTA5MzNjOWI5Y2ExODA2MmFjOGI5MSBsZWdhY3ktdHJ1bmsKKzI1MTc0IDA1ZTYzMTExYzMxMDZlMGQ5YmEzYjk4NTg4ZjM2MzM2MTU0MTc0MjggbGVnYWN5LXRydW5rCisyNTE3NSA5MDUyMTNlMjg2Nzc1NzEzY2ZmM2U2YmFhNWNlZDgzMTI1ZmIyODAzIGxlZ2FjeS10cnVuaworMjUxNzYgOTY5Y2UwMTdiZDNhMTc1YjU1MDU0NTYyMTk5NWViYWIzNmE0NDM3MyBsZWdhY3ktdHJ1bmsKKzI1MTc3IDNhNzA3NTIwZGUzMDkzZTdmODFhOWY4MDAwY2QzYmMxYzAwNGM1N2MgbGVnYWN5LXRydW5rCisyNTE3OCA5MGMxZjNmMzdkYWU0NmE4NWZlNzJmNmIxMGJmZjYxNzFkZjZiODI5IHJlbGVhc2UyMi1tYWludAorMjUxNzkgYjEyZGNkMjc2ZGIwZmQyM2U5ZWU5YTA3OTgxM2EwYjIxZGUyNGZiMyByZWxlYXNlMjItbWFpbnQKKzI1MTgwIGE0ZTQ3MzY3OTliMThmMzY5ZjdmY2IyM2ViZTA5ZTU0ZjEyYzNmZWQgcmVsZWFzZTIyLW1haW50CisyNTE4MSAxZDg2Y2RiMTcyOTE2MDllZDBlZGMzMTEwZjUzMjMyNWM0ZmQ3ZDkwIHJlbGVhc2UyMi1tYWludAorMjUxODIgMTRkYTdkZDM3Yzk0ZTZhNjQ4YjI4Mzc5MWJlZjZlZmYyNDkxMzQ1YSByZWxlYXNlMjItbWFpbnQKKzI1MTgzIGRmZjIyOGFkMTdiOTgzNTI1YTM3NjU4ZGZjZTgxMjllY2FlMWI0MjEgcmVsZWFzZTIyLW1haW50CisyNTE4NCA2ZjQ1NWQ0OTE4NzE1ZjM3MTllZjdkODNkNjIxOWMwMTE1Yjc5ZDE1IHJlbGVhc2UyMi1tYWludAorMjUxODUgMDZmOGE4MjFiNjgzY2QxMzU1NWM4ZTU4YmMxZjgwYTlmZGMzMzczMiByZWxlYXNlMjItbWFpbnQKKzI1MTg2IDdlNzk2NGM2ODJiNTYyMzhmY2JkMzMzODk3N2Q2MjUyZWQxNjFkYTcgcmVsZWFzZTIyLW1haW50CisyNTE4NyA3YmEyYThjMTYyZmEyNjdhNzczYTE1MWIzMTIwNTVjOTA1MzRmODA0IHJlbGVhc2UyMi1tYWludAorMjUxODggOWI0MTRkZjQ4ZTE0N2U5NTc0NDQyMWM2MTg2NTZjNWVjZjhjNzczZSByZWxlYXNlMjItbWFpbnQKKzI1MTg5IDczMWJlYjY3ZmVjOTAxN2E5MjZiMjZmOWE2ZjJiNTkwNDM3NDhlMGYgcmVsZWFzZTIyLW1haW50CisyNTE5MCA1Y2FlYTJiMTMyY2ExODVlMDdlMGJmZjUwZDkzYTczNmFmOTE5NjI1IHJlbGVhc2UyMi1tYWludAorMjUxOTEgNGY1NGU5YTI5NzZlNmMyMjFjZDYwNmJmYTk2YzcwMTBhOGZjM2Y5NSByZWxlYXNlMjItbWFpbnQKKzI1MTkyIGFhNzEzYzRjNDk4ZGVkZjNkYjIwZmE1NzE3ZDAyN2RhYTU5Zjk3NjQgbGVnYWN5LXRydW5rCisyNTE5MyAwNzBkMzkyMDQyZTNlZWY2NzAyYzUxODc4YmNlZjMzNzJlZGI4YTI1IGxlZ2FjeS10cnVuaworMjUxOTQgYzFkNTVhNjI3ODk3NzQwMzc3Y2YxZTdmMGMwOWVhMTRjY2RkN2IzNyBsZWdhY3ktdHJ1bmsKKzI1MTk1IGYzNzliYzBjNWUzZmM5NzI0NzNjNjNlMjliMWU1YzFkNDk2OGM0NGUgbGVnYWN5LXRydW5rCisyNTE5NiA2YTFlNzRhZGY4ZDZjZWM0ZDJjMTEyNjY3OTY2NTgxOTg3YTkwMDhjIGxlZ2FjeS10cnVuaworMjUxOTcgMTFjYzA1OTg1NzRkODE4NDVmMThjMmRiZmNlYTAzMjNmZmZmNTNhYiBsZWdhY3ktdHJ1bmsKKzI1MTk4IGZjMTBlNzAyMThkM2JlM2MyNWZjYTMzODllMzc0NGM1YWQ5MWY2MzAgcmVsZWFzZTIyLW1haW50CisyNTE5OSA1ZTY3YWQ3NmM3MmZkYWRiYzhhNzE0ODA5OTk0NGFmN2JjNzY2NTdmIGxlZ2FjeS10cnVuaworMjUyMDAgZmQ0MTg0ZGEwOTgzMGY2ZGNiMGI1MWY2YTE0MzI2MjFlZWIxNjE5ZSBsZWdhY3ktdHJ1bmsKKzI1MjAxIDRiM2IwNmRlMDJhMzExNWJjMDQwOGU1YWY1NWMzNjc2NDhlZDMxOTUgbGVnYWN5LXRydW5rCisyNTIwMiBmZTJiNjRmYzU3YTBhMGU0MGZjYWU4NjBlNGEyYjhjMDM3ZGI0NTY1IGxlZ2FjeS10cnVuaworMjUyMDMgNDNkOWMyZjlhMmY2YmMwMjE3MzVkOTA2MjNiYmFlOGU3NDYzODY1YyBsZWdhY3ktdHJ1bmsKKzI1MjA0IDQ4YjU5ZmE2ZjY0NzIyZDVlY2ZjNzU4YTFjNGZjNTE0MTFmMjY4ODMgbGVnYWN5LXRydW5rCisyNTIwNSBhOTNhN2JjYmMzODZmZDY4NzhhZGE0MGJiMjZkOWE1ZDU2NzBjZWM4IGxlZ2FjeS10cnVuaworMjUyMDYgMjZiNzU4YzAwZmI2MDY0NTMxMTE2YzExMmNiODFkZWY0ODdjZjk1MiBsZWdhY3ktdHJ1bmsKKzI1MjA3IDQ1NzMxZjEzNjBlZWNlMjY1YjkyZmYzNTk2ODVkNWZjOGVkMTQzMDEgbGVnYWN5LXRydW5rCisyNTIwOCBmZDQyNGY1MTlhOGViZTgzZTg2MDM4M2UxNDk1ZmQ1NzUwNTVlNGExIHJlbGVhc2UyMi1tYWludAorMjUyMDkgZmFhYWViNTM1ZDM5MmU3ZTBkYmFmYmUzNmQ0NmE1Yzg2ODc2YjIxMCByZWxlYXNlMjEtbWFpbnQKKzI1MjEwIDBkMDhjYjg0OTUxMTgwOGEzOWRlYmZkZWRlNzdmOGQzNjRmYjY0YjAgbGVnYWN5LXRydW5rCisyNTIxMSBlMGZjMjg2ZDU3YTQ2Y2Q2YTc4N2FhNWI5MWUxOWZmYjJhNjRhZWY2IGxlZ2FjeS10cnVuaworMjUyMTIgOWUzODRmMTAzMDQ3MjEwODdlZjc1YjFkMWY5NTY4MzJiNjkyNWE5ZiBsZWdhY3ktdHJ1bmsKKzI1MjEzIDY1ODNjOTVjZjY5MjI0MmRiMTM5ZmNkMGRhYmQ5YjA4Yjg1OTBkM2IgbGVnYWN5LXRydW5rCisyNTIxNCBjNDMzZGUxN2MxNTgzYWFhNzgyOGVjOGQ2YTA1OGM5Njg0NzYxYjc2IGxlZ2FjeS10cnVuaworMjUyMTUgMWYyZTkyODUwMTg4NzM4ODg5YWMzYjBkOTA1ZWZhMDI2YzJlODM1ZiBsZWdhY3ktdHJ1bmsKKzI1MjE2IDJmNjE2NDc0ZWFlYzdkZjVhYjE4YzU3MzM2MjljYzJkMDg5ZjZjY2QgbGVnYWN5LXRydW5rCisyNTIxNyA5Y2ZmODkwYjRmYjA3NmE4MzUxZjNkY2FmMGNlNjcwNjg0ZDZlMzMwIGxlZ2FjeS10cnVuaworMjUyMTggZDUyMWNmMDg5OWM4MDNiNTJiMGRhZWQ0OWI3ZTlkODU4N2I3MjE1NSBsZWdhY3ktdHJ1bmsKKzI1MjE5IDc2NjA3YTBjNjk1NjA4ZjU3NjMwNDQzMzg2YzQ2ODQxZDM0ZWExYTUgbGVnYWN5LXRydW5rCisyNTIyMCAyMGJjNGZmMTIxNWMwZmU3MGM4NzQwMTQwYmNmYjQ3NDI5NGRkMDY3IGxlZ2FjeS10cnVuaworMjUyMjEgZjVhYWI4ZWI4MTI0MTU3YjJkZmM5OGE1MmFhY2FiNmQwMjE0MGJjZSBsZWdhY3ktdHJ1bmsKKzI1MjIyIDUzYWM4Mjg0MjE3YWZkMWZhNzMzY2YyMjk1ZTMzNTE3MTE4MTEzMjcgbGVnYWN5LXRydW5rCisyNTIyMyBjYmY0MTkyNWRkM2U5MzE3MWIwZGQ5MTYxYTNmZjYwZGJhYjg2ZjdjIGxlZ2FjeS10cnVuaworMjUyMjQgZjcwOGE5MDdkYzY5MWE3YWNiMzg3NDQxNjQwZDM0YTZhYzM2YWYxNCBsZWdhY3ktdHJ1bmsKKzI1MjI1IDUzZmVjYzhkZDRjOTA1Y2NjNzc1YWUzNGJkYWM1ODM3MjQ3MDllZTQgbGVnYWN5LXRydW5rCisyNTIyNiA2ZjYyZDUxYzljMTI4MTlhZDMzODg4Njg5YjM5YmEwYzkzZmRmOTI0IGxlZ2FjeS10cnVuaworMjUyMjcgZGEwMDhiNWM1MDM1ZWMwNWRiNTI4OTExM2E0MzI1ZGM3ZWNiYzhlZCBsZWdhY3ktdHJ1bmsKKzI1MjI4IDNjZDBiNGJiNWUzNGQyNDlhYWMzODE3OTM1NzMxOWM0YzE5ZDc5YWEgbGVnYWN5LXRydW5rCisyNTIyOSBiNWQwMDJlOTA4MjdlMDZmZTdkYjFiYjUwOTMyMDA5MTY4ODhiNjFjIGxlZ2FjeS10cnVuaworMjUyMzAgMDQyZGIwMzgyY2QzYjgzMmY1ZWNlYWNlZGU2YzM2MzMxNTg2ZGQ5YiBsZWdhY3ktdHJ1bmsKKzI1MjMxIDUwNDNiNzM4YjA3MjBjM2YwZTA0YzI3NTI2ODBlN2YyNDQ5ZWJjNzIgbGVnYWN5LXRydW5rCisyNTIzMiBlZDg2MWUwZDRhNzFkNDg2NmNlNjE1MDMwOGE0MWI3MzQwZmM3NjhkIGxlZ2FjeS10cnVuaworMjUyMzMgODQ0ZmU3MjViMWNkNDMxMjhmZjVmZmZmZWJiMmY1NDY5ZjM2NTY4ZiByZWxlYXNlMjItbWFpbnQKKzI1MjM0IDRkNzIxMzU3YmRkYjVhOGFmNTY5OWU2Y2Q5NDJlZTZmMzU2MWFhNTYgcmVsZWFzZTIxLW1haW50CisyNTIzNSA3ZmFmMGZkZGY3ZTY4YWFmYzlkMmM2Mjc2MjUzYTdlNTI2ZjJhNTE3IGxlZ2FjeS10cnVuaworMjUyMzYgNzhlMzZmMDUyM2E4Yzg1OGEzYmQ3MzE3MDgxZDU2ZmQyYTlmODU1OSBsZWdhY3ktdHJ1bmsKKzI1MjM3IGU0ODg0NjcxN2MyNmYzYzM2OGJjNzk3YTYxYjUzZDQ3ZDZiZGNlZGMgbGVnYWN5LXRydW5rCisyNTIzOCA0OWQ5MzY4OTQwMmI1NGUwMTA0YmMzMGY2NDQyZDczN2NlMmRmODNiIGxlZ2FjeS10cnVuaworMjUyMzkgOGRhZmU0YTc4Y2FjNDY1MTVhNjNmNTQwMzQzNzA0NjQ4ZmFkMzE3MiByZWxlYXNlMjItbWFpbnQKKzI1MjQwIDM1Zjg0ODkzYWNmNzY5YzhkMmYwMGEwOTEwOWFhNWIxYmM0MWIwOTcgcmVsZWFzZTIyLW1haW50CisyNTI0MSAxYzc2OTIxN2MxMDU5ZjNmZTMzNTdlMGNlODk1NjU0MzY3NTM2MGYxIHJlbGVhc2UyMi1tYWludAorMjUyNDIgOTRiYWM4OGYxNTBmMDAxMDJmNTQwMjZiYTRmMjFhYTk0Njg2M2I0NCBsZWdhY3ktdHJ1bmsKKzI1MjQzIDBhODEzYTNkZGI5MmRkOWNhZjlhNWIxYzJiMjNlOGIyZWE1OGI2NTcgbGVnYWN5LXRydW5rCisyNTI0NCAwNGNmNGUxM2U1YzlmYjM0ZWQ3NDEzMGQ1ZDE5YWJmOTJjMTVlNjBlIGxlZ2FjeS10cnVuaworMjUyNDUgYzgyODZjYzcwMmM5OTI0ZjFlMmIyMTNjZmVlYWUyMjAyZmRkMDQwMiBsZWdhY3ktdHJ1bmsKKzI1MjQ2IGFiZWRiMjQxOGY2MjMxYWRmMjQyMDUwOTJhNTk5OTZmMWYxZTRjMDIgbGVnYWN5LXRydW5rCisyNTI0NyBlMTA4Njk3MjZjZDQxYjcyYThiMWY5MWRjMGFmM2IzM2Y0ZmM3NDU1IGxlZ2FjeS10cnVuaworMjUyNDggODM2YzFkYmYyM2EwZWE5ODFjZGY2M2IzZjcxZDM1NDI2NGJjYmYxZSBsZWdhY3ktdHJ1bmsKKzI1MjQ5IDE5ODM0Y2QxMDFkOTFiNWYzMjZlNDUxZDkxNDJlOTExNGFhZWZkMDcgbGVnYWN5LXRydW5rCisyNTI1MCA2NGU1YTM5ZjFmZjA5NjE1ODJmNjFhMzk1NjI3YTViYjVkNDI1ZjRlIGxlZ2FjeS10cnVuaworMjUyNTEgMTdhNTZlMWM2ZmY4ZTI3ZDJkM2RkOTY1M2U0YjFkMDZjMWY4OTI1YSBsZWdhY3ktdHJ1bmsKKzI1MjUyIDhlZDdjNjFiNWYxYmEzNWIxNWExYTRiNTE5MzExMjY2MjFiY2JlNTQgcmVsZWFzZTIyLW1haW50CisyNTI1MyA4NjEzZGYxN2YxOWJiZDM4ZTU5MTQxOGM4NGRkMWYyM2FjMTE4MDA3IHJlbGVhc2UyMi1tYWludAorMjUyNTQgZjI0NTk1NWIzZmJlN2Y0YTJjMWFhYWIyMjUwYTVkYjZmYjU3OGQxYiBsZWdhY3ktdHJ1bmsKKzI1MjU1IDIxZjU5ZDllZDE2OWY0ZGIwNzYzYjgzY2UwMDQ3YzBkZDgxZWE1MDMgbGVnYWN5LXRydW5rCisyNTI1NiA5MzczNDhlZjE4Yjg1NjA0MjNhODllNjkyNTgxNDBiNDY5YTIxNzNmIGxlZ2FjeS10cnVuaworMjUyNTcgOThlOTJhNjRlNzNjMmZmNzUxZWJhYjI1NWMxZjhkMTQ1MWMzZTZlMSByZWxlYXNlMjItbWFpbnQKKzI1MjU4IDg2ZmNkOTQzOGNiZWJkNzE4Mzc4ZTU0ZTY0YjIyYjllYzIyNWVhOWEgcmVsZWFzZTIyLW1haW50CisyNTI1OSA0YjVjMjhhNjJkMTZlNGE0Zjc4YzNiNGQzYTEyN2YwYmEzNzExODU0IHJlbGVhc2UyMS1tYWludAorMjUyNjAgNTdlYWE1ZDY5YWMzNWY1MGQ4MGE3ZGMwZDBmYzQ4MzBmMWZiOWU1YiBsZWdhY3ktdHJ1bmsKKzI1MjYxIDRjMWNjZjM2MDI1Y2Q5N2FhZGQwZWExMzE2N2ZhZmNkNDAxYzkwMDQgbGVnYWN5LXRydW5rCisyNTI2MiAxZjZiYzQ5OGU2ZTU2ZTJmYzU1ZTVlZjNkMDQ0MGJmYTI3YTdkODNlIGxlZ2FjeS10cnVuaworMjUyNjMgYzA1MThhZDcyYjkyZTBhYTljYWRhNTEwNjcwNTZiN2Y3MGVlMDAxMCBsZWdhY3ktdHJ1bmsKKzI1MjY0IGYwMDc4MWQ2NjRhOWE0YjQzMWViYjA3ZTQzZmExNjhkNmQ3NDc1YjggbGVnYWN5LXRydW5rCisyNTI2NSBkY2MwNzc4ZWI3ZDNiNDFjMTc4MmFjYmQzNjdkMTAxMjM2NTUxNWViIGxlZ2FjeS10cnVuaworMjUyNjYgZjg4MWUwNjE4ZGYwYWY2NjUwZDExZDY3NjVhNGYzMTRlYTc3YzQ1OSBsZWdhY3ktdHJ1bmsKKzI1MjY3IDdmNjUyM2IzMjE3OTI2MjNhNjFjMjZmMGIzMjUyNzZkNDJlMTlmMTEgbGVnYWN5LXRydW5rCisyNTI2OCAxNmZhZjY4NzUwMDQ1MmY5ZDJiMzMxMTgzYzRlYTZhZWJlMTZjYmQ1IGxlZ2FjeS10cnVuaworMjUyNjkgN2MzMGNiMTdjMmY2NTZkN2EwNTM2ZWI5ZWNjMzI3ZWYyMDhkY2YyYyBsZWdhY3ktdHJ1bmsKKzI1MjcwIDE2YzJhZTM2OWQ3MTVlMmU5ZjY3ZjA2ZjIxNTI4ZjNlOWNiZTMyMDAgbGVnYWN5LXRydW5rCisyNTI3MSA3OTRmZTM3Y2E1ZjRlOGI1OTk2M2IxOGQ3N2E2YWYzYmY4YzYzNjAzIGxlZ2FjeS10cnVuaworMjUyNzIgMTUxN2I0NTQ3Yjg3NjZjYTM4NzUwNTNmNTkwZDgxOTU5NjIxYjQwMyBsZWdhY3ktdHJ1bmsKKzI1MjczIDlkMmFlODUzMTk0NDA0NTg4MDZlNGZkOWFhMTAzOGE0ODkxOGYyOGEgbGVnYWN5LXRydW5rCisyNTI3NCAwYzY5OTkyY2NlMDk5NDZkMzg5NzVmMjM0MTNkNjAxZjQ3NzBhOGYxIGxlZ2FjeS10cnVuaworMjUyNzUgZTE2MzcxM2I0N2NmMjFiMTNjZDliODU5MWE2ZGMxNWFmNjgyZWYyYyBsZWdhY3ktdHJ1bmsKKzI1Mjc2IDE1YzBlN2FlZjY2NmQxODgzYzJkN2U1ZjcyYzliOGE0MGRmZGNjZTkgbGVnYWN5LXRydW5rCisyNTI3NyBiOTgxNWY0ZDhiZTM1ODU0OTU2ZmYyZjc3YThlNjYyY2M4MTlhM2QyIGxlZ2FjeS10cnVuaworMjUyNzggMDc2ZTlkYzc3YWFkYjM4NTcwMjM2NTVmNWVmNTEwZDg4OTg5YjdjNyBsZWdhY3ktdHJ1bmsKKzI1Mjc5IGMzNzYzOTc2MTEyZDVhZmZiYjllNDU1OWY5MDEwMjE4NWQ5NTM2YjcgbGVnYWN5LXRydW5rCisyNTI4MCA1OWJiNDNiNmViMTFmMjVmYzljNDIwZGYyM2UyOTg2OTdkODZhOTE2IGxlZ2FjeS10cnVuaworMjUyODEgMGY1ZGZhMzNmOWVlODRlMGQ2YzA3ODc2NTRjYWVjMGUyYmFiNDExNiBsZWdhY3ktdHJ1bmsKKzI1MjgyIGY3YWEzMjdmZjBmZWI5MjcxZTNlZmZhMmE2NDllNjllMWY4ZjhkMDAgbGVnYWN5LXRydW5rCisyNTI4MyBlZmI2ZTYxN2FlYTM5ZGQxYWFhN2YxY2M4YzkwZWE0MjE1NmFjOTBmIGxlZ2FjeS10cnVuaworMjUyODQgODdhZmY2NDhkOTk0ZTIzN2RjMjZlZjY2ZDQ0ODJhNWFmZDUyYThkYSBsZWdhY3ktdHJ1bmsKKzI1Mjg1IDEwOTdmNzMwMjk0YjJjOTBhOWM3YWJmNjI1NTNjYmNkNzViZWE1M2IgbGVnYWN5LXRydW5rCisyNTI4NiA5ZjZlMGNmMWFiMzA5N2ExNTVlNzVmZjJmMTNmODg3YzEwOTI1NmRmIGxlZ2FjeS10cnVuaworMjUyODcgMjQ0ODI5MjFhNzhhOWI5MmQ0YTU5NWQ5NTY2NTRkZjQ3YjY0YjMxYyBsZWdhY3ktdHJ1bmsKKzI1Mjg4IGExM2JmMmY3MjYyOWFiNjhhNzEzMDc1NGM3YTVjZDE2NjA4ZDc0MTUgbGVnYWN5LXRydW5rCisyNTI4OSA3ZTcxNTljMDI4MzA5MWY4ZmViN2IwZWViZjYwZDVjZjEyZWIyMmI0IGxlZ2FjeS10cnVuaworMjUyOTAgODhlMjE3ZTUwNTNmZTQ0N2RmZGQwNzhmNTBiMGU0YWY0N2RlMmYyOCBsZWdhY3ktdHJ1bmsKKzI1MjkxIDc3ODI0MTU4MWQ0YTM1NmM2MDM4M2VlZDZkYjYwNzYwM2RkMGYyOWMgU291cmNlRm9yZ2UKKzI1MjkzIDdmMzViYjkyZmJmNzUzNDgwMmI4OWQ3ZWU5Nzg3ODljNjAzNmJkZDAgU291cmNlRm9yZ2UKKzI1Mjk0IDdkNWIyYzY3OWYzYmNkMTNkNmY2OGEwN2ZlYWY3YzExMGQ3YjYwNTUgbGVnYWN5LXRydW5rCisyNTI5NSBhYjY4YWQ0M2Q1MTQzNWQ2MTAzYTU1NTRiNGUzMjg4NDA5YjBiMWY4IGxlZ2FjeS10cnVuaworMjUyOTYgYjM4NjI5YjkxNTQ1MTJiYWNkMzFkMTQzNGY1MWI3NjVlMTE5MDg2NyBsZWdhY3ktdHJ1bmsKKzI1Mjk3IDcxZmZjOWZiNTk4NmY1OTUzMWEwODU5Y2UwMDJiYzhlOTlmOTg2YTQgbGVnYWN5LXRydW5rCisyNTI5OCBlMjBkMTJiNWRhZDFjMGZjNjIzYWVmZTYwODUwZmQ0YjA4MDZjZjBmIGxlZ2FjeS10cnVuaworMjUyOTkgZDc0Mjc5OGNkNGI0YTQ2YjhjNDdhNzE5ZGNmODAxM2JhOWI2NjZkNyBsZWdhY3ktdHJ1bmsKKzI1MzAwIDgyOThlOWM1MzVkYTg0ZjE5MzVmYjUyZjI2M2VlMTVlMDYyZjhlZGIgbGVnYWN5LXRydW5rCisyNTMwMSA0YWIyOWIwNmE3NmNiYTBlMjJjNDhhMjNhMTUzMjVmYjY2MjRhNGUwIGxlZ2FjeS10cnVuaworMjUzMDIgNmJkZmM5ZjZmMDU5MDMyZDVlZmZjODA4YjRiMWFlNjEwMTRmMzYyMSBsZWdhY3ktdHJ1bmsKKzI1MzAzIDMyZDBlZjZmMTk1NTcwNjJjMmIwMzBhNjA4M2JkZjljMDAxZjIxMTcgbGVnYWN5LXRydW5rCisyNTMwNCBmNzQ1N2ZhYjc2ZjBkYmJjNzBiMjc5ZDE4NzRjYzNhMDkxMDA2NTA1IGxlZ2FjeS10cnVuaworMjUzMDUgOWQ0NGU3NTJkNjE3ZWM1NDA5YjRhZGZmOGY1ZjU5YmZkZDMyMTk3ZCBsZWdhY3ktdHJ1bmsKKzI1MzA2IDljODMyM2FiZjFkYmQyN2Q5Y2EwY2Q3ZDcyNTQ5OWU5YTU5NjkxNzYgbGVnYWN5LXRydW5rCisyNTMwNyBmMzkyMTM0MDVlMDVjNDhiNjM5ZjNjN2NhMmNiZTBlNjgyYmQ0M2MwIGxlZ2FjeS10cnVuaworMjUzMDggY2JmMWRiY2ExZjYzMGNjMzcwMmZjYmRlMGI3MWJkNjI4YTQ2Y2RkZCBsZWdhY3ktdHJ1bmsKKzI1MzA5IDc2NmM1OTM3YTYxZWM2NzdhOWQ4Mjc2NjEyMzlhZmZmMTAyZTYxMjkgbGVnYWN5LXRydW5rCisyNTMxMCA5MWE2ZGI2ZWZhMTQ5YTI1MTVjZWRhY2Q5ZTQ2ZWI1MzY1MTkwMWUzIHJlbGVhc2UyMi1tYWludAorMjUzMTEgZDI0NDExMDVhOWJmZjEwOGNlYzkwMzJkMjM1Y2RlMzBkODc3MTlhYyByZWxlYXNlMjEtbWFpbnQKKzI1MzEyIDE3Zjg0NjlmMDlkMjA3YWViMzUyMGI5NDYxN2YyNmEzM2NjM2RhMDMgbGVnYWN5LXRydW5rCisyNTMxMyA4MWMyYmRhNWQzNzc4ODg2NGQyMzhlZDFlYmI2ZWM4YzllNjcyZTM5IHJlbGVhc2UyMi1tYWludAorMjUzMTQgNDg2NDQ0NDUyMGQ5MmJjYTBkY2YwNzg2YzFlMjUwYjQ5NGFjYTMyYiBsZWdhY3ktdHJ1bmsKKzI1MzE1IDY3NmRiMDMwMGYwNjc3ODVmYmQ5Mjg0YjAxZTQ2N2EzNzE5YjhiMWIgcmVsZWFzZTIyLW1haW50CisyNTMxNiAwYzllYmNmMTdlYmZkNTkyOTZlMTY5YTRhOTk1MmE1YWVlYjg0MDdjIGxlZ2FjeS10cnVuaworMjUzMTcgOTdmNDllZGNiZGU3MjBhMDczNDhiNDUxYmY4Yzc2YTY4NjBkMzQxZSBsZWdhY3ktdHJ1bmsKKzI1MzE4IGI1NWYyZmY4YjI1ZjYxN2U0NGYzOTc5Yjk2NzFkMTE3YzgwNWMwYTUgcmVsZWFzZTIyLW1haW50CisyNTMxOSAyZTllMWIwMmI3ZDdiNjJiMjgyMmQ4MDc0NWNiYjE1M2IzYzc3ZWM1IHJlbGVhc2UyMS1tYWludAorMjUzMjAgOWZhNWQ0MGNjNzIyMmQ2ZjE3ZDU5MTk0ZjA4ZmIwNDMwMDNkN2IwYiBsZWdhY3ktdHJ1bmsKKzI1MzIxIDVlZDc4MmJkYmIyYWEwMDc5YTZkMWMzNTUwYjM4YzVhZDQ4OWQ3NTggbGVnYWN5LXRydW5rCisyNTMyMiAzOTU3ZDE1NWY4YzU1MDE5NGE4ZTVkMzhlYTYzOTM5ZjU2OGE0MDk0IGxlZ2FjeS10cnVuaworMjUzMjMgN2E5MTdhZDhmNDQyNGY1MmZkNDk2YjEwYWM5ZjdlZmQ1YzczMTUxYiBsZWdhY3ktdHJ1bmsKKzI1MzI0IGVhMjNlNmU0OTI5MDNkMTAzZTYzNjYzNWIzOTdjNTkwZGFmNTIxNDAgbGVnYWN5LXRydW5rCisyNTMyNSBkM2IxZjJjMGViY2ZjM2UzZjk5MDU1ZGM0NjQ4ZjBhYjY4NDM3ZjYzIGxlZ2FjeS10cnVuaworMjUzMjYgMmZhYTIzZmFjZWY3MmRmMjRlZjhiMzZhMmVhMzk4YWU1ZDE2MmI1YSByZWxlYXNlMjItbWFpbnQKKzI1MzI3IDk0YjkwY2RkNmUwZmU1ZTNmN2EyOTM5YmI1YTc0YTc4ODcwZGRhNzggbGVnYWN5LXRydW5rCisyNTMyOCBjNWQzZTQ1ODc0OWU3ODFlOGNkMzA2ZWQyNGZjYzRkN2NmYzE1ODZkIGxlZ2FjeS10cnVuaworMjUzMjkgOWM0MDI1MjNmOGY1YWI1N2Q0NTg4NzhhNGI0NWI3MjM0N2JjZjIwMSBsZWdhY3ktdHJ1bmsKKzI1MzMwIDRkNTU0NzAwYzRkMTcyMzI2OGE5ODY0M2Y4YjMyN2VlN2VhMDk0YjQgbGVnYWN5LXRydW5rCisyNTMzMSA2Mjc0MWIyNWVkNjUxNzg2NDg1MjU1OTNlZmZjNjc1NTE4OGMxMmVjIHJlbGVhc2UyMi1tYWludAorMjUzMzIgNzJjOTU0NDhlZTRiM2MwYjVjNGQ4MmY4ZWZjZGZmN2MzMTdhZGFmYyBsZWdhY3ktdHJ1bmsKKzI1MzMzIGIxYTg3MWRjNTE5NjJkNWI4MTM3ZjNmMjg2NGRmYzNmN2RjYmU1OWQgbGVnYWN5LXRydW5rCisyNTMzNCBmY2U3Mjc4ZDQ2YjBhODQ5MGU0NjliNWZjMzlkMDA2NzIyOGNmYzI1IGxlZ2FjeS10cnVuaworMjUzMzUgNGExMzM3OTA2NjA4ZmI3NmEzZTk0MDExNjgyZmIzNzlmN2Q4YjkyMSBsZWdhY3ktdHJ1bmsKKzI1MzM2IGVhOGRiNmY1ZDFjNTc5MjZjZTU3MTNkYzhkYjQ2NzE0ODhkMTcyMGYgbGVnYWN5LXRydW5rCisyNTMzNyAwNTJlZmMwNjUyMGEyMWRiZjY4YzFjODZjYmJlYWExMDc2NjMyOTk2IGxlZ2FjeS10cnVuaworMjUzMzggOGUwYzNiNzVlZmY1OGIxNWE5ODY2YmY4MGNjNGU5YjQ5OWViODEwZSBsZWdhY3ktdHJ1bmsKKzI1MzM5IGU5NjRlMGZjNGJmZTcxYmIzZDAzMjdlMDhhNjA1MGQxZTViY2FiODkgbGVnYWN5LXRydW5rCisyNTM0MCBhMGFkNjljMGJjMzY3ZjM0MTNkNTg3ZTRkODA5NTI5Nzk3MmJjZGQ3IGxlZ2FjeS10cnVuaworMjUzNDEgMTllM2Y4NjU5ZWVjZTJjNTBjM2YzNmM3YWJjNTI0NTVhMTQwZWJkYyByZWxlYXNlMjItbWFpbnQKKzI1MzQyIDg4YThmY2FkMDJkMGRjY2JjNGZmNzk3YTY3OGYyNGM2ZmMzYTA3ZTggbGVnYWN5LXRydW5rCisyNTM0MyBjODBmNTYwMTBiMjg1YzgzYmVlZGUzMWY2OTg0YjYxYTM4MzMxMmJiIGxlZ2FjeS10cnVuaworMjUzNDQgNGU5Y2MyNmUwM2ZkZTkwMzhjOWZiMWE2MTkxYWYyZDI2ZDFmNDM3MCByZWxlYXNlMjItbWFpbnQKKzI1MzQ1IGUwOGFiMzQ3ZDEyZThiM2ZhZmUyYWFlM2E0OWI4MDBjYjMzNTNhNDAgbGVnYWN5LXRydW5rCisyNTM0NiA0YzMzODdiYTExOWQwMTg3YjIyYTE1OGU0YjQyMWZkMTk4MzAyMDQ2IHJlbGVhc2UyMi1tYWludAorMjUzNDcgMThiNWM3ZjY0YzgwNWMxNWU0ZjZjZGEzY2E1MWI2MDQ1MTgyYjQyZiByZWxlYXNlMjItbWFpbnQKKzI1MzQ4IDliNDVhNTg3NGMwOTkxOWFjMGM0YWU2YzYwNThmYWVmYWE0MjM3ZDIgbGVnYWN5LXRydW5rCisyNTM0OSAzNWQ5ZjU2OTM2MWFmZTZjYTNkMDk2NTQxOTBhYTBjMWQxYmU2Y2FlIHJlbGVhc2UyMi1tYWludAorMjUzNTAgMGY2MzExMWJmNGM1ZDc3NWY5MjY2OTdkM2RhODg0M2FjNmRhYjgxMCBsZWdhY3ktdHJ1bmsKKzI1MzUxIGY5MmU4NjhlYjQ0MGI3NjA5OTQ4YTU1NzYyZGNiYzlhZWY2YzljZTcgbGVnYWN5LXRydW5rCisyNTM1MiBjODQzYmU1ZDU4YTlkYzhjN2RjMmJmNTRhNWE3NmM5OTM5MTM5MTk1IGxlZ2FjeS10cnVuaworMjUzNTMgMDlhYjljZTFmNTJhNjAyNGVlYjUyZTcxNTJlY2MzODBmODJhN2Q1YSByZWxlYXNlMjItbWFpbnQKKzI1MzU0IDA4YzViMGM3ZDlkODE4ZTdjYWVjOWM3NTEzN2Y3MTI5YjViY2FkODUgcmVsZWFzZTIyLW1haW50CisyNTM1NSBhN2ZiZGU2ZTM0YTUwZjQ1OGZkYmVlMWMzNGE2YWVhYjYzYTQ5NjljIHJlbGVhc2UyMi1tYWludAorMjUzNTYgNGU5OTYzMTRmOGZiNDQxMzlkMzgxYjg2MjZkM2ExZTc1NDc2MDkxMiByZWxlYXNlMjItbWFpbnQKKzI1MzU3IDFhYTBjZTYwZjZhODUyNzBjMTUyNDY4YjIxOWQ2MWM4OGI2NWU4ZTkgcmVsZWFzZTIyLW1haW50CisyNTM1OCAyNzE0NzM5ZDQ4M2I2MjdkNzEyODkwYzliZGFhZjYxMTRhNGI0NWE3IHJlbGVhc2UyMi1tYWludAorMjUzNTkgMGIxNWNmMTE0MzFlNGQxNzZlMGZmYzFhODY3NTQ3YjhkNDk5OWNkMSByZWxlYXNlMjItbWFpbnQKKzI1MzYwIGNiNWI0YTU0ZmYxMmE0Y2Q4MzAxZjYyNDZhYjM4OTk4M2UyYTM2NzAgcmVsZWFzZTIyLW1haW50CisyNTM2MSBkZWZkMmIxYTg0MjY4OGJmMTYzOTA5NjNlMWNiNzE1YjU0ZWEwZGE0IHJlbGVhc2UyMi1tYWludAorMjUzNjIgN2FlZTBmOGFmYWM1MDhjZTZmYzE4ZTBkNzFmMzRhNWY5NzExOWU4MSByZWxlYXNlMjItbWFpbnQKKzI1MzYzIGJjNWJmNzJmYjVkNDVkNGMwZDZhZWY2YTM1MjRmYjBkZTZjN2U0ODYgcmVsZWFzZTIyLW1haW50CisyNTM2NCA5NjU4NzQyNzllZTJkMjY2NTk2MTA1ZTNlNmZkNTNkZjIxYzBkOTM0IGxlZ2FjeS10cnVuaworMjUzNjUgNWU5NWYzZWU3N2VjMTQzYzdlMjNmMGU2NjVjNTcxNmYzYTQ4YjYxYiByZWxlYXNlMjItbWFpbnQKKzI1MzY2IGE2YTViMWZjYzJhN2U4ZjU0ZWEwMGNiMjJjNDJlNmU4MmQ3OGQxYjYgcmVsZWFzZTIxLW1haW50CisyNTM2NyA1MTI2NmIyYjQzNjBkNGU2ZDA5OTY5OTM1MGQ4YjllYjUxNTZmMWIzIGxlZ2FjeS10cnVuaworMjUzNjggNTJhYTNlM2U1NzdmMTIwYzU5MmM4ZmVjMGE3NzM3OWIyMGUxYjU0MCByZWxlYXNlMjItbWFpbnQKKzI1MzY5IDRjZGFmZmM5ZTE4Y2MwZjBiZTUzODIwM2U0NjU4NjY4YWJmY2M4MjEgbGVnYWN5LXRydW5rCisyNTM3MCA4YTc5MTMzMGZjMjAzYjZjMjUwNzQ1MzU3NzUyMWU5OTY0MjBiY2I0IHJlbGVhc2UyMi1tYWludAorMjUzNzEgZDI0YWFkZmUzYzA2YTlhOGJjMTczN2QwOWY0MzNlYzExZGIxZGFiOCByZWxlYXNlMjItbWFpbnQKKzI1MzcyIDhjZTE3ZGE5OGU4Y2JhZmNiOThlMGIxODIxODc0OTA0NWFmZjAyOWIgbGVnYWN5LXRydW5rCisyNTM3MyA4MmZiMGY5OWUyZGFkMzE4ZGU0MDNhNGRkOThiYmM1YzAyOWUxZjc2IGxlZ2FjeS10cnVuaworMjUzNzQgOTYzNjc1ZmU5N2U3ODkxZTIzOGZiZmQ5Yjc3MmFiZDg4YTgxMjY5MCBsZWdhY3ktdHJ1bmsKKzI1Mzc1IGU3OTk0OTg4MzZiOTRlYzlmZDQ1ZmIwYzYxZDU0N2ExYjFhOGQ2MDYgbGVnYWN5LXRydW5rCisyNTM3NiA5ODg1ZGEzZmVlZWNkMWIxMzBhYzNlNDBlOWMwODY4NjhiZjgxMzM2IGxlZ2FjeS10cnVuaworMjUzNzcgZTNmYjhkMTZhNTFhY2E1N2QzZjlhZjJhOGZkMzg4YzA0YTA0OGEwMCBsZWdhY3ktdHJ1bmsKKzI1Mzc4IDRlYjgxODY5ZjYxOTdiNWIyNWFlZGQwMzcyZDlkZGNmODk3NTk2ZDEgbGVnYWN5LXRydW5rCisyNTM3OSA0ODFlOWE0NmQ2ODAxMWIzMjM3OGJlZmYwYTZmYjliYWYzNjc1NWVmIGxlZ2FjeS10cnVuaworMjUzODAgODBhMDRjYmNkMGM4MDExYTYwMmVjMTA2NjYxM2U0NjkxNzQ0ZmY5MyByZWxlYXNlMjItbWFpbnQKKzI1MzgxIDQ0ZWRiZTBmMjE3NDhlOGUyZTNjZDUwMDEyYmFhODc1MGRkNTE4N2EgcmVsZWFzZTIyLW1haW50CisyNTM4MiAzMmQyNGY4ZDY0ZjdiMzZkYTc0NDI5MTY0NDZiYzYwMTFlMTQ3NWI1IHJlbGVhc2UyMi1tYWludAorMjUzODMgOWY1ZTM1Nzg2NzUyNTI3YmRiZTk2NjBhZGFiZDNlYjllYjE0NzcxMiByZWxlYXNlMjItbWFpbnQKKzI1Mzg0IDcxZjI1Zjk1ZTkwMjU5ZDUyMTA2ZDc0ZTVkMmNiZDVlNjQ4ZTZjMjEgcmVsZWFzZTIyLW1haW50CisyNTM4NSBiODY5MTYwMWQyYTAyODgyOTdhNTZkMTk5ZTE5ZjAwNjQ0ZjVmZDJjIHJlbGVhc2UyMi1tYWludAorMjUzODYgZTA2ODQ0MGUxMTZmOTM5NmU4NWZlZjE0MjgxMmZhYTcxNjNmNDZiMiByZWxlYXNlMjItbWFpbnQKKzI1Mzg3IDk1ZGMzMDI0OTI3Yzk4OGViZjE2MmRhNjU3NWRiMWRkOGE1NDA4OTcgcmVsZWFzZTIyLW1haW50CisyNTM4OCAwMmE3YzY0ZTMzMzFmOTk3ZGM1MDMyMDc4N2IyNDc2ODFiMzA2N2E0IHJlbGVhc2UyMi1tYWludAorMjUzODkgZmJlODIwZTBjNjAxZDY2NTc5ZjFiMDEzMGNiNjZkZmFmODAxOTY3OSByZWxlYXNlMjItbWFpbnQKKzI1MzkwIDdmYmVmZTNlM2RlZTJkNzIyYTVkY2RjNWY1ZWUzMmJhYWEzMmMwYWYgcmVsZWFzZTIyLW1haW50CisyNTM5MSA1NTZmYjdmMWI2MDY3NDNlMTg2NTRkZTNiZjU0OWYxY2Q3YjZjOTA4IHJlbGVhc2UyMi1tYWludAorMjUzOTIgYTViMjVhODE2YTZkNjhjMmU5M2NjODY0ZGMyNTlmYTg2NzVjODZkZSByZWxlYXNlMjItbWFpbnQKKzI1MzkzIDk5MzQxZTg1MDE3ZWE0NmJkZTgwY2RkY2QzNDU2NTZmOTg3OWNiNDMgcmVsZWFzZTIyLW1haW50CisyNTM5NCA3NjEwNzUyODBhOTVlNjBiZTFhNTZkZjU0NjI1NzhhZTdjMzkyOTM5IHJlbGVhc2UyMi1tYWludAorMjUzOTUgYjEyZTk3MTQzNjY4ZDg3ZDhiNmRiM2E1ODJkNDA1NTdkOWRiY2ViYiByZWxlYXNlMjItbWFpbnQKKzI1Mzk2IGZkYWFmYWE4OTU4N2Q3OTkwYzRlY2VlYWEwZDA4ODNhNzNhMjU2YTkgcmVsZWFzZTIyLW1haW50CisyNTM5NyBhZTQ4ZDU0MWY2NWFjMzlhYTY1ZWJhOGQxMmY0NmE1MGJiMWQ4MmZhIHJlbGVhc2UyMi1tYWludAorMjUzOTggMjI5M2UwZDdiNWM0NTA2ZmUxMzU4M2U3NmRmOWYwNWFlYjBmMWNlNiByZWxlYXNlMjItbWFpbnQKKzI1Mzk5IDIyOWI2MjRjNmI1NGM5MTYwYjM5MjM0M2JiYTY0YTU2NWUzMjc0NmMgcmVsZWFzZTIyLW1haW50CisyNTQwMCA3MjIzYzU0YjA3Mjc2ZDk4MGRkZTg5MzNhNWRiMDI5OTAyM2E1YmFiIHJlbGVhc2UyMi1tYWludAorMjU0MDEgZTZkNDRjZjI5ZGJmOTc2YTUxZTRmNWFjZGNiYWJmMDQ4NTZlZjAwMyByZWxlYXNlMjItbWFpbnQKKzI1NDAyIDEzMzljYmU5NGNlZTU1NDVhMzJiYjJmZWU0MWM0ZDM1OThkYTc4N2QgcmVsZWFzZTIyLW1haW50CisyNTQwMyA4NzVmYjViNzI5MTBjMzUxZjhhMjQzZDAzMDNiYzFmYWRiZTU2Nzg5IHJlbGVhc2UyMi1tYWludAorMjU0MDQgZTBhMjg4ZGIwMjJkZTFiMTFjY2JmY2E2NGFiZjU1OTYyZjE4OWU4NiBsZWdhY3ktdHJ1bmsKKzI1NDA1IGYzODYzMzAzYTlmNGZhNTVmMGJlYWM3NzkwYWRmNzBjYmI2ZmU3ZmUgcmVsZWFzZTIyLW1haW50CisyNTQwNiA0N2FhMTA4MWFmMjgwOTgwMDdlMWRmZjg4NTlmYTY0YWI0ZDUzMDUzIGxlZ2FjeS10cnVuaworMjU0MDcgMTQ5OGM2ZTRiNDNhMWY2ZGI5MTBlYmZlZmNkNGJlMzllMDdhZGQ4ZiByZWxlYXNlMjItbWFpbnQKKzI1NDA4IGNhMmNiYTEwYjQ0ODdhYWYwZmZmMjk1ZWYwZTU2Y2YwMDgzZGNiNTcgbGVnYWN5LXRydW5rCisyNTQwOSAyNzYyZDIyNTFlODVkYzY0YTc2MjEwYTExYTVmMGU0ZDNjZWYxNWQ5IGxlZ2FjeS10cnVuaworMjU0MTAgZWZhMjNkMjZmYTM1ZDQ2ZTRmZWNjNDc0NGY1MTFiODFkMTdmOGVhMyByZWxlYXNlMjEtbWFpbnQKKzI1NDExIDZiZTY1OTIzYzAyZDZkYzQ2NTUxZjk5Yjc4NzA0ZGM5ZmE3YmY3MWIgcmVsZWFzZTIyLW1haW50CisyNTQxMiA5YjFjYzk5ZjU5MzJhODQ5NzhjMjM4ZTM1NDQ5YWNhNmIzMmU2MjMxIGxlZ2FjeS10cnVuaworMjU0MTMgZWNmZjQwNDYxOTdkYTE4MDhiN2EyMWQ4MGEzMzIxY2VlNzBhOGZmMyBsZWdhY3ktdHJ1bmsKKzI1NDE0IGUzMWFkNGRkMzBkOTk4ODMzMzhkYjc1MzM3NzliMGNjNGI3ODVlYWMgbGVnYWN5LXRydW5rCisyNTQxNSAwOGQ1Y2Y1OTZiMDEwNzFjMGRjNjNjNDA3NGVjNjEwMzcxMjcxZDY5IGxlZ2FjeS10cnVuaworMjU0MTYgNDkxOTdmZDc2MzYyYjJmNzRmZWViYjM1Y2JiMjE4MGZhZWE0Y2U1MSBsZWdhY3ktdHJ1bmsKKzI1NDE3IDVjYmNmZGUzYWQ1NTA3NjdkZjg4YTE5NTE0NTQ2N2EzZWQ2ZTNkZTcgbGVnYWN5LXRydW5rCisyNTQxOCA4NmQwZjdmODY1NTA1ODdhMTkxNDU3ZmY4NWQ0NWE3NmQ5MGQyZDk4IHJlbGVhc2UyMi1tYWludAorMjU0MTkgOWYxZWI4ZmYxNzk1NmFkOGUyODE3NjU1MjRmZGRlYTU5ZjJkZWM0NCBsZWdhY3ktdHJ1bmsKKzI1NDIwIDQzODU0MzExNjRkYTU5ZmM2NWM3Njk2YjdjOTI5YjllY2E5MWY1NzUgbGVnYWN5LXRydW5rCisyNTQyMSBjYThhMjg0OWRkNTZlYzEzN2M1ZWY2ZjFiNTE1ZTM4NDA1ZjBlZWRjIHJlbGVhc2UyMi1tYWludAorMjU0MjIgNDZiY2VlMTFiNDgwNTBkMTE1OTVmMmQwM2FhMzQ1YzM1MzdkZTY0MyBsZWdhY3ktdHJ1bmsKKzI1NDIzIDUxZWUzYmRkYjcyY2U2ZTQxMzRjNzEyZGI0M2ExYmVjNjMwODhhOWMgcmVsZWFzZTIyLW1haW50CisyNTQyNCA1Y2I2Y2M0NmNkNDJjZTRkNjQ4NTgwZTVmYTdjZDYyMzNjNTU1MzU4IHJlbGVhc2UyMi1tYWludAorMjU0MjUgMTA4N2NhNTE5ZWI5YWU3ZjI1ZTM2M2YzYTg4M2NhYTliYWFhNjE0NyByZWxlYXNlMjItbWFpbnQKKzI1NDI2IGE1MGJhYTEyNmM3NWU2ZThkNmNmOGRkNTRiZDA1MzJmMDg2YWM4YzggcmVsZWFzZTIyLW1haW50CisyNTQyNyBiODM3NGRlODRlMmFlNzM1MTUxY2JhNDYxYzM1NzI3ZDA0NjkzZmEzIHJlbGVhc2UyMi1tYWludAorMjU0MjggOTcyMjRhOWNjODNjNjUxMmE3MGRmYjZhOTg3Y2U3Nzc2YWFmZWVjMiByZWxlYXNlMjItbWFpbnQKKzI1NDI5IGY1NzZkOTAwMDI2ZjM2Yjk1OTkzZjY0OTVlZjU4MDQ4OTM5N2Y1NWEgcmVsZWFzZTIyLW1haW50CisyNTQzMCA1YzE0OGY1ZTFjMTE0MjAwMjU5YmJjNzg0ZTViNDcwZTMwMTY5N2EzIHJlbGVhc2UyMi1tYWludAorMjU0MzEgM2MzYWNhYzg2NzM0NTQ5ZmEyNTAzMzI4YTllM2MyZWMyMWQwZmZkYSByZWxlYXNlMjItbWFpbnQKKzI1NDMyIDUwMzJlYzg5MWU3NDU2M2U4ZDJiMTM2MzdiZjMzZDgyNmVkYzFmZjIgcmVsZWFzZTIyLW1haW50CisyNTQzMyA0YmJhY2FlZGM2ZTJkNzQxNWJiMDI1YzQ2YTVjMGU4NWVmYTc0MTNjIHJlbGVhc2UyMi1tYWludAorMjU0MzQgYzJmOTBjZTU5NzU1Mzk4MzEzN2FiMDc3Mjg3YmY1ZmM2NDBlMWQ3NiByZWxlYXNlMjItbWFpbnQKKzI1NDM1IDUyMTA2MjkwZDM5MmM5NGFlNGVkNGI0MmU1YTVjODk4OWJjZGQ2MzAgcmVsZWFzZTIyLW1haW50CisyNTQzNiBlY2U0MzE1YzEyMDZmN2Q0MmI0NDFiOTgyNzM1ZWRkYzNhOGY4ZjQ4IHJlbGVhc2UyMi1tYWludAorMjU0MzcgNjU5MjZhOTcwYTE3MWM4MWUzMmQwMzgzNjA2ZGRlYWMyZDQwYjZkYyByZWxlYXNlMjItbWFpbnQKKzI1NDM4IDVkMWIyMjAzYjZlY2Y3Y2QyNTZiM2Y3ODYzZjkzMDc4NjIzMjUzMmQgcmVsZWFzZTIyLW1haW50CisyNTQzOSBiMzgzYzNmZjNiMWVjYmUyNmYxNjM0Y2EzMzhmZTYyOTBjN2JjNTYyIHJlbGVhc2UyMi1tYWludAorMjU0NDAgMjg1MmI0Y2I3ZjZhYmYwODY0NWQ1NTcwMGFiMjk5Yzg0YTkxYzVlZiByZWxlYXNlMjItbWFpbnQKKzI1NDQxIGI3MDIxMWMxZDI1Njc5ZTRlNGEzY2NjMTE2YTU4MDczOTZjNjdhZmIgcmVsZWFzZTIyLW1haW50CisyNTQ0MiBiNWI3NzM1MGEwMDQ0MDNkNzA0ZTdlMDc0MDEyODQwNmFhNzQ0NWU4IGxlZ2FjeS10cnVuaworMjU0NDMgOGQ1ZGMxYTdlZTE4N2JjYTEwMmUwMGU1NzM4ZjY0NTkxZTY2NWI2OCBsZWdhY3ktdHJ1bmsKKzI1NDQ0IDYwNzJmYTQxMGRjYzk0YTRjM2M5YzAzY2U5ZWIzYjFhOGU2NGJlOTMgcmVsZWFzZTIyLW1haW50CisyNTQ0NSA1NWM0ZDA4M2MzMDlhMGVhNzcyYTcwYzUxMDk0OTg4OGI0ODgxNjAwIGxlZ2FjeS10cnVuaworMjU0NDYgZGZlYWMwMzM0NTc0Zjc5ZTA2YjkzNGMzZjA5NThkNDVkMGViMDE0OSByZWxlYXNlMjItbWFpbnQKKzI1NDQ3IGFkM2Q1OTYxMjM0NWEyNDEyOGI4NmM4OTlhMmQzYTlmY2YwOGIwMWUgcmVsZWFzZTIyLW1haW50CisyNTQ0OCA2OGE2YTlkZDQyZjgwMTFjZmZjNTFiNjVmN2UyZDMwOTJkMGEyNjI5IHJlbGVhc2UyMi1tYWludAorMjU0NDkgYTlhZjg5ODY4Njg5YTA1OGZmMGZiYzNlZWIyOWYzNTZhMmE4YjhkOSByZWxlYXNlMjItbWFpbnQKKzI1NDUwIDViMjRhNmFlMmRjNGYwZDhkZmVlYjJhYTg0N2NlM2ZlNGRlNzMxOWMgbGVnYWN5LXRydW5rCisyNTQ1MSA3MzZmYjVhZWM5YjNiN2MxZTU3NzZmZGE4Mjg4YTAzOTlmNmNlZDUyIGxlZ2FjeS10cnVuaworMjU0NTIgNDAwOWMwODQwMmIxNDU2MDU1MjBlNjc0OGNkNDU0MmM4ZTJlMGQ5NiBsZWdhY3ktdHJ1bmsKKzI1NDUzIDkwZDNjZTNlYjE5Y2I1OWFjOTE2NjI3ZDBlOWI3NWNlNjIzYmIyZDMgbGVnYWN5LXRydW5rCisyNTQ1NCA3MDY1MTM1ZjkyMDJmMzhjZTg4ZGExYTRjZDc1YTI5MDUwYzM5NDdiIGxlZ2FjeS10cnVuaworMjU0NTUgN2EzZTAzYjU0MWZmYjEyNzgxMmFlZWM3MzQ4ZDBmMjQ1NjQwNDFlMyBsZWdhY3ktdHJ1bmsKKzI1NDU2IGNjOGI3ZjcxMTI3ZDg0ZDBmYTUzOGQ4YjgwMTczOWM0Y2Q2Y2M3MGQgcmVsZWFzZTIyLW1haW50CisyNTQ1NyA2NmM3NDVhN2FiYjFmZTgyMWVhYjU0YzUyNmFhNDUxM2U3ZmJiMTQ4IGxlZ2FjeS10cnVuaworMjU0NTggNTk1NWUwZTI5NzZkM2U5MTUxNDc2ZjdmNmIxYWJiN2QzODM4ZGM0MyBsZWdhY3ktdHJ1bmsKKzI1NDU5IDllNWZmNjc0NzQzN2Y5ZmU0Mzk2YTlhMTkyN2QwMjQzZTYzYWNmYTIgbGVnYWN5LXRydW5rCisyNTQ2MCAyZWZkNDNjYTAzM2Y2NDlkZTEzNTI1NzkxZDFlOGViODY5ZjdlOTNkIHJlbGVhc2UyMi1tYWludAorMjU0NjEgOTY2NzI1MDk1ODU0NmRmMmNlZDk5YmQ5NzEyODhlOTNhMDBjNjViZCBsZWdhY3ktdHJ1bmsKKzI1NDYyIGQwYWNiM2NiMDExZGE1NWViNzU2MzExNzRkNGY3OWIwZTlmZTU2N2EgbGVnYWN5LXRydW5rCisyNTQ2MyA0MjNiYzliNTFhN2U0MTMzYzVkYjQ1NWQ5ZjdiYTQ4OGI0NjVhNWM0IGxlZ2FjeS10cnVuaworMjU0NjQgYzgxZThlYTBjNGJhN2M3MzY1Nzk2NDhiY2I5NDJkOGE4YzUyYmNiMyBsZWdhY3ktdHJ1bmsKKzI1NDY1IGZjZjBjMjQ0ZTI4N2U5MmQ2YzYwMDZhYmRjZGFiMGRmM2MwYWE0NTkgcmVsZWFzZTIyLW1haW50CisyNTQ2NiA2NDQyZmJlNWRkMDQyNDBhMTY1NzUwZWNjOTA1NTQ5ZDRlZWUwZDdkIGxlZ2FjeS10cnVuaworMjU0NjcgY2QwY2U0NzBjMTUzYzk0OGFhYWY4ZmM0YzUzOWQyOTFhYzc2NGQwOSBsZWdhY3ktdHJ1bmsKKzI1NDY4IGQzODQ1ODA1MjQ0MmZmMTUyY2RhNDlhYjk4N2QwNzcxZTQ0ZWI4NmYgbGVnYWN5LXRydW5rCisyNTQ2OSA5M2ViNGI2MWY2ODdiYmRiNDA2NDI0NGNjNWZkOTEyMDVhZDcwZjg1IGxlZ2FjeS10cnVuaworMjU0NzAgMTNhYzI3ZmEwNzA0ODM5NDEwZmQ1YmVkY2ViYjM0NDdjN2ViZDRmYSBsZWdhY3ktdHJ1bmsKKzI1NDcxIDM1NGNkZTdmOTBhMTUyN2FhZmI2OGY4MTk3MzI4ZmJiZTA2MTliN2IgbGVnYWN5LXRydW5rCisyNTQ3MiA1OGYyYzI5OWI2NTQ0MzM4YjA3NjcyZWJiOTg5NDI5MTY5ZDg4NDJhIGxlZ2FjeS10cnVuaworMjU0NzMgYWQ3OTY5ZThmNThkZmFjMzk1MTk4NjQyOTQ1YmJjZTY1YTBjZDYwZCBsZWdhY3ktdHJ1bmsKKzI1NDc0IGM0OTQwODRkYzZkODg5MDgzMWQzMmRlYzNmZmI4OTVlYjUwODFlNzggbGVnYWN5LXRydW5rCisyNTQ3NSA4YjEwNGE4NWI5OWM3YTI3Nzc3NGExZmU2MDkyYzkxMWE4MmE5MGFiIGxlZ2FjeS10cnVuaworMjU0NzYgNzlmMjkyZGJhYmNlYTI5NWRiNmE2MTBjOTQyYjUzMTE1OTFhZWYwMiBsZWdhY3ktdHJ1bmsKKzI1NDc3IGM0NTRiNzZkNTFlN2I5MDA3MTVjZmU0MjI5ZDBlYzU1YzQ4MjAyM2EgbGVnYWN5LXRydW5rCisyNTQ3OCBkMTA0YmI1MGExOTRkMzJhZWNkNTAxNTVlZWRjYjEzZGFjMDc2YmIzIGxlZ2FjeS10cnVuaworMjU0NzkgMGM0MjMwMjY5ZWQzZWZiOThjOTdlNGI2ODQwMmIwYjQzNTliNTdmNSBsZWdhY3ktdHJ1bmsKKzI1NDgwIDEwNDY5NjQ4OTZhMWE0ZTM5NjY0NjU4NTJkYWM0YjQ5ZmI5ZGY4NjcgbGVnYWN5LXRydW5rCisyNTQ4MSBjYmMwOGIxNzJkMWZkNjE3NWJlZDliNjQwNjM0OTUxMTYyMjRkNzMyIGxlZ2FjeS10cnVuaworMjU0ODIgMDg1OWU3NjQ1MDllNmE5NjI2MTQ0Mjc1NDI0YjNhMmQxMGM0ZWVlYyByZWxlYXNlMjItbWFpbnQKKzI1NDgzIGIyYTJjYzBjMmE2MzczMGI4NTMwY2MzNWQ5NzNhNmFiMGUwMDkxNjkgbGVnYWN5LXRydW5rCisyNTQ4NCBkNDQwNmZiZmNiNGU1NGU5YjQxNTM0ZTkwOTc4NDQ0NWM4MmYyMjA4IHJlbGVhc2UyMi1tYWludAorMjU0ODUgMDc0YjdlM2U1NDhkOGU3MzExMWU5YWQ5MmZlYThhMGNkZGMxNjBiNiBsZWdhY3ktdHJ1bmsKKzI1NDg2IDNhMDZlMTlkZjQ2YjkwM2IyOTdhZWUzODM0YWRmMTRlNjg0OGNhYmIgbGVnYWN5LXRydW5rCisyNTQ4NyBlZGYwNWM2OWJiZjNiYmJlNTAzNWZiZmM0NjgwYzA2OTBkMTg1YjVhIGxlZ2FjeS10cnVuaworMjU0ODggNzRmMTZmN2E2MzY5NjY5N2M2MTllNmRlMTJmMjAzYTBiZjk5MTdmOCBsZWdhY3ktdHJ1bmsKKzI1NDg5IDk4NmViMWQ0ZWJlZjUzYWY0NTY4MzZhMzBiOTk5ZGY1NjMxMTAzY2UgbGVnYWN5LXRydW5rCisyNTQ5MCA1OTk0NDQwZTVkZDUyYjg2YzUzN2RhMzBiMDcwYTViZmU0ZmU1OTJiIGxlZ2FjeS10cnVuaworMjU0OTEgMmJmZDEzN2E5NzZmNTk4M2U0ZTdjMTY5MWQyN2RjOTUzMDEzYTk3OCBsZWdhY3ktdHJ1bmsKKzI1NDkyIGUxM2FhNGM2NzJhOTQ5YmE4NzBjOGQ4Yzg2NTcyNjc5ZWRlMzdlNWIgbGVnYWN5LXRydW5rCisyNTQ5MyBlODFiMzA3NmE2YzMwZDljYTQyN2M2NWRiOTIxZGM5NjVhODJhYWYyIGxlZ2FjeS10cnVuaworMjU0OTQgY2NhOTg4ZjNmNjRmMjA0N2EzZjRmM2UxNDJjNmJhZDQzMjdjMThjNyBsZWdhY3ktdHJ1bmsKKzI1NDk1IDk5ZTYwODE3Y2U2ZWNlMjUzMTk2ZjE5NDIzNGFjM2QxOGY3ZjY1NWUgcmVsZWFzZTIyLW1haW50CisyNTQ5NiA1NDkzMjA1NGY2YTk0MWU1ZWJhOGM4YjI3NWJkODM4MDI5NmViZWNmIHJlbGVhc2UyMi1tYWludAorMjU0OTcgZTU5OWU3YjhhYmY3MDI1M2JkZTViZDRkZWI0ZTdlZmI2NDI1ZmExNSByZWxlYXNlMjItbWFpbnQKKzI1NDk4IDlmZGRlOGNjZGNhNjVlNDRiODY3M2YwYTIzMzE0ZWQyMTk4OWYxMTggcmVsZWFzZTIyLW1haW50CisyNTQ5OSA3ZTE4ODE0MGI2MTgxYzI3OTMwOWVhZTIzOTg1YTZjOWRkMDUzZGUxIHJlbGVhc2UyMi1tYWludAorMjU1MDAgMWE1MTEwYjRiZDcyYTJlMDZiOTYyMzYzMzlmNWJlMTA3MGU2MmVlNCByZWxlYXNlMjItbWFpbnQKKzI1NTAxIGVkMmExN2EzNzZkMGM2YmVlNmUzNGJjMWJiMGRiZTI4ODRjZjYyZGYgcmVsZWFzZTIyLW1haW50CisyNTUwMiAzNDc3MDMwMzI3YTYwZTMwZmFhZDI4YzhjYjZkMDIyMzdhZDM0ZjIxIHJlbGVhc2UyMi1tYWludAorMjU1MDMgMWU4YmU3NGEzNzRiYmFkZDYyMjY1NjRlMWJkNmY2YmU0YjVjOTdhMyByZWxlYXNlMjItbWFpbnQKKzI1NTA0IDRmZjlmOGE3NGM4MjdlZjNlYTJiMzEyNWRlOGU1YzliMGRmNWI5MGMgcmVsZWFzZTIyLW1haW50CisyNTUwNSBjMjVkNmQ3ODBiMWI0NzJkOGI1YTYzNTI3NWIzNmUzZWU5YWYwOTJkIHJlbGVhc2UyMi1tYWludAorMjU1MDYgZmQwZWUwYTA3MDQ3ZDE3ZWM3MThmMTQyNDg5OWVkZGI2MTQ0N2NjNSByZWxlYXNlMjItbWFpbnQKKzI1NTA3IDhlYjU5MWRkNzY4MjY4ZDBmYWI5MTZiYjljMzRjMDM0M2VmODBiY2QgcmVsZWFzZTIyLW1haW50CisyNTUwOCBiZWY0NGQxMDhlNTc2MTM4MGYyMGRiM2Q3M2IwOWZkYTcxMDc0YmI3IHJlbGVhc2UyMi1tYWludAorMjU1MDkgZGIwNDA5MzhkYzY2M2IzZDZlZWRkNjE1NWUxZWY3MmU1MGNiZDkyMyByZWxlYXNlMjItbWFpbnQKKzI1NTEwIDFkMWEwMWQ5NTZhMmVmMGU4NDlmMDhkNjhlNjVjMTY2MDk2YjA4NjYgcmVsZWFzZTIyLW1haW50CisyNTUxMSBlYTliZTJlNWQ5NTQ0NTQ0MWJmNzNmMDIyZDFjNTFkZmNhM2RlM2RkIGxlZ2FjeS10cnVuaworMjU1MTIgMWU2MGIxZTE4MTQ1ZGRlMjgyY2E5NGNiMTJiODkxOWJkMWYxMWJmOSByZWxlYXNlMjItbWFpbnQKKzI1NTEzIGU0ZDdlNTEyOWU0YzE2N2QwY2JmOWEyNmQ5ZjRkODEyY2Y5OGZlMTUgbGVnYWN5LXRydW5rCisyNTUxNCA0YjM0NTk1MWE1YzUxY2ZkZmQ1MzVhNzk2ZDQyMmMxYzdiMTYxZmExIGxlZ2FjeS10cnVuaworMjU1MTUgYTUzNzMwY2QyOWMxNDc0YTVkN2NjOGJlM2M4OTI5YjdmYTc4NmQ5MSByZWxlYXNlMjItbWFpbnQKKzI1NTE2IDUxMzEwMzI0OTQ2MmQ3YzViM2Y3YmEwYjBiOGZiNDI4ZGRmZDg5ZTYgbGVnYWN5LXRydW5rCisyNTUxNyBlODFhNGU5OWVjZmEzYzZiMTIxMzViMzlhYzVkZmJjZDUwMDVjODY3IGxlZ2FjeS10cnVuaworMjU1MTggMzQ1ZGVmMzdiMGQ3YTU4N2U3NTBhNDZiNmZlMDM4MmY5ZTY2M2ViMSBsZWdhY3ktdHJ1bmsKKzI1NTE5IGUzMDE2MmIxYjMwNDY4ZGJmYzYxOTRmNjc3MmYwNWZjYjNlODExNTQgcmVsZWFzZTIyLW1haW50CisyNTUyMCAyYjNmNDM4MDY3M2Y4MTYyZmYxMjhkMmNjYjg5MmIxYmZiMDBmMzk4IHJlbGVhc2UyMi1tYWludAorMjU1MjEgYjFkNTczYTJhNzc0NWIzNzkzZmRhZGU0Njg0M2ZjYTg3MzQ3YTRhMSByZWxlYXNlMjItbWFpbnQKKzI1NTIyIDcxOTAyZTFjZmJlZjMwYjE3NmI4YjZlODlmZDljZWE0OGRjYjQ1ZDEgbGVnYWN5LXRydW5rCisyNTUyMyBkNjk3ZDg4ZDI1YjQwY2FlYWNjNTBhNDFmNzk4ZGYxMGIzOGJkZGYzIGxlZ2FjeS10cnVuaworMjU1MjQgYWY1MmJmOGUyYjg5ZjQzNTVhMGFhZDI2MWU0MWE5NjY4NmJmZWU4ZCByZWxlYXNlMjItbWFpbnQKKzI1NTI1IDgxZGZhMmRiNGM2MWIzMGVjYjg4M2VmNWY4NGE4NzUxMTVhNDIxY2IgcmVsZWFzZTIyLW1haW50CisyNTUyNiA0Mjg2MjE2OTU0MWZiOWQ1MDMwYTU5YTA1NWYwMDgwNzFlNmEyMDIzIHJlbGVhc2UyMi1tYWludAorMjU1MjcgYWY2MTIyZGYyOGUwN2U0MmNhNTY5ODA4NWYyMmE1NTRmYThiMjZjNiByZWxlYXNlMjItbWFpbnQKKzI1NTI4IDIyYzY2NTg3YzQ1MmUyNDk5OGNjMjM5ZmMxZDdlZmY5Mzk1YTFkMDMgcmVsZWFzZTIyLW1haW50CisyNTUyOSA4Mzc5NTFlY2RjZTk1NzU0Yzk5OWU4NTVkMWRhOWY2ZmQ1ZWU0ZmViIHJlbGVhc2UyMi1tYWludAorMjU1MzAgODU3OWQzZDMwMWQ0OGQ0ODUwYWVkNjQ0NGQwNjMyZGUxYjRjZWE3NCBsZWdhY3ktdHJ1bmsKKzI1NTMxIDY4ODMxYWM1NDk1YmIwMTNmZDAzZjg5MDQyMGY0ZTgyZDRkMDAzZjkgcmVsZWFzZTIyLW1haW50CisyNTUzMiA0ZDViZWNjNjkwMmJjY2YzZjZjYmY0Yzc4MzY5MDAwNDBiYTlhM2VlIGxlZ2FjeS10cnVuaworMjU1MzMgMzJhMWI0ODRhMmYzYTUyYThjNGU4ZTA5ZjNmNzdhM2FjYTZhYzVlYSBsZWdhY3ktdHJ1bmsKKzI1NTM0IDEwM2M0YzRjY2NmYjdiNzk0YmUzNTM3ZjBlOWNjNWFlMmQwMjE3MzIgcmVsZWFzZTIyLW1haW50CisyNTUzNSBjYThiZDk5N2U0MTlkNDE4OTY5Yzg2YjkxMWZiYzYzMmMzYzA4NGQ1IHJlbGVhc2UyMS1tYWludAorMjU1MzYgYzVjOWUzNmMzOTA5OWY5MzkzNzFlODQ5ZDc4ZDFkMjk1ZTgyYTIyZSBsZWdhY3ktdHJ1bmsKKzI1NTM3IDBlM2U2OWUwMWVjZDY0N2Q5YmYzNTdiMDVjYjJiODlmMTY2NWM3NGQgbGVnYWN5LXRydW5rCisyNTUzOCBjZGEzMDZiMjMyMWY2ZDYyYjU1YjY0MzRhZTExYmQ5Y2U5MjI2ZjY1IGxlZ2FjeS10cnVuaworMjU1MzkgZTIxOTZiYTM0MzMwZmNmZDlhNjg2NTI3YTI4YzcyZGVmMTEyOGRiNSBsZWdhY3ktdHJ1bmsKKzI1NTQwIGVlMzNiYmFmMzM4MTkzNGY2YjdmYWI3ODEyYWRjNjdhOTU4ZDkzZGIgbGVnYWN5LXRydW5rCisyNTU0MSA2ZmE1NmM0M2ExYmFlNDhjOGEwMTljOTVhOGYwMThmYTc4MDE1NmM1IGxlZ2FjeS10cnVuaworMjU1NDIgZGFmMDRkYjFhNjk5OGQ3OTJjMDQ1ZDZiZTljMGY5YWE3N2FiMjY2ZiByZWxlYXNlMjItbWFpbnQKKzI1NTQzIDI2NjMzNGE1YzRjYTI2YzY1ZTYzMjNmOTZkY2RhMjZlMjE0MzNiYWUgcmVsZWFzZTIyLW1haW50CisyNTU0NCBkMmE3NmY3ZGQ2NTEwNjZkNjc3YmQ0ZTUwMDNjNTIyZmQxZTA4MzdiIHJlbGVhc2UyMi1tYWludAorMjU1NDUgZjhhOWRiNjdmYTViNDVlOWRlYmJiMTUzYjcwMjczMzYxMzY3M2U4NyByZWxlYXNlMjItbWFpbnQKKzI1NTQ2IDUzNGU3OTA1OWJlMTAwODc2ODRkZjkwNjYwMWVlODI1OGI2NDY5ZjIgbGVnYWN5LXRydW5rCisyNTU0NyA4MWE4ZGIxNWZiOTg4YmVhNDA5MzRkZWQ0ZmFlMjEzZjkzMTc5NGVkIHJlbGVhc2UyMi1tYWludAorMjU1NDggYWMxMTMxZjczZDFmZDcwOWRiNzY4ODNhZjkzNDM2YmE4ZTE1ZjRmOSBsZWdhY3ktdHJ1bmsKKzI1NTQ5IGM2Mjg5ZWM4ZGEwYTc5Y2MxOGRlZGVjZDlkODdlYjZjZGU3OGY4NTYgbGVnYWN5LXRydW5rCisyNTU1MCAyYzVmODAzNzEyNjFlZGZhOWRmZjNhMjRlYmFjZGQ5MzMwMTIwZGZhIGxlZ2FjeS10cnVuaworMjU1NTEgYzZhNjYwZjg5ZmZlODU2OGVmZDlkMGIyMThkZjU4MDA0ODQxZjg4NyBsZWdhY3ktdHJ1bmsKKzI1NTUyIDFjYTJlYjY1MGUxMzc3YjU1ZjdjOWE3NDBmNDIwYTljNWE1MDIwZDYgbGVnYWN5LXRydW5rCisyNTU1MyA5NWU4NjQzMDk4MmJlN2Q5MjAwNjdmMjM5ZDBjMjFjZTBmNTc5ODcxIGxlZ2FjeS10cnVuaworMjU1NTQgY2I0ZWRkMTA4NzdkOTE3YzhlZGY3YWYzNDdkZDU0ZWM1Zjc1NGUxYyBsZWdhY3ktdHJ1bmsKKzI1NTU1IDA0NGY5ZTcxMzIwZjYyY2VjNjAyMmQzNWY5YzNiOTBlNmEwMzUyMGEgbGVnYWN5LXRydW5rCisyNTU1NiA5OGEzZmE1ZjY4N2NhYWVmYzE1OWZkMWU1NmE2MWJkOWQ5MDJlNGQxIGxlZ2FjeS10cnVuaworMjU1NTcgZmM2ZGMyZWEyNWNmNzdiOGMwNzAzZjY2MjFiODg2YTYwNDAxYjJkZSBsZWdhY3ktdHJ1bmsKKzI1NTU4IDI0YmE2OTNlOWM3MzllNjc2ZWYyMjQ1MDA4M2E5MWRiOTYwMWRhOGYgbGVnYWN5LXRydW5rCisyNTU1OSAwMWQ0NTgyNjk3NTAyZDY1MDFhYmJlNzYwOTQ1OGExZjE5ODAzODI3IGxlZ2FjeS10cnVuaworMjU1NjAgZDdmM2Y4M2I5NjU4OGMyYzBlNTBmZDViNzJhNGE5ZDhjNDg0OWYyMyBsZWdhY3ktdHJ1bmsKKzI1NTYxIDI2ZTNiNTYzZTI2MTMyZGFiOGIxNGZlNzQ5MWMxODZlY2UyMWMyMDggcmVsZWFzZTIyLW1haW50CisyNTU2MiA0ZWJhY2FlZTMwMDllMjY3ZGRmZGI1OWU3MGUwYjIxNTViZjY3ZTk5IHJlbGVhc2UyMS1tYWludAorMjU1NjMgZGFiMDVhYjAzNDdiOTNiNzE3ZTA2MDJiNmE5MjkxODUxYWFhMmNjYiBsZWdhY3ktdHJ1bmsKKzI1NTY0IGFkODFmOGZiNGVlNDc1MTQzOGE3NTEyZWQwY2Y4MzYwYmEzNThiMDIgbGVnYWN5LXRydW5rCisyNTU2NSA1ZjJjMGY2ZjBhZjczNDljNzUxZDBkODM1MjEwZGE2M2VkNmY4NjI3IGxlZ2FjeS10cnVuaworMjU1NjYgNDA5YWMwZjY4OThmNDFiMmQ3MjQ2YTcwNDhhMWE2Njc5OWJjNzMyMCBsZWdhY3ktdHJ1bmsKKzI1NTY3IDkyOGMxMjgyZTVlMmI1Y2ZjOGJmN2EzM2Q2Y2E0OGY3MTJiNDI1OTkgbGVnYWN5LXRydW5rCisyNTU2OCBmNDQ4NzM1MGM1Mzc4N2E4ZjRiYzQ5ZTI5MmFhZGEzYzNkMjQyMzEwIGxlZ2FjeS10cnVuaworMjU1NjkgYjg5OGMwZmViNzU0ZTQ4OWZjNDM1M2ZkOWZhMjllZmM2ZTcxNWVjNSBsZWdhY3ktdHJ1bmsKKzI1NTcwIGYwYWUzNzYyNTE4OTVjODBiYjE5Y2IwOWQ2MzNhZTY1OWY0NDFkZDIgbGVnYWN5LXRydW5rCisyNTU3MSA3ZmVmMzU2ZGFkNzVmOTFiYjdjMjQ2YjYzNWZmZWI2M2Y4Nzc0OTg3IGxlZ2FjeS10cnVuaworMjU1NzIgMGIwOGVlZmI2ZmMwNzdlZGRlNmQ3NTc4ZTJlZGVlNDUyN2Y3NTA5YyBsZWdhY3ktdHJ1bmsKKzI1NTczIDBkYzEwZDU1NzA2MjM4ZDQ3N2Y5Y2ExZmVhOGM2M2U2OWZhOWQ5OWEgbGVnYWN5LXRydW5rCisyNTU3NCAyMzkyNjljOTY1MTQ0M2RkMmRhYmIyNThiMDY4MDY1OTM0YWIxZDZjIHJlbGVhc2UyMi1tYWludAorMjU1NzUgMjM2MDZiNDlhZjc0MzA0NjQzYTkwN2FlMDZkNTBlNTU3ZTk4MzI5YiByZWxlYXNlMjItbWFpbnQKKzI1NTc2IDI2YmViZjIwODkxZTc1OWJiMjBhMDQxZGEzZmM0YzljY2NkYzcxYzUgbGVnYWN5LXRydW5rCisyNTU3NyBlMjRiYTA0ZDAxYjA4ZTcxY2ZlNjZmM2EyYTljODNhNjVhMzQ1OThmIGxlZ2FjeS10cnVuaworMjU1NzggOTA3ODMyZWU3MTczNzEzOTQzYzAzMmM4YzhiMjBjODc5NDk2MmNkNiBsZWdhY3ktdHJ1bmsKKzI1NTc5IDY0YzczMWQxODBlOTFlMWRkMjY3ODQxOTllMjZmZDA2YjdkODhjNGMgbGVnYWN5LXRydW5rCisyNTU4MCBkYTUxOGZjNzgwNjY3NDMyNjg0N2M2Zjk4ODU4MzQ2Y2JiOTc5M2M1IGxlZ2FjeS10cnVuaworMjU1ODEgNTQ0MGU0YjE3YWZmYjJlZTNhMmEyMzc4NGEyOGQwNGZmNmUzNjU2YiByZWxlYXNlMjItbWFpbnQKKzI1NTgyIDc4YmRmYmI2ZTU5ZTEzNWRlOWJhMTFiNzVhYTJhYzAyYjY0MDI4N2IgcmVsZWFzZTIyLW1haW50CisyNTU4MyA4MTI1NWI1YmUyMTlmYTM2MWYzOTdlNTViMGRjZTA0YzcwYWYzOTU5IHJlbGVhc2UyMi1tYWludAorMjU1ODQgZDZkMTJlMjFkNDRmNTI3MGI2ZDVhMjk5YWQyODhmOTdmZjllMDI3YiByZWxlYXNlMjItbWFpbnQKKzI1NTg1IGU2MWQyOTgyZmMxMzVkNDE1YzdlMzdkODRlYWIxNDM3NmRiYjcwZmUgcmVsZWFzZTIyLW1haW50CisyNTU4NiAwMWE1NWMzZDUwNWMwZDdhYWQ3OTViNzg4NWQ4YzE1MjBlMTMyNzA2IHJlbGVhc2UyMi1tYWludAorMjU1ODcgYTc2MmVkYjA0NjFhN2JlYzQ3MGEwY2NhYWE2Nzk0MDg2N2FhMTU1NSByZWxlYXNlMjItbWFpbnQKKzI1NTg4IDY3YTVlMjVkYzg4YmM3NGViMWM5MGYxMGZkZTAxYzhkOGQwMmRjMWEgcmVsZWFzZTIyLW1haW50CisyNTU4OSA3ZjRkMTVkODc4Y2NkNjA1MmMxMmNmMDgxMWVlNWE3Mjg2MTI1YTU0IHJlbGVhc2UyMi1tYWludAorMjU1OTAgMmY0OGFlNWM4YTk0NzBkMTlkMjRiY2JhYzAxY2I0NmY0YTgwNTE1ZiByZWxlYXNlMjItbWFpbnQKKzI1NTkxIDRiNmVkYTdkMGM4ZjU0Y2VjZDFhOGQ4MGRhMzk2MGQzNjI2Zjc0MjggcmVsZWFzZTIyLW1haW50CisyNTU5MiA5OTY4ZDhkZGRkNTNkZDYyOTZjY2MxZTcwMWM5NWQyNjM0Y2FlYTdhIHJlbGVhc2UyMi1tYWludAorMjU1OTMgZmM0MDU2YjljZjE4YzE3MTY4YTc2ZTA5NWRlMzYwMzhhYWQxMmY4OCByZWxlYXNlMjItbWFpbnQKKzI1NTk0IDQ1MmNjMGYzYWUzY2E4Zjc5ZjNhMTA1NzE4NzRmNzA2ZGNiMDlkNTEgcmVsZWFzZTIyLW1haW50CisyNTU5NSA2NDFmMjYzZjRmNDRiYjhlNDk0ZGVkYjA0MDg0OGQ0YTAyMjhmZWU5IHJlbGVhc2UyMi1tYWludAorMjU1OTYgMTgyZjAxNzNhOGVlZjViYzE1NTJhODg2NjA5NDdlNTc3ZDNmYjQ0NCBsZWdhY3ktdHJ1bmsKKzI1NTk3IDIyZmM4YjgyMmQ0MGQyYjA2MTFlMTM5MGU3ODQ4MjJlMGI5MGIwOTggbGVnYWN5LXRydW5rCisyNTU5OCAyOTg4NzlhOWY5ZjRiYjQ1YmYwMGZkNWI4N2I1M2FkZTI3YWNjYzgzIGxlZ2FjeS10cnVuaworMjU1OTkgNTBjNjY2NmZjNDU2NzAzOWE2ODA4ZjM4MDA0YzZmM2I3MDcyYTNlNCBsZWdhY3ktdHJ1bmsKKzI1NjAwIDQyN2UzMzFiNDFhMmUxY2U0Mjk0YzJkYzdmZWM3NzM4ODQyOTMyMWUgcmVsZWFzZTIyLW1haW50CisyNTYwMSBhZTU3OGM4YzZjZWQzODA3ODY1NGNlMWViMzMwZTMyZGRmYjc3ZjFlIGxlZ2FjeS10cnVuaworMjU2MDIgZTU0ZjVjNTBlZjA5YjlkYWVhZjE2ZWZkM2NmYjBjMGI4Yzk2YjZkYyBsZWdhY3ktdHJ1bmsKKzI1NjAzIDIzNmFlNTNkNjQ2NjIyNDYzMTE3YmU5NzUwNGU3ZDdhYzYwNDMxYjEgbGVnYWN5LXRydW5rCisyNTYwNCA3NTg0YjZmMWFmZGU0MjRkZDQwNTJlN2U2YTE2NWUwZmE3ZmNmMWNhIGxlZ2FjeS10cnVuaworMjU2MDUgMTYzZGU3MWYxOTQyOTM4YWMyYTVjZjkxYzkwMGQxNmViZTliNDQxYiBsZWdhY3ktdHJ1bmsKKzI1NjA2IDZhMjc5ZTE3MmQyMjNlNmZmMjlkZTFiMDMyNDg5MGU5ZmZjMjlhMTEgcmVsZWFzZTIyLW1haW50CisyNTYwNyA3MmZkYTY0YjJhMmU4Y2RiNGNjMzgwYzM3YWNmMjRhOGJhYzdjNzA2IGxlZ2FjeS10cnVuaworMjU2MDggZThlNDY1ZTZkNDVmOWYwOTMxYTEzMzY3YmExYWRjOGI0Njc5OWJlMyBsZWdhY3ktdHJ1bmsKKzI1NjA5IDI3YTBmYjAxOTU5OTEyNGJhMzYxOTU0NjU2Mzc0ZWMxNDkxOGQ0ZDAgbGVnYWN5LXRydW5rCisyNTYxMCBhYmNlZDU1ODFjMTg1MGE0YWMyMzExZjk5OGI3MjM1YjQ4YzRjODI0IGxlZ2FjeS10cnVuaworMjU2MTEgMWU3Y2M4ZTRiYWFiOTVhNGFiNjc2YzJkMDkwYjRiY2U0ZTY5MDg4ZiByZWxlYXNlMjItbWFpbnQKKzI1NjEyIDI3MmY5NjUzODVjNzEzYzc4YzMwZmE4ZmQyNWRmOWVhMTVjY2MxZjMgcmVsZWFzZTIxLW1haW50CisyNTYxMyBlZGFiYWQwMjVlZjFhNWI1ZTUxNzJhNTkzMDUxYTcwMGZmYTk5ZGI1IGxlZ2FjeS10cnVuaworMjU2MTQgOWYxMTkxMzJmZmJjNDYzZTk3OTBkYTVmOWI0ZmU0NDVjZjUyYmQzNSByZWxlYXNlMjEtbWFpbnQKKzI1NjE0IDcwZWRkMjkyYzc1N2FmNjhjYTIyNTkwY2VlOGM3ZDEzMTljOTllZTQgcmVsZWFzZTIyLW1haW50CisyNTYxNSAzN2I2OTgxNWFmMjJmZDU2ZjYzZGZmNGY4NGI1ODIzYWVjZjg5MzU2IGxlZ2FjeS10cnVuaworMjU2MTYgOTNkYjcyM2Q1ZTQ3ODkxMjBhMTgzMjI3NDFiM2ZjMTkxZTYwMjliZCBsZWdhY3ktdHJ1bmsKKzI1NjE3IDA5Mzk0MmJhZTFhNjM5YWYwMzgxMWE1NDhiNTBhNWE1MGM5MWI3NmIgcmVsZWFzZTIyLW1haW50CisyNTYxOCA1NGI2MzYxNjBhY2RmZTY0NmQ1MjJhY2FiZjJhMTBjOGZjYjUzZjhiIGxlZ2FjeS10cnVuaworMjU2MTkgYWEzYmY1MjVmNDgyY2I5OGQ1NzcyN2E0MGQ1MmUwNDMxMmExOTRjZCBsZWdhY3ktdHJ1bmsKKzI1NjIwIDIxNmNjZGEyODRkODU4NWU1YmZkYzI2ZTViNDYyMzE3Mzg1MzdiMzYgbGVnYWN5LXRydW5rCisyNTYyMSAwNzUwNWE0NTEwMTc2YmYzODA0YmQzMzFlODRjYTg3Yzk2OWYxOWMwIGxlZ2FjeS10cnVuaworMjU2MjIgZDMwNzk3ZTVjYzFhYjg1NTM1OTM4OTcxNDJlMTIwZDM3N2RkYzAzYyByZWxlYXNlMjItbWFpbnQKKzI1NjIzIDZjMzRjZDNhOThhOTNlMDI4ZmVlN2VkOWQyY2IyNWFkZDYzZDkyMzkgcmVsZWFzZTIxLW1haW50CisyNTYyNCBhZmYyMTQ1M2JlZmZmMWEzMzFhMjVmODYwNTgxODNjYjhhMDFmNzcxIGxlZ2FjeS10cnVuaworMjU2MjUgMTdlOGEzYzkzMTBjYzM5MDJmNGM3YTZlOGVkNTBiYTY2MmE5ZWI4YiBsZWdhY3ktdHJ1bmsKKzI1NjI2IDhlOTlkNTY4MTk4NDZlZjQwODVmNTM4NThjZjI0ZGQxZjg3NGQyNzUgcmVsZWFzZTIyLW1haW50CisyNTYyNyAxNTBhMmE5YzU1Yjg3Y2FlZjI0NzMxNjY4ZWFkZDVhN2E5NmUyN2FiIGxlZ2FjeS10cnVuaworMjU2MjggNjQ4NWQxYmE3MzVjYzVlYzVhNjgzMDAzNGY2ZTllOGYxODQ4YzYzZSByZWxlYXNlMjItbWFpbnQKKzI1NjI5IGY5YTVhOGZjMzE3Nzk2ZTAxYzYwYzhkMzNmM2ZiYjM2YWYzNjAzNTUgcmVsZWFzZTIxLW1haW50CisyNTYzMCAyYThiZjNkMGJkODY1ZWI3MGMxOWU1MmM4NmExMjk0YTZkMzZhNzE3IHJlbGVhc2UyMS1tYWludAorMjU2MzEgMTAwMDdhYTc4YTVlOTU0NjI4ZDk1NzJiM2UwMGY5ZmJhZTJkMzVlOSBsZWdhY3ktdHJ1bmsKKzI1NjMyIDY5YWQyYTFhZDY4OWUxNDYwZjAxOWU3ZTc0MDNkZTQ3NTU4MDcyNTEgcmVsZWFzZTIyLW1haW50CisyNTYzMyAwYmIxN2QzYjUxOTdkMTZiMDJkNmM4YzE5YzA1ODU5NjQyMWU0MGJlIHJlbGVhc2UyMi1tYWludAorMjU2MzQgMjgzODE2NTI5ZTcyNTBmZmVjNTQ0Mjc4OWEyYjY0MzY0NDcwZmU5NyByZWxlYXNlMjItbWFpbnQKKzI1NjM1IDc2M2Q1YWU4OWU5ZWQ4N2MwNGQwOWFmZDE4M2UyZmZiNjBiNTJjZWMgbGVnYWN5LXRydW5rCisyNTYzNiAxN2NhMjkwN2QxMzU5ZDEzMjJlODkzZTAzNzI1ZGI2ZWFlZmUwMjkxIGxlZ2FjeS10cnVuaworMjU2MzcgM2M2ODVjMDM3Nzk0ZmE4MmRkODE4NGYzMGFkY2NjODc3YzhmZDM4OSByZWxlYXNlMjItbWFpbnQKKzI1NjM4IGYyZGEyNThhYWMyMDk2ODU2NmJlNGE2NDhiNjc1NjU0Zjc0NjBmYWEgcmVsZWFzZTIyLW1haW50CisyNTYzOSA5ODkxOTU4ZmM0YjI5NmI3MTE0MmNmZGEzMjFkODZkYWZlMGUwYzE3IHJlbGVhc2UyMi1tYWludAorMjU2NDAgYWE0NGQzNzk5YjQ3YmJiMzUyYWM2YzEyZThjYzgxOTM5Y2UxYzVhNyByZWxlYXNlMjItbWFpbnQKKzI1NjQxIDZkNGUwNWQyNTc1OTZmNGU2MzU4ZTEwNmI5ZTAzYWJiNTJmMTQ0YjEgbGVnYWN5LXRydW5rCisyNTY0MiAyMmUwZGFkYTU2ZDdiODY0YmIzZWQ1MjQ4ZmE3YzVmNjA3YmE2OTE0IHJlbGVhc2UyMi1tYWludAorMjU2NDMgNmEzNDhhMzkwMGNkZjgzNjA1MDBiZjI1NTRmZTUzMjgyNDNjMWM2YiBsZWdhY3ktdHJ1bmsKKzI1NjQ0IGYwMzQ2ZDkzMDc3MDE2ZTJjNmExMzE3YjAyMmJlODYwN2VjYThiMzggbGVnYWN5LXRydW5rCisyNTY0NSA1YWRlN2U4MjA0ZTUyMDJmNjExNTE0NzVlZWExZDkzNGM0N2UzYmZlIGxlZ2FjeS10cnVuaworMjU2NDYgMTYwZTMzNWZiZTZmZGQyYjQxZGVkMTYzNjI5YzVmM2FlMzYwNjk3MyBsZWdhY3ktdHJ1bmsKKzI1NjQ3IDU2ZjRkZmNjYTlkODFmYzE1MmI1MjRkZjg5YTg3Njg1ZjlmZTE0NjMgbGVnYWN5LXRydW5rCisyNTY0OCBjYjZjODVkODM5MWY1ZWQ1MTcyNTI3YzRjODAyMGM5MmIyMDg1NTgxIHJlbGVhc2UyMi1tYWludAorMjU2NDkgZTRlNTRmYzVmYjNkMzk1Mjg4YWExZDA0ZDY2NmQwZmQ4ZmQyZmIzOCBsZWdhY3ktdHJ1bmsKKzI1NjUwIDkwNzhmMjk3NmJjY2EzYzA0NGU4OGRkYTVmNjYzYTE0ZTI0MzRlMjUgbGVnYWN5LXRydW5rCisyNTY1MSAxODczODMzYzYxNmRmNDMzYjE3ZGFjMWY5NzZiMzM5OWIyNzhlYjNiIGxlZ2FjeS10cnVuaworMjU2NTIgYTc5NTg5NzFkZTFjNzJkYzNjZWVhOGM0OTRmNjE4MzcxNjQ3ZWU5OSBsZWdhY3ktdHJ1bmsKKzI1NjUzIDEyNTc3YWU5NTk1NjIzMjY2Y2M5OWZlZTg4YzI4MjBkNDUwMDE4MjkgbGVnYWN5LXRydW5rCisyNTY1NCA0OWVkYmVlOWRhZTIyMjQ4YzVkMzFjODY0N2EzMjA5ZTI3NDY3ZmU0IGxlZ2FjeS10cnVuaworMjU2NTUgMjRhZjg0MjAzMGEwYjQ3ODc4NjNhNDk5ZmFjYjk4ZmQ1YjRjMDZlNiByZWxlYXNlMjItbWFpbnQKKzI1NjU2IGM2YzFhNWZiYjZjMWYzZWRlZWY5Zjc3Y2RmNjlhYTUzMGI0MmJkMWEgcmVsZWFzZTIyLW1haW50CisyNTY1NyAzYzc0YTFiMTI4N2FmYWNjZTJiODdhN2E4OTA2ODMxODgwZGYxYTc5IHJlbGVhc2UyMi1tYWludAorMjU2NTggOWEwOTFkNzIxMzZhYzA1ZjE1ZTg0NzYyYjY4MTk3Nzc3YWY3ZDcxOSByZWxlYXNlMjItbWFpbnQKKzI1NjU5IDU0M2IyYTQ4NDY3YjY0Y2RiZTM2NDY2OTI1MDIxODhhYzI5MmU3NDUgcmVsZWFzZTIyLW1haW50CisyNTY2MCA2MzNhOTZhNjUwMDkxNDhlY2U5M2VjOGFmODQzMzk3MmNmNWYwNmE3IHJlbGVhc2UyMi1tYWludAorMjU2NjEgNDFiNTE1M2Q3MDVlNWY3YzBhNjgxYmY1NTFlYjIzMGMzNjE4YzFiMSByZWxlYXNlMjItbWFpbnQKKzI1NjYyIDU0YmNjNWVjM2E1MTI1NTcyZDA5MDE1YmEzOTA1MzIyZGU0MWFjMzcgcmVsZWFzZTIyLW1haW50CisyNTY2MyBhMzQ2MGNiMjNmMTk0NTE1NDg3ZWQyODk0MjJjMjU5YmYwYjU5MTRjIHJlbGVhc2UyMi1tYWludAorMjU2NjQgYTBjYzUyNzM1ZTZlNDY4ZDk0ZmYyMGVmNjQ0NjE5NGNjMjc5M2FmNSBsZWdhY3ktdHJ1bmsKKzI1NjY1IGM0MDM2MzMzNTU4NTUxOTY2NjhhZjU3MzcwNmRiMmNmZmQ4YWI3YTggbGVnYWN5LXRydW5rCisyNTY2NiA5YzQzNWIxYjU5YTU2YzA0NGFmYzlmMDdjMDI0NjlhN2ViNDM2N2FkIGxlZ2FjeS10cnVuaworMjU2NjcgZWEzYjE4Nzc0NmY3ZDUzOWU3YzIyMzgzMTNiODYxNTg3ZTlmYTRiYiBsZWdhY3ktdHJ1bmsKKzI1NjY4IDA4OWFiNWJhOTQ2NmI0NmVkYTYwMzIzOTJlMjY2MWQ5YTRjZmVlZGQgbGVnYWN5LXRydW5rCisyNTY2OSA5OWUxZmVjMjZiNDA1YWJiNDRiNjIxMGRhM2RjYjA1MWMwYWVlNDkyIGxlZ2FjeS10cnVuaworMjU2NzAgYjU1ZDdiYzA1ZWM4ODY3NmIyZjEwOGY0ODk2NWUzMzYwNGIyNzIyMyByZWxlYXNlMjItbWFpbnQKKzI1NjcxIDEzNGNiNDE4Njk0NjZhYmNmNDJmODA4ZWI1YmExYWRjN2RmZTBmNGMgbGVnYWN5LXRydW5rCisyNTY3MiAwNDk3MzljYTBjMTM1ZDFhNTFjMWU1MTI5Mjg5YmE5OTVkZjQ5MjZiIHJlbGVhc2UyMi1tYWludAorMjU2NzMgMzVjOWJlNjkzODg4ZTAwYmRhZjg1MGFhMGZkOGIwZDk4NTYwOTdhZiBsZWdhY3ktdHJ1bmsKKzI1Njc0IDE5ZDFkMzUwMjBiZDQzN2QzYmRiNDYxMjQwY2VmMGQyMDZhNGQzOGEgbGVnYWN5LXRydW5rCisyNTY3NSAzZjZkZGVhYzQ4NTZiNTI4OGZlMDcwM2YyYzU0ZjFhMDk3ZDdkYmJiIHJlbGVhc2UyMi1tYWludAorMjU2NzYgYTQxNWNhM2U4OTAzODYwMTRiNzgwMTJlNWUyZTg0Yjg2Y2Y5ZTY3ZSByZWxlYXNlMjItbWFpbnQKKzI1Njc3IDA0MDhlY2Q4NGFhMmEyNjA0OWYyZTkxZGQ0ZjZiZTY2ZmU1YzMyNTMgbGVnYWN5LXRydW5rCisyNTY3OCBjYzc4OGIzYjIxYjYyMjRiMzZkNzY5OTViMzhlY2VkZGZkZmY3MjQ0IHJlbGVhc2UyMi1tYWludAorMjU2NzkgZGM4MGNlMTFmYWUzOTA5YTMxNDE3NTU4MGI0YjMyNGEwYjRhMzFmOCBsZWdhY3ktdHJ1bmsKKzI1NjgwIDVmNGZmYmZlNmJlNjgxYjVmOTYwYjZiMTlmNDM5MGZmMDNhYmE2YjkgbGVnYWN5LXRydW5rCisyNTY4MSBhYjc0ZmY4MGY5ZDBhYzUzYjIzMjJjZjVmYmU2Mzg5NjllNTQwZTZlIGxlZ2FjeS10cnVuaworMjU2ODIgZGM2MDU0ZTViNjQyY2QzYzNmMWY2MTdkN2Q0MzI5MGUyNGMyZDBmMCByZWxlYXNlMjItbWFpbnQKKzI1NjgzIDA5NmI3NTEyMGU3MmI0NGZlNGEzMmRlMjkzY2Y4Y2IyMDBlYTZiMjEgcmVsZWFzZTIyLW1haW50CisyNTY4NCA1YTc3OGFlMTg1MTIzODkxY2VlYWEwZDYxOWFjNGEyZmE1Zjg3Y2IzIGxlZ2FjeS10cnVuaworMjU2ODUgYWM5NzZkMzY3MDhkM2Q3ODFjMGY3YTYwNjY4YzcxNGVmNDgwNmJiYiByZWxlYXNlMjEtbWFpbnQKKzI1Njg2IDMxZDlkMTFhMjk0Y2E5N2Q1YmNmYjkxY2ZmOWVjNjBiMjQzYzFkZGQgcmVsZWFzZTIyLW1haW50CisyNTY4NyBkZmYwYTQ0YjIzNjhlNDE0YTQ0NTY4ZWFmNzJhMTM1ZmY5NjBiNGIyIGxlZ2FjeS10cnVuaworMjU2ODggMTZmMGRlZmE0NWMyMGRmMjYwNDE2MGFmMzgxM2NjMjkxMDIyYWE2OSByZWxlYXNlMjItbWFpbnQKKzI1Njg5IDM5OTI1NDRkYzE0NWZiZWJmYjEzNzM1MDI4NjZjYzQ5NDg4MDljNmIgcmVsZWFzZTIxLW1haW50CisyNTY5MCA2ZDA4YTI5NTViYjYyNTE4NzI3OTIxZjE0MDg4MTJlZTc1ZDgzMDcwIGxlZ2FjeS10cnVuaworMjU2OTEgYTYxOTNhODdmNTAwZTI3NzdiM2YxOTY4MzhlNjAyYjZiZjdmYjg1NCByZWxlYXNlMjItbWFpbnQKKzI1NjkyIDFhNzUwZmI5M2IxNjkzNjFjYmIwZWY4ZDA0NjFmNTA2MGYyZTk2ZmUgcmVsZWFzZTIyLW1haW50CisyNTY5MyBmMmViOTVmYjQ1MjllMjc2OTU2ZjA2YWRlYWE3YjMyMmIxNTQwODVmIHJlbGVhc2UyMi1tYWludAorMjU2OTQgMjhlMzc5MDViZWU0NTgyOTM0ODU5NzNiYjBjMTc0Y2QyODk4ZTM4ZCByZWxlYXNlMjItbWFpbnQKKzI1Njk1IDc5ODU2YWQ3NDlhYjdkYzczOTg2YTkzMTIzMjA2YjUxY2M3NWQzZjIgcmVsZWFzZTIyLW1haW50CisyNTY5NiBkZWJiMDA1ZjE2NzNhMDM5MmY3M2QwNzg5OTBlYjgwMWExZDIxMzYwIHJlbGVhc2UyMi1tYWludAorMjU2OTcgMGZkMzgzMWNmMmEwNzU3YTNmNjM3MDc1ZGE2MjRmOGMyOWZmMDJkZSByZWxlYXNlMjItbWFpbnQKKzI1Njk4IDAyOWU0Y2JkMjMxMjk5YjFiZDFjY2EyYWFmNmZkZDQ0ZWUxMzRjZTIgcmVsZWFzZTIyLW1haW50CisyNTY5OSBjOTAxZDE1OGFkNjg5MzZlOWMxMTUxNmYyM2FkMjg4YTEzYjA2YmQ5IHJlbGVhc2UyMi1tYWludAorMjU3MDAgYTM0ZjkxOTVmNjExZTczZjYzMjVmZWY0ZGEzYjAxMTgwNzIwODA5NSByZWxlYXNlMjItbWFpbnQKKzI1NzAxIDZjM2UzMjM1N2Q5MTA4YzMyNzYxNmFiYWEyZTFiYmRhZjM2YWJjOWEgbGVnYWN5LXRydW5rCisyNTcwMiA3ZWNjNDkxMTdkN2U4OGI2NzI1MGY0YzM0MzdmMjYzYjdmN2Q5OWIxIHJlbGVhc2UyMi1tYWludAorMjU3MDMgMjU0OGUyZjMyM2ZhN2U5Y2UzZjA4NjRiMzcyNGNlMDQ5MGQ3M2NiZiBsZWdhY3ktdHJ1bmsKKzI1NzA0IDEyZDIwNGQ5M2FmMzY1MzQ1MmZjZjFjMTY4MmNjNmE0NTI5NzQ2NWYgcmVsZWFzZTIyLW1haW50CisyNTcwNSA2NDFmYjRiNDcyMGU3NjljZWI4MWZjZDQ2MjFhNTc1YjgzMDEyYzc4IHJlbGVhc2UyMi1tYWludAorMjU3MDYgZjk3NmZhYTMzMGVhMTY3ZDgyYWQ1ZWZiYWRkODQ1NDhmYTJlMTk4MiByZWxlYXNlMjItbWFpbnQKKzI1NzA3IDFmNzMyNTFjNjI1YWM2MjIwOWRmNjZjNjI5OGFmMTg2OGJiMzRjYWMgbGVnYWN5LXRydW5rCisyNTcwOCAyN2YzNmY0YmY1MjU4YmVjNDUwMzMzMTRmYmZkNTA4MjgyMzRlMGU0IGxlZ2FjeS10cnVuaworMjU3MDkgYjg3OWU2ODUxYmUzYjk4ZjFiMWMwYTUxMGM5MmEyNWNiMjc2ZWI0OCBsZWdhY3ktdHJ1bmsKKzI1NzEwIDUxYWE5ZWIyNGQ4MWY2MjdiMGQ5Y2YyN2I3ZjUzYzNiZWVjNjJmNzUgcmVsZWFzZTIyLW1haW50CisyNTcxMSBmYjlhMDA4MjFjMGQ1MGQzM2Y4MGRjNmRjMTJiY2Y0Yjc0MzhkNDZhIHJlbGVhc2UyMi1tYWludAorMjU3MTIgNGNlNTE3YjNlMzAxZjZjYzUyZDY0ZGE4OGQxMWNhMWM5YmMxOGU5NiByZWxlYXNlMjItbWFpbnQKKzI1NzEzIGEyNzMzZmVmZmIzNjY5N2ExYzE0ZGJiNWFmODY0OWM5MDcyOTViNzggcmVsZWFzZTIyLW1haW50CisyNTcxNCAxYmI0ZDJiYWJjMTQ1YzZmMmI1ZTdhYzMwYzBmMjhiYzIzNzE1OTI4IHJlbGVhc2UyMi1tYWludAorMjU3MTUgNWE5ZGFkYTdjYmFjMzdkNTVkNzI0MjY4OTBhNTViMGMwM2FiNDMxYSByZWxlYXNlMjItbWFpbnQKKzI1NzE2IGRjYTRhN2MzNmViOTljYzlhNWI0M2U4YmE2MzljMDM4YmExMDdkZWUgcmVsZWFzZTIyLW1haW50CisyNTcxNyAzNTEzYTlkMDkwYTlhOTVlM2ZlNGNkMjE1Y2UzNjI4NjBmN2JhYTAzIHJlbGVhc2UyMi1tYWludAorMjU3MTggOTJlYmU0OWQyMmM1M2JkMTU4YTljZjYxNDg4OGUwZTlhY2MzM2I1YiByZWxlYXNlMjItbWFpbnQKKzI1NzE5IDg0ZjJjNzc4M2QzMTAxNjViN2JmZDg0ZjgwODYxNWRiNTc2MjhkMmEgcmVsZWFzZTIyLW1haW50CisyNTcyMCBkZDE3YWFkZTNiZWI4YTU1MjQ1ZWZiYTY3ZThiYmIzN2Y0MTAxNTdmIGxlZ2FjeS10cnVuaworMjU3MjEgZGY5NzliZGQ2YWVmZDJiZWRiMjQ1MzcwMDg4MDQyMjJlZmM4NTRmYyBsZWdhY3ktdHJ1bmsKKzI1NzIyIGM4YTZlYTAwYTllMWFkY2JiMTlhNjJjMDFlY2VkMDQyNTFiZjBiMjcgbGVnYWN5LXRydW5rCisyNTcyMyAxN2Q1NjEyNDNmZjgxMmRkMTJhZjZlZDgwNTc1YmFhY2RkNTYyZWY3IGxlZ2FjeS10cnVuaworMjU3MjQgOGVkNjQ3ZDMxZjQ0ZWY0ZmE5NWIxNWM2ZmUxMjM1ODQyYmUwMGMxNCBsZWdhY3ktdHJ1bmsKKzI1NzI1IDZhYzQxNTBjNGU4ODQxYTI5YjIxYjZjYTI2NmYzYmVmODkxOWEyOTcgbGVnYWN5LXRydW5rCisyNTcyNiAzNGNiZWZkMmMzZmU5NjY3NjU1ODU3MDA1MTdlNDE4ZjdjOGM1OTQzIGxlZ2FjeS10cnVuaworMjU3MjcgYzg1NGI2ZDBiMmMwNGJiNzE5NzdmYzFjNGYyNDg5NzNkNDQ4YWJlNiByZWxlYXNlMjItbWFpbnQKKzI1NzI4IDEyMWUxOThmNmRkYTllOGI5NTNkNzQ2ZjAxNDJlODI0NDEyYTA0ZDMgbGVnYWN5LXRydW5rCisyNTcyOSBmMmI2Y2NjMDA4MDg1MTRjYTM0YzFiYmVkMzUzODk0MjBiNzU3ZjI4IGxlZ2FjeS10cnVuaworMjU3MzAgNzE1ZDYzMWVlYTJmNDI2MjNhY2ZjYzhhZmZiNTE0MTJkM2EwNjg1NCBsZWdhY3ktdHJ1bmsKKzI1NzMxIDdmMGQzOTAxNGUyZTE1ZWE5ZmIzZGFhMTAwYTkyNmM5MjQyZDgyNzEgbGVnYWN5LXRydW5rCisyNTczMiBjMjEwNTYyZTE1NTgwYzYyNjUxN2NmMmI5MmZjNjU3NWM2YTMzNGJmIGxlZ2FjeS10cnVuaworMjU3MzMgYjM1N2RmMzAxZjVmMjU2ZjJmMzRhZDI5ZjMzODdhYjUzMDRiNzUzYyBsZWdhY3ktdHJ1bmsKKzI1NzM0IDA3MWY1MDNlNWY0ZjRhZWMzNTNiNGY5ZDI5OTJhY2EzYTA2YmI0YTQgcmVsZWFzZTIyLW1haW50CisyNTczNSAwYTk2ZGFiNzBhMTU3NGViOGEwYmQ1YzQxZmI3ZDA4N2U1NzdmZDQ1IHJlbGVhc2UyMi1tYWludAorMjU3MzYgMjQxNzY5NDMyNGVmMDhkMTMwZmYzZmZiZWU5YmVjOGYxYjljODQyNSBsZWdhY3ktdHJ1bmsKKzI1NzM3IDg2MDBkYmE0ZjU5ZDNkMjUyMTcyMmNkN2RhYTEyMzc3Mzg5ZTViMDkgcmVsZWFzZTIyLW1haW50CisyNTczOCBjZjlmMWI2ZGJhM2I0Nzg3ZGViOWZiNWU5YzE5ZDliY2ViYmNlYmEzIHJlbGVhc2UyMi1tYWludAorMjU3MzkgNzc1ZGE2MTc4ZTg2NTU3ZjAxYzI3YWRiNjE2MmMxOGU2OWVkN2Q5OSByZWxlYXNlMjItbWFpbnQKKzI1NzQwIDQ2NjhkMWM5MjZjZGYwNDljZjU4Y2Y5YTdhYTkzYTJkYTA4MzcwN2MgcmVsZWFzZTIyLW1haW50CisyNTc0MSA1NTUxMmZlMWQ2ZjE0YTQxNzJlNTRlNzUxOTM3OGVkOTRmM2FhYzdmIGxlZ2FjeS10cnVuaworMjU3NDIgYjkwMDRiODM2OTk0ZDk0M2M5NGNhMGQ0ZmMzNjM4Y2JhMzQ0MjM4MCByZWxlYXNlMjItbWFpbnQKKzI1NzQzIDY4ZTdlOGRmYzVmNTAyYmQ2M2U0NzJmMGQ0YTg2NDljNmI5ZTFhODEgcmVsZWFzZTIyLW1haW50CisyNTc0NCAxNjVlMjBhYzBhYjEyYTdjMjk0MzkzNTk0NDVkOWZlYTA3MDYyN2IxIHJlbGVhc2UyMi1tYWludAorMjU3NDUgZDVmNjNlN2NhYjMxYmQ0YjY1M2VkNjFiZmYyYzEwZmM3ODMxYmM2MiBsZWdhY3ktdHJ1bmsKKzI1NzQ2IDQyZTZjM2NkYzA5NTgyNzZjNjIyNjAxOTg4MDViNTE3MGE1ZWUzMWQgbGVnYWN5LXRydW5rCisyNTc0NyA4ZmM5YTU3NmZiZmZjNDFkYTUxMGMwZmNmMjExN2MzY2Q1N2Q0MTIzIHJlbGVhc2UyMi1tYWludAorMjU3NDggMDkyOTg5NGNkZjk1ZmMwNTYxYWYyMGIxOTM4N2QwNTY5YjhjYWVhNCBsZWdhY3ktdHJ1bmsKKzI1NzQ5IGI1OWU4YThkZjU3ZTg2N2IyYjU1OGQ5YmMxMzJlMTc2NDEwOTg0ZTIgcmVsZWFzZTIyLW1haW50CisyNTc1MCBjNzNjNmE1YjZhODA0NGJlMzc5NWZlMDA1MDRjYzU2YmFjZTk3NjlhIHJlbGVhc2UyMi1tYWludAorMjU3NTEgZmQwNTBhYzFlMGNlNWIyOGRmN2VhZWRiYTA5ZGJlMzljMDdhMmU1MCBsZWdhY3ktdHJ1bmsKKzI1NzUyIGFmODg0MWFjMjk4OWRiYWJlMmZkY2M0NjY0NDg2ZWUwNTUyNmU4NjAgbGVnYWN5LXRydW5rCisyNTc1MyAxMWY2ZjhjMWNlNzM0Zjk4NTc3YWFlYTk4YTVlZTU5MWQ2Y2E4NTYzIHJlbGVhc2UyMi1tYWludAorMjU3NTMgNzY1NDM0ZTdhYTAxOWMxYmI4MmY5ODEzYjgwMjU4MzA4NjdjYmRjMCByZWxlYXNlMjItbWFpbnQKKzI1NzU1IGU4OGQ1ZTI2ODdlZTQ3MzA2NmVmYjgwMzZjZDc5MzhiOTRkOTBlZDAgbGVnYWN5LXRydW5rCisyNTc1NiBhYjY2MTZlNmNlYmZkMWZiOWM3OGUyYzQ5YWYwOGE2MDg5NGZjY2JmIGxlZ2FjeS10cnVuaworMjU3NTcgMGM4YTM4NWZjOGEwMTMwYTEwYzNjODBmYzg3YzU5YzY4NGZjMjM3OCBsZWdhY3ktdHJ1bmsKKzI1NzU4IDY3MDZiODNkMWJkMTVjMzlhYjk1ZGY0Mzc5ZjRjMzc5ZGZjODViYmEgbGVnYWN5LXRydW5rCisyNTc1OSAxMzJhMDY0ZGE2NTZlNTIzZTZmMDVjZTg1ZjEzMjdjMjRkYjgwMDBmIGxlZ2FjeS10cnVuaworMjU3NjAgOTYzZTgxNGU2OWNjZjVmZTYwMmM0YmMwYzI2NGEwNTlmMzE3NDhjOSBsZWdhY3ktdHJ1bmsKKzI1NzYxIDk4NGViOTk1ZmI5ZWRjM2M1Y2MxZTg4MjMwZGIyNjcyMWNjOGRlNmQgbGVnYWN5LXRydW5rCisyNTc2MiA3MTg1N2YxNjIyMzExNTU2MzFiZjE2YjIxNTQ5NWI1NTNhODBiMTYzIGxlZ2FjeS10cnVuaworMjU3NjMgOGJmY2Y2ODI3MjQ4MmJhYjczMTA0NzRiMjEzMjc5ZjUxOTlmYTgwMSBsZWdhY3ktdHJ1bmsKKzI1NzY0IGE2YmI4MDAyOGFjZjJkY2JiNjQyY2VkNzhiYjYzNDFjYmZmODc4NGQgcmVsZWFzZTIyLW1haW50CisyNTc2NSAzNTFmOWI0ZDgwYzVkMjcwYzViZDNlZjRjNWFmOTMxMWU1MGE3NGQwIGxlZ2FjeS10cnVuaworMjU3NjYgY2VjZGE0ZWNjMDkwY2E2OTg4ZGI4ZGQ2Mjc3MmJlOTE4MTdiMmY2ZCBsZWdhY3ktdHJ1bmsKKzI1NzY3IGUxNTAxMDlkMmI5YzYwYzlhZDgzOGUyNzRiMDA1NDhjOTA1YzA4YmUgcmVsZWFzZTIyLW1haW50CisyNTc2OCAwNzNkYjY4YTJjMmJiZWZmYTFiN2MxNDY3ZmU5ZjhlM2IxMDlhYWEwIHJlbGVhc2UyMi1tYWludAorMjU3NjkgMGM4ZWQzODQxYTY0ZjhmODI2YmZkNTc4OGJiNzkwMzAxNzRhMGNiYiBsZWdhY3ktdHJ1bmsKKzI1NzcwIGEzZWU3MTMyMDM2YWYwNWQxMWVjNjIyYWIxZTY4OGM2ZDYzMTc4ZWUgcmVsZWFzZTIyLW1haW50CisyNTc3MSA0ZTgyM2JmMjUxMmNlZTg3Zjk2OTE3NjM0YzA5ZTJlNmIwYjFlNGRhIHJlbGVhc2UyMi1tYWludAorMjU3NzIgNDU3YmYxODRlN2JhOGI1NzhlMmFlNGEwYWE3N2Y2ZWNlNzBlZjllMyByZWxlYXNlMjItbWFpbnQKKzI1NzczIDRhNDU5N2JjNGVhMjIyNzg0MDE0ZTBjYzRhMzhhZjZlZGQyZDUzYWUgcmVsZWFzZTIyLW1haW50CisyNTc3NCAzNmM1MmNmYmQwYjc1ZTYwNTRkMmUwZmVlODg2ODUyNjk0M2I3ZjIxIGxlZ2FjeS10cnVuaworMjU3NzUgOTI3YmQ0ZjZlMzViMmVlOGU2MjUyYTcwNDRjYmE2ZGI0NTNkMzA0OSBsZWdhY3ktdHJ1bmsKKzI1Nzc2IDUzYTFmMjFiMDQ1MTQ4OTNjNWQ3ZGVjNTUxOGE5YTEyZWFlYmQzMzkgbGVnYWN5LXRydW5rCisyNTc3NyA3MDEzNDBjODc3MjMxOWJjNmU0ZTQwOWI0ODhhN2ZhZmM4N2ViZjEwIGxlZ2FjeS10cnVuaworMjU3NzggYzc4ZmZiZmMzNmQ5MzY2MGRkZmE4YzdkMDExM2YwM2ViM2JkNGMxNSBsZWdhY3ktdHJ1bmsKKzI1Nzc5IGRmMzU2NTZlN2Q5OTcxOGZmN2E3ZGRlY2ZhZGQ1ODJkYTQ4Y2E2M2EgbGVnYWN5LXRydW5rCisyNTc4MCBlNjIxNzRjN2Q4ZTUxNzY4NmY4ODRlZmQwMGI3YzlhY2M5MjAwM2Q1IHJlbGVhc2UyMi1tYWludAorMjU3ODEgYjE0OGUxOGFlNzdhYjAzOTFiMjcyOWIzYTg1Y2E0ZGM4MzgwNTdiMSBsZWdhY3ktdHJ1bmsKKzI1NzgyIDdhZmJiZTI4OGFmM2RhNmNkOWM4YjlkZmE5Y2UxYTZmYmI1NWNhYWIgbGVnYWN5LXRydW5rCisyNTc4MyBmNjRhMTE5N2E1MmE0NzgxNjViYWEzOTg1NjRkNzQ0OGJjYzc3OWUxIGxlZ2FjeS10cnVuaworMjU3ODQgOTg5NWUyZTMzNmMzYTEwZjZiZGMxYzc1YjgzYzBhZWM1ZmVmMGQ3MiBsZWdhY3ktdHJ1bmsKKzI1Nzg1IGI1MjNhNDcwYTBjZTk4YmU5NGNhMGFhNjQ0ZDRmN2I0YjMwYThhMjAgbGVnYWN5LXRydW5rCisyNTc4NiA1YzNhMjU5MjM4Y2ZmNTNjNDY3N2IwY2JhNTU3YjE4M2I3YjYwODQ5IGxlZ2FjeS10cnVuaworMjU3ODcgYmU0OTJkZjgzZDAzMDA4YmE1N2NhZTEyNmRiOTE1NDQyOTVmOTI1YyBsZWdhY3ktdHJ1bmsKKzI1Nzg4IGY1MmQ2YTY3NWY1Zjc4NzYzMTQ2YzhjYTFiYzk4MDg0Y2FiZWM1YTcgcmVsZWFzZTIyLW1haW50CisyNTc4OSBlYWM1NjBjYzAzOTlkN2YzMzhiMDM3YWRmZWFhOGFiNjA2OGQ4Y2RkIGxlZ2FjeS10cnVuaworMjU3OTAgYzEwNjhiMDkyODc5ZmNlNjFiOTY5YmFhNzEyNTljOTg2MWYwNGM0ZCBsZWdhY3ktdHJ1bmsKKzI1NzkxIGY0ZTI0YWIwZDEyNGFlZGI1ODk0OTk0OTUwM2MxMmI1NjVlZTEwZGYgcmVsZWFzZTIyLW1haW50CisyNTc5MiA3MDAyZjI0ZjgxOGZiMmM3ZTA5YTdjOGZkYmMwODVlMWQ2ZmM4YjAwIGxlZ2FjeS10cnVuaworMjU3OTMgNTAzYjkyZTY2YThjNzY1ZWVjZjU5YzBmMGNhYmViMzNhYTMzNmIzNSBsZWdhY3ktdHJ1bmsKKzI1Nzk0IDgzMjA1OGYyMWFhMjc0NDU1ZTIzZjVhODhlM2NjY2Q4MzE4ZWY5Y2IgbGVnYWN5LXRydW5rCisyNTc5NSAyMzdhZDQzZjg5YThmOTQ1MDJmZGQwNDAzZjY0NjQzYzA1ZjAyNDAzIGxlZ2FjeS10cnVuaworMjU3OTYgYzBhZTZmNDZmMjMxNTc0MzIyZWNhYjA2ZWYyYTAwMDVhZTRjOTg4MyBsZWdhY3ktdHJ1bmsKKzI1Nzk3IGQ4ZDk4MWQwYTQ3ZTVmMmE5ZWRmNTkyMDk5NmUwZGVkODIzMGMxOWMgbGVnYWN5LXRydW5rCisyNTc5OCA4ODhmY2Q5Yjg1OGRjZTMzMTczODBjOThiZjdiMzUyMTRhYzU3ZDFiIGxlZ2FjeS10cnVuaworMjU3OTkgZDJlNDU3YzQ0YmYyNzU3NTI5ZmI1YWMxZWYxZTcxNjY3ZGIyNjI4OSBsZWdhY3ktdHJ1bmsKKzI1ODAwIDA4Zjc0MmRmOTkzN2EyY2NiM2M5ZGM1NzJjMzE4MzkzMzI4YzRjMTYgbGVnYWN5LXRydW5rCisyNTgwMSAyNzNlZWUzODcxMmNmZmVhMWIzYTdmNWIxODRkM2Q2OTY5NWMxZjczIGxlZ2FjeS10cnVuaworMjU4MDIgMTA4NDZmMWUxNTkyZjk5YWJiZDBiNzBmMWFlM2Q0OTUyOTk1NjQ0NCBsZWdhY3ktdHJ1bmsKKzI1ODAzIGIxODM2Y2NjOTUxYzk3ZjUwMTVjNmZjNTI0MGU2YjllYmE5YjM2ZmQgcmVsZWFzZTIyLW1haW50CisyNTgwNCA5YWZlYWY5OTc5YTBhMmJhMWY4NTc3YmViNTM0N2FkOWYxNTQ4ODU3IGxlZ2FjeS10cnVuaworMjU4MDUgZDFhZWNmNjYzMTY3OTBlNWU4MWY4NjdiZTU2MGFjNWE5ZDA5ODM4ZCBsZWdhY3ktdHJ1bmsKKzI1ODA2IDcyZmQ4NDE2OTg0YjgwODUwOGQ0NmFiYTZlMjJiYTFhZTE4NmRjMjYgbGVnYWN5LXRydW5rCisyNTgwNyBlYzFhNWEwMjlmNzRjNTdmZTI4MjkzNmM1MDdmN2ViNzExMmViODk0IGxlZ2FjeS10cnVuaworMjU4MDggZDVhYWQ2YzU4MWM5YWU0NzNlOTJjNWQyYzc0OTYxMDkwYzJkNmQzZCBsZWdhY3ktdHJ1bmsKKzI1ODA5IGVmNmUyZmVmODFkMmE4YjhiYThlMTIwNWJiMDljMzU5N2U3ZTk3NzEgbGVnYWN5LXRydW5rCisyNTgxMCA5ZThhYTI5NTIzZjA5Nzk3NjJiZmRlMGViNWE1MTMzZmQ5ODY2YzU0IGxlZ2FjeS10cnVuaworMjU4MTEgODgxYjY0ODRmMGRmYWE2MWIyN2UzODI3ZjBlZjBmNmJlNTExODNmMSBsZWdhY3ktdHJ1bmsKKzI1ODEyIDUyMjA4ZmU0YWM0NzExNDhjYzcxZjc0OGI0YzVkMDlhYzMxYjM4YjEgcmVsZWFzZTIyLW1haW50CisyNTgxMyBkODY0ZTJiZDkxYTZlMTE0M2ZlOWRmYjgxY2ZkNjIzYTFlZjRjZTAyIHJlbGVhc2UyMi1tYWludAorMjU4MTQgMjM5MjVkZjRlMzcxMzA2OGZlZDg5ZTUwYjg4YmY0MjIxM2JmNjFjOCByZWxlYXNlMjItbWFpbnQKKzI1ODE1IDdiNWQ2ZjFmMWM2ZWM3NjUzYjM5ODIyMjFlZWZmNmI5NGRhMDMyZGYgcmVsZWFzZTIyLW1haW50CisyNTgxNiAyYTdmNzFhOWJkMmUzMGNlYWZjYWRkYjVlM2U1ZDc4Yjk1Yzg2N2Q4IHJlbGVhc2UyMi1tYWludAorMjU4MTcgMWZlMzgwMjMzNmEzNTZjYWRlODdlZjYwYzZmM2FjNDlmYmQ4Y2U3OSBsZWdhY3ktdHJ1bmsKKzI1ODE4IGEzNjdiYzYxZDViNjA3ZTlmMWVkOWIyODA3MTMxMjA0YzYwNzcyZGMgbGVnYWN5LXRydW5rCisyNTgxOSBmNmU2ZmRiOTM1ZDIxNDIxOTM0YTUzNGYwNWU5YTc0M2I2MzQxZjRkIHJlbGVhc2UyMi1tYWludAorMjU4MjAgNjhmZTJiMzkxMTU5NDcyZWEwZjQ2MDAzNTUwNTk3YTYxMDYyYmJkMSBsZWdhY3ktdHJ1bmsKKzI1ODIxIGJlYTAxZGMyZjAwZTJiZjNlMmU3Yjg0ZTU4OTgxMThjNzVhOWU0ZjcgbGVnYWN5LXRydW5rCisyNTgyMiBjM2UwZWEwOTczNzM2NmRiOTk0YzJjOWM2MGI0NjgxZTcyZTQ1YmRjIGxlZ2FjeS10cnVuaworMjU4MjMgOWJhOWQxMjM4ODA0ZjQ1ODcwOGVmNGRlOTUxMzQwNGQ2M2Q0MDQ4ZSBsZWdhY3ktdHJ1bmsKKzI1ODI0IDg1YmQ1MzRjYmQxOWY2OTMzMTU4ODQ1ODAyMDRkM2QzMWVlYTY4ODQgbGVnYWN5LXRydW5rCisyNTgyNSBmNTUxYWY5MjY2MGViMjJmMDZiNTQxZTk1MDFjNzdmMjhhNDBjODY4IGxlZ2FjeS10cnVuaworMjU4MjYgYWI5OGEwZGVmOWQ3NjMzMzdmMDFiNjY1NTcyYjFiZWYyZmUwYjZiYiBsZWdhY3ktdHJ1bmsKKzI1ODI3IGFiMjRlZjJjOTMyMzg5YWZkNzU1NzM5ZTRjODc2NjA2NTg0MTQ3M2MgbGVnYWN5LXRydW5rCisyNTgyOCAxZGIxNTEwYWJlMjE4N2I2NTZlYjI0N2Q5ZDk2YzU0NjJjNGRiNGM4IGxlZ2FjeS10cnVuaworMjU4MjkgYWFmNWVlM2I4ZjkzNTU2NDhlNWZlNjUxNDczNzE3ZjRmNjRkYzUyMCBsZWdhY3ktdHJ1bmsKKzI1ODMwIGVlYmFlNGY2MGQwNWNhMzQ0Mjc3M2Q3ODRkNTljNjM2YTBkYTA1YzQgbGVnYWN5LXRydW5rCisyNTgzMSA4ZDAwNjE0OTNjNTdkMjI3YmVjOWM5YjliZTU1ZDc1MTE5YjFiMWM1IGxlZ2FjeS10cnVuaworMjU4MzIgMGU0NzU4Y2NmZTJiZTY5MGVjM2ZmYzhmNWMyY2IxNWMxMzRlMTNhYyBsZWdhY3ktdHJ1bmsKKzI1ODMzIGFjZjVlY2Q4MDZhZmM3OWZhNTE4N2Y0ZTc1Yzg5NmJhNDY3YmY2MjIgbGVnYWN5LXRydW5rCisyNTgzNCBhZDM4MjVkMDRkZWNkNjIyNjQ4OTFkMWIwM2IyZmQ1Nzg3NTNmZmRhIGxlZ2FjeS10cnVuaworMjU4MzUgYmM4OGYxYjQ3NjQ4ZGU2ZTZlNTdiMWZhYWUzMWNjMDVmZGZiNjNmYyBsZWdhY3ktdHJ1bmsKKzI1ODM2IDdhZGVkNmQwNjk2ZTM0NTg0Y2I5OWUyOGFkYWIxYWRhM2I3YmRjZGEgbGVnYWN5LXRydW5rCisyNTgzNyBlNGQxMGJkMzk3M2YxNjQ4M2UzNjY4YzljY2IyZDg0MmE1YWUwZTMwIGxlZ2FjeS10cnVuaworMjU4MzggZDc3ZTc0ODg2NWZmOWI4OWJhOTNjOGMzOWUyY2M4OTlkYmRmMjE0NSBsZWdhY3ktdHJ1bmsKKzI1ODM5IDgwNWJlN2MwZTI2YzUzMDlmMzVlYzk2OGVmZjdlZDkxYTFlNTIwYmMgbGVnYWN5LXRydW5rCisyNTg0MCA2NDA4Mzg0YzgxMzdiMjQ4YjU3MTU4NGMxYzQzZTU5YmE4MTA3Y2Q5IGxlZ2FjeS10cnVuaworMjU4NDEgZmI0NTc5MTE1MGQxOTc3NzczOTZiOTkzNThhZTIxOGEzYTJjY2M4NSBsZWdhY3ktdHJ1bmsKKzI1ODQyIDE1NzAyZTFiOTYxZWJiNmNmZWFhNGFhNjYwMzM4MmVmMDdhN2Y2NDYgbGVnYWN5LXRydW5rCisyNTg0MyA3ZGUzYzliNThkYjhmZWZlZjQ4NzQ3NTM0ODRhOGM3ZmE2YWIwNmM3IGxlZ2FjeS10cnVuaworMjU4NDQgMjNiOWFlNmIzZjdhZmViNWEwNGIzNDYxMTUxNjc1ZWU1ZjlkOTE4NiBsZWdhY3ktdHJ1bmsKKzI1ODQ1IDBmMWFlMzdjZDhlYjAyN2U5Mzc1N2E4MjAwZGI2NGI4ZWI0ZmU4MzkgbGVnYWN5LXRydW5rCisyNTg0NiBmZmNiMmZkMjk0N2UxMjhhNzgxMmFlNjk2NTczNGY3NjEwMTU3YTg5IGxlZ2FjeS10cnVuaworMjU4NDcgYjM2MGE2NTBhMGRiZTQ5ZWQzMTliNWIzNDJmYzNmNzk5MjBkMTg4NSBsZWdhY3ktdHJ1bmsKKzI1ODQ4IDhlY2QxYmFkMjQwODFiNWM5NTIxODQwNWExZWU3N2FjYmVmZDc5OWMgbGVnYWN5LXRydW5rCisyNTg0OSBmMDJjZGIyYmMxN2E3M2ZiOWQ0MTI5NmY4ZmMyZTBjMDQ2ZDA3M2Q3IGxlZ2FjeS10cnVuaworMjU4NTAgMTM2MWY3YmIzZjE5OTM3MTZiZDQ5MDJhMTYwZmE1YTZkMmJkZjdkYyBsZWdhY3ktdHJ1bmsKKzI1ODUxIDYwMzkyNTRhYWFkYzQ4NzI3OTc4YmU5NDc3ZGFhNDkwYzZmNDE5NGQgbGVnYWN5LXRydW5rCisyNTg1MiBkNGY1NDE0NjdiNmQ1MmU1ODhmZjBjNDIzMjY0NTk5ZTFhNjE2ODE4IGxlZ2FjeS10cnVuaworMjU4NTMgZmY5YWI3ZDMwYmJmYmQyMWI2YjcxNjFkNGRiYzM1NTJkMzdhNTcwZiBsZWdhY3ktdHJ1bmsKKzI1ODU0IDQyMjUxM2Y0MjBjZjM5ZmMyNzFiNDU2YWIxNGNiNTczNjAwMmQxMTQgbGVnYWN5LXRydW5rCisyNTg1NSA2NmFkYjU1MWNkMzhmM2QyYjBmYTU4YzYwNzEyNzlmODE3YWYyNGYzIGxlZ2FjeS10cnVuaworMjU4NTYgNzIyNGExZGY0ODA5ZmI0NzFhZjM0YjJkZDBmMzJhOTM3YzkyZWI1ZSBsZWdhY3ktdHJ1bmsKKzI1ODU3IDkxZjlhMjQ4ODdjYjVlNTgwOGVlMDUzYTdhZjBjYmUzMzIxNjljN2IgbGVnYWN5LXRydW5rCisyNTg1OCBlY2QxODFiMDJhOGE5NjZhZTFkN2FiOTFmMTBmZDIxZTFkYmI3OGM3IGxlZ2FjeS10cnVuaworMjU4NTkgMzkzYjBjM2Q5NzczMjQ3YTZmZjMxM2VkMGY5M2NmOGNjMmM3YzNmNSBsZWdhY3ktdHJ1bmsKKzI1ODYwIDU0YmNlM2NhYmNjZDU3YzdjMzhmNmU0MzBhNmNhNjk4ODU4M2ZmMzkgbGVnYWN5LXRydW5rCisyNTg2MSAzYTNkZTY1NjdmMWE1ZDIxNTk3MmU2NTZhZmI2OTk1NTEzNzcyNDk1IGxlZ2FjeS10cnVuaworMjU4NjIgODJiZGJjYTAyYzA3NTFhY2EzOTM3YTNlOWVjMzVlYWVlNTRmNzU3YyBsZWdhY3ktdHJ1bmsKKzI1ODYzIDllM2Q2YjVjZWUwNzYyZDY2MDUzOTYyYTBiZWFjOGI5MDdjODAxY2QgbGVnYWN5LXRydW5rCisyNTg2NCA1YjhiZTg2MTFkOGNkODkxZDEyMmM4OThkM2FlNWY1ZGQzNzA4NTQwIGxlZ2FjeS10cnVuaworMjU4NjUgYzgxNjU3NThhNmRlN2MyYTA1YWNjOTU3OTVhNmRlZDU3ZTI3NWQzYiBsZWdhY3ktdHJ1bmsKKzI1ODY2IDI1ZTJiNTgwYjJjZmJiY2IxYmExNTQ4MjJkMGU3NjY3MTE5MjQzNWQgbGVnYWN5LXRydW5rCisyNTg2NyBhMzJjN2IzZjFmMTEwNmM5Yzg4ZDgwMmVjNDFhZDFkMGU5ZDU2MTU2IGxlZ2FjeS10cnVuaworMjU4NjggZTk0ZWRkZWNmMzMwYTA0MDQyOTQ5OGZhN2ZkOTJhOGVkMjU3MTBkZiBsZWdhY3ktdHJ1bmsKKzI1ODY5IGU3Nzc0NTI2NDgzMDZlZTYyMTRhNWNlOGFhMzcwMDkwNjQ5ZDBkMzYgbGVnYWN5LXRydW5rCisyNTg3MCAzYmQyMmJkMTg3YzMyYjUzYzJmZDZiODliMTYzYjY4YjI2ZDUxN2Q0IGxlZ2FjeS10cnVuaworMjU4NzEgNTRjMDVhOTQ3YmNiYzU4ZDg5NTAxNzE0NTdjMzM5MjRlNjNhODlhYSBsZWdhY3ktdHJ1bmsKKzI1ODcyIDBlZGEzZjgyYjZmM2Y0MjgxNGY3OThmMWE0OGVmMzhiZmU0MzJhYmMgbGVnYWN5LXRydW5rCisyNTg3MyAyMDVjMTA2MzJmMDg3ZjM5ZTE4YjQxZTUyMGRjM2U3MjdiY2Y1MjFhIHJlbGVhc2UyMi1tYWludAorMjU4NzQgNjU4ZWEwMjY2MzRjNGMyMjAxM2RjODFkYTk1MzhkOWU5NTYwOTgxZCByZWxlYXNlMjItbWFpbnQKKzI1ODc1IDBkZDJmOWI1N2NmZjVhYzkxOGU4NzViMjdmNjQ2NTJhZmFkMTkyY2MgcmVsZWFzZTIyLW1haW50CisyNTg3NiBhNDA1NDNiM2UzYmYzMjY0M2JiMzVkOWNkZDUyZDgwYTFiY2RmMThhIHJlbGVhc2UyMi1tYWludAorMjU4NzcgODE0MzI5YTY0MjZjZDc3ZDk2MDZmMTNjOGIwMzVlMmUxY2EzMGMwNiByZWxlYXNlMjItbWFpbnQKKzI1ODc4IDRlZjM2OTNmMWEyNmFhZDkwMzdkZWU5NTEzZDJlZjE5ODIzYjljYzAgcmVsZWFzZTIyLW1haW50CisyNTg3OSA2NjU3OTFkNTNjNDM1NmEyMjY2NTdiOThjMTU2YWY1MmI1OWMxODI0IHJlbGVhc2UyMi1tYWludAorMjU4ODAgMTYyNDVhOWNiZmExZGYzNzBkYTdmMTQyZmJjZmQ5ZjI4MWVmMDdhMiByZWxlYXNlMjItbWFpbnQKKzI1ODgxIDdjN2M5MGZjNzAwNWE3ZWZjNzlmNzA4NGFmMzBlYTA3YjM5MzM0YzkgcmVsZWFzZTIyLW1haW50CisyNTg4MiBjM2RmOWI3YTZhY2FiMTg5YzRjYWY0NWRmMzMyOTMxZDc3M2JmNDI0IHJlbGVhc2UyMi1tYWludAorMjU4ODMgNzk1YmRkNjkyMTc2MDI1YTRhOTFhYzZjZWY4NTI4MTIwMmYwYzRkYyBsZWdhY3ktdHJ1bmsKKzI1ODg0IDhiZmM5MTg0OTI0MmMzMDg5OGRjYWRkOTk4OTQ3NDQ1ZjJlOGMyYWYgcmVsZWFzZTIyLW1haW50CisyNTg4NSA2NGE2ODM2MTg0OGNkNDAyNmZkZmRhMWI3MTQ1ZWE2OTNiMGRlYzM2IHJlbGVhc2UyMi1tYWludAorMjU4ODYgMGFhZTA5OTg2ZmM5OGY1NmQ3OWMzMmJlMDQxY2FkMWRhYjQzMjM1ZSByZWxlYXNlMjItbWFpbnQKKzI1ODg3IDRmZjM3YzU4YWI4OTM5M2FkOTI3YTIxNjAzMjg4OTI1NjFkY2VhZDMgcmVsZWFzZTIyLW1haW50CisyNTg4OCAwYzE5MTJmOWQxY2U4M2RlZmU0NzFmN2QwZjlmNmIwZTU3YWVmYTU0IHJlbGVhc2UyMi1tYWludAorMjU4ODkgYTJmZTBlY2QwY2UyYWJkMGNkYTY2OTlmNWY4Y2QyNWZmMmY2NzI2MCByZWxlYXNlMjItbWFpbnQKKzI1ODkwIDJmOWM2Y2JlYWE2MjhkNWUzZGRiZDVjNjU1ZTA0NWIwMjNmYzgxYWQgcmVsZWFzZTIyLW1haW50CisyNTg5MSBkNjZlNGU3YzllOWE3MGM1NjAzZTQ1OThmZDkyMTNlNzAwNjI3OTEyIHJlbGVhc2UyMi1tYWludAorMjU4OTIgNDU3MjFjMDIxNjA2NjRmY2I1ZGM1N2Y2MjJhMGYwNmMyYWQ4ZWUzYSByZWxlYXNlMjItbWFpbnQKKzI1ODkzIGVmMzE0YjM3ZTI2MGNlZGJiYzU3MWI2ZmM1MjAzNzE4MDE1ZTliYjkgcmVsZWFzZTIyLW1haW50CisyNTg5NCA5MTk4ZmIwNDM1ZmJhYWNlYTkwNzE4ODVjYzFjZGM4NTVjZGQ0MDNkIHJlbGVhc2UyMi1tYWludAorMjU4OTUgMjkxMjAxNWExZTdiNzZiODVlNWUzYzJhNzQ2YWE0YmFhOTA2YzVhMyByZWxlYXNlMjItbWFpbnQKKzI1ODk2IDgwOTBkMGQ2M2VlMWE1OTE3ZTBkY2I5NWU4ODI4OTQ4ZjhmNjJmOWEgcmVsZWFzZTIyLW1haW50CisyNTg5NyBmNmE3ZmRiZDMwZDRmMjE2ZjYxZGE2MDZlOTg4OWNlZDUxZTNkM2RkIHJlbGVhc2UyMi1tYWludAorMjU4OTggMjFlODk3MmQzN2U0NjgxZWNiNGU5OWE0M2Q4ODcwZjE0MGU3YWY2MyByZWxlYXNlMjItbWFpbnQKKzI1ODk5IDFhZmJjNTYxODhiMDA3NDhjYjlhMTA3NzhmMTQ5YjBhMWUwOGM0OGEgcmVsZWFzZTIyLW1haW50CisyNTkwMCBkYTlhZGVjNjZlMmIyMTlhMTQ3MTU4Yjg5ZDQ5NTY2MjM4YWU2NWMwIHJlbGVhc2UyMi1tYWludAorMjU5MDEgZTJjYmU5YzMzNDExYTBiMGI1Nzg0ZWE1NThmMzQwZjA4ZDIxYmZlNSByZWxlYXNlMjItbWFpbnQKKzI1OTAyIDc1ZWYxZjE2NzI1ZWY0ZWNhYmRjZWQ5NjAyYjMxNDU0NDhjYjZlZmYgcmVsZWFzZTIyLW1haW50CisyNTkwMyBiNzI2ZTZiM2E4NTIzY2E0NTIyNDI5Nzc1YTMzNTcwMzU0NjkwNjQ4IHJlbGVhc2UyMi1tYWludAorMjU5MDQgMTZlNTQyYWYyYzQ1YmMwNzkwM2FhMzBjYmVkMWJhNmNhNTY4ODg3OCByZWxlYXNlMjItbWFpbnQKKzI1OTA1IGM1YzEzMjYxNjZiOTIxYTQ3OTY0YzBkOTU5ODlkODE2NjY4NjY3ZTggcmVsZWFzZTIyLW1haW50CisyNTkwNiA3NTY2MTg3YTIwMWNmMjE0NTk4NmY3Mzg5YjI1YWI1OWY1OWE1ZGQwIHJlbGVhc2UyMi1tYWludAorMjU5MDcgMTQyZmQzZTEwNzNkMWUwNzU4NDIwMmRmMzhiNjE2N2NkMjVjYWE4NyBsZWdhY3ktdHJ1bmsKKzI1OTA4IDZiM2U5OWIyZmY5MWM0NTcxYTBkNmIyNjliMmNiZDUzOWUyYTFmZDQgcmVsZWFzZTIyLW1haW50CisyNTkwOSAwOTIyYzkxOWNlZGJlMzdjMGQ1OTcwZjIzOTAwODRhNTY5MWI4ZmViIGxlZ2FjeS10cnVuaworMjU5MTAgNjNmYmNhODk4ZWFjMjZhYzQ0ODQ4NWQzODBjZjc3ZGY1ZGZjNDcxZCBsZWdhY3ktdHJ1bmsKKzI1OTExIGZhZDA3MWZiNDE0MWZlNjA5YmE2NzZmZjc1ODVhNDVhOWY0ZTdmZjMgcmVsZWFzZTIyLW1haW50CisyNTkxMiBhZDE1YjM5YWQ4ZjcxMjQwNDAxMWEyOTM1MzMzNDQwZWY5YTk4YmEyIGxlZ2FjeS10cnVuaworMjU5MTMgOGI2MzZmY2I4NjE1ZWEyOTIwZWNkYjk3N2Y1ZDI2MWE0MmE0ODM3OCByZWxlYXNlMjItbWFpbnQKKzI1OTE0IDllYjRlNjIzMDliMGUyMzJlMDdjZWZkNDA3Y2ZlNzMxYWI2YjFhMTggbGVnYWN5LXRydW5rCisyNTkxNSAyNWI1OTlmMzYwYmMyMWQxODM1NzRmYmI5OWMzZGE0NGZlZmFkNjBjIGxlZ2FjeS10cnVuaworMjU5MTYgNmRlMWExOWY0N2E0MjVmZTExZjI5MWJhYzZiYTQyMGEyYjJiNGIwZiByZWxlYXNlMjItbWFpbnQKKzI1OTE3IGY5ZDk2ZGVkZDFmNDY2YjQ3ZDEwNDdhNjMzYWU5MDIzMjJmMjVjYzEgcmVsZWFzZTIyLW1haW50CisyNTkxOCBmMmEzYWY0ZmE0ZmZlZWYzNGI3ZWM3MGU4YTE0NjViOTViZWQ1MzAxIGxlZ2FjeS10cnVuaworMjU5MTkgYjY4YWY0YTgwMDBiYTEyYTYxYWRmZjhjZDU2MjlhMjQ0NGRlZmQyNSByZWxlYXNlMjItbWFpbnQKKzI1OTIwIDNmNDIxNjM0YzM3Y2M2YzVlMmY1NTAyODU3YjU3YmI4NjRhZjcwZjMgcmVsZWFzZTIyLW1haW50CisyNTkyMSBiNTlhZDRiOTdhNDI2ZTE0ZmI1ZjAzNDI5YzhmOGY1YWU4YjlhMGI1IHJlbGVhc2UyMi1tYWludAorMjU5MjIgN2E0Y2I0ZTk3OTc2NmFhNjBlZDU3NDM1NTY5ZTc3MjY4N2FiY2Y5ZCBsZWdhY3ktdHJ1bmsKKzI1OTIzIDA0M2FkN2FkYzg5NmY0YTQ4ZmUzMzQ1MmM1ZWYwMmY5ZWM5MmZlZDIgbGVnYWN5LXRydW5rCisyNTkyNCAzMDNiNmFkMTNhMzJkOTk1MTEyYzlhMzEzZjA3ZGJjNTY3YzdkOGVjIGxlZ2FjeS10cnVuaworMjU5MjUgM2JmMmI1YWNhNjFlYzE4NTBkNTAyNjk4MjI0MjZkMThlNmJiY2YwOCBsZWdhY3ktdHJ1bmsKKzI1OTI2IDliYjQ1MDM2NWRmNzg3MWMwZTQ5YzNlMjQ4MjgzODU3Mzk3MzZmOTMgbGVnYWN5LXRydW5rCisyNTkyNyA5MDZhZDM2Y2I3YmNjZTc1ZDVjODg1MTA4Y2RmYWFjZTAwNzVmM2YzIGxlZ2FjeS10cnVuaworMjU5MjggMzllNDJkNmY1ZGEyZDA3MDRhNTI2MmJiM2I5ZGZiMGJmYTNiY2VkNCBsZWdhY3ktdHJ1bmsKKzI1OTI5IGFlZGRhMGFiZDMxM2UwMGVhYTQ3Y2QyNTg3ZDhmZWFkNWEzOTMzMGUgbGVnYWN5LXRydW5rCisyNTkzMCA2YTFjODc1MmE2NWZiMDcxZmRkNDUxMmE5NTNkYWUxNjBmZTNjMjA2IGxlZ2FjeS10cnVuaworMjU5MzEgZWU0YjU5YjVmZWI3MmY3YmViMDJkMjcwOWE0MGIxZDk5ODUzYThhNCBsZWdhY3ktdHJ1bmsKKzI1OTMyIDQ3MGU5ZGEyMWM0YWU0ZmY1MWYzNjI3ODI1MDczYWRmNzMxNGVmMGEgcmVsZWFzZTIyLW1haW50CisyNTkzMyBkMTkwYjJkMzAzYzI4MWQ3YmQyYzE5NmQ0ODE0MjBhYmJlMDRiZWI2IHJlbGVhc2UyMi1tYWludAorMjU5MzQgNWEzMGQ0YjNkYTM3YTEwYzYwMTRhNzgxNDYwMmU5NjFlMjQwZDFjOSByZWxlYXNlMjItbWFpbnQKKzI1OTM1IDI5ODgwMmFiZDM4ZGZmZmE3OWI0NzJjMmY1ZGRjMzM3MGViMjRmZmMgbGVnYWN5LXRydW5rCisyNTkzNiAwNmE4MTU2ZTNiY2Y3M2JmY2I2NDU3ZDA4NmJiMjVjY2Q2MjI0ZjZiIHJlbGVhc2UyMi1tYWludAorMjU5MzcgYmMyMGJhYWFlM2VlMTE5ZTM5YTlmMmUyYTJmNmEyNDNkMTlkYjA0OCBsZWdhY3ktdHJ1bmsKKzI1OTM4IGQ3MWQzYjcxNWIxM2VhMjk0YWQ4M2Y1MmZkZmJmMWRiYmIwMzFhMTQgcmVsZWFzZTIyLW1haW50CisyNTkzOSBlNmM2YmFiY2VlZTUzNjBmM2RiNzM4NGQ3YTQ4Y2FjMWE5NTllMjc4IHJlbGVhc2UyMi1tYWludAorMjU5NDAgM2EyMWRiZTFiNmZlNDY4OWE4ZTg1ZDYwZGM1MWJjMTc3MzRkYWYxOSByZWxlYXNlMjItbWFpbnQKKzI1OTQxIDY0YTEwNDlmZTUzYjk2MWE1MWI4OTkwZDU0OTBhOWJkMTQwMmI3ZGMgcmVsZWFzZTIyLW1haW50CisyNTk0MiBmMGVmOGI0MjZkOGQ5YjA3Y2FiM2ZhYzdiYmEzNGM5YmYyODg0ZDg3IHJlbGVhc2UyMi1tYWludAorMjU5NDMgMmQzM2NmZDZjMTdmMDc3OWJmN2NkM2Q0MDI0MWIwMGI4OGE2OTU3MCByZWxlYXNlMjItbWFpbnQKKzI1OTQ0IDlhMTdiM2EzYWYwOTg5YzBkNDFmNGFkMzE0YWUzZGExZmY0MTNlMTggcmVsZWFzZTIyLW1haW50CisyNTk0NCAxMWM5NTJjN2Q0YmU2NjM4MDQwNzY0OTEwYmU4MGJkOWMzYzE3ZGU2IHJlbGVhc2UyMi1tYWludAorMjU5NDYgYmNkMWZkZjEzYWNmZTM2NzFhZjY4NjY0MTIwYTRmZTg4Y2ZkNGJjNSBsZWdhY3ktdHJ1bmsKKzI1OTQ3IDkzZGFhNGZkZTA4N2VkZGFjODNkNTEyNWExOTliNGExNzg5YjY2YWQgbGVnYWN5LXRydW5rCisyNTk0OCAzZDY4MDg1ZjQ5NWY5ZTU4ZTM2NTI0N2RlMzIxNDk2ODZiYjBlMTk1IGxlZ2FjeS10cnVuaworMjU5NDkgOTFlYWI3NDU4MTBmMTEzYzQwNWZlNmYyNDc2YTUyNmFlNGQ2MTljMCBsZWdhY3ktdHJ1bmsKKzI1OTUwIGYxZGJlY2I3ZTQxNjBkMjc0ZTJmYWQ0MmI0NGQ4MGQ5M2UzNjc5M2YgbGVnYWN5LXRydW5rCisyNTk1MSA2NmU4NWE3MzJkZGRlMTkyNTg2Y2E0YTAyYjQwMjk1ZjQxYjRhOGRhIGxlZ2FjeS10cnVuaworMjU5NTIgYzE4ZmU0ODcyNTcxNjBmZDY4MzczYjA0MDJiMjc1OTVmOWEyMWJjNiBsZWdhY3ktdHJ1bmsKKzI1OTUzIDdiY2U0NzUxYmZiMzQwZjJmMTgyOGVkMWYzNzdmNmNmMjJlMDdmNTcgbGVnYWN5LXRydW5rCisyNTk1NCA3ZDBmMGJiOTQ0OGIwMTAwNjI2ZDgzOGFhNzI3NmYxN2MxN2ZkOWE0IGxlZ2FjeS10cnVuaworMjU5NTUgYTc1OGQ0YzQwMWUwOGVhYWRjODIwNWFjZjM2Yzc3MDgwMzY2YzU4MSBsZWdhY3ktdHJ1bmsKKzI1OTU2IDliNTMxMGNmYTJlMGRkYjE2MGM3M2Y3YjdkYjViYmE3NjVhYzdjZmIgbGVnYWN5LXRydW5rCisyNTk1NyAyMDRkNDZmYzU0ZjY4ZTAzMzRmZDcxNjkzNjBkZDgwOWEyOTBjMWE1IGxlZ2FjeS10cnVuaworMjU5NTggMGEzYmYyMmFlY2E0YTJlNGI4NWY0ZWU3MjFhMTdiZDU1NDFlMzRjMiBsZWdhY3ktdHJ1bmsKKzI1OTU5IDFjNzIwN2FkNWRiODE1NzgyMzM4ZWRjZTU3ZjVjYTE0ZjliMjY4ZjUgcmVsZWFzZTIyLW1haW50CisyNTk2MCA4MDgyMWE2NWZkNDk4MTgxOGQ0ZTcyOGI5YzhlNzQzN2E1ZmRmZDAwIHJlbGVhc2UyMi1tYWludAorMjU5NjEgMTk0ZWQ1ZTBkYzhmZjBkZTEzMGU5YjI1ZTY4OTMyMDQxNmIzNmY4YiBsZWdhY3ktdHJ1bmsKKzI1OTYyIDBjNWM2NGI3NWQ1ZDBhMTgxMmRlOWViM2EwNzU1NTFiNmM0OTc0MDQgbGVnYWN5LXRydW5rCisyNTk2MyBhMzMxYzYxNmJiMGFkNWNjNTRlYTlmNzkzZWRmZmQ2NjhjY2MzNGY2IGxlZ2FjeS10cnVuaworMjU5NjQgZjNhOTEzZTY0ZWI4ZWQ0ZGI5MjZiMTAwOTBhOWRkMWFlODAyYWNmZSBsZWdhY3ktdHJ1bmsKKzI1OTY1IDI4NjhlOWE5ZTI4MGI2OGEzOTY1MmUyNjk3ZTUyYjdhNTQ0MmE2ODQgbGVnYWN5LXRydW5rCisyNTk2NiAzZjRiMmY5M2U4YjViNTQyNmU4ODhjNDliNDQ5YjdjNWY4M2RkYTk5IGxlZ2FjeS10cnVuaworMjU5NjcgZGExNjQ1ZmQ5YzI0MzhhZmViZTc0YzA5MzIwN2RiOGJmNjVhOTljNCBsZWdhY3ktdHJ1bmsKKzI1OTY4IDFjODM4YmU2ZDAwNGJiODg2MDYyZjNlZGM5OGE2MDQ4ZjA5M2U2MDIgcmVsZWFzZTIyLW1haW50CisyNTk2OSBhYzI0YzJjOWJjYWY4M2Q4Y2RmNWVjZGZkYWI4MDE2NmU2YmZmYTUzIGxlZ2FjeS10cnVuaworMjU5NzAgODM3NzZiYTU4MGVmMjBhNWM0MzVkZTQyYjdkNmM4NzUyY2I4ODQwMSBsZWdhY3ktdHJ1bmsKKzI1OTcxIDRjN2JiMGI0ZDM1NGJkMjQ3NjEzYmZmYmExM2I5NmU0NjZjMGQzMTcgbGVnYWN5LXRydW5rCisyNTk3MiBjOWI3MzI2MjhlNmM2MDYzZjE4ZjBiMmQwNWZjNjk1ZTQ1ZGVmNzM3IGxlZ2FjeS10cnVuaworMjU5NzMgMjY3ODVmZTYzY2JiZTJkNGM2NTkxYWRiODY5OGQ2MzI2YjM0Nzk2YyBsZWdhY3ktdHJ1bmsKKzI1OTc0IGY2MmJmYjBiMDk0NmNkNmMxMzcyNzU5MzcxY2EwZmE1MTU3ODdlZGUgbGVnYWN5LXRydW5rCisyNTk3NSBkZGM5NTQzYzc2YTAzMWM5Y2IyZDIzNzhkM2IxMjUzMjkyMDIxNWI5IGxlZ2FjeS10cnVuaworMjU5NzYgZjI5NGZkZDE4YjViMDhhNGMwNzMxZmE5MDVhNGVjYjA3NjcyNzYxYSBsZWdhY3ktdHJ1bmsKKzI1OTc3IGQ2ZjUwNjRmMjY3MzcxM2ZhNjVlOTNmZTE0ODcyYzBlZjRjZjkwNmIgbGVnYWN5LXRydW5rCisyNTk3OCAzMjk5YjdhYmE4ZWJlNzAzMjljMWVjMWMwNGZlY2VhOTQ1OTE0ZjBlIGxlZ2FjeS10cnVuaworMjU5NzkgNjc5NmRkMzBhNjAyNDc5NGJkMGExMGI3ZDRhNjk2ZTYwYmEyOWJkNiBsZWdhY3ktdHJ1bmsKKzI1OTgwIDE5ZDRlODM2YmQwNzVlZWRlYTIxMTUyMGMyNmFkYjEwMGJkNjk1M2YgbGVnYWN5LXRydW5rCisyNTk4MSBlYzZlY2JiMzRiMDZiOWUwNDViODhlNjYyZDVkZDg3MDFiZTIzMWQzIGxlZ2FjeS10cnVuaworMjU5ODIgNmE4NTA0NDhmYzhlOGUzYWM5YjM2ZWE5NzA3NTQ5NDNmZjExODI3NyByZWxlYXNlMjItbWFpbnQKKzI1OTgzIDgzMGM4MjlhN2ViMmFlZDU1MjJhN2E0Nzk3ODk2OWRhODZmNGVjZmYgbGVnYWN5LXRydW5rCisyNTk4NCBhNmJiM2NjOTE5Yjk2NTZkNjdlNzdkODg1OWNjNDBiMjJiYzY0YTFjIHJlbGVhc2UyMi1tYWludAorMjU5ODUgZDlmMzAzMDNjODYwZDAyMThjMWQ1ODA0MjYzZjE0MmUxNzhkMGI0NyBsZWdhY3ktdHJ1bmsKKzI1OTg2IDg4MGQzMTA2NDk5YmFiNWJlZjRiOTc2YTM3ZGQyYmVhY2ExMjVlN2QgcmVsZWFzZTIxLW1haW50CisyNTk4NyA4OThjMzkyNDc3ZDkxZDEyODY1MmM1NzQxODUxODRlNzI2NTJiOTkwIGxlZ2FjeS10cnVuaworMjU5ODggMDQ0NmVlYjc4N2I3ZjkyZGFkMjFhNTZkYWJkMmFjNzMxNGViZGM1NCByZWxlYXNlMjItbWFpbnQKKzI1OTg5IDUxYjFjNWVhMGZiYjQ1NjE3NGU1NDBiODhmNzNhNDVhMzdhZTAwMTMgcmVsZWFzZTIxLW1haW50CisyNTk5MCA4NDY4NGZjMDJkYTAwNGY0OGMzZWM5NWYwYTVjNTc4NjZlMTZlOTdhIGxlZ2FjeS10cnVuaworMjU5OTEgNzIzMGUwMWMzYzQ5NGVkNGMzMzIwNThhOTI0ZjhjMDQyOTM4NjgwZSBsZWdhY3ktdHJ1bmsKKzI1OTkyIGU2ZmNjZGU2MTA4NjZkMWIyZmEyNjdiNGQ3MTE1N2YxODUyNTNkOTggbGVnYWN5LXRydW5rCisyNTk5MyA3ODcwZmFjMDQ5ZjcyMTNhNzc4NjFlNTA5NzQ0MTMyYjExZTQ3MzczIGxlZ2FjeS10cnVuaworMjU5OTQgMzQ5NDA0NDI2ZmFhYzM3ZTI0NWM1ZDcyZDU4OTEyYzU4MjQ1MWI5YiBsZWdhY3ktdHJ1bmsKKzI1OTk1IGY4YzY1OTg0OGFkNmY3ODJiNzhiMGFkM2EwYmFhNzI4YzZjZjQwZjUgbGVnYWN5LXRydW5rCisyNTk5NiBiOWNlOTY5MjgxY2I3MzgyMTM1MWY2OWU5OGM1NjRkMGRmYzAwZDU0IGxlZ2FjeS10cnVuaworMjU5OTcgNzI2Yzk2MWYzZGI1MWE3NTBmZWVlYzE1Zjk5ZDlkNjZjNmRlNmZiNSBsZWdhY3ktdHJ1bmsKKzI1OTk4IDBmODAxNjI2YzJkMzc5YzhjOGI0YTQ5MjMwNzA0ODg1MGExZTZmNzIgbGVnYWN5LXRydW5rCisyNTk5OSBkNzc4ZWE5ZGU3ODBmYWMwZjg3ODYzMzE1NDYyMTk0NmM3NDVmOGI4IGxlZ2FjeS10cnVuaworMjYwMDAgYzE2NjYxMDRiNTU0ZjlhNmNlY2UzYjRhMWYzNDYxZDAxNTgzM2I5NyBsZWdhY3ktdHJ1bmsKKzI2MDAxIDljMmNhMzdiZGVlYzU4MTU2ZTRhYTI4ZGVmYTVmNDRiMjAxYjdhMTMgbGVnYWN5LXRydW5rCisyNjAwMiBlYzEwNDNmNmQwNWVmY2U3Nzc4YTZjZmI4NmU0YjMyNzI4NTZjOGU3IGxlZ2FjeS10cnVuaworMjYwMDMgY2VjZjMxZGI4YjBkYjU3MzQzODBjMjhhYzM1YzY0NmVjYjgzNDAyYSByZWxlYXNlMjItbWFpbnQKKzI2MDA0IDk2YjEzNmI2MTE3ODQ1NDhlYmEwNzMyMzE5ZGU2MWU1NTgyMWRmNTkgbGVnYWN5LXRydW5rCisyNjAwNSBkMjkxMTlkMjQzZTllMzdhNGE0MDVkZWUxN2ZkNTE1ZTdjMGVhMmRjIGxlZ2FjeS10cnVuaworMjYwMDYgYjE3MmVlOTNjMTNjNmM5MzJkZGIwZmU2ZmI2OWEwMGE5NjViODQ2OSBsZWdhY3ktdHJ1bmsKKzI2MDA3IDE1MGYwMzQwN2QwZDI2OTcyNDNkMTZhYTNiZmJmZjI1ZGU4NGJjNzAgcmVsZWFzZTIyLW1haW50CisyNjAwOCA4NmEyN2JhMWJlZTc1ZjAyMmJkZTIyZGUxMmEwOTZkOGQ5ZjZlZDVjIHJlbGVhc2UyMS1tYWludAorMjYwMDkgNTY1NWJmYjYwN2NhNzIyNGFkOTdjYzk1YmJjMzcxZjM5ZmIxZGQxOCBsZWdhY3ktdHJ1bmsKKzI2MDEwIDhhODM2ZDBiNTk3NDE2NWZmMGI4NDdmYzMxYjRiMjFjYjA1MWU0NDIgbGVnYWN5LXRydW5rCisyNjAxMSAxNjE2YmQ4YjMxYmMwNDgwODczNTQwOTc5ODY3NGE1YjQxOGQxZGQ5IGxlZ2FjeS10cnVuaworMjYwMTIgMjI4OGM3MjRmZTJiYWQwMTQwZmE2OTljNjRjMjAwZDA0Y2ZmZGE5NSBsZWdhY3ktdHJ1bmsKKzI2MDEzIGYzYTQxNmIxNzhjNDIzY2YwOWM0MGY0MWRlZDk2ZjAxMTBjZDVmZWIgbGVnYWN5LXRydW5rCisyNjAxNCBlOTcxNDc1YzA0NzE5MzFjZWViNjNlN2JlYTZjZDFiZmJkZmY4ZjNlIGxlZ2FjeS10cnVuaworMjYwMTUgMmRhMTEzNzYwMGFlN2U5ZWFhMWQ1Mzg5OWRhZTJkMGIwNTM5OTkyMSBsZWdhY3ktdHJ1bmsKKzI2MDE2IGE4MmNlMTk4ZmU2OThjMmU1NzZkNDJlMmY5NWY5YjdhMWRiYmExYjIgbGVnYWN5LXRydW5rCisyNjAxNyAxMDcwMjNjMGM0NTZkZjNjMmM4MzI0OTQ1NTk4ZmEwN2VmZjZkZTI2IGxlZ2FjeS10cnVuaworMjYwMTggM2FhZGUxNTBlNzE3MjQ3YjM5YWVlMDQ2ODdkNmQ4OWYxMzEwZmFhOSBsZWdhY3ktdHJ1bmsKKzI2MDE5IGFmNzE5MTRkOGJkZjBkZmU1ZGI0N2Q5OTVmZDBhMDBhYmI4MzdkYmMgbGVnYWN5LXRydW5rCisyNjAyMCA0MDkzMTFjNzgzODM2NTNkNjgxMDk5MzE0YzA0ZDk5ZTFiNzdhZWNjIHJlbGVhc2UyMi1tYWludAorMjYwMjEgYmNjZDQ2MTNjNDk2YTMwYmIxYmFkNjQxOWNhNzg0OWJmNTllZjZkOSBsZWdhY3ktdHJ1bmsKKzI2MDIyIDQ2NDA3ZDBhNjAwMGY1ZWUyODhiNWFkOTQ4ZTQzMjBjY2E2YWU3MzEgbGVnYWN5LXRydW5rCisyNjAyMyBjMTZiZWE3OWY0ZGIzYjRlN2M1MWE1MTMzZTczMzk3NWFlMjQzY2M4IGxlZ2FjeS10cnVuaworMjYwMjQgMWFlYTdhZjA5MjYwZTdmMjE0ZjNmY2U1NGQyMmYyMDFjMmYxZjkxMSBsZWdhY3ktdHJ1bmsKKzI2MDI1IDlkMmE4ZjZiMDZiNmZiOWM0NWQ3NzZkZGRmNDE4Yjc3N2RlNTI1ZDIgbGVnYWN5LXRydW5rCisyNjAyNiBmNjNmMmJjOGJkYmE2ZjBkNWQ4ZTQyYTNlZGU3YjUwMzRiMzU3Mjg3IGxlZ2FjeS10cnVuaworMjYwMjcgNDVkYmZjZjBmYTE5ZmJjYjgwN2E1NmIxOWVlNzE1NWNjMWNlMDU1ZCBsZWdhY3ktdHJ1bmsKKzI2MDI4IDUzMmMyN2E3MzViN2I5MjViNjY4ZGQ5ODEzYWE5Y2M5NGU5ZjM0OTQgbGVnYWN5LXRydW5rCisyNjAyOSBkOTcxZDFlYjcyZjZlMjRmZmFkOWI5YTlmNmE5MDI0ZGJmYTdiZTI5IGxlZ2FjeS10cnVuaworMjYwMzAgM2UwZGE4NDkzOWQwYjMzNDA2YmNlYTA4MzYyYzYwZGRhN2EyZTRmOSBsZWdhY3ktdHJ1bmsKKzI2MDMxIGJmM2IwN2M2MmNmN2JlMjRlNDY5ZTNjNDE4YmE2NTQ3NGY2OGJhNjAgbGVnYWN5LXRydW5rCisyNjAzMiBmYzJlN2UzOTdiYzY2YmY5N2E4NjA5MDE3ZGViNDNkM2I5MjIwNWMwIHJlbGVhc2UyMi1tYWludAorMjYwMzIgNDA0NWU2ZTkyZmFmYWJhZDQyZjZjOTk4OWI2NzA3NmZiYWQ0NTJjYSByZWxlYXNlMjItbWFpbnQKKzI2MDM0IDg2Y2U5ZWUxNDA0NTBlMTZhNWJhYmZlMTRkMDNhNTdiNTZjNDAwYjYgbGVnYWN5LXRydW5rCisyNjAzNSBiOTY3NDBjNDJlODA3MGI3MmQ0MzE1NjQ1NjA4OTQ1OTEyODM2NTVmIGxlZ2FjeS10cnVuaworMjYwMzYgOTExZmUwNzkzMDUwNDY4MTMxYWE3ZDkyYzdkODY2YWNkNzc5Zjc0ZCByZWxlYXNlMjItbWFpbnQKKzI2MDM3IDU3ODExYzM1NWYzYWJjZWU1N2IzMzMwNzE4ZTY0MmM5ZTExYmY1MjEgbGVnYWN5LXRydW5rCisyNjAzOCAwYjU4ZWEwNzQ5NWNiMDdlYjhmZmNkOGZhZTRlODc4MmVlM2M2YjhmIGxlZ2FjeS10cnVuaworMjYwMzkgODgxYTZjMmQ1ZGIyYjhjZDZmYWJlOGZjYmJiMTkzNTZiOTdjOWEwZiBsZWdhY3ktdHJ1bmsKKzI2MDQwIDE4Y2ZlZjAxMWFiZTdlNjhhZjVlMGZiZGZjY2NkOGY4MWNjOTM0Y2MgbGVnYWN5LXRydW5rCisyNjA0MSA0ODhiOWIzZjU5OWFkNDEwZGIxYzEyNjc1OTdjODVmYTliZTQwYzkwIGxlZ2FjeS10cnVuaworMjYwNDIgN2MwY2NhYzk3ZjhlZmQ3ZDg1NjgxM2NlNGM4NTRkM2VmMzNmMTg2MSBsZWdhY3ktdHJ1bmsKKzI2MDQzIDEyMGU0YmEwNTUwYmQ3MDk3OTc5MjkxYjg5NzE5NWRkOWRlMmY4ZDcgbGVnYWN5LXRydW5rCisyNjA0NCA0NGJlNWU3NGYxNzI3YmU0NTU5MGNmMjIxZGJlYjg4YmY5NGNkYjI4IGxlZ2FjeS10cnVuaworMjYwNDUgNmYyZjFiMDRlODJlMGRjOTZkNzA1MTg5NzczYzQ4OGJjYzNkNDg4ZiBsZWdhY3ktdHJ1bmsKKzI2MDQ2IGZkMWI4ZWJlNGVhZTQ4YjZkNDdhMTg4MDMyNTM5YzIwZjYyMGJlYmEgbGVnYWN5LXRydW5rCisyNjA0NyBiNDU3NjM2NTM5ZTgwZDUxMTExYjBkOGY1NTY2MDJjOTViMDVlN2MyIGxlZ2FjeS10cnVuaworMjYwNDggZjhiZDkzMDY0NGFhMzQ0ZTU5NjllZmViOTRjYzYzNmM3MzE0NjBmNiBsZWdhY3ktdHJ1bmsKKzI2MDQ5IGVlZTMzNzJjMmY5NjJkNDg1NTI5MmFhNTRkNDcxNThmZTgwMDVhOGQgbGVnYWN5LXRydW5rCisyNjA1MCBjMDU5NmY4NGE4ZmIxNDliMzc4MzcwOWQ5NTE2MjhjZDZlYjE1MGI2IGxlZ2FjeS10cnVuaworMjYwNTEgNjE0MTY3ZGYyMDk2MGE2MmJjZGNmY2Y2MGZhZDlkZTk2ZjM0MWU1ZCBsZWdhY3ktdHJ1bmsKKzI2MDUyIDAwYjI5NzJhYjRhNGIxYTFiM2U5OGE2OTVmMmYwOTU1NWJlYmJkOWMgbGVnYWN5LXRydW5rCisyNjA1MyA1YWUzYzMxNjczZTRkZDY2MjFhN2ZmNzAzOGJkZjZlYWIxYzI5MWMyIGxlZ2FjeS10cnVuaworMjYwNTQgMmMwMmNmMjc4ZjAyODJmMTdlYzk1OWFkNmQ5ZmMxMzA2NTRkZDcxZiBsZWdhY3ktdHJ1bmsKKzI2MDU1IDU5NjE2NzY0N2JjZjU3ZGE0NjI1OWFmNjNjYjM1MDU0MzkwNTkwZGMgbGVnYWN5LXRydW5rCisyNjA1NiAxNzM4NzEyOTMwMzQ0YWEyNGM0MzEzOWNkMjk1MzNiZTVmM2UwNTFiIGxlZ2FjeS10cnVuaworMjYwNTcgZjA1ODNiMWU5M2FiMGY4YTUyNjNmNGQ2MzlhYzJjNDI4NjdhYjM3YyBsZWdhY3ktdHJ1bmsKKzI2MDU4IGZhMGYzNWY5NDRiNTYzMDBkNGFmYTk4MzBmM2IzYWJkNWYwNjdhMDIgbGVnYWN5LXRydW5rCisyNjA1OSA2YmI0Mzg2YjExMTEwMzM0NGNlODgzM2IzNzIxY2YyNzNiYmVkYWMxIGxlZ2FjeS10cnVuaworMjYwNjAgYTRhMWU2ZjU1NTMxOGFlMDIzNjMzMzU3ODkyMjA3MzFkMGQ4NWZiZiBsZWdhY3ktdHJ1bmsKKzI2MDYxIDM1ZjU4YzI5Nzg5OTY0NGNjMzc5MTZiNjFlNjkzN2U0YTkxMzY1ZjQgbGVnYWN5LXRydW5rCisyNjA2MiAwZWVjZTczYzEzYzA4ZGVhZDc0YTA5NWU0ZjgyZDFiZTFmZTBjYjI4IGxlZ2FjeS10cnVuaworMjYwNjMgY2YxYTA1Yzg2NTk1YzEwY2IyMGE0ZmIxNTMwNmNlYTlhZGE2NzU0ZiBsZWdhY3ktdHJ1bmsKKzI2MDY0IGYwN2NhOTk3MjMwNDA4OTI5ZDI0MzFkNTRjOWM2OGFjNjIzMzhhZGUgbGVnYWN5LXRydW5rCisyNjA2NSBlMGVlMDA5NDE3ZGYwNzNlZDFlNDBjNzllYzBlYjljZDAzY2NlYzM1IGxlZ2FjeS10cnVuaworMjYwNjYgMThkY2NkZjJjNDZkODAyNzRlYmJkZDljM2I5ZTM1NjVlNDU3MWY2MyBsZWdhY3ktdHJ1bmsKKzI2MDY3IDg3MDNkMjA1MjMzOTk4NjZmMjkxN2M1N2VjMjUwZjIxZGM3Y2NjYTYgbGVnYWN5LXRydW5rCisyNjA2OCAxNGViZDc2MTA5MDI2Y2FjYzdmM2QzNDc3MmE1MmE5NjA0ZDM3OGUwIGxlZ2FjeS10cnVuaworMjYwNjkgZGMyZjc0NWZjYzY3ZTgyYzdkZTQ0Y2VkZmQ0MmZjZjVjYWI5Mjg1ZSBsZWdhY3ktdHJ1bmsKKzI2MDcwIGFlYTZkZmVhYWFiODQxNjkyYzAyODhkMDBmNWNiMzEzZDczMmU3MTAgbGVnYWN5LXRydW5rCisyNjA3MSAzYWE0YmY3YWMzMWU5ODVmMzUxM2E4NjdhNDcxNzE1MDU5YzU3YTFmIGxlZ2FjeS10cnVuaworMjYwNzIgOGEyMjViZDg3NjNhZDBmZDYwYmRkMzc4OWFlZjllYTRlZDhjOTE4ZCBsZWdhY3ktdHJ1bmsKKzI2MDczIGNhNDY1ZTRkODhiYzFmNzJiYzM2OTM0ZWEzOTVmOTczNDUxMTkxZjMgbGVnYWN5LXRydW5rCisyNjA3NCBiMzgzZGZlMzZlZWU3ZGVhMzZmYjMyYTYyM2U5NWIxYTgwZjIxMDQ0IGxlZ2FjeS10cnVuaworMjYwNzUgY2M4YjczMDQwZTgzN2Q2YmVlMzA3MTE4N2UyZTg2ZDY5NTRhMDMwMSBsZWdhY3ktdHJ1bmsKKzI2MDc2IGNlY2E2Y2M0NDQyMDhjMTA4Y2Q2OTg3ZTI4NDI4MmQ1MDE4MjZlYWYgbGVnYWN5LXRydW5rCisyNjA3NyBlMGVkZmVlYTUxODNiNDYzMDE3MzcyNjgzYWY5MDgyNzUzYjYxNzZiIGxlZ2FjeS10cnVuaworMjYwNzggMjJmZGI0MTZiYTJmMWI0MjlmZWE3NjIwM2Q2YmZjMTEyMmJlYzkxNSBsZWdhY3ktdHJ1bmsKKzI2MDc5IDBiZGQ0MTNhMzQxNjliNDY5NDk2MWIwOTM5MjJhNjE5OGRmNTQyYzMgbGVnYWN5LXRydW5rCisyNjA4MCBjM2Q2MzczMDg5NTRhMzEyM2RjYTg3YWZhMzlhNTMyZTcwOTVhYzZlIGxlZ2FjeS10cnVuaworMjYwODEgZmEwYWM4NDU5MjliMjFlMGVjZTY1YTBhNmI3MzMwOWZiNmE5NWViZiBsZWdhY3ktdHJ1bmsKKzI2MDgyIDZjNGIxOTMwMTZjNjc1YzFjNTAzMGMzMTc2NzlkYWE5MDRkNDgwYWYgbGVnYWN5LXRydW5rCisyNjA4MyAyNTNkZTU4OGYyZmI2NWUyZjE3NGNkZGQ5MjNhZWY4MjU2YjY3Yjc5IGxlZ2FjeS10cnVuaworMjYwODQgYmE2OGRkYTE1ZGYwNjg3ZWNjYTEyMmU3NmIxMDNkYTZiZjBmZTI0MyBsZWdhY3ktdHJ1bmsKKzI2MDg1IDFlMzA2MmU2OWYyY2MxMTAzNTlkMTU0ZTYyYzJlYTdkNDE2OTRiYzcgbGVnYWN5LXRydW5rCisyNjA4NiA5YmFhOGM5YTFlODQzYTk4MTM5YmVjYjY5NTkwODVkOTM4YmFjNmFjIGxlZ2FjeS10cnVuaworMjYwODcgZmE5NTU5YzViMTAzNzE1MzI2NDM2YmEwZjU0Njc2MmQ1Y2Y5YjJkZSBsZWdhY3ktdHJ1bmsKKzI2MDg4IGM4NDExMGYwNWRjMzZjNDcxOTc2MDFmNjllZTYyM2M5Y2I1ZjViM2UgbGVnYWN5LXRydW5rCisyNjA4OSAwOTczNjkzZTRhZDIxZDY4OGIzYTQ3NzcxOWI2YWY1N2U1MGVhMTE3IGxlZ2FjeS10cnVuaworMjYwOTAgMTRiNzk4NmE5MmUxMDM4ZmE5MDJjNDA2OTE2M2U3MGFkYTZjYmExNCBsZWdhY3ktdHJ1bmsKKzI2MDkxIGNkZmYzYzdjMWE3NjQzNzkxMGY0MTljZTA0MzVjYjlhZjFjZjc4MmMgbGVnYWN5LXRydW5rCisyNjA5MiA2OTMxZGJkMmVkYjQyMWRiNTIzZTJiOWNlNmIwNzkzZGZkOWRhYWI0IHJlbGVhc2UyMi1tYWludAorMjYwOTMgMGI2NDU1MGE3NDYxMTVjNDdlYjZlODM0MmZmMmMzYWI4ODRiMGE3NSByZWxlYXNlMjEtbWFpbnQKKzI2MDk0IDAwMTU0YTBmZGU2MTc1YTRjODU0ZGY2Yjc1N2IzNDgwN2M1NjRjMmEgbGVnYWN5LXRydW5rCisyNjA5NSBkMjQ2NzAzODRjMzljZDI2MGM0MGVmZmZiYzM2N2NhMzNlZDVkNGYwIGxlZ2FjeS10cnVuaworMjYwOTYgMWFlNDIzMjYyZmM5ODY4MTVlZDk2OGFjMTljNjc4OTA0YmRjNjQ4ZCBsZWdhY3ktdHJ1bmsKKzI2MDk3IGYwMmVhOGU4MjRiMGMxMzc4OGUxZTE0M2JkNzYxMjI4NTNjM2Q3ZjAgbGVnYWN5LXRydW5rCisyNjA5OCA3M2U4MjcyMmIwM2MzOTJmMTU2YTFhYjA1OTdkNjNiNTlkZDRiN2U5IGxlZ2FjeS10cnVuaworMjYwOTkgODEwYzE0ZjI0MzczNmQ5MjJiNzIwMzNhZDFkOThlYjAwZGQwNzRjYyByZWxlYXNlMjItbWFpbnQKKzI2MTAwIDgyNmJjMTUyMmQyMjEyYzNmNGViMzAwMDc5MWJhNDZkNDBkYTc0YjEgbGVnYWN5LXRydW5rCisyNjEwMSBlNDQ5YzgxYzFjMDFmNGUwMmM1MGU4YmMxNTZjMWUxM2UzOWNiYmQwIGxlZ2FjeS10cnVuaworMjYxMDIgMjcxZDYyMWYwZTlmZGYyMmRhODNhODI4Y2MxOTU1MWJkZTQ4NjAwYSBsZWdhY3ktdHJ1bmsKKzI2MTAzIDc3MWIyYThkNDQ1ZGMzMjFhZDU3M2Y3OWIzY2Q4ZGI3ZDIyYWVmZjkgbGVnYWN5LXRydW5rCisyNjEwNCBmNTFiNzc4ODQwMTI4N2VmZTNlZjZlNjdkNmNlYzc5NGY2Y2Q0ZWFjIGxlZ2FjeS10cnVuaworMjYxMDUgNzM2MWVjODgxODhhOTFlMWExZThjNGJkNGZlM2Q1ZGRiZTU1Yzk2ZiBsZWdhY3ktdHJ1bmsKKzI2MTA2IDI4MGU3YTIwZTMxYTVjODY4MzRhYmU0YWE5YzIzMDliMWY5NGM5ZDcgcmVsZWFzZTIxLW1haW50CisyNjEwNyBjMTE4ZDA5NWJkZGViNWRiMTczNmNkYWZmZDIyZDVjNzhjM2ZjNzVjIHJlbGVhc2UyMi1tYWludAorMjYxMDggZmVlMmY2NmYzYzE2NWVmMGMxNjE5MTRmYzJiYWUzOWVmNjUzMDI2OSBsZWdhY3ktdHJ1bmsKKzI2MTA5IDFiZGYyMTdiYWQ5MzA5Yjc2NjkxNmE0OGZhMGU3ZGZmY2JjMTBlY2QgbGVnYWN5LXRydW5rCisyNjExMCAyMjI0YWZjNjNhNWJiOTYzZmYzNTE0NDRkZDI0NGQxMDA2OTdiNDRkIGxlZ2FjeS10cnVuaworMjYxMTEgNTNlZDlkZDZiY2Q1ZDQ5MDllNzk5NDM2MGYxZDgxMDdiNTRiMzk2NyBsZWdhY3ktdHJ1bmsKKzI2MTEyIDUyMjQwNWFiMzVjMWFkMmM2MjI4YzA1NjI2ZDZmYzhmYmZhYThjYWEgbGVnYWN5LXRydW5rCisyNjExMyA0YzEwZjE2OTI1MjMyNjQ1NzlkMTYwYmZiNjdkNDllNDIzOGE2NmYwIGxlZ2FjeS10cnVuaworMjYxMTQgNDA4MWVmZjkzMmZlMjg3OTI2YjNjYzkyMTIyNTk2NWRlYzI5NTlkOCBsZWdhY3ktdHJ1bmsKKzI2MTE1IDJhYTk0OWQwMmQ0MDUzMjhkMzEwNGM0MjU3MjM4Njk5MDE4OTFkNjAgbGVnYWN5LXRydW5rCisyNjExNiBjYjVmY2EzY2U3OWE5ZmE3OGM2YTcyYTc5MDg4ZjA3ZDVhMWNkZmQ1IGxlZ2FjeS10cnVuaworMjYxMTcgZmQ0NDk5OWU3ZWFkNDIxN2ZkNTEzZjUwODVkYWRmNTkwNjIxNTRkZiBsZWdhY3ktdHJ1bmsKKzI2MTE4IDY4NzFlNjc0NWFhNTQyMTBhOWIxMDJjZThjYTNjNDc1NDhiZTNmMjggbGVnYWN5LXRydW5rCisyNjExOSA2ZmE0NmMyMTc2NmQ5MjMxZGRhYThkYzdjYWFmZGE3NDFiZjYxNDg5IHJlbGVhc2UyMi1tYWludAorMjYxMjAgZTcwYzliN2FhZjNkNjg5NjRlMWZjM2M5NjJlMjU0NzU0ZTVhNGRmMiByZWxlYXNlMjItbWFpbnQKKzI2MTIxIDg3MTk4NjYwMTRhYjM2YTkwOWY3NTYwYjI4ZTQ2NDJhYTYyMTBjNjMgbGVnYWN5LXRydW5rCisyNjEyMiA5OTMxZjE1NGJlOTg4ZjVkODhkNGU5ZWQwYTg2NWRlOWQ3MTcyYTlmIGxlZ2FjeS10cnVuaworMjYxMjMgODE3YjQ5NGM5YjVlNDk3YjRmZDAwMzc5NzBhYzBhNGUyYTJhYjdhNCByZWxlYXNlMjEtbWFpbnQKKzI2MTIzIDViNTQ2NDBlNzJiNjZiOGMwODU3OTVlMjhlZjc1NmQ1OGI5NTVjNmMgcmVsZWFzZTIyLW1haW50CisyNjEyNCBhNzg4NGQ3ZDJkNDg5MDBmOTVkMmQwZDQ2YWY5MzRkNDQ5MzE5MTI4IHJlbGVhc2UyMi1tYWludAorMjYxMjUgMzQyODIyOWYxMmJiMTlhMjg2OWMzM2ZiNDJlMDllODUzNDJjNzQ1ZSBsZWdhY3ktdHJ1bmsKKzI2MTI2IGFkM2NlNzMwMTZiZmFhMWJjNmNjNWU2Njc3YzllNzY3MzYzYWQxYzAgbGVnYWN5LXRydW5rCisyNjEyNyBkMjZkODU3NWFjNjIxY2YyZmM4ZWQ2Yjk4MmVhYjMyOWJlNGU4Zjg0IGxlZ2FjeS10cnVuaworMjYxMjggNTRlYThhOTNlY2Q3ZTYyMTk3YjNiNmYzMzJkZWNhZjhlYzIzYjM2YSBsZWdhY3ktdHJ1bmsKKzI2MTI5IDNhNTA2NTAwNWZjZmQxMjExMmFhMmIzMmNkMzY1YTU4OGE1NTk1MTQgbGVnYWN5LXRydW5rCisyNjEzMCA5ZjUwOWU0OTBmY2M3OWNmZmVkZGIyZDRmNWYzZDYxZWI2YmYzMDhlIGxlZ2FjeS10cnVuaworMjYxMzEgMzE0ZTE0MTZhYTVkNWY1ZGNjZTYwMWI0YTU2NmUxOWE2NDJjNThiOSBsZWdhY3ktdHJ1bmsKKzI2MTMyIDI2MGExNzIwZjYyOWM0ZmYzNzAxYWI0YTRkNjYyMzY2ZDY1YWUxNTggbGVnYWN5LXRydW5rCisyNjEzMyA1OWQzOTEzYTI5YzQ0MzkzMjNjNzQxMGE3YmI2NDhjOWVlYzI0ZmM5IGxlZ2FjeS10cnVuaworMjYxMzQgYTZmOGUxMjg2YjE1NTZlZGVlYmQ1MTIzYWUwNGQ2NmQ3NzJhM2I2OCBsZWdhY3ktdHJ1bmsKKzI2MTM1IDAyZmRkZjdjMjVjMmRlM2UzMmJmMDc4MTgzMzI3YjM1MDNhMGYzYjkgbGVnYWN5LXRydW5rCisyNjEzNiA3NGRlODY0MTgyODQxMGUyNTYyZGI1N2Y3MjY0NmNmNWQyYjE2YzE4IHJlbGVhc2UyMi1tYWludAorMjYxMzcgZDZlZjk1N2JmMjkwZmM2ZTY1ZjcxZmQ3MjM0MmM2OTQxNjFjYTJlYSBsZWdhY3ktdHJ1bmsKKzI2MTM4IGE2YThjNjllYzBlN2M1OGUxM2I5MGNiNWJhZWVjZWZhNjNjYzUzNjcgbGVnYWN5LXRydW5rCisyNjEzOSAzNjE4NmFmM2MxMjUxNjRhNzBlYTFmYWQyYTU3YTk3MjcwZTZiOGNhIHJlbGVhc2UyMS1tYWludAorMjYxNDAgMTQ5ZmJiYjAzOTE1NzViNWY4ODViN2M5MmUwNzI5ZDk2YWNlZmE4NSByZWxlYXNlMjItbWFpbnQKKzI2MTQxIDVmN2Q3MGFiNzRlZWZmZGZjZGRlNzIxY2RhNWZhZWI3MTVjNGFlZTggbGVnYWN5LXRydW5rCisyNjE0MiBlYzY3ZmNlM2ZhM2NlZDRhM2M4ZDhjYzQ4Yjk2NTcwZmYyZmNkZmJmIGxlZ2FjeS10cnVuaworMjYxNDMgZDk5YTFkZGY5NTE4MDUxNzhkOGYxODVhN2YzMjZhODJiM2ZhMWJlMSBsZWdhY3ktdHJ1bmsKKzI2MTQ0IDAxYzVhZTZmYzViYmJhM2E3ZTFhYTE1N2M2NmQxZTU1ZTkzZjMwZGUgbGVnYWN5LXRydW5rCisyNjE0NSAwYjJjMDg3NTQyYmNiZmYzNzA0NjIyMzQ5YWJiOWQ5YzViNWIwNmJjIGxlZ2FjeS10cnVuaworMjYxNDYgYWE4ZDU5ODIzYWRkMWE4ZTdmN2U4YTdmZThjN2Y3MTBhOTdlM2M4YiBsZWdhY3ktdHJ1bmsKKzI2MTQ3IGE4Yzc1Y2Y3NGRjMTQxMTJjMGVjODBjMmMyZGJmNjVhZmM3MzlkYTggbGVnYWN5LXRydW5rCisyNjE0OCAwMjhlYmM4ZmIzOTA4YThjZGI3YTk0MGJlMWExYzQ1YzQ0MTcyODY4IGxlZ2FjeS10cnVuaworMjYxNDkgMjIzOTZmNzdjMzU2YWEzMDlmYjhmMDIwYTY4OWQ4NDM5YTQzM2I5MSBsZWdhY3ktdHJ1bmsKKzI2MTUwIDk3YTM0NjQzZTU0NGE5NzA1ZGRkZDQ4NzgxZDgyMTgzMjEwNTExMmYgbGVnYWN5LXRydW5rCisyNjE1MSAwNjY2OGQ4ZDkzNDNmNDY0ZDkxMDhkM2QyY2FiYWU0ZjU4YjM5YjY1IHJlbGVhc2UyMi1tYWludAorMjYxNTIgOWFjYWI3NmIwMDE3OGQ2NDg3ZDY0Y2IwMGQyZWE4NTAwM2EzYTM0YSBsZWdhY3ktdHJ1bmsKKzI2MTUzIDE5MjI5MTVjYjczZDdhOGFjY2M1MWZmOTVkNTQ4ODA4MTllZjZmNjIgcmVsZWFzZTIyLW1haW50CisyNjE1NCAzYzg3ODE0OTJkMWZkYjhiYTM5NTBlMmU5NGE0Zjc1ZWViMmU0YTdiIHJlbGVhc2UyMS1tYWludAorMjYxNTUgZjY2M2ZmYmU5ZTVjNDBkNGEyYWM1OWU4YTg4ZDVmMDhlYTkyYjhhZCBsZWdhY3ktdHJ1bmsKKzI2MTU2IDRlZDA2ZjhhYWRkMzc4NjMyODhlMzZkYWE2ZWUzMTZlNGJlOWJhZjIgbGVnYWN5LXRydW5rCisyNjE1NyBhYzVlMWQ5MDI5Yjc5NDUyNmM3ZDMyMDgyYzdlMzA4MGQ5YWU4ZTExIGxlZ2FjeS10cnVuaworMjYxNTggNjkzZTAwMTY0MDgxYWVkY2NjOGNmNDc1MDJmODg0OGU4Y2I2ZjE1NSByZWxlYXNlMjItbWFpbnQKKzI2MTU5IDBlYjgzYWFjZTA3MTY2N2RhOTVhODMyZmRlYWFhODZmMzZhZjM4ZWMgbGVnYWN5LXRydW5rCisyNjE2MCA1OGIyZjQ2MjZiNjRkNzhhMWYxODQ1ODc2MjQ3MWY4NDU1ZGQxODlhIGxlZ2FjeS10cnVuaworMjYxNjEgMjEwMDg4N2I0N2NiYjliZTJjZmVjMWYzYzhiNmFjZGRmODFmMDg1ZiBsZWdhY3ktdHJ1bmsKKzI2MTYyIGYwMjc3MTQ2YWExNmRiNjQ5ZjdkM2Y5YTcyZjliNWFhNDQ4ODVmOTMgbGVnYWN5LXRydW5rCisyNjE2MyAxN2ExNzUxYWQxZDkwMjFmZWE4NGExOTYwNWMzODk5YjdkZmRmNzdkIHJlbGVhc2UyMS1tYWludAorMjYxNjQgMjFmMzUzMTI0MTQ1YzQzYTM5MjFjODIyNWU5ZTU1NzMwNWNmOWFmZiBsZWdhY3ktdHJ1bmsKKzI2MTY1IDc3MzQzYWEwM2UyZjM2M2M3YjQxMDQxNjEwZjc4YzgzMzRjYjYxZjUgbGVnYWN5LXRydW5rCisyNjE2NiBmMWFmOGFkMTEwMDBhMDg5YmUwZjlmZGI1YmEzNzJjMTk4MmMxN2EzIGxlZ2FjeS10cnVuaworMjYxNjcgYzgxNWUwMDNkYmNkOGJkNWMwY2U0NTg0NDExNGY2MTdmNjU2YmU0YyBsZWdhY3ktdHJ1bmsKKzI2MTY4IDg4MmVhNWNjNzY4N2FiYmU4ZjRjNzBjMDI0ZDg4YThlM2FkNDMyOTcgcmVsZWFzZTIyLW1haW50CisyNjE2OSAzMzM3YzQxYzEzMmIxMTRhOTRjNTJiNTBjMTg0ZmQ5ZjJjODAyNDJhIHJlbGVhc2UyMS1tYWludAorMjYxNzAgMmI3MDI1YTIzMmUxZjdmNDk0Y2M5OWIzM2NmYjU4OTMyYTZkM2UyNCByZWxlYXNlMjEtbWFpbnQKKzI2MTcxIGEzYmYyYzk3ZTgwOGU0MTY0OGQ2NGIxYTVmYTY5M2YxMWI4OGY3MTMgcmVsZWFzZTIyLW1haW50CisyNjE3MiBkZDg5ODhjYTRiMTQ2NmQzNjdhMThmY2MwZmVhODYwNTYxNDUwNmRhIGxlZ2FjeS10cnVuaworMjYxNzMgMTJiMDAzYmU1ZDk2YzUzODk3NzA0N2EzMmY2ZTVhMWZhZTdjMmNkMSBsZWdhY3ktdHJ1bmsKKzI2MTc0IDUzM2NkNTE5NzU3NWRhNzdjMDdmMTFhNjZhNWQzNjIzYjA1OWZlNzAgcmVsZWFzZTIyLW1haW50CisyNjE3NSA0M2VlNzM3YTFiN2YxMGFhYTBhOWJkNTkyMjhmMzdiNjg5ZGYzY2Q3IHJlbGVhc2UyMS1tYWludAorMjYxNzYgMzUxNTc2NzEyM2Q4YzhjZTUzOGZhMmUzNTFmNmQ4NmVmYWExN2IzMCByZWxlYXNlMjItbWFpbnQKKzI2MTc3IDM1Yjc5ODQzODUyN2ViNjJmZDc2MmI2YjQ1ZjViOTg2MDdhNGFkZmIgbGVnYWN5LXRydW5rCisyNjE3OCA2YWZmZmZmMWZmZjFlZWE1N2ZlZDAzMjI2YTQ1OTUxNDZlMGZhNzg1IHJlbGVhc2UyMi1tYWludAorMjYxNzkgNDNjZWUxODE4MjQyMGExY2M2ODUzYzYwMzI5Yjk1NDRmNTRmZTYwOCByZWxlYXNlMjEtbWFpbnQKKzI2MTgwIGMxYWVjNjMyNGFkNTRlMGE4ZTUyNjJmZTNjZTNiMWE2YTI3NDg2MWEgbGVnYWN5LXRydW5rCisyNjE4MSAwYWNmNjgyMGQ5ZTM1MTAzMzU3M2I2NDg4ZWE3NmU2M2EzZTA3MzIwIGxlZ2FjeS10cnVuaworMjYxODIgNDJjYzg3YzQwMTAzNmIxZjMwNjdiOTVmNTU4ZmJhYWRhYTVjY2Y5YSBsZWdhY3ktdHJ1bmsKKzI2MTgzIGM1NmVhYWQzYTBiMzlmMmFlMGY1MzgyNjUwNDJlNjJiYmU1ZjQxM2EgbGVnYWN5LXRydW5rCisyNjE4NCBmODlmMjAxMDg3ZWE2NzVhNTExYjg5YjJhYjI2Yzc3NWZhZmIyYzIyIGxlZ2FjeS10cnVuaworMjYxODUgZjY4ZGRmN2YyMWY4NGE1YjVlMGUyNDJlZDczYTc0NzVjOGYwODE2MiBsZWdhY3ktdHJ1bmsKKzI2MTg2IDhiYTQ5OWVjYzZjOTEyNGM2MDQzYWViNmZlMzI1Mzk0MmQ5OWFiMTggbGVnYWN5LXRydW5rCisyNjE4NyAyOTU1MWY3NDdjMGVkOWQ0NjcxOGQ4NDRiOGVjYzlhYWFjOTZmNzY5IHJlbGVhc2UyMi1tYWludAorMjYxODggM2I2ZjQ4YjU0NjY2ZWNmYTEyMWVhMTY5NjZhNGI3MzQwZjczMmQ5MyBsZWdhY3ktdHJ1bmsKKzI2MTg5IGFhZjU3MmUzMzRjM2M4YmEzOTQ5ZGFhMTM2YWNiM2I0ZmJmMjM1YzYgcmVsZWFzZTIyLW1haW50CisyNjE5MCBkM2NmMzgzZGYwOTZjMmM4Y2U2NTQ1YzA4NDM3MjMwZTM1NzMzOWZmIHJlbGVhc2UyMi1tYWludAorMjYxOTEgYTlkZDVlNmQ2ODA1NjNlMDc4NjNkNzRmN2Q1OGMyODAzMTE3NWYwMyBsZWdhY3ktdHJ1bmsKKzI2MTkyIDNhZjhhYjFiMDVmYzdmMTI5MDIzNjZmMTNiN2VhNTg2MTdhNzNiYzUgbGVnYWN5LXRydW5rCisyNjE5MyA1ZWRhN2RiMDA3ZDZkNzhlNjgxMTkxNmUzMDVjODM2YzA1NWM0YWUxIGxlZ2FjeS10cnVuaworMjYxOTQgYzg2NWNmOGJlZTQwZDY5NTFiMDMyMWQyNjBjZjEzMjg3ZDMzZmRkMCBsZWdhY3ktdHJ1bmsKKzI2MTk1IDA5MDg3MjllOTRlMGYxNWYxZDZkODcwMDE1OTc4ZTY5ZjM5YWI2ZmYgbGVnYWN5LXRydW5rCisyNjE5NiA3M2QxNDViZmQ4ZTQ1ZTBiMGNjMTg5OTZmNGY0MWY4OGY1YmRhMmY0IGxlZ2FjeS10cnVuaworMjYxOTcgZjFmNTdiZjA5MDkyZWJlNmMyNjk5MzNjODc1OTUwZTE4NzkzMjliMSBsZWdhY3ktdHJ1bmsKKzI2MTk4IGVmMmZiY2U3MTczNjlkZmNlMDgwNzUwY2VlMjNmNGU4ODgxYjY3ZjIgbGVnYWN5LXRydW5rCisyNjE5OSBkNzUzMTMwNzQzNTU1MWEwZGI1ZjU4NzIwYTcwYjQ5ZjAxZGFhYTBhIGxlZ2FjeS10cnVuaworMjYyMDAgMmVkZGNlNDRiM2JlZGJjNzEyMDUxMjg1YmZkY2U5ODg1OTVjMzlkMyBsZWdhY3ktdHJ1bmsKKzI2MjAxIDE4Njk2ZmMzNTA2MmY2MmFhNDBjMTM4NDkwNDFkZGMwNzI0NWYxMDkgbGVnYWN5LXRydW5rCisyNjIwMiAzOWVhMDlmZjU3MzRlY2NkZjFjNjI3MmU1ZjE1MmIzZmRkYWM4ZmZiIHJlbGVhc2UyMi1tYWludAorMjYyMDMgMDc5YWJlMDVlOGJjODFjM2Q4YjkyNmVhNWJhZWMxMTkwNzdkMzFmYyByZWxlYXNlMjItbWFpbnQKKzI2MjA0IDM4Mjc5MWRkY2UxYzE4MzJmMDUwZjVlNmRiY2ZmOTA2YmUxNzY2YTIgcmVsZWFzZTIyLW1haW50CisyNjIwNSAyMTZkYWQ3MjA5YmM3MDEzMmNhMjI5YjkyMGQ5NGFiMjQ0OGViNzIwIHJlbGVhc2UyMi1tYWludAorMjYyMDYgZDcwMjk2Nzk0MzVmN2VjMjkwNjBjZTE4MDU3ZTE0M2U5NDU1YmRlMCByZWxlYXNlMjItbWFpbnQKKzI2MjA3IDY4MDcxYTcyNjk3MDZiODFiYTU3OTUxNjY0NGMwMzFhZGI0YWNlZDIgcmVsZWFzZTIyLW1haW50CisyNjIwOCBmNjA5M2JhYzlmYjY0ZmUzNGYyNWI2ODRmNzVlNjRhZjc3NjRlODc1IGxlZ2FjeS10cnVuaworMjYyMDkgZTU4OWU0NzNmMjMyZmJmNzdmODllODQxOTc4MDFkZDc5OTVkNDBiYyBsZWdhY3ktdHJ1bmsKKzI2MjEwIGQ2ZDY0MjM5YWEwNTE1OGEyZjc4MzYyYjZjOGI2MjY4MzBkMTY5OGIgbGVnYWN5LXRydW5rCisyNjIxMSBmNjYwMGIwZGI2ODhhNzc2ODBjMDAxZmYwZjdlNTBmNzQ3NzQ4Y2M4IGxlZ2FjeS10cnVuaworMjYyMTIgZWQwMzgwNmQ4OGNkYzk3MjllZjAwNWI5MGQ0Y2ExZjI4MGI2MzRlNiBsZWdhY3ktdHJ1bmsKKzI2MjEzIDZlOWMwZDliZGQ3ZmQ0YTYyNDE3ODdmNDRjZWZlNGE3ZmU1YzJhMWMgbGVnYWN5LXRydW5rCisyNjIxNCAxODhiMGZhMjgwMDdlODZhOThlNTEzNWMxZjAyNWJiNDQ5MjYzMjZlIGxlZ2FjeS10cnVuaworMjYyMTUgMzJlZWM2ZDc5YzkzZjJhYjUxMjYyODE1MGQ0MzZlYjg5ZmRiYjMyNyBsZWdhY3ktdHJ1bmsKKzI2MjE2IDQxNmRiOGQ5NjIxNmI5MTFlYzhhOTU1NGY3NWVjMzNhYTQyNWFjMzEgcmVsZWFzZTIyLW1haW50CisyNjIxNyAyNzNmNTFmNTIwMDAxOTE3ODQ2ZDQ1ZDJlYzgyZjFiZTEwNTBhMzNkIHJlbGVhc2UyMi1tYWludAorMjYyMTggZTI0YjhkMGI2NDcwNGIxMGNlM2IxNTA0MDhiMjE0ZTNkZGJmNzE3NyBsZWdhY3ktdHJ1bmsKKzI2MjE5IDIyZjdlZjdiYTcyYmE0NWNlNTY5MTU5ZGVmNzdkM2Q0NTYxODJmNjggbGVnYWN5LXRydW5rCisyNjIyMCBiYmYwNWFmM2MxOTEzOGQzNTcxNzI1Mjk0Y2Y2ZDIzZGE1ZGE2NzQ0IGxlZ2FjeS10cnVuaworMjYyMjEgMDQzNjdjZmY4Njg5NWY2Y2NiNTgwZjcyZTIwMWNhOTcxYjkwOTg1ZiBsZWdhY3ktdHJ1bmsKKzI2MjIyIGE2NTI3ZDFlZTQ3NDI4YWI2MjI1NjlmMTc3YWJlZDI1ODZlZDQ5NzEgbGVnYWN5LXRydW5rCisyNjIyMyBmOTIzNmNhZDY5ZTYyODBmYTg3NzI0YjdjNGNmZjQ0NjU4NTg4NGY0IGxlZ2FjeS10cnVuaworMjYyMjQgNmY4YTVhZDM5ZTZmZTcyZTFmMGUxMDg1ZDBjMmU1YTdkNDE1ODRjNyBsZWdhY3ktdHJ1bmsKKzI2MjI1IDY4MDRlNDhhMDAzM2I0NjY0NWI4NzhjZDFhNDkxZWM2NjE3NDVmMDQgbGVnYWN5LXRydW5rCisyNjIyNiA3MDE0OTIxODIwYTUxY2QxYWVlYWQzZDFkYTQzODI0NWFkMjM4ZjUxIGxlZ2FjeS10cnVuaworMjYyMjcgYTU2MWZmMWI0ZmZhMWZiYTk3OWUzMzEyZDE3Y2Q3ZDU5YWJkYmE1ZSBsZWdhY3ktdHJ1bmsKKzI2MjI4IGUyZjIxODdjM2QyYzFjYTc5OGVhZjk2OGFiOTUxMzYyNTI1MDRkZDkgbGVnYWN5LXRydW5rCisyNjIyOSAwMGU2NDBlNjgwYmQyOThkYzc3MDk3YzhlZTdkNzc0MTBjOTAzNjU2IGxlZ2FjeS10cnVuaworMjYyMzAgYjFmYTkwZjhiNmMyMTIwM2QwYmYwMzZkYjYyYTc0ZjBlZTk5Y2Y2MiByZWxlYXNlMjItbWFpbnQKKzI2MjMxIGM5MTYyNmQxZjQxMWYwY2JmYTI3NGFmYTE1YjBjMWM3NDVkMzAzNzAgcmVsZWFzZTIyLW1haW50CisyNjIzMiAyNTI0MzhiYjA1ZDk3YTg0YWQxZDg4MWNhNTJiYmFkNjg1NjlkZjEwIGxlZ2FjeS10cnVuaworMjYyMzMgZDQ2MmM3OTBjYzViZDc2OTc4N2Y5YjgxYjc0M2NiMzNlN2JiNzdmMyByZWxlYXNlMjItbWFpbnQKKzI2MjM0IDhkMzM3YjNiNjU1YTNhYTYxNzhhMjY1YjkxZWFjZDk0OGE3NmU5MGQgbGVnYWN5LXRydW5rCisyNjIzNSBjM2U5YTA1MmUyNjhhMDA3MGRhN2IyYTYyOWI3Y2E5ZDU3N2UxNDExIHJlbGVhc2UyMi1tYWludAorMjYyMzYgZTNkZTlkMTlmYWFhZmM2Y2Y4YTE4NDYyMTY2MmVjNmRmYzIyMDRjNiByZWxlYXNlMjEtbWFpbnQKKzI2MjM3IDFhM2IwODY2M2ViZTAxZTdiZjc5YTE2NjA1YzI3MmE0YjE5NDhhYjEgcmVsZWFzZTIxLW1haW50CisyNjIzOCBhNDFhMWUwMDUxYzVkNmUyMDJkZjI5ZDk1NGFlOTFkNzFkNGYwMjlkIHJlbGVhc2UyMS1tYWludAorMjYyMzkgM2E2NzE4YjliNjVhODM4YjI4NzZkNjlkMTExMWZkOWI2ODNmZmFhYiBsZWdhY3ktdHJ1bmsKKzI2MjQwIGUxNDIzZWM5ZTZlYzM2MmQwOTY3YTc1NDQ3N2M0YjdlYmI2MWQ5ZmMgcmVsZWFzZTIyLW1haW50CisyNjI0MSAzODlkNDI5YWRhNzJjNmQ0N2UyM2ZmMzczMmFmOWJmNjIxYTY2N2E4IHJlbGVhc2UyMS1tYWludAorMjYyNDIgNzkyODc1MWJmZGVlNTE4N2FiMzliNmI4OGE0YmIzODUwYTIwOWI4MyByZWxlYXNlMjEtbWFpbnQKKzI2MjQzIDViZTA2NzdkODEwZDAyNmE3OTU1NmQxYWQzOTc4MmQ3Njk2ZmQ4YjIgcmVsZWFzZTIxLW1haW50CisyNjI0NCBkOGJjNjhjYjE3ZTAzNzAxMjhiOWRlNGYzNTBmNDE0YTIwMjAwODA5IGxlZ2FjeS10cnVuaworMjYyNDUgNWQzODMwMDZkMzZiOWQzNjRhNTI0MmMwNjk0MmUyNjQ5ZjUyZTNkOSByZWxlYXNlMjItbWFpbnQKKzI2MjQ2IDI4OWVhMWQ1YzVhY2NjZGMxOWRmYTZlNzc2Nzc2MjRhYThhNjBiYTQgbGVnYWN5LXRydW5rCisyNjI0NyBjMGRkOGJiZGRlNjA0MDgzNDc5NWQ2NWEyZWE2YTQwM2EyOTE2OTZjIHJlbGVhc2UyMi1tYWludAorMjYyNDggZjk3NDczYjM0MGE1ODAzY2IwZGNjZjc2NGU0MzUwNzQyZWJjZDdjMiByZWxlYXNlMjEtbWFpbnQKKzI2MjQ5IDJiM2E2YTg0NGJmZmRiYjllOGRlODUzZmVlNTM1ODY0NjQ5MTExODQgbGVnYWN5LXRydW5rCisyNjI1MCAxNzBmYjViOTQ3M2Y4YTM0MjRkMmE2MGJkNjcyNDQzMTcxYzAwY2Y2IHJlbGVhc2UyMS1tYWludAorMjYyNTEgYWY3MmQyY2YyYzU1ZWI4ODQ5MDA2ZDBlMDAwNjVhODEwYWM1MWQwOCByZWxlYXNlMjEtbWFpbnQKKzI2MjUyIGI4MWQwZTg5MDQxMmNjMWFmMmM0NTIwMmEyODkxM2Y4NDM3MWFkMGIgcmVsZWFzZTIxLW1haW50CisyNjI1MyAzM2IyYTg5YmY0YTZhNWIyNjdiNWQxODNlMjU4NTM2NTcwODZmZGEzIHJlbGVhc2UyMS1tYWludAorMjYyNTQgMWEzNzU2NjFjYzk3MzI5NTAxMDRkMjA1ZTRjNzg4MWJhMGM0Zjc5NyByZWxlYXNlMjEtbWFpbnQKKzI2MjU1IDU3MGE3ODAyNzlkMWE0NjFiZTY0MmUzYjc0YTExY2JhMThmOWVlOWEgcmVsZWFzZTIxLW1haW50CisyNjI1NiBiNWFhZGU5N2Q3MjNmYThhNjNlN2IxOWJiMTYzMGRjNjFmZTJjNzBmIHJlbGVhc2UyMS1tYWludAorMjYyNTcgN2Q0MGI2OTFkYmE3NjM3Y2NiZjc3YTEyOTNkZDIzOGUzNzJlOWJhNCBsZWdhY3ktdHJ1bmsKKzI2MjU4IDhiYWNhNGVjZTY0NTUzNTI3MDdhYjZmYWYxMTEzZDBhZDUyNjlkMGEgcmVsZWFzZTIxLW1haW50CisyNjI1OSBlYTQzNTIzYjViZTc2MjdmNGJhNjIyYjc4YTk4NzhhZWYzNWNjMmQ4IHJlbGVhc2UyMS1tYWludAorMjYyNjAgYzBkN2I1Nzg4Y2JlNjNiYWFjMDI0NDk1MjEwNzM5ZDA2NzdkODk3NCBsZWdhY3ktdHJ1bmsKKzI2MjYxIDg5MTNkZmExMTAyN2VkYWE3YWExMTVjY2ViNzAxNmNlYTliZTlmMTMgbGVnYWN5LXRydW5rCisyNjI2MiAxMWNmZTgzODNjZjg4NzUxZmFkM2Q3OWUxZTZiMmJkMzEyMmQwMDY2IHJlbGVhc2UyMi1tYWludAorMjYyNjMgZmJkZDQwYjkyYjg3MGI3ZmY3YmQ0ZWRkNjIzNmIwNjdiOGI0YWRhOSByZWxlYXNlMjItbWFpbnQKKzI2MjY0IDdlODRkYTljOThlYmE2YjgwODFmYzNjM2NjMWE2N2ViMjNhZWU1N2MgbGVnYWN5LXRydW5rCisyNjI2NSA5ZDI2ZDU2OGRiYjMwNzYzYzVlZTJhYjMwNGIzYTJjYWFhZDkxYjFkIHJlbGVhc2UyMS1tYWludAorMjYyNjYgYjYwODQ0NWIyNWYwMjliMmRhZGM4NWZmMGFmMzFjZWI3MjNmM2NhMCByZWxlYXNlMjEtbWFpbnQKKzI2MjY3IGFjOTliZWQyNGI3ZDEwNmNhNTFiNjA0NGM1MGQ3Y2ExNjk1ODYwZmQgcmVsZWFzZTIxLW1haW50CisyNjI2NyA3ZDE1MDRjODBmYTA3MmI0YmE4NmVkZGExM2ExM2IwYTA1YWU4ZWFiIHJlbGVhc2UyMS1tYWludAorMjYyNjkgNWFiM2U4ZjE0ZDQ2NjM5ZDZjNDBjOWNiNjJkMGQ3Y2Y4Yjg3Njg3MyByZWxlYXNlMjItbWFpbnQKKzI2MjY5IDM5NDc5MDMxNmFhMzgwZDIyZTRkNjcwYmM2OWE2MzllNzI1ZjAzMDAgcmVsZWFzZTIyLW1haW50CisyNjI3MSA5OTAwMWZkOTVlNDhkYjgxNWE4ZmQwMWIzZGQwMTc3OWUxZWU3OGU1IGxlZ2FjeS10cnVuaworMjYyNzIgMDc3M2QyMzIyNGQyYWE2YjU1MDUxY2ZkMDc2OWFlZjNhYzZmZGY3ZiBsZWdhY3ktdHJ1bmsKKzI2MjczIGMyNmFmMWFiYzJjNjIxMzAxMmFkNTkwZjk0MWQ5YTg5ZWFkZmExOTAgbGVnYWN5LXRydW5rCisyNjI3NCAxMjEzM2M4YjgzY2Y1ZjRlZTMyNGNlNzQzYjQwYmZkYWI0OTVlY2VlIHJlbGVhc2UyMi1tYWludAorMjYyNzUgNzI4MWEwNmUzYjU3ZjNiZWJjNTc1MjE0MWViMDNhY2Y1YmI2NTJmYSByZWxlYXNlMjItbWFpbnQKKzI2Mjc2IGZlYjZkMWJjZGQxZDYyZTE4OWRlMjMwNWRjNThlMmNiNTc3M2MxMGEgbGVnYWN5LXRydW5rCisyNjI3NyA5MDgxYzkyYTBjYzg1ZTQ0ZmM2N2VjM2ZjYTczNDQ5YmZmZTg3ODFkIHJlbGVhc2UyMi1tYWludAorMjYyNzggOGEwMmMzM2VkMmMxOGJiMzg0MGIwOWIxZTBmNWU0N2ZjNjViMDFlMCBsZWdhY3ktdHJ1bmsKKzI2Mjc5IDE1YzE4YmM5ZDcxNTY1ZmU3ODc5NDhmZGU2YTAxZjBlYTMwNjljYWUgbGVnYWN5LXRydW5rCisyNjI4MCA1NDIyOWMzNTEzMmU3NzUxZjFiZDA2NzQwYTJmOTQwYThiZGU1NmIzIGxlZ2FjeS10cnVuaworMjYyODEgMjM5MmFmMDVmMDUyNmI1NjAzMDAwYjc4Y2U1YjhmNjFiOWFmMmE2NiBsZWdhY3ktdHJ1bmsKKzI2MjgyIDNjODc2ZmYyOWE4M2VkOWVmZGU0OTI1YTE4Nzc2YWI1NWJiYTBiNjcgbGVnYWN5LXRydW5rCisyNjI4MyAzZjIxZTRlMzkyNjgxMDNmMjE1NDM1MDkyMjliOTVlZmNjYzVlMDgxIGxlZ2FjeS10cnVuaworMjYyODQgYTVlZWIyODhlMDIwZjczMGM5MGQ2ODQ5ODExOWE0MmVmNWEzZDQwOCBsZWdhY3ktdHJ1bmsKKzI2Mjg1IDA3N2NlOGI1ZDgzYjU5YjczZTczYzdhYTVkMTAzYjQ1M2YyYmVkYTkgbGVnYWN5LXRydW5rCisyNjI4NiA0YzQ5OTQ0N2NjNDlmODg3M2VlMTg1ZGE4ODlhOGU5NDVkYjIwMzgwIHJlbGVhc2UyMi1tYWludAorMjYyODcgMzMyM2YzZjQyMmRiMDlhMTIyNGNlMGI5M2ZlZDc5ZjQzM2RlNDQ0YiBsZWdhY3ktdHJ1bmsKKzI2Mjg4IGUyMzM4MWZhNDc1MDM4MDJjZDE0M2JmMmFmYTkzYzllNDQ2OGZhZmQgbGVnYWN5LXRydW5rCisyNjI4OSBlMmRlYzNjZGYzYzI2ODBmZmQ3ZTg2MmRiYzgyYmZhMWFjYTY3MTY5IGxlZ2FjeS10cnVuaworMjYyOTAgZTMwN2E5NGRkNzdiZmRjZDViN2RlN2RiMjQwNWFhYTUzZTg3Njk3NiBsZWdhY3ktdHJ1bmsKKzI2MjkxIDI2N2I5NzMyYmY0NjU1MDBiMmEwNDg2OTkwNGY2ZjZmMTE3YmY1MWQgbGVnYWN5LXRydW5rCisyNjI5MiBhOTZlN2U1ZjM0MDc3MTVhNzAyMzJmMmE1ZmM3OGNmODZhMTE1MmI0IGxlZ2FjeS10cnVuaworMjYyOTMgZjc2Y2E5ZmJjN2E0NzYyYzQ4ZDYzMDc4YmM0NzMwNDMzNjE0NDQxMyBsZWdhY3ktdHJ1bmsKKzI2Mjk0IDMyYTliMTlkYmExZGQ2NzAwYWUzYjdlOWJiYmIyYTI2ZTIyMzI1YmQgbGVnYWN5LXRydW5rCisyNjI5NSA0NGVlNjhhYzVlN2Y5NjFiNmZjMzk5MTQ3ZjBjMTdjMjQyZTg2YjJlIGxlZ2FjeS10cnVuaworMjYyOTYgZDRmOWUxOWI4YzBiNDI3NjBhMzg3YTdmNDgwZDU4OWY0NzRkNzI5ZSBsZWdhY3ktdHJ1bmsKKzI2Mjk3IGYxNGU0NTUwYjJmM2NlYThjOTNiNzdhNDRkY2Q3ZWJiNDE2MDZjYTEgcmVsZWFzZTIyLW1haW50CisyNjI5OCBhNTRiMjNiMmYxNzIwYzMzNzI3MWI4ODdmOTBkZWNhYmQwNWJlYmJlIHJlbGVhc2UyMS1tYWludAorMjYyOTkgNWM1NTM3NzJjYTU0YzNmZDRkZTlmMGJiNGU5YTg0YzA4NmE5MTZjNyBsZWdhY3ktdHJ1bmsKKzI2MzAwIDUzNGFhYjViY2NlYTQ1YjNjNmViZjA2NDQ5ODIyZTJkNjYxZDYzMGYgbGVnYWN5LXRydW5rCisyNjMwMSBhYjY3OTkzMWFlMGQxNzE3MGZiZmEwOTAyYTgzOGNjZGVjYzk2OWZkIHJlbGVhc2UyMi1tYWludAorMjYzMDIgMDU3YzVkNzljOTg4YWRkYjc3OTc2ZGQ3Yzk4ZjU4M2U3YjM3NmM5ZCByZWxlYXNlMjItbWFpbnQKKzI2MzAzIDk3OTM5ODM0YTY3MzUyMjAxYTRkMmM1YTU4NThjNzZhNDgwMGQ4MDkgbGVnYWN5LXRydW5rCisyNjMwNCBjODc1MGQ2M2RjMzU1ODQyNjRkM2NmNzFjMTNkYThkMDFlMDRkMDMxIGxlZ2FjeS10cnVuaworMjYzMDUgNTBjOWMyNDE0NjNkMjFhZWFmMTZiZTA4MjA4ZGIzNmZiNmE0MjhlMyBsZWdhY3ktdHJ1bmsKKzI2MzA2IGMwNDkwNmZhMTc4Yzg4YmIwMjRmNDdhNjQwNjdkZjRjN2EwMDdmYjYgbGVnYWN5LXRydW5rCisyNjMwNyBjYzUwYTA5MWY1NzNhZmZjMzExMmRjY2VjZjNkYjg0NDg2NDhiZjk5IGxlZ2FjeS10cnVuaworMjYzMDggMWE4YTc0OThiMGJiMzcxYWNlMjJkZGZjMmQzYTU0NDM1NDZmNDIxNCBsZWdhY3ktdHJ1bmsKKzI2MzA5IDZjYjUyODI5ZGExYTJhYWM2NzY5NmMwYjQzOGM3YzIwYTk2ZWVjYmYgbGVnYWN5LXRydW5rCisyNjMxMCA1ZjU0NTRhNDhiNWFiOTZmZTM5MzM0ZDBmZDc2NWRiYzcyZDhjZjZkIGxlZ2FjeS10cnVuaworMjYzMTEgMjFmMzE5MzlkYzJmNzQ4ZjJmZjkwZTgzOGJmMzljMjQ2ODk5YTgwOSBsZWdhY3ktdHJ1bmsKKzI2MzEyIDZhMzYxMTJhM2RjZTA2NzViYjJiYTU2N2RmNTY0ZDlmNjlhOWY5YzQgbGVnYWN5LXRydW5rCisyNjMxMyBjOGMxZGMwNzI3Y2Q1MGNkZTdkY2M2YjNhMWZmNWIzZmZhNGUxZjZmIGxlZ2FjeS10cnVuaworMjYzMTQgYmZhMzMwYjg1MjA1MDdkOTkxMjdkZmM4MmI4Y2EwNzBmMjM4NzZjMyBsZWdhY3ktdHJ1bmsKKzI2MzE1IDlhNThlOTdkYjQ0N2MzZjQ5NmE5Njg1NDE4OWM5ZjA2NzAxNjg3NGUgbGVnYWN5LXRydW5rCisyNjMxNiBjZWE4NTJmOGFhNDc2MzAzN2YwMTVlMjMwNzk3OTVjODZkNmQ3YmFkIGxlZ2FjeS10cnVuaworMjYzMTcgMDNhODMzNDBjOTE0YTkyYzZmYjc4MzcxZGU4ZjU4OTU3NmIwY2EwMCBsZWdhY3ktdHJ1bmsKKzI2MzE4IDRmOWQ1ZWE0ZjM3ZDljMTIxYjgwYTg1N2YwNjAwZWRiNDhmY2M5ZjEgbGVnYWN5LXRydW5rCisyNjMxOSA1ZjJkY2RkMDkzMjkzNmM1ZDJiZjRiYTQ3ZjQxMGZlYWE4OTU5NTlkIGxlZ2FjeS10cnVuaworMjYzMjAgZjgxNzAxYjcxMjE2NGY2NjIyZWE4YTA1NGMwNjNjYTA0MDBmYThjYSBsZWdhY3ktdHJ1bmsKKzI2MzIxIGEwYmI1ZmExYWIyZGNkZTBlZjBjMzM5N2QyNDEzNTU2Yzg1ZmYxN2UgbGVnYWN5LXRydW5rCisyNjMyMiAzZjIzZDcyZWY0MTBmNjY2ZTA0ZThiMjkwMWFmZGViYjBiM2ExMTI2IGxlZ2FjeS10cnVuaworMjYzMjMgNmQ3MzFiNjQ2NzBiNjkwZDI0YjM4ODViZTRlZjlhNzg1ZTg4ZDI5YyBsZWdhY3ktdHJ1bmsKKzI2MzI0IDk1NjNjOTY2NGEwYmI4YTJlY2U2ODlmMzViNGEyMDQwMjI1ZGMxMDcgbGVnYWN5LXRydW5rCisyNjMyNSBhMDA0NzNmMzMxN2I5M2Y3NTQ4NDViMTY5NGM3ODUzM2M1MjM0MjJkIGxlZ2FjeS10cnVuaworMjYzMjYgYjM3MzE0ZmNiY2M5Zjc1MjA3NDdlMmQwYTQ4OWY4ZTExYWFkMjg0YyBsZWdhY3ktdHJ1bmsKKzI2MzI3IDA4NGFiNzM3NzdhMzQxNzRkZTdkODk4MzA5ZTQwNzFjYmZiMWJiYzggbGVnYWN5LXRydW5rCisyNjMyOCA1NDk1YjZkZjBjNjVkMzBmN2RiM2Q1MWM0OGM4ODA3MmZlNDAyMTUyIGxlZ2FjeS10cnVuaworMjYzMjkgYmEwMjM2Zjg0MzE4YzIzOWVkODNhOGJmNTZlYThmZDUzYWQwOGIwMSBsZWdhY3ktdHJ1bmsKKzI2MzMwIDMxMDBiYTI2OTEzYzdkNWJhYTExMzFmZGE3NGY1MGMxMzZkNDI0ZWIgbGVnYWN5LXRydW5rCisyNjMzMSBmOTNhMjZkMWJmYTBlOWRkODMxODExODA2YzQyNzVjN2MxZWU3MTk4IGxlZ2FjeS10cnVuaworMjYzMzIgOTBiODM0Y2U1NzA3N2ZlZGE1ZmMxOWEwNWMzMjg0MzJhN2QyZjkzMCBsZWdhY3ktdHJ1bmsKKzI2MzMzIDk1ODE5ZjdmMGJjZDJjZGM4ZmU1Y2EyOWIwNDAxNTg1OTY0ZGY4MjAgbGVnYWN5LXRydW5rCisyNjMzNCA2OTljYzEzOWQyZDI0ODY2YTEwYmExYWRjOTYzMmNiZWNlMDMxYTc0IGxlZ2FjeS10cnVuaworMjYzMzUgNzI3NzhlYzk0ZGVjNjY3NjM4MjczMzExMDBiYjhmMThhMDNiY2E1NSBsZWdhY3ktdHJ1bmsKKzI2MzM2IDI5ZTZjYjgzMjQ5N2I1ZmU4YWQyZTczMzY4YmJkZjAzYjk0YjBiZDkgbGVnYWN5LXRydW5rCisyNjMzNyBhOWU0MDI0ZDhhMzc3MDE5NTYwNTI5YmFkZTA1ODcxMmRiNTBiZmU1IGxlZ2FjeS10cnVuaworMjYzMzggNGJhMDkxY2M3MGI4OWIxNjY0NGFhNzVlMTczN2RmZGQyNGQ0MDBkNiBsZWdhY3ktdHJ1bmsKKzI2MzM5IDM2M2M3ZmMxNzRhYzhiZGI3YjgzMTk4MWI4OWM2M2MzMjEzNDcxYTIgbGVnYWN5LXRydW5rCisyNjM0MCA5ZmU5NGMwMWVhZjFmZmY1MDA3YzAzODQyNTVlNDE4MWJkMGRjZDc1IGxlZ2FjeS10cnVuaworMjYzNDEgOWY5NDkwMjdkN2JhMTkzYmQ2MTQzZjJhYTY0NGI5MDM3MDQ2N2QyOCBsZWdhY3ktdHJ1bmsKKzI2MzQyIGRjMWZiMTlkOTkwZDY5MmYxN2NkMWUwY2U3NzEwNWNjMzJjNTQ1ODAgbGVnYWN5LXRydW5rCisyNjM0MyBkMDk3NDBiMmUwM2RlMWY4NWNhMDg0MzU2YTQ1ZDAxYWMwMmVjY2E0IGxlZ2FjeS10cnVuaworMjYzNDQgMWMyNmEzMTA2NjUzMTBmNjNmZTU3NTc4NzczZmQwMzMxYTJiZTM1MiBsZWdhY3ktdHJ1bmsKKzI2MzQ1IGM1YTY3ZjUwNTMyZTkxNDcxMWQwY2ZmNTk3YmEzZWM5NDZiNGU0MDEgbGVnYWN5LXRydW5rCisyNjM0NiBkOWQ4MmMxZWY4NjQ1MGRmMjMzNTUwMGU5YmUzYmI3M2JhYjdjNmZiIGxlZ2FjeS10cnVuaworMjYzNDcgMjk4YTdjNTFkMmMwMWRlZGQ1YTA4MGM0NjllNmMwNzE0Y2VlMjBkNSBsZWdhY3ktdHJ1bmsKKzI2MzQ4IGM4ZDYxZmYxYzBkNmI3NDk1NDkwYWE5OWQ0MDNmMmZkOGUzMzQ3OGUgbGVnYWN5LXRydW5rCisyNjM0OSBiZTU0NDY1YTM5YzQ1NGE1OGIyYjE3YzM0ZWE5Yjk1YWIwZTcyZDE3IGxlZ2FjeS10cnVuaworMjYzNTAgNjE2NjE1ODNhMTJmYWIyYWYwY2ZkMGM1MDgzYzNiMzJhZTEzMWExZSBsZWdhY3ktdHJ1bmsKKzI2MzUxIDI0NjYzYjg2Yjk3NTA1ZWNhNjA3MjE5MTdkNDczZTJiMjMzOWQ3OWMgbGVnYWN5LXRydW5rCisyNjM1MiAxZTFjNzIxNDMzZDhlNGEzYjA4NzUzY2U0ODFhZWU1YmJmNzk1ZDAyIGxlZ2FjeS10cnVuaworMjYzNTMgYmViMzIxODkwNWEyZmU5YjE0YjYzNGUyMGIyZDlmOTRhMjQzYTE1YSBsZWdhY3ktdHJ1bmsKKzI2MzU0IDBhMTlmMDE2YTk5NDY0N2VhMTI4OWNiNDEzMjBjMmJkM2ExMGE1NGEgbGVnYWN5LXRydW5rCisyNjM1NSAxOTZkZmE3ZWQzNDhkYmZlOTYxNTc2MjY4MTk0NWRiMjEwODZiOTQxIGxlZ2FjeS10cnVuaworMjYzNTYgNjkwZDcxMmUyODA3YzNlMWM4Y2M1MTIwYjdhNTliMzQ0NzJiZjIyYSBsZWdhY3ktdHJ1bmsKKzI2MzU3IGI5YWQxZTlmNTlhODVlYTA3OWU4NzBlOGUxNjU2NDdlZTY2MTAwNWEgbGVnYWN5LXRydW5rCisyNjM1OCAyZGQwZjg0YWYwNzE2OTI5MDE2MWVhMzUzMzVhNGY4YTJkY2E1NjBiIGxlZ2FjeS10cnVuaworMjYzNTkgYTljYjkxOWU0OWUzMzFiYmU4YmU5MTFkNmY3OWM3NzBmYTY3Y2E3YiBsZWdhY3ktdHJ1bmsKKzI2MzYwIDI1YTZlMzljMzFhMjA3MGUxNTFmZThmNmFmZTZkYWIwNjQ0MTI2NTUgbGVnYWN5LXRydW5rCisyNjM2MSAwYjFlMjBjMzRjOGVhNmMxOWU0YzUzMTU1NzU5OTBiOWQyZGQ4ZjEyIGxlZ2FjeS10cnVuaworMjYzNjIgYTA1NjFjZjQ5MTYzNGRiMTRjNzZlMzIzOWFkZjY2YWYwY2MwYjQ0MSBsZWdhY3ktdHJ1bmsKKzI2MzYzIDhmOThjYjNhMGYzNjhjYTQzZjFmNTAzMzBjMDQxMGNhOGE0YTE0YTIgbGVnYWN5LXRydW5rCisyNjM2NCA0ZjA2M2I4MDMwOGQ5OTIzZDA1YTY3MWU0N2E0OTJkMDk5MmFmZThlIGxlZ2FjeS10cnVuaworMjYzNjUgMWY3YWY0ZmIzYTUxNTJjYTE0OGUxZTBhYzJmNjYzZTQ4NTZlYTEyOCBsZWdhY3ktdHJ1bmsKKzI2MzY2IGU1NGI5YzM4NDhiN2EzNDkyMDgwYTQ4OWYzNDVkNzE3MzA0MTNlZGUgbGVnYWN5LXRydW5rCisyNjM2NyAxY2VhZjdmODA1NWQ2ZjMwYWZhN2RhZmE1ZDc4MmFhN2VmZTliNDI2IGxlZ2FjeS10cnVuaworMjYzNjggZGIwMDNiOGE5YmI5NTQ2MDA5MDk1YjAzMGE3N2RkMTdmYzU3OWM3OCBsZWdhY3ktdHJ1bmsKKzI2MzY5IGQ1MDQ4ZjliOGI4MjU3YjFjMWJkZGNhYjkxOWNiNTRhZGY3YzI4YmEgbGVnYWN5LXRydW5rCisyNjM3MCA4YmU2MjM4NzQ4YzRkMGFmM2NjNzBhMGJiNjYzYWQ3MTdhODQ5Yzc1IGxlZ2FjeS10cnVuaworMjYzNzEgOTMxZDQ0ODgyMGFlZWYzOGRiNjIyMDNiYjA5YmRlYzEyMzVhZjAwNyBsZWdhY3ktdHJ1bmsKKzI2MzcyIDk4OTM3N2NkZjA1MzJkNzc3NmNiNjY3YzZjNTYzN2ZkM2M3YThlNmIgbGVnYWN5LXRydW5rCisyNjM3MyAwOGFiMGE2YmYxZWJiMTRhOTBmNGNiOTMyOGNkMGY2ZGJiOWEzYTNjIGxlZ2FjeS10cnVuaworMjYzNzQgZDYzMjI5ODMwNjllMDZhYTI0YzkzZGU5OGZlYzk1OTg1YmU3MmI4NiBsZWdhY3ktdHJ1bmsKKzI2Mzc1IDNiMDgzYjI2Mjk2YThlODEyNzY0ZDI4ZTEzNmIyN2JhMjI1ODY4MTYgbGVnYWN5LXRydW5rCisyNjM3NiAyMDJhZTViNzVjY2EyNDM4MjcyNDg3M2JmZjk5OGZhMDIzNDYxNDNkIGxlZ2FjeS10cnVuaworMjYzNzcgYjVmOWY3YThmNTY2NmU0ODlmYmI1NWQyYjAzOTJhZDFmOTM2YjM2OCBsZWdhY3ktdHJ1bmsKKzI2Mzc4IDQ0NjM3YmQ3ZjU5YjY0Mjk4YzJkMmMyNDkyYjRiM2I1ODVmYzAwMTcgbGVnYWN5LXRydW5rCisyNjM3OSBiMWFiNGJjNTIyNDNkMDBkOTA3NDBjODgyMzJmMzM5YzY4NDYxZGVjIGxlZ2FjeS10cnVuaworMjYzODAgYzYwMDNkZTczOTc1NTdiOWM4NGQzNWViMzcwY2Y2ODI3OTcyYWE1MyByZWxlYXNlMjItbWFpbnQKKzI2MzgxIGUyODQ4NjE4YmQxOTU5YWQxNDZhOWIxYTFlZjllNWE4Y2VkMDkxNGIgbGVnYWN5LXRydW5rCisyNjM4MiAyNDcxODMyNzAwOTU4Zjc0YzkyMzZhYWIzODYxODg2ODE1YjNkOGQ2IGxlZ2FjeS10cnVuaworMjYzODMgZWJlM2NlNmNiZmQ3ODYxNTIyOGJlY2NmOTBlM2I3ZTFjNzg1ZjdjMCBsZWdhY3ktdHJ1bmsKKzI2Mzg0IDg5OTAwMmE4ODJhMDhhNTA5ZmY2YjJlYzI0M2ExZmU0N2Q3ZDIzZWQgbGVnYWN5LXRydW5rCisyNjM4NSA0ZTU4YTM4ZTNjMDYxYWFjMWQ3ZGU3ZDRlYWVlOGVlN2RiZWNlYzI2IGxlZ2FjeS10cnVuaworMjYzODYgM2U4OTI1ODJhODUwYmM4YjYxMThmZDdlNzA4MmJlYTQzYzg5NzlkNSBsZWdhY3ktdHJ1bmsKKzI2Mzg3IGYzZmM5N2RhNjhhOTg1OGMzZjlhOGY5MDMwNGU4ZWRmZTE1Yjg0YjMgbGVnYWN5LXRydW5rCisyNjM4OCAwM2MzOTY0MGQ4MWE4OTQyZGNmYzQ1YTEzZWE5YWU3YzNhMWY0ZDVhIGxlZ2FjeS10cnVuaworMjYzODkgYTlhNmMxMThkZmJhNzU0M2IyZjYxZWVmODc1ZmFmNzRjNjEzMDJiNyBsZWdhY3ktdHJ1bmsKKzI2MzkwIDgyOTE0NzNmZGUzZWIzMmM1MTdjMDc1MTZkZjhhOTljYjI5NjBkZTMgbGVnYWN5LXRydW5rCisyNjM5MSAxODYyMzc0YWIyNTM5OWQ1NWY4Njk4Nzc5YzUyNzdiYTMyNDY4N2FiIGxlZ2FjeS10cnVuaworMjYzOTIgNWJkYTU0NmViZTI0YWNmOWVhYjE3MGJmMjFjNmM4MDc1MTZhZTVjOSBsZWdhY3ktdHJ1bmsKKzI2MzkzIDFkYjNhMDI5NjVlNjU1ZWY0ZWY4NTFhNThmZDhhOTc1OWQyZTgzYWQgbGVnYWN5LXRydW5rCisyNjM5NCA4YjkyNjBlOTIwMTBiNTRlOGFiNWU4ZTM0ZmQ2ZThiNTQ2OWIyZjk0IGxlZ2FjeS10cnVuaworMjYzOTUgNTNiYTkxMTBhMWYxNzc5N2M3NTNlYzNkNzExN2U2YmQ0NDBlMzc0OSBsZWdhY3ktdHJ1bmsKKzI2Mzk2IGIxZWU0MzIxYTUwYTdiMmM1OWJhZDEzMDE0NjhhM2IyNzAyZDQyMzUgbGVnYWN5LXRydW5rCisyNjM5NyA4ZjY0NTE4MDUzNGQ1M2Y2YmY2MzczNTUxNTllYWEzNmFhZjY5NTg0IGxlZ2FjeS10cnVuaworMjYzOTggODlkYjllM2YzNWE3NDhiMTlkOTViMzRhOTY1MjVlOGQ1MjA2NGMzYSBsZWdhY3ktdHJ1bmsKKzI2Mzk5IDlkMzUyNjY3ZDcxNWVlYzA3ODM0OGM4ZDk1NGY2MDBhN2FhMGJhZGYgbGVnYWN5LXRydW5rCisyNjQwMCA0NTQzNTFlZjUwZjFkMTk3MGNlNGI5YzNiZDMwY2E1ODgxMjNkNjU2IGxlZ2FjeS10cnVuaworMjY0MDEgY2QyMDJlZjY3MjZlMzQ1N2Y1M2I2NWNkNTQ3MDM3MmEzYTYxZWY1ZiBsZWdhY3ktdHJ1bmsKKzI2NDAyIGYxYWExOGM4Yzk2YjgyMWM5NWIyMGI1NGYyMTAxNTdmZmQ3M2UxMTggbGVnYWN5LXRydW5rCisyNjQwMyBlMWY4ZTI5NTQ3NDk5ZjQ5NzNmZjliYWJkYjMzZjNiOGZhMGI5YjMzIGxlZ2FjeS10cnVuaworMjY0MDQgN2ZlY2Q2ZDU4ZjM4ZWYxNzRkM2FiMzQyNGJmZTllYzQzNDJjZDUwZSBsZWdhY3ktdHJ1bmsKKzI2NDA1IDBmMzdjYjVhN2U5ZThjZDViMDgyZDdmNTE2OTU1MDBkNDFmMzRlNjcgbGVnYWN5LXRydW5rCisyNjQwNiA4YjEyNjhiYzM3MWE2NGZmNWJiY2YzNzc5Y2NjMTBmNDE1OTI1MWM2IGxlZ2FjeS10cnVuaworMjY0MDcgNzY5ZTBhNTM4ZTU0M2QxNWNkODc4NmJiN2FmYzRmYmZhMzZiYWM3OCBsZWdhY3ktdHJ1bmsKKzI2NDA4IDc1MTI4OWNkMWFiNzEyZDllNzYyYTE4NDllODI1MGI5MmRlZmU1NTkgbGVnYWN5LXRydW5rCisyNjQwOSBjMTY2OGE4MTkyNDJjNTEzYTJhZWMxOTNjNDVkZDJmMDg4OGRhMmI3IGxlZ2FjeS10cnVuaworMjY0MTAgOWU2ZmY3ODcyODBhOTVkZDRjMDhmZDBhZDUxNDgwMDE2YzlmNzRiNyBsZWdhY3ktdHJ1bmsKKzI2NDExIDhhOGFmZmNjZjQ2M2JiNWM1NzgwZGU3MGY5ODk5OTczOTc3Zjk1MjEgbGVnYWN5LXRydW5rCisyNjQxMiAxOWVhMDBmZWRhMzM2Y2QxMWQ5OTQ2OTE4MDBkNTVmZGJlMDgyZGQzIGxlZ2FjeS10cnVuaworMjY0MTMgOGViNmRkM2Q4MzIyZWZiZDRmOGJjNDIyYzg4MTIzYTEwOWEwOWViMSBsZWdhY3ktdHJ1bmsKKzI2NDE0IDA0ZmJmNjVjNzNlZjZmYzZhNzg4ZmM0ODhjNzY1ZTcwNTU5YTYxM2EgbGVnYWN5LXRydW5rCisyNjQxNSA3MWJlNWJhODhhYTdhNzJjN2FjMDBlNjI4MjhlMzhhODc0OTNlYzQ1IGxlZ2FjeS10cnVuaworMjY0MTYgM2FmMmNhZGNjZDZhYzY1MjNlOWIwZTljNjIzNTZiYzdiNjQ2NjlhMSBsZWdhY3ktdHJ1bmsKKzI2NDE3IGExMzU5ODBkZDRlOWI2YjliZjEyZWJlM2QxOTI3MDdhMTg4YzYwZDggbGVnYWN5LXRydW5rCisyNjQxOCA2YmUyODNkMTQ4ZjdlMzg4MjU1OTQ5NDQxNTk0ZDMwZjkxYTZkNGRjIGxlZ2FjeS10cnVuaworMjY0MTkgODAwNWZjMWFlZjM5YzhmMDYyNGU0MTVjNjkxMmY3MGVhZjViMjlkNiBsZWdhY3ktdHJ1bmsKKzI2NDIwIDRjMGFiNWQ2YTYzYzQxZWFjMjljYTI4N2M3ZDdjNjE1MjYyNjVlNjIgbGVnYWN5LXRydW5rCisyNjQyMSBjMzI4ZDcyNTBlOTI2NjAwMzZjOWJhOGFkNWNjNGRmMDJhMzRiNmI5IHJlbGVhc2UyMi1tYWludAorMjY0MjIgZGJkMGVlN2Y2MGUwNTY5NzBhNmEwNzMxYjRkNTkwYTIzNzhmYjU4MyBsZWdhY3ktdHJ1bmsKKzI2NDIzIGMzNzFiYjNlODUyOTFiOWUzMzRmYzUzNDc1YzRmNmQyNDI5YWRlZWQgbGVnYWN5LXRydW5rCisyNjQyNCA1MzBhYmEzMTE2YTQwZDA4NWU0YTEwODk3OWY2MDNlMjliZWJmM2Y4IGxlZ2FjeS10cnVuaworMjY0MjUgZGMwYzEyMTNjNzlhYmRkYTA5MzViMzgwNjRhM2ZmMjBhZjNjMmJiOCBsZWdhY3ktdHJ1bmsKKzI2NDI2IDkzOGZmM2NiNTFjMjZiZmU0MTllYjY1Y2ViN2FlY2UzN2I5ZDYxOGYgbGVnYWN5LXRydW5rCisyNjQyNyAwM2ZmMzU2OWJhMDRjYWY2YzU2ODFkMjgwZWU2YWRkZDNmMGMxNjlkIGxlZ2FjeS10cnVuaworMjY0MjggZjM2Nzc0MTRiYzNkZWY2YTA5MDU1ZmM2ZWE3NDk0ZDJiNjMzNmViZCBsZWdhY3ktdHJ1bmsKKzI2NDI5IDQyYzk5NzI4YjZjY2EyZjllYzJiNzgzZTUzZjE0Y2M3NjcyOTQ4MTAgcmVsZWFzZTIyLW1haW50CisyNjQzMCBiYmFiM2ExN2I0Y2Y0ZTNjN2NkM2Y0ZjRjNWI3MTJmYTU1MDA5MTdhIGxlZ2FjeS10cnVuaworMjY0MzEgOTdiOTQ4MGJiZWVjNzVlNjE1OWM1NDA5NzEzNzcwNzM0NWRlMzg5YSBsZWdhY3ktdHJ1bmsKKzI2NDMyIGZkYTczYmZmMjFmZmE1NmQ1YTllY2UyZjI0OWNmMWM4Y2JjOGNiMzIgbGVnYWN5LXRydW5rCisyNjQzMyBkODllNTU3M2RkMjM3ZTEzYjA2MjQ3YWQyMDUzZGI5ZjNkZDJjMWUwIGxlZ2FjeS10cnVuaworMjY0MzQgMjFkMjUyMDI4NDA0YzgwZGQ4MjI5ZWY5MmM2OGVkOWE4MmUwMTRkMiBsZWdhY3ktdHJ1bmsKKzI2NDM1IDRmZjkwYzk5YzMwMmFhNmJkNDNjNGQyMjgxZWMzZmUxZmVmYjc3MjIgbGVnYWN5LXRydW5rCisyNjQzNiBiN2U4NzczMmY2YWI5NDEzZDU0ZmRjZGFhOWVjOTlmZjM0YjZlMTY5IGxlZ2FjeS10cnVuaworMjY0MzcgMGZjZTU1Njc1Y2JjYjM4MGMyNDJmMzlkZWY3M2I4ZTM4ODMxNDhhNCBsZWdhY3ktdHJ1bmsKKzI2NDM4IDNiZDMzNmI2Y2IwM2E2N2Y3M2U3MTBlZjE2NjQwYWQzMTdmNWEzY2UgbGVnYWN5LXRydW5rCisyNjQzOSA0YWRkZjRjZWFmYzU0N2Y0N2JmZTA0OGM1N2IyZWM2ODFlYTI0NTA0IGxlZ2FjeS10cnVuaworMjY0NDAgOTY5YzFkMTE4Yzk3ZGViZmQzZmE2YThmZjZhMTJjYWI0OTJlNTI0YSByZWxlYXNlMjItbWFpbnQKKzI2NDQxIDEwZTAxMjJiNWZlZDVmODhkNzIxZGE5ZGQ5YWQ3ZjU5NTU3OGY4MWQgcmVsZWFzZTIxLW1haW50CisyNjQ0MiAzYmY3NjJlMGUwNmVkMDlhOTFlM2UyNjY0NDE0MmZhMWI5ZWViYTNmIGxlZ2FjeS10cnVuaworMjY0NDMgMzkzZTlhMjE2YTg4YjUwMDEwOWYwMzE4MzZlYTZjZmYyY2QwZDA3ZCBsZWdhY3ktdHJ1bmsKKzI2NDQ0IGU0ODRmMzBkYWM3N2E2MTcxYTI3Yjk3ZWUzNjU2MDFhYWU4Yzg3OWYgbGVnYWN5LXRydW5rCisyNjQ0NSA4YzNkZDFjMmVmNDc5ZWU2ZWM0ZTYwZTE5YmFhOGVkMzU3ZTI3MmRlIGxlZ2FjeS10cnVuaworMjY0NDYgNDIzYTM2NzhiYzdjNzE3NmVhNjBhYjFlMjE3N2E5YjZmYTE5ZWFkZCBsZWdhY3ktdHJ1bmsKKzI2NDQ3IDRlODI1MjI4NDdkMGRlODFlMDAzNzc1MDYzYzVlYWI1OTJkOTRiMTIgbGVnYWN5LXRydW5rCisyNjQ0OCAwOWRiM2Y1ZDBiZDBlYTBiZjNiYjJhNWY1OWExNjRkM2RiM2RhZjIyIGxlZ2FjeS10cnVuaworMjY0NDkgOGM3YTM5ZDBmZWZkODAxZjZkZGM4OWNlMGZkZmFhMTI2ZjM5MGNlNyBsZWdhY3ktdHJ1bmsKKzI2NDUwIDMxNGY5MmEyNDI5M2IyYWJiY2YwN2NlYTNlN2Q1N2M0MDE2NDVjMTkgbGVnYWN5LXRydW5rCisyNjQ1MSBiMzk1NDc3ZDg0ZDBkNzY5OTczMDdkNGRhNjg4YTAzNzgzYWU3YmU3IGxlZ2FjeS10cnVuaworMjY0NTIgOTk3NTc1NjJiZmI5NTdmZDRiNTk0OTc5ZjMwOWVjZTkyOTc3MmI4ZSBsZWdhY3ktdHJ1bmsKKzI2NDUzIDllYmE2MGFjZTJkYWUwYzI1YzQ4OWVjNmY1YTA1OWRjMjZhNzU5NWIgbGVnYWN5LXRydW5rCisyNjQ1NCA5MTFmOWYxNGUyZDU3ZTliNjI0MmM2YTJhZWMyOTQ1NmQ1YWRiN2JjIGxlZ2FjeS10cnVuaworMjY0NTUgMmE1NDI3ODQwNjJmNWE5M2Q1YzNjMDkwNWM2MjhmOTkzMWUyNTZkZiBsZWdhY3ktdHJ1bmsKKzI2NDU2IGI1YWFlMmE2NWY2ZDEyMmEwZjczNWZhMmU1ZTliODQ2MjYzZDcyZjEgbGVnYWN5LXRydW5rCisyNjQ1NyBmODY3OWY2Nzk4YmY2N2I5MTRmMzcxZTE3NGMxY2I3NjcxODA4NDg3IGxlZ2FjeS10cnVuaworMjY0NTggMDNhYmZhN2RiNDQ5OGM1Y2I5Y2VkYjBmOWQ1ODljMmVhZTg5YzBlZCByZWxlYXNlMjItbWFpbnQKKzI2NDU5IDcxNzJjZWYyM2IwNTQ5ZWJmZTY5M2Y4YmI5Zjg2YzljMzZlNTE3YWMgcmVsZWFzZTIxLW1haW50CisyNjQ2MCA3Mzg5NWM5OWZjYzViYmVlYzc1ZTFjNzNiMmE4NWE5OTAxODc5YmZmIHJlbGVhc2UyMS1tYWludAorMjY0NjEgYjZmNDMyYjMyMTQzOGNhY2I1NGNiODg3NWRiYzAzYjBhMGI2ZjljZiByZWxlYXNlMjItbWFpbnQKKzI2NDYyIDU2OWUzODNiZTBkYTlhNmQ2YzdlM2ZjNmM2OWZmYTM3MDY4YWVkMTUgbGVnYWN5LXRydW5rCisyNjQ2MyBkNDQ1NDVjNGE0N2E4MmYzMjBlNTA1YjAyMjZhY2IxOGM0Njk3YzY5IGxlZ2FjeS10cnVuaworMjY0NjQgZDI3ZTk3YjhhODY2ZTZkYzRmYmNjYzI4YzUwNmM2YzU0NTYxZDc5NSByZWxlYXNlMjItbWFpbnQKKzI2NDY1IDI2ZTNmZThhODhmNTdiNzFjY2FmYmMyZGEyMzhlNzFkOGZkMzZkZmYgbGVnYWN5LXRydW5rCisyNjQ2NiAwMWY3M2ZkNjYzMTA5ZmIxMjI0M2Q4YmU1NTllY2YzMTYwMTgzYzRhIHJlbGVhc2UyMi1tYWludAorMjY0NjcgOTc4MzZmNjE5M2RjMzA3MTViODIwZmMxMTBiOGYwZGJjNmIxNDM3NSByZWxlYXNlMjEtbWFpbnQKKzI2NDY4IGY1ZWRmNzAyNTI2NzY4NWUzMTcyOTUyZWJiNmNlZmFmMWY3NjRlYzcgcmVsZWFzZTIxLW1haW50CisyNjQ2OSBkZjQ1YWRmNzdkMzZkZmRlNGQ4YjYxNGZjMmNjNzM0NjJmZWQ3ODUyIHJlbGVhc2UyMi1tYWludAorMjY0NzAgN2IwMGRhYjk4OGNmNDQwNzg2ZTM5Y2E1ODk5NTc4NTBlYzBhNzdlMyBsZWdhY3ktdHJ1bmsKKzI2NDcxIDJkM2EyYmViM2Q0ZDcwMjlmM2VlOThkNTdlZDViNzM5YzQ0NmI2NmUgcmVsZWFzZTIyLW1haW50CisyNjQ3MiA0MDc5ZTljMjNmYzE3Mjc2M2JlYjZkOGY5ZjRiZjlhMTdkYWM4MzMwIGxlZ2FjeS10cnVuaworMjY0NzMgYTNjOTgyZDQxMmI0NmUxY2Y5NGNmNDRjNzIzMzM4ZDcwZjlkZTRmYSBsZWdhY3ktdHJ1bmsKKzI2NDc0IGU3NTEzZTE0MmM3MGVkZmJjOTIzNDEwNjlmYjI0ODY3NWM2NzAxZWEgbGVnYWN5LXRydW5rCisyNjQ3NSAxZGEwMmJiYTYyNzY3M2FjZmM0M2IwM2NiNDFlMDJjZGIzN2YyNTE4IGxlZ2FjeS10cnVuaworMjY0NzYgNzEyMWQ3ZDU3MmQwMWFmMzBiNjIyNmQ4NTBmYTc3MWU1Y2JiZTExYSBsZWdhY3ktdHJ1bmsKKzI2NDc3IGZkZTg3OGJjMGUzYmU1ZTQ5ODE3OGYxNWMyZGFmZDBlZDJkN2Q1OTUgbGVnYWN5LXRydW5rCisyNjQ3OCAwZmZiNTRiMWMzZWE1Y2ExZTg4Nzk0Y2YxOWVkMzEyYmM4NTgyNzUyIGxlZ2FjeS10cnVuaworMjY0NzkgZjkxN2U3YTZlOTExYjc3MWUxZDYxNDU4ZGRmMzdiYWZhMmU1MGZhMyBsZWdhY3ktdHJ1bmsKKzI2NDgwIGZhNDFmMjQxMDY4ODczMTJiNWY2MjJjYjEyOTk0ZjE2MzVkZWNhZGIgbGVnYWN5LXRydW5rCisyNjQ4MSA3MzdmNDQ1OGU1ZGUwMTFlMDNjMzE5ZTA4ZTM5NTM2OGZlNzk2N2I4IHJlbGVhc2UyMi1tYWludAorMjY0ODIgYjBlNTlmMWU0OTVhYzZkYjk1NjZmODg3ZGM4MjJhMzcyNTdmZjQ0YiByZWxlYXNlMjItbWFpbnQKKzI2NDgzIDYyN2I3Y2E1MjIxYWMwYzkxZWExOTM5MWE3MjNmZWU4YmM1MGNlYWIgbGVnYWN5LXRydW5rCisyNjQ4NCAyMmRhMjYwODI4NWNmZTc3YTRlYWJjNjY1ZmNlN2I1MjM1NjUwM2E1IHJlbGVhc2UyMi1tYWludAorMjY0ODUgMGJhMjMzNDFlNWNmZjRlOGU1ZWQxYjc2NzZmZTU3NjlmN2FhZTc4NSByZWxlYXNlMjItbWFpbnQKKzI2NDg2IDkwODA1ZmNjNmM3MDI1NzNmMTE4ZWI5OWRiYzdkYTI2ZGQzNzUxZjQgcmVsZWFzZTIyLW1haW50CisyNjQ4NyAzNjhlODA4MWU3M2M0ZGJkMjgwNDNlYmUxYzhiYWEzZTY3OGRmMWNiIHJlbGVhc2UyMi1tYWludAorMjY0ODggNzA2NTBhZTFhMmNmMDAyM2YxNzM4MWJlMjhkZWZiNzg0MTA0MjBlOCBsZWdhY3ktdHJ1bmsKKzI2NDg5IDVhYWYzZDdiOGQ4YzA4OTNiMTUwZWYwZGI3NzllZDBmYmU0NDg2ZGYgbGVnYWN5LXRydW5rCisyNjQ5MCBhZDQ0YmYxMTc5ZWIyNTRiNWNhOTdjNzU1ZmNjYmZlMmJjNTU5YWNkIHJlbGVhc2UyMi1tYWludAorMjY0OTEgZGUwOWI4NzRmMDdhNjg4Y2NjNjYyNzBiNzgzZTdhYjA1ZDI4ODEzYyByZWxlYXNlMjItbWFpbnQKKzI2NDkyIDkwYWRiY2Y2MjAxMzYxYzdkYmI4Y2M4MzUzOWFkOTc3NTAyYzQ0NTMgcmVsZWFzZTIyLW1haW50CisyNjQ5MyA2NzU3OGE4MzBkODFjYTM5MjZlYmU2OTZjOTE5ZTAzOWI1ZjAzNTI4IHJlbGVhc2UyMi1tYWludAorMjY0OTQgNmRhMWY5OTE3ZTliM2U1MzM1ZmI1NWFiMzgxYmQ0MmE1OTdmN2Y0OCByZWxlYXNlMjItbWFpbnQKKzI2NDk1IDQ2OTRhMGRmMTc0ZTQ4Yjk1MWJhZWU3YjliYzVjY2VkMWNmMzA2M2MgcmVsZWFzZTIxLW1haW50CisyNjQ5NiBhMDQ3ZjE2ZmI4YjNlNzIyMGM5MjE1YjQ4ZDI3NTI0ZTY4MTllODA3IHJlbGVhc2UyMi1tYWludAorMjY0OTcgZDliNzFmNjI4MTRmOGQxYTVmZTZkOTUxOWY0MWI4OWNjNWNhMjljOCByZWxlYXNlMjItbWFpbnQKKzI2NDk4IDkxYTIyMjhmMzAyMWI3OTJkMGRkOGQyMjNlOTYxNDk1Yjg0MmIwNjIgcmVsZWFzZTIyLW1haW50CisyNjQ5OSBhYjUxMjMyNzRjY2ZmM2Y2ZjBlYjk0NzhlMWNkYmNmZjI2YWFiODk1IHJlbGVhc2UyMS1tYWludAorMjY1MDAgMmExMTE0NGY4ZjBjMDc3ODM2NjE5OThhNGI2N2ZjY2NjMTdjMDVkNSByZWxlYXNlMjItbWFpbnQKKzI2NTAxIDQ2ZmZiMTQ5ZWE3M2E0NDE0NDI2NWIyZWRhYWFmOTk2NzgyYzMxNzEgcmVsZWFzZTIyLW1haW50CisyNjUwMiA4YmEzMGUyZDhhZTY1NmQyZTI3NmQ1MWM4Y2E3NWRkNGMxOGUyN2NjIHJlbGVhc2UyMS1tYWludAorMjY1MDMgYjdmOTUwNmU2MGM5NGZlMDFmZjZmZDk2YmI5NzM2NWUzODgyNzZmYiByZWxlYXNlMjItbWFpbnQKKzI2NTA0IGE1NzVlNmVlODVkOTk2OTU1MTRkMWE5MDU1Njc0MGJhMGNlYmMxM2YgcmVsZWFzZTIyLW1haW50CisyNjUwNSBhMzZmOWZiMmM0MDQyYWYyNjQ1Mjg2NDY2ZTI3NmEyMzYwMjdlMzU0IHJlbGVhc2UyMi1tYWludAorMjY1MDYgMGVjZWY4YmZiZDRiMDIwMDI1OTc3NDZjYTRhNDk4MWU3ZmMwYmEzNSByZWxlYXNlMjItbWFpbnQKKzI2NTA3IDYxY2MwODc0NWQzMTU5MzYwYWIzNGE4YWUwYzlmYzZiMDgzYmRlNmMgcmVsZWFzZTIyLW1haW50CisyNjUwOCBkYmYwMTNjYzNkZWVlMGE0NWZlYzk0NmRmMTMwMWM0ZDc2MjRlMDgzIHJlbGVhc2UyMi1tYWludAorMjY1MDkgYzQ2MDljYTE3ZTNlYTBkMDc4NTNiZmIzY2RmMDIyOTVmMTE4Y2NkMSByZWxlYXNlMjItbWFpbnQKKzI2NTEwIDYyZmFiYmQ0NTdiZTZiNGI0OWNiZWRhZGUwODkxMjE0OTU0OWI5MWYgcmVsZWFzZTIyLW1haW50CisyNjUxMSA1MjI1N2FmZmUwYzllYTNhYTUzMjc3ODA2NzhjZjIyMDkwMmFlOWY1IHJlbGVhc2UyMi1tYWludAorMjY1MTIgZjc2OWI0OTU4ZTY2NjM5ZmJmNmMyMzdiNmU3YmM0MzkxZTA1YTU1MCBsZWdhY3ktdHJ1bmsKKzI2NTEzIDk1MDUyNzE1NjUxYjYwMGQ2MDRlZjU5NzRiOTZhMDU5YjUxYjU1OGMgcmVsZWFzZTIyLW1haW50CisyNjUxNCA5MzY4NTY3YTEwNDdjZTc4Yjk4YjkyZTdhZDg2OTkzYWVjOWM1ZjUwIHJlbGVhc2UyMS1tYWludAorMjY1MTUgMWViNDJmYzY4YjVmODVlOGYyOWNhYjZhZjMwMzBmZTg2M2ZkODc4ZSBsZWdhY3ktdHJ1bmsKKzI2NTE2IDYxZWI3MTgyNTM1ZWYwODUwOWNlMDZmOGY4YTg5MjI1OTgzM2RjNjggbGVnYWN5LXRydW5rCisyNjUxNyBhYWU4MTRmOTRiYWRkZmFkMDg4OTcyYmUyYWY0MTdlNjllNjM3NGI2IGxlZ2FjeS10cnVuaworMjY1MTggNTRhZjQ0OTY3NjA0NTVmNTVkMTllZGRjNDcwZjA5OTAzNGZiZWU4MCBsZWdhY3ktdHJ1bmsKKzI2NTE5IDRhYjIxZTM1NDQwM2UwNWJmYTFjYzVlZGQ1Njc4NDZiZWVhMWZiYTggbGVnYWN5LXRydW5rCisyNjUyMCBmY2EzNzljMzA5MDZlMWQ2ZmFjOWJjYjRhODVlYmQ5MzE0YmUyZTA3IGxlZ2FjeS10cnVuaworMjY1MjEgYzU0OGU3MjZiM2JjOGJlNmM3ZGEwYmVjZDZlYWE4NTIxODc1YTlkZCBsZWdhY3ktdHJ1bmsKKzI2NTIyIDM2MmMxYjgxZWU5Yzc5ZWI2ZTZhZjNlMTc3MDhiYzlkZGNkM2U3NWIgcmVsZWFzZTIxLW1haW50CisyNjUyMyBkZDQxNjM3NGFiMzg2MmUyZWFkOTBkM2NhNmZhMWZmNjU4ODIxMzY3IHJlbGVhc2UyMi1tYWludAorMjY1MjQgOGMxNDQyNDViMzE1Y2Y0NDRjYWUzNzNhMjViYzk1MmZlNWJjOTkwMSBsZWdhY3ktdHJ1bmsKKzI2NTI1IDg4M2Q2OWRlNTYwYmZmOTExZjczMmZiOTA0Mjg4N2M2YmI0NDVmNjEgcmVsZWFzZTIyLW1haW50CisyNjUyNiAxOTVmZTVmZjUwYWI5MDBiMWMyNTJkNGMzODhmZmRjODJhYjczNjllIGxlZ2FjeS10cnVuaworMjY1MjcgZjBkYzk3YmI5YzBkZmE1NzI2ZWViZTI3OTI1MTZiMzYzZmQwZTA2MyBsZWdhY3ktdHJ1bmsKKzI2NTI4IDBhYjI0NWRlN2RkYTc0Y2RjNDRkNTMyY2Y2YmI5OGMxOGZmYzI5YmQgbGVnYWN5LXRydW5rCisyNjUyOSBiNjNmNGExOWViZGQyN2Y4NzI2NGEwYzllNWRhNWUxNGRjZjExNjVjIGxlZ2FjeS10cnVuaworMjY1MzAgNzEzZmY4ODlkMDk0ODU5ZDQxM2Y0ZTFiMjE5NDdjZmMwZGYyZTA2MiBsZWdhY3ktdHJ1bmsKKzI2NTMxIDNhMGEyZjA3N2I4ZjAxMDlkNGIwYTAxYmU0NzI0NDg0YTIwNjIxN2EgbGVnYWN5LXRydW5rCisyNjUzMiBkNWNlN2ZmNTMxYmQxNmJlZDAxNjFjN2E1MzI2ZDE0ODBmOGE1M2VlIHJlbGVhc2UyMi1tYWludAorMjY1MzMgZjAzNTcyMDg0ODUxYjQ5ZWY4ZmEwZDlhMDNkMzRlMGQ3Yzg0YjUwZCBsZWdhY3ktdHJ1bmsKKzI2NTM0IDJmYzk0YmE1ZGJmZjEzMjkyN2RjZTdmNTU5NTRkYTdkZWRhMTM5MmIgbGVnYWN5LXRydW5rCisyNjUzNSBlMWQwZDdjNjk5OWE1MTY3MzhkNzZkNTkwNDQyZWNkYjMzMTMxYjM2IGxlZ2FjeS10cnVuaworMjY1MzYgMTYzMjg3NjFlYWJmNTk0Y2QyM2EzYjk0OTQ3NjE1MmNmNTE5Yzc2MiBsZWdhY3ktdHJ1bmsKKzI2NTM3IDY4ZDcwYjQxMDA5ZWQ5NjQxMGNmODQyZGQ0OTNkNmNiM2UyZmQxODIgbGVnYWN5LXRydW5rCisyNjUzOCBlZjczZmY3YTk4OWU3ZjBlNTk2NDlkZWI4MWY0NDUyZjRiNjk0Nzc5IGxlZ2FjeS10cnVuaworMjY1MzkgOGNmMWVmODE0ZWU0M2E4YjhjYzhkNTYxOGFkMTBiZmQwNTBiODYwMiByZWxlYXNlMjItbWFpbnQKKzI2NTQwIDYyMTg4MjhiMGExMTJiZGVhODY2Y2IwZTRlYWIyNDFhMmI2MjAwODMgbGVnYWN5LXRydW5rCisyNjU0MSAxYTYxODE5NmUxNWE5YzU3MzAzNWRiOTYzM2U5YmI0MTFkZDIxMGFmIHJlbGVhc2UyMi1tYWludAorMjY1NDIgMWRmOTMxOGIyYjhlMDZlM2YwMWE5YTI2M2NlZGE1YmIyNDU4M2JmOCBsZWdhY3ktdHJ1bmsKKzI2NTQzIDFhNzdhZjYxMTEwNTlmYmQ3NGQ3MmFhOTJhMzBhYTBiOTY1MDc2NWIgbGVnYWN5LXRydW5rCisyNjU0NCA5OThjYzQ4NDY0ZmVmYWI3ZjAyZmYxNDZiYTgzYjAwZWM5ZTY2N2JkIGxlZ2FjeS10cnVuaworMjY1NDUgYzI3N2ViYzNjZTBmMTkxM2JhMmVjMTU5YjhiMjg0YzRiNTAxZTJkMyBsZWdhY3ktdHJ1bmsKKzI2NTQ2IGU3Nzk5OTE2NTk2ZDM5ZTU5NjVjYTE5ZDIxZjUwZGRmYzRjMmU0MTAgbGVnYWN5LXRydW5rCisyNjU0NyBiNDM1MmY1YTM0NTIyMTI0NjhkNThhYjk2YjMxN2Y2ZjI0NzVjYjZhIGxlZ2FjeS10cnVuaworMjY1NDggN2MwZThkYmNmNTdhNTk0ZWVkZmE0MTY4ZGY0NWM0OTE4NDRiZmU1MiBsZWdhY3ktdHJ1bmsKKzI2NTQ5IDJmZDYzZDc1ZTkyZjk1Mjg1NGNmOTdlZjRmMzhhMmQyOGM0OGY1OGIgcmVsZWFzZTIyLW1haW50CisyNjU1MCAzNzQzNWY5ZjA0ZDY0NTUyZmEwMDQ4NmVjODFiMzkyZDc0N2MzYTNlIHJlbGVhc2UyMi1tYWludAorMjY1NTEgMGJjM2E0MWQ0ZTQwYTI2YjY3MTc3NWQxMWViODMxMjE4NDNiYjViMyBsZWdhY3ktdHJ1bmsKKzI2NTUyIGQ0NzhmOGFmYzM2ZGQ1MTg0YzhkZDczZmFiOGZkODRmYjdkOTQyMDQgbGVnYWN5LXRydW5rCisyNjU1MyBmMWQ2MTQyMTI4ZDNlNDkzOTkyN2E5OWI4MGZmMWFiN2QwNjliODU4IGxlZ2FjeS10cnVuaworMjY1NTQgNTA4ZmQ5NTJjOWU5ZjIzZTQzZTkwNDAyNWNlODk4MWFkNmEyNzE2ZCBsZWdhY3ktdHJ1bmsKKzI2NTU1IDBjOGU3NjJhNjc3YzQ4MWNiZTI5MTU4ZWM5OTZlN2Y3NDdhYjg3MmEgcmVsZWFzZTIxLW1haW50CisyNjU1NiBmM2JlMDVlNjJhZDFhOGQ2OGQwODhhNGY3MjNiMmZhNjcyZGUyZDg1IGxlZ2FjeS10cnVuaworMjY1NTcgNjBmMjQyNTg5YzMyN2E5Mzk1MDExZDE3MmY5ZDRkZDI5YzI2ZjBlYyBsZWdhY3ktdHJ1bmsKKzI2NTU4IDY3NTliZTA4OGQ2OGJkZTY3Y2IzNDE4ZjY4NmU2ZTgzNzkwMzM0MWYgbGVnYWN5LXRydW5rCisyNjU1OSA5NTBhMjJlYjhjYzhhZGVmNWFkNjkyMmI2OGY0N2VjZmYxODhmNDE1IGxlZ2FjeS10cnVuaworMjY1NjAgMjE3ZWVhOWQ2NjE1OTU4MTI0YjdmZjU4OWM0ZGYxMDY0NjYzMWViNSBsZWdhY3ktdHJ1bmsKKzI2NTYxIGQwNzhmODQ4YWMzYjg4MGY1YzFjODc1OTllNTQzMTRjOTU1OGI0MzIgbGVnYWN5LXRydW5rCisyNjU2MiBjNDA4ZThiMjY3NWFhMmVhZTcyMTE4YWM0MWVjMjdlODkxNGE5MjhhIGxlZ2FjeS10cnVuaworMjY1NjMgNDliZjVhOGZhMTUxN2UxYmY5MWEwNTdhOWFmNDQyZjA4YTIzMjkxNCBsZWdhY3ktdHJ1bmsKKzI2NTY0IDU4M2MyMjZhZmRlNmNiMjA0YTJiZGNiN2IyNjNmOTIxYzBhZGEwODggbGVnYWN5LXRydW5rCisyNjU2NSA2ZTU2OGVlMzFhOWNlYzA4MzBhNWQ5YjBiMDg5ZjkwMzAzY2UyNzJlIGxlZ2FjeS10cnVuaworMjY1NjYgOGY5YWQyYzA1ZGFkZWE5ZTVjM2U0MTRiMDcwMDk3YmNmOWUzYjA2ZCBsZWdhY3ktdHJ1bmsKKzI2NTY3IGZkNjA5ZDJjMTY2OTFmMDIxMDJmODc5NTVmODViOWU4MWUxNDExZTcgbGVnYWN5LXRydW5rCisyNjU2OCA1YzMwMTc3NTY2NWQ5Y2ZhZDg1ZjlkZjdjMzkzM2U1MTYxNDE2NmIwIGxlZ2FjeS10cnVuaworMjY1NjkgMzgyZTM3YWMzNzRkYTJjYTc1NGQ3NjZiZjllY2E4ODI1YjEyMTUzMiBsZWdhY3ktdHJ1bmsKKzI2NTcwIDZiMmFmNmRhZmU3YzczZjU2OGEyZjRjMGRlNTlhNWUxNDRiYzhkY2QgbGVnYWN5LXRydW5rCisyNjU3MSAwZTQ0OTdmYjJkZThkNGExMDk0ODFmZmQyMWZmZmM3NzM4NDI3MDAxIGxlZ2FjeS10cnVuaworMjY1NzIgZTE2ZGJmODc1MzAzNzM4M2JlODVjMTY5YzFlMjRlMTgyNGU3ZDMzNCBsZWdhY3ktdHJ1bmsKKzI2NTczIGVmOTE5ZDI5NWExMjBkNjU4NWE4YjA0ODk4YjBlNzc5N2M1MDU2M2UgbGVnYWN5LXRydW5rCisyNjU3NCAxOWY1M2FhNGUxZTUxNDc3MzI4OTQzYmY5ODVmMDg3OGEwMWQ2MzIxIGxlZ2FjeS10cnVuaworMjY1NzUgZDhlOWY2ZjU3ZjEzMzY1MzM5ZmI0OGM5ZDRhMTI4ZjJjOWQ4NGE1YSByZWxlYXNlMjItbWFpbnQKKzI2NTc2IGIxOWE1YWRiNjk5MDA0OTNhNmI2YmMzMDNmMzc1OWYwNTc4NzJhMTkgcmVsZWFzZTIyLW1haW50CisyNjU3NyBiYTg4OTk4OWE3ZWIwMWZhZGYwYTZkYjEzNjkyOTkxMTc0YjM1OGFjIGxlZ2FjeS10cnVuaworMjY1NzggZDYxNGFlOTQ4YmMzYWUzYjViZWIxZjdmMjZiYTRhYzFmODI1NjJkMSBsZWdhY3ktdHJ1bmsKKzI2NTc5IGIyMzZkMjA4MzBmZTUzZDU4ZjI0YmVhYzc5YmQ1MzhiMWUzYTc0OGIgbGVnYWN5LXRydW5rCisyNjU4MCBiMDhiNTFkY2UyNjRlM2Y2NDE4OGU3NGRkOWQwYjk1YjY4Njk3Y2EyIHJlbGVhc2UyMi1tYWludAorMjY1ODEgYmQwOGM2OTU1ZTliZGQxNjQ0NTA5ZjhiZWM1ZDQ1M2VmODBlNWUwYiBsZWdhY3ktdHJ1bmsKKzI2NTgyIDU1NGYyMTk3YTdhNzZjOGY3MzkxMzM1YTRlN2JjMWFjMzQ3OGJlYjcgbGVnYWN5LXRydW5rCisyNjU4MyBhYjRmYTc4YWZkZGY2MTlhMjZjN2ZjY2JmZWRlNjkyOWU3ZGYzOWQzIGxlZ2FjeS10cnVuaworMjY1ODQgZjVhZWVhYWYwMzk3NGUxZTdlNWVmN2EwYmE2MjIzYjg3NWRlYmQxZSBsZWdhY3ktdHJ1bmsKKzI2NTg1IGVkNWQ3NTkxMmQ2MGRhOTFkNWI5M2YyMzY2MTAxNzRkM2ZhYTRkYWEgbGVnYWN5LXRydW5rCisyNjU4NiBlNjM5ZTM0ZWY5MDExZThmM2FmMzhiN2M1YzFhZWQxMWJkYTA5NTU3IGxlZ2FjeS10cnVuaworMjY1ODcgZGQzNTBiNjM5MzA5OTk0NjhkMzhkMGNjYzI3ZTIxYzZkYmU4MWJjOSByZWxlYXNlMjItbWFpbnQKKzI2NTg4IGE0MzE4OTIzYzdhYTMzNDg2NGQxYjZjOGIzNTZjYTUxOTQ0MzU3MzUgbGVnYWN5LXRydW5rCisyNjU4OSA2ZGI2ZTNkYzgzNjZiZWM2NjY0MjVlNjdjZTAyYjdhMzRkMTQ4MTU0IGxlZ2FjeS10cnVuaworMjY1OTAgMmI0N2QwZGNmYTY2NmE4ZDU4MWMzNGIwYTZhYmI3MzhkNTE1OTVlZSBsZWdhY3ktdHJ1bmsKKzI2NTkxIDg2MzEyNTU0NTMwMTU5MzA2YjRmZGM4NDRlZmQ0NjBjYWRhNTE2MzUgbGVnYWN5LXRydW5rCisyNjU5MiA4YmI5MGU4YmYzNjNkM2QwZjRkZWZiMTczMjczZTUzZTc2ZWQxMThhIHJlbGVhc2UyMS1tYWludAorMjY1OTMgZDMyNTQzMzM3YTIxNzVlNWJkZTczODk5MzkwZDFiMjEwNDJhMWM4NCByZWxlYXNlMjEtbWFpbnQKKzI2NTk0IDQwYTE4ODA1NTM2OTFmY2M5OWIzZTVhY2I4NDVjMjU2OTJhYWYyN2IgbGVnYWN5LXRydW5rCisyNjU5NSBhZWYyNDhjMTY0NWEyNDJiYmM3MTVlMDYzMWNlOTA2YTRlMTBiYWUwIHJlbGVhc2UyMS1tYWludAorMjY1OTYgNzcwYzJkMmY1NDcyOTliZDUxMjMwNjAxNWVkYzUxMjI0YTQyMDRkNSBsZWdhY3ktdHJ1bmsKKzI2NTk3IGY1MWQxYTJkNGE0YTFmYWQxYWEzYmE0NmRlNGI0ZGI1YzA0MmEwNjYgcmVsZWFzZTIyLW1haW50CisyNjU5OCA1ZDEzNWU0MTRjNzY0MzJkZDNlMjE0MjE5OTFjMmYyOWUxNGRiZDc5IGxlZ2FjeS10cnVuaworMjY1OTkgZDMyOGU1YmI4YTg4MGY2NDgyNThiMjhiMTUxMWE4N2U1OTQzOGE2YiByZWxlYXNlMjItbWFpbnQKKzI2NjAwIGRhYmIwYTNmNDdhNTU0MjAyMDUxZmI4ZDVkNjc4YmRkYjJiMmQ2ZGMgbGVnYWN5LXRydW5rCisyNjYwMSA3NmM0NTAzNzExM2ZkYTM2M2MyMDk1ZjJiMmU0NWM4ZWY1MDRkYjc1IGxlZ2FjeS10cnVuaworMjY2MDIgMzA0NThhMTFiNWUwOTNhZDUzMGFmZjllODQ1NDNhZWY4NzcyMDFjZCBsZWdhY3ktdHJ1bmsKKzI2NjAzIDRlMjM0Yjg3MTcwYjA4ZWUyNmE1ZGFkOWE5YjdjOGI0NmQ4YjMyMmUgbGVnYWN5LXRydW5rCisyNjYwNCAyNGIzZWFkODljYWU4NzgzNjBlNDNiOWUzZTJjZWYzYWUxZWRlNjUyIGxlZ2FjeS10cnVuaworMjY2MDUgOGZlYzExMGU5ZDAyMDg0OTBkYzkwYWQyZjZmYTc2MDZmN2Y4MWI5OSBsZWdhY3ktdHJ1bmsKKzI2NjA2IGUwNDcwZjJkZDQxMGU4YmI3NTIxZjQzODNlZThjMDA1YmUzMWZmNjggbGVnYWN5LXRydW5rCisyNjYwNyA1ZmRhZGM5NDI2NjUwMmQ3MjY3M2RkMmYzZmYxMjU0MzQ4ODA1NzgzIGxlZ2FjeS10cnVuaworMjY2MDggYjBiNjMyMTA2ZmQ3NjVkMWNhYmQ5Y2Y4MThjNTRlNmU3M2QzODYwNyBsZWdhY3ktdHJ1bmsKKzI2NjA5IDk3NjUwZWRmNThiYjE3ZGIzOTYwMjI1ZThlZDFhZjFiZTY5MGU1ZmQgbGVnYWN5LXRydW5rCisyNjYxMCA1ZTgwYWQzNmQ4ZmZiYzQ0YjE0MmI3ZmI0OGY1ZjE1YTJlOTlkNjE5IGxlZ2FjeS10cnVuaworMjY2MTEgMjg0Y2ZjYTc0ZGY0MGQ2MTM1NmQ0MWZiYTBjYjZmMTA5ZWYwYWNjYiBsZWdhY3ktdHJ1bmsKKzI2NjEyIDQwNWIyOTFjMzIxZGEwZTkxYzExM2FmYjA0OWM3NGFiYzZmZmI0NDAgbGVnYWN5LXRydW5rCisyNjYxMyA0ZjMzNWNhM2YxMWNjMTg0NDE4MWMzMjZkMDE5YzU1YmUyNjM0ZTQ0IGxlZ2FjeS10cnVuaworMjY2MTQgNzJjYTBmZDRkY2E2YmY1NjU4YTIwZWY2NTMzYzFkZDNkZTBhNDI5ZiBsZWdhY3ktdHJ1bmsKKzI2NjE1IDliMTc1MDE4ZmRlZjc4NWNhMmM5ZjdlOTUyMGNiNTY2MjExZWM0NTMgbGVnYWN5LXRydW5rCisyNjYxNiAyOTIyMTEzMjE3Njk3YzFiMDcxY2I3OTM0ZDhkYjVlZjRkMGIyNzAyIHJlbGVhc2UyMS1tYWludAorMjY2MTcgYTgzOWE2YmU4NTc4OGQ1MDM3MDRhZjRmNDZjN2YyOTYzNTM0ZWNjYyByZWxlYXNlMjItbWFpbnQKKzI2NjE4IDY2N2IwMjZhODlkOTBlMmU0OGMxZjIwMTg5MjYwZTNjMDI2NGFkYzcgbGVnYWN5LXRydW5rCisyNjYxOSA5YTliZWMxMGFhOGM2Y2QyOGI3MjllYzAwMDBmNGU2MTY2NzFmNzM4IGxlZ2FjeS10cnVuaworMjY2MjAgMWNmODg1OTMxNjY5MzkwNzI4YmY3OWI3YzM5NmRlNzA2NzBiYTUzOSBsZWdhY3ktdHJ1bmsKKzI2NjIxIDllMzUzMmI3NTQ3MWU2OGY2Y2NmNjk4OTZkOTEzYmY4Nzg1ZTk1OGYgbGVnYWN5LXRydW5rCisyNjYyMiBlNTI0OWE2Y2MxZDg3ZmU2YzNlMzI5NDY4ODQ0OTc2MDNhMDk4YzQwIGxlZ2FjeS10cnVuaworMjY2MjMgNzM1Mzk3N2Q2YjY0YWNmMjBiZjI1NWY3YmNmMWRhYzE0NzMzZTI1YyBsZWdhY3ktdHJ1bmsKKzI2NjI0IDM3ODEyZjJiYTFhYWJlYjU4YWI0MTgzY2UxZTRlMTc0YjU2MGNhMDggbGVnYWN5LXRydW5rCisyNjYyNSBiNTcyZjdhMGJiNTYzNWM1NmY0ZGY3ZGI5NTRiOTgwN2IzN2JlMDI4IGxlZ2FjeS10cnVuaworMjY2MjYgOGQ0YjI1Y2VlZWZlOWY5MThlY2Y1ZWYxNTdjYTBlZWQxZWJiZjgyMCBsZWdhY3ktdHJ1bmsKKzI2NjI3IDdiNjZjZDE1ZGNlOTkwMzFhOTdhNDA2YzE0NGE3YzIzMzc5MzM2YmEgbGVnYWN5LXRydW5rCisyNjYyOCAyMWNlNWQ1ZTBlYzcxNGE5NmNiNjcyNzUwMDMxNzE3YmY3ODM4Nzk2IGxlZ2FjeS10cnVuaworMjY2MjkgNDkzMjA2YjcwMWRiNTE3NDE5Y2QyZjg3ZTM0MTc1MGY0YzZiMzczZiByZWxlYXNlMjItbWFpbnQKKzI2NjMwIGVjMmE1NTU5ZTc2OTViYmQ2ZTc1NmZlNWZiNjFlYjJlZmFkNjM2NjQgcmVsZWFzZTIyLW1haW50CisyNjYzMSBmOTcwNTg4ZTg5YjEwZDMyZWVjMDlkNzJmOTA3ZTEzMWNjYzUzYWIyIGxlZ2FjeS10cnVuaworMjY2MzIgODAzZTZhNjk1MzA2NGMzOTllMzM3OGIzYTVhM2ZhMmI3MmY1OTliNiBsZWdhY3ktdHJ1bmsKKzI2NjMzIDU4Mjg1NWY2ZDM1YmVkZmIwYjE2N2NhY2IyY2RiMWZkYTZhZDdkOTEgbGVnYWN5LXRydW5rCisyNjYzNCA3MGEwODk3MjIzOTM1YmYyMWNhMmYwNDQwNDgwNjg0NGMxN2ZhM2IzIGxlZ2FjeS10cnVuaworMjY2MzUgMjljYTllMTJiZjEwMTlhMmM5YjdlOWVkMDVhNjE5OGEyN2E1YTAzZSBsZWdhY3ktdHJ1bmsKKzI2NjM2IGQ0NzI5MGRkMmQ1N2U2NTE2NTYxNGRmNGIxZjllZThjOGUwYTZlZGQgbGVnYWN5LXRydW5rCisyNjYzNyA0NjQ1MGYxN2EwNzA1NjFjNmY1YWM4NzIxMjBmMjc2NDVmZDg4ZDkxIGxlZ2FjeS10cnVuaworMjY2MzggMzE0ZTA4ZTgwOTBmYjRkOTBhNmZiNGM1YjExOTUyYTI0ZjI1YWYzYSBsZWdhY3ktdHJ1bmsKKzI2NjM5IDVmNWNlYTI3MmI0NjIzMWMwOGUxMGU2MmNjMmUzMjdmYWRiOTQzZmMgbGVnYWN5LXRydW5rCisyNjY0MCAyMDA1NTlmY2M2NjRmN2I2NmI5MzgyODI1MWUyY2Q4MWIyM2E1YTdiIGxlZ2FjeS10cnVuaworMjY2NDEgOWUyMmE4NzAyZGUyZDg0ZDQ4Y2VkYTg3MGRkYjBmNzE4YTYwMzBkMiBsZWdhY3ktdHJ1bmsKKzI2NjQyIGY1ZmQ3ZTI5NTg5NzU5NWNmMTI3NmQzNWJmZTM1MjczMmI2NmE5NmUgbGVnYWN5LXRydW5rCisyNjY0MyBhNGU3NWQ1M2QzMmI0ZjU3N2I1NjFhZDVmYTA0YTQ2YWVkOTI2ZDk3IGxlZ2FjeS10cnVuaworMjY2NDQgM2VkZGQ5ZDY4YWY3ZGJjMDQ1ZjFkNjlhOGYzMDJiN2QxMjJiMjViYSByZWxlYXNlMjItbWFpbnQKKzI2NjQ1IDAwZjY2MzYwYmUxOTg2MDY1MjM0M2JhYjc5ZWExNjIxMTIwYmU2NjMgbGVnYWN5LXRydW5rCisyNjY0NiBhZmUyNjM2NzJmZDg0YmFiYmQzNTM4NWE0MjhjZmQ1MjE0MTFmZTc0IGxlZ2FjeS10cnVuaworMjY2NDcgZTExNDcxYTA2MjZjMTIyZDQ1YTkxODg3NDgyOTFkZWIzN2NjNjJlOSBsZWdhY3ktdHJ1bmsKKzI2NjQ4IGI2MGI3M2Q0MWViNGE4M2RlNGYxYWQ2MTg5OGY2OGQxNjlmNWE1NTAgbGVnYWN5LXRydW5rCisyNjY0OSA0NzI4YmVkZjRiNzg5YTcwNTE4ZTgxMmZlYjM2ODFiMTcxMzZjZDZiIHJlbGVhc2UyMi1tYWludAorMjY2NTAgN2M2MDk0YjE4ZDE2MTAwYWU5ZDQyZDQ3OGI0NzNhMzYxYTE4N2IwOCBsZWdhY3ktdHJ1bmsKKzI2NjUxIDVkZDUyYTliMDQzOGE4Njk1ZmMyODQzNzRjYTVmYTUyZTBlY2Y4MDcgcmVsZWFzZTIxLW1haW50CisyNjY1MiA2NTYxMGJjNGU2YTU3M2YwNDdjNTRkMmRkOTk1MDkxMTNkNDRhOGQ4IGxlZ2FjeS10cnVuaworMjY2NTMgYjkzZWQxYTRlNDlmMWE4NjkyZTAxOGEwOWRhNTE2NDNjZGIxNGFlMyByZWxlYXNlMjItbWFpbnQKKzI2NjU0IDhmMWIzNzFmZmJhZjYxZDdhYjI5M2RiNDcwNzI4NWQ4NTI5OTkzMGYgbGVnYWN5LXRydW5rCisyNjY1NSBiNzM1ZTg5Y2NkYTc0ZjgwZDcwMmYzM2IyZjZjMjdkYTRkYzFjNTQ2IGxlZ2FjeS10cnVuaworMjY2NTYgNmZhNzZiNGU1OWZlZmU4MWM1MTExOThjN2Y4OTY1ZDAyYTI3OTM3NCBsZWdhY3ktdHJ1bmsKKzI2NjU3IDE3Y2FmZTgwNWYwNDVmNjUyYTY1MjM0OWQ5Zjg1M2M4ODA0ZmNmOTAgbGVnYWN5LXRydW5rCisyNjY1OCAwOGU2Zjk0ZjNhYjAwNzk4NDYyMjVjYzNjNmU4ODQzMjA1Mjk2NGY2IGxlZ2FjeS10cnVuaworMjY2NTkgNWE2YmU4ZmE4ZGUyNGU2YzdhZmEzNzk3ZDUzNzE1OTBmMmZiNGRkOCBsZWdhY3ktdHJ1bmsKKzI2NjYwIDAxNDc4YTEzMjkwODliODAyOWNlMWNlYTgzN2JjMzM0ZWYzMDk1MDQgbGVnYWN5LXRydW5rCisyNjY2MSBiNWY2ZTlmNmU3ZjRiNzk4ZGUwODYwNzZiNTIwMmUzYThjMGM2OWU2IGxlZ2FjeS10cnVuaworMjY2NjIgNTczMmE5Y2M5MWM3YTk0MmIwYmZmYTM3ODhkMDZhZWJiN2I5YmU4MCBsZWdhY3ktdHJ1bmsKKzI2NjYzIDUzZWJhZTc4MjNkOTc0MmYzNTE0YmNkZDE4NTk4ZWFhMzcyMDcxYzAgbGVnYWN5LXRydW5rCisyNjY2NCBhMjE1MzI4NTY1MjQ2MDA5Njk2MmQzZmM0ZmIxZmIyZTQxNzUxNjc5IGxlZ2FjeS10cnVuaworMjY2NjUgMjBhN2IyY2YzYzFmZTM5NWU3ZTViNzNhOWNkMjkxNGYxMTc1MDYzNCBsZWdhY3ktdHJ1bmsKKzI2NjY2IGVmNmUzMWYwY2VlMTI3NjE2YjdiNzBhZWE0MWJiNDI3NzkwNGQwNGIgbGVnYWN5LXRydW5rCisyNjY2NyBjZjk2NDBiZTZmOGE5NTIwZTNmMjFjZDFjNmFhZWMwYWQwYzI3NWQwIGxlZ2FjeS10cnVuaworMjY2NjggOGFlN2I0MGFjNmQwN2ViZWQ2NTcwZDQwNWRhZDcxZTBlYWVlNzY4ZiByZWxlYXNlMjItbWFpbnQKKzI2NjY5IGQwNTMyYWUwNWVkNzJhYzJjNzFhOTNkMmIwOTQyNDkzNTQxNzc3ZWQgcmVsZWFzZTIyLW1haW50CisyNjY3MCA0Y2U2MTE2NTBkMGNlODdlMjM3MDMwMmI5NmIzZTk1NDFkMWFiODc4IHJlbGVhc2UyMi1tYWludAorMjY2NzEgMDE3NjVkMzA1MzJlMjlkNDZmYmI5NDRkYWM4NDhlYzA5MDFkMDg2OSByZWxlYXNlMjItbWFpbnQKKzI2NjcyIGJhNjcyMWFlNGI4MDkzM2NiNWI4MmUwMzVkNzBiNzgxYzQzZDJmOTkgcmVsZWFzZTIxLW1haW50CisyNjY3MyA1ZGJjNzllZTA4ODViZDU2M2MzNGZiM2FkYTAxNGUwMTI3ZWFlMGVlIHJlbGVhc2UyMS1tYWludAorMjY2NzQgMGIwODljOGFjMDc3MzAxMmVjNjBmNjkzZWNmZGYwMzU3ZTE1NDI1YiByZWxlYXNlMjItbWFpbnQKKzI2Njc1IGFhYjQyNzNhN2NmNzE2NzM5YWQ2YWU2NmZlNmI4NDY4YzE3ZWNiOTYgcmVsZWFzZTIyLW1haW50CisyNjY3NiA0YzhmNWE4OTBmOThiZWVlZjM3NmJhYWJiM2ExYjZmYjE0MDhjY2EwIGxlZ2FjeS10cnVuaworMjY2NzcgMTMzNzYzMzMyNzY3MzQwM2FmOGMwYzJmM2YzZTdjYWI3ZjIxNGRkZiBsZWdhY3ktdHJ1bmsKKzI2Njc4IGFmMWZmNDFiZTQ3Yjg0NTMwNmM2ZWJmN2QyZmQ0Njc0MTgxNDhhYjQgbGVnYWN5LXRydW5rCisyNjY3OSA0NmNmYjg1ZjBhYWU3NjA0MDdlMzRiM2I0Yjc1Mjg4NDBmNWYzMmQ2IHJlbGVhc2UyMS1tYWludAorMjY2ODAgYTQ0M2U1ZTVlY2U3ZjYxYzJjYWJjYWEyZTZjNzBiNTQzMDZkNDgyOSByZWxlYXNlMjItbWFpbnQKKzI2NjgxIDIzYmY2ODc3OGEyYTg1YzI5MWFiYWYxZmQxN2RlYzI5NmYyYTE5YmMgbGVnYWN5LXRydW5rCisyNjY4MiAzODg0NDkzNzA5NDYyNDdmMDdlNzdhODdlM2M5YjUyNGIxMjdiOTQwIGxlZ2FjeS10cnVuaworMjY2ODMgMTc0YmEwM2M4OWZiNDgxM2E0YThmYWNiNGM4ZWFmZDFlZjdjYjMxMCBsZWdhY3ktdHJ1bmsKKzI2Njg0IGFmNDk5YjUwYTA5NDY0M2M3N2Y3YjZkMTI3NzcxMzJmZTdjNzhkMzQgbGVnYWN5LXRydW5rCisyNjY4NSAzYzdiMjJkMTEyZDM1ZTNjZjIzZWU3M2MzZTI5NTk2ZWQ2YjkzZTdhIHJlbGVhc2UyMS1tYWludAorMjY2ODYgMTgwNmQwMmMwOGM0NDdhNTJmYWMxOTQ2ODU1MDljNDE1MzA3ZGI5YSByZWxlYXNlMjItbWFpbnQKKzI2Njg3IDY4OTI2ZDBhYWQ0MDNiZjhhNGRhYmRmMDMxYzNiOTRmOTA3NTU3YTMgbGVnYWN5LXRydW5rCisyNjY4OCBiYTI5MDEyODdjYjdjYTg2YmZjZDMxOTE5MTJmODZiMTgxOGNhNDkzIGxlZ2FjeS10cnVuaworMjY2ODkgOGI1OTI2MDMyYjU2YTIwNWE0Y2FlZjNlZTEzZjYzYmY2Y2UxZDUyYiByZWxlYXNlMjItbWFpbnQKKzI2NjkwIGZmZDVkODZlOTZjZWIwZjkyNDExZmFkYzM3NjVjMGZjZThlZTM4MWEgcmVsZWFzZTIxLW1haW50CisyNjY5MSBjMzMwNzdkYzBjODNiOWMxOWRhNjI3OTQxYzA1MGE5ZWVjYTNkYWViIGxlZ2FjeS10cnVuaworMjY2OTIgYWFlNmRjNmIyYTU4OThlMzJjMTAwYzdmNDU4MTA2MmM1ZmRjY2ZhNSBsZWdhY3ktdHJ1bmsKKzI2NjkzIGMxZDFhZTE1ZGU5MmM5YWY1NDY2OWYyZDk3NGIzMDBlOGZhMzg4NmUgbGVnYWN5LXRydW5rCisyNjY5NCBjZDAyYTM2NzA0ZmVmMjNhYmE1MzkxMTE4Nzk1ZjY1OWMyMjMwN2FkIGxlZ2FjeS10cnVuaworMjY2OTUgYzkxN2ZlOWJjNjU0ZmU5NjYwNjE3NzBkYzQwZDRkYjVkYzQ4NTljOSBsZWdhY3ktdHJ1bmsKKzI2Njk2IDNkZWJjOGMzNGNjOTEwYzgyMzcwOGRkYmM1YWUyYjUwZTk4YTBjYmUgbGVnYWN5LXRydW5rCisyNjY5NyA4N2M5OGFmNjFmYzRhYjk1Y2YwMzRmZmJjZmY5NmRmZWY4OTU5MDY2IHJlbGVhc2UyMi1tYWludAorMjY2OTggODM4NDI3ZjBhZjIzMmQxNGRhNDY5ZTFlMWEzMDIyZmFmODM0MDQ3OSByZWxlYXNlMjItbWFpbnQKKzI2Njk5IDk3ZTBiNTA0YzAwMDk4ODFhZWI5NGVhYmI5NTY4NTIwMTA1NzllODUgcmVsZWFzZTIxLW1haW50CisyNjcwMCAwMmQ1MjgzYjFlMjFmYzYyZTZlOWFjMTliODZmODU2YTkwNjFkZmE2IHJlbGVhc2UyMS1tYWludAorMjY3MDEgMzY5N2EzMzY0MDBmYWJjMjYxNDA2NDY2YTY3MDE3ZWJhMGYzMWEzOCBsZWdhY3ktdHJ1bmsKKzI2NzAyIDU1NDIzYzFhYmNkMTQ5ZGU4ODMwZTVmYTY4ZjdiM2RiZDdlZDBkZWQgcmVsZWFzZTIyLW1haW50CisyNjcwMyAxMzA1NmI2MjY3YTI1ZjE2ZWNhMGVhYmY5YzY2YTdjNzZmZWVjYTBmIHJlbGVhc2UyMS1tYWludAorMjY3MDQgMDNiMWU5ODliMWQ5Nzc0NThkNzdiYzZkMzk2NTE2YjBkZDA1Y2RhMCBsZWdhY3ktdHJ1bmsKKzI2NzA1IGJmZmM3MjM2YzRiYTI4OTE0N2RlOGRkOGFhYjdhMzcwOWM4MTU0ZGIgbGVnYWN5LXRydW5rCisyNjcwNiBkOTNmNTM3YTc1MmI4ODZlZGVhNjRhZGZiZTE4Y2Q5Yzg4YjU0ZDczIGxlZ2FjeS10cnVuaworMjY3MDcgODdjNzE2YjI4YTNlY2YwYjBmYjcwZGY0ZjdhMmIxNTg1MTA1MjkxYSBsZWdhY3ktdHJ1bmsKKzI2NzA4IDJkMmZhYTUxZGNmZGFlOGNlM2UwMTI5MDQ0NGUyNjg4YzQ0MDYyMjIgbGVnYWN5LXRydW5rCisyNjcwOSBhYTA4NTU0ZDFhOWI0MWFiOWEyMzI0NzZjMGQwY2I0NjY2OWJiYzk3IGxlZ2FjeS10cnVuaworMjY3MTAgMWM5Y2UzNGQ1MjlkYzM4ZjI5NjA3YzRkY2E2NzU5MzBkYTQ4OTU4MiByZWxlYXNlMjItbWFpbnQKKzI2NzExIGI0OTFhYjc4NzdkMmQyYTI1YTk3OTM0YmJiMGYyOTAyMDI0ODY5YzggbGVnYWN5LXRydW5rCisyNjcxMiAyMzhkZmVjOWM4OTllOGUzM2RjNDc4MTBiNTdjOTE1NzlmY2RhMzdhIHJlbGVhc2UyMi1tYWludAorMjY3MTMgOTgxYzZiNmZmMmYxNzIwMTlhOWQ0MDA5YmViM2JhYzI5YTIwOGYzZCByZWxlYXNlMjEtbWFpbnQKKzI2NzE0IDljOWUwNzM1OWQ2ZTY0MDQ3YTljZmFlZWU3NzZiMjVjZDAxODI2MjUgcmVsZWFzZTIxLW1haW50CisyNjcxNSBkNDY2YmMxOWY3MzEyYWU1NzcwYmVhMTQyMjVhODRhZTk4ZjQyYzBhIGxlZ2FjeS10cnVuaworMjY3MTYgNjdiY2I0ZjUyMzdmMjQ1MjYwNzljZTVlZjMyMGFjMGRiZjYyNWVlMyByZWxlYXNlMjItbWFpbnQKKzI2NzE3IDBhNGQ2YjI0MGFiMjQ4NzdiZGVlODQxZjE3YmZjZmVlY2JjOWI2MmYgbGVnYWN5LXRydW5rCisyNjcxOCAwNjZkODI3NWFkNjQzYWJlYmY4M2JkMWFmODNhY2U4NDRhZDAzMmJmIGxlZ2FjeS10cnVuaworMjY3MTkgZmQ2OWYzZWU3N2VhYzFmNjJhMjY3NDIxMzQ2ZGQ4M2I4MmJiN2Q2MSByZWxlYXNlMjItbWFpbnQKKzI2NzIwIGVjZjA3MGMzNDk5OWU2NTYzN2FjOWFkMzgxZWZjYzgwN2ZmYmYwZWMgcmVsZWFzZTIyLW1haW50CisyNjcyMSA3YmY3Y2YzYTM1YjkwNDRjZGFjMzBkM2UyOGRlMGNmZWNhNWFkYzRkIGxlZ2FjeS10cnVuaworMjY3MjIgYWVlOGYxNmYyNzc0MWQxNjgyMDg1NDEyOGFhY2M5NWM5MDA0MzExMyBsZWdhY3ktdHJ1bmsKKzI2NzIzIDE4ZjhhN2I1NmY4OTAwMjNlYjBlYWUwOTZiYTY1YTk2ZDY4Y2U3MjcgbGVnYWN5LXRydW5rCisyNjcyNCAzNjg0MGE5ODk3MjJkN2U4NDQzZTg2ZTg5YTJkZTFjOGEyZmQ4OWRiIGxlZ2FjeS10cnVuaworMjY3MjUgYmVjMTU3ZGJlZTJlMDhhNmIyNTY2M2RiOTk0NGQ0YzJhMmMyN2NlOCBsZWdhY3ktdHJ1bmsKKzI2NzI2IDNlZmQzNGZlNjY2ODA2NGFhNDNmM2ExMTlkYmU3ZGRmYWYzMThmZmQgbGVnYWN5LXRydW5rCisyNjcyNyAzYjMyM2RmOTQ1YmI2YmYxOWNmYWUzNjViZGQ5ZGY5ZTY0ZDYzNmNlIGxlZ2FjeS10cnVuaworMjY3MjggYjI3ZjM2Y2YzZDNlMDIzZGNlYWE2ZTc3MGFhNzc4OWM4MmQwY2U3ZSBsZWdhY3ktdHJ1bmsKKzI2NzI5IGQzZDg1N2E4ODJmMGY4MzliNzcxYjVjN2NjZGIwY2Y3YWZiYjljNzkgbGVnYWN5LXRydW5rCisyNjczMCA3ZWQ0OWFmMDQ4YmEwOTNlNDczODRlNzQ2NGY3NjRmOGNiYzI5ODBjIGxlZ2FjeS10cnVuaworMjY3MzEgMTA1YmU5MzZiNWMzNmQ2Mzc4ZTcxN2E1MzI4MDZjZGNkODcxZjg5ZSBsZWdhY3ktdHJ1bmsKKzI2NzMyIGFkOTdmY2U5ZGNmZTI1ZWM2OGE2NDYzZjBiMGYxMTQ1MjViMTRmZmUgbGVnYWN5LXRydW5rCisyNjczMyBjNTY4ODhkMTcwOTg0ZTEzMmYzZmVjODhiZGY4MTg0OTJiYTcyMWM0IHJlbGVhc2UyMS1tYWludAorMjY3MzQgNGFmNjY5ZjljNDJlMDgyYjFhZTdlZjU5OWFkMmNkNjU0MzQyYTgyMiBsZWdhY3ktdHJ1bmsKKzI2NzM1IDY3NTFlOGJjZmQyOTNmY2FiMDc2NDBkM2ZlMjQ2OTAwYTUzZDcyYjQgcmVsZWFzZTIyLW1haW50CisyNjczNiAzYjgyNTY3NWQxMTk0NDcyNGFmYWI4N2Q0YmFiMTNiNDJiNjNmODI3IHJlbGVhc2UyMi1tYWludAorMjY3MzcgY2JiZTI4OWU3YzJlOTI4NWYzOGNlNGZhNzBhYzNlYmQ2NzFkYjA4NCBsZWdhY3ktdHJ1bmsKKzI2NzM4IDJmN2Q4NjlkYWQ0ZGY3YmJkZjY3MTE5MWZlNmRlZWFjMDFhZDkwZmUgbGVnYWN5LXRydW5rCisyNjczOSA0ZDZiZWFiNzY2ZTI3NGQ5ZjlmZTMyMTY5ZGJkMmQxMzUzMDA0NDU3IGxlZ2FjeS10cnVuaworMjY3NDAgZTVkZjA4NmVkNDU1MTg1MGVhYjlhOTY5NTI2NjkwNzg0ZjY4ODMyNSBsZWdhY3ktdHJ1bmsKKzI2NzQxIDliZTAxYjdiNmM4MGFiZGM5ZDMxZGMwMDY5NDNlMmU4ZmQzNmY0YjggbGVnYWN5LXRydW5rCisyNjc0MiA4MmE4NTBkYjdlYzU3N2U4MjcwMDgwN2E4NTdmNWNkZTVjOWVkMGFjIGxlZ2FjeS10cnVuaworMjY3NDMgMTMwM2RjMDcyM2ZjYzEyM2M5Y2YwNTg2OTQ2MWZiN2E1NGFlNGU3OCBsZWdhY3ktdHJ1bmsKKzI2NzQ0IGNhOTA3ZjI4ZTJkNTU4MmFjZTE2MmNjNzU4NDI3NWZhZjRlYzU1MTcgbGVnYWN5LXRydW5rCisyNjc0NSAwNzE5YTM3N2E2MTZjMTM5ZmJkMGQ4N2Y0YzMwYzgxYTg1YmYyYjE2IHJlbGVhc2UyMi1tYWludAorMjY3NDYgNDIyNzg0NzA5MzgwYWE0ZWE3ZmI0ZDM2NGI2ZjBiNDVhMWM5ZWUxMyByZWxlYXNlMjEtbWFpbnQKKzI2NzQ3IGY4ZmY5ZmFiOTJjZWU0NTRmYzkzMWJhYTljMTY2NzIxMGVkMGIxZjEgbGVnYWN5LXRydW5rCisyNjc0OCBhOWM5ODE4M2ZmODdmZTY2NThkZDdkOWRjM2QwMzZlOTJjNjE3YjI1IGxlZ2FjeS10cnVuaworMjY3NDkgNmE3YjI2YmRlMGU4YjljODYxZDRkZGNhNDRjYzk2YjU4NDkyMWZiYyByZWxlYXNlMjItbWFpbnQKKzI2NzUwIGM3OGI1MmRhYzk2MzBjMDQzYzZhZWUzM2NlMWJiOGI2YTQ3YTQ2ZDQgbGVnYWN5LXRydW5rCisyNjc1MSA0MGZlMTgzYTg5MjIwMmQ1YzY0NzdkNGVjYzJhOWU4OTYxNmI5NGY2IGxlZ2FjeS10cnVuaworMjY3NTIgZmE3MzIwY2IzN2Q5NWVjNGZmODU5MDA3NTA3OGMwYTBmYzliMmVmYSBsZWdhY3ktdHJ1bmsKKzI2NzUzIDIzMDA3MzQxNDUwNDBiY2E4MWFlYmJkOGNiNmQ4MGU1ZTQ2M2Y2NmMgbGVnYWN5LXRydW5rCisyNjc1NCBkZmQ5OGU5NTIxYjM3ZWY5MDlhMDdlYjMyMWM5NmQ0ZjQ1NDZjYjFhIGxlZ2FjeS10cnVuaworMjY3NTUgNDRmZWNjMzM4ODlkOGMwMGRkMTFkZmY4OGI0YjRmMjljMTAwMDJjMCBsZWdhY3ktdHJ1bmsKKzI2NzU2IGJmZTkxZTFlMzFiMjAwNjI3NjkzYzNmMGQyNTk4ZDQ5MWNhNDgzYjkgbGVnYWN5LXRydW5rCisyNjc1NyAzODg0MWJlYTI0ZmRkZGU5NTNjY2E4NzUwZDczYTlhMzcyYmRjMWYyIGxlZ2FjeS10cnVuaworMjY3NTggMGQ4NzQwMDk0YmVjYTI2ZDcwZWU2NWRlNDIzY2ExM2E3NDcwYTE1ZSBsZWdhY3ktdHJ1bmsKKzI2NzU5IDk1NmQwMzhiMWRkMjZmNTZjMTU3YzY0MDI3M2RmMzA3N2M0MzlhZjYgbGVnYWN5LXRydW5rCisyNjc2MCBhODY4YmFlYmU5NTY0NjU2ZTM1OGJkZmIyNWQ0ZGE3YzY3YjVkZTA3IGxlZ2FjeS10cnVuaworMjY3NjEgOTM1NDJlZmFjMDY2NjliYWFhODRhNzkwNTNiMjhkMzE3ZDQyNDBhMyBsZWdhY3ktdHJ1bmsKKzI2NzYyIDRlNzgxNWM5NWQzZWFhOTRkMzAzMWU0YjU5NmQxZDMzZmExOWQ1NDEgbGVnYWN5LXRydW5rCisyNjc2MyBiOTcyNmJhNzFhYTNmNWU3YjJjNzViNzQyYWRiYmVhZjMwZWZkMDUxIGxlZ2FjeS10cnVuaworMjY3NjQgYzVjMmIyNGRiOGE3MTE5NTA4OTlhZjM0ZDBjNjEyMzFlMjQ1ODJlMSBsZWdhY3ktdHJ1bmsKKzI2NzY1IGIyYWEyNjQ4ZGYyN2IwYWU2ZDY5ZmEwNmFkYjg1ODE3MjI1MGVmZjUgbGVnYWN5LXRydW5rCisyNjc2NiA5NzdlNTM0ZmM2Yzc3NDIyMGNkMjU4YmJlZDZmYTNlMGYzY2JkYzFjIGxlZ2FjeS10cnVuaworMjY3NjcgZTBlZDY4YWRiYTMzMjc1NmY0MjNhMzJlNjJkYjhjMjYxNTBmYzFlMyBsZWdhY3ktdHJ1bmsKKzI2NzY4IGVlMjkyYTUzZTVmY2U4OTRmMDVhNWQwYTY0YmMxOTY3ODgyMTU1MzIgcmVsZWFzZTIyLW1haW50CisyNjc2OSBjNWM0YzExMjEwODc3OTdkZWExMGYzYjQyMTI5OTkxNjdhNzA3ZTU5IGxlZ2FjeS10cnVuaworMjY3NzAgMTBhZTJkNjExYWU5NDE3ZDY4YmEyZTE4MWMwNGU2ZjQ0OGViMjFiNyBsZWdhY3ktdHJ1bmsKKzI2NzcxIDQ3MzM4NWZjYTI5OTI4ODNmYmU5NDY0ODVlMjkzMWIxMzI2MDg2NWUgbGVnYWN5LXRydW5rCisyNjc3MiA5NGJmNmFjZWZmNzg4YmVmYWRmYjU4NDQ5ODkwMTYwZTgyYmYwYTgyIGxlZ2FjeS10cnVuaworMjY3NzMgMjMzOWRkZTZiYWJlY2Y4ZjEyOTJlNDg0ZTdkZjMwMjE1ZTdjMGVlZSBsZWdhY3ktdHJ1bmsKKzI2Nzc0IDYwZDg2YjJlYWIwZmFmYTIyODkyZTQwODQzYzVhZTBkOGQ3MzQ0YzYgbGVnYWN5LXRydW5rCisyNjc3NSBlNWVmMTY2ZmMyMmY2MjNlOGM2MGZmYzE2ZWU4MTU4YzI0MzYzMmI4IGxlZ2FjeS10cnVuaworMjY3NzYgMjExYjE2YWMwNjZhNzA0ODM0NzIxMTI4NzRiNzhjOTdjNmVhNTdjOSBsZWdhY3ktdHJ1bmsKKzI2Nzc3IDU4Y2FjNzA2MDJhYTY5OTM1OTA5NDY5YjdkNmI3Zjk0Zjc4NGExOWEgcmVsZWFzZTIyLW1haW50CisyNjc3OCAzOWU1YzBkNmMxODIyYTgwZTdiZjljODhiNmVlYWRlZTAxZTdiYzYzIHJlbGVhc2UyMS1tYWludAorMjY3NzkgODFkMDY3MjA1Yjg2ZjJiN2QwNTFlZWViMzAxNWE5ZWY1ZmE3ZThmYSBsZWdhY3ktdHJ1bmsKKzI2NzgwIDRmNjdlNTY2ODZlNThkOWFlZGNlNjk4YzA4ODE5NWFhMTcxN2ZjNjcgbGVnYWN5LXRydW5rCisyNjc4MSA5MGVmYTFjYWIzYmMyYzc1NjFkOGQ4NzFiOWM3NGI2NGRmYmY5MjUyIGxlZ2FjeS10cnVuaworMjY3ODIgNjQyYTQ1M2U3YTJlOTIzZTA1OTAwZTYyNTkyMWU4N2MyMGY4NzQ2NyBsZWdhY3ktdHJ1bmsKKzI2NzgzIGYzOGJkYjJmY2FlMDJkMDU1N2M3ZTJmMDFjZWI4OTkyYTQ0NDE3NzYgcmVsZWFzZTIyLW1haW50CisyNjc4NCBjMzc1YzViMjY2MzEyZTEzMDM1OTg0NDIyNTk5NzhkYzE0YmU2MTk2IGxlZ2FjeS10cnVuaworMjY3ODUgNjM4OTBiYzI5YTdjYmY0Zjg5NjZiMjA4MDE2MjliYWE3Zjg3YWUyYSBsZWdhY3ktdHJ1bmsKKzI2Nzg2IDYyNDAzYjkzZjQ3MGIyMmUwOTgyOGEyODlmN2YxY2VkMDRkNmMxZmUgbGVnYWN5LXRydW5rCisyNjc4NyAxMTU3MjgxZjAwYTAyYjEzNzdmOGY3ZDFlYjE4MWQ1YWRhMmJjYzk0IGxlZ2FjeS10cnVuaworMjY3ODggYTRkNjc1YjhiNTNjMDI0MDc5M2JlOTI1MjQ1OGIxMDMwYWNlOWU0MSBsZWdhY3ktdHJ1bmsKKzI2Nzg5IDhlYmE0YzkyZGYyYjRlNGU1NjE3ZTVkZjQ5MjlkNjVhZWJlNjczYjIgbGVnYWN5LXRydW5rCisyNjc5MCBlMTFlOTUwYWNjMjM1MTYxMDUxZmJmYjg3MTkwN2RhNTI1Y2NkMzIwIHJlbGVhc2UyMi1tYWludAorMjY3OTEgMWJlNmU3OWIxZDQ2MDUwODM5NmE1M2IzMTcxNDcyMWZmNGQwMjJmYiBsZWdhY3ktdHJ1bmsKKzI2NzkyIGFiNTIzMTJmODJjNzkxODg2NDBiYzFhOTE4NTIzNTU1YzZmMzJmMDkgcmVsZWFzZTIyLW1haW50CisyNjc5MyA1NjI0MGJjZGE4OGM5MWYwYjEzMWM5ZmM2MzZkNWM4MGI1Y2MzZGY5IGxlZ2FjeS10cnVuaworMjY3OTQgZmI2NGYyMTE3NmFmYWVhZGUzNTQ5OWQ4ZjQwYWUyNmJmMDRmZDk0MSBsZWdhY3ktdHJ1bmsKKzI2Nzk1IDk5M2M3NzU4N2RjYTIzOTIzMmNkN2IxZmZmNjc1NTg0Y2M1ZjQxNDYgbGVnYWN5LXRydW5rCisyNjc5NiAyNWZkNGE4ZjllMDkyMjc0Y2QzZTMyM2U5YjEyYWFlMTczYWY4YzI5IGxlZ2FjeS10cnVuaworMjY3OTcgZjlkNWUxZmIyYWE2OTczY2FhNDJmN2VlZGJiNDlmY2U0NGEwMGJlZCBsZWdhY3ktdHJ1bmsKKzI2Nzk4IDgyNDYwZmRhNGY3NjcxMGI2M2EyMTJjYWVhNTA4ZGQ2ZTRiZjI0MTkgcmVsZWFzZTIyLW1haW50CisyNjc5OSAwOGQ2YzhiNzgwZDk2OTlkMjk4ZDY5ZThjZGI0Y2I1YjZlYzMwZGY0IGxlZ2FjeS10cnVuaworMjY4MDAgZGUwYWMwM2U1ZTcyZDhjODU2ZmZmOGFjZmMyZTBmZWQ0YzdlOGIzMyBsZWdhY3ktdHJ1bmsKKzI2ODAxIDI4ZjcxYzRiZDE2YmI1OTNhZDUwNDE0MTUxNjFiZjhiODU5YWMyNGMgcmVsZWFzZTIyLW1haW50CisyNjgwMiA2YjJiYTNiN2VkMzI2YmU0YWE0ODc5MzBkODJlYWY0YjM0ZmE4YjQ5IGxlZ2FjeS10cnVuaworMjY4MDMgYjE1ODk2MDUzOTMzMzRhMzA0MDcwYTlmMTY0MjcxYTZkODlkMjMwZSBsZWdhY3ktdHJ1bmsKKzI2ODA0IDAzZGZlN2QzNDNkYmFjM2Y4MGI1OGE5NDE2ZGMyOWNiZjg1ZWYxYjcgcmVsZWFzZTIyLW1haW50CisyNjgwNSBmMTIxOTMwNTkyMzlkYjJhNDk0MTg4MjVkYTZiZDZmYzFkYzI0MDNmIHJlbGVhc2UyMi1tYWludAorMjY4MDYgZDNmMjc1YmQyYzYwYTFkMGY4NjEwZGEzYmQxMDA1OGIzNTY1Y2Q5YiBsZWdhY3ktdHJ1bmsKKzI2ODA3IDE5YTk0OTI1Mzc4MTJmYTIxMTgyMGM1Njg3MWRiNTQ4ZjA5OGViYmUgbGVnYWN5LXRydW5rCisyNjgwOCAwOGNjYjBmM2UyZDQ5NmM3YmU3NmFiM2IzZDMxNjI2ZWVhZjRkZGIyIGxlZ2FjeS10cnVuaworMjY4MDkgNDUzZTU5YTQ3MmIyMWEyOGY5YjE0NzBiYzMyMDNlZTM0NDM1YTQ3ZiByZWxlYXNlMjItbWFpbnQKKzI2ODEwIDcyZjBjMWEyNDVmOGRmOTRmMGYxNjdhMmYzOWQwYjIyM2EyZGY2NjggbGVnYWN5LXRydW5rCisyNjgxMSAxY2M5M2Q1MDFiNDVmMDZiODRiYmVjN2NmYjQ3MGVhYmRkYWI1MWFlIHJlbGVhc2UyMi1tYWludAorMjY4MTIgMjczZGQyNTA4YzU3ZTFiNjU3ZDY2YjhmMmM0NzgxNjVmOTUzNzk3NCBsZWdhY3ktdHJ1bmsKKzI2ODEzIDZiYWUwYzMxYmJmYjI2MTA0ZmEwZmY4ODRjYWJhZDc1N2Y4YTI0ZDcgbGVnYWN5LXRydW5rCisyNjgxNCAyNGUyMzM0ZTdiYjJmOGFmYjZmMTg1YmY3ZjMxZjg2OWE4MThmZWU4IGxlZ2FjeS10cnVuaworMjY4MTUgMjZiOTI0YWQyNjZjZmI1NmFmN2FhNzdmYjQxMjE2YzlmMzUwYjIyYSBsZWdhY3ktdHJ1bmsKKzI2ODE2IGY5OGEyN2NiOTI4MjM5NDJlNTJjNjU0OWFkNTEyMDE5NjY0YjgwMGIgRFNfUlBDX0JSQU5DSAorMjY4MTggNjhjNzc2YmE1ZWE1YWQxYzVkZmJlZDVjNDliMTgxOGFjNTIwN2NkMiBsZWdhY3ktdHJ1bmsKKzI2ODE5IDY0ZWIxMTliODE2ZDVhZDVmNTE4MmJlOTZiOTAwN2RmMDg5MmQwN2YgcmVsZWFzZTIyLW1haW50CisyNjgyMCBkZGI0MWU4N2Q2NTE0Zjc2MGUyNzg2ZTNkOWQ2NmE4ZWMyNTVkY2FkIGxlZ2FjeS10cnVuaworMjY4MjEgOGE0NWJmZDZiNDcxN2MxYjQyNWE1YzhhNDU4MzgzNTdlMjMzOWU5ZCBsZWdhY3ktdHJ1bmsKKzI2ODIyIDdlNTE0MWI2OGM1ZjFkMDRkYzBiNzc0MTA3ZGY3ZTk5ZmFkYWMyZWUgbGVnYWN5LXRydW5rCisyNjgyMyBkOWJiNGVjM2U3NWIzMjc4ODJiMDAyMDM5N2MyYmUzZmY2ZTVmMTcwIGxlZ2FjeS10cnVuaworMjY4MjQgZTQzYWFmZmZiMDNjNjc2ZjFhNjFhOWVhNDhkZWZiNzU5NmVlZjliYSByZWxlYXNlMjItbWFpbnQKKzI2ODI1IDYxMzQ4YWEyZmY5ODZkNWJmZDZjZjdkOTk4NzdjOWViOWJjMzZmZGYgbGVnYWN5LXRydW5rCisyNjgyNiA4MTgzODU5ZGNmY2QyMTUxNTVjZmU4MTJkMTBjZDk1MmRkM2YzMWExIHJlbGVhc2UyMi1tYWludAorMjY4MjcgYmU1NGJhNGIyYzQ0MGU4ZWM5NzIzMTM2YmJkY2M5N2E4YTUwM2I1ZCBsZWdhY3ktdHJ1bmsKKzI2ODI4IGMyNTU2ZTMwZmNiNDgyYWRkMGVhMjAxZGM0YjA3Y2M5MTk1MDUxMTAgcmVsZWFzZTIyLW1haW50CisyNjgyOSBhYjIzNDEwN2UyNjczMjdjNTMxNjliZGZlNjkyYWM3M2U5MmI2NjNjIGxlZ2FjeS10cnVuaworMjY4MzAgM2FiZmYxMWY4MmIzNTM3NTY5YjgwZDJjYTE3NTdmZGZhNzFhODAyOSByZWxlYXNlMjItbWFpbnQKKzI2ODMxIDEwYzgyMDA4M2MyZGMxNjQ0YzgyZDBjODgxNDMxMTVkMDI2MmQ4ZGYgcmVsZWFzZTIyLW1haW50CisyNjgzMiAxMmI0NjU3NTg3MjlkYTI5MDA0NGM3ZDk0ZGFlMmQ2ODE2ZGRlMDU5IGxlZ2FjeS10cnVuaworMjY4MzMgYmQxYzRiNjVkYjc5MTA0ZDQ1ZWZjN2ZiMWZiZjgyNDc5MjE2YmM2ZCBsZWdhY3ktdHJ1bmsKKzI2ODM0IGEyMTk4ZjcyZDVlYmVhMDA3ZjNkZjVmMWVmNWE3ZDNlMjQ4YzVmMzIgbGVnYWN5LXRydW5rCisyNjgzNSBiZTBiYzU1ZWNmNGEwZjYxOGZiMDg1YjgzZjQ3MTQ0NzQ1YzZmZmZmIGxlZ2FjeS10cnVuaworMjY4MzYgMDc3ZDQ0YjA0MDViZTZiMjBjYzg1MzNlZmNjNjVjMTIxNmM2NzAxYyBsZWdhY3ktdHJ1bmsKKzI2ODM3IDM0NGFlNTMxZTZhNzNlMjI3MTE3MTc5YmVhMDRhZTMzZDVhMmM5YjQgbGVnYWN5LXRydW5rCisyNjgzOCA3Y2UwMTg4Mzc4ZWYzYThkODY3NjFhOGJmMTY1MTUwZDc5ODhlNjkwIGxlZ2FjeS10cnVuaworMjY4MzkgNTBhOTdhOTYyOTk4N2EwMmNiNzEzNjk5OWYzMjAxYzY1M2ViYWYxMiBsZWdhY3ktdHJ1bmsKKzI2ODQwIGQzZTAyNWVmMWZiMmRmOThjMDg2MWExOTc5ZGQ0MDA0NmMyMGQ3ZGIgbGVnYWN5LXRydW5rCisyNjg0MSBkMzViOWZmZjgxZTA5YjI1ZmUzN2I1ZDU5ZTkzZTljY2Q4M2UzNjI1IGxlZ2FjeS10cnVuaworMjY4NDIgNzMyNDlhYmVkNjgzNzYwZGIyMThiNmQ2MmRmMjZmYThhNTgwOWMwNSBsZWdhY3ktdHJ1bmsKKzI2ODQzIDVkNzNhMmM3ZmFlNjNmZTYxMzI2NjZiYWNjNmM5YjViZTMzZDkxZTcgbGVnYWN5LXRydW5rCisyNjg0NCBkOTE3ODU3ZmQzMzRlYTllOGQ1Mzk5MDU0YTVhNDFiY2I3MDEyYWZjIGxlZ2FjeS10cnVuaworMjY4NDUgNWJkMzBhMzY4OTdiMWU0NzYwZGM0NzlkMGYxMTFiMTkzODg1ZTJiMiBsZWdhY3ktdHJ1bmsKKzI2ODQ2IDE3NTYyMTA2YzJhMDQ2NjgyZDcyNjg3YmFmMzIwNTIzYjMwY2RkN2EgbGVnYWN5LXRydW5rCisyNjg0NyBjZGQ1Yzc1MTgyM2NkOTI4ODVlNWExNzZmYTExNWVmOTE0MjZmZGE5IGxlZ2FjeS10cnVuaworMjY4NDggYzc2ZTVjMWM2ZTQ1NDViNTc0MGI0NDNiNmM5MWFmZjg1NzJkYmI5OCBsZWdhY3ktdHJ1bmsKKzI2ODQ5IGJiNTc5MGM2Y2RhYTE0NzM3NDVlYmFlMjY1MWFiOWMwYzAwOTkwMjcgbGVnYWN5LXRydW5rCisyNjg1MCA5YjFlM2I3YmQ3ZjEyNDI2OWJjMzY4YjkzYzI5NjQzNzcxZWFhODdkIGxlZ2FjeS10cnVuaworMjY4NTEgYmU2NTM2ZjJlYmVmYjE2MzMyMjViYmE2NmIzNjMwMTM3ZmExODYzMyByZWxlYXNlMjItbWFpbnQKKzI2ODUyIDI2N2FlNTllZGRiNGM0YjVlNTZiMTU2OGU4YzVkOGE0ZWRmMGRlYzggbGVnYWN5LXRydW5rCisyNjg1MyA2ODRlZGQxNmJiZDgxZmM0ODdiMmNmMzgwNmI0MGUyZjVhOTE2MWM2IGxlZ2FjeS10cnVuaworMjY4NTQgODY3M2MyZWRmMjFjYmU0MDRhNTcxY2RiNDMyZTAyYWYzMGEwZmNiNCBsZWdhY3ktdHJ1bmsKKzI2ODU1IGJkYTk4YmFjNjk1NjAxYzJiYmRjNDdlMjZlMzViMzk0M2E2NGI5YTUgcmVsZWFzZTIyLW1haW50CisyNjg1NiAwYzQyY2VlNDc1ZGZmMzVkNjJiMTEzYzRmNDViZmNjYWU0YWZiNGM2IHJlbGVhc2UyMS1tYWludAorMjY4NTcgNzZmMzc2YmVhNWU1YTlhOTE4ODUzNmQxMWQ1Yzc1MTZjOGMwOWVlOSBsZWdhY3ktdHJ1bmsKKzI2ODU4IDY4ZTNmM2RkNGQ0ODg0OTE5ZDk1ZGMwOGQ0MjkyYmYxM2I1OTliZjAgbGVnYWN5LXRydW5rCisyNjg1OSBmNDMxODg4NWNlOWE2MzI4OGIxMDA5ZWEwOTdjOWMxZjBjZDY5MjhjIGxlZ2FjeS10cnVuaworMjY4NjAgOTg5YTdhZGY4NGVmYjM1N2M1MTc1ZGNjYzE4NDRkZmY0Y2RiMTZiNSBsZWdhY3ktdHJ1bmsKKzI2ODYxIDg1NjE1ZWE2NWIxYmY4MGFmOTY1YzY3ODY4NzQwNjRkNmU1Yjg3ZjMgbGVnYWN5LXRydW5rCisyNjg2MiBkYmE0ZjUxNzY0OTJmNDU0MWU1NmI0Y2QzMGEzMTI1ZWM0YjcyOGRkIGxlZ2FjeS10cnVuaworMjY4NjMgYWQ5MDRkYjczNDRhOWY5NDFlYTBmZmEyYTM4NTFjZjlkNjhiYzhmNyBsZWdhY3ktdHJ1bmsKKzI2ODY0IDYyNjg4ZDZhYzM4NzljMGNkN2U1ZTRjMzNiMDRlYTM2MmQ0ZTY3MWIgbGVnYWN5LXRydW5rCisyNjg2NSBkYzNhN2Y5OGQ0ZWQxMmYzZTg2MmJiNTIyYmFhMDI0YWMxMWU3YzI5IGxlZ2FjeS10cnVuaworMjY4NjYgNjMxZjkyODY2NzMyOWJiNmM2ZDI4YWRkMWFmZjliMzA4NjE0YzNjNSBsZWdhY3ktdHJ1bmsKKzI2ODY3IDE3MmI2MjUwZDUyNjAzYmY3NzU4ZTMzNGMyN2RmYjJlNjc2ODVkNDYgbGVnYWN5LXRydW5rCisyNjg2OCA3NmVmNGI5NDJiMTMxYmQ4ODNjZTFiNTdjNmY2YjMwM2I3ODNkZmQ5IGxlZ2FjeS10cnVuaworMjY4NzAgN2FiOGMzODExNzIzOTcxNGVlNjVkOTcyOTgyYmNiZDUyNzAzZDk5NiByZWxlYXNlMjItbWFpbnQKKzI2ODcxIGM0NGIyMWZjZDM4YWQzMmU2Nzg1MzRiOWJhZjRmNWU3MjUxZDYzMzEgbGVnYWN5LXRydW5rCisyNjg3MiBiMWQ4NjgzNTIxZWM0ZjM3NGZhOTJhNzc0YWMyOWVhZTg0YzViZWUwIGxlZ2FjeS10cnVuaworMjY4NzMgZmJhMDUzNDdiYjMwYWQ3YWEyNmNhNmJlYWFiNWJiMGM5YmI4ZjUwYSBsZWdhY3ktdHJ1bmsKKzI2ODc0IDgyMzA5YzczMjVlZmUzNjg2YzgxYTA4OTY2ZmJkOGJhMTcxODQ1OTEgbGVnYWN5LXRydW5rCisyNjg3NSA3YmMzMWFkOTQ3N2NmNWY2NWUwMjY2NzQ0NmE4ZjhlNjNlMzcwZjdkIGxlZ2FjeS10cnVuaworMjY4NzYgMjY3NWIxNThiZjY3N2RmZDkzMDllOWZiNDI2YzQyZWQ1YjNlOTIyNyBsZWdhY3ktdHJ1bmsKKzI2ODc3IDM1ZjAxYmYzNGQ2MDQzNzZlOTM0MjRlZGU3ZTg2YjU1ZTc4YWY4OTkgbGVnYWN5LXRydW5rCisyNjg3OCA5ZWVhNWVkZDg1N2Y2YWU0ZTNjMTM5YjAzYzdkNTY1ZTY3YjEwMTc4IGxlZ2FjeS10cnVuaworMjY4NzkgYjM4OThkMzI2NTE5ZWUyMzkwNjQ2Yjg1Njg0ZTdmYTY3M2IzZjY4OSBsZWdhY3ktdHJ1bmsKKzI2ODgwIGJmZWExNGY4ZmYzNTNjNWZmMjgwMTVjYjAxYmJjNGU0NWFjMzZiNjcgbGVnYWN5LXRydW5rCisyNjg4MSA3M2MwMWIxY2JkYjJjMDE2MWUzMWQzZDI0YzVjMDY5MWI0ZThjMTE1IGxlZ2FjeS10cnVuaworMjY4ODIgYzAzZTg4OTlkNGIxOTA0NDJmZDc3MTc2YWY2OThjOWYxNjVhYmYxYSBsZWdhY3ktdHJ1bmsKKzI2ODgzIDAwMTQzODdmZDYwNDRkMTEyNTQwM2JmZTI1N2QwNDJkOWNhYzBjNDggbGVnYWN5LXRydW5rCisyNjg4NCBiODcyOGQ1OGU5YzMzM2ViMGU4NTY4NjIwYmRlYjQzMDMyYmRmZGM1IHJlbGVhc2UyMi1tYWludAorMjY4ODUgYTkwZmFhNWY5NDE3MWM3MDcxMTUzYTcxMzlmYzAzYTY2OWM0YWFiNSBsZWdhY3ktdHJ1bmsKKzI2ODg2IDJhZmYxMmUyYTk0ZjVjOWRlMzU2OTcxMTdhZmMxMmYxMTc4NDBkMGYgbGVnYWN5LXRydW5rCisyNjg4NyBiNjAyZjIyOTFiNWZkM2ZlNDg3ZTg1YjcwMGFhMGJhNWIwMmU0ZmJlIGxlZ2FjeS10cnVuaworMjY4ODggMGUxNzcxZmMwMTJmMjZkZDczYzQ4YTRmNWY3ODNmMWVkMmEyMmI2NyBsZWdhY3ktdHJ1bmsKKzI2ODg5IGM3OWIxZTU1NTJlODQ5NTlhZjI0ZWFjODkxMDUxY2I3OGE0ZTg2NTUgbGVnYWN5LXRydW5rCisyNjg5MCA5ODgyN2E5ZDYyYzMyZWFjNmI5NjE4ZWI4MzQ4ZmYzNTRmODczZTdmIGxlZ2FjeS10cnVuaworMjY4OTEgYjIxYjY5NjU4NjYyODliMGQzMzkxMGZjMTY0ODUyZjdhNGJhNzkwMyBsZWdhY3ktdHJ1bmsKKzI2ODkyIDhhNDlhMTNmYjI4ZGY3MGUzMzQ3YjczYjc3ZWUwYzhmNTRjOWFjNWEgbGVnYWN5LXRydW5rCisyNjg5MyBjZWNhMjgxNjc4MDA4YTNkMTM0ZGQxMzVlZmI2MDVmYzJiYmQyYjg3IHJlbGVhc2UyMi1tYWludAorMjY4OTQgZWNlZjY1ZTU3Y2M2YmQ5OWI0ZmNlMDJmOTFkYThmMGI4Mjc3MTAxYSBsZWdhY3ktdHJ1bmsKKzI2ODk1IGE5OGU5M2VhZmVmN2UwM2VlMGMzM2EzZjBmMzU2Yjk0ZTJjMjliYzMgbGVnYWN5LXRydW5rCisyNjg5NiAyNjAwY2Y3ZDMzYWY4MjNjYjZiOTQzYzJmNTZjZGQ1Y2NjYjM5ZTVlIGxlZ2FjeS10cnVuaworMjY4OTcgYTRlZmI1OWY4NzY3MTgzMjU0MGQzNjNkM2RjZDYxZjhiYjdhNTgwZSBsZWdhY3ktdHJ1bmsKKzI2ODk4IDcwYjVlMTExY2NiMDkwMmY3MjBiNjE5ZTBjMTc0ZTcyZDI5YWNlMzcgbGVnYWN5LXRydW5rCisyNjg5OSA4ZDk0NmM5MzM5ZTgyMTAxZWJhYjdlYTcxODM5MmVhMWEzZDE2YzhhIGxlZ2FjeS10cnVuaworMjY5MDAgMGE0YzkyNTU5YTBiNDE2NjRmMjFhYzA0ZTcyYzUxMWRkMzQ0MjU3YyBsZWdhY3ktdHJ1bmsKKzI2OTAxIGZhOGZlMmU5ODA2MjVhZTY4YmI1ZDNmNDNjNDdlOWNmMDVhMjY2OGYgbGVnYWN5LXRydW5rCisyNjkwMiA5ZTY3YTBkNTcwNWZiYWI5ZmI2YWFmM2FjMjY5NmJjZjg3MTcyNDAzIGxlZ2FjeS10cnVuaworMjY5MDMgYjQ5MGZmMTcwNmQ5NjQ2MmYzMjlkOTE0ZjExNzNhMjU5MWE0ZmRhZSBsZWdhY3ktdHJ1bmsKKzI2OTA0IGJkNTg5NDZhYTUyMWIyZWNmN2VlNGY1NWQzOTgxMjJmNzFhM2U0NjYgbGVnYWN5LXRydW5rCisyNjkwNSBmNmRlZDZlZmFiY2YzMDkwMjYwYjNlZDkyMTcwZTcyYzIzOTBjZDU0IGxlZ2FjeS10cnVuaworMjY5MDYgMjIwYjk4ZjA2NDE1NjRhMDU5N2I0Njg0YzNiN2IyZDExMjUwNWI4OSBsZWdhY3ktdHJ1bmsKKzI2OTA3IDQwYTAzMTE1NTg5N2Y5YmViNzJmZjdkMGE4ZjNlMjY5MWNmYmMxZTUgbGVnYWN5LXRydW5rCisyNjkwOCAxYmYzNGY0Mzk0YzUxN2U0MzQ0NjAxMzI1ODczNGEwYmY2NDk5MDAzIGxlZ2FjeS10cnVuaworMjY5MDkgY2UxZGEyZjk3ODA3NmU0YzY5YjI5YzQxODcxYThkZmExMTViM2ZlYyByZWxlYXNlMjItbWFpbnQKKzI2OTEwIDg4OTAzODUzZjE4MGVlNmJiMmUwYzFlODA4N2NiZDI4OGIwMjQyNGYgbGVnYWN5LXRydW5rCisyNjkxMSBiNzRhZmRkMDcyZWIwYTE4OTlmY2Q0ZjE2NjVmOGE4MjBmYThiOWExIGxlZ2FjeS10cnVuaworMjY5MTIgMzAzZDgxZTE1ZTcwYzNhMjQyN2E3MmFlNjgyZWYwNzY5NWJjMjhmNyBsZWdhY3ktdHJ1bmsKKzI2OTEzIDQ0NmIyZjJjMDFkOGFhY2EzMjU3YWIzYzFjMmMxMzg1M2Y0OGFmNGMgbGVnYWN5LXRydW5rCisyNjkxNCBiM2M1MGY2OWYzOGJmMjM4YmRkNTYwZjdkMWFlNTg4ZTU4YTNkMjUwIGxlZ2FjeS10cnVuaworMjY5MTUgYTY3MjQ4ZmQyMzcwMTBmODJhNTczNGY5ZTdmMTg5MTEyNWI5ZGZkMCBsZWdhY3ktdHJ1bmsKKzI2OTE2IDNiMmE3ZWUwODY2NzYxZGQ4NDAzZGU4N2U4ZDU1NDZiODIwNTc0OGMgbGVnYWN5LXRydW5rCisyNjkxNyAzYWVjZGJhNDU1Mjg1YTBlNmRiNDc0NGZjNGI0N2FhM2I4N2RiYjc3IGxlZ2FjeS10cnVuaworMjY5MTggZTUyNDJmNThhNWI2ZjkwZDg2ZGNkYTczMDI0MTAxNGQ0M2M5YmMxMSBsZWdhY3ktdHJ1bmsKKzI2OTE5IGM0ZmEzN2Y4OTc4Mzk5MzIxZTQ4NjYyYTk5NDYwZTNiNzdhNzQzNWYgbGVnYWN5LXRydW5rCisyNjkyMCBmZWNjZTAxNzMyNTRmN2VhMmRjZWEyYWE4Mzc1MDIwZjkxZjczZGM3IGxlZ2FjeS10cnVuaworMjY5MjEgYTM5OWQ4YjEzYzJmNDU4YjQ5NTEwYWQ4MDU0NmY3ZTJmYTU1YjcwYSBsZWdhY3ktdHJ1bmsKKzI2OTIyIDVkMDk1ODk4ZGFlNjU5YmZkMWFmYzdkZmFiZDU0MjhkNDI5NTk5YjUgcmVsZWFzZTIyLW1haW50CisyNjkyMyA1M2M2MTQyODhlYWI5NGY2YjBlZGY4YTQ1NzA4NGM0YWZhNTQxNzBhIHJlbGVhc2UyMS1tYWludAorMjY5MjQgM2E0NzkzNTc1ZWNkN2VmNjhjZWRhZWUyNTdlMDllYjk2Njk5OTYwYyBsZWdhY3ktdHJ1bmsKKzI2OTI1IGM1ZThmODlmZDM1ODY4ZDUxZmMyNjVjNDlhNTQwMWUwNDFhNjZmNjAgbGVnYWN5LXRydW5rCisyNjkyNiBlYWNhNjI3ZjJhNTQ2Y2U4ZThmYzU0MmU2ZjliNzIyZWRhY2RmMzQ4IGxlZ2FjeS10cnVuaworMjY5MjcgNTA4OTY1Y2U1ZTQ3MmY5NmQ5MjZhYzcxMmUwYjI3YWJhNDU4Y2YxYSBsZWdhY3ktdHJ1bmsKKzI2OTI4IDNmMjQyY2RkMDkwNGVlMTE1YzVmNDY1ZTUwYmNmY2ZhMTAxYThjMWIgbGVnYWN5LXRydW5rCisyNjkyOSAxYTY3ZmJjN2EwNjY4MjMxYjk4ZTQ5Mjk5ZDQ0ZGFiMWE4ZDc3ZDNkIGxlZ2FjeS10cnVuaworMjY5MzAgY2FmNjJlZWY3NzIzZTRjODc4NDRmZDdhNjBhNWQzZDQzYjdhMzhkYyBsZWdhY3ktdHJ1bmsKKzI2OTMxIDNkODNmYWJlZjBhNDBlZTVkMWYwZGNjNDliNzZhMzNlYzEyZWRlZmEgbGVnYWN5LXRydW5rCisyNjkzMiBhZTBhM2IxNGQyZThiZTc4MDE0ZmVkNTNjOGRlMmRkYmJjMGY0ZTMyIGxlZ2FjeS10cnVuaworMjY5MzMgZGMyNjIzZTAyNDNlMjhiZjc3ZmFlOWNlZjUwODI1YjJlMTYxNmMwZiByZWxlYXNlMjItbWFpbnQKKzI2OTM0IGI2YzMyYmViNGRiY2M5YzgwMjkwOWYzN2NiMjVmYTg0OGEwZjI5MDkgbGVnYWN5LXRydW5rCisyNjkzNSBkNWFlNmY3MTRjZDUxY2M3ZDJhZjk3MjQ2MGZjYmYwMGIxZWMwYTQwIGxlZ2FjeS10cnVuaworMjY5MzYgNGQ4ODRhZDgwZGRhNTU0ZTk5ZTg3ODg1MTAyYzM0NGUxMmNkYzVlYiBsZWdhY3ktdHJ1bmsKKzI2OTM3IDBhYzY1M2Y0NjlmMDcwZDQ0YmE1YWJiOWJiNjU2NjU0MGZhNzAyYTUgcmVsZWFzZTIyLW1haW50CisyNjkzOCA2NjhjNWNhNGUwZDQ4YzYxNzJhNWNhYzEyYTY5MjFkMTZhMTQxMzVkIHJlbGVhc2UyMi1tYWludAorMjY5MzkgOTlkZjI1NzE0MmY2NDM4ZGE3ZTFjNTEyNGExZTIzNWU5YjI5Y2Q3MCByZWxlYXNlMjItbWFpbnQKKzI2OTQwIDdkNGM1ZTRhMGNjYzI2Zjk5ODUwYWU2M2NjMjQ3N2Y3YTgyYTQzMWMgcmVsZWFzZTIyLW1haW50CisyNjk0MSA4ZjdiNzljZGEwZDMyMWQ3ZTgzZWFkNjM1MTYwY2Y3ZmIwYzM2NmIwIHJlbGVhc2UyMi1tYWludAorMjY5NDIgYzM2NzYwN2JiNWY3ZDIwNDg5ODY1YjBhNDgwZTFkNmUxMmU0OWI3YiBsZWdhY3ktdHJ1bmsKKzI2OTQzIDRlM2VhNTVmN2UxMThjYTZlMjdiOGU4NWE3ZGUyMjM3ODA4YTRiMjcgbGVnYWN5LXRydW5rCisyNjk0NCA3ZGJhODBkNThmZmQ2NjQ0MzY4OTA5YzZmMzg2NmM4YzAzOGRiNWJmIGxlZ2FjeS10cnVuaworMjY5NDUgYmViNTI3MTU4Y2JjZGU3MmMxOTg1N2Y0MzgwNzJkMzM1MTczMjA2OCBsZWdhY3ktdHJ1bmsKKzI2OTQ2IDE5MGI2YmMxOTEyYTVkNWQ2MmQ3OWJjOThlNWE2MmYxNzY2MDBhOGQgbGVnYWN5LXRydW5rCisyNjk0NyAwNjAyYzdlNmI5NGQ3MjEzYTRlZDI3NzZhZTBjYzkwNjJjMWEyYTE2IGxlZ2FjeS10cnVuaworMjY5NDggYzZhZjU3NGJkYTI5MjhmMWNkZDE4ZjM2M2Q5M2M5ODdkZjUzMDBiNCBsZWdhY3ktdHJ1bmsKKzI2OTQ5IDBlODM3MGU3MDg4ODYzY2QzZDE1NWEwMjc2N2E2ZThkZDM2NTEyYTUgbGVnYWN5LXRydW5rCisyNjk1MCBmYmE1N2U0MGY1NDdkMGJkNjM5ODFkZWFmNTE5MDQ5MmFkOTRhZjNmIGxlZ2FjeS10cnVuaworMjY5NTEgZjEyNDkxMTcxNjM4NjAzODIxYjhiODI2YmM1M2MwMWYzMzhlYmFjNSBsZWdhY3ktdHJ1bmsKKzI2OTUyIGFiOTRlYzRhZjk4YTkzNGY2ZDljN2ZlNjRiMDE4ZTMwODM1MDEzN2QgbGVnYWN5LXRydW5rCisyNjk1MyBiMDY1OGZlZWY5MzllMTZjMjRhMTY1YjIyNjYwMzZlZTYxYWRmOGY4IGxlZ2FjeS10cnVuaworMjY5NTQgYTRiYjE4MjEyYjQ4MGViOTNkMWJiNzU4YTgzZDUyZGI1MjkwMzg0MiBsZWdhY3ktdHJ1bmsKKzI2OTU1IGFjYmU4ZTdmOTlkOTNiN2ZmMzRkYzJkZmJlODIwNjY1NGZlMWFhYWUgbGVnYWN5LXRydW5rCisyNjk1NiBkNjdmMWUzYTlmMWFiZjU4ZjJiM2FlMmRkMzNiM2JhMmU4ZWMxYzM0IGxlZ2FjeS10cnVuaworMjY5NTcgYzg0NGZjYzNjOTUyM2ZmYTdjN2IzNjgzMTZkMGExYmI4M2JmZDBmYiBsZWdhY3ktdHJ1bmsKKzI2OTU4IGMzYTY3Y2U1ODI0NWY0MjU0YTA5NGM4N2Y1Zjc0NThmMjQ3M2ZjMjQgbGVnYWN5LXRydW5rCisyNjk1OSA0MzgwYTdhYTE4ZGM2Y2RlYzhkODg5NDU4YzVmM2ViOTk3ZDFhY2JkIGxlZ2FjeS10cnVuaworMjY5NjAgYzJiYzJlZDE0NWY3MjdjNWMxYjQzNmIwOTQ0MWNmM2Q3ZmQ4NTIwYyByZWxlYXNlMjItbWFpbnQKKzI2OTYxIGVkMDA3ZTQ3YjNhMTM5OTg5MGIyMmFiMWFmMGU3NGYyOTczMmFjNTMgbGVnYWN5LXRydW5rCisyNjk2MiAyYjFkNjE3ODFkNjM3NDg5NzEzMjdiNmRlMDkxZDllZTJhNjhkOWYwIGxlZ2FjeS10cnVuaworMjY5NjMgMTk3ZmIzMDVmYzVjY2NmYzgyMzQyY2Q0NzIxMDMwM2IyOWJjMGM3MCBsZWdhY3ktdHJ1bmsKKzI2OTY0IDkwZWU1NWI5ZDcyYWQxYzM3Yzc5MGMyOWIwMTVmMmE1MGE2YzgzNTcgbGVnYWN5LXRydW5rCisyNjk2NSA3ZTQwMDU4Mzc1NWZmNDgwNmNkZGNlMGQ0NWMzMmY4YmVhNzgzNGI0IGxlZ2FjeS10cnVuaworMjY5NjYgZGJhYmIxZjdlZDNhNDRjYjc4ZGI3ZDVhYTg4NzVhNjdkMjgzNjkwZCBsZWdhY3ktdHJ1bmsKKzI2OTY3IGNmZmQwOTFmNTZkMGVmMDVhYWFhZjhlNWY3ZGRkNWVhMTk1MDIyYjQgbGVnYWN5LXRydW5rCisyNjk2OCBlZjhkNDU2MDY3ZmQyOGM3NjI4NWEyNzliNTExNzI2MTEzNzQ1NWQ5IHJlbGVhc2UyMi1tYWludAorMjY5NjkgNzEyMDYyMGY0MzJiZDA5MGE2MWVmODA4YWEwMWRkMGI1MjM2NjBlOCByZWxlYXNlMjEtbWFpbnQKKzI2OTcwIDVlZGVhNzUyYTQyMTlkYzJhZDk1OGQ2YmU4ZGRiODVkMDA1MzNhNjYgbGVnYWN5LXRydW5rCisyNjk3MSBhNjhmYWEyNjg1M2NlNzM5YWVlYTFjMDA3ODA2NTM1M2M2MWY3ZmU1IGxlZ2FjeS10cnVuaworMjY5NzIgZWMyN2FjMTlmOWUzYzFjOWYwOTgzYzBiNTRmMTc4YmIyNzExOTg0MiBsZWdhY3ktdHJ1bmsKKzI2OTczIDQ1NmQ1ODQ1MWZlZWE3NDdjZTExZTg3YjE5MDg1Y2NlMjFmMzY4OGEgbGVnYWN5LXRydW5rCisyNjk3NCAwYTI4MThjYzM0MmNlNGQ0MjE2Y2Y2OTFlNjM3NDIyYTdmZDVlZjBjIGxlZ2FjeS10cnVuaworMjY5NzUgMjFiMWQ3NDJlNGE3MDA5Y2RhMDY1MWRkNmY4ZmE2YTZhMzIwNDFmYSBsZWdhY3ktdHJ1bmsKKzI2OTc2IDNjYWVlMjk1ODM4N2NkOTJmM2RlNDYwYjNiMmRmOWE2MWNhZGYxNWEgbGVnYWN5LXRydW5rCisyNjk3NyA0YTFmNWJkNDg2ZmY5ZjgwZWJiZWZiMTE3MWQxNWFmOGMxMzQ0MmU4IGxlZ2FjeS10cnVuaworMjY5NzggZjRlYWIyNjhlNjE3ZTkwNDkyNjFmYjQ4ZGUxMzFiZjZiNjM5MWIxNyBsZWdhY3ktdHJ1bmsKKzI2OTc5IGE2NzE1YWQ0MTZlNWRhMmVlZjBkMGZhYjNlMThhODI5ZjdhNjJlMDkgbGVnYWN5LXRydW5rCisyNjk4MCA5ZGE4NTgzN2ZmMjUwODRiM2UzODhhMjNkNzA4ZjZiZTA0MTRjNzMzIGxlZ2FjeS10cnVuaworMjY5ODEgM2UzYjNjMTc3MGFjMTFiNTlmY2NkNTkzMTcxZTZiOTAwNTFmNjFhMyBsZWdhY3ktdHJ1bmsKKzI2OTgyIDU0NDgzYmMyMTg3MWVmODViYzdhMzJjOGQzM2Q3NjFmYjlkOTc0NmEgbGVnYWN5LXRydW5rCisyNjk4MyA5MjYyNmU1YWIwNjczNTRkZDFiOWRiMTJhNzNkZTllMWU4NmNhZWZmIGxlZ2FjeS10cnVuaworMjY5ODQgYTFkZTBiYWI1NDc1MDkzZjkwNWEyMjVmNmEyNjMzMDA0NWNjMWJmYyBsZWdhY3ktdHJ1bmsKKzI2OTg1IDg3ZjQwMzc3Y2Y1NDM4YjUxMDYxOWRiYzc4M2Q0OTE4MTFlMzMyMmUgbGVnYWN5LXRydW5rCisyNjk4NiA1ZWRkODA3MjZkOTY2ZmRhMmU5MGRkNWJmZTRiMjdjNGIzYjJlNWE1IGxlZ2FjeS10cnVuaworMjY5ODcgYzAwZmViYmUwOTI5NWUzMDBkMTgxNjc2NjUwNTc4MjM1MGRjZGNkMSByZWxlYXNlMjItbWFpbnQKKzI2OTg4IGFlZDM5Y2FmOTg2MGRkNjA4YmIyYzg0ZjgxZTM1NzdjZmI1NTIyZjkgcmVsZWFzZTIxLW1haW50CisyNjk4OSA2NWNmNDc4OTUwZmY1YzNhODgxYTVlYmRkYTg3NTMzOTZhYmU1N2VhIGxlZ2FjeS10cnVuaworMjY5OTAgNjNkMTQxNDFkZDEwZDAyNTVjY2ZiNmMwYzRjNzc3NmEyM2NhZTgzZCBsZWdhY3ktdHJ1bmsKKzI2OTkxIGE2YTc2NWM3ZDMzYjRkNzFhNzYzYjk2YTBkNmZhZmQzMWViMDZhODYgbGVnYWN5LXRydW5rCisyNjk5MiBlYTk3OWM1MjA2YjdlNmI4NzU1ZDkwNzE0MWQzNzk0MzRhN2JlYjY0IGxlZ2FjeS10cnVuaworMjY5OTMgNGE0ZDEyMGIyYjBlMDlhOGY1NmIwNTMyYzg4MzI1N2I1OWQ1YmNmZiByZWxlYXNlMjItbWFpbnQKKzI2OTk0IGFmZTk0NjkxODI2N2ExYzUwNjNkMTIxNjczMTAwZjUyZWRmNjM2ODQgbGVnYWN5LXRydW5rCisyNjk5NSAxYTUyMTYyMzU2MDI4ZDRmM2Y0YmM3OWVmYzkwNGY0MmU4OWY4NTkyIGxlZ2FjeS10cnVuaworMjY5OTYgMTE2NjAxM2ZhYjc3OTUzNmY2NTUzM2E2YTQxODkxNTBlZjMxNTg0ZSBsZWdhY3ktdHJ1bmsKKzI2OTk3IDBlZThlZjdjYTA5YzYzMmUzNzIyYTRkYTZmZTZkMDlmMmExNWJlYmEgcmVsZWFzZTIyLW1haW50CisyNjk5OCBkYmVlMmY2MjhhOTA2NzIyZmM0MzBlMGUzNDJjODI5NWM4YTFhZDBlIGxlZ2FjeS10cnVuaworMjY5OTkgMWU2MGI1ZDQxNDE3YjEzODRhMDk3OGU0OGJlYjdlMzdmNTI1MGRhMiBsZWdhY3ktdHJ1bmsKKzI3MDAwIDg1NTFlNjQyNzI3YzIzNWUxNTczMjljM2I5ZGNlZDY3MjM3YmVkZjggbGVnYWN5LXRydW5rCisyNzAwMSAwYjdmZTBmYTlkYzZiMWMzYTllODJmZDQwMTFjZDRhMTA3NWQzMjc0IGxlZ2FjeS10cnVuaworMjcwMDIgOGMyMTVkZGZkM2QxYTE4NWNmY2I1ZmJkYjFiMTljNzYzYjIxODQ4YSBsZWdhY3ktdHJ1bmsKKzI3MDAzIDk0MGZlZjMyNGViY2I1ZjhjMzEzNDYxZTdjMzgxNTAzZjIxMmQxZWUgbGVnYWN5LXRydW5rCisyNzAwNCBhMjUwODBmNjkwMWZlNmM4ZTkzM2I2YzQzOGQ4YzBmMGJjZTMyYjVhIGxlZ2FjeS10cnVuaworMjcwMDUgMDRhNGEwZTcxYThkY2Y3MDFjODg3NGYwOTM1NThjYjI4ZTk1NjAzMCBsZWdhY3ktdHJ1bmsKKzI3MDA2IGM2NDYzYWZkOWYwODYwYjg0M2JhZWYwMWUyMGM5NTNiYjgyYWVhZmUgbGVnYWN5LXRydW5rCisyNzAwNyA3MGQ3NjgzMzU1MGIwZDkzNTk1ODk0NTgwOGZkOTY0YTZkMjQ1ZGZiIGxlZ2FjeS10cnVuaworMjcwMDkgM2ViZDM3NmFhNGNiNmI3OTc1MjUxYTkxZjA5ZGEzN2IzNWZkMzNiNCBsZWdhY3ktdHJ1bmsKKzI3MDEwIGUxZTkwYjBmMWY0NTAwYmI1NWNiZTMwMjk4ODYwM2MxY2ViYzg2MzggbGVnYWN5LXRydW5rCisyNzAxMSAyMjBlZDdmZWJiMDAxOWNhNmZhNjc2ZWZmOWZjZmE1NzQyYmVlNzdiIGxlZ2FjeS10cnVuaworMjcwMTIgZWM4OTQ5ZTRlNDZkNzgyNDYyNWQwNmZlZWIyZjMwYmUzY2FjZWI5OCBsZWdhY3ktdHJ1bmsKKzI3MDEzIGI5NGFjYzE4NzQwZTdlNjg2MmVhNzRmMjNjZjdlZTllY2EzZjQ3NzEgbGVnYWN5LXRydW5rCisyNzAxNCBiOTIxOGVmYWU4ZjU1YzhmYmJhYWUyNjIwZjk4NmM5ZTUyNjlmNmUwIGxlZ2FjeS10cnVuaworMjcwMTUgYTM0NTIzMTIxY2Y0NDE0ZTkxYzFjZGFjNWU0M2Y3ZWZhNjQ4ZDUyNyByZWxlYXNlMjItbWFpbnQKKzI3MDE2IGYwY2EzOTM1ZDAxMWRkYTcyZjM4ZGUwNGExNDhmMGM2MWUyNWQ5ZDggbGVnYWN5LXRydW5rCisyNzAxNyBiNDAxNjVhNGVmZTlhZDJiZGIzNmJiMzZkMTBlY2ZkMjg1YmNjYWY5IGxlZ2FjeS10cnVuaworMjcwMTggZWI2YTE2NTFjY2RhMDM3MmY2N2MyZWQ5Y2EzYTYwOTMzN2JhNWMzOCBsZWdhY3ktdHJ1bmsKKzI3MDE5IGI4NmVhZWIwZDdkZDQyYTc3ZTljZWI1NmZmM2EzNjZmZTVjOWYzYmQgbGVnYWN5LXRydW5rCisyNzAyMCBlZTc3MmY2ZTg4MWJiMjM0MjBhMzc3YzZiOTFiMWE2ZWFkZDExNDY5IGxlZ2FjeS10cnVuaworMjcwMjEgYmZkYmUyNWE0NWIwNjg2OGYxNzdlMDhlOGQ3ZWRjODQ2ZjM2N2Q3NCBsZWdhY3ktdHJ1bmsKKzI3MDIyIDVmOTc4MTk2ZmQzZDAyZmYxN2RiOGQ3NjFhZjJmNzA2YjljYzk1ZDIgbGVnYWN5LXRydW5rCisyNzAyMyA5NGFhNGViOWJiN2Q5NDJkMDVmNDIyYmMwY2JhYTRhNWMxMmQyNzcwIGxlZ2FjeS10cnVuaworMjcwMjQgNWM1ZmZmNWRlMjUwZDczYjcwZWYzZTJmNWViYzAxMGIyZDIyZDE4MCBsZWdhY3ktdHJ1bmsKKzI3MDI1IDE4ZDU4ZGUyMDNkNmU4ZGUzMGRmM2NiMzgxYjJhZGRiMjQ2NGEzNzcgbGVnYWN5LXRydW5rCisyNzAyNiBiNWMzZjEwY2U2Mzk3OWQ2NzY3ZjI4YWIyMTJmMjAzZGM0ZDQ0MDM5IHJlbGVhc2UyMi1tYWludAorMjcwMjcgMjdlMjEyMGNiNDc2MzEzZjkyN2I3ZmFmOTRkMjZhZGFhODE4MWM4YiBsZWdhY3ktdHJ1bmsKKzI3MDI4IGU0MTkwNjZmNDA4ZjJkNDJlN2E3MDU3MDJkMDM0YTE2YzU2MzQ2MzcgbGVnYWN5LXRydW5rCisyNzAyOSA4MTBkY2Y5ZDgxYzk4ZGNjZmM2YzExN2UwY2I2MWY4MGIwMTBmMDg5IGxlZ2FjeS10cnVuaworMjcwMzAgNmRjZDRiNmVlNWRhOWU5NGQ5NThjOTcwYzg1ODI4ZTdjNzhhYmFhMyBsZWdhY3ktdHJ1bmsKKzI3MDMxIDJiZWNiNTc5M2FjZDFjOTg2ZmQxZjQyOGI3ZDM5YWQ4YzQ4NGQ2YjggbGVnYWN5LXRydW5rCisyNzAzMiBkYzdkNWMyZDU4NDVhOWMxNmQ4N2MyNTFlMWEyNDA1MjA1ZmZmNzg4IGxlZ2FjeS10cnVuaworMjcwMzMgY2E4NzExOTI1NWViMTc3ZmU3ZDZlNGRlNWRiNWEyZDA2Y2IzMjAyOCBsZWdhY3ktdHJ1bmsKKzI3MDM0IGUzMjE1MmFmZGU0YWJjY2E4OTI2ZDdhMzdmYzc1ODRhNjc4ZWM2OWUgbGVnYWN5LXRydW5rCisyNzAzNSBjM2RiYTkxYWZhNmQxNDJlMzlmOWFkZmUzYmFhODNiMmYxYWY3ZDk5IGxlZ2FjeS10cnVuaworMjcwMzYgOGVmYTUyZTBhODQ0ODU5MzlhMjRhNTQwOTY3OGRhOTkxMGYwOTU2YiBsZWdhY3ktdHJ1bmsKKzI3MDM3IGVkYzQyMzk0MGNkNjYzOWU0NGMxZjFiNWE4ZGM2ZGE1MWZhNTMxMmEgbGVnYWN5LXRydW5rCisyNzAzOCBiOTJmODE5Mzg4NDNmOWI2Zjk3Y2Y3NTBkYTU1OWFmNmUwYTNiYzBjIGxlZ2FjeS10cnVuaworMjcwMzkgMmZjYzZkNGU0Y2QyNjFmMjY1ODY0YTZiNmQ5MTJmNmFhZWRlZDgwZSBsZWdhY3ktdHJ1bmsKKzI3MDQwIGYzNWU3NTFmNWZmMjU4NDY2MTM0YzU5YzAzNWUxYTZiMzkwZTBkMDggbGVnYWN5LXRydW5rCisyNzA0MSAzYTFhYzExZWJlNTBjM2UyMDZmMTU4Y2Q2ZDc2ZmY1NDBjMTI4NGVkIGxlZ2FjeS10cnVuaworMjcwNDIgNzMyYjY5MzE4MTY4YzJjODExOTM0MGUzN2ZmNTA3MjRkNWMxM2Y4YiBsZWdhY3ktdHJ1bmsKKzI3MDQzIDVjNTkwMmRlNWE1NDIxNGYyYmU1MDVkMDkxZWI3ZmIwNjE3MDAyOTggbGVnYWN5LXRydW5rCisyNzA0NCBiMTgzNDhiZGNhMDgzZTMzZTVmNjNjMzEwOTNlOWNhNDVmODk2ZTFmIGxlZ2FjeS10cnVuaworMjcwNDUgZjE1OWVhOTU1ZTgwZWEyYmU0YTMyZmViNDBhN2I1MWYxZmQxNmE0NiBsZWdhY3ktdHJ1bmsKKzI3MDQ2IGUzYTg0MGZhNTg0Y2I4YmU5YzY3Y2FmMmI0OTk5NDI5MjI5MDQ3MjcgbGVnYWN5LXRydW5rCisyNzA0NyBkNTA3YWQ4NjIzNDIzMjM3NjY3OWQyZTZjYmY4N2FhOWUwMGIzZjE4IGxlZ2FjeS10cnVuaworMjcwNDggNjEzNThmODAwYjYxNjkwMjc5YWQxNGY4NGU1MWVkZjRjODBiYjk2YyBsZWdhY3ktdHJ1bmsKKzI3MDQ5IDMyNWJiYjQ5MzdjNWRjOWYzZjQ3MmE1MDk3MjUwNTgzYzBjMzk0ZGYgbGVnYWN5LXRydW5rCisyNzA1MCA4YTlhM2FmZjMyZmM1OGQ0MWQ4OWE5YzU3MzdmZjI5ZjI1Y2EyNjdmIGxlZ2FjeS10cnVuaworMjcwNTEgMTQ5MzhlNzYyNzZhMWE2OTY2MGM5OTM3MjllMTRhNzE4ODU5OGNlMSBsZWdhY3ktdHJ1bmsKKzI3MDUyIGM0ZDJkMzA1ZmQ5ODJhN2RjZTkwMGZmYjk3ZGUxNDQyZGY0ZGIzOGEgcmVsZWFzZTIyLW1haW50CisyNzA1MyBkN2JkN2I3MzI5YTdlY2Q3Mzk1OGI3MjQ1Mzg3NzM0MTQ3MmE3NTVjIGxlZ2FjeS10cnVuaworMjcwNTQgZDZmYWExMzc5NDhkZWZjZDNmNDBjNjQwNzhmZGM0YTA1ZGQzODA1MyBsZWdhY3ktdHJ1bmsKKzI3MDU1IDM5OWFmY2U4NmViMGQ4MDgyNjcwZWYyMDFmN2NiNzAyZTU3ODY4OWYgbGVnYWN5LXRydW5rCisyNzA1NiAzYmRmYzQ1ZDkwOTY4YzljOTllMzZhN2I3ZDQ1Y2E3YzM4ZDUyYzgxIGxlZ2FjeS10cnVuaworMjcwNTcgM2EyYTZhZjkwOTkyODNiZDk5ZjYxZWVjYTAyMTg4MWQyMmVmYzJkZSByZWxlYXNlMjItbWFpbnQKKzI3MDU4IDg5ODMxNThlOWYxMTM0NmVjZWZkZDIwZWMxNWY3ZGMxNzVjN2FlYjMgbGVnYWN5LXRydW5rCisyNzA1OSAwODA1N2E5ODc5MTBiM2Y5NGExYTU3YjZiMTk0MWVkYjY3ZjJmMDA2IERTX1JQQ19CUkFOQ0gKKzI3MDYwIGE1NmY4YzMwYWY3MWM4OTVhZGNjODg2YTBmNTYxYWVlODI3ZTVlMDQgRFNfUlBDX0JSQU5DSAorMjcwNjEgOGI5ZDkxMzA4MjBlZjdlZDg0ZDM2NGMyOTgyMGUxNmFiMjZhODQ3YiBsZWdhY3ktdHJ1bmsKKzI3MDYyIDYyNjZmMWJkMWFiOTNlZmRmMTY4YjQ0ZDI4MzQ5YjNhNzIwYzRmOWQgbGVnYWN5LXRydW5rCisyNzA2MyAwMTk5YWEyNzRjN2JmZmRlODYzNGI3ZmNkOWU2YTFkMWNkNWYxMmNkIGxlZ2FjeS10cnVuaworMjcwNjQgY2NlYWY3OGI4NWRjNzJlMDFjMTBlZmMzYzVhNGQ3NmVlYmVjMGY5YiBEU19SUENfQlJBTkNICisyNzA2NSAwZjU3MGJlNjczNmViZTJlZjRjYjZlNTkyMDI4ODhlZmFmZDA5MmU1IERTX1JQQ19CUkFOQ0gKKzI3MDY2IGMwZThjMDdhZTFkNmNiNTVlMThjMmU5MzllNmUyZTgzZDFhNjlkZGEgbGVnYWN5LXRydW5rCisyNzA2NyA3NzE4YjI3NGFkOGIxMmNkMDJhMGU0OGQzOTljZWExN2RhZGJlZWFlIGxlZ2FjeS10cnVuaworMjcwNjggMThkZGMwMmNlMzZmMzU4MmU5MjA5NDFhNjFhYzJhMDE1MGU4MzNmMyBsZWdhY3ktdHJ1bmsKKzI3MDY5IDY3YjlmNTNhNzgwMTRjYWRjNTE3MGMxNGQxY2YxYWY2OTQxZTUxN2UgbGVnYWN5LXRydW5rCisyNzA3MCA5YTVjNDg1Nzk2MzM5ZWQ2YTBmMGU3MzljZWNmYmI5YTdjMzMwZjRhIGxlZ2FjeS10cnVuaworMjcwNzEgZDRmNmUyYWRkZTQ4NDZjMjA3ZTI5MWExNjJkODczMDRjODNmZWMyMyBsZWdhY3ktdHJ1bmsKKzI3MDcyIGFiZTFiYjc2ZWU0NDc0NDk0YjY2MDlmMGIyYzE0ZDcyZDE0ZjIzMzMgbGVnYWN5LXRydW5rCisyNzA3MyBlNGFkZDdiYjVmMTQ4ZGI1MWNkNzBiY2IzYTFkZTlhNDZjYzdjYTg5IGxlZ2FjeS10cnVuaworMjcwNzQgZjg1ZjQ1MzFjM2MxNjQ0ODkyNjYwMTcyN2RiYmRkYzhlZmYwMTAyNCBsZWdhY3ktdHJ1bmsKKzI3MDc1IGUzN2YxYzBmOWExZTkzNmZhNzYzOGVlNzAxZGZjZmY4ZTkwM2Y0M2IgbGVnYWN5LXRydW5rCisyNzA3NiAwNThiZDJkNTBlMzMzOWY2MTRkZTBjNzljY2JkZjAzMTlhMGQxZmFjIHJlbGVhc2UyMi1tYWludAorMjcwNzcgNTZhNGQzYTUwYjc2Yjg2ZGJkNTJkNjVlZDE1OTQ5MTk4ZDVmNzY5MSBsZWdhY3ktdHJ1bmsKKzI3MDc4IDNiMzc5YWUzNTY5ZDkzMTBjNGYzNWQxMzUwMWViOTg1MjNlMjVkZjQgbGVnYWN5LXRydW5rCisyNzA3OSA0NGI5OTc3ZDQ4NDg3ZGVkYTU1MjUxMDI0OWI2YTE2YzBmNmIxOTMyIGxlZ2FjeS10cnVuaworMjcwODAgNTY1MDMyYjQ4ZjUwOWM1MzMzOGViMjkyZTUxMzA1YjZhMTNkODhiOSBsZWdhY3ktdHJ1bmsKKzI3MDgxIDI4Yjk5NzFmMDY4ZjdjZDRiNGM0ZDk0ODM3NTRjODM4ZGM5ODVhYjcgcmVsZWFzZTIyLW1haW50CisyNzA4MiAyYjEyMTlhNzJlZmNhNmVjNzY2ZmFmMTc4N2JiMDRjN2Y0ZTgxODk3IHJlbGVhc2UyMi1tYWludAorMjcwODMgOTY5YmQ1OTdmOTIzOGM3OTY2NmVjYTJkZTZjMzA1ZDI1ZmVjYzQ5YSBsZWdhY3ktdHJ1bmsKKzI3MDg0IGMyNzMzZThmNjYxMmI5YjI1ZWE4Yzc0NmIwNzYyMjdjYTE4NDExNzEgbGVnYWN5LXRydW5rCisyNzA4NSBmYzUzNjFlMDI4ZjNkN2Q2ZjcwZTVlMDY2NDg1Y2VkMDg0ZjZkMGMwIGxlZ2FjeS10cnVuaworMjcwODYgNzcxNTRjZWYyOWQxOWY0MGYzNWM4YTYyZDE1MjkxZjUwMmFkNjQ5NyBsZWdhY3ktdHJ1bmsKKzI3MDg3IDQ0NDk1NGM1NDM0YzFlZjdkODE0ZjhmMjhmYWViNGE2YTI2ZmNkYTEgbGVnYWN5LXRydW5rCisyNzA4OCAyMzdjYmQyYTkxZTliYmZjYjI2ZTYzMTU0ODU5YjA5NTAwNWI5MmRkIGxlZ2FjeS10cnVuaworMjcwODkgYjA2MjA4NWMxZmYyYjgwYTY1NzJiMzUzMWJiYjY3N2YzZWU3ZjczYiBsZWdhY3ktdHJ1bmsKKzI3MDkwIDQ4ZTkzN2UxYjNmZTNkMTBjMjZhYTBkMzk1MTlmMzM2Y2UwOGU0OWIgbGVnYWN5LXRydW5rCisyNzA5MSA3NWM1MTk5OWM4ZDU0Zjk1YWQxYjU4ODAxMzFlNGJiZGQ4NjQ1MGY1IGxlZ2FjeS10cnVuaworMjcwOTIgMmY2Zjg3MDhlM2U5NDVhNzE2OTJiYzliNzY5NjRlNzYwYzk3MGY1MyBsZWdhY3ktdHJ1bmsKKzI3MDkzIGRiMjM5ZWMzMDdlMDc0NzFjMmU4YmExZjMwMDJlZmUyZTI3MDhlZWQgbGVnYWN5LXRydW5rCisyNzA5NCAxMjM1YTk1ZmVkY2Q2Y2FmMmY0Zjk0ZDY2NzYwY2IxYTFjZWNjYjA5IGxlZ2FjeS10cnVuaworMjcwOTUgMmNkNmVkMWMxYjU4M2JhMjc4NzUwOTgwMDBhNmJhY2ZlODAzNjA5NyBsZWdhY3ktdHJ1bmsKKzI3MDk2IDlkMTFmNTE4NjBkZDNlMWZkM2YzZmZjMmJmZDk1Yzg4MGZkOGVkZTkgbGVnYWN5LXRydW5rCisyNzA5NyA1NTYyYTQ5OWZiN2Y4NDUxY2ZlOWNkZDE1NWZmNWM1YWYyZDhmZjMwIGxlZ2FjeS10cnVuaworMjcwOTggNWY4NWNhZTI1ZTE4NTU0MTlmMmViMzQyM2U4OTZmYTQwZTgyMDQ4NyBsZWdhY3ktdHJ1bmsKKzI3MDk5IGFmOGQ0MGU0YzM3NzczMjA3MWFhMjg2OTM0NTc3MGZkMWUyNDk0ZjQgbGVnYWN5LXRydW5rCisyNzEwMCBlMGE5MWM2NzM4OGY0ZmQwYWE1MGQ3NjJiNTY2MjM1NDgzYWQ5MmFmIGxlZ2FjeS10cnVuaworMjcxMDEgYmQyNmMxMjA1OTFhNTc4ZTliMTQwY2I1MTZiYjI2MzI5YmE5YzQyNCBsZWdhY3ktdHJ1bmsKKzI3MTAyIDdlYWFiZTc3ZDVjYmQ5ZjdmYjNlNmEzMGM0MzhjNmQyYmJlZTk2MTEgbGVnYWN5LXRydW5rCisyNzEwMyAzMDgxMjJiNjk5NmU0NGRjMThlZTk1ODNjNTRlNDczMzVhMzYzZjUyIGxlZ2FjeS10cnVuaworMjcxMDQgNjU1ZjQ4NjI4NDM2OWNkNGM4Mzc1MzI5MWUyNTU4N2RhMGQ2Njg5ZSBsZWdhY3ktdHJ1bmsKKzI3MTA1IDE4NDJkYjZhMTM5NDg1NDZjMWQ2YWJkNGNkZjNkOWRkMzg5ZjUyM2UgbGVnYWN5LXRydW5rCisyNzEwNiBkZjFhMjc1ZmY0ZjI1YjU0YTM1NDJkYjkzNWFmZGQ5NGZiZDMwODA1IGxlZ2FjeS10cnVuaworMjcxMDcgYTY4ZDI0NjZkOTRiZjU1NDkyMDhiZmFlNGRkY2Y2ZjQwOTAzZDVmOCBsZWdhY3ktdHJ1bmsKKzI3MTA4IDI3ZjQ4MzE0YmE5ZDBlMWVjMzM2NGY2NGExMTYwNWE5NDUyOGE4MTAgbGVnYWN5LXRydW5rCisyNzEwOSBhMjEzNmFlOWQ0Zjc2ZTcyNTA5MDc0MzIzM2I3MjI2MDhkYThjNWZmIGxlZ2FjeS10cnVuaworMjcxMTAgNjg5NTIwMGQ2MmIxOWNlOWQ4YjRjMWZlMzdlZmJjNjhkMTMzZDdjYiBsZWdhY3ktdHJ1bmsKKzI3MTExIGZlNzY5YjA3MTUwMzUzZmUyMWM0NzYzOWUyN2M3NzliNTQ0MDgzNDQgbGVnYWN5LXRydW5rCisyNzExMiAyZTFkZWY0MTdlY2I4OTdjOTRlZjc2ZjExODQwMmY1MjU2NDhkZDJlIGxlZ2FjeS10cnVuaworMjcxMTMgZWEwMzU0OTBmNjI0NWMyODkxNDgyMWRiYzQzOTFiNDgyNGQzMmQ1OSBsZWdhY3ktdHJ1bmsKKzI3MTE0IDM4ODMyMDAwZjdlOTQ1YmU1YzQ0YTY3NjYwNGU1MDdmNjY0ZTI1MGMgbGVnYWN5LXRydW5rCisyNzExNSA0M2RkY2RjZDNjNzFmZTRlZjc0MTJjNjk0MGQyZTZjNjRiOGQyNTJkIGxlZ2FjeS10cnVuaworMjcxMTYgNGQ1OTMyNTRiYTkzOTI1ZGVlZGQwMGFhY2U5NzU2MTRmOTg5MTYzMCBsZWdhY3ktdHJ1bmsKKzI3MTE3IDJkNjdhMGJhOTAyMGQyOGU4OTJkOGQ2NWMzYTRiMjMxNzNlMzQwZTUgbGVnYWN5LXRydW5rCisyNzExOCAzNjY4NzdlZGQ0ODc2M2NjYThhMTc0NmQ1MzMzNzBkOTIzMWQ0Nzc1IGxlZ2FjeS10cnVuaworMjcxMTkgN2JjNDgwMjllYWE5Y2IzZDkwYmJlODI3ZGRmNzY3MmU5YjQ3ZWE0MSBsZWdhY3ktdHJ1bmsKKzI3MTIwIGExNjhiMmY2ZDdkYWFkNmY1ODI2ZWY5ZWU5NTYzNzk2NzE4OTBmYWYgbGVnYWN5LXRydW5rCisyNzEyMSA0NzFhNTdiZjJkYWUxODVkNDgwYWUzZDhjYmEwNDk2YTMxNTE5ZDRlIGxlZ2FjeS10cnVuaworMjcxMjIgNDEwOTdlOTJmNTYwZjk5OTM0YmIyYWNmY2QyODE2NDhjYjFmOTExZSBsZWdhY3ktdHJ1bmsKKzI3MTIzIDJjOGVhN2Y5YTNjZWRjMzdmZjFhNjUzOWZmYjVkMzkyOTFjMDdhOTAgcmVsZWFzZTIyLW1haW50CisyNzEyNCAwMjc5MDQwYWUwM2NiYTRkODliZTEwYWQ1NDI2MzY1MTMwZjY3NzE4IGxlZ2FjeS10cnVuaworMjcxMjUgOGU1ZjI2Nzk2NjIwMGIwMzM3MjI3M2Y3OWNhNGNkYjI3MjBmZTIwMCBsZWdhY3ktdHJ1bmsKKzI3MTI2IDA3NzFmOTM4MmQxZTMyZGU4OTU2MGJmZWU1MmZiMzExZTNmYzQ4MmYgbGVnYWN5LXRydW5rCisyNzEyNyBjN2U4MDc4MTcxNTkxY2NkN2NlYmQ3ZWY1NDVlMWUxN2Y3YTJiZTFmIHJlbGVhc2UyMi1tYWludAorMjcxMjggOTEzMTczMDFkZDA5OGNhMzNiN2YyMTAyMWI3NTY2OGY3NTExYTM5YyBsZWdhY3ktdHJ1bmsKKzI3MTI5IGU2NDBkODliNDkwNzQxNWEwODQwODYyMGZmMzIyZWZkYzJmOWE4NDYgbGVnYWN5LXRydW5rCisyNzEzMCA5NGQwZGM5ZDZlNDRlZjEwNzQyM2JlNmI5MzBlZjhiZWQ2NmE4MDc0IGxlZ2FjeS10cnVuaworMjcxMzEgYmFkYmM1MzM0NDg4NjEyMmFhODk4MjUzMWRjYmFiZWUwYTRlYmUwZSBsZWdhY3ktdHJ1bmsKKzI3MTMyIGYxNmY2ZGE0ZjVmZmRiNmQ1ZGRjNzBhMjEwZGNkODI5NjZhMGM2NGEgbGVnYWN5LXRydW5rCisyNzEzMyBkNThmYjU0NDUxMTg4OGU2ZmI1OTE4NjNlYzg1OWU2NjY2N2FhOTM4IGxlZ2FjeS10cnVuaworMjcxMzQgYTdjZWFkYjAzZWRjOTE3NDU0NGE1OTJiNTYxMTY0ZjgyNjgxZDI3NSBsZWdhY3ktdHJ1bmsKKzI3MTM1IDFjYmNkZGNhMzNiMDI4M2MzODQ2ZTgwMmMzOWEzY2JjYmNiZGVjYmQgbGVnYWN5LXRydW5rCisyNzEzNiA1ZmIwOGQ4MzJlYWM5YzkwODM3ZDRmMjNjZjhmZTlkNWRiNzIxZWVkIGxlZ2FjeS10cnVuaworMjcxMzcgNDY4MGVmNGZlOTBhZDQ1MzNkMzRiYjY0NjA3NDk1M2UyYTcwNDk5NiBsZWdhY3ktdHJ1bmsKKzI3MTM4IDM1YjYyOTA4NTVmYzFlODc0Mzg4MzVmY2E5MTUzN2FhOTAzYmEyZGMgcmVsZWFzZTIyLW1haW50CisyNzEzOSBmNmIyNzE5ZmJmMTE5ODk3ZWFkMjUwNzFjZmRjMmFkNTlkMzVhMGE2IGxlZ2FjeS10cnVuaworMjcxNDAgMDZkYmQwODk4YjM5ZTI0M2RhMzFkNDdlNzFhZmQ2ZjAzOGQxZjE4ZiBsZWdhY3ktdHJ1bmsKKzI3MTQxIGE1NTM0ZmFlNTExMDE2ODY3NzIyOTExNzAwM2MxODM3YzJkYTBiMzAgcmVsZWFzZTIyLW1haW50CisyNzE0MiAwYzY1ZjQxZmQ5MjE5ZWQ4ZmQyM2JkYzQ2YjkxYzVkMzliNWY5ZjhlIGxlZ2FjeS10cnVuaworMjcxNDMgNTAwNjMwMTZkMDQ2OTlkMTE4NmZlMjhkMTdlY2E3YzY4MWUxN2M0ZCByZWxlYXNlMjItbWFpbnQKKzI3MTQ0IDVmODZjMjFiZDlmYzg5MDU2NTZhMmE0NGY3YjdiZmY0NDlkMzJjMGEgcmVsZWFzZTIxLW1haW50CisyNzE0NSA3MWRiNDI4ZjZlMDhhNDU5YWU0YzQyYjFlODZlNDViYzk2NzNhMzM2IGxlZ2FjeS10cnVuaworMjcxNDYgYmVjMWI5NDJlMGJjM2NkNzFlNzY5YTAxNzIzMTFmNTY5MjMwYmJiOCBsZWdhY3ktdHJ1bmsKKzI3MTQ3IDI0NTIyNGQxYjhjOTIwMWEyYWU4NDNlZTEyMTdlM2JlM2U3NTE2NDQgbGVnYWN5LXRydW5rCisyNzE0OCA1NWM5MjI2Njk5MTMxMzQxZTI3ZjQ4YTRlZTgzN2I5ZmFjNTExYzcwIGxlZ2FjeS10cnVuaworMjcxNDkgYzdjZGE2M2EwMDdlNDRmNjE2ZDA1YTRiMDk2YmRkNjM3ZjhiNTlhOCBsZWdhY3ktdHJ1bmsKKzI3MTUwIDczMDQ5MGZmMjVlYTM5YmQ2NTAyMWE5ZTRlZTBhODgzNjI4YWM3YmQgbGVnYWN5LXRydW5rCisyNzE1MSA1NGY2Zjg5MTM5ZGI1M2Q5MThlNTU2MWM3NTU5NzNmMjMwNWE1MjZjIGxlZ2FjeS10cnVuaworMjcxNTIgMGRhYjhiYTFkMjk4MDc5ZjljMDQ1OWU2ZTE1ZWU1ZDZlYjJjNmMzYiBsZWdhY3ktdHJ1bmsKKzI3MTUzIDI0YjBmNmQ2OTNlMzRiMzdjNTJkZjA1OTA4ZTJiN2M1ZGQ4M2Q2ZWEgbGVnYWN5LXRydW5rCisyNzE1NCA3YTMyYzIzNTZlNTY3Y2Y4OTlhMjY4NDYyM2Y1NGYwMGE1YjIxNDk3IGxlZ2FjeS10cnVuaworMjcxNTUgZTBmYmY5YzRkNDZjMmQyYmU4ZDc4NTM3ZGQyZmI0ZWI3NzU3M2FlZCByZWxlYXNlMjItbWFpbnQKKzI3MTU2IDkzMjk3NzA2MzdhODU4NTIxOTRmNmViNjk0ZDE0NzUzOTAyZDI1NzUgbGVnYWN5LXRydW5rCisyNzE1NyA5ZGEyZDhjMTMyMDkwOTQ4MzU4Yjg2M2I1YTBiN2UzYTMxMGEwZjdhIHJlbGVhc2UyMi1tYWludAorMjcxNTggYzAxYzFiNGE4MTcxNmQxZTIzN2Q0MTBiYzNiZTE5OTY4YzRkYzY0MCBsZWdhY3ktdHJ1bmsKKzI3MTU5IDQ4NmY0MDQ1ZDEzZGY2MDg5NmFlZjliYzIxZDk2MTZmMzVjZmU5NDcgbGVnYWN5LXRydW5rCisyNzE2MCBjZGU2NjA4NzM5YzQyZDQ1YTFmNmIwODUwN2Y3NTU3YzQ4OWM0NTEwIGxlZ2FjeS10cnVuaworMjcxNjEgN2RkNDMyZTFkZTI2NjY0MDJlZjZiNTkwZmYzMjAwNTllMmFjNmYyMCBsZWdhY3ktdHJ1bmsKKzI3MTYyIDdjZGM1MzFlNmE1MDRhMDlkNzgzN2Y3ZmJiYmE1M2MyOTA2MzBlYWUgbGVnYWN5LXRydW5rCisyNzE2MyAxZjFhNmY3ZGQ2MDAxNGRiMDZjZDhiYWVlZDg4OWUxNDc5YTNmOTUyIGxlZ2FjeS10cnVuaworMjcxNjQgODBkNDUwZTU1MmY2OTljZTY3YTBmNzgxZTdiYTFjNzhjZjkyNjA4YiBsZWdhY3ktdHJ1bmsKKzI3MTY1IGZjYzM2ZWUxOTI0YjMxNmRhOTc2NDZlOGU5MjI0NzM0NTk3ZTBjYmYgbGVnYWN5LXRydW5rCisyNzE2NiBiYTI5NDg1ZDA3MjBiZWVhOGYwMTY1N2U0MmEyZDVlM2NmMmU4OTg0IGxlZ2FjeS10cnVuaworMjcxNjcgMWRhNmQ2N2Y0YTA1YzVlMzBmM2Y1NDJmNmJkYTUyYWNkNDYxNTUwMiBsZWdhY3ktdHJ1bmsKKzI3MTY4IDJhZDEzZWU2ZDg1MDVjMmMyNDEwMDg2YzE5NjA1MWY4NTE4ODMwNTcgbGVnYWN5LXRydW5rCisyNzE2OSBiZjE1NTVhOTI3MTE3ZGIxOGQzZWM2MjkzZGE4OTRhZmE4ZmM0NjE3IGxlZ2FjeS10cnVuaworMjcxNzAgYjJiMWYxZmY1YzcxY2RhN2MyZGY3NDU4ZmM5ZGY5ZmViYTZiNTU1NSBsZWdhY3ktdHJ1bmsKKzI3MTcxIDRlYzU4YzI3MGYzZWMwYzBjOWVlZjg5ODk1MTM3NjY2MzFiZDQyY2EgcmVsZWFzZTIyLW1haW50CisyNzE3MiA3ZWFkMmQ5ZGY3Zjk2OGNkNTRjY2NmNmIxYjcwNjU3YTcwNDczZjQ0IHJlbGVhc2UyMS1tYWludAorMjcxNzMgMGIxMmFmYzQwMTJhODA2Y2JhNDVlNjM1NDRiMGI3OTVhYzg3N2Q3MyBsZWdhY3ktdHJ1bmsKKzI3MTc0IDA2MDFlY2M3ZjRiZjczOWRkMzk3ODIxN2MyYzNmMzQ3MGNlMDc3Y2YgbGVnYWN5LXRydW5rCisyNzE3NSBjNzRkODZkYzQwMTc3NGRjOThlZTQwNTE0ZmM2Y2VkNjc5ODJkZWFiIGxlZ2FjeS10cnVuaworMjcxNzYgY2M2NWI1YmNmYzM4MzY5YjhkOWI2NTc2YTQ3OWFmNjFjMTY5NjU3YyBsZWdhY3ktdHJ1bmsKKzI3MTc3IDc5ZGNkNTdmMjcyZGVjNDkzMzMzNTZjOTA0NWM3NjRmOTY3NjYyMDYgcmVsZWFzZTIxLW1haW50CisyNzE3NyBiYjViMzcwNDkyZDZhMzc2OWU3ZTNhYTUwYmY0NTcwNmMyZDM0MmZhIHJlbGVhc2UyMi1tYWludAorMjcxNzggMDFlNGI2OThmZjdlZmUwYjFmMzI5N2ExYjY5Y2I3ZGRiMjRhYzZhOSBsZWdhY3ktdHJ1bmsKKzI3MTc5IGUzZTAxOWJjNGUxZWNlNDE0NWVlMTc1NzUxY2Q2YzZiODQ3MDFjNTUgbGVnYWN5LXRydW5rCisyNzE4MCA4OWE3ZmE5MThjM2I3ZjY4OWFmNDM0YmY1NzhiMzZmMzY3YmE0ZjljIGxlZ2FjeS10cnVuaworMjcxODEgZjZjMjZkMDgzYmY2YzhkZjMwODkzZWU2ZGFiZjRmYzk4NjE4NmY1YSBsZWdhY3ktdHJ1bmsKKzI3MTgyIGM3ZDdkMjMxOWIzYTFjN2JiNTNiMWRlZjFhNjg3YzE3MzBiODFkMzMgbGVnYWN5LXRydW5rCisyNzE4MyAyMDNkMTQxMmE3ZTgyNmQzYzA0Mjk2MmVmNWZiMjUxOWY1MWYzNmNjIGxlZ2FjeS10cnVuaworMjcxODQgZTRkNTU3ZDQ2Yjk2ZmQ2NTQyMmRiZTM3NjY1YTQ3M2RmNzMwM2FkNCBsZWdhY3ktdHJ1bmsKKzI3MTg1IDJkOTdiYzJiYTUwZDI3OGQwYmViNjJmNjNkZjQzZWQwNjY2Yjc1YjAgbGVnYWN5LXRydW5rCisyNzE4NiA4YTBhMTRlMzcyNWUzNzYzZjE1Njc3NzZmYWEwYjk3MWUxZGYyOTIwIGxlZ2FjeS10cnVuaworMjcxODcgNDNkNjU4ZGM4ZGQzNmU0NDczNmQzYjUxNmJjZWNjOTNmZGVmMzEyOCBsZWdhY3ktdHJ1bmsKKzI3MTg4IDEzMGZmZjQ4NmZhNjRlZjgyMDA2ZDI3MDU1ZDI0NzYxZTQ1MDNiODUgbGVnYWN5LXRydW5rCisyNzE4OSAzMTI2YzQyNjI5NjI5Yjc5NWFjM2RjMDRjNjQ3YzE3YWUzNzA5N2U2IGxlZ2FjeS10cnVuaworMjcxOTAgOTlkMjI3MjMyNTJmNTkwODk5NWRkODZhMzY1NzZiMjc1MjgwYmVlMCBsZWdhY3ktdHJ1bmsKKzI3MTkxIGM0OGJmNWRmNjE0YWMwNGE3ZDI1NTY4N2E5YjBkNzU1MDg2NTIyMWEgbGVnYWN5LXRydW5rCisyNzE5MiA4ZmY2OTFkYzdmMjkxZGRkMGM3YjUyNjg3YWRiYjU4ZmZhMTdkYzg2IGxlZ2FjeS10cnVuaworMjcxOTMgOWYwMDA5Y2E5N2I5YTVjMmQ3Yzg3ZWQ4ZGE4ZDNjMDUxMTJjZWZjMCBsZWdhY3ktdHJ1bmsKKzI3MTk0IGFiY2ZhNDk5NTJjNDMyNjI3ZTZkMTE0YzZmMDBjOGY4MThkY2RlZDMgbGVnYWN5LXRydW5rCisyNzE5NSBkNWU4OGMwYzllMDllZTU1YWIzODE1OTAwM2UzM2RhOWVhMjFmODk5IHJlbGVhc2UyMi1tYWludAorMjcxOTYgNDFjNGRkYWIzNmYyZTIxZTJjMTM3NDIxOGUyYWUwZGRmNmE1MTY2OCByZWxlYXNlMjEtbWFpbnQKKzI3MTk3IGU0MjcyYWQxYTYzNjk0YTIwZDFiMTUzMmNlYmU0NDlhZjc3M2YzODAgbGVnYWN5LXRydW5rCisyNzE5OCBhZGUxZDU2MTA5YTgyZjk1MGI1OTg5MjAzMDFkNzZhMzJiM2JkYzkwIGxlZ2FjeS10cnVuaworMjcxOTkgZjczMDZhZTg2NjJkYjU4ODIwY2ZlZGIyODQ2NWY5ZDQ5N2VhZGI1MSBsZWdhY3ktdHJ1bmsKKzI3MjAwIGVkMWJhMzdhNDZiNzNmMGM1YjI3MTI0NTU1NGMyZGM3YmU0N2EzMmYgbGVnYWN5LXRydW5rCisyNzIwMSA5ZjBhZDBlYjYxZjA4NmNjZDdhN2YyYTY2MmViZTA4ZDM0M2Y0MDc5IGxlZ2FjeS10cnVuaworMjcyMDIgOGFlMjZkOWJlMWI0ZmMxM2Y0ZGY1OTExYmMxNGE4YzU5ZDVjMWFhZSBsZWdhY3ktdHJ1bmsKKzI3MjAzIDFjZjFmOTgxMjIxOTc5ODk0MzMxNGYxM2FmMjVhMDA4M2JmYmE1YTAgbGVnYWN5LXRydW5rCisyNzIwNCAwNjVhN2YyM2JlMmZkNDRhYzdhYjA5ZTZlM2M3NTQ3Zjg1NTQ5NDg3IGxlZ2FjeS10cnVuaworMjcyMDUgMzU5YTU3ZTk2ZDVlYjYzYmRjNTc3ZTIyZThkNjcwYTM3MDNhZDFiYyBsZWdhY3ktdHJ1bmsKKzI3MjA2IDk1MjYzY2NlYzgxOWNjYzUyZmMxZGViNTgyNDhjYTM2OGZkYzVjYzIgbGVnYWN5LXRydW5rCisyNzIwNyBjODgxNWJkMDFmZjU3OGU1OWE1NjU0NjJiYTBkNTVhYTA5MjkyMTBhIGxlZ2FjeS10cnVuaworMjcyMDggOTAzMTEyYzFjODg3NjA4OGI5N2ZmMTE3NzkzNjIzYWY0YWQ0ZjE0YiByZWxlYXNlMjItbWFpbnQKKzI3MjA5IDNmMTk2YjRkYzRjMTA2ZWMzNjY4YjdmNjllYmZhOTEyN2IyY2YxMmIgcmVsZWFzZTIyLW1haW50CisyNzIxMCA2YzYxOWMxNjFiODdmOGRmZDgxMTI2NTZiMDc2MGY3MmQ2MDk2ZDFlIGxlZ2FjeS10cnVuaworMjcyMTEgODVhNGU3MjdiMTZiYTFlNzNhY2E0ZDViMTI4YjFkM2IxOWU1Y2JmYSBsZWdhY3ktdHJ1bmsKKzI3MjEyIGJkMzdlYjRkYWYzYjY3NDgyOGQ2MGM0OWNhNDg3ZTlkMjE5ZjA3MTcgbGVnYWN5LXRydW5rCisyNzIxMyBiNDgxYmE5NjdhZDgzNzEwZDM2OWFhYTU5NmYxNDNlNTA5MjljZDcwIGxlZ2FjeS10cnVuaworMjcyMTQgYmViNjk5ZTEwYjI5Y2UyMjRlMDEwZTU5ODk0MGVjODI5ODJiMDZkOCBsZWdhY3ktdHJ1bmsKKzI3MjE1IGY2YzJjMDg5ZmRmMmFlMDNlMzc5YjY5OWM0NjMyM2RjMzEzZTg3YzYgbGVnYWN5LXRydW5rCisyNzIxNiA3MjUyYjg2N2Q4MWUyOGVmY2Y2MjllMTA5YTQ5NmZjZTQ4ZThhNGQ1IGxlZ2FjeS10cnVuaworMjcyMTcgYzljOGY1MjNmZjFiNTY2N2ZmZGRkNmMyODE4ZjkzNmNjZWNmZDY4NiByZWxlYXNlMjItbWFpbnQKKzI3MjE4IDg1NDU4M2NkNjNjN2NlNTczYjdiODcyOTJkMGJlNDBjYWFkNDE5ZmQgbGVnYWN5LXRydW5rCisyNzIxOSBkNmFlNTQ0YWNkMjRhMWY3MmNlMDA1MzRmZWQ0NjRmZGU5MWVlNTA0IGxlZ2FjeS10cnVuaworMjcyMjAgNDYyNzVmOWU3NDA3MTBkOWIwZTVhMGFmMjY0YmQ0MmQ5NjcxN2I3NyBsZWdhY3ktdHJ1bmsKKzI3MjIxIDhhNDc2OTI0ZWNmZWExOTRmNDdjMGMyNjYwY2QwNmRiMWQ4MGEzNWEgbGVnYWN5LXRydW5rCisyNzIyMiA4YmM0ZTViYTFmNjUxN2E3ODg3ZTg5MmE4YmM3MmYzMTU1YTgwMjYxIHJlbGVhc2UyMi1tYWludAorMjcyMjMgMmIwNzEzMzcyMDVjMDFjMjY4NWIxYmJmMjJhZmYzYTVmMDU0ZjUyZCBsZWdhY3ktdHJ1bmsKKzI3MjI0IDg2OGNmYmRjYTkwOTY5OWIwYzU2OTMwMGExZTAyNzRkMjc1YThkYWUgbGVnYWN5LXRydW5rCisyNzIyNSA1MDI3ZTdjMTJhMTYwMDNhMDZmYjAzYTBhNDQxZmZjYmVkOGRjOTUxIHJlbGVhc2UyMi1tYWludAorMjcyMjYgNTk4NmRiZDAwOTRmYzNiM2Y0MzI0MWUwMWE5ZThiY2NjYWJlZGJhZiBsZWdhY3ktdHJ1bmsKKzI3MjI3IDZkMDA4YTRlMjYzMzM1ZWZmN2VlMzZkNzUxNGI0N2U5ZDBhZTJjYWYgcmVsZWFzZTIyLW1haW50CisyNzIyOCA2M2VlMzFiYjI1ZjMyNTYwMjkzNzdmNmI3NDAzNjdjOGE4ZTA1MmQ3IGxlZ2FjeS10cnVuaworMjcyMjkgZDdiMzA3YzM3OWM4ZGMxZGQ1ZDAzNmZmYzQ3OWRhNzM0M2I5OTM3MCBsZWdhY3ktdHJ1bmsKKzI3MjMwIGI3OWQ0MzMwNWM3MmQ5NDczZjU4NTM2Y2VhMTkzMWZmOTNhNzNlNjQgbGVnYWN5LXRydW5rCisyNzIzMSBkZmE2ODY2OGQwMGVjZGI1NmFmYmZkYmU0NWQ4NmM1MzYzMDViNjc1IGxlZ2FjeS10cnVuaworMjcyMzIgNmMxYTBkYzg1MWI2YzFjYzM5NWM4NmYxN2FmNjcyOWFlMThjMjM2ZCBsZWdhY3ktdHJ1bmsKKzI3MjMzIDFhNzZlM2M0NTA4ZjM2MzUzYjJlM2RiNjVjZTJmZTdkNmZjY2JiNDMgbGVnYWN5LXRydW5rCisyNzIzNCA0ODdhNmI5OWY3ODExYjBlODEwNmMwM2RkZjIxZTFhNGViMzdkMmY0IHJlbGVhc2UyMi1tYWludAorMjcyMzUgNDVkNjc2OTMzODgyOGY3ZjFiZGEzMDhlMTdhZTQxNzU4NmMyM2VmMiBsZWdhY3ktdHJ1bmsKKzI3MjM2IDhlNjc2MGJmMTg4NGU3Y2I0MDA4N2ExYmY2ZTQ5MzU0NGRiNWI1MTIgbGVnYWN5LXRydW5rCisyNzIzNyA4YWQ4MWIzNzk1NTIwMDU4YWUxYzc4NDNmMDEwMzBkNjJlZjUyYWE3IGxlZ2FjeS10cnVuaworMjcyMzggNjNkMWUzMjYzZjQ1NjJmMzk1NDU5MjYxMzY0MTZiZTE0MjRmOTRlYSBsZWdhY3ktdHJ1bmsKKzI3MjM5IDk1ZTdiYmJkMDk1NDk0NWVkYTk4N2NlNzAxZWEzNzM2NTE1ZTQxNzkgbGVnYWN5LXRydW5rCisyNzI0MCBjMDJkMWM5YTY2MmU2NjVhNDA3ZDUwOTk0YTQ0NGYyMjE0MzE1MzNhIGxlZ2FjeS10cnVuaworMjcyNDEgNDU4OGI2ODIwYTExZTU0YmJkNDA5ZmJlZmNjNTcxOTBiYTViYzU0MiBsZWdhY3ktdHJ1bmsKKzI3MjQyIDE1YWIyOTM5Mzc3OWYxOWFhODNhMmFiZjRjOWRmM2I3Yjc1MDExZDYgbGVnYWN5LXRydW5rCisyNzI0MyA1YWZkMTRhMmE4YmM2Yzg3NjAxNDgxYTY1MmQ4ODFmOTE2Y2U0NzlkIGxlZ2FjeS10cnVuaworMjcyNDQgODMyZjA1MDExNDhiYjc4ZWNmMmVlNDNlMjlkM2IyNjk1YzRlZDE3ZiBsZWdhY3ktdHJ1bmsKKzI3MjQ1IDA0OTlkZjU4ODRkMmY1NGZmYzQzZjA0ZjY3MzFlNDY2NzI2ODUxZDggbGVnYWN5LXRydW5rCisyNzI0NiA0ZjZkMzFkYWNkNWU2N2U0OWM1MmM1NzczOWJlMmNkMDBlZjg5MzE0IGxlZ2FjeS10cnVuaworMjcyNDcgMDg0NzVjODdkMjRmNTBkMjdiODQzZTEyZThlMTA3NjU5ZmQ3NzdjYyBsZWdhY3ktdHJ1bmsKKzI3MjQ4IGJiYWVhZjI3MTljNGJiZTY1NjJlODdjZTBhMGNlOTE4NjU3NmE3YmIgbGVnYWN5LXRydW5rCisyNzI0OSA4YjdkODdlYTQ4OTRlMWQ2MDk2MGJiMDg2ZmQyODUzYjdmNzZhYWQ2IGxlZ2FjeS10cnVuaworMjcyNTAgM2RiYTg2NmU4NjJlOWZmYTYxYmE0NTFiNGI2Zjk3MWQ1MDMwMDIzNiBsZWdhY3ktdHJ1bmsKKzI3MjUxIDAwMGFiNTg0ZTc3YTYxYjQyODhhZWIxYjYzYmNkMGU3NWNjYTU3ZjAgbGVnYWN5LXRydW5rCisyNzI1MiBlYTdlNzE3ZGVlMjcyM2I0MTY0OTk3NjBkNTU1NDdmMDk4MDg2MDIyIGxlZ2FjeS10cnVuaworMjcyNTMgNGM2N2RkNDJhMWQ5ZWEzOGM1OTljOTczNDhmZWNjY2NjN2Q0MWJkOSByZWxlYXNlMjItbWFpbnQKKzI3MjU0IGFiNTM1NWQ4NzNkZDU4N2MxYmVlNDcwMGRkMjAzZjNlOGFhZDdjYzkgcmVsZWFzZTIxLW1haW50CisyNzI1NSAxY2VmNjFkNTk0Nzg2NzFlMDViYjMyNTRhMTZkOGNiMmU2MmU1Y2ZjIHJlbGVhc2UyMi1tYWludAorMjcyNTYgN2I2NmYwMDM0MjMzYTc2Njc0MWMzMzZlNDk2MDFiZjNiNjdkYmMxMiBsZWdhY3ktdHJ1bmsKKzI3MjU3IDQxYWI1MzJkNGY2MDFjY2E0NGNjNjk5NWIwMDM3YjVhOWIzOGRjZTEgbGVnYWN5LXRydW5rCisyNzI1OCBjMTQ1ZmRkZWEzNDA4NGZmNjNhMTkwYmEzNjEyMzRmYzAwODBmMzdlIHJlbGVhc2UyMi1tYWludAorMjcyNTkgZWE5ZDMzM2Y5MDM0ZTFkNTIzNzQ2MmJiODMwMDMyODgzZmVlYWU0MCBsZWdhY3ktdHJ1bmsKKzI3MjYwIGE0NGYzODc3YTM4NmJmMjczODc1NGUxOWM1MzE3OGJkZDg4MGQ0NzcgbGVnYWN5LXRydW5rCisyNzI2MSA4M2U0NThhNjNjM2ZiYWM0Mzc2ZTQyZDk0YjIyZGQ2MzgxMzMzZmQwIHJlbGVhc2UyMi1tYWludAorMjcyNjIgMzI0YzcyNjc1YzhkMDRiNGIyMjUzYzBjYTQyOGI2OGQ0NGRiMmVmYyByZWxlYXNlMjEtbWFpbnQKKzI3MjYzIDAyYzUwNDVkNWI0ZTBhMzI3ZjhmZTg4OTI3NzBiODZlY2E4MzI0ODEgbGVnYWN5LXRydW5rCisyNzI2NCBhZDFkODYyZmI2MzI2NGRmMGEzZjgyMmNjNDg2YTg1NjRlMTE3OTQ3IGxlZ2FjeS10cnVuaworMjcyNjUgODMwNWExOTU4NGJjODhhZTE2ZTY4YThlY2Y1NWVhZDEyMDY2NjAyOCBsZWdhY3ktdHJ1bmsKKzI3MjY2IGY1MDMwYTI5OTM1ZGNhYjNhMzJjZGEwYTg2YjEwMTBhZmY4ZWE3NjEgcmVsZWFzZTIyLW1haW50CisyNzI2NyAyODU3MDJmMDgyNGE2MzdlNzNjOGU1ZjFiYTVmNGJhZmM0MjUyZDEyIHJlbGVhc2UyMS1tYWludAorMjcyNjggMDg5OTQwOWEwY2I2ZDFlMWUzYTg2MzY5ODdjYzM5YzZmZWE1NjQyOSBsZWdhY3ktdHJ1bmsKKzI3MjY5IDAxY2RkMzhkMzVmYTBkMGMyMGIxZTNmMzNmYTlmMWEzOGFkZGQ1NzMgcmVsZWFzZTIyLW1haW50CisyNzI3MCBhMDdiYzMwM2E2MGQ4YWUzYjc0ZTU5NWMxNjBjM2M4OGZhZjU1MTY4IHJlbGVhc2UyMS1tYWludAorMjcyNzEgMDY2Zjg5MzgwNzFhNTUwODhkZGY3ZGZjY2I2OTIyODFhZmJjM2E5MCBsZWdhY3ktdHJ1bmsKKzI3MjcyIDRmMDYwNmNlZWVmOGM5NDM5NGViMmJjZjI5M2UxZGU1MDVlMzU3MDIgcmVsZWFzZTIyLW1haW50CisyNzI3MyBlOGJhZTI1Mzc4NGIzZWRjYmNlMTMyNjQyNzRjYmU0NzM3MjJiNzdkIGxlZ2FjeS10cnVuaworMjcyNzQgOWNlNzFiMWNjMTdmNzE4ZTljYjkyNTBjYjIwZGYyN2MxZWQzZWE3MSByZWxlYXNlMjEtbWFpbnQKKzI3Mjc1IDczY2Y0ZDg0NzU3MGVjYWFiNTQ4NTI0M2RhODdiZWE0MTU5MTA5N2MgbGVnYWN5LXRydW5rCisyNzI3NiA5MmYyODljMmY3YzYzZDk3N2IxNTkxOWU4YjM4ZGFmZTQ5ZDM1OWJiIGxlZ2FjeS10cnVuaworMjcyNzcgYjE2ZDRiZTZhMjMyZWUxODExMTg0NzVlMzBkMGFiOTFlNGU0NTFhYiBsZWdhY3ktdHJ1bmsKKzI3Mjc4IDkyMTA2NGMyNjI5N2IyNWViMjNiYTk2ZDRjYzFiZWIxNzQzYTU4Y2YgbGVnYWN5LXRydW5rCisyNzI3OSA2ODkzY2VlYzg2MTBlOWM1NDg0MzQ2MWQ0OTM4ZDc5NWYyZmE0YmE3IGxlZ2FjeS10cnVuaworMjcyODAgMDc1Zjc1NWE2NWRhMTZiZGVmZmYzNzA5MDBhODM5MjJhMDU0MTYzNCBsZWdhY3ktdHJ1bmsKKzI3MjgxIDEyOThlOTdmYjM0M2FkYjE2YjJkZDFlZGJkM2M0NmNlNmM3NWRiYTEgbGVnYWN5LXRydW5rCisyNzI4MiA3ZTNlYWM1ZDMyOTk3OWNkOTYyMGY4ZTBiMWZlMzRhNTg0N2NhMGRlIGxlZ2FjeS10cnVuaworMjcyODMgNjIwYjY5OTY4NWZmMDQyOGQyOTU2MGM5OTc5YWMzMmQzZTNkZmExZCByZWxlYXNlMjItbWFpbnQKKzI3Mjg0IGZmMGNkNjg3OGJkZGU1ZmJmMjM2NTc1NzExYTA4NWQzNGI1NzA3NmYgcmVsZWFzZTIxLW1haW50CisyNzI4NSBjZTE2M2YzNDBjZGZmNWMzNjIyZjk2MjI4ZWI4MWJlMzE0MmE2ZTkwIGxlZ2FjeS10cnVuaworMjcyODYgMGJjZWYzY2EyMWMwNmEzNzIzODdkMTkxOGU5NzU4ZWQ3YTM5YzcxNyBsZWdhY3ktdHJ1bmsKKzI3Mjg3IDVmNjlkNmYxN2FhMzEwOTJkNzA3N2FmMmY4Y2RiODc1OGMyYTMwYzcgcmVsZWFzZTIyLW1haW50CisyNzI4OCA4MTVkMDI4MDBkOTgwYmYwMjEyMDg0NDk1NWZmZDA4MjgxNDVjOGY2IHJlbGVhc2UyMS1tYWludAorMjcyODkgYmFlOTk2YmI3ZDgyY2UyZGVlOTI0MTc3MWY0YTJhZTVjYzI1OTc2NiBsZWdhY3ktdHJ1bmsKKzI3MjkwIDM3NTYwZjQzNGY2YTJiZWFlMGRhNmQyYTc1Y2IxNDFjMTg3Y2RmNmYgcmVsZWFzZTIyLW1haW50CisyNzI5MSAxMmY0OWZhOGY0N2YyYWJhMjQ2NmJmMjA0YzFjNDE5ZTE4ZWIwN2YzIHJlbGVhc2UyMS1tYWludAorMjcyOTIgOTIxMWJjNzI0OWEwN2ViMzQ0MmQ0Y2NkMDUyMjYzYWU1OTU3MDUxNiBsZWdhY3ktdHJ1bmsKKzI3MjkzIGZiYTdkMTAzNWZlZDVlZmMxYWE0MDMzMWExMGM0N2I1YzNmY2U0ODggcmVsZWFzZTIyLW1haW50CisyNzI5NCA1NTg2ZjIwODU4MTU4NmI1ZjkxYjhkOTMwN2MzNDQzZWVlYmI3MzQyIHJlbGVhc2UyMS1tYWludAorMjcyOTUgOTcwYWE5NzEyODEzMWFlNDk3N2U3OTkyNzA2MWQwNGQ4ZTI5MmFiYSBsZWdhY3ktdHJ1bmsKKzI3Mjk2IDdkZmU0OGM3YWE2NWUwYzZjZWNkMTVlOTgxYWZjMGFhODRiMDg2YTcgbGVnYWN5LXRydW5rCisyNzI5NyAyNmJhMTdiNzU4YjllZGQ5OWJiZGNjZTk0NTg2NTU1OTZmNWRhNDdmIGxlZ2FjeS10cnVuaworMjcyOTggOGViMmYzMWVlYTllYjNlYWUyYWEyYzY0Mzg2ZjI4OWMwNDFhMDViMyBsZWdhY3ktdHJ1bmsKKzI3Mjk5IGU1NThhNDBiNmI1MjMxMTYxMGQ4YjA5MWU0ZjM4YzA4YjJhYTMxYmEgbGVnYWN5LXRydW5rCisyNzMwMCBlYWI4ZWNhOWVjNTFkMmI5MmY3MjlkYTIzYTUwM2ZkMjk4ZGNhNGU4IGxlZ2FjeS10cnVuaworMjczMDEgNWEyMzAyZjc5NzI0OWU5YTE2NmMwNjkxMDg5YjlhZDQ1Yjk1YTk1NSBsZWdhY3ktdHJ1bmsKKzI3MzAyIDMwNDJkYWQxNDlhZTczZTczY2QyYzU0OTI1N2IxODlmMGVmZjQwYWIgcmVsZWFzZTIyLW1haW50CisyNzMwMyBiNWJkZTc3ZGEyMGUwN2NmOTE3ZGE4ZmZjYjI4MmI4MjE5MDg2MjE2IGxlZ2FjeS10cnVuaworMjczMDQgZDNiNWZhZmVjYjI5ZGY4ZmFlMWY2YzY2OTJiMWI3OWZiZGYxYzBkYyBsZWdhY3ktdHJ1bmsKKzI3MzA1IDM1MDBkYTY2NmMwYzNkNjk2ZTE3NzllOGQzMWFlYmI0MWVmYWNiY2EgbGVnYWN5LXRydW5rCisyNzMwNiBkNjJlNjg0NTQyYjliYmY1MzY2Y2ViZWQzZGFjMzExZWE3ZWM5YjBhIGxlZ2FjeS10cnVuaworMjczMDcgODRmMDkyYjEwNmVmYjkwZmRhNjAyOTExMTZkNjYxODAzMjVhN2QwMSBsZWdhY3ktdHJ1bmsKKzI3MzA4IDgzMzU0YzJjYTM5MDNkMTZiNDE1OWQ4ZDNlYjIwODUzZmJjOWM1YjEgbGVnYWN5LXRydW5rCisyNzMwOSBhNjBhM2Q5YzZmZDlhNmU4NjNhODM4ZTMyMDgxYmNlMDU3M2MyMmQ2IGxlZ2FjeS10cnVuaworMjczMTAgNmUyYTNjNTcwMGFjOWM3YTExZGJhNjc1YjQwNTZkZjM4NjY0OTRlZiBsZWdhY3ktdHJ1bmsKKzI3MzExIGRlNjI1NTE3YWRlODAyZDRkMzNmODRmOGNiZDdkNTgxMThiZDU1YmUgcmVsZWFzZTIyLW1haW50CisyNzMxMiBhZWE4ZmIzZTNmM2Q3ZGI4MzVkZTdhMzEzODg4ODhlOWVjMzdhMjdjIHJlbGVhc2UyMS1tYWludAorMjczMTMgODVlMTIwNGI2NjE3MWJjZjdhOTgyYTBjMGQ3MGRlMTFiYjRkYjEzMyBsZWdhY3ktdHJ1bmsKKzI3MzE0IDY1MmYxYjMxOGU1YTA4MWU3ZDVjZDE0NjI4MzllZGUzMzY0YzczMGIgcmVsZWFzZTIyLW1haW50CisyNzMxNSAzNzExOGI2ZTVmNDYxMjRjYTQ0NjBiNzJiMDI1MTdiNjBiZTU5NzM5IGxlZ2FjeS10cnVuaworMjczMTYgODNhYTk5ZGVkYTc0ZGUxNThiNWQ5OTI0MDU3MjkwODkxMjBlNjZiNyBsZWdhY3ktdHJ1bmsKKzI3MzE3IGVkNjJjMDRiMTlmNTIwZTM1OWI2ODE1YzBlM2JmZGIyMmY5N2RlOGEgcmVsZWFzZTIyLW1haW50CisyNzMxOCBmN2NlNjk2OTc5ZTE4YjAxMWE3ZTQwNzc5NWYxZDk4YWEyMzI0YzQzIGxlZ2FjeS10cnVuaworMjczMTkgZDRiZDY2MDE3MDFkMzVkYzk3OWZkN2E5OTU2ODVlOWY3Zjc0ODFjYiBsZWdhY3ktdHJ1bmsKKzI3MzIxIDM4MzRjYjBlN2JlNjVjNWNjYzg1MDMwOWQxNmViYTU2NDlkNjE3YmMgbGVnYWN5LXRydW5rCisyNzMyMiBjYjA4Y2E1N2UyYTk2NjI4ODcxODA3ZGRlYTI0ZjQ0YmEzYjUxMzkyIGxlZ2FjeS10cnVuaworMjczMjMgMTFhNmQ5YjVmOTkwNjU5NmExMWE4ZTNhMmFlOTI4MjgxOGVhZWMxNiBsZWdhY3ktdHJ1bmsKKzI3MzI0IGFhMjM4NzcwZDgwOGY1M2VlZTY2MWVmNThmZDMzNTNmOWZhN2I2M2IgbGVnYWN5LXRydW5rCisyNzMyNSAxYTJiNTM0NGQxY2NmM2U2MTQ4ZDA2MWU5OTY0ZWQwOGI3Mzg3MGJhIHJlbGVhc2UyMi1tYWludAorMjczMjYgMDNiYmE3MjgyODUyY2JkMmFjNGExYzhkODQ2M2RiYjQwNzNmYmNmYiBsZWdhY3ktdHJ1bmsKKzI3MzI3IDMxMzgxNjcyMDFhYWNkNzhjYzNlZTJmNTY5OTA1N2RiYjQxNTYyMGUgbGVnYWN5LXRydW5rCisyNzMyOCA0ZWVkNTFhZDQ5M2Q0ZWYzYTVmM2M5MWU0MzhmMGQyM2MxMDk5Mjg0IHJlbGVhc2UyMi1tYWludAorMjczMjkgMDk2YjQ3NWUxYmVmMDI1ODM3MzkwY2M1OWY4ZjhmNDRjMjJlODc1MyBsZWdhY3ktdHJ1bmsKKzI3MzMwIDdkOGM2Yjg4OWI1NGUzMDFkZGZhOGM2MDc0MmY0NDYzNDU0ODVkMjYgbGVnYWN5LXRydW5rCisyNzMzMSAxMTFjMWU1OWFkNzJlYTAyNjUxNTNiMDIyNDIxYmVhZGNkMjcyMDBhIGxlZ2FjeS10cnVuaworMjczMzIgZjU0MDVjNmVjNGFjZDM2OWQzZTI5MzY2ZmUxYTA5MzU5ODc3ZmU1NCBsZWdhY3ktdHJ1bmsKKzI3MzMzIGY3ZTE5MWM4ZGIyM2YzMjY2ZmEwNTkxYzExMzAwZWUzN2ExNGM1ODcgbGVnYWN5LXRydW5rCisyNzMzNCAxZmUwMDVjNDI4MzY4N2JjNWE1ZDYxZTE2M2MyNDU4NmVhOGM5YjI0IHJlbGVhc2UyMi1tYWludAorMjczMzUgMjViMGFmMjdkZGM4NTcyZDEwMDFjZTZkMDA1NWZjMDI1YzFlYWJkMSByZWxlYXNlMjEtbWFpbnQKKzI3MzM2IDFhODA5NmJiNGM0ODI4MGM0OGMyNDJmOGEwMzZiZDk1NTgxNTcwM2QgbGVnYWN5LXRydW5rCisyNzMzNyBlMmZhNzQxYzU0N2Y1MTUxMGRhZjZkNTdhYTQ4N2RjMDVjYTk1MmNjIHJlbGVhc2UyMi1tYWludAorMjczMzggZWRkN2MwMTQ2YWM4MjRmNWI0ZTRjOWNjNTVmMmFkYjkzZDNhZmJlOSBsZWdhY3ktdHJ1bmsKKzI3MzM5IGE3Mjk5N2Y3ZGI0YzcwMThmNWI5NTQ0ZDcwNzYxYzVmMzg4YWEwODkgbGVnYWN5LXRydW5rCisyNzM0MCA3ZWJkMmNkM2FlZjAxYjczOTZiODEzNjM4ZmZjOTA4OTdlNmZmMDY5IGxlZ2FjeS10cnVuaworMjczNDEgODE0OWQ5NzhiMDA2Zjc3MGE5MWE3OTk4Njk2YjYwNDFlZmZkMjQyZiBsZWdhY3ktdHJ1bmsKKzI3MzQyIGZlOWM3MTMyYTg2N2U4ZTdhMmE4NTQ0NjJkZDg5OWJiZTAzYTU4OWMgbGVnYWN5LXRydW5rCisyNzM0MyBjNjlkYzQzYjcwMGE5N2Y5NWY4NWZjNTA1YTEyYjQyNmNiZTgzOTQzIGxlZ2FjeS10cnVuaworMjczNDQgNDgxZTRhNGI4ZGUwNjljMTU3ZDBkNzM5Y2M2YWRlNGMwYWZmZTRhNSByZWxlYXNlMjItbWFpbnQKKzI3MzQ1IDM2MDBkOGQwNzM1ODMyOWQ3N2VlNDZlOWNmZmYxNDJkZmNkMWVjZjIgbGVnYWN5LXRydW5rCisyNzM0NiBhN2IxNjllZjgzZWFjYzFjZjgzMjIyYTgwYjkzMGNkNjE5MmUyZmZmIGxlZ2FjeS10cnVuaworMjczNDcgMjZhMGQwZGExMzEyYzNjMGNmYzY2ODBmMjJkYWVlOGZiOTRjMWFmMiByZWxlYXNlMjItbWFpbnQKKzI3MzQ4IDA4MjViZDdiNWI1NThlMDFlOWE0NDRhMGUzYjQ4ZDhjZDQwMTQ4MmIgbGVnYWN5LXRydW5rCisyNzM0OSAzNWM5ODk0ZjA2Yjk2MGNlMTA1YzM2MjlhYzdkMmU3Zjk0YTFhOWFhIGxlZ2FjeS10cnVuaworMjczNTAgMzI0NjNlOGU1ZTFhZTZjZDk4MzRjMTE2N2M1Nzc5MzdmNTc4NWZlMSByZWxlYXNlMjItbWFpbnQKKzI3MzUxIGExODFjY2NhMTMxMjgzMmRjMmIzYTAzMmVlY2ZmMmVjOWE1YjM0MWMgcmVsZWFzZTIyLW1haW50CisyNzM1MiBkN2E2MjA0MmU3ZWZhNTk1MGQwZjViMjU3NmVmOTA0YWZhOGJkYjA5IGxlZ2FjeS10cnVuaworMjczNTMgMjEyZWU2MzY1YmZmOTgzZDkxZDg1MTk4NDJlMzRjYzYyMDg2M2Q2NiByZWxlYXNlMjItbWFpbnQKKzI3MzU0IDdkOGExNTA0OTZhOGYwNmQwNmEzNzAyNTg4ZWQyOTYyZjhlYzMyODYgcmVsZWFzZTIyLW1haW50CisyNzM1NSBkN2Y4NTEyZGE0MjM2YzlmYzFkNTk3MzBmYTZjOTE3NjExZDYwZjI1IGxlZ2FjeS10cnVuaworMjczNTYgYTU2MjkyNzMyNTY2ZGQ0NzgyNGEwZWEyYTdiMmZiZGE5YjFjNWUwOCBsZWdhY3ktdHJ1bmsKKzI3MzU3IDg4NjMwNzZlMmRmOTMwNzc3ODYyNWM0ZDk5ZDkyNTZlYzJlZDE1OGIgbGVnYWN5LXRydW5rCisyNzM1OCAzM2VhNTIyZGQzZDIyZWE5OTEzY2UyN2ZjZGZmMDQ3MDViNTU3MDE5IGxlZ2FjeS10cnVuaworMjczNTkgYjc3MTg1N2VkNzg4OGRlMzNiOTY4YWJlYWEzODczOGJkOWFlNmVhZCByZWxlYXNlMjItbWFpbnQKKzI3MzYwIDRhYjlkZjI0MTZmOTM2ZGMyYWYzN2ZiMDQ3MWUzNDMwMTNjMjM5OTggbGVnYWN5LXRydW5rCisyNzM2MSA5NWRhOTkxODdjNTc1NDIwOTM3ZDdlNWYyMTE0YTUwNjlhZDQ2ZDM0IGxlZ2FjeS10cnVuaworMjczNjIgYWQ2ZmExYzA0ZTQ3NDc3MDhkZGFiMjIzZTVmMmFjZTdlYmUwMTg3OSBsZWdhY3ktdHJ1bmsKKzI3MzYzIDQ4YWQ0NzBjMWY4ZTE2YTQyYWQxOTM5NWEyODZiZmRkMWRjZTJkZWIgbGVnYWN5LXRydW5rCisyNzM2NCA0MTQ2OGY5MzUzY2U5YTg5MzMzM2MxNzIwMzI4NjE1NWYwNDY0YjRiIGxlZ2FjeS10cnVuaworMjczNjUgNzAzZTYzYWUwZjAxZmM0ZGYwMGNlYmMyNDhkODI2NDJiYjQzOTMwMSBsZWdhY3ktdHJ1bmsKKzI3MzY2IDFmNjUxMDA1MWM4YWU4NjJkOTJhNGU0YTI3ZmUyODIzZDdiZDUzMzEgbGVnYWN5LXRydW5rCisyNzM2NyBkYWI4NzAxYmQzZmEyNGI0MTVlOGMzY2ZjZjFhNTAzYThlY2VjYWY3IGxlZ2FjeS10cnVuaworMjczNjggNGU2M2U5NzcxZjMwYzUwOTg0OTYxNmQ4ZWU3OWRmYjJmN2E1MTY1NiBsZWdhY3ktdHJ1bmsKKzI3MzY5IGI4ODc1ZjE2YTRiZTU0NWYyYjc5MDQ0ZmY0ODE3MjA3YjUwZWUxMjkgcmVsZWFzZTIyLW1haW50CisyNzM3MCA0NWI5ZTEyMmMzM2E3YTFlZGYxODIyYTM3ZGIzZWQ2ZWRmZTI4ZjQ3IGxlZ2FjeS10cnVuaworMjczNzEgYjcxZTBmOTZkZTIzMzU3YWYzMjA4MzNmMmFiYWUwN2ExMGZiODBlMCBsZWdhY3ktdHJ1bmsKKzI3MzcyIGVhMTg3NzhkZjZjMzcwMDhjMjE5YWQ2OTJiYjNlNTJjODZhN2NhY2MgbGVnYWN5LXRydW5rCisyNzM3MyAxNGUyZWI5ZTVlZjJiZWE2MGFiZDhiMTQ5YTVmYzMxYzk0ZDRjNDZmIGxlZ2FjeS10cnVuaworMjczNzQgMTlhNjA5NTE3YWI4YTZiZjUyYjNjOWU0M2Y5MzU4YzgwNzRiMmZhYSBsZWdhY3ktdHJ1bmsKKzI3Mzc1IDE0ZDhlZTFlOGRlNWNjZDE0YzUxMDgwMjQ3NGYwZmE2NGJiNmMxOGEgbGVnYWN5LXRydW5rCisyNzM3NiAwMGU1NzhmNzhjYWFhMmE4NzYzZWQwYzUyN2U1ODNmMzJkZjQ4MDg1IGxlZ2FjeS10cnVuaworMjczNzcgNDRmN2ZjMzA3NjczNjgzODQwNDhlMjA3NTU5ZDk4ZTRlYzUzZTdkMCBsZWdhY3ktdHJ1bmsKKzI3Mzc4IGM4ODI5MDQ2MDc5MTljYTMxZGE3NGRhYjFjNzM5NTkwOWRlNzNhNzQgbGVnYWN5LXRydW5rCisyNzM3OSBkYzg3MmEyZjUxM2I0NDIxYWMwZTk0Y2YxMzlkZTQ5MzE4Y2Y5MTAzIGxlZ2FjeS10cnVuaworMjczODAgOWQ4OWE5YTA1NGUwNDA5ZWYxMzdlNWVmMjU4NmE1NmI0N2U2OTViYiBsZWdhY3ktdHJ1bmsKKzI3MzgxIGU4YTI2M2RiMWJlMDMzYWI1OWNiZjRmZjMzODk5MWMxNjk4ZDNiNzYgbGVnYWN5LXRydW5rCisyNzM4MiA3MWYxM2NmNGY5ZTJkOTMyYjVkOTg5MDRmNDY3YjZiODE0MDY1M2Y0IGxlZ2FjeS10cnVuaworMjczODMgMmU1YTFlOGMwYjQ4MWQ2NGEzOGZmZGU1ZGVmNWI3YzA1OTBlYzRhOSBsZWdhY3ktdHJ1bmsKKzI3Mzg0IGVkZjk1MGJmNDIzMjU4YzZmYTYyNjQzOWNlNGY0ODcxMzRmNGRiM2MgbGVnYWN5LXRydW5rCisyNzM4NSA1ODQzM2I2NmY1ODM4OTgwNmQ3MTc3ODU5ZjkwYjVlYTk4M2RiNTQ2IGxlZ2FjeS10cnVuaworMjczODYgN2Y4M2IyMTI0YjRlZDM5MzZlY2U5OTViM2I4NmY3Zjc2ZWRlYTUxZSBsZWdhY3ktdHJ1bmsKKzI3Mzg3IGQ4ZGU5YjVmNTYxZWVlOGVmMjQ0NjU2MTQ2NWE0YTQ3MjNkYTRhMmUgcmVsZWFzZTIyLW1haW50CisyNzM4OCAzODQ4YWEzZWRhZmM2Yzc3MzQ3OTliNzcwODY4YjViYzJjNzBjMjAyIGxlZ2FjeS10cnVuaworMjczODggNzRkNWNkNjk4YmJmNzFjZDliNGI5NjQxOWQ5MGMwOTA4ODM1YzRhZCByZWxlYXNlMjItbWFpbnQKKzI3Mzg5IGZjZjJlMDFjNjE2YTYwNGVhZjBmNTM1YTVlODhmZTI3NDMwYjhjZmQgbGVnYWN5LXRydW5rCisyNzM5MCA5MTM1NzBhYjA3Mzc0MzM3NzkzNjJlODE2MjM4ZDNhNzRiYTc0ZTUzIGxlZ2FjeS10cnVuaworMjczOTEgOWE5ZDZjZTVlZDRlMjI1ZmM1Y2YzZjc2ZmEwZjM5NzFkM2I1ZWE2YyBsZWdhY3ktdHJ1bmsKKzI3MzkyIGJiZmVmOTQ4YzQzZTgwMDQxYzUxZmZmODhjM2FiNzJkZGMxOGUyYjUgcmVsZWFzZTIyLW1haW50CisyNzM5MyA3NDM2ODk4N2Y3ZjBhMDNkZTE5NDVlOGY3Y2RiZmIxYjA1YmM3ZTQ2IGxlZ2FjeS10cnVuaworMjczOTQgYmJjZWU3NDc4ZmNiODQwNDg5NzVkZDQ0YTFhNzk4ZjFhNzQ0ZTNiMiBsZWdhY3ktdHJ1bmsKKzI3Mzk1IDM0YjhjZGJiZDhmZTMzOTRlNTRlYjU4N2M4ZmFhZWJjYjhlZTY0YzAgbGVnYWN5LXRydW5rCisyNzM5NiA5YjZkMjU5YzI1ZWI3ZWE2MDFlZTRmY2I5MWE2ZGQ1Y2NiMWQwYjUyIGxlZ2FjeS10cnVuaworMjczOTcgNWI1MDhjZTA0OWY1ZDA4NWIzNjE5ZGU2NWNiYTc4M2ExYmQwMTVlMiBsZWdhY3ktdHJ1bmsKKzI3Mzk4IGM0ZDY4ZjgyYTZkZGI4MTY4Yjg5MGUzM2M3MzBiODA1ZDUwN2M2ZWIgbGVnYWN5LXRydW5rCisyNzM5OSBkMTBmMWM2ZDllZTk0MzA2ODI5NWUwMWE1ZjUwMGEyMDU5MWExODY1IGxlZ2FjeS10cnVuaworMjc0MDAgYzEwYzA5MTkyYzEyYmNhMWUxYzkwODUzMWViZjY0ODk0NDRhNjk0ZSBsZWdhY3ktdHJ1bmsKKzI3NDAxIDA3ZTc0OTkzNTczYzViNWVkNWNhNjVjYWUyYWRjZDE2ZTkzZWRmZjYgbGVnYWN5LXRydW5rCisyNzQwMiAyNzVkMDRhMzU1NDIyNjRiZDIyYjNjZDg1YWNkNjhkMjBjZmIwMDg4IGxlZ2FjeS10cnVuaworMjc0MDMgNzdhOTZhYzRkZGU0YzA4MDVhYTYxNmZhOWJkNzEzMzEwMjc2ODcwZSBsZWdhY3ktdHJ1bmsKKzI3NDA0IGVhZTQ5NmVmYTQ2MDEzMjc0NmM1MTNlMWQ4YWMyNjUxOTZmMWJkYmIgbGVnYWN5LXRydW5rCisyNzQwNSAyYzIyNDVhYWNlZjg4ZmM4NWU5NWQwYTQ5OGUxOTE4MjZmNjQxMDZjIGxlZ2FjeS10cnVuaworMjc0MDYgOTM3NzE1ODY1MmRkMGQ0Yjg2YTFlYzJiMmZjMGI1MWFkNTBmOGY0ZiBsZWdhY3ktdHJ1bmsKKzI3NDA3IGEzZDYxMjhhZmIyZTU1MzFjOTJkMDE1MDc2M2Y2ZGQ3YzMyOTg3NTkgbGVnYWN5LXRydW5rCisyNzQwOCBhNzhkNDFlZTk0NzRmNzYxNzRhMWNjMmMxNDVlMjUwMjk2ZGIzMzJlIGxlZ2FjeS10cnVuaworMjc0MDkgYWYwNTMyZjIzYWIzZmZmZjllNzAwNDE3NmFkNTM5ZWIwYjdhZTQ1YyBsZWdhY3ktdHJ1bmsKKzI3NDEwIDYzZmJiZWQxMDcxNGFhNTQ2ODBkYjhmNjU2NWJmMDVkNDM0ZjdlMzYgbGVnYWN5LXRydW5rCisyNzQxMSBmZWYzOTdiMWI4NWMzZDg5ZjdhZDRjY2UyZDYxNjBiNWFjZTlhZTliIGxlZ2FjeS10cnVuaworMjc0MTIgOTBjY2E4NTdkMjAzMjJhMWIyN2U3ZmE5ZTY4YTJiNGQ2MTJiOTE2NyBsZWdhY3ktdHJ1bmsKKzI3NDEzIDQwNDYyODJjYjMzOGNmN2U1MzZhYTEyNDZiZmNmMjUzNjhmMGQ5MzkgbGVnYWN5LXRydW5rCisyNzQxNCA4ZWE4NjU2NGZiMzI2NDM5ZmVlZjZjMGE3OWJhOTNlZjZkNDQ1NzQ3IGxlZ2FjeS10cnVuaworMjc0MTUgYmM2YWFlNzRkZGZlNWM0MGIzZTc1MzY2MWU5MzRmMTRlNjdlYmRhOCBsZWdhY3ktdHJ1bmsKKzI3NDE2IDJjNzliMWE4ZDYxNjUzOTE1MWY2ZmY5ZWE4MjMyZjk1YmJjOTcwMGMgbGVnYWN5LXRydW5rCisyNzQxNyBkOTNmMzQyMDE1MDM4YTc5OGY2Nzk1OGQzZGFiMDc3NWUyZWE4YzkyIGxlZ2FjeS10cnVuaworMjc0MTggNzE4NDBhMWJkODJmYzdjNDY0N2I0M2IxMWI0MjY4MTlhM2UyZGMzZSBsZWdhY3ktdHJ1bmsKKzI3NDE5IGE5MjIxMTJkNzgwYzU4OTdmZjQ0NTcwYzgzNGEwNGY5OGM4NzYyYTcgbGVnYWN5LXRydW5rCisyNzQyMCBjYjE2OTk1YWE3ZTgwOWVlMjRlNzNmYWRmNmRkZTQ0NzMzY2JkMjYxIGxlZ2FjeS10cnVuaworMjc0MjEgOTkxM2NmN2M0MDg2MWZmNDk0NGM5OGNmZWZjYTJjMjQ4YzhkOGY4ZiBsZWdhY3ktdHJ1bmsKKzI3NDIyIDY3ZjJiNDBiYWI3MDcwYTJkYTA1NWMwMWViM2NmZTVlNmViYWNlY2MgbGVnYWN5LXRydW5rCisyNzQyMyBlOWE2YTBjNGIzM2YzYzhkZmRkZTE3ZmYxNGU5YTJhMGRmMDgwYTZmIGxlZ2FjeS10cnVuaworMjc0MjQgZGNjMmI3NWQ3YTc4YzBmNGQwNDFiOWQzMjM2ZDYwYmNlYWE2ODM1MSBsZWdhY3ktdHJ1bmsKKzI3NDI1IDE4NzE3MzM1MjQzNTQ5NjVjZmU5YjJkZTdjZDY5ZjM2MWQ1MDU4YjYgcmVsZWFzZTIyLW1haW50CisyNzQyNiAzN2ZmY2UyZDljM2NlMDUzNmYwZjU5Yjk0YmE2OTEyYmZhNmYzYWZiIGxlZ2FjeS10cnVuaworMjc0MjcgZDI0YzhjOTQ2NzQxYmZiNzk3MzMxYzkxNjc3YWEwZmUxMjFhMzkzNyBsZWdhY3ktdHJ1bmsKKzI3NDI4IGRkOWQyZWM5NmVhZDBjZTcyNGEzNThmZjY2NmJlODg2MWZlMDc1MTMgcmVsZWFzZTIyLW1haW50CisyNzQyOSBiOWUwYzU3NTMyMzgwODRiNjVjYjgxZWVjMjYxMzVjZWZhZDhlZTAwIGxlZ2FjeS10cnVuaworMjc0MzAgM2U4NjNhNjViMWE0NDJjZGM0NmIzNjE0NmIwMTRlOTliMzNiODZlNCByZWxlYXNlMjItbWFpbnQKKzI3NDMxIGU4Nzg5NzUxYTVjY2MzNjY1MTQ4YmYxYjk5M2UwNzI5MTE3MTMzZmMgbGVnYWN5LXRydW5rCisyNzQzMiA5MjgzNGEyNDhjMTVjYmY3ZWYzZmMxNGQ4NDE4YjhhODAzMmFlNDhlIGxlZ2FjeS10cnVuaworMjc0MzMgNjBlNDFhNTRlN2IxMDliMjBiZjAxMzAzOTVlMDlhYTkzMTMyNzI3YyBsZWdhY3ktdHJ1bmsKKzI3NDM0IDJjNmY5MzFkOGRkMjUxNDFiYmE2MGU3YjQzNjc5ZmNjMzhiN2M5ZmEgbGVnYWN5LXRydW5rCisyNzQzNSBjNzk0MzJmZWI4NjIxNTRhYTg2ZmY3ODI4MGY0NzRiZWQ2MWYxOWNjIGxlZ2FjeS10cnVuaworMjc0MzYgNWFmOTA4MWE2Y2Q0MDllNGFlYjEwOGEzMTFmMmJhYmM2ZDMwMDM4NSBsZWdhY3ktdHJ1bmsKKzI3NDM3IDBkOTcxNmMzYjhlY2YzNWM5OTI0ZmZlMzA0ODRhMzY2ZjJjNmUwYWYgbGVnYWN5LXRydW5rCisyNzQzOCBiMTI4MjU1YzJiZWE3MDc3ZGIzMjg5ZWRhMjhlNDQ0OTNhODQ1MDY4IGxlZ2FjeS10cnVuaworMjc0MzkgODE0MmY4ZDY2OGEwZjRhYjdhYWZlZTkwYmVjOWJiYjMxNzI3Y2UwNyBsZWdhY3ktdHJ1bmsKKzI3NDQwIDg2YjM3NjBkMjg1ZDYwZjZkYzkyMjZkYTdjOGRiZTI3ZjVlZjAzYzYgbGVnYWN5LXRydW5rCisyNzQ0MSAxMzE0NjQyY2EwOTc2YmJmMGViYzU2M2JiY2E4NDZjZjUyYTg5YTg1IHJlbGVhc2UyMi1tYWludAorMjc0NDIgYTE4MDVhNTQ2NjZmYmJmZDkxYTBjNmYzMjhiNThlMjEzMmRmMDc3MiBsZWdhY3ktdHJ1bmsKKzI3NDQzIDMyZGIwNzVkZWYzZjU2NGI1YjZiMWQwMTI3YWQ0YzVkNTAyMWY4M2EgbGVnYWN5LXRydW5rCisyNzQ0NCA5NWNjZDViYmRjODZkNGYyNWNkOGY5ZTlkNDk2YjM4NzRmMDU0OTY3IGxlZ2FjeS10cnVuaworMjc0NDUgYTUxNjJmZDY1YzNkNWJiMGQ5ODYyYjgzMzk1OWY0YWE5YjY2MjQxMyBsZWdhY3ktdHJ1bmsKKzI3NDQ2IDcwMmE1OTAwZGY3ZDY1ZjlkNDA2OGIyNTEwMDg5ODc1YzY4YzY5NjMgbGVnYWN5LXRydW5rCisyNzQ0NyAxODNlYmEyZDIyMTQwYzFlMWViYTVjNjNjMWUyZGZkYjZlNTk3YTQ0IGxlZ2FjeS10cnVuaworMjc0NDggMTU0NDdhNTU3M2JkMTE0ODkyNzNlNTE0MWUzMDBkZTIzMDAyMTQxYyBsZWdhY3ktdHJ1bmsKKzI3NDQ5IDgwMDkxMmY3ZGYyZTM5MmEwNDhkMTZmYmJkOWRjYTMyMjU0Yzg3YmYgbGVnYWN5LXRydW5rCisyNzQ1MCBlNjZjZWQ0ODFjNzdhNGJjYjI1NTQ5ZDllMzA5YWFlODVlYzJiMDBiIGxlZ2FjeS10cnVuaworMjc0NTEgZDcxMjZjMzQxMjhhOWQ5YmQxMzM2NmYwOTE2MGZiODRmMTllZjU3ZSByZWxlYXNlMjItbWFpbnQKKzI3NDUyIDZmZWQxMzQyMmJiMWFhZmQxMjM5NjE5Y2ZjMzVlMWY3M2IxZWYxYjUgbGVnYWN5LXRydW5rCisyNzQ1MyAyMmQyZjAzN2FmOWQzYzRjZWI0M2M2ZWM1MzRmZDUwYmIyZmM1MmZkIGxlZ2FjeS10cnVuaworMjc0NTQgODZkZmI5NmExODMxZmQyN2VhYTNhMGMzMzQ1ZDJmMGNmMTUyOWNjMCBsZWdhY3ktdHJ1bmsKKzI3NDU1IDM1NWU0NmNjMTI0ZmYxMTE2ZTQ1Y2YwMzNlMmYxNGJjZWE4MDk0OTMgcmVsZWFzZTIxLW1haW50CisyNzQ1NiBiNzRkNGE1OTc5M2FhZDQ0N2I1MTVjMjFjOWQ3MDk2ZWI3MGRiMjUzIGxlZ2FjeS10cnVuaworMjc0NTcgYjE4NWM4NTk1MmZlODM4ZDcwOWEzNjA1Y2I3ZDZiZjJhZjNiOGMwYiBsZWdhY3ktdHJ1bmsKKzI3NDU4IGJjMDBlZWVmMGFjN2JhY2MwNDMwMTUzNmEwMmVjYmM3NjcxODYwZWUgbGVnYWN5LXRydW5rCisyNzQ1OSA0Mjk4ZTI2OWJkNjcyMDEwNDM4Y2EzY2Y4OTU1YzIyN2E5ZDY4MWJhIGxlZ2FjeS10cnVuaworMjc0NjAgNDAyNjU2NWZhN2ViZGZmMTkwYjJjNTI5MTgxZTU1ZTg4OTgwM2YwNCByZWxlYXNlMjItbWFpbnQKKzI3NDYxIGEyYjY3N2FmN2IyODlkNjVhMGMxMTUwOTEyODg0Yjc2NDczNmRjZWYgcmVsZWFzZTIxLW1haW50CisyNzQ2MiA2ODk5NWU4NTRhODhlM2Q1ZDdmN2JkYTc3NzY0M2UxNzA2MGRmOGIzIGxlZ2FjeS10cnVuaworMjc0NjMgZGJiMTRmODVhZTdiNjBkZDMyOGZmMWE2ZTNhNGRhODliMzc3N2M5MiBsZWdhY3ktdHJ1bmsKKzI3NDY0IDJhMjA1NzQ0MDBhZmI2MDg4MGE0NWE5OGM4NjJhOGM0NmEzZjUwN2MgbGVnYWN5LXRydW5rCisyNzQ2NSBmN2FiYmQxNWI0ZjQ4MTliMTdkMGM4NGIyMjAwNzc5YWM5MDU3YjAwIGxlZ2FjeS10cnVuaworMjc0NjYgY2ZjZmI1ZGY2ZTYxY2M0YjUwZmUzYzUyYjA3NTg0OWQ4NjY0YmI4ZSBsZWdhY3ktdHJ1bmsKKzI3NDY3IDUxNDgxYjM5Y2Q4NjVjMWU3ZWU0YjMyMWVhODAyOGZiNjk1NDNhZWEgbGVnYWN5LXRydW5rCisyNzQ2OCAwYTE4ZWY1Y2IzZTdlZDc3MTk4YzczMGYyZTlmNDBjMjYzNjJjZjA4IHJlbGVhc2UyMi1tYWludAorMjc0NjkgZjhkNDFlMjY0OWI3ZTVkZTc3YjY2OTEyNzE3ZWI2ODg4MmRlZGQ3NSBsZWdhY3ktdHJ1bmsKKzI3NDcwIDI4ZjJiYWUxMDMxYmYzZjA4NTU2YTM5ZTI4ZjcxMDkyMWU5ZjhmYmMgcmVsZWFzZTIyLW1haW50CisyNzQ3MSA0NmE4NGQyZmY0ZTJhYzdhMDI4ZGM0YzMxZGYxYTQzODIyYWZmYzEwIGxlZ2FjeS10cnVuaworMjc0NzIgNjY3NjYyM2IzYjc0MjE5MTZlNzk1NDlmZTc0YmQ0MzNhMGE4NzBjMSBsZWdhY3ktdHJ1bmsKKzI3NDczIDhjZWVlNjYzMDMyMmM1NzU0NTQzNmMzNzZiMDYxMGY0YTg1ZmMzNmUgbGVnYWN5LXRydW5rCisyNzQ3NCBmN2MwZDY4NzFiMDdmMDMxMWZkNjk2OTY0MGE5MzIwMGE4MTVkZTE3IGxlZ2FjeS10cnVuaworMjc0NzUgNzMzNmY1MWZhYTQ2Y2I3ZTFiNTIyMDM0M2E5NTVlNDI4MDk3ZGY1MiBsZWdhY3ktdHJ1bmsKKzI3NDc2IDZjZDkzMmZmMGYwOWQ4Y2ZlNzNkNmRkMGYxNWI3MzhmOTk4MTI4ODQgbGVnYWN5LXRydW5rCisyNzQ3NyA4MDE2MmRiZDQ3ZjAxMzJmYTU5YzhmZGYyMGM2Y2FiM2RlYjZlODQ5IGxlZ2FjeS10cnVuaworMjc0NzggODA1YzIyOGNmNzdiNmZmZjkyMGI5ODdhNGU2NDUzMjI4NzZiNDdjNCBsZWdhY3ktdHJ1bmsKKzI3NDc5IDM0ZDcxMzcwOThhNzUxOTQ3ODU4MWU0YzFiMDU4ZDJjZTEyOTYxZjMgbGVnYWN5LXRydW5rCisyNzQ4MCBjYmRiYjkyZWZkMzY5Zjg0OTdlYThhODIzNDEyZmQ5YjYxNWU4N2IwIGxlZ2FjeS10cnVuaworMjc0ODEgZjM1ZTI5YWEwZDkyNGM0MjQ1YmU0MWIxNWNhZDIyMzlkMzI4NzY3ZiBsZWdhY3ktdHJ1bmsKKzI3NDgyIGZmNjg3M2QyOGExNDY4M2U1YzBmYjg0NjdjOTY2OTBjZjg3YjE4MWUgbGVnYWN5LXRydW5rCisyNzQ4MyBmYTZiZTllZTZjOWM0ZWI3ZmRiMzk1ZWM0MjIxYzIyZDY4ZDZmZmExIGxlZ2FjeS10cnVuaworMjc0ODQgMTMyNDBiOGY4Y2EwMTQxYTJlYWZkODkwMjYyZjc3NTc3YjhlYmY5NyBsZWdhY3ktdHJ1bmsKKzI3NDg1IDFlMGFjYjQ1Y2E4ZjBmY2UxYzVmNjVhZDIxZWE1YmQyMGZkMGMzZWYgbGVnYWN5LXRydW5rCisyNzQ4NiBmMzZmYTEwZWJmYTBjMjYwNTdlY2UzZjdlNzEyOThhY2UwMmZiNTM2IGxlZ2FjeS10cnVuaworMjc0ODcgZjMzYmI5YzEzMWY4Y2NlNTY0NDg0OWRlMTVkMGQwMTZiYjdhY2UwZiBsZWdhY3ktdHJ1bmsKKzI3NDg4IGI1MWE1NzhmNTc2OWI1ZjE5OTk5OThhY2Y1MDFiNjFkMmM5NzVmMjEgbGVnYWN5LXRydW5rCisyNzQ4OSBiZjM0MjFhMjg3NDQ2Y2QyMTY4Mjk4MmYzYmYyN2IwYzYwNjVlZTY1IGxlZ2FjeS10cnVuaworMjc0OTAgZDMzMjQ4NGUzOTRhODBiNDZmMGZmMGY2NGI1MGI3YzY0YTA2MTE1MSBsZWdhY3ktdHJ1bmsKKzI3NDkxIGFhNjIxN2JmOTc3NjQzYWM0NzhkZDEwOGNlMWE4MzBlNDQzMTUyZjYgbGVnYWN5LXRydW5rCisyNzQ5MiA1ZGE2MDVkMmI1NDc3YTQxMTk3NGZlZTI2ZDg0MGRkYmRhYWFiZmFjIGxlZ2FjeS10cnVuaworMjc0OTMgZjM4MTEyYjg4Mzg4ZTc4ZmIzOGI2OGQ5NGRiZDk0ZWQ5ZDhmM2FiZiBsZWdhY3ktdHJ1bmsKKzI3NDk0IDdkY2VmMmY4NzA2ODIyNmRjN2RiYTliMmNiZGFhMGMyODk0MTkxYTYgYXN0LWJyYW5jaAorMjc0OTUgZTMzMzkzY2U0YzUxM2FkN2MyZWMwNzQ1YWZiYTE0MjhmYWU0YzE5MSBhc3QtYnJhbmNoCisyNzQ5NiAzMGM3Y2M1ZjI1ODczZWY4NzNiYWZmMGEwOWM1NjI3OTRhYTUxMWEyIGFzdC1icmFuY2gKKzI3NDk3IDMzZjIxZWFiYzE1NTA2ZGQ1YmQ5MWI2MDE1N2FiNzY1MDVmNDY3MDcgYXN0LWJyYW5jaAorMjc0OTggYzk2ZTU4NDM4YTlmMTY1MzM4ZjcyZDRmMmRkNmRlYjY2MDBhZjBkNyBhc3QtYnJhbmNoCisyNzQ5OSBmNzRmM2MzMTkwOTkzZGEyNDk2ZjY0Y2EyMTRjZDg5YTNjMGVjNGIwIGFzdC1icmFuY2gKKzI3NTAwIGM0MjYzNjMwNmU5NmI2ZDA4N2QwNjk4Y2Y1ZTkyMzliOTJkOTNkN2MgYXN0LWJyYW5jaAorMjc1MDEgMmE2ZWM5OTIyMjhiYTdhMzVmMDRmMjE0ZmRmMjVmZTBlZmQzNjI4ZSBhc3QtYnJhbmNoCisyNzUwMiA4NDRmMTI5ZmExMjg1Mjg1NTc3Y2U0NTU5MDM5MTFkOGQwNDZiNWMwIGFzdC1icmFuY2gKKzI3NTAzIGZkZjgwZTA0ZTRiYmQxMmExYzE2YjMzZGIwNzczOTMyNTFhZjk4OWUgbGVnYWN5LXRydW5rCisyNzUwNCAzMTEzNzU0NjRmYWMzMzJhY2MzMjI0N2M4ZjAxODQ3NDQ2ODZiMDIxIGFzdC1icmFuY2gKKzI3NTA1IDllNjNiMGY0MDlkNGIzNjA2N2I3YzM2MTc1NmUzMWZkNmZhNDEyZWYgbGVnYWN5LXRydW5rCisyNzUwNiA3NmU5YTE0ZmI3YzVhMGFmM2I5Njc5ZmU4OGY0ZWIyMzc3MGRkY2Q1IGxlZ2FjeS10cnVuaworMjc1MDcgMzk5YjA5YTI3YWYzMTRiNDcwYjMxNjM3OTVmMjliYjNlOWZlNjczYiBsZWdhY3ktdHJ1bmsKKzI3NTA4IDcwN2M2ZjAyNjE0MmE0MGQ2YjVkODZkMTZkMmZkOTRhMDk5ZTlhYzcgbGVnYWN5LXRydW5rCisyNzUwOSBlNWVjZWY1YTEyM2FkODkwZjM1MTIxNmFjNzJmYWM3ZjU0MjgxMWEzIGxlZ2FjeS10cnVuaworMjc1MTAgMTJmMmJlODVkYTI1OWE1MjYzMDE5Yjk0ZjNlYTRmMTdmNWNjNDJlZCBsZWdhY3ktdHJ1bmsKKzI3NTExIDhkZmFjYjA2YzNkMWE0ZjEwMmFiMWM2ODIyMGJmNWYxMDY5ZTk5ZmIgbGVnYWN5LXRydW5rCisyNzUxMiA4NjVhNzdjZTQwYTlmODYzZDc0NDMyYjZhMDE5OTEzZDNlYzVmMTNlIGxlZ2FjeS10cnVuaworMjc1MTMgN2MxYTc2Yjc4NzEyMjJjMmExOWJkMmFlODg0MWIwOGZmNDJlZWQ3YSBsZWdhY3ktdHJ1bmsKKzI3NTE0IGE0ODNjNWRkYjdmMWI1ZTcxMTBmYmQ5YjBlZjE5NDc2MjQxZTNmNWMgcmVsZWFzZTIyLW1haW50CisyNzUxNSAxNzZhZDcwNmFmYmM1NmJiNzM3ZDM3MzJlMWVmMjRhYWFhNDI2NmQ1IGxlZ2FjeS10cnVuaworMjc1MTYgYzM2YmU3OWZkYmVhMTcxNjAzYzQ1MTlhNzkxZjk2YTYwY2RlZTBmMyByZWxlYXNlMjItbWFpbnQKKzI3NTE3IGFiZWRjNWNlY2M2NDlkNzNjOTRmZDEwMThiMDkwMzQ2ODZjMGVjNDUgcmVsZWFzZTIyLW1haW50CisyNzUxOCAzOWMwYmYyMDFkYjljNDMxZWE5ZDg0MjNiYTc3NjY4MDllYTE4YjI0IGxlZ2FjeS10cnVuaworMjc1MTkgNDBiZGEzZTA5MGY2N2JhNjg0YjNmNmY3NmQ0MzY1MGEyMzJjMTA3NyBsZWdhY3ktdHJ1bmsKKzI3NTIwIDIxYmQ4NmUwMGJjZWMxYjMzNDYzNTgwNTNiMTQ5MmFiMWI5MGRlNTAgcmVsZWFzZTIyLW1haW50CisyNzUyMSBlOWU2MTExYmVlYzE3MTllOGZkZDU5NGQ0ZTEyMzEzMTg0OTliNGFjIGxlZ2FjeS10cnVuaworMjc1MjIgZDdkODE2ZTFmNTIyNjRhYTg0OTgyYjExZjNhMTgzMDQwZTUwOTE5YSBsZWdhY3ktdHJ1bmsKKzI3NTIzIDcxODkwOTEyMTczNzFiZjRiZDc4ODIyMmM5ZWRiYTM0NTZlNzg2YjMgcmVsZWFzZTIyLW1haW50CisyNzUyNCA2OWZkODI2NThiZmIzMjc0ODE5NTY3MzY0YWU2YzAxZWZjMTE0OGJmIGxlZ2FjeS10cnVuaworMjc1MjUgYmUwMmQ1MTRiOWE2Njk2YzIwYzdiZmIzZTE3YzllMTVhODY0OTFkMiBsZWdhY3ktdHJ1bmsKKzI3NTI2IDQ4MTA4MGY3MTQzOWFiMzJiZWNiOTA2YmEwYjhjZjBkMGU5ZWZkMTIgbGVnYWN5LXRydW5rCisyNzUyNyA3YmNkODE3NzYyOGYzNWFhNmEzOTY4YTgzZDAxODZjNjk5MjMxOTFiIGxlZ2FjeS10cnVuaworMjc1MjggZWEwMzg0Mzc1NGMwMDI0ZTc0M2VkOTI1Mjg0MDY2NzdlMjczYmY4NyBsZWdhY3ktdHJ1bmsKKzI3NTI5IDU2MmQ3ZjhhODJhMTliYjMyZTFkYTgzZjE0NDMyNTUwYzRjYmEyZDAgbGVnYWN5LXRydW5rCisyNzUzMCBiYjdjMzk2ZGUzYWJhNzgwYTEwYTIzOTY4ZGI1NzYzNmQzNGFiMDg1IGxlZ2FjeS10cnVuaworMjc1MzEgYTU5ZGYyZmE0ZWM4YWZmNDY2ODM5MDM4YTY1NzI5OGU3ZDMyMGM1YyBsZWdhY3ktdHJ1bmsKKzI3NTMyIDIwOGZiMWQ2MTE0ODRlNzExYzA0ZmYyNWM3ZGZhMDAwYWY0MTA5ODcgbGVnYWN5LXRydW5rCisyNzUzMyA5NDU2YTJjY2RhNjEwYTFkYTRkY2VmZGE0NzI5NzYyZjdhZjVmZGFkIGxlZ2FjeS10cnVuaworMjc1MzQgNDRjMTk2OTlmYTdlZjlkZDNmMzI5MmM5ZDY4ZDA5MjQwNzI0NTk5MiBsZWdhY3ktdHJ1bmsKKzI3NTM1IDlkZGVkNmYxODgxOTFkMDg3NDQ0MzJkNGQ4NDM0OGIyYzdiNGNmZGIgbGVnYWN5LXRydW5rCisyNzUzNiAyMzNhNTBlMTBlNjZiYTRjZjAzNWRmZGY3OTYyZTgzMjBiYTFjYjQ1IHJlbGVhc2UyMi1tYWludAorMjc1MzcgY2I3MjgxNDFhZTEyYTI1M2NkNmU1YjQxM2M1MTBmMWRjNTBjNGRhYiBsZWdhY3ktdHJ1bmsKKzI3NTM4IDYzN2RmY2Q5NjNiOTgzMmE0Yjg1MWRkNzgwNTBkNjYyMzU0NzdhMTEgYXN0LWJyYW5jaAorMjc1MzkgZDRkNWMzNDBlMDU0MzgyYjA3OGVkMjhiZTcwMDNmMzcyYmI4NDM3MiBhc3QtYnJhbmNoCisyNzU0MCAyMmIyMTJkZDg2YzFkYTNjNWRiZDY2OGZkYmFmMTU5MGFhMTE5MjVjIGFzdC1icmFuY2gKKzI3NTQxIGZkMTczOTRmNmRjZWUxYjhmMjc4MGUwNDQwYTU2NDVjNjBhMDY4ZjQgbGVnYWN5LXRydW5rCisyNzU0MiBlNjg1ZjMyZDgwNjg4ZDE4YTlhZDNjMzBlYTkzNjhiYTQwMjU4NTQzIGxlZ2FjeS10cnVuaworMjc1NDQgOGVlMmFiNGYyYTJkNDk4ZTJhMjA3YmU0ODYyMTkzNWRhZDQ1ZWVhMCBsZWdhY3ktdHJ1bmsKKzI3NTQ1IGEzODdkNGU1MzljMmQ4MmU3ZGJhZTNiYTc5NWJkNDAyZGRiOWZlNzQgbGVnYWN5LXRydW5rCisyNzU0NiA3OGFiMDg2YTM1NDg0NmZjYTg4NTQ3ZDg2YmU5ZDY1NzY2NGE3Mjg5IGxlZ2FjeS10cnVuaworMjc1NDcgMDk1NDI2YWY0YTQyNDA2NjQ2OTIyMzUyNzJmM2ZhMGQ4MGE5YTgyNiBsZWdhY3ktdHJ1bmsKKzI3NTQ4IDgwZGE5NTFjODlmYmUxNDFlMTc0MjAxOTM1MjEwMjc5Y2FkYTM2YjYgbGVnYWN5LXRydW5rCisyNzU0OSBkM2U0OTBhNTE0MDhiODhmYjg4OWE0NWYzZGEzY2E0MDg5N2ZiN2Q2IGxlZ2FjeS10cnVuaworMjc1NTAgZmRkODM2NTc1MjQ4Zjg2OWRmODNjMzhiY2RjYWIzNWMyMGQxZTNjZCBsZWdhY3ktdHJ1bmsKKzI3NTUxIGMzMWFmZWE4ODkzNGUwNjQ2ODIxMzkyYmQyNjdiMmQ1MTVjZGUyODMgbGVnYWN5LXRydW5rCisyNzU1MiAwY2FiNGU0ZmRjZjM4MGM2MWExZDk5MmQ0ZDA3YmE0ZjcwZTEyYjM1IGxlZ2FjeS10cnVuaworMjc1NTMgNWU0YjhkMWU5ZmQ2YjJiOTdkMGJlNDBmNTczNDMzYTNhZjZiNmYzNiBsZWdhY3ktdHJ1bmsKKzI3NTU0IDM3MTk1NDc4NTczOWY1NzQ2M2Q4NjNjN2Y5OThiODU0OWMwZmQwYjIgbGVnYWN5LXRydW5rCisyNzU1NSAyYWJmOWU5NDAyNzRmMDhmYzQ1ZWE4ZTExYWU2ZDFmMzI5YzJmZGRmIGxlZ2FjeS10cnVuaworMjc1NTYgNDNmYmM2NzM3NGE1N2I2ZWY2NjAzNzQ3ZTViYTdhNGRkZjJmMDNiMiByZWxlYXNlMjItbWFpbnQKKzI3NTU3IDI1ZmUzYTBhODBmYjg2MjM4Y2FkYWM3MDI5ODVlMjI3ZWNlOGE4MWYgbGVnYWN5LXRydW5rCisyNzU1OCA5OGFkNzcyZGVmYWFiYmMyMDZjMzhlYjlkNmI4YWZmMDZmM2I0YjRlIHJlbGVhc2UyMi1tYWludAorMjc1NTkgYTAzOGFiZDA4ZTRhYjUyYjBiYjRiMmFiMGM4NjRmNWE0OGI1YWI1NCBsZWdhY3ktdHJ1bmsKKzI3NTYwIGM4OWQzMzNmZTBmZTM0NjcxNjU3NWQ4MGE0NzIyOTJjM2I2NWRmNmEgbGVnYWN5LXRydW5rCisyNzU2MSBiOTkzZTY1MWViNzQ1Zjc4NDZhMDJiYzI3ODA1NGYwNzVlOWM1MmUwIGxlZ2FjeS10cnVuaworMjc1NjIgY2I3M2U4OTFkM2VlM2Y2MGIyOTU2YTkwYmI5ZTEwZDA4ZDNmMDA0NiBsZWdhY3ktdHJ1bmsKKzI3NTYzIDYzYTg4N2Q4YTFlM2E1MTkzYTI3Zjk3MzIxMDI3NjU4NGNlNGQ1YjkgbGVnYWN5LXRydW5rCisyNzU2NCA1YzE1MWQ5NThmYzE0NDIxMTNjNTIxZDIyNGQ2YTZkM2FiMzA2MGNhIGxlZ2FjeS10cnVuaworMjc1NjUgMTcyM2JjZGMxZTg1NGU4OTFiNzlkNTcxNTE1NzU3ZGQ1MTBhNGJmMCBsZWdhY3ktdHJ1bmsKKzI3NTY2IGM0ZGNiODBmNDhlYTE1OGVlMDU1NDRhNDkxNzQ1NzZmOWY2NzkxM2YgbGVnYWN5LXRydW5rCisyNzU2NyBhMzNmMmRkNDY0NDRiNjdkMDljYWQ1MjE2YTFiYjhhNDhiNmI3ZTY2IGxlZ2FjeS10cnVuaworMjc1NjggYmVjNWI2NjEwNjIyOWM3MGE4OTUwNjlmYTM0ZDgxNjY3MDIyNmNmNyByZWxlYXNlMjItbWFpbnQKKzI3NTY5IDk4MmE5MGE0ZDY3YjgzZTM4YmEyYmNlMzc3MzQ4Mjc1ZGNhZmY2YWIgbGVnYWN5LXRydW5rCisyNzU3MCBkYzIwYzdlYjQzNGY1MjFhZTY3YWM5ZmQ4YmJiOWY3NzI3NzI0YzVlIHJlbGVhc2UyMi1tYWludAorMjc1NzEgY2NlOTMxNmE2MmY4ODY3OGM1MDFlM2UwZjE1M2FlYmUxZjUwYTgyMyBsZWdhY3ktdHJ1bmsKKzI3NTcyIGEyYmNiMDBkY2JkNTk1YjExNDk1YzEzN2Y4NmY0M2E5MjUwN2ZiMzIgbGVnYWN5LXRydW5rCisyNzU3MyA3YjVlNjEzNzNmNmVkYzliZDUwMDU5OGIzNDU3NWM1MjAwYmJlNmRmIGxlZ2FjeS10cnVuaworMjc1NzQgYjlmMjNlMjI1M2Y4ODdjMjg4NTA0NjI5OGIxYjdkZWU1YzMzYWNiYiByZWxlYXNlMjItbWFpbnQKKzI3NTc1IDZlYjc0ZTgzYTZmMTFhNDgzOTUwOTgzNjA1NzQ2NDgxMDIyYzM5NjQgbGVnYWN5LXRydW5rCisyNzU3NiAwNzgwOWY2YTc5NjhiMjdkYWZmNTA2NzQ1ZmRiNmU2MTNmNmU0OGZmIGxlZ2FjeS10cnVuaworMjc1NzcgYmY2NDAxOGE2NGZmNGM3NTRjZTEwM2YwYWJiNTg0MjdhNDk4NzdhOCByZWxlYXNlMjItbWFpbnQKKzI3NTc4IDVjY2FhYWQ0ZjMzYjFiYWZjOGQ2MzFmZmI5NWVjYWJjM2ZkNzQ5ZTAgbGVnYWN5LXRydW5rCisyNzU3OSAzZDFmM2I3YWRlMDczNDMzOTYzNzVhZDZmNDFlZmIwNTc4NzEyNTg4IGxlZ2FjeS10cnVuaworMjc1ODAgZjAyNTk5ZWM1Y2I5MzEwNmYzYzMyMjdhMzBhMmE3ZDcwYjA0N2U5NiBsZWdhY3ktdHJ1bmsKKzI3NTgxIDk5MGZjMDRjZjBkNDAwMTQxNTUxNWU5YTU2NjRhMzY4YmRlZDZiNTcgbGVnYWN5LXRydW5rCisyNzU4MiAwYjZhMmFlNzA2ZTIxYTg3NjFhNjRkM2Y1NDc0OTI0ZjcyNDg5NGIxIGxlZ2FjeS10cnVuaworMjc1ODMgNzc0ZGMwN2YxYzE2ZTIzOTZlMDk0MzMxZGM2YzEwMWEzM2Q3OWEwMSBsZWdhY3ktdHJ1bmsKKzI3NTg0IDlkZWJhMzVlNjI0Y2JmOTUyMmI2NjdhZjNmNGExNDgzNzU3NTc2ZWMgbGVnYWN5LXRydW5rCisyNzU4NSAwODIwMjNjMjBjZWYyMjUwNThlMGE1YTdmZjgzMWZjYzA4ZDQzYzJiIGxlZ2FjeS10cnVuaworMjc1ODYgZTQ4YTRiMGJkYmI1NWRhNDk2ZGQ1ZjRhMDMyYjZlODVlNzI0Y2U3NSBsZWdhY3ktdHJ1bmsKKzI3NTg3IGYyMDEyZGIxNjE2YzNlNTY5MjQ3MjE1NGViOGFjOGUzODcwNTM1OGUgbGVnYWN5LXRydW5rCisyNzU4OCBmYTlhZjI0NWNlYjRlYWQyNTY1ZTNmZTlkNDFjZGEyYWJmN2MwNjZlIGxlZ2FjeS10cnVuaworMjc1ODkgNTYxZTMzYTZhMzEzODQxN2M2ZDk4MTdhOGEzNjBlZWVjMmMwOGI3NyBsZWdhY3ktdHJ1bmsKKzI3NTkwIGVmYWJjMTUxMWRjMjcxZWMwOTdiNDY5ZGNmZGNkNzEwNjgyOGI2YzQgbGVnYWN5LXRydW5rCisyNzU5MSBhNTQ2NTkzOTY4ZDY0ZGY0NjU5ZDc2Mjc1MzhjNDc5YmFmOGE2ZmRmIGxlZ2FjeS10cnVuaworMjc1OTIgMjUzNjdjN2M0MGE0YzZkZTU0MDgxOTA4OTJhZGMyMzQ0NWQyMTRkZCBsZWdhY3ktdHJ1bmsKKzI3NTkzIDA2ZWU4NjJkOTgxNTQzNDQ5NTI5NjM0ODY3MDg4N2M3OWZiMzVkYTIgbGVnYWN5LXRydW5rCisyNzU5NCAyOTZkZDMyNDI1ZDZhNzNmNDg5ZDQ5ZTQ3OTNlZDVlZDdmZTBjMDA4IGxlZ2FjeS10cnVuaworMjc1OTUgMDg2N2RhNWU4NTQ4OWFjODU1Zjk3MTdhZTFkOTI3NGY3MTJjMTEyNSBsZWdhY3ktdHJ1bmsKKzI3NTk2IGYwYTJlYzc4YmQwNWMzNzU3YWUwNDNjYWM1MTNhODI5ZWU0YzcwNjYgcmVsZWFzZTIyLW1haW50CisyNzU5NyAxNjMxNGZmNThlZjQ4MDUyYzVjMzJlNjkwYTFhNTRkYzU3ZTM5YjI0IGxlZ2FjeS10cnVuaworMjc1OTggYzhhMTlhNDI4MzU4NGJiOWJjZWFlYTBlMjcxODZiYjI2N2ZiMzU3YyBsZWdhY3ktdHJ1bmsKKzI3NTk5IDQ5NGE4YmViNDU4MjY1YTFkYmE1NTBhYWUyYWMyY2I4NGE5N2ZkMDIgcmVsZWFzZTIyLW1haW50CisyNzYwMCBkZmQ4NWU5MDIzZmNiYzQ5NmI5YmU0ZWU0ZDk1ZTBlNGIwZDNkZWMyIGxlZ2FjeS10cnVuaworMjc2MDEgZGFhNWIxNDQ5MmVlOTA5ZGEyZWQxYTI5MjI4N2VlNzU0NzZmZTg2MCBsZWdhY3ktdHJ1bmsKKzI3NjAyIDc2YWY4YjMwODk0YTdjZjlmMDUzNGU1MTE3NDk5MGRjNzgyMDkzZWQgcmVsZWFzZTIxLW1haW50CisyNzYwMyBhZDVmM2EwNTI2ZDFmNDNlNzgxNDBmYjBjMDhkZDBjM2Y0YzRkNmE3IGxlZ2FjeS10cnVuaworMjc2MDQgNTY1NzgxZWExMzdiZTJiZGM1MjhjMzZiNWI5NWJjYmJmNzViMzg1NSByZWxlYXNlMjItbWFpbnQKKzI3NjA1IDQyZWQwMmFmYTYzYmY3NmI2ZmI0ZGQ1NTZiNzhjMWEyZGI3OTM3NmMgbGVnYWN5LXRydW5rCisyNzYwNiBiMzQ3MjMzNzgzZWUzOTNiY2VjNWJiZTg3NjNmYWE2NDc2NTI2NzRiIHJlbGVhc2UyMi1tYWludAorMjc2MDcgOWJlYTJjMGM4MzhlNmM2Nzc4NDY0YzhhYTNjYjBmZWQyY2MwMGM1MyByZWxlYXNlMjEtbWFpbnQKKzI3NjA4IDYyZDhmOTc0ODExZjFhNDYyNmU5NzgxZTc5NGJlMWZiMjMzMjZkMDcgbGVnYWN5LXRydW5rCisyNzYwOSA4YTY3ZjI4YTQyYTVkYzE4Y2Y1MDE2YjlmMmUyZjc1MzZmM2NiZWMyIGxlZ2FjeS10cnVuaworMjc2MTAgNWI2NmU2M2Q3YWJiNzBkNDg0ZjM4Y2U5MDU0YjBiNTA2ODU0MjUwYSByZWxlYXNlMjItbWFpbnQKKzI3NjExIDQwZDk2NDkzYTQyOTUxYmY5YjI2NjVmMWE3NDJiZjJkMWMzN2FjNDQgbGVnYWN5LXRydW5rCisyNzYxMiAyODYwYmUyNDQyNjNlNDA0OTc0YzdkNzk0OTlkZjQzMDMzNWE5MDBiIGxlZ2FjeS10cnVuaworMjc2MTMgYjYyMTM4NDNkOGJlZDAwZWQwMjYzMWMyMTNhMWVkZmRiNWUyNWViNiBsZWdhY3ktdHJ1bmsKKzI3NjE0IGUwNmIxYWIwYmRiODBjMzQ4NGMxZjg0ODFmMGU0ZDAyNGI0ODJmYTIgbGVnYWN5LXRydW5rCisyNzYxNSAxMWM0MjUzNjk4ZGM3M2RjYTRmNTA4NmM4ZWYxMDVjYjdmNzZmZmQ0IGxlZ2FjeS10cnVuaworMjc2MTYgYzg5MTdiNTljMDY1OWFhMzhmNTNkODYyNzA3Nzc4MzA4MDAxZGU2MiBsZWdhY3ktdHJ1bmsKKzI3NjE3IDczYTg4NDQ4N2E3NjY4MGFiM2EyNmE4NmJkMDNiOWFhOTk0YzIwODkgbGVnYWN5LXRydW5rCisyNzYxOCAyYmU2M2UyMGE0OTgyZDVhYjc0OTFlOGYyY2VmYmU2ZmI1NDI1Y2NlIGxlZ2FjeS10cnVuaworMjc2MTkgMDU5NzdjNWY4ODBjZjhhMWNjYzkwZjQ2MDM3NGFjNDhhMzg1MTkyNyBsZWdhY3ktdHJ1bmsKKzI3NjIwIDM4OTViNzhkM2VlMGNlY2Y1ZDgyZTg2NGRjMjhhMzFjMjc1MTBjMjkgbGVnYWN5LXRydW5rCisyNzYyMSA1MWNkYTZlODc2NGE2ZTIyZDU3MzJjNmMwYjJkYWI0ODEzNjMxNTNkIGxlZ2FjeS10cnVuaworMjc2MjIgOWVhZmI0Y2VhNDdhNWM5MDAzZjZiYjA4ZGFiYzhhMTgxMTUzNzVmMiBsZWdhY3ktdHJ1bmsKKzI3NjIzIGZjMjdmZmUyMDM2YWExMGZlNzJlYmM2NmVlZDg1MmNjYzIyNWM2ZjUgbGVnYWN5LXRydW5rCisyNzYyNCBhM2ZjMWQ4ZTBhZTgxZTRhM2ZkMjBlZjhiZmRkMDFiMDM3MzcyNGI2IGxlZ2FjeS10cnVuaworMjc2MjUgYzQyM2E4OGIyMmNlZDM0NmE4YzRjMzc4ZmY3YTJkZGZlODI5ZTEyNCBsZWdhY3ktdHJ1bmsKKzI3NjI2IGRhNGM3MTIwMTQzZjA4ZDkzMzg1MTI0MzlmZWE4ZWZiMmQ0MzNlZGEgbGVnYWN5LXRydW5rCisyNzYyNyA1MDQ0MzEyN2IyMWRjNDk3MTgyMzRjMjRhZGI4NTU1MmViZmM4MWM5IGxlZ2FjeS10cnVuaworMjc2MjggOWE1OGQ2NGY4ZmMzZmQ1MjY0YzY4MGFhMDBjYjM3MWIxMjk1MWM0OSBsZWdhY3ktdHJ1bmsKKzI3NjI5IDVkM2VjMjhlOWE3YWQzZTgwY2EyNDI2ZmUwNjkyMWZlOGJjN2FmZDMgbGVnYWN5LXRydW5rCisyNzYzMCAzMDU0MjJkNjlkMzEzMzJkYTk5MzFkNTRhMmNlM2IyMTM1MjUxMWY1IGxlZ2FjeS10cnVuaworMjc2MzEgNGE3YjNiYWMzODEyODdiMjQxNmNmNjEzNzQ2NGU5YTIyNjYzMzY3MSBsZWdhY3ktdHJ1bmsKKzI3NjMyIDgwNGVhNTFjZmNlNmUyYzAzMjEyYjUzZjhlODQ3MjRhNDU2MzgzZDcgbGVnYWN5LXRydW5rCisyNzYzMyA3ZDA5ODIwNTZmNzJiNTdkODdhOTM1YWNiNTdjM2RmZjJjODM3YmU0IHJlbGVhc2UyMi1tYWludAorMjc2MzQgNTU0MmJmMGJiY2UyM2NiOGJhMmQyMzFkMzhlZTBmNGUzZGIxZjVmYyBsZWdhY3ktdHJ1bmsKKzI3NjM1IDYyZjRiNDViMDVmZGRhMTNiOTQ0MDE5NGQ3NmExNmMyMGYxYjA4YzUgbGVnYWN5LXRydW5rCisyNzYzNiA4MzEyMGY1YTQ4YzIxMzllZWRiZWM4MTQ1Y2ViOWVlNTkzY2VhYmE1IHJlbGVhc2UyMi1tYWludAorMjc2MzcgNDFjNTRiMzdlMDMwODg0NzJhYjdhZjAxNTg0MzczMTk3MjUyOTMxNyBsZWdhY3ktdHJ1bmsKKzI3NjM4IDg4Y2QyN2RiNzliOTNmMjg1NWYwZWZlYjg1ODM2ODEyNjJlZWIzYzYgcmVsZWFzZTIyLW1haW50CisyNzYzOSBhNjcxNzI3NTE5NWM5MjkwM2JjZTYwYzhmNmVjMjhlYTFlZDZmMGRhIGxlZ2FjeS10cnVuaworMjc2NDAgZWFjNTRhODMyNzJmNDIwMGU5ZGFlMWYyYTU1ZDdhMDFkM2VkZjQwNyBsZWdhY3ktdHJ1bmsKKzI3NjQxIDJmNjBmOTBjZTMwOTNkYmIxNTk3MTM3NjQ2NGFhNzA5M2JkZGRmMTIgbGVnYWN5LXRydW5rCisyNzY0MiA2YWEyZDA5ZTMyYzEzZmI1NmM5NjgxYmVmMjE2MDQ3NDJkYmE4M2QwIGxlZ2FjeS10cnVuaworMjc2NDMgMjdlOTRjYWNiNDNiZDZjMzRmYWY1NjAwY2YwNzUwZTEzYTViNzcwYyBsZWdhY3ktdHJ1bmsKKzI3NjQ0IDNiNTcxZTMyYTZlNDVmYjgyNWJiYjY5YTk2MWZiMjBkMmU1MTBhZWMgbGVnYWN5LXRydW5rCisyNzY0NSBlNjAzMzI1NGRmMjE0NTViOGZjNDE0NTg1MjkzZTUyNmU0NjNjZjBmIGxlZ2FjeS10cnVuaworMjc2NDYgMThjMWIyOTBlNDg0Mjk3NDcyM2YzMTI2Y2Q0ZmNlZmYyNWEyMjI3YSBsZWdhY3ktdHJ1bmsKKzI3NjQ3IDRhNWM2ZjY5NDQ3ZDZiOWZmNzc3OGIyMGE1Y2UwMmNjYzU5MDJkODYgbGVnYWN5LXRydW5rCisyNzY0OCBkOThiMGNkZjdlNTFiNmExOTBmYTQwMzQzYjNhOGI3OWMxMjI0YzkwIGxlZ2FjeS10cnVuaworMjc2NDkgNzZjZDI4NmU3ZGU1ZTc3OTViOTE5MzA1ZDliYjZmM2VkOTc0ZWFhZCBsZWdhY3ktdHJ1bmsKKzI3NjUwIDNhM2UwNzFkODRmOTg1ZmRjMjM5OTU2MDdkNzljYWU2YTBmZTRmYTggcmVsZWFzZTIyLW1haW50CisyNzY1MSBkNzIzNzAzN2YzNzk0ZDkyNDc0MWZmOThlMzg0OGY3MzAxZDhhZTU5IGxlZ2FjeS10cnVuaworMjc2NTIgYTRmNGNlNWU4YWE5OTE0ZTMyMzA3ZjU4OGY3ODA1ZWIwY2M1Mjk1MiBsZWdhY3ktdHJ1bmsKKzI3NjUzIGQxYjJiZmQ5M2EyNzA4OTUwY2EwY2U2ZDZiM2Y3MzViMzlkZmI3MDAgcmVsZWFzZTIyLW1haW50CisyNzY1NCBjM2NmMjIzMzhlMWNlOTQ3MjhmZmQ3YzQ4OTRhZTU0MTY2MTgzOGRhIGxlZ2FjeS10cnVuaworMjc2NTUgYzMyMGEwN2YwMTQ2NzFhM2UzMGE4ZDNjMDEzMjg5YTBjYzYzNDc3NiBsZWdhY3ktdHJ1bmsKKzI3NjU2IDFjZWJjZTUwZmU3MTIyNGQxMDk0YzY1ZGEwYTM0OTU5N2ViZjg5YjIgbGVnYWN5LXRydW5rCisyNzY1NyA5OWRhOTM2ODNlYTViMjU0ODYwZTE2MTNmMTkwYTA0OTRkMGUzNmM5IGxlZ2FjeS10cnVuaworMjc2NTggMzUyOWFkMjEzOTU1OTQzZDM0NThhMTAyOTIyNzZiNjVhZTdmNTE1MSBsZWdhY3ktdHJ1bmsKKzI3NjU5IGViMDRmMTdjYzAwOGNhNzUzM2Q3NDhkMzdhNTNkYjBmOTdlOThhNjAgbGVnYWN5LXRydW5rCisyNzY2MCA3MWYxZjM1YzAzNTczNDc2ZWEzOTgzMTM1NDY3ZjA0MDdkZjBkMDFmIGxlZ2FjeS10cnVuaworMjc2NjEgMWE3MDNmOWJiZGMwZmVkY2FjZTQ3OWY3NTRmYTMxOTI4NzZkZjMyNSBsZWdhY3ktdHJ1bmsKKzI3NjYyIDE1OThhMWU0NzNlMjQ3OThmZDU5YWNkYjE0M2JjNjE2NzY4MzE0NTkgbGVnYWN5LXRydW5rCisyNzY2MyA4MTljODAzMzcwNWI5NTRmNTU2ZTcyZmVhYzIzNWY3YTEwZDhjMjY1IGxlZ2FjeS10cnVuaworMjc2NjQgOTcwNzg2ZDAyZTgwNWRmMTdkNGQ5YjY0NzA3N2M0Y2ExZGJmNjRlOSBsZWdhY3ktdHJ1bmsKKzI3NjY1IGMwYTY3YTFjYWIwOWM5NzM3YzIxZTdhMDc0MzM0ZTVmZTBlNDA4YjcgbGVnYWN5LXRydW5rCisyNzY2NiBkODkwOTc5MjAwNWFiODJlZDFiYzJiMTMxMGZkZGFmNmNkMTg0YjJiIGxlZ2FjeS10cnVuaworMjc2NjcgNDQ1MjJhNzVkZWVjZWE5NDRjODMyZWZlNGQzOWQ2NzExMWIyMTkwMiBsZWdhY3ktdHJ1bmsKKzI3NjY4IDRlODUzMDZhOWJiZmE4MWVjNWJlNWYzODZiMTQzMjgxZDJlYzg2MjkgbGVnYWN5LXRydW5rCisyNzY2OSAxNTc2YTJkZmYwMWY4ZTk4YTI1NWExZTg3ZjU2MjUzZjRkNTUzNDdlIGxlZ2FjeS10cnVuaworMjc2NzAgZDgxNGE3MzE5MjRhMzE1ZWE1OTdlZTJkYzRkZjRkMzljYWFiMTgxNyBsZWdhY3ktdHJ1bmsKKzI3NjcxIGI1OTYyYjU4N2NjMDkyOWVhMWNmZjRkNWVlYWRjMDI3YjE2ZDAxN2UgbGVnYWN5LXRydW5rCisyNzY3MiAwOWU0ZGU1ZGNiM2JhYjFlY2Q0OGVjNTQ4YjQ3OTM4Y2Y2ZjVmYjY1IGxlZ2FjeS10cnVuaworMjc2NzMgM2NhY2VmMjQ5ZWI1NTBiMjYzMDI2YzlhZGY2NzE1NjgzMzhmMjRiNSBsZWdhY3ktdHJ1bmsKKzI3Njc0IDJkNDA3NDg0YTRlNjMzOGVmZjU0NmMxZGVjNGYwNWI5MDRkZmZjYzggbGVnYWN5LXRydW5rCisyNzY3NSA2NDAzNzBmMDhlMmFmMjk5NjdiYWI4OGFmYzQxNGE2YTRkNWNhYmNjIGxlZ2FjeS10cnVuaworMjc2NzYgMGEwOGVkMDViZDQyNWMwYTE2YWY3MjUxYzNiYzE4MGEzZDYxZGJkYyBsZWdhY3ktdHJ1bmsKKzI3Njc3IGEyNmNhOGFiMjdmMmIyMDE1MTJhOTg1MTRmMmVkZGFhM2ZmZTc3NmQgbGVnYWN5LXRydW5rCisyNzY3OCA4N2UyNTM0ZTlkNjRiMzcwNTBjMjcwN2Y4ODI5ZGM1NWY4N2Y0ZWIyIGxlZ2FjeS10cnVuaworMjc2NzkgZTY2MjIyNjIxMWU1MzljYWVkZmQxNGM5Y2UyM2JmYjg0MmM4N2YwMSBsZWdhY3ktdHJ1bmsKKzI3NjgwIDM3OWIwMWUwNzQyMjE5OTA2OTYzYjgyZjlkZDBmYjNjMDM5NjM5MjAgbGVnYWN5LXRydW5rCisyNzY4MSBhMDMyOThhM2FjYWQxNDM5MDkyZTBmNDk4MzBlMGFjOGZiZTIyOTJjIGxlZ2FjeS10cnVuaworMjc2ODIgNTJiMDk3NmU0OGExZDZlNDlkNDA1M2I5ODM3ZDlkYjRhNzc4YTIwYSBsZWdhY3ktdHJ1bmsKKzI3NjgzIDljMDE3ODRjZTdjYWI1MTQzMWQ4YjlkNDUwZWFlZmNiY2M3MzBiNjIgbGVnYWN5LXRydW5rCisyNzY4NCBjNGJmNDVjYTRkNTU2NzY5ZjAxMjdjZmU2Njk2OGQwMTE5ZTdjNTU4IGxlZ2FjeS10cnVuaworMjc2ODUgOTM0MzRiYzA4OTlkOWZkNTRhNzliOGU3NTExOTViNDQyZTRkMDdjMCBsZWdhY3ktdHJ1bmsKKzI3Njg2IGM5MWI3ZjM0NjI2YjljZDNlNTg3M2NkMmI1NGM3OTM0NzlmNTRkZTMgbGVnYWN5LXRydW5rCisyNzY4NyA0MjhjYmJmMDU2MzkwNjk4NTMwODljOTA2YzdhZjRmMTdkZGE3YTZkIGxlZ2FjeS10cnVuaworMjc2ODggMTMyNTc3ZjY5M2IxY2MxNTk3MzE4MTk0YjFlODI0NTM3NzgxZDVhMiBsZWdhY3ktdHJ1bmsKKzI3Njg5IDQxNjY1NGUyN2Q4ODkzMzU2M2YyYmI0MjU0ZDc0YzAyNDkyNGNkZjggbGVnYWN5LXRydW5rCisyNzY5MCA2OTEzNGM2MWY4N2MwNmJjMWFkMzgxMTQzM2JjMjAwZTI2MTU5ZTZjIGxlZ2FjeS10cnVuaworMjc2OTEgMDhkMzA3Y2JjY2Q5NTEyMGFlZDljNjdiODNlY2I2NTBhZmQ2MzY0ZCBsZWdhY3ktdHJ1bmsKKzI3NjkyIDVlZGU5YmNjNjUxZWIyZjAxOWE0Y2E2ZTNlNjI5ZGU3NjU1YWMzYmQgbGVnYWN5LXRydW5rCisyNzY5MyBhMzUzZDZhNDUyNzY5ZWEwMmJiMjkxYjg3ZDUxMGVjMDBhZGNhMjEwIGxlZ2FjeS10cnVuaworMjc2OTQgYzRiM2EyYjI0N2FjMzdhMzcxMjVmOTdlMjg1ZjdlMGQxNzFlYjI0YSBsZWdhY3ktdHJ1bmsKKzI3Njk1IDY1OGUxMmNjMDMzNjJkNWE2NDI3Nzc3YzhjMTZjM2RiYjM1YWJmZWUgbGVnYWN5LXRydW5rCisyNzY5NiA3NGY5YTIwNmQ0ZjA4ZGUxMzIzZTI0NTNhYWE0YmJkMjczMzZiMDYzIGxlZ2FjeS10cnVuaworMjc2OTcgYThkZjBjMGJlMjQyM2FlYjZkNjFmZWFiMzZlNDJjOGY5NjJiNmQxMCBsZWdhY3ktdHJ1bmsKKzI3Njk4IGRkMzgyOTFiODlmYjU0MDA3NWI5ZGMxYmE1YjFkNTI0NzkyZTg5YjEgbGVnYWN5LXRydW5rCisyNzY5OSAyOWFlOGU4OTE1M2JkNmU1NTdiZGQ5OWJkMGUyN2Q2M2Y4OGQ0OTAyIGxlZ2FjeS10cnVuaworMjc3MDAgMTI4MTVkMDUwODBjZjY5YzJjOWE5OTNlNGVlYzE5NjA3MDQwMjM5OCBsZWdhY3ktdHJ1bmsKKzI3NzAxIGM0MzQ2NmY3ZGFlODQxNjQ1N2U3MDgxYTZiNDI5MmI2NGI4NDA0ZDEgbGVnYWN5LXRydW5rCisyNzcwMiA0NzhhMmQ2NGFjNTgzMDhmYWJmNGU0Y2Q3NTdhNzI2NGZlOTczYzdjIGxlZ2FjeS10cnVuaworMjc3MDMgMzEyMjczNTNjYmJjYzAxMGI1ZDgyNjk2MGUzMDY3NDZkOTgxNzUxZiBsZWdhY3ktdHJ1bmsKKzI3NzA0IGFmZTQ3OWE2MjM1ZWMwODQxNWU3NDY1M2JiYjAzMzYyZDAyNDRjZTQgbGVnYWN5LXRydW5rCisyNzcwNSBhYjE4NzdhN2IyNjI1YmQ2YzQ2ZWZiMzE0OTBjNTZhNWVmZTM5MjlhIGxlZ2FjeS10cnVuaworMjc3MDYgZDlhZGQ0MGY5MmZmMzJmMTk4NDdkZTMyNWI1YmYzZWZhMGRhM2JhMyBsZWdhY3ktdHJ1bmsKKzI3NzA3IDE3ZDUyNjI5Nzc1NTdmN2U2MTgwY2U3YWIxNzllZWMxNmFlNTBhYmQgbGVnYWN5LXRydW5rCisyNzcwOCBhYTRiOWE3YjM4MTdhMTllNWZhNTg0OTFhOWEwM2FjYzIxNmU5ODYxIGxlZ2FjeS10cnVuaworMjc3MDkgZWIzOWJhNjBkYWUwY2ZjMjk1YmM4M2NlOGQwZDRkYTY1ZDBkMWU4NyBsZWdhY3ktdHJ1bmsKKzI3NzEwIGQ0OTdmNTIzYjgyZWQ3NGFjYTEyNjM5OTUxNmUzM2ExY2ZkODA4YWEgbGVnYWN5LXRydW5rCisyNzcxMSBlMzc1MWZjMDNlNmM4NzgyZTk3NmJjZjUwZWEzZmIxZjk2ZmMxZmJkIGxlZ2FjeS10cnVuaworMjc3MTIgNTNiMzIyNzFlOGUxZjE2ZGY0ZDkzOGNiY2JkNzQ3ZjM2ZmQ4YmEyMyBsZWdhY3ktdHJ1bmsKKzI3NzEzIDY5Nzc3N2NjODNjYzBmZjA2MzU4NTEyZmE0ZmZlNmZmZDcxY2M3NTcgbGVnYWN5LXRydW5rCisyNzcxNCA4YjRhMTY1YmFhZWVkZjY5ODRlNGFjMGViZjAxNWE3MTc1MzU4NmUyIGxlZ2FjeS10cnVuaworMjc3MTUgZGRmNjcxNjMzNDY1ZTUwNmY1YjdjOTY3YWUxYzFmNmY5NjIwN2FkMSBsZWdhY3ktdHJ1bmsKKzI3NzE2IDIxMzFiYjc5MGFmOTU4YzY1MTM0MTc4NTc1MDRiNjAwYTE0ODRlZDggbGVnYWN5LXRydW5rCisyNzcxNyAwNmI5YThkYWQ3MjFiMTkwNmUwZjliZGMwZjFmMjE3MTM1ODU4MDdkIGxlZ2FjeS10cnVuaworMjc3MTggMmY2MDM0NGE0OWU4OGNlNGVkOTk3NDM1MTA5MzE5NTEzZjA1NDkzYiBsZWdhY3ktdHJ1bmsKKzI3NzE5IDQ5YTNlODMzNDdkZGVkMGIwOTk3ODQ5Y2U3MDU4YjkwYWE4NzZjOTEgbGVnYWN5LXRydW5rCisyNzcyMCA2N2VhYWJiMDE3ZTBlMGQwMWI4OWFkMGUxZTZiN2QxNDhmMDkyMTFkIGxlZ2FjeS10cnVuaworMjc3MjEgYTliODA5YzhiOWRiYWEzZTQxNWUxNjVkNjE2YjM0Mzk3MTg4NmQyNyBsZWdhY3ktdHJ1bmsKKzI3NzIyIDEzOTg1OTAxNmI0NGJiOWQwNjcyNGIxMGU4OGU2NDI2M2Q2ZDVlOWIgbGVnYWN5LXRydW5rCisyNzcyMyAzZWYwMTljYWFkMWU1MTUwOGQ0OWI2OGYwOWZjYThjYzE5ZTg4ZWQ3IGxlZ2FjeS10cnVuaworMjc3MjQgMmFlMDE0NTkzMWYxZjMwOGQzZGRiMjkyOGVlZDhlODJlYTMzYzA0NiBsZWdhY3ktdHJ1bmsKKzI3NzI1IGYwOWNmOGViYTdlMjM3OTBmZDM2NTU2NThmYmZlOTZlZjI2MzI1MmEgbGVnYWN5LXRydW5rCisyNzcyNiBiYjA2OTJlMzBmYzZiMDFkM2ExNTBjZTBiMWNkMzUxYmNjZmMzZWNmIGxlZ2FjeS10cnVuaworMjc3MjcgMjMyYWIwZDY2Mzc1MmJhMmVhNmExMWUxMzQ2ZTE0Zjg3MTRmMjVlNiBsZWdhY3ktdHJ1bmsKKzI3NzI4IDJkYzIzZjBmMzQyMTVkNmY0NmEzNzk0MzU5MDQyMjJhMGUxMGJhMzYgbGVnYWN5LXRydW5rCisyNzcyOSA0ODkzMGIwMDQzYjc3MmI4YTYwMjkxMzRjNGUxZGU2ZmQyZjM3ODM0IERTX1JQQ19CUkFOQ0gKKzI3NzMwIDE4N2M0ZmFkZTNkYjNlYjVmOTExYTVkNTY1OTlkMTkxNzU2NjQwNjUgRFNfUlBDX0JSQU5DSAorMjc3MzEgMzBkMGQ4ZGJmMjQ0NThlYjE2ODRkOGIwNmU5ZjIzMjg2MTg0NWExOSBEU19SUENfQlJBTkNICisyNzczMiA3ZmVkMzUxM2FiZmE3MTNkZWMxNjZkZTk4YmNhZDZjNTEzMzQ2ODJmIERTX1JQQ19CUkFOQ0gKKzI3NzMzIDNhM2JjN2Q5ZjFmNWU2MTYxYzIwOGYwOTgzOGY2OTliY2E5NjA0OTcgRFNfUlBDX0JSQU5DSAorMjc3MzQgNGY2ZTU2YzQ0NzM5ZmU2Yjk0ZmJjN2RmM2JlODU3ZDBkYWQ4NzAxYiBEU19SUENfQlJBTkNICisyNzczNSBkMmQ4MWQ1M2Q0YTEyZGYzMGFjZDYxZWQwM2RiZGE1ZTRhNWE1OWM3IGxlZ2FjeS10cnVuaworMjc3MzYgODA4YjRmZTUxODRmY2FkNzY1ZjFlYjlhZmEzOTQ5NzAyMjg3ZTBmMCBsZWdhY3ktdHJ1bmsKKzI3NzM3IGFhNWM5OWI2MWRmNzc3NDFhZDY5YjJlNjlmZDMxZTNlMGYyYmQ3OTIgbGVnYWN5LXRydW5rCisyNzczOCAxMzdmZGRlNzAwMDYwMTAyZjI0YzQyOTNkOWExZTRmZmIzOGVkODU3IGxlZ2FjeS10cnVuaworMjc3MzkgMTU3YmJmYjE3ZjQ0Y2U5MmRiZjZiNThmNzgyMmJiYjRiYzVkYzVlMCBsZWdhY3ktdHJ1bmsKKzI3NzQwIDU1ZWFiMTBlNDcyZDM5ZjM4NDYyMmJmN2RhNWJjZjUxMWJjZDc4OGMgbGVnYWN5LXRydW5rCisyNzc0MSBmZGE1MTNiNjcxYjZjOWY2MmJlNjc5OTc0NGEwMDkzYzZlY2M3YTRmIGxlZ2FjeS10cnVuaworMjc3NDIgNGVhZGY3ZGZjZGI0YThlZWQ0ZGEzYTE5ZTc1ZjQwYWFmMDNkZDI3MyBsZWdhY3ktdHJ1bmsKKzI3NzQzIDE5NDE0MGM4MzI3NjA0OWRmNTU1NjJmYTQ2NTdkMzg5NzRiNDM0NWMgbGVnYWN5LXRydW5rCisyNzc0NCBhMzU3MTQzNjgzN2MxYTI0NWQyMzA5MmM4ZTVjYjEzYTM2ODgzZGI5IGxlZ2FjeS10cnVuaworMjc3NDUgMTdlOTRlNjIzNTNjNzM4ZDM3NWU3NjVmZTc3YzFhOWQyMWU4NGYxNSBsZWdhY3ktdHJ1bmsKKzI3NzQ2IDMzMDhhOTZiOTc2ZjZlODk1MGQ3Zjc2ZWYyNDY1OThkYTZmYWY3ZjAgcmVsZWFzZTIyLW1haW50CisyNzc0NyBmM2M4ZTNhZjdiNmJmNjI2NzhiMmE2ZjcwNTIzYjRkMTUzNzVlMjNlIGxlZ2FjeS10cnVuaworMjc3NDggMDIwZDk2NjI1MzU3ODY3Y2Y2MGY1NzE3OTUyOTA4ZTliOGJjMTlhNSBsZWdhY3ktdHJ1bmsKKzI3NzQ5IGU4ZmQ1Y2FiMGRiM2VhNzI2MDc1ZDQ5OGFlOWViMjA3ZTk0ZTU4NmMgbGVnYWN5LXRydW5rCisyNzc1MCA3MTNhZDdlMDQwNmFhNjJhZTMxMGVmY2IwOTZjMGM4MzMzNjlkZjFjIGxlZ2FjeS10cnVuaworMjc3NTEgOTc5ZmY1ZDBhZTA3YWY1NDNhNzczNzM2NDdlZGZkNWUwOWY5MzljMyBsZWdhY3ktdHJ1bmsKKzI3NzUyIGFhMGQyZDUxZmJkZWMxMTJhZjMwNDMzMjE2NzE3ZGNkZGU1ZmQxNjkgbGVnYWN5LXRydW5rCisyNzc1MyBhNzE4NmJiOTE0MmM5MjllZTFkMDA1YThhZTZkM2U4YjIxN2Y5ZDQ2IGxlZ2FjeS10cnVuaworMjc3NTQgMTAxMjkwNmU4YWRmMGZjNTEwMWE2NDY1YzBhOWU1MTAwNmIxM2E5NiBsZWdhY3ktdHJ1bmsKKzI3NzU1IDhkMjNiZmEyMGNkYmNkYjBhYWNhMDQ4ZTRjMmQ3YTdkNzI5MzQwOWUgbGVnYWN5LXRydW5rCisyNzc1NiA0YWI0ZGFjNDYyZmZkYzk5NWYzZDkyNjY5ZDhjYTc1YjAyMjVmMjhiIGxlZ2FjeS10cnVuaworMjc3NTcgZTM2MDVlYjJmODY2YjNiNTMzZjljNWQxZjdiMWI3Yjk3MDAwMjg0ZCBsZWdhY3ktdHJ1bmsKKzI3NzU5IGY2ZWFhOWQ5OTZlYzI0MmM2NWI2ZDg2N2MxZWYwNzMwOWRjZjRjMTUgbGVnYWN5LXRydW5rCisyNzc2MCA0MGUwMTQwMTgxY2Y4NTAwMGMwNWExMTQ1NmE2MDBkNWEzNDc3MzZjIGxlZ2FjeS10cnVuaworMjc3NjEgNDNlZTFjMDc1MGEyMzU1NGJkZTU1NGZmNzNhNzMzMDNkYjkzOThjMiBsZWdhY3ktdHJ1bmsKKzI3NzYyIGRmZTU0YWYyOWE0NzNmZmU4ZTM3OTgyM2QzMGIzNTc2YWY1NzZkNDQgRFNfUlBDX0JSQU5DSAorMjc3NjMgOWQ2NDFjZTY2YWYzNTgyMWNhODJjNWYwODg2YWE4ZWNlODhkYzNjNyBEU19SUENfQlJBTkNICisyNzc2NCBmNzljN2FhZTY2MjBkOGIyYjNmNzg3OTkzMDA2MTdmMmZhNGRjNDUxIGxlZ2FjeS10cnVuaworMjc3NjUgMzA3MGI3MTdmYzNkODMzMjY2YjhmZThhMzVlYTRhOTY2NzQ1MDFkYyBsZWdhY3ktdHJ1bmsKKzI3NzY2IDg5Y2U2MjEyNjY2NGYyNGI2NDBiZjljOTQ2MmI4MmFjZjE4NGM5NTIgbGVnYWN5LXRydW5rCisyNzc2NyBhYTllMDU0MjcwYTJhOWZlZmE2NmI5ZWVhYjI3OWRmM2Q1MzU3NzdiIGxlZ2FjeS10cnVuaworMjc3NjggZWMyYzg1NGJkMTk2ZDNhY2FjNDc0YzMzMDVjZDZiZTExNTdlZWMyYiBsZWdhY3ktdHJ1bmsKKzI3NzY5IGM5ZGU1NWZiYjJiMWRlYTdjZWZkMTNlZDZkY2M0MmUyNzYxYmYyZmMgbGVnYWN5LXRydW5rCisyNzc3MCBlMmQ0NjFiZWZjN2E4YzViMjE3NGFmNzcwZTM5ZDFmNWJiNDA0NjkyIGxlZ2FjeS10cnVuaworMjc3NzEgNjcyODQzZWU0YjYxZmIzOTFhMDhmM2FhNWVjNWU2OTc5ZDlhODVhMiBsZWdhY3ktdHJ1bmsKKzI3NzcyIGQ4YTY4MmQ0YzY5MjQwNDcwMDZjOWIyNDhjYjMzZWQyM2IyMzZmNzcgbGVnYWN5LXRydW5rCisyNzc3MyA0MTU2YmY5YjAwNDNjMGI3OGI5ZmEwNDQzZGYwNmNjNWJmNzhmYjRjIGxlZ2FjeS10cnVuaworMjc3NzQgM2M0NWRjZDAxMDFkZWViZWU5NGUwZjg4YzA0MTQyMWIzYmVkNTVkNyBsZWdhY3ktdHJ1bmsKKzI3Nzc1IDY2NzMxNzFmYzM3ZWJmMWJlMTg1OGI4ZDBlYzJmNWY2MWUzOTZkM2UgbGVnYWN5LXRydW5rCisyNzc3NiBkYmRhZGE5NjY4NTgyZGYxNGRjY2U3MzU1NzQ1ODMyMzdhYmFlYWNlIHJlbGVhc2UyMi1tYWludAorMjc3NzcgMGUyN2I2NzI0N2RhYTRiMGYwZWE0ODRjNDQyOWUwYWNmNWJlNGI3MiBsZWdhY3ktdHJ1bmsKKzI3Nzc4IGI0NWQxYjMwNDBhZWYwMGY3NWM5NjI1NzUzMzRkNDY4Y2FmYWI2MmYgbGVnYWN5LXRydW5rCisyNzc3OSAzYWFhZDlkZjcxMWU0M2U0ZmU5MjRlYTM5ZmUyNzg1Nzk1YTkzYzc2IGxlZ2FjeS10cnVuaworMjc3ODAgZWI3NTlkYTA2NGFhODVkYjg2M2I2OTMzNTM3YWEzMGMyMjM2ZDg3ZCBsZWdhY3ktdHJ1bmsKKzI3NzgxIGFjNDliMjgwN2I3NTBkNDc5NzhmMDg5MjQ1OTkwZDZmNGJmZGYyMTUgcmVsZWFzZTIyLW1haW50CisyNzc4MiBiOGUzNTk2Y2ViZDdkMzQ0YzA3OTIwYzJlNTExY2RiMWM0MzkxMWZlIHJlbGVhc2UyMi1tYWludAorMjc3ODMgMGEzMjdiNzY4ODY4NzRhYmRiZjE5NzAxODkyODM0MzllZGMzNDlkNiBsZWdhY3ktdHJ1bmsKKzI3Nzg0IDA3ZGQyZmM2YWM5Yjc3YWJjYTM4NWJiN2MwMjI3YWM0OWZkYjM4MDkgbGVnYWN5LXRydW5rCisyNzc4NSBiYjY0YTg2MTRmNjY4MTc0ZTQzYzAzODliNzIzMjllYWNmNzBkNDllIGxlZ2FjeS10cnVuaworMjc3ODYgNDc3Yzc0ZDAwNjZmMDYyNzY4MGVjOTJlNmU2OGNiZmU4YTM5MjM0OSBsZWdhY3ktdHJ1bmsKKzI3Nzg3IGVkOThjODhiMjM1M2JlNDA5M2IwNzA1M2E5OTYyZDdhNWM1MzBmOTcgbGVnYWN5LXRydW5rCisyNzc4OCBmNjA1MmFlYjEzNGZjYTFlODE2ZmYyMmJmZmYwODA5Y2YwZTAwYTIzIGxlZ2FjeS10cnVuaworMjc3ODkgYzdlZDkyNWM3NWIzMTBhOWFlYjhmYTMzMThmMjA5NmI4ODA2ZjhjYyBsZWdhY3ktdHJ1bmsKKzI3NzkwIDYwODczNWRkMmViYzdkNmU1MWM4MjA2ZGQxOGEyMGU2Y2I1MTcyNjIgcmVsZWFzZTIyLW1haW50CisyNzc5MSA4MWNhNmNhNWMzMDc0YjM0M2NlYmE3ZjlmMWE1MDY3OWEzMTZmMWEwIGxlZ2FjeS10cnVuaworMjc3OTIgYmQzNjY1YmQyZjc4MzMyNDA5NmU5MzgzYTYzMTFmZWY3ODAyY2JiZiBsZWdhY3ktdHJ1bmsKKzI3NzkzIDhjNmE5OTIyNDU1NzlmMzgxMmE5NTljYzlhYTNiNTExNTQwZjJkNDQgbGVnYWN5LXRydW5rCisyNzc5NCBlYjU1NGFhMzYxZTljZTgyMDZlN2NlYjNjNGQ3NzQyNTI1NWRjNzgwIGxlZ2FjeS10cnVuaworMjc3OTUgY2E1YWM5NjdjN2M0Y2NjYTEzZGNiOWQ4NWM3MDJkOGUwNWMwZTdlNSByZWxlYXNlMjItbWFpbnQKKzI3Nzk2IDgwMTI5ZDRhOGNlYzE3NTMxZTNlNjNlYTdlODlkMjYzYjA0ZjAyZTQgbGVnYWN5LXRydW5rCisyNzc5NyAzMDQ0MDg3MWM2ZTU2NDBjNmQ1NmU1MDFmMzk0N2I0MzVlZDBlZmUyIGxlZ2FjeS10cnVuaworMjc3OTggZDA0OWZkNThlNGRkYzRkZGVlYzc0ODJkZTI0YzliZWU4ODE0ZjFiYiByZWxlYXNlMjItbWFpbnQKKzI3Nzk5IDRkZTVjN2U2MjMxZTVkMzY5MDVmNzRjN2RhMWY0Yjc0Y2UwYWJiOGIgbGVnYWN5LXRydW5rCisyNzgwMCBkNmVjNGRhYjkyN2U2N2QyMjg1NzRhNWY5M2M3YWFkNjdlY2YzNTczIGxlZ2FjeS10cnVuaworMjc4MDEgMzFhNzExOWJkOGQ0ZGVmNzEzNzQyMTE5NjFlM2JlZGJhZWMwM2UyNSBsZWdhY3ktdHJ1bmsKKzI3ODAyIDhlMjY2ZDBhY2QxMGEwODIxZDUxMjZmZmQ3MThkNzg2MzAwODEyZDYgbGVnYWN5LXRydW5rCisyNzgwMyA0NzA4YzA5ZjAzNTBmOTU0NjQwNjM0YTA4MDA5OWMxNmM1YWVmZDg1IHJlbGVhc2UyMi1tYWludAorMjc4MDQgMDg5MjZjYzVmMmFmZDA0MTZmMGE3M2ZiMTkzMGNhNDAzY2QzYzEzNyBsZWdhY3ktdHJ1bmsKKzI3ODA1IGEwODhjZDA4ZGFkZTc2NjI1MGQxODY2MDY5ZDc5ZDdjNDc5MDdiNmQgbGVnYWN5LXRydW5rCisyNzgwNiBmNWNmYTBlZTAyY2YzZjY2YTJhYjczYjRlMmE2ZDgxZDY2YzBiZjQyIGxlZ2FjeS10cnVuaworMjc4MDcgZGQ2YTk3MTFiNDNjZDkwNmYwZTQyMWI2OTIzZjhmYWNmZTQzNTAwNSBsZWdhY3ktdHJ1bmsKKzI3ODA4IGEwYTU5ZTUyYmFlYzVkZDBjOGVhNjA1YzgwYjcwZjYzZGNiZWQ4YTEgbGVnYWN5LXRydW5rCisyNzgwOSA1MTVlODcyM2NhZWZmNjU5NjM0ZjA5Mzk0ZjlhY2M2MGJiMmM3OGI1IGxlZ2FjeS10cnVuaworMjc4MTAgMjc1NjkzYmNlZTc0MDJiMzBiNmM4Mzc3YjYxMjkwZDA4NzA3MTE1ZiBsZWdhY3ktdHJ1bmsKKzI3ODExIDM2ZTJmZDNmMDhmNzU4MGRlZTQ2YWQ4YjA2OWU5Mzg5N2U3M2JjODUgbGVnYWN5LXRydW5rCisyNzgxMiA1YmU5NjFhOGU5ZGIzZTE4MGY4NjNkZjQyMmViYmE5OGYwZjBmYmQxIHJlbGVhc2UyMi1tYWludAorMjc4MTMgYmQ2MjY4YjE3Yjc1NzdjOTE3YWJkMmRiOTk3NmRiY2U0MmU0NDYzNiBsZWdhY3ktdHJ1bmsKKzI3ODE0IDNkYjI2MWE5M2E1YjlmNzNhMzdlNjM1Mjk4M2VhODk3OWVmNmE3YzMgbGVnYWN5LXRydW5rCisyNzgxNSBmNGNkNzhiM2I3NzRjZmI5NGE3MmFhNmZmNWE0NTY0ODA3MWFlZDA5IGxlZ2FjeS10cnVuaworMjc4MTYgZWQ4OTI0MTFlZTBkMDBiNWVhODRlNDhiYjkyMGQwZGJjMzExZmJiNCBsZWdhY3ktdHJ1bmsKKzI3ODE3IDlhZmFjMGRkNmI2ZTRlYTBlNjMyZTA1MDhkYzI5NThlOWE5OTJmMzUgbGVnYWN5LXRydW5rCisyNzgxOCBlYTQ4MjE5NjQwNDMyNGMzYjBmOTlkNDJjNTE0Y2M5YmM2YzBiMzM3IGxlZ2FjeS10cnVuaworMjc4MTkgMTVlZTQ0NWFmMDdmN2E4NTI2OTkxY2QxYzgyMDYzZjgyZjU2MTk5YyByZWxlYXNlMjItbWFpbnQKKzI3ODIwIGY1NWQ1OGVlNGVhM2ZjYzAwZTI2MDQ0ZDdiZGZhYTMwOGU3OTI2MmYgbGVnYWN5LXRydW5rCisyNzgyMSAxNGJkNWFiMGNkYjY2YzY1ZjU3NThjZWEzNzI4NjFiYmRhMTliNTEzIGxlZ2FjeS10cnVuaworMjc4MjIgZjQ0MzZlMWIxODY4ZmVmMmYxMmRjNzI2OTllNTJjZTU4MzQ4YjllMCByZWxlYXNlMjItbWFpbnQKKzI3ODIzIDczODNlNjc0ZmNkNTFiOTMwMGU3NTk4NTk3N2UzYjVlZTdiOWNjNzAgbGVnYWN5LXRydW5rCisyNzgyNCBmZTIyNTBmNDVhYzA4NDUzMGI5MWM3MzQ4ODYxYzNkZmY5NjhiZDlkIGxlZ2FjeS10cnVuaworMjc4MjUgOWVmODIzNzc2NjlkNTNhOWJiNWMxYjgyMmY5ZDdlNmE3YzgyYzc1MSBsZWdhY3ktdHJ1bmsKKzI3ODI2IDdkYzNmNDA3N2U1OTU1M2VjN2Y5NTkzZGYyNDNmM2EwNTZkNmRhZDQgbGVnYWN5LXRydW5rCisyNzgyNyBkOThmOGUwM2ZhMzEyYTNiNDYwNTIyMzVhYjM0NDQ1YjUwMGRjYjMxIGxlZ2FjeS10cnVuaworMjc4MjggMzAxZGQ1NDY1YjhlMmIyODYwZDhmYmY1MDAyNWQ0MDU1NmNjZjFlOSBsZWdhY3ktdHJ1bmsKKzI3ODI5IDY2OTg5NjY4MzhjOGU0OTAyYWMzNTYyYzc4OWRjNmQ5Mjk0NjUzOTEgbGVnYWN5LXRydW5rCisyNzgzMCBmZTAzYWI1ODBmOTU1YjkyYjY4NDgxODY5OTM5MTFiMDVkZDM5OWM5IHJlbGVhc2UyMi1tYWludAorMjc4MzEgMmNkNTFiMDUyZGRmNzdiOTM1YjcxNDA1Y2FjMzI5MzEyZWU2NDg2OCBsZWdhY3ktdHJ1bmsKKzI3ODMyIDZkNjExMjZhY2U2OTViMzg3NTkyZWJhNDIyMjY2NzUzYzY5MDJlMzQgbGVnYWN5LXRydW5rCisyNzgzMyAyMjZiYTM0YmQ5OThiNWVlM2ZkMGFhYzllYTZlMGU4MjlhMzQxZmVhIGxlZ2FjeS10cnVuaworMjc4MzQgOWQ0NzNkNGQxMWE2OTNlN2RjYzA2OTU4YTRhNGEzZGMzOGEzZGJjMCBsZWdhY3ktdHJ1bmsKKzI3ODM1IDMyZGRlMzdjOGQ5NTk3NDBmZWIxZjUzZjhmZDBjZDZmMWVmMzJiNmEgbGVnYWN5LXRydW5rCisyNzgzNiBjM2Q5ZTAxYzYxMjQwOTdlYjNiYzI3NDhjYWFhOGY1YjViMzFjNzI5IGxlZ2FjeS10cnVuaworMjc4MzcgNmY4MjRkNmYxMjg2MjkxMjRiNzExOTQxMzQ5OTRjYzdlZjZhOGJkOCByZWxlYXNlMjItbWFpbnQKKzI3ODM4IGRkZDZmZjA2OTNjNGYwMGRkN2IxZWY3M2JhYzYzMTI3Y2UxODNjMjMgbGVnYWN5LXRydW5rCisyNzgzOSAzNTQzMjMzNzFlMzg0OGQ1YmEzYjUxOGZiNWY3YmQzODEyYzkyMzIyIGxlZ2FjeS10cnVuaworMjc4NDAgMmFkZDI3YjU1ODY0YWIwMGQ5YjZkN2M5MDQ2YmUyMjIzOTI3ZDcyZiBsZWdhY3ktdHJ1bmsKKzI3ODQxIDc0N2ZhNjVhOWI0NzVhOTJlNDBjNGM5YzEyYWU4YzI1NjliZjM2YWUgbGVnYWN5LXRydW5rCisyNzg0MiAyMjU3MGU3NmNjYTE2MjFlNmRjM2YwOTZmNTkyOGQ4ZmNkZWViNTFhIGxlZ2FjeS10cnVuaworMjc4NDMgYTVlYTRkZDE3ODgzYTdhYWE2MTI5ZWVmMDhjZjkzNWJmYmUyMGIxOSBsZWdhY3ktdHJ1bmsKKzI3ODQ0IGYwZDEzOTlhMjQ0NWQwZGM5YjU0OGI3OTExYjIwMTJjNmU2ZjM2YWIgbGVnYWN5LXRydW5rCisyNzg0NSBmODI4ZjMyMjA2YmE1MmI0ZTM0NGI3ZGMwZGUxNDdiNDBhMTM4ZjI3IGxlZ2FjeS10cnVuaworMjc4NDYgZDk3MWI4NzAzNTA4MTIxY2JmYWZlNGNiNWVlNGMwYmM1NDJiNTkzOCBsZWdhY3ktdHJ1bmsKKzI3ODQ3IGQyMTZlNjdhYzIyMWMyMjBhMDk5Zjc2OWRhZDJjMzQ0ZWQyYTVkOGQgbGVnYWN5LXRydW5rCisyNzg0OCAyNzgyNWQyNjgzMTdhMTExNjA0NGNiMThiMzdmYTQwMGJmYTFkNzY1IGxlZ2FjeS10cnVuaworMjc4NDkgNWYxNDlhZGU5YWYxOTE2MTZiNzFhYzk0NWNlOThlMmE3YTBiNjEzZCBsZWdhY3ktdHJ1bmsKKzI3ODUwIDE4OWViNmZhOWRlZDg1MzFmZmFkMmIxYjEwZTAwYTVkN2EyMzllMDMgbGVnYWN5LXRydW5rCisyNzg1MSAyZDc3YmU0MWVlNWZiMDdlNThhOWQyNDlmZWQzNTYxNDczYzdhMDAyIGxlZ2FjeS10cnVuaworMjc4NTIgN2ZjMmNlYzRkYzgyOGQ0OWVjOWIyZDQzMGIxZWYzYzVmYWJmOGMzMyBsZWdhY3ktdHJ1bmsKKzI3ODUzIGExYmRkZjZhMzJjYWJmNmRhMTMzODk3ZmM2YjQyYjAxMjJiZGZkZWYgbGVnYWN5LXRydW5rCisyNzg1NCBlYmM4NjY3ZjMyNWFkYmJjNzBiOGJkNzIwNTU2NjQxZjNmYzhlZTIwIHJlbGVhc2UyMi1tYWludAorMjc4NTUgZTMzNGRkNGU1MTBmZjE3MjdmOTNlNTQwYWMwMDdmYzJkYjBjODRlNyByZWxlYXNlMjItbWFpbnQKKzI3ODU2IDRhNjZiZWYxNWMzYmI2N2RhMDM3NDUyMGQzZTFhMzBlMDBkOTQ3YjIgbGVnYWN5LXRydW5rCisyNzg1NyAxNjFhNWVmMDIzMGUzOTA2OWVhY2MwZThjMTJjZjkzMWIyMWE1MGRjIGxlZ2FjeS10cnVuaworMjc4NTggOWIyNDk3ZTI5Nzk1M2E5OWY4ZTFkOGRjZWM2NmRlMzkxNjVkYjRmNSBsZWdhY3ktdHJ1bmsKKzI3ODU5IGU1NjI5OGRjMGY4YWU4MjE0NDJlNDE5Y2JkZmViZGQ1MzI4NDFjNWQgcmVsZWFzZTIyLW1haW50CisyNzg2MCA3OWYxMjliMDczZGViZTNiZGMwYTgyYzUxYzk1OTM1NDBkZmM4NTY5IGxlZ2FjeS10cnVuaworMjc4NjEgYjZhODJmODE4NTQwNmM0Y2VjZWYzNzk5MjQzM2QwNWVlY2FhYWIzZSBsZWdhY3ktdHJ1bmsKKzI3ODYyIGY2NmIzYTM1MDljNzBjYTA2YjM2NTg3MjAwZmNlNTI2NGQyNTIyZjMgbGVnYWN5LXRydW5rCisyNzg2MyA0NWI0ZmM2M2JmNjcxOTM2NTRiMGVmNDc3Mjg2MGU4YTI4YmY0MmQyIGxlZ2FjeS10cnVuaworMjc4NjQgOTBiNDk2NjhkMGFjM2Y5OGE5NmJmNjI1YzUyOTM2YjY2Y2RkNDk2MiBsZWdhY3ktdHJ1bmsKKzI3ODY1IDVkYmNjZTIxZGZlZWE2NzIyMDQxNmRjMmE5ZGY3ZmVmYTM0MDkyYWYgbGVnYWN5LXRydW5rCisyNzg2NiBlMTQwOWFiMGZlNjk4NzM1ZDJjZmVhZGQ5MDYzN2EzZmY3NjAxMTcxIGxlZ2FjeS10cnVuaworMjc4NjcgYWQ0ZDIzZjFiZjZlNmEyYmM3Mzg2ZDQ2ODU2N2M5ZDBkNDA2NWY3ZSBsZWdhY3ktdHJ1bmsKKzI3ODY4IGIzODc1NGYxY2I2MTEyMmVhZWNiMmRhZDNkNzViNzJmZTk5ZjcxMjMgbGVnYWN5LXRydW5rCisyNzg2OSBiNmU1MWIwODZjZjRkNmNjNWE5ZTM2NzkzN2QzZmM3YmQ3MDFiY2ZkIGxlZ2FjeS10cnVuaworMjc4NzAgNTY0NjI5ZDFmMWFjNGEyMGZlMTBmZWY4NzYyMDViYzc1YzQ5YTU3YSBsZWdhY3ktdHJ1bmsKKzI3ODcxIDAzZDg1ZDE5NzA1MmE5MTJjNmVmZjkxOTU0Y2RkN2IzMzZkZTMwMjAgbGVnYWN5LXRydW5rCisyNzg3MiA4NjkxZWRhNGMwNTczMzQ3OWEzNTY5MWQ1NjFhODQ2Njc5MDY3ZDgxIGxlZ2FjeS10cnVuaworMjc4NzMgNzg5OWZkMmFmOTEyNWY4NjUxNTM5M2Y3NjY2ZWVhYmM3OWYwM2RlZiBsZWdhY3ktdHJ1bmsKKzI3ODc0IDcxYmEyZTk2OWMxMTQxNWQ0MGQxNzZjNzRmMzM4MDUzNzdiOWFjNjQgbGVnYWN5LXRydW5rCisyNzg3NSBlMDEyOGQ2MTZmODc5NTlmODZhZGVhN2Q3OWYxMjM3ODZkZjFlYjdjIGxlZ2FjeS10cnVuaworMjc4NzYgZjA1YTMxMWQ3OTg4NjI1N2UyN2IyOTQxOTJlN2E1MzFkMzMyMGE1OCBsZWdhY3ktdHJ1bmsKKzI3ODc3IDEyYWFmOGQ1YWQyYmU3MDc1NzI4NjI2MDY2MDc5MDU2ZWU0NGIyNTIgbGVnYWN5LXRydW5rCisyNzg3OCA0ZTYyN2Q4Y2Y5ZjRkMmE4NDk2ZjRhMzc5ZmRhZmU4NWYyMDdmZDEwIGxlZ2FjeS10cnVuaworMjc4NzkgZGYwNjI4NjYyYjQ4MWUzODU0OTQ1Mzk2YTY2YWY2MDFmOTQ4ZWQ3YSBsZWdhY3ktdHJ1bmsKKzI3ODgwIGJjYzM1YTBmMWE3OGU4Y2ZiMTllMGZmODM5Y2I5OTAzODY4MDQ5MzIgbGVnYWN5LXRydW5rCisyNzg4MSAwODU0NTI0ZWNlMDA4NDBkYTU0MjMyNmQ0MmI2ZjcxZThkM2M0ODcyIGxlZ2FjeS10cnVuaworMjc4ODIgNGJmYzhjNTE5YjZkZDU0YTk1ZDliZGI2ZWM5MTdjNTMxY2Q5YjAyZSBsZWdhY3ktdHJ1bmsKKzI3ODgzIGZiMDY5MWYxMGQ5MTJiNDlmNDNiODdlNWM1MGJhZGY4M2Y1MTA4OGYgYXN0LWJyYW5jaAorMjc4ODQgM2RkYWNlMWQxMmE5ZmU1MGM2Y2VmNGM5MDhjM2NhMDRiMTNhMzdlYiBsZWdhY3ktdHJ1bmsKKzI3ODg1IDgwOTFhNGEzYjhhZWMyZWYzMmUxN2Y4YjI4ZWFkZjk1MzBiYmRmMzUgbGVnYWN5LXRydW5rCisyNzg4NiBlYzFhMmQ3YWMwMmJjMDQ5MjM5OTJkNjM1OTg5NTFiYjc2OTFiZWUyIGxlZ2FjeS10cnVuaworMjc4ODcgMzAzMzVjNjhiNzg3ZjkxZmUwNjE4ZmNjZDZmMWM4MGNjODNhNzg4NyBsZWdhY3ktdHJ1bmsKKzI3ODg4IDI2NzBhNWRiNjg0MzE1Y2ZlNDU3M2RjMTMzYmE3NWFmNDlhMzllOGIgbGVnYWN5LXRydW5rCisyNzg4OSBkYWY3NTc5YzIyNDgyMTkyY2NlOTg1NDViZGU3ZjVlZTQ2NjRkNWRiIGxlZ2FjeS10cnVuaworMjc4OTAgNmRjZjEyOGQ3ZTAzMDhhY2Y4NWY2YzA2NjBkY2ZjNGE4YzM1MmM3NiBsZWdhY3ktdHJ1bmsKKzI3ODkxIGFjNzYyODc2OWJhNTNlMWJjNTY0YThmYjVkZjM5MzMxZDI5YjRiOGMgbGVnYWN5LXRydW5rCisyNzg5MiAxN2E4Yjc0YmJlNWNmMDRjNjhjMGU5NDQ2MDI0Nzg1NTk4ZDhiYWJlIGxlZ2FjeS10cnVuaworMjc4OTMgZGZlNjg4NGI1OWUwZTdlNDBiZWY2NmI3ZDMwNTgxYTZjZmEyYTY0YiBsZWdhY3ktdHJ1bmsKKzI3ODk0IGZlMmNmY2U0ZTY1ODYzZWQzMTcyYjViMTM0NTRiOWNlNDBlN2IxOTYgcmVsZWFzZTIyLW1haW50CisyNzg5NSA0ODk3ZTI5ZTE5Y2MwNjdjNmI5MzBmMGZlMjMwM2NlMGM0MDc1YjQzIGxlZ2FjeS10cnVuaworMjc4OTYgODdmODI4NzI2ZmU2ZWFiNjE5NTk4ZmVkNjE4YTExY2I5NzhjZTMzNiBsZWdhY3ktdHJ1bmsKKzI3ODk3IDMyNGIyZTdhZjY4MzU3YTBiNzNmOTMyODAxOGUzNWYwNWUwYmQzMzMgbGVnYWN5LXRydW5rCisyNzg5OCBmYTMyZTdhNjVhN2U4ZjhiZWEzM2M5YTVjMjgzNzdjNDBkODJjYTlmIGxlZ2FjeS10cnVuaworMjc4OTkgZGZlNWE2ODk5NzliYTgyM2NmYmVkNzUwZWEyMTUxZTA1YmRmZjUyNiBsZWdhY3ktdHJ1bmsKKzI3OTAwIGFiYjUyZDU2YmE1YWFiYzVmMjA5N2MyYTk3MDFmOGNlNGU2MTJlOGMgbGVnYWN5LXRydW5rCisyNzkwMSAxMmQ4NWI3ODUyNjM2MzRlN2EyNjlkYTcxMTgzMWRkYTUxYmY1NmRlIGxlZ2FjeS10cnVuaworMjc5MDIgN2VjYjZlYjFmZTc3Mzk3NDU3MzY1NmUyYmI0ZjEwN2EyOGYzYjYwZiBsZWdhY3ktdHJ1bmsKKzI3OTAzIDdmYWMxMzNkNTM5ZmZhY2IwYTI1N2E4YjVjNDU0MjY3NGFlODAyM2YgbGVnYWN5LXRydW5rCisyNzkwNCA1NmNlNGM4ZjRmMTY5ZjIxYzljMTc4ZDUxYTAwYjljOWViZGM1ODBmIGxlZ2FjeS10cnVuaworMjc5MDUgNzAyZTExM2QzOWIwZDU1YmRiOGQ4ZWI1YzE2OWFhOTllMGE3OTU3OCBsZWdhY3ktdHJ1bmsKKzI3OTA2IGQ4YmEzNzNiZjJiM2M3MjdiNDE2MzNiMzQzZTcwMTcyNTU1YTMwNmYgbGVnYWN5LXRydW5rCisyNzkwNyA5NGZmMDc0MzgzNzdiODdkNDhiNjU4YjQ2MDdiMjBjNTA5NGJiMzcwIGxlZ2FjeS10cnVuaworMjc5MDggYWUyZmI4ZGEzODYzZTk5NjQyNTlkZTQ4MTdhZTcxYjZiMDZkZTc3MSBsZWdhY3ktdHJ1bmsKKzI3OTA5IDc1ZmQ4NjI5MDFkODNlN2YwMzM2NWFjMmY0ZmRiMzg3ZDY2NDJkZjQgbGVnYWN5LXRydW5rCisyNzkxMCA4YTEwYTcyMWI4NGJjZWVjY2JlYmVhYjM2N2EwYmRkN2QwMjQ3NTRhIGxlZ2FjeS10cnVuaworMjc5MTEgMGNmNGUwNTM5Y2MxZjU4MGMzZjZiZDZhNjQ4MTc0MjUzMjgzMzE4YSBsZWdhY3ktdHJ1bmsKKzI3OTEyIDE3NWNkMGUwODhhYWNjZjkzZDRhMDAwNTZiMzk0NTQzNjljNTM2ZjYgbGVnYWN5LXRydW5rCisyNzkxMyBhZGYwYjIxNWE1MmFlMjU5MDRmZDI4ZDBiNzZlOTczOWViMzg3YmFiIGxlZ2FjeS10cnVuaworMjc5MTQgNWJkMGYyNDFlYzVhZGJiOTI4YTVmMTU3MmUyYzljZDM5YjE0MDcxMyBsZWdhY3ktdHJ1bmsKKzI3OTE1IGE3M2E1ODk4YmY0OTJhNTYxMmJhMWVhZWFjYWU5ZTRhY2EwZjVjOTcgbGVnYWN5LXRydW5rCisyNzkxNiBhNTMyNGIwOTQ5NDJlMzI4NTY3NDRjMDA1Y2RkM2QxYTE1M2U2N2ZmIGxlZ2FjeS10cnVuaworMjc5MTcgM2NiMDU1YWFlNzM5NTdkODAyMjM1MzdiOGIyYzY2NTVlMWYwNjA2YyBsZWdhY3ktdHJ1bmsKKzI3OTE4IDFmMDE3ODcwNTUyZTY1M2JiOGRhMTQxOWJhM2JiODEzNDkxZjY5MTggbGVnYWN5LXRydW5rCisyNzkxOSAzMmY5MmQ3NjZiODEzNmFhYjQzYjYyYjcxNTY4ZDYxOTZmY2UwOWM4IGxlZ2FjeS10cnVuaworMjc5MjAgNjJmNmJhYmVjZTFmYzMyNDU3NGRjMmJlNTI2NmU5YTAzNDUxYmMzZCBsZWdhY3ktdHJ1bmsKKzI3OTIxIDM0NDQwMDViNjUyNzAzZDJmYjQxZGJjOTFhN2E5YjVkNmVlZjE3OWUgbGVnYWN5LXRydW5rCisyNzkyMiA5NWRmODdkNDQ5MjNiZmQ0Y2VmYWEwZDlhNGI1ODU0ODZmZmRhZmYwIGxlZ2FjeS10cnVuaworMjc5MjMgOTUwYzVhMDlhZDk5ODk0MTlkZmFhZmY0YWYzOTAxYzM0ZGE2MmE0NiBsZWdhY3ktdHJ1bmsKKzI3OTI0IDgyYzQ4NjUzODYxYjU2ZThiYzBjMzg2YWEwY2U0NzhmMWU3Y2U1NGMgbGVnYWN5LXRydW5rCisyNzkyNSAxYzI2ZWI3NjgyOTM2ZDAxOTA3NjJhODE0ZTVmY2IxZjg0ZjNkMjhkIGxlZ2FjeS10cnVuaworMjc5MjYgYWYxZmI0ZmVjMmI0NGQ0MjYwZjQwNjlhNzYxNTllYTk4MmIzYTM2MyByZWxlYXNlMjItbWFpbnQKKzI3OTI3IDQxODk1NjA5ZDA4NGNkYTc1MDgzYWM5NjViNmJmNjAwMTNkNmEzMDMgbGVnYWN5LXRydW5rCisyNzkyOCBlOTYxY2QyZjIyZTQyOGE0MWUyNWM3NTExOTk3NDY2MjZiOTliYjBlIGxlZ2FjeS10cnVuaworMjc5MjkgMjhhNWM4YWZhMDU2ZTUyY2ViNzBkZTBhMmRiMWNiMTJjMDFmYjJkMCBsZWdhY3ktdHJ1bmsKKzI3OTMwIDhkNWUwZTNmNjQ0NTAwZjI2ZWY4YjI5NDdkYTE2M2Q2ZDQ3YWQyNTcgbGVnYWN5LXRydW5rCisyNzkzMSAwNmYxZTJmZDA1YmNhYWUxNmYzY2Q4M2ZkMzE2Yzk0YWMyOWY3NGM4IGxlZ2FjeS10cnVuaworMjc5MzIgNjE0MzU4ZTNjNGY2YWVmZjJiMGQ5ODg2Y2RmOTFmZmRlOWIzNjMxYSBsZWdhY3ktdHJ1bmsKKzI3OTMzIGZmOWVmYTY5MjU5NGZiYjgzZmViODVmNzU1NjE3OTQwZDJkZjk0YjAgbGVnYWN5LXRydW5rCisyNzkzNCBkMGQzZjc2MGQwNjc1ZGUzNzcwNjU0MTkxZjI3MmQwYTYzYTYxZTVlIGxlZ2FjeS10cnVuaworMjc5MzUgYzAwZGYyM2U4NTZlNWUyYmQxZGJiMTQ5NDQyMzNkOWM3MzRhOTVhYyBsZWdhY3ktdHJ1bmsKKzI3OTM2IDBiZDUyMWViNzE0ZWFjYTg2ZjhjYTI0NTNhZTRmYjUzNjRiZTFiZTMgbGVnYWN5LXRydW5rCisyNzkzNyBkZDk5M2QwMWU3NDA0MTE4ODM4NDQzY2Q1YzMxZDNhYTQ4Mzk0MWQwIGFzdC1icmFuY2gKKzI3OTM4IGI1YjliMDMzNDQ2OWM0NzZmZWZmMGZiZjZkMmM3NjljMjAyNTI5NDcgYXN0LWJyYW5jaAorMjc5MzkgZDJmNDFjOGE4MWYwZDk1MzhjYTUyYTMyMGNkYTJlMzM4OGVjNjE2OCBsZWdhY3ktdHJ1bmsKKzI3OTQwIDk2ZmRlOTgwOGUxNWM3YTAzM2RhNzNmZWE0Y2FlYjM1YmUzY2M1MmIgYXN0LWJyYW5jaAorMjc5NDEgNDIyODZkMmU0ZDJmZjc1YTYxODI4ZDAxYzRiYWM1YTA5YTJhODJiNiBhc3QtYnJhbmNoCisyNzk0MiA1M2YyMWY0MzQ5NTY2NTZhYzk3OTc5ZmQ0ODlkMjUzZTdiZGZkNjExIGxlZ2FjeS10cnVuaworMjc5NDMgNGYwMDEzNGI1NjFkYjUzNGEzMmY1ZmQ0M2JmYWUyMDc1NmQ5N2ViYSBsZWdhY3ktdHJ1bmsKKzI3OTQ0IGYyMDI1YzY3NmUyNDE1NzI1ZjZkM2ZjYzNmNDMwZTk1ZmJjN2FhNWMgbGVnYWN5LXRydW5rCisyNzk0NSBkODc1MDg5N2M4OTdjYWFiMTE0MzZmOWZkNTAzNzMwMjIxMDk0MTg1IGxlZ2FjeS10cnVuaworMjc5NDYgYTZhNGE5NTFjNjE2Y2U3YTkzZmNmNTdkMjQ1NTEzNTA4ZDdhZmM4NCBsZWdhY3ktdHJ1bmsKKzI3OTQ3IGUyMTM4MWZkODc1NjQxMGFkZDNlNzlkZDZhYWE2ZDA5NDYyMWNiZmMgbGVnYWN5LXRydW5rCisyNzk0OCBjOTgwOGY1MjEyMGFmYjllMjZkNGQ4ZGY2MzgzYzNkOThkOTg1NWNhIGxlZ2FjeS10cnVuaworMjc5NDkgZDVmMTdkODVmNmEwNjU4M2I2YmY3YWM2NmFiMjNiNzkyNmFjMWFhYiBsZWdhY3ktdHJ1bmsKKzI3OTUwIGRmNGE5ZDNhYmM1NmExMmE3YWIwOGQ4NDg0ZWUyZjk4MjkyMDc5YTQgbGVnYWN5LXRydW5rCisyNzk1MSA1ZDZlNDcwY2UwNWNkNWIxODBlMjFmYjQxOTRmZjIzOGM5OWY2NmMzIGxlZ2FjeS10cnVuaworMjc5NTIgYmJhYzRlM2NjYjYyNTIzNjZiOWNiZDkzMGQ0ZjMzYzY2YjFlNDgyMSBsZWdhY3ktdHJ1bmsKKzI3OTUzIDRiZjk0MTQ5ZDIxYzdlNDYzYmE4ZGFiYTFkYjE5MTQ5ZjMwYzY3ODUgbGVnYWN5LXRydW5rCisyNzk1NCBkMjZiNjJmMGM2ZGJjMzUyZjBjMjUwZjViNzQ1MDc0YzkzYmM4MmU5IGxlZ2FjeS10cnVuaworMjc5NTUgZjA1OWQ1NDM1ZDY1MzJlZGU3MDU4Mzg0M2U5MjIzODE3MTk4NzNiMiBsZWdhY3ktdHJ1bmsKKzI3OTU2IGI0MjY5ZmE2N2MzZTljYzRhMGUxZjQ3MzlmMzQyZmFmNjU5OTc1M2IgbGVnYWN5LXRydW5rCisyNzk1NyBiMjVjMzFlMDA4YzhjN2QyMTQ5N2UzZjU2YmFhNjYxZDdlZWQ5OGQ1IGxlZ2FjeS10cnVuaworMjc5NTggOTM0OGZhMjBmMjE0OTIwZDFhZWNiZDNmYmUzMGJjMmFjN2ZjMmY2OSByZWxlYXNlMjItbWFpbnQKKzI3OTU5IDQ3OWY4ZjRlZTRhZDQ1NWFjMzUxZTJjNzIzNWJhMjU0NGVkZGY5MGYgbGVnYWN5LXRydW5rCisyNzk2MCAwYmIzOTg2Y2Y2NTNhNjA1ZWRlZDg2YjlhNTFjYTU5OTM4YzJjMzk4IGxlZ2FjeS10cnVuaworMjc5NjEgYzhkNjk0YjY0MWYxOTI0OWQ5Y2RiYzk5NGFjZTVlMWUwOWIwZTI5OCBsZWdhY3ktdHJ1bmsKKzI3OTYyIGFhYmM5NzkwMmUxMDQ2YWJjYmU1MjM0NTUwOTlkNzU5YTcyYTZlZWUgbGVnYWN5LXRydW5rCisyNzk2MyA3Y2E0NmUwODIwMGRmZWU1M2UyMTZiMTdiZTMxODQ2YTYyZjI1OWY1IHJlbGVhc2UyMi1tYWludAorMjc5NjQgNDU3YTA0NzgzMTgzZjU2ZjcwMTYxOGFlNGQ1OGJhZDVmYmFiNzBkYSBsZWdhY3ktdHJ1bmsKKzI3OTY1IDhjMzhlYTA5MmYyMDdlYmY0NzA5YzBiZWNiNTc5YjEyZjg1MjYwZWMgbGVnYWN5LXRydW5rCisyNzk2NiAxMGRiZGU2OTg3NjY5MjRkZmNkMzc3YTI4NzlkZDJlOGRhOWQ4NjY1IGxlZ2FjeS10cnVuaworMjc5NjcgODFjNTZjYmMxZDVmZjQ4NWU2NDJhN2NhZDg1NWI0ZDU3MDNhMDMyZSBsZWdhY3ktdHJ1bmsKKzI3OTY4IDAwNDg4Y2E5ZTA0Zjc1NGI4NjcxMjEzMjFkY2EzNTgyMTdkZTU1YWUgbGVnYWN5LXRydW5rCisyNzk2OSA4NTExMjFlY2MxMTExN2E0NzgyNTg5M2M1MDk1YzM3ZTNmMDA1NjcyIGxlZ2FjeS10cnVuaworMjc5NzAgODBmZDBkMzYxZTE3ZjYwNGFkYWY2ZjFhNzYwMzBmYWIzMGRmNTZjZCBsZWdhY3ktdHJ1bmsKKzI3OTcxIDkyMGFkMDk5MzBkYzUwOWM5N2RkMmQ2NGRhOGMxYTZkY2QyY2U3MjMgbGVnYWN5LXRydW5rCisyNzk3MiAzZTcxOGMzZDUxZWZhYmQxMzhhMWQxNzJiMDExYTc0ZWQ0MDIzNWE3IGxlZ2FjeS10cnVuaworMjc5NzMgYTMyY2ZmMGM3NWRjYzdlZmI1ZGJlMmRhOWY3YWEzNzNjOGIxZjhjYyBsZWdhY3ktdHJ1bmsKKzI3OTc0IGNjY2JjMmM3OGMwOThiMzc5ZmExMjhjNmU3M2EzNWExZTVhYWU3MDIgbGVnYWN5LXRydW5rCisyNzk3NSAyNDQxMTdhZWJiZDU4NWJlZTllZWFmNWNhMDA0Mzc1ZjZlOTM2ZWYyIGxlZ2FjeS10cnVuaworMjc5NzYgY2EyMGJlMjQzODFmYjMwNWYzMjkxMmY3OTRjY2JlMmRjODc5NmM1YSBsZWdhY3ktdHJ1bmsKKzI3OTc3IDQzODJiMjM3NDM5MDFkZTcyNGVjNTg4YmE5YzdkZWQ1NTQwYWZiNzkgbGVnYWN5LXRydW5rCisyNzk3OCA5YjFiMmI1OGM4NjY2MjM2NzBjYTY0MGI1MTk5ZWRhODUzZDczYzJjIGxlZ2FjeS10cnVuaworMjc5NzkgMDBmOGRkYTE3ZWUyYjUyYWZhZGU5NTE0OGMxMDc5ZTBlZmYxNGRmMiBsZWdhY3ktdHJ1bmsKKzI3OTgwIGVjMmUyODMwMGI3NjU5YzY3OTczM2IwZTcxYThkYTcwNDhiM2Y0NTUgbGVnYWN5LXRydW5rCisyNzk4MSAyNWQ2N2M5NGE2ZDFhMGM3MzM1YzlmZDY4NzU3ZDNmYjk5MTBmODVhIGxlZ2FjeS10cnVuaworMjc5ODIgYzM5YWVkNDVkYmU5OWRjOWEzNDc4YTNkNTk3NDBkMTkwODJjYTkxOSBsZWdhY3ktdHJ1bmsKKzI3OTgzIDlkYmExMjE2N2RiNmY3ZDIyNmZhOTQ1MmVmMzlmNWVhNjZkOTNjNmIgbGVnYWN5LXRydW5rCisyNzk4NCBjYjMwOGExM2ExZmQyMDQ2ODdlYmM0NmYzZGJjYmVhZWExNWI1YWRlIGxlZ2FjeS10cnVuaworMjc5ODUgZmQwNWMyZDM1ZmU3MTkxZjJkYWVkOGVkYmVhODBmYzhhNzk1MzA1NCByZWxlYXNlMjItbWFpbnQKKzI3OTg2IDgzOTMxNWRlMGNhMTBlMmNiNDk4NTEzMTYyNzZjMjBkMjhmMGE0NzMgRFNfUlBDX0JSQU5DSAorMjc5ODcgMWVhNTY5ZWE1MWZkOWRlODAwODc0MTk1MjY4Y2E5YjIxOGRmZWI5YSBEU19SUENfQlJBTkNICisyNzk4OCBlN2I2YmMyYjM1ZTJlNDJiZTg3N2E0ZDMxNmIxN2EzNDk0NDY5NGFjIERTX1JQQ19CUkFOQ0gKKzI3OTg5IDMwNzMzMmYzN2I3ZDkzN2Q0ZmUzYjUxNjU0OWYyMjY4YzJlNjkyMjEgRFNfUlBDX0JSQU5DSAorMjc5OTAgMzI1N2VmZGE0NTEzMzFlN2JjZDNiNjBkMDE3NDA2NTczNWM4MmIzNiBsZWdhY3ktdHJ1bmsKKzI3OTkxIGU0YThlM2U0MjEwZDk3N2U3ZTc5NzY2YzRjNjczNTc0MTE4NDQwMWIgbGVnYWN5LXRydW5rCisyNzk5MiBkYTg4ZTk5MGY5MmNjZDJlNzE4M2Q2Mzc3MWIzNjRjOTlhMTg4N2QzIGxlZ2FjeS10cnVuaworMjc5OTMgNmUwZGVlZWI5Nzg3ZDNiM2Q3ZmI3Mjk3MTU2M2VjNGFiNzFlMTdkNCBsZWdhY3ktdHJ1bmsKKzI3OTk0IGY5MjhmN2VlYTJkNjk4NTg2ZDMwNGZkNTRiNzhhZDlmZjAwZDk5YWMgbGVnYWN5LXRydW5rCisyNzk5NSBhNTA2YWI5YmI0YTQxNDcwNDllZDdkNzQwNWU1OTMyYjE4ZTE3YTRhIGxlZ2FjeS10cnVuaworMjc5OTYgYTAyYWJhNzJjYmIyNDk5ZTVhMzAxNzc2NmQ4NzJmM2IyZGM0MjlkZiBsZWdhY3ktdHJ1bmsKKzI3OTk3IDAwMTY3YjJlY2FjYzVlYmMzNzliNmZmYjUwN2FjNTA1NWM2NDc5MGEgbGVnYWN5LXRydW5rCisyNzk5OCAxMmUxNDYxNzFmM2RjOTA2YjkxYmFlMGM2YzlmNGQxZmJlNGFhNjliIGxlZ2FjeS10cnVuaworMjc5OTkgZDdjYTBhMmNlMDc0NmI4NmIzMTIyNzU2NTc5YmE4MmQ4ZDUxNjUyZCBsZWdhY3ktdHJ1bmsKKzI4MDAwIDU5ZDUzMzU4MGU3MmQ2MTUzYzhjZTRkNjMxN2RhMDU5YzNlYmUxNTAgbGVnYWN5LXRydW5rCisyODAwMSAyNjJhZDE2YjRkZTA5YTMyYjFjMTM0YmMyNTAwMWY3YTAxNzk1NzQxIGxlZ2FjeS10cnVuaworMjgwMDIgZjVlMjljNzMzNmRkODhlYmUxNjBlNDNlNTJhMTZkZTQyMzllMmQyMSBsZWdhY3ktdHJ1bmsKKzI4MDAzIDczYjMwOWNmMDIxMzU1MjljOTlkODRiY2MzZjM0Zjk4NjNiZDE1MTMgbGVnYWN5LXRydW5rCisyODAwNCAyYjA3NjZhZmFhMjIyZDBhYjA3MWViMDdjYThmODI0YjNjYjBhM2M3IGxlZ2FjeS10cnVuaworMjgwMDUgZmQ0NTc1YjU2YTRkZTAxOGU2NzhjZTQ3MzY2ZTI0ZTg4NGY5OGFhZiBsZWdhY3ktdHJ1bmsKKzI4MDA2IDk0MGM0ZjU0NmU3ZjE3ZTc0ODNjZTlkNDQ3OTY1N2MxNjQ4ZjYyM2UgbGVnYWN5LXRydW5rCisyODAwNyAzZTRkNDMyODcyZWE3OTE4ZjM3MzJkMjg1MWVhOGZkMzUxOGEzNDE2IGxlZ2FjeS10cnVuaworMjgwMDggYjY3MDdlMTU5OTA5YTY1Zjg4YzhjN2ZkYzI2Mzk4NWVmMDZlNjhiOCBsZWdhY3ktdHJ1bmsKKzI4MDA5IDQzNGVjNTIzZjMyYzdkNjA2ZGYyODYzMGE4MDQ2NzQwNjY1YmI4ZTMgbGVnYWN5LXRydW5rCisyODAxMCAxM2RlMmY2ZjA3ZGRkYzk4MTkwM2IzNTY4YzQ4NmI0ODRlM2YxYzk0IHJlbGVhc2UyMi1tYWludAorMjgwMTEgNjU0MmRmYTQwZTc3Yzc2MWQwMTQ4MDk2ODZhMjI3YTY5MDFiYWMzYiBsZWdhY3ktdHJ1bmsKKzI4MDEyIDhhNzRmMzM1Y2ZiYWI5ZTEyNzc1NDE3Yjk3MjZlMzk4NWEzNzQ4NTMgbGVnYWN5LXRydW5rCisyODAxMyA3OTFiYmVkYmJiZTllMzc2Y2Y4YmQ0OTRiMjRiODJlNzNhYzc2N2MzIGxlZ2FjeS10cnVuaworMjgwMTQgNDBlYjgwZGM0MjUwMGU5ODBlMThjYWNkM2Y2ODM5YjMxMGY0ODQyYyBsZWdhY3ktdHJ1bmsKKzI4MDE1IDhhMWMwODZhZDIxM2E3NjVkNDFlZTYwOTgwZjUyMmEzMGZhZTE1YWMgbGVnYWN5LXRydW5rCisyODAxNiAzNWRiYTYwMDdhYzM3ZDJmNGQ0ZDhjMjZlZGQ5NDlmN2FmNTkxOTYxIGxlZ2FjeS10cnVuaworMjgwMTcgZGJjMGYyZjExNDE0MjBjZGYyOTc4YjU0MjZlMDQ1ZjJjNmRlM2FkNSBsZWdhY3ktdHJ1bmsKKzI4MDE4IDY0MmRkY2ZlODY0YTRmZWFmYTg4ZWY2YmNmMDEyYjU1ZWE3YjQ5NDggbGVnYWN5LXRydW5rCisyODAxOSBiNjRkYjU1MDk3MmMxNDBmNDRhMWZmZGE5ZWU5Y2Y2NTc5NWNkODZhIGxlZ2FjeS10cnVuaworMjgwMjAgNzM1NDQxZmRhYjdlNDc0ZmU0NTBhMTZkOGE2NmI0NDU3OTVlMDdhNyBsZWdhY3ktdHJ1bmsKKzI4MDIxIDgwYjEyOTQ0YTQyYjBhZjcxNTA1NzUyMjg2Yjg4ODg5MDFiY2U5M2YgcmVsZWFzZTIyLW1haW50CisyODAyMiBjOWQyNDI4YTZhODVlZTg4NWVlZTRhODI4OWEyMWE2ODkwZGYyODQ3IGxlZ2FjeS10cnVuaworMjgwMjMgMTFiMjYyZmVkNTgwOWNjYzQ1NDg1MmY3ZDU0YmM2ZWY3MGE5MGI4NCBEU19SUENfQlJBTkNICisyODAyNCBmYjQ1OTFjMDQ3MGUyODAwZmM4ODc1NzRlMWRmZTUwNWFiZWYzNWYxIERTX1JQQ19CUkFOQ0gKKzI4MDI1IGQ2ZTVlOWExYmNhMDhkNWM0MjcyMmZmYzM1ODU4YmEyNzI3ZjEzNGQgRFNfUlBDX0JSQU5DSAorMjgwMjYgYjQ3YTZhMmExZTU2MGMyOTExZTYwZDc4MjZiNzU4NjljMWQ2NmZlNCBEU19SUENfQlJBTkNICisyODAyNyAxODY5Y2VjZDM5MzM0OTIxMDRkZmMzODMzMTc2NzJjMmRkM2U3OGUyIERTX1JQQ19CUkFOQ0gKKzI4MDI4IGY3MzI1OTc2ODQyNjdhOWJiYjRmOTBkMDM2YjgyMzFiOGNmYjljN2QgbGVnYWN5LXRydW5rCisyODAyOSA2NDQ1ZTQ0ZmNiNzgzNjBkNzI1ZTljODBhNWYzZDQwYmY1MmEwZWU2IGxlZ2FjeS10cnVuaworMjgwMzAgNDgyYzk0MWQ1OTNmODYxYzRmZjUxYWE1OWE0ZTI5M2UzZjc3ZjY1MCBsZWdhY3ktdHJ1bmsKKzI4MDMxIGYzZTY5YjlhY2M0MDZiM2UxZGYwZDE0MzIwNDIzMjEyMjAyM2E1MjQgbGVnYWN5LXRydW5rCisyODAzMiBkZGNiOWNlMDQ1NDY0OTYzMmRiMjhmYjY2NDY0MzM0N2E3NmFjNWJlIGxlZ2FjeS10cnVuaworMjgwMzMgMGRmOWE5YzA4YzEzOWU5NjFkM2YyMjA4ZDJlMTMxNjA4NDA5Njg5OCBsZWdhY3ktdHJ1bmsKKzI4MDM0IDdmODk2N2Y1OWNmODJmMGYyMjBkN2RlM2RjY2U3OGM3YWYxMTFhNzAgbGVnYWN5LXRydW5rCisyODAzNSA0M2NhYTIxMmI5NTljZjdiMGE5YTg1NzA0Y2NiZmIzMjQ1MTU5MjEwIGxlZ2FjeS10cnVuaworMjgwMzYgMTEwYzZlZGFmNjJmMzg1OGU0ZDYxMWE2ZTgyYTk0NDg5NDdlZTdkYSBsZWdhY3ktdHJ1bmsKKzI4MDM3IGY2YTk3Y2QzYmEyNGI0NTU3ZTA3M2VlMGJhMGUwYjY5ZWJlOWVjMmUgcmVsZWFzZTIyLW1haW50CisyODAzOCAxZWJjMTI4ZTQ4NDJjMjg0YTJjNGM0YjRmNzc3Y2I2NGIzNjVjYTU3IGxlZ2FjeS10cnVuaworMjgwMzkgNzc4MDkzNTMzYTQ2Mzk5YWJiM2IxMDdmOGI0OTE0MDZhNzlhNGY2OCBsZWdhY3ktdHJ1bmsKKzI4MDQwIDdhZTNkNzQ4NjgwMWU3ZmJlZmNjZDc3NGJiODM0NjBkNjFjMzk2MzcgbGVnYWN5LXRydW5rCisyODA0MSBkYTkwNjUzZmMyYzZlYmNlYjBjMmQ0ZWY4NzBiNmJjNGNjZmUzZDA3IHJlbGVhc2UyMi1tYWludAorMjgwNDIgZjMzYzAxY2M0MTRjODk3NTQ1NjQyMDk0ZTliZDQ2ZWVjMDdiOWU5MSBsZWdhY3ktdHJ1bmsKKzI4MDQzIGE5ZjI1NjdjMmY4Mzc2NTgyMTdlNmRjYTMyNzU3ZWIxYWY5OTYxYmMgbGVnYWN5LXRydW5rCisyODA0NCBmYjFkMGU1NWIxNTIxZDZiYWJkYzY5OGIxOGIyMzk2ZTBhZGZjNTU2IGxlZ2FjeS10cnVuaworMjgwNDUgYmVlZDFjMWU3YzZkZjY3NzE3MzNmZjJlMjQ5YTI4YzAyMmM1ZTgwNSByZWxlYXNlMjItbWFpbnQKKzI4MDQ2IDBkOTg2NjBlMzY1Mzk1ZGRkOTQ1Y2IxNzYzYTlkZWVkYmZlYzY3ZTAgbGVnYWN5LXRydW5rCisyODA0NyBhMGViOGUzODJkNzRjYjEyMmI3YjFjYTQ3MDAyYzNjYjU4MmFiNzk5IGxlZ2FjeS10cnVuaworMjgwNDggMjdkYTJiODFhNDk2YTkyNWUxMTFiNDViOGU3ZjM2NzhlOGY3YzAyYSByZWxlYXNlMjItbWFpbnQKKzI4MDQ5IDdiYTNlNWZiYWFkODBjMzMwYWRkYzdjNWY2Njg3ZjQzZGI0NWMyYWQgbGVnYWN5LXRydW5rCisyODA1MCA4Y2YwMDMzOGI3MjhkMzg3ZGNjYzEwOWUxMzRmYzgxZGU5MzczYmIxIGxlZ2FjeS10cnVuaworMjgwNTEgNGIzNDJlZDMwOWUwMmNmOWI2YmIyMmE3N2QzNmU5MDgzZmE2ZDU1MCBsZWdhY3ktdHJ1bmsKKzI4MDUyIDY5N2QyMjNhMmY3NjY2MDM2NmQzMjUyZDdmYzZmNWQ3Mjg4NjNkYzEgbGVnYWN5LXRydW5rCisyODA1MyBlZGY3NTcyMTNhOTJkYjAzY2Y4OGU3MTA5YWZlMGM5YmRlZDdhNTRmIGxlZ2FjeS10cnVuaworMjgwNTQgMjI0YzUxNmJjMTFmMWUxNDQ2ZWM3M2Q0YjkzMzhiMjAwZGYzZjA4ZSBsZWdhY3ktdHJ1bmsKKzI4MDU1IDlkODRhNWJkNzY3ZmE4ZDA2NTg2MWYyNDhlNDA5ZTQ1MjgxN2IzOTcgbGVnYWN5LXRydW5rCisyODA1NiBhYjVlZWEyZGQzYzAwYzA4ZDE0MTRkYmFmMThjYjBkMmRmZDg0ZDQ3IGxlZ2FjeS10cnVuaworMjgwNTcgZmQxYjVlZmEwY2UzZWFjYzg5MzJjODUwNzIxZDQ0ZDExMjBlMjZkYSByZWxlYXNlMjItbWFpbnQKKzI4MDU4IDFhYjI3YzE3NzBkZjViODY5YjdkZTdjYTA1MGIwMTAxMWI1OWYwZmIgbGVnYWN5LXRydW5rCisyODA1OSBmNjcyZTFkYmFkOTIyNDExYjQzMmM4MjgyMTEzNmExYzg1NWZlZDMzIGxlZ2FjeS10cnVuaworMjgwNjAgMThjYTRlNzgzZjk4N2JkMzNhNmM1MmRkMmVmNTdkY2I2MGExZmZhOCBsZWdhY3ktdHJ1bmsKKzI4MDYxIGU2MWIxMThlOWNhYjI5MjZjYjU0ZWJmZTIwYTRkZDljMjk0YjkyYTQgbGVnYWN5LXRydW5rCisyODA2MiA5NTU5MTRiMGE0ZDY0NmU3OGIxYWI4MGQ3Y2QwNmUyMjYwNWNkNDU2IGxlZ2FjeS10cnVuaworMjgwNjMgOGJjMjY1YjA4NGQ5N2MxZjdjZmYzYmZlNGIyMTE4ZjFlYTQ5YjM3MCBsZWdhY3ktdHJ1bmsKKzI4MDY0IDU5ZDkyMjg3NzhhZDYzZThiZDc2OGYwMmE2NWQ3ZmIxY2M0NTA2NjYgbGVnYWN5LXRydW5rCisyODA2NSA3MjkyODdmN2ZjMmU1ZmFiMDA0MTUyOWQ5NWJkNDBkYzA1Nzg2MDZmIHJlbGVhc2UyMi1tYWludAorMjgwNjYgMmY0MTFmMmQ3OTFhZGU3Njk2NTAwZGZhNzk2NGMxYThlMjc0NjA1OSBsZWdhY3ktdHJ1bmsKKzI4MDY3IGE2MTg5M2Q3Y2VmMjUwY2QzNGRjMjE0OGMwZmY4ODkxOGQ4ZTA1YzUgbGVnYWN5LXRydW5rCisyODA2OCBiMjY1ZTc2YmFiODgzMjkzNDFiYTg0NDdhNTJlOWM5ODNiODc2NTNlIGxlZ2FjeS10cnVuaworMjgwNjkgNmE2ZDAyYmUzMjFjY2QxMDE4MjM3M2M1MGI5MmUwNTJiNmE3YzYyOCBsZWdhY3ktdHJ1bmsKKzI4MDcwIGQyNWNmOTRkMjBiMWVhZWViMDg4OGRjNjIxYzIyNzA5NGMxMzhmNGYgbGVnYWN5LXRydW5rCisyODA3MSA0ZmJmNTM0MjExYjk3Yzg4MmMwOTg0NGJjMDA0YjE2ODBhZjExZWM5IGxlZ2FjeS10cnVuaworMjgwNzIgNTc5ZjA5YzBmZGJjZDkyYWRkODY2M2M0MmI3NjAzMWM2MDMyZjU1MiByZWxlYXNlMjItbWFpbnQKKzI4MDczIGJkYmE3MmZmZDIxYmY5ZDYyNjc0YmIxMDYzYmI3ZDdmNjFkNjZhNGIgcmVsZWFzZTIxLW1haW50CisyODA3NCA5NWM0NjIzZjgxODUwOGYyZmI5NDRmMGE3MmYzMGE1MGQyYTc0MDJlIGxlZ2FjeS10cnVuaworMjgwNzUgNzBiNjc1MzExN2NjMDFiZDdmNzc0MjQ3NmEzOGJlMGNkOWJhMDRiOCByZWxlYXNlMjEtbWFpbnQKKzI4MDc2IDY0N2Y5MzY3NzUwZTg3NDAxMzFjNDRkMWNhZWQ2YTk4ZDg1Zjc4N2UgcmVsZWFzZTIyLW1haW50CisyODA3NyA2ODhlZWZiYTA4NjliYjVkM2YyYzgxNmE1MDBlYWMyMDM1MjAwNTBkIHJlbGVhc2UyMS1tYWludAorMjgwNzggMzc5NmQzOWYwYjgwYzgxYzg1ZWRjOTdjNmQ0YjBhOWI5ZmM5NTdlNCBsZWdhY3ktdHJ1bmsKKzI4MDc5IDMyNjliZGQ2NTk4OGVmZjg5NzYzNzA4NGE4MzFhY2ViNWJlNDNhOTkgbGVnYWN5LXRydW5rCisyODA4MCBmZWMwYjBhZWYxNGJhNDg3ZTA2Njg2NGE4NmY0ZWIzOTVmODM4MTAzIGxlZ2FjeS10cnVuaworMjgwODEgOTgwNzY3YzZjZDk3NWI2MTdlM2EwN2NmMWI2ZmQ4ZmEzYTA1ZDljMiBsZWdhY3ktdHJ1bmsKKzI4MDgyIDQ3OWNiNWZmMmU2MDljNWEyMTdhODI5NDBiZmY5MzkzYWI3YzIzMTkgbGVnYWN5LXRydW5rCisyODA4MyA3MWRjYTdjNzZmYTIyNzkyYmU5M2ZiOTBjNGM0YmU3ZTkwOTI1YzFjIGxlZ2FjeS10cnVuaworMjgwODQgN2IxMGU3ZmY3OTRkYzUwMDBmYWVjYTFmMzA2MDJmZTFlZDgxYjI3MCBsZWdhY3ktdHJ1bmsKKzI4MDg1IDZkMjZkNGI5YzVhMzZjMThlNTUwNzM5M2IwZTg3ODJlZGI1MjYzYWEgbGVnYWN5LXRydW5rCisyODA4NiBhZWUxOGVhM2QyODQ3NjUzNTA3ZjJiMWFiMTY5ZTQxOGEzZGY0MTFhIGxlZ2FjeS10cnVuaworMjgwODcgMDQ5MmFkMWFjNjIzNWQxZmFmM2E4NDM5MjgwNWNjYzJhZWU1MTg1MyBsZWdhY3ktdHJ1bmsKKzI4MDg4IDU2NzcwNGJmYTU5NWE1YWI3YjRjZTcxYTk2YzQxNjJiMjQwMTc0MjMgbGVnYWN5LXRydW5rCisyODA4OSAyNzRlNDJhNjkxZTBjODQzNjUzZmY4YjJhMjRjOWM2YjJjOTQ5Y2QwIGxlZ2FjeS10cnVuaworMjgwOTAgMzY0OTNhN2M2MjUzOWJjYTk5NWE5M2IxMzY3MWY0YzRjZjkzMDUzNiBsZWdhY3ktdHJ1bmsKKzI4MDkxIGJlNDdkYjM4MzA3ZTE4MzFhNmI0ZjQ3YzZhZTYyODFlNWJhODExMTEgbGVnYWN5LXRydW5rCisyODA5MiA4YjQ3MDI4MTY0NWU2MDFkZjMyZGQwZGQ4NjVlN2QwMWMyMDBiZjRkIGxlZ2FjeS10cnVuaworMjgwOTMgNzM0Zjg5YzE5NGRkOWYxMDNlYzMwNGJhY2Q5ZWY4OGM0MzVlZjljZSByZWxlYXNlMjItbWFpbnQKKzI4MDk0IGRlYmNmNzIwNjdmMDU5NjdiNWQ3NTY0N2Q2MzQ0ZDFmMDk4MGJmMDYgbGVnYWN5LXRydW5rCisyODA5NSA5YzZmMGUxOTk5MDM1YTRmMTQ3NTUyNjI3MjE1ZDc1ZGZhNzRkNjhhIGxlZ2FjeS10cnVuaworMjgwOTYgMGNkYjZlOWJjYjUyMTRkYjM4NzBlNWI4YTZhMTQ1MmVkMDhjMzdhZSBsZWdhY3ktdHJ1bmsKKzI4MDk3IGEyOGM5YzMzNmFiNzExOTE3MWRiN2U1ZDZjYzM0NTkwMzVjOWQ1YTggbGVnYWN5LXRydW5rCisyODA5OCBlNzFiYmJhMGEwYjk3NjY4Yzc2ODQwZjRkNmEzMGRlOWJkYjNkNGE2IGxlZ2FjeS10cnVuaworMjgwOTkgODJlM2ZkYjI4MTY0NTBjMmNiNWVkZWQwZmM2ODBjOGQ1Mjk5YzAxMCBsZWdhY3ktdHJ1bmsKKzI4MTAwIGE5ODlhMmVhYTJhYzEwOTI1NTg0YjBkMjNmZjc4MzdkYzE0MDcyMTkgbGVnYWN5LXRydW5rCisyODEwMSBiYTMwMzhhMjdjMWUzOWI3NTVmNDhhZGViYTZjMTU2MzJiZGU5NTFhIGxlZ2FjeS10cnVuaworMjgxMDIgZWVmNzNlODgyM2Q1YWVmOTFkNDliN2VjMWM3MDFmOTc4NzNkOTMyNyBsZWdhY3ktdHJ1bmsKKzI4MTAzIDMxYjlkMzY5ODYxZDg0OTk3ZDk1YmQxYmE0NTQwMmI3NTFiZTNjMWYgbGVnYWN5LXRydW5rCisyODEwNCA4MGM3YTgyZDYxNDQ4OWU5NDUwNGYxNjhiYWQ2OGZmZjE4MGQ2MDNmIGxlZ2FjeS10cnVuaworMjgxMDUgMzQxMjhjY2YyZWU2MTkzYjJmZjQ3ZWFiOGZhNGVmM2U3MTIxZTllZiBsZWdhY3ktdHJ1bmsKKzI4MTA2IGEyZjliYjU0MjMxYjEzYTliYzczN2Y1YTEwNjA1ZTg5ZTI1MmEwMTUgbGVnYWN5LXRydW5rCisyODEwNyA2ZWI5NTg3MTZkOTdjODQwY2VkMmJlY2Q0OTM0MzM1MjgxMDdkYjNmIGxlZ2FjeS10cnVuaworMjgxMDggNDE4MWUzYTQyZDBhMjNkYWJkYTBmN2NmODlhMDlkMTQxMmIwNTBjNiBsZWdhY3ktdHJ1bmsKKzI4MTA5IDU2NGFiYjk4ZGViODljNGUyOWQ5YTdjNjlmYWI1NWIyODNiN2I4MzUgcmVsZWFzZTIyLW1haW50CisyODExMCBlNWJjNDcwZDFkMWUxZmUwNzY2Njg2YzI0NDk1YTBhNjZjYWY0YTllIGxlZ2FjeS10cnVuaworMjgxMTEgMGQ0NmU0Yjg5Y2FlN2E0ZWExZTNlZDRiMmFjOWVkMDZkNTE2YWQ0NSByZWxlYXNlMjItbWFpbnQKKzI4MTEyIDJkY2Q0ZDkyODE0NzAzZjk5MWRmNGVhNjhmZjJiMWQ4ZGQ3ZTE0MzggbGVnYWN5LXRydW5rCisyODExMyBhYThiZDBkYzRmOGExMDZmMDY4NDBhMzdhZTlhNTk0MjdlNGY3YzA4IGxlZ2FjeS10cnVuaworMjgxMTQgNmM5NjU4N2ExOTdmOWNkYTQzMmI4ZjUyNTRiZmVlMGJhNWI0ZDlmNSBsZWdhY3ktdHJ1bmsKKzI4MTE1IDExYzcwMTAzODgwNTY1MTkzZWE0YzVmMDc5ZTdiMjM2NmRkMmYxZTkgbGVnYWN5LXRydW5rCisyODExNiA0MDY3ODhjYWVmNmYyNmVjZjBkNTA3MWJmOTlmZWJlYzE2NDc0YTg0IGxlZ2FjeS10cnVuaworMjgxMTcgOTQyOWMzY2Y0MmE3MTJiZjQwYTBiOGYxNjhmYWQwZTg1ZjE4N2ZmYyBsZWdhY3ktdHJ1bmsKKzI4MTE4IGRiMjdhNDJjY2Y0OGFjMzBlYWExNzJiMTQyZGYyNjg4Mjk5MmFlNWYgbGVnYWN5LXRydW5rCisyODExOSA3NDE0M2RiNmFlMmY5N2ZiNmE1NDBhZjc1OGVhNjA1N2RkZTI2NGRjIGxlZ2FjeS10cnVuaworMjgxMjAgNGM3NDZiYTI0ZGUyMWM4MTBiNTBhNzlhYmYwNTdjZTMxNjg0ZWVlOSBsZWdhY3ktdHJ1bmsKKzI4MTIxIDM0M2U2NGM5MmViMjhlMDliNWUwYzc0OTQzOTYyMjM5YmYwY2ZjNDQgbGVnYWN5LXRydW5rCisyODEyMiAxZDNkOTgwYTMxODYwNDFjMDYyMzk2YjljZDU3Zjk5MjZhYTdiOWRlIGxlZ2FjeS10cnVuaworMjgxMjMgMTI5ZDhkMmUxOTA0YzcyNjk0NGMxZDU5YzcxY2MyZTZlMDdhNWM3NiBsZWdhY3ktdHJ1bmsKKzI4MTI0IDVjNzczMTZiMjFmNzBkNzU4Y2RiNjVjNWQ4OGEyMGZmMjNjODVkMTggbGVnYWN5LXRydW5rCisyODEyNSAzNzRmODc5YzVkOGJkOTdmMGFjNGJiZjljYzc1MWJhNDQ2YTE0NmQ1IGxlZ2FjeS10cnVuaworMjgxMjYgMmQzYzRhN2FlYzBhNzA2ZGY1MjUyYjY0NTQ4M2I0YjM4OWMxMjE5OSBsZWdhY3ktdHJ1bmsKKzI4MTI3IDUxMGU3M2FlM2U5ZTlkMTIzZWEzMzYwMmVlZjE0OTM3NjEzZmU2MTggbGVnYWN5LXRydW5rCisyODEyOCA5ZTJmNTM5NjM0ZTgwYTFlZDYzY2M4NjFlMDkxMmEwODBkNGVlMGJiIHJlbGVhc2UyMi1tYWludAorMjgxMjkgMTEyNWQ5NDg5ZGZhNDAwN2JlNjdhYmY3Nzk4ODg4NWFlNzUzZThiYiBsZWdhY3ktdHJ1bmsKKzI4MTMwIDY5MDc5YWM3YzUxMmU1NjBhODFjZTQwNzJhYjYzZWI2Y2IzMDRiMzUgbGVnYWN5LXRydW5rCisyODEzMSBiYmQ1ZjhhZjU4OGFjMTBjZjE0ZDMwYWY3MDk2OTQwZmE1ZDk2NzNkIGxlZ2FjeS10cnVuaworMjgxMzIgYjU2NDBlNzRhYTVjMjhiZWZjMTliY2ZmY2JiNDQ2YTg5MTUyNzU3ZSBsZWdhY3ktdHJ1bmsKKzI4MTMzIDNiOGE3MDdiNDFjNDYyZjBkOTBlNmZlMDliMGQzZGVjN2QwNjk1Y2IgbGVnYWN5LXRydW5rCisyODEzNCBiMmY3ZGY0Njc3MjIxY2NhZGFkYzU5MzY1YWVhY2RmMGU4NWRmNDcyIGxlZ2FjeS10cnVuaworMjgxMzUgOGQ4NTBkNThmMTA5YzdmNTdlZDQ3YWMyYzg3MDE1OGNjMGM1ZGU5NSBsZWdhY3ktdHJ1bmsKKzI4MTM2IGQ3MTVjYTlkYjNhYWEyZDE0YzA4NmEyOTUxZmYyYWM4MzNjOGRmNjEgbGVnYWN5LXRydW5rCisyODEzNyAwOWZmMGVkMzNlZmNiOTE5N2VhODRiN2U0Y2ZkOWIyODJlNjcwZjYxIGxlZ2FjeS10cnVuaworMjgxMzggYjAyNzNmMzk3Y2YxMjJkYmEyMzJhOWMzMjlmZWQwYTMxZTIxMDQ1ZiBsZWdhY3ktdHJ1bmsKKzI4MTM5IDQ5MjMxNjBlMDcwN2Y3YzNlNGZlMDFjNTk2ZDVlNTRmM2IwMWMwMWMgbGVnYWN5LXRydW5rCisyODE0MCBiMGQ1ZmI1NzdhYjYwMWNkYTM4YmFlZjQyNGZhYWY5ODk0ZTI1YjM2IGxlZ2FjeS10cnVuaworMjgxNDEgZmYwNWVlZjNhNmQxZWIwZDBhYzUwMzhkMWU4ZjEwNjEzMzY0YTgyMyBsZWdhY3ktdHJ1bmsKKzI4MTQyIGVhYTg3NjMyYjFlOGVkZjhlMmJlODNmMzNlOTAyZDI0MmRkZTZkYzcgbGVnYWN5LXRydW5rCisyODE0MyA1NjU2MDliYjhkODk4ZDNjMzc1YjYxZTU4Mzg5ODQzOWVjZjMwNjM4IGxlZ2FjeS10cnVuaworMjgxNDQgZWVjNjgzMjgxOGEzNzAwOWU4ZDcwYjNiYjkzYjRhMDRmNTUzYTI5ZSBsZWdhY3ktdHJ1bmsKKzI4MTQ1IDEwMzkxZDU4ZDE4NDExZTM3NjQwMjQyNjgwY2YwZGI4ZWYwMmMwM2MgbGVnYWN5LXRydW5rCisyODE0NiBlNzU2ODY3YWNlODEwYzhmYmNmNTk5NTkwYzI3N2UyNmMxZWEwMWYzIHJlbGVhc2UyMi1tYWludAorMjgxNDcgYzY1OWYwNGVlNDk5MzY4ZDU0NjM2MDE1ZDBjZWRhM2ViNTQzMWZiMCBsZWdhY3ktdHJ1bmsKKzI4MTQ4IDZkOTk3NGI0NWZlYTEzMzM5NDlkYWQ2NjZmNTY5Y2ViYzYxODllZGUgbGVnYWN5LXRydW5rCisyODE0OSAxYTMyNzBlMjZjMTYyZjQ5OWEwZjE2NDM1M2Y4NjkyMmYxZjkyMmE2IHJlbGVhc2UyMi1tYWludAorMjgxNTAgYmEwMzVmNGI0N2MxNTYwMmYxMTU0MDdjNDY1Mzc2NzhjYWFhMGMzZSBsZWdhY3ktdHJ1bmsKKzI4MTUxIDQ5MTY5ZDAwYWIxODIyNDNjOTRlYzlmN2QwYmVmMjZkYmE0OGYxNjcgbGVnYWN5LXRydW5rCisyODE1MiAxOWUwMTBmNzkyYTM4M2UyZWNiNzM1OWRlMDE4MTg5OGJmNzcyMTMzIGxlZ2FjeS10cnVuaworMjgxNTMgMThjMzViYjVmZTA3NDNmZjU3MWM4MDI2ZDRlN2I5YTcxOTlhYTg1NCBsZWdhY3ktdHJ1bmsKKzI4MTU0IGE0MzUxOTg4N2IxNzk0ZDcwMTdlMWE3MTc4YmNhZTc5YWJiOTA0ODYgbGVnYWN5LXRydW5rCisyODE1NSBjMjQ4YmVlNTJkYzZhNzhlOWQ4YWEwNjEzOTk1Y2U0ZGIzOWUzZTdkIGxlZ2FjeS10cnVuaworMjgxNTYgZGJmNmU1NjMwMjNiOWQ0ZjY3NTViN2VmZWM2ZGQyYTU2NTA0NmU1MiBsZWdhY3ktdHJ1bmsKKzI4MTU3IGMxZWI2Njg1MjVlMTFjZTQ3ZmE5NDdiMTAwOTkwZDM0YjAzYzQ4OWEgbGVnYWN5LXRydW5rCisyODE1OCAyN2FlOTc4YmVlNTg1NzM0MjlhOTc2NjIxMGQwZDUzODljMGU5ODAyIGxlZ2FjeS10cnVuaworMjgxNTkgOGFiMzAzMzc1YjMwNWU4Mzg4NTQ3ZTFkNGM3ZWNhODQ2ODdkZTc1NCBsZWdhY3ktdHJ1bmsKKzI4MTYwIGM4OGQwODQ4YzVjOTMwYzI2YzAwZGJiMTFmNTgzMTE4MjBjOWY3YzEgbGVnYWN5LXRydW5rCisyODE2MSA5YzI1YWExM2MzNmUxYzkyYjkwNGVmMDMwYjc4YmQ2NTc3Yzg3MDZlIGxlZ2FjeS10cnVuaworMjgxNjIgYjUwNDgzNTY4NWMzNGVhNzNlNzIwZTY2ODAwMzhhOGRiODkyZDgyZCBsZWdhY3ktdHJ1bmsKKzI4MTYzIDI3ZWNhNDc2NjkzN2FlZjRjYmUyZmI5ZWRkOTliNTYyMzQ4OWQwNGIgbGVnYWN5LXRydW5rCisyODE2NCAzZDIzMzUwOTRiODhjMTdmYTZiNWY2ZDA4NTQ5ZGNjNDJiMjVmYjhkIGxlZ2FjeS10cnVuaworMjgxNjUgZGNmYWJlNjVjMjJlNWIyYjY4Y2UxNTUzYWUwNzI0OWU1ZTlmOGJjMyBsZWdhY3ktdHJ1bmsKKzI4MTY2IGUwNDMxZDljNDQ3NDIwMjdmNzI4YjVjMzI2MGViYjliODQ5NGM1YjIgbGVnYWN5LXRydW5rCisyODE2NyBjY2Y2NmExYWEwYjg0NDI5ZDU1NDhkMmI1M2Y2MDE5ZDUxNzJhZDgwIGxlZ2FjeS10cnVuaworMjgxNjggNWVkN2M5NzdkMmE5NmRiNmQ0MDBjZjlmYTVkNmU0ODdkMWVlM2MyMiBsZWdhY3ktdHJ1bmsKKzI4MTY5IGYwYmQ1Y2Q0YjE3MDZiMzM5ZjBhMTM3ZTRhZWYyOWU2YzYwOTBjMWIgbGVnYWN5LXRydW5rCisyODE3MCA0Y2FmZDlkYmM4YjQ3OTE2ZTkyMzU2NDIzOGFhOTM2ZWJhMzA5MDllIGxlZ2FjeS10cnVuaworMjgxNzEgNThlYTQyMGRkYzVlZWFkZTBlMmZmYmNiYTA0YmMyNGEwZjMzZjQ1NyBsZWdhY3ktdHJ1bmsKKzI4MTcyIDI3MjIwNTdmZmU4NjAxMDk5NzQ2MTBhYzYxNmM2YjQzNjI2MmI5ZWEgbGVnYWN5LXRydW5rCisyODE3MyBhY2IyNTg1NDVhNWMxMjU0NmI0NTE5YzAzNDU0NDM2OTI5NjdhZDQzIHJlbGVhc2UyMi1tYWludAorMjgxNzQgMGFmYWNmNWRjNDJlYWJmOGIwYzI5OWQwMTdlMjA4YTkyMzAzZTY1ZSBsZWdhY3ktdHJ1bmsKKzI4MTc1IGQ3NWJkOWU1YzRkOWMzZDg0ZDUzMTg1MDE4ZDhjZTRhMTY4NTE1MTQgbGVnYWN5LXRydW5rCisyODE3NiAxODI0OTgzZmQ5NGE3NDQ4NDhhMzJkNDJjOWEwYTNmNTMzZTUxZmVlIGxlZ2FjeS10cnVuaworMjgxNzcgYzYwZTg5NWQxMTI1YjM0ZGIyODEzMzRjODVjMWU5ZGRlZDExNjk4OSBsZWdhY3ktdHJ1bmsKKzI4MTc4IDgwMWE0NGFiMmFhZTY3MjE4OWRjNzhlNDNlM2UzYzY1YzlhZmIxYmYgbGVnYWN5LXRydW5rCisyODE3OSA5ZTdlYzJmNWExYmQzNzNlYmI4MWJjYjgyYjBlMTU2MTBiZmI0YjYzIGxlZ2FjeS10cnVuaworMjgxODAgNmM2ZGY2OTIzNmIxZDI5NWE4NjZjYzllMjdlZGJhMDYzM2IzODdmZiBsZWdhY3ktdHJ1bmsKKzI4MTgxIGZlMzQ3MmYyZjhlYjcyMmQ1ZWUxMzg5MWYwZmY4ZDlkODlkNzNmZDIgbGVnYWN5LXRydW5rCisyODE4MiA2OTZhMjg0NTY5ZTY0Y2I4YTEwZjZkMzdmOWEzNjc3YzVlYWRlMTkxIGxlZ2FjeS10cnVuaworMjgxODMgZjFkMThmY2Q1NmU2OTYyODU5OTJkZDI2MWRkMjc2MmMxYjUwZDIzNCBsZWdhY3ktdHJ1bmsKKzI4MTg0IDUzY2I3MTYzODg0MWU2ZGQ4ODM5NTI2ZDc1ZTgyNTg5ZGY1MjkyNWUgbGVnYWN5LXRydW5rCisyODE4NSAxZmUwNjY1NWM1MGM5NTllM2VlYWQ0ODE0M2ViNjg1ZTFjYmUxZWVkIGxlZ2FjeS10cnVuaworMjgxODYgZmFlMzg2ZDVlMzU0NTZlNWFiMTllMTlkMzE4ZjliMWExNWQ2YWE0ZSByZWxlYXNlMjItbWFpbnQKKzI4MTg3IGMyMzg1M2Y3ZWJlYjllMDVjZWIzNThjYmVhMTFhYTAwYzFhNmUwNmQgbGVnYWN5LXRydW5rCisyODE4OCAwMWQ2YzUxNDZmZjlhZWNhMmZmMzEwNzRjZGRlZjBlYjViZTgwMzcyIGxlZ2FjeS10cnVuaworMjgxODkgY2VjNDFlMzc2MWFjM2U0MzQ4YzVjZmQ4MzcxZDY1MmFkNjNhMWEzMCBsZWdhY3ktdHJ1bmsKKzI4MTkwIDRkZTlhYzBlNDE3MzY2MWJlMWYxZGUzMjExNDY5Y2IwZmZlMWEzNDYgbGVnYWN5LXRydW5rCisyODE5MSBmMGQ2M2FhMWRmYzdlOTA5YTJkMDNhYTI2YTcwOGRmM2U0YjYzZGJmIGxlZ2FjeS10cnVuaworMjgxOTIgMGY2MWUwNzQxNDdmYjFhYWZjYTI0NzgzNWE3NzBkMjAwZGE2NjQxMiByZWxlYXNlMjItbWFpbnQKKzI4MTkzIDFmZDM4OTAwZjUzYjg2MTBlZTlmMjBmZmIzNmFhNDAxZjhjNThkMzUgbGVnYWN5LXRydW5rCisyODE5NCBmY2JkZTIyNjU0NWNjMzhjMjYzYjVjMzc1NDE1MDMzNjVjNDQ3ZjVjIGxlZ2FjeS10cnVuaworMjgxOTUgODI1OTQ4YzIxZjBkYzEzODg1Y2I4MTBlYjMyMTQzNjU2NTQzYjYzYiBsZWdhY3ktdHJ1bmsKKzI4MTk2IGRiZjRjYzU2MDg5ODgzZTA3OWM3MDhlM2U2OGQ2NzdkZjJlMzYyNzkgbGVnYWN5LXRydW5rCisyODE5NyA0YzQ2YjNlZGFhNTg3YzBlMWY3NTBiMzk0YjkwMTJkOTgzM2Q5ZDcwIGxlZ2FjeS10cnVuaworMjgxOTggMTk1MWIyYzY2MDQ0MzhiMTMyZmIxODM3OGY4ZjIwMmYwZTgzOWZmMyBsZWdhY3ktdHJ1bmsKKzI4MTk5IDFjNjNkMzA4MjY1NjllYTE3NDY1YjkwNWUxODg2OWNiN2IxMmQxYTAgbGVnYWN5LXRydW5rCisyODIwMCA0NTJkNmE5MTYxOTYyNDYzZjU2NWVjZDkxYTRjNjI3Zjg1Y2U4Y2I3IGxlZ2FjeS10cnVuaworMjgyMDEgZGU3MWU2ZmU2NGIwNTI1OTQ5ZDMyOTU5OWMyYmZkY2U2NzJlMmY0MCBsZWdhY3ktdHJ1bmsKKzI4MjAyIDZhOWVhMGMyMmNlYTFmOWFiMTA4OWFhODUwOTUzZDNlZTE0YjQ2YzMgbGVnYWN5LXRydW5rCisyODIwMyA0NjFhZmRiNWNiOWVkZjYzMDZkM2VlODdhZTMyNzgwNmRkNmQ0YzM2IGxlZ2FjeS10cnVuaworMjgyMDQgZDlmZjk3Y2U3NWJiZWQxZTc2NzM5NzhhMTM3MGZjN2FkMTQ2NjM3MSBsZWdhY3ktdHJ1bmsKKzI4MjA1IDkzMWZiMzcwMGQwYmE5MWI5MDVlY2QxMjhhNzhlMTcwYTk1Njc4YTAgbGVnYWN5LXRydW5rCisyODIwNiA4NjI2OTViOTIwZmRkODhmOGE2YjM3N2UwMjNiOGQ3MzE4ZjlkNGYxIGxlZ2FjeS10cnVuaworMjgyMDcgYTYyY2VlNGVlZDk2NmYxZmMyZDNkOTJjOWRjNGU1MTQ0Y2RmMDAxNiBsZWdhY3ktdHJ1bmsKKzI4MjA4IDE4Y2JhZGQ4MDcxMjVhZWQ0MmIxOGExZTdiYmE2MDNiY2Q1MzViZWYgbGVnYWN5LXRydW5rCisyODIwOSAzMGNmZjljMWJmNjkzYzA4Y2VhMmE5NmVkM2UxOTE3ZjQ3MjE2NjgzIGxlZ2FjeS10cnVuaworMjgyMTAgZjE0N2I1OTQ0MjQ0NjdmMTQyNzkzOTQ4NTdhNDhlZTU4NGUzODMxMyBsZWdhY3ktdHJ1bmsKKzI4MjExIDliMDZmNDRiZDRhMzRkODczZDZkNWMzNTQ4NjQxOGY3MmY3OTljNzggbGVnYWN5LXRydW5rCisyODIxMiA2ODVjZDUyYzRjNDM4YzNmZjU1NDcwNzAyNTc1MGFhMWJjYjBlNDlhIGxlZ2FjeS10cnVuaworMjgyMTMgYWI2M2FmM2VjMzQ5NWNiYzdjODkwM2EzMWM3NGI4MGMzZDYyYTJjNSBsZWdhY3ktdHJ1bmsKKzI4MjE0IGM3NWNkYzQ3MWIyMjQ0YThiM2E3YzVlMWNlOTRhMWFhM2U1ZjBiOWMgbGVnYWN5LXRydW5rCisyODIxNSA3Y2U4MmU5ZDA4Yzc4YTUwNTkwYmY4MGZhMjIxOWFhNDk0YjY3NTkzIGxlZ2FjeS10cnVuaworMjgyMTYgNTg2MjNjZTk0ZDQwNmM0OTE0ZDU5ZGU1MDVlNzg5Y2FjYTk2YTU2OSBsZWdhY3ktdHJ1bmsKKzI4MjE3IDc0ZWQ0NTcyMDhjMWEwZjUzNDg5N2NjZjg2M2E1NDM0YWNmZjBhZmUgbGVnYWN5LXRydW5rCisyODIxOCA3YjdkODgyMGFlMzgwZjA5ZTYwYmI2YWNlZTE5M2RjMWY2ZDMxOTc4IGxlZ2FjeS10cnVuaworMjgyMTkgNjQyMGI5N2ViNTlmMTdjMTFhYmNhNGI0Nzk3YThjMjgzNzQyNDkxZCBsZWdhY3ktdHJ1bmsKKzI4MjIwIDUwZmFhNjgzNWRkYzQxNzk5NDIxMDIyMTk3YjgxYWU4NzY4OGU1ZWQgcmVsZWFzZTIyLW1haW50CisyODIyMSBjNDU2NDJlMWRjYTkzYzUzNWYyZjU2NzBlMzI5YzUxZTQzY2RjN2MxIGxlZ2FjeS10cnVuaworMjgyMjIgM2FlOGUzZmY3ZTNmMzQzN2NjNmU5MWNiOGJiMmRlZjgyNGIxZTFhOSBsZWdhY3ktdHJ1bmsKKzI4MjIzIDMxZDI4NjAwODllNjAwYjZmNGIyMWQ1ODk2MTI5ZDgzYjQ1NGVjMWMgbGVnYWN5LXRydW5rCisyODIyNCA0ZTQ0ZmFiZTBmYTAxN2JiODViMjUwMWM0MjE2ODIxMGQ4YjNlZGYyIGxlZ2FjeS10cnVuaworMjgyMjUgMDExMTM4YjVmMzg5YTI4NDhlMjVlYjYyMTNjZTU3ZmQzNGJlODlkZCBsZWdhY3ktdHJ1bmsKKzI4MjI2IGFlOWM5ZjkwYjRiMDFiZmEwYjE5MTFiNTk3N2QyNWQ2Yzk4Yzg3M2EgbGVnYWN5LXRydW5rCisyODIyNyBkM2Q3ZGU3MDNhMjJkYWFjOGQ5ZDk3MjdkNjZmOWFlYWEyODZkMTliIGxlZ2FjeS10cnVuaworMjgyMjggNTg4ZDE0NWM0NGRkOWU2Yzk2MTdkOWU3MjAzNmY3OTMxZmY0NjA2NCBsZWdhY3ktdHJ1bmsKKzI4MjI5IDdjOTFkMzAzYzU2M2ViZTg2YTgxZDk1ZWE2ZTZmNGNlODVhOGFjOTQgbGVnYWN5LXRydW5rCisyODIzMCBjMDAxZTVhMTUzNjlmMzdhN2JhMTIxZTIwOTdmNmFlODYyODA4Mjk1IGxlZ2FjeS10cnVuaworMjgyMzEgYTdkYmU0ZTdmNWRlZGNjMmYwZmMzODUzYzA3MGVlZjQyNjNiZThmYyByZWxlYXNlMjItbWFpbnQKKzI4MjMyIGU1YTA3Y2M4MTU1OTA1ODRjNWFjYTNmMWFiZmQ0YmU5MmY1ZmRjZjkgbGVnYWN5LXRydW5rCisyODIzMyA0Y2Y1MDI3MTZkMTVkNTNmZWZlNWNkYWFhYjJjODBjZTMxY2Y4MDQ0IGxlZ2FjeS10cnVuaworMjgyMzQgMzFlZTMyYzIzZDI5YzU5ZjlmMzEwMzNmYjdlMzViNTExNDIzZDZkYSBsZWdhY3ktdHJ1bmsKKzI4MjM1IDhlM2UwZTExZjE0Y2FjYTMzMzU0N2FiZWQzZmJhNGQzNmU3OWJlMTQgbGVnYWN5LXRydW5rCisyODIzNiBhNjAyZTQ4NzhiNGVjZDBjYWFiMzk0NTljNDJkZjQ5ZGJjZmE5ZmZlIGxlZ2FjeS10cnVuaworMjgyMzcgNDUzYzg4Zjk2M2VjMzI2Mzg4ZTg1ZjM1ZDVmYjM4ZjBlZWExOGJmZCBsZWdhY3ktdHJ1bmsKKzI4MjM4IGNhNThmNWE0NTU4YjhmYTkyOGMzZDJlMGJhMzY5MTRiNzQzZmFkMWYgbGVnYWN5LXRydW5rCisyODIzOSA2NGY0ZGQ3NzBjNjdkYTY1MDlhOTIxODQxOGY4NGNlMjc0ZmQ1YmNkIGxlZ2FjeS10cnVuaworMjgyNDAgZTM5OWQwYTg3NWI3ZTFmZjM4OTI0Y2RkZDhlNDczYjg4ODM2YTY0MiBsZWdhY3ktdHJ1bmsKKzI4MjQxIGMwMDRiMmJjZDU0MjFjNDQ0N2UzNDVlZjllZTQ5ZGYxZWVlYzkwM2IgbGVnYWN5LXRydW5rCisyODI0MiAxOWYyNWJjZjVhMDAyZWQxYmU3YmZlYzE5NDEzMWZkNTVmYzM0YjA0IGxlZ2FjeS10cnVuaworMjgyNDMgYWVhNjhjYjM2ODU5NjEzNGNjMmE1MWEyMzFlZTY1YmE5YjE3YWEwMSBsZWdhY3ktdHJ1bmsKKzI4MjQ0IDE3ZTk1Y2MwNmY2OTNiMDZjOGRjZjgxMmMxZjY0YzFkN2ZjZjI4YmIgbGVnYWN5LXRydW5rCisyODI0NSAyZmY0MjY4ZjI1ZGM3MzhhOTg5NjAyMDU2NmVlZjFiMmFiNDQ3MTMyIGxlZ2FjeS10cnVuaworMjgyNDYgM2FmOGQ4MWQ3Zjg2ZTQ4YWY5YzgzZDE1OTMyMWNiNjgzZTE2YjQyMCBsZWdhY3ktdHJ1bmsKKzI4MjQ3IGM5YWY4NzUwNDhlNzI5NmI1MGY0YjcxYjdmYWQ3MjBiNTJiYzMwNjEgbGVnYWN5LXRydW5rCisyODI0OCAxMWMxY2M5N2I4N2EzMWY2ZjYzNWRmYTUxM2VhMjgyZTI5MDc1YjdkIGxlZ2FjeS10cnVuaworMjgyNDkgY2Y1OTI4ZmFiMTA4ZGU5ZmJlMDI2MzJkMDcxNzZjNzE3YzJiM2FhNyBsZWdhY3ktdHJ1bmsKKzI4MjUwIDY5MzlkNzIxODJlNmM0OTkxY2M3NGU1NGM3NGNlNTAzNDk3MzhiNWUgbGVnYWN5LXRydW5rCisyODI1MSAxMGE0ZWM0NTU0OWQwZDg5NDkxMGRkYTk4MThiOTc4ODE5MzU0NWUyIGxlZ2FjeS10cnVuaworMjgyNTIgODczZjEyZjY4ZTNiMTAxNDliY2Q3ZjNkOThkMjk1ZjZmZmI5OWNlNyBsZWdhY3ktdHJ1bmsKKzI4MjUzIGRhY2QxMGQ0NmU1Mjk0MDViOGNmODRlOWNkZGZlMDkwMmY0NmNmOWUgbGVnYWN5LXRydW5rCisyODI1NCAzYzljNTZkOTdlNTVlNzIzYjZlNzNiODNiMTdkZmFjZTVhYjJiOGRmIGxlZ2FjeS10cnVuaworMjgyNTUgOGFiNDZkZjMxODJlNzk0MzNjZmIyOWU3MTA4MmExZWNmN2MxYWQwZCBsZWdhY3ktdHJ1bmsKKzI4MjU2IDM0Y2M5ODg5MmU4OTJlNjczN2VlMWIzMTQzODgwMmU0MmM3MWUxZjUgbGVnYWN5LXRydW5rCisyODI1NyBhZDM2MWUxZDU0YmJhM2UyZjRiMTI1MDNhNmRmZGM0YTQwMTRkZmE3IHJlbGVhc2UyMi1tYWludAorMjgyNTggZTlkZDNlOTFlNjUzMTBiNzA3ODlmMDlhZjgwNzVjM2E3MTYyOGQ4NyByZWxlYXNlMjItbWFpbnQKKzI4MjU5IDEzNmI4NTM2MjJjYzkyMzQ3Njk2MDc3YWUzMmQ5NDcwZDg5ZmUxOGYgbGVnYWN5LXRydW5rCisyODI2MCBiZWQ1ZDVlNTM2YmMwY2VjMmJhZWM0MWMzZjdjNGRmZGU4NTFmMTRhIGxlZ2FjeS10cnVuaworMjgyNjEgODc0NDhhMjI4Y2NhMmJlY2IyNzJiMzg1NjY5M2NmN2ViOWEyMjNjNiBsZWdhY3ktdHJ1bmsKKzI4MjYyIDBlZjZjMmFkMDc2YjEzMzkwZDY5Yjg1ZjE4YWFiMDM4YjZmZmI2ZTMgbGVnYWN5LXRydW5rCisyODI2MyA1OTI0MDZlMGM5YjAxOWI2NjQyYWM0YjAyZDZkOThiYjliYTNlZjk1IGxlZ2FjeS10cnVuaworMjgyNjQgZjI0NDc2ODZlYzVlYmU3ZjE5OWQ3ZWUwOTYwY2Y4Y2Y3YmNkNWU0MyBsZWdhY3ktdHJ1bmsKKzI4MjY1IGU0NWQxNjExZTg2OWQ2NDBkZDUxMzdlOTJkMzhhZmFlMzEzMjlhYjggbGVnYWN5LXRydW5rCisyODI2NiA0ZTc5NWZlOWY1NGIyMWI4ZmU0MDNlMzFmZDlhNTBlZjJmZDgzZTBjIGxlZ2FjeS10cnVuaworMjgyNjcgNWI2NTZjM2UxMzJiODY3NDFjZTZjNWEyMzMyNmNjN2E1MTI3NzFiNyBsZWdhY3ktdHJ1bmsKKzI4MjY4IGEzZWJkMTIzM2MwMGVhYmY5MDliZTgyMjIzZmZiZDVmMThmYTkyNWUgbGVnYWN5LXRydW5rCisyODI2OSBlNTAxNGFjOTdiYTE4NzlhNmU0OTQ2NTk4MzQ0NjU0NWJlYjk0YmJmIGxlZ2FjeS10cnVuaworMjgyNzAgYjU0Y2ZhOThiNjZiOWIzNGM2MzQ3MjViOGZmMzUwMDlhMDI0MDBmNyBsZWdhY3ktdHJ1bmsKKzI4MjcxIGYwZGJkNWI0OWQ4YTAxZjUxOTdkMTA2YzQxZGVkOGM5NzM0MGQ0MjAgbGVnYWN5LXRydW5rCisyODI3MiAyNTVkMWQzZTY2YTNhZDliMmQzYmIxYTE2MDZkYmYxYWFjNDlkNGUxIGxlZ2FjeS10cnVuaworMjgyNzMgMjMwNjAwMWY2ZWFhMzUwZmEwNTk3MjMxYjY4YmRlNDBjNGQ4YzQyMSBsZWdhY3ktdHJ1bmsKKzI4Mjc0IDljYTg5NjQyMzM3NDMyY2QzOGFjM2M3YjZlYzZlYWYyYmE5ODQwMDQgbGVnYWN5LXRydW5rCisyODI3NSBkZjIzMjZhNDg5NGRlZTc0M2FhYjk0YTdlYWY5MDU1MDkxODQ0MGViIGxlZ2FjeS10cnVuaworMjgyNzYgMjU4ZTBiMTM0N2MyYWQ4NjhkM2I2Nzg0MzhmODdmOTQ1MzIyMTI4OSBsZWdhY3ktdHJ1bmsKKzI4Mjc3IDliZWNmZWY2ZTMxYTZiZDcwN2VlZWJjNzY2NzNmNmNjNTQ4Y2ZmODIgYXN0LWJyYW5jaAorMjgyNzggNGYxM2U1OWZkMGEwM2Y5NjUwYWY3ZjZkOWQyMzJhOTdkMmVjYWUwYyBhc3QtYnJhbmNoCisyODI3OSBjZjU2MWU2MTIzNzhjMWEzYWZjOWRkMjRlYzFkZGZlZGE4NjM2MmM0IGxlZ2FjeS10cnVuaworMjgyODAgOTlmNWQxOGJlNTg4MDM4NmRhNjQyNzUzMGI5ZDhiNzUxNTgyNzE3MyBsZWdhY3ktdHJ1bmsKKzI4MjgxIGI1MTdkOTI5MmNlN2MwZjFmMjYzMmEyM2Q5Y2ExNzI1ODY2NGI3NWIgbGVnYWN5LXRydW5rCisyODI4MiA4MDg5YmEzOTc0ODBlNDBjY2RiYjY1NTI1OGU2NGRmODA5OWYxNmU0IGxlZ2FjeS10cnVuaworMjgyODMgNzI1MzM3YjY4Y2EwMmIzYzFhODA3OTlmODM4ZTgxY2Y0MmFlZTM1NiBsZWdhY3ktdHJ1bmsKKzI4Mjg0IGZjNzQwM2UxMTg3ODMzMGMzYWQ0Zjg1N2RmYWE1ZWNhM2NhY2QxZGMgbGVnYWN5LXRydW5rCisyODI4NSBmNDg1MTA0ZTRlZTg1MmI0YzI5MWVjOWRkNjRkMjNmOTkzNWJiODc0IGxlZ2FjeS10cnVuaworMjgyODYgMjM5YmRhYmI2M2FmOWQ3MTdmZGQ5YzcyZjQ4NTM5YzVkZTQzYjNlNSBsZWdhY3ktdHJ1bmsKKzI4Mjg3IDcxMGJlYmUyMTgyY2IxNDRhMTk5ZDJkOWYwMTdjM2RjZGUyYjQ5ZGYgbGVnYWN5LXRydW5rCisyODI4OCBkMzU0MWQ5MGQ1ZTA2ZTViZGIwNjQxN2Y3ZjY2ODU3ZDIyZjBmYWZiIHJlbGVhc2UyMi1tYWludAorMjgyODkgYWFhZTY5MzIxNzcxNzE4MzhiZGY5Mzc3MzA5NTVhY2IyOGNmYjU2OSBsZWdhY3ktdHJ1bmsKKzI4MjkwIDVmZjNkOGFhYThmOGEwNmIxODI5YTAzNDNjN2M3NmEwY2IzMjk0ZjEgbGVnYWN5LXRydW5rCisyODI5MSBjNGU1NTA3MDJhMjlhMzQ1OWRlZDEyNmZlNDA4YzJkY2Y5NmRiODBkIGxlZ2FjeS10cnVuaworMjgyOTIgODc5MTE5M2IwOWQ2NDE3YmU0ZmQ2MGViZTI4YjJmOGMzOGEzNTJkNCByZWxlYXNlMjItbWFpbnQKKzI4MjkzIDAyYjJmMDg4NWM1MjEwMjQwZGMyZmIxMzkxNDBiMjU3NjAyMDY0MWEgcmVsZWFzZTIyLW1haW50CisyODI5NCBkNzk3Y2ZhOGNhMGQwNDVkNWQzYWEwZTBiMTkwOTgwMWUwZjIyYTM0IGxlZ2FjeS10cnVuaworMjgyOTUgMjRmMWQ4NDVjZGI1NzMzMWFhZjVhNGQ3MTVlNjU1NmYwZDg1NzZmNCBsZWdhY3ktdHJ1bmsKKzI4Mjk2IDQ5MmFkZGI4MTJlZjExNzgwODFhOWYzMmRmZDFkNDRjNmE1YWI1MWEgbGVnYWN5LXRydW5rCisyODI5NyBkN2VmMmJhMWI2ZjVlZjBhYzFmNTk2MjhkZmU1NTZkYTk5M2Q2NmY0IGxlZ2FjeS10cnVuaworMjgyOTggYWViZjhjNTJhODQyZDQxZDkyYThlNjMwMDRjZWIwMGFjMzVkNzlmYiBsZWdhY3ktdHJ1bmsKKzI4Mjk5IDRlNGEzNDRjOWI2Y2U3YjBjNzFjYjUyODAwZTYwNDA4ZjhmMTQ4YWEgbGVnYWN5LXRydW5rCisyODMwMCA0NGQxZDBiNjIzYTlhZjc5NDJmZjdiMTU4NjIxNThkZmVjMTQzOGE3IGxlZ2FjeS10cnVuaworMjgzMDEgODg2MmJjNTk2ODVhY2Q2MzdmNWFmNDY2NGNiZjZiZmIwZGQ3ZDlkZiBsZWdhY3ktdHJ1bmsKKzI4MzAyIGM4ZDk1OTJjOWU3NDk3YTIxN2EyMDIwMDQ4NzE0OGVjNGI0ZDhkYWUgbGVnYWN5LXRydW5rCisyODMwMyAyN2YwZGVlYmYyNjQ4YWZhNTU3ZDZhNTRkMTM2NDllYmE5MjRiYWMyIGxlZ2FjeS10cnVuaworMjgzMDQgNjMxMGE0YTIxZWI4OTJjZTNmYjhhYjc0MTkyODE3MTRhNjVlYTkxNSBsZWdhY3ktdHJ1bmsKKzI4MzA1IGE4NjlkMmRlNTM2ZjhkMzBjYzZlN2M2ZmQzNTAxZjRiMjZlOWQ3N2IgbGVnYWN5LXRydW5rCisyODMwNiA4ZjhmZTk5MGU4MmMzMzRmNTBjYzZhNWZlOWRlZTEyYzQyYjhiNmNlIGxlZ2FjeS10cnVuaworMjgzMDcgMmNkZjNkMGRmYWJkNTAxMGE2OWE3ZGJkNjE3OGI3OTBmZTI2YWI3ZSBsZWdhY3ktdHJ1bmsKKzI4MzA4IGJjNjYwZjczNzk1Y2Q3Y2UwNzA5Y2RjODhhNzZhY2ZhZjEzOTgwNjkgbGVnYWN5LXRydW5rCisyODMwOSBmNTdkNmRiNDIzZjJkYmRiNDczYjhjNWU3NTE5YTQ5ODM5MDljMWMyIGxlZ2FjeS10cnVuaworMjgzMTAgZWNkNGFkYTI1MmJjMDlhZDlhODVmNDg5MWQwYWNkMzkzOTZmMWUyMiByZWxlYXNlMjItbWFpbnQKKzI4MzExIDY0MTc4NmJlYTEzZTJiNWE2MWE3ZjhlYTQyOWIyMGQ5NjVkNzU0NmIgbGVnYWN5LXRydW5rCisyODMxMiBhYWI3ZGViYzczYTg4ZTIxMzVkYzcxOGVjZDcyMjdmNzFmZjdkMDYxIGxlZ2FjeS10cnVuaworMjgzMTMgMzExNDVkNjY3YjE0YTVlNjY0ZDc0MWVjZjM4NWZlMzg2Mjc2N2U0ZCBsZWdhY3ktdHJ1bmsKKzI4MzE0IGIzZWZiZGNjZjdjNjRjMGJkNTdmNDZjMmI1MDQ0ZmM2MTA5ODkzNjMgbGVnYWN5LXRydW5rCisyODMxNSBjNmFkNjAzYmQyNjQ1YWVjOGJlNjUwOWYyZGY4MjhlZDZjMGIzNzA2IGxlZ2FjeS10cnVuaworMjgzMTYgNWFjYWU3MTljYjhhYmE1YzQ0ZWE4MzUzM2E2MTk0NDdlOTU1Zjg4MCByZWxlYXNlMjItbWFpbnQKKzI4MzE3IDVjMzg0NTdmNmIzYjg1YjZjMWI3NDE0ODMwNDZkOWQ0MDYyMTZjYjggbGVnYWN5LXRydW5rCisyODMxOCAzNWZlNWUzY2Y4ODVmNjQ2YTY5ZTEwYzA5MjRmN2MxMWExNzMwNDZlIGxlZ2FjeS10cnVuaworMjgzMTkgMGVlNDhhZWZhNDc0OWU3M2Q5MTczYmI5OWU3ZTYyZjYwYWI3NDg0ZCBsZWdhY3ktdHJ1bmsKKzI4MzIwIDU5YWNkNTAyODgwNDQ3ZjQwZTJkZDBkMzhiZmM0OGM3NjdhNmRhODMgbGVnYWN5LXRydW5rCisyODMyMSA2ODRhYjA2NDBlMDRmYTBmZmE4OTNjODVkYTNjMTNiNjI5NGIzYWIxIGxlZ2FjeS10cnVuaworMjgzMjIgMDFlMWQ2YWJjNTAxMjJmMjhlYmMxNDUzZTU4ZGE4MjliNTE4NmRkNiBsZWdhY3ktdHJ1bmsKKzI4MzIzIGUzZDk2ZTAwZGM2YzFjMzMzOWYzOWVmZTM0ZjVkNmRhMzczNDVjOGMgbGVnYWN5LXRydW5rCisyODMyNCA4ODY2ODZmYzkyYTk5Y2ZkMWQzMTQwOTA0ZTdmYWIyMGQ0MjczYTA0IHJlbGVhc2UyMi1tYWludAorMjgzMjUgMGQ1ZDhlMWNkYzIyY2ExNjcwNmRjMWNlNTAyZDI5NGRiZTY1MTI4YiBsZWdhY3ktdHJ1bmsKKzI4MzI2IDRjYjI1M2M1NTZiMTBhM2Q0YjlmNDFmNzMxZmNiNTkyZWJmZjg3ODcgbGVnYWN5LXRydW5rCisyODMyNyA3MTQ3OTcxNTZjNTEyYjk0ZGVlNDJmNDFiYzAxNmMyNGFlYjZmOWQ1IGxlZ2FjeS10cnVuaworMjgzMjggOGVlZjAzODUwZjU3NzY3ZmFjNzAwNDFkNWRkODM3NjkxZThlN2U1NyBsZWdhY3ktdHJ1bmsKKzI4MzI5IDVmYzQ2MDk4MTU4OTIwNTc1Y2RhNmI3NDk2NjZkMDc2NjhlZTFlMTggbGVnYWN5LXRydW5rCisyODMzMCA1MWMyNjk5NGQ4ZWM2OWE3MzA3OTg5MjMwZjM3NTkyNjg2ZDAwMjIzIGxlZ2FjeS10cnVuaworMjgzMzEgYTExNDMyMjRlZTBkMGY3Njk0YTk0NjhhYTE1NmIxZGM2MWE1MGFiZSBsZWdhY3ktdHJ1bmsKKzI4MzMyIDk0MDYwNWQ0MTU1ZmRjNjc5M2MxMDQ0M2VlODQ5NDhkYWUxZGVkZjIgbGVnYWN5LXRydW5rCisyODMzMyBkMmViMDA3NDQ4YTNlNjU4YWQ2NzI0MGE0ZmRmNjk5M2MyNWI2MTk2IHJlbGVhc2UyMi1tYWludAorMjgzMzQgYzRhNGI3NDJhZDZjNjVkYjNlMTdlM2M2ZmNjMDBhODdiMmYzMzM0MiBsZWdhY3ktdHJ1bmsKKzI4MzM1IDBkZDViY2MxZWUwYmQzZTk5ODhmMWY3ZjYyOWI2NGU0NWIwMGUwZDIgbGVnYWN5LXRydW5rCisyODMzNiA0MTlkNDdjNzcxNDM0MjhlZmQ2ZWMwNTViNmY5ZDA4YTMwMzFmZTRhIGxlZ2FjeS10cnVuaworMjgzMzcgZThmNzczMDdkOWM2YTI4ZDAxN2Y3ZjUxNWZjMzc4MGUxNjc0NTBlOSBsZWdhY3ktdHJ1bmsKKzI4MzM4IGMwZTk4MGFiNTRkYjNiZDk1MGE2M2QyNWVmMTExOTVkN2QwMTcwMzcgbGVnYWN5LXRydW5rCisyODMzOSA2MTdiZDU1YjRhNmVkYmMyNGY0Y2U1ZTdlYjIzNzg5M2Q0MGNkM2ZkIGxlZ2FjeS10cnVuaworMjgzNDAgOWVlNGY0Y2I5NzcwNjk5ODFhNDFiNDllNTk4MTNjYjZiNzVlMzI4OCBsZWdhY3ktdHJ1bmsKKzI4MzQxIDYwNjBjZjY2ODJjMDI1Njk4MzQyYjk1NDYzN2Y1NTFmNzVhNmI5YWIgbGVnYWN5LXRydW5rCisyODM0MiA2NDUwOGEzN2E4ZDViNTBjODFjMWUxOGU4YmUzNThiZDdjMWI2NTA1IGxlZ2FjeS10cnVuaworMjgzNDMgMjk0ZjdiZTI2MTlhNjAzMWVkOWNmMzc4YTZhMGFjNWQ1NWY0ZWVmNCByZWxlYXNlMjItbWFpbnQKKzI4MzQ0IDIxOWU3MDM4OTA3MjY3OTk3Y2RhNzM5MTk3N2JkMDJmZWQwNTRjOWQgbGVnYWN5LXRydW5rCisyODM0NSBlOTUwMDcwOWQ0OWM5OGE4NmQwNWMyZjZmZDNjZjViYTNjNzA3NGFiIGxlZ2FjeS10cnVuaworMjgzNDYgMmI2NmFkZGUwMjMwNjY5MjQyNmEzYzQ3ZDRkMDZiOTA4Y2U5ZGNiNSBsZWdhY3ktdHJ1bmsKKzI4MzQ3IGJiNmE3MWQzZmRjYjc1NWY4NzQ3YmMxNDFlY2U4OTQ4NDY0OWNlZTMgcmVsZWFzZTIyLW1haW50CisyODM0OCA2NzA0ODQ1NGFhMWU3NDY3OTM5ZDcyY2MwODY1YTg5YzMwNWJhNjMyIGxlZ2FjeS10cnVuaworMjgzNDkgZDEzNTUxY2Q2NjNlNTc3MmU4ZTMyOWJjYTlmOTQ4OGI0MTliMzI2OSBsZWdhY3ktdHJ1bmsKKzI4MzUwIDUzMDY0MDg2NTdmYzY2NGFhYzAyOTllZWVhNTAxZDkzYzg0MTFiZTAgbGVnYWN5LXRydW5rCisyODM1MSA1NGI2MDFkM2IyYTZkZDkxZjI2NWU0NjNjMjJlYmYzNjdmMTIyZTg0IGxlZ2FjeS10cnVuaworMjgzNTIgNzQxN2E2ZGM3MzY2NjJkM2ExYmFkN2E5MTE1YWY1ZTQzOGMyMjQ4OSBsZWdhY3ktdHJ1bmsKKzI4MzUzIDBjMjAxNTQ4ZDNkNGZlNTM5NWMyNjJhMDVlMTg4MzMzNjI0Zjc5YzMgbGVnYWN5LXRydW5rCisyODM1NCA1NDRhMzI2YmFmN2YyOWYxMjYzYjBjZTUzMDFmZGNmZDEwMTlhZmY5IGxlZ2FjeS10cnVuaworMjgzNTUgOGFkY2E1ZjliZmZkODZmZWM2MzJmNGVlYjk4OWY5ZTIwNDIxZDA0ZCBsZWdhY3ktdHJ1bmsKKzI4MzU2IDlmMjZlMGMwYzY5MjcxMDRiY2ZiNjJkMGIwMzM4MTliZDM0MmZjNmIgbGVnYWN5LXRydW5rCisyODM1NyAxMzM4OGNhZmMxNmU5NjMzYjNmMWQ1MjMwYjAwNmUxMzMwZDUzOTk0IGxlZ2FjeS10cnVuaworMjgzNTggMWJjYWZiYzY5Yzk2NzI3NWRkN2M0NzBhZTVjNmQ5ODgyZjhiODUyYyBsZWdhY3ktdHJ1bmsKKzI4MzU5IDZhMThiNGU4MzhlYWYzZjljNzUzMjI5MjNlMGI3MTFhZDJlYTQ3NGYgbGVnYWN5LXRydW5rCisyODM2MCAzMzBmNmU0MjI3NGY4Mzg3YzA4ZDU3MjRiNzhmMmViMjIxMjhkMGFlIGxlZ2FjeS10cnVuaworMjgzNjEgMDVkYTk1YmNkNzI0ZGZmN2U3OGU0N2U0NzM4MTE0MzY4NTdjOGU0MiBsZWdhY3ktdHJ1bmsKKzI4MzYyIGM1NWU4ZDZjMDkxZjAzM2NmN2VlYjYzNmRlNDM3YjU4ZGNlMjFmMWIgbGVnYWN5LXRydW5rCisyODM2MyA2MjgxMGJlYjlhZjQ3NzczMGJjZjA3ZmRjNzg2ZWM2NjRhMjA2NmYwIGxlZ2FjeS10cnVuaworMjgzNjQgZGM2NmViNGNkMTdhYzJhMDAwZmYxOTA2MGU4YTM4NDQxYTkyYTY5YyBsZWdhY3ktdHJ1bmsKKzI4MzY1IDZlNzhhNTRiYWMzYzg0MDQxYmFmZTNjMDAzMDNmNTQ1ZDhlZjA4OWYgbGVnYWN5LXRydW5rCisyODM2NiA4YjZiZjViYzUxMjI2YjcyMjhmYTMxNmM2NzdmOGQ1MGJkMjJmY2ExIGxlZ2FjeS10cnVuaworMjgzNjcgYjkzM2QxOWFlODUxMmNiYTAxZTcyNjRjYTQ1ZDFlYTAwMDE4MTM2NyBsZWdhY3ktdHJ1bmsKKzI4MzY4IDA0M2ViYTUxOGM2ODljYmRkYjM3MWU1YjcwZmZlOTkwNGM1ZDkyMDUgbGVnYWN5LXRydW5rCisyODM2OSBjMWY2ODJiZWViZWExY2YxZTFlOGVhZTcyNzk5NzIzY2QzY2ZjYzMzIGxlZ2FjeS10cnVuaworMjgzNzAgNzNmYmNmMjFiMmMwZmJhY2M5ZjcyZDQ0Nzg5NmRkMDkzNGEzYTQ0OSBsZWdhY3ktdHJ1bmsKKzI4MzcxIGQ5MGE2YWRkN2NhMzk4Mjg3YzBmOTQ2OGZhODhkYWRhNjdlM2YxMWIgbGVnYWN5LXRydW5rCisyODM3MiAxYjRlZjljZDE4OTc0MmJjODBhZWJhZmJlNWY0ZGRkZDY0MzIwNjg5IGxlZ2FjeS10cnVuaworMjgzNzMgYzQ1YjI4NjU4ODA1ZmE2Njk0ZTM5MzY1MmViMDE5MjkzNThiMmFlMyBsZWdhY3ktdHJ1bmsKKzI4Mzc0IDgwZjY1YzYzZTg2MGMyNmRkNWIyNzMyYTg2MzU3MmExYTY0ZjhjNDAgbGVnYWN5LXRydW5rCisyODM3NSA5NTE4NjU5MWNiY2ZlZWUxNDY3MDZlZmYwOGUzYzU3Mzg3YzJiZGI3IGxlZ2FjeS10cnVuaworMjgzNzYgODE2NzllYmVjMDdkNzE5YmE2Y2NhNTllMmQ1Yjc2ODA2MjVmNGE2MyBsZWdhY3ktdHJ1bmsKKzI4Mzc3IGY2NTgxMjk5YmMwM2I1MThiYTdkY2MxNTE5OGY4NzY3YTc5NjlkYzEgbGVnYWN5LXRydW5rCisyODM3OCA0MjYzNjM4YTQ2OWY4ZGI4NjdkYjA5OGNhMzBjZmZiYWM3MmEwMjNiIGxlZ2FjeS10cnVuaworMjgzNzkgOGVhMTE3ZWJiMmYzNDlkZTVlOGUzZDQ0MTlmNzhhYThlNDE3ZmZhYSBsZWdhY3ktdHJ1bmsKKzI4MzgwIDY2OGVlYWQxM2E3YzU3ZWU2NWRiNjBmZjE4Y2U5Mzc1NDg0OGI2YmQgbGVnYWN5LXRydW5rCisyODM4MSA3MTkwMzQ4ZDQ2NmRmZjVkNjYwNTZjYWEyMjczYTI4OTA2NDBmMWJkIGxlZ2FjeS10cnVuaworMjgzODIgN2JlYjE2OTIzYjcxYmI3MGZlOTVhZjM2YTY1OGU2OTg2ZjkyOGRkYyBsZWdhY3ktdHJ1bmsKKzI4MzgzIDA2M2YyMDMxNjYwYzNlMjU4ZjM2ODgwZjVkMDhkNDMxODliMzI3N2EgbGVnYWN5LXRydW5rCisyODM4NCAyNWY2OTU0ZmVmMzQyM2QwN2I4ZjNhZjhlNzc1ODVkNzM4NjZlMjRkIGxlZ2FjeS10cnVuaworMjgzODUgYjFhYjRlOGQ3ZDljNWEwYjI4OWYzZDQzNjhjODljMmI0NGM3Y2RiZSBsZWdhY3ktdHJ1bmsKKzI4Mzg2IDgwYWM4NjE5NGExMmJiOTRhZDYyMWU3YzIxZTM2ZDVlZjY5ZTliZjEgbGVnYWN5LXRydW5rCisyODM4NyA5ZTExYmI4M2Q5NTNiYTNhYjYxZTNiOTYzZTU0N2M1N2NlZGYxNTU2IGxlZ2FjeS10cnVuaworMjgzODggZWU5OWQyMjI1NzBhOTQ2MDBkZjA3MDAzOGVmNzNkNDRmY2ZhOGVkNiByZWxlYXNlMjItbWFpbnQKKzI4Mzg5IDIyYjcwYzM5ODNiNTM4Y2FlNTc0YWM4Y2Q3YmY5NDEwOTg4MjEzNTEgbGVnYWN5LXRydW5rCisyODM5MCA0YmI3NzZhMDJlNmU4NGY4YTdhMDgyYzVjMjBlOTY0MDYxZTlhOTUxIHJlbGVhc2UyMi1tYWludAorMjgzOTEgODBkMDM1YzQ1MTQ5M2RkZWM3NGZjYjBiMjQ0ZTQ5YjRlYmIxNzM0ZiByZWxlYXNlMjItbWFpbnQKKzI4MzkyIDE0NjFiOTQ2MDZjNTQxNGViMjliMTY1N2FjYTc3ZDFkMzRkODJiZDcgcmVsZWFzZTIyLW1haW50CisyODM5MyAwMGYxMWVlZGQ2MDMzNDVjYmE5OTIzYTM2ZGJhZjA1NjUzNDUxNmNkIHJlbGVhc2UyMi1tYWludAorMjgzOTQgOTEzMGVhNjY5M2RhN2VlOTlhM2M0ZTNiN2Q1M2JkMDVlYzdhYzFjOSByZWxlYXNlMjItbWFpbnQKKzI4Mzk1IDBkNjYxN2E5Y2I2MTBkMjcyMmFhMjUyMzcwZDUxMzJhM2VmMzRjNDAgcmVsZWFzZTIyLW1haW50CisyODM5NiBmNGJiMGZmMzEwZDM0ODljMjNmNzQ4NjQyMDUzZTNkZWQ2Y2JmMzk5IHJlbGVhc2UyMi1tYWludAorMjgzOTcgYmM4MWVlMjA2MjhmM2NjOWQ1MDEwY2Q0MTg5NzhmNWFlMmRkNmE0YiByZWxlYXNlMjItbWFpbnQKKzI4Mzk4IDY0NjFhY2RlYjU4YzkwODJhZmVlOGU1NjRmMGJjZWFiY2RlZTYxMDQgcmVsZWFzZTIyLW1haW50CisyODM5OSBjNTQxN2YwZWU1ZjA4MDJiMTg3Mzg5YjcxOGIxMmQzMWI5NDU1NDcxIHJlbGVhc2UyMi1tYWludAorMjg0MDAgZmQwNjZkMTk0Y2ZmNDFjMmJiZjdhNGE1YTNhN2ZkZWQ1NmM0NWNkYyByZWxlYXNlMjItbWFpbnQKKzI4NDAxIDVlNGVhZGYxOTAzYTAyOGU2NTVhYjU4MjlmZjUxMDBlOTAyZTU4NmIgcmVsZWFzZTIyLW1haW50CisyODQwMiA4NmFhMmMyZGE0MGU0YjUyY2M2ZGVlMTAzZjUzMzdjNmU2NmJmN2IxIHJlbGVhc2UyMi1tYWludAorMjg0MDMgYzUxMmE5NDMzZWFmM2IzZjE2MGJiYTY5MDVkYzU1NTM1YWU3Mzg0MSByZWxlYXNlMjItbWFpbnQKKzI4NDA0IGEwZGM2ZjUwNDk3Mjg1YTE0NmIxMjBmOTNhMWU1OGRjNDY1NWY4M2UgcmVsZWFzZTIyLW1haW50CisyODQwNSBhYzQ2OGUyMGI0Y2VkOGJjYTA2ZWE0YjhlYjA1OWU1Y2U0NmQ0OThjIGxlZ2FjeS10cnVuaworMjg0MDYgM2E3NDk5NDMxZGNjZjNjZmZkMWZmNDhkYzI3ZjMyYmNiOTAwZjJiZSBsZWdhY3ktdHJ1bmsKKzI4NDA3IGY5NWMwYjg5NGYyNzY2ZTkyZGU4MTVmOTQ4ZTgxOWE5YWE4YmI2MGQgbGVnYWN5LXRydW5rCisyODQwOCAyY2NjZjgyNDIwMDliYWM1NTk4YjI2MmIzOTNjZDExYTZhNGE1OWQ2IGFzdC1icmFuY2gKKzI4NDA5IGZjYjUyMDFjNjllZDg2NzUyYTU4NDY2M2E0NTZhM2E1M2RhMDU5MTUgbGVnYWN5LXRydW5rCisyODQxMCA0ODEzODM3MzcwOWI0NzAwNDA0M2M0MzkwYjBhZjA0MmE0MDhhZmRkIGFzdC1icmFuY2gKKzI4NDExIGJiYWViZTZiN2MxYWRmZWJlN2RhNTljNWJhZWFmMzAyNzI2MGQ2MTEgYXN0LWJyYW5jaAorMjg0MTIgMGI3MjY0OTZjZjQ0ZjE3YWRmZTNiN2NiZmE0NjI3NmU0Y2NlNDEzNyBsZWdhY3ktdHJ1bmsKKzI4NDEzIDU5YjdmNGU5ZmQ2MTQ3MGRiZGRhZDBhNmU1MDVhZTcwOGE1MDQ0OTAgYXN0LWJyYW5jaAorMjg0MTQgYzc0NDE0NGM0MDQ5ZGY2NzM3YWRkZTdiYjBkNjA5NmNlYjhlMDUyYSBsZWdhY3ktdHJ1bmsKKzI4NDE1IDk0YWRmNjk5NjE4ZmVkNWFkNDdjNzAyMDE5OGM3ODhkMGJjYjhkYTIgYXN0LWJyYW5jaAorMjg0MTYgOGZkYjA4NzdkMzUyMzgzODcwYWIwOWI0OWE5MDcwZjkwODYxNmU2MCBhc3QtYnJhbmNoCisyODQxNyA3NjJkZDA5ZWRiODM0MmZiMDQ4NDM5ZmFiNmVhODFkNjJjMTMxZDY0IGxlZ2FjeS10cnVuaworMjg0MTggYjQzOTg2ZjczZmM5ZjhhMjhhZDlkZjY3MDMzMDc4ZGQwN2U2MTcyYyBhc3QtYnJhbmNoCisyODQxOSBmODI0NzVkNzg0MTUyNWM4NmY1OGViZDgyYWE1MDQ0MjQxNjJmZmZlIGFzdC1icmFuY2gKKzI4NDIwIDEyYmI2ZjBjNjBmOGM2MzhjMTJjYmRiOGE0ZjQ2OTJmNGI3MWVlMTQgbGVnYWN5LXRydW5rCisyODQyMSAwODU3YWFkYzYxMmEzMzU4ZWEyNGNiMTQ0Y2JiZTRmYmYwNGYwNmM1IGxlZ2FjeS10cnVuaworMjg0MjIgYjViNzBlNDEwZjEyNGY4ZWI5NTkzNmVjNzMxNjQ3NTA2OGVjMjE2MSBsZWdhY3ktdHJ1bmsKKzI4NDIzIGFjZWNkYzRmNzMzMzYzYzRlN2UxNDUyYWJkZWQ2OTM3NzEzYTViYTQgbGVnYWN5LXRydW5rCisyODQyNCBjNjgzMTFlZmQzNDZlZDlmNDA2Nzc4OTIzMzQ2NGEwMWQ1YTIyOWQ2IHJlbGVhc2UyMi1tYWludAorMjg0MjUgZDQyMWJiYzk5NjFjOGNmZTBhYTI2NTliMjBjODBjNjg3NGUxOWFmOCBhc3QtYnJhbmNoCisyODQyNiAzNTc0OWRiMTA4MDkzMDU2MTAwNTBmYmY2MWI1ZDg1NWNkMmI0ZTFkIGxlZ2FjeS10cnVuaworMjg0MjcgZjM2ZTE2Y2E4ZjUwNTgwZjUyODVlZDgzZTMyMTJmMDYwZWQxYzU2MSBsZWdhY3ktdHJ1bmsKKzI4NDI4IGYyZDc1NzQ5ZTYxYzVlMzIyNDkyYTFlMjhjZmRjZGMwNzlkMzAzMTggbGVnYWN5LXRydW5rCisyODQyOSA2ODYyN2UwYWNkMTViYWI4NWJhZWZiM2RhMmFkYTllZGI2YmFlMzhhIGxlZ2FjeS10cnVuaworMjg0MzAgZmVlYjBiMDJiOGYyNTI5ZTVlNDBjOTdhYTNmZGM1NjhlOWE4N2ViOCBsZWdhY3ktdHJ1bmsKKzI4NDMxIDI0ZTgwZDk2YmQwYjZlOTI2YWI5ODUxNGEwNDQ0ZWY2OGViNTdmNTUgbGVnYWN5LXRydW5rCisyODQzMiAwZWJlYzgzZWIzZGRmYzFjNWI1YTJhZmQxMmRlNzYyYWRlM2FhYjM0IGxlZ2FjeS10cnVuaworMjg0MzMgYWE0NTAzNTU2MzM5ZWRjZTAzNzQ5MzJhYmIyNWQ5YTQ0YTdlODliMiBsZWdhY3ktdHJ1bmsKKzI4NDM0IDgxYmU2MTA1NjcxN2Y4ODEzNjA2MmZiNzI4ODlmNzY3OGI1MTJmYTggbGVnYWN5LXRydW5rCisyODQzNSBiYjI4YmJjMjhjMzIzYWIyOWQ1MDY1NWUyNjc4ODg5MGM0NmM2Yzc2IGxlZ2FjeS10cnVuaworMjg0MzYgZTQxMDU4ODQ1Yjc5MmVkNjYyN2U5ODRmMGNjYjEyZDRjMDFkMjZmNiBsZWdhY3ktdHJ1bmsKKzI4NDM3IDkwYjEzZDk5OTgyNzEwZmY2YzM5ZTA5MmJlY2E2N2E3MzkxZDMyZGUgbGVnYWN5LXRydW5rCisyODQzOCA4MWFjYmUxNjgwYTMzMDhiYjgxOGFlMDYzMmY3N2Y5MTVjMWIwYzUwIHJlbGVhc2UyMi1tYWludAorMjg0MzkgYTZkZTUwYzBkNDU3ZWI2MWNmZWI1OTkyZDc1MTFjMGNjODFkNzNmZCBsZWdhY3ktdHJ1bmsKKzI4NDQwIDA0OTA5NmVmYTJjM2NhODc2YjE5YzM3YjI0NjhkNzM4NDVmZDk2MGEgbGVnYWN5LXRydW5rCisyODQ0MSA4ZmE3NTNhOTcwNzdiYTA5YWQ1YzQyMWMwMDcwN2NhZGMwOTAzNmY3IGxlZ2FjeS10cnVuaworMjg0NDIgMmMyYjg0YmRhMTQxYjdhNGM4YzU5MzFlYWY3YTBmNmEyYjI3MmJkNSBsZWdhY3ktdHJ1bmsKKzI4NDQzIDM0ODQzMDk1NzNmMjFjODM5Yzc3NTM5MmI1Y2JlZGVjMTEyM2YxODAgbGVnYWN5LXRydW5rCisyODQ0NCBhZDI4OWZiYjZiNDhkNzJiNzgzOGU4M2ZlMGYzMGI3Zjg3ZjM2ZmE5IGxlZ2FjeS10cnVuaworMjg0NDUgYWZmMDY3YmE4ZDA3ODhmMGE5MzdlOWJlM2RlZjYyNTBiNzM4YTU4NyBsZWdhY3ktdHJ1bmsKKzI4NDQ2IDhjNjFjOTIwMjViNmM3N2I4M2U5MmJjNzg5MzA3NGIwNDdjMWRjNjQgbGVnYWN5LXRydW5rCisyODQ0NyA0MGU5Y2ZkZTFjNTA4ODBhMWYxOGUwYTRiZWUxMzEzY2RmNDkxODdlIGxlZ2FjeS10cnVuaworMjg0NDggN2ZiMzc1OWQzODY2ZDUwODRlNGEyMjI1OTJmMGRjNzY3OTVlODQ4YiBsZWdhY3ktdHJ1bmsKKzI4NDQ5IDhjODA1MjM3ODAxN2NiNDUzYjBmMjMxNTUwZWQ3M2FlNTc2MDUyOTggbGVnYWN5LXRydW5rCisyODQ1MCA0ZTk5NmU5NTllYzE4N2M3MTM3ODE3Nzc3ZTcxYzEwNGVkMDFkMjg3IGxlZ2FjeS10cnVuaworMjg0NTEgZDVlYmQ2MTZhM2U2ZjRiY2Q1ODA5M2JjNTVjMzhhMzY1OTZjMTE4MyBsZWdhY3ktdHJ1bmsKKzI4NDUyIDBlMDFiODVhZGQ4MTI2ZTZhYzczNzg1N2NlOTllYjZmMDNiMWRiMzMgbGVnYWN5LXRydW5rCisyODQ1MyA3ZDNmODMwNmEwMWVkNWFlNTQzZWI4NDhhZmM1OWZkZjg0ZGI3MGM2IGxlZ2FjeS10cnVuaworMjg0NTQgMGI5NzkyY2JlOTAwNDJiMTc3MDFlZDMyNDM5M2MxNmU2NjdkMzhhZiBsZWdhY3ktdHJ1bmsKKzI4NDU1IDM2NDdiMzBhYTlkZTA5YWM1NmIyZGI3MmY3NGExNmU0ZWUyNjQ5ODMgbGVnYWN5LXRydW5rCisyODQ1NiBkYjQ5ZWU3NmI3ZDBlM2Y3NmRjZjA1YmEyYjMyNGM4MzkxMDcwM2VjIGxlZ2FjeS10cnVuaworMjg0NTcgZWQwYjAyNjcyZjA5MDVkZDBhOWEzZmE2MGYyZmIwNWI4ZjIwMWFiMCBsZWdhY3ktdHJ1bmsKKzI4NDU4IDExODlmNzdjZGY4NDVkMmNlNzllOWNlZDAyZjg2ZTIxMDcwMzJmYzQgbGVnYWN5LXRydW5rCisyODQ1OSA4Y2YyMDU4OTJmNjYyODk2MDZjYzI2YTM4OGI1M2VjZDMzNDUxYWJjIHJlbGVhc2UyMS1tYWludAorMjg0NjAgYmQyYWEwMjQ3YWRhYWQ4YzQ2YTk3ZDk3NDcyNDQwYzk5ZWY2NzY1ZSByZWxlYXNlMjItbWFpbnQKKzI4NDYxIDc2Y2Y4OGU4OTM3NmRjMjU0YWQ3ZmY2MTIwZTZmODMxYzA5NDZjZTMgbGVnYWN5LXRydW5rCisyODQ2MiA0MzRiYzFkZWE0ZjhiYTdlNzdkNjU4NmIzM2VkNGVmN2JkMTFmMDNjIGxlZ2FjeS10cnVuaworMjg0NjMgZWMzNzM2OTZjMTdiYzM3ODYyNjVjOTcyMWM3Zjk5ZmUxZTY0YmU3NyByZWxlYXNlMjEtbWFpbnQKKzI4NDY0IGQwNDEzZGUxNDNlYzI0NWFiMGUxMjVmY2UzZDMzMDg1ZjEzODRiOTkgcmVsZWFzZTIxLW1haW50CisyODQ2NSBkODNjMTRhZTY0N2RkMDMxMGMxYWEwZmUwNWYwZmVjNDZkM2I1ZWEyIGxlZ2FjeS10cnVuaworMjg0NjYgNDAyOWQ2N2NkYmQ1ZmRiZDQyMjVmZDc3Yjg4NDdlMGIwMzgzZGQ1MSBsZWdhY3ktdHJ1bmsKKzI4NDY3IGNiZWUyZWQ2Y2Q3NTVhNzcyN2IzYjhlYTAyNmM4NmNhZGE1MzQ0NjQgbGVnYWN5LXRydW5rCisyODQ2OCBhN2E2MGIxNDFkMWRhNjgzOGRjOWUxZTFjMzM0OTk5OTVlNmI3NTMxIHJlbGVhc2UyMi1tYWludAorMjg0NjkgNjNjYTEyYWJhMDc5MzRhNTlhNWY0NWM3MzdlZTZmN2Y4Y2I2ZGRhZSBsZWdhY3ktdHJ1bmsKKzI4NDcwIDhlOGQzZTRhZjRmNDY4OTRiNzgyYzlhN2QyMDk3M2IxMmUyMmY2Y2MgcmVsZWFzZTIyLW1haW50CisyODQ3MSAxYWEwODE1ZmFkNGIxMTY3MWM1ODEzNTI0OWE5ZjllZmNkMDQxZmI0IGxlZ2FjeS10cnVuaworMjg0NzIgZTBiODU1YWFkMjMwMjA5MmUzMzZkYWQwMTY3YjBlM2YzMWE4YTUxNiBsZWdhY3ktdHJ1bmsKKzI4NDczIGUyMDQyYzc2YWYwNjU2MGNjYTJiZTZhNDMxZGE5NWQ4ZWI2YmEzOTkgbGVnYWN5LXRydW5rCisyODQ3NCBiODA2N2RkYzExZjg3YTk3ZDQ1ZjNmZTcyNzU5YjNhZTFjYmMzNGUzIGxlZ2FjeS10cnVuaworMjg0NzUgYWQzYmU0NzFiMzk5MjE5MzMwNjg1ZDQxZmI5YjJmNWRmODIxMmJmZSBsZWdhY3ktdHJ1bmsKKzI4NDc2IDBkNDkyOTAyODk0YTU1ODg3MGU3NTNjNDZlYWM0OTA4MmQ1YzM5YTEgbGVnYWN5LXRydW5rCisyODQ3NyA3Yzc2YzBmYzJlOTJhMDk3YmY4ZTkwMDU4M2IxZDVhMjRlMGE1ZTY0IGxlZ2FjeS10cnVuaworMjg0NzggMTAwZjE1NDk4MmM4YmJlMDljYTUxOGFkMGY5M2RjZDRiNDlmOGM2YyBsZWdhY3ktdHJ1bmsKKzI4NDc5IDdkYzdhYjVkYjkwOTllODQ2NDliNGMzNTRiMWQ0ZDExODAxNjlmMjAgbGVnYWN5LXRydW5rCisyODQ4MCA4MWEzNmQyYTJkMTM3ZDEyMDliNTQxODIzZmVkZTRkMzdhYTgyMzIwIGxlZ2FjeS10cnVuaworMjg0ODEgNWE4OGYxNzRiNjg0Y2JiZjgwYzFjN2I3MTY0ZWQ4MDIzMDhjMzhlYyBsZWdhY3ktdHJ1bmsKKzI4NDgyIGFiMTc2ZTE2NGVhYjY5NDhiMjc5MjVlNGYyMWFkZTZmMmQwYWMyZjggbGVnYWN5LXRydW5rCisyODQ4MyA0NmIwNTA0NTU1MzM2ODNiZDhkZDIyNzA2ZWZjMTZjNzAwMjg1MmU0IGxlZ2FjeS10cnVuaworMjg0ODQgMDNlYWRjNTdkNDI5OWM0MTRhMWRlOTkxMmQ2M2E5MjY3Mjg3YjNiNSBsZWdhY3ktdHJ1bmsKKzI4NDg1IDgyMzFmODZjODYyOGE0NjM5YzE5MDE0MGNhNzlmZjQ5MDljZTVhMTIgbGVnYWN5LXRydW5rCisyODQ4NiAyNzRmYTBiMzRjYTdlNmIzZDQ0YTExNWRkNzI2OGFhMjE1MTRkYTEwIGxlZ2FjeS10cnVuaworMjg0ODcgMDViMTVjZTI4ZTMxZmE0Zjk0YTg1Mjk0OGM0MGQzYzgyMTQ1ZTBjYiBsZWdhY3ktdHJ1bmsKKzI4NDg4IDVmYjZmNWJiNzY5OGZiOGY5OTExZTJmOThmMGYyMDIwZTZkNDc2MjYgcmVsZWFzZTIxLW1haW50CisyODQ4OSBlZmMxMjhhMzM0YTU1ZjI3NGEzYmQxYzMxYzk2MjNmMjEyNzJlZWMwIGxlZ2FjeS10cnVuaworMjg0OTAgODI1ZmM4NTUyMzI1N2Q5ZTkwYzY3MjI4YTljYzgwM2MzYjVlNDU3OCBsZWdhY3ktdHJ1bmsKKzI4NDkxIDMxYTc3NGE2ZjYwNGI1NzBmOTE3MTZlNTU4ZTdkYWY0YTQxZDMyNDQgbGVnYWN5LXRydW5rCisyODQ5MiA2YTIyMTgzNGVkN2RmNDJlODBjMjAxYTExNDI2MDc3ZGQ0ZTYyOTAwIGxlZ2FjeS10cnVuaworMjg0OTMgYTU0YzVjZmEzZjhmYjIxNGNkMzVmNDFiOWExZjhjYzQ3M2U1MjZkNiBsZWdhY3ktdHJ1bmsKKzI4NDk0IGJlMjg2OGE2M2VkNTNkMWYyNGU0YzA3MWY0ODkwNmU1YTEzOTI4YzIgbGVnYWN5LXRydW5rCisyODQ5NSAwMDRkZTFhYzIzYzQ0MjMzZDlhYjQyMDFmZWFjM2E2MTgxZWFmMzU0IGxlZ2FjeS10cnVuaworMjg0OTYgNGFlYWNmOWY5ODU4ZTQ1ZmQwMjAwNDE0YmU4MzIwMWQxNjYwMDM5NiBhc3QtYnJhbmNoCisyODQ5NyAyNmM1MGYzMjI2MjIwMDIyODBiZGYzMmM4ZWE3OTliZDJhNzY2ZGI5IGFzdC1icmFuY2gKKzI4NDk4IDAyZTBlNmQzODEzZTllYjM0MmY1ZDM2YTg0ZjQyYzYwMTkyMDQ5YzAgYXN0LWJyYW5jaAorMjg0OTkgOGU0NzM2MWM0YjViMDM5NDliZTkyNzFmYzE0ZTZmNTQ0NWI3YzkwMSBhc3QtYnJhbmNoCisyODUwMCAxM2U5MGUzYzRjOTkzMWJmZjViMDU3YjgwYTdiOWZhN2IyY2JiMGI2IGFzdC1icmFuY2gKKzI4NTAxIGM1NTY5MDY0Nzk2MTMwMTI5MzY5NDJjOTcyYjMzMjRjYTY0ZDBjMzUgYXN0LWJyYW5jaAorMjg1MDIgODk0MjE1MDVkYjU5MDMyOTNkYmVhMGFlYTAyMjVlM2IzZDhiMTk2OCBhc3QtYnJhbmNoCisyODUwMyAwYzU0NDg4YTc0ODIxOWZmZGE4YmU2ZmY4Yzg1NDZkNWYzZjYyZmRiIGFzdC1icmFuY2gKKzI4NTA0IGVkMmE4YzU0OGM0NDRkOGI5Zjk1Y2JkMzY1ZTAxNTRjNDQ2YmFjOTkgYXN0LWJyYW5jaAorMjg1MDUgNWExMDE2YjJjNDQwY2RjMWE0MmU4NDJlOGFiM2JkNmY0NGU1YTA1NSBhc3QtYnJhbmNoCisyODUwNiA1YTQxYTcwYmM1ZDE3Y2UxNDNlZjY5YjExYmRjMWM0ODEwNmFhNjAyIGFzdC1icmFuY2gKKzI4NTA3IDJiZTk2OWQyOTUxMGJhOWM0Y2FmYmVkZmVkMmMwMzhhNDY0OTFiMDkgbGVnYWN5LXRydW5rCisyODUwOCA5YTJkZTM5ZThkYTc1ZmJiZmVlZTRiMjYwZGQ0YTdmN2E0MzMyMDI0IGxlZ2FjeS10cnVuaworMjg1MDkgNzA2MDNmNDg0MDI5NDZhMjM4N2UwZTM1YzM4ODIxMjk5ZmZiODc5MSBsZWdhY3ktdHJ1bmsKKzI4NTEwIDRjNGY5MmIwYWY5MDM2OTU0MzIwZmI1MmUyYjdiZjZjMTFmZjQ3YzUgbGVnYWN5LXRydW5rCisyODUxMSBiMzM3ZWYxNmMwZDJkOGJjMzEzMGQ3MzU0NGM3NzU3MzFhNjYxYTM3IGxlZ2FjeS10cnVuaworMjg1MTIgNWZlNGQ5M2RmNDI5MTM0ZWY4Njk1YzEyZTU5ZmY5NjJmZjhiNzNkMiBsZWdhY3ktdHJ1bmsKKzI4NTEzIDg0YmZiOGE4MDVmYzlmZjY2YjM4MWVlMWUxNjQ2YzFkMzIxMmEzNDYgbGVnYWN5LXRydW5rCisyODUxNCA5YTE3OGFkYjRlMmRiMDA4NzJkY2M1ZmM1NzkzMDFkY2VhYzRiZjU2IGxlZ2FjeS10cnVuaworMjg1MTUgMTk5ODJjNWViNDkzYWYwOWEyMmY1MDdhNWJlNTAyYWQ1N2UyMWRhNCBsZWdhY3ktdHJ1bmsKKzI4NTE2IDg3NzE5ODcwNWM5MmFkYjAyOGRhYTJlMDZhZWM5OTRlYWIyYzE0ZTQgbGVnYWN5LXRydW5rCisyODUxNyBjMTQ5ZDM5MzE0MzQ0NzQwZjQ2OTZjOTUwNjVhZGFmY2Q0YjRlYTg0IGxlZ2FjeS10cnVuaworMjg1MTggMDMzN2RhZDg0MDNlMTBhNzM1OGJlNTY3NWYzMjY2Mzk0MGVmM2QwMyBsZWdhY3ktdHJ1bmsKKzI4NTE5IDQyN2VmYzM1YjViZWI2ZGViOWJkMjlmMDIzMWJlNTc2ODNkMzIwNTggbGVnYWN5LXRydW5rCisyODUyMCBhZTE0NjllNDY4YTA0OTA4OTZiYjFhYjkxZmVjYjljZTA5NDk0MjA3IGxlZ2FjeS10cnVuaworMjg1MjEgNmE4NWExYzlkMzNkOGYzYWYzMmU3NDQ2MWYwMzdhMDM3NTJkNGU0NyBsZWdhY3ktdHJ1bmsKKzI4NTIyIDFiODBlMGZkNWE0ODE0NTk4ZjQ0YTU1NzA2OGU2YmM4YTA1ZWZjMDMgbGVnYWN5LXRydW5rCisyODUyMyA5OGRkYzQyOTdmMzYxZGU1ZGJlOWJjYjMzNDUyZjYzNTc1MDNlNmM0IGxlZ2FjeS10cnVuaworMjg1MjUgNTY3MmIxNTczODU1YTUxNWFhMzYzZmQ3ZjhlN2RhZTJiNDI3MGI5ZCBsZWdhY3ktdHJ1bmsKKzI4NTI2IDczYjJjYmFlOWQ5MDE3ODA0MzcwY2U1YmViNWZhOTljNzBiMjY2NWEgRFNfUlBDX0JSQU5DSAorMjg1MjcgYzAyYTY2ODQ4OGQwODJjNGQwZGI4YjM4NzI3NzdlNjhjMWEyYzJkNiBsZWdhY3ktdHJ1bmsKKzI4NTI4IGE2OWExMjQ4NGQ2OWFhODY2ZTY3MjY4ZjdhNzYxNDUyZDAzYTI3NTIgbGVnYWN5LXRydW5rCisyODUyOSBiYzU5MGJlYWRmMGJkMTc2MzRiYjBlMWY2NDJkYjY2NzdhZDdkMzhiIGxlZ2FjeS10cnVuaworMjg1MzAgMzIzMzFkMjZkN2NmMTkxMTRmMWY4MGIzZWViNTlhNTU3OWY0OGU5NSBsZWdhY3ktdHJ1bmsKKzI4NTMxIDhhMTZkZTBiZTExMTc4MDkyYmJlYTA1MDY1MDE0YzdhZDRiNDdlZmUgbGVnYWN5LXRydW5rCisyODUzMiBmOWU0MjQzZmY3OTJlNzk0MTFjMTg4YTUxMTZkZTI1YzY4NmYxNmY4IHJlbGVhc2UyMi1tYWludAorMjg1MzMgNGI1ODBhNDYyNTA4MGNkYmViMjJkYjhmMTQwYTVhMDVlYzViNGI3OCBsZWdhY3ktdHJ1bmsKKzI4NTM0IDM5ZTA5ZjMwZjdlZjI4NDZhN2YxYWI1OTYyMzBlMWY0NGM0ZTZkM2IgbGVnYWN5LXRydW5rCisyODUzNSBjMGQ1ZmY4NTU1YWRlYTQ3MDVkNDU1NmZmYjA5OTU0N2FjOGJiYjY1IGxlZ2FjeS10cnVuaworMjg1MzYgMGVjYjNjYWJmNDBiOWE4NmU2MzZjYjk5Nzg3NmI1ZDY3MWZmMzM1NyBsZWdhY3ktdHJ1bmsKKzI4NTM3IDNhMjZlMzUyZjBhNmQyNzVmZjFlMDc3YzgwYWFhOGNhZDIxMjlkZTEgbGVnYWN5LXRydW5rCisyODUzOCAwMGI2ZGQ0MTRiODA0NjFmYjc4MDFhNGU4YzFkNmQzZTFjMWI4NzFiIGxlZ2FjeS10cnVuaworMjg1MzkgMDQwMWEwZWFkMWViMzM0N2QxMjBkMmEwODE0ZGNhNTIyZjEyYjgxMyBsZWdhY3ktdHJ1bmsKKzI4NTQwIGI0NzBiNDE3ODM5ZDhjYjQ2ZGYzMWEzNDUyNzBiN2UzMmUzNmVmZTEgbGVnYWN5LXRydW5rCisyODU0MSBmMGZmMDYwY2QxOTRlNTE3ODcyNWU1YzkyODIxNzY2OTQwMzgyYzM0IGxlZ2FjeS10cnVuaworMjg1NDIgZmIzMzRiMWE1NmE2NWMwNzEwOGFiMzhiZTgxOTMwNzA3MTkzM2U1ZSBsZWdhY3ktdHJ1bmsKKzI4NTQzIGEyYjFmM2MxMTM4N2E2NDcwOGM4NWVkZTA4OGNiMWQxZDBiNTBkYjcgbGVnYWN5LXRydW5rCisyODU0NCA4ODM0Mzg1ZjI5YmY1NDEwZDlmNzI4YWEwZDM3YTZkNzZjNTc4ODk0IGFzdC1icmFuY2gKKzI4NTQ1IDc1OTYxY2IzNzQ3ZjlkYjliZjQwMWNmZDFhOTRmZGIxNDAzMTEyN2MgYXN0LWJyYW5jaAorMjg1NDYgNjkyOTNiODQ5ZDg1ODA3YjRkNmUxODFiYjI0NmI1NTBhYTJmY2FlOCBhc3QtYnJhbmNoCisyODU0NyA3YzczMzM4MDI3MTQ5YjIwYzg2OWE5ZjQwZGE1MjMzZWI2ODdjMzVlIGFzdC1icmFuY2gKKzI4NTQ4IDRlYTA4MTEwMDMwNTI5YjhiOGIyOGRmOTViMDljODI1MDUyNTdkYjAgbGVnYWN5LXRydW5rCisyODU0OSBlZmMwZWRjMzBmZWE0MzUwZmVjMGMwNWJkZjllMzNjNTYzMmYzZTBiIHJlbGVhc2UyMS1tYWludAorMjg1NTAgMzAxNWM2NzhmODFkZGY4NTBkZjEwMGU1YTg2ZTMxM2RjMDc1MDAwNiByZWxlYXNlMjItbWFpbnQKKzI4NTUxIDBjZTI3MjJhM2UxNTRkMDkzNGJiYjliNTUyNmVkYzVlOTM4ZjgyODQgbGVnYWN5LXRydW5rCisyODU1MiA0YzgxNjNhMjc2NDAyOTdhNmIxY2JjOTlmNWQ0NWRmNWQyZDg5OThjIHJlbGVhc2UyMi1tYWludAorMjg1NTMgOTUzZWJlMGMwYzI1ZWVhYWUzYjNlZjc4ZTU0YTE4YmUwOTgwOGY4ZSBsZWdhY3ktdHJ1bmsKKzI4NTU0IGM3MzEwZjM0OGM3OGUyYWZjYWZiNmFjYjFiZWFhYTk2M2UxZjk4YTMgbGVnYWN5LXRydW5rCisyODU1NSBlNTAwZjE4ZjMxMzEyODJhOTdlN2M2ZmMzZjVhNDZlYzMxNWJiYTJlIGxlZ2FjeS10cnVuaworMjg1NTYgNmI2N2QyNjA3OWYyNTU2OTBlY2ZjYzIyZGUyYjIwNzU3NjYyYmVmNSBsZWdhY3ktdHJ1bmsKKzI4NTU3IDI3YzcxOGM4MmVmZGUxNDZjNGY4OWMxNzQ0NjhmYjYxMTRkNmNiNmQgRFNfUlBDX0JSQU5DSAorMjg1NTggNDhkMTA4ZTViODg0MWEwZTg5Mzg5ZjAxZjhjMDNlMGU5ODRjNTk4MSBsZWdhY3ktdHJ1bmsKKzI4NTU5IDE3Mjg0NWMwOWFmZWNmNTQyNTNhNGY4NDNjYTRhZTdlZTM1ZDEwNGUgbGVnYWN5LXRydW5rCisyODU2MCA1NmY5ZjVhYjZlYzExZjhhOWZjM2I2OGE0YTFmOGMyZGZiMmIwMjFjIGxlZ2FjeS10cnVuaworMjg1NjEgNTE2NWEwZWU4NGM2MjBhNmY2ZWNkMDNkNTNhZGNkZDk0MmM2N2E0NyBsZWdhY3ktdHJ1bmsKKzI4NTYyIGYxYzY5YzMyYzQyYjJiZWFlNjQ5MzNjZjNiYTM1NmIzNjM4NTUwYTYgbGVnYWN5LXRydW5rCisyODU2MyA5NjRkNjg4OGEyMzY4ZTllMWMwYzEyZTRjNDM0NmEyMzBiZTg1NWI0IGxlZ2FjeS10cnVuaworMjg1NjQgMzY4YmMzYTQ5MTllMzA1YzVjODM3MmZiMzUwNmZmZWI5MGIwODY3YiBsZWdhY3ktdHJ1bmsKKzI4NTY1IDg1MjllNTU4ZjcxZDc0MmZlNWJmNzY4M2Y5MTIwNmRkMTc3MWE0YzAgcmVsZWFzZTIyLW1haW50CisyODU2NiBiODllYmQ1N2NlYjRhOTVmMmNiMzgwNGFkMzRmZmQxOTYzYzM1ZGE3IGxlZ2FjeS10cnVuaworMjg1NjcgMzhmYTc0YTIwNWVhNTZkODU2NmY0NjlmNWQ0MDRhNDcwNDQ1MDk2MSBsZWdhY3ktdHJ1bmsKKzI4NTY4IGNjNTNkZGI2NDI0ZjNiNDE1MjVmOTA4ZTczZDdjZTZkNGU5NTdiNDYgbGVnYWN5LXRydW5rCisyODU2OSAwZjAwMTY2MzJiZTQ5ZjlmMDlhMDUwMjkwZDRhYmNmODE3YmY1YjM2IGxlZ2FjeS10cnVuaworMjg1NzAgMGQ5MmViNjNkYjg5YWU4OTRiOGIwNDg4YWE3YjFjZThiMWI4OGE3ZCBsZWdhY3ktdHJ1bmsKKzI4NTcxIGRkYWQzNjdiODBjM2Q0NjgxMmRhMmRjNWI4ZTM4OWQxNmFhNDdiNDAgbGVnYWN5LXRydW5rCisyODU3MiA4MDYzNGNhMDJkYmY5MzY0YzIxMjIxOTJmOTFjMzBkNGMwOWFjY2QxIGxlZ2FjeS10cnVuaworMjg1NzMgZDQ0NmI1MTUxMzE2ZWE4MmU3ODA1M2EwMTVmZWNjYmQ0ZWFlZDNiZCBsZWdhY3ktdHJ1bmsKKzI4NTc0IGFmNjk0NWYzM2IwODYwZmYxMGMwNjAwMjQ3MzVlYmIxYjllMmVmNTEgbGVnYWN5LXRydW5rCisyODU3NSBiZTI1ZDIzNmYyODZkZDRlNzFhYTExZDlhNzJhMGEwMDNmYTU0OGY4IHJlbGVhc2UyMi1tYWludAorMjg1NzYgZGViNjRkZmM4NDE2NmNhNTE1Njc1MjMzYjEzNjBjODZkYzdlMjQ3MyByZWxlYXNlMjItbWFpbnQKKzI4NTc3IDY1ZTBmMmUzOTVhYzgzNzY2MDI2YmRmZWZhNmFiMmUwMjNlYmZhYjcgbGVnYWN5LXRydW5rCisyODU3OCBhZGFiZGI5OWVjYzRlZTc0NmQyOGNjNTMyZjEyYWE5ODUwNzliMmMyIGxlZ2FjeS10cnVuaworMjg1NzkgNGIxNTRmMTlkMWFmMmY0ZjBlZGMzZDNmNGM5OTAzZTVmOGJiZWIwNyBsZWdhY3ktdHJ1bmsKKzI4NTgwIDBlMjM2Njg3OTI4OWUyMjYwY2EyOTMwYmY4NTVkOWY3MTJmZDMwNzQgbGVnYWN5LXRydW5rCisyODU4MSA0YjIwNWUwZmI0NmJjMWY4NjEyMmY2N2NhYjZmMzhlYmE5NDA5OTgyIGxlZ2FjeS10cnVuaworMjg1ODIgNWMyNDMzOGYzYWU1ZjQyMmI2OWI0MzlmNzMxYjFlNjE5NDg2Y2M3ZiBsZWdhY3ktdHJ1bmsKKzI4NTgzIDEwZjk4ODg4NTNjYzYwNDEyYmNmYmVlNzZjMWE4NGY5N2JmOTg0MjIgbGVnYWN5LXRydW5rCisyODU4NCBhYzc0MTU4N2U2NmI5MjM0NzQ4ZDZkZWI0ZDFjOThkOTI2MTYxMTA2IGxlZ2FjeS10cnVuaworMjg1ODUgNWNiOGQ1NzJiNGRlZjAxYWMzYzIyZDUxYzJiZjRlZTY2MWIwN2U2NCBsZWdhY3ktdHJ1bmsKKzI4NTg2IDBjOWRmZDVhMDZkNDQ3MGMwMDA0Mjk5YWM0NWIwNmE0MTFiYjY3OGEgbGVnYWN5LXRydW5rCisyODU4NyA3NDFlZGQxY2EyM2E4YmU5YmY0ZDYxODdmNWQxMWY2MWE4ZmYyYzJlIGxlZ2FjeS10cnVuaworMjg1ODggZTU2NmFmOTQ2NDhiYTY2MzIwOTQ1MjFjOGM0MDdhYmYwNDNkZTRlNyBsZWdhY3ktdHJ1bmsKKzI4NTg5IDY0NWRjMzNjZDQ4MTI0MGYwODU5N2I1ZDM2ZmRkZWNmN2FlNjFhMjcgbGVnYWN5LXRydW5rCisyODU5MCBiZjkwZmI3MWFhNzZkOTNhMzYxMzEyNmNkNWM5MzkyY2EzNTk5MGRlIGxlZ2FjeS10cnVuaworMjg1OTEgYzFjYTAzZWU1MTZlMTNkYzZiZGIwODhjZWI2ZjdiZTExM2IzYWQ2YyBsZWdhY3ktdHJ1bmsKKzI4NTkyIDBmMGQzNDc0ZjNmNjg5ZGZlMjEzN2Q1M2Y4YWFjNDFjNjllMmYyNjQgbGVnYWN5LXRydW5rCisyODU5MyAxM2E1ZjMyNjI4MzIxMjU3YmVjN2QwM2JjMDY4ZDMxNmViZjc4MmY5IGxlZ2FjeS10cnVuaworMjg1OTQgZTE2MTcxNTZmOTNmZGM5YTczOGJmNGIyZjY5YmEwMjA2M2FlNjVkMiBsZWdhY3ktdHJ1bmsKKzI4NTk1IGMyMTNlOWI4MDAyNjI5OTc5ZTU5MTkxZmIwN2FiM2ExZGRmYWFiZGUgbGVnYWN5LXRydW5rCisyODU5NiBhMzdjZmMxYzk3MTZjN2E2NTgzNGY5M2FhMzk2MGJkYWZhNTFjZmIxIHJlbGVhc2UyMi1tYWludAorMjg1OTcgMmFjMTBkOTMyZDdmNTU5MTcyYjM2Yjk4OWY0NGNjZGY4YmI1MmQwZSBsZWdhY3ktdHJ1bmsKKzI4NTk4IDYxMDQ4YWRhMDViY2M5NTQ5MzI3ZDhhNWI2MTI2M2FhN2U0OGVkM2QgcmVsZWFzZTIyLW1haW50CisyODU5OSBiNmJmYWE2Y2E4NGQwNTRhODE4OWRjYjVmNzAwZDQ5NzQyNDFkMjNhIGxlZ2FjeS10cnVuaworMjg2MDAgYjhiOTJiM2Y1YjE3YzZlY2Y5Yjc5MGU5OWJjMTc3YTE1Y2UxNWYzMyBsZWdhY3ktdHJ1bmsKKzI4NjAxIDk4ZDhiYjJlZTRjMzM4NDgxY2ExYTdhMWFlMmIxYmQ2MmRiMjE3NWYgbGVnYWN5LXRydW5rCisyODYwMiA0MGMzNTE5MTM5ZGU4YjZjMDIwM2NlOTI2YjQyMWI2NTIxY2QwYzM5IGxlZ2FjeS10cnVuaworMjg2MDMgOWVlMmZiMjdkMzNhNzIxODRjODdiMjMyZGMxZTliMjBiYjRkM2RmMSByZWxlYXNlMjItbWFpbnQKKzI4NjA0IDEzZDA2ZTVjOGE1YzNlZjRiOTU1MGRlNjI1ZjQ3OGQ3NDg1MWUyODUgbGVnYWN5LXRydW5rCisyODYwNSAxYzAxOTdmNDljNTljMDM3NzY1ZDU4YTIyMTMxMjAxNjgzNDg0OWQ4IGxlZ2FjeS10cnVuaworMjg2MDYgNWExN2YwOTc4MzI2MDA5YzA2YTEwNmJmZjk2ODVlZjk5N2RhMGNkMiBsZWdhY3ktdHJ1bmsKKzI4NjA3IGY0ZTlmMDlkZjRmMjM5ODNjNjM4YjAxODY1MjJhN2JjYjM5MTkwZGYgbGVnYWN5LXRydW5rCisyODYwOCAyOWVmYzJkODNhZGU2MTlhMGEzNmM2YTI3NjJhMjQ1MTk2N2UwYzU3IGxlZ2FjeS10cnVuaworMjg2MDkgNGY0MDAzMDQzYjUwMTMxZWQ3ZGFiY2QwMDBkMWE4OTUzZmM3Mjc5ZSBsZWdhY3ktdHJ1bmsKKzI4NjEwIDAzODcxMWFlMTNlMGUxODM0OGE1MzEwMThiNDA4YzRhODMxNzBiNWUgbGVnYWN5LXRydW5rCisyODYxMSBiY2RiNjBkZjRlM2VmYjMzMDhiOWU4NTE1YjllNDEwNWQ2Y2U2YjllIGxlZ2FjeS10cnVuaworMjg2MTIgM2VmYmQxOTQzYjhjMWU4ODhjZGNjZjZlM2QzYTJlNjVlNzllMGYwZCBsZWdhY3ktdHJ1bmsKKzI4NjEzIDExNTA1NjBjMTAwMzEwOGYyNjYxZGNjNjkxNDYyYTRmMjljMDYyYWIgcmVsZWFzZTIyLW1haW50CisyODYxNCAyNGZlMmFjNWFkY2MxOWM5ODkyNDgwOWQ5NjA4YzljYTBjODAxNmUzIGxlZ2FjeS10cnVuaworMjg2MTUgOGE2ZjU0Yjc2MzQzNDA3NmM5MmU2ZmY0NWU0NTZjNzE3MDk4MGNkYSBsZWdhY3ktdHJ1bmsKKzI4NjE2IDRiOTg0NDE4OGQwNGU3MGQyN2UwZjU2OTUwMmE5OGNjNzRjNTM4NjMgbGVnYWN5LXRydW5rCisyODYxNyAxODE2MGNiNjM2NTA5Y2ZlNGRjZjYyNTY5Y2M5YTIxNmM5Y2FkZDdhIGxlZ2FjeS10cnVuaworMjg2MTggYTBiZTE4MjYzMWNjM2JhYmQyYjc0NDRjYWQ2ZjUyZDg2YzI4M2EyYSBsZWdhY3ktdHJ1bmsKKzI4NjE5IDQ2YWMzNjUzOTZhNDk3ODRjYjIwMWQ5ZDE1MmZjODBlMGM4ZWE3ODMgbGVnYWN5LXRydW5rCisyODYyMCAyYmYwOTg5MjRiYTQwOTUyZDM0NmJkZWZmMDE5MDI0NmY2YjQ4OGRjIGxlZ2FjeS10cnVuaworMjg2MjEgZjE4ODViOTlhMzljZGFjNjdjNmFmZTBmMDhiNWZhM2ZhMTc2ZGM2MSBsZWdhY3ktdHJ1bmsKKzI4NjIyIGIzYzQ1OGUzYzI4MGY4ZmQ2MWQyNDlhMmUyMDRkMThiNzczZTQ4YjggbGVnYWN5LXRydW5rCisyODYyMyA0NmU3MmE3MDg4NTc4NDRiODJmYTA1YTAxOGJjNDQ3MWY5MDIwYWE2IGxlZ2FjeS10cnVuaworMjg2MjQgOTA5NjBmN2Y0ZjMxNDRkZTFhN2I3MDA4YmZlODU2YmZhYjcwZmVjNiBsZWdhY3ktdHJ1bmsKKzI4NjI1IDQ1ZGYyZGUzNGNkMzliZjdjYmUyNjRlNzA5MmExYzA0NjM1MjhlMGYgbGVnYWN5LXRydW5rCisyODYyNiA1ZDIwN2U1N2QwNDAxNDBjZTNiNTJhNzZlZTI2MDFkNzIzZGY5ZDk1IGxlZ2FjeS10cnVuaworMjg2MjcgNTUwOGUwNGQ0OTdjNjg1MTZmYWRlZWI5MDgzNjRjZjYxZWI1MDU4ZSBsZWdhY3ktdHJ1bmsKKzI4NjI4IDk2ZGQ5OTI3ZTAxMWQ4YjE1YTVhNDNjZWU5OTI3ODFlNDczYTZmOTEgbGVnYWN5LXRydW5rCisyODYyOSA0YjMyYmU2NjE3Nzg1ZDM1MDA1NGI1ZDRlZjk4ZTRjZGE4OGE1M2Y0IGxlZ2FjeS10cnVuaworMjg2MzAgNDcwODFhNzUzZWNjNDgyNjRjNmQ5MjhiMTdhNzhlMWRjMzc3YjJlNCBsZWdhY3ktdHJ1bmsKKzI4NjMxIDY0ZDEwNWRkMDgyM2JhOWI4ODRhMGRiMmQwZDg5YjUzMmEzMThhN2EgcmVsZWFzZTIyLW1haW50CisyODYzMiA4ZGQ2ZjU1ZmQ0YjdlN2VkOWM1YTdmYTA4NjhlODQ4MzczMjJiMjc0IGxlZ2FjeS10cnVuaworMjg2MzMgYzE4NGU0MTY4ZDE0YzhlOTc5Y2Y1ODVhM2ZiMTkwZTA2ZjZjODM0NyBsZWdhY3ktdHJ1bmsKKzI4NjM0IGNiYjZjYzc5ZDMzNjUwNzU0NTAwOWM2YjdiZjc3YzVlNWYyZmY1MDMgbGVnYWN5LXRydW5rCisyODYzNSAyN2Y4MzU0ZjQxYjZlNzI0NjhlZjkyNzhhMmMxMjM5ZmYyNzc0ODVmIGxlZ2FjeS10cnVuaworMjg2MzYgYWZkMDAzMGU0YzM4YzYwZmQ5YTY2NThkYmRmMjYyNmM2ZGZkZjRmMiBsZWdhY3ktdHJ1bmsKKzI4NjM3IGFiZDYyNTQxN2E1MzU5YTA1MzkwYjhjMmZlNTBkYzAzYjI4NzQ2OWYgbGVnYWN5LXRydW5rCisyODYzOSAyZTdmZTU1YzBlMTFhY2U3Njc1NWM1OWQ1ZmQ3MmE5YmM1NjYwNGE3IGxlZ2FjeS10cnVuaworMjg2NDAgMmQxM2Y5ZDk4MTM1NzdkZjVlN2Y4NmRhOTA1MTFjODA4MGVjNGE0MyBsZWdhY3ktdHJ1bmsKKzI4NjQxIGJmNzVmM2E0NTkyN2ZmYjMwYTM1MzBiNDBmOThhZWQ1YTk2MDg1NWUgbGVnYWN5LXRydW5rCisyODY0MiAxZTQ2ZGExZTY1MjI2ZDA3ZWE1MTAzZjI0YmVmMTM0YTg3MjE3ZWYyIGxlZ2FjeS10cnVuaworMjg2NDMgMjQ5MGNmN2U2OGE0NGFlMWVhNTQ3ZWMyYmQxZGY5MTVmMzE0NTE2MCBsZWdhY3ktdHJ1bmsKKzI4NjQ0IDlmM2VhMzdkYzQzY2I3ODU4ZjQwN2U0ODY3OTgyODcyYjgwZDYzOGIgbGVnYWN5LXRydW5rCisyODY0NSA3Njc2OGFkYjZmMjMyOGIyZTFlMTE4MDhjNjg4MzBmNjkzNTc1YmZhIGxlZ2FjeS10cnVuaworMjg2NDYgY2JjZDczZjU4N2FkN2E0OTg4MGJhZDkwNzkzNWQ3N2Q3YTNmNGI2OSByZWxlYXNlMjItbWFpbnQKKzI4NjQ3IDEyOTQ5ZWNlZDU1ZmY3ZDljNDRmOWNhZmUzN2RlYWE1NDZiYmEyNDQgbGVnYWN5LXRydW5rCisyODY0OCA3NWNkNGMyMDNkOGYzYmRmMzQ3NWJmNDQwNDNiNmVlYzFkZWY4NzFlIGxlZ2FjeS10cnVuaworMjg2NDkgNTMzMGMwNjIwODEwZTVkYWFhOGE3YmMzOGVmN2JmNWMxN2MyMGZjMyBsZWdhY3ktdHJ1bmsKKzI4NjUwIDAyMjBiMDA3NWEzNWQ0OTg1YTgyYzE1Y2JiYTk2MmU4MGY4NzdhNDkgbGVnYWN5LXRydW5rCisyODY1MSA5NTFmNWYyOGYyZmViMzNhMzk0YmZhMTE2N2EwMzFjZjk2OWYyYjY0IGxlZ2FjeS10cnVuaworMjg2NTIgY2RhZDZiMDkyMWQ1NzgyNTMxMTU5OTBjYWJiY2I4YzQyNzE3YzgxNSBsZWdhY3ktdHJ1bmsKKzI4NjUzIDRmZDBiNzZjNzQ5ZWViNjFjN2I3NWQ5MzQ2ODZiMDk0MWJlNjVlN2UgbGVnYWN5LXRydW5rCisyODY1NCA4YTdhMmYxZjg4ZjA2NTM0YzZiZDM5MDJjODFiNzkzN2M1ZDQzYWI2IGxlZ2FjeS10cnVuaworMjg2NTUgYWMwZTFlOTMxZjM5MDBjOWVkNjBhNjIxYjY2NTRmMTk5YmE5MTdjOCBsZWdhY3ktdHJ1bmsKKzI4NjU2IDQwZTViMmRhOWYyODQzY2IyYmMzOGY1ODcyYWFjNTU0ZjZmNDVlMGEgbGVnYWN5LXRydW5rCisyODY1NyA1ZjVmMWM4MjU3ODQ0MDAwYzVmZmM0MWM3MTI4MGZmNjJlOGRiZGNlIHJlbGVhc2UyMi1tYWludAorMjg2NTggMmIxNzAxY2Q0NTY2MjE0ZjY2YTRkYzQzNmVmYmE2NWMzYzJlZDJlNCBsZWdhY3ktdHJ1bmsKKzI4NjU5IGU3MDlhM2M4YmZlY2M1ZGZkY2JmMTgwMjMxY2JiZjhjMTA2MWIyZWMgbGVnYWN5LXRydW5rCisyODY2MCAyM2EyYmFkOGQ4MmNlNjQxN2ViZmYwYmMzODYwOWJjZGNjYzgxMmFhIERTX1JQQ19CUkFOQ0gKKzI4NjYxIGZkOGFhN2FlZDRkNTFlNmNmNzg2ZWFiMzlhMjI1ZWNhMmYxNzczZDMgbGVnYWN5LXRydW5rCisyODY2MyAxOTkwNDc1MGMzNjU3Yzc1NzM2MzMwNjBmOGYzZTczZmIyNTc5MTQxIGxlZ2FjeS10cnVuaworMjg2NjQgODA5YzE0ZjExMDFhOTViOTA2M2JhNzM2MTE5OGRhNDEyNzRjNDBlMCBsZWdhY3ktdHJ1bmsKKzI4NjY1IDFhNzg5NWY5N2IzMGQxMzg3M2FkZTk3NzI5NTA1MDU1N2MzYTA2NzIgbGVnYWN5LXRydW5rCisyODY2NiA4Nzc1ZGVlNjBkODlhNTU5YWFjOWI3OTA5NTk3ZmQyMGViOWU3NTVmIGxlZ2FjeS10cnVuaworMjg2NjcgMjk3MGU1ZTc2MDFmZjI2YmU0Mjc5NjVkNmE2MGExNGRiODM2MjU3NyByZWxlYXNlMjItbWFpbnQKKzI4NjY4IDhmZDRlMjJlNzhmMDFjNWM4NzI5NDRiYzljMWY1ZWU2OTQ0MmIyNTUgbGVnYWN5LXRydW5rCisyODY2OSBhYWMxZWU5NjZmNTZhNGQ2MGEyOTI0OTlhMWU2YzY4ZWE3MzNhODEwIGxlZ2FjeS10cnVuaworMjg2NzAgOGQ3NTFiNjJlY2M0MjViNGUwN2ZmNDM0NTc0MDA5NDM1ZmZhYTVkZSBsZWdhY3ktdHJ1bmsKKzI4NjcxIDk2YjJmZmI3N2IwMTc0MzdlNTBkNDkxM2FkMWYzM2FmNmY0M2Q1MjMgbGVnYWN5LXRydW5rCisyODY3MiAyOTMwZmFmMTI1Y2E5ZjNmZDQ1YzE1M2IzNmRkYTcyN2FlZGI1OGQ2IGxlZ2FjeS10cnVuaworMjg2NzMgNzAwOGU1MzU3OWViZDc1OGZmNzhmOTdlYWQ0N2IyZjVkNWM2OGZlNCBsZWdhY3ktdHJ1bmsKKzI4Njc0IGEwZjY0MTljYjEzZmU2YWNkYzVjZWQwYTEwMjc1ZTE0M2U1YTlmODYgbGVnYWN5LXRydW5rCisyODY3NSA3NzhmNzIyMWY5NTUxMTU1MjEyNDcyM2VkNGM4YmJiNThiNTU3M2VkIGxlZ2FjeS10cnVuaworMjg2NzYgY2MzNWQ3Yjg3ODUyZjQxODhhYjljNmEwOTAxMmE4MDQ3ZGFmNmI0NSBsZWdhY3ktdHJ1bmsKKzI4Njc3IGM4MDQ0MTIzZDExMGI2ZGFhYTE5N2IxOWI1MWMzNzJjMjM0MGE5YzYgbGVnYWN5LXRydW5rCisyODY3OCAwYmY5NjhlZTE1Yzc2NTRlZjc3NzUzZmQ2ZDEzOTFhM2ExYTBlMmYzIGxlZ2FjeS10cnVuaworMjg2NzkgMWJiZWRmNTQ4MWM4YmI5ZDhjODA0Y2Y0YWIzZmY3NTA4M2VhM2UzNCBsZWdhY3ktdHJ1bmsKKzI4NjgwIGUxYmE0MWRjOTc4NDI4MTY4MmNlMjQxNjdmMzMzODFlNDc4YmJkZTEgbGVnYWN5LXRydW5rCisyODY4MSBkYmYzY2MxZjQ3MzNjNWVhOWJjNDVlNDA3ZmUwNDU3ZDU0MjdjMzRmIGxlZ2FjeS10cnVuaworMjg2ODMgMTM4NWQxNzlhMTdhZGE0MjExNDFlZDhlMGU3YWJmMDBlNjQ1Y2ExNyBsZWdhY3ktdHJ1bmsKKzI4Njg0IGIxMjhlOGExMWUyOTVhZTIzZTk5ODY2NWExYzNmYjhkYzBmNTU5OWQgbGVnYWN5LXRydW5rCisyODY4NSA0ODBjYWY3YzBhMTRlMDQ1ZWMyOGMwMWVmYzlkNzdmMzY4NGE4NTFlIGxlZ2FjeS10cnVuaworMjg2ODYgZmMyYjczODAyZjdiOWQ5NzFkODVkNDZlNmZkYmQ1YzE3NjE1ZDNmMiBsZWdhY3ktdHJ1bmsKKzI4Njg3IDFkZDdlNTFmZTBiZTdjYWI2YzliOGE0NjBiOTE2ZTcwM2IwYTgwZmIgbGVnYWN5LXRydW5rCisyODY4OCA0NjkwY2E3NTViZWM2MzlmYmJiY2I2ZjFiZTI0M2RiM2RmM2MwYzRiIGFzdC1icmFuY2gKKzI4Njg5IDZiMGU4NDZiOGQzN2U1NDE1N2FlNzZmZWViOWIxMGE0MjZlODYyMzcgbGVnYWN5LXRydW5rCisyODY5MCA5ZmNiNzdiMDRmOTdmYjMwOTcwYWNlNTI3ZTg0NDI3NTFiZTQ4ZmVkIHJlbGVhc2UyMi1tYWludAorMjg2OTEgNmViOGRiNTNmN2ZjYWM0ODBhMDQxNTMwNWUxOWQxNzQxZTY0OTM1MSBhc3QtYnJhbmNoCisyODY5MiBlMjA1YzdkZTVhNWE0NTRhM2MzNzExMmQzOTc1Yjk2ZmU5MDgxMzFjIERTX1JQQ19CUkFOQ0gKKzI4Njk0IDI5NTU5ZTIxY2Q1MzA0OTNmYjQ1Y2RhZGZhOTA1YWIyNzVlMTc3MjcgbGVnYWN5LXRydW5rCisyODY5NSAxYmQwODliMWRiN2ZkYWFjOTViNjBhZDc2ZDM2OTY2YTgyMDhjMTdhIGxlZ2FjeS10cnVuaworMjg2OTYgM2RiMDNjMGQxNTMxMGFhNGMxNzk3MWMzMjY4OTY0N2IzNjg4YTNlOSBsZWdhY3ktdHJ1bmsKKzI4Njk3IGU1N2U0YmI1MzJiYWI0ODkwMjE2ZjVmOTZmNDU5YWExOWI4OWYwODkgbGVnYWN5LXRydW5rCisyODY5OCAwNGE1NDFlNjg5NjQ0MmE2MTY2NmZmOGVjZTg0N2FmZDQ4ZWM0YzAzIGxlZ2FjeS10cnVuaworMjg2OTkgYWQ2NTI4NjkxYzMwOWFhODc5MmVhZGI2NGVmMGE2ZTIxNzU5Zjc0YyBsZWdhY3ktdHJ1bmsKKzI4NzAwIDBlYzQ3NTNjY2IwZmI2MmUxNTQzNGI4NDYwN2ViZWY4NGE4ZWFlMDUgbGVnYWN5LXRydW5rCisyODcwMSA1MjcyYjc2M2MyOWM5YmE3ZjRmYzJiMDA5YmI2ZmE1OTcwYTc3NDMyIGxlZ2FjeS10cnVuaworMjg3MDIgNjE1OGZjYTViY2JmMjJhOWY2MTgxNWEyYzAzMmY2N2RjYTY0OThlZSBsZWdhY3ktdHJ1bmsKKzI4NzAzIDRiNjE4NTEyODgxNGMxNDNjYzkxOGIwOGIxOThlZjZhYTlkZDZjOWIgbGVnYWN5LXRydW5rCisyODcwNCBmZGE0OGRkOTRiMDcwNDkzMWU1MmFlMmRkN2E4NmMzYWEyNjRjM2VkIGxlZ2FjeS10cnVuaworMjg3MDUgNzM0MjljYTc0OGNlYmJhZTJlNDlkOWZlMDhmOWUyOTRkYWRhY2RlZSBsZWdhY3ktdHJ1bmsKKzI4NzA2IGU5YTYzZTQ4MzEwOWNlOGM5YjU5NTBlY2E0Y2FlMTZkMjE2ZjY0OWUgbGVnYWN5LXRydW5rCisyODcwNyA4NWQ4MWUwOWUyZjdkNzk1NGEyYTQ2ODY1ZDY1NGMxNDU0ZWQ1MGI0IGxlZ2FjeS10cnVuaworMjg3MDggNmVjMTU0Njg0MGFlNjYyZmY4NWFmOGEzNjk5ZDEwMGQ5OWNjNjFhNiBsZWdhY3ktdHJ1bmsKKzI4NzA5IGEwM2Y3Nzg2OWIyZjU0OTYwMmYxZGFmNWYyOTk3OGVmMjMwYmIxOWQgbGVnYWN5LXRydW5rCisyODcxMSA5NzNmNWZmMjA3Y2M1OGE1Yjk1MmQ4MTk3OTNjNTdkMzIwNjFkOTM5IGxlZ2FjeS10cnVuaworMjg3MTIgNWVhODJjYjU1NjgyM2Q1YmM4YTEwMTc1YTZiNjA3NDlhZTgyNmI4YSBsZWdhY3ktdHJ1bmsKKzI4NzEzIDg1NGRkNzY5NmViMmJlYWNhMjdjZjU3NDgzYWZiZTg4YzQ3NTkyMjQgbGVnYWN5LXRydW5rCisyODcxNCA1N2QzYjk2NjUxYjZlYzg2MzUwODQ3OWQ3OThiYzc5NjhmZTgwY2M2IGxlZ2FjeS10cnVuaworMjg3MTUgOGNlNGJhODUzOTY5MTlkMWYyNGYyOThlZDUzNGEwMGIxYzVmOTFjZiBsZWdhY3ktdHJ1bmsKKzI4NzE2IGM2ZGU2OGNjOGUyYmJjZTk3MGMzZDM3ZWQ0OTQ0OThkYzI0ZGI0MzggcHktY3ZzLXZlbmRvci1icmFuY2gKKzI4NzE3IDkzZTI1NDU3N2NmYTUzMWI5ODhkOGZhMjgzYmE3OWEyMGIwNDBkZjcgcHktY3ZzLXZlbmRvci1icmFuY2gKKzI4NzE5IDk4ZTEyYWE4YzU0NzVmNTdiNDMyNzkyMWQwZDRhOTY1ZTY5NzIwZWQgbGVnYWN5LXRydW5rCisyODcyMCBmYjAwZmQ5MzE4OGE3NjU5ZjgzZGFmY2VkZjhlMWViNzJkODMxMWE4IHJlbGVhc2UyMi1tYWludAorMjg3MjEgYzc3MjY0MGQ1MzVlMDQ0MThhNzRmZWQyMzkyNGJmNDFlMjQ4MTQ0NiByZWxlYXNlMjEtbWFpbnQKKzI4NzIyIDZjMjFlOTVhNDg4MTc3NTZkNmFkMGUxNzE5YTlkOWQwOWJlZWUwNjEgbGVnYWN5LXRydW5rCisyODcyMyA5Yjg5MjRiZDViNWNjZGRkMTRhNjZjZTEzNzBkY2I0YmI0MmQ1OTEyIGxlZ2FjeS10cnVuaworMjg3MjQgZjNkODhlZTA1OTI4ZDUwNjFjMGRmNDE0N2FmNDc2ZTYyMDI4ODA0NyBsZWdhY3ktdHJ1bmsKKzI4NzI1IDQ2OTJjNDg3ZWU5MTFlYWM1OGRjYWM1ZWI1MGI2MjM3OTM1NTJlZGQgbGVnYWN5LXRydW5rCisyODcyNiAxYmJmOGU1NWE4YmI5YjBlZTQ0NWM5NDljYTZhNzA4NTZlY2EwNTBmIGxlZ2FjeS10cnVuaworMjg3MjcgYWVjMGY5NDRmNmEwMTc2MWYzMDNhNDQwMzFkYjc0Y2U1NWNlZDU3YiBsZWdhY3ktdHJ1bmsKKzI4NzI4IDYwOWYzZDMxZDFjMjRhNzMwODhmNWMzNWY0N2VjMGY3ZmJjNGJlZjkgbGVnYWN5LXRydW5rCisyODcyOSBjZDcwYzg4MDNlYjVjMGQwYTRhYmFiNGQyYmZmY2FmYTViYWVhMTFkIGxlZ2FjeS10cnVuaworMjg3MzAgYzk3YTRjZTNjNThlZGFiZTY4NzE4NzhkNzA5ZWMwNjBhNWRmOTRmOSBsZWdhY3ktdHJ1bmsKKzI4NzMxIDRkNmY4MjA0MjM0YThkNjljZWQyYTM1YzMwZWJjOWNmNDEzZmVmYWQgbGVnYWN5LXRydW5rCisyODczMiBiNjRmYzZhMTA0OWU5YjcxNTdmOWZjNzFkMzk2NDBhNGI2OTJiMTIxIGxlZ2FjeS10cnVuaworMjg3MzMgYzQ1NTY0NzY4ZjUyNmVkZjlhNmJlMTkyOGNkZGRmOWI4OGMzZjIyMCBsZWdhY3ktdHJ1bmsKKzI4NzM0IDA1NWY3ZmFlODE1MDkxMzRmZTM5ZWMxYWM2YjQxYWYwZmI3NjI4YzYgbGVnYWN5LXRydW5rCisyODczNSA3NTJmNjg5NWNjNjMwYThmZjRkYjdhZmIwODM4N2NjOTU4ZDMxYTM4IGxlZ2FjeS10cnVuaworMjg3MzYgZjVlYzA4ZDQ1ODU5Mjg3NGM0OWRlYzI4MzFiNzVjNjM5MzFjOWE4NyBsZWdhY3ktdHJ1bmsKKzI4NzM3IGRhNGU1ZTQ2YWUzZmI5ZWQ2OTgxYmIwOGFiZTVkMWMzYTY2MWUzMWYgbGVnYWN5LXRydW5rCisyODczOCA2Nzc3ODExOTYxNTI2MDc3ZmE4ZGJlNzk5NDI1N2EyYzJmYzA3MDk2IGxlZ2FjeS10cnVuaworMjg3MzkgNjFjMjUwNmVjMmU4ZWE0ZDBjZjlkNTM1NTRhMjRjMmZjNGFhODNmNSBsZWdhY3ktdHJ1bmsKKzI4NzQwIGRiZjkyYzU1ZmJiOGI3ODkyMmM2NDFiNmUzZTVlMjEwZDU0OTgwNDggbGVnYWN5LXRydW5rCisyODc0MSA0MDE0OWI1MDAyMGNiYjY4NmVjNzc4NDU1OGY3M2ZmNTJmNjhjMGU4IGxlZ2FjeS10cnVuaworMjg3NDIgMWIwZWE0NzI3OWM2OGFkOGY0MGQ0MGZhMjM1MTM1YTVlMmIxYTE4NyBsZWdhY3ktdHJ1bmsKKzI4NzQzIDdiZTI2NTQ0YmU0ZTM1ZTRmZTViYzdlN2Q1NDFkYjYwM2U2ZjQ2N2EgbGVnYWN5LXRydW5rCisyODc0NCBjNjcwOTQ1Yzg2OTUyMjg4OWMyMDU4OThjMzYwYmYwMTZlYjhiNTdkIGxlZ2FjeS10cnVuaworMjg3NDUgMjJkMTk4OTEwYjIwOGE2MDY3NDI2NmNjMjEyNjc1YWIxMDA2NDQ0NyBsZWdhY3ktdHJ1bmsKKzI4NzQ2IDFjN2VlMjNkYzQ5ZTE2OThhZTc5NTA1Yzc2MGM1ZDM5MmM5YmUyYjYgbGVnYWN5LXRydW5rCisyODc0NyBlZmU2MzkxNTFiZmVjNWJlMjFhZjUyMTA2MjkxMDM5Mzk1MTAxY2MyIGxlZ2FjeS10cnVuaworMjg3NDggZWIyOGRjZGRkMzRkYmJjMjZlN2UyMGY5NjUxYmJhYTA0NTVjY2Y1MSBsZWdhY3ktdHJ1bmsKKzI4NzQ5IGRmMDNmY2M2NjEwNDM2MTgzODczNTM1MzAxNGMzMTE2YmIzMmRjN2MgbGVnYWN5LXRydW5rCisyODc1MCA3MTc3OWI4MzllMDk4NzRkOWJhNDkzOTc3NWEwMDMxNWFmNWViMmE3IGxlZ2FjeS10cnVuaworMjg3NTEgMDM5OWM4YWVhN2IyODYxZDE3ZDgyZjFiOTljZjc5YjM3OTY5MzE5MSBsZWdhY3ktdHJ1bmsKKzI4NzUyIGJkNjUxMGM1Y2FiYzQ3ZDk1ZjVmNmZmMDk0M2NjYjcxNTMwZjJiOTQgbGVnYWN5LXRydW5rCisyODc1MyA0NjhjM2JlNmMzZTJjZDEyNDg5YWViZDEyNjc3YTUzMzAwMDU5NzUyIGxlZ2FjeS10cnVuaworMjg3NTQgYWJiNzY4YjQxN2ExMzMwZDZmNDNlZGQ2ODQ2N2I4ZjVjYmQ5NTQzMCBsZWdhY3ktdHJ1bmsKKzI4NzU1IDg2ZmY5NWIxYzYzNmQ1ZTE1OWUwYjQ1OGY5ZmE2YzMwMGI2YWUxYjEgbGVnYWN5LXRydW5rCisyODc1NiBlYjdiN2I3MTllZTU2NDlkZTkzNjQ0ZTUyMmMzNWQ4N2QzNzFmMzgzIGxlZ2FjeS10cnVuaworMjg3NTcgYmQzYjkyZGM5NDBhNjQ5ZWM3ZWYwZDJkMWExNjZiNzY1ODRjZjNjYiBsZWdhY3ktdHJ1bmsKKzI4NzU4IDhlZGExNjZiMTA0ZWNhOTA0ZGEyZDg2MTEzOWE3OWU3NjAxOGFjN2UgbGVnYWN5LXRydW5rCisyODc1OSA5MmEzZDg5N2U4MTkzZWQyMzhkMzRmMTY2NzAwMjE4YjY0ZjUzNGUwIGxlZ2FjeS10cnVuaworMjg3NjAgNTNlMmM0NDhiMTY5YTMyNzUyNDAxYWE2ZDgxYjEzM2U0YWIzYzY4ZSBsZWdhY3ktdHJ1bmsKKzI4NzYxIGI5NjhmMDM4MjM1ZWExYTU1MTM0ZTgxNzdjY2NhMWU5NDNhNmJhN2EgbGVnYWN5LXRydW5rCisyODc2MiBkZjBmZjViMTdlMWFhMTVkZGI5ZDgwNzZhMDMwNWRkMzEyZDJiZGUzIGxlZ2FjeS10cnVuaworMjg3NjMgZTllNzRjYzU1NDBhZDhiYTBmMWIzZGUyOGFjMjg1OWY4YWJmMTgwMyBsZWdhY3ktdHJ1bmsKKzI4NzY0IGJkYzNkZWYzZDA4NWRkYWQxZmI4YTllM2I5ODJjYzVlODhlZTBkZjIgbGVnYWN5LXRydW5rCisyODc2NSA4MjNmMDJhMjIyMTBkOGE2YTRhZGE3NDI3MDQwZWVmNzNkZTEyY2NlIGxlZ2FjeS10cnVuaworMjg3NjYgMTRhZDU2MGY0YTk3ZjgxYjY5ZjVmZDZhOWQ2Njc1Y2JhMTliYmUwMSBsZWdhY3ktdHJ1bmsKKzI4NzY3IGYxNzU4MjcyNzY0YzcwYzUyOTMwNTAwMjBkMGJjMDkxYzRiOGQ5MzkgbGVnYWN5LXRydW5rCisyODc2OCA3ZGU4OGNmMDc4M2UyY2MzYzIyZDU2YzdkYThlYmFiMWRiMTFkZjZkIGxlZ2FjeS10cnVuaworMjg3NzAgOWM3YTA2YWM4YjI3NzJlOTQxY2Q0MmYwZjA1MDNiZDQzOWFhODA3ZCBsZWdhY3ktdHJ1bmsKKzI4NzcxIDI0ZTc4OWI2Y2NiNjQxNmQwNDNmNjRjOWFmMmUyNDk4MmM1NTU3ODMgbGVnYWN5LXRydW5rCisyODc3MiA2YjYyYWI4NDg1ZWI4MTk2NDdjYzQ3MTZiNWI1NDE5ZTc2ZmU2NGViIGxlZ2FjeS10cnVuaworMjg3NzMgMDczOTA0NmEwYzNhNTE0ODM0ZGZiMmFiOTI3YjUzNGI1OTIyNDNlMCBsZWdhY3ktdHJ1bmsKKzI4Nzc0IDMzN2ZjYzI0OTg1YjM0NGFiNmI4ODM4YzM3ZGU1ODhkYWU0MzZkMTkgbGVnYWN5LXRydW5rCisyODc3NSBhM2IyOTU5MThjNWZkNWE1M2NmMTBhYzYyNGQ2YjIwYWE3YmQyMTc5IGxlZ2FjeS10cnVuaworMjg3NzYgMzNiMjQ5YWY0MzY0ZGM4NGI4YWUyMWNmNTQ0NGU2ZTdmZTRhZGUzMCBsZWdhY3ktdHJ1bmsKKzI4Nzc3IDljOTU0ZTY0ZDE3YTk0YTBiMTQzMGVkYWE1NjhjYjBkOWJhNTdkYjYgbGVnYWN5LXRydW5rCisyODc3OCBhMzAyMzA4ODE5ZjA1ZGE4NzkxNzczNTlmY2RmZmZkZDdlODE3MTkzIGxlZ2FjeS10cnVuaworMjg3NzkgMmY0NGE5MGZmZjA3N2VlYWZiN2MyYzk2MjlhMmY0NjhmODAzNjkxYSBsZWdhY3ktdHJ1bmsKKzI4NzgwIDJhZTJhMjAzZjQ3YWMyYTZlYTU5ZjUyMGJhOTg3ODhkNDdjMTg5OGYgbGVnYWN5LXRydW5rCisyODc4MSA5ZjYxNzEwNjI4YzRmMjk1YmI1MTZkNTMzYzFkZWQ0OTBhMjRhOWFlIGxlZ2FjeS10cnVuaworMjg3ODIgMmMzYjUzOTdjM2Y5ZWMxMTY4OTZhYjhmMGJlMmVlZjQ3ZWQ3MDUxMiBsZWdhY3ktdHJ1bmsKKzI4NzgzIGJkMjRjMjU5OGE0MjlkNzZmMTUxMGI4NzkwZWNjYzA3N2ZiNzliZDggcmVsZWFzZTIyLW1haW50CisyODc4NCBiNTI5YWMyZjlhYjY0YjkwYmQwMTUzYWRiOTMyODRlOTFiN2U1ZjljIGxlZ2FjeS10cnVuaworMjg3ODUgNDlhM2ViZTlkZjE0NzY2NTUzYTExMWU3ZjQ1ZGEzMWEzZTk3NWFiZiByZWxlYXNlMjItbWFpbnQKKzI4Nzg2IDZlYTg5ODdjNzQ2ZmI1NWU3Njk0MGU5MWUwYzczNzUyZGUxNzYzZDUgcmVsZWFzZTIyLW1haW50CisyODc4NyAyN2ZmNjk0YzhjMDUwYjQ1ZjFhOTdjOTk0MDM3YmQ4NWNjZmE4MTc4IGxlZ2FjeS10cnVuaworMjg3ODggM2FlY2E2YzUwZjM4MDBjYWU4YjUyOWViZmY4YWNlZmU2YzMxODQwNyByZWxlYXNlMjItbWFpbnQKKzI4Nzg5IDgwMjU4M2Y4OGFlMGQ4MjU5MjlmZmQxYTVhMDFjYmZiM2YzOGNhMjkgbGVnYWN5LXRydW5rCisyODc5MCBjOGNiODk3OTA2MmNlN2Q2MTZiNDYxYTA1MWJkOTI1Y2NhYzk1M2ViIGxlZ2FjeS10cnVuaworMjg3OTEgMGViODgyMDY4YTdjZWUzNmJmMWM5MjliMjAzNjk2OTRmOWEwYTAzZiBsZWdhY3ktdHJ1bmsKKzI4NzkyIDg2NjIwYWZiMjIxMjRiZGIxNWQ4OGEwYTRiNjQxY2EwM2RiODJmOTUgbGVnYWN5LXRydW5rCisyODc5MyA2ZGVjNzRmNDQyNDIwOWRmM2E4OTU5YTkwZDgwMWZmMmRlOTUxNDRlIGxlZ2FjeS10cnVuaworMjg3OTQgMzdmYzZhODNhMTM0ZWE3MmQ5NWQ2MDRhNjQwZjQ4NDgxY2Q0MGMwOCByZWxlYXNlMjItbWFpbnQKKzI4Nzk1IDU4NmZhMjQ0NTk4MjQ3MzJiNDVjZGNhZDQ5ODQxYjQzYmU1ZjYxMWQgcmVsZWFzZTIyLW1haW50CisyODc5NiBjNDNjNDI4MzkwMTE4ZTE1NDM4Y2QyMGMxMjkzN2FjYTVjNGZmNzE3IHJlbGVhc2UyMi1tYWludAorMjg3OTcgZTdkYjFjOWExMGZjYjg3MTEyMjg2ZjhlYWE4NjAwMzFlMDE2OGI4ZCByZWxlYXNlMjItbWFpbnQKKzI4Nzk4IDAzM2FkY2JiNGNiMmE3NDRhOWIzNDI1NzRhYTVmYTVjZDY1ZTk1MzkgbGVnYWN5LXRydW5rCisyODc5OSAyYmE4MGE0MzEyZmY1MDIwN2I1MjNiNzc2NTU5ZmI3NTMzYmVlMzhlIHJlbGVhc2UyMi1tYWludAorMjg4MDAgODVhYjQ2NTBkZmFhNmE0MzEyZmM3YzU5Njg5YmZmYjIxYjgzNTVkOCByZWxlYXNlMjItbWFpbnQKKzI4ODAxIDk2ZTJlZmZlYzk0ZDFiZWE1OTBhNjM3MDQ0NzY5ZjdlNWQ5N2Y2MmEgcmVsZWFzZTIyLW1haW50CisyODgwMiA5ODhmNDI1ZDE3NjY1ZTdkY2NlNTAyMGZiOTQyMTU4MTdkNDM5OTgxIHJlbGVhc2UyMi1tYWludAorMjg4MDMgNDYxNzBlNTYwZTAxZTE4YzdkMmE4MzkzNGQwMTVmODc5MWQ2YTI0OSByZWxlYXNlMjItbWFpbnQKKzI4ODA0IDFmOWU5Nzk4MzAyYmZmYzBiMTcxYjhhYWI4NDAxMjg3N2FjYjFkY2EgcmVsZWFzZTIyLW1haW50CisyODgwNSAwZmJiNzZiNTA3NGI3ZTkxZmY0Y2NkYjJiNGQzNTBlYmZlMTUyYTlhIHJlbGVhc2UyMi1tYWludAorMjg4MDYgM2Y1MDQxMjk1NDQ4Yzg2YmU1YjliMDY3OGM4ODk4MzNmNTJlYjdhYiByZWxlYXNlMjItbWFpbnQKKzI4ODA3IDUyNTViNDVmZGRjMjU5YWI3OGIxZDgyZDlkZmZmOTIzZGFmMjczZmYgbGVnYWN5LXRydW5rCisyODgwOCBmM2MzZTczMmQxMmU2OTRiZTFjY2Y0NTAyYmUzYzM3NzdkZWNmYmUxIGxlZ2FjeS10cnVuaworMjg4MDkgNTI0MjBmZTY3Yzk2OTAwNDdkYTNjODA5NzkxMTgyNWVlMzQ1YWUzZiBsZWdhY3ktdHJ1bmsKKzI4ODEwIGM2MzEyMzYwYzg2MTcxZmRjYTllZDIyN2QwZWYwNzM2MTc3Zjg5NmMgcmVsZWFzZTIyLW1haW50CisyODgxMSAzN2Q4OGI0MmVkMTFhOGEwOTIzNzlkYzhjMzJmNmUyN2YxNmEyNjFmIHJlbGVhc2UyMi1tYWludAorMjg4MTIgNjUxMzQ2NmJiNzc0N2EwNzM0ZjlmZmM3YTI3NWNiMmI4NjY3ZWFhYiByZWxlYXNlMjItbWFpbnQKKzI4ODEzIDBiNjhkODEwYThiZWNmMmI4Nzc5OGM0MjAxNDQ2M2Q5M2NhZDczMmIgcmVsZWFzZTIyLW1haW50CisyODgxNCA5ZGQyMWMxZmFkOWE0MDA3MDMwMDkxMTRkMDk3OGQ5OGEyNjdkZjlkIHJlbGVhc2UyMi1tYWludAorMjg4MTUgNzg2ZTBlOWE1ZjdmOTI4MjdlMmQ1N2RjZTFlZWIwYzFhYTg1NzkwMCByZWxlYXNlMjItbWFpbnQKKzI4ODE2IDExNmIwODU4ZDRiMGJkYjAyNDRkZjRkYTMyYTExMzM4M2EyMWZkN2QgcmVsZWFzZTIyLW1haW50CisyODgxNyA2NTFhYmNmNjNmZTEzZDNlMjZmMDg4Mzg4NzBjYzE2MDgyMDg2MGEyIHJlbGVhc2UyMi1tYWludAorMjg4MTggMmJmZTQ0YzRkYWNiZjM3OGQ0Mjg1OTY2ZTAwMmZjNzhkZjJkOWEyMiByZWxlYXNlMjItbWFpbnQKKzI4ODE5IGNhYTNhMmZjNmEyMDg2NTlkYjE1ODIwMzgxNDE4NGE3ZWI2NTZhY2UgbGVnYWN5LXRydW5rCisyODgyMCBjMDY2ZGMzZWExNTIxNjk4ZTZjMGNiYmE0MzVkYWNjZTVkYTY5MzQ1IHJlbGVhc2UyMi1tYWludAorMjg4MjEgZTg0ZDMyNGFjNjZhNDg4NjVjNDhmYzIyZjg3OGI4OTc5ZTQxYmJiMSByZWxlYXNlMjItbWFpbnQKKzI4ODIyIDRkZjBlNjkxZjRkYWU4NmIwN2NlZWQyNTMzOGZmZjFmNThjYmRkMTMgbGVnYWN5LXRydW5rCisyODgyMyAyZGNiYmJiMDA3YzJhYjc3YzBkZWU5OWFkNTlmNmMwY2JhNDkxNGIxIHJlbGVhc2UyMi1tYWludAorMjg4MjQgNGQxMGMzMTc5ZWFkMGY1NjI4MTM2MDVlYzNiMzI4YTdmMzc2M2JkZiByZWxlYXNlMjItbWFpbnQKKzI4ODI1IGZiYzgyMGQ3MDFiY2E5OGNiYzQwNGZmZmFhNTA0OTNiODMzMTc1ZDggcmVsZWFzZTIyLW1haW50CisyODgyNiA1ZTRlOGMxYWI3MDQwMDEzMTJlMDc5MjFhMGEwZjQxMzdiMjYwMTM2IHJlbGVhc2UyMi1tYWludAorMjg4MjcgNGRmODA3YWRmZjg3M2Q1MGIxM2FhM2M5YmUzN2I0ODBiYTVjNjFjOSByZWxlYXNlMjItbWFpbnQKKzI4ODI4IDEwNzY3YThjMmUyZDY1Y2Q5ZTM1YjIxYjAyNDE5ZmEzMWUxNTUwOTQgcmVsZWFzZTIyLW1haW50CisyODgyOSAwYzQ0ZmEwNGY1MzM1ZWZkZDhlMzMwMmY4ZmQxZWEzYjQyYWQyNDMwIHJlbGVhc2UyMi1tYWludAorMjg4MzAgZTUzNzg3YjFhZDg1ODE4MDZjMjVlYTZhYzRhYjg5OGExMDA4Mjg4MCByZWxlYXNlMjItbWFpbnQKKzI4ODMxIDcyNWY4NzU5N2FkOWUyN2NjNDc4YjFlZTI1MWQ2OGEzNDBkN2Y4NWMgcmVsZWFzZTIyLW1haW50CisyODgzMiBlODg5MWU2OTUyZWI2MDE1Y2MwNjAwOGZkYzdiNzA3ZTdmYzY4NmI3IHJlbGVhc2UyMi1tYWludAorMjg4MzMgNDYyYzM1YjlhYzFmYTRhNDYyNWMwMWU3YTkzYzg2NmE0M2EwNDM2MiByZWxlYXNlMjItbWFpbnQKKzI4ODM0IDgwY2UzODRkNDA4YTZmOWU5NDZlMzliMjkxNWVhMTM3ZDVjYWNhNzkgcmVsZWFzZTIyLW1haW50CisyODgzNSA5MTExMDc4Mjk5MDNiOGFlMzBiNzIzMDdkNTkzODQxN2E1ZGE5NjI3IGxlZ2FjeS10cnVuaworMjg4MzYgZTVlMDU3YTZkMjgxZjMxNWZkMmE3MDk0NjFkMmUxYTZmMGZjYzAzZCByZWxlYXNlMjItbWFpbnQKKzI4ODM3IGRlMjFlOTNiYWRmNjM2NTgzM2M2Zjc5M2VhNGU2YmE4MDI2Y2YxZjkgcmVsZWFzZTIyLW1haW50CisyODgzOCA3OTI5ZDc1NjZhOTQyODkxOTc4MDE0OWE5YmY0OGE2NTY3MjliY2ZhIHJlbGVhc2UyMi1tYWludAorMjg4MzkgYmIyMDMzYzhiOTJmZGRjNDE5ZTNmMTliMjdkMDg2ZDdjNGNlYzY0ZSByZWxlYXNlMjItbWFpbnQKKzI4ODQwIGY1NTllOTdhNDFiZTRkMGI0NmQ5N2FmMWU3NThlY2Y0NjZjZDk0ZTIgbGVnYWN5LXRydW5rCisyODg0MSAzMGJmNTU0OTFlNzllZGQ5Njk4YWQzOGM5YTQzYjI1ZjE1ODI3MTZjIHJlbGVhc2UyMi1tYWludAorMjg4NDIgOWNhNjA5ZjhiZGYyMjYxN2M0Nzg2Y2RlNzMzMDYzYzBiYTdiNmIxOSBsZWdhY3ktdHJ1bmsKKzI4ODQzIDg4ZDBmNmQ2YjAzZWMxYmE1OWYwYjIwMzE0M2NhNGQ1MmUxZWUxZGEgcmVsZWFzZTIyLW1haW50CisyODg0NCBiNDZjN2RhMDY0MTBlNzFmOTdjNDk3NzNhMmRlN2YzMzc3MDdmNDU0IHJlbGVhc2UyMi1tYWludAorMjg4NDUgZGMzMTY2OGE3YzA5ZGNiYjE1NzI3OTNkZTNjY2FmMGU5MjdiM2RmYyBsZWdhY3ktdHJ1bmsKKzI4ODQ2IDk3NDI0Yjk5ZGY5MWM1OGYyMTUxNjM1MDE3MTIzMjUyMTIwYzE3MjkgbGVnYWN5LXRydW5rCisyODg0NyBkNGZmOTg0MTQxN2FlMDZmMjUyZjM5ZWUzMjZjZmYzOGNiMzk4NzVmIGxlZ2FjeS10cnVuaworMjg4NDggMDIyNmYxNjU2ZDgxNTFmNzhhZmQ5MzQ4YjhmZjY3MjI0YThmM2QxYyByZWxlYXNlMjItbWFpbnQKKzI4ODQ5IDcxMDM1NDgzM2JkMTk4MDk4ZjU2NmFlNDUwZmU0ZDg1MTk5ZjAwYjMgcmVsZWFzZTIyLW1haW50CisyODg1MCA1MWNkZjQ3MGY5NzQ0MDlmNWIwMTdiYmYxZTZhZDNiNDJjYzIwZjJlIHJlbGVhc2UyMi1tYWludAorMjg4NTEgNzVjNGE2N2RjYjhjMzYwMzIxYWJiNTFmYzZiNDI4NTBjOTlmNjI4OCBsZWdhY3ktdHJ1bmsKKzI4ODUyIDQxMGY2ZWFiYmMwYjg4NDRhMGExZjIwZmY0YzFjY2FhYThkODc5MDYgcmVsZWFzZTIyLW1haW50CisyODg1MyA2ZmMwYjcxNmMwMzg5YTA4ZDM3MWUyNDJmMDk0NDdjNGIxOTJkNjY2IHJlbGVhc2UyMi1tYWludAorMjg4NTQgNDA4MDFkZjg1OTEyMWE0ZTYwYTA5NzhmNjQxODI0NzQ2ZGM4OGJlZSByZWxlYXNlMjItbWFpbnQKKzI4ODU1IGI0OGEyMzZiOGM3Yjc3ZDgxMGJhODA1YjQ2NGIzNGJiNDkzYzIwY2YgbGVnYWN5LXRydW5rCisyODg1NiBkOTM1YTFkNzAyMzBiOTE4ZmU2MmU5ZjA4ODg4NTIyNTE5MWJkYjQxIGxlZ2FjeS10cnVuaworMjg4NTcgNGQ3ZTllNDBkM2U0YWM5ODI3MWZkMmY0ZmU2ZDIzMGMyNmRlMmI1YiByZWxlYXNlMjItbWFpbnQKKzI4ODU4IGQyZGJlYTE3ZmM2ZmU4YzBkMDY5ODNmOWQxOTU2NDA0YjExNjI4MDcgbGVnYWN5LXRydW5rCisyODg1OSA5NDMxNWE5N2IzOWU2NmVjYzVjMTUwMmU1MzQxOGQyZGVlZWM3NjFhIHJlbGVhc2UyMi1tYWludAorMjg4NjAgN2QwYzRkN2UwYThjNzE5MWQyYjg5OGU2NmRjNzBjZWE3MmYxNGM2NiByZWxlYXNlMjItbWFpbnQKKzI4ODYxIDQ1YTIxNGYxYmYwYjQ1NGFmZjkzYzg3NzA5YWEyMTA1Yzk5NmRjMzcgcmVsZWFzZTIyLW1haW50CisyODg2MiA4MzIwODRhMzAyODA5NmMzN2UwZWVmNzhmNWYyYTlhNTkxZmM4N2Y1IGxlZ2FjeS10cnVuaworMjg4NjMgMDQ4OTY4Y2EyNjY4ZDQyMzUyMjUwNTIwYjVkN2Q1NzdhN2JjYzJmYyByZWxlYXNlMjItbWFpbnQKKzI4ODY0IDI1M2UzOTdkZjY3YjFlMzc0M2Y5MWNlNjkzZjQwN2VhMzA0OGRlYjIgbGVnYWN5LXRydW5rCisyODg2NSAwYTA5NWEyNTc0MjQ1MDAzOTJkY2RjYWY3NGUzZjc2ZmZjODAwMjExIHJlbGVhc2UyMi1tYWludAorMjg4NjYgMTg0OWUyMzU1MmRmYmMxZTE2YTljMzhmZWVmOTRjMGRmZTQ2ZGE2YiBsZWdhY3ktdHJ1bmsKKzI4ODY3IDU2Y2I5MmRiYmFhZmMwNWJkZWVjMTAzNDM1M2RiMzZlNjE4OTRiZDAgbGVnYWN5LXRydW5rCisyODg2OCBhYTMwNDhlYmQxOWEwYTVhNmQ4NDkwOGYzYTE4NDQzMzZiYWM4ZjY3IHJlbGVhc2UyMi1tYWludAorMjg4NjkgZjc0OWQ1MGRjY2RjNWViZmU1MDQ5YTkyYTQxM2I1YzM3ZWZiZjBmMCByZWxlYXNlMjItbWFpbnQKKzI4ODcwIDkxYjRmN2FiZWJhOGQ1NTJjYjIyYjliMGZlMGFlYjRkZWU1YjVkYWEgcmVsZWFzZTIyLW1haW50CisyODg3MSBmYjBmN2NjNWE2OWY2YmY0YTU2ZmE4OTdjZDgzYTJiYTAzODBmYzAyIGxlZ2FjeS10cnVuaworMjg4NzIgNjIzN2JlMjdhNTk3MzViZjZlNzAyMTZlMGU5NGZiY2FjNzQ2N2IxNCBsZWdhY3ktdHJ1bmsKKzI4ODczIDU1NGY5NzUwNzNhMDM4MGVmNzE4OTVjNmJhOGI4ZDdkMzIwMmI1OWMgcmVsZWFzZTIyLW1haW50CisyODg3NCAyOWY2MTYwZWMwYmQ5M2M4MDlhNDM0ZWMyMjRiZDNmMTNjNDIwYmZjIGxlZ2FjeS10cnVuaworMjg4NzUgZmU2MjExYmY5MGJiOGY1NDk4ZDY5NmUyNzIwMWZkOWRiYjRkODU2MCByZWxlYXNlMjItbWFpbnQKKzI4ODc2IGM2ZjMwNzJkNTk1ZDU0ZjUxMzEyNzZhY2Q2ODZhOTM2MDllZWY1OGQgbGVnYWN5LXRydW5rCisyODg3NyBlYjI1MmIzNzRlY2ZjODVlNmI3NzJlZGViMjU4OTE4MmJiZjdmZmEwIHJlbGVhc2UyMi1tYWludAorMjg4NzggMWY5YjNjYjY2ZTA5OGUwM2M0ZGFhMjJmZWJmODdlNWU5YWQzYzdjYyBsZWdhY3ktdHJ1bmsKKzI4ODc5IDExMDg4YzUzNDY3YTE3NjhkNmFiOWI0NDZkMjI4ODNlYWE5Nzk1YzEgcmVsZWFzZTIyLW1haW50CisyODg4MCA3MmQ1NmI0NDYwY2I5ZGYzY2E1MTlkNzUxMzEwMGFjY2I0YmVlNGFmIGxlZ2FjeS10cnVuaworMjg4ODEgYjYyNTE0YzIxNzYyOWUyMDNlNDNhNmNlNmZiM2UyYmUzYmVkZjNlYiBsZWdhY3ktdHJ1bmsKKzI4ODgyIDNjM2I4OTQ2ZGM2M2M1ZGI2OTI4YTVjYzc2NzEwNWI3MGI5MjI0ODMgbGVnYWN5LXRydW5rCisyODg4MyAwYzc3OTQ5MmNkODA3Nzg4OWY5MzU3MWYyZGU5ZGM2YTdjZmQ2NDAwIHJlbGVhc2UyMi1tYWludAorMjg4ODQgODU0NTM0YzYwN2ExNmNkNGRmYTk0MDViNTM2MDMzMDE2OWFmN2RmMiBsZWdhY3ktdHJ1bmsKKzI4ODg1IGRmYjc0ZDYxMTgzZDczNzg5MDIwOWZjM2RhYzA1NmQ1OTE1ODRkM2UgcmVsZWFzZTIyLW1haW50CisyODg4NiBjZDgzN2VjYjFkNzA5NTNlNWE1YWE4NjhhZWNiMjk4ZGU5YTBmZjRmIHJlbGVhc2UyMi1tYWludAorMjg4ODcgYmRlMGQyNjI2YjIwNWRjYjM4NjUxYTQ4ZmUyOTkyZjk5NjhiZjZkMyByZWxlYXNlMjItbWFpbnQKKzI4ODg4IGQzMjU4OGM4ODYzMzI5NDY4Y2M0ZjZkOTk3NThjYmQ1ZTk5MDNjNDQgbGVnYWN5LXRydW5rCisyODg4OSA4OTgzMDRmNmRhMjNiNWM5NzE1YzVjMGZiY2E2N2EwMDUxNTFmODliIHJlbGVhc2UyMi1tYWludAorMjg4OTAgYjYxMTIzMjcxMjRiNDZhMjc0MWVlMDVlZjVkNDY2OTRmZTcxYjhiNCBsZWdhY3ktdHJ1bmsKKzI4ODkxIGFhMzFjNjhkYTg0ZGY2ZjI4ZDc3ZWRlZjhiMmU3ZDY3NGQ1NjdjNmQgcmVsZWFzZTIyLW1haW50CisyODg5MiBkYjVmMWRiN2IzNGUxOGM0YmE2YjU3ZjdlMzA1ZjY3MjdlZjI0Y2Q4IGxlZ2FjeS10cnVuaworMjg4OTMgOWJhMDExMTM4ODMxOGE0YzNiZjBiZWY2ODRmNjU1YWMwNDg1MDVhOCByZWxlYXNlMjItbWFpbnQKKzI4ODk0IGU4Y2RlYTQ0ZjdhYmNlYzZhMTU4MzY1OGQ0MjE1ODgyYjFjNzRlMmYgbGVnYWN5LXRydW5rCisyODg5NSA2YTJkZjQ0YjhiZmQ0OTZmYWUwNzUxZTliMGYwM2I5YzQ3MmNhZWMwIGxlZ2FjeS10cnVuaworMjg4OTYgN2NkNmY1NDkwNzU4YzYzYjYxNjgzMDc2OWY1ZDYxYzdiMzM5ZmIyMyBsZWdhY3ktdHJ1bmsKKzI4ODk3IGY4MTgwYTc0YjBmYTVjNmVjNzViNWQ2MzQwMmY4ZDc3NTg3ZmYyYmQgcmVsZWFzZTIyLW1haW50CisyODg5OCAwNWZmZTIwMWU5MDJkODBmODg3MDNhMDNhN2IzMjI3N2NiMzY4MjkzIHJlbGVhc2UyMi1tYWludAorMjg4OTkgMmViNGVlZDUzOGM2ZDNlZmQ1ZGEyYzVmNTAxZGZjMWIzZTgyZThkYyBsZWdhY3ktdHJ1bmsKKzI4OTAwIGQwYWFkNTE5ZTcxMzBkYTNkMDEyMmJjMjNkMmIyYjdjNDE5MjUxZDYgcmVsZWFzZTIyLW1haW50CisyODkwMSA0ZDM2Nzg3MmZjYzY2NWJmYzI0ZmU2YWMxOWU5NTNmZmY5OWRjYjZhIGxlZ2FjeS10cnVuaworMjg5MDIgNzZjY2Q1YmY5ZmYyNjI5ZmU0M2IxNTQ0NTJkNjNjZTA1ZWM2NTBkNiByZWxlYXNlMjItbWFpbnQKKzI4OTAzIDQxZWIyNGI3NDdjMDJjZGNmNWE5MDJiMGVjNjAyOGZlNTQ4NmQwZDQgbGVnYWN5LXRydW5rCisyODkwNCBkY2FmZDk5Yzg1YjY4YTg4MzA3MzkxMjk0NTEwYTgyOGFiNTVlOGFkIGxlZ2FjeS10cnVuaworMjg5MDUgYTc3MjU0Y2JkNGYwNmIxZTgyNWI5NWE1YWJiOTYwNmRjNTcyNWY0ZCByZWxlYXNlMjItbWFpbnQKKzI4OTA2IGQwN2Y4ZGIzZGI0MWU0Yjk0OTc4MmE2MGNiZDM3MzMzODE1MzVkNjYgbGVnYWN5LXRydW5rCisyODkwNyBiNWE5YWFjNGIxMGZmZjc4M2M5NDRlODhlODIzZTA0ZWM3ODcxODIzIGxlZ2FjeS10cnVuaworMjg5MDggMDk1NTFjNmRhMjk5ZjgxOGNiOWZkZmY3MWQyYjg2YmMxODRiZTJhNiBsZWdhY3ktdHJ1bmsKKzI4OTA5IDE2ZTY2MTk3MDkzMDcwYzg4NzZiNmVlNzk1OTYwZjUwODUwMjY3YTAgbGVnYWN5LXRydW5rCisyODkxMCAxZDkxZWRmZDc1ZjJiNDVkNmU0ZTg5YzNhZTdkZmFlNjRmMTI3MTU1IHJlbGVhc2UyMi1tYWludAorMjg5MTEgNGRhOGE0ZGUwN2MyMzNkMDdiM2RjMDdmMDA0NTYxOTRhMmQzNjFkNSBhc3QtYnJhbmNoCisyODkxMiAyODMwZjk2MTQyOTQwNWZjY2FlNzgxNTc1ZTcwOTA4MDE2NGM4NWRiIGFzdC1icmFuY2gKKzI4OTEzIGQ4ZjQ5ODBiOTY1Y2ViYTAxYTkyNDg5YTMyZDlhMjAyNWY5OGI4YmIgYXN0LWJyYW5jaAorMjg5MTQgZGZmNDhjNDE3OTgwMjE0ZGU1YjYxMjgzZGFiNmRmOTQyYzdkYTBlOSBsZWdhY3ktdHJ1bmsKKzI4OTE1IDk2OTYwZDY3MzllMDk3MmM5ZWYwZmU5YTljMjNjOTE1MTM4N2QxYzMgbGVnYWN5LXRydW5rCisyODkxNiAxZjJiMWU2ODQ4NTAzNmI4MzQzZDg4NjRjNzkxNWJkYjA4YWU0YjRjIGxlZ2FjeS10cnVuaworMjg5MTcgNzg0M2I1MzAwOWQwNjkyMjllYzhlNjM3YWRlNzhhNTM5NDhhODg0NCBsZWdhY3ktdHJ1bmsKKzI4OTE4IGI2ODZkZGIyNWM2OWI0YjY2MWVlMzBkZDQ3YmZkOTk2MmJkMjRhNmUgbGVnYWN5LXRydW5rCisyODkxOSA1NWYwOTBiMzhiODhkMzhmMzM4M2Y2ZGE3ZjlkZjlhNTkwZjM1ZDBjIGxlZ2FjeS10cnVuaworMjg5MjAgMGZiYmU3OWI0ZWRiNWIwYTRlYmQ1OTEzY2RmNDhjMjI0NWUyZWRmNCBsZWdhY3ktdHJ1bmsKKzI4OTIxIDE4ZTY3OWJlMjExOTM2ODlhN2Q2MzJmNjJjNDI0OTc5NmVmYTg5YjIgbGVnYWN5LXRydW5rCisyODkyMiA4YTZlZWIwYzc5MzQxNDRlNmU2YmVlNzQxN2Y2ODcxODA4ZmE3OWZjIGxlZ2FjeS10cnVuaworMjg5MjMgMmE3NjNlN2I3ZGViZDA3ZGNjNWJkYWM0NzU2NTEzYzQ3ZTMzNDhjZiBsZWdhY3ktdHJ1bmsKKzI4OTI0IDI1NjU0YjgxMTYxNmIwZjA1N2FlOTBlZjFjNjNiZjY3NzI1ZWQ5MDggbGVnYWN5LXRydW5rCisyODkyNSA1N2VjMTY0MzE4OGM5MDMxZmNhNjVjZWViOGFhNTNhODM3YjlkZjlmIGxlZ2FjeS10cnVuaworMjg5MjYgZTJmNjVhNDljYTM0M2UxOTE1ZTZmNjcyODc1ZjE0ZTM2MzFjMzIxMSBsZWdhY3ktdHJ1bmsKKzI4OTI3IDdkMjY5YmMxMjU4N2RkNTczNzMxZTEyNjVhNmM5OTA3MzZlY2Q3MWIgbGVnYWN5LXRydW5rCisyODkyOCA4Yzk1NDg2MzAxYjNmNzQ5YzZjYzU4Yzg5YTUwZmY2YzZhMmNhNTEyIGxlZ2FjeS10cnVuaworMjg5MjkgYmJmOGNmNWVlOWY5NDIyODRlYjY5M2RjMzkxMDY3ZTlkYjBmMTc2NiBsZWdhY3ktdHJ1bmsKKzI4OTMwIDlkNTBiYzgzMWJjYTA0YzZiNmI5MTZjZjRjM2MzNDg0YWQyNDFkZDIgbGVnYWN5LXRydW5rCisyODkzMSAyMTQ0NGJkY2IwOWMwNDg5MWQwNjg3ZWZlNjljMTk3MzdkNjc5MjRlIGxlZ2FjeS10cnVuaworMjg5MzIgODBmNjczODVmNTk5ZGMxNzMzYTE3OWQ5MTg1YjIwOTkxMWFjYjJjYiByZWxlYXNlMjItbWFpbnQKKzI4OTMzIGZjNTM0ZDFjOWMyODM5NjdhMWE5MTg3NWMyZGM1YzA1NzFkOWFkMTEgcmVsZWFzZTIyLW1haW50CisyODkzNCBjYWMxYjAzNGI5MDM3NmJhOWRiY2YzOGVlYTA2ODFkMzIzNjBhNGYxIHJlbGVhc2UyMi1tYWludAorMjg5MzUgZTQ3NTJmMzE2MDUzZmEzNjhiZmEwYzk4ZTAzNjBlZjBjOTI4YzNhYSByZWxlYXNlMjItbWFpbnQKKzI4OTM2IGNlN2JiZjNkOTQ5MzUyMTMyODYyMDE0MDM2MWIxZTg1ZDNiNjg0OTEgbGVnYWN5LXRydW5rCisyODkzNyA4NzdhMzkxNGRmMjI0Mzg0YzY5NDA3ZDBjYWNiNzA3M2I1NmIxYWE4IHJlbGVhc2UyMi1tYWludAorMjg5MzggNzY2YmZjOTNlY2JhNjZiNmQ2NmQyNjQzODA4M2Y5Njc2NGNhM2I3YiByZWxlYXNlMjItbWFpbnQKKzI4OTM5IDc1YjA4ZTZlOTdjNjBkNmViMWVkZTc5ZmUxMzI3YTI5OTQ5YmYwZDYgcmVsZWFzZTIyLW1haW50CisyODk0MCAyMGQ3YTU0NTU5MDc4M2I0Nzc2MzdkOWI1YmE3MzIwMjRlOGQ0OGM4IGxlZ2FjeS10cnVuaworMjg5NDEgNmQ1ODcxNTQzMGE3YmI4MDQ0ZDVmYmNhZDZlMzlkYTI1MzRmNTNiYyBsZWdhY3ktdHJ1bmsKKzI4OTQyIDJhYzdiMDk2NGM3YmE5NzY3MzM5YWMxYTIwYWJlZTIxNGU3N2IzM2QgbGVnYWN5LXRydW5rCisyODk0MyA0ZTA1YWFiNjBiZGZhYTVmYzdjNGExOTEzM2YzZWI0NTZmYzkyYTQxIGxlZ2FjeS10cnVuaworMjg5NDQgYzNlZWFhZmU2MjY1ZTNiNDViNDhjODAzOTdmNzhiOTEwZmYzNTEwNiBsZWdhY3ktdHJ1bmsKKzI4OTQ1IDVmNWZkMmM0ZmNmMjI3ZThhMzcwYWMxMGIxMGFhZTg3MzFkODI5ZjkgcmVsZWFzZTIyLW1haW50CisyODk0NiBkMGU1NzQzMjZkMThiM2IzOGJhYzJmMjM0YWEyNDQ4YmYzOTdjOGJlIHJlbGVhc2UyMi1tYWludAorMjg5NDcgYjUyNmUxMmI5NDFiN2ZkYjZlYTExZTNlYTBkZjA0ZTJiMDAyMTBmNyBsZWdhY3ktdHJ1bmsKKzI4OTQ4IGM1NzM4NDhjNzVjMzMyYWJhOWI3YzIwMTM5ZjJmNmZlOWUxZDAzY2YgbGVnYWN5LXRydW5rCisyODk0OSAwYWE2NGVlYmQ0OTMyY2Y5YzY1MzE2ZDFhYTcxZGIyMzk0ZTI4ODM1IGxlZ2FjeS10cnVuaworMjg5NTAgZGVhNjE5YjU4ODJkMGM5NjQ1ZWNmN2ZmYjM1MzQ3MDRmYWY3MDg4MSBhc3QtYnJhbmNoCisyODk1MSAxOTU4MzNhM2YxMGRhZjBkMmI3MjNkMWE5NzIwZjg2ODM4NTMyODIyIGFzdC1icmFuY2gKKzI4OTUyIGM0NjI4ZDlhY2M5YTE1NzBkNTA0ZGFkOGU5MTA0NjJiNWNjZDNiY2MgbGVnYWN5LXRydW5rCisyODk1MyBkYjlmZWUzNzNiMzAzYjAwZGI4ZWM5OWFhYmY0Njg0YzBiMWQyYTBhIGxlZ2FjeS10cnVuaworMjg5NTQgNzQyOWYyMjQ3M2NjN2MwNGM0M2Q5NjM4NjNmYzg3ZmJhZWU5MzNkOSBhc3QtYnJhbmNoCisyODk1NSA1NmRkODZiNGNiODc3N2UxN2YzNTViMzkyYWM4YTI0NGRkYmUyYmNjIGxlZ2FjeS10cnVuaworMjg5NTYgMmM5OGViMWMzMTYyZDhmZGRkNTcxYTg0OWNhMTUwZDQyOWYyYTUxYSBhc3QtYnJhbmNoCisyODk1NyAyN2Y4MzU1MTlhNWU3ZGViZTg3ZTM3OTYxOWY1YWU3NWVhYTI5ZDc1IGxlZ2FjeS10cnVuaworMjg5NTggOTE2NzQ5MGIwZGU5NGJjMjMwYzVkYWRmOWQ2ZTVlODc2YjBlODk4ZCBsZWdhY3ktdHJ1bmsKKzI4OTU5IDJiYzJlMDJmZDZkZDEyZGI0NWVlMjQ0YmYyNmQwZDk1ODcyYmY1YzkgYXN0LWJyYW5jaAorMjg5NjAgNDU1NzdlMTg1NmQwZTkzODY0OWNmZDQyNGFhZmE2ZGE0YjZiMDM0NCBhc3QtYnJhbmNoCisyODk2MSA3ZmQyZGEyMDE4MjNkMWNlN2RkYzU2MDkzZDAzMGIzYmZlYjhlMWI0IGFzdC1icmFuY2gKKzI4OTYyIDI0YzVhMWM4N2YzYmYxMjI5ZTUwNmY4NzU5M2Q0YzFiMTM4NTU5NTcgbGVnYWN5LXRydW5rCisyODk2MyA2Njk0ZjBjY2Y4ZWE0YmU3NTY3NGYxNTcyMGJjMzQ2MmU2MDA0ZjZhIGxlZ2FjeS10cnVuaworMjg5NjQgYmMwOTc4NDU5ZmZiNzgwY2YzODM2ZDQ3ZDc0NGE1ZjVmNjM3M2Y4YSBsZWdhY3ktdHJ1bmsKKzI4OTY1IGIzYTk4ZWVhMzRjODQxYzIzZjhjNzM2NGVhY2JmMGIwNGFjZDUyMjMgbGVnYWN5LXRydW5rCisyODk2NiAyZDgwYmY2NWNkMDk3OWQ5MDJhNDM3Y2E0MmE4N2EzZmJiNTRkY2ZlIGxlZ2FjeS10cnVuaworMjg5NjcgZTFhNzMyODg1YmUwOTYxNThlNmY0ZjUwZmQ4OTBlMjRkNWE5YmM4NiBsZWdhY3ktdHJ1bmsKKzI4OTY4IGQxYjZiMmNhOWQ5Yjg1MWQyMzY0OTIyY2MwMGMzOGJkNDhjNmJlNGQgbGVnYWN5LXRydW5rCisyODk2OSBkMTI0ZmIwODc3Nzg1NWRmZjJhNzU3OGQyOTFjODg2NmJkNzY3NGU5IGxlZ2FjeS10cnVuaworMjg5NzAgYmQwNGUyYmQ0MzdmYzVkMzlkZDJlNjI3NDBhMzhlOTcxZWJiZDgxMCBsZWdhY3ktdHJ1bmsKKzI4OTcxIDU5ZjgyZDk2NjgyZTlhODA4NWRjNGRkN2UxMGRmODMxNTZmMWJmNWMgbGVnYWN5LXRydW5rCisyODk3MiAzNzdkNjRjYjUzNDcwYjA2NjI5YmVkZGExMzgwOTQzNTdiMzE0YjMxIGxlZ2FjeS10cnVuaworMjg5NzMgZDcyMmJiNTIwNWFkNzAyOWRkYjE2ZjUwNTJjMGM4MTVmYTFiY2NiNyBsZWdhY3ktdHJ1bmsKKzI4OTc0IDQwNTk0ZWYzNGIzMDljNGVkZTMxMTRjODcwZGJlNDJhMTA5OTg3OGUgbGVnYWN5LXRydW5rCisyODk3NSBhZTJmMjM0ODgyYjIxNjg2M2UyNDc5MTE1MjA0ODRlZGZhY2IwMWI1IGxlZ2FjeS10cnVuaworMjg5NzYgYTM2NDdkMTFjYjcxMzQ3OTA5YTk1ZWQxMGVlMjRlY2E0NjA4NGU0OCBsZWdhY3ktdHJ1bmsKKzI4OTc3IDU4YmZhN2RkYzk5OWFjOTY0MmVmOGZhNjY4MmIyNjgxNmRkNDM4YTAgbGVnYWN5LXRydW5rCisyODk3OCBiNWQwNWYxMGQwYTViYzJjMzQ4OTEzZjJmZWFiYzEyZDBlNTU1ZTBiIGxlZ2FjeS10cnVuaworMjg5NzkgMWVhNmUzNTQ3NjEwMzgwZjg4MDYwZTFjOTAzMGViOGNiM2Y2MWM5YSBsZWdhY3ktdHJ1bmsKKzI4OTgwIDMwZWU5OWE4YjBhZTM1YTliOGNiMWY3MzIyZTBiZWJiYWRmNjFjM2YgbGVnYWN5LXRydW5rCisyODk4MSBjMTJhNGY3YTAwYjc0YWYxOWY1MTBiNTZlN2FjNTRhNjcwZWQ2NGI0IGxlZ2FjeS10cnVuaworMjg5ODIgMmUxNDA3MDBmYjZjMGM1M2JhZjQwMTFjZWI2Yzk1MWFjMzY1MjU1NSBsZWdhY3ktdHJ1bmsKKzI4OTgzIGQ3YmJhN2ViMGVhZDBjNzEzZjEyNzRkNWQ4ZTVlZGFlMDE4MzVmNjIgbGVnYWN5LXRydW5rCisyODk4NSA1NDIwOTY5ZGRkNzBiYTg1YmIyYWE0NTFlOGU3MzE4ZTI4Mzg4NTVlIGxlZ2FjeS10cnVuaworMjg5ODYgNjM2YzBmOGIzOTg3OTM2ODk0NGIyN2FkNDQzOTg5MjhkMjAyOWExMSBsZWdhY3ktdHJ1bmsKKzI4OTg3IDE5NWQyZjI1NzZlNDJjYTQ4NmRhM2VjNmZjMTRmMTU3OGFkYmQ0YzIgbGVnYWN5LXRydW5rCisyODk4OCAxMTU3MzZkZGVkN2QwOGNlNDhhNmFmNWU1NjlhNWM3ZjlhMTNjYjgxIGFzdC1icmFuY2gKKzI4OTg5IGI5MjMzZWNkOWQ0MTk0NzMyM2Y3MDFiYzEwZmQxNzcyZTllYjdiNWYgYXN0LWJyYW5jaAorMjg5OTAgNzBkOTNiNjIzNzBiN2JiYTk0OTUyYWQxMWI1NmZkYTQ4ZDEzZDhhNiBsZWdhY3ktdHJ1bmsKKzI4OTkxIGI5NmI4MjY0ZDZhZDJmZmQ5ZTIxODNlOGFkNDUwNzk5MzE5NjY2MjAgYXN0LWJyYW5jaAorMjg5OTIgOWU4MTVmMmMwZTg0ZjAzNzQ5ZjkyMTQ2Mzg4MmUzYmM2YjlhMThkYiBhc3QtYnJhbmNoCisyODk5MyAxMDk0YzZlMDM2NWU1YjA1NzBjYTg1MmMyMjkyZTVjYTcyZmRlZjI4IGFzdC1icmFuY2gKKzI4OTk0IGZlOTVjZmM2ZWJhN2RjMzRkNTU5NWM4NzAzYzY0ODE1YzZmYjI1MDEgYXN0LWJyYW5jaAorMjg5OTUgOGU0Y2FiYjJlMDAzZDI5YjlhOWRjNjRhOGUzMmUyZDZhOTg3MTk0NiByZWxlYXNlMjItbWFpbnQKKzI4OTk2IGNhMDFmNGI4NTg1M2U0NGIzNmY0MjRjMTNhNDM2OTQ1ZGM2ODg5NGQgbGVnYWN5LXRydW5rCisyODk5NyA3NWU1YTJhNzE3Mjk1YWMyMDlkNDUyNmI3ZTkwNzM3OTBkZDIxYTI5IHJlbGVhc2UyMi1tYWludAorMjg5OTggMDgxNDhlOTE2ZDM4NTFmMjhiN2U3OTlmN2VmZWE1ZjI3N2IyZTVjZCBsZWdhY3ktdHJ1bmsKKzI4OTk5IDg2MTA2NTI1NjQ4NzBhODMwYjk3Y2I0ZGM4MGU0MGRlYWViODZjOTYgbGVnYWN5LXRydW5rCisyOTAwMCA5M2VmNzQ1NTU1ZDdjMGI1MjI0NWMzMmEwZjQ3MTY3MmI4YzQ0MWE3IGxlZ2FjeS10cnVuaworMjkwMDEgNjFkNjI0ZjVjMTA3YTdlODc3MzVjMDc5NjM2YjBlODAzZThlYWRlNyBsZWdhY3ktdHJ1bmsKKzI5MDAyIDJjMGUwZjBkY2E2ZjUxMmY0NWRmMjJiYjYyMjhhOWE3Y2UyNTE1YWIgbGVnYWN5LXRydW5rCisyOTAwMyA1ZmUwN2NkNGIyYmZkNzExNDUyMTQ4NjcyMjc0YzQ3NTA0MjUxZGViIGxlZ2FjeS10cnVuaworMjkwMDQgMmRjMGRhNTM3MmI0NzAyYmU1NWYyNTQwODg3ZGQyOGIwZDFlMWRjYiByZWxlYXNlMjItbWFpbnQKKzI5MDA1IDQ3YWE5ZmM3NGRhOGNmNTMwZmEwYzRkYWYzYThlODUyNmEyNTViNjEgcmVsZWFzZTIyLW1haW50CisyOTAwNiA5OGU1OGQzYzVmY2ZhNDg5ZmRjYjQwNzY4OGQzN2M4MzZlMmZmNmI4IGxlZ2FjeS10cnVuaworMjkwMDcgZGZlZWMzYjM0ZmFlYzI0NTVkNDA1OWNlZmM0ZDNlNDE3ZDZlMjI2NCBsZWdhY3ktdHJ1bmsKKzI5MDA4IDJmYTU1OWZiNmVjNTIyOTliODcxNzFlOWI4ZjFlMTRkY2Q4M2I4MjggbGVnYWN5LXRydW5rCisyOTAwOSAzNzMxYmUyOGUxYTMyNjRjODk0ZDJiNWFkY2FiY2VmZjhhMjdlYTNlIGxlZ2FjeS10cnVuaworMjkwMTAgYzdiOWRhODU5YjU1ZjgzNjUxOGNiNGE0MTA3YjMxZWUzN2JmNDgzNyBsZWdhY3ktdHJ1bmsKKzI5MDExIDYxODIyZDJiNWU4ODZhNzVlNDc1NjY1NGUwOTdlNDI4NTQxZTJiZDEgcmVsZWFzZTIyLW1haW50CisyOTAxMiAwZWQ4Mjk0NzU3MTc0OGQwMDZjN2E5ZGFmZjBiZjI3NjA0NDMwZjYxIGxlZ2FjeS10cnVuaworMjkwMTMgMGU5Mjg4MDc1MzZjMTZhMjEzMzhkMDQ4NzczM2E0MWU2MzdlMmUxYiBsZWdhY3ktdHJ1bmsKKzI5MDE0IDFkYTVlMTdiZmU2M2EyMDgxMzRkZGQzODA1NWU1N2VkNTU2NjYwNjEgbGVnYWN5LXRydW5rCisyOTAxNSA0MWUxZDhjMjI0ZGYyZTNhYWU3ODE1ODI4ZTE5MjdmOTA5OTk4ZTcxIGxlZ2FjeS10cnVuaworMjkwMTYgNTU1MjM0ZDRmMGQwMDkxNGM2OGNmYTU4NTdlODBmZGFhZjg2NDdjMCBsZWdhY3ktdHJ1bmsKKzI5MDE3IGY2MWQxZDJiOWNlM2IyMmRhNGE2MmIyZGE0ZTk1YjkzZTZmN2Q4MjkgcmVsZWFzZTIyLW1haW50CisyOTAxOCAzNjEyNDE1N2IzMTdhZGJhYjgzNWZiNjM5ODE4OGQ2YTg4ZWVlMGE0IGxlZ2FjeS10cnVuaworMjkwMTkgNDg4Mjk1ZDFiYTExZWIyMTY3NDQ0Y2VhYWU1NDkxMmMxZWI2NjdjOSByZWxlYXNlMjItbWFpbnQKKzI5MDIwIDhjYjA3NDBkYTFmZDU5OTJlYmVhMDc1N2I1ZjhjY2M0ZDVjODc0YTggbGVnYWN5LXRydW5rCisyOTAyMSBmYzcwMjkwODEwOTMwNjhmNDczZmIyYWVmNjQwNjYwMWI2MDFmNGFiIGxlZ2FjeS10cnVuaworMjkwMjIgMTRjNGM4MzNjZGE5Y2E0ZTRlZGQ3MWYxYjdiYjY3NzlmOWE5OWMxZSByZWxlYXNlMjItbWFpbnQKKzI5MDIzIDEzZmI0ZDE2ZjYwNDJiYWUwMjMwZTAxNzk2NzgyM2Y3ZDNjMTA2ZDUgcmVsZWFzZTIyLW1haW50CisyOTAyNCBmYjBjZTc3YTMxOGFiZDM4NDBlNTQwODZhMmNjZjhjMjkzNzU3ODhlIHJlbGVhc2UyMi1tYWludAorMjkwMjUgMDcwNWNhMjlhYjk2NmZkMTMyYzcwMjA2OTA4ODEzMDNlNzcxNzFhYSByZWxlYXNlMjItbWFpbnQKKzI5MDI2IDQ0NDQ3ZjMxNWFlOTExNWQ5ZDRkMWRjYTM1NjU4MzBjMzU5YzcwOGYgcmVsZWFzZTIyLW1haW50CisyOTAyNyA3NzliYjZkZGRlNGI4YjI0MjQ2MGY3NTY5ZWNmNjI0Nzg3MzVkMTJlIGxlZ2FjeS10cnVuaworMjkwMjggNmRjZDA2NjRiMDllMmNkOTI0NTZjMjRkZDUyZWIxNDFjYzkwNzZmZiByZWxlYXNlMjItbWFpbnQKKzI5MDI5IGQwNzI4YjRiMDdjMzNiMTdkNmY0MGVjMjc1ZTE1ODY1MGI1YjA5MGQgcmVsZWFzZTIyLW1haW50CisyOTAzMCBiMTk5MDJhZDE4NWZiZDhiMzhkYjI0NDVlMzIxZjg0MWE2NGRkODc1IGxlZ2FjeS10cnVuaworMjkwMzEgYjExYmMyMTRlNGYyZjc2ZDk5ZmI5MGIxNDc1MzMxZThkZmI3NDcxMiBsZWdhY3ktdHJ1bmsKKzI5MDMyIGM0MmM5ODhiMmI5OWNhOTBhMmZhYzQwODRlNjg3ZGY3ODk1OGZmOTkgcmVsZWFzZTIyLW1haW50CisyOTAzMyBhYWU4Yjk0Mzg1ZDZiNThhOWJhNTJkYmYyMGI0MjgzZWUwOTQyZTcxIGxlZ2FjeS10cnVuaworMjkwMzQgZGUzNzBlNjUwM2RmNjhhMjNlYTgzYzI3YWIxMDFkMDFjZmE3ZGFjNiBsZWdhY3ktdHJ1bmsKKzI5MDM1IGM4NWQ3Y2RkOTgzZjMyODU2YjJhOTAxZjQ3NDZhMzNmNGIwOTkxZTcgbGVnYWN5LXRydW5rCisyOTAzNiA0MzY3MWUwMTE2ZDUyZjA1MzgxMmNmMDFlNmM2NmE1ZmM0NTI4ZGQ5IGxlZ2FjeS10cnVuaworMjkwMzcgMDIzMWNjNTRmODdlYWM0ODQ0YWE2N2ZiOGRmN2U2ZDI0MDg5MjY3ZiBsZWdhY3ktdHJ1bmsKKzI5MDM4IDgyNDE2MmViNzk3NzM3MGZmMDM4NTgwZGIxYjVhOWM1NGEyNTJmODIgcmVsZWFzZTIyLW1haW50CisyOTAzOSBjNWE4MWMzYmRhZGFiYzU3ODYxZWQwZDc3YmQ0YzZlZTAxOThkZmQ0IHJlbGVhc2UyMi1tYWludAorMjkwNDAgNDA1YTViNGY0NTNiZWM0NzA1ZTIxYmM5NjUyMjFjMjFiMTE4MmVjNSByZWxlYXNlMjItbWFpbnQKKzI5MDQxIDZjY2E2MTRiNWUwMzNhNzk2ZmVjY2M4M2RmZjMyNWFiMjM4OWQ0NmMgcmVsZWFzZTIyLW1haW50CisyOTA0MiAxMDBkYWEzNjE5OGRkODU4ZTM4OGJmNTQzMjNlNDIxM2IyODU0ODRjIHJlbGVhc2UyMi1tYWludAorMjkwNDMgODNmNjRjMDRmMDAyNjkwZjI3YzJjMjRkMmIwMmJmM2JhODc1N2RjOSByZWxlYXNlMjItbWFpbnQKKzI5MDQ0IDM2NzljNGZjNjhiYzA0ODY2ZTlhNjFlY2M0ZmNhMzk3ZGM1MTFiMzEgbGVnYWN5LXRydW5rCisyOTA0NSAyNzZiNmM0NTI5OTk0Y2UzNWFiNjZkYjVjYTcyMjNjMGJiODYyZjBhIHJlbGVhc2UyMi1tYWludAorMjkwNDYgZDQ5ZjE2NGU2YTk3NGQ3NGYwZWZkMTY0MzUxNTQyZmM4MzkzOTU0ZiByZWxlYXNlMjItbWFpbnQKKzI5MDQ3IGMxYTZmNDRlMjUzNGQ4M2I4ZmM0ZDhmNjlkOTFiNTEwOWEwZjIxYzMgcmVsZWFzZTIyLW1haW50CisyOTA0OCBhNTI2OTViNzFlN2RhYjVjYmZjNzUzNzM1MzYyYWE4MTBkNWYxNTRiIHJlbGVhc2UyMi1tYWludAorMjkwNDkgZGFlMjI4MmJjNzZiNDI3MjdkMWNkOGZiMzBiOWNkNjVhYTY1ZGNiYiByZWxlYXNlMjItbWFpbnQKKzI5MDUwIGIyODdiZGFjZGUzOWZhZjM2YzAyNGNiODNmZTU3NjM2NjI3MzU1ZmUgcmVsZWFzZTIyLW1haW50CisyOTA1MSA2MDAzOTkxNzMxYTk5MDZjOGNjYzkyODRlMzU2YjU4YTg1ODAyNGM5IHJlbGVhc2UyMi1tYWludAorMjkwNTIgMjM0N2Y5MDE4NDMxNTNkOTM0ZWJmZTQzYjM4OGZiOTgzYmU0NWZmZiByZWxlYXNlMjItbWFpbnQKKzI5MDUzIDQ0OTJkNzczMjdjNWVlMDlmNzNjMDdhY2YzYTYzNWY0NDkwZmJkMDQgbGVnYWN5LXRydW5rCisyOTA1NCAyOTExZWIzNzcyNjZkOTc1YTk4ODkwMTRhMzI1NzUwMTkwNTNlYmU5IHJlbGVhc2UyMi1tYWludAorMjkwNTUgYjMyNTY0ODdhZWU4ODg2MzY0ZGZhZjJmOWU3OWNmOGY5YjBlYjM5OCByZWxlYXNlMjItbWFpbnQKKzI5MDU2IDc3NDc3MWM1MGIxODdjZjYzMTBmZjZjYTU2NTE1ODNhNjllNGJlYmMgbGVnYWN5LXRydW5rCisyOTA1NyAyYTk0MmExYzQyZTg0OWZkYzU0YjdmOWFmZmY3MWNiOGIxM2NlYzMzIHJlbGVhc2UyMi1tYWludAorMjkwNTggZmVkN2M0MWNhYWFlZjU1MzIxZWMyYTY2YTI0MmZhYTRjNDNlZjU4YiByZWxlYXNlMjItbWFpbnQKKzI5MDU5IGM2MmZiNjNkY2ZkMWI1M2QxNzkyZDcwOTE0YmQwMmQ3MzZmMTQ4MzEgcmVsZWFzZTIyLW1haW50CisyOTA2MCA2YjFkNDY0M2EwZmQ1MGU4MDg0OTZlY2M1ZDljMzczZmZiNmM1MDA3IHJlbGVhc2UyMi1tYWludAorMjkwNjEgZTg0ZTA4MzcyZWZhMWVjNTA1M2FhMWFhODBlNjMyNjAzNDRiOTYyMyByZWxlYXNlMjItbWFpbnQKKzI5MDYyIDUyM2ZkODkwMzU5ODc4YWRlYmQ1ZmE3ZTQyNDQxMWQ0OTI3YWNmNGEgcmVsZWFzZTIyLW1haW50CisyOTA2MyAxZTM1OWRjYjRmYjNiNzIyNDRmODdjZTUwNTk5MmIyY2MyN2FiZjU4IHJlbGVhc2UyMi1tYWludAorMjkwNjQgMzkzOGU5YTA5Njg5NGM2Yzg2NmFlNDRjOGQ1MjZhMTlmNmQxZWQ3NyByZWxlYXNlMjItbWFpbnQKKzI5MDY1IDg2ZjY2MDYxMDAzYzA2Y2I5NzQzN2UwNGZlMzEzZjdhZGYwY2Y5MWUgcmVsZWFzZTIyLW1haW50CisyOTA2NiBhZDM3YjkzZTdhMmU2ZjEzNDEyNGRlMDFkMDM3MGQ4OGZkNGE3NzAxIHJlbGVhc2UyMi1tYWludAorMjkwNjcgYTY3YjlhMTk1MjY1YjVlYjBlNDFkZDQ1NDZmNGQ1MWUyM2E0OTgwNCByZWxlYXNlMjItbWFpbnQKKzI5MDY4IGE2ZWRjMWIzZmQ1NjYxNmM0NmIzM2YwNTRhMzFmMDQwODMwMDRiZjggcmVsZWFzZTIyLW1haW50CisyOTA2OSBjMWY3YWY0MmE3ZjE3Njc5MzRjN2E2OWE5OTY3NTMxMzAzMmJjOWMxIHJlbGVhc2UyMi1tYWludAorMjkwNzAgMWI4Njk3ZDYwNTY4YzQ3Yjc0YjQ0MDc5NTgwMzRmY2VlYjRkMmZiNSByZWxlYXNlMjItbWFpbnQKKzI5MDcxIDFkYWVhYmIzNjI0NDMwZWUyMmM3MjQxZjg4NzA4YmNiNDU1YWIxNjIgbGVnYWN5LXRydW5rCisyOTA3MiA5NzdmYTEzNTkwNmQxYTE0Yjg0NWI4ZWZiOGY0MDQ3MDgzOTQ1YTA3IHJlbGVhc2UyMi1tYWludAorMjkwNzMgMjg4YzFmZmQ2MDZlYWJiZjViNGQ1YzkwZjNjOTUzMDI0NWY5M2NiNyByZWxlYXNlMjItbWFpbnQKKzI5MDc0IGYzN2EzNGMyNTZjNGIwNDNlMzFhMmNhZTUzMTI5ZWE2MGZiMDQ4MTEgcmVsZWFzZTIyLW1haW50CisyOTA3NSBmOTkwNmU2MjYxYzVmMGQ0NzE4ZGQxZjdjZDYxYjRkMDExOGQxMzg0IGxlZ2FjeS10cnVuaworMjkwNzYgM2VlZTcyOTMxZDE3ODNlNTBlYTk5MGUzMzhmMWIxM2Q5M2ZhNjI4MiBsZWdhY3ktdHJ1bmsKKzI5MDc3IGYzZTcwY2MyNjQyMmQwZDEzOTUxMDk4MGIzNWU1ODAwMTVmMzVjYmQgcmVsZWFzZTIyLW1haW50CisyOTA3OCBjNGMwOTNlMjNjNmRkMWM4MDU4Nzk1MGZlNzlmNjYyMTIwZmUwOGQwIHJlbGVhc2UyMi1tYWludAorMjkwNzkgMzhhMWU1NmI5YmYzNTI0OTVhYTM0ZTE2YzlhMDk4MDBlMGQ2ZWRjNCBsZWdhY3ktdHJ1bmsKKzI5MDgwIDYzNzlhNTUxNDA2NWM5NTZjMTI1ZGE1NzMwN2I2YTJmOTA3Y2FhOTEgcmVsZWFzZTIyLW1haW50CisyOTA4MSA1ZjJjNmFjMjE1Yzc5OTVlZGQ3OTRiMTZjZjI4ZGZjZjg3YzRjOTgwIGxlZ2FjeS10cnVuaworMjkwODIgYjVkZWMwYTU1NGIzODBmZmMyN2Q0NWMxNGY3MjNhNjM5ODQ0YjZiYiByZWxlYXNlMjItbWFpbnQKKzI5MDgzIGRmMjc2YjczZmU0YjU3OTQ4MGNkZDIyYmUyZjQ1NDE2ZTJjMmQ4ZTAgcmVsZWFzZTIyLW1haW50CisyOTA4NCAyZGNkZTkwMzkxYWFlMzQ3NThhZWQwMmUxOWQ1NmNiOWM3NDM3Mzk2IHJlbGVhc2UyMi1tYWludAorMjkwODUgODdkYWE1NjU0NDJkYjgwMThhOGRmYmE5MjAwZmM4YjFmY2RhMGRjMSByZWxlYXNlMjItbWFpbnQKKzI5MDg2IGEwMDA1ZDI2NzczZDAyYzEwNTNlZmE3MzE4NTZmYmY3Y2Q1M2VkOTYgcmVsZWFzZTIyLW1haW50CisyOTA4NyBiOThmODVkYzJkODgxNTU4YjExMzQ2M2U1ZWZlMThmYWQ2OTEyZTQxIHJlbGVhc2UyMi1tYWludAorMjkwODggOGE3NTk3MzM2NzZmYmE5YWFlNmI2MzNkZGVjZGFmNjJjZTljMjhhYiByZWxlYXNlMjItbWFpbnQKKzI5MDg5IDRiYjkxOGVhNjRkMWUyYmM1ZGJiMGM5YWZhMDFlNTE1ZjQ2OGI5MWMgcmVsZWFzZTIyLW1haW50CisyOTA5MCBmODY3Y2E2YzdkNjk4ZTVlYmYyMWU2OTVkM2Q1OWM0NmE0NzRjOTIzIHJlbGVhc2UyMi1tYWludAorMjkwOTEgM2I2MDk1MjA0M2NkMDUwOTNkNTUzNzhlZmNkMTZlMTM2ZWEyMjNkOSBsZWdhY3ktdHJ1bmsKKzI5MDkyIDViYjJjMDU3ZmQ0MGI4OGEyZGQ2YzdjNzM1ZmQwNjEyN2VkODUwMjIgbGVnYWN5LXRydW5rCisyOTA5MyA0NDZiODM1ZmMxOWIyY2ZlZDc5MzgwYjdlOGZlODNjZDQ4YTVjYTFmIHJlbGVhc2UyMi1tYWludAorMjkwOTQgMjVkMWY0ZjkxNDg3ZTBkYWJjNzcyMzc4NjY2OGIxN2M4MTIwN2ZlZCBsZWdhY3ktdHJ1bmsKKzI5MDk1IDg1MDYyYTEyYzI0ZjhmYjQ1NDQ3OTZhMzM4Yjc4ZmM4NWE5MGQ4OGIgcmVsZWFzZTIyLW1haW50CisyOTA5NiA0Y2EzMmU0Zjc4MzkzYTI3YWU4MDZlNjQ3YmIwOWU3ZWE3NDM2MDUxIHJlbGVhc2UyMi1tYWludAorMjkwOTcgZWZhOWE4NjQ2NGQzNDJjZjFlNjNhMGQ1ODgwOTEwMjQ4MDZlYzFhOSByZWxlYXNlMjItbWFpbnQKKzI5MDk4IDg1NTM5Mjc5MDk0ZDE1ZTcxMTU4NWZlMjg5M2MyNGM0MGQ0Yzg0MDggcmVsZWFzZTIyLW1haW50CisyOTA5OSBhOTRmMjcyZTYwMGQ5MDk5NGMyNDVlNDRjZDVmZDdkMGRkMWM1MjE4IHJlbGVhc2UyMi1tYWludAorMjkxMDAgZWI4NDk5NzNiOTQxOGRlMzY4ZTA1MzJhM2FjYWM1YTRiZmU5YzA3MSByZWxlYXNlMjItbWFpbnQKKzI5MTAxIDQyMTM5YWJmZGJlNWJlYjVkNjNlMTFmM2MzZWMwNmFjYzAwODkwODkgcmVsZWFzZTIyLW1haW50CisyOTEwMiAyOWQ0MGVhZTg3MzZiM2YzYmNmZmJhNzM5NmI3ZTEzZmI4OGNjY2ZmIHJlbGVhc2UyMi1tYWludAorMjkxMDMgMGU2ZjBhMjJjNmE5MjNjODVmMzdmMDFhN2QwMDM5MDcwZmQ3MTc3NSByZWxlYXNlMjItbWFpbnQKKzI5MTA0IDVjZjMzZGI1NTBkNzVjZWJjOGY5YTlkMjM2MjY2NjFkNWU1NzhmYjUgcmVsZWFzZTIyLW1haW50CisyOTEwNSAxMzQzODU4NmRhYTYzNzNjZGI0YzE2NGU5NmYwZjdiMTU4OWYwMmI0IGxlZ2FjeS10cnVuaworMjkxMDYgYmYyOGQwZjc4YmQ1YjI5YjQzNmEzYzY3NmQ4MDczNjRiNmU0YTk1NSByZWxlYXNlMjItbWFpbnQKKzI5MTA3IDVjNmZhYzk1YTk0YjRmY2M5NjVhMWQzMzY0ZDQ5MzBhYWYxYmJjOWEgbGVnYWN5LXRydW5rCisyOTEwOCAxOTlmMGY2YThhMzYzMjA2ZDc0OTM1NDc4NzdiN2Y0ZGQ2NWZmMmEzIHJlbGVhc2UyMi1tYWludAorMjkxMDkgODhjMWM0ZDc4OTE2NmRjZTMzZGQ2MjhmYzAyYzg0YTUzNzNkM2M1YyByZWxlYXNlMjItbWFpbnQKKzI5MTEwIDMzYmQ2NDQ1YjdlOTM5NGMzNjdkZDdhMTczZmIwNjljODI0OGRiZGMgbGVnYWN5LXRydW5rCisyOTExMSBlMjE4NDc1MzE2NzQzODRjNDQyMDNjMTRjZmM3ZWM4MGUzNjU5NGNkIHJlbGVhc2UyMi1tYWludAorMjkxMTIgMTVlZTI5OWQzOWU2NzFkOTIwYzgxOGFmNWFkZmVhOGM0YjI0MjAzNiByZWxlYXNlMjItbWFpbnQKKzI5MTEzIDVkOGJiMDBmZWUxODk5Yzc2YTllNTY5NTNjYmM1NGI2ZTA1NjIyMmQgcmVsZWFzZTIyLW1haW50CisyOTExNCA0OTkyN2I2YjVmNDBmYTQzZTVhMWEzNDFmOTJiNDc2NmQxNzM4YTA1IHJlbGVhc2UyMi1tYWludAorMjkxMTUgM2ZhNTQ0YTNjNWVkYWFlZDdlZjYwOTFkZDBlOTJiMmU4NjhkZGZiNiByZWxlYXNlMjItbWFpbnQKKzI5MTE2IDExNTdjNDAwMzE2YjFlNmM5NmM0MzUyMDE5MzkyMTFmZTliYWE4MmEgbGVnYWN5LXRydW5rCisyOTExNyAyMTAzODQ2ZWVmNzNhZjU0ODlmNzg2NTM5YmI0NWJkYzJjMjE4NjE1IGxlZ2FjeS10cnVuaworMjkxMTggYzU4MDQxZTZhNzk5NzRlNGM4Y2I0OGJmMzg5ZTU3N2YxYmQwOTQxZiBsZWdhY3ktdHJ1bmsKKzI5MTE5IDBhMWMxYzVlMWFiNGYyOWUwZjk3ZWIwMDBjYjE3ODdmMzUzNDMzYTEgbGVnYWN5LXRydW5rCisyOTEyMSA0YmU5N2VkYTQzNmJiNjMzMDllYTI0ODgzMTQxMzZhMmY2NTM0MTlhIGxlZ2FjeS10cnVuaworMjkxMjIgMDY5MGVhNmQxMTUzNTcyYjMyYzllNzdhZDEwZjg3ZTJhMDI0NDdkZCByZWxlYXNlMjItbWFpbnQKKzI5MTIzIGY1MDk5YTUzMGQ2N2FmODBhZWYwMjM1MWI3MzBjZGNiYjUzZGUyNjYgcmVsZWFzZTIyLW1haW50CisyOTEyNCBjYjljMWY5NDIyMGI5OWVhYWVlYTVjODY4YTc5NDRmNDlkNzQzMDVmIGxlZ2FjeS10cnVuaworMjkxMjUgMDAwZDE1NTgxYTc2ODZkOTVlZTAwYTE1Mjk1ZGNlOGJjYTczMGU4OCByZWxlYXNlMjItbWFpbnQKKzI5MTI2IDkwMjc0YmEwNDQyNGQ3NjEwNWUyNmExMTIxZDFhNzllYzBlNzYzOGYgbGVnYWN5LXRydW5rCisyOTEyNyAxNGI2OGY1OTI5NWUzOTU2YjdmMTM1YmVkN2Y4ZGE4YzAyMGJkYTczIGxlZ2FjeS10cnVuaworMjkxMjggMzdjMDQ0NWJkYzkwZDk3ZDU0YjhkZjRmN2JiZjc2YjBmYTQxYzkxYiByZWxlYXNlMjItbWFpbnQKKzI5MTI4IDAxMjgzMTNjMjg1NWQ3MTc1M2YwMGZjY2M2MGJiMzllZDkyYTBjNTQgcmVsZWFzZTIyLW1haW50CisyOTEzMCBkZGJmNjlhYmI5NWNjODg2YWMxYmNkMmExYjIwNGU3MjA5Zjc1ZWEyIHJlbGVhc2UyMi1tYWludAorMjkxMzEgNGE4MjViOTAyMzEwZThkY2Y0ODhjNDMwZjhkZDgzYTQ0ZGQwYzhmOCBsZWdhY3ktdHJ1bmsKKzI5MTMyIGI2NTlhYjQ5NDU3MWVhN2U3YjI4Y2E3MGZhMzU3MzEwMzhjMzA3M2EgcmVsZWFzZTIyLW1haW50CisyOTEzMyA2M2M2ZjQ1ZTk0N2RlNDkyOTRkZjE2OTQ0ZTg2NmVjMTc3NmJhODU0IHJlbGVhc2UyMi1tYWludAorMjkxMzQgY2Y5MjY2MGUxZTNjZTNmNGVlOThkOWFiY2MyMDI2M2EwM2NkOWY1NCByZWxlYXNlMjItbWFpbnQKKzI5MTM2IGM1ZDkxNzkxZTU3YjI5NjM0ZDZhOTViNDQzNTYwMTM2OTc5MDhmYzAgcmVsZWFzZTIyLW1haW50CisyOTEzNyA4ODk3YTBiMWNiMDc1NDE4YTBkMjVkMWE4OTEyOGFhNDA4MzZiNTQ3IHJlbGVhc2UyMi1tYWludAorMjkxMzggMWE3OWI5ZTM5ZTcyNTJiNjA4MWFjOTE3OGQ2ZjEzZGYxMWJlY2FiZiBsZWdhY3ktdHJ1bmsKKzI5MTM5IDljZDZlZDk1NDA2NWRiNjIwZWZjMjM3OGVlMWZkODI3ZjY0YTIwMTQgcmVsZWFzZTIyLW1haW50CisyOTE0MCA2Mjg1MzE5NWJlNjhkMWZkMjUyNmI4OTUxNDdkMWY1NjM1N2NmNzEzIGxlZ2FjeS10cnVuaworMjkxNDEgNDFlODI4MGEzNjg1YTcwMjdlMDg2NTRiMGRmODE4N2EwMTc3ZGIwNiByZWxlYXNlMjItbWFpbnQKKzI5MTQyIGJhYzVhNDkzMjkwNTk5YThjYTkzNDNmMGMyOTZhNTIyZDczYzNiYjQgbGVnYWN5LXRydW5rCisyOTE0MyA2ODk2Y2VlZDQ2YTZiMmQyZWQzNzUyZDEyOTFmZmYxNGFjMGI4NjRkIGxlZ2FjeS10cnVuaworMjkxNDQgYzUyMTY1ZjJjZGY0MzkxZmJiNjRjM2M0MDE1MjJmN2U3NjE4NzEyYiBsZWdhY3ktdHJ1bmsKKzI5MTQ1IDM4NmU2ZmUyYzhkMmM5YTA2YzA1MzhlYjQ5ZjNkNzg4NjliYjk2YWIgcmVsZWFzZTIyLW1haW50CisyOTE0NiA2NWRmZmM5YzBhMTY5ZTdiZWJhM2Q3NGIzMjgzMjc1ODY5Yjk2YzE1IGxlZ2FjeS10cnVuaworMjkxNDcgYmE1MjJjNzRhOTMxMDFjNDM1YWVmZmU3ZWVhZWYyOWIwZTYwN2JiNCBsZWdhY3ktdHJ1bmsKKzI5MTQ4IGNlNDlmMTJhMTc2OWU2YTk3YzlkYzY0ZDdlNzdmNzkxMjRjYWYwNzUgbGVnYWN5LXRydW5rCisyOTE0OSAzODg0M2QzNWI2NDY2MDJhNDZiYjU2YTVlZDEyNjdkNmViOTcxMGY4IGxlZ2FjeS10cnVuaworMjkxNTAgYzdkNTgwMWJiYWU4YmNkYzU4OTU1Y2RkYzgxZWNhYmVmNDczM2M4NiBsZWdhY3ktdHJ1bmsKKzI5MTUxIDY5NWFkOGY4NzcwOTUxMTMzOWZhYzJkODhjYmVmNmFjZmExZGI5NTEgbGVnYWN5LXRydW5rCisyOTE1MiAwODA5ZGM1OThmZTIzYTJiMzJjNzAxOGUxOTk3YjU5YzE1ZmY3ZTEwIGxlZ2FjeS10cnVuaworMjkxNTMgZjRhYTY1NjcxMGYwMzlmMzc3ZjRhMGU3MGVhMGNiN2YyYzBlYjVkYSBsZWdhY3ktdHJ1bmsKKzI5MTU0IDU2YzBiYTIwMzI5YjRkZWQ0MjVmMWQ3NzdiZmUxZTdjYzkzM2Q2M2MgcmVsZWFzZTIyLW1haW50CisyOTE1NSBiMmU4MzdmMmQxNDFjNmZiZjlkNzFmZjJmMjcxNzgwMmYwZjBlNTk1IGxlZ2FjeS10cnVuaworMjkxNTYgZDhlYzk4Yjc0ZmE3OGI1NTRiYTljMWYxNGY3ZmJlOWNmZmRjMWQzOSByZWxlYXNlMjItbWFpbnQKKzI5MTU3IGIzOWJkMDNhOGRhYjY2OTIzODhkOWMxNjg0NGRjZTVjODVjYTBhZDIgbGVnYWN5LXRydW5rCisyOTE1OCAxM2Q2MzlhNGFmZDdiODNhOThjM2FmMDMxNDZhNWE3ZjIzMGQ1ODdlIGxlZ2FjeS10cnVuaworMjkxNTkgYTk2MjFiYTdlM2RiZDEzNDBiMGQwODdhNzZjZTQ0YzM0ODQyNzU1YyBsZWdhY3ktdHJ1bmsKKzI5MTYwIGU5ZTdmMTYwYWFjOTkwZTIxNWJhZmRmYTBmZDhiM2ZkZGQxOTQyOWYgbGVnYWN5LXRydW5rCisyOTE2MSA1MDAxM2QxYzZhNDNlYTFiZWVmNTI2ZjEzYzA2N2I1M2ViYTI2ODQ5IGxlZ2FjeS10cnVuaworMjkxNjIgYjc4ZjVjN2U1NzkwMjE5MDgzNTNhNjIwODcwMmFlOTcwYWNiYmJkZiBsZWdhY3ktdHJ1bmsKKzI5MTYzIDJmYjkxMGIxMzljMmUyNWQ1NmNlYjE0NDc1NDdiYjRkYzhjMzVkZjQgbGVnYWN5LXRydW5rCisyOTE2NCBmZWI4ODYzYjZmYzQ2NzRiZDdiOWQ0NzkxZGI1OTA1NzY3N2NiNjJiIGxlZ2FjeS10cnVuaworMjkxNjUgNmFlNmYyMDYwZTI4ZDM2NDM1YTkyOTlhMTg0ZmVjYzdkYWVlNmQ3OSBsZWdhY3ktdHJ1bmsKKzI5MTY2IGM2MjFmNzFiYzcwMjU2MDlmMDliOGQxODhjZjU1MTQwZThhNDBkN2IgbGVnYWN5LXRydW5rCisyOTE2OCA4MTIwNGUyMGNmZTU5ZTM3MmE3YTYwMTFmYTZiZjU2NTA0NWE3N2YwIGxlZ2FjeS10cnVuaworMjkxNjkgMGE3YWE4NzRjNDUwYmRkYTU5OTlhMzJjMGIyZGE1ZTJjMjRmMzU2ZCBsZWdhY3ktdHJ1bmsKKzI5MTcwIGU5NTkxNzJjYWY0OTMyMTg4MGY4M2M5OGRmYzM2ZTNhOTM4Y2I4NDIgcmVsZWFzZTIyLW1haW50CisyOTE3MSA0NDc3NjJlYmIxMWQyZDcyYTE1MTg4OWI5YjJlNDYxODVhODc3MmIwIGxlZ2FjeS10cnVuaworMjkxNzIgZWU3NTZhYjZhMTNlMGRmNzM4ZmI3OWJlYzE4ZDFlNzNkMTE2YjlkNCBsZWdhY3ktdHJ1bmsKKzI5MTczIDBmNTA1MzZhMTBiYjc3NjRlN2Q3NzIyZmMwZjA2N2Q0YmYwNDIxZDYgcmVsZWFzZTIyLW1haW50CisyOTE3NCAxZmUxYTU3ZDhlYjFiMjdiOGUzODdiZGFkZDc5ZTcwZGM5OWJhZmY4IGxlZ2FjeS10cnVuaworMjkxNzUgNzMzZGYyZDFlYmE5NzFiZjUwYTQ3MTBkNTgwNmE3NzhiZDA2MzY1NiBsZWdhY3ktdHJ1bmsKKzI5MTc2IDFhOWY0Nzg4NTI2MDRhN2QwY2NjMzgwMWJhMzZhZmNkNzM2MjM2NjEgbGVnYWN5LXRydW5rCisyOTE3NyBiYWQ5Njk5NTc2ZDlkOWJkNTYwZDgyZDRiMjc4ZDA4ZThkZWJkN2NkIHJlbGVhc2UyMi1tYWludAorMjkxNzggYWU2ODYzZTg3NzI0MzdiYzFjNzI1NmNkMTNlNDA5NGNhZGI2YzkzYyByZWxlYXNlMjItbWFpbnQKKzI5MTc5IDA2ZjYxNzNiODBmYjQxNzFkMDc5N2I2OTQ5YTA2ZmEzN2U2NmVjNDggcmVsZWFzZTIyLW1haW50CisyOTE4MCBlMDY3NDNmYWI0Nzc1Y2E4NDMzOWIzYzVjMGM3OGU3ZDdiNmQwM2I3IHJlbGVhc2UyMi1tYWludAorMjkxODEgNDFjNTkyMTIyZjYyOWZkNWQ5ZDYwOWE0N2JkNmRmN2Y5MzExNmM1YyByZWxlYXNlMjItbWFpbnQKKzI5MTgyIDJhZGFkYzE5OTIzY2UxMmYzMDkzMTIzODk1MzM2ZjJlMzdmNTg3ZDggbGVnYWN5LXRydW5rCisyOTE4MyAyOTBlYTBjNmRlNmE1YTFhY2YyYTNjMDZiMjIxNjcxNjIxZDMyMGM1IGxlZ2FjeS10cnVuaworMjkxODQgNTViMTgzOTQxMjNiN2FjNjI1NzU4ZGVjNzdkNGM4NTljZTliMmY1NSByZWxlYXNlMjItbWFpbnQKKzI5MTg1IGUzNzRlYTdhYzRjZTQ4YTA0NDkyOTU0ODI4MGFkZTE5ZmNjYWZkZTAgcmVsZWFzZTIyLW1haW50CisyOTE4NiBmNTMyZTliNjk1NTFjMmU3ZTc4NGFiYjFlNWNmMDJlYzk4ODI0MDNjIGxlZ2FjeS10cnVuaworMjkxODcgM2MyNmFlNjFlOTUyM2ViZGYzNTA1YzFkYmRlOTc4NWMwMDJlNDRjYSByZWxlYXNlMjItbWFpbnQKKzI5MTg4IDhiMjBiMjZmMTE4Njk5ODAyMzljYjEwNjc4ZDcxNWQ4ZDIyYzk0YTggbGVnYWN5LXRydW5rCisyOTE4OSBmNmVkYjFlZjJlM2Y4MDBmNjVjNmUwNjVmZWJmNGZjYWQxYjQ0ZTdjIGxlZ2FjeS10cnVuaworMjkxOTAgNjFlNmI1N2ViYmUxZDgwZWVhMjgyMGJjNzIwZDczNWI3MmRjNWEyZSBsZWdhY3ktdHJ1bmsKKzI5MTkxIGQ2MzRmYmQ1ZTQyMzJkZDdjMDkxNzA3ZTQyOGVlMjllMTlkMjVkYmEgbGVnYWN5LXRydW5rCisyOTE5MiA4ZTkyYmU2NWRlZDM2NjhmZTZhYWFhOGQ0ZjE3NTQ1MjNlMDdiODZiIHJlbGVhc2UyMi1tYWludAorMjkxOTMgNjVmYTE5M2VhMTA5MGNlN2Q5Y2Y5NjRmNDFhZjdmZWY4M2VhYjVhYyBsZWdhY3ktdHJ1bmsKKzI5MTk0IGY0NjE4MjdkYzdkZTZjM2YzZjM1ZjkxY2U5MDNmNzA0MjZlYjM0NWYgbGVnYWN5LXRydW5rCisyOTE5NSBmYTE3MzcxOWFjOGMwZWE2MTFiOGE2NmFlNGRhNjM3OTBmOGNiYzI2IGxlZ2FjeS10cnVuaworMjkxOTYgYjU5ZDFhMTE5MzkzMmRiMzZkMzNmNjFjOWI0MzZlMzc5N2UwNWIwMiBsZWdhY3ktdHJ1bmsKKzI5MTk3IGFjZTgyZGEzYjQ1MGU0YTI5YWJmMWNmMzBjZGYxY2UxMjhjZWI2ZjkgbGVnYWN5LXRydW5rCisyOTE5OCA3ODdmZWNkMGFhMWJiMTA3Njg2OWY1MTMwMDZjYWI5OTlmZTVkZDY5IGxlZ2FjeS10cnVuaworMjkxOTkgYzU5Y2U1MTNkZWY2MjViZWE2YTA1ODA5Mzg3MTZlNmFmY2E3NmUzMSBsZWdhY3ktdHJ1bmsKKzI5MjAwIDNhM2Q1YWVjN2E2YWZmMWRmZWU0ZjUzOGQ3OWZiY2Y2NTdiYWI3NGYgbGVnYWN5LXRydW5rCisyOTIwMSA3MDA1ZjRiNmNjMTIyY2NkOWZmYjkxMWJhODlhNmUyZTVkYmVhMjRmIHJlbGVhc2UyMi1tYWludAorMjkyMDIgNmQyMTM4Mzg5NjY3MjU2MjA1N2YzYjc1Y2FmYTk0Y2JmMDk5NDYxNSByZWxlYXNlMjItbWFpbnQKKzI5MjAzIDkyYThhMzUyZTAyNDMwNjMzYThlY2ZkZjYxNGMwNTI3MDYwZGVmNjQgcmVsZWFzZTIyLW1haW50CisyOTIwNCBiMGZhNWY2YThiYjk3ZGU3YTU1Nzg5ZjM0ODMwOTQ4ZmRmZWVkY2E0IGxlZ2FjeS10cnVuaworMjkyMDUgZWVlZDdjOGIyMzFhZWQxNjc2N2UzNzBlNzdmMmMxMjNlMDU2OGI2MCByZWxlYXNlMjItbWFpbnQKKzI5MjA2IDk3MDAyYjI1MDQyNTY3OWQxODYyNmE2N2M3ODJlY2U3YTY4OTFjNjcgcmVsZWFzZTIyLW1haW50CisyOTIwNyA3MGY5MDI2YTJiMTZmZDM4ZDg3YzI3MjRkNTZmMDNiMzhjMWM5MWY3IGxlZ2FjeS10cnVuaworMjkyMDggMjFhYjJhNjc0YzBhMTQ2NGVhMDZiZGQyYzllYjBiNDRlNGQ3ZDRjMSBsZWdhY3ktdHJ1bmsKKzI5MjA5IDM5NmM4YTI0ODgwYzgyNWQ1NDI0ZjBlNmNmMmM0YmY5Y2UxN2YxOTcgcmVsZWFzZTIyLW1haW50CisyOTIxMCA4NmJmODQwYzJhMWNhOGJlNGZkZDQwMjU3NzAyZTMwMTU3YmNlODM1IGxlZ2FjeS10cnVuaworMjkyMTEgNTRlYmYwODVkMjZmYTk2NGNhZjYyZGY2N2M2YTc0MWM4MWZiMzE1YSByZWxlYXNlMjItbWFpbnQKKzI5MjEyIGY3Y2NmNDk5MTU2NWMzZmIzMzIwMjhhMWQzYzJhNmFjM2ZmMWE2ZDUgbGVnYWN5LXRydW5rCisyOTIxMyA3MzQwYjY0YTQ5MDgyMjNlYmJmM2UwMmFlN2U4ZGRhMWQ0NjNmZDgzIHJlbGVhc2UyMi1tYWludAorMjkyMTQgNDg5MGYxYmRlYWE2NDJlMjBjN2U0Zjg3NjkxY2MyNTQzNzk2NmYzNyBsZWdhY3ktdHJ1bmsKKzI5MjE1IGY3YTQ2YjBkM2MwN2FhMzBlNjVhZTFjMjYzMzNhZWZiMTY3NWQxNjcgbGVnYWN5LXRydW5rCisyOTIxNiBkNDNlODJiOGQ3OWQ1Njg5ZThiYzliYjc2NmRiODRjM2M0OTY4ZDJjIHJlbGVhc2UyMi1tYWludAorMjkyMTcgZWMwYTQ4YWU4ZWI0N2VhMTZmNzM3ODQ4MTY1ZWNlOGQ0OTlmYjllYyBsZWdhY3ktdHJ1bmsKKzI5MjE4IDliZDJmOTc5MmVmYmE2N2ZmNTRmZGFmYWNjOTgyZmMwOGEzYTMxOTAgcmVsZWFzZTIyLW1haW50CisyOTIxOSAzYzk1ZTA5NzY4NDQ4ZWNhMzQyM2RjMDJlMGFiZjYwNTAwNDE5NjA2IGxlZ2FjeS10cnVuaworMjkyMjAgMmQxN2UzY2I3NzRlODM2M2Q5MTU0NDRjNGUxY2QyNTU2M2FlMzQxMiBsZWdhY3ktdHJ1bmsKKzI5MjIxIDc1Y2JlYzQwZGI3ZDVmYzU0MWNmZDBmZGJlM2JiZTUwM2U2MmNjZTYgbGVnYWN5LXRydW5rCisyOTIyMiA2ZDM1ZDQyOTJkZWM0NmQyMTgzOTI2MmM1ZmFlYjIzYTFkMTJlMzc5IGxlZ2FjeS10cnVuaworMjkyMjMgNjMyMjU4MTE0OThkNTExZDMxYjFjM2IwNDJhZGZhNmRmNDlkZWIwZiBsZWdhY3ktdHJ1bmsKKzI5MjI0IDA4MzhjNDI0NzkxNzgzZmVjOGE1ZTNkZGI2ZDFkNDBkMDQ1YjE4MTggbGVnYWN5LXRydW5rCisyOTIyNSBmNDQ5ZmI1YmJhYjhhZDY5YTUzYjI1NDJjNGQxOTYzNGMyOTMyZDUwIHJlbGVhc2UyMi1tYWludAorMjkyMjYgNTYzMjg0MWEzMmE0MDU5ZWJlYTM3NTdmNWMzNmJmN2YxMDUxOWQ0MyBsZWdhY3ktdHJ1bmsKKzI5MjI3IDZlZDBiYmRhYmRjODE5ZWMwYTI1YTFhMDdkMDUwYTFmMjIwNzJmYTQgcmVsZWFzZTIyLW1haW50CisyOTIyOCA2OWFhNjBkNzcxZDFmMzE5OWNjZDM2MzE0ZDUwYTZjNDJjMzQ4YmE3IHJlbGVhc2UyMi1tYWludAorMjkyMjkgYjRlZDlmOTMxOWNkZTQxMTVkYTFmMTU5NGU4ZWMwNzA0MDJhMDZhMyByZWxlYXNlMjItbWFpbnQKKzI5MjMwIGY0NDdiNjk2MDFiOTE1NmUxZDVhYTIwZjEwNTk1NzVhM2JlNWRlMjggbGVnYWN5LXRydW5rCisyOTIzMSBjYTk4OWE3MWI2YzdkZDdkY2QxMTVmYmYxZjllMjcwNjMxZmJhM2EwIHJlbGVhc2UyMi1tYWludAorMjkyMzIgNzFlM2E4ZTlkODg0MDYxYzFkNTdmOTZiOTlhMjQxZjgxNDllMzk1NCByZWxlYXNlMjItbWFpbnQKKzI5MjMzIDQ0NzI5ZmJiM2Q1YmJjMWFmYzZjN2VhNzBlY2MzNmRjMjJhMTIwZDQgbGVnYWN5LXRydW5rCisyOTIzNCA4YWU5YzBiMGFhMGYxNTRkY2M0OGRmMTVhMWQzY2NiYmI0NjVmMzE0IGxlZ2FjeS10cnVuaworMjkyMzUgN2E1N2RkZjcyNzk0ZWY5ZjEzOWE2NGYwYzBlOGJlOTQ4YzNkZGZhNiByZWxlYXNlMjItbWFpbnQKKzI5MjM2IDAzN2RmYmEwNzBhYzc4YzM4YTYwMmQyZGE5OWY3OTQzYzc1ZDQ1ZjIgcmVsZWFzZTIyLW1haW50CisyOTIzNyA1Njk4ZjBmZTJlYTAwOTAwNjA4ZWI3NGJiMzNhZGU2MzBmMzcxNmZhIGxlZ2FjeS10cnVuaworMjkyMzggOTUxZTNmZTdlZDNhZDNhNTZlNGI2Y2I3N2M4MWQ3ZDNhOGMyMDkxOCBsZWdhY3ktdHJ1bmsKKzI5MjM5IDNhODc5ZjJmY2EwNjZhZDI2ODI0ODYwZTQxOTZlZTViYWM4ZjgxODAgbGVnYWN5LXRydW5rCisyOTI0MCBkNTg3MWQ2ZTczNWQ3NGRmYzcxNWFlYWE2ODkxM2JiMGRmNzI4ZGM4IGxlZ2FjeS10cnVuaworMjkyNDEgMzYyMzAxYThjM2U0Mjg5ODZkNDA1MjNjMjRlOWNkM2UzNTE5NTI3ZCByZWxlYXNlMjItbWFpbnQKKzI5MjQyIDkxZWJmNDg4YjVhMTg3YmIzY2IzMTIzOWUxMzYwYTRlNTQ4ZjkxYmUgbGVnYWN5LXRydW5rCisyOTI0MyBjMzU1ZmQzN2Q2NDA3YjE0MmZjMmRmMTc4Y2ZkODU0MjA4Mzc5OWYxIHJlbGVhc2UyMi1tYWludAorMjkyNDQgODRlZTVhNDk5NzQzMDEwNjg4NmY5ZDY4OWUzNGY2ZTcyNjgyYmIxYyBsZWdhY3ktdHJ1bmsKKzI5MjQ2IGVkZjVlN2U1NWQxNDBhNzcxNzVlNzAyYWY1NmRlYzcxMWFkOTZlZmQgcmVsZWFzZTIyLW1haW50CisyOTI0NyBhZGU4YWYxYWEzYzY4ZjQzM2I2NzJmOGQxNzkxZWU5ZDYzYTNiODBkIHJlbGVhc2UyMi1tYWludAorMjkyNDggMWRhY2I2YWMzOGU5Y2VlNTMwYTdmOTUwYjQ3OGI4OWJhZDFlNWNmOCByZWxlYXNlMjItbWFpbnQKKzI5MjQ5IGNjNDFiOWNhY2FlODQ3ZTUxM2Y2ZmM1MTM0ODRiZTJhNDU3ODYzODkgbGVnYWN5LXRydW5rCisyOTI1MCBmMGE3NGFlMDlhZDczZTQ4YTM1MTk1NWQ2MDlhODg1YzcwMGY5MjhhIHJlbGVhc2UyMi1tYWludAorMjkyNTEgMmVmNzFmMzUxYzc0YTJlMWY1MGYxMzZlMjZkYWZkYWEwZWI0YjI1YyBsZWdhY3ktdHJ1bmsKKzI5MjUyIDQyM2FhNWVmOTI0N2JkNGY1ZGZlYmZjNDgxYjkwMDc1MjQwMTk3MWYgcmVsZWFzZTIyLW1haW50CisyOTI1MyBjZjE4Y2EwZWVhODkyZDU1YjQ5Mzk0OGJmMTJmY2ZmMTQ4YTJkODRiIGxlZ2FjeS10cnVuaworMjkyNTQgYWYyMGFlYWFhOTgyMDRhMDQ2MjdkMjdiZmM5Y2YyNmM3NmI4ZGY5YyBsZWdhY3ktdHJ1bmsKKzI5MjU1IGJmMzg0MTExYjNiMzhmN2Y4MjE3ZTFkYjAyODZlZmI1MjExOTQ1NmYgcmVsZWFzZTIyLW1haW50CisyOTI1NiBlYTFhNGNlYmM1MzBhNWIzZGU3ZWJkZThmZTg4YTQzMGFkYWQ2MjZkIHJlbGVhc2UyMi1tYWludAorMjkyNTYgNjFkNTMxNTMzYTg2MjI0YTFjMjY5MTdjMTgwMTNkOTFmNTkyZmJmYiByZWxlYXNlMjItbWFpbnQKKzI5MjU4IDgzODI4NTgzZDkxNzM4ZjZiYTg2ZTU2ODg4OGZjNWY3NTA2NjFmMzkgbGVnYWN5LXRydW5rCisyOTI1OSAzMWIyZmI0NDg1MTQ2MzJhNTUxOWRiNzY3ZjllN2Y3MmZhZDM1M2MzIGxlZ2FjeS10cnVuaworMjkyNjAgYTNkNjEyZjA1NjNmMTY0MzZkYjdlMGNhNjU0ZDkxMjJmZGY3NjU0MyBsZWdhY3ktdHJ1bmsKKzI5MjYxIGI4NThmNGM4ODNkZGRlNGQwODRjOWI4ZTRiZDRiZWIzOGJmOWRmMzcgbGVnYWN5LXRydW5rCisyOTI2MiAwMDFiNzg5ZjFmODRjMDA3OGNjYzUxZjlkNmRlY2IwZmMxMjJjOTMzIGxlZ2FjeS10cnVuaworMjkyNjMgYWMxNDMxN2E5YWU4YjMxNmU0YmE1MjdjNzA3NDkyY2Y3NzRmNmRmNSBsZWdhY3ktdHJ1bmsKKzI5MjY0IDNlYWZiZGU1NmIyMTlmMWRhYTVlMmM4NTJlYWUwOWFjMWJmYzVkYzEgbGVnYWN5LXRydW5rCisyOTI2NSA2NmUzZTVmMDkzY2ExMTM3NDg3ZGM4MDg2OTNmYmNmM2JkNDI2ZThhIGxlZ2FjeS10cnVuaworMjkyNjYgODVjODdiM2FjOTZiYzI2ZTU3NGY5NTRlMzFiNzZiZjk0YTVjYjg3NSBsZWdhY3ktdHJ1bmsKKzI5MjY3IDZjOTMwZTI1NmExNmQyNDg5ODZhZWQ3OTAzZDc0NTNlY2YwOTBmNWQgbGVnYWN5LXRydW5rCisyOTI2OCBiYzgxZDUzMWM2MjkzMjI1MmE3MjU4ZTM2YjgyMTFmN2RmYTliYzVjIGxlZ2FjeS10cnVuaworMjkyNjkgMzQyODQ4MjVkOWNkODFjMjkzMzNmZWQ4OWEzZjE5NGRlZDVmZmExZCBsZWdhY3ktdHJ1bmsKKzI5MjcwIGM3N2Q4MzU3MGIzZmNhZmY2YTM2Yjc4MjA0ODQ2ZTVmOWUwNGM4NmEgbGVnYWN5LXRydW5rCisyOTI3MSBhYjlkNDAxNmI1ODdkNWFlOWE3ZDVlOTQyZjIxNGFkZWJhM2E4OThhIGxlZ2FjeS10cnVuaworMjkyNzIgNjAwMTI2NWVjNjg2MTU2YzdhN2E0ZDE5MmUzMDVhY2FhMzAwNWYyZiBsZWdhY3ktdHJ1bmsKKzI5MjczIGI5NzY5ZjcxMzNjNjBhYzJiNDI2YTI0MWY3ZWQzYzIxNGVjMjI2ZGEgbGVnYWN5LXRydW5rCisyOTI3NCAwYmJlYTRkY2Q5YmVkNmQ4MWM5Mjc0NWNmNjhlODg4YjE2ZmJjZjk2IGxlZ2FjeS10cnVuaworMjkyNzUgMzdiZDJhOTAxYzEwMGE5ZmNmYzBiYmM1NTQ0YmU3YTE5OGQ3ZTEyOSBsZWdhY3ktdHJ1bmsKKzI5Mjc2IGZkY2E4N2M0MjM0ZWE0NmE1NDJhZmMxNzhiNzIwMGU1ZTc0MTQxZTQgbGVnYWN5LXRydW5rCisyOTI3NyBjZGNiMTAyZjhlNTZjMmNmNGE5MGE4NzNmNDNmNWJiNWJhN2RkYmFlIGxlZ2FjeS10cnVuaworMjkyNzggOTE1MTEyNjcxMTUyZjQzZmE5ZDdkY2I2ZWZhMzA2NjVhODYxZDkxNyBsZWdhY3ktdHJ1bmsKKzI5Mjc5IDU0ODM0MzYzY2NmMGRhNjlmMzQwZDBmYjc0MTdkZWEyZTU2ZTZkMDAgbGVnYWN5LXRydW5rCisyOTI4MCA1ZDM1MmRlOTQ0MTU4MGM4M2MyZGMwMmE2ZWM0MDY5MTQ2ODE3YjczIGxlZ2FjeS10cnVuaworMjkyODEgNzc3OTk4YTIyN2I3NGQxN2Y0ZGNiMjcxOTJlYmU3YjllOWFlNjljMiBsZWdhY3ktdHJ1bmsKKzI5MjgyIGI4Y2JkYjczNWNmMmIxOTllNTY0Zjk0ZTkxODliNGFmNDIwYjU2OTkgcmVsZWFzZTIyLW1haW50CisyOTI4MyA0YTkyYzdkOWQ0MTU0YjA1ZmJkMjQ1ZmZlMDZkYWQ4YTRlMGQ3MDYwIHJlbGVhc2UyMi1tYWludAorMjkyODQgNzZhYzE2MjkzZTRiNmM3NDA3ZWE5NTE0ZjkzNzJiN2Q4MWEwZjgxYyBsZWdhY3ktdHJ1bmsKKzI5Mjg1IGZmNjdkNWZmMTIzZTU2OWNiMGI1NTVjYzRlNDk4N2U3NDM0NGMzYWQgbGVnYWN5LXRydW5rCisyOTI4NiA3OTQxOTg5N2EzNmZlNzk3NzU1NmI3NGQ2MDA4YjU2NmNmMTIyMzQwIGxlZ2FjeS10cnVuaworMjkyODcgYzQ0MDNhM2VmYTVkNWY4YjhkODRlNDZjZDJiODk4ZGM2YmZkMTUwMyBsZWdhY3ktdHJ1bmsKKzI5Mjg4IDEyMjI3ZDc5ZjZiYTRjNzZkZjA1ZmM2NzFmMTVjNmI3NTE4NmZlYzAgbGVnYWN5LXRydW5rCisyOTI4OSAwZjRlOTk4ZTNlYmI2MzM0Y2IxYmE3YTUyMTM2NWI2ZGUwMzBlZjcxIGxlZ2FjeS10cnVuaworMjkyOTAgMDMyZjE5NjA1OWFhMGI0ZjcxZTBjODBlNGZjYzBmZTk3YTZhYmUxMyBsZWdhY3ktdHJ1bmsKKzI5MjkxIDk5MGIyNzUxNDkzODJiNGU3ZDdkOTRiNGFmNDhhZjkxZGJhNmM0MjkgbGVnYWN5LXRydW5rCisyOTI5MiAxYWZiMjI4ZTQyNjViNWE4NmYwOGMwYzg0ZGI0MDYwNjk0MzE1MDE2IGxlZ2FjeS10cnVuaworMjkyOTMgY2ViZWUyYTllM2NmOTk2MGMwMDU1NTM1ZjM5YTA0YjVlYWZlNTZiOSBsZWdhY3ktdHJ1bmsKKzI5Mjk0IGMyZGQ0MTMwMTg0MTA4YmU1M2I1MWY3ZTM5YTg1ODlmMWZhYzUzMTAgbGVnYWN5LXRydW5rCisyOTI5NSAwOTNmZTViOWY2Zjk0OWFhNWJiZDExNGYwMzVjOTI4YzAxZDU1Yzk1IGxlZ2FjeS10cnVuaworMjkyOTYgN2VhNjc0YWM1OTBlZjU3NDhkM2M0YTFkYjc0MTc2MDc3NGMxNTcxMyBsZWdhY3ktdHJ1bmsKKzI5Mjk3IGRjNDIwZGUxN2E2ZWU2M2NlZTAyMGI1MTk2NDdhMTNmMmEzNDU2MzEgbGVnYWN5LXRydW5rCisyOTI5OCBkZWFiZDA1M2I2ZGUxZjRlZDY1NmFmZDM5Nzk1ZmZlOTg1N2Q3YWM5IGxlZ2FjeS10cnVuaworMjkyOTkgODA1MDE1N2E0NDMwYmI3YmQ4NzIxMzU5OGI3NDM4NGJiMDAwM2E5OCBsZWdhY3ktdHJ1bmsKKzI5MzAwIDA5MGI3MmMwZDJlYjczMDI1OWE5YTc2Mjk1ZGUyNTEyNmQxZmE4NmEgbGVnYWN5LXRydW5rCisyOTMwMSA0NGNjN2M2MmQ5OGRiMzc3NjFjNDMxN2M1NGVjNTJmMmU1MDI3Y2ZmIHJlbGVhc2UyMi1tYWludAorMjkzMDIgMDM1YjhkZWI1MmMxZWY0ZDBlYjUzMDE3Y2E3YTQwMmMxOGVlNzM5NiByZWxlYXNlMjItbWFpbnQKKzI5MzAzIDQ3MDI5MjEyOTdkMTI1NWExMGNjOWM3M2JkMTI4N2IzNWEwNzEwNzEgbGVnYWN5LXRydW5rCisyOTMwNCBhODlkMDE0NTU5ZTA1N2YwMTYyMzI5Y2M0ZDhlNDViOTcwOWVjNjRkIGxlZ2FjeS10cnVuaworMjkzMDUgMmYzNjQ3YjIxYjA3NjMzOTBmMmQxNzg3NTE0MWQ4MzU1NGY0OWZmOCBsZWdhY3ktdHJ1bmsKKzI5MzA2IDg1NDA4ODdiY2VjNmM5YjkwYTJhYWFiNDEwMjI3OTUyMmQxZjdjNTkgcmVsZWFzZTIyLW1haW50CisyOTMwNyAyNDM1MDM5MjZjODFkODBlYzUzZTFhYjA0YjAzNWQzMzViZWRkMDQyIGxlZ2FjeS10cnVuaworMjkzMDggZWVhNDBjNDE3MjA1MzlmYmY3YjM0MzBkMGQwYmEzMzE5OWIxMjc3MiByZWxlYXNlMjItbWFpbnQKKzI5MzA5IDA5ZTNmMGQ4YmUxMGJlYjVhYjBlZmU4NDg0YWRhNDdiNGE3YjIyYzkgcmVsZWFzZTIyLW1haW50CisyOTMxMCBlYWI3OTQwMjc3ZmJiM2MxMzRiZGM0NDExODc2ZDJlOTJjMzRiN2M5IGxlZ2FjeS10cnVuaworMjkzMTEgN2I3Yjk2NTU1ODQyYTk0ZDQ2NzU3M2M0NmMyNWM0NzA1YjMzY2QxYSByZWxlYXNlMjItbWFpbnQKKzI5MzEyIDMxYmRjNjZmYjMwN2YwMTVjZjBlOGMwNzA4YTU4NTk5ZDRhZDM2MWMgbGVnYWN5LXRydW5rCisyOTMxMyA0YWNiNTUwMWI0OTAwYzcxM2QwMjJmMDNkZTc4MTRjNGViOWY1Y2YzIGxlZ2FjeS10cnVuaworMjkzMTQgOGZiMTJhYzc5YzkzN2FhNDM3ODU5NjU2ZmIxYWQ2MTNhYjYxNWI0NyByZWxlYXNlMjItbWFpbnQKKzI5MzE1IGVlZDBmY2Y4NWI2MjI5MDQyOWMyMTE5YzVkZmQ3ZjBjZTA2NzMwOGQgbGVnYWN5LXRydW5rCisyOTMxNiBhNWRiMjQ2ZDk0YTBiOTFhZDk0NDM0YjJjOTc2Zjk1MzAzZmUyOTM3IHJlbGVhc2UyMi1tYWludAorMjkzMTcgMDU3ZGU0MWRhZjQ4OTJkMDFmZmRlOTllMzg2ZmIzNDQ2YjY3ZTc5NiBsZWdhY3ktdHJ1bmsKKzI5MzE4IDY3MzgxZWJkNWY0ZjcyNjA4M2FiODU1ZDdhMjVlNGY3NDgwMThjZGMgbGVnYWN5LXRydW5rCisyOTMxOSA3ODg1ODk5ZmI0M2ViNTBjZDI5OTQyYWZmNzEwNDRhYmI3YjA4MjFhIGxlZ2FjeS10cnVuaworMjkzMjAgMWY1ZjY0ODE4ODZkOWFiMzQ4MTFkZTZlNDVmOTMwNjI1ZjUyZjdkNSBsZWdhY3ktdHJ1bmsKKzI5MzIxIDY4MGJmY2M5Y2EwNjZjNmM2ZGUyN2RjMDNlNDNiYWM3ZGQwYjcyYzUgbGVnYWN5LXRydW5rCisyOTMyMiAyZjliMGEzNWUyMDU3ODhmN2UyM2ExYmY0NzdkMDg4MDQyYTI0ODFhIGxlZ2FjeS10cnVuaworMjkzMjMgYTExY2ZhZTcxZGViMDc4NmU2MjIzMDA3MDQ5ODk0MDBjYTk2NTQwZiByZWxlYXNlMjItbWFpbnQKKzI5MzI0IDg0YTNkZDk5NGNkMTg4MDRmNjMzYjZjODNmNWYyOTZkMGJkMTM1MzUgbGVnYWN5LXRydW5rCisyOTMyNSA1NGYzMmJhNzA0N2NiM2ZiMTg5MjA3MTNlN2JiNGU0YmU1OGM1ZWNmIHJlbGVhc2UyMi1tYWludAorMjkzMjYgOWRkOWM1MzFjYTc4YzRmMTBkYzExNjRjNjEyOTk4MDM1ZDY3MDVjNCBsZWdhY3ktdHJ1bmsKKzI5MzI3IDRjOGE4Yzc0ZjRiZGE5NGZmMzg1ZjY1YzE1ZTRiZjIzN2YwY2ZmMGIgcmVsZWFzZTIyLW1haW50CisyOTMyOCA4MjNlOTQ3ZTI0NTAyNTdmZmM1N2M5ODFkMjVjZGExYmZhZWVhNmNmIGxlZ2FjeS10cnVuaworMjkzMjkgMzVmNDc2ZDY0ODFlZjQyOWRlZGFjMGU2Mjk0MmYzNjI5MDkzYThmYiBsZWdhY3ktdHJ1bmsKKzI5MzMwIDQxZTAzNjFhMjE5MTIyZmFlNzMzYzBmNmQyZDUzMmYxMGEzNGE1NjIgcmVsZWFzZTIyLW1haW50CisyOTMzMSBlNTZiNTJlNzhiYzk3OTBiNTNiNjc4ODUwYTNmMzdkMmYyODFkYzk4IGxlZ2FjeS10cnVuaworMjkzMzIgMTUxYWEzNDM0YWE2NzAyMzk3MmNhNzNhZGRjY2ZjMzc4OTQxN2E5NyBsZWdhY3ktdHJ1bmsKKzI5MzMzIGQxN2ZmYTA1MjJiNzU5ZWU5OGE3M2NkNTFkNjdiOGRkNjk5ZWVhYWUgbGVnYWN5LXRydW5rCisyOTMzNCBiOWFhODcxZjg0NGJmY2ZmY2VjNjI1NmU3MjEyNjUyYmNjMmZiOGE2IGxlZ2FjeS10cnVuaworMjkzMzUgYjdiMDEyZTc4ZGEzNWUzYmM1NTE3YzUyMDExZDVhMWE5NmI5YjM5MCBsZWdhY3ktdHJ1bmsKKzI5MzM2IDJiMTU4MjY3YjAwZTRjMDljMDExMzA3YjA5YzI4YTI2MmU3MmVlYTQgbGVnYWN5LXRydW5rCisyOTMzNyAyYmNiNDE2MTFmYWU5MTkzNTJiNDA3MmIwOWE3ZmJlYTlhMjBiMTkyIGxlZ2FjeS10cnVuaworMjkzMzggNGViOTRjNTZjNDZhNDcxYTQ2ZDNkOWE3ZDBkN2EwODAxMmY3OTE4MSBsZWdhY3ktdHJ1bmsKKzI5MzM5IGNiOTEwYzM5NDkyNzE0OTUzNzUwMTQwMjEzZWEyNWU1NjkwYTM2MjQgbGVnYWN5LXRydW5rCisyOTM0MCBhOWNmZWI0MmUyNDA5OTg2NGEzZmMwNjZjY2QzMTdkOWRiZjM3ZDc3IGxlZ2FjeS10cnVuaworMjkzNDEgNTdmYjNkNWUzZGQzNzYwMWVmZjgyNzllYjA2NWI3YWRkYTE1ZmJkNSBsZWdhY3ktdHJ1bmsKKzI5MzQyIDc5MzA1YTJlZmE4Yzg3OGVjMzdiMWJjOTBmZjlhOWIxMTY4OWJlYTggbGVnYWN5LXRydW5rCisyOTM0MyA5MjUzZmU4NmI5MjJmYTFhMWQxMmIyMGUwMWUxNjFjMzNhOWIzZjBiIGxlZ2FjeS10cnVuaworMjkzNDQgNWY3YTMzNGMwOTI1MTA5OTQzYjVmZWRiZjVlZTg4MDQ3YWZhNWI3ZCBsZWdhY3ktdHJ1bmsKKzI5MzQ1IDE1NjA3ZWM0OWZhZjEwODE4NDdiZGI5MDQ4Mjk3MWNmZDdkODM4N2MgbGVnYWN5LXRydW5rCisyOTM0NiBkNGNmYTQwNDNjMDk0ZDdiYTBiZjA1YzZjNDEyMTQ5OTkzY2E2MmMyIGxlZ2FjeS10cnVuaworMjkzNDcgY2EwMjVlOWZlNWJjMmU5MDRiNDIzZWY3YWFlYWVhMDZiZjdmODdkZSBhc3QtYnJhbmNoCisyOTM0OCA4M2EzMmM1NDdiNDk5M2I2MGY1YTQ4M2E0ODJkZGE3YmU4ZmViZmYwIGFzdC1icmFuY2gKKzI5MzQ5IDA5OGNkYmFkNTVjZjJlNzYwNDJmNjcyNDQ2ZTAxODNiNDgxMjQzZGEgYXN0LWJyYW5jaAorMjkzNTAgMmQ3ZjQyNzcwNzMzMjVjYTg4ZGEzODdmMWE4Y2RmODE3ZTU0NzNjOSBhc3QtYnJhbmNoCisyOTM1MSA0NTg3ZDFhZjJjNDE0M2U1YTQ5MGFmZDYzYTlkMzEwZWJiMGI1NGFhIGFzdC1icmFuY2gKKzI5MzUyIGFhMmVhNWZmNWY0MjcwOWQ3NDhkNjhkOTdkYzgzYzE1OWUyOWU3YjQgYXN0LWJyYW5jaAorMjkzNTMgMDdjNmQzYjkyOTNjMjc1ZGM5NTE5OWU0MzZiYjZjMDNiZDRjYTk0NCBhc3QtYnJhbmNoCisyOTM1NCA0NmI1NjczY2EzODBkYWI4NDVhNWZkOTlhZDJiYjhkZWRiOTAxMjFkIGFzdC1icmFuY2gKKzI5MzU1IGUzNjVlNmJmNDFiYjAxZjY4MzJiZGYyM2JlMTE2ZDc5NGU1ODc3NDQgbGVnYWN5LXRydW5rCisyOTM1NiA0ZDUwMzE4YjNlYjE4MWRiN2Q2Mjg4ZmQ1NWEwMzUwMWViOTZjZTYyIHJlbGVhc2UyMi1tYWludAorMjkzNTcgOGQ0NGQ2MTQ5NDFkNDc3YTY2YmMzMTdmMDQ1NjMzY2RhMjIwYjYwOSBsZWdhY3ktdHJ1bmsKKzI5MzU4IDZmMTg1MDhiZWQzZDI3ODg1Y2JkZmZhZTlhM2RkMThlZDdlZmRmMTYgbGVnYWN5LXRydW5rCisyOTM1OSA3ZTgwZTdkMDVhMTZjODM5YjdkYTI3NWE2OTQ2ODMyYzRjODY2YzhjIGxlZ2FjeS10cnVuaworMjkzNjAgMzRmMTdmYjQ5YzUxMzExMDM5ODZjZTliMjE1ZDExYjRiMGU2MmJjNSBsZWdhY3ktdHJ1bmsKKzI5MzYxIGZlYzE1YmFkMzg2ZDlmMGQzMDcwNWM0ZDZjMzQ1MDQyMzE0YmIwMzcgbGVnYWN5LXRydW5rCisyOTM2MiBhNzBmY2M1ZGJiYTUwNWRkYjU1ODY5N2YxNzZhM2VkMDhhODRjZGYzIHJlbGVhc2UyMi1tYWludAorMjkzNjMgNTI5ZGE1MDVlYWJjNzMxMDM4OTMwYmY4NzExYmRkOWJmNDEyZjA5MiBsZWdhY3ktdHJ1bmsKKzI5MzY0IDE3NTA0MWUzNDU4N2E3NjFlYWJmNmU4NzBhYTkwNGE4ZGM5ODQxZjMgbGVnYWN5LXRydW5rCisyOTM2NSA3ZjAzMGI4ZjkxN2Q5MGIwMmM0ZjM5ZTBiMDJlMTFlYmVmMWM4ZWFhIHJlbGVhc2UyMi1tYWludAorMjkzNjYgZmJlYTcwYTQwMjkxNTQyMTgzMWZhNWNiMmExNDgwYTcxZjkyMmNiYSByZWxlYXNlMjItbWFpbnQKKzI5MzY3IGFjMjM5ZWUwYzllOGI4NzFkYTA4NmQwNGE0YzNkNjdmN2Y2NjZkNDEgcmVsZWFzZTIyLW1haW50CisyOTM2OCBjZjg3OTIwMzUxYWNlOTI3N2E2N2I5MTRjMzU4NTZmM2EyMDNjYmM0IGxlZ2FjeS10cnVuaworMjkzNjkgNDAyZmRhZTY3ZTQ0MGY0ZDg2YTU3MzkxMzc2NDRiZjU4Y2Q0YjFmZSByZWxlYXNlMjItbWFpbnQKKzI5MzcwIDE5NTAwYzliNThjMTYxYmZjNTNhNmU3YzYwMDZmNjU5ZWMzZTY5OWYgbGVnYWN5LXRydW5rCisyOTM3MSA1MDliYjBiNmRmYTNjYmNjOTBiNzM3MjBmYjg2OGU3NjQwNzgyYzc5IGxlZ2FjeS10cnVuaworMjkzNzIgMTI0OTI0NTIxMmU0NDYxNjFjNGY1YTdlZjdiMGNkYTRmZmJhYWM4ZiByZWxlYXNlMjItbWFpbnQKKzI5MzczIDM3ZDg3ZGM4MDNkN2E0YmQ2MmRlNzVmMTEyMmFlZTE3ZGMzNjg4YzkgbGVnYWN5LXRydW5rCisyOTM3NCBkM2I3Mzc3YzhhZmFkZTEyMDlkZjg5MDAwNDg3MjMzMjJlNzU3ODY0IGxlZ2FjeS10cnVuaworMjkzNzUgYzMzOThjMjVkZmVmN2Q5MDY1NmVkM2NkYTEzNzFhMzBjMmM2OTE5NSBsZWdhY3ktdHJ1bmsKKzI5Mzc2IGZiN2M1MmNhOTg0MDUxMGU2ZmYxYjZiMzc5MDEzOTM3NGRjZDc2YjQgcmVsZWFzZTIyLW1haW50CisyOTM3NyAwOTVkYmJlYmE5YzA0ZmQ2NDQzNTNkMzk1MWQ0MDgzY2RmNGFhOWY1IGxlZ2FjeS10cnVuaworMjkzNzggNDg3ZDNjMjQ5MGJjMDM1ODgxMjBlYWQyNWFkOTA3ZmE5ODVmMTBhNSByZWxlYXNlMjItbWFpbnQKKzI5Mzc5IDAzYzNmNjEwZTA1NDEzMDhiNGI1ODRlNmYyZTgzZDE1YjEyZTJlZGMgbGVnYWN5LXRydW5rCisyOTM4MCA1MTgyOGVhNTBiNTljMGU4MWU0Yzc3Y2U1MGE0MWM5ZjQwMjYwODUzIGxlZ2FjeS10cnVuaworMjkzODEgMTc5NDgyODc1Y2ZiYTVjNDBmN2Y4ODcyZjcxODllZTVmYWM4OTg2OSByZWxlYXNlMjItbWFpbnQKKzI5MzgyIDUwOTA1ZGIzNWRhNWIwZjA2OWZkYzRmMjVkNTliMDE2ZmM4YzE4YjcgbGVnYWN5LXRydW5rCisyOTM4MyA2ZWE5ZWVmOTkxMDg0Nzg2MzA4Zjk4NzhlYTYwMjNjZmE4OWY3MmZjIHJlbGVhc2UyMi1tYWludAorMjkzODQgZGYwNTVhOWVmZjljZjkwNzc4YzBkYmU2ZGMzMGE5MTBiMjBkN2MxMiBsZWdhY3ktdHJ1bmsKKzI5Mzg1IDBiYWM2NmUxYjM1NjkwNGVhZTQyZDc4ODBjZTdiM2ZhNDY1NWI2NzIgbGVnYWN5LXRydW5rCisyOTM4NiBhY2NkMmY1NGUxODQ3YWM0NWE5ZWQ4OTAzOTQxODRlMmFmMWViYThiIGxlZ2FjeS10cnVuaworMjkzODcgZDMyYzQ1ZDI3OGIyNDkwZGY1NWU5ZjcwODIzZjIxMWFhODQ4ZWFjNSBsZWdhY3ktdHJ1bmsKKzI5Mzg4IGY3ZGEzM2JjZTFkOTM5OTZjOGU3YmNmMjQ0NjAxNjM5ODJmODI3NjIgbGVnYWN5LXRydW5rCisyOTM4OSBmYmExNmI5YmM5NTE3ZjRiZDlmNTQzYTJmYzM4NjE1ZmYxZTVlODM3IGxlZ2FjeS10cnVuaworMjkzOTAgYjA2MzgzMjllM2I5YTFhOWI2NWJhMWI3MGJlNWMzMTBmYmJlNmViZCByZWxlYXNlMjItbWFpbnQKKzI5MzkxIGYyZGFlM2Q5YTc1YmQzYzNlNTg2ZGUyMmEyOWMxNmM5NDEyNDA3ZjkgcmVsZWFzZTIyLW1haW50CisyOTM5MiA4YmI2MDAzZjdmNTRjNTk2NmVhZWVlNDhlNmQ5MGJmZDUwYmYyMDBiIGxlZ2FjeS10cnVuaworMjkzOTMgNWI2ZDU1YjQ1Mjg3YzQzNGY2MmQxMGM3N2VhNDJmYjcwNzdiZWFkNSBsZWdhY3ktdHJ1bmsKKzI5Mzk0IDk5MDFmZGE3YzM2NjRhN2Y3NTMyMzJlOWVhOGRlOGVmZTAxY2ViNTkgbGVnYWN5LXRydW5rCisyOTM5NSA0ZWY3Njg2YzRjODg5ZjY3MTY2ODYyYjIzZWI0MTZkOTkxYjY3MGYzIGxlZ2FjeS10cnVuaworMjkzOTYgNGY0ZTAyNjBiNzcxMzIzODEzZjM3Y2Q5NWEwYmZmMTVjMTFkZmI1YiByZWxlYXNlMjItbWFpbnQKKzI5Mzk3IGU4ZmM0NTllYzAxNTU4NWJmYjEwMTI5NzE5YmYxNTE5ZmMzNjE5NWMgbGVnYWN5LXRydW5rCisyOTM5OCA2ZTQxNGZiYTQ2ZjY4YzI5YTA4NjVjY2M1Y2U0ZGE5ZGRkNTFlNWEzIGxlZ2FjeS10cnVuaworMjkzOTkgODM0YjBlMDM4OWM1YTliM2E5Mjg5NTQyNWM3NGQ2OTcwNGEzOTc1YyBsZWdhY3ktdHJ1bmsKKzI5NDAwIGRjNGEwMzM2YTJhMzNjYzFjNmE4NDlmNDMxZDUzODM2MjcyMjY2ZGUgbGVnYWN5LXRydW5rCisyOTQwMSA2ZDU1NDJjYTI3N2EzOWE4OTc2NGM2N2EzNzA3ODI1MmFmMzk1NjRkIGxlZ2FjeS10cnVuaworMjk0MDIgNTg5NDFmY2I2ZjViYzE1NmExYjFlYjhjZDQ1MjQ3ZDc0NjI1Mjg1MiBsZWdhY3ktdHJ1bmsKKzI5NDAzIDcwNDkyNjhmMjUyZDI3MjVlNzhkOTU1NmFkYzlkN2M4NDNhZWRjZGMgbGVnYWN5LXRydW5rCisyOTQwNCA3NTc1NmM4NTU4YmQ5MTE3MWNjNTg0MDczNzM2NWRjZTllZDVmNTQ1IGxlZ2FjeS10cnVuaworMjk0MDUgZGVmOTYwOWQ5MzY5Y2E4YWU2ZWUyOWQ3YTNhNWYzNGFmOWViZTQ5MiBsZWdhY3ktdHJ1bmsKKzI5NDA2IDMwNjViNTRlM2FiNzFiZjE3ZGYyNmExYmQzYjBiMDdkN2NjOTdlZmMgbGVnYWN5LXRydW5rCisyOTQwNyAxMWZjY2NjZDM2MDA0NzkxNjc0YTQ1ZmJmMjRjYmUwMmRkOTIyNjZmIGxlZ2FjeS10cnVuaworMjk0MDggNzkwNzI5NDc3NjEwZWE3N2I4MTY3NzNiZDczNjAyNmZkZDVlOTlhZiBsZWdhY3ktdHJ1bmsKKzI5NDA5IDA0Y2MxMmJkY2VkZWFhNzViZDU0YjBlNjI5ZmViMDMxNGM1ODhkYWUgbGVnYWN5LXRydW5rCisyOTQxMCBiZTg4MTYxNDg0OGIyODg2M2ZmMjNkNTdmZTAxMDdlODk2NmZlYTAzIGxlZ2FjeS10cnVuaworMjk0MTEgOTQyNDBhZDUwZGJlMmU3MWI4Y2IzZDY4ZmVhOTUxM2VjN2ZlZDc3NSBsZWdhY3ktdHJ1bmsKKzI5NDEyIGI2ZWU4MDQ3YjI1MGQ0YTk0ZGZjYzk2ZjhhOWU1ZWMyYjAyNzYzYjIgbGVnYWN5LXRydW5rCisyOTQxMyBmYjU3ZDU3NzdhMjQ5MmI3MjczZjA0ZjVjOGEyNDA5M2E2YjQwNjI3IGxlZ2FjeS10cnVuaworMjk0MTQgNDhlNDYxMmY4N2NkOTI4YjllZjdhYzk3YzNlYzZhZjM5ODA4N2ExMyBsZWdhY3ktdHJ1bmsKKzI5NDE1IDQzZjcwMTA5Y2RhNWM1NThiZTI5NjY5YzVmNDkyODkxNmZhNDgwODkgcmVsZWFzZTIyLW1haW50CisyOTQxNiBlMWRiMWY5MGUxN2Y5ZDM3MGYxMjc3ZmFlOTRkNzY2MGExNTRhYzhmIGxlZ2FjeS10cnVuaworMjk0MTcgN2I3NzNhMTI3MWMzZGYzODI0ZjcwOWUwNGM4NWVmNmI3YTk0OGIzZiBsZWdhY3ktdHJ1bmsKKzI5NDE4IDNkYjc3MmQ0NWY5ODg2YzliYzIzMDE2NDJiMGM5Mzc4ZGZlMjY0NGQgbGVnYWN5LXRydW5rCisyOTQxOSAyNmI0NDBjMzdjOTRjODkyNjFjY2Y5OTMzYzZjY2UzZjU2YTJjZTM3IHJlbGVhc2UyMi1tYWludAorMjk0MjAgMjUzZTllZGZkZmMwNjBmZjc3YjQ4OTZmNGFlMmI3NzFjZjA5ODliZSByZWxlYXNlMjItbWFpbnQKKzI5NDIxIGFhZTM3NjRjNGQ1OGQ0OTFmNGM2NWYxYWEyZTAwNGNlMTAyMWI2ZTEgcmVsZWFzZTIyLW1haW50CisyOTQyMiBiOTI0NmY4ZmI4ZmQzMDRjZWM3MzZlZWJhYTFkMjI5YTk4NzBlOGFkIHJlbGVhc2UyMi1tYWludAorMjk0MjMgODA4ZTUxM2EyZjVjMmZjNDg4OTZmODdhNzYyMTNhYTBkZTYwOWNmZCByZWxlYXNlMjItbWFpbnQKKzI5NDI1IDg1ODVmZDlhZWNlZjk1YWRlNjU4NWY4MWQ4Zjc5YTEyZDY0NDlmMjEgbGVnYWN5LXRydW5rCisyOTQyNiAzNmQ0MThiZWE1NTIxOGYwZjBmNjEwNDgzZjI1NmE0OGI2Mzk4YTU3IGxlZ2FjeS10cnVuaworMjk0MjcgNDQ1ZmViMjZhZGZiOWFhNTIwMWYyNjQ1NWViYjMwODA0ZTlkYTYxZiBsZWdhY3ktdHJ1bmsKKzI5NDI4IGY0ZjE3Njc4ZmRkODY1OGRiYTRiZmZkOWU5MjAyMDFkMTBmZjMwN2MgcmVsZWFzZTIyLW1haW50CisyOTQyOSA5NDllZDgzNjVkNThkMzUxYmM3MjA1NTZhMzFlZDBmZTJiYjU0YWEyIGxlZ2FjeS10cnVuaworMjk0MzAgMThlZGYyM2JmNDk5M2Q3MTAyOTQ3ZTM0NDc4OWUzYzEzNWEwNDNlZiBsZWdhY3ktdHJ1bmsKKzI5NDMxIGRiYTYwZDAyNGU0ODQzNjNhMmY4ZTljZDM5NzRlZWNhN2I0NGFiMTkgbGVnYWN5LXRydW5rCisyOTQzMiAwOTY2NDJkN2VjYTI1YmI3ZDJjYjIyNjMyNTg4YzUyMTgwZGM3MmUwIGxlZ2FjeS10cnVuaworMjk0MzMgZmM2YTE5ZjY5YWM3ZTJiNjBlZTc5Y2VmYTJmZmMxNjNlMmQwOWYzNyByZWxlYXNlMjItbWFpbnQKKzI5NDM0IDAxYmY5Yzg4ZDk2MDM2YjY2NjJhMTU5MjdhZGQyNmMyNGM0NTZjZTMgbGVnYWN5LXRydW5rCisyOTQzNSA3MjczNGIzOWY4YWEwYWNmNTI2YWQyM2E2NzlhZWZhNDZhYTAyOGFlIGxlZ2FjeS10cnVuaworMjk0MzYgZDkwZWY0NmQwODM4MjhiYzk1YzBiZDQ2YjkxMWVmZWJjOTJiZTczMSBsZWdhY3ktdHJ1bmsKKzI5NDM3IDRhMjRjNmE2NDI5YTY2NzM1MDdlM2E2Yjc5NTMwNmY1OThkNjc3MTkgbGVnYWN5LXRydW5rCisyOTQzOCA5MWQzZDQ0NTJjNDgyMjBiNDY3OTVjMDMzY2M0Y2JlNGYzMDU3YjE2IGxlZ2FjeS10cnVuaworMjk0MzkgZTM0OWZlMDkzYjM0YTkxODQ5ZDE4OTlhZGE1NWJhM2IyOTliN2QzNCBsZWdhY3ktdHJ1bmsKKzI5NDQwIDMyM2U0YzExNDZkMGM2MDI1ZjZiZmRlNDhjMmYxMDY0MzBlNzIyMGYgbGVnYWN5LXRydW5rCisyOTQ0MSA1NTE3YzM2YWM0OTdkYzM2NDBiMDZiY2RiOTFlZDk0Mzk3YTg5YTc0IHJlbGVhc2UyMi1tYWludAorMjk0NDIgNjg3NWJkN2NiNTcwNTczZWVjMzNjYmU2NzQzNWViMTkwY2NhYWJlYiBsZWdhY3ktdHJ1bmsKKzI5NDQzIDViODI4ZmZlMWIzNWYwMWVlNmNiZTM3MDIxNWU3YjNjN2Q5ZDliNzUgbGVnYWN5LXRydW5rCisyOTQ0NCA0MjUyYjA0ZjNlZWQ2MzRjZTIzY2NkMjA3ZjhlNTU2NDQyZjE5NDg2IGxlZ2FjeS10cnVuaworMjk0NDUgOGU3MzM4MzQ3NGVhZWI3ZWUyOTJmNmQzOWI2MzlkYzU2OTUzYjUwZiBsZWdhY3ktdHJ1bmsKKzI5NDQ2IGQ3ZGEwODBkNzc2MzA0YzhiYzM5ZWQ3NTdkZWIxN2VhZGFhMDlmZjEgbGVnYWN5LXRydW5rCisyOTQ0NyA0NzJhNDJlMjAyNDQwOWFkYzU5NjBhNjMwMTJkMjI5NWY4YjAzOTBlIGxlZ2FjeS10cnVuaworMjk0NDggY2I4Mjk4YTZlZDQ3YzQ0ZGRmMTA2NTFhNmU3MDJhZTQxOTY5MTcxOCBsZWdhY3ktdHJ1bmsKKzI5NDQ5IDY2NjJmOWQ0MjIwYjVjZGEwNjQ1ZTE2YjYzOWIzYWE5ODRmMDgxNmEgbGVnYWN5LXRydW5rCisyOTQ1MCBhNjhjNmQ2MmZlNzg4ZGY0MDA0OTFkOGY2ODhhZWYzOTcyOWM0ZmQyIGxlZ2FjeS10cnVuaworMjk0NTEgMDQwYWY5YzczNmJiMTk4YmU4NTM2MzI3ZmJmMTI3NTNkZTVlYzdjMCBsZWdhY3ktdHJ1bmsKKzI5NDUyIGI2NDc4ZDQ2MzU1NTRiZTE1MjlhZTk1ZGE4OTEyNGVjZDViZDMxNmUgbGVnYWN5LXRydW5rCisyOTQ1MyAyZDgzN2UyMDgzZmFmMzUwOTQyZDZjNDZmNmQ4YjhlNjZhN2U4ZTQ1IGxlZ2FjeS10cnVuaworMjk0NTQgMWQwMmI0MDVlMzFmYjIxOWMwNzUyZDQwMjI5OGY1OWQyMDA1OTU2ZSBsZWdhY3ktdHJ1bmsKKzI5NDU1IDRmMWI3Mzk2YTNjNTQyNjg5NDQ3N2U3MzFlYmI4MDkzMzE2M2NiYTMgbGVnYWN5LXRydW5rCisyOTQ1NiBkODEyYjhhYWVmYjMxYjQ2NjJmYjZiNTZjZDk2OTljN2M3NDRiZGE3IGxlZ2FjeS10cnVuaworMjk0NTcgMDE0N2ViZWY5NDUzYzM2MWY0Mzg0MmE5ZTMzN2E1YmM0MWJiZTFjZiBsZWdhY3ktdHJ1bmsKKzI5NDU4IDA2ZTAwNTY2NmM0MjI5MWY4ZmRkMGI1NjUyZDVkNDYyNGEyYTgyNDAgbGVnYWN5LXRydW5rCisyOTQ1OSBlMWJmNDYwNGMwYTU4NGIxYmIxODA0ODIzOTA2NTU3N2U4MjZlMmE5IGxlZ2FjeS10cnVuaworMjk0NjAgZDMwOGRmODI0ZTJkMTViYzAxMmY5YzE3ZGIyNTczY2YxOTAxZGIyOCByZWxlYXNlMjItbWFpbnQKKzI5NDYxIDE1MjIxOTgwNzE0NDcyZDEyMzRhMDZiYTRiMTk4YzczYjE1YWMyNzQgbGVnYWN5LXRydW5rCisyOTQ2MiAxNDI1YmVhMmVhNjZhMTBjOGRiMzhiYmEwM2E1ZDg3NDAxZDc4NzQ2IHJlbGVhc2UyMi1tYWludAorMjk0NjMgOWNlZDNlNTE4N2VlMWQ2NjU4ZWQ0MGUzMWZkYjEwNzQ0ZTVmZDY3NCBsZWdhY3ktdHJ1bmsKKzI5NDY0IDZlMTFhZTA0YWYxMDk0OWE2MGU1ZGJjYWY3MDhiN2VhMzAyYjcwMjUgbGVnYWN5LXRydW5rCisyOTQ2NSA5MGY0ZWVlZmM1MTZmOWYzZDNlMDdjMTA1YzMxYWRmMzdmMTAwYjgyIGxlZ2FjeS10cnVuaworMjk0NjYgNjExYWY3OWMwZTg5MmI0ZWMzNDNiYTBkOWYyOWM5NTJiZDkxZmRlZSBsZWdhY3ktdHJ1bmsKKzI5NDY3IDI3M2NhZDdmN2RmNzIxOTY3ZGFiYjRjNDRlMWVkNzNhNzQyZTQxYzQgbGVnYWN5LXRydW5rCisyOTQ2OCAxOTc2MmE0OTM2ZmM4NGI0YzA5Y2UwNWY0NmUxOTFhMjYyMGUyZGZhIGxlZ2FjeS10cnVuaworMjk0NjkgMGZkZmNjZGZlYzA2ZjJlZWMyNDViM2FjYmM5MTczZTIzN2M2MmU5NiBsZWdhY3ktdHJ1bmsKKzI5NDcwIDkwYTA5Y2QxNTMwNTkzMWRmNWQwMTc2NDMyOGI2MDk3ZTgzYWI5YTkgbGVnYWN5LXRydW5rCisyOTQ3MSBiYjgxMzM0NmIyMjdlZTFjOTY0NjFmMmMzZTVhMzk4OTRmZTVlN2ExIGxlZ2FjeS10cnVuaworMjk0NzIgMWFhYTEyYzA4YjM1OTQ5Zjk0ZDUyOTY0YTZhZDY2OTdlMDg2ZWEyYSBsZWdhY3ktdHJ1bmsKKzI5NDczIGE3NTM2Y2ViMDZmNjNjYmZlZmMyMDkyYWVhY2NiNmQyNzhhNjM0ODAgbGVnYWN5LXRydW5rCisyOTQ3NCA1NDhlNmZmYmZmNzU3YWI4OTZhY2UwODkyNTA2OTc2MjhmMmFmY2I3IGxlZ2FjeS10cnVuaworMjk0NzUgM2YzYjdhNjA4NmI3M2IzYmViMGM4NzdiODM2ZTdiYjU5ZGE5YzJkOCBsZWdhY3ktdHJ1bmsKKzI5NDc2IDhhODhlOTc3YTcxYmJlNjNlYzBiN2M2NzJmYTcyZDNmMGY0MTJmMDUgcmVsZWFzZTIyLW1haW50CisyOTQ3NyA4M2QyMWVhOTQ1N2RiMmVjZmM2ZDE5MTQ2M2Q5ZjJiZGY5YWUyOWJlIGxlZ2FjeS10cnVuaworMjk0NzggYmRlMzY2MDU0MmNkM2UxOTBhYzk4ZjZiZDVlYWJkNzRiM2I5OGZlMSByZWxlYXNlMjItbWFpbnQKKzI5NDc5IDQxZWNhZWM1YjRmODFlZjgzZGI3ZWNjMzUyMDIwYTNkY2ViZWI2YmUgbGVnYWN5LXRydW5rCisyOTQ4MCA3MjA1N2VmOTAyYWFlZTA3MGQxMWZjZDMzZjM0NDFiZGY3NTY2MTJjIHJlbGVhc2UyMi1tYWludAorMjk0ODEgMjhjZmY2MGE2MDk3MDJkZTc5OTE3MTk2NDBlOTYwNTkxZDY3NmQwMSBsZWdhY3ktdHJ1bmsKKzI5NDgyIDQ5NDZkNGYzN2Q4NGUyYWE0ODg4ZGMwZTFhYWM1NWVmODg5OGE5ZjEgcmVsZWFzZTIyLW1haW50CisyOTQ4MyAzZDYyN2UzZDk1NjEzNjUyMWFhN2I3NDQzM2QzMzcxMzUyMzlhNTE0IGxlZ2FjeS10cnVuaworMjk0ODQgMzFiNTg0OWNhYzQyZmI1ODEzNDE1MmJmMmQxMDQxOTRkOTUyYzIyNCByZWxlYXNlMjItbWFpbnQKKzI5NDg1IGIyOGU5YmYwZjA0NmFlOWEzY2M5ZDEwOGEzNDMwOTZmNDE1Zjc2YjcgbGVnYWN5LXRydW5rCisyOTQ4NiAwMjllNzVmZmU3NTBkMzRjM2FkZTA1MjIxMmUyMzBjZGZkNjk2Y2ZjIGxlZ2FjeS10cnVuaworMjk0ODcgMzZlYTMxYmM5MDc2NTBlMTA0Zjg4NjdlZjM1MThkOTllMjkxMmY1MSBsZWdhY3ktdHJ1bmsKKzI5NDg4IDAzYjAyNzBlMTE2YjM3MmE1YzgxM2Q4ZjA0MWQ5ZTJmZmIzMDFkMWIgbGVnYWN5LXRydW5rCisyOTQ4OSBjNmNhMzliMTU4Y2RmOWIzNjAzZWY4MzE5NTg4YzZlMTAxZTc1MzI3IHJlbGVhc2UyMi1tYWludAorMjk0OTAgMzI2M2FkNGZjZjgxMWExNTdlYTk5MGVjZThiOTM4YzhkYTgyZTlmOCBsZWdhY3ktdHJ1bmsKKzI5NDkxIGQ0MjQ1NThkMjRmOTAzMmE5YWEwZDc1NTRiMzE0YTYyYTNkZmRjNTQgbGVnYWN5LXRydW5rCisyOTQ5MiA1YmU1Yzg0ZGVhMjNmZjcwMjQ4ZDY0MjlhMmEzODJlYjYyNTZjOGY1IGxlZ2FjeS10cnVuaworMjk0OTMgYmQ2NzdjOGU0MDY3MDI0OTQ2YWNkNmYwYjk2MDM5NDI2ZDZiNTdmYiBsZWdhY3ktdHJ1bmsKKzI5NDk0IDM2ZGU1YTczMTI1N2ViYWIxNGVjMTFmZGZjMjhlZjQ2NjRhZTkxYjEgbGVnYWN5LXRydW5rCisyOTQ5NSA5YmZkNDdhOWM4YjM1MDE5NGJmZDU5ODVjMjMyOGVjNDMyMTlhYzM3IGxlZ2FjeS10cnVuaworMjk0OTYgNmZhNWM5NTQwOGViZDg0NDE4ZjgwM2YxYTNmMGExNzA4N2I1YTU2MSBsZWdhY3ktdHJ1bmsKKzI5NDk3IDhlMzI0Njg0Mjc3MzRjOWFhMTZiNTQyMTA2NGJlYmIxNzlhNjgzY2YgbGVnYWN5LXRydW5rCisyOTQ5OCA3NTgzMDFlZTBiYjc2NWM4YWRlNzliZjY0MmExYmQ2ZTE2M2I3MWZiIGxlZ2FjeS10cnVuaworMjk0OTkgZjU0ZTg5MjcyYWRlZDI5NTNiMTlhMjY3MTYzMDljNGZiMmExODhhMSBsZWdhY3ktdHJ1bmsKKzI5NTAwIDliNDczODZiYTViODA1NGM3N2ZlNzc5OWU3ZWZlY2ZiZDg1NGY0MTYgbGVnYWN5LXRydW5rCisyOTUwMSAxMjQ0ZjRjMzgzNGY0OTAyMmZiZTgyYmI0YTE5NWM2ZDQ1YzZjYTI1IHJlbGVhc2UyMi1tYWludAorMjk1MDIgMThlMDk3MjA3MzhmNmZmNTMxZDc3NDY1NTRiOWYwNGFhZjAxNGNiOCBsZWdhY3ktdHJ1bmsKKzI5NTAzIDBiZGEyMGFmZTYyMzNmYjM3ZDI5OTE0M2Y0ZTQ2ZDY1ZjBhNDJhYWUgbGVnYWN5LXRydW5rCisyOTUwNCBkNjhmYzQ5YTcwOTYwMWJjMDA5YjMyYjk2YTVjZDRiODJiODg5MWMzIGxlZ2FjeS10cnVuaworMjk1MDUgNjRhOTZiOTdlMWU5N2NlYjdjZDVjNjNlYjczYmQwZmVmZDZmNjYxYiBsZWdhY3ktdHJ1bmsKKzI5NTA2IDJkZjk4ZmYyY2RkYTFhNjUyNzY0MTFjZTEzYjRkYmFkNGU2OTQxNDEgcmVsZWFzZTIyLW1haW50CisyOTUwNyBhMmYzNjkzNDYzOTMwN2ViZmUwNjhjOTQ3NjA3OWE2OTU1MDNjMDllIGxlZ2FjeS10cnVuaworMjk1MDggZjU0MzlmODEzM2Y4NTdiMzg5ZjY5YTRhZWE1YTExZGQzMTU4ZThiOCBsZWdhY3ktdHJ1bmsKKzI5NTA5IDIyNWVhMWY1MmRlOTVhOTE5NjA1NWViOThmZDFhNmE1ZTBmMDYzYzkgbGVnYWN5LXRydW5rCisyOTUxMCAxZGU3YWM3MjliZmE5MjNhMmUwMGQ2MjU4ODI2M2EzOGExM2JhODU2IHJlbGVhc2UyMi1tYWludAorMjk1MTEgMTgzZmMyMWZiODY2MjMyM2RjYjMyOTgwM2YzM2VlY2E2MmNlMDBlYSBsZWdhY3ktdHJ1bmsKKzI5NTEyIDZlZDJlMjNhYWU0NTY1MjM4MDZlMmZkNzEyZjQ2Nzk3ZWRmZDQ4NGIgbGVnYWN5LXRydW5rCisyOTUxMyA3NzFiNmY1MjFiOTU2MWQ4ZTQyZTkyNGQxYTE1NDMzZTRjNjkzOTIzIGxlZ2FjeS10cnVuaworMjk1MTQgNTIxZTg5YzRmZjQ0NzgyMDkxNzNhNDU4OTg4ZjMwMDYxYjEyYTYzYiBsZWdhY3ktdHJ1bmsKKzI5NTE1IDNhNzYwNmEyMjM3YmI2OTU3MjFjZDA2MzkxNWIzNWE1MDJkZDY5YTYgbGVnYWN5LXRydW5rCisyOTUxNiA1MjVjZGRiNzY4MmFjZWU3ZWQ4YjkzODY0YTU3OGQyMWU4NzIwMWFiIHJlbGVhc2UyMi1tYWludAorMjk1MTcgZTlhYTM5NGM3MTkxNzI3ZmJhYzVmNWU4NWQ4M2VkMjljOGY2Yzk3NiBsZWdhY3ktdHJ1bmsKKzI5NTE4IGNlMzY5Y2Q1NjI2YmU3MTQxYjNiODJhNmY4ZDJkOTZiMDg4YmNjYWMgbGVnYWN5LXRydW5rCisyOTUxOSA0YjgwNDRkMWYxYWMzMjgxOWE2YzBiNjAxMTljNzA2ZjU3ZDkxYjBmIGxlZ2FjeS10cnVuaworMjk1MjAgOWRhMDI2OTM3ZmE1MjgwOTUwYzU4NzliMGQ2OGY1ODA0M2M3OWE1NCBsZWdhY3ktdHJ1bmsKKzI5NTIxIDFjOTlhNWEwYjg3YmRlNjAyZGRhMGZiZWRjZmU0MzVhMTRlNDg1NGIgbGVnYWN5LXRydW5rCisyOTUyMiA2ZWUyZjliNGJmNWM0YjcyZmMxMDc3NDU1NjNiZTk4ZjFjOTJmMzYyIGxlZ2FjeS10cnVuaworMjk1MjMgMWRiYWJjNWJlZmY3ZjU1YTliYmM0MDJiNWJhODNlNzgzYTYwMzhiZiBsZWdhY3ktdHJ1bmsKKzI5NTI0IGE1NTk5NzQwYTZlODBmOTA4MjFhNmU4MTdkOTU5YmRhOGNlNmZjZTMgbGVnYWN5LXRydW5rCisyOTUyNSBiNGE2MjgzYjkxNWJjNjFkNWI2Njk5ZWMzZjQ5NWEyZThiZTkwN2U5IGxlZ2FjeS10cnVuaworMjk1MjYgNTgxOWM0NDM5YmEyNDY0ZTlhMzQ0ZTQ3ZDQ3OWYxZjYyNDEwMjM0ZiBsZWdhY3ktdHJ1bmsKKzI5NTI3IGM1NDcxNmFlZDI2YTA2ZGVhYTZhOWQ1MWUyNDg4YWUzOWYyMzFiNmQgbGVnYWN5LXRydW5rCisyOTUyOCAxYjRjNWU2NmE0YjRhZDE3Y2ExMDViYzQ4ZmM5ZWU2ZDA3MDQ5ZThiIGxlZ2FjeS10cnVuaworMjk1MjkgODEyMTM1OGUzMjE3MDNhNTc0ZTg5ZjA3ZDQ2MzU3MDFmYjYzOGFiMiBsZWdhY3ktdHJ1bmsKKzI5NTMwIDY5Njg2NGFhMDVkMzM0MzEwMjUwNzAyNTYwZmM5YWQ2MTYwNzAxNjEgbGVnYWN5LXRydW5rCisyOTUzMSA2YTQyNTM2ZmI5ZWViYjk5MDBlNGViYmFmMzlhOTE3NjU5MWFkODMxIGxlZ2FjeS10cnVuaworMjk1MzIgYmEyMTk0YWQzYjQyM2MzZWI4M2M4ZDQzODA4MGI0MjYwOTk5OTBkNSBsZWdhY3ktdHJ1bmsKKzI5NTMzIDFhMzBlZDE5ZjY0YWZmOTBjMGUxZTYxMDVhMmYzMTAzNTBlODlkMzIgbGVnYWN5LXRydW5rCisyOTUzNCAxM2IyZWM1MzZlMDcwNWU5ODEzYzNkY2E1NmM3NDM2YmI0ZGE0Mzg0IGxlZ2FjeS10cnVuaworMjk1MzUgOWRkOTM3OWFjNmQ2NzkzYjc3NjhiMWI5YTNjNWNkNGI4Mzg5YTBjYyByZWxlYXNlMjItbWFpbnQKKzI5NTM2IDNjMjNlNGMzZGEwMjA4NmY1YTZmY2I3MmUzNDc2YWYyODg3ZDY5YmQgbGVnYWN5LXRydW5rCisyOTUzNyA5NTFkYWNjMjE4NDdkNzA1MGYyMTg3OTQ4YWY4Y2VkNTFmMDAyNzE2IGxlZ2FjeS10cnVuaworMjk1MzggOWI1YjdkYTM2MmE1YzZmYTVkZWYzMjAxYmI1NTQ3MGM3N2Q2MmM0OCBsZWdhY3ktdHJ1bmsKKzI5NTM5IDBkYmQ2YjczYWJkMjMxZjEzODlmOTZlNjNkZGQ2Y2YxNDc5ZDU0ZTIgbGVnYWN5LXRydW5rCisyOTU0MCBmZTZlOTg5NGMyZDQyYTRiYWVjYmQwNmM4ZDk1YWI5MjliN2UwZjViIGxlZ2FjeS10cnVuaworMjk1NDEgOTUxNDA3OTMyMDAxOWQ2OWQwMTc3ZGQ4MTJlMzFhOGU4NzlhNDA3OCBsZWdhY3ktdHJ1bmsKKzI5NTQyIGQyN2U1Y2FkMzhkNzgyNGU0ZTg4MDlmMWVjMWRiZjExYTMzMjliY2UgbGVnYWN5LXRydW5rCisyOTU0MyBlZjU4OTNiYjc5ZWYzOWM5OWM3NTY0ODE3NDExZWRhNTkxOTYxOTUyIGxlZ2FjeS10cnVuaworMjk1NDQgODdiN2ZhZTEwYTE5MzA3NzdiOTNhMTcyZjFhNzBiMmRhMGU3MmVlZiBsZWdhY3ktdHJ1bmsKKzI5NTQ1IDg2OGZmMGRmYWJkMmNiYjA2NDk0MGEyMDliYzMwODBhZWFmNDVlOGEgbGVnYWN5LXRydW5rCisyOTU0NiBmMmVkNzIyZmYwMDM1MGMyNjA4MWE2YmNjOGU4NGQ5MWEzMWVkOWI3IGxlZ2FjeS10cnVuaworMjk1NDcgODhiYmMzMGIwODQ3OGQxMzI2NzMyYWY5NWM0NzFlN2JjZWVhMmEwMiByZWxlYXNlMjItbWFpbnQKKzI5NTQ4IGIwNjNjNDNmNGRmMDMyY2U4ODFkMTFjNTc4MTJkMDg2ZTZhMTYwZDggbGVnYWN5LXRydW5rCisyOTU0OSBkYWIyYzEyYjY4MmU3ODc1NTg3MWMzN2JhZTk0ZTk5YWIyY2Y1NzU3IHJlbGVhc2UyMi1tYWludAorMjk1NTAgN2ZhOTNiNWRkZmJkNDkyNTdlNDMyMjRhODA5Mzg4MTU1OTY4MGYwNSBsZWdhY3ktdHJ1bmsKKzI5NTUxIGQyYmU3OTZjNGI4MWQ3YjlhNzM3MmJhNjFhNGExY2JlYjA1ZDY5MGYgbGVnYWN5LXRydW5rCisyOTU1MiAxYWZjYTM3NWYyYTllMzZmMjg5OTE1YjA2MjM1MjI4YWQ1NDA5NmFmIGxlZ2FjeS10cnVuaworMjk1NTMgZjNkNDQ5MjZhMWJlZmRlZmQ3ZTBmYTg4NGI0ZGYxN2FjZDIwNTFhNCBsZWdhY3ktdHJ1bmsKKzI5NTU0IDk4MzIyYzA3NWY0ZDk1Mzg4NjI1YzdiMGJjZTFkNTE3N2Q2NDM3ZTAgbGVnYWN5LXRydW5rCisyOTU1NSA1M2EzODIzNDQ4ZDkzYWYyM2Y3ZTljNDI5NGFhMmQ4NWUxZGY4NjM5IGxlZ2FjeS10cnVuaworMjk1NTYgY2FiMTY3NjEzZTQzYjczN2JmOTU0YzgyZDQzZGNmNWEyOTk4YzU3ZiBsZWdhY3ktdHJ1bmsKKzI5NTU3IDEzYWY4MGYwMjA4MDA4ZjEyYTAwMGZhOWE0NjkzZjU3MGJjYWNmY2QgbGVnYWN5LXRydW5rCisyOTU1OCA5OTlhY2NmYTkxYzU2ZGE3YWE4ZWIyMzI2Mzg0YzY4MzMyN2YyZWNlIGxlZ2FjeS10cnVuaworMjk1NTkgZjNhNjQwMzViYThiZjE5NjMyOTUzNGUyNzgwYmRmYzk5YjE3ZDNhYSBsZWdhY3ktdHJ1bmsKKzI5NTYwIDJjMWJiZmMxMjJjMWE2NmZlZDI2NjQwZDJlY2UxMjA3ZDIxM2E4YjIgbGVnYWN5LXRydW5rCisyOTU2MSA0YTI4OGI0OTRjYjJjOWE4MGFkM2UzZDQxOTI3MzRhMGNmMWU1OWRhIGxlZ2FjeS10cnVuaworMjk1NjIgZDY5ZThhOWZlZDExZmNmMzU5ODI0NTA5ZGMxYzJmZjlmM2UxYTg2ZSBsZWdhY3ktdHJ1bmsKKzI5NTYzIDM0ZTcwYjg5YmJiNzIzMjQzYTY5MjBkMGUyZWJmMzkxYjc2YWM0MTAgbGVnYWN5LXRydW5rCisyOTU2NCBiNTY0ZWM0YjdlNWIzMzE5ZTQyYzM3MjY5MGY2NzMwNDU5Yzk4ZDk5IHJlbGVhc2UyMi1tYWludAorMjk1NjUgZjM1MzczMTdiMWIyNWE2ZjFlMDQ0YmY1NTA4MjZjMzE0Nzg5MzFiZCByZWxlYXNlMjItbWFpbnQKKzI5NTY2IDM1MTU4ZmQ2MGIzYmEyMmI3MmQ4YWYzOWM5MTc3OTRjZGY4NzViOGMgcmVsZWFzZTIyLW1haW50CisyOTU2NyA2MmY4OGMwMmM5ODcyOGYzMDZlYjZiZDFlMjdhYzdiODA1OWJlMzVlIGxlZ2FjeS10cnVuaworMjk1NjggZDk0NzRjMDQ0NWJhYmY1NTZhZTQxNzI4YjI1NjVkMDQyZDkyOTcxYyBsZWdhY3ktdHJ1bmsKKzI5NTY5IDUyNjUyZmI4NjQ5ZDczMWFkOWQ3MDlhYTNhZjg2NzY2Mjg2N2ViMDAgbGVnYWN5LXRydW5rCisyOTU3MCBmZjFjNjA0NmYxMGI5NDdmNjFhNmY4YTg3MDY0NjcwMGQzZTNlNzAzIGxlZ2FjeS10cnVuaworMjk1NzEgZjYyZjc3M2JjOWZkZDJhMmQ5YTBmNmEzM2FjOGIwNGEyYjM0MWEyNCBsZWdhY3ktdHJ1bmsKKzI5NTcyIGY0Njc0MjdlMDNmYTlkNWNiYzFkMzIzMmJjYTc4NzVmNTM0NWExNWMgbGVnYWN5LXRydW5rCisyOTU3MyBjYmJmN2YyNDI1ZDllMTA4YTI2NDkzMWE5YWYwNGUyMzVkZmYxZDVhIGxlZ2FjeS10cnVuaworMjk1NzQgZTUyNjM2NWRkY2NkZmQwZWRkMDA5OTliMGM5NGU1NmNkMDRlMDdlYyBsZWdhY3ktdHJ1bmsKKzI5NTc1IDkzM2M2ZDYwOGQwMWIzY2Q0MzA5N2EzMjI2MWZjOTE5YjNjZWQxYjggbGVnYWN5LXRydW5rCisyOTU3NiAxMzVmMDhiNzNiZDVkOGIxZTcxMGExY2Y5NWIwYmYzOTU2NmYxY2ExIGxlZ2FjeS10cnVuaworMjk1NzcgNzU2MzE5YTEzN2I4MzI2ZGYwYTBjODJlNWRmNTUxMjU1NmI2YWY2NyBsZWdhY3ktdHJ1bmsKKzI5NTc4IDA4MjBhZDQ5ODI5ZDgwYjk4NzU4MzRiYzMyN2JiYWQzOGJhMjZmMWUgbGVnYWN5LXRydW5rCisyOTU3OSAxZjM2NWI5OGYxMWNjNTQ1YWIxYzZlOTcxYmVhZjQ3NjRkNWVjNzE5IGxlZ2FjeS10cnVuaworMjk1ODAgMDgxMTkwNDg0YWY2MTYxNmFhMWM3ZWM5NTQwNmFhYjIwNzVjZmQ4YiBsZWdhY3ktdHJ1bmsKKzI5NTgxIDAwODQ4MzQyZDQ5ODRhZTQ3NWMzZDA5OGM4MzdiYTllYjQ2ZWZhYTAgcmVsZWFzZTIyLW1haW50CisyOTU4MiA1M2U5MDQxZWZiZTNmZDZhNDkxOThmNjZjYjBmNDdmNGQ4MzIwM2Y1IGxlZ2FjeS10cnVuaworMjk1ODMgNTQwODgxZWUyZDRhY2M0YzU4ODY3MzkwYTk2N2E3N2I1YTUyOWMyOCByZWxlYXNlMjItbWFpbnQKKzI5NTg0IGVmM2Y2OTI5ZmMwZTE5NTk1NGJkNWE3ZDU2NDFjY2Y4MmI4YjQ3ZGQgbGVnYWN5LXRydW5rCisyOTU4NSAyODMyNjI4ZWU4Y2M4NDA4YTM2NmFhZDliODRkYTFkYjcwMmU0MGY0IHJlbGVhc2UyMi1tYWludAorMjk1ODYgZTYxYjk0NjQ3NGRmYzY5MjgyY2Q5MTdlYjZhMGZjM2MyODk4NjI5MiBsZWdhY3ktdHJ1bmsKKzI5NTg3IDk2NGQ2Yjc5YzIyZTJlOWMzZGZhYTUzODMxMWI3MGQ3ZmNiNGJhYjYgbGVnYWN5LXRydW5rCisyOTU4OCAyNjczNzMyYWQ1ZjE5MWI2NjlhZDk0NjM0ODc2ZGEzZGUwNjU1ODg0IGxlZ2FjeS10cnVuaworMjk1ODkgYWRhYTQ1MGU3ZDcwZGMwMjFhMjE3NGFlOWQ0MjY4YWNlZTk0NzRlNyBsZWdhY3ktdHJ1bmsKKzI5NTkwIDlmZmVhNTBlODMzMDE3NzlhOGQwYjA0ZWIyM2E5NDBiNjNjMjVhZjQgbGVnYWN5LXRydW5rCisyOTU5MSAyZjJhMmZkODQ0YmQ3NGJhOGY2NDBiNDQ5YjY3MWVhZmRjYzRiZjI1IGxlZ2FjeS10cnVuaworMjk1OTIgOTA0ODIwNzk5MmYwMGJiNTNjYTJkZTE1NTdkYmFkNDBiNzFiNTg4OSBsZWdhY3ktdHJ1bmsKKzI5NTkzIDg5NjVhMmI4MDRiNTA0OTViY2Y3MTM3OWQyY2ZhMWNkMTFjYTc3ZWEgbGVnYWN5LXRydW5rCisyOTU5NCBlOWFlYmQ0Y2Y1NmNmNGY4MjY4YjJhZjBmM2RlNTJkMWVmNGM2MDJhIGxlZ2FjeS10cnVuaworMjk1OTUgOWM0YmJiM2JiZDBkZTcyMzZlZTU1MjQzODdhZTliOTMxYWM1M2JmNSBsZWdhY3ktdHJ1bmsKKzI5NTk2IDAwNDIxNmQ3YTFkYWJjMDA5ZjJmMDlmMThkNGU5ZWZiYzg3NDBkOGQgbGVnYWN5LXRydW5rCisyOTU5NyAxZWJiNWRjN2Y2OTZlZjc1Mjc3NjYwNzc4OTU1ZTQ5ZGRkZGNjYmM3IGxlZ2FjeS10cnVuaworMjk1OTggNjQxNjc3NjA5OThjNDMxNDM5YmRlYjg2MWJlMTI5MmE4NzUxZDkwZiBsZWdhY3ktdHJ1bmsKKzI5NTk5IDNhZDRmYWU5ZWQzYWQwYzZjODQ0NTUwNmNlN2UxZGM0ODZmZGExMjUgbGVnYWN5LXRydW5rCisyOTYwMCBjZmIzMTdlNGE3NzAxZDJiZmQ0ZDJlNDc0Yjc1MTlmZWZjZWQ2NzA4IGxlZ2FjeS10cnVuaworMjk2MDEgYTZkMTZlODRmZWMwNTRlOTQyMWQxZDVkMDZjZDdlYjYxNzg1ZjIyNyBsZWdhY3ktdHJ1bmsKKzI5NjAyIDA5OWQzNmNiYmI2MTFhYjVmYjMyNGJiMmY0MjU2M2EwNDEzMDRjOGEgbGVnYWN5LXRydW5rCisyOTYwMyA5OGYzZmQxZWQ0MmYwNTc2NjU1MjJkOTQxZjBlNjg3NzE0YTgzMzZmIGxlZ2FjeS10cnVuaworMjk2MDQgZTIyMjZkNDdlYmYwMTI5N2M5OGExYTkwN2I0YWM1OTEwYmQ0NGRiNiBsZWdhY3ktdHJ1bmsKKzI5NjA1IDIzZWY3YzE2M2ExMjUwMjlmNTEwOWM5ODU1NzE1YjM5OGM3ZTU1ZWEgbGVnYWN5LXRydW5rCisyOTYwNiA0MjAzMDQ3ZTIwMjIzN2U0YzkxYThkZTQyNWIwNTAwY2E3NWY5ZmRhIGxlZ2FjeS10cnVuaworMjk2MDcgYTU2YzkwY2ZjMDBjMGRiYTc1MDcxMDkxNzhlODM5YmE3MWEyZTA0YiBsZWdhY3ktdHJ1bmsKKzI5NjA4IDQyY2YxYjVlNjM5MjZmNmRkYTM2OWVkOTg2YWUxNGQxNDMxODMwYjkgbGVnYWN5LXRydW5rCisyOTYwOSBlOThhMjEzMTAxYjM4YTliOGQ1M2I4YzFjMjEyYTUyODAxNDcxM2NhIGxlZ2FjeS10cnVuaworMjk2MTAgNGI5MDVlMTk4M2I2MTBiMjVhMzUzNWI5NTkyMDcyYTY5ODdlYjdhNCBsZWdhY3ktdHJ1bmsKKzI5NjExIDA3NjUxMmEwYzZjMjJjOTJiNzI4MzIxNGNkODliNDAwYjJmYTZiNjkgbGVnYWN5LXRydW5rCisyOTYxMiBmNDI3OGFmOGVlZmEwMmJhZmE3OTY4NmZkOWVjNGJiMjM4Y2I0OWI0IGxlZ2FjeS10cnVuaworMjk2MTMgNmU0MWNmZDI1YmRmMGZlMjg2YTFkNmQ3MzNkYzU3MGY5OWRhOWFkZiByZWxlYXNlMjItbWFpbnQKKzI5NjE0IGEyYWU2MzVlNDNiNjE4NzExMjU4NTcyMWQ5NzY5Y2QxMzU2ZmZlMGIgbGVnYWN5LXRydW5rCisyOTYxNSA0YWI2YjdjM2YzMTE3ZDI3NjMwMjYyN2U2YjllYjBkMDA0N2UzMmRkIGxlZ2FjeS10cnVuaworMjk2MTYgMTQ0ZDlkNDhiOTZjZmVhODM3YTAwYzllM2U0ZTFjMmMzNjgxZTM5MyBsZWdhY3ktdHJ1bmsKKzI5NjE3IDAwYjRjZmY5MzYxOGU4MDAyZDliMzdhYmU5YmRmOTE5YmI1YTg2Y2MgbGVnYWN5LXRydW5rCisyOTYxOCA2Y2U5MjI4YTNkYTIwMGEyY2QxMTM1YmUxOTM3YzExNzllMDdiZjRlIGxlZ2FjeS10cnVuaworMjk2MTkgYzJlYzc4OWRlZTU2NzZiZWQwMmM2YTZmZTcyNTk5MGJkYWE0OTlmZSBsZWdhY3ktdHJ1bmsKKzI5NjIwIGJkZGU5NGUwMjkxODBiNTRlMzUzMDAxYzkwN2Y0NjcwNmY5YTUxYTAgbGVnYWN5LXRydW5rCisyOTYyMSBhNDhhY2I1YjQwZWZjNDU1Njg1ZDU3YjE0ZmI5ZTVjNGFiOTg3ZjdiIGxlZ2FjeS10cnVuaworMjk2MjIgOTEzOTI3ZDMyNjFlZGIyMTNkZDYyNjc1ODVjMzU1ODlkOWMxZDNjYyBsZWdhY3ktdHJ1bmsKKzI5NjIzIDliYjRhZGZiZmNjODMxMzk3NDg1MjhkYWUxMzZkNzkwMTM3ZTUxNjkgbGVnYWN5LXRydW5rCisyOTYyNCA2NWQ2ZjBiZmE0NjE1MDQwZDRhYjhiMTFjYWMxMmMzNDBjOTlmN2IxIGxlZ2FjeS10cnVuaworMjk2MjUgMGI2MTFlNTBjNWZjM2M0ZGNkZTdlMDc0MGJkZWFjYjhlNmRmNzlhZCBsZWdhY3ktdHJ1bmsKKzI5NjI2IDU4MDgzZDhlYTlhNWFkM2U2MDFiM2EwMGMzNmNiODM1ZjM0ZWYzNDcgbGVnYWN5LXRydW5rCisyOTYyNyAzZTFlOTYxNmY4Yzg2NWEwMjQyOGM1YmMyMDNmZjYwMTIzM2ViMTRjIGxlZ2FjeS10cnVuaworMjk2MjggOTc0OTczMmEwZjZiOWZmZTgwZjlmZDIzMDNmMjczNWNjNmZhOWQ5NCBsZWdhY3ktdHJ1bmsKKzI5NjI5IGVjMzQxNGM1ODg3MjYyOTg0NjE1OTM1NDkzOGQxMWQ0ODg1Y2IzYzQgbGVnYWN5LXRydW5rCisyOTYzMCA2MDc4YWJjNjkwMzZmYzc2ZmJlMGU5YzQ4MzVjNGQ5YjU2Njk0NjdjIGxlZ2FjeS10cnVuaworMjk2MzEgYmI3MTg3ODJlNzM2OWM1YzI1YjdmZmQ1ZTI0MjgwNmM3OTM3ZmM5MyBsZWdhY3ktdHJ1bmsKKzI5NjMyIDhjZWI0NTVmNTU0MTEyY2M3ZjVlMDI1ODk5OGNkYTA4MjI1MTE4YTUgbGVnYWN5LXRydW5rCisyOTYzMyBmNDkyOTI2MjFiMTczYWFmN2Q5OGFhYzEwYWIwMDdjMGJmOGJiZDQ3IGxlZ2FjeS10cnVuaworMjk2MzQgMjRhNTUyMmQwNzg0YjM1OWQyMDlkNDg5YmU3MWE2YjAzMjA5OTk0ZiBsZWdhY3ktdHJ1bmsKKzI5NjM1IGYwZWUzN2U4OTMyZmFjOGQwNTNlNzA2MzE5YWQ1ZjE5NzE2NmU5OGUgcmVsZWFzZTIyLW1haW50CisyOTYzNiAyN2Y2NDMxNGYwZGU3ZWZhYjZiNmU5Yjc1ZGJmOTA4OGJmODE1ZTRlIGxlZ2FjeS10cnVuaworMjk2MzcgZTYyNzc0YjQ0N2MxMDdhODg4YzQ0ZGYzNjMwMzAyZDU0YTc4ZWU1NiByZWxlYXNlMjItbWFpbnQKKzI5NjM4IGRkMTBkOTdkMzI5YTYwZTcwZTEyYTQyNjdmOTE2YmU1ZjY4MDRiNTYgbGVnYWN5LXRydW5rCisyOTYzOSAzYzA4M2Y4ODE2NTVkMzRmNmNjMzAwODVjNjc4MTc0MWYzMTA4MzRlIGxlZ2FjeS10cnVuaworMjk2NDAgYWY1YjQxNzZmNGVmNjg2ZGExZWVjZDg0ZmM3YzcyMDBhYjU5NmUzMiByZWxlYXNlMjItbWFpbnQKKzI5NjQxIDYzYTA4NjM5ZGFlMmEzZWMwZTIzZjcwMzcxNDM4ZTU0OWY5OTFkYTEgbGVnYWN5LXRydW5rCisyOTY0MiAyOWY3ZDFkNWU2ZDYyNDlmZmVhNjI0Zjg2MTQwOWM4NmFjZDQzOGUwIGxlZ2FjeS10cnVuaworMjk2NDMgZTNkMjY5MWZiNmI4YzJmYTBjYzdkYzQ1NTU1MjhiYmE5MTM4MjI1NiByZWxlYXNlMjItbWFpbnQKKzI5NjQ0IDIzZGY0NjU2ZThhMmFhNDc3YzA3YWRmNGIzYzU5Nzc3ZGU1MmQ4YmEgbGVnYWN5LXRydW5rCisyOTY0NSAxYWI2NTdlMDA3NjI3NTg0YzlmOGE3ZGQ1OGJkOGJiMTljN2JiNGNiIHJlbGVhc2UyMi1tYWludAorMjk2NDYgOTVjOWM1NjZiZGQ2ZDhjZWNjZWFhNzk1MGNiYmMzNjMxYmE5MzZkNyBsZWdhY3ktdHJ1bmsKKzI5NjQ3IDRiNmQ4ZjUxNjY5ODE3ZjEzNzA4ZTZjYTMzYTJhYzVmZmQwODQ5OTkgbGVnYWN5LXRydW5rCisyOTY0OCAyNTFlNTUyYzgzNTIxMGU2N2JhMDNkYThiYzc2ZjZiMTRkZjVlMjQ2IGxlZ2FjeS10cnVuaworMjk2NDkgNWI2MmI5ZWE0NjBiMjM5ZTMyZmI2MmMzNmIzYjgwYzNhZTdkOTg1YSBsZWdhY3ktdHJ1bmsKKzI5NjUwIGU3MTc3MGE3ZjU0OWZhOGQzZmJjNjQyM2E0ZGE3ZmE0MTc5ZmMzZjMgbGVnYWN5LXRydW5rCisyOTY1MSAwNGQzZjk1Y2ZkODlmMGMwYjQ4MGZkYjA4NTM2MDMwZmQzM2Q3OGM0IGxlZ2FjeS10cnVuaworMjk2NTIgMDgyOTMwZGZiZWJkZGJlOTZmZDI3YWYxMjI0NjczNjlmNmYxMTZkOCBsZWdhY3ktdHJ1bmsKKzI5NjUzIDFjMDU1MTcxYjg3MTFmYmI5OTg2NGMzZDljN2NmNGQ4ZDdlYWQ1NGEgbGVnYWN5LXRydW5rCisyOTY1NCBmOTZmYTNhNmRkYTQxOGMyNDRjMWVkOGZkNWNhOGFiYTU3NjA3MTdiIHJlbGVhc2UyMi1tYWludAorMjk2NTUgODNhZTRhOTAyZGYwOGY3Mzk5MzIyMjZiYjZmODc4ZDllYTIyYTlkNCBsZWdhY3ktdHJ1bmsKKzI5NjU2IGRiZTI1Njg3YmU2ZTVjMzY5MTczZDc5NDA4NjRmYmRmODdjMzRmMWEgbGVnYWN5LXRydW5rCisyOTY1NyAwYjIzY2RhMDA0MTcwZDlhNjJjMjBhNDkwYjg1MzBkNGQwMTdmNjFkIHJlbGVhc2UyMi1tYWludAorMjk2NTggNDZkMGI0NmE3NTRmZTFiNTdhZmI5YmFkOWI5N2UxNDlkNjAzNmMzMiByZWxlYXNlMjItbWFpbnQKKzI5NjU5IDFhZjQxMGUzM2JlY2Y1ODFkNzRiN2Y0Mjk5YTQ1NDFiOTFkMDY5ZmMgbGVnYWN5LXRydW5rCisyOTY2MCBmNzJiMWY4Njg0YTJiOTgyNmQ0NDA4Y2QzMDI3YTY2NTIyMDhhNzhhIGxlZ2FjeS10cnVuaworMjk2NjEgM2U1OWQ2NzRiOGMzNjQzM2VjZTBjNWEwOWZjODZkNzZiY2JmOGM0NCBsZWdhY3ktdHJ1bmsKKzI5NjYyIDRjMjUzMmMxY2IyZGUyNGQzZDUwMTMzM2Q0ZTRlMGE5ZDhmZDY3YjMgbGVnYWN5LXRydW5rCisyOTY2MyBhZjM5NjQ2NzllMmZiZDliZjk2OTZhZmNhMGQ0MWI4MzZmYTZiMTIyIGxlZ2FjeS10cnVuaworMjk2NjQgYWUxNjlmNWI5NGUwNDgxMzY0ODk0ODU4ODliMzM4NzNkN2E5MzFjNCBsZWdhY3ktdHJ1bmsKKzI5NjY1IDBlMGIzZGNmNzg3ODk4OTQzMWQ5ODg3NTY2NzIwM2NmZWExOGU2ZTAgbGVnYWN5LXRydW5rCisyOTY2NiAzOGQxZjgzZDU3NzEwOGE2ZTMwOWUwNjAwYjgwMTk4YTcxODc3MTQ0IHJlbGVhc2UyMi1tYWludAorMjk2NjcgZDZkYzQ2YjlhZjNjMGUyNjhlYTQ3MGUyN2M3MjYwY2RjODUwMTU1MCBsZWdhY3ktdHJ1bmsKKzI5NjY4IDM5MGJmNWQyZDhlN2RmNjYwMDE5MTlkYTJjYmYwNTBjZTExMzhjZGYgbGVnYWN5LXRydW5rCisyOTY2OSA5YzdhYTQzYjIxYTlhOWIwZWZlY2UwYzgzY2ZmMzc2OTMxYTVlOTAyIHJlbGVhc2UyMi1tYWludAorMjk2NzAgZDU2MzNlOTNmNzA3ZjM0MmI1NDIwMDNkYzllZGYzMTBjOWM0ZmQ1ZSBsZWdhY3ktdHJ1bmsKKzI5NjcxIDkzNzM1Nzg4MjJiNTkwZTA3YTAxMGQ2NWNlNzY0Y2MyZTNlNGRjNTkgcmVsZWFzZTIyLW1haW50CisyOTY3MiBhNDJmNjNhODBjYzg3MzZhN2E2NTBmYzRhMTZlMWNhY2Y0NWY5NTY3IGxlZ2FjeS10cnVuaworMjk2NzMgNzg1YWQwNzQwMjdiZjBlMzNmY2JhNTQ1OTZhMDk2MTBjYTUzMzU5MyBsZWdhY3ktdHJ1bmsKKzI5Njc0IGNiNzFlN2M2MjBlMmY1MGE5N2FlZjI0YzAzZWQ3MmUwM2RmNzU0NDkgbGVnYWN5LXRydW5rCisyOTY3NSAxZGY5OGY2OGQ2MDc1MzBlYWFjODk4YWE1NDdhZTE2NzZlMDg5YmE4IGxlZ2FjeS10cnVuaworMjk2NzYgZDM3ZjEzNzhkOGI4YmY5YWQzNjlhYmQwNjMyYmJiMmUyNDc3Mjg5YyBsZWdhY3ktdHJ1bmsKKzI5Njc3IGUwMjMzYzQ0MjUwMjZlYThiMDljY2EzZDg4OWJlMzQ5ZDNlMTc3YzggbGVnYWN5LXRydW5rCisyOTY3OCA3ZTU4YTE1MDQ4NzI2ZjJiYjA0ZWU5YzlhN2Y1Yjk1NjMwZjFmOTYyIGxlZ2FjeS10cnVuaworMjk2NzkgMWNkODEwNmJjZDIwNzFjOWRmNTZhMTE5NGE1MjRiZDliYzhlYzU0MiBsZWdhY3ktdHJ1bmsKKzI5NjgwIGJhZjg3ZDI2YmEwM2Q1MzdiZWI5M2Y2MDg1ZDlhNWQwM2M1MjQ0MmYgbGVnYWN5LXRydW5rCisyOTY4MSAzZjU3NzNhODg4OGVmZDY2NWJhNzYzNmFhNmZjYzQxOGJmNjFkMzBlIGxlZ2FjeS10cnVuaworMjk2ODIgZDMzMDA1ZjgzODhlNzRlMTk1N2RiYWZlYjM3Y2JlZWJmMTBhNDkxOSBsZWdhY3ktdHJ1bmsKKzI5NjgzIGZmOTJjYzI3ZmQxZmYzMGQ1NDE1YjhkMGUxMTkwYmE3MTZlMTM0YWQgbGVnYWN5LXRydW5rCisyOTY4NCBmZmVjNjc0MDkxNDA1OWJkZWE5MTIyYzMzYmRjNzExMGYxOWZkYjc4IGxlZ2FjeS10cnVuaworMjk2ODUgNThmYmE1OTU3MjZlYWRhZmVmNjFkY2QwMjNhNzVlNmVhZGZmNzQxYiBsZWdhY3ktdHJ1bmsKKzI5Njg2IDM4MzU4NzAyN2M3NGQxYzFiODM3M2RmMDc4ODEyMDUyZDdjOTRkYTggcmVsZWFzZTIyLW1haW50CisyOTY4NyBmNDY1ZDY2OTJiZGUzMzUwMzMxNGMwNTM0ZmQwOTFjNDg3OTU4ZmJiIGxlZ2FjeS10cnVuaworMjk2ODggN2Y4NzA0NjdjMTgyYTc1ZTBkNDQ4NTRmNGE3OGQ1MmFhZGI3ZjI2MCBsZWdhY3ktdHJ1bmsKKzI5Njg5IGI4MzAzNDEzYTU3ZTVhMTVkYzE3YzQ5Yzc0NjhlNjQ2YWU2YTUyMDggbGVnYWN5LXRydW5rCisyOTY5MCBhNWQxZTA4MTQwNjFjNTJhYjJiYzM3ZjYxZDQxZTUxZWUwNjI4MDk2IGxlZ2FjeS10cnVuaworMjk2OTEgZTg5MDU2NzE4MjM1ZGNhODdhMTI2ZTUyMmRiNTM3ZTk2ZmQ3ZjVkMCByZWxlYXNlMjItbWFpbnQKKzI5NjkyIDdjZmI1MmY5ODEzOTZmZWVlODllNzFiM2YyMDc2YjY5OWY4N2Q1OGIgbGVnYWN5LXRydW5rCisyOTY5MyAxMjdlNGJmYWNiYjc1MDQ5YzMxNGU1YjEwN2Q5MjgyY2E3NjMwNTQ4IGxlZ2FjeS10cnVuaworMjk2OTQgNzZmMzJmYmUwM2NjNTRlNTU0ZjIwNDlmYWEwMWVlYjQzMDExMmY0NCBsZWdhY3ktdHJ1bmsKKzI5Njk1IDU3ZmNhY2JkYzg4NWE1NTdjMjIzM2UyMWJhMjRlNWRjM2UxZGYwNTMgbGVnYWN5LXRydW5rCisyOTY5NiAyMGZhNjMyOWI1OGZmODA0MDYyYWE4OWY5NTMyZjliN2I0YzU4ZTEwIGxlZ2FjeS10cnVuaworMjk2OTcgZWIwYzBjODNiOTJhMDlmZjZhZGM0ODQ2ZWQ2ZDM1ZGM5ZTkyMDEyYyBsZWdhY3ktdHJ1bmsKKzI5Njk4IGZmYmVhZDM0ODRlMTAzM2IyYzMwYzM4NjBjZGFhZDZiYjQ0MmZmZGYgbGVnYWN5LXRydW5rCisyOTY5OSBjOTUxOTA1MzJjMGNiNmQ5ZTFlMDQ0ODcwNjMyMTE4YWM0NjFmYTEzIGxlZ2FjeS10cnVuaworMjk3MDAgNTJmNjEzM2UyMGQyMGViNjAzYmJlYjM4Njg0MjNmOTFkMmIxY2MwYSBsZWdhY3ktdHJ1bmsKKzI5NzAxIGFkYjkzZjRlOTc4MDUxZTQ2ZmFhMDBhN2Q4ZGRlMmE5ODI2NDgwMzQgbGVnYWN5LXRydW5rCisyOTcwMiAxOTAzODlmZDgxNTljN2M0NmRkZjk5OGFlMjk3NDFiMmIzYTNkYWE3IHJlbGVhc2UyMi1tYWludAorMjk3MDMgZWNkZmY0NjIwMmMwZmYzNWNiZWYwNTlmYjE0NjhkZWUxNmExNjM0YyBsZWdhY3ktdHJ1bmsKKzI5NzA0IDUyOTcxOWE1MzUwZTc1ZWUzMWYxZDQzOTQzNTRkZDUyOGZhYjhmODEgbGVnYWN5LXRydW5rCisyOTcwNSBjYjI0ODcwNGI3ODRlM2M3Mjc0NTkxOTlkNjdkNjE5YzU0YzJhMmI4IGxlZ2FjeS10cnVuaworMjk3MDYgNzk0MjBmYTIyMmI4NTA1OTVhYzU3ZDQ4OGQzYzJhNjI3OGI5OWYzNiBsZWdhY3ktdHJ1bmsKKzI5NzA3IGUyNmZmNzVkY2Y2OTExYzAxYjIzMWQyYmVhMTY1ZTNkYTM3ZDBhOWYgbGVnYWN5LXRydW5rCisyOTcwOCBjNDJiNjM3Yjk1MTQ2ZDczODZkNDg1YTAxYjE5MzQ0ZjE5OTdmOWNlIGxlZ2FjeS10cnVuaworMjk3MDkgYzg1NDgwNjkyY2FlOWNkOTAwYTUwYTYxZGZjYjRlOWVkMDllYjJlNyBsZWdhY3ktdHJ1bmsKKzI5NzEwIDg3ZTY5YmFkYTE5NWVlZjVmNmNhNWVmOGJjNzZkNWIyNWEyNDcyZjIgbGVnYWN5LXRydW5rCisyOTcxMSA5M2YzMGMzODg5YWE0YjdhODJiMzQxMWYxN2YyYzNhMzUwMWIwNmZiIGxlZ2FjeS10cnVuaworMjk3MTIgM2VlOTUxOWVhYTRjNDc2NzhmNjBlNTkwZTU1MzdlMTZlZGIxYTVkNSBsZWdhY3ktdHJ1bmsKKzI5NzEzIGU5Zjg5ZGJhNTA5M2IwYTM4M2Q5YjcyMWQwMThiMTgwZWViYjQ5YWIgbGVnYWN5LXRydW5rCisyOTcxNCA0NDliMmI1Y2FmNTgyZmRkYzg5MTFlZTdkMzJkNjBjYzdkMjc4NTBmIGxlZ2FjeS10cnVuaworMjk3MTUgZWRkMmViODhmZDZjYTBlY2I0ZDY0N2JjOTc5ZGJjNDk3ZmQ5OTRmNCBsZWdhY3ktdHJ1bmsKKzI5NzE2IGEwZWZhNGM5NTY5ZTMxOTZkZGJiZTRlMGQ1MjZkZjM1M2IxYTI1OWIgcmVsZWFzZTIyLW1haW50CisyOTcxNyBlNDI5OTdhY2M3ZjFlNzU0Njg2NmY3ZTdkY2RkZGJlNmE0ZGY2ZWE3IGxlZ2FjeS10cnVuaworMjk3MTggYTRlMzAyMWVhYTdkNDBiOWVkYjYxNDMxNTc4ODBhZjBlNzkzNjk1NSBsZWdhY3ktdHJ1bmsKKzI5NzE5IGIxMzg4ZjU4YmRiNWQxMGUxNjAzMzJiMGM1OWQxZDhiYmEwNjZhYjYgbGVnYWN5LXRydW5rCisyOTcyMCA0YzA2YmRkN2QwNWMyZjMyYjdmNDEyZmUzOTE0Mzk5ZDQ2YmU4ZGZkIGxlZ2FjeS10cnVuaworMjk3MjEgOGVkNjZlZGZmMzg3YzZkNDgyNDQ3NDcxYjhmNGI1OWMxMGI0ZTFjOSBsZWdhY3ktdHJ1bmsKKzI5NzIyIGZmNzYzOWRkY2FmMjFjYjZjNmZmYzM0MTY2NWEyZDU5YWUwMDM2ZDcgbGVnYWN5LXRydW5rCisyOTcyMyA2MWEwZWY1NDJiNmY1ZTFiNTg1YjBhNDk4ODcwZWE3YjA5NjFiMDY4IGxlZ2FjeS10cnVuaworMjk3MjQgZDYyYzFiYTMzOTY0MDY4NjRkYTVkMDYyZGUzMzVlN2QwYTE2YmZjYSBsZWdhY3ktdHJ1bmsKKzI5NzI1IDNiZTFiZGM3NzllMDZmMDQ5NjBhZDkxZGIyZTFmMjhjNGZjNmRjZGYgbGVnYWN5LXRydW5rCisyOTcyNiAwZTg5OTBlODkyYjZkNmEyYzhjYzM0Y2QxNTVmYmU3YjQzNjAxYzM5IGxlZ2FjeS10cnVuaworMjk3MjcgMDJkNDhlZDQ0N2E4M2IzNGNhZTg4YjM3ZjcyMThjMzNhMjhjNWEwOCBsZWdhY3ktdHJ1bmsKKzI5NzI4IDE0OTE2NWNkZmY3Y2RjNDkzNzE5NTEzYTE0NjM0ZmNlMGNlMDk0M2IgbGVnYWN5LXRydW5rCisyOTcyOSBjZGQyODlhMDY2MTRhM2MzNDk3MjRmYjk5ZjM0MjA1ZThkNGIwMGQxIGxlZ2FjeS10cnVuaworMjk3MzAgNjc5YjJiODI1NGFlNjY2ZDc4ZjZmNTM4MzNkZGNhZjViYjg4YmM4OSBsZWdhY3ktdHJ1bmsKKzI5NzMxIDRiZTM0YmQ3M2RmZjQxZTY3YTljZWUxN2Y2NDkyM2E1NzI0N2I3N2EgbGVnYWN5LXRydW5rCisyOTczMiAyMmQ3MzI1YmE3YWM0OTY5ODIzY2U4Y2VlNmQ1NGQ5YzhlNDQ5ZDc5IGxlZ2FjeS10cnVuaworMjk3MzMgYThkMTMwYTZhNzRkNjhlOWJhMDVhNzk1M2VhOGY1OGVmMmFkODI2MCByZWxlYXNlMjItbWFpbnQKKzI5NzM0IGYyM2MzNWY4MTAzMzk5OWM4NTM5ODc1YzA1NGNhZTE0Njg5OWVjMDIgbGVnYWN5LXRydW5rCisyOTczNSBiMTk0NDNiZGY0NDdlN2Q4MWEwOWM5NzNmNzZhMTE1ZWQ0NzkxOTFlIGxlZ2FjeS10cnVuaworMjk3MzYgNjBkODA5YTI1YmFlYzgxMzkwOTBhNzc0ZWI0OGZjODM0NjM1ZDNhZSBsZWdhY3ktdHJ1bmsKKzI5NzM3IGIzMjdmZmNmZTliN2I5NjE0YWEwMjg2M2QxZmU3MWU0NjE0MTM1OTAgbGVnYWN5LXRydW5rCisyOTczOCAyMDVmYmYxYmQwNzU2MmYyNDI1NjA2YWRmOGY5MTJmZDU5NmI4MDk1IHJlbGVhc2UyMi1tYWludAorMjk3MzkgNzY2MDFmYjA3OGQ0MDE3YzgwNTc5NDJiMjc2MTQ1ODEyMzc0OTc5MCBsZWdhY3ktdHJ1bmsKKzI5NzQwIDI0NGU4ZmJlNGUyMDQ1NDBkM2Y0NGVhZGMzNWE4MTVmNzk0NzI5NDkgbGVnYWN5LXRydW5rCisyOTc0MSA1MzNlYjUzYTdmYmRkMDNlZjU0NmU3YjIwZjU2NTcyMDNlMGI3MmExIGxlZ2FjeS10cnVuaworMjk3NDIgZTM4ZDUwMzM3ZThjZDgzMDI0ZmRkM2FhNGRkYjc5NDFiMmY1MDBkMiBsZWdhY3ktdHJ1bmsKKzI5NzQzIDQyMjc5ZjdkMjQ0ZGY3NGIyNzZiMzA5NTAxNWUwZjVmM2ZkN2EwNTMgbGVnYWN5LXRydW5rCisyOTc0NCAzNGZiYmNiMTA1YTQzYjY2NTYwMmI1ZWI0ZmI3ODlmYzRjOGRjODRhIGxlZ2FjeS10cnVuaworMjk3NDUgODNjY2FhYWIzZTVlNDc3ZDYyZjk3NjUwNDg1YTI5MDlmNDViYjViYyBsZWdhY3ktdHJ1bmsKKzI5NzQ2IDZiNTU2YzU0NWZmYjM4YWRiYjcwZGM0MDkyYzBiYjgwYmQxZGE1OTQgbGVnYWN5LXRydW5rCisyOTc0NyBlMjcwYzBkNDFhMDUwNTdhMzExNjQ3YzYyNGJkMmM5YzhkYTNiZGNmIGxlZ2FjeS10cnVuaworMjk3NDggYzQxOWZjZTE1MjllNTdiZTRhZjAyZjdiZmMxYjBhZjU4OTdmNjFkMCBsZWdhY3ktdHJ1bmsKKzI5NzQ5IGZiY2NlZjhiMzE1MzMxYjE0Mjc3ODJmYzQ4MmZiNDRiOWFlYmRjODIgbGVnYWN5LXRydW5rCisyOTc1MCA1N2M2ZTg0ZjcxY2VjNjZhMGQ3YjgxNTY2YmM2OWQwOTZkNTkxMjJjIGxlZ2FjeS10cnVuaworMjk3NTEgOTU4ZDA3MDg1ZGNmNGFlODA4YzZkYjk2ZWQzZjM1Y2ZmYTIwNTcxZSBsZWdhY3ktdHJ1bmsKKzI5NzUyIDUwYzk1OGY3MDNlMzAyODllMjZhNmMwNjhmMDA5ODY3Yjc0OGI1NjcgbGVnYWN5LXRydW5rCisyOTc1MyBkNjYxMjliNTUxZGI0ZmFlMjA4ZjI3YWM1OWM0NzY2ZmI2YzU1YTMwIGxlZ2FjeS10cnVuaworMjk3NTQgM2FjNDY0YzM3Mzc0YzQzODRmZWYxODE1MDRkY2MzODE5ODc1ZWE5YyBsZWdhY3ktdHJ1bmsKKzI5NzU1IDdjMDhmNmNiOTBlNGY5NmUxMmM5MzFlZDQyODUwNDVmZWY1YWQ2ZjIgbGVnYWN5LXRydW5rCisyOTc1NiBkNDQxMWQ5NTBkNDgzMjU1MDM0NTk2MDVkYTEwNWQ5MjdlNTJlZjA5IGxlZ2FjeS10cnVuaworMjk3NTcgODc1MTQwZDMwZTE3NjU2MGFkZjQyNmRkZjUzNDljMGI4YzE1ZjdkYyBsZWdhY3ktdHJ1bmsKKzI5NzU4IGVlYzk5NzgzNzE2YzNhY2RjNGJkNTQyZmE2MDBmY2EzOTRiNmU1NzEgbGVnYWN5LXRydW5rCisyOTc1OSBjZTY0MGRhYjEwZTQzMmM4Nzk4OWI4MGU0YzU1ZTcxNDg3ZDIwOGNkIGxlZ2FjeS10cnVuaworMjk3NjAgZWZlNThjMTBjY2YxNmQwMDY2YmRhMjEyNDE4NGQ5YTNiNjhmNmY3YSBsZWdhY3ktdHJ1bmsKKzI5NzYxIDRlZDIzMGEwYzkzMWViMGYxY2E1M2RhNWQ5ZmIxNGY0ZTM0MWFlN2YgbGVnYWN5LXRydW5rCisyOTc2MiA0MmJmYzk4ZDI5NWI3ODUxZTE3MDE3N2RlZjcxMGZmMjQ5MjgzNDRhIGxlZ2FjeS10cnVuaworMjk3NjMgOTZiZGI0NDc2M2MzNmRmMTk2NTQxOTI4OTlmNGE4NWJiYjIxN2E4OCBsZWdhY3ktdHJ1bmsKKzI5NzY0IGEyNGJjNmEyZTJjZGZhNjY2M2NhMjUwNzJkZjRjNjliOGM1MTNkMzggbGVnYWN5LXRydW5rCisyOTc2NSBiMGI2MDg1OTgxNzAyMDVmZDE3NDBhNDMzNDViZTc0NDU3MmU3ODFhIGxlZ2FjeS10cnVuaworMjk3NjYgMDkzNGE4YTBiYTBkODU0ZmFkMzQyZGIyNThkMjM2OTc3ZmVhZjRhNCBsZWdhY3ktdHJ1bmsKKzI5NzY3IGU5NjU3NWY3ZTk2YTdlYzJmMDA0YWU3MWNkZTA1MmI4YTJlMzI4ZmYgcmVsZWFzZTIyLW1haW50CisyOTc2OCBkMzFkZGM2NmIxYjU1MWY5OWNmZmU0Zjg2ZmJmM2E0MzliY2EwYjk1IGxlZ2FjeS10cnVuaworMjk3NjkgMzE2ZmRkYmMxZTA3ZWVlYmRhODA2ZTEzNjAyODFkNmM4NTQ3MDZkOSBsZWdhY3ktdHJ1bmsKKzI5NzcwIGZmNWI1MTBlYmE2YjY3OTQ1YmY4MzEyNDY2ZDA3YzA5ZWQzODk1NWYgbGVnYWN5LXRydW5rCisyOTc3MSA2ZDBjZDgwZTI4MDQzMGQ4OGNiMDAyMTk4ODU4N2NlMjgwYmQ5YTJmIGxlZ2FjeS10cnVuaworMjk3NzIgMWJkOWQ5ZjAyYWQxYjQ1NjJjOGIwMzhiNWQwNjRhNjhjN2EzOTRlZCBsZWdhY3ktdHJ1bmsKKzI5NzczIGJlYTk5MWU2NWZmZDM5Yzg5ZTgxMDhjZmQ1ODBkZWRhMzQ5ODNhNTYgbGVnYWN5LXRydW5rCisyOTc3NCBiYWNkNjc4YjNjNGNlZDIzNGMyYzZkOTQzNGFlMjdjYzE2MjgzMDQzIGxlZ2FjeS10cnVuaworMjk3NzUgZjZlNDY1ODViNmIzNGMwZGM2YmU5OTRjM2UzMTQ0MDExMDhkMjc4NiByZWxlYXNlMjItbWFpbnQKKzI5Nzc2IGM3NzQzNWQ4N2MyZTkyMGRjNDA1NjA1YzhiMzgzNDM5OTk3NDMzYjcgbGVnYWN5LXRydW5rCisyOTc3NyBkY2RlMjUzNDdlOTM4OTAxZDUxYTNmZWQ3MzAyMmE4MjkxMmMwMjFmIGxlZ2FjeS10cnVuaworMjk3NzggZTNiOGY3N2E2OTgwMGIyY2IyYjA4ZGQwOTVlZDY0ZGYwY2JjYjViNSBsZWdhY3ktdHJ1bmsKKzI5Nzc5IGZmN2FkMzJjOTU1NGVkZjI4YjlkZDcyZGY2NGE2MGI5MzA5ZjYyN2UgbGVnYWN5LXRydW5rCisyOTc4MCAwYzg5OTM3Y2ViZWQzNzZlNDBkZTY5Zjg2MTQxZjgwOTUyOWUzYmY3IGxlZ2FjeS10cnVuaworMjk3ODEgMDgwODM4ZTM4ZTdjNGFlODRkMjI4MTFlMTg2YmZhNzZiMDJiMjg2ZSByZWxlYXNlMjItbWFpbnQKKzI5NzgyIDMyZGY4ZDU5NjBkMTgyZmQ3YzRhMTFkMmFmMmUyYmMzZmE4ZGUyNDAgbGVnYWN5LXRydW5rCisyOTc4MyAyNTFkZDEzNmJhYzNiYjAzMTU3Yzc5M2QwNzEzMmQ1MDBkYmVkMDYyIHJlbGVhc2UyMi1tYWludAorMjk3ODQgZWYxZTM4MzJhOWVhMjAyMzUyNzBjMmI1M2JiZTcyNDRiMzQ1OWJkZiBsZWdhY3ktdHJ1bmsKKzI5Nzg1IDQwM2RjYmM5MDQzZjY4NzRkMGZmYWRiNGNkMTE0MGYzOTc3MjkzY2UgbGVnYWN5LXRydW5rCisyOTc4NiA3ZmM3MDRjY2ExODEzYmIzYzA3ZmM1MTNlYmNhM2FmMTU0MTljYTkzIHJlbGVhc2UyMi1tYWludAorMjk3ODcgYmFhNDdkN2U4NGUyNTgzNjA5MjYyNmFiMTI4NTkzNzY5MTliNmY3YyBsZWdhY3ktdHJ1bmsKKzI5Nzg4IGYyZmMzOGY4Y2E5ZGUyZThiNTFkMDM2NzQ2MGQ3ZWFlM2IzMjZmYWEgbGVnYWN5LXRydW5rCisyOTc4OSA4YjYzOGJlNzZjYmUyNDBiNTY0ZDQxNDZiZjc0NzYwOTZjNDJkMGU0IGxlZ2FjeS10cnVuaworMjk3OTAgNDFmZjUwYjRkMDk3NDIzYjBmMmE1M2M2ZDliZWE0NDZiYmQ1NDk3OSBsZWdhY3ktdHJ1bmsKKzI5NzkxIDhlNjAxM2JiZTdhN2MzYzRmZTk5ZDBhNTQ3MmFkOTU1MGY3ZDhiNDAgbGVnYWN5LXRydW5rCisyOTc5MiAzZmQ4YzJhZmYzMDUyOTczOTlmZjFmYmYyNTc4ODdlYmVjMTRhYjliIGxlZ2FjeS10cnVuaworMjk3OTMgYTI3YWM5ZDMyZjIzMzhmYWFjNGY4OTUwOWU5ZTIwZjMwYWFmOWFhMCBsZWdhY3ktdHJ1bmsKKzI5Nzk0IGE0ZGJhMDU4ZjcwZWFmZmMzZjhiMzZjZTMxODVkOWI3ZDcwNGI3M2UgbGVnYWN5LXRydW5rCisyOTc5NSA5MTBmYTczOWY0YTRlN2MzNDg1MDljMWY5M2U1ZDFhMWI1M2YzZmZjIGxlZ2FjeS10cnVuaworMjk3OTYgOTBlOWEzZWNkYTQ0OWRjNmJiMWE2YTVkOWFiODc4ODg4ZGZjZTg5YSBsZWdhY3ktdHJ1bmsKKzI5Nzk3IGQ0MWM0Yjk1ZTcxNGRlMThmZjgzMjQ3NDlhMTFhM2UyNzI3YjM4MjcgbGVnYWN5LXRydW5rCisyOTc5OCA2ODAzNjBlNjhhMDYzYTY3OGE4OGE1MDUyNTNhNzkwMjRiYWMzYWMyIGxlZ2FjeS10cnVuaworMjk3OTkgZmFkY2FiNjVhYTg3NGI2NDkyMTY5OGMzMmZiODE0MWUyNWVjNzIyYSBsZWdhY3ktdHJ1bmsKKzI5ODAwIDA2NzU0ZDczYzYzZTQ2ODdiZTY4ZTA3YmI0MzYyNzA3Y2I0OWI2ZmYgbGVnYWN5LXRydW5rCisyOTgwMSAwNWQ2YWRlM2U5MmI0YjFjNTgxNWQ5OWUyODcwNzA1MzFhZmZiNGE2IGxlZ2FjeS10cnVuaworMjk4MDIgODIzODk2Y2UyZTVkMDU2OGNiOWMzNDM3ZmU1ZTAxMjhjM2QyMTUyYSBsZWdhY3ktdHJ1bmsKKzI5ODAzIDJiMGU4MTVjMGIzMDdmZmUzYzVkYzIxMzBmMDVlNDQxM2Q3OTI4MjcgbGVnYWN5LXRydW5rCisyOTgwNCBlYTFkMjA1MGQ3ZGFhZWNmNTYyYWRmNTBmOTA1YzY5N2Y4OGNhZGMyIGxlZ2FjeS10cnVuaworMjk4MDUgZjNhNjkwMzdmZGYwZmFkM2E1OWYwMzc1N2U3MGRmNGJiYzQzZGQ2MiBsZWdhY3ktdHJ1bmsKKzI5ODA2IDQ0ZDdlYWFlMGQ4ZDM4YjIyNjJkMzJjY2JlZWUwYTY3NjVjNGVhNTggbGVnYWN5LXRydW5rCisyOTgwNyAzMDg2ZTExMTc4M2E3OTEwNDFiOGNkOGRkNTAzZWY5ZDMwM2I2N2I5IGxlZ2FjeS10cnVuaworMjk4MDggNjBiZDdhZjAzMjRlODBjYTM3N2M5NDQ1NDQ4MzQzYjk4YWMyZmVkNiBsZWdhY3ktdHJ1bmsKKzI5ODA5IDYwMWI4ZmMxMmZiOTUzYTE4NzBjNzg5Mjc3YmJkZmMyM2EzOTY4YzQgbGVnYWN5LXRydW5rCisyOTgxMCBmMzQwMGVmMDJhNDU5YzQ3YjIwMTk5MjVlYmU4MGQ1MjRhYTI4MTkyIGxlZ2FjeS10cnVuaworMjk4MTEgYzc2NzYyZDY2ZjQyMWMxNzJlNTJjMDBhMjQ1NGJjMjA5NDczYThmZSBsZWdhY3ktdHJ1bmsKKzI5ODEyIDk1N2NhMmM1MTc5MDQ5YTM1ODNlNTQ4Mjg5ODcwYTE2YTRiNmUwOWEgbGVnYWN5LXRydW5rCisyOTgxMyAxMDg3MWY0NGU3ZGIyOWQ2Y2RmNjM4ZTc5ZWE0MWY4YzZkMGExNGFlIGxlZ2FjeS10cnVuaworMjk4MTQgNzMzZTRiOWQ1OTJlYmNlYjA5NGMyOTlkMDk4ZmRkNThhZjExZTM5NiBsZWdhY3ktdHJ1bmsKKzI5ODE1IGFjNzg3MmU1NTQwNTliZDk4OTQwMzQ3YWFlYWExNmU3MmNjYTVhMTIgbGVnYWN5LXRydW5rCisyOTgxNiA2NTg5YzM3YzBkZGQ3MmIzZjNjOGU3Zjg0ODllNzRiNTM2ZjA1MWM4IGxlZ2FjeS10cnVuaworMjk4MTcgNGVjMTkwMmVlNmI3N2NhOGQ5NWM1NzQwMWM5OTc0MjYwZmU4MTEwNyBsZWdhY3ktdHJ1bmsKKzI5ODE4IDU2MTE4NWQxM2Q1Y2M0MWY3NjEyZDY2ODRlY2I2Mzk3ZGZlMTExN2QgbGVnYWN5LXRydW5rCisyOTgxOSBmNzg1MjcwY2VlMTk3ZDE3MTRjODU5ZDM4ZDNkYTYxNTViMDJjZmJjIGxlZ2FjeS10cnVuaworMjk4MjAgM2M2NGVmODdkNWY4OWY1NDY4MDQ0YjI4NzQ0NWRiY2NmYjEyZmM2YSBsZWdhY3ktdHJ1bmsKKzI5ODIxIDA2N2EyZWY2ZDhhOWYxNmYzYjhiYjQ4NzgwZWVkMzgwMmIyNmMwMzYgbGVnYWN5LXRydW5rCisyOTgyMiA5ZjQ2OWRhNTkxYTllN2ZhZjFjNTYwODk4MmI1NTI3NTFhMjI0ZGQwIGxlZ2FjeS10cnVuaworMjk4MjMgNTQ3ZGU0MDdjMTMzNDczZWQzZjIzOWNiNjQyNTQ4OTBiNDJjYzAwYSBsZWdhY3ktdHJ1bmsKKzI5ODI0IDNlMDJlYWQ4ZGUwNTgwMDc5NzlmMGI3NDNiNjJmYjdmYTU2N2YyNTIgbGVnYWN5LXRydW5rCisyOTgyNSA0NmJiOWFkODMxOGYxOGZhNGQ1NGNlOWZjZmQ3MzQwNjZiZTBkZjFhIGxlZ2FjeS10cnVuaworMjk4MjYgN2I5MDk2NTAxZWE4MGQ4MDU5ZWVjYjk4NjBjODE2M2Y4OTBlMTAzNiBsZWdhY3ktdHJ1bmsKKzI5ODI3IGFiZjU2NWNmNWI1NDc0YzgyZTRlOTAxY2UyOTI3MTk1NTEyM2U4YTIgbGVnYWN5LXRydW5rCisyOTgyOCAxM2MxYWExNWUwZmI1ZGE5NDgzNzUxM2Q2MjRlZTIwODMyNGVhMGEwIGxlZ2FjeS10cnVuaworMjk4MjkgZGMzOTllOWNhYjg5ODZlOTI3MmEzODNjZjVkZjI5OTJlZGRiZmIwZCBsZWdhY3ktdHJ1bmsKKzI5ODMwIDMyMmI2NjRhMjAyMmQ4Nzg0YTk2MzM4NDc3NTI2YmNkOTI2NWJmYWUgbGVnYWN5LXRydW5rCisyOTgzMSAzNWYxMjVkNTJjZjVhODFiMTJjMDEwYjNlYTNhMGI1MTZiYmRjNjUxIGxlZ2FjeS10cnVuaworMjk4MzIgOGZlMjk2YWQ1OTM2YjM3MDI4YmVkNmYyNWRiZmZjYjFkZWIwZGJlNiBsZWdhY3ktdHJ1bmsKKzI5ODMzIDc3MDkzZDU3Y2NhOTk3YmU2NDg1YzgyYjBhNjk1YjAwNzNlMTE5OWUgbGVnYWN5LXRydW5rCisyOTgzNCAzZjdhZWE1YjkzYTE4Njc5MjgwMzJhMzdiMzUzYTE1ZGQ3ODQ3N2JjIGxlZ2FjeS10cnVuaworMjk4MzUgNzkxMTg2MzJlMzdlNDAxZTA3OWNiZTAwOGZiNTJiNzY5ZWQxMzBhZiBsZWdhY3ktdHJ1bmsKKzI5ODM2IDU0YTc0YjBkZmUyNmNmYTYyZDk2OWIyMmU1MzRjY2YzMzVlMWMwZGMgbGVnYWN5LXRydW5rCisyOTgzNyA4MjM2ZDUyODg0MTI1NmJjMWVkNzc4YmMwMDYwOTQ3MDc2NWEwM2ZiIGxlZ2FjeS10cnVuaworMjk4MzggODc4ZmVkYzZjN2U3YzRlNTUxNDMwYzMyYmVkZDY0MTRlMzA4ZDZjYyByZWxlYXNlMjItbWFpbnQKKzI5ODM5IDZlMjI4ZTFhZmYzODU4N2UwMWUzMzE4MzdhNGIyNjExOTExYzY3MzIgbGVnYWN5LXRydW5rCisyOTg0MCBiODI0MjhiMTc5NzhmYjBkYjZlMGJmOTA1MmVhNmQ4YTliMDI0ZjUxIGxlZ2FjeS10cnVuaworMjk4NDEgNGYyZDUxNzRiZDRhYzViOGVlYmE4MGYwYzIzYjRhMGU1Nzc4ZmE1OSBsZWdhY3ktdHJ1bmsKKzI5ODQyIGQxZDg5NTliMTM4YWNmZWQ5ZjY0NTMwMjgzYWRmNzQwMjNhZWQyMTMgbGVnYWN5LXRydW5rCisyOTg0MyAwOGI3MjBjZDM4N2UzMzU5NWNiNmE2NWQxZjJjMGQ1NjY5ODQzYzI0IGxlZ2FjeS10cnVuaworMjk4NDQgMGM3Y2IyNzQ2ZDg2NDM0NThlZGEyZGVmMTcwZDRkYTg1OTg0MGJmYyBsZWdhY3ktdHJ1bmsKKzI5ODQ1IGMxY2FhNWJmZjI5MmFmNTJlMGYwMjY4NGJhZDFiMjk1N2QxZDE2MDggbGVnYWN5LXRydW5rCisyOTg0NiBjMjYwNGQ2OWFhNWQ1MmJjMmQ2ODNjYmMzYTI3ODBkYmI1OGYzYjExIGxlZ2FjeS10cnVuaworMjk4NDcgOWU0ODlhMGRmN2I1YWY5ZDY2OGQ2NTM5MGM4YjYyMGE5YmFiZWFjNSBsZWdhY3ktdHJ1bmsKKzI5ODQ4IDNkMGUwMjk3NmJjMzM2NjQ3YTc5NTk1YmRlNTJjYTYwNDg5ZTdjODcgbGVnYWN5LXRydW5rCisyOTg0OSBlMTY4NzYzZTg2MWEyYzQ5MTI3ZmNjODQ3ZmJjNWMxYmM0YTZkN2VkIGxlZ2FjeS10cnVuaworMjk4NTAgZDRjYzk3MWQxOGE2M2UxMGZkZmRjOWZiZGY5MDE2MjJjOTMyYTE5OSBsZWdhY3ktdHJ1bmsKKzI5ODUxIDEzNWJiMTEyMTVhMDk0YmU4NjJhYjY5OTI0Yjg1NzM4ZThiZWU2MzQgbGVnYWN5LXRydW5rCisyOTg1MiBkMGYyZDFmM2ZjODU0MmE2MzA5YzAwOWEzYjA3MGMzN2U4YmQ3YjdiIGxlZ2FjeS10cnVuaworMjk4NTMgMGYyNzY2MzAyYmEwYTlmMzY4ZTc4YjU0NDVkYjdlMGRkNGNiMTBmYiBsZWdhY3ktdHJ1bmsKKzI5ODU0IGQyZmI0MmVjOGJiNDIyZTMxNmRhMzMzNjI3Zjk0ODhmMWEyMDcxYzAgbGVnYWN5LXRydW5rCisyOTg1NSBhYjM3NjNkNDc3Y2M0MDhhNjc4Y2QxM2YxYjFjNDY5YzU0NTI1YjMyIGxlZ2FjeS10cnVuaworMjk4NTYgMTg4NWIyZDYzOTNhOGFjZDcwNGMyODM5OGMxYTkzY2E2N2FlMTBjZCBsZWdhY3ktdHJ1bmsKKzI5ODU3IGY4YTFiYTQ0NjE1ODQ2OWNlYzY4N2JjMjkxN2QzMjNmMzg3ZjUxZjcgbGVnYWN5LXRydW5rCisyOTg1OCAxMTkxOTdmYTYxNDA4ZWQ1YWI4MTAzMWJmZmJhYmU0YmMxYWQzMDJjIGxlZ2FjeS10cnVuaworMjk4NTkgM2Q1MjNkYmM5OWJlZWE0YTc5NDU4YjBkMTNjYjRlNTM2ZjUyMzAwZiBsZWdhY3ktdHJ1bmsKKzI5ODYwIGU3NDg2ZjNlZjc1OWE4YjJlNTQyN2Y0MDBlMmQ5N2EyZGY4MzFjM2QgbGVnYWN5LXRydW5rCisyOTg2MSBkZjU1NmZkZWM2OWQwNWYzNTQ3OGUxZGJjNWM2ZThiNDhiY2I0YjQ5IGxlZ2FjeS10cnVuaworMjk4NjIgMWY4MDAwNTdiNjM3MjhmNTI1N2ExYTY3MzQ3NjgyNjY0NTQ2MWVjMCBsZWdhY3ktdHJ1bmsKKzI5ODYzIGRmNzE5NzM2ZTE1MWI1NzY0NjhjM2MwZjljYjk2ZmU2MGZjNGRjY2EgbGVnYWN5LXRydW5rCisyOTg2NCBmY2Y5NzM0ZTEwMjE0YmUzYzRmMzc3MDc1YTNjYWMyMzJhYjZiNWMzIGxlZ2FjeS10cnVuaworMjk4NjUgMWJhZjFjZGRjMGVjZDk2OWM2NzRjN2JjZjc0YzliNmEzZTIwNDc2MiBsZWdhY3ktdHJ1bmsKKzI5ODY2IDhhMDEwYzI3ZDZjYjlhMzZjZmU1Y2E5ZjU1NDY2ZDQ2MGFiOWU0MzUgbGVnYWN5LXRydW5rCisyOTg2NyBhOGNhZGZiMGZmODMyZjZiY2JjZjBkYWQ3ZjMyZWQ5MDY2YTU4MDk0IGxlZ2FjeS10cnVuaworMjk4NjggZDIwN2QxZDc4YzVkNWExZmJkZDQyOWI3NTViMjQxNmZiZjFjNzIwMyBsZWdhY3ktdHJ1bmsKKzI5ODY5IDQ4MmFlMDU1YmJkNGZhMGFjNWM0Y2FlNWQ1NzY4M2FkMjBjZjcyOGUgbGVnYWN5LXRydW5rCisyOTg3MCBiYjM4ZDdhYmMzZmNkY2Y3OGE5NzNmY2M3MmQxYjRkNDIyNjRlMzA4IGxlZ2FjeS10cnVuaworMjk4NzEgNDkxYmZjNGEwZjViYjYyMjk3YTdjYzdhYWJhNGRlM2M5NzU0ZTViNCBsZWdhY3ktdHJ1bmsKKzI5ODcyIGIwNTVlNzg4M2M4M2ZjNTI3NDY2YmQxMTM5MWU1NWFmNmJlNGFmMGYgbGVnYWN5LXRydW5rCisyOTg3MyBlM2ZhZTdiNmMyMDc4ZjRkOGFjNTZlMTFmNzZlMmNmMDhjZmQ3ZWI2IGxlZ2FjeS10cnVuaworMjk4NzQgYjI3YzFjYWQ3N2VhNzA3NTBlYzRmOTZmZmY4M2QxMGI0YTgwZjczOSBsZWdhY3ktdHJ1bmsKKzI5ODc1IGEwZDc1MmJlNTU3NzMwYmUzMTkwMmE5NGQ5YjM5OGUzOTI2OTUxNTcgbGVnYWN5LXRydW5rCisyOTg3NiAyODEyY2FjZTMwMWFjZDdmZTU5MjUzYzQyY2U2MWNkMDVmMWRjZWM0IGxlZ2FjeS10cnVuaworMjk4NzcgY2M2Mjg1NGY2MzZjZjIxMDdhNzgzNjEwNTg0YzkxYTJkNmZmYjdlZSBsZWdhY3ktdHJ1bmsKKzI5ODc4IDQzODA0MzVmZWY2NjUwNGY0YzFkNDg1ODBhODM3MjQ3ODNmZjFlYmEgbGVnYWN5LXRydW5rCisyOTg3OSBjYmQ4MWQwOGM0MzAxYzRiODBjY2Y5M2RiYjhiNDJiMGQ4M2U5ODFiIGxlZ2FjeS10cnVuaworMjk4ODAgNDg4MTYwMjFmNTg4MjkyMTVmYzVlOWVhMDhhNTdjYTBmZmZjZWZkZSBsZWdhY3ktdHJ1bmsKKzI5ODgxIDFiNDdiNTc2ZTBkNGE2MWQxNWY4ZjBkMDk5ZDEwYmIwZTk0M2FiYmMgbGVnYWN5LXRydW5rCisyOTg4MiBiMzg1MzNlMDFkNjVmYzlmYThiZjlkN2JmZGVhNGZlMzg3ZmJmNDgxIGxlZ2FjeS10cnVuaworMjk4ODMgNzAwZTE4MmIyOTAxOTM0Mjc3YzNhYzI3MDJhYTk2ZWI4ODI3ZDcyYyBsZWdhY3ktdHJ1bmsKKzI5ODg0IGY3MTAxNzAyMmZjZWNjNjJlZmM3NTY3Y2I5Mjc0NjNhOWQ2ZmNjNjQgbGVnYWN5LXRydW5rCisyOTg4NSAzZmE2ZGVkMGExZTk0ODBmZTNiZDgzN2I1ZWQ1YTY5Y2JhNzQ3MjhkIGxlZ2FjeS10cnVuaworMjk4ODYgNTQ0NzI3ZDQxZjU2ODdmZWM5NTc5ZWVhZGEyMzUyODVhMjNiYjI0OCBsZWdhY3ktdHJ1bmsKKzI5ODg3IDI2OTE4ZTJlZmQxNzdhYTdiOGQxOTJmZTkyMjNiOTRjYTZiNWNkMTAgbGVnYWN5LXRydW5rCisyOTg4OCAxYTA5NGVmMGZjODYyYzQ0YmYwYTFhODY2NjMyNDYwMTBjMDMzM2EyIGxlZ2FjeS10cnVuaworMjk4ODkgZGRlOWM2MmE3MmZlMDNhYjMwYzY0YTkwYjJlZjI0MzAxZjRhMzVhOCBsZWdhY3ktdHJ1bmsKKzI5ODkwIDU2OWUxOTNiZjU5ZmNhNzAzNTE5MjIyZjcxYjE5ZDMxNzJiNGNjYzkgbGVnYWN5LXRydW5rCisyOTg5MSBmMjgzNTUzMTA4NjcwNTViNTE4M2FiYzE3ZDM5N2Y4OGU2Y2Q1ZWNkIGxlZ2FjeS10cnVuaworMjk4OTIgZDU4ODI0Y2ViMzVkNTg2NzlkMzIxMDdjYjQ0NmM0ZTcxZGYxZTU4NyBsZWdhY3ktdHJ1bmsKKzI5ODkzIGJkMDllM2EyZDUzNjQwZTgzZGNhYjJmNDhjMmU1ODExOTM2NzY1OTMgbGVnYWN5LXRydW5rCisyOTg5NCAwMzAzNTUyM2IzODVlZTk2M2JiMjMwN2Q4MmMxYTkyZjcxOWVhMTI2IHJlbGVhc2UyMi1tYWludAorMjk4OTUgMzVmNDQ0Y2E1ZTA1YzM3MzcwMTY3N2EwMzMzNDk5NzM5YzlmZDhmOSBsZWdhY3ktdHJ1bmsKKzI5ODk2IDFlNTE0ZTM3NzYxM2UxNzY4MjYwMTkxYmJjOWFmM2I2ZWJkMTkzNTMgbGVnYWN5LXRydW5rCisyOTg5NyBhYjZjN2IyN2E0Y2I5MTRjZDk4YmY2ZjZjN2M2YTUxOThlZmQ1MWMzIGxlZ2FjeS10cnVuaworMjk4OTggOWQ2YWVkMmU2MGUyOGY2Nzc3ZDY1ZTZlYzA4Y2E2Zjc0YjAzMjEyZSBsZWdhY3ktdHJ1bmsKKzI5ODk5IDRkNDcxNTI2YWNlMTI0Yjk5ZDRiZDEyYzNhNzQwN2QxOWE1Y2M5ZDYgbGVnYWN5LXRydW5rCisyOTkwMCAzZDI4NjlkZTIzMzZjYjEyOTNhMTI5MDEyMWNjMzJmYjU1NTg3MWM0IGxlZ2FjeS10cnVuaworMjk5MDEgNTFkMDA1NzgxYzg2OTE0ZjZhMTdkZDZhZGUxNDk2M2YzZjY5N2YxMSBsZWdhY3ktdHJ1bmsKKzI5OTAyIDYwOWI1ZjM3ZjE0ZmUyYmQ5MWY0ZDljNjE2OGRkMzkyNWQ2ZGQ5NjggbGVnYWN5LXRydW5rCisyOTkwMyA0NTc0YjY1OWVjMzdhYmQ4ODdiMjllNDdiNmE0ODljMTViYWUxZTNlIGxlZ2FjeS10cnVuaworMjk5MDQgNjUxMWIxNmZmZTg5ZmZiZWZiOWY3YzFjNDU4NmZiZTkyNWI0OWNlYSBsZWdhY3ktdHJ1bmsKKzI5OTA1IDAxMDNmMGI3NWZlMjYzNDdlODg2MDhlZGVlOGM2NTRjMTM1OWJmMWEgbGVnYWN5LXRydW5rCisyOTkwNiA0YmVlMzM3OTA5NDBjY2RkZjIzMGEwZDQ5ZmYzN2I0M2EzYTRkNmQ3IGxlZ2FjeS10cnVuaworMjk5MDcgYjA0ODlhNjA1OTdmNzQxNDFjOGM4MTJiZWI3NGYxY2NmZTRlOGU0YSBsZWdhY3ktdHJ1bmsKKzI5OTA4IGFkNzVlZmUyZjBhNjZjN2ZkZDFmMDZhODgwYWRkMjQ5YThkZTRjNzggbGVnYWN5LXRydW5rCisyOTkwOSBjNTIyYzhjNzFjYWIwYzEwZTg1NmM1NzNjMDE4NjFiMzJhNmZlOWI5IGxlZ2FjeS10cnVuaworMjk5MTAgYzZmZmQ4ZTYxY2NlNmRiY2MwZjBhMTM4ZjZlNjU5YjFjNzNlNjk3MSByZWxlYXNlMjItbWFpbnQKKzI5OTExIDZkNTkwNjg1M2E3ZDkwN2U2ODM1NTAxYWY0OTUzZDA2ZTFiYzdhOWYgbGVnYWN5LXRydW5rCisyOTkxMiBjMmJlNGRjMjU0MDU1NDM1ODcwODk3ZTk3MjlmMzYwN2M3MzU4YTNkIHJlbGVhc2UyMi1tYWludAorMjk5MTMgNGEwMTIwOTkyNjkxNmQ5YWI1M2UwMDg2MGE0ZTliMzQ3OGVmNzU0MyBsZWdhY3ktdHJ1bmsKKzI5OTE0IDU3ZDAzMzc1YWVhZDc3YTg1OTk1MDI0OWFiNmZkODZhZTIyYmZkYTQgbGVnYWN5LXRydW5rCisyOTkxNSBkNDQ5NDViODFmZmFlMDA3NzVmMTJmYmE4NWYxN2I3M2Q0ODQ1NDYxIGxlZ2FjeS10cnVuaworMjk5MTYgYzViMTMwNTA4MWRmZDEyOTlmY2E5YzU5NWEzYmI1MTU2NTE2MDUxZiBsZWdhY3ktdHJ1bmsKKzI5OTE3IGFhMGUxOWI2ZTFlNzVhMGM1NzRhYjc3M2YxNThhNGNjYzNhOTZhZGQgbGVnYWN5LXRydW5rCisyOTkxOCBhMzUwYTQ4N2VhYzExYjM2NTU5Yzk1NDZkNTBhMWVlMzE5NzFkNmU4IGxlZ2FjeS10cnVuaworMjk5MTkgMzY3MjUyMjE0ZGFmMGYyNzUyOWMwZmI0YTRhYzdmNTZlZWIyNjhhNSBsZWdhY3ktdHJ1bmsKKzI5OTIwIGMxMjU4YjFhMzZjNmY2OGRmNmMwMTllYWQ5NTM1ZmJhNjk1M2ExZWQgbGVnYWN5LXRydW5rCisyOTkyMSA0YWMzOGYyOGNkMTBhMTVjY2M5MjRjOTRjM2NkYjMyNzAxZTJmM2YyIGxlZ2FjeS10cnVuaworMjk5MjIgNzQyMTM2NzI3NGI0NTQ4MWVmMjcxZGE2MjdkZmM2YTdmNTJmNmI0NCBsZWdhY3ktdHJ1bmsKKzI5OTIzIDc3NzdkY2ViNjZlZTE0NGNjYzU2NWZjM2I1NjY3YzA0Nzg1NTNiNjUgbGVnYWN5LXRydW5rCisyOTkyNCA3YTA5YjM2Y2EzNzljMmMwN2Q2ZDc5MThjMGZmNGUwODdmMjQ0MTEwIGxlZ2FjeS10cnVuaworMjk5MjUgYmRkYzQxMzE1MzM2NTBkOGJkZGQ4NTYxNTBmZjJiM2NjMDcyOGFhZSBsZWdhY3ktdHJ1bmsKKzI5OTI2IDhlYTJlMzU5OTdhMDRiMjA1NDMwZTgxNDRjMmU5YzAzNTUxM2FmNTkgbGVnYWN5LXRydW5rCisyOTkyNyA4Yjk4OGEwOWRlOTZkZGE2NjlhYzk3NTBhZmUzNjkyZWUxNzBkY2RkIHJlbGVhc2UyMi1tYWludAorMjk5MjggY2EwMWYzZGU2NjRlOGI2MDkzMTI5MTk1ZDY0NGY1OTdkMDI1Nzk0NSBsZWdhY3ktdHJ1bmsKKzI5OTI5IGNiODVhYWU3ODk4MDJhZDY3YTY1NWVjNzRiZDdjOGUwMTM5MDBjMjUgbGVnYWN5LXRydW5rCisyOTkzMCA2MGU1Nzc5N2I4ZTYxYTMxMWNhYTI5ZWE2NGNiNTY4YmVjNjBjZjg4IGxlZ2FjeS10cnVuaworMjk5MzEgMjcyMDRmMDcxMmEyNmVlOGM0NThjZjkyMWY1NWI5NjhiM2Y5MzA2NCBsZWdhY3ktdHJ1bmsKKzI5OTMyIDVjN2EzYTE3MzEwZDFhMmE4ZDM2ZjczZTMwMzlhY2VkNjZkMTNiM2MgbGVnYWN5LXRydW5rCisyOTkzNCA0OWY0OWFlYmY1YzIwYmUzMmQ4ZTRjYzYyYjkxMGZmNjc3ODcyOTE5IGxlZ2FjeS10cnVuaworMjk5MzUgZTUxY2JkY2EyMDg1YmE5NzJhNzdlZmZiYzgwY2JiNmZjMzIzNjkyZCBsZWdhY3ktdHJ1bmsKKzI5OTM2IDAzYWZkYTlhZDA5MDhhM2ZjMTI4ZTgzZTNiYjIzNjA5NjNlY2UwMzcgbGVnYWN5LXRydW5rCisyOTkzNyBkZDgxN2JiMzY0NmJjYjkyZGRkOTRkZGMwNDNkYTY0NGZhY2RjNjYxIGxlZ2FjeS10cnVuaworMjk5MzggMzdhMTc4YzBmZDU5ZjJmMjQzMmU5OGM1NTdiZTg5MDMwZmZmYTczYiBsZWdhY3ktdHJ1bmsKKzI5OTM5IGRkYmIwNTdlNWFiMzE1YmNlOTQ2MWQxYzA2MjY5MGQ0MzhhMWY0YTEgbGVnYWN5LXRydW5rCisyOTk0MCAxNTk1N2I3ZTQyNDc5ZTI5OTlmZDgwZTQ5ZGYzNzUzYTViZWUzYTBiIGxlZ2FjeS10cnVuaworMjk5NDEgYzg4ZjZmZmYxYzNmMWM3ODE3MzY0ZDMzOWQ5YmE4ZTEzMjFiODZhNiBsZWdhY3ktdHJ1bmsKKzI5OTQyIDE0ZmMxODczMzRjNTgxNWE5OGUzODFkMGJkMWU3YTE4YTRmNWM4NDkgbGVnYWN5LXRydW5rCisyOTk0MyBlMWEzMzEzNmI0ZTI2N2JiZjQ5ODliYzMzMzMzNjI2NjY3Yjg1YjEyIGxlZ2FjeS10cnVuaworMjk5NDQgNDE4YTdlYzkyNTk5MzBmZmY4NzM1NzM0NTUzNTVkM2RhNzQ2Y2RkNyBsZWdhY3ktdHJ1bmsKKzI5OTQ1IGE1NzNhZjVkYjgwNzQ1MmVhYzc0YzcxNmVhMmY5ZWE3ZDlmMDI3ZmQgbGVnYWN5LXRydW5rCisyOTk0NiBmYmIyNGNkNTQ3NjZjZTc3YjkwZTMwNWJhZTUwYzY5YmMzYjA5NGQ5IGxlZ2FjeS10cnVuaworMjk5NDcgZjc5ZWJiYWE0ODMzNGQ1ODJlZGRjZGQ1YWI4MmQyN2FkZGNhMTQzNSBsZWdhY3ktdHJ1bmsKKzI5OTQ4IDk1ZWRiNDhkYmZhMTZmNjNlNjgyYmU4YjBkM2IxODA1NzA3ODNiNjEgbGVnYWN5LXRydW5rCisyOTk0OSA5OWM3OGNmOTU2MTA1MWE5YTAzMGE1Y2VhZGMwNGM2NjE2ZWZlYzg5IGxlZ2FjeS10cnVuaworMjk5NTAgYjhmZmZiYmQ2ODMyNjYzNmRkZDY2MWI0ZTNlOGMxYzhkYTEzNGI2YSBsZWdhY3ktdHJ1bmsKKzI5OTUxIDA2OTBmODFjY2U3OGJlNzRhMTA4MjBjMDk5Y2VkMTVkYjYzZTczMGYgbGVnYWN5LXRydW5rCisyOTk1MiAxMzgzODUzMGY2MTk1NzQ0N2Y5ZDk5YTA0MDA4NDhkNTI2ZDBhZTVhIGxlZ2FjeS10cnVuaworMjk5NTMgNmM0NTk4NWE4ZmRiZmYzYWExNGQ3NjM0NTdiYjg2NjQ2ZTNmYjIyZiBsZWdhY3ktdHJ1bmsKKzI5OTU0IGYyNTViM2Y1ZTkxMzYxYzQ0ZWFjMzJlMWZmZWFjMjI2NjA3ODZhODggbGVnYWN5LXRydW5rCisyOTk1NSBlMDc5NDhkNWNmNjdjNDVkYzdmODgxOThiMjkxMDRiYjhjNGM4NWI5IGxlZ2FjeS10cnVuaworMjk5NTYgNzQ2OGI2OGU5ODI4NmY0ZWMxYWMxN2RlM2JmY2NiNDBmOWNjMGJkZCBsZWdhY3ktdHJ1bmsKKzI5OTU3IGQxYjRlNzAxNmQ4OGE1MmViOGI2MmNkNTQ3Yzk4YWFhZjcxMWQ2MmMgbGVnYWN5LXRydW5rCisyOTk1OCA3YmEwNzJkYjM4MjhmN2QzYWQ5NjI2MGM2YjRhMzg2M2FjZmU4MWQ3IGxlZ2FjeS10cnVuaworMjk5NTkgYjI2OGE2ZTg1OWNiN2IyODY0OWNlZjk4YWE4ZGQzYmQ5YzYyZDg5MSBsZWdhY3ktdHJ1bmsKKzI5OTYwIDI4ZWZlMTZhOGI3ZGY3YWQwZTk2NGRjMjgzNDZjNTRhNWViZDQ2YTIgbGVnYWN5LXRydW5rCisyOTk2MSBlMjZhMjA4ZWE3MWI4MzU3MTZmYTAzYjVlNWYyZDc0ODFlYjQ0NzUzIGxlZ2FjeS10cnVuaworMjk5NjIgMGY4NDhiMDYxNDZmMGM5NzU0NjdkYTAxNDhlNTU0NGRkODAwY2U4ZCBsZWdhY3ktdHJ1bmsKKzI5OTYzIGI0Y2U2YWMxN2Y2MDc5ZTY2ZjM0MjFhOGYwNjViMDdkMDgyZTQyM2QgbGVnYWN5LXRydW5rCisyOTk2NCAyZjQwZmE3OWI1OWE1ZjI3OWMwM2Q3MWFjYzBkMWZkOWRkOGE0M2QwIGxlZ2FjeS10cnVuaworMjk5NjUgYjhhN2M0Y2YzZTZkMjYwMDU5NzIwZWNjYjU4MjA3OWFhYWYzNWNmYiBsZWdhY3ktdHJ1bmsKKzI5OTY2IGMxMzVmYjJiYjgyNWFlODA4NWIyODFmYzY5Mjk2ZjJkMzNhYmU3NzUgbGVnYWN5LXRydW5rCisyOTk2NyBhNTZlMGIyNTE3YmQ4MzU2NGE4MjNkNjliNzIwZjZiMWFkMTMwZmY1IHJlbGVhc2UyMi1tYWludAorMjk5NjggYWY0Njk4ZTU5MWVjYzhlMjk4NWIzZTkxM2MyMGQyZmQ0MGVlYWQyYSByZWxlYXNlMjItbWFpbnQKKzI5OTY5IGUwYjU5NjA2MDMxM2U2MzcwOGY3YTI5NGU1YjAwZmVmYTQ0MTYxNGEgbGVnYWN5LXRydW5rCisyOTk3MCAyMzhjYWM5N2QxNjU4NGJlMzE1NWI3YTRlZDQ0NGM0ZTY2YWY1NDE5IGxlZ2FjeS10cnVuaworMjk5NzEgYjMxYmQwMDRmNDMwYzczMzg4YTA5YzczYjBhODIzZTcxYjYwOGQxOCBsZWdhY3ktdHJ1bmsKKzI5OTcyIDNmODAxOTI3MzU0OWVjZjJhODllOTZlYmRjNmZkZmNmMDM5YmIwMGUgbGVnYWN5LXRydW5rCisyOTk3MyA1NDY3YzZlMWY1NDFiMDRmZWI1MDE3Mzk4NzRlN2ZjMDA2Zjg3NjY0IGxlZ2FjeS10cnVuaworMjk5NzQgMjc3NWRlMzVkZDI5ZDQ5Y2VkNTA2ZDZiNzJkMGFjNzE1YTc2ZmQxYyBsZWdhY3ktdHJ1bmsKKzI5OTc1IGYwNzcyYmQ3Y2M0MDEyYzIwZjg3NGY4MTNkODkzMGM4NDg4NDZmYWQgbGVnYWN5LXRydW5rCisyOTk3NiBmOGQxYzY4MjBiZmFlYzUzODlkNzcxOTY2MTc1MjQzZWRlZTRhNDZkIGxlZ2FjeS10cnVuaworMjk5NzcgNzZmNzliYjM2ZmM3NzNkYzkxYWU0MTM5N2ZkNWU3ZWMzY2FkNTQxOSBsZWdhY3ktdHJ1bmsKKzI5OTc4IGNkMWZlNGI1ZjdmZmNjMjNlZTljOTJiOTYyNDY1YTkyNWUxZGI0OGEgbGVnYWN5LXRydW5rCisyOTk3OSBmODYxMzBmNDViZjc1MGQ4ZjliZDg4ZDVlMjRkYmQ2OWQ2MzkxZWU5IGxlZ2FjeS10cnVuaworMjk5ODAgNjcxMzI3MTk1ZGMzMGVhNWQyYzQ3ZWIyOTQ5NTcyNjA2MzYwNjcyMiBsZWdhY3ktdHJ1bmsKKzI5OTgxIDgyNTQ0NWY5ZDZiOGIwMmM4ZWJjYTIyMjc1YTgxY2YxZGY0YjA1MGYgbGVnYWN5LXRydW5rCisyOTk4MiAwMDE1ZDNmMTg5ZTE0OWEyOWI2NmE1MjE3NWE2ODQwNGQyZGNjNzM3IGxlZ2FjeS10cnVuaworMjk5ODMgZWRhOGU2ODk4ZGQzZWU3YzExZTMyZDBlOTQ4ZDdhNWYzYWFkZDdjZCBsZWdhY3ktdHJ1bmsKKzI5OTg0IGE5YjRiNmFhMTIyMDI3NzRjZTQ4MzNlM2QyZWIwNWRjMDA0OTBhNTAgbGVnYWN5LXRydW5rCisyOTk4NSBmYTQ1MzJlZjk5YzlhOWYwODgzYTJiMTFiZWIxYTliNDg4NjM3YmYyIGxlZ2FjeS10cnVuaworMjk5ODYgZTkyM2Y2ZDNiNGEzMzA5MTc3MTdmZGI2OTczY2UwMDI4ZTU3YTA4YSBsZWdhY3ktdHJ1bmsKKzI5OTg3IDllNGM4MDM0MGZhMWQ5NzU1ZWYyY2Q4M2ZiNThmYjIzMzM5ZDYxMWUgbGVnYWN5LXRydW5rCisyOTk4OCBmNDBhMmQzYTJhYjU1MzcyYTVjZjZmMmQxMjRkMGY4NzAwNTliY2Q1IGxlZ2FjeS10cnVuaworMjk5ODkgMmQ0NGFiZTU3YjQyNjM4NDBkY2Y4MDU4OTQzMmNjZTMzY2Q2MWRjNyBsZWdhY3ktdHJ1bmsKKzI5OTkwIDM3NmJkMzU3YzRkNWFlNmQxNjdhMmZhZDdhN2Q2MjZlNTRlZjA2OTQgbGVnYWN5LXRydW5rCisyOTk5MSA1YTllNzA2NGM5MjM0ZDEyN2QyMDg0N2IwMzk5ZWMzMWQwOWIwNDRlIGxlZ2FjeS10cnVuaworMjk5OTIgNjQzMTAwMTcwYmRlOTFmODY1ZThlYzNlODA0NTYwZTQ0NmJjZGM2YSBsZWdhY3ktdHJ1bmsKKzI5OTkzIDUwYzYzM2E4N2UzNTU0N2YxYjNkOWNhMGEyYzljN2I4YjM4MWI1MDAgbGVnYWN5LXRydW5rCisyOTk5NCBmZDZmYjczZmIyMGZkYTFmYzk4OGU5ZThjY2Y0MDllN2RmNjczYzc4IHJlbGVhc2UyMi1tYWludAorMjk5OTUgODUwNDU5MWU0YzYzMWI0NDc3YWEwMWM1YTBhNTYzZjkwMGQxM2Y5ZCBsZWdhY3ktdHJ1bmsKKzI5OTk2IDk0YzU1M2ViODhjM2E1Nzc5MmNkOWU5ZjdlYTY0MjQ4MTI1MjdkNTIgbGVnYWN5LXRydW5rCisyOTk5NyAwYjY2ZDRlOWY0ZjQ4NTk2NzliNWI0MDU4MGRlMzA0MjIyZDhkMmZmIGxlZ2FjeS10cnVuaworMjk5OTggMTdkMTIzZjMzNjExMDYwMDU4YWE1NGRmZjAzNjUyYzY3ZDNmODhkYSBsZWdhY3ktdHJ1bmsKKzI5OTk5IDc5ZjkwNjNmYjU4ZWNiMjhkYWI5ODRiMDhmMDc4YzdmZjE2MjQ0NzQgcmVsZWFzZTIyLW1haW50CiszMDAwMCA0YzE2NDI4ZmJjZDgzYzVmMTcwMzkwMjY2OGRiZTA5YWM3MjMyYjQwIGxlZ2FjeS10cnVuaworMzAwMDEgYTVhODczNTcxMWU4MTZmODUxZDQyYmRkZTg0MGIyOTBlNzVhZGM0YSBsZWdhY3ktdHJ1bmsKKzMwMDAyIDdhYmE4NTljZWU1NDUzMjdjODhlNTU0ZTVhZTMxYjMxMzViZTA0OGMgbGVnYWN5LXRydW5rCiszMDAwMyBkMmQ3ODE3ZmNjYmJiYWUxM2Q4ZTkxN2U1MjJhN2U5YzYzMDdhMzExIGxlZ2FjeS10cnVuaworMzAwMDQgOWZiOGFhZGU4ODdmODU1Y2ZkMjViMTcwOGM4MDcwMzEwNzllYzgzZSBsZWdhY3ktdHJ1bmsKKzMwMDA1IDE4ZGNmODBlNmY4ZGVkZDRlMWMwOWZjZGFmNWUyNjcyNTgxYjJjOWIgbGVnYWN5LXRydW5rCiszMDAwNiAzOGZlNWViNmFjMjU2NzIxMjYxNzllZTJlMDI3OTNmOWU0NWU1OTIzIGxlZ2FjeS10cnVuaworMzAwMDcgMzk4MWNmMmE1NzMwNTM0ZDg5NmRjNzRkYzNmYmJiY2U1OTM5ZDA1OCBsZWdhY3ktdHJ1bmsKKzMwMDA4IGI1ODM3YjhmM2IyYzRjMmI2YjAwNWVmZjI3NjdjYTEzZjUxZWJiYzQgbGVnYWN5LXRydW5rCiszMDAwOSA4ZTE1NjdkYmNiYTg5M2ZlNjZiM2MwOTMwNzlkM2Q2OWNjYzcwYzBhIGxlZ2FjeS10cnVuaworMzAwMTAgNjE3N2ExM2U0YzE0NWE0MGQxOGYyY2JhMGVmZTRjNGVmZmVkMGFhZCBsZWdhY3ktdHJ1bmsKKzMwMDExIGQ2ZDUyMjJiN2U1NTUyYTkyZTdhMjBhYjU0M2FhZGU3OTI3ZjY3ZmMgbGVnYWN5LXRydW5rCiszMDAxMiBjYTZmYTY5NzExYmI1ZTBlMmRmOTY5ZjNmMDJhN2E5ZDgyOTcyMzc5IGxlZ2FjeS10cnVuaworMzAwMTMgNjFlMmI4Y2VmZDg2NzAwYmYxZGNmMWQwNzNiZTAzY2U3YmJmM2FlMCBsZWdhY3ktdHJ1bmsKKzMwMDE0IDZlYTc4NjUyODM5NWFiNzQ0MDc5N2E5MjNkNDdiMmIwYTNkN2FjNjkgbGVnYWN5LXRydW5rCiszMDAxNSA5OTdmYTAyMjQ0YmFjMmMyYWQwNjVhNjlkODNiMWIyNzY3MzZlYmQyIGxlZ2FjeS10cnVuaworMzAwMTYgMjYyMTk2ODMxOWYwMzQ0YTJmYzE3OWUyZTcyOThhYzQ2NTUxZmI5ZiBsZWdhY3ktdHJ1bmsKKzMwMDE3IDBlNmUzOWZiOWNkNzMyYWQ2ZGQwMWM4ODQwMjFkNDAyNWU2NWQzZjkgbGVnYWN5LXRydW5rCiszMDAxOCA5MTBmYjY2YzNiODFjYmNlM2I2NThjYTJmYjJiNjE5NTFiZDk4YTVkIGxlZ2FjeS10cnVuaworMzAwMTkgZTQyNzMyZTI4OWI5YTQxNmRjYzY2NmY0ZDNlNmQ5YzhhMzRjN2Q4NCBsZWdhY3ktdHJ1bmsKKzMwMDIwIDU4NDQwZDBiOWI0ZWE2YzdjNmJjYzgyZDlkMmVjYjU1MmFlMjlmMDYgbGVnYWN5LXRydW5rCiszMDAyMSA5NzU0ODJkNWViNWNlNzk0ZDUyMTNlNDgyOGI5NTA2OGU1N2VmM2E4IGxlZ2FjeS10cnVuaworMzAwMjIgOTk3MGQ3Nzk4MGEwZTJmYjkzOWM5MDk5YWI3MzQwNTQzOWJjNDQ0MyBsZWdhY3ktdHJ1bmsKKzMwMDIzIDhhNzVjNjZiZmExNGRlNGJhNzJhY2M1YTA0NDllZjlmYTQ2MDBjMjggbGVnYWN5LXRydW5rCiszMDAyNCAwOWM3ZWQxYjdhODczOWQ4Mjc5NjcyMjhjNjAxNGRkNzhkYzc2MTQzIGxlZ2FjeS10cnVuaworMzAwMjUgNjg3YjRiMTY1MjY4Yzc1OWZkNDc3ZTI4OGViODU1MGJiNjIyMGE5NiByZWxlYXNlMjItbWFpbnQKKzMwMDI2IDY3OTEyZDgzNzk5ZjczYzBjZTk1NzE2NGI5MDFkMjRkMDZkYmQ4YWIgbGVnYWN5LXRydW5rCiszMDAyNyA4YjM2MDFhNjIzMzYzMzJkZTI0YjA2YjM0YmZmNDU3ZTk1ODY2ZTI3IGxlZ2FjeS10cnVuaworMzAwMjggYjljOTEyZTJjM2MwMDYzZGM5MGI1NDU1NDA1MWJjY2FhODgxODRkNyBsZWdhY3ktdHJ1bmsKKzMwMDI5IDBjOTk1Y2QwNzAyNjc3MTk2MDNmYTcxM2Q5NWNlYTQ5M2NmZjJjMWYgbGVnYWN5LXRydW5rCiszMDAzMCA0ZTZhYzJmZTY4ZjBiY2E4ZTNmMTkwNjA5YWE4ZjAzNzkxZjg2YjdkIHJlbGVhc2UyMi1tYWludAorMzAwMzEgYzg4NGE2YzQ3ZTA2MGU4YjFmZjAzMDM5ZWU1NGI5NTYwY2RmMzljMiByZWxlYXNlMjItbWFpbnQKKzMwMDMyIDRiZWJmMWExOTMxOWM0MTVjZTkzYzNkZDdjMDE0MzhlNDBmNmQ3N2UgbGVnYWN5LXRydW5rCiszMDAzMyBhMzZkZmZkNzUzMDA5YjhlZjNlZTkyYTNkODEyNzBhNTk3ZTJmODg2IHJlbGVhc2UyMi1tYWludAorMzAwMzQgMjQyYWQ1YzU5MmNjMmFmZGE4NWRhMGJjMjkzYTFlYWQ0MmI5ZGI4NCBsZWdhY3ktdHJ1bmsKKzMwMDM1IDRiZTYyZGM5YTNlN2Q3NDkyNjBjNDMxNDhjNzI3ZGY1NzVkMDc4YWUgbGVnYWN5LXRydW5rCiszMDAzNiA3MDFiNzk3YmJkYzhmYjQ0NjBkMGUzNTMyY2MwYzE0MzEyMmE1NjY5IGxlZ2FjeS10cnVuaworMzAwMzcgMGRiZjk4ZWUxMThlMjY5NTNiNjE3MWM0ZGRiOWE4NGJhNDVlYmM4OSBsZWdhY3ktdHJ1bmsKKzMwMDM4IDhmNzQzZWJlNmM2NjMyYjAwYTNjYjJlZjEzN2NjNjc0MmZkZWQ2YTggcmVsZWFzZTIyLW1haW50CiszMDAzOSAxMmJjNGEzZTQ1YWY4YTI0YzFiOGVjZmViODZkYjg1ZGQ3MmI3MzQ4IGxlZ2FjeS10cnVuaworMzAwNDAgODUxYzYyOTIwNWQyZjNmYWUzMmE4NDQ0OTg5MzQ4ZDZlMDk4OTg1OSBsZWdhY3ktdHJ1bmsKKzMwMDQxIGI1NjZiZThiZmMyM2M3OTAyNjRkZTBjOGJkMjUxZDM1NzFkYTQ0YzYgbGVnYWN5LXRydW5rCiszMDA0MiBmYTY1Zjk0ZGM0Y2RiYzc0NTkwZjU4MDg3NTAxYmQ0MWJkMWUxNTRjIGxlZ2FjeS10cnVuaworMzAwNDMgYTlmNmMwMDZhYTQ1ODg2OTA5NmM0MzhmNTMxZmVmY2NlNGI1ODhkNyBsZWdhY3ktdHJ1bmsKKzMwMDQ0IDcxNWUyODg4ZjM3N2ZiOTJlZDIxM2ZjNDU5Y2FkYmNhZDA2NDg3NjggcmVsZWFzZTIyLW1haW50CiszMDA0NSAwNjAxYTkwNTU4ZmRiYWYzOWVjYmQ3ODZlYWI2OWY4NmI1MTU2MzQ5IGxlZ2FjeS10cnVuaworMzAwNDYgMzQyYzM0YzQzOGEyNjA4YTE1NTQ2NWZhMmFlNDgzNjA0YzZlYTVlOCByZWxlYXNlMjItbWFpbnQKKzMwMDQ3IDgyYjlmNWM3ZDAxYTE0NjYyN2ZlZTY4ZjRhYmE0ZjVhYmFkZjgxYTUgbGVnYWN5LXRydW5rCiszMDA0OCAyYWJhMWFjNDc0NGM5Njc5Mzk1NTJmZWU4ZGJkYjU3ZjAwMjVkZTgwIGxlZ2FjeS10cnVuaworMzAwNDkgY2I4Y2ZhZGY3NWEyN2JmOGI1M2UzYTA2OGIwNzk4YTFlOTU4YTU5MiBsZWdhY3ktdHJ1bmsKKzMwMDUwIGQ3NTVkNDI5MmYzZmZiMTJmYjgxN2M3MDNlMjI2N2ZjNzlkNmUzNTAgbGVnYWN5LXRydW5rCiszMDA1MSAyOWU4ZGU1OTc1NmE0NWI2MmVkZmNiODgyNjhiNTBkOTEwZjdhYzQ5IHJlbGVhc2UyMi1tYWludAorMzAwNTIgMWQ5ZTMwYzA1Y2RlNGNiMjY5YWMxNWRkZWM2MTdhZGUwNGJkN2I3ZSBsZWdhY3ktdHJ1bmsKKzMwMDUzIDkzYjVjYTk0MjNlYjI3OTViZDdhMzE4MTMzMTEzYjk1N2ZkNzBhNTIgbGVnYWN5LXRydW5rCiszMDA1NCA3YWU5YzM2Y2JjYjY2YTcxOWJlY2E4MDM0OTBmMGI4MjcyZWEzZmUyIGxlZ2FjeS10cnVuaworMzAwNTUgNDA1MjM5YTdlMGQ4YmM5NDg4YzdiODZiYzFhYzJiZWIxNjU1MWE1YyBsZWdhY3ktdHJ1bmsKKzMwMDU2IDhjYTgwODQzYTY3MTYxNzU5OTcyOTBlOTZhZGEwMmNhZDk3NDMxY2IgbGVnYWN5LXRydW5rCiszMDA1NyBlODk0MGQ0Y2Q4Y2FlN2FlMzZmY2ZiZmZlNjY0NzNlM2RlYThiMTZlIGxlZ2FjeS10cnVuaworMzAwNTggZDRiNzY4MTdjOWU2M2M2NTEwM2Y3YzQzM2U5MzcxNTczZmFiMjYwYSBsZWdhY3ktdHJ1bmsKKzMwMDU5IDkyMDZiMDA0ZjE1MmM0M2Q1YTFlZGZjMmQyM2IyZjBmNTRhYmFkNTQgbGVnYWN5LXRydW5rCiszMDA2MCA5NTI2ODdlYTljYjEyZDk4ZDY2MDFlNGM4MDJjZDczNWM0YTE2OWE3IGxlZ2FjeS10cnVuaworMzAwNjEgODk5MWY3ODgxN2M3OTAwNGEwYzgxNzNmYzk0Y2IxNjJkNjMxOWMxOSBsZWdhY3ktdHJ1bmsKKzMwMDYyIDRlOTRhYTA3Mjc2ODYyMDU1ZjQ1NDliMmI5NjZjOWQxNmU4NjRkMGYgbGVnYWN5LXRydW5rCiszMDA2MyAzZjQzODNhMDRiNjI1NGIzNmEyZTMzMDJmNzdkOGJkNzc5MDM1M2VlIGxlZ2FjeS10cnVuaworMzAwNjQgZTY0NDI1YmI5NGQ4OWEzMjBjOTAzYmI3ZjExMjkyNzczM2IyZWQ1YiBsZWdhY3ktdHJ1bmsKKzMwMDY1IDgxMDMyZTk3YmEzY2EyMDAyMWQ1YWY5Nzk5ZjFiMTAyMGQ5MjgxMDggbGVnYWN5LXRydW5rCiszMDA2NiBmNWI0ZTE3NzQ5NjE3YTk2MDEwNTc3ODUyNDFjZWU0YTZiZDgwMDdjIGxlZ2FjeS10cnVuaworMzAwNjcgZjlkNTE2YzYxZTdiOTMyY2Y2NWY3ZWE4ZjcwNTk4MTQ5NTE5NTEzOCBsZWdhY3ktdHJ1bmsKKzMwMDY4IDYxNWEyNWE2ZWI1YmFhYzY2NmZiNTQ2NTRiYTUzZTliYTUwNTFjMjcgbGVnYWN5LXRydW5rCiszMDA2OSBjMjM0ZjQ4ZGUxMzhmNDk5YjBkNGQ5ZjM3NGNlNzUxYmUzYjRhNTI5IGxlZ2FjeS10cnVuaworMzAwNzAgMGM2NDZiYWVlYzU4MjMyNWJiMWQ5NDBkM2Q2MDkxMGIxNmVkMzI1ZCBsZWdhY3ktdHJ1bmsKKzMwMDcxIDIxMTAzODUwNWU1NmM0ZWI5NzNhYmI1NmEwMmUxMjNhOWIzNzcyYzQgbGVnYWN5LXRydW5rCiszMDA3MiAwNTYzODc3Njc4MzI1NTk4MDFhYjUwMzk4ZmNkYjNhYTViMzM1NmNhIGxlZ2FjeS10cnVuaworMzAwNzMgYzM1NzY4ZDc4ODNlNDg0N2U5ZWM2MGJkOWIwYjYyZjI4YTI1YTIzNCBsZWdhY3ktdHJ1bmsKKzMwMDc0IDMwODRiZjhiZDExYzBhYTYwYTNmMzYxOGYxMDRjOGMwN2RlZDI0MzQgbGVnYWN5LXRydW5rCiszMDA3NSA3ZGRlYTRkZmE1MTlkM2FkOGU2MDJhOTg0YjFlZjczMjI3NTcxYTY2IGxlZ2FjeS10cnVuaworMzAwNzYgNTZkYmQ5MDc5YTEzZWQ2ZWY3NDFhZjU2NDdhYmIyMzQ2MjAxYWRiMCBsZWdhY3ktdHJ1bmsKKzMwMDc3IGVjZWE4NDEwMTc4ZTA2NWIxMjc0MGZlMzE3MWY2MWY3ZDVkMmYxMDkgbGVnYWN5LXRydW5rCiszMDA3OCA3NWJmYzI0ZmQ3NDg1MGQxN2U5NTIzMjVhYjU1ZGQ1Y2M3NTZhNjAwIGxlZ2FjeS10cnVuaworMzAwNzkgY2MwNWMyYzg2NjBlMGM2OGFjY2JjNTZiZDhlNjg4NzJkZTU1ZjE2OSBsZWdhY3ktdHJ1bmsKKzMwMDgwIGMxNjNlZDE3ZjhiYTM4NWFhODdjMDM0OTJjNTRjZDdhMGU1MTZkY2YgbGVnYWN5LXRydW5rCiszMDA4MSBiZmIyNjY0Y2RiMWJlODdjMDFkNjFkZDQ4YjA4NTIyMWFjZjYxMDM3IGxlZ2FjeS10cnVuaworMzAwODIgYWY1MTE5YmUyMjFmNDM5OTkzZjNjZDQyYmM4MmMzNWVhODJlMTQxOSBsZWdhY3ktdHJ1bmsKKzMwMDgzIDM3OGNlMDIwZDllNjhjNjc1ZjQ2NmUxMmViMmE0ZTU1Y2QwZTI4YmIgbGVnYWN5LXRydW5rCiszMDA4NCA5ZGIzOTZiY2U0ZTc1ZjIwNWI3NDMwMmVmMzhkZmM0MTY0MWExNjIzIGxlZ2FjeS10cnVuaworMzAwODUgZTM5ZTc0YWVhMmZiOGE3MzQxNGQ5ZmRjNWQ2NGUwZTdlNTljZTgxYiBsZWdhY3ktdHJ1bmsKKzMwMDg2IDE0ZjUzYjZkN2Y1OGIyMDRiNmRjMzhiZTU4ZjliZTNiM2E2NTRjM2IgbGVnYWN5LXRydW5rCiszMDA4NyAyZmFiMGI2NDg4YjUxMGFjOTM2MzI5OGY1MmNlMTA1MDU0YjI1YTM1IGxlZ2FjeS10cnVuaworMzAwODggNzRkMWFkNjFmODQzY2IyZmU0ZThlMmJjMDM4Y2I4NzVmZjZiNGEzYSBsZWdhY3ktdHJ1bmsKKzMwMDg5IDg3NzE5OTNjOWFhY2FkYTQwZmI4MTIyYzQwMzU5MmM2OGE1MmRiNGMgbGVnYWN5LXRydW5rCiszMDA5MCA5N2Y4MzU0MmY4ZWVmYWFlMWRmNDFiYzRlOTU3OWRiOTFkNGFmMDEzIGxlZ2FjeS10cnVuaworMzAwOTEgMjhiYzJkM2FmOTFkYjY4OWQ0MDgwMTgyNzVjOGY2MjMyNTY2YjgxNCBsZWdhY3ktdHJ1bmsKKzMwMDkyIDJjN2JkYmI1MGU3NjI4Y2E1MDMxM2RiZDFhMDVkZWVkMDA4ZjI5MGEgbGVnYWN5LXRydW5rCiszMDA5MyAwMjc4NTI0OGUwMGE2ZjQ0YzdmMTU2YjBlZDI5ODExZDJjMTQyMTdkIGxlZ2FjeS10cnVuaworMzAwOTQgMjBlMDc1NWYzNTU0MWQ2OWVlNjQ5NzcxOTEzZTk2MDdiMDkxOGNlMSBsZWdhY3ktdHJ1bmsKKzMwMDk1IDNiZTRmNWQzNzdkOGIyYzU0YTc2NTg5OGJlODU0YjhiMDhjOTVkODQgbGVnYWN5LXRydW5rCiszMDA5NiA5ZTc1MWVlZTgxZjUwNGU0NTI1ZTY0NGI4MjAxNGE4NDk1MWViYWM3IGxlZ2FjeS10cnVuaworMzAwOTcgYjYyOTk4Zjk4OTczZTMzMWQ4MWFjYWI3MTJmNDEzZTIxZjEyZjIxNiBsZWdhY3ktdHJ1bmsKKzMwMDk4IGNiOTNkOTI4N2I0ZWFlYzRkZjMwZTg2NGY0MTI5Mzk5MGEzZDA0ZTggbGVnYWN5LXRydW5rCiszMDA5OSA3ZDE5Mjg3NWExMmY3OTkwMmFiZjM2MTllMGJkYWU4NTY1ZDI2NGRhIGxlZ2FjeS10cnVuaworMzAxMDAgMTk1MDdhMWQwMjU0OGViYTkyZDRkOWE0Y2UxZTkzYjc0MTBiYzZiYSBsZWdhY3ktdHJ1bmsKKzMwMTAxIDgwOTZkY2M3YWY2NWJiYjYxMDNjZjZkZjQ3YjE2MmRlMWMwNjRjZjUgbGVnYWN5LXRydW5rCiszMDEwMiA2MzdiMTBiNTJlMDJlNjdmMzQzNjFkY2IwYWExNDBjYWY3OTQwMjZlIGxlZ2FjeS10cnVuaworMzAxMDMgYmExNTc4YmU1NzA2ZWQ1ZTk1ZGIxNzM0YzhhYzAwYzhiN2U1ZGU1NiBsZWdhY3ktdHJ1bmsKKzMwMTA0IGU0MWVlMmI4ZTczZGVhY2VmNmNmMWU2MTc3NGFlNjViNmUzMjJhOGIgbGVnYWN5LXRydW5rCiszMDEwNSA3YmFiZGFlYTdkMTlkN2YzYTFiMmExZDhiOWUyOTUxMGUwMjUzZWI3IGxlZ2FjeS10cnVuaworMzAxMDYgOGRmYzBmYzRjMTRiNTEwMDEwMjIwYjUxZWY4MjQ1YjU5YTcxNmI0YiBsZWdhY3ktdHJ1bmsKKzMwMTA3IDk4MTY0NjY2ZDJhODk3MmE0NzVmMjkzMWUzN2I2MmE5YWEwNDU2YmMgbGVnYWN5LXRydW5rCiszMDEwOCA1OWRkOTI1N2JjMDMxNmY2YWM3NjVjNWUyMDgxYTRjZTI3NzllOGYyIGxlZ2FjeS10cnVuaworMzAxMDkgZDdkNTI1ZTMwY2MwMjBmNjE1OGRmMDVmYmRlODdhZjZjNWRmY2RkMSBsZWdhY3ktdHJ1bmsKKzMwMTEwIDg5MGFhOTNkZDljMzhlNzMyNjhjNDE4MzQ5ZDViYmU2MDIxZGZhZTAgbGVnYWN5LXRydW5rCiszMDExMSBiMGJmMzYwNDI0NGZkNTljZDNkY2M3YTc2ZGIwMzA4ZDkzZWI3MmQ4IGxlZ2FjeS10cnVuaworMzAxMTIgZmQ0NTVkZjU1YjEzNWJiNTMzZGI4YjhhMTZkMmExZTExYjVkNzMzZSBsZWdhY3ktdHJ1bmsKKzMwMTEzIDk2YjhjOGFlNzI2MmVkZDY4ZWU4ZmI4YmUzOGM4MDM3MjJlZTAyZDcgbGVnYWN5LXRydW5rCiszMDExNCBjNjliOGU2MWU2OTViZDFlODlkOGY0MDQ0M2U5NGY4YmM5NzYzMjFiIGxlZ2FjeS10cnVuaworMzAxMTUgMzQyOTk1NTcyNGIyNzkyMmQ2YTdhZWU1NGVhMmJiODQ3NWIwMTk1MyBsZWdhY3ktdHJ1bmsKKzMwMTE2IGZkNmJlODdlNWMyOTdlNThiYjcwM2Y0MDYwMzBlOThhZjgxMThkNmMgbGVnYWN5LXRydW5rCiszMDExNyAwZmY0NzM2MmJiODExNGEwNDZlNzkwYTQwZjg5ODI1MGQxZTlmMzhkIGxlZ2FjeS10cnVuaworMzAxMTggYmI2ZWEwNzkwOTQ3OWE2M2Q2NzNjNzBjY2JlNDg5YzI3OTQzODU1NyBsZWdhY3ktdHJ1bmsKKzMwMTE5IGU3ODNjZGZhMGI0MTlhMWI0MDRiMGVmYmEzOGE1YTZlZTZiMmYwOTcgbGVnYWN5LXRydW5rCiszMDEyMCBkMjMwMjMzOWE4YWQ3ODQyMzRjYzY1YTZlODlhODgxMGQ1MzdiOWE5IGxlZ2FjeS10cnVuaworMzAxMjEgMDJiYTQ2NjNjYWQyMTI3YTYwYWU2YjBhMmZmOGZhMmM2ZDI2OGY0MCBsZWdhY3ktdHJ1bmsKKzMwMTIyIDQxMTg4ZTM4OWM2MTQ0ZjJjMWU5Mzg4YTMwOTNlZGE4YzQ5YzU2MmYgbGVnYWN5LXRydW5rCiszMDEyMyBkMTc2Y2JmZDM3NjU2MDBlYWEzOTU3NzU5ZjQ1MTgxZDlmNmViYjFhIGxlZ2FjeS10cnVuaworMzAxMjQgOTI2N2RmZmZmMzJkMzFkM2UxNjcwZmIyY2Q1NmZlOWY5YmFmMWY3NyBsZWdhY3ktdHJ1bmsKKzMwMTI1IGY4ODNlZDdiOTNjODY4ZGIxMmVlNzQ0NDM4ODVmYzEzODVmNTRmNGIgbGVnYWN5LXRydW5rCiszMDEyNiA2ZWZhODIxNmRiNmE4OTI4MjdhNjFmYWQ2MjczYjc4ZTIzNDAwYzFhIGxlZ2FjeS10cnVuaworMzAxMjcgN2IxZDEwN2U2M2FlNmY3NmE1ZTUyMDA2ZTdhMzhmZDcxNTM4YTRlYyBsZWdhY3ktdHJ1bmsKKzMwMTI4IGNhYTI0NWFmNzc4NjQxOGQ1M2FmODA1YjQzMDYwMDkwNWQ3YmVlYWYgbGVnYWN5LXRydW5rCiszMDEyOSA2ZTJjMmYxMjIxZTUzNTI4YjZjYmM5ZTQ0N2NiMWEwZmRkMGRiYjZkIGxlZ2FjeS10cnVuaworMzAxMzAgNDgzNGY4MzY4MDM2Mzg2ZDdjZjJkMDNhNDhmZjkxNDZjOWM5MWVmZSBsZWdhY3ktdHJ1bmsKKzMwMTMxIGE4MDAwMTVlN2NmMmE2ZGIwOGI2NzYzM2Y2ZDBjMDIwNTE3Yzg5NzcgbGVnYWN5LXRydW5rCiszMDEzMiA2MWIzZDE3OWY4NjhlNzQxNTY5YzI5NjRhYzFjMWI2YTQwNDEwMWMwIGxlZ2FjeS10cnVuaworMzAxMzMgZjM1NmZjYjcwZWFlNTVkMzczNzFmZWZmMDU5MjMzM2RhNzhmOTc3OSBsZWdhY3ktdHJ1bmsKKzMwMTM0IGI3YmYzOGQ0NDU5OGY1NTg5YzA5NDNlODVhYmQ3YmNiZWY0Yzc1NDcgbGVnYWN5LXRydW5rCiszMDEzNSA2M2Q3YjVlMzk2ZmI4OWQxZWU4Y2ZkNzY4NzYwZGFiNjcxMmRkYmQ4IGxlZ2FjeS10cnVuaworMzAxMzYgNDBmOGI2NDhlNzY1OWI3OTE1NDA3MWQyNjQwMmEyMzNkNzk3NzJmYiBsZWdhY3ktdHJ1bmsKKzMwMTM3IGQ5OWUzOGJiNmRjZDM1YmJhYWJlMjdhMWI3ZWY0ZjNhY2JmMjZiZmQgbGVnYWN5LXRydW5rCiszMDEzOCBmODM4YmM5MDU2Y2MzNzlkNTljMmIyZmZlZTVjMDMwZTEzMTg2MDYxIGxlZ2FjeS10cnVuaworMzAxMzkgYjEyZTMyNmI0ZWEyNDdmNGM1NzUxN2M4MTY3YTEwZjFkYmIyODcyYiBsZWdhY3ktdHJ1bmsKKzMwMTQwIGU4ZGMxYTBkNmY0ZDRkMTBhNDBkZjc1NGI5NWQyOTAyYWE0MmQ3Y2QgbGVnYWN5LXRydW5rCiszMDE0MSAzMzhlMDI1ZmRlOGI1MTZlOGVjOWJiZWQ1MjIyZGVkMzlhNWU5ZTkxIGxlZ2FjeS10cnVuaworMzAxNDIgZmUyZDQyMjM4NWIxZmVlNjZmOTk4N2FiNmUwYTk5MjIxYmMwMTZlNSBsZWdhY3ktdHJ1bmsKKzMwMTQzIGNiMDZiZmM4ODc3YjI0OWIyY2Y5ZmZkOTU2ZWM2M2QwZmUxZmVlOWUgbGVnYWN5LXRydW5rCiszMDE0NCA5OGQxMTg1NWI0NmNjZWVmODM0M2JkN2Y0ZjE1NGIzMzI5ODY4YjIzIGxlZ2FjeS10cnVuaworMzAxNDUgZjc2NzE3NzA3YTZkN2EwOTJjMmY0MDJiMGZlYzZiYmIxOTIzYTZkZSBsZWdhY3ktdHJ1bmsKKzMwMTQ2IDM3M2QwYThlZDZiZTY0YTVkMWYxZmRmNGVlMDllYzg3YTNhMjk0NWIgbGVnYWN5LXRydW5rCiszMDE0NyBlZDI4Yjk3NTJmOGQyYWJmOGRlNTRmNzc0YjJkYWJmYzVhMDM3ZDBlIGxlZ2FjeS10cnVuaworMzAxNDggMTMxMjI5Nzg4N2EzZjdlMDZlYTliM2NlOGNkMWRjN2EyNWQ0N2MzOCBsZWdhY3ktdHJ1bmsKKzMwMTQ5IDMwMGY5MjZmMmIzZWI1OGZkNDlmMDQxZTNjNGQyM2IwMWE3OTZiYWYgbGVnYWN5LXRydW5rCiszMDE1MCA4ZGQyNWE2ZjU5MTM5MDRjN2RhODMyMzZmN2ExNzRkNmU0NDRmOWIxIGxlZ2FjeS10cnVuaworMzAxNTEgNWI3MTVjYWQzNGQwODI1ZGMxODMxOGVhMWRiZDRlOTFmZjc3MDhkNyBsZWdhY3ktdHJ1bmsKKzMwMTUyIGM3ZWM4YWQwMjM0ZmFmNGQyMTk3NTE1MDdiNTUzZGQxZjFlZWJjMzYgbGVnYWN5LXRydW5rCiszMDE1MyBiYzkwNTZkODQ3ZWY3ZDQ2ZmFlNTk1NGRiYTVlZjdlMjk2MGI0ZmRjIGxlZ2FjeS10cnVuaworMzAxNTQgZjdkOGQ0OWU4ZjVkZTI3Y2IzYzFlNzkwMTYyOGMwZTY2ZTUyMzgxOSBsZWdhY3ktdHJ1bmsKKzMwMTU1IDQzYjU0YzJiYzRlNjAyMDVkZTA1YWFkNzcwMjUzMGYwYjJkNDg4Y2MgbGVnYWN5LXRydW5rCiszMDE1NiA3OGQ4NzJjZDA2NGMyZWRjNDkwY2Q5YzY5MGE4N2M1NWUzNDNmMjkwIGxlZ2FjeS10cnVuaworMzAxNTcgYWI1MGEyMWI4N2FlYTEyZGYxODExYTBhZTRmNWFiZDgxMWUzNDVkYSByZWxlYXNlMjItbWFpbnQKKzMwMTU4IGJjNjY2MmJhM2E3NzU1YmJhNTY4ZmEyMmNmZmRkM2UxN2UyOWFiYWYgcmVsZWFzZTIyLW1haW50CiszMDE1OSA1NzkxMDE5YjZlNGU4ZTJiZWVhYzRkNGZhYzE2ZWIwNTRkOWM4YmRlIGxlZ2FjeS10cnVuaworMzAxNjAgYzExYTZlMWNlZGUwZGUxOGUxNWM0MWJhOTY1ZDRmOWIyNjEzZGYyZiBsZWdhY3ktdHJ1bmsKKzMwMTYxIDYwNTllNDFiZDc3YTNlNTc5M2E4NWM3NjM0Y2RmY2Y1N2Q3OTZhOGIgbGVnYWN5LXRydW5rCiszMDE2MiBhOTk3NGE0OGE0ZDZjZjlhY2MwZjUyMmEzYTc0YmY2NWIzNmRkYWIyIGxlZ2FjeS10cnVuaworMzAxNjMgYTIwY2I1YWJhYjZiNzhmNWE1Y2NmYjNhY2FkOGUwNzIxNjQ3ODc0MyBsZWdhY3ktdHJ1bmsKKzMwMTY0IGFkM2Y2NmU3ZmIxMDQyMDEzYTk0MWExZjBmZWM0NWZmMmU0MGY3NDMgbGVnYWN5LXRydW5rCiszMDE2NSA2YjM5MDU0OGM2OTgwMDQwYjgwMjFmZGNlMGUzZTg0ODFiMzAwN2RkIGxlZ2FjeS10cnVuaworMzAxNjYgYzc0YjY5YWI0NzQyYWI4NDg0NzRmY2Y1NzhlY2RjYTkyNjgwYjNlZSBsZWdhY3ktdHJ1bmsKKzMwMTY3IDIzMThmNGJiMGJjNWNkODViZWU3NGRiMGUyNWMyMGU4MjFiY2RiMjggbGVnYWN5LXRydW5rCiszMDE2OCAyZTBkYzllMDgyMjI4OTZhMzQyNTg0MzBhOWFjMDAzZTJlODE1ZWI5IGxlZ2FjeS10cnVuaworMzAxNjkgMzZjZDI2NDFlODI2NzRjZmM0MmE5ZTA4N2IwZjBhODYzN2NhMTUyYyBsZWdhY3ktdHJ1bmsKKzMwMTcwIDQxNzNlNDNlZjQwY2NlNjZmNjNkZGRhY2YxZGMwNzIzZDA4NWVmNGIgbGVnYWN5LXRydW5rCiszMDE3MSA5NzUzMzNkNDBiZjgzMmE0MDJhMDZiZmE5NjYyYTY2YWJhMDk4MDE1IGxlZ2FjeS10cnVuaworMzAxNzIgYzQyODZhNmFiMDBjOWUzNWI5YzZhYzI0Y2VhOTdhMmRhZGE4MjFhZCBsZWdhY3ktdHJ1bmsKKzMwMTczIDQ5Y2VlZTAyNmQ2NjNlMjA4OWE0NDdkMWEyNDMzMzA5YzU0OTU5NTEgbGVnYWN5LXRydW5rCiszMDE3NCA1MWU3NDMyMWFkM2Q2MDczZGIzOWY0MDA5N2NmYmMyODcyZjZlODk4IGxlZ2FjeS10cnVuaworMzAxNzUgYTIyM2UyNTU0MTkwMWNlNzc2OGM2Y2VmNWVkNDMxOWM5NjlhNzIxOCBsZWdhY3ktdHJ1bmsKKzMwMTc2IGFmNjYwY2FiMWNiZTkxMWRlOWNlZmVkYTBiNDdkZDkxYTc2OTJjNDAgbGVnYWN5LXRydW5rCiszMDE3NyBlNDA0YmJlZmYwODM3MWIzNWNjNjFmNTUxN2ZiNjQ2NGZlZjFiMzQzIGxlZ2FjeS10cnVuaworMzAxNzggM2VkNDdiMDc4NTA4MTlkMWRhZjUzM2M3ZmJlMTYwMDk2ZDQ1NDYzZiBsZWdhY3ktdHJ1bmsKKzMwMTc5IDQ1YWIzMTEyN2JmOTIyYjk5YTU0MjllOWNkODE2MzE1NjQ5MzRkMTggbGVnYWN5LXRydW5rCiszMDE4MCAxMDFmZTMyZjU2ZmZlYTU0MDhhODAyOGY3MjJkZDI2NTNkNTcxZmQ5IGxlZ2FjeS10cnVuaworMzAxODEgYmZlMzg5NjFjYTQyYzg4NmQ1MWQzNzE4YWY5OGU5NTExYzEwMTc1MyBsZWdhY3ktdHJ1bmsKKzMwMTgyIGY5MWQ3OGUxOWM4NjZmOWU2OGRhNWVkOGZhZmQxYjE4OTIxZmU0OTYgbGVnYWN5LXRydW5rCiszMDE4MyAyZWQzNGYwMWM4MWNhMTJhN2UzZjcwMGIxYzNhODkwMDc5YzQ2MjA2IGxlZ2FjeS10cnVuaworMzAxODQgZDY0MjE0Njk0MDgzYmViZDRkMjg0ZGM5YzBkN2JkNGI2MzU1ZmIyOCBsZWdhY3ktdHJ1bmsKKzMwMTg1IDFlMTcwYTk1YjY0ZmRlZmI4ZmUxNjFhOWIwMTA0MWJmYTE4NDViYTggbGVnYWN5LXRydW5rCiszMDE4NiAzNTkzZjJiOTFkN2Q2MDVlNWM0NTgwOGU4MzQ4ZTgyYzFiNmRiNTkyIGxlZ2FjeS10cnVuaworMzAxODcgODkzMTdkOTNmNjM5NzM5ZTE2NjJjNjJmY2YyNjQ0YmU0NzUxZDE2ZCBsZWdhY3ktdHJ1bmsKKzMwMTg4IGQzNDhiMTdjZWFhZDY5MzYzZjk4NmNjMGY2MjdhYWI3MThkMmNiZDUgbGVnYWN5LXRydW5rCiszMDE4OSBkOTM5YWRiY2E3NzRmMDBkYjlmNGIyMGM4M2QxMWEyNDQ3NWM3MjViIGxlZ2FjeS10cnVuaworMzAxOTAgMDRiM2E5ZjZiZTQxZjRlNDJlNzAxNDhiMjU3MDkzMGNmY2M0YTZiMyBsZWdhY3ktdHJ1bmsKKzMwMTkxIGVhYjZkN2M4MDM0MTkxNzlkMjAyMTkwYjljYTNiOWE2NGMzYTg2YmIgbGVnYWN5LXRydW5rCiszMDE5MiAyZjUyM2FlOTBlMDYwYzg3YjNlNTZhMmIzNDI0YzRmNjJjMmMzMDkwIGxlZ2FjeS10cnVuaworMzAxOTMgZTgyMzI2OTk2NDgxYjIxMDQwMzhhNjA5MzY0MmIwMzg2ZTBhZjc3ZSBsZWdhY3ktdHJ1bmsKKzMwMTk0IGEzNjAwYzRlY2M4YmYyYzIyYWJlNDljNmMxNDUwMzM5ZGU3NGE0NzQgbGVnYWN5LXRydW5rCiszMDE5NSBmNTVmNWUxZTMwYmM5MjU3NTk3YTMwNDUwOTliZjEzY2FiNTA1NjZmIGxlZ2FjeS10cnVuaworMzAxOTYgZGZjYzIwNTdhNzU1YWU3YzZmOWRjYjgwODBkZWFlM2RlMDUxZTVkMiBsZWdhY3ktdHJ1bmsKKzMwMTk3IDUzODQ0N2M5ZDU0M2RiMmI0MDUzNGYyYTRiZDUzOTU3NTc0ZjJhOTUgbGVnYWN5LXRydW5rCiszMDE5OCBhMTJlMTcyNzg1MGFmOWIwNjE1ZmNkOWZkNDRjZDM1NDAyNzkxNTM3IGxlZ2FjeS10cnVuaworMzAxOTkgY2ZkNWE2ODI5MzdlMGM0MzY0OTg0YWU2YWI1ODM1YWJmMGIzZWI0ZSBsZWdhY3ktdHJ1bmsKKzMwMjAwIDkyNGM0ZjIyYmFjNzk0OTFjYzlhOWY4MjE2YWQxYTc3YzY5Y2QyYjMgbGVnYWN5LXRydW5rCiszMDIwMSBhNTQzNjNlYTY5NDYwNTY5MWEzMzA3NGIyYTFhZTkxMTdjNDlkOGRkIGxlZ2FjeS10cnVuaworMzAyMDIgOTAxZTQ3Y2M4Y2FjYzgyMGYzNTUyM2U1YzE2MTBkZTk1ZWY3MDBkNyBsZWdhY3ktdHJ1bmsKKzMwMjAzIDk2NmI4Mjc5ZDFmYWQ4MTQ0YmUzN2IxYzk1MDM1N2ZjODhiZGUxMmIgbGVnYWN5LXRydW5rCiszMDIwNCA0OTY3NzkwNDcyZGJkM2VjNWZhOGJjMDJlMDJlYThjZDM3OWY1N2YzIGxlZ2FjeS10cnVuaworMzAyMDUgYzdjMmIyMjJiYjhhZThkNGM2ZmY1YzI4MjRjOGYyYzQzMGZhZWEzZSBsZWdhY3ktdHJ1bmsKKzMwMjA2IDVmYmE1MWYzNzI5YjJkZGY1ODVmM2E5OTJlOTEyYjg0YWI5ODhhNmEgbGVnYWN5LXRydW5rCiszMDIwNyA0MWJkMzdiZWYzYzc3M2JlYjUyM2RjMDk3N2U3MTJkN2I4YzM5NzM2IGxlZ2FjeS10cnVuaworMzAyMDggOWI0YzAxNGIzYTIxOGU3NmE5ZDk3NjBjN2Q0NTVmNDQ2YTdmYTQ0NiBsZWdhY3ktdHJ1bmsKKzMwMjA5IDU3M2U0ODJlZGVjMWE1ODM2OTE2YzJlYzFhMGJlOTQ0YzVkMWM4ZWQgbGVnYWN5LXRydW5rCiszMDIxMCBhMDNjZTVkOGYyOTc1NGY3NmM2ZmQ2OGM2NWUzMmMzODI2MTU5NWMyIGxlZ2FjeS10cnVuaworMzAyMTEgNzA5ZjkwNTQxNTg1MjE4NzQ4MDdmNmE3ZTAxMmViYjkxMjE3MmQ1MyBsZWdhY3ktdHJ1bmsKKzMwMjEyIGQ4ZmRhNDgxOGJmZDVmNTZhYTUyMDU3YmViZWY1MDE2MGFlZGIyOTAgbGVnYWN5LXRydW5rCiszMDIxMyAxNmFmZjcwNzdlNGJlZTRhYzA5NzBhYWFkMTQ0YzU4NDAxMjFhZWQ5IGxlZ2FjeS10cnVuaworMzAyMTQgMmI0NmQ3MjkyZjI3NzQzMGNmZmMzOGM0YjM2YWE5NjlkNWVjYzVjYyBsZWdhY3ktdHJ1bmsKKzMwMjE1IDZmMWY4NDIwM2VjZjBiMWE1NjU1MDdiZGQwM2M4ZGE4NWFiY2FjZWUgbGVnYWN5LXRydW5rCiszMDIxNiA3OGU4NTdlOWRkNDc2OTA1NWY0ODgxZDNlOGZiOTkxMzFjNDg2ZDI2IGxlZ2FjeS10cnVuaworMzAyMTcgYzY1ZThjYjkxZjRjMzZkOWRmOGI5ZGZkN2FhOGM3YjRmNjNiNmI4ZiBsZWdhY3ktdHJ1bmsKKzMwMjE4IDcyY2YwODlkNjM0YTE5ODQzNDkxMjczMzYyMjVjMWJiZjRlOTkwMDkgbGVnYWN5LXRydW5rCiszMDIxOSBjYWRmY2U2NmQ4NjE5YTZiYzM1NzlkNmEyMmFmOGI3YTU2YzI0NmY4IGxlZ2FjeS10cnVuaworMzAyMjAgMmYzZDZiNzlmMTFiZDNjNGRiZDEwY2FkY2IzODFmYmQ0NWYxYzk5MyBsZWdhY3ktdHJ1bmsKKzMwMjIxIGQwNTIxMTI3MzFhOGUyNWJmMTcyMWIxZjUxYzFmZTY5YTg1OTQ4ZjAgbGVnYWN5LXRydW5rCiszMDIyMiBiMGFjZjVkZTM0MjFjZTBmNmNhOTA0MWJkNzhlMmNjYWMzOTNlNTE4IGxlZ2FjeS10cnVuaworMzAyMjMgYzFjOGJkYzRlM2RiZGNmMGI5YmQwMjJhOGY4NDg4OGZlNTExYjA3ZCBsZWdhY3ktdHJ1bmsKKzMwMjI0IDA2NTg2NDA0ZWM0Y2RhMzAyMGQyNjllNWM3YjIxM2U3OWY3NjZlYjggbGVnYWN5LXRydW5rCiszMDIyNSAzMzY5Njg4MjFkY2JjZTFhYThkMDZkMDFkNGQ4Nzc3ZGE1OWUxMjRmIGxlZ2FjeS10cnVuaworMzAyMjYgZGI5ZmNhMTQ1MDU4NGI1M2EzZTkwMDA1OTNkZDk0MjcxMDlkODQyOSBsZWdhY3ktdHJ1bmsKKzMwMjI3IDYwYjM4OWE0ZGMwODU1MDFhZTQ1NTY3M2JmOTE5ZjM2NTFlY2FjZjIgbGVnYWN5LXRydW5rCiszMDIyOCBiOWU0NWI4MjhhZTExYTBlNTVjZWJlZGU2YjUwMmE5YjViOGQzNGE1IGxlZ2FjeS10cnVuaworMzAyMjkgNjVhY2VjOWNiZTY5MjI3ZTUyZmQ2YzM3MDA1NTA4YzYxNTU0YWRjNiBsZWdhY3ktdHJ1bmsKKzMwMjMwIDE2Mjg4YjA1NGZjM2YxMzMwZGI3OGE3N2IyNTU3ZThjNTMwZTMzMDggcmVsZWFzZTIyLW1haW50CiszMDIzMSA3YzE1YmY3NzI2YjI0ZTUyMjUwMGU0NmUwMDJlY2UyNTdjYWU2NjA4IGxlZ2FjeS10cnVuaworMzAyMzIgOGMzZWY1MjRmYWEwNjdmZGI4NjM3YWMxNTk1YzExZjI1NWZhYzliZSBsZWdhY3ktdHJ1bmsKKzMwMjMzIDk1YmMwYzA1MjAzNDUwODdkMzA1MjEzODM2YzI0OGE0ZjRlNDQyNTQgbGVnYWN5LXRydW5rCiszMDIzNCBjY2YwYjAyN2I1ODU2ZDU3YmYzNmI4ZDM2MTdlMzFkMzkwNjdkM2I0IGxlZ2FjeS10cnVuaworMzAyMzUgN2ZkMWJmMjBhMGMwZTljYmE1MTdmMmZjZDM2OTBkYjA1YWJjMGQwYiBsZWdhY3ktdHJ1bmsKKzMwMjM2IGMxMjcyZjNmMjhmNTE3OWIyMzNkM2M2ZTM3YzAwMzY0ZTYxNmNjMWMgbGVnYWN5LXRydW5rCiszMDIzNyBlY2MyN2ExYzMzY2E3OTg5NTJlMTJkZWMzMzgwMGMyYTFlZmRjYjM0IGxlZ2FjeS10cnVuaworMzAyMzggNjIwMDk2ZmQ1NTY0YzM2ZDAzNzY2M2VkYmY5NzRkY2I0MGM5ODVlMCBsZWdhY3ktdHJ1bmsKKzMwMjM5IGM2MDljZDQ5MDZmYjRhZWRhYzNjYWE1NDRhMjgyNzEyMmZlMjNlMDggbGVnYWN5LXRydW5rCiszMDI0MCA0OWQwMjJiNWZkNjQwNTE5MGY5NTY2ZjZhYmM1YzZkZDZlYTMzYzgxIGxlZ2FjeS10cnVuaworMzAyNDEgNGM5ZmU0OTA1ZThmYTA2YjI3ZDU5MjU3ZTc5M2Q2NGZlMjIwNDhjNSBsZWdhY3ktdHJ1bmsKKzMwMjQyIDZiMzFiMjZlNDE4ZGRjODQ1OWUyNmU0YTc3NWU4YWE5ODUwZDBiNWYgbGVnYWN5LXRydW5rCiszMDI0MyAwOTU0NDBiOTc1YTFjODcwNThmZjk3M2Y2MTZkOTU2YTQ3MTFkMzliIGxlZ2FjeS10cnVuaworMzAyNDQgYWYyMTdjY2EzYmZjN2MxMzQ4ZDg0ODY5YmQzMjkxOGQ0MjU4NGZkMyBsZWdhY3ktdHJ1bmsKKzMwMjQ1IGFkMjYzZDI2ODI1NTQ4MDI0ODA5ZTg2MmMxYzJkMWQ4MTNiY2E1MjcgbGVnYWN5LXRydW5rCiszMDI0NiAzNDZhMDcyNzBlODdkZDY0OWM4YjNjMjA4YTYyMDliYTNmYWZjMDhiIGxlZ2FjeS10cnVuaworMzAyNDcgYWVmM2EwM2E3OWYxMGUxNzdhZTBkN2NiNTZkMWVjNjRhZjVlMzA1NyBsZWdhY3ktdHJ1bmsKKzMwMjQ4IDhhYTc1NmU1YWNjYzg1ZmNjYzliMTU2ZmE3ZDhjNzRhZjI0NjdkY2YgbGVnYWN5LXRydW5rCiszMDI0OSBmYzdmZGVjM2ZiODYzZDJjOTEyOTNiYWFkNjM5ODJhZTBiY2NlNDAxIGxlZ2FjeS10cnVuaworMzAyNTAgMjQwZmRiZWY4YzYwYzM2YTBiODhhOGQxNjRkZmI2Y2I3YjlhZGRiNyBsZWdhY3ktdHJ1bmsKKzMwMjUxIDBmMTQwNWFjZTQzN2U5MjZjOWI4NDUyMmVmMmRhZDU4Y2MyYjIxOTYgbGVnYWN5LXRydW5rCiszMDI1MiA4OWRkNzRmN2FlMzI2YzBlZTMyZTQyMDRiZWJhZTBhM2ExYTc5NmI3IGxlZ2FjeS10cnVuaworMzAyNTMgZDE2MDgxNmI5MWU1ODNkMjMwZGJjOGQwNDg0YzUyNDU5ZWQ5NjgzOSBsZWdhY3ktdHJ1bmsKKzMwMjU0IGY4NWNiMDg5NTUzNWRlNzY4YTYwZDliY2VlMmYzMzc5OGY5NGIxZDAgbGVnYWN5LXRydW5rCiszMDI1NSBiYjRkZjAwMDBiNmQxYWM0ZTc3MWYzN2E1NTEyMTU1YTYxOWQyYjMxIGxlZ2FjeS10cnVuaworMzAyNTYgNDRkNzQ2OGQ2ZGI2ZTIzMzkxOGJlZGY4MDkwZjE4OTgzMzdkMjYwNSBsZWdhY3ktdHJ1bmsKKzMwMjU3IDkyYTQwNjExNWU3Y2QzNDE2NjZiYTI1MDY1ZjBlZTIyZDg4YmVjNGMgcmVsZWFzZTIyLW1haW50CiszMDI1OCA1ZWZlNmIwYWMwZTZiY2MyMGE1NjBhYjhmMzAwZGY1MGIyNTgyN2FjIHJlbGVhc2UyMi1tYWludAorMzAyNTkgYzU1ZTZlNjAxYjk5OGQ3MmI4OWE1NmI4MGRkYjNiZWJlOTYzZTYxOCBsZWdhY3ktdHJ1bmsKKzMwMjYwIGJjN2Y4OTEzZjVjYTg2NmNhZThhMjFkYmY3MWYyZjljYWVlNGY0NzEgcmVsZWFzZTIyLW1haW50CiszMDI2MSAzMDAxMzQyOWJiODQ1OWUzYjgwNjQwNzM2OWJjYmIxNDAwZWIzZmJmIGxlZ2FjeS10cnVuaworMzAyNjIgOGUyNzUxMmNjMTdkZGNiN2Q0N2I3MTdjNWJjNzRhM2Y2NjMxZGQ5ZCByZWxlYXNlMjItbWFpbnQKKzMwMjYzIDBiMzRmNTFlYWI0ZWE0ODdiYTFjMDFjZTk5NDEzNDZkNmE3MGVlYTEgbGVnYWN5LXRydW5rCiszMDI2NCA3YzUxOTZmMDE1MjRiOWU5N2MxODIyNjhjNjZkNmE3ZWU5NzQ3MTMwIGxlZ2FjeS10cnVuaworMzAyNjUgMmYyODQzNjA2MGM0NTY1NGJiODU4MWZjYzA3NTE0Y2EyYzU5ZTBhNSBsZWdhY3ktdHJ1bmsKKzMwMjY2IDE0MzkyMmE0MGZhYzZmN2RkNTAwNDU0NTg2OTUwYTg1ZTJjMzE5ZGQgbGVnYWN5LXRydW5rCiszMDI2NyBmYmM4NWFhYTI2MGJhMWFjNGQ1ODlhN2E1NGIyNjk3NTUxNWI3MDA4IGxlZ2FjeS10cnVuaworMzAyNjggODljOWM2YzQwNWVmOGM0MTVkZTg3ZjAxMzY2MDZkMDQ1NjBiNjZlOSBsZWdhY3ktdHJ1bmsKKzMwMjY5IDU4YmQ3MTAwZWUxNTdmMTdiODVkOTQ0ODAxYWMxZWMyZmU1NGZjYzEgbGVnYWN5LXRydW5rCiszMDI3MCA4MTZiOGRkY2NmZTE2NTE2MTRkMTY0MDE4OTk5Y2Q2ODNhYzkzOTFlIGxlZ2FjeS10cnVuaworMzAyNzEgZGI5Mzg4ZjM3ZDhjNDcxZjFmZDU0ZDhjMDc2Nzc2ODYxOTVhZjc4NyBsZWdhY3ktdHJ1bmsKKzMwMjcyIDA2ODY4Mzc2YWEyOGQzOWZjNmU5ZWEyODlkOTE1NTZlOTc5N2FjYjQgbGVnYWN5LXRydW5rCiszMDI3MyBhMmQ0MDJlN2NkOGFkZDMyYTc4YmZhZDI1YjIyYWU3M2RmNGU4ZmQ4IGxlZ2FjeS10cnVuaworMzAyNzQgY2Y3MzY2M2NmZjU5ZWE0MTYzZDhmMTI5NTEzM2NlODgwNjIxZGNlMCBsZWdhY3ktdHJ1bmsKKzMwMjc1IDQ3ZTdjNzBlODQxZmUzMzAyN2M0ZWI5YTk2YzY5ZGVkYWRjYzZmZjUgbGVnYWN5LXRydW5rCiszMDI3NiAwZjA2MTU2YzhlMDM3NjZmOWZmNGZkMTg5NzU4ODdlZWNmM2UxZDNiIGxlZ2FjeS10cnVuaworMzAyNzcgNTA3YWE5NmExMjhmZmRhZDk0MTdiYTU0ZTllZWViYzVlMjU0YWVjYSBsZWdhY3ktdHJ1bmsKKzMwMjc4IGIyYjQ3OTcwNTJjNmZkY2RjYmZlZmM2MWI5NDMzYTk0Y2MzMjFiNWEgbGVnYWN5LXRydW5rCiszMDI3OSAyOTk2MjFlY2E5YWQ1MzEyZWU0MmYwM2FmNzUyOTU3ZmZkMDE1NmVkIGxlZ2FjeS10cnVuaworMzAyODAgMzBhNzczODk0MzgxOGI3YWQ1MDIyNmMwYmIwZGU4YTY4NDcxMjZjOCBsZWdhY3ktdHJ1bmsKKzMwMjgxIDgyZDhiNWM2YWM0YTdmYzJlZTdkOWVlMGM4MjkwOTY2YTBhNDJlZDMgbGVnYWN5LXRydW5rCiszMDI4MiAyNTg1ZDQ1OTZkOTAzYjBhMTA4MGU4YWI1YTQzZjY2NmQ0MzgxNGM1IGxlZ2FjeS10cnVuaworMzAyODMgZmZjMWU5ZTVmZjlhNzI0N2NlYTZiNTY3YTUyYmY4OWFhZWE1ODM3NSBsZWdhY3ktdHJ1bmsKKzMwMjg0IGIyMDRiNGE3MmI0ZWU4YmFmMDQ1MGM5YTViMzJmYjM4YzE0Y2IwOWEgbGVnYWN5LXRydW5rCiszMDI4NSAyMzE5ZDEzZDU0ZjU3NTE1NTA1OGY1NzEwMzIwNzMwY2MyNzU5ODA0IGxlZ2FjeS10cnVuaworMzAyODYgN2Y4MWQxNmUyYzVkN2FhMzg0Y2VjMTlmMWUzNzI0OGQyYTEyMDBiMiBsZWdhY3ktdHJ1bmsKKzMwMjg3IDg1OGVlMTE3MTRhNjMyNDI3ZTMzYzg3YmM2ZjgxYTI5MTZhNTgwZjkgbGVnYWN5LXRydW5rCiszMDI4OCA5ZDBlNjJjOWExMjhkN2ExNDcxNjJiM2I1NjdhNmZjMWE2ZTZjMmI4IGxlZ2FjeS10cnVuaworMzAyODkgZWRmMzA0ZTYwY2M2MWVkOWI2ZTQxMWU5MjhkYjgwOTViNTExZTkxYyBsZWdhY3ktdHJ1bmsKKzMwMjkwIDE3ODg0NDk4ODgxMmYyZGYwNjI4YzIzZjIwNWJiZGM2OWQ1M2M5NWIgbGVnYWN5LXRydW5rCiszMDI5MSAyMjUxMTk1YTNkZDFmY2U3MTRmNTFiZjhkYmUxN2M1OGFlZDczMGJmIGxlZ2FjeS10cnVuaworMzAyOTIgN2M4YWYxOTc5ZTc4ODViNzc4OTk1ZTczODQ1MDI5NGQ3N2QyNmU2NyBsZWdhY3ktdHJ1bmsKKzMwMjkzIDhlY2NmYWUwNGJiNGY2ZmU2NjE5NDFjODI3ODRiNTgxYzIwNzg4NmQgbGVnYWN5LXRydW5rCiszMDI5NCA2OTMyNzk0ODE3YzJkMWRmMTE2YTk0ZWY2MzM3YzI0ZjNkNTY0MTdjIGxlZ2FjeS10cnVuaworMzAyOTUgMGM4NWE5NDdlMmMwMDBkNjY3YjkzNGIzMmIyYmNmMGVhMjQ2NGVhNiByZWxlYXNlMjItbWFpbnQKKzMwMjk2IGUwOTRhMDNhODBmZjQ1ZWY2Y2YzNGMxYzJjOGI1OGNiZjhmMDc2MDMgbGVnYWN5LXRydW5rCiszMDI5NyA1N2EwMGRiNzMxZmNmMWYyY2NkMzRkODI3MjE3YmE5MTRhMTcxNWUzIGxlZ2FjeS10cnVuaworMzAyOTggNmJiYmU2N2QxZWFmNzE3MzE5ZGY3ZWVjNmI5Nzk2YmJlZDg5N2FjYyBsZWdhY3ktdHJ1bmsKKzMwMjk5IGQ2ZjQ4M2ZjOWUwMmUzZGVkN2JmZThmZGQwM2E4MmM4MGQzMDI3YzYgbGVnYWN5LXRydW5rCiszMDMwMCBmZWE5MmU3ZWM2N2FlMzUwNTU5MDk3MjYwOWQxZGZiNjgwNTEzZTI0IGxlZ2FjeS10cnVuaworMzAzMDEgMmUyMTk1ZmU2YzI4YTc5NGZmZTljNTZkMzZlYzFjNzUxOTMzMzBlZCBsZWdhY3ktdHJ1bmsKKzMwMzAyIGZiMzZkOWI1MGRmNThjODcxZjk0YWVhMWI5YjdmY2IyYThkOTY0MjcgbGVnYWN5LXRydW5rCiszMDMwMyBlMTUzOTYxZjk2MWYyZjZiYTcxNzc3ZDIyMTAyOTQ1NmFlMTVkOTVhIGxlZ2FjeS10cnVuaworMzAzMDQgM2MzMmE5NGIwYjE3NjI2MjlhYjliMWJjMGFmMmRhNmRkODg4MTg0OCBsZWdhY3ktdHJ1bmsKKzMwMzA1IDEzZDU5ZGJmYjhkNDRhZTY0YmJhZGViYjQwMTE2NWJiNWQyYTQ0NGUgbGVnYWN5LXRydW5rCiszMDMwNiA3ZDdhMDFiZmNhYWZiODY5NzVkYmU2N2QwZDUyODkwOGQyOWY5NDk0IGxlZ2FjeS10cnVuaworMzAzMDcgZjY0Yzk2OTIyNzA4YTUxMDRiZmIwNmU4ZGU3YTRmNmRlNzM5YjNhYSBsZWdhY3ktdHJ1bmsKKzMwMzA4IGY0YjFiZWVkNjQwNTJkMGIzYzUxYjc2ZDI1YWQ4NTRhMzM2OTFkNGQgbGVnYWN5LXRydW5rCiszMDMwOSA5ZTQwOTEwN2FlZWFhMWYzYzMxYjgzMGFhN2ZiYmE0Nzg4NzY4ZDIzIGxlZ2FjeS10cnVuaworMzAzMTAgYmIxNTQ2YjQ2MDFiZDBkMmZiZTE3ZDExMDc3OGJhMWM3MTc3NDU0ZiBsZWdhY3ktdHJ1bmsKKzMwMzExIDU4ZDc1YTNjOGFmZWE3ZWE0ZGYzMTMxNzczZjdlNDYxZjNiYjA3YzEgbGVnYWN5LXRydW5rCiszMDMxMiAzZTFiZDEzN2QzYzJiODhhNTgyNGUxZjVkYTYzYjcxM2IyMWFkYjJkIGxlZ2FjeS10cnVuaworMzAzMTMgNWNjZGU4YTE1MjZhNDBkOTJkYzU0YzhkYjc5YjY3ZWMzZjEwOTljNSBsZWdhY3ktdHJ1bmsKKzMwMzE0IDc5YzlhMDdiMjg5NjU5Mjg2ZjE0MzUxZmRhMzgyNDE4OWRhOTZhODQgbGVnYWN5LXRydW5rCiszMDMxNSAxNWJiNjc2ZjJlOGMwZjJjMmY4ZDg0OGU1NzEyM2UxMzFkYmQ1YWE1IGxlZ2FjeS10cnVuaworMzAzMTYgMDAwNzVmMWVmODY2YmY0NGFjN2Q4MjQwZjRlMWI5MGNiOTUzYzMzNiBsZWdhY3ktdHJ1bmsKKzMwMzE3IGM0NGQ5OTRiMzllNTQyNjk2MjQ0YzU4NmVhYWFkMDVhYmJhMWFhN2MgbGVnYWN5LXRydW5rCiszMDMxOCA3ODY3OThlODY0NjljYjgwOGMzMDA4Y2M1ZTQ2MTlkYTEzNzJlZjhhIGxlZ2FjeS10cnVuaworMzAzMTkgMzdlZjAxNzY0NmM0NjE4YTNmYzBiY2FmYTAwMzI4Y2RlYjk2MWJjNCBsZWdhY3ktdHJ1bmsKKzMwMzIwIGQyYjAzNjI4MTQwMzEzYjg4YTFkMDIzNDZmNjY5MTMzNDI0MDUyZTkgbGVnYWN5LXRydW5rCiszMDMyMSBhOWI1MjJlNTQ1Y2Y2ZjA4M2UwOWNmYjc5YTljODVkZWQ2MTJlYmMwIGxlZ2FjeS10cnVuaworMzAzMjIgNTQxOWVmNGE0ZDcwYjBjNWZkYTI5YTg0OGFlMWFkNzIxZGE5ODczYiBsZWdhY3ktdHJ1bmsKKzMwMzIzIDY3M2RjYjliNTFjZTJiZGYxMmRkYTM1MTJlZGMyMmJmNGZjYjllMDMgbGVnYWN5LXRydW5rCiszMDMyNCBmYzUxNjlhYTQxY2VmODViOTY5N2MzOTQyZmRmOTU1MzI1YjY1NTAxIGxlZ2FjeS10cnVuaworMzAzMjUgZWE3NTkxOWM3NjlkYjY1ZGIyZjQ5YjU5OGUwNDMxN2Y1ZTI2YTg4MyBsZWdhY3ktdHJ1bmsKKzMwMzI2IDg2NWM1OWI1YmZkNzEyODI4ZjM0Y2FkNWEzNzdkOGNlMDA5M2Y1ODUgbGVnYWN5LXRydW5rCiszMDMyNyBiY2E1NDA5Yjc2ZWNmYjkzNDJkMjRiYWExMjMyMWQ5NWM4NjllYjM5IGxlZ2FjeS10cnVuaworMzAzMjggODAzMzAyNTczMTUyN2JlNGFiMzQwOTg4ZThhZmIyZDY5YTQwZDY2MCBsZWdhY3ktdHJ1bmsKKzMwMzI5IDVmNzRlMDQwMDEyZDY5ZWY4MzVlMmM2NmVmNWE3YTczYTY2Y2ZkNTAgbGVnYWN5LXRydW5rCiszMDMzMCAzZWU1NGZiZmU4NDZkODllZGYwZTVhZGQzYTllNGIwMTkyNTllZWY3IGxlZ2FjeS10cnVuaworMzAzMzEgMmNlOGNmMjg0YjE1MGMwODE4MTQ1NDIwOGY0NWY1MjNjYmJhYTQ2MCBsZWdhY3ktdHJ1bmsKKzMwMzMyIGRhYTQ1OGIyODM4NTFiZmQzYzk0ZmVlMTlhOTQ4YjFlYTc0OTRhYzMgbGVnYWN5LXRydW5rCiszMDMzMyA2NjA5OTZhMjhlZThjNGU2YjE2Njk1ZjFlMTc5YThkYzM2NTdiNGI4IGxlZ2FjeS10cnVuaworMzAzMzQgNzA0ODQyZjA1YjA5MWU1OGQzZTkzZjRiZTM1NjlmYjA5MWYxOWVjZSBsZWdhY3ktdHJ1bmsKKzMwMzM1IDZjZjYzNzc2N2NlMjRkMmMzYTgxMWNjZDZiMjBmMDYxODI4MGEzZmUgbGVnYWN5LXRydW5rCiszMDMzNiBiNGNhNWI5YmE5MzM1NTI4YWE2OGJjY2FhYzA5ODI5ZDQxMTE2Y2E0IGxlZ2FjeS10cnVuaworMzAzMzcgMjc1MmU5YWFlOTdiZWQ2MDFkYWU4ZmNmY2ViNWI1MTYxNTI1MjFkNCBsZWdhY3ktdHJ1bmsKKzMwMzM4IDNjZjVhNzg1MmEyZjNmZDRmMGIwYTZkZWUyNjZlZjk5MDY5YmI5OGIgbGVnYWN5LXRydW5rCiszMDMzOSAzYTEzMDA0NzI5MDE2M2EwNTk2NmQzYWRhYzI0MDE0MTc3OTNmYWI5IGxlZ2FjeS10cnVuaworMzAzNDAgMDM2OTE5OWEyNjVhZjg0MWZmYTE2MTRhYjMxNTkxOTdlZjVkNGJjOCBsZWdhY3ktdHJ1bmsKKzMwMzQxIDAyOWVkYTkzN2JiNDc0M2YwZTE3MTYwM2RhNjMwZmE0OGU3ZjI1ODYgbGVnYWN5LXRydW5rCiszMDM0MiA4M2Y4YmQ2YWU4MTE3MjIwZDJiMTJmZDA3ODcxNjM5Y2I1ZGRmYjFhIGxlZ2FjeS10cnVuaworMzAzNDMgYWFjYThhM2IyM2NkMDVkMjIyODMwOThmMDE5NzZmNmNmZjMxZWM1MCBsZWdhY3ktdHJ1bmsKKzMwMzQ0IGE2ZjBiYzZlOGIzOGRlNWY3NzA2MzRjNDA0OWJlNTYxYmFmZTJlNjYgbGVnYWN5LXRydW5rCiszMDM0NSBmMzA1YTU3OGIzOTQwZWM4M2NiODZmNzdlYmViZjc5Zjk3YjhlZWE0IGxlZ2FjeS10cnVuaworMzAzNDYgNDhhZmI4ZTE0MjBiYjg2ZjljOWFlZmQ4ZmFjNGFlY2JhOGJiYTk0YiBsZWdhY3ktdHJ1bmsKKzMwMzQ3IDQyMjc5YTAyMTI1ZTI4NDYxZWE0NzRkNjA2NGZjMDA0NDMwYWFjZDggbGVnYWN5LXRydW5rCiszMDM0OCAyM2E5ODBlYjhhZmJiMzVhMjkzM2UyZThiZWUzNmRiYTY5MjUxZDQ3IGxlZ2FjeS10cnVuaworMzAzNDkgMWVhYjI2ZjcxNzE5OWQ3Y2EyODM2OGQ3YWM0ZmEyNDQzOGM2NmMwZSBsZWdhY3ktdHJ1bmsKKzMwMzUwIGY0ODNlZmNhMjI0YzZjZmRiMzU3ZTBmNTdkNDhjZTc1NjMzZmEzMmMgbGVnYWN5LXRydW5rCiszMDM1MSAzZDEwNjBkYjgwNjI4YmM1ZTk0OWZkMzczZTI4NmNlOWUwYzM3NGUyIGxlZ2FjeS10cnVuaworMzAzNTIgMjZkZjYwMTNiMzAzZDRhYmRlNGRmMzFkNWZhMGVlNjRkNTA2YTc5MCBsZWdhY3ktdHJ1bmsKKzMwMzUzIGQxNzdkZDBjYThmNzBlNDFiZTAxYzdmZmEwZTMzNDVkOWU4NTAwOTQgbGVnYWN5LXRydW5rCiszMDM1NCAzNTQ2OGFkNTAyMmE3NzQ1NjkxZDUwOTUyM2VjNDE5OWU2ZTM4MDFmIGxlZ2FjeS10cnVuaworMzAzNTUgMTIwYWZiYTJkYmY2NDA3Y2Q3N2I1NmMxNWQyOTY4NWU4MTE3MzkwZSBsZWdhY3ktdHJ1bmsKKzMwMzU2IGMyNDk2MDdlZjUzNWYxMTI4NGY3ZDMwNTc3YmZlMThhNDUyMDliMjggbGVnYWN5LXRydW5rCiszMDM1NyAzMWIxYjA0NjAzMDNkODVkNzQ3MGRhODAxOWYyNDdhN2E2NWRlY2JiIGxlZ2FjeS10cnVuaworMzAzNTggOTA5MzRlNGM5MWJhNGJjZDI4NjZlMmVmZjdiM2E2NGU4ZWMyZDdmZiBsZWdhY3ktdHJ1bmsKKzMwMzU5IDZlYzM4NmI0NWUxZmFlZTE2OWNiYmVkN2EzMzI0NmQ4MmI2MWU4YjcgbGVnYWN5LXRydW5rCiszMDM2MCBkMjE5OWZjMTRkMDYyNGFkODBkODYxMjUzM2ZhMzRlMWFjN2M1ODFiIGxlZ2FjeS10cnVuaworMzAzNjEgMjEzM2NmMzU1YmZjOGEyYzkyNTA5NzdhYjAyM2FjMGUxMGU1MjVhNSBsZWdhY3ktdHJ1bmsKKzMwMzYyIGYwZjlhY2NhNDE2NGFiZDc4YjVlMWQ2MDRhNmQ4ZTI5YzNjNjYzMTcgbGVnYWN5LXRydW5rCiszMDM2MyA1NGFhY2I4N2JlZGEzMDM3ZGZhYmZlM2JmM2U2N2Y5MDI4MDA2ZmVkIGxlZ2FjeS10cnVuaworMzAzNjQgYjYyNWYxYmY3MmY5MGQwNGM0OTUwOTNiNDFkMzljNGUzNjhlMTE1ZSBsZWdhY3ktdHJ1bmsKKzMwMzY1IDQ1ZmMwZTRiNTA4NDUyMjc1YjQ2YmFkOTJiMmU1ZTcxYzI0NWE0OGUgbGVnYWN5LXRydW5rCiszMDM2NiBiOWMxNTk3ZDgxMDJlNDVjYTQ1ZDhiM2U2ZWI2ZjIyNmJmZjQ0YmE5IGxlZ2FjeS10cnVuaworMzAzNjcgMTI3NTNlN2IxNWY3ZTg2YmUxNDM1NmU1NGQxMDljZjM2NTc5NzFkNiBsZWdhY3ktdHJ1bmsKKzMwMzY4IDgwNTNiYzBiOGJiNTgxYjRiODY3MGNhNWZkY2M2YjY2NDg3ZjFiNTEgbGVnYWN5LXRydW5rCiszMDM2OSBiYzIwZThiNDZkZTBkMGFlN2FlZjI2OGU0NDg4ZDc4NmUyNjJmYzBiIGxlZ2FjeS10cnVuaworMzAzNzAgOTU1MTBmMGEwNjI0NTg0YjQxYmI3Yjc1ZmFmODg2NWM4OWZjZjUxYyBsZWdhY3ktdHJ1bmsKKzMwMzcxIDJhOTViN2Q1ZmJkZTBkNGNlNzA3NDMxMzAyYjc2NjMxYjBkMDAwYjEgbGVnYWN5LXRydW5rCiszMDM3MiAxNDA2NDRmMjJmNjQ4Y2RmMGIzZDNjYzRjYjVkMGU5OGQ5ZTYwOWZjIGxlZ2FjeS10cnVuaworMzAzNzMgMGEwYzc1OWVkMTY3OTlhYTJlMDZjZTlmM2M5OGJmODRhNDFiMmQ0YiBsZWdhY3ktdHJ1bmsKKzMwMzc0IDRjYmRiYjBiZGQ1ZDRhZWMxMDI1YTZhNjg4NjZjODQ1OWFiZWEzMDIgbGVnYWN5LXRydW5rCiszMDM3NSAzYmMyYWY0MWMwMTY1NzlhOGUxYzJhZjRjM2E3YTQxYzcyMzU5MzRiIGxlZ2FjeS10cnVuaworMzAzNzYgMDk2ZDEyZGIyNjM2NTIzY2U1Yjc1NWZkYzNjYzM4YzViNzA4ZmM3NyBsZWdhY3ktdHJ1bmsKKzMwMzc3IGE0NDc0ZTE0ZmFjOTdiNGE2MjI5YTA1Zjc3NjIzMDM5YWZlMTIxZTggbGVnYWN5LXRydW5rCiszMDM3OCAxOGQ0ZjcxZjVlZDZhOTM2YTRiMDczYjg0NmQwZGM5MDY5MmRjYjRiIGxlZ2FjeS10cnVuaworMzAzNzkgZDVhZDI5YTQ3M2UxZDk5MGEzMDExNDEwZGRiZWUzYzYyYjNlZjBlMSBsZWdhY3ktdHJ1bmsKKzMwMzgwIDJjNTJhYmVlN2QxMDYyYzUwMGVjMjhjYWRhNzE1MDQxYTJmNGQ1MmMgbGVnYWN5LXRydW5rCiszMDM4MSA5N2M1YWE4MmIzZTljMTUyNGJiYWZkZDc0OWNhNjVhNzJhMzIyNjIwIGxlZ2FjeS10cnVuaworMzAzODIgNDBkYjc4MTU5MTc3NjIwZGUxM2FlOWJlMDFkYmQ3MTYwZTczYzE4YSBsZWdhY3ktdHJ1bmsKKzMwMzgzIDdlYTc2MzczNDFkMGExNDdhNGMzNDZlYjU4YjViM2QyNjMzYTFhMmIgbGVnYWN5LXRydW5rCiszMDM4NCA0N2U2YWI4ZDU3NTFkNGEwN2Y4YzY2Njk4NTZkODg5ZjNjMzExOTM4IGxlZ2FjeS10cnVuaworMzAzODUgY2NiYTNiNjZkNjc2NjYxZjZlMTYzZTMxMDk5MThkZWQwNGEzOTczYSBsZWdhY3ktdHJ1bmsKKzMwMzg2IGJjYWNhMzZhNTgzY2M0NTkzYjVkZWQ5MWI3N2YxMGI5Mzk0ZjkwOWUgbGVnYWN5LXRydW5rCiszMDM4NyAwNzQ5MTk3MTUzNTVhYzg2ZTM3M2M4MGE1MzNkN2VlN2Y1YjcxYTk3IGxlZ2FjeS10cnVuaworMzAzODggNjg4ZmE2Y2RhYjk0M2M1ODAwNDA1MjY5NzhkZTgzNjNhNjVkYzJiMiBsZWdhY3ktdHJ1bmsKKzMwMzg5IDg5OTlkNzJjMmU2Y2RlYjFhNjAwZmQxNWQxOTdjYWFkYzQ3YmFhMjEgbGVnYWN5LXRydW5rCiszMDM5MCAwMDMyZGJlZWMzOTFjMTU3MDIyZjhkNGU0N2Y3ZGRmM2Q3ZTRiNTFmIGxlZ2FjeS10cnVuaworMzAzOTEgN2NkYTM2MDM1NjdmOTY3YWFiMmRhNzFlM2FjNmI1OTljNDRlMDIwZCBsZWdhY3ktdHJ1bmsKKzMwMzkyIGMyNWQ3ZDJjMTcxMDQyNmM3NjYxNjkzMzM0MWYxYTMwMTkzNjk1MDMgbGVnYWN5LXRydW5rCiszMDM5MyBmYmNmM2M0YjQyNzJlMjE1ZmMyZDc1ZjVkMzE1N2JkMmE4MzI3ZTE1IGxlZ2FjeS10cnVuaworMzAzOTQgZjUxNjFjYTRkZDY4MGQ0ZmJlMzNhMTlhYWM3OWI2MzQwYTY1NDI3ZSBsZWdhY3ktdHJ1bmsKKzMwMzk1IGE0M2EyYjE4YjVjNDhiZmU2Y2Q3YWUzYTIxMWEwZDJhMTIzZGM4YTAgbGVnYWN5LXRydW5rCiszMDM5NiAwNTAxNmJiOTE3NjZmZTlkMWIxOWIxNmI3MTc1MjdjMjg2OGJjM2ZmIGxlZ2FjeS10cnVuaworMzAzOTcgYjkzODQ1MjI2ZGI2OGQ4MzJjMmFhMTg0NmQ1YTMxNWI5YzVjZDkxMCBsZWdhY3ktdHJ1bmsKKzMwMzk4IDQyZjE5YTZjNjU3MDFjZGYzNjUwMGU0NzBlOWIwZWUwZGIxNGEyNGEgbGVnYWN5LXRydW5rCiszMDM5OSBmYWY5NjVkNzM4MjRiZjI0NGViNjRmMWZlYTAyOGVlMjY5YTBiZDdjIGxlZ2FjeS10cnVuaworMzA0MDAgOWQwNTgwYWNiNDVmZjQ1ZWE3NTcxZDQzMzBjOWZhNmNiZTYxNTdlMCBsZWdhY3ktdHJ1bmsKKzMwNDAxIGRiZmMzZWY3ZDAwMzUwZTA5ZTk1NTNlOTU2NDk3MzY0YjViM2RlOTAgbGVnYWN5LXRydW5rCiszMDQwMiAzMWFkZWE0OWE1NThmNzI4Y2U5MzM5OWJlZmVhOGY1YmNlYjIxNjFlIGxlZ2FjeS10cnVuaworMzA0MDMgOTY0Njg4NzBkMjA2ZDk0ZjFhOGE0ZDljZDA0MzAxODE5NGE3ZDI4MCBsZWdhY3ktdHJ1bmsKKzMwNDA0IDNkYjE2NWYwMjEwNzQzNjNiMTYwOGFhYWIxNWMzNTcwNGVmNjZhNjYgbGVnYWN5LXRydW5rCiszMDQwNSAzM2RjZjRmZDBmZjkwM2ZiZGZlMzA3NmNlODRiODJiZDhiNjk1NGQ4IGxlZ2FjeS10cnVuaworMzA0MDYgMjRjYjYyMjI1MDQwY2ViYjI4MmFiYjI0YWMxYzNhZGMyOWI4ZTAwZCBsZWdhY3ktdHJ1bmsKKzMwNDA3IGZmYTRhYjM3MDM2ZjAxNWZlOTk2NDBkMjE0YTliMDhjOGYxNGExMGUgbGVnYWN5LXRydW5rCiszMDQwOCAzMmU0Yzc3NTM0MTYyYzVmN2FmY2RhNGQ0MWQwMWI4YjAyNzcwY2UyIGxlZ2FjeS10cnVuaworMzA0MDkgNmM1MzVkY2VkYWQzMDNjMTNlNDM0NzJiOWQwZjc4ZDI3ODMxOTczZCBsZWdhY3ktdHJ1bmsKKzMwNDEwIDc5NDY2ZjA0ZjFjNTRiNTJiNzJlZDIxYzlkYTUyNzA5MTU1NWY2NWIgbGVnYWN5LXRydW5rCiszMDQxMSBiOTFkOTVlOWIyNDlhNzkzMzVhNmE2NjA5YzExZTZhYWZmYWRhZjhiIGxlZ2FjeS10cnVuaworMzA0MTIgYTA4NWNjMDQ3NjgxMDk1OWRhY2QwYzA3Nzc4OGZlMGY1NmZkMTdjMSBsZWdhY3ktdHJ1bmsKKzMwNDEzIDg0NjhlM2ZjM2EyYmM3MWNjMmI3MDg4NmQ5NjE0YzFjYzA0MzYzMTggbGVnYWN5LXRydW5rCiszMDQxNCAzZDVhYmQzZDllNGJhODA1MTk0M2Y4NTVjNDViZjBiNTJiMTI0NWI1IGxlZ2FjeS10cnVuaworMzA0MTUgYmMzMDU4NDk1MjJkZjc4NzI5ODJlNzIwYjgwZDM2NTNiOGVmNWJiOSBsZWdhY3ktdHJ1bmsKKzMwNDE2IGE4MmQ5MmY3ODQ3MmM3MDdlNmU3ZTExYzUwZmVlZDQzZDVhYWRhOTcgbGVnYWN5LXRydW5rCiszMDQxNyBiZDBjNDA3MTk1ODM2YmQwZjE5OWZiZDZiY2UyN2M5NmQzODljMGU4IGxlZ2FjeS10cnVuaworMzA0MTggNmU1NDFhNzJhZjFhZTY1NDM3NzQyZDI4NDU2ZTdiOTI0NTMzMDdiNiBsZWdhY3ktdHJ1bmsKKzMwNDE5IDVjYTcwNzIzNjFiZDk1YTAwZDRhZWUxMDk4YWQyMzZiMTkyNTQ2OWMgbGVnYWN5LXRydW5rCiszMDQyMCA3MjM3MjFlYTQwMjU5NmM0MzVlZTY2ZmM3NzU2ZjIxNTU2Mjc2MTdlIGxlZ2FjeS10cnVuaworMzA0MjEgNTUxNDExNDRkYWI1ZTUwOTEyYjEwNzQ0NDBjNWJlN2E0NTRjZTFlNSBsZWdhY3ktdHJ1bmsKKzMwNDIyIGJlZWE0MjE1Mjc4NzQzZGExMWVhZGI1MzliY2JlZWJhNDhhNzAzODEgbGVnYWN5LXRydW5rCiszMDQyMyA1MjY3NDJhNzRkMDY1YjNiM2ZmNDMyNmQ2ZDMzYzc1YjkxNDBmMDc3IGxlZ2FjeS10cnVuaworMzA0MjQgYWNkYjM5YjcxNGIxZWVlNDhkNGRiZWMyMzM4MWI4MzRlMGEwMjM1NSBsZWdhY3ktdHJ1bmsKKzMwNDI1IDAyYzZmZDVjZjc1YmNmNTZmYjRiZWM3NzZiZmUwMTg5MTEwY2UwODcgbGVnYWN5LXRydW5rCiszMDQyNiBiZTczMmUyMTllZDEwMjY3ZDkwMjc4M2JlZTczMTRkYjE0YTI1MmRkIGxlZ2FjeS10cnVuaworMzA0MjcgYTU4Y2VjZjU5YjA2M2Y1NTUxYzhiNGExM2M0NTRjMDdiMDQ3MGEyZSBsZWdhY3ktdHJ1bmsKKzMwNDI4IDdiNWE3Y2ZjMTdhOWU1MDE3Zjc1MDNkMDMyYWU1YWJjODVlMDc0ZGMgbGVnYWN5LXRydW5rCiszMDQyOSA5NGJjODEyYTNjNTI4NTE1OGU2MGZlMTI0NWU0MTc5ZDIxZWI4Zjc1IGxlZ2FjeS10cnVuaworMzA0MzAgMzVmY2FiZWZjOWQyZmQzNTY5NTcyOWVhOWFkNmI0Y2YyYjRhMjM1ZSBsZWdhY3ktdHJ1bmsKKzMwNDMxIGYxNTU5NDYwYjk1MjYyNjkzMmM0NjUxZjcxMWM4NTRhNzFiYjI3YWQgbGVnYWN5LXRydW5rCiszMDQzMiAxNjM1NjNjY2I3ZDYwYWRmODRlOGI1MDYwNGE5YjY1NjNjZWYxMDE5IGxlZ2FjeS10cnVuaworMzA0MzMgMjQwYTI0MDFjNDA0ZGU2YWY5OTgzYzI0Y2QwMDk2MzQzYzQ1ZGMwOCBsZWdhY3ktdHJ1bmsKKzMwNDM0IDM4OTI3ZmQ1NjdiNGU0ZjJmOTI4OGY4ZmRjNzM0ZDMxNzk5MzViNGIgbGVnYWN5LXRydW5rCiszMDQzNSBiODIzNjZiYzU0Mzg0MjhhOWQ5NWQ2YzI0YzhlNzZkYTVlNjliY2RjIGxlZ2FjeS10cnVuaworMzA0MzYgM2MwNDFiMTlmMWQzNjc3YTNjMzkxYWJiZjU1YjhjOTQyMzQ1ZTM3YyBsZWdhY3ktdHJ1bmsKKzMwNDM3IGI4YzcyZTg2YTEyZDQwNzAwYjFiZTA3NDY3MzI5NDVlYjlmYmUxMDMgbGVnYWN5LXRydW5rCiszMDQzOCAxYzU4ZmU1Yzc2OWYzYzA2ZTcxYmUzYjAwMDBjODc4OTA5Y2EwNTJmIGxlZ2FjeS10cnVuaworMzA0MzkgYTVjODc5NzI2YjNhMzIzMzc1MTZiZjViMTBiMWQxYmQyOTQyYWY1ZSBsZWdhY3ktdHJ1bmsKKzMwNDQwIGI5YzQ2MmQyM2YzYzY1MjE0ZDQ3ZDE2YTVjYjU0Y2Y3MmI2NDQyY2YgbGVnYWN5LXRydW5rCiszMDQ0MSBhNTczZmVkZTg4ZTJiMThlNGU3ZDFmMDc4YmZmYWY5OWJmZjA5MGQ3IGxlZ2FjeS10cnVuaworMzA0NDIgNWRmN2EyODRlYWY0ZWQ3NzFmMTc3NGMyYjNiNDY1Y2E3ZGQ1Zjk5NyBsZWdhY3ktdHJ1bmsKKzMwNDQzIGI3OTBkYTA2NzFmN2E3MWU5MDIwZTQxMjgzNDFiNTBhN2I5ZTM2NDQgbGVnYWN5LXRydW5rCiszMDQ0NCA0YjRjZTI0OTBmZTJlZDdlZWM1MTliNmEyY2NmZDg2NDk5OTI4MmE0IGxlZ2FjeS10cnVuaworMzA0NDUgMTAzODk5Y2U4OGIyZmNhM2U3ZjFlNzk2NGJhYTE5ZWQxYjY5MzczMCBsZWdhY3ktdHJ1bmsKKzMwNDQ2IGJmOWUwNDI0MjM3ZjUxNTYyMmQ4MDUwZTFhY2EwZmJiNjQxYjlkMmQgbGVnYWN5LXRydW5rCiszMDQ0NyA3NzZmMjcwYTZlYTljNzBiZmU2N2U0NGU0MTM1NGExMzhlYjM5MmE1IGxlZ2FjeS10cnVuaworMzA0NDggNDQ0OGZmOGIzMjM5MGJmZDkyNWY2OTM1M2Q1ZGRhMTcxNWJlMTAyNyBsZWdhY3ktdHJ1bmsKKzMwNDQ5IDRjMDNhNGZhZDcyZWYyNjE3MDdiODgyZWNlNDMxMGUyZTBlODQxZTcgbGVnYWN5LXRydW5rCiszMDQ1MCA4NDg3OWUxODM3NzM4NDk0OWZhMjliY2E2MjFlYWI1NTBjYzM5OWYzIGxlZ2FjeS10cnVuaworMzA0NTEgOTA5OTgwNzlhMWEyMzg5MzI1NGRiYmY1OTJkMmE0OGU2ZWJkNzhlZiBsZWdhY3ktdHJ1bmsKKzMwNDUyIDY3ZGYyODkzYTUwZWU4MTc3YzEwMjY5N2M0OTQwOWI0YmFkZjg2OWMgbGVnYWN5LXRydW5rCiszMDQ1MyA3MDFiMTAyOWFmNDA3OTA1NTBlZTdkNDk5MWIxZmIxYzJiMjc4YzhlIGxlZ2FjeS10cnVuaworMzA0NTQgNzBmMGYyNWIxMzRlNDI4YzFkMTdmYjgyYjUzNzdlMTIzN2NhMTNkZSBsZWdhY3ktdHJ1bmsKKzMwNDU1IDc3NGY3NTRmZDFmZjE1MDM4ZmJlOTEwN2FjYWRlOTE1NTJmMjI3ZjAgbGVnYWN5LXRydW5rCiszMDQ1NiAzNWU1YjAyMWI3NzQ0NDcyMDNlZTczNDE2YjliMTlkYzJmMDljODViIGxlZ2FjeS10cnVuaworMzA0NTcgNzg0ZTdmZGY4YzUyNDM0NmZlMDNmNTNkYmFiMDVmMWQxNDM2ZjU4MyBsZWdhY3ktdHJ1bmsKKzMwNDU4IDY5ODk2MGQ1NjFmOGRhNTg5OGUwZmRhYTJmYzAzYWVlZTE3MjE4MjMgbGVnYWN5LXRydW5rCiszMDQ1OSA1YjE1NzU5NjhmN2ZhZjgwZTcwMjgzNDFiMWNiOTI2YmYyNGRjNjg3IGxlZ2FjeS10cnVuaworMzA0NjAgNTY3N2U5ODBlMDQ3ZTQyNDhmZmZhMDA1MGI3NzJmNzFkMGE5M2I0NCBsZWdhY3ktdHJ1bmsKKzMwNDYyIDJjNjcxNjlmNmUxM2ZiZGQxN2I0Nzc2ZGM3OWJjNTJhZWUyNWFlNDkgbGVnYWN5LXRydW5rCiszMDQ2MyBlMDJkYWY2MzA3ZmM4YThlYjVlMDAyNmU4YzcwZGVlOWVjMDczODZjIGxlZ2FjeS10cnVuaworMzA0NjQgNTQ5ZDA3ZDBhZWQ3ZWNhMTkwMjdjOTY1Y2I3MDkxMWFkM2FjZjFkNSBsZWdhY3ktdHJ1bmsKKzMwNDY1IGY3MjJhODMwMTQwZmI0MTVlNWUyODczZDRlMTExNGY0ZDFlZTc4ZTQgcjIzYTEtYnJhbmNoCiszMDQ2NyA3ZTIzNTFiYzZlN2E2OWJmNjhkZjcxMjUzNTE4NmJjNWIwNmFjMjcxIGxlZ2FjeS10cnVuaworMzA0NjggMWM2NWZhNWU1MmMzZDgxYWIwMWJhOGVmM2EwYmRlZDRhZjNmNmJkZSByMjNhMS1icmFuY2gKKzMwNDY5IDE1MDE3YTc5YmFjZGRhZDI3YmJhYWQ0ZjM5MmJiNGIwOTExNzczMTggcjIzYTEtYnJhbmNoCiszMDQ3MCBkNmRjZmY0YjM1NzQyMzQ4MGU0N2E1NTVlYTAwYmYzMmYyY2U4ZjMyIHIyM2ExLWJyYW5jaAorMzA0NzEgMmI4MDExNjgxNWI1MzVkZDk4MDJkNmMzNTkxYTZkOWNiZDY0YWI5NyByMjNhMS1icmFuY2gKKzMwNDcyIDkyZTU3MmUzY2E5ZjhjODMzOWY3ZTk2YTk1NmJhOWI3ODJiODgyNmQgbGVnYWN5LXRydW5rCiszMDQ3MyA4YThkZmYyNTBiZTQzNjJmYTFhNjdkMzFhZDQ4ODcwYjYwM2YyNmZjIGxlZ2FjeS10cnVuaworMzA0NzQgYmNiZDk0YzYxMGU4MjNmMjk1ZDFiNzQzOTllYmI2OGI4NzhmYWM1MiBsZWdhY3ktdHJ1bmsKKzMwNDc1IDdjYjczYTczMmY3NzFlYWEyMzZmMmRmNDJiOThmODUyNDJlYjkwYWIgcjIzYTEtYnJhbmNoCiszMDQ3NSAwMTgzMDc3NjVkMzRkY2Y2MmQ2ZDJhZDY2YmQ3ZjdiZGU1MzFlZmEyIHIyM2ExLWJyYW5jaAorMzA0NzcgY2ZhMTNjZTk4M2JhMmI3ODk2NmMwZWM3ODcxMWNkZjdjODIyMzYzZiBsZWdhY3ktdHJ1bmsKKzMwNDc4IDY5OTA1MDU5YzdiZDE4ODU5YjNmOGEyNjNjZTg3ZWVlYjFlYTI3ZTMgbGVnYWN5LXRydW5rCiszMDQ3OSA3NDA3OWJlNmYzZjExNGUxOTIyODMzNTJmOTAyNzFhNzZkMTAwM2Y1IGxlZ2FjeS10cnVuaworMzA0ODAgY2Y4MWY4MjVkYWFjOTI2Y2Q1NDdhMjQyYTBlNTVjYmVjNDE1MTliYyBsZWdhY3ktdHJ1bmsKKzMwNDgyIDRlMDkzMmExMTJmNDJiNTU5YjczMWM5ZWQ4Zjg3ZGQ5YjYzMTZjZWQgbGVnYWN5LXRydW5rCiszMDQ4MyA5NmUxYWI4ZGY4ODM4NGFkYTc4MzAyMmI4NzVjYjk3NDJmZDVhYmE0IGxlZ2FjeS10cnVuaworMzA0ODQgMmE4N2Q5NDg5MTEyZmEyZTM0YWEzZTg3NWI2ZjIzNjBlY2ZkYzJiZSBsZWdhY3ktdHJ1bmsKKzMwNDg1IDAwY2QxZDcxNTljMmI0NTEzMTEyMTFlYzBlZjljOWY5NWY0NDJhYmMgbGVnYWN5LXRydW5rCiszMDQ4NiA2Y2ExYzBkM2VmMTkzMTIyNDQxNDI1MGExMjE3M2VjZDNlNjk1MTE2IGxlZ2FjeS10cnVuaworMzA0ODcgOGVkNDcyZTViY2Q0NGRkMzIxYjQzNWY5YmQxOTkwNTVhMDc5Y2VkMSBsZWdhY3ktdHJ1bmsKKzMwNDg4IDg4ZGYyNjdkYjg1OWUzZjRiODlmZDY4NjRkOTFiZTQ0MzAxNDE5NDcgbGVnYWN5LXRydW5rCiszMDQ4OSBiZGE0MTg1NjcwY2NiNzQ4ZTgzOTlhZjYxOTBjNzc5ZmFmMTliN2VlIGxlZ2FjeS10cnVuaworMzA0OTAgMjkzZWRhM2U2OWY1ZjU4MjE0YWFiMjk5Y2EwMzg5NmRiMTRlZGMwMiBsZWdhY3ktdHJ1bmsKKzMwNDkxIGY1NzA4M2EzNDE5NjY0YWI0OGUwOTRjMGI0ZTdhM2UxODdlMGQxNTQgbGVnYWN5LXRydW5rCiszMDQ5MiAxYzQwNjBkOWU2ODc0YzM1ZmMyYjdmYzNkMGFhZTBiNmI4ZjUxNGEwIGxlZ2FjeS10cnVuaworMzA0OTMgZWE2N2NlYTY3NmU5OTM0NWIwZGZlYTI0NWJjOTQxYWFkOWVlNDhhYiBsZWdhY3ktdHJ1bmsKKzMwNDk0IGQ4NWVhZjQ3ODU1NmVmYzYxM2Y2ZjRmODkwOWIwYjYyNzkzYWQwNWUgbGVnYWN5LXRydW5rCiszMDQ5NSA4MTIwOWMwZjA4YTA1OTI2ZjdiZDBlOWY5MDU1YWNjZWFkYjAyZDA1IGxlZ2FjeS10cnVuaworMzA0OTYgNDU3OWU4M2M2NjNiNzAyZWEyMGJhYjFhNjIzMmExMTFiNWI0YWE3NCBsZWdhY3ktdHJ1bmsKKzMwNDk3IDcyYzNmNzM0N2U4OGM4OTQ0MDZkZWRkYTc4N2ExNmZhY2M1YTljNjEgbGVnYWN5LXRydW5rCiszMDQ5OCAyNjg3YTkwODU0MTFlNzg1N2Y2NTYyZTAyMjcwODYxNTM2MGJkN2FjIGxlZ2FjeS10cnVuaworMzA0OTkgNWM0ZmEwNGM5ZjYyOGQ4OTkyYzI1MDY2YWJiNGZjOWJlYzQ2YmU2NiBsZWdhY3ktdHJ1bmsKKzMwNTAwIDZhNWNmZmM2MjM4N2RkYWEwOTBiYWM1MzNlYzUwYTg3YzlmN2I3ZmQgbGVnYWN5LXRydW5rCiszMDUwMSBjMGIzYmI0ODViY2Y4MDAxNmNlODYwYWRlZjVkYWFkZWRlNGY5MGJhIHJlbGVhc2UyMi1tYWludAorMzA1MDIgOTdkYzUzMGQ5MGViNzg1MjYyZDE1OWY5NTkzZGNhZjkzZTc4MDk2OSBsZWdhY3ktdHJ1bmsKKzMwNTAzIDQ3OTMxMDE0OWIyZWRlMWU3MDk3MjE5N2E0ZWE5ZjU4MjJlZWIyZmMgbGVnYWN5LXRydW5rCiszMDUwNCBmZDlmMjBjZTNiYmExZmM5YzM4YmIzM2M4MzA3MDRmNGI1MjEyM2U0IGxlZ2FjeS10cnVuaworMzA1MDUgNzQxYWE5ZDZkOGJlZDc0MDVmYzMzMWYzN2JiMjMwMGVkMjYzYmYyNyBsZWdhY3ktdHJ1bmsKKzMwNTA2IDBiM2ZjY2ZiZTJhMjg3NjFlZTRjNTc4NjFiMTI1MDIwYzZhYjQwZTQgbGVnYWN5LXRydW5rCiszMDUwNyA5ZWU0ZmQwNWQzY2JjZDVhZDdkYWIzODMzYmJjZjkwYjJkYzBmOGMzIGxlZ2FjeS10cnVuaworMzA1MDggYmZhMzI2MTNkZWM4ZWNhMGU4MTc2MjZmOTg0ZGZkZmY1YzU4YmQ1OCBsZWdhY3ktdHJ1bmsKKzMwNTA5IDcyN2JjYjgxMWM1MGY5NWZkOTQ1YjJmMGVmNDM4OTI4OTU2YTJhNTEgbGVnYWN5LXRydW5rCiszMDUxMCBlMmM4OGM0NTFjMTlhNTQ0NGM5NWJjNzA5ZjMyYmY1MGI1OTMzNDE4IGxlZ2FjeS10cnVuaworMzA1MTEgZjQ0MWM0ZTViMjM0NjU2NTQ1Yzg4ZmU1NDYzMTliN2Q5YmI0YTczNiBsZWdhY3ktdHJ1bmsKKzMwNTEyIDEwOThjY2M4NGQ2M2Y4OTJmNjJmYWNlODIzOTUxZDViN2JmYWI0NzYgbGVnYWN5LXRydW5rCiszMDUxMyA4MDZkMzZlNTZiZmEzZTA4MDExZjQ5YmIwYjNiZTc3MGYzZDRiODBmIHIyM2ExLWJyYW5jaAorMzA1MTQgYWQxMmVhOWM3ZWZkZjQ2YjYzODliZjNjZjY1ZTU1ZGU5ZmRlNWMxNyByMjNhMS1icmFuY2gKKzMwNTE1IDQ0MTQ3MDdkOTM3NjE2YzZhZDRiNjBjMjYwYTMzMWE5YWY4NDk1OTIgbGVnYWN5LXRydW5rCiszMDUxNiBlMzI3MWU4YjE0ZGVlMGZiZTA3ZDFhODUyYzAwZjgyMTNmN2Y3ZmZlIGxlZ2FjeS10cnVuaworMzA1MTcgYzQyOWZlNWRlNDE3MzU2MmQ1MzAzMWMwZjM4NTE2YTRjZGNhNjhjNiBsZWdhY3ktdHJ1bmsKKzMwNTE4IDMzOGFjODZmNDQyZDk5YWMxYWJhNzU0NGM0ZjFmZjhlNGNmOWMxNGEgbGVnYWN5LXRydW5rCiszMDUxOSBkMjc5ZDc2M2Y0NjI1NGVjNWRjMWZhNmQyNWUyMjY3ZWE3MjcyMWE5IGxlZ2FjeS10cnVuaworMzA1MjAgZDU5YjdjYmNlYWMxYzZjOTY1N2QxYjM5MWM0NjlhYWUyMmI2YmIxYyBsZWdhY3ktdHJ1bmsKKzMwNTIxIGIxZTIzYzM1NzA3YmU0YzAxMDJiNzU5OGI1NDk1N2RjOWJiYjc1MjMgbGVnYWN5LXRydW5rCiszMDUyMiBiNjFhNjYwMjJkNWE0MDFmNGY2MzI1MTA3MTMwMzUzOWYxNGYzNTU4IGxlZ2FjeS10cnVuaworMzA1MjMgOGVjZGRmNGFkOGIwMjgxZDY5NDY2ZGI4NTZjZmUyNjZjYjJhODQ5YSBsZWdhY3ktdHJ1bmsKKzMwNTI0IGRjMzNkMDI3NjQ1YTRmM2Q5MGRhNmQzM2ZmYTJiOTJiYjliNTcyOTggbGVnYWN5LXRydW5rCiszMDUyNSA5M2I2YTNmNjEzMmRjODI4NzMyMzMxNzAyZWM2MGRkMzk4ODFkODc3IGxlZ2FjeS10cnVuaworMzA1MjYgNDFmNzcyNmUzZTUxMTdhOTE0NDRkZDQzODA5MTkxOTNkMTU1ODAzMiBsZWdhY3ktdHJ1bmsKKzMwNTI3IGE5ODY3M2JlMjBjMjgwMmVmYTQ1Yzc0ZjVkMTc0MjI2MjcwOGE1MjggcjIzYTEtYnJhbmNoCiszMDUyOCA0MmYzM2JkNjljNzI0Y2Y0ZjVmYTRmMTg1MDI1YjVkMjlhMjU1MWVkIHIyM2ExLWJyYW5jaAorMzA1MjkgZjBiZGY0YzU5MGVjNDBmOTgxZmVhNGEyMzkyMDVhMzdjMDMyNDNhNiByMjNhMS1icmFuY2gKKzMwNTMwIGJlNTExMjAzMTE2ZjA2ZjMwOGM2NzU2ZmM4Mjk3YzQxZDhhOWQzYmIgcjIzYTEtYnJhbmNoCiszMDUzMSAxM2M5MDM4ZmE5Mzc2OTkzOGM2MWQ3ZWQ2MmM2MGIxMmYwNTQ1OTcwIHIyM2ExLWJyYW5jaAorMzA1MzIgZGQ2ZjFkZjUyNGRkYzc0MDI0OTFjNGFiZjg0YjEzODRkNTU2MWFjMiByMjNhMS1icmFuY2gKKzMwNTMzIDY4ZGFmZTFiYzAxNjlhODY2NzlhY2YzMDJmNTA0NzVkMThjNjcyZDQgcjIzYTEtYnJhbmNoCiszMDUzNCAwMjU5ODU2YzFlNDc2MTA4MjdjNTBkNWU5NWU1MGRiMzljYTI3YWY5IHIyM2ExLWJyYW5jaAorMzA1MzUgOTlkZjBlNTJmNjM0MzMyNjVlNTY3ZjI4MDViYmM0OTFlNGQ1NmQwYyBsZWdhY3ktdHJ1bmsKKzMwNTM2IDFhZTc4MjQ5MzEzMmI5YTQwZTkwOGFmYmE0NTJjMmIyMTY5MjczYWQgbGVnYWN5LXRydW5rCiszMDUzNyBiMzBmZTRkY2M2OTc5ODYzYmU2NzZlYzA5YzYyZmM0ZGRkZTdhYmRhIHJlbGVhc2UyMi1tYWludAorMzA1MzggNmUxYTc0MzVkZjI1ZDM1MzE3M2QzNjBkZjIyYzZkYTQxMGNiYzljNSBsZWdhY3ktdHJ1bmsKKzMwNTM5IGU2NWZmY2I0MzY5NTE4ZDcyYTE1ZGM4MWY0Y2MxMGQxMDgxOTdiMmUgcjIzYTEtYnJhbmNoCiszMDU0MCBhZTlkOGY1MGU3NmEzNjAzYzJmNTViZTI2ZjE3YTU2NTc4MzU3NWE2IHIyM2ExLWJyYW5jaAorMzA1NDEgZjlhNTU1N2M5NDQ3YWNhMTZkZDYzODI1MjNiNWJiZWYxNzMxMTlkYSByMjNhMS1icmFuY2gKKzMwNTQyIDA0MWM1MmY0OWRmMjI3OGRmM2I5MmU3ZjJmNDA3NTc0OTVkZjM0NTIgbGVnYWN5LXRydW5rCiszMDU0MyAxODg0MTZmYjdhYzUyZDJlYWE1MThiOTQ2OWUwNmM0MmJmZmY1ODE1IGxlZ2FjeS10cnVuaworMzA1NDQgZWJmNzI2NWFhZTRlYTkyZmNjZWYzMDVlMGU2OGQyZDEzYzdiZDMwOSBsZWdhY3ktdHJ1bmsKKzMwNTQ1IDIzMjgwYTY0Mjg4ZTNlYTE3YTQ0MGI3ODhkNWQwYWYwMjI1YTA0ZWMgbGVnYWN5LXRydW5rCiszMDU0NiA1ZDk5NzI2M2I4NTliOTJmMjc1ZjdlZWMxMWZmMzgzNzhiYTQzNGQzIGxlZ2FjeS10cnVuaworMzA1NDcgMjM3YTE0NjIwNzg1OWI1ZDY3NWY3NzNhOGZmODMzM2ZmY2M1MTU5MCBsZWdhY3ktdHJ1bmsKKzMwNTQ4IDczN2E1NDc2Mzk2YjY0MTY4NDFmMjAyYTMwMTFkN2JkYThjOWY4YjQgbGVnYWN5LXRydW5rCiszMDU0OSAyNjdmNDViZTljMDJjZDQwYmVlZDM3MDQ0OGZmN2MwZWNmY2U2NjNlIHIyM2ExLWJyYW5jaAorMzA1NTAgNTU0MTIxZmNiYjlkY2JmZDYwMzRiNjlkMmE4MDBkY2EwNzhhZjhkNyBsZWdhY3ktdHJ1bmsKKzMwNTUxIDFjZDljODU2NDg3NWI4NWI1MjA3YTRkMDU5NThjMzhjNGQ2MDkyYjcgbGVnYWN5LXRydW5rCiszMDU1MiA3MGQyY2IzNmZhMTdhMzFmZTdhNWQ2ZGNkYTY1MjdlZDIwYWQyOGY2IGxlZ2FjeS10cnVuaworMzA1NTMgNzgyMjc3MDljYTA0NGY3OWU0ZmUxYmQ2NTk2MDQ3ZmEzNDY5ODk4YSBsZWdhY3ktdHJ1bmsKKzMwNTU0IGFmMzU3OTUxMWY4NDY4ZmQyMTAyZDYyYzkzZGRjNDU1NWQ3YzlmZWQgbGVnYWN5LXRydW5rCiszMDU1NSA5ZDA4MjkxY2Q0MTE2NjIxOWViZDFiNTJmZDBkNTg5MGNjM2I4MDk0IGxlZ2FjeS10cnVuaworMzA1NTYgNzE0Y2RmMDgwNmMxNmY3YTQyNjM2MDRiMGNhOTUzNzhkMTYxZTYzZCBsZWdhY3ktdHJ1bmsKKzMwNTU3IGUzODJkMzkzMzMxZDVjMTIxZWM3ZmFmZWQ4OTliM2Y0ODNhZTc1ZjYgbGVnYWN5LXRydW5rCiszMDU1OCA5NGI5Y2Y0Mjc0ZGUxZTA1ZjlmMTYwYTJiZGFmOTNiMzE2MzcwMjljIGxlZ2FjeS10cnVuaworMzA1NTkgZWUzNGI2NDk1MmMwZjhhNjcyYjA3ZWJhOTc1NjgwZTIzOGFlMzZhYiBsZWdhY3ktdHJ1bmsKKzMwNTYwIGNkM2M0ZGYxOWIwMzViNmFlYWEwZDE0ZmEyMmU0MjQ2YTIwMjQ1MGMgbGVnYWN5LXRydW5rCiszMDU2MSBhZmViNzBjODc2YWEzNTE0MjE3YjkxNGQxZjhiNGFkZWI1NTljNjZjIGxlZ2FjeS10cnVuaworMzA1NjIgY2Y5MDMwOWVmZWVlNjIyZGY2NDFhOTY5MDUwMGIwODM5YWQ3NTNiZiBsZWdhY3ktdHJ1bmsKKzMwNTYzIDY5NzdlMzIwYTc1NmM0Njg1ZWJjYmIyMTlkYWUzZjhkZDM3OTAxMzUgbGVnYWN5LXRydW5rCiszMDU2NCBkM2JhN2Y0YTlmODhhZmU1ZDgyNjBkOTAwZTMwNWU2Yzk4NTk4NDQ4IGxlZ2FjeS10cnVuaworMzA1NjUgYWFlOTQ5NTA2ZDJhN2QzMjgzOTMxNmM1OGU2MzhhMjViMmRlMWI2YSBsZWdhY3ktdHJ1bmsKKzMwNTY2IDE1N2E5NWY0MTdmM2Q3YmNjZDAzZjMwZmExZjNhMDRhMmE3M2IyN2YgbGVnYWN5LXRydW5rCiszMDU2NyA3OTAxZmQ5NTAxN2YwOTQ3ODNmMjIxY2VhNzNjMGY2YjFjNjhlNGY3IGxlZ2FjeS10cnVuaworMzA1NjggY2JkZjYwY2NmNTRmNWRmYzdiZWQwMGNhZGM3MDI0NGMxNWRiZGQzOSBsZWdhY3ktdHJ1bmsKKzMwNTY5IGViMzIyZWY2N2M5ZmVjNTAxOTQyZjNhMjBhNTAxNjBkZTU5YjEwNGIgbGVnYWN5LXRydW5rCiszMDU3MCBjYzViMmQwYTRhZDFkODZmZTI2OTc4ZGM5ZjRlOGE3ZmI2ZjdlNjM2IGxlZ2FjeS10cnVuaworMzA1NzEgMDZiM2ZhMjVkOWYxZGUzZmE3NTNlMTcyZjY3OWZiOGNiZjk3MzlkOSByMjNhMS1icmFuY2gKKzMwNTcyIDE3MTJlMjA0YWE5MmYxMjA3ZjJlMTZkN2Y4YmFiMWRlYTE2MzUxZDUgcjIzYTEtYnJhbmNoCiszMDU3MyBlZjUzMTQ4MmJiMzdiMGZiMzhiZjAxNjJhODYyN2NkZTIxZmYzZDMxIGxlZ2FjeS10cnVuaworMzA1NzQgZTkyMDQ0YzBiOGVjZWU4MTc1YWE0NjZlZTUzYTMzY2JhNDUzNWUyNyBsZWdhY3ktdHJ1bmsKKzMwNTc1IGMzMGY5NzI4NzYwMjk0ZjJmODhlZmUzNWQ5ZWIzM2ViMmMyZDIwZTAgbGVnYWN5LXRydW5rCiszMDU3NiAxNTY0YzY4MzllNmIwZWI4MDU5YWU0YzgxY2QwMjE1OWRjMDlkYjI1IGxlZ2FjeS10cnVuaworMzA1NzcgMGJhNDY2MDZmMGY5MTE4ZGVjYmE0MGQzZmYwODI4MGUyNThlNzdhYSBsZWdhY3ktdHJ1bmsKKzMwNTc4IGI4NjU5MjVlZjY4YWI2M2Y3NDhlZWZkNjhjZDQwOWQyMjZiOThjY2MgbGVnYWN5LXRydW5rCiszMDU3OSBjMjlhZGE2YzFjOTA0YTI3NDVkYTVhMDUxODZhOGEyOGIwMGEzMmUxIGxlZ2FjeS10cnVuaworMzA1ODAgNzUzMzA2ZjliMGEwZTMzOGM5YjEzNjIyYjRkZWY1NDU4NjAxZTIwNyBsZWdhY3ktdHJ1bmsKKzMwNTgxIGMxZjRlNTNjNDJkZDBjZTA1YTQ4MzFkYTFkYTU0MDA0MzJiNjQ1NzYgbGVnYWN5LXRydW5rCiszMDU4MiA5NzJmZWMyMWYyMjNiNzEzOGJjOWJkMDc1NWJhYzFjNzA5N2E3YzU5IGxlZ2FjeS10cnVuaworMzA1ODMgYTc0Yzg4ODM4YTU1YjQyMWY4YmJlOTkyNDllNzJmZTA3NDNhZmQyZiBsZWdhY3ktdHJ1bmsKKzMwNTg0IDJhZTFkMTc1NzJkYTZhOGU3NGZjZjVmNzAxMTZjYmU1NWZhNmM0NTEgbGVnYWN5LXRydW5rCiszMDU4NSAzMTk5ZTk3NGY1NWFhM2Y2ZGU1MmY2OTI0ZTIwOGRhYmE5MTYxNTcwIGxlZ2FjeS10cnVuaworMzA1ODYgNjRlOGM2OTg2NjEwYzJiMzc4NjQ4MDY0YmRmZmQxNGRkYzcxZjJhMyBsZWdhY3ktdHJ1bmsKKzMwNTg3IGQ1ZTA5ZDQxMmI1Mzg4MDY3ZWI5M2RjOGZlMTg3ZDBhMmY1YWVmMmEgbGVnYWN5LXRydW5rCiszMDU4OCBmNzIyNjQyMmMxZDBhNGI3MTQxNmJhMzA1MjUyYjM4MGYxMzhhZTRiIGxlZ2FjeS10cnVuaworMzA1ODkgOTAzNTBiNWQzMzk3YzRmZDY4Y2EzZWM0NmNkY2Q5OThjOWFjMWVlNiBsZWdhY3ktdHJ1bmsKKzMwNTkwIDM4MzE5NDA5ZTg5NTY3ZTI0MjhhMTZkMDVjOWUwMWJkYzc5OTEwNTYgcmVsZWFzZTIyLW1haW50CiszMDU5MSA5M2YzMjJmNTYyZjM5OThjZmYyNjUxMjYwMDJjMmQxYjc4M2QyNjgyIGxlZ2FjeS10cnVuaworMzA1OTIgYWJiNWE2OWQ2MGNiZmY5OTQ2MzliZjM0MDg2ZjhiMjE1NTNhMjNjMCBsZWdhY3ktdHJ1bmsKKzMwNTkzIGExMjM3OTNjYTE5M2JlN2Q0OTA1ZDUzYzBiNGZiY2RmMTAzZmUyNmEgbGVnYWN5LXRydW5rCiszMDU5NCAzYTI5NWNlYmE0MDFmNTdhZDZkYTY2NjZlZDdiMDU1YzNlMzc5YzA5IGxlZ2FjeS10cnVuaworMzA1OTUgMzg4ZTU0NzQ3NzQwMGY0NTJmM2IwMWNlNGZmN2U5YmQ3NjhlNDA4NSBsZWdhY3ktdHJ1bmsKKzMwNTk2IDU0ZWY3ZDUyOTZmMTA0MGFhMzhkODFhZWIzNTYxOTBkM2Q1M2QxNTQgcjIzYTEtYnJhbmNoCiszMDU5NyAxYWM5OTk0ZGM2YzI1ODEzMDJhYzk4YTUzNTYzNGVkMDkzNDIxZjYxIHIyM2ExLWJyYW5jaAorMzA1OTggMWEwZWFiYmRhNjU0YWE1NTFlZGM2ZTY3YzQ2YmI2MTNmMGIyZmM3MyByMjNhMS1icmFuY2gKKzMwNTk5IDk3YjVhYjY3YjlmMjkwOWQ4NGQyNDI5NTA2MGMzZGNiNmQ2MTI3YTggcjIzYTEtYnJhbmNoCiszMDYwMCA1MmNlNzEzNThlMzJhMTE2OWRjZjAzY2E3NGMxZjRkZmFiMzFiODZlIHIyM2ExLWJyYW5jaAorMzA2MDEgN2RhYjI3NzMxYmU4MThkMDRiMjI4ZmU1MjdjNTE2MWZlNTVmZjcxZSBsZWdhY3ktdHJ1bmsKKzMwNjAyIGJkNzUwMzc4ZDVjMWZmYzJkMzMwN2M1MDE2MDIxOTdjYzFjNTEyYWMgbGVnYWN5LXRydW5rCiszMDYwMyBlODQxYzg3M2E5MzcwM2NmNDZhMzU0NDNjMzQ0YWE1M2M5YWM4YjEzIGxlZ2FjeS10cnVuaworMzA2MDQgMjdlOWMzY2Q1OGFmZDMzMmYzOTNhNGZjYTViYTI0MmIwZGFhOTQxMiBsZWdhY3ktdHJ1bmsKKzMwNjA1IDZjNGJkNDg3ZmQyNjBiZDkzZGEwYWE5NDI2ZTZmZmUyMmEzNWMwMDkgbGVnYWN5LXRydW5rCiszMDYwNiBhMTY2NGI3ZGE3NmY3OWMyMmE3OGQyMTBkYjI1Y2VjZmY5MTQ1YTdjIGxlZ2FjeS10cnVuaworMzA2MDcgM2UyM2RlODAyYTVkYWNmZjI2YzZhNjkzMDMxYTU0M2Q4NmQzYjJhOSByMjNhMS1icmFuY2gKKzMwNjA4IGI0MjI1NWM4MjJiMWU1NzFkNWM0ZTAzZDk2YTA2Zjg1YmQ1NWUwYTQgcjIzYTEtYnJhbmNoCiszMDYwOSA4ZDdkZGJiMzMwZDMxY2JjZmE1NTkwZDE1MGU1ZTViOGFhNDQ4NzNhIHIyM2ExLWJyYW5jaAorMzA2MTAgNWFiNGI2NDhhNGNmNDdkZmMzMmExOTBiNjg1YjRkNGZlYjhmMzNjZCByMjNhMS1icmFuY2gKKzMwNjExIDk2YThlZmQ5MTk0OGMxZWFjMzU4ZDczZjY3ZjAyODIzZTkwYzlhY2UgcjIzYTEtYnJhbmNoCiszMDYxMiAzM2I0NjEwYTg5MjI1M2MzYjZlYTRjNmYwMzU3YmJkOWMxYzkwMjBmIHIyM2ExLWJyYW5jaAorMzA2MTMgZjlhNWVkMDkyNjYwMDYxMDA4Y2RkZDNlOTFmNGFhMDFkMzU2NTJjOSBsZWdhY3ktdHJ1bmsKKzMwNjE0IGExNmJjNjRmMTE0NWI0NDhmNWUyMjlhMDc2Y2IzMmYwNTNkZmMzMTAgbGVnYWN5LXRydW5rCiszMDYxNSA4MjI2NjU4YTYzYmIyZTNjNTA2MWQ4MzMzMjFmMmEwZjFiOWQ4NzE5IGxlZ2FjeS10cnVuaworMzA2MTYgNmQ3ZGFhNTMyOWM2YWNhZWM5NTYzYmQ2ZGI5NWIxYmYxM2VkY2UxNyBsZWdhY3ktdHJ1bmsKKzMwNjE3IDY5MzMxZmFjNGVmMjViMGQxMDgwMTcwMDY4MzAxMTczY2RkZTk5YWEgbGVnYWN5LXRydW5rCiszMDYxOCA0MzA2YzY2NWY4NTdjY2U4OTYwNjIzMDg0MDc1ZGIxMWMxNzc4OTFhIGxlZ2FjeS10cnVuaworMzA2MTkgMjQ0M2M1NTdjYmMzZDNjOTAwNDA4ZThkMzBiNTNlNTVkNGFjNjJhMiBsZWdhY3ktdHJ1bmsKKzMwNjIwIDgyZWFjMzFlNmUyZGM5OTc2ZDM1ZDU2OTI0Zjk5NmIxOGQ2Yjk3MmEgbGVnYWN5LXRydW5rCiszMDYyMSBhZWU0M2E0ZjM1NzBkNzIzODQxMGE2MGExODQ0MTI3NGU5ZWZkOWFlIGxlZ2FjeS10cnVuaworMzA2MjIgYTBhNmY0ZGQ3MzI4Njg1Njg1Y2ZmNzlmYjNkMGEzOTQ3YmQ0ZGUxZiBsZWdhY3ktdHJ1bmsKKzMwNjIzIGZhYmE2ZTZjODI0ZGY5ZTQ4YmJmNGYyOGFhYzEwMWRjMGMxNWJhN2YgbGVnYWN5LXRydW5rCiszMDYyNCAwNDY0YWNiNWIzZTQ2YjFlNTdiM2I4ZmI1Zjc2ZTJmYjY2MzQ2Nzg3IGxlZ2FjeS10cnVuaworMzA2MjUgNTVkZTJiOTUxODFlOTM5ZjJiZDI3ZWY0MDNkNTdkYmQzNTAzZTE2MiBsZWdhY3ktdHJ1bmsKKzMwNjI2IDAzNjRhYWU1YTVhNDBiYWY4MDdjOTNjZWY1YzQ3NDA3ZjgzY2ViNTYgbGVnYWN5LXRydW5rCiszMDYyNyBlNzE5YWI0NmFkYWJmY2IxYTg3ZDU3N2MxOGIxNjM5ZGI3NmU1M2ZiIGxlZ2FjeS10cnVuaworMzA2MjggZDJmYTFkZGNkZjZkYTZlZGYyYTE0MzY4MWUxZTI5ODc5ZTQ3MGQzNyBsZWdhY3ktdHJ1bmsKKzMwNjI5IGIyZmM0OTQ5NjNiMmVjOTQyNTUyNmU2ZjA3NzY2YWI0YzA3YmY4NTIgbGVnYWN5LXRydW5rCiszMDYzMCA5ZGI0ODgyNjEwZTViODNiYjA2ZGRhOGY0ODIyYjQ1ZDllM2UxOWE3IHJlbGVhc2UyMi1tYWludAorMzA2MzEgYTJmMTdmNGE2YTIyY2ZiOWIzYzRhNThiNGQ1NGMwY2EyOGViMGMyNCBsZWdhY3ktdHJ1bmsKKzMwNjMyIDM3YmViNGQ2MDkyOTgzYmM4M2I4YmI2NTVkYTk1MTQ4ZjdhNjQ3Y2UgbGVnYWN5LXRydW5rCiszMDYzMyBlYjkzNTNiNDNjZDEyYzE3OTJlMzkxOWM5Yjg2MGMyZWQxNWVmMGI1IGxlZ2FjeS10cnVuaworMzA2MzQgYjNjOGQ5YzQ3MmRjOTI2YmJjZTM2MGI0OTA0NGQ5M2FhZDRkYjdjOCBsZWdhY3ktdHJ1bmsKKzMwNjM1IDg2ZTdhMWY3ZjI2NTI3NzA2NjU1ZDhiZDFmYzNkMDBiNjBhYjViYTQgbGVnYWN5LXRydW5rCiszMDYzNiA3ZWM3NzE4OTM0MTAyYTk5YmI2NjMzZTVmNmZkMDUxODkzOThlMmJkIGxlZ2FjeS10cnVuaworMzA2MzcgYzBkNWZlOWEwZjFjM2U0MjM3NjMzNzEwNzBkNmI3ODU2ZGMzZWM1MiBsZWdhY3ktdHJ1bmsKKzMwNjM4IDFiODgxZDVlNGE5MDNlNWM0NjdiZWM1MzA3MWQyODRhZWYyZTQ2MzMgbGVnYWN5LXRydW5rCiszMDYzOSBkMTg1MGEzNmFlNDFmZDlkZjkzYmZhYWI5MDQ3MzhkNzFkZDg5MTQ4IGxlZ2FjeS10cnVuaworMzA2NDAgZTU0ODU1MjU3YTRmOTMwZjMxZDQyMmRhYTlkZDYwYmU1NzU0MGZmNiBsZWdhY3ktdHJ1bmsKKzMwNjQxIGFjYzgwZWFjZTRkYzEzNGUxZTMzMTc5NDI5NWZkNzZmNmE4ZDdhNGEgbGVnYWN5LXRydW5rCiszMDY0MiA0NmE2ZWQ3Y2M0ZmU5NWViODE0MTJhZGMyNjI1NjljMjA3NDZjMTlkIGxlZ2FjeS10cnVuaworMzA2NDMgNDVmMWU2YjEyYTgxM2I0M2IzOTUzMzA0ZTVmM2VmODE0MWMzM2Q3ZSBmb2xkaW5nLXJlaW1wbC1icmFuY2gKKzMwNjQ0IDA0N2I2ZTE2YWIyZTRkOWY4ZjFkMWE5ZmJhYWM0MTcxMzFlODI4OGQgbGVnYWN5LXRydW5rCiszMDY0NSA2ZGZkYjFjMDMwOGFkMWZlODY0YWVjZjY4Njc4MzJmMTVmNDdhZjI4IGxlZ2FjeS10cnVuaworMzA2NDYgODYxN2MyNTA2YjhlNDU0OWIyZGVjM2JmMDAyMGE3NDNiMzNjNGFiYSBsZWdhY3ktdHJ1bmsKKzMwNjQ3IGU4N2Q1OTBhNWRlMTg3NDdjNzVmYjEwY2U2YzFkMDRmNGQ5M2M4YmYgbGVnYWN5LXRydW5rCiszMDY0OCAyMmQ2NjA0OTRmMjljNGQ3OTFjNDY0OThlNTU3MDdlYWI4MTRmNjZlIGxlZ2FjeS10cnVuaworMzA2NDkgNDliY2ZlY2IyOTYyNzI1NmFlMjg4M2RmMGNjMjI2NTE3MWQyZTc2ZiBsZWdhY3ktdHJ1bmsKKzMwNjUwIDY1N2FlYWZiYmM5YTBjODRmZDY5ODk4MzMxZTZkOWRlZTYzZTc0YTUgbGVnYWN5LXRydW5rCiszMDY1MSBjMjY2M2NhMzFkN2QwZTM4ZGFiMzhlZDc3OGM0YTAwMzI1MzQxNDE1IGxlZ2FjeS10cnVuaworMzA2NTIgM2QyOTYyYjAyNDllNTQ1MWFlMWJmNTgxMzJlNjdhNjAzNzc4M2Y4ZCBsZWdhY3ktdHJ1bmsKKzMwNjUzIDMzMzBhNTA5ZDJiZDgzNWNmZWRjNDAxODAwY2FlODQxNGI3Y2VmODggcmVsZWFzZTIyLW1haW50CiszMDY1NCBhZjhhMzBkZTY2NzI1YTAxYWFhMDMzMDMwOTg2MWYxNTdhMWNjOGM2IGxlZ2FjeS10cnVuaworMzA2NTUgN2JiYjBkZDhkMjMwNjg5N2E0OWE0ZjU1YWM2ZjU0OTVmYjVmZTMwZiBsZWdhY3ktdHJ1bmsKKzMwNjU2IDhlMjFiY2YyMTU4YWM5MTA0N2MxNjM2OWE1NjI3MTE4MWYzZTA2NjggcmVsZWFzZTIyLW1haW50CiszMDY1NyA1ZDRmMzE2ZDg3MWMwZTZjMTViZjgxMmNkZTAxYTBhMjYxNGRiYTM2IHJlbGVhc2UyMi1tYWludAorMzA2NTggODFjZGFiYmQ2M2Q3Y2Q5OTg0NDI4OTI2ZDZkMzQxYTg0NWQ3ZTIyOCBsZWdhY3ktdHJ1bmsKKzMwNjU5IGFjZjFiNTEyMTJjNTlhOWI3ZGRlOWNlZTlkMTJjMDBmNmIxOWI5NWIgbGVnYWN5LXRydW5rCiszMDY2MCBlMjA0ZGZmM2ZjYmY5ZTA0ZDEwY2IzMDcwOTUzZjhlNTFhMWMzMmJjIGxlZ2FjeS10cnVuaworMzA2NjEgOTJlOTIyZTczMjdhZTMyNzM5MzYxZDlkN2Q0Y2I4YWI5ZGQxMGUzNyByZWxlYXNlMjItbWFpbnQKKzMwNjYyIDU3NmUyYjVkOGNmODgyNWE4NTY3ZjI3NmIzNDI3ODkyNTE4ZGE0MWEgbGVnYWN5LXRydW5rCiszMDY2MyAxMzc1YmZjYjY3N2U2MjBlZTEzNWQ1NTdlYzI4NWIwMWQ1YzFiZWIyIHJlbGVhc2UyMi1tYWludAorMzA2NjQgNDc3OTljMjc2NDYxMTdlOTZiMTUxMmIwZjhlZDcwM2VlZjIyYmM1MiByMjNhMS1icmFuY2gKKzMwNjY1IDU2YjhmOTA4ODEzY2IwY2JjNGRiMjhiMzZjZTE5OTBjMzI2M2E2NzcgcjIzYTEtYnJhbmNoCiszMDY2NiA1Y2Y0MTBlNDcyNTE2NjMwNWFiMjU0OWRlNGI1NDFkNWYxYmMzNWMzIHIyM2ExLWJyYW5jaAorMzA2NjcgZTI2NWVmY2JjYmQxNjUyMDcxOWRhMzQzYWQ0NTdlNDQ5M2UwYTdkOCByMjNhMS1icmFuY2gKKzMwNjY4IDIyMjdhZDg2ZDMzYzUyMzgyMzMxMzIyNzE4YzM0MDUzNDhkMWYzNWUgbGVnYWN5LXRydW5rCiszMDY2OSA1ZWQ4MjA2NzBhZjM1YzlkZTc0OTFmODA0YjJhYmY4ZWZlZDExNDIwIGxlZ2FjeS10cnVuaworMzA2NzAgYjk0MzU2MGU1ZjdiNTI1NjcwODRlNWEwNDRjYTllY2M1N2Y2YmFiMiBsZWdhY3ktdHJ1bmsKKzMwNjcxIDI5Zjg5YzcyNTdiZDBjOTgwNmU3Yjc1NjI0NjIzNTVlYjU2NmRiZjYgbGVnYWN5LXRydW5rCiszMDY3MiBlMTgwMDhiNzExYjAyMmZjYjVmMzc3NGExYWYwNzY2Mjg3YzJmOWFhIGxlZ2FjeS10cnVuaworMzA2NzMgYWU4MzhmNzc0ZjZjMWUxZDFmN2ZkODliYWFmNWJkMjgwMTYzYzVmMiBsZWdhY3ktdHJ1bmsKKzMwNjc0IDgwZmNlYWIwNjgzNWU2MTkyOGJlOWJhNGQ3YjU5MDQwMzdjMTc0YjggbGVnYWN5LXRydW5rCiszMDY3NSAzZjRlODBlYmRjYTgzNTRiMGIxZjU4MzA0MjVlNDI5Y2RiNWFjY2ExIGxlZ2FjeS10cnVuaworMzA2NzYgNTg1YTY0NjBmNTc3NmZlYjhmZWJmZmNhYjQ3Yzg0YjcxZGNkNThlZiBsZWdhY3ktdHJ1bmsKKzMwNjc3IGIxZjVmZGJlNjM5NzJmNzkzYmU2NzIyYzQ0OGY5ZjVjNGM3MjZhZjIgbGVnYWN5LXRydW5rCiszMDY3OCBlYjZiMzZiMjZlOGQyYjZhMmZlMDNmMzIyYWI2ZDFhYmVjZGIxMzMxIGxlZ2FjeS10cnVuaworMzA2NzkgMjMyNjAxOTg4ODVhY2YzYjFmOGQ2NWFkZjY1NjU3MGM2ZGFlOTQxOSBsZWdhY3ktdHJ1bmsKKzMwNjgwIGM1ZDAyZDUzNzBkOTM3YmYwMDZjNDZhN2NkZThlZTk0MzA0MjRjYzEgbGVnYWN5LXRydW5rCiszMDY4MSBiNDlhNDBkYjdiNDcyYTI0NWY0MGQwZTgzNTc1YzcxY2I0NzU2ZDk5IGxlZ2FjeS10cnVuaworMzA2ODIgOTEwZTc2ZGQwNGRhZjY1ZWFjMTY2ZTk2ZGMzOGE3ZTgyN2RkZGY5NyBsZWdhY3ktdHJ1bmsKKzMwNjgzIDczNGViZDQ3YmMyYTlkNDMwMzYxM2YyYWVlZmU5MDc3ODhkNjlhZjAgbGVnYWN5LXRydW5rCiszMDY4NCAyZjkzYzIzMWVhZTBlYThjY2NjOTE4MjBiMmYyZDhlMTk3MzIzODFjIGxlZ2FjeS10cnVuaworMzA2ODUgZWY0M2RlNTYyZmQxYjI1MWJiMTU3YzJiYjY0YzZlMzJjOGY2ODg2MCBsZWdhY3ktdHJ1bmsKKzMwNjg2IDBjYWRjMjkxODBlNjE1Y2YwZDE3ZWUwNjNjNjcxNTc4MDBmOWRkYmYgbGVnYWN5LXRydW5rCiszMDY4NyA3ZjA5YjE5OTJjZTlmYzM1ZWFiZTkyYTFiMzhhZjA4NTMzNmE4YzkxIGxlZ2FjeS10cnVuaworMzA2ODggY2NmNTlmMWFiNDMxMjg2NGYzMGIyOWFlZDBiODJlYTA2NmE2YWU5ZiBsZWdhY3ktdHJ1bmsKKzMwNjg5IDBiZDA3MzkxZDkyMWJjYzE1MDY0MTZkYTM0MmI4ZjIyMzFjMDgzZmMgbGVnYWN5LXRydW5rCiszMDY5MCBhZGY0YWIzZWFhNjIxYzQ0MWZhNzdiMmIyZDU3ZmEzYzdhNTczMjFlIGxlZ2FjeS10cnVuaworMzA2OTEgNGI4OWQ3NmZiMjA1YWMwZGQzMzQyNjZiNzQxNDQyMDUyMGNjZmI4MyBsZWdhY3ktdHJ1bmsKKzMwNjkyIGQ1ZDEyZWEzYTU4MDlmZWEyM2M4ZGQ3NWNlZTFkNGI3NTkyMTcxZmEgbGVnYWN5LXRydW5rCiszMDY5MyBiOWY1YmVlOGVjMThlOGZmMDRjOTgyMGQzOWU3NGMwNDI2N2M0YjhiIHJlbGVhc2UyMi1tYWludAorMzA2OTQgMGE5Nzk2YTY0NjhlZjEzZjIzMTU2NmMzMWJiOGFjMjQ4YjY4MDVkOSBsZWdhY3ktdHJ1bmsKKzMwNjk1IDQ3YjEzNGJiNTFjMzAyZDhlYTJlZDAxNDZkNjRjNzI3MzI4NDczNDEgbGVnYWN5LXRydW5rCiszMDY5NiAzMThhYmE5NGMxZTdiMWVjZWQ5NGNmZDM4NDQ2YzNkNTBiZmEyZTY0IGxlZ2FjeS10cnVuaworMzA2OTcgOTI1YTdiMWY5M2VlMDBmOGUwNGUyMWZmOGNhZDI2MmRmYjQxMjJjMiBsZWdhY3ktdHJ1bmsKKzMwNjk4IDA3YzZjMmU5OGExY2RlMWNiNTFlZmYxNmJiNWZjMzlmYTA3NDM1YWUgbGVnYWN5LXRydW5rCiszMDY5OSA2ZmU0OWRiZjAzZmQ0NmZiZjYzNjZlOGVkNWRlYmQ1MGJlODI0MDcxIHJlbGVhc2UyMS1tYWludAorMzA3MDAgYTBlMGNhYjVjOTI3ZmMxYWY5MmVmMGMxYjUxNmJmY2E2OWJjZmU0YiByZWxlYXNlMjEtbWFpbnQKKzMwNzAxIGNkZjFiYTJhYjcxNTI5NDIyNmI4ZTE1YjZhYzgyNWJlMDg2MzdkNTEgcmVsZWFzZTIxLW1haW50CiszMDcwMiA3NzA2YTA2ZjVlNjkyNjk0ZjViYWU3YmZhZjIzNDFlYjA5NjU3MDhkIGxlZ2FjeS10cnVuaworMzA3MDMgMDFkOWZkNTk1Mzc1ZmU1NWRiZDA0ZjhkYjViNDlhYmYxMmYzNjdkNCBsZWdhY3ktdHJ1bmsKKzMwNzA0IDcyODM4M2RjNzM5ZWYwMGYyNTNlZjgyYjkxZTE4M2UwMmI1ZjcyYWQgbGVnYWN5LXRydW5rCiszMDcwNSBjNzk4NjEzYTg3NjU1YmEyNjM1NzgyNzUzZjAzNDY3NzIyZTNjNWIxIGxlZ2FjeS10cnVuaworMzA3MDYgMDRhYTg2ZDQ5ZDkzZTU1NjQ5MGJjZDg5MmQ3OTU5YWE4NzBhYjg3ZSBsZWdhY3ktdHJ1bmsKKzMwNzA3IGZjNGJiMzgyMDQ0OWUzZjBmYWRlOWJiZGU1NjU0NGRkMWMwNDliNzAgbGVnYWN5LXRydW5rCiszMDcwOCBiY2FlMmE3MGUxZWM3YzlmODQ0MDMxMzgwNTI3YTEzMGI4OGVjODY0IGxlZ2FjeS10cnVuaworMzA3MDkgN2VhNDQzMDUyMmRmNDkzYTA4NGRkN2NiYTg5ZjFlN2MzNzI1YjkwZiBsZWdhY3ktdHJ1bmsKKzMwNzEwIGQwM2MxMzAzNDU2MGEzNjJlNGQ4ZDE5MjlkOGRjZmFkYTk2ZGVjNzggbGVnYWN5LXRydW5rCiszMDcxMSBiMjljZmFkNDQwOTdiNThjMmIxNjJhYWRiMWQ4ZTc1ODRlNWJlNzQyIGxlZ2FjeS10cnVuaworMzA3MTIgYjM0NjI3MjU0NGExODJjMTZiZDNlZDAxZDRmYWFkMzViYmQwY2Y0OSBsZWdhY3ktdHJ1bmsKKzMwNzEzIDkzNDczMjc4NzQxOTRiZjhhZTQ2NGJhOWI0OTRjYzk5MGNkMWFlNmQgbGVnYWN5LXRydW5rCiszMDcxNCA1OTMwOWQ0YmY4NDFiNjkyOTYxNzc3NzBiZmVhNmRmOTE5Yjc4ZDQ0IGxlZ2FjeS10cnVuaworMzA3MTUgNjVkYzAxMTBhNzM1YzEwMTI4ZWVmMjA5YzBkMTRmNjk1OGI5ZWZhYyBsZWdhY3ktdHJ1bmsKKzMwNzE2IGQ0YzhhZjkxMTlkMTkxOGZmNjZmNzk1N2IwMjY3YmRkM2ZiYjAwYTUgbGVnYWN5LXRydW5rCiszMDcxNyBhNTFlNWFlMjk4ODJiY2IxYmY1ZTM0MmEyYzNiZGUyY2Y4YmQwNjM2IGxlZ2FjeS10cnVuaworMzA3MTggYjg3MjQzNDFiYjFhYmMzMmY5ZmY2MTVkOGYwMWQzZjg3ZWZkNWYyMyBsZWdhY3ktdHJ1bmsKKzMwNzE5IDc3YjcwYTg4ODRjYjIzYjg2ZmQwMTJlNDFhMDEyOGQyN2RhM2I1NzYgbGVnYWN5LXRydW5rCiszMDcyMCA5MjgxMmY2Y2Q2M2I1YjJjMmJiZDg1NWVjN2JmMDcwZDI1MGZkZTI5IGxlZ2FjeS10cnVuaworMzA3MjEgZGM2ZmI4YTZhZjNkZWYyNzgwZWZmNWU2OTQ4MDM4MjY1NjQzNDAwYiBsZWdhY3ktdHJ1bmsKKzMwNzIyIGFlMTIyNjc1ZGYxZTkwY2U5NjQxNDM2NTY0MmFmN2I0NDdlOTQ5MmYgbGVnYWN5LXRydW5rCiszMDcyMyA4MWRhNzNiOTNjM2M2MmYzYzIyNjc2OGQ3YTJlZTJjNjczZGMxNGIxIGxlZ2FjeS10cnVuaworMzA3MjQgMGEwMzVmOTI5OWE5NzlmNzg5YzFiZTExNmY1NzliMDU2ZTEyNjdhNiBsZWdhY3ktdHJ1bmsKKzMwNzI1IDNjOGQ5MWYzZjRjNjdkZTc4MzE3YTU3NGYzOTFhZTZkYjI2NDc4ZGMgbGVnYWN5LXRydW5rCiszMDcyNiA0ZjE5Yzg1MjRmMWFjN2U0ZTdhY2I0NDE2OWQ3ODkxZDE0NzE5ZTUwIGxlZ2FjeS10cnVuaworMzA3MjcgNmFlMzYxZGY4NzBlZWEzMThmN2JiMDBkYmE0ZDQ5ZmEyODIxZjMyYiByZWxlYXNlMjItbWFpbnQKKzMwNzI4IGIwZDUyODMyN2M0YzFhNmNmNmNjNTM5ZTljZmU0NjZlOGM2NWE3NzAgbGVnYWN5LXRydW5rCiszMDcyOSA4MGVhMDQ4ZmMwZDczNWYxZmRhYTkwYWVmYzdhMDA2YjY0MmUwZGJkIGxlZ2FjeS10cnVuaworMzA3MzAgNDI4ZWVjZGZkNTdmY2FjZTJlN2QxOTFlYTg2OTBlNjMwMThjMzQ5NCBsZWdhY3ktdHJ1bmsKKzMwNzMxIGE0OTRmNWE4NjM5ZjI5MDQ1ZmI3OTcwNzVjMDRiNmMxMjU1YzRlZWUgbGVnYWN5LXRydW5rCiszMDczMiA0YTYyYTk0MWYzYjEyYTMwMzVhY2I3MTliYzVkOGQwOWRjNTQ5OTVmIGxlZ2FjeS10cnVuaworMzA3MzMgZGUyYzk1ZDgxOTg0MTYwZjU5ZWYwMDFhYjVjYWEwMGFjM2UxMDA5NCByZWxlYXNlMjItbWFpbnQKKzMwNzM0IGY5Njc3MmUzMWUyMzNmNzc3ZWQyMWViYjczOGI4Y2Q1ZDM5OTQwNDkgcmVsZWFzZTIyLW1haW50CiszMDczNSAzYjNjZTk2NGFkYzljMTNmMmZhNTY5OGEyYTdmNjc0ZjJlMTVjM2RlIHJlbGVhc2UyMi1tYWludAorMzA3MzYgN2E0ZDc4MjcxNWY0Yzc2NjI0OTRjZTZjY2ZkOGQyMjNlMWI0MjM1ZCByZWxlYXNlMjItbWFpbnQKKzMwNzM3IDEwYjdlNjAyNDViNTY5NDAxYjk2MzYyN2ViNWY4ZDA3MmI4NDc2NjMgbGVnYWN5LXRydW5rCiszMDczOCAzOGQyMjM4Yzc5NWU0NmU5YjE2ZTdhYjM5OTJmMjRjNDAxNTQ1MjQyIGxlZ2FjeS10cnVuaworMzA3MzkgMmVkNTE4YWIyZmQyMGEyZDIyMjk0MDQ0NjQ5YTMxNmYxZDIyNTBlMSBsZWdhY3ktdHJ1bmsKKzMwNzQwIDE3ODc4ZDQ1OGNmMTJmM2RmZDEzZTJhMTA0OTBhZmY3NzhhZWQ3YTQgcmVsZWFzZTIyLW1haW50CiszMDc0MSAxMTE5ZDU4MjYwOWExNGYyNGUwZjRhN2U2ZjIyMDU1MDM4YzUyYzJmIGxlZ2FjeS10cnVuaworMzA3NDIgMjA5ZDY3MjEyODgzZDAxMGMzNmM2ZTU2ZjFkMjczMWEwNmM5MGNjZSByZWxlYXNlMjItbWFpbnQKKzMwNzQzIDIwMWNkZWIzMDVmNjRhMDk0MDNmMmZlZDQ2YzkyOWU2ZTExNmM0MDQgbGVnYWN5LXRydW5rCiszMDc0NCA0MjBlYTIwNWYwMjQxZWU0NTE5NTQwMjZjODJhNGY1ZWFhNTA3ZjU1IGxlZ2FjeS10cnVuaworMzA3NDUgNWQ0MmRiYTQ5ZmU1MDcyNzViOTgwYjRkMWRjNTlkNDAyODI3NjY3MiBsZWdhY3ktdHJ1bmsKKzMwNzQ2IGViZWIwMGI4ZDUwMmEwYzk5NTNiNDFhZDkwY2Y4ODJlYmVhNzdlMGUgcmVsZWFzZTIyLW1haW50CiszMDc0NyAxMWIzNDU2NGEwZmQwNTgyMWRhNDIyMDU2Yzk4MDE5MmIzNDhkZWJjIGxlZ2FjeS10cnVuaworMzA3NDggM2EzM2JkMGY5YzRiZmRjNzU0ZWM4ZmUxZTEzNTIzYzljODA4ZGFiNSBsZWdhY3ktdHJ1bmsKKzMwNzQ5IGYzNGMyODY1MGYxNGUxOGU1ZmYyNTM1Y2M4NDExNWUyZDk5NWQzMWEgbGVnYWN5LXRydW5rCiszMDc1MCA3ZjM3ZWQ1NDI5MjAwM2VhOGYwY2M0OGZkZGUzYWMzNDU1Y2ZjYzYxIGxlZ2FjeS10cnVuaworMzA3NTEgMThmMDcyZDE0MGE5YzdmZTc1ZWU0YjE0NTE0YzZjNzE5OTJmMmQ3YyByZWxlYXNlMjItbWFpbnQKKzMwNzUyIGZkM2IwNzExYjI1ZmIwNTVmYWYwYmJkODM4Mjc3NWNkODJjNWY0MWEgcmVsZWFzZTIyLW1haW50CiszMDc1MyBlZWJjNGZkYWM1OTRlNjkyY2YxZjA4MDBlM2ExZDQ4OGFhNTg3YjNiIHJlbGVhc2UyMi1tYWludAorMzA3NTQgZTlmNDViOGVmZDZiNGQ3Yzg3NmI0MGU1YmYyNGE2NmM2NWZhMzgyZCBsZWdhY3ktdHJ1bmsKKzMwNzU1IDhiZDZiMmFlMjg3NGIwNzlmYjBlNWFmN2JjOTUxZjUxMDFiZWY1ZmMgcmVsZWFzZTIyLW1haW50CiszMDc1NiAzZWRlOTBkNmUxY2YxMjVhMDIwM2I0OWVmM2M3NDk4NDhkOGYxNzVhIGxlZ2FjeS10cnVuaworMzA3NTcgODRhOGU3ZDFkYWE5NzY5ODE1ZDk5ZDZkM2VlNzk1ODUyOWI3NjVjNiByZWxlYXNlMjItbWFpbnQKKzMwNzU4IDNiZmRiYzNkZmJjZTkyOGM5MTcxZGM0OGE4NzE3OGY1NGYxOTJiNDEgbGVnYWN5LXRydW5rCiszMDc1OSAwYTZiODgxOTBiOGIxZDNiZWY1MmE5Y2U0NzM1MjdlY2U1YThhOWUyIHJlbGVhc2UyMi1tYWludAorMzA3NjAgZjU5ZDgwYzdlMWJiNGQxOGY5MDAwZDUwMWQwMzFmYmM5ZGZjZjRlOCBsZWdhY3ktdHJ1bmsKKzMwNzYxIGY5NWU5ZjNjOWZlYTc4ZDRkNzE3ZWRhMDNkMWY1MGQ4NjQ4NzQ2MTAgbGVnYWN5LXRydW5rCiszMDc2MiBhNzcwNmQ0YzY5MGMyMGFlNjFlZTgxNmQyZDkzZDQ1YTRmZDA4YmYxIGxlZ2FjeS10cnVuaworMzA3NjMgM2FmYmQ1NWZiMThmYTRhYjEzYTM4Y2YxYjE0ZDIxNTE2M2U3NzQ0YSBsZWdhY3ktdHJ1bmsKKzMwNzY0IGIzZjEwNTM5OWQyMjgxMWRiYTVkMTk5YTk1NjYwYzQ2NjFmNDQ3MjQgbGVnYWN5LXRydW5rCiszMDc2NSBkM2FiNTMyYjNiNmQ2ZWJiMjBhNzFmNmEyNWYyY2M5NWYxNjc1ZjFlIGxlZ2FjeS10cnVuaworMzA3NjYgYTU2YzNjNTYyODhiOWZlYjI3ZGI1YmE5MDlkZDQ1MmI1NzBkOGQ4OCBsZWdhY3ktdHJ1bmsKKzMwNzY3IDVkZGI5MGY4MTY5YTU4OTM5YWU0NDNiMDc3MjRiN2JkYWIwMmI4MmMgbGVnYWN5LXRydW5rCiszMDc2OCBjNDE1MGY3ZjZhNjk2MTUyNGFlODg4NzIwNzcwMmUyYjc3NTdiNGYxIGxlZ2FjeS10cnVuaworMzA3NjkgN2MzNGU1YmYyZTIyYjFmODU4OWY4Mjc1ZWZlZWVjZWUzMmMxM2YyYiBsZWdhY3ktdHJ1bmsKKzMwNzcwIDE2YTg3Njc0NjI4NTBjNzQ2ZDAyNWMzOGZhYmRkOGFjMGY0NzgyZmQgbGVnYWN5LXRydW5rCiszMDc3MSBjOTk0OTNhYmEwOThkMjUzYzJkYjc4ZDE5NmExNjQ1OTFlYTdmNmUwIGxlZ2FjeS10cnVuaworMzA3NzIgNDBjZDc0NzgyNjAwODExYWQwMjg3ZTc4YzRkODM3MjdmNjVkMTdiYiBsZWdhY3ktdHJ1bmsKKzMwNzczIDFjYTdiMmQ2OTI0MjVkYzY3Yjg0MDkzMzZjYWE1ZDM4YmE0ZjQ0ZmYgbGVnYWN5LXRydW5rCiszMDc3NCAyNjE1NDc3MDM0NDNkYWI0NTQwOTdiNTBkNTE1NTFjMDUyNzRkNmUzIGxlZ2FjeS10cnVuaworMzA3NzUgYmFmZjU2YWRmYmMzMzgyNDhmOTVlYmE3OWY1Nzc1YTQxZWM1ZGNmNiBsZWdhY3ktdHJ1bmsKKzMwNzc2IGFlODliNTU2MDUwYWUwNTcyZjRjNmRlYmQ1NzI5MDA0OTg3M2NhOTEgbGVnYWN5LXRydW5rCiszMDc3NyAzZmJmZmQ3MzZkOWQwNGMyMjA4ODk2ZWQ0NzY5MjNkNmQzZjliYzZhIGxlZ2FjeS10cnVuaworMzA3NzggZThjMWE5NTQyZjY2YTY2OGQ3OGY3ZDJmZmJlNzhjZWIzZjg4NzUxYiBsZWdhY3ktdHJ1bmsKKzMwNzc5IGZhZjI1NmE1OWVjZWIyOTM3NzdmMjc2NDcyNDVlNTRiZTM0NDAzZWEgbGVnYWN5LXRydW5rCiszMDc4MCA0Y2RiNTAxYWI2YTIxNzdhZjNiZGEwODgyMjc2ODU2ZDhkNTdmNDVjIGxlZ2FjeS10cnVuaworMzA3ODEgZjA1NzY0ZDcwODJjYzFhMGExYTJjN2ZiNjE3MmY5MTNiOTViMjkzMCBsZWdhY3ktdHJ1bmsKKzMwNzgyIDc3NDI4ZTgzNWQ2N2VkODA2MzQwOGE0ZjE5ZWNiNTFkOGY5N2NlMzYgbGVnYWN5LXRydW5rCiszMDc4MyA3YWNmNTc0NDBmNGUwOWZlNWJlZmNjYTA4NTU5YzlkYzNkNWU0OGU0IGxlZ2FjeS10cnVuaworMzA3ODQgOGQwZTA3YzI3MGVmOWIzMTE0Nzc0Y2FiZWYzN2UwNTU4OGJkOTk0NyBsZWdhY3ktdHJ1bmsKKzMwNzg1IGFmODExMTcyNzE3ZDBhMzEwMTRlZWRmYWU1NDRkNDdhYjY1NjRhMjEgbGVnYWN5LXRydW5rCiszMDc4NiBhOWRkYWRmNzg5ZWFiOGY2OThkYTM3M2U3YzcyOWE3M2U2MjRmMzRkIGxlZ2FjeS10cnVuaworMzA3ODcgYjc0NDUwOGQ1YjEyNjQ2YWYyMGJjZWMyNTE0YWMzYjExM2VlOWI3YSBsZWdhY3ktdHJ1bmsKKzMwNzg4IGJlM2QxYjdlNjJkYzI2OWNiYjg0N2JkYjQxY2UxMjg3YjQxNGI5YjcgbGVnYWN5LXRydW5rCiszMDc4OSBkYmU0ZjU3ZThiYjI5NTZjYzk4YWU5ZjIxOTczMTIyOTAzNWM0ZjQyIGxlZ2FjeS10cnVuaworMzA3OTAgMzkyZmVlY2QyZjFjNzFlZDhiNzNjYzkyNzFlMDgxNmVkZWUyOGQzYiBsZWdhY3ktdHJ1bmsKKzMwNzkxIDkxZDY3OGE5NGM3MzYzZjUwZGU5ZDlmNjczMDJkYzAwNGYyY2IxYzggbGVnYWN5LXRydW5rCiszMDc5MiA2NGQzZmU5MDRhMGFmOGQ2NzRiMjRlYWUwNDVkZDVkZjM5MzdhY2JhIGxlZ2FjeS10cnVuaworMzA3OTMgY2RhNWFiNjI1Nzc0ZmFkZDUyMDI5Nzk0NWQ5NGUyMmE2NjI2NWNlYyBsZWdhY3ktdHJ1bmsKKzMwNzk0IGQyYWU1YWZmZGUxNGU3OTY0MDEyYTQ2MTc5MGY2N2JjYTZmY2E5NmYgbGVnYWN5LXRydW5rCiszMDc5NSBiZWRiNzVkOTBlMDNjMzk5ZjJlMDE2ZjYxODJlYTM3YWRhYzAzMTM3IGxlZ2FjeS10cnVuaworMzA3OTYgN2ZkZDVkNjJjNjE1YWYyMGFmNjRiOTgxMDJhNWMxOTg4ZmViZTg1ZCBic2RkYi1ic2RkYjMtc2NoaXpvLWJyYW5jaAorMzA3OTcgOWRhNDNjZGU4YTE2NjFlNjhjNDU1ZmFhZThlNDc2ZmU1YjQyYWM4OCBsZWdhY3ktdHJ1bmsKKzMwNzk4IGNiZjM1NWYyOGNhOWY2ODkyODc4OTkxNDljOWEzMzQxMGM3ZTVlMGUgbGVnYWN5LXRydW5rCiszMDc5OSBjODIzNGUyNjExNWM2NmQ0YWM5YjQ4YTJiZWM2ZTYxNjRlMmI2YmFmIGxlZ2FjeS10cnVuaworMzA4MDAgOWRlMDY0YzdhMjQ3ZjExZmMzOGUwNGJjZjlhNzQyMTAwMmVlNTE4MSBsZWdhY3ktdHJ1bmsKKzMwODAxIDg3YjY2YjZmZjVlNzZmNzcwMmVhM2ViNzQ1NTA3M2UzZTU0NGRmNzQgbGVnYWN5LXRydW5rCiszMDgwMiA1YTA1MDIwMGY3MzY1ODZjNWY4ZDUwY2RkZDc3ZmZiZjdjOWU4ODY1IGxlZ2FjeS10cnVuaworMzA4MDMgYzZmNDliNzk3OTYzZWNiZmY5ODVhYTRiZThjN2RhYWVkNmM0MzdlYiBsZWdhY3ktdHJ1bmsKKzMwODA0IDg2Njc1NmY2NzBmZmQ1ODQ1M2QxNWFjZTAwYTdiNGE4NzVkOGYxNTggbGVnYWN5LXRydW5rCiszMDgwNSBkZjI3NTRhY2E3MTcwNGY0YmE0N2U4NDQzYWFjZTQ1YzVmY2U2MmRmIGxlZ2FjeS10cnVuaworMzA4MDYgNDBlNWViOWUwNGUwZTgzNWFiNWNlNWY2NWVjNWMyMTA5ZWI5MDFhMCBsZWdhY3ktdHJ1bmsKKzMwODA3IDA0ZTU2MTBjNWVmZTk3YWY0NThmY2RkNDY2MWVjN2Q3NDY1ZmE1ZWIgbGVnYWN5LXRydW5rCiszMDgwOCA4OGZhYTk4NWQ5OGMzZjM2NjNhMDczNjc2ZDUwM2NmYmMwOWJlODI1IGxlZ2FjeS10cnVuaworMzA4MDkgOTdmNDk0YmY3MzE5MGFkOWJkMDZiMmJiYWU1YmQ4NjcxYjdhNzU2NCBsZWdhY3ktdHJ1bmsKKzMwODEwIDc1ZGE0OTk3NzU3MWE0ZWFiOWExOTJiMDJhNmEyYWI4ZjEzMTNlYjYgbGVnYWN5LXRydW5rCiszMDgxMSBlODNhNDJhOTBkZjE2Mzk2YTdhZmJmODc1ZWQ0MGU4YTVmZDdlOGUzIGxlZ2FjeS10cnVuaworMzA4MTIgNzAzOTM3NTIyNmE3ZjI2MjdhZjBiNTU0NThkYWJhMDEyNTJlNzRiOSBsZWdhY3ktdHJ1bmsKKzMwODEzIGQ3ZjgwMDI4MzAxZGViNzRhMDFmNTg1NTEyNzNmZGQ0MTFkNTkzZTcgbGVnYWN5LXRydW5rCiszMDgxNCBiZmMxNDBjN2UzZDA2NTFmMDNhMzkzOWFlYjEyZGVkOWY0OWYzOGE3IGxlZ2FjeS10cnVuaworMzA4MTUgNzA1NWY0YzFlZGNjMzQxZTdkNGM0NTRkNmExOTRjNjg1MDA3YzI4YiBsZWdhY3ktdHJ1bmsKKzMwODE2IGI4Mzg3NzMwZGQ4ZmY0MTVlNzkyN2Y2ZmEyZDQ0MzgzYTg4MDc2MDkgbGVnYWN5LXRydW5rCiszMDgxNyBjMWM0NTQ3NWYxNzBlNDBlN2U5MmNkZjUyMzlmMDY4N2U4MzNkYzIzIGxlZ2FjeS10cnVuaworMzA4MTggODE1NTFhZGYxMmY2ZDFlY2YyNDVjODk5ODZkZDc3YTczNDZjZThhZSBsZWdhY3ktdHJ1bmsKKzMwODE5IDA1ZmY5MDRlZTRlMDdiNmM2NmNmNzJhNThlMjA4ZGNlNzQ0N2JjZmEgcmVsZWFzZTIyLW1haW50CiszMDgyMCA0ZmE5YWQ4NWMzYjE1ZGMyZGY4YmU4NjU0NWFiN2M5Zjc1NWI4MDNkIHJlbGVhc2UyMi1tYWludAorMzA4MjEgMTM2OWQyNGJjODYxZGNhMjY4NzE1OGRlOWQwMDE0MDVlMzY4MmI5MCBsZWdhY3ktdHJ1bmsKKzMwODIyIDVhOTc1ZTgyZDcwZmI1YmMwNDljZDQ0NjIwZDhlZDdhYWQ1OTQxZjIgbGVnYWN5LXRydW5rCiszMDgyMyBkZTgwMTczM2VjMTg4NzViYzJjYjZkOGQzNjI2N2QxNTI1ODkxMDU4IHJlbGVhc2UyMi1tYWludAorMzA4MjQgMGY4ZDE4OTMxMGI0NWE5ZmRiNjQ1NDNmNTRlOGNlZTkyODBhZjNmZSBsZWdhY3ktdHJ1bmsKKzMwODI1IGE1NTUyMzBiZTNjYjAwNzNiM2U4MmRhY2FiMGJiNzg1N2ZiNTg5YTggbGVnYWN5LXRydW5rCiszMDgyNiA3MDQ2MzlkMjBhNmNkNjI1YmMwYTMxMmI2N2Y1ZWI0ZTQxNDg4NzhiIGxlZ2FjeS10cnVuaworMzA4MjcgZWE3NjgwZWFmOTM3ZGY3MzgyNjQyNTJkNTU2MDczNmQwMGYwYmY3NSBsZWdhY3ktdHJ1bmsKKzMwODI4IGRhZGQxNzhiNjVmYTU2OGFlMGRhNmM4NWUwNzhhMGQyOTg1OGFlMzEgbGVnYWN5LXRydW5rCiszMDgyOSBmZjE3OWJhZGUzZjBkYzM5ZTRiZDBhOTljZTVjMzJkOWRhMzg3ZmU4IGxlZ2FjeS10cnVuaworMzA4MzAgMTg1ODQ3MTQwY2E1ZGJkZGExMWZmOGYyYjFlMzI2M2Q4YzFhZWNjMiByZWxlYXNlMjItbWFpbnQKKzMwODMxIGEyZjg0ZDI4MzVmYWY4MjVkOGUwM2U0YzYxZDQyYTQ3MmI0OWUwMTIgbGVnYWN5LXRydW5rCiszMDgzMiBlYWE2MTJhNDFkZDBkNjllYjBkOWYwOTU3MmJhMzBhZDViZDQ2NGUwIGxlZ2FjeS10cnVuaworMzA4MzMgOTIyMDA5OGYwMzI3ZTliMmMwMTMwYzQ4MGU4N2VmMzY4ZjUzODk3YyBsZWdhY3ktdHJ1bmsKKzMwODM0IGM2ODI5MDc5MGQ1M2Q2ZTAxZGMzMjI3MGRkNDA5NGM4MTEyZmM2Y2EgbGVnYWN5LXRydW5rCiszMDgzNSBjZGFiMmI3NGYzMDdlYWQ2Mzc5NzU2OGU1OTU0M2Y2M2IzOTFkNTgwIGxlZ2FjeS10cnVuaworMzA4MzYgZWZhMmY4YWJiMDJjOWE2MTViMDA0Yjg5MWYzNGU5NDMyOWNmOGNkYSBsZWdhY3ktdHJ1bmsKKzMwODM3IDNjNzAyM2M5ZThlMjY3MWJkY2RkNzY0YmQ5NTY4OTNjNmJjZTc3M2YgbGVnYWN5LXRydW5rCiszMDgzOCBkOTY2YmI1NGIzZGUwZDhlNWQ3NTA0MWY4MTE1ZjJmNDA5OTJmNDg1IGxlZ2FjeS10cnVuaworMzA4MzkgNzA2N2QzNmMzY2Y0NzAxOTU2MTA3NWNjYjU1NzA5MzFhNTVkZjg1YSBsZWdhY3ktdHJ1bmsKKzMwODQwIDc1ZjM4YzQxNWU3ZDRkMDdjODY0YmIwMDEyYmZlYWFkOGI5YzI4ZGMgbGVnYWN5LXRydW5rCiszMDg0MSAxNTYyYzFlMTBiNDk3ZGE5NzE0OGNlZjk2YzIwZDZjYWM5MzA2OWQ5IGxlZ2FjeS10cnVuaworMzA4NDIgMjk5ZWYyZGFiYjUyYzY2MjRjMDM3ZmIzNjMzN2Y5Y2ZkMjE1NjYxMiBsZWdhY3ktdHJ1bmsKKzMwODQzIDg4YmYxMDMxMzU4NGRlNDE2N2YzODY3NDA1OGY5NTc0NjhlNTAyODIgbGVnYWN5LXRydW5rCiszMDg0NCAxYjYyMjlhZGIzZGY5ZGYwMmM0NGE2OWYxZWM0MjlhZTM1YmM0MTBjIGxlZ2FjeS10cnVuaworMzA4NDUgZDVhMzM4NmM3NmY0OTQ1NmNiNTA1YjFmOTgyNzIwODA3ZTI1NmI4NCBsZWdhY3ktdHJ1bmsKKzMwODQ2IGM0MDQ4NzljZjk5OWIwMzMwNWUxMWIxOWFkNDUwZjVkNTc3NDI0MGEgbGVnYWN5LXRydW5rCiszMDg0NyA0NGUzNTJkN2Q1MmZmYmI0NGZhZDEwZDcyMWFmMjUwMTc2YzU1YmZkIGxlZ2FjeS10cnVuaworMzA4NDggZTJkYTBkZjM2MTNkMWNhM2FjNGFiMzg4NzJhMjAzODYxZDU1OTliZCBsZWdhY3ktdHJ1bmsKKzMwODQ5IDY4MzMzOWI4NTJhYmQ0OWI5YmRhNmI2NWJmYTVkYjA3MjRiZjI3YmMgbGVnYWN5LXRydW5rCiszMDg1MCA4NzA0NWE4ZWM1NDcxNzkxNjAzMDcxNzVlOTlhOGYwNDkxYzUzMDU1IGxlZ2FjeS10cnVuaworMzA4NTEgNmNkYTdjNjEyMTU0YTc2ODY4NTc4YzlkZGE5NTJjNTZmNTQyYzIwNCBsZWdhY3ktdHJ1bmsKKzMwODUyIGEwYTkxNDcyM2M0ODBiNzEyNmMxOTlkNmM0MmNiMjgwYTM2ZWQ3ZDMgbGVnYWN5LXRydW5rCiszMDg1MyA1OTdhYTk5NjZlYzZiYjMzMzA3N2E4NzY0Y2YwOGUxZjcyMTVjNDg0IGxlZ2FjeS10cnVuaworMzA4NTQgZjRjNjk0YTAxNDI1NjgzNWI3Y2NhMGFjNmVkNWY0NTRjZjY2MTc2NCBsZWdhY3ktdHJ1bmsKKzMwODU1IDIyZmI3NmM1MzkyNjc1MTZkZDYxYzY1YWU3MjhjZjVjYjVmYWZhM2MgbGVnYWN5LXRydW5rCiszMDg1NiAyYzY0OWM3YWU4ZjNmMmJmN2M0YWUxZDAwYWM2YTExMjg3ODYyZDBjIGxlZ2FjeS10cnVuaworMzA4NTcgY2JjYTBiY2YxYzMxZTllYWNkOTFkNzE5ZDA4Yjc3NGFiMzdhN2RhNSBsZWdhY3ktdHJ1bmsKKzMwODU4IGI0NzBjYTg0ZmQyYjVlYzk5ZWE2OWQ2YWYxZTliZTUzYzIyODgyYTMgbGVnYWN5LXRydW5rCiszMDg1OSBlODA0NTZhZDE5NWI2OGQ4MDZlYjY2MDZiYjYxZDIxMjQxMDdmYzJhIGxlZ2FjeS10cnVuaworMzA4NjAgZDM0ZWYwMGQ5ZGE4YTA4NjA4NjQ0M2Y3MjVmOGE4NjNkN2M0ZDFhOSBsZWdhY3ktdHJ1bmsKKzMwODYxIDhiNTNiMGNlMDZkNDU4ZTdmNDFhZTYwMWFhMjcyNGM0ZGJjYWYyY2IgbGVnYWN5LXRydW5rCiszMDg2MiBiYTYzZDcxN2M3NWYwMDA0YzBiY2VhYzcxMjRlNWI5YTNiM2NhMjIxIGxlZ2FjeS10cnVuaworMzA4NjMgOWZlMzZhZTJhNGEyYjJhODVmNGJiZGFkOGE0OTUzYmMxNGM2MDIwMiBsZWdhY3ktdHJ1bmsKKzMwODY1IDliZTMxNDlmYmVlNzE3YjQ2M2E4OGFkNDcyOTBhYWY5N2ViZGRmYzUgaWRsZWZvcmstbWVyZ2UtYnJhbmNoCiszMDg2NiA0MTJlNjZlMzUzMGVlN2YwYjY3MTI3NDhmZGQ4MGJiYjlmZjRiNWMyIGxlZ2FjeS10cnVuaworMzA4NjcgNGY1OTk4MWY3ODE3ZGFjMTE1OTA4OTA0MjliMzY0OTdlYWY0NTI3MCBsZWdhY3ktdHJ1bmsKKzMwODY4IDE4MDA2N2MyODgwZmVlNWM0ZDQ2Y2M4MjI0ZGMzNGU5OGQ5ZTE3MTYgbGVnYWN5LXRydW5rCiszMDg2OSAyMDU1ZDAzNzI5NWNmMDk5OGMwYzkwYzNjYWRiZmIxMGUzZjcyMWNiIGxlZ2FjeS10cnVuaworMzA4NzAgMzBkYThjOTZmZDI5ZWYzNjViODhmYzk2YWUyOTUwNGMwOGJiYTczZSBsZWdhY3ktdHJ1bmsKKzMwODcxIDVhY2Y2OTY3ZDZkZDM3MTQ4NjBkYzNkYzk2ZjE5MGMwMzlmOGFlOTkgbGVnYWN5LXRydW5rCiszMDg3MiBkZGI1MmY1NjczZGI1YTg1M2U3MjVmZWI2NWY3OGVjMWIxODlkZTg0IGxlZ2FjeS10cnVuaworMzA4NzMgMjI5OTJmYTUxODMxMGZlZjE4YTg1YzE4OTk0MDgxNjJkMzEyNjhiOSBsZWdhY3ktdHJ1bmsKKzMwODc0IGJiZjE0MTg1YmYxZTdlNmI2ZDI5MWUxMTg0YWM1ODhiZTQxMzIxMTYgbGVnYWN5LXRydW5rCiszMDg3NSA0MDY3N2ZlODUwM2QzMGUwZTFjMWI4ZWVlNTJlMWFkMGRlYjkxN2M1IGxlZ2FjeS10cnVuaworMzA4NzYgMjdhZWRjZjQ2YmNjOTJmZjNmMTc5NGRkY2I4MTE3OThlYjAzMjczZiBsZWdhY3ktdHJ1bmsKKzMwODc3IDQyOGM4YTQyMzA0M2VhZGQzNjViNmE4NjMzYTY5YjNhNGUzNTYyMDEgbGVnYWN5LXRydW5rCiszMDg3OCBkYzYxMTYyNzgyNTkzZDhjNzQwZGZlMWQ4ODBiNTMxMzhjYTJlYTI4IGxlZ2FjeS10cnVuaworMzA4NzkgOGRiMmU3NGRkYjBlNWFhNGY0ZjBlY2ZjZWVjOGM4ZjI0NzdiNzA5MyBsZWdhY3ktdHJ1bmsKKzMwODgwIGFmZDFkYzYyZTM1NGRlZTMzYWEzOWNjNDM4YWUyZDhmNTYyOGJhZmIgbGVnYWN5LXRydW5rCiszMDg4MSA1OGJhZDc2OTc3NmU1OTk5ZTRhZDMzMTNmN2UzYTIwMzYyOGQ5ODY0IGxlZ2FjeS10cnVuaworMzA4ODIgMDRlNDU2NTgzMmJkZDM5YzhiNGI2M2E0ZGYxZmZkNDFlOTJhY2YwZCBsZWdhY3ktdHJ1bmsKKzMwODgzIDI3M2IyYjQ5YmZkODY4OTk4NjA0YzRmZTJiNGY2ZjFjYzg2ZDRhMmIgbGVnYWN5LXRydW5rCiszMDg4NCA4OTFlYzRkMjY2ZDE3ODY3ZWIwYzMzYzE4NDg5NjQxYTk1MGU4YTIwIGxlZ2FjeS10cnVuaworMzA4ODUgNGE0OWI1YWE1ZDIxMjcxOGM0MTRmNWUyZjkxN2RjYTYyMTRmMzI3OSBsZWdhY3ktdHJ1bmsKKzMwODg2IGViMWU1MjlmZGZkZjBkNGI5YzJkMjI5MjU4ODZkM2JmZDkzYTA4YzEgbGVnYWN5LXRydW5rCiszMDg4NyBmZGU3OGQ4MGUwOTg5ZDJhMzQwM2FmM2M5NWQ1ZDNkYWQ5M2RiN2ZlIGxlZ2FjeS10cnVuaworMzA4ODggMDBmMjk0YmY4Mjk5ZjYxNzYyMzFlOWY2NTEwOTJjZTNkMmFkY2JkMyBsZWdhY3ktdHJ1bmsKKzMwODg5IDYxNDdiYzE0ZDI3N2I2ZGJkNTZhY2VkZDcwNzFjMGRkNWM3NDg5NDkgbGVnYWN5LXRydW5rCiszMDg5MCBmZjBlMWVkOTk4ZGVkYWIzY2Y3MTZlNWUwYTA5NThhMGZmM2U2MzI5IGxlZ2FjeS10cnVuaworMzA4OTEgYzFkYzUwZGY1NzhjZGNlYmE1ZjI1ZDI0NjFhZWQ3MjBkMTMzOTdiNiByZWxlYXNlMjItbWFpbnQKKzMwODkyIDEzYmVlYTJkMmQyNmFhMWExZjUxYTFhYzg0ZmM0OTQzNDQwMzlmNzIgbGVnYWN5LXRydW5rCiszMDg5MyA5YzRiNDIwN2U5NzlkYzNiZmMwNDYwOWE4NDFmMWUxZmQyOTRmYWEwIGxlZ2FjeS10cnVuaworMzA4OTQgNWIzZmJmZjA1ZmZkYTliM2ZjZTIwOWJlNzBkOWYyYjExMDQ1Njg1MyBsZWdhY3ktdHJ1bmsKKzMwODk1IGI3MjU2NDk2YzliMDFjNzQ2M2ZhMWQxYjk4NDkyZjNmYjk0ZWRiYzggbGVnYWN5LXRydW5rCiszMDg5NiBkMjljNzhkMjdjNWUzYjg4YWQ4ZjE5ZTE3ODY5YjMxOTM1OGFiNDI5IGxlZ2FjeS10cnVuaworMzA4OTcgYmUxNzhhZmQ0MTgxNDUxMWZlYTg4ZTQ0Njc1NDQ4MGZkMjE3YTYyZCBsZWdhY3ktdHJ1bmsKKzMwODk4IGUyZDc5ZmZhMjkyOGM0MGVhZDRlMTVkZGI3ODFlNTE2MGM1ODhjOGEgbGVnYWN5LXRydW5rCiszMDg5OSA4NDBlOWZlZDkwOGExZmI4NWRmZWQ1ZTIxNTU2ZjljZTQ1ZTQ0YzY3IGxlZ2FjeS10cnVuaworMzA5MDAgZjNiYWJhZWRlMTg5YTBiNmEzYTJjZmQ3ZjI3YTkyZGFjMTI5OWM4NCBsZWdhY3ktdHJ1bmsKKzMwOTAxIDgxNTY5Y2NkZTViZGYwMGRmNjVlZjc1ZmRkZTE0YmM4ODRlNzNhOTQgbGVnYWN5LXRydW5rCiszMDkwMiBhNDU3NTMxYzBmZDQ5NTEwNzIxNzY5NTBlMDRmMWMxNzdmMGY3NzM0IGxlZ2FjeS10cnVuaworMzA5MDMgNjI5NjAzZjY0NDEyNmNhMzUyYzExOTk3MGNkZDE3M2JjMzdkODAwOCBsZWdhY3ktdHJ1bmsKKzMwOTA0IDhkODY5ZjkyMWYyMjY0MjEyN2Y5OWYwMjgzNjA0ZjJiMTE5ZTM2MGYgbGVnYWN5LXRydW5rCiszMDkwNSA5YmNmODVkMDEzNWMyZTc0YWZlOGM4MTcyMDM0YWQwNmM5ZWE3ZDk4IGxlZ2FjeS10cnVuaworMzA5MDYgNTE3NGI0YTcxZTZlNGI3NzRmYTk1ZmY2OGYyN2U1NmNiYjhjZTg2NyBsZWdhY3ktdHJ1bmsKKzMwOTA3IGQzNjNmODNjMjg0NmE1MmY1NzIzZTE1NWNkMmE2OGUxM2IwMzBmN2MgbGVnYWN5LXRydW5rCiszMDkwOCA5MWE1NzMyNDNkNWQ3OWVhYTUwODI3OGNhYmFkYTU1OGU5NjkxMzAwIGxlZ2FjeS10cnVuaworMzA5MDkgMDE1NjQ3YzdlMTg0MzM2NGE2NmEzYTBmOWE5NjVhMDdmMzY4NjdhOSBsZWdhY3ktdHJ1bmsKKzMwOTEwIGY5YzQ4ZWQ2N2E5M2FkNmVhNzkwOTUwNDUwZDI2Yzg4NGZlZWFmNzYgbGVnYWN5LXRydW5rCiszMDkxMSBlN2NkYjUwM2QxZTA1YmFlOTE4NGIzNzRkOTNjYmNiZjdjZWIyZmY3IGxlZ2FjeS10cnVuaworMzA5MTIgYWE5NGM4MjBiM2VkMDJkY2Q5YjQ2MmU0Yjc5NWFmZTYwYjUwYzIxNSBsZWdhY3ktdHJ1bmsKKzMwOTEzIDg4MmUzZWVhYzNkZDdhMzA2MDVhMDZhMTZmNDg5YWE3NWFhOTdlMTcgbGVnYWN5LXRydW5rCiszMDkxNCBlN2NkM2NjMTEyZDMwMDEwOTI0MzUzNzc5Nzg5MmNhYzUzM2E2MjAzIGxlZ2FjeS10cnVuaworMzA5MTUgMjhiM2Q5YThlZTFhMzM2YWE5NmIwMjU1YzhiZDg2NWU1NTkxM2VlNCBsZWdhY3ktdHJ1bmsKKzMwOTE2IGU3YmU2ODY4MDMzMjZlNDgwODFmMWM0YWQxOTZjN2QxZjA5YzQzMjQgbGVnYWN5LXRydW5rCiszMDkxNyAxMjM1OWU1Mzc1MTJjMzI4Y2QyM2Y4MjFkZGYxZDk5MTZmNzgyNGE4IGxlZ2FjeS10cnVuaworMzA5MTggMDA2NDA3MTRhNTlhNWQ4OGQ4YzNkNzE2MjM4OTI1ZjYwNWEyMzk1OCBsZWdhY3ktdHJ1bmsKKzMwOTE5IGYxZGQ5MDM1N2RjYmExN2NkODI5Y2EwZDQyNGI4ZWI5NzdiYjQ4MTQgbGVnYWN5LXRydW5rCiszMDkyMCBlYWYzZjgwNzAwYjNkNWQxOWI4OWJmYWI4OTk3OWUyMTY2YTBmODM0IGxlZ2FjeS10cnVuaworMzA5MjEgNDc5NThjOTk0NTJkZTM2ZTJmOGUwM2MzY2NhZTI4ZWY3NzhhOWI3ZiBsZWdhY3ktdHJ1bmsKKzMwOTIyIGQxNmE5Nzc3NDZhMjM3YzYyNGU0OTUzOTBmMzg0ZTI1NGU2MmI3YjEgbGVnYWN5LXRydW5rCiszMDkyMyBkYTBjOTkxMjU1YzJlZjY0ODQzMWQwNGZkMDFlYWRmODg2Yzc2MjA2IGxlZ2FjeS10cnVuaworMzA5MjQgNDE3MmIyODZkNjU4YzdhMWI4YTVlMTY1YjA3NWVlZWIzYTFjYmU3ZSBsZWdhY3ktdHJ1bmsKKzMwOTI1IGU5NDVhMDNlZTU2YzY5ZWY1N2Q4NjlkYWEwZjhmYmU2NWZiNTFmMTEgbGVnYWN5LXRydW5rCiszMDkyNiBhZWQyZWY5NmVkNTRkNzk1OWJjNTMxYmIyMDViYzJiMWJmMmZjMWMyIGxlZ2FjeS10cnVuaworMzA5MjcgNmViNWUxYTA5Yjk1ZDVlNmE5MWE3M2QwNjYxZTEyYjgxMzI5MDhlZSBsZWdhY3ktdHJ1bmsKKzMwOTI4IGFjZWRlY2QyMDEyNmFkZmIzMzdkNDExYzJlOTQ3MGFiYjgwMWY3ZmEgbGVnYWN5LXRydW5rCiszMDkyOSBjYWE2ZGY5ZTA4ODA1ZGNjNzU0YTczZjQwYzA5N2ZkZThhMzY1NWQ3IGxlZ2FjeS10cnVuaworMzA5MzAgZDE5YmMzYjE4MTNjYjUxOGM3NmJkZWEyMjVmNjAyMTExMzk4ZmJmZiBsZWdhY3ktdHJ1bmsKKzMwOTMxIGVhNWVlM2U3YmZiMTBhNzhmYTg4NzE5OTc3MjZkNGRmMDFhOWJjNGYgbGVnYWN5LXRydW5rCiszMDkzMiAxZmQwNGMzNzQwOWFiM2ViNTQ3ZTAwZDVmMWQ5ZDA4NTEyNjA5ZDNmIGxlZ2FjeS10cnVuaworMzA5MzMgYTI0ZmQ0NWFjZWIxOGJmYjIxNGE0OTc5N2MwM2MwZDc3MWI2NmQ2YyBsZWdhY3ktdHJ1bmsKKzMwOTM1IDU2ZDgzZDBjNTViNjBmYzE3ZjliZDY3NDQxNGVjMGFmYWUyZDgzYmYgbGVnYWN5LXRydW5rCiszMDkzNiA1NTBjMTVjNDkxOWIxNjI4M2NjODBiZWI0YTRhZDg1MjBiMjVhMDJjIGxlZ2FjeS10cnVuaworMzA5MzcgNWMxMzNkMTNmMzI1NjJjYzQyZjc2MTgyNDFiNjYwZDg0YmU0Njc1MiBsZWdhY3ktdHJ1bmsKKzMwOTM4IDk5MjRmMjJkNjYwNGU0Mjk0YjMwYjZmOTZmYWI5MDZlMTM2MmQzMmUgbGVnYWN5LXRydW5rCiszMDkzOSAyNzQyZWE5M2FiMjMzYTQ4ODI3NjE0OWZkM2Q2MTk0NzU2ZWNjMzhjIGxlZ2FjeS10cnVuaworMzA5NDAgMjBkZjI0YTEzMzQ5MDI5ZTZhMjU5NWRmMjZjNTlmYWEwZmVkYzAxNSBsZWdhY3ktdHJ1bmsKKzMwOTQxIDllNDMwYWNjY2RiOGY1YzAxZTA2M2I4YTlkMjdlZWEyZWVhMWUyOTEgbGVnYWN5LXRydW5rCiszMDk0MiAwMDlmM2FiYmY3MjYyYTI1YWZlOGNhMWQwMDMyMmFlMDFmYTVjY2U4IGxlZ2FjeS10cnVuaworMzA5NDMgYzc0Y2VhMjQzNzJlOGY1ZjMyMWNhMTNhNjBlNjM5ZmVhZjE5Mjk0NyBsZWdhY3ktdHJ1bmsKKzMwOTQ0IDdkM2M2YWQ0ZTNlZGM5YzJjYWYyOWE4MjNkNDRiMzM4MDhjZTY0MTcgbGVnYWN5LXRydW5rCiszMDk0NSAwYWVhYTNkMWUwZmY3OTQyYzE3YTc2ZWY0MGI3NjdjODgwZTI0YjMzIGxlZ2FjeS10cnVuaworMzA5NDYgMjRjOGZiZWM3NjFmMjMxZDdmMzhmMjI4NDliN2VkMDQwYjA0YzM5NyBsZWdhY3ktdHJ1bmsKKzMwOTQ3IDNjM2U0YzhjNGE5ZGZmMDI2YjJjYzE2YzNjYjA3YzI3MzA5MTdjMzEgbGVnYWN5LXRydW5rCiszMDk0OCA5M2JhNDJjZjRlNTNhY2Y4YjExMmJlY2NhOWQ1YjVjMThlMmYzNWNhIGxlZ2FjeS10cnVuaworMzA5NDkgZmEyNDUzOGY4NjUwYTU2MmM1NTAxNGUwYTIyZGJiYTBhMWQ2ZGE5NyBsZWdhY3ktdHJ1bmsKKzMwOTUwIGUyNmEyZjdmMjI0YjU5YTQyMjM4NjM5ZDc0NGUzMWE3YWI0ODgzMTYgbGVnYWN5LXRydW5rCiszMDk1MSBiZjBiYzg0ODE1MDIxNDNiMWM3ZGIyMTBlYmNmYzk4MTgwMzNhODVkIGxlZ2FjeS10cnVuaworMzA5NTIgM2NkOWRkZDU1NjJlYTA5OWJhMmFiNmI1OGNiY2FjZDJhZDJhYmQ4NyBsZWdhY3ktdHJ1bmsKKzMwOTUzIGI0NjVjOWQyMTk2YTNjYmE4NzkzYmZlM2FiM2ExYjc4YTAzMzE4MDUgbGVnYWN5LXRydW5rCiszMDk1NCAxYWUwYjE0MjM3MGU0MDg0ZWRhNGNiMjIwNDkyZTNmNmJjY2EwMzllIGxlZ2FjeS10cnVuaworMzA5NTUgZjhhOTAwODVhY2M0MWU5YTA2MTJiYWI3OGM4YmFiZDYzMjQ0ZmZmNSBsZWdhY3ktdHJ1bmsKKzMwOTU2IDQwNDc4MjE0MTliNTdhODg1OTBjMTlkOGI3ZTEwYjRiODYzNmMzMzEgbGVnYWN5LXRydW5rCiszMDk1NyAzNTczNjU5MWRjMWU3YTUzMWVjMzJkM2M5OTlkNzRiMDM3YWQ2YjdjIGxlZ2FjeS10cnVuaworMzA5NTggNzExNmNiNWJhYzUwODNkNDliMjJmYjVjZTJmNTljY2RlY2VmNjIxYyBsZWdhY3ktdHJ1bmsKKzMwOTU5IDQzMGVkMWM4ZTA3MWRhYjAxMTU0MGYzZGE5YzI4YzlkMjdmNjBlODQgbGVnYWN5LXRydW5rCiszMDk2MCA2MGZmMWJhNDI4YzNmYTBiMDY0ZGU3ODI5MmI5MDA1MGRkMDc2ZjQyIGxlZ2FjeS10cnVuaworMzA5NjEgOTFhZTI5MmMzYTk3ZjBjZDM4YTAyYmMzYjI5ZmJiNWIxOTc4MjJhNCBsZWdhY3ktdHJ1bmsKKzMwOTYyIDE4ZThlZDgwZThkMTc0OGRmZjVmM2ZiNzQwYTNiMzBjZDQ1ZWJmMmIgbGVnYWN5LXRydW5rCiszMDk2MyBkOWQyNGNlMWNiZjY1OGQwNzMzYWFiZDgzMjkwNjZkYzA3NDM1NzVkIGxlZ2FjeS10cnVuaworMzA5NjQgZTRhNWY3NTM1MDhiYzUwYjAxNTQ0N2ExNGRiNTZiZDkyODhhNjBhNiBsZWdhY3ktdHJ1bmsKKzMwOTY1IDVkYjJjZjNlNzdkYjMzYzk4MGZkMGUxNDljODBmNjc2NmI0N2Q5MWIgbGVnYWN5LXRydW5rCiszMDk2NiA2YjBkYmRlMGZlZDcxNWEyOThjYjc0MjExYWVkMWRmZjU5YzIyZWY1IGxlZ2FjeS10cnVuaworMzA5NjcgOGYxMzcyOWE5NGE5NjZhMWExOGNhNDdkODExZGM0NjU5ODQ0YzM1MCBsZWdhY3ktdHJ1bmsKKzMwOTY4IDFmNjMyNzE0MGZjMjNjZmI4MDdkOWY5MTZlMTM1ZWZiOTE1OTRjZjcgbGVnYWN5LXRydW5rCiszMDk2OSBhMTYyNjJiYzYwOThkZDA4MDE3YzM2MTY4Zjg0ZDQzZTJiZTJkYmQwIGxlZ2FjeS10cnVuaworMzA5NzAgOTI1ZWRmOGUwMDBjYTdkZmFhMjEwZjc4ODZhMzEzNGZjMjlkYWExOCBsZWdhY3ktdHJ1bmsKKzMwOTcxIGQ4YzJjNDBiMzg2YjE5YTBkNjc4NmVlYjg3MTkxMWY0NzFiYTU1NTkgbGVnYWN5LXRydW5rCiszMDk3MiBiM2NiZTdhMDE0MmE3OGQ5Njc1NjllNmJkNzMyYzJhYjYzNGZlODkwIGxlZ2FjeS10cnVuaworMzA5NzMgMGE0N2Q4MzJhNjRiNWI0ZjEzYTIwYWM4ODQyOWNkYmE2NWJmMzYxOSBsZWdhY3ktdHJ1bmsKKzMwOTc0IDQwMTVhMjdhMWQxM2YyYzc0ZDYzYzIyY2YxZWJhMTk0Njk2YWVjMmEgbGVnYWN5LXRydW5rCiszMDk3NSBhMjMwZDEyMDBiYzM1YjNkMjY2NWFmZDNhOTljYjE2OGQwNWI3NGU2IGxlZ2FjeS10cnVuaworMzA5NzYgN2ZiNWU4YTU0MWFiOGZjZTczYWQ2NTlmNGU2ODIxMWMwZTg2OTUyNiBsZWdhY3ktdHJ1bmsKKzMwOTc3IDM1MDlhZDA3ZDE1NmFjYjZlNTY4MmIzYTFjNDRmMWIxZmEzMDkxNjkgbGVnYWN5LXRydW5rCiszMDk3OCA5ZmUzMjE1NGQyODkwMmVlNjVmN2Y5MDA5ZjQ0NTRjMGZmYzMwOGU4IGxlZ2FjeS10cnVuaworMzA5NzkgYjJjZTljNjM3YTJiYzYwMmM4MjkwNDcyNTk2NjVlMTVhZWM3NDEyZSBsZWdhY3ktdHJ1bmsKKzMwOTgwIDExNWVlNDA1MThhODRkY2FkZWJiMWI4ZWUwOGNjYWNkNGFhN2ZlMjcgbGVnYWN5LXRydW5rCiszMDk4MSA2MmM2Njg5M2MyZGJhMmE0NTAzZDQ2NGExYTkzYWY4ZWI2YTY4MDFiIGxlZ2FjeS10cnVuaworMzA5ODIgNGMwM2VmMDZjM2ZmNzA0ZmExZDBiOGMyOGIzNmFkNzUwMjA1MWY1MSBsZWdhY3ktdHJ1bmsKKzMwOTgzIGVhNDgwNDA2Y2M2NTYyMWNmMGVlNjJkNTQ3ZTY0MzhiMzVjZDZhZmEgbGVnYWN5LXRydW5rCiszMDk4NCAwNTU0YjdjNWY2ZDdkMjY5MjAzOWMwMGYyNTJmMTFiYTQyYjJmMmRmIGxlZ2FjeS10cnVuaworMzA5ODUgODgzYWYyOGI5YTBkMDY2MGVmYmIyZjk4NzExYzlhYjljOTQzOTg4MyBsZWdhY3ktdHJ1bmsKKzMwOTg2IDI2YTc5MjAwNzY2NTI1Yjk1MmU2YWZiYjQ3ZDgwZGY0NDk5MjYxMWQgbGVnYWN5LXRydW5rCiszMDk4NyAyZWU5NzQyYWFkZDg5MjE0N2U1NTQzMDIyYzAyYmUyNmYxMzNiNGNjIGxlZ2FjeS10cnVuaworMzA5ODggZWQwZDRhZTZjNmNlNDA5MTg4YzA1ZjFiNmMyYmQ4OTEyMThjMmIzOCBsZWdhY3ktdHJ1bmsKKzMwOTg5IDhkY2U3YTVlNWZjY2QyN2VjNTBkYjIwMTVkNDI0ODJjZjEzOTg3NjAgbGVnYWN5LXRydW5rCiszMDk5MCA3NjRkZjJmZGM5YzYzNjc1ZWM1MGE2ZDJlMDcyYzFlZTg3NzA1OGIwIGxlZ2FjeS10cnVuaworMzA5OTEgZjQ5MTFmN2FhZDAyNTM4NTI0MDZiY2YwMjBmMzQwYjQyY2U0MDkxYSBsZWdhY3ktdHJ1bmsKKzMwOTkyIDZmZmFmY2VmOThmYjM3ZmQ1ZjQyMTU3OTZlNmU4Y2EyMjYyMDc1ZWUgbGVnYWN5LXRydW5rCiszMDk5MyA1Yzc1NDhiZjM3N2IyMjg4YzZmMzg1OGVkMDBiODNlYTA4NGQyYjI5IGxlZ2FjeS10cnVuaworMzA5OTQgMTdkODdjNWJhNmU0YjcxNTIwMDcyZTNkNzU2MjZjYWM4MThkMmIwNCBsZWdhY3ktdHJ1bmsKKzMwOTk1IDA1ZjdlMWM2NWQ3ZTgzODNiNjMxN2Q5MjVjMTg4NTAxMTRmZmNiNjYgbGVnYWN5LXRydW5rCiszMDk5NiBmNGU4YTZkNGFhN2MzN2UxYmY2NDRkNTBiOTliYmJlZGI4YzJjYTUzIGJzZGRiLWJzZGRiMy1zY2hpem8tYnJhbmNoCiszMDk5NyBmOGQyOGU4MmM0Y2M5OWEzYmUxMDJhNTRhZTllNjg4ZDE2Njg5Y2FiIGJzZGRiLWJzZGRiMy1zY2hpem8tYnJhbmNoCiszMDk5OCBkZTQwNjE1ODRjODM5MTU3MjI1ZmQ4Yzk0MTNlNjdlZWYxNDMyZDk3IGxlZ2FjeS10cnVuaworMzA5OTkgZmNjZDllOTQzMjExYWQ2M2IzZTY2NjcxM2UxYmUwYjY0NjViOWFiNSBic2RkYi1ic2RkYjMtc2NoaXpvLWJyYW5jaAorMzEwMDAgYjc5YzFhZmZmMTEyODM1MWE4ODIzMDI4NzhjM2QzMzc0NWJjYmYxZCBic2RkYi1ic2RkYjMtc2NoaXpvLWJyYW5jaAorMzEwMDEgMTU0YmFjMGIyNmE1NGVjMTkwOTI2YzdjOGJiNTU0YjZhNmYzYjczYiBsZWdhY3ktdHJ1bmsKKzMxMDAyIDMxMDE0ZmJlMjBkYmIwODgzMDE0MWU2YTc0ZDc0NDU2NzAyZDk5ZTQgYnNkZGItYnNkZGIzLXNjaGl6by1icmFuY2gKKzMxMDAzIDM4YzdjMmQ0Y2Q1YWNmNDM1ZTNhNTY0NDAzMTliZDgyYzI1OTQ2ZDcgbGVnYWN5LXRydW5rCiszMTAwNCA5MjRhZGU4MDEwNGIxNzM5NjY2YWQ1MTcxNDNjMDljOTA0NjM1ZDE3IGxlZ2FjeS10cnVuaworMzEwMDUgYmE5MzEwZmVmNDlkZDgyOTM4ZGVmODc4YWQ1YjEwY2M3YTI3MTU0OCBsZWdhY3ktdHJ1bmsKKzMxMDA2IDZlODllODBlNmEyNjdjNTE2NDY3ZGIyYWY1YjgwMWFkMGUyY2I1NzEgbGVnYWN5LXRydW5rCiszMTAwNyA3MTJiMDFkNTJlOGNkMmIzZjk1YmE4ZWU5NDRhM2IyNGZhY2Q4OTQzIGxlZ2FjeS10cnVuaworMzEwMDggMTRiMTc1OGRmZGRlZGFjZGEwNWI4NTZmMjg1NDkxNGYwMjgwZTA2YiBsZWdhY3ktdHJ1bmsKKzMxMDA5IDI5ZmQ5ZmRhZjUyYTkwNWE3NTc0NzlmODc5ZTExNzViYjk4ZTE0ODYgbGVnYWN5LXRydW5rCiszMTAxMCBlZTBlNTE1NDA3ZmQ5NzlkZTMxOGIxZjVhOTdmMjRiYzAyMjY1NTE4IGxlZ2FjeS10cnVuaworMzEwMTEgN2M4ZGZkM2Y0YWU5MDZlM2FhMTA3N2UyNzBjMGQzMDFjNzJiNGU5YiBsZWdhY3ktdHJ1bmsKKzMxMDEyIGY5Mjg0YjU3YjQyMjlhZWQ4NmM5MWY0NmZjYmNiYjk1ZjhmOTZlYTEgbGVnYWN5LXRydW5rCiszMTAxMyA1YmE3OTM0YTdiYTAyMTg0YzUyZTNkNTA1N2EyYWU1MzE5N2I4ODRmIGxlZ2FjeS10cnVuaworMzEwMTQgMzZmNzFmZWY1YjEwOGZjODAzMjMwYmZhMzEwZmVmZGJkZDE1ODlmZSByZWxlYXNlMjItbWFpbnQKKzMxMDE1IGU5NTc4NzQ3ZjQzZGZlNjZiNzA2NTQ0OWJmZTZkMmU4YTdmMTZjZjkgbGVnYWN5LXRydW5rCiszMTAxNiAwOTA0ZDg3OGI4ZjE4Nzc3ZGFmNzY1NzkxN2Q2NGI2YzRhZjYyZjUxIGxlZ2FjeS10cnVuaworMzEwMTcgZTljZDIyODEwNGExMzBiZmQ2MTE4NGUyM2EyMWZmYjI5MzgzMDc1NiBsZWdhY3ktdHJ1bmsKKzMxMDE4IDNiYzcxZDIzNGEyOWU5ODk5Mjk4ZTliNmIzYmI1MjJjNDVjYjBlY2YgbGVnYWN5LXRydW5rCiszMTAxOSBiODNmYThmYTEyMWU4NGQ4MzNlNjBhNTlmZmZiZGJlZThiNmU1ZGVjIGxlZ2FjeS10cnVuaworMzEwMjAgNDI0N2U2NDBlMmE2ZWIyYTU4Yzc5ZDAwYmFiYjU4ODU5MWRlMWE2ZSBsZWdhY3ktdHJ1bmsKKzMxMDIxIGE4OWMwNzdlNjQ4YTE4ZmNkMmU0NmI0MmU4NDc2YWZmMDNlYjE5MDEgbGVnYWN5LXRydW5rCiszMTAyMiA3YjdkM2I5MDYzNjMwZTRhZmZkMTRmNDA3NTQ5MzEwMThlZjYwZDhlIGxlZ2FjeS10cnVuaworMzEwMjMgMWYxNmFiZmFmNjNlOWYwZWU0ODhhODllY2U2OTNiN2ZiZTBiOTA4YiBsZWdhY3ktdHJ1bmsKKzMxMDI0IGFkYmMzZmU4YzgxY2MzYTNhMGE5NTFiZThhNDlmZTNjOTgyZDE5ZDEgbGVnYWN5LXRydW5rCiszMTAyNSA1ZTQzNTVkODBkZDE1OTczNDBmYTc2YjE3MDMxZjhlZDBkNTMwOWE5IGxlZ2FjeS10cnVuaworMzEwMjYgZTkwNWIyMmUzOTJiYTU4ZmVmOTM1ZWI2N2JiM2U2MWFiMDk4OWFkNSBsZWdhY3ktdHJ1bmsKKzMxMDI3IGQ4NzUwZTBkM2ZiODg4ODM2YWI3ODM4YTgwNjVlZDdkMmEwYzYyOWEgbGVnYWN5LXRydW5rCiszMTAyOCA0YzM1YTY2ZmNlNGRmMGVkOTVlYjkzOTA0NDdhZmJkYjI1M2E5ZTEzIGxlZ2FjeS10cnVuaworMzEwMjkgYWUzMWZjYjdiNThlNGNjZDg4MTEyMWYwOWYyOWIwMzA0ZjRmZDI3MSBsZWdhY3ktdHJ1bmsKKzMxMDMwIDA5MGE1MGNiMjY5MDBlMDg5ZTQ1MjdmMzQxYWM2YmEzYWJkM2RmMzEgbGVnYWN5LXRydW5rCiszMTAzMSBlNDJlMzAyNWJhZTNiNDlhNTg3NzI1OWQ5Zjc0YTg0MTE2ZmNhNGRlIGxlZ2FjeS10cnVuaworMzEwMzIgNjIwNTM5MTY1ZTUzMDhhYzlhODQ4MGEyZWU3ZGUxMDg4MzY0YWYzMyBsZWdhY3ktdHJ1bmsKKzMxMDMzIDBkZDhkOGE3NjAxNWVmMGRiYjk2YmVmZDkyZWQ3ZmZiZGY1ODYyNjAgbGVnYWN5LXRydW5rCiszMTAzNCBmZTQwZmNmNDllZTU2NmRmYjVmYzI5MTg5MTcwZDE1NjZjMDE2ZTI5IGxlZ2FjeS10cnVuaworMzEwMzUgYjQ4MGE0ZjcwN2Y2MTc4YjIwNjI2ODAxZmVkMDU2YTM0ZTNmMTczNCBsZWdhY3ktdHJ1bmsKKzMxMDM2IGQ5ZDU3ZjVmOThjZGE3MjJiNzg0YWZmOWRlODhjMGVmY2FmMzI4NTcgbGVnYWN5LXRydW5rCiszMTAzNyAxNDI3NmU0M2VjZTYwNDc5ZGFjNjY3MjE0MDJlNDFkOWM5Zjg1NTA3IGxlZ2FjeS10cnVuaworMzEwMzggNDRmNDY1NjgzOTI3YjNjZmM2ZGMzYzNhNmYwMzRhNDBkOTk2MGU1YiBsZWdhY3ktdHJ1bmsKKzMxMDM5IDIwYzU4MWMyM2JjZTMzMzY4NjUyNDM0NzQ5MGQ0OTJkYTU0Y2Y5MWQgbGVnYWN5LXRydW5rCiszMTA0MCAwZGUxNDI1MmQyNmNlNmRkM2MxNDExZmE3YWNhMjAxZTVjODE0Njk5IGxlZ2FjeS10cnVuaworMzEwNDEgYTJkOTZlN2Q5MWExYTlmOWViMDkxNDczNzc1OGY0MzVlNDM5MWZmOSBsZWdhY3ktdHJ1bmsKKzMxMDQyIGIxZDFmZTdmYjUxNGIxNzNhODA4Y2E1ZGI5NjlmNWI0MGVkMjY1MDggbGVnYWN5LXRydW5rCiszMTA0MyBkNjJiZDI0MDcyOTE5YWIwNDUzZTQ3ZmZjYWMyMmNlNDNkMjkzMzQ2IGxlZ2FjeS10cnVuaworMzEwNDQgMGU2ZGNlMWVjMjMxY2Q0N2M0MzBkMmYxZjViMjljNGFmMmU3ZWQyNiBsZWdhY3ktdHJ1bmsKKzMxMDQ1IDVmMzI5NDJhMjI1YWRhOWVhNWI5NWFkZjgwYmZkYjc1YjAwOTlhOGMgbGVnYWN5LXRydW5rCiszMTA0NiA1MWFiYjVlODYyMjYyNTU1ZmNlNTI4ZDNhNDI5ZWE3NDQzMDdiN2M2IGxlZ2FjeS10cnVuaworMzEwNDcgYjJiNTc0MTE4ZmZkYTNmZGY3NGQ2YTJmYmUyYTlmYzg3Njk5OGFhYSBsZWdhY3ktdHJ1bmsKKzMxMDQ4IDgxYTJkMTg4ZWExZjlmNmEzM2ZhOGI0OTVlZTA3OWNjZTUwYjBmZWYgbGVnYWN5LXRydW5rCiszMTA0OSA2Nzg2ZTg2YjhmZjBhZDBiYTI1NzM4MmJkM2ZhYWE1YzhiZjJjZTRjIGxlZ2FjeS10cnVuaworMzEwNTAgMTdiZmQ1ZGJjMGYxNmRjODVjMTZiMjA4OGFjYzQyODA3ZDY5MzIzNSBsZWdhY3ktdHJ1bmsKKzMxMDUxIDBmOWViODQxM2I2MWI0ZTYyNTFlNDlmMDc3NjI1OTQ3YmNiMjJhMmEgbGVnYWN5LXRydW5rCiszMTA1MiBiMTczYTJhMjMwODI1YTQxZmFiMWRhZjhkMGM1NDhlM2I0ZjJiOTc3IGxlZ2FjeS10cnVuaworMzEwNTMgZDVmNDdlMTQ2NWQ2NmRlNTAzMjgyOWFiYmUyNGUzNTBlNzcyZDAxOCBsZWdhY3ktdHJ1bmsKKzMxMDU0IDBiYjE1NGZhODA0N2M4ZjBmYzgwM2JlY2FmNmEzOTVkMTQxYmU2ZmYgbGVnYWN5LXRydW5rCiszMTA1NSBkZGVlOGMxNTgzMDFjNjgzY2ZiOThlNTdmOTZmZDI2OWVmYzkwNTUyIGxlZ2FjeS10cnVuaworMzEwNTYgMmUxOGRiY2Q5ZTA0Y2FiZDY0N2VkYzMyYjlhMGNhNzg4YzNjMmI0ZSBsZWdhY3ktdHJ1bmsKKzMxMDU3IDY4OTI1N2NhNGQwOTJiNmQ3OWQ4NTIwMzQ5YjcwZDVkZjEyMTlkNGEgbGVnYWN5LXRydW5rCiszMTA1OCA2OTZjNDJkYTc4NzUzMzE4MjExMzBlMDg5ZWI0NTE0MmJjN2Y2MDczIGxlZ2FjeS10cnVuaworMzEwNTkgNTc2NWQ1MjRkZTcxZTJhY2RiOWVkYmIwYTNlNTAyZmVkNDU1NmRiYiBsZWdhY3ktdHJ1bmsKKzMxMDYwIGQxMTIyM2RhYWY2MWQzYzUxM2JlY2FhMGFmMTlmOTMyOWQ3M2E2YmUgbGVnYWN5LXRydW5rCiszMTA2MSAwMmYxMzhjNjM5YTA4M2ExMzc0ZTA3NDQ2NmZkN2Q3MjA4OGNmNjZlIGxlZ2FjeS10cnVuaworMzEwNjIgODQyZDZhMjQ0OTdhZTgzYTUzNjkyODFiNWViYWQzYWIwYmFjN2FkMiBsZWdhY3ktdHJ1bmsKKzMxMDYzIDk5MDk5ZGViNjAyNjQwYmI5NTZmNDMxMjY5MmUzOTM2ZGM1YmFiMzcgbGVnYWN5LXRydW5rCiszMTA2NCA3MmIzOGQ1ZmU2MWY5YWZlZWQyYTJjNmZkNGQxNjBlNWE4NTRjYWE4IGxlZ2FjeS10cnVuaworMzEwNjUgY2JjODYwMjhkOWYzYmFiNzBhZDgyNDk3NWIzMWFjYzAwODljZmFkOSBsZWdhY3ktdHJ1bmsKKzMxMDY2IGZkYzUyYjExOTcwOTBlMTMyOTBmOTg0MzhlNTU4MzU2MmE2NDgyMjEgbGVnYWN5LXRydW5rCiszMTA2NyA4Nzk0M2ZhZjRmZDIxNmE2MTAyZTA3ZDQ5OTU0MWM4YWJjNTExOGU2IGxlZ2FjeS10cnVuaworMzEwNjggOTdiMjgxNzA2MzRjY2YxOTJjOWFlZjU2YjU4MDg5Yjk4NjQ2MTI3NCBsZWdhY3ktdHJ1bmsKKzMxMDY5IDJhZGQwMDhiMWI3ZDA3NWQzMzAyNzc0YmE5OWY1NWZlMmZiMjI2OWQgbGVnYWN5LXRydW5rCiszMTA3MCA4OGNlZWVlZDcwYmQxNTFkNWVjMDkwMTExMzliYmVjOWFjMzg0YzlhIGxlZ2FjeS10cnVuaworMzEwNzEgMGM4ODEwMzczYTFhNzcyODY0OTBjOTYxYmI1NDVjZjQwMTQxZDVkZCBsZWdhY3ktdHJ1bmsKKzMxMDcyIGVkMmQyM2QyZmQ0MTJiOWY3ZTc2NWYyNjZhMTcwOWUwNWQwYzkyZWUgbGVnYWN5LXRydW5rCiszMTA3MyBjNDdkZTg4YWU4NWQ3ZTU0N2EyZmQ5MTZjNTM5ZGI1ZmYyMzkxM2MyIGxlZ2FjeS10cnVuaworMzEwNzQgZjk4MjJiMThjZjkxOWM1NmNiYzlmZWE2NWNiNTgzMzk5MWNkOWIzOSBsZWdhY3ktdHJ1bmsKKzMxMDc1IGJkNjNmMjhjZTdhOGJmZGExMDAwNWMzMDc0NzgxYmJiOWZiNDUxNmEgbGVnYWN5LXRydW5rCiszMTA3NiBjZTc0OGFmYmQ2ZWZkMmQ0YTczNDE0YjYyMTkyNzdmZDViM2RkZWQzIGxlZ2FjeS10cnVuaworMzEwNzcgYzQyNWY2NmRiNDU4MjI1MDNkOWVjOWQ0NGUyNDU3Nzc5NmIxYmU0YyByZWxlYXNlMjItbWFpbnQKKzMxMDc4IDdmY2RlZWIxNmVjMGQ2NGViYzJmYzg5Y2RhYjYwNzdkNGQ2MTAyZWUgbGVnYWN5LXRydW5rCiszMTA3OSAzMTgwNzg4MGY1OTk2NTkxNGNjMDFiMWZjZjU1MmZlYTgxY2FhMDBmIGxlZ2FjeS10cnVuaworMzEwODAgZDNhZjFlNzkzMjQzODkyYmRiYzJhMjBhNWIzYTFmNDU4NzUxYjZmYSBsZWdhY3ktdHJ1bmsKKzMxMDgxIDUwYzczNDI1MGUwNTI5YjY2YjU1ZGMyOTdlMGM0YWZlYjVmMjg1ODUgbGVnYWN5LXRydW5rCiszMTA4MiA2NTk3YzA5YjFlNmRjOWQwMGQxZjM1MjhlMjc2OThjMzE2ODAwOTVhIGxlZ2FjeS10cnVuaworMzEwODMgM2FlMGEyZjg3YWEwNmM3NGQ2OWFiNzBmNzlmMDg0MmFlZDYzMzMxZSBsZWdhY3ktdHJ1bmsKKzMxMDg0IGMyNjdmMjg3MjRkZGNjZGViYzUzMTg4ZWRhNWRhOWUwY2E3MjA1YjkgbGVnYWN5LXRydW5rCiszMTA4NSAyNGUzNGFiYzYyOTUwMDk3MzA2NTBhNTBlMTY3YzU2OTIwNjUwYTQwIGxlZ2FjeS10cnVuaworMzEwODYgNWVlZmVjOTRhNzg0ODU0MmI5YTA2ZThjNWYyMWMxZThkZGI4YjcwMSBsZWdhY3ktdHJ1bmsKKzMxMDg3IDhkODM1NzhkYmE4MTQxZDQ2ZmZmZTEwMjZhYWQzNWUxNDY4NWE4NDQgbGVnYWN5LXRydW5rCiszMTA4OCBmYWFiZDk4NjdmYjhkYzQ5OTQwZDM4YzIyOTZkYTdhNmMwYWJiYmViIGxlZ2FjeS10cnVuaworMzEwODkgNGFhNGU2YjNlY2E3MjNmNDM0OWU3NDZmN2I2NjMwZDU2MTcxYTNlMiBsZWdhY3ktdHJ1bmsKKzMxMDkwIDNjODkwNDlmZTYyOGQzNGRhMWVhYTFlNDlhYTY1MDgxMmU1ZGM1YjIgbGVnYWN5LXRydW5rCiszMTA5MSBkNDJkODNlNTY4NmMzYjk2YmVkZWU0ZDNiYzg1ZGM4ODE0OWQ1ODdlIGxlZ2FjeS10cnVuaworMzEwOTIgYWIxNDNhZWQ0OWI5MDZmYjgzMzYwMDAzZDJlNmQ3NmU5YTQ4OGY4MiBsZWdhY3ktdHJ1bmsKKzMxMDkzIDI1Njc4OWFhYWNkNjVjMDMyMzJhYzJmMWUxNDQwMzhkYWMyOWM3ZjUgbGVnYWN5LXRydW5rCiszMTA5NCA2MjBiYjM1NTFiYjY3NDdhNjYwYjRkZWZhZGRlM2YyMDQ1NTI3MTRlIGxlZ2FjeS10cnVuaworMzEwOTUgODc2M2E4ZjZjMGQ1YmVmMmU4MDAyNWMwMDQ5MTJhYjdjNTZiNDgyMCBsZWdhY3ktdHJ1bmsKKzMxMDk2IGMwNzViYTJhYmY3YWJhNmY2ZmRkMzM4MGY3Y2Y1MjNlNTI2MWQ0ZGYgbGVnYWN5LXRydW5rCiszMTA5NyBmMzNlNjQ0ODQ2MjA4MWM3NGNiZGUxYmIxODY5YmNjYmI4YmJjNDQ1IGxlZ2FjeS10cnVuaworMzEwOTggNzZmYThjNzlhODlkMGE2OTBiYzM1ZGU5ZTlkYjc5MjkyZGI3ZTQwOCBsZWdhY3ktdHJ1bmsKKzMxMDk5IGJhNTdjM2RhZjZlOWEzOWQ2ZWIwMmQyNjIwNTY5ZjMzYjMyOWVmMDMgbGVnYWN5LXRydW5rCiszMTEwMCBiZDhlNjIyMmUxNmEzMmEzYWY0MzI2YjAxMDkzMDM3YTJjY2Q2YWViIGxlZ2FjeS10cnVuaworMzExMDEgZjIzNWYxMzVmM2Y4YTI3ODYyOTNhNzY5MzkwMWJhMDQ5Y2Y3ZTA3NyBsZWdhY3ktdHJ1bmsKKzMxMTAyIDY3NGYzZWVjZmZjNTA2OWU3MWNjN2FhYWIyZjgzNmRjMmIxNTg2OGIgbGVnYWN5LXRydW5rCiszMTEwMyAwMTkwODcyZWJjZjNkNzc0ODQwMTYzZmM2NjQ5ZTA2NDBkNTNiODY3IGxlZ2FjeS10cnVuaworMzExMDQgM2I5ZmI1N2ZhYzM0YTI1ZDQ5OGE0ZDU1YjEzY2M0YzIzM2E0NGQzYSBsZWdhY3ktdHJ1bmsKKzMxMTA1IDE2MDg1MDdiY2MzZmY4NDdhZjU2MWI5NmJiNjJmMjEzZjQxOTQ5OTUgbGVnYWN5LXRydW5rCiszMTEwNiA5YmMxYzg0YjIzZTY2MjM2OTMyODMyNjY5OWNkNjBmNzhiMWU4OTdhIGxlZ2FjeS10cnVuaworMzExMDcgMmYyMjdmZjExZjVlM2FlYzE2NGE5NTliMzQ0YWQ0YzVjN2JlMjgyMyBsZWdhY3ktdHJ1bmsKKzMxMTA4IDZmZmI1YzhlNjUzOGVlODViOGEyZTQyMjQwYTNiNzliZGMyNTlmZWUgbGVnYWN5LXRydW5rCiszMTEwOSBmNDdhZjJjZGI5ODNiNDFmNWVhY2JiZWJmMzEzNzI2Njg1Mzk2NjU3IGxlZ2FjeS10cnVuaworMzExMTAgMmQ3YzBjYmM4M2NmM2Y0OWI5YTAwYWExMTUzYjQzM2NhMzc4MjA5MSBsZWdhY3ktdHJ1bmsKKzMxMTExIGQxZWRhYWE5MzhmYmU3NDg1MmZmNTU1MmFmNDUzYzljYTRkZTZlMTcgbGVnYWN5LXRydW5rCiszMTExMiBhMmRiNDM3ZDMxNGI0ODkzN2JhMGJjZTc4OWYwNTU1NWMyNzE2NDIwIGxlZ2FjeS10cnVuaworMzExMTMgNjU2MzVjNzIxMzVlMWFjYzljNjczMzViZGZlNWM3NzZiN2QzMTQwZiBsZWdhY3ktdHJ1bmsKKzMxMTE0IGEwNTgxNDE4NGU4YzZlNTA2MWNmMGJmMzJlMDIxNGQ4NTdhZDljMTIgbGVnYWN5LXRydW5rCiszMTExNSA5ODE5N2ViZTVjY2I3ZGVmNzhlN2I0NDc3OWJmZjkxNjI2NGMzMTAyIGxlZ2FjeS10cnVuaworMzExMTYgNzI4MzE0MGQ0MzE5ODZiMjQzZGFhNzAyYThmM2I5OGE4ZmNmMzMyNiBsZWdhY3ktdHJ1bmsKKzMxMTE3IDNlYjEwYTE0YmEwMGQ5NmIzNDA0NjRjMmVkY2ZiM2I4OWQxNTVmMDkgbGVnYWN5LXRydW5rCiszMTExOCBlM2ZhODM3N2YzMGM1ODBhNTBiNGI5YWVlZGM2NmZkMDVhY2I5M2NjIGxlZ2FjeS10cnVuaworMzExMTkgOTMyMTA1NjRiYjQ2MDc5ZjBkNjJlMTU0NjM1ZjRlNGJlN2MwZGE1ZSBsZWdhY3ktdHJ1bmsKKzMxMTIwIGQ2YjY1ZTM4NTVhMjUwMGQ4ZDE1OWUzYjRkNDM2ZWZiZjgyMTJkOTUgbGVnYWN5LXRydW5rCiszMTEyMSA3OGU0M2IzNmU3ODQ0ZWI4ZDQ1OWU4Yjk0MmM2YzM5YzliMDQ0ZTU0IGxlZ2FjeS10cnVuaworMzExMjIgNTdiZGY0YmFjNDM1YTdlNjZlY2Q1ZmNjMTdmOWU2NjkwN2Y0YjkyNyBsZWdhY3ktdHJ1bmsKKzMxMTIzIGU1ZDE4MTEyMDMwMzQ5MTE1ZWIyNmRkNzMxMGI0NDNjNTA2NmM0NjYgbGVnYWN5LXRydW5rCiszMTEyNCA5MTVkMzI3YTIxNGE5YWZhOWI2ZTg0MDFmOWUxNmVlY2VjZDZlNGUzIGxlZ2FjeS10cnVuaworMzExMjUgNzIyMjhhMjVkYWFhMjU5MjM0OTA5MTFlNjA4OTYzYTcyNjk2OWU5YyBsZWdhY3ktdHJ1bmsKKzMxMTI2IDhlNjBlYzg4ZWNiODRkOTI1MzBkODM0NjQyYTM4OTY5NWZlZThiNmUgbGVnYWN5LXRydW5rCiszMTEyNyBhMzVkZmNhOTMzMThkMWY5ZTgzYzE3ODZjNWM1OTNmZDk3YTJmYTJjIGxlZ2FjeS10cnVuaworMzExMjggZDE1OGQxMGVmNGFlYjAyN2I3NDRmNTZhYWU1ZDNkYWFhZWE0OWEzYiBsZWdhY3ktdHJ1bmsKKzMxMTI5IDMxM2U5NDRhMmM4ODYyMzZhNmUxOTdhZmIxYzVhNzVjNjNmOTQ3MDkgbGVnYWN5LXRydW5rCiszMTEzMCA5YTNiODQ0M2Q1YTYxNjE1ZmZkOWRlM2Y1ZjM4NzA1MzkzMTg5NDc5IGxlZ2FjeS10cnVuaworMzExMzEgYzQyMTRjMjBiMjFkYzAyMGE4MDdmNjBiMTIzZDQyNDk5NDA4ZTFmMyBsZWdhY3ktdHJ1bmsKKzMxMTMyIDgyYThjYTNjOTI4YzBhZGUzM2Q5N2IyMTFiMDBkMzBlYjg1OTZlMmMgcmVsZWFzZTIyLW1haW50CiszMTEzMyAxZmE0NDQxNDk4NTg5ZDUwMTg1NzNmMmE1MDI3ZDJlYzQ0YzYwNzQ4IHJlbGVhc2UyMi1tYWludAorMzExMzQgNDJiNjE3ZmQ5YzY5MjNkNzU3MjI4MmI5YzE3ZGIxNjhlZmRjMWVjYyByZWxlYXNlMjItbWFpbnQKKzMxMTM1IDIyNTUxZTFkMmM2ZTcwZWQ0ZDQ4YmQzYmU4NTkxZWJkZTY0MmEwMjggcmVsZWFzZTIyLW1haW50CiszMTEzNiBjY2ZhY2FlYzA5Njg5MTllYmJmZThiZDk5OTNiMDY2MGUxYmRjNzc2IHJlbGVhc2UyMi1tYWludAorMzExMzcgYmViMjAwOGEzYzMyOTVkN2U1YmYwYTJhYTQ4OTVjMmE1NTVmODdlYyByZWxlYXNlMjItbWFpbnQKKzMxMTM4IGM5Y2NjOWQwYmE5OWE4OGRiZTllYTQ1ZDkxMWFjNGZjNTk0NjU4NGIgcmVsZWFzZTIyLW1haW50CiszMTEzOSAxZDhjODYyMzRkOWMyYmRmMDY0MTAyODgwOGZiNTk0M2YwYjQ5ODZkIHJlbGVhc2UyMi1tYWludAorMzExNDAgMDYwMjA3OGJkY2UxMjNiMDJiMDI5ZmU0OGM2Y2FlNDNlODRlMjk0YSByZWxlYXNlMjItbWFpbnQKKzMxMTQxIDA3MjlmODM5M2IxNjAzZjdlN2UyNDVkNDM4ZmU4MWJiZmYxYzNkOTIgcmVsZWFzZTIyLW1haW50CiszMTE0MiA2NDdjMjkxNDdkNWQyN2VlODRiYjQzYTFmNjc0OGY4YjYzZWIxMGU4IHJlbGVhc2UyMi1tYWludAorMzExNDMgODM3MDFmYWIzMmZlMTE3NTg5NThmNWQ3N2E3YTIxYTI1OTU1ZTllMiByZWxlYXNlMjItbWFpbnQKKzMxMTQ0IDQ1YWQ3N2E0M2Q4N2Y2OWJhZjQwMmIwMDVhOTI4M2NmOGUwODBjNTYgbGVnYWN5LXRydW5rCiszMTE0NSAyYTgxYzFhODgzY2JiNWMzZWNhMjAxMWY0N2IxM2QzZjIwZGIwNmY0IGxlZ2FjeS10cnVuaworMzExNDYgOWNkYzIzM2I3MjI0YjAzN2JkY2Q3Njc0YjYwODBiOWIxOTRjZjhjYyBsZWdhY3ktdHJ1bmsKKzMxMTQ3IDc0ZDk2MDRlOTM1MzE2ZDdhMTY3ZDNmNTc5MzIyMWVlZTE0YTc1OTQgbGVnYWN5LXRydW5rCiszMTE0OCA1NThkMGYzYjYyNTQ4YmY0MzYwZjgzNWNjYjI4YjA4NTNjNDQ3ZTE0IGxlZ2FjeS10cnVuaworMzExNDkgYmJkOGFiYWEwZjMzNTEyODIzZjZjY2I1YjJkZmVlOTM5ZWMxMzczYiBsZWdhY3ktdHJ1bmsKKzMxMTUwIDE5ZDBjOTk5NTU1ZTkxY2JmNzcxMTNhNjc4ZTM4NjJiZjg5NzY2MTMgbGVnYWN5LXRydW5rCiszMTE1MSA2NWZkYmQ3ODFjYTk5YWYxOTlkOGU1ZTkxMjU5OTg1ODA4NTEyYmJmIGxlZ2FjeS10cnVuaworMzExNTIgYTI0NTI4MzE4YmU5NmNiYTNmYjIwMjE1NDQ0ZmVmMTJmMTlhMWZkYiBsZWdhY3ktdHJ1bmsKKzMxMTUzIDgyMDEwMzhiYmYzMGJkNWJkMWU0MTJlYzRiNzBmOGZhOTU4ZGI1ZTUgbGVnYWN5LXRydW5rCiszMTE1NCBlYWFlZjUxNmE2ODUzZGU3MjQ4NDcyYzZmZTZiNDFhY2ZiMDkxZmQ2IGxlZ2FjeS10cnVuaworMzExNTUgNDU5MDYyMjNlZmIyMzZhMTFkMGMyZjM2NDI3ZjAxMjc4YmZhNGZmNSBsZWdhY3ktdHJ1bmsKKzMxMTU2IDRjOWQwMmM1NjU3YjM1YWJlODcwOWRhMDUwZDFjYWJlMzgyNDAxMWMgbGVnYWN5LXRydW5rCiszMTE1NyBhZmM5YTA5NWEyZDU2ZjhmNzg5ZTg0YmYwMzM0YTRlMmNlNzAzMzRjIGxlZ2FjeS10cnVuaworMzExNTggZjdiMzgyNmQwMTNhMWRlZGIyMTNiMzAyZGQ1OTU4N2ViZTllODMwNyBsZWdhY3ktdHJ1bmsKKzMxMTU5IDY1NjdmNDgyOWU3ZWM0ZmYxYTViZmQzZjBhNmI2M2U2ZDdiZGYwMGUgbGVnYWN5LXRydW5rCiszMTE2MCA3YmY3ZGFjNGRjNDk2MTRiOTIwMzZkZTI3MzIyYTE2OGJkMTRkMGM1IGxlZ2FjeS10cnVuaworMzExNjEgNjQwZTUyZGVlMWEwM2QyYTIyNTg3MWIwNjUxNDZlYTQ4NjI5NzNjOCBsZWdhY3ktdHJ1bmsKKzMxMTYyIDQ4MDMzMDE3Yzc4ZjIwMThjYWQyMjU0YmJmZjQzMjhjNjY3YWM0YWUgbGVnYWN5LXRydW5rCiszMTE2MyBjNDBjYjliZmM4ZTdjM2RmMTY1ODliZGUyYmViZmM5ZTdiNzE5ZjBiIGxlZ2FjeS10cnVuaworMzExNjQgZTRlMjZmZTI4NmMwYjg5YzJiYTYxYjkxMmVjMmU0ZWVhYzRkMGFlZiBsZWdhY3ktdHJ1bmsKKzMxMTY1IDk3NGYxOTZhYmI4N2JlY2NlYjg2ZTRkNGIzOWFhZWIwMzc3MzliZTggbGVnYWN5LXRydW5rCiszMTE2NiA2MDE1NDljNjQwMzljODRiYmU4MWU0NjA0OTdiYjk3ZTFmMzU4YTZiIGxlZ2FjeS10cnVuaworMzExNjcgMmNkNGUwZGZmM2E0MzI3NjBhZTk0MjFhZjgyMGVlMTlmYWJlMjljNyBsZWdhY3ktdHJ1bmsKKzMxMTY4IDYyMDVkYTM4M2U0Y2I0MWI2ODUwNjk5OGIzYTIzMDE4ZGUzNGNkY2YgbGVnYWN5LXRydW5rCiszMTE2OSAwMDQyNmM3ZjE0N2QyMDFhNDMyNTZkYWVmODdkMzM0NzM0MDQ5MWY4IGxlZ2FjeS10cnVuaworMzExNzAgZGQ3M2ExMjE4ZjY5YTg5NjRhMGQyYmE1NGNmNTVhODNjYmM1Zjg4MiBsZWdhY3ktdHJ1bmsKKzMxMTcxIDRkMDRmNDVmZjhhMWU2YzU4ZTcwNWVjOWI1ZGRjMTVlYzMxZWZhYmUgbGVnYWN5LXRydW5rCiszMTE3MiA5MzRhMmI0OTdkMWRkMmFkZTUzMzA4ZTk0ODIyNjEwOTU2OThkNTMwIGxlZ2FjeS10cnVuaworMzExNzMgOGExNDdhNDFjM2Y3ZmFlMGJjZjUzMzJlMjZlN2NmNmZiOGMwZDY1MCBsZWdhY3ktdHJ1bmsKKzMxMTc0IGI2NmFjYmUyOTU3NWM0NWQ1YWVmYTY5YWIzNzA1OWQ5OWJhZmE0NzcgbGVnYWN5LXRydW5rCiszMTE3NSBlOTk2MTVkZTc2NDc2M2M5MGUyM2U0MGIxYjA2ODkwODQxNjg4Mjg3IGxlZ2FjeS10cnVuaworMzExNzYgNTJjZTU3Yjc4YzcxYTg2MDEyZjgyZTFmYWVlODI2OWMxYWJlNDM3NCBsZWdhY3ktdHJ1bmsKKzMxMTc3IGRiNzg0ZDI5ZjQ4MWUwNWJiN2UyM2JjNTVlOGI5NjZkNDJhNWYyMjYgbGVnYWN5LXRydW5rCiszMTE3OCBmNjE5ODYxNDA1MDMwYWFhODJlZTU0ZmE0ZjBiZTc4MWUzNmI5ODhmIGxlZ2FjeS10cnVuaworMzExNzkgZjI2MDM0M2VjY2YxMzIyY2I5MzA0YWQ0NGJkMjIyMGMxY2RiMTg3YiBsZWdhY3ktdHJ1bmsKKzMxMTgwIDU5YjRlYmMyOWQ1MzE3YTZiN2ZjMWI2MGQzOWMzY2EzNzFiMGRiN2EgbGVnYWN5LXRydW5rCiszMTE4MSBlZDkxYmY2MDFiMmRlOThhZjA4NGRjOTc3MmM2ZWY1ODk5NGQ3NzI0IGxlZ2FjeS10cnVuaworMzExODIgMTA2YTQ0YTRiOTc1ZGI0ZjFiMDg2YWY0NWNkNDdjZTUyYjZhYTVkNCBsZWdhY3ktdHJ1bmsKKzMxMTgzIGE5ZGQyMTdhOWJiMTAxZTA4YjEyMzI0ZDgzMjM2NjU5NjRiZDAyODQgbGVnYWN5LXRydW5rCiszMTE4NCBlMTFlOTc2ZmVlNzgxMmFiNDExOGM1YmZiYWQzMmUzNDgwN2Q1OTIwIGxlZ2FjeS10cnVuaworMzExODUgYmEzZWFmZjQ5YjdhZTA4OWE4OGZjMDEyODZmMWRhNDFlNjUxNmZmMCBsZWdhY3ktdHJ1bmsKKzMxMTg2IDY3MzE1MDI2ZDZkMzU5OWI2NmNhNTkxNDczMWViYWM4NTIzNjRhZjMgbGVnYWN5LXRydW5rCiszMTE4NyBiNTk1YzQ3MzVmY2NjNmZkMDAzYjNhODc4ZTg4YTQxNTA1OTY5ZDQxIGxlZ2FjeS10cnVuaworMzExODggMGJiYmNhY2MwNWZiOWU3ZThlZTg0NzBkZGM2MzM1ZGNjZDk4ZjY3YiBsZWdhY3ktdHJ1bmsKKzMxMTg5IDZhMTM5NDY2MDI3MDc0MTcwMjU2NmVkODc2YzUyYTI3ZWRkNjhhYmUgbGVnYWN5LXRydW5rCiszMTE5MCAzNTI3OGFhYWU3NzVjZjk3MWMyMGVhZjJjNTUwNDA3NjNiNTU3YTEyIGxlZ2FjeS10cnVuaworMzExOTEgM2E1MjhhYTIyMmI2YzlkNmRmZTIxM2JiZTZjNzFiNTg1OGQ4OGU4MSBsZWdhY3ktdHJ1bmsKKzMxMTkyIGRmMzYzZDFiMzg0Mjg4NTZmYjRiNTQ5MjM4MmZmM2RkNjljODdhNTkgbGVnYWN5LXRydW5rCiszMTE5MyA2NTJkZjQ1NDk3MDg1NTJhMzA2ZmY3MmJlNzRiYjU4NjY3ZTE3YjcwIGxlZ2FjeS10cnVuaworMzExOTQgZDVlYjEyYmNjZDFlOWY1NTQ1YTBkNDY0MDBkM2I0ZDk4NDQxMTg4NiBsZWdhY3ktdHJ1bmsKKzMxMTk1IDVkNzg4OGZiZWEwMDQ4NGI3NTAwMWM1ZTUzZDg1ZTM0MjJjNDI5YzUgbGVnYWN5LXRydW5rCiszMTE5NiBmNjJlYzI0MDVlOWZjYjU1ZWYxZGRkMjA4YzU0ZjU0OTM5Yjc1ODRhIGxlZ2FjeS10cnVuaworMzExOTcgOGU1ZGU0MzUyOWI3NTczY2ZiNDUwYmU4NDIzYmNiY2U0MTYyMzg5MiBsZWdhY3ktdHJ1bmsKKzMxMTk4IDNlOThkMmUyZDg0N2YxNmM0M2MyMTUzZTA3YzIwYzI2NGQ1MTA3NzIgbGVnYWN5LXRydW5rCiszMTE5OSAyMDMzMGUxMzIxMWVhZGZmZTdiNWI0NjcxNWRiMTcyZmRkNGEyZDU2IGxlZ2FjeS10cnVuaworMzEyMDAgM2IwYjM2Y2RkOWNkOTllNzRhZTA1M2E2M2FmNTZlZjVmYjZhNGY2MyByZWxlYXNlMjItbWFpbnQKKzMxMjAxIGM4OTQzZjg3YzY4Yjk5ZjJmMTY1ZmZiZTIwN2QxNmMxMzhiZjJlMDUgbGVnYWN5LXRydW5rCiszMTIwMiA5NjA4MDNmOWY2OTg5OTRmYTNkMGFhZjQ3MDg5MzY3MWQ3YmI5ZmE0IGxlZ2FjeS10cnVuaworMzEyMDMgY2UzZmFhYjA2ZGU3NTNhNmE5MTQzOTU1N2Y3NzgxMDE4OGIxMDBkNCBsZWdhY3ktdHJ1bmsKKzMxMjA0IDhmODQ0OGZiNThkNmY4OTYwNzUyYTM1Mzk2ZWY3YTY4OWI1N2RkYTggbGVnYWN5LXRydW5rCiszMTIwNSA5NWYzYTFjZDAwZTE2MGQ4NWY0ZTg3Mzg4ZWY3NDNkZWExYTA1ZTI1IGxlZ2FjeS10cnVuaworMzEyMDYgNTE5OWY3ZWE2NzQ2ZjM5ODMzNWE3OTNlOTk4YjkwODY4OTcxZmZlOSBsZWdhY3ktdHJ1bmsKKzMxMjA3IDI2MTkxNWE2YzY4NTJjOTg0ZmJjZjNiNzA3MDNhNjJlMDNhNmQzODQgbGVnYWN5LXRydW5rCiszMTIwOCBkNjk4YzU2MjNkYTA2ZjUxZWM1OTdkZGM3MDBkODM1ZTYyYjI2YmIyIGxlZ2FjeS10cnVuaworMzEyMDkgYjE5YWFhZWI2ZDY0MjAzMTYzYWQ5Y2Y5MGRlNjNmMGJkNGYwMTg1MSBsZWdhY3ktdHJ1bmsKKzMxMjEwIGU1NDU0ZmUxYWFmZDBkY2Y5ZjJlYTY4YmFlZjk2YTNiOGRiZGJkNGEgbGVnYWN5LXRydW5rCiszMTIxMSA3NGFhYmQ0NDE5ZDQwZDY1YmM3ZmZiZWVkNGQ0MzlhMjZhYTY3Y2E0IGxlZ2FjeS10cnVuaworMzEyMTIgZWQxZDRlNzk3MTA5NWJmY2M0YTFlYzkzMTM0MjYzY2FhZWM3NjE0ZiBsZWdhY3ktdHJ1bmsKKzMxMjEzIDk2ZmQwMDRhNThiMGQzMmZlZWFkOGY2MjU5YzA5YjY0OTM0YzNkOWEgbGVnYWN5LXRydW5rCiszMTIxNCA5ZTQ3ZjllZDQ5ZjY0NjIyY2I3ODdmZjE5ZjQ3MjZjZGQyZDQ2YTRmIGxlZ2FjeS10cnVuaworMzEyMTUgMzU5OWY2NTkzZmU5MGMwYzk5YWFkNjgzZjYwOWM0OTBlMWZiM2E1MCBsZWdhY3ktdHJ1bmsKKzMxMjE2IDIwYjgwM2NmMjE5ZDA5ODRmZThhNmE5MTNlM2I1ZjcwNmU2MDZhNGUgbGVnYWN5LXRydW5rCiszMTIxNyA0YzdiMWI3ZDdmMzExMTY3ODY2OTBlMTg3YzZiZDNiMDM0NmZlZDRmIGxlZ2FjeS10cnVuaworMzEyMTggMGVjMzg5Njg4NmU2OTZhNzg5ZjBmZmI5MzMwZDM2MmExZWU0ZGNiYiBsZWdhY3ktdHJ1bmsKKzMxMjE5IDhmMzc4MzVjZjRhNDExYjQyZjAxY2RlYmMyZmZiMzI0ZDA4OTIzNDcgbGVnYWN5LXRydW5rCiszMTIyMCA5YWI5NzFjZDE5NjU3MjRhZjBjYTg4MzM1NmU4NDhhYWVkOTA1NzQxIGxlZ2FjeS10cnVuaworMzEyMjEgNjNkNjM0ZWQ5NDVjYzAxZTg4NzA0ZWVlZDY3ZDI1ZmFmMGIxMmFiNyBsZWdhY3ktdHJ1bmsKKzMxMjIyIGFjNDUzYmIzNzBhMmU5YzcxYmE4ODMwNDlmZTdiYmQ0MTg0NWFmYTQgbGVnYWN5LXRydW5rCiszMTIyMyA3YzRkZGEwYzE0NWYwNDAxYjU1ZTBhMWE2YzQ3MTZkN2ZiOGQxMmNlIGxlZ2FjeS10cnVuaworMzEyMjQgMWEzMDBmNDc1MzMyMDVjMDg2NjVkODQxMDBiNzNhMGE0ZmM2ZDNjZSBsZWdhY3ktdHJ1bmsKKzMxMjI1IGViMjg3ODk0MDkwNTg2MDRlNDdjYmI2ZTFiZDYyZmM3OWQ4YmMxNDIgbGVnYWN5LXRydW5rCiszMTIyNiA0MzE0M2Q0ZGQ2YjFkNTEzYjEyZTg4YWIyY2JhMGExMjkxMjg1ZWMzIGxlZ2FjeS10cnVuaworMzEyMjcgMTg2MTMzNWU3OGFhMTE2YzdkMzk4MDI0ZmQ0Y2Y2MGUzZDc0NDhkNCBsZWdhY3ktdHJ1bmsKKzMxMjI4IDBmY2E2NWEwOWYwNjI4MjhjNWU1OWE4MTY4OTMzOTYxOGJjNzdjZTIgbGVnYWN5LXRydW5rCiszMTIyOSA2MTRhYmJhNWI3NjI0ZmMzNTdmODg1NzY2MDlkYzkyYjEyYjRhOGZiIGxlZ2FjeS10cnVuaworMzEyMzAgMzc5OTlmNjkyNGI0ZTU1MzI4ODJmZWI5ZTBjZGVhYzM2Y2YxZWIzZCBsZWdhY3ktdHJ1bmsKKzMxMjMxIDg0ZjJjNDM4YzNmNTJiYTE4ZWYzMmY5M2Y4YmVmNGFlYjNlNjRhMDggbGVnYWN5LXRydW5rCiszMTIzMiAwNDI4ZDU5MDY5YTk4NDEyN2RmNjdiMmU3OTFmMGE5NjA0OTMzYzU0IGxlZ2FjeS10cnVuaworMzEyMzMgYzhjNzgxNmQzYTJkYTZlMzA5NjQ0Y2JlMDFmNzQzYjU5YmQ5OWU4OCBsZWdhY3ktdHJ1bmsKKzMxMjM0IDBmNjczMWQxMjZkZWIxOGMzN2VkNzY5YWYwNWM0NjM1YTRmOTViNzcgbGVnYWN5LXRydW5rCiszMTIzNSA1MzdiZmNlMmI3MzAzZjFhZjFkNjA4N2E1MTI2YzdjZmE4NmZmNmMwIGxlZ2FjeS10cnVuaworMzEyMzYgZTBmYTUyMDY3ZGJlZmI4MjczZjdiMmI4ZjE5Y2NhZTQzZjYzNjI5MSBsZWdhY3ktdHJ1bmsKKzMxMjM3IGY4N2I2ZDE2YmFlODVhNzlmZmUxNTBhYzE2MmJmZmNkMTM3YjBmNGUgbGVnYWN5LXRydW5rCiszMTIzOCA5YzNjOTkzZTliOWNmMjMzNGFkMjNkZWE3MzNkZjEwOTk4NDBlMTY1IGxlZ2FjeS10cnVuaworMzEyMzkgZTRmZTE2OGUzNWYxNDNmYmNhNTJlZTBjOTQxZTAyZWQ5OWFhNjMyMSBsZWdhY3ktdHJ1bmsKKzMxMjQwIDAwMWNmNzRkYWM1MDFhOWU2NTNkMzM1NzIwYzdiYWIzODdkZWJhZWIgbGVnYWN5LXRydW5rCiszMTI0MSAxNjg1NmM5NTE0ZTA1YTg4NDZkNGRkNjU0NTZlYTk3Y2FhN2U1OGM3IGxlZ2FjeS10cnVuaworMzEyNDIgYWFkZTRiYzEyNWY4ZmYyOTI0ZTRmMzU1OWIxYzY4NDJjMmZlZGE5YiBsZWdhY3ktdHJ1bmsKKzMxMjQzIDc2Mzc2ZTVhZjM4OGQwMTkyZWE5NGJhMGQzNmIzYjdjODJmNDNhZDcgbGVnYWN5LXRydW5rCiszMTI0NCBlM2I1ZjMyMWVlYmIwM2Y0YmVlNTA1MmU4NTExNjZhMmViNjdjMTg2IGxlZ2FjeS10cnVuaworMzEyNDUgNTkzNWI4MjQzZDc0ZTRmZjE4ZGQyNTQ3OWYwYTlhZjQ3NmI3MTAwNSBsZWdhY3ktdHJ1bmsKKzMxMjQ2IDQxMzEzZDIwZDFkZGUyNjhhYmUzOGNmM2VkMzUyMzk3MTE4ZGFlNjEgbGVnYWN5LXRydW5rCiszMTI0NyA1MjJlZGQ1OTFkMmNmMTM3NWJhNDI3NWQwZTM5NTE5OTNmOGUyMjBmIGxlZ2FjeS10cnVuaworMzEyNDggNDc0Y2JiZGYwMGNlN2Q2NDQ3OGU4MDUwOWFlYTcwYTg3M2E1OGI3OCBsZWdhY3ktdHJ1bmsKKzMxMjQ5IDIxMjgzYjZlYTdmMWE2ZGZiNzA4NjVmMmIxZmYxMjZhMDllNDgyMTggbGVnYWN5LXRydW5rCiszMTI1MCAwNDM4NGY0MjkwYmFmNmVmYmM4ZTE5MWRjMmMxOWQyNDJjMDc0MjQ3IGxlZ2FjeS10cnVuaworMzEyNTEgY2FkMTE4NWVlZWY3YzE2OGFlYTFhMjljNTBiNzdkODE3YTkxMWNlOSBsZWdhY3ktdHJ1bmsKKzMxMjUyIDcyNjcyMTRmMDc4NTZiY2U3NDcxODYyYzVmN2YwODBlZjEyMzZiY2IgbGVnYWN5LXRydW5rCiszMTI1MyAzOTgyZjExNzY3OWVmYjgzNjhiOTgyZTYyYjc3Nzk1NjM5ZTgxYjcwIGxlZ2FjeS10cnVuaworMzEyNTQgZjJmMDZiNmVjZGQ3MWJkNzVmNDRhMjRlYzJmOGU5MmMxOTQ0YmJiYyBsZWdhY3ktdHJ1bmsKKzMxMjU1IDVlMzE1MjlmZGQ0ZmFmOTg2MWZkMmYxMzlmNGRhYzU3MDhjMDZlZjcgbGVnYWN5LXRydW5rCiszMTI1NiBkNTAyMTg3YjJiMDZlMDBhN2Y1YjdiM2VhMDZiMTg3NTllNzFjOWFiIGxlZ2FjeS10cnVuaworMzEyNTcgOGQ5MmFmMTQ0YzE2ZWM3ODc3MDM3YWEzOGNhZTQyMTI0NmE3MzdjYiBsZWdhY3ktdHJ1bmsKKzMxMjU4IDAzY2ZjNjM3YzM5MzU4ODJmMjNjODg3ZmYwMzQxZWJjMDE1OGY4OTYgbGVnYWN5LXRydW5rCiszMTI1OSBiNDY2YzVmYjRkOGVhYmNhM2FlZTAzYzNiMDBkZjdjYjA5ZDZjOGRhIGxlZ2FjeS10cnVuaworMzEyNjAgYzFlY2RkZTMyZjg2M2M0OGRjODA0M2M1ZjcxNjMwYTFjMTdjMGNlMCBsZWdhY3ktdHJ1bmsKKzMxMjYxIGZhOWY5ZTU3ZTk4Zjg2MDhjMjRhZWU5MzZlNDM5ZDdhOGM0MGFjZTUgbGVnYWN5LXRydW5rCiszMTI2MiBlNWUyNDJjZjQ2YjFjNGM3N2E1MjcwNDJiYTIwZTQwYzc3YjE5MjRhIGxlZ2FjeS10cnVuaworMzEyNjMgN2IyY2Q4MDBjMjI5NmQ0MmVjYTQyZjRkNTQxYzdjYTYxMjBkMjMxMCBsZWdhY3ktdHJ1bmsKKzMxMjY0IDMyZmI5NGE2YTRmZTliZWNjZTMyZWQ5MTZhMjE5OTUwNWViYWEwMGMgbGVnYWN5LXRydW5rCiszMTI2NSBkYjQxNmJkMThkNGY3OWYyZjhlZjAwMTFjMzUyOGQ2MmFlZWVjODUwIGxlZ2FjeS10cnVuaworMzEyNjYgNDM2N2Y4MDVkYjA5YzNmNjYwNjZjMDI3YjVlOTY4ZTA5ODQwODkzMiBsZWdhY3ktdHJ1bmsKKzMxMjY3IGQ4Yzc2NWMwOWQ4YzFhOGVhNjZiOThjNGUzYTE3NmE3ZTU4YTY1ZjEgbGVnYWN5LXRydW5rCiszMTI2OCBjZTM0MGZiNGI2MTQ5NTEyYjdmZGJiY2VmMjVjMzliYTczZDRhMGMyIGxlZ2FjeS10cnVuaworMzEyNjkgNGI5YjhkZjU0ZGU5YWQ4NTU0MjI0ZWFjZjY0NjdjYTNlODFjNTJhNiBsZWdhY3ktdHJ1bmsKKzMxMjcwIGRmNzQxMjdlMmM5ZmQxNTIxNTg5Mjk0NTJjY2EzODhhYTJiYTg5MGQgbGVnYWN5LXRydW5rCiszMTI3MSA5NTAzNjg1ZmI0ZTg4MDg5MjUyNjFlOGVlNmQ2MjcwMzhhYmZmZmI5IGxlZ2FjeS10cnVuaworMzEyNzIgYjMzMWU1ZTVjYzRhYmYzNTVkZWVlN2RlMDk3NTAwOTM1NDk3MWVmNyBsZWdhY3ktdHJ1bmsKKzMxMjczIGFiZjlhOTEyY2ZjZTljNWJiODBhNzk0ODBmYmYwZWQxYWEyYmI5MmMgbGVnYWN5LXRydW5rCiszMTI3NCBjNDk2MzgzMDVhMjhiMGQyODA2ZjJhNDc0YTkxYmQyZGY5ZjRiYzg3IGxlZ2FjeS10cnVuaworMzEyNzUgODUzNTkyMTcwOTFjYWFjMmJmYjRiYTQyYmFhNzY2MDk2MWQ4MTI3MSByZWxlYXNlMjItbWFpbnQKKzMxMjc2IDk0MWRlNzkxYjE3YWViMzI3ZGYwZDJjM2E2ODY0NGQ1NjVkOGNkMjAgbGVnYWN5LXRydW5rCiszMTI3NyA1OWFlNDFlMDRmZmJlN2ZjN2I4NTY0ZTQwNzg1ZDIyYTI3ZjNlNjQ1IGxlZ2FjeS10cnVuaworMzEyNzggOWY5NDAwOWIxYWUwY2U3OGFlMjRiMTZkMjRhMmZiNmFhN2Q4NzBkOSBsZWdhY3ktdHJ1bmsKKzMxMjc5IDQ3YTY5MTVkMWMzNmI0YjM5NjNmYzkzNDdmZDkzMzZkNjdkM2RmN2MgbGVnYWN5LXRydW5rCiszMTI4MCBjN2NmMWI1ZDQ3MWI3ZTdmM2UyZWZlNDQ0NzBhM2RlMWI1Njk4ZTgzIGxlZ2FjeS10cnVuaworMzEyODEgNzg1MGZhN2ZiNmYxYTE0OWE4OTcxYjMyZmY3NGRkNWQ5MDU4MGUzZCByZWxlYXNlMjItbWFpbnQKKzMxMjgyIDMyOWEwMDc3N2UzMjBjYWU3ZWE4OGEzNDBiZjQ2ODZjNGMxN2IxYzAgcmVsZWFzZTIyLW1haW50CiszMTI4MyA2YjE3ODlhYzJmOTU4MTNlMTI4NTkzNDJlOTkzYmMxOGI2Y2M0ZDA4IGxlZ2FjeS10cnVuaworMzEyODQgOThjMzRjYzFjZjQwMGI2NGU0OGFmMmNiNDQ0OWUyMmZjYzNiYjY5YyBsZWdhY3ktdHJ1bmsKKzMxMjg1IDAzOTU1MTJjZTFiNWFiODljMWM2Njc2NzAwY2QyNDVmMDVmZWQ0MTUgbGVnYWN5LXRydW5rCiszMTI4NiAzOGQwNTA1NjE5NWM5YzE4N2U3ODZkMDdlZDk2ZjBkZGVkN2Q2OTY5IHJlbGVhc2UyMi1tYWludAorMzEyODcgYTRiZGU5MTUxMThjNjA1OTM0ZWNhYjBhYTUwZDNhYWEyNDZlMWM4NSBsZWdhY3ktdHJ1bmsKKzMxMjg4IDU5NDgyMzE3MTY2ZTZhNzczMjQ3M2FmZTIxYzZjOTMxYmFmMWExMTYgbGVnYWN5LXRydW5rCiszMTI4OSBjODE0OGQ3ZjBjOTg2ZTBmMGRlOGY2MmQwOTYwNzEzZTM1N2RjOGI4IHJlbGVhc2UyMi1tYWludAorMzEyOTAgYThhNjQ3ZTE5MjdiNTZlOWQ2NzcyNDZjNWZiZTViZTU0MjNiYzU0YSBsZWdhY3ktdHJ1bmsKKzMxMjkxIGY0Y2RiYTgzYmU1NjAyOGU2NWNmYWM5MzcwZGFhOTNlZmFmY2FkOWYgbGVnYWN5LXRydW5rCiszMTI5MiBmYzg4MTc0YzBjMGFkZGUzNmNhNjM4NjE5NDFhY2I0Y2RmYjIxODZhIGxlZ2FjeS10cnVuaworMzEyOTMgYTAzNmE1MTk3NjEwYzdjOTI5ZDBjOTA0ZjhlMjBjMmQ5ZjM3MzM3OSBsZWdhY3ktdHJ1bmsKKzMxMjk0IDdiNTA0M2MwZmY0NzY4Njc4NjAyZWM5MmYzOWQ2ZjczN2NmOGQ0ZjMgbGVnYWN5LXRydW5rCiszMTI5NSBjNWFkMGEyNDg5YjgyNzVkMGEyZDRkMDM4MzEzYzNkYTNlNWJlNmJhIGxlZ2FjeS10cnVuaworMzEyOTYgODJjYmYxMTc4ZTRmNGYyYTY2MDBmZDQ5ZTI5ZGJlMjlmMGZhY2FjNSBsZWdhY3ktdHJ1bmsKKzMxMjk3IDJkNTViZTNhOGVjMzRlY2IxOTEzMmQ0YmFiZjEwMTYxNGZiYmY3NmQgbGVnYWN5LXRydW5rCiszMTI5OCBkYzVlMWQ5MTgwNTU4MTM0ZDI4NmZiNzQ4ODJkODRlMjE5ZmE2NTE3IGxlZ2FjeS10cnVuaworMzEyOTkgMmMzODlhMDQ0OGE0ZmIwOGM2NDUyNmM3Y2EzYjhlYWQ0Nzc1MmVhMSBsZWdhY3ktdHJ1bmsKKzMxMzAwIDlmNzEzYzdiN2ZkOTEwMGU1NjUzODVjMDYzZmU3MTJmOTYzYjViOTkgbGVnYWN5LXRydW5rCiszMTMwMSAzNTY2Yjg0ZTY2YjllNzU2YjIzMDZhZGU2MjYwMmIxYzAyMzgyMjc4IGxlZ2FjeS10cnVuaworMzEzMDIgMjRlOGM3ZTUyMWY1OThlNWQwZWQ2NzAxYTQ5YzIwNDU4YjExZGYyOCBsZWdhY3ktdHJ1bmsKKzMxMzAzIGJmYzUyNDM3OTMwNzExODQxNjQ1ZWY3MmQwMzhhZTgxYTMxNTQ3OTYgbGVnYWN5LXRydW5rCiszMTMwNCBjMTg0MjI3MTZmZjI2Yjg4MTA1MjcyZTllYTg5Mjg1ZTAxMjIzNmVjIGxlZ2FjeS10cnVuaworMzEzMDUgOGJmZjNkMDk0NGJhNzY5ZmJmMjdiNGNhZWFkZjhiODQxN2ZmZTM4ZiBsZWdhY3ktdHJ1bmsKKzMxMzA2IDVmNjkzMWI4MzUyZTQxZjBlMWJiMzU1YmZiZmE0NzZmYTI0YTk1MzkgbGVnYWN5LXRydW5rCiszMTMwNyAxZGM2MzY2NTQzZDQ4NWU3NjRhZjU5YTUwM2FmMzAxOTg0YzQyZjc0IHJlbGVhc2UyMi1tYWludAorMzEzMDggZmM1YTYwYTYxZTMyZjUzZWRjMDg4ODMyMjA1YjlkZTdhZWQ4MDY1MiBsZWdhY3ktdHJ1bmsKKzMxMzA5IGRkMTEzMDI1M2YxMDNiOTZkNmFiZGZhZGQxZTIyODdlNDM1NjAyYzUgbGVnYWN5LXRydW5rCiszMTMxMCBjYzAxZmI2NTRjZTNmNTVjYjZkZTNlMTk0YzkzOTBkYzU3YmU5ODJkIGxlZ2FjeS10cnVuaworMzEzMTEgOTA0ZjBlNzY5ODIwOTA1ZWJjNzY1YzIwNGE3ZjUyZmIyMzgyMDRlZiBsZWdhY3ktdHJ1bmsKKzMxMzEyIGViY2FlZDc5NDhlODBlMWNjOTdmNmJmNTJhYjBjNWU4N2RmNjBjZDEgbGVnYWN5LXRydW5rCiszMTMxMyAyMTAwMTgyZjc0ZTM4YWM1NWY0MGI0NDMzN2ZmZGY3NzE3MzZjOTllIGxlZ2FjeS10cnVuaworMzEzMTQgYzIwZmVjYjVjYzljNTZlMzdmZTY3Zjg4OTc4ZjkzNTJhMWY3YmNhYyBsZWdhY3ktdHJ1bmsKKzMxMzE1IGYzNDQ0NmZhMjE2ZTVmY2MxMzcyYTQ1YWNmNTkyNjA1ZGI1ZDhmN2MgbGVnYWN5LXRydW5rCiszMTMxNiAwYmRmZDY1YmIxMjI1OTMxMDljOTc2YjEwYTZhMzAyNmE5MTc5YWVmIGxlZ2FjeS10cnVuaworMzEzMTcgMzliMWJhYzg5MzY1ZjgyMGNkMzkzODJmNGI5NzczM2RhODQ0MjMzMSBsZWdhY3ktdHJ1bmsKKzMxMzE4IGYyYjQzMTM2NGY2ZmNiZjBmYTQyMjMyY2QxOTRkZTI0MjgzMDlmZDIgbGVnYWN5LXRydW5rCiszMTMxOSBiNjUwYTU0YTc2ZmRhZGFlYjdlMTUzMWU0ZjJlMmYyOGU2MTQ0YmMzIGxlZ2FjeS10cnVuaworMzEzMjAgOWE2MDU0YzZkNDZmYWI2ZGIzYmZmMmY5OWRhNzhlNjE3NzdhYjEzOCBsZWdhY3ktdHJ1bmsKKzMxMzIxIGI1NmYwMGVjODA4MzEyNzg3YmUyMmUyZjhhYzUwNDczNTU5NDllZTQgbGVnYWN5LXRydW5rCiszMTMyMiBmMDQwOWQ3NTRiOTM3N2VmYmNiOWZlNWRjMTZlODE1NDRlY2EwMzdhIGxlZ2FjeS10cnVuaworMzEzMjMgZDJiMDFjOWRmZjE2ODM1YjllYWY4MTk5YmRmYTBlZmM5YmY4MDkwMiBsZWdhY3ktdHJ1bmsKKzMxMzI0IDIwNDJlMjA1MWQ5Nzg0NzU2Mzc1Nzk5ZTdhNmNkYjNlMTUyYTI4ZDggbGVnYWN5LXRydW5rCiszMTMyNSAwNDAwYmE3OGE4OTc5YTRmODg5ODA5NmVkNDM4YTc2YWIzOTM4MWU2IGxlZ2FjeS10cnVuaworMzEzMjYgNjE5NzNkNWY2ZTI1M2M4OTdiODk3NjEwNTBkNzc1ZGI0Y2IxZTlhZCBsZWdhY3ktdHJ1bmsKKzMxMzI3IGU2MjA5OWM2NWEzYzNjMWUzNDk0MDE3YmUxZWFmMmFiODVmMGIyNjcgbGVnYWN5LXRydW5rCiszMTMyOCBiMDUzOWE0NTA5MTcyNTBjYzZmNWUxZmIyYjVmNjI3NzZlOTc3MmYzIGxlZ2FjeS10cnVuaworMzEzMjkgMzYxMTk3NmNiMTc0YTVmOTUzNDlkYjVhNzZjMTlmZmRkNjM3MjY3MCBsZWdhY3ktdHJ1bmsKKzMxMzMwIDBjN2U4YzNmNjQyZjYxNWE1NzJhNmNhNDQ1NjIxMDhiZDNiZWRiODAgbGVnYWN5LXRydW5rCiszMTMzMSAzNzJlMzQ4M2QzMjc1NDI4MWM2MTc1MGFiMGVjNmZmOTcwMjhkOWVmIGxlZ2FjeS10cnVuaworMzEzMzIgYzdkZjIyNWU0ZTRhNTc1MThkM2YwNjcxMzc5MzBjODAwM2E4MjU2MiBsZWdhY3ktdHJ1bmsKKzMxMzMzIDhkMWIyNzJjOWU3MWMyNDI5NGRiYzc2ZTc3ODM5N2M4OTk5MDY2ZTUgbGVnYWN5LXRydW5rCiszMTMzNCA5ZWM0N2U2NTExN2QzOWRhYTM0MzRmNjliNmI3ZmIwNWQ1ZDgwZTY5IHJlbGVhc2UyMi1tYWludAorMzEzMzUgZTg4NzhjOGY1NGRmNWQ1ZTExYmE3YmQ1MDdkNjNjNzA4MjA2MDQzNiBsZWdhY3ktdHJ1bmsKKzMxMzM2IGI5NWI5YWJiOWJmMzllNTcxZTczNmUzMTZlMDU1Zjg1OWRjYWU5NDQgbGVnYWN5LXRydW5rCiszMTMzNyBkMmU3ZjQ2OGYyMjRlODEyZWQ1M2ZlZjk3ZGViYTI3MTI4NjY0NjUzIGxlZ2FjeS10cnVuaworMzEzMzggOGQ2ZWUxNTg2NmIyMTZkNDFhYjlmMDBiNzYxODJiZThjNDE5MWY4MiBsZWdhY3ktdHJ1bmsKKzMxMzM5IDU2NjNlMGM4MTg2MDJmMTg0MGZiZTUwNTZmYzk0ZDBjMWZmOWQ4YWUgbGVnYWN5LXRydW5rCiszMTM0MCA0MjM5NmE3ODZmNTkzMzJkYzI0ZGQ0NzY1NmJiOTNmYjlkMTFlNmU0IGxlZ2FjeS10cnVuaworMzEzNDEgY2QwNWFmNzAxZTVkNjViYjcwMjFkYmZjYjVlMjVmOWJjYmUwZWUwOCBsZWdhY3ktdHJ1bmsKKzMxMzQyIGY2Yzk1ZjkxMzhhZDM3MmQ5MTI4NjMwNDdiOTliZTFmMjFjYzlkZjcgbGVnYWN5LXRydW5rCiszMTM0MyA0OGRjNGE1OWE1MGVmODZlMWEwMzBkNDM2NTkyZjUzYjgzOWM2MzM5IGxlZ2FjeS10cnVuaworMzEzNDQgY2IxZWVhZWI3NGEwNjYwNzg5M2FlZWU4ZDQ2MzhkNzMwYTU3ZjMwMyBsZWdhY3ktdHJ1bmsKKzMxMzQ1IGZhZmZiMTFmNTRlOGQwYTRmODc5NWM0MjlkNjExMmI1OGQwNDA0ZGUgcmVsZWFzZTIyLW1haW50CiszMTM0NiBiZjA4M2UzNTE4NWY1NDMwY2MxYmU1ZGVlMzI3Yjk2MTQzOTI3ODBiIGxlZ2FjeS10cnVuaworMzEzNDcgNTlmYmFlMzNhMGY5ZDdlNWRlN2IyMGJjMjk1ZWY5MzhmYWM4ZmRlYyBsZWdhY3ktdHJ1bmsKKzMxMzQ4IGVlMTBkN2U3ZjgxOGNjNDNiZmQ3YmM3Y2I0MzQ3YmZjZjUzYjlkZjggbGVnYWN5LXRydW5rCiszMTM0OSBmYmM0NWJlYWYwMzQ0Y2ZkZGNkMzNlNTdjMWE4NjFiNTQzYzk4MTlmIGxlZ2FjeS10cnVuaworMzEzNTAgYjgwNGVlNWJlYjQ5MjM5ZGU4MDMzMmE5MzExZjFiMjZmMTQwM2RkNSBsZWdhY3ktdHJ1bmsKKzMxMzUxIDE5YWMxMmFjODA0MTUzNTNjOGZjMmZkYjBiODNhYjIxMWEwYmNjYzggbGVnYWN5LXRydW5rCiszMTM1MiA2NTFkMTEyM2VkNmUzNzIyYTNhYWZmMDJhOWU5YzI0MDFjOTYxN2QxIGxlZ2FjeS10cnVuaworMzEzNTMgYmRlYWNmN2IxNWM5NjZiYjUxNDE3NWIxODAwNzFhMGY0ZWU5Zjc0YiBsZWdhY3ktdHJ1bmsKKzMxMzU0IDAxMWY3MzQyNThkYjliYmViNDcyMGMxNWM0YWViYjc2ZGMyZjg2MWQgbGVnYWN5LXRydW5rCiszMTM1NSA3ZGZmY2M0OThjNDU4MzFiNmNiYjQzNzA0YTZmZThiOTNlNjhmN2UxIGxlZ2FjeS10cnVuaworMzEzNTYgYzM3N2M1NmVkZmM4ZDM2YjA3N2NkMzUwYjczZWFlYzE3OTY3YjNmNSBsZWdhY3ktdHJ1bmsKKzMxMzU3IDZiYTk0MGNkOTllZjk4MzFjNjIwNWE4NjY3MTY5MjMzYjU2ZTgwNmEgcmVsZWFzZTIyLW1haW50CiszMTM1OCA0YTAyY2E2YmRiNmY0ZjdjY2M5YzdhMjQ3NzM5Y2U5N2RhZTZiMDRkIGxlZ2FjeS10cnVuaworMzEzNTkgYmY5Y2EwODZiOGFhNjI3MDQyYTI3OGRiYTc1NDNiNDliZWNhMDdkOCBsZWdhY3ktdHJ1bmsKKzMxMzYwIDZiNTY5NjU0MWJhNGVmNGE5M2U1ODI4NGY4YjAzNjE5N2M5MGY0NzIgbGVnYWN5LXRydW5rCiszMTM2MSA3ZjE3MWY5ZGI4YWZlNDg0MDVmMDhjNDJhZDAzNTc1YTk5MjMxNWJhIGxlZ2FjeS10cnVuaworMzEzNjIgNTIzZWZkNzczMjYxYTY3MmFhOWZiYmFiZWJmNWM4M2Y2ZTg1MzZhNSBsZWdhY3ktdHJ1bmsKKzMxMzYzIDk0YmQxMWIxMWRmN2Q1ZmRiMDc1MThhYTY5Mjk3N2ExMDk5NTJkZDIgbGVnYWN5LXRydW5rCiszMTM2NCA1ZDJkMjRhNzM4MjU5MmQwMTNmZDlmYTI1NzNhZjA1YmVjZGEyNjgzIGxlZ2FjeS10cnVuaworMzEzNjUgMjIxZWFmNzgxNGY0NGI2MjkwNjBiYjJiZGIxYTMyYmNhNDhlNjAzNCBsZWdhY3ktdHJ1bmsKKzMxMzY2IDEwMjU5MTIyYmY1ZjJkMTM5YWU2Nzc0OTdjOTc1MTk2MGRmMmI5M2MgbGVnYWN5LXRydW5rCiszMTM2NyBiNTE5NzBiYTIxODA2MzMwOTQ1Mjk2MmJkNmFhYzVjNWE5ZGNhMDFjIGxlZ2FjeS10cnVuaworMzEzNjggNTAxNzNlYTFmZDQ0MDcxNmE5MDAyODU2ZDk5MTRkNDc3ZjBkZDc0NiBsZWdhY3ktdHJ1bmsKKzMxMzY5IDE1YjAzMTc0ODExNmMzNjhjNWJkYjMwYzM2N2MxNzBjOWM4ZTI4MDIgbGVnYWN5LXRydW5rCiszMTM3MCAzMTYwZDMwNDE1MjE5NGNlMDg3ZDhjMjEyOTY5ZWI0MDM5MGYyNTkyIGxlZ2FjeS10cnVuaworMzEzNzEgMWMxMjk5YmMzM2Q2MDcyNzZjYjMyNDlmNjQ4MWJmMWNjNDg4OTc2OSBsZWdhY3ktdHJ1bmsKKzMxMzcyIDIzZjZiMGQwMWJjNmFkNDM0Y2I2MDk4ZDllNWRlMzJhNmRjYTZlYWEgbGVnYWN5LXRydW5rCiszMTM3MyBlNGRiZjBmMDA5NWJlODZjZjM1MWY3NGJhMWRkNjRlNzY2OWNhMzJjIGxlZ2FjeS10cnVuaworMzEzNzQgZGFhNDQ5NWNmNjFhYjE0YzQ1ODYzY2FjODJmOTQ2ODIzMGI5ZmYxOSBsZWdhY3ktdHJ1bmsKKzMxMzc1IGU5ZDcxMDJmODI3ODBmZmJlMDIyOTRhMWM0ODk2MmIxYzYxOWE4MTAgbGVnYWN5LXRydW5rCiszMTM3NiBlMGRhNDU3N2FhYTYyNDE1OTY3YjU2ZDI0ODM4NGE4YzM2ZmVlNmU1IGxlZ2FjeS10cnVuaworMzEzNzcgY2IyYzNmYmJhNzJlZTc2YmZlZTE2YzUwNWNkYzliYjhmNzllNjgxZCBsZWdhY3ktdHJ1bmsKKzMxMzc4IDNlYjAzNzZlOTNlODQyMDY1MGI0MzMwY2I0MzRkZTk1ZjFkMmIyYzkgcmVsZWFzZTIyLW1haW50CiszMTM3OSBjNWRkMDc3ZGUwZmM2NDZhN2UxN2RkMzI3MTkzMjk4Njk3YTIzMjRmIGxlZ2FjeS10cnVuaworMzEzODAgN2EyMGJiZGJmZjM2ODJmN2Y2NjUzZDViOTcwMjc1MTM4NTQxOTMyNSBsZWdhY3ktdHJ1bmsKKzMxMzgxIDRiNzVhMGI3Njg1NzE5YmY4YjNlMTMyNDRmOTdkYTU5YzkwMjZmODEgbGVnYWN5LXRydW5rCiszMTM4MiA1NjIwYjA3ODYyNzExOWI2OWI2ZDAzNGY4NzVjNTJmOTVlYzMyY2QyIGxlZ2FjeS10cnVuaworMzEzODMgODFhZmNhNzQ3Y2FhNWMxODZlZDAxODc5ZTYyMDc5YjgyMzVmOTY5MiBsZWdhY3ktdHJ1bmsKKzMxMzg0IDAxNjBmZmNiMTllMzM3YmYxM2I4MjljNTI3MTFiZWZkMmFkMzJmZWMgbGVnYWN5LXRydW5rCiszMTM4NSBjZDEwZmE3MjFhNTEyYWM4YjM4MmUwYjdlM2MzMzc3NGU2YjQwZTQ0IGxlZ2FjeS10cnVuaworMzEzODYgYTg3ODA0NzlkNGUwOTc3YzIyOGViN2Y4Yzc4MjY5NTY5ZThlZWFkZiBsZWdhY3ktdHJ1bmsKKzMxMzg3IDk0NTNkOGNkZDAxZThmN2MwOGI1MDUzNmFjYjA4OWZjYjZkM2YxODIgbGVnYWN5LXRydW5rCiszMTM4OCBlN2NkMDg2MWMyNzNiNTYyNjRjYjdjYTI1ZTdlY2MzZDYzMmNkYzRlIGxlZ2FjeS10cnVuaworMzEzODkgMzg3NDYzMzdhZTZlMDhlMTUzODZjNTQ2MzJmZjliMzgzNmVhM2QyMCBsZWdhY3ktdHJ1bmsKKzMxMzkwIGY4NDQwYmI4ZWRlNWQxOWY0OWZjMmY2ZmVhYzVlYWZmOTIzYjc4MmQgbGVnYWN5LXRydW5rCiszMTM5MSA4M2JiNmM5ZGQ3OGMwYzYzYmM1MTFkOTQwOTA2ZGFlYTEzZjlmNTA1IGxlZ2FjeS10cnVuaworMzEzOTIgZDE5NjYxZTE5OGY3NDcyYjYwMzYwZWRlYjQ1ZmU4YmU3Mzc5MmUzZCBsZWdhY3ktdHJ1bmsKKzMxMzkzIGI0ZWIzNDM3MmJkYjVlNzEyYzdiNjQ4ZjAzOGNhZDIwZmVkNmI3NGEgbGVnYWN5LXRydW5rCiszMTM5NCA2NTQ5NDQ2OWFkM2VlZmRlMjRkYmM2MmNmZDIyMmI3NWY2NTc0NTY5IGxlZ2FjeS10cnVuaworMzEzOTUgYmJiYmEwZWU2MWZiNmYyZjYwODQ2NjM4NGFhOWJhZTgzOTlmZDZjMCBsZWdhY3ktdHJ1bmsKKzMxMzk2IGU2Y2Y5NTU3ZGU0MmE4OTljOWY5YWI1NDc2ZGYzNzMyZmMwZGU4OWEgcmVsZWFzZTIyLW1haW50CiszMTM5NyBhNTIxMzdiODhlYjNjZjY0ZDliNjVmZDEwY2I1Y2NkOWMzZTdhYTU1IGxlZ2FjeS10cnVuaworMzEzOTggODcwY2YxNGFkZDJhZGJjNzA2YTQ5ZDQ3YjM1N2FlZmUwZDlhN2ZjZiBsZWdhY3ktdHJ1bmsKKzMxMzk5IGE5Yzk2YmI0Njk1M2JkZThiMTRkN2QzMjhjNTYyZWQ5MGE5MGVjOTAgbGVnYWN5LXRydW5rCiszMTQwMCAxMDBmYjY4NGNmM2U1ZjUzNDNjYTBiMDRiNjQxY2NmNTMwZWU2ZTJmIGxlZ2FjeS10cnVuaworMzE0MDEgMTFlNjEyM2RlNmZlZDZmZjkwNjVmYWVkOWI3MGE0ODlhY2ZmZmFhMiBsZWdhY3ktdHJ1bmsKKzMxNDAyIDg4YTQyYTdjMjM4YTY0ZTc5MDI1ZWNjZGY0ZTU4YTE4MThlYzQ3YWUgbGVnYWN5LXRydW5rCiszMTQwMyA2YWY3ODBlMDg2MmQwMDljNjgwYWUwODk0MDQ1ZDY5OWM1OTEzMjA3IGxlZ2FjeS10cnVuaworMzE0MDQgYWJkZWViODE4YTlhMDdjNDEzNTYwZTE1MzljNDYzOGY2YjliM2JhYyBsZWdhY3ktdHJ1bmsKKzMxNDA1IDg3ODllOTgyMmFhNGM5NzFkZjFmOGVhYzYzYTEyN2Y0MzYxMTlhY2YgbGVnYWN5LXRydW5rCiszMTQwNiA4YTZjNDU5MTBlYzkwOGQ1NzgzNjQ5NmJkMTNhN2M4OGU4ZTdjY2U2IHJlbGVhc2UyMS1tYWludAorMzE0MDcgYmU3NjgzYTZmNTIxYzVhNmQwMjgzYzVmNzRmMTM2NDU3YTJlYjRhMSBsZWdhY3ktdHJ1bmsKKzMxNDA4IDg4NGZiNTU4ZjJiOTFkMGJkMDIxNjdmYTNhYWRiNjZjYWNjODc3MGUgbGVnYWN5LXRydW5rCiszMTQwOSA1ZmVkMTE0MmZkMzRiOTA2NmE0NmYxMzc3OTkxNjc4MTQxZjRiOWJjIGxlZ2FjeS10cnVuaworMzE0MTAgMTQ4ZDhjMGI5NjQ3MjMzOWE1YjI4NzkxYWY0OGRlYzg2YjgyMzA2MSBsZWdhY3ktdHJ1bmsKKzMxNDExIDQ2NjU5Njc1ZDdmNzkyMDljZmRlNDYwZjU1YWE5MTIyZWMwMmM1YWQgbGVnYWN5LXRydW5rCiszMTQxMiA1MjBhOGMwYzlhMjVlYzhiNzFkMzdhNDVjZDA5MDJmZDY2NDFlZjYxIGxlZ2FjeS10cnVuaworMzE0MTMgMjA5NGUxOTlmZDU1NjMxZjBjNjJmMTAwN2M1MTg2NDM0ZTUyM2Q5ZSBsZWdhY3ktdHJ1bmsKKzMxNDE0IGVhY2Y5Nzc1OTAzOGMzNTkyZDgwY2U4Y2RiMDMzNDBmYTU2NjdlYzIgbGVnYWN5LXRydW5rCiszMTQxNSAyMDZjNWUzYjViZTc1YjE5Y2VlY2ZmZWRhNjliZmQyZDliYjQxY2UyIGxlZ2FjeS10cnVuaworMzE0MTYgY2VkZjllZmE2OGY4MTRmMzhhMzEyNzk1NWEzNzI5ZDMwOTU0MTQ3MyBsZWdhY3ktdHJ1bmsKKzMxNDE3IDMxZTg1ODFiY2YyNTkzNzhlOTVhZjI2ODlmNDA1MmU3NDk4Y2M4MjcgbGVnYWN5LXRydW5rCiszMTQxOCA1N2QwYmFkNzNjOGU1YTI0YmNmMTU0MWVhMGYyNjBiMjJlMWYwNDI0IHJlbGVhc2UyMi1tYWludAorMzE0MTkgZTdkNTlkYjY4MzlhNzE5YWE1Zjc0YWViNDlhZDlmZTQyMDJjODRjZCBsZWdhY3ktdHJ1bmsKKzMxNDIwIDVhZWUxYzI3MjkzOGQ1MDUwM2IwODRlYzRkMzgyZWQ1MzMwNGI4YzEgcmVsZWFzZTIyLW1haW50CiszMTQyMSBkOGIwNjAxMmIzODE1ZjJhOWNmMGI0ZTg3NzQwNGQ5ZGU4OWJmNDA1IGxlZ2FjeS10cnVuaworMzE0MjIgYTc1OTA1N2VjZjFiMzIwNTcwNTA4YzZmOTliYTdlNWU5MWJmY2JiNyBsZWdhY3ktdHJ1bmsKKzMxNDIzIDY2ZmEyNDc3N2YwYWVmZDhjNGQ3OGNlOTA0M2EzZWNiMTFiYjVkODAgbGVnYWN5LXRydW5rCiszMTQyNCA3NDI4YzEyZjUwM2Y2ZDk2OWNmZDFjMjhiMzllMzk4ZDE0M2YyYTM2IGxlZ2FjeS10cnVuaworMzE0MjUgNGUzMWU0MDg2ODQ5OGE4YmFiOWM0YThlODE1ZTg5MzhjOGU5NzhkMyBsZWdhY3ktdHJ1bmsKKzMxNDI2IGNmMWVmY2E4MmIxODM3ZmIwYzNiNTk3ODAxZTNjY2UwMDNmNTJmZDQgbGVnYWN5LXRydW5rCiszMTQyNyBjMTYzZjk1YjMwMGM2NDlmOTA1NzE4YWFiODY4OTZjYTdjYTY2NWQ0IGxlZ2FjeS10cnVuaworMzE0MjggZDBmNGYzY2Q0ZmU0MWM4NTc1MmVhOWYwMjg1OTg3NGFiM2Y0NTFlMCBsZWdhY3ktdHJ1bmsKKzMxNDI5IDE5N2Q2NGRjMDRkYzI0NmY0ODcwYTQ4NGZmNDE5NzUxYTI3NWNmYzcgbGVnYWN5LXRydW5rCiszMTQzMCA1NWFkZjA4YTIxM2EyZDg0NjFmMTdmN2EyYmZiZGMxMTYzNzc1MjI4IGxlZ2FjeS10cnVuaworMzE0MzEgODFiMmJjYmZlMzliYjYwMDgzYmRkODdmMTg0OTIxOTZjZWEyNTE1ZSBsZWdhY3ktdHJ1bmsKKzMxNDMyIGU1ODIwYTE1MGQ4N2ZlODQzNGVjODBlZGQ0MGI4MzRmYzQ3MDVmZGMgbGVnYWN5LXRydW5rCiszMTQzMyA5YmRhY2NkOGE5MDhjMjMwMjE1MDA2MDIyYzk2ODk0MzcyM2Q4M2YxIGxlZ2FjeS10cnVuaworMzE0MzQgMjMzZWQ2Y2M4ZTE0YTcyNGVjNmY5N2M3YzhlOWQ3OGUzMDE1YWRhOCBsZWdhY3ktdHJ1bmsKKzMxNDM1IGE2ODJjZWM2Yjg4MGE0OTc0NzkxY2QwMGZlMGYxMmE2ZmE3MWQ3NDMgbGVnYWN5LXRydW5rCiszMTQzNiAzZTE2OWQyOTQzOTViODFkNGE4MDhmMDczMGVmOTZmMjU5MzIzMmM2IGxlZ2FjeS10cnVuaworMzE0MzcgMTc0NzQ5ZjViMzJmYWExODYzM2I2NjQ3ODgyZGUzZDJkY2Q3NGFjNSBhc3QtYnJhbmNoCiszMTQzOCA0N2I4Y2FiYWI3YjEwM2ZlY2I1OTRkOGNjN2QzYmY5N2EzZTkyMTMzIGxlZ2FjeS10cnVuaworMzE0MzkgOWI0MjMyMGYxZTBmYjA0ODc5YWMwZmM1Njg2ODg2ZjNiOGUzMDgzZCBsZWdhY3ktdHJ1bmsKKzMxNDQwIGIwZGNhOTJjMjk5YTVlOTYzZTRhMWViMzBiYTRkNTJjYjA5NmNlM2QgbGVnYWN5LXRydW5rCiszMTQ0MSA5NWI3NTA0NDZiYjk5ZDRhZDFhMDNmYzMxMTMxMjAxZGZjMmZmMDJmIGxlZ2FjeS10cnVuaworMzE0NDIgYzVlYmFjYmJhMGJlYzA1OTMxYTg3NjdhODZlZjNiOTIyMGYzOWI1ZSBsZWdhY3ktdHJ1bmsKKzMxNDQzIGNkYjFhYmMxYjQwOTI5YjgwMWExOTA0OTJiZGZhYzY4YzJmNTZlZjMgbGVnYWN5LXRydW5rCiszMTQ0NCBjN2Q3ZjM1MGU5NmM0NWE5NjhhNWY0YTg3MDk5MWI1ODQ3NzVmN2E2IGxlZ2FjeS10cnVuaworMzE0NDUgYTZkZmFiZjNiOTJiZDdhMzU1ZTg1YTEwNzA4MGYyMDY4N2FjOThmMCBsZWdhY3ktdHJ1bmsKKzMxNDQ2IDkzZDQ0ODcwZThiNThhMWVjZDEyM2Q2YWE5YmQ5Yzk0Y2U5MThkMjAgbGVnYWN5LXRydW5rCiszMTQ0NyBjMzQ2ZDA5NTc5MWQ3ODg4NTdkNjBmNGE1ZDgxOWYwZjI5NGYzMmE5IGxlZ2FjeS10cnVuaworMzE0NDggYmUzNzFmZmM0Y2QwN2ExYWU1MTEzYTdlYzU1MDVkOGZiOWRiMGU5NiBsZWdhY3ktdHJ1bmsKKzMxNDQ5IDRiNWMyZTAyNWM1ZWY1Zjg5MmRmN2VkOGRiYjRhNDMyYWY0NDdiNTkgbGVnYWN5LXRydW5rCiszMTQ1MCA4ZTc0MzJjZGY3ZDhmYzY1NGFjYmM5YTQxNjBmODExNjA3NjE1MTcwIGxlZ2FjeS10cnVuaworMzE0NTEgMjc1OWIwNDhkYTliNmY0MDlkYzE5YzA0M2MzZmQ4NDNiYjU5MDM1NCByZWxlYXNlMjItbWFpbnQKKzMxNDUyIGVmYzQ2NTgxMGUxZWRhYzlmZjExYWE4MjljOWUyYmMyZTU4MzA5OWUgbGVnYWN5LXRydW5rCiszMTQ1MyBlYzEwNTJlZjczYmE4OWM0NzNhNDdhZDMyOTM2YjlmYzA0YWQ3YmQyIGxlZ2FjeS10cnVuaworMzE0NTQgMzAxOGYzMWY2ODMwOTIzYjkwOGNmY2NlZjE4NTM2NjY1NWMzNTVlMyBsZWdhY3ktdHJ1bmsKKzMxNDU1IDJjNGFiMWRhNmViNDdlYTE4Y2E2NGY2ZGI4ODE2MjcxMWFjOTkwZjAgbGVnYWN5LXRydW5rCiszMTQ1NiBiZWRhY2E5ODUzZjkwNGNiM2I5YjQ4MTM3OGZkNDZjYzkzNGI0MGJkIGxlZ2FjeS10cnVuaworMzE0NTcgODRkMzA5YjY3NmZhN2I3NzEyOGI0OWEyY2EwMDNkMWUxZDIwMjc0NSBsZWdhY3ktdHJ1bmsKKzMxNDU4IGUzMWIzOTkzMGEzMTI4MzRlY2RiYzg3MzVmZDUwNDJmNzFmZDZiNGEgbGVnYWN5LXRydW5rCiszMTQ1OSAzZGEzMTc3OGVjZDcyNGY4YTE0MGZlNzc0NmQ0NDNkMWY1YTNhMjIyIGxlZ2FjeS10cnVuaworMzE0NjAgODUwYzBkYTEwMWI2M2ViYmViYzQ2YTJjZTg3NGQ0ZTg3MWVlM2ZiYiBsZWdhY3ktdHJ1bmsKKzMxNDYxIDJkNTAwNDliZDIxZGY3Y2FhMTFlYzJiMWQ1MDUzOWQ3OTk2ZTljY2MgbGVnYWN5LXRydW5rCiszMTQ2MiA3MGUyOWVmOWZhNjJmMDFkNGYzYjNmNzkyZTc1YzQwZWI1Nzk5YjE3IGFzdC1icmFuY2gKKzMxNDYzIGFjNjgzYWM2NzU5YWZjZmY1NDM4NGE0NzE3OTJjZmEwMzA3M2YwYTEgbGVnYWN5LXRydW5rCiszMTQ2NCA0NGYzZTMxNTkyOWI5ZTRkOWZkZjMzZGY5YWE5ZmMzN2QyMmRmYWQyIGxlZ2FjeS10cnVuaworMzE0NjUgZjY3YWI2YjY2NDU0MGI0MmQ3MGFhZDBmNGZlYTE3MDFiZmFkMjYwZCBsZWdhY3ktdHJ1bmsKKzMxNDY2IDg2YjUwNmRiZWExODAzMmZmMWNjMTBlNThjZjgwYTUwODg1MDRiY2EgbGVnYWN5LXRydW5rCiszMTQ2NyAxYWZhZmVkOWZhNzc1NWJjMzg2NTQzZGU3MDhlZjgyOTdkZjMzYTFhIGxlZ2FjeS10cnVuaworMzE0NjggOGMyMTFjY2RlMmI0YjRkOGM1NWJlMzY0YTRmNjBhZmQ3ZmE5NzIyZCBsZWdhY3ktdHJ1bmsKKzMxNDY5IGM5NDAxYTM2YmFlNzE0ZjBjZDVmMTQxY2QxN2Y0NjczMjZlYTU4N2UgbGVnYWN5LXRydW5rCiszMTQ3MCA4YzZjNzk3NzI3YTkzNWZiMDU3OTUzMWNlYzM5MGRmZjVjOTVhYTliIGxlZ2FjeS10cnVuaworMzE0NzEgMWJkNDg1NzE3NTY0NjI2MGI5YTQ1MTdhNzcyNjEwMTZiMDQzNThlMCBsZWdhY3ktdHJ1bmsKKzMxNDcyIDE0NDUxZGQzYWNiMDRkMWFkZDgxMWFjMTZkNGMwNjZiZGFmMmNmZjYgbGVnYWN5LXRydW5rCiszMTQ3MyA5MjU1ZmJkZTQzZjM2MmQxYzA0ZjM0ZGU0NjNlYjdhNzJmMGYxMDk0IGxlZ2FjeS10cnVuaworMzE0NzQgM2IzMGY2NjM2MmJlMDA1ODc5NDRhZTk2OWM2OTJiMGZhYzFlMjY1NCBsZWdhY3ktdHJ1bmsKKzMxNDc1IGE2OTYyZjUyZjIzOTgxYTRjMTg5Yzk0M2IzOGY4NDBiOThhMDE3OGUgbGVnYWN5LXRydW5rCiszMTQ3NiBiNTU2MGFlNGQ5NzFkZTA1NTMzMmViNzRjZjBmY2UwYjZmOTE0ZDhlIGxlZ2FjeS10cnVuaworMzE0NzcgZGFlNzlkNzgzMjA1Nzk2MDZjNWZkY2MzYjIzYzI1OWE0YzVjMjI3NiBsZWdhY3ktdHJ1bmsKKzMxNDc4IDBmMDE4ZGY5NzRkYmI5YzgxMTM5ODg1ZmYxZTAxNWM1YmNkYmE3NjggbGVnYWN5LXRydW5rCiszMTQ3OSBkYjFkNDU4NGE1ZTFjMTE1Y2IwODJhMjVmYzkxN2NlNDg2N2Q3OTU3IGxlZ2FjeS10cnVuaworMzE0ODAgYjRlZWIwYmJkZDQ4YjhjYjQ1YjdkMTQzZjFkMjdjN2RlM2ZhYTczYSBsZWdhY3ktdHJ1bmsKKzMxNDgxIDQ3YTc2NGU0M2U5MDE4NTNiZmU4ZjM0NjA0NmIzYTU4YmRlMGRlZTggbGVnYWN5LXRydW5rCiszMTQ4MiBiNTQwZTYwOGJiOGE2YmNiMTg0NjBjZTYxNWQ2NjQ3NmFmN2ExMjI0IGxlZ2FjeS10cnVuaworMzE0ODMgYWE4OGFlZjNhYjBlZWE4NDAzNzMzMWNhZDhiNzI2NzM3YmVhOGQ0MCBsZWdhY3ktdHJ1bmsKKzMxNDg0IDFlNzZhZTNjMTE1NGQ2ZWYxYWZiY2EyNjg3MmExYjMwZWY2OTgxYTUgbGVnYWN5LXRydW5rCiszMTQ4NSBmMzEwODk0MTA3Y2IxOTUzYTFiZDVhNzc5YmVlNmRiNTI3YmZhOTZiIGxlZ2FjeS10cnVuaworMzE0ODYgZjMzMTBkY2VmM2Y4YjVlMDg5ZjY3YzQzZmE3NDcxZTcwMmJhZGIxNiBsZWdhY3ktdHJ1bmsKKzMxNDg3IDcwZTE5NmFmNDc2ZDQ4ZWVjMzUxZmY2MTBiMDM1ZjJiOTBmOTQ1OWQgbGVnYWN5LXRydW5rCiszMTQ4OCA5MWZjOTYzN2U1NmEwOWMyMDMwZDU1MWNmZmVlZjAzNjIxMTAxMGJlIGxlZ2FjeS10cnVuaworMzE0ODkgZTA3YjIxZWEzYzQ1ZGRmNDQ5MzBlZmU5MWEwODE2MjhkNzM2MDFkNCBsZWdhY3ktdHJ1bmsKKzMxNDkwIGNjNGFkOWFmYTIxZDMzODgwZWUyZDIyMzJjY2VmNWJiMTZlZDRiNWMgbGVnYWN5LXRydW5rCiszMTQ5MSBjYjNmMTg5MDhjZWJlZTA1YjljOTE4NDIwMGY5MGVlNTY0MWE1ZjEwIGxlZ2FjeS10cnVuaworMzE0OTIgYWMxMDcyOWYwOTMyZDA5YWI5NzhiOTNkMzM3ODAxZmVlZDUzMGNhNyBsZWdhY3ktdHJ1bmsKKzMxNDkzIGUyNzM0MmE2NDE3MzdmN2UwMDQ2ODE3ZjFlNzJkYzk0YWQwYmY5OGMgbGVnYWN5LXRydW5rCiszMTQ5NCAyMjY0NjM0NDU2OTcyMDNhMjc1MDM1YmQwNmIzMjk2ZThjYzA4ODZlIGxlZ2FjeS10cnVuaworMzE0OTUgM2JhYWJkMDI3Y2M0ZDQxMjBlOGUxMjcwYjc1MDAzMmZlNjMzYTc4ZSBsZWdhY3ktdHJ1bmsKKzMxNDk2IDhkY2M1MjBkM2EyOTY3YTJiYmM1NjE2MWY2YjJjNmQyNWM4ZGNhOTEgbGVnYWN5LXRydW5rCiszMTQ5NyBiMjhkNGZkZTllOWZiOGYzYzhiOTBjZTkzZDg4NzkzNTRiZjJlMGM4IGxlZ2FjeS10cnVuaworMzE0OTggNDMzN2E4OTlmZDEzMjQ3ZjMyNDIxZTQxMzkxMmI1NmQxYTVlM2MyZiByZWxlYXNlMjItbWFpbnQKKzMxNDk5IDQ3Yzk0MjEzNThkZDA0N2QyOWMzMzIwNzUzOGIwYzg2NjUxZjE0NWEgcmVsZWFzZTIyLW1haW50CiszMTUwMCA0Yzg1ZGUyNDdlZWRiOTdmNDRjOTQ5ZmY4ZDM4NmM2NGUyMGVjMGFjIGxlZ2FjeS10cnVuaworMzE1MDEgZTBhOGMzMTE1MDA1ZTFjMzM5ZTkzNmE2OTAwYTI3YWNkNzVkZTNlYiBsZWdhY3ktdHJ1bmsKKzMxNTAyIDJlMGFhNjhkNDM0ZmNjNDA2YWRhOWZmNWEzOThhNzg2NTJhZGIwYTggbGVnYWN5LXRydW5rCiszMTUwMyA1M2M4MDI5MjcyMDJlODQyNzUzODQ0NmE0NTc5MzFlZTUzZDUwMjQwIGxlZ2FjeS10cnVuaworMzE1MDQgOGZjOTFmNTBiODYxNTA2NWQ2ZmNjZWU4ZmU4MzE4ZGZiN2Q4OTkzOCBsZWdhY3ktdHJ1bmsKKzMxNTA1IGQwZDI5ZGYyYjYzOTAwNTNkNWIzZGI0OTU5OTcwMzUyNTI0ZWE1YWUgbGVnYWN5LXRydW5rCiszMTUwNiBjYzk1YmI3ODcwZGM1NDdjMGNjOGU4MzVmZDc0MThlNjdmNzkxYTM1IGxlZ2FjeS10cnVuaworMzE1MDcgZDVlYTJiNjdiNWY0NDNmM2M2NTc1ZmNiZGZjOGE2MDI3NDc0ZWJhMSBsZWdhY3ktdHJ1bmsKKzMxNTA4IDBmZTMyMWU3OGFkMzFhMWJhYWJkOTY1ZDU1NzkxNjE3Mjg3YTYzNDAgbGVnYWN5LXRydW5rCiszMTUwOSA0Yjk5YTcwMWRlZmUwZWI3MGI2MzE5ODgxMGE3NjA0MjUxYmNiMGM0IGxlZ2FjeS10cnVuaworMzE1MTAgOTYzMjdlYzc2ZDllMDJiODQzMTE1OGQyNDYxYzE4Y2MzZTRmZDhhZiBsZWdhY3ktdHJ1bmsKKzMxNTExIGUwMWQ1ZGJiNjZhNDU5MDExZTE0Y2ZjODJiNDcwMzBjMzkyNzYwOWUgbGVnYWN5LXRydW5rCiszMTUxMiBlYjJhOTg0ZDM3NDczZWNkZTczNWQyNWJiZTk2NjhhYjYzMjRhMWJhIGxlZ2FjeS10cnVuaworMzE1MTMgMzg3YTQxMjJjYmQxZTY2YzJkYmNjNWNlNTMxOWViNmUzYjZiYzI0YyBsZWdhY3ktdHJ1bmsKKzMxNTE0IDllMGYyMjQyMjc3YmZjMWZjNDAyZjE0NjAyYjRhNjc3YWRmMTEwYWUgcjIzYTItYnJhbmNoCiszMTUxNiBjZWY3Yzk1ZTc0OGMxY2M2OGU5NGI5YWNiMzI1NDlkZmE5MzkyZmNhIHIyM2EyLWJyYW5jaAorMzE1MTcgNzY1MDE5NzU4ZTk1MTAyYTJiYWExY2IyMmEwMmJjNGQ4OWI5OTE2NCByMjNhMi1icmFuY2gKKzMxNTE3IDcyMWI2ZjE4MWZjYjlhOTQyMGJjYTg4ZDdjMGY1Zjg1NDc0ODIzYzEgcjIzYTItYnJhbmNoCiszMTUxOSBjNGI5MTlmYTBiZTNlYjk0ZjczYzc0OGI2OGRhYTViZGRmOTZmNTlmIGxlZ2FjeS10cnVuaworMzE1MjAgNDgwOWZiMGU4NjYwMTg4NGY4ZjNlMGNjNzU4NmM4NGJkNTdlMGJkMiBsZWdhY3ktdHJ1bmsKKzMxNTIxIGY1OTg3MDk3NjE0Njg2MGJhYmM1ZDM2NDg2NWU2ZDdkY2ZiZjE0NDggbGVnYWN5LXRydW5rCiszMTUyMiA2NTg2MDIxMjRkZjUyODIzYTY1OTJhNmQ2NThkYWVmNTA2YTFhYjdlIGxlZ2FjeS10cnVuaworMzE1MjMgMmM3NTE5MzZmNjk3NjdhN2FmNDM0OWQxZGNmZjcyNTNkYWU5ZWU3ZiBsZWdhY3ktdHJ1bmsKKzMxNTI0IGIyNmY1NzU4NDE0YTBmMTM1MDhmMGJhNDlhZWIzZTcyOWI1NzMyOTAgbGVnYWN5LXRydW5rCiszMTUyNSBlN2IyNmMzZjM1NmY1N2QzNTljNTUwOTNmNjkyZjhhNDY3NzQyNjFlIGxlZ2FjeS10cnVuaworMzE1MjYgMGIzZGIwZWRiMTUxZWMwMDdmY2QzZmI1MjRiZmQ3NjRjZjQ4MjI2YSBsZWdhY3ktdHJ1bmsKKzMxNTI3IDUzNjdjZDBlZWM0NzdjNzU5MGEzMGQyMGVlMTY5YWU0MDNmOTc3YWQgbGVnYWN5LXRydW5rCiszMTUyOCA0NDg5OTE4YTRjY2RiOTAzNjAyNGNjODNiMjc2YjhhOTk5YjA1YzhlIGxlZ2FjeS10cnVuaworMzE1MjkgYmVlYTRmMjFjOWYwNTdjM2IxMzlmZjk2ODBmNTgxNjI2MWIwZTgzOCBsZWdhY3ktdHJ1bmsKKzMxNTMwIGUyNjdlZDEwMGQ4NWZjYWFjOTU2YzA5MDI5OGYxMWI4MTMxOWM3M2IgbGVnYWN5LXRydW5rCiszMTUzMSBlMTFhMTc4YmI0NTNmYTQ0NzZkMTRhNWRkYjE2NjY2NDFkYzdjZDc0IGxlZ2FjeS10cnVuaworMzE1MzIgMTA3ZDk4ODkwMWEwZjkzYzQ2OGFjOTEwNTA3NjYwMTAxMjI4NzAzYyBsZWdhY3ktdHJ1bmsKKzMxNTMzIDllMzhmODE3MDkyZmVmMDkyYWRmN2FjNDczNGRhNmMwNzExOGZkNjkgbGVnYWN5LXRydW5rCiszMTUzNCBlMjdmNThhNTA3MzcwNDgyOWM3ZDliMTI3YTc5YTUzYTdhMjI5YjZkIGxlZ2FjeS10cnVuaworMzE1MzUgOGY3MDYwMmZiZWJiM2MzY2UxNzcxYTA0ZjkwZDAyMDQ2Mzg2OWMwYyBsZWdhY3ktdHJ1bmsKKzMxNTM2IDFkOTJjMTViZDBlNzI1ODkxMzdkY2Q2NGRlMDRiNDkzODlmNjFlNjkgcmVsZWFzZTIyLW1haW50CiszMTUzNyA3MzllY2ZiNWYxNWU4ODljMGZmMTE4YzhlMmVhMDRiMTg0ZjMyOTUyIHJlbGVhc2UyMi1tYWludAorMzE1MzggNzdiZWY2YWE0OGU1NWZiMGQ4NmE4YjE4ZDQzMzYyMjIwMzFhY2EzZiByZWxlYXNlMjItbWFpbnQKKzMxNTM5IDE2YjI1MDMyMjE3ZmY1MTAxMzZhOWNmZmJjNzI5MWMzMmRiNWNkNDIgbGVnYWN5LXRydW5rCiszMTU0MCBkOTJkOWI2YThhN2QzYzI2ODdiYjUxZWYwMjdiNGI1Yzk5NWE0MDdkIHJlbGVhc2UyMi1tYWludAorMzE1NDEgZWI1ZTI5NjE3MzEwOWQwY2NmMDk4ZmZhYjlmMTViNTA2OWRhZTU1NiByZWxlYXNlMjItbWFpbnQKKzMxNTQyIDVjZjA5MjFmNGI5NjI2MjVlOWRhZTJmMWExY2FmYzk1Y2M0YjU1NWEgcmVsZWFzZTIyLW1haW50CiszMTU0MyAyZGY5MjA0OWQ5MjUwMTdiYmI4NjAxNTJhY2Y3YWI3Njg0NGM2YjE2IHJlbGVhc2UyMi1tYWludAorMzE1NDQgYTRmOWQ5MWEzMjFhNzlkZjQ4Yjc1Nzk1NWQyNmQyMTQzMGY2YWEyZCByZWxlYXNlMjItbWFpbnQKKzMxNTQ1IGZlMTBlY2U4YmE2OGM0YWVmYTQ4ZDEzMzczNTc2MDdlM2FmOWUxN2QgbGVnYWN5LXRydW5rCiszMTU0NiA3YWEyMTYzODg5YWNmODdmMDY1NDkxYWRhODE1MDM5NDNlNWUyYTQ5IGxlZ2FjeS10cnVuaworMzE1NDcgMGViOTQ4MzY0OTkwZmI5OTE1MjRkYjQ2N2Y5NTFkMDY0YjM0ZTBmNCBsZWdhY3ktdHJ1bmsKKzMxNTQ4IGZhY2ZmNTIyZTc0NDJjZTAxZmE4Y2IzODBiNjUyYzVmZDEzOGNkMzcgbGVnYWN5LXRydW5rCiszMTU0OSA3MjlhMWMyZWM0ZThlMGZkYTJkZTUzYTNmZDdiYTE0MmFkZWRmNWNlIGxlZ2FjeS10cnVuaworMzE1NTAgNjEyODgzZWFmNTBjNmU3MWNhMTg3MDA4ZTZmNTFlOTlmOGViNzE1ZSBsZWdhY3ktdHJ1bmsKKzMxNTUxIDc5YWQ2MTU2ZDZjNDI0NDY1ODE3YzViYmU2ZjQ5NjhmNGIxYTQ2MzUgbGVnYWN5LXRydW5rCiszMTU1MiAwNTZmZmE1NTQ1MTdhNzg4Nzc3ZGVlYmQxN2IyMjQzMzdlNWViOTFlIHIyM2EyLWJyYW5jaAorMzE1NTMgYThjMGFmODIyODg4NDZlOGE5NWVhZmU2OGIwMDJmNDZlMzJmMWE3OSByMjNhMi1icmFuY2gKKzMxNTU0IGEyZTk3MDU4OGU1YmI2ODgwMmVhY2Y5OTI4MDAyOTA4YjNhZTUxZGMgcjIzYTItYnJhbmNoCiszMTU1NSBiY2UzZGYwNzVmMzc4MDkzYjI4MGY0ZjBmMzJiNTg0MWUwMzI4ZTFlIHIyM2EyLWJyYW5jaAorMzE1NTYgM2JiY2MzYmJhNTYwYzhiNDY3M2YzMWY4YWZkMWY4NmJmMmNkYTU2NCByMjNhMi1icmFuY2gKKzMxNTU3IGI4NDk0ODJjNzBjNmQ5ZjBiNTUwMmNjMmFlYTAyOTk1YmE5M2NmMjQgbGVnYWN5LXRydW5rCiszMTU1OCBmYWM3NjIyODNhYmNjYWYxMDI2ZmZjYzAwY2QwYmI3NTdmMDk4NjgyIHIyM2EyLWJyYW5jaAorMzE1NTkgMWU5MDc0NjJlODNhZGJjZjU0ZGJhNzU0ZWY0NDAxMGU2MGU4ZjlmYyBsZWdhY3ktdHJ1bmsKKzMxNTYwIDc4YzljNGEwMThjZDFhMDM4YjdmYWU1OTQzNGRjMTJhZjJhMWFiMzIgbGVnYWN5LXRydW5rCiszMTU2MSAzMmEwYzJmNDIyZjE4ZGU5MTY0ZTAzMDExZTYxMzc5OGEwOGEzZjNjIGxlZ2FjeS10cnVuaworMzE1NjIgMjFhNTBjMzA4ZGI0NTkyZWQwZjhmZDVmYTA5NDRjYWU0NGJmMzczOCBsZWdhY3ktdHJ1bmsKKzMxNTYzIDVkZmFmZjk4MDkxMDAxZGQ2ZjI1YWIyMGNjNzM0MWY1MGRlYjE5NDYgbGVnYWN5LXRydW5rCiszMTU2NCA4NzJjNmYyMDI4ZmM0YjdmMzZmZmZmNWMzNWNkNWVkNmY1OGQ0YjMyIGxlZ2FjeS10cnVuaworMzE1NjUgODA4NDM3YjgzYjE1MTg2NmFkMjNiMDk4ZTViNWQ1OTMwYzUwNDM2YyBsZWdhY3ktdHJ1bmsKKzMxNTY2IDYxZmE2YjU1YzFkZTJkNjVhNGU2MzMyZDFhODk4ZWUwNWNjYTFjYTUgbGVnYWN5LXRydW5rCiszMTU2NyBlNjNmMWVjY2QyNTBkYWQzOWE1ZWI5MTg4YTkwYjgzYTVlZDNkZGExIGxlZ2FjeS10cnVuaworMzE1NjggOTA2NDU5NjE0YjVlNzEyYjUxOGM5MTYyOWU4NTNmZTFkMGZiYzlmMCBsZWdhY3ktdHJ1bmsKKzMxNTY5IDQzYTllY2JkOTYwN2NhMzNkMTg3Mjc5MTZhODNhOTM1ZDA1ZjRkNGIgbGVnYWN5LXRydW5rCiszMTU3MCBhYmQ1N2M1MzU4YmQ3YTBlYTAzMTAyZTk4MDI5MDMwMDRhNzM5ZTIxIGxlZ2FjeS10cnVuaworMzE1NzEgNmUyMGIwNDllZDZmNmM0NWM4MTk1ODNiMTE4ZWUwNzAzZmQxMmU1NyBsZWdhY3ktdHJ1bmsKKzMxNTcyIDI1ZmQyOGM4YmI2YmFlOWE4MWUzMzZmMmViNTJkNTI1N2MwYTRiZGQgbGVnYWN5LXRydW5rCiszMTU3MyA5MDRhOGI4MjJkYWZiZmJjNmVmYTI0NTg1NjlmMzZmZTE0YmY3NzEzIGxlZ2FjeS10cnVuaworMzE1NzQgNTNiZWYyMGY4NGNjZDJlOTIzOTkzYmNmNWNhMWYyYTJmZGE1ZmRkMiBsZWdhY3ktdHJ1bmsKKzMxNTc1IDFjMmM5N2QzNDU2Mzg0ZTcyYjlmMWIxNDBkOWU1MGZlM2VhOWRhY2IgbGVnYWN5LXRydW5rCiszMTU3NiA5MTYyNGE0NzUzN2M3MDFkNThlODRmY2M4NzkzMDJhMDBiMTRlZjAwIGxlZ2FjeS10cnVuaworMzE1NzcgZjM0ZmNkNjNhZTI4ZTA4MzU3NzI2Y2Y4ZmU3ZmYyOTFjYjUwOGMwMyBsZWdhY3ktdHJ1bmsKKzMxNTc4IDUzZmZhYjVkYjAxNWRkN2FjNmFiOGE4YWQ2NTdmN2RjNTdkMGJjYjAgcmVsZWFzZTIyLW1haW50CiszMTU3OSBiZTA5ZDMyNjg3ZDhjNWVmNTc5ZDU5ZDBjMTJjNDRjYmQ4MGE0YjBhIHJlbGVhc2UyMi1tYWludAorMzE1ODAgM2RkYjA5MmFjZWE4YjhhZTUzM2UyOGJhMmQ1NmUzNzQ3MWNkMjNjYSBsZWdhY3ktdHJ1bmsKKzMxNTgxIDRmNmM2MzMwODA2MzM3ZDUwYjI4NGNmMzhiY2Q4ZTYxYjdkMTQyYWMgbGVnYWN5LXRydW5rCiszMTU4MiBkOGI5ZDdjMDQxNDY1NDNlNzFhYmQ1ZmNiMGZkYWM3OGIzMTU0YzNkIGxlZ2FjeS10cnVuaworMzE1ODMgMWI2NTM4YWEwOTU5MWUxZTliNDI2MDhiN2VhNmE2ZGUwZDk0MDg0MSBsZWdhY3ktdHJ1bmsKKzMxNTg0IDRlYTM3OGE3MWY5NjZhOGJkOGYwMmQ2NmMzNTgyOGNjOGJkNWIwYWQgcmVsZWFzZTIyLW1haW50CiszMTU4NSBkYjkyYzc3YjA1ZTI2YjVjZTM5MDVjN2IyMjNiNTZhNDkyYTA2MDRkIGxlZ2FjeS10cnVuaworMzE1ODYgNDg2YTBmNTE2ZGIwM2QxN2M3MDg3ZmE0NWI5ZWE0Mzg0YzJlNjg5MyBsZWdhY3ktdHJ1bmsKKzMxNTg3IDc4NGVkNjA1YjUxMzBiYWE2ZjQzZmIwYmEyYWY0NGFhMmNkNDM3ZmIgbGVnYWN5LXRydW5rCiszMTU4OCA3ODAyZDhjMWFkYWM4NDBiMjA0MjgyODcxZTU3ZTMyOGNlOGRlMjhiIGxlZ2FjeS10cnVuaworMzE1ODkgMmU4ZjA1MzE5MTliYjJmMTQ0MWMyZWE3N2Q1YzQ4MzFlZjUxNzgyMCBsZWdhY3ktdHJ1bmsKKzMxNTkwIDE5MmJkNmUxMzVhYWRhNThmNTc1YzM3Mzc4NWQ3ZTRlMjhlNGJjODkgbGVnYWN5LXRydW5rCiszMTU5MSBiMzhjZWJjNzZkODI1MWY1YTI5ZGJjMzAxOWEyZWJlYzBkZWMzNWVkIGxlZ2FjeS10cnVuaworMzE1OTIgNWFiYzVkMDg4MTRmOTY4YTNhY2RiNGMzZTM3NTVhNTBlODhjYmM0ZiBsZWdhY3ktdHJ1bmsKKzMxNTkzIDgyM2Q1YjFmMzJlMTJlYjU5OTU1MzNhYTU2ZTA0N2YyZThiOWNjNDEgbGVnYWN5LXRydW5rCiszMTU5NCAwYTg5YjQwNmM3MzJmMWY2YTIzOGMyYTE5ODU5YmE4YmU0NWRjYTc0IGxlZ2FjeS10cnVuaworMzE1OTUgNDk4ZGIxYmNkNjY0ODk0Y2FkM2FiY2MzN2NjODM0NTU1MzViZmJkNyBsZWdhY3ktdHJ1bmsKKzMxNTk2IGNhNWIwY2Q3YTUyNTA0OTVjZGIwYWRjZDQzNmUxODZmNmFmYzkzMzQgbGVnYWN5LXRydW5rCiszMTU5NyA0MDEzNDA3MGU2YTZhMGRkYmIxZjdlYTc4ODQ5ZjhmZTdhZTNmN2FhIGxlZ2FjeS10cnVuaworMzE1OTggYThjODdhMGJlYjk4MDM2MTA5MTVjZDA2NjEzYjAzMDc2YjBmODMxZiBsZWdhY3ktdHJ1bmsKKzMxNTk5IDFhMGMyMzFjNmIwY2FlODA0Mjk0MjZmMTg5OWEwYzE4NmY2Zjc5OTMgbGVnYWN5LXRydW5rCiszMTYwMCA3MjNjNTQ1NzMwN2Q5Mzg1YWIyYWFiZWUxOTBlOTQwMTY3ZmY5MjIyIGxlZ2FjeS10cnVuaworMzE2MDEgN2Y5MGI1YjcwMDFlZDFmZDg4Zjk4M2RiNWYwMzViODE1ZjJjYzBiYSByZWxlYXNlMjItbWFpbnQKKzMxNjAyIGZiNzljYzI2MzBjMWVlNDI0MmJiNzIxOWMwNThkN2I4YmYyNGQxODYgcmVsZWFzZTIyLW1haW50CiszMTYwMyBmOGZjNWUxNGJmZTg3YTVjZjVkZDc1YzJkMTYzMWU0YzcwNDg4NTJiIGxlZ2FjeS10cnVuaworMzE2MDQgYzc1NjYxNDQ0NjU1Mzg4MzI1ZDIwMTM1Y2RiZDc2MjVlNjJmYjExMCBsZWdhY3ktdHJ1bmsKKzMxNjA1IGMzNjY1ZGY2NmQ2ZDViMmM4ZGE5Yjk2NWJiMWNjMDI5MTJlMWM5MTkgbGVnYWN5LXRydW5rCiszMTYwNiAzMjQ4OTZiN2Y0ZTFlMjU5MThhZjFhOGU5OTM1MzQ0NjFlY2NhOTc4IGxlZ2FjeS10cnVuaworMzE2MDcgYzYxZWYxODNjZTJmMTU2NDVjNGE0MDBhYzAxZmE2NWE5YTljODYyMiBsZWdhY3ktdHJ1bmsKKzMxNjA4IGQ2NzMwNTkwNTI2YzMxNGM1YWUwZjZmOGJhNmE3MWUzNjQ3YTExM2YgbGVnYWN5LXRydW5rCiszMTYwOSA5ZDI5N2QzZGUzNmY1ODYxYTVkYjc2N2U5Y2E3NDBlYmJlMTU3ZDc1IGxlZ2FjeS10cnVuaworMzE2MTAgZjcyYzM4M2JjYzQ1ZDRmODg0NGYzMDNjNDQ2MTk0NjVhYTE1ZWNmYyBsZWdhY3ktdHJ1bmsKKzMxNjExIDg2ZDgzODRkODgxMDJmZTI4ODcyMzAxNzU2NGIxMzc2YTJiNmM1ZTYgbGVnYWN5LXRydW5rCiszMTYxMiA4NjY5NjRjODViOGUyNmQ4Mzk1YzQxNzc2OWVhNGU1MjVjY2YzODMyIGxlZ2FjeS10cnVuaworMzE2MTMgNWIzZDU5Yjk3OGEyZDY5ZjE2NmUzZDk3MmFhYjMyMWQyZGRjOWJjNSBsZWdhY3ktdHJ1bmsKKzMxNjE0IGE4YTY0MzY0YTcxMWQ0MTlkNmE4YmE1ZjZiZTg1ZGVkZWExYmZmOTUgbGVnYWN5LXRydW5rCiszMTYxNSAwNDU1Y2Y4OWIxMjM5OGEwZTY4YzNlNjUzZGM0MDg5MTA5YmZmNTk1IGxlZ2FjeS10cnVuaworMzE2MTYgYjA0NjI1Y2VhMDYxM2FhZDZkYTY4MGEzZmY3YjhkZjA5MmE2MWU4YiBsZWdhY3ktdHJ1bmsKKzMxNjE3IDdmZGNjNGNmYzc1OTE3NTU0ZTlhZDc3MzExNjdkZmMyZWM3OGI5ZjMgbGVnYWN5LXRydW5rCiszMTYxOCAwMGRlZDYyZDI2NzhhNDM1ZmQ0MGQ2YmNkMDA0MWI4YmQwOTZhNjhiIGxlZ2FjeS10cnVuaworMzE2MTkgZmNiMzliMGE2ZTMwNmM4MDU4Y2ZlNzQ1ZmEwMWZkZWRkZGI5ZGY3MiBsZWdhY3ktdHJ1bmsKKzMxNjIwIGJiNmJkNTQ5ZjkyYTc5NjRlYjk2OWFmZTA0Y2FhNTA5ZmUwMjQ1N2IgbGVnYWN5LXRydW5rCiszMTYyMSBiOGNiOTBmYzM1MjNkMzY4NDlhNGEwOTg4MGJkOTY5MTU1N2Y4ZTZkIGxlZ2FjeS10cnVuaworMzE2MjIgMGM4OWRjNjI1NGJlOGQ4NzRlZjEwYjNjOWZmMThlNDhjYzY0MTY3ZSBsZWdhY3ktdHJ1bmsKKzMxNjIzIGNmOWQ5MTI4MzQ1YzNmMWI0OWFkZmNkZjZlZTljYjI3ZTgyOTc1ZmUgbGVnYWN5LXRydW5rCiszMTYyNCBhNTg3NDQ1M2JmMTdjNjYwOGU1OTJkN2ZiYTgyZjdiM2Q5NDQ4NzFjIHJlbGVhc2UyMi1tYWludAorMzE2MjUgMjk5NjVkMGQ0NjUwNTlkMzA4NzRlNmY3ODBjNTQ4NGFlMTI2Y2M0MyBsZWdhY3ktdHJ1bmsKKzMxNjI2IDQ0YmExNTcyNTE4ZjcwMjlkYTU0YjBjYTM2M2I5MTY3YzdlZWMxMTcgbGVnYWN5LXRydW5rCiszMTYyNyBmNDJmYmM3YzdkOGU5YWMyZTA1ZmQ0MmU3NDIwMDIxYmQwNmFmYzA1IGxlZ2FjeS10cnVuaworMzE2MjggMjQ3NDM4MTUyN2JiYzljNDJhMjBkNWU5NDlkNzUyMjNkNGEwNzcwNyBsZWdhY3ktdHJ1bmsKKzMxNjI5IDQ2NTQwNWExNTljMWY0Mjc3ZjZhNGU2ZDQ2NzRjODExMzc5NTgzMTkgbGVnYWN5LXRydW5rCiszMTYzMCBkOWU5Yzk2NGI2YTQ2ZTUwZGFmZjM0OTM2YTViOWUwNzNlYjIzNzZmIGxlZ2FjeS10cnVuaworMzE2MzEgMTRmNjVkNjYxMDg0OGU1YmM5NTZiNDc2OGQ0OWM4Yzg4ZGNkNTY2MyBsZWdhY3ktdHJ1bmsKKzMxNjMyIDNjNWE4ODE0NDcwYzljNGJmYWI3NWVjNzBkMzU2MDIzZjRkODRkZTMgbGVnYWN5LXRydW5rCiszMTYzMyAwNGE5M2I3YmRjZTQ5NjExNWIxMDc4Yjk3ZjI5MmNjM2Q5NGU3NDFjIGxlZ2FjeS10cnVuaworMzE2MzQgMTJiYWI4N2EzZGQyMzQ1Y2U5YTQzYTAyMzQwZmI5YjkzM2E1MDg1MiBsZWdhY3ktdHJ1bmsKKzMxNjM1IDg5OWYyZDIxMGEzNGQ4NTQwZTZhM2ZmNGRjNmU0NmQ0ZTk2NTEzOTUgbGVnYWN5LXRydW5rCiszMTYzNiBkNWFhYTY3YzA5NmFmMzU2OTJlM2JkYzk0MmFlZmViYTgwYWU4YmMzIGxlZ2FjeS10cnVuaworMzE2MzcgNzQ4ZjJlNWI4MjkzODgyZjdmY2JiMjE4OWEyODlmYzJiYzk0MmIyMyBsZWdhY3ktdHJ1bmsKKzMxNjM4IDMxMDA4NDMzYzc0ZmFkZjhiZmE5YjlkMTZlY2I2MDRlNTdiMmM1NTkgbGVnYWN5LXRydW5rCiszMTYzOSBkNTBkMWZmNDJiNWFjZThkNTU2MTZmMTIwOWFhNjUxZTczZWRiOWVhIGxlZ2FjeS10cnVuaworMzE2NDAgMmQ1OWNhMjlmMzg0ZDc5MmIzYTgxNmI5ZTVhNWUyMjJjZmI2ZWQ3NSBsZWdhY3ktdHJ1bmsKKzMxNjQxIDdlNjQ5MTM4MzEyYjNmZjRkZDgyZGIxY2Q0ZjVkZjY1Yzc0MzRkYWIgbGVnYWN5LXRydW5rCiszMTY0MiA1NGIzNWRhOTg3OWU5ODgwNWNmZTEzYjU0ZGMzNjNiYWI2Y2EyMGJmIGxlZ2FjeS10cnVuaworMzE2NDMgYWIyNzE4M2M4OTI3ZjY1MDk2NTE0OTliNTRmMzliYjQ3MjdiMzRjMSBsZWdhY3ktdHJ1bmsKKzMxNjQ0IGY0ZTcyYTFhOWYxM2U4NmMyNjJlZjQ1M2M1NTIwMjc1NTE1N2ExZTIgbGVnYWN5LXRydW5rCiszMTY0NSA1ZTVlZWZhMjVmM2FkMWJmNTk2OGQwYzQyNzIxYjg3MGY4MmFmNWY5IGxlZ2FjeS10cnVuaworMzE2NDYgYmY4NjZhYjM5ZGZmMmE1Nzg3NDZiNzEzODg0NWJmNDEyN2Y0NTkyMiBsZWdhY3ktdHJ1bmsKKzMxNjQ3IDJmM2NkM2Y1NDBhZDFhYTUwZDhjZWUzMWIwYjE4OWYyMGU2ZmU4NDIgbGVnYWN5LXRydW5rCiszMTY0OCBkOWI0ODdiOTAzNGE0OTNmNjc0OWM3Y2EyODY0MjY5NjI4ZDJjYTg4IGxlZ2FjeS10cnVuaworMzE2NDkgMTU3NzNlNzU4ZmM3M2FiYzQ5NTc0YzlkOGRkOWU0MGNmNTc0Mzg0MSBsZWdhY3ktdHJ1bmsKKzMxNjUwIDk4ZDEwNzEzNjJmMDQwZDQzOGU1N2FiNWE4ZTczZmJlMzkwMWVmZDUgbGVnYWN5LXRydW5rCiszMTY1MSBkZDZhNjI1NzhiYzg2NDA2NDRmOWJhMTQ3MWJjNDFhNmIxZmEzZDcyIGxlZ2FjeS10cnVuaworMzE2NTIgZDM2ZGQ0MWU4OTBmMmJhMTk2YzM4MGUxNzZlZTQ2ZjgxZGYyNGJmOCBsZWdhY3ktdHJ1bmsKKzMxNjUzIDdhMmY2ODMzOTVlNzI4MmM4YjMzZGZlMjc2YTg2MGRkZDk0MGQ5NjggbGVnYWN5LXRydW5rCiszMTY1NCAyYzhjMmM2YjJhYjc5YjFlNGYyNjIwODk3OWEwZjUzY2I4YWQyNzFhIGxlZ2FjeS10cnVuaworMzE2NTUgNjI4ODhhN2VkZjBiNTU0ZjNjZGQyMDUxODZkOTc2ZWJhOGQ3YTVhZCBsZWdhY3ktdHJ1bmsKKzMxNjU2IDE0NDYzZjQ3ODI0MDIyNjhhYWQzNjZiM2U5MTc0NTkwMDIzOGRhYzEgbGVnYWN5LXRydW5rCiszMTY1NyAyZmM1MmJlNzc5OTkxMzRkNzBmMjU2ZjUyN2Y4MmZmNWQ0ZDdkMmMzIGxlZ2FjeS10cnVuaworMzE2NTggOTM3OGY2ZTU1MWFlNzIxNmExZDBiZjUwZTJhODBlNTJjMjMyYjYxZiBsZWdhY3ktdHJ1bmsKKzMxNjU5IDliNGVlZDRiYjNlMmU0YTE4MzM5YzUyOTg4N2U2MTc2MWM0YTQ0MjIgbGVnYWN5LXRydW5rCiszMTY2MCA0ZjRmMmExNTQ0Nzg0OTU1YWUzMThhMmZjYmNiNTZlNzNlYmQ4ZjExIHJlbGVhc2UyMi1tYWludAorMzE2NjEgODY5Njk1Y2JhMmNkMzdlNjNhZDVkNGNiOTJjYTU1YWFlNThiNDVkZiBsZWdhY3ktdHJ1bmsKKzMxNjYyIGQyNDU2NGU3ZTk5OWNkZGNjOWFhM2QyNTc0ODRlYzA1NTg2NTdjZmIgbGVnYWN5LXRydW5rCiszMTY2MyBjMjRhMjNiMWYxOThhZjBiNTM1NzE5Y2JhN2E2ODY4MmZmNmNlNTdkIGxlZ2FjeS10cnVuaworMzE2NjQgMzljYjkxN2I1ZjdhYjRiYWU5MjQyYjYwYWUxODgxMmZjYjE2YzkwYiBsZWdhY3ktdHJ1bmsKKzMxNjY1IGYxOTgxZWU5ODIyM2NlNWFiMjUwZTcwMDYzYTgwNDhkMGQzMGYwMzUgcmVsZWFzZTIyLW1haW50CiszMTY2NiA4OGU1OGUzZDU4MDc3M2U3MDRlMTYxOTVkYjYxZmRiOTYyYTNlNDkxIGxlZ2FjeS10cnVuaworMzE2NjcgZjQ2OWE2ZDA3N2YxZTk1MDhlN2I0NGVkZGQ1YTRiZGE3NWQ4OGY1MSBsZWdhY3ktdHJ1bmsKKzMxNjY4IDRjY2NlZjliNGQ1NDU3NTdiZTJhMzE0MzU2ZjhjNTk3ZWVhOTBkMjcgbGVnYWN5LXRydW5rCiszMTY2OSA1ZjkyMzE2NTMxOWQ1Y2I2OGM5NTliODYzNjhmZWJmZGZkNzM3NjFkIGxlZ2FjeS10cnVuaworMzE2NzAgODc5MTM1MjlmMjQ4MDk4ZjllNTQ3ZDJiNmI1OTM3NzI4ZWEwYjllZCBsZWdhY3ktdHJ1bmsKKzMxNjcxIGEyNGFhYmNmNWVhMjgxODZiODVkNmEzYzE2MDg5M2UzYTZiMjY1NzQgbGVnYWN5LXRydW5rCiszMTY3MiBiMDA5YzNlZjI3YjUxYzUzNzliMDNiNzM5MzgxYWEzN2YwMDkzNzQ5IGxlZ2FjeS10cnVuaworMzE2NzMgNTBlYThkZWQyOWQwMTdmMzcyNTM5ZDhjNTM5MDc1MzQ3M2E1NTNhYSBsZWdhY3ktdHJ1bmsKKzMxNjc0IDA0N2I1ZDAwMGFhYTUxNjRkZDc4YmU1ZDExNjA2Nzc3ODY1YWZlODQgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTY3NSAxZDY2MjM0MmUxOWE2NGIzNjk5YzRiZDc3ZTA5YThhNzcxMTJjNzlhIGZvbGRpbmctcmVpbXBsLWJyYW5jaAorMzE2NzYgOTdiOTdlNTcxOTBjZmY3Mzk5OGZkMTllMjNhOWY0ODQ2NmVhOTU4YSBsZWdhY3ktdHJ1bmsKKzMxNjc3IGY5ZjMwMTBmYzg2Zjc2YTkxYmMyZjU0MDE5OTg0YmEzYzVkMWU1ZDQgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTY3OCA5Y2E0YTY3Yjk5NzM2ZmJlYTA3ZDhhMDk2MjQ0MGYwOTNiMzU4OGJhIGxlZ2FjeS10cnVuaworMzE2NzkgY2RlNDQ0MTg0MzM2ZmJkYzdiNjU2YTUwY2MzMjk3Zjc0N2UzZmM3NiBsZWdhY3ktdHJ1bmsKKzMxNjgwIGI1MzQ1NWE1MWI3ODA5NWY1M2QwNzY2ZTZjZjAwNjY4MGQ5ZDAzODggbGVnYWN5LXRydW5rCiszMTY4MSA2NTVhMDg1NTdhNDNlYzE2MjRhYjY1YjIyMjY2YzE3MDhiNjQ2MzhlIGxlZ2FjeS10cnVuaworMzE2ODIgNzg5YjI0ZDY1ZDQyMDQ1Nzc4Njc4YmJmODdmNDQ2M2Y0ZTI2OGVlNyBsZWdhY3ktdHJ1bmsKKzMxNjgzIGViMTVkZTZhNGE0Y2QwNmQyMGViYTA4ZmE3MzAyMGE0MTg5MTc3MTcgbGVnYWN5LXRydW5rCiszMTY4NCBiMjBhMzY4NWQyM2UxZDFhNmUzNWNmNDFlZjViYmNmYzU4YTI0MjVkIGxlZ2FjeS10cnVuaworMzE2ODUgZjlkYjlkYzQ1NmFiNTcwMzgxN2NlNzRkNGEzMjI5N2IwNjdmN2NiYiBsZWdhY3ktdHJ1bmsKKzMxNjg2IDdkMDRiZDg5NzY2MTg3NDVhMDFjOGZmNGY0MzI3M2QzYTA1ZDA0YzUgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTY4NyA0MWE5YTA3MmM2ODE3NmFmNmNjOGQ1MjBlZGQ5Nzc5NzlhOWE1OTIxIGZvbGRpbmctcmVpbXBsLWJyYW5jaAorMzE2ODggMmNjMTlhMzI1ZDY2NzY0MGU5MzI5Y2ZkNGE3MzhjNzJiYmRiYjQ2MCBmb2xkaW5nLXJlaW1wbC1icmFuY2gKKzMxNjg5IGRiZjNlYmVjYTdiMWRhNjJlNjIyOTU2ZTU1MjkyMDZlNjIzODY2MjMgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTY5MCAzNzc5NjFkNzY2MTA1ZmVlMzdmNDA4MjEyNzgwZTJkZGQ4N2QxZmI3IGZvbGRpbmctcmVpbXBsLWJyYW5jaAorMzE2OTEgMzk5MmNhNzAwZTY1ODAzMTM0ZjY2MWM2ODcyN2JhOTY3MjFkNTk2NiBmb2xkaW5nLXJlaW1wbC1icmFuY2gKKzMxNjkyIGEzY2YwN2JhYzM3MzY5ZjJhNjVkNTI2NTU4NjgyMDNjYzM1Zjk0MjEgbGVnYWN5LXRydW5rCiszMTY5MyA1MjRlNWY5Zjg1ZTZhZjAzMzdjYTNiODk1NmM1OGYwZDM2Y2I0ZjdmIGxlZ2FjeS10cnVuaworMzE2OTQgODg4OTY1NGMwZGQ1ZDA5OWYwNTg1OGYwNWQ4OWIxYzU4ODYwOTRhMCBsZWdhY3ktdHJ1bmsKKzMxNjk1IDg0M2Q1Yzc4OTUyYTgyMmVhMDE5MjdmMDJiNWFiMDA0M2ZjNWU1ZTYgbGVnYWN5LXRydW5rCiszMTY5NiA4OThjZTRlOTZmNTkyYjBjNWIwNjVjMTU2NGMwOWQ0NTFiNzE1MzBmIGxlZ2FjeS10cnVuaworMzE2OTcgZjliNzAyYzUyZGFlYTI5OTYyY2UwMzkyYTM3NWEwNmUwNWQxNDNiMyBsZWdhY3ktdHJ1bmsKKzMxNjk4IDI4MTVjMWE5ZjczNTgzNGJlNzYxMmIwNmJjMjY5YTFjYzQwZTc5ZDUgbGVnYWN5LXRydW5rCiszMTY5OSA5ZTczN2Q2M2YzODAxZTc0ZGJlZGYzMGMyNTJkZmFjYzM1MDZjYzMwIGxlZ2FjeS10cnVuaworMzE3MDAgNDRjMzEyMzY3NDNhMDc4MTUyMTBkMDRhZTEwNTk3YTU3YmY0YjNhZCBmb2xkaW5nLXJlaW1wbC1icmFuY2gKKzMxNzAxIDI5NDc0NTliMDc4OTIzMjkzZDc2OGJhZDA3MDliYWViMmYzOGJmNDYgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTcwMiA5MDJmY2ZkNWQ2NWQwOThhZThhYjAxMTA5N2EzOTkwZWVhNzUwODNiIGZvbGRpbmctcmVpbXBsLWJyYW5jaAorMzE3MDMgNzZkMDYxOGYzZmUwZDg3OTJiODQyZTc1NTQzMjM2MTEyZTZlMTQzZiBmb2xkaW5nLXJlaW1wbC1icmFuY2gKKzMxNzA0IGE4MzYxYmNhMWM1Y2M3N2U0NmExMTFkYjRjZDBkOGM3ODJjOThlYzcgZm9sZGluZy1yZWltcGwtYnJhbmNoCiszMTcwNSA1YzBkYjQxZDM4ZjkzNjA5YjgzMjZmYWRlYTEyYmM0YmI5MGU2MmZjIGZvbGRpbmctcmVpbXBsLWJyYW5jaAorMzE3MDYgOTVhYmYzZmMyYjJkMzM0NGM0NzE1ZjY3ZDY4YjBjODM2NDAwOThjNyBsZWdhY3ktdHJ1bmsKKzMxNzA3IDEyZDRkZjcxYmRhYTM1ZGY0MmVlNjQ0NzFlZGI1NmY2YjFiYTgxYTEgbGVnYWN5LXRydW5rCiszMTcwOCBiZGE0OTBmYzI2OTFlYjk4Nzc0ZGJmOTRkOGRiZDU1NjEzNmYwMTRkIGxlZ2FjeS10cnVuaworMzE3MDkgMGQ4NTUyNDA4ZmNkZTE4YTc1ZGJiMDYyY2QyNzNlNjg0OGNhZTk1NSBsZWdhY3ktdHJ1bmsKKzMxNzEwIGU5ZmMyYzE0MTYwODllYjg3MDE5Zjc5MzA3YjYxZjE3N2UzYmM2MTIgbGVnYWN5LXRydW5rCiszMTcxMSA2ZDc4YzZiZjMxZjdkMmM4ZmNmYWMxNzcyNjRmNTlkMjMwY2MyNjZmIGxlZ2FjeS10cnVuaworMzE3MTIgMTc4ZDE5Y2ZmMTYzODEzMmZjNzMwM2ZkYjNhZjdiMzdkNDEyMjg0MyBsZWdhY3ktdHJ1bmsKKzMxNzEzIDNmZTcyYTk5NDEwM2IzNWNkM2QzZTE5ZTkzNmU1OTNiNjE0MWIzMzMgbGVnYWN5LXRydW5rCiszMTcxNCA4YTcxMzAxYWZjMmRhNjAyYjY3OTRjY2MxOGFkZmY4NDg5ZGIwZWFkIGxlZ2FjeS10cnVuaworMzE3MTUgNDNjN2Q4YTA4NGZiYzM5ZDllMmU1ZWM3NWFhMDM5OWEyODZlZmYxMSByZWxlYXNlMjItbWFpbnQKKzMxNzE2IGU0MDU5MjljMjIzZTU3Y2IyZDhhNGIzZmQyYzY3ZTAyYmNiOGQ2MGUgbGVnYWN5LXRydW5rCiszMTcxNyAyOWQ4MDM0MGZkNDE0Zjg0MzM2MzBjNzBlZDViODBiOTY5MjNhMWUyIGxlZ2FjeS10cnVuaworMzE3MTggMDFhZWQ3MmUzMDllNTJjMWRiZTYwYmMwZGQ3Y2M0NzI0Yzk4YTgyMCBsZWdhY3ktdHJ1bmsKKzMxNzE5IGJhMWJkNmY2ZTZlZGM1NjA4ZGM2NjEyNTVlODc0ZWFkZDYyNzg5OWIgbGVnYWN5LXRydW5rCiszMTcyMCBhYzk2NWE1MDJkMWI3N2M1ZGE2Yjk4MWRkZDBhZTJmNDE2M2QwNWI5IGxlZ2FjeS10cnVuaworMzE3MjEgYWI4NWM3NTZjNWRmM2M2MWJjNjMzNDQ4MDRlMmFmMjNiMDdkZGFlYyBsZWdhY3ktdHJ1bmsKKzMxNzIyIDg5MTM3YmUyNWU3YWQ3ZWU0ZmEwZDBjODhjMGE0ZGI5MDY3Nzc5NDAgcmVsZWFzZTIyLW1haW50CiszMTcyMyA4NzcwNGY4OWVhM2Y1Y2YzOWExNWE4Mzk0OWNkMWQ1YzNjYjhiMmUzIGxlZ2FjeS10cnVuaworMzE3MjQgMzdjZGUwNzhiOTMzMmJkMjkyOGZkZTk0Zjk2MThiMDUyMzczZGM1OCBsZWdhY3ktdHJ1bmsKKzMxNzI1IDMwMzBkNjdmYjRhNTY2OTdkNTQ0M2Y4NDE3YWRmNDRlNWUzZWE2OGUgbGVnYWN5LXRydW5rCiszMTcyNiBiYzJkMDcyMzA5MzRkNGNlZWVmZjFiYTFkZjNmZjhhZjM4NWE0MzMzIGxlZ2FjeS10cnVuaworMzE3MjcgY2UzNzYwZThlNjQwNmE3NzViMjQwNGZhMjJmMGYzNTMwODk1NWE2OSBsZWdhY3ktdHJ1bmsKKzMxNzI4IDI0ZmUwMjM5MDFiMDdiNWJiYzJhNDJlMDk5ZmM3NjVlMzk5NTFjNzMgbGVnYWN5LXRydW5rCiszMTcyOSBhNmNkOWQ2ZDVjYTNhNDkwYzNkMDE3NjM0YzVlYTYzZTljMmZlOTRlIGxlZ2FjeS10cnVuaworMzE3MzAgNTc3NmZkMTg4ZjIwNTQ1ODY4MmMzZTE2NmE3MmFiN2Q2MDZlMzEyNyBsZWdhY3ktdHJ1bmsKKzMxNzMxIDNmOTBkMjFkZWJlOTZlMTgyMjU5NDI0MGEyYzNmOWUxZjMyNTJkMzIgbGVnYWN5LXRydW5rCiszMTczMiAzOTVlYjU2MWVjZTEzNjc2YzBmMmVkMDhmZmFkNjk0OTg0NWE5MzdiIGxlZ2FjeS10cnVuaworMzE3MzMgNDhhNTExM2RmZWY5ODEyYjYyZWQ1Zjc3MGZmZjU3MjAzODM3MDQwYyBsZWdhY3ktdHJ1bmsKKzMxNzM0IDU5Y2EzMjAwYjZlNTAzNGUyM2UwYWYyNDEyMjkxMWE3NDJkNjhmYjAgbGVnYWN5LXRydW5rCiszMTczNSAwYThlODYzMmM2MzE4YjhjNWYwZjQzODU5OTMyODBmZDc4NTc0N2I0IGxlZ2FjeS10cnVuaworMzE3MzYgMDRkZjk2NWQ2NzViN2Q3ZDNjYjA3MzdiNWVlYmYyNzhmODZjNDhlMiBsZWdhY3ktdHJ1bmsKKzMxNzM3IDU4NTIzNTJkOTUyMjJiYWU2OTBhN2MwZjUwOGJlMjI4MWM2MDc4MDYgbGVnYWN5LXRydW5rCiszMTczOCBjZDIxYmU4MmY1MGJiY2JiZTc4ZmU2MzU2MzZkNDBkZGRkOTAxYTFhIGxlZ2FjeS10cnVuaworMzE3MzkgYTFiOGU2NTRkNWZlMTVmOTlmM2M5OTJmNDcyNTk4NjBiMWQwMzQxNyBsZWdhY3ktdHJ1bmsKKzMxNzQwIDkyZjFkMDJlMjhmMGE5YTRmNTljNzUyM2MwNzU0NTlmMDY3NzFhNTkgbGVnYWN5LXRydW5rCiszMTc0MSA3MzZhZDczZGY1YjQ4ZWZmYzY3ZTA2MDg2MTZiODI2ODEyNWVhZmIwIGxlZ2FjeS10cnVuaworMzE3NDIgNDZhODFiZDhjYTBjZDAzMTE0ZDZjNzg3ZmFiZjZkYTJmNDZiNjg1MiBsZWdhY3ktdHJ1bmsKKzMxNzQzIDI5ZGRkYzAxYjVlYzM3NjlkZjM0Yzk1M2ZjMTg3YmI3ZTgwNzFkMGMgbGVnYWN5LXRydW5rCiszMTc0NCA4ZTYwNzE4NTY4OWE0ZDZhYWEyZTAwZDI3NjYwZmFkYzBiNDM2M2M1IGxlZ2FjeS10cnVuaworMzE3NDUgMTdlNmU4MTRkMDk0ZTlkYjNmYjdhN2ViYTQzNGJjZTE5NmZhYmY3ZiBsZWdhY3ktdHJ1bmsKKzMxNzQ2IGU0OGZiNWZiZmRmNGRhN2JhZTJlZmJhODZhOGJiOTE4YWUwODJmYmUgbGVnYWN5LXRydW5rCiszMTc0NyAxNDlhNTc3MmRkMGM0NjJiNjQ0ZDQ4NDY2NTg2MGZjMWQ3NGYyYTQzIGxlZ2FjeS10cnVuaworMzE3NDggZmNiYzgyNGI2ZTM4MDk0YzdmZDU0YjRiNzVlM2VjMjk1MmJmMjU0NiBsZWdhY3ktdHJ1bmsKKzMxNzQ5IDAyN2RjMjEzYzU3ZTcyZGFlM2M2YTQyYjk4YzAwZTZiMTViZWViNzMgbGVnYWN5LXRydW5rCiszMTc1MCA1Y2E2NTBhOTAwNWZhNGIyYzg3MDRjNzNmYmQ1MjgxZTdjNzUyOGQ2IGxlZ2FjeS10cnVuaworMzE3NTEgOGYwMDhiN2NiOTdiM2M0MjQ5MzQ4ZWNmNmZmNDdlN2FkODU4OGE0ZSBsZWdhY3ktdHJ1bmsKKzMxNzUyIDJhYmQ4YTVhZjZkZGIxMThiYTg2ZjQ4YWUyNjc4M2NjZTAwNjE4YTcgbGVnYWN5LXRydW5rCiszMTc1MyBiN2MyOWRjOGFmYTBmMzA1YjkxNjAyMWI0ZjUyZmRhNGVlNmUyOTZkIGxlZ2FjeS10cnVuaworMzE3NTQgZWZlMjQ5ZDA2OWJhNDFiODA1NzljNmFhMDkyMDliZjg0NTlmNDVhNiBsZWdhY3ktdHJ1bmsKKzMxNzU1IDgxNDE1MDQ4YjJhZWYwMDEwNDUxZjRlM2FiMjA3NTY0Yjg2NzBjMzcgbGVnYWN5LXRydW5rCiszMTc1NiA4YjdkOWViNDk3NThjNTYxMmI4M2E0NTEyYTY3OWIxOWYzMmY3NzJjIGxlZ2FjeS10cnVuaworMzE3NTcgMDc0OTc4Nzk5NGRiZjM4M2ZmNzRjNTY2ZjYwMTU2NTViZTQwZDRhOCBsZWdhY3ktdHJ1bmsKKzMxNzU4IGY1N2QzMGQ1MDY0OGVkODAwZmI3OTMxYmM3YTgwNjQ1YTc5OGYyMzggcmVsZWFzZTIyLW1haW50CiszMTc1OSBhN2YwMTMwMmIxNmQyYjE0N2U1NTQ0OGE3ZDU0OGY5NWUzYzM4ZGRjIGxlZ2FjeS10cnVuaworMzE3NjAgMGFiNDU0NTkzYjUzYTE1ZjVhY2M3MzM3MWVhMjNmZWYxMWZiMmVhYyBsZWdhY3ktdHJ1bmsKKzMxNzYxIDA1NTc1YjdlNjcxNDA4NDNlYjBlMTUyMDUwNzhmNDEyNGY5YjljMjcgbGVnYWN5LXRydW5rCiszMTc2MiBhMzgyMjYzZGYwMWQ1YTI3ZjMwZDY3YzQ0MTQ3MjM0NDVmZDhjN2Q4IGxlZ2FjeS10cnVuaworMzE3NjMgYmFkOTE1NjQ1ZmEyMmRmZTk2NWZkMWMzNzM4NDFhNjJhNGM2MTQ1MyBsZWdhY3ktdHJ1bmsKKzMxNzY0IDc3MTk2MWU0NTMxNGYwMmMxYzEwZDQ0ZmI4NDk5Njg0YjE2OWViNmIgbGVnYWN5LXRydW5rCiszMTc2NSA0MzkxMDFkNDcwNWJiMDVlYmMxZjdjMTQ3ZWIxMGM0ZmJlZGY3ODgzIGxlZ2FjeS10cnVuaworMzE3NjYgMmMzZWY0NjM1OWVmNDYwNWNiNTc4YjkzYWE4NTJiOGQ2ZGVmN2M2MSBsZWdhY3ktdHJ1bmsKKzMxNzY3IGZiOGY3NmRmNjRmZjQwNTU1ZDNkYTU1MmI1ZjMxZTU1MzY2MWY1MTYgbGVnYWN5LXRydW5rCiszMTc2OCA5MmUzYjYxMWRjOWY5MjA3MjBiNzJiNjBhZGNkODc0MDE3NDBjYjMxIGxlZ2FjeS10cnVuaworMzE3NjkgMDA4YTI2YzM1M2FmOTcwOTRjY2M4MWY2YjdhZjgxOThkZmY2OTJhOCBsZWdhY3ktdHJ1bmsKKzMxNzcwIGMwM2JlMjJmZGQyNGMxZTU3ZDIzMTQ0NTE2NTUzNWU0YWI4N2QzMTcgbGVnYWN5LXRydW5rCiszMTc3MSBkNGIyNjJmYmQwNGEyMDdlNjVmY2U2ZGFiY2YwYjgwYWQwYTE3NDgzIGxlZ2FjeS10cnVuaworMzE3NzIgZjJiZDBmNGQ4NTc1MGI4Y2VlNDNjNjk1ODQ0YmJiZmE2NWZjMGQ3NSBsZWdhY3ktdHJ1bmsKKzMxNzczIGIzYzE1ODdiMmI4ZTMyMmNkNzI3MTRjMmRlODAxZDY1MjBmZjRkYjMgbGVnYWN5LXRydW5rCiszMTc3NCA3M2IwZGMyOGM5MWE3YWU4YzA1NGE3MzViZjRiYjM5NDEwMzA1ZDUyIGxlZ2FjeS10cnVuaworMzE3NzUgOTA3MDQwNGYyNGZhZDU4NzRmZWUwY2Y2ZDE2NmVjZmM4MjYwOTIxNiBsZWdhY3ktdHJ1bmsKKzMxNzc2IDdjOGU4ODA3YWVkMjljNmYyZGZlZDkzYzJhNGNkMmZjZmI4MWI1ZWQgbGVnYWN5LXRydW5rCiszMTc3NyA5OTdkNDgxZWE0MDkxMGExNGM0Y2QyZmEzOTVkNWQyMDllMDFmOWE5IGxlZ2FjeS10cnVuaworMzE3NzggZGM5NDc1ZWM3OTg1NWNjOTA4ODk2Y2M2Y2Y5ZDYzOTI4N2M4YjVlNyBsZWdhY3ktdHJ1bmsKKzMxNzc5IGVjYTY5N2UwNmEwN2NjMjk0YjE2ZTVhNzViN2JiMzlhYmFkNWRmN2EgbGVnYWN5LXRydW5rCiszMTc4MCA3MzNhZWJiNTdmYjAwOWMwY2EzMDQzNzNlNTJlZTJjZmE4ZDkzZTdkIGxlZ2FjeS10cnVuaworMzE3ODEgYTJkNzliOTNiNTBhMGE5M2ViYjdkZWEwNDMzYmJiNTlkZDE1Mjg5NSBsZWdhY3ktdHJ1bmsKKzMxNzgyIDI3YWRkZWEzM2UwY2FkNDhhYTcxYTQ5NDMyMjkxZmZmNjkwYTBhMjkgbGVnYWN5LXRydW5rCiszMTc4MyBjZGVhNWIxYjgyODBjZjllZjkxNjE2ZDc3MjNhYjllNzgwNzAyNjgyIGxlZ2FjeS10cnVuaworMzE3ODQgNDMwNjZmNjdjNWRiYTc0MTcwMDhmNTkzOGYyMzZiYzQ0ODk2ODQ0ZSBsZWdhY3ktdHJ1bmsKKzMxNzg1IGI4NGU2YjRlMThjODU5OWNmZDM5NzUxODRmZmU4MWIyOWFjYzA0NGQgbGVnYWN5LXRydW5rCiszMTc4NiA2ZTQ5YmEzZjYwYmU1NTYwMDllNTZlM2M4NWExMTY3ZDY3YzNmMGYxIGxlZ2FjeS10cnVuaworMzE3ODcgYTJlNjhhZGRlOGIwZjRjYTA5NDhiMDQ5Y2YzZTNlODY4MGZmNzNjMyBsZWdhY3ktdHJ1bmsKKzMxNzg4IDRjYWZhNTE0MTAxMjUyZDU5MTdkOTE2MDY0MGM4M2ZlNDViMjE2NjUgbGVnYWN5LXRydW5rCiszMTc4OSA0N2NiODVjZGQ1ZjMxZGU4YjVmZjdlMWUzYTk3YjUyODc4YTBjYzQ4IGxlZ2FjeS10cnVuaworMzE3OTAgZDQ0ZjljYzI3MjkwNTU1NTMyZTFmZWVlODIzY2JhMTJlM2Y5YzVkOCBsZWdhY3ktdHJ1bmsKKzMxNzkxIDI3MWJhYTg4NDI0YmUyOWE4ODNhNTIxOWRkYjc5MzMxYWFhY2FhNzEgbGVnYWN5LXRydW5rCiszMTc5MiA2MjczYTE1OGZiMGFjZDcxYzc1Yjc4MThlMmU4MTI2ZjYyMzExMDliIGxlZ2FjeS10cnVuaworMzE3OTMgYjVkNmMzOGViMTYzNmZlNjM5MDgwMzJjNzFhZGNjN2ZjM2NiYjYwZiBsZWdhY3ktdHJ1bmsKKzMxNzk0IDQ4YTYxYTRiNzNhMTBiZTE1ODAwMGJhOWM0ZmEwNjczMWZkOThhZDIgbGVnYWN5LXRydW5rCiszMTc5NSAzMGZhMWY2MWIyMzFhN2VkNmI4M2I0YTgwYWViNmNlMmViMzYxMzYyIGxlZ2FjeS10cnVuaworMzE3OTYgOGYyM2QzOWE5YTMzODdhNjI4N2RiYzg4NmIzNDYxMWJmNDg2OGFhMCBsZWdhY3ktdHJ1bmsKKzMxNzk3IGVhNzAwMzJhMjRiMTAyNDIxZmRjMzMyNGFiMzMxYWZjZjIwNjQ0NTggbGVnYWN5LXRydW5rCiszMTc5OCAwMDg5MmFmZmI2MGFlODRmNjBkOGNkOWY3NDUzMzZkNzFhMzY4NGY3IGxlZ2FjeS10cnVuaworMzE3OTkgZmUxZDU3MWMzZjgwM2UzNzNmMDk5ZDZlZGNlMDMwZWU2ZDQwMzVjMCBsZWdhY3ktdHJ1bmsKKzMxODAwIGYxM2FkYzAwYzE2NTIwMzQ3YTkwZDBhOGI2MmM5NjUyZjUyODhmNTcgbGVnYWN5LXRydW5rCiszMTgwMSAwNTc0MzI2Yzc4YmJhZTQ2YjdlZmQ4NzZlYzc3NTQyNjNhMzBhMGZiIGxlZ2FjeS10cnVuaworMzE4MDIgNTg1NTkxNWIwMGY1ZTUxNDcxMzBkYjE5MDdkOGY0ZjkyYmE0M2UzMSBsZWdhY3ktdHJ1bmsKKzMxODAzIDVjM2FjYmYyMmEyNmY2NzJmYjBkODE0NzY5YjFmM2E5YjYwYjlmOTcgbGVnYWN5LXRydW5rCiszMTgwNCA2MjY5ZWFhZGQ0MWVmNGJiM2I4YjMwMzkzNmZjMzNkMTQzNDk5OWExIGxlZ2FjeS10cnVuaworMzE4MDUgZjk1ZGZiMzNkNzYyOTNjODA4OTExNGU5YTY3MThmNzNiM2ZhNjJjZSBsZWdhY3ktdHJ1bmsKKzMxODA2IGE1OWQ4ZTRjYjkwMzg2N2JmMWU3MDIwMDIwMWVjZTM5ZjViOGFkNjkgbGVnYWN5LXRydW5rCiszMTgwNyA0ZjY3OWFhNjIzYzJmNmMyNTYzZDRmZGRmMDc4OTc0MTUwNTYxZWJlIGxlZ2FjeS10cnVuaworMzE4MDggNGI2ZDdjNzU2OThhYzdiZjMxZjY3NGMwNDY4MDU4NGNjMmExM2E5YyBsZWdhY3ktdHJ1bmsKKzMxODA5IDZlZThkNWEzMGNiYzIyMjRhMWQ0MTJiYzU4ZGJkNzI2MzdiYmU1YTUgbGVnYWN5LXRydW5rCiszMTgxMCAzNjU1ZTkxYjNkZWFjZmYyY2ZjMWE1ZTQ1NzYzMzE0MTQ3ZGZkOGY5IGxlZ2FjeS10cnVuaworMzE4MTEgNGIxZmVmMzdhYzdiZDdhYThjMWI3NWZmNjg5ZGZiMTcxZjllZWY4YSBsZWdhY3ktdHJ1bmsKKzMxODEyIGQ3NjMwMTg1ODk0MWM5MGI4ZTc2ZDk4ZTgyYWIyMjJkN2M3MWVkYzUgbGVnYWN5LXRydW5rCiszMTgxMyBiMjQ2Y2EwMzNlM2VlN2Q4NDI1ZGFmM2M2MTY0ZmQ1ZGFkZDk4NWNiIGxlZ2FjeS10cnVuaworMzE4MTQgMDNkM2ZhM2UxZDRlNWNhNGZjNTc1NWViYTJhMjViMDJlNDEzNzUyMyBsZWdhY3ktdHJ1bmsKKzMxODE1IGZhMThkZjc0NmVjNTI1ZDc3MjZhNWJjYjVhZTVlMDE1YzVjYmFmNzkgbGVnYWN5LXRydW5rCiszMTgxNiA1YzQ2Yzk1ODdhMmZhMzE3OGVmMWMwYmVmNzM2MGNkODkzZjNlNDk3IGxlZ2FjeS10cnVuaworMzE4MTcgOTI3YTk4MzNmODNiNzlhZTFiYTk4NzJiZmNhOGZhM2FlMTJhMTkyNiBsZWdhY3ktdHJ1bmsKKzMxODE4IDZjMDY2N2FjOTM5ZWRkM2Y1YzA2ZmM3YTJjOWMyM2ZhMDdkOWIxZjggbGVnYWN5LXRydW5rCiszMTgxOSA5MmI5MzAxMzAwYzM5NjgwNWVhMWZkNDI5NjFiYTdkZjJjMTE5Mjk0IGxlZ2FjeS10cnVuaworMzE4MjAgMjc1MWM1ZWY5OGJlNmNjOTc5MzNkMDg0YWQ4ZmVlZTdkNGViNmQxOSBsZWdhY3ktdHJ1bmsKKzMxODIxIGE0ZTdlZGM2OTA1NGQ1MDNiZjIzMGFiZTY4NTQ3MGJlMDk5MWJiODQgbGVnYWN5LXRydW5rCiszMTgyMiAxNTY5MTFkYmEzMDZjMTI3ODMyYzdkNzljNGZlNzJmOGJlOGY1OGVlIGxlZ2FjeS10cnVuaworMzE4MjMgYmVhM2QxZmRhM2RjYjAyMTEyMWY3YmY2YmRkY2VlZWQ3NWJhYTQ0OSBsZWdhY3ktdHJ1bmsKKzMxODI0IGI3OGQ4YmI1ZWJkNzE0NzRkYTc5OWQwODU3YjZlZmRlMDA3MjI4MTQgbGVnYWN5LXRydW5rCiszMTgyNSBlMjhiNDhmYzkwMGJmZGFhZDMzMTIxZjFiZThiZTg0ZjhkNzNlOWIzIGxlZ2FjeS10cnVuaworMzE4MjYgZmM5MjlkNzFhNDUwZjQzOGQ4ODIzYzNjMTRlODRhZDM5ZDhjMGQyNCBsZWdhY3ktdHJ1bmsKKzMxODI3IDY1YjcyMjY3MzgyOTA5NzM3ZGIzZjU2MzA5OGZkN2Y4ZmRkNmVlYmQgbGVnYWN5LXRydW5rCiszMTgyOCBmZDliODgyYmUwNzk3NWJmZmQ1YmIyNzQ5OGU0NDdmMDEyM2NkZGQzIGxlZ2FjeS10cnVuaworMzE4MjkgN2YwYmZiZWM5ODdmYTBkZjI3ZWVkMDZhMGEwY2ZkZDlhMWNmMTVlOSBsZWdhY3ktdHJ1bmsKKzMxODMwIDMzNjU2NjRiODI5NDJiYWM2NjVjOTczMTIwM2UxYmRjOWQ2ZTAxYTggbGVnYWN5LXRydW5rCiszMTgzMSA0YzY0NGE2MGMzMGQ5Mzg1NWRmMWE4YmQ0MDNkYzFmZWM3ZmE3OWJhIGxlZ2FjeS10cnVuaworMzE4MzIgYjEzNTZkYmFhYjlhMmI5NmVmYjZhODExODI4MTZjOGQwMWMzNmU1NSBsZWdhY3ktdHJ1bmsKKzMxODMzIGZiYWUyMGEyZTExNmRlZWY3YWYwOTQ0ZDRlNGU1ZDYxMWY4MDM2YjcgbGVnYWN5LXRydW5rCiszMTgzNCAxMDI4ZGM2ODA3YTVmOTgwNWNiYTliNjI3MGMxM2FiMDFkOWMyYmRjIGxlZ2FjeS10cnVuaworMzE4MzUgNDU5YzQyOTFmNzU5NjMwZDdhMTVlOTMzNzQ2ZWNmODUwMWI1NzVjZSBsZWdhY3ktdHJ1bmsKKzMxODM2IDZhMmQ5YWU0MzBiZWE2YzFmMzUyMDgxODY1YTYyNGIyMDZhNmY2OTQgbGVnYWN5LXRydW5rCiszMTgzNyBhMjk1N2ZmY2I1OTg2NWQyZjYwNzc0ZTBkNGY4YmU2ZTVlMWIwODYzIGxlZ2FjeS10cnVuaworMzE4MzggZWY1MjVjOTliNGVlZDY2ODUwY2QzYzZkNDg0MmEzNGZiZTc0NjhhYSBsZWdhY3ktdHJ1bmsKKzMxODM5IDUxYzc0Yjc5NWU5ZTk0OTRjMDlmZDc3MTZmZDAwNmQzY2FkYzY1OWYgbGVnYWN5LXRydW5rCiszMTg0MCAxNjJlZDJhOWNjMGM4YTI3ZTY4MzYzMTNlOWZhNWZjMTAwZTAxNWZjIGxlZ2FjeS10cnVuaworMzE4NDEgN2ZjM2U2NGQxNDI0MTUzMmNlNjNkMjgzZGZkNjMzOGExMWNhYzNkNCBsZWdhY3ktdHJ1bmsKKzMxODQyIDczODE0Y2I1ODI3ZjhjNWQyMzRiMzc5NDI4ZmU3ODkyOGUyOGFhYmQgbGVnYWN5LXRydW5rCiszMTg0MyA4ZDEwZjY4ZDdjM2IwYWYyOTFjMTViODFlNTI2NjY4ZDA2YzY4ZjJhIGxlZ2FjeS10cnVuaworMzE4NDUgYThkMjRiOTdjODEzYjIwZGRjNGE2MzY0ZmNiZDZkZmMyMjhlY2MyNiBsZWdhY3ktdHJ1bmsKKzMxODQ2IGI5NzJiZTgwNjQ3N2YxMzFhZWNhZDFhOTY2ZWVkNWI3MTE1ZDI3ZjUgbGVnYWN5LXRydW5rCiszMTg0NyBjOWZjMzVkMGEzZWJhYmYwZDRjMDE0ODVhYjRhMjc1MjNiMjIxNjlkIGxlZ2FjeS10cnVuaworMzE4NDggMjI4OTdjYTEwMjg4ZGQxYzJkNTY2YTE1OTdlYTk5NTY1YjU1NzRhMCBsZWdhY3ktdHJ1bmsKKzMxODQ5IDVhNGM3ZTZmMDA4ZTIxMmYzZjA2MGNjNTQ4YjdlMWVlMDRjOGU2NDYgcmVsZWFzZTIyLW1haW50CiszMTg1MCBlNDA1Mjc3Njk4NjRjYjI5ZDY5MWJiMWNlMzliMjc4MDNjZGQ5MWJiIHJlbGVhc2UyMi1tYWludAorMzE4NTEgMTcxZjE4NjJkZWE5NTczNTRlNDFjMWY2ODkzYzk0ODBiODJmNGVkNyByZWxlYXNlMjItbWFpbnQKKzMxODUyIDY1ZGQ5NjEyYTc0ODA4MDE2MTEwN2I2NDQ3YmZkNTVjZDkzODIzM2QgbGVnYWN5LXRydW5rCiszMTg1NCAwYmExN2U5M2YxMzlmNTc0ZmUzYTViMzAyMzJkNzUzODVjZWE4NmQ2IGxlZ2FjeS10cnVuaworMzE4NTUgNzY1NGMyNGRlY2M0ZWRiOWM0NDJiZTc5ZGMxODk5MDE1YTQ2OGRlYSBsZWdhY3ktdHJ1bmsKKzMxODU2IDJjMjJiNWMwOWE1OGRjNjE5M2UyYTc0ZTdhMDNkNzEzYzViZWM4OTIgbGVnYWN5LXRydW5rCiszMTg1NyBhYmZlNGIzODAzMDVlZDhjMmE5MTdiZTA5M2NhMjMzYjliMjI0ZWQ1IGxlZ2FjeS10cnVuaworMzE4NTggMTQzMTZkZjFjMjk4YjcxNjUzZGM3NTRiNTFkMDg0MDI2YjI3MmNlMCBsZWdhY3ktdHJ1bmsKKzMxODU5IDk2MDJjNjY0ZWQ3YTJjYmU2ODFmMjAxOWVkYWRiNjc1OTc3NjEyYTEgbGVnYWN5LXRydW5rCiszMTg2MCA3MzQzNGZhOWQyODUyYjc5Yzk5OWQyNzg3YzRjZTFhMzliYmY2ZmMwIGxlZ2FjeS10cnVuaworMzE4NjEgOGMwODI5MzZkYWFmZGFlZTMyMzk1N2FjZDlkZWM1ZjZjYWRhOGIzOCBsZWdhY3ktdHJ1bmsKKzMxODYyIDQ3MDUwNGVmNTc4YjIwNTM2Njg1OGFhNDdhMDIwOWQ5YWE2NGExZmYgbGVnYWN5LXRydW5rCiszMTg2MyBiMTRkNjc0MWY0OTY1MWI4NmY2MjAwMDFlZDNiNjYwMGZiOTM1OWMzIGxlZ2FjeS10cnVuaworMzE4NjQgNzAyZTU0N2YzMWUwZDUyNWRmNTU0Y2IzZWEwNDU4N2YwODAxOTcwYiBsZWdhY3ktdHJ1bmsKKzMxODY1IDIyNmM1YmRkMTYwYjk1YWU3YzcwZmRiODFhZmE5ODYzNDUyMDY4Y2EgbGVnYWN5LXRydW5rCiszMTg2NiAwMGJkYTU2ZjU0MzMwNjNjZmJlYzFhNTU3MTIwM2YzYmE3MmI4ZDMzIGxlZ2FjeS10cnVuaworMzE4NjcgOWMzNTcyYTU1NzVmOTk3MzIyNGQ5MDUxYmE4NzQ0ZmZjYjJkMmVlZCBsZWdhY3ktdHJ1bmsKKzMxODY4IDVjOWRjZGM3ZmU4ZDY5YjNiMmY0YzNlN2ExZGExOGFmN2JkMzg0NGMgbGVnYWN5LXRydW5rCiszMTg2OSA0ZjQ3ZGYyMDQxNWM3MWViOTkwOTYxZGNlNjE0ZmYzMzZmMzY4MzIxIGxlZ2FjeS10cnVuaworMzE4NzAgMjQ4OWQyMjIyOGRiYmM5N2RkMTAxYTE4ZGI2YzdiMWYwNmE5YjgxZiBsZWdhY3ktdHJ1bmsKKzMxODcxIGVmNTVmMjIzMmExMGQ3MzFiZGVhZTA3ZWZkYzQ4Yzg2MGZmYWJhYzAgbGVnYWN5LXRydW5rCiszMTg3MiA5MGY3ZmJjYjM3MDY5NTdlZjc2OThkODY0ODBiNGMwMjNkYWIyZjAzIHJlbGVhc2UyMi1tYWludAorMzE4NzMgOTE4OGNiOGUxOTFiNDg4Y2E1MzBiZGZjNTBlMzBlNTdmNzk1NDA5ZSBsZWdhY3ktdHJ1bmsKKzMxODc0IDkyNzhiMWM4MGE2N2YwY2ZjZWFkMjk1ZDRjYjQ5NTcyMjY1MzhlZmMgbGVnYWN5LXRydW5rCiszMTg3NSAzZTE5ZTNiNzJkOWIxYjk3NmRjYzQ3MTY1NTMwMDI5NTBjZWExOGJmIGxlZ2FjeS10cnVuaworMzE4NzYgMDIzZDNiNTBlNTk3OTc0ZWIzZDQxYzJhN2JhZDNkNGNlNjMzMmI3ZiBsZWdhY3ktdHJ1bmsKKzMxODc3IGJjMzcwYjg3NTNmMTI2MGEwZjRkNjY5YjE2YmI0ZGY1YzEzYmYxNjQgcmVsZWFzZTIyLW1haW50CiszMTg3OCAzNjBhNTc4MDU2NzZkZDIzYWI5YTY0MGVhZjg0ODg0ZGYyOGQxMGY5IGxlZ2FjeS10cnVuaworMzE4NzkgZmQ1ZWY3MDAzNDY5YTYzMTg2NDU4Y2ExN2UxYWJhMmNhYzRiZWVmNiBsZWdhY3ktdHJ1bmsKKzMxODgwIDkyZGFmOGIwNmFiYzE4NjJmNWVmZTY4YzUxMDc4ZTA0NmYyZTlhOWIgbGVnYWN5LXRydW5rCiszMTg4MSA5ZWJjNjFiOWU4YmRiYTY1YTM5MTUyZWM1MjU1NTIxNTAzMWU3N2QyIGxlZ2FjeS10cnVuaworMzE4ODIgNjdiMjJmYTRhOGZlNWY0NjRlZmJmY2JiY2Q5MzRiZWZjZGE2ZmUwNCBsZWdhY3ktdHJ1bmsKKzMxODgzIDRlMjIxMzY4YWY3MDdiNGIxNTNhYmY3YTg2ZmU3OWZkMDQwZjA1YjAgbGVnYWN5LXRydW5rCiszMTg4NCA4NTA2MjZkNDc1NzQ5ZDQ2ZGVlYjc0NjU4YmEyZmM4OTRjNGQ3ZjY5IGxlZ2FjeS10cnVuaworMzE4ODUgMzM1OGRmYjFiMThiNDIyZTBhOWJlYzg0MDE2ZDcwYmRjYzI2NjIyZSBsZWdhY3ktdHJ1bmsKKzMxODg2IDE4NThiY2I2MTcwNjgyYzNiNzdlM2I0ZThiODcxMmJiOTk3YTUyODYgbGVnYWN5LXRydW5rCiszMTg4NyBjZGQ1ZDBjZmE2ZGNlMzU4ZDkyNmI5ZWU4MzYxYzBlYjFiZTc0Y2E3IGxlZ2FjeS10cnVuaworMzE4ODggNjJkZjE3ZTUwMWRjNjgzYTM2MjQ4ODlmMGU1ZDUyODA2NzllMDA3MCByZWxlYXNlMjItbWFpbnQKKzMxODg5IDAyY2UyMjgzMGFiOTYwOTc5YTAyNjg1ZDAyMGM2ZTg5ZmViY2I2NzEgbGVnYWN5LXRydW5rCiszMTg5MCBiOTFhODFkNjgwNjgwZTAxZmQ2MTQxNzNhYjE1NWZmNmM2NzkyMTcyIGxlZ2FjeS10cnVuaworMzE4OTEgMjkxYjlkODY2ZWNmMmE5YzhkN2YzZWZkZGI3OTg1OWNiODFkMGJjMiByZWxlYXNlMjItbWFpbnQKKzMxODkyIGVlYzNmZDE2NGE3ZGI4ZGQ0YzdmZTg4YzE5ZTIyNDBkZmU3NDMxZDAgcmVsZWFzZTIyLW1haW50CiszMTg5MyA5ZjI4N2U1ZWIwMzc3NTI0OWVlMWQ0OGEyMzk5N2I0MTIzZGVkZDg5IGxlZ2FjeS10cnVuaworMzE4OTQgNzAwMDNiMGNiODM3OTUyMGQ2ODAyNDFjZmU4MDY5NTE0OWYzZTYyZSBsZWdhY3ktdHJ1bmsKKzMxODk1IGI1NmQxMGVkMzNjNWU4NWFmMmVlZGYzY2E1YTAwYmExOTUyYjQxNjkgbGVnYWN5LXRydW5rCiszMTg5NiA5MGYxN2MzNzRmNTkyNzI4ZTg5ZTQ5OWEwNjY0N2MzMjRkNDIwZTliIGxlZ2FjeS10cnVuaworMzE4OTcgMzQzNGQxYjkyMDZhNWJkOGRlOTc0YzFhNTAwYmE3Zjk1ODQ0N2Q4MyByZWxlYXNlMjItbWFpbnQKKzMxODk4IGNjMzVlZDJiMjZhOGIyYjUwNDMzNTQ0YzMwZDMyNmM1MmZlNTUyMzEgbGVnYWN5LXRydW5rCiszMTg5OSA1Y2YxZjJmMzBkYmQ2Y2M0MDY1YjM0ZDVlNTljNmZkYzViYjZmN2FmIGxlZ2FjeS10cnVuaworMzE5MDAgNzk3OTA5NDkyYzM4NjcyMDQ0MzdkMWJlNWFiMWM5ZmNjNGRmNjM4ZCBsZWdhY3ktdHJ1bmsKKzMxOTAxIDI2ODA4YWM3ZWU1MWFlOTkyYTlhMGE3ZWY3YmRlNzQwMzM2ZjM1ZDAgbGVnYWN5LXRydW5rCiszMTkwMiA5ODBkNmUwMTEyY2UxZTQ2NDNkNGRkMWFjMmM5N2ZjZmM1YjdmODRlIGxlZ2FjeS10cnVuaworMzE5MDMgNjFiMGZmOThkOTVkZDM4MWUxY2Q3M2RhOWYzMDQ5MmJjNGQ2ZTY4NyBsZWdhY3ktdHJ1bmsKKzMxOTA0IDE0MzkxNTc3NmNiYzJmZjMxNzYyZTNhNTc5MjRhMDEzMjVmNTQ3OWUgbGVnYWN5LXRydW5rCiszMTkwNSBmNWM5N2I2NWY5ZTg1Njg1NzljYjkzMjU5Yjc0NDE3YWUxNzhjNDVkIGxlZ2FjeS10cnVuaworMzE5MDYgMWZjMWEzMDVlMzk5OWE0NDEwODMwY2Q0N2UyMDVhNmNiNDkxYjM0YiBsZWdhY3ktdHJ1bmsKKzMxOTA3IGI3MzQwYjA5NTU1ZDMwYmU4YmQzNGRmNWVlZWU4MjBiNTA2Yjk0MjkgbGVnYWN5LXRydW5rCiszMTkwOCAzMDk2ODk5Zjc3NGZlYWM5MjgzYWE5YjY1OGMzZTM5N2YxYjExMWQ0IGxlZ2FjeS10cnVuaworMzE5MDkgZTM2ZmY0OTJjYmIxNjIzYzBkZDdjMTYzMDhiZDI3NTRkZjNhOGVjYiBsZWdhY3ktdHJ1bmsKKzMxOTEwIGQ1NzQyMTYyMzQ0OWI3YWIwOTJhOWVmMTBiYzI0YTliMzI3MTc1ZjEgbGVnYWN5LXRydW5rCiszMTkxMSA0NTA1NGJmNTkyZTVlMDNlZDYxNzEzZjViY2QyMzM2NGNhNTFlZTVlIGxlZ2FjeS10cnVuaworMzE5MTIgZGQ4M2E5YTUzZGJmYjkxZjg5NTM5MTUxZTg2ZTliYjI0NDI0MThmMSBsZWdhY3ktdHJ1bmsKKzMxOTEzIGQzNGJjYjNjYjIxNmVhOTY5NjkzYWZiN2M2ZTFjODhiMzVkZDlmM2UgbGVnYWN5LXRydW5rCiszMTkxNCBlZGRmNTlmNWNjNTg0MTQ3N2RlNjIyMmU4ZTcxYjQ1ZDJkYTBlNzAzIGxlZ2FjeS10cnVuaworMzE5MTUgM2ZmYmJiNGY0OGRhNjMzZjJlYTQzNzIzYWIyNWUxMzNmNTQ5MDgyMSBsZWdhY3ktdHJ1bmsKKzMxOTE2IDhkN2ZmZTRjYWFkOWFjYWM4NDFjNThlOGQyZDMxYWFkZDU0OWEyYTAgbGVnYWN5LXRydW5rCiszMTkxNyAzNGUyMmNkZmFhZDI0NjM4NTM4MDQ4MTc2ODEyM2E5MjgzODFhOWYxIGxlZ2FjeS10cnVuaworMzE5MTggYzdjZWI5NTYwZWIwZTFiYWExOTdmZWMwMGNiMjJmODk1OWEwMzgyNiBsZWdhY3ktdHJ1bmsKKzMxOTE5IDcyMjQ3ZWUyMjY1Mzc0Y2M1NWI5MGM4ODI1ZjkxOTBjYzZjYmRlNjYgbGVnYWN5LXRydW5rCiszMTkyMCA2ZmRkY2RkMTFmNDlmYWRjMGM3OGFlNDkwMmY1OGYxYTgwYmNiYjU3IGxlZ2FjeS10cnVuaworMzE5MjEgMzFhNTExZjc0YjI4MTZiMTBiY2I4MWY5M2QzYjI4MTY4YjRlNGVlMyBsZWdhY3ktdHJ1bmsKKzMxOTIyIGJhYjJiMjg2M2E2ZTA0YzAzOGY0MzNkZmI1MzA1MWZiNWNjNzE2NWYgbGVnYWN5LXRydW5rCiszMTkyMyA4ZTI0NzNhZDdjMGNiYWIzZjZjYjAwZDliZjYxM2FkN2IxNGZkNDYzIGxlZ2FjeS10cnVuaworMzE5MjQgYzk3YzEwNGMyZDI0OTZjOGIxZDE1ZDVjNzMzZjk2YmM4OTMwYzkxYiBsZWdhY3ktdHJ1bmsKKzMxOTI1IDlhYWM4NzBmMDNhMjk5MDJjMWY4M2JiMTVkODcwNjJkZmEwMGE3YWQgbGVnYWN5LXRydW5rCiszMTkyNiBkZTAxMzI3NjU4NGFlYmVlNDljNjcwYzc3YmQ0MDA1ZTVmNGFjNjUzIGxlZ2FjeS10cnVuaworMzE5MjcgZmY3OGMzYzNlYmM0NjZkMDI5MGY5MWFhOWE5NWQwNTYxMmI4YjhiNSBsZWdhY3ktdHJ1bmsKKzMxOTI4IGViNDgyNzhjMmUxMDI1Y2IwODY3MzViN2I2NmNkNDAyODE4OTcwYWQgbGVnYWN5LXRydW5rCiszMTkyOSA3Zjk4MWRkN2ZhOGQyZGNhNDVjOTk1NzM4M2ZkYmQ5YzAzMzMzODYxIGxlZ2FjeS10cnVuaworMzE5MzAgZmJhZTY0NTUxM2Q3NDczNGYxYmJiNTdiODI4MDU5ZDUzYjRhNGU4YiBsZWdhY3ktdHJ1bmsKKzMxOTMxIDc3MDg5MmQ3OGYyYmI3OTg2YTFlMjc1NzE0MzQzNzFhYTNmMDU2YzcgbGVnYWN5LXRydW5rCiszMTkzMyA0NTg1NGZjNzA3ZDY0OTk0MmI2ODEwMjBiMWFkNGZiZDQ4YjNjZDE0IHJlbGVhc2UyMi1tYWludAorMzE5MzQgMzA3NDhjMTVhNDgxYWY3NzE2MzFmZmMzYjQ1YTA3ODMxNTlmMGJmMCBsZWdhY3ktdHJ1bmsKKzMxOTM1IGUzMzNkNzY1ZjQxZWUxZjM5NWFhMzk5NzFiYWM0NDMwZDBhZDg4NDMgcmVsZWFzZTIyLW1haW50CiszMTkzNiBkODc3ZmZhNGY3ZjIyYWM1ZmU2ZWU0OWExNDU1YTM0MmM2NTAwNzI5IGxlZ2FjeS10cnVuaworMzE5MzcgY2U0YjkyOGM4MzQwYTEyMjhhYTkwNDc5NmU3ZDVkNTVjNThkN2FlZSBsZWdhY3ktdHJ1bmsKKzMxOTM4IDc5NWQ2MTQ0ZDJlZTRjZDg0MzAzOWY1NTBlN2IxMWJhN2UzMGI2OTUgbGVnYWN5LXRydW5rCiszMTkzOSA3ZGEyZWUzYTljNDNiM2I5ZjI0MzgyYWRjYzIyZDM0YjliNGE1OTVhIGxlZ2FjeS10cnVuaworMzE5NDAgY2E0M2FiYjA3NjM4Njg3OTMwZDdmMGY4MTQ1MGVlYzcyZGM2ZTg4OSBsZWdhY3ktdHJ1bmsKKzMxOTQxIGUwZWJmYTJmYjkzNjlkYmM4Yzc0NjQyMWYxZmFiMzM0MzZmMmY5ZjIgcmVsZWFzZTIyLW1haW50CiszMTk0MiBmNmJmNzgxNzMxZDQyNTY0ZGI4ZTZjZDczN2VmODNkOWVhMDUxYzU4IGxlZ2FjeS10cnVuaworMzE5NDMgZjk5Y2Y5YmZiYmFmNWJlZWZmM2M2MjlhNzFjMzg5ZDQxOTJlNjhhNSBsZWdhY3ktdHJ1bmsKKzMxOTQ0IGI4NzIyOTc0MDZhYTljOWZiODZlYzE2NGM2Y2ZkOGU3YjU3MzcxMjkgbGVnYWN5LXRydW5rCiszMTk0NSBiMjM0MzQyMTFkMDFkZDgwMGYyMWZkOTE2M2ViOWY2MTk3ZWRlOWQ3IGxlZ2FjeS10cnVuaworMzE5NDYgOTQ2MDFkOGZhNTFkYjY4ZDhiNDJmOWFiMjQ4NDVkNTdkZTBlNzdhMCBsZWdhY3ktdHJ1bmsKKzMxOTQ3IDk4M2U5MjkxYTdiNDYxZTJhZDY2YTQwNzU3NjEwZDhjY2ZjY2M0ZDcgbGVnYWN5LXRydW5rCiszMTk0OCBmODEyMzljMTJjNjBmODA2MjIzMTllNmFlNTg1OGU2YjE2ZWM1ZWU0IGxlZ2FjeS10cnVuaworMzE5NDkgNGVkZTU3YTQyYzYyMGIyZDFlMDBlNTRiZjYzMjlkMzUxOWM3MzI1NSBsZWdhY3ktdHJ1bmsKKzMxOTUwIDMzMzE5NDU4ZmU5OTViZWRiZTVmMjg2ZTc5MzkyYzkwNjY4NzJkNjkgbGVnYWN5LXRydW5rCiszMTk1MSAwNzYxN2QwOTA0YTYzZjM2MTdlYjE5YWI0ZWQ0YTViZWJmZjg3YjY5IGxlZ2FjeS10cnVuaworMzE5NTIgNWVlMjlmMTM2NGYzMzU3ODE1ZjI4YzI0YmExZDY4OWU1N2FjMDc5MiBsZWdhY3ktdHJ1bmsKKzMxOTUzIDE2YWE3MmE4YzI4MWVmMjBhNTFkYjdhOGNiM2YwNGQyOGMzMTdkNjEgbGVnYWN5LXRydW5rCiszMTk1NCBiYzkwNzZiMDE2OTQ5OGFhNTNiMzc0NDc2ZjA4NTU0Yzc0MGZjZWZmIHJlbGVhc2UyMi1tYWludAorMzE5NTUgMWUwZTY3OTQ3MTc1OGI1OWYwNjU3ZTRmNjVmNGFjYzVmYzI3Zjk4YyByZWxlYXNlMjItbWFpbnQKKzMxOTU2IGQ1NjI4MmMyOGExZWZjZGY1ZWNjZDAxMTkzNDU0MGExMDJkNDRkZGMgbGVnYWN5LXRydW5rCiszMTk1NyA0ZjAzOGQzYTg4NzhjYmY3NDk1YjcyNGE1MWRlYWJiMjU3NDA1MjI2IGxlZ2FjeS10cnVuaworMzE5NTggYTIxMTBjYjE2NWYxMTFiZmZlOTQ1YjQ0YzMxNzJmNTE3MDA3YzhmMCBsZWdhY3ktdHJ1bmsKKzMxOTU5IDY2NDIxMmE2ZTI4M2UyYTJiYjgxMzRhMTI1ZDViYzdiOWNmMzhkNTMgbGVnYWN5LXRydW5rCiszMTk2MCBlZTk0YTk4Y2YzOTZjMDQ0NWEzOGJhOTc2ZjZhYWU3MjA5YTRjNWZkIGxlZ2FjeS10cnVuaworMzE5NjEgYzZjMmYyNmRmNjViMDRlY2RkZjcxNzIyZmU3ZjU4ZTU2Y2ZlNjIxNSBsZWdhY3ktdHJ1bmsKKzMxOTYyIDVmNTM2NGFjNGFkYmM0N2MwZGM4MTQ5NGZkMmZhNmJkZmM1NTU0N2QgbGVnYWN5LXRydW5rCiszMTk2MyBmMDBjZDY5M2Q0ZTAyZDMyN2ExNmE0NzUwNmU1M2NjYmI1ZjQyYjY3IGFzdC1icmFuY2gKKzMxOTY0IGU1MzA0M2JkYjhmMjNhZDRkOTE4ZDhhZDMzOGVhYWUwYTEyNmI5OTggYXN0LWJyYW5jaAorMzE5NjUgY2I4ZDQyN2FmZDIxMTU3MmNkNmM4MTdjZmM0YWQwNWZkYzIzNjk3MiBhc3QtYnJhbmNoCiszMTk2NiBmYTM1YzhiNDViMjQ1NmQ1MzJhNGYwMGIxOTZiY2M0ZjA2NDhkODBjIGFzdC1icmFuY2gKKzMxOTY3IGQxZDYwYzJlMGFlOTkzYTZjMThhMDllNjE0ZDM3OTMyYzdhMjk3MWEgYXN0LWJyYW5jaAorMzE5NjggMzA1YzE3NTExYTg2OWM5NmU3MjNiMDk0ODE2YzhkNjM5ZTVkNTdkMCBhc3QtYnJhbmNoCiszMTk2OSA1NWQwZTk5OGJjNDZjNDc1MGViZTY4Yjg4N2U4NGJmNGQyOGIzYzJiIGFzdC1icmFuY2gKKzMxOTcwIDczNjVmMTMwZjE1ODNkYTZmYzRiNzk4MDE3MmNkODJkODY1MTM3N2EgYXN0LWJyYW5jaAorMzE5NzEgOTA3M2Y4ZmY3MjU2MmFjNzk3MWE4MzFlOTg4ZmQ0Y2UwMjRjNjNjNyBhc3QtYnJhbmNoCiszMTk3MiA2M2VkODUyOTA0MTMzNjA5ODg5ODBlZjMzNmY3YmIwNGVlMzgyMzQxIGxlZ2FjeS10cnVuaworMzE5NzMgNWVmNjEzMmYzY2FiYzlkZGUxYTgwYzIwNWY0NDcxZjRiNDBiYTUxYyBjYWNoZS1hdHRyLWJyYW5jaAorMzE5NzUgZWM4MDNjYzU3MTg1MTdlMjY1OThlNTNhZTBmMWE3YThlN2RlOTQzNyBhc3QtYnJhbmNoCiszMTk3NiA1YjE1MmFhYzgxM2Q3ZGIwYmUwZWZhNWY5MmNkNTQwYTUwZjZhZWQxIGFzdC1icmFuY2gKKzMxOTc3IDhmZmZhNmQxNTQ0YTg0MzVlNDAwYTE4Y2IzNTE5ZTkyMTEyYzg3ZGMgYXN0LWJyYW5jaAorMzE5NzggZGNkYzQ1MTc0MGZhYjRiOTU0MjI5OWQxYjI5ZmE3OTE5ZWZlMjgwMyBsZWdhY3ktdHJ1bmsKKzMxOTc5IGYzNjJjOWFlZGYxMzRhNWFhNDU2OTk2MjgyNThkOWQzNTUxNWEwNTAgYXN0LWJyYW5jaAorMzE5ODAgNzM2N2EzODRhNzQ1NTU4YTcwNzAwMjYxNjkwOTdhMGU4ZmE2MmVhZCBhc3QtYnJhbmNoCiszMTk4MSAxMWQ4MjdkOTM5MDQyOWI4YjE2NmY0Yjc5ZTQyZGNhMDY1NGRkNGU5IGFzdC1icmFuY2gKKzMxOTgyIDYzM2E0YmJkNzk3ZTE3ZWU4OWU2NDFjZmJhOGQ1MDI2Y2Y5NWI3YTMgYXN0LWJyYW5jaAorMzE5ODMgNzU2Zjk4N2MzNTkwMTNiOTY2MWMzN2IzMDk2OTEzNWQ3ZDViZGY1NCBhc3QtYnJhbmNoCiszMTk4NCAzNTBlYTI2ZTdmZDk1ZTllODEzYTJiNDllNmQ2YTc5NjQyNjczNDIxIGFzdC1icmFuY2gKKzMxOTg1IDIzMGNjYjllNTAwMGVhMzJhODhmNGMxODIzNmIyYmEyOGExYjRkZWIgYXN0LWJyYW5jaAorMzE5ODYgMDdmM2ZhNjM5ZDhlYzZkNWU2NGUzZDkxZTg0ZmM2NTI3ZDk4MWI3ZSBhc3QtYnJhbmNoCiszMTk4NyBiMDlkYjBiOTZhNzZiYzI4YmU2NWQwZWNkOGM0NWY3MmI3NGY4NzdkIGxlZ2FjeS10cnVuaworMzE5ODggMmRhMTRmYzllNzJiY2FjOGI4N2Q2Y2VkNmVhOTYwNDY4ZTQzMTY3OSBhc3QtYnJhbmNoCiszMTk4OSBjMjViYjkxM2EyMzYzYmY2OTcyZTI3ZWVhZDNjYzU5MjIxMWFkMWQyIGFzdC1icmFuY2gKKzMxOTkwIDhlNjdiZWY0MjlhNDA4ZGQwODlhYjk0M2JlMDBiZWNmMjA4MTk1YjEgYXN0LWJyYW5jaAorMzE5OTEgMjVhM2NjMzc2NTcyYTY3OTBiZmUzZTBlZDMxZjIyOTVmMDg3NzNlZCBhc3QtYnJhbmNoCiszMTk5MiA5MDlmYmUyNDNmOTAyNjY3Yzk0MzBiYWY1MTM4ZDg2NmQ0MjVmZjA2IGFzdC1icmFuY2gKKzMxOTkzIDZlYTIwYjg2YWM4ZGNmNjQ4YjdkOWM0MmNkYjNmZjhhMzk2MTI5MTAgYXN0LWJyYW5jaAorMzE5OTQgZjZhMTE5MjAxNDZlYjU4M2NhZmYxOTZiMTBjY2U1MzI5NDQ4MjU2MCBhc3QtYnJhbmNoCiszMTk5NSA0YmNkYTYzZTEwNTQxYzU3NjFjY2ZiNDkxNTFlMTdmMWFhZjlhOTRkIGNhY2hlLWF0dHItYnJhbmNoCiszMTk5NiBmODRlMWY0ZDQzOGViMDhlNzU3ZTBhM2RlZWIxN2NhMTY1ZGIxZGY1IGFzdC1icmFuY2gKKzMxOTk3IDQ0OTYyMDIxOTU5ZjI4ZDEyMzQ2NjNmZjczYTNlNmIxM2Y4YjAwNTQgYXN0LWJyYW5jaAorMzE5OTggNjNhYzNkNjNiOWZlN2FkYTk0MGNjNGY2MTgwZDg3YzQ4OWFhMWY1NiBhc3QtYnJhbmNoCiszMTk5OSAxM2U1NjdhZjk0ZDhhOWMyMzM3MjRjZDEyNzE2YmNkMGNiZDJkMjYxIGNhY2hlLWF0dHItYnJhbmNoCiszMjAwMCBiYzc2NTdhYzQ2YmJlN2VhZjhhOGE0MmZlNjI3ZjNkMWI1NjdkN2RjIGFzdC1icmFuY2gKKzMyMDAxIDQxYjFmMjJmY2IwMTc1NmUzMDFjNjA4NTcxYmNmZjAzYjczNDJiYjMgYXN0LWJyYW5jaAorMzIwMDIgMTQ1NjYyMTgwMGQ0NTk2NTU0YTBjNTI3MGFkZGI4NTAwMGQwODJmOSBhc3QtYnJhbmNoCiszMjAwMyA4ZThhOTExM2ZhMmQ4NWQyNzQwYTYwZWNkMWY5NmQ1MzhlNmY3ZGJhIGFzdC1icmFuY2gKKzMyMDA0IDM2NGJmZTc5NDc4ZjRjYjU2ZDc2ZWM1ZTI0YmRkMzZhNWE0NzRhMDQgY2FjaGUtYXR0ci1icmFuY2gKKzMyMDA1IGFmMTc2NDg4N2FhMjNjNTljZTBmOTBkZTYwZGMxMDhkYzhiNDkzYzUgYXN0LWJyYW5jaAorMzIwMDYgM2VmZDgzNGQwZmM1MmJmMWFlMTgwYzZhNzEwNTRiMjVjNzdjY2IwYyBjYWNoZS1hdHRyLWJyYW5jaAorMzIwMDcgNzMzNzI5MjYxYzQxYTIyNjYwNTQxMGFlMjNhMTVjN2Q5Yjc5MDA3MSBsZWdhY3ktdHJ1bmsKKzMyMDA4IGIwY2NjNWI1ZjdlMmYyZTg0ZjdhNDQ0NWFmZTQ5ZmJkNjBlZDdjYzggY2FjaGUtYXR0ci1icmFuY2gKKzMyMDA5IDYzMmE2Y2FlMGJlNmYxNjRjZTA4ZGI5ZmRiMWYyYzllODIzMWRhZmIgbGVnYWN5LXRydW5rCiszMjAxMCBhYzcyMWVkNjE5MTQ0ZmJjYmRjYjlmMWZkYjUxZmFmYzg2MGI2MzA2IGxlZ2FjeS10cnVuaworMzIwMTEgZTA2YzU0MGRjMmUyZjEzYWE3NWJiOWU3NzIwMmYxN2E3MmQ3MDc4OSBsZWdhY3ktdHJ1bmsKKzMyMDEyIGZlYTI5MjkyYjkzMWI2NzY5Nzc3YTczODNmY2MwZWYwYTEzMGM0MjAgbGVnYWN5LXRydW5rCiszMjAxMyBmM2Q0Y2MyOTk2ZDJjODYxODNiZjMwNTU4OTI3MzdjN2JmZGY2MzVkIGxlZ2FjeS10cnVuaworMzIwMTQgZjUyOWRlY2Q4MjFmZWZmNDhiNGJkMzcyN2IxODM2MDU0NzA3M2NlZiBsZWdhY3ktdHJ1bmsKKzMyMDE1IGVkM2M3MDA4ZjkwZThjNWU0NGYyNzFiOWJhNjIwOTk3ZjNkNmY1MmUgbGVnYWN5LXRydW5rCiszMjAxNiAwY2Y0ZTMyNDAzODA3ZTBjOWYwNjU3ODYwNWY1MTFjNDBhZDY4ZGQwIGxlZ2FjeS10cnVuaworMzIwMTcgNTQ5NmI4NjFjODlhYjkyNzY3MzE1MDVlYjY4YzFmMzA5M2EzMjgyZCBsZWdhY3ktdHJ1bmsKKzMyMDE4IDcwYmQ4ZDhjODc3YmMzZDMwNTIyNDIwZGE4OTc2MjdmNDM3NGMzN2MgbGVnYWN5LXRydW5rCiszMjAxOSAwYzgwMmVlYTU2MTU3OGE5MjhjNjU1MTUxMjFkNDI1MDA5OGFhOWQzIGFzdC1icmFuY2gKKzMyMDIwIGI2ZTYyY2JiZGYzZGVkMjhhNTNmMDQxYTM3ZGI2MjAwNzZmNTkwNzggYXN0LWJyYW5jaAorMzIwMjEgYjQ1MWE5ZTZkOTQwOTBmYWY0MDE2NTY5ZDU0ZDlkNTk2NWU3MzAzZSBhc3QtYnJhbmNoCiszMjAyMiAzMzkyOGE1MWYyZjExMmJmMzhiM2NmZDJjMjQ1NzYzNTZlMTFiYmU4IGFzdC1icmFuY2gKKzMyMDIzIDFhMmZkMTA5ZjZiNjk2MTk0NzExYzFlODQyOWM1MmExNDExZmQyNTEgbGVnYWN5LXRydW5rCiszMjAyNCBiNTc1NDZiMzNjYjEzNjdmMDU0NjMxYTE0ZDEzYTQyZjA5ODc5MDIxIGFzdC1icmFuY2gKKzMyMDI1IGVjNjIyMWU5Yjc5YWNjNDZmMmEyZmMzYjM3YzljYWRiZmNmZDI5MTEgbGVnYWN5LXRydW5rCiszMjAyNiBhOTM1MTI3MDM4NWFhMDRhMWMwMjY3YTJlYTMwOGRlY2I5M2U3MmIxIGxlZ2FjeS10cnVuaworMzIwMjcgMzBkMWM4NDhkMmIwMTY4NThmZjA4ZDI2ZTNhMTRjMmQwYzExZmYwNCBsZWdhY3ktdHJ1bmsKKzMyMDI4IGQ2NTUzZDA4MjdhYjk2OGM3OTA4ZDM1YjFkZDMxZWJmZWUyNTdhNDMgYXN0LWJyYW5jaAorMzIwMjkgODRiMTYzNTIzY2Q0ZGExY2Q4NzI5YTBhMjAyNDUzZTkwZGYwZDk4MCBhc3QtYnJhbmNoCiszMjAzMCAxNTJiYWY0ZTM1NTU1MWU3MWFiYzU0OTJhNTgwZDQ3OTI4MDA5OTJkIGxlZ2FjeS10cnVuaworMzIwMzEgNzIxZTllNGVlYzFlZjA4ZTExMjcwZGRlMDFhZTEyOTM4YTYxZjc4ZiBsZWdhY3ktdHJ1bmsKKzMyMDMyIGZhNzk1ZjRlNmRjNzc0YmQ2MzQ5Y2VlMWJkZmZjNTI3YTgyM2E2ZGEgYXN0LWJyYW5jaAorMzIwMzMgZTVjMDA4OTU1MzgxMTEyNmNkNTI0MzE0ZjA0N2NlZWZjZTMwMWFlOSBsZWdhY3ktdHJ1bmsKKzMyMDM0IGE4ZWM3M2QxM2QwMzNjNWFmZGFmMWZkYWVlNTA5MjdmNThlYmE4NGYgYXN0LWJyYW5jaAorMzIwMzUgYmI4NWJlODM3NmI4ZWJiOTA3Yzk2M2I5MzRkZDEyODk2OTlmNTMyZSBhc3QtYnJhbmNoCiszMjAzNiA4YWRlOTBhZjYxNGMzOGMyZGVlZDM4MDlkZjMyNDFlZmZlN2QwNWYzIGxlZ2FjeS10cnVuaworMzIwMzcgMmVkN2MxYzQ1N2I5M2ZmZjdiYjQ3OGFiNjEwMWJmMGZhODU0OTZjNCBsZWdhY3ktdHJ1bmsKKzMyMDM4IDZjNjQ2MTZkMTdlZGJjOWJmNjc2M2NhMjFjYTI3ZWY0OTBiY2NjZmIgbGVnYWN5LXRydW5rCiszMjAzOSA5ZDNhMjVlOTkwNzViMDMzMTRhNTJjOTk3ZmZjYzU5ZDVjYmRlNTFmIGxlZ2FjeS10cnVuaworMzIwNDAgMWIxZDk5ZGRhMmExZDY0MWFkMWZlYWQ1MmI4M2QwYzYxMTUxN2QxOCByZWxlYXNlMjItbWFpbnQKKzMyMDQxIDQ0NTljZGNiZjUzODQyN2ViYmE1OTBlMmE2YmI3MmE1OWU5OTdhZWYgbGVnYWN5LXRydW5rCiszMjA0MiBjYjMzMmQ0NDkxNzE2ZTIzODcwNmZiMGIzYzJmZTcxNWRkMWQ3MDVlIGxlZ2FjeS10cnVuaworMzIwNDMgY2Q1NTg4NzYyNGIzMjVmOTFlNGQzYWU1NjJjNGY5NDNjNjE4YmM0MyBsZWdhY3ktdHJ1bmsKKzMyMDQ0IDIxMTQzNDg2Y2U0MGIzNzc3NzY4NGI5MTAwMTBmNzQzMDEyYWE5YzggbGVnYWN5LXRydW5rCiszMjA0NSAwNDE4MmU1YTYwYjExMjJjMjA3NjNmNDNiNjUyNzFlNWQ3NDg5NzFjIGxlZ2FjeS10cnVuaworMzIwNDYgMmUyMDY5MmRkMjg2ODEzNmZlOTUzMTQ0MTE2NTFjYTYzMGFjY2EzOCBsZWdhY3ktdHJ1bmsKKzMyMDQ3IGVlMWM3MDkwNTBiMjQ5NDYwNTdiMGJlZmRkMzk1YTdkMWViYzkxMGUgbGVnYWN5LXRydW5rCiszMjA0OCA2MzA0MDlmNDFjYzNmNTlhZmJlYTgzM2JlNjE4YjYyMDU4MWUyMDY1IHJlbGVhc2UyMi1tYWludAorMzIwNDkgODcxZGE3MDNlNGMwYTVjMjdjMWEyZGNmMTFiODRmOGIzNzliMjYwNiBsZWdhY3ktdHJ1bmsKKzMyMDUwIDVkZGJjOTc5YzY1NTk1MTgzMDhhNjM1YzM2NzA1NTFhOGRhNjk0ZDkgYXN0LWJyYW5jaAorMzIwNTEgZDcwMDFmYWRmZWZjMzc3NWViNDI1ZDg0YTAwYmRmMDllMTk1NjE2YiBsZWdhY3ktdHJ1bmsKKzMyMDUyIGQ5M2E4NDVjZTVjMDkwM2ZkZDFjMWYyZTE5YmUxMDJhMzFjNGE5YjMgbGVnYWN5LXRydW5rCiszMjA1MyA5MzRkYmViNDBiMzE3MTU3NWY3ZGExZDMxYWRhYmUyY2JjOGI2ZjdhIHJlbGVhc2UyMi1tYWludAorMzIwNTQgZjI1ODBjMmU3NGRkNzk2NjhlM2E3YjM5YWQ2MWMxZGQ3NGQ1MzkwNyBsZWdhY3ktdHJ1bmsKKzMyMDU1IDAwOTJiNjlmN2Y5OWFhNGFkYTRlZjAxMGM4YmYzOGUxMzYzYTExM2QgbGVnYWN5LXRydW5rCiszMjA1NiAxNjFiOGJkOGEyMjZmY2Y5ZGE1OGU5MGE4ZjNlYzU1MjQ4Nzk3Mjg2IGxlZ2FjeS10cnVuaworMzIwNTcgMjQwNTM3MWJlMzRjOTY2OGU1MjBlZjMwZGE1ZmMwYjgyOGMxYTdiNyBsZWdhY3ktdHJ1bmsKKzMyMDU4IDNmYzU3NjQyNzNkOTZmMGFhMzhmNDQxZWEzNzc1NzVjMjZmNTczYmUgbGVnYWN5LXRydW5rCiszMjA1OSA1MDBmNTQ1YTI0ZjA3ZjdmMTcyYjY0YmIzZDNmMDA0ZDc3YWVkZTgyIGxlZ2FjeS10cnVuaworMzIwNjAgZjBhZDhmYTg4ZDdjY2VmMmQ0NGMzMDZiNGY5MWE2MzQwY2M2ZTY2OSBsZWdhY3ktdHJ1bmsKKzMyMDYxIDBhM2NlMzA2YjExYTVkNGE5ZjgxYzdmY2JkNDAyYTlkNmJhYTQxZGMgbGVnYWN5LXRydW5rCiszMjA2MiAxNTdjODcyZTY4OTJiOWIzZDZlNTY1ZjBmOWQ2MmNlMTk2MDRjYTE5IGxlZ2FjeS10cnVuaworMzIwNjMgMzdlYjg5MjlmMGNiNDAzMGYyYTIyYzg1ZTZiYTU1ODA2OTVlNWQxMyBsZWdhY3ktdHJ1bmsKKzMyMDY0IDU2ZDliYmJhZTZmODEwY2UwMTE5OTgwOTI2NjliODBjMGQxYzAwYTcgbGVnYWN5LXRydW5rCiszMjA2NSAwNTQ0MzQzMGQ3ZWQzZGQ0ZDZmYTZjMjMxMDUyMDYwY2M2YzM4NzE0IHJlbGVhc2UyMi1tYWludAorMzIwNjYgZGY5YjdjZWUxMzM5NTE2YmI4NTdmZWNiYjA2OWM5YTk0ZWIxNzVkNCBsZWdhY3ktdHJ1bmsKKzMyMDY3IGYzMDc4NjU0YTVjMDJmZGY4OWI1ZGE2MWE5OGY5ZThmNDAzZjNjYTggbGVnYWN5LXRydW5rCiszMjA2OCAyMzVkNTQzZTBiODQ5NzExMzVmNGUxMzk0ZmMwNzFlYzI2NDA0MjM1IHJlbGVhc2UyMi1tYWludAorMzIwNjkgN2EzZjcyOTgzYTdlZDU3N2VmYzJjMTA0ODc0ZTkyMzJlZmY3NmQ2OSBsZWdhY3ktdHJ1bmsKKzMyMDcwIDgwNDQ3M2NmNzEyMTU0NDA1MDRmMDFkMDhjYjAxODIzNDVhMTQ5MTEgcmVsZWFzZTIyLW1haW50CiszMjA3MSBkOGY5OGRjNmU3ZTA0YTE3ZWVkYzBiY2Q3ZTVlMTU3ZmNlYjkyZjA5IGxlZ2FjeS10cnVuaworMzIwNzIgMDc2Yzg2N2I5MTZlMjMwNmE0M2EyZjM0MTQxODg0ZTI1ZmFlZjk4NiBsZWdhY3ktdHJ1bmsKKzMyMDczIGRmNjViMDIxN2RkN2YwOGU2ODFlZDlmMjkzNjdiN2YwMDRkOTA4NzAgbGVnYWN5LXRydW5rCiszMjA3NSBhZjA1Zjg4Yjk2NDEzNTk2NWFlZjRjNDQ0ZWQ5YzBiYmQzMDMzYTdkIGxlZ2FjeS10cnVuaworMzIwNzYgYThkNjU3NmI5NWFmYWNiMWQxNTMyYTZlNDE1MTllOTAwY2JiMzBkYiByZWxlYXNlMjItbWFpbnQKKzMyMDc3IDljNjIwOTI1MzYxNWZmNDBiYWNlNDM5YTQ3OGQ0NmNkYWI4ZjcxZTkgYXN0LWJyYW5jaAorMzIwNzggNWZiZDg4MDFmYTI2MjVlYjJhODk0MjkyOTczOThhMzNkMmIzY2ZiMiBsZWdhY3ktdHJ1bmsKKzMyMDc5IDE1OTJlYTM2YTcwMjMyN2U1YjZiNjM1NmQyNTI2YmE5N2EzNjYxNzEgbGVnYWN5LXRydW5rCiszMjA4MCBhZDQyY2JlYTIyNThhNzcyMjk0YTVmYjgxY2Y5YmVlNmE4YjZiN2MwIGxlZ2FjeS10cnVuaworMzIwODEgYzdmMTBhOTAwZDYzMjg4ODNhOTJhZTVhZTg5NDc1ZjBjNjllNTYxYyBhc3QtYnJhbmNoCiszMjA4MiBiODcwOTVmYmIwNTE2OGQxY2UyZTE3MDYyOThhZDU2ZGUwYTVjZmQyIGxlZ2FjeS10cnVuaworMzIwODMgZmM4NDE1MzUxODBjOTg0YmNkODZlNTFiZDE4MGM1MmRlMjk3ZjJhMSBsZWdhY3ktdHJ1bmsKKzMyMDg0IDcxNDBhNjIzNmMzYTg4Yzk4MmE0MmIxZmY1ZTFmZTQ0MGQ2MWRlZTAgbGVnYWN5LXRydW5rCiszMjA4NSA3NTFkN2NlOWI0YjIzYTg0YzhkN2MxNGJmNGI4YWY5NjE2OTdjNGFhIGxlZ2FjeS10cnVuaworMzIwODYgYjY2YTJlNDFkYTNlZTk5MTVmZjVkZjY0NWI0YzczODE1NWNlYjE5ZSByZWxlYXNlMjItbWFpbnQKKzMyMDg3IDA0YzFiYTUxZWZkYmNiYmM5OWY1MzJiMjg4ZDQ5Y2Y4ZTdiYWNmMDkgbGVnYWN5LXRydW5rCiszMjA4OCA4NTJhYWU4NGM5ODEzNzNlMDJhYzRlZjVkODcwYmFiYjhiY2I3N2U2IGxlZ2FjeS10cnVuaworMzIwODkgMGY1NThlZWRlNmM1NzdhNThjYzEzOWI1YmNmZDNlMmZkZTE0ZmZiYyBsZWdhY3ktdHJ1bmsKKzMyMDkwIDUwNWU4YzBmYTkyZmUyY2EyYzJiNzY0ODc4YjI1ODJlMzA0ZjQ2NzcgbGVnYWN5LXRydW5rCiszMjA5MSBiYmI3NDhmNjgxNGQ2NDBhNjQ5ZGYzNTQ0MWFlM2FiZWIyMzE1ZWJkIGxlZ2FjeS10cnVuaworMzIwOTIgZjNhZGQ0MTY2MjhkYzc0MTQzNmZhNWNmNDc0MTllZDgwYTg1ZTA3YSByZWxlYXNlMjItbWFpbnQKKzMyMDkzIGIxZmJiODNlNTEzOTE0OWU5Yjc2NTk1MmFjNDU5NTVmZTVkODY3NDQgcmVsZWFzZTIyLW1haW50CiszMjA5NCA4ODAyZGUwZGE1MzM5MTE2MGZkM2UzNWQ3Yjk1MjM3NDIyNTE5MTJkIGxlZ2FjeS10cnVuaworMzIwOTUgZTEzYTdlMWZkYjllNWI3YzI4YzEyY2YyN2QyYmJlOTM5NTExOTYyYSBsZWdhY3ktdHJ1bmsKKzMyMDk2IDg2YTRjZWE3MDk3M2FiZWI0NzMyODYzNTU1YzQ0OGU0ZjQ0NjBlZDcgbGVnYWN5LXRydW5rCiszMjA5NyAxMmRhZDIwODFlMmU4MjNmZTkyMTk1NjQ0NWY4MWUwOTkzM2U3YmU3IGFzdC1icmFuY2gKKzMyMDk4IDRhZWJhY2M3ODY3YmIxZTBmYWFjZjIyMDMxYzhlODMwOGJiYWVkMDcgYXN0LWJyYW5jaAorMzIwOTkgZjExNTQ0NzNkYWM4YTcwZGY0MzVmYWZlYWY4NzA3Zjk3ZDQzZWQ0MyByZWxlYXNlMjItbWFpbnQKKzMyMTAwIGFmZDVjMmU0YjRhZjZkYzFlY2UwODIwNWM0YjYzMWIyN2RmODA2MTggcmVsZWFzZTIyLW1haW50CiszMjEwMSAyODdkYWE2YTdmNGYyMjBkZTgxMDhmOGY1NjA3NGUyZTM4MTJkNGEwIHJlbGVhc2UyMi1tYWludAorMzIxMDIgOGVmZTk0NDU0OTViMGI3NmQ0MDZhNWFhNWNlYzk0NWRjZGY3YjY2NCByZWxlYXNlMjItbWFpbnQKKzMyMTAzIDU1NTBmNWE5ZDcwY2E3NjIwMmVkMzA3NzJhZjBlM2Y1YjA1OWMxODcgbGVnYWN5LXRydW5rCiszMjEwNCBhOGU1ZWMwNzA0MzNmNWFjYTJiYmRlNzg5MWYzMzQ1ZjM1NWUxNzVhIGxlZ2FjeS10cnVuaworMzIxMDUgMzYyMjJkMzgyM2YxMjk4NjAzNDEwNjY1NjRjZmYxMWQ3ZDYzZjk1MiByZWxlYXNlMjItbWFpbnQKKzMyMTA2IDk3M2Y5ZDM1Y2YxZDBmMTUyNGQ3MzRlYjVkNzlhMjczYTVjMjAyZWQgbGVnYWN5LXRydW5rCiszMjEwNyBhYjJhNTQzZTg1NWJjOTg4ZWJiYjJjOTNiNTIzYjM2MzY5ZjkwNzQ3IGxlZ2FjeS10cnVuaworMzIxMDggZjM4Y2E5ZTFiNjgzYmY3YThiNmI4NGNiNWRjNTk5MjQ4NzYxN2MyOSBhc3QtYnJhbmNoCiszMjEwOSAwYzQzMzVmMTBjNjdhMmQzYTc4MzlmN2I0YjAyYjIyN2EyZWJlNmZmIGFzdC1icmFuY2gKKzMyMTEwIDQzMDhlOGE2YzQ4MGRlMDBiZTJmNjA4OTVkODMzMDI4ZGI4OGY2MGEgYXN0LWJyYW5jaAorMzIxMTEgZGM4OTBhNGMwNTI4MDU1ZWQzMWZiMDIzYjNjM2Q1MDUwZGNjYThlMCBsZWdhY3ktdHJ1bmsKKzMyMTEyIGI4NWEyMDU2MzFhNDVjMDM4YTVmZGEzMzJmOGViZDllN2E1Y2M5MDIgbGVnYWN5LXRydW5rCiszMjExMyBmMzExYjVkMjFlZjU2NGIxMGRiODVhM2RiNjhkODdlMGNkNTcwYWIxIGxlZ2FjeS10cnVuaworMzIxMTQgNGY4ZjE3YWYzNDg3YmFiMTRiMDBiNDZiOTc4N2JiYWMzYzRmM2Q1MiBhc3QtYnJhbmNoCiszMjExNSA3MzhlMzc4ZmEwY2MxNzE4YzEwZmFmMWM2OGRjNDhhODI2YzI3MWYzIGxlZ2FjeS10cnVuaworMzIxMTYgMzJiZWE0MWZlZjY4ZDA0OGEyNmNjYmFjYTU5NDk2YzNhYjVhYjg0YyBsZWdhY3ktdHJ1bmsKKzMyMTE3IGQ3ZDdhZjVmMzIzMWYwMTJkNThmNTNkNDcwYzRhNmJhZDZiZThiY2MgbGVnYWN5LXRydW5rCiszMjExOCA0OTIwMjhlNDcyNmYxNTc1NTAzYWU1YTNjNThlNzljMThhNDVjYmFhIGFzdC1icmFuY2gKKzMyMTE5IDgxYmNjMGY1N2Q1NzBmYmRmNWYwY2RiMjM2MDI3MTk5NTkzMzg5MmIgYXN0LWJyYW5jaAorMzIxMjAgY2ViN2JiNzkxMzUzMzY2MzAwNWZlM2Q2ZWRiNzk4YzRiZGRiN2ZkMyBhc3QtYnJhbmNoCiszMjEyMSBlZDIxZDhiMzdlMzNkNTVmNWY4ZWEzOTA1MjM0M2FlMTZmNjUzNDM1IGxlZ2FjeS10cnVuaworMzIxMjIgM2Q4YzEyMTRhMWM3OWJhNzgxNDBiM2Y3NGFkNDI4YTI1ZTY2ZGQ1MiBhc3QtYnJhbmNoCiszMjEyMyBlZDczZDY1ODcyNWFhNzhkYTZmY2VkZjNkMDBhN2Y5NjEwYmRjOTZiIGFzdC1icmFuY2gKKzMyMTI0IDQwZDk2NTliNTZjOTQ2YzU3MTUxZWQ1YjIwZmEyY2ViMGI0NDMyNWEgbGVnYWN5LXRydW5rCiszMjEyNSAzZTM5OWE4NjE4ZGIzNWI0N2JkNTFiODJhYmMyN2QxMjQ0OGNkMjBkIGxlZ2FjeS10cnVuaworMzIxMjYgNDJkZmEwODkxYjMzMjY2MTE3MDhkMjczNTk1NmNhZTkwZTM4NTY2OCByZWxlYXNlMjItbWFpbnQKKzMyMTI3IGNiYTBhZWVlMGQ2NTE1MzFiOWFhNTU1ZjRjOGIwM2EwOTM4NDUzNTYgbGVnYWN5LXRydW5rCiszMjEyOCAwMGE1NmZiZWE2OWZiMGE3MGFiNzBlNjE0ZDQ0MDQ4Mzg2MjIyMWM0IHJlbGVhc2UyMi1tYWludAorMzIxMjkgMGZjZjlhZTI1Y2ZlYmU3M2MxMGI4MTIxMGU4OTI4ZTljMzE0YzVkZSByZWxlYXNlMjItbWFpbnQKKzMyMTMwIDRiNmUyMGYwYmE0Y2RhNTM5YzYzYzkwMDE4ZWZmZjc3MmJhNmQ4OGMgcmVsZWFzZTIyLW1haW50CiszMjEzMSBjYjVkYjU1NjFjZGNhOWQzNGQyYjA2NjQ2Mjc1YjA2YTNjZDhlOGU0IGxlZ2FjeS10cnVuaworMzIxMzIgODQ5ZGZlYTE4MmNhMzc3MzM5ZGRiZWM0ZDliMTQ0NmI0NjAzNWU1MCBsZWdhY3ktdHJ1bmsKKzMyMTMzIDExN2FjZTg1MjFhMWQyOTY3YWQxZTM2YzIxYWM5ODlhYTZkNzExNTggbGVnYWN5LXRydW5rCiszMjEzNCBhMDUwM2JkYjBjMjQyY2Q4OGRmM2YyNmU2N2IwMzYwMGVlZDFmNzYzIGxlZ2FjeS10cnVuaworMzIxMzUgODIzM2EwMjk0YzQxZTNkZTAwNTc0NGMwZGRhMTYxMDhmOWMxMDY4MiBsZWdhY3ktdHJ1bmsKKzMyMTM2IDM3NWZkYjgyYTNjYWUzMjhhNTgyNzI3ZjQ4M2RlZmJkMzJhN2JlNTEgbGVnYWN5LXRydW5rCiszMjEzNyAwZGUwZGVkMTk5NjhlYzQ3MjIxODdmNmQ5NzJjY2FjMDY2NWEyNDMxIGxlZ2FjeS10cnVuaworMzIxMzggYWNmMzU5NmZjYzI4ZDUwNGZmYjgxNTdhMTdlYzA0ODM2NjA0MTE5MiBsZWdhY3ktdHJ1bmsKKzMyMTM5IDE3NGNlNGNkZWM0NzI2ZDkxMTg0YzdjN2ZkODljNDMwMGU0MzY4NDMgbGVnYWN5LXRydW5rCiszMjE0MCA5MGM3N2I4YWYxYTQ5NzQ0NjBmMjZmYjJiMzdkNzVkY2NkNTRhYmIyIGxlZ2FjeS10cnVuaworMzIxNDEgOTQwMDUwNGNiMGIyNjFlMDMzZWRkZjI4OGMyNjE5MmNmZGQ1MWMzMSBsZWdhY3ktdHJ1bmsKKzMyMTQyIDRjNTk2ZGQ2MGMyMmQzMGQ0ZGViZjg2NzRlMTQ0YTkzNGI0ZGEzODggbGVnYWN5LXRydW5rCiszMjE0MyA3OGY4NDZmYjU3MGEwNjMyYTc2ZTdiZTI4ZDUwMjliY2ZiMzk4NDNlIGxlZ2FjeS10cnVuaworMzIxNDQgMzY4YmViZTMyNzQzMzkwMWM2NjdlZmVmMWI1ODU1OTM3MWM2NzcyMCBsZWdhY3ktdHJ1bmsKKzMyMTQ1IDI1ZTc0Njc4NzFjNTg3MmI5YjcxY2Y4NDdjOWMzNTJiNTY1NWEzZDggbGVnYWN5LXRydW5rCiszMjE0NiAyYTMwOTVhNDE1YjEwYmExMDM1NzM0ODFhNzFhNGIwNDM3MjYzMmZmIGxlZ2FjeS10cnVuaworMzIxNDcgNjY1M2E1NjAwMmVmOWQ4MzE2ZGI4YTNmYTRkNjA0OTAxNDliZDBhMyBsZWdhY3ktdHJ1bmsKKzMyMTQ4IDk2NGJkOTdhYzFmNWJkM2Q5NTM3ZWIwNDM5NjA0MTg5MjQyM2Q3ZDYgbGVnYWN5LXRydW5rCiszMjE0OSA0ODdkZjI5NGQzMjgxMGM4ZWFmMTUwZjJmNWY3N2JmZWRkMjIwNjZjIGxlZ2FjeS10cnVuaworMzIxNTAgYzAxZmRjM2E5MTgwNDJkOTQxZWQ1ZWM3MGQ2ZWI0N2ZiODdkYTQ2MSBsZWdhY3ktdHJ1bmsKKzMyMTUxIDRmZjYxMWIxNjQ4NDkzM2YwMjM0ZmQwOGM2MWY5YTI3YzE0OWQ3MGQgbGVnYWN5LXRydW5rCiszMjE1MiA5MmQwMWYxMDJjYTA5OTNlYjE0NGI1YjdjMzY3NzAxNGM4ZDNjMTNjIHJlbGVhc2UyMi1tYWludAorMzIxNTMgYjViM2U2ZjNmMzE3ZWQ4ZDQzOTZhNzdhNDUxOGFkMWMxZjJjZTNlZiBsZWdhY3ktdHJ1bmsKKzMyMTU0IDViNTQ2MmFlMzE0ZGRkMzU3M2UyNzRiMmNkZWVhMDA5ODMwNmU2ZTQgbGVnYWN5LXRydW5rCiszMjE1NSA1ZmE4MzQ0ZDZlNmYwMWQ1MmFjMDk0NjJmZjlhOTZlODMyMjc0ZjM2IHJlbGVhc2UyMi1tYWludAorMzIxNTYgOGJmMDg0YzRhZDlmNzRiOGEzNTEwNDIyZWY1M2Y3YmRjNmYyY2ZhNSByZWxlYXNlMjItbWFpbnQKKzMyMTU3IGJhNzE2MjI0OTc0ZTk3NjlmODdjMjk2YjIyMzAzYjIwNDQ3MDllZmYgcmVsZWFzZTIyLW1haW50CiszMjE1OCAxNjM5ZjYzNWQ5ODNiOWZjNDcwYTc3MzQ5ZWY4OTQ5ZTBmNzYyMzA5IGxlZ2FjeS10cnVuaworMzIxNTkgODc4MzY2YjBlOTdhYzcxNWEyYWMzNTA4YjVlODI3NWQ2NzhjMmIyZSBsZWdhY3ktdHJ1bmsKKzMyMTYwIGYyMTNlZTZjZTU1ZWU4ZmEzYzE0YjY1OTBlZmU4NmU1ODIyOGY5MmUgbGVnYWN5LXRydW5rCiszMjE2MSBiOTA2NGVhMDU5M2VhMWQ3MzQ3MmJmNjZmZGFjMTA5ZGQ4NDlhMGYyIGxlZ2FjeS10cnVuaworMzIxNjIgYWUwYWViMGQ2MzFiYzVjNWNhM2YwZmUzNTIxM2M1MjliMzY3YzUwOCBsZWdhY3ktdHJ1bmsKKzMyMTYzIDQ2OWZiNmNlOTY5MzUxZmIzMDc2ZmY4M2E4NTkwYmYxYjg5NzM5MjMgcmVsZWFzZTIyLW1haW50CiszMjE2NCBjN2JiMjU0YWI4OTBlMWI5NTI0Y2U0Yjc1Yzk4YmZjOGE1NWM0ZDU3IGxlZ2FjeS10cnVuaworMzIxNjUgNzExMDNkZjlkNjRiMDdkYzNjMTA3NWMxOTliNTk2NmE0MTdmYmJiMyBsZWdhY3ktdHJ1bmsKKzMyMTY2IGJiZWQ3ZTEyYjg0MjJjMDkxZWVlMjE3NDk1N2EzNmYzM2U3ZDBhMWQgbGVnYWN5LXRydW5rCiszMjE2NyA4OTg0ZGYyZGMyN2IyNzBkOGMyOTAzMzE1NzMwODVlMjlhZGZjYTgyIGxlZ2FjeS10cnVuaworMzIxNjggYjYxYTllMjFhNjZkY2E1OWZlMThhY2RmZTg4OTJmMDZlY2MwZDBkNSBsZWdhY3ktdHJ1bmsKKzMyMTY5IDM0NDgzNzY5MDc4YjMzMzcwYWRmZGY3ODIwZGI3M2ZlMTc2NDJiZTYgbGVnYWN5LXRydW5rCiszMjE3MCBlOTMwYmViZWM4YzBmNWRkM2M0MGY5MGNmM2IzNWM5NjFiNDA3OTEzIGxlZ2FjeS10cnVuaworMzIxNzEgZWU4ODUzY2M4Y2ExZjY5YTg5NzM4NmE5Y2ZiNjFjMThlZjQ2YTc3YyBsZWdhY3ktdHJ1bmsKKzMyMTcyIDAxN2QyZTNlYTJhZTRiYTZkZDQyNzVmNTI1NTI2ZWJlOTEyNWE2MjcgbGVnYWN5LXRydW5rCiszMjE3MyBmZDQzNGJlYjVmNTYwNzliMzQ5ZDMyMmY3YzkwNzYzZjNmMDJjNmU0IGxlZ2FjeS10cnVuaworMzIxNzQgNmFhMWMwODI2YTM5YmU2ODM0NDI5OWYxZGQwN2ZjZmU2MjUyNTQwZiBsZWdhY3ktdHJ1bmsKKzMyMTc1IGQxMGRiYjk0YzllZTFiZmY5YzE0ZTZjNWYwODc4MTU3MzEyZjY1OTQgbGVnYWN5LXRydW5rCiszMjE3NiAyZDRjMWU0ZTViMzZiNTQ0OTkyMTY2NTZiNjVmNzMzMDJiYTkyNDI1IHJlbGVhc2UyMi1tYWludAorMzIxNzcgZGI0Nzk5Y2EyMDIxYmNmNTVkOTI3YWZlMzQ4MjM0MjNkNDdiOGRkNiBsZWdhY3ktdHJ1bmsKKzMyMTc4IDlhY2RjNmM0NDE2YWM1MjI4ODI1NzhlZjg0ZjIzYjEwZWRlNTY1YTAgbGVnYWN5LXRydW5rCiszMjE3OSBiMzdiMjk4MjA4NmJjMzMzMTE4OTYyMjEzYWExNjYxMzhkZDBiMDQzIGxlZ2FjeS10cnVuaworMzIxODAgNjJlODgzZTJkNTE3MTFmMDA4ZjEzOTgzZTBlMTQ5YmM5MjhmOWNmZiBsZWdhY3ktdHJ1bmsKKzMyMTgxIGU2YmYwOGRhZGQ1YzIxNzYwNWVlOWRmY2IxNDEzZmUxMWIwOWZlM2YgcmVsZWFzZTIyLW1haW50CiszMjE4MiBiNDQ4N2EzYjVmMWExZDFiZjM0NDIwZjlhZGQzNGFjZjVlZjk3NzU4IHJlbGVhc2UyMi1tYWludAorMzIxODMgNzgzOTVlNWI0NzgyY2MzNDkyODg0ZmMzZTljNTVkMDk3NzVkZjFiMyBsZWdhY3ktdHJ1bmsKKzMyMTg0IGJhMmQ4OTIxYThkYTAxOWI4ZjIwMzIyNzIyZmI2ZWY0NmY1Y2E4MzEgbGVnYWN5LXRydW5rCiszMjE4NSA4NGFjYmEyMjc5NTQyNGNmZGU1YzE0MzgzZDMyMDkzNTg0YmVlODNlIGxlZ2FjeS10cnVuaworMzIxODYgYWZmMDgwZjJlZmI0ODY4YmY4YWE2NzYzZjY0OTdiZGYzZDMyZjZmYSBsZWdhY3ktdHJ1bmsKKzMyMTg3IGU5MmMyNWQ0MjhiODdmMDIyYmRkYzFiYTBkMzE3ODhlZDY0ZDU0ZTIgbGVnYWN5LXRydW5rCiszMjE4OCAyMWY3Y2ZmMTc5MGZkYzhkNTllNTFjN2MzYjhhNzllN2UxYWIwYTYwIGxlZ2FjeS10cnVuaworMzIxODkgY2Q1MDExMjE3MTViMDY4YTM1OGMyYzA1MmYxMTdjOWFhOTA2NGY1MyBsZWdhY3ktdHJ1bmsKKzMyMTkwIDdhNjI4MTQ5M2QyYzY3MTA0N2MxZGZkNTU4NTBiNGJjNzA5NDBjMTAgbGVnYWN5LXRydW5rCiszMjE5MSBmMjFjZDA3OWQxMDgzNWY0MTQxNDNjZGU0MWY4OTVhMTA1MGFkYjhiIGxlZ2FjeS10cnVuaworMzIxOTIgNmU3ZWZkNmMyNTEwYTJiMmQxY2QxYjVmYjdiMGVhMzA2NWMxYzg4ZSBsZWdhY3ktdHJ1bmsKKzMyMTkzIDlkZGM0OThiNzAxM2I4NmU3MWI4OGFiNjAwMzkyZmI5NTE4ODAzZDUgbGVnYWN5LXRydW5rCiszMjE5NCBiYzg5MjNmZGQ4M2I1ODhmYmFjZGY1NGQyYTgzYzkyYjljZTdiNWIxIGxlZ2FjeS10cnVuaworMzIxOTUgZDA4ZDdiNGJlNTMyMDEzMjEyZmZiYjAwYTVlNzk5ZGMwYmRkZjU1YSBsZWdhY3ktdHJ1bmsKKzMyMTk2IDc1MTEzNzU5MjUyYzc4OGMxNjI3NzI5ZjczNTZjNThhM2UyNDc4ZjUgbGVnYWN5LXRydW5rCiszMjE5NyBiZmM3YTlmYTM0ZDZkYjIzNGU4OTE4MjMxMDljYjQxNzA1ZGQxMTk5IGxlZ2FjeS10cnVuaworMzIxOTggNWZiZGNhZWY5ZGRhYTIzMjVhNzQ1NGU1OTM0NmVmYjJjMjEyMjI0OSBsZWdhY3ktdHJ1bmsKKzMyMTk5IGZhZWI3MDhiYWNjNDIxNjY3ZjYwYTNhNGY2NzA1Y2I5MTEyMDcyNzIgcmVsZWFzZTIyLW1haW50CiszMjIwMCBkYTc0YmRkOTM0NDFiZDQwMjQ2YjljZDk2MTY0YmQ5NDE0YjZlYTQ2IGxlZ2FjeS10cnVuaworMzIyMDEgYmUyZWNhZmIxNWFkMGVhMDI2ZmE5NmJjMjFhY2Y1YzFkNTMzZDYxOSBsZWdhY3ktdHJ1bmsKKzMyMjAyIDIxNWYxZjQ4NTFhNDYzOWFlY2Y2NDIxOTdlNzNkZmNlYWY3N2UyNDIgbGVnYWN5LXRydW5rCiszMjIwMyAxYmQ1MGMyODIwM2ZjZjI3ZTMwZGJjNWQzZTAzYTg1MzliNTJiNDc3IGxlZ2FjeS10cnVuaworMzIyMDQgZjMwMWVhZWRkZTg1OGJkYTdkMDAyYzg4ZmU1NjljZmRlYjJkODEzMCBsZWdhY3ktdHJ1bmsKKzMyMjA1IDhiNDk0NDVjMGEwZTAzOTBiZjA1YmIxMzY5OTQxNGQ5YzFhZDYwNjkgbGVnYWN5LXRydW5rCiszMjIwNiA5ODEwMzJlNjQ3MzYyZjA4MWE4OTFkOTExY2E0NzQ4NmJjMTkzY2JhIGxlZ2FjeS10cnVuaworMzIyMDcgYTVjNWRhNTQ2YzI5MjhjN2RmMTU4NjgyMzljYTBkMWVkMTJjNjcxMSBsZWdhY3ktdHJ1bmsKKzMyMjA4IGMyYWQ2MmY0ZWE5YjMwYjVhZTAzZTdhMzFjNWEwOGM4YjBjMGJjYTIgcmVsZWFzZTIyLW1haW50CiszMjIwOSAwM2JiMGM0MDhkNTczMThjYTViZThlOWY5NTJmYzkxNWUzMWE0MjcyIGxlZ2FjeS10cnVuaworMzIyMTAgYTBjMDAyMDUwNTI2NWE4ZTM4OTdkZDYyNDRjNjJkOWRiNWYxYTFhOSBsZWdhY3ktdHJ1bmsKKzMyMjExIGMzNmJkMWM4MzZiOGM4MGNkZjZkODc5OTlhYjIwMDRiYmY2NjRjZTYgbGVnYWN5LXRydW5rCiszMjIxMiAwZDI2OGM2ZWYwMGFjZGU2YTAxODBmMGQ4ZmU2YjMyNDEzMzNiNWVjIGxlZ2FjeS10cnVuaworMzIyMTMgOTRhOTg2NWFhMWM2NDQxOWMzYmI0OWM4M2JkMGExNTNiZWM4NWUwNSBsZWdhY3ktdHJ1bmsKKzMyMjE0IDhjOTMwNzViOWNiNTUxMGJhOTNhOTE4MzIzZTA1Y2Y0MWQ4MzgzYWEgbGVnYWN5LXRydW5rCiszMjIxNSAwMmM4N2YzNDhlZGIyMmY4ZTVjMTIzZjQ4ZTJmOWNiODFiMzNlODFhIGxlZ2FjeS10cnVuaworMzIyMTYgYTU3ZWU3YjJhODc5ZGUwMmJiNTU3ZWQ4ZGQ1Y2EyYTM0MzFiYzg1YyBsZWdhY3ktdHJ1bmsKKzMyMjE3IDk1YjZkZDA0ZGE4ZmRjMWQ4ZGFkODY1NzYzNmM2YTdiZDJjMjEwYmIgbGVnYWN5LXRydW5rCiszMjIxOCA4ODNhNjk0Nzk1ZjU3MDNjYjQxZWNmYjVjYTkyZjYwMGJiZWRjMjc4IGxlZ2FjeS10cnVuaworMzIyMTkgZWYwNWY5ODFiYzRiOGRhYjFiYmQ4OWJhYTUxY2Y0NTI2ZWE4OGM1ZCBsZWdhY3ktdHJ1bmsKKzMyMjIwIDZmMTNhZGRlMWI1MWJiNDkyOTQ2YWFlMGRhMjZjYzIzNGYzMzcwYTcgbGVnYWN5LXRydW5rCiszMjIyMSBkZTUwOTM0ZTExNDViZjZkOTBiNjU5NTlmNmNlMTg2ZjJlMDUyOTBkIGxlZ2FjeS10cnVuaworMzIyMjIgMjJhZmRlMjZiM2QxNjZhYzBmMjZhNmE0NTlmZmZjNmYyZjNlMmZjMSBsZWdhY3ktdHJ1bmsKKzMyMjIzIDlmZWRlNzAwM2M2NWY2ZjZlMWIxOTU3ODU4Njk0NzJlZWI5ODc0MDkgbGVnYWN5LXRydW5rCiszMjIyNCBkMmQyMzJlMjQyN2JmNzRlZWZmZGM1NGIyYzdmMWNlYzkzYmFlOTNhIGxlZ2FjeS10cnVuaworMzIyMjUgM2NmMjZiOWY5NmY3ZTY0NjQwODcyMGIzYWRkNWMwZGQzM2FhZDZjYyBsZWdhY3ktdHJ1bmsKKzMyMjI2IDExNjYwZjQzNjFmOGEzNjg5NzU5YWNhYTU2MDFjZmY4Y2MwNDM2ZjkgbGVnYWN5LXRydW5rCiszMjIyNyAxYWVhZDBjODQ1MDc3ZTA4MDc1NDcyMmFmMjkwMjg3Y2Q3MjIzZmQzIGxlZ2FjeS10cnVuaworMzIyMjggNThkYjVmYmQ5YzI4MmE0OTc1ZDc0NWFlYTBmNzA2ZTc4YjY2OTBjNyBsZWdhY3ktdHJ1bmsKKzMyMjI5IDIwZWU2OGNiMGJjNDdjNjczZDBlOTkyZjI0N2I0NTc4ODIwNzQ2YTAgbGVnYWN5LXRydW5rCiszMjIzMCA3ZmUzM2MxNTQxZGZmYWY4MWE5M2Y5ZjI2ZDEwYjcxZWEyZmEwMjJmIGxlZ2FjeS10cnVuaworMzIyMzEgZWVlNDk2OWFkYmFlMGQxNjQyZmExYTJjNDQ2YzUwNzNlZDZiNzZmZCBsZWdhY3ktdHJ1bmsKKzMyMjMyIDk0NDE2OTRhNzBjN2VkMzk4MzY2MDc2NDJkZjQzM2NhMmRhZTQ3NGYgbGVnYWN5LXRydW5rCiszMjIzMyA0MzZkODEyZjJiOTRiN2RhYjdhYWQyYzk3MDUzMTdkMWVhYmVmY2UzIGxlZ2FjeS10cnVuaworMzIyMzQgZjNiMjRhMmY2ZjRkYTg2YTkyNzBlOWFhNGI1MTRhMzU2MTAyMmY1MyBsZWdhY3ktdHJ1bmsKKzMyMjM1IDgzMjIwNzdkMjM0Y2ZhYjgwYWU5ODZjMzY2MTAzNTE2Mzk3YzM0OGUgbGVnYWN5LXRydW5rCiszMjIzNiA2OTUyMzczZThmZTVjODcyZTYzNzkxNDgwMjYyMjk4ZWMyMzhiNWZhIGxlZ2FjeS10cnVuaworMzIyMzcgNjdkMzZmNGRmZWExMjRhZTg1YzBjMTBkMjhiODMzODMzYWI3MmIyZCBsZWdhY3ktdHJ1bmsKKzMyMjM4IGM3MWI5YmExZjA0YzE0ODI5ZmE5NjU0ZDlkZDUzZDBiYjM3OWQxZWIgbGVnYWN5LXRydW5rCiszMjIzOSAwNzkyY2FhNjM3MWM5ZDFkMjVkMDRiYjBjNzU3NTgxNjI0M2NjZmVlIGxlZ2FjeS10cnVuaworMzIyNDAgYjE2NzE1NTBjN2UxZGM3ODI4MTcyYmIwYjQ2MmE2OTFjNzY3OGViMSBsZWdhY3ktdHJ1bmsKKzMyMjQxIDRjNjU4NTI1M2U2ZjEzMjRkMjEzYWY0YjlmYTQ2ZDFmODQ5ZTE0YzAgbGVnYWN5LXRydW5rCiszMjI0MiBiNGI4ZmUyYTYzMmMzYmNiNDUyYmMwNDBkYThkMjM4Y2E4NzM4YTllIGxlZ2FjeS10cnVuaworMzIyNDMgNGYwYjdhY2ZmYzdkNGM0YzdlYjQyZDNjMGIwOGNjYTI5ZjU3YjU5YSBsZWdhY3ktdHJ1bmsKKzMyMjQ0IGQ1MzU3YWFkZTRiNzMwNjQ3MGNhZjg0ZmEwZjFlYjI5MmYwZGQyYWMgbGVnYWN5LXRydW5rCiszMjI0NSA5ZmRmYTczNjU3OGQ3MzZkNzA4YTQ3NGU1M2M2NWRjOGYwN2FlNTk0IGxlZ2FjeS10cnVuaworMzIyNDYgZWI1NTE4OGYxNjNhY2VlN2EzYzlhZTc5MTJlOTMzMGUyNjQyZGQzNyBsZWdhY3ktdHJ1bmsKKzMyMjQ3IGRkZDkwNmVmZmQ5YzNiNjVkMGUxM2M5ZDg1NWZjNTM2M2MxM2NlMmIgbGVnYWN5LXRydW5rCiszMjI0OCA4MjRkYzI4ZjkyMmQyOTljMTc2YmI3MzY5MjcyNjQzMjNmZDc1ZWU4IGxlZ2FjeS10cnVuaworMzIyNDkgNmMwMDA0NjkwOTQxOGI3MjFiY2FkNDExZjk4YjkxZTdhNGUyYzYxMCBsZWdhY3ktdHJ1bmsKKzMyMjUwIDgxZTViZjYyM2VjZjc1OGJjMjVjNjJjYmIxZWJkNGVjMTIwZGVkOTIgbGVnYWN5LXRydW5rCiszMjI1MSBlODBmMThhNDljYzlhYzhlMzExZjQxZDhkNjA3MTMxNGZiMDQ3OTllIGxlZ2FjeS10cnVuaworMzIyNTIgMDdkOGUwZWFiM2FmNDlkNThlMzIwMmI5ZTgyNjk0ZTE5OTg1YmUwYyBsZWdhY3ktdHJ1bmsKKzMyMjUzIDJjZmQ5MTZkZDMxMjQ5ZGYyZDQ1NThhZTNiOWJkM2U5M2JhZmNkMTMgbGVnYWN5LXRydW5rCiszMjI1NCAzYzM5MTk1ZGFiOWE0MGVmMzE5MDhmNjRkMGZlODRkZGUzOGFhM2IwIGxlZ2FjeS10cnVuaworMzIyNTUgM2Q5M2MzMDM5Yzg3MWNjZTkxOTc4ZmZjN2I0OGU2NzMxZGFkZDc3YiBsZWdhY3ktdHJ1bmsKKzMyMjU2IDhhYjc1MmRiNDc3NWQ1NTNmNzMxYWZkM2QwMzEyMDlkZGI3ZjgwNTEgbGVnYWN5LXRydW5rCiszMjI1NyBmYTgyZjg2ZWFhMDk5NDBhNjZjZTM5MzRiODU2NzU1NjRiM2Y1Nzk3IGxlZ2FjeS10cnVuaworMzIyNTggMzM5MmYzOGJkMTE0YjhlMTU5YTIxZTIwMmRmMDBjNGY0Y2VjMGViNCBsZWdhY3ktdHJ1bmsKKzMyMjU5IDk0N2MyOTM3YzA5ZTIyMTNlMTU1YjAzNWZkYjk0M2JhZjA5YTFkMmMgbGVnYWN5LXRydW5rCiszMjI2MCBhMjZiNmIyNzVmYjcyZDk4OTdjZTFjOTk3OWIyMTBlNmY1YmYxODVlIGxlZ2FjeS10cnVuaworMzIyNjEgMzZlOWJhNDA1NDkyNTlmM2VlMWU3NGUyZjQ1ODNkODY4YmNmZGU1MyBsZWdhY3ktdHJ1bmsKKzMyMjYyIGM2MjllZDhhOWRiYjNhODRjYzM1ZmU5YzNkYWIyN2E0ZmY1YzllZTIgcmVsZWFzZTIyLW1haW50CiszMjI2MyAxMWY3ZjExODA3MmI2NGZmMDFmZjIzNjI0MjkxNjllZGM0NWFlZWExIGxlZ2FjeS10cnVuaworMzIyNjQgYWNmYTBmZjhjNWE0MDE2YjU5ZWYwNTYxZDJiOWE0YzE2MWU3MmY0MSBsZWdhY3ktdHJ1bmsKKzMyMjY1IDliZTQxMDM4MDdmNWM3NDVmZjliMjUwNjRmYzZmMmY3NjhjNGQxYjkgbGVnYWN5LXRydW5rCiszMjI2NiBiZTBkNGVjNmJmNWE5YjgwZTkxY2E1M2ZiM2QyNzNhZmM2NmJjMDhmIGxlZ2FjeS10cnVuaworMzIyNjcgNDgyNGFhYjEyNTQ5YmIwYzM3Y2E4MDJhMzNlMWM3MDAxNzgwMWZlNiBsZWdhY3ktdHJ1bmsKKzMyMjY4IGE4ZTY0MGI0NzdmNjZkNWI2MTUyMmJkNzljOWM1ODA3MjBmNGE0MDQgbGVnYWN5LXRydW5rCiszMjI2OSBjZmVjZTE4MjJlOTQyMzcxZjdmOTliNGIyM2QyZjY2NjVlZDEyMzhhIGxlZ2FjeS10cnVuaworMzIyNzAgY2EyNDgyMDEyYjNjNjAwZjg2NWQzYWY5Zjg5NDE4ZWRlYjhmMmZmZiBsZWdhY3ktdHJ1bmsKKzMyMjcxIDhlNTQxYjA3OGVkYjUwOWI2Y2RlZjBjMjA3NjEwZGM0OTgzYzI5YmQgbGVnYWN5LXRydW5rCiszMjI3MiBiOTc0NWNkNzkxYmZkZGE3ODAwNmYwYmQ3YjIzZTNjODY0ODMzNzkwIGxlZ2FjeS10cnVuaworMzIyNzMgMTkzYjhhZWMwMGNlMWJlMmYwM2FhOTY5OWE1ZDZmNjUxNmNmNzkzMCBsZWdhY3ktdHJ1bmsKKzMyMjc0IDlkNGUxMzg0OTRmYjMxMmNlMjhhODUyNGU5MWIwNWQyNjRmOGQzODcgbGVnYWN5LXRydW5rCiszMjI3NSAwZTg0MTZiZTIwOGUwZWI2MDRjZmZmZTdjYjU3MGY2MzZiM2MwM2QxIGxlZ2FjeS10cnVuaworMzIyNzYgMDRiMTcyODQzMjkyOTgxMjE0OGNiMWM2OGQ4NWRlODc2ZTU5MDgxZiBsZWdhY3ktdHJ1bmsKKzMyMjc3IGQ4YThmNzQ0YTNlNTA4YjVlMTMwNzM3NjI2ZmM0NTY0ZDk1NjVhYjIgbGVnYWN5LXRydW5rCiszMjI3OCA3ZmRhMDlmNzUxYWQ1YjFjOWI0NzhmOTNkNzBiMzY3Njc3MWQ2ODNkIGxlZ2FjeS10cnVuaworMzIyNzkgMjhhMjk3NTUxNGNkNjFkNDM2MDBjODUzZWZjOGQ3OTJmNmRhM2JjNSBsZWdhY3ktdHJ1bmsKKzMyMjgwIDU2MDA2ZDk3YmNlZjBiZTUwYzdiYmY4YTJiYjY1ZDM2OTA4ZDBlYTQgbGVnYWN5LXRydW5rCiszMjI4MSAxZTkwMDQ1NTNlMWQ5MDViNDEwOWNkNzM2Njk5ZmRiYjhkNWJkNTE4IGxlZ2FjeS10cnVuaworMzIyODIgMTZmNDdiZDQzMWM0ODc5MmNlY2U3NTRiMGMwZDRkYTA5MzRjZjFkYSBsZWdhY3ktdHJ1bmsKKzMyMjgzIDJmYWU1Zjc2MzFlZjRhYWU3YTBjMWJkYWI2YzQ1MzcyNTJiZDZkOTEgZ2V0YXJnc19tYXNrX21vZHMKKzMyMjg0IDRkMjI1OWNiNzdhMGUxY2Q3ZDg1NGRkMGQ1MGQ1ODJlZTczZjJiNzggbGVnYWN5LXRydW5rCiszMjI4NSA3ZmExNGYyMGFlYTQyMjMyYjY0YTZhZTA2NDI0MTcwNTEyYzdhNjUwIGxlZ2FjeS10cnVuaworMzIyODYgODgzNjUyOWU5ZTY2NzBhNTVmNzQ1NzE3ZWMyOWE1NjU1YTQzZTYxMiBsZWdhY3ktdHJ1bmsKKzMyMjg3IGVlMTY1ZmUxYjQyZjYzNGM2Yzk2MGIxZjI2ZTU2MjFhOWY1MjZjNTAgbGVnYWN5LXRydW5rCiszMjI4OCA1ZjFlZjE4ODJiMjUxODhlZTA2ZTJhODRiZWNjODdhZDg4OWRjYjQyIGxlZ2FjeS10cnVuaworMzIyODkgN2U2NjVjMTYwNTgzZmI2NjM3OGQzZWM1ZjlmODQ0MDYzNzcyZWQ5ZiBsZWdhY3ktdHJ1bmsKKzMyMjkwIGVlNmRmMmM2NjhlYWNjZGQ5YzAzYTJkMjQ2NzdhZTcwMTQyZTA2N2YgbGVnYWN5LXRydW5rCiszMjI5MSAxMmQ0NDA5ZTU5ZTMwM2EzOTc4ZjVkMGI0MzNhN2U4ZDY3NTY3OTQ2IHJlbGVhc2UyMi1tYWludAorMzIyOTIgZTMzZmVkYjU4MWY0YjA3YTlmODQ1N2U4MDE4ODk4OWJjMjY4OGUxYyBsZWdhY3ktdHJ1bmsKKzMyMjkzIDIzOTQyOWRjMDI5ZmM4ZDU1N2FjNjgwY2M4MjQyM2I1YzJjY2QxZWMgbGVnYWN5LXRydW5rCiszMjI5NCBhOTM4YjEzZTAyOTExMjM4MmFmNDA1ZjhkYTJiMjFmYzIwN2U0YmQ1IGxlZ2FjeS10cnVuaworMzIyOTUgNWJmZGJjMGZkMTcyMmE4NDMzYzM5MzhkZmZkNDM3NTA0YjI5ZTdjNSBsZWdhY3ktdHJ1bmsKKzMyMjk2IDA0NmJjOWQ3ZmIwZTQzM2M0NWYxNzc3MjY3NDcxNmZmZTIyYTE0MWYgbGVnYWN5LXRydW5rCiszMjI5NyAwZDhkNGM4ZGM2OGJiODg5YmU0ZDNhNWNlZjZmMTc2ZWYyNTM5YmE1IGxlZ2FjeS10cnVuaworMzIyOTggYzU1NWNkMDJiMGY5NjNjZTA0MWU2ZGNjMmZlZTY0NTQ1NjViN2YxMyBsZWdhY3ktdHJ1bmsKKzMyMjk5IDE5MjU0MTM0MzFhNmVjMjhmYzg2YTlmNjc5OWNkNjgyYWMzMmUxZmEgZ2V0YXJnc19tYXNrX21vZHMKKzMyMzAwIGZkYTJmN2Q3ODNjMjRhZjNhYWMzNTM5MTUwODUyY2I3Y2RiMWM3MDIgZ2V0YXJnc19tYXNrX21vZHMKKzMyMzAxIGQ0MWQ4ZGU5NzY4ZjM3ZjE3MWU3M2EwN2FlNTdiNDY1YjE3ZGI5ZWQgbGVnYWN5LXRydW5rCiszMjMwMiAyYTIzZmM4MzcyMGZhMTI2NGMzYzVkYTU2YTMyNjMzMDMyNTdlODUzIGxlZ2FjeS10cnVuaworMzIzMDMgYzFiYTUwNzkwYzgzODQ4NWJiZGJkM2U4NWZiMWYzOTVkYzVhMGUxMyBsZWdhY3ktdHJ1bmsKKzMyMzA0IDllYjY5NjRiNGI2Yzk4OGQ4NmVjZTRhZDEzNzdlNjVjMjgzMDRiYmIgcmVsZWFzZTIyLW1haW50CiszMjMwNSAxNTU2YTM4ZDUyNzgxNTQxZDk5YTQwNzBiNDJmYjk0M2MzYzg5MWVmIGxlZ2FjeS10cnVuaworMzIzMDYgNWZmMWYyZjlmYzM0OTNmM2JhY2EyMzU3ZDU0NjdhOWZiNTJlOWRlZCBsZWdhY3ktdHJ1bmsKKzMyMzA3IDE4MTUxNjZlODA5Nzg3NWUyNmMyNjQzY2E3ZTkzYTQ2MmQ0MGViMTMgbGVnYWN5LXRydW5rCiszMjMwOCAzMWNiOGUwMjYwZGI1MTAyYjBhYjUwNmM0YWVlMzljOWQxMjQyOGFlIGxlZ2FjeS10cnVuaworMzIzMDkgYWIwYzA2N2ZlMjg2ZmJkMzAzYWNlYzE2ODgzNzQyNzRiNTg5NjYyNyBsZWdhY3ktdHJ1bmsKKzMyMzEwIDI3NjM1MmJmY2I0MmI0MWFhZTk2NjE0ZmFiM2RlMzIxNjFjZTNmODIgbGVnYWN5LXRydW5rCiszMjMxMSBjYTY0YzFiZTIzMGJhY2U0YTNiZTJiMTAzYzkzMDQwOGIyMTIxODdjIGxlZ2FjeS10cnVuaworMzIzMTIgY2Y0NWFkM2NhNGI3NWRkY2RiYzUxMmQ3MmI5M2IzZmMwZDU0MTRiMCBsZWdhY3ktdHJ1bmsKKzMyMzEzIDQ2MmE0YzMxMThiYmMwNjgyOWNhZjFkMGMyOGFmY2Y0YTM2NzE0ZGQgbGVnYWN5LXRydW5rCiszMjMxNCA4YmQzNGRkNThhOTJhYTMzNDczZjlmOTdlYjI3NGNiN2NiMTY2YjM3IGxlZ2FjeS10cnVuaworMzIzMTUgYzViZDhhODQ1MjIzOWYzNmJlMjMxOGE2MzQ0YzU2ZDc4NTk5NzdhMiBsZWdhY3ktdHJ1bmsKKzMyMzE2IDcwZDZmOGIwZmM2OTQ1ZTcxZjQ0MzhjZTA3YjRhOTFjYTEzMGMzMTggbGVnYWN5LXRydW5rCiszMjMxNyA0MGQyODdjM2Q5MDYyMGE3NzY1MzAxNTg4OWRlZDViYmI4NDY0ZDZhIGxlZ2FjeS10cnVuaworMzIzMTggZDBhZTYyMGFmYmQ0ZDQxYjhhNjVmMTI1MDUyYWM5MGUyNGU3ZDZmNSByZWxlYXNlMjItbWFpbnQKKzMyMzE5IGVkNWVjZDYzYzFjZjliN2Y0ZjI5OWM4MTJiODY4ZGU4NWEwZTczMGQgbGVnYWN5LXRydW5rCiszMjMyMCA5NjQyZmI0Y2RhMmZlNGFmNTZlMGI4Yzk4YzhkZjVjNTUzMjI2MjIzIHJlbGVhc2UyMi1tYWludAorMzIzMjEgYzk5MjVmYTI5ZWEzN2U1NTg4NDg2ZDk3NTI2NTlkYmRjY2ZhM2Q0NiBsZWdhY3ktdHJ1bmsKKzMyMzIyIDA2ZDEzN2E0MjdlOTYxMWQzZmIyNjBhMjEzZGY0MThmY2FlOWM3N2UgbGVnYWN5LXRydW5rCiszMjMyMyA3OTIyZDVmNDM4NTQzYTU3NjVkZTY0ZjgwMjI5Y2UzMTcxZDIwMzQ3IGxlZ2FjeS10cnVuaworMzIzMjQgYTQxNTRkZDU5MzlhYTZiYjNhMTEyODkzOWU5MDc0ZDZiMTM4M2QxNSBsZWdhY3ktdHJ1bmsKKzMyMzI1IGQ2YWZlMTk2ZWY4MjA4M2ZmMjIyNjIwYzlhYTU5NWVmY2M1MzlmYjMgbGVnYWN5LXRydW5rCiszMjMyNiA2NThiMTBjNWJhMmEzZDZiZTE2N2YyZjRkN2ExMWUzYTdiNjE2NjBkIGxlZ2FjeS10cnVuaworMzIzMjcgMDE4MTcwYTRhMmQ3YWMyNTBhZWRmMDc3ZmI5NjhlNmFjOTY4Yzg3ZSBsZWdhY3ktdHJ1bmsKKzMyMzI4IGFlZjAxYTA3NmVmOTY3YWU3OTNjNGQ2M2M3MjQ0MGI1MTMyZGMxM2QgbGVnYWN5LXRydW5rCiszMjMyOSA5Nzg5MDEzNGM5YzQ0MzkzYmIzNmEzODI3YzA3YjU1NmFiMjA1Mzk2IGxlZ2FjeS10cnVuaworMzIzMzAgNDFmNDU4YjhkYTIwYTMzNGVlYzY3ODE4ZWRkOTg2ODI3OWE1ZTQ0NiBsZWdhY3ktdHJ1bmsKKzMyMzMxIDQyZGU1MGUxOTJkZjViOWU0ODA2MzNhMjNjODY5OGZmZmNjMDA5ZjUgbGVnYWN5LXRydW5rCiszMjMzMiBkNmUxM2QxMjEwYzZiNTg1MGZhMTUxODFkNDBkYjliODA4OTVmMDY5IGxlZ2FjeS10cnVuaworMzIzMzMgMmNlMzlhN2JlNzlkOWE1YjE3ZThkY2Q3ZDA4NzEyYmY3NGFhODJiNSBsZWdhY3ktdHJ1bmsKKzMyMzM0IGZhNzg3NGVjNmE3MWVlOGM5OWMzMjJjMmI4NGRhMTEwYzJhNTA2YzAgbGVnYWN5LXRydW5rCiszMjMzNSBiZTE0OTcwYTk5NTUyMmZlZGFhODlmYmM0NzVmYjE0NzgyNWQwYjVkIGxlZ2FjeS10cnVuaworMzIzMzYgNTI5MzBiZTlkZmVhNWE1NWI0Y2Q4MjFiMDRhZThhNjNmNzg2ZGRkZCBsZWdhY3ktdHJ1bmsKKzMyMzM3IGRlNzY5MDUyNzU4NDNlNzlhNjRiYTUxNTcyZTk1YmE3MGE4Y2EzNzcgbGVnYWN5LXRydW5rCiszMjMzOCBlZGNmZGIyYTg1MmU5YWYzZWQ5ZjdhZTk1NTIyNDc1OGE0ZTkwMGI0IGxlZ2FjeS10cnVuaworMzIzMzkgMjlmM2IyMzc1MDQ5ZWYwNjgyN2U1M2IxYzMwZDU3N2ZlNjEzMTUzOSBsZWdhY3ktdHJ1bmsKKzMyMzQwIDE0OWJkMGVmOTRmYjg0ZGU5YmNhMmEwMDA1ZGI2Yzc0YTdlMmQ2YWIgbGVnYWN5LXRydW5rCiszMjM0MSA4MjBkOTU3MGVkZWJjM2MyYmQ4ZmZkMDVkOTQxNGQ4MGU0YTkxZmUxIGxlZ2FjeS10cnVuaworMzIzNDIgZDMxMjdiNjcxZDM2YzM4ZDhkN2JjZDRiZDU4Y2VkNTRmNGVlYzc3MSBsZWdhY3ktdHJ1bmsKKzMyMzQzIGQwOGQxNWE3MDI5NTBiNTdhZDJiNWRjYzdmZDJhYzkyMjVmNjMwYTEgbGVnYWN5LXRydW5rCiszMjM0NCBlYzJhMGYxNWMxNGNkMTlkNDQ5NDNjY2ZmYTliODJhNzlmZGM2NzFhIGxlZ2FjeS10cnVuaworMzIzNDUgMWQ4ZTg0ZDk2ZGRlYzZkZjE3MDZkODhhM2I1ODdjOGJkODcwZWE4ZCBsZWdhY3ktdHJ1bmsKKzMyMzQ2IGFiNGZiZjhlYmFiM2IwYjU4MDZhNmI0MWRkY2MyODkyYTk0YmZjZGYgbGVnYWN5LXRydW5rCiszMjM0NyAxM2QwYTNjNGU0NjU3NWJjNzJkZWYzOGM0NDk3NDVjODU0MTY3ZjdkIGxlZ2FjeS10cnVuaworMzIzNDggMTZlZjViOWJjNzg5Y2I5YTM4NTQwZDUxMjFlYzI4MjRkNDBkNDczNiBsZWdhY3ktdHJ1bmsKKzMyMzQ5IDVlNmZmYTY1NTQ2MjM0Y2IyOGExNWE2NGRjZDgzMTBiMzMzNmU0NDMgbGVnYWN5LXRydW5rCiszMjM1MCAwM2FmNDZkMWFjMjg0MDU2NzU1MWRjZDhhMTIyZGMzMGIzMzQ1OTAxIGxlZ2FjeS10cnVuaworMzIzNTEgNDY0OWYzMThmY2IwMmRhZmJlZTJmNjE5OTQ3M2YwODFhNjk1NGZjYSBsZWdhY3ktdHJ1bmsKKzMyMzUyIDgxNjBiYzc4YzkzYWIxYTYyMmViODc1ZjlhMjA0NzM0ZDIxMGE1ZGYgbGVnYWN5LXRydW5rCiszMjM1MyA4OTIwNWY1YmI0NDBiZmNhYjVkZjBmOWJjMmE0MTgwNWM5MDA2YzAwIGxlZ2FjeS10cnVuaworMzIzNTQgOWVhMGNjZGRiZWFkMzY5NGZmMzIwOGQ4YjcyMTUyNWZkZGExYzJlZCBsZWdhY3ktdHJ1bmsKKzMyMzU1IGRlNmQxZTdlOTgyNTcyNDJkY2U0NDIxMmRhNTdlY2FkNjQxYjQ0ZmUgbGVnYWN5LXRydW5rCiszMjM1NiBhYzhkYmJlNjI0MzJiOTRmM2Q2MDA2ZTk4Yjk4YzFhMmVjYTA5NTBiIGxlZ2FjeS10cnVuaworMzIzNTcgMDUxYTRmMTJjYzQ2MjU3MTc4NTNkODM1YzMxMGZjNTE0OWIzNmJhMyBsZWdhY3ktdHJ1bmsKKzMyMzU4IGY5NjhlOTNlM2NlMDE4NzE3Njk4YWQxNGM0MjZjZDEzNWQwNjgzYWMgbGVnYWN5LXRydW5rCiszMjM1OSAzMWNiZDQ2ZjBjN2Q2OGRiMGVjMzk3MDRjODMzZGZiOGNkYmQxZjU0IGxlZ2FjeS10cnVuaworMzIzNjAgYWM1ODYwOGNkMjNjZTg2ZTViYmM1MzI1ZDYzNTE5OTYzMmUzYWMxOSBsZWdhY3ktdHJ1bmsKKzMyMzYxIDg2ZjQ5MzNmYTQyOTVlMWVkZDNiMDBmNjA1YjMxY2JhYzMzNDUxOTYgbGVnYWN5LXRydW5rCiszMjM2MiBiYTkwOTIzNmViMTNiMTA4ZTA1MjJmNjZlODA4YWMyZTQ0YmY4OGZiIGxlZ2FjeS10cnVuaworMzIzNjMgNDNkMzJmNGY4OTEzODQ3NDg5ZjM2MDBlZmNmY2RlMjVlMWFhYmQ0YiBsZWdhY3ktdHJ1bmsKKzMyMzY0IDVjODg2ZTAzYjQzZTQxY2I3MWY2NGYyZDZjYjA2MGJjZWY0MWZmY2EgbGVnYWN5LXRydW5rCiszMjM2NSA3YmJhM2UyYmU1NGU3ZWFhNTAwMmY2OTAzYmYwNzA0NjAyNmJiYzdhIGxlZ2FjeS10cnVuaworMzIzNjYgYWE2MzRhZGI0MWE5MDBhZDhjOTc2MDFlNDIwY2Y0OTVhZGI0OTBlZiBsZWdhY3ktdHJ1bmsKKzMyMzY3IGQ3OTI1NDRhYjExMWY0NDJjOTZlZDRiMGExNzdiY2M0OTU1MmIzNzAgbGVnYWN5LXRydW5rCiszMjM2OCA1MmYzZDkwYzE3ZTgzZGU1MzQ1NGQ4ODE1MjY2OWJhYTc3YmM2YjY0IGxlZ2FjeS10cnVuaworMzIzNjkgY2VjOWQxM2M0M2ZmN2RiODJhYjgwZDYzMGFjYjM2YzU4NGQyOWZkZCBsZWdhY3ktdHJ1bmsKKzMyMzcwIGQzMjk3ZTI5ODIxMWI4YzdiYTUxNmY2OTMzM2MwMGQyOWM1OWQzYjYgbGVnYWN5LXRydW5rCiszMjM3MSA2NmNjZWI3NTYyYjU2YTkzNGZmNjBlYTFlZjMxMmYzZDRjNDFiNTc3IGxlZ2FjeS10cnVuaworMzIzNzIgYmQ2NzhlNjVmNzg0MzIwZjQzYmMzZGMyYmU4ODk4YzZmNGFkMjk3ZSBsZWdhY3ktdHJ1bmsKKzMyMzczIDZlMmU1OTg1Mzc1YzYyNDdlYzZiZTA1ZGE0MDA0NGY5MzdkM2NjYzkgbGVnYWN5LXRydW5rCiszMjM3NCAwMTRjZmFhN2E3ODRmYmEwYTI2MmZkMzQzYjQyMTNhOWFlMGUwYzhjIGxlZ2FjeS10cnVuaworMzIzNzUgMWY5NjA0OWE3OWQ0Y2Y5ZjI5Mjk5MDMwMzdkOGIxNzFlODQ0OWUxNiBsZWdhY3ktdHJ1bmsKKzMyMzc2IGMwYTI2YzVhNzkzNjQ3MGUxOWMyYjc1NDM3MzIzNTg0OTM4ZWQ1MDAgbGVnYWN5LXRydW5rCiszMjM3NyA1NjNiYWEzZTQyOGY2OTQ2NWJjNGQxODk5MTQzMzA4YTNkMjNiN2U5IHJlbGVhc2UyMi1tYWludAorMzIzNzggYjQ5ZmYwNGMxOGRlN2VkMGU0ZDdlZjU5ZGQzYjI5N2RiNDQxZTdmMyBsZWdhY3ktdHJ1bmsKKzMyMzc5IDg5ZGMzMjY3NDU1NGVlZDAwNTYzNjEzMzQ0YTI3ZWRlYzJkNjRhYmIgbGVnYWN5LXRydW5rCiszMjM4MCA3NTY1MTJmYmI1Mjc4ZDI1MWQ0NWIyOTk3MjQyZjhkZDJjMGI3YjMzIGxlZ2FjeS10cnVuaworMzIzODEgYTFkN2NjZDk1YTVlODNkNjE0ODk4MGNhYThjYjhhMzRkMDNkODZiOCByZWxlYXNlMjItbWFpbnQKKzMyMzgyIDBhZDc0NTNhOWY4Mjc3NTAzMDZlZmU3M2JkMjBhNjgxOGVhZjQyMzkgbGVnYWN5LXRydW5rCiszMjM4MyAwODVmNjgwMDljYWQ4MThjZWI0ZDMzMTM3MGUyNTk3OGQxMmVkMWFiIGxlZ2FjeS10cnVuaworMzIzODQgOWM3YWQxZTQ1NTk2MGNjZTc0NjIzN2FiYzNhZmZhYmZlNzcwMDk4MSByZWxlYXNlMjItbWFpbnQKKzMyMzg1IGRkMDIyZDQyM2I4YTA4ODZkZWY2MTM0NjcxOGE3MDM5ZWZkZDI2Y2QgbGVnYWN5LXRydW5rCiszMjM4NiAwNzE3MjQyMjk1YjExY2IzN2ZhYTA4YWIxZDJiY2E3NjdjZjYwNmI5IGxlZ2FjeS10cnVuaworMzIzODcgOTllODJkYmFmMGNjZDgyOTg3NzY0YWQ3YWRjYmM5MDU0MTMxMTZjOCBsZWdhY3ktdHJ1bmsKKzMyMzg4IDdmMjM2NjdkM2NmYzRhZGRiNDIxNzM3MjIwYzg1ZDcxODBiZGVjODIgcmVsZWFzZTIyLW1haW50CiszMjM4OSAzZGYwY2YxNmRlZmMyMjhmN2MzODJkZWNiYjI3MjNiYzgwZDJhMGYxIGxlZ2FjeS10cnVuaworMzIzOTAgMjJkMTc3NjgyYWUxNGZmMTdmYTE2ZjZmNmYxMjY1N2ZiZjJlMjM0MCBsZWdhY3ktdHJ1bmsKKzMyMzkxIDE3MWRiZGRmMGEwMjE2NzBiNTM4Y2Y1MzQ1NTkyNDY1MmQyNjUzYmEgbGVnYWN5LXRydW5rCiszMjM5MiA2NTAzYWQ4ZGNhODgxN2RjMTA0YWNlOGJjNTg5MTcwN2IxODZhOTBjIGxlZ2FjeS10cnVuaworMzIzOTMgNjM0OGI4NWJjYjlkZTgwYjU4ODZlMWI0N2UwNjNlYTQ1ZjY0ZDIxMiBsZWdhY3ktdHJ1bmsKKzMyMzk0IDljMGFkNjk0ZTNlMjBhM2YyNmZlZjBhM2M4YjQyMjEzODA3MDg5NWQgbGVnYWN5LXRydW5rCiszMjM5NSAyYzc0NDdlZmMyYThkMGUxNmUwZmQ0NmUzOGJkZDU0ZWRkNGZmOWQ5IGxlZ2FjeS10cnVuaworMzIzOTYgNzUzODJkMTAyNzQ5Y2NlOTQwZGQzMGIzNDE3MDMzNWU0MzU4OWMxYSBsZWdhY3ktdHJ1bmsKKzMyMzk3IDYwZWFjYmVhNzE5OTJjMTY3MWU2MTM5MWE4NmNlOGQwNDg0OGVhZjIgbGVnYWN5LXRydW5rCiszMjM5OCA5Yjc5NjA1MTcxZWJkNGY1NTY4ODI5MTc0YTkzYThhZjY5YmYyZjNmIHJlbGVhc2UyMi1tYWludAorMzIzOTkgOTQ2NmI2ZTI0ODMzMmU1YTI2YmE5OThhZDBkYTA1YWM4Zjg2YjU0YyBsZWdhY3ktdHJ1bmsKKzMyNDAwIDAwYjg5NDcyNjIwZDdlNGJhODg0ZWE5NWMyM2Q0MTJjNmIzMDdlNGQgbGVnYWN5LXRydW5rCiszMjQwMSAyOWI2YTQ4ZjRjNDUwY2ZmYTc3NDgwN2JiYTBlZmYwZmQwNTEyNThlIGxlZ2FjeS10cnVuaworMzI0MDIgMGVhNTk5MWY2ZWRiYzRjMjczY2U1OGQ2NTEzN2FmNDE3N2RlNjI4MCBsZWdhY3ktdHJ1bmsKKzMyNDAzIGUwNmYyYmY1NmI0MDY4Mzc0YzkyZmIzMjc4NmQyNjVjM2Y1NjhmOGYgbGVnYWN5LXRydW5rCiszMjQwNCBjOWJlZTExZWFhOGI5ZTVjOWMyYmNiM2QwZDIxNWFkMzlkYWZhODgwIGxlZ2FjeS10cnVuaworMzI0MDUgYmM0MjMxZWIyNzU4NDE2ZjY1MzE0MGVkOWRkNmYwYWYwNjU5NjhkNiBsZWdhY3ktdHJ1bmsKKzMyNDA2IDIxMWMwMmZiNjU3MGFmZTFjMmVkMDQwOWE5OWFiMTE4MjhkMTc5OTUgbGVnYWN5LXRydW5rCiszMjQwNyAzZWJiNGJjZWJkZDdlZDY0NzA2MTk2MmQyOTA2ZjU4YzA5MzA4NzgzIGxlZ2FjeS10cnVuaworMzI0MDggMGQ1MzAyOWI3OTQ5N2E2MWQ4NzFkYmFhMDYyMTEzMjIzMDFmODhiNiByZWxlYXNlMjItbWFpbnQKKzMyNDA5IDcwOGFlYTgyYWRlODcwYWIyYjNmMjJmZWE3ZjAzNGYwYWFjNGI1NjAgbGVnYWN5LXRydW5rCiszMjQxMCA1MWVkOWY1ZTM2YTE4Yzc3MjQ2M2Q1MGVhMzZiYzM3ZDBjYjViZjMzIGxlZ2FjeS10cnVuaworMzI0MTEgNzg3ZDY2NWUxY2RjNzMwM2NiYTllM2UyOTJkNzg2NWU2NDlkMTE4MiBsZWdhY3ktdHJ1bmsKKzMyNDEyIDM5NWYyYjk5Yzc1MmY5MDZhN2MzNTJmMjg0YjE2M2UwOWU3ZWE1MWYgbGVnYWN5LXRydW5rCiszMjQxMyAyYzViZjA5N2RhZjg1NWEwZGFlZTllMWNhN2RhMDhjNjEyMTI4M2FlIGxlZ2FjeS10cnVuaworMzI0MTQgNzQ5ODE5ZjhiMmFkY2E3M2Y1ZGVjZWJlZGYyYTFjNTJkZWRiMTMwZiBsZWdhY3ktdHJ1bmsKKzMyNDE1IDYzZWIwYzk4N2RlN2RiNDAyOTEyMWJjOTdiMGIxYWUzNWZiZDUxZjkgbGVnYWN5LXRydW5rCiszMjQxNiA4YTZlNGM5MmJkN2YyYmQxMjdlMjMxNDE5Mjg4NDVmZTc2MWVkYjJiIGxlZ2FjeS10cnVuaworMzI0MTcgNjgxNjcxOWY0MzljNTlmZDcyNmU1OTIxMWU5NDA1ZTExMmRmOTczMCBsZWdhY3ktdHJ1bmsKKzMyNDE4IDU1ODY4OWI2ZDdmMGViNTJlZjFmNjFhYmI1MzZhZDA4ODYwMGY1ODUgbGVnYWN5LXRydW5rCiszMjQxOSAwMTVkODkxZjM4NzNkYzAzNDg0NzJkOWIwMTAwY2ViYTA5MzVkYzk4IGxlZ2FjeS10cnVuaworMzI0MjAgMjRkMmEwNWY0MWNjYTE4MDJhN2FmOGFjYWJmODAyOTE1Y2I2ZTY1NiBsZWdhY3ktdHJ1bmsKKzMyNDIxIDY0ZDdiODc2NzIyZmQ4Nzk0NjE2ZjEwN2FmYzlkYTU3NTA0MGQyMmEgbGVnYWN5LXRydW5rCiszMjQyMiA4MDk0YzBkYjk1ZjhiNmE5NDg2ODM2MGEyY2YyNTk5ZmVkZjRiMjExIGxlZ2FjeS10cnVuaworMzI0MjMgODAzYmNhMjI0YzhmYTdkMjE3MjA4MDIyNzM4NDBjMTUxZGNiZDdmNiBsZWdhY3ktdHJ1bmsKKzMyNDI1IGE3NmEzNjgzMDEyYmMzN2M0MDAwMmQxNTBiMjgwYzEyYWUyMDgwMzcgYXN0LWJyYW5jaAorMzI0MjYgMDVlNTczODhjYjhmZGNlZThjOGE5OTc0MzM4NGRlYjMzMjFjNjU2ZCBsZWdhY3ktdHJ1bmsKKzMyNDI3IDcyNWIyODFjY2VhZDM4YmY3MTIxNjNiNjJkMWQ0ZjI1Nzk5ZTYyYjIgbGVnYWN5LXRydW5rCiszMjQyOCBmODc0YTRkMjljYTQxNzhlYjUxMjkzMGFlOGZlOGFjMTA0OWQ1MmFmIGxlZ2FjeS10cnVuaworMzI0MjkgMjE2MzNlOWRmOGNjNDZjODY0NTEyMTg0MjJkODQ4ODFmMzRiOTJiOCBsZWdhY3ktdHJ1bmsKKzMyNDMwIDExMjU0MDE2MGI2NTJlNmFjMjJiN2U5ZGMxMGExMmI3MzY4ODdiOGEgbGVnYWN5LXRydW5rCiszMjQzMSA0NmQyNmFmYThiOTU2M2ZkMTI1YWRiMzcyMjA3OWQ4MjhkZTJmMTU5IGxlZ2FjeS10cnVuaworMzI0MzIgNzJkYjc1NzVmOTcwMDBjOTdiMjY5YTFhYzZkZjcwOWZlZGVlMGI5YyBsZWdhY3ktdHJ1bmsKKzMyNDMzIGE5YjU2Yzc4ZTBkNjRlY2RlNDM0YzlhYzMzODM4NTgyY2NhYzliNjEgbGVnYWN5LXRydW5rCiszMjQzNCAyNWM4Y2VlNDQ1N2U2YWQwYWZmMjEyODdlMDAwNzEzMmVhMGUxMmU1IGxlZ2FjeS10cnVuaworMzI0MzUgYzM0Y2Y5Y2U5NTJmOWZhMjgyYmE2NjE4YTZmZmZiNjIyODZmNmFlZiBsZWdhY3ktdHJ1bmsKKzMyNDM2IDBjOTUwZTMzMjNlZTRlZTYzNzA2MmI5ZWFhZmE1MGVjM2NmYTA2YzEgbGVnYWN5LXRydW5rCiszMjQzNyBjYTRiZGFmNWM3NTc1ODU5ZWFlM2ViNDk5YzViOWVlNjgzNGQ2MDg4IGxlZ2FjeS10cnVuaworMzI0MzggMTAyZjllMzU4ZjUyMTM4ZWNmNGM0MTQwNjc0NzU4Y2RmMTcwMzdlNiBsZWdhY3ktdHJ1bmsKKzMyNDM5IGMwYTFlZmUxMDI4NDczY2NiZjFmZDI1ZDhjODIzM2YzOTUxMGIzZWIgbGVnYWN5LXRydW5rCiszMjQ0MCAyYmEyMGZjOWY0OTUzYzA4YmE5NWFiNDc3NmI4ZmZkODA5NzBlZDY4IGxlZ2FjeS10cnVuaworMzI0NDEgMjhhMDk3NjdhMjRmZmE3OTFjNjcxM2U0MjM1ZWUyNWJmZmFlYTkzYSBsZWdhY3ktdHJ1bmsKKzMyNDQyIGE1ZTFiMTY2MmVjMDExOTFlZDM5N2IwZjliYzllNTI0YzZkNzA3MzMgbGVnYWN5LXRydW5rCiszMjQ0MyAyYWY5M2ZkZmY2MDg4OGU1NDc2ZDU4ZWY0OTY1YTU2OGVhNzJiMWNkIGxlZ2FjeS10cnVuaworMzI0NDQgMTEzYzMxODg4NzU1NjE0NjZkMTFlYzM1ZTExNDczOWFhN2M3ZjBjMyBsZWdhY3ktdHJ1bmsKKzMyNDQ1IGVkNzRhYzIxYzEzMzIyMGZjMmM2NGU0Njc1MGEzYzMyMGEyZTk1ZGMgcmVsZWFzZTIyLW1haW50CiszMjQ0NiBiMzE2MjkzMzU2MzU1ZWZmNzY1NGZkNGRhMWZjYTNiZjJmMTdmMGUxIHJlbGVhc2UyMi1tYWludAorMzI0NDcgNzNkY2U4OTNlYjRiMzgwMjhkM2JlYjZiMzI4NDA0OTQwMzY2OThmMiByZWxlYXNlMjItbWFpbnQKKzMyNDQ4IDZiZDI4YWJkMzFhN2YwZDNlNmE5MmQwZjc2YTZhOWU4ZjgzYzU5MzYgcmVsZWFzZTIyLW1haW50CiszMjQ0OSA5MTEzMGE0Y2MxY2UwZWY0NmQyOWNmODQyYzNiNmY0MDlkMzA2NzQ2IHJlbGVhc2UyMi1tYWludAorMzI0NTAgNTdlNjE1ODg1NzFiMjBiMTJiMDA1MmM2ZWNlOTY4NDMwZjljOWIzMSBsZWdhY3ktdHJ1bmsKKzMyNDUxIDA0NWJkMTRmNzQ2ODI1YjIwNDhlZDZlZjQ1YTQ3N2ZmZTM1YWFkMmEgbGVnYWN5LXRydW5rCiszMjQ1MiA2MGU3MjIzODRkNjJjNmY4MDY3ZDJkZjIxYTZkMDNhZTgxNWMwOTNmIGxlZ2FjeS10cnVuaworMzI0NTMgNjRjYjY1N2IwMzM4NDQ0ZDJlMzhlZjdkYjk3MTQyNTlhZGVhOGNjZiBsZWdhY3ktdHJ1bmsKKzMyNDU0IGRlZjA5ZWMwYmMzMTcyYzU0Zjc1YjEyOWEyMTUxMzgxZjhkNjliZWMgbGVnYWN5LXRydW5rCiszMjQ1NSA3Mjk2Y2QzZjQ1YzdmNDczZGU3YjJhNWQ5NmNlMjhhNDNhYzQ2ZmQ5IGxlZ2FjeS10cnVuaworMzI0NTYgMGNkOGQ1NzBjNTkxMTM5YmM0YWM2MWUxM2MwY2I3NmQyNjAxZThhYyBsZWdhY3ktdHJ1bmsKKzMyNDU3IDJmYWQ1NDgzOTFkZWQ2ZWQ0YmQwMWE2MDg3ODc3YzliZDhiOTU2NmMgbGVnYWN5LXRydW5rCiszMjQ1OCA5Yzc4NWFiMWVmZjAzYTI3MTE4OGRmM2M5YzBjNWI0NzkyODAyNjBiIGxlZ2FjeS10cnVuaworMzI0NTkgZGM0ZTQ3ZTZmMDAyMzVkYmJiNjQwMjQyYTc5YjI0NWIwMWY1MmYxNSBsZWdhY3ktdHJ1bmsKKzMyNDYwIGIzN2FmMjFiNzdiZTMxNWM4MjBkN2UxZGU5Y2E2Y2FiOWMwNjRlMzIgbGVnYWN5LXRydW5rCiszMjQ2MSBlMDZhYWQ5MGMwYWUyNGQ5OGZkYmIxOGIyZjkyOTIxOWE3MTgxMWUxIGxlZ2FjeS10cnVuaworMzI0NjIgMWM1YWQ5MzYwMzhlZjI2YzI5ZDYwZjU2NTNjOTQ0MWJlN2M1MWVmNSBsZWdhY3ktdHJ1bmsKKzMyNDYzIDcwMTJjYTY0YmM3NDk1YzczYmQwN2EzOWM2ZDUyMWU3ZDk2YWViMjUgbGVnYWN5LXRydW5rCiszMjQ2NCBlNGE1ZjM4ZmYwMDg5YmYwYzJiNmVmYjA4ZmY4N2U3YzQxNjYxZTg2IGxlZ2FjeS10cnVuaworMzI0NjUgZmExNTlmZWYyNzMwMDRkZjVhZjZkMTE0ODFmNDI3YjlhYjRlNGU4NCBsZWdhY3ktdHJ1bmsKKzMyNDY2IDQ1YzRhMmYxNTdiMzhlYmJjZjYyMjVhNDkzZGFlNjc0YTE1OWViZWYgbGVnYWN5LXRydW5rCiszMjQ2NyA5OGUzMWNmZDI2ZGMyNjFiYjRmZjIwMGU0NWY5MGJmNjU4ZWRkZDcyIGxlZ2FjeS10cnVuaworMzI0NjggZDgyMjM4ODA4MmJhZDQ3MTQ5NjJjNjUwMDlhYjY0YzljZWQ1Yzc5YiBsZWdhY3ktdHJ1bmsKKzMyNDY5IGMyYTA1ZTA3ODVmMTQ4ZmFlOTc3Nzk4MmZjNWE5NTY4OTQ3ZTBlZjcgbGVnYWN5LXRydW5rCiszMjQ3MCAyN2FmMzdkZDVhMGJmNTIxODQ1YTgzMmI0YzdiMDU2MjIzNWU2YThkIGxlZ2FjeS10cnVuaworMzI0NzEgMzlkODJkMDM4ODc4OTQxYWMxMjgwZjIwZjZmODVlMjc1Nzg1NjcxNSByZWxlYXNlMjItbWFpbnQKKzMyNDcyIDQ5MGFmMDBmYjE4MzBjMzU0YjM2ODg5NzNmNjhhMzA0YzRiZmJlNGMgbGVnYWN5LXRydW5rCiszMjQ3MyBlZjA3OWRlZmQyY2MxMWY1YTI4ODliZjgzNzk0MjhmNDgxMzBjOTBlIGxlZ2FjeS10cnVuaworMzI0NzQgZWU4MTVhNmIxMWUyMDJiZWIyNjU1Mjg4ZGY1ODYzYWNlNjkwNmI3YSBsZWdhY3ktdHJ1bmsKKzMyNDc1IDg2NTExYjk2ZDk4MGM3Y2NjZTY4MDYxY2U5NWY1YTEyMTJlYWVkMmYgbGVnYWN5LXRydW5rCiszMjQ3NiBjZDgyMjUzZjIwYjcwYzM2NzlhN2ZjMmI2MmMwYWVkYTY5NWU4ZjE1IGxlZ2FjeS10cnVuaworMzI0NzcgZmViMzU5NTRiMDM4NjhkMTJkYzFlMWI1ZDU2YWQ5Yzg5OTNiM2JiZSBsZWdhY3ktdHJ1bmsKKzMyNDc4IDRjNTNiNjk0YWZhNjk4MjQ4MmZmNjI2NWMyN2JmOGQwNTcwMzdlZTggbGVnYWN5LXRydW5rCiszMjQ3OSBmMzUxZmFiNzM4OTdkZGRiOGIzYjgyYzU5NTY4NjhhZDYzY2JkZjlhIGxlZ2FjeS10cnVuaworMzI0ODAgMWJlZjNlY2EyMGNlMDk5MWYzMDM0ZjE3ZjJkZTYwNTI2YjJkNTFjMCBsZWdhY3ktdHJ1bmsKKzMyNDgxIGFlMTdmYzgxOTMwOGIzYWI2NmY3MWI0ZjZlOTMyMjAxNjM2NjdkYzggbGVnYWN5LXRydW5rCiszMjQ4MyA3MzZiYmRlY2FhMWRmOWQ0YmY4YjYxZGU0NWQwM2M5MGE5MjU5ODg3IGxlZ2FjeS10cnVuaworMzI0ODQgNTQ1ZmFlYzc5MGM0NzMyNjBjNjUyYmFhM2JjYmExMTFiOWNlZjEzNCByMjNiMS1icmFuY2gKKzMyNDg2IDVjY2I1NTM2ZmVmZWJiYjY0YTMyOTE3NTZhNTYzOGJjMjc5YjJiNmUgcjIzYjEtYnJhbmNoCiszMjQ4NyA1Y2RiNzI4MGMzMjY2ZDk1NDhjY2Q4YTZiM2Q0MDZhMjFmMzhjOWNhIHIyM2IxLWJyYW5jaAorMzI0ODcgNWZjNjBlMGI4ODM2ODAyMDdjZmIxMDA4NjVjNDJjYTNhMmIxNjYzNyByMjNiMS1icmFuY2gKKzMyNDg5IDU3NmZhMTdmZjA3Y2MxNzNkMmIyNzdlNDVlNGE0ZGVhYjQ2YWJkMmIgcmVsZWFzZTIyLW1haW50CiszMjQ5MCAxNzFlY2ZmZjI2NTc5Yjc1OWY4OGI5ZWFjNWExNWUzNTM3ZGFkNjliIGxlZ2FjeS10cnVuaworMzI0OTEgYmRjZjM3YmU5MDRkYmQyZTM1M2YxYzdmYWVmMzE2MmJhNjFhMDI4MSBsZWdhY3ktdHJ1bmsKKzMyNDkyIDMwMzBkOTRhOWMwNTkwYmU0MTcyMGI5YzdjYWVkMTUyMTRlN2M4M2UgbGVnYWN5LXRydW5rCiszMjQ5MyBiNjJkODc4MTY5NzY5NTQxMmQ2ODZlZDAwNDNmZmQ3MWVkMWE0MTRmIGxlZ2FjeS10cnVuaworMzI0OTQgOThmNWJmYjE5Yzg2OGIzNjNmZDQwMDRmMzMyZmViODQ2YzVjOTRlZSByZWxlYXNlMjItbWFpbnQKKzMyNDk1IDY4YzYxODZkYzFhMTFiYjQxMmVlMDNhZWI5ZDFlYmFkZDdjM2JmMTcgbGVnYWN5LXRydW5rCiszMjQ5NiBiNjdmNWMzOTVhNjg4ZTU5MDU4MzY4MDQ4OTJmZGIzNmU2Y2U2MjQ4IGxlZ2FjeS10cnVuaworMzI0OTcgMTAzZmFhMGMyZTFlNmY2ZmI0YjQ3YjdlZDI0NTQyNTBhMDBhNzEyMiBsZWdhY3ktdHJ1bmsKKzMyNDk4IGRiOTg0NTkwN2U4YmVkMDM5NjQ2NWEzYmQ3M2JjZTZlMmVmNzg2MTUgcmVsZWFzZTIyLW1haW50CiszMjQ5OSA2NDIzMGVlOGVlYTU5NWJlMmU0MDRlM2UzMWRiOWMzY2RiNGUwZjJhIGxlZ2FjeS10cnVuaworMzI1MDAgZjUwZDBkMGYyOWEyZDBiNTI3YTVhMjhmMTM3YWI0ZDNiYjdlMWY0MSBsZWdhY3ktdHJ1bmsKKzMyNTAxIDZkODUyZWJmZjM2ZmY2M2I3OTg2ZTY4ZTIzYTZiMDY5OWM1YTk2MTAgbGVnYWN5LXRydW5rCiszMjUwMiAxNjM3NDA1MmNiNWRiM2M4YzZjMjQyNGI2NTNiNzViMzMyYWIyZWE0IGxlZ2FjeS10cnVuaworMzI1MDMgNTNmZjIzYmIzMjQ4ZmI4NDcyODA3MDBiZGE2N2NjZTU0ODA3NzIxOSBsZWdhY3ktdHJ1bmsKKzMyNTA0IDc0M2FlOWNiM2E4M2RiZmYyMzEwMWM0NjhhNWUxMWQ5MWI4YmI1MmIgbGVnYWN5LXRydW5rCiszMjUwNSAxYTBiN2ZjNDYyNWI4ODAzZTMzODNiZDMwOWE2ZjM2NzA5ZjQyNGYxIGxlZ2FjeS10cnVuaworMzI1MDYgM2E4YjhhZWRlMTAwZDhjOGVkYTlkNjU4YThlYzEyODljZjZiYzQ2NyBsZWdhY3ktdHJ1bmsKKzMyNTA3IGE1MzUyOTA5NWU5NTQwOTQzODRmNzNhN2NlNmY1OTc0Mzg5NmExOGIgbGVnYWN5LXRydW5rCiszMjUwOCA1ZjNlOGJjYzhjN2ViY2E2NGJjZjAxNmU2ZDNiN2I3MzljMGVlMjA5IGFzdC1icmFuY2gKKzMyNTA5IGIxYmM5ZTE3MWM2MmU4MjlhZWNjYWY4MDA5OGFjODk3MTk5MzdmODAgcjIzYjEtYnJhbmNoCiszMjUxMCAxZDk3ZjUyYmM4NGZiMGRiYjk1MzNkM2ExNDQ3ZWUwMDU0YzM2NWRlIGFzdC1icmFuY2gKKzMyNTExIDcxZTE5MWI4M2QwNDY1YmNkMTcxNDY3N2M3OGNkZTkwMTdlOTg0ZDcgYXN0LWJyYW5jaAorMzI1MTIgYjg0NjEyMTgyOWJkYjAwN2NmNTQ3NzkyOWY3ZmUzOWRmZGM3Y2U0NyBhc3QtYnJhbmNoCiszMjUxMyBhNjEzMzBhM2Q1OWMyMWNkNjI0OTU3N2YxNjRmMWQwZTQwOTgxMzFhIGxlZ2FjeS10cnVuaworMzI1MTQgZjU1YjU1M2EwYjM0OTk5ZjYwNTA2YTg4ODAxNGI1MWJjMTZlOGIwOCBsZWdhY3ktdHJ1bmsKKzMyNTE1IDYzOTJlODQzNzU4ODgxMzEyMDczNTU4YjZhM2UyZTk2NmI5ZDBkYjIgbGVnYWN5LXRydW5rCiszMjUxNiBjNmQ2YWQ4NjJhOGMzMzExM2VlNzRiMmMzYTQwYjA1ODk5MjExMjcyIGFzdC1icmFuY2gKKzMyNTE3IDY1ZjcyMGZhNjIwMGZkYWZmNDBhZDI5ODAzMTg0MzAzZDI2NjA3YmYgbGVnYWN5LXRydW5rCiszMjUxOCAyNDAwNzFhMmI0NjZlNGYyYTMzZDgyZTkzNDQ5YjdjMzgwNzg1ODc5IGxlZ2FjeS10cnVuaworMzI1MTkgODVmMGU2MDk1NGNhN2IwMDA3NjY2OGMxZmMzNDY2ODVkYzY3ZDVlMyByZWxlYXNlMjItbWFpbnQKKzMyNTIwIDllYjViZTkzNzk5MGE4OTJlNWE3M2FhYjYxOGE2MjFmNTA3OThkMzggbGVnYWN5LXRydW5rCiszMjUyMSAwZjBmNjIzNGYyZmY0ZWZkY2M3M2YzY2E2MzE3ODBhOWIzN2M4ZjdjIGxlZ2FjeS10cnVuaworMzI1MjEgNjdjZTRlZTRhMjlkMWU3Y2UzNTdlZjhkMWMwMGM2OWQ1NTdjMTBiMiBpZGxlZm9yay1tZXJnZS1icmFuY2gKKzMyNTIyIGUyZDI5NTY5OTk2ZDgwZDYwNWRhNjZlMTdiZDQyOTQxZTAzZTFjOTcgbGVnYWN5LXRydW5rCiszMjUyMyAyMzE4YTllMTZhYjBhOWRjOTg4ZGZmZmU3MTU4M2FhM2ZjY2Q3NDczIGlkbGVmb3JrLW1lcmdlLWJyYW5jaAorMzI1MjQgNzVjMWNlZDkzYmI1MmMyYWJjYTA2YmZkMTIxMWU0NzQyODFlMzQzNSBsZWdhY3ktdHJ1bmsKKzMyNTI1IDZjNDE3NTUyZjQ3MzVjMDhjOGRiNTY2MTM0MmVlYWIzYmJjYmRhMDEgaWRsZWZvcmstbWVyZ2UtYnJhbmNoCiszMjUyNiA2ZTk4NjIwNjZlMjk2ZWM4NDg2OGNhN2EwMjAzZDA0NjkzN2Y1YzNiIHIyM2IxLWJyYW5jaAorMzI1MjcgOTk4ODFiNmVhOWY3ZDk4MGIxNDE3NThmMmIwYjg2OWRhNjYzNDg2NCByMjNiMS1icmFuY2gKKzMyNTI4IGEzNDE5NzZmZjQ3NmQ4ZDRjZDExZGEzYmI0MjEwNzUzODVkZWYwMGUgcjIzYjEtYnJhbmNoCiszMjUyOSBiMThkMmYyZGIxOGQwOTBjNjE5MGIzMzMyZTAxNTBhMWE3ZDQzZGQzIHJlbGVhc2UyMi1tYWludAorMzI1MzAgODllMzVjZGJlY2NjMGNmMTkyY2NmOWIyYzhkMGFlZGM2NDA3MTFmZSBsZWdhY3ktdHJ1bmsKKzMyNTMxIDY4NzMzNzliOGQ4YzVhMDcxNTI1YWM1ZTM1Yzg4MzIyNzIzZjBkMmYgcmVsZWFzZTIyLW1haW50CiszMjUzMiBlYTc3NzI3MzJkYTE5YzMxNDdmYmUwZTg5MWRhYWNmMWRlYzNlZDgzIGxlZ2FjeS10cnVuaworMzI1MzMgNDk0ODZjNTQ0YWNkZDU2MTcyYWRkNDZlOGNkMjdiMjA5NGU2YjBkMiBsZWdhY3ktdHJ1bmsKKzMyNTM0IDY3MWU0ZTJlZWM0YmE3M2U4NGE4NTg3Yzg4MmNkMGUxNjhiYWNhMzAgbGVnYWN5LXRydW5rCiszMjUzNSBhZjUzNzI5ZDNjZGQ2NDExOTUyMjU0NzA2Mzk3MDAzMmZjNWFlOTBjIGxlZ2FjeS10cnVuaworMzI1MzYgZTRlYWJlNWIzZGExM2Q0ZmFhM2QyNzFjM2EwMzhlNWFiOWRlN2YyNiBsZWdhY3ktdHJ1bmsKKzMyNTM3IGQzMTY0YTMwNDU5OGIxNGYxNGRhOTNiYTFkYTRhZmU4MGY3ZTU2NTUgbGVnYWN5LXRydW5rCiszMjUzOCA5NmI2Y2M1ZDQwOGI4NGQyNWYxZWYyNjAxYWQ0ZmZlMjAxYWY3NDQ3IGxlZ2FjeS10cnVuaworMzI1MzkgMzlmNGI5N2NlODI4MTlkYzJmMTEwM2EwNWE0N2RkMmQ0M2RmODgxNiBsZWdhY3ktdHJ1bmsKKzMyNTQwIGQ1ZTI5MWYwYWUzOTU1Y2FhN2Q3MDAxYjczMDE4ZWU2OTgyZjU1YzMgbGVnYWN5LXRydW5rCiszMjU0MSAzNWM5MGQ5Y2MzMTM1NzUwNmE4ZDg2NzYyNzZhN2RjNzg0YmI0MDllIGxlZ2FjeS10cnVuaworMzI1NDIgZDMwYTZhNTc0OTc5YzhiNmYxNjVhY2QyYzU4YWFkZTlhMjM1ZTRkZiByMjNiMS1icmFuY2gKKzMyNTQzIGJjMTM1ZDdiN2RmMTZmYjdhYzFkYTA2MDViMGZlOGYzYjE3NDIzOTcgcjIzYjEtYnJhbmNoCiszMjU0NCBlZGRjYjc5MGVkOGQ4YmQ1MWYxOTA3NjY2OWMwYzYzNDIzNjY1NmQ4IGxlZ2FjeS10cnVuaworMzI1NDUgMmQwNjljMTZjOGIyZDE5MTI4NTc3NzY5NDEwNGM0NWI1M2Q5N2EzNSByMjNiMS1icmFuY2gKKzMyNTQ3IGQxY2RlM2RhZjlhOWU2MTY2N2VmNzZmYzk4NGQ4OGY0MjMzOTU3NDYgbGVnYWN5LXRydW5rCiszMjU0OCBmNDIzODAzNjAwMGM0NTU2YzQzOWJkYzE4OTQ3MjYyODEwNzYyNThkIGxlZ2FjeS10cnVuaworMzI1NDkgYjlhMzA3M2Y5MzkyOGMxYjgwMTEyNGJmNDdiNmU4MzU1ODQwZTNlNSBsZWdhY3ktdHJ1bmsKKzMyNTUwIDgxZDM3M2U1ODk4MzhjMzM5ZTAzMmU2ZWMxNzExZDhlYzE2Nzc2ODUgbGVnYWN5LXRydW5rCiszMjU1MSAyMzdmOTdjNzE2OTFiZjNmODQwZjZmY2QyNGNlZTVlNGViODY4NjVhIGxlZ2FjeS10cnVuaworMzI1NTIgMDgxZWY3YjZiZTA0Mzc2ODM3ZmIyNDVhMjcyMmU3ZGI4NzQxYWI5NiBsZWdhY3ktdHJ1bmsKKzMyNTUzIDBlMzVjMTU5NzQxYjU3MWRlNTMxMDZiNWRmNWFlNzA4NzYzNmNlOGMgbGVnYWN5LXRydW5rCiszMjU1NCBhYWIwZGJlM2MwMDgxZmJkODRhOWRmZWRkNmNiMjgxYmE2ODA2MjdiIGxlZ2FjeS10cnVuaworMzI1NTUgMDM5YWIzMWUxMDM0Nzc5NmI0YjgwNjhjYWFjNGYyMjAyYzRhY2E4MSBsZWdhY3ktdHJ1bmsKKzMyNTU2IDQ1MjhjYzBlZGI2ZGE1NGY5NjMwMzMxZjg3ZjllODRmZTVlMzEyZDggbGVnYWN5LXRydW5rCiszMjU1NyAxZDFhODVmMGU1ZTk5OTg1N2MxMDNmNzI4OWYzZGM0OTlkMTIzNzIzIGxlZ2FjeS10cnVuaworMzI1NTggZmE1OTUwZmJlNzM2NzRkNmUwMGM1ZmExOTdlZTNiNzYwNjYxNTNlOCBsZWdhY3ktdHJ1bmsKKzMyNTU5IDFlYWMxYTM1YjM3MDQyOWU2YmY2YTZhMWQzN2VkMmZlYjQyN2U0MDMgbGVnYWN5LXRydW5rCiszMjU2MCBlNGU3MmZhNGM5MTQxMmYzNjI2ODI2ZTMwZTFkZDg3NWUzYTc0NzY4IGxlZ2FjeS10cnVuaworMzI1NjEgY2U5ZTJhZThkNTlkNjY0MTZhZWU5YTNlNTI2YmYzZDc0YmU5OWU5ZiByZWxlYXNlMjItbWFpbnQKKzMyNTYyIDA2YWJmYzljNjhlNzcyN2VmYzBjNzhlNjc3YmY1MWZlYTlhN2ZkMjggbGVnYWN5LXRydW5rCiszMjU2MyA2YTUxZDExZmIxZTkxNWY3NmFkNDhhNDI0YzljM2Y3ZTNhMzEyNzE1IHJlbGVhc2UyMi1tYWludAorMzI1NjQgOTZlZWU3ZDA0ZDg4NDA3ZDczOTY2NmU4NGQ5Y2EzY2IxZWQzYWQwNiBsZWdhY3ktdHJ1bmsKKzMyNTY1IDRlZjEwOGY4MTgxZjMwYzU0ZTU5Mjg2OWYzM2M3OGU4NjVkYTIxODIgbGVnYWN5LXRydW5rCiszMjU2NiBiMDRjMDc0NTg2YWE0MjY2MzRhZTRjMzFkYTRiOTM0MjRmOWEyM2U0IGxlZ2FjeS10cnVuaworMzI1NjcgMzM0NzU2NjE4MjNkMzczZDY1Y2E5MzUxN2MyN2E1N2Q2MmZkYmFjYyBsZWdhY3ktdHJ1bmsKKzMyNTY4IGZhMDA2MzkyODUxODE3YzMwOGZhMjYyZjdmNjE2NDExOTIzNTk0ZmUgbGVnYWN5LXRydW5rCiszMjU2OSAzOWFkNzYxNDMyODhiYTJhYWRjMjljMzU0Y2NlY2IyYmQ0MTY1ODY3IGxlZ2FjeS10cnVuaworMzI1NzAgMTc0MWFmNDhmZDlmM2U2OWZhMzU1OTI4M2NkZTY3ZTZjYTkyMWE3YSBsZWdhY3ktdHJ1bmsKKzMyNTcxIDkyODcyNzg5MTZlM2M1ZjFmMWU3ZDhkM2VhMmY0ZTVjNTU3MTk4ZjggbGVnYWN5LXRydW5rCiszMjU3MiBmMmM3NGNmZWEwNTEyNDc0YWRiMjM2MzhmODhlNTJlNDUzN2NlNDc5IGxlZ2FjeS10cnVuaworMzI1NzMgMDBmYzEzOGQ4NTU2NTg3NzQ5YmI3YTUyNjU4MWY5NGJiN2Y0NzkwNSBsZWdhY3ktdHJ1bmsKKzMyNTc0IDg4OGEzMTE4ZTBkNDIyODhhZWIxNzMyZDVmM2YxN2IyZmQ0ZjllOWQgbGVnYWN5LXRydW5rCiszMjU3NSAxMTQ5NTBlZTlhYTczM2VlMmMwMWZmYzNlYzg4MGI0NTk4NjNkOTE2IGxlZ2FjeS10cnVuaworMzI1NzYgODM1MzMwMTZjMjg5NzE2NWNiNGY3YTY2YWNjMGQ2NjI2YjFiNGE0OSBsZWdhY3ktdHJ1bmsKKzMyNTc3IGIzYjI4NDQzNmMyNGEyMGEzODI5Zjk3MGI2NjdkMzQ0MGY1NTM3YmMgbGVnYWN5LXRydW5rCiszMjU3OCBhNzY5ZTA3OWJiMTJmZjgzZWM5N2VmMzgwNzEzMTE3MzY3N2VkZGNiIGxlZ2FjeS10cnVuaworMzI1NzkgNzgzZGRkZTM3OTJiNjY5NDg2NGU5NDRhZTZkYjE4NGVlOTNmNTY0MiBsZWdhY3ktdHJ1bmsKKzMyNTgwIDBhMTgwZWUyNDczYmQ5OWVjNGNkNmZiZTRhYmYzYTVkOGRiNjNjNzkgbGVnYWN5LXRydW5rCiszMjU4MSBjNzk4ZDI4ZGVlNDZiMTlkMTYxMjYwZTdiNDE0MzBhNDYzZTcwZjg4IGxlZ2FjeS10cnVuaworMzI1ODIgOTJhMWU1ODVhYmY3NjNhYzM1MTY0MmFhMmRiY2JjNmY1MmM1YTc1NyBsZWdhY3ktdHJ1bmsKKzMyNTgzIDE4MDgyYjJkMmViZGYxNWIzZmQzYjlmYjU0N2Q4MDNiZDg3MzM2MzYgbGVnYWN5LXRydW5rCiszMjU4NCBhNDBiNTY3MWE1NjM5MjFkMjlkMDU3ZGZiN2EyMGQ0NWNhZjdmZTJkIGxlZ2FjeS10cnVuaworMzI1ODUgNmEzMTE3ZGY1ZTEzMTI1OWFlNDJmOWUyODAwYTExMTJiOTYwMzNjNiBsZWdhY3ktdHJ1bmsKKzMyNTg2IGQ5MTgyMWQ5ZDQ3MDk2NzJjMGJjNjk1NTFjZjQ0MzRhZTBiMDk2MGQgbGVnYWN5LXRydW5rCiszMjU4NyA5OWNmMzM2OGQ2ODdlYTg5ZTdmYTY3M2M4NDUxNzY2NDUwMDllYTU1IGxlZ2FjeS10cnVuaworMzI1ODggYTExNGVlNzQyNjdjNzMxMzBiNTg3MGQ5NjJiNTI2NjlhZWNhNmNlNSBsZWdhY3ktdHJ1bmsKKzMyNTg5IDJlZWU5NjU1ZDcxYjBmODk2ZDZiYWM5YmVlNzhiMjA3MzYwOTczODkgbGVnYWN5LXRydW5rCiszMjU5MCBjNWYxOGRiMWM5NjYxZDU4MDcyNTMzNjk5NTc4YjJmYmM0ZGZmODVkIGxlZ2FjeS10cnVuaworMzI1OTEgNWQ0ZDRlYmZkMzE3MWU3NTM1Yzk0MTg3Yzg1YzdhODg3YzdjYWQwYiBsZWdhY3ktdHJ1bmsKKzMyNTkyIDQ3NTZmYTUzODU2MDZmYjEyMmY1ZTlhN2QxNjdkOWRmM2Y1NTdmMTkgbGVnYWN5LXRydW5rCiszMjU5MyBmYTA1NzgyNGM5YjRiNDI3ZDA5NGEzOWU1NDgxNjBjYTc0NGViNDJhIGxlZ2FjeS10cnVuaworMzI1OTQgMDVkYTc3MjZjMDI3ZTQ3ZjExMDliMTdjOWI3ZWQ1NGM4MzhlZTBiOCBsZWdhY3ktdHJ1bmsKKzMyNTk1IDM5MzQyOWE2ZmExNmQxZDkwNDg1N2ViNWRhNjA5NjRlNjFhNGViMjAgbGVnYWN5LXRydW5rCiszMjU5NiBlMDU5YThiMTFiOWVjY2IxMDA3MmY3Njk5ZTRlYTQ5ZGVhMzVjMjZiIGxlZ2FjeS10cnVuaworMzI1OTcgZmFmMmNiNTA3MGI0YzhkMTNiN2FjNTlhNWY5OGNmNzQxNmJmMmY0YyBsZWdhY3ktdHJ1bmsKKzMyNTk4IDAwMWE5MDU1NTc4MDhhMTVlODQzOWI1ODNjMWZlYzY5ODlhZTcyZjkgbGVnYWN5LXRydW5rCiszMjU5OSBkYmRlYjczNGZmOTc5OWRhODE2YzU5MzZjNWM0MzZjNDMxZmRhYzExIGxlZ2FjeS10cnVuaworMzI2MDAgOGRmODk3ZjE0ZmI4NjAyNmYzNDQ3OWIyZTA5NjljODBmNGJjNGRiZCBsZWdhY3ktdHJ1bmsKKzMyNjAxIDMzNTk4ZThlNDliMjBiYTRiNWE3OTlkMmExYmMyODIwMmI5ODM4ODIgbGVnYWN5LXRydW5rCiszMjYwMiBhYzQ4N2E3ZjdmMmM3NzA5NzU3OGJlZDFjOGI4OWZjYzdjM2E1NDYwIGxlZ2FjeS10cnVuaworMzI2MDMgM2E5ZjVmMGM1MTJlYjQ5ODBlYzFhYzgwOWZhZjY2NzRhZmVkNTZiMCBsZWdhY3ktdHJ1bmsKKzMyNjA0IDE5NjQwMTJmNmZiMGQyM2JmOGQ3YmEzOTliYjVlODU3NGEyNjFjMjAgbGVnYWN5LXRydW5rCiszMjYwNSA2YzRhMDRjZTk2NWMyNThmM2E5YmIwZjk0ZDkxZWMwY2FkN2I5NWVjIGxlZ2FjeS10cnVuaworMzI2MDYgMDk0MjJjMzAxODI2NWI4NWE4MGYwMDg5M2UxNmEyN2Q1ZTM2YzlhNCBsZWdhY3ktdHJ1bmsKKzMyNjA3IDlkNWE3NTkxNjk3MTA5NTgwYzU4ZGVmNjJjOTE3ZTA3ZTY1MWUxNWMgbGVnYWN5LXRydW5rCiszMjYwOCAxNzYzZDlkM2ZkOWRmZWVjZDZkNmUyN2JkYjU2N2ZhMTRjODZiZTljIGxlZ2FjeS10cnVuaworMzI2MDkgOWI0ZmY0YmYwMzNiODE2NDc4MjZhZWU5ZmNiMTdjN2UxMjU2Y2Y1YSByZWxlYXNlMjItbWFpbnQKKzMyNjEwIGJhZWEzMThiZTQ5OWNkZmM0OWI1NTdhZGQxMWNlODM5OGI5NDMyZDEgbGVnYWN5LXRydW5rCiszMjYxMSAyNWIyMjE4ZGEwOWI1OWY5NmI4OTZlZTZiNDEwYTY4YTI4MDAxMTk3IGxlZ2FjeS10cnVuaworMzI2MTIgMzVhNGQ3NGI1YjhlZDk5YmQxNzA1MWYwOTdkYjE5MjNjNjYxNmI5ZCBsZWdhY3ktdHJ1bmsKKzMyNjEzIDZjYTk0YWViMjkyYWM0Nzc5YTMwZjc2YmJhZGMzNWU2MDc5MmE4NjkgbGVnYWN5LXRydW5rCiszMjYxNCBhYzI5MDE1ZmY2YTgxZWYwNDE4ZGExOTZkODU5ZGI0ZjkzODBjOWY5IGxlZ2FjeS10cnVuaworMzI2MTUgMTg5ZmRhZThmNDkyYmY2Y2VkM2Q1YWUwYjE0YTMyYzI5ZjRhNjUxMyBsZWdhY3ktdHJ1bmsKKzMyNjE2IDI1ZTY2MGU3MGRjZDA2MWU5OTgyYjAzNzhhYmYzNmYwMzY3YzBhYTIgbGVnYWN5LXRydW5rCiszMjYxNyAyZTk5NTZkMDFkZTMzMmY3ZDEyZjIxODRlYjBlOTFhNjU0NzAyMzZjIGxlZ2FjeS10cnVuaworMzI2MTggNGJhNzYzYmM1YTU2MGRjNTdkZDE4MGIyZDc1ZDU2ZTk2YjU3Yjc4MiBsZWdhY3ktdHJ1bmsKKzMyNjE5IDM1MGVlMzFhYWIwYzAyNDI0NzNkNTBhYzkwZmUzM2ZhZmUwNGFmZWMgbGVnYWN5LXRydW5rCiszMjYyMCA5OTU5ZDhmYTRkZGYwZjhjMDQwOTYwZWYxMGFjY2U2Y2M5YWFlMGVkIGxlZ2FjeS10cnVuaworMzI2MjEgYjE3NGQwOTI3ZjBlMjU3OTQ5YzljMTNiZmY3ZjQzNWMyYzA0NTM3YiBsZWdhY3ktdHJ1bmsKKzMyNjIyIGM5YzZiYTc5NTJhODIyN2FhOGQzYjJiOTI1OWJkYWJkZWFlYzk2MmUgbGVnYWN5LXRydW5rCiszMjYyMyA5ZjkwMjJjMjEwNTYyMzQ5ZjQ3MDE4NzUxODkzNjVlNjdiNjQ0MWUwIGxlZ2FjeS10cnVuaworMzI2MjQgNjViZjY5ZjdjMTQ4OWQ4ODQ4YWIyNDZiZTNiYzVhZDI2NGRhYWViYiBsZWdhY3ktdHJ1bmsKKzMyNjI1IGM5MjQxMmQ2MzRiMTBiMzAwMjg4N2Y0MjM1MGM4ODRhM2YyZTAyODYgcmVsZWFzZTIyLW1haW50CiszMjYyNiA2OGYwNDJmYWZiN2RkMDliZGZjMjZmYjM0NmZlNDY0Y2M1ZTBlMGQ2IGxlZ2FjeS10cnVuaworMzI2MjcgYmIxNzcwOWEzN2EzYWMwNzQ5ZWMxMmE0MTAxNzQwMWNiMjFiMWIyZiByZWxlYXNlMjItbWFpbnQKKzMyNjI4IDNlODhjZmYwNTgyMmYyYzFiNThhNWNjMDc0OGZiY2Y5OGI5MWUzZjEgbGVnYWN5LXRydW5rCiszMjYyOSA0YmY4NjUxOGQ5YWU1MDE4MjA3MGY1ZWNmMDA4ODAzZTU3Y2M1NDQyIGxlZ2FjeS10cnVuaworMzI2MzAgNGMxMzkxNjg2NDhjNmFkZTNjMzAxYWE4ODljMjk2OTczMzQzMGU0ZSBsZWdhY3ktdHJ1bmsKKzMyNjMxIDgzZmUwZjVjOTM1OTdjYzZjMTZhNTZhMDMyMWU4MjZmYzU2MWJkNTEgbGVnYWN5LXRydW5rCiszMjYzMiBjZmNjNDVmMTg1MTVhMGRhN2VlZGFhOTNiYjY2ZTdmMGQ1MjJlZDQwIGxlZ2FjeS10cnVuaworMzI2MzMgNTg5MmMxZTUxNWI0ZGE5ZTEwNzQ5NTc5NTQzNjZmNDY0NjQ4YTEwNSBsZWdhY3ktdHJ1bmsKKzMyNjM0IDgxNWZmMGFiMjRlNzI4YzFjYjZkYzAwOTNkYmMxMzM3M2MyYzkxMDggbGVnYWN5LXRydW5rCiszMjYzNSAzMTJmMTE4NmFhMzk0NTgxYjViMTQ1MDE3NDVhMmQwNDFmODM1MzU4IGxlZ2FjeS10cnVuaworMzI2MzYgYTVkZDU3NDdjZGZlMjY4ZDRhNTZjNWYxYmY2MTkzZTkxZTk4ZTQ5NyBsZWdhY3ktdHJ1bmsKKzMyNjM3IDE3YmZhNzg2MDc1YWRjYjMwMTA4ODZlNGMwNDI4MWU1YjQ3YTgzY2IgbGVnYWN5LXRydW5rCiszMjYzOCBiNTRhODRkMjljMDAwMTZkZWE4YmZmMjAzNThjOTU4MWJjZDMwOGQ0IGxlZ2FjeS10cnVuaworMzI2MzkgNDEzODhlODQyNjFiMjQyYTYyYmZkMDUwNGE4MTIxZDMzMDljZWM1YyBsZWdhY3ktdHJ1bmsKKzMyNjQwIDIyMmMzZDJmZTQzMWIxMzcyYmM5NzAwOWYyNzhkNjNkYTEwNzgwNjUgbGVnYWN5LXRydW5rCiszMjY0MSA4MmZlM2E5YWMzNzFkNDM0NmFjZjZlZmVhZjY0N2RiYzczNjQ1MmEyIGxlZ2FjeS10cnVuaworMzI2NDIgNjFkM2Y4ZTY2ZDhmYzA2MDA4ZGQ3OTU0MGViMjVhMzg0YWVlMTE4ZCBsZWdhY3ktdHJ1bmsKKzMyNjQzIDQ5M2ZkN2U1MjIwNmExYWU1YTA0NDEwN2MxNjQ1NTA1NDk4OGFjNWQgbGVnYWN5LXRydW5rCiszMjY0NCBjZTZjM2NjNDIyYWI1MTYyODQ2YWJkYjRmZmViMjY0ZjIxN2U0YTlhIGxlZ2FjeS10cnVuaworMzI2NDUgYjM3MDJiNjgzZjJhZDJiZTZiMjBhYzdjZWEyZTE3Njk3Y2M1NGUxNiBsZWdhY3ktdHJ1bmsKKzMyNjQ2IGYxZmNhYzRjYWJhZDg2ZmNhOTEwMGMwNzMxYTFjOWU3OTAyNzNmODQgbGVnYWN5LXRydW5rCiszMjY0NyBkNTQ2MTBmNGYyNjFkY2I5ZTE2OTQ2YWZjOTFiNWE4Mjg1ZDM5YzIyIGxlZ2FjeS10cnVuaworMzI2NDggNmIwN2YzNjljZjAzZGFkODQyNmNmNWQ3YjAyMzM3MjAxMGZmMTk2NSBsZWdhY3ktdHJ1bmsKKzMyNjQ5IDM4MGE5YTVhZmFhMGJkYjJmNWY2OGNhZDk5NzAyYTRkNmExNDhjMDIgbGVnYWN5LXRydW5rCiszMjY1MCBlZDRiMDk4YzdiY2ExZDk4YWY1YmY2NmE0YTk1ZGJmMDY0Y2RmZDRmIGxlZ2FjeS10cnVuaworMzI2NTEgNmZjYTZlMDdjMmZhOWE2ZjVhNmEzMzkxYjg4YTliNTYzOTRiMDdjYyBsZWdhY3ktdHJ1bmsKKzMyNjUyIGUxMDdjOTIxYjhmMzMxMTYyMWFmNjVkNzMxZGEyYTVjOGFiMzAwZjMgbGVnYWN5LXRydW5rCiszMjY1MyA1MDk1Mzc4Mzk0MjQ2YWZmYjAyNzRhN2YyN2JkYzBmNzljNjM0ZTQ2IGxlZ2FjeS10cnVuaworMzI2NTQgNmM0MGI3M2M3MDQ1N2VmYmNlMTY4ZjljZDU3MzA4MThmNzUwMThjOCBsZWdhY3ktdHJ1bmsKKzMyNjU1IDUwODQxODk4Y2MxOWMwYWMzNTdkNTAxZjIwNjE0NzQ3ZWRkYTFiOWIgbGVnYWN5LXRydW5rCiszMjY1NiAwMTNkOTVjMzQ2ZDIzNTU0MzJlOGQxN2M2ZjU2M2MwNjM2YTM1NTNhIGxlZ2FjeS10cnVuaworMzI2NTcgYTA3ZGVmMGRjNzg1MWVhNDhjNWIxNmQ0YTkyZmNlODc3N2U0OWNiOCBsZWdhY3ktdHJ1bmsKKzMyNjU4IDMwNTVjOWJkZmY1ZjUxMTlhNjAyOGRkYzZjZGI3NjMwNmNlMjJkZjggbGVnYWN5LXRydW5rCiszMjY1OSBmOWU2ZjlmYjhkZjBjNWYyMDUyNDBkZGFiYzE3ZDdhN2Q4ZDJmMTNkIGxlZ2FjeS10cnVuaworMzI2NjAgYTNiMjYxMGI1MDQxYTkyYWFlN2QyNTFjZDVmYWZlY2RhOGIwY2M0NyBsZWdhY3ktdHJ1bmsKKzMyNjYxIGMyN2E2NGIzODc2MjdmMWJiZGRhNDMyZmQ1ZTYxNGNmMTMxZjQzYzUgbGVnYWN5LXRydW5rCiszMjY2MiBkMmFmYTAwYzIwZTNjNGZlNzI1MjBmYTRmN2E5ODcxNjc0N2EwZjRkIGxlZ2FjeS10cnVuaworMzI2NjMgOWI3MTY0Y2MwYzkyNjZlZDZlMjFjNWQzN2YxMTIyZTVlMjg5YzYyMSBsZWdhY3ktdHJ1bmsKKzMyNjY0IDA0NjEzMTYxYTMyYjZiYWZmYWMwNmYxNzNlZDA2NmM3OGMxYWU5ZjEgbGVnYWN5LXRydW5rCiszMjY2NSBlNjk2ODg4NmE5N2RhMTkwZjg1ZDEyOWIxZmNiYTkwZTk0Njg5OTYyIHJlbGVhc2UyMi1tYWludAorMzI2NjYgMTU3YTI5ZTE5ZWI5ZWM3OGMyNWEzMDlkMzVlNWM2YjMwNmMwMzdjNCBsZWdhY3ktdHJ1bmsKKzMyNjY3IDA2N2E5ODIzMjlhY2MzMzg2YTgwN2IzNjA3MmRhMTIzNjc3MmYxMzAgbGVnYWN5LXRydW5rCiszMjY2OCBlZWVkYWM0OWU4NmIzODhmYjIzYzE1MTM1NzE3MTZkNzRhNTc1N2UyIHJlbGVhc2UyMi1tYWludAorMzI2NjkgMTA5ODEwYTFhZGE4NjA2ZjI4MDMwYjNjZDc0MzlkM2NkNzg3ZWFlMCBsZWdhY3ktdHJ1bmsKKzMyNjcwIGQ0ZjY1NDRmNzlhY2U0NDFkYTdlYjc0N2RjNjdhMzMxYzliMzg2NTIgbGVnYWN5LXRydW5rCiszMjY3MSAxM2Q4ZjI5NzM3ZTVkZTI2ODI3NjZiZGJlZmE1ZmYyMTdjNTQyYzg2IGxlZ2FjeS10cnVuaworMzI2NzIgZGMzZjNmMzAzOGE4Y2ZhOTRmMThhZTJhZmE1Mjc3MTM5ZGJlMWVlNCBsZWdhY3ktdHJ1bmsKKzMyNjczIDA4OWYyNDIxZWIxOGEwYmFhODI0ZTg5NzI4YjBmYWNhNGYwMTM1NWYgbGVnYWN5LXRydW5rCiszMjY3NCAyZjY1MmE1OWViYjAxZjgyZGYzMWVlNzc1MjFjMWNhOTUxNDcyMmViIGxlZ2FjeS10cnVuaworMzI2NzUgMmY3NDNkZThjNWUyYTJiZjczYzdkMTQwYTI2ODFkOGNhNzg2YzMzYSBsZWdhY3ktdHJ1bmsKKzMyNjc2IGNiODMyYzJjZDU0ZDRhYTc5NzczNmE1YWI1ODYyMzFjYjY3Zjk5MmIgbGVnYWN5LXRydW5rCiszMjY3NyAzZjcwZDc1Y2QyOGRhY2JjNGM2MzQ4NDY4OTE5ZmU3MmVhM2UzZGZlIGxlZ2FjeS10cnVuaworMzI2NzggNGRlMDJmMThhNDFiNDJlYmFlY2I3NjRmZTQyMDIwNWJhMTc2NDc4MCBsZWdhY3ktdHJ1bmsKKzMyNjc5IDU3NGI5NTUxY2ZjOWU2MTlmYmUxNTMzNDQwMmZlYWUwMDM3M2JlZWYgbGVnYWN5LXRydW5rCiszMjY4MCA2YmJhNDhkMWNlM2JiMDY5N2I4ZWQ3ZDBlOGMzNjhmMWNjYWQ2M2M2IGxlZ2FjeS10cnVuaworMzI2ODEgMWMyZTYwM2ZlZTAyMzBlZDc1ZjY4Yjc4NzZhY2JlMmQ1M2I3ZDYyOSBsZWdhY3ktdHJ1bmsKKzMyNjgyIDRhZWFjYWRlNjYwMDliMTg2ZmI3MTliM2IwZmJlNDMwYjVhNTVlNTYgbGVnYWN5LXRydW5rCiszMjY4NCBkNWU0ODczNjJkM2FkZDQ5NjUwNTZkZGYyMmMwNmZkZDY5NTVjYjI4IHJlbGVhc2UyMi1tYWludAorMzI2ODUgZmIxMTdkN2Y1OTUwYzY0YjRlY2MwMjU3OGVmNTcwMDk4ZGZmMWU3YSBsZWdhY3ktdHJ1bmsKKzMyNjg2IDNmMjE0YzI2NGY2M2Q1YmM0MDA2NDcyM2Y1NDE2YTVmZmFlMGI3MjEgbGVnYWN5LXRydW5rCiszMjY4NyAxM2RiNWI3ZGUwZGRlNzUyM2VhMTVhNDA2NzczZjU2OGNlMDFhZjY4IGxlZ2FjeS10cnVuaworMzI2ODggNjU2NDkzNTM0Y2M3NzY2YWE2MWY2OTcyMzY0MjZjNzNmYWJiYmE3MyBsZWdhY3ktdHJ1bmsKKzMyNjg5IGUxZDVjYThhYjdkYzgyYzcyNjM5ODIxMTkzOGEyN2I3MmI1ZWI2ZjQgbGVnYWN5LXRydW5rCiszMjY5MCBjY2Y3ZTEzOGExMjZkZDMwZmNmMmM2MGY2MmEzN2ZhNjAwNzUxYmJhIGxlZ2FjeS10cnVuaworMzI2OTEgZGI5MDg0M2IwMGZjZGI4MzQyOGQ5NDllMzdiMGIzYTQwZGQ0OTMxMSBsZWdhY3ktdHJ1bmsKKzMyNjkyIGQzYzFhMDNhNTEzMDg5MDRmMzUzODliMmI3YzRmNzBmMTNiYzM2NjkgbGVnYWN5LXRydW5rCiszMjY5MyA1OWIxYjNlMmEyM2I1ZTk0YzAyN2FkOThmNzIxNGVkNTMyNzcwMjFiIGxlZ2FjeS10cnVuaworMzI2OTQgZWZmODZjZjhmM2JiM2U3ZWRiZTBiNDhjYjkyMzI5MGM4MzIxNjRlYSBsZWdhY3ktdHJ1bmsKKzMyNjk1IDgxMDg4ZGYwYjFkZjM2NDBlODliNGQ1Y2Q5NjQ1ZjNiZDgyZjlmZDEgbGVnYWN5LXRydW5rCiszMjY5NiAwNTU5ODc3YWRhNWNmMzA5YTYwM2RjZDk0NjU4NWYyOGMzOWYxMDI0IGxlZ2FjeS10cnVuaworMzI2OTcgOGU3OWRjMzczMWJmZmMyNmI5Y2E4ZGEzNmEwMzM1MzUzZjlmYTlhMiBsZWdhY3ktdHJ1bmsKKzMyNjk4IDQzMDAyMjMzY2MyY2RhMDE0M2Q5NGE2MzE4N2ZiYzE5NGE2MjYzYTQgbGVnYWN5LXRydW5rCiszMjY5OSBkZTU2NGE4NzMzZDIyNzUzZmU4MzA5MmQyYmVkZDdkNDRlMmZkNDQyIGxlZ2FjeS10cnVuaworMzI3MDAgNThjOGUyODQ1MWE5NzdlMGZhNGE2NzEwYzNhMzUyYjRjMjlmNGE4MCBsZWdhY3ktdHJ1bmsKKzMyNzAxIGQwNmFkYjVhM2NjOTZkZmZlM2JiOTBhOTk2NzliYmE0ZDdmZDc1NmIgbGVnYWN5LXRydW5rCiszMjcwMiA1NGYxZmZhMzc0MjllYWM3YTUwMTk4YzE1OWZjYWU5ZDk3N2Q3YmNlIGxlZ2FjeS10cnVuaworMzI3MDMgMDY0NDE5NzczOTU2YjcwOThiZDRjMzk3MzE4YzI3ZGFhN2FlYWI2MSBsZWdhY3ktdHJ1bmsKKzMyNzA0IGYyNzhiMjdlZjEwNWQzNGVmNDQ2YTQwZGZhMGJhY2Q2MzUxODI0ZTkgbGVnYWN5LXRydW5rCiszMjcwNSA3NzUwYjg0NjJhOGZjNDA4NmY3Zjk3ZTNmOGQ1NGU1NzA3N2ExMmRmIGxlZ2FjeS10cnVuaworMzI3MDYgMTQzZmZmOGQyMTg5OWQwOTNmZmM4NjJlMjhiYWE3MjEyYmRkZjcxYSBsZWdhY3ktdHJ1bmsKKzMyNzA3IGNmZmI1MTdmNGUxNWY5ZDZjODUwYzdjZTRkZjY2ODVmYjI0ODM5OGMgbGVnYWN5LXRydW5rCiszMjcwOCAyYjBjMGJkYTVjY2E3YjZlYTczNTMxNWVkZjBlZGZlM2VlY2I2YzcwIGxlZ2FjeS10cnVuaworMzI3MDkgNmRjODJkY2Y1NTg5MjYwMmQyNGZiODNkNzdhYmRkM2U1M2I1NzJiZiBsZWdhY3ktdHJ1bmsKKzMyNzEwIDQ1YmZhNmQ1OTFmN2NhNGE1MmFkNDk3MDBiMDI2OWMxNjdjMThjOTIgbGVnYWN5LXRydW5rCiszMjcxMSBiYWU2N2U0MTRhMTNhNDJmMDlkZWZjNjc1M2NmYTBlMDNjMzMwNGIwIHJlbGVhc2UyMi1tYWludAorMzI3MTIgZTA5Mzk5ZTNiMmMwOTBkZjQ5ZWMzYmRhNjRjNDUwMTRkYWJjN2Q5NiBsZWdhY3ktdHJ1bmsKKzMyNzEzIDkyZWJkM2RhZjUwNzJlZjMxYWI1ZGI1ZmQ2Nzk2ZDk4OGUzOGMzMjggbGVnYWN5LXRydW5rCiszMjcxNCA5ODM1YjQxMTMzYWMwNmU2OTY4YWUyNWQ4YWU0ZmRiZTk0MWY2YjJjIGxlZ2FjeS10cnVuaworMzI3MTUgMWJhYmJiNDkxOWE3ZjE3ZDJmZGJlOWFmNzAzYWE2NDUwMjY5OGZjMyBsZWdhY3ktdHJ1bmsKKzMyNzE2IGMwMTlhYTgyN2Y4NjA1Njk3NmQyOTEwMGVlMDAyODFmN2YyZDkzODMgbGVnYWN5LXRydW5rCiszMjcxNyBhYjdkYzUzOGY2ZjcyZDI4YTIxYjkyZWVjMDQ2YzU1ODczYjBiMWE0IGxlZ2FjeS10cnVuaworMzI3MTggOGU5MmYyZTJiZGE5ZjViMGMwZmIwYjhlMDUwZWEzMjk1Njk4ZWQ4YyBsZWdhY3ktdHJ1bmsKKzMyNzE5IGJmMTYzNGIwMjNkNWFlY2ViODQ4ZDlhNzE3YTIzOGU4YmE5YWI4NDcgbGVnYWN5LXRydW5rCiszMjcyMCA5MDM0MmYzOTU3MjFkZjY0ZTE5MGM2ZWQ4MWY5NTZmNWNkNGY1MTk5IGxlZ2FjeS10cnVuaworMzI3MjEgMDQwNjVjNGExYzZiNWFmZTUzOThhMDlhOTEzZTAzNjdiZWU5NzA0OSBsZWdhY3ktdHJ1bmsKKzMyNzIyIDFjODQ4ZTlmNjE2NjIzMWMwN2VjZGFmODUxNDBjYzMyODAzZjk2N2EgbGVnYWN5LXRydW5rCiszMjcyMyA1NjQ4OTcwYzY2NWYxN2YzOGQ4OGVlMjhiNTMyZWIzZmQ3Yzk5Y2Q0IGxlZ2FjeS10cnVuaworMzI3MjQgYjEwYTdmYWNjMWU4ODZkZTg0MjMyOWMxYmMzYTYzZmUxNGZiY2FkNyBsZWdhY3ktdHJ1bmsKKzMyNzI1IDg1ZjFhOTRhZjM3NDIyNmY0OTQ0MDk0MGU2MGY1Y2NiYjRiN2U2YTcgbGVnYWN5LXRydW5rCiszMjcyNiBjZDQ4OTAzZTQxYmVmY2RlMTYxNjY3ZjZhYjNmMTcwODNjZDZkYjU2IGxlZ2FjeS10cnVuaworMzI3MjcgYzRlOGM2NzIxZTQ1NjY1M2FkMTdjYjhhZDZiYmVkMDBkYjBlZjEyZSBsZWdhY3ktdHJ1bmsKKzMyNzI4IDk4OGIzZTgwNzA0MzZkZTIzYjU2NzY2OWNmODQ4NzA2NTJjZGNlODYgbGVnYWN5LXRydW5rCiszMjcyOSAzNWEwOWRjODA4NGM5ZDBhZWY5MjI5MTRhNTMxMTIwYmYwMzk5MzMxIGxlZ2FjeS10cnVuaworMzI3MzAgYWQ4NGZlNThlYzJmOGFkNzdiNjQ0YTkxOGM5M2E0YTk2NTJkZDljMyBsZWdhY3ktdHJ1bmsKKzMyNzMxIDc1NGM0MWJjYzgxYTJjODEzYWNlNTgwYTJlY2FlMmNlZWQ0ODg1OGIgbGVnYWN5LXRydW5rCiszMjczMiA3OGVmYmFkNTNkZDg2Yjc3YmEzOWY3OGE5NzhhZDViNTNlOTIzMDMyIGxlZ2FjeS10cnVuaworMzI3MzMgZjU3NzUxZmZkNmU3OGFiZWNjZmRhM2U2NWEwNTU4YzIwNDY0MjE1YiBsZWdhY3ktdHJ1bmsKKzMyNzM0IDQzN2JjZDUyY2MwNDVjZjYzNjYwY2JkYThmMDk1NzA2NTNiY2YzODYgbGVnYWN5LXRydW5rCiszMjczNSBmZjEzNmZlZjcyMzFjNDdmNDRmMDIxZTVkMGI2YzVlMjEzOWQ0YmJkIGxlZ2FjeS10cnVuaworMzI3MzYgNTQwYTc3MjAyOGQyNmE1MzljNGNiYzNkMGUzN2FkZGE1ZjkyMmM0YSByZWxlYXNlMjItbWFpbnQKKzMyNzM3IDcwN2U1Zjg5YzIxMWIwZDVlZjFlZmFiNmFhNWZiYmZkNjI1MjJhNDcgbGVnYWN5LXRydW5rCiszMjczOCBjZTFkN2UxMGY0OWU5ZDBjYTY2MzJhZTJmY2IyYTMwYzQ4ZjkwYjlmIGxlZ2FjeS10cnVuaworMzI3MzkgNWEwYmI2ZWFhNzc2MTg4MGE5ZDExYTQ5ODY1MTQ2YjE2YTUwOTg4YyBsZWdhY3ktdHJ1bmsKKzMyNzQwIDQzMmFkZDg0ZTA2MmRjYTk3YmNiZTcwMWI5YWU5ZTVmYWVjODFhYmMgbGVnYWN5LXRydW5rCiszMjc0MSA1MjZmMzdmYjM4MGQ4NjQ3MDRmNDVhMjhmYjBlODE2NGFjMjhlYzUxIGxlZ2FjeS10cnVuaworMzI3NDIgNGIyZTA1YzE3NTRlNmQzMzRiNzBiMjFiMTY5Mzc4NThhMTFkNGQ2NSByZWxlYXNlMjItbWFpbnQKKzMyNzQzIGE1NzFhOWQ2MjU3YTJhZDFhZDA1N2UxMzU0YmYzMWUzNjJiNmYyY2YgbGVnYWN5LXRydW5rCiszMjc0NCA1YmY5NjE4NmRiMzFjNTM5ODJlNDI4Mjk0MmE5ZTkyMWUxZDU1NjYzIGxlZ2FjeS10cnVuaworMzI3NDUgMjIwNjAwMDRiOTRhZWVmYTA4YTU5NTk2ZTExZjIwYWNkYWQxY2ExMyBsZWdhY3ktdHJ1bmsKKzMyNzQ2IDRhZTNjMmQ5ODg5MGJkODk3NDYxZGNiODdiNThmYTAwYzg2NzY5NDQgbGVnYWN5LXRydW5rCiszMjc0NyBhMWQ1NjMxOWVmMGViMzg0MDczMTNlMzQwOGIyMjhhMTY3ZTZjNDg4IGxlZ2FjeS10cnVuaworMzI3NDggMjJiODkwZDE1N2Y3ZGIxYjY2ZmMzYjViNzlmOGY3Nzc1YjNhNjAzYiBsZWdhY3ktdHJ1bmsKKzMyNzQ5IGM1ZTk2NTVlYmVkNzJiOTBlZDUyZmI3ZDRiYjY4ODI4OWMzZGM5OWUgbGVnYWN5LXRydW5rCiszMjc1MCAzY2Q1YWVjNTllZDIzZGE1ZWM2NGQ0MDE3NjE4ZmVhNzhhYjJiZTZkIGxlZ2FjeS10cnVuaworMzI3NTEgZThiNTcwOTA1MmUyNWEyZDAxMGZiZWQ1MDViMzlkYWYyZWM1MTA3ZCBsZWdhY3ktdHJ1bmsKKzMyNzUyIDI0ODA5NmE0NTczMmMxYTA1MTUzNTczMGY0NGUxMDkxNTRhODQzYmEgbGVnYWN5LXRydW5rCiszMjc1MyA1Y2U2Mjk2NDIxNTU5ZTFkNjJiMGVhYzhkYmIyYmRhOWEwNmE4NmVmIGxlZ2FjeS10cnVuaworMzI3NTQgMzRkNjNiOGMyNzViYjljMzA0MDdkNTVmZGI5YzdiOWEwM2ZlYmE2YyBsZWdhY3ktdHJ1bmsKKzMyNzU1IDMyZTcwYWQ3OWY2NmQwY2Y4N2I0OGZiMjM1NTA1YmIyMWY2NWQ3ZDUgbGVnYWN5LXRydW5rCiszMjc1NiA3YTFhZTQ3NWUwZGFkNWZmYTliOGU2ZDRmOTk0ZmFiZDY0Y2I3YjQ4IGxlZ2FjeS10cnVuaworMzI3NTcgNjRhOWUxYmUzMjUxM2Q1ODlmYTQwMThkNTQ2M2YxMTM0MTY4ODU1YiBsZWdhY3ktdHJ1bmsKKzMyNzU4IGE1ZTk5ZTdlN2ZmMDMzZGI4NWM1ZWNjYjVjYzgxMjRhMmQxMzZmNDQgbGVnYWN5LXRydW5rCiszMjc1OSAxOWM0MTQxODZiOWU1MDViMTcyNWY4MDdhMTFlMGZhYTcxNGY5MWU4IGxlZ2FjeS10cnVuaworMzI3NjAgOTFkZTNhMDkyNGEyOThhZDk1MjhiNGYzNTRhZDI4OTY4NWUwMWNmNSBsZWdhY3ktdHJ1bmsKKzMyNzYxIDkzYzkyZjIwYjZiZmI2ZGQwMjU2MzA1ZmMzMmNlODA4Nzk1MGU2NWEgbGVnYWN5LXRydW5rCiszMjc2MiBjYjAwMjU0NTE0ODJiYzM2N2JhZTNhOWUwMGU4MDhlNDE1MWY5ZjE4IGxlZ2FjeS10cnVuaworMzI3NjMgYzA2YmY2YjJiMTlkOTAyY2Y4YWI5ZWZhZWUxYzJiYWU5MWFiNzg3NyBsZWdhY3ktdHJ1bmsKKzMyNzY0IGQ2YmE4MTlhMmY5MDEzYjU4YWViODUxZmU3YzFhOTkyNGI0NGZlMGYgbGVnYWN5LXRydW5rCiszMjc2NSBmNGQ0MDZhY2YxY2EwYmQ1NGRiOGQ3OGYzYmVjY2E3NDNhOGVkNjE5IGxlZ2FjeS10cnVuaworMzI3NjYgODU0MDYwNDVmMDE0ZGQ5ZGRlMjg1ZTU4NzIyYzIzNjg3ZmE0MDdkOSBsZWdhY3ktdHJ1bmsKKzMyNzY3IDUyMzcyZGMxOTBmY2ZiZmEwNzVlNzU0NTJjYWMzYzBlNjU4ODhjNmMgbGVnYWN5LXRydW5rCiszMjc2OCA0YjAyMjAyNjBmNjJlMWY0YjY0OTQwYTljZWU1YzI4NjQ1MTk0NGZmIGxlZ2FjeS10cnVuaworMzI3NjkgNGY4N2E4NGU5YmViYjI5ZmIwZGQ4NzZmZDc5YzU0YmMwMDNlMDdjYyBsZWdhY3ktdHJ1bmsKKzMyNzcwIDI0Nzg2YzMxMzBjYTg3NmRjNGE1OWNlZGNhODk2OTgzZjU5ODVhYjcgbGVnYWN5LXRydW5rCiszMjc3MSA2YWMwYTY3MmIwODIxM2ZlZTcwODU4OTc0MGI2MThmZmZlOTQxZDg2IGxlZ2FjeS10cnVuaworMzI3NzIgZDdhYzFhNjQwZDhmOWMwMGNhNjIyMjRkZmJlYTg2MzVjYzAxN2VlOCBsZWdhY3ktdHJ1bmsKKzMyNzczIDc4NzVmY2FhZTdhMzcxMmYxZTRiZmY4ZTM3OGViZGY3MWYxOGI5Y2UgbGVnYWN5LXRydW5rCiszMjc3NCBhZGRkNDM3YmU3NDkyMTYyN2RjYTk4OTM2NWE2NzIzNjMxNjAxOThjIGxlZ2FjeS10cnVuaworMzI3NzUgMjlmMTk0NjBmMDY3ODU1YzZkYWQ3NGE1MmU4MGQ5Mjg0OWVmMDhkNiBsZWdhY3ktdHJ1bmsKKzMyNzc2IGM3ZGZkYTk5M2IyZmFlZGEzMmMwNzllYjE2OTJlYWM0NGI3NDllNWUgbGVnYWN5LXRydW5rCiszMjc3NyBjZmY2YjhmNDIyZDE3YTY2MGNhMjE3NWQxNzFkYjhhOTJmYzkxOWI5IGxlZ2FjeS10cnVuaworMzI3NzggN2Y1OWRjZThmOGMwZDQyNDkxMzFhMDI4ZGI5N2RiZjI0MzRiY2ZlNCBsZWdhY3ktdHJ1bmsKKzMyNzc5IDkyZTUzYzhlN2E3MjQzYjIxNDNmYTg3YWNkZWUzMTcwYmEzYWFjNzkgbGVnYWN5LXRydW5rCiszMjc4MCA2ZDkzMzMwNzc2MWMwMTU1OWY5YzBhNDIwYjZiOGEwNmUxZDIxODdmIGxlZ2FjeS10cnVuaworMzI3ODEgZTY2OTFjZTkxYjlmZDllNTk4OTdmNGRlZDI1YWYxYzA0ZGQwMDYwNSByZWxlYXNlMjItbWFpbnQKKzMyNzgyIDUyYWViYzE0MDA2ODdkMzQ2NjhhZmZlOWM0NzY1ODk1ZDg4MjYxNGMgbGVnYWN5LXRydW5rCiszMjc4MyBjZjMzODYzM2IwNzQ2YzBhZWJjZmEwMTU2YjBhNzg3ZDA5OTYxYTgzIGxlZ2FjeS10cnVuaworMzI3ODQgNGNiZjc3ZWRlZWQ1Mjc5MmIxMTczMzFiMzNkMDVmNGRjMDU1ZjhkNCBsZWdhY3ktdHJ1bmsKKzMyNzg1IDk4NzZiMThlZGNhYjQwNjA4YWFhZTY3YjNjMjQzOTVkZGE5YzVmNzggbGVnYWN5LXRydW5rCiszMjc4NiA2NmFhMTA1YzhkMTc5OGIxOTdiM2M3NjIyZDZhOWFjOWU3ZDJiZTI0IGxlZ2FjeS10cnVuaworMzI3ODcgNjBlNzNjNTA1Y2YyYzFjMjliNjE3ZTU2YzJlMTg0Zjc5NjdkMDExNyBsZWdhY3ktdHJ1bmsKKzMyNzg4IDUzZGQ4YzQyNjNmZDMxZGZhOTllMmU2YTU1MWQ3NTk4MTI1NDBkYmIgbGVnYWN5LXRydW5rCiszMjc4OSAyYzM1OTJkMTJkNjk0ZTNhYjgzNTE5NmEyMTVkMjEyMWVkMzMyNmJkIGxlZ2FjeS10cnVuaworMzI3OTAgYzFlODNiOGQ1YjcwZmVkZTUyYjU3MzIxYjk5ODMyZGY5NjU1YWZkOSBsZWdhY3ktdHJ1bmsKKzMyNzkxIGU5ZjlhMTk2ZmRlZmU0ZjcyZTg3NjBiYWIwNDE5NjBmNDYyNDdkZTYgcmVsZWFzZTIyLW1haW50CiszMjc5MiBjMzEwZjlkZGZkY2JkYjFhN2I1NTNiMWYyODA5M2U1YzI5YTM5NDM4IGxlZ2FjeS10cnVuaworMzI3OTMgYWUwNGE3M2JmOGZjMWJlNzEzMDU5NzAwYzAxNGYxZDg2MDY4YmUxMSBsZWdhY3ktdHJ1bmsKKzMyNzk0IGU1N2UyMmFhNTZhNDg2NzcwMzVkNGMwNTgyMjQ1YjRhMzRhZDg2YTEgbGVnYWN5LXRydW5rCiszMjc5NSBmOTM1MTJmMWUyMGZmMTZlNTVjNDM4YmE1OTBjNmEzOGY4YjI0OTlkIGxlZ2FjeS10cnVuaworMzI3OTYgNWRhMTk4NDgwYjZhNzZmZTM4YTFhNjZhNjFhM2QwMjc5NWRlYmJlNSBsZWdhY3ktdHJ1bmsKKzMyNzk3IDQzMzJmMjA1MzNmY2RmM2VhOTRmMjYwYzdiM2M4MDA0Mzc5YWNkYTIgbGVnYWN5LXRydW5rCiszMjc5OCA2OTMxNTVjZGFlMDNmODIxMGI0OTg1ZDg5M2E0NzEyMDVkODA5YTU0IHJlbGVhc2UyMi1tYWludAorMzI3OTkgZTZlMTAwZWZiYzdkMzFlYTQxYTQxYjQwN2JiZmRhMTNmMWNmNmI2YyBsZWdhY3ktdHJ1bmsKKzMyODAwIDJiZjI4OTA0YThlY2FhNTMwYTE1NzMyYzJmMTMyZDM5NmY0MzZhYmMgbGVnYWN5LXRydW5rCiszMjgwMSBiNjE5MWNhOGVkODA3MTU5MmJiYzhlMzJlMDQxZDc3MWJmMmJlZTIzIGxlZ2FjeS10cnVuaworMzI4MDIgYmM1MjE2ODk2M2IzMjFkMGNlOGFiZTEzNTViNzllMDU1ZTY0ZThmZiBsZWdhY3ktdHJ1bmsKKzMyODAzIGVmM2VmODhlMzYxNGY2YTEyNzBiYzNjMDg0OTI3NmQ3ZGQxZGJlMGMgbGVnYWN5LXRydW5rCiszMjgwNCA2YzMwYmIzZTMzMjU3N2M0M2U4NWRhYzVkYmUxNjY2NDZmMDM4MjE3IHJlbGVhc2UyMi1tYWludAorMzI4MDUgOGJlOWEzMTZlYjlkZTE2NWM1NDI4ZjdjMWFhZDY1NjkyNzk5OGM5NiBsZWdhY3ktdHJ1bmsKKzMyODA2IDI5ODJlNjE4MjU2NjFlZjFiOWI5NmMxMGI5MmNhMWRhNmY1MGQwZWYgbGVnYWN5LXRydW5rCiszMjgwNyAxNjcyMWQ3M2FkMjkzYmQ5MjcxZmU2YmE2ODYxNTcwMjExNmE1NWE5IGxlZ2FjeS10cnVuaworMzI4MDggNWU2ZDBkY2YxNTVmODczNGU4ZTBmMjRhMjdlYTYxMjEzMmJlNGU0ZiBsZWdhY3ktdHJ1bmsKKzMyODA5IDQ2ZmMzZjhlOWVlZTMzOWM1ZmM4MjM3M2YwMmZmNTkxN2MyMDBjZDMgbGVnYWN5LXRydW5rCiszMjgxMCA5ZDhkZTU2NWU1ZGVhY2RjN2M1MzU5YWVlOTEyYzkwYjQyYjdjMWExIGxlZ2FjeS10cnVuaworMzI4MTEgN2YwMDc0ZWU4YWI5OTUzMjk3ODE3OTJmOWNmNDkzMjhjZjQyYWYwMSBsZWdhY3ktdHJ1bmsKKzMyODEyIDAwMWQzYzdlOTYzNzBjNjVjYTgzZGRhYTdjZjAxYWFmYWNiM2Q1YTQgbGVnYWN5LXRydW5rCiszMjgxMyA1MzJkZTE5MzMyYTQ3OTMxMDc3OWIzOTg4ZmI5ZjVlNDlkZjBjMDk5IGxlZ2FjeS10cnVuaworMzI4MTQgNGMxZDFiMzU5ZjA2NjljOGE1ZmM1MTgwYmQ5MjEwZDQ0MTA3ZWIzYSBsZWdhY3ktdHJ1bmsKKzMyODE1IDFkNGVjNTJiMzE2YzBiODBkMmE3MjVmYTNmOGUwZWFmNjhhMmI2NTMgbGVnYWN5LXRydW5rCiszMjgxNiAzODRiZGEzNDM3MjVhMGRlZDBkY2RmMjgwMTdkNDZkYWNmOGNmZWI0IGxlZ2FjeS10cnVuaworMzI4MTcgMmJiNWNlZWY5YWMzYzJkMjIxNDdmYmJiMDdiYjFjNjg0MmE2YzA5ZiBsZWdhY3ktdHJ1bmsKKzMyODE4IDRkOTAxN2VmN2I1ZjMxMTA4OTljOWQ0NGEzYjRmMTYzZjEwNmRlNzIgbGVnYWN5LXRydW5rCiszMjgxOSAzZjlhYTZmMWFlZjA4YzRkMjJlNjIxODJmNjU5OTg4ODljN2U2ZjRmIGxlZ2FjeS10cnVuaworMzI4MjAgODliNGU4ZTJjMjMwY2JlODVmMDY0NDFkNGJkMGE2YjA3ZDQ1MWNmMyByZWxlYXNlMjItbWFpbnQKKzMyODIxIDY0M2YzYWM0MzBiZTg3ZGM0ZTEwYjk0NDczOThmYWMzNmExNTY1ODMgcmVsZWFzZTIyLW1haW50CiszMjgyMiA2NTQ1ZTc0OTg2MzVlYzIxOWRiMGIwZjY4ZTA3YWZjNmRhMmU1ODFkIGxlZ2FjeS10cnVuaworMzI4MjMgNDM0ZWYxNzRmNDc4NjIzODI5YjY5OTNhMDU3YTg3NzUwMTA0NDI3MCBsZWdhY3ktdHJ1bmsKKzMyODI0IGYwYjY3NzMxZTU0NWI1Yjk0NDczYzRhZDM3YzNiMmQyNGJhMTgwYzcgbGVnYWN5LXRydW5rCiszMjgyNSA5Y2YwOWY5MmIxOThiZWRjZWY4NDI3YWEwOGZjN2M3MTEwMDNkZjMzIGxlZ2FjeS10cnVuaworMzI4MjYgOWFlMTdiMzc3OWJiYjAyZDBmMjRhOWI0YjkzZjJmYmUwYzQyMTM0YSBsZWdhY3ktdHJ1bmsKKzMyODI3IDQyMWZmZDdjNTdhZmVlYTczODAyM2FkYzE1MmFlMTI4ZmMyNzI3MDAgbGVnYWN5LXRydW5rCiszMjgyOCBlZmU1ZGQ2MGNlZTg4YWJmN2NmNTg2ZGNhMmI0MWVhMDhkOWEyMGU5IHJlbGVhc2UyMi1tYWludAorMzI4MjkgNDVmN2RlN2YxMDUyYzhiMDFjZjZhZGNlMzQwMjAyZDg2MWY3MzYwYyByZWxlYXNlMjItbWFpbnQKKzMyODMwIDU3MGE3YjhhYTE1NDIxNjU2NWM3MmVmMzU3OWI1MTgyNmM2NGExYWMgcmVsZWFzZTIyLW1haW50CiszMjgzMSA0ZjUzMWNkZjI0MmU4YWMyZjkxZWNiOWU3M2RhZjA4MzQzNmFkYzUyIGxlZ2FjeS10cnVuaworMzI4MzIgMWRjN2MwYTAyMGQzZDdlMzViNzJhMTFiMDQ4ZWRmYTQ3NDg3NGJmZCBsZWdhY3ktdHJ1bmsKKzMyODMzIDZlOTVhZGQ5MmM5OWJhYjhmM2MwZmQ3MjExODc0MGQwMmJlNzNjMWEgbGVnYWN5LXRydW5rCiszMjgzNCA0NjMwMGI5YWYwMmI5NGRhZGNlNTIxNGJkOWU2ZDI3YWQ0ZDJmNmY4IGxlZ2FjeS10cnVuaworMzI4MzUgZjQ3NWJlYzMxNjk1NTE0NDVjN2ViNWQ4ZTQwOTY0M2JiZWIwMzlkNSByZWxlYXNlMjItbWFpbnQKKzMyODM2IDA1NGQ5YmMwZDg2MDhhYjczNDRkMDZhZDYwMWFkNzE2YzBkYTk1ZTggcmVsZWFzZTIyLW1haW50CiszMjgzNyBmMzljMjcxYTlhOGU2YzIyOGE0MTA5NDA0MmQ0NGM0ZGJiMWFkZWI4IGxlZ2FjeS10cnVuaworMzI4MzggOWFhMDZjYmQ5Y2MxYTMwN2M0YzljOTJkYzlmMzAxNjhjNjU2NTdkYyBsZWdhY3ktdHJ1bmsKKzMyODM5IGM3ZjZmNzM3NDNiMDhiNDhiMzNmYTQ3YzRhODc5ZGFiMDI3NTlhY2QgcmVsZWFzZTIyLW1haW50CiszMjg0MCAyYWFhMzllZGM1MTFlN2QzMDBiYTIxMzQ2Mzc3ZGMxODhkM2UxN2JmIGxlZ2FjeS10cnVuaworMzI4NDEgODk2YmJkMDgwNmU4ZjNmMjBiYmQ1NzgxYjcyZmYyYWZmMzlkYTIzYyBsZWdhY3ktdHJ1bmsKKzMyODQyIGJlZTNkMWExYjlhOWEzY2IxNTViNzY2MTU4MjhjYjUxZTY4YmY4MjMgbGVnYWN5LXRydW5rCiszMjg0MyA0YjFjMTUwZDA3ZDhjNWIwNDFiYjM1ZDVhZGI3MTAzYWY4YTQ2YzExIGxlZ2FjeS10cnVuaworMzI4NDQgMjI3YzY2NDZjYzZiYjViMWEyYjRiZWIxNWIxZWI4ZDZiMWU3YmUzMyBsZWdhY3ktdHJ1bmsKKzMyODQ1IDEyOTdkNDA1MTU1YmQzNmQxNTdlNmExZGNjYTdiOTcxMTkzZGU1ZjIgbGVnYWN5LXRydW5rCiszMjg0NiA5YjI0MjUwNmQ2ZGM3ZDQ3ZjNkYjhkNjc1YmU3MzI3NjM0MzJkZDlhIGxlZ2FjeS10cnVuaworMzI4NDcgZDY2NWM2Yjk4Y2QyNDFiYTY3ZGFhYTYyYWZhNWI1MzdkNzU5MTczOSByZWxlYXNlMjItbWFpbnQKKzMyODQ4IDgxMjk2YTgwYTE1ZjJlMjA1YjdjOWQzN2I3YjRlMGUzNDM3MTUwOTcgcmVsZWFzZTIyLW1haW50CiszMjg0OSA2ZDZiZGEyNTQ5YjZiZDQ2MGQ1YjM0ZjBlNGVmYjI1Yjg5NDY5MDAyIHJlbGVhc2UyMi1tYWludAorMzI4NTAgYTkyMTBiZWMzYjVhZjkyNzQ5MTY2NzI0ZmNjMTMwODkzYWNiZjQ1OCByZWxlYXNlMjItbWFpbnQKKzMyODUxIDBhOTdhZGM2YTQ3ZWIyNDVjYzlhN2VjMjJiNGUyOTQ3NzNmYWZhMzIgcmVsZWFzZTIyLW1haW50CiszMjg1MiBiOTc2MmYwMDNmMzA4ZDE3NTI3MzFhZTNmYmJlZjMwZjFjZjFmOTdmIGxlZ2FjeS10cnVuaworMzI4NTMgY2QxYzgyNmM5OGEyYmZiY2U0YWFlZGI1YjFmMDA5Y2IzYmRiMDc1ZCBsZWdhY3ktdHJ1bmsKKzMyODU0IDM2MWZhZDYzMzMyZGQyNDkwNWQyMjgzOWYwZmI2NjJjZGRkZDlmNjkgcmVsZWFzZTIyLW1haW50CiszMjg1NSA3NTRmZDM0YWQ5Nzg0ZTJjNzdlNzE2NzliNWM0NjZmZTNmOTIwYTZjIGxlZ2FjeS10cnVuaworMzI4NTYgZjZlOTFjYTU2YTQ5OGM3ZjYwYjU5ZmQ3ODIwYzIxY2RjYjg4MTcxYiBsZWdhY3ktdHJ1bmsKKzMyODU3IDMxNWE3NDcyNzdiZmU3NmQ1ODM5NTM3OGU5ZTEwNGI1OWFhMGI0NzYgbGVnYWN5LXRydW5rCiszMjg1OCBiMWY2NDM2OTBhODg3Y2UyMWVkZTY4YjJmMmU5YzE3NGJiYWZmMTU2IGxlZ2FjeS10cnVuaworMzI4NTkgNTZmZmNhMDJjODI0M2IzNTFmZTc0MjQzMmYxOTVkNjhmZWU2NzM5NiBsZWdhY3ktdHJ1bmsKKzMyODYwIGU3MDk0MzkzMzczOWVmY2E2OTA2NGUxZWQyYjAwODI1MGQ5ZmI0NmIgcmVsZWFzZTIyLW1haW50CiszMjg2MSA1ZWNjNDhhZDY2MzQwMDBlN2VkNjNjNDA1YjFmNWI2ZmMwMzYzZTYxIHJlbGVhc2UyMi1tYWludAorMzI4NjIgZmY5YmEzZDFlMjgwY2M2MjE3M2M0OGFlMmU2YmJlZGM0MWFkZDY3NiBsZWdhY3ktdHJ1bmsKKzMyODYzIGRhMmM1ZDlkZDYwZTA3ZTMzMzQzODI4MzJlYTc3MWM2MjE4MGMwZDEgcmVsZWFzZTIyLW1haW50CiszMjg2NCAzNWIyNzY5YjAyYjYzNDA5OTg2NTIxNzIyMTQ5YmIwMjQ5M2M5ODRmIHJlbGVhc2UyMi1tYWludAorMzI4NjUgZTVhZmYwNjAzN2I3OTRlNmVlYTg2N2IxYWQzZWQxNzhkOTU5YzA2NSByZWxlYXNlMjItbWFpbnQKKzMyODY2IGQ5Y2Y1MzZjNTM0MGNlZGRlN2Y1N2U3ZmVmNDJhZGFlY2VhZjI1ODkgbGVnYWN5LXRydW5rCiszMjg2NyA1ODRkYzQ2Y2EwNjZkYTAzODNjMmRkZTY0ODgwZTIwMTgwNThhOGJmIGxlZ2FjeS10cnVuaworMzI4NjggNjQ2MjIxNmZlM2E4N2FiYzBhZDU5NTE5NmFlMmJjOTNkZTE2ODM2ZSByZWxlYXNlMjItbWFpbnQKKzMyODY5IDRiYWM0ZDBkM2UzZWQxYjI4ODc3Yjc5NTM2Y2MwZjUzYzdkYmY4Y2QgcmVsZWFzZTIyLW1haW50CiszMjg3MCA2OTk3NDY2MzMyNDZjNzI5NmU1MjJkNmVkYzA0NDMyZmI3ZTNjMjY1IGxlZ2FjeS10cnVuaworMzI4NzEgZjA1YmFlNDEyYjcxYjI0NTcwN2YwMzcxMjFlMWE3MWM5YTFjNjJhNyByZWxlYXNlMjItbWFpbnQKKzMyODcyIDk4NTY3MDY1MDY0YjdiYjU5N2IyMzEwOGQwOGMyMGM2NmZlNmUyNDkgcmVsZWFzZTIyLW1haW50CiszMjg3MyAwNTIzZjA5YmIzNDg2NzU2YjdlZTllMzIwYjQ4MjE1NjU2NjliZWVjIGxlZ2FjeS10cnVuaworMzI4NzQgODU2MGIxNDZmNDFmMWQwN2MyNjcyNDIzNDk5MWI2NTUyMGYxODc5YSByZWxlYXNlMjItbWFpbnQKKzMyODc1IGYxNTYyNmM3NjQxODY3MzllNzE0ZGI5ZDExYWY2MmVkMzFkOTY4OTkgbGVnYWN5LXRydW5rCiszMjg3NiAyN2VjMTQ3MWRjYjZhOTJmMmExMTkxMTVhNTg2MDY1ZmFjNjM2ZjJjIHJlbGVhc2UyMi1tYWludAorMzI4NzcgZWEyOTU4YmQ0MjcxZmYxNjYzNjJmZWE5ZDVmOGQ2MGM3MzVhYTgwMSBsZWdhY3ktdHJ1bmsKKzMyODc4IDg1OGQ1NjhlYmY3NjMxMTA3YTFlZDE4YjQwYjNiMTBiZmE1YmUxZGEgbGVnYWN5LXRydW5rCiszMjg3OSBmM2YzMDY0NTdiNDMwZWExOWQ3ZGU3OTQ2YjdiN2JiODUxNDUwZjA5IGxlZ2FjeS10cnVuaworMzI4ODAgM2FhZjI0Yjk0OWRmYjYyMDkxNWM2OTA1M2M4ZDY3Y2M3ZGM1MTM1OCByZWxlYXNlMjItbWFpbnQKKzMyODgxIDA1MmM2MjYzZGYyNjlhMjY0YzIxODRmZDgzOGNiNmRhNDNlMjYzOTEgbGVnYWN5LXRydW5rCiszMjg4MiAxMDhhMTAwNmE5MDUzYTRmYzM2YzExMjA1YmU2ODE1MzYxNzA1ZGFjIHJlbGVhc2UyMi1tYWludAorMzI4ODMgZjdkZmFlYWE0YWI5ODhhNTQ2YWVlMmE4ZGIxYWZlZWIzN2Y5NjdkMCByZWxlYXNlMjItbWFpbnQKKzMyODg0IGJkODIxNjFiNjFlNTU2OTQ2YjI0OGEyMDkzNmNhNzU5YzZjZTZlNzEgbGVnYWN5LXRydW5rCiszMjg4NSA2N2Q1NjBkNjA4Y2VkNzZhZmUxZTFiNDU3MmRiZTIzNmQ5NmE2YTJkIHJlbGVhc2UyMi1tYWludAorMzI4ODYgODU2YzgxZjcxMjEzZGEyM2U5NjA0ZmJjOGVmOWZhZTkxZDliNzAyMCByZWxlYXNlMjItbWFpbnQKKzMyODg3IGVhZjkwZTg1MGQxMmU5ZmYxMDdiNWZiMmQ0NTQzNGY3OWY3ZmJlMjAgcmVsZWFzZTIyLW1haW50CiszMjg4OCAzNzdhMjlmNmQ2ODc5M2Q2ODdiMTk3ZWY3ZTMyYmQxODM2NDcwMjNmIHJlbGVhc2UyMi1tYWludAorMzI4ODkgZjNkMWVkMTQxMTg4MmQ1OGUxYzk5MjkxNTcyMDA5NTg3NjgxNmFkMSByZWxlYXNlMjItbWFpbnQKKzMyODg5IGFjNzdiOTEzNDI1MzRkMDliMWU0MzJlMWRjM2I3MGRiYmVjM2E5MTkgcmVsZWFzZTIyLW1haW50CiszMjg5MSAwNjg1MjlhOTA5OTI2ZDRmNjAzY2YwYjZkNmEwZDRhMzM0NGFkZGZmIGxlZ2FjeS10cnVuaworMzI4OTIgNzUyZmM1ZWExNmI5YmQxM2ZiMTY0MDFkMjYyMGFmNTU5OTA5MzViYyBsZWdhY3ktdHJ1bmsKKzMyODkzIDM1ZDcwMGQ5MDE1ZTA1ODg4Y2IwY2Q5YjY3NmI4NGFiYjZlNWY2ZjkgbGVnYWN5LXRydW5rCiszMjg5NCBlNzIxMDI1Y2NhMDkzOWZhNjVlMmMzNmRjMjY0MDRmZjQwZGZlNjlmIGxlZ2FjeS10cnVuaworMzI4OTUgMzg3ZDdjMjIxNmExNjliNmM2NmQ4NGY4ZTQxYjIzNDhjZmE2MzBjYSByZWxlYXNlMjItbWFpbnQKKzMyODk2IGQ3MmFkMDdjNzM5ZWEyYzhlMzU2MDFmOTc2MmY5MzJjNWU5NzY1MmIgbGVnYWN5LXRydW5rCiszMjg5NyA2NDIyN2Y4ZGU3ZGFjMTA1ODQwNDQ1NmNkZmU0Y2UxMTNmNDUxNmYyIGxlZ2FjeS10cnVuaworMzI4OTggMjNhZDhiNWQ3YjRhMGVmMzY4OTc0ZDMwNmUxNmU5ZTRmMDViNDhkNiBsZWdhY3ktdHJ1bmsKKzMyODk5IGNhMGM4MTM3ZGU4NDQ1NWVhZmUxOTI0ODUzMjE2NjdkNzFiMGNkZGEgbGVnYWN5LXRydW5rCiszMjkwMCAzOWI4NzE2Nzg0Njc1M2QyMjU1MDMxMGU4ZTViOTg3ZGRlMjZjMDA2IGxlZ2FjeS10cnVuaworMzI5MDEgMWMzMmQ0MjA3NDA0YTg2NDQ1ZjE5MGUwNDRmMTcxYjc1OWY1NmI4NSByZWxlYXNlMjItbWFpbnQKKzMyOTAyIDJmNDI4NzVkOTM3ZjI0ZDU0ZDc5OWFmNzczMjlkMzE3ZTFhY2RjY2QgbGVnYWN5LXRydW5rCiszMjkwMyA4OTNhZTUyNjY3NzY1M2YzMGEzNWVkYWViNTczNDQ1OGJlMDE1MzhjIGxlZ2FjeS10cnVuaworMzI5MDQgMzQ2MDlmYTM1YjExYzE3ZmI1M2E1MzQ5ZjIyMGUwNDA5ZmJmNzg5OCBsZWdhY3ktdHJ1bmsKKzMyOTA1IDNhOGIxZDE2YjdjNmNkY2RiNTUyYWQxNGRjZmVhYzcwODY1ZWIzZjEgbGVnYWN5LXRydW5rCiszMjkwNiAwYjc2Njc5YmYzZjk4Yjc3NDFjZmE4ZTg2NTJkNjk1NzU2NjM0MmY4IGxlZ2FjeS10cnVuaworMzI5MDcgYjRjOTJlOTgwM2E2MjEyMzRkYjZlYjQ5YzZmMjRkYzczZjZiMjA2YSBsZWdhY3ktdHJ1bmsKKzMyOTA4IGJlNzBiODQ3N2Y0M2QwOGE2ODI3OTgxOGFmOGEwYjY4ZjRmZTZlZTYgbGVnYWN5LXRydW5rCiszMjkwOSAzNjg5YjAwNTVjMmRiMjI5NmE5ZTlhOTk3YWMyYTUwNTE5MmRjZmYzIGxlZ2FjeS10cnVuaworMzI5MTAgYjkwOWZkZjBlZGY4ZGRlMGM2NzgyODU3NzA5YTJjMDMyN2YxZDVlYSBsZWdhY3ktdHJ1bmsKKzMyOTExIGRlYTM4MTE2YzM3MzUyNmRjNDY2ZTFjNzI5ODYxNTA3MWRiN2NhNjYgbGVnYWN5LXRydW5rCiszMjkxMiAxOGMwMjA0NjM5NjVkMDI5ZGY3YzEwM2ZlMzBkNGM4ZGY0OWQ2OTc2IGxlZ2FjeS10cnVuaworMzI5MTMgZjFlNTY3NDg1MTk0NDhiYzljMDRjMjAyYTRmM2JjZjY2MjljZmFjZiBsZWdhY3ktdHJ1bmsKKzMyOTE0IDE2MWYwNWY0NjgwZDlkM2Q4Mjc3NWZjOWM5MWExMmYwNDY3ZThmNjcgbGVnYWN5LXRydW5rCiszMjkxNSAzNGY0MmUzNDUwYjRkNjJjMzk1MmU5NjhlZWZiODhmYWU5MmIyYjZiIGxlZ2FjeS10cnVuaworMzI5MTYgN2VhNTUwZWNmNDNkNzRlZDQzM2I1Mjk4ZGFkNTJiY2MwMmZkNWI1YiBsZWdhY3ktdHJ1bmsKKzMyOTE3IDQ1YzZiZTM1NzMzZmRkNmFmOGJjYWQ1Yzc2OTllNzBhMTM4YWE3YmMgbGVnYWN5LXRydW5rCiszMjkxOCBhOWQ3NzhiZDk2NTM2ODgzM2YyOTdjZGNmZDhhYWM2OWYxMDdjNjQ5IGxlZ2FjeS10cnVuaworMzI5MTkgNzRkYTRkMmVhYWQzNjc5YmVlNzVhNDc2NWIxNDAwMGIxMTI5ZGVmZCBsZWdhY3ktdHJ1bmsKKzMyOTIwIGQyM2U5MzIwZDM1MDAyZDY4YTk4NWFmMTEzMjE4MDBlNDUxNWI0ODYgbGVnYWN5LXRydW5rCiszMjkyMSAzYzRkOTVhNGNlMTc3ZTdiYmQ5ZDgwMDZkODU3NTdhNjNkN2VlMDRmIGxlZ2FjeS10cnVuaworMzI5MjIgNzg4N2ZlM2E5YThmZjZhOWE3YWQ4MjE5NDBmNTZmNTY1ZTNiZDY0OCBsZWdhY3ktdHJ1bmsKKzMyOTIzIGM1NjMzOGUwODdjYWNhZjhjMDQxZjZiZDBiMDFlMmEyMGUzNTQ0MTEgbGVnYWN5LXRydW5rCiszMjkyNCAwODYzMDkxOWJmNTJiMmVjOTM0YzEwOTZlZTExODRiNmIxYjQwOTdiIGxlZ2FjeS10cnVuaworMzI5MjUgOGY3M2RmMDk5OTY3MzQwMmEzYmMwMGMxZThlYjg2MzdkNmMwZmQ1ZCBsZWdhY3ktdHJ1bmsKKzMyOTI2IGI3Y2QxZmYwMDE5YjlhZGVkYzMyOTZhMjY1ODhmM2U2MzJlOWY0NjYgbGVnYWN5LXRydW5rCiszMjkyNyA4OTc4MTIzMThmZjQxZDQ5NzAyZDg1NzhjMDA4ODdkMmQ3MzdkMzAzIGxlZ2FjeS10cnVuaworMzI5MjggZGY4MGE1YjY5NTdiNWVlNWE3MjYzY2JjZjY4YjM0MTIyNzIyYTEyMyBsZWdhY3ktdHJ1bmsKKzMyOTI5IGEwNDNhZjYwOGU5NGNjNzMxMTI3OTg1OTVhM2EzOWNmY2Y4MDE5MmQgbGVnYWN5LXRydW5rCiszMjkzMCBmZWM3ZjMzYjY5N2MxODVhNjhlODQyMWNmYjJmN2I1YjVlYTgzMWZmIGxlZ2FjeS10cnVuaworMzI5MzEgNjY3MzA1M2VkYWQzZjNkOThlYjMxMjkwYTA4NDNiYTQwY2Y2OTgwYSByZWxlYXNlMjItbWFpbnQKKzMyOTMyIGNmYmE3NmY3NzY0MzU4ZmYyNDkxZDUxMzU1NzJiZDUwZDNiNGIzNWMgbGVnYWN5LXRydW5rCiszMjkzMyBiMzcyYjkwM2QxMGU3YWRkMzI5M2E5NzdjMGU5MTg3MzU0ODRkZjNhIGxlZ2FjeS10cnVuaworMzI5MzQgOGYyYzVjZjYxNzYzOTA2YzMyZmM4ZDY4ZGVlYTZiZDcwZDUxOWJkYSBsZWdhY3ktdHJ1bmsKKzMyOTM1IDQ5OTJjNjBkNDIyYjI4ZDFmZWI2YjMzYWJiOGY1YWNkMTY2NTU0YTUgbGVnYWN5LXRydW5rCiszMjkzNiBjMzI1ZThmMjBkNmU5NDA5NWYzMGUwN2E1MDgwZWE1MjMxNGJjN2M5IGxlZ2FjeS10cnVuaworMzI5MzcgN2YxMzBhNDM3MGM5ZTM0YzY1ZmU5ZTE2YWVkM2VmZmQxYThjOWQxYSBsZWdhY3ktdHJ1bmsKKzMyOTM4IDhlZWIxZGY2OWYzNTc1MTc0M2FlMDdhMTRlODcwNjgyOTY0ODBkNjcgbGVnYWN5LXRydW5rCiszMjkzOSA5NDlmNDE4MjlmMzZmNGY3ZDNmYWY3ZDk0YzUzMjZmYTQ4ODgyNDIyIGxlZ2FjeS10cnVuaworMzI5NDAgYTVjOGVjYTU0YWViMDFmMzMwNmU5YmRlZDgyMTc1ZmE1ODI3ZDhiZCBsZWdhY3ktdHJ1bmsKKzMyOTQxIGRlNDFmM2NkNjQ3NDQ1MjE0ZmNmM2ZiYjc5OTJjMzFiOTZmYTM4ZDMgbGVnYWN5LXRydW5rCiszMjk0MiAwNDM3Y2Y0YjllZWMxZTJmMDIzMzQyYzlhZTZlN2IzY2I0ZWQxYTdlIGxlZ2FjeS10cnVuaworMzI5NDMgODExYWQ1ZjJmNzAxNGMxMWZlY2E1N2IyYzk3MzkwNWMyN2RiYzc0MCBsZWdhY3ktdHJ1bmsKKzMyOTQ0IGI1YmFkZDNhOGQ0ZjM5MThmYzhhYzVlMDMwNjg5NTJmOGJhNzk4N2IgbGVnYWN5LXRydW5rCiszMjk0NSA3MDYyNmM1NzNlZDcxZGQ5YjZjMWNlMjVkZjdmNDQ1ZmUzMGQxNTE4IGxlZ2FjeS10cnVuaworMzI5NDYgMjE0NTFmNzYwNTk2MzFjY2E5NWYyZTVmN2FkOWQ5YTdiODU4NzIzZCBsZWdhY3ktdHJ1bmsKKzMyOTQ3IGU4YzRjMTVmNDU5ZTM1ZWMwYzg4YzU1YjY1MmY0Y2U3MTQzMmRhMjkgbGVnYWN5LXRydW5rCiszMjk0OCBiZDM0OTk5OWNiMDgyODg5OGQ4MGViMWRjYjVkZGVlYjhhMGQ2MjVkIHJlbGVhc2UyMi1tYWludAorMzI5NDkgZDQ2NDU5ZDgyYTc5Mjc4ZTU5Mzg0NmFmOTIyMDY3ZDJjZjFlNzI2NiBsZWdhY3ktdHJ1bmsKKzMyOTUwIDdmN2EwNzgwNDZmYjVjMTBiZjMxNzcyNzUzNDc0OTA0NzJkMTYzYjUgbGVnYWN5LXRydW5rCiszMjk1MSBjMWU4MGYyZjFjNDcxYTIzY2Q3NjZiNjE2M2U3NzkzZmM1ODYyZTNjIGxlZ2FjeS10cnVuaworMzI5NTIgYjU0NzhkMWRkNjdlZGQ5ZDY2ZThhZDBlOWQ5ZjY0Y2JkYzJiNzAyZSBsZWdhY3ktdHJ1bmsKKzMyOTUzIDBiZWIxYTY1MTQ0MzU4MDJkMDMxMzRjYTA3YjUwYWIwOTMyNzA1N2UgbGVnYWN5LXRydW5rCiszMjk1NCA3MzI4MzY2NjYwMDAzMjNmZWY1MjM3NzUyMWE2NmRlMTY5MjViYjE0IGxlZ2FjeS10cnVuaworMzI5NTUgOThhZmZkYmM0MTZjNDEwOTk0ZDU1OGQ1MDY2NzcxYjdlNWMwZDVjMyBsZWdhY3ktdHJ1bmsKKzMyOTU2IDA4YTFjYmRkMDM2N2ZkMDFiMjczOGNlM2VjNWJlNWEwNzY4ODcyZjEgbGVnYWN5LXRydW5rCiszMjk1NyBlM2FlZmViYTQxMTYwOWEyMmM3NWY5MzcwMTVhNGIxZWFjYzhlZWNjIGxlZ2FjeS10cnVuaworMzI5NTggOThkODE1OTllY2E3NGVjMzNlYmZkYWJmZWQ5N2UzMGVmYjI4NzQxNSBsZWdhY3ktdHJ1bmsKKzMyOTU5IGMzYTAyMDc0Y2JlZTliNmFlODM4Nzk4MDYyOTViMDg2MDc3ZjdiY2EgcmVsZWFzZTIyLW1haW50CiszMjk2MCBlNmY4ZTI2ODdjNmZkNTc1MjRlYTZkNWQ4YmE2OWMxMTUzMjkzYTIwIGxlZ2FjeS10cnVuaworMzI5NjEgNjQ2OGYwZTFmNGE4NWJiZWRiZjRjNTM5NTJjYmZlN2IyYWViMWZmYiByZWxlYXNlMjItbWFpbnQKKzMyOTYyIGFkMWU2N2FjNTY3Yjg3Mjk5NGNiYTllNmM4YzRhMGRhOTM1MTJjMzYgbGVnYWN5LXRydW5rCiszMjk2MyA0NjI5NGVkZGJhNTUxM2JiYjU0MTViMzJhZTg3ODE1NTNiOGI0MTQwIGxlZ2FjeS10cnVuaworMzI5NjQgNjcxZTljM2FmNGYzODVmYjg4ZWRlN2U2NjdjZTFiZDY0ZTc1NWU3MiByZWxlYXNlMjItbWFpbnQKKzMyOTY1IGVkNzA3NzlmNjQwMjFjOTBlZmJmYzAzODc1MjJhNWNlMjIyNTFjZGIgbGVnYWN5LXRydW5rCiszMjk2NiBiMTc5MmE2MThlNmRiY2JlMTFlNDA3NjNkYWVkMmViZDhlZjAxMTM5IHJlbGVhc2UyMi1tYWludAorMzI5NjcgZGJjZTU1NmNmYzk2ZTkwNzA5ZjQ0NjM0MDc0NDYyODAxMzhkYjJlNSByZWxlYXNlMjItbWFpbnQKKzMyOTY4IDUxY2U2OWJkZjQxODZlODIwMTQ3OTQxZGU0NzEyOTI1YTUwNGNjNDMgcmVsZWFzZTIyLW1haW50CiszMjk2OSBjMjkxY2EyOTQ5ZTkyNjQxZTZjZmFlMmM1ZDY4ZjA3Y2ZjYmU4MGZkIHJlbGVhc2UyMi1tYWludAorMzI5NzAgMjcyYzc1YjFkMjJlYmIwNWZjN2JlMmIwNTc3ZWEwODk0NmVkYmQ3MCByZWxlYXNlMjItbWFpbnQKKzMyOTcxIGY0NGZiZjc0ZWI2MWRjMjhjMTdmZjg0NTAzMzUyNjlhZmI4ODZkMDcgcmVsZWFzZTIyLW1haW50CiszMjk3MiBmN2Y0NmQ2NzNjNjFjNzJjYzhjZDA5M2MwMTdmZTBmZmQ3NGYyZTIwIHJlbGVhc2UyMi1tYWludAorMzI5NzMgNjVmN2VmZDM1ZjExOTAxYzcwZjVjOTdiMmE5ZmRkNzNmM2EwMDNhNSByZWxlYXNlMjItbWFpbnQKKzMyOTc0IGIzMWM4NGJhMWYzMTQ0ZjUwNDc1NjVhZjQzNzExYmQzYTBhNmM0MmMgcmVsZWFzZTIyLW1haW50CiszMjk3NSA3NzQ2MjY5Yjk1MWNkZDYyY2Y2OTA4YmNhNGIxMjc1ODA1ZjdlMTAzIGxlZ2FjeS10cnVuaworMzI5NzcgYmYyZGMwZDE3MTQ4ODI3ZDYwYTZmZDJjNjlmZjViYmRmNDgzNmJjZiBsZWdhY3ktdHJ1bmsKKzMyOTc4IDEyZjllYTMyZjIzYTUyOTcwYmI0NTllZjI2Njk5YTczYmRlMzBmZTggcmVsZWFzZTIyLW1haW50CiszMjk3OSAwMDhjZDEwMTI2OWRmNjgyOTY4MDRmMzE3NGJjOTUyYzcwYjRjMDIwIGxlZ2FjeS10cnVuaworMzI5ODAgN2JlYzYyODk5OGZlOWU3NTcyNjdlNTZhYmRlM2RiYTY4MDY1ZmU4YyBsZWdhY3ktdHJ1bmsKKzMyOTgxIGU5NTBhYmMzMjkyMjdhYjY4MDA1NzQ3MTAwZGNlYTY3NTA5MDQyNjQgbGVnYWN5LXRydW5rCiszMjk4MiAzNjgyYWEyNzE0MWI0NDIyY2U2YWVmOWVmZTljOWJmNzQ2OWU0NGM1IGxlZ2FjeS10cnVuaworMzI5ODMgODcwMGExYzcwMTZiMTBmMDk4OGQ5YmFmMzY0MWFmYmRkY2Q4NzUyZSBsZWdhY3ktdHJ1bmsKKzMyOTg0IDYzYWI1MGVjNGE0NjYxNWFmMGQ0Njk1NzE2ZmM4OGEyYWM0NjUzZGEgcmVsZWFzZTIyLW1haW50CiszMjk4NSBlNDU4M2QxNjZjYmNkNzk4NmJhMWI0ZTJhMjEwODEyOGUxOWVjMDgyIHJlbGVhc2UyMi1tYWludAorMzI5ODYgMjlhYjFjOTIzZjc1NzEwYTJiOTRkZjM4MWE3YTIzMDc0ZTBmYzJhNyBsZWdhY3ktdHJ1bmsKKzMyOTg3IDQ3YzcyNWEzMmIwZWMxMGY4YWFlN2U3MDdjMWE2N2Y5YTQzYmQ1YmEgcmVsZWFzZTIyLW1haW50CiszMjk4OCBjMDAxYmIwMDA1NTgwZDJhNTY5YWIyZTcyZWRhMjI3YTZkNWZjMDdkIHJlbGVhc2UyMi1tYWludAorMzI5ODkgODNhMmU3MTMzYjAxMDU1M2I1NDc1NjA1N2NjNzgzMTE4M2RjYTVhMiByZWxlYXNlMjItbWFpbnQKKzMyOTkwIDg5MGNkN2EyMjIzZWZiOTY4ODQ2MmJlZTRiNGNkNjhiZmJmNTlmNzUgcmVsZWFzZTIyLW1haW50CiszMjk5MCBmNGYxMzRhZDQ2YWJkMGJjOTczZDNmNjA5NGVhNTZlNjJhYzVjNDkyIHJlbGVhc2UyMi1tYWludAorMzI5OTIgZjk0OTU4MTVjMThmMzE5ZDk2MjlkZjRiNzQ1NjI1OWQ2NDZiN2UwMyBsZWdhY3ktdHJ1bmsKKzMyOTkzIGY0MDliMzNjMjljZTQ5MjAwZTMxOTgxNzNjMzc1MjUwMzUzNDE3MDQgcmVsZWFzZTIyLW1haW50CiszMjk5NCBmYzI4NmUyODU1NmY3ZDg2ZGZmOGZmYmMyMDVmYjM3ZWU4NWUzNzIxIGxlZ2FjeS10cnVuaworMzI5OTUgYzY5YWQ5MjI3YWZkNGY5MzFiNzRjYTU2NjAyZmVlZWQyMTdkZmM5YSBsZWdhY3ktdHJ1bmsKKzMyOTk2IDZhYmNiNjkwYjQ3YjU0YTdhOGI1ODViYjIxNGM5NGEwN2M4MzU1ZjEgbGVnYWN5LXRydW5rCiszMjk5NyBkODljMDgzN2Y4ZjQxODMxNTVkMjU0NWZkNTVkODAyNjRlZThiNGMxIGxlZ2FjeS10cnVuaworMzI5OTggZTRmNzBlNjAyNTk4ZDQ4YmEyYjQyOWQ1NzViZWRmMjMwMmI3YjdiYiBsZWdhY3ktdHJ1bmsKKzMyOTk5IDk3ZmQxZjQ5ZjAyNmFhNTA0YzVjYWY3YTA4Njc5Y2U2NjllMzEwOGYgbGVnYWN5LXRydW5rCiszMzAwMCBiMzQ1NWM0YzE3OTg4Nzc4ZDc4Y2E1Yjk4Y2I4ZDZjOTU5NDhlYTEzIGxlZ2FjeS10cnVuaworMzMwMDEgNzU0OTRhZWE0N2NhNzI2NTQ5MWVhMjQxN2EzYzA4MjlkYWViNTQ4MyBsZWdhY3ktdHJ1bmsKKzMzMDAyIDQ1ODVhYjBkYTAwMzc3YmFmMGU5Y2EwZmVjZWIwZmUzNmQ1NTAzYWUgbGVnYWN5LXRydW5rCiszMzAwMyBmNTg5MTQ1OWI4MTNlZTI0NGU1ZDUzZmE2YjA4OTNkYTQ5YTA0ZDhiIGxlZ2FjeS10cnVuaworMzMwMDQgMmY3MzFjNTdjZGM2OGY1OTQwZDAzZjk5MDhjOGJjOTQ4NmNlNGE3YSBsZWdhY3ktdHJ1bmsKKzMzMDA1IDI3YmQ0Y2QwMmJiODdlMzc3MTUzYjNlZTI0NzBjZjAzMjAxOTA0YzggbGVnYWN5LXRydW5rCiszMzAwNiBmYjg0ZTBlYWJhZDRlNGIzZDE2ODAzNDNiNWM2ZGEyOTgwMTdlYzcwIGxlZ2FjeS10cnVuaworMzMwMDcgMWFlOGI2NzQwOTA2NTIwNjVjZGQ4YWVlOTE0MGJjY2E0MDUzYzk2NCBsZWdhY3ktdHJ1bmsKKzMzMDA4IGIxMzk1MDE0NzE0YWQ3ZjA2Y2UyZmFkZTYxZDhlZjRhMTU5ZmViYTcgbGVnYWN5LXRydW5rCiszMzAwOSBiNTJlMGFkMzA1ODU4ODBlOTI2NjZhMjQ3NzBmMzdkYWQ0NmFiYmI5IGxlZ2FjeS10cnVuaworMzMwMTEgNTNkOWI0ZWVjNGNlMGEyODRmYmM1MGZkMjUyZTNhYjU1NjJlYzdhMCBsZWdhY3ktdHJ1bmsKKzMzMDEyIGEzNjkzMzYyMjRkZGE0OTUzOWExZGNkNjQ1OTdkODEyNGM1ZDU2YTcgbGVnYWN5LXRydW5rCiszMzAxMyAyMDg5NGRiYzdmNmE4YTU3MTI0NDI1M2FlYTE3MTU4MTgzZjQ2ZjI3IGxlZ2FjeS10cnVuaworMzMwMTQgYjFlYjJhNDc1NmJjYzMyOTNlOTFiZjI3MWNhOTU5NzUwZmFiYjQ0ZCBsZWdhY3ktdHJ1bmsKKzMzMDE1IGVkOTQ5YjgyZjk1ZDljOGE0YjE5NzRhNDQwMGNjMTgxZTEwMzY2NjYgbGVnYWN5LXRydW5rCiszMzAxNiAzZjEwYTI5ZTBlNmExYWUwMDVjNWYyMDVmMDk1YzM4MzkyZTU2OWQ3IGxlZ2FjeS10cnVuaworMzMwMTcgZmRhYzliNGQzNzE3MjUxMzI5OTc0OGFmYTNiNzk0MzJmN2U0M2YzYyBsZWdhY3ktdHJ1bmsKKzMzMDE4IGY4MmI2ZDJiNzNmMTExMzcwYThjODRkMjkzYTg4M2Q5OTJjMzYwZmMgbGVnYWN5LXRydW5rCiszMzAxOSBjNjYxMDBjMDllYTExNjI3ZDQ5MDA5ZjI1MjEwMjk1NzY1MWE0ZGE2IGxlZ2FjeS10cnVuaworMzMwMjAgZTBmMDcxYjQ3NmZkMTZmZGRkN2FiODVhYjkzZGE2Mzg2ZmQ3YTFhNiBsZWdhY3ktdHJ1bmsKKzMzMDIxIDcyY2U3Y2MwM2YyN2ZkMjYyMmVlNzI0ZmYxNzBhYzIxNTVmZjIxNjUgbGVnYWN5LXRydW5rCiszMzAyMiAyNjE2ZmU1ZWVlZTE3OGQzNjNjNDI1MDIzZWRjZDYxZDFmODJhZDM2IGxlZ2FjeS10cnVuaworMzMwMjMgY2EyMGMzY2JjOTU2ZWEzMjNiYjk4ZGM5MDc5OWNjZTkyNTY4M2ZjYSBsZWdhY3ktdHJ1bmsKKzMzMDI0IDEyMTkwMjFjNDg2NWFlODA3ZjMzMTQwYTA1YjU0YTI2OGYzNWZmODQgbGVnYWN5LXRydW5rCiszMzAyNSA1OGMxYWQ0MTdlZTdjYWVkNDI4YWEyMjI2ODY1NDk4ZjA4YjgxNWI1IGxlZ2FjeS10cnVuaworMzMwMjYgYzAxZWRjMzVmZmQ2NzZiYTRhNjZiMGQxZGMwYjVkOTUyZTgxZDA0YSBsZWdhY3ktdHJ1bmsKKzMzMDI3IDhjNmQ0ZGE1Y2NkM2Y4OWQ1ZTU3ZWIxOTI2OTBiZDhmYWZmYjk5ZjAgbGVnYWN5LXRydW5rCiszMzAyOCAyMGUxYWQzYWU4YmIwY2ExYTIzZmYwNjUzOGVmY2E0NjE5MzNlMWIzIGxlZ2FjeS10cnVuaworMzMwMjkgOWU3ZDIyOTMwZGFhMTJmMjdhNTdjMmMwYjA2NGQyZjU5NTI1MjY3OCByZWxlYXNlMjItbWFpbnQKKzMzMDMwIDIzZjYxMDFjYzg3ZWYxNTEzYTk0Mjk3NWNkYmExZTM0ZmI3OGVhNGYgbGVnYWN5LXRydW5rCiszMzAzMSAyZTJkZDYxNDM5NDM5NzdlZDdlNzM0MDUwNjA5ZjkzOGZhMmVjYWU0IHJlbGVhc2UyMi1tYWludAorMzMwMzIgNDA4MWI0OTBkNTRjYWNmMjEwMWYyNzFlYTc2MmU3OTYxNTg4ZWIyYyByZWxlYXNlMjItbWFpbnQKKzMzMDMzIGMwNTU5NzkzMDBmMTc4MDUyMjcxMDY2YWM0YmZmZTIzY2NiOGIwZDQgbGVnYWN5LXRydW5rCiszMzAzNCAyNGU3NGQ2ODc5ODAwYmJiYjMzM2UwNzlhZjQ3NWE3ODNhZGMwNjYwIGxlZ2FjeS10cnVuaworMzMwMzUgMzQ3ZTdiNmRmZDUzYWQ5ZDcxNzc4ZmYxNGYyOTljZGEyOGMwMTE2NSBsZWdhY3ktdHJ1bmsKKzMzMDM2IDI0ZmZmMzJlZDA2NWMzM2RhZTAzOWM1OWY3OTgxNGJjYjBlNjZjODIgbGVnYWN5LXRydW5rCiszMzAzNyAxNWYxZGM1YjdkZGMxY2Y2MTRiNmIyZDViMDA0ZGIyN2NmMWJhMmNkIGxlZ2FjeS10cnVuaworMzMwMzggNTg1ZTMwM2E5NDkxMzUwYzgwNjkwOGNhNDJlNzY3ZWMyNmE0MGJhMiBsZWdhY3ktdHJ1bmsKKzMzMDM5IDBkNTg4ZmFkYzFmODJmZmFmNTVlNTU1MjUxNTIzNzQzYTU1YjJhNzAgbGVnYWN5LXRydW5rCiszMzA0MCAyZDM5ZWMwZTU1YWE1ZmE0ZGJjM2MyMzg3NmE4OTdjOWU2MDgxM2FiIGxlZ2FjeS10cnVuaworMzMwNDEgYmFlNmNlNmQxZTVhMzdkMjZkYzEwYTY3M2VjYTU4OTYwMWZkZmQxNiBsZWdhY3ktdHJ1bmsKKzMzMDQyIGNkNWVjYzViMzhlYjg1OTdmNjYzNjE1NDA2Nzc3M2I2ZmE5NWQwMTMgbGVnYWN5LXRydW5rCiszMzA0MyBlZmYzMzMzNGNhNjczN2QyMDYxNzQxOWZhNTAwMWQxNGVmMGQ0OGIwIGxlZ2FjeS10cnVuaworMzMwNDQgZGI0NmNlZGFmN2NlMjBiMjE0NDA5MTNhNDc1NmM3OGFjMTQ2YzU1ZiBsZWdhY3ktdHJ1bmsKKzMzMDQ2IDg1NzQyOGNiNDE4YzdjOGUzZmE2OTE5NGEzNmM3N2YwMmUxNTg1NmQgbGVnYWN5LXRydW5rCiszMzA0NyA2NTQ5MDg4NDdlZWY4YmY2MGRhNjU2ZmRjMGYwNDNkYzcyZTdiMDkwIGxlZ2FjeS10cnVuaworMzMwNDggM2IyZTJiMTQ2ODFjMDJlMGJiMjMzOWMxMzdiM2M2MGE3ZDIwYmI5YiBsZWdhY3ktdHJ1bmsKKzMzMDQ5IDllMWY4ZmM1ZTcxZDMzNDcyMmI2MTM3N2Y3MzAwZGViNTQ1NmI3N2YgbGVnYWN5LXRydW5rCiszMzA1MCAyNmUwN2E2ODQ4OTBjYmNjOTc0YmY2NjhhMmQ4MWEyOWJlZmRkMWQ4IGxlZ2FjeS10cnVuaworMzMwNTEgY2UyNWI0ZDc0NmVhMTAwNjdlMGNhMzVmYzVjMWE3ZWEzNDZiN2JjMyBsZWdhY3ktdHJ1bmsKKzMzMDUyIDkyZmZlNTAyMTEyODE5ZjMzYzY3MTFiMWNlMzkxZmJjN2UzMjY2OGUgbGVnYWN5LXRydW5rCiszMzA1MyBmYTYwNGFmMGNkYmZiNjMxYmY0YjE0ZmZmODVlNmUzNzI1YzI1ZjVkIGxlZ2FjeS10cnVuaworMzMwNTQgNjFlOTY2YzllY2U4ZDkwOGRhZmM1YzAzMjRlYTUxZDA1NjFkZGU4ZCBsZWdhY3ktdHJ1bmsKKzMzMDU1IGU2YjBhNDA2ZGMzMWVmNDJlZmZkODYxZTc1Y2JmOGRmZTVmNzY3ODggbGVnYWN5LXRydW5rCiszMzA1NiA1MjU3NjY4MTdlYjY4YjYyZGFlMTAwYzRhZjc2YmM1MWMwOGM2NWZmIGxlZ2FjeS10cnVuaworMzMwNTcgYjBhN2VhYzZjNjUxMTAxYjdmYjcwMzU5N2Q5N2RhYWUxYTU1NzY3MiBsZWdhY3ktdHJ1bmsKKzMzMDU4IDgzMjM2ZjU4ZTY4MTIxZTM2NTJlZTliMWY1YTJkODI1MjRkZmExZWMgYW50aG9ueS1wYXJzZXItYnJhbmNoCiszMzA2MCBjZjBiYWFmMTZlMGQ3ZjUyMWRlYjAwZTFmOTVjZGRkZmI0NDA0MjA1IGxlZ2FjeS10cnVuaworMzMwNjEgYTJkNGM2NGY1YjhiMzE0YjUzZTRhZGEwNjdiOTZhNzVkZWZiN2M2ZCBsZWdhY3ktdHJ1bmsKKzMzMDYyIGQxYThjNzMyMzU5ZTdkOTQxMmIyMGFkY2M5NGY3MjMxNDlmZTcyODMgcmVsZWFzZTIyLW1haW50CiszMzA2MyA4YzVhNjg1M2EwMmFkYjgxYmQ2N2VhOGEwOGY0YzI2ZjUxNzJiOGQ3IGxlZ2FjeS10cnVuaworMzMwNjQgYmVmZmM3MzY2NmZkMjBjYTM4YjYzZDRhM2I0NjEyNGNmM2VjY2I2MSBsZWdhY3ktdHJ1bmsKKzMzMDY1IDNiNTRkZmYxMzMxMDFlZTI5Yjk0OGJhMDgxN2M5NDZlZGQ0ZWViNDAgbGVnYWN5LXRydW5rCiszMzA2NiA5YmI2ZjNjNWIwNGEzZWY4Y2VjMTRmMGUzMGY3NzRhYTJhZWY4YThiIGxlZ2FjeS10cnVuaworMzMwNjcgMzFiMmNiYTY0YjM5OWJmNTkzMTcyM2UxNjYzOTFiY2MyNzgzMTU1YyBsZWdhY3ktdHJ1bmsKKzMzMDY4IDI5NzYwMDU2ODg0YTllNzE1MjFlYWU1MGZkYzZhMzZiMWIzMjllMzUgbGVnYWN5LXRydW5rCiszMzA2OSBmMmRmOWM5ZjBmY2I2MDliNmU5Njg0Njk5ODIwMjYwYzBhYjZjM2FiIGxlZ2FjeS10cnVuaworMzMwNzAgYmFjMmMwZTdjMjBhMTIyMjUwMDBhZTY5OWRkN2ZhOGMyZjdhMWNhNyBsZWdhY3ktdHJ1bmsKKzMzMDcxIDM1NmJiNTljNTQ4NmIyZTVlYjJiMWY1YTJhMjllZGViNjZiOTU4MGMgbGVnYWN5LXRydW5rCiszMzA3MiA2NDM4NjQ2NGY3MTY5MTE3N2U5YTQyZDcxYmE0NDg5YTFlYWNlMWFhIGxlZ2FjeS10cnVuaworMzMwNzMgMGE0MGM2ODdhZjVlYzk2ODAwODAzMmU3NGRlMmIxNTQwMzI2YTgwMyBsZWdhY3ktdHJ1bmsKKzMzMDc0IDg4OTUxYTVmZDJhOWVlYzAzZjQ3MTU5YWMxNzhiNTBiNDRmNjA4NGYgbGVnYWN5LXRydW5rCiszMzA3NSBhYjFkODVmOTg0ODU2ODc1NTBiMTI2YzQzZjI1YjE4Yjc3MDE3YzI4IGxlZ2FjeS10cnVuaworMzMwNzYgOWUxZDc4MDlhOTk4MTZhZDlhMDc5NTI4NjYwMDlhNmJkMjJiOGUxNyBsZWdhY3ktdHJ1bmsKKzMzMDc3IDE5ZjRmNDhiYjAyYTdlNmUwMTRjM2QzZjI5ZmFkNTE0YjIzNjJmMzYgbGVnYWN5LXRydW5rCiszMzA3OCA1YThmZDViM2U0YzQwNTEwYjA1NzgwYWNkMzlmNWU2MWJhODc4NTA3IGxlZ2FjeS10cnVuaworMzMwNzkgZjg3ZmNkMDg3MGJmMmM5ODZkZDFkODA1MzAyMWUzNDNkMjQ0YjcwMCBsZWdhY3ktdHJ1bmsKKzMzMDgwIDJiYTVlYzZiM2NkYTJmYjBlN2VkYTU0Nzk2NDBiYTNlNzA3NjY1NDUgbGVnYWN5LXRydW5rCiszMzA4MSBjZjhhZTNiMGRjZGM5NzBhYTg5NGUyZmQwZGQwMTYwMDZjMTI2N2FmIGxlZ2FjeS10cnVuaworMzMwODIgN2M0OTgzMWQyM2M1OWIwN2I2NjM2MGQ3NDc4MzI5MDgyZDlkN2ZjYyBsZWdhY3ktdHJ1bmsKKzMzMDgzIGZjMzkyZGFiZTJlMzBmMGVhOGU5MGViM2MyZDJhODA4NjUzOGJkMDYgbGVnYWN5LXRydW5rCiszMzA4NCBiNmMyNzFiYTAzZTE4MTQ0MzY1YTM4NzIxZjZmMzZlYTAwYzM5NGNlIGFudGhvbnktcGFyc2VyLWJyYW5jaAorMzMwODUgMDg5ZmJlM2ExMTRlZjliZWM2NGFiNTlkNmQ3NzA1M2QyZGJiNjAwYyBhbnRob255LXBhcnNlci1icmFuY2gKKzMzMDg2IDBkNjFhMjdjMzg5NjllMDY4NDZhZTljZmE5MWIyYzEyZTdmNWI0ZWEgYW50aG9ueS1wYXJzZXItYnJhbmNoCiszMzA4NyBmZmQwMmJhYWIyNTkzMjBlNzMyNmMwOTc2Mzc5MWI3ZjY3N2M5NDNiIGxlZ2FjeS10cnVuaworMzMwODggNzBkNjI1ZmY1NjJiNWQ2OWMzNTliNzRjNGMyZDQ2ZDNiYjJkZWQzZSBhbnRob255LXBhcnNlci1icmFuY2gKKzMzMDg5IDkyM2U2ZmI4NTVmZjRmN2EzNzMyYjNhZTQ0MGMxYjM1NWJiY2IxNTUgbGVnYWN5LXRydW5rCiszMzA5MCBlZGNmZWY5NDRlMmY0MDZjODI3YWIxMTZmODBmYjRhNjQzYmU5NWQwIGxlZ2FjeS10cnVuaworMzMwOTEgNWM1NmJmM2NiMjA1NTA4NTI5Mjk4NGIyZTI4ODU5YTExN2VkZmI3MyByZWxlYXNlMjItbWFpbnQKKzMzMDkyIGM0ODFjNjg2Mjc1YTc4NWE1OTMwNDVmMGRhMDk5NWM1YTg2YzZhNjAgbGVnYWN5LXRydW5rCiszMzA5MyBiODBhMjIyNTBlNGYxMWE0YjQ3YjVhMDFjZDI4MGM4NTVkYjVjYzU0IGxlZ2FjeS10cnVuaworMzMwOTQgZWZlZDY4OTczYTNiZWYzNDA4MjI3MzYwNWIyY2RjN2RjZGI3Y2JhMyBsZWdhY3ktdHJ1bmsKKzMzMDk1IGUyZjI0MTBjMDk2ZTAzZjNkNDIwZjdhMDMwN2RkYWU1ZThhZWMyNmQgbGVnYWN5LXRydW5rCiszMzA5NiAxOTMzOTdjNDRhZTUxNjRmMmVjMDc4M2YzZTA0MDk1ZWRkZGEzODQ0IGxlZ2FjeS10cnVuaworMzMwOTcgZTY5ZTU0NTUyZDEwOGRiNjc0NDQ3YmRmZjg4MzlkOTdlMmM1YTZjMiBsZWdhY3ktdHJ1bmsKKzMzMDk4IDBiYTdjMTAxNjQ4YWM4MjgzNDBjOGU0ZTczNTRmYmI4NTgxZmU1ZGYgbGVnYWN5LXRydW5rCiszMzA5OSBmYTQ4YTkwZWRhMTI1YWViMmU4NDhiMWUwOTZhM2ZlNmYxMGY3Yzk0IHJlbGVhc2UyMi1tYWludAorMzMxMDAgMTc5ZDU0NTJiYjlkOWY2MTE0YTQzMDhkZmFkNzNhODFmODcyZDY4NiBsZWdhY3ktdHJ1bmsKKzMzMTAxIGI0MDkwMmI0MjI5MGRiNjk0ZWZlMzNiYzIzNjYzMDZlNjEwOWNmN2UgbGVnYWN5LXRydW5rCiszMzEwMiA3YjcwMDQzOTNiNWIyNmYyNTNlNmYxYzFlMTU3ZWVhNDVjYjE3YzA0IGxlZ2FjeS10cnVuaworMzMxMDMgNTJiYWFlYzdlNWNmMDg5ZjM1MTY1NjhkNjE1OGIyYWY4ZDY1YWQyZCBsZWdhY3ktdHJ1bmsKKzMzMTA0IDE3NDMxYmE4Y2M0YmZhZGEzMjY4NGFhZWY0NzE2MjVjYTU3MTVmMTkgbGVnYWN5LXRydW5rCiszMzEwNSA2ZmVjYzk5YWZhNjlmZmQ0ODBhMjkyZTYyMGQ1MDFlZTZlNzU0NzNmIGxlZ2FjeS10cnVuaworMzMxMDYgYmIxOTEzNGUwYTRkMGI5ZTQ0MzMyYmQ4NWVhOTdjMzBkNDNkYWVmMyBsZWdhY3ktdHJ1bmsKKzMzMTA3IDhkMTYwMDk1ZWI2NjgzZTNjMjJhNTg5NzYzOWZkZDY3NzMwN2Q4NDIgbGVnYWN5LXRydW5rCiszMzEwOCBlNWQwMzM2MDU3MWQ5N2NhZmRlZDQyM2NjODY4YTllNjJlMDYzMzRhIGxlZ2FjeS10cnVuaworMzMxMDkgZTk5NTNiMzk5ZDU1M2Q1Y2M4ZGYwYWU5YTc5MDc0MmY0MmMzMjEzNiBsZWdhY3ktdHJ1bmsKKzMzMTEwIDJjYjk2OWZmZTFiZjI4ZTU0YjA5ZmNjNjQ3N2E1YmVmNjVhYmY5MjYgbGVnYWN5LXRydW5rCiszMzExMSA1Yzc2Mjc1Mjc4MmMyOTM4MjhkMDkxMmNkNTRmY2M0NzA1MzllNGMyIGxlZ2FjeS10cnVuaworMzMxMTIgMmQ2OWE3MDdjNDkyOTg1NDkyYTMxZjNiNTc3NTNiOWIyZDI1NWE3NSBsZWdhY3ktdHJ1bmsKKzMzMTEzIDU2MzQzODE2YjU4OTdmOGFmNzAyZjI1YTBkMTU4MGU4Njk2ZDMyNTUgbGVnYWN5LXRydW5rCiszMzExNCAwNTA1OGQ4MTM0NDE4ZDQ4ODU4NDUzZTExNGJmMDliNGRmY2MyODk2IGxlZ2FjeS10cnVuaworMzMxMTUgMzAxNmExOWUzMjBlNjQ1MTcwNmY5ZTBmNTdjMmM0MWI3OTQyZDNkMiBsZWdhY3ktdHJ1bmsKKzMzMTE2IGVmYWQ1OWYzOTU2NGJjZDk0ODE3OTcxN2NiZGY4NmIwYjZmZDhkMWMgbGVnYWN5LXRydW5rCiszMzExNyA5YjcyNTU4YTFlYjlmNDBiYjJjMGE0YmUxNzE5ODFhYTc2NWEzMTg4IGxlZ2FjeS10cnVuaworMzMxMTggNmQxNjBlZTM3MTk2NTU5ZTNkYzYyMzdhNzc3NzU0NjE1MzBjZTM4YiByZWxlYXNlMjItbWFpbnQKKzMzMTE5IDFmMzM0MTk4ZTZkNzYzYzZjMGFiNzhkODA4MmFhNDc5ZGE2NzFkMzMgbGVnYWN5LXRydW5rCiszMzEyMCBiODIyYzJhOGUwOGY0MzA1ZmVhNGE2N2YyYTVhZGRkNWJkNWVjMjkyIHJlbGVhc2UyMi1tYWludAorMzMxMjEgOGJlZDU1MjAzNTU5ZjhkZDVjNWFjMzkxYjc2YWM3ZjI0MWI3OWVkOCBsZWdhY3ktdHJ1bmsKKzMzMTIyIDIxYmZjYjdjOTc2ZGI1ZTQzYzg3NzBjYjU2MWY1MmFmNWRhMzlhNWQgcmVsZWFzZTIyLW1haW50CiszMzEyMyA5ODgzY2Y4ZmYyMTdjOWVkODgyNTNkYzRlNDFhMTJkYjdiYTI5ZGFmIGxlZ2FjeS10cnVuaworMzMxMjQgOGIxNzY2YzhhZDNiYWI0ZTljYjE1MGYyNDBiODI4ZDc2YmY5MThlZiBsZWdhY3ktdHJ1bmsKKzMzMTI1IDA2MmUzNDJjY2ZmNThiNjI5NTM1NGNkYmYxMGYxZDQ1YTI0M2IwMDEgcmVsZWFzZTIyLW1haW50CiszMzEyNiA3NGEyOGYyZTk0Y2Y5ZTI5MmVlZWQ4MTA4NWY5NTY1NTVmYjVmNmVjIGxlZ2FjeS10cnVuaworMzMxMjcgMmNiODkzMGNlMjI1OTkyNmFlNGE3OWE3YjljZDNiOWNmZGE5NjIyZSBsZWdhY3ktdHJ1bmsKKzMzMTI4IDFlMmU1NDgyMTc4NWY5YTRlYmVkNmVmODdmYjQ0ZDg1ZDdjMmM5NzMgbGVnYWN5LXRydW5rCiszMzEyOSAzNTIzYmE5MjQ1MGNlNjQxNjA2Yzg5N2QyZDhjZTRkMDllODEyM2U2IGxlZ2FjeS10cnVuaworMzMxMzAgMDQxNWFmNjM0MTIyNThiZTFhYTQ1ZDY5MWRjNjU2MzZjZDhhMjM1YSByZWxlYXNlMjItbWFpbnQKKzMzMTMxIDVjNWI1ODc0NjQ4NjZkZDNkNzMzN2NiOTVhMTNmYjRlOWJjYTUyNmMgcmVsZWFzZTIxLW1haW50CiszMzEzMiAwY2YxZWM1OGUyMjBiYTY4NjJhMTQ5OWI1Njc4YTc0YjU0YmVmMDVlIGxlZ2FjeS10cnVuaworMzMxMzMgYTcyMWIwOTRmN2JjMmRiZmQ3MTEyNTU2YmU2MGZlNTQ0MWEwNTRkNSBsZWdhY3ktdHJ1bmsKKzMzMTM0IDRmMDc2ZmMwMTk1YWMyNjI0YWVhNDc4ZjhiYTU2MmRmNDQzZDMxYmQgbGVnYWN5LXRydW5rCiszMzEzNSAxYWI5OTc4MTIzYmVjZWExNDVmMDkwZmExZmEwYTExYjQxNjJjZDNhIGxlZ2FjeS10cnVuaworMzMxMzYgMTRhMTU0NzEyOWZiZjVlYmIyMjhiYzgyOWJmMDBhMGYxOTJmMzJiMyBsZWdhY3ktdHJ1bmsKKzMzMTM3IDMzMWFmNDVkZmEwZGMwMTc4ZDhhZjNjYTI1MWE3N2Y5MTg5MDEzOTAgbGVnYWN5LXRydW5rCiszMzEzOCA0ODc0NjE0Y2M3YTM1NzAzOTJkM2VjOWZhZmQ3ZTY2Y2QyZjY5OTU1IGxlZ2FjeS10cnVuaworMzMxMzkgNTEwNjBiMTY5YjMyMzdhNDE3ODA2MWY5Y2FjMWZlMzcwMzEwOGQ4NSBsZWdhY3ktdHJ1bmsKKzMzMTQwIDg5MmRmYzllNzI1NjdmZGI3NzlmOTcyMmUwYTQxMDQ0MGQ4NDhhY2UgbGVnYWN5LXRydW5rCiszMzE0MSBkZWI5NzE1YmM4YWU3YzAwZTZjNDYyZTkzOTUyNjBlMTFhM2NlNWVhIGxlZ2FjeS10cnVuaworMzMxNDIgODM0Y2QxMjE4ZjFiNGQyNDU4NWU4MDAwMzk5ZDNiYmVmNTZjOWZjZCBsZWdhY3ktdHJ1bmsKKzMzMTQzIDA4NmJkOWU3ZDI0NDJhMGJhNmMzNWVhZDQ3M2Q2ODZiZGJlMzE4ZWIgbGVnYWN5LXRydW5rCiszMzE0NCAwNmYyOGFkZWE2ZDJjMDkxYWM4ODdmM2I3ZWYxOTQ2ZDJkYjY1NjMwIGxlZ2FjeS10cnVuaworMzMxNDUgYmRmZjk2NWQyNjAzMjk5YWM2NjFlYzMzNDMyOGU4MDlhZDczMTdkYiBsZWdhY3ktdHJ1bmsKKzMzMTQ2IDIzZTdiMjU3N2E0Njg4MDViZjYyNjBjYjFmYTY1NDY0YjA4OTllMGQgbGVnYWN5LXRydW5rCiszMzE0NyAzMTMzYjUwZTk5ZjMyNjVmOTkzNTk0MWU0NGQyOGIzYTVjYjljYWVkIGxlZ2FjeS10cnVuaworMzMxNDggODdhMjUzYWFhMGQ1MjEzN2NkNzUxMzZhNjVjNDc2MzMzNzcwYzQ0ZSBsZWdhY3ktdHJ1bmsKKzMzMTQ5IDgxZTcwZjEyZDYyZmM4NDc3OWI1MmQyNTZjM2Q4N2JmYjU4OWExMTkgbGVnYWN5LXRydW5rCiszMzE1MCAxMzg2Zjg2YzUwOTVmNDc1OTQ2MzRlYWZhMTQ4MWNiNTAwMWQ3ZjU2IGxlZ2FjeS10cnVuaworMzMxNTEgNTE0M2NmZTdjYzc1Y2MwNDRmMDlmNTBkZjBjMThiMmZkODM5OTI4NCBsZWdhY3ktdHJ1bmsKKzMzMTUyIDYwZGFiYTkzNzc1YzUyMzYwMzY1OWQ1NjViMzNiY2I0MzViMWI2ZjUgbGVnYWN5LXRydW5rCiszMzE1MyA5NzE4ZGY4NDlkYTkyMTAyZGI1ZDA2ODRlNjkzZjI2ZTIyNjFjNzVhIGxlZ2FjeS10cnVuaworMzMxNTQgMDg5MDQ2NjAxMjcwNjU5MjllOWI0MmFiM2QyNWM4NmQ2MGEzMzAwNiBsZWdhY3ktdHJ1bmsKKzMzMTU1IDUyMjA0NzQ2NjBjZTgxZDI2ODg0OGNiNzhiZTZkMTJmMTg0OGZiODcgbGVnYWN5LXRydW5rCiszMzE1NiBhYmMyYTIwZGMzYTMzNGMyY2Y0YTg1YzJjYWRkYmEyZWQyNzJmNTllIGxlZ2FjeS10cnVuaworMzMxNTcgNDBjNWYxYzA4ZWM4YWFiMGQxZjhjYWUwNTIwYWY2ODMxOTdkMjQ2MSBsZWdhY3ktdHJ1bmsKKzMzMTU4IDEwMDcwOGViOGM4MmQyYzc4N2I5ZDc1ZTdkM2I4OTk0OGE5NGRmNjAgbGVnYWN5LXRydW5rCiszMzE1OSA5NGY5MTA3ZDlhNjNhOWQ5YTJlOTIyNTczMzAwNWFiNDcyODVhNzI3IGxlZ2FjeS10cnVuaworMzMxNjAgNjUzMWM3NmI2MDRkY2FmZTJjMjU0Y2I0YzU1ZjE4YjkzZGJlZGRiNyBsZWdhY3ktdHJ1bmsKKzMzMTYxIDE0MDJmMjY1ZTQ4ZjYxM2JhZjllYjM3NGM1MDQ0MGQwMTBiYjE5Y2UgbGVnYWN5LXRydW5rCiszMzE2MiBkMGQ0ZDY5NmFiMjRlOGQ2MjgzZTk1YzMyYTE0NzY3NjllMzViOWQ3IGxlZ2FjeS10cnVuaworMzMxNjMgYWE4NGVkZTFjMzY0ZWJkY2Y1MmVmMzY1NmJlZTE5NDM5MjRkMzA1MiBsZWdhY3ktdHJ1bmsKKzMzMTY0IDZjNmIzMjFkMWQxMGVmZDFmMDQwZDUxNTFhY2Y3MDAzODdlNmZlYmMgbGVnYWN5LXRydW5rCiszMzE2NSA3MWMwNmJjNWE3M2VhMWI2ZTY1MzkyNmRiMTI2OTU1NzQ0MTQzOTQwIGxlZ2FjeS10cnVuaworMzMxNjYgN2UzMzYzYTc2NjFkMjU1MWNjNjVlNjhkM2QyNDFiYzk0OTQzODgwOCBsZWdhY3ktdHJ1bmsKKzMzMTY3IGQ3MmIzZjBhNTdhOWRkMmM3NDA0ODRiY2VkZTJhOGZkODNkZGM2MDggcmVsZWFzZTIyLW1haW50CiszMzE2OCA1ZjAxZDUxNThkMWY4NmUyMzNjZGIzMDQ5Y2ZhZjMzYjNiYmY0YzljIHJlbGVhc2UyMi1tYWludAorMzMxNjkgZGI0MzEyOTQ3NDk0MGQ4MDQ3OWJmMDFlOTExYjc5NDlhZGFiYWUyMCBsZWdhY3ktdHJ1bmsKKzMzMTcwIDExNTE4YjZjZTVlYzAzZDM5ZjUxYmM4NjZiY2JmZTE2NmFhNDE0NmQgbGVnYWN5LXRydW5rCiszMzE3MSA1MzU1NDY4OGU1YTIyZThmYTI1MGVhZDUzY2JiZGYyMmZlOTY0M2I0IGxlZ2FjeS10cnVuaworMzMxNzIgMjllZWU1YzFkZDQyZmM4YTQxMDM4MDFjMjgyNTMwZmFiYTM3ZWI3OSBsZWdhY3ktdHJ1bmsKKzMzMTczIDAxZTkyNTM3MWQ3Yzk0MDg4Y2E4MTg5MjNlMWQxZmRlMDEwNjRmZGMgbGVnYWN5LXRydW5rCiszMzE3NCBkMWFjZjg5ZDFjNDlhNmQ2MDExNWZlZjM0ZmE0ODhiNjAzMGRiZmFjIGxlZ2FjeS10cnVuaworMzMxNzUgNjQ0NGVhM2RjODNjNDRlMTU4MjE4NDcyNjliMTBmNGJmNjQ2NWRiZiBsZWdhY3ktdHJ1bmsKKzMzMTc2IGU1NGUyZGU0NmJjM2Q1ODczN2Y0ZjczYmM5MjE4OWQ1MGYyNDJiZWEgbGVnYWN5LXRydW5rCiszMzE3NyBjYTllMzU5OGNjZmI1ZWM4MWIzZmRiYzlmOWYyNjRkYTYzMmU1MDEwIGxlZ2FjeS10cnVuaworMzMxNzggMjMxYTM1MTBlMjQ2ZmUwYzk0M2U1NmFiMDRjYWU4ODc2NWY4NjdmMSBsZWdhY3ktdHJ1bmsKKzMzMTc5IGQ3NjFmZjU1YjNiZWY0MWZlNTJmYTNlOTVhNjdjOGIxOWMxNmQ4MDggbGVnYWN5LXRydW5rCiszMzE4MCA5NGFjMWQ0MmE0MjA0ZjJkMGI4NmNiNDhhNDhjYzA0ODgxYjM1YTJhIGxlZ2FjeS10cnVuaworMzMxODEgMDVmYjUxZDA3YWRhZjViZjMxNGE4Nzg1ZWM4NTBhMmUwNDI5Zjk4OCBsZWdhY3ktdHJ1bmsKKzMzMTgyIGM2ZWI1NjllNGI3OTMwOWI4NTBhOGM4YjI1MjBiYzk0ZTIwOGNiNmEgbGVnYWN5LXRydW5rCiszMzE4MyA1ZDExZmRmYTdjMDA4NDc1MDA1NDIxYjNjMWQ0NTBjMDAwNGJiNzJjIGxlZ2FjeS10cnVuaworMzMxODQgYjc0ZTBjYzIxY2IwNDRmYWJjYTU1ZTJhODg1ZWQ5YjRmYmY5YmQ2OCBsZWdhY3ktdHJ1bmsKKzMzMTg1IDcwZTY0OWZhM2ZjZDEzOTE2YThhYjI1NGNlYTYwNWNhZTc3MGVlZmQgbGVnYWN5LXRydW5rCiszMzE4NiA4N2YzMGZjZmFkNDg4ODFhMjNhMzdiYzYxYmY3NzEwMzk3OTUyZTQyIGxlZ2FjeS10cnVuaworMzMxODcgYjFhYTFkNDM5Y2JhMzU1ZWVkOTAyZTFlMmYxNjdkMDQ1OTFkNTU1YiBsZWdhY3ktdHJ1bmsKKzMzMTg4IGZiMzMyYTA5NDliNzRmNTYzMTVmNzQzNjczNjkzYTYyN2JiYmYwOGUgcmVsZWFzZTIyLW1haW50CiszMzE4OSBmNmQ1MDNkZTQ1YmRlMGY5ZjFhNDM4OGNiMzg1MDJiNjQ3NWUzMDBkIGxlZ2FjeS10cnVuaworMzMxOTAgZjY3ZTRjNWFlYTkzN2RjMzgxNDQwODQ0OGI1NzZlODNkMmQzNjA1NiBsZWdhY3ktdHJ1bmsKKzMzMTkxIDdhZWU2ZWY1OTZkZGJkZTYzODNhOTY1ZDUxODYzYTUwZTQ5ZWQ0NWMgbGVnYWN5LXRydW5rCiszMzE5MiBmNDhiYjk0ZjMyODk1ODMyODcyNmU4MzhkY2MyNGI4NTRmZmRjOTFlIGxlZ2FjeS10cnVuaworMzMxOTMgZjE3NWY3NzliZTg5MGI3ZjlmMWQwYjA4YTUxMGI3OWMxNWI2MDE3NCBsZWdhY3ktdHJ1bmsKKzMzMTk0IGVhNzdkNDNlMjAzZDFmNTZmNTBjMTViOTRlZmUxMTIyMzdmYzkyOWMgbGVnYWN5LXRydW5rCiszMzE5NSAyZmJkMjU2YTFkYjI1NjI2YmJmZjQxZGE2YzkwZjg2OTgwY2UwYjEwIGxlZ2FjeS10cnVuaworMzMxOTYgMGI1MzIyYjg1M2QyZjc1MWI2MDMxMGJkNmIyMTA1MGZhNGRkMzhlYiBsZWdhY3ktdHJ1bmsKKzMzMTk3IDhiMDMwMGU3ZjFkY2IxOTkwMTljNjlmMzhiMGYwNmRiZDExZGQyZWQgcmVsZWFzZTIyLW1haW50CiszMzE5OCBjNjQ2ODdjZDViMzcxZDIzMjM4MzkyM2Y3YjA4ZjU1NDY4YTNmNmQ3IGxlZ2FjeS10cnVuaworMzMxOTkgMzRjMDQwZGRmOWU4ZWFkMjQ0NWEyMWQ3YjJiZDBhOTE1ZjU3ZTg0ZCBsZWdhY3ktdHJ1bmsKKzMzMjAwIGNkNjJiMzM1OWU5NTYwZTVmODc0NTE1ODQyNmNjMGUzZGQ0ODNiMzggbGVnYWN5LXRydW5rCiszMzIwMSBkYzZjMjFkYzg2ODRlMDYzOTdjYzAxNmQyMmM3MDU3ZTg0OWFmOGY3IGxlZ2FjeS10cnVuaworMzMyMDIgZmFmYjZlYjBmOTdlOGU0YzY5NDIzNTMzMGUzYmRlYmYwOTdlYTYzNSBsZWdhY3ktdHJ1bmsKKzMzMjAzIGMzYmM3ZWQ5ZDMxNTk5ZTBlMGY5YmQzODg0ZTZlNjRiZGRlY2ExYjYgbGVnYWN5LXRydW5rCiszMzIwNCAyZDQwMjdlZmJjMTJlMjJmZGEyNzg1ZWFjM2NiM2U4MDYwYWYxMWFhIGxlZ2FjeS10cnVuaworMzMyMDUgNjliYzdjYTVjYzFhOGY1MDFmOTM2ODJhMDBmOTA4YzIxYmU1NjljMSBsZWdhY3ktdHJ1bmsKKzMzMjA2IGUyMjgzMzZhYWYwOGQ3YzM1N2EzZDA2NmY4YWEyYzk3MGFiZjU2YTggcmVsZWFzZTIyLW1haW50CiszMzIwNyA5MTk3Mjg1YTM5MzM1ZTA0YjJlNDQ0Y2U0OWIzMjhhM2YzYjQwNGYwIGxlZ2FjeS10cnVuaworMzMyMDggMzI1OTJmMWE2ZjIyYjQ5OWEyMTJjNjg2OGZjMzk5Zjg4MDY1NDY4OSBsZWdhY3ktdHJ1bmsKKzMzMjA5IDZmZTAyMzY5MGQ3ZjEwZDNjYzUwNmJiYTVmMTZiYjM3NzAwODU5ZTAgbGVnYWN5LXRydW5rCiszMzIxMCA5NDRmNjAyYjc4ZmU0ODg5YTEyNGMyYWYzYmVjMDg5ZDllMDI3MjBjIGxlZ2FjeS10cnVuaworMzMyMTEgODc4MGE0OWQ4ZWYyYzE0M2ZiNjU4MTJjNTE0MzEzNWZjNTI2NWQyMSBsZWdhY3ktdHJ1bmsKKzMzMjEyIDdjN2Y0MDQ1YmEzNjcxYTAyMDkwNjRkZjY5ZTVmZjI1NWY0ZjI3ZWQgbGVnYWN5LXRydW5rCiszMzIxMyA0ZDFmYTljNWNiMmNmMjVkOTBjY2E3MTYyM2JmYjc3ZTk3YzZhMDY1IGxlZ2FjeS10cnVuaworMzMyMTQgZTk3M2RlZDhhOTJhODgyODVlMDI5MTAwMmJiZjE4YjJjNjhlYzU1YiByZWxlYXNlMjItbWFpbnQKKzMzMjE1IDUyMDAyODc4ODliZDJhNDEwNGVlMzhiMjdkMWQ1M2NkMTMxMjhlYjQgbGVnYWN5LXRydW5rCiszMzIxNiA2YTVlOTVjNjdkMzIxYzEwNTg5ZDkzZDllMmQwMjY0ODY2ZTQyODU4IGxlZ2FjeS10cnVuaworMzMyMTcgMWE0OTg2OTIyMzU3NzIwM2UyNDM1YmRiNGYwZDA3MDI2YWRjMTY4MCByZWxlYXNlMjItbWFpbnQKKzMzMjE4IDRiODZkY2FjMjIwMTA3NmQ2Mzk2ZWUwZjIwZjFhODAxNDViNDM5MDEgcmVsZWFzZTIyLW1haW50CiszMzIxOSBkZTNkNDllMGY2NDkxM2MwMzg5MWEwZTFiNjdhYjQxZDUxNGUyMWE4IGxlZ2FjeS10cnVuaworMzMyMjAgNDI3MjMyMmI5MmU1ZTllODI1NjZkMjIyZGM2Njg1OWE2MDJiYzg2NyBsZWdhY3ktdHJ1bmsKKzMzMjIxIGU1ZDNiMWQ4OWM0MDE4MDBkMDRkN2FkNDA1ZmNmYTI5ZmYzYWFhMjcgbGVnYWN5LXRydW5rCiszMzIyMiA5NThiNDBkODBiMzMxODMwZDAzM2JhY2MyYWEwMGEwY2RlODQzN2MwIGxlZ2FjeS10cnVuaworMzMyMjMgYTI5NjIxNGQyZWJiYTMxNzBkMTkxODA4Y2E4M2VmY2UxMTMzNWQ5NyBsZWdhY3ktdHJ1bmsKKzMzMjI0IDcxZDNkYTExNTgzOGYzMzFhZTBmNGI1OGRjOGI5NzlmOTcwZGNjYjEgbGVnYWN5LXRydW5rCiszMzIyNSA0NDhjMTQ0MTk2NGZkNjBlOWJkYzU3ZDg4OTRkYzEzZDcxNWI2NWE2IGxlZ2FjeS10cnVuaworMzMyMjYgNzU2NDY4MzA3ZTYxNzlmZTg0ZjFkOGQzNDU3MDlkMjVkYjU2MTJmZCBsZWdhY3ktdHJ1bmsKKzMzMjI3IDkxMjU5YWUzNWUyOTk0NjcyMzk5MWNhNjk4NmIzM2Q4MTk5NDc0MmUgbGVnYWN5LXRydW5rCiszMzIyOCA4ZTkyY2MwNGI2NGIwMDA0YzIyYWY3NDAyNWFiYjFkNDg5ODIyYjc3IGxlZ2FjeS10cnVuaworMzMyMjkgZDE1ZTJiN2Q5OTFjYzkwYjE1NTRiYzg2NGRiMjdiN2YxM2Q5Y2Y3OCBsZWdhY3ktdHJ1bmsKKzMzMjMwIGVkNDVhOTk1MTMxMjY4YjI0Y2UwYzcxN2NkMzk0N2RmY2JkNDhkNDggbGVnYWN5LXRydW5rCiszMzIzMSBhZDAyYTM4YTk2ZWE5ZWRlYTFlMjcyZmRkMzdhNDZjZWM3MzM3MTg2IGxlZ2FjeS10cnVuaworMzMyMzIgZjI2ZDEzMjM2Y2U4NGE4MDllYzI3YjY1MWNmNzEwM2MyY2UxNmM1OCBsZWdhY3ktdHJ1bmsKKzMzMjMzIDFhYTkwNTdjMzhiNGVkN2E4YjUyNWExY2FhMDExM2FjYzcyMTZiMWIgbGVnYWN5LXRydW5rCiszMzIzNCBlZWQ3NDMwYjdhZjE0YTdmNTllM2M1ZTU0OTg0ZDdhYjM4MDE2OGI5IGxlZ2FjeS10cnVuaworMzMyMzUgNWM4NzM3YmQ0Y2U2ZDRmYmE1MjUxM2RlNmY1ZmIzY2QxYTEyNGRhYiBsZWdhY3ktdHJ1bmsKKzMzMjM2IGUyZjc4MzQ4ODAyNDhkNGMzMjVmYmMzODlkZTg5ZGI4ZTI4MTllYjAgbGVnYWN5LXRydW5rCiszMzIzNyBjZGM3NWRlMmY1YzFhNjRmM2FkZmYwYjQ3YTNmMDgyZDgwYmNmNDZiIGxlZ2FjeS10cnVuaworMzMyMzggYjhiNTdiZGJmY2VkZjRjOGYxNDYwNDAyNDMxNWYwOTkwYzk0NjQyYyBsZWdhY3ktdHJ1bmsKKzMzMjM5IGY5M2I5MTllNTcyOTBlZDI2ZDUyNzIxYTJjMmY2ZTFkYzQ4OWM0MjEgbGVnYWN5LXRydW5rCiszMzI0MCAxNjllMDFlYzM1OTY1OWZjZTNhNjNhNDEwZTQ0MGE2NWUzN2Q0NGJlIHJlbGVhc2UyMi1tYWludAorMzMyNDEgNTYyM2Y5ZTJiNTU1ZjBlOTcwMDZjYThhMGMyMWVjZDQ0NjZlMjYwOSByZWxlYXNlMjItbWFpbnQKKzMzMjQyIDYwY2U3M2VhOWM5MmYzNDJmNTUyZjY3NTVlY2UxNGFkMGVjNmExZGIgbGVnYWN5LXRydW5rCiszMzI0MyBhOWE5M2ZjNTBiOGQ4YWU3ODc4YjYxYzVkZGYxMDVhMmZmYzQwNjM2IGxlZ2FjeS10cnVuaworMzMyNDQgMzEyZmI3NmI3M2NjN2M3NGQxOTE2ZGZhNzIzZTVlMzYyNTRmMmNmMSBsZWdhY3ktdHJ1bmsKKzMzMjQ1IGVlMTRlNWIwNmVkMTM2YjEyMzgzZGFiNjFkMTYyOWViYmFjNzc3OWMgbGVnYWN5LXRydW5rCiszMzI0NiA3ZmU0ZTlmMTY2MzQ3YjY0MWZhNGRlZDZkM2NkZDRkNmNkMjE0NWY4IGxlZ2FjeS10cnVuaworMzMyNDcgZGEwMjQ4ZmNmYzUyNTFiY2Q3MTBjYWIxNTE3ZDIwNzhjMjA0ODU1YiBsZWdhY3ktdHJ1bmsKKzMzMjQ4IDlkZjFmM2Q4OWU2MDBjNDE4N2UzM2Q5NTE0YjYzOGMxMTQxMjIzM2YgbGVnYWN5LXRydW5rCiszMzI0OSA4YjE2MzM3MDM3MmRkYWQwZTAzNDA2NDg4ZDA1YjBjNTk5MWJhNmM4IGxlZ2FjeS10cnVuaworMzMyNTAgN2Y3OWVhZDcxMmY1OGQ0NzFkZjdhNDQzMDY3MzUwOTcxMjM0MzRmOCBsZWdhY3ktdHJ1bmsKKzMzMjUxIDk5NjVlYmNkZDE3MmY5MmY0MTA4ZjM1MzBhNWE1OTBmNGQ4YWNhNjAgbGVnYWN5LXRydW5rCiszMzI1MiBiNzhkNjNkYWUwMzA3NmU5Y2RhN2Q1ZjdmNjM0YWQ5NTNlZDBjZjgyIGxlZ2FjeS10cnVuaworMzMyNTMgODgwN2U5MDFjNTI2Y2I0NGJiOWE2NjBlMzY5NzhhY2QyYzc2MzE3YSBsZWdhY3ktdHJ1bmsKKzMzMjU0IDRhM2VmMzgwNzhlNTUxNTdkMzdlZDRiOTI4MDg1NDg0OTA3ZjE2YTUgbGVnYWN5LXRydW5rCiszMzI1NSA5YTMwNDRlNTc4MWVhYWM1ODg0YzZiY2NiZTE4ZTYyMmEwM2ZhOTM2IGxlZ2FjeS10cnVuaworMzMyNTYgYTQwY2YxZDBhODg3ZmRmYjdjNmUzMjliM2Q3MTJiN2ZmZmM0YjRmZSBsZWdhY3ktdHJ1bmsKKzMzMjU3IGVhYTA2MmZkZDQ2YWIwMjY1NjE2Yzg0MDU0ZDgzOWIyYTFlZThiYjYgbGVnYWN5LXRydW5rCiszMzI1OCA4OTExY2E4ODk4MWFmODYyZTYzZTRhYWFlOWNiMjRjYTdjNWI3YThlIGxlZ2FjeS10cnVuaworMzMyNTkgYjM1ZmY5YjU5MTQ5MzFjMzg4ODBkOTI3MDlmNGU2OTUyMmZlYzQzYSBsZWdhY3ktdHJ1bmsKKzMzMjYwIDQ2NmI1NzllMDA4ODIyNjJiZmIxMmEyYWUzMTE1OGEzMTliYTRlNzggbGVnYWN5LXRydW5rCiszMzI2MSAyMDFjZWFmOTU5NzUxZjQ0MmEzYTYwOWI3NjViZmQyZmZjMjA1ZTg3IGxlZ2FjeS10cnVuaworMzMyNjIgMmIxM2I1OGFlM2E4ZTc2MzdhZjg0M2NjZjcyNDg1NTA5MjY2OWU1NyBsZWdhY3ktdHJ1bmsKKzMzMjYzIGVhMzg0YjFkMGQxM2RiYjY3N2NjMTk2ZjQ2MjE0YzAxZTI1ODIzOWUgbGVnYWN5LXRydW5rCiszMzI2NCA3YjUxOWVhNzUwMWFhYmYyOGFiM2E5MWU4MTU4MWZlNDI5YzUxOTVjIGxlZ2FjeS10cnVuaworMzMyNjUgY2FhOGMxMjBlMmNiMmIyOTZkNjA3Y2ZlM2RiZDA5Yzk5M2RjODhiYyBsZWdhY3ktdHJ1bmsKKzMzMjY2IGZlYThkZWUyNzMzMmZmY2Y1MmY1OTVlMWZlOWQ4NDEyNjIzYjNiNzYgbGVnYWN5LXRydW5rCiszMzI2NyA4YTI5MTZjNDMzZDk0ZmRiMmM5NDc3MzY5NWQ1YWE0OTg2MWE0MTE4IGxlZ2FjeS10cnVuaworMzMyNjggZTQzMTI2YzQ3MGE3NmVhOWZiZDNiOTJlN2U4Yjc4YWY2MzFmZjc5NSBsZWdhY3ktdHJ1bmsKKzMzMjY5IDJkMTZjM2VmZTE0N2U3YmQ0NGI3ZDc4ZjRmZmNkM2Y0ZjVhOTg2YTcgbGVnYWN5LXRydW5rCiszMzI3MCA2MGI1M2RiMTRhYTNjYzQxYTJjZWVjODQ3Yzg1MGZiZjVmOGMyZDQ3IGxlZ2FjeS10cnVuaworMzMyNzEgYmU2MjAwMDdlYzFmNTI2NTIwMTg2MDFiZmJlMmY1ODA1NDE1NmE2NSBsZWdhY3ktdHJ1bmsKKzMzMjcyIDAxNjlhY2RmMmI1YmMyNjk3ZTE3YWUwMmQyNjU2ZmNkYzg1NjNhZWQgbGVnYWN5LXRydW5rCiszMzI3MyBjZDNmOWIxNzBjMzdmY2JjMTkyYTdjMGU1MDk4ZWViNjIyZGVhMDNjIHJlbGVhc2UyMi1tYWludAorMzMyNzQgY2FjODU1Mzg3YjU2N2I2OTY3MGFjOGRiZTY4OTc2M2I4ZjYzMGViYiBsZWdhY3ktdHJ1bmsKKzMzMjc1IDg2MzQyZmE4OTIwZGFmZTMwYmYxZDNmOTk1YmQ2MTQwNzkxZGVlNjEgbGVnYWN5LXRydW5rCiszMzI3NiAwYmRiNGFjZWQ2ZTIwZDg2NmNjMzVmODdmN2NjYzg0NTE1MjFkNTljIGxlZ2FjeS10cnVuaworMzMyNzcgY2QwOTNhOTkyMzhkNzIzNjQ3ZDkyZTI0YzdkNTU5ZjIzNmEzYjQ4YSByZWxlYXNlMjItbWFpbnQKKzMzMjc4IDQ0ODFjNWJkYTE5NjZhZDg2MGExNjllMzAwMWNlNjk3MDA5OWM0NjkgbGVnYWN5LXRydW5rCiszMzI3OSAxYmE5MGQ1MTQ5N2JhNjg1NzAwZDhmMDA0ZGZlZjA5ZjQ0MWRiMDFlIHJlbGVhc2UyMi1tYWludAorMzMyODAgYmFkY2QxNThkODFjYTIzZjYxNzlhNDk2Y2QxMTczZTIxMmVkZDFjZSBsZWdhY3ktdHJ1bmsKKzMzMjgxIDU4MjUxZTBhOGI3ODdiY2UzYjM0ZjVmNWZiYzA5YmIzODRkZjAwZWIgbGVnYWN5LXRydW5rCiszMzI4MiBmODA2OWY3ZWRkNGEyOWJmNmM1MDRjZGZkYzRhOTU0OTAxNGZiYjU1IGxlZ2FjeS10cnVuaworMzMyODMgNzdlZGEwZmIwZTE0OWQ0NzIwMGUyYjg0ODFlOThiYjJkMWEzZjY4NiBsZWdhY3ktdHJ1bmsKKzMzMjg0IGRlZDlhYmNiOTE3NGFhNzc0ZDJhNzU1MmQ0MWVjZDFlNTk5YTMyMDIgbGVnYWN5LXRydW5rCiszMzI4NSA3ZDMwNTg1YTU5MzQwNTUxNWY1MTRjNDgzNWU0ZWU4NjhkYWQxOTAwIHJlbGVhc2UyMi1tYWludAorMzMyODYgODUzZTZhMmI5MDY4ZWU2NDMyMTQzMTcxMTMwNGQ1ZmZhZTlkM2IxYSBsZWdhY3ktdHJ1bmsKKzMzMjg3IGE0NjQwMjBmMTVkNjc1Mzg4N2Y2MmE3NGIxYzA5OWQ2Nzg5ODQwZGYgbGVnYWN5LXRydW5rCiszMzI4OCA3ZDQxNzg1ZmI2MGM2ZTQ4MjdlZDZiYTVjZmU0YjVkNzdjZTQyYjVjIGxlZ2FjeS10cnVuaworMzMyODkgYmExMmQyYjRiMzFkZGJiNmFkNDkyMzI0ZmJhMTg1ZTg2YjFmZmU4ZSBsZWdhY3ktdHJ1bmsKKzMzMjkwIGUxZmEwN2JmODU0ODg4NWIwOTI5OTQ0ZWUwY2RkZDY5NDNmZDgxM2IgbGVnYWN5LXRydW5rCiszMzI5MSBiYzEyMTVmN2RiYTM4NmI1ZGJmNGRmMWEyMDk5YjNhNzQ0MTgwYjNlIGxlZ2FjeS10cnVuaworMzMyOTIgYTRkNmJjNzFmMDkxYzI3YzllNGFlOTJiNzFiZmY5Y2VmNzBkZTM4YyBsZWdhY3ktdHJ1bmsKKzMzMjkzIDQxMGIzYzIyMjIxMTRjOTg1YjczYWFlMTI2M2JmYzA4N2RjNDQyOGEgbGVnYWN5LXRydW5rCiszMzI5NCBmODgzZGIyNWQzNDQ0YmRlYWEzM2VjMDM5ZGZiMGU5YzAyYjMwN2JiIGxlZ2FjeS10cnVuaworMzMyOTUgNjc2YWE2MjgzMGQwZTk5NTJiYWQwZWE3MTUxOTkzMGEzMWU3ODQyMiBsZWdhY3ktdHJ1bmsKKzMzMjk2IDUzMDRiZmYyNWUxODM0YTYyNzY5ZmNhZjc3YzFiYWM1M2JmYzExMGEgbGVnYWN5LXRydW5rCiszMzI5NyA2YWE5NzJhMjFhYzRjMTcyZDY1MmQ1NmY4Y2VkOTY0N2NiMmY5ZmE4IGxlZ2FjeS10cnVuaworMzMyOTggMWVjZGI5NGExODUyMmY4OWVmN2NhMTAxZTY3ODExOWUyMmMyNmQ3YSBsZWdhY3ktdHJ1bmsKKzMzMjk5IDlkZTgyZGJjM2JkMDJiN2JiZTg3YjkxZjMzOGIxMDZmNjRmNWRhNDYgbGVnYWN5LXRydW5rCiszMzMwMCA5NzNiMWUyZTI3MjYzODE1ZDI4YmRlODBlYzAwZjhhOGJhM2Q4NTY4IGxlZ2FjeS10cnVuaworMzMzMDEgNWQ3ZTZlODI4MjE4N2Y1ZDM0MTdhM2MyNGMxZGU4N2ZjNDRlMjM1OCBsZWdhY3ktdHJ1bmsKKzMzMzAyIDdkNWE5YzFhMDE5NzA4NDYwYzFhNmVmZDNlZTZmNDVhZTUwNjFiM2MgbGVnYWN5LXRydW5rCiszMzMwMyBhZDJkY2E1Y2ZlODFhNzcwN2U4NjA4MTA5ZThhMzZjMzc3NGY0MmQ5IGxlZ2FjeS10cnVuaworMzMzMDQgNDkwOWFhNjQ0MDVmYjFjMjA2ZjBkNzRlNWQyMjI3Mjg2MGZkNTcwMiBsZWdhY3ktdHJ1bmsKKzMzMzA1IDU4ZjE0MWQxY2NjYTI5OTVjMTM5MjIxOGJmZGQ0N2I1Nzc2OTg4MmYgbGVnYWN5LXRydW5rCiszMzMwNiBmYTk3MjkzNTMzYTkxZjRkYzY5Mjg2YmRhNjkzNThkZmVlMTdkMzE5IGxlZ2FjeS10cnVuaworMzMzMDcgYTYzZWE3YzQ3NWNjNWUyODAxZDAxZjhkYmU3ZWRmODlkZjFlYmU1ZSBsZWdhY3ktdHJ1bmsKKzMzMzA4IDYxZjk4ZWQ0YjZiNThkM2JmY2MyNmY4NGQ4ODdiZjA2NWYxMzUwOTggbGVnYWN5LXRydW5rCiszMzMwOSAwNTA5YTc2NTIxNjdmNDhhZjNmZWExNWRkM2Q1OGZjNjQ1YzQxZDY0IGxlZ2FjeS10cnVuaworMzMzMTAgZDY2OGE4MzM2Nzc0NzgxY2Q3ZmEwNmZlOWQ5MmQzOWNjY2QxNTRjYyBsZWdhY3ktdHJ1bmsKKzMzMzExIDQ2MmRlOTMzMzI1MWNhODAxNDA0NzE2YmQ2NDQxMDI5MmZkNWM3MGMgbGVnYWN5LXRydW5rCiszMzMxMiA4YmQyNTgwZTAxNTU1MjFkZGUzNDc2MzEzYzE2Mjk5OGEyYzViYzliIGxlZ2FjeS10cnVuaworMzMzMTMgMzg4MTg4M2I5NDBlYzBlNDMwYjQ4NjM0MjExNWFkYWY1NjYxNGJiMSBsZWdhY3ktdHJ1bmsKKzMzMzE0IDBhMzc1MWRmNDE5NTJiNTRmOTA2NDljOTAxNjg2ZmQ5OGFlMmQ5YzIgbGVnYWN5LXRydW5rCiszMzMxNSA2MDQ1NDJlNTkxZmE2ODFjNjQ4ODc5YmI2Yzc0NmY2ZmU3N2NkMGZiIGxlZ2FjeS10cnVuaworMzMzMTYgMTZlZWQyZTk4ZmQ5MzU0NjhkYWQyY2E2MThjOWQwMjI2NjBhNTMzOSBsZWdhY3ktdHJ1bmsKKzMzMzE3IDY2YjZkMWNlNDJmZTYxZTIwMzk0OTM2YmFlYzljN2JmOWRhMGQ3NjUgbGVnYWN5LXRydW5rCiszMzMxOCBmOWI4ZDRiZjA4ZmI5YWQ4YTk4NjE4MGUxMTA4ODJkYjRmMzdjN2ZkIGxlZ2FjeS10cnVuaworMzMzMTkgNTgyODg3YmE3YTY4ZGQ3Y2Q0MjZmY2M5OGQ4N2Q3YmE5ZmVlODQ5OCBsZWdhY3ktdHJ1bmsKKzMzMzIwIDViMTA1YTk1MDMzNDhmYjJlZGFlYjViNDAyMmQwYzczMmM5NmFjNTAgbGVnYWN5LXRydW5rCiszMzMyMSA5NTUxY2RhZjZlN2UxYTg4NDIyM2FiZDZmZjM1N2UxNzZlMDExOTUxIGxlZ2FjeS10cnVuaworMzMzMjIgNjk2MTk1NDJhOTE2ZTM0M2QyYjM3MDE0MWYwMjcwMmMxNDc5ODFhNCBsZWdhY3ktdHJ1bmsKKzMzMzIzIDlhNGJjZmRkYmZhMTJmMTU0NTNiYzJiNzVmOTZhNWNjNWRmZjA2YzEgbGVnYWN5LXRydW5rCiszMzMyNCA3OTMwM2RlOWEwNWE2ZWYzYzg5MzJlNmU2NTIxMThkY2Q3ZmIzY2MwIGxlZ2FjeS10cnVuaworMzMzMjUgMTMwOGQ3ZWM5OTUzNTA5OWUzZWJmZmY1ZTAxZDQwNjY4ODBhMDllNiBsZWdhY3ktdHJ1bmsKKzMzMzI2IGNiOTNiODYyNTMyZjQ5MDMxYzJkMjYyN2E1NTA4YWQzMDNlNjVjNzAgbGVnYWN5LXRydW5rCiszMzMyNyAzY2IxODIxMjUyMWQzNDg5YjA1ZmM1ZGE4NDEwZmE1MjcwNmRlMGIwIGxlZ2FjeS10cnVuaworMzMzMjggZDc2MjZiODBkZTk1MTY5NGFmNjQ0ZWVhZmYyMTM4ZWI5MGFjMjJhYSBsZWdhY3ktdHJ1bmsKKzMzMzI5IDcxMGMwOWY0YzA1YTIzZjRlMzI0YTZhNzc3OGJiMjRmNTk1ZDNkNjggbGVnYWN5LXRydW5rCiszMzMzMCBiYTc1YWY3YWIxMzZmMzFhOWQ4YmM4ZGJkZjZlMmE0ZjUzMmYwN2YxIGxlZ2FjeS10cnVuaworMzMzMzEgMzZhMTc5MDRhM2VkMDA2MGU0YTFjYzk3ZmQ3OGFlODhmOGQ5NTA3NiBsZWdhY3ktdHJ1bmsKKzMzMzMyIDk2ZWNhYWI0Y2JhNjgxMzhjNWM1Nzg5MDVlOTc1NjFhOWQxZThjYzAgbGVnYWN5LXRydW5rCiszMzMzMyBiZTk5ZjU5NzA2ODg5MGNiZmNlMjdjMDNlOTJkNzRjZTBkNDU2MDQwIHJlbGVhc2UyMi1tYWludAorMzMzMzQgNjZkYzA1MDEwNDdkNGMyNjA5N2FjNjZiYmM4OTVhNThlMDRjZWQxOSBsZWdhY3ktdHJ1bmsKKzMzMzM1IDRmZjgzYzBiNDVlOTI1MjJiMThjZDU5ZmQ1MDIyMjE1Nzc3NWZkODggbGVnYWN5LXRydW5rCiszMzMzNiA1MTM5N2VkZDJiZDRkNWQzNmE4NTczMjU5ODIzYWM1NTc4ZWNlYjEzIGxlZ2FjeS10cnVuaworMzMzMzcgZjA4MTE0N2MwYzhhZmFiNTQ4NGRkMzhjZTc3ZjU1OGE2OGIyNWNlNSBsZWdhY3ktdHJ1bmsKKzMzMzM4IDI2OTJiMWM5MmU4ZDkxYTM2MmM1MjA5YzJlNDE3ZjkzMjMyNTA3NDMgbGVnYWN5LXRydW5rCiszMzMzOSAwNTJiZmNiYWJiN2I5ZDkyZjFhYzk2Y2UzNWYyZDdhYjdmNjRkNzk1IGxlZ2FjeS10cnVuaworMzMzNDAgMzY0MDI3YTgxNWI4Y2YyNTMxZTI1YzI5MTg3NTExNGQ5YWFiMzFiYiBsZWdhY3ktdHJ1bmsKKzMzMzQxIDI4MGZiZTVmNGUxNmVjYzZjZWI2NTNiZWRhNTVjZmZiYmQyNjdkZjYgbGVnYWN5LXRydW5rCiszMzM0MiBkMGYxNTk3N2YzN2Y0NzUyYzVhODc2MWM0Njk5NjZiM2QyYTkzODBiIGxlZ2FjeS10cnVuaworMzMzNDMgNGUxYTQ3ZjUyMDRjYmU0MTk4NjU0ZTMzNTE1NTJjNjhhOTBhYjMwYSBsZWdhY3ktdHJ1bmsKKzMzMzQ0IGMxNDlkZDRjZmQ2NmRmMWFmMWE3OTMzMDExOGRiYWFkOThiOTU2MTggbGVnYWN5LXRydW5rCiszMzM0NSA5MjA3Nzc2NDBkMjg5OGQ3NzBkOTdjYzdmZmFiZjMzODEzYzhiMTM5IGxlZ2FjeS10cnVuaworMzMzNDYgZDM4ODBjMjM3NjI3ZmFjNWM1N2U0ZDU3NzRiYWQ4MDFmMGI4ZWI5ZSBsZWdhY3ktdHJ1bmsKKzMzMzQ3IDZkOWVkNTRhNDgyMTkwYzczNTJiYzBkMWNlMTk2MDMzYmJmNTNjYTggbGVnYWN5LXRydW5rCiszMzM0OCBlYjBiNjdlM2MwNGVjNTY3YTI5YTdlNzQxNTcxNDc3OGEzZDllOWFiIGxlZ2FjeS10cnVuaworMzMzNDkgMzcxMDkyY2U1YzJiYzMzY2Q1ZjgzMDk3YjhjOTRkZjNkMjdmZDQzNCBsZWdhY3ktdHJ1bmsKKzMzMzUwIGM1YmIzMWU0NWM2Njg3NmIwMDg0NTYzMzhhNWIxNzUyMTk1ZTQwMWUgbGVnYWN5LXRydW5rCiszMzM1MSA5ZmU2N2Y3ZjM0NTlhYjU2Nzk4YTViZWE3ZTRiN2EwYTFjNzlkNTgxIGxlZ2FjeS10cnVuaworMzMzNTIgN2EyNzY2YzlhN2I1OGM4NzY4ZjNiNDkyOTc3NDE4MDFhNzQxNTk4NiByMjNiMi1icmFuY2gKKzMzMzU0IGY0ZTJlNWE1ZWM2MjJiMTE3YjhiNmM4YjE2OTQ3MDg3NzY2YTc1M2EgbGVnYWN5LXRydW5rCiszMzM1NSAyNWI5ZmQ2ZDhlMzAwYjQwNDU1Mjk1YWIxZjZjZDg0OTBjMzFhNWIzIHIyM2IyLWJyYW5jaAorMzMzNTYgNzJkY2M2M2Y0ZGVhNmI2ZjBlMWY1NTVkNmZiMzJkZjFiYTU4YzQ5NyBsZWdhY3ktdHJ1bmsKKzMzMzU3IDg0MmQ5ZTMwZGI5YzM3MjZmMDhjNDM5YTBiN2M0NjZkN2UxNTY2ZjYgcjIzYjItYnJhbmNoCiszMzM1OCBlZjdhMWQyODU3NzE0OTQ3YjY1NDNiNmIyNTVkZmQ3YmJiYzhkZTUyIHIyM2IyLWJyYW5jaAorMzMzNTkgZjRmMTFlZDNhZTQ0MDllNzZiZmQ2MjA0ZWFmZjEyYjllMzk1NDg0NSByMjNiMi1icmFuY2gKKzMzMzU5IGRjMWIxYzdhNmI5ZTY0ZjdhMjExZWE5ZThhN2RhNDgzYzJiYmExNjcgcjIzYjItYnJhbmNoCiszMzM2MSA1MzdjOGIxYWVmN2ZhYzg4NjZlNmRiYmJlNDNkY2IyNzMzNmY0MmQyIGxlZ2FjeS10cnVuaworMzMzNjIgYzRmOWZmMjkxMjI5YmM4ODQ2YjE1YzY2NDI2Mzk0ZGI0NWQyZDE5YyBsZWdhY3ktdHJ1bmsKKzMzMzYzIGQ3MTY0ZmJlYzdjZTE0MDM5MWJiYTY4ZWZjMDI4OTYzMmUwNTk3YmYgbGVnYWN5LXRydW5rCiszMzM2NCAyNmJhNzFhYTViMjE1NTU2YTczZjU2YjVhZmM2YmU3YWI4YjFkODU5IGxlZ2FjeS10cnVuaworMzMzNjUgZDBkYzk1NjQ2N2JmMWI2Y2M2Zjk0YjBlMDkwYTZhOGIxNDQ3ZTkzMiBsZWdhY3ktdHJ1bmsKKzMzMzY2IDNlZDJjOWE3Njk2NTY4MzM1MmVlZWQxNjZmZTYwZjEyZjk1MzgyOWQgbGVnYWN5LXRydW5rCiszMzM2NyAxZDc2Mzg2MmQxYTFkNzAyZDkwMTM2MmQ3OWQ3ZjEwYzc3MWViZGM5IGxlZ2FjeS10cnVuaworMzMzNjggZjFjMjc5ZDcwMGE2ZDZmMGNmZTc2MTM4ZjM0NjA2OTkwYzJlZjhjNCBsZWdhY3ktdHJ1bmsKKzMzMzY5IDhkYmM0ZWM1NzIwZGJkNWYzZDk5YzVhNTY0NmJhY2ZjNGI3N2U2MGYgbGVnYWN5LXRydW5rCiszMzM3MCA2NDgzZWVhZWFkODJjMGViY2ZlMjZkYjU2MjQ4ZDc0MDM3MDU0MzUwIGxlZ2FjeS10cnVuaworMzMzNzEgN2I2ZmE3YmIyNGYwNjQ2ODRmMzgwNTMwZDU0NDZlYzdiZDQ0NTE4YSBsZWdhY3ktdHJ1bmsKKzMzMzcyIDhmZjA0MGU5ZDU2Njk1MTJhMmM3ZTI5Nzc1ZjFkOTdhYzRiNTEwMmYgcmVsZWFzZTIyLW1haW50CiszMzM3MyBkNjc3NDI0YzljYTcxMDU5MzE3MjRhMjdlNzc3M2U2MDM3MTA5YTczIGxlZ2FjeS10cnVuaworMzMzNzQgODkxZTU1MDJlYzllM2IxMThkYjgyMmVlNjgxYmQzODBlYTJiMzExNyBsZWdhY3ktdHJ1bmsKKzMzMzc1IDE1MzY5NDFiNTQ3ZjA2ZDNjOGIyN2U3ZGU4NzFiYzVmOTY4YmY1YTQgbGVnYWN5LXRydW5rCiszMzM3NiBhNGZlYWQwZTI0ZjhhZWZjYmI5NDQ3YzFkM2ZlMTljZDc5ZmYxOGRkIGxlZ2FjeS10cnVuaworMzMzNzcgNzYyZTJhMjk3YWI5N2EyMWJkN2U1YjYwZGVkNzNjMDg1MGMxOTQwNCBsZWdhY3ktdHJ1bmsKKzMzMzc4IGUzODE2NGFhNWJlNTEzYjdkYjhiMThjYjczMmVmYzFiYjczNjkzYTMgbGVnYWN5LXRydW5rCiszMzM3OSAxZjM1NDdkNDkzOWZkYzg2ZTcyYTgyOGUyNTNiNjUxYTlkZmE2Mzk2IHJlbGVhc2UyMi1tYWludAorMzMzODAgNGQyNjU0N2ViZmMzODg0YzYzNGIyYzk3YTRjNTdkYTg5ZjU4N2FjYSBsZWdhY3ktdHJ1bmsKKzMzMzgxIGQ4ZDE5NzU1MWExZWRiZWVmZWFlMmQ4ZTVhNDMzZjIxMzg0OGIwMjEgYXN0LWJyYW5jaAorMzMzODIgYjc1MjhkYWU3NjU2N2IxZjVmMTE2ZmE2OWRmNjIxMDY2YTM4NDIwMyBhc3QtYnJhbmNoCiszMzM4MyA1ODEzMmM4MTNkN2JlOTQ1ZWE3NmQ4YWY4YTdlODkyMThjYjUxOGYzIGxlZ2FjeS10cnVuaworMzMzODQgOGVkMmVkNzc4Njk0MTY1MmUyOGM0NzE1ODVmMzhkOGI1ODhlM2ZlMCBsZWdhY3ktdHJ1bmsKKzMzMzg1IDI5MmU4NDQ2NmU3ODE5NWQ0ZjU2MzdjNzNmYjJmNWUzNzQzNTdmYTcgbGVnYWN5LXRydW5rCiszMzM4NiBiZjA2MzRjYzBmMTc1MDhmZThjYzdiZWM3OWRmYTk4OTNmMGJlM2M1IGxlZ2FjeS10cnVuaworMzMzODcgZTk1MzFlZTVmMTg4OWY5OGQxNTQyMjhhYjFiZTJlZmNhOGNlMDVhYSBsZWdhY3ktdHJ1bmsKKzMzMzg4IDlkMzNkZDJjY2ZlNmE2ZTk3NmZmMTFlNDM2NWVlNTE0NTdjNTk0YWIgbGVnYWN5LXRydW5rCiszMzM4OSAyYTVlNmNlM2YzYTE1NzUyMGE1YzQwYjA1MDYyODVlMzEyYjQ1ODhlIGxlZ2FjeS10cnVuaworMzMzOTAgNzI0ZjJlZDc5ZGE5YjNkMzZkYmU0NmU4OTM1MTQzZDg4NDZhMjEzNyBsZWdhY3ktdHJ1bmsKKzMzMzkxIGZhNGNmODc4YzUzODQ0OGM4ODA2NjliZDI5NWZjMThiOTk4ZDdjOGYgbGVnYWN5LXRydW5rCiszMzM5MiAwNTJmZTk2Njg0ZWFiNmQ4NmQ5NjJmNTQ3ZDg5ZTk5YjMxZGNiMjRlIGxlZ2FjeS10cnVuaworMzMzOTMgMDllNDJmNzlmODMwYmRmMjQ5ZDI4MzgzYzRkYzVhYmQ0Y2MxMmM5NSByZWxlYXNlMjItbWFpbnQKKzMzMzk0IGE0NGQyNjdmMDE2MjlmYTRjMzMwOTQzODYxZjA2ZGI0MjAzYjYwMWMgbGVnYWN5LXRydW5rCiszMzM5NSBjZGIyMTdhOGViMDQ0NWRjOTgzN2JkZGMyOWQyYWM2OGJjZjUzYjNlIGxlZ2FjeS10cnVuaworMzMzOTYgM2I3YjRmZDVmN2NhZDU2YmU3ZjBhYTFhZDFlNTI5YzE2NGFmYTMwMSBsZWdhY3ktdHJ1bmsKKzMzMzk3IDdkMGFmNDU2MWVlZDFkZTA2ZDUzNzQyN2UwZjhkNzEwODI1ZmNjNmIgbGVnYWN5LXRydW5rCiszMzM5OCA4NWU1MmVjODU2Mjk5NzY3MGMxOWM1YThkOGU2NTEzZTExNWY5YWM2IGxlZ2FjeS10cnVuaworMzMzOTkgOTYyZjQ0M2FlMWQ5MWIzODQ0ZjdhYzVjNGYyZDVmZTI5N2FkMDk4NyBsZWdhY3ktdHJ1bmsKKzMzNDAwIDRjOTBhNjMxZDYzMmVkZmU0ZTYxMDAxZDg5ZDJiMzc1Njg0ODc4MTAgbGVnYWN5LXRydW5rCiszMzQwMSAzNzIxNmUxYzY3NDcyNGUwZDA1ZjRhZDAzMWIzMGU4NDIxNTIxY2Y2IGxlZ2FjeS10cnVuaworMzM0MDIgMGUxMzFlMjk0NjYyNWU3NWNmNzgyZDBmY2Q2MzEyOWE1NDVhZWQ2MSByZWxlYXNlMjItbWFpbnQKKzMzNDAzIDQ1MmUzM2EwOGQ1NTcwYTA2ZjhmM2Y4ZThkZjk0ZDRlNjYxNThkNmIgcmVsZWFzZTIyLW1haW50CiszMzQwNCAxMjQ3Zjg0YWE2YTZjMDNjOTE1ODViNDBlNThhMTVmMTM2NzJlMTM4IGxlZ2FjeS10cnVuaworMzM0MDUgMzliZTViMjYyNzkyYzk4MDBkZGRmYzFmNTgyZGM0NjllMjdjYmVhZSByZWxlYXNlMjItbWFpbnQKKzMzNDA2IGY0MzI5NmNiYzk4NTAxMzRlNGFiZmMxMGU0MDA1ZTc2NmFmMWU3ZDkgbGVnYWN5LXRydW5rCiszMzQwNyBlODUwY2M1MWMyOGZkODhmN2Y1Zjk0NDZhMmUwODBhMzkwNzg4MDI2IGxlZ2FjeS10cnVuaworMzM0MDggNjVlNTJjMjQ3NWNlNTEzNTk0ZWQ5YmI2Y2M0NWY3MmQ3OGY0YWQ1YSBsZWdhY3ktdHJ1bmsKKzMzNDA5IGE1ZTczMzZjMDA4ZDM4YWRiODllMjE3ZGQ3YmExNDIzMGZhOTQ0NGYgbGVnYWN5LXRydW5rCiszMzQxMCBkNWYyN2U2N2UxYWFlOGNjY2NlNjE5MTkxOGJjNmZhYWVhZTIzYjVkIGxlZ2FjeS10cnVuaworMzM0MTEgM2FkODk4YjhmODEzYWM1NWYxNTMxYjg0ZjBlODQ3MWM4ZmE1NDlmZiBsZWdhY3ktdHJ1bmsKKzMzNDEyIDRjOWVmMmE2Mjg2NGQ1YWI4OTFmYTc2NGY4YjdlNjAzMjczZWU0NWUgbGVnYWN5LXRydW5rCiszMzQxMyA4Y2E5Y2UzNmEyMDZmZmQxYTg0M2I3NGY4ZDA4MGRiNDg0ZjFlMzA1IGxlZ2FjeS10cnVuaworMzM0MTQgNjg4MzViZjEwMWVjYjEzY2M5NTc0ZWZjZDg4ZDk5NmU2ZGZjMWIwMiBsZWdhY3ktdHJ1bmsKKzMzNDE1IGI5YzQwZmRhNjA5ZGJmNzY2YmNiY2VkMDhjYzZkMzk0Y2Q2OTkxMGEgbGVnYWN5LXRydW5rCiszMzQxNiA0ZjkyOTNjYTJkZTYxMmIwMzUxYTU5ZmE3MmJhODdjN2JiN2YyZDRmIGxlZ2FjeS10cnVuaworMzM0MTcgMzJmOTZiYWMyMTEzY2YxZDY4YmZhNDBjODUxMDNiM2NkYzhiYTI2MCBsZWdhY3ktdHJ1bmsKKzMzNDE4IDYxZmI5OTZlYmE2ZTBlYjAwYjU5M2JhMmIzMGYyZWUzODViMTJmOGQgbGVnYWN5LXRydW5rCiszMzQxOSBlYjgyOGM2NGZjYzdiYWVjYTAwN2VmZmU4ZGZmOTI0NGMxNjY4MzYzIGxlZ2FjeS10cnVuaworMzM0MjAgNWFmODkwMzdjZWJhMDgxNWY3MDllZDNhMzBhNTc3MTIzNWZiMWU2NCBsZWdhY3ktdHJ1bmsKKzMzNDIxIGFjOWExZjBhMzNkYzhlZTdhODBjOTVmNzM0MTYzYWY4NWM3MjUzOTIgbGVnYWN5LXRydW5rCiszMzQyMiBiODY0NDZmMDM1MGZmMDE4ZDg3ODIwYjExMDIyNzJkODQxMjg2YzIyIGxlZ2FjeS10cnVuaworMzM0MjMgYjU4MjFlMTc2NDUzODAxMmI1MTE4OTU2YmM5Y2Q3NGNlOWZjMTZkYiBsZWdhY3ktdHJ1bmsKKzMzNDI0IDlhNDQyZjRhNjQ0M2RkMWQ2MTQ1MmI4YjkyZWMzMjJmYzY1NjY1M2EgbGVnYWN5LXRydW5rCiszMzQyNSBiNDRkZWVlYzVjNWVjOGZjMmIwNzIzY2VlOTdjM2IwNjhhMzU2Yzk0IGxlZ2FjeS10cnVuaworMzM0MjYgMDc1YjI5YWQ5N2MzMjFkNTdkNjM1N2IwMmQ3MWY2NDE1NjkyNDI1MSBsZWdhY3ktdHJ1bmsKKzMzNDI3IDU5ZGE1YjU3YzYxYmFjZDIyOWVkN2M1MWM1NDliMjQ2Y2VlNzQwNmMgbGVnYWN5LXRydW5rCiszMzQyOCAzYzFmNzgzNDBiNjVlODYyZjAwNjNlYjgyY2I3MTUxYjAzZDYxNmU1IGxlZ2FjeS10cnVuaworMzM0MjkgYjQ5M2E3ZTc1ZDk3N2ZhMmEyYTQzY2IwMWVkZTM1NmU5MGU3NTEyMiBsZWdhY3ktdHJ1bmsKKzMzNDMwIDA1OTFmZDk1NmI5ZDI4NTdiYjIyMWRmNDBlYzRhZjJjYzMwYWUxODIgbGVnYWN5LXRydW5rCiszMzQzMSA0ZWM4ODBjNTNlMmEzMDdkZTBjMTZkY2I0Y2Y1NTk4ZDM2ODljZGM5IGxlZ2FjeS10cnVuaworMzM0MzIgOWViNmRjZWQxNmU2YmUwNzc2NTg4NTdjMDQwYjFlZGNjZGQ1Y2FjYSBsZWdhY3ktdHJ1bmsKKzMzNDMzIDc4YzUxMDlmZmFkYTA2MzE5Yjc5MDkzMzcyMmZhZTYwZTRmYTU0MGUgbGVnYWN5LXRydW5rCiszMzQzNCAwMDU3NjVhNTZlYzM5YjIyNjAyYTYzZjE4ODcyNjQ4MGQ3M2E5ZjAxIGxlZ2FjeS10cnVuaworMzM0MzUgYjg0Y2MzYzc4MDhmODIzOTdmOWE3YTk5YzRlOTkzNWU0NDA5OWJhMiByZWxlYXNlMjItbWFpbnQKKzMzNDM2IGZlNWViMTc4MDBmOWMzMWI0N2Q0NTViZTNkY2U2MjJjMTA5NzQ0NmUgbGVnYWN5LXRydW5rCiszMzQzNyBlOWU1ODMyZDcwNmZmMWEwOTMwODUwMWQyY2QxMTAzM2ZhNGVkZjJkIGxlZ2FjeS10cnVuaworMzM0MzggN2E0NzhkMTNmMjdkYTMzNjljNmU5YjZmNjZlNjQ5NzFjNGIyYTdhMyBsZWdhY3ktdHJ1bmsKKzMzNDM5IDc3NzBiNzg4MTM0NmQyZTVmZjI3NzU5Y2QwMTZiMTY1Zjk5ODNmYjMgbGVnYWN5LXRydW5rCiszMzQ0MCBlZGE1ZDAxNWUxMWMxODYzNzc4ZjM4YzlkODIyMzUyYzNjNTE2NjNjIGxlZ2FjeS10cnVuaworMzM0NDEgMjhjZmE1NDZmMWVjNzY0ZGUyMzEwNjY2N2ViYzhlNTJhZTNhZGUwYiBsZWdhY3ktdHJ1bmsKKzMzNDQyIDA3MDM0NWFkOGQ3MWNjYmFhZDI3ZWFiNGU4ODhiN2M1MzQ1MmVmMTUgbGVnYWN5LXRydW5rCiszMzQ0MyAzMmVmZTU0ZDBlOGZmZDE4ZjAzNzFkNGYwYjFiYTRkMzhhMjFmOTJlIGxlZ2FjeS10cnVuaworMzM0NDQgZGRjMjQ3NDA0ZGFiM2VmMGY5NTY2ZjFhY2VhM2MxZTYyMTdiZmRjYSBsZWdhY3ktdHJ1bmsKKzMzNDQ1IDhlMjdlNWNkZTU5YWVkMTkzZDc4MTNiMzc0NmFkNzdhYzVmNTU2MDQgcmVsZWFzZTIyLW1haW50CiszMzQ0NiA5Mzk2MTM0Njg0Y2Y1OWM5MzQwZmFlZTFmYWIyYjIyY2YzNzJhYjM2IGxlZ2FjeS10cnVuaworMzM0NDcgZTZmOWY2YjVkOGQ3ZTcxMDEzYmJlNjdlOTFhMzQ1MjVjYWI4NmZhYiBsZWdhY3ktdHJ1bmsKKzMzNDQ4IGY3MzNiYWM3OGY4N2U0ZWZlODU0MzAwMTIzNGIxNGZiYzYzZmQ3OTEgcmVsZWFzZTIyLW1haW50CiszMzQ0OSA3MDU2Y2M1YzgxNjdmYzJlNGEzMzNmZDhkYzQzNmZlNDIzYzBkZTZhIGxlZ2FjeS10cnVuaworMzM0NTAgY2U5ODgzOTRjNzU0NzhmZGUxYTdiN2U5Mzk1YjYzZTE4MTY2Mzc3OCBsZWdhY3ktdHJ1bmsKKzMzNDUxIDJmY2RlMzJhOGE1Nzk5ZTU4NDM4NzZiMGU5NzhkOWRjYWY0NzQ3YWQgbGVnYWN5LXRydW5rCiszMzQ1MiBkYzZhNDY3MzE4NjA2Zjk4NTg2ZGE5Nzc1OWZjMTk5ZTZmNjhjMGQ2IHJlbGVhc2UyMi1tYWludAorMzM0NTMgZDdhZmNkYzY5ZWQ0OTFjY2I1NzVlNmI2MWE3OGFhMjliODEzNGFiNiBsZWdhY3ktdHJ1bmsKKzMzNDU0IGM3M2ZhZjVkZTFiZDNkMTQzYmZhZGFjNTI2Y2ViY2U5MGI0ODVkN2IgbGVnYWN5LXRydW5rCiszMzQ1NSA0NjZhNTQwY2MyMjlmYWIyOTg0Y2E0Nzk5ZjdjNTdjOGU5NzY1MDRkIGxlZ2FjeS10cnVuaworMzM0NTYgNGZjNTZjYWU0ZWI4YzE2NWRjMjAyNzQ3MzFkY2JiMWQ4ZTc1ODM1NyBsZWdhY3ktdHJ1bmsKKzMzNDU3IDMxZDkyMzU0ZjcyZjA5ZGViOWM2N2YwOWQxODE2NjY2MzY4NmI5YWUgbGVnYWN5LXRydW5rCiszMzQ1OCBjOGZiNGFmOTZkZTBlNWJlZTIwZDA5YzUwMTg4MDI2M2FmYWZhZGNlIGxlZ2FjeS10cnVuaworMzM0NTkgNGJhZmZlMTRjODg3NGExMmQ5M2FmMjg5ZTAyOWFjZWFkNzczODg4YSBsZWdhY3ktdHJ1bmsKKzMzNDYwIDJlODRmZGI0ZmUzMGQ3YjlmZDg0YzMyYzhiNTU0MzBlYzZiNzI5YTIgYXN0LWJyYW5jaAorMzM0NjEgOTAzNWZlNzY4Njg5ZDg5ZTJhMDVhZDA3N2Y3MzhiNDdiMWMxZGVkNyBsZWdhY3ktdHJ1bmsKKzMzNDYyIGRlZmExZDgyNWIwOGNkNjI0YmYwYjFmZDk2YWZkZGNlNjA5ZjU0MjMgbGVnYWN5LXRydW5rCiszMzQ2MyAxMDM3ZmVhY2I1NGZjOTk4YWM4NzI2Y2MxODYxMTA4NGFjYzM5ZmRmIGxlZ2FjeS10cnVuaworMzM0NjQgYzcwMDYzYzNhZWViOGRmNzQ1ZmEyZWRmNzgzYWU0YjU0YmVmZDQ5YiBsZWdhY3ktdHJ1bmsKKzMzNDY1IGNmYWVkZGU1MGJkNjQzMjY4ZWM3Y2YwYmEwZmU1OGM3MWVkYmYyYWEgbGVnYWN5LXRydW5rCiszMzQ2NyBlNmE3OGRkNDI1YzhlMGFhZjkwMzczMDkxNjU1MjkzYmQyOWUwZWQ2IGxlZ2FjeS10cnVuaworMzM0NjggOTRlNWQxYjhmNjk2OTg5Nzc3ZGE1ZWUyY2Y3ZTA4MWZiYTU3YTgwMyBsZWdhY3ktdHJ1bmsKKzMzNDY5IGQ3ZTFhMWJkNDg4MGI3NjFhNzAxYmY1NmY4NzI1YTI5NGFhNDI5MTMgbGVnYWN5LXRydW5rCiszMzQ3MCBjNDQ5NjYzZmEyN2RlMzliYTc2ZmE4OTc4NWM4MTRlYzk4M2M2MmM4IGxlZ2FjeS10cnVuaworMzM0NzEgYmJjMzZlMGUxMGExNTc5MjkwODFkMTM5NDcyMWNkN2M5MzI3ZTcwYiBsZWdhY3ktdHJ1bmsKKzMzNDcyIDU3YjkzYzk0ODMwYTM0ZTIwYWJmMTcwYWFkMWJkZjZjZjY4MGI1YzEgbGVnYWN5LXRydW5rCiszMzQ3MyBlNWI5OWU2MDU5MjYxNWQyY2QwMTIwMDA3Yzk3ZDU2ZmI0ZTI5OTg0IGxlZ2FjeS10cnVuaworMzM0NzQgMTI3MmY3OTU0N2JhOTE2MTE5ZDg2YzY5MTY1MjU2MmFhNzM0ZTBhZiBsZWdhY3ktdHJ1bmsKKzMzNDc1IGJhYjg5ZTQwNmYzMGUyNDViOWQ3YTI5MTQyZDRmNzc1NTY0NDVkYjggbGVnYWN5LXRydW5rCiszMzQ3NiBkMjgzYjE3MzNjMGQ3YTU3N2NkNmYyYjliN2I0Y2ZiMGY0N2QwM2FlIGxlZ2FjeS10cnVuaworMzM0NzcgYWMwZmMwODkzYWFjZjMzNzUzOWRjNzk3NjRmOTdmZjE2ZmU2ZWE1NSBsZWdhY3ktdHJ1bmsKKzMzNDc4IDBkZjExYjJiZmNhNTE4YWE2YTVmZjlmY2JlZGMxMzkzODk1N2I3MGQgbGVnYWN5LXRydW5rCiszMzQ3OSAzMjgwMzU1MzI5ZGQzOWJiNDkyMDA0NTY5NzU1MjgwMWVlMWIyNWU3IGxlZ2FjeS10cnVuaworMzM0ODAgNWIyMWM3MDAzOTc0NWU2NDkyMjM2Y2I2ZDAwYjk5NTkwMjVjYjViNyBsZWdhY3ktdHJ1bmsKKzMzNDgxIGM5YzZlMmM5ZWM5NzVjODViNDhlNDFmMDYxMGZjZjVkODM1M2ZkM2UgbGVnYWN5LXRydW5rCiszMzQ4MiAyYjE3YWQ2Njg2NjZlNWU4Y2E2MGE4MzIxYzAwNmM0YjhhNTJjM2M4IGxlZ2FjeS10cnVuaworMzM0ODMgOTkxNmI1OTI2MWQ3NjMzNWFkZDhhZTgzMzZmYzNlMjExNTBkODE1NyBsZWdhY3ktdHJ1bmsKKzMzNDg0IGUwMmE1ZDE4NDlmOGQ4N2NiYjc4MTk1ZmZkZjc4ZDA3Mjg3MjljNDIgbGVnYWN5LXRydW5rCiszMzQ4NSA2NDQzYTBmZWU3ZTEwMTQzMDNjMmIwMGFkYjJiMjQwZTMyNDMyZTcwIGxlZ2FjeS10cnVuaworMzM0ODYgM2I0MWM2MzNkNzY5NmI5NmY1NDZhMjg5NGQxNWZmZjNlYjlkMGI0NSBsZWdhY3ktdHJ1bmsKKzMzNDg3IDdiZTI0Y2M2YzI4ZDdiYTU1YzhiM2NmMGNjNDAxMDU1YTI2MjM2ODQgbGVnYWN5LXRydW5rCiszMzQ4OCBjYjNjZTdjZWMyNjEyZjE5M2Y2ZWJmOGI4YzA0Mzc4NGRkNmQzNGM0IGxlZ2FjeS10cnVuaworMzM0ODkgNDgzN2JmMjE2YWU1ZjUwZDcwMGUzOTI5MTdhM2M0ZDRhNjc1Zjg1ZCBsZWdhY3ktdHJ1bmsKKzMzNDkwIGVkNDMxNTViMWQzYzkwNzk2NTVlOGFkZmUzNjY1ODk0MTNhMTEzNTcgbGVnYWN5LXRydW5rCiszMzQ5MSBkNGZmYjA0OTBhYzI3ZGQ0YjE5ZTJmNDNlMDRiOTdmZjkxYjNhOTFlIGxlZ2FjeS10cnVuaworMzM0OTIgMDcxNTAxODI0YmJkOGQ5MzA3NDU1ZTc4MWNmODEzMzQ3M2UwNDBlNCByZWxlYXNlMjItbWFpbnQKKzMzNDkzIDg1OWNiZDdjOWI0ODE0MGYyNTk3ZDgyZjcwMDc2ZGEwN2I0MmI2YmEgbGVnYWN5LXRydW5rCiszMzQ5NCAxZGMxNTg2NTJlNWIzNzNhNDJmZmU1YTY2NjE4ZWM4MDcwOTllZjRiIGxlZ2FjeS10cnVuaworMzM0OTUgZTFhNmJmNDU2NWNkZTRlNDdmYzZiMjE2MWZkNzA2NzUyZmEyMzZmMCBsZWdhY3ktdHJ1bmsKKzMzNDk2IDQ1NjkxMmFkYTY5ZmY5MWRmY2QxYmY5YzZhZmI1MjViOTg1MDVjNDAgbGVnYWN5LXRydW5rCiszMzQ5NyBiYTVmMGI4MDgxOTI3YjQ2MjI4OTBmNDQ5NmI2ZDcxYzg5YzU0MTU4IGxlZ2FjeS10cnVuaworMzM0OTggMzdiYzIzYzZjZjZjOTIyMTJlNGJmYTVmNGQ1YmJiNWU2MTNhZjVjZSByZWxlYXNlMjItbWFpbnQKKzMzNDk5IGEzNzEwNmFjN2M4Y2MwMTdlOTBmMDkxYjI4ODk1MzZjNTM1MzIyZWQgbGVnYWN5LXRydW5rCiszMzUwMCBlNmVkYjA0MGE3N2Q0YWNlOTgxMTYyZjI0ODg1YmE0NmVlNDBkMjY0IHJlbGVhc2UyMi1tYWludAorMzM1MDEgMmVjMmY2MjA4N2NiOGViYmMyMjRkYmQ3ZmI5YzczMzVmODZlMjA0YiBsZWdhY3ktdHJ1bmsKKzMzNTAyIDVlODFkOTJiZjY3ZGIwMDZmNGE2NjY3ZmQzNjY4MGRjZTdlMTU4YmQgbGVnYWN5LXRydW5rCiszMzUwMyAwOWRhOWU1NjU1NWQ4MGNjMmU1OGExMzI3NjA1NmE4NzVkMmQzZDE5IGxlZ2FjeS10cnVuaworMzM1MDQgNDAyOWE3MjZmYWE2NTUwMzY4MmZlOGZiZjJjMjVkZmU5MWUxZTkxNiBsZWdhY3ktdHJ1bmsKKzMzNTA1IDkyZjFlZWFlYjQxZDc1MTkzMjczMWQxZTU5ZmZjNDJlZTg3ODA1ZGQgbGVnYWN5LXRydW5rCiszMzUwNiBiOTgyN2MwNTQ2MGYzOGY4YzE5YTIyOGQ2NDAyYmNjZjJlYjQ5OGNlIGxlZ2FjeS10cnVuaworMzM1MDcgZDQ1ZDMxN2ZkYTM1MWFkYjU0NmU0YWU3MWJiYWFlZTBiYjVkYzdhMiBsZWdhY3ktdHJ1bmsKKzMzNTA4IDc3OGIyMTUyMGRiOGI5NGVhZjE5YzI3MTkxZmYxZmFkYTlmYjVkZWQgbGVnYWN5LXRydW5rCiszMzUwOSA4ZDQ1YTRjZWE5MzQzN2U3YzU0MTQ0ZGIxYmEwOGQ0ZDJlMWQ3YmYzIGxlZ2FjeS10cnVuaworMzM1MTAgZTU3YTliYmVlYzViMjc3Y2RmMWQwMjZjMTRjY2U4NDE5OGViMzNjMiBsZWdhY3ktdHJ1bmsKKzMzNTExIDY0MTk0ZTc3NWIwYmMyOGMyNzUwZTA2N2FhN2VmNDRlNjBlNjYyNWEgbGVnYWN5LXRydW5rCiszMzUxMiBmZTc5YTVhYjM5MmI4NTkwNWE4Mzg0YjNhZDhkMDJiYjlkMTZkZDFmIGxlZ2FjeS10cnVuaworMzM1MTMgMmQ1YmVjZDkwMGVlYjU2NjZhMjg3MGYzOWQxZjk3MTQ4NDZkZTRhMyByZWxlYXNlMjItbWFpbnQKKzMzNTE0IDA2Y2NhMzI3YmFjZGZhYjc1NTJiMTBiM2JkNzBmOWUwMmNhY2M3NzcgbGVnYWN5LXRydW5rCiszMzUxNSBkZDhjYTA4M2VhNjY3ODgwMjQxNzU1OWQxN2EzOWMyZmEzYTE3MDVmIGxlZ2FjeS10cnVuaworMzM1MTYgMDE0Y2MzNjJhYTkxMjM2MGFiYTZjOTY5NjdjNjM3ZDdkYmExMTRiNSBsZWdhY3ktdHJ1bmsKKzMzNTE3IGU2ODY3NjUyMzY3NzRjNTNjNTZmODg5MGUyNGQ4NWY5MTg1MjNjZGYgbGVnYWN5LXRydW5rCiszMzUxOCA3ZmJhMzNmZjIxMzU4YTMwNWJjOGZkMjAxMGE2YWEyZTliY2NlZjE1IHJlbGVhc2UyMi1tYWludAorMzM1MTkgYjg1ZjhiYjVjMzc1NGM2OGE3MTE2ZTFkM2MxZDE2MWFhZTc4NDdkYiByZWxlYXNlMjItbWFpbnQKKzMzNTIwIDU3YWRmODI3ZDRjN2FkNjQ3NDFjYjQxZjhiYzdhNWU0Mjg4Njc5YTMgbGVnYWN5LXRydW5rCiszMzUyMSAyYmI1MjNhZDliNzY1Yjg5NmJlZTM2ZmM3ZGY5ODAyMTM3Mjk4ZTJkIGxlZ2FjeS10cnVuaworMzM1MjIgNzA1MmMzZTVhZjAyNmZiZmFlYmZjNzI1M2RhODlkZGU1MzYxNzZiYiBsZWdhY3ktdHJ1bmsKKzMzNTIzIDQyZTgyNjNkMzlhYzY2MWY3NTViZjkzODMzZTg4YjhjY2NmZGM3ZWIgbGVnYWN5LXRydW5rCiszMzUyNCA0NWRjMzM0MzMzMjM1NmRkMzk4ZTE3ZTk0NmRiYWUxZDEyNDAyODM3IGxlZ2FjeS10cnVuaworMzM1MjUgY2RhYjI1ZDJmODQyOTJlOGI5ZmRmYzUwYTE1NzhjMWM4NGI5NGM0OSBsZWdhY3ktdHJ1bmsKKzMzNTI2IDg0ODM1ODQ2ZWVhYjExNGQxOWQzMDgzM2NmNDQyMWUxMjhiMTk5ZGUgbGVnYWN5LXRydW5rCiszMzUyNyA5YzU3ZWI1MzM3YjcyMTgwNGY0ODcwMTk5ODVjMDBlYzdlNDU2MjJhIGxlZ2FjeS10cnVuaworMzM1MjggOGViMWNhZTFhNzdiZDk1N2JhNjFmZjA5YjQzMDFkNzQzMWI4Y2NhOSBsZWdhY3ktdHJ1bmsKKzMzNTI5IDQyMWQ4MDVjMTFmMzNlMzMyNDliNDk1NTg5OGE5MDExNTg0YTZjMzcgbGVnYWN5LXRydW5rCiszMzUzMCBiZjAwYjU2YzE0YTk4MmViMTFkNDM1Yjc5ODNhYjFkZGQ3NzMxNzlmIGxlZ2FjeS10cnVuaworMzM1MzEgNTc3N2M4MzRmNTVjZTkyYzRiNTdlZmNiMWY4YjgyYWU3MzIzNGFjYyByZWxlYXNlMjItbWFpbnQKKzMzNTMyIDU2YzAxYzQ1MDkyYzA5MjgyZDQyZTVlYWEzZWJjNTAyNzJlNjhlNjYgbGVnYWN5LXRydW5rCiszMzUzMyBjZDBiY2FhMGJkODFmZTQwMTViNDE1YjlmMTgzOGZmMGM5NmRjNTc2IGxlZ2FjeS10cnVuaworMzM1MzQgMWJhZTc4YzgzYmU5NGJlYzI2MWI4ODMxYWU5MTIwYmYyMTU5YjA4ZSBsZWdhY3ktdHJ1bmsKKzMzNTM1IDFjM2I4MTU4NzYwYzNkMDIzZTEwMWQyYzcxZjFmYzEwOWM5NzUxNjcgbGVnYWN5LXRydW5rCiszMzUzNiBmMzM5ZjI5YjA2Y2JiNzkyNTI1ZGVmZGY5MzUyMTM3ZmFiM2RmZDJkIGxlZ2FjeS10cnVuaworMzM1MzcgOThjNTliYmRkOGVjNDc5NDJmMjlmZmU3Y2FhZDZkN2QzZjk2ODI0NCBsZWdhY3ktdHJ1bmsKKzMzNTM4IDg0YmNjYmVhYjVmYWM1ODEyZjE4NWYzY2U5ZjdmZjdlZWZjNzRhYTMgbGVnYWN5LXRydW5rCiszMzUzOSBiNzY2MTUyYzc5MDQ1YzVjOWI4NTM5ZTM0OGNhZDQ2OTI4MTljMTBjIGxlZ2FjeS10cnVuaworMzM1NDAgYjQ0ZWI1MTkzMWQwZjEzNDQ1OTc0YjA5YzFhMmI0Mzg4YWE5OTliYiByZWxlYXNlMjItbWFpbnQKKzMzNTQxIDE5OWNkNzhkNmQ3OGQzNmE2ZWYwZmJhMjMyYzdiZWE4M2Y0MTRhZGYgbGVnYWN5LXRydW5rCiszMzU0MiA2MDRkOTM4MjNlYzFkMDEyODk3MDEyNWVkZDg5NGQ4ODEzYmZhZjVlIGxlZ2FjeS10cnVuaworMzM1NDMgMzQ0MmU3Y2RhY2U4NmUzOWM2NTlkN2RlZDllNDQ3OWUzMjg5MmQwNCBsZWdhY3ktdHJ1bmsKKzMzNTQ0IDAzMDIyN2RlODA1MThhYWM3YWVhOWQ1ODU0MmMwM2Q1YTc3ZjEyODQgbGVnYWN5LXRydW5rCiszMzU0NSA5NTQ3MTdlNmZkYjUwYjQ1ZGI4N2QxY2ViMWU0MzFmN2M1MDQyOGY4IGxlZ2FjeS10cnVuaworMzM1NDYgMWE0MmIxMjhjNTgxNGE4YWYzODliZWNkNzA1ZGY1ZTIxN2Q4NmY3MCBsZWdhY3ktdHJ1bmsKKzMzNTQ3IGZlZTE3NzZlNjFjNzA1NjExNGE5NzAzMzMyZGJkZTdkNmE2YWI1NWYgbGVnYWN5LXRydW5rCiszMzU0OCA0NzUwMTE4NGI1NDM1ZjdlMDYwMTJiMGIwMTk3NjdiOTY4MDAyZjQwIGxlZ2FjeS10cnVuaworMzM1NDkgNjJmMzA2M2ExYTBmODc2YmI3NjJmNzkxOWQ1MTQxYjc2MDAzZWYzMyBsZWdhY3ktdHJ1bmsKKzMzNTUwIGEwYTcyMzFjNmZlMGUzNGY0YzMwMzBiNGFjZjFiZTY5ZmY4NzUwMzUgbGVnYWN5LXRydW5rCiszMzU1MSA3MmNiYzQxY2NjMmYzODBlMzY1MmFjNzUwZjc3ZWRkMTYxZmIxMTI0IGxlZ2FjeS10cnVuaworMzM1NTIgMmM1MTk0YmFhOTk0NGY5YWM1ZTRiMDRjNWQ3ZTdmOWI2NzJkY2VhMCBsZWdhY3ktdHJ1bmsKKzMzNTUzIGVkODcwOWIxYTNlZmIxM2E3Y2M0ZjY2NDc1Zjg2MjhlNjc2YzZmY2UgbGVnYWN5LXRydW5rCiszMzU1NCAzZjIxNGIzOWI0ZGY5NTQ5N2Y0MTEzNjE2MDEwMWNjZWJhMTNkZDRhIGxlZ2FjeS10cnVuaworMzM1NTUgMTk1MTFhNDkwZTdjMDUxMTM1MTUwOTdkM2JjMWRkMjUyNDBiYzdhYSBsZWdhY3ktdHJ1bmsKKzMzNTU2IDkyYTVmZTU3ODM4MDM4ZmRhMGU2Zjc5ZmY5ZGM1ZGUzMGZlZjdiY2IgbGVnYWN5LXRydW5rCiszMzU1NyBkMzdkMTU5MGUxYTdkMWExZjkxZDZmMzhjZmI5ZGEyODVmZTA1Y2I4IGxlZ2FjeS10cnVuaworMzM1NTggODhiOTNlMDdhMWY4MGFmN2MyNThiOWZhODk1MDJhMDcyNzI3ODViNiBsZWdhY3ktdHJ1bmsKKzMzNTU5IGY4OWQ1NDU1MDVjNzE1NDU0YmM4NTk1YjFmZGZjNjkwZjI5Mjk3NTYgbGVnYWN5LXRydW5rCiszMzU2MCBiNjhmYjRhNDNkMGZlY2RiOTRkZmVhNGYzNGZkNGE4NDBhNzQ2ODc5IGxlZ2FjeS10cnVuaworMzM1NjEgMjJiY2EyODIzNjg1Njg2MWIwZTllMmVhZTcwNmNmZmRmODI3OTZhYiBsZWdhY3ktdHJ1bmsKKzMzNTYyIDRlMDVjNTU1MTRlMWQ2MzE2MWYzNTdlMDQ3OTIxZWRlZTkzNzU5N2MgbGVnYWN5LXRydW5rCiszMzU2MyBlMmI0MDMxMjc1N2VlMTFmZjAyYjI5ZGE5MTFiMDJiZGMwNjg4Y2Y2IGxlZ2FjeS10cnVuaworMzM1NjQgZGE3ZWFlNDRmNDg3YjRiY2EyOTViYzRkNGQwYjM3YjU2YjU5OGExYyBsZWdhY3ktdHJ1bmsKKzMzNTY1IDljYTI5MTg2NWY5YzFmMmEwMjdlMmZkNTU5NTFlYzM0NmI1NDhjNzggbGVnYWN5LXRydW5rCiszMzU2NiA3OWVjN2UzMDJkNTM1Nzc2YjY5ZDBmNTA2ZWI4NjkyZGMxN2IxMDcyIGxlZ2FjeS10cnVuaworMzM1NjcgZTlkZGRmZDJhNjJmMGNlYTI1Y2M3OTJlNWVjZGMzMjViNmE2ZGRiNSBsZWdhY3ktdHJ1bmsKKzMzNTY4IGFjODRmMTc5YmI4NDEzMzljOWEyZjg2YjVjNTJiYWY2NmNkYWUwOGQgbGVnYWN5LXRydW5rCiszMzU2OSA5OTRiNmJlNDhlMjg3OWFmNjg2N2ZkMWYyY2I3MjBkMDM2N2ZmODFmIGxlZ2FjeS10cnVuaworMzM1NzAgYjQ3YTcyNzRjZTVjMTU4MzhhNWM2YjA0OWJiNjVhNzc2NWNjNmIxNiBsZWdhY3ktdHJ1bmsKKzMzNTcxIGRiYWUwNWMyOWU5Mzg1NDRiOTg2MmRjNzMyNjczMWUyODgzMWJlZmMgbGVnYWN5LXRydW5rCiszMzU3MiBkMWFhNTc1MWZiY2ZkYmEzYzFmZWFkOTBjYmIxY2UzOWMwYmYyODEzIGxlZ2FjeS10cnVuaworMzM1NzMgNDM0YjZjZGE0ZmE1YWY3MDE3Y2I2YzUwOWE1OWVmNzZjZWFiYmI5NSBsZWdhY3ktdHJ1bmsKKzMzNTc0IDlkZWFjMWFhNDIxZGI2OWZhNTVlNDM4N2VlNjRlY2FjM2YyZWRmZjYgbGVnYWN5LXRydW5rCiszMzU3NSBhMjMxMDZkZmM5NGQzZWJmNmZkYzM3ZjZjYzYzZTI4NTQ0NWI3MDBkIGxlZ2FjeS10cnVuaworMzM1NzYgOWY2MGMzZWU5ODVhMmFlMTBmZWQ5Y2I5N2RmNWMxNDhhMDdlZGY0ZiBsZWdhY3ktdHJ1bmsKKzMzNTc3IDgwZWQ0ZDk3ZjFiYWVhMGRlOTk1OGRmN2ExYjk2ZjFkZDg4Yzk0YjggbGVnYWN5LXRydW5rCiszMzU3OCA3MTYzOTVjMTk1ODZlMmExMDY2OTJjMjU5Mjc4ZGE3ZDExZWIxNDZjIGxlZ2FjeS10cnVuaworMzM1NzkgOGIxNTVlNGExMGEyNWQyYjg3MTYxMDcwYTc0YjE1ZTgzMjVjYmNhYiBsZWdhY3ktdHJ1bmsKKzMzNTgwIDFlMmUxYzc5MzE2ZTEyZmJkNWZhYzQwYmYxYTM3Y2YxNjYzNmI1N2IgbGVnYWN5LXRydW5rCiszMzU4MSA1YTk0NGFjODUyNWMxZjYxZDVkYWEzZmVlY2M5MDUwOTFiZGI3ZThmIGxlZ2FjeS10cnVuaworMzM1ODIgNDUxYjdlODM5M2ZjNDFlYjE0M2ZlYTIzNDlmMWQzODQyMjVjNjU5MyBsZWdhY3ktdHJ1bmsKKzMzNTgzIGQ1OWU1OGJhYzM5MjM3NTBiMTQzZDkyNDU3YTk5MGM5MWIwMTliNGEgbGVnYWN5LXRydW5rCiszMzU4NCAwZTIyMTViODIyNmQyYWUzYWJhNjNmMDdhODYyZDExZGJiOThkOWQ1IGxlZ2FjeS10cnVuaworMzM1ODUgNGU2MTNkZGYyYTFiZDE2NTZjNGVmNzRkZGJiMmExMGNkMjM1MzA2MSBsZWdhY3ktdHJ1bmsKKzMzNTg2IDQxNmQ5NDU4ZWU5N2NiM2YyZTNhMWMzMDQzNjM4NTRjMzk1ODliOGEgbGVnYWN5LXRydW5rCiszMzU4NyA1Mjc2MDc1MWM2MWVlNzJjZTkwYTFmZTM4Yzg5YjExYjYwMGJmMzFiIGxlZ2FjeS10cnVuaworMzM1ODggZjc3M2I1NjhiMmU3M2Q4MjllYTE5MmMyMTAzNTU5MjdiMjYyZjZiNiBsZWdhY3ktdHJ1bmsKKzMzNTg5IGZjZjY2ODBiNmE2ZmI3NzFjOGI1OThhY2FjNjg1NjcxOTlmM2NjOTkgbGVnYWN5LXRydW5rCiszMzU5MCBkZjllYTc0OTQwOWEzZWU0NTNjNGY3MTM0NTBkMzczNDUzM2QyNTExIGxlZ2FjeS10cnVuaworMzM1OTEgNTY0YTQ5ZWVhNDE0ZTEwMDkzMTY5NDZhZWZjMjkyNDE0ZGRhMGY2OCBsZWdhY3ktdHJ1bmsKKzMzNTkyIGVjOWYxODYxNTQ4NTZhOTBhZjU5MDQ0ZmJlY2EyOTA3MDhkYzEzOTcgbGVnYWN5LXRydW5rCiszMzU5MyA3YjE2Y2Y3MGViZDg5ZTQyNGQ1YTI0MmNiZTllOGMzNTJmMjgyYWFmIGxlZ2FjeS10cnVuaworMzM1OTQgMGIzNDIyYjYyMTE5MTE5NmMzM2U3NmE3NmJkYzI5Yjk4ZjQ5YTBjMiBsZWdhY3ktdHJ1bmsKKzMzNTk1IDJhNDBjYTA2YTIyYzg4ZDkyZjc3MTViZGMwODJmOWFmNzg0MjMwODAgbGVnYWN5LXRydW5rCiszMzU5NiA5NmJhYjdjODJlMmNmYzk2YzEwMDY5MDM5MDQ0MmI4YTA5ZTY2MjhhIGxlZ2FjeS10cnVuaworMzM1OTcgYzg2YjEzNTRhYzZmNmY3NGRhMzAwYWM4ZDhjNTNjZjA0ZTY4ZGNlNCBsZWdhY3ktdHJ1bmsKKzMzNTk4IDFiYzI1NTkyMjlkYjFkZmYzNzllNjg2NjAyMGMxZTY4NTNmZmJkZTAgbGVnYWN5LXRydW5rCiszMzU5OSA3ZmQyMGFlNDQxNDJmMGM5ZGYwNWFmMDMyZDdkZjA0OWNlNzViYjBjIGxlZ2FjeS10cnVuaworMzM2MDAgOGRlYzBmYjE0Mjg1NGYzNmI1ZDIyY2VjMjYwY2YxNzM0MzNiYTgzNiBsZWdhY3ktdHJ1bmsKKzMzNjAxIGE3M2MyOGRlZWY2ZGZmZTczNDkzNjA1ZmFmMGI1NzViMmUzNzFlMmYgbGVnYWN5LXRydW5rCiszMzYwMiA4NmM0NzZhNDI1YTdkYzUyNzM2YjI4OGI2M2U5ODZmYWM4NDExNzIyIGxlZ2FjeS10cnVuaworMzM2MDMgMDhkMjYzNmI4ZTU4NDQzZDE3NTBmNjc4YThkMWViNjg4ZDQ4YTU0NiBsZWdhY3ktdHJ1bmsKKzMzNjA0IDI1ODAwYTcyNDAxMWZiMjU0NDU2M2EzNTZhNmU4MWFjYzhlNmIyNDAgbGVnYWN5LXRydW5rCiszMzYwNSBjZmFkNTQyODNlMDAwNDc2NDEyNDQ1MmQwMTg0MTIwNzZkNjk1MTgzIGxlZ2FjeS10cnVuaworMzM2MDYgNzIyZDdjN2E3N2UyYjQ3ZjNhYTg5NTlkNmNhODI3ODZiMjlmNTZmMSBsZWdhY3ktdHJ1bmsKKzMzNjA3IDYwZTNkMjk5ZmM4Njc4ZjQ0MjYxNjgwMDY1ZWYyYjllYjkxNWQ1Y2EgbGVnYWN5LXRydW5rCiszMzYwOCBiYjhjYzcyOTE1ZjU2ODkyYzNiNTMxMzNkYWYwN2FmMTkxNWM2YjI5IGxlZ2FjeS10cnVuaworMzM2MDkgZWU3ZTIyM2RiY2FjZjA2OWNiNzdlNTBhNTZkODM5MWFkYmY3NjcxOSBsZWdhY3ktdHJ1bmsKKzMzNjEwIGI4NDY0NWMzMTk1ZTQ4NGQ2NzI2Y2E1Yjk3NTkxNDVhNjQ3ZDE3NTYgbGVnYWN5LXRydW5rCiszMzYxMSA0ZDQ0MTdkZjYzZjRlODA4YmYzMjA5NTNhOGQ0ZjM1Zjc2ODYwMWFkIGxlZ2FjeS10cnVuaworMzM2MTIgMDMxNTNmZDJkM2YyMTRjMWE3YTAyYzIwNzkxNDEyMGJjZTU2NGZlYSByZWxlYXNlMjItbWFpbnQKKzMzNjEzIDYyOGRjZjkwYmY5ZTJlMjAxZDIyYzM2ZGFiZjg1NmE0OTNhYjQ5NzMgbGVnYWN5LXRydW5rCiszMzYxNCA0MDdjMGRlYzJmNGFkYzkyYzYxZWE4MjQ0MDc1YThjYjFlNjA3MTYwIGxlZ2FjeS10cnVuaworMzM2MTUgMjlhNjNjNWNmYmFmYjk0NDE1YjJlOGFmODRkMDE0OTlhZTQ5N2Q2OCBsZWdhY3ktdHJ1bmsKKzMzNjE2IGRhMGM5MGM2YWZkMDFmY2I2ZmY4YjczYWZkYTU4ZGI4OTRlZjEyZTEgbGVnYWN5LXRydW5rCiszMzYxNyA5MDEzZDNjMWQ2NTUwNjRjODAwYTc5NjM1N2ZkZWM3MGIyZDM2NTAwIGxlZ2FjeS10cnVuaworMzM2MTcgZDA1NGMyOTY0N2Y5MGJjY2I4MzQ1YmQ3NzliY2ExZWVjZjJkZDdmMiBsZWdhY3ktdHJ1bmsKKzMzNjIwIDhhMjkzNDQ5ODI5ZDdiYWQwODJiZThiMDViYzZkNjdmZDQxZGFhNDcgbGVnYWN5LXRydW5rCiszMzYyMSBkYTM1OTI5NjJhN2FmMDc5OTc5YmI0MGIyOWFiNmI1ZDc4ZDllMzc0IGxlZ2FjeS10cnVuaworMzM2MjIgMTA4YWE5NjQ4NTczMjEwNThhNDJmZjY2MjI4MTM5YjlkYjgyZjY1ZiBsZWdhY3ktdHJ1bmsKKzMzNjIzIDlhNmY1YjM3ZTgxZDJkOWE4MjUxZDNiODNiMmQyMDc0MTNlYTA0NWEgbGVnYWN5LXRydW5rCiszMzYyNCBjZThiMTM4ZjQ0NzNhZGFkZDBiNmExNjRkNTJhNDAzMDZhMmU1MTM3IHIyM2MxLWJyYW5jaAorMzM2MjUgMzM3ZDQ0MDEwOTA3Mzc4ZTRmZGI3OGE0YjY1NjE5OWZkNjYxOTRmNiByMjNjMS1icmFuY2gKKzMzNjI2IGFkMDk2ODdhYWFhMGE3NTUyNjg1ZjI3NGZjNjAzZGEwZGJmZTdhMjQgbGVnYWN5LXRydW5rCiszMzYyNyAyYjhhNTY0ZTFmZDNkMDI2YTEyNDY4NjA5ODYzMjJiYmJlMTBlMWI4IGxlZ2FjeS10cnVuaworMzM2MjggYTljODk5NzM5ZjQ4MjJiYjZkOGI5YTliMjY4ZGMzNjRhZTUzOWE2NCBsZWdhY3ktdHJ1bmsKKzMzNjI5IDFjYmM2Yjc4MzZkY2I4YTZmMTllMjJiY2M1OTExYTQ1ODc3NDE0ZDUgbGVnYWN5LXRydW5rCiszMzYzMCAzMjI1ZjFkNDI4ODM1YTI3NTVhNjU0ZTg3MDZmNTFiZmRhMDE2ZDRkIHIyM2MxLWJyYW5jaAorMzM2MzEgMmM0ODNmN2JlYTRiY2Y4NjcxNTQ3MjM0MjgxZjYzOGZiYWRkNTEwMCBsZWdhY3ktdHJ1bmsKKzMzNjMyIGJhZjIyNDEwNzBiZmQ3MTdhMjM2YzMzMWY3ZTQyY2QwODNmNWM0ODcgbGVnYWN5LXRydW5rCiszMzYzMyAwOWM0NTk4NTEyNjQxNDZlYjMyN2M4NmJhNzRkYzVkY2Q0OTk5MmQyIGxlZ2FjeS10cnVuaworMzM2MzQgNWZhZWU3Y2RjNWFhYjI0NzY2Yjk3Y2JlYjNhMTcyZGFkMGExZDkwNyBsZWdhY3ktdHJ1bmsKKzMzNjM1IGNlYTdmOGFmOGUwYmI4MmU0ZDlhOTRiZTM0MmNhM2EwNDkzNmU1NDYgbGVnYWN5LXRydW5rCiszMzYzNiA0YmZjZmVkNjRlY2I5NjhjOTgyODVkYmFjYTg2MzBiMzliMjg3NzBlIGxlZ2FjeS10cnVuaworMzM2MzcgNGMxNDNjZWVmNDE5YzY3MmQwYzAyNjhjMDNkMzdiMjYzZjcxZGQyNiBsZWdhY3ktdHJ1bmsKKzMzNjM4IGE1NTBhZjcxMWFiYTRhMjJiNDZhZjMxNzhmYmI0M2JhZmNmZTkxMDYgbGVnYWN5LXRydW5rCiszMzYzOSA5NTBiMjUwMGExNDIyMjE0YWNkM2MwNTUwMDUwNmFmOTE2Yjc5NjQ3IGxlZ2FjeS10cnVuaworMzM2NDAgNjY4ZGQzMzZlMzA2ZjE1YmI4ZTBhOGFiY2NlMmYyMDBiNThmMGFhNiBsZWdhY3ktdHJ1bmsKKzMzNjQxIGM0MmE3MzE3Yzg4N2FiYjdiOWYzODYwMTIzMjExNzBlMzNkOGU5ZDQgbGVnYWN5LXRydW5rCiszMzY0MiAzMTdmMWVlMjRmMTg0OWI3OGU3MGM3NDQ1ZGI5YjlhZDdlYjQ5YWIwIGxlZ2FjeS10cnVuaworMzM2NDMgNGNmMmJmZmZhNTY0MTBmOGU4MjEwMTIwMmNiZTljMmY2MzU0ZGVhNCBsZWdhY3ktdHJ1bmsKKzMzNjQ0IGZlNDk5YmM3MzgxZmI5MDNiZmRmZWVlMzJhZDY0ZGQ1OTcwMTk5NTcgbGVnYWN5LXRydW5rCiszMzY0NSBhNGFiZTE3YTVmZWI5MWY0NjIyNGU4YTk2OGFkNTBhMzc0N2JkZGE4IGxlZ2FjeS10cnVuaworMzM2NDYgMTNjNzVmYTc4MGM4YzIyMjIyMjVhNTBkMjIyNzRiZmZhZWIwMzQ5YiBsZWdhY3ktdHJ1bmsKKzMzNjQ3IDMwM2Y1ZmRhMWEyODQwYmEwMmY4OTk3MmRhYmUyY2UyZDI3ZGFkZTggaW5kZXhpbmctY2xlYW51cC1icmFuY2gKKzMzNjQ4IGE3N2FhYWIwMTQ2ZGU2OTZlNmQ2NmU5OTNiNWM2NGVjNTlhNWRkZjQgaW5kZXhpbmctY2xlYW51cC1icmFuY2gKKzMzNjQ5IDVhZGRjY2EzZjQzMzM0ODJmYWUzNDRmZjQ4YWRkNWZhYmRkMjdiZjkgbGVnYWN5LXRydW5rCiszMzY1MCBlMzM5YWQyNTBhZjBmNDFmYzM0YjhhNjRjZDliODM1NmUxMDE4YTAwIGxlZ2FjeS10cnVuaworMzM2NTEgODJlZTFmYWUzODE5NGI4MTA5OTA3MjM3MDdiYmVmNTFhYzk5ZjM2ZSBsZWdhY3ktdHJ1bmsKKzMzNjUyIGE0MDhhYzU1MjdjMzQ1Nzg3MjhmNWYzMTMwODBjOTdlMzMyMWQyYzggbGVnYWN5LXRydW5rCiszMzY1MyBiOWQwYTBlZTIyMDZhNzJhOWE5NTc3MDNkNmRmZDY5NzAyOWM3Zjg4IGxlZ2FjeS10cnVuaworMzM2NTQgZDM3ZjEzMTk5ZDk1Mjk3YjQxMTE0NmQzNjc3MmEyOWFiOTE0NWFhYiBsZWdhY3ktdHJ1bmsKKzMzNjU1IDYxNDlmMGEwYjhmNTg0MjIyODk3YjYxZDM1YjlkMjk4YmMwN2QxOWYgYXN0LWJyYW5jaAorMzM2NTYgMjFlZGNlMDkxMDY5ZjlhY2QyZGNhMmE4OTE5M2I2NGIwN2FmYzQ4YyBsZWdhY3ktdHJ1bmsKKzMzNjU3IDJjMWU3M2IyZmNhMTEwN2I3MTc0MTE2MGY5ZWQxNTJhOWE0ZTMxMzYgbGVnYWN5LXRydW5rCiszMzY1OCAxMTg4MDliMWVmMjA2MTI5YjYyMGRlYTJhMzZjNzdjMWIyNmU2MzQ0IGxlZ2FjeS10cnVuaworMzM2NTkgMjczOTVjODQ0ZTIzYjdhZDQwYWFjNWZkODViNGE2NTZlYmZmYmRmYiBsZWdhY3ktdHJ1bmsKKzMzNjYwIDY1NDlkMmU0MDhmMGM2M2JmYzY2ZTg0MDk2YjAyMGE1ODIxNDkzMGQgbGVnYWN5LXRydW5rCiszMzY2MSA1YWQ0Mzk2MzJkZTU0YWMxOWUzYmJmMGJiZjczN2QzMWEwNmNmM2MyIGxlZ2FjeS10cnVuaworMzM2NjIgMTdjZTEyMzY5NDc3YTdjODZkYzg2N2ZiYzBmMjBiNzk2NDQ5MmIwMSBsZWdhY3ktdHJ1bmsKKzMzNjYzIDIxMTg3MDk3ODU0YzkwZTUyMmIwMTRlODQ5NjUyMGI5ZWY4MTM0ODAgbGVnYWN5LXRydW5rCiszMzY2NCAxYmQ2ZTYyZmIwNmY3NzkzN2NkYWY3NGQ2YjIxMWMxOWQ4YmViZmMwIGxlZ2FjeS10cnVuaworMzM2NjUgN2JhNDJjOTYyOTRjYzY5M2MwODRlOTk2MzNiNGJhYTFjN2ZlYmFiNCByZWxlYXNlMjItbWFpbnQKKzMzNjY2IGYyNzA4ZWY2MDE2OWIxOTJkOWUwNjZkM2NmNmEyNjRmZTRkMDAyZWYgbGVnYWN5LXRydW5rCiszMzY2NyAyZGEwNWI1YjVjNjUwNTVhMzY3MTZjM2M3MWE2MjU4ZjhjN2Q0NWUwIGxlZ2FjeS10cnVuaworMzM2NjggMjlmMDdhZGMzMDE5ZDA3NWM5YjMyYTg1M2RiMTQ2ZDE0YzZlYjRiMSBsZWdhY3ktdHJ1bmsKKzMzNjY5IDhmMzA2ZDNkNmQ1NmVkOGRlMzc0MjZkNGQxYWIxZDQzODgzMmM1NjYgcmVsZWFzZTIyLW1haW50CiszMzY3MCAwMDA5YTAzODMyMjI1YTY3NWM5MDUzOTA3YTAxMzM4Mjk0MjRmZWU1IHJlbGVhc2UyMi1tYWludAorMzM2NzEgYjU5NDk1OTFkOWQ1NzRlMDQ1ZTIxZDA1ODFjMjJjZGFhMDA4NDcwNyByZWxlYXNlMjItbWFpbnQKKzMzNjcyIDg2ZTQ3MjVhOWRiZDRiOTU0ZGY4ZDQyOWVmNzIwYTljMjcxYzVmMDkgaW5kZXhpbmctY2xlYW51cC1icmFuY2gKKzMzNjczIGIzM2M2MGZjY2U3NGY5ZGYwZDFmNjAxNWI0Y2RkNTkzNWUxMjgzM2MgbGVnYWN5LXRydW5rCiszMzY3NCAzNWNjZmMxNDBjYWMwYzJmM2NhZDllYjY4MTNhYTQ3NjlhYmM4YzFjIGxlZ2FjeS10cnVuaworMzM2NzUgNzMwYWJmY2YyNjEwZTljNzFjYjAwNTViMjliZTYzNDFjMmY1NTFiMiBsZWdhY3ktdHJ1bmsKKzMzNjc2IDY3M2JjZWQ5OTE4MGZkNWFjNzUyNTRlOWEyNjllMGIyNmNkZjg3NTUgbGVnYWN5LXRydW5rCiszMzY3NyBhYTQ0ZTA2ODg4OTZhMDQ1Mzg1Mjk4YTNmYTU4MGM3ZjlkMWU4ZGQxIGxlZ2FjeS10cnVuaworMzM2NzggMDJlNWI0YjY3YTY2MzAzYzQ5YTk3ZDk2YWYwYThjNjk2YmQzYmZhNSBsZWdhY3ktdHJ1bmsKKzMzNjc5IDA5NTQ2OWM3YWJlNzI3MDIwMDJjYmMzZWJiZmE0NzkyZTc1YzkyN2MgbGVnYWN5LXRydW5rCiszMzY3OSBmY2U1YzllOWFiYzcyMjM5NGNiMmU5MDliN2UyYTM5MDgwZDQ0NDhlIGxlZ2FjeS10cnVuaworMzM2ODEgZTFiYjEyNjJmMGJjMTQ2MjNkNjQ2YjAwY2I1NDc1YmQwMTk4ODEwMCBpbmRleGluZy1jbGVhbnVwLWJyYW5jaAorMzM2ODIgODNlMDZmZTEyNGExOTNhNTM0ZTQ0ODg5OWI1YjU5NzU1NTA0ZTRkZCBsZWdhY3ktdHJ1bmsKKzMzNjgzIDUzYjc2MGIwMjdiNzcxMmIwNjdkMjRlYmMwM2Q1MTdlZGY4MTBjYWUgYXN0LWJyYW5jaAorMzM2ODQgOTZmYThmMGI5ZWViYTdmY2QyYWYwNTFjOTRiZjdhMjRlODg1ZGNiMCBhc3QtYnJhbmNoCiszMzY4NSBjZmJiN2I4MjY5MmQ3MGYwOTcxZTM3ZGY1NzUwN2UzMDA1MjczYTg5IGFzdC1icmFuY2gKKzMzNjg2IGY4MmViMTYwNDQwYmRhNDllYzIyODk0ZmY3YzU5Mjk2ZTgxZWM4ZTAgbGVnYWN5LXRydW5rCiszMzY4NyA1MmRkNTQ4ZDNiZTlhOTdhZDc3OWJiMTY1MWNiYTRjNDE2NjY0MmQ2IGxlZ2FjeS10cnVuaworMzM2ODggM2FkZGE4MWEwZTBiZDA1MjRhN2NiYjFhNDkzOTk0OWI3OGRmOTQzZiBsZWdhY3ktdHJ1bmsKKzMzNjg5IDM1ZGVhMTBkY2RjNDVlODVjMWFlNDk3MjJmN2IyNTU0NWEwMTdjMDAgbGVnYWN5LXRydW5rCiszMzY5MCAxZmJhYTA1YjM1YzFiZjBlYzE1YjU5ZTExNjRhMWY0Y2JmY2Q0ZjYwIHJlbGVhc2UyMi1tYWludAorMzM2OTEgOGNkOTRkMTE3Zjg3Nzg5MjdjNDRiMjlhZWZhMGZlMWRiNDQ4MmM5YSBsZWdhY3ktdHJ1bmsKKzMzNjkyIDM3Y2NmMWJjNTRlMDQ0ZmJkYzZiMjQ0NWJlNTk5MDFiYjhkNGE4NjAgbGVnYWN5LXRydW5rCiszMzY5MyAxNWZjODNjNTA1ZTMxNDk3MDI2YjBhOWY1NzZmMDc4YWY0OWNkZTg3IGxlZ2FjeS10cnVuaworMzM2OTQgY2ZhOWYwNDljMjA0YzY4YWEyZjIyMjRkYzQ4OTkwOTllNzMxOTA0YiBsZWdhY3ktdHJ1bmsKKzMzNjk1IDRiNTcwMjMwNmM1ODFiM2VmNmJjZGJkY2VlYTVlODlmZjdiZGFmNDIgbGVnYWN5LXRydW5rCiszMzY5NiBlZmExYmI2NTZiMmI2ZTUxOWE3MjNiYzU2Mjg0NWQxMDE5YTRjOTM4IGxlZ2FjeS10cnVuaworMzM2OTcgYTEzMTUyYjI1ZmU4ZGY5M2QwYTE2MWZjNTNkZTYzNDNkOWNkNmVkYyBsZWdhY3ktdHJ1bmsKKzMzNjk4IGRlN2Q5YTJiNWZhYzMwODMyNDA2ZmVjZDgwY2YyNjlhMzdlMzg1OGMgbGVnYWN5LXRydW5rCiszMzY5OSBlZThiYWNjNmYwNjhkNjE3NGIzYmMzMDY4MzI0ZGEwOWViMzI1M2U5IGxlZ2FjeS10cnVuaworMzM3MDAgMjkwOTQwMTYzOTdkNjI2MGQ0ZWY5NGQ2MTFkOGY3OGFkYWZlMGMyOCBsZWdhY3ktdHJ1bmsKKzMzNzAxIDY3NGNmNWEyNDE0N2ViYjY4MzNjYTI3NWQzMzM5ZjYzZDBlZjFiMzcgbGVnYWN5LXRydW5rCiszMzcwMiAxMmE3ZjIxNTY0ODE1NDE3Y2Q4YzY0YjBlODBhNDFhYzZkYzQwZDNmIHJlbGVhc2UyMi1tYWludAorMzM3MDMgNzRhNWNlNDlhOTJmYzgzMmFkNDQwNTgwODM0MmM0MGY5N2Q2ZGYwZiByZWxlYXNlMjItbWFpbnQKKzMzNzA0IDBkNzlkYzg1NGFjNDY5MGVkNDE1YzgwYzU4MmExN2FhNGUzNTk4MDIgbGVnYWN5LXRydW5rCiszMzcwNSBhNjIxNTNkOWM4ZDY1MTcyNTFkZGE3YWEyZmI5YTA1NzY5NzZiNDMyIHJlbGVhc2UyMy1icmFuY2gKKzMzNzA3IDIxYjgxMzk5YjYyODQyMGE2OGM4NmI5ODAyNWJjYmU2N2M1NzUxMGYgcmVsZWFzZTIzLWJyYW5jaAorMzM3MDggYTUyMDM2MTRjYWE5NmQ2YjljYzJlNGUzMWYxZTk1MDIwZGQ3NTRkMiByZWxlYXNlMjMtYnJhbmNoCiszMzcwOCAxOGVkYzdkNTdkZmZiNTZiZTgzNzRmMzVlNDdmMzkzMjlmNWU5ZDMxIHJlbGVhc2UyMy1icmFuY2gKKzMzNzEwIGVjZDg1NzMyMDRjZDI0YjFmZjFmODRiNzdkYTgyMTBiODVmNDU4MTYgcmVsZWFzZTIzLWJyYW5jaAorMzM3MTEgNDNiMGE0MDRkNGEwMWNjMTc5OGU0MTM1NTg1NTlmZWU4MGFhMmZlMSByZWxlYXNlMjMtYnJhbmNoCiszMzcxMiBjM2U2OWYzNzZmMjliMTkxMTQzNDE0ZTJlZDAyOTkwNGIzNzlkZWM2IGxlZ2FjeS10cnVuaworMzM3MTMgM2ZlODJkNTdkMGQxN2YxZDhkMzk1ZWI1MmIwMDQzODFhMzM5NTZmZiBsZWdhY3ktdHJ1bmsKKzMzNzE0IDFkNjNlMTUzOTg5ZjAzNTQ2YWU4YjJhZDBkNzBiMmQzYjdiYjMyNDcgbGVnYWN5LXRydW5rCiszMzcxNSBiN2UyZDczODBjYjIwOTdjNzFhNGFlMmMwOGZlNmM3NjFlYTYzMmNkIGxlZ2FjeS10cnVuaworMzM3MTYgNzAyYWE2ZWIxMWY5YjNkMGQzN2U0ZWY0YjhlMTJhMzM3ODM3ZTg3MiBsZWdhY3ktdHJ1bmsKKzMzNzE5IGI4MmVhMGIwN2IwYWI4YjViNDM3MmQ0N2Q5MjM4ZWUxZmY4ZTU2YzIgcmVsZWFzZTIzLWJyYW5jaAorMzM3MjAgYzM0MGIyN2Q3MzliMTEyZmE1NjA3ODllYzU1MWQ0YWQ3ODIxM2ViYyByZWxlYXNlMjMtYnJhbmNoCiszMzcyMSAwMjUyOWZiMTg4MTVhMDg4Y2I5MTU5NmI5Y2FiMTE2MmJlY2Q4YmVkIHJlbGVhc2UyMy1icmFuY2gKKzMzNzIyIGU1OWEzNmExODA1ZWQ2Y2JlYTQwOGM5YTY5ZmRjNWZkYTY2ZDQzZjYgbGVnYWN5LXRydW5rCiszMzcyMyBlNGVlOTg2YWYxYTA3ZjdkNDhlMjVmMGI1M2JlMjMyOTU3MmM0ZTY3IGxlZ2FjeS10cnVuaworMzM3MjQgZTE0ODI5NmQ4YTkzODhlZmVkOTA3OTMyOTVmMTc1MjYxYmUxMDg0MSByZWxlYXNlMjMtYnJhbmNoCiszMzcyNSAxODczMWQyNGUzZDEwMzc3MWIyYjVkY2UwZjIwODIwZTFjZDVmODhhIGxlZ2FjeS10cnVuaworMzM3MjYgMmYwM2Y4Mzk4NGIwNzFjOTAwMTNjODU0OGViZjcyMDdmOWQ4OGUyNiBsZWdhY3ktdHJ1bmsKKzMzNzI3IDY3ODRhMjQxNjMzMTUwYTk4NTkwZDkxNzg1YTdjMTJjMWQ4NzFkODUgbGVnYWN5LXRydW5rCiszMzcyOCBlNjIxYTk3YmZhMTZiMWRkZjVmMGYzMGEyM2ZjNDlmZGY1ZmU3NWY5IGxlZ2FjeS10cnVuaworMzM3MjkgZTIxM2NmZTE3YTYyNGQzYTYwODFiOGMyN2YzMjNlMmQ4YjdjYzEyZCBsZWdhY3ktdHJ1bmsKKzMzNzMwIGQ3MjU0N2M5MTVkNWE2NGVmNWNiNGQwOGNjNjYwYmFiZWUwYzNjYzAgbGVnYWN5LXRydW5rCiszMzczMSA2NzcwMzg4NzNhMjJiOTRkZWQ0OGQzNjE2N2RlZTVlYTdhZTZkOGUzIGxlZ2FjeS10cnVuaworMzM3MzIgMDhmMzhkYWZjOThhNzA2NGM0YjZlNzBjNTNiN2ZmMmJhNzA5MmNjNyByZWxlYXNlMjMtYnJhbmNoCiszMzczMyA4ZDhjZGVlMzQ0YWQ1NjY3ODZkMzE0ZDc0MDBmMjM5YzZjMmY5ZjVlIHJlbGVhc2UyMy1icmFuY2gKKzMzNzM0IDllMGQzOWEyZDM3ZTQ5ZGVjM2ExYjYyNjIxZTQyNzI3ZGQ0MDgxN2UgcmVsZWFzZTIzLWJyYW5jaAorMzM3MzUgMDQwNjg3NWNhN2ZkM2I2MTNjZTYxNjEzZjUxYWUzZjMyY2Y2NzdiYSByZWxlYXNlMjMtYnJhbmNoCiszMzczNiA2ZjZkZTc2MWVmOWI3YWRiOGNiNTFjMzY1MDNmMjM2MzM2MmQ4MmVlIHJlbGVhc2UyMy1icmFuY2gKKzMzNzM3IDI0ZTczNzk4ZWQwNGU0ZWQ3YWYxZTA1NmUzMjY5YmQ5OWQyYWYyM2IgcmVsZWFzZTIzLWJyYW5jaAorMzM3MzggNzA1OGRjZjczM2Q0NjZjMDAyYWJhZDI0YTE0ZjBkMWFhODkwMTVkYSBsZWdhY3ktdHJ1bmsKKzMzNzM5IDQzYzk3NzFlMGJlMTBhYTUwZDg2NjJlNzIxY2FhNzhkMjFkZWM4MzIgbGVnYWN5LXRydW5rCiszMzc0MCBjZTE4NTAzNGIzODA3ZGQ4MzVmZmQ5ZDBhZGEwODA5NGU2ODY0NjgxIGxlZ2FjeS10cnVuaworMzM3NDEgNjljOGUzOWY2ZWU2YzU2YTI2ZWNjMmE1M2RlYjZlNjA5OWQ4ZmI1MiBsZWdhY3ktdHJ1bmsKKzMzNzQyIDA1MDRiYThlZmJiNmNkZDExZjFhNDdjYWYwYjQyNGZjYTQzMzI5NWMgbGVnYWN5LXRydW5rCiszMzc0MyAwYzYyMTgwMTQwOWFmMjg2MmJiYWQxYjE5YWE3YmM4MzlkOWUwMjMxIGxlZ2FjeS10cnVuaworMzM3NDQgZDhjOGZlMGM3M2VkZWVkODNkMzZkYzZjOGJhMjU0YjNjMTAyYmJkOSBsZWdhY3ktdHJ1bmsKKzMzNzQ1IDY0M2ZmYjdkYjE4ZmQwNWY5ZmUyNzhiNzEyMTk4MjIxNTA1YzhhYmYgbGVnYWN5LXRydW5rCiszMzc0NiBkMDk5NDRjZWUzYTRmZTRlZDE0MWRlYzQzMWNmNjE1MzBkNGMxNDIwIGxlZ2FjeS10cnVuaworMzM3NDcgNTI2YzEyYWIzNmFmMzk4MmY3MDRiZjI1MmU3ZDhhNjQ2MmI0ZTVhYiByZWxlYXNlMjMtYnJhbmNoCiszMzc0OSBkNzM4YTA3YTI5M2EzNWY0MDMzYmM3OWRjNDliOWUzODBjYmE3NjVkIHJlbGVhc2UyMy1tYWludAorMzM3NTAgYzlhMDA1OTBiOTAxZGRkYmU2NmFjOTE3NmI4NTIyYjM0ZjdmY2Q3MyByZWxlYXNlMjMtbWFpbnQKKzMzNzUxIDgwMTRmYjgwZDE0NDUzOWI3NGRmMzI4ZGNlYTFkMTZkMTgzNWJmMjMgcmVsZWFzZTIzLW1haW50CiszMzc1MiBkYjlkNjMwMjM3YTY1NzY1ODIzYzc1ZWU5ZjYzYThlYjU4ZTllZjFmIHJlbGVhc2UyMy1tYWludAorMzM3NTMgZDhlNTJiY2UyY2Y5MDNiNDdhY2FjNDQwNDAxYjcxMGU5NWM0NDZhYiBsZWdhY3ktdHJ1bmsKKzMzNzU0IDVhMmE5MWI5NzgxMGExY2IzNDNjOWU0Y2VkMjg3YTljNDBiMWQ4MjggbGVnYWN5LXRydW5rCiszMzc1NSAyY2ZhY2E2MmE5OTA3M2RhYzA0ZDBhZjFkY2U4ZDU2NDgzMjNiOTQ3IGxlZ2FjeS10cnVuaworMzM3NTYgYWU4NDg1ODY3ZDMwNzExYWI5OGE3ZDQ3MDBkNWY1YWIzMzdmZGQ4MiBsZWdhY3ktdHJ1bmsKKzMzNzU3IDQ5NGIwN2E1ZTJlNTdjYmMyMzg4M2Q1NWFmOGQ5ZDEzYzhhZGM2OTAgbGVnYWN5LXRydW5rCiszMzc1OCA3ODAxYjEzYzUyYzk0NjEyYzc0MjYyOTBkYTZjYmJlYTE3YjRiZDk2IGxlZ2FjeS10cnVuaworMzM3NTkgMGNmYzZjYWJjZTg4NGE1MzBjY2ViNThkYjg3YTFjMzMyZDFiZWJlOCBsZWdhY3ktdHJ1bmsKKzMzNzYwIGEwMzAwZWE2MzhkZGI0MTMwMTkwOTY3ZjIxODBmYTE2ZTc1YTJhZjYgcmVsZWFzZTIzLW1haW50CiszMzc2MSBiMjRlOWQ3MWZhM2NkYmM3YzkxMGVlNzgwNjdhMTQwNmQ2YWQyZjBjIGxlZ2FjeS10cnVuaworMzM3NjIgMWQ1YmU2OTgxZDU3ZWRkODcyYzRjNTMzZTQ5NmExOWY4MGQ1ZTRiNCByZWxlYXNlMjMtbWFpbnQKKzMzNzYzIGU0NzdiNTk5OTI0ZGE4M2Y1NTczODBhNjQ1MDAxOTg1MDk5Nzk4M2EgbGVnYWN5LXRydW5rCiszMzc2NCBhYWIxMDg5ZjBmODVkZWViYmQ1NDVmOWNjMjNmNGY0YTIwMjk4YzY2IHJlbGVhc2UyMy1tYWludAorMzM3NjUgNGFkZmQ3NjQ2NmJjNmMwNmU0ODRiNTJmZTRhMjM4NmJkYjgyNzZlZCByZWxlYXNlMjMtbWFpbnQKKzMzNzY2IDIwMDE2NWQxMWE5NDYyMmFjZWJiMDIxZjk2MzU4NGE4MTY5NDM0NDYgbGVnYWN5LXRydW5rCiszMzc2NyBmMjYxOWJkNjgzZGIzZGIxYmI3OGIwZjA1NTYxNmI3ZmY3ZWUxNGVlIHJlbGVhc2UyMy1tYWludAorMzM3NjggMzU0YzdlZTQzOGJmNGVhMDE3NGY5M2E3Mjk2YzdlZGEwZTAxNzY3MiBsZWdhY3ktdHJ1bmsKKzMzNzY5IDdhZWExYjVjZGViYmEyZjc2ZmZjOGIzOGY4N2QxMTYwZDc3NWIwYWQgcmVsZWFzZTIzLW1haW50CiszMzc3MCA1ODlkNTU0NWFmNDExNjMwMjY0NDA3MWE4N2QxNDAzYzE4YmI3ZDc4IGxlZ2FjeS10cnVuaworMzM3NzEgMGU2NDI0MDgwMGRkMTNjNzFkOWQ0N2FjNWE1MDM0ZDEzMzFiOGQ1NiByZWxlYXNlMjItbWFpbnQKKzMzNzcyIDk4ZTZhYzFkODM3OTcxOTYzZjQ1MThlMmEzODliZjcxOWE4YjNmOGIgbGVnYWN5LXRydW5rCiszMzc3MyBhZTAyNDJlMzQ1OWVlYWE5NTIzZjNlNzQ2NzM5MWJkMDhkNDE4Yzc1IGxlZ2FjeS10cnVuaworMzM3NzQgOWJkNWMwNTJiMzA4Yjc4YTcyZWEyOTc2YWVkMDdjZmJlNzNhNDM3YyBsZWdhY3ktdHJ1bmsKKzMzNzc1IDE3MTgxNGY1ZGNjNjMyMTBiNjIxYTQzYjRhN2Y5NWQzZDkxMTQzNWQgbGVnYWN5LXRydW5rCiszMzc3NiBhYjEwYzBjMjVjMDMwNGFkNGEzOTgxMDMzMGRhOTc2MzZkNDNiMzE5IGxlZ2FjeS10cnVuaworMzM3NzcgMDYxZDg2ZmMxMWJiMzgzNGRiNTk3ZTcyNzc1MzQ0YmFkY2E3YTI3OSBsZWdhY3ktdHJ1bmsKKzMzNzc4IDczNWVjMDg2OTQ5MjNmZWI2MDYxY2FmYTBlMTBlNzc4M2U1YTVkYWUgbGVnYWN5LXRydW5rCiszMzc3OSA3YmQ0MDIwNTA5NGNjNDgyM2JhZjNiOTU0NGFiODQwMzA2OTg0ODMwIHJlbGVhc2UyMy1tYWludAorMzM3ODAgMzZjMjc3MzgxZDc4YjNiYjYzNzcwNWRmNTEwMzFhYjM3ZmViZGRkMyByZWxlYXNlMjMtbWFpbnQKKzMzNzgxIDhjYzgwMDAyZmI5MDM3MDhjZTQxNTQwYzhhOGY4Mjg5MTQ5YzkxYmUgbGVnYWN5LXRydW5rCiszMzc4MiAyYjE0Yzk4MjdkOWNkNzNiYTY3N2UzNTdkYTE3ZWZkMGQzMzA5NTczIHJlbGVhc2UyMy1tYWludAorMzM3ODMgNWIxZGRjNGI0OWI5YmIxZjk2MmFjMzNlZmU3M2FjMTUwMjZhZGQ1NSByZWxlYXNlMjMtbWFpbnQKKzMzNzg0IDhiN2UzN2I1ZjFlZTQ1MWQyNDkxOGE5M2E1ZWYwZjZmZGNjNDAwNGIgcmVsZWFzZTIzLW1haW50CiszMzc4NSA3NjJlMWIyMDg4ZTUxODhkZmVlNjMwNjk5NDliYjc5ODNhZWIyMWM1IHJlbGVhc2UyMy1tYWludAorMzM3ODYgNTlmZjc3YjBhYzcyNGFiMTJhNTZlNjU2Yzg4NjcwMzdiZDM0ZGU5YyByZWxlYXNlMjMtbWFpbnQKKzMzNzg3IDhmOTNiMDliMmJiNWYzNGMyNDUxMGNjZmNlZDc5Y2Y2N2Q4NTgyNjQgcmVsZWFzZTIzLW1haW50CiszMzc4OCA3ZjU0ODkxODRkOTQzMzBhYmViNGYzNjA2Mzc3Y2VmNjUzYjU4YmUzIGxlZ2FjeS10cnVuaworMzM3ODkgNjIxNmU3NGI4OGVmYmUzNjg1OWQ5OWEzYTY0MmY5NGNkNDY2Y2E4NSByZWxlYXNlMjMtbWFpbnQKKzMzNzkwIDFjNDUxOTRkMTI0ZDg5NTI0ZjRiNmNkODkwMGE5Y2M0MGRjMDgxNjMgbGVnYWN5LXRydW5rCiszMzc5MSBiMDc2ZjY5YzVkYWMzMTJjODZjOGJhNWJiZWVjMDIxMTdiODU5NzU3IHJlbGVhc2UyMy1icmFuY2gKKzMzNzkyIGQwNWQwZWQ0NjVkODAxNjVkZWFkMThmZjlmOTE4ZWMyYzU5MDhjZTggbGVnYWN5LXRydW5rCiszMzc5MyBkYmRlM2RkMzEwNjg1MmVmZDIxZjM4YjcyODliNDMzOGUzMTRmYzc0IHJlbGVhc2UyMy1tYWludAorMzM3OTQgOGViYjliMzU3NmQxM2M5ZDAzNDc0ZDI1MWE4MmUxMWVhYTg5YjQ5NiByZWxlYXNlMjMtYnJhbmNoCiszMzc5NSA1M2MyZmYxZDgxZDE2OThhZDA5YjNiNWYzNGE0YzQ3YWM4NDZlODkyIHJlbGVhc2UyMy1tYWludAorMzM3OTYgYmZjYzk4ZGU3ZmNjMjUwNDhiODk5ZDU4YzM0OGEwNTBiNTFiZjg2MCByZWxlYXNlMjMtbWFpbnQKKzMzNzk3IDQwZjVmMGI0NGNjNDQ3Zjc4ZTYwMjMwMWVhN2NhMjM0MDM3NGU0NzggcmVsZWFzZTIzLW1haW50CiszMzc5OCBiYTQ4ZTU3MWE0ZDVjZTlmNjM0MWY1Yzc5ZmJkODQxMWQ3MDZhMzQ3IGxlZ2FjeS10cnVuaworMzM3OTkgNWM4YjJhNjY2NmMzNmZjNjMyZDJmZmUwZTQ1ZDBhY2VkOGNkNmZmYiBsZWdhY3ktdHJ1bmsKKzMzODAwIGFmZGU0MDJlM2E1NWE5OWIyNTdjOWQyYmZjNjhiZjljYTA5YzdjYjUgcmVsZWFzZTIzLW1haW50CiszMzgwMSBkNGNjZTU1MzQ3OGE4MTBkMDRhOTIzNTJjZWQ4ZGFmZTNjNjAyYzA2IGxlZ2FjeS10cnVuaworMzM4MDIgMGFjNDM5NmIxODk0YTBlMjlkOGMwYjFjZDU5MGE0ZDFlNmNlZmJjNCBsZWdhY3ktdHJ1bmsKKzMzODAzIDc0ZWY4YjhlMDA2MTc0YTUzYzBiNWE2NDVjODkxMzBkOTZjMWUyYjIgcmVsZWFzZTIzLW1haW50CiszMzgwNCBlM2M5YjQ4ZGU2MGFlMjc0MDY4YjY4NDhkMDIzYjZkZmQxNDA0MzhlIGxlZ2FjeS10cnVuaworMzM4MDUgMDYwMTZkNWQ4MWQ3ZDRlMWQ0ODBhMzgwMGE1Nzg3OGQ0OTNjMDA5MiBsZWdhY3ktdHJ1bmsKKzMzODA2IDFjNGQxOWI5YmFhYzY1M2ZmMGMzYWI5ZDc1Yjg1OTgwMjExNWQ2Y2MgcmVsZWFzZTIzLW1haW50CiszMzgwNyBkNjM3OTYyMGZiMDhkMTRhNzA2ZDM3NTZlNzIzNmFjYWNjYmZmYjIxIGxlZ2FjeS10cnVuaworMzM4MDggM2RjOGYyYjQyNDhjMmI4M2VkM2E0NGNmYjlkYmY1NmFmOWIyOTc3YSByZWxlYXNlMjMtbWFpbnQKKzMzODA5IDA5YTJjZGVhYjhjMGFlODNlMjlhMDY3NmY3Y2IzMTU5NTYwMDYzZWQgbGVnYWN5LXRydW5rCiszMzgxMCA1MzBlMjNiZjllMTkzZWVhY2Y4OGZkY2NjOGVlYzY1NDAxNzQwNzYzIGxlZ2FjeS10cnVuaworMzM4MTEgOTAwMzI3MDk1YjA1MTQwM2ZhNmE4ODQwMjRhYjcxZTc5ODE1YTdiNSByZWxlYXNlMjMtbWFpbnQKKzMzODEyIDUyODQzN2EzZjVmN2E3NWMxOTEwODhhNzk3YmNhMmJlZjQwZjMwMzMgbGVnYWN5LXRydW5rCiszMzgxMyA2NjVmOGE2ZjQzN2RiNDZiY2U4MzdmNzQxZGM2OTI4MDAwZGI4OTFiIHJlbGVhc2UyMy1tYWludAorMzM4MTQgNDM1M2YwNDQyMmUzMjFmZDEyNGIxZWMwMmMyYzZjZDg3N2NhNDQ1YiBsZWdhY3ktdHJ1bmsKKzMzODE1IDI2NTA3OTg4MzY2ODczOGY2ZGY0YzY3NWY2ZWRiNWI5NWY0OTQ3YjYgbGVnYWN5LXRydW5rCiszMzgxNiA2MTZhOGMwY2M5MTcwNmFiZTA0MTU3N2NhOTU2N2IyNzRkYjVmNTJiIHJlbGVhc2UyMy1tYWludAorMzM4MTcgYTg4ZTZkZmJmZDZkMzRmMTA3YmQzNjBmYjVmY2VlN2ViZTY0NWY1NCBsZWdhY3ktdHJ1bmsKKzMzODE4IGZiMmFiY2EyZDJkNTU5YzYxZDZkODgyYmNlMTdhZWI1ZDQzMzg0MDMgcmVsZWFzZTIzLW1haW50CiszMzgxOSA5MmQ2ODA4M2EwZmQ2N2JmYWJlZmNlNzQ0YTk5NDc1NWY2Yjk2NDFiIGxlZ2FjeS10cnVuaworMzM4MTkgOGU2M2M1YTMzZjQ3MGY3YzM2M2UzOGE3YzE2MmQyNDllZGNiMmJiNiByZWxlYXNlMjMtbWFpbnQKKzMzODIwIDQ2MTAzMGU2YmQ2NzZjNWI3ZDk5N2JjNzE2YjQ0YTgyOWZkOWIzOTEgcmVsZWFzZTIzLW1haW50CiszMzgyMSA2N2E5MWY3NTBjNjMxMmNjNGY3ODkzM2FhMjM1YjAzMDRlZmJiN2M1IHJlbGVhc2UyMy1tYWludAorMzM4MjIgOWY2ZTJkZWUxODkyZjczYjkyMDZlYWEyYzZjNTY1MWE2Y2MyOWQyMyBsZWdhY3ktdHJ1bmsKKzMzODIzIDdiOTA2NTcxZGM2OGI0ZjAzYTA2NDExYTQyNDk5MzI5NDkzODdjNmQgcmVsZWFzZTIzLW1haW50CiszMzgyNCBmZTA1N2JlYTg4NTY2OWNkNWQwZWM5YTA1MWNiZjBiN2E1NDE3YWQzIHJlbGVhc2UyMy1tYWludAorMzM4MjUgNDBhYTRhMTBmNDliNmE1YmZmMjAzY2I0MWVjMTQ5ODk1ZTYxZTcyMiBsZWdhY3ktdHJ1bmsKKzMzODI2IDM3NzllYjQ4M2U2YmQ1ZGE0M2YyMTNjOWE1MmUzNDMyMWI1ZTc3NDcgbGVnYWN5LXRydW5rCiszMzgyNyA3MjBmNDRjNmQxMWMyZDE0ZjA1ZGNlYTU0ZWVjNjdkNDUyMjE5ZWExIHJlbGVhc2UyMy1tYWludAorMzM4MjggMTljMGY4MTdjYjQ3NTc1YzA2NWU0NzQ1NTM2ZTI4MWJmOGM5MjYxYyBsZWdhY3ktdHJ1bmsKKzMzODI5IDk5OGIwNjczMGM5ZmIwZTU5Y2QxODUyYTRiOTJhZjM3ZDYxN2U5ZTQgcmVsZWFzZTIzLW1haW50CiszMzgzMCAyMTA2NzZlYzlkNWYxN2VlNjRmZjNhZDczODg4ZTY1ZmZhNjZjMDU1IGxlZ2FjeS10cnVuaworMzM4MzEgMTU5OGZiZTY5M2Y5OWM4NTI2NTMyMGUxMjI4M2E4ZGIzY2VkZmUyNCByZWxlYXNlMjMtbWFpbnQKKzMzODMyIDI5MDMyZjM3ZGM4ZjgyN2YzNTk1ZTE4MmVjNjY2OGE4OWE3M2Y0NDMgbGVnYWN5LXRydW5rCiszMzgzMyA0YjQ2ZDU0NDlkNDk5NTcyMmJjNDc3NDNhNDllZTQ4NmVlZTU2ZGMzIGxlZ2FjeS10cnVuaworMzM4MzQgNjg0MmNlYjM5YTE0NDE2ZDRlYzc3MGQ1OTA0OTI1M2FjYWM4MjhkZSBsZWdhY3ktdHJ1bmsKKzMzODM1IDJjNmY5MmNkZGJhZDlhOWEyZmE0NThmYjU2ZmZiNTIxYzg5ODM3N2YgbGVnYWN5LXRydW5rCiszMzgzNiA1M2Y5MDY5ZmM2NTBlZWFjZmJkOGZmNWVlNjVmZmY5YTNhYmRiMmUyIGxlZ2FjeS10cnVuaworMzM4MzcgYjg2MjNiMmM5YmNlNmFiOTZmMzJkOTBmNmM0N2VlMTkwNTliNzgyOCBsZWdhY3ktdHJ1bmsKKzMzODM4IDgyYTFkM2YyMTBhZGYwOGEwYjY2MTBmYjc2ZGU3M2VjOWI4ODhiMTQgbGVnYWN5LXRydW5rCiszMzgzOSBjMzNkMzY4OWVkNWI2Y2EwYjAzOTIwNTkwNmZkZjdjM2RmOTI2YTAyIGxlZ2FjeS10cnVuaworMzM4NDAgZGUyOGQ5OTI4ODU1NTZkYWU4MTRlZjkzZDZmYTYxMjM1NTRjN2RiMyBsZWdhY3ktdHJ1bmsKKzMzODQxIDVkMGM4N2I5NTcwZDNhY2I3YjE5YjNlMDViYTFiNjk4NmNhNDVlMjkgcmVsZWFzZTIzLW1haW50CiszMzg0MiA1MjNjM2Q2MWRiZGRlNzM0YTBmNTZkYmRiOTRhMDgwMzJiMjMwMDE3IGxlZ2FjeS10cnVuaworMzM4NDIgMzA0YjVhMzY1NTc2MTE0MjE4YjhiYzNkYWZmODZkMTNhMjQ5MDZlMyByZWxlYXNlMjMtbWFpbnQKKzMzODQzIDE4YjY3YWU5Y2Y0NTgyNDM2NzYzYTU4ZDhkYTU5MDRlNmVjMzVmZDIgbGVnYWN5LXRydW5rCiszMzg0NCBkZjY1NDg2MWNjZjZhMTA5ZjQxMzUyYzM2MDRlNmY0Zjg5NWM3ZTAyIGxlZ2FjeS10cnVuaworMzM4NDUgZjc0NmQ1NjkwYWQ2ZDgzOWRmNWI0YTc3MzYxZWQyYTFmYmE4MDFhOCBsZWdhY3ktdHJ1bmsKKzMzODQ2IGFhNWNiOGUzYjllYTViN2Q0ZDAxZTVmMThkMTNhOWZmYzBkYjBlYTEgcmVsZWFzZTIzLW1haW50CiszMzg0NyBmMzY1NGM1YWRhOTQ0OGNhMTUxNDU5MTNiNWFjYmRhMTFmMjU5YjJjIGxlZ2FjeS10cnVuaworMzM4NDggNDZiY2FiMmI3NGU5MjQ4NDliZTZjMWU2ZDI5ZTMwODhjYzY0NjQ0MyBsZWdhY3ktdHJ1bmsKKzMzODQ5IDQ1MDVhMGI5NzI0Y2YxN2QwNTQ4N2ZiZWM3MTYxYWIxNWNjZGY3YzQgcmVsZWFzZTIzLWJyYW5jaAorMzM4NTAgMDU2NzNiMTZiZGI4YzFlOWE5MjkyMzljM2JmMDVmN2JlNTAyZDc5ZiBsZWdhY3ktdHJ1bmsKKzMzODUxIGY0YjRiZjdlODdkN2UwYmU1ZTRmZTRhZWJmZGEwZmIzODZmNmYyNjggcmVsZWFzZTIzLW1haW50CiszMzg1MiBkOWYwMjdkYzY3NmRkOWNkNTUxYzZhMGFhNDE4ZmU2MzQ4MWY3MzQyIGxlZ2FjeS10cnVuaworMzM4NTMgN2NjMGEzMzk0NmEzMDQxNmY0OGU1ODI5MmNlZTY0Njk1MDRkMmYyZiBsZWdhY3ktdHJ1bmsKKzMzODU0IGYwZGZiYzE0MTQ4MzM2YjhmYzZjMDg3ZDc0YWZkZWRlYjI4ZjAyNTYgcmVsZWFzZTIzLW1haW50CiszMzg1NSA1OTBkOGNjYWJhYzdiZDBjMDUyNWQ1ODU4YTdjYWE2NzNkMTE0M2QyIGxlZ2FjeS10cnVuaworMzM4NTYgNmQ3NGYwMDZmODRhY2U4NGM2OWE5MDE4MzZkZmM1Zjg1NmI2ZTcyMiByZWxlYXNlMjMtbWFpbnQKKzMzODU3IDU5YmFkN2VmZmYwMjE2OTQ3MDJjODRiMzI0YjgzMTk5YzhjN2RjNzUgbGVnYWN5LXRydW5rCiszMzg1OCA1Njg2Y2EyOTdmNTVmNGY5Mjc5Y2M3ZDQ2MDNiZTNmOGFkNmY0YTRiIHJlbGVhc2UyMy1tYWludAorMzM4NTkgOWY1M2U1M2YzODgwMjNhMTA0MzhkMTI5ZWQyYTI2MWQzOWMxZjUzNCBsZWdhY3ktdHJ1bmsKKzMzODYwIDA4MTNiMzM2MTBjYzM1YzM5Yzg1MTNmZjdhYzgxOTEyMmI0YWIzOWEgbGVnYWN5LXRydW5rCiszMzg2MSBlMzczNjMwYmZlYWI3NjQwZWJmMTU4MzUxOTliNTZlZTE0OTNjMTYxIHJlbGVhc2UyMy1tYWludAorMzM4NjIgYTQ5YzFiNzYxMDZjZTRhYzhhZjU0Y2Q2MmUwZWEzZWJkYWQzMjIxYiBsZWdhY3ktdHJ1bmsKKzMzODYzIGUzMjgxYjBkZjZhNDFjNTk2NWE4YjQxNzVmMDQ1N2YxOGVkNGFlYTQgbGVnYWN5LXRydW5rCiszMzg2NCBiNjk4MjA5Yjk4Mjc4ODM1NGQzMGQ0YTAwZjI3YzcyYzllMmQ5MGU2IGxlZ2FjeS10cnVuaworMzM4NjUgOWI4OTE2NjMxZWI2OWVjMzJlNWM5YzQyMDU1MmI2ZWY5YTlkNmRlYSByZWxlYXNlMjMtbWFpbnQKKzMzODY2IDQ0NjA5NzlkZWViZjVlYzY1NTMyNjJkNzJiZWFmNzg2ODE1NzQ2MmIgbGVnYWN5LXRydW5rCiszMzg2NyA5NDFkNDlhNjVmMDZmMTIxZmM2YTMyNjJmNmI2ZWI2Zjc4YjI4YzM2IGxlZ2FjeS10cnVuaworMzM4NjggMzMyOWIwNThkYjIwMTJlYzZkYzk3YjBkNWQ1YTIyMmE4OGQ3OWJlNiBsZWdhY3ktdHJ1bmsKKzMzODY5IDU0NjE3ZWQyZDgzMDg3MDIyOTY2ZmY0MTNjMTdjNGYyZDg2YWNhNmIgcmVsZWFzZTIzLW1haW50CiszMzg3MCA0NDM1MzNkMDg3ODNkYzc4ZDZmNzQ4NzY0NWUxMjAxOTkyZGI5ZjE3IGxlZ2FjeS10cnVuaworMzM4NzEgMjliMWQwNzYzNzkwYWY3MGM2YTQ1NzhkMjFmMmEwZDQ5ZDI1ZTdhZSByZWxlYXNlMjMtbWFpbnQKKzMzODcyIDdjYjRhZDU5MzJlNjI2ZGZlNWQ3OGNhNDRiOGQzNjQ1ODlmNTU5NmEgbGVnYWN5LXRydW5rCiszMzg3MyA0NzA4ZmEwODYxMjFmMjNkMjc0Nzg4YmU4ZTk5YmRlNmU4ZWUyZjBlIHJlbGVhc2UyMy1tYWludAorMzM4NzQgZWYyMTY4MWE5YzdmYjYwOTkyODc4M2VlODk5NTg2Nzc4MWI0MDAzMSByZWxlYXNlMjMtbWFpbnQKKzMzODc1IGRjNDI0OWRkOWUzNTNhODIyNWRlZjEyYWRjNzExMjQwZGRmM2U0MDIgbGVnYWN5LXRydW5rCiszMzg3NiA4ZTJlZjI3ZjY4OGI1Mzk2MDYyZjY5MDIwMDExMzc2ODk2ZWJlNGRlIHJlbGVhc2UyMS1tYWludAorMzM4NzcgMmQyNzRkYTA5Mjc0NzY5ZjBiMTJkM2QxNDIxYWI3MjYxN2RhZDBmNiBsZWdhY3ktdHJ1bmsKKzMzODc4IDk0MmNlZWJlOTY3MWFmODY1NDNjOGI1N2NhOTQ2MDFjZTJhZTNkM2IgcmVsZWFzZTIzLW1haW50CiszMzg3OSAzZGRhNTNjMzEyYTVhYWIyM2NkMDk0ZTYzNWMzMmI1OTE1NGU5ZDkzIGxlZ2FjeS10cnVuaworMzM4ODAgYTMzMmRjYzc5MDJiOTYwYWEwMjZhOWJjMzgyN2MzYzA0YTI1NmI2OCBsZWdhY3ktdHJ1bmsKKzMzODgxIDk0MTQ4ODZmNWM3YWRjNjE5OTQ5OWU3YzhiNTdkN2E4MGNlOGRhMTEgbGVnYWN5LXRydW5rCiszMzg4MiAyYTk0MWZmMGExMzY2NWUwMmZlYTE2ODc0MTQwMGFiMTViZmZjNTRjIGxlZ2FjeS10cnVuaworMzM4ODMgYjU1ZDRhM2Y0MWU4NmUzOTg3NTA0NGI0YTk0YjViMWQ2NWJlNWQ0YiByZWxlYXNlMjMtbWFpbnQKKzMzODg0IDNkYjUwZDMxMzQwZDkzYzE4YjM1NTYyNDRkMzM3MjkyMDFkNTkxNzMgbGVnYWN5LXRydW5rCiszMzg4NSA0ZmYzODU3MmQwMzZlNGZhM2ZhMmY0YzdhYTU5YjU2ODA4YWVkNmMwIGxlZ2FjeS10cnVuaworMzM4ODYgNzFkZmQxZTFmMmVjY2QyMThjYjg1NjIxODFkODk2NmE0MjA0NzlmZiByZWxlYXNlMjMtbWFpbnQKKzMzODg3IDYwYWFlOGExZTIzNzI2YTQ1M2E0ZWY4MWFmODUyMjUzOTQzMzc0NGQgcmVsZWFzZTIzLW1haW50CiszMzg4OCA5NDY2NTI5MWFiMWJkMzMxZGQyNzNkZDBmNDVhMWIzZDhlNGIwODViIGxlZ2FjeS10cnVuaworMzM4ODkgY2NiNDBkYThjNDEyYzYwMTg3MzU4ODYwMjgwN2Y3NTU5N2VkNDk4MSByZWxlYXNlMjMtbWFpbnQKKzMzODkwIDdiYzc3MjUyN2U0NGRiOGM5MDNkYWJjZjgxODM5OGU3MzdiNTI5ZTQgbGVnYWN5LXRydW5rCiszMzg5MSBhZjU1MzViMGUwMDllNjY4MzBiMDBhOWY4ZDM0OGI2MjgzNTc2NWFlIHJlbGVhc2UyMy1tYWludAorMzM4OTIgM2VhNTJiYzc0ZDE3MWYzYmU4Y2U4ZDljMGEzMjk0MWQ1ZWQxYjFlZSBsZWdhY3ktdHJ1bmsKKzMzODkzIGQyNzljNDBiZDdiMzZiY2UzMTA4ZTJhNzdhNjdiMzBmODE2YTE1N2QgbGVnYWN5LXRydW5rCiszMzg5NCBhNTVmZWVhM2Y5MjFkYjVhMTBjMDRjOGFlMTNkN2ViODVmMjAwMzRlIGxlZ2FjeS10cnVuaworMzM4OTUgZmQ4MjRkNTc0YThmZGQxMDA1NDc4YTgxMjRjYzYwZDNmMmUzODM5NSBsZWdhY3ktdHJ1bmsKKzMzODk2IDEzMWM1NGYyMDJmZDg0NDYyNDNiNTdkMmYzNWZhZDM3OGY3YTdiNTcgbGVnYWN5LXRydW5rCiszMzg5NyAwZmE5OWQzMWZiNDgxMjBlNDYxY2FhNGNlNGUxYzU1NThmMDE3NDVmIGxlZ2FjeS10cnVuaworMzM4OTggYzEwYTFjZGNlNjJiNTFiNzlhNGY0ZjkzODRiNmVmMTAxNzkzZGJkMiBsZWdhY3ktdHJ1bmsKKzMzODk5IDlhNWQ2ZWI4MWNmYWFmMzc2YmQwNDUzOWRjNWQ5ZjI0Y2I1NWFmZGMgcmVsZWFzZTIzLW1haW50CiszMzkwMCAzYjkwNzRhZDcyM2U0YmYyYTU2OTdjZjdmMjUzMmExMWMyZjA5NDlhIHJlbGVhc2UyMy1tYWludAorMzM5MDEgMzllOTI4ZDAwYjY0Mzk4Yzc3YjQ4ODc5ODk2ZDBkODUyMGE1NTU2ZCByZWxlYXNlMjItbWFpbnQKKzMzOTAyIGQ3ODc3OTE4N2M3ZGYwNDkzNzM4ZGFiZDNlMDI2MDBjMWIzNTQyNTMgcmVsZWFzZTIzLW1haW50CiszMzkwMiBlZjFmMjk3M2ZhZDgwOTA4MjQzMzEzYmQ1NmZmZTlmNWYwN2FlOGEwIHJlbGVhc2UyMi1tYWludAorMzM5MDMgNWM1NGE3OGYxZDUxNTJiMTVkYzEwYTc0M2Y3ZGU3OWZjZTRhNGIyNyByZWxlYXNlMjItbWFpbnQKKzMzOTA0IGJjNjllMGRmZDJhMDM0NDk3YjU2ZWNkMDM5MDdmY2IwZmY4ZDViNzMgbGVnYWN5LXRydW5rCiszMzkwNSA2Njk1Njg4OTkzMDlmZGI4OGM4ODQ1ZTZkMzFjYjJlYzBkOTk3ZjE1IGxlZ2FjeS10cnVuaworMzM5MDYgMjUxZmEwN2ZjNWQxZjVmMmMwMDBmNzJhMzFlZjQ2M2Y3YWU5MzE3MSByZWxlYXNlMjMtbWFpbnQKKzMzOTA3IDRjMGFmMjJhOGYzZDEyNmRiN2E4ZWQ0N2UyNjU5Zjk4ODUyZWE5N2YgbGVnYWN5LXRydW5rCiszMzkwOCA0MWI2YTUzNjdlZTU2NDZiOGVkNmFiNTY1MDU2NTZjNjQ2N2YxOTY2IGxlZ2FjeS10cnVuaworMzM5MDkgZGMwMWNlMmY4NTU4MmRjMjQ1NDllMWM1OTA4ZmUzMTYyMmZkNmU5YyByZWxlYXNlMjMtbWFpbnQKKzMzOTEwIDc1NmI2NWM3OWY0MDAyNDVjMWRiM2Q5YTJhMTk4NzlkNTg0NmM0MmUgcmVsZWFzZTIzLW1haW50CiszMzkxMSAwYWFjMDc2NjM0NDhlMzAwZDViMDgzODJhZjk2ZTMyODU2YmNhYWIzIGxlZ2FjeS10cnVuaworMzM5MTIgZjhlYmFkZTJlNzI0ZGM2MWZjMmI2ZjczYjc4Nzg3MDgxZjczYzZmOSByZWxlYXNlMjMtbWFpbnQKKzMzOTEzIGQyZTRjOTRlZmJhYWIzMTBkMGM0ODc3ZWRhOTU5NTc1NjhmNzVjYTcgbGVnYWN5LXRydW5rCiszMzkxNCBhYzg2YjA3MTdhZDE5NDYzZGUzNzk0NzhkZjIwNTMzMTc4MTNmNGZlIGxlZ2FjeS10cnVuaworMzM5MTUgMGZlNjBmYTYxN2Q4ZGM3MDQxZDc1ZmE5OTgyZWUxYTdlZmQ0OGJjOCByZWxlYXNlMjMtbWFpbnQKKzMzOTE2IDJkYjhjNjNlNjljZDY0ZjJiOWEyZDBkNzk1MzljOTVhMTZjYWQ0OTcgbGVnYWN5LXRydW5rCiszMzkxNyA2YzFlNDdkNTRhN2EzMDFkODNlM2I3Y2U4OWU1MjkxM2IzYWU1MTQzIGxlZ2FjeS10cnVuaworMzM5MTggYTM4MDYxMGVlYjVhYzc5NWRhMzk5ZTI5YTk2MDRhNjdhYjQwZjY0MiByZWxlYXNlMjMtbWFpbnQKKzMzOTE5IGQxNWQ0NGQ5ZDZmNWNkZDVkOGExYmY4N2ExODE2MzljMDFiYjBjOGIgcmVsZWFzZTIzLW1haW50CiszMzkyMCA1ZTkzYTRmNmQ5YTk5ZmEyM2EyNTkzNDY2YjQ5MGNhMDJiMzMyNWU0IGxlZ2FjeS10cnVuaworMzM5MjEgYjUxOTAzNTAwNmM3MTk4MGMwNTM2NTMxM2ZmOTczOWJmYzU1NzgxNyBhc3QtYnJhbmNoCiszMzkyMiBlNGZmMGRiM2IwODg2ZDAzZGY0N2RiODFiNjViZTZmMzEwNDNjNTNhIGFzdC1icmFuY2gKKzMzOTIzIGFjMGRiMDM0ZGQxNGJkN2YwZDQ1MDQ3MzU2MTQ2M2NiOWMxMmVkYzIgbGVnYWN5LXRydW5rCiszMzkyNCA4NDgxYzliYWY3ODVkNWQyZDcwMjI5NWVmMWYzY2UwN2M5MjJiOGMxIHJlbGVhc2UyMy1tYWludAorMzM5MjUgN2FiMWE0MWYxNmRhYjE1MzAwMzZjMTI2N2E2NGU3ZjEwZmNjMDJlMCBsZWdhY3ktdHJ1bmsKKzMzOTI2IDIxZDNiMDZkZjc5M2NiMWFjNjg1OTFjNmI2NWZiNmRiMDU2YThkYzIgcmVsZWFzZTIzLW1haW50CiszMzkyNyA4Mjg3ZjUyMmJlYTE3ODRjZGQ1MzFhNmYzZjI1YjFmNWI3YjYxODY1IGxlZ2FjeS10cnVuaworMzM5MjggZGY4Y2JkZTVjNTg4Mjk4YjVmY2U5YjA1NzNmMDgwOWVkOTMyZTQ5ZCByZWxlYXNlMjMtbWFpbnQKKzMzOTI5IDA1NmYxNmE3YWJiMDM0OTY5OTU2NzIyMjNiNmFlMzRiYTY3Y2IwYzUgcmVsZWFzZTIyLW1haW50CiszMzkzMCA0MDAwY2M2ZGE5MjUyMjA3YWI4OWZkYjlmODU4NGYyZmM1ZDM1MzA3IHJlbGVhc2UyMy1tYWludAorMzM5MzEgYTVmNjA2ZjljYTA1NzFhMjRlZTNmMDgxZGRlYzkwMzY0YjI1YzlmMSBsZWdhY3ktdHJ1bmsKKzMzOTMyIGMwNmRmZmI2YTk4MjI5MTQxZjM0MjBkZTQxZDMyMGJmNDFkNDU4YWIgbGVnYWN5LXRydW5rCiszMzkzMyBlODE3MzU0MjM5M2ZjNDczNWUxNjFlZmYyN2EwOTU5NGJiN2E0MWFmIHJlbGVhc2UyMy1tYWludAorMzM5MzQgMjQzNDFjYjIxZmQ1Y2IxOGYzZjNlN2NkZTVhM2FmMDNmMDIyZTZlNiBsZWdhY3ktdHJ1bmsKKzMzOTM1IDgwNjE3OTQwMGYzNTRlZGJjMWVjMzMzZjljZWI2OGM4YzQxNDA5ZGUgbGVnYWN5LXRydW5rCiszMzkzNiBjMzBlZDEzZDM1ODIwOWEzYjg0YjIxMDgyMmY3YTcxZmJiNGZhYTM2IGxlZ2FjeS10cnVuaworMzM5MzcgYTBmNTNhMDY5NDcwMzUzYWE1ODI0MWNjZTQ5ZDExMGZiNGQyNjlmYyBsZWdhY3ktdHJ1bmsKKzMzOTM4IDEwOWQ2M2Y3MDM3YzkzYTNmZGQxMWFiYWJiMGQ3OTkyZDQxYzlhZWIgcmVsZWFzZTIzLW1haW50CiszMzkzOSA0OTY5NjhmMzY0OWU4YzEzODQ0OGJmMTMxMTdkYWE5NzUzOTdkYzcxIGxlZ2FjeS10cnVuaworMzM5NDAgZGQ0NTFhNjNmODllNTlhMTYxODczOTBiYjczY2E0ZWQ3ZTVhMjI5YyBsZWdhY3ktdHJ1bmsKKzMzOTQxIGI5NDBhYjlhMmFiZjQ0ZjNlOTk4NDU0Y2UzNzRmYTAyNzJjNTViMjMgcmVsZWFzZTIzLWJyYW5jaAorMzM5NDIgZGZiZDI4MTEyZTA5N2NkYTY1YmIyMjAwNzBjZTI0NmIzMGMxODgyZiBsZWdhY3ktdHJ1bmsKKzMzOTQzIGQ4Yjc2ODc4MDRiMjM3ZDg2NjMwYTE0N2E4YmNjM2FkM2QxN2NlOGYgcmVsZWFzZTIzLWJyYW5jaAorMzM5NDQgYzQ3ZjVhYzhiMDZkZDNkZGVhNmRlNTczMTEwODA3NWJkOTdlZmU2MiBsZWdhY3ktdHJ1bmsKKzMzOTQ1IDNkNGE1NTAzZTQ2ZDkxMmMzODczYTAyOTkxMzY3MTJiYzA1YTM2MWQgbGVnYWN5LXRydW5rCiszMzk0NiA3ZjM0NjUyZDcxNjEyYWVjZWFkODM2NWMyODcyNjhmMmZlYzI5Zjk1IGxlZ2FjeS10cnVuaworMzM5NDcgYzQ1MzU4OTM1ZWQzZmZmOGZhMDllMTdhZWE3MzQzNGIxODJlMWNlYiBsZWdhY3ktdHJ1bmsKKzMzOTQ4IDQyMTQ3MTRhYmFjYmYyMzk0ZjZiZGY3YzFhZjI4ZjdjYzU5MDA1ZTIgcmVsZWFzZTIzLW1haW50CiszMzk0OSBhNTcwYmI5ZjEzM2Y3MDkyODRmY2Y1YWM5ZTNjZDZlNDgxMDA0Zjk4IGxlZ2FjeS10cnVuaworMzM5NTAgZTgzNTc1YmIyOWRhOTA2ODVmMDg4YzFjNjcyY2I3ZmMyYzY2MGZlMSByZWxlYXNlMjMtbWFpbnQKKzMzOTUxIGYxZWEzMTExMjdjZjE1OTc5MGI5ODliZTA1OGU3MDZhNTE3YTg5ZTAgbGVnYWN5LXRydW5rCiszMzk1MiAzZmIzNzQ3Y2UzMDRjMTkxNzNlMDAxNTAyMzY5ZjQ5OTUyZmQ2Y2I1IHJlbGVhc2UyMy1tYWludAorMzM5NTMgN2Y2NjBmYTI4OGFhYmZlOTkzMTRhODA3MjJhZDZhNjdiNzlkNmRmOCByZWxlYXNlMjMtbWFpbnQKKzMzOTU0IDUzYTMyMmM2ZGU1MjJhOTA5MDQ5YzQ0YjAwYjAxMmFjMDUyM2MwNzEgbGVnYWN5LXRydW5rCiszMzk1NSA5ZTNkNTFiZWM1M2EyN2U5NmFkOWZhYmVkZGFjODE4NDc5ZGNmYTVmIGxlZ2FjeS10cnVuaworMzM5NTYgNDk3NjU5NDUwNTM0OGVhNDk2NGJjY2NjNDUzNjU5OTA5M2FiOTEzYyByZWxlYXNlMjMtbWFpbnQKKzMzOTU3IDk3ZjNkNjY1NThmYjhlYTcxNGE3YmMxN2EyMWQ4NzdmYzNiMDMyZGYgcmVsZWFzZTIzLW1haW50CiszMzk1OCA5NTY5NWNjNDVjZGQyZWFkNWRjYzYyMjU4MmIwMmU5ZGUyMGRhMWIzIGxlZ2FjeS10cnVuaworMzM5NTkgOTk1MWI2ZTlhM2VhNTdiZTRiODNmNTMzY2I5ODJlMTZhN2NmYjFmYiBsZWdhY3ktdHJ1bmsKKzMzOTYwIGJmMmFhN2RlNDM3ZDM0NmFlOTg2MDliNzAxNjA0OTM3YWMzZDIyZjAgcmVsZWFzZTIzLW1haW50CiszMzk2MSA4MzBjMGNkOGZkYjIyMDIyMWZkZWEwZDkyZjQyMGM3ZjcwYzcxOTkxIGxlZ2FjeS10cnVuaworMzM5NjIgMGRmYWZhYTEwNDAxYzE1Yzk0YjI2NTYzYTFiNzJkNzI0YjMwYTNiMSByZWxlYXNlMjMtbWFpbnQKKzMzOTYzIDY2NjU0YWM2OTYyMmYxYjE5OGRhYWY0MmZjN2Y2ODE0YjUyM2QwNDAgbGVnYWN5LXRydW5rCiszMzk2NCAzYTUwZjgzNjlhZDU2NGUzNjhjMmU3MTgyYzgzYjEyMjVmNDEyYzc1IHJlbGVhc2UyMy1tYWludAorMzM5NjUgNzE4ZTE0ODg4NzFkNDAzMTUxYzA1NDBkMmJjNzljZTZkMzExZmNhNSBsZWdhY3ktdHJ1bmsKKzMzOTY2IGY5NjI0Zjk0MDYxYTdlNTBlNmUyY2E3YWQ1MzQ4OGYwYmJhMDU4ODMgcmVsZWFzZTIzLW1haW50CiszMzk2NyBkYTFiMTkxYjBhNmEyZDk1MDkzYTRlMjJlMjYyYTM3MDI5MDA5MGYxIGxlZ2FjeS10cnVuaworMzM5NjggYTU1ZWI1NGE1NmQwYmM1N2NkZmUzZjY3OGI3NTU3YTk3ODliNzAyNCByZWxlYXNlMjMtbWFpbnQKKzMzOTY5IDM3YTQ1MDJmMTYxMDc0ZjZkNmY1ZWJlMWY4YjliZjQ1ZDZjNGU3ZDEgbGVnYWN5LXRydW5rCiszMzk3MCA5ZGM1ZTcxNTk2ZjdmYzEzMjAyNmUwYjkxYzlhYThkZjE2ZWYyMzA3IHJlbGVhc2UyMy1tYWludAorMzM5NzEgZWJiODNmMjY2ZmE0ZjJkNDhjNzYyMmRiM2IyN2Y2OWE4MTAzNjUwMiBsZWdhY3ktdHJ1bmsKKzMzOTcyIDI3MDA1MmY2ZjBlMWVlMGYwZTcxZmQ5ZjY0ZDRjMTMxZDEyOTQ0NzIgcmVsZWFzZTIzLW1haW50CiszMzk3MyA3YjU3NzM3N2Q1NDZmZTY3NzNlMjRmOTYyNGJiNzgxMGI2MjUxNTNiIGxlZ2FjeS10cnVuaworMzM5NzQgOTQ4ZmQzNGViMDUwOTZjMDM4MjAxZjNlNDE3YjI2OGRiYTk0MGJlNCByZWxlYXNlMjMtbWFpbnQKKzMzOTc1IDExNGQ2OTNhNWI4OTNlZjM1ODlkYjNhNDA2ZmM1OTEzMjQ5MDUzMDIgcmVsZWFzZTIzLW1haW50CiszMzk3NiA1MTc0NDI3OTQ1OGZiMDA0OWE0NTJlOWY2YjA1MWU1N2MxNGY0ZTJkIGxlZ2FjeS10cnVuaworMzM5NzcgNTc5NTFiYTVlOWIxMDc5OWRkMDQ5MTM4Y2FkOWJjMmIyZTIyMjYxZCBsZWdhY3ktdHJ1bmsKKzMzOTc3IDBjMTNiYTUzNTkxODJmMmE0NjlhYjFlMDEwZmI4Zjg2NmVkYmJiOGIgcmVsZWFzZTIzLW1haW50CiszMzk3OCA0MzZkNTc3MmI4N2ZmZjllODIzZDg4MDEzMThlZjQ4NDkwZWY4OThiIGxlZ2FjeS10cnVuaworMzM5NzkgMGYyNmFmN2MzYjUyYjFlYzk2MWY4YmNjZmZiNWVmZGIzNGRkMmZlYiBsZWdhY3ktdHJ1bmsKKzMzOTc5IDVjMGE3MDRlMWJlNGQ3ZWRkMjNlM2MwNDdjNGFhZDEzYzBjNTcwMWYgcmVsZWFzZTIzLW1haW50CiszMzk4MCBhNDA1MWFkNzY2NmU1ZDVmM2VmYzc5NjNlNzQyZTlmMWE4ZGYwOWY1IGxlZ2FjeS10cnVuaworMzM5ODEgODkzNzVhMTNhMThjOGFlOTdjZDE4NGQ0YTg0YTczOGVhYjNlMzQ4OCByZWxlYXNlMjMtbWFpbnQKKzMzOTgyIDI0NGI1NWM5MGUwZjMwNjZlMmQzMzg5MzJiMjAyYWNlYjlmZWFkMDQgbGVnYWN5LXRydW5rCiszMzk4MyA3ZDIzMjk4MWQzZTM4YzQ2ZjA5M2I3Njg1YmY5MjM1ZWQxZWJjNDQ5IHJlbGVhc2UyMy1tYWludAorMzM5ODQgZmY4MDVhMTQ3YjZhOTE4OTg4ZjM1NDA0ZTYzOTMwODUwOTE2NTcwOCBsZWdhY3ktdHJ1bmsKKzMzOTg1IGIxNzdjOTZlZTM1MDNiYTg5YTJjYmE4YzNhMmZmY2E3MDI2ZGUyM2UgcmVsZWFzZTIzLW1haW50CiszMzk4NiA2NmJhMGUwZWMyMDI2OThlMDMzZmNjZGMxNzE4ZWNjMTRjY2E2MzBhIGxlZ2FjeS10cnVuaworMzM5ODcgYTc0YjQ2M2JmNzZkYTdmMzFjOGZiZmY5NTQ3YzAwZTIxMTk1Yzk0OSBsZWdhY3ktdHJ1bmsKKzMzOTg4IDg0OTg4ZTdiYzdiN2JiYTk1NGMyZWQ3ZmZmNTgwODU4NzMyOGUyOGMgcmVsZWFzZTIzLW1haW50CiszMzk4OSA3MTdjYzJjOWZkNjBlYzc5MDA5ZjllNTdmMmQyMzY3NGQ1OWU3NTExIGxlZ2FjeS10cnVuaworMzM5ODkgNWVkNDBmMmY2NWZiNWFkZWQ4MjY3NDUwNTAxYjRmY2NkZGIwOTk5MSByZWxlYXNlMjMtbWFpbnQKKzMzOTkwIDlhMGFhMWRiZjM1MTQ3MGMxOTJkNDVjYTVkMGUzMDk5OWRkZDAyNjkgbGVnYWN5LXRydW5rCiszMzk5MSA2MzEwMGNjM2YxNWFmNDBhZmE3MTJhMWQ0NjQ3NDUzYjNjZjVlNWNkIHJlbGVhc2UyMy1tYWludAorMzM5OTIgY2MyZDllYTRlYmQ1MGZjNjQ4ZmQ1YWM0ZTVjYTZjZDlhMjdhNWQ0MiByZWxlYXNlMjMtbWFpbnQKKzMzOTkzIGRmMDA5M2E1OTg1YzNjYjE4ZTFiZmI4ZjI1NDRlYjdkNWUzNGZmMDggcmVsZWFzZTIzLW1haW50CiszMzk5NCAyMjUwMmY3OTViNDljODM3NmU2MTcxODg4NTI4NDBiYWZjZTE4N2UzIGxlZ2FjeS10cnVuaworMzM5OTUgNGE1OTEyMmE2NjQ2YTFjYjA2MGMyN2QyZGIyNjBjODIwZTVjMWE1ZCByZWxlYXNlMjMtbWFpbnQKKzMzOTk2IDFkNmQ2ZmI3ZjEwYjc3YmNlYjFjMjVhMmM2ODI3OTk0NzYxODhlOTMgbGVnYWN5LXRydW5rCiszMzk5NyA4MDkxYmQ5MmVlMDE1YmM2MGRjOWZlYjA3MGU0NzRkNTA3ZDYxN2Q0IHJlbGVhc2UyMy1tYWludAorMzM5OTggNGI0YjU4MWIzYjJjODMxNDRkZjcyYzg5MGM3Mzg3ZDE5MzI5MzkwOCBsZWdhY3ktdHJ1bmsKKzMzOTk5IDI2ZDNmNWI4N2FkM2RmYWU3ODdkYzg4ODIwZTUwZTZmM2U2NWViM2UgcmVsZWFzZTIzLWJyYW5jaAorMzQwMDAgMjkwNTY0NmEyYWYzNzU3YjA5MTYzZjZjODAwMTVlMGM4YTcxNjEyYyBsZWdhY3ktdHJ1bmsKKzM0MDAxIDc5YjFhOWVjNTIyMzEwMTJlMmE0ZjY3M2FmNzczZjg2Njk1MDAyZDcgbGVnYWN5LXRydW5rCiszNDAwMiA2NDZmMGYxMWM1MTliNTZhMzEzNzhlNjM2YTVkYWVlMTJkMzUyNmYxIGxlZ2FjeS10cnVuaworMzQwMDMgMTE1ZmFjOWQ5MDQ1NmI5YjU4NTk1ZjlkZGVhNGQyY2Q3OGY5NmFmNyBsZWdhY3ktdHJ1bmsKKzM0MDA0IDUyZjRmMmE4Y2NlNzlkYTM3Y2Q4YThjMDhkZjgxNDMzZDMxMmE5NTQgcmVsZWFzZTIzLW1haW50CiszNDAwNSA1NWE0YTQxNzI3M2VkMTIwNzdjMjQ2NzBhZjI3N2I0MTM0MjMyNmI3IHJlbGVhc2UyMy1tYWludAorMzQwMDYgZGRlNTk0ZjcwZDZjZTRjMWRhOGQ3NzJhNDQ2YmQ4NjUyMzA5OGZiMCBsZWdhY3ktdHJ1bmsKKzM0MDA3IGJmYzk3NGRlZjQ3NDAxYzEzMTk2MTY2ODhjM2VkMWYyYzdkODMzYTMgbGVnYWN5LXRydW5rCiszNDAwOCA3MDBjMGNhNDI5ZWZjZDQ5NGVhMzViYzY1NGYxZmI5MzhmOGFmNDA4IGxlZ2FjeS10cnVuaworMzQwMDkgNmRkOWM3YzVhYTEzZDQzZmI0ZTAzZDcwZGYyYzA1ODVkYmQyYzdmMCByZWxlYXNlMjItbWFpbnQKKzM0MDEwIGRhNDM0YjUzNzY2NDkyODRiZmIxMzExOTdmODM4YjE1Mjk4MjgzMGIgcmVsZWFzZTIyLW1haW50CiszNDAxMSA3N2RhOWY4NzNhNGZlNDE3MTdkYzY4NDc2N2U4MTAzNWQ0ZDAwYTgwIHJlbGVhc2UyMi1tYWludAorMzQwMTIgZjQyOTU1NTllYTgzNmFiNTcxYjNmNGVkOGVjNDM3ODA4NDZmZTBkZCByZWxlYXNlMjMtbWFpbnQKKzM0MDEzIGNiMjgxNTM4MzczY2FkMTYyMTZhMDUzNDA2MjJlMDE2YjVjMzQ5NDggcmVsZWFzZTIzLW1haW50CiszNDAxNCAyNGM2MmY1M2ExYzkyOTE0YWIwNDgwZWI3MGY4ZGY3YThmYWU0YzUxIHJlbGVhc2UyMy1tYWludAorMzQwMTUgNDFmZjJjMTNlYTRhOThhNzllNzg5MTVmYjQ2MjEwNWU4MjljOGE5MiBsZWdhY3ktdHJ1bmsKKzM0MDE2IDE3OTNiNjVhNjIzMGZlNDZhYmIzM2NiMDE3YjkzNjQxNTkyYzY1YzggcmVsZWFzZTIzLW1haW50CiszNDAxNyBjMTZjNTUzODYwYzJkZWZiNDg3MzkxZWFlNWQ1ODY2ZmEzM2FiZWQyIGxlZ2FjeS10cnVuaworMzQwMTggZmVkNjUwMTE4OGRhNDI3ZGE2ZWZmZjI2YzQ5ZWNhZDk4NWZhMjNhNCByZWxlYXNlMjMtbWFpbnQKKzM0MDE5IDc0YmMzNDkzY2UwMzUyYmZiNzhkNmIwMzFhMzE4MGNjZDM4ZDg5NjMgbGVnYWN5LXRydW5rCiszNDAyMCBmMDAzZTQ4ZjU2MmRkNDVhY2NiNGQ2OTRlMThiYmFiN2FlMzJmNGE1IGxlZ2FjeS10cnVuaworMzQwMjEgN2UzYTFkM2M5MGY1MzBhZTAzNDNlMWY5ZTVhNzQ4NDNiZmM2NDlkOCBsZWdhY3ktdHJ1bmsKKzM0MDIyIDY3OTBjZjc4NWY4YzVjM2VhYjEzNGMwZjU4MTQxMTlmMWUyOTc4ZTggcmVsZWFzZTIzLW1haW50CiszNDAyMyAzM2RkMTJiMmViZTZkNjY3MDYyMDAwOWNhYWY2ZGYxOGFkZWZiOWM4IGxlZ2FjeS10cnVuaworMzQwMjQgMTNhOTE0ZTBjNWMxNDRjNjc5NTNlNmI3YTliZmJjZTY4YWExZDZlMSByZWxlYXNlMjMtbWFpbnQKKzM0MDI1IDE5NjExZDEwMWQyMzEyOWExZmIxOTY4YmZlM2NhZDU2MWEzNDhlYWMgbGVnYWN5LXRydW5rCiszNDAyNiBjMjUwN2ZlMmU2OWUxMTg4MDI2ZDc5MDQ3NjA4NGJmMTdhMWEyNGY3IHJlbGVhc2UyMy1tYWludAorMzQwMjcgNzcwZmU4M2JmODlmNjU2ZDlmNmI5OWI5N2NlMWY2YjBmZWY1Nzc2OCBsZWdhY3ktdHJ1bmsKKzM0MDI4IDE2YzU5MmQzMTZjMmE5NGQwY2YxMDIyYmM4YjU1ZTA5MTdhYTI1OTQgcmVsZWFzZTIzLW1haW50CiszNDAyOSA1MjFkMDI2YTgwNDhjOTNlZmQzZjQ0ZDc4NzliYmU1YjljMDM4ZTYwIGxlZ2FjeS10cnVuaworMzQwMzAgMjE0ZGY2MmJjZjEzYThmOWYwMzQzOTczMjBhY2UxODNiMjFjMDk0NCByZWxlYXNlMjMtbWFpbnQKKzM0MDMxIDk2M2M2ODBlZDliMjBiNjJmZGNjYzU4Y2ZjODY2MjQ0OGU1ZGU1ODQgbGVnYWN5LXRydW5rCiszNDAzMiAwYmVhOWQzODkyOWRjMzk0NDgyZjNmMDM4MTljZjhhZmZjN2ZlOGFiIGxlZ2FjeS10cnVuaworMzQwMzMgMDYwNzVmMWJkOTQ1YjY1MzYwNTIwYzVhZDY5NmQxYWVmM2Y5Mzk3YyBsZWdhY3ktdHJ1bmsKKzM0MDM0IGQ1YTZiNjM2N2JiMWMxZjY0OTRmNWRjZGVkZTI1NTVlNzgzODVjMTAgbGVnYWN5LXRydW5rCiszNDAzNSBhNjQwYmZlZWI5YjU2MzUyOTdiZjQ2ODk2M2I2MWI0ZWUwNTIyMDdmIGxlZ2FjeS10cnVuaworMzQwMzYgNzhiYWI4ZmM4ZWQ1Y2ZmMjA2Y2ViYjNlNzEzN2JiMjQ4YjYzN2MyYyBsZWdhY3ktdHJ1bmsKKzM0MDM3IDJhODI5MTRiMDhjNWUwZTI2ZDA3NGUxMmUyNDUwNDE2NmJkODY5YjQgbGVnYWN5LXRydW5rCiszNDAzOCA3ZGNjNDU0YTcwYzNiMDc3ZTUzYjMyNWIxZDdlY2I0NTBiMTQ3MGE0IGxlZ2FjeS10cnVuaworMzQwMzkgMmVjOTJmZWJjZDFhOGY2ZDg0MzgxNDhkMjRlYTEyMjRlYTFlMmFhYSBsZWdhY3ktdHJ1bmsKKzM0MDQwIDE2Y2U3ZTk0N2EzNDQyYjE1MmQyZGIwY2Q2YTBiZjIxNjI0MDMwZGEgbGVnYWN5LXRydW5rCiszNDA0MSA2Yjg0ODAyYzk1MjQyNGNlYjA0ZmEzZTc5ZTBmM2QxNzVjODJmYzFmIGxlZ2FjeS10cnVuaworMzQwNDIgYjUzMzIyNGYxMzczZjczNTc3MDhjYjk1YTc4ZmUzYWJmYTZlN2RmMiByZWxlYXNlMjMtbWFpbnQKKzM0MDQzIDNhZmJjMzM5NzU2YTZiN2JlNjdmOWRkN2Y1NjcxYmE5ZDg5YWU0M2EgbGVnYWN5LXRydW5rCiszNDA0NCAzODdhOWUxODQwNzRhYWY4YjVmMTFkZWUwYzUzNWEzZjI4MTIwMDE4IGxlZ2FjeS10cnVuaworMzQwNDUgYzQyOTQ0ZWE5NzQzZTY3YmZmNGEyMzBiYmQ4Njk2YzBhMmE1ZjM3MSBsZWdhY3ktdHJ1bmsKKzM0MDQ2IDU2MjA4OWE4Njc4ZjI4MDI2MzA5YWYzNDNkYWYzMzAxMGI2YTQ5N2UgbGVnYWN5LXRydW5rCiszNDA0NyAwNWE4NTA5Y2ZiM2NiMTk1YTgwMzJmODcwZGQxZDU1Yjc5YWFmMDc4IHJlbGVhc2UyMy1tYWludAorMzQwNDggNjNkZjc0MzA1ZDdiZjRiOTMwNmIzZjFhNjdiNDIwNWZlNTNjYzc2OSByZWxlYXNlMjMtbWFpbnQKKzM0MDQ5IGExMWUxY2IzMDY0NDU2ODNjZDUyNmEzZjBhZmU2ZmU4MzgyY2EyYTAgbGVnYWN5LXRydW5rCiszNDA1MCA4ZWQwY2U2MmI4MmYxOTVkMTM5OTE4Y2ZhY2U0NTYwNWJlMWU2MDBkIGxlZ2FjeS10cnVuaworMzQwNTEgZDVkYWJkMTUxNzUzYTU0MDAwYjE2ZWFkNDM2ZDJiN2EyNjlkZDI3ZCByZWxlYXNlMjMtbWFpbnQKKzM0MDUyIDIwNWNjOTE4ZjFhY2E4ZWZiNTdlN2JhOWMyYmFlNGI4NjBiMTU3ZjYgcmVsZWFzZTIyLW1haW50CiszNDA1MyBkNTllY2EyZWZhNmEwZDQ0ZWQ3YTdjNDY1OWZkYzQ0NDIxYmNiZDhkIGxlZ2FjeS10cnVuaworMzQwNTQgMDA0NTNhMDUwOGRmZTc2N2I1ZjU1NjliNTZhYzA0OWQwYzQ4NmMxZiBsZWdhY3ktdHJ1bmsKKzM0MDU1IGFhZjZiNmE4NTEwYmVhMGJlNzg3ODRkZGZlMjc5YmI2ZTJjMTdlYWEgbGVnYWN5LXRydW5rCiszNDA1NiBmNmZjNmQwY2YxZTVhZTczYjg2NDU5MWIzOWE0YjQyNDA2ODJiNDQyIGxlZ2FjeS10cnVuaworMzQwNTcgODA0ZDFjZDFiMDZkZWI0NGM0YTQ5YjFhOTQ1OGM1OGRlNTMyYWVkOCByZWxlYXNlMjMtbWFpbnQKKzM0MDU4IGQ2MTUzNjAzNDcyZTNjMmQ1MmMxOGNkMDJhMDk4Y2I4NThkNDg3ZWQgbGVnYWN5LXRydW5rCiszNDA1OSBmODZkODYzNjg3YzYwNjM1MTQyNjY0MDI3YThhM2NlMTdjOGI1NmI0IHJlbGVhc2UyMy1tYWludAorMzQwNjAgMDg5MWQyMmFkZjRmNGI4YzUwOTdjY2RlMDVmNDA4ZmNiY2M0OTU3ZCBsZWdhY3ktdHJ1bmsKKzM0MDYxIDFkZTFkYTNlZTNlODdkZDJiYmUwNTYyMWNmMjRjMDYyOWJlZWE0NTIgcmVsZWFzZTIzLW1haW50CiszNDA2MiA4YjlhOGM0ZGUyOGU2YjViNzQ5ODEzYmJlMjY2MWI1M2YzNTMxOGRjIGxlZ2FjeS10cnVuaworMzQwNjMgMDZlYWVmN2QwMmYyMWUzNDQxZThmMjQwMTIzZDg2OWRkYTkxZWFlNCByZWxlYXNlMjMtbWFpbnQKKzM0MDY0IGU1YmQ1MGM3ZTE5MzM2YjQ0YTMwMzM2ZDQ1Y2M2MzI0OWUxMDNkMDEgbGVnYWN5LXRydW5rCiszNDA2NSA3NTA0ODEyZmRiN2ViMWM5ZTIyOTRiZmUxZGU4YjcxNTg2ZGIwMTM2IGxlZ2FjeS10cnVuaworMzQwNjYgZjE0ZTI1MTM2OWIyZDVjODhjZTdkMWU2M2Q4MjJjMTNmYTY4MzVlOSByZWxlYXNlMjMtbWFpbnQKKzM0MDY3IDg1ZTY0MjU0M2RkYWE2YzI5OTdiNDE0NjFiM2JhMGE1ZjAzODcwZmQgbGVnYWN5LXRydW5rCiszNDA2OCA0NDU0NzM2YzZhODJlYTYzYjRjMTliYjRhMjI1MThkOTUwMWViNjhjIHJlbGVhc2UyMy1tYWludAorMzQwNjkgYmU5NTgyNzM0YjU2YWUxZjFhNjEzNDNlNmJiZTFiNzgzMzBjYjJiOCBsZWdhY3ktdHJ1bmsKKzM0MDcwIDM4ZTg3NTM1MzRiNzk3NDAwMDM2OGE5MGZjNGExMWM1ZTJkNzM2ZjggbGVnYWN5LXRydW5rCiszNDA3MSAyMWIyYTIxNTkwNDZkYmNmZmU1ZTIyY2YwNDZkMjVhMTMxNDAzMmM1IHJlbGVhc2UyMy1tYWludAorMzQwNzIgOGRjOTRiZDliODNhZTA2NDVkY2FmNGQ3MmEzYjdhNTdhNGRjYTNjZSByZWxlYXNlMjMtbWFpbnQKKzM0MDczIDgwYTRiOGY2YWUwZTUyYzQ2MTIwOTlkNWNmMThhYjNlYWVmNTViNjAgbGVnYWN5LXRydW5rCiszNDA3NCA0NmJkYjY2YWRjZGI3NjIwMjlkYmM2NzUxMjliNTE2ZWNhYWUyNzQ2IGxlZ2FjeS10cnVuaworMzQwNzUgMDVlOGI1MDNjZDQxNGUyYjM2YTdmMTQwMTlmM2Q5MWM2ODc2NGZiYyBsZWdhY3ktdHJ1bmsKKzM0MDc2IDRhZThiNjVjYWJhODg4OWVkNjlhMWExZWNkYWQyMjI1MDc2YWEzOTYgcmVsZWFzZTIzLW1haW50CiszNDA3NyBjM2IyY2Q2ZWYyN2Y4OGQ5OWQxYmZlMGExY2E3MWU4NDYwNDk4MWE3IHJlbGVhc2UyMy1tYWludAorMzQwNzggZTRjYzIzMmVkNTgzMGRiMjVlMmJjOWZkMDFlODM1OWNlY2VlMjMwYSBsZWdhY3ktdHJ1bmsKKzM0MDc5IDNiNzkzY2Y3NDhjNTY5MDU3OGJlMjk4ZGM5MDUyN2MyZWVkMTM2NTcgcmVsZWFzZTIzLW1haW50CiszNDA4MCBkYzUxYWJjM2YxNzQ2ZDUxOGI5MDFlNTQ3NGViZWZiZmI4NzEwZjc3IHJlbGVhc2UyMy1tYWludAorMzQwODEgZGIzMWQyNWIxMzdhNDMzNjg1ZDYyZGRiZDVkZjljZDY3MWFhOGFlNCByZWxlYXNlMjMtbWFpbnQKKzM0MDgyIGNmN2ZhZDlkNmZjYzM0YTg4NzVkYmIzN2FhMTllYzM5NWZkZTg1ZDUgbGVnYWN5LXRydW5rCiszNDA4MiBkMDVhZjE1NjJjNjRmMTk4MTZiMjZkOTU4ZGI5ZjRjOGYwZDQyMjA3IHJlbGVhc2UyMy1tYWludAorMzQwODMgNGFhODRhOGIxZmU0OTdkNzI0NTZjYzY0OWZkNjgxMzQ2ZTY0NmFhNiBsZWdhY3ktdHJ1bmsKKzM0MDg0IDNlZGNjZTBlZmM1NGI4YzI1NDZhN2I0YzFjMjBmNTU3MGFlYzVjZTkgcmVsZWFzZTIzLW1haW50CiszNDA4NSA1MTU1YjM4NTAyZDQ4MzFhM2VkNTE2ZjEzMWZkYzgxNWM1NDA1M2RkIGxlZ2FjeS10cnVuaworMzQwODYgMzVmOTI0OTY1MGU2YjVjOWQ3OWI4ZjM5ZDgyYmFmMWU2YzFhNjVjZiByZWxlYXNlMjMtbWFpbnQKKzM0MDg3IDBjMzY4ZWMwY2NjYjQ0ZGU2NWNkN2NjOGNjMjI3MjlkMTZhYTkyNmQgcmVsZWFzZTIzLW1haW50CiszNDA4OCBhY2NjMjUxY2RjNGE5ZWMwYWM2ZjI4MDUyNjFhMTY1M2ZkMDNkNDE5IGxlZ2FjeS10cnVuaworMzQwODkgYTUyYTA3NGU4YWU1ZGIxNTRmOWVjMDBkYTUzOTFjZGIwYmJlN2Q3NCBsZWdhY3ktdHJ1bmsKKzM0MDkwIDE5ODdiODU1Y2QzYTBjM2UyMTU4MmZlNzRkMTZmMTM4ZmJkNDVkM2IgcmVsZWFzZTIzLW1haW50CiszNDA5MSBmZTFjZDM3OTVhN2E5M2FlNmVhZDdkMDI2MmM0ZDE1ZTRhMDFlNDY2IGxlZ2FjeS10cnVuaworMzQwOTIgOTkzZTNjYTM0NjU2MGMxZTFiZTI4MzJjMjk5YjVlYTkzMDFkODhiNCByZWxlYXNlMjMtbWFpbnQKKzM0MDkzIGYxNWExMWNmODUzMTYzY2VlYTFjYjU0ZjIwYWE3NDAyYWZjODk0ZDkgbGVnYWN5LXRydW5rCiszNDA5NCAyODBiMGExZTMxZTM2NDFjNDlmNGY5NzQyYTNmNDExMjgxYWVkNzg1IHJlbGVhc2UyMy1tYWludAorMzQwOTUgMWU4NmYyZjcxMmYyMTkzZjg2MTIwZDZmMDIwOGU2M2NhMDMzZmI5MyBsZWdhY3ktdHJ1bmsKKzM0MDk2IDU4ZmZiNmI5ZjZjNTcyZTUxN2I5NzQ0NGFkOGVjNWY5MjY3Mjg4ZjYgbGVnYWN5LXRydW5rCiszNDA5NyBjOTcyZDllNDMxNjg4ZTQ0NjMxNTZjZmNjNDQ4OGM4OGIwMjg2OTIxIHJlbGVhc2UyMy1tYWludAorMzQwOTggNmE5MTAxNDcxYWQzNzFiODExZTdjNzNhM2NkYTA2NThmYWQ1YjY4NSBsZWdhY3ktdHJ1bmsKKzM0MDk5IGFhNzg3ZTM2MTJiYmM2ZmE1ZjcyOTRiZjBhMjg4NWI2ZmQ0Njc1MjUgcmVsZWFzZTIzLW1haW50CiszNDEwMCAwMDM5OTI4YTBmODQzOWJiM2ViMGQxNDAzN2I2NDliNjE4NTc4MmEyIGxlZ2FjeS10cnVuaworMzQxMDEgZTM4ZWM0Y2I4N2U5YzE2NDI3YmY1M2UzMzg4MmE4MzdlN2VlNWM4ZSByZWxlYXNlMjMtbWFpbnQKKzM0MTAyIGQwMzliMWJiMWVhOTdmNTIxMWQ5NjBmZDI2N2E0YmQ3MDNmNDJhZDUgbGVnYWN5LXRydW5rCiszNDEwMyA2MjE1M2U4MjU2NGJhMzEzZDdjNjkzNDNiZTU3NWFkNDNhNDAxYjQ0IHJlbGVhc2UyMy1tYWludAorMzQxMDQgZTQ0YTM1OWM4OThlMGMxNTAzMDc5MTZhNGI4YjdiOTk0Y2U5MDc4MSBsZWdhY3ktdHJ1bmsKKzM0MTA1IDEwYmE2NTY3ODUyZmQwNjhmZjcwMGZjNWU0MzAwYWFlNzkxMmQyMWYgbGVnYWN5LXRydW5rCiszNDEwNiA5NGYyNTI4MzNlMTMxNGYwZTk2NTI1NGMxMjFkNjVlMTAxZmY1MzYzIHJlbGVhc2UyMy1tYWludAorMzQxMDcgZmQxNjAxODQwN2U3ZTUzNDQ0NzlkODcxOWRkNjYzYmU0ZmRmYjZkOSBsZWdhY3ktdHJ1bmsKKzM0MTA4IDk2NzU2OTQ4ZDFjOTI0OTRiOTAyNjg0NjVjNDEyNDYwN2FiODFhNjYgcmVsZWFzZTIzLW1haW50CiszNDEwOSAxMWMzMjA5NWMzMDU2MWMxMDQxZDMyNTExYWE1M2Y0OWZhOTdhNTUxIGxlZ2FjeS10cnVuaworMzQxMTAgYTQzMGJlNjgzYTdhZDMzYjViNWQyMDk5N2MyYThiY2NkN2MyYTRkMSBsZWdhY3ktdHJ1bmsKKzM0MTExIGE2ODc3ZmZkOTU4MmQ4YWUwMzM0NDc3NWYxNmJlNDMwMzMwZjI3Y2UgbGVnYWN5LXRydW5rCiszNDExMiA1NGFiMTk1NWQyNDJlMzQ5ZDc4MjEzNzYzZGI3YmNjNjY2YjcyYjdmIGxlZ2FjeS10cnVuaworMzQxMTMgZGQ5OGYyOWNmYzk4NjMzMGQyOWJhMjc3Y2YwZmZlNzg2Mzc5M2ZjYSBsZWdhY3ktdHJ1bmsKKzM0MTE0IDc3NzNlYTdiMWM2NzQ5MWQ4NTNlZGE0M2JkMzljMTI3ZGY5NGVhMDQgcmVsZWFzZTIzLW1haW50CiszNDExNSBiODczN2EzMTA1MGNhM2NjNWQwYmMzNzM0YjY0NWMwYWE1NDY2MDk2IGxlZ2FjeS10cnVuaworMzQxMTYgNjJhZTIxOTE0NGM0ZjYyY2U1YWZiZWMwMTFkNmY5ZTUzZWMxNDY1YiBsZWdhY3ktdHJ1bmsKKzM0MTE3IDA0NTE3NGY2YTc5ZGIzM2JiMTA3NDM0YTYxNWYzYTcyZDc2YTU3MWUgbGVnYWN5LXRydW5rCiszNDExOCA0MWJiYmI0ODk3NjRjOGM2ZjdkYjM5ZTIyODE3Y2UxY2YyZmI2NmUwIGxlZ2FjeS10cnVuaworMzQxMTkgMzRiZDVjMTk4Y2FmODcyNDkwNjhkZjI5MjkyZDQ4NDgwZTk3MTU0MCBsZWdhY3ktdHJ1bmsKKzM0MTIwIDY4ZTFmODYwNTZiYzM0OWI3ZWNjM2I4MjU0MmVkODdjYmFkMmZkNTEgbGVnYWN5LXRydW5rCiszNDEyMSA1M2YxYzMyZWU2OWQ3NWMyNmY1NGIzMWVhMWU1OGMzNmNmODM3NzFiIGxlZ2FjeS10cnVuaworMzQxMjIgZTE3YzQ0Yzc5YjAzZTcxOTg3NTEwYzFhNTIxNDdkYWU3ZDIzYmY4OCByZWxlYXNlMjMtbWFpbnQKKzM0MTIzIDM3ZjBlMGIxNDAwMzg1NWI5MGEwYWJiZTdmZmEyMjc3YzFjZjc2ODQgbGVnYWN5LXRydW5rCiszNDEyNCAyMGQ5Nzg4NWU1Yzg5MzRkNDlkMDRjZTNkM2YzOGEyM2FkYzIwYzAyIGxlZ2FjeS10cnVuaworMzQxMjUgMjM5MjFiYzgxMjRiYmM1YzA2NzkyNGUwNmMyMDJhZGMxZTYxYzhmMyByZWxlYXNlMjMtbWFpbnQKKzM0MTI2IGM2OGViNGQ0Yjc4NzllMjA0ODJkMzMxYWNjZDJiZDQ3NDA4MjgzM2UgbGVnYWN5LXRydW5rCiszNDEyNyBmNDRkOGFkZGQzZTg2YTFlZTA3MmRjZDlkYWUxODFkYjM2OTVjODMyIGxlZ2FjeS10cnVuaworMzQxMjggMTNlYzhjNDc5ZmYxMDNiNDliMzcwMjExMzQzMTMxYTg5YjhkMzEwMyBsZWdhY3ktdHJ1bmsKKzM0MTI5IDM5YmU5OWM2NzdkNWUyNzg1MjYxNTEzOWZhMjE0MTlkNzE3Mjk1NjkgcmVsZWFzZTIzLW1haW50CiszNDEzMCA0ZDIwNGZjM2FkMzJmMGEzODRkZDZjMmJjOWZkMTBlNjMxNDQ4MjNiIGxlZ2FjeS10cnVuaworMzQxMzEgNzQzM2U3YzllMmNhNDUzMzVjMWZiNjU2NDIxYjFmOWQ0OTZmOWE0NyBsZWdhY3ktdHJ1bmsKKzM0MTMyIDQ2MjdjMTY4NDlhZWRjOWI1NWJlMDVmZWRiZjcwMWNlMzRmMDNkMmIgYXN0LWJyYW5jaAorMzQxMzMgYTI3NGI5MDM1ZDFlYWUyMzkwYThkNzJmOWI1OWQ0MDg5MTM0N2U5ZiBhc3QtYnJhbmNoCiszNDEzNCAxZWRiNTQ3MzgwOWU2YjhmNGU2MjEwNWRjZmM1ZTY2ZWM1OTFmNDk3IGFzdC1icmFuY2gKKzM0MTM1IDk1YWI1NWQxNDI1NmY2ODAyOTIwNjBhNzU4ZDkyYjA5MzA1M2JlN2UgbGVnYWN5LXRydW5rCiszNDEzNiBkODY0ZjMxNjhjYWNmY2I1ZDBiYTY2YWJmNmM1Nzc1ZmE0ODllNzE1IGxlZ2FjeS10cnVuaworMzQxMzcgMmY1ODIyZDBmOGUxNWMwYmJhNWQ1YzkwM2YwZTcwYzc2MTM3ZDRmOSByZWxlYXNlMjMtYnJhbmNoCiszNDEzOCA3OTkxOWM1NTBkZmVkZGFlNzg1MDkxN2JkYjUxOTM4OGFiMzRjYzk4IHJlbGVhc2UyMy1tYWludAorMzQxMzkgMGExNTBlYThjYmVhMjhmNGNiODBjMzVlN2Y0YjI1M2M4YTAyYWZkMyBsZWdhY3ktdHJ1bmsKKzM0MTQwIGMyYzEwZjFlYjhlMmI3NGJiYzg0Y2E0NzZkMTAwZTE5MzRiN2ZmMjcgbGVnYWN5LXRydW5rCiszNDE0MSBjOWNjMzUyNDkzMjJkNzhmMTEzMzU2YjI3ZDQ0MWY1OGU4ZThkYzk1IGxlZ2FjeS10cnVuaworMzQxNDIgYThmMDRjYmY2NTljYjAyNmNjMmI4MWMzZTRjZDBiNGEyYWM0YWYxMSBsZWdhY3ktdHJ1bmsKKzM0MTQzIGNkMGMzZjkxNmIzNGNjZjI2OWU1NmQyZThjNDZlZDI0MTM3NDhjNjEgbGVnYWN5LXRydW5rCiszNDE0NCBlODE0N2Y4NDFhNGFiMmRhM2U3ZGIxYzZlMDk4YjE2NzFmNmVlMDYyIGxlZ2FjeS10cnVuaworMzQxNDUgYzlmOWViMTNlYWM5MzA1ZWJhMTM0ZDgxMWQ4NDU2MGVkYjY4ZjJmMSByZWxlYXNlMjMtbWFpbnQKKzM0MTQ2IDE3MjU0NzBkMGQ0M2NhYjJjOGQxNzAwZmEwY2Y5ODlmYTE3YTA5YTUgbGVnYWN5LXRydW5rCiszNDE0NyBlZDhiM2MwMjgxNzRiMDUyNmJhYTNiZmRiYTNmNTJjYjcxM2U4ZGEyIHJlbGVhc2UyMy1tYWludAorMzQxNDggNmJmYjgyYmZiYjU2Y2RkZmMzMWEyMjFkMzE4ZjExNGUxMGJjOTM2NCByZWxlYXNlMjMtbWFpbnQKKzM0MTQ5IDQxYzJlMTcyM2NkZGQ3YWMxN2M3ZGRhZDA2ZjBmNDM2ODg4NjJmNTQgbGVnYWN5LXRydW5rCiszNDE1MCBlZjRhNzFmNWFmMjIzOGViYjZhYjQ4Y2MwOWQ5YTVkMmZiMWM4MzA3IHJlbGVhc2UyMy1tYWludAorMzQxNTEgMzBlNDk1ZWZlOTBhMzY1ZDIwNTMyNGFmYjY5YjQ1YTUxNWQyZmI5NSBsZWdhY3ktdHJ1bmsKKzM0MTUyIDc4NGUzOGFiZWQ4MjAzMTZlYjA4NjMxNmY2M2YwZDJmNzAyNTE4ZjYgcmVsZWFzZTIzLW1haW50CiszNDE1MyA3NmU5OThhZWU2NDQ2NTg1ZjE4YTM0ZjRiNzBkODE3ODk1ZGFhMGZjIGxlZ2FjeS10cnVuaworMzQxNTQgNTliMGE0OGE1NjQ0NTA3YjNjNjkzYThiZjc0ZDk2MDI5OTZiNjk1OCByZWxlYXNlMjMtbWFpbnQKKzM0MTU1IGY4OWFiNzk4NTNhNzBjMzllMTlmNTNmM2U5ZjU4ODM5NGUyNzkzYzQgbGVnYWN5LXRydW5rCiszNDE1NiAwYjBhZDdkMWRkZDZhOTg1MzBmNGM4YTRjOGMxZGU0N2YzYzU4NzViIGxlZ2FjeS10cnVuaworMzQxNTcgNzJiZmM3ODZhNGY4OTJkNTEzZjMwNWYwN2YwMTYxOGE0MWM0Y2JjOSByZWxlYXNlMjMtbWFpbnQKKzM0MTU4IGE4YTFiZWY0MDdlYjI2Y2M4YmU0YjMxNGM5ZjVjNWE2Yjc1YjQzOWUgcmVsZWFzZTIzLW1haW50CiszNDE1OSA2NjIyMzNlNjZkMjgyZWNhMDdmNzZiZjE2MmViYTk3MWI2NDMxMDQ4IHJlbGVhc2UyMi1tYWludAorMzQxNjAgN2NiNjc0NWJlNTI1YzBhODRlYzBiMTliMTQ0NDZhMDAzNDI0M2JjMyBsZWdhY3ktdHJ1bmsKKzM0MTYxIDJhNDk3MDljMGQ1NjNlNGJkYzI0NjU1MDgxYTE0MTdlNzYyMjg2NTIgbGVnYWN5LXRydW5rCiszNDE2MiA4MzRiYjlhMTU0MTliMGY2MWQ5MWI3ZjczZTlkZjFiMzNmZTNlNGMwIHJlbGVhc2UyMy1tYWludAorMzQxNjMgYjM5Y2I5MjEyZjVjODhjYzIzZTg0OWEyZTc1YjkxMDAzNGIxNjkzYSBsZWdhY3ktdHJ1bmsKKzM0MTY0IGJhMWUwM2NkMmY0MGZhMTJjMzE5ZWZhYzc0NWQ0OGY4MjljM2RjZWIgcmVsZWFzZTIzLW1haW50CiszNDE2NSBhODVhNzAxMmRkZGE3M2NlZjVkMGZkNmZmMjU1ZmNhMzc3MTUzNTBhIHJlbGVhc2UyMy1tYWludAorMzQxNjYgMGNhZDkwOTRlMjNlOWNiNzEyNzkwZWFlOTI2MmZlNTg3YzUzZTMyMiByZWxlYXNlMjMtbWFpbnQKKzM0MTY3IGJiYTdlMWUwZjFjNzUzYTgyMjAwZGQwM2UwZDRmYjEyZGYyMWY3ZTEgbGVnYWN5LXRydW5rCiszNDE2OCA5MWZmNzI3MDNlZDM1YWFkZjY1ZDRkYWE5ZjQxNzcwYzdjYjAwYWFhIHJlbGVhc2UyMy1tYWludAorMzQxNjkgOTIzM2FkMGVhYTk4NDZhYWI3ZTU4ODY1NWVjMmIwZmU3MDdhYmU0YyBsZWdhY3ktdHJ1bmsKKzM0MTcwIDYxZGJhMGFhOWUzNzRkZjIyOTUwZmFkNDkzMTI3YmVhMTM4OGU4YmUgbGVnYWN5LXRydW5rCiszNDE3MSAxZDYzMTA2ZTdkZmE0ODgzYzFjMGE0ZjgwMWEzNTNiNmYzMTk2Mjc3IHJlbGVhc2UyMy1tYWludAorMzQxNzIgZDVjNDViOGRhYTUyYmMxOGZkMDk1ZDcyZGI3ZWI5NTczYWRhNWI0NyBsZWdhY3ktdHJ1bmsKKzM0MTczIDhkMjFmYjJlMjZiMDY5Mzk3MzQ5YjgzMDkxNDI4MTVmYTk2MmI2MjggcmVsZWFzZTIzLW1haW50CiszNDE3NCA2NWJhYzU5YTM5MjgwNjhlN2Y5Mzg1YjdkZDI5YzljM2QzNmMzOTcwIGxlZ2FjeS10cnVuaworMzQxNzUgY2I3MjM2OTkyMGFjYWMxNmIxNDMxYWQ0MjU5YzMwOTgxMDBmY2NlNCByZWxlYXNlMjMtbWFpbnQKKzM0MTc2IGQ3ZjEzYTQ5ZTVlZjY4YTJiNTQ4YWQzNjA5ZGU4NWQwYmM5MmE3Y2MgbGVnYWN5LXRydW5rCiszNDE3NyA1ZjkyZDY2MDdiOWYwYmEyNDU2OThkNTZkNjI1ZWFiNjE2NjQ4ZmUyIHJlbGVhc2UyMy1tYWludAorMzQxNzggMWE4MTc2OTRlY2JkN2U0OWZjOTE1YTVlYmE5ZGQ1NmMxOWY5YmI0ZCBsZWdhY3ktdHJ1bmsKKzM0MTc5IDUxOGNjYzA2NGNiOWYzMmI2YTYxZjQ5YzYyZDAwZWIyM2M2MmE3MDQgbGVnYWN5LXRydW5rCiszNDE4MCBhMzdiMjM3MTRkM2RkZGI1OTZlMWVmYzE1ZTE5MzU0NGRmYWUzMmU3IHJlbGVhc2UyMy1tYWludAorMzQxODEgNTU4NTdhZWJjMjRmMjNmMmYyZTBlODg1MmQ0NGVkMjA0OWY2ZDczMCBsZWdhY3ktdHJ1bmsKKzM0MTgyIDFlMWU2ODVkNjllZjc4YmRiOTkxNzY3MDk4MWVhN2ZmYTJmZGQ0YmMgbGVnYWN5LXRydW5rCiszNDE4MyA5NGQ4MjkzNjc0NzM3MDNiMThkOWRhYTU0YjAzZDAzZWEwNTMxZmY1IGxlZ2FjeS10cnVuaworMzQxODQgMDg0NDA4ZmVlOTYxNGU1NDgzZWZlZjBlNmY1OTJlNWMwYTAzNzY4MiBsZWdhY3ktdHJ1bmsKKzM0MTg1IDQyNWJmMDdlYTcwYjhjMmQxZTZhMWJhOTFmYzliYjNiMjUxMmUwZjkgbGVnYWN5LXRydW5rCiszNDE4NiA4ZGQwN2Y3ZDA5M2I3YTAwNTJmYTczZGQ2MjUxM2I3MGMxOTM4NTBjIGxlZ2FjeS10cnVuaworMzQxODggMTg1YzVmNmI2MTU3ODQwYjA1NDFhYzAxYjI3ODVlNzZiNWMzOTVlNSBsZWdhY3ktdHJ1bmsKKzM0MTkwIGRiYTZlZjMwNGFhNDQwODgwNmYyYWRhMzA4YjdmZDliMjI0ZDk4MjUgYXN0LWJyYW5jaAorMzQxOTEgNzZkOWQxOGVmM2U0OTVhYjBiMGY2ZTM4MmMyMWQ5OTc0ZDQ0OWM0MCByZWxlYXNlMjMtbWFpbnQKKzM0MTkyIDA3ZTY0MGM0MDE2ZGZlMzhkMjI1YWE0MmJkODY4ZWMwOTFkODYxNWQgcmVsZWFzZTIzLW1haW50CiszNDE5MyBiMjkxOWE0YzU1OGM2ZjQwOGEyM2NiNmEzYTlmNmU1NGIxMDZiYmExIGxlZ2FjeS10cnVuaworMzQxOTQgMmYzZjU2ZjEyODBmY2VjZGFjMDlmYzEzMTVmOGQ5MWQxMDY3Y2I3OCByZWxlYXNlMjMtbWFpbnQKKzM0MTk1IDlkZjliZDQzMGMzNmQyYzgzOGMxNmNhNWEwODE2ZjdiZjZiY2RkNjcgcmVsZWFzZTIzLW1haW50CiszNDE5NiA3N2FjNDU1ODBjNDA4ZDU4NjJmNDZmZmIwZTJhZTZjNzY1ZTQ1YjRkIHJlbGVhc2UyMy1tYWludAorMzQxOTcgNTFlODVlOGJmYTQ3MzJhYzk4MDY2OWIzMTRkYjI2MjdkNjNhODljNyBsZWdhY3ktdHJ1bmsKKzM0MTk4IGM0OGEyY2M5Mzc4MGY0MWE3N2FhZmNlYjdhMGE4MTE2MzQ3MDMwNzkgbGVnYWN5LXRydW5rCiszNDE5OSAxYTc5MmYzNmI2OWUzNmE0YzViZWZhNjFhMjM3ZmJmNWJlODBiN2E1IHJlbGVhc2UyMy1tYWludAorMzQyMDAgMDIyNTdmNmE2ODJhNzgzMTdlZjQ2Zjk1ZmYxM2JkNmNlMTQ1Yzg4OSBsZWdhY3ktdHJ1bmsKKzM0MjAxIDFiYzZlZjFmNmJkYjQ3OTFhOTg0NTFmM2U4YmEyN2E1ZTI5M2JiNzUgcmVsZWFzZTIzLW1haW50CiszNDIwMiBkN2JmMTIzMmE4NmQxNDRkNGJhMTcwYjUwN2I2ZDJiMGY4MTk0ZmVlIHJlbGVhc2UyMy1tYWludAorMzQyMDMgYjBjM2Q5ODZmNjNmNzU4MzUzMTBkNjdkYjkzMTk0YzNhODEzODRkNyBsZWdhY3ktdHJ1bmsKKzM0MjA0IGE3YzRhYTgxZWI4NWMwMTBhN2I4NTlkMzczMzMxMTBhMTZiNTA3YzggcmVsZWFzZTIzLW1haW50CiszNDIwNSA3Njk3OWFmYzc4NWJkNjNkMDA2NjFiZmQ1ZGMxMmViMDNkYjZlOTdkIHJlbGVhc2UyMi1tYWludAorMzQyMDYgYWQyNTNjMDZiYWYxZDRhZjJhMzIxMzk3Y2Q2NDc2Y2YyNDEzYmZkMiByZWxlYXNlMjMtbWFpbnQKKzM0MjA3IDA5NjdjYjkwNTM0Y2M2YTdlZTE4NjNiODgwZTBhMzBjNDNlMDQ3YTEgbGVnYWN5LXRydW5rCiszNDIwOCBlMmI5ZDQzNmY4ZjdhZjljYWJmMTBkYTY5ZWUwNjQzZGU4YmY0ZjA1IHJlbGVhc2UyMy1tYWludAorMzQyMDkgM2YyODk2NGY4ZWNjYzk0MDEzZTg2OGQyMzBjNzFlZTVjZDI4ZTJkYiBsZWdhY3ktdHJ1bmsKKzM0MjEwIDg3MTc3NmQzODIxM2E5MDY3YzZkOWJhZjg5MThlYWRiYzE3ZDM4OWYgbGVnYWN5LXRydW5rCiszNDIxMSAxNzc2NTg3ODVmZWI4ZDI2MzE1YTkxZGNlODk3YzZiOTU4ZTI1MjA3IGxlZ2FjeS10cnVuaworMzQyMTIgODM2MGM3NGQwNTNiYWQ1YmJlMDMzOWZjM2NiOWU0MWM4OGNhNjUzNiByZWxlYXNlMjMtbWFpbnQKKzM0MjEzIDVjNWFkYjU0NDNjY2U4OTgxNGJkZTBlZDczMDM4MGNlZDM1NjUxMzggcmVsZWFzZTIzLW1haW50CiszNDIxNCBkNmY0ZGQ1YTUwMDZiOWYxMzY2NzY1NGQzOTM4NTVmN2FkMTI5ZmJhIHJlbGVhc2UyMy1tYWludAorMzQyMTUgMzM5Yzg4MDRmODA0YThlZTQ1MWViODViYjJjMzMzNzdlODM1YjNkNSBsZWdhY3ktdHJ1bmsKKzM0MjE2IDU4ZjAxY2MwZjMwMGFiMThmMTQ4MWVjNDA2NmNmMzc5YzIzZDY0ZTkgbGVnYWN5LXRydW5rCiszNDIxNyA1OGY5NmEwMGQzOGRjMDAyYWRlODE4OGU0ZjRlZTY0MGFmYmUwZjBjIHJlbGVhc2UyMy1tYWludAorMzQyMTggMjU0YmQzZTg5MWY2ZDk1OTFjOTFlMGY4YmIxOTgzMTA0ZjY1MDJjMiBsZWdhY3ktdHJ1bmsKKzM0MjE5IDBlZDFlYWNlMmE2MGJhZWE3NGRjZDVlMTZiZDM5ZGNjY2U2Yzk5MTIgcmVsZWFzZTIzLW1haW50CiszNDIyMCBmNGEwMWM0MDVhNDRiNjE3MDVhMTNjZjc1OTZlNWU5YmRmMjI5NTcxIHJlbGVhc2UyMy1tYWludAorMzQyMjEgY2U4ZDFmOTUxZTE5MmZlYzhmNDY3ZTM1MDRhYmQ0NjU1NzQ5Y2QzNSBsZWdhY3ktdHJ1bmsKKzM0MjIyIGQ3NTU5MmY2ZTJmN2NmZTBlYmQ4NzkzMDE0MzI0MjE1MTk2NTcxODIgbGVnYWN5LXRydW5rCiszNDIyMyA5NTRiNjA5Yjg0Y2QwOTk2ZmI0ZmQzZmI0ZTgwN2RhNzViZjM3MjkwIHJlbGVhc2UyMy1tYWludAorMzQyMjQgNzc0YTlmMjFlZGI5N2Q0NDhlNmE1NTlhNjM1MjY3MTFhOWRhOTA0MSByZWxlYXNlMjMtbWFpbnQKKzM0MjI1IGU5NzIzMGU1YzFjYTkwZjc3Y2EyNzUyNjhjZWZmNDhhZjkyNzQ5MWEgcmVsZWFzZTIzLW1haW50CiszNDIyNiA5MzFlODg4OTkxYmFiNzQxMTA4YjBmODZmOThhMDE2YTgxOWQ3OGJlIGxlZ2FjeS10cnVuaworMzQyMjcgZjNjZTE5ZDk2MWRkYTZlNTNmZTQ3N2I2MDg4NTA1MDY1M2I4YWEyNyByZWxlYXNlMjMtbWFpbnQKKzM0MjI4IDUzODNkNTYyYTM4ZDgxYmUyZThmYmE0MGU3ZTUzZDk5MTQxNDE5ZDQgbGVnYWN5LXRydW5rCiszNDIyOSA2ZTFmN2RiZWNkODRkNTNiNDlmZDgwNDM3YjAzNTBkY2VkOTZhZDMxIHJlbGVhc2UyMy1tYWludAorMzQyMzAgYzk3MDA4ZWU3MTY2MDc0YjA0OTk4MmQ4OTNkNjJkZDdkYTA5MGE4ZSByZWxlYXNlMjMtbWFpbnQKKzM0MjMxIGIyNzI4Yzg3ZGY5ZmJmMjMzNDc4YTNmNzU2ODk2OTBlNjljYWRjMWYgcmVsZWFzZTIzLW1haW50CiszNDIzMiAyNmNjNTg2NWE4MzY2MzNiZjNmMGZmYzNmN2MzNTk0MTg5ZDY0NWVkIHJlbGVhc2UyMy1tYWludAorMzQyMzMgYTFiOTY1ZTFiYmU5ZDhmNGQ4NmI0ZTlkOGMxN2IzNTg1MzRlY2IxMyByZWxlYXNlMjMtbWFpbnQKKzM0MjM0IDgxNmQ0ODY3ZjIxMDY1ZTFiMzkyYThhOTg2OGQxN2Y0ZmQwMDQ0ODYgcmVsZWFzZTIzLW1haW50CiszNDIzNSA3ZTYwZDgyNzMwZmQ4YWQ0MTYzNzE5YzYyNWRjOWFkZmJmOTYwOGY5IGxlZ2FjeS10cnVuaworMzQyMzYgMDE4MmNlYzUwOGFhYjRmZjllODE5YTJkNzdlMTQwNTA2ZjE0ODI1OCBsZWdhY3ktdHJ1bmsKKzM0MjM3IGRiNjNjYjBmYzdkYTE3OWE0YTMyYTI0YmMyYTRlN2ZhMTAxMGZiNmQgbGVnYWN5LXRydW5rCiszNDIzOCA5YzJlYjQxNTEzMGYzNGQzZmU1ZWQ3NDdmNzUzMmYxZDIyODUyNDcwIHJlbGVhc2UyMy1tYWludAorMzQyMzkgNzM4OWZmNTc3ODczOTBiMzQ3MzIxMWQ3ZmQ1NjkwYTE4YmU0MjAzZCByZWxlYXNlMjMtbWFpbnQKKzM0MjQwIGI5MmIzN2IwMWZmYjE2MDgzMzRlZDlhZTI2YzMyMDA1Y2M1NzA4ZDIgcmVsZWFzZTIzLW1haW50CiszNDI0MSBlNWJhY2I5NTk3ZjdiNDRhYTdkYzBkMmQ0MjBhOTU4ZGI2NzRjYzI1IGxlZ2FjeS10cnVuaworMzQyNDIgZmJhZDNlZmE0MGJiZGNmNmQ0Yjk2YTM5ZTA1MmQ2MTZjYTRhYjA3MiBsZWdhY3ktdHJ1bmsKKzM0MjQzIDYyYzZhZmUzN2QxMjNhYTNhODRhMDE3YzkwYmY3Nzc5ZDIxNTNmY2UgbGVnYWN5LXRydW5rCiszNDI0NCA5MjllNTQ4MTc0YzVmYWU5M2JjOTBmNTBiNjIxYTBmYWJhZGUxOTdiIHJlbGVhc2UyMy1tYWludAorMzQyNDUgZGJlODM5MWVkMDZmMjM5YjQzOWQ1Y2UxMmIyYmJiOTcwNDdhODA3OCByZWxlYXNlMjMtbWFpbnQKKzM0MjQ1IGZhNjVmNjUyN2ZlMTM0YWE5N2UwM2UxYjJhZjM2NWQ0NDNiNjdkYzcgcmVsZWFzZTIzLW1haW50CiszNDI0NyBkYTliNzQwN2U1NmMyYWFlOWQyNDY2YzBjNGE2NWQwMGJhOWU0YWU4IGxlZ2FjeS10cnVuaworMzQyNDggYTE1YjFjM2MyMzZhNGIyNGM5NjkyODUwZTBhNDUzZDU1MzU4ZTYxMSBsZWdhY3ktdHJ1bmsKKzM0MjQ5IDcxNzAyNGRiYmJhYzdkODdjZGM0ODIzYzYwZDk5Y2E4YTYxNzc0MTQgbGVnYWN5LXRydW5rCiszNDI1MCAyYTE2NWRkZjIyMmRjNDI5Yjc1OGUyNzcxMjU2MDc0ODI2OGRlOTY3IGxlZ2FjeS10cnVuaworMzQyNTEgNTI5MGE0OTM2MTcwZGM4OGZjMzhmOGY3MzYyYTJhNGM1ODNlMDIwMSBsZWdhY3ktdHJ1bmsKKzM0MjUyIGJiODI1MTFkMTkwNmEyNzk4YjIwNThkNTkyZjZiNmU4OGEwMTUxZWQgbGVnYWN5LXRydW5rCiszNDI1MyA2OTNkMTdkZmI4ZmQ0OGQ1MjI2NGFiZDk4MDU2NzQ4N2RiODk2NWE5IGxlZ2FjeS10cnVuaworMzQyNTQgNTYzOTA4OTFkOTg4Yzg3NTllYTEwYzkwNGQzMTQ1NzFlMTgyMGJkOCBsZWdhY3ktdHJ1bmsKKzM0MjU1IDljZDRmNGFlN2E0YzJiOGNkY2UzYWE2NGE3YzE0NzcwZjlmNjZjNmUgbGVnYWN5LXRydW5rCiszNDI1NiA1ZWM0MjMzZWRjZWRjNDcyNTVhNGQxMWM3ZjBkODY2MjJlZmJiMjA1IGxlZ2FjeS10cnVuaworMzQyNTcgNzAzNzgyZDkwMTYxM2M2MDhhYTY5NTIzYzJiZjVlNTcwOWIyYzgzYiBsZWdhY3ktdHJ1bmsKKzM0MjU4IDVkMmJhNDM3ZTFiZDNiMzRhZDU3NWNhNzNlODlmZGJlM2MxZjkwNmEgcmVsZWFzZTIzLW1haW50CiszNDI1OSBlMmY1MGE3Y2M0OTRmOTA3NDkyODFmMzNiMzhjZWJiZGQ2ZWYzNTgzIGxlZ2FjeS10cnVuaworMzQyNjAgMmNlOWY4OWM0YmJjOWI1N2I0Zjk3ZDc2NzJhYWY5MTRjOTkxOGMwMSByZWxlYXNlMjItbWFpbnQKKzM0MjYxIGRkZTI3NmE4OGM4OGEwZDRiYTI1NjkzMTQ3OTdkY2VhYjRjODZjMGIgbGVnYWN5LXRydW5rCiszNDI2MiAzNjFiNTBhMGQyN2ZhZDdiNGNmZWNmZmI4NmYyMWVlNTY5YzY2OWY5IHJlbGVhc2UyMy1tYWludAorMzQyNjMgMzMyYmZmMjc1YjIxOGM0ZThkMWQ3ODNhZDIyZjM3M2E0MTNlOGQ4YSByZWxlYXNlMjMtbWFpbnQKKzM0MjY0IGFkMThmNWI4ZDZmNGM2MWIyYWE3Nzg2YzU0NzVmMjE0ODVhNDNlZmEgcmVsZWFzZTIzLW1haW50CiszNDI2NSA4YzlmNDhiYTUwZmExNjUxMjg2ZDg2ZDcxNzA1YTM2OTM5MmEzZGI0IHJlbGVhc2UyMy1tYWludAorMzQyNjYgMDQ1NzA0OWYyNWUwYTBhMTc3YzNlNTE2MDA0M2Y4YzU3N2JiNDE0OCBsZWdhY3ktdHJ1bmsKKzM0MjY3IGI3YTIxMzVmYzE1NmFhNjFhNzEwMmU2MDYxOWNhOTQ1Y2E3Y2RlMmIgbGVnYWN5LXRydW5rCiszNDI2OCAwMzJiOTI1ODg4NWI3MTgyOTNlNGM3ZWIzOWM0MDdiMzRkZWRiMGMyIHJlbGVhc2UyMy1tYWludAorMzQyNjkgYTU2NzFhZWNmMzkwMTNjNmM2OTA1MDRjNzQ4NTZhOTZhNjJhMDdlOCBsZWdhY3ktdHJ1bmsKKzM0MjcwIGE1NjZjNDliNzBmYWY5ZjY3NGI0N2YyNGYxM2Q0ZTQ5OGYwMTg3NmEgcmVsZWFzZTIzLW1haW50CiszNDI3MSA4NTI5ZWFjNTA2NWQyMTY5N2ZlN2Y3NWEyYjE5MTBiMzRhZmE3MTc4IGxlZ2FjeS10cnVuaworMzQyNzIgZDk2ZTdmODJkMzk5OTk5NGJhOGU1NmE0NDA4NTQ1NjEwMDQ0NjE5MCByZWxlYXNlMjMtbWFpbnQKKzM0MjczIGUxYmFhMjQ5YjNmMjNkOTIyNDllNWJjYjQwZGZlZGYwNDMzOGNkZTUgcmVsZWFzZTIzLW1haW50CiszNDI3NCA2ZjMzNDNkZTY1YjIyYzczMTZhNzZjNjY2ODc2YzBmYzhmZjAzOWIxIHJlbGVhc2UyMy1tYWludAorMzQyNzUgMTJkYTM0ZWY4ODU0ZmIxMzRkZjFmODg3NjdhZjM3YmJmODk2MTUyOCBsZWdhY3ktdHJ1bmsKKzM0Mjc2IDdmNDhlODk0MzllMGJlZGMzM2NhNmE5MTc1MmQ1MzY0Mjg2Y2NiNGUgbGVnYWN5LXRydW5rCiszNDI3NyBkZDQ0ODU5NDNmMjNmNDg1YWE4MDcwZjg5Y2E3ZmQ5NzA5YTM4ZmI2IHJlbGVhc2UyMy1tYWludAorMzQyNzggOTRiNGZjZTdhOTk4YjIzODJiZDkyNmExYzNiZWE3ZWU1MmZjZjFjZCByZWxlYXNlMjMtbWFpbnQKKzM0Mjc5IDZjMDQwMmRhZmIxOGNjNThhYjdlOTliZmIxODUyNDg3NzYzMWRjYWQgcmVsZWFzZTIzLW1haW50CiszNDI4MCA2M2FlMWI5MWE4Njg1NWFkZGM0YWVmNDU5MjI4NDBjMjQ5MDdjYTkxIGxlZ2FjeS10cnVuaworMzQyODEgMDM1Yzk3ODNhNGRkYmFmYTE3NGU2MDdkMjU0Yjc2OGY3NjBhYzk0YSByZWxlYXNlMjMtbWFpbnQKKzM0MjgyIDg1NDA3MTJkNmUyZDMxNzVjODFhOTExZDA3ZTY2MmI5YWFmOWYyMjEgbGVnYWN5LXRydW5rCiszNDI4MyBlMThjMTBjYTc0MDgyODY4ZGFlZjYyZWFiMzJhYzhiNWNjMzEzMWRkIHJlbGVhc2UyMy1tYWludAorMzQyODQgNTliODUxYjZhZDMzYTU3ZjUxMDU2YzczMTZiNzBmNzMyZTBkMjk2ZSBsZWdhY3ktdHJ1bmsKKzM0Mjg1IGE1M2VhYmUwMjcyOTg0N2NhZTQ4Yjg0NWNmZjhlODAzZTJlNzhhYTUgcmVsZWFzZTIzLW1haW50CiszNDI4NiA3YmM1MWJlNzVmZWJmZDcyMjdlODJhOTA3NjM0NDZiMmYxODhhYTZhIGxlZ2FjeS10cnVuaworMzQyODcgM2QxYWUxYzg2ZmQzOTM2NzE3NTRlMzI4ZTBjYTczMDkzYzNiNDc0OSByZWxlYXNlMjMtbWFpbnQKKzM0Mjg4IGU2Y2VhNzdhYmVlMzZmZjFlZjE5NzE0NDhjNGUxNjE5ZWUyZjhhMTQgbGVnYWN5LXRydW5rCiszNDI4OSAwNjE2NGM2ZGM1MDlmMTRjM2RhOWM0MDE1ZWFlZjQwNjc2Zjg2MzE3IGxlZ2FjeS10cnVuaworMzQyOTAgYmQ0YzRiNmUwOWExNzI0NDc2YjFiMTliZWQxZWNjZTU0YTI0MmE1MCBsZWdhY3ktdHJ1bmsKKzM0MjkxIDBjOWFhN2U1NTQxNTdjNThjZDgxZjZjZGQyNGQxZTA1OWQyMmU5MDQgcmVsZWFzZTIzLW1haW50CiszNDI5MiBmYzdlZjRmZGUyN2ExZWRmZGZjMDdkNTQ1NjZkZjUxNzVkNGU1OTg3IHJlbGVhc2UyMy1tYWludAorMzQyOTMgYjk1Nzk3NmNkOGU3ZGI0NjA1ZjVkYzAyZjRmNWQzMDI4MjdiZGM1OCByZWxlYXNlMjMtbWFpbnQKKzM0Mjk0IDU4Yjk4Zjk4OGEwODE5YTBkMzE1NWJiYTdkODhkZjg0Y2I0Mjk2YTUgcmVsZWFzZTIzLW1haW50CiszNDI5NSAzZWY4N2EwYmJiYWQwNTI2MjI0MDIyYWM1ZGZhNTI4NzQwOWNkMjU2IGxlZ2FjeS10cnVuaworMzQyOTYgYWIzZTc3MGMzYTk5YmZiNzcxNzIxMDI3NzIyYzNlODRjOGVmZmExMSBsZWdhY3ktdHJ1bmsKKzM0Mjk3IDk4YTZiNjAxNTIyOTk2MzJlODQ4MWUzYjkzY2Y3YWI2ZDJlOGI1MTggbGVnYWN5LXRydW5rCiszNDI5OCBkMzRiNmY5MmRkMzI1ZDZiZGM2ZWI4ZWU3NjEwZmJkYzIzOTZkYTI4IGxlZ2FjeS10cnVuaworMzQyOTkgZGFmOGM5MzI3ODZkMjk4NGY1ZTkyOTc1MjQ0OWJkNDFlYmEwODZmZCBsZWdhY3ktdHJ1bmsKKzM0MzAwIDM0MTc1ZTk0MDgxY2E5NmFlZjhjMjJkNWNlYThmNDQ2YjZlOWM1N2QgbGVnYWN5LXRydW5rCiszNDMwMSBjOTUxZjljMzA2ZjMyNGY3N2M4NDQxMWYxYzYzNTFiM2FlNzc2MjNkIHJlbGVhc2UyMy1tYWludAorMzQzMDIgY2RkYjdjOGRiMzY3OTE1MTNlOTk3YmIyN2UzZWE4OTZiNWMwY2U5NCBsZWdhY3ktdHJ1bmsKKzM0MzAzIDY3Y2QzZTdkMGVhY2Q4OWM4NTFkMjlhNjRiYjJiYWJlMmQ3NThlY2IgbGVnYWN5LXRydW5rCiszNDMwNCBiNmMwZjkwOGJlYjgwOWYxYzdkNWRhMGUyMjA0N2JhODc1ZmZmNmFjIGxlZ2FjeS10cnVuaworMzQzMDUgNzQxZjc5ZjEwMTJhMGViNDMzNDk1ZDJiNmE0Mjk0ZGMxZDkwZjFlMSByZWxlYXNlMjMtbWFpbnQKKzM0MzA2IDIwNzEyNGY2YThkN2IyZDRjMTUzNTI2ZTVhNTU3OTI4OTY4YTdhMzcgcmVsZWFzZTIzLW1haW50CiszNDMwNyBmZDU0MDIyMGZmYzRmMDgwMWVmNjliZDQ0MjhmODZlZjFkZDIyYmY3IHJlbGVhc2UyMy1tYWludAorMzQzMDggM2UxYmY3NTEwNjQxMTBkZTMxOGFhYWU1NWJmMTUyOGFjODYxOTY4ZSByZWxlYXNlMjMtbWFpbnQKKzM0MzA5IGM4NzZhYzRkMDMzNzE5NWY4Y2FjN2QzN2U0ZjRiODdhZWQyNjA1ZDYgbGVnYWN5LXRydW5rCiszNDMxMCA2M2M2NDA4OGZmNDk4MDA1NjU3MjE0ZTFjNDYyNmE1YjM0YTIzZTc2IGxlZ2FjeS10cnVuaworMzQzMTEgMDAyOGVmNDVhNTBlYTU1YWNhN2NiZDNlYTc3Yjg5MDhkYjhjZTdjMyByZWxlYXNlMjMtbWFpbnQKKzM0MzEyIDZkNzUzODMyNzQzNDJmMDAzNWYwZTNmODgzNDQ5NDUwMmE0NWJhODggcmVsZWFzZTIzLW1haW50CiszNDMxMiA3ZDczNjJhNzEyNTNiZmY0ZmMxYjBjODI1YzE0NTY5Nzc4ZGI4YzM2IHJlbGVhc2UyMy1tYWludAorMzQzMTQgMWI5YzNhOGM0OWRiNjhiZmVjOGFhNjU2NjFjMDU0NzFiMDM2YzM3YyByZWxlYXNlMjMtbWFpbnQKKzM0MzE1IDBjNmZlNThhZjdkMTI0Nzk3MjM4NjMxMTFjZWFiMWJiZWNlNTE2ZDAgbGVnYWN5LXRydW5rCiszNDMxNiA2Zjk3ODJjYzI3NTBkMjg2ZWU5YzY2ZjBhMDQ4YmE4YzA5NWM1YmJiIHJlbGVhc2UyMy1tYWludAorMzQzMTcgNmNmZDk3ZDdmZTk4ZDc4MjYyMzM1YWM2MjE2MjhjMTQxMWJmYmIwYyByZWxlYXNlMjMtbWFpbnQKKzM0MzE4IGZiZjZlZTU3NjlkNDJhMGRmODNlOGE5NDQ2MzhkYmYyOThiMmQ2MTMgbGVnYWN5LXRydW5rCiszNDMxOSBkM2ZiNzViYzYzNTZlOWNkNTUxMGEzZmMzZmJkZmRmMDcyZGJkZmM1IGxlZ2FjeS10cnVuaworMzQzMjAgZGU4NTUyZjBhY2M1NzY0M2RkNjFjMjg5MWRjNDMyY2QxNTA3NjAyMCBsZWdhY3ktdHJ1bmsKKzM0MzIxIGJiZTYzYTg3OTY5ZmRiZjY2MTdmNTcxZjVhM2IzYTY2ODZkZGUyNjcgcmVsZWFzZTIzLW1haW50CiszNDMyMiBjOTgzMDIyMjUyOTIwZDM0OTMwYzBmOWQ5ZTRkODdmZDQ5YjQ5NGQ0IHJlbGVhc2UyMy1tYWludAorMzQzMjMgODI3MDBhN2U5ZmE0YjQwZGUyMDg1Y2EyNzU2NGQyMTFmZGZmOTU1ZSByZWxlYXNlMjMtbWFpbnQKKzM0MzI0IGE2NzNkODVmNWFkMGE1NWE1ZDkwODUzYzliZDQ1ZmVlZTY0NWRiOWEgbGVnYWN5LXRydW5rCiszNDMyNSA2NmZkODI3ZmUxZDg0YmE2ODM5YmQ0NDE3NDk1ZmEwOWYwYWRiYWU3IHJlbGVhc2UyMy1tYWludAorMzQzMjYgOWU2MTY0MTk4YzQ1NzIzYjM1NzdhNmIwMzFkYjlhNmJmODFlMWM2MiBsZWdhY3ktdHJ1bmsKKzM0MzI3IGM3M2YxNjIyNWE3MWFkZjAxMGMyMjYxNjMxN2RiOGI5ODJkMzBkNDcgbGVnYWN5LXRydW5rCiszNDMyOCA3YmQ2YzZiNTNmODcxNzBhZWFjMDNiZDdiM2RmNmRlMDQwZjg2ZWE2IGxlZ2FjeS10cnVuaworMzQzMjkgYjFjNTY5NmFkNDc1ODU4NDRhMmE4NWY5YzM0NmQwYjA5NjVkYTVkYiByZWxlYXNlMjMtbWFpbnQKKzM0MzMwIDI3OTU5YTAyZDM5ZGU5YzFhMmU4Y2U4ZmU3ZWU1YTZlZDQ4ZWZhZmUgcmVsZWFzZTIzLW1haW50CiszNDMzMSAxMDc5YmU1ODdiYWEwNzk2MmMzNDEzZTM5ZDg4OTAwNDhkNjE2NmM4IHJlbGVhc2UyMy1tYWludAorMzQzMzIgZDQ3Y2M2ZjcxZjMyYTMyYzE2N2FjOTYyNmE0ZWI3OTU2MGU4NTNiOCBsZWdhY3ktdHJ1bmsKKzM0MzMzIGI3ZDAxZWZmZTg5OTUwYTgzNDJmNmZmYTdiMzk2YzkyZjcxZTZiZGMgbGVnYWN5LXRydW5rCiszNDMzNCA4NDczMWVlYTZkYjkwZmUyOWNmOGZkYjNmYzk5YzljYWI5MTQzOTNlIHJlbGVhc2UyMy1tYWludAorMzQzMzUgZjI5ZjEwOGFiNDllZWI1ZGEyZjM1MmRhNDZkMzk2YmJkMjc0ODI4MCByZWxlYXNlMjMtbWFpbnQKKzM0MzM2IDVmZjI0ZDVkOWU5MjJiMDJlYjg4MTExNWI5MjE5N2ExMmY5NjBjY2QgbGVnYWN5LXRydW5rCiszNDMzNyBlNzNmM2EwMzI3NjM2YWQ4ZDY2YzgyMzVlOWU0M2JlNjdlZjBiYzcxIHJlbGVhc2UyMy1tYWludAorMzQzMzggNTczYTQwYmVjMDcwNDJhNjYxNTYzZmMyZmFhM2UxOWM0YTA0OGEyNCBsZWdhY3ktdHJ1bmsKKzM0MzM5IGY0ZGVlMDE1YmY4NGMyYzZjMzIwNzU4YmU0M2YzZDRhMWYxZmU0YWUgcmVsZWFzZTIzLW1haW50CiszNDMzOSBiZTI1MzNmYjEwYTU4N2M4ZGE4OWIxOGM1ZjM4MWY0NzhkNzIwNTkzIHJlbGVhc2UyMy1tYWludAorMzQzNDEgZTVlNjA4OTJjM2UzNTdlNWU3NDNjYjY0ZWM3MGMzNDU5NjI1ZDdjNCBsZWdhY3ktdHJ1bmsKKzM0MzQyIDE4ZTIzOWYyMzAyOWQ4MGU4NzMxNDlhMTkxM2ViNDk3ZWIzMzdlZjYgbGVnYWN5LXRydW5rCiszNDM0MyBjNGUzYTZjYWNmY2FiZmFlYmFjZDhlZmE3M2VlYjhmOWU5N2ZmYWZkIHJlbGVhc2UyMy1tYWludAorMzQzNDQgMmVmOGQ2MmRjYzA5MTA2MTBkY2ZmYTk0MjczODMwMTc5ZjlkMTM1OCByZWxlYXNlMjMtbWFpbnQKKzM0MzQ1IDkyMDA3MTJkMzFlNzkwZWMxOWM5NjRjOTYxYTg2MWZlMzA1ZTY3MGEgbGVnYWN5LXRydW5rCiszNDM0NiA4MTdiNmUwZjQ4ZDFiYTg3NDMzMzkzYzM4NWU2NDMzYjk5MTRjNThlIGxlZ2FjeS10cnVuaworMzQzNDcgZjlkZmRjYjg5N2JiNjY0YTQxYThmMzc0N2E1ZmJkYTRkMzk0ZTdlNCBsZWdhY3ktdHJ1bmsKKzM0MzQ4IGMxYTY3MmVlMTUzMDM1MmVhMTYwMDU5YTMzNTgxMjllYWZjMThjNjAgbGVnYWN5LXRydW5rCiszNDM0OSA3ZmQ1NTNmYjQzMTUwMzdjNmExMWFmOTA5YmM0ZTc3ZjNiMjE4NWE3IGxlZ2FjeS10cnVuaworMzQzNTAgMDQ3MWM2N2Y2MWJkNzk3NjUxMTU4YmFmZTI1MjRmYThjYzgwM2VjMCByZWxlYXNlMjMtbWFpbnQKKzM0MzUxIDBkNDAxNzg0NjIxYjRmNDk4NTIzNTA4YmI1Nzg3NGQ3ZTkzZDdmNGIgbGVnYWN5LXRydW5rCiszNDM1MiBhMzAxNWJiYTM5OTliZGMwM2YzMTdmM2YxMjNmNTUwY2VhNmU2OTBhIHJlbGVhc2UyMy1tYWludAorMzQzNTMgMzllNjM1ZGEyMzI2YTU3ZWU4MGQ0YmZhOTFmYTM4MjhjYzlhODY1NiBsZWdhY3ktdHJ1bmsKKzM0MzU0IDVlYTBmZDI2YmQzNjQ2MmRkNjViYTU0N2Y4NzkxOGVmODRkMjViZjMgbGVnYWN5LXRydW5rCiszNDM1NSAxNTQzYTg0MGZjN2YzYTBhY2M4YTliZWZiNmE4NjFmNzU3NGNiNjQwIGxlZ2FjeS10cnVuaworMzQzNTYgNzE3NTdjZWEyNTdmMzY5ZjBkMTJhMDNmMzQ0Yjc4ZWQ1OWY4MWY5MSByZWxlYXNlMjMtbWFpbnQKKzM0MzU3IDA0NDc5OGQ4YmJmYzdiNDg0NWNhMDMwY2EwNThlNzNiMDM3ZTcwMTEgcmVsZWFzZTIzLW1haW50CiszNDM1OCA4NjMwZGQ4YjVjYjQ2NzMxZWRhN2M3ZDNlYWE1ZmRlMzQ4YjVmYzgxIHJlbGVhc2UyMy1tYWludAorMzQzNTkgMjA1YTI5M2YzZGUwODAyZTcwZGNkMmZkNGZmYWMyNjRkZDRjN2Q3YiBsZWdhY3ktdHJ1bmsKKzM0MzYwIGQwYjhjODNjMmE2YjY5ZDIwNGYzM2QyNTYyOTU1OTdjZmJkYTRhOWYgcmVsZWFzZTIzLW1haW50CiszNDM2MSBhNmZiNjgyMjgxNGFhYWY2MWM2ODA2YTgyMmU1ZjY0NmVhNjZhZjFkIGxlZ2FjeS10cnVuaworMzQzNjIgMWVhZGU3N2VhOWVhNzlmYWMxY2Y0NWUwZGMxMjRiY2I2Yzc2Mzk0ZSByZWxlYXNlMjMtbWFpbnQKKzM0MzYzIGQ3OWJiMjlmZjk2Y2MwOTQ3NjM5YWExYmQ2MDA2ZDk0Y2RlOTJkYjkgbGVnYWN5LXRydW5rCiszNDM2NCA4ODQxZDM0YTJjMzdlYjk4OTI5ZDMzZDU4NmVkNGFkYWNiODU5ZWM3IGxlZ2FjeS10cnVuaworMzQzNjUgY2EwMzAzMjA5NjNmNWZkNTAxMjc3NGFiOGZmZjExN2FlYjBkYzQxYyBsZWdhY3ktdHJ1bmsKKzM0MzY2IDZmZGVlM2Y5ZWNlM2FiN2NmOTZiYWI2NjRmNWRkMzZmY2MyN2NmYjQgcmVsZWFzZTIzLW1haW50CiszNDM2NyBhZDYzMDZkMzVjZTNhMTk1ZDY5ZjYxODE4NTBhNzI3N2IzYzcxNTI2IHJlbGVhc2UyMy1tYWludAorMzQzNjggM2I0N2Q2MDU3MTUxN2VjMjA3YWM2NWIxNzY3MzNkMjc5YTQ2MjI3ZiBsZWdhY3ktdHJ1bmsKKzM0MzY5IDA1NWE4MDg4MWU5NmQ5MzZmMTQ0NTMwNGIyMzljZWVjOGNkMTBiZjggbGVnYWN5LXRydW5rCiszNDM3MCAwZTBiYTkyOTU1MGMwM2M3YTFjZjE0ODlkMDMwMWViMjUwNTMzYTA5IHJlbGVhc2UyMy1tYWludAorMzQzNzEgODE0MWVlYWQxOTA3M2Y0YWE5MTQxOTcwYWI3YmNiYmEwMzViZWY2YiBsZWdhY3ktdHJ1bmsKKzM0MzcyIDE0NGJjOGZkOTExZWU5NGNkMDA5ZWZmOGYyYjcxMDRkOWE1MTJkMTEgbGVnYWN5LXRydW5rCiszNDM3MyBmMDBhMzJlYzQxMzkzMDA0YzUzZGU5NWM0ZGI0OGY5ZWJhOWY5ZDEzIHJlbGVhc2UyMy1tYWludAorMzQzNzQgYWNlZjRlMTZjZWFlNDgzMGE2YjdhZDA0YTI4YjZhNDgxZjVlOTk5ZSBsZWdhY3ktdHJ1bmsKKzM0Mzc1IDM2OTkyY2E5MThhMzQ5MzNjNzEzOGIwZWFhYWM4YjBmZTk3YjI5MTEgbGVnYWN5LXRydW5rCiszNDM3NiBiYjNjZTZhZWU2OTNlY2M0ZWJiNDE1MmFiYzFiODgzMDY3MmI0NjdhIGxlZ2FjeS10cnVuaworMzQzNzcgNmVmMjQ1MTM2MDM4OWFmOTc3NzBmOGU3ZTBkMzY3ZTJkZWUzOGZhZSByZWxlYXNlMjMtbWFpbnQKKzM0Mzc4IDVjMDE3NGUyZTE0ZjQ1MWY1Zjg2MDc4OWYxMzVkOTk5M2RiMWM3ZGUgbGVnYWN5LXRydW5rCiszNDM3OSAyOTg4ODhlMzk1Y2UwYzA1ZjM3NGZiY2M0YzEwMmE4ZTIwNTVlYjQyIGxlZ2FjeS10cnVuaworMzQzODAgNDc3NmEwNWU2MzBiNWZjMzhmMDFlOGQ5ODNjM2I3ZjNkNDg3NDQ0ZCByZWxlYXNlMjMtbWFpbnQKKzM0MzgxIDU4ZmU2NGY3ZmIxOTNhZWI4ZjIwMGEzMTk2NDFjM2Y5MTkxNTdkMzcgbGVnYWN5LXRydW5rCiszNDM4MiA0MDA2NzQ5NTgwMjVlOWU0ODE2NDgwYmZiYzQ2MmQ3MDllYWNkMDhiIGxlZ2FjeS10cnVuaworMzQzODMgMDYyYzI1NWI1N2E4ZTIyZTk3MzYyNWY5MWRkODczMDQzZTI5NWY5YSBsZWdhY3ktdHJ1bmsKKzM0Mzg0IGQ1YzMyMzFiYTViYWE0MTYzMjAzOWM4Y2ZhNzQ5ZDkyYjE0MjI4MTcgbGVnYWN5LXRydW5rCiszNDM4NSA3ZjYxMzRmOGJkMDZmZDNmYzY4MjhjZGVkZTJlZDk3YWM5NDI3ZTM1IGxlZ2FjeS10cnVuaworMzQzODYgYWRjNjAwMTU2NzBhZThjMjNkYjNlM2UxOGU5NDBlMzk1NzUzNTE1MSBsZWdhY3ktdHJ1bmsKKzM0Mzg3IDQxYjdkMWYwNTAwZjBlNGMxNTA0ZTJkNmY5OWUxMzI5N2IwMmM2ZjQgbGVnYWN5LXRydW5rCiszNDM4OCA2MDQ4MzBmMWNhYTY1NTI2Y2E4OWQxOGFiODBjZTJiZDlkYjY0MjU3IHJlbGVhc2UyMy1tYWludAorMzQzODkgYTc0MjgyMWQ5ZTc1ZGM3YWVhYWQ4ZjA2N2RlMzgzZjY3OWNhZmFkZCBsZWdhY3ktdHJ1bmsKKzM0MzkwIGZjZTgwYWQ4MzQ3NzA5ZjFjMWE2N2RkMWI0YTZjYzY1ZTNhOTMwYjcgbGVnYWN5LXRydW5rCiszNDM5MSBmZGYwYTk3YmFiNjAwZDU5NWRiMGMwOTI2MTA2NWE2MDk5NjQ3YWQ3IGxlZ2FjeS10cnVuaworMzQzOTIgY2YwMmMxN2Q3ZjQ0OWJjNWYyYThhNGJmODU0OTBkNTk3NjM5ZWE2NSBsZWdhY3ktdHJ1bmsKKzM0MzkzIDgzN2VhMTg2MzdiYzE5MGZlNTk3ODZmNzI2OTNlYmUwZTgxN2Q2ZWYgbGVnYWN5LXRydW5rCiszNDM5NCA0YTBjODllNWUwNTY3N2JlNzhkNDNmNzNhMWZkODg5YTliOGVjY2U1IGxlZ2FjeS10cnVuaworMzQzOTUgYzIyNmY4NGQ3YTY2ZTJhYTgxNjY1ZTMwZWM2ZGMwMmY5OTFiYzMyZiBsZWdhY3ktdHJ1bmsKKzM0Mzk2IDk2OTFjYzY0NDE2MDA3YmRkZGMxNzdiZDFiZWE2ODI0ZDdkNzBhNjUgbGVnYWN5LXRydW5rCiszNDM5NyA0NzNmNGUyOTU5YTgwNDNkOWJjYmQ3NDQzZWNiYzMxNGMxOTY1YmVhIGxlZ2FjeS10cnVuaworMzQzOTggM2I1OWZhNWQyNWIxM2I1YzY1ZTA5NjA3OTQ5YWMwNmFmOTA4NmRkNiBsZWdhY3ktdHJ1bmsKKzM0Mzk5IDBkZGVjYWY4Yjc1Y2JlY2EwMDY2MDA0ZGYxYzNkYzMxZTUxYWJkZjIgbGVnYWN5LXRydW5rCiszNDQwMCA2YzM4NDA2YzNmYWQ4NDEyOGU1ZmJiNzU3NTJhOGVjODdhNDVjYjFhIHJlbGVhc2UyMy1tYWludAorMzQ0MDEgMDA2MDE1Nzg0NGQ4N2JlMmFjZTdlOTUzMjZkNzUyMDA3YTBhMjliZSBsZWdhY3ktdHJ1bmsKKzM0NDAyIDhlYTgzMjYwM2U0ZmViMTdlMTllODM4MDVkNzdhY2FhNDQ0ODk0N2MgcmVsZWFzZTIzLW1haW50CiszNDQwMyBiNDkxYmJmMTdkZGU4YTE4NDU2ZTM0Y2MyYjdmYzRmZjAyOTI0ZjE2IGxlZ2FjeS10cnVuaworMzQ0MDQgNTAxYTc5MzQ2Nzg0YWU2MjZhOGI0ZjBjZDA0OThkZWEwN2NhMTU4YSByZWxlYXNlMjMtbWFpbnQKKzM0NDA1IGZkMDUyYzRmODg0ZjQ0MzBjMjgzODAyMmVhNWJjZDg5OTVhYjFlNTIgbGVnYWN5LXRydW5rCiszNDQwNiAwNGY0MThhZjY4MGQwN2Y0YjQwZTQ5NjFhZjQxYjBkOGZhMzA2Y2NjIHJlbGVhc2UyMy1tYWludAorMzQ0MDcgYTNlODY2NjVmMjQ1YWM1ZDdlNWViZmI3MjJiZGViZmJkYzE1YzhmNiBsZWdhY3ktdHJ1bmsKKzM0NDA4IDQzODhiYmFkMGJjMzdhZTk0OGMyM2EwYmE0ZTMxZTI0N2E2NjI3ZDMgbGVnYWN5LXRydW5rCiszNDQwOSA1YTFkM2JjNmNjMTgwMmUwMDgzNTU3NmFmMDdkNTcxMjUwZDVhYmQ1IGxlZ2FjeS10cnVuaworMzQ0MTAgMmNiNGYzMjE3OThjZDZmMDQxOGM0MTE5ZTEyNTlmN2E2NDYwZGQ3OSByZWxlYXNlMjMtbWFpbnQKKzM0NDExIDM0MjliMWQzOGI0MDBjNjBlMGI4NTBmMDE4ZDZkMTkzNGQyNDRhMzYgcmVsZWFzZTIzLW1haW50CiszNDQxMiBmMWMzMGJmYjBjYzEyNjE3ZTJlZTBhMzQxYjlmYjc0NWU5ZWFmOTY2IGFzdC1icmFuY2gKKzM0NDEzIDc5ODk3ZWQ1M2YwMzZmMTc5NTE1YjU1MzQwZDRhNTczNjhhOTMzN2QgYXN0LWJyYW5jaAorMzQ0MTQgMTM0NWMyM2EwNTkxNjA1MDNiYjUzYmI4ZmE5NDY1Yzc0ZGNlYzZhMiBsZWdhY3ktdHJ1bmsKKzM0NDE1IDNlM2ZkNTZjZTU5NThjZDQ3ZWU2MGU2N2E4MmUyMDY3OWVmZDMzMTYgbGVnYWN5LXRydW5rCiszNDQxNiBlZmVkNDg5ZGY1NDU5YTgwMWIwY2I5OTM1MzRlNDg4N2JkYTgwZGE2IGxlZ2FjeS10cnVuaworMzQ0MTcgNTIwMWY2NmM5MmVmM2NkZWViMmEzNzhjM2M1MmRiY2Y0MjhlM2E3YSByZWxlYXNlMjMtbWFpbnQKKzM0NDE4IGMzZGZkYjYwYjk4OGY4Mzg5Yzk2YmEzZTJmMGJiMDkxMzM1NjU4MWYgbGVnYWN5LXRydW5rCiszNDQxOSBjOGI4ODIxZTg3MmQxYzhlOTE3Njk4ZDdlOGUzMmRjODhiOGU2ZDk4IHJlbGVhc2UyMy1tYWludAorMzQ0MjAgODI4MmFhMWY5MzQzN2M2NjZjMzBkMWM0NmZiZThkZjM0NDZmZjI2MSBsZWdhY3ktdHJ1bmsKKzM0NDIxIDA0YmNmZGNmMjkwYTE1MDljYzc1YzgzNmI4OWJiYjA2YTE4ZTY5YmIgcmVsZWFzZTIzLW1haW50CiszNDQyMiAzZmYwMzQ0NmYzNjJhZWVmYzlmYTkwNzBlNmM4ODgwMWQyNWFiZDRiIGxlZ2FjeS10cnVuaworMzQ0MjMgYmUwY2EyNmFkNTc0MGVjNjQzN2E3MDYzYjc1MGQ2YWVkYzk3ZDcyMCByZWxlYXNlMjMtbWFpbnQKKzM0NDI0IDllMjFlNTZiZjVmM2NlMThmYzFmZDZjNzE4MWJiMzU2MzBkNzNjMTMgbGVnYWN5LXRydW5rCiszNDQyNSAzYTk5Mjk0YzhlNWI1ZTM4ZDFhMTc0MDE5ZmU2MGMxZjU2NDBlMWE2IGxlZ2FjeS10cnVuaworMzQ0MjYgMWQ1ZDcyNDM2ZjJhN2M0MmJhMzg4Y2E2ODI2MDc4NzVmZTllMDkxZSBsZWdhY3ktdHJ1bmsKKzM0NDI3IGEyMzRkYWYxOTgxMGFiM2E4NzljODZmMzZiZGNlODBiOGI0NDI0MmQgcmVsZWFzZTIzLW1haW50CiszNDQyOCA2ODc3Zjc5N2NmMzYxNTFhMWI0MzJlYmMwMTBjMzQ2NjRjYjZhNDRjIHJlbGVhc2UyMy1tYWludAorMzQ0MjkgYTY2MzQzMDlkNzBlZTZlYmFjOTkzNjQwZTk2OWI0ZjM1MDViODYzMCBsZWdhY3ktdHJ1bmsKKzM0NDMwIDljN2UwMjI3YzgzNTY4ZjNkODBjNTQzMmNkNjYzMGNkNmJkNGM0MTYgbGVnYWN5LXRydW5rCiszNDQzMSBiMTFkOTczYWJlY2FjYmJkYzBjZDg1Mzc0OTYyYjdlN2M4ZDhiMzQ2IHJlbGVhc2UyMy1tYWludAorMzQ0MzIgYzEyZDRmMTg1M2JjMDAyYjNkNjMwNzkyMmIzN2JmMDlkMTUxY2E5NSBsZWdhY3ktdHJ1bmsKKzM0NDMzIDA3YTBhMDcyNjY0OTk0NjcxMGU5YWM1ZGNkMWZmYmEzMWFmMWFhZmQgbGVnYWN5LXRydW5rCiszNDQzNCAxMmU1NDkyOTVmN2Y1ZGZmYzI0MTljNTgyYjg1ZTE3ZTdkOWVmNjViIHJlbGVhc2UyMy1tYWludAorMzQ0MzUgYTI4YTgzMDAzMWE5YWIzMjJlZjk1YTFjYmM0OTQwZjExMzY0ODRiNCBsZWdhY3ktdHJ1bmsKKzM0NDM2IDdkZmRmOWU4ZDk1ZDM3MDExMDg3N2E2ZjdjZmE4YjNkNzk3NDNkNWIgbGVnYWN5LXRydW5rCiszNDQzNyAyYmM3OWIzYTk1M2RmZDg3ZWE0OGE0MDg4YWQxN2YzNTJkZGE0MTc2IGxlZ2FjeS10cnVuaworMzQ0MzggZjgwZDgzNzc4NDBmMmVkNTEzMGUyMjk5ZDY2Y2IwZjYyZjU2ZmVjMiBsZWdhY3ktdHJ1bmsKKzM0NDM5IDY1MWZjOGQ5OGQ5OWI1MGY3ZDlhYWVkN2I1Y2E3YjZjY2VhM2I1Y2EgbGVnYWN5LXRydW5rCiszNDQ0MCA2ZjE1ZTczYjU5ZjJlM2EwM2YzMTc4NzQ1MzU1Y2Y3ZWQyNjhmNTk0IHJlbGVhc2UyMy1tYWludAorMzQ0NDEgOTVkZjYwMGFiOWJkZWI1MWMxMDE4OWIzYTFmYWE3YTE4MGE1OThkMCBsZWdhY3ktdHJ1bmsKKzM0NDQyIGU4N2Q2ZDc2ZTM2NTc1YzEyOTUwZDdiZDdhNjJkY2I3MDhkNmI4NzUgcmVsZWFzZTIzLW1haW50CiszNDQ0MyAxMDI0YzViZjdmZWU5MTI5NDE1OTE5MmNjZTNjMWE3ZWYyYTkyY2IyIHJlbGVhc2UyMy1tYWludAorMzQ0NDQgYWQ1ODIyOTc3MTUyZmU3MzYyMDQ1ZGI3Njk0MzlkMDgzZDg0M2RiYSBsZWdhY3ktdHJ1bmsKKzM0NDQ1IDk3N2VmYWE4NjM0ZTYxZjRiOWU4NjI1MWI5NzNjMTg0ODZkMmJjOGMgbGVnYWN5LXRydW5rCiszNDQ0NiBiMTA4YzQ0MmEzNzQ0MTU0YjE3ZGU4Yzc2MjdjYWU3OWMyNmY2MmJkIGxlZ2FjeS10cnVuaworMzQ0NDcgMGVhNDEwNDhiMmQ0NzUyNTg4ODAyZTc5OGE0NjcwYTFkYzgwZTJmOCBsZWdhY3ktdHJ1bmsKKzM0NDQ4IGYwZGEwY2FkNWNkNTFmNDdmZmEzY2ZhNTI2NmYzNzNhODM5NDk2ZmUgbGVnYWN5LXRydW5rCiszNDQ0OSA0NGY5ODAwMjE4MWZiMjkwNjkzMmY4N2JhY2VmMTM1ZjRmMTg3MzQyIGxlZ2FjeS10cnVuaworMzQ0NTAgOTQ1NWRlZmYxYzdjMGVmOWUwMmVlMzRjNzhlNWQzYjVlMWM3Y2FkNiBsZWdhY3ktdHJ1bmsKKzM0NDUxIDkxNmY3ODJlZDZkNTBjNmJmOTAyOGVmODVlMjM5Nzc5NjlkYzUxMDkgcmVsZWFzZTIzLW1haW50CiszNDQ1MiA0MjQ0NTE3MjkyOGYxZmFmNTFhY2ExNWM4YTQ0NWZlNmMzZmVjMjE1IGxlZ2FjeS10cnVuaworMzQ0NTMgMGU4MDc3Y2IzZGQ1YTE2N2JmNzI4NWFmMzI1MmYzYTI5MWMzMWYxZSByZWxlYXNlMjMtbWFpbnQKKzM0NDU0IDM4YjBiN2Q0MTkzNmIxN2ZmZjJmMDk0YTA0NWU1N2RkM2UwOWFhOGUgbGVnYWN5LXRydW5rCiszNDQ1NSA5MDNiMzFkNzcyMWExZDU2YzAwYzczOTBjMzE0N2ExNzI1MTY0MTU0IGxlZ2FjeS10cnVuaworMzQ0NTYgMzhiOTRjMDViODViOTJlNzZjMTljZDZmMTE2MTNlZTQwZTU5MmU2MCBsZWdhY3ktdHJ1bmsKKzM0NDU3IDQ5NGQ1Y2YwYmJlM2UyMTEzNjQyMzUyZTNiZDY1YmE5ZDI0NWUxNWUgbGVnYWN5LXRydW5rCiszNDQ1OCBiYzhmMjJjNTM0MmNhMzdjZTRmMmZkYmYxODkxM2MwNjM4NTkxMzMwIGxlZ2FjeS10cnVuaworMzQ0NTkgYTgxMGJhYjg1ZmJjNGQwYTRhZWRiZTI0Y2I2Mzg2MjA1MjE0ZTU1NSBsZWdhY3ktdHJ1bmsKKzM0NDYwIGY4NzQyNDNlZTM5YmEyNmU3MWM4MzFlMmY1ZWQ4YWQyOWMxNDA4NTIgcmVsZWFzZTIzLW1haW50CiszNDQ2MSAwMDEyMDliODE4YTY3YzkxOTFkMGM4NTY1MjA1MDEyNjdmNzJjMGQ3IGxlZ2FjeS10cnVuaworMzQ0NjIgZGJlNzg4MjIzY2U5NjhlZjVlYzk2ZmUzYTY4MDIyZGU5ZGQ2YjU4OSByZWxlYXNlMjMtbWFpbnQKKzM0NDYzIDBjNjJjMWFjOTY4NGRiMzE3ODU3OGE1M2VlOTQ3YWU0NTZjNjI0ODMgcmVsZWFzZTIzLW1haW50CiszNDQ2NCA3N2Q1MzA4YmVkYWUxMTQ0YjQ5YzdiOWViZWZlMGM3Y2EzZGU4YTQ0IHJlbGVhc2UyMy1tYWludAorMzQ0NjUgNjI0OGRkNWQxOTJhODA1ZGNiOTY0YjU5MmYzODA3NDA5ZDc3ZDFmNSByZWxlYXNlMjMtbWFpbnQKKzM0NDY2IGZhZTM0MzU3NjFhZjlmNTg5ZGViOTQ4MGU2MTY4OWNiZTk4NzcyYzkgcmVsZWFzZTIzLW1haW50CiszNDQ2NyAxZDkyZWNkZjJiYjE0Y2Q5MTRjYzYwY2Y2OGNhZmIzZGQzYzliNDYyIGxlZ2FjeS10cnVuaworMzQ0NjggNmZkZGU5NmE3MjIyN2EyYzZlNTgwOGRhNzZkMTQxYTY2ZGI5NTExZSByZWxlYXNlMjMtbWFpbnQKKzM0NDY5IGQ3NzBkYzI2NDIxMmRlN2NlNTZiOWExYmIwYjIyZTBhMTFiYmUzODIgbGVnYWN5LXRydW5rCiszNDQ3MCA2OTE0YjVlMjA3NmYyMjRiNzdkYTVjMmM1OWY1Mjc1NmRlYmRkYWY3IGxlZ2FjeS10cnVuaworMzQ0NzEgOGIyZWFkZmI4ZjBjZGRjMzJiZGRhOTk2ODdiZTQ2NmZmZjAwZjJjNyBsZWdhY3ktdHJ1bmsKKzM0NDcyIDRkNzllODQ5MGM3NmU2ZTY5NDhjYjlmNzk0OGIwNmUwMDI0OWZjMmUgbGVnYWN5LXRydW5rCiszNDQ3MyBiNjkwMmMwYTc1NzgyZWRiY2U5NzVlZGEyMmYxYTBlOTg4ZWI4MDNmIGxlZ2FjeS10cnVuaworMzQ0NzQgZTBlYzY0NGY1YjM2YzQ1ZTNhNWNmZTllZDBjOTNhNDFjN2Y0NGM0OSBsZWdhY3ktdHJ1bmsKKzM0NDc1IDI2YmMwMTk0NGFlOGVjOWU0NDFkZTMzYjI5NWEwZmY4N2I3NWYxMmQgcmVsZWFzZTIzLW1haW50CiszNDQ3NiBmNzcyZDM0MDNjYTdkMjQ4NDJmMzI5ZTBkNDNiZjRiYTcwNmZhZDQ5IGxlZ2FjeS10cnVuaworMzQ0NzcgYTA1NDVlMzJkYWU3ODg0MTNhYTdkYWZhMWFmZTg3MDcxYjg3NzhhOSByZWxlYXNlMjMtbWFpbnQKKzM0NDc4IDBmZTMwNzEwZGE4MDYwYjA4ZmY2MzlhMDVlNGY0OTUxNzgzZjU5ZTcgbGVnYWN5LXRydW5rCiszNDQ3OSA4ZmJiMDYyM2I4NTc4ZDk2OWJiMzg5ZjdhNjVmOGMwYWM4NDY2ZjYyIGxlZ2FjeS10cnVuaworMzQ0ODAgNDhiOWNjNTE3NDJiOWJmM2U5N2M0MmIzOWY2OTkwOTMwY2ZkODM2ZiBsZWdhY3ktdHJ1bmsKKzM0NDgxIGI5NDhlNzc1YTc5ZWUwYmM0MjViNmZlNjc1MTg0NmIxNzI1ZjYyMTggbGVnYWN5LXRydW5rCiszNDQ4MiBmZTNmNTU5MjMwNWRjZjRmNjFmNDMwY2EyZGE5MmYwYTc5ZWJiZjExIGxlZ2FjeS10cnVuaworMzQ0ODMgOTgyZTNlNDBiZjFlNTg2NDk0Njk0N2ZlZDYyZDg0NjljMjFhNDdmMCByZWxlYXNlMjMtbWFpbnQKKzM0NDg0IDc5MGVkNWM1OTljM2Y0MmZhZGJmNGEyMDExZjM4MWNlNTAwZGNkMjIgbGVnYWN5LXRydW5rCiszNDQ4NSAyNzk3MzY5OTBhMTRiZTM0ZTdlZjcxYTczNDkwZjNmNmIzODNkMGQ4IGxlZ2FjeS10cnVuaworMzQ0ODYgMmJjOTVkNDlmYzdhNjBmOTlmZmIyYzlkYWJhY2JjMDJjYjljYWQwYyByZWxlYXNlMjMtbWFpbnQKKzM0NDg3IGUwODQxYjVjZjJmZDFjMWJlOGQwMjBiNmI1YTQ2MWM0YzJiMWRiMGQgbGVnYWN5LXRydW5rCiszNDQ4OCBhNjg3OWQxNzMzZDdiYzJkMzQ3MmI4OTBhODRjMjI1NjRkYWFiZjM0IGxlZ2FjeS10cnVuaworMzQ0ODkgODk3YWZjYWNiYTAwNzJkN2FhMTc3OWM0MzUxMWU0NWUyYmIxYzJlMSBsZWdhY3ktdHJ1bmsKKzM0NDkwIDk1ZmQ1NTU0NWNhYzI2OTg0MTZlNmYxZmMxYzRkZjMwZmViYmI3N2IgbGVnYWN5LXRydW5rCiszNDQ5MSAyZDk4NzEwZjI3MmVjZTZiZDA2YzZmYjFjMTE4ZDk0NWRmOGJjNTU5IGxlZ2FjeS10cnVuaworMzQ0OTIgMDYyODU3ZjY5MjdmNzkzYjFmMjRjODY0N2E5ZjU4MzVjNzZjZDg1NiByZWxlYXNlMjMtbWFpbnQKKzM0NDkzIGRmOWQ4ZjdlNGM5YzM1MzAwODA3MjA0N2QxYTU3MjA4ZDFmZGI5NTkgbGVnYWN5LXRydW5rCiszNDQ5NCA2NWJiZmRhMjQ2YzkzMDhjNWZhNDEyNzVjMjM2ODE2MjhkYWRjM2M3IHJlbGVhc2UyMy1tYWludAorMzQ0OTUgM2UzZDUzOTYzYzg4ODFiMDdjOTI5NzZmOWJhNWU0NmU3YWJiMjMxOCBsZWdhY3ktdHJ1bmsKKzM0NDk2IGVlZTA3ZjMwZWYwNjhjMTBjOTNiYTMwYWMzMWNmMTFiNzhlNmFiNzkgbGVnYWN5LXRydW5rCiszNDQ5NyBmMmU2MWQ5OTA5NWU3MzE2ZjRmM2IyMTE5Y2UwZjhiMTFjNGJlMjNmIHJlbGVhc2UyMy1tYWludAorMzQ0OTggNzQ3NDdmNjJmMjg2YTg2MWJhMWVjNWQ1YjdmNzQ5N2U0Zjk4OGE3YyBsZWdhY3ktdHJ1bmsKKzM0NDk5IGY1MWRjOTAyNmU0ZGY5YmVlY2ViMDU4ZWU1Yjk4ODcxYzViZDU4MjUgbGVnYWN5LXRydW5rCiszNDUwMCA0ODMzYTljZDM3N2VmMWZhZDFiYTYwNzY2ODZlZThkNDZkNzA1MGMyIHJlbGVhc2UyMy1tYWludAorMzQ1MDEgMzcyODVhMDM0NmMxNGNlYWMyOWE2NTFjYzA1NzU5ZTM2YTc5NWU1YyBsZWdhY3ktdHJ1bmsKKzM0NTAyIGQ5OTZlMmRjYmQzYTdlNTdmZWE3YWI1MmQ1NTJhOTAzYmEyNDAzZmMgbGVnYWN5LXRydW5rCiszNDUwMyAyMjVkODQ4YTVmOTY4Yzg4ZDk2Y2Y3NzVhODEwZGNjZDlmMDNlZDRjIGxlZ2FjeS10cnVuaworMzQ1MDQgZWEwNTg1MDQxMDRjZDcyNmQwOGMwZTdhOGFiZmVjMWU4MzExZjllZSBsZWdhY3ktdHJ1bmsKKzM0NTA1IGMyYWU5MWE4N2E0OGFjNjU5OTNhYTQ1ZGM5NjJlYWFiMThjMDEwNWYgbGVnYWN5LXRydW5rCiszNDUwNiA4NGZmMTNiY2M3NTAyZjBiMDcxZjg2YTVhZGFlMjBhZThlNmVmNjMzIGxlZ2FjeS10cnVuaworMzQ1MDcgYTYwMDhiNzBjOTM5MzRiNzhlNTc1NGZjYzJiNmJhZDRjNDkyYzcyZiByZWxlYXNlMjMtbWFpbnQKKzM0NTA4IDRjOWE2N2NmMjgzM2E5ZmVmMTcxZDI3NGRlN2ExNTZhNmZlNDc4MzIgbGVnYWN5LXRydW5rCiszNDUwOSA3YmJlZTk5NDIyYTAyZWM3N2Y3NTliMWM1MTY1ZTFlMTBiOTEwNTQ4IHJlbGVhc2UyMy1tYWludAorMzQ1MTAgYWM5ODVkNzc2NjUwMTcxMDkwZWZjNjY2YThkZTcyZWM3ZjIwYzI1OSBsZWdhY3ktdHJ1bmsKKzM0NTExIDQxMzliNDVhY2ZlZDAxN2NlNzU2MWU3ZDY2MzVhYjk5Y2EzN2M1N2QgbGVnYWN5LXRydW5rCiszNDUxMiA5ZGE1MzcxNjdiNzQ5N2JmZjNmNWUyZGUwNjM5NzcyNDI4MWYxNzczIHJlbGVhc2UyMy1tYWludAorMzQ1MTMgOGViODk4ODE0ZmI5MTc0NDljZWRjYjQ3ODE1MjNkMWMxODQ2MjI1MCBsZWdhY3ktdHJ1bmsKKzM0NTE0IDdlOTMxNDkyNmRiZTJjYzViNTg2ZjU1MmNmYjE5YzJkYzRmNDAyMDQgbGVnYWN5LXRydW5rCiszNDUxNSA3ZWRlNzcyZjAzZDNiYzFiNzQ2OTRjYTNlOTc0NmRkMWIwYjAyNTc2IGxlZ2FjeS10cnVuaworMzQ1MTYgMDM0YWU0OWY5YjdhZWFmOTEzMGU1NzNlNzZjNjM3NTc5MjFjMGM0ZSByZWxlYXNlMjMtbWFpbnQKKzM0NTE3IGFmNDQzZDgyMGE1MDY3NzJjN2E5MGMyY2E5NDdjOWM1ZjU1NWY1YTYgbGVnYWN5LXRydW5rCiszNDUxOCBjNDJjNDAwMzQ1MzZjYzljMjZmMTIwNWNmZWQ0OGQ2Nzk5ODY1MzNhIGxlZ2FjeS10cnVuaworMzQ1MTkgYjRiOTQ1YzVkYTRkNzQ1YTNlNTEwYmEwYmRmYjBiOGI0Nzg1OWMxOCBsZWdhY3ktdHJ1bmsKKzM0NTIwIGFlY2JiYTAyOTRiYjUwNjM3OGViNGJlODBiODgwNGExZGFiMWZmZjggbGVnYWN5LXRydW5rCiszNDUyMSBhYzhjNzcxNmE4NWRhZmJmMmI2NzhjZWYzNjM4MGJlNjBmOGRiZDQ0IGxlZ2FjeS10cnVuaworMzQ1MjIgNmE4N2VkNjM5NjdjMjU5Zjg0MDdkZWMyMGNiZjgxMWY5ZmU4ZjFlZiBsZWdhY3ktdHJ1bmsKKzM0NTIzIDYzMTExOGI5YWVjNjJhZGM0Njk2ZmM0N2VhODg4Njc5NWRmNjJmMDEgbGVnYWN5LXRydW5rCiszNDUyNCA3YmE0M2VmZDBjZWIzMmE0OTg2N2VkNjY4ZThmNTg4ZGJhOTlkMTRkIHJlbGVhc2UyMy1tYWludAorMzQ1MjUgODMyZjNhOTg5MDU4YTZmYzRmODg4NDdlYjQ0OTQ5MDE2MDgxYjJhOSBsZWdhY3ktdHJ1bmsKKzM0NTI2IDhkYjY0YWJmODU2ZjhjNDRhNzVlYjU5OTFhN2ViZWRkMGNlNmQ2ZjkgcmVsZWFzZTIzLW1haW50CiszNDUyNyAyY2JhMGRlNzBkZjYyYmViODVjNjg3MDZhMzJlMzk4ZWE5OGY2ZjUyIGxlZ2FjeS10cnVuaworMzQ1MjggMWZiZmU5ZGMwYmE4YjkyYWMxY2VjOGY5MGE5MmVmYTFlYjJjYjhjNiBsZWdhY3ktdHJ1bmsKKzM0NTI5IDc4NjNlYmNmZjEyMWYxNTc2Mzg5Y2JhYTg4NDA2MjQ1YWNlMTc3NzUgbGVnYWN5LXRydW5rCiszNDUzMCBhMGQyOTc4NTYyZDVlMTJmOTUyM2UxYTNlNzNmODM0Njc1OGYyMjM4IGxlZ2FjeS10cnVuaworMzQ1MzEgNTY1Mjg0OWZiZTI5NjAyMTFlNDUzMDY5N2EyNTAwZGQ2NmEyYTJhMSByZWxlYXNlMjItbWFpbnQKKzM0NTMyIGM4MDQxYjBlZWIzY2IzMmI2NTg3ODljN2Y4MWI4NDBkNWI0NDliZDkgcmVsZWFzZTIzLW1haW50CiszNDUzMyAwN2U3YTAyMDYxZDg3YzU3NGU0MDE2OTQ4ZWMwZjBlMTQ2MGRiN2ViIGxlZ2FjeS10cnVuaworMzQ1MzQgMTUxMDI0NGJlYjVlMGU2ODNlZGQxZDM5NGY5OWY0NmVmZjkwN2UzNiBsZWdhY3ktdHJ1bmsKKzM0NTM1IDQ0ZTlhYmQwN2ViMzFlMjczNmNmMDk4MDVmMzE3MzVkNTZkYzU1NzcgcmVsZWFzZTIzLW1haW50CiszNDUzNiA5ZDhhY2RiNThmOWMzODg5MmYwMTc2ZmQ1MmM5ZWRjMjBmOGY0YzU4IGxlZ2FjeS10cnVuaworMzQ1MzcgNTI4Y2MwZmRkYTQxY2QxZjNjYjkwNDUyNDVlZmFiMGJiMTBmYTc1NSByZWxlYXNlMjMtbWFpbnQKKzM0NTM4IGVjMWE0YTI5ZDI1ZGE0NTg4YzEzMTBiZjQyMWE1N2Y2MjM0NjFiNzggbGVnYWN5LXRydW5rCiszNDUzOSA4Y2Q2OTFiNzM4NDUyNzJjZGEyMTBiZjhhZTZkMjJjZGY2ZTVlOWE3IGxlZ2FjeS10cnVuaworMzQ1NDAgOThjODU3NmI4ZGE3ZDI0MDAyZDgwNzYwMDA1ZWZjMzE2ZWIwM2RmOSBsZWdhY3ktdHJ1bmsKKzM0NTQxIDY0MjJhMzk1MDA0MDFiZjc3ZDk5ODBlMWQ5MmEwYzcwMmEyYjA4M2QgcmVsZWFzZTIyLW1haW50CiszNDU0MiBkMTUzM2NhNzhkOGNjYTg1YzFjZWY4ZmM4YTc4NTBjZTZhOGVjNzdmIHJlbGVhc2UyMy1tYWludAorMzQ1NDMgZmFjOGM2M2M3ODM4MWFiNmYwNGRhZjczZjZiMGYzN2ZhNWJkYjZhYyBsZWdhY3ktdHJ1bmsKKzM0NTQ0IGI1ZjY0YmU1YjIxZmRjZWU3ZDZlODg4OGE2YjhhNDYzNjQwZmM0YjYgcmVsZWFzZTIzLW1haW50CiszNDU0NSBlNTlhYjcwOGJiYjBjYThiY2ZiN2RhZDk0NmNlNjcxMjdmYWE4YjMwIGxlZ2FjeS10cnVuaworMzQ1NDYgOTgzM2FhNWJkZjM4N2M4M2NiYWUxNzQyMjliMDhkYWEwNzIyMjJmZiBsZWdhY3ktdHJ1bmsKKzM0NTQ3IGNiYmUzZjhiZGVmNmYyODNhZThiMDM4NDAwZjQ4MDFiZWM2NTc2NGEgcmVsZWFzZTIzLW1haW50CiszNDU0OCA4MjdkMDFkZjYxYTcxNmE4YzMzZDEwZTMxMTE3ZDI5N2I2NTMwMTAzIHJlbGVhc2UyMy1tYWludAorMzQ1NDkgODlkYzA2OWFhZDJjNzkzNzdhN2MxMDBlZTE0NGM0YzE0N2Y3NmYyNiByZWxlYXNlMjMtbWFpbnQKKzM0NTUwIDNjZDkyMDZkZmI3OTI5MDY0NDVmOWQ4NDQ1YTczZDhmZjA3ZTU2OGQgcmVsZWFzZTIzLW1haW50CiszNDU1MSBkNmMwOWE5ZDcyNDFkNmU2MDVkZGQwMjNhMzQ4ZDRlNmVmMzQ0ZDA3IHJlbGVhc2UyMy1tYWludAorMzQ1NTIgNTYyMTQzYzFjN2FlZGFkZjU4NDBiMDFhZGQyMzM0OGEyNTQwYmMzYiBsZWdhY3ktdHJ1bmsKKzM0NTUzIDUyMmEzZDdlMGE5NjIyOWRjYWFlYjI0YTA3YzIyMDFiYWMyYmE1NWIgbGVnYWN5LXRydW5rCiszNDU1NCBlNjc2Yzk1ZTQ4NDQ4NzBlNWU1YTVlNjhmNzk4NWQ5Y2JmNWNkMDk3IGxlZ2FjeS10cnVuaworMzQ1NTUgMTliYjFiMmZiMjMzOGRmMWQwNzY5YjlkYTg2NThhODA5NjgxODUxMyBsZWdhY3ktdHJ1bmsKKzM0NTU2IGZlZWM0NGYxOWVjYzc4ZGNiODkyMGExYzZmNTBiYTgwMDgzNThiNmMgbGVnYWN5LXRydW5rCiszNDU1NyBmZWY2ZmRlYzUyOTI1MjNmMGM4OGQ5MDI3YmI5ODg3OGQ5YTBmNTBhIHJlbGVhc2UyMy1tYWludAorMzQ1NTggYTk5NzYxNGIzNWRjOTc1YzM4NTZjZWIyYjRkNDYzMzcyNjU3NmU0ZCByZWxlYXNlMjMtbWFpbnQKKzM0NTU5IGZlOWE1YTJkZDJjMTUxNGRlNjIzY2VmZTIyNzA4NzNjNWRkYzQ0ZGEgcmVsZWFzZTIzLW1haW50CiszNDU2MCAwOGMwMmEyNjVkYmQwZGQ5YTE1MTBlMDA2MThlMDQzZTM2N2IzM2Q2IHJlbGVhc2UyMy1tYWludAorMzQ1NjEgNGU1NmZiYTk4ZjFlNDUwOGI2ZmUyNmI2MDI0MzlkYmYxOGI3Y2UyMCByZWxlYXNlMjMtbWFpbnQKKzM0NTYyIDU3Zjc0M2ZhMzIwN2UwOWE1NjMwOGZlN2M2NzYyYTBiYWI4OTM4NGYgcmVsZWFzZTIzLW1haW50CiszNDU2MyAzYmU0M2FmOTkyYTZkNzJiOWM2ZGNmY2FlMTFiOGY1NmRkZWJjZGQwIHJlbGVhc2UyMy1tYWludAorMzQ1NjQgZTVkMjIxZjhkNDEwYjM3MWRkYzYxODM5ZGQ5NWViNGI0MmMwYmVlMCByZWxlYXNlMjMtbWFpbnQKKzM0NTY1IDkzMWE1OGYyN2ViYjA4NWZlMzllOTM3N2NlODQ2YjVkZDFjYjYzYmMgbGVnYWN5LXRydW5rCiszNDU2NiAyNjI4MjNhMTJjYTc1MzMyODA1ZTNkOTQyMGM1OTk0NWFkMGNjY2E0IGxlZ2FjeS10cnVuaworMzQ1NjcgZWQwNThiZGFkMmFkZjZlMmQ3MzY2MmI5OGY1ODE4ODU4YTIzYThhZSBsZWdhY3ktdHJ1bmsKKzM0NTY4IGRjYWU2MmQzNTg4NDkzNDcyZjU1MWM2ZTJhOWE0OTkxY2JhNWQ0NzEgcmVsZWFzZTIzLWJyYW5jaAorMzQ1NjkgMDgwZGYwZWRiMGE0YmNhYzQxNzg3ODg2NTg1YzlkOTQ5NmU0MWJjMyByZWxlYXNlMjMtbWFpbnQKKzM0NTcwIGFmNzMxODQ2ZmY3MjgyN2MzMDVhNjhlMTE1ZTEwNDUwMDQ5ZWU1ZTQgcmVsZWFzZTIzLW1haW50CiszNDU3MSA4YTc1ZjliYTliYWJiMTAwYTljMDI2YzZjZGVkMjcxNzhiM2M3MDFiIGxlZ2FjeS10cnVuaworMzQ1NzIgNGUxOWEyZmYzNzZhMDVmOWQ0NDViZmI2YjRhNmIwNmNiOWM1YWEwNCByZWxlYXNlMjMtbWFpbnQKKzM0NTczIGFkZTk3YjYwNTM1MjQ1Zjc3NmVmMmVhMTU5YzQ1YmU4YjYzNTA3MjYgcmVsZWFzZTIzLW1haW50CiszNDU3NCA3MTM1YzdjYTk4NDJiMGRjZjBhZTEyMDFkOGUxZGEyZjU0ZDUyNzQwIHJlbGVhc2UyMy1tYWludAorMzQ1NzUgNzc2YTc3MTUwNjIwYzI5M2VlOGJlM2NhZDBjZTNiNzU1MzM1NTBkNCByZWxlYXNlMjMtbWFpbnQKKzM0NTc2IGMzMWVhZGI2OTc3OTE0ZWU0ODlmYTQwOGYwNzdhNjQzMzNhMWVjZWYgcmVsZWFzZTIzLW1haW50CiszNDU3NyA5ZjVkZDMwMmJkOTE1MzM4ZmU4NjY4OTU3N2I5NTllMWMyZTcyZjA4IHJlbGVhc2UyMy1tYWludAorMzQ1NzggODIwZDFkMDQzZDNhY2NmNGY2MmExMzhlOTAzN2ZlZDdjNTgxZmZiYiByZWxlYXNlMjMtbWFpbnQKKzM0NTc5IGM4OWZkN2VhZjg3NTQ3Njg4MjUxMDg4ZGNiZWFjMjcxZDFiY2Q4NjcgbGVnYWN5LXRydW5rCiszNDU4MCBkNDVmODk4MWZkZWE5MWZjOGUyMjllN2EyODA3NDkyMTI2ZjQ2ZGJhIGxlZ2FjeS10cnVuaworMzQ1ODEgMDcwYzg5ZWRhODBiZGI1NDM1Y2M3ZTIwZDA1ZjVmYzVhZTFiMGEzNCByZWxlYXNlMjMtbWFpbnQKKzM0NTgyIDY3NjA2ZjljMmQxMTNkZGUxNzczYjg0ZTYwYTVjNTQzOGUzZjgwNDIgcmVsZWFzZTIzLW1haW50CiszNDU4MyA0MWM0ZTE0M2U2ZTZlMThlNDEzMWExZWQ4OTU4YWM0NDgxYTUzZTcxIGxlZ2FjeS10cnVuaworMzQ1ODQgZmU1Y2VhNTFhM2ZmZmZmMDI5YzI2NTZjODJhNmZkNGQ3ZGE5MDc0YSByZWxlYXNlMjMtbWFpbnQKKzM0NTg1IDA0Y2E0ZDFmNzUxZjJhOGEwMjUyZWIxNmM5MjVlM2Q2YTVmYjA3NTQgbGVnYWN5LXRydW5rCiszNDU4NiBkYTUwNTZhM2IxNTI4NDFjZDE2NTk2MDgwZDRkNDcwYzQzZTg3ZWI0IHJlbGVhc2UyMy1tYWludAorMzQ1ODcgMGFjYjk1YWQxOWRjODY3ZmJjNTlmNWJlYzkyMjBiZWM1YzA4ZTNmZSBsZWdhY3ktdHJ1bmsKKzM0NTg4IGU0NjhiMjQ1MWQ1NGIwNTEzMzI3ZTNiNDlmNjE0YzZlYzdmZWViMjkgbGVnYWN5LXRydW5rCiszNDU4OSA5ZDdiN2VlMDQ0NzBlMTllMGFhNjBiMmY3MDM0NTdkNzlkMGEyMDRlIGxlZ2FjeS10cnVuaworMzQ1OTAgZTcwOTFkNTc1NGFlYzAxNTRlYjhlOTQ1YTQyNTQ2YjBkYjAyNjg3NyByZWxlYXNlMjMtbWFpbnQKKzM0NTkxIDFkYjBkZTRjODQ1NDMyM2JmYjA4NzU1NmUwY2MzODIxZmU4ZjdkMmEgcmVsZWFzZTIyLW1haW50CiszNDU5MiA2ODJkMWI2N2M3YjU1MjQ3ODcyNTEzYWYxOWM2N2IxZTJkY2Q3ZWQ3IGxlZ2FjeS10cnVuaworMzQ1OTMgMmFjZDI4YmQ0ZDBmMWZlNjE0ZTMxMGYyNmY3YWM0MzkxMjhmN2Y4OSBsZWdhY3ktdHJ1bmsKKzM0NTk0IGUyYTlhN2ZlZjE4YTMzZjgwZDRhZTcxYzk3MTBlMWEyZWMwODk2YjYgbGVnYWN5LXRydW5rCiszNDU5NSAzZmE5NTM4YWM0OTY3MjdkMDIwZjBlOTMzMGI4OTA5ZTE3YzlkOTEwIGxlZ2FjeS10cnVuaworMzQ1OTYgZjAxNjEzMjdhOTAyNjc4NDEwZDlmOTEwYjBlMjRhYjE2M2Q1ZmQ5MiByZWxlYXNlMjMtbWFpbnQKKzM0NTk3IDRlZDQwYjNmODgwMjM1ZTc1Y2FmOTdhMGUwYWY5ZDY1OGY5Y2U5N2QgbGVnYWN5LXRydW5rCiszNDU5OCBkMzM4OTgzZDA3MTk0N2Q2OTE3Y2U5YmU0N2FhZjljYTNiNDc1M2NiIGxlZ2FjeS10cnVuaworMzQ1OTkgMmU0OTc4NDBjNDU4ODBkNWQwMjIzZjFmNDY3MzRjYTdhYjQyZGZmMSBsZWdhY3ktdHJ1bmsKKzM0NjAwIDcyZDcwZGNjNGFmMmM3ZjczMjA1NTdiYTA2MWIyZTFmMGE4OWE5ZDkgbGVnYWN5LXRydW5rCiszNDYwMSAyZjBlNjBkNDIzM2E2NjViZTJmMDFmYTUxMDRjYjBkMTRiZTdlZjg1IGxlZ2FjeS10cnVuaworMzQ2MDIgY2JkOTNjZjMyZWZmZWFlOWQ3NjNkNGE2OTJlZTVlZWFhNTlmODhmMCBsZWdhY3ktdHJ1bmsKKzM0NjAzIGU2MTQwODNhYjIwYzhmMWQyY2MzOTlhMTEyMjk5ZTUyYzZkMTUzODQgbGVnYWN5LXRydW5rCiszNDYwNCBlNDhjNjFmYTJmOTgzZTFlMGQyNjZkMmE4YTJlMmNhN2JiNTBiNWYzIGxlZ2FjeS10cnVuaworMzQ2MDUgM2FlODI5MjhiMTEzMWNiYjEwNWFmM2FlODk5OTAyMzdhYzkwMzJhYiBsZWdhY3ktdHJ1bmsKKzM0NjA2IDdkYjc3OGNiN2UwOGE0NDhkM2VhZjdmODM0NDZlYzY4MGI4ZDExMWUgbGVnYWN5LXRydW5rCiszNDYwNyBjZWVjNjlkMjQwZjAxOWViYjc3YjBhZWUyMGY4MTYwODdlZjhmZDBiIGxlZ2FjeS10cnVuaworMzQ2MDggMTk5N2ExNGY2YjA4OGUxYTY1MWUxZmRiOGMzY2FjN2Y1ZjFiZmMzNiBsZWdhY3ktdHJ1bmsKKzM0NjA5IDg5ZWNmYTI1NDUyODNiMTdmZjE5NzBhYmFhZmQ1NWYyZWNiMjQyOWEgbGVnYWN5LXRydW5rCiszNDYxMCBmMDhhNWU5NWMzN2NmM2RiNzI2ZDliZGRhOWIwYmI2NzFlOTYxYzI0IGxlZ2FjeS10cnVuaworMzQ2MTEgMWU2ODYzZGRkODRiOWU4M2U3YjNhMTc1NzFjZWI0ZTZlZTk5YzkzZSBsZWdhY3ktdHJ1bmsKKzM0NjEyIDU0MzcxMzkxOTQ5OWU2NjEzMWQzNGQ5NzY4ZTJmYmRkZTQxNjAxZTIgbGVnYWN5LXRydW5rCiszNDYxMyAyZWQzNjgzMzg1M2FhY2JiNGVmOWRhY2M0MjJlOGEzOTdlNGQzMWE5IHJlbGVhc2UyMy1tYWludAorMzQ2MTQgYTBhOGYxNTQwMWRiMGZiMTM3NGM5YjJiYTIyZWI3NWJkZDg2NmNkNSBsZWdhY3ktdHJ1bmsKKzM0NjE1IGM1ZTUyMDhjZGJiNzIwZTAzODI1MTNmZjZjN2I2ZjVlNzQzYWViZDggbGVnYWN5LXRydW5rCiszNDYxNiAzN2M3NzYzZmE4M2RmYTY0M2YzZTdjYzNhMzcwNDM4YjIyMTRiNjI2IGxlZ2FjeS10cnVuaworMzQ2MTcgOTYxNzBmNzVlM2U5ZmVmZDgyYTM1ZWQ1MGY1NjZiNjM2YmJiNWQ3MyBsZWdhY3ktdHJ1bmsKKzM0NjE4IDMwOTZmYWIyYTE5YzA1NGI1OTRiYzJiNTY4OTMzMGQxMmUxOWE1NTggbGVnYWN5LXRydW5rCiszNDYxOSA4NWYzODM2NTE4ZmU1ZDE2Njk3ZmQxZjNmODdiOTQ1ZmU2YmU3Nzg0IGxlZ2FjeS10cnVuaworMzQ2MjAgNjAzNzA0MGEyY2NlNDcxMjRjNTUzZDEzYWZjOWNkZjcxYzM1YmY1MCByZWxlYXNlMjMtbWFpbnQKKzM0NjIxIGIxMzYzNTNhZGRlNmE2Y2ZhNWY4MjY2YWIwYzY0YTc5NWE3NDQ3YzkgbGVnYWN5LXRydW5rCiszNDYyMiA1MTBiZDdlZWE5MjVmZTEwZmM3OTJkNmZlZDliYjViMWU1ZWJkNTIxIGxlZ2FjeS10cnVuaworMzQ2MjMgZDI2MTgzOWVjZjg3Y2Y4M2UyMGU0Zjk3NjMxNzliMGI2MTYzNGE1YSBsZWdhY3ktdHJ1bmsKKzM0NjI0IDM5ZmE3YjhmY2MwNzdhY2E3MTRmMjgwMzhiMmJjN2Y1NmFhMDY0YjQgbGVnYWN5LXRydW5rCiszNDYyNSAzZDliMzZkNmFiODk4YjJhYTA5MTVkYTUxMWUyYWYzZjEwMDNmMWJjIGxlZ2FjeS10cnVuaworMzQ2MjYgY2Q3NjI0YjAyNWEwZmU4MmUyZTM2YmYyYzdjNTU1YzdmZmU3N2FlYiByZWxlYXNlMjMtbWFpbnQKKzM0NjI3IGUzZWJkNzQwZDFlZmI0ODY4YmZmZDE4M2M3NTNhNDBjOTcyMGQyMWYgcmVsZWFzZTIzLW1haW50CiszNDYyOCBhMjlhNTg1YjAzZDk2MGYzMTE0YTliN2U0ODAyYTBmM2Q5ZTJhMzQ4IGxlZ2FjeS10cnVuaworMzQ2MjkgNDMyMGNjYTRlZDg0MzgzNzcyMDk4NGE5Y2I2YTFjOTVjNGI5Yjk3ZCBsZWdhY3ktdHJ1bmsKKzM0NjMwIGQ0MzJmODJiOTg2ZmJmMWI0N2QxOGIxYmI4ZjUzNTkxMDhmNjQwNzYgbGVnYWN5LXRydW5rCiszNDYzMSA1NjdmYTA2NDllODM1ZTgxY2M0ZWI2OWY5ODM0NjY5NWVhMThiZWEzIHJlbGVhc2UyMy1tYWludAorMzQ2MzIgZjY0OGM3ZjFlOGI4NTk4YjMwMjJhODI4MDZlNTEwNmI1MGEwMmFkNSBsZWdhY3ktdHJ1bmsKKzM0NjMzIDgwODE2NDNjMzczZmZiYWUyMTU2OGUwOGJmNjdjNzg1ZWUyYjMzNzEgbGVnYWN5LXRydW5rCiszNDYzNCA4MTczM2M3YTk1YzhkZGU2MTFmMDcwZDEzYmM2YzI2ZmQyZDliZjQ1IHJlbGVhc2UyMy1tYWludAorMzQ2MzUgMTJjMjJkNmIxZWMwNjhiMDNiY2E2N2I3M2RiZWYyYzBkNWFkMjQyMyBsZWdhY3ktdHJ1bmsKKzM0NjM2IDhhYTkyMzdmNmRkNmFhMTA4ZTQ5YmM3OGViN2Q2ZjUxOTIyOTI3Y2IgbGVnYWN5LXRydW5rCiszNDYzNyBhMTgxOThmNDk0ZjQ0NzhkZGUyMWI4MzM4ZTdhOTFiNjEwZjUwYzU0IHJlbGVhc2UyMy1tYWludAorMzQ2MzggMzIxM2FhYTgyYzdiNzk2YjNjOWZiMWMzMzZhYzJlYjIxNDE4MWFiOSByZWxlYXNlMjMtbWFpbnQKKzM0NjM5IDA0NjhmOWRkYzA2OWQ2ZmYwZjNmYTc2OTYzNWQzMTVlNmUwNDhkODggbGVnYWN5LXRydW5rCiszNDY0MCBhMGVjYWUzMzMyYThiNmIxYmQzMTA4MWVhMjU5YTAwMzhhMDJkMzY2IGxlZ2FjeS10cnVuaworMzQ2NDEgN2E2YjFjOWZiODllNTQwZWRjZTZjODQyZGEwZDkzZjM2NTM3Yzk4MCByZWxlYXNlMjMtbWFpbnQKKzM0NjQyIDg3YzA0MjJjZGU3MDhjMzY4ZWEyNjY0OTA2NjMxODdjZWE0NGQzMDUgcmVsZWFzZTIzLW1haW50CiszNDY0MyA1MjY2ODI0NTZhOGQ1YTY5MTdmMTE2NGQwMjE3YWY5ODliODQ4YzBkIGxlZ2FjeS10cnVuaworMzQ2NDQgOTY1NGU1ZjI0NzNlNGY5NDk3MDIxMjBlOWNiN2QzMDA3NjMxYjg0MCBsZWdhY3ktdHJ1bmsKKzM0NjQ1IDVjNGNmZjhmYTZlY2Y5MWM0ZDQ5OTBlN2M2MjZhZGVjNzIwMzg1NTkgbGVnYWN5LXRydW5rCiszNDY0NiBjMDBiNWYxNzk2MzNjZWJlZGUwODhhMDk0M2IyZWM0MzI5ZjhlY2IzIHJlbGVhc2UyMy1tYWludAorMzQ2NDcgNTRmZjY4ZTk3M2VlYmFlMGQ5OTBlMWJlNTMwNmIzNzRiMGY0ODQyZiBsZWdhY3ktdHJ1bmsKKzM0NjQ4IDI4NzIwMGFmOTQ2ZmI3YmQ1MTczMzg4OWE4OTU4YzZhYjBjMTViZTggbGVnYWN5LXRydW5rCiszNDY0OSBmYTZlOGQ0Zjg4YzY3ODI4MmU3MTZkZTBkNTk0MzlmNjI1MjBmMjQ1IGxlZ2FjeS10cnVuaworMzQ2NTAgN2Y2OTVjNTk4Mjg3M2I5MWVjN2U1ZDRiNWE3YjhkMmQzODQzY2MzZSBsZWdhY3ktdHJ1bmsKKzM0NjUxIDE5ZmY5NzI0MzRiM2QyNjFiZmMzYzMzYzhkM2ZiMWI3OTMyZDAwOWIgbGVnYWN5LXRydW5rCiszNDY1MiA0ZWZmY2JmODBiNDVjNmU0MGY0NTE3ODBkZTQxY2E5NDRhMmMwMDYzIGxlZ2FjeS10cnVuaworMzQ2NTMgNWQyYjBlOTA2MmQ1MzM3ZDA2OTc5YjIyMTMyM2I2MzEyZDhjNTM3NiBsZWdhY3ktdHJ1bmsKKzM0NjU0IDg5NDFmMmVlOTA5NDlmMDNlMTE0NTkyYjRjMTI5YzYzZTE5OTUyNDAgcmVsZWFzZTIzLW1haW50CiszNDY1NSA1MWViZjU0NzRmM2RjOTg0ZjFjYzhjYTliMDk1OWZkOWQxN2JiNjFkIGxlZ2FjeS10cnVuaworMzQ2NTYgODEzYTZkOWM1ODg4MjkwN2E4OTkxZjcyMDVjYTMzZGQxYjM5YzQxNSByZWxlYXNlMjMtbWFpbnQKKzM0NjU3IGIyNDk5NWE5NjY0YmQ1NDg0MGFmZjM4OTRjYzFmNWY4ODM5MzI0OWUgbGVnYWN5LXRydW5rCiszNDY1OCBiZjEzMTk1ODFkYzQ3OWY5Y2JhMGEyMDE3ZDZiZmQ4ZjYyYjcyMmRhIHJlbGVhc2UyMy1tYWludAorMzQ2NTkgY2I3ZDVlMjNkYmM3N2YxMDQxNDFmNjBmMDU4NmQ5YzUwNGI0ZDFkMyBsZWdhY3ktdHJ1bmsKKzM0NjYwIDcwMTg4MGQyNjZlY2NiNDgxMzA0Y2JiZTQ2N2Q2ZDc4NDU1ZDJiNWEgbGVnYWN5LXRydW5rCiszNDY2MSA2Y2EwZGJkNmNjYzk4YTE5NmVlYmY3YTlkMjZjYjUzMzdlNzFlYTgyIGxlZ2FjeS10cnVuaworMzQ2NjIgNjI1MTdjYzRjNGU3OTIwMzAxZjI4NWYxOTcxYjA5ZDI1YzY5OWMzZiByZWxlYXNlMjMtbWFpbnQKKzM0NjYzIDdiZTQ1ZjdhNzE4ZjM1Njk0NDEzNGIzMGVlYzdiYzcwMGEzZGY3OGUgbGVnYWN5LXRydW5rCiszNDY2NCBmNzI5YzRkNTMwNDhhYzIyNDMyNzI1ZWU5ZDQzZjE4Mzk2MTY5OTcyIHJlbGVhc2UyMy1tYWludAorMzQ2NjUgNWY0OWZjMjMxYjRjODg1ZjEwNTA1MTFlNjM2MGVhODlkODVhNjY3ZSBsZWdhY3ktdHJ1bmsKKzM0NjY2IDIzMzgyYTEzNGQ1YWI2MWE4MGQ1OGQ4YmU5NGNkYTgwZGQxMWUxMmEgcmVsZWFzZTIzLW1haW50CiszNDY2NyAxZGEzOWE3NWVkMzg0YThhMTNkYTQ5Mzk5NzM3NWRhMzUxNDNlMmJhIHJlbGVhc2UyMy1tYWludAorMzQ2NjggMzhlNzJmNGYzZGY1ZTk4MTBlZWZmZTg1ZmYzZjJhMjY2ODU5ZmUzYSBsZWdhY3ktdHJ1bmsKKzM0NjY5IDExNjM2ZTc5ODdiNjM3ZmVjMWJiNmExNGRiOTZlMDk4NDhlNDhiNTYgbGVnYWN5LXRydW5rCiszNDY3MCA0NWY3MDcyOGRiYWM0ODA4MGU0YWUwNTk4MTRlNDhiMjA4YTFhNmZlIGxlZ2FjeS10cnVuaworMzQ2NzEgMzMxMzU3MWM2NTc0M2E5ZWM0M2NiOTZiMmM4NGUxMTM1MGM2ZTRmOCBsZWdhY3ktdHJ1bmsKKzM0NjcyIDhmYTNjNTg2OWY1MWE3YjVlZGI4ZWZjMTUzZTY5ZThlZmNlODI1MGQgbGVnYWN5LXRydW5rCiszNDY3MyAwN2QzYzg2NjhmOGI0NzFjOGFhZTFhMmU2MDliNGUzNDg2NmY4MzdjIGxlZ2FjeS10cnVuaworMzQ2NzQgNTNkMjgxMzM5NWY0ZWY4MDY5ZTQ0ZDgxODc0MzhjZTIwNzFmM2Q2NyByZWxlYXNlMjMtbWFpbnQKKzM0Njc1IDdhYWE0MGJjMmIxN2M5NGRmMmMwNTdlZGYzODEzYTEyN2RhMjMwNGYgbGVnYWN5LXRydW5rCiszNDY3NiA0NmI5ZmRkMjdlYzIxZmJmYTdkYWJhZDMwYTcyNmJmYmZjNzAwNDQxIGxlZ2FjeS10cnVuaworMzQ2NzcgMTkwNGQ4YjAzOGI2NjhkOWU5OGRiNmJkYmQ3NDBkZTE0NmEwZDgyOCBsZWdhY3ktdHJ1bmsKKzM0Njc4IDhhZmVjZDM2ZmI4ZTM1MTU3NzAzZDQ0OTBjMTNiOWQ0MTM4YjBjMjQgbGVnYWN5LXRydW5rCiszNDY3OSAzMTdmY2M1YTE4NGQ0OGI4OTQ5NTVhZWQ1ZThkYWVjMDEwMjQxYmQ1IGxlZ2FjeS10cnVuaworMzQ2ODAgMjIxMDdjNWExNzZlMzEzMzhkYjg3MjYzNjZiNWQ3NTk0MzZmN2I2MiBsZWdhY3ktdHJ1bmsKKzM0NjgxIGYxOTYyNWYzYzE5OGVlZjRhMDI0MzFlZGZlZmMxNjI0NmMzY2M1YWEgbGVnYWN5LXRydW5rCiszNDY4MiA1YmNlOTU4OWVmMGIwMzZhOTcyMThiNzhjMjVjYzgxNDcwZDZmMGJiIGxlZ2FjeS10cnVuaworMzQ2ODMgNGVkYWJjMjk3NmY3M2ZjNTEzMjhiMjU0N2NlZjEzMjcwMTc1MDA2YyBsZWdhY3ktdHJ1bmsKKzM0Njg0IGRkNmE1MTBhZTBkOWMwOTk0NDM0NzBiMTdjMTRiZDY5NGQ3ZmFkNjggbGVnYWN5LXRydW5rCiszNDY4NSAzYzFjODFkNjQyZTA4NzdlYzkwMDU0OWExOWQwZDcyZDVjZTQ4MDE2IGxlZ2FjeS10cnVuaworMzQ2ODYgYjZjMTM5NTQ0YzE2ZDZhYjdhMjQxMjU4ZGMxNTRhZGIwNDY3ZjA4YSBsZWdhY3ktdHJ1bmsKKzM0Njg3IGU0ZjllNzRiYTU2ZGM4NTdjY2FmNjg5NDNkOTIzNThiNGFlY2FkMDEgbGVnYWN5LXRydW5rCiszNDY4OCAxNmM2ODJlM2U1N2Y5ZWYyODAyMzNjMjEyNmQyMDRmZDU3OGZkYTAyIGxlZ2FjeS10cnVuaworMzQ2ODkgNGIyYzllMTRiNDQ2YjY0NmRlOTBiZThhNjMzZTBlMjhiOWI0ZTM0MCBsZWdhY3ktdHJ1bmsKKzM0NjkwIGNlOTZiZGM2ZmJiOGQ0MDk2Y2MyYmRkMjBlZTk3NDFiNjRmYjQwOTkgbGVnYWN5LXRydW5rCiszNDY5MSA1M2U0YjdmZTA5NjljMTQ2OTMyZmRjOTAzZTIyNjdiN2VmY2ViN2M2IGxlZ2FjeS10cnVuaworMzQ2OTIgZDEyZjA3YzFjM2EwNzA3MzA4MTE5MDM5ODI1ZDgyNzE5MmQ1NjkxOSBsZWdhY3ktdHJ1bmsKKzM0NjkzIDRjZTMwZDlhMWUwNDE5YmRmOTNkOWE5NmVkN2M3MmMyNDA1MzdiZTcgbGVnYWN5LXRydW5rCiszNDY5NCBlYWQ0YzYxMjE5ZDBmMGMxNzYxYTI3Yzc2MjA3NjU2ODM5ODI0YTgwIGxlZ2FjeS10cnVuaworMzQ2OTUgN2ZlMjAxODAxYzE0OTlmODg1MTU4ZDg2OTc1NDRjYTI2OTczZWU3MCBsZWdhY3ktdHJ1bmsKKzM0Njk2IDRjODE2MDA4OGIzNDc1NGFlNzJhYWJhMzkyZTNlM2Y0MWM1M2QyYzYgbGVnYWN5LXRydW5rCiszNDY5NyA4NmZkZjhmZTdmMTcyMGQxMDYxNWI1ZWJjNWM1MWRiZDIwYWU3MWMwIGxlZ2FjeS10cnVuaworMzQ2OTggODkwZjNjMmMxMTgzMDA1OTdiNmI3MjU2ODRiZDYzYjI3Y2EwMTZjOSBsZWdhY3ktdHJ1bmsKKzM0Njk5IGViMDQyNjVmYjY1Yjg2YjY2NmE0ZmRhMjU0MjJjNzZiMjc1MTZkMmQgbGVnYWN5LXRydW5rCiszNDcwMCBlNTQzYjNmMGQ5MDYwMmUyNjVlMmFjYzRiZjhiMWE2NTIzMmFhZjUwIGxlZ2FjeS10cnVuaworMzQ3MDEgMzM0ZWRjZDFlNWFjNjEyNTJmMzAwZThkODFhZTVkNjBmMDJjZjI3MyBsZWdhY3ktdHJ1bmsKKzM0NzAyIDgzMGU1ZmZjNmQyNWM3MDRmOGVkYTBiOTg0ZWNhNTlkMTg2M2JiZjQgbGVnYWN5LXRydW5rCiszNDcwMyBmZGM4YTg4YTlhNWE0MzQ0ZTRhYmY1ZDA4ZWQ5MTY4MDU3ZDNkOWM4IHJlbGVhc2UyMy1tYWludAorMzQ3MDQgOTYwMDFhNzBjNTA1N2YwYjZmOTE1MTU4ODU1ZWE0Mjc1MjNmYTcwYiBsZWdhY3ktdHJ1bmsKKzM0NzA1IGQ5OWUwMjI5NjZjOTQzOGM1ODhmYzY4Mjg2MGQ4Y2NhNGI2ZmE1YzggbGVnYWN5LXRydW5rCiszNDcwNiBjYWExYTQ4ZGE0Y2NkZmNmMGI2ZDEwZjNlNjMzZmFmOWI2ZTFmNDRiIGxlZ2FjeS10cnVuaworMzQ3MDcgNGY2MzgyZDI4MDlkZjRhZThjMjM2M2Y3MjM0YzA2YTcyYmI2MThmNyBsZWdhY3ktdHJ1bmsKKzM0NzA4IDgzMjZmNjQyNDRjMjVhYmZjN2VhNWMxMGZiYzA0ODMwYzhhODIxNzUgcmVsZWFzZTIzLW1haW50CiszNDcwOSAxNGQzMjE0NjZhMDY5MmYxNDljM2M1YWYzNmYzZWMwMDFjMDNlNmJkIHJlbGVhc2UyMy1tYWludAorMzQ3MTAgZDQwMTc5MDE3NjM5NWQ1OWVhNTQwNmIzOGRkOGEwYTYyNzQwOWU4OSBsZWdhY3ktdHJ1bmsKKzM0NzExIDUyZGU1ODA4N2IyZjNhNDVlY2JjZmQ1MzE1MTE1NDkyYjdmYWQyODkgbGVnYWN5LXRydW5rCiszNDcxMiA2MzJiMjIzY2I4ZTgzODc4OGM5MzQxMzdkZDU3OTM5MjdhZmIyNDcwIGxlZ2FjeS10cnVuaworMzQ3MTMgZDQ4MjZlMDk3YTNmZWJmMjg0YjhmMjlhNWJlYmQwOTFiYWQ3MzI1NiBsZWdhY3ktdHJ1bmsKKzM0NzE0IDlmYzUzNDFmYTY5NTZhODMzYmNiYTI3NDgyYzg4NjU1NjZkMTk5NGUgcmVsZWFzZTIzLW1haW50CiszNDcxNSBlMGE3NWE3NTcwYjQwMjg5ZjhjNTRmMzgyZjAxYjBhNzM4MDRmOGQwIGxlZ2FjeS10cnVuaworMzQ3MTYgMThkZjIwM2I4ZTk4NTQ4MmE0ZWI3ZjMwZTljNmVhMTllM2FhZmY3MiBsZWdhY3ktdHJ1bmsKKzM0NzE3IDRkYTk5ZjczYTFkZjg0ZDEyMzYyYThkMjdmZmZjMDhhMDYyYTM4ZTUgcmVsZWFzZTIzLW1haW50CiszNDcxOCAyMmJlZDJmZGZmZWE2Yjk2NTg0YTMyZDk2NzQ2ZGZiYzBlNjcxYjA1IHJlbGVhc2UyMy1tYWludAorMzQ3MTkgZDkwMTU4ZGYzOWM0NTMxMmZkZmUwYWI1MDhkNzZlNmQ4NzJlNDE3YyByZWxlYXNlMjMtbWFpbnQKKzM0NzIwIDYyMmE3NmJjMDIzNzY5MzliMGFhNzg3OTFlODcyYmI5NWQwMmJjZDQgbGVnYWN5LXRydW5rCiszNDcyMSAyNzg5NzZiMTlkY2NhNmY4NDczYzg0Y2ZiM2M1MjQ2MGQ2ODNhNTgxIGxlZ2FjeS10cnVuaworMzQ3MjIgNWI3N2JjNGQyNWIxYjlkZjU5ZjdmOTBjMGM3N2I5NTM3ODhjYWJiYiBsZWdhY3ktdHJ1bmsKKzM0NzIzIDQ2OTZjNGI3Zjc5MmIyYTdhZmYzYTI4NjRkNTE0YTM3YjY5ZTg5Y2YgcmVsZWFzZTIzLW1haW50CiszNDcyNCAxZmQ4MTg5NGNiOTczZjJmZTQyNWJmYmE0ZDA2ZWVjODRiMzcyODNjIGxlZ2FjeS10cnVuaworMzQ3MjUgNzUzZDcyYmQyMTRiMmM1ZDJmODg2YjE2NTI3MzE0NDQ3ODUzZmI3YyByZWxlYXNlMjMtbWFpbnQKKzM0NzI2IDQyMjRkODA3OTExYzRhMDlmMDJlY2ExYTI0ZGRkOTg3NmYxMzQ5YjEgbGVnYWN5LXRydW5rCiszNDcyNyA3MGYzMmYwZDhlY2YwNjU5YjVmMWRjYWQ5NGE3ODVmZThjNzFmODc4IGxlZ2FjeS10cnVuaworMzQ3MjggMmRkYjFjYmExOGQ2NDM5NmQyN2E0ODk1Njk5YTg4ZjNlZGYxYWUwYyBsZWdhY3ktdHJ1bmsKKzM0NzI5IDk2MjhiYjU0YTllMDc0Y2EyMmEyODU2ODIxMmUwN2NmZTdhOTMxNTMgcmVsZWFzZTIzLW1haW50CiszNDczMCA0NmRlM2RiOWE1ZGI1MzQ0YjBkMWFiMDUwODMzODEzZDdjNjRiZDQ5IGxlZ2FjeS10cnVuaworMzQ3MzEgMzJjMmM3OTljOTI0OGUzYTNkNjBhNWExYmQ4NzkzMDQwZTY3OGVkNSBhc3QtYnJhbmNoCiszNDczMiAyNzBkNTllMzQ2ZTZhZjg5NDk3YWFhODFhMTBlZTIyMzdkMWI0MmU2IGxlZ2FjeS10cnVuaworMzQ3MzMgYzQxMWE3NjJkNWRkNmEyZWE2ZjZhZWNkZmU4ZmNmNDdjMDllNGY5NyBsZWdhY3ktdHJ1bmsKKzM0NzM0IDhkNDEzNTc4ZWIxYWMwYThlNjM5NzFkZTkwMmQ2MWYwN2FiMjJhY2MgbGVnYWN5LXRydW5rCiszNDczNSBhNGI5MTNmOTM3Y2RjOTE3YWMxM2Q2MjY5ZGYxMDljOTYwYTEyNjY5IGxlZ2FjeS10cnVuaworMzQ3MzYgMTdhYTUzMDJlMDhiMjE3ZDA3NTFlNTQ0NjdhZGNiNWM2NTE5NTc4MSByZWxlYXNlMjMtbWFpbnQKKzM0NzM3IGJjYzc4NzNjNzA3ZTUyZWFmZTE1Zjg2ZTVkNjEwMTcyOTFlMjg3ZGUgbGVnYWN5LXRydW5rCiszNDczOCBiMmZkN2FmMTcxODY5MDZmMzNlNGRiODFmNGRkYjQ2MmZlYzA1NmJhIGxlZ2FjeS10cnVuaworMzQ3MzkgZDJlYWE1M2NlYWJlZTJhM2NjY2M3ZGVkMDFjNjkzN2FkZTA1OTNlNiBsZWdhY3ktdHJ1bmsKKzM0NzQwIDIxYTEwYzM2MDBiNWM0ZDQ3OTI0Yjk4Y2E4MGU1NmJkZjM3N2U5ZWEgbGVnYWN5LXRydW5rCiszNDc0MSA4NDVmMTliMTQ1YThmYTBmMmNkNGYwZjM1OTRhZjZlMWU3Y2M4YmE3IGxlZ2FjeS10cnVuaworMzQ3NDIgODVjYWJlN2IyMTZiN2JkMDU1MzFhNzQ3MjQyMjhlMjdkYTZkODIxYyBsZWdhY3ktdHJ1bmsKKzM0NzQzIDBhYzQwOWRmZjM5MDkxNTlhOTcyNjYyMzk1MjM2ZmZmOTZmZjQ5YjMgbGVnYWN5LXRydW5rCiszNDc0NCAyYjZhMTBlMDY3MjczOGJlYTJkNjM0ZmNhZmQ5ZjBhYjJkMjVhMWE3IGxlZ2FjeS10cnVuaworMzQ3NDUgMDI0YjQ3OTlhNDFkNTI1MTc0NTVjZTg1ZmVjODkyNGRkNDY5Y2IwMCBsZWdhY3ktdHJ1bmsKKzM0NzQ2IGJmMDM4OTg2Y2I4ZmRmMTI2ZmFkZjUzNTZlMDgxYzdmYmMyZjE0YTcgbGVnYWN5LXRydW5rCiszNDc0NyBmOTY3NTg5ZGY3NTEyNWE3ODk4NmVmOWNkZDUxNGFiZDdjNzQ3MDU1IHJlbGVhc2UyMy1tYWludAorMzQ3NDggY2UwNzExOGVlNWQyNzdkY2QzNWZkZTYzYjMwOTIwYzQ3OWNhNjE5NCBsZWdhY3ktdHJ1bmsKKzM0NzQ5IDdjNTVlYmVjNDhmNTc3YTVkYmJhODBjNWQ1NmJkNjBlYjNiNTQ2N2EgcmVsZWFzZTIzLW1haW50CiszNDc1MCBkYTE1NzhjZmFlMTgyZTU0YmIyNjZiOTBmMjA1ZjUxNDZjMzcyY2JiIHJlbGVhc2UyMy1tYWludAorMzQ3NTEgNmQzZTBlNmQ3YmU2MTU5OTg0MTI1ZDg1YjU2YjE2Y2UzMzUyZWMwMSBsZWdhY3ktdHJ1bmsKKzM0NzUyIDRiNmM3ZTVjYjg4OWIzM2Q4MTFlYzQwM2VlODQzOGQwMTNlZTljZDMgbGVnYWN5LXRydW5rCiszNDc1MyAyYzNhNzVjNTQ4MzM0OWI4NGNmMzQwODM4YWI4YzNlYjY0M2E5ODkyIGxlZ2FjeS10cnVuaworMzQ3NTQgZmFkY2ExNzE2NGMwNmM2MjI0M2IzMmU4ZTAzN2FlNmE4NmVkYjc5YiByZWxlYXNlMjMtbWFpbnQKKzM0NzU1IDQ0YWIyNDJjOWI4Y2Y1YWVmNWM4M2Q4MzQ4ZDY5NjAzOTc1NDNlZjEgbGVnYWN5LXRydW5rCiszNDc1NiAyZDY5MGE5NWU0ZmQxZTAxZWE0ODFhOTZmZDhmNmE5ZmI1NzFiNTg3IHJlbGVhc2UyMy1tYWludAorMzQ3NTcgZjcxYTIxNjc5NDM2YTUxMGNjYzQ2NTI5ODg1NWJiZmVkOGM5OTcxNiByZWxlYXNlMjMtbWFpbnQKKzM0NzU4IDZjZjA5YmUwNDkxZGU4NmJlODMzNjdmMDNlZjc1ODdmZjA5Yzc4M2MgbGVnYWN5LXRydW5rCiszNDc1OSA0MDA5YjM5OTI2MTZhMGQ2MGMzNThhMDI1ZDQ4NWM4MTAzMTFjNDBlIHJlbGVhc2UyMy1tYWludAorMzQ3NjAgNmYwMTcwMGMxODA4OThkZWMzZWQxMzdkNjA0ZjFhNzBjZmRlMmI5NSBsZWdhY3ktdHJ1bmsKKzM0NzYxIDljODQ2YzNkZjZmM2UwMjRlMGVhYWI0ZGRhNWI5YTM4OGJiZWRmNGEgbGVnYWN5LXRydW5rCiszNDc2MiA3M2Q1MjEzMzA1ZDM3NmQ1MDQ5Yzg0OGQ1OGIzN2MzMTBlZmUxZmI1IGxlZ2FjeS10cnVuaworMzQ3NjMgNmRjMTllNDgzNDdhMGI3OGYyNmI0NDc2YjI2ZjkyOGM2ZDdiY2YwOCByZWxlYXNlMjMtbWFpbnQKKzM0NzY0IGRkNTcwN2Y3MTUyNmFjZTk0YmE4NTU4YmExYTBiYWYwOWJlOGI1ZTIgbGVnYWN5LXRydW5rCiszNDc2NSAwZmY2OTI1OWIwMDVmNDczZjRmNzk1NmIyMGVkNDA3YzUxNWVlMmMxIHJlbGVhc2UyMy1tYWludAorMzQ3NjYgZmQ4N2NlMTgxOWZhMzc4YjIyNWRiMWExNzZiNDBhOThmZDRiZTBjMiBsZWdhY3ktdHJ1bmsKKzM0NzY3IGQ1MGUyNmYyMGYxMDg0ZjlmZGYxZjUyNmMxOWMxYjA5NzA5MTQxNTUgcmVsZWFzZTIzLW1haW50CiszNDc2OCBmNWVhYjYyODMyODY2NGZhODMwMzRiN2E2MDU3N2E5ZGZmMmZhMGYwIHJlbGVhc2UyMy1tYWludAorMzQ3NjkgMzU0OGYyMzQ4MzFlMDk5ZjE5MDUxMWI3ODI4NjlmNjFkZDM5MDYzNiBsZWdhY3ktdHJ1bmsKKzM0NzcwIGQzYWUzMjRmNmM4OTVmYTBiZmE5MGJiYzIwNDQ4MGU3MDkyNDgzZTMgbGVnYWN5LXRydW5rCiszNDc3MSA0NTZlMjc0Zjg2MDI2MjY2YzA2MWZkNjk0MmZmZjRiYzE4NzJlMTg5IGxlZ2FjeS10cnVuaworMzQ3NzIgNWRlYTczZGM5NjhiODQyN2RmOWUwZTdiMTkyYjZjMDU4M2I0YjYxNiBsZWdhY3ktdHJ1bmsKKzM0NzczIDNkMWYwZGY3NWE4MGM2Y2I1ZmQyYjBmMzhhZTMxNDU5N2E4M2MxOTUgbGVnYWN5LXRydW5rCiszNDc3NCAzODMzOGM5NzBmN2QwNzk5ZDM3OWVlNjExMWE0OTI4MDEzZjViMWIyIHJlbGVhc2UyMy1tYWludAorMzQ3NzUgMjUxNzE3NTY2ZTkxMmY4YmZhZmUyNWIyYTYzMDk5YmY5NDNkYWEyZiBsZWdhY3ktdHJ1bmsKKzM0Nzc2IGY2OTU4OTE3OWM1NTljMDU4ZjFlZTU5NmU1MGNmMTczYjFmOTQ1NzEgbGVnYWN5LXRydW5rCiszNDc3NyBiZjdkZjQ4MDEyY2IyYTY4MTNkZWQ0MTMyMTJkYWIxMDgxZTgyZWNhIHJlbGVhc2UyMy1tYWludAorMzQ3NzggNGUxMTI1MDU2NGNiZDNmMDYzNWE0Yzk0MDk0ZmUwMTRiNDc0MzFhNiBhc3QtYnJhbmNoCiszNDc3OSBkNmM3ZTU1OTYyNDdlYjA4OWI0MzMxZjhmZWYwNjc4NWUyYTMxOGUwIHJlbGVhc2UyMy1tYWludAorMzQ3ODAgNGEzNjFiYmI1Mjc4Y2E1N2UyYjNjOGI3N2ExYzg0MzZlMGEyNzc5NCBhc3QtYnJhbmNoCiszNDc4MSBmMGExOTdkZDIxMmQ1Mzk0NDJiYzdhNjAwNmMwNmNkY2U2ODcwOGNlIGFzdC1icmFuY2gKKzM0NzgyIGYxNDMzZDNjNjQ0N2Q3N2M2Njk2M2FlOWYyZWZhYmI4MTVhMzc1NTIgYXN0LWJyYW5jaAorMzQ3ODMgYjBiY2NiOWZiNzBhOGIzYTVjNjNmOGRkZmQxMWM1MzdlMTE3YzIzMyBhc3QtYnJhbmNoCiszNDc4NCA2NGRkZGEyNTU5NTI0YWQ4MTNhYzEzNmIzYTI5YzVlYmRlMDdiNDA3IGxlZ2FjeS10cnVuaworMzQ3ODUgNGUzMWMyNjFhNjY4OTVjNGQ0MDY2YjkxMTA2ZDM2YTI4YmQ3NWZmNiBsZWdhY3ktdHJ1bmsKKzM0Nzg2IDBhYzk4ODc4Y2MzMmI1Yzg3YzdhMjI5OTVhMDcyN2IzMzE0NWRiYmUgbGVnYWN5LXRydW5rCiszNDc4NyBlMDVmZTE3NzU1MjA2NGUzMTk4NjFkMDc4NjA2YTVjNmFjOTgxMzdkIGxlZ2FjeS10cnVuaworMzQ3ODggZWI1MDlmYzQ3ZjA3NTA4NjhhZjljZDYxMTA1NDJkZDE4Y2M1MTJkMyBsZWdhY3ktdHJ1bmsKKzM0Nzg5IDQxZjRjZTZjNGU1MDRlMzI0MWQyYzJkYTYyNzFlZWY5ZTlhZmU0ODkgbGVnYWN5LXRydW5rCiszNDc5MCBhMTAyZGE5MTY0MGUzNDZhOWY5ZGZjODJmNTliNzkwMDQzMmQzY2E0IGxlZ2FjeS10cnVuaworMzQ3OTEgMGVjNGQzZWJkNDMzN2YxZDhlNzk4ZjBlOWY3MzQzYWY5MjkzM2E4NSBsZWdhY3ktdHJ1bmsKKzM0NzkyIDkzMTRiZTBiYmI2NDAxOWI4ZDk3YmM1OTRlNjgxMDZiY2ZjMDZjZDggcmVsZWFzZTIzLW1haW50CiszNDc5MyA1YTA2NThjMDA4NzlhYTM1ZjMzYzhhNDE4OGIzZDRjNWEyOTM1YjNhIHJlbGVhc2UyMy1tYWludAorMzQ3OTQgNzgzNjk0ZDRkNGNmMGNmZGRiZDI0NWJlMzBiOGQ1N2FhODdiNWFjOSByZWxlYXNlMjMtbWFpbnQKKzM0Nzk1IGQ0NTE0Y2UxNGI5NjdmN2Q5Njc5OGEzMWY1OGUyNWNiNjYzYTZlMTkgcmVsZWFzZTIzLW1haW50CiszNDc5NiBkYTE0ZDgwNmU4OWM3NTJmNmE3Mjk0YTNlNGE2OWJiMDc0ZWM0NjcwIHJlbGVhc2UyMy1tYWludAorMzQ3OTcgZGUyODU1YjNmNDEzNmJmMWNhMGI3N2IwMjg4NWI3ZDU0YzhiYTFlOSBsZWdhY3ktdHJ1bmsKKzM0Nzk4IDQ4Njk1YzgzOWQ5OGIzYTI3MmM2MDkzMTA0OTVlYTExZTYyYTg0NmEgcmVsZWFzZTIzLW1haW50CiszNDc5OSA1YjUxNWNjOTBiNWE0M2VmZTQyZjQ2MzEyYjZiYWUxMGVmMDA5M2M0IGxlZ2FjeS10cnVuaworMzQ4MDAgYTUyZDc0OTQ4ZGQ0ZjRlM2ZiOGVmMTEyYmJmNTQyZWNkMWRmMjQ5YiByZWxlYXNlMjMtbWFpbnQKKzM0ODAxIDJhNmZjNGQyNjFmOGU2OGRhYjk0OGE3ZDY2NWZkYTUyZDRmYWM4ODEgbGVnYWN5LXRydW5rCiszNDgwMiAyYmE5YTg2OTY1NjAyZDhlMDU0ZTBmMmQxYzg0NDJmYTJkYzMwYmIyIGxlZ2FjeS10cnVuaworMzQ4MDMgNjIyOTkxY2MxZTNjNThiNTFjNTUyMWEzMmE4MTljZDllMWJlYWQ4OSBsZWdhY3ktdHJ1bmsKKzM0ODA0IDM2MDYyZDY0NWZiYjk1NjM1ZWJlYjUwMTU4MjdmMmFlNmQ3Y2ZkN2IgbGVnYWN5LXRydW5rCiszNDgwNSA2ZWI0NzNkNjgwNDI0YzU0NDg2ZjljMTNmZTM3ODM0ZjZmMzQ5ZDM5IHJlbGVhc2UyMy1tYWludAorMzQ4MDYgMWYwOTgxOWY1MDhiMjVkNDU0Y2I3ZmVmYWExODMwYjNkYTNjNzM1NyBsZWdhY3ktdHJ1bmsKKzM0ODA3IGQwMGYwMTIwNzgzN2I2NzIyNWY0ZTlhYmI4Mjk4OGVhODQyNGM4ODIgcmVsZWFzZTIzLW1haW50CiszNDgwOCBlMzAyNWZlNzBkOGJkMDRmNzIyZTczNzkyZjg4YzRkZDZkZWY3OGY3IGxlZ2FjeS10cnVuaworMzQ4MDkgYTJmNmM2YTY3ZjI0MTQwOTljYzcwMTkzYmI2MDM4Zjc1YjYwNzZmMiBsZWdhY3ktdHJ1bmsKKzM0ODEwIGIyNGQ2YTcxYjAxZjEyNjU5OGYwNmVmMDQ3ODIyMTBiOWU2NjMzYjUgbGVnYWN5LXRydW5rCiszNDgxMSA4ZGQxNTkyNzk1NzZhNTc0N2UzZjJjZTdkNTdkODFiOGVkOTllYWFhIGxlZ2FjeS10cnVuaworMzQ4MTIgODcwNjE1YmZhZWRmYjllNGIyZTljM2ZkNTk0NmJjOWJmOGM4Y2U0ZiBsZWdhY3ktdHJ1bmsKKzM0ODEzIDJmNzk2Yzc1OTZlY2EyM2YxOGMxOTRkOGE2YzEwN2Q5M2Y2Y2FkYmMgbGVnYWN5LXRydW5rCiszNDgxNCAwYTdmMWE1M2M3NzNiNGFjMWY1YzhkNTJiMjM3NWExZTU0NDg4OGQzIGxlZ2FjeS10cnVuaworMzQ4MTUgMzg2MWViNDY3YzI5ZTA3YmE2YjM2Njk3NjBkZGY3MmNiMzNiNDQ4YyBsZWdhY3ktdHJ1bmsKKzM0ODE2IGRlMzkxZTlkNzBlYTE2N2YxZTgxYmE1N2EwYWIzYzY4Njc3MzFhZDAgbGVnYWN5LXRydW5rCiszNDgxNyBmMmU3NjQ2Zjc3NjMxNjFiYmRkZGYyNzZkNzQ3ZjU2ZmY2ZjRmMzEwIGxlZ2FjeS10cnVuaworMzQ4MTggOWNhOWQzMThhZjc4YjdkNWY4M2Y5NTYzN2VhMTlkOWJiMmRkNjIyNyBsZWdhY3ktdHJ1bmsKKzM0ODE5IDMwMzgyYWIwNmNkMWMyYzBiOTA0MjYzZDBmNDA0NDBjN2ExZjg2NjggcmVsZWFzZTIzLW1haW50CiszNDgyMCBkMzVmODc5OWNmMTIyMjA1ZGY1Zjg0NjZhM2ViMzIwNjJiNzg2Y2I2IGxlZ2FjeS10cnVuaworMzQ4MjEgMDNmNDNkNjE5ZmY0YjhhNTUwYTZkMWVjMzM4NmFhNWY3YjhiODI5NyBsZWdhY3ktdHJ1bmsKKzM0ODIyIGJkZjYwYmVhNDE3N2E3ODA0MmMwZjA5MjMxODM4YzQ0YzJkYzdhOTMgcmVsZWFzZTIzLW1haW50CiszNDgyMyA3NTkyMTRmMWVjNjkxMDcxNDFmOWEwMDQyNDk2ZmM2MmRlYjVjNzU4IHJlbGVhc2UyMy1tYWludAorMzQ4MjQgMTEzZWFmZTg4NDhmZjU4NzE0MWMzN2EyYjVhZGYxMDdjNDJlMWVmZiByZWxlYXNlMjMtbWFpbnQKKzM0ODI1IDYxYjcwZWI4ZDE2MGIzMTk1MTgwNGYzYjVjNjQ2NWM2OTRlOTgwNTggcmVsZWFzZTIzLW1haW50CiszNDgyNiA4NmNmMmI4MTBmM2EyYmU3N2I0MDg4ZTFhOTY3M2ExZjA2ZDFmNmM2IGxlZ2FjeS10cnVuaworMzQ4MjcgYzIzYTg2MjE1ZDlmN2UxNzUwZjliNWFlNGRlZDRlODYwMDdiZWUyMiByZWxlYXNlMjMtbWFpbnQKKzM0ODI4IDIwMTRmOWM2MzZmYmU3NTZhOTQ0YWUzN2Q4MDRiNDFhMDZhNjQ3OGEgcmVsZWFzZTIzLW1haW50CiszNDgyOSAwYTYzZDRkMDE1Y2Y5NTBmMTg4ZmJjZGY5MWJhNTU0NTdkNDY4YWNjIHJlbGVhc2UyMy1tYWludAorMzQ4MzAgOTE1YWEwZTY5NDg1OTg5ZTc3ZTk0NjA4OTRiMGM3MzdjZGFkNmZlNyByZWxlYXNlMjMtbWFpbnQKKzM0ODMxIGEwOTZkN2I4ZWM4YTI5ZTEyMDM2YTU4ZTU3MmI2NmM3Nzk0ZDRhMWQgcmVsZWFzZTIzLW1haW50CiszNDgzMiA5NzJlN2ZhMWQ1OTg2YTViMTc3MTY2ZDNhMTVhODkxZGU2ZTlkYWE5IHJlbGVhc2UyMy1tYWludAorMzQ4MzMgNDVjYjI4NGI4NGQzYWIyNjVhYTZmMjQ0N2E5ZTdmYWM2ZDU0YmEyMCByZWxlYXNlMjMtbWFpbnQKKzM0ODM0IGQ3NjMwY2U3YWE5ZmQ1YjEyMzVhNjUyZjM5OWNhN2Y5M2YwYTVhZDAgbGVnYWN5LXRydW5rCiszNDgzNSA5ZDYyNjY4OGNhN2JjZWIwNjJiYWYxYzRjYWUxYjlhMTRmNjUxNjVlIHJlbGVhc2UyMy1tYWludAorMzQ4MzYgNzQwM2UzOGEyZjEwN2M5YTlhODI0ZWU2NzdjMGFhNzkzNDUzYzVjYSByZWxlYXNlMjMtbWFpbnQKKzM0ODM2IGQyMWQ0YmEyZjk3MzQ2N2QzMDc5NGEzZDJhYzQ5MzY1ODE4MGU1MDMgcmVsZWFzZTIzLW1haW50CiszNDgzOCA1NjYzNTE5Y2YwNmZmNDNmZDI0MmU0YzVmNWIzOTc1NGI2NGZhNzkyIHJlbGVhc2UyMy1tYWludAorMzQ4MzkgZTk2ZTM5Y2QyZDE0MmIxZmMzYjU4OTgxODg1NWMwOTRkZDhmMjU5YiBsZWdhY3ktdHJ1bmsKKzM0ODQwIGJhODg2YWUzMjJlYzE2OWZkZmQzZjFkYmQ0NGMwOWJiZTlkMjNhZjMgcmVsZWFzZTIzLW1haW50CiszNDg0MSA2MGU1ZDhiN2U5NjRlNmNhOTE0YmNmZTRiOGViZTA2MDI3ZDc2NDgxIGxlZ2FjeS10cnVuaworMzQ4NDIgODM1Yjc5ZWFjODEyY2U5MDhmM2I2MGZkZmEzNDhiNjE4Mzg5YmJkZCByZWxlYXNlMjMtbWFpbnQKKzM0ODQzIDhlODBmNTUxYjBlOTY4MWM0NWJjZjg1YzhiYjhkODgzMWE4ZTBiYTkgcmVsZWFzZTIzLW1haW50CiszNDg0NCAzOGJlY2NmNGEwYmJmNzc3MGYwZWQ1YjhiOWU0NTliYzgxN2EzZWVhIHJlbGVhc2UyMy1tYWludAorMzQ4NDUgYjc3ZmQ0NjllZTM1NDFmYThmN2JmOWQ4MGEwY2FiNWIxYTE1Y2RjNSByZWxlYXNlMjMtbWFpbnQKKzM0ODQ2IDY5ZGU1YWVlMWZiYjUxMGQxZDU2ZTRlYTFmYTBhZDE5NWY5ZDNjYjMgbGVnYWN5LXRydW5rCiszNDg0NyA3YzhkYzY0MDQyM2E1MTQ4ZTE3YjM0MTM3YTc2NWM0MTM2ZDY4ZDM1IHJlbGVhc2UyMy1tYWludAorMzQ4NDggNTM1MmE2ZWJhZDlhYzQwMDljMzBiYzlmZTg0NzFjYzIyMWFhYWIyNiBsZWdhY3ktdHJ1bmsKKzM0ODQ5IDE3ZTZlOTgyOWM3ZTUwYmYxNjI3Mjk5ZTc4MDM4NzIxNGQ1YTAwNDQgcmVsZWFzZTIzLW1haW50CiszNDg1MCBmMTA4ZGI1OWViNzZhMjZiN2ExNWE5NDI3NmMxMDdlNDA4ZTI5Yjg3IHJlbGVhc2UyMy1tYWludAorMzQ4NTEgYjAyOGZkNTQxOTQxOThhOWUzMTIzNDUzZGZiNWQyMTdjZGE4ZGIwNiByZWxlYXNlMjMtbWFpbnQKKzM0ODUyIDkzOTVjZDkyZDJjZDdlNWI2OTk2ZmMzYmFiNjk0NmQ0NWY3NmI0NWQgbGVnYWN5LXRydW5rCiszNDg1MyBiZTllZjliOTJkNjEzOGMwYjcwZmM3ZDAxOTQzMmU2YzM5YzlkOWU5IGxlZ2FjeS10cnVuaworMzQ4NTQgMjFhZWI5ODMyYzFkMzI4MDQyYzRmZjZjZDJkYTExN2M5M2U5ZTY4OCBsZWdhY3ktdHJ1bmsKKzM0ODU1IDQxNWVmNTUyMWE4YWZkODUyOThmMDM1YmJmNmIxNmMyZTAxNTc4NDIgbGVnYWN5LXRydW5rCiszNDg1NiBjOTUzZmRiNTFjZGQ3ZWY4ODEzYWIyMGI5NThkNWVkMGM3MGYwNjkwIGxlZ2FjeS10cnVuaworMzQ4NTcgYzZmMTY1MDRjOGMyZjVhZGU5NjM3OTA5N2UxYTljNjU3ZTg4OTQzMCBsZWdhY3ktdHJ1bmsKKzM0ODU4IDc1YjYzZTVmMDNmMjEyMTYyNTFiNDFkZDhjNDczZTQ5YzFkNThmOGQgbGVnYWN5LXRydW5rCiszNDg1OSA4OWQyNmUwM2M2NTMwMmIwMTVlYTM1MTg0YmZiMjM5ZDk0NjFhZTUwIGxlZ2FjeS10cnVuaworMzQ4NjAgZmRlNzRmYWRmNzgwYzlhODEzOWJjYzFmZWVmM2M2ODNjMmIxYmRkOCBsZWdhY3ktdHJ1bmsKKzM0ODYxIDdhYWQyNGNhZGRiNWQwYThmOTU5NmRkMmQ5MjM3NWNhZjIyMTc3NDAgbGVnYWN5LXRydW5rCiszNDg2MiA1MDg4YTgyMzQxMTdlY2RlMmM2NDQzMTJmM2JjNzcyOGVkMTc2MDJhIGxlZ2FjeS10cnVuaworMzQ4NjMgZWIxMjdlNDAxYzY0NDlkMzcwMTMwMWRkZmUxMWEyMTY1YWY3OWI0ZCBsZWdhY3ktdHJ1bmsKKzM0ODY0IDk3ZWJkMWIyZjQ2ODU1N2QwM2IzYWRhMjY4NDFlOTQ5N2VkNjU3NzIgbGVnYWN5LXRydW5rCiszNDg2NSBlOWYzYjgyMmNlMDJlYzk4NmNkZjUyOTQyMjA0NGNmYTVhNTQyOWMxIHJlbGVhc2UyMy1tYWludAorMzQ4NjYgOWU3NTA3NTMwMTBhZDgyY2JiYjZkMzJkMDFlYmQ3ZmE5MjAwMTkzNyByZWxlYXNlMjMtbWFpbnQKKzM0ODY3IDA1MmU0YzU3MjI2MTVlMWY0OTkzZjRiNTQzZTdkZDI1MDZmZDRjYTQgcmVsZWFzZTIzLW1haW50CiszNDg2OCAwMTcwNDg1NjU5MzZiODMyYWI1YzQ5MTZiZjdmMmNjMWM0MmM2OThhIHJlbGVhc2UyMy1tYWludAorMzQ4NjkgZDM2MjI3M2Q0NjhiZDEzZTgxMzViN2Y5N2QxZjc5MDZiYTk2ZGFmMCBsZWdhY3ktdHJ1bmsKKzM0ODcwIDllZDc1MjU1OTQ3NzdlZTRmZDU0MDNkZmM0N2I5Mjk2Nzc3ZjhiMjAgbGVnYWN5LXRydW5rCiszNDg3MSAzODFhZTMyNmVlNjU1NWU3NGRmNzQ0N2ZiMGI5NzI5ODkyNWRiMjJjIHJlbGVhc2UyMy1tYWludAorMzQ4NzIgZGNmNWJlMGYwYTFmOWFhMDU4MzQ5NTVmZDE4NWEwMjk2NjliYzZmNiByZWxlYXNlMjMtbWFpbnQKKzM0ODczIDg1MThjNDY4MTc3MWY3MDQwNDJmYjg4MzlkNjUwYTYyNjY2MjYyMTYgbGVnYWN5LXRydW5rCiszNDg3NCA5NGMxYmQ3YTU1YWVmNTQ0OGZjNjk1ZjI4YzUzZjFlNTY4MGQ3Mzg0IHJlbGVhc2UyMy1tYWludAorMzQ4NzUgNjBiYzExZTMwMDY4MmJhNGFkMDkxZTRkNGE0OTA0YzJiM2U4OTEyNCBsZWdhY3ktdHJ1bmsKKzM0ODc2IDYxNGFkNTM4OGM5ZGUwMDAzOGE1NDE3MzlhMWRkYTU5NjA0ZmFmMjAgbGVnYWN5LXRydW5rCiszNDg3NyBkMWQyOGNjYTQyYzE5N2YxZWI3N2M5MDU1YWQyYTdjMjM3YzFiNzEyIHJlbGVhc2UyMy1tYWludAorMzQ4NzggMWRkYzg2YjU4MDQwMDYyYmM1Y2Q5ZjdjYWRlMGJhYWUxYjRjYThiMiBsZWdhY3ktdHJ1bmsKKzM0ODc5IDI2ZWZhOGE1MzkyNTk0M2IzZmJiZmJiNDM0MGI5Yzc5MGJiOGE3MDggbGVnYWN5LXRydW5rCiszNDg4MCA5NGRmZjRhMDJjYTMwNjc3YjZjZDAzOGRmNTMzZWI1ZDhmMjFmOGRmIGxlZ2FjeS10cnVuaworMzQ4ODEgOWY4YzA1NTg3MjEzZTFkODg1MTVjMGY1YTNmNTMwMTVhYzA1NTgyMiByZWxlYXNlMjMtbWFpbnQKKzM0ODgyIDRlYjVmMGNhYjA5ZTRhZDFlNjVjOWQxNzFkNDNiNzUwMzBhZGY4NzkgbGVnYWN5LXRydW5rCiszNDg4MyBlMWYxZmI3NDQ1MWI5YzBkMDE2NjYxMWVlNjg2NWQ5MTRmZjM0MzQzIGxlZ2FjeS10cnVuaworMzQ4ODQgMmEwNzgyY2MxNTFmODQwNDE3Y2YxNTkyYjg3NjliN2Y2ZWZlNDg1YSBsZWdhY3ktdHJ1bmsKKzM0ODg1IDRhMTJkOTFhZjhjM2Y5NWYxNDg3ODk2YWEzMDdiMTE0NGYzYjEyMTMgbGVnYWN5LXRydW5rCiszNDg4NiBjNzI3YWQwMDNmZGJhY2QyYmU4ZjRkYzQwYTM5Njk2MWRkYjc4NzE4IGxlZ2FjeS10cnVuaworMzQ4ODcgMDM2NzM3NzMzMDg0NDdkYzkzNmRlNjk5ZTVlOGJiYTIzNThkOWVlZSBsZWdhY3ktdHJ1bmsKKzM0ODg4IGFhYjM2MTJmMmMzNTJiMGExYTQ5MDgxZTBiMjZiYTBjOTAzZTYwZTggbGVnYWN5LXRydW5rCiszNDg4OSA4ODVkYmYxNTc4YmNiMDZiYzVhZTEyM2FkMjZmZTAyNmU2MzFkOWQ4IGxlZ2FjeS10cnVuaworMzQ4OTAgMDYzYjdkMjI1ZThhYjg0NzZiNmQyN2YzNzgzYTRiYjUwZDVkM2U5OCBsZWdhY3ktdHJ1bmsKKzM0ODkxIDQ1Y2FiZTljZDljOTI2MWYyNzdmYjc4OGYxODYwZmM3NzVlZWZiMTcgbGVnYWN5LXRydW5rCiszNDg5MiA0ODcwMmYxOWNjZmIzZWIwYmY1NGI3ZDZkOWFlM2RiMzMyOTEzZGE1IGxlZ2FjeS10cnVuaworMzQ4OTMgNGNjMTY2MTViMDcyNDVmYTQ3MTVlODA2NzNjNDdlNzg5OWIyMTUzOSByZWxlYXNlMjMtbWFpbnQKKzM0ODk0IGMyMmVlYzgwNzIyNDc0MmQzYjEzODM3OGNjY2MzOGFlYmM4NDUwYjQgbGVnYWN5LXRydW5rCiszNDg5NSBjYThhNjk5NjlmMDM4ZjUwNjE2MjA1YjlhZTUzODMyMzU1NTljZDU0IGxlZ2FjeS10cnVuaworMzQ4OTYgZTRmYjYxNjQxNThjNzg0ZDkzZGM3OGUzMjQ1MjYyYTc2MmViZDUyZiBsZWdhY3ktdHJ1bmsKKzM0ODk3IGM5YmJjOTY3YWM5ZjYwOWY5MWQ2ODc1NzZmN2I2YWUzMWViNDVkZWMgbGVnYWN5LXRydW5rCiszNDg5OCA4OGU4MGEwNDMyOGEzODQ3Y2UwZmE5NWQ1Yjk4YzZlNjIzMzEyMjc2IGxlZ2FjeS10cnVuaworMzQ4OTkgNWNjMWE0MDBhMDJjMzExYTRmMWM1OTg5NzhjZGY1ZjNlYWYzN2MzNCBsZWdhY3ktdHJ1bmsKKzM0OTAwIDM4MTE0MGU3ZTlkNzcxNWNmZTcxZmY3YjQ5ZjUxN2NmYmQ3ZTQyMzUgbGVnYWN5LXRydW5rCiszNDkwMSBlZWFhMzY2MDY3MWNiNmFkNjk2YzAzYmJjMzhiMjhjMzk1MWU4YTVlIGxlZ2FjeS10cnVuaworMzQ5MDIgMWJiYzIwODVmMjEzYjBiYTY0MTI4NWI5ZjFhNmE1NWQxNmZhMzBkZiBsZWdhY3ktdHJ1bmsKKzM0OTAzIDIxYTI3YzIxYTJjNTdhZTNiNjcwZjFmNzkxNTRkOTY4NmM5ZDUwNDkgbGVnYWN5LXRydW5rCiszNDkwNCA0OTQyYTBiNjNjOGNjZjFmYzVkMTFlN2NiYzk3YjZjMTdjMGNlNjIwIGxlZ2FjeS10cnVuaworMzQ5MDUgZTVkOTdhYjcxMGEyMjVkM2U0Y2YxNmI4Y2ZmOWUzY2RlNzBjOTY1ZiBsZWdhY3ktdHJ1bmsKKzM0OTA2IGM5OTYyMGNkOWM2NTUyOTU5ZGZjZDg2NDk1OWYwYzQ4NDUzOTU3NWYgbGVnYWN5LXRydW5rCiszNDkwNyAxMGM0Y2MzNTJkMTNhNWJlNDgyNjA4ZjNlMTU5ZmJlN2NkMjJkMTI3IGxlZ2FjeS10cnVuaworMzQ5MDggNDdlYWEzOGIyOWNiZjY1NTc5ZTBiYzllNzk2NTEzOWI1MGVmOGE2OCBsZWdhY3ktdHJ1bmsKKzM0OTA5IDc0YzE1NDcwOGIwY2ExOWNhZGY3NjVjMDUxMTg4M2I2NWJjOWM2MDMgbGVnYWN5LXRydW5rCiszNDkxMCBmMjg5ODIwNjBiMjBjMDg2M2EwNTQ5ZmU0ZjE1YTJlODc5OTg1M2I4IGxlZ2FjeS10cnVuaworMzQ5MTEgZjJlMGQ2MzBjZjM5ZmU3NGJiNzVlMmZlMmU0ZWNkNmExMzZmNTM1MCBsZWdhY3ktdHJ1bmsKKzM0OTEyIGIyYTBjZDJlOWQ1NTExMjhkM2RiOGFmYjNkNTVjYTFjMDZlYjJkODggbGVnYWN5LXRydW5rCiszNDkxMyBjODVhOWVjNTc5NmNkMDljOTZhYjYxZjUzY2FhNTIxODYwZGI0ZGEzIGxlZ2FjeS10cnVuaworMzQ5MTQgMjkyYWQxMzVjZWYxNDYyMGFiNGI4ZjUwOGNjMGNhMjYyNmY3OWI3NyBsZWdhY3ktdHJ1bmsKKzM0OTE1IGU0NjgyYWY3YWVhOWVjNTJkMzIyOTg2ZTJmZjlmODM0YmYwYTM2OWQgbGVnYWN5LXRydW5rCiszNDkxNiAyMmYwOWFiMGJhZTk0NmJiYWViYmU5Mzg5MmMzNGY2MTZmM2E3M2E1IGxlZ2FjeS10cnVuaworMzQ5MTcgMWFkMGRmODdlZDZjMmU1MDA4ODI1NDA1MDM1OWNhZjIwN2NkMzQ3MCByZWxlYXNlMjMtbWFpbnQKKzM0OTE4IDdhNmQwODE0YjU2MWVkMWFkZmVmZTE5ODdjOWNkMDRjNjdiZjgyODYgcmVsZWFzZTIzLW1haW50CiszNDkxOSAyMjliYjlmMmU5NmYzZmUxNWExMWE1MWUzYmU0NTVhYTU0N2NhNzFhIHJlbGVhc2UyMy1tYWludAorMzQ5MjAgZDZjZWEyMjhmYjI1OWJhOTIzNTIwYmJmMzQyOTNiNjlkYmJlZmRlMSByZWxlYXNlMjMtbWFpbnQKKzM0OTIxIDY4NDU2OTczNTNhMzE1MjVhOGEwMjUxODBlZTgxNjRmMjUzYWE2MTAgcmVsZWFzZTIzLW1haW50CiszNDkyMiBkOTgxMTc1OWU3ZGViZGUwMWEyYTE4NGZjMThiOTZmZjVkNjFlMDcxIGxlZ2FjeS10cnVuaworMzQ5MjMgNTA0OTQzYzg5MTkzZGEwZGMxM2ZjMDdmNjYwZGJkZjk4MWY0NTI5ZiBsZWdhY3ktdHJ1bmsKKzM0OTI0IDYzY2M5ZmNkMjg1ZTRiM2ZhNTQxMDljZjNiNGE5NmMwYzcyOTU1YmEgbGVnYWN5LXRydW5rCiszNDkyNSBlNTA2NThiM2RmMGU3MTJiNGY5Njc5NzEzMzhiODdkN2RjNzdlODI3IGxlZ2FjeS10cnVuaworMzQ5MjYgMDJlYmUzNDU2NTk1MzE4MTNjYmQ2OTY4ZGQyZjhlZTA2ZTU5MGUyZSBsZWdhY3ktdHJ1bmsKKzM0OTI3IGJmYTAzNjlkNjc2MGIyMjhiNDM5YWEyODE1Y2E1YTMwYmMwNTI5ZDggbGVnYWN5LXRydW5rCiszNDkyOCBkZDc4OTA3MmQ5NDkwMzBlNTZkNTMyN2M1NTZlZWQwYzhiZWJiMGY1IHJlbGVhc2UyMy1tYWludAorMzQ5MjkgY2JiZmQ0MTI3ZTI0NzU0ZTZjNTdmYzJjZjc2NjVlZGExMGY2YWQxMiBsZWdhY3ktdHJ1bmsKKzM0OTMwIDM3NzFmZjk5ZDVmMjhhZDAxMmEyMjAyZTczODdlOTJkMzRmYWQ2ZGEgbGVnYWN5LXRydW5rCiszNDkzMSBmMzg4ZTgzZjhlNDMzOGUxNzVmMjc1M2VjOGVlNWM5MTAzZmQ3ZDkyIGxlZ2FjeS10cnVuaworMzQ5MzIgOTQ5M2RkMjIyZmJiOWIwODZiMDNlOTg5YmJiNWFhNjA1NDczYjEzZiBsZWdhY3ktdHJ1bmsKKzM0OTMzIDVlOTc3NTdkODdlNzMwMzdmMDc2MmMzZDFhODM4NmIwYTlmNmViYzAgbGVnYWN5LXRydW5rCiszNDkzNCBjMDZiNTcwYWRmMTIyYmJlOGMyMTA4NWUxNjE5OTdjYzM2MjRkMTczIGxlZ2FjeS10cnVuaworMzQ5MzUgNGQwNzU2YTEzZjZiOWU0YzhlZGI3MWI2MjdkZWE0YTM5N2E0MWRlNSBsZWdhY3ktdHJ1bmsKKzM0OTM2IDViMDM1ZTZlNDRkYzY4YWVhY2RkNmUxZDA2OTg1MjI4NzFhNzBiN2UgbGVnYWN5LXRydW5rCiszNDkzNyAzNjA3ZjIzMzUyYjk4NTk4YjY1ODBiZTBkNmQyOTQ3YmVlNDE4OWI4IGxlZ2FjeS10cnVuaworMzQ5MzggZGVmMjc1Mjc3MjgwNjFhNDE5ZDBlODk4YTdjNzlhODhjNzQzNDg1NCByZWxlYXNlMjMtbWFpbnQKKzM0OTM5IDg5NzY3YzE4YzYxNjA4YjZlYjlkZjRmYmMwMjNmOTFiOWIwN2U1ZTQgcmVsZWFzZTIzLW1haW50CiszNDk0MCA4OGUwMDAyMWFjZmY2ZWI4YmNmZWJhMDgxYWIzNjA2M2JjOTM1YTIwIGxlZ2FjeS10cnVuaworMzQ5NDEgOTcwNjJkMzY1OGZlN2M3MDc5MmJjMjRhZmZiZjg3YzY2NDU2MTI4OSBsZWdhY3ktdHJ1bmsKKzM0OTQyIDBmNzA5Y2VhNDNjNzE2ZjE4OThlNjViOTMyOTc2MWJiMWI0ODkzZjMgcmVsZWFzZTIzLW1haW50CiszNDk0MyBlYTNjNmY2ZTQ2NzkxYzZmYjJlNzk2ZDcyYzBmYjBiMTZlMDZmODY3IHJlbGVhc2UyMy1tYWludAorMzQ5NDQgZWRlNTE4YjBiOWRhNzlmODU0MmU4ZWVhYWFmYzNlODJkMTRmZDRlNSByZWxlYXNlMjMtbWFpbnQKKzM0OTQ1IGMyOTY3Y2U3YzAxZTQ1MjY4NDYyYTA1ZTc5ZWYzMDQwZjJlOGU0Y2QgcmVsZWFzZTIzLW1haW50CiszNDk0NiA5NTVjYjk2OTc3NjdmZTI5OTUxN2U1ZjE3ODRmNTVmNGUzMzU0NTU4IGxlZ2FjeS10cnVuaworMzQ5NDcgMWE5ODhhMDZiZDMzNmI3NjU2NmUwNmQ5NDFmNDgzMGQ0Y2Q1ZmZjZSByZWxlYXNlMjMtbWFpbnQKKzM0OTQ4IGI4MGEzYjgyZGNmOWUyZTQyN2Q1ZmQ4NDMwMzlkZGQxZmU4Njk2NTYgcmVsZWFzZTIzLW1haW50CiszNDk0OSAzOTUwODJkYzIxOTQyOTg5MWRkNzE2NDU4ZmFkMThjYzg1MWYyY2MxIGxlZ2FjeS10cnVuaworMzQ5NTAgNjQxNjZlYWY2MjEyNGIwMTBjY2ZlOTI0ZmJmYzllNTA2YmNjYTIzMiByZWxlYXNlMjMtbWFpbnQKKzM0OTUxIGE1OTIyYjlkMDM3OWEwNzY4NTA0M2MyMTM5M2YwOGVlMDRmNGJiYjMgbGVnYWN5LXRydW5rCiszNDk1MiAzODg1NWZkYTQyOGE2OGQ2MTI5NzQyMjJiYTQ1N2E2ZDcxYTI4ZDk0IGxlZ2FjeS10cnVuaworMzQ5NTMgMmIwYzc4NWFiMzBhNmUyMjdkOWQwNTYwYWY0OWFkNmIyMzU5ZDkyMSByZWxlYXNlMjMtbWFpbnQKKzM0OTU0IDY3YjlkZTYyZWNiODY5Mjc3MDFjMWZjMzMzMDcwOTk3OWRkOWE1MWYgcmVsZWFzZTIzLW1haW50CiszNDk1NSA5YTNhMTZiODJkY2JiZTRhMGJhODI2MmE1ZTZlYTBhZDNmYjVjMTMxIHJlbGVhc2UyMy1tYWludAorMzQ5NTYgZmI3NTllMjgxYTJmMjMwMDg1MjQxZDRhZWIzNjQ3YjMzOGY4OGRkYSByZWxlYXNlMjMtbWFpbnQKKzM0OTU3IGQwOTllZDkzMjk5M2Y5M2Q5MTg1YTE2NTJhNjA0YWU4ZTlkNjkxNWIgcmVsZWFzZTIzLW1haW50CiszNDk1OCA1ZGM1NzU3YjExOGFiZjNjY2Y2N2E1NzliYmVmN2JmMGVlYTViMWIyIHJlbGVhc2UyMy1tYWludAorMzQ5NTkgYjIyMGI1OTBlMmVhOGVhNzQwY2M3YmY5ZjMxY2JhN2Q1MmFiMDVlMSBsZWdhY3ktdHJ1bmsKKzM0OTYwIGFjYmM3NTYzYThlN2VkZjczNWM2ZjQ2ODMwOGY0NzFjNGQ2MDI2NzggbGVnYWN5LXRydW5rCiszNDk2MSBhNmYzNGZiYTkzNzA2OTg3YzdhYTkwYmU3N2FjMDRhMDQ0ZDU5MWUzIGxlZ2FjeS10cnVuaworMzQ5NjIgNGVkZjIwMGE4MTE4NWE0N2ZiNzQ2MWY0M2VjOWJjNDM2N2FlNzZiYiBsZWdhY3ktdHJ1bmsKKzM0OTYzIGYwYWUzMTNhMmFjODY0NzJkNDRiMDg2NGI4ZDFhNThhN2E1M2IwZmUgcmVsZWFzZTIzLW1haW50CiszNDk2NCAzYzRjMDg3NDk0ZTBjYjg4NDE5MDQyODIwNjlhOGIyZmU2NGUxNjM0IHJlbGVhc2UyMy1tYWludAorMzQ5NjQgYThmMTI4NmYyMTcxMjljZGI1M2UzMjBlZTEyNWQyYzJjODBlMTM3NyByZWxlYXNlMjMtbWFpbnQKKzM0OTY2IDI4ZWIwMDQ2Y2U4YTc2M2E4ZDNhZGRlZmIzZGFmM2I0YWZjMTc0ZmMgbGVnYWN5LXRydW5rCiszNDk2NyBkZjhlODc5YzhkNzZkNTBjZWRkZjEyY2JjMWRlNzc2OGIyOWNmNGJkIHJlbGVhc2UyMy1tYWludAorMzQ5NjggOWM2YTUxZDg3OTMwMjk0NDY2ZmVhODY2ZWMyMzljY2IzZjBiZDY4OSByZWxlYXNlMjMtbWFpbnQKKzM0OTY5IDFjYjg3ZGFkMjYzZDc3ZGQ0MGMyY2U0ZTk4NjRjZGQ5MTk1ZDljZGMgbGVnYWN5LXRydW5rCiszNDk3MCA4ZWEzYTgyZjkxM2Y2Y2EzYzA5Mjc1YjRiNWY5NDM1OGE1MTA1M2ZhIGxlZ2FjeS10cnVuaworMzQ5NzEgY2UxNjViZThjNmI4OTg2YmQxZjEyNWUxZjRkMjhkYjdlYzFlMmU2OSBsZWdhY3ktdHJ1bmsKKzM0OTcyIDM1M2ExNjAzM2Y2YTRlZDY5NTg5MGU1MTk2ZTk1YzI3MWI5MWQyNzcgbGVnYWN5LXRydW5rCiszNDk3MyAzNTM5M2E5MmFjZDFkMzcxMTM0MjMyMTU1MWFkNzg0MmVlZmIzNmQ1IGxlZ2FjeS10cnVuaworMzQ5NzQgZGZkMDExNGNmOWVjZTdjNjIwZDQxMmY3NjYzNWRhZDI3M2JmY2I1MyBsZWdhY3ktdHJ1bmsKKzM0OTc1IGUxMThlNGU4ZTIyNDhlNGQ2NWIzZDczYmU1OGE5MWU1NzQyYTY2ZTggbGVnYWN5LXRydW5rCiszNDk3NiA4OTIxMTZhODg2ZTAwNTFhOGQzMmFmYzNhMjMzMmQ2YTAzYTRiOTJjIGxlZ2FjeS10cnVuaworMzQ5NzcgYzE0MDIxNzZlMWE2NTViMjM1ZjA1YzlkMDMzMTVmYTA5NDE5Mzk1NiBsZWdhY3ktdHJ1bmsKKzM0OTc4IGY2MDY0ZjhjMTQ2MDRlM2NiZjc4MzNlOTExNTZjOTMwYTM4NTAxYWMgbGVnYWN5LXRydW5rCiszNDk3OSBhODA3NzI2ZGY0YjdmOTU0ZGRlZGIxZjNhZjY2NmZiNWE1ZjQxY2U0IGxlZ2FjeS10cnVuaworMzQ5ODAgNTUyYTUzNTVkOGE4ZjYzNWQxN2EyODY1N2ViNzM3M2VmMWU2ZjU0NyByZWxlYXNlMjMtbWFpbnQKKzM0OTgxIDcwNmM5NmUxNTFhMDg5ZjI0OGYwZjI3Y2ZlNmRlZWFjOTAzMjQ3NTkgbGVnYWN5LXRydW5rCiszNDk4MiAyYThmNWViOGQ4M2UxMzAyZDU0YzVhYmYzNjZhM2ZlMDJiMWQwZmY1IGxlZ2FjeS10cnVuaworMzQ5ODMgYmU4ODJhOWEzZDViNTIyMGRkY2UwMjNhYjAxMTMwNDcwZmVhNTc1YyBsZWdhY3ktdHJ1bmsKKzM0OTg0IDkxYjU5ZjJmZWU3YzFmMTE2ZWEzNjRlYzZkMTJkZTcyMjYzNWQyZTYgbGVnYWN5LXRydW5rCiszNDk4NSA0NzEyOTE1MmNiNzAxMGE3Y2I2Njc1NDcwZTQ5MTEwNTFlMTI3N2QzIGxlZ2FjeS10cnVuaworMzQ5ODYgZWU1MzI4MDU0NmNlN2QzMzQ5ZjkzMTY4NGJlMzFkY2E0NTk0ZDczNyBsZWdhY3ktdHJ1bmsKKzM0OTg3IDFlMTZjYjhiMDIyMTllNjM2OWFkOGFjY2ZiNTM0YzQ3NDIxZmMzNTUgcmVsZWFzZTIyLW1haW50CiszNDk4OCBjYzdmMjlhYzJlOTgxNjQxZmE2ODc5YTA4MTc0ZWY3ZjljMDk0NTI3IGxlZ2FjeS10cnVuaworMzQ5ODkgOTA1NjBhOWNmM2U4YjlhMWY3MGY1MjNlYzUzNmFkMjg5NDU5OWQ2YSBsZWdhY3ktdHJ1bmsKKzM0OTkwIDBiZTkyNWQxNmUyOTNmZGZmMWQzYmRiMjY3OWY2NDdkMTU2YTY5YjQgbGVnYWN5LXRydW5rCiszNDk5MSA1M2FlMWMzZDRhN2MxODU2NWE5ODQ0NDQyZGQyN2ZjZWE0OTkwMDAzIGxlZ2FjeS10cnVuaworMzQ5OTIgMGZmYjYyNmQ3ODg4MWZlNDI0MTk3NjkyNTBmZWVjYTlhOTk0N2JhNCBsZWdhY3ktdHJ1bmsKKzM0OTkzIGE4ZTNiYjIzZjVhOGI3YzYyMGM1YjdlYTJiMWZjMmMzMjYxOTE3ZGYgbGVnYWN5LXRydW5rCiszNDk5NCBlMjZmZGE5ZGU2N2YyODk0NDg0MWYyMDYwZmJkNjJjYmNkYmIyNmI1IGxlZ2FjeS10cnVuaworMzQ5OTUgN2FiMDgwYmJkNjBhNjg1YzMxN2ZmN2Y3OTQxYTU0YTZhMWFkZDFkZSBhc3QtYnJhbmNoCiszNDk5NiA1NWQ0MmFhZWIwZWVmODY2MzU5Njk1MDM1NzVjOWRjY2JlOWE5YTcwIGFzdC1icmFuY2gKKzM0OTk3IDdjYzExMTI3MjczZTdlOTRjNzRiYTc5OGM2MTQ4OTVlMjZkZDQ1Y2EgYXN0LWJyYW5jaAorMzQ5OTggZWE2YjE5YTEwYTAxNjQwMjc4N2RiMDFhMDRjODM1ZjU1MTdjNmU4MCBsZWdhY3ktdHJ1bmsKKzM0OTk5IDI5YzFiN2I2ZmQ3ZTU3OTI1NzhlYmY5MjI1YWIzODU4MTczOWU0N2EgcmVsZWFzZTIzLW1haW50CiszNTAwMCAyNTUxOWQ2Yzk3Yjg2ZTczNjhmNTgwMmY4NTk1NzQ1MDEyYWU2MzFmIGxlZ2FjeS10cnVuaworMzUwMDEgODAyZDkzN2Y1OTZhYmViMDRiMzJlOTFmYzdlZmExZTE1NjZiZGJjOCBhc3QtYnJhbmNoCiszNTAwMiAxYWUyNjc5OTRmYTAzNTBhYTU4NjVjNTJhZjAxNGY3MTM3NzJmNmYzIGFzdC1icmFuY2gKKzM1MDAzIDZhMTE2OTVmZTY5OGViMmM4NDRhMjY3MWE2Yjc3ZTgyMGU1OWM1NjggYXN0LWJyYW5jaAorMzUwMDQgMDkwODE2YmQ4YmFjMDAxZDY1MmJjOWQ3YTljNDM2NGM0MzNmYjhiZCBhc3QtYnJhbmNoCiszNTAwNSAyNGQzNGFiNGVmNzU0OWMyYTdjMTUyNmEyZjJlNTMxZDU4YmVlNzQ0IGxlZ2FjeS10cnVuaworMzUwMDYgOGMxM2FiNjliYTRmMTQ3YTVjZGVmMDRkNWZkZjdjNjFhZTNiZmZmMCBsZWdhY3ktdHJ1bmsKKzM1MDA3IDFkYzI2NTllZDlmYzM5Y2NlZTQ5ZThiNDU4ZDY3MDJmMzU5OTYyZDkgbGVnYWN5LXRydW5rCiszNTAwOCA2YzNjM2I3NzFhYmNmYzllN2JkZmNkOGUyNTExYWNjZDQxYWYyNDY2IGxlZ2FjeS10cnVuaworMzUwMDkgMzFhMjgwOTAyNGY1MjFiNGE2NDA3ZDUxYzAyYTM3MWU1YmNiNjY1NCBsZWdhY3ktdHJ1bmsKKzM1MDEwIDU3NTUzMTU3YzE5NjZjMjc5YmQyM2ExMWQyOTg2MWI3OTEwYzIyYzkgbGVnYWN5LXRydW5rCiszNTAxMSAzMTU4ZGMxNTMyZmExNzNjZTFhMmMwOWU0NDc2YzM1NmRmMjk4MDZlIGxlZ2FjeS10cnVuaworMzUwMTIgYjg3ZDE5OThlZjAwMDRkM2U1NGQ2YjY5NTkyMzRlMmViMDQ0NjVkMiBsZWdhY3ktdHJ1bmsKKzM1MDEzIDhiNjJmNDE5NGE3ZTc5MzY5ODkwYmM1NjVlNGNmNGVlZmQ5Njk2MjQgbGVnYWN5LXRydW5rCiszNTAxNCBkNmQxZWZkY2M1ZmRkNDRiMjcwYTJkODU2M2IwYzY2Mzk4ZjZlNjU5IGxlZ2FjeS10cnVuaworMzUwMTUgMTM5YTZiNmMxNTBhNTlmYjg3ZjRkM2ExMmZmMmJmNzc3ZTM5ZTQ4NyBsZWdhY3ktdHJ1bmsKKzM1MDE2IDczNjY4NzVhM2NkNzA3Y2ZhZGY0ZjIxZDNkMjA1ZTQ4ZDQ0Nzk5YmIgbGVnYWN5LXRydW5rCiszNTAxNyAzODk0NjU0YjQ4NDhlMTc1NmUyMjFhODBhN2U4ZDY0OWE3MGRiYTc0IGxlZ2FjeS10cnVuaworMzUwMTggMWMwZTRhNTI2NzNhYTU4MzhkMmE3MjE3N2I0ZGU5N2EwMzFkZjA0OCBsZWdhY3ktdHJ1bmsKKzM1MDE5IGZkNGNiYmVhY2U3OWVjYzQxZWRkMzFiMzMxNmIyYTU3OTM1Nzc3ODkgbGVnYWN5LXRydW5rCiszNTAyMCAyY2Q5NjYyOWZlOGQxNDgwZDIxMzg3MDI1ZmM3ZmY2MjhhODliOTRjIGxlZ2FjeS10cnVuaworMzUwMjEgZWM0YTk5ZDE0Y2E0NjA0ZDI0MmY3NTk2NTM0MzRlN2NlNmIzODc0NSBsZWdhY3ktdHJ1bmsKKzM1MDIyIDg2OGNhY2UyMjE5ZmY3MmY4ZWU1Y2E2NmI5ZmVkMDBiYTVkNTQ1ZGMgbGVnYWN5LXRydW5rCiszNTAyMyA4ZTcwODkyYTlmMjVjYjc0MGIyYzg1MjRjZTIzNTAzNjAzZGY5YTVhIGxlZ2FjeS10cnVuaworMzUwMjQgYzg1NGExZjJkMTliODE0MjI3NGUwZGE3OGEwODBiNjhiOGNjZWU1YyBsZWdhY3ktdHJ1bmsKKzM1MDI1IDJjMWJhMjQxYjNjMDdhMjhjMDQ1NjUzMzcwN2Y5YWZiODU3NjM1ZTMgbGVnYWN5LXRydW5rCiszNTAyNiAyOGQwMGIxYTg0NDc2MDY0MGU1OGJkZGI3MjA3YmEyNTk4NGRhMWFjIGxlZ2FjeS10cnVuaworMzUwMjcgMjg0ZGIyYTVmNjIwYjA4NWZmMWE0MzE4YzhlMzIxMjIxZDk4MmYzYSBsZWdhY3ktdHJ1bmsKKzM1MDI4IDI2ZWNhNzA4YjZkZDY3NTI0MGYyMTgxNTkyMTg1YTAxOGU5ZjM3MWYgbGVnYWN5LXRydW5rCiszNTAyOSBhZDNmYWY1MmUxOWU0MDNhZGViMTAwMDJhMTBlMjNlMGIyOGE3ZDRkIGxlZ2FjeS10cnVuaworMzUwMzAgN2VhMDY3ZDc0OWEwMDY2MDRiNDMwY2UxOTU4M2I0MmI2MjhlOGMzZiBsZWdhY3ktdHJ1bmsKKzM1MDMxIGJmODQwMmE1NmZhNDI3YjI1NTFmMzEzZGUwMjMzYzM2MWJkYTM3NjEgbGVnYWN5LXRydW5rCiszNTAzMiA3NGMwNzNiYTZjM2IyYTQyMDEwYWY5ZjIxMDY5MzJhMGE4MDU0YTExIGFzdC1icmFuY2gKKzM1MDMzIGU0MDFjMGYyOWY1MGQ4OGJlNDBkNDI4Nzg5NzVmYTRiYTIxMDhhZTIgbGVnYWN5LXRydW5rCiszNTAzNCAzOGIyM2U2ZDRjNGI5NjRmZWNmNjZmNjI4OTUyZDU0OWI4Mzk2Mjc4IGFzdC1icmFuY2gKKzM1MDM1IGUzNDc0ZWQ4MGE1ZWY3YTAwNTNlZWMwMDcxZGQzMzUzMGEzNjMxNDAgbGVnYWN5LXRydW5rCiszNTAzNiA2ZDQxODgwMWYxNDJkZmYxOTMxZWU0YTQ1MmFkMjY4NjYzZDIzMWM0IHJlbGVhc2UyMy1tYWludAorMzUwMzcgNzQ0MzIzYjc2OGYwZDRhZTk5MTM1ZjA4YjhiNTQ2NWI2NWI2ZGFmNyBsZWdhY3ktdHJ1bmsKKzM1MDM4IGM1M2RhZjM1YmJjY2MwYTk1YWMzN2EzZDQ3MGJmNDk4YTQzMDVjYjAgbGVnYWN5LXRydW5rCiszNTAzOSA4NzM3YmI0NGUyMmZhOGRiZjYzZGM3YjZjYzFhNzhkYTc5Zjc1N2UxIHJlbGVhc2UyMy1tYWludAorMzUwNDAgMDYxZWZmYWJhZmNiZDdmNDUxNDI1YzM5ZjI5YTQzMjZjNWZiMTkyMyBsZWdhY3ktdHJ1bmsKKzM1MDQxIGRjZDc0M2U3OWNlMzU2ZWQ3MDk0YjQxOTUyODAyZWNhYTlmYmY5OWMgbGVnYWN5LXRydW5rCiszNTA0MiAzMzY4YTRkMjVmMTc3ZGVlNjE4ZTc0YzU4MTUzNjgwMjk4YzVmN2QyIHJlbGVhc2UyMy1tYWludAorMzUwNDMgNTgzZDVhYTgxMDFjZTNhODc1MGI2OTQwYzY2OGMxZWE0ODU5YzliZiBsZWdhY3ktdHJ1bmsKKzM1MDQ0IDVlYjllMjVlNjNmZDVlZDg2NDBhZWMxNTk0YTViYTljMGMxN2YwMDAgbGVnYWN5LXRydW5rCiszNTA0NSAwZWE4ZWJlYjZhYTJiOGE1OGU2OGVkNDAxMzA4ODJjYzAzYzUyNWFiIGxlZ2FjeS10cnVuaworMzUwNDYgODA5OTc4YzMwNGJlNGI5NmM2ODczMWJiNmJjMmJkNjY1MjgwYzZiYyBsZWdhY3ktdHJ1bmsKKzM1MDQ3IGZmZjFlODVkMTk1YzE3NTUwYjNlNTQxNDRhMGUwYzRjNjAyN2Q2NTcgbGVnYWN5LXRydW5rCiszNTA0OCBjZDdiNzBhNGM0NDAyMTBhMDUwNmVmMDVlNjc3MDExNDU0N2JiYmU0IGxlZ2FjeS10cnVuaworMzUwNDkgYTUzMTkwYjM4NzI3Yjc3MDY0MDAzODI2MWFjMTE1ZjVlZTdiYTVmNyBsZWdhY3ktdHJ1bmsKKzM1MDUwIGI2NzRhYjU4MDhiYWZmYjI2MDdhYjljYWVlODk0ZTYxY2MzOWQ3MDIgbGVnYWN5LXRydW5rCiszNTA1MSAwOTlhNGEyZjFmNzdjYWY5YmU5ZWJmYmU1NDFmOTFkM2NjYTY1YTcwIGxlZ2FjeS10cnVuaworMzUwNTIgMzMyOTQyMDZkNTM5ZjU5ZjJiMTU2NDY0YjFkN2I3ZThkMWNhMzhkNCBsZWdhY3ktdHJ1bmsKKzM1MDUzIGNhNDM3NDY2MjYzMjQ3NWJlN2NjMmMzOTRlZDAyYmQxNDE0ODI4OWMgbGVnYWN5LXRydW5rCiszNTA1NCBlZDY4OWQwYzYzYzEzYjFiNGFiNDA4MWY4MWYyYTNiYTZlNmMyMWUyIGxlZ2FjeS10cnVuaworMzUwNTUgOTY3MjIzNzdkNDEyYzIxNDU1NmFiNGY3N2QwNjk5NGRmYTdhOGViMyBsZWdhY3ktdHJ1bmsKKzM1MDU2IGM2NzAxZDg0YTNmYTFiM2Y3ZTBmZjRhNDM0ZjYwMzcwM2E3ZmMxZGEgbGVnYWN5LXRydW5rCiszNTA1NyBhZjk0NmRiNjdhZmM0NGQ0YmE2YWUyNWQ2MGNmYjE0MzcyYzYxNjdjIGxlZ2FjeS10cnVuaworMzUwNTggYjQ1MzJjMjQ2YTNhMGVjNDEzY2NmZmY4ODg4ZjYzZDM5ZjgxYzYzMiBsZWdhY3ktdHJ1bmsKKzM1MDU5IDNjYzBkOGZkNGUyYjY4MWFjYzgxODNmNjM1Y2EyNjAyN2U0NDVmYzAgbGVnYWN5LXRydW5rCiszNTA2MCA4YzcwOTA5MDhjZWNmZjY5MDI0ZjVlZTUyOGYyODgzNTA2YWI1YjkxIGxlZ2FjeS10cnVuaworMzUwNjEgNDc3ZjBhMjUyMTUwZDc1YjNlNTE3YjFhOGJlZGZkYzNkODRmNTZiMyBsZWdhY3ktdHJ1bmsKKzM1MDYyIGE2YmMxMzFhYjYxODhjODdjNTYyZTk2MjQ2Mjg1ZTkyN2U1ZjE5ZWEgbGVnYWN5LXRydW5rCiszNTA2MyBiNjdjYTNmNjg4Zjc4YmEyMDIyMDFjMmU2MzgxOTA4NmZlNzE0NDdhIGxlZ2FjeS10cnVuaworMzUwNjQgMzg1MTQ4ODJhNWM0YzQ1ZDBkMDRmZWUxOGU4ZmY3ZDRhMjY2ODljYSBsZWdhY3ktdHJ1bmsKKzM1MDY1IGY2NjkzOWYzODUyMzVkNjY0YjY4NTk5ODc2YmM0ZDZkZjM5MTNiN2MgbGVnYWN5LXRydW5rCiszNTA2NiAwYmFhMjY2MGE1NjhiZjFmNzBiYjkzYjhhMWJlYmQ2OWVlNzQ0MjlmIGxlZ2FjeS10cnVuaworMzUwNjcgNDE2YTVkMjVjYmE2OGQyYTE3NjdjNjY2NDg5MGZlMGVjMDY2NzY0MiBsZWdhY3ktdHJ1bmsKKzM1MDY4IDc2ZWQ4YTc4ODM5MTg1NzM3YTE0MzQwMGU4YjU4NTk3MDk2OTA2ZjcgbGVnYWN5LXRydW5rCiszNTA2OSA0NzI3YzgxZGI5NDk5MDg3ZWZiOTY3ZjMwZTZhNTg1NmZiYmYyNzRlIGxlZ2FjeS10cnVuaworMzUwNzAgNmVhNWNjZjA2NWJlMDQyYWM2M2VkZjA2NTY1ZThkMGRhNGY2N2E0ZCBsZWdhY3ktdHJ1bmsKKzM1MDcxIDRhYzZhMDIyMWY3ZDRiODdkYzk3ODk5NDVmNzliZjNlZjYyZDEyMjMgbGVnYWN5LXRydW5rCiszNTA3MiAwNTQyM2MzMjYxZDQxNWY1ODY3MTQwY2ExNDY1ZTkxM2NhZWJhZjYxIHJlbGVhc2UyMy1tYWludAorMzUwNzMgZThkZmYxMWU5MzU4Nzk2NWRmNDk5NDRjODhkZTVhYjNiNmEwNDBlNyBsZWdhY3ktdHJ1bmsKKzM1MDc0IDQ5MTVmYmVjNjA4ZjRmMDM1NWRjMTg2NGFlYmU4YzA2MjhkMDI3YWYgbGVnYWN5LXRydW5rCiszNTA3NSBmZDY0OTdjZjcyMjhlODI2OThkYjQ4ZDQ3ZWE3MTgzZjA1MGEyNDI0IGxlZ2FjeS10cnVuaworMzUwNzYgMGMxZDIwNjJkZWUzNTM5MTQ0YWNiODdiMmMyY2ExOWE4ZWI2OTdmMSBsZWdhY3ktdHJ1bmsKKzM1MDc3IGEwYWUyZDlkZTY5MTExZDA2MDdmZGNjYWFjZGNhNGQxMTBjN2JjNzcgbGVnYWN5LXRydW5rCiszNTA3OCBiYjNjM2M5OGNjMWJhYmExMjkwNjMzNzM1YWE2Njk2ZTUyYTNiZDFiIGxlZ2FjeS10cnVuaworMzUwNzkgZjBlMmE4NTM2NzU5ZmRjMTIwZTQzNGU3NjFlNjljYmUyMjdkODE1YyBsZWdhY3ktdHJ1bmsKKzM1MDgwIGEwYjE3NzMyODM1YTIwYjI0OGFjODVlZmNhOTQ5MWFhNTc3OWY3MDUgbGVnYWN5LXRydW5rCiszNTA4MSBhMzQwYzUwZTkyNGEzNzRjYTE4MzFiYmQ5MGFjZTYxMTY1ZDIyMDQ0IGxlZ2FjeS10cnVuaworMzUwODIgNTU0MTJhNDNkMmQzZTFjNDIxMDZhMGU5NzRjMzgyNTc2ODMyMmNiNiBsZWdhY3ktdHJ1bmsKKzM1MDgzIGVhYTFhNGI3NDMyODdiYmNmYjZjNDhhNzUyZTIzNTg2ZGVlODFiMjIgbGVnYWN5LXRydW5rCiszNTA4NCBhMzJhYTc5MDYyNTE0OTVjNDFiMjg0MmVlOWE2MmNlMGFlZDk1NDUyIGxlZ2FjeS10cnVuaworMzUwODUgZWZlMDc1Mjg5NzkzNTBlZjVhMDdlMDUzMGYyMTBhMDU1ODQ3ZWE2MiBsZWdhY3ktdHJ1bmsKKzM1MDg2IGVkMjAyNTlhMWVhNTU3ZGRhNTE4ZDZjZDI5MGUxZmQyNTAzYzFjMTAgbGVnYWN5LXRydW5rCiszNTA4NyA3OTZjOTlmMGZhMmM2MmNjNzkxZWMzNGIwY2E4ZTFhZjFjZmJmODkxIGxlZ2FjeS10cnVuaworMzUwODggZDhjMmRiNzgyYmRmNWZmMzUyMTFhMDE1NTc4YzgzNTFmMzc4ZWIyNyBsZWdhY3ktdHJ1bmsKKzM1MDg5IDkxNDBlY2UzZGIwMzYzMzkyMzg2Mjg4ZWVjOTk2MGJhYTc1NGRhOGMgbGVnYWN5LXRydW5rCiszNTA5MCBjMDg4NTg0ZjU1MzM5ZTlhYTRhNTRmYWM2YjBmYWM0ZDM2Njg1ZDg2IGxlZ2FjeS10cnVuaworMzUwOTEgNTg2YTQ5YzJjNjQxZTUzOGU1NDdmMDIyOWEzYTQ4MGI0MDQ0MGEzMiByZWxlYXNlMjMtbWFpbnQKKzM1MDkyIDE3Y2EzNDczMDNkM2YxM2UyYzFjYTNkNTVmYTgyM2M4NDQwMjQ3NjYgbGVnYWN5LXRydW5rCiszNTA5MyAwZjM5NGY0MzlhZDZhMDRmNjMxMTdjNTc1ZDU2M2EzNjlmNmRiYzk2IGxlZ2FjeS10cnVuaworMzUwOTQgZWM3NWZmOGM3NzIxMjE5ZDNjNDJhYWVhZDhmZmE4YWJmZTc5OTkwZiByZWxlYXNlMjMtbWFpbnQKKzM1MDk1IGYxNjY5MTFmNzc4Yjg1NzFjZDEzMWUwYWFlNWRhZmIyYTgxYzQyNDIgcmVsZWFzZTIzLW1haW50CiszNTA5NiBmN2EwNWFiNTBkM2I0ZTIyNjcyMGFlNmRiNTJhMDI4ZjljZDBhNmZiIGxlZ2FjeS10cnVuaworMzUwOTcgYjJhODIwZTMyOWE5MGEzM2U1NmM4N2U2YjQ2ZTdlZGZmNTdlNGRkYyBsZWdhY3ktdHJ1bmsKKzM1MDk4IDU3YmFjYjExOWE5NzY4MjVhMmRhYWQxOGEzZDA4MjIzYThkMWM1ZGMgbGVnYWN5LXRydW5rCiszNTA5OSA5OTg5MWI4ODhjZmQyOWU5ZjBlYjUwMTg2YzM4ODc3Yjc4ZTljZTAxIGxlZ2FjeS10cnVuaworMzUxMDAgMWRmNWI2YTFkYmY2YTU0MDE0MmMxZTM2MTM0ZWIwYmI4NDc4NWJmYyBsZWdhY3ktdHJ1bmsKKzM1MTAxIGIzZDY1MzI2Y2E2NmI0NTZkYTljMDlmN2IwYzM1YTMyMmQ4N2RmNGMgbGVnYWN5LXRydW5rCiszNTEwMiBiZjM2YzExNjMzMzA3ZmQxOTZjYjI5ZjhkNjZlODAzMGUzNTcyY2Q1IGxlZ2FjeS10cnVuaworMzUxMDMgNmE4YjEyMmFlYjJmZjdhNDZiMjAxOTI0Mzk1ZGZhZTU3YzczZGFhMiByZWxlYXNlMjMtYnJhbmNoCiszNTEwNCBhNjI4NGU5ZjMwYTJlNmViMjk5ZTFiMTIxN2Q1MDMwOWRiYTIxNjIwIGxlZ2FjeS10cnVuaworMzUxMDUgZjg0ZDJiYzY4MzFkNDg2NmY5YWY0NWZhY2U4ZGY3ODAwY2MwMGEwMiBsZWdhY3ktdHJ1bmsKKzM1MTA3IDRlNDBlZmYxYWQxODZlYTI4OWM4YmQ4NmQ5MzEzOTViNDc1ZmM2NTYgbGVnYWN5LXRydW5rCiszNTEwOCBkMzI1OGY0M2Q0ODRiZjFlMjY0ZDJlNTRkODU5YzhjN2E5M2Y1Nzg0IGxlZ2FjeS10cnVuaworMzUxMDkgNjMxY2UyM2Y4OGQ2YWU1OTdlZWVkYmM3ZWY3NWFkMmExYTNhMzE1YiBsZWdhY3ktdHJ1bmsKKzM1MTEwIGYzOGJkMzkzZTk1NDc1YjMyOWUyYjU5NzBlNzFjMDRkMDJhZmY0YjIgbGVnYWN5LXRydW5rCiszNTExMSA5ZGE5NGU1NjlkNDhiYmY4MDk5OTk1ZTVkNjdlMWQzNmMxNTc1MDAzIGxlZ2FjeS10cnVuaworMzUxMTIgZmM1NzIwMGY3MGYyNGRlZTRhMWU5YTk2NmNhMmQwNmIyNjdlNzEwNyBsZWdhY3ktdHJ1bmsKKzM1MTEzIDY0YWU4MzIxMzFlMTQwNzRjYzFmNzU3YjdkMTQxNTVlN2E2ZThlNzQgbGVnYWN5LXRydW5rCiszNTExNCA0MDU1Mzc1ZGMwNWVhMjE5OGQyZWFiYzQwMjdkODM3MjIzOWE2N2VlIGxlZ2FjeS10cnVuaworMzUxMTUgNjdhMWVlYWQ3MmJhYjRiYjg3Y2Q1Y2QzYmNhOWU5MGRjZDY0YmNiNCBsZWdhY3ktdHJ1bmsKKzM1MTE2IGUyMGZjMWI4MDIwNTFhMDIwMTJkY2Q0YzBhMGY4MTExZGM3MzQ2OWYgbGVnYWN5LXRydW5rCiszNTExNyA0NmFkMjFiNWJkMzM0YzQ5NjM3NGUzNWM4NzlmN2RiOWRhMGJjMTM2IGxlZ2FjeS10cnVuaworMzUxMTggMGFhNjQ0MWM3ZmU2ZDhiZmU5ZmVjNGI2ZTY4ZDk4MDhmZjU4MTg3MSBsZWdhY3ktdHJ1bmsKKzM1MTE5IDViYmVjOGYxYmY2ZDY1MGNlZmZjZGZjNmU1NDEwMGU4MzVlYzdlYTEgbGVnYWN5LXRydW5rCiszNTEyMCBjYjkyMzFlZjNiYjkzZWFlMzFkZjNlYjQwMDUwMjA1Zjg2OTEwZTUzIGxlZ2FjeS10cnVuaworMzUxMjEgODg3Y2UzOWY5NWYyYWU5ODE4ZmRjNTlmOWRhZjdiOTYzYjkwZTNiYiBsZWdhY3ktdHJ1bmsKKzM1MTIyIDQwNjdiZjQ4MTU0ZDM3NGIxOTA0NzNlMGYwMGJjOWQ5ZTgyZWY3ZGIgbGVnYWN5LXRydW5rCiszNTEyMyBlYzBjOTA2MjEwYmZhMzIwNTM5NmNhMzNlMWFhNWU4ODAyNWRjNjIxIGxlZ2FjeS10cnVuaworMzUxMjQgYWNhMWNlMWI0YjYxNDQyMDJkNmNjZjU5ZDY5MTQ4YjZlMmU0YzE4MCBsZWdhY3ktdHJ1bmsKKzM1MTI1IDkxNjlkNzllZDMwNDhlMDgxMTcyOGVkMDJkYTMxOGU5NDk1NDllNzAgbGVnYWN5LXRydW5rCiszNTEyNiBjZWY2MTNkOTA0OTU3Y2ZiZWQ4ZjQ5OGIwZDRiZmU2YTVmMGQ5NzJjIGxlZ2FjeS10cnVuaworMzUxMjcgYzliZWQyMDA1MDBlNGY3NzA0ZWEwNGQ5NjgwZWQzM2RhODcyY2QwZCBsZWdhY3ktdHJ1bmsKKzM1MTI4IGM4N2E3ZTgxM2E5OWY2M2RlZmVlN2M3Yjg3NTRmNGFlMTljMzhhODAgbGVnYWN5LXRydW5rCiszNTEyOSAzOGRjZWMyZjdiMDM0NDRhNTAzMzhkZjk1YjE2M2Q5MmFmYjY4ZTY2IGxlZ2FjeS10cnVuaworMzUxMzAgM2FhMjBhODJkZTg2N2Y2MDU1MTM0ZWIwMDUyYzc5MjM1YzMwMzM1YiBsZWdhY3ktdHJ1bmsKKzM1MTMxIDQwZDcyNTA3N2RjYjBkNDhmOWRkMTRiNDkwMDQyYzg1MWE3NTQ1ZjEgbGVnYWN5LXRydW5rCiszNTEzMiBiOTA1N2E2NzYzZDdkMDEzYzhiNDY4ZTdlYWQ5ZjRjYzgzMjk5NjU0IGxlZ2FjeS10cnVuaworMzUxMzMgYjNkN2ViYzEzZDdkNWVlZTBlNThmNzhlMjIzOTZhNGI5NWJlNGY2NiBsZWdhY3ktdHJ1bmsKKzM1MTM0IDBmY2U1YjE3M2E3NDAyZWViMGU2NjAzYmJkMzc5Yzk0MTc0OTYwOGUgbGVnYWN5LXRydW5rCiszNTEzNSAyNWE4MDE2NGNjN2FmZWY0YWFlZTRhNGQyYmNmMjI3ODlkYmFmMjEzIGxlZ2FjeS10cnVuaworMzUxMzYgODk3ZGU5MjA4MTk5Yjk2ZGQ2YjExY2QzMDE1NWRiNDgxMWE2Y2ZmYiBsZWdhY3ktdHJ1bmsKKzM1MTM3IDEyY2MzMzY4MjhlOWIyNzE5NTZmNThiYWVkOWUxZTE1NmU2ZTY4YzQgbGVnYWN5LXRydW5rCiszNTEzOCA5MDA1ZjI2NjJhNzBlYWIyMmNhNTA5M2Q2ZWQ1MDI5N2U0ZmMyZjZlIGxlZ2FjeS10cnVuaworMzUxMzkgNzQwN2EyNDZkYmUwMmY4MGM5MTg2ZWYwODA5NDRiZTFhYTg5OTk3ZSByZWxlYXNlMjMtbWFpbnQKKzM1MTQwIGZmOWE1NDk1M2MwYmZlYTc3ZTUyZDA0MzkwNTFlNDk1MDUyM2M5OWMgcmVsZWFzZTIzLW1haW50CiszNTE0MSA2OWEzNjVlNDdhYzBhMjA5NjVjODA1NzQ3ZDJlMWY3ODIyNzVjOGZiIGxlZ2FjeS10cnVuaworMzUxNDIgMWRjNTQyMjVhNGMyMjg5OWE2OTY1OTQyNjQxNjRiNWUzM2Y2NzU0OCBsZWdhY3ktdHJ1bmsKKzM1MTQzIGU3MTI0ZTI2OTI1ZjY0YjVkYjMxYWM0OTJmZjkxZTNkYmMxYTY1N2MgbGVnYWN5LXRydW5rCiszNTE0NCA2OTAxMDVmZWE1OWQzOGZlYjM0MDMxYTliYTY5NGQ0Yjk4YTFlOTIyIHJlbGVhc2UyMy1tYWludAorMzUxNDUgNmUzNzU4ZWQxZWY0MTJhOTJlMTZkMTVmYmZlNjA2MGIyOWZiYTk5ZiBsZWdhY3ktdHJ1bmsKKzM1MTQ2IGJiYzk0NGUxZmVjY2I2MTFhOTQ3YmM4OWNkOGJlMWYxZWEwNjg0MjYgcmVsZWFzZTIzLW1haW50CiszNTE0NyAyNjZmMjI2ZjQ3MWQwNDY1MjU5ODcwYjkzOGRlYzA4M2JlMDIyNjJlIGxlZ2FjeS10cnVuaworMzUxNDggZWM4YTQ2ODViMzYwNjY2ODcxZWVlZDc4Zjc1ODVlYjU2MWQ4MWQ5MiBsZWdhY3ktdHJ1bmsKKzM1MTQ5IDE0ZGVhNmY4YjBjMzQ0ZmVhNWM5MWU3NjdmODY3N2MzMjAwMGE4NzMgbGVnYWN5LXRydW5rCiszNTE1MCBjMzgwZGMyOTMwNGFlMWIzMWI4ODM5NTM5Y2JjYWY3ZGJmYjE3Yjk5IGxlZ2FjeS10cnVuaworMzUxNTEgZjdmNDJmM2MzZmI0NzU3ZWI0NjE5MGViNWU0YjdiNTI5MTc0ZjhiOSBhc3QtYnJhbmNoCiszNTE1MiBhMTUxMTUyOTBlMTNiMjhmYzhhNjM0MTgwYWM1YmZiYTdkMjRlMDM2IHJlbGVhc2UyMy1tYWludAorMzUxNTMgN2ZjYjM1NTUyZDUzYTM0YTA4N2FjMmMzYjIxNWJlODM0YjYwYmUzZCBhc3QtYnJhbmNoCiszNTE1NCAwMzgwODc4ZjNkYjU0OTMxNDlhZTRjNzI5MWE1YTE1YzczMzgxMDgxIGFzdC1icmFuY2gKKzM1MTU1IDYwM2E5ZWFhNzRlMTU1ZDhkZmE2OWIzNTdlMTBlNTBjZTlkY2M4MzIgbGVnYWN5LXRydW5rCiszNTE1NiBhYzRhN2JhNTQ3OTI5MDRhZDgyN2YyZTk4NjczZjljZjgwOWZmNDEwIGxlZ2FjeS10cnVuaworMzUxNTcgYjFkYzVlMTE0OGVhMzRlZmE1Y2Y3YjdhOGZiMmU2ZTRlZmQ1ZWNmZiBsZWdhY3ktdHJ1bmsKKzM1MTU4IGJlNTZmYzQ4NWUyNzBkNmUyNDZmZWVkODE3OWZmMjMxOGM1ZmMzZTEgbGVnYWN5LXRydW5rCiszNTE1OSA3YmU1NTM4MDU5NDkzZTYzZmE4ZDE2ZDU1OWI3ZGJmOGVhNzY2MWYyIGFzdC1icmFuY2gKKzM1MTYwIDU2MWZlN2Y2NjUxNWUwOWY5MDEyMTAyNGNhNjBlOGI4NzkwZjk3YzcgYXN0LWJyYW5jaAorMzUxNjEgYzRkM2U3YTFmZjg2OWYwZmE2NWViZDBiMGNjYTljZWFhYTMzNjZlZiBhc3QtYnJhbmNoCiszNTE2MiA2MWEyMGRmNGIwZWY1ZmQ3OTNmYTk4YTBjOTUwMjE4MzA4MzQ2M2Q0IGFzdC1icmFuY2gKKzM1MTYzIGI4MTQ4MGY3Y2ZmZTYxOWE5NDE3ZTdkZjA4ZmIzM2Q5Y2QyODRmMTMgbGVnYWN5LXRydW5rCiszNTE2NCAxODYzMTljZmY0YjIyNGU0MDM3Mzg1ZDVmNWY2ZTA4ZGZmMDgxYzBkIGFzdC1icmFuY2gKKzM1MTY1IDdjODhhMDY5YTE0MzlhMDllM2Y1ZGVmMjc3ODY0ODk0ZTZiODY1NGMgYXN0LWJyYW5jaAorMzUxNjYgOGI2MDg0ODQ4ZGExODlhMGM2NzliZmY0NDA5YzQyNGYwZTQ0OTBjMyBsZWdhY3ktdHJ1bmsKKzM1MTY3IDY2YTQyMzBmOTQ1YjE0OGViM2M3MzVlMGQ0ZDc2MWFjOTliOTU0NjYgbGVnYWN5LXRydW5rCiszNTE2OCA4ZjQ3MjgxZmVhN2JlYTRjOTU1ZjgxMTQ4NWJiZjAzYmQwNmMyOTQwIHJlbGVhc2UyMy1tYWludAorMzUxNjkgNDYyMjQ2OTBhMzY1NWE0M2RkYjlhZjM0YWQ2YTRmNjIxMzAzY2YxNyBsZWdhY3ktdHJ1bmsKKzM1MTcwIGYyZmQ0ZTVkZGYxOTVhYzIzMzVkMDI1MzgzM2QzYTZlYTdiNDU5ZGIgbGVnYWN5LXRydW5rCiszNTE3MSBlNGQ3M2VlOGQ0ZTE2YmE0YzRhODE5NjZiNjAzYTdhZjcxOTMyOGEzIGxlZ2FjeS10cnVuaworMzUxNzIgOGQwNmMxOTJmMGU2ZDNlYzlkNzBiYWEwOWQwYjQ2NWYxMjM0Yzk0ZSBsZWdhY3ktdHJ1bmsKKzM1MTczIGFkYjZkZmZkOGRkNTMxNGI0NTMxNDYxNTgwNzQ1NTliYjYyYzUyN2UgbGVnYWN5LXRydW5rCiszNTE3NCAxZWJkMDYyNmQxNzYxMDgzMjliNzAxNTcyNGZiODdmZDIyZWY4NGRiIGxlZ2FjeS10cnVuaworMzUxNzUgMjg4MGNlYjgxMTlkYzFiNTI1ZTM1MDUzZDk3MzE4ZTMwZGVmNWI3ZSBsZWdhY3ktdHJ1bmsKKzM1MTc2IGU4Yjk2YjJiZmE3YjIwZmNkODE3NzQ3YTEzMjgzN2NjZGJjOGRhMWQgYXN0LWJyYW5jaAorMzUxNzcgOGY4YmJhMGE3NWI0Y2QwODI2YTVhNTc4M2UzOTMyNjFlNGRkNGNhYSBsZWdhY3ktdHJ1bmsKKzM1MTc4IDRlN2NjNTBiMzBhMTY0MzhmNzE0YjRiMzZkYWNiNmVmYWI0YTRhYjkgYXN0LWJyYW5jaAorMzUxNzkgNTAxZGFhY2NiZmUwY2I2NGNiYTBhOTRjM2ZjZGEwZjAwYzBjNDRmNyBhc3QtYnJhbmNoCiszNTE4MCBkNjY3ZTMzZTAyNTIzZmI3YjBkOWRiMzEyMDhkMDZmMWZiODVhM2ZlIGFzdC1icmFuY2gKKzM1MTgxIDY1Nzc4MzUyMDY2YmY5NGYwODg4MGVhZmNhNzRjOGYzMTgxOWU4YmIgbGVnYWN5LXRydW5rCiszNTE4MiAzNzQ2OTc0NzhiNWFjMDJlNjBhYmI1ODNhOGVkNmYwNTI0ZmQ4ODc1IGxlZ2FjeS10cnVuaworMzUxODMgZjc2ZmViNzNhMGU0NzE2OWEzNjE1YjkyOGQ2MGQwNmQ5MDhkZGM2NCBhc3QtYnJhbmNoCiszNTE4NCA2MzA4YWRmMTcyZjQ4MDM1MDcyNGVmYTA3NTZmYjFjMzlkYzRiYjAwIGFzdC1icmFuY2gKKzM1MTg1IDk1MjUxNzc5OGNiNWQzMDM2NmY0OTUzYjExMjZmMGViNzc5MDM2ZGYgbGVnYWN5LXRydW5rCiszNTE4NiA2M2ZhNjBmMmQ2MWNhODM2YjVlMmQwOTU5ZGVkMWMwMDI4MTk0YWVkIGxlZ2FjeS10cnVuaworMzUxODcgNGE5ZTU2MzY4YzY5MDRjMzkyNTFjODJiYTcwMWViODAwMDNmNmZjZSBsZWdhY3ktdHJ1bmsKKzM1MTg4IDNjNTdhMWMzYTg3YWVmMTM4ODU2NGY5MDU5Y2I0YTg3ZjE2MjNjNzggbGVnYWN5LXRydW5rCiszNTE4OSAzYzI2NzdjNGEyYmYzNjllODFmYjZmYWY4YjEzZGM2NGQyNDQ0ZmIyIGxlZ2FjeS10cnVuaworMzUxOTAgMTZiMzE1ZGYxM2NlNDhmN2IzYWNiZDVjY2Q2ZWViZTBlZjg0YzUzMiBsZWdhY3ktdHJ1bmsKKzM1MTkxIDQ5MzcwNzY5MjY3MTk0Yjc2OTE5OTg1NGE3ZjVkODE2ZjFkYWY4ZTIgbGVnYWN5LXRydW5rCiszNTE5MiBhMmZlMWEzNTgwMGEwNmQ0NzdkMjUwYzI0MzYzZDk4MDBmYWM3MWFkIGxlZ2FjeS10cnVuaworMzUxOTMgYWZiNGM5NzI2ZDFhNDVhMjMxZDRmY2VkOWQ1NzczZGIxNWRmZTI5MyBsZWdhY3ktdHJ1bmsKKzM1MTk0IGEyODI4MDFiMDZiNjQ4ZGYwYzhjYzQ2MDEyMjg1YTdhYmZmYmM2OWUgbGVnYWN5LXRydW5rCiszNTE5NSAxMjE5ZjExNjJkMWQxYTk1ODk3MTM0ZjVlNjQ5NjUxZGJmZTJlOGYwIGxlZ2FjeS10cnVuaworMzUxOTYgOTdiY2YyZTg4Y2ViODkxNmFjOGM1MDM4OTg4NzI5ZWNiMzkwNWNkZSBsZWdhY3ktdHJ1bmsKKzM1MTk3IDE2ZDI2OTg2NmE0ZGFmN2JiMmJlYTMxZjIxNWUxZjZmODk3MWI2MDQgbGVnYWN5LXRydW5rCiszNTE5OCBkZmMxODE5YjRlYjQ3MzJmOWExNDg3NjU1YTI4MzQ1OGQxYzMwYTAyIGxlZ2FjeS10cnVuaworMzUxOTkgYjRiYzgzZjJmZDA0ZDlkMjExYmY3MmI4MWIwMDgyZjdkNzg1OGIzYSByZWxlYXNlMjMtbWFpbnQKKzM1MjAwIDkyNTY1Y2NjZTkyYjgwY2FkN2EzNWZjNDc2ZTMwZmI5Nzg5MGQ3YTEgcmVsZWFzZTIzLW1haW50CiszNTIwMSA2NmE1NTBlOWIyZmI3NWMyZTIxMjM2MWVlMDk4NGU5OGZkYzUwYjhlIHJlbGVhc2UyMy1tYWludAorMzUyMDIgYmI3MTQ2ZDExN2ZiZDM5MGJhNDhhMjFhZmM3MDc1ZmFlMTc2NGVlOCBsZWdhY3ktdHJ1bmsKKzM1MjAzIDNjYzNjYjc5MDQzZjcyMTgwMGJmYmIxMzcyMmQ3YWJjMTE5N2MwMTggcmVsZWFzZTIzLW1haW50CiszNTIwNCBkNDE2NWQxMmY3M2MxOWY5NjUxZWI5YWVhOGZjNzhmNTRiOWQyZDk1IGxlZ2FjeS10cnVuaworMzUyMDUgMzdkNTAxYjllMmQ1YmIwZjgyNGI2YTc1YzhlOWYzYjY4NGJmMTBiYSBsZWdhY3ktdHJ1bmsKKzM1MjA2IDU2NjczN2JmYWVjOTUwNTRiZGY0NWYyMjA2OTI3NjQ3ZTY5ZTgxODAgcmVsZWFzZTIzLW1haW50CiszNTIwNyA4YWU4OGRiNzg0M2MxZjBjMGE2ZTE4YTAyYjgwODNlY2I5MmY1YjA5IGxlZ2FjeS10cnVuaworMzUyMDggYzU4MjRjOGM2YmE3MjI3NTc3Y2EyZTk1OTEzNDBlYmIyM2Q0OTZmNSByZWxlYXNlMjMtbWFpbnQKKzM1MjA5IDAzMmNiMTdhYzJkNmNiZmI3ZmZlNGQzNjUyMTliNzk1YzRiNDBlYTQgbGVnYWN5LXRydW5rCiszNTIxMCBjYzEwYjAxMGY0MGJhMWU0ZTI1OTRlZmM0NWY1YzViNzdlYTM3MGRiIGxlZ2FjeS10cnVuaworMzUyMTEgNDIwMDNjODYwMGY0ZDNlMzdkMTdmZjQ4NzA1YmY4YzBmYTZjYTViZSBsZWdhY3ktdHJ1bmsKKzM1MjEyIGQ1YzA0NzgwN2M2OTdiMzQxY2NjMzUxNTcwM2Q0ODEzZjdjMDk2MDIgbGVnYWN5LXRydW5rCiszNTIxMyBhNTc3NDEwZTVhNjBmZGU3MDQyYmZlNzI5NTBhZGY2MzQ5MGIzNDk3IHJlbGVhc2UyMy1tYWludAorMzUyMTQgYWFiZDliNTRlNDY5ZWY4ODEwMWM1NWU4NzJmYTI0ZmRiZDk4OTc4OCBsZWdhY3ktdHJ1bmsKKzM1MjE1IDg1ZjQ5MzJkOGZmZDk5NzAwNTU3NDNiZDE2MWU0YTg0ZTFlZWM2ODUgbGVnYWN5LXRydW5rCiszNTIxNiBmMDRjY2MyODg1NDJiNmRiNjIzODVmNTY2MWJhNjE2NDg1ODI2ODNhIGxlZ2FjeS10cnVuaworMzUyMTcgNDRkNDQzOGVkNTdhNWE2ZThjZTAzOTRiNDU4MWZkZGRmZDZjZTk1NCBsZWdhY3ktdHJ1bmsKKzM1MjE4IGRlMmVkODAwZmE1MGZhNTU2NzMzYzllMDI1ZDMzMWZhMWI1M2VhYjUgbGVnYWN5LXRydW5rCiszNTIxOSA4NDk1YjAyN2JjZTM2NjA5OTI1NGEyN2IxYmQ4ZDI0NTU1YmI4MGJjIGxlZ2FjeS10cnVuaworMzUyMjAgNjZlNDNmMjUwNDZkYTVlNzA1M2JjMGM2OWIwMGI0ZjhkMTk4NjQ5YiBsZWdhY3ktdHJ1bmsKKzM1MjIxIDFkYzk2ZDg3OTc0ZWI2ODhiMjBlMTJkYmI0MTc5NTcwMjU4MmJiMjYgbGVnYWN5LXRydW5rCiszNTIyMiAxNzRkY2YxNzFkZjUyYzNmNTMyNDFhMDUzYmY1YjBiMmI0ODFkYTc0IGxlZ2FjeS10cnVuaworMzUyMjMgN2IzNGQ4NDljMjI5MDA2NWQwOTNjYWU5ODNkN2JjNzAyNGVlOTY4MCBsZWdhY3ktdHJ1bmsKKzM1MjI0IDNjZTRmZmFjMjdhYjQ0YzJhMTllMGE1ZTMxYmMyZDg3ZTYwNGVlOTggbGVnYWN5LXRydW5rCiszNTIyNSAzMDhjMTkzZjUxZTMxNzg1NmNiMWJhZDQyYjZlZDBhNGY0NGUxOGYyIGxlZ2FjeS10cnVuaworMzUyMjYgMjViMzA0MzlmZTIyOWYwMDI2ZTRkN2Q2MzIzZTZlZmMxMDE4ODE1NiBsZWdhY3ktdHJ1bmsKKzM1MjI3IGJhOWFhZGRlYjk1Njg0N2FkMDY0ZWMzNmMyNDY4ZGJkMGFlYTNkNzEgbGVnYWN5LXRydW5rCiszNTIyOCBmMzBhYWFjMDAxOTVlODc2NTMyZjM1M2EyZWUxZDkzZDhmNTE0NTJhIGxlZ2FjeS10cnVuaworMzUyMjkgNTczYjA4OWZhYjcxZDNlNjI1YmU5MWM4MjYzMjMzZGZlMzhhNGM4NSBsZWdhY3ktdHJ1bmsKKzM1MjMwIDkxYWY2NWI5MzJkNjIyODg3YmRiMGQ2YTFkMDQ4Mjg5Y2VhMTM1NGIgbGVnYWN5LXRydW5rCiszNTIzMSBkNWI0YzQ0Yzc2Y2UwNmE4NGNkNTJkY2RjMmUyZTJlN2E0M2E3Y2I0IGxlZ2FjeS10cnVuaworMzUyMzIgZDk4NGIzYmQxY2ViMWEwZDJhY2FjYmQwYzczNDE4ODE1NmM0MzZhMiByZWxlYXNlMjMtbWFpbnQKKzM1MjMzIDY1ZDI4ZmZmMTE3MmUxNWY3N2Y4NDU3ZmFhNzRmZWNkNzFmNTZkYTQgbGVnYWN5LXRydW5rCiszNTIzNCA1M2RmZjYwZjU1MDg5YmFjM2ZkYmRkNzI3ZGQ2ZWI0NTg4NTQ2YTkyIHJlbGVhc2UyMy1tYWludAorMzUyMzUgZTE3OGViNDNlZmRkZWU5YjliMzFkMzJhZTIwMmRlMWY4ZTdhMjExNSBsZWdhY3ktdHJ1bmsKKzM1MjM2IDcyNzEyMGZiMDM2NTJkYzI4MTFhNjViZGE1YmU2ZGViZTljYTFhMDYgcmVsZWFzZTIzLW1haW50CiszNTIzNyBmNTdmNWNlMjJjOGRjOGQyMTM1Yjk3OThkNzliN2FmYzRhOTgyMjA0IGxlZ2FjeS10cnVuaworMzUyMzggMDhlYzRkYjUwNjRlYjZhMjVkNGU4MmIyNWJkNzY5YmM3ODMzNTg4NyBsZWdhY3ktdHJ1bmsKKzM1MjM5IDg5ZjkwNzBkYzFiYzBiYzEwOTI5MWIzMzVlNjNjMzYzNzU1YTVhZTcgcmVsZWFzZTIzLW1haW50CiszNTI0MCBmZDJkNjRhZjI2NDBhYjYxM2M4MTBhYjMzMTBkNzNiZDZiZDI3MTMyIGxlZ2FjeS10cnVuaworMzUyNDEgZGI0ZGE5M2YwYmEwZWU0YmUwZTE3YTFiMmVkNTQ4NDQwZTRhZWZkNCByZWxlYXNlMjMtbWFpbnQKKzM1MjQyIDhlMjE4Y2M4ZWRhYjJiZGRmZTE5M2QwM2I5ZWI4MTUyODkzNDNhMDkgbGVnYWN5LXRydW5rCiszNTI0MyBmZWFiZTJmZjBlMWUwOWQyYTNkMmViYzczMGYzOGIyNzBhN2U3ZTU1IHJlbGVhc2UyMy1tYWludAorMzUyNDQgNmE4ZThhMTNjNzQ1NWZjZjdhOTA1MDM1Y2I1NmMwZGMzYjkzYTE5YyByZWxlYXNlMjMtbWFpbnQKKzM1MjQ1IDRjMTJkM2IwMTY2ZmNiMDIxMzljYTc3MjQxMzEyYTVjOTBlZWYwMTUgcmVsZWFzZTIzLW1haW50CiszNTI0NiBmZWY5ZjJhNDFjMzRjMDM3NjBmNmYzZGQzNzlhM2ZjMGVjYTcwY2ViIGxlZ2FjeS10cnVuaworMzUyNDcgMmI3ZTA4ZGNhY2IxNGM5Njc4MzMxZWI4MWZhMTQ3YWI2Y2QzZDI3YyBsZWdhY3ktdHJ1bmsKKzM1MjQ4IDUxYzNkNDUyYWYyZjJjZmI4YTQwNGQ4NzMxODI0MWE0NzA4ZDI5NWIgbGVnYWN5LXRydW5rCiszNTI0OSA3NWRjZjI2NjZkNTQ0NjA5MzhiNTdkMWE3NDg1YTcyM2Q2MjQ2OTM1IGxlZ2FjeS10cnVuaworMzUyNTAgNWQ5YTNkNzZjOTRlNjAzNjJmZTRhNTIwMTRiOTE0YzM2NGI4ZjAwMiBhc3QtYnJhbmNoCiszNTI1MSA4ZjA2MzIwMDk4ZGQ2MDQxM2EzMGM2MTNhOGE5MmFmN2QyZWNjNGI5IHJlbGVhc2UyMy1tYWludAorMzUyNTIgMTRmODYwYjAzYmUyNzNhYTljYWMyNWYxYTEyNjNkYmNlNjRmMTAwMCBsZWdhY3ktdHJ1bmsKKzM1MjUzIDU5NTM4ZDNiN2NkMmQ1ZDNkMmUxM2I1MjY0NmY3Y2M4ZWY5YjFmMjQgbGVnYWN5LXRydW5rCiszNTI1NCBlYjQ4YjI1MDNmMjAxZDQ0YjRhZGU2NGZjNmQzYTIwODRlYjVhOTY5IGxlZ2FjeS10cnVuaworMzUyNTUgMmFiYzUyYzNkNGMyZmNlYWMzNjVhMWQ4OTU2ZThmZGZlODliZGEyMCBsZWdhY3ktdHJ1bmsKKzM1MjU2IDFmNWY2Y2NhMmYyMTBkMTA4YzdmZDE4ODE5YWQ4ZTRiNmVhNzMwM2UgbGVnYWN5LXRydW5rCiszNTI1NyBlYjY5ZWVjYWI0YzdiNmMwYTE0NDE1MWI5MDYyMzA3YWQxMzk1YmE3IHJlbGVhc2UyMy1tYWludAorMzUyNTggMzU0MTI5MTQzODA5NGNmY2ViMGNkNjc0OGQ5NzQ1OGJlMzliYTU3YSBsZWdhY3ktdHJ1bmsKKzM1MjU5IDcxODY0ODIwNDAyZDY1NjlkZTRlYzdkYzc3ZDYyMWEyODNlOGU1ZWUgbGVnYWN5LXRydW5rCiszNTI2MCBjZTU4ZDFjYzZmNDA1ZjMzMTkxNDhmYjcwNjM5NzQxZDJkYmJjMWFmIGFzdC1icmFuY2gKKzM1MjYwIGNkYzY2MjkyZTU1ZDM2OWU3NGI0YjMyMjZiY2RkODI3MWNlNzA4YTMgcmVsZWFzZTIzLW1haW50CiszNTI2MSAyMjE5OWVmNjRmZmEwNDUyYWZmMmI2OWFmNzk5ZWFjNzk0NmVmYjM0IGFzdC1icmFuY2gKKzM1MjYyIDEwNmZhOTRiNDJkZTBjOTA1YTBmZmM0YjAwNWJjNWIyODJiMWEyODIgbGVnYWN5LXRydW5rCiszNTI2MyA1YTQ1YjVjMjM3MWU4ODUxNTRjYjc4MTkxYzQ0MTM5MThhYjQ0OGYxIHJlbGVhc2UyMy1tYWludAorMzUyNjQgZWFlZWE1ODdmOTBhMjk1NTZmZDMyNDFlMDJiNjQxYmZiMDJjZWJkNiByZWxlYXNlMjMtbWFpbnQKKzM1MjY1IDViZWRiYTU1YmEwMzdmZTJjMmYzOGI1YWJkMDRjZDZhNzJiZDYwOGMgbGVnYWN5LXRydW5rCiszNTI2NiA1NDUyMjlkZmQ5MDk4NTg3ZDQzYjM0MWE3ZWNhYTgwYTFiMDI2ZmY1IGxlZ2FjeS10cnVuaworMzUyNjcgNzFhMjk0YmQ3OTUwOWNkNDIwOTc3OTdlMzlkNjAyNmVmOTAzMDU4MSBsZWdhY3ktdHJ1bmsKKzM1MjY4IDliM2RhZWNhYWYyNTQ0ZDljMWUwZjBjNTg1YzM1ODkwYzYzMWE2OTkgamltLW1vZHVsYXRvcgorMzUyNjkgMTU2MDBhMjM3NDkyYTNmZGQ1MTZhMDk5NzIxNWYzZDYwYzY1ODBjZSBsZWdhY3ktdHJ1bmsKKzM1MjcwIGVlNDRiZThlMTlmY2M5NGEyNjJmMTQzMTdhNzZkMjA2Yzk2MWIyNTAgbGVnYWN5LXRydW5rCiszNTI3MSAyZTYyZmM5NzhkOGFlOTdjM2VjNTYyNTBkZmUxZmZkZWFhMDAyMzVhIGxlZ2FjeS10cnVuaworMzUyNzIgYmQwYWNjNDI4MjllZmU0Mzk3YWM4MmRhNDdmYzI4NTJkOGNlYThlOSBsZWdhY3ktdHJ1bmsKKzM1MjczIDU4ZDVlZGU1ZjRjZTJkOTc4N2M0NTA1M2MyODRiNTcxYzdmMWYwYTYgbGVnYWN5LXRydW5rCiszNTI3NCA2YjdiMmM2MmFiMTI2MDg4NDFmMjU5MGVlOWViMzEzMjMyMDcyZWQ2IGxlZ2FjeS10cnVuaworMzUyNzUgMjM5NDQzOTMzMzI0YjAyM2Y3Y2UxOWQ2ZmM5ZGJlNGU5NjhlMGM1YiBsZWdhY3ktdHJ1bmsKKzM1Mjc2IDc2YzgxMzg5NGVlNmYzMDU1NWVlZTlmNWM1NjliOTA3OTFkYzA1NDEgbGVnYWN5LXRydW5rCiszNTI3NyAzZDkyN2UxYzc4Yzg4NGQxNjdjNmYyYzI0YTU1MjRiZjVlYmJkN2Y4IGxlZ2FjeS10cnVuaworMzUyNzggNGVmNTY4YzY1M2Q5YzZiY2Q4ZGFmNjA3NGVjOWI5ODZiZTE0MDY0MyBsZWdhY3ktdHJ1bmsKKzM1Mjc5IGNlMDEwNmRmNmE2YTYzMjVlMzRhOWZkMWU4YjNlZjJhMjk1Njk3ODYgbGVnYWN5LXRydW5rCiszNTI4MCAyN2JmMDViMmE0ZjllM2I2NGRhMmEyM2NjYTcxYzQwYWY2NDNiMTY3IGxlZ2FjeS10cnVuaworMzUyODEgMTIzM2JkOTVkYTFhOTNmOWUyZmNlZWRjMWZhZjRhNDViYWRhZDlmNCBsZWdhY3ktdHJ1bmsKKzM1MjgyIGJmYjQwYTAzY2MwYzAxZmRjODBhZTFhOWQ4Nzk4ZjQ1NWUxZTZiMWUgbGVnYWN5LXRydW5rCiszNTI4MyA5NWEzMmM3ODY3MmRiM2UyY2JmODA5NzIxNjE4ZmFhMGU4NGRmN2NlIGFzdC1icmFuY2gKKzM1Mjg0IDM1NDk1ZDM2ZWM5NTdhYzY0MDNmYTMwMzBiNzA4YTg1NThmYTcxOTUgYXN0LWJyYW5jaAorMzUyODUgOGQ0OWMyOWU5YWMxZTgxYTExN2U0NWI5YmQ5YzYwODFkZmY3MWI2YyBhc3QtYnJhbmNoCiszNTI4NiAzYmE0ZWE4ZmNlM2U1MDFmMzExZmFlZmMwMDYxZjM1MTRmZGFmNjI2IGFzdC1icmFuY2gKKzM1Mjg3IGZhOTgxMzUwOTc2Y2JlZWU1ZTZjODg5YWEwNjU3YjM4ODg3YTJmMjMgYXN0LWJyYW5jaAorMzUyODggMjVhMzVkOGY0MDgzN2MwM2JmZjUxMTg2ZGUxMzEzODQ1MDVlYWUyMCBsZWdhY3ktdHJ1bmsKKzM1Mjg5IDc4MzYyYWFhNDkxZGZmZTdhMmVjYTdhMWU5Nzg3ZTgyZDhjMDdhZGIgbGVnYWN5LXRydW5rCiszNTI5MCA0MjdlOGJhYTcwNTc0YmUyZTE5YTAyYWZhYTQ1YjM0ZWFiYWMxOWM5IHJlbGVhc2UyMy1tYWludAorMzUyOTEgMzVjMGFjOGUwODcxMzVmNWM1NTk2ZDY2MDkyM2QyNmJjMGMzYmY4ZCByZWxlYXNlMjMtbWFpbnQKKzM1MjkyIDVlZWVkNTFlODJjNGRiMWMyZmEyNWVmMWEwM2Q2OTkzMTM1ZTczMWYgbGVnYWN5LXRydW5rCiszNTI5MyBmNmQ4Y2ZlN2MwMDA5OTZkMjI5NWQ0NGVkZTZlYjhkMzMzNjk3MDJkIHJlbGVhc2UyMy1tYWludAorMzUyOTQgN2MwNTJiZTQwMTY5M2I2ZTM3MmNjMTVhODliMmMxOGFkNTAzMmNmMSBsZWdhY3ktdHJ1bmsKKzM1Mjk1IDY0YzA4ZGI4ZGNlNDQ2MGVhMGJkNzQ4YWUxMzRjOWEyNDM3ODY3NjUgcmVsZWFzZTIzLW1haW50CiszNTI5NiA3OWJjNTZiZjkyMjA3NDdmN2U5OWI2MGNjYzY0Y2QwNDhkMWFmMDJmIGxlZ2FjeS10cnVuaworMzUyOTcgYjBjNmY3YzVhZGU2NWE0ZjQ1ZTUwN2E4MzI1MDhjYzgwZGEyZTk5OSBsZWdhY3ktdHJ1bmsKKzM1Mjk4IDlmNDVhMmQzNjY2ZGU3ZGRhZDQxYjBkNzhjZDNhOTY5ODk2YzZhMDUgcmVsZWFzZTIzLW1haW50CiszNTI5OSAwYTMzNGIyMjZmM2EzMTFkN2IzMTg3MjRjMmI1Zjk5Zjk4YjczYTRlIGFzdC1icmFuY2gKKzM1MzAwIGVjNjIzMmVkOTExNTI1YmU0NDRhNzRlZGRkNWQ5YzAyM2E2OGIxYWYgbGVnYWN5LXRydW5rCiszNTMwMSBkOThkMDI1NWJiMGZmZDhlNGUwMzdjNzUxYmNjNzJmOTkwMmI5MzlmIGFzdC1icmFuY2gKKzM1MzAyIGFiMzM5ZDgwYzljOWFmN2RiOTE2YzZjOGY4OGM2ZWUwYjU2Y2M5ODMgbGVnYWN5LXRydW5rCiszNTMwMyBhNTQ1N2I2MjAyMjY1OGE5ZWY4ZDg5MTZiYWEyYTNhZjFjZTNjZmQ3IGxlZ2FjeS10cnVuaworMzUzMDQgNzJlOTcwYzBhY2NjMTIyNWQ4NDU2ZjMwYzgxYWUxZGJjMGYxOGQzOSBsZWdhY3ktdHJ1bmsKKzM1MzA1IDM5MTAxMTg0MGEwM2Y3NjczODZkMDc0MzVhNTZkOTUyYzViYTViYTUgbGVnYWN5LXRydW5rCiszNTMwNiAyYzhhNDMwNjNkODJjOGRjZGJmNTMxM2VjMTRjNjAzYTIzOGM3NDlhIGxlZ2FjeS10cnVuaworMzUzMDcgNDcwZjk1YWQ2NzUwN2RiNGY1Y2I0YzM5NDA3MjUyYTNlOTgyYzc0OCBsZWdhY3ktdHJ1bmsKKzM1MzA4IDk3ZWJlNDAxNGVkYzljZTA5YTdmOWFlMWE3MDljNDQ0NjU0Zjk5OTggbGVnYWN5LXRydW5rCiszNTMwOSAzZGE2YzJhZGFkMzQzY2M2MDkwZDUyN2ViMTk2MDI3ZTU4MTg1MWJmIGxlZ2FjeS10cnVuaworMzUzMTAgYmRmMDA2ZGVlNjk4NmI4MDVlZmNiOWM4MDFiNTdkZmY4ODQ4NmIyNiBsZWdhY3ktdHJ1bmsKKzM1MzExIGExNTdjYzIwZjFiN2RiNWU3ZmFhZTZmZGVkN2IyZjEwMGFiNDg0OTYgbGVnYWN5LXRydW5rCiszNTMxMiAyMjYzMjUwZDdiMmZkMzAyNTY3YTRkNTFjZjhiYjQ0MmVkMjQyNzJjIHJlbGVhc2UyMy1tYWludAorMzUzMTMgYTZkOGQ1YWNlNmE3OGQ1NWM3NzkwY2Y4NGJiY2IwZDg1OGMzOWVkZSBsZWdhY3ktdHJ1bmsKKzM1MzE0IDM4MjgzMzlhZGY4NjdjYWU2ZjFiZTI2ODNjNWZjYjRhZjQxYmRjYjQgbGVnYWN5LXRydW5rCiszNTMxNSAxMTlkMDE4MmJkNWU0MzM2NGMwOTQ0MmZjZDhiZDQ4YzMwNmI0OTBmIGxlZ2FjeS10cnVuaworMzUzMTYgYzMwM2VjMDE5Y2IyYzhkMTA0MzAxYTYwNzczODI1NzE3NGEwNmEyMiBsZWdhY3ktdHJ1bmsKKzM1MzE3IDljYWM5ZDBiMTllMzEzMWU4NTgwMDU4ZWUzZWFlNWVjNjA5MWMyYTEgbGVnYWN5LXRydW5rCiszNTMxOCBjYzc5NDMxODlhNWJjYWMxM2MwMjdkNmQwY2QwYTkyZDFlOWU2NzQ1IHJlbGVhc2UyMy1tYWludAorMzUzMTkgYzc1YTRlZGQxZTUyN2YwNmQ0Y2IwYjk2MmJmZjYwNWE2MGYwNzI2ZiByZWxlYXNlMjMtbWFpbnQKKzM1MzIwIGYxZTBhN2M0OGYzNjAzMzlkYjgzNzQzYWVlOWY5ZjFjZTM3MmFkMTAgcmVsZWFzZTIzLW1haW50CiszNTMyMSA2ZGQzOGU0NTg2ZmZmZDhhNjc1YzA0NGMxODEzNTg3M2IzZTYxN2Q4IGxlZ2FjeS10cnVuaworMzUzMjIgZjQ1N2YxOGY1OTIyMTM5ZmE3MjU3MWIwMDdmZWE0MzMxOGE0OWZjMyBsZWdhY3ktdHJ1bmsKKzM1MzIzIDQ3NWJmNGU3OTIwZWRmY2M2OTg0M2ViOTAwYTRiMzM0M2FhMzVmZmEgbGVnYWN5LXRydW5rCiszNTMyNCA3YTc2MWNhZDc1MTNkMzdkOWFhMzA2MmI5ZmRiYmZmYzhkZWVjNDAzIGxlZ2FjeS10cnVuaworMzUzMjUgOTExYjMyMTVkMGRjNDZkMGIwNDM4MDU4ZWQwZGIzZjFkOTdiN2ZmYiBsZWdhY3ktdHJ1bmsKKzM1MzI2IDFjMDY2MzcxNmRiMzU3ZGI0Mjc5YThmMDI2MjNiZWY5MGIzZTA3YjEgbGVnYWN5LXRydW5rCiszNTMyNyA4YTM5YTk4Yzg3ODAyNGMzZGYxYWViMzBjZDA3MDdlNjQxNGJiOTE5IGxlZ2FjeS10cnVuaworMzUzMjggNDYzMmZjYzU1NDRhMTQ2Y2NkNDNjODFjZmYwY2JmNmViZWQ2ZjhlYiBsZWdhY3ktdHJ1bmsKKzM1MzI5IDgzNTAyZTMxZTA2ZTE5ZDA1ZThhYWI2OWIwMTk3MWVhNGQ3N2IyOTcgbGVnYWN5LXRydW5rCiszNTMzMCA3ZTRlMzEzN2IyNTI3YTI5ZmYxZGM3MjlhMDZhNjk0ZWZlM2I1OTZkIGxlZ2FjeS10cnVuaworMzUzMzEgNzhmNzU4YWJjNzlmMjllMzNhNjVkYjEzYTNjNDAwYWZhMTcwYjIwNiBsZWdhY3ktdHJ1bmsKKzM1MzMyIDhlYzNhYTg3OWVlZWEwZmY5MDM0N2EwYTMxMzA0NDZmODdiMDg1OWIgcmVsZWFzZTIyLW1haW50CiszNTMzMyAzYzliNGZjM2VmMTQ3YzA5OWNjMjBkNzA2NGNjODAxM2NjMmJkOTM1IHJlbGVhc2UyMy1tYWludAorMzUzMzQgYzM3YzQwN2ZhZjUyZWQ5MmMxMmZkNzRkOWI3NjNjOGUxYmIyYjYxOCBsZWdhY3ktdHJ1bmsKKzM1MzM1IDE5YjZmZWMyZTUyZDI4YjI0MGNiNWU0MTBkZDYxODJmNWUyOGVkYTQgbGVnYWN5LXRydW5rCiszNTMzNiA2NTBlZjAwOWUwOGMxOTZmYTQ2YmQ3Mjc0ZDEzZWVjODUyNGU1ZjQ2IGxlZ2FjeS10cnVuaworMzUzMzcgNjg4MjI4YWIwNWFlYjU3NDI1MTBjMWJkZjc5ZjMyZWM2YzdhODUyNSBsZWdhY3ktdHJ1bmsKKzM1MzM4IDgxODNkZDFhNGZlNmJiY2YyZmU5NjRlOTA4ZDRlMmYyNGYzMTg4MzEgbGVnYWN5LXRydW5rCiszNTMzOSBhOWZkNDc2NDRjMGY3OThjZTVjMjNjODY0MjA3MzExMTQ5NTRkNjkxIHJlbGVhc2UyMy1tYWludAorMzUzNDAgZjJkOTRmZjE1YWM4ZjQyNzlmMTljZjNhOGNjNGYxYjliZDRiMmJhNyBsZWdhY3ktdHJ1bmsKKzM1MzQxIDVlNzQ1NWZiOGRiNmI1ZmU0YWI1ZjVmZGEyZmRiZjRhNTUwMGViM2YgbGVnYWN5LXRydW5rCiszNTM0MiAyMjIxZjk2MDE4MGRmNzJlYTQ4ZmZmYjQxMGIyMjhjNDBhOWVhMjc1IHJlbGVhc2UyMy1tYWludAorMzUzNDMgMGIxMzc2MTgyMGIwYzFkODg5OGVlNWNjYmRiMmU2MThkZmI5OTZjZCBsZWdhY3ktdHJ1bmsKKzM1MzQ0IDdhYmY0MjQ3OTg4MGU1ZjU5NWFmNmVhM2Q3YjcyNWJiODkyMTZiYWEgbGVnYWN5LXRydW5rCiszNTM0NSAyYzYxMjNkOTI1ZmVlOTZmZWQ1MDM3YzJmY2M1ZTE0MTM1MmZjNDk2IGxlZ2FjeS10cnVuaworMzUzNDYgNTQ2ODVkOWZmYjg3NmJhNGJmOTdhMmY4OGZhOTEzYjBjZDdhYTQ4ZCBsZWdhY3ktdHJ1bmsKKzM1MzQ3IDRiMmQ2ZDEzMDA2MTk5OWE5OWRhZDhmZmNkZjIwMzIyZGIwNDkzOTMgbGVnYWN5LXRydW5rCiszNTM0OCA2OWFjNjcyYjQ5YjNlYzdhZWQzM2RiNmRmNThlOTYxMjU4OGY1ZTU5IHJlbGVhc2UyMy1tYWludAorMzUzNDkgY2EzYzk5OGFmYTU1NWZkMzNkZGM1NTFiMGRkNjRhZmRhMGQ4M2Q1YyBsZWdhY3ktdHJ1bmsKKzM1MzUwIGM3MjNiMGMxYTdlMWRiNGFlY2EyOGU1M2MyMDBmNDRiZDUxNTc2ZTAgbGVnYWN5LXRydW5rCiszNTM1MSAyNmE4MGYwYWY5ZjNhZTc1YTIyZDA2MDcxMDY2NTZkZTFmMzM3YzliIGxlZ2FjeS10cnVuaworMzUzNTIgYzY3NTNkYjljNmFmOGUyZWQwNGZiMDY5MDk1NzQyNDNhN2JmMzRmNCBsZWdhY3ktdHJ1bmsKKzM1MzUzIDcwNmQ2ZDExZWUzNjM4MTkzZWE2Y2IzZTI5MzlhZjk1NjQ1N2IwMmQgbGVnYWN5LXRydW5rCiszNTM1NCAxMjM3MThkMGRjMDllNDg4NTM3ZGM3YjIyYjU1MmVlMTA0ZWZlZGM5IGxlZ2FjeS10cnVuaworMzUzNTUgNjVjNTAyYjYwYjRkMTljMTIyNzE4ZDAxYTRjNGNhZGQwM2I3NGIyZSBsZWdhY3ktdHJ1bmsKKzM1MzU2IGFmMjVjY2M3NWZlYWNiOWU2NGI3NjgyNmExOWM3OGRiODU5NjJmYWIgbGVnYWN5LXRydW5rCiszNTM1NyAwNWUxYzI3YzBhNzRkODFiNTBjNDI2ZTUwOTI2Y2QzMjlhNzkzMDZmIGxlZ2FjeS10cnVuaworMzUzNTggY2Q4N2ZmNmVhODE0MGVmM2UyMWQ3Zjk4NDc3YmNhNjdhYTRhMjMyMiBsZWdhY3ktdHJ1bmsKKzM1MzU5IGYxZDBmYTY5OGI3MzdiOGMzNjIyYWY1MDliOWRhNDYyNWI1MWFhMDYgbGVnYWN5LXRydW5rCiszNTM2MCBkN2ZmMDUxMzdjZWEzZGY1NjUyMzNiMjNhMTEyYWE5NWI0Y2M1NGI0IGxlZ2FjeS10cnVuaworMzUzNjEgZjNjYjRjYWQ1ODVlNjY5NDk4ZjcwY2QyMDFmYWQ2NzAxM2FhMDUzZCByZWxlYXNlMjMtbWFpbnQKKzM1MzYyIDA2ZDgyNGY1ZjJjOThmZjU1ZmJmOGQyMjAzZGFkZTU2YTNjMzY5MjkgcmVsZWFzZTIzLW1haW50CiszNTM2MyAxNTU1M2ExYjdhMTdhMTAyNzQxMDE0Y2Y3NzIzMGI0OTIyMWU2N2Q0IGxlZ2FjeS10cnVuaworMzUzNjQgMDcxZWUwZmY3NDY3ODk2OGMyY2M4ODY1MzAzZTk5NGYzMGQ4YmNkOCBsZWdhY3ktdHJ1bmsKKzM1MzY1IDJmZWQzMzFkZTAxNGE0YzJjZjllNjcwM2Q5MDFkMGI4NzU2NDUzNDUgbGVnYWN5LXRydW5rCiszNTM2NiBmZDIxMDNhZTZmMjlhMWUwNmIzZmY4Y2Y1NDhhZGI2NGZjYTJkNGEyIGxlZ2FjeS10cnVuaworMzUzNjcgOGVjZWU4ZjQ3MTA4YzhiNWE3NWNkZWRjZGMyZDc2NWYwNjFjZGViZCBsZWdhY3ktdHJ1bmsKKzM1MzY4IGFlOGRiZjUwMDE3MmExYWMxYjkzNTRiMThlMTk1MGNjZTE3MGM0MmMgbGVnYWN5LXRydW5rCiszNTM2OSA4MGJkMmI4NWVkOGExZTk5NzlhOGU2OWE0M2U3ZWU2OGJiZjVjZDc5IHJlbGVhc2UyMy1tYWludAorMzUzNzAgZGZkYmMwMDU4ZDg1OTBlMjE4NTljYTAzNjc2NWFhNGViZmQ3ZWY5NiBsZWdhY3ktdHJ1bmsKKzM1MzcxIDA5NzlmYTA2MmRlYmZlN2Q2YzVmMDU0YzI4N2NiYjJmYmFiNDNlZjggbGVnYWN5LXRydW5rCiszNTM3MiAyNDhiZWI5OWEzMDRjOTNlYmE0NjQwZGRhODI4ZTAzYjMwZTQ2MzBjIGxlZ2FjeS10cnVuaworMzUzNzMgNDZkZjA4ZWIwODM5ZTljZjU2YTgwZjA4NzBjOWE2MTkxMjdiNTIwYyBsZWdhY3ktdHJ1bmsKKzM1Mzc0IGMyZGY4YTVjMzU3ZTAwZTYwMWQzYmUwYWMxNDUwNjUzNmZkZjMxMGMgbGVnYWN5LXRydW5rCiszNTM3NSA3MzlhYjlkZTJhMWJhYWQ1ZmUxMWI4NzgwYjNhNmVhY2EyMTEyYzIwIGxlZ2FjeS10cnVuaworMzUzNzYgNWIzODk4ZDliYTU5NzdhYzY4MDRiY2JiOGNmMWNhYWFjMDFiYTU5ZSBsZWdhY3ktdHJ1bmsKKzM1Mzc3IGViYmE1NTgyZGMwZGI1MzYxZjRiNDJjMDMwZWY0ZTI1MjYzOGExZGIgbGVnYWN5LXRydW5rCiszNTM3OCBiYzAwNjY4MmFjYjIxYTFlMWVkY2UxYzAxMjhmNWM1MDVhOGQxM2Q3IGxlZ2FjeS10cnVuaworMzUzNzkgOGY2MDIxN2E3NTQ3NTk5ZGEyMGE1ZjI0MGVhN2MzZjViNTE1Y2Q4ZSBsZWdhY3ktdHJ1bmsKKzM1MzgwIDQ3ODkwYzM5NWViYWEyMGU0YmUxY2I3Zjc1NGM0ZmI0Y2JjYmY0NWMgbGVnYWN5LXRydW5rCiszNTM4MSA2MzVlZWJjNDczYjA2NWM3NTRjOGZjZTQzZDdhMzIzNmE0MzAxMWU1IGxlZ2FjeS10cnVuaworMzUzODIgNzA4MGEwMjEwY2YxODdmMjA5YzIzMzNiMzZjNTg5M2IzYTA1NDE2MSBsZWdhY3ktdHJ1bmsKKzM1MzgzIGQzNGU3ZWFmNGNkNmE3NDdlODM2ZmVkNjFjYTkwYWFlNjhjMDNjNWYgbGVnYWN5LXRydW5rCiszNTM4NCBiNzk1NDMzZTBiZDkxOTQxZDhkN2MwYTkxNmFkMTFiOTNhM2VkOWM5IGxlZ2FjeS10cnVuaworMzUzODUgMWIwMmM3N2NkY2ZlMTM1YzBjMzI3ODI0ZmY4OWZjZTIyOWM2MTI4YiBsZWdhY3ktdHJ1bmsKKzM1Mzg2IDE1NDNhZmFiMWI2NzJiMTI0N2IxYmU4NjA1YjE4NzQ3YTE5ZDkyYzcgbGVnYWN5LXRydW5rCiszNTM4NyA3ZTRkZDkzZjRiMjcxMzEyNjYwNjE5NDBhNGE4ODhkNGQxZWE0ZDM2IGxlZ2FjeS10cnVuaworMzUzODggNzJlMzhiZDk0ZTU2OThmNmUzMDlhZjMyMDIwOWYyMzlkMzc5MTMwYyBsZWdhY3ktdHJ1bmsKKzM1Mzg5IDMxNTc3YzI4MTVkZTUxZDk3YTI4NDZlZjc0OTMxZGY1NzhhZTViMzUgbGVnYWN5LXRydW5rCiszNTM5MCBiNGU0ZGJkMjRmZTc3ZmM0ZTJlYjZhOGE2Y2YyYzA5OGM5MGY1NzM0IGxlZ2FjeS10cnVuaworMzUzOTEgMjI4ZDI2NGM1ZmJiZDlkOGFiMTUzNjQ1N2ZhMjg5ZGJkMmNkNzc5YSBsZWdhY3ktdHJ1bmsKKzM1MzkyIGRkNjllM2Y1MjI1YmFmZTUwODk4MWFjMmRkNmRmMWI5ZWY1ZjJhYTEgbGVnYWN5LXRydW5rCiszNTM5MyA1YmQ0NTU2MzhjN2E4YTQ5ZDRkZjMyOWE4YTJjNGExNzM5MGYzMGJkIGxlZ2FjeS10cnVuaworMzUzOTQgZWM2YmEwM2JhOTYyN2RlYjhmMzQ2YTA2NGMwMWNjNGZjN2VmOGY4MiBsZWdhY3ktdHJ1bmsKKzM1Mzk1IDA0ZWIyZWJiNDZlMjdhMWYyNmZiODc3MDVlZjlhODQ3ZDlmOTAyNjIgbGVnYWN5LXRydW5rCiszNTM5NiA5NWJmYjY1M2ZmZmJhMDEyMDg5YTIzZWQ0YThmMzU5ZTk2ODkyYzY3IGxlZ2FjeS10cnVuaworMzUzOTcgMTI1M2Y2ZTIwY2RlZTA1YjRkNmQ3N2Y1MmM3Nzg5NDhiODFjZGM2YSBsZWdhY3ktdHJ1bmsKKzM1Mzk4IDBkNTNlY2YyMmQ5MTUyM2RhNTAzNjRmYzNiZTMxZTNhNmU4NjRmYTYgbGVnYWN5LXRydW5rCiszNTM5OSAwNDcxNDgwODljMzVkNTllN2FjYmFmYmM1MWFmNzMyOGM3NzE5Y2I4IGxlZ2FjeS10cnVuaworMzU0MDAgNDJmODgyMDY4NmM5ZWJhN2Q5OWE5MGRiODQzYjBkMWJhMGE4NDAwMCBsZWdhY3ktdHJ1bmsKKzM1NDAxIGVlYTY3NGJmN2I1OWE4NmFlMjE1OTZmODk5MzM1OTIzZDRmNGQ0ZjggbGVnYWN5LXRydW5rCiszNTQwMiAzMGUzMDViZmRkZGJkYzQ4OGQ3NzUxYmNlNTYxZjhhZDA2NTJmYTQ0IGxlZ2FjeS10cnVuaworMzU0MDMgYTBmYjI3YjQ0ZDc4MzgzYTM4YmZmN2IyMmYyMDM4YzViY2I1NzM5ZiBsZWdhY3ktdHJ1bmsKKzM1NDA0IGRmMDY0NzljNmU3Y2QxMWQyZDQ3MTdkNmZjNjBiM2JkYTFkMDMxZTUgbGVnYWN5LXRydW5rCiszNTQwNSA1NzYwYjRkZDNhMjI0ZTQ3N2UxZjFhZTU2YTVmZmM1NDY5M2JmMDNhIGxlZ2FjeS10cnVuaworMzU0MDYgODNiMDM4MmUwZDM2MjVhYTlkNzRiMDc0NjM5NzRiZWVhMTVjODExMiBsZWdhY3ktdHJ1bmsKKzM1NDA3IGQxMGM3NzhhZjE2N2EwZjNjZWY1ZmUwNTRkMzc4YTAyMDczMDY0YWMgbGVnYWN5LXRydW5rCiszNTQwOCA3Njk0NDA4NGU3NTZhMTZiOGQ1ODFjOTA0ZTE2NGZmOGY4NmU0NWY5IGxlZ2FjeS10cnVuaworMzU0MDkgMjQzNjQyYmJkMDNmMzVlNDVlMWM2YThlMzk3NGVkMzEzNDA3MTFjYiBsZWdhY3ktdHJ1bmsKKzM1NDEwIGJlNzgyZDA3YzUxOGQyOGIyNTgxNmZhODQwNmFiZGRlYjUxOTRlMmEgbGVnYWN5LXRydW5rCiszNTQxMSAzNWNiODExNGI0NWMyNWIwZTkzYTIyNDBjNzk0MmY2NDNhYmYwZjQyIGxlZ2FjeS10cnVuaworMzU0MTIgZWYwNmMyMTI0Y2IwNmUxZjUwOTNkNTNjZGNkMzc2MGZhNzI1ZTljNSBsZWdhY3ktdHJ1bmsKKzM1NDEzIGYyNjAwNDQ4ZTg1Yzk1MDY1NzdjNjA3NWIwMDkyMWE4ZjkyZGFmZDEgcmVsZWFzZTIzLW1haW50CiszNTQxNCA3ZmZmZGI5NGExNzJkYTQ1ZDIxYzFlNmQ2ZjhmNTgyNTkwNWIwNmRjIGxlZ2FjeS10cnVuaworMzU0MTUgZjI2ZDgyODZhNDNlOWU0NWM0ZmYwYTkyMGZmOTcwMzRhZWJhMmYxNSBsZWdhY3ktdHJ1bmsKKzM1NDE2IDAzNjkzYWY0NmFmYmNlYmU2NmU4OTkwOWY2OTBhNjA0N2UzZjU3ZDIgbGVnYWN5LXRydW5rCiszNTQxNyAyNmNmMjU4NmYyZmQyOTllMjA3NjlkMDg0ZTM0OGFjNTQ3YTBhMTY2IGxlZ2FjeS10cnVuaworMzU0MTggYjg5OTJlNzgxODQwYTA4NWEzNDJjNTA1MTMyOGZhNjg1ZGY1MDQ3YSBsZWdhY3ktdHJ1bmsKKzM1NDE5IDIwNmQ4NTc1ZjY0NDE5ZmE2NmQzOTZhMThiMzk2MTc1OWJmMWMyNDcgbGVnYWN5LXRydW5rCiszNTQyMCAzNWY1NmUwODcyN2Y5NTk1MzNjOTZiNTNjY2MwNTRmOTAwMzJkMjljIGxlZ2FjeS10cnVuaworMzU0MjEgMTUyYWRhZjc2NWViMmYwNWYwNTIxODkwM2FlNjgyMWQ0ZjMyYjhmNSBsZWdhY3ktdHJ1bmsKKzM1NDIyIDg4ZTljMDQ0NGQ0ZGRhN2VjNzg2M2IyNzJjNTg3MDhkYjc2YWI3YWMgbGVnYWN5LXRydW5rCiszNTQyMyAzZjY5M2E3NzI2OTRlMjMxMTk3MDhmODRkZTg0MjY4ODc4Y2FiZjlhIGxlZ2FjeS10cnVuaworMzU0MjQgYmE5ODk5NmI0ZDUwYTgxY2JiNjBlNTllY2ViMTU4NDhkOWU1YmM3YiBsZWdhY3ktdHJ1bmsKKzM1NDI1IDlhNGM0OWM1YWMwM2NhOGIwZWQxNzExZTQxNWIyZTNkYjUxODk5MmQgbGVnYWN5LXRydW5rCiszNTQyNiBhZTYwMzdhM2FkY2U5OTU1NmM1MjAzNWVkZGVjOGVmZDhjN2VjZGFiIGxlZ2FjeS10cnVuaworMzU0MjcgYTM4MzBhZTI5NGFlNjgzZGIyMWM0MWE0N2ZlNzQ4NGRjNTRkMjZjMCByZWxlYXNlMjMtbWFpbnQKKzM1NDI4IGFlNmZkYTk2MGQzOWJjMzA0OWRhMDU0MDI5YjI5ZDFlY2Q0NzAwMmUgbGVnYWN5LXRydW5rCiszNTQyOSA2MDZmMDQ3M2E5NjY4N2Y0ODlmNWZjM2MzODAyMTQ5NTM0NGU0MTYzIGxlZ2FjeS10cnVuaworMzU0MzAgNmJjY2E0NzkxODQ5OWI1ZGVmMTA4ODRiYzhjMWFhY2U0MTViYTQyYSBsZWdhY3ktdHJ1bmsKKzM1NDMxIDA4YzNiNDkwNTk2MWRmNjAzMmRiNjQ0ZDdhOTEzNTgyMzA3NzdiNDkgbGVnYWN5LXRydW5rCiszNTQzMiBhNmJjZjRkZjFhODU3NmRiYTlkZGVkNTdlNWU5MDFhMTU0N2U2OTg1IHJlbGVhc2UyMy1tYWludAorMzU0MzMgNTMwYTBkZTM1MTdhYWYwZTk4Mzc4M2U5YTc1YWI1OTE5MTVmNDUyOCBsZWdhY3ktdHJ1bmsKKzM1NDM0IDI4MzBkOGUxYWYxODVhNTlkYzkyMzU4ODFiZjY5YWZhMjQ1MDBiZGQgbGVnYWN5LXRydW5rCiszNTQzNSBmNzM3NGUzYjI3OWE4OGM3MzIyMWYwMGRjOTk0NWRiMTBiZGM3NzdlIGxlZ2FjeS10cnVuaworMzU0MzYgMmJmYzg4NjZlYTk5Mzg2OGVjMjI5ZjcxNGI1MTQzYjQ0MGVmZDE5MyBsZWdhY3ktdHJ1bmsKKzM1NDM3IDdiYjAzMDA2NmVhNGI2NTA5NzMxMTRlZWRlOGE0OGRjNjY2NTMwZDAgbGVnYWN5LXRydW5rCiszNTQzOCBjMGE1NDJhMWZjMWM4YjliN2JjYTBhZTY1ZDUwNzcxNzRhMmE5Y2U4IGxlZ2FjeS10cnVuaworMzU0MzkgZGE3OGI5NmI2YWFiZWIwM2U1OGY5YWMyMzVmOWFiNjBhMzg4N2U4NyBsZWdhY3ktdHJ1bmsKKzM1NDQwIGJiM2JjY2IzYjc3ZDVhYTAwMGY1MTE2MjhjMzZhNTI3YWE3MDgyM2IgbGVnYWN5LXRydW5rCiszNTQ0MSBjZTgzYWIwN2VhMDczMDg4NjRmNjFkOWRjMGY4ZjNkM2UzZjNkOTJiIGxlZ2FjeS10cnVuaworMzU0NDIgNmI3NTA2MDQ2NGY0NDYyN2Y3N2Q5ODU5ZWU5NTc5M2FjYTY2NmI4ZCBsZWdhY3ktdHJ1bmsKKzM1NDQzIGMzMjM4MWY0ZGM2ZjJlNTQ0N2Q1NmRiMmQwYjM1MzQ3YzNjOWQ5NGUgbGVnYWN5LXRydW5rCiszNTQ0NCAwMTZmMDA2ZDcxY2MzZmJjMGZlNGVmZTM5M2Q2NTk4OWE2MTllMGMxIGxlZ2FjeS10cnVuaworMzU0NDUgYWFmZTVmZWY1OGJhYjdjMTIzYjNkZDk3Njk0NzFiZjc5Nzc5ZDUzMiBsZWdhY3ktdHJ1bmsKKzM1NDQ2IDgyMzI3OWFlNDNlYjEwYWY5NmYwNDQ1ZDlmZGZkZWU1NjA3NzEwYzYgbGVnYWN5LXRydW5rCiszNTQ0NyBhODg1ZTRkNjRhZDBiODk5NDcyMDkyMTlmN2EwNDk5YTkyNjc5NzIzIGxlZ2FjeS10cnVuaworMzU0NDggY2U3MGYxNDQ2ZjM5OWUxMmU3MjJiOThhMDIyN2U5NzNlNzVhMDdhZCBsZWdhY3ktdHJ1bmsKKzM1NDQ5IDBmYjUwNjZmYzJhN2ZkNDY4ZjBlNWI1YTk3MDhlZjE3MTI4MGY0N2QgbGVnYWN5LXRydW5rCiszNTQ1MCAxMmJmMzdhNTgwMTVhZjkzNjliODlhNzdiZGNiMzRlMjI3NTY5MmE2IGxlZ2FjeS10cnVuaworMzU0NTEgNWU4YzZmMzhlMTViNWFjZTE1Y2E1Nzk3MDBkMWY4YWE0YTdmY2QxYSBsZWdhY3ktdHJ1bmsKKzM1NDUyIGY3YmZkOGY5MWMyYjkwYzc0MjMxY2ZjMmQzNTNmMGIxMmU0ZWU3MDAgcmVsZWFzZTIzLW1haW50CiszNTQ1MyA2ZDhhMTQxNDgxNTliMWJkNjJhMjIxNjNiNzYyMWIzMDE2NTQzNDkyIGxlZ2FjeS10cnVuaworMzU0NTQgYWQ1YzYwODUwMjNlMjQ5MzEzOWUxNmMxMDFkOWEzN2E0NzNkODJiYSBsZWdhY3ktdHJ1bmsKKzM1NDU1IDMzMmQzZmZhZGYyODdlYjI0YTRlY2ZjY2QxMDkyMThjNDdmMDVkNjAgbGVnYWN5LXRydW5rCiszNTQ1NiA1MDc0MjJlYWE3NjM1OTNlN2I5NTk5MGNjOGUzODBlMWQ3YzljM2IyIGxlZ2FjeS10cnVuaworMzU0NTcgOTJkNDAyMjA5ZTkwZjk3N2VmMzViOGYyN2NlMjk0N2YwMzUyZGUwMiByZWxlYXNlMjMtbWFpbnQKKzM1NDU4IGQwODc3MjY0MTdlYThhMTNlZDUzOWU1YzQxYTdmMWUyMjJmMWE2MzQgYXN0LWJyYW5jaAorMzU0NTkgMDNiMGZkMWNkNzIyNTg0YWFiN2I2ZDk2OWRmNzI2ZTRkMzYwYmNlOCBsZWdhY3ktdHJ1bmsKKzM1NDYwIDZiZjg3OTg1YWExZTk4ZTBhODRlMWI3NjVlZWRjZTRjYTY4YjI3NDkgbGVnYWN5LXRydW5rCiszNTQ2MSA1ZTYzYzJlOWI3OTI1MzEzNzAyMmFkYWRhMjY4M2U1NGE5NzBmNjE5IGFzdC1icmFuY2gKKzM1NDYyIGNlYjZhYWRkYWJjYzVkOWE2ZjQxZGJjNWIyZjFhYzc2OWIyYjhlZGMgbGVnYWN5LXRydW5rCiszNTQ2MyA1YjIyNDdiOTUzMjNjMzI3ZDUwYjNhYTg0ZmI3NjJmZDhhZTVjZjE4IHJlbGVhc2UyMy1tYWludAorMzU0NjQgMzZhMmQwZThhOTkzMzUwNDlkMjYyOTczYWMzMWNiMmEzMjA0N2Q1MSBsZWdhY3ktdHJ1bmsKKzM1NDY1IDkzZmI0MDgxZDEwN2ZiNGU5OWI1MjU4MjE4M2NmYjI2MTlkN2Q1MmUgYXN0LWJyYW5jaAorMzU0NjYgZmZhZTJmMWZkZDQ2YzhjNmQxODk5ZTEzYzVlOTNiNTc2MzUyMjZlYSBsZWdhY3ktdHJ1bmsKKzM1NDY3IDQ5MGViNjRiYzVjOTdiYjViMDhhNjJhZmQzYjU1N2IzMmRhOGZkNTcgbGVnYWN5LXRydW5rCiszNTQ2OCAxNzllMDQzMDdlY2QzZGE4YWYyMWU0MTIyM2Y4YjBkYjMxYjJlNzE1IGxlZ2FjeS10cnVuaworMzU0NjkgY2VhYWRiZDdmMTlhN2UyNmY0NWVhODUxYjE3YjJlNTY5MWNlZTM2YiBsZWdhY3ktdHJ1bmsKKzM1NDcwIGQ5NDhkZWU2ZjRhMWJlZDliZTE5NTg1ODk4ZTMxOWIxZDNkNjdlMDggbGVnYWN5LXRydW5rCiszNTQ3MSAwYjAwODZkNTNiOGU4Nzk1NzYxNmM0OWFiMDQ2ODE1ZWYzZmNjYjI3IGxlZ2FjeS10cnVuaworMzU0NzIgYzRlYmY3Y2ExYmRkMDFmZGQ2ZjUwYTUwZjM0MzVjYTJhYjllM2U0NyByZWxlYXNlMjMtbWFpbnQKKzM1NDczIDY1YjBjN2I1NjFkYWY0MmY2N2NmMTU0NTk3NjY4NDk1YjkyMGQ3ZjQgcmVsZWFzZTIzLW1haW50CiszNTQ3NCA1MmJhMWEyMmNjMmUxYjBmODIyMjllZTU0ZGY4YzhiZGNmNDU0ODM5IGFzdC1icmFuY2gKKzM1NDc1IGNkNDc2NmIwNjM3ZWExZDIyYjJmNmIwNTFmODYyMTZiOWFiYWM1NDAgbGVnYWN5LXRydW5rCiszNTQ3NiBkNjNjNTYyZWJiZTU3NDJkMzkxNmNjN2ZhMTBkYzE0ZGZlMjE3N2Q4IGxlZ2FjeS10cnVuaworMzU0NzcgOTEyNjBmYjNjODE0NzYzNzcxZWFmZjQ0YmM3ZjgwOTcyMzc3YTE2ZCBsZWdhY3ktdHJ1bmsKKzM1NDc4IGNjN2E5ZmU4MGIxYjc1NjBmNzc2OGY1YzM2ZTFkZTY2ODQyNWQ0ZDMgbGVnYWN5LXRydW5rCiszNTQ3OSA4MjBiYjgxOGQ2OTg0YzU5YjZiMjdjMmIzODUwNzZhY2JkYjc4NjJiIGxlZ2FjeS10cnVuaworMzU0ODAgNjYwZmMyNDJhNzY2OWIwNmJjZWVjODM4NzFhNmM5Y2IyMDQ0ZmUxNiByZWxlYXNlMjMtbWFpbnQKKzM1NDgxIGZkMjZmMjllN2VhYjhmMmZlMWE0MWQ1N2I5NmVlYTBlOWY2N2YwZjEgbGVnYWN5LXRydW5rCiszNTQ4MiAwNDIwZDNjZmU0YTRhYWZkYzEzZDhmYmFkM2Y1Mzg5YWUxNGE0NzJhIGxlZ2FjeS10cnVuaworMzU0ODMgOGVhNDVjZmUxN2ZjNjAzOGZiZDBhZmIyNDNlZmVlMTE3MjhlNWRiYiByZWxlYXNlMjMtbWFpbnQKKzM1NDg0IGM4Mzc5NTMyNDA0Mjc0MmM2M2NmY2QzODhjNDYyYmUyMDMyNmY2MTIgbGVnYWN5LXRydW5rCiszNTQ4NSBmYWZmZDk1NzJkOGQzMjM5YTAyNTE4ZjY1MzM1NTI2MGZlZTVjM2I0IHJlbGVhc2UyMy1tYWludAorMzU0ODYgYzc1ODc2NDMyZmM2YjVhYjZkZjExMzYwN2FlYjYzNWUyNTlhNmZlZSBhc3QtYnJhbmNoCiszNTQ4NyAyODQ2Njk0MDliZWI0NmFiZDFjNWFkYmQzNjk1NzMyOGM4MzM5NTk1IHJlbGVhc2UyMy1tYWludAorMzU0ODggZDY5ZmIzNWYxZWFlYTQzOGE3NWNkODJjYTk3OGViNmQ5NDBkMjBkNCBsZWdhY3ktdHJ1bmsKKzM1NDg5IDdhNDM0ZjQ5M2MzZWE4Yjg5ZWRjOTRlM2NlNjFiYWZiZWY4MDhmMTQgbGVnYWN5LXRydW5rCiszNTQ5MCA2Mzg2NTYxMWVkMmZlMzUyNDUwMmNmMDU3YjhkYWQzNmYyODM2YjU3IHJlbGVhc2UyMy1tYWludAorMzU0OTEgMjZkMGZkMDNkNWIzMGVkYWY2OTEzYWNhMTkyYjk2MWQ2ZDQ0MjA2MSBsZWdhY3ktdHJ1bmsKKzM1NDkyIGM0ZDlhOTZiZTJkZGNhNDUzNWI0MzdlOTcxM2ZlZWRkNDMxYWU1MDIgbGVnYWN5LXRydW5rCiszNTQ5MyA2NTA5MzU0ZTc4NzY5ZGI5YTJhNzZlMzM3ZTk2NjRjODdlNzgxZWEwIGxlZ2FjeS10cnVuaworMzU0OTQgMWVjM2Q2OTg0YjBmMTA4Nzc2MjhlMmRhNzYyYTYzOGE4MTg5M2EyZSBsZWdhY3ktdHJ1bmsKKzM1NDk1IGI5Njc2MjdhMmY0ZmU5YzlhZDU0ZmJkMDQwNmIwMzMyNzhlYTMwMzcgbGVnYWN5LXRydW5rCiszNTQ5NiBjZTY4ZDdjMDYyOWNjMzgxNjcwZWFiYTE3NmFmZGVlOWU1Yzg4ZmJlIGxlZ2FjeS10cnVuaworMzU0OTcgZTgzMTI0MDJjODEzZDhlOGQzMDgyMTZiZWZhOTk5ZDg2ZTQ3M2EzYyBsZWdhY3ktdHJ1bmsKKzM1NDk4IGMwMjM1MDFjMzhkNzgzZTlhMzQwZWZiM2E3YzkyMDYxNzEwYTRjZmUgbGVnYWN5LXRydW5rCiszNTQ5OSA5MjBhZDQ0NjVhYWVhNWEzNTQxNWZiYWY5ZmI3OWY5MzJjN2RmMjBmIGFzdC1icmFuY2gKKzM1NTAwIGQ4OTgyMzJkY2RkYmJhODA1ODIyZmJkM2NkMDE0MDgzNzdjODE2ZjQgbGVnYWN5LXRydW5rCiszNTUwMSBlZTBiYTAwYjI3N2NkZDIzODU5MzVjNjZhYWYyMGY0ZDhjNDNlZDc0IGxlZ2FjeS10cnVuaworMzU1MDIgNmZjYmY2YWM2OTlhODkwMjk2ODlhMTc4ZTBhY2UzM2M1MjI1YjBiOSBsZWdhY3ktdHJ1bmsKKzM1NTAzIDU3OTY1YjJkYjIwYzZkYWQ5Yzk3OTA2MjhmM2U2OWU3NzQ5ODAzOWUgbGVnYWN5LXRydW5rCiszNTUwNCAwN2EyYjRjNWQ1MDM0MTc3MmZiYzJhZWU1ZTNjMjg4NmY4Mjk0MTMyIGFzdC1icmFuY2gKKzM1NTA1IGRiYThkYjQxMmUzNTQ5OTZiMTgzODUwZGMzNWU2ODQyYWIyMTVlODAgbGVnYWN5LXRydW5rCiszNTUwNiA0OWVjMGQ4ZjA4ZWNkM2Y3MDU3NDFlMjEwYmZmZmIxMGVlZTdhMzhjIGxlZ2FjeS10cnVuaworMzU1MDcgYWUwMGQyZDEyN2QxZDBhN2Q3OTVlNmI0OWNlMmQ5Mjk2ZTdmMWM1ZCBsZWdhY3ktdHJ1bmsKKzM1NTA4IDFmODA2Y2JlMmNlMDQ4MWM3N2VhYTM1ODNiODhiMjdkM2Q0MzFmZDggcmVsZWFzZTIzLWJyYW5jaAorMzU1MDkgNGViNDU4YzM5NDFkNWU4NWU3MzM1MDZmZTEyZDE3ZTNiNzE0MTE5YiBsZWdhY3ktdHJ1bmsKKzM1NTEwIDMxMDFjMDBmNzU0N2YwMWVjZTQ5YWQ0ZTI4ODFhYWNiMDllN2E0MDkgYXN0LWJyYW5jaAorMzU1MTEgYzA2MWYyNWY3NGUwY2RlYmE3ZjI2ZWJmNzA1MzU5OWViOWFiN2FiMCBsZWdhY3ktdHJ1bmsKKzM1NTEyIDkwNzQ1MGU0YmM2NzU3ZGExYTRhN2JkODg0NDZjZmE2MmFmZWE2YzAgbGVnYWN5LXRydW5rCiszNTUxMyAzNDc1ZTQ1Njg0NzEwOTU4ODg3YWI4MzRhNmU3Y2YwMTRkYWE3YjIzIGxlZ2FjeS10cnVuaworMzU1MTQgOGJmMTYzZDA2ZDI5YWY4YWVlOWNmYWU3NTdmY2ViZmQyYmI0NGVkZCBsZWdhY3ktdHJ1bmsKKzM1NTE1IDdiNmM4MjI5Nzk5YmFlOWJmMWJiYmE2YmM1NTg1YmNjYjY5YWQ0YTEgYXN0LWJyYW5jaAorMzU1MTYgNjcxYWRlZTZhM2UzYjExZGQ3ZWNhMmI0Zjg2ZDNjOTc5MGNiZTEzZCBsZWdhY3ktdHJ1bmsKKzM1NTE3IGY1NGNkYjAxYTFhZDVkZjQ0ZjA5YWQxODkzMzEzZWZkNmZiOWQxZjMgYXN0LWJyYW5jaAorMzU1MTggMTRmOGM5MzNmODhjMDk5YzAwNjk2NjExOGY3YjkyMjRhMWUyYTRmNyBsZWdhY3ktdHJ1bmsKKzM1NTE5IGZlNTU0MWFhZTJkOGY4NzRmNzEzY2I3NjIzMzc4MWE5ZjRlNjQzNWMgbGVnYWN5LXRydW5rCiszNTUyMCAxZDNlNDhjY2FkNTczYTU0MWMzMWUzZDc5YmI0MjM2NWE3MDU3NzJkIGxlZ2FjeS10cnVuaworMzU1MjEgNDUxNDRjZGI3Nzk0YTRhNjVjOTdhMzYzODMxYjdkODQ0MDNmZTdkYyByZWxlYXNlMjMtbWFpbnQKKzM1NTIyIGVmMTgwODU2ZGY3NjE5MThmZDhiZGRmMGNjN2NmNjA1N2U4MTRhNGIgbGVnYWN5LXRydW5rCiszNTUyMyBjMmIwMWFhNDkwZTE0N2I1YjczY2JjYjhjZDM4MjE2NjNiOGU0MjhlIGxlZ2FjeS10cnVuaworMzU1MjQgMmViMzE3NWZjNTliNzJmMmNlOWFjY2NlNmZjODhlOGU4ZGI3YzI5NyBsZWdhY3ktdHJ1bmsKKzM1NTI1IDhhNzE0ZmVjZDA1OWJkZDgzN2Q4N2E2Mzg1ZjkwZDIzMGY0MWU3NTYgbGVnYWN5LXRydW5rCiszNTUyNiBhNWJkOGI0ZjNlNTVmMTMyOTUzNjYxOGE1MGY2NzEwZTc2OWFiZjA4IGFzdC1icmFuY2gKKzM1NTI3IDU1NWRjODQ2MjI2ZGQyODYxMzIyNTY5ZGI2OTRiOWJiNGVlMGNjOWYgYXN0LWJyYW5jaAorMzU1MjggYjM5ZmRjOWM4MDdlNjViMzI4OTM3NDM3MDdhNmQ5MzQ3NWZhZjcxZiBsZWdhY3ktdHJ1bmsKKzM1NTI5IDE0MDc0ODQ4MzYxMjBiNTMzNGZmODFkMDAxMmRjZWM3M2Q5YmFhZTcgYXN0LWJyYW5jaAorMzU1MzAgYTczN2Y3YTBmMmI4YmFkYTRkMzhmMGI3ODIxZDE2OGY3MGIyNzBkZSBsZWdhY3ktdHJ1bmsKKzM1NTMxIDE2YmY0ODRiMzg2NDk0NzQ4MzFlNjBkYjZjY2Q1YTMzMzE3ODVmMjQgbGVnYWN5LXRydW5rCiszNTUzMiAzZTQ5ZWIzMjQ3MGJiNzg3YWFjZDRjYjZhZDVlMTQ0MTRjNWMwNzcyIGxlZ2FjeS10cnVuaworMzU1MzMgYmU1ZDJhMDdiYzI2OWJhZGIxNGE3YzdmNDZjYjc1MDU2ZWUxYjVhNyBsZWdhY3ktdHJ1bmsKKzM1NTM0IDk1MzZiMjk3ZDgzYzJkNzhlOGQ2MzE0NjM4NzliMDRhZDQyNzEwMDQgbGVnYWN5LXRydW5rCiszNTUzNSBmNGE0YWM3MzMxZWM5MWU4NGQ4ZmQ0ZTliNjYzZjg1NDcxZTAyNWZkIGxlZ2FjeS10cnVuaworMzU1MzYgNjQyNmIzN2JiMmEwZmRhODIzMmU3YzZjMWE0ZTA2Y2FlZTAxYjFiZSBsZWdhY3ktdHJ1bmsKKzM1NTM3IDM0NzNkZWEzYWE0YzA1MDg3NzdhNjc5YjM4YWNjNDM0M2VmOWMyOGUgbGVnYWN5LXRydW5rCiszNTUzOCA1ZTkxNmQ0NmEzZmI2OTI2MjAzZDJkMWUxOTUwNzdmZGZhOGVkOGI0IGxlZ2FjeS10cnVuaworMzU1MzkgMjRlMDcwZTk1YmY4YTFkMTUzNzNlNDJkNDVlMzZlOGVmZTg1N2Q0NCBsZWdhY3ktdHJ1bmsKKzM1NTQwIDc1YTkxZmQ4YjUwY2ZiMDY4MWNkNGUzZjAyNDhmZmJlNTExZDMxOTIgbGVnYWN5LXRydW5rCiszNTU0MSAxMjAxOTI1MTYwMzM5MmMzMDNhODRhZDNkNDQzOTNmMmQ0OTFiOWE1IGxlZ2FjeS10cnVuaworMzU1NDIgOTgxN2RlZTVkOWRmMDg1YzQyYzFjNmFjNjgwMGM0MDk5YmZjZjhjNyBsZWdhY3ktdHJ1bmsKKzM1NTQzIDdmNDY0ZGQ2ODBhYWMwOGU0YWRiYjdlYTJjYmY3NWE3MzhkOGYyOWYgbGVnYWN5LXRydW5rCiszNTU0NCBlZjU5MWU3YzM0ZmQ4ZTA5ZjU1ZmRkZGFlZmVmNjFlOGI4YjFlYWNjIGxlZ2FjeS10cnVuaworMzU1NDUgNzYwNTNhMWRkNDUyNDRkYzFhYThkMzZkZTJjNzhiOTNmYWY3MWEwOSBsZWdhY3ktdHJ1bmsKKzM1NTQ2IGZiNTU3YWM1YmI5YTI1YjE0NTVhOTlhMDNmNTAwNjA5MDA2ZDI5OWUgcmVsZWFzZTIzLW1haW50CiszNTU0NyA5ZDg0Y2VkNjRkMTBjOWFlNjhlZTU2ZWQ0NDM5ZjNiODBiMGYyNGFiIHJlbGVhc2UyMy1tYWludAorMzU1NDggMTY0Y2UxYmNhYjZlMWUzMjBmYmFmMDFjYWQ4YTUwZDcyOWZlOWYzMCByZWxlYXNlMjMtbWFpbnQKKzM1NTQ5IDMzZDQ4ZGY5YTkzNzgzNDU0Nzc4YWNkOWRlNGUwNmU1YTI1ZmMzNWIgbGVnYWN5LXRydW5rCiszNTU1MCAyOWJlNzI5YjMyYzNmZTk0MTY3OWFkZGQ3MjUzZjIyZDEzZGU2Y2QwIGxlZ2FjeS10cnVuaworMzU1NTEgY2M0N2MxZWFmODBhYjcyMzkwOWVmNDZhZTMxNzdhMzUyMWVhNzk4YSBsZWdhY3ktdHJ1bmsKKzM1NTUyIGM0YmFlMDg5YmZjOGYxMTViYTkzYjU0ZTU4YTQ0YmNiMmYzNjYzZjMgbGVnYWN5LXRydW5rCiszNTU1MyBlYzM3Y2IxYzBlZDg4ODdjZTRjN2JlYTFmOTg3MTkyNmM3YzI4ZWY5IHJlbGVhc2UyMy1tYWludAorMzU1NTQgZDQ0OGNjMjYxZjY5ZjRiMDgyNzVlYzBkZTcwOWVkMGQyZWRmMDdiZSBsZWdhY3ktdHJ1bmsKKzM1NTU1IGNlMWUwYjQ5NGNhNzAyNGMyNzM4ODlhZjMyNjc1MGQwNWE5OTI2YTcgbGVnYWN5LXRydW5rCiszNTU1NiA2YTE1MDU2MTMzNTg0YmVlMzU4ZDZhMzUxNDcwMWE0YjcyY2Y3ZTVhIGxlZ2FjeS10cnVuaworMzU1NTcgMjNlNWNjMzRhOTgxMmU0MzRjZDAzMDNjYzdiOGQ4ODk0MWVlOWJmMSBsZWdhY3ktdHJ1bmsKKzM1NTU4IDgzNWI2OTBkN2VkM2E1MDcyZDllNGY1YjU0ZjAxNDRlMTE1ZGE5ODUgbGVnYWN5LXRydW5rCiszNTU1OSBkYzViZDg0MjJkNTI2YWNiYmQyN2VhMzgxNDI2MjIxNWQwZjUzZDI3IGxlZ2FjeS10cnVuaworMzU1NjAgYTRlYWVlZDQwOThiNGQ4MzA2NjIwYWI4NmZkYTQ2ZDk3NGY4YTFmNiBsZWdhY3ktdHJ1bmsKKzM1NTYxIGZlOTQzMzVmMzhlMjQ5NzRkMTc3OWI1MjAzNjBkZDJiMGVmMDM3YmYgbGVnYWN5LXRydW5rCiszNTU2MiAyMDI0YjRlNmUzOGRhODM1MjU5MWI5YmUxNmZhODNkZjcwNmMzMWI1IGxlZ2FjeS10cnVuaworMzU1NjMgYmVmYjFlYTZjODhlYjJiZDgxMDJiYjE5OTU2NTAzZGMxNjg4N2JjNSBsZWdhY3ktdHJ1bmsKKzM1NTY0IDI5ZGE4YmRmZWI0ZTMxOTJiM2I5YTU5NWE0NzQ2MWUxNDM5ZjRhMTEgbGVnYWN5LXRydW5rCiszNTU2NSA4NTg2OTdkYjFlNGJlZGM3ZmYwOGQ2MjQyYTUxNDJiMGUxMzJlYWZlIGxlZ2FjeS10cnVuaworMzU1NjYgNTJjMTcyMjg5YWRkMWEzYTM4NzEwZDI0MDEwYmY4MjEyNDI2MjZmNiBsZWdhY3ktdHJ1bmsKKzM1NTY3IDRjZTA5OGYwMDVmMDAyZjdjNDNiYWIwZmZjYTYyZDlmNmE3MzQ5MDMgcmVsZWFzZTIzLW1haW50CiszNTU2OCBmMWQ0NDI5NWViZjdkOWU5MTU1OGU3YmM5ZDU1MDhkMWE2NWU1MzRkIGxlZ2FjeS10cnVuaworMzU1NjkgYmYzNzQyOWY2ZDlmMDUxM2NiMjVmM2YxMGFjOTMwMTkxMDk5ZThjZSBsZWdhY3ktdHJ1bmsKKzM1NTcwIDFjMTE3ZGJiMmRlZjRmOTNhNjBiOTMyYjcxNTc5ODUzZTRlNzE4OWMgbGVnYWN5LXRydW5rCiszNTU3MSA4NDZiM2VlN2UxMDZmMTIyZjhkN2UzYzE3ODY3YWI5M2M4NTQwMGQ0IGxlZ2FjeS10cnVuaworMzU1NzIgYzc2NjA2ZjM3MmQxMzRiOTdjYmY3NWNkMjhjODQwNjU4MzJiZmQ3ZiBsZWdhY3ktdHJ1bmsKKzM1NTczIGU2Mzc5YmRhOTFkNzk2OGFlMmE5NjBmYjAxYWJhMjk5YTEzM2NlNWUgbGVnYWN5LXRydW5rCiszNTU3NCAzN2RjOGM4MGNhN2VkOTIxZmU5MjgzMTQ0MmJhYjg0YjI4NGU2MDE4IGxlZ2FjeS10cnVuaworMzU1NzUgMjc3YjVhMmYwOGY1YzlmNDA5MWRhMjBlMjA2N2E4ZmMxNTFhMjdjZSByZWxlYXNlMjMtbWFpbnQKKzM1NTc2IDU5ZmUwOTgyNDM2M2IwZTRmYWJmY2E2MGNhNGQwNWU1YWNlZmRiOWQgbGVnYWN5LXRydW5rCiszNTU3NyBjMDUxZGM2YWIzNzQzODdiYTI2MWJlNmRmMTViYWZiYzliMzQ4MmFhIHJlbGVhc2UyMy1tYWludAorMzU1NzggMDI2MWUzODAxMWY2ZGU0MmE0NzY5NWRjN2Q5NWQwMzQzZGM1Y2Y4MyBsZWdhY3ktdHJ1bmsKKzM1NTc5IGNlYmRhMjNhYWFkYmM2OTEzMzcwMmIwYTUxMzFjMDEwYzNhNTNjMmQgbGVnYWN5LXRydW5rCiszNTU4MCAwNzgwMzI0NDRlY2M4OWMzMGNhZWI0NmVhYWYyNmIyMDM2NGI0NTNmIGxlZ2FjeS10cnVuaworMzU1ODEgYmM2ZWM5NWY1NzkyM2Q3Zjk0ZjQ1ZDA1YTE2ZmE5NWYyZGU5MGQ2MSBsZWdhY3ktdHJ1bmsKKzM1NTgyIDZjNjkxMGZkMDEzYTYyNjU1MWU4NDU3OGZlODhiY2ZhZjYxMWVmOGQgbGVnYWN5LXRydW5rCiszNTU4MyBmOTgyMTVkYWEzNWZjMjU3MDU0ZDA1ZTE3OTQ4OTgxODc4Nzk2MDdiIGxlZ2FjeS10cnVuaworMzU1ODQgN2ExMjA0MDA4ODhhZWY2YTgyN2UyYmFjNWJlMjY4NWVlNzQzNDliMCBsZWdhY3ktdHJ1bmsKKzM1NTg1IDFiZTU0OTlmMzc4ZTk5NzAwYmIxOThiZjY5NWQzMWI5NmUyODYyOWQgbGVnYWN5LXRydW5rCiszNTU4NiA0ZGI5NTg3MjkxOGViOTI4OWYxM2M3OGIyMThjMDM5MTkyMDdkNzk5IGxlZ2FjeS10cnVuaworMzU1ODcgODE4NGM2Nzc3MTNmZDYxZTAxMDU1MDkyOTE3MjlmYzEwZWUwNTNkYyBsZWdhY3ktdHJ1bmsKKzM1NTg4IDlhMTFhMjM2MTU0NzQ1ZGYzMWE5YTU4MjExMDg0NGU1ODYzNmViOWEgbGVnYWN5LXRydW5rCiszNTU4OSA0YjA5MzBiNTY1NjVmZDIwZmUyOWQ3NzY1MTRlNTI3NjhlYzU1NGY5IGxlZ2FjeS10cnVuaworMzU1OTAgNzVlMmY3NThlYzVhMDZiNmRhM2EwZGY1MTMzNzFhZDI2ZjFmOTNjMCBsZWdhY3ktdHJ1bmsKKzM1NTkxIDk0ODk5NmY2OTlkMmUyOTJhZDNkMjBhYzMxNTkwNGFiNGNmYmMxNzYgcmVsZWFzZTIzLW1haW50CiszNTU5MiA2YjE4NThkMTJmOGNhOWViYjJlNWY3MTgxNGE3NWQ4MGMyODA4ZTU0IGxlZ2FjeS10cnVuaworMzU1OTMgMTY4ZGFjZmJlZTY1YWE3YzlmY2JhMTUxYzdjZmRmYzAxYjI2YTU2NCBsZWdhY3ktdHJ1bmsKKzM1NTk0IDgxNzBhYWRjOWVjYTc0ZWRmODNlNTI1ZGI1M2EwN2FlZTlkMmM4NGQgcmVsZWFzZTIzLW1haW50CiszNTU5NSBiMDgyYjRkNDgxYzI1NjJkZGQzMWMzYzgyNDA0Yjc4OTM4OTM1MmMzIGxlZ2FjeS10cnVuaworMzU1OTYgYTRhYTdkNjFlNGFmMTk2ZWY2MGI0MDlmODZhZWNhMWRkMTlhNGNlMCBsZWdhY3ktdHJ1bmsKKzM1NTk3IGEyZTgwZmE3MzU5YjU1MDAwODBkNzcxYzJiYjk3MmY4MmI5OWY3Y2EgbGVnYWN5LXRydW5rCiszNTU5OCAzMzFkZThiOWQxZWQ1NWM0NWZiYTM5ZWY1Nzk1OGEwNzQ4MjAyYzg5IGxlZ2FjeS10cnVuaworMzU1OTkgMzRkNWViMWU1MDdkYzI3YWYxYjZjNjk3ZTYzZDlkNDFlNjBmNTcwYyBsZWdhY3ktdHJ1bmsKKzM1NjAwIGQwNzg4MzkxYzEzYmNmMjMwNTcyYjc4OGY1ZmZmYjBlYTE0Yjk5YzYgYXN0LWJyYW5jaAorMzU2MDEgYWFkYTkxYzVkNmQ5YzcyNTZjYWNiNjM2YWI3ZGNmMzQyYTQzZmFjNyBhc3QtYnJhbmNoCiszNTYwMiAyMjkwODUzYWI0MGE2MmQ3OTUwNDU4MmZlMzMyNGZjNGEyMGJkYTIzIHJlbGVhc2UyMy1tYWludAorMzU2MDMgNTkzMjQ2OWRjYjM1OTMzMjc3Y2VhYzc1OWIxMDU5ZDMzNGZlODc4ZSBsZWdhY3ktdHJ1bmsKKzM1NjA0IDNlZjU4ODg0YmRkNTIxYTE2ZWRiNTRjOTJhY2JlMjJlYWUyMTU4MTcgYXN0LWJyYW5jaAorMzU2MDUgZjRlNWY5YzJlMmIzYjkwYzdjOTMwMDM1Y2U0YTNjZDM4OTFiMjVlZSBsZWdhY3ktdHJ1bmsKKzM1NjA2IGE3NmFkODNhNDEzZjBlMTIxNTBiZDQxMzc0ZjgyZWY3MWY4YjgwMWYgbGVnYWN5LXRydW5rCiszNTYwNyA5YjE3ZjNjYzIzZWRjZWY2YzI0YmE5NDQ0ODk0YTk4OGQ4YTc2MWZmIGxlZ2FjeS10cnVuaworMzU2MDggZTI2MWUwYzJjNzJkNzVmZDM3MTNmYTg0YTFiMzhkZTNkYzllNDZhNSBsZWdhY3ktdHJ1bmsKKzM1NjA5IDY0ZTJmN2VjNTU3NmIzYTU4NDJmYWY0NTc5YWU0NmFlZTE2OWNhNGIgbGVnYWN5LXRydW5rCiszNTYxMCBhOTEwYjgyMmIxMmNiM2ZjNGZjZTE5NjM3OTI5NTc4ZmU4NDRjYjg3IGxlZ2FjeS10cnVuaworMzU2MTEgNzM5MTI4YzY3YzMwZWY4ZDk4N2U3OWY2MWNlNDFlZmJjZGQ4MzdlYSBsZWdhY3ktdHJ1bmsKKzM1NjEyIDQzMzY0MmY5M2Q1OWRiYWQ0YzhhMmZiYTRjMTcwNGRmZTc2NDNiNGIgbGVnYWN5LXRydW5rCiszNTYxMyBlNDJjYmFmZjgwMjdkOTFmYWFiOWNkZmI1MWI0NGY4NjY3YjZhYzkzIGxlZ2FjeS10cnVuaworMzU2MTQgODExMTc5MjNhZThmMGM0NWMxZWE3ZTIzNmI5ODM4MDllNmYzYzU1OSBsZWdhY3ktdHJ1bmsKKzM1NjE1IDY3N2MwYmYwNTczNWU4YzE4NjNmZWQyNGQ5ZTEwNWYzYmYwZDI2YzggcmVsZWFzZTIzLW1haW50CiszNTYxNiA0YzA2ZjRmYWVkODc3YmFiMTliM2NkYjU3OTRjNmJkZGM5MjRjZDMwIHJlbGVhc2UyMy1tYWludAorMzU2MTcgZDIwY2I2MzU3ZjVlYTE2MWIzNWExMDQyNGM0MjUxMTdhMmUwYmYzZCBsZWdhY3ktdHJ1bmsKKzM1NjE4IGIxZWEyZjNmNDY3ZWY3ODU2MmRmZDc2ZDE4MWY4ZTZiMGI5ODFmNGYgbGVnYWN5LXRydW5rCiszNTYxOSBmYWE3MTRkZDg2ZDNmMTA1ZDNhOGMwYmFlMmFhMTZiZjAyNjFmNWI1IHJlbGVhc2UyMy1tYWludAorMzU2MjAgZjRjMWMzZTYyN2RmOGZlODY2MzFlMjQyOWNlYzExMzQ5ODAxNDMxZiByZWxlYXNlMjMtbWFpbnQKKzM1NjIxIDgxNGNjOWY4M2ZhYWI4ZGUyNTllNjU0Y2Y4YTNmOWRkMjQ0NDYxY2IgbGVnYWN5LXRydW5rCiszNTYyMiA2NGNjMTYzZWVhZjEyMTM1MTM2ZDcyMmEwY2E1YTc3MzdlODZlNzI3IGxlZ2FjeS10cnVuaworMzU2MjMgOTI1NTI0NjcxNDVlYTdkOGYyNmI0ODk3YTAyZGIyZmU2YzIwNTY1YSBsZWdhY3ktdHJ1bmsKKzM1NjI0IGM1N2NmYTgzMjhkNDNhYTk5Y2U2ODAzNDM0YzUzMTQ1Njg3Yjg1MzkgcmVsZWFzZTIzLW1haW50CiszNTYyNSBjNGM3ZjBmMzlmZTliODM3MWU4NjUyY2YxMjg2NjU0MjcwMWYwNzk1IHJlbGVhc2UyMy1tYWludAorMzU2MjYgOGQzODJhYjk5YmRiYTllOWQyZWI1YzY3NmQ0MTY4OWM0Y2QzNWFkNCBsZWdhY3ktdHJ1bmsKKzM1NjI3IDY5NmY0YmE5ZGRmN2IxNmQ0ZDllYThhNzllNGE3MDk1ZGM4YzM4Y2YgbGVnYWN5LXRydW5rCiszNTYyOCBhZGI0MmE3MTE2OTYwNGQzNjA5YWMyZmJkYjY0Y2Y4Y2QxYzcyNTBiIGxlZ2FjeS10cnVuaworMzU2MjkgMmNmZTE0Mjc1YTA0NDA4YjYzZjBkNjI5OGUwZGM3YzgzZDg5ODdlZiByZWxlYXNlMjMtbWFpbnQKKzM1NjMwIDNhZDQyYjdkNDY2MGFjM2MxOTUyMTUzMjc2ZDU3M2Y0ZGNhOTgzZjAgcmVsZWFzZTIzLW1haW50CiszNTYzMSBmOGIyOGU0YWM0MzVhOTc3ODk0ZTAyMzdhNGZmZGVkNjRhOGE1MjZkIHJlbGVhc2UyMy1tYWludAorMzU2MzIgNWY2MGIyMjYwMTllOWYzYjQxM2FmMGVmODBmZGJjMmFhOThhYTE0YyBsZWdhY3ktdHJ1bmsKKzM1NjMzIDhiY2IxMjFjNTQxMTFiZmJhMTczNjMyNWQ1MjU1NTExYjNlYWY5MDAgcmVsZWFzZTIzLW1haW50CiszNTYzNCAwNTk4OWI0ZDZjZTgxNTdkNmYyNTJlYmMyNGFiYjY1OWU3ODkzOTg0IHJlbGVhc2UyMy1tYWludAorMzU2MzUgMGQ4ZWUyOGJmNmYwM2ZmY2NhYTQwZmVjMjhmNTkzM2NjYmI5YzZhYiBsZWdhY3ktdHJ1bmsKKzM1NjM2IDU3NjVkNjU2ZTBlZmQ4N2QxY2MyNzg3NjQ2Nzg5MzNlZDlmMzI2OTMgcmVsZWFzZTIzLW1haW50CiszNTYzNyA1MDEyOGZmMTk5NjU4YjE0NzY5ZWNhYzBjNDhlZmJiZjhmOGMxZmJlIGxlZ2FjeS10cnVuaworMzU2MzggZDA0ZDc4NmFiNDU4MTM3OTUxMGRmYTVmNmNjOTYyYWM1OWUzNGZlMSBsZWdhY3ktdHJ1bmsKKzM1NjM5IGRiZDNmYzIxNGI2NjZhMzY4M2EwY2Q5ZmU0ODRjNTNjNzdlYThmNjYgbGVnYWN5LXRydW5rCiszNTY0MCAwMDcxZDZlYjgwYTFmYTIwOTM5ZTg2ODk1OTcxNWIwNDg3YWViNTljIHJlbGVhc2UyMy1tYWludAorMzU2NDEgYTQwZDc5ZmUyYTY5ZTJhZmVjNTM3MzM2OTYxYjhmYzc3NmU4ZDNiNyBsZWdhY3ktdHJ1bmsKKzM1NjQyIGI0ZWM5Mjk5NTYwZDgwODliMjQwNTU3ZDY3ZjQwNjE3YjU2ZTJmYjAgcmVsZWFzZTIzLW1haW50CiszNTY0MyA1NTIwNDRiNTA1OGQwMThkMjJkMjA3NDNlNmNiZjFiMWQ3MzlkZWIxIGxlZ2FjeS10cnVuaworMzU2NDQgNTFhYWNlZWFhYmUxMWVhZmU3NGQ2MmNiMzQyN2M3Yjg0NmY3MGI4MCBsZWdhY3ktdHJ1bmsKKzM1NjQ1IDE1NjAzN2JlMzU1ZDk4NDYwNzY2ZDBmMDNkYWQ4YmFhZmNiYmMzYTUgcmVsZWFzZTIzLW1haW50CiszNTY0NiA1YTM2ZTRkNWFhOGYwZDQwNTg1ZjQ1ZGViNDAzY2U5MDhhYmU0ZmQ2IHJlbGVhc2UyMy1tYWludAorMzU2NDcgYzdmOWZjYTk0NmQxNmI3MDRjMjNiNjAyODUzNmViOTM2ZmJkZmQwMyBsZWdhY3ktdHJ1bmsKKzM1NjQ4IDAyMGRjNWRmZDVjNWQ4OGRkMGY0NTcyNjk1ZGM0Y2ZjOGM0MDUyY2UgbGVnYWN5LXRydW5rCiszNTY0OSA5ZjVmZTZiMjNlNTkyMGU1NzlkM2E2YmFjYzNkZGQwMWViYTdkNDhmIGxlZ2FjeS10cnVuaworMzU2NTAgMjI3Y2I3NDAyYzZlOWJmNjdhMDBhMDIzNTc1NDY4NzIwMWZlNWFjNCBsZWdhY3ktdHJ1bmsKKzM1NjUxIGM4OGQ0NjEwZjI4M2NiNmQxNjJiOTU4M2NmNDdmZmQwZDJlMTRjZmMgbGVnYWN5LXRydW5rCiszNTY1MiAxZmIyMzEzYWMzY2VlNThmZTdkMzk1MmUyMWE3YjY3OWU3MzUyNDJkIGxlZ2FjeS10cnVuaworMzU2NTMgYzkwNmJiMmExODI0NTUxZmM4OWZjMTRmYzg2N2UxMWY0NmRmMmI1MyBsZWdhY3ktdHJ1bmsKKzM1NjU0IGEyZmIxNjc4NDFlODM4YzI2YmQ0Nzc5Y2ZlZDkxNjFjOWU0ZWNjNDggbGVnYWN5LXRydW5rCiszNTY1NSAyNmVlMWIzZWIzNDUxYTcwYjQ3NjQyY2RmMTJlZGY0ZmZlODQ5NTM0IGxlZ2FjeS10cnVuaworMzU2NTYgMWEzYTQ4Y2JiMTYyOGQ0MzQwYWJkNWIyZTgzYWY2MWUxZDdiZmNkMCBsZWdhY3ktdHJ1bmsKKzM1NjU3IDRjNmZkZWI4ZTJlMDIxN2YzNTZiZjFhZTBhZDk0YzVjZjc0MzYxMDcgbGVnYWN5LXRydW5rCiszNTY1OCBmMzViNGFjYzU5NGY5MGE5ZjYyOThiYTQ1ZDE4MTVlMmY1NzVmMzc5IGxlZ2FjeS10cnVuaworMzU2NTkgNjk5NzA2NTNlY2JmYWM5NGNlNzU4MTVlY2FiMjM1N2I4YzU1ZTU0ZSBsZWdhY3ktdHJ1bmsKKzM1NjYwIGY5Y2Q3OTkyNmZmNzc4ODFhMjEzYzkwOTVjMDkwYjRkMWI1OWMyM2YgbGVnYWN5LXRydW5rCiszNTY2MSA5ODY1OTRjM2U0ZDlkYzEwMzQ2MmNlYzUyM2NmZDYxMzRiMjY3ODIwIHJlbGVhc2UyMy1tYWludAorMzU2NjIgOGMyNjQyMGQxZjIzNTNhMDNjY2NiZTMzNmU3MmM4YmFhYjU5MDVkZSByZWxlYXNlMjMtbWFpbnQKKzM1NjYzIDdiODE3MTE5YmI2NjBiNTMxYTMzMzNiN2JkYzU2MjZlOWY4ZjAzMjkgYXN0LWJyYW5jaAorMzU2NjQgYzY4MWQ5NWNmNzllYzUwYzViODU5MzQ1ZmUwYzExZmY3YmM1YTZiYSBhc3QtYnJhbmNoCiszNTY2NSBjMzcwYWFlOTgyMzIxNjM2ZGI5Y2NlYWRhYjUyMjQ2ZDAxYjRjY2NlIGFzdC1icmFuY2gKKzM1NjY2IGI0Njg0MjM0YmYwNzAxZjA4YTc0OWIxYWQyYzM3YzAxNjM1Y2E3YzEgbGVnYWN5LXRydW5rCiszNTY2NyAyZTUyYzIwZGVhNGY2MWRhOGRhZjBhMjdlYmRhMjg3NjgwZWE1YWQ0IGxlZ2FjeS10cnVuaworMzU2NjggZGQ5M2EzMmFjMzNlZmYzY2I4NmQyNzY3OTk2ODUwNGRiMDRjMjYxMiBsZWdhY3ktdHJ1bmsKKzM1NjY5IGRmYzhjNWY2Njk1OTU4MjE0NGRhYjZlZDljYzE2YTUyZTljM2NhOTIgcmVsZWFzZTIzLW1haW50CiszNTY3MCA4NDhiY2UyMjE1ZDM1YjZkZmZhOWQ4NWZhMTJjYTY2NDc2MjgwN2E5IGxlZ2FjeS10cnVuaworMzU2NzEgYzcwYmIzMjIyN2NiM2JmZTZhMGU4MzNmZGJlOTdmZjQxM2U2M2YzNiBsZWdhY3ktdHJ1bmsKKzM1NjcyIDA4MTk3MmFlMmY4NDQyMWZkNjRhMzIwNmE0NDI2NjQ0ZTY5MGQ0NzkgbGVnYWN5LXRydW5rCiszNTY3MyAyNDEwODllNDM3ZTAyOWU5Y2EwZjIwZTM5OTA3Y2RhMDgwMjllZWNlIGxlZ2FjeS10cnVuaworMzU2NzQgMzEwZGQ5OGVhMDY0NjE5Y2I5ODgzZDgwZTljMWNmMGI2ZGNjNDExZCBsZWdhY3ktdHJ1bmsKKzM1Njc1IGM1NmVhNjBjYjNiZjc3NjNkOTViM2RmMGMwYTAyOWM3OTExYjMwNDIgbGVnYWN5LXRydW5rCiszNTY3NiBjYTJmYjVjZjJmZDU3NWM3MjliZTEyNTJhNjQ2ODM1YmJiM2E2MzBlIGxlZ2FjeS10cnVuaworMzU2NzcgMjc5NGY2MjdlYmFhMDAxNWY4ODc0Mzg5ODVkMjRhZWEwZGY5NzQxMyBsZWdhY3ktdHJ1bmsKKzM1Njc4IDY0ZmNmZjEyMWY3YjVkZWRjNjc3ZTA3OGYyYzQ1Y2RhNDVhNzY2MjEgcmVsZWFzZTIzLW1haW50CiszNTY3OSA2ZTU0YzU5Mjg1M2M2NGM3N2VhODVlNDYwNmNkNWQwNmNmMGQzNWNlIHJlbGVhc2UyMy1tYWludAorMzU2ODAgMDI2NWJmOTkxMmVhMjkxMGQ1ODMxZTcxZmJiMWRlMGI2NTMxMzMyNCBsZWdhY3ktdHJ1bmsKKzM1NjgxIDM1NTQ3MzUzNGM3MDY4MTBmNjc0NjY4MDlkMjNiMDhkYzQ2OTNjZmEgbGVnYWN5LXRydW5rCiszNTY4MiBjNDg4OGE4ZmNmNzA2MWI2NDZhMWY2NGU2MjEwMmRmMTRlZjg2MzA2IGxlZ2FjeS10cnVuaworMzU2ODMgZTk3NTE4YzY2YWNjMDgxNTZkNzJmMzdlNzU5ZDNjNjg4MWZiZjVkZCBsZWdhY3ktdHJ1bmsKKzM1Njg0IDg5NzVkZWZiZjNhOGIwYWI0YWVmMTEzZDhmMTJiNWQ4ODA1ZjVkNzEgbGVnYWN5LXRydW5rCiszNTY4NSBlNzYwOTJkNDkwMmNkNDRkY2Q2ZmM3NTEzNWJhMjIwZjIxNmI2MTE5IGxlZ2FjeS10cnVuaworMzU2ODYgZjM5YzU2ZjhjY2MyYmU0ODY0NWFmOWRlNDAzNjBiNmZhNTZjZDNiMCBsZWdhY3ktdHJ1bmsKKzM1Njg3IDg4ZDYyNWQ5MjhhY2RiYTA3ZTA1ZWJjZmYzNzM1OTc1ZjIxNjJkOGQgbGVnYWN5LXRydW5rCiszNTY4OCAwNTg4MjFkOGFlZmRjNTBjZDQ3ZjliZGM3ZDMzNzE1MmY0NWUzOTBjIGxlZ2FjeS10cnVuaworMzU2ODkgNmIyMzY5OTQ2ODRhZjkyOWM0NjAwMTNlNjIxZThmNDIzZjJjNzU1MiBsZWdhY3ktdHJ1bmsKKzM1NjkwIGNlYzc0MGY5MmZhNDIyNTAwMzU1MDc5NjdmNmUxNjYxZTVkZTA1ZWQgYXN0LWJyYW5jaAorMzU2OTEgYjMzZGRiNDhiN2UwNGUxNTZkODIxZTRjYTUxMWJiNjE5Nzk2OWYzNCBhc3QtYnJhbmNoCiszNTY5MiBlYjZmNThjM2Q5NzI1ZjA1MGQzZGFmYzA0YWJlYjFjNmM2MjBhNGE1IGFzdC1icmFuY2gKKzM1NjkzIDE2ZTc1M2ZmMzFiMjI2OGM4NTU2NjNiYmI2MGY4MDNhOGZhNzZiMGYgYXN0LWJyYW5jaAorMzU2OTQgNGE1NDMzMDZkZmZhMTY4ZjBjNWE4NDFmZWU2NDZkNWZkMDdkYjUwYiBhc3QtYnJhbmNoCiszNTY5NSBmN2Y0MTNjNjU0ZjRmYzNiNGU3NDc2NzdjNDg1MjgwYjkwMmY4N2MzIGFzdC1icmFuY2gKKzM1Njk2IDU1Y2E5N2U3YmQwZmEzNmQwN2IxMmE3YzgyNWRlMzg2ZjQxODVlN2EgYXN0LWJyYW5jaAorMzU2OTcgYjI0MmI0ZDdlMTc3NDI4YjAzNTBmNDJjMjJjNmYwYzAzMzgzMjcxZCBhc3QtYnJhbmNoCiszNTY5OCBlMTE0MGU2MDFlNzIyODRlN2Q3MWFmZmFjMDhjYzM3OGFiOGI4MzcyIGFzdC1icmFuY2gKKzM1Njk5IDczNDg2ZmY2YjU1MmYzODg3ZDg4ODg2NjdlYTc3OTRhYzEyMGYzNzIgbGVnYWN5LXRydW5rCiszNTcwMCA5ZGY1MTg1ZmM1Y2FiZTFhNzc0YzlmMDJlOTA4YmU1NGQxN2NlODZmIHJlbGVhc2UyMy1tYWludAorMzU3MDEgYTU4NmY3NTJiMmJkY2NlZjVmMmQxMDU0ZTA3OTFmMzEyY2YxZjAyNCByZWxlYXNlMjMtbWFpbnQKKzM1NzAyIDcwMzg5NzdjZWE4ZGU2MTMyMWFiNjliZmJjNDViYzRhZGVkYzZjYmIgbGVnYWN5LXRydW5rCiszNTcwMyAwOGEzOTFmZGU2OGRhZjM3NWM4NmU4ZjNkODc3MTU1NmViMjIyMGQwIHJlbGVhc2UyMy1tYWludAorMzU3MDQgNTZmZWQwOWQwMWYzN2VkNDM3MmVlZDgyYTgxZWM4MmQyZmM0ZjA3ZiByZWxlYXNlMjMtbWFpbnQKKzM1NzA1IDRiYzYyMGY0N2ZiNDJlZWUwZjU5ZGIwNWVjODljODJmMDU5YmU2NTYgbGVnYWN5LXRydW5rCiszNTcwNiA4MTYxOWRjYmZhZTdiNTU2NDY2YmM1MmVhYjhkNjY3NDgyNGQxNDFjIGxlZ2FjeS10cnVuaworMzU3MDcgM2M3OTY0MTNmMDVlNzI5ZGUzNDAzNjRhMDJlZmNjOWYzMzEwODhhYiBsZWdhY3ktdHJ1bmsKKzM1NzA4IDM5YzM2NTI2ZDFiMDgyMjNlNThjZWFjYmU0YjY5YWEyMWRlNzA5MjkgbGVnYWN5LXRydW5rCiszNTcwOSBkMDNiNTRlNjBhNjc2YjFmN2QyZWNkZGNlNDFkMmYyNmE2YWVlNmU4IHJlbGVhc2UyMy1tYWludAorMzU3MTAgNGRiMGM4NGY1YzZhMzU5YWNmOTAyNGI2NzUwODJiZTk3Mzg5M2RkMiBsZWdhY3ktdHJ1bmsKKzM1NzExIDNjNjE4YzY5MzllMzM0Mjc3MmUwYTUzZWE3MWQ0OGQ0MmY4NjMzZDggbGVnYWN5LXRydW5rCiszNTcxMiBmYmNiY2RhMTRiOTJlYzMyMzUxOWVkMzY5M2I1MGZkYjIzNzkzNDM1IGxlZ2FjeS10cnVuaworMzU3MTMgMjJhNTUwMjhhNzhkM2VhODA2NTM5NDM5ZGIyN2UyMzZiMDUxNzBkNSByZWxlYXNlMjMtbWFpbnQKKzM1NzE0IDUxODRkNjljMjRkY2I5YzYyMTA3ZDQ0YWQyY2U0ZGQzNGEyMThiOTYgcmVsZWFzZTIzLW1haW50CiszNTcxNSAwOTgwMGJhMmE2NTM0OGEzM2JjZjEwNzYxMDA3MmE2NDZlYWMzNWY3IHJlbGVhc2UyMy1tYWludAorMzU3MTYgOTM5MTdkZDhhODdjMjEwY2ZjNDlkOWVkODE4MTE5MDliN2Y2NGI1NSBsZWdhY3ktdHJ1bmsKKzM1NzE3IDYwODAyOGYzODhjNWM0OWM3Nzc3OGVjMmFiM2VmZDc3NGE1NDEwODggcmVsZWFzZTIzLW1haW50CiszNTcxOCA4ODZkNjZmNTExMDVjNDczNjlkN2NiODA3MzNjMzkwODA0YjZiZDU4IHJlbGVhc2UyMy1tYWludAorMzU3MTkgZjhjMGFjNWJlZjAyOGNjMTVjZWNhYTUzNWVjM2NkOWY5MTM1NWRlOCBsZWdhY3ktdHJ1bmsKKzM1NzIwIDYzYjY4Y2IyYjQ0MmY0ZTY2NGZmYTU4ZDU5ODY5Nzk0MWFlMjQ4OTMgbGVnYWN5LXRydW5rCiszNTcyMSAxZjI5MzRhMzE4Yjc4MWJhNTlmNDQxOTJjZGRkMjcwMjM1Yzk5MzI1IGxlZ2FjeS10cnVuaworMzU3MjIgMTBiYTI0MTYyMzkxMTBlOGFmN2IwNDU0ZDgwOTBkMzlhZjI5ODliMSBsZWdhY3ktdHJ1bmsKKzM1NzIzIGZkYWJiNjgwOGQ1MmZiZmEyNTRiMGUxODIxZGE2MmFmNzM3OTk5MmIgcmVsZWFzZTIzLW1haW50CiszNTcyNCAwMWVhMDNlN2IyNjVmOGI3OGY1OTc4ZWJjOTBhOGI0Mzk0MDNhMzIyIGxlZ2FjeS10cnVuaworMzU3MjUgMDFlMzE2NDg5ZDY3OTkyMjQzNjYwZDFkODBlN2JjYTNiZjY4YjFlYiByZWxlYXNlMjMtbWFpbnQKKzM1NzI2IDY2MzY4MTE4YTE5YmMwMzU4YjNhOTFmZGQ4ZDI5ODM3YzgzNzdjMDcgYXN0LWJyYW5jaAorMzU3MjcgZjFmZDFhZTQyMTM2YTAyM2U0ZjM0N2VhYmQ1OTM3MGVkYmU4OTI1MCBhc3QtYnJhbmNoCiszNTcyOCBjOTIxNDM4MjY2NWY0Y2Y5YjNiYjdlNmFjZWY1MzNkOGRlMDdiYzY5IGFzdC1icmFuY2gKKzM1NzI5IDA2MDE0ZjcxZjE2MzZhOWNmMDQ1NGU3M2VmYTY0OTA2OTc4MGM3NTYgYXN0LWJyYW5jaAorMzU3MzAgNzY3M2JmZjc0MTIyOGI4MzQ5NWRkNzUxMjUzZmYxNjEwOTdkYWNhYyBhc3QtYnJhbmNoCiszNTczMSA0YzM0YWM5ZGE5M2Q0MjQ2NTk3YmRkMWNlMWJhZjg2OThmNGY5N2RhIGFzdC1icmFuY2gKKzM1NzMyIDdjN2EyOTgxNDU1Y2E4YjNiY2I3NTg4NzIzMGIxNGM3YmIwOTExYTEgYXN0LWJyYW5jaAorMzU3MzMgZmY1YTMxYTcxZDlhNmIwZWNjNTU4MzIwZjczNzRmYmJjNzRkYTM0MyBsZWdhY3ktdHJ1bmsKKzM1NzM0IGZmMjU4YzY3MWQzY2NkNTEyZDFhOTIyOWQyOTkwMjkwNDY3NTFhM2QgYXN0LWJyYW5jaAorMzU3MzUgZGI4YzQ1YjllODE4NmVjMmU1MmUzN2RmZWZmNjdiNmZhNDc0MTk4MiBsZWdhY3ktdHJ1bmsKKzM1NzM2IDlkMTYzM2U2YzQyZWI5ZDM4YWFmNWI5MDExZGZlZWMxZWNiY2M4OWIgbGVnYWN5LXRydW5rCiszNTczNyAwNTk3NDBkNTJhZTVjNGU4ZjNkOWM0ZDJlZTY0NWZhZTA2ZDcyMGM5IGxlZ2FjeS10cnVuaworMzU3MzggMzIwMzU0Yjc2NmU3MmQzMDRkYzMwNjI5ZGEzYmIzMzRiNzA4ODNjZSBsZWdhY3ktdHJ1bmsKKzM1NzM5IDEyNmQ4MTU1NDZkMzM3OWZiMzYyYWNiZTczODI1OWM3NDk5ODdjMTggcmVsZWFzZTIzLW1haW50CiszNTc0MCAyMjhlYTc1NzcwZTNkZTgzMmE0MTdkOGY2MTQ3YzRjZDRkNzBmYjZiIGxlZ2FjeS10cnVuaworMzU3NDEgMzBlYTBiMzUyZmMwMmZkYjJkMzEwODhhYWUwN2VhM2FlMjNiNjc2NSBhc3QtYnJhbmNoCiszNTc0MiAzYjQ0MDMzNjA3NzVmMDQyMjMzMzJlMWNlZjMzMzlmMmU0ZjZmZDU0IGFzdC1icmFuY2gKKzM1NzQzIGFiNDllNmZkNzc0NjUwMGUwYTJhZDk3ZGE0OGI4OGZhMjAzNzQzYWUgYXN0LWJyYW5jaAorMzU3NDQgMjBiNWU5YTZlZjZiMGE1YTdhYmUyZTE3NDJlMTQ0Y2M2NDE4YzE0YSBhc3QtYnJhbmNoCiszNTc0NSAyODIyZWQ5NTYzMDlmZThkOTVkZjA4ZTMzM2I3MTc1N2FiNzM1ZGY4IGFzdC1icmFuY2gKKzM1NzQ2IGFhYjc3NmQ0MWI0ZjUxODRhYzQ1ZGM1YmRjZGViNmE3Njc4Y2VkZjMgYXN0LWJyYW5jaAorMzU3NDcgYjYxZTVmOTNlYmUwYTEzMzQwMDg4ZjFlZDY4MTY0YjliZjdiODYwOCBhc3QtYnJhbmNoCiszNTc0OCBjZTc2YTlkNmU2NTMwOGYwMDRhMmU3ZGMxYzE4ZjUzZGQwNTM0ZDg3IGFzdC1icmFuY2gKKzM1NzQ5IDA2MTEwOGE4OTUxNmYxMWY0NWE1ZDJmYmQ5MjVhMWQ4YmYxZGIzMTQgYXN0LWJyYW5jaAorMzU3NTAgMjQ0OGY2ODRjZTllOWM0ZTliZjZiYTdlMmQzMDQxZmMwNzdlOGIxYSBhc3QtYnJhbmNoCiszNTc1MSA0ZjBhMWU3YWQ2OWNhMTU5YzdjZmUyZmQ4YzM0YTQ1NjNlMGY5NWFhIGxlZ2FjeS10cnVuaworMzU3NTIgOGYxY2U3YjBlNDIzZTMyOTYwOWMwYTNjY2I4NGM4MGU0OGY2NmI2MSByZWxlYXNlMjMtbWFpbnQKKzM1NzUzIDY5YzFhYjZiMjYwMjE0MWIwYTdjYTQ1YTQxMzZlYjFmNDQ4YWY3NzQgYXN0LWJyYW5jaAorMzU3NTQgNTRhZTlkZTM4ZjBjMmRkYzAwMjdkNGE0YTYwNmQ2MzE2MGIzNGY1YiBhc3QtYnJhbmNoCiszNTc1NSAwMjA0NDNhMTBjMjAyNThkMzgwNjFiN2YyNTI3OThkNTczZDQ4NWM3IGFzdC1icmFuY2gKKzM1NzU2IGJiMjU1Zjg1NTk5OWU5ZjYwZTUzZmRhN2VjNDA0NTY4ZWIyYzk1ZWIgYXN0LWJyYW5jaAorMzU3NTcgMTgyMjk1MzgxZjE0N2VmZDgzNTk1MmU2MTU1YjZjNTg0MGY3NmQ1YyBhc3QtYnJhbmNoCiszNTc1OCA1NDY1YTJjYjBhZWE3ZTc3M2E2ZGQ1ODZhNjA4YTc2NzdlNzI2ZTMwIGxlZ2FjeS10cnVuaworMzU3NTkgMGM2Njc2MTI0MzA4OWE0M2I5ODQ1MTI0NjgzNjVkYzhmMTU1Yzk2ZiBhc3QtYnJhbmNoCiszNTc2MCA3NjVmZTE2ZjY2NWI4OGQzMWRkMzQ5ZDM5NGEyZjBhOWUyNzhhODAwIGxlZ2FjeS10cnVuaworMzU3NjEgNGJlOGUwMTBiZGI5ZTljMDJjZTJiNzY1NzcwMjMyYWY3YjU4OTlkOCBhc3QtYnJhbmNoCiszNTc2MiAyMDBiZjc5YzAxNTk2MDlkM2M3NWJhZDU2YTQ5MTVkNzk3ZGJiZmNiIGFzdC1icmFuY2gKKzM1NzYzIDU2ZjliMzFhYzY5ZmE0MGY5MmU1NjNkYzY0NDE5YWQxNmJmMzFhNjggYXN0LWJyYW5jaAorMzU3NjQgMzQwZTQ5ZTAxNTc2NjQ3Yjc5MzlmYjUwOGYzMDU1ODcxZmNhNjYwMiBhc3QtYnJhbmNoCiszNTc2NSAwYWVjYzA3ZTM1ZDlmYzYyNWVhNTg4MDA3MjgwZWY0N2JmYzc1YjdhIGFzdC1icmFuY2gKKzM1NzY3IGY5NTBlZjMwOWQ3NTEyZjVlY2FiNGU4MDk3MWYzOWI4NDM4YzVmOTUgbGVnYWN5LXRydW5rCiszNTc2OCAzODM4Y2RlZTFhMjAxYjNjMmU1OWJmMmFiNmMwODdhMTQxNDc4N2IzIGxlZ2FjeS10cnVuaworMzU3NjkgNjE2N2U3OGExN2E4MjZhODM4ZjU0NGI5ZmNkODk2MWUzMDJhY2I3ZSBsZWdhY3ktdHJ1bmsKKzM1NzcwIDBlOWUwYzUzNDlhMGRlZWIwZTE0YjljZTllYThiYTJhMzk0ZTcyZjMgbGVnYWN5LXRydW5rCiszNTc3MSA5MGUwODk0YWVjNWJlZDM4ZDMzMmMxOGU3NDkzMDIzZjI5ZDQwODVkIHJlbGVhc2UyMy1tYWludAorMzU3NzIgNTgzMTc4NTE4YmQwY2QzMDdlODFhNmRiNjFhZDQzODg2ZDczMTUyNSBsZWdhY3ktdHJ1bmsKKzM1NzczIGNmYWZhZWE5M2Q5MDk1ZGM0YTlmN2E3NWU5NmM0NDVhNzU0YmUxODQgcmVsZWFzZTIzLW1haW50CiszNTc3NCBlYTllZTliNzQ2NzI5Y2I1NDRlYzQ2NDExMzZkYzE0YWM0MzJmMGM0IGxlZ2FjeS10cnVuaworMzU3NzUgZjJjZWExNmExZjM4MmQ0Yjk3MzNkOTBmOTgyMDNkMDFmNDVmOGQxOCBsZWdhY3ktdHJ1bmsKKzM1Nzc2IDQ3ZWQ3YmNkZjA4NjQ2YjRjZmJkOTNkMzIwODdhMmViZjhlYjJjZjYgcmVsZWFzZTIzLW1haW50CiszNTc3NyAzMzg1NzdhZmRhYjZkOGJkMTIyMzg2MDhmNTU3ZDViOTg5OTIwNzNlIGxlZ2FjeS10cnVuaworMzU3NzggMWNhM2E2MmEwMDlhZDRjNWRkM2Q0Y2JlMjY4YmNhMTI1YjkzYjhhZiBsZWdhY3ktdHJ1bmsKKzM1Nzc5IGY5ZmFmNTU3MTcyMDJkMzNjNGVhODI0NTNlOWZhODBiNTZiYTAwM2YgbGVnYWN5LXRydW5rCiszNTc4MCBmYWE3ZWViMTE4Y2Y0N2FkYTVlOGJkOTQyNjA1NmEzMDBhNjgwNjE4IGxlZ2FjeS10cnVuaworMzU3ODEgYTQ4ZTYwOGJhNjA1ZmExYmU3NDQ5Mzg5ZDhiY2VmOWVkZDZjMGIwZSByZWxlYXNlMjMtbWFpbnQKKzM1NzgyIDVjYTEwM2MzN2Q1ZTBiZGQ4MGI2ZDY0YzVjNzQ1MjdhODhkM2MyN2UgcmVsZWFzZTIzLW1haW50CiszNTc4MyA1YWI4MTJjZDBkYjc1NjIyNjU0ODA1ZDcyNjMyNjU3M2ZmOGFkYjk1IGxlZ2FjeS10cnVuaworMzU3ODQgZWYzNGRlYzAwNGNkZGY3OWM3ODI1YWI1MTY3YjQxMDNhMzcwNDFkNiBsZWdhY3ktdHJ1bmsKKzM1Nzg1IDIwNGI3YmNlYWQ0Yzk4ZWZiY2VlOGUxNzY2NjI2ZTNkMTc4MTljODUgbGVnYWN5LXRydW5rCiszNTc4NiAzZDA0NmQwNjNhODRhOWJhMDEzNDE2Njg4OTIzNzMzODljODc3OGM1IGxlZ2FjeS10cnVuaworMzU3ODcgMjI3NmRlODkxZmUyZWY0ZGNmZGFkY2IxNmI2NDM0ZmRjNzk1NzdjYSByZWxlYXNlMjMtbWFpbnQKKzM1Nzg4IDBjNzZhOWU1YzgzODJjM2JkNjNhMmEwM2ZiOWMxNjMzMGQyOWM1MGQgbGVnYWN5LXRydW5rCiszNTc4OSA1YzM1YjNjYTViYTkzZDk2YTdiNmE0ZTM4NTJkZWJiMjI0YjljOTVmIGxlZ2FjeS10cnVuaworMzU3OTAgMGU5ZmRiNzZhYzg1NWY5YjNjYmRhOTA3ZmM1ZDVjZjRhZDEyOTM3ZSBsZWdhY3ktdHJ1bmsKKzM1NzkxIDUxZTFiNmRjZmY2MWU5MjJjNzNhN2I1OWYwOTY1ZDZjODhjYTljZTkgcmVsZWFzZTIzLW1haW50CiszNTc5MiA3YTc0OTlmYmM0NTI5OTY2MTQ0YTUyZWJjNGVhNmMxYjgyMWMzNmRiIHJlbGVhc2UyMy1tYWludAorMzU3OTMgNmMxMmEzYmFkN2Q1MzlhZjk1ZGVjZGFiMjcxN2M5NDhiM2UyMzZkMSBsZWdhY3ktdHJ1bmsKKzM1Nzk0IDYzMGU0ZmJjZGVhMjY1ZTdlODAyZDNkNGMzMzYwNTcwNmM1Njc5YjEgcmVsZWFzZTIzLW1haW50CiszNTc5NSBjNWE1NTI1NzgzNDRmNWNhN2Y0NDlkZWRhNzNjNjUyMzllZWFlMjU5IGxlZ2FjeS10cnVuaworMzU3OTYgOWIyYjdkM2I0MmYzYTYxZGM5MGI2NmRiMWEyZjdiNmQ5YmRlZTU4YyBsZWdhY3ktdHJ1bmsKKzM1Nzk3IDY4N2IwYzgyNTRmYWE0NWQyOWQ2OGYyMWFjMzM4OTVmMTA0MDI4YjcgcmVsZWFzZTIzLW1haW50CiszNTc5OCA2NjY3YTFkOGFmYjEwNDhkMGFlYTQ0Y2QzZDkwZGEwYzY5Yjc4Mjc1IGxlZ2FjeS10cnVuaworMzU3OTkgYTQ2MjY0YjkxYTUxOGY5NTRlZWRjYzFkY2RhMjUxYTE0Y2FhYWQzNyBsZWdhY3ktdHJ1bmsKKzM1ODAwIGI2MWZlODI4YjczODg2ZjI2ZmJmYzdlYzVmYTdlZWQ2OGQzZGJhZTQgcmVsZWFzZTIzLW1haW50CiszNTgwMSA1MWE1ZmI2MDkzNGQ3NTIzNzVjMjdmYmFlMmY5NzA0NzE5NzE1ODY4IGxlZ2FjeS10cnVuaworMzU4MDIgMjIyOTA4ZGZiZjU4YmU5ODAzNzQ1MzBhYWNmZDA1MWZhNjU1ZmFmYiBsZWdhY3ktdHJ1bmsKKzM1ODAzIDg2MTVmMjc4ZGE1ZjM1NjgxYmY2YjJlNmI1YTU5ZjM3MWVkMDkxOTMgbGVnYWN5LXRydW5rCiszNTgwNCA5ZjhiZmQ1NDI1MWY3NDQyODk5YTExMjlhOTA4YWIwNjEwMzg5NzhmIGxlZ2FjeS10cnVuaworMzU4MDUgOGIyYTQyOWFmNDJmZjE2NDE1Y2Y2YTU4YWYzMTc0YzFlNTBlNzcwNyByZWxlYXNlMjMtbWFpbnQKKzM1ODA2IGFiNjgwYzRhY2QzNWFmODEzZDAyY2VjNjU3NDkyNjNiYTZkMjFhYjggcmVsZWFzZTIzLW1haW50CiszNTgwNyA1ZWI3YThlMmYzNDUzOTgxNmFiYTQ2NjA3MTI4ZTM2ZDY2MmU0MGMzIGxlZ2FjeS10cnVuaworMzU4MDggYjlmMDkxOTY1MjZlYWI0MDA0ODA5MGZjODhlM2Y2MDc5ODYwM2I2MSByZWxlYXNlMjMtbWFpbnQKKzM1ODA5IGNiYmFjZGE4NDQ4MGFlMmJkODVkMWM2MTI2YmU3NjNjOWY3MTE4OTkgbGVnYWN5LXRydW5rCiszNTgxMCBhMTQyZTRlOTdmMTMxYTBkOThmNjZmN2I4MTIwMGI0OTY1ZWMwODUyIGxlZ2FjeS10cnVuaworMzU4MTEgZThhMzFhYjdhODc0OGU2MTQ2MGZiYWU3NDYyZWRmYTdkNTJmNzNhMiByZWxlYXNlMjMtbWFpbnQKKzM1ODEyIDRkZWU1ODMxNWNjNDFmYjA0ZDdiNTcxMWU5ZWRmN2JlODk4ZjhjYjkgbGVnYWN5LXRydW5rCiszNTgxMyA2NDZjYjAxNDY5NDJlMWY1N2QwM2FiYTczNmQ1NWMzYmZhNTdhMWY3IHJlbGVhc2UyMy1tYWludAorMzU4MTQgODJiYzY5OTYxMDIyZGM5Y2M5YzJjYmNlZDMzZjhkZjJjYWZmOTVjYiBsZWdhY3ktdHJ1bmsKKzM1ODE1IGY3OTNhMDQ2ZWQ5ODE0MjZlYTI2MzJkNjEwMDc3ODYxMDZiNmZmZWUgbGVnYWN5LXRydW5rCiszNTgxNiBlYmZhNWNkOGNiYTRkMjNlNWNjODQxYjE4Zjk3NzljODRhNjVmNTUzIGxlZ2FjeS10cnVuaworMzU4MTcgMjY4MzlmMzJlNzBkMDcxYmJmZDBiZjViOWMyYjA2YjFlYTMwYzY5ZiByZWxlYXNlMjMtbWFpbnQKKzM1ODE4IDY0MDg0ZjliYWJhMWVjMDQ2Y2Y4Yjk4NjliNDdiOTRkZmFlNzFmZmEgbGVnYWN5LXRydW5rCiszNTgxOSA0ZWI1NzRiMTIyNWZhYWI3ZjQ0ODlhMzdlMTQ0MWIyYjYyODYwYzU5IHJlbGVhc2UyMy1tYWludAorMzU4MjAgMmNjNzE0OTc3NDc5MzQxNmUwN2ZiOWQ4NWJlZWQ0YzYxODBhMjA3OCBsZWdhY3ktdHJ1bmsKKzM1ODIxIDk4NGIyODk5OTJjMDY5M2MzNWQ3YzFiNGYyOTBmNTQ4MWUyM2MwZGYgcmVsZWFzZTIzLW1haW50CiszNTgyMiBjMjQ5MzA1YmZjYWM4YTU0ZWMzNjdlNzM0YzA4Yzk1YjY5Y2NmMDUxIGxlZ2FjeS10cnVuaworMzU4MjMgZTRmNTJlMmUzODAwMGI0NjQ1YzUxNzAyN2U2NDBkN2I5MjAwODU4YiBsZWdhY3ktdHJ1bmsKKzM1ODI0IGVjMDlhNzE4NDljYzYzYWRiMjZhNmZiNjE1NmUwN2RkMzc0MGFkMzUgcmVsZWFzZTIzLW1haW50CiszNTgyNSBlMmEwZWY4N2Q0ZDQwZGM0NGRkZDQ4ZmM0NmM1NmVkMGIyMTJlMTRiIGxlZ2FjeS10cnVuaworMzU4MjYgMTRmN2Y5Yjg5ZGE5YzVkZDNmZWZjMDQwNjQ1NzhmN2I0YjYyMTZiNyByZWxlYXNlMjMtbWFpbnQKKzM1ODI3IDZlMDc4Zjc2MTNhZDdhYzExYzI0ZjY4NjU4ODk4ZWQ3ZTBjMDkxZjYgbGVnYWN5LXRydW5rCiszNTgyOCA0MmUyYjVhZmE3MTU3MzUzY2Q3MjZlZThiNGNmNWZmMzA2NTQ2ODFlIGxlZ2FjeS10cnVuaworMzU4MjkgNTQ0ZjIxNzIzNjNkMjFmN2U0ODYyOWI2ZjQ4ZGJlOTkxYTY3NDQ2NyBsZWdhY3ktdHJ1bmsKKzM1ODMwIDUwNzA4YjhmMGQyODc4MmY3MTY5ZDEwMTI5MjRiODQxNTg2MThlMTYgcmVsZWFzZTIzLW1haW50CiszNTgzMSBhMjliYWMwYWU5MDViOTRhYmZhYmEwMWQwMTQwNDdhODFjNTQ0Mjk2IHJlbGVhc2UyMy1tYWludAorMzU4MzIgMjZlMDkwY2NiYjY0YzM3ZDBiNzE5YmMyMjQ1NDlmOGMzZTc0YzhhMyByZWxlYXNlMjMtbWFpbnQKKzM1ODMzIDU4MmRjYTAyZTYwZjY1N2E5MDUxODYzOGI5ZWRlZjcwZjEyZWI1NmYgbGVnYWN5LXRydW5rCiszNTgzNCAyZDdiMGNhMGMyNmM5NjAzNjYzNzkxZjEyOGUzOTE2YjQxMjFmN2NlIGxlZ2FjeS10cnVuaworMzU4MzUgZTkwMjY5ZmMxOTM2NWIxMmFjNzVkZmNhN2NkMDRhZDAzNjM4NGYzZSBsZWdhY3ktdHJ1bmsKKzM1ODM2IDM3MTIxYzhiNjkxZGEwOGEwYmZlYTVlMzU2M2I5NGQ2MTU0YTFlNmEgbGVnYWN5LXRydW5rCiszNTgzNyA5OGE4MDc4ODgzNWMwNjYwZTZiYzRlODU1MDc3ZTZiOWIxNDgxYjRjIGxlZ2FjeS10cnVuaworMzU4MzggNGM4MjU1OGIxNWZiM2I2NDA5ZjMxNjI2N2Y4ZjIzNzI0MjIyMTQ1ZSBsZWdhY3ktdHJ1bmsKKzM1ODM5IGExYjM3NGZmMDE4NDE2NGE0OTg1NTUxMDk0YzUwNzk4NmI1YjVhMjUgbGVnYWN5LXRydW5rCiszNTg0MCBjMTNiYjdmNGJjZDE4OGE3MGUzYmZmZjZhZDk5ZmM4YWQ5MWU1YzY2IGxlZ2FjeS10cnVuaworMzU4NDEgNjM1ZWYxMTA2NThlZjhkM2M4OTc1MGQ1ODc2NGI2ZjA1NGFmNDBiMyBsZWdhY3ktdHJ1bmsKKzM1ODQyIGRiNmE2ZDM5MWE5OThmNTJlMzI1YWE4ZTVhNzY0ZDk2NjUwZjQxZWEgbGVnYWN5LXRydW5rCiszNTg0MyBiNTU5NGQ3Mjc5ZGY2OWUzNWJkMWE3ZTQ0NTZmYjViY2U5Y2MzN2U2IGxlZ2FjeS10cnVuaworMzU4NDQgZjQzNzZmNzY3NGEyMjJlODZmZTU5NzUyM2M5NWFiY2NiYmM0ZWVkMyBsZWdhY3ktdHJ1bmsKKzM1ODQ1IGI5YzY1OGFjMGUyMGNkNmI2YmY1NGQwN2ZiY2ZkMGQxOTcxZDgzY2YgbGVnYWN5LXRydW5rCiszNTg0NiA2OTZkOTJlZmYwMjJmZTRmODU5OGRmZjVhMGExYjJmOTdhODY2N2FiIGxlZ2FjeS10cnVuaworMzU4NDcgMzNmNmExNWRiZjZjZjAxZDhhMzc4ODY1MzNlZWEyMmRlMzMxYzU3ZiByZWxlYXNlMjMtbWFpbnQKKzM1ODQ4IDAwZWVhMjgxMzVmOGZiNzFiMWE4MDBmNjlhM2UwYmM4NTM2ZDExMWMgcmVsZWFzZTIzLW1haW50CiszNTg0OSAzODMxMDk0MzNhOTcyODRmNzA0MTA2NGMzN2MzMzZiYWI4ZjJhMmIwIHJlbGVhc2UyMy1tYWludAorMzU4NTAgYmEzMTIxNmUzN2M4ZjIxYTU3MmM2YmJjMGUyOWViYzhiYTNkNGFlNiBsZWdhY3ktdHJ1bmsKKzM1ODUxIDBiMzNlMzczN2I0Y2JkN2MzNzY3ZTlkN2M0ZDNlN2I1ODBkODQwN2YgbGVnYWN5LXRydW5rCiszNTg1MiBkY2JlMDQyYjg5MmRmNWJiYTlmNTUzYjJhNzc2NmM1NDg1YTY2NjMwIHJlbGVhc2UyMy1tYWludAorMzU4NTMgMjJiMDgwMmFiYTc0MzdmMjZlYWQ2MTA3ZGMwNTVkZGZlODA4NjNmMiBsZWdhY3ktdHJ1bmsKKzM1ODU0IDkxZjc2Y2Y0MDczYTJhZTk0ZTk1OGE1YmNjOGU5OWMyYWFhMDBiMzcgbGVnYWN5LXRydW5rCiszNTg1NSAzNTg2YTc4MDFiZGFmMzZjNDg1YjY0NWNkYjY2OGVmMDcyOGRmYjY4IGxlZ2FjeS10cnVuaworMzU4NTYgYzM2ZWEwNzk0OTIwMWU3NTE3MDhiYWM0MGE4N2YwOWUzMjE5MDc0MCBsZWdhY3ktdHJ1bmsKKzM1ODU3IGQ4MDNhZmNlOGFjNGU3ZjhmM2EyYWNlMWViOTNmNjljMjUzMjhjNDUgcmVsZWFzZTIzLW1haW50CiszNTg1OCAxMzZlZmJiMTExN2RlYmIzYTA0MzgzYjk5ODFlODc4NjY1OWIyOTNjIGxlZ2FjeS10cnVuaworMzU4NTkgOTU1ZTIwNmU1M2RjMzVlMDQ5YzVhZDUwNDUxM2E3NTQ3ZDk2N2I2OSBsZWdhY3ktdHJ1bmsKKzM1ODYwIDZkYjQ4YzViZGIyN2FiZWViNmMxZjI0ZDkzMWU2NjgzMjMyN2NhNzAgcmVsZWFzZTIzLW1haW50CiszNTg2MSA1MGQ4YTI3MjE0ZTZmODUzOGExZGIyZjMxNDlmMTVkNmUxNmE2Njg4IGxlZ2FjeS10cnVuaworMzU4NjIgNjZlZGUwMzg3ZjM2NzQyODRhMzZjNGEwYzRiZmFiYmQ2MDc5MTQzZiByZWxlYXNlMjMtbWFpbnQKKzM1ODYzIDlmNmQ0NWYzYzAyM2Q1NzE5ZmM2NDQzZjExMDcwYWQ5ZGRhYWM1ZjIgbGVnYWN5LXRydW5rCiszNTg2NCBjMzhhMzlkMzg0ODliMTI2NGIyMmE4NWFiN2YwNjdiYWE4MmZkNTkxIGxlZ2FjeS10cnVuaworMzU4NjUgNWEyMjQ2NWZkYTI0ZjlkNmY5YWJkYjAxODQyMDFjYzVlYjY5NDUxMSByZWxlYXNlMjMtbWFpbnQKKzM1ODY2IGU4NTM1NWNmMTc1YWFlMDg1MWQxYjBhZjM4M2ZiN2NlNjAwNTZmM2EgbGVnYWN5LXRydW5rCiszNTg2NyBkMDliYWZiOTc2OWY3ZTVjNzgzMGYxM2I4YzE0ZDAxYThiMjA2NjUxIHJlbGVhc2UyMy1tYWludAorMzU4NjggOGZlMWEyNjYyYWFhNTM4ODAwZmNjODk3MDQ1NjRhZjFiMzU4MWZlYiByZWxlYXNlMjMtbWFpbnQKKzM1ODY5IGM3OWNjMDQwM2FjZmVmMzlkNGIwNmRmODE5NjhjYWZkZjRiZDQ3YjcgbGVnYWN5LXRydW5rCiszNTg3MCBjNjgwMDgwZjkwMGMxNmM2MDIwODM2YjNhZWU5ZDBmNWJjMjllMjM2IGxlZ2FjeS10cnVuaworMzU4NzEgZTliY2U4MzdjMWMzOGM5ZGRiNWU2OTBiYjBkNTVkZGU2ZWYxMTA3OCByZWxlYXNlMjMtbWFpbnQKKzM1ODcyIDg2MDFjNzg1YzY4M2RlYTIyYzU4Y2M3ODQ4ZDM4N2M0MmM1M2I4MDIgcmVsZWFzZTIzLW1haW50CiszNTg3MyBjZjM5MmI5MzZhMmU0OTQyMjIwYWU3ZGJjZWQyMWNjZDAwMTgyOWRkIGxlZ2FjeS10cnVuaworMzU4NzQgMTdiZjk1ZWQ3NTYyYzk4MTA2YTYwMWNlMDkzYjNhYTIyODVlZDhiOSByZWxlYXNlMjMtbWFpbnQKKzM1ODc1IDE1MzhhOGNmYjBkZGE1NGE0MjRmMjMxZTRjMWQ1MTQ0Yzk0MTM2NWIgbGVnYWN5LXRydW5rCiszNTg3NiA1M2FiZDlhZDE5MDk4ZjkzZTU3NzUzMGM1OGQxODE2NzhjYzQxZTZiIHJlbGVhc2UyMy1tYWludAorMzU4NzcgZjYzZGQyOTlhNjBiMjczNTlhYTljNzMzNjFlMjBmYWZjOGFlOWQxOSByZWxlYXNlMjMtbWFpbnQKKzM1ODc4IDdhZmViODM2ZjY2YzU2ZmU3NmYwOTFhZTkyM2NiYzFmOTQ4ZGY5ZmYgbGVnYWN5LXRydW5rCiszNTg3OSBhMzhjZDYzZDE3YTc0ZTRlYjM1YTMzNzdkN2MxODA5ZDNmMjgxMzVlIHJlbGVhc2UyMy1tYWludAorMzU4ODAgNjc1OGI2MzBhY2I3ZWY4NjE0NDhlMGIxNTFjZTQ2ZmIzMDEzMzViNiBsZWdhY3ktdHJ1bmsKKzM1ODgxIDY5NDMzZmMxYzgxNmNiMjJhMTZmZTk2MzFjN2I1MWM5MWNmNDhkZWEgbGVnYWN5LXRydW5rCiszNTg4MiA0NjlkY2IwYWQ3MzhiZDRkMDIwODliYjc4YzU0NjA2ZjRkZTdmMThmIGxlZ2FjeS10cnVuaworMzU4ODMgNjFiMjZiOTVlYjMzZWNjNDc0OTI5MDYzY2NmMWUyODdkNjFjZjY2ZiBsZWdhY3ktdHJ1bmsKKzM1ODg0IDEyMWFhYTRiYTkyMzU4ZmVjMTkwNWUxZTRkZmIxZmRkMmRkMzdlZWUgbGVnYWN5LXRydW5rCiszNTg4NSAxYzIzODFkNzk3YzBmNzU4ZGFjODVmMWJjOThlN2EyNGY4NTRmZDYxIGxlZ2FjeS10cnVuaworMzU4ODYgMjdkYTg3YzkzMThmNTMzNGQyZjU4MzkzM2Q3Y2I0OTZlYmFmNGZkMSBsZWdhY3ktdHJ1bmsKKzM1ODg3IDAyZjc2OWQ3ZTRhOGUxNzRkNTc4NGVmN2UwOWFiNmYxOGUxYjJkZjMgbGVnYWN5LXRydW5rCiszNTg4OCAyNGM0NjAwMTQxNmUxYTA1MjQ3OGE5ZWQyYjA0OWExMDVkZTQwOGQ5IHJlbGVhc2UyMy1tYWludAorMzU4ODkgYjMxOWRiMzg2OWQ4MjJhNjIyYzJkOWQ0YjgxYWY3ZjY5NWU5ZjM5ZiBsZWdhY3ktdHJ1bmsKKzM1ODkwIDYzMGEwOTE1YTMxMDFiZWM3YTA4NTQ0MWMxYTJkNmJlM2UyY2ExY2EgcmVsZWFzZTIzLW1haW50CiszNTg5MSBjNzAxMDc2MGU4YWQxOWFiZmVkMGNlYzA2ZDU3MjA5NWIxYzQ1Y2ZiIGxlZ2FjeS10cnVuaworMzU4OTIgYWIwYzhkZGIyYzkyNTI4ZjQ0MWEwOWUyM2JhNjA3ZjBjN2ZkZThiYiBsZWdhY3ktdHJ1bmsKKzM1ODkzIGQ2NTg5Yzg4ZDIzYjdhNWNjNjg0M2VlNDc1MGUyNTMxM2ZmNzYyYjcgbGVnYWN5LXRydW5rCiszNTg5NCAzMThiZjY5OGU0MjViNWRkZDc5MDM1ZTQ5ODE3ZjIwYTc0ZWM2ZjY3IHJlbGVhc2UyMy1tYWludAorMzU4OTUgNjA2YWFlOTVmMTI4OTIyZjhlZjE4NWY1YTJhZTQwYzJhOWQ5MGJkZSByZWxlYXNlMjMtbWFpbnQKKzM1ODk2IDY1N2ZiMmE1MGU4ZWQzMzcwNGVmMmQ2ZTI3NGZhYjYyOTFkMGEyM2QgbGVnYWN5LXRydW5rCiszNTg5NyA1MmUxNDBjYTE0NmM1ZWNlNTI3YjUyMTk3MzliZjliMzg0YmNjODA0IHJlbGVhc2UyMy1tYWludAorMzU4OTggNDViYTJjNjljMzFmZGRiNzJjYWNiMDE5YjA2NmNmYmU5MjkwN2VhNyByZWxlYXNlMjMtbWFpbnQKKzM1ODk5IDVlMTdkMDUzM2FkMzY0MTk3ZTczNGIyNGJkMzhiOGE1ZDhiZGRhNjYgcmVsZWFzZTIzLW1haW50CiszNTkwMCAwMmY4OWQxMmYwMzZmNmE4MzIxZGQyYWZmN2JlMWY3OGE5M2RjZTYxIHJlbGVhc2UyMy1tYWludAorMzU5MDEgMjA2NTNjOTAzZDFjYWZkYTJkMDEyYTc1MmUyZjMyODVlMjY3NjA0YiByZWxlYXNlMjMtbWFpbnQKKzM1OTAyIGY3OGQ5MzhkN2JiMDgwNGE3NmI4YTA0YjZhOTZmNmQ5ZjkxNjdjNmQgbGVnYWN5LXRydW5rCiszNTkwMyAyNDU4MzVlZDhkZThkZjM3NzM4M2QxYjg2NWQ5YjNhOTNhNWI1N2Y2IGxlZ2FjeS10cnVuaworMzU5MDQgN2FmYjEzYzJkNTI2ZjQ4MzczZWRiYjkzNjcxOGIxYjM0MTMzOGNlNSBsZWdhY3ktdHJ1bmsKKzM1OTA1IDA1OTMxNThkMTRmMmQ1ZDEyNTNiYzhiZGYwNjFmMmVmNjU4Y2VkYTEgcmVsZWFzZTIzLW1haW50CiszNTkwNiBhY2UzZjEzYzE4MzZmNzkwYmE2ZjUyYTY3NzIxY2Y5MzJlMDk5NWI5IHJlbGVhc2UyMy1tYWludAorMzU5MDggNTJmZTkzYjY1NmNmNTkzZDQ5OTY2MzA2ZTJmNjY1NzUwYzg0N2I2MiBsZWdhY3ktdHJ1bmsKKzM1OTA5IGE0YjUyNmI1MGMxMjIwZTkxZjg4NDQxOGY0NTIwMWM5ZDU0OWVkYjQgcmVsZWFzZTIzLW1haW50CiszNTkwOSAzNjM5ODYxZDAyNjQ2YWYxZGEzMTIzYzI1NTYwYzRkYjNkN2VkYmNlIHJlbGVhc2UyMy1tYWludAorMzU5MTEgZWU3ZmNkZTU2MzZlYTE3MGY4MDgzNDI0NDlhYWI3YjUwNjNjZWFhMSByZWxlYXNlMjMtbWFpbnQKKzM1OTEyIDlmZTQ1Nzk3YzA5N2Y0Mzg4MDYwZmFjMWMzYjc5ZjA0ZmM5ZjlkMDYgbGVnYWN5LXRydW5rCiszNTkxMyAyODJkYmQ5YjFlZDZiN2E2OTI1MTYzOTVlYWY3ZGJlMmYwZjcwZjE4IHJlbGVhc2UyMy1tYWludAorMzU5MTQgNjc3MjM5MTA4M2M5Yjc1MWU0M2NkNDU0NGJkN2Q4Y2ViZDZlNDhiZiBsZWdhY3ktdHJ1bmsKKzM1OTE1IGQ2ZGVhZThiZjc5YmIwNTJhYmRiM2FhMTMwODMzMjIxM2JmMjM5NTYgbGVnYWN5LXRydW5rCiszNTkxNiAwMDk0OWJjNjdlNDliZGU4ZmJjMWVhOWY2NjdlNDM1MjgwZmQyNmQ1IGxlZ2FjeS10cnVuaworMzU5MTcgOGJkMzJjNTE1NDVlM2RmODE0YjE0MzVjZWJmZjlmZGE1M2RkYjU3MCBsZWdhY3ktdHJ1bmsKKzM1OTE4IDNlZGY4ZGI2ZjhiZmQ5NTk3ZmVkMTAyOTAwOTUwOWU4M2IxZGFiNjUgbGVnYWN5LXRydW5rCiszNTkxOSA5ZDU4NDdiOGYzMDExYjZmYjEyZTI1MTJjZDY3MjYzMzliMThlMDZjIGxlZ2FjeS10cnVuaworMzU5MjAgZDNjYTZiZGNiZjNjNDYzNzY3M2U5ODc0OGZhYzQ0MGI5ZGFmZmJlOCByZWxlYXNlMjMtbWFpbnQKKzM1OTIxIDE2Mzg2Y2JjYWI5OWMxYWMxN2JmYjU2OGJiOTdhODBhNmQ3OGFiNTMgcmVsZWFzZTIzLW1haW50CiszNTkyMiAyZDM0NTg1YzNiOTk0N2U2NDhkZWEzODExOGEzMTc4ODEyOTIwNjc5IHJlbGVhc2UyMy1tYWludAorMzU5MjMgMzc1MzhhMzZiNmUyYjJhYzgwY2UwZTQwMzNkOWU3NzZiNmMzZmNmMyByZWxlYXNlMjMtbWFpbnQKKzM1OTI1IGI1MjU1NTUyYWE2ZGE0OWZiNjNmODNjYWZlNDQ3NmFkM2UxNGEzNzMgbGVnYWN5LXRydW5rCiszNTkyNiA5NmI2MjY5OWIyMThmOWRmOWRkZTAwNjNlODgxMjgwOGExODg3ODYxIGxlZ2FjeS10cnVuaworMzU5MjcgNjY3MmY3MzA5M2RhMzMzYzg2YzFmNGEwZmE5ZWUyNmI5YmFlODU1MCByZWxlYXNlMjMtbWFpbnQKKzM1OTI4IDdlM2EyYzI3NGIzNjgzZmYyNjk5NjBkNmIzODczYTUwYzg0MDEzMjUgbGVnYWN5LXRydW5rCiszNTkyOSA0YTdmN2U4MDE2ZmMyNmI1ZDU4NDM1ZDM2YmY3YjIwMzkwYjU4NTNmIHJlbGVhc2UyMy1tYWludAorMzU5MzAgOTRiNDg0NWU0ZGE4YzQ5NjRlNmEyNDZjYTVkODc5NDUwY2U4MTJiZSBsZWdhY3ktdHJ1bmsKKzM1OTMxIDMwMGQ1ZDQ2MjM4NzIxNWUyMDI5ZTdmYTI3ZDY5Yzg0YjVkMTI4MzUgbGVnYWN5LXRydW5rCiszNTkzMiAzYWUwMWExMTA4MDEyMmZhNDdjNTVjZTE2MzJiOTBmNGEwMjM5YTAzIHJlbGVhc2UyMy1tYWludAorMzU5MzMgZmE3NTNjMTZjNjMzM2JmM2Y5OTJlNDNmYzJlZTVhNzUzMDM1YTFhNiBsZWdhY3ktdHJ1bmsKKzM1OTM0IDFkMTM1NzQ5MDZlZmNjNzE5YzAwMWFhYmEzNGI1OWRhY2ExODYzNzAgbGVnYWN5LXRydW5rCiszNTkzNSA3MDAyM2FmMjA4NWFiNTBlYzMyMzljODRmZjk2NTI5Y2Y1OGZkZGFmIGxlZ2FjeS10cnVuaworMzU5MzYgODRkZmE5YTY3ZGExNDYxODMyMzFhMDk3MDcwNzIwZGI0ZWFjOGJiYiBsZWdhY3ktdHJ1bmsKKzM1OTM3IGI2ZTRiZjMzNmRiOGEyNDc3MTU0YTcwZDk0Nzg5MWVlOGQyODcwYzkgbGVnYWN5LXRydW5rCiszNTkzOCAyOWE1OWY2NjJkZDEwNDkxMmVlZTNlMmE0M2VjMDVjMzJmMDM1OTU3IGxlZ2FjeS10cnVuaworMzU5MzkgMGRhNDRlYTA5OWY1NjhlMWVlNDE4Y2Q1MmJmOTIyMjdlY2IzNDBhYyBsZWdhY3ktdHJ1bmsKKzM1OTQwIGRkMWU1NWRlYWY1MmY4ZGIzYjliMzM0M2Y5MmRkMDBkM2YzZDQxMTEgbGVnYWN5LXRydW5rCiszNTk0MSBjMjVhOGMwNGRlM2U2MTUwOTQ2MGYwYzE4ZWQ1ZjkzZDQzMTZmNTRiIHJlbGVhc2UyMy1tYWludAorMzU5NDIgMzAyZDM5OWNmZDM3ZWViMWI5N2RiYmM4MTllNjYxZDMzMTc4MzJjMSBsZWdhY3ktdHJ1bmsKKzM1OTQzIDk1NTc3YjYzNWJiNDE5MjgyMmUzNDg5NTY5N2I5OTc1MmIxYTQ5YTYgcmVsZWFzZTIzLW1haW50CiszNTk0NCA1ZjRmMmY1MzZmOTYxYWIyMDBkZmU3MzJlNGQyOGU4YzQyMGQxYzgwIGxlZ2FjeS10cnVuaworMzU5NDUgZDFhOTg3NGMwOWI2OTRkYWMwYmM4N2ZiMGFiMDY1ZTFmNjkyNjZhZiByZWxlYXNlMjMtbWFpbnQKKzM1OTQ2IGI5ZWRkMzQxOGEzMWQ5MTY0OGQzZWFmYTRlN2NhZjQ2ZjJjMmUxNGYgbGVnYWN5LXRydW5rCiszNTk0NyBiMTY2NGE4MDM0OGFkYWY4YWQxYjBlZjAwYWNlN2VhMThhMDk2ZWI2IGxlZ2FjeS10cnVuaworMzU5NDggYmRhMDY2Yzk2ZTRmMWEyMzhkM2IxZmJkZmViY2EwNjE3M2QzNTI4YSBsZWdhY3ktdHJ1bmsKKzM1OTQ5IGI1ZTQwZjVkMDAwYjZhNzMwYjBkMTA1ZjBlZDQ3NDA1MjE0OTk1ZmEgbGVnYWN5LXRydW5rCiszNTk1MCBhZmY2OWY4MGY5OTgyNTQ5MzRmZTk1MGJkZDliNjVjZDcxYTgzMjJjIGxlZ2FjeS10cnVuaworMzU5NTEgYjVhMWUzNjczZTViZTE1OTE0NmM1MTUwZTkzZDRmY2EzNGRhNzVkMCBsZWdhY3ktdHJ1bmsKKzM1OTUyIDllNGQxNDViYjVjYzQ2NDE0NGY2OTQ1ZDUxMzVlMDExMTFlZDUyYmEgbGVnYWN5LXRydW5rCiszNTk1MyAyNzdkNDgzZjU5Njg5NjJkYjFkY2JhNmFkYTg0ZGVhYTkyYjk3YjQ5IGxlZ2FjeS10cnVuaworMzU5NTQgYjU4ZDMwZjExNmUyYTgyNGNlMzc2NzA0YWE3MzM2NDMzMjM3MTcyMiBsZWdhY3ktdHJ1bmsKKzM1OTU1IDMxYmRiZWM4ZjI4MmMwNmIxZjJiM2Q5YmJlOGQxNDg1N2ZkNmIzZTEgbGVnYWN5LXRydW5rCiszNTk1NiA0ZTViOTc4ZTZiNzgwMzZkMTFkNjE3MWZkNjVjYTYyM2FhM2U1ZDlhIGxlZ2FjeS10cnVuaworMzU5NTcgYzFjZmM1ZTQ4MzRkMTkzZTc1YTI1MGNiMmRhZTlmZmU2NDQ5Y2ZjZiBsZWdhY3ktdHJ1bmsKKzM1OTU4IGUwODAzNDA3ZTM3NzRlNzNjMTU2YmU5OTU5NGNiNzM2NTczNWQ0MWIgbGVnYWN5LXRydW5rCiszNTk1OSBjMzk1MjdlMjgwMTBmYzFlZjcxYjg3MTJmZmZmMTVlNzM1N2MwNGYyIGxlZ2FjeS10cnVuaworMzU5NjAgYjA1NmJiYjRlZGY5OTRkYjA3YjM2NjQ2YThmNmJlMzQ5ZWNlMjVkOCBsZWdhY3ktdHJ1bmsKKzM1OTYxIDg5OWExZjg4Y2M1ZjI0MmU4Y2M0YzgwOWU0NGYxYTM5NzM5MWY1MWMgbGVnYWN5LXRydW5rCiszNTk2MiAzMDRhMzdjMmNiNDI1N2I2ZWQzZTE3YmJkOTA5ZmQzMjcxMGU4MWJhIGxlZ2FjeS10cnVuaworMzU5NjMgYWEyMzMwNmEzZjI2OTk2YTFlYTdjMTkzOWU5YWU1ZjAzYTBlMjQ5OSByZWxlYXNlMjMtbWFpbnQKKzM1OTY0IGNlM2MyNzc3YjIyMmZmNTlhYjdjMTAwZDgwNjYxMTE2YTI1OTk4ZDAgcmVsZWFzZTIzLW1haW50CiszNTk2NSAzN2NhYzA2OGYwM2ZkNDZlMDFkZTlmODZhNzhmMDVmZDQzMDE5ZTg2IHJlbGVhc2UyMy1tYWludAorMzU5NjYgNTlhYTUzNDU4YTkzYjYyNGIwZGQ2YzU0YzYxZjk4MmIwY2Y5YjBjYiByZWxlYXNlMjMtbWFpbnQKKzM1OTY3IGExMDRhYTU0OWEwMjJhMDZlMjM5YjIxODdmZWRkNzBkODc4YTcxYzMgcmVsZWFzZTIzLW1haW50CiszNTk2OCA1Y2IyNGRiOGZjOTViMzU5YzYyMjVhY2U5MWIwYzI2MmNkMzc0MzRmIGxlZ2FjeS10cnVuaworMzU5NjkgYmFlZGY1ZmZiMjZiNGQyYjUwNjM1MWYyNzBlZjIyMDgxNWE5N2IyOSBsZWdhY3ktdHJ1bmsKKzM1OTcwIDA5MmFjMTNhNGM0MGEyZmEyZDExMjUwNzE1ODg1YzI2MDkxM2FiYjggbGVnYWN5LXRydW5rCiszNTk3MSA2NWY5YWQ5YmM4MjlkYzhiNThlZmViODU1ZWE1NDc5Njk1ZTlmMjhiIGxlZ2FjeS10cnVuaworMzU5NzIgMGFmYTgxZGI0Y2I3ZDI0ZmYyZDk5YWY5M2VkNTc5Mjc1YThmOTBiMSByZWxlYXNlMjMtbWFpbnQKKzM1OTczIDI2Njg4NGIwNDhiZDEyN2NkMzk0MGEwYTlmZjhkZWY4M2M1MTMxMmEgcmVsZWFzZTIzLW1haW50CiszNTk3MyBhNzRmOTA4MWM2OTcwODc4Y2FiZTE1MWY5Njk2MTc1ODc5MTU0MDBjIHJlbGVhc2UyMy1tYWludAorMzU5NzUgODUzNjU5OGNmMDRkNjM2OWQzNWQxZTZjZDRkMmMxZTAyODAxZWNlYiBsZWdhY3ktdHJ1bmsKKzM1OTc2IGVmYjg0ZWQ3Mzc3ZGRkNmMzOTVkNGYwYzAxNzVmNzM1MzVjNzRhYjMgbGVnYWN5LXRydW5rCiszNTk3NyA1NmE0ZWMwNjY2MjFkYTM5MDQwYzI3NzcwZWMwMTc5NWYxOGNmYTE3IGxlZ2FjeS10cnVuaworMzU5NzggMjg2MmJmOWVmOTEzZWYwNWIzOTIzOThiMjc3ZGI1NjFlYTQ2NDU1OCBsZWdhY3ktdHJ1bmsKKzM1OTc5IDY3OWU1YzhlZmZhZTIxMTJjYThhNDgzNzYwODdiZTNlYjFjNmVhOWMgbGVnYWN5LXRydW5rCiszNTk4MCAyYzE2OWNhNWZhNjliODQ5YWQzZGZlNDUxMWIxNmZkMTU3NGE4NWZhIGxlZ2FjeS10cnVuaworMzU5ODEgYWVjOWM5OGE0N2QyZTk1MzY2MjRmODdlMmQ4YmUxNzU0YmY0MDYwZSBsZWdhY3ktdHJ1bmsKKzM1OTgyIGM2NTg1NWM1ZDU2YjFkMTQ3MWI2ZmRjZGYyOWY5NTQ1OGYxZmQyMjIgbGVnYWN5LXRydW5rCiszNTk4MyBlNTMxNjIyNTJmYmU1Mzc4YTUwZTZlZWE1YTcyODc2NDQ3NDhjYTJlIGxlZ2FjeS10cnVuaworMzU5ODQgZmFkNTJmZmQ4ODkyNDNiYTFkMGM1YTFkYTM3NDY5Y2UxY2ZlMGQzMiBsZWdhY3ktdHJ1bmsKKzM1OTg1IDE4ZDZhOGY5OTgyMzg2MTRhZThmNTg2ZmYwYTI2MTJjYzUwZmM0N2UgbGVnYWN5LXRydW5rCiszNTk4NiA0NDgyOGNjMTM2ZTBjMGJkNWRmMmU1NGNmZTI1MTA3ZjAyMWU5MTkxIGxlZ2FjeS10cnVuaworMzU5ODcgZjlkNTRlOWIzMGJjODE5ZjY1MzFlZTFkMTE3YjgzODFkNWM1MzI4ZCBsZWdhY3ktdHJ1bmsKKzM1OTg4IGQwODdhOTVlODAzMjMxOTAyYjI4YzEwZTBlMjBiNGEyZTczZGRiZjUgcmVsZWFzZTIzLW1haW50CiszNTk4OSA2MGVmMWRiMTBjZWZiYjA4MjExNjY0YjgwYzI5NGQyNzUwNjk1NjY2IGxlZ2FjeS10cnVuaworMzU5OTAgZjhmZmEzZTZjNGYyZGQ4ZDAwNzQzNzRlYTMxYTU1OGY1ZDFjOWQ1ZSBsZWdhY3ktdHJ1bmsKKzM1OTkxIGFjYTQ0NWE2YmViNzkxYTdhNTMyZmE2YTZmMzMwNzRjOTFkNDZmOTMgbGVnYWN5LXRydW5rCiszNTk5MiA5N2I5MDhhOTk3MWE2NGYwZDFjYjEzZDFlZWVmNzBkMTg4OTVjMjM5IGxlZ2FjeS10cnVuaworMzU5OTMgNzQ3YjJkYzgyNDRmZWEzMWRiMzkxNzk3ZDY5YTY2YTE4ODZkYzk2OSBsZWdhY3ktdHJ1bmsKKzM1OTk0IGM3OWJlZmIzYzMxNGQ1ZjVhZTFjMjdkYTYzMjgxMzhhNjI1MmQ2ZTIgcmVsZWFzZTIzLW1haW50CiszNTk5NSBlMmI4MWYyYzhhNzBkYTI1ZTc5YTIzMDEzNDkzOGYwNDgwN2I0ODU2IHJlbGVhc2UyMy1tYWludAorMzU5OTYgOGVlNWE1NmI4MDMxMmJjY2EyZDViZjFiMzQ0YTcyNTQyZmQ2YmU1OSBsZWdhY3ktdHJ1bmsKKzM1OTk3IGViYTZiYWVlYTRlYWFmODliOThhODJlMTcwNGI3OTE5NDUyMWZkMzQgbGVnYWN5LXRydW5rCiszNTk5OCBkMzYxYzEzNWZhNzRlOGQ4ZmY1MzBkNWJhZjQ4MGI2NDk5ODBiZDI1IGxlZ2FjeS10cnVuaworMzU5OTkgMDQxZjg5Yzk4YzM1YmVlOTAxZTM4ZmM0ZTA2Y2IwNmI2Zjc3NTFkMiBsZWdhY3ktdHJ1bmsKKzM2MDAwIDI3NWE3N2Y5YTUwMDY2NDM0MTQ1Y2RkOGViN2Y5Y2RhZjU2MjZiYmYgbGVnYWN5LXRydW5rCiszNjAwMSA1OWJiM2IxZDYwNTlkMzI2MDM4NGQ1NGNhNTY2NGJkY2VlYTNlYjE3IGxlZ2FjeS10cnVuaworMzYwMDIgZjNkMDU2OGM5NDMyZjBiYWFlOGY0YzFlNTZhOGM5MjBhZDdiNWY2MCByZWxlYXNlMjMtbWFpbnQKKzM2MDAzIDIyNjYyNTg5YzRlMjA5ODljMmYwMGQ1ODNmYmJhZmQyZDNhYjQyMTcgbGVnYWN5LXRydW5rCiszNjAwNCBhNzk5YjBkMWM1Njg3ZTg2OTlkNjdmZmRlMzg0ZjQzYjNkYmE1ZWJmIGxlZ2FjeS10cnVuaworMzYwMDUgZjE1OWIxNWYxZjVjYmFmZWY4OTlmYzViNDNkMWM4ZGYxMzk5ZWM1ZiByZWxlYXNlMjMtbWFpbnQKKzM2MDA2IDdjNDYxYWVlNzQxYmVhMWI2NTZjOWYxNTkyMzVjNTg0MWQ4YjQwOTMgbGVnYWN5LXRydW5rCiszNjAwNyBhYTM5ZmFjMmE5ZmRmOWZhN2EwZTRmOGMxM2YwYWIzNmIwNDI4ZjM2IHJlbGVhc2UyMy1tYWludAorMzYwMDggZGY5YmQxMjc3MzBhZGM5ZTgyYjY3OGNiYTkyNjgwM2UwMmNlZTViMyBsZWdhY3ktdHJ1bmsKKzM2MDA5IDczMGEwM2Y1ZDhiNGRlMmQyMDRkZjcxNDFiY2E2NTRkY2YzMWU4OGYgcmVsZWFzZTIzLW1haW50CiszNjAxMCBjN2Q5YmU3M2M3ZGRiMzM1YTg1ZjQ5Mzk5OGFiMGJiZGEzZWNmMzEyIGxlZ2FjeS10cnVuaworMzYwMTEgMTg1ZjVkNmEzYTg4YTlhMTNhNTdmYjIyM2MyYWM1NWE4ZTQ0OGIwNyBsZWdhY3ktdHJ1bmsKKzM2MDEyIDAzYzg5NTgzOTk3OWMzZGNmYTMxMmZkMjk1ZmYwMjRkOTc3NWNlMTQgcmVsZWFzZTIzLW1haW50CiszNjAxMyBhYjVjMDgyNTdhZDdiNGU3NzljNWQyMmE1NDhjNmM5NDAxY2ZiYmQ1IGxlZ2FjeS10cnVuaworMzYwMTQgYjNjOTgxZWU5YWU5NTU4MWZhNjYwMmU0ZjYzZmQwM2RmMzYzZDc1MSByZWxlYXNlMjMtbWFpbnQKKzM2MDE1IGQzYWFkMzc3YTVhOTBkOWZmMGJhOGMxMzVhOTA0MzFhNGUyYTRiYmIgbGVnYWN5LXRydW5rCiszNjAxNiA4ODA3MWQyMDhiMzRhYTRlYzQzMmJkYTQzZTIwZGYwYzUzZjQzNzZkIGxlZ2FjeS10cnVuaworMzYwMTcgYWI1MTlkZTE3NmJiOTQ4ZjQ1NWM5MTAyZWQwMGYxN2RkN2Q3MDY3ZiBsZWdhY3ktdHJ1bmsKKzM2MDE4IDNhODRlMjNiMDQyZjQ1ZTA1Yzc4YzgzMmI2YWUyYmRkNTRkMGRkNWEgbGVnYWN5LXRydW5rCiszNjAxOSA2ZjI2NWYyY2NiMzNjYWI3ZTNmMzNlMjcxNjQ0YmFkZTYxMzY0YzkyIGxlZ2FjeS10cnVuaworMzYwMjAgNjgyMjAyNmQzYzNiNDE5YThiZGQxMzc2NzYxOTcwYTZkMDhhMTA5MSBsZWdhY3ktdHJ1bmsKKzM2MDIxIDIyZmRhZTdiYmExYWY3MDUxMTIyZjkzY2JhY2M0NzJlZWNhYTk5MzYgbGVnYWN5LXRydW5rCiszNjAyMiBlNjIxZTJhMWFiMzEwMmQzZDczMjAyMTBjYzQ0OTBiNTdiYzFjMWFkIGxlZ2FjeS10cnVuaworMzYwMjMgZTViMDQ3NzY1Mjg1YjM3Mjg1YjczNTY4ODExNDM4MGVjODM0NjdlNiBsZWdhY3ktdHJ1bmsKKzM2MDI0IGFiZDRiNzk1NTFkMmVhOTFmYTliYTkxOGYxNGI2YjdhYWYyZDFkMjAgbGVnYWN5LXRydW5rCiszNjAyNSA5YTM5MDFiZjYyMjJmOTkxOWMyMDZhNmM5OTdlNzgyZTVjMjAxNmM0IGxlZ2FjeS10cnVuaworMzYwMjYgNmZmZGRhNGNjMjIyMTViYzM2YmExZjhiOGFmYTE0YjA2MDE1ZGU3YSBsZWdhY3ktdHJ1bmsKKzM2MDI3IDVkOTQyYmVkZDI4ZjkzYjZiM2IyMjlmMGNmMWQxZDY3NWI1NDY1ZmYgbGVnYWN5LXRydW5rCiszNjAyOCBiOWQzYWEzY2RlOGE1YzFhNDAzN2JjMjYzYjJlZTY3Y2VlODczNjBjIHJlbGVhc2UyMy1tYWludAorMzYwMjkgMzc3MWVhOWE5M2FhZGE3MmVkMDA5ZTRmNmRhOTJmNjFiZTMzYjA5OSByZWxlYXNlMjMtbWFpbnQKKzM2MDMwIDg0ZThmZTkxMjQ0MGQ0YjFiOTc0YmY0NGJiZjc1NjY1Mzk3NDRmMGEgcmVsZWFzZTIzLW1haW50CiszNjAzMSBlYjQxYTQ4OWNjMmY3OGQxZDQxMjI3Y2ZkZmExOWUyY2VlMWE5Y2Q2IGxlZ2FjeS10cnVuaworMzYwMzIgMDEwNTdlNGYwYTYyZDBkMWZlZGU2YzJlYzI5Y2YwMTQ5ZjhlN2M5MSBsZWdhY3ktdHJ1bmsKKzM2MDMzIGViMGY4NzI2OGQ3MGFlMWIyODc2NjAzNjcyYWYyOTExOWM1NmNhNDggbGVnYWN5LXRydW5rCiszNjAzNCA3MGRlZTJiMTkzZjdkNTMxMTY1NjQ1YWQ2ZGNmNDljZTI2MGFhYjNlIGxlZ2FjeS10cnVuaworMzYwMzUgNjQ3OGViNmFlM2MwMWU4NDY5MWQ5NTRhOTQxMTljZDIxYjZmZTQ3NCBsZWdhY3ktdHJ1bmsKKzM2MDM2IGIwMGIyNmNiYzMwM2FmZTFhMWY3MmFiNjkzZjJjNDliMTBlYWNhZWYgcmVsZWFzZTIzLW1haW50CiszNjAzNyBjMDg2MzY2NDc5YjFlMDBiNmQxMGVlYzFmZTU4ODkxYzE4NTYyMmY4IGxlZ2FjeS10cnVuaworMzYwMzggOTFlYWUxZTkyNTc4MWI1NGMyMzVkMmQzNDFkNDUzOTc4YzIwOTBmMiBsZWdhY3ktdHJ1bmsKKzM2MDM5IGZkZjc1ZWVmNmE1YzMzYThmZjJhYzdiYWFmNGViMDRlMzY1MmIwOTAgbGVnYWN5LXRydW5rCiszNjA0MCAyY2M3ZmY0MmI5YTNkMTE2MjgzOTY5ZmQ2YzUwZTJmYTU4ZjEyNWI2IGxlZ2FjeS10cnVuaworMzYwNDEgM2MyMTU4ODc2MTk0YTFhY2NhMmMyZDYyNmQ5NWRkYTdkMTU5YTRkNCByZWxlYXNlMjMtbWFpbnQKKzM2MDQyIGVkMjI4ZThhMTM5ZmI5MDg5N2NiMWY5ZDc4ZDM3Yjc5OTZkYjM5ZjUgbGVnYWN5LXRydW5rCiszNjA0MyBlZmNhNTFlZjc4OWRhZjVhNGNhMGRmZWY0MTVjMzQ5NWIyOTcwZTM1IGxlZ2FjeS10cnVuaworMzYwNDQgYjEwODdlMWQ0NDc5NjNhY2ViOTk3MzE0NmU4N2FjYWMyMGRlN2Q5NyByZWxlYXNlMjMtbWFpbnQKKzM2MDQ1IGZmNjhkNmE1YTQ0MWY2YmQyZjU5NTMzNTdjNDMzNzk1ZjAyMzUzNTIgbGVnYWN5LXRydW5rCiszNjA0NiAxOTU0YjdlZGJmZTcwMDAzNmViNmY1NDNmMWQxMzdhMWJjYzgxOGI5IGxlZ2FjeS10cnVuaworMzYwNDcgOTk0MjQ2MDRkMzZhMzc3ZDI5MWRkMTE3OTg3Yjg2NmU0YTk1MjMwYSBsZWdhY3ktdHJ1bmsKKzM2MDQ4IGI3OTFmNjU1NGQyOGYyZWVhY2QyZDFmMDNkNTA2ZWM5ZWU5YzNjOGIgbGVnYWN5LXRydW5rCiszNjA0OSAzYmZlMmY0MmI4ZjkzODNkNjA1YWZhNTRlYTg1YmVlOThmN2YzNzI0IHJlbGVhc2UyMy1tYWludAorMzYwNTAgMjc5NjdmYmJhNDhmMzFkNGE4MjU0Yjg2MDAwMjFkZmFmNjc0ZTdkYSBsZWdhY3ktdHJ1bmsKKzM2MDUxIDZmYzg4MjdjNDAzYzE2MzQxOGIwZWI0ODgzYzMyMjFlOThjOWMxN2YgcmVsZWFzZTIzLW1haW50CiszNjA1MiA1MjVhYmM2NmJjYzI4YzBmYjk0MzJjOWJlOGIzNDc5N2Y0YTY0OGIyIGxlZ2FjeS10cnVuaworMzYwNTMgMDkwMTJjNmIyMDY4MDVjM2YzNWM0Nzk4ZDlhY2ZmNDA2YzVhYmYxZiBsZWdhY3ktdHJ1bmsKKzM2MDU0IGVkMzc0NmRhZDcwNWEyYjk2NmU1M2JhZWIxYTc1NmNmZjFkODdiNDEgbGVnYWN5LXRydW5rCiszNjA1NSA2YzI4YWQ4MDQ3ZjJkZmJhOTE4ZWUzZTRjNWVlNDcyZWFkYmJiYjNiIHJlbGVhc2UyMy1tYWludAorMzYwNTYgOGM0MDc5MDYxNzA4NThjNWU3NWFkYjk1NWQxYmNiNjE0MDVlOTRmNiBsZWdhY3ktdHJ1bmsKKzM2MDU3IGQyNDRiNTNlY2ZiZWJlMGM1ZTZlNzBlY2I5ZDNiOTc3ODBhYzA1MzcgcmVsZWFzZTIzLW1haW50CiszNjA1OCA5Njg5ZGEwMDExOTdmYTllZWU4YjRiYzVkOTdkMTFhMTk2YzFiZTQyIGxlZ2FjeS10cnVuaworMzYwNTkgZThiNGY1NGY3ZDE5ZWM2NzY4OGI4MDIwNDdmZjcwNDc3NGQ2NzIwNCBsZWdhY3ktdHJ1bmsKKzM2MDYwIDMwMGRiODFlMmU0YWNiZWMyMjFjYTNjMzgwMTA4ZDk3ZTFhYzMxZjggbGVnYWN5LXRydW5rCiszNjA2MSBhNmUwNDg0NzI4MGEyNmRlYTVlNjk4OTQzZTg0Zjk4YmI4OWY4NjkzIGxlZ2FjeS10cnVuaworMzYwNjIgYjkzNDVjMzU1ZjA0YjcxOTc3MzRlMzBlOTI2ZjExNmU0OWU3MjA2MyBsZWdhY3ktdHJ1bmsKKzM2MDYzIDBiZGI0OWE1YThmYTYzMzY1MmM0MDk0ZGI4YjQzNzMwMTIwY2RhNWUgbGVnYWN5LXRydW5rCiszNjA2NCA2OTQ1MjhlODVhMDRkMWZiYTYzZTVlZmY2YWExZTNmNWIzNTc2MzQzIGxlZ2FjeS10cnVuaworMzYwNjUgYzhhMjJiNWNmNThhNThiYWEyYTY4NTQ5NzI1NDJlNGRmYzY0NzIwOCBsZWdhY3ktdHJ1bmsKKzM2MDY2IDNkNjQyNGMwMzg4ODJlZDU5NjJlMjE2YTgxMmJjZGYwNDFhNWIyN2MgcmVsZWFzZTIzLW1haW50CiszNjA2NyA3MGNmZTA2NWVhYzU5MjY0NmEyYWViYmEzMjViM2RjMjI4NjA5M2M0IGxlZ2FjeS10cnVuaworMzYwNjggYTk4ZjUwZTUwYmVmYTFlNTJiMDUzMDFlZmQzNGE4M2M3ZDJmZjc5NyBsZWdhY3ktdHJ1bmsKKzM2MDY5IGRmNDk0M2QyNGNiNmRkZGU0NzcyMDY2Y2NmMzhiYmZjOTA4YWExZDUgbGVnYWN5LXRydW5rCiszNjA3MCA3NDA5YzBjMzcwZTIxMzI1OGRmODNjNjVkMGFkODllZmMyNjk4NjMyIGxlZ2FjeS10cnVuaworMzYwNzEgZWZjYTM1M2U3ZmQ2NzVmNzExNzhhZDhjMTE2YWQyZjk4MThjNzlhNiByZWxlYXNlMjMtbWFpbnQKKzM2MDcyIDI5Zjg3OTMyYzdjNzhiY2EzNjdiYjc1N2E5NTQ1YTU5NDNiYjc2Y2UgcmVsZWFzZTIzLW1haW50CiszNjA3MyBhNzJiYzQyNTczMzY1MWViNjE0OTVlZTM1ZWNmMjRiMmZmN2JjOGUwIGxlZ2FjeS10cnVuaworMzYwNzQgZWM2ZjlhMTkwODMxOTMxY2ZhZGQ1NTczOTY0ZDgzODEwMDlkNDVkYSBsZWdhY3ktdHJ1bmsKKzM2MDc1IDEwYTAxY2UzZWEwYWUwMWRjMzU1ZjI3ZWZlMTFjZmIyOTI3NjcxYTcgcmVsZWFzZTIzLW1haW50CiszNjA3NiAzNjM0NDE4YTg1OGU4MjczYjRhMDBhZjc1OWZkMzhhMzkyNDU3YzdkIGxlZ2FjeS10cnVuaworMzYwNzcgMmY1ZjM4ZjRiYzJiOTAwODliOTU2NzM5YWYxODZkMTA5YzUxNjhkMSBsZWdhY3ktdHJ1bmsKKzM2MDc4IDhjMDM5NGFlYzZkY2Q0MGZkYzNlODEzYWE4YWVmMDU1ZDY2NWM0YjcgbGVnYWN5LXRydW5rCiszNjA3OSAzZGZlODFhYzBlN2NkMGRmNGUyMzNmYmQxNGIxYTZiYjdjMzljYmI2IGxlZ2FjeS10cnVuaworMzYwODAgYTgwZWUyMDA0ZTZjYTQ5MmIwYjlhMmVlOGU0YzkzOTQ5N2QwOTY1MiBsZWdhY3ktdHJ1bmsKKzM2MDgxIGNkYWQwMDViYzAzMDc3NWZlZjdiYWM2NzNjMzkyZDY1Njk0MzZjZTggbGVnYWN5LXRydW5rCiszNjA4MiBjYjk1N2U2NWY0NDQ5Yjg2OThiNDk0MGRlZGI2YTYyMDdiMGU0YzIyIHJlbGVhc2UyMy1tYWludAorMzYwODMgMzY3OThmMWM4ZTlhMWE2NmZkZDc3ODA1ZWY5NzZjMWExNDg4MzBmOCBsZWdhY3ktdHJ1bmsKKzM2MDg0IGI5YzllN2U4YmU3ZDU0ZmI4MWEyMTk1YmE4ODA3NWY1MmNlMjU3MzIgbGVnYWN5LXRydW5rCiszNjA4NSBhYzRkNDIwY2M3OTllNWQyNjZhN2Y0NmE3ZGY1YTc1ZDczNzJmYTgyIHJlbGVhc2UyMy1tYWludAorMzYwODYgYmRmMjM4Nzk4OTQ5OWVkZjA2NzQ5NmQ5MGNlMGZkY2M4MDAwNmEwMSBsZWdhY3ktdHJ1bmsKKzM2MDg3IGE4OWNjNTM1YjRjNTc1NWFhYzg2YmIxZWE0NzUwYTRkNDRjZjBkZGUgbGVnYWN5LXRydW5rCiszNjA4OCBlZWFhN2ZiMmYxNmY3YTBlZDNmYTMyYmVkZjQxYTMzZGJhMGIyZDdmIHJlbGVhc2UyMy1tYWludAorMzYwODkgOGU1OTU4YzkzYzg4MjE1ZDQ1ODc5MmE2YWY1OGUyYTgzZWZkNDMwMSBsZWdhY3ktdHJ1bmsKKzM2MDkwIDhlYWI3NjU1NjAxZmVkMTIxMDAwZGMwZWM0NGFmYzYwYmFiYjEyMjQgbGVnYWN5LXRydW5rCiszNjA5MSA0MmJiMWRjZGYxNmU0MWJkMzMyZTAxZDA3MjZkZjM2MzU3ZDU5YzE1IHJlbGVhc2UyMy1tYWludAorMzYwOTIgNDdkNjRjYjAxODIwNWViZWQ0MWJjOWEyYzVmMjNlYTk2MDgyYWU3YyBsZWdhY3ktdHJ1bmsKKzM2MDkzIDAxNGIwZDg0NDIyZjdiNjMxZTAwM2YyNzlkMDQwMzg5ZTNjZjZiZWUgbGVnYWN5LXRydW5rCiszNjA5NCA5NTI4N2NkZGJjMWVjYTU2Yzk2Y2U3ODAwMWIyZDk5OGU3NzMyYTE0IGxlZ2FjeS10cnVuaworMzYwOTUgNjFhZjQ3MjEzZmU2Njc0YzgzNjI2NzE5OGRhNmZlNDM0YzJjMDM1MyBsZWdhY3ktdHJ1bmsKKzM2MDk2IDFlZWFhNTA5M2ZjMDQxMTE2MDQwMmE3ZDAwYjQxNTQwYjUxZTRkODggbGVnYWN5LXRydW5rCiszNjA5NyBhZGI1OWQ4OWIwOTkxNjA1NjNhNDg3M2RkOTVjYTk1OWIwNWYxNjI2IHJlbGVhc2UyMy1tYWludAorMzYwOTggN2U3MjczYzhkMjFlYjdiNjc3MzczNmRhMDNiZGJkNDk3MDViYWZlMyByZWxlYXNlMjMtbWFpbnQKKzM2MDk5IGMyYmMyNDhkM2U5YzcwYjU2NWJmNjMwZDI4Njg5NDg5NTFjZWIzNjMgbGVnYWN5LXRydW5rCiszNjEwMCBjMGQxMjYxZGE4NDhkNjFlZGM3MWRkODg2YWQ2Zjg2YjJjNTI2NTE0IGxlZ2FjeS10cnVuaworMzYxMDEgY2JmYTA0Mjg1NTI5MGEyMzgxYzEwMWNmYjJmYmIyZDEyMzYwZGYxZCBsZWdhY3ktdHJ1bmsKKzM2MTAyIGI2MGZjNWVmZjE1NTk0ZDc3NTA0ZDBmZTMwZDczOWVjYzVhYjZmMTkgbGVnYWN5LXRydW5rCiszNjEwMyBmZDUyYjY4MDc5MjQ4Y2IxOTkwNzgzOWU2MTI4NzdkYjNiMDUwOWVjIGxlZ2FjeS10cnVuaworMzYxMDQgNmRiZmVlMmRlZDg5NTZlNmY3OTU2M2ZlZDliYTY1NTM5NGYwZWY4NiBsZWdhY3ktdHJ1bmsKKzM2MTA1IDk0Yjg0MWFkZjQ4NWJjOThhYWU4ZGE0ZjQ0ZDZlZTNmOTg2YzdlYmEgbGVnYWN5LXRydW5rCiszNjEwNiA5MTM4OGM4NDViMTY5NWZlNDYzMGI2NTM4MjU2NGE1MzA3YTgxN2JjIGxlZ2FjeS10cnVuaworMzYxMDcgODgyY2YxMTM3MmEzZTRiZGU0NjY0NTNlNjU5NWQxNGExNmYzODU2MSByZWxlYXNlMjMtbWFpbnQKKzM2MTA4IDg1NGEyNDE3ZDM1ZWI1MThhZGFlYzY2ZTUxMDRlNDRmZGQ0Y2I3ZDggbGVnYWN5LXRydW5rCiszNjEwOSBhMDE4YWUzODZmOTllMWE0OWQxNzRjMTVmNjNiZDFjYzM4NjhjOGRhIGxlZ2FjeS10cnVuaworMzYxMTAgNWM3OWI0ZjEzYjI2ZjgyOTAwZGE5ZWYxODM2NzRmNjlmZmVjZTU3NyBsZWdhY3ktdHJ1bmsKKzM2MTExIDcxYjNkMmJiZTYzYmZhNzg1NDc2OTJiZmU3OGQ4OWRlYTgzOWUyNWIgbGVnYWN5LXRydW5rCiszNjExMiA0MGM1MjRjMWMwZmVmZWE2N2VkZGZlOGU0ZDU3ZDQzZGEwYWE2NjA4IGxlZ2FjeS10cnVuaworMzYxMTMgZTEzNDVjZTI3NWY3OWQ4MzQ3Mjg4NWViZmEyMzlhZDM1NWI0MjY0YiBsZWdhY3ktdHJ1bmsKKzM2MTE0IDZkN2QwMGJmMWFhZTU5NmVmNjY5NWFiMjA1MWZkMmM3NDhkN2NjYmUgcmVsZWFzZTIzLW1haW50CiszNjExNSA4MmZlNjgzMmU1MDVkZWIyNGE3N2I0ZWE0NWJhYjdkZWQyNGRlZDJiIGxlZ2FjeS10cnVuaworMzYxMTYgOGFjZjQyNDFlZTk0ZjVjYzExZjJiZjY2MGRlZjdkNmM2ZDU3MmM1MSBsZWdhY3ktdHJ1bmsKKzM2MTE3IGFhMGM4NGQxZjA2Nzc4NjhmYzdiZDVkZDE5NWYyNmMyOTU5MzYwNDcgcmVsZWFzZTIzLW1haW50CiszNjExOCBjZjg0ZGJjNmE4ODFjN2IzMWMyN2I2MjE3OTkwYjMwNzQwMDdhZjA0IGxlZ2FjeS10cnVuaworMzYxMTkgMjlkNzYxYzUxMDNlNzdiNTExMmJiODBmOGRlMWIzNzk4MWQyOWFlMSBsZWdhY3ktdHJ1bmsKKzM2MTIwIDkyZjU5N2EwNTU4MTVlZTNlYWVjM2EzOWUyNDQyOWYyNjY5ZDgwNzYgcmVsZWFzZTIzLW1haW50CiszNjEyMSBjODRmZDZiZTVhMTRmNDQzNjFhZGZhNGQwYzAzYjMyMjU4ZDFiMDRmIGxlZ2FjeS10cnVuaworMzYxMjIgNDFjNTlkODBiYmM1ZjZmYmNiYjJjMmIzOGJjNmNhNWJhN2MyNzI3YSBsZWdhY3ktdHJ1bmsKKzM2MTIzIGUxOTZiODIzZTZjNWJhZDFmYWFhZWEwODdjOTliZjhlZjNmYzEzOGEgbGVnYWN5LXRydW5rCiszNjEyNCBhMGQ4YjE0NTY4MTkzMTY2Yzg2YTRiMzZkNzg2Mzk2M2I2MDQ5NjhhIGxlZ2FjeS10cnVuaworMzYxMjUgMTZhY2M2MWQzM2MwMmQ2Y2M4NjFlNjM3MjEwYjMwOTJlNmJiNWZjNCBsZWdhY3ktdHJ1bmsKKzM2MTI2IDEzNjU2ZDU4ZDQ1MDE0MDU5NGNmN2RhNzg5NThkYjA4NjliMTJmZTAgbGVnYWN5LXRydW5rCiszNjEyNyBjZWRjOTU0NTk2MzZkNTMyZDc1ZTA1MWFlZTA0MWU1OTEwZWE0ZjFkIGxlZ2FjeS10cnVuaworMzYxMjggZWM4OGYyNzhhMWFkNDk5MDllODg2YjE2MWZmMGJjOGQ3NjU4OGEzNiBsZWdhY3ktdHJ1bmsKKzM2MTI5IDMyMTk3Mzc1MTI4ZTIyNjU4OGMyMzJkMjdmZjVmNDJjZTlkNjU2MTggbGVnYWN5LXRydW5rCiszNjEzMCBmYzZhNzM5MDVlNmYzOGM5ZDQ3YTI5ZWExNTg1ODMxOGM3ZTZmZWNlIGxlZ2FjeS10cnVuaworMzYxMzEgMTkxODg4N2QzODdiMDEwNGUzZjNjM2IzYTc5MzU2ZTk0OTc1YTk1YyByZWxlYXNlMjMtbWFpbnQKKzM2MTMyIGJjZDIxYWJhYTViNGYxNWI4NzhiMTI5N2MyMTcyMDJhN2U5NGFkMjQgcmVsZWFzZTIzLW1haW50CiszNjEzMyA0MzAxZWNiZWIzYWRmYTQxMzZjMDk4MzRjOGY0MTczNGJjZmQ3MTYzIHJlbGVhc2UyMy1tYWludAorMzYxMzQgZmM0NzYyZWJiZTJjZjY3MzQ3MmQ2YmE5YWZkNDA1YjQyYjUzNzdmMyByZWxlYXNlMjMtbWFpbnQKKzM2MTM1IDQzOWU3MWE0ZTU1NDY4NTRjNTRjZjg5Y2I1ZDNhYTJjNzVlYWI4NTAgbGVnYWN5LXRydW5rCiszNjEzNiA0OWU3NDEzY2Q5MWMwZTU4ODYzOWYyNmNlNDg1NTg3MDI1ZWMzZTBhIGxlZ2FjeS10cnVuaworMzYxMzcgOWU1YWY0NWNlZmNiNWY0MTJhYzE2OTdmYzAxNDhjNDIwN2Q4ODBjMyBsZWdhY3ktdHJ1bmsKKzM2MTM4IGQ2OWM4MDY4ZWFlNjFjZWQ4ZTcxNGM1MDNhNzc0MTRkMDA5NDRiMTEgbGVnYWN5LXRydW5rCiszNjEzOSA0MThhMGM2YmRjN2Q0YTBlZGZhNDJkM2IzY2ZkYTk1Yjk4OWQyNTY3IGxlZ2FjeS10cnVuaworMzYxNDAgYjlkZTZiNjY1MjczNmQ2MDE1Y2I3OGFjNzQwMDE4YWRkZTc3NThmZiBsZWdhY3ktdHJ1bmsKKzM2MTQxIDg3MzAyYWMwNzI1NTI0MzUxOTJhNDhiMGJmNWVlMzc0NWZiOTQ1NjIgbGVnYWN5LXRydW5rCiszNjE0MiBiMGY0NTRmNTU4ZTVlYjJmYTZkYzZmMDg0MWY0NTA5YjVjNTEyNmRiIGxlZ2FjeS10cnVuaworMzYxNDMgNTBmM2E1NTBiNGZlNmFlZjMzZmQyYTc3Y2MwMGU1NzNlZjk5OTRhYiBsZWdhY3ktdHJ1bmsKKzM2MTQ0IGMxZmJiYzNlZWQzOWU1ZmVjNjY5NzM1ZmI5ZjNlMjBmMmYzYzQ4ZGQgbGVnYWN5LXRydW5rCiszNjE0NSBiMDU0Y2ZmN2JiODZkNmYxMjdjMDZlMzQwOGQ1MjBjY2MyODg2YzhlIHJlbGVhc2UyMy1tYWludAorMzYxNDYgY2YyOGY0YTZlNjc2MThhNWE3N2ZjZjNmOGM1YzUyM2RmYTY1MTY5YiBsZWdhY3ktdHJ1bmsKKzM2MTQ3IDdhMTk4ZDljOTI2MTJkMjQ0MzU2M2Q1ZDMxYmY1NTIzYWJkZWI5NWYgbGVnYWN5LXRydW5rCiszNjE0OCAzMTUyYjc0N2EyZTQ2MTFiMzNmZmYyNWJkNTE2NWJiYWVkMTdlNzQxIGxlZ2FjeS10cnVuaworMzYxNDkgZjQ5NDcxOTUzNjg5YTNiZjhiNGY2NDZlODUxNDM0NGQ1ZmE2MzQwOSBsZWdhY3ktdHJ1bmsKKzM2MTUwIDZmZWFkNWVhNGJiYTIzNzI2MmYwYjA4NGUxZjZmYWExZTBjODY3MmMgbGVnYWN5LXRydW5rCiszNjE1MSA1NDEzMjdjYjhmOGJmNmI1NTcxNTRjMjhhMjM3NDI1ZDJjZDJjYThiIGxlZ2FjeS10cnVuaworMzYxNTIgMjI1M2E4YzJlYTYyZGM1ZDNmZmU1NzZlODE3NmVkZTYwZWJjYjg1YSBsZWdhY3ktdHJ1bmsKKzM2MTUzIGYwZWI3Nzc4YTE4MzA4M2YwZmVkYThmZjMyNmNjNjE1OTc4YzY1MDMgbGVnYWN5LXRydW5rCiszNjE1NCA2M2U5ZTVhMjE2MGI1ZGM5YmJhZmI5ODM3NGEwMTZkNDg0NDcwYzU0IGxlZ2FjeS10cnVuaworMzYxNTUgNDQ0ZmE1ZDUwYzE0ZDIwZTBhOGUyYmQ3YTZlNTQxMjBjNjExYzcwMyByZWxlYXNlMjMtbWFpbnQKKzM2MTU2IGM3ZGNiMDk3NDVkMzViNDliYmVhYjkxNTdhYmI2ZGQ1NDBjYmM2NDQgbGVnYWN5LXRydW5rCiszNjE1NyA2ZTRmZTU1NjBkODFkNDhhYzQxYzNiMGM4YmQyOTFhOGNhMDFlNDQwIGxlZ2FjeS10cnVuaworMzYxNTggYmM5YWU0NGIyY2U0MWZjM2RiNWY5MjJlZjI5M2JhMzYzZjNjMTdlNiBsZWdhY3ktdHJ1bmsKKzM2MTU5IGE2MjdkOTQ5MzE0OTUzMzk5OWQxZjQ1ZTNhYmFiY2ExNGI5NDFlMDUgbGVnYWN5LXRydW5rCiszNjE2MCA0MDhhNDBlNjUyNDdjZDBhNzcyZTRmOTkzYjU1NjdlMmZkOTg0MWVmIGxlZ2FjeS10cnVuaworMzYxNjEgYzdkYTY5OTBjNGVkOWI4ODdlMzQ3OWMzM2NiNmRmMjYzN2MyYTc4YSBsZWdhY3ktdHJ1bmsKKzM2MTYyIDVkMjcyNjljOWUzM2M2YTI4ZDgzM2ZkNmJiMWYwNjQ3ZjM3NWI2YjYgbGVnYWN5LXRydW5rCiszNjE2MyBjOWRiNzkzY2FhODBhMjU0OTQ4ZGE3OWFkNjE1YjA1YzhlODEzMWVjIGxlZ2FjeS10cnVuaworMzYxNjQgNTRiMjU3ZTU1Zjk5MTUwMTU1OTQ4ZGQzZGZmYmQ0MWY1ODEwY2M0NiBsZWdhY3ktdHJ1bmsKKzM2MTY1IDc0ODEyOWU2ZTEwODJmMzNkZjFlNzhhNWNiNjFmMThjMTM4M2NmN2YgbGVnYWN5LXRydW5rCiszNjE2NiA4YjJkZjlhMDdjZDcwNGRkNmZmNmM3OTU5ZGU3OWQxOTZlOTg4NjljIGxlZ2FjeS10cnVuaworMzYxNjcgMDQxMzAwNWZjMGIyY2NiYjFiY2U4OTg2NzE5ODgxNGY4NjJjMmQ1YyBsZWdhY3ktdHJ1bmsKKzM2MTY4IGU5NTBiZmUxODU2ZTIwZjQyNzEwMzAyOTFkYjU5MGFhOTY3NGQyN2IgbGVnYWN5LXRydW5rCiszNjE2OSA5ZDg2NTViNDc1ZGI0OGQwNDhjM2YxYTllNmFiMmIyMDhkOGFiZDBmIGxlZ2FjeS10cnVuaworMzYxNzAgNDRlOGU4NGYxMjgwODI1MmQ0ZTlhNTE0NjZmMjljM2E3NDBjNmVhYiBsZWdhY3ktdHJ1bmsKKzM2MTcxIDExYzMxYTk4ZGZkNjkwYTg1OTQ1Yjk3ZmRlNjgwMjNiMGM5NGY1MjkgbGVnYWN5LXRydW5rCiszNjE3MiAxM2NlNDQ3ODQ1YmNiZDQ3YmZlYmVkOGJkNmUwMGFiZTI3OTU3N2E0IGxlZ2FjeS10cnVuaworMzYxNzMgMzQ4ZGI3N2EwN2U5MThjOGM1NmI4ZjViMTcwN2VhOWE4NTkwODRkNSBsZWdhY3ktdHJ1bmsKKzM2MTc0IDQwYWNiNjhhZDIyNDc3M2I5Zjg1N2JhMjBhNmM3YWQyM2VmZGQ4N2QgbGVnYWN5LXRydW5rCiszNjE3NSA1ODFhOGExMjhlMTFjYTE1MzY5YTFkMTc2MjFiNTAwNWU5MjliMjM4IGxlZ2FjeS10cnVuaworMzYxNzYgMTJmMjRjYjI3MzgzYzk3MWI3YzAyNjdmMTViNDExMmU3MDA1ZDVjMiBsZWdhY3ktdHJ1bmsKKzM2MTc3IDYxMTgwYzMxZDRiZGIzZWFhNTA1NWRkNDE1ZTM4ZTZhYzMxMWIyM2UgbGVnYWN5LXRydW5rCiszNjE3OCBhNDZiZGU5ZTBjNzRiYjc2MWRjZTY4NDU0Nzk4ZTIyNjgzOWI1YTNlIGxlZ2FjeS10cnVuaworMzYxNzkgNmFiNWUwNTI2YTMyYWJkNDAxNzNlNDUzNzk0YTM4ZTM0YWFkMGE0NCBsZWdhY3ktdHJ1bmsKKzM2MTgwIGU1YmM5NDdjNDRjYWViYzAyOTE3NGJjOGUyYzhjZjA3MWIxZTM5ODkgbGVnYWN5LXRydW5rCiszNjE4MSA4NmY1OTYyZmQ5YjdlYzZjYjc4NDAyZmE3NjA3NDM5MGI2OWMwZDMwIGxlZ2FjeS10cnVuaworMzYxODIgNTViYTUxYmVmMGE4MWEwNDI5NGVlMmUyNjBhMDBmMTcwM2Q3NDNiNiBsZWdhY3ktdHJ1bmsKKzM2MTgzIGE3ZDZmYzE3ZjI1NzU1Mjc2Mjk0NWJjMjUwZWRmYjg3MjhiYzA5M2MgbGVnYWN5LXRydW5rCiszNjE4NCBiOGZjZTIyNThjMjAwNmEzMzliZDJhOTM3MmMyZjFiYWQzYjY2YzhiIGxlZ2FjeS10cnVuaworMzYxODUgZjRhNDgxMGY5ODJlZDVlODU0YWM2M2VkNTYyNTIwM2U1NGY1NGU0ZCBsZWdhY3ktdHJ1bmsKKzM2MTg2IDMzMWU1ZDhiMjk2Zjc2YTNkZGE4OTFmMmU1YWExZGI3NDI2NmMwZmUgbGVnYWN5LXRydW5rCiszNjE4NyA1MDkwNzJjM2ZhMjZiOTJhMjUxZTVmNTQ3YjNiMDI5MzBkMmJmMGZhIGxlZ2FjeS10cnVuaworMzYxODggMWZkM2FhNGJjMTIzYWQxMzE5ZTk3ODM0Yjc0NjQ4ZjNhMDYxY2E4MSBsZWdhY3ktdHJ1bmsKKzM2MTg5IGI5OWE1NTI3MzhiZmFlMzc5MzIzYTI4OGQ3OWM5NTYxNTI3YjVmYWMgcmVsZWFzZTIzLW1haW50CiszNjE5MCAzOTExNzNjNjhiYjNjOTA3N2RmY2FiMmFhNjQ2YmY2ZDljOGU4NTZiIGxlZ2FjeS10cnVuaworMzYxOTEgOTYzZDIzNTU3MDIwZjIyMjk5NTE0MzFjYTU4YjYwZTgyMDcxNDIzOCBsZWdhY3ktdHJ1bmsKKzM2MTkyIDExOTgyZGE5ODc5MmM0NzY3ZjE0ZWNjZjY2MTAzZjUxNzYwMWZiNTAgbGVnYWN5LXRydW5rCiszNjE5MyBlNDNkYTRmOTk5NDE1NjdjM2FiOTA1MGNkODc5ZGNmMzBmMDM5ZTI0IGxlZ2FjeS10cnVuaworMzYxOTQgMGFmNDE1NDNjOWI2NWY3MWYwZGFjODc4NTZlYTk1M2JlOGFjZmFhNCBsZWdhY3ktdHJ1bmsKKzM2MTk1IGY1MzlhOWI5NGY3OTQ1NzQ0NGNiOWJkMWRjYmRkMmRiYjJiNTk5NzAgbGVnYWN5LXRydW5rCiszNjE5NiA2Mzg0MDc4ZTdlZGY5NzZiZWYzYjE0YTlmYTczNTVhYmJjMWZjNDk2IGxlZ2FjeS10cnVuaworMzYxOTcgNDM0ZDNmMmNiODMyODI4ZTFlYWJmYzE4ZjEyYTY4MzAwMTE4OTZlNiBsZWdhY3ktdHJ1bmsKKzM2MTk4IGY3M2E2M2RkMzI4ODU2NzY2ZWExMjZjMTUzM2Q2NTgyZWZlMDkyNWQgbGVnYWN5LXRydW5rCiszNjE5OSBhOWE0YjBkZjUxMmFkNGY5NGRhN2ZkYjY2ZGI2MDRhZTY5ODc5ZGZjIGxlZ2FjeS10cnVuaworMzYyMDAgNWJmYzc1NDNkN2VmYTBmZDAwZTM1NmUwOWI4NzRjOGE1N2VjOWRmYyBsZWdhY3ktdHJ1bmsKKzM2MjAxIGM2YWIwZjg4ODk1YTVjNThlYTUwNjM2YjBlMTJlYjgzOGUyZDk2YTggbGVnYWN5LXRydW5rCiszNjIwMiA3NjMyNzczNzgxMTRjM2QwNWFmZWE0NTJmOWJhNzlmODBlNGZmM2Y2IHJlbGVhc2UyMy1tYWludAorMzYyMDMgY2RlMmZlYWI3ZmUwYWI3MGQyMWM4YjUxNTUzMGFlNmM1ZDc1OGYwNSBsZWdhY3ktdHJ1bmsKKzM2MjA0IDI3ZTcxMmM4ZTFhMzY0OWU1NWE3Yzc2NjlkZTRiODAwNzc3ZjdmOTAgbGVnYWN5LXRydW5rCiszNjIwNSBlYzY0YTZiZTMyZjcxN2RiZGU3ZjMyMmU4NzNlMTg5Y2NkM2UzMjk3IGxlZ2FjeS10cnVuaworMzYyMDYgZDBhNmNlYjg0NjQ2NDcwNmQ2M2FlMDFlNTI2Mjk1NGYwMzIwYTUwYyBsZWdhY3ktdHJ1bmsKKzM2MjA3IDY4NmU1ZDM4YmU0MjFhYmNkODI4NTc4YTU0MjczNWViZjI0NTc0ZmYgbGVnYWN5LXRydW5rCiszNjIwOCAwODE5NTA4YWFlM2FjM2UxNWM3NjU5NjdhMmQ4ODNmMmM4NDI5N2M3IHJlbGVhc2UyMy1tYWludAorMzYyMDkgNWNmNTA3YjY0ZjMxYTBkMDIzZGNjMTNjZGEyM2Y4YzIyZWM2NzM4NCBsZWdhY3ktdHJ1bmsKKzM2MjEwIGY5NTY5NTI2ZThkNDBkMWIxNjgwYzYwNjY4NzRjZGZlMWIxN2ZhMmUgbGVnYWN5LXRydW5rCiszNjIxMSA0YzcxYmNmYWNkZTJmMmEzZTM4MTJjMTZkZjA0ZWNiYzg1Mzg2MGI0IGxlZ2FjeS10cnVuaworMzYyMTIgNmZjMDI5MTVmNjM3YjAyNDRkMjBhNjQ1YzFjZjZiZDlmODYxZjc1NSBsZWdhY3ktdHJ1bmsKKzM2MjEzIDk4ZTQ2MzI3MjEyMDBiMDgwNzc3ZGRiNjg4NjYzODJjZWQ2MGYyZGMgcmVsZWFzZTIzLW1haW50CiszNjIxNCBlNWRmOGM4ZmFhMDk5YmQzMjRhYjlmMTM0M2UwYjE3NThjZmU0NjQ4IGxlZ2FjeS10cnVuaworMzYyMTUgMWQ1ODRjYTU2YjMwNDk1ZjEzOTE2NjY4Zjk2ZWEwMWMzNjc1ZjM3ZCBsZWdhY3ktdHJ1bmsKKzM2MjE2IDZiYzZhYmJhODY1OWVhYTQ5YTI4YzgyYmQyNWJhODUzOGI3MDE3YjkgbGVnYWN5LXRydW5rCiszNjIxNyAyZjc2ZTcyYWQxOTBjYjU5Mzk0YWIxYWU1Yjc2MGEyMDEzMjg1MGFjIGxlZ2FjeS10cnVuaworMzYyMTggNzU4NjFkOGM1ODcxNWEyZGJmMDRlNGIxOGFmYjE1YzI0MDFhNjFlMyBsZWdhY3ktdHJ1bmsKKzM2MjE5IDAxNGQ4N2M3MzIxMDJhN2YxMTY2ODE4OGQxZGMzN2Q2NmNmMGRkOGYgbGVnYWN5LXRydW5rCiszNjIyMCA0NzIwMjNkMGExMGQ2NDI4N2UyNmI5Y2Q2MTI1YTI2MjRkNzNlNTQwIGxlZ2FjeS10cnVuaworMzYyMjEgNmNlNjdmN2IwNDMwYThmZWRjOTA5MDZmYjE0NjE4YzZiMWQ1ZGIxYyBsZWdhY3ktdHJ1bmsKKzM2MjIyIGNkNDdmNjIyMWQ4ZDFmNTYxODI2MGU4YzhiNjU5MTAxYWVhMDFiZWEgbGVnYWN5LXRydW5rCiszNjIyMyAxYzJiYWFlMTQ4MjgyMzk3NzljNjkyNzNjYjBiNjBlNjE3NjgzMmFkIGxlZ2FjeS10cnVuaworMzYyMjQgOGNjZDhlYzYzY2MyMGMyYjRhMjBmOTg5MGNiMjNmOTY4NmE2OTMwNCBsZWdhY3ktdHJ1bmsKKzM2MjI1IDc1ZTVkMWU4YjYxNzFhMmE5ZjdkMmE2ZGU4Y2M3ZDdhMDhjZGNmYjcgbGVnYWN5LXRydW5rCiszNjIyNiA3YjZlZDM1YzU4NTBlNmY1NzAwNWU5OTczNDQ3YWMxZmZhY2ZjZWQ4IGxlZ2FjeS10cnVuaworMzYyMjYgZDk5YjViZWQwMDc4ODRiMjVmMTI3NmUyYmFmYjlhZDA2MWYyYTk1OSByZWxlYXNlMjMtbWFpbnQKKzM2MjI3IGFhZjkyOTVlZDQ1YjAwNmVjNzBjYTFkYzIzZjk1Njk0ZWFmN2Y2OTYgbGVnYWN5LXRydW5rCiszNjIyOCBlMGE3YzQ2MTMxMWIzZGNhZjZmYTM1NmNhOGRlYTEzNDExNDg1NGYxIGxlZ2FjeS10cnVuaworMzYyMjkgNzc5MTNiZTI5NGI5MjExNDY3YjQ1ODM3ZWRhZmMyYmVlYTI2MWE2ZSBsZWdhY3ktdHJ1bmsKKzM2MjMwIDg0NDQ4NDljOTQ0OGVkZWFiNjQ0ZGY1NDRkNmFjM2FiMzM1Mjc5MTAgbGVnYWN5LXRydW5rCiszNjIzMSA4MTAxZThkMjRmMDUyOGM0MTEzMDBhNjQ1NzM2ZDU3YjcwZTNiZWY0IHJlbGVhc2UyMy1tYWludAorMzYyMzIgMzkzYzE1YzBjNWE0OGY2NWViNGExY2U0NTYzNzQ5ZWZlMDkxN2QxOCBsZWdhY3ktdHJ1bmsKKzM2MjMzIGQ3MTEwYmI2YzEzZGM0MzlmNGFmM2VlMmU2YWJmOWIxOWUyNDkyZDIgbGVnYWN5LXRydW5rCiszNjIzNCBmY2ZiMmQ0MjIwYjBlNTczZTMyN2VkODU3MzBkMGI2ODkzNzFiZjA5IGxlZ2FjeS10cnVuaworMzYyMzUgYjFlNzFiMzkyNzk5YWE1NzE0ZDQ3ZTA2ODA2ZjU2NmJiOGMyNmUyNSBsZWdhY3ktdHJ1bmsKKzM2MjM2IDk1MGNmNjljNjliNjFkYzNlN2ZiM2Q2Y2I1ZWVhZjAwNjE3ZDZjYzcgbGVnYWN5LXRydW5rCiszNjIzNyAyN2UyMmY2YmQzYWU3NzJmZWE0ZmU3OTI0MWI3Y2RhYTI5MWMyYWE0IGxlZ2FjeS10cnVuaworMzYyMzggMjU1YTcxZjJkMjE1YThmNzBjMWQ1ZGI3YTc5ZmEyYjdjMGZkZDk5MCBsZWdhY3ktdHJ1bmsKKzM2MjM5IDg0ZTViNTg1ZDIwMWI4ODRhOTVmYzBhNGIyYTlkMjBlYmU1ZGIwM2MgbGVnYWN5LXRydW5rCiszNjI0MCBhNGJjMmZmZDhlNzE2YTkxNDc4NGU3ZDFkOGM1M2FhN2E2Y2EyNGIyIGxlZ2FjeS10cnVuaworMzYyNDEgNDg1ZDJlZjQzNDE5ZDE5MDAxNzBhZWJiZWE5ZDZiNjgyYzVjYjkxNyBsZWdhY3ktdHJ1bmsKKzM2MjQyIDNkZjM2ZTJlNWRkYzExNDlhZjhlYjUyZTIwYmMyMjVkODA2MjM2ZDQgbGVnYWN5LXRydW5rCiszNjI0MyA2NDUzNGZiM2FmY2Q5NDAwYmMzMGNmNzQyMWZlZjgzZTM5MjhkYzMxIGxlZ2FjeS10cnVuaworMzYyNDQgM2RkYzdhMjMxNzZiNjI4MzFkNDBhODM2NGY1ZmI3NzJmYjRmYWNlOCBsZWdhY3ktdHJ1bmsKKzM2MjQ1IGUzNzExODNkMGUxOTBjZTdlMGU3MjRiZjFhZDU4ODc0ZWYwNTkxNzggbGVnYWN5LXRydW5rCiszNjI0NiBmOGQ2MWVkMmYwZDNhMGUxODM2ZTc2NGE2MTU5YzVjMjUzODU4YWRjIGxlZ2FjeS10cnVuaworMzYyNDcgOTE1YjBlODMzYjViZmQyYmEyNWY1MzkyZWE1YTQyYTY2NmQ0ZGIzZCBsZWdhY3ktdHJ1bmsKKzM2MjQ4IDFjNjlmOTA5YzVhNjEzNzhkYTI3ZjAyNjFlNDJiYjAxMzc0NjliZjkgbGVnYWN5LXRydW5rCiszNjI0OSBkOGFiZjU4MmY4OTMwNmVhZTczZTQzZjFhYzQzMzliZjlkZGY1NzcyIGxlZ2FjeS10cnVuaworMzYyNTAgNDhjYTI3YWRhODFlNjVmZDc1NWQwOWFlMjc2YzRhNTAyZjNkNTlmMSBsZWdhY3ktdHJ1bmsKKzM2MjUxIGM3ZDJiMjRlZWZmOTlkNjA2NTE4ZGFiMjlhNjc2MzkwMTk0MTVhYTAgbGVnYWN5LXRydW5rCiszNjI1MiAyMGFkYjdjZTFiMDg1ZjQyMWIyZTNlY2I2OTM5NGEzYjI0OGFjMjY4IGxlZ2FjeS10cnVuaworMzYyNTMgZGE3YzNjNjFkNDBlMDA1MGZiMGFkYWIwZWVlNDIzZWNhZDhiMjMzOCBsZWdhY3ktdHJ1bmsKKzM2MjU0IDVlYzc4ZTJkYzRiZWM5NmVkZTc4MjM4YjU2OTU3ZGUxZWMwM2Q0NDggbGVnYWN5LXRydW5rCiszNjI1NSBmZjZiOTdjZGQ4NjRmNGY1MGJmY2QzMWRlY2IwZmUwM2NkNTIzYjEyIGxlZ2FjeS10cnVuaworMzYyNTYgM2E3ZTM0ZGM2YWUyNmRlOGIxZmQ4YTFmY2FhNmZmMzQ1M2VmYTk5YyByZWxlYXNlMjMtbWFpbnQKKzM2MjU3IGY0N2NlMjMwNGNiYjIzNTkwMzE1MjRhOGI3NWY3YThhNzcxYTQyYzcgbGVnYWN5LXRydW5rCiszNjI1OCAzOGY4ODM0MDNlOWY4Y2I3N2FmMjRlOTBkNDRhNTFlYjNmNjM0YzdkIGxlZ2FjeS10cnVuaworMzYyNTkgNzMzM2JlMDkyZWVjMGNlOTM1ZDg0MDcyMDViMTc2NTU5NTVjMjI3NiBsZWdhY3ktdHJ1bmsKKzM2MjYwIGVlMzg4OTZlMGQyNDE3M2UwNWRiYWJiMGM1NzVjYzhiNjcxYmM0YzQgbGVnYWN5LXRydW5rCiszNjI2MSA1M2YyNzRmMDJmNjk4MDU5ZGNmM2FhODBmZTI2MGQxZDk4MzczYTA2IGxlZ2FjeS10cnVuaworMzYyNjIgMWVkYzA2ODcyMTNmZTNmZGM0MTgzNWI2OWRmNGZmNWIwYWM4MTZmYSBsZWdhY3ktdHJ1bmsKKzM2MjYzIGIxOGY0ODBjMzdhMDc2ODEzY2RlMjZmMTk2ZmNmYzlkNDFlYTIwZTMgbGVnYWN5LXRydW5rCiszNjI2NCBjNTYxNjhmYWJmOGUzM2VkOWIyOWViYzc0MWUwNjM2MmNiYzJkMzNmIGxlZ2FjeS10cnVuaworMzYyNjUgNWFkY2E1ODE0OWZmNDlkZjA1ZTczY2QxYWRiZjQ1ZjNmYTM1ZjRkYSBsZWdhY3ktdHJ1bmsKKzM2MjY2IDQ2NGM4MDhkMGRjZGEzOGJiODJhMDZlMmY2YjkzZGIyYjU2NjZhZDggbGVnYWN5LXRydW5rCiszNjI2NyA3ZGI0YzU4NmUxZDZjZTI3ZjY3Nzg0ZTdiMTU2OTFjODlmNGUwY2E2IGxlZ2FjeS10cnVuaworMzYyNjggMjU2YjQ5NmFmNGM0YTA3NWQ2NmY4YzE0YzJmNDJkYjQxMDY3OGQ3MCBsZWdhY3ktdHJ1bmsKKzM2MjY5IGJiMDBlMTJlNzc0MTYwNTc3YTlmMmVlOGQwNTI5Y2JhMmJlZmIxNjMgbGVnYWN5LXRydW5rCiszNjI3MCAwZTI4ZmQ2ZmVhMDBjMmJmYzMyYzE5YjAzNGIwNTExMzgzNzc2MjkxIGxlZ2FjeS10cnVuaworMzYyNzEgZDJjMWM3YWU3Y2Y0MzIzNjViY2VjYTcxMjhiNDE4NTliY2E3MWUxOCBsZWdhY3ktdHJ1bmsKKzM2MjcyIDY3ZmJjMjNkY2ZkZDRiOTI2ZmYyMjQ5ZmZmYjQxODI2MGZlM2M2NzEgbGVnYWN5LXRydW5rCiszNjI3MyAwZjU2ZWFkOTY4MTc2NTUyYjk4MDc5YmMxZDVhNWQ0ZGE1MmMxODI2IGxlZ2FjeS10cnVuaworMzYyNzQgNzMxNTRhYjg1NjNhNWMxMTYwNTZmODFiYjFlN2ZmYTFhMTI1NDExYiBsZWdhY3ktdHJ1bmsKKzM2Mjc1IGQ1MDBmNzJmYjFhY2YxYjkzOGM3MmU0OTI2Y2FmY2ZiZWRkYmY1ZDMgbGVnYWN5LXRydW5rCiszNjI3NiA1MDA2OGIxN2Y0MWVhYTFhYjRmYzk5ODhkOWFiZDRmYzlkNDE2MzVmIGxlZ2FjeS10cnVuaworMzYyNzcgNmMxNjYxMmZiMTE4MzgxNTgwZGFmYTEwZjFlMGYwNjM1ODBlZjFkMSBsZWdhY3ktdHJ1bmsKKzM2Mjc4IGI3M2FiMzA5YWRhN2ZiMmI3YTRmMWUzN2I5YzY4ZmZmOWVmOWE4NmIgbGVnYWN5LXRydW5rCiszNjI3OSA2YjFlYTVjMDdmZjczZWVjNWRiZDM2MGM0NGJmODIwYWY0MGM0MGFlIGxlZ2FjeS10cnVuaworMzYyODAgYzQyM2UwMThhMjllMDNlZjI3NjZhNzkzNGU5ODA1ZTZiMzM3MmNiNCBsZWdhY3ktdHJ1bmsKKzM2MjgxIGUzZjgyZGY1NGM4OGUwODM1YmNiN2NjZGQ0OGU0NmU3ZjkxZDExNzYgbGVnYWN5LXRydW5rCiszNjI4MiAxYjlkYTVmZTkwNTM5NGJlYTJmNTE3YzVkZDVjNmQ1MTA2MmE4MGRhIGxlZ2FjeS10cnVuaworMzYyODMgZDRhNTkyMzBlOTNhOTZhNzFhYjU3ZDI5ZTczMTQyMmJmMDg4NDI5MyBsZWdhY3ktdHJ1bmsKKzM2Mjg0IDc1N2FiMjAwZDQ3YTZiYTdkZjBkZjA2NDRjMDlhOTgyYzRhMzM2OGQgcmVsZWFzZTIzLW1haW50CiszNjI4NSBiNTc0M2U0NDczMDkxMjBjY2MxZjBhZWYyNDQ0MDhiZjk5ZTY1ZGZiIGxlZ2FjeS10cnVuaworMzYyODYgM2M1MDM2YjNlOGU2NzViMzg4NzliMjIwYjJiYzEzNzU3Zjk2ZGQ5NyByZWxlYXNlMjMtbWFpbnQKKzM2Mjg3IGRmMTNmZmI4ZjQ5ODYzN2VkMDZhYTM0YWQyNGE0NzdjNDdmMmRiZmUgcmVsZWFzZTIzLW1haW50CiszNjI4OCAxODkxNmNlNDFjMjYwZjJiZTFhOGMyM2ZmYjA0OTA5MzRhYTQ4YTEzIHJlbGVhc2UyMy1tYWludAorMzYyODkgYjg3MTBlNmQ4ZDc4MGRmOTdjYjNkYjFmMzBhM2Q1NGIzZjIzYmZlOSBsZWdhY3ktdHJ1bmsKKzM2MjkwIDA1ZjEyYmMxZTViMzAyMjM1ZGViOGJlMDA2NmYzY2NkYjA3YTMxOTUgbGVnYWN5LXRydW5rCiszNjI5MSAyZmZjZDgzNjgxN2VhYmM1MDc5NDE2YjcyZGNmZDczNzJmNDQ3MWQ1IGxlZ2FjeS10cnVuaworMzYyOTIgNDM4M2RiNzdiMTlhOWI4MDI1ODg3NDdhYzYxYWNhNzdmMDYzYmEwZCBsZWdhY3ktdHJ1bmsKKzM2MjkzIDE0YjQxNTVkOGIwYTQ1MjEyNGZmN2NmZTc1ZWExNzJiMDM3YjNiZGMgbGVnYWN5LXRydW5rCiszNjI5NCA5ZThmN2RmNGE2ZmU3NjAxMTZkYjE4YTI0M2Y0YjY0OTkwN2JlYjA2IGxlZ2FjeS10cnVuaworMzYyOTUgNzk2Y2NiOTA4MmVmMzU2YzM0OTc4MzQ0YWY2NTY2NWM5YWJiOTdjZCBsZWdhY3ktdHJ1bmsKKzM2Mjk2IGZhNzhhYzU2ODMwOTk4NDQ4YmFlY2QyZTNkNzczYzNjYjYzNjI5MmIgbGVnYWN5LXRydW5rCiszNjI5NyBiYzU4NmRiOTk0NWEwZWMwNGY0OWE3Y2ZlZTJjM2U1YTc0NzQ1MGI5IGxlZ2FjeS10cnVuaworMzYyOTggNTBlODQ0YTRlZWQ5MGY2OGZmZTBlMWZhNDRjNjIyMzYwNmI0MjU1NSBsZWdhY3ktdHJ1bmsKKzM2Mjk5IGZlODBmNzcyYmZhMTI5MjBiYTFmNDZjZjkxMmEyMjE5MjdlZjg4MjQgbGVnYWN5LXRydW5rCiszNjMwMCA3N2RmMWNiNDE1MzMyZTI3NmE5NDczZDE3NzM3MjJjMmE2Nzg4NTAzIGxlZ2FjeS10cnVuaworMzYzMDEgYjgzNWQ1YzYxZDg2NDlmNDRiZmVhYjE0ZGFiNDgyNGE5YjVkNjE0NyBsZWdhY3ktdHJ1bmsKKzM2MzAyIGVjY2QwZmJlMGNkNWMyOGMxMzkyNDJjZTVlMmNkODhmMzQzMmMzNmIgbGVnYWN5LXRydW5rCiszNjMwMyBjNmFjZjI2MWQ2MTQ3OWQxODY4M2MwMWRhNDMwZmI2YzQzOTIxYzRmIHJlbGVhc2UyMy1tYWludAorMzYzMDQgZjNjYjk1Y2Q0MTNmNDlmNDQ0ODU3OTAwMjljNGI5YWRhOTQ3N2FiOSBsZWdhY3ktdHJ1bmsKKzM2MzA1IDAwMmFjNjI1OWMyY2I5ZDIyZmVhM2ZhMDk4MTI5MjY3ODFjMzQ0NGYgbGVnYWN5LXRydW5rCiszNjMwNiA5MWNjZTdiYmEzNzI2OTY0ODU5NWNkMDIwZTg1ZDA5MWYwZjgzNzVhIGxlZ2FjeS10cnVuaworMzYzMDcgZmEyM2E5YjE4OTY3NjE3NmI3MDgzYWYzNTFiY2E2MGZkZjU0YjkxZCBsZWdhY3ktdHJ1bmsKKzM2MzA4IDM5MjNkYzkwZWI4ZWJmNzBhMDUzODNhMWU0OGQ5OThkODY0ZDkwNjMgbGVnYWN5LXRydW5rCiszNjMwOSBhYjBhMmI3NGRkZmQ5NjllYTFmODY0NzgwMGEyZDRhMzEzZDQ3YmZjIGxlZ2FjeS10cnVuaworMzYzMTAgNzlkZjRmODdkNjdlN2FhZmEwZTM3Zjg4M2FhNTRiZDFhMjFmMWRkYSBsZWdhY3ktdHJ1bmsKKzM2MzExIGRiNTAzYTI2M2I0MzNjYmFiOGZjNGM3ZmUyMTBjMDI0YTNlMzA0ZTYgbGVnYWN5LXRydW5rCiszNjMxMiA5OWZkZjgwNzA2YWRhZTZlM2ExYmNhMDc1MDc4NmIyN2ZlN2ExOWNlIGxlZ2FjeS10cnVuaworMzYzMTMgMjAyYWUwNTc4ZWJlYjE1Y2U5OGZkMjQ4YjQ5ODRlZjE1NThlMDNhYyByZWxlYXNlMjMtbWFpbnQKKzM2MzE0IGY1NjUwM2E4ZGJhM2M0MWQwNDZmOWExY2YyMThkYmZkZjVjMjA3NzcgbGVnYWN5LXRydW5rCiszNjMxNSA2Y2ExMjJmMjczNmFiODllMTUxZmIzN2JiZmJkYWVjMDY5ZTRmMTllIGxlZ2FjeS10cnVuaworMzYzMTYgOWM4NzUxOGZhZjZiNmM0ZTc0YWM1ODA0NTU1YjRjNmQxOWU1ZDQyYiBsZWdhY3ktdHJ1bmsKKzM2MzE3IDA1NGVkZTAxZTNkMzA1N2UwNzk0YWEwMTlhNjlhZDFjN2FjZjg0N2MgbGVnYWN5LXRydW5rCiszNjMxOCA1MWViNjdhODU2OGVhMWI1ZTdmMjBjZGY0MWI2ZGFmNDUxMjVlNjIwIGxlZ2FjeS10cnVuaworMzYzMTkgNmZlMmQyNDEwMDhhODI5Yzg2OWFjMzU2YTZhYzNmMTQzMDdhNWU2ZSBsZWdhY3ktdHJ1bmsKKzM2MzIwIGZiYmQ2NzI3NDAxYjYxNjJjMzhiMWFjNWI1ZTdmMTU2ZjkxZGYyZGQgbGVnYWN5LXRydW5rCiszNjMyMSAwZGI2M2E3NjVhNzcwMWU5ZWM3OGY1ZmU4ZjEyMWJjMDUwMTFjMDhiIGxlZ2FjeS10cnVuaworMzYzMjIgZjA0ZjA4MWZmMjMxMTA5ZTExNTRlZjc4MjZlNWUyYjhhODViMTAwNiBsZWdhY3ktdHJ1bmsKKzM2MzIzIDg3NDAxNjU4ZWI0NTcyOTY5OGNkMDhjNDE5OWQ5NzM5Zjc0Yjk3MTQgbGVnYWN5LXRydW5rCiszNjMyNCBjNGVlZmZlYTE5NjAzOGIxN2VlNmU3NzRkMTkzMzM2ZTgwNDhiZjllIGxlZ2FjeS10cnVuaworMzYzMjUgMTkxNzk2YjdhMDU0NTZkNTQ0ZmIyZjA1YTI5NDI0ZjdkNGNiMmFiNyBsZWdhY3ktdHJ1bmsKKzM2MzI2IGY1ZjA0Y2UyNTE2MzU3NjE2ODQ2YWQyMDcyZDIzMGYxN2E5MGIyZWEgbGVnYWN5LXRydW5rCiszNjMyNyA2ODJmNzQwODg2MDI4ZmRlZDFmOTNmY2MzOWYwNDU1OTMyMDg1M2IyIGxlZ2FjeS10cnVuaworMzYzMjggOGU3NjhjM2FmMDE1ZDcxMjk1NzQ1N2IzNDkwMTRhYzI0ZGIzNGYwNiBsZWdhY3ktdHJ1bmsKKzM2MzI5IDNkNjg5ZTcxNWRiMjQ0YTkyNTQ2M2Y1MzZiNGU2Njc4ZDVhODljMmYgbGVnYWN5LXRydW5rCiszNjMzMCA2MWY5MDM0YTEwZjcxZjFkZTlhNjBhYjI4NDM5MjFhOTM3MjM5N2U1IHJlbGVhc2UyMy1tYWludAorMzYzMzEgOGU3YzkxZGU5NDkxOTYxNzIxMDM3OTg3NTlmMmU2Y2VmNzY3NGEyMSBsZWdhY3ktdHJ1bmsKKzM2MzMyIGM0ZWQxNGZhYjEyYTM2Yjc1ZDZkMjEyODM1ZTYyNmNhMTJlMTY1ZDIgbGVnYWN5LXRydW5rCiszNjMzMyBlYzkyOGVkMDFhY2M1NWUyNjkxMGIxNDZjMjdhZjVjYzg3ZWIxOGE0IGxlZ2FjeS10cnVuaworMzYzMzQgYjYxYzQxZDE5Nzc4NzA4OGQ1NDY1ZDhkYjAxNzc0NzA1YzQyNzUxYSBsZWdhY3ktdHJ1bmsKKzM2MzM1IDMyOWVlNDgzMGIwNDEyMTRjYWI5NWZiMGM0ZjhhMGVjZGZhYzM0YzggbGVnYWN5LXRydW5rCiszNjMzNiA0NTQ5ZTc1YTYyNDM0ZTQ4MmIyNTAzMWU2OGFmMjQyZTNiYTQzZGIxIGxlZ2FjeS10cnVuaworMzYzMzcgNWU0MWNiZWMwNDY1M2ZmNTFjMTUzNmQzZjFjNzZhNzc3OWU2M2VlOSBsZWdhY3ktdHJ1bmsKKzM2MzM4IGY1OGNjMzM0ZDE1YzQ2MmM1NjVkNmE4MzM1NzU5MDhmZWNmYzRmM2MgbGVnYWN5LXRydW5rCiszNjMzOSAxMGU3NWVhNTk2MDU0ODMzYWE3ZDk2NjM4NmRiMjg5MTQwNWRkNzM2IHJlbGVhc2UyMy1tYWludAorMzYzNDAgNGJmOGZiMTE4OTRmNGI4MWZhZjc0ZGIwMzYzNTVkYzMxYzgzNGY2ZCBsZWdhY3ktdHJ1bmsKKzM2MzQxIDczN2U4OTJhMmMyY2Y2ODYwNThiYTExYTg4ZWJkMzFhMWY0YWQ5MjIgbGVnYWN5LXRydW5rCiszNjM0MiBjYWZkMTM0ZmMxY2Q0NGI2OTljZTQyYzg4MDZjNDBkODNhYWM3YzU3IGxlZ2FjeS10cnVuaworMzYzNDMgZGE2M2UyZDZlYjhhM2QxZjBlYjM1MmViNGE1OWFlOTZmM2ZhY2IwNCBsZWdhY3ktdHJ1bmsKKzM2MzQ0IDk4N2UzNmFmYjg3OWQyNjY3NzUxZWJhYzI0NDhkZjdiYzRkZDIzZWIgcmVsZWFzZTIzLW1haW50CiszNjM0NSBlYzVkMGU4NzM5NjQxODUyYzgxYzAwN2NiMmRmYzhlOTcxMGU1ZTc4IGxlZ2FjeS10cnVuaworMzYzNDYgNzhiZDI1YjQyZDQ2MzE0MmM4NDBkMDFmMGNjYWMzZWEzYTE2YTllNSBsZWdhY3ktdHJ1bmsKKzM2MzQ3IDBkYTY2MGUwNWU2OTBkY2ExMDhiZjY4MWRiMmNjOTI2N2U4YjU4YWMgbGVnYWN5LXRydW5rCiszNjM0OCA2NzUzOWNmY2YwOWZlOGI1MzRhZTQwZWJkOWZhNmZkMzAxZTZhNGYwIGxlZ2FjeS10cnVuaworMzYzNDkgMjQ3NmE4MzM0Mjg2YjdhMGJmZTEwYWNjY2MzOWU3ZTMyMWYzMTExNSBsZWdhY3ktdHJ1bmsKKzM2MzUwIDI0NTFjOTU3MmVkZjVjMDA5NTIyY2U3MDc0NjJmZmZiOTNhODlkY2IgbGVnYWN5LXRydW5rCiszNjM1MSA4N2QxOTZlMWMyZDAxZDU4ZjA4N2JlYmRiNDQ1NGFkMDdjZjY1MTVkIGxlZ2FjeS10cnVuaworMzYzNTIgOTI4MjBlYTVhZThjYmUxM2RhMGIwMjNlN2FiNmJkMGFiNDdlNzJmZCBsZWdhY3ktdHJ1bmsKKzM2MzUzIDIwMTk4NmQ2ZDlkNjM1MGNmYjJhNjU4Y2RjNmMzOTcyYmRlYzdjNmIgbGVnYWN5LXRydW5rCiszNjM1NCAxNjM0ZjYwMTE4ODg1OTk1OWExNzhhZDc3N2U1OWUzNmNiNGNlOTU4IGxlZ2FjeS10cnVuaworMzYzNTUgMzI0NTVkYjk3MTM1NzZjMjk3ZWI4Y2VjZTViZDMwZTc1NTc4ZjU3MyBsZWdhY3ktdHJ1bmsKKzM2MzU2IDQzYjgwOTgxNWM3ZDc1OWMxY2VkOWM3NjdjYjRjZTczNzEzZTJkYjcgbGVnYWN5LXRydW5rCiszNjM1NyA3ZmQ2Zjg3ZTVkMWZjZWJhMTU4ZmUxZGNmNTQ3YjA5NjViMDMxNDk1IGxlZ2FjeS10cnVuaworMzYzNTggNGZhYjRhNWNjZTJmNWQ0NDBlNGVlNTA1YTk2M2ViYjkyNmMzMTZiZiBsZWdhY3ktdHJ1bmsKKzM2MzYwIDdlNDRmM2E4YjU2ODdjZmE2MTJlMmM0NWM4MTg1MGJjZDc0MTU1MDkgbGVnYWN5LXRydW5rCiszNjM2MSA3YWQ2ODU4N2M5YWNiNjI1MzQ1YWZlNzc4MjBiMzliMTczMzAwMDA4IGxlZ2FjeS10cnVuaworMzYzNjIgNzc1OTcwNGU3ODcyOTI1MWE5NTRkZjcwZDlhNTE1MGM1MTEwNGE0NSBsZWdhY3ktdHJ1bmsKKzM2MzYzIGVjOGU0ZWQyYjE1N2NjOWNiNzMyNTcwMDFkODE3MjJkMjFjNTRlZmYgbGVnYWN5LXRydW5rCiszNjM2NCBjNGQ1NGM0YmE1NTQzZWE4MmNmNTc0NGIxNDU5OWVhNWU1ODk2OWY1IGxlZ2FjeS10cnVuaworMzYzNjUgNDY5M2ZhMTllMjJiZGNhMmJhOTYzNTY0MDhjZjVkODQ3MmRlNWY0OSBsZWdhY3ktdHJ1bmsKKzM2MzY2IGQxZmI0YmQ0ODkzNjA3M2MyODQyYjA3ZTdlODZjNDQyMjk5MGY1ZTAgbGVnYWN5LXRydW5rCiszNjM2NyBkNDI3NDlkYjkzMzkyNTJjYTM3MDc4NjA4ZGY2ODhlYWE5MjczODA3IGxlZ2FjeS10cnVuaworMzYzNjggOTI4OGQ1MjRkNzU3OTk3MjI1YWJhOTY5M2VhNDkzZTVjODBhYjgwYyBsZWdhY3ktdHJ1bmsKKzM2MzY4IDkyY2E2NThmZDQyMDA5NWI2Mjg0YzljZTZlOTA4MmE4MDI4NWVjOWMgbGVnYWN5LXRydW5rCiszNjM3MCBiZTFhMTJkMGI4OTVkMjUxNjkyMDI1YWIzOTQ4ZDdhYTc5YjY0NTVlIGxlZ2FjeS10cnVuaworMzYzNzEgZjNmMTFkODYzYTAyZjYxM2FmN2Q1NzNmNTZkNGIxMjdlMmM4Yzc2NyBsZWdhY3ktdHJ1bmsKKzM2MzcyIGY0NmQ0OWUyZTBmMGIxOGZkOTMyNTlmNjc2YjU1Yzg1NTRkOTcyMTEgbGVnYWN5LXRydW5rCiszNjM3MyAzNzA2YTM3MDRhZWFjMDJhNTJkODY0YTEzNWU0MTNhZDRjMWJjOWY4IGxlZ2FjeS10cnVuaworMzYzNzQgYzA5OWFhNzY3OTUyZDk4YTZkN2EyNjgxZDUzMDE4N2IzNDMwZjExMyBsZWdhY3ktdHJ1bmsKKzM2Mzc1IDc0YzNiNzEzZTM1YTZhZmQ1NTg0N2E3YmVjYzU1NDc1MmU2ZTFkNDcgbGVnYWN5LXRydW5rCiszNjM3NiBkOTA5YTBkZGQxOTMyZGUwZmJiZTIxOTQ0Yjc5ZmYyN2EzYzc5MjIxIGxlZ2FjeS10cnVuaworMzYzNzcgZWMyODU2M2IwNTJlOGZkNmI5ZjRhNzQxNjczMjI0NjNkODQzMWY0ZSBsZWdhY3ktdHJ1bmsKKzM2Mzc4IDAyOWRmZmI2M2Y0YmYxY2FjYjc5NzExM2ViMzAzNDhlZTg4YTMyMDcgbGVnYWN5LXRydW5rCiszNjM3OSA3ZjRiNjZkYzQzNzYyZGE4Y2VmZjc4ZmI2OTE5YTQ1OTc3MzFiNWRmIGxlZ2FjeS10cnVuaworMzYzODAgZWMxYjU2YjQzYWYwNDY1ZDRiZTM3YTU4ZjI2ZWNlNzE0ZjRhMWI0ZSBsZWdhY3ktdHJ1bmsKKzM2MzgxIGU0Yjk2YzNhM2UxMjI5ZGFhNzgzY2ZjZjlkOTMwZWEyNjI2MDUxYjAgbGVnYWN5LXRydW5rCiszNjM4MiA2ZjM1MWIxYmNmNTM0YzhjYWFiMDI0YTFhODQxOWZlMmZkNTI4ZTE0IGxlZ2FjeS10cnVuaworMzYzODMgYTE2MGI5NjY5ZGIxZTMyMGNlMmNhM2ZmZGRhN2VhN2NjZTRjZWI5OSBsZWdhY3ktdHJ1bmsKKzM2Mzg0IDY5YmIyNDFiMDU2Yzk2ZjE1MjQyM2FhY2ViZTQ0ZTUxOTYzYzk1NDUgbGVnYWN5LXRydW5rCiszNjM4NSBjZjEzOGM1NWQ0MWJlNmJjNmVkY2YyYzk3NDNmMzU3ZmE3MzAxZjM1IGxlZ2FjeS10cnVuaworMzYzODYgMTExODY4M2NkNGQxY2Y1YzA1ZjZjN2UwZDBhMTE0NjNmOTZlZjlhNyBsZWdhY3ktdHJ1bmsKKzM2Mzg3IDNhYWRmYzNmYzRlNmZkYjgwN2ZjNmFhNWI3MGNkNTNjMzQ5ZmFkZDQgbGVnYWN5LXRydW5rCiszNjM4OCAwMDY0ZjU1YmFmYTdjOTY4NzMzODk4YjI0ZDkzZGNkNDAwZmRjMDA4IGxlZ2FjeS10cnVuaworMzYzODkgODQ0ZDk5Yzg4OGJiYTE0ZjY1MzA4YjMxNmNkZTY1YmFjNDExM2VhNyBsZWdhY3ktdHJ1bmsKKzM2MzkwIDVjMjVjYTZmZmFmOWU1OTU1NmVhNjc0YWU2YzMwODU1ZTMzNTUzNDMgbGVnYWN5LXRydW5rCiszNjM5MSA3MGIxNTA0ZTE3ZmZjZjZhMGQ5OTcwOWNmZGIzYzMzZDkwNjFmMGQzIGxlZ2FjeS10cnVuaworMzYzOTIgYmVjMGM3NjE4NjI1NDFlNTg5NjVjMDY4NmY1M2M1M2EzMzQ1N2M2YiBsZWdhY3ktdHJ1bmsKKzM2MzkzIDhlYTJjYjFlYzU5ODhkOWEzMTJjMTY0YmE2YjIyMzgyYjRhYjVhNDYgbGVnYWN5LXRydW5rCiszNjM5NCAxNTNjNTE3YmM2ZTk2ZTc0ZmMyMTMxMzBkZDg5OTc5ODc0NzQ5Y2Y0IGxlZ2FjeS10cnVuaworMzYzOTUgMjI4MzIzODk1MjcxZTA0NmU2NzVjMDQ0YzJjMzllZTJmZThjMDYwOCBsZWdhY3ktdHJ1bmsKKzM2Mzk2IDUxMWZmYzYyYjI5OGE3ZjExYjM2MWYxNTM0YWIwOTU2MTUyNmM0N2YgbGVnYWN5LXRydW5rCiszNjM5NyA4M2NiYzAyNWJmYzc0ZTRlMThhODg3MTExODFiODc2YzQ5MzQ2NjAxIGxlZ2FjeS10cnVuaworMzYzOTggZmVmNzkxMWE1NzA1Y2FlZjcwNTkzOGEzNzlmZTE4ZTFmMzFkZjIyZCBsZWdhY3ktdHJ1bmsKKzM2Mzk5IDIxZmQ2ZTYyY2QyNzZiMjcyNzkyNjA3NDc4OTFhOTljNDhmZWIxZTYgbGVnYWN5LXRydW5rCiszNjQwMCA0OTJkYzhiOGU1OGVjMTVlNzE2N2FhMjY3ZGY2Yzk0MzQ5MGY0ZTIwIGxlZ2FjeS10cnVuaworMzY0MDEgMjMwMzk3YmM3ZTMyMDQ2Y2FiNWIwN2Q4NWY0NTQxZDA0ZmMwYzU2ZCBsZWdhY3ktdHJ1bmsKKzM2NDAyIDBkZDQ3M2E4ZTUzYzA5MjI3YTFlOWQ5MTE2YmMxOTllZTNjODVkZGIgbGVnYWN5LXRydW5rCiszNjQwMyA0ZDJmNGEzOWVjNWVkMjc0OTA0YzE3Mjc5ZDMwZmE5ZDNjMjU2MTFiIHJlbGVhc2UyMy1icmFuY2gKKzM2NDA0IDczNjJlMzcyYzg5NzBkMTYzMGY4MmNkYTM1NDZmZDM1YmE2Mzg1Y2MgbGVnYWN5LXRydW5rCiszNjQwNSBmMmYwYzVmZDliNmM5ZDNmMzFmYzE3ZDNlN2JiZTRiMTczYjgxMWZlIGxlZ2FjeS10cnVuaworMzY0MDYgYTY0YmFlNWMzM2I3ZTc2YTA4NDYxYWZlOGQyMjgzYjVjODM4MWU0MiByZWxlYXNlMjMtYnJhbmNoCiszNjQwNyBkZTMyNmQ3ZTc0ZThiODM3OTk4NTExMzhkNzRhMWU2NWFiNzA1ODE2IGxlZ2FjeS10cnVuaworMzY0MDggYTAzYmNhMTY1NGQwYTJmZjgwMzdjZTI5OTM0MmVkZmMxZTIwZmU1ZiBsZWdhY3ktdHJ1bmsKKzM2NDA5IDY3YTg0YTMzZDBmOGMzNDNjMGYyZTAwNTkyZDQ2OWFmYWRiZDYyNjQgbGVnYWN5LXRydW5rCiszNjQxMCA0YmU0YzYzNjczZWIxNWM5MzFiZGFjM2FiNTA0YTcxOTFlZDQwYmY5IGxlZ2FjeS10cnVuaworMzY0MTEgM2U5MjU5NTlmYTAxYWNlZGM2ODc3MzgxNjdkZmVmMzdmMDEwYzQyNSBsZWdhY3ktdHJ1bmsKKzM2NDEyIGM3OGZjZGQwMjQ2NDQ2ZGYxMzM0NWM0ODFkMmYyZWY2Yzg0ODM2ODYgbGVnYWN5LXRydW5rCiszNjQxMyBmM2Y0NzY1ZWZlNjY4MzM4ZTIzZDNjMzUyYTUxY2VjZTk1ZTljMmMwIGxlZ2FjeS10cnVuaworMzY0MTQgNWIyNWM2NDQ2YWViMzNmNzM2NDRkYzlkNGMxZTJiNDg0NTgyMmQwZSBsZWdhY3ktdHJ1bmsKKzM2NDE1IDZkN2FiMGNhZDcyZGUxNmNmYzFkNzkyZjMyNDQ1MGYwNTg4NzJlODkgcmVsZWFzZTIzLW1haW50CiszNjQxNiBmZGI5Mzc3NTEzZTQyYjI5OTU1NGNmZDQyODg1NGE4NTNkYjYxY2Y1IGxlZ2FjeS10cnVuaworMzY0MTcgZjZiNDVkMWNiMGEyYmY2N2IxMWFiNmY2NjE1NmE2MDdmZjNkY2QxOCBsZWdhY3ktdHJ1bmsKKzM2NDE4IGI1MjdjYjFiMmI5ZWI0YWQ5NDY2Yzk4NjY1OTI3ZTUwZjk2YmYwYTIgbGVnYWN5LXRydW5rCiszNjQxOSAxYzVlZDgxZmZhMjM1ZGI4OTBmMjcxODhjMTk5ODI5NjNlNGM4Y2IzIHJlbGVhc2UyMy1tYWludAorMzY0MjAgYzE2YjAzYmExYzIyYmU0MDQzZjQwNTlhYmQ3MTNkZmQxNzYwY2RiYiByZWxlYXNlMjMtbWFpbnQKKzM2NDIxIDkwZDVjZWU3ZTY2ZTQ3YTk0OTgwNmQyZWFhNDk3OGI5NGFmYmY1MDggbGVnYWN5LXRydW5rCiszNjQyMiA1OThhNWNlNjMzMjJmYWUzYWNlNmI0OGUwMTk3ODI2MWE1YWI1MmU1IGxlZ2FjeS10cnVuaworMzY0MjMgNTA3NDVkOTlmYmYxNjA4OGQzZDEyZGZhNmYyNzg3NTI2OWI0MTEyMCBsZWdhY3ktdHJ1bmsKKzM2NDI0IDVlMWY1NWVjMTdkNmM3MTBhMjAzNzZmMzY4NTlhMmYzZjRiOTIwMWMgbGVnYWN5LXRydW5rCiszNjQyNSBhYjk3OWZmOGIwMmFlY2E1NDc5OGFjYzE2NmE1OWM0MTQ1OGE1MTFiIGxlZ2FjeS10cnVuaworMzY0MjYgNzk5YmNkZmYyY2RjMDU2MWI2Mjg2NTUxMmYzODIyOTNjNTg3MWQ5ZCBsZWdhY3ktdHJ1bmsKKzM2NDI3IDA4ZDkwNDYwYWI0ZDYyNDg3MGJhN2FmYWIwY2YyOTQzODdmYmU4YzAgbGVnYWN5LXRydW5rCiszNjQyOCA1N2QyMWM1ZTBlYjhhZjBiMmJhMzU2MjMyNDRjM2Y1NjRlMzc5YzAxIGxlZ2FjeS10cnVuaworMzY0MjkgY2MxZjc0ZDE5ZmNiYjdjYjE5MTZhOGU0NGU2MTVkNGE3ZWMwYjdiOCBsZWdhY3ktdHJ1bmsKKzM2NDMwIGM0MzE2ZGYyZmVkNDY4ODVjMjMzYzVkZDJjOGVhNDE4OTNjZmJkYjIgbGVnYWN5LXRydW5rCiszNjQzMSA2ZTljMTgyOTU4ZjkxNzBmYjI5ZWIzZTk3Mjc2YmUyMjg5YTQ5NjMyIHJlbGVhc2UyMy1tYWludAorMzY0MzIgMmIxMGUyYjVlODFlZjIzZTZhNTdmNzJmOWRlZmY1MWVmZGU1MDc1YiBsZWdhY3ktdHJ1bmsKKzM2NDMzIDRmMjQ4M2FiYjYyM2FmNjQwOGQ4NWRkZWJhNTYxYjk5NjNjNzZhNzIgbGVnYWN5LXRydW5rCiszNjQzNCA4YjMyODhmNjA3ZTFmODI0MDcwY2Q1NzA4OGIxYTNlZGU2M2VhYmM5IGxlZ2FjeS10cnVuaworMzY0MzUgNTU0NmM3YWUyNGY3MGQ3ZjVjZGQ4Nzc0Y2FiMDk1OWM5NDBmMzE5OSBsZWdhY3ktdHJ1bmsKKzM2NDM2IDMxYjY1ZDgzNzFhZjhkMjZhZWYwZTE4NDI5Nzg3MzcxZjhjYTczMTkgbGVnYWN5LXRydW5rCiszNjQzNyBmMDgxZjNhNTY4ZmE4ODdlMTViZmFkZmFmM2FkNTkyZTQzMTVhNGFlIGxlZ2FjeS10cnVuaworMzY0MzggMDllYWVlNzI5NzNjNTBlYmVlYzhmZmEwODNiZmJkZmIzNjk0YmIwZCBsZWdhY3ktdHJ1bmsKKzM2NDM5IGM1MzhhNzY0NGZmYTZjYjc4Y2VkM2NiNmUzODQ1MDliMDI1YThiZTAgbGVnYWN5LXRydW5rCiszNjQ0MCBlNmY3ZWY3MDczYzY3OTYyMGQ5OThkYmUwNGE2NjFmYWQzM2VjMzY4IGxlZ2FjeS10cnVuaworMzY0NDEgYWZiNDAzMzgzZjVkMDdhMmZkN2VhNmY4ZTc1NTM4MzA5NGNlNDU1MSBsZWdhY3ktdHJ1bmsKKzM2NDQyIGY2MDNlNWU5NmE0ZjdjODA5NGNkZWZhZTY3OTNhM2ZjMmRiMTZlOTYgbGVnYWN5LXRydW5rCiszNjQ0MyAyZmQ2OTI0MDcyOWFhZTUzZjlkMzRjNDhhNzdmZDA3MWE4NmNiY2UyIGxlZ2FjeS10cnVuaworMzY0NDQgNmFiYTZkMDc1ODk5YTYxODdkODNmNjc3NDEzMjNmNTQ1MzhkMjFiZCBsZWdhY3ktdHJ1bmsKKzM2NDQ1IDE0NDYwOTVhOTcxYWI4YTM1NmY1ZTZjYzhlYmE2MmZiMGI0MTliY2QgcmVsZWFzZTIzLW1haW50CiszNjQ0NiBmODZiZmMwM2U3NjM2NTQ2NjQyYWVjOWUyOWQwNjczNjNiZjA0Mjc4IGxlZ2FjeS10cnVuaworMzY0NDcgNzMwMTZiZDAxYTcxNGFmYWM0Y2E5MDQzZmUzZGFiNjhjMGIxM2VkMSBsZWdhY3ktdHJ1bmsKKzM2NDQ4IGQ0MmVmYzJiNDVlOTVjNjhmYjQ2MTMxYzMzMWUxZjFkOTc1ZTNhMjggbGVnYWN5LXRydW5rCiszNjQ0OSBmOWFkNWQyMDJlOGVmNDQyMzExNzVhZWEwNTc4ZmY3MTBiNjVlZmQ2IGxlZ2FjeS10cnVuaworMzY0NTAgNDU3ZmQ0MWM5NjFkMmZmOGEzMTY3ZTc3YWU0NDk5N2I5ZDhmMjFiYSBsZWdhY3ktdHJ1bmsKKzM2NDUxIDUxMzk4OTJhZGU2MjFjZDhjNjc3NjBhYzRmY2VlMDUwYzU5Y2NiZGEgbGVnYWN5LXRydW5rCiszNjQ1MiA2MTczZDk3YjgyOWU2ZTRjMTJkMjk1ZTA0MTdhNTRiNjhkZDNmZDdhIGxlZ2FjeS10cnVuaworMzY0NTMgMDU5ZGFlMDY1ODViZWZiZWFlZTI5OTNhM2M5OWQzMjYwMzUxNDYyNCBsZWdhY3ktdHJ1bmsKKzM2NDU0IGNlMzM5NjdhNGFiMGYzMzYzOGU1MTFhYTZiZWFjNmRjZjEyMDY5NDkgbGVnYWN5LXRydW5rCiszNjQ1NSBjZjBjOWUxNWY2ZjRkNjQ4NGZlZDRhOTEwOWQ3MzUxOTJkZGY3ODZlIHJlbGVhc2UyMy1tYWludAorMzY0NTYgYzk4NjlhMThlNjIxMzJkM2Y4YTUzZjM3ZmJiMThmNTk0MzNmMWUzNSBsZWdhY3ktdHJ1bmsKKzM2NDU3IGFiMThlZjgzZjVhNjJhYzRhNjFmZDE4NWM3OTE5YmJkYWNkNzZlOGIgbGVnYWN5LXRydW5rCiszNjQ1OCA5YjVjNjM4MDJiZjllMmFiNjg2NDVjMjVmYTM1YjM0NDIzZWUyN2I4IGxlZ2FjeS10cnVuaworMzY0NTkgNmYzNmUwMmIxZjY5N2QwY2MzNDY2Y2QzNGViZmUxOTZkNzI5MWViNyBsZWdhY3ktdHJ1bmsKKzM2NDYwIDk5YWM1MzBlOGIzZjU3YjQyZjgxNWM0OGM3ZmY4ZWUxMWEwMDY3ZjkgbGVnYWN5LXRydW5rCiszNjQ2MSBlZjIzOTQwMTRkMjQ1ZTUxYTQzMjM4M2VmZjAyNDdiOTFjNmVjNWE3IGxlZ2FjeS10cnVuaworMzY0NjIgMmRiZjU5NmUwNTI0ZTk1OTEwMGYzM2E4MmFhZjlhYzhmMzMyZWYxMSBsZWdhY3ktdHJ1bmsKKzM2NDYzIGZkZTQzMjdjZDQ3MjRkNGEwODY5OWRkNjA2ZWQ4ODdlN2Q1MTllOTcgamltLW1vZHVsYXRvcgorMzY0NjQgZGExODIxMGUzMTFjMmMyMGUyYzI0NTgwZWVmOGNlMzFkOTZjMDI4OCBsZWdhY3ktdHJ1bmsKKzM2NDY1IGQ4ZjMxN2NhODBiZDMwY2JmNmM3ZmQyYzY2MDNjNmZjMGQ3NmNkNzEgcmVsZWFzZTIzLW1haW50CiszNjQ2NiBkYjk5NDg0OWNkZjNmYzQxMzZmMTU2ZmE0NjE2MDk0OTUyNmM3ODFmIGxlZ2FjeS10cnVuaworMzY0NjcgY2YwYmFlZmU4ZDQwMTMwYTMyODc4ZTZjZWI5YWNmNjJkNTkzMTM0NyBsZWdhY3ktdHJ1bmsKKzM2NDY4IGZiYjkwMWQ2Mjk3YjU1ZGMzZTNlNzkzNzYzMmQ0M2VmZDI5ZGVlNzAgbGVnYWN5LXRydW5rCiszNjQ2OSBmZjU5YWQ1ODU2OGUxZjVjYTM1NWM3YTlkM2RjZjQxZGRmY2RjZDM1IGxlZ2FjeS10cnVuaworMzY0NzAgZTg5OTA2MGIxZjA1MWVmMTRiYWQ2MDk5OTYyMWNlMWIxYWViN2ZjOCBsZWdhY3ktdHJ1bmsKKzM2NDcxIGRjMzJlMGE4YTBlZGIxNWYyY2ZjMjgzNWI2NTAyOTg4MDI1YjczYmQgcmVsZWFzZTIzLW1haW50CiszNjQ3MiA5YmMyZWVjMTQ3OGI2YmE1NWYwYjA3ZTY4OTEyZTg1ZmVlNTMyODEwIGxlZ2FjeS10cnVuaworMzY0NzMgOWMzNDg1MjZhNjk5NDA3YmNmMzExMzQ1NThhODI5MWFhZThhM2EzNCBsZWdhY3ktdHJ1bmsKKzM2NDc0IDZjMWM1OTU3ZmVkNWY5ZTBmZGM5ODJiNjczNWZkMDJjOTFmMWU1ZmYgcmVsZWFzZTIzLW1haW50CiszNjQ3NSAzYzJkOWU3YWM1YTFmOTlmODhjY2EwYzViODI4NTVhMWE4ZmE2YWNkIGxlZ2FjeS10cnVuaworMzY0NzYgN2JkMDRhNGQyOGI5MzFmMTg5YTYzOTRlZGQ5MGM1ODViNGJiNDM0NSBsZWdhY3ktdHJ1bmsKKzM2NDc3IDkyOTQ0NGNhMjJkOGY2ZGZlYzllZGVhMzk5YzhlN2NlZmVlMmNiY2EgcmVsZWFzZTIzLW1haW50CiszNjQ3OCBmNzI1YTE5MTBkMGQwNzczM2I3ZDUxNmIzNTVjNzlmZGRhNzU4OWYzIGxlZ2FjeS10cnVuaworMzY0NzkgNDYzYmY1ZWJmOGEzM2FiNDMzM2Y0NGQ5NzY2NzdmNjkzYzRhNzEyZiByZWxlYXNlMjMtbWFpbnQKKzM2NDgwIDM5MTkzNzU3MTA2NWFlMTI2NGFhNWE0OGNiZjg3OTYzODVjNzJkOTggbGVnYWN5LXRydW5rCiszNjQ4MSBiZTE0MjdjYjA0MDZmNjI5ZjczYTE0NGUxMjQzMWI4ZTFjYTE4NzUzIGxlZ2FjeS10cnVuaworMzY0ODIgM2NjYTI4YWIzODU0NDIxNThiMGM5MmRmZjVhMmZhYWYzZTJjNTViOCByZWxlYXNlMjMtbWFpbnQKKzM2NDgzIGNhMmFhNDNiYTM4YjdhZWYyMzczMTRlYTZlZTJjZjExNWE1OTkxMTggcmVsZWFzZTIzLW1haW50CiszNjQ4NCA1ODg0M2YxODZlODBmZGVmZTQ5MWEzNDlhYzk1ZjQ3YzRiN2VkYjdjIHJlbGVhc2UyMy1tYWludAorMzY0ODUgYzEzMWM3ODhhMDZmYWM4MTg1MzNkZDdiYWMzNjgxZWJlZmNkMjc4YyByZWxlYXNlMjMtbWFpbnQKKzM2NDg2IGU0ZDlkODQwY2U2ZTU1OWNjM2VlNWMzZjVjZTFjZjVkZThmZWQ2MDggbGVnYWN5LXRydW5rCiszNjQ4NyA2YzVmMDFlYzJmNzViNmUxNDc5ZjQ1MTUxYTRiMTE0ZDhiYjNkZGI4IGxlZ2FjeS10cnVuaworMzY0ODggOGJkNjdiYWQxNDNjZGM1NjJkZTYwZDk2ODVlOTdjMTMxZjU3NzljYyByZWxlYXNlMjMtbWFpbnQKKzM2NDg5IDNlYjZkMjUzNjBhMzdhMDIyOWI5ZmQ1MDEwMWMxNDRlZjY0MDA3MTUgbGVnYWN5LXRydW5rCiszNjQ5MCBjMTNkOTExYWUwNWJjMGYzNjVhOTcwMDMxODk2MjgwZmU4Y2M0NmMwIGxlZ2FjeS10cnVuaworMzY0OTEgOTQxYzIzOWNiNmQyOTY4YzAzMjA4YjdmMDQ4MDc1OWQxYzg1MjRhNCBsZWdhY3ktdHJ1bmsKKzM2NDkyIDU5NDk5NmNhZmYxMGQxM2I2NmQxMjcyZGJlODQxNmJhOGQ1M2NjN2EgbGVnYWN5LXRydW5rCiszNjQ5MyAyNzJhYjVhNTRiOWViYzljNjFlZDFhNzJmYzg1MTU5NjA1NDFjODJkIGxlZ2FjeS10cnVuaworMzY0OTQgYTFhOTc3NmZhYjUzZWEyZjY0MDI0ZWM5NjEwYzA1YjRmOTBiZGZhZCBsZWdhY3ktdHJ1bmsKKzM2NDk1IDUyYmVhZmQ5MzZjODBlNThlNTMzZmU3NmIzNDQ2M2Y1OGFiYTA1M2IgbGVnYWN5LXRydW5rCiszNjQ5NiBkMmU2NmVhYTVmNzRlODFlNzg4OWM5MTFiYmRjZThiOWY0NDEyZWM0IGxlZ2FjeS10cnVuaworMzY0OTcgOTc3NjhkODczOTRhNDQxMDcyNTczZGMyYzM1NzZjZmI4ZDY3MDcwNCBsZWdhY3ktdHJ1bmsKKzM2NDk4IDM0Nzk2MTBmYjI4OGQ5OTkyYmM4NGI4NDhiY2RkOGI3ZjAyNTY0OGYgbGVnYWN5LXRydW5rCiszNjQ5OSA5NDk0NzNmYTQ4Mjg1ZTVjODZiZjJiYzQyYTc5YjczZDc4YjIxYTY1IGxlZ2FjeS10cnVuaworMzY1MDAgODhmNTQwNTc2MWFmNzYzNGM3MTQxMTRjMTVjYWJlZGRjNTM1ZmVkNiBsZWdhY3ktdHJ1bmsKKzM2NTAxIDY4N2QyZWNmYTY0ODVlOGI3NThiMmZhMTllZDUxNDkzMDNiYWI2OTkgbGVnYWN5LXRydW5rCiszNjUwMiBjYWRhMmU5YjY4NWM4OWU5Yjg3MGY2ODdlYjE5YTY1ZjcwMTNmMTg4IGxlZ2FjeS10cnVuaworMzY1MDMgNTU4MWQ2OGIzYWU5ZTcyMzg0ZGY1MWFmZjY5MjUwMjJmMWQ0MDI3ZCBsZWdhY3ktdHJ1bmsKKzM2NTA0IGQzZDQyNjQ4M2Q3MTA0M2IzYjU5N2ZjYTVmMDc4NTBmZmU2MWE5ZjUgbGVnYWN5LXRydW5rCiszNjUwNSAxMDRhN2ZjMDZiZGZhMmE0ZGVkNGQ1ZTc5OTBlMjhkODAwZjg4ZDEyIGxlZ2FjeS10cnVuaworMzY1MDYgYmM0ZGQzMWM3M2ZkZjRmODU2ODVlMTQ5ZGRjNjg2ZWZlODBlZTk1NCBsZWdhY3ktdHJ1bmsKKzM2NTA3IDhmY2YyMDUyZDE2ZTIwNjIyOTJhODdkMGM4YTk2YzU2NzYzYTc5ZWMgbGVnYWN5LXRydW5rCiszNjUwOCBkNjRkY2ZiNDk1YjJiNzE1ZmRkMTZjYzNmZGVhMjA2NThjNzZkMGI3IGxlZ2FjeS10cnVuaworMzY1MDkgMzVkNDBmZjY5ZWI2MjY0ZTliOTFlODYyMDYzNDdjM2ZiYjYyOTRjZiBsZWdhY3ktdHJ1bmsKKzM2NTEwIDlhM2I0MjE5YmNiZWRlYmE0OWM1MWJmZjc5OWNmOWJiYTA1MzY2YjAgbGVnYWN5LXRydW5rCiszNjUxMSBmYWU0NjA3OTRkM2QzOWY2MGE5NDBjZDk3OGU3NWNlZTVkZDdiMjhhIGxlZ2FjeS10cnVuaworMzY1MTIgMTM5OWRjNjE2NzIwZjRiMDNiM2NkYzIyYWNkNjE5M2ZiY2VhM2EwNSByZWxlYXNlMjMtbWFpbnQKKzM2NTEzIDU3N2E5ZTRjODJmYjcxZTI2YmVjOWU5MjJhNDg4ZjNjYmY3OTU5Y2EgbGVnYWN5LXRydW5rCiszNjUxNCAyYmY4NjlkMzFmMGNlNjE1ZTdjMzM4NWNjMDgzZDYxNWY0YWUwMjM2IGxlZ2FjeS10cnVuaworMzY1MTUgNWZiNzhhMmQ5NGYwYWRlMGQ5YTUyYWE1NzNhMmRjZjNjYWZmNjRiMiBsZWdhY3ktdHJ1bmsKKzM2NTE2IDIxMWRiNjdjY2QwOWVkOTQzNGU3ZjA5MmVmZjJhNmQ3NzdlOTRjNWQgcmVsZWFzZTIzLW1haW50CiszNjUxNyA3ODBhMzM3ODc0NThlY2UyMTNiMzY2N2NiODdkODEwOWVlYTE5NmE5IGxlZ2FjeS10cnVuaworMzY1MTggM2MzODJkOTBmMzAyZDNlNTYyOGZmNzYzMWRmN2ZiOWM0ZWI1MDNiYiBsZWdhY3ktdHJ1bmsKKzM2NTE5IGZmMjY3MTRiZjg2ZGM0YzIyYjRlMTU4YzE2NzM1YjY2MTRjOTg4MGYgbGVnYWN5LXRydW5rCiszNjUyMCBiZTZmMmUxYTc4Yjc2M2MyNmJiMTJkMzViOTczYzY5NjJhNTQ5MzY3IGxlZ2FjeS10cnVuaworMzY1MjEgNDliYWFkN2IwMzJlMGIwYzRkYWJmZGZhZTQ0MDY0YWI0NGE2MzFlOCBsZWdhY3ktdHJ1bmsKKzM2NTIyIDc3NDJmODVhMzcyMzhlMmM1ZWIwYmMwOGQyY2M0MzBlYzFiNjUxNjkgbGVnYWN5LXRydW5rCiszNjUyMyBkYzJmZTc3ZGQxNjdlZGM4NjUxZjUzMDI0YTA1MjY3YWY3OGM0MThmIGxlZ2FjeS10cnVuaworMzY1MjQgMDcyOWQxZGI1MTE4MzgwZGQwNzAzMjA4YzI2ZTY5OGRmNGZmYzRkYSBsZWdhY3ktdHJ1bmsKKzM2NTI1IGVkMzY2MjFiMTI2YTFlNzk4NTQ0ZDNkMmFhMTUxMTBiNGRmZDBlZTQgbGVnYWN5LXRydW5rCiszNjUyNiBkZjRlNmNjNjY2MWQwNDU4ODk5NDljNzBlZTU3YzcwYzQzZDNlYTU3IHJlbGVhc2UyMy1tYWludAorMzY1MjcgNGJlMjgwOTNlNDgwZWFjMTVhYzM0OTc0MjdiOTc3MmUzYTlhNTkwYiByZWxlYXNlMjMtbWFpbnQKKzM2NTI4IGFiMGIyYTU4ODhmOWU3MGQxMWY2YjdjOWYwYzc1N2I1OTU4N2M3MTcgbGVnYWN5LXRydW5rCiszNjUyOSA1MDY5ZjViZDY2ZjNmNmQ2YjcwZmQxMTM0NjE5ZDZmMGI2MTRkMWRhIHJlbGVhc2UyMy1tYWludAorMzY1MzAgZDFlZjg2Zjg3ODVmOTNkZjQ4Y2RhMDZmZDQ2MTFiYmE4ZjNmYWVjMCByZWxlYXNlMjMtbWFpbnQKKzM2NTMxIGYwODUyOTg3OWRiMWFkM2Q1Y2E0NTdlZmRjNmJjOTQxODA3YWQ5NGMgbGVnYWN5LXRydW5rCiszNjUzMiBhYmUwNGU3N2E0YjBmZDdhN2U4Nzg2ZmQyNDJmN2QzZjMzZGM2OGVlIGxlZ2FjeS10cnVuaworMzY1MzMgODQ2YWNlNTczODljOTJhOWRkN2U0Zjg4MDZkMTMxZWJhMDMxYTIzMSBsZWdhY3ktdHJ1bmsKKzM2NTM0IGRmODhmYWRiYTJmNTZjYmZlNDQxOTIyZTc4OTQ5MzNjMTljZTBkZmUgbGVnYWN5LXRydW5rCiszNjUzNSBjN2M5YjY4ZGRkYTI5YzU2MWRjODI4MzcwN2ZiOWFjYzIyNzIwNmJhIGxlZ2FjeS10cnVuaworMzY1MzYgMjU1YWUyM2M3OGZiNjE5M2JmYzVmNTM4YzZmNmMyMzc5NzliZTNlOCBsZWdhY3ktdHJ1bmsKKzM2NTM3IDM4YWQ5YzZlNzE3YzhiMGI4YmM5NzJmNjFmMzM4MmYyYTA4NzUzN2EgbGVnYWN5LXRydW5rCiszNjUzOCAxNzQwNjU0M2YxNWIyN2U4YWJjYjk4ZTNmMzcwOWFmYmUwZTZjODNhIGxlZ2FjeS10cnVuaworMzY1MzkgNWIwYzg3ZGU2ZDA1MDk2ZWQ0MTgxMDRjNmI3YzZkYzc3NTQ2MGUxMyBsZWdhY3ktdHJ1bmsKKzM2NTQwIGY3OWNmMTNhOWE3ZDEwYTgzMmFiZTAyMjY1ZDdlMTE1NTVkY2M0YzIgbGVnYWN5LXRydW5rCiszNjU0MSAwZTg5MGFjMWMwZjI2NWY0NDdmMjdmZjM3ZmNmMDMyZjgzOGJiZTk2IGxlZ2FjeS10cnVuaworMzY1NDIgMWJkMzM4M2JhZDk4NTAzNjQ4MDM2NWJlZDMzOTFmZjk2NjcyNDc0MCBsZWdhY3ktdHJ1bmsKKzM2NTQzIDEwOTU1MGY1YTgyOTYzMGE4ZWZmMjEwODJjMGUwZWJmMGYwODJlM2EgbGVnYWN5LXRydW5rCiszNjU0NCBjYmIyNWZkYTk1YTU4MGYyYzY3ZjRhYTliZDQ0MDc4ODgyZTZiNDZjIGxlZ2FjeS10cnVuaworMzY1NDUgZDA5ZGE3MTQxM2NhMDRmY2I2Y2YzM2ZhY2ZhMjNjNWE0MGFmZWJkZSBsZWdhY3ktdHJ1bmsKKzM2NTQ2IDRkNDNiMGFiYzIyYThiNjFmZTJhYzUwY2VhZTk5NmZjZTdhNjM0OTIgbGVnYWN5LXRydW5rCiszNjU0NyBlZmNhNTViYmJhMGFiMTJhMDRmOTc2ZDQ2OTYzOWI1MDUwMmMzNzJmIGxlZ2FjeS10cnVuaworMzY1NDggNmFjZDcwNzBlZDY2ZjdhZDY1MzEwZGIwMWEyZjhjYmFhOGY3YzNhNiBsZWdhY3ktdHJ1bmsKKzM2NTQ5IDc1NTljN2ViNDc4MDI3NDM0OTg2MjY5NjhjNjNiODQ0MWE1NjBjMTUgbGVnYWN5LXRydW5rCiszNjU1MCBlNGNjNzg4ODRmYzQyNmMyNmQyMTkyYjIxNjU1OWY0NWEyNjllMDU5IGxlZ2FjeS10cnVuaworMzY1NTEgNjlkYWRjMmNhMTRkZmNiZjYyYWUxYTE2YmUyOTAzZmIwMzgwNWMyYyBsZWdhY3ktdHJ1bmsKKzM2NTUyIDgxNzg0ZjY2Njc4OWI5MDI0Zjg3NmU1MWNiOTlmZGQ4NmM1YzU1N2QgbGVnYWN5LXRydW5rCiszNjU1MyBlMTM1ZTgyY2Y2ZTQ4OTE2ZjZiOWQ0NjVjYTljYTU3YmZmZmFmZTA4IGxlZ2FjeS10cnVuaworMzY1NTQgMDdiNDhlYWYyYjAxZWJjNDhjNGZhNDA3YjZiNjM3MWU4NTMzYzZjOCBsZWdhY3ktdHJ1bmsKKzM2NTU1IGJlYmNiNzlmMzdjYmM5NDk4Mzk3NjQxM2QwNDQ5MmZhY2E4NzM3MzEgbGVnYWN5LXRydW5rCiszNjU1NiBkYzNmMDRhZmVmNzU3MGI2ODMxZTBhYzQ1MjQ0NDQzZTUyYzk2MjQ4IGxlZ2FjeS10cnVuaworMzY1NTcgOTc3ZjI2N2IwMGY5M2VjNjI5MTlkNzZhNTEzYjNmMTMzYzQxOTA1NSBsZWdhY3ktdHJ1bmsKKzM2NTU4IGIxZDE0MmQ3MTQ4Mjg5OTg3MDQ2MDZkYWZmZGYxNjVjN2Q0N2U5MGQgbGVnYWN5LXRydW5rCiszNjU1OSAyYmM2NmYxZGY3Y2M3YzgyM2ZkYTNlZTY0YjJjY2UyMGVhNzdlODlhIGxlZ2FjeS10cnVuaworMzY1NjAgYzNhMDk2YmZiZDZiZTkzOTU5OTBlNzkwOGM1Zjg4N2MzNTM3YTg2NyBsZWdhY3ktdHJ1bmsKKzM2NTYxIDI4MjkyN2Y3YmRlMjQyZGE3Y2MzOTU5YTMzZmU4ZmI1NjRhODAzM2UgbGVnYWN5LXRydW5rCiszNjU2MiA4YmRkNzk0YTQxOTdlODk3MTEzNjExMWJhMWVjMWI5M2ZjYTUxNGY5IGxlZ2FjeS10cnVuaworMzY1NjMgYzFiZDFjOGU2NGI0NTc0ODU5YzkxZTNiMzdmOTczOGJkNzY3ZjdkOCBsZWdhY3ktdHJ1bmsKKzM2NTY0IGI2ZjEyNTJiNjgxYzUxY2MwODNjNGZmNzM2OWQwNDc1YTc1NjA4MjAgbGVnYWN5LXRydW5rCiszNjU2NSBmOTcwOTlmOWZmMWMzMWY4NDlmYTdhNWRmNTkxMjczNjA4Mjk0MjJjIGxlZ2FjeS10cnVuaworMzY1NjYgMzM3N2E3MjM3M2ZiZjg1ZDU2NThjOTY2ZmMwNjIwNzUxNjBmMTQwNiBsZWdhY3ktdHJ1bmsKKzM2NTY3IDRlMDdlYWNiMWJkZmQ4ZDc1NGEzODUxMDg5OGJjZDdmYzgwMzNkYTEgbGVnYWN5LXRydW5rCiszNjU2OCBkMTQzNmMyOGRjYTMyZWUyZTY3NzczNTIxOWVlYTQxNDY2ZmFhYmFiIGxlZ2FjeS10cnVuaworMzY1NjkgZGIxYTI3YjZkNzc1MGVjMjc2Yjk3M2JkMWQ5Y2Q5YjY4MDY0MzVjNyBsZWdhY3ktdHJ1bmsKKzM2NTcwIGMxODI0ZDY4ZDEwZWFjNDNjOTgzYzE5ZjgxN2ZiYzExOTE2ZjU0MzAgbGVnYWN5LXRydW5rCiszNjU3MSBlNDU3NTUxOWVjMjYyM2EwZmQ1NTkzOTc3YjlmZTFjMTJkYzM2MTZiIGxlZ2FjeS10cnVuaworMzY1NzIgMDVjYTIyMzJlZmNiZGJkMzk2ODk5YzZmODk3MzU5MThkZWI2YWQ1YSByZWxlYXNlMjMtbWFpbnQKKzM2NTczIGI3OTUxZTFmNWRkZjI5YjBiNDQwMzA0M2E0MzU5OGZmNjE2MTAxMzIgbGVnYWN5LXRydW5rCiszNjU3NCA1ZDlmNzJkMDg0M2VlYTlkOGVjZTNjYmRiY2U3YjZlMTAwZTQzZmMzIGxlZ2FjeS10cnVuaworMzY1NzUgOTVlYjZlMThhNTQyNzNkMzVjZjg5NjljYjNhZmFkNTQ2NDNlYjIzNyBsZWdhY3ktdHJ1bmsKKzM2NTc2IGRiZDNhMDRlYjBjNjQ4OTU4NzM2ZjQwODk2YTM3MjYxMDI1YTMzODAgbGVnYWN5LXRydW5rCiszNjU3NyBiNTQ1OWJmNDgyNjI0YmExZWYyZDU0YjhiY2ZjMmYyM2YyMzZjYjVjIGxlZ2FjeS10cnVuaworMzY1NzggOTM4ZGMzMmRkYmM0MWYxNDU4ZDJkNmI3NDVjMzY2MGY2MWNmMTY0NSBsZWdhY3ktdHJ1bmsKKzM2NTc5IDI1NzU2M2RjYjQ0MjM0NGZhYWY5ODdjYzgyM2M0YWI5ZTRlODA3MjIgbGVnYWN5LXRydW5rCiszNjU4MCBkYjI2YjNkYmU4MDI3Y2M5YjA1MGVjMzRjNmNjOGE1ZTE3OGI1M2UxIGxlZ2FjeS10cnVuaworMzY1ODEgMjZjYjA1ODkwN2YyMWI3ODE2NGE5YjIyOTQwYmVkMmI3NmE1OGQ5OCBsZWdhY3ktdHJ1bmsKKzM2NTgyIDg1OWVhODYxMmViMGRjNTI4YjRhMTRkMTdmMGIyM2YwYjNkYzI5MzcgbGVnYWN5LXRydW5rCiszNjU4MyBkMTc3N2Y1MTkyM2JiNjE4MTU0MGFjMWYxZTZiNzIyOWM1ZDc5ZjM1IGxlZ2FjeS10cnVuaworMzY1ODQgZGNjNWMyZDU4ZjMyNWZmYmM4MTFiZjIwN2EyMTdhMzVjNWY3YWE4ZiByZWxlYXNlMjMtbWFpbnQKKzM2NTg1IDYxYmU5MDRhMWQ0ZTM1NTNkN2EyZDcxZDI5MDViMjkzYmM1ZjczYjIgbGVnYWN5LXRydW5rCiszNjU4NiA3NmFkODE0YmM2N2M5NGVlZmZiOTc4MDZlOTUzZjhhYTE2MGQwMWE4IGxlZ2FjeS10cnVuaworMzY1ODcgOGFkNWExNjIwMDkyZTRkMGVlNjE1NDNlZjMwNThmN2U0N2MxMTVhMiBsZWdhY3ktdHJ1bmsKKzM2NTg4IGVjYjBjOTdmMWU0MjYwZGFhNzI3YTcxMWYzZmY0Y2QyOGU5MTYyZTAgbGVnYWN5LXRydW5rCiszNjU4OSA1MGVjZTNkNGZmMzcyMjg3OGIyMDZlNTIzYTEyZGE1Mzc4OWEyMTc1IGxlZ2FjeS10cnVuaworMzY1OTAgZDE1NTE3ZjJhYmU4YmNmMjhhNTkwNzRiYTUzOWNjYmYwNTVjMjdjYiBsZWdhY3ktdHJ1bmsKKzM2NTkxIGE5MWU3YTQ1ZjE0MjQxZjY5NmVmOTE1MDRhMGZmYWU1ZThlOWViYmUgbGVnYWN5LXRydW5rCiszNjU5MiBmZmE4YWIwMDgxZjIxM2M0OTU3NDc4ZjFiMDA0MGI4MjExMzk2MDI0IGxlZ2FjeS10cnVuaworMzY1OTMgOTgzYTkxYjUwZjZlNzg3NTAyNTIwNWI2MGFkNTQyOTQzOTIzMDEzMiBsZWdhY3ktdHJ1bmsKKzM2NTk0IGEzYjFkNmM5OWU0NjIxYmU0ZjdkNDk0NzQxM2IyZGZjY2I1NWU2ODIgbGVnYWN5LXRydW5rCiszNjU5NSA2MmY4NDNmY2I4MjM3OTdiY2M5YTU5YWExY2Y2M2Y0ZjhlZDc5NzNlIGxlZ2FjeS10cnVuaworMzY1OTYgMmVjNDUxMjMwYjhlYmNiMzI2NTY1YWE5MjRlOGZlMmU3ZWM3MGVhOSBsZWdhY3ktdHJ1bmsKKzM2NTk3IGIzMDFlNWRlZTkzOGMyMzhhMDEwZDgyNDJiMWJlZjZjZGRiNTI3OTMgbGVnYWN5LXRydW5rCiszNjU5OCA4YTkxY2Q3ZDdlODI1NGRkNWMxZDI3NTUyYTcwNDQ1MDI5NDAyNzFjIGxlZ2FjeS10cnVuaworMzY1OTkgODI2MDY5YjcyNWRiMjY5ZWExY2RjNDRmNGE2OWFhNzMzYjI1NGFmNSBsZWdhY3ktdHJ1bmsKKzM2NjAwIDY4NzVjZjA4ODJlMDEyM2NiNjQ2MmFiN2JlMGRjZDMxNDcwNGRkZjIgcmVsZWFzZTIzLW1haW50CiszNjYwMSAxM2QyMDMyMjc4N2Q1YTMyYWIwMTc3MThjM2VmM2YxYmIzOGE0YjU5IGxlZ2FjeS10cnVuaworMzY2MDIgN2FmNjk1YmM1NDgwOTI2NWFhMjhjODE0YzUzMzU1MGNiMmI4YzUyOSBsZWdhY3ktdHJ1bmsKKzM2NjAzIDMxOTM4YTQ2M2YyODdlOGY2NzQ2NDQ2ZGViYjNmMmQ3Y2FiODZhODUgcmVsZWFzZTIzLW1haW50CiszNjYwNCA1MTdlMDBhZjEzYTFhNzgzMTE1MmQxOTE1MjA2ZDVmNjgwNDIwY2MyIHJlbGVhc2UyMy1tYWludAorMzY2MDUgY2FhZWYzMDJmMWUzM2M1OTQzM2Y5OGY4NDJkNjI4MGZhYjkwZDFkNiBsZWdhY3ktdHJ1bmsKKzM2NjA2IDc5MTdmZDJjNDI5ODM4MWYyZTI0MTEzNTE1OTU0N2Y1OTJkMDJmYzggbGVnYWN5LXRydW5rCiszNjYwNyBkNmU3M2U1Mjg4MGU0Nzc5N2VjY2E3ZmVkMzNjOGJkMjI1YjQzMmEzIGxlZ2FjeS10cnVuaworMzY2MDggZTZiODQ3YjA3NTUzZjNjZWU2NjhhY2EzMzZjZjZhNDNlYTM2OTYwMSBsZWdhY3ktdHJ1bmsKKzM2NjA5IDAzNGIzYjkyYzVlMDMxMzkwNGMwNmExZTNmYjc3MjUyYmRiZjVkZGEgcmVsZWFzZTIzLW1haW50CiszNjYxMCA0ZjRiNzk1NjI4N2NhYjY4OTNhNjdjNDljNDE1MDUyMjA3NjlhYjZjIGxlZ2FjeS10cnVuaworMzY2MTEgODA3ZmJlOGQzNTg0MDEzZTY1MDczMDJiZWQ5ZDg3ODdjMzQ4OGM3MSByZWxlYXNlMjMtbWFpbnQKKzM2NjEyIDAwODkyNDIwZTBkZjVlMDg2NWNlZGE3NjBmM2E5YjM3Y2UzYjM3ZmYgbGVnYWN5LXRydW5rCiszNjYxMyA2ZGY5MzIyZDZhYjgyMzc4OWY4YjMxZWM3ZTYyNTRkY2QzNDdjZTM1IGxlZ2FjeS10cnVuaworMzY2MTQgYTk0MGI2YzA3ZTU3NzVlYmEzYmVkNzQxOWY5YTA2YTEwNmQxNWNiNyBsZWdhY3ktdHJ1bmsKKzM2NjE1IDU1ZjczYzgyZTMwNGJiODlkYzhlNjQ5MWZlMGY1ODQ3ZDBkNzY3NDYgcmVsZWFzZTIzLW1haW50CiszNjYxNiA3MzA0NTE0M2JlNjNlOGNmZmJjNmZlMGRkN2M5ZDE1MTU1OWQ5ZjE3IGxlZ2FjeS10cnVuaworMzY2MTcgMWUyMTg3ZjUwNjMxNzE1N2MzNjA5M2YzNzFkZWRmZjUyODJjOGU5NyBsZWdhY3ktdHJ1bmsKKzM2NjE4IDBmOWMzOWIzZTVmMDJmNDg1NTRmOTI3YWQ0YzVhZjEwOWRkZTcwNDcgbGVnYWN5LXRydW5rCiszNjYxOSA0NmUwNDMxYzk3MDFjYWMwYmEzMGZmOGRhMTlkYWQ0MTY4NTgyMTg1IGxlZ2FjeS10cnVuaworMzY2MjAgZmE0OWMxZTJkMmMxMDcwY2U5NjRjMzRiOThmNWY0Mjk1MjgyMGQ4MCBsZWdhY3ktdHJ1bmsKKzM2NjIxIGVhNTRmZGI4NjUzMGVjZTU0ZDRhZDk0MzExM2E2YjNiNGE5NTA1NDQgbGVnYWN5LXRydW5rCiszNjYyMiA5MjY3YWViNzI5ODVkMDUyNGJlYmFlZDlkY2QxMjUyNjJmYzI1M2RhIGxlZ2FjeS10cnVuaworMzY2MjMgZWFhOGEzN2UxZTg1MGNlNjY2ZmI0YjQ3NTViYzMyZjZiZTJhYjU5MSBsZWdhY3ktdHJ1bmsKKzM2NjI0IGZlNDE0NWJhMzliZmZiYTYxNzgyMzdhZjViNTg0NmYyNjg5MDY0ODkgcmVsZWFzZTIzLW1haW50CiszNjYyNSAxNmRlNGY5MGVmNDQ2OGNiNmY5ZTczOWYzYjc3NjFkNTJhNGM5NjMxIGxlZ2FjeS10cnVuaworMzY2MjYgZDMwZDUxYjJlZmUwMTJhOGZkNWMxMTg2ZDg3MTkyY2E5Y2ZmNDUxMiBsZWdhY3ktdHJ1bmsKKzM2NjI3IGRhYzI4MTM2ZDU5YjBhYzU3Yjk2MWE0NzVmMTM4YjM4MjAyNzM3YWEgbGVnYWN5LXRydW5rCiszNjYyOCBjZGFkNjI1MzMwOTRmMGNhMWI3NDU3YjQ3Nzg0ZGU0N2M1NWE4MjU2IGxlZ2FjeS10cnVuaworMzY2MjkgYjhiYzU5NTc4YTQ3NTYzMDg3OWM1ZDkwODEwMjE1ZDE1YzBlZDdlYyBsZWdhY3ktdHJ1bmsKKzM2NjMwIDNlMDQyMzM4NTJkNGZhZGZkYzAwODI0MDFiMjg5NWY5YjE2ZGZiMWYgbGVnYWN5LXRydW5rCiszNjYzMSA0YTUxY2RjZjg2MTUzMzY2OGIwZWZjYmI4OWY2MjM3Zjg5MzgwMDkzIGxlZ2FjeS10cnVuaworMzY2MzIgZWRiYWY2MTAyMjdiOWYzMTYyNDVlOWZkMmRjNGY1YzU5YjVjNDY3YiBsZWdhY3ktdHJ1bmsKKzM2NjMzIGIyODc5YTcyYjM0NjYxZTkwYjIyNzNmOTAzMTY5Njk2YmVhYWY5NTYgbGVnYWN5LXRydW5rCiszNjYzNCA2MjNhZTEyOTMwZWExNmFkNjk0OGMxZDM4NTdjZGRiMDQyZWMwMmI3IGxlZ2FjeS10cnVuaworMzY2MzUgNmU3OWRlYTg1MTg5YWZhOTQ0ZjcyMjU1OWVmNzEwYmRhNWEyODM4MSBsZWdhY3ktdHJ1bmsKKzM2NjM2IGQ1Yzk3ZDY5ZGZjN2MxNzFjNWYwMjk4YzcwODFjOTgzMjI4MmY4ODggbGVnYWN5LXRydW5rCiszNjYzNyA5NTgyZmEyZTVlMGRhMmEwNmZlMTgwZTgwMzVhNGY4OWFjMzY2YTMxIGxlZ2FjeS10cnVuaworMzY2MzggZjYxNmQ2NTM1OTkzMzA2M2M5NGNkODQ5N2QzNWVhMWRmNTMwODQ3YiByZWxlYXNlMjMtbWFpbnQKKzM2NjM5IGVlN2I4NDEwMTE2MDRmNDk5ZjE0ODA2MzJhMTQ4MDQ5ZTVmMzQyOTMgbGVnYWN5LXRydW5rCiszNjY0MCBkMmFkYmE0NzgxZDViMDc5OGFlNjg0MWViZDIyNGZkMjJkZjdjOGVkIHJlbGVhc2UyMy1tYWludAorMzY2NDEgYmY2ODZlZjkyY2IwYmQyNDJlNjI3YjhjMzRjZDQ3Y2E3ZjkzNmU3YyBsZWdhY3ktdHJ1bmsKKzM2NjQyIGJmNmEyMDY5MDgwYzZiMWY2Y2I3ZTI2M2NiNzk2MzExMTg4M2ZkYjIgbGVnYWN5LXRydW5rCiszNjY0MyBkMWNjZDJmNDVkYTM0MTc1Yzg5ZmVmZDFiNmI4NDZjODYwNzgxYWNhIHJlbGVhc2UyMy1tYWludAorMzY2NDQgODBhY2FiOWMzYzE3NjE3N2U4Y2Q1NWU4MTM3MTk3OTQ4MGMxMDBlMiByZWxlYXNlMjMtbWFpbnQKKzM2NjQ1IGIzNThkMmY0NGE3NDAyZGM0NzA5YjQ0OWUzMjllMmUwYjBlNjBlZDggcmVsZWFzZTIzLW1haW50CiszNjY0NiAzODM1ZGZmMmVmZGI1YWQwMmI4OWVhNGRiOGMzYmRjNDA4MzgyY2Q5IGxlZ2FjeS10cnVuaworMzY2NDcgZmJiMmQzNGY3NWEzYmY3MDEyNWYyMWQ3NTNlMTc5YjAyNmYwMWIwNCByZWxlYXNlMjMtbWFpbnQKKzM2NjQ4IDcxNjMzZDM3ZTk4ZTkyY2Y5NjU5YmFhOTAxOGJmZWJhNDY4NWI4ZDAgcmVsZWFzZTIzLW1haW50CiszNjY0OSBjNmM1OGI2MWY2YjVhOGYwMzRhNjAxMWRjNmU5MGE5NjUyMmQ5MjdmIGxlZ2FjeS10cnVuaworMzY2NTAgZDk1NjgyMDg5NTA1MGI0OTU5Y2EyOGRlMjIwMGY5MDI4ZjVlNTIwNCBsZWdhY3ktdHJ1bmsKKzM2NjUxIDM3YTc1YjJiNGMyOTQwNzE3NTk2Njg5YjEwOWRlNDMzNGIyMjU1NzUgbGVnYWN5LXRydW5rCiszNjY1MiAwN2E1N2Q4OWIxZTBkZmU4YzllNzNiZmMxMWM3NWFmMTlmNjY5ZDE2IGxlZ2FjeS10cnVuaworMzY2NTMgY2JkNGFlNzQ4OTBkM2MxMDRlZDZiMjM1Y2ZjMTcxYTA2Njg2MGVlZCBsZWdhY3ktdHJ1bmsKKzM2NjU0IDA2MGRlNTA0ZWJiZWFmYzA3NjgzYmJhODA0YTE2OTFjOWY4YzBkNzEgbGVnYWN5LXRydW5rCiszNjY1NSA0MzUzZmZjNDM3ZjE5ZmQ4ODE0NWRkZWQ4MzU4MDhjZjc5MjBjMzQxIGxlZ2FjeS10cnVuaworMzY2NTYgZmE0YzcwNjNhNzM2YTVjOWUzNDI4ZTk4ODc1MGY2ODFhNDlmZjU2OCBsZWdhY3ktdHJ1bmsKKzM2NjU3IGRhYzlkMDY2NGZjMzkzMzQ1MDg1NzUwMjk4Yzk0ODlhYWVkOWM2NGQgbGVnYWN5LXRydW5rCiszNjY1OCA3MTgzMDUxMTJmOWZkNjExYzA5MDQwOTE2NWRiZGExNjFjM2I2OGQ4IGxlZ2FjeS10cnVuaworMzY2NTkgYjU4Y2Y2YjVmYzkxNDM4MGQ1MGQyZWJjNjFlMzRhNjNjYjAyZmRjOSBsZWdhY3ktdHJ1bmsKKzM2NjYwIDFkZDNjYzkyN2QzNzdmNWU5MzlmM2Q1NWU4Zjc0MjE0YTNjM2ZjMzEgbGVnYWN5LXRydW5rCiszNjY2MSA3MGU4ZjYzNGE1ODkwMjliZjhkZTY1MWI4OWEwYWZmMjdkZGQ3MmZhIGxlZ2FjeS10cnVuaworMzY2NjIgMjRkZDFkMDdhZmRiYzA2ODlmMjQ0YjI5YzE1OGJhOTlmY2ZmYjUyZiBsZWdhY3ktdHJ1bmsKKzM2NjYzIDdiNDRjMjc4Mjc5M2U5YzYzNDk2M2U0NGJmMjEwN2VhN2MzNWQxNjggbGVnYWN5LXRydW5rCiszNjY2NCAyMTMxOGQ3Njk1ZjljZDNmNTYyYzc3Zjk4MzRlYzYwNmUxODNkYzhmIGxlZ2FjeS10cnVuaworMzY2NjUgMDg1NmQ5OGUyYTY4M2RhNmIzZjc1ZjMzNjg4NzFiZjIxODQyOGNhYiBsZWdhY3ktdHJ1bmsKKzM2NjY2IGQ1Yjc2YTE2NzMyM2FhMTUzMGI5Zjk2NGM3ZDI4OTI5OTk1ZjYzZGYgbGVnYWN5LXRydW5rCiszNjY2NyBkYWIzZjA4NjY4ZGYyM2FlMzU2ZWVjMDkzMDE4OTQyMWQyMWRkMjI1IGxlZ2FjeS10cnVuaworMzY2NjggYTRmMThjODk4NjVmYjhkMGQyYWIyYjgyZWU5ZjE4N2E2NmZhMTgxMiBsZWdhY3ktdHJ1bmsKKzM2NjY5IGRiMjEwODFmNWJjMWIxNjE4ODEyMWJkYTlhMGUwZjM4NDg3NGQ5YzYgbGVnYWN5LXRydW5rCiszNjY3MCA4NjU1MTMxMTJmN2EwZTc5MThmYzMzMDE1ZDEzZjE3NTkyNTllMjJlIHJlbGVhc2UyMy1tYWludAorMzY2NzEgNWU0ODBhNWM2NDdkYTczNDQ5YmYzZTk4MmZhMmY1ZTIwZjJhYmE3NiBsZWdhY3ktdHJ1bmsKKzM2NjcyIGUzYTM1ZmJjZThlYzIyMTc2ZDM4OTMyODU2M2UzMDQyZDExZWZkZGEgbGVnYWN5LXRydW5rCiszNjY3MyBlN2NjNzQxNTJjNTUyOTdjM2NhOWY4ZDZkY2ZmMTk4ZTIwNGU4NDlmIHJlbGVhc2UyMy1tYWludAorMzY2NzQgMDllNjMzYzUyNzMwNzlhZDljNDVhYzU1YzFkMjhjZThkNTZhMTRlMiBsZWdhY3ktdHJ1bmsKKzM2Njc1IDA1MmE0M2FhMzVlY2Y3MmVkMjI4ODUxY2FkMjBiYzVkN2FmMTMxNDMgbGVnYWN5LXRydW5rCiszNjY3NiAwZjk0ZjQ4ODZiZjU1YThhNTUwZjFiMDY5NThmMDFhMDViNThiNjYyIGxlZ2FjeS10cnVuaworMzY2NzcgMTY4MjIwMWYwNWIyYTg0NTBlNjViYjY5M2IzM2U2MzVkZGMwZmY1ZCBsZWdhY3ktdHJ1bmsKKzM2Njc4IGRjYjI0MWM4OWY0Mjk3MmM3MTIwYWRiMDU1NzcyYTE1ODY2YjMxZjQgbGVnYWN5LXRydW5rCiszNjY3OSA5NmQ5OTE0NzdhODI5Y2E3N2QxMmQ5YzgzNWNlMDI5MDJmYWQ3ZDVmIGxlZ2FjeS10cnVuaworMzY2ODAgMDZhNjNjMzVkZjllM2M2NWNkYjJhZTg4NjYwNWFiMzU4ZjBkZjQ1ZCBsZWdhY3ktdHJ1bmsKKzM2NjgxIDcyNGZiMjZlYTA1ZjI0YzlhMjNjODdhY2QzYWM0ZWE4NjI2MjdiNTggbGVnYWN5LXRydW5rCiszNjY4MiBmYTA1MjZjMzBkYTgwNWY4MTBmN2U4NzA4MzU1ZTdlZGJhOGIyZDQ3IGxlZ2FjeS10cnVuaworMzY2ODMgNDVmMzIyMmI4NGVlMGVlMzFmMjdiMmJjZDI2MTY4NWEzMWJjOTU4OCBsZWdhY3ktdHJ1bmsKKzM2Njg0IDQ4ZWFlMjBkNzBjNThiODZjNGUzZjA3M2MwZWVmOWQwMWRjYjE4MTEgbGVnYWN5LXRydW5rCiszNjY4NSBmYzM2ODdhNjI3YjQzNDNjMDllOTUwZDYxOTUzOTJhYmE1MzU3ZGRmIGxlZ2FjeS10cnVuaworMzY2ODYgOWEwMGI2NWFlY2RjYzg0MzdlMjMwNzA1YmJlZTQ1MDE5MDgwMGJiZiBsZWdhY3ktdHJ1bmsKKzM2Njg3IDZlYTMyYjBlOTUwN2ZhMjZmMWZkNWMyYjhiMjE1ODA0M2E5M2E5YmUgbGVnYWN5LXRydW5rCiszNjY4OCA2MGE3MDhiZjM1MWFlMTFlOTc5MmNiMTEyOTU2MDNkNDQ1OTM3NjdlIHJlbGVhc2UyMy1tYWludAorMzY2ODkgYzU3MDEwZGIxMjNlZWFjMTg3Y2I0YmU3YzBlMzBhYTQ5OWUzNzM1YSBsZWdhY3ktdHJ1bmsKKzM2NjkwIGE1M2I1Y2VmYTYwZDdkMDUyNGY4NDAzYTJmMWU2MjlhM2IwYjMzZGQgbGVnYWN5LXRydW5rCiszNjY5MSA4ZDI1ODM1Zjg4YWU0NDUwZTlkMzI5YmQ4ZDE4YjFmMDlmMzY1YWIyIGxlZ2FjeS10cnVuaworMzY2OTIgYmQ0NmU2ZjgwNjIzYmY5ZDIyOTY4NDU1ZGMyZDA5NTQ0MzkzNWUwYiBsZWdhY3ktdHJ1bmsKKzM2NjkzIGNhNmVmYzU0YjE5ZmY3MTljZjM2ODIwMTRjOGY3YmRlYTE5MmUzOTYgbGVnYWN5LXRydW5rCiszNjY5NCAxOTU2NTUyOTllZDM2NDg3NGFkNjE1NjNkMmY0MWNhZDg4MzBjMTZhIGxlZ2FjeS10cnVuaworMzY2OTUgNmJlODk0MDE0YThjM2JmZDZmNjE3ZDkxNmUzNTRjNjhkYjRlNzczZiBsZWdhY3ktdHJ1bmsKKzM2Njk2IGQwMTMzOTNjN2Q5ODJmNGE2YzI0YjYzMTMxNGJjMDQ3Nzk5MDljZjUgbGVnYWN5LXRydW5rCiszNjY5NyBlZjA4ZjQ4YjYzYTFjZTU0ZTFiM2Y0NzNkMWUyZTY2NjIwOGVkYjM2IGxlZ2FjeS10cnVuaworMzY2OTggNjJjNTNiOGU0YWViMzFiNmYwNDE3MTk2NWYzMTJlMWVmNmRlZmRkZiBsZWdhY3ktdHJ1bmsKKzM2Njk5IGIzOTBjZDkxYzc2YjExZjU4NjJmNTRlM2VjMGExMWRiYzQ0Zjg1OGIgbGVnYWN5LXRydW5rCiszNjcwMCAwMThjNDMwNDViNTNlNjM4ZWM4OWM3OTk5NTU1YzAyMjAyYmY3NDg5IGxlZ2FjeS10cnVuaworMzY3MDEgMjkyOWZjNTRiNDlhNWQ0N2I4NWJiNGZhYjVkODQ4Y2Q3MjcyYTJhZCBsZWdhY3ktdHJ1bmsKKzM2NzAyIGNhMWFlYjhhYjM4MDJjYjI3Y2E4Y2EyZDk4ZDJkNDdmMzMyYTQyOTQgbGVnYWN5LXRydW5rCiszNjcwMyBkM2Q2MDlkNjU3ZmQyNjlmZGM3Nzk1MmYxNjdhODJkY2Q0MGZhYTVmIGxlZ2FjeS10cnVuaworMzY3MDQgNTEwZTllMmIwODE3NDYxMTBlOTYyZDBhOTRjNjQ3YzQ3ODczNmM0MCBsZWdhY3ktdHJ1bmsKKzM2NzA1IDI2YjMwNjg5NGI5ZWI0NjEwYzlmNDg5NDFhODM5OWI3ODBmYTQ2NTUgbGVnYWN5LXRydW5rCiszNjcwNiAzMzFlNjBkOGNlNmRhMTliMTY4ODQ5NDE4Nzc2ZmVhMDk0MDc4N2VjIGxlZ2FjeS10cnVuaworMzY3MDcgZTI4Yjg3MzNhNjZkN2RlYWVhNThjNTBhNzY3MDMxODQ1Y2JhZWE4NiBsZWdhY3ktdHJ1bmsKKzM2NzA4IDg4YTFkODZkNDQyZTgxMTRiOTc3NDcxM2ViZjRkYjhkYmNhOTAzYTggbGVnYWN5LXRydW5rCiszNjcwOSAyYWE3YWVmNGU0MDMzYzM0MGM5Zjk4N2UwMTIyZWIzYzUzNjk4MzgxIGxlZ2FjeS10cnVuaworMzY3MTAgYjMyM2JkYmFjN2U0NzcyYjhhYzc2ZjYyNzM1ZmE1N2I1YmQ4NGUzMiBsZWdhY3ktdHJ1bmsKKzM2NzExIDFiZTQwMzNmODQ5ODA4OTFkNGViMWU3ZmMxYzY0MjMxNzJhODI2ODEgbGVnYWN5LXRydW5rCiszNjcxMiBjN2UwM2NmODMzM2U1YTNhOGNjZmU5YTBlZTg1OTQ2NzYzMzA3ZTAxIGxlZ2FjeS10cnVuaworMzY3MTMgMjA5NWNiNTk4MTg4MzRlYjllYjQ2MDMzNzNiYmNjMGM3MTBhZmNhYiBsZWdhY3ktdHJ1bmsKKzM2NzE0IGI4YzJhYTJiZTE5YTMxNDQxYjI1NTUyZjhlZDJlNTE5ZjA5MTY5YTQgbGVnYWN5LXRydW5rCiszNjcxNSBhOWIyNWMyMzA3MzI3MjlmMmNmYmI5MzJiZDk5MTVjM2ZhNTRkODg0IGxlZ2FjeS10cnVuaworMzY3MTYgNjg1YTk0OGIzYmM5Y2I1ZDU5NGQ2Y2ViMjg4Mjg4YzNlZDU0ZDhhNCBsZWdhY3ktdHJ1bmsKKzM2NzE3IDUxZDdhMTIyNDRhZjMxMzgxZmVkNzVkOTQxNDI4MWYwOTA1OWNjZTMgbGVnYWN5LXRydW5rCiszNjcxOCBkMDQ5YTFmZTI2NzYzZmFkNzA2YTQ0MzEyM2VmNzE0MTYxZmZiZTAwIGxlZ2FjeS10cnVuaworMzY3MTkgNjNhZDZmNjkyNWM1NjhkNGZhYWY5M2E5ZTlkOWI2YmNmMjk0MjVkMyBsZWdhY3ktdHJ1bmsKKzM2NzIwIGE3NTgxNWUzMTU0NTEyNjRhYmNkZDliMmMzNWMxZTVmYWI4NDFjZGYgbGVnYWN5LXRydW5rCiszNjcyMSAwZGM4ZmZhYWMwMzY0NTNlNjlmZTNiMDVjZWQ4YTg3NWExYTczZGY3IGxlZ2FjeS10cnVuaworMzY3MjIgZGFlYzJkMzExZGVmM2EwMzMzMDA3OGRhMmJlOWUxOGFhYjAwZTgxOCBsZWdhY3ktdHJ1bmsKKzM2NzIzIDg0ZWZhMDA1NDE5YWFlMjdjZTgxMjZjYjA1OTQwZGVkMzc0YjIyMDAgbGVnYWN5LXRydW5rCiszNjcyNCBiOGUxMGFjYjRlZmI2MjIyNjBlZGU3ODlkODhkNTFlYzA5MjMyMjU2IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3MjUgYWM3M2Y2NjYyZTExN2MyYTQ0ZmRmZjdmNzY4OWYyZTZlZjc5N2JmNCBsZWdhY3ktdHJ1bmsKKzM2NzI2IDMwZDg2ZTM1NmJmMjRmNzE0YjEwZmRjZTNlNjk1MzkxN2IzMTg0MjkgbGVnYWN5LXRydW5rCiszNjcyNyA3OWM0ZTgyZWU5OTdjOGY0MTAwZDkzZmI4NWU0MDk3YjA0NWEwODJhIHJlbGVhc2UyMy1tYWludAorMzY3MjggMzNiOGNlNjYyMDJlYzkxOTdiY2JmZjBhY2YyZGFlMTc3NjQ0NzEwZCBsZWdhY3ktdHJ1bmsKKzM2NzI5IDkxNDZlMmVhM2JkNTBjZDU2MWQyMmNlMzUxZjhiYzQ4ZjBjNjZmYTMgbGVnYWN5LXRydW5rCiszNjczMCBmNDEyZmEyYjNmZGVmN2M5M2RkZDNhZjU3ODMyZWE0NTNmZGQ5ZjY1IGxlZ2FjeS10cnVuaworMzY3MzEgZDRkZDdiODJjYzc1YmI2YjViOWE1NThkM2NhODM0NjRjNjk4OGUwZSBsZWdhY3ktdHJ1bmsKKzM2NzMyIDY1ZjExYThkN2M4YjM5ZTc0MTJlMjJlODAyMDhkYzBiMTAwOGFjY2YgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjczMyBlMjI1NzRiZTg3NjQ5YTQ3ZjVhZWE2NGFkYmRhNmU2MTdjZmU1MDg3IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3MzQgNGNjZTAwMDQ3Zjk3NDk4MDZmMzM1ZWRkMjA1M2VmZTRkY2NmMjRmYiBsZWdhY3ktdHJ1bmsKKzM2NzM1IGQ2NzRkNzhkOGRhNjY0MmZlMTgzZGNiNzc4NzIyMmY2Y2VkNTRhMjIgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjczNiA2ZDE2YjA3YWRkYzNhNmQzZjQyMDFmOGUyMTQ1ZTljNjlmNWUwNjU1IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3MzcgNTQ2NzE3MzZhMjllNGU3NGQwY2Q0MDhhZDQ2OTFkYWFmOTcwYzhiYyB0aW0tZG9jdGVzdC1icmFuY2gKKzM2NzM4IGY1M2I5MDFjOGFmZThiZjIxNWRlNDc3NzYxZjJiZTk2NGVjYzJjYTYgbGVnYWN5LXRydW5rCiszNjczOSA2NTMxOTYwN2JlZDhhMTg2YWFkMjY5N2ExNmYyYWFiMWE0NGRkZjQ1IGxlZ2FjeS10cnVuaworMzY3NDAgNjZjNTU2ZjA5MTYzN2QxOWVhY2MxZjcyMmU1OTM1YTNiZmE5Njc0ZSBsZWdhY3ktdHJ1bmsKKzM2NzQxIDE1MzM3MTljNjEzODM5ZTQyYTdlOTVkNDg5NTM3Njk0OWRkMjRhOTAgbGVnYWN5LXRydW5rCiszNjc0MiAzMjlkNDkwNmMzM2ZjN2QzODgyMzkyZjcxOTBjNTY2Njc1MjZhZThjIGxlZ2FjeS10cnVuaworMzY3NDMgODkxNTlhMTI2OGNjZGU1YzFlYjZhNGUyOTllZmY2YjZiY2RmYzQyZiBsZWdhY3ktdHJ1bmsKKzM2NzQ0IGNhYzVjOGYzZTk5MGYyZTc5NmZmYzY3ZWJlZGE4OWQ1MjBmZmUxYjggcmVsZWFzZTIzLW1haW50CiszNjc0NSBhOTg1NmU3M2UzMmQ0MmQxN2Q0NWY2OTk5ZmVjZjYwYzg5YTlhODc0IGxlZ2FjeS10cnVuaworMzY3NDYgZmY3NzcyNzU1NWFlNTEwNDI5ZTA1YjZjYTRiOWFkMDg5YzI0YjY3YyBsZWdhY3ktdHJ1bmsKKzM2NzQ3IDQxZmFjYzNjY2RkMzM5Yzk0Y2UyYmU2YjhmMTg3NTRiYmEzYjc3ZWEgbGVnYWN5LXRydW5rCiszNjc0OCA3ZTc0NTdhNjliNGQ4MWRkZWViOGQwNDAzMjg5ODM0ZWFmYjVjYjQ1IGxlZ2FjeS10cnVuaworMzY3NDkgMjViNjY5ZjRiNTZjZjYyYzNiMGMzZjY0MGJjNjczZmRmZTBiNDZkNiBsZWdhY3ktdHJ1bmsKKzM2NzUwIGJkYTk4MzA0ZGViNWQ5NGY4NTI1MDliOWRkNjk0NWM2YzhlYmJkYmUgbGVnYWN5LXRydW5rCiszNjc1MSAzODI0ZmEyOWJlNDljYzFjMWI3OGRjMzM2NTM3MzI5MjFjNTY0OTA3IGxlZ2FjeS10cnVuaworMzY3NTIgNjkzNzAyNTMxMTViYTc3YmQ3ZTY0OTA0NjdiOGEyZWM0OWRmODJhNiBsZWdhY3ktdHJ1bmsKKzM2NzUzIGYxYmJmMTQ3ODEwYjI5NDYzNWE2ZjBhM2NlOWNiMDNmYTQyNDUzMmQgbGVnYWN5LXRydW5rCiszNjc1NCA5MzY3MTJiMzFiZWRjOGEzMjU1MjUzNzliNGQ4ZWIzYTkzOGU0NzFjIGxlZ2FjeS10cnVuaworMzY3NTUgNjYzYWQzNDk1MzRiMDA4NGQ3YmRkYzA4ZTlhYmJlZjMzOTkzODYxMiBsZWdhY3ktdHJ1bmsKKzM2NzU2IDVmNThmY2Q3YWNjZjYyMjE0ZjMxNGRiY2Q4NWU5MjE5MTQxMmJiOTYgbGVnYWN5LXRydW5rCiszNjc1NyBjMzFkOGYzOGZkN2Y2ZjFmZDRhZDRiZjAwZDQ0YzY3Yjg0MTIyOGU2IHJlbGVhc2UyMy1tYWludAorMzY3NTggY2U0ODhhYTA0ZjI0ZWEzNjhkZGY5YzExYTQwMDZmOWUzMzhmNDA4ZiBsZWdhY3ktdHJ1bmsKKzM2NzU5IDhhYzRmYWEyODJlMGI5Y2YyOTE0NGY2NzdiMjVhYzdhZDE3NTQyMTggbGVnYWN5LXRydW5rCiszNjc2MCA1YzIxNDlmMzZjM2VhYjZjYTA1NTFjM2U1MTA5MTBjMDBiNmQxMmFmIGxlZ2FjeS10cnVuaworMzY3NjEgZWM3MWFlM2JjMmRkYWY1ZWU4ODNjYzE5N2UwMjgwMzEyZDAxMGNlNSByZWxlYXNlMjMtbWFpbnQKKzM2NzYyIGJkM2RkNmIzZmY5NzI2ODgyODZmZjUxNWRkMDM3YjBiODZkNThjMTUgbGVnYWN5LXRydW5rCiszNjc2MyA0NWExNzBjNGNhNTZjZWQyNmZmY2ZhNDc5N2Q1YzRhNTFkMmQ0NGM1IGxlZ2FjeS10cnVuaworMzY3NjQgOTFmYTgwYTY3ODExYmNkZTUwZWI5MDA2YzFkMDU5OThiMDRiOTAzZSBsZWdhY3ktdHJ1bmsKKzM2NzY1IDJjMmY1Y2ZlZmE2MDU2ODNlZjdkMTQ2YWFiYTgyMmQ0ODJhYmE2ZTIgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjc2NiBkZmRlMDg1MjI4ZWVhNTBiNDZmYWQ2NTdkNWViNjhjZGU3ZmU0ODE5IGxlZ2FjeS10cnVuaworMzY3NjcgZjA3MWE1NTNhYWU1OGE0NTNmNjYzOTQ2OTZkNjM3ZjUwZjhjOTNiYyB0aW0tZG9jdGVzdC1icmFuY2gKKzM2NzY4IDQ3M2NiMGVmODJkMjQzNDZmYzUxMWM4NDkwMWUyMjZhYWRjZDFmZDAgbGVnYWN5LXRydW5rCiszNjc2OSAyNjYzYjRmNTM1YjdjYzU4YTVhM2NkYjQxOGFhNzFjNTViZTUwNjFiIHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3NzAgNjUxMTg4YTY2MzhkYzNmYzQ3ZTFiMTI2ZjcwZGI0OWUxMDZiZTVkZSBsZWdhY3ktdHJ1bmsKKzM2NzcxIDhjZTM0NGY2Yzk1NGVlYzhjZjExMDhlOWQ1Y2RjYTIxNTk2OTExYjMgbGVnYWN5LXRydW5rCiszNjc3MiA1YWE4NTA5N2NiMmNkY2M5NmE4NGY0ZDRhZTQxZDQ4N2UxMDYxZDQ1IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3NzMgNTgyZWI1MWI4NDkyMTQ1MDZiMDFmY2QzMGM4MTk1NGFkY2Q2MmMxNyBsZWdhY3ktdHJ1bmsKKzM2Nzc0IDIyZGVkMzA5NjQ4YmNiYTMzOTMyNTQ3Yzk5MjBiMjc3ZTlmY2QzYmQgbGVnYWN5LXRydW5rCiszNjc3NSA2NmRjMjExYmY1MDcyMWFkMDFmNzEzZWZlZGMwNTg5YjhhZThhNzYyIGxlZ2FjeS10cnVuaworMzY3NzYgODRiNDc1Nzk5OTE4MmUwZmNjOWE1MTFlMjQ2YmZmYzMzN2EyYmNkNyB0aW0tZG9jdGVzdC1icmFuY2gKKzM2Nzc3IDYzZGY0Y2I0OTJhMTZjNmFmYTlmZDU3M2Q5MzNmYmIwZDIwODE5NmIgbGVnYWN5LXRydW5rCiszNjc3OCA5ZmI1MTM4ZjU4ZGQ4MWI5MThkMjZlMzM0Y2YzZjJhYTQ1MzNhZjcyIGxlZ2FjeS10cnVuaworMzY3NzkgZjYzZDQ1ZmQzZmNlNzQ0ODk0OTJmZjIxODBmNjg1MjBjMDZmZjU1ZiB0aW0tZG9jdGVzdC1icmFuY2gKKzM2NzgwIGUwMjc5MjExMjI4ODlhZThkYmZiOGY4Yzg2NmEzMGRkNmVlZmE5OGIgcmVsZWFzZTIzLW1haW50CiszNjc4MSA5ZjhhN2JhMjEwNTVlYmUwZGEwZDYwMzM2OThiMzUwNzUwZjUwM2U0IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3ODIgOGIzOTBkZjdhZjg3MzczMmQ5Y2Q2NWY4ZmJhMDZmNWJkMDk5M2RjZSB0aW0tZG9jdGVzdC1icmFuY2gKKzM2NzgzIGU0ZmVlZGIyMDVmMmQ2YjhmZDAwNjRmNjMwODEwN2UyOWJmZmYyNTYgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjc4NCAzMTQ0MjJhMjhlM2ZiODU4YjVmNWU5NjM4Y2NlMzAxZDUxNzJiZTc5IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3ODUgZDc0MWNiMzc3ZjgyOTVmZjEwNjMwZWRmODEyNGQwOWYwNDVkOGE4MCB0aW0tZG9jdGVzdC1icmFuY2gKKzM2Nzg2IGZjZDY5MGM4YjJjYTZkODQ1NWUzMjkxMzc4YzZjNzdjNTRjZTZiZmYgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjc4NyBjYWZkN2U0ZTc3YWQwNzgyYjNlMDBhODY0NjgwOGVmNWIwMzE5ZDk3IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY3ODggZmJiNTQyOGViZjQxMDllNmFhNzhjMjUwNTdlYjJkYzFmMGE0YWFmNCBsZWdhY3ktdHJ1bmsKKzM2Nzg5IGRiMzhjMWU4Mzk2NTJkMWVmNTlhNTYxZGYwOTQ1ZWUxMDM3N2U4NDQgbGVnYWN5LXRydW5rCiszNjc5MCBiNjM5Y2I0NWIxNzMxM2RlZjIwYzcxNzE4NWM4OTI4OTk5YWE2MTUzIGxlZ2FjeS10cnVuaworMzY3OTEgOTUzY2U1YWYxMGEzMWIyOTM1ZDMzOWE5OTQ0NDdmODIwMDMxZTkwNCBsZWdhY3ktdHJ1bmsKKzM2NzkyIDllYmQ0MDU2ODNjZDg1NzI0MTVmOTJiOTlhYjc1ZWVjZjExY2MyMzkgbGVnYWN5LXRydW5rCiszNjc5MyBhZGZlN2QzOWEwNDlkNmEzYzkzYjQyZmY5ZmI5MjY5NTc4MmRhZWU3IGxlZ2FjeS10cnVuaworMzY3OTQgMDI0ZmYwYWI0NTg4MDMzNTVhM2QzNjc2YzA3NTQxOWFmM2VhMTA0MyBsZWdhY3ktdHJ1bmsKKzM2Nzk1IGI1NjQ4MWE5MDUxOWU1YTIwYTE4ZDUzM2FhM2ZhMjUzMTRlZDYyNGIgbGVnYWN5LXRydW5rCiszNjc5NiA5NzFlNTE0MTM0NDdjMmU4YmQzYzZhYzViMTY3MGUyZjY0YWRkZGUxIGxlZ2FjeS10cnVuaworMzY3OTcgMmJjYmYzZmI3MDIxZWZiNjQzMDVkYTc0Y2FhYmNmZjcwYjY5NDYzNiBsZWdhY3ktdHJ1bmsKKzM2Nzk4IGUyZmVhMjJlMGM1MTNkNjFiYzk4YTU2OTEzMTljNDAyM2RhM2QzYTMgbGVnYWN5LXRydW5rCiszNjc5OSAwNzFkMzM4MTc1M2I2MGQyMjc2NmQxN2ZiODcyOGE1NDk5NjAyZmQ2IGxlZ2FjeS10cnVuaworMzY4MDAgYTlkNTkxOTdiMTYzMWRkNGEzYmVhMGVlMDY4YWFlMGFiOTc4Y2JjOCBsZWdhY3ktdHJ1bmsKKzM2ODAxIDE1NmFjNmRlOTYyNWM0N2RmMTViYjExMjRkMjBkNDRlNWVlMzY2NjcgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgwMiAwYmYwZjRiZWExNDQxNjg5YjgxYTM0MTNjNGM2OGEwOTAxMjNlMGUyIHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY4MDQgZTljNjQxNGRiZGI2MTUzNzM1Mzk5OGU4Njc2NzA1N2ZlMTU0ZDdmZCBsZWdhY3ktdHJ1bmsKKzM2ODA1IDJiYzMzMjYxNmNkNmY5ZmUxYWM3NDJmMjUyMWE5ODEwNWE2ODdkYzcgbGVnYWN5LXRydW5rCiszNjgwNiA3YWFhODUyZmE4NTZmYTMzODQ1MjZjNTM0M2Q1ZTBmZmQ2NmI5MDkwIGxlZ2FjeS10cnVuaworMzY4MDcgNWU4ZTMwOWMwYmIwNjk3M2Q5N2JiYTYxOGU2MDcwODFjYzY1NGIwZSBsZWdhY3ktdHJ1bmsKKzM2ODA4IDM0MWI3YWRiYTk0NDdhMThiY2UzODUxZGY0M2UyZmQwNmYwY2E1ZGEgbGVnYWN5LXRydW5rCiszNjgwOSA5ZjY2MjU5YWVjZTMxNjVjYzJjNzBlMGEzMzU0NDIzYmM0MGRiZTBlIGxlZ2FjeS10cnVuaworMzY4MTAgOWFjNjQzNTQ0NjI5YjA0OTc3YjdhOWMwOGE4N2JhZTkzN2ViZTdkZiBsZWdhY3ktdHJ1bmsKKzM2ODExIGVhMzM4YmFhYjg1OTlkNzE1N2YwMmY0MGRiZmIwY2Q4YWZmYmM1NDEgbGVnYWN5LXRydW5rCiszNjgxMiA5ODIxZTM4OGI1OWQ5M2YzOTZiNzM3N2ZkN2VlZjU4ZTlmOTQ0OGVlIGxlZ2FjeS10cnVuaworMzY4MTMgZmZhYTE3NWQwYWEzMzdmODg0Mjg0NzQ3MWFjYmRhNTllY2ViMjRhOCBsZWdhY3ktdHJ1bmsKKzM2ODEzIDA1NWZjNjk1NWYzYzY1MjJiZmViN2VkNGM2NzFjOTdkNWJhYWFhYzIgbGVnYWN5LXRydW5rCiszNjgxNSBlNmQwMDkyNzZjNTQ3OTYxYTQzMGI5OGJiYTEzNGJiZDQ4OGExOTY4IGxlZ2FjeS10cnVuaworMzY4MTYgM2U5MDljNTRlMzBjOTFkZDI3N2JlNzVkZTE5ZTk3YzRmM2U3OTY3NiBsZWdhY3ktdHJ1bmsKKzM2ODE3IGNlYjFjM2YxYWM4YWJiNDYxYzUwZWRkOTk4MTcxNTRjZmVlNWYwMDggbGVnYWN5LXRydW5rCiszNjgxOCA1ZjRiZmJlMjZhNGRjNDY0ZWZkNmYxMzAxZmJhZmEwZmQ2NTQ2ZDMxIHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY4MTkgODQ0MTBhMGQ2ZWE5NDEzNDAxZWE1OTZiNGMzZWZmZmVlZWU1YzEzYiB0aW0tZG9jdGVzdC1icmFuY2gKKzM2ODIwIGVhODc1NTNlMjU2MDlmOGFmYjA2ODMxYWY2MDM0NjAwNjRhZmYxMjMgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgyMSBiZDQxMzY2N2FjMTZiNjdkZDJkMzM5NTU0NzdlOThmZmNjMzI2MDk0IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY4MjIgMmU2N2MyNzA4NjcwOGIxMWJhODhmNjIxMzc1ZGNjODQwNDc0OGM4MiB0aW0tZG9jdGVzdC1icmFuY2gKKzM2ODIzIGI2ODkwZWE1ZmRlMGY2ZTA1MjljZmE3MmQ3NjI4YjBhOWI1OGNjNTEgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgyNCA3OTYwMDY1OGJlNjg5MmE5MDU3M2NlYjcxN2I5NmQ3ZjFmYTk2Y2E2IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY4MjUgYmU1ODRjZGE1NDdkNjQyYzg5YmQ5Y2Y1YTU3NTFjNGU4YzIzNmMyZiBsZWdhY3ktdHJ1bmsKKzM2ODI2IGY3ZDUwZTkxYmVmMzllZGQ0YTJlNmUyYzVlNDc5NjU4YTkzM2U5ZjEgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgyNyAxOTc1MTdkODA5OWU0N2UwMDA1NDNiNTQ5YWVkZGRlYjU3MDU1Y2ZjIGxlZ2FjeS10cnVuaworMzY4MjggNGM5ZWZiM2E2YmIzZjYwYzQyMGE4NTUzN2M5M2E5NjUzYzkyZDhkNCB0aW0tZG9jdGVzdC1icmFuY2gKKzM2ODI5IGMyNmE0ZmQ2OTc0NGFkYzRjY2VmZWM3MWRkMTk3YWVlMzBiNWQ4MTAgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgzMCBmYjZmZmQyOTBjZmIzOWQyMWFmZjFkNzIwODJkZjZjYzNmZmNlMWU5IGxlZ2FjeS10cnVuaworMzY4MzEgYWFjZGQwZWNhMWViNTYyZTM2NWRhNTI1ZmFiZjA0Y2UyYWY4YjEwMiB0aW0tZG9jdGVzdC1icmFuY2gKKzM2ODMyIDliMTg4MTU4MTgxZjdmMTM2NzU0NWRkMjg1NmFmOTVjNTJhMTMzYjcgbGVnYWN5LXRydW5rCiszNjgzMyA0ZjAxODk0YWI0NThkYzc3YWJlMTY5MzU0OTc4ZjQxYmIyNDIwZTYyIGxlZ2FjeS10cnVuaworMzY4MzQgNDBjM2E1MWNiNzFjZDM1NDc2MTIxOGZhNTFkMWMyMGViY2QxYWNkMiBsZWdhY3ktdHJ1bmsKKzM2ODM1IDM2MDA0MGQzZDRmYWQ4MjE3YzExNjc4ZjdmZjg1NmVhMWQ5Y2VhNmQgdGltLWRvY3Rlc3QtYnJhbmNoCiszNjgzNiA1Y2FiMzM2MTgyOTMwMDRiNWM1NTJkOWVkMDY4NzljZThiMTc5MmY0IHRpbS1kb2N0ZXN0LWJyYW5jaAorMzY4MzggNjc4ZDQwZmNlMGIxNGE5OWU3NjMwZjUxMWI4Y2UwN2NhMzA5MTdhZSByZWxlYXNlMjMtbWFpbnQKKzM2ODM5IDVjYzU1ZDM2YmIxZGNmOWIwODVkM2M1YTllYjFiMDViNzA2YjJiN2YgbGVnYWN5LXRydW5rCiszNjg0MCBlODllZjBiZmExZmY4Y2Q0YjEwYTQyZTgxNDJhMWEyNzcwZWJjOWU3IGxlZ2FjeS10cnVuaworMzY4NDEgNTBjMTIyYmM3YWFjYTM4ODJjNzQ3ZjhlNTVkNzI5OGVhNjA2ODY2NCBsZWdhY3ktdHJ1bmsKKzM2ODQyIGFlODc3MmQxNWE1ZmE3MTYwYTM2NjAyOWU3YzBhMTk0ZTVmNWQyN2YgbGVnYWN5LXRydW5rCiszNjg0MyA3MjZkYjU4NTQ3NDYxNGYxMTQwMDE0ZTQ4YjYyZjZjZDM4Zjg3Y2RmIGxlZ2FjeS10cnVuaworMzY4NDQgNGIzZjhkZDkyNjlhZTA3MTkyYTliNzQ2YjU0YTJmYjQyMjI0MTY1NyBsZWdhY3ktdHJ1bmsKKzM2ODQ1IGY1MTk4OTZjZjVkY2JkZTM5ZDU0Mzc2MTc4ODkzOGE3YTEzZDJmYmIgbGVnYWN5LXRydW5rCiszNjg0NiA2MWMwMTcxNTc3NTY4MzQ0NWZhZGRiZmExZTNkYmVhZmFkMjM2OGU2IGxlZ2FjeS10cnVuaworMzY4NDcgOGY4NzQ0MGM2ZTgwY2QxMmVmOWE3OGIzNjE2NWIyZmMxM2M3M2YxYSBsZWdhY3ktdHJ1bmsKKzM2ODQ4IGE4YTQ4NjMzOWQ4MDY0NmY1YzRkM2QyZjdmNWQwNTljMTM3MjA1YjkgbGVnYWN5LXRydW5rCiszNjg0OSAyZWEwOTY2MmEyZDQwYjVjYzEzMTI3Yjk3ZGE4Mjk2Njg5YTYxYWI0IGxlZ2FjeS10cnVuaworMzY4NTAgNDQ0NTAxMjljZTM1NmU1ZjBlOWRlOTk2MzVhMDZiZmQ0OWQ3MmFlNyBsZWdhY3ktdHJ1bmsKKzM2ODUxIGM5YWU5NWQ3N2E0MjdmOThmNDgxZmNhNWE5ZThjZmU4NWY0YzE0OTQgbGVnYWN5LXRydW5rCiszNjg1MiBiMzRhOGRjM2NjYWVjZjJjNTg3MWY0NGE4OWY2NzM0OWExZTM2OTJlIGxlZ2FjeS10cnVuaworMzY4NTMgNGUyYzY2MDIxYmYzODBkMjQzMjYyNjM3YWJkMDI1MDM0YjI3MTRkMCBsZWdhY3ktdHJ1bmsKKzM2ODU0IDQzZmJmMjlkZDgzYTk3OGM4MTRiYzRkZTBhYTZmZmIxMjYyZTgwYmMgcmVsZWFzZTIzLWJyYW5jaAorMzY4NTUgMjUyYzY1NDY5MTE0Njk1YzZhZmY3ZjQ5YWZjYTA1Y2Q1YmRkNWU1MCBsZWdhY3ktdHJ1bmsKKzM2ODU2IDFhYTQwYTA4OTgyZmE1NWVmZjIwOGFkNjJhNzkwMDU5MmMzYTgyMjMgbGVnYWN5LXRydW5rCiszNjg1NyAzMDAyNTk2NTMyNGE1ODFlMDcxYzE3ZTRlYzVkMGNhZDcxODkzZDBiIGxlZ2FjeS10cnVuaworMzY4NTggMzA5YmViZWRmYzk3YTFjYzIzMWNiMjdjODZmZDZlM2Q5YzRmYzU2OSBsZWdhY3ktdHJ1bmsKKzM2ODU5IDJjMTE2ZTdmZjE2MzZiZTBjYWYzYzBkN2Y4N2ViYWE0MmM5YzFiYzYgbGVnYWN5LXRydW5rCiszNjg2MCA0NDFhYjNhZDZkMDFhMGNiNjJjNjM4ODgwNTg3ZGNjOTMyOWQwODNlIGxlZ2FjeS10cnVuaworMzY4NjEgNGJmNjg1NGRiNjU2ZWQ5ODBjMzM1ZmRmZThkMzc4ZmFhNTY3ZDM4MSBsZWdhY3ktdHJ1bmsKKzM2ODYyIDRmZDU5NjUxZmUzZjlhNjI2YzllYWJlMjE4NTZlMmVjODc5NWU2NjcgbGVnYWN5LXRydW5rCiszNjg2MyAzOTZkMDExZjgzNDhiYTY3YTEyYjU5ZTU0MmZlMTBhYTBjZGI3OThkIGxlZ2FjeS10cnVuaworMzY4NjQgYjVkY2ZlN2E0MTU5NjBhYjBmYjNjMzJlMDVlZjc5ODkyN2JkZWY5OCBsZWdhY3ktdHJ1bmsKKzM2ODY1IDg2N2ZlZjJiNTA2MGFjODIwMWM5MTZkOGJiOWYwZTYzM2RhYmE3NjQgbGVnYWN5LXRydW5rCiszNjg2NiBmYTNkMDFmMGZjNDQyMTUyZDUyYjQwNmY3OWVjN2YxNDBiNDQ1MmNlIGxlZ2FjeS10cnVuaworMzY4NjcgOGQ3MDdkNDljYjliYzdmOGJkNmQ5NzYwYTQzZGNhN2VjZTk1NDBiMCBsZWdhY3ktdHJ1bmsKKzM2ODY4IDlmYjJlMzBmMjZiZWU1ZWUxZTg1NjE2NmZhZGIyODYzNGNiOGU0ODMgbGVnYWN5LXRydW5rCiszNjg2OSAzNjdjZTUxNmFkMDU0YmQ4ZWU3MjgwNGFiMGY0YTgwYTQwNjY0ZDkxIGxlZ2FjeS10cnVuaworMzY4NzAgNDhjYjRlZDQ5NGE2NTgxMDIxMmEzOTU1NzE5ZGMyNmQzOTM3YjAyMiBsZWdhY3ktdHJ1bmsKKzM2ODcxIDhmNmQyMDVkNTMxYmM5N2VjY2MwZGYyZTFjODMxOWUxZmEwOWQ1Y2EgbGVnYWN5LXRydW5rCiszNjg3MiBmZjE3NjI0YjI2NDI5MjYxOWYyNDBkMmY4MjEzYjg5YTVjZDc3MTFlIGxlZ2FjeS10cnVuaworMzY4NzMgYjBlMGE1Mzg3MGI2ZjlmODA5NzAyN2Y0MTRmNzIyNjU1YWZkZDJlYiBsZWdhY3ktdHJ1bmsKKzM2ODc0IDhjYThmZWJjMGEwZDc1MDA5MGM0M2I5ZTMzNmVkM2MxMTdjNGVlNTYgbGVnYWN5LXRydW5rCiszNjg3NSAwYmViNzU2OTY1ZGY5Y2Q0NjU3Y2QyZTkzZTBjZTMwYTA5MWQzMTUxIGxlZ2FjeS10cnVuaworMzY4NzYgZTViOWU4NzJhN2QzYmEyODU0MjY5ODFlZDExYWQzMGM1NjZhNWQ2NCByZWxlYXNlMjMtYnJhbmNoCiszNjg3NyA2YWEzMWQ3NWM0Zjk5MGQ5NWI4ZTZkNWNjZTZjYTJmN2Q0OGM1N2E3IGxlZ2FjeS10cnVuaworMzY4NzggNWM5NDBmOThlNDY1NTljOTIyZWI4YTE1ZWJiY2RmMjBkMTFkZGNjZCBsZWdhY3ktdHJ1bmsKKzM2ODc5IGFiOTNhZmY0YzkwYTg0YmYwYzAxNTMwOTk0NDVlMmZiNDMwMDQ1ZjggbGVnYWN5LXRydW5rCiszNjg4MCAxZjM1OGE2YjRiYzMzNmU1NzA0NTE0YjI4MjdlYTE4NTliYjVkMmYzIHJlbGVhc2UyMy1icmFuY2gKKzM2ODgxIDIwNGQyOWFjYmEyODAxMDEwYWZmYTdmMzhiZDYxYTNhZGE4ZjIxNjMgbGVnYWN5LXRydW5rCiszNjg4MiA1MjE4YmZmNTY0NDk0ZjZmMTBhNWIyYWQyMzE2Mjk0YzVhZDI0NTA5IGxlZ2FjeS10cnVuaworMzY4ODMgYWQ4MTgzMzhmOGMzMzA2NTY5Y2JjNjM2NjkyNGZkNjcxNzNmMWMxNyBsZWdhY3ktdHJ1bmsKKzM2ODg0IDUzMGMwMmI4M2VlYTVhZDE2NWI2YzhjODQwNjYwMmYxYWM2MTNjYjMgbGVnYWN5LXRydW5rCiszNjg4NSAyYzkzZmNlZWU0MmQxM2RhZjA1NGU2NmY3NDBmYjA2NjA4NWM4ZmEzIGxlZ2FjeS10cnVuaworMzY4ODYgNGY1ODhmNTdhOTNiMDM1YWQwM2I4ZDA0NjA4MzlmZWRjYjdmYTU4NyBsZWdhY3ktdHJ1bmsKKzM2ODg3IDg4OTdlNzdjZDc5YTg0MWJmZTc3NWM1NzFjMTZkMjBjNTUwOGFmZmYgbGVnYWN5LXRydW5rCiszNjg4OCA5NDY0NDE1YTFmODk0OTkxOTkyNTdkOTA3OTQwNTMzMjY5YmIzNzhlIGxlZ2FjeS10cnVuaworMzY4ODkgNDliODA4MzIwM2U2YmJjMWY5Nzk2MTFjODE3MzRjM2RmZTE1YjhiYSBsZWdhY3ktdHJ1bmsKKzM2ODkwIDlkZGZhNzRjYjI1MGY0OTZmODE0MzJhYTc1ZDlmNDk1NDAzNzBlNDkgbGVnYWN5LXRydW5rCiszNjg5MSA4NTAwMmNmNGUyM2JmNTBkOGE4MWVkNTdhOTU2YTNmZTE1NjM2Y2FjIGxlZ2FjeS10cnVuaworMzY4OTIgMmU3Yjc4MDMyNzAyYzdiNmJhNmQ1NjdlZDE4N2VlZjc4MTE5MjhjOCBsZWdhY3ktdHJ1bmsKKzM2ODkzIDg2MDdhYzJmODFjODM5MjBkZDQyYTQ5ZDA3Y2MyMjRlNGYzYjM3OTcgbGVnYWN5LXRydW5rCiszNjg5NCAyNjc1MmRmOTM5MTM5MDMzZmFiNmMzODczYjBjNDllNWY2ZGI3NTJjIGxlZ2FjeS10cnVuaworMzY4OTUgMTY2MGE2OGZhNmE0MDdhNzNkYzdjYWM3OTE2YzliYzFlZWIzZDJkMCBsZWdhY3ktdHJ1bmsKKzM2ODk2IDdjM2Q1Njk1MjJjNDkyYWVmN2UzOTkzYjU1NDk4NTkxOGUxMmI2N2IgbGVnYWN5LXRydW5rCiszNjg5NyBiNjY5YTYwOTdiYTg5YzgyNmQ0MGIwM2FjNjFlODExYmNhNDM0ODQ3IGxlZ2FjeS10cnVuaworMzY4OTggZWUzYWFhNzkxODQyOTJkODAyZjViZGU5NzUxMTc2ZmM1NjA4NjEzZiBsZWdhY3ktdHJ1bmsKKzM2ODk5IGY2YjJmMTkyZTAzYjUzZmIzMzhiMTU0NjI5NGNhMjkzYTE1Y2FmMjAgcmVsZWFzZTIzLWJyYW5jaAorMzY5MDAgY2UyYTE5NjIwM2M1ZWNlOTI3YmVjZjA0ZTI5MThlOGU1NzU0NzlmMiBsZWdhY3ktdHJ1bmsKKzM2OTAxIDIzM2MyMjM4NThmNzdiYmFjNTJkZGI1ODU5MWNiNTc0NGQ1ZjI1NWEgbGVnYWN5LXRydW5rCiszNjkwMiBmZWUyMDM4YjhmYTlkYzgyYjA2NmQyM2UzYjAzMzQ0N2YzMzNiMjZmIGxlZ2FjeS10cnVuaworMzY5MDMgNDIwNDg4NDA4ZTBlM2Q2NDMzYzdkMDk1MzQzNDI4MWU0NTIyODQzNSBsZWdhY3ktdHJ1bmsKKzM2OTA0IDVhNGQ3N2I2ZWZhNjVlYThhZTE4Njc3YWIyNjM1Mjc3Mjk3ZWYwM2IgbGVnYWN5LXRydW5rCiszNjkwNSAzMDQ1ZjRmMzRlZjI0N2JkNTQzOGYyMGEwYTFhNWIxNDA3YTkxNTVlIGxlZ2FjeS10cnVuaworMzY5MDYgMTdmYzg4YTFiODczNTc4NGM0MmNjM2RkZDMwYjQ0NWJmOWU0OWY5MSBsZWdhY3ktdHJ1bmsKKzM2OTA3IDFkYmQwZjM0NWE3ODg2MGM0OWE2Mjc4MzY2N2YzNDg2NjJlMWM2NjQgbGVnYWN5LXRydW5rCiszNjkwOCAyNzQ5MzM0ZDcxYTQ3MTQzZTAxNTU3NzU3OTIwZTdmOWFlZDhiNjgzIGxlZ2FjeS10cnVuaworMzY5MDkgMTYzNjIxNTE3Yjk4MjU0Y2E4NTU4ZWM5OWVjNjM0NmVkNzNlMGRhOCBsZWdhY3ktdHJ1bmsKKzM2OTEwIDY3ZDI1MjE3YmM3ZjBjNDc0MjFjM2NhZmE1ODI5YjMwMjkxYmJhYjkgbGVnYWN5LXRydW5rCiszNjkxMSBjODFlZDA3OTU3NmYyYTVlN2U3MWM0NTdiMWFlODI5ZWNlZWQ5N2IzIGxlZ2FjeS10cnVuaworMzY5MTIgYzM0ODdlZjNhNjljNGQyOGEwMWRhNWUxZDcwNmYzYzFjZTJhZTc2MCBsZWdhY3ktdHJ1bmsKKzM2OTEzIGQwZWIwOThiZTI2NDhmMjU3NzZiYWM5Y2U3MWM4YzUwMTIyNzA4NTggbGVnYWN5LXRydW5rCiszNjkxNCBjNDc4YTcxYzIzODQwNDJiODJjN2I3N2JmY2M0NDRhYjc5NTgyZmMwIGxlZ2FjeS10cnVuaworMzY5MTUgNDU1NjY3MTQ2ZDRiOTllY2I1YzQ1YzQ4ZTNlYTFhMjJiMWIzYjNjYyBsZWdhY3ktdHJ1bmsKKzM2OTE2IDk4NTM3NWFjYTk3MDczMTBmMDc1NDYyNWZlZTFjZDRlOGI5M2E3M2YgbGVnYWN5LXRydW5rCiszNjkxNyAxYWYzYWQ0OWQwNmZlMGUyMjExYjM2ZjNjMTAwZmU3NWE0N2JiNzFjIGxlZ2FjeS10cnVuaworMzY5MTggMjdhZGEyNTUwOWZmMjYyNjhjZjE4NWI5MTViYzc3MjZkM2Q5ODBmZiBsZWdhY3ktdHJ1bmsKKzM2OTE5IGZiZWEyYmUzNTU2MjhiZTIzZjQ0YTZjNzJkN2MwNWQwMWQ2MzIzYmQgbGVnYWN5LXRydW5rCiszNjkyMCAyOWZhOWQ2YWZlYTAxZmQ4ZmFhNzBiNWFlNTBlNDJlOWNmYjNjNGM1IGxlZ2FjeS10cnVuaworMzY5MjEgZjBhNmVmM2E4NzRlZjhkYzVhOGRjOTNmMzMwNThmYjUzZjk2NTk1NSBsZWdhY3ktdHJ1bmsKKzM2OTIyIDVlNjlmN2M4MGVmNDI3MzM0Mzg1ZjY1MTJlZDRjNzY5YzlhYTllMWEgbGVnYWN5LXRydW5rCiszNjkyMyA2ZjM4ZTNiNjRlZjQ3MjZlZmU5ZDRlYzVjNjBmYzE1OTA5YzBmZGViIGxlZ2FjeS10cnVuaworMzY5MjQgMzFjY2VhOWU5OGE3NDZmYTBiYTkxYTk3OTFmMjQ3ZGYxODQyZjk4MCBsZWdhY3ktdHJ1bmsKKzM2OTI1IGVlNDNjYTRhMmMyMzhlNDFlNzMyMzMwY2RkOTQ2Yjk0YzFkMWZjNDEgbGVnYWN5LXRydW5rCiszNjkyNiA3NjRkMjhmYzNkMzY5OGVhOGZiZmMwMTM5YTU3ZmFhNmY0YjJmN2YyIGxlZ2FjeS10cnVuaworMzY5MjcgOTBkYTcwOTg2NDA3MjM5NzRjOGFiODhjMGVjOWViOTExMWExZTc2NCBsZWdhY3ktdHJ1bmsKKzM2OTI4IDAzMDQzYjI4OGIyODc1ODYwMDJlMDdkODFiNTlkMDY3ZmMzYmNjODUgbGVnYWN5LXRydW5rCiszNjkyOSA0NTMyOWQ5ZmRiOGQ1NDU0NzFlNDBhNzExODM3Zjg2Yzk5MjdhNDc0IGxlZ2FjeS10cnVuaworMzY5MzAgY2RhMDQ1NWJkMGEwMzE4OTAwNjk5NDJmZGI4NzQwYmQxMjkzNDgxOSBsZWdhY3ktdHJ1bmsKKzM2OTMxIDJhOGMzNzU4YzRhMTkwNmJlMzFkYTNhZWQ5MjUzZjdmYzE5MTkyYmQgbGVnYWN5LXRydW5rCiszNjkzMiA0NTFkZDQ5ZGY1MzEwOWNkNjJhYmJkOTFhYmIwY2QxNjZiMzRmMGI0IGxlZ2FjeS10cnVuaworMzY5MzMgODIxYzU1N2NhNjEyNGI1ZmIyMDU3ZGMzNmYzYjg5ZjhmOWZmYWNlZiBsZWdhY3ktdHJ1bmsKKzM2OTM0IDRlNmY0ZTllYzliM2QzYTU2NmRhZTg5NGNmNDA3MDNlNDEzYjBiZjMgbGVnYWN5LXRydW5rCiszNjkzNSAwNGQ5ZmRlMTEzMzA5NDhlMmEzZDBjYjdiZTBlNTY3MTYyZTE0ZTdjIGxlZ2FjeS10cnVuaworMzY5MzYgNGRkMTgxNWI0NGVmYWFmOTg1NjdlNTNkYzU3Zjc2ZDRiZTIxNDVjMCBsZWdhY3ktdHJ1bmsKKzM2OTM3IGJmY2M0ZTM5ZmM0NTJiMzUzMjY2NzYzNDZhYzgxMWQxZTdkMzc0NWQgbGVnYWN5LXRydW5rCiszNjkzOCA5ODFmZmY3MzYzYjkyZThlNzRkZjE3OTU0YWYyMjE2OWRjYjAxZDgwIGxlZ2FjeS10cnVuaworMzY5MzkgMDFjYzVlM2Y2Mzc1MjIxYTFiN2M5NzQyMjBhYjNkYmU4ZDM2MWY4YSBsZWdhY3ktdHJ1bmsKKzM2OTQwIDgzNmU3NzI2NmY5Nzc5MTMxNDExMGYzYjQ3MGE3N2ZlZTRhM2UwMjIgbGVnYWN5LXRydW5rCiszNjk0MSA3NDNhYmFjOWY5ZmUzM2VjYmNlZDk3MzljMTVjMGZmOWQ3ZDdmZjMxIGxlZ2FjeS10cnVuaworMzY5NDIgZDA3NWNiYTg1MWZkODZmZDk2MDk2Mzc5YTI3ODY4YzYzMzdkMTZlMSBsZWdhY3ktdHJ1bmsKKzM2OTQzIDA1OGU4NTFlNzkzZWFmYmIxMTQ4MmI5NThhYzMxOGQ2MWRkNzAyMGYgbGVnYWN5LXRydW5rCiszNjk0NCBhNzkyODcyNmRkOGY1YmQ0NGU4NGU5YjQ1ZWMzZDA2Zjc2ZjJkOTJjIGxlZ2FjeS10cnVuaworMzY5NDUgNWVhZTRjZTEwNWZjZjRjNTY0OWY5N2RiOWRmMGFiOGVmMzQ0MmY4ZSBsZWdhY3ktdHJ1bmsKKzM2OTQ2IDI0MGVhZmFlM2VhNzRkYTczNTRhOWY1ZTJkZmRjMThkOGNjYjM5MWUgbGVnYWN5LXRydW5rCiszNjk0NyA1ZjMzNTA3Y2I1NTk4MjM3MWVmYTM5MjJlMjhhZjg2MzNhNjdkZThjIHJlbGVhc2UyMy1tYWludAorMzY5NDggYWJlY2JkNjZhNjI4MGM3ZDk5Y2RlM2NhNTE5MzdiOGM1MTY4ZGYyMSBsZWdhY3ktdHJ1bmsKKzM2OTQ5IDQ0NDU3Y2I4Zjk3MDE0OTcyZDkzM2M0OTQwODI4NTRlNzU1ODkwOGEgbGVnYWN5LXRydW5rCiszNjk1MCBhZmQ1NDEyNmU5YTE5MGZhMDQwYWY0ZjRjZWQ2NmFiNTQxNDM1NjY2IGxlZ2FjeS10cnVuaworMzY5NTEgNTM0N2RhMzFmMDc2YzZjZjI3ZDQ0MDFjMGFhY2U5ZWU5MjAwNjYyMSBsZWdhY3ktdHJ1bmsKKzM2OTUyIDk5MzdkMGU2M2NhMzI1ZjQ3ZDBiM2NlMGE2M2UxYjljZTMxY2Q3YzYgbGVnYWN5LXRydW5rCiszNjk1MyA0ZmQxODUwNWZjMzVmZGQ3YjMyZmM2M2U3ZDE3ZjlkZDcyYzFiNzAyIGxlZ2FjeS10cnVuaworMzY5NTQgNGIwYTBmYzFiYWVhMzFkZjkzZWUyNTZkNTBkMTc1YjNlMGY5ZmUwOSBsZWdhY3ktdHJ1bmsKKzM2OTU1IDQ4MTAwYTAxYWM3YzA1M2E0MTc1YTg2MWVkNjdiYTY5M2UyNDI0YTEgcmVsZWFzZTIzLW1haW50CiszNjk1NiBkZmMyNWUxYjk2MDU4MzQ4YzlkMjQ0MzViZTQ3MTZiMTVjNmQ3ZThlIGxlZ2FjeS10cnVuaworMzY5NTcgMjBlOTBlNTA3OTdkZThmNWQwNjRhYzdhMmU5MjNkN2Q4YTAxODNlZSByZWxlYXNlMjMtbWFpbnQKKzM2OTU4IGIxNjZhZTJmNzczMjE0MzdlOGZkNTM2Zjk1YjczMjNiMmRmNjc5MmEgcmVsZWFzZTIzLW1haW50CiszNjk1OSBkZGQyNGQ3MmFkNmFhYzU2OWY4MTA2Nzc4ZTc0NWFiMWRiOTgyMDhlIGxlZ2FjeS10cnVuaworMzY5NjAgMDFhMzg1NWE0YjAzZTgyOTdjZGU5MzQwOWIxMGU5MTQ4MmFjODQ2NyByZWxlYXNlMjMtbWFpbnQKKzM2OTYxIGM3MGMzM2Y2OWE0NGM5NDYzMDc1YWQ2YzQ1OGViY2Q1ZDQyMjNhMzIgbGVnYWN5LXRydW5rCiszNjk2MiAzYjVkMzdmN2NiNWFkMWU3N2ZmMjAwOGM2ZGJkMjhlMzE0ODBkNDAxIGxlZ2FjeS10cnVuaworMzY5NjMgY2UwMTZkMGVjNzAxNTUzNGEyNTBkYzQ4NTIxMGRmMTdlMjc5YzMyYyBsZWdhY3ktdHJ1bmsKKzM2OTY0IDM1Njg4NzQxMGJkZTc0Yjk5ODc1MWYxMzMzNzYyMDE5MTQzMDdiOTEgbGVnYWN5LXRydW5rCiszNjk2NSA4MWVmZWMwZTlkMjkzNmJlODZjYzJjZjBjMzI5NTVhY2JjZjhmMDk3IGxlZ2FjeS10cnVuaworMzY5NjYgZjI3OTM1YjQ2OTg1YWM2MWUwYmQ1NjkzMDAzMzcxNGU3MjYyZmViYyBsZWdhY3ktdHJ1bmsKKzM2OTY3IDZiOGU0OTk2ODdkNjI1ODZlYTc1YjdhYzI2OGRlNDg5NGM0NDVjNjggbGVnYWN5LXRydW5rCiszNjk2OCBmNDU1YmJlN2VhN2UyYjE2ZDQ3OTYxNTExZTZiNjQwNTUwNzBjNjA2IGxlZ2FjeS10cnVuaworMzY5NjkgZTVmNmMzZjUwODQ2NjUzY2EyOTNiNGJjYTcyMWZkOTEyNmYzMWUzZCBsZWdhY3ktdHJ1bmsKKzM2OTcwIGJhYmQxMWVlY2Q4ODNhY2ViY2FlMjc0MTc0YzUzNGFjYzllNTU4NTQgbGVnYWN5LXRydW5rCiszNjk3MSBjOWFjOWJlOTVhZjllMmU4YTliOGIwZjU2Nzk1NWYyNmI1ODA5MTJlIGxlZ2FjeS10cnVuaworMzY5NzIgZGRjMDMwNGMxNTFmZTRmNmVlMTFkZTIxZjNhZmQ2NTBiNTJhMTE1YiBsZWdhY3ktdHJ1bmsKKzM2OTczIDQ1MGY1ZTIxZWFjOGRjMjRhMGRjYTI2OWI5ZjU2Nzc3MDRmYzU5ZDEgbGVnYWN5LXRydW5rCiszNjk3NCAwYTBjMjQ3ZjA1ODQ0NTZlMTUxNzQzOTJjZmUzYzg4MmRlZTFiNjhlIGxlZ2FjeS10cnVuaworMzY5NzUgN2RlN2MxOTEwYWM5Y2E0MGU5ZWQ0YTMwMGIxNGU0MWIxNWNhNDhhYSBsZWdhY3ktdHJ1bmsKKzM2OTc2IGE3N2MwMzcyYTFkN2I1MmNkMWMzYjU1NDgyMzIzZWIwZTdjODcxMWMgbGVnYWN5LXRydW5rCiszNjk3NyAyOGU4NzdmZjc0Y2Y3MDY3MzM2Mzg5ZTlhNzhiZjIzZmM2N2UyNmMxIGxlZ2FjeS10cnVuaworMzY5NzggZTRhNzNlZmE0ZDIzNGJlZmUzYzIyMmJhNTU1MjhhYjZmYzg4MWFjYyBsZWdhY3ktdHJ1bmsKKzM2OTc5IGRmZDM4MDNlZTBjMTgxM2Q4YTcwZmJiYjY0MDk0YWJhNTE1N2Y1ZmMgbGVnYWN5LXRydW5rCiszNjk4MCAzYTRlNzNhNWU0MzQ3ZjFkMTVhYTE3NTRmYzhkYzk4Y2MyNmUzMGU1IGxlZ2FjeS10cnVuaworMzY5ODEgYmY2OWZjM2JkMDY3ZTRlNWVjYzFjMjhmMDdhZTdhYzdhNjE0NGUyMSBsZWdhY3ktdHJ1bmsKKzM2OTgyIGY2YWM0MTdiNWViMDhiNzNmMWMwMzgyMDU0MmM5ZTAxYTNlM2RlMzcgbGVnYWN5LXRydW5rCiszNjk4MyAxY2Y5ZGUzYTg1MDNhNDM5Nzg1NzhiMGFkOGU5NjEwMjdmZjViMzE0IGxlZ2FjeS10cnVuaworMzY5ODQgZDdmY2RmOTc3NmM0ZGZhNGI3ZDIzYmZiNjI2ZWI5ZWU3MmZmZGM1ZSBsZWdhY3ktdHJ1bmsKKzM2OTg1IDkyMGY1ZjY0ZjJmMGZjODAzOGEyN2Q0ZTJkYThjMTk2YmJhMzk0NDEgbGVnYWN5LXRydW5rCiszNjk4NiAwMTQwNzg1YmVmZGIzNmQwYzFiMDQyZTYzNGVlZTRhNTU4MjkxNTRlIGxlZ2FjeS10cnVuaworMzY5ODcgNmMxNmFiNDIxNGFmOGU4ZTUwYTgwMzM3MGQ5YmQ0ZmM4ZjJiMTdkNyBsZWdhY3ktdHJ1bmsKKzM2OTg4IGRjNjQ3ZGY1MzkyMTdhNTk1Y2VjYjE5MDUzOWNmZDYyY2I4OTcyYTMgbGVnYWN5LXRydW5rCiszNjk4OSAzYTdmODJlNjBjYjIyOTI0Mjg1MDI3MTRhYjA3N2Y4MjFmOWNkYzcyIGxlZ2FjeS10cnVuaworMzY5OTAgY2NkMDJiZDM0NGIzOGIwZTllMjYyNDIzNzc2OGVhMTJiMjhiMTdlZSBsZWdhY3ktdHJ1bmsKKzM2OTkxIGVkZGIzN2Q3MDJiNWUwNTIyMzYwNmVlMWZjNDI4NTU4M2VjZmY3ZDkgbGVnYWN5LXRydW5rCiszNjk5MiBjMjM4NDYwMWEyNDExMTdkMWU3N2ZkNTQ4MmYzZjQwNDBiYTg0MTQ5IGxlZ2FjeS10cnVuaworMzY5OTMgYWU5YjQ3YThkNjQ4NDg1NmYwYzhkZTEzMGM0NDdiMWY0MjM1ZWE2ZiBsZWdhY3ktdHJ1bmsKKzM2OTk0IDhhMjgyNzk3ODk1ZjNmMTI1ZDM1OTVlZDU0ODM0ZjE5YmE2MDBjODcgbGVnYWN5LXRydW5rCiszNjk5NSA4NDZiYTI5NzJkN2MxYmRkNGM0ZGE2Mzg1MjEyNDUwMzRmYTZjODA4IGxlZ2FjeS10cnVuaworMzY5OTYgZTQ5OTJlOTMwY2IyZTU5NjE4MDFhNDQxOTA0NjFiZGVjZGQ4MjI3YiBsZWdhY3ktdHJ1bmsKKzM2OTk3IDNkYjlhOTMyNzc1ZTYwYTZhZjdkYzI3M2Q0NmM1Y2VmZjIyMGI4OGUgbGVnYWN5LXRydW5rCiszNjk5OCBmYzE2MzdmYzQ1ODg5ZmJjOTJkNzUyMzYzMDYzYjFiMzU2NmJmYjY5IGxlZ2FjeS10cnVuaworMzY5OTkgNzM3NWFlNWY5ZGM0ZDVmNTllZGYwOTc0N2U1YzUxYjRhMjZlYWVmMyBsZWdhY3ktdHJ1bmsKKzM3MDAwIDFkOTgzNTA4MmJlNWFlY2E2YTVmN2VjMjY2MDA3NTljMjRhNGM1ZjIgbGVnYWN5LXRydW5rCiszNzAwMSBhZDI2OGE4NDA4ZjRmNmJlYjU3MmJlZDMwZjU5MmFiZjVkZWJmNWMwIGxlZ2FjeS10cnVuaworMzcwMDIgYTM1ZTRkMzVkMTQyNTEyY2QyOGQ2Mjg1MTQ0ZjQ2MTRmMGE5YmE5YSByZWxlYXNlMjMtbWFpbnQKKzM3MDAzIDNiZWI1NGY5ZDJiYmU4ODI3ZmVhNzZjZDRkYWI2NjY5ZTRkYTRiYzcgbGVnYWN5LXRydW5rCiszNzAwNCAyODkzZGM5YjRlZjRkYWQwNDUyOTVmMTU2ODg1YTZlYjM3MzJkMjBjIGxlZ2FjeS10cnVuaworMzcwMDUgMjJmYTk2YzQxM2FlYzNhMTU4NzhhNjZlMGM0ZDQwMDUxOTM0YzlkNiBsZWdhY3ktdHJ1bmsKKzM3MDA2IDk1MWNjZDhmMzQyODg2ZWJiNjBhYzgyYjE4MDg5YTI0MmJkNTRiNDMgbGVnYWN5LXRydW5rCiszNzAwNyA4Nzc5YzhjNGQxODFhZjQ3NTJjYjkxZDgxNWI3MjAwNDk0MTkwNGYwIGxlZ2FjeS10cnVuaworMzcwMDggOWM4NDFjYWEwZTgxNGFlNmY0OTY1ZGI1Yzk0ZDk4MmQ1ZmJjZDRjNCBsZWdhY3ktdHJ1bmsKKzM3MDA5IDI4YTIwNWVjYjRkZDgwNTY0NzYyMzM0NjE3ZjFmZmJmYmQwZGJkMWIgbGVnYWN5LXRydW5rCiszNzAxMCA4ZTg3YTY4MzQ5NDJlNGVmYTc2MTJiMTljNTlhMmQ5MWVhOWQzMTk0IGxlZ2FjeS10cnVuaworMzcwMTEgOGMwYjA4YjI0NzdiZmQzYTg1MWM2NWJiMzc5NDhlZGQ5OTk4ODUyYyByZWxlYXNlMjMtbWFpbnQKKzM3MDEyIDYxMmRlMjY4ZWQ0YmUwYmUzM2I1NDkzZTM5NjllYTlhMDJmNTU2MmUgcmVsZWFzZTIzLW1haW50CiszNzAxMyBmZDkyZWE4YjViNTFiZDFhNjQ2ZWU0OTczODkxZTRiOGM2MWY3Y2FmIHJlbGVhc2UyMy1tYWludAorMzcwMTQgN2FhZTA2YjFmMWRkY2IzNjc5YjQxNzViMWQ4M2EzMjIxM2JhNThlYSBsZWdhY3ktdHJ1bmsKKzM3MDE1IGZmOWQ1YTcyZDU0YjcyMDgwMGY4OGM1NDg4ZTcwMGQyYWRlZTQ0NTEgbGVnYWN5LXRydW5rCiszNzAxNiBiNTVkYmNjZWNjNzE1MDY2NjAxZGVjM2FlZDEzMTExMzkzNGE1ZTFjIGxlZ2FjeS10cnVuaworMzcwMTcgNGI1YjZlODYxZmNmNmViM2I5ODEyNmFmYjdjOGY5NmNiM2JhY2IxZSBsZWdhY3ktdHJ1bmsKKzM3MDE4IDkzMzU0OGZlN2I5N2IwYTJiNjM3MWFlZTdjZjI3M2Q5MjNhMjA1ZTcgbGVnYWN5LXRydW5rCiszNzAxOSBhMzYyMDE2ZTk1MGQ1MGM1MmM4ZjllNDQ3ODJmMWRmOTI5ZTExZjYwIGxlZ2FjeS10cnVuaworMzcwMjAgMmI4YmRiMDY5ZTBhZWJkZDZmYzA5MzUyZTg3MWZlMGE3OGE1MTU0OSBsZWdhY3ktdHJ1bmsKKzM3MDIxIGIyZjQyN2RiMjI4YjE0NmY1MjFlOGVkYWY1ODQ5YTI5M2UyODg3NTIgbGVnYWN5LXRydW5rCiszNzAyMiAzZjlkMjFlYzUwNGI0ZmJmZGE3MGZkMTQ5MDA2YzY3M2I1YWQ4NmZjIGxlZ2FjeS10cnVuaworMzcwMjMgYTA1OTMwMWE0Y2RlM2Q0MTFlYmYyZDY3ODNhMjIyNGYwOWFiZGI3NiBsZWdhY3ktdHJ1bmsKKzM3MDI0IGFlNGNiMjk0NzQwMGViMmFmMzljM2JlOTRjZDRkYjJmYzVhZTc5MjAgbGVnYWN5LXRydW5rCiszNzAyNSBiZmIyOTFmODU4NzE1YTc3ZWUwYTI3ZTVhMmQ4MWI0OTgwYzQ3MzEwIGxlZ2FjeS10cnVuaworMzcwMjYgMjA4ZmU3MTljNzQ5YjUxZWIyN2Y4OGIzYjljMGZmNWZiYTAwMzA4NyBsZWdhY3ktdHJ1bmsKKzM3MDI3IDZmMDliNTIwYzAxYzU5MGZjOGExMDMwZDc3ODcyNzRmYjJiN2IxYjUgbGVnYWN5LXRydW5rCiszNzAyOCAxZDZlZWZiY2JiMzc0N2UwZDJiOTA5YmQ3MGVjMDc5M2NhNmUyMTllIGxlZ2FjeS10cnVuaworMzcwMjkgMzU3YjI0YzM0NmJiMGQ2NjhlYWY2ZTU2ZGUxMDRmOTRlZjc0OWUyMCBsZWdhY3ktdHJ1bmsKKzM3MDMwIDJlOGQyYmRkMzNkZWNkYjY4ZTg0Yjk1OGUzZjU3MDdiMDk5NjhmM2IgbGVnYWN5LXRydW5rCiszNzAzMSA5NmJmNDAyNDg4YzcwYTYxNTMwZDRmM2E4M2M1YmY4NTFjMjNiYjJhIGxlZ2FjeS10cnVuaworMzcwMzIgYmVkNDVhNmI5OTNiYTk0YWIzZjE3OTlkY2Q4ODYwNzYzZWZmOWVlYyBsZWdhY3ktdHJ1bmsKKzM3MDMzIDU3NzhmNjMzMTMzNGNlMzZjM2Q4ZmVlMmRjMzJlZWIzNWQ3YjkzNjIgbGVnYWN5LXRydW5rCiszNzAzNCBhNTc2OWU4ZjFjNmZkZTc1MmJlMDg0NWIwZTgwNmI3NDdkYzkzMDY1IGxlZ2FjeS10cnVuaworMzcwMzUgNGNkNzdkZTU1MWU3NDViMWFlMTBjZTAwNjZmYmMyODVhNjNlZDY1NyBsZWdhY3ktdHJ1bmsKKzM3MDM2IDFmOTUyMjIzOGM4NjMyMTdiMTVhNDljZjZmMDkyYWNkYzVhZWI1OGQgbGVnYWN5LXRydW5rCiszNzAzNyBlMDVlOWQwNTgzMGQwOTFjM2Y4Zjk0MzFmM2NhNDdmNmM5M2UyZjkyIGxlZ2FjeS10cnVuaworMzcwMzggZjZmYTY0OWZjNGFmNzRkM2ZkM2EzNjc1ZDJmMjBmMWNhODJlY2Q0OSBsZWdhY3ktdHJ1bmsKKzM3MDM5IGE2YzgwMTcwZmM1MzgyZjkzOTI4MTIyOGI2OGM0MDk5YjY5ZDVmY2YgcmVsZWFzZTIzLW1haW50CiszNzA0MCA0NTM2YjAzMTUxNTc3Yjk1NGVmY2ExMTBjMjdhY2E4MWMzMjAxMTM0IGxlZ2FjeS10cnVuaworMzcwNDEgMTc5NzNmMmUzZTBlODk3Yzc0OWRiYjI5MWM5ZTU2NDNmMTljODdkNyBsZWdhY3ktdHJ1bmsKKzM3MDQyIDY2NjU1N2MyOTI0ZGZjZmIxNmQyYjVhYzRhM2Y0YTEzMTJhYzNhYTEgcmVsZWFzZTIzLW1haW50CiszNzA0MyBhMjUxNGUyZDFjNzRlMDZkOTdiNmY3NTcxNWEwMjcyMzIzMDFmZDk0IGxlZ2FjeS10cnVuaworMzcwNDQgYWFkMTE4NjQzNTk4OGIyYWI5Y2I2ZGU4ZTk5MGY4YzYwMzFiNzRmMiBsZWdhY3ktdHJ1bmsKKzM3MDQ1IDBkMTYyN2M0NDc2OTBjYWZkM2JiZTA2ZTMxZDg3MWEzZWUyNTFlODcgbGVnYWN5LXRydW5rCiszNzA0NiAyOTY1YWU5NGEyM2ZlMzQxY2I3YzBkOTVlODJlN2NmNWE3NTVlNDE2IGxlZ2FjeS10cnVuaworMzcwNDcgNDQwMWRlYTcyNGYwYWZjMTY1MjZhZmUwMTFjNjQ1NzZhZWI1MDc3ZCBsZWdhY3ktdHJ1bmsKKzM3MDQ4IDhlOTE3YjllNzBlN2Q3YzgxZTNkOTI1Y2Y4ZDUzMTAxYTlkYTNlNDAgbGVnYWN5LXRydW5rCiszNzA0OSBmZWI1MjQ3YmEwYzgwYjIyNjgyZTU4YTcyYTg3ZTI3YTM3YTYyZjI5IGxlZ2FjeS10cnVuaworMzcwNTAgNGM3OGZjYjYwZGYzMDkxYzE4ODA0NjVjZDc0NjE2MGM2MjE5Nzc3ZiBsZWdhY3ktdHJ1bmsKKzM3MDUxIDM1YmI2MmFjNTVmZWRhNGMyYzU3ZTNmZWUyNjI0MzM1MDVjNTYyYWQgbGVnYWN5LXRydW5rCiszNzA1MiAwZmVjY2YxOWIxNmQ1YzRjMGRhNDE4MzZjNzNmMzQyYWQ5ZTRkZmQ5IGxlZ2FjeS10cnVuaworMzcwNTMgZGU4MDRlZGY4YmNkNTdlZTlkMDNlMjRjMTUyMmE5MzI4NDEwM2EwMSBsZWdhY3ktdHJ1bmsKKzM3MDU0IGIwZjI2ODFiY2Y3ZmE3NDBkZDE1Y2RjYjc1YWViOTIxYjRmZGQwYjkgbGVnYWN5LXRydW5rCiszNzA1NSBlZGI4NTNlZDZjNzhiMzUwNTI2NjkzOGMxYmRkYTJmNDcyMWIxMTJlIGxlZ2FjeS10cnVuaworMzcwNTYgYmJlNjg0NzRlNTIyMGQ3NmY5ZDNjZDUzNzk3MjA1NmZlNWNhODUzMiBsZWdhY3ktdHJ1bmsKKzM3MDU3IGQyODgzYzQyYzIwNGMwNGYyNDY3ZmVmODdkODkwMTJlY2U3ZDBkMTggbGVnYWN5LXRydW5rCiszNzA1OCAwOTZkZTQ1ODI3YzdiNjc0YmZlZmU2ZTM1MjdjYjAyN2QwMzk3NTZlIGxlZ2FjeS10cnVuaworMzcwNTkgN2Y1N2IzYzdlYmJmZmNiNWU4ZThkZTQxM2JhM2VlZmFlYTAwOGU4ZiBsZWdhY3ktdHJ1bmsKKzM3MDYwIDkzNGE1ZGI5Yjk1YjYxMjI5ZmQ4ZmE3YWI4YjJiNGRhMGI2YjliYTEgbGVnYWN5LXRydW5rCiszNzA2MSA3ZGE5MjAxYmM4YjUzMmM2ZGMzNjk5N2EyNjY3MjE1ZGE1ZTM4OGNjIGxlZ2FjeS10cnVuaworMzcwNjIgMDE3MjI3ZTQ3YzNkZWYzMWI4YzAxODE2NmQ4ZjJhY2Y3ZjMyY2FlOSBsZWdhY3ktdHJ1bmsKKzM3MDYzIGVhNDg3NGUwMjFlODBlYWNlNjRmODEyZmRlYTg3NTM5ZmIxYzQ0NTIgbGVnYWN5LXRydW5rCiszNzA2NCAyNjU2MzIwNDY2MGNiY2I4ZTI0NDQ5M2Q3OWJmMDJjZGVmMGQzMGM3IGxlZ2FjeS10cnVuaworMzcwNjUgMzQ3ZDcxYzBlMDE4ZGQxNzkxNTA1MzRhMzdiMDgzZjdjMDM5MzNjMyBsZWdhY3ktdHJ1bmsKKzM3MDY2IDFkMGY0YzAzNTdkMDA0ZjI5ZWZiMTViNjVhODZmZWU4YjQxMThhNmUgbGVnYWN5LXRydW5rCiszNzA2NyBlYWIyMWZiZjlhNzBmOTcwZGQ5ZDBiMWQwNjQ4MzhmZDgwMTQ5YTEwIGxlZ2FjeS10cnVuaworMzcwNjggYzE4YWNhN2U4MWNiNWY3Nzc2OGVhOWM0YjRlOGYxZjY1NTIxMWMwNSBsZWdhY3ktdHJ1bmsKKzM3MDY5IDkwNTY5YWUzZTNmM2YxY2RlMTBkN2FmZDU3ZDg3YWZjMzlmNDI1YTEgbGVnYWN5LXRydW5rCiszNzA3MCA2OTcwMDY4N2UzMGY1MTVhNjQ0YTQyYzA5YTE3MGI2YjE0MTFkZDY3IGxlZ2FjeS10cnVuaworMzcwNzEgYmVkNjJmMzk5ZGFjMGJmNTQ3MWUyNjg5ZWNjMzI4ZWEzZmU5OTg3NyByZWxlYXNlMjMtbWFpbnQKKzM3MDcyIDA0ODY0YzM5YjAwNjMzM2YzMmFjMjQ5ZWExOGUyNzYzODViOTkzNTQgbGVnYWN5LXRydW5rCiszNzA3MyAzNGE4ZDc1ZWRkMmIwM2E1MWE3YjE0MTgxMTg3NDE0ZjZjYjFiNDRhIGxlZ2FjeS10cnVuaworMzcwNzQgMTZkZmYzMGU2NmVjMGU1ZDhjOGI3NzhkYWNkZDBlZTdhZTMwYjA3NyBsZWdhY3ktdHJ1bmsKKzM3MDc1IGM5Yjk5MzA4YjBlOGNiZjkwZjU4NmYwMmM4Y2ExOTE0NTQ2MjI0NDEgbGVnYWN5LXRydW5rCiszNzA3NiA5NDIzMGY2YjVlYmU1MmY2MzJkMTI3MzJkZjU0ZWFkNzA4YjA4YThlIGxlZ2FjeS10cnVuaworMzcwNzcgZGIxYmFmYTliNjU2MTM2Yjg3Y2U3YmMxMzA0MDUxOTM3NDI2ODkzMiBsZWdhY3ktdHJ1bmsKKzM3MDc4IGQ5NzY1ZWI1OWVkZDc4NTVjYjY2NGNkM2MyNDM3MjVhMGYyYTA3YTQgbGVnYWN5LXRydW5rCiszNzA3OSA4ZDc3MTM0YWFiODJmNDA4ZTI2YjhlYTc4MDk2NGVlMzI2Zjk3NDg3IGxlZ2FjeS10cnVuaworMzcwODAgNmI3NDNjYmM0MTcxMGU2MjY0ZThjZmNiNDI0Y2JmOTE1YmYzMzBmZSBsZWdhY3ktdHJ1bmsKKzM3MDgxIDgyNTJlOTg5Y2JiMTViZjQ3NmI3YWE1MmYyZjA1NDRjZmFjYjE4ZTcgbGVnYWN5LXRydW5rCiszNzA4MiAwNjZjNzg5MGNkNjE1NTMwYWFhZDNhYTE5ODU5NWMyM2IxMDYxZGY4IGxlZ2FjeS10cnVuaworMzcwODMgZDg2MWFhODc0NTI1NTg4N2UxYTYzYTgxYzk1ZmNjY2JiNzBmZmU4MiBsZWdhY3ktdHJ1bmsKKzM3MDg0IDMyMzVlNzM5YmRhMTJlZjE4OTc3YzA4Y2JiMTg1MTAzODJmODQyZjMgbGVnYWN5LXRydW5rCiszNzA4NSBhY2Q5YmYyZTNiY2Y1MTU5YmZmZWQ3OTkyNzk0NWZiYmUxZjk1OGYxIGxlZ2FjeS10cnVuaworMzcwODYgZTYzMDRkNjZkOTQ1YjU2OTc5ZDM4N2I4OWE2MTQzNmNiOTk4ZGFiMyByZWxlYXNlMjMtbWFpbnQKKzM3MDg3IDhhYmQzMjJhMDEzYWI2OGNkY2FhNmRlMzEwNGI5M2VhZGIzZjc1MDMgbGVnYWN5LXRydW5rCiszNzA4OCA4NDkzMTA4MGUwNWNjM2Y5OTk4Yjc1NGJjODkyMWVlOTkxNzc4NjEzIGxlZ2FjeS10cnVuaworMzcwODkgNTdhNjZkNzAwYzdjZmJhYTY2YTNiNDdjZGM2ZWRhMmEzYjYwOTg4OSBsZWdhY3ktdHJ1bmsKKzM3MDkwIDBhOGQzOWFjYTk4YzVmZWNjZGY3YzkxNzYxZTc0MDQ3ZjA4MGU0YTEgcmVsZWFzZTIzLW1haW50CiszNzA5MSBhMWNmNGEyOWFjMzAwNzA4N2VhODk4ZmU5OTYyNTZmMTEzODIzMDNkIGxlZ2FjeS10cnVuaworMzcwOTIgNDBiNWFlZTIwYjgzMTcyZWQzNGI0MWE4MTZmYmE3Y2E2MjliMjI5MSBsZWdhY3ktdHJ1bmsKKzM3MDkzIDdmZWMwNjYyY2Y0YWEyZGRmZTRkYjdmYTBhNTQ5OGRhZTdjMDE3NDcgbGVnYWN5LXRydW5rCiszNzA5NCA5YzU3MGFmNTM1NmU3ZTFiNzZkOTFhYWU0MDNiYzAzY2U2MzhhN2NmIGxlZ2FjeS10cnVuaworMzcwOTUgZGVhOThlZWQ4Y2YwYzhhZmYzNjI4NDExN2M1ODMyNDdmODkzZGJhOCBsZWdhY3ktdHJ1bmsKKzM3MDk2IDY5OTc2Y2Y1OTE0OTVmZTg0YWVjYTllNWJmNTY1MjE0ZWZkODQwNDUgbGVnYWN5LXRydW5rCiszNzA5NyA3N2QzNjQyZWI4N2JlN2E4NzM5NmYxNDEzMWJiMjc1OGI3MzA2MzdiIGxlZ2FjeS10cnVuaworMzcwOTggYWIzNDk4MGZmYTE2OTBhOTUzYmYzMjEwZTNiYTczYWY1NWFkZGFjOCBsZWdhY3ktdHJ1bmsKKzM3MDk5IGY5ZjRiMTlkZDc1NWQ5MDFhYjE5NTc2Nzk1NTk3MWNmM2IxNWM0MWIgcmVsZWFzZTIzLW1haW50CiszNzEwMCAyMmI2M2VkMmQ1YjIyNzNmYmU5ZWEwY2IwOTgwNGU3NTg3MWZkMWU4IGxlZ2FjeS10cnVuaworMzcxMDEgMmUwOTY2ZGJkNjc4YjI4ZWE4NWQ5ZjM4ODE4OWQ5MTE5YTM4YTBlYiBsZWdhY3ktdHJ1bmsKKzM3MTAyIGY5OGU1OWYyZjg5ZDA5MWU0MGFlZjU2ZGM0YjYzNTA5ODM2MDczZmQgbGVnYWN5LXRydW5rCiszNzEwMyBmYjk4NjkwNDRiYmE5ZjcyMTc4OWFjZWNmZWRmZThjN2NmMDY0NjQwIGxlZ2FjeS10cnVuaworMzcxMDQgNzE0Mjc5MTU3OTZlZGMxYzMzNTI4ODllMGNiZTVlOGFhNTg5MDlkYiBsZWdhY3ktdHJ1bmsKKzM3MTA1IDJjYWE2ZjE5YTJlNjZjZWNlOGRiMWJiMGE4YWEyOTFiNDQ3NDUzZjggbGVnYWN5LXRydW5rCiszNzEwNiA1NjE3MDIzNTBlMDk4MDdiM2M1MjhjZjliYTAyOTkwYWJiZjU1ODA5IGxlZ2FjeS10cnVuaworMzcxMDcgY2QyYTk1Y2ZjN2ViNDhhYWY1ZmZhNDNmYjM0MDdlZDE3MDU2MDg3ZSBsZWdhY3ktdHJ1bmsKKzM3MTA4IDM5NWJiMzc0NmQxZDRlMDY2NDc4MjU4Zjc1MGI0MGMyNTAyODJiN2EgbGVnYWN5LXRydW5rCiszNzEwOSA4NGFjYzc3YzA2Yjg4OGE4NmZhNDkxYTAwMmVlMTVjYTU0MTA5MDdhIGxlZ2FjeS10cnVuaworMzcxMTAgMDM0NDAyNzIwMjhjNzk3MzRiOTgxZjJlNTFiMmFmNTcwMWY4MTY0MyBsZWdhY3ktdHJ1bmsKKzM3MTExIDk4ZGIwOWZkNDQzY2Y2N2I1YWViM2U2YTA4YzJjM2EyYTdkZmI1MmUgbGVnYWN5LXRydW5rCiszNzExMiAxZjliOWMyMjZiNDNlZDIwY2I2MWU2ZDIxYWVhNmNiOTY2ZThiY2QzIGxlZ2FjeS10cnVuaworMzcxMTMgYzY1NDMzNGRjOTYxOGVlMDVjZmYyNTgzNzMxYjFkMDVlNjVmNmEwOSBsZWdhY3ktdHJ1bmsKKzM3MTE0IDEyZWY1NmY4OGE5MGJlNTM2OGMyNWM1MzczMzczOGFlNzRmMDdiY2YgbGVnYWN5LXRydW5rCiszNzExNSA5NTc0NGE0MjA4YTI3MGMwNWI5Yzk1NDhjMTExNjU5YmIwZDgzMjNhIGxlZ2FjeS10cnVuaworMzcxMTYgMzc3YzUxOGQ4NDgzNDM5NzZiOTI5NDc5MDEzMmY2M2EzOGYxYzZmMiByZWxlYXNlMjMtbWFpbnQKKzM3MTE3IDhkZDM1ZjVjNzkyODJhNzIyYjY5NTg0ZTE4ZjA2ZjM5NzIwMjQxNzAgcmVsZWFzZTIzLW1haW50CiszNzExOCBiNGNiNDk4MjlkM2VlZWRiMGY0YjFjMjc3MDY4NGVkNWQ4ZjVkODBjIGxlZ2FjeS10cnVuaworMzcxMTkgM2ZiZDJkMWNhNWJiNjBkM2E2NzA5YjE3ZWI5YzFhZjA2NmE4MWQzMyBsZWdhY3ktdHJ1bmsKKzM3MTIwIDY2NDFkMDU0MjU5MjdmMmFmYTZjMTAwZTBmNDI4ZTM1NTIxYzliMWQgbGVnYWN5LXRydW5rCiszNzEyMSAxMWE0ZmJjODhhODAwYzVlMWEzNDhiN2Y1ZmQ0OTYxYjYyM2IzNTRhIGxlZ2FjeS10cnVuaworMzcxMjIgOTkzZmQ4YWNjOTBmMjg0NzMzYTA4OGE1ZGEwZDhkYTM0YWM1ZTZlYiBsZWdhY3ktdHJ1bmsKKzM3MTIzIGI2M2IzMDgyMWVmNDc4ZDkwZWI4YWFlNzA3NDIzZTNiMzI4N2MwN2UgbGVnYWN5LXRydW5rCiszNzEyNCA5NjVlOTZlMTUyOTkwNTYzN2U3YmQ1ZjJmMTdiOWI4MzRjMjczOWMyIGxlZ2FjeS10cnVuaworMzcxMjUgMWNmN2Q3MjI1YTk5NjM4N2M3MDY1NjgxODE0NWZjMTUyMmNjOWU5NyBsZWdhY3ktdHJ1bmsKKzM3MTI2IDdhMWZiMzE2ZTY1NTIyZDE2Yzc2NzRhN2ZiZjJmODA1Y2UyYmJhM2EgcmVsZWFzZTIzLW1haW50CiszNzEyNyA4Y2Q1Nzc5NmE5Y2Y4MTBiYmVkOGUxNzU0MWZlMTQzYjA2OGQwNTA2IGxlZ2FjeS10cnVuaworMzcxMjggZjEwNzJhMzBiYjU4MTA4ZThkNzc2ZTdmYTEwY2QzZDNkYjc3ZmZhNiByZWxlYXNlMjMtbWFpbnQKKzM3MTI5IGIwNDUwNzAxNzJjYjJmNzU5ZTM1Y2E0M2QzY2EzZjVmMWY1OTFhOTkgbGVnYWN5LXRydW5rCiszNzEzMCA0ZTllY2JmNDdiNmJhOTdjOGI3NWMyYWUxZTM1NGQwN2NkODE4M2M5IGxlZ2FjeS10cnVuaworMzcxMzEgZDY3NWUzZTBmZTc5NjhlYzE3MDY0NDg4MzMyZmNiZWFkNzMxMzEzZSBsZWdhY3ktdHJ1bmsKKzM3MTMyIGE0N2YzZDJmZmQyMjE1NGZmNzhkZjk1ZmI2MjhmOGJkMDYzZDJjODAgbGVnYWN5LXRydW5rCiszNzEzMyAwZWQ0ZmQ3YTBlMmUwZjUwM2YyZGVjYjczZGNjYzQyNGI3NzVkZTZmIGxlZ2FjeS10cnVuaworMzcxMzQgMzAxNjQ3MWFlNTQ4OWJiZjk4NzljMWQ3M2NlYzJmYjBjMDNjMjZlNCBsZWdhY3ktdHJ1bmsKKzM3MTM1IDNkYmRiZDU3MmQ5NDEyOTI3ZTg4MzY1MjAzMTBlMDY2MTM1ZWQ5MTMgbGVnYWN5LXRydW5rCiszNzEzNiBiYWM5OTdiNzliMTkyNWQ2Yjg5MmQzZjhiNGNmOTgwYjgzMjdlNWYxIGxlZ2FjeS10cnVuaworMzcxMzcgNGNhOWZhMjM1M2JmYTQzYjM4NmVkYmVkMmJkOTQ4MDRmNWJlMzAyNSBsZWdhY3ktdHJ1bmsKKzM3MTM4IDI3Mjc3MThlOWU4ZjQyNjRmYjZkMTdhMTdkZjE5OGUyYmExY2YzZDAgbGVnYWN5LXRydW5rCiszNzEzOSBhMTJkOTg0YmQ5NjJkOTUyZGNhMDdmYTY0YjQ5YjNkYjlkNDk0YjBlIGxlZ2FjeS10cnVuaworMzcxNDAgOGQxYjRjZDhhMTI0NTRlZjZjYWEwYTljNTAxY2Q1ZTVlMmVjZGI1ZCBsZWdhY3ktdHJ1bmsKKzM3MTQxIDBjNzM0OTMyYzZmNDFlZDJkNTBmZTNjMDY3YzIwYjdkYjdkMjdhNDUgbGVnYWN5LXRydW5rCiszNzE0MiAyYjEzNjQ0MTAzNWM4MzNlZTRiYjI1Y2FhNzhjMmMwMWVjNzhkYjljIGxlZ2FjeS10cnVuaworMzcxNDMgYjI1Y2IyMDQ1ZGFjYjA5N2RkMTEzZWU4YWRkN2MxMTBhZTY3OTZhNyBsZWdhY3ktdHJ1bmsKKzM3MTQ0IDgyNmFkODk2YTdhNWMzNWJhMDRiNTM3MjdjNTJiYTdkMTFmMjZkNTMgbGVnYWN5LXRydW5rCiszNzE0NSA0YWZmMWZiY2U3NTI0ZjFjNDhmOGQxMmIxNzFiMGY5NzRmZjcxMzJmIGxlZ2FjeS10cnVuaworMzcxNDYgZWZmNzY2ZTI5YzU1MjVhMDcwNWYyYmRlNmM1ZGJlN2U5OTJlNjI0MCBsZWdhY3ktdHJ1bmsKKzM3MTQ3IDI3NDdkYmQ1OTM4YjU2ZjhkOTc1MDBlZWRmNDZhMDFiYTc2OTVmZjUgbGVnYWN5LXRydW5rCiszNzE0OCAzNDVmYWM2NmRhYTliMTczZGZlZDJkOGEzOTFhYmMxNWM1NTc0ODk0IGxlZ2FjeS10cnVuaworMzcxNDkgZWU3MDNhMDk0ZGZiZGYxMDBhOWRiZDljMzUwMzdkY2U2OTMyZjNlNCBsZWdhY3ktdHJ1bmsKKzM3MTUwIGU1ODZjYmVjZGViYTYyOTAzM2Q3ODVkMDE1MzM1MTU0Njc5NDZiMWQgbGVnYWN5LXRydW5rCiszNzE1MSA0NDkxNDFhYTAxMWM5YTQzNjEzN2RjOTk5ODMxN2JiOTUxMjk1OTA3IGxlZ2FjeS10cnVuaworMzcxNTIgOGFhZDUyOTZmZWM5NjAzNDcwOTVlMWM0NzVmODA0Y2YyMGY0Njc4OSBsZWdhY3ktdHJ1bmsKKzM3MTUzIGZmODhkYTQwMDc3ODU4OWMzMjkzODJiOWVmZmRlZjJlMTc2YzlmMmUgbGVnYWN5LXRydW5rCiszNzE1NCA4ZDI3NjU1MWNlYTk3MmEwYjdlMWMxNzQyNmE2NDIzMzhlNjUxZjg0IGxlZ2FjeS10cnVuaworMzcxNTUgNGIwMGFlMWVmZGQ4NmRjMzkzNDUzNDkwNGY1Y2YyNjQ5OGU4MDA4OSBsZWdhY3ktdHJ1bmsKKzM3MTU2IDhhNGMzMDU0YTM2Yzk0NmY0ODEzOGRjNmFlOGI1ZjNkZWI3YmFjMzUgbGVnYWN5LXRydW5rCiszNzE1NyA1ZmFiNGY0M2I5NGY3MzcxYjVjMDBkYTk2YmM3ZTg4NjQ0YWJhMjA4IGxlZ2FjeS10cnVuaworMzcxNTggNjdmYmJlYjFlMjE4MWUwMDJlNDEwYTg0YmI5OGY4OTFmMjU1ZTk5MSBsZWdhY3ktdHJ1bmsKKzM3MTU5IGUwN2E2MjM0YjczYjFmNDc3NTgwZmJjYjI3ZGEyNTE1OGM2MDJmMDMgbGVnYWN5LXRydW5rCiszNzE2MCAzZTI1ZDZlM2RhMTk0ODViOWZmOGIwNDkxZTgyNzE5ZTNhNjc3N2FkIGxlZ2FjeS10cnVuaworMzcxNjEgOTZkNTM4NDg4YWVlYWMzYmZlNjYzOWE3OTQxNGI2NzA3NDFmOWRlOCBsZWdhY3ktdHJ1bmsKKzM3MTYyIGEzN2FlN2RiYTgxNGI3M2ZhNTMwMTg2N2E1YzQ2ZWJiZjcyNDMyOTcgbGVnYWN5LXRydW5rCiszNzE2MyBiMjkxMGU0NzlmMDdiMTEwMzE0MzRiMTE1NDQ2NzJjYmJmZTAzZDJmIGxlZ2FjeS10cnVuaworMzcxNjQgNzdkZTM4NTM0ZDI2MzI4NzY0NjNkNWJlYWE5Nzk2Mzg5MDMzMDk3YSBsZWdhY3ktdHJ1bmsKKzM3MTY1IGIxYzI2ZTg5YzQ2NGQ2YTg5YzY3YmFjZWVlMTU5OGU1OTRjYTAwZTMgbGVnYWN5LXRydW5rCiszNzE2NiBlMTliMDA5NzVkNWU4NjJmMGFlYzk4MTVmMjUzNmMzNTk5N2VjMzk3IGxlZ2FjeS10cnVuaworMzcxNjcgNTIxYjg3OTVkZjliZTQ4ODEwMDJhMTc3OWJhM2U1NTA2MWJjYjg3MyBsZWdhY3ktdHJ1bmsKKzM3MTY4IDRiMzI0ODljMzRhN2ExMWQ1YmNhODk1YTY2ZjE3NDQ3NTA4MmZlZDMgbGVnYWN5LXRydW5rCiszNzE2OSA3OGI1NzhjNDY3NzBlNTBlNjAyOGZjYmJlN2Y1NDI2NzJjOTgwNjVkIGxlZ2FjeS10cnVuaworMzcxNzAgN2Y2MTcwMjU1NjVlODBmMDc1NTVlZTkzNzc3MmNjNmFkNzRiMzZhMiBsZWdhY3ktdHJ1bmsKKzM3MTcxIGNkMTU2NDIzMDk0NzhlZDVlMGRhNmQzNTI0Njk1ZDM4MTNmNTI4YTUgbGVnYWN5LXRydW5rCiszNzE3MiBmMjgwNzJlNjRmODE3Njc0M2RjMDM4YmMzYWQ0YmU1MTJiOTFkMGZlIGxlZ2FjeS10cnVuaworMzcxNzMgNTk4MDUwMDE3YjVlNDAxZDAyMDIxMGExYWE0MGUzYjUzODc5OGQ1MSBsZWdhY3ktdHJ1bmsKKzM3MTc0IDg1Nzk4NTlmMTk4Yzc4YWMxNDNlZTY3Y2NjZjkyYTc2OWQ5ZWI1MjUgbGVnYWN5LXRydW5rCiszNzE3NSA1OWJkMTIxZWVlYjcxYzc1Y2VmOGEzYzg4NTNmNzg4ZjI1MDg3MmE5IGxlZ2FjeS10cnVuaworMzcxNzYgYmYwZWY1ZmM0OWYxZTg3NzJhN2ZjZDNkNWY5OTE5NWEwZmQyMzM4ZiBsZWdhY3ktdHJ1bmsKKzM3MTc3IDU0MmE1ZWZhNDg4M2JhMjY2OGQ1YTA0NDQ3ZjQwN2IzNDYyMzQyMTYgbGVnYWN5LXRydW5rCiszNzE3OCAyZjUyZGYxNzM5NTI5NWI2NDI2MzAzOGEwYmM3OGU5MWYwZjdhZmUxIGxlZ2FjeS10cnVuaworMzcxNzkgOTZiYjQ2NjkxZTg2MDYzMmQyMzM5NGIzYmJjYjM4MDA1YTA2NDNkNSBsZWdhY3ktdHJ1bmsKKzM3MTgwIDBiMTgxYmYyMzBjOTNmNjYxN2JiNTAzZmI0YjA1YjE3ODc1NWVkNzQgbGVnYWN5LXRydW5rCiszNzE4MSBjZjBlYTE5ODY5YWY1ZWE2NDk3ZDM1ODhhOGQzYWFiNGJjMTQ2YjU3IGxlZ2FjeS10cnVuaworMzcxODIgYjU3NjEyZjYxYmEzZjNlZGUxYTkyZTI3NWJmMDcyNWQxNWVmMzA0YSBsZWdhY3ktdHJ1bmsKKzM3MTgzIDZkM2JkZDE5YmVlYjM5OTQ2YmM2OTA4MjgyNzhhYzM3NTZjMmI5Y2IgbGVnYWN5LXRydW5rCiszNzE4NCBkNWIwOTc2MDhjOWRlY2FjNWQyMDgzYzhkNjdmODEyYmQwMDM5ZjZiIGxlZ2FjeS10cnVuaworMzcxODUgM2VlNWRlYzBjYTA3Y2NjMzVmZTEyZDE5NTQwYWM2YTNhOGJiODU4NCByZWxlYXNlMjMtbWFpbnQKKzM3MTg2IDFiYTc0NjlhM2I0OWI0ZDBkNGYyZmYxZDcyMWU3YTJhOWI3OGIxM2UgbGVnYWN5LXRydW5rCiszNzE4NyAwMGI4OWFiNDRjZmQ3Y2Y0MGVmMGU0MWE0ZDEwNGQ5ZWQzMTQxNmQ2IGxlZ2FjeS10cnVuaworMzcxODggYTI1YWY2OGQ3MWZjNmQ0ZDc0N2IxMDJhZjExNGM0ZjI5NGViNzVmOCBsZWdhY3ktdHJ1bmsKKzM3MTg5IDE3NjhhZmY5Mjg2NGQ2OGM4YmRlOTc4NWRlYzZjMzIyMTMwOWU5YzMgbGVnYWN5LXRydW5rCiszNzE5MCA3ODdmZmY1MWJmMmFhZDI4MzNhNjNlZTlmNzc4MzYwNjJhMjcwNDM2IGxlZ2FjeS10cnVuaworMzcxOTEgNTQ1MmQ0ZWNkZGQwYzQ3ZmZkYjMyNTA0ZWRjMzg3NDEwMWFhMWZjMCBsZWdhY3ktdHJ1bmsKKzM3MTkyIGZlZTU5MmZiNTY0MzZkOTI5MTk5ODgxY2Q4MDkzNzVhODY2MTgwODQgbGVnYWN5LXRydW5rCiszNzE5MyA5N2ZjYTczNWM4ZGE2ZjlkYjFhOGU3OGZmMmE5NTZlOTMxY2ZhM2QyIGxlZ2FjeS10cnVuaworMzcxOTQgMjA4ODE1MDVjMTQyNzM5MGQ3ZGZhYTc1OTc3NzdhMDI1YjJhODNkZiBsZWdhY3ktdHJ1bmsKKzM3MTk1IGQ1MzhlY2YwYmM2OTg0YWRjZWZiODE3MTQ2NjQ2MDcwMWIyZTcyMjEgbGVnYWN5LXRydW5rCiszNzE5NiAwNjIxNzdkZTg2ODU4YTdlMGZhZTk1YzIxMDlkZjVhZmE1ODBhNTlkIGxlZ2FjeS10cnVuaworMzcxOTcgZmMwYjQ1NzU1NzQzMjc2NTExODU3YWVkM2U1MDlhN2UzMjQ1ZTUwZCBsZWdhY3ktdHJ1bmsKKzM3MTk4IDA0MjQ1ZWY1Mzk0OWMxYmQzMTExNjZkNDlkOWUyZWMxYmMzOWQ3MjEgbGVnYWN5LXRydW5rCiszNzE5OSA1MDVjOTA2Mzg1MGU0YzQzYjBhZjQxNjc3NzE5ZTNiNjQ3M2ZkYmVkIGxlZ2FjeS10cnVuaworMzcyMDAgODRmYmFhYTIwMzU4YTcwZWYxMmUzMjY3MDI0YzRhNGRjYTY3NWJlMSBsZWdhY3ktdHJ1bmsKKzM3MjAxIDA1YzEyNWM5ODc2NzIwNzViNTY5YTNmZDI2NDJkZTE1NjhiNTljNTQgbGVnYWN5LXRydW5rCiszNzIwMiAwMGU2MTk4NTFhNTY5NzQ4YWQ0N2JhMjYwMzZjNDUyNzcyNDNkM2Q2IGxlZ2FjeS10cnVuaworMzcyMDMgYjdhY2I5NzBmNTM2NTEzZDNlNGYxMjMxOGRiZDBhNmVjZTBlMjJjMSBsZWdhY3ktdHJ1bmsKKzM3MjA0IGYzMDk5M2QwNTg5MDhlYjBiN2FlM2UxOWE3OWY1Yjk1OGJkMGRjY2UgbGVnYWN5LXRydW5rCiszNzIwNSA2OGU2OGVkNDZmMGU5YWY3NDJiYTAzMWRmNGVkYWNlNDIyOGUwNTAyIGxlZ2FjeS10cnVuaworMzcyMDYgZDllMDM5MzhhMzMzYmRiOTU0MmRmNTMyNWQ3ODE5YzkzN2Q2M2UwMSBsZWdhY3ktdHJ1bmsKKzM3MjA3IGQ1YzM0ZGJjMzYxODJmOWZlNTRmYTlkMGJiMjNjYmRlODZkZGJjMGIgbGVnYWN5LXRydW5rCiszNzIwOCAwYTc5ZDdhOTA0MGM3NjlhZmM1ZWI5MzQ0ZDBjMGVlYjk5MTg2OWFmIGxlZ2FjeS10cnVuaworMzcyMDkgZTViNGZlOTdmNzRkMTU4NmIxOTA1ZjY1ZWFjOGU3NTcwNjBiZWEwZSBsZWdhY3ktdHJ1bmsKKzM3MjEwIDFhNTRmY2Y0OGZlNGU2NDRmZTE4YWIxYTU2N2I0MmQ0ODc4MDQ1MmUgbGVnYWN5LXRydW5rCiszNzIxMSBkYWQ4Mjc3OTQ3NDVjYmNjZDQxMWNlODQ4MGY1NTIzNDg5NGZjZjcxIGxlZ2FjeS10cnVuaworMzcyMTIgYWRjNjZkMzE0Yzc4ZWQxNmRlYTExZTQ0NWU4YWJhMzM2NmI1MjUwNiBsZWdhY3ktdHJ1bmsKKzM3MjEzIGRkYmExNTRjMGUwMDBhYzQ1NmIwZTczZTU1OTg4YzQ3NWZiYTk4OWIgbGVnYWN5LXRydW5rCiszNzIxNCBjNDRmMDgzNDY1ZjljNWFlZTFhYTNjNjIwNjhlZmZhYzc1MGQ2ZTVhIGxlZ2FjeS10cnVuaworMzcyMTUgY2ZhNzJhOGRlMTQzOTkwY2FhZWJhZWFjZDQyNmQ5YWUzZThlMzUzMCBsZWdhY3ktdHJ1bmsKKzM3MjE2IDEyOGQ1Mjg0NTdkYTU2NWY5NmQ5ZGNmMWY2NDRhNGIzMzY1ZWIxY2MgbGVnYWN5LXRydW5rCiszNzIxNyBmNzQ3NGQzMWJhM2ZhOWJmMGM1MDc5OTQ0NmY5YmYyNzE5YmY0ZDZjIGxlZ2FjeS10cnVuaworMzcyMTggMjNkZjZjZjI5NjUwZDQ1YWFlMWM2YjYyYTdmOWVlNTViYjJiODJkNCBsZWdhY3ktdHJ1bmsKKzM3MjE5IDk5OWQzMWNhOGExOWY3ZGUwNzE2YjNmN2I4M2JiMzBlMDUxNzc2MGIgbGVnYWN5LXRydW5rCiszNzIyMCBlNTYxOTJlOWZkN2U3ZTQ5M2ZiMDAyNWE2YmUxZTJlN2UxNmY5ZjhjIGxlZ2FjeS10cnVuaworMzcyMjEgMWRmYzk3ZTJhY2RmZTRlZDA3MGY5YTI4Y2RmZDM3NzUxYzFhMjRlMiBsZWdhY3ktdHJ1bmsKKzM3MjIyIDk2MDQwMjUwNjk0MDcyYmI5N2Q4MGVjNDg5YjJhYTkyOTViMGQwMjcgbGVnYWN5LXRydW5rCiszNzIyMyBjOWE4MmU5YjdiNGQxODUxNmVhMmNjMGQyNGU4YzVjOWNjYjRiZjM0IGxlZ2FjeS10cnVuaworMzcyMjQgYTZlYWMzZmU1NDJmOTMwYzhlNjEzMTU5M2I0ZjNlY2FiMGNlN2JmYyBsZWdhY3ktdHJ1bmsKKzM3MjI1IDAzYmUwNmJjYTE2MGZiYzljOWI1OGE4MzEzYmUxNTM0NjI5NGNkOTMgbGVnYWN5LXRydW5rCiszNzIyNiAyNjhjNWY4M2ZiODc3YWE0MTcwM2ViM2JlZDU4ODhiOGU0ODRhMjM5IGxlZ2FjeS10cnVuaworMzcyMjcgMjZlNDIxMTg2NWVkN2IzOTBmNGU5NDExMjg5YTZmZmQ1NjZlNzNjYiByZWxlYXNlMjMtbWFpbnQKKzM3MjI4IDBmNTNiYTE1OWU1NGUyMWVmNTU3YzA0Njg0YzhlNjZmZWY3NDZmMDQgbGVnYWN5LXRydW5rCiszNzIyOSBiMTBiN2I3YWZjMDBkOWIwOGNlODMzOTNiZDQyMDRhMDU2OTQ1MzRhIGxlZ2FjeS10cnVuaworMzcyMzAgMzU0MGUxMDUyNWExYWVjNjdiYjE2MDNiZjg4YTFjNTg4N2JiMTcyMiBsZWdhY3ktdHJ1bmsKKzM3MjMxIGQwYzAxZTBmZTI0OTY3NTdkY2I2ZmYwYjg1YWVlMWMzYzk4N2JkM2UgbGVnYWN5LXRydW5rCiszNzIzMiBkNDEyNTZhNmYyY2VjY2VjZDIwMzE0YmIzNDRkZDUzMTJmNjc3NDkzIGxlZ2FjeS10cnVuaworMzcyMzMgNWYwYzdmNWNhNmY5ZjExOTQxMTFiODc5NzU4MzczMzJiMmFjYjI4MCBsZWdhY3ktdHJ1bmsKKzM3MjM0IGFmNjUwMDRmNjIyZmEwZDg4ZWNhMDMzN2ZhZDcwNjI1YTA2MTNjMTkgbGVnYWN5LXRydW5rCiszNzIzNSBhZDQzZGYxOTc4NGM1ZTQ0ZDE3NGUxMzc5YWY2Yzc2ZGEwM2U5ZTE3IGxlZ2FjeS10cnVuaworMzcyMzYgYjIwZDQ1NTU4NjUzNmQzNDJjZjdhMmU3MTU2ODQwZjc5ZjViNGY3NSBsZWdhY3ktdHJ1bmsKKzM3MjM3IDc2YTliZGEzMDI4ZTg2ZGE0OGFhZmM1NTgwMzg1OWMyYTkwZjI1ZDYgbGVnYWN5LXRydW5rCiszNzIzOCBhZGEyYTY2Yjg2YTRhMTdiODUxYzFlZDA0YTU5NjEzYjM0YTllMTAzIGxlZ2FjeS10cnVuaworMzcyMzkgMTI0NjQyMjIwM2U4Nzg2NTJjNTAwZGE5MGI0MWU2NDlkYTQzNzZlYyBsZWdhY3ktdHJ1bmsKKzM3MjQwIDk0NjVmZTY3ODIyMjY2NDNkNmM1N2VkNTE1YjJjNWQ5N2VmZTc2NzEgbGVnYWN5LXRydW5rCiszNzI0MSBhZWUyZWU3NDVmMmM1ZDk4ZDg2YzA2MjczZTY5YmJmOTczMTMxYWRlIGxlZ2FjeS10cnVuaworMzcyNDIgNzU1MWM3MjVmZTk2YTAxYTI0MDY5Mjg2ZDJjOWNlODZmOWRmZmE0MyBsZWdhY3ktdHJ1bmsKKzM3MjQzIGZiNjE0MDMxODBhODVjNDc2OTBhNWRiNTQ5NzQ3OWYwNjAzMzA0ZTIgbGVnYWN5LXRydW5rCiszNzI0NCBiZmZkNDk0MzU0ZWU3MDJhMWI2OTk0MzMzNmY5NDIyZTQ0NjQ2MWNhIGxlZ2FjeS10cnVuaworMzcyNDUgZjAwNTNhNmEyYmVkZGRiOTk2M2Q5N2Q5YzY0NGEwZWJiZDk1ZjQ0MSBsZWdhY3ktdHJ1bmsKKzM3MjQ2IDNlMDYyODk3ZDJlN2E5MTA3MzQ2MmQzY2MwOTc2YWVjYjY4ZjE2ZTIgbGVnYWN5LXRydW5rCiszNzI0NyBkZjQ3NzBiN2NhZWZiNDdiOTk5ODE0YzFiYmY3YzlhYWZiYWZhZGM1IGxlZ2FjeS10cnVuaworMzcyNDggNDM4NTJjOTYzMTYwNDE0OTI3MWQ0NDc0NDk2NDE5ZmJiMzljYjNjMCBsZWdhY3ktdHJ1bmsKKzM3MjQ5IDlmMmRkZGU5M2E2Mzk1ZDYyZGM3MjNkNWNmYzYyMDg1YWM2M2E2YzYgbGVnYWN5LXRydW5rCiszNzI1MCBjMmM0OWVlNzI3ZDBkZDM0NzdiODhkOWFkMDViNGQ5OTg3MTQwZTRlIGxlZ2FjeS10cnVuaworMzcyNTEgOTQzYzIyYTdjNzAxYjI3MzBiYjVlYTllMjZjYThhYzY1ZGUzYzE4YSBsZWdhY3ktdHJ1bmsKKzM3MjUyIDExMDA2MDU4NzBmZWI4YzdhOGMxMjRjMDE4NzgxNGEwMzg1OWVmMDggbGVnYWN5LXRydW5rCiszNzI1MyBjOTE2OGU3OWVmNGNjMmRiMmVkMWY4MGZkN2FmMDE5OGFiMzYyNzcwIGxlZ2FjeS10cnVuaworMzcyNTQgZDExM2M2MTM1NjdhOWU1MmMwN2M0ODlkYjY4ZjNjNjA1MDUwMzYyMyBsZWdhY3ktdHJ1bmsKKzM3MjU1IDIyODExNDBkMjBjNzVjM2UyZDA4NzdmYWMzZTdlYTQ2ODY5MTRlOWQgcmVsZWFzZTIzLW1haW50CiszNzI1NiBmODNjNWE4NTc5Zjg0OGI3YTA1OWMzNWIxNjZiMTZlNDQxYzFiYzUyIGxlZ2FjeS10cnVuaworMzcyNTcgZWI5YjM4MDI1M2M5OWQyMDM1YmZhZjAyNTlmMTU5MTA3ZDdmZWM1ZSBsZWdhY3ktdHJ1bmsKKzM3MjU3IDE4NmI3MjU1MGU1MzUzM2VmNjE3NWY2NDExZjkzMmMxMjk4MTkzZDcgbGVnYWN5LXRydW5rCiszNzI1OSBiMTRmN2VlMjVkNTBhOTM0ZmQ1MmNmMTViOThhZGU2Nzg2ZDliODBkIGxlZ2FjeS10cnVuaworMzcyNjAgNTM0NjkzYmIwMTBiYzJmOWJlNjdjMGQxMDJiMzFlNzVjZmY2MTgyYSBsZWdhY3ktdHJ1bmsKKzM3MjYxIDk4YzgwMTdlODUzNWI5MjdlZTFjNmFiMzk2YWQ4MmFkZDAyMGZkNDIgbGVnYWN5LXRydW5rCiszNzI2MiBkMWY4YzYzMmI2MDVhNWZiNjBhMGM0YzdlNzgzMTk1NDkwMzA5ODY1IGxlZ2FjeS10cnVuaworMzcyNjMgM2ZhNzljYzlkYTVkYTI5MGUxMDQyNzQ0YWE5N2U1NDY0OTY1YWU0ZiBsZWdhY3ktdHJ1bmsKKzM3MjY0IGI5OTQ1MzM1ZGEyNzJjMjg2MzFkZTViOWYwYjNiNTU5MjNjMGRjOWQgbGVnYWN5LXRydW5rCiszNzI2NSA0NzQ1Zjg0N2NmYTE0NTE0NTUxZDgyOGUzNGI2MzNhN2E2Y2ZjMTNiIGxlZ2FjeS10cnVuaworMzcyNjYgZGYxY2Q0MDcyMTc3ZGQyZTU2ZmVhMTE0ZjEzOTA3ODI4NmRhMjk0YyByZWxlYXNlMjMtbWFpbnQKKzM3MjY3IDVlZDU2NDkzZjBiMDE2MDM1M2IyYzU3YTQ3ZWZlOTc2YmQ0NzA1ZjMgbGVnYWN5LXRydW5rCiszNzI2OCA5N2MyMDdkYjkwYTFkMDdkYjY5ZWJiODRmNTkyYjQwNGUwMDFmYTBiIGxlZ2FjeS10cnVuaworMzcyNjkgMjFjNzkzNDBkZWQ1ZGUwMDM4ZWJiNzhkYjMwY2IwZjE5ZDk4NzdiZiBsZWdhY3ktdHJ1bmsKKzM3MjcwIDQ4M2MwYjRiNjMzMjhmMjllNzllNzk1YmM4ZTk4MTgzMWJkYjcxNDUgbGVnYWN5LXRydW5rCiszNzI3MSA2ZmYxYTViY2RmMjJkNDMwNGU1OWVlMTNmNTBjMTkxYmJjYTY1MzhiIGxlZ2FjeS10cnVuaworMzcyNzIgMDc4NDU1NjgyODc1NzJlMDhmZmE2NzA4YTdhNWE0Y2MwNDJkN2Y2NiBsZWdhY3ktdHJ1bmsKKzM3MjczIDhlMjNiZDNkNWIxYTcwZmFhZWMwODNhN2VkZmVkZmYwOTIxZjk0ODggbGVnYWN5LXRydW5rCiszNzI3NCBmYzJjZTU4MDIxNmM4ZGNlZWRhZTgwYWQ3YTJjZTI3ZDJmNDVmMDM1IGxlZ2FjeS10cnVuaworMzcyNzUgMTM2YjM4ODU2OWEwYzQ2MGM2Mzg4OTJhYWVjOTIwNzkyZDZmOWFiZCBsZWdhY3ktdHJ1bmsKKzM3Mjc2IGMwOTMxOGIwMDkwZDZiOTdiNTViMjA0YzI2OThkNGExNDQwZjNjOTggbGVnYWN5LXRydW5rCiszNzI3NyBlMWFiMmMxMmNkNWVmMjVmMGQxODlkMGMwYjYwMThiNzY1MGQ0NWYzIGxlZ2FjeS10cnVuaworMzcyNzggODM4MWQwNzNhZDM4NmIzMTNjNDgxNDRlMmFlOGFlODMyMGYwZmFjNiBsZWdhY3ktdHJ1bmsKKzM3Mjc5IGRjOTdmNTgxZjIzMzQxMTY0MzQ4ZTRhYjNkZjA2NTI5YjczMDA4MTMgbGVnYWN5LXRydW5rCiszNzI4MCA1YjZmYmE2NDU0YTA5YWE4NzBjZWI4OGUzNmVhZjMwNTM4MTBkZTZlIHJlbGVhc2UyMy1tYWludAorMzcyODEgYWQwMGY3YzBhZDA3NDI2ZWQzMjJiMDdiYWUyMzFkNTY4MDQzOWFmYSByZWxlYXNlMjMtbWFpbnQKKzM3MjgyIDc2N2EzOGRjYjMwMDk0NDZmZWVmM2JmY2M1NGU4ZDY4OWEyZjYyMzAgbGVnYWN5LXRydW5rCiszNzI4MyBkOWEzM2VjYmM3ZjI4YWFhYjA3MTY3YTliMjFhNTkxYThkZTUyYTBhIGxlZ2FjeS10cnVuaworMzcyODQgMzBlMjczODQxYmFlMGIzOGQwNjhlMmJiMGZlNWNkZThjNTU2NjQyNiBsZWdhY3ktdHJ1bmsKKzM3Mjg1IGI2ZTg3NWFhNTA4YmY4MjAxZDc1M2YzNTg1YjkzMzE3NGVlNzJjYjQgbGVnYWN5LXRydW5rCiszNzI4NiA3MTA4M2ExNzI1Y2JlNzg3Y2JlNWIyMGM4NDQ1NTg4Mzc5MGMzZjY5IGxlZ2FjeS10cnVuaworMzcyODcgYjVmNjExODMxN2QwZDAxNWRhNTkxZGE3NDQ3OGU5NzEzMjc1OWM5ZCBsZWdhY3ktdHJ1bmsKKzM3Mjg4IDY5MzI5NDNkZTZiMWY1OWJmNzY1Zjk2NWQ3Zjc4YWNjZDk1NTAwMjEgbGVnYWN5LXRydW5rCiszNzI4OSAzYWZiNjdkOTc0MmI3ZGNmNjI0NWYxNzFhMTk0YmY3ZTRlM2M5NzhiIGxlZ2FjeS10cnVuaworMzcyOTAgYWI2MmY3NmNhOGUyY2MzODY1ZmNlZmJlZmViZjk2OTViNmQ1ZTk5NiBsZWdhY3ktdHJ1bmsKKzM3MjkxIDg0ODBiNzJhYTYyNGRhMzM4ODIzNTc0YTMzMTNiOGViYTYzODBlOTkgbGVnYWN5LXRydW5rCiszNzI5MiA1NzQ3OGExM2ZiZjY0NGQ1MDNkYTY2YjI5MTExZGIyZjk2MGMyOWIzIGxlZ2FjeS10cnVuaworMzcyOTMgMjEzODNmYjFhOGYyOTFjY2I5N2QxMzI5NzFmNzQ3YWM3YmFlMmQwNyBsZWdhY3ktdHJ1bmsKKzM3Mjk0IDk2ZDNlZmI5NDBjZjM0M2MyMWIzOTU4MjA0Y2YyODZiODc3MDgxZDcgbGVnYWN5LXRydW5rCiszNzI5NSBjZDA3MGZmYzg5MmQxNDAwMjlkZDYyYjUxYzAzNThkMjUxYTg4MDBmIGxlZ2FjeS10cnVuaworMzcyOTYgNGI3MDhmYTBhNjBhYjVkMTcyYjg3YjUxM2Y2M2EyNTBlZTUxMTkyMiBsZWdhY3ktdHJ1bmsKKzM3Mjk3IDA2YWJkY2Q1N2ZhOGQzOWMwOGNkMzc5OWNjYjdmM2M0MWQyMzY0NDcgbGVnYWN5LXRydW5rCiszNzI5OCA2ODUzOGUxMjRlZTBhOWIzZmU2MzE4ZjZiMGQ2YzUxNDE4NzI0Zjk0IGxlZ2FjeS10cnVuaworMzcyOTkgMzA2OTdmNDQ2Mjg2ZDA5MWU5OWVmZjg4Y2ViMjQwNWU5YTg2YzNjNCBsZWdhY3ktdHJ1bmsKKzM3MzAwIDg5N2EzNjNmMGU4NmZhYTdjMDVmYmVjOTAwMTUwODBlOTlkZWVjZWEgbGVnYWN5LXRydW5rCiszNzMwMSBmYWMyYTUzOTA2ZjE3MDUwNjVhOWZkMDg2MzE3YWRjMWI4YzlhNTg3IGxlZ2FjeS10cnVuaworMzczMDIgYTI0MzI5Njc4NmNlNzg0MDEyMGU1Mzc3M2QxNDRlYjVhNjQxOGM2YyBsZWdhY3ktdHJ1bmsKKzM3MzAzIDYyOTIwMGQ4ODBlYTI4YmFjZGMxNzVkZjIxNmFhZmI1OTFlYjQ3ZWQgbGVnYWN5LXRydW5rCiszNzMwNCA1YjMxYjRjM2I3YmFjNWQ0MWMwYTEzMGE5NTUzNzAxNjVjMzllNTlmIGxlZ2FjeS10cnVuaworMzczMDUgZTQ0ODlkNTZmMTA5MDIwNzQ3MjhjNWJmNGYwOGYxOWEyOTQ1OThjNSBsZWdhY3ktdHJ1bmsKKzM3MzA2IDRkYWE3YzcyNWE3OThlZWNhODc4ODMyYzZmYTI2YzQ1NTJmZTlkMDAgbGVnYWN5LXRydW5rCiszNzMwNyBmMjRhN2ZhMzhmNGY5MWJlZmI3OGVlNGY0ODk0ZGVmYjBjMjMwZWJiIGxlZ2FjeS10cnVuaworMzczMDggN2JmNDNiZTgyOWY3ZTdhNGRlNDQ5YmVhZWQ4MTdmZDllNmJmYTcyYyBsZWdhY3ktdHJ1bmsKKzM3MzA5IGNhZGNiZjk2MmExZmQ2N2E0MmMxNmFkNzNjNDc1OWM3ZjJjNzRmYTYgbGVnYWN5LXRydW5rCiszNzMxMCA2ODhkOTgxYzYyMzRiMTM0NTVhNjY5YThmZmU1NDVkMzQ2Njc4ZjBmIGxlZ2FjeS10cnVuaworMzczMTEgNjRkNGU3OTZiM2RmMTI2ZTY0MzNmMjhhMDU2NWZmNWU2OGIxMTdiZCBsZWdhY3ktdHJ1bmsKKzM3MzEyIDU1NzBmYWUxZjAxY2QwNTNhMmQ3MWNiZWRjZDc3YzdlMTllNmU5NzEgbGVnYWN5LXRydW5rCiszNzMxMyAzMjQ2OTNlZjMyMGE1ODc2NDViMTI1ODhhYjNjYTJhMWExMTU4YjdlIGxlZ2FjeS10cnVuaworMzczMTQgODE2MThhN2Q0OTBlNzFkODE5ZDRmYjhlMGZlOTY3N2U5YjQ1OTQ2ZSBsZWdhY3ktdHJ1bmsKKzM3MzE1IDI1ZmI5ZTVmNWY0NTMzMzMwN2FiOWVhNDU0NWMzODczYWY0YzEwZWMgbGVnYWN5LXRydW5rCiszNzMxNiBlODMwOTNhYmM5NThkMDRmYzVlMzkzOTU1MzQxZjJkNWU0ZjJkZWJlIHJlbGVhc2UyMy1tYWludAorMzczMTcgN2E3NTE2ZTZmZWIyZjVmMTNhYjZlZjg5NzA1MTVmOGIyMjI0NzI4NyByZWxlYXNlMjItbWFpbnQKKzM3MzE4IDNkYWE2NjMzZjAxN2VmNDdmNjhmYjAwOGNkMDVkMTVmM2QwNmU3MzMgbGVnYWN5LXRydW5rCiszNzMxOSA5ZTNjNTJjYTNhMDRkM2YxMjFmMmIzZmRjYjc0M2VhNTM1NGI2NGYzIGxlZ2FjeS10cnVuaworMzczMjAgNDg3MjgwY2Y3MWI5NWQwMjE5YTgzNTU1OWE0MDNkYzhjODNjYjE4YiBsZWdhY3ktdHJ1bmsKKzM3MzIxIDAxNmQ3MDE2YzZjNjNkNTA1ZjkxOTA4NDU1MTJlODgzMjM0YWEzZDkgbGVnYWN5LXRydW5rCiszNzMyMiA5MWM4N2NlYTc3NjcxMTYwZGE5MDMzZDc2M2M5YTFkYTZmNmUxNzA2IGxlZ2FjeS10cnVuaworMzczMjMgOTQ5N2M1ODEyNmJlNDAwYWZhYTdkMjdmZGE5YTZkZDYxYmE3NWJmMSBsZWdhY3ktdHJ1bmsKKzM3MzI0IGRjZTYyNDkzM2MzODdlYzMzYjljZmYzN2VmNDY1OWZlMjY4NmE0YzYgbGVnYWN5LXRydW5rCiszNzMyNSBjODgyNWE3NGU0MjFmMWZiM2VjOWFjYWQwZDM4M2Q1NWU2OWJjMDgwIGxlZ2FjeS10cnVuaworMzczMjYgNTg3NjYzNmNhOGM2Y2NmYjE0MDI0NTM1YTgyMjVmYjgwYjdlZDZhOSBsZWdhY3ktdHJ1bmsKKzM3MzI3IDI4ZWY1ZmUwYjhiNWRlMzE4OTg0NDRhODcyZGRlMTFiNTYwZWJkOTYgbGVnYWN5LXRydW5rCiszNzMyOCBkOGEyNjFhNzcwMjgzYjAzMTRhZDc4ZWNkODBkNGI5M2IzODYxMjdiIGxlZ2FjeS10cnVuaworMzczMjkgZWI1MTcyOGVkMTFmMGUzMDhmZjA1NWNjN2I5MjFlNWI5NWVjZmM5NSBsZWdhY3ktdHJ1bmsKKzM3MzMwIDQ3N2NkMGY2MjJiOWVkYWViMWQxNGU3Mjg5ZTIxOGMzODJmNGU0ODEgbGVnYWN5LXRydW5rCiszNzMzMSBlMjNjYTk0ZWQ4ZWRiMWYxZDczMTM4YmIwMGRjYjExODRhMGJhM2Q5IGxlZ2FjeS10cnVuaworMzczMzIgYTA0NTE1YTk4ODMxNTkyZTIwOGU1NjdlZDZiZjExMmMxMTRiYmIyMCBsZWdhY3ktdHJ1bmsKKzM3MzMzIDkyNWNmOWIzMjg1YmZiOGEzOTE3Yzk3NmZmZWI3MGUyOGVjNzYyMTAgbGVnYWN5LXRydW5rCiszNzMzNCA3NDczYTE5NWQyMjMxMjIzODIwZDQ5MzBiMmI3ZDQ0NGMyYzk4MDYzIGxlZ2FjeS10cnVuaworMzczMzUgNDFkYmVlNWVkMjk1ODZjYjk4NDNmMGMxMGQ4ZWM0NzA5NmQ5MzQ1ZCBsZWdhY3ktdHJ1bmsKKzM3MzM2IDM2NzY3ZmUyNDI1MmIxNGRhMTRjMDUzMTlhNTMzMDQxNzJjNWJmNzkgbGVnYWN5LXRydW5rCiszNzMzNyAzZjg2ZjJiYjliNTZlODQ3M2M0ODIwNDIzZDIyNWZlNWJlNjY5OTVjIGxlZ2FjeS10cnVuaworMzczMzggN2ZkMjJlY2RjOWRiMDkwMzUwZDI0ZDg3NjlhMGYyNjA2NTg3ZTYwOSBsZWdhY3ktdHJ1bmsKKzM3MzM5IDRkMTY3ODViYTVkYzFjNGJmZDdiMWE1MjEzNTVjZDIzNmU3MGNhNzggbGVnYWN5LXRydW5rCiszNzM0MCBlODA4Y2QzMWZiZGM2YTA5ZWExZjMxZmYxMWI3ZTY1MzRiMWM0Zjk2IGxlZ2FjeS10cnVuaworMzczNDEgYTIyMDA3MzUzNmQ2OWE3NTJlN2FkYTgyNWMzM2VkNDk2MDFhMWViYiBsZWdhY3ktdHJ1bmsKKzM3MzQyIDFiM2FjNjc0YTU3Y2JmZmIzM2RjNjY4OTc4MjFhOWYxMjA5YTdhYWMgbGVnYWN5LXRydW5rCiszNzM0MyBiODdlYWE0NmM5Y2JmMWRlNTU3NmEwMWQ3N2VlNjRkMTcwZTJmZmJmIGxlZ2FjeS10cnVuaworMzczNDQgNTM3M2E1YWViODAwMjJiM2VkMzBlYjMwODI4MzY0ODE1YmNhN2JiNSBsZWdhY3ktdHJ1bmsKKzM3MzQ1IGVhY2RjMjk2MDZkODE0NDkyZTc4M2JiZDY5ZTE3YjhmOGU1NGRlY2QgbGVnYWN5LXRydW5rCiszNzM0NiAyNjIzNjY4YzVmZjViNGQ2MDg2ZmFmOGJmNzIzOThjOTBmMmU4NjkyIGxlZ2FjeS10cnVuaworMzczNDcgYzkzZDJiZWM2OGJlYzQ4YzVkYTYyMjdkZWIwOWFiZjQ3NzA2MDZmYyBsZWdhY3ktdHJ1bmsKKzM3MzQ4IDE4YzdjMTdjY2Y4NjMxNTc1NGZmZjY5ZGQ4NzZkMDY4ZWUxMGI3MjAgbGVnYWN5LXRydW5rCiszNzM0OSA4MjNkNjQ1YjMyYmZlM2YzNmY0Yzk2NzBlNzgxZTRjYTFiYzIyMGFhIGxlZ2FjeS10cnVuaworMzczNTAgNTNjMTM1N2M5YzYzZDU0ZTgyYmJiNTBmYzQ5ZjkwMzRmMjJmYjExOSBsZWdhY3ktdHJ1bmsKKzM3MzUxIGNmYjJmNWUwOTc0MDkzNjY3NzI0ZmY2NTM4MWRiMDhjNDYwMTg0ZWIgbGVnYWN5LXRydW5rCiszNzM1MiA3MWVkNGIzNWZkYzQ4ODc2ZDFhYmU5MTM5YzhlODZlNzFlOTlmNDAwIGxlZ2FjeS10cnVuaworMzczNTMgNGNiMTAxNjUyNWI3ZGVmNWJkNjY5ZjcyMGJhY2FiNWVkYjgwZmU3MCBsZWdhY3ktdHJ1bmsKKzM3MzU0IDczODViYTI2ODBlYjcxYmY3OWZjNTg1YzI5MTFjNTU2ZWM5M2UyMzIgbGVnYWN5LXRydW5rCiszNzM1NSAwYzI5OWNhYmY0ZjA2Yzg0N2RhNTI0M2I2NGViMmI1MDI3MGMxN2RiIGxlZ2FjeS10cnVuaworMzczNTYgMjk0ZDM3MGU0M2QxNGRkOTE1NGJjN2VlMjkxYjlkYjQ0ZDU4Nzg0YSBsZWdhY3ktdHJ1bmsKKzM3MzU3IDQzMzYwNmU5NTQ2YzM1YjhlNmI4M2U4NmM2ODk4ZjFjMjRkODVlNzggbGVnYWN5LXRydW5rCiszNzM1OCBkOTg0Y2I3ZTIzNTIzNmZhN2ZmNmU2MDYyODUzMGEwMWQ1NGE0ZjI0IGxlZ2FjeS10cnVuaworMzczNTkgMmQ2ZTE4NTQwODJlOTQ4NTQwMDk0MDNjZDU2MTliZTA3Zjk4Y2JmMiBsZWdhY3ktdHJ1bmsKKzM3MzYwIDllMmI5NGEzYjVkY2MwZjE4ZmI5M2Q1ZGQwZmI0NDVkOTgxNmJkMzUgbGVnYWN5LXRydW5rCiszNzM2MSBjM2FiNmY0MGI2ZThiYjJhYTMzMTg2NDQ4MTk1ZWExOWRmYjIyN2U3IGxlZ2FjeS10cnVuaworMzczNjIgYWJiZGJiYTU2YThiNzNkMDM1Zjg0MGI1Yzc3MzY5M2Y1NjEwM2Q3YiBsZWdhY3ktdHJ1bmsKKzM3MzYzIGE0ZDM2NzNiY2Q2NjQ3MzA2OGIyZWVhNDYzNDcxOTJmYjBmMGRmMTYgbGVnYWN5LXRydW5rCiszNzM2NCBkYTFkYTMzMWY2NGVmOGVkYmY5NWJlNzFhMzU5NGQ2NmY2YzM5ZDZhIHJlbGVhc2UyMy1tYWludAorMzczNjUgYWY5YmVkZDVhOGU3MjEwNjdlMjY0ZmNiYTI3NGUwZDlhODhmYmM0ZCBsZWdhY3ktdHJ1bmsKKzM3MzY2IGE3MGIzZWUyZTMwYjg5ZjU5YjA4ODMwOGI1YjRhYWE0YzAxMmE1MDAgbGVnYWN5LXRydW5rCiszNzM2NyA0NWM1NzQyYzFlMTNjYTRiM2ViNGZjYTk4MWMzZDYwZDlmNDBjMWZlIGxlZ2FjeS10cnVuaworMzczNjggNzhjMWMwMzc3OTYzN2ZjNjQwNjJkYmZkMjAzZmI5NjdkN2ZlMGI0NiBsZWdhY3ktdHJ1bmsKKzM3MzY5IGNjMGFlMDM3NDNiOGUyZGEzOTI0NTA4ZjA1MmY5OWEzOGRiMWM4MTggbGVnYWN5LXRydW5rCiszNzM3MCA0YjgxOThhNzQ4NzMxMmI4OTUzNGJmZWJmOWQ4NTQwYTVhMWUxNTgxIGxlZ2FjeS10cnVuaworMzczNzEgNzI1YzQ0NDIxYTQyZjU5Yjc5ZTM4MjZiMmEwM2Y0ZGZjODhkZDUxZiBsZWdhY3ktdHJ1bmsKKzM3MzcyIDk0ZjUwMGViZjYwYTQ1ZjZlNThjZDExNWU0ZDlkODAxN2ZjYjZkZmUgbGVnYWN5LXRydW5rCiszNzM3MyAxZjU0MGJmOWE5YjQwMjdiZDgyY2NkNjIwMDVlNWQ0ZGUwZDRhMzUwIHJlbGVhc2UyMy1tYWludAorMzczNzQgMzIyMTg0ZWY3NjIyZDY3ZjNhMjEwOGQyN2QwMmM0OWY3NGI3MzEyYSByZWxlYXNlMjMtbWFpbnQKKzM3Mzc1IDAzZWRiNjNhZTA3MThmNGY1YWFiMDlkM2Y1OGY5YzE1MzRlNzliMmQgbGVnYWN5LXRydW5rCiszNzM3NiAxMWQ0NTAwYmU2ZmE0MThlNTlmMDJiNWE1Y2NjNGMwYTMyMGMwMjZmIGxlZ2FjeS10cnVuaworMzczNzcgZjQ2NDA4MTVlNWJiNTAwYWQzMzc4MTU3YzUxNzQ0ODc5N2ZmMDhlMiByZWxlYXNlMjMtbWFpbnQKKzM3Mzc4IDZiM2RhNDdiZGRkNjhhNDQ1YTE3MjdkZDQ3NTNiMjk4MmQwYzY3MDQgbGVnYWN5LXRydW5rCiszNzM3OSBhNzcyNTdlNTQ5OTZhYWY1ZWMyZTAxMmE4YWRlYmU5YzY4NzBjMzk5IGxlZ2FjeS10cnVuaworMzczODAgZTllNjVlZjk0NmVjYWQyNmQ3ODc3MGJlY2EyNmVkZTgwNmNlNWI4NSBsZWdhY3ktdHJ1bmsKKzM3MzgxIDMwMTI2NWI4MGM0MTQ0MmNiZTI4YjBmMDZjMTNlNTQ2NDFhMDQwMWEgbGVnYWN5LXRydW5rCiszNzM4MiBkNTI5NjE1OWYxMWNmNGRhNTBmNDVmM2U2MWEzNmIxNzkzYzg4OGM2IGxlZ2FjeS10cnVuaworMzczODMgMTM5YTQwMTJiZWFkYWZjOTM4M2UwNTkyMjY1MTlhNmI3NDY4YjRiZCBsZWdhY3ktdHJ1bmsKKzM3Mzg0IDNlMTdhZWQyMzI0YzMxN2MwMWRmZTgwMmFmNGUxNWJjNDdmYWZhZTkgbGVnYWN5LXRydW5rCiszNzM4NSA1NWVjYTdjZDM1MzFkYzZhMjhkNjQ3OGY0OTczYmJlODczZWMwMTcyIGxlZ2FjeS10cnVuaworMzczODYgMDZmMjgyMzhkZjMxMTU5YzI2YThjYTRlNTU4MGFhMDAxN2U4M2IxMiBsZWdhY3ktdHJ1bmsKKzM3Mzg3IGQ4MzY3MGYyNGQ1Y2MyYzNiNGE0MjgxOWZiOTQ2NTJmODllNzNlYTAgbGVnYWN5LXRydW5rCiszNzM4OCAzMGQ0MjhmOTkyZjlhOTcwYTFhNWJhMWMyNjBjNmNlODk0NjE5YzQ5IGxlZ2FjeS10cnVuaworMzczODkgZDNkNmQ0MjAwOWE4YzQ3YTU4OTkyYjU4YzFjNjE3OGNhMGZiNWZkNSBsZWdhY3ktdHJ1bmsKKzM3MzkwIDE3NWVlZTA5Y2I5ODE4MGFiODk5YWE4MGNkYTRmNjExNDhlMTNjMGIgbGVnYWN5LXRydW5rCiszNzM5MSAxODA5YWJkMzkzNDI2Mzc4MDA0ZDkxMzQ3MjA1YzJmYzk1ZDFjNmI4IGxlZ2FjeS10cnVuaworMzczOTIgYTNmYjVlYmNhMzBkNzFkNjNmYTZjNzk0NWEwZTU1NGYzNTI3Y2NmZiBsZWdhY3ktdHJ1bmsKKzM3MzkzIDI1ZTA3YzQ0ZTVkMDViMThlZDgwZGRlMDhjYTQ1ODMzMWI5NDQ5ZjQgbGVnYWN5LXRydW5rCiszNzM5NCA4ZjY0YTg0ZmE4ZTZiZWY3MmNhOGZlYmZlYmVkNGY1NWFjZTNmZTIwIGxlZ2FjeS10cnVuaworMzczOTUgNWFjOGFmZDhkOTA0MDY1Njk4ZjFkODVmMDhiMWI0MWRlZWViZDliZSBsZWdhY3ktdHJ1bmsKKzM3Mzk2IDY5NWU1YmIwODM4MjM5M2Q5MzU1MDcxNzIyM2JhMGZjM2FlN2QyMWIgbGVnYWN5LXRydW5rCiszNzM5NyBlN2ZhN2I1Yzk0NDFjMzlkMjhjY2U1ZGNmZTU0YTNmOGVmMTIxYjhhIGxlZ2FjeS10cnVuaworMzczOTggZmUyNDJmNjlhOWQzMjgyMmFmM2UwMzVlMmVmNDIyZTliY2YwNWQzNiByZWxlYXNlMjMtbWFpbnQKKzM3Mzk5IGVjZDY1NGRhYWVjOWYwMGIyYTQ5MGMyN2I4ODEyZDRmMjU1ZDFkNTAgbGVnYWN5LXRydW5rCiszNzQwMCA5MmRjYTk4Y2Q0MzQzMTRmNWY0OTJjMmE5ZWMyMGUzMjU1NDVhMDJlIGxlZ2FjeS10cnVuaworMzc0MDEgNTI2NDI3ZTg4M2U4MjQxY2NlMTlmN2M0N2EyNzhiZmE4ZTJjMGNhYSBsZWdhY3ktdHJ1bmsKKzM3NDAyIGJkMTNhNDc4ZThkNjFkZmRkMzk3YmYwYjlhMTcxYzUyN2ZjOWJmMzggbGVnYWN5LXRydW5rCiszNzQwMyAyYjQ5YjRhODVkOWViNGE0Y2ZhOWYyOWMyMWQ2NDljMzgzOTQ1NjcxIGxlZ2FjeS10cnVuaworMzc0MDQgZjY3ODliN2VhYjRlMzBiY2NiODUxYzQyZWIzYzg5YjU1ODA0OTllNyBsZWdhY3ktdHJ1bmsKKzM3NDA1IDc4MWFlZjk3NDQ2Mzg4YjM4ZmY0M2Q0NzQxMDI3OGU5NmJkOGRjZjggbGVnYWN5LXRydW5rCiszNzQwNiBkNzRkZGNmZjA3MjQ0Nzc2NjU0ZTIzYTBjOTFmY2M0ZGJmOWNjOGI2IGxlZ2FjeS10cnVuaworMzc0MDcgYTNkNzhkNmJjYTUxOTI0MjM3YzJkNDljYzc3NDE2YzU5ZjNlYTc4ZCByZWxlYXNlMjMtbWFpbnQKKzM3NDA4IGQ2MDcxYTA1YmE4NGFmOWJmNzgwM2NiNjNhYWRiYjQwMjJlMmZjZTIgbGVnYWN5LXRydW5rCiszNzQwOSA2ZDA1NWEyNzViNGJkMzk1YTMwNmY2NDIzNzAyZWY3ZDk2MThhN2FlIGxlZ2FjeS10cnVuaworMzc0MTAgYmY2ODczMTY1MDc5ODZiZDIzYjM0NzY2MzdhMGE2MTdkMDRjN2FhNiBsZWdhY3ktdHJ1bmsKKzM3NDExIDcwMjM2N2RhMmM3MmJmNDJlNWZhMzkzODA4MzU2Nzk4ZjVjN2NmMDQgbGVnYWN5LXRydW5rCiszNzQxMiBkMzc2ZmU4NjJiMTg4NTRkNzJkYjg0MDVlMTQyNTBhZDBiMWIzZDFjIGxlZ2FjeS10cnVuaworMzc0MTMgZWNhZjBlOGZhNzM3OWU5MWRjMzg3MGYzNzUzYjc4YjljZjkyY2RmOCBsZWdhY3ktdHJ1bmsKKzM3NDE0IDY2YjU2ZDU2ZTY4MGQ0YjA1NWQ4NWY2YjYzZTNmOThjMDc3Mzc0NGMgbGVnYWN5LXRydW5rCiszNzQxNSA3ZDdhYzQwNGM4MDQ5ZjkzMjAyYzk4ZmQ3OWMwYTdkYzFiMDAwMjNiIGxlZ2FjeS10cnVuaworMzc0MTYgYmY5ZjkxN2VlNGY5ZjE0MDBkMWY1NWQyZDA0YjAzOTFiNzVkZTVmYyBsZWdhY3ktdHJ1bmsKKzM3NDE3IGE2ZGMxNzZjNWQxMjkyMDIyYjE3MThjODkwMTMwMzgzYWQ2MzY1ZWQgbGVnYWN5LXRydW5rCiszNzQxOCBhNTc3MTNmZGVkMjNiMzViYmQ0ZGY0ZjY2MTMzMmQ1MzAxNjQ0ZDI5IGxlZ2FjeS10cnVuaworMzc0MTkgMTVhN2NjMDBjNWExNDFkN2I5ODA3N2Q2MjIwZDEwZGY2ODc1NTU3MyBsZWdhY3ktdHJ1bmsKKzM3NDIwIGZkOTM0Nzc4ZjRiNDUxZWQwZWYyOWIyMDYwNTQwNjM5ZDNmZjdlYWYgbGVnYWN5LXRydW5rCiszNzQyMSBlMTJjYTVjZGY3NDEwNWRkNTE0ZjBhMzk5YmFhYmU0YjEyY2IwYzg3IGxlZ2FjeS10cnVuaworMzc0MjIgZjJhMmNlZDFmZDVkY2IwM2QxNmIyNDZiZGQ2MjNiNDc5NTA0NzBjOSBsZWdhY3ktdHJ1bmsKKzM3NDIzIGJlOGNmZjRhMWVjYWRjNzI1NDQzM2M4NDYzZThiNGM0Mzc4ZjI2ZTMgbGVnYWN5LXRydW5rCiszNzQyNCA5N2NiOWVlYTIxMmUyMzdiYWRkNjllNTYzNjI2NmE0MDFlODNhZjFjIGxlZ2FjeS10cnVuaworMzc0MjUgYTc2MTI2MDAzOTkyNTE5ZTM2MDdiM2FiNDNmNjBjZTRkNzJhN2MxMSBsZWdhY3ktdHJ1bmsKKzM3NDI2IGMzOWY4M2ZkZDRkMDMyM2QwNzRlYzhjOGU5NTJjODg3ZGNlZjhhOTUgbGVnYWN5LXRydW5rCiszNzQyNyA4YzZmYzg3NzEyNjA0MjExMWY0MmQ0ODBiYmEwYjg4ZDhkN2JjYWY1IGxlZ2FjeS10cnVuaworMzc0MjggNTk4NDFjODE5ZjRjOTc1ZDAzMWZjZTRlYzA5MTAwMzkxNmY2MWU5YiBsZWdhY3ktdHJ1bmsKKzM3NDI5IGYyNDZkNzQ2NGI1YzhhNDMxNmE5NTE0Y2U5ODQ2MTVlN2VhM2E1ZjAgbGVnYWN5LXRydW5rCiszNzQzMCA5NjkyYWYwMWMxYTgzNWFjMDQ1YTRkMjQ0MWIzZDU1MTQ1ZTA5YTI1IGxlZ2FjeS10cnVuaworMzc0MzEgYzRlYWM2ZTkwMTYxNGI2NzI3YWVhYzZmNDA4ODA1NWU0ZGYzYzc1NSBsZWdhY3ktdHJ1bmsKKzM3NDMyIDg1ZGEwODhlN2E4YmZkOGY3ZTFjZjYwZmZkOWUyMmE3NzQ0YzJlNDIgbGVnYWN5LXRydW5rCiszNzQzMyAzYmQ5M2I4MTQwMzE5NzdiYTMzODU2NzhiZjQ3YzQ1NzU4ZjBlMDU2IGxlZ2FjeS10cnVuaworMzc0MzQgYzM3ZTIwNzRhOGM1NDg1OWU2NzUyNzdmMDdjYWFhZDQxZTc3ZjVhZCBsZWdhY3ktdHJ1bmsKKzM3NDM1IGE1NjgyYmM3M2UwNGY2MDc2YzU3Njk4NGRiMjY0OTdjNjU4MjBhNjIgbGVnYWN5LXRydW5rCiszNzQzNiA5ODZhNWI1NjlhZGVkZmRmODdhNDExZTQ2NzQzNmViNzMzNDk2M2Q4IGxlZ2FjeS10cnVuaworMzc0MzcgNTBiNmY5NGEzOGE3NzY3MzZmZmIzMWRkZmQ2Mjk5ODBhNGNmMTcxMyBsZWdhY3ktdHJ1bmsKKzM3NDM4IGU0NzhlYmUxY2IzMTZjODRkODM0YTQwYjE0MWYwN2FkMWU1MjM5OGYgbGVnYWN5LXRydW5rCiszNzQzOSBmMjc1ODRkMTEzYWYzZTM4MDQyM2VlYmFkNDFmNGYyZTZlYTQ3MzRmIGxlZ2FjeS10cnVuaworMzc0NDAgYzI4ZmZiZmIwYWU5MDkyOTI1YzUwZmI0YTU2NDBmYzVlY2M5YjAxYSBsZWdhY3ktdHJ1bmsKKzM3NDQxIDMxYmM1ZjBmNGNmY2M5ZmJjZTRmMDQ5YmFhMWM0NWVkOGVkODk2YmIgbGVnYWN5LXRydW5rCiszNzQ0MiAzMjVhODhjNmVlN2Q1Y2Q3NjdmYzkwZmUxMGRiOWRlNDk0Mzg1MmYzIGxlZ2FjeS10cnVuaworMzc0NDMgOGE1Yzg3ZjY4NWNkZTljYTE0NzNjOTBkZGIxMmYyNjMyMjJlNTNiNSBsZWdhY3ktdHJ1bmsKKzM3NDQ0IDc3NjYwZWFlZjI0ZGM0YTFjYWY1Mzk3NmU1YzU2NjE1MTE3OWUzZTggbGVnYWN5LXRydW5rCiszNzQ0NSA2MTNhNTUzMzg1NGEwZDQxYjM2YjRhYmQ1OGU0M2I3NTUzMjkxMGJhIGxlZ2FjeS10cnVuaworMzc0NDYgODA4NDI4YzU2MDk2ODc2NDMyMTA3NTg0YmUwNGMzYzZmZGFhNDRmZiBsZWdhY3ktdHJ1bmsKKzM3NDQ3IDFiNmIxMDQyY2Y0NTY5NTY1NThkMGU2YzgyODY4ZTFkNzY0ZDU3NTcgbGVnYWN5LXRydW5rCiszNzQ0OCAyYmMyMzUzMjYzMTYwYTQ4YTA1MmE4YTc2YTVkNGJjYjc3OWQxYTZmIGxlZ2FjeS10cnVuaworMzc0NDkgZGJkYzQ1NTY0ZDI0MDM4YTkwNTc3MGZhMjU1OWM0NTgzOTk0ZGJjMyByZWxlYXNlMjMtbWFpbnQKKzM3NDUwIDc5MTljYWRlYjkxZGQ3ZjRhZmE5M2ExMjRmYTU3Yjk3OWJiZjMwZDggcmVsZWFzZTIzLW1haW50CiszNzQ1MSAxNDA4MWVhNjU2YjJjMGExN2MwMDFhNjdlZWEzNjM0NTExMGJhMThiIGxlZ2FjeS10cnVuaworMzc0NTIgNjhkMTFlNDM5YTBiNWE0MzFiZWY4YTg1YTc1YjM5MDJjMGIwYWUwNCBsZWdhY3ktdHJ1bmsKKzM3NDUzIDIzMDM2YzdhZjY4NzZlZTIxOTgzYTg5ZmEyNTdhMDg2NjRlZDNhNWEgbGVnYWN5LXRydW5rCiszNzQ1NCA4ZjRiZWQ5NzBmZjk1MTQ1NmJiNGZjYWQzMjM4MTFjNWRiNzI0OTUxIGxlZ2FjeS10cnVuaworMzc0NTUgMDc3OTU0ZDQxYzUzMjViM2RkM2M5OTY1NzJiMDU4NzFjNGJjODgzZSBsZWdhY3ktdHJ1bmsKKzM3NDU2IDJmNjQxOWQwMDdhOWNiODY0MDM3ODIyNTk2ZTdlZTE4YTQwMGI1M2YgbGVnYWN5LXRydW5rCiszNzQ1NyBiNDg0NzRiYWQ3NmZjZTljOTEzYTZiZTEyYTBhYjdiNTg4NDM0ZTMwIGxlZ2FjeS10cnVuaworMzc0NTggZTkzNzBiY2YwMmFkYmYzYjI2MzU2YTYzNTIxYWI0MzI0YjEyNzQ1NyBsZWdhY3ktdHJ1bmsKKzM3NDU5IGE3ODk1YWVmMWVlODAxZDg4N2FjYTI0NzM3ZGNiNWZjZjdlM2E0NzUgbGVnYWN5LXRydW5rCiszNzQ2MCAwYzMyZjAxY2NkOTk3ZThmNDU1ZmJmZmU0YTFlNGUyMzU2MGFlYTU0IGxlZ2FjeS10cnVuaworMzc0NjEgMzU1YjE1ZTRhNGRhMjMyOWJiOGZmNjhkOTQ1Y2Q5ZjY4YjZiZmJhZCBsZWdhY3ktdHJ1bmsKKzM3NDYyIGNmMWFhYTdlNDAwNTVkOWM4NWQxZDdhZGY1YmFlMGYyNWJkMjU0NmMgbGVnYWN5LXRydW5rCiszNzQ2MyAzMmRmMWQwNWNiMmQ5NjM4NTU4NjBhM2RkY2VlMzk2YTFlMTNmNzNkIGxlZ2FjeS10cnVuaworMzc0NjQgNGI1NDE2YjE4NDY2NGZlYThkZTkyZjY3OWUzMzIwNDYyMWEzZTM1YiBsZWdhY3ktdHJ1bmsKKzM3NDY1IDc1MTE1ODVmMmU2YTQ2YTZjODliZTVhMmUzZDdmYjkxMTQzMDhhMjAgbGVnYWN5LXRydW5rCiszNzQ2NiA3ZDY2NzllZTM5ZjkwYmI2NmI4MTY2NmE3OTFkMDQ0OTU0M2Y3YmIzIGxlZ2FjeS10cnVuaworMzc0NjcgZmMzZTg5NjQzODg4OTAyZWNjYWQyYjJhMjIzNTM2YjdhNjFmZWFkNCBsZWdhY3ktdHJ1bmsKKzM3NDY4IDY0MTE1MmZiN2Q4ODI5NmQyYmEzZGUzYTgxY2UxNmUyNTAyODM4NWIgbGVnYWN5LXRydW5rCiszNzQ2OSBiMzQwOGE4NWM4OWM5ZDM5MjljMDBiMWE5M2ZiMGQxMDUxYzMzOWJhIGxlZ2FjeS10cnVuaworMzc0NzAgNGQ3YjBkMjA2YmM3M2FkZWI2NWVhMDMzOTUxOTAzNzY1ZWQyNzhmYiBsZWdhY3ktdHJ1bmsKKzM3NDcxIDU0YzMzZDA5NWU3ZTQ5YmNkZmUyNDgwNGU0Nzc1YjM0ZGQxMGM0NDMgbGVnYWN5LXRydW5rCiszNzQ3MiBkYjZmMjFlZTYxMzU5NzI1NDE2Zjk2M2ViMWRhMzI4N2MxNTliODI5IGxlZ2FjeS10cnVuaworMzc0NzMgMDg0OTg4YzIwYjc1Y2U1ZDE5MmE0NGNjZjgyMzc1ZjY4NTU5ZjJhOCBsZWdhY3ktdHJ1bmsKKzM3NDc0IGI4OTIyYTM2ZjA4MzgzZjk4YzAzN2QwMjQzZGFiNWQyMTZmZjYxOGUgbGVnYWN5LXRydW5rCiszNzQ3NSBjN2MzOWI3OWU1YjdlOGE1YWYzN2I2ZjVhZDQ1MDlkODM4ZGViNGY3IGxlZ2FjeS10cnVuaworMzc0NzYgNGVlNDhlMmVmYjY4Nzk3NDVhMTM4OWYxMzVmYzI2NThjZmE0NTg5NiBsZWdhY3ktdHJ1bmsKKzM3NDc3IDc2NjRlOGJhZTE5ZTIxYjU0OTdhMjYzZjAyNGRiOTMyYjFhNDA4NDAgbGVnYWN5LXRydW5rCiszNzQ3OCA4MzEzMTlmMTAwZDBhOWYwZGMyMzIxYWNmMzYyMjc0MmRlMWM5YTM3IGxlZ2FjeS10cnVuaworMzc0NzkgYjExZjkxNjJlZDBkZDU0NzkzNGVmZmEzMzM5M2QzOTg5NDU2OGZiYiBsZWdhY3ktdHJ1bmsKKzM3NDgwIDMxYjA4NjcwZWJkZGI1MDFhZjA0ODc4NWNjZTdmY2FkZjk0ZGI0OGYgbGVnYWN5LXRydW5rCiszNzQ4MSAyYjljMTk4NzJiMDE3NjBmYTVkZWEzOTRhNDU5NmExOTljNmMyNjEwIHJlbGVhc2UyMy1tYWludAorMzc0ODIgOGUyMGVlMmVjYzBjOWU2ZTAwNmFjZTNhMmI1MGY5MDE5NmVlNWRhOSBsZWdhY3ktdHJ1bmsKKzM3NDgzIGU2MzE4MDVjNzFiMDcyZjYwZDU5NDk5MWJlMTJmMDRiNjJlNWQyMGIgbGVnYWN5LXRydW5rCiszNzQ4NCAyN2FhMGUxMTkzMzBhMzdlYjVhZDc2NDdmZjdkMjBkNDcwZWExMjk3IGxlZ2FjeS10cnVuaworMzc0ODUgMzRiMDcwMDhhYTc4YmU3OTk0MjFjMmY5MTIxYTdiN2E0MTQ2MjhjNCBsZWdhY3ktdHJ1bmsKKzM3NDg2IDYzZmMwNTIyYTk1YjUzNTVmOTFlYzk5OTQ0MTIwZmE4MzhkMWZkODQgbGVnYWN5LXRydW5rCiszNzQ4NyA4ZTlkY2ZlMTRkODE2MmU0ZGE1MDljYzg3ODY5ODYwNGE3NTkxYjBkIGxlZ2FjeS10cnVuaworMzc0ODggNTczMGY3N2UzN2U0MWI2MzQxYjlmNmU5YTM3ZTU3YTJjMTc3ZjE5MCBsZWdhY3ktdHJ1bmsKKzM3NDg5IGYwNzRkYjBjMTRhODUzZjkwMzJlNmFjMDkxN2Y0NzJkMjg0MWE3ZmMgbGVnYWN5LXRydW5rCiszNzQ5MCBjZDU4YTliNGJhNjYzODY0Mzc2NGQ3NDQyYTAwMjk4MWFkNTUyNDRlIGxlZ2FjeS10cnVuaworMzc0OTEgMGFlMGJlZjEwMDE0ZTVmYjg1MjcxYjdiMjYyNGI5MWU5OGRkMWQ5MyBsZWdhY3ktdHJ1bmsKKzM3NDkyIDgzYTNlMmQxOTE0YTkwYTRkMzAzN2VjMWI0NzI2MDYzZWU3OWY5MmMgbGVnYWN5LXRydW5rCiszNzQ5MyBjODRkYmU3MTdkNDljZDg2NGViZmY0N2E4YWRkYzFhNTVmYmY2MTQ0IGxlZ2FjeS10cnVuaworMzc0OTQgMGYwZGRiNGNiMDQzNzM0NDgwMWUzZTJhNTk1YjI2NmQ2YjdlY2YwOSBsZWdhY3ktdHJ1bmsKKzM3NDk1IDY1NWY3NGVhMGYzMWY1NjFhMGU4NWMyZWY0Y2EyNmNmY2M3ZWM5MWIgbGVnYWN5LXRydW5rCiszNzQ5NiAyMzQ0NGNiZGVhNTU1MGE0YTUwZTE0ZjkzZjM2NGYyODllZGYzMjEyIGxlZ2FjeS10cnVuaworMzc0OTcgMjc5ZjAxZTcxMDcxYmY1NjM1MzU3MzgwODM2NjMxZmFmYjI4YWE3YiBsZWdhY3ktdHJ1bmsKKzM3NDk4IDZiZDRhMTA1NjcxNmI3NzJhNDczOTQ4MWMyNDVkOWFjYjZiYjhhNGUgbGVnYWN5LXRydW5rCiszNzQ5OSA4MzZlOTJjYzVjNGZiZGI2YTlhYjBiYjc2MDdlOGYyNDNmMzdkODExIGxlZ2FjeS10cnVuaworMzc1MDAgZTVkZTY5OGVjZDRiNGUwNTlkNWViZWJlOTdhMTFkNGViMmYwMGYyMCBsZWdhY3ktdHJ1bmsKKzM3NTAxIDZmNGJjYjNiZDIwMmU0MzBmYzc0ODgxMzkyMjgyZjJmMjBmMGE3OGQgbGVnYWN5LXRydW5rCiszNzUwMiA1ZTE5ZmQzNjQyZjA3M2UyZDM0OThmYjJlMTM2ZjlhZDJkYjAxZDRmIGxlZ2FjeS10cnVuaworMzc1MDMgNDAzNTBmYmU2NjVkZmYxYjJkYThjNmFmMGRkNTM4ZGQ5MzFjY2RhMSBsZWdhY3ktdHJ1bmsKKzM3NTA0IDMwY2IyMDBkNDE4Y2RmZWVhODU2OWM1MTE3NjY5MzQ0N2E0NGVhYWUgbGVnYWN5LXRydW5rCiszNzUwNSBjZDcwZjFhYzNjMjVkNjg2MGE5NmUzYjdmYjQ5OTExMTExMTYwZDQzIGxlZ2FjeS10cnVuaworMzc1MDYgNGZiOGM4OWY2NmEwYjk3NjI1YTZiMDBlNDg0ZGZhYmYxZjgzYzlmMCBsZWdhY3ktdHJ1bmsKKzM3NTA3IDkxNjM0ZjNiYTIxM2E1MmI5MDMwYTRlZDUyZmQwZThhZDI5OGUzNzMgbGVnYWN5LXRydW5rCiszNzUwOCAwMGMzNmUxYmM1MGJjNmIyYzg3NmZhODAyZWRjOGU2MGRlMGRkMTg1IGxlZ2FjeS10cnVuaworMzc1MDkgMGM0ZjA5NTg2M2I5ZWQyYWI3YzIzOTlmYmViMmFiMDdjMjc4YjlhNSBsZWdhY3ktdHJ1bmsKKzM3NTEwIDNkOGQ3ODIxNzU5OTlkOWQ1ODIyYjI1YWQxNmQ3NTNlNjNhMTExOTggbGVnYWN5LXRydW5rCiszNzUxMSA1YTI5MmEwM2VhNDE2NzczNzAzMTA4NDc0NzhmZGNhZWJjNGMwYjQ5IGxlZ2FjeS10cnVuaworMzc1MTIgN2M1MGNkZTFlNGZkMDVlNDg4NGQzNzMxYWQ3YmEzOTVkYzI5YzM0ZSBsZWdhY3ktdHJ1bmsKKzM3NTEzIDc0NTBiYjkzYzM5NWNiMDY0YTE5YzM3OWI0NmQ4MzczNmRjM2ZkMDggbGVnYWN5LXRydW5rCiszNzUxNCA0ODZlOWM0MGNmYjkzZmU0ZjA2MDIyZTA5ODAwOTdiMTAyZDdkN2U4IGxlZ2FjeS10cnVuaworMzc1MTUgOTQ2NjEyZjY0YTgzMmU0NjdhNTFlMTk0ZDM4NWMwYTdkZjZlOWQ5MyBsZWdhY3ktdHJ1bmsKKzM3NTE2IGM1OTFmYTFkNDM1ZGYwNzU4NzRiMWJmZjdiNDZlN2RlMjkxODlmYTAgbGVnYWN5LXRydW5rCiszNzUxNyA3ZTQyYThlYmIzZWZmMTE3Y2JiYTc3OTZjOGIxZTJkZGQ3YzQ4Njg0IGxlZ2FjeS10cnVuaworMzc1MTggYzgxOTI1YjYxM2RhYjA2MzYxNjI1NjQ5MWI4MWQzYzU1OTVkMjFiZiBsZWdhY3ktdHJ1bmsKKzM3NTE5IGMwOTdhYmRiNTU2NjNlM2U0Y2JmYTdlODkwMWIwZDVmYzgyMjAwMzMgbGVnYWN5LXRydW5rCiszNzUyMCAwYjdlMzE4ZWYwOTI2NTU4YWNiYzhhYjU4ZTE1MjU4M2FkZTZmNTA4IGxlZ2FjeS10cnVuaworMzc1MjEgNDViMTk4OGUyNjkyNGZiYWNiMzE4YzVhNWZhNWJmMjkwZjcwNmJhOSBsZWdhY3ktdHJ1bmsKKzM3NTIyIGNlODEzYTU3ZDQ0ZDNhYWU4OGM0OTBkYTZjY2I5NWViMGVkMmJmZWIgbGVnYWN5LXRydW5rCiszNzUyMyA5MTg5OTQ2ODM4ZWVjY2Q5ZDViYzZhNDRmNTA0NGFjOWY1MjU1ZTdiIGxlZ2FjeS10cnVuaworMzc1MjQgMGJmZDM1YTc2YTQ0ZjgxMmNjYTZkZTZkZmNlYTk2ZWUyNjc0Y2FkMSBsZWdhY3ktdHJ1bmsKKzM3NTI1IDYzYTAzODliZDVmY2E5OTYwNTY4ZDNmNWMxMTc0NzNjM2YzNTQ3NDAgbGVnYWN5LXRydW5rCiszNzUyNiBjYzQ2ODQwNTFjNDYzMzUzMDUwM2FmMjU2MjBmMGJlYzIxOWQwMTNkIGxlZ2FjeS10cnVuaworMzc1MjcgNTQxMjA5NmQwZjk1ZGUwOGM5MjZjYzNjNmIyNWI0ZGJmNGE5OWQ5ZCBsZWdhY3ktdHJ1bmsKKzM3NTI4IGUxMjk3NmU5OGY2MTNmNDMwZjBiYjgwYjEwYzQwMTJiYzlmZDEzYjAgbGVnYWN5LXRydW5rCiszNzUyOSA1ZGVmNjZmMmM5YWJlZTVmMDhlYWEyODQ0Njc0ZWZmMDQ5NGY3YjRkIGxlZ2FjeS10cnVuaworMzc1MzAgYWI1ODhjZTllNzFmYmZlMGMyMzc4NTY1MGRhYmFjZWQ2NWUwNmE1NiBsZWdhY3ktdHJ1bmsKKzM3NTMxIDExOGI2ZjY5ZTNmMTUzYjc4NzllMzRhYzZkY2RiMGI1MGEyNzAzZDYgbGVnYWN5LXRydW5rCiszNzUzMiBlY2YxZTg1MzQwNmI3Y2QyZWRhNjkzMzI2MmQxMmM4ODllZGI1ZmI5IGxlZ2FjeS10cnVuaworMzc1MzMgNjBiZjJhZmQ3MzEyMjU0NmVmYWYxYTdhNjllZDAwNGZlMGI5NWIxOCBsZWdhY3ktdHJ1bmsKKzM3NTM0IDg5ZmFhY2Q5ZWM3Njk1NTIzMWE2ODM1ZWM1MTQwY2Q1NTA5ZjVkMjEgbGVnYWN5LXRydW5rCiszNzUzNSAyMmVlOTE2NDNiM2YzNGI5NDdkMDE0OTBmMmFkZmU2ZDQ1OWE5MTJlIHJlbGVhc2UyMy1tYWludAorMzc1MzYgYjBmM2E2OTNiODU0YjdmZjgyNjYxZTY2MWM2MTk4YzgyODc5NWUwMyBsZWdhY3ktdHJ1bmsKKzM3NTM3IGQ4ZTc0YTBiNDY3NzVkYjY4NGE4OTNlYTg3YTY1ZmJlM2VkM2NjMGMgbGVnYWN5LXRydW5rCiszNzUzOCBkOTlkZTY1ZjU0MjU4MjdiYjVjYjc2OTE5MmY2M2Q4NTI3YjYwNmQxIGxlZ2FjeS10cnVuaworMzc1MzkgYmE4ZTE4NTRhODRiYWFjZjk0ZWExNjg2MmZiYTEzZWQ0ZTA5ZGJjZSByZWxlYXNlMjMtbWFpbnQKKzM3NTQwIDVhZTNhMWM4MGUzZmU3NTg5Y2NhMTBmYTkyOGIzOWVlMTY3ODIzODQgbGVnYWN5LXRydW5rCiszNzU0MSAyNjJlMWNmNDFkMzRiYzc1ZjljZTg3YmY0YzRjODZjNjA0ODI0NjBlIGxlZ2FjeS10cnVuaworMzc1NDIgYjMxYTUxMjA2Nzc0ODU4MjNjNmU0MTRkN2EwOTFkNjRjYWI4MjIyZiBsZWdhY3ktdHJ1bmsKKzM3NTQzIDU1ZmJhODg5MzBiYzdiODE2NjlkMDE1Mjk0MmExMzEwZTQwNGNkYjggbGVnYWN5LXRydW5rCiszNzU0NCBiY2FmYjY4YWQ5ODU4ODAwYTUyNjI3ZmM5MTBlNjM2NTJjNzZlMTQ4IGxlZ2FjeS10cnVuaworMzc1NDUgNDc4NGJmYzk5YTQxYmUwMzUwN2RmZmY5OGJmYjJiNGI1YWNkODkxZCBsZWdhY3ktdHJ1bmsKKzM3NTQ2IDM3YzY1YTZiMmVmN2Y0ODEyZGUxMTFmN2I0Y2U3ODkxYjhhOWM5NjAgbGVnYWN5LXRydW5rCiszNzU0NyBmZGEzNmFmMjI2ZmIyYmQ5NDdmODE2MDE3Y2U1ODFhNjUyNzNjYTYxIGxlZ2FjeS10cnVuaworMzc1NDggM2U2ZjU2ZTgxMDRhMmJkYzNkYTJjNjEzZjdkMmRmZTUzZDEwM2Q5OSBsZWdhY3ktdHJ1bmsKKzM3NTQ5IDlhMzg2MjVmYTJiMDhkNDZlNTRhYzdmNjM5NjQ5Y2YxMmEwMzU4NzggbGVnYWN5LXRydW5rCiszNzU1MCAxNzAxZGFlNjQ3NGUxNDgyZjA2NTIxMzkxZTRiMWNiYmNhNWI1NDE3IGxlZ2FjeS10cnVuaworMzc1NTEgNjgzYTJmOGY3NzFkYzcxOGRjNzU3YmIyNDVhOTI5YTRkMzMyNjBmZCBsZWdhY3ktdHJ1bmsKKzM3NTUyIGFmMzAwNDAzZWRiODIwZjRkMTFhYmUyZjYzZDQwMjY4ODA0ZWM1YjUgbGVnYWN5LXRydW5rCiszNzU1MyBhNWM4OGYyZTg2YTNmNDY3ZjczZGNmOWMzZTZlMjM4YmNkNDk5NTU0IGxlZ2FjeS10cnVuaworMzc1NTQgMzYxN2QxZWUyNzk3ZmJlNjJlNGZiODZjMjMzYzNmZTU3OGYxZWMzYiBsZWdhY3ktdHJ1bmsKKzM3NTU1IGQ4ZmZmNzA2YTljMjVjZWY4MTQ0M2YyMmNlZmQ3M2NmZTVkMjViMDUgbGVnYWN5LXRydW5rCiszNzU1NiBiYTliY2YyMTQxYTIzMjliNTc3ODMzMDI3ZDM0OTk3YzRkMWU0MDhkIHJlbGVhc2UyMy1tYWludAorMzc1NTcgOTYyZmEzZTIzMjE1YmU4ZjFiMjg0OTgxMWExMGRjMjg5NzRlMmM0MCBsZWdhY3ktdHJ1bmsKKzM3NTU4IGJhOWZkYzQ0Yzc3ODI1NjZjMzU3NjI0Yzc2ODY5NzI5NzdhZDM4MTcgcmVsZWFzZTIzLW1haW50CiszNzU1OSA5MjRiYjJhYWQ0ZjQ4MWI4YjE0YTAyODllODU1ODY3ZWY1ODUyNDdiIGxlZ2FjeS10cnVuaworMzc1NjAgZGMzYTY3NjdlOTYwODQyN2ZhNzcxMzEyMDZkOTlkZTJlY2I3NjY4ZSBsZWdhY3ktdHJ1bmsKKzM3NTYxIGFhYzRjYzY2MThiNTRiYjhlYmNiNjcwNmU2NTI0Y2RmNmJjMTE5ZTEgbGVnYWN5LXRydW5rCiszNzU2MiAwOTBmZmNiODNmMGFhZTQ2ZGRiMWJkY2JlM2QwYWQ3N2ZhMWQ2YWU4IGxlZ2FjeS10cnVuaworMzc1NjMgMGMyNmRiMzgxNjczZTI0MDU3MzJmYWViMzBhMDU0MGFiMDg1YzJkYiBsZWdhY3ktdHJ1bmsKKzM3NTY0IDY2MzI3NDE5ZWIwMDQ0YmZkYzUzNDg2ZDNiNDI1OGQyNmZhYTM3ODIgcmVsZWFzZTIzLW1haW50CiszNzU2NSAwOGI3Njc0NzA2NjNlMzU2OTA4MjMzNDU4MTFhNjdmYjUzMDg2NmQ1IGxlZ2FjeS10cnVuaworMzc1NjYgMzI3MWVhNjBiODJkYzMyMWNkYjA3YWQ2ZTVkMTBhYTVkYjYxNzQyMCByZWxlYXNlMjMtbWFpbnQKKzM3NTY3IDU0ZTY1MjdmMzE1MDg5ODEwYzY2OWE0MTFhMWVhM2I0NDczYjQ5ZWEgcmVsZWFzZTIzLW1haW50CiszNzU2OCAyOTViZDhjNTVhNzg4YzMwM2YxN2ZiYmVlYmI5ZGY1OWEwOTI5NzQxIGxlZ2FjeS10cnVuaworMzc1NjkgODkxMDQyYzk0YWVkMDFmNDRmZWIxMjI3MjUwYzEzNzk2YjY3MjFjNSBsZWdhY3ktdHJ1bmsKKzM3NTcwIDQ5ODFiYTU0ZjQzZDgxODEyMTYyODMzOTQwZTg5ZmM1NzdhYjE3NmYgbGVnYWN5LXRydW5rCiszNzU3MSA3NDJmZGFjM2Q1YWUyZmY0MzVlYjBkMWUyNWRiZWMzNzAxMTdlN2Y4IGxlZ2FjeS10cnVuaworMzc1NzIgNDAxM2YwYTUzODM1MTBmODEyNDdjMmI0ZWJmZDE5YWI3OWY2MjBmYyBsZWdhY3ktdHJ1bmsKKzM3NTczIGU3YzdiM2FmNjE2NDY4YTMwMmM3ZjZjYmMxYjU1OWQ3NThjN2QzY2UgbGVnYWN5LXRydW5rCiszNzU3NCA0NjE0NDRkZTdiMWZkMGExMzJjMDU0N2MwNTcwZmZiZTQ5NmVlNTg4IGxlZ2FjeS10cnVuaworMzc1NzUgNjY0YjE4YWE2ZmMxMjRiMjU1ZjBiMDk1NjA5YzlhODY5MWRlMWMxZCBsZWdhY3ktdHJ1bmsKKzM3NTc2IGJhYTI2NTNmN2E3NmQ5NGI4Mzg5MDE0MmM4NGFhMjUxOTFmNTUzMzkgbGVnYWN5LXRydW5rCiszNzU3NyA1MTdlNGVjMGRmODljYzUyOTljYzU2NGViODdkZTZhMDgyNDQ0MjVmIGxlZ2FjeS10cnVuaworMzc1NzggNjM1ZGQ4YTllYmQ5M2MxMjExOGJhMTBhM2ZhNzhjMzcyNmM0YWFkZSBsZWdhY3ktdHJ1bmsKKzM3NTc5IGE0NmI3NmViOTA1M2M4M2QzZjg3YTI4MmZjZDhjMmU3MzUxOGYwYjIgbGVnYWN5LXRydW5rCiszNzU4MCBjNTUyNDQ2YjdiYjJmNGI5ZWYzN2I5ODJiZDE3NjhjMGVjM2RiMjAxIGxlZ2FjeS10cnVuaworMzc1ODEgZjhjYjhmMGFjOGYxM2EzNTM3OTM2NGNlNzIxMmNiYmQwYjY3ZDZhYyBsZWdhY3ktdHJ1bmsKKzM3NTgyIGU2ZjFhZTEzYmU4NGRmMmY2ZDczYmUyNmUyZGIwMDUwNjIwM2EwY2EgbGVnYWN5LXRydW5rCiszNzU4MyBmMjM0YmUxNzI4MDAwZTljZTIzNjRiYjE3MTBkMzFjMDRiMmY3M2E3IGxlZ2FjeS10cnVuaworMzc1ODQgYzJhZTQ4MmZmNDJkNjNkZWJiNGYyOTMwNWU0NGU3ZWM3ZmY4ZGRkYyBsZWdhY3ktdHJ1bmsKKzM3NTg1IDJjNzliNTBhZmJhYjVlM2Q4MzUwZjFiMTJkZTc2ZGY1YmMxNjIxYmYgbGVnYWN5LXRydW5rCiszNzU4NiA3NGE1N2U2Njg0ZjM5MWNkMzM2OGY5MGU0NWRjM2UzMzNkZDNjZjI4IGxlZ2FjeS10cnVuaworMzc1ODcgNzY2NDE4MjRjZjA1MzU3YmZiNzRjYzIxMDY3ZDE0ZGQ3OGUxY2EyNSBsZWdhY3ktdHJ1bmsKKzM3NTg4IGM3ZmUyMjc3ZDE3MWQ0ZmE4YTViNzBkYWMyM2U2ZGIzZWQyY2JiNjkgbGVnYWN5LXRydW5rCiszNzU4OSBjOWIxZjI2OTRlOThhYWZkZjkzYTRjMjlhMDc0OTFkMzQxNmFlZDQ2IGxlZ2FjeS10cnVuaworMzc1OTAgYWNjMTkxYjcxNGI5OTczNTdlOWMzODRkMTlkNTJmY2VlMzk0MjRhZiBsZWdhY3ktdHJ1bmsKKzM3NTkxIDAyMzZiNjUzMGM0NjMxYzNlMGQzMzUzMWE0MDkwOGE2YjVhYjE1ZDcgbGVnYWN5LXRydW5rCiszNzU5MiBhMDFiZTM1MGVkNjE1ODFiNDI3M2I2MzIwYTYyZjJkZDRlMGZhZjE3IGxlZ2FjeS10cnVuaworMzc1OTMgMGQ2ZDU2YjIxNjRiN2NlOGM5MDBiMjgyNzU0NzY0ZWZhMGU3OThlMCBsZWdhY3ktdHJ1bmsKKzM3NTk0IDQ0Y2RhYzliZjc4NTllYjc3Y2U2YWQ2ODM0ZDIwM2QzZDVmNGY1MWIgbGVnYWN5LXRydW5rCiszNzU5NSA1M2M0NjhkMDk1NWJhYTA4ZDFlOWRiZWViZjZjM2EzZTRlMzM3MzFlIGxlZ2FjeS10cnVuaworMzc1OTYgZDk0MDRkYjI5YmM2NTc3YmQ0MDlhOTk1YjNlNzcwZDllNjdkZDExMCBsZWdhY3ktdHJ1bmsKKzM3NTk3IDM5YTEzZTM5ZDI0ZWI5ZGUwZjBiZjIwNzljMTQxZTkzOTgzM2IyYTQgbGVnYWN5LXRydW5rCiszNzU5OCBlYjNkNjAzMGQ5NTAxMDcwZGM5MjcyMGI4MmU1Y2IzZTRkODFmNGIyIGxlZ2FjeS10cnVuaworMzc1OTkgMTM4M2M0NjkyYWY3NGRjYTc4Nzg1NmVkMWY1OWE1OTdmYzIzZTI0MSBsZWdhY3ktdHJ1bmsKKzM3NjAwIGE4MDQyODBlMzRmOTBmZTIxNGUwN2FkNmM0MDMyNzVmNDUwZDc5NDggbGVnYWN5LXRydW5rCiszNzYwMSBlNGY3ZDNiMGM1ZDRmZTQ3ZmRiMjdiY2YzN2E4N2UwYWNmNTM0NjIyIGxlZ2FjeS10cnVuaworMzc2MDIgYTRmNzQ3ZTcyMTM4MWNmN2RmZTc2MzRmMWE5MTRkMTU3ZTE2MDBhOCBsZWdhY3ktdHJ1bmsKKzM3NjAzIDc2MzU1MzYzMTAxYjBhMTE1NTAxODc1YTA0Nzk4NDQwNDU1MDVjOTMgbGVnYWN5LXRydW5rCiszNzYwNCA0NGUxNzZjY2EzMzcyMWFkOGQ4M2Y1MDczYmYxNzQ0YmZhODVhNjYwIGxlZ2FjeS10cnVuaworMzc2MDUgZDFmMGM3MDc5YjgyODc5YTU1OTM5NzY2ZThiYTVhOWMwNzY1YmM4NyBsZWdhY3ktdHJ1bmsKKzM3NjA2IDE3OWU0MmVhMmU5Yzk3MTk4ODE3MTI4NjE2ODA5MzMzY2M0MDAyNGYgbGVnYWN5LXRydW5rCiszNzYwNyA0NjgzOTgzZTg0YjM1NWQxYWUwNDM5MjM5NWRkMmQxMDZjZDUzNzY2IGxlZ2FjeS10cnVuaworMzc2MDggOTljYWJhODE0NTY1NGNhMzk1YzM0ZjU3ZDUzZmIyMmEwY2EyMTg4MiBsZWdhY3ktdHJ1bmsKKzM3NjA5IDc0Y2ViNmZjYjQzMjdkZDhjODVlMTAwZDg4OGIzNmQ1ZjlkZWZiMzUgbGVnYWN5LXRydW5rCiszNzYxMCBhMjdiMDI3MTcxMWJkMDViYjAzNWVlZjJiYjk0MThlNTcwN2ViZGY4IGxlZ2FjeS10cnVuaworMzc2MTEgYjBlYzRjOWQ1OTViMDBiMjY2YmQxYTkzOWU3Y2JmNzIwMGQ5Yjg5MyBsZWdhY3ktdHJ1bmsKKzM3NjEyIGI4NmM3YzQ3NzRlZGZkODMyZWI2OGZjOTQ5ODdlMThjZGIxODFkOGEgbGVnYWN5LXRydW5rCiszNzYxMyAyY2MxMDdjOTY0NmUyYmRiMDNmMmQwYTI1YmQ5NzlmNmU0ZWUzNDVhIGxlZ2FjeS10cnVuaworMzc2MTQgZWM5OTNiNzI2NjA1NzI4OGRlOTUzYjc5NDkyNjM4MDE0NzE2NjFjNiBsZWdhY3ktdHJ1bmsKKzM3NjE1IGFhMmQ2MDYwNDk1YTA3YmI0ZjM3YWRhOGVhYzk3NDhjMTM0MTBmNTkgbGVnYWN5LXRydW5rCiszNzYxNiBkZGMyZDZlNTQ3YzE1Mzk0ZjgzZGVlNjA0YmJmYTE1ZGE0NmM5NjgwIGxlZ2FjeS10cnVuaworMzc2MTcgOTJlMDViNjM0OTk3ODY5MDZiNDFkNWE1M2EyN2Y1ZjdiZTNhNTkyZSBsZWdhY3ktdHJ1bmsKKzM3NjE4IDEwYjI1NDE0NjI4Y2RiODJjODBkMjYwZjE5M2U2M2ExNzMxNDM4OTAgbGVnYWN5LXRydW5rCiszNzYxOSA0ZjhkYjU1Y2UxMjRhMmVhN2Y4YmMxMDM0MjU3ODc4MzFjMWY5NDExIGxlZ2FjeS10cnVuaworMzc2MjAgMTk3Nzc1MmNmODA3YmM3ODlkOTAwYjkzZmMxNjgyZTViYjEzZWExYiBsZWdhY3ktdHJ1bmsKKzM3NjIxIDhhNTA2MWJjZDQxNzlmODI0ODAwODVjMDE2ZDQ2ZjRlYTRiNWY4ZGIgbGVnYWN5LXRydW5rCiszNzYyMiBmYjI3M2E4M2M3NWZkOTI1NzE5Nzg5MDVhZjU4YzgwMjRlZDQ5YTE1IGxlZ2FjeS10cnVuaworMzc2MjMgMTFkMDFmYzY1MGRjMDUyYWZkNDljNzQ0Yzk1MGU5MzU1ZTk3ZWE5NiBsZWdhY3ktdHJ1bmsKKzM3NjI0IDQ2MjE3ZDA1YTQ3NjZhNDYxYmY0MmM4ODBhYThhZDEwNzBhYzIzMjEgbGVnYWN5LXRydW5rCiszNzYyNSBkMTIyODEyN2QyOTQyNWY2NDRlYzc5MTQzYjIyNjA2YmJlZmFjMmE4IGxlZ2FjeS10cnVuaworMzc2MjYgMjZmZDAwYjM2OGYxZDQ1MmU3NGI2NDFlNjZjYTE2MmQ1ODQ0OTA4ZSBsZWdhY3ktdHJ1bmsKKzM3NjI3IDE2NmJkMzM5ZDNiZmQ2MTljNGQ3MDU1YWQ4NjEyNDAxZWY4MzgwYTYgbGVnYWN5LXRydW5rCiszNzYyOCAyNmJlZGY2M2U0YTg5YzUzZjhmOGZiMzVlZTE5NmQ0YmM5NDA5ZmRjIGxlZ2FjeS10cnVuaworMzc2MjkgYjMwOGUxNWJkN2ZiYTkyNWYxNzc3MzExNmY5ODVkYjJjMGNiMTI5NyBsZWdhY3ktdHJ1bmsKKzM3NjMwIDE5MDdhZDU0ZDM1MWNlNzdmYTgyMmE1ZTNhYTMyMDcxYmY3Y2IxZGYgbGVnYWN5LXRydW5rCiszNzYzMSA1NTQ4MmU5ZGViNjYzODM2NGMyMDMyYjBiMWVlYzg4MTY0ZDFhYWFjIGxlZ2FjeS10cnVuaworMzc2MzEgNTNjZmYwNDI4Mzg1NWFkZjg4ZWQwYzBmZDM2OTg4MjdjYTg0MzYzNyBsZWdhY3ktdHJ1bmsKKzM3NjMzIDcyYzUxMzFkNGM0YWYwZGIzN2FiNDE1Mjg3OGI1OGRlMDAwZWI2MWQgbGVnYWN5LXRydW5rCiszNzYzNCBjNmFhYzAzNDc0YzVlMjM4Mjg2YWNkYjQyZjE0ZGVkYzdkZWQxZjk0IGxlZ2FjeS10cnVuaworMzc2MzUgODhiZjQ4YzA2OWY5YzM2MjQ5NWJkNGY2YTY1ZDI2M2ZlYzZiMjA4NSBsZWdhY3ktdHJ1bmsKKzM3NjM2IGJhNzVmZGE5MjIwYzJhMTU0ZDY2NTJlMzAwYmY1ZmRlY2E3MmQ3ZWMgbGVnYWN5LXRydW5rCiszNzYzNyBhYjA5ZGFhYzU2OTFiNzhjNDliYjQ0NzI1MmUyMjBkZTY2NTczMmRiIGxlZ2FjeS10cnVuaworMzc2MzggZmJhY2JiMjYyNzg5NDk4MTllMGI2OGM1MDUwYzBiM2UwYTlhMzNkOCBsZWdhY3ktdHJ1bmsKKzM3NjM5IGUxNWMxNWE0ZmJlODgxNTExMTlhZTMzYmQxNWM0MzM0YjNkNDY5Y2MgbGVnYWN5LXRydW5rCiszNzY0MCBjNWQ5NTFhMGUwYzNlOTBhNjI1ZTU3MmU2OGI0ZDEzYTk2OTliMDg0IGxlZ2FjeS10cnVuaworMzc2NDEgZTRiN2M5MjNlZDVmMjczN2Y2NjE1NmE4OGY2NjAxZTE0YzY1NTdiNSBsZWdhY3ktdHJ1bmsKKzM3NjQyIGYxYzA0OGU3NDNlMmQ4MDYwYWE4OTQwZjMyYTY4YTExYWRiOGMxODQgcmVsZWFzZTIzLW1haW50CiszNzY0MyBjNjZlNmM5ZmZjMmRiZDNkMDE5YTc0ZDNiMWJmNjhhMDgxMTU0ZmFiIGxlZ2FjeS10cnVuaworMzc2NDQgNDY4OGQyYTI3M2Q5MGI4NmZiY2MzMDIzZTc3OGVhOWYzNjFhMGVhNSBsZWdhY3ktdHJ1bmsKKzM3NjQ1IGQ5ZDNiNDc1Y2ViMjU4NjYzYjEzMTIxZDc0NzllN2VlYWQ1NjI2MzAgcmVsZWFzZTIzLW1haW50CiszNzY0NiBhNTJkZTkxMWIyODQ4MTQ3MTgyMTY5Y2JmYzMyMmM2ZjUyZjkwMTAwIGxlZ2FjeS10cnVuaworMzc2NDcgM2ZkZDk2ZjBjZTg2NmM1YWY2OTIxZjM2ODQ4MTU4ZmFmYzBiZjNhNiBsZWdhY3ktdHJ1bmsKKzM3NjQ4IGYxNzVjOTgzODM3MzZkNTg3ZjQzNjE3NzYwYjYxMjU0YTljM2E1NGMgbGVnYWN5LXRydW5rCiszNzY0OSA4MTdjMjQxYmZmZmY4ZGY0ZjExODhmYmE2MzJkNGNmOGIyOWQxNTY2IGxlZ2FjeS10cnVuaworMzc2NTAgYmQxODg4ZTkyOTlmNzM1Y2U3MTE5NjQ5Yzk4YzdhZDRmOWZjZjFiNyBsZWdhY3ktdHJ1bmsKKzM3NjUxIGI4Nzc4Y2Y3ZDBlMzczODcxZmVmMDM5OTcyNjQ5MjczYTc3ODc4NDAgcmVsZWFzZTIzLW1haW50CiszNzY1MiAzMzQyYmMyMzAwYzNhYzJlNmNjYTVlN2Y3MmI3YTY1MDc5MmMwYjU2IGxlZ2FjeS10cnVuaworMzc2NTMgOGQ4YjM5MjM0ZGU5ZTZmMGJlOTc4MjcyY2ZmNTIzYWE0MTdmNmM3YiBsZWdhY3ktdHJ1bmsKKzM3NjU0IDgzYTAxOTEyODk5ZjYwNDYwMGFkYWU3YWZmMTEzNjI4Y2I4OGI2MjggbGVnYWN5LXRydW5rCiszNzY1NSA2ZGZmZGMzM2ZjNmM1YzAxZjAxY2M5NmVmN2E1YWJhODM0NjBiNzI0IGxlZ2FjeS10cnVuaworMzc2NTYgZDA2M2U0ZGU1Njc2MDBlYTZjN2I3ZWFkODhiMzdiZjEzZDQ4ODg2MSByZWxlYXNlMjMtbWFpbnQKKzM3NjU3IDIyM2Q4MjI2MDQ1MmFhYzI1Yzg1ODgwNzEyMWE0MWVlMGQ0NTA0MzAgbGVnYWN5LXRydW5rCiszNzY1OCBhMjI0M2Q2NmQ0MGJkYTFlMzE5ODVjNjkzY2Q4YzlmNDAwMDY1ZjIyIGxlZ2FjeS10cnVuaworMzc2NTkgNjljOTY4ODFhYWFkYjQ4NDgyZDAyOTQ5NTljM2ZhNDU4MmM1MGQ5ZCByZWxlYXNlMjMtbWFpbnQKKzM3NjYwIDY4MTliYTAyMzY2NzZmZTAzYzYyYjAxMDVlOGUxZWFmZWNiNmY0ZWIgbGVnYWN5LXRydW5rCiszNzY2MSBhZWI2ZmYzMDg4NDhjODc1ZDVlNGEzYjUyMzMwZDcwMjZiMzNlMmU1IGxlZ2FjeS10cnVuaworMzc2NjIgNGZlZGM1MjlhZDMyZGI5NTcwNDRjMWZlODFjNjVhMjMzNTQ3NDQ1NiByZWxlYXNlMjMtbWFpbnQKKzM3NjYzIGIxYTllYTZlOGFlMjBhMzNhYzBlNmNjZWMzYzA0N2YyOGY3Njc4YjkgbGVnYWN5LXRydW5rCiszNzY2NCAxOTlkYWNlMDI0YmEwNDRkNDUwZGRmMzhiZWY2ZDc5YWZmNTE3MmIzIGxlZ2FjeS10cnVuaworMzc2NjUgZDQ4NWU3OGE0M2Q2NTg0YmJiOTI4ZTM2MTY0ZDQyZDRlZWZlOWJjZSByZWxlYXNlMjMtbWFpbnQKKzM3NjY2IDVjODYyNDk2YTlmNmFhODMxZGE5Zjg3ZTgyYTk2MTBhZmRiNTkxNDggbGVnYWN5LXRydW5rCiszNzY2NyBkMmU5NTk0MDQ4MjY5MmI4ZThiYTYxNzIzYzI3YWY3ODU4ZTI0MzRlIGxlZ2FjeS10cnVuaworMzc2NjggZTljYmUwYWRiMjhhZTdmYTdhYzIzMTg5YWZlYjhjMmVmMzIzNDEyNyBsZWdhY3ktdHJ1bmsKKzM3NjY5IGE5ZTYwNTE0MDA3NDc3ZjIwY2Y0ODgyNzZkZDE1ODZkMTQyOTNmOGIgbGVnYWN5LXRydW5rCiszNzY3MCBhM2RmZDgwMTUzM2I2MTg0MWVkNzFjOGJhOWE5MTRmYWJjNDdhOTNhIGxlZ2FjeS10cnVuaworMzc2NzEgNDdiMzg0NTE5Nzc1NzU2MDZkZTJkYmRkYTU3NTY1YzEzNWM2OGI3YiBsZWdhY3ktdHJ1bmsKKzM3NjcyIDU5ZTBmZjBjZDNkNGM5MWUyYmZjZDM5ZWE2MGY2ODY1ZWM5MGNhYjQgbGVnYWN5LXRydW5rCiszNzY3MyBkNDQzNTA1ZTdlZWMxOGI5NDY3YjQ5MmRmNmQ1MmJhMjUwZWU1ODRjIGxlZ2FjeS10cnVuaworMzc2NzQgM2ZmMjUyNzE1ZDkzYjA0ZWZlZDZmNTJlYTFhMjg4MzEwYTEyN2NmMiBsZWdhY3ktdHJ1bmsKKzM3Njc1IDFjNjc2ZTg5MWIzZjlhODM3MmExM2Y2ZjMyNjljYTFkMzA2MTVlMmEgcmVsZWFzZTIzLW1haW50CiszNzY3NiBhZDkwODg4YjE3YmMwMjM0NTg5MWUxZWY2ZDJhNmE5ZmE2N2Q4ZGU1IHJlbGVhc2UyMy1tYWludAorMzc2NzcgZjU0ODY4ODU1YjFjY2RhYTJhNzgxNTBiZmZjNmI5N2Q4MGRjYzIwNCBsZWdhY3ktdHJ1bmsKKzM3Njc4IDgyMTQyYTI0ZTg0NWMzM2JkOWNmMDEwNDE5YWVlZmRlMzg2NmFiMGEgbGVnYWN5LXRydW5rCiszNzY3OSAwYWZiMjUzMGU5ODZhYTA2ZGQ2MGZiMzcwMmY0NTc0MjMxNTQyOTI5IGxlZ2FjeS10cnVuaworMzc2ODAgYjBmMGM1N2IxZTA1NTcwMjBiMjJhMTkwMGM1ZDJkMmMwMmUzYmVhMCBsZWdhY3ktdHJ1bmsKKzM3NjgxIGVkMDQxZTBlNDUxZWYxMWNiZTkxODgyZTkwNDc4ZmI3NmYyNWZhMzEgbGVnYWN5LXRydW5rCiszNzY4MiBiM2EzMGUyODQyYjk2NzViZDNlY2EzOWYxYTQ3MDZkNDgyM2RlYThjIHJlbGVhc2UyMy1tYWludAorMzc2ODMgOGQzOGYyZjIxNTFjY2E1YWEyMTk4MDBlYTVjMGUyNmE5NjllODBhOSBsZWdhY3ktdHJ1bmsKKzM3Njg0IDJhMTUzMThjNDAzOGMzMDQ3ZGM5YzFjOGEyYWE0OTNjZTIxZDM2YTIgbGVnYWN5LXRydW5rCiszNzY4NSBmMTQzMjlhNzg5ODE5MTIxNTA1NmUzZjU5ZGU4YzIzYjg4ZGU5YzQyIGxlZ2FjeS10cnVuaworMzc2ODYgYmYxOGNhY2EwNzMwNDM3MTcwNGRkYTI2YTU1M2RmNmYzMWNhYjM4MyBsZWdhY3ktdHJ1bmsKKzM3Njg3IGRiODcxMGYxMzY1MDg4ZWJkMDBmOWJjMmNlMWM2ZWQyNTNhZGQ1YTggbGVnYWN5LXRydW5rCiszNzY4OCAyOWI5NDViYzBhMTdmMWM5YTliMWE2ZGQ4Y2I2MjFhZjZlYmJkMTlhIGxlZ2FjeS10cnVuaworMzc2ODkgYWVkMjUyNmRhMWZjN2VkOTM0M2Q2NGM5YzgzYTZlMzRiOTg2ODcyMyBsZWdhY3ktdHJ1bmsKKzM3NjkwIDI4ZWYwYTNmNTdmNmNkNzg0OGE3NmZiMmZhOTYzMWI2ZDM0MDYyY2MgbGVnYWN5LXRydW5rCiszNzY5MSBkOTM4YjllZDMyZmZlY2FlOGM0MDQ5NDVjM2NlNjJiODliYjRhZDliIGxlZ2FjeS10cnVuaworMzc2OTIgMTdkODY2MWU3ZDEzYWFlNDZjYzQwYzVjOTE4NDI2NDE1MzgyOGI2NSBsZWdhY3ktdHJ1bmsKKzM3NjkzIDZjNDE2OTUyODRmNmZmN2M5NDk3NzRmNTYxNTRkMTRkYmYwYzI0N2UgbGVnYWN5LXRydW5rCiszNzY5NCAzMTcxMDFjZmZiNzI5MzQ1NTI3YmRmYjM4MTNiMGRkM2UyNmJkMGU5IGxlZ2FjeS10cnVuaworMzc2OTUgOWZmYzM0NDg5MWE2MjZlZGFhMjYwMWZjYWU0MDU5YjY0MWIzMWYxOSBsZWdhY3ktdHJ1bmsKKzM3Njk2IDYyN2Y3N2UzY2ViNjUxYmExZDBhYWQ2MGM0ZjU2Yjk4Y2I2OTA1NTggcmVsZWFzZTIzLW1haW50CiszNzY5NyAxMDUxMmNlYmEzMGM1NWNlNjRkNWEyNmE3ZDkwZjllMGRiNjQ4MTAyIGxlZ2FjeS10cnVuaworMzc2OTggZWYxNDllYTU5NGE0YzBmNGE4MTM4ZmQ0Yjk5ZjhhN2ZmMTE4MzZjYSBsZWdhY3ktdHJ1bmsKKzM3Njk5IDk5MWQzNDkwZjY5OGViMmFmOGQzODA1NjI1MzJkNzI3YTUxZTI5NmUgbGVnYWN5LXRydW5rCiszNzcwMCBkYzhlY2Y3MjQ0ODhjMjZmNzVkOTAyM2JmNGFlMjY1NTEzNmY0NWNhIGxlZ2FjeS10cnVuaworMzc3MDEgYmQ1NTgyMTFiYTU1MmM3MTQ5YTgzNmM4ZDZmMmJiOTg4Y2NhZWIwMCBsZWdhY3ktdHJ1bmsKKzM3NzAyIGZkY2UzZDM5YmVjMTRkNGQ0NzA0MDE1NTJlN2FjNjY3NjYwY2JmMmMgbGVnYWN5LXRydW5rCiszNzcwMyA0ZGQ5N2MzN2MyY2MyYzMzNzhmMmM5MTZhMzdjZDFmZWE3YWQ4OTljIGxlZ2FjeS10cnVuaworMzc3MDQgNmZjMTAzMDZiZjMxMmJhYzk5M2M3NTIxZjY1MzcxYzkyYzVjMTA3MiBsZWdhY3ktdHJ1bmsKKzM3NzA1IDEwNWJmZTE3NjliNzk2YzQyN2Y1ZTJmZGM2YTMwMDM3Y2RmNzBlNGYgbGVnYWN5LXRydW5rCiszNzcwNiA5OTNiMTI4ZDRlMjk0YTUxNzA5MzU0ZmJiMDBmYjRkMmQxMzhmMTJiIGxlZ2FjeS10cnVuaworMzc3MDcgYWM0ZmE5NDJmOTJlNzhhNmNiZGRkNmE4ZDdkYmZkODRkNzNlMDEyOCBsZWdhY3ktdHJ1bmsKKzM3NzA4IGVkMTM5MzcwNzlkZjE3Y2FjMjZjOTcwNjcyYmE0MmVjYTIzYWYzZDAgbGVnYWN5LXRydW5rCiszNzcwOSAwMzJmMzQyZWZjZDI0ZjI0YzY2Y2U2YmZiMGVjMTM4MDc3YTQ1ZWRhIGxlZ2FjeS10cnVuaworMzc3MTAgNzliY2FkMTRlOTZhYWE3NzU4OTZkNGZlNDQ4NDc1MzNiZDhlOTI3NiBsZWdhY3ktdHJ1bmsKKzM3NzExIDU1MTA5OTVlYTI2ZmI1ZDk0OGEwNGRmOTYxOWY3MDVjN2RkZWNiNGQgbGVnYWN5LXRydW5rCiszNzcxMiAzMzk4YzVjZThiN2EwOTYwNzRlNGYxYjkxODAwNGY4YTA4ZTY1MzI4IGxlZ2FjeS10cnVuaworMzc3MTMgZDgzOTk4YTcyMWEwYTJlZjFlNDM3ZjNkNmQ4YTA0OTFiMWFhNzIzMyBsZWdhY3ktdHJ1bmsKKzM3NzE0IDI2MjU1MzdhNmRmYWRkNTM2MDhjYzc4MzI5OGZmOWM1MzhjNDljZTkgbGVnYWN5LXRydW5rCiszNzcxNSAyZWUwMzAxYjQ4M2NlMmE4NGY3ZTM5Yjk4ZGJhZGM3ZmIyYmEzZWY5IGxlZ2FjeS10cnVuaworMzc3MTYgOTQzODYyYjJiNGRmZTU2ZTU4ZGM1MmU2ZWIwZDA4NTQxZDlkN2EwYyBsZWdhY3ktdHJ1bmsKKzM3NzE3IGQ0MWFjMTFlOWM2MDRhNjU5NmMzY2YxNGUzZGI4MzM0M2U4ZDExOTIgbGVnYWN5LXRydW5rCiszNzcxOCBlZWMzMTdlZTVjMzViOGY4NzIxMjVhMzFmNTBiNTRjMTU4ZjJiOWQ5IHJlbGVhc2UyMy1tYWludAorMzc3MTkgMWNkMTlkYWFhOWQ0MmZhYjcyMjMyMGE4ZDlhZmNjMzJlOTI5YjBiNCBsZWdhY3ktdHJ1bmsKKzM3NzIwIDYwYzYwZGM3NWM3NzI2NGI5ZTJjMmY1ZjRiZDZjNjFmZTNjZmIxYTggbGVnYWN5LXRydW5rCiszNzcyMSA2ZGEwNzg3M2EwZWUzNzU0OTVkYjliODVmZDI5N2JhZGIzYTE4MGNhIGxlZ2FjeS10cnVuaworMzc3MjIgMGRkYWU4YjBmYjE5YTM4MzIzYjQyYmM1Yjg0NjNjZGYxOWFkOGRiMyBsZWdhY3ktdHJ1bmsKKzM3NzIzIDMwNzMyNDM0MTA3YjZjZmU2ZDkyOGI0NDAwZDMyMmU3MjA3Y2FiODAgbGVnYWN5LXRydW5rCiszNzcyNCAzNDY3Mjg4MDg5YTFlMjU4NjNlNWQzZDc0NDFhNTZmNDNjNGU1M2IyIGxlZ2FjeS10cnVuaworMzc3MjUgNGEzZWFhMWFhM2FmZDJmNWI5NGNlMmVkMGIyZTlkYjdkYWMyMGVjNyBsZWdhY3ktdHJ1bmsKKzM3NzI2IGZhY2I1YTJmNGI1M2U5N2QzMTJkYjMxOTA5OWViNzlkNDkxNTEzYWMgbGVnYWN5LXRydW5rCiszNzcyNyBiNTg1YmNjZmIyNTA1NDNhNjZiYjhlZjRlNDVkMTBhMzM0MTA3ZWRkIHJlbGVhc2UyMy1tYWludAorMzc3MjggNmI2MWFmMDgzNDkzMzEzYjUzOGU1MTU0ZDI3NmYxZjU4NzY3NTU3YiBsZWdhY3ktdHJ1bmsKKzM3NzI5IGYxOTY3MTZlYTBkYjQ1ZDYzNzY3ZjJkM2I3N2VjYTQxZmMxMzgyNGUgbGVnYWN5LXRydW5rCiszNzczMCAyNjMyZjQzNDA5ZjQ5NjVhY2ViNzEyNTMwOTk1ZTRkNDQyMGNlZWNiIGxlZ2FjeS10cnVuaworMzc3MzEgMDdkOTRhMTYyY2Y4OTUxZWZhZGY2ODM1MTQ4YjM2NzM4ZTc3MjBmZiBsZWdhY3ktdHJ1bmsKKzM3NzMyIDMwOGU4ZWYyZDNlZGY1ZjU1MWJmYjEyMTk4YTI1YjUwNWI5ZTNmN2UgcmVsZWFzZTIzLW1haW50CiszNzczMyAyMjNkMjBhZmM4YjVlMWViOGM5M2ZhNmExZGExOTk4YzM0MThmY2U5IGxlZ2FjeS10cnVuaworMzc3MzQgODBjYTFhOGIyMzIxNjJlMDlkN2Q1MjY2M2E1MjE2YWVkYjUyMTdhYiBsZWdhY3ktdHJ1bmsKKzM3NzM1IDVhZmE1Mjc3ZmNkOTc5M2FlMGJmMWM4YzE2OWY3YWQzMDYwZmNmNWIgbGVnYWN5LXRydW5rCiszNzczNiAxODBkYzgyOWVmZmY4MTc1MWVmYjgxMmNmMGRhMDRiYWZiZjVmMDhiIGxlZ2FjeS10cnVuaworMzc3MzcgYmYyZDAzZGZjMzhlMjhmMWM0YzQ5MWY5NzkzMGIyMmI5MjlkNTMzNyByZWxlYXNlMjMtbWFpbnQKKzM3NzM4IDBkYzNmOTcwNTU3NzA3M2FjMDUwZDllMGUxMDEzOWZjMzQ3NDQ3NTYgbGVnYWN5LXRydW5rCiszNzczOSAyNGZjM2VhYTE5ZTBiNWRkOWFjZjc5ZGQ5ZDQ4N2NkMmJmMGYxN2E4IGxlZ2FjeS10cnVuaworMzc3NDAgNjMzY2FkZWJmNjhkNGRkOGNmMGM5MTlmZjUyMTQzNzZiZWJjOGM0OSBsZWdhY3ktdHJ1bmsKKzM3NzQxIGE4Yzk3OWNjNGZhNjU4ZDgyNmQyMTA0OGZkNzgxYTUyMGIwM2IyNmIgbGVnYWN5LXRydW5rCiszNzc0MiBlZjUwMzBiYzVmNjcxYzRiMDQ4MWM4OGNiYTkxMzE1ODQ5Y2FkYjZlIGxlZ2FjeS10cnVuaworMzc3NDMgNjg3MzYyZmE0NzFjM2MwOTMxNzA1NjZmNTllNDliM2Y2YjNmZGMxMiBsZWdhY3ktdHJ1bmsKKzM3NzQ0IDhhMDljODJlNDI2MTBiMGQ0OTZmZDMxODU3OTRmZDdmYjM0ODU4ZTggbGVnYWN5LXRydW5rCiszNzc0NSBiYzA0MjFiOTY1N2EwMDU4YWE5NTBjYWNlOGMzYjA1ZTc1ODViYWQ1IGxlZ2FjeS10cnVuaworMzc3NDYgYTZmOTdlMGU2MzE4OTY0YzI2YzhmYmFlMGQ0MDU2YzEzYTUzNWVjMCBsZWdhY3ktdHJ1bmsKKzM3NzQ3IDVlY2EyNDhmNjM5ZTQyZjQwNzJjOWM3ZGY5YWJmOWNkM2Y0ZDNmNzEgcmVsZWFzZTIzLW1haW50CiszNzc0OCBjMTllODExMTIwNTkzMTZhNjgyNDNkNzBkMzhmMDJiMDI3NzVlMzk0IGxlZ2FjeS10cnVuaworMzc3NDkgYTU3NmNmMWFjNmEwNGU3ODJmN2E3MTI3MzMyYjVhYzg4NmYxOGQ2NyByZWxlYXNlMjMtbWFpbnQKKzM3NzUwIDk3Njg2MjRmMDM1ZmEyMzhmZTk1NTNmN2M2MzVjNDAzZTQ1MjUzNTggbGVnYWN5LXRydW5rCiszNzc1MCAwY2IxYmE5MjI0MWJhMjk1NzU1MDU4MjhlZWUyNDFjZDEyNmQ0NjkzIHJlbGVhc2UyMy1tYWludAorMzc3NTEgMGQ2ZGJlYmQ4YjRhMmQwNDMzOThhMjRjMTllMDE2ODVmNzJlOTY0NyBsZWdhY3ktdHJ1bmsKKzM3NzUyIDUzYWEwMTkzNzBkYjUwYTNlMDI5YzU3NDUyMTJiYjUxMDY5ZTE0ZTggbGVnYWN5LXRydW5rCiszNzc1MyBjMzA4YzZiYTAwMmY1YjViMjQ4OTcxNDgwOGI0MzQzZmZhNTg4ZmEwIGxlZ2FjeS10cnVuaworMzc3NTQgZmViNDAxN2NiYWQ0MmE3NDVjMjViMWM3NzNkYzRhNjYxMWU4Nzc2ZSBsZWdhY3ktdHJ1bmsKKzM3NzU1IDc4NmQzYjhiOWJlZWRiYWM0NGNmYjhiNDRmMzVlYTE0ZTFlYTIyMGQgbGVnYWN5LXRydW5rCiszNzc1NSA3ZTM4N2E5ZGNjNzk5NTRhNzc2OTVhZGVmOGI1OTNkYTM1YmUxMjE0IGxlZ2FjeS10cnVuaworMzc3NTcgODVkYjAxNmU4ZGFjNjNlZTk1OWFlZDQ1NWU5MTg2YjNmMDgyZTE1NSBsZWdhY3ktdHJ1bmsKKzM3NzU4IGQ3ODNkNTE3MTgxMTllNDEwNjhjMzg5NmM1YmM5NWU4NmU5YWNjOTAgcmVsZWFzZTIzLW1haW50CiszNzc1OSA3MTBiN2U4ZDJmZjJhNjBiODY1NzNlOTNlYjMwZWIwNjk3YTZlOGUwIGxlZ2FjeS10cnVuaworMzc3NjAgZGZiN2IwN2RjZGVkZDAwOTJhNWJjYWNmNjIwZWQ2YjMxZDJkMmZjZCBsZWdhY3ktdHJ1bmsKKzM3NzYxIGE1MTI5ZDZhYjFjYzZhNTM4NWU5NjIxZjhkN2I3ZjRjMjRiOTBjYzYgbGVnYWN5LXRydW5rCiszNzc2MiBlYjk3OWMzZjE0YmE5NjNkOTU0MmUzMzkwZmFmZTI3OGY5YjA5NjQ5IGxlZ2FjeS10cnVuaworMzc3NjMgNWNjMzgzNDAxMjk0ZmI0YzU0YTNkNzI3NGNmNTUwY2ZlOGUyYzIzOSBsZWdhY3ktdHJ1bmsKKzM3NzY0IGFiNmIxMDhhOGNlYzg5YTIwZGIwNTc3YzQ0NjM5YjBiOGE3MTgwNmQgbGVnYWN5LXRydW5rCiszNzc2NSAyMDg3MzI5NWU5MTYwNzU3NGViNGYxMDY3YzU5OWNiMDhhNWZlNjI5IGxlZ2FjeS10cnVuaworMzc3NjYgMTljMmRjY2ZhZjY1M2Q5Njc3YWRlNzhlMWNiNmFiNWQ5NmQ4NjkyNCByZWxlYXNlMjMtbWFpbnQKKzM3NzY3IDEzMjg5YTc0NDJjMzdmNWI0OWNkNTYyOGM5ODY1MWU5NjY1MTllMmQgcmVsZWFzZTIzLW1haW50CiszNzc2OCAzNjAyNGZhM2JmNGY0ZWE0MTkzZWM2ZDI5YWZmYjc2Y2NkYTlmNmNiIGxlZ2FjeS10cnVuaworMzc3NjkgOGY4Yzg5YmJlNDM5ZDBlMTg0ZTRlZTFkZDhkYWUwN2E1OTFlNDhiMSBsZWdhY3ktdHJ1bmsKKzM3NzcwIDVlZDFkOTdiNDlhMTI0NTlhMGI2YmNhNzBkYmU5MGZjOGY5YmQxMTQgbGVnYWN5LXRydW5rCiszNzc3MSA3ZWQ4OTliNjExODI4MDZjOWIxNmQxNmQwNjcwOWE2MmUyOWY4ZmI5IGxlZ2FjeS10cnVuaworMzc3NzIgMmZhODcyNzg0ZWI2MjAxYjIxZWE3M2JmNmM5MWRhZjBhYjVhNmIyNSBsZWdhY3ktdHJ1bmsKKzM3NzczIGIzZmZhNjRmZjRjNjQ3MDIzYTI1Mzc5MmExNWY1MDJkZDRjMTc3ZGIgbGVnYWN5LXRydW5rCiszNzc3NCA5OWI5MjAxODYzNjcxYjhkNjkwZWUyNjUwZmQxNzUwMDY3OTQwMTA0IGxlZ2FjeS10cnVuaworMzc3NzUgOWE4NjI0MjVhOThhMTQ2Y2FkNjlhMTI5MzU1M2UyOTJmMjg0YjlhOCByZWxlYXNlMjMtbWFpbnQKKzM3Nzc2IDljZTU3NjQwMTlhZWYwNDQ2MTcwZDEzNGExMjEwNTllY2QzYTVjYzEgcmVsZWFzZTIzLW1haW50CiszNzc3NyBlYTZlZjQwZGM5MjIwZjQ3NTdjNGJmMGNlMTUwZDFlZDllNzgwMDJiIGxlZ2FjeS10cnVuaworMzc3NzggN2U4OGMwNDM3ZWNjNjIwZWE3YWUzYjg4MTFmN2I2N2Q0NjdlNzU1MyBsZWdhY3ktdHJ1bmsKKzM3Nzc5IDAyMDE2ZDVhNGRjNmE4MzU2OWRiYmIxODI2YzJlNmJlZjhiZWM1NGMgbGVnYWN5LXRydW5rCiszNzc4MCAyNTcxNGUwZmM4OWRiMTNjZGQ3YmM4ODBiN2MzMWQzNzY4NjMxYTQ2IGxlZ2FjeS10cnVuaworMzc3ODEgOGU5MWE3ZWFhN2I3OTk1YjY1NmUxYTM2YzA3Y2Y1ODBkYzBhNjBlNSBsZWdhY3ktdHJ1bmsKKzM3NzgyIDg2OTg2NTNlMDVmYzEwOTFiNTkxMDIyOGI3MjZkMjM2NGM1ZTcyMGQgbGVnYWN5LXRydW5rCiszNzc4MyBkODJmYTkzMmI0MWJjMDM5MTY1ODExNmJjM2U5N2I4YzUzYTkzY2YzIGxlZ2FjeS10cnVuaworMzc3ODQgN2ZkNGQzNTBmZjgyNjJiOGQ1ODUwOTdkZDc5NTZhMWIwYmFiYmQxNSBsZWdhY3ktdHJ1bmsKKzM3Nzg1IDkxNzNiOWUwYWI3NzM0OTcwNDBlYmJiNzQyMzA3MjkxYzFhMzVjNWEgbGVnYWN5LXRydW5rCiszNzc4NiAwMThkY2M3ZWY4ODdkZWJjN2E3OGZkOWRjYzZmZTkyOWZmOGFmZWVmIGxlZ2FjeS10cnVuaworMzc3ODcgNjYyYzE1NTEwNmU0MjVjMTA1ZjllZjJmOWY4YjBmNjg0OTJjNGZhMSBsZWdhY3ktdHJ1bmsKKzM3Nzg4IGU0NDA0MDQ2ZTU1MmY4NmQ3NWExZGJmMWRlNmY2YWNlZjlhMzlmYWYgbGVnYWN5LXRydW5rCiszNzc4OSA4MzkwZjkzOWRjYzFmM2NiODMwODI4YWY5ZmU0MTM3NTM1ZWRhZTFjIGxlZ2FjeS10cnVuaworMzc3OTAgODI5ZWUzMjVhMThlNTM4N2ZmNzg5MzdiMmMzNGMzODlmOGM3NGZmNCBsZWdhY3ktdHJ1bmsKKzM3NzkxIDBkNGVjYzMxY2ZkODNkYjVkNGFkNmM0NzhmYzE5YWY0NmMyOWU0NzkgbGVnYWN5LXRydW5rCiszNzc5MiA2NjIyM2E5ZWJlNDg2MzU5YzFmNTc3YjhlODZlZGFiZjJlNDM4MTNjIGxlZ2FjeS10cnVuaworMzc3OTMgNGZhMWRmM2IwNjJmNDk3YTIzYzQ4YjQxMTZiNThmNDY5ZDU3YTgyOCBsZWdhY3ktdHJ1bmsKKzM3Nzk0IDU0OGYzOGE1NjY2OWUyMmY3Y2RiMzgzYjExZWFkOGIxY2IxZTIzM2UgbGVnYWN5LXRydW5rCiszNzc5NSA1OWM0M2ZkOGJhNzNmMDc4OGQxYWRmNjcxMzc1MjdlZTlmZTBmZGYyIGxlZ2FjeS10cnVuaworMzc3OTYgZWIyMzE1NDRjMWFkNWU2MDUwYjk3YTAyZGY5NmQ4YjQ2Zjg3MTE3OCBsZWdhY3ktdHJ1bmsKKzM3Nzk3IDBhZTI4YzNhOGQyNDA2ODM4ZjI4NjMzZmMyNDZiOTFiZGIxYzQyNjYgbGVnYWN5LXRydW5rCiszNzc5OCBhYjczMjE3NzMwZGIyMzJlM2UwOWQyNmE3OWY4ODVkOWU0MjliOWY3IGxlZ2FjeS10cnVuaworMzc3OTkgZTRlMjNlM2E3ODQ0YmNlZWYwZWNhM2UxM2Y1Njk4NzlkNDU1YTNhMyBsZWdhY3ktdHJ1bmsKKzM3ODAwIDRkZTM1NGM3OGE3ZWZiYzA0ODViZGQ4YTI1ZGMxODIyZjM4NmRiOGQgbGVnYWN5LXRydW5rCiszNzgwMSA4MWNiZjAzMTU0OWExZjllMGIxMDlkMjMyMjM1ZDY5YzZlMTkzZjlmIGxlZ2FjeS10cnVuaworMzc4MDIgNWZiYmU4MjMzYjc2MzMzNmJhMWVhMWM4ODBlOGNhNjY3MjFiZjRiYyBsZWdhY3ktdHJ1bmsKKzM3ODAzIGRmZDA3YjdiZTQwNzJmNzkzM2YxMWFmMTUxMzlmMjg2ZDUyZWU4NWEgbGVnYWN5LXRydW5rCiszNzgwNCA0NjNhMDNhNWNhMjI4M2U2YWI5MDNlMDMzMDIwYjMzMTkyZTQ0ZTVmIGxlZ2FjeS10cnVuaworMzc4MDUgODJkMDI1NjQxMjNkZmMyYzUxNjgyNjNmMjEzMDM2OTBhN2I1Mjg0MSBsZWdhY3ktdHJ1bmsKKzM3ODA2IDM1OWViYzU2MDkzZTdlYjJmNDQ5NWNmNDJmNzQ0NWIxZDhhYzQ4NTMgbGVnYWN5LXRydW5rCiszNzgwNyA5NjE3OWMwOTZkNjVhZGNhM2E5NjQwMDdjMTkxNTU3MzI3ZmRjMmZlIGxlZ2FjeS10cnVuaworMzc4MDggOTA0NzcxYmVmM2Y0N2ZkYmQxZjkyNzEzYjBkODVlZDhjNWNlMTc4ZSBsZWdhY3ktdHJ1bmsKKzM3ODA5IGFmZWUzYzMzYWU2ZDhjNzU1OTBhODE0ZTIwNzFlODRmNzRiY2Q3ZWIgbGVnYWN5LXRydW5rCiszNzgxMCA4YjJhMmY3YzEzYjgwZGM3NDRhYjg2MTViZTM5NzEyZGM5ZmVkMmZhIGxlZ2FjeS10cnVuaworMzc4MTEgZjJjZTE1YjAyYmEzZmViYmRmZWMyMTgwOTNiYTA2ODYwZDRiNjBjOSBsZWdhY3ktdHJ1bmsKKzM3ODEyIGI5ODE5YjlhMGRhZDU0MjExN2VlZTRlZDY3MDYwMzU0MmRhMzA4ZmYgbGVnYWN5LXRydW5rCiszNzgxMyA2MzNiZTQzYmVkMTdkMDM3YmZjOWEzNmI1ZGUzMDU2M2I1YWNhYTM1IHJlbGVhc2UyMy1tYWludAorMzc4MTQgZWIzNDRlMDNjYzcxMjU2MmVlMTI4MmVmNjBjNDMwNDM5MzRmYTExNyBsZWdhY3ktdHJ1bmsKKzM3ODE1IGI0ZjBhZDgxNTljNzM0ZGY5MWI5MDU5Mjg2MjQ1N2IzNjhmMDYxODkgbGVnYWN5LXRydW5rCiszNzgxNiBlMWYxNDAyNjA5NDc4YWY3ODY0NGI1MzA3MGUyZTUyNDhlZjY3MWVmIGxlZ2FjeS10cnVuaworMzc4MTcgMGZlOGExNmEzMzZhZWE4YTQ2ODFiMGRjMmJhZGQ5N2I2OTA5OTFhOSBsZWdhY3ktdHJ1bmsKKzM3ODE4IDc3YjFjMTUxNzRiNDRkYmYxMjExNzY1ZDc1ZTI2ZmRhNDczMDNlM2IgbGVnYWN5LXRydW5rCiszNzgxOSA5NDJmODc0M2FkZjAyNzhiNzg4MmUwZTdlNzBhNzNkZmM1ZDdiYjBjIGxlZ2FjeS10cnVuaworMzc4MjAgNGY3NDU2ZDAzY2I5ZGU2MjM5ODUwYTY5ZTY5ZDY0ZDVmN2Y4ZTZiZSBsZWdhY3ktdHJ1bmsKKzM3ODIxIGM4NzFlZjk2NjU1YzhkMzhiZGM5NDQzMjlkMDQ5MjUzYmFkMjRmODggbGVnYWN5LXRydW5rCiszNzgyMiBkYzgwNDc2Yjc4MmI3OTBlY2RhNDI3NjA4M2JhZmFiZTBmZWQzOTE1IGxlZ2FjeS10cnVuaworMzc4MjMgY2FkZDNlOGQzNDlmMDlkM2ViYjkyMWU0YjJhMGE3NTRiNjA5MjJjNCBsZWdhY3ktdHJ1bmsKKzM3ODI0IDk1OGRjOGI3YTgyNmExODA1Zjk1YWY1ZmYwZWYzY2MyODAyYjU3NDEgbGVnYWN5LXRydW5rCiszNzgyNSA0Mzc1MDA2ZTVmMDc5ZjcyYjZjOWM5NWIzOGY0NGMzMjIwZDQ3MzRjIGxlZ2FjeS10cnVuaworMzc4MjYgZmJmMzA2NDZjZDEzNjQxZmI3OTliNThmMzNlNDdkYmI1NDY2ZGJjZSBsZWdhY3ktdHJ1bmsKKzM3ODI3IGE5MWU5MmI5ODJhY2FmZjAzOGI3ZDU4MDEwOWNjZTY3MmRmN2ExNDYgbGVnYWN5LXRydW5rCiszNzgyOCA4OTNkNDY1NzY3MzdhYmJhOGNjYzNjZDU2NGIwYzM0ZDA2YWU2ZTdmIGxlZ2FjeS10cnVuaworMzc4MjkgMDZlZTUzYTc2ZjAxNzNhYzA0MGNiOTQyNWEyM2ExMGM1NTBlN2IzOSBsZWdhY3ktdHJ1bmsKKzM3ODMwIDliZDk4M2NmYmU4MWJjODY1YjRmOWRhOTk0Mzc0MmM2YjI1MDMxM2UgbGVnYWN5LXRydW5rCiszNzgzMSAwNzM5ZjM2YWQ1NDQxOWE0MTMxNGVkMGRiZjU0ZTdjODk3NTg5ZTJjIGxlZ2FjeS10cnVuaworMzc4MzIgZmVmZjRlNGYzNDVjYTVlMzM2ZjdiMDBlYzgwOTE3ZDQ1OTQ3ZTI3ZCBsZWdhY3ktdHJ1bmsKKzM3ODMzIDAyMzgwMTMzMjM5NTVlYjRiYTJhNDEyNTA3OWY3ZjQzOWU2ZGEzYjcgbGVnYWN5LXRydW5rCiszNzgzNCAyM2IxMDNhYmI4ZjdmYTdhNzk2ZmUzODk1MDE4NjE3YzFmMDg4ZmI5IHJlbGVhc2UyMy1tYWludAorMzc4MzUgNTNiM2Y1M2Q3YTBkMzJhOWY1NTBiOTkzYjJiNzJmYTA0MDZlNWRkYyBsZWdhY3ktdHJ1bmsKKzM3ODM2IDRjYjdiOTIzNjgxZTQ3YWViNmUzZTUxYmY0NDlkZmU5ZWRiNTcwNDQgbGVnYWN5LXRydW5rCiszNzgzNyBkMjU2MTVlZjVkOGY2MDU5NTE2MDNhNmQ1Y2ZmYjIwOTg5M2IxYjYwIGxlZ2FjeS10cnVuaworMzc4MzggMjIxM2NkYjNjYWU3OTNjYjBkZDZlYWQyOGYyNGQ5OGJhYzgwZjE3YyBsZWdhY3ktdHJ1bmsKKzM3ODM5IDQzOTQ0NjM1MTBmYjJkYjllMDlkOGQ0YjdkNjg0ZDQ1MGUwZWY1NjQgbGVnYWN5LXRydW5rCiszNzg0MCBkY2RhMDZjYjA3OGEzZWY5Njk4N2JlMjRhNTg4NGI4MDQ1MGNkY2VmIGxlZ2FjeS10cnVuaworMzc4NDEgMzNhODQ2Yjc3N2E4OTFhOTNiYzNlYjNjZWFmN2YyZDA5NjM3NWE2MiBsZWdhY3ktdHJ1bmsKKzM3ODQyIGY5MjYxNmY4YzMzYzc0NTExMTk4Mjg4YzA1ZTFhMjkyMmQ2ZDhiZTYgbGVnYWN5LXRydW5rCiszNzg0MyA0MDA1Zjc5ZDI4MWFkMGRmMjlmZDgzMjk4YmQ0MTQ5NzJlZWQxZDIzIGxlZ2FjeS10cnVuaworMzc4NDQgZWMyOTk1NWI4NTQzNWJmODE2MDI4MzFkOTdkOGFiMGFiNDhhZWRmOCBsZWdhY3ktdHJ1bmsKKzM3ODQ1IDQ2OGExMGViYmNkNTAxYTA4NGZmZmY0YzNkMjhiMGJmMmNhMjc5NzEgbGVnYWN5LXRydW5rCiszNzg0NiA2NTI1ZTAyOGFmYjNjOWM3MjZlODQ5ODQ5ZTBmYTYxMmY0OTAwOWMzIGxlZ2FjeS10cnVuaworMzc4NDcgNzAxMGE5OWI1ZTYxMjQxNzZlY2U0MjE2ODhhZWQ5MDg1OTViYmY3MyBsZWdhY3ktdHJ1bmsKKzM3ODQ4IDMyZWQyODYxYzk3ZjE4ZGRjNzdjNThmYTVjYTZiYjE3YTg2NjY2YjEgbGVnYWN5LXRydW5rCiszNzg0OSA0OWI2ZTk2NmU1N2YwODg0NmUyN2Y2MmYyMjIzYTZkN2UyMjVkMDk2IGxlZ2FjeS10cnVuaworMzc4NTAgNDg5NjU2ZGJkZjVhN2YzMTEzZjhjZmYwMmQ1MmRiODJlMjZlN2U2NiBsZWdhY3ktdHJ1bmsKKzM3ODUxIGEwNTA4NWE2M2RlYzgzNjRiMTc0ZTliMjgzYzFlMmY5ZDhhOTQ5MzQgbGVnYWN5LXRydW5rCiszNzg1MiA0ZjJiYmQ0NzFhMjFjNTgxMzhkMGNhNjFhMTI0YmUyNGM3YzBiNTU4IGxlZ2FjeS10cnVuaworMzc4NTMgNzEzNzI0NDk1ODJkMzI2ODU2NDczYWQ2MDc2ZWM1NmYxYjJjNjRhOCBsZWdhY3ktdHJ1bmsKKzM3ODU0IGYxM2NlMGJiNjA2YzAyZDk0NDg1MjQzMzI5MzJhM2FlMGFmMmIxNzQgbGVnYWN5LXRydW5rCiszNzg1NSBhOGRlMjE5NWVmZDY2YmRkODQwZmQ2YzAyNGM1Njg4MGU4ZTAzYjFlIGxlZ2FjeS10cnVuaworMzc4NTYgNjc3MWUxODQwYmJjYmYwM2MxODdiMDI5MzgwMzI4YzExNTlmOWZiYSBsZWdhY3ktdHJ1bmsKKzM3ODU3IGI0YWRiMTAyMTEwMzBhYjI1MDhjNWNhMjkwYmUxNjM2ZDFmZTU4MjIgbGVnYWN5LXRydW5rCiszNzg1OCBiODcxYjk0ZjA3YjZkNmYzZmFhYzk2YzE0ZWY0YmY0NWY4MjU1ZDZkIGxlZ2FjeS10cnVuaworMzc4NTkgMzY1NjM4ZGNlNWYzNDM2MDI5ZjI5MTEwZDA0MGM3YmVkZTFjZWY1ZCBsZWdhY3ktdHJ1bmsKKzM3ODYwIGUwMWExN2JjZGYyOGVlODdjY2JmOTZhZDZjM2IyYzFjY2IyY2EzYTEgbGVnYWN5LXRydW5rCiszNzg2MSBmNTMxMTMwM2EzNTcwMDJkNjFmNjFmZDBjMmYwYzlhNjliMGE0ZDRkIGxlZ2FjeS10cnVuaworMzc4NjIgYjQ4Y2E5NmViNDQwOGRjY2RmYzUwNjlhZDhiNjhmOWJiYTc5Y2VhZiBsZWdhY3ktdHJ1bmsKKzM3ODYzIDlhMTMwOWE5MGI1ZGY2ZDBlNGZmMDUyNGI1M2NkYTk2ODM1YTc5ZWMgbGVnYWN5LXRydW5rCiszNzg2NCBiYWUxOTE5Zjg1NDgxZGJmNjBmMDliYWRmNDU0NGNkZjU4MTg5MGNkIGxlZ2FjeS10cnVuaworMzc4NjUgYTAwY2Q2NzAzNDFiYTdmZWNmODk4MzVkNjkxNDc1YWEyODIwNzdkYyBsZWdhY3ktdHJ1bmsKKzM3ODY2IGVhOTU3ZDliMzY5Y2Q4ZGRjMzcwZmNlMzI2OGUxYjg5Y2M1Y2VkNjUgbGVnYWN5LXRydW5rCiszNzg2NyAzMWU0ZGExNjY0YjdlZjYwNTY3YTE1ODA0NTgxYjA0MGU1NjI2Y2M4IGxlZ2FjeS10cnVuaworMzc4NjggZDViYTRmMzA1MGI1ODcwZTI5ZWE1N2MxYjZhMmUwOWE0M2VmM2Y0OCBsZWdhY3ktdHJ1bmsKKzM3ODY5IDc4NzM4YTg5YjIyMzExZGI3MTI1ZjIyN2IwZmFjZGUxMGQyZjE5NjMgbGVnYWN5LXRydW5rCiszNzg2OSBmZjgwZDhiYmVmNmUxMzQyNmM4YTg1ZDdmOWQ4MzdiOGY4Zjg5ODM0IGxlZ2FjeS10cnVuaworMzc4NzEgMjA5NTUwMjU2YTc0NDE2MDFmYWJiMTdiY2E5MzI2ZGE0MmQ4MTUzYyBsZWdhY3ktdHJ1bmsKKzM3ODcyIGVmN2EwMmIxOGVjY2EzOTk4NzA2YWE0NmE3MTIwMjdhODlhYzk1NWMgbGVnYWN5LXRydW5rCiszNzg3MyA4MjA0YTRkMjAxMmNiNzJkZjQyY2FmYjRlMDRjODA5ZTZmODhhNGQ0IGxlZ2FjeS10cnVuaworMzc4NzQgNzE5MzBkN2IzYjhhMjRmMjQ3Nzg4Y2YxYjM3NmY3MjgxYjBhZGEwYiBsZWdhY3ktdHJ1bmsKKzM3ODc1IDk2ZjYyYzY3OThlODFiMTExM2YzZTMzYmYwYzliOTI1ODMwN2MzYmQgbGVnYWN5LXRydW5rCiszNzg3NiA5YjBjNWJmNDcwMGMwODQzMGU1NDc1YzFlYzlkZmZjZDhiM2Y2ZmU1IGxlZ2FjeS10cnVuaworMzc4NzcgOGRhYTVhNDQ4NDAzYTlmZDU4ZTYwYzg4NjU4YzU4MDYxOGUwNWNkZCBsZWdhY3ktdHJ1bmsKKzM3ODc4IDJiOWMyZWQ1YTc2YmZmN2UzYWIwMzBiNDM1OWZlZmI5MWFlZDVjYzEgbGVnYWN5LXRydW5rCiszNzg3OSAyNjRlNDViYWFjZDUzMzFjMTg0NWE1YTIyNjMzOTlhMjA4ZjA5MTQzIGxlZ2FjeS10cnVuaworMzc4ODAgZTk1OTlkOWQ5MWM2ZTcwN2MyMmIxYmNiODA0NWYyY2JiNTRjMzYxZSBsZWdhY3ktdHJ1bmsKKzM3ODgxIDZiZDgwMjFmNzQxY2I4OTgxZTZjYzAwNDk4NDU1ZGIxY2YyMzc0MTcgbGVnYWN5LXRydW5rCiszNzg4MiBiZGQxNGFiNmM1Y2YxNWJmZTdjMTkwZGIxYjU3NGUzMmI3OGQwYzZkIGxlZ2FjeS10cnVuaworMzc4ODMgYmUzNzBhYmIwMjBmOWM5NzViZGE1NmZhYjk0Mjk4MTU3ZjNiYzQ4OCBsZWdhY3ktdHJ1bmsKKzM3ODg0IGMxMGFkYmFkNDRmYWI5OGMyN2YyMjNiYjFhY2EzY2IzM2YwOGMxNmQgbGVnYWN5LXRydW5rCiszNzg4NSAxNTc2ZTg0NWM1N2JkYWRlYzc3ZDQ1MzhmM2EzNjQ1OWQwNzg1MjAwIGxlZ2FjeS10cnVuaworMzc4ODYgYThmZjZlZDg1NmU4OTNiNDdmMzQ3NGQ0NzI1ODkyZTk2MzhiMTU3NyBsZWdhY3ktdHJ1bmsKKzM3ODg3IGMxNDgzZjBlODAwZDAyZThlYzAxMDkwNjAwNDlhYmI2OTA5OTZmNjEgbGVnYWN5LXRydW5rCiszNzg4OCA3Zjk1ZmU5OGQ4MjE2ZDIxNjhlODRjM2RiOGM3YjZjOThmZDE5MTgzIGxlZ2FjeS10cnVuaworMzc4ODkgNzEzNThmNjU3NWI2YWZlMGVmZDE1MzRjNzU3ZTUzMGVhMjg4ZTBmZSBsZWdhY3ktdHJ1bmsKKzM3ODkwIDdlOTliMDY4MGFkZjExMzIxMmRiOGNjODdlMjhlY2JlODFlMDU4NGQgbGVnYWN5LXRydW5rCiszNzg5MSA4ZGE1N2MyOGI5MTBmNTEzODI5MWI4ODc0Mzk3ZWNiMDZhZWQ3NjRjIGxlZ2FjeS10cnVuaworMzc4OTIgODFhMWY3NTRkMzJjZDIwOGY3MzUwMWViYWU0MzBlOGRkZmEwNDYzNCBsZWdhY3ktdHJ1bmsKKzM3ODkzIGM4OGQxODQxODA1M2I1NGIzNDUwMzBkY2FkMmFkNmJkMGUzZjQyODkgbGVnYWN5LXRydW5rCiszNzg5NCA1YmUzMWEyMDdkODZkN2Y0ZWMxNWIxZDQ3Yzc0ODgwNGU5YzgxYjg1IGxlZ2FjeS10cnVuaworMzc4OTUgN2E1YTU2YTE3Mzc3NTkyNmU5ZDNiZTM1ZTg3NWI1NjY0YmI1MjFjZCBsZWdhY3ktdHJ1bmsKKzM3ODk2IDE2MzQwOWE2MDFiZWY0MWNiZDc4OTIzYjA2M2RiM2UxNGM5N2I2OWMgbGVnYWN5LXRydW5rCiszNzg5NyAyYzgzYjYyMmEzZWU2OGM1YTk5ZDI2Zjk0Zjk3ZDI2YmY5MGJjMzViIGxlZ2FjeS10cnVuaworMzc4OTggYzljNzc5NDA2MGIwZTZlZGI5MzE3ZDAyOGRiYTQwMDc0ZDBhMWE5OCBsZWdhY3ktdHJ1bmsKKzM3ODk5IDdlOTU1ZTk4N2Q2OWNhN2Q3MjMwYjUyOTUwZjJiYjJiOWZjZWFkMDUgbGVnYWN5LXRydW5rCiszNzkwMCBkMzNiM2EyYjA5NGNiODNjOGM5ZDA4ZGE2NmM0ZDcyYTExYmE1YzVhIGxlZ2FjeS10cnVuaworMzc5MDEgZDA3MTZhYjAzZDlkZGM0NTA3Yjg3MTE0NzMzNDIyOWY2YzZiMDNmMyBsZWdhY3ktdHJ1bmsKKzM3OTAyIDZhODA2ZmRhNjY4ZDZjNWY0YWUyMzkwODg4OTNjOGY0ODMyZGFiYTQgbGVnYWN5LXRydW5rCiszNzkwMyAyODMwZTZjYjQxNTc2NWIxNTNlNjNiZWE3ZjEzZDZhYTMzZWM4ZTViIGxlZ2FjeS10cnVuaworMzc5MDQgZmJlYTcxNDgwMmIzZGE5NjIwYTUxMTA2ZDBlZmIzNTY5NDBhZjNmNyBsZWdhY3ktdHJ1bmsKKzM3OTA1IDdhMTI5MDQ0MzhkNmNhNzk3MTA3MWU1MmVhNWQzNGJmZDZkODVlOGEgbGVnYWN5LXRydW5rCiszNzkwNSBmMzFlMThkMzEzYzdhNGZjNjY5MTRiMmQyN2UxMzBhMGY3MmMwYjY5IGxlZ2FjeS10cnVuaworMzc5MDcgNzE2MzA3ZjdlNjE3YzQxODUxM2FmMGI5Y2ExMWJkYWRhNzgwOTViMSBsZWdhY3ktdHJ1bmsKKzM3OTA5IDYzYWZjMmQxYjBkYTM3MjJlMzA1OGZmZjYyMjk2ZTBhODA0NjAxODIgbGVnYWN5LXRydW5rCiszNzkxMCBjZjNmOGJlZTdmN2FiMTJhOTNiZTQ3MjQzYTY1MmEzZTgwNWMxMWQ2IHJlbGVhc2UyNC1tYWludAorMzc5MTEgMmVjZGM4M2ZhODZjZDJiOTNiMTFlNTBlMDNkMTg3MmJkZjg5NTc4ZSByZWxlYXNlMjQtbWFpbnQKKzM3OTEyIDM4NDMyYWQxMWMyYTQyMjZhZTZmMzI4ZjUzOTVmMGFiM2M2ZTZmZmMgbGVnYWN5LXRydW5rCiszNzkxMyBhZWQxZmVkMzdhZDU4NjU2NzNmY2EwNjljNWMzYzhmYWUyZjc3OWU1IGxlZ2FjeS10cnVuaworMzc5MTQgZmQxYmU0OTRjMzFiNjNlNjExMDE1ZDVhZTRiNTFkN2M0MzQxYTk5MiBsZWdhY3ktdHJ1bmsKKzM3OTE1IDhjZWNiOGRjNDNhMzgwN2JjZjNhZTk1NjU1OWI0ODM0ODRmZjZkODcgcmVsZWFzZTI0LW1haW50CiszNzkxNiA3OWQyYWUwYTYyZWZlYjc0MGQ2NGZkZjIwNGViNmUyNTA0ZWM3ZDVlIGxlZ2FjeS10cnVuaworMzc5MTcgYTZlMjUxZGU1ZTQxYmRkODJkODU2N2Y3NTE1NjNlYjY5ZDZkNGQ1YiByZWxlYXNlMjQtbWFpbnQKKzM3OTE4IDcwMjZkMDM4NTA4MTE3MjBiYWNkNWI2YWYwMjVjZDkzZjYzMmNiMDggbGVnYWN5LXRydW5rCiszNzkxOSAxYzRkYmU0YTA2YmQwNTQ5YzBiNDM1OWM0OTE1MjI1N2RjYmFkMDFjIHJlbGVhc2UyNC1tYWludAorMzc5MjAgMjE3ZDc0MTA0OWMwZDYyNmY0N2FhNTMyNzFhZDdmYjdkNTY2Njc5ZiBsZWdhY3ktdHJ1bmsKKzM3OTIxIGM4NzI2MWNlN2FjOTMyNzU0YzZlOWU3ZTdmM2E0YmQ1MTU2NmI0ZTQgbGVnYWN5LXRydW5rCiszNzkyMiA4ZWFmODA4ZmQ5ODBjMTA3ZWQ0NDc4ZGZiYjljZjk1OTBhN2VlZGM2IGxlZ2FjeS10cnVuaworMzc5MjMgZTQzNTMyYjg0OGQ3NWQ4MDNhZWVkNmViNDdkMzQ2ZmE3ODc4MWM3NyBsZWdhY3ktdHJ1bmsKKzM3OTI0IDdlNjQ4MmFiOTQ1NWRhMTc3NzUzNGUyMGM0MTk3YjViZjYwMTVlOGEgbGVnYWN5LXRydW5rCiszNzkyNSA2YmZiMGFiODgzZjIwZjc2YmNmNDNlMjAzZDdmNjYwZDU0OWI5OTFlIGxlZ2FjeS10cnVuaworMzc5MjYgZGE5NjdmYjdhN2ZiNGY0M2ExNThhOWQ5NDgzYTliYTc2OTc5YTYyYiBsZWdhY3ktdHJ1bmsKKzM3OTI3IDE3MmI0N2ZmMmU0YmIzODBiZWY3YWFlZWJlMjRmMjZkYjE0YjhhOTAgcmVsZWFzZTI0LW1haW50CiszNzkyOCBjZWMzMWVkZWE0MTRmZWY0ZTkyMDdlYmFmY2U1NmE2NTcxZjQ4YWRiIGxlZ2FjeS10cnVuaworMzc5MjkgNGUyNTRmMDI4Yjc2ZmMxYmFjNGNkOGM4MGFjYmFkZDc0NmQ4OTc0NyByZWxlYXNlMjMtbWFpbnQKKzM3OTMwIDMzZjc0OGU1ZDE0MjFjODAzNTcyMTgxODhjYWU1ZWYyYThkYWEzMmQgbGVnYWN5LXRydW5rCiszNzkzMSA4YzgwMjJiODFmMDIwYTZlY2JjZjFlMzkwMGQwOTMwNTQ1OTBmNTdlIGxlZ2FjeS10cnVuaworMzc5MzIgYWJlM2VlNWZjNmMzN2RhMGM4NmUzYzM4MjZiZDJiMjljMzE4ZmY5OSBsZWdhY3ktdHJ1bmsKKzM3OTMzIGYxOGE0ZDkzNzE0MmEwNTJlODBjZDc2NWU1NTI0ZWEwMTE0NzI1YmQgbGVnYWN5LXRydW5rCiszNzkzNCA4YmY3NjViNDgwYjgwZjlhMGJkMGFlMDkxYjc5YjQ0NDk1MzlmYzI2IGxlZ2FjeS10cnVuaworMzc5MzUgNTBlMGMzNDVkNDliM2JiN2JmMDk3MjQzMDhmY2M0ODYxYjRhZThlOSBsZWdhY3ktdHJ1bmsKKzM3OTM2IDRjODEwNmMzNThjZTBiOGQ4YTYzZTAyMzI0OGU0YWE1MDZiNjNmMDUgbGVnYWN5LXRydW5rCiszNzkzNyAxNTdmYWU3Njk1MzZlNjMzYTY0YmY2OTFjNDFlYjE5MjhhYTViODA3IHJlbGVhc2UyNC1tYWludAorMzc5MzggNjExNTYxY2NlNzQwZmZjOGY4N2ZjYzlkMmViMGI5MTkzZTk1YmRmMSBsZWdhY3ktdHJ1bmsKKzM3OTM5IGZiZjZlMDRkZWY2OTAyNGMyNDQ0OTE5NWFlNTMxMDliMjc5ZDViOTMgbGVnYWN5LXRydW5rCiszNzk0MCA0M2MwMGYwZTYzMDU1NTc3ZTcwODUzNDA0ZDA0NDJmNGNiOTBlMWE3IGxlZ2FjeS10cnVuaworMzc5NDEgZjczMjgwOTY4MzIyNzkwODFiODhhNzBlZTM2NjAyMjRjMzY0NWU2ZSBsZWdhY3ktdHJ1bmsKKzM3OTQyIDRiNjAxYmQzNDZhNGY0M2IxMzhjM2U4YmQ5ZmRiODQwYjc1OTZlMTMgcmVsZWFzZTI0LW1haW50CiszNzk0MyBjNGIxM2ZhMThhMTAzZGExN2Y4NThiMzY1NDZmYzgyNWM4YTAwOGJjIGxlZ2FjeS10cnVuaworMzc5NDQgNjA5YmNkYWUxMDhhNjU3ODMxYjI1Mjk3ZWVmOTA5MmY0YTQyN2VlYSBsZWdhY3ktdHJ1bmsKKzM3OTQ1IDIzOTk2MzJmZDllMGUyN2Y3MGE4OGY5NGM5OTllZTI3M2I2MDUyNGEgcmVsZWFzZTI0LW1haW50CiszNzk0NiBkMmYyNmVhYWNlMmMxZjMyMDExNWEyM2ExNjI2ZjI1ZGVjZjIwMWViIGxlZ2FjeS10cnVuaworMzc5NDcgZDYyMDNmYmRhMjUxN2QzODk0MjY4ZmI3ZGI5YmMxZjcyNjJkM2U3OCBsZWdhY3ktdHJ1bmsKKzM3OTQ4IDZlMGRiMDdmYmY5MTg1ZDkxYzBlODQ3MjEzMWNjMjMwOTI1MzUyZTQgcmVsZWFzZTI0LW1haW50CiszNzk0OSBjYzljZTY4MzdlYTliNzNlYzQ4MDM2YmMxZWVkNzFjYzUzNDk1MzViIGxlZ2FjeS10cnVuaworMzc5NTAgOTVkMjc2ZDRmOWU0NjU3OTZhZWRhYjRkYzFkMTUwNTIxYWQ4N2Y0MyBsZWdhY3ktdHJ1bmsKKzM3OTUxIDYyNGU5NjM1YzNhZDExZDcyOWM1Mjg2MGFkZDMxZTIzMGM2NzliMmMgbGVnYWN5LXRydW5rCiszNzk1MiBmMDJjZDBkNGEyYTA1YTdjOTQ2OWM4NmMyNjQ4NzgyOTBiZDFkOWY0IGxlZ2FjeS10cnVuaworMzc5NTMgZWRjMjBkNTM5YTE4MTVkNTgzOTRkODNmZTg1YWNhMThjNzY1MGRhNyBsZWdhY3ktdHJ1bmsKKzM3OTU0IDE3NWY2MTI1NTQ5Y2FkNzFiOGFiNTJhMTRkMDY1ZGMxM2ZjNGFlZmIgbGVnYWN5LXRydW5rCiszNzk1NSAwZWMzNDQ2NjNmNmE5ZWNmODhiMzJiOTdjZGQxMDY2ZjU0ZTY4NDY4IGxlZ2FjeS10cnVuaworMzc5NTYgOGNkMzE3NmZkNmYwMzBiNjA0MjFhZDA0OGVmYWQ1YzEzMjIyNDFlNyBsZWdhY3ktdHJ1bmsKKzM3OTU3IDhmOTI5NTEzOTkzYzkxZGZjNjQ2YWVlMDc3MmUwZTczYzhlZmNhOGQgbGVnYWN5LXRydW5rCiszNzk1OCAyNGYwZGE5MjAwMTA0NGU4MjQ5YjM0OTdiMGMwN2Q4NjRkYzFkYzEyIGxlZ2FjeS10cnVuaworMzc5NTkgNTE3MmMyOGMwYjNjOGM5ODI1MDdkNjEyMTJlMmE1MjE5OTAyOTk3MiByZWxlYXNlMjQtbWFpbnQKKzM3OTYwIGNmNTU1ZWM2OThlYmNlNGZkNmRjY2M2M2JiYWE1MTU4MjM3MGU3YzQgbGVnYWN5LXRydW5rCiszNzk2MSA1M2M2YTk1OWY5Y2ZkNWVkOGYwM2FkYmM1NjIyZDI4MjM1ZjVhMWYyIGxlZ2FjeS10cnVuaworMzc5NjIgMGRmZTYwOGVlY2ZhYzIwY2Y2OTliYjg0YWQ2OTdiNzlkNDNiMjZlOSByZWxlYXNlMjQtbWFpbnQKKzM3OTYzIGI5NjZhYWRlNTQ4Y2Y4YjEzYTcwZTQ2MDVlMTkwMzc4ZTg1YTdiN2UgbGVnYWN5LXRydW5rCiszNzk2NCA4ZmQ3NjZiYjc2YzllNDhlMTAyZDU0NGQxZDI4OWVhMGUyOWE5ZGEwIGxlZ2FjeS10cnVuaworMzc5NjUgZjQwOWQ0YzZkYzYwNDFlYjU0ZjRhY2IzM2M5ZjE2MDVmM2Q2NmM4YyBsZWdhY3ktdHJ1bmsKKzM3OTY2IGNkZGQwMTZhZTA2YWNmZTljYzM5NGMzMDM4ODg0NTQ3NjgyNGFjZDcgbGVnYWN5LXRydW5rCiszNzk2NyAwZjU2YTY2NTVlYmZhMjgzMDFhNmYyMDEzZjVjMDRmZjYyNjZlMzAyIGxlZ2FjeS10cnVuaworMzc5NjggZWY2ZDFlNWViNGQzMjllM2Y5MmNkNmYxZmRiNTI4ZjFlMDYwNTJiMyBsZWdhY3ktdHJ1bmsKKzM3OTY5IDI1NTcxZWE1ZWNhNjJmMDg1YjhhMDE3NzI1ZjA0ZDAxYWMwODQ4OWYgcmVsZWFzZTI0LW1haW50CiszNzk3MCA2OTg5MDkyY2Q5NmQ1Y2Q5MzMxNDkwNjViM2Q1YTRlMTE3ZmRkNTVlIHJlbGVhc2UyNC1tYWludAorMzc5NzEgNDIxYTVkZjUwOGI4NzcwM2YyN2VhOGVjNmI4OGYzZjQ5ZWM4NGUxNyByZWxlYXNlMjMtbWFpbnQKKzM3OTcyIDFkMWQ2Mzc3YWNiMTIzZDE4YzgyYzE2OWE3MzM3NzA4NWFjZTMzMzggbGVnYWN5LXRydW5rCiszNzk3MyA5NTc0MjljNDZiYmY4ZDc1MGU3NmE4YzkwZjc4YWUwNTZiMWEyYjgzIGxlZ2FjeS10cnVuaworMzc5NzQgMDVmOGE0ZmVjMzU2Mjk0NmZhZmZlNTUzZGE1OTYzNWE2NWU4NzU0OCByZWxlYXNlMjQtbWFpbnQKKzM3OTc1IDczYjA5YzJiNzg4YjhhMjIxMmQ0ZTI2NWZlZThhYjk5ZmY5NTVmYmIgbGVnYWN5LXRydW5rCiszNzk3NiAxZDA0OTM2YTY0NTZhMDRhOWZmMTBjMjU5NTVhOWM4MGFlZTRhM2EyIGxlZ2FjeS10cnVuaworMzc5NzcgOWMxZWIzM2ZlMTEwYmNjZDNkOWU0OTQxMTE2ODZmMmIyNjk5ZWFlOSBsZWdhY3ktdHJ1bmsKKzM3OTc4IDk2NzIxYTAzYWUzMDAyNGQ2ZWYxYmI4MTVlMTJkZTI3NzFmYWNhZmMgcmVsZWFzZTI0LW1haW50CiszNzk3OSBhYjhiMGI3MzE3MTdhNTgwMzBjYjgxYTkzOWE1ODNlY2RmNzhiZjZmIHJlbGVhc2UyMy1tYWludAorMzc5ODAgZjBmYzZiZWZiMDYwN2EzMWE3OGEyNmE5NTQzNmRlMzU4M2UzMjM1MiBsZWdhY3ktdHJ1bmsKKzM3OTgxIGNjYzUwZTBiNDY2ZDRlY2Q4ZDIwMGM0YWUwYzEwNjQxMmQ5OGQ4MWEgcmVsZWFzZTI0LW1haW50CiszNzk4MiA0OTc5YTQ0MzQ1NDM0MDk2ZjA5MGVmNGUyYWVhYzgwMzk5ODY4ODM1IGxlZ2FjeS10cnVuaworMzc5ODMgNjBkNDgyZThmODQ1MDE3YzBhZDU1YTk3Y2Q4MTc1MzYxZDQwMGEzZSBsZWdhY3ktdHJ1bmsKKzM3OTg0IDE1MzFiMjVlYmRjZDNiZjM2MDc2ZDRmNjY1MTU3YjdhMmY3ODc4YmYgcmVsZWFzZTI0LW1haW50CiszNzk4NSBlNDZmOThlNzNlNTI3MmFjMDgxNmZmYjc0NzViOTNjYTgwMGU1ZTFhIGxlZ2FjeS10cnVuaworMzc5ODYgZmVkNWE3MzQ0NjVkMzY0Zjc3NTA1ZTdhOGUwNmY5NTc5OGVmN2Y5YyByZWxlYXNlMjMtbWFpbnQKKzM3OTg3IDRlOGZiMTJmODM3ODcyMmFiYTA2ODlhYWQ2Y2Y4ZmQ2NmMxZjE5MzEgbGVnYWN5LXRydW5rCiszNzk4OCA0ZTM4ZWNkMTkxMmU0YTY1NjBhMzJhNDNiZWExOTNmYjk5ODQ3ODNmIGxlZ2FjeS10cnVuaworMzc5ODkgMWE5MzhmNDU2MDUzODUxMTAyYzc4M2E5Y2Q5NWRiNWZiMmJkYzhmYSBsZWdhY3ktdHJ1bmsKKzM3OTkwIDc5MDY2ZWEzOGM1MDMxM2QyMWRiNDYwNjU4ZjM1MDZlZDlhNjI4OTQgbGVnYWN5LXRydW5rCiszNzk5MSA0ZGNkNzhmM2I1ZDFiYTE2YjllMzFkZDA5MDkxNzQyOGE2OWY5NjUxIGxlZ2FjeS10cnVuaworMzc5OTIgNzEwYjBiMGUwN2VlZDcyYTI0MDc3NDMxNDYyNTM1ODA0ZGMxZGVhMSBsZWdhY3ktdHJ1bmsKKzM3OTkzIDAxNWI4OTJjOThlZTI0NjZhOGI0M2RjMmFkNzgyMjAyODAyMmEzNTQgbGVnYWN5LXRydW5rCiszNzk5NCBjZTRiZmJkOWExNmNkNTg4YTBiN2ZlOGRlYjM0MTcwNGFhYTUzMDc1IGxlZ2FjeS10cnVuaworMzc5OTUgNTkxMmI0MTgxNTg0NjE5ZTdjNWM3YTlkYWY1YTA4NmU3ODA0ZDA2MiBsZWdhY3ktdHJ1bmsKKzM3OTk2IGE4NTdjMjVhMzdiOTY4ZjVmYTFiNTY2NjVmNWU4N2NkNmJjYzk1YjkgbGVnYWN5LXRydW5rCiszNzk5NyAwYTZkZDNmMmFiYzdkMzhjOWZhNzMwMzU3NGUzODZiYTAwMGM2YjI5IHJlbGVhc2UyNC1tYWludAorMzc5OTggYWZlOTBlOWU0YjQ4NGQ4NzlhYmYyMzc0MzdiMWE4NDhhNGZhZWQ3OCByZWxlYXNlMjQtbWFpbnQKKzM3OTk5IDQ5MjY1Mzg1Nzc4MmZlNjNhY2FiZmY3YjFmMzZjNzc3YWE3N2VjMjIgbGVnYWN5LXRydW5rCiszODAwMCAyMWFiZWNlYWFiYWQ2ZDYxYjljYTVhMDg5Mzg0YjBiOTc4OTBkYjBkIGxlZ2FjeS10cnVuaworMzgwMDEgZjA1ZGQxODE2YzFmN2NkZjVhNDY4ZWQxODEzMDhkMzkxMDUwNGJiZSBsZWdhY3ktdHJ1bmsKKzM4MDAyIGQwYTA5Yzc5NzQwOTY0ZTIwZjE5NzIyZWY2ODM2NjdjYzY3YTc3YzMgcmVsZWFzZTI0LW1haW50CiszODAwMyBkYjhmNjk5ZmY3ODI1ZjdmMTdmNWRkNmZkYTcxY2IwMDYyMmFkMzdlIGxlZ2FjeS10cnVuaworMzgwMDQgYjEzMmJhOTI1OWFiMTRmNWE0ZWU3ZTkzNTU0Njk3NWMwMDdkNzE1NSByZWxlYXNlMjQtbWFpbnQKKzM4MDA1IDcxZDcxMGUzMzZkZmNhYjk5NTY1MjYyYjUyMmZjNzA0M2IzMTE2YTggcmVsZWFzZTIzLW1haW50CiszODAwNiBiZWRiMzQwZjEyZjk3MGEwMjgwMzRkMjFmODY5NjRkMmQ4MWY1MzMwIGxlZ2FjeS10cnVuaworMzgwMDcgNzUyZmE4NmYwNmQyNWMzMDM1OGZkNDQyZjkwZjI5MmUyZmFiNWMxMSBsZWdhY3ktdHJ1bmsKKzM4MDA4IGMyZWJhMDRlMzA0MTUxMDgzYmZhZTlkMzg0ODQ5ZGQ0ZjRlNmM1N2MgcmVsZWFzZTI0LW1haW50CiszODAwOSA3NWYzYTUxYTRlMzNkYjY1ZmQ5M2NmNTQyZWVmNmQ3YTg3MmEzZGNmIHJlbGVhc2UyNC1tYWludAorMzgwMTAgMTY4MDNiMDM5NjRlNGQ1MmE1NjYwZGNiNmVhOTUwZjc5OTg2Mjc3NyByZWxlYXNlMjMtbWFpbnQKKzM4MDExIDY1NzRjNTE1ZTAzNTY2YmE4YjYzNzkzYTM5NTYxZWVjYmQxMjZjZDQgcmVsZWFzZTIzLW1haW50CiszODAxMiBiZTQ1MGEzMzVlOTY5NmUzZGIxZGZmYTY5MGQzNzM2OTJjZTMzZWYxIGxlZ2FjeS10cnVuaworMzgwMTMgYTY1OWIwY2VjYjkyZjdkZTM2ODE4NGE3NjBhMDc4YTlkYjgyYTk4MiBsZWdhY3ktdHJ1bmsKKzM4MDE0IGU2OTJlNzdjYWQ1ZDVhNDNkNWNlNzliOTFiZmQ1ODUxZjhlMjhiYTEgcmVsZWFzZTI0LW1haW50CiszODAxNSBkZTQ3MDFmYzE3NmY5ZTQwMDhmNTAzNmY0MmYxNGRiMTJkZTYyYzY1IGxlZ2FjeS10cnVuaworMzgwMTYgYmJkYWFjYzQ0ZjZmNGEwYjNmOWNlODNhMzVmZGZlMTZiYWJhODg1OSBsZWdhY3ktdHJ1bmsKKzM4MDE3IGE4Njg2NmJhYzM2NmI4ZDhhY2Q0NTljYTg1ZTBjNDA5ZmRmM2MzYWEgcmVsZWFzZTI0LW1haW50CiszODAxOCA1MWIwZDE4ZGE0NDdiNzM1MzEzMTc3YWRmY2MzMjBkZDIxYzU1M2RmIGxlZ2FjeS10cnVuaworMzgwMTkgYzI5NGIxMTMyM2QxN2E0N2QyMzFmNjhmNTFjOGNhOGUyMzk1NGQ4MCBsZWdhY3ktdHJ1bmsKKzM4MDIwIDI1ODU2MGFkYzQzYjMxYjVlZjgwZTUyOWUxZTFhYTQzN2ZmMTBlNDggbGVnYWN5LXRydW5rCiszODAyMSBmMWVkYjQ3Y2U0ZmFiNDZiOWQ4ZWMwNDE4NmM3MzFhZGRiZmYzNDYwIGxlZ2FjeS10cnVuaworMzgwMjIgMzYyNmRiNDMzMTA0ZTA3MWQzMzkxZWY0ZmE0NDIxZDAwM2ZkZGU1MCBsZWdhY3ktdHJ1bmsKKzM4MDIzIDBmMDA3MjdhMjdiMzBiZTk5MjA3MWU1YmRiYWEyMWRmMDYwMzAwZjMgbGVnYWN5LXRydW5rCiszODAyNCA2OTYxMWM3Y2QyM2JkZjQ3YzQwNjY1MDBlYWYxYzRmYjhhZDcxNWZjIHJlbGVhc2UyNC1tYWludAorMzgwMjUgY2EyY2ExYWViMDgwNTNiNjk3ZjJjZGRmN2Y4NDg5NjkyYWE0OTVhZiByZWxlYXNlMjQtbWFpbnQKKzM4MDI2IDhiMTE0NGJhNzM0ZWZhZTFmZmJjNTQwZmNhY2RlYjdlNjUwZjgyZWYgcmVsZWFzZTI0LW1haW50CiszODAyNyBjYjU0ZjExNTNiOTM1NGU5ODJlZTliZjQyYTBiMDY5M2U5NjQyYWExIGxlZ2FjeS10cnVuaworMzgwMjggNWVhMDI1YzQyMWQ3YmI4Nzc3ZDUzMjYxMDFkOTY3ZDIxMzAwM2I2ZCBsZWdhY3ktdHJ1bmsKKzM4MDI5IGMyMGY1YjM4ZmEyMDk2NGFkNzJkZjVjYmUxOGNlYWM2MDgzNGY2YjcgcmVsZWFzZTI0LW1haW50CiszODAzMCBlNTM2OTNhMDJjZjA1NWQwZGY5MjYyNmZhNmVjODkyNzY0YTI0NzZjIGxlZ2FjeS10cnVuaworMzgwMzEgZmRlY2JhMjZmYzg3ZGJmZWQ5ZWY0NTIyNDMyNzFmNDZiZDUzMzEyNSByZWxlYXNlMjQtbWFpbnQKKzM4MDMyIGIzYWZjMDFjMDVhMDVhNTZhM2I0NjBkYWJlY2EwOTRiODJkYTZmYzUgbGVnYWN5LXRydW5rCiszODAzMyBkYjliNjQ5MzlkNDVjNzI4ZWRjNDRkOWFjYmM3MGJmMzAzNDA3NWRlIHJlbGVhc2UyNC1tYWludAorMzgwMzQgODBmMDFmZGJlZGViYzQ5OGIyOTdiMjE5ZGYzMGU3OGM0MmJlMThjNSBsZWdhY3ktdHJ1bmsKKzM4MDM2IDZjMDJmZjkwMmY4MjBkNjJkODUzNGI1MzBiMGMxYWYwNzI3Y2E4YTMgcmVsZWFzZTI0LW1haW50CiszODAzNyAxMzAyMWQzNTEzNTg2M2Q1Y2YxNjdkY2M3OGRjZDVlOTIzNmI3MTBjIGxlZ2FjeS10cnVuaworMzgwMzggMjE0NGEzNTJhYTM3ZmMwYjFjYTc3MTMwMWI1NmZmMWEyYzI5OWI1OSBsZWdhY3ktdHJ1bmsKKzM4MDM5IDMwYjk3YzFiYjEyZGRmMzJmOWVhYjQzZDZmN2E5YjlmMDYwNGYzOWMgbGVnYWN5LXRydW5rCiszODA0MCA5YzNhNjRjMjgxZTFiMzVhMDFmYTNmMGFjODI1YzMzNzk0MThkOTUyIGxlZ2FjeS10cnVuaworMzgwNDEgMDViYzhhY2FmMGJiNGM2YmMyMWU5ODJjMzFkMmIwNjJhYjZlZDk3NSBsZWdhY3ktdHJ1bmsKKzM4MDQyIGU4OWIxYTI0MGZmN2VkMTUyYjU3YTU4MjkwZjRmNzc1ZGQzMmI2ODUgcmVsZWFzZTI0LW1haW50CiszODA0MyBjMTM5YTQ5OTdkOWYxNGM0Mzg4ZjFiMzBjMzZmMWE5MDdhZDU3NDhjIHJlbGVhc2UyNC1tYWludAorMzgwNDQgOGZkYWE5N2E4YWMzNDM1ZWVlYTZjNGRlYWEwN2IyNDA4NjQwYmZhNSByZWxlYXNlMjMtbWFpbnQKKzM4MDQ1IDExZGIyOGU5MjA5ZmVkM2UzMTUwMWUxOTRhNGZhM2E2MGFjMGJmNWQgcmVsZWFzZTI0LW1haW50CiszODA0NiAwZWZjYzE2ZjVhMGQxNjU4YWU4YzU4NmZmYWYyMzNmZTJlOGE2NGZlIGxlZ2FjeS10cnVuaworMzgwNDcgNDcxNGFmZjRiZjc1Mjg3ZmYzMWFhZjQzOTg5MDY1NDBiNjE0NDg0ZCBsZWdhY3ktdHJ1bmsKKzM4MDQ4IDllODE5NWUyMWRhNjllYjJjMjNlODBjMGNmNjQ5NmE1OGJhM2FkMjMgbGVnYWN5LXRydW5rCiszODA0OSAzNmNmOTRmNTc0MTUxZjRiZGIzNWJiMTM2Zjk2NTBkYTRmYjJiOTIzIHJlbGVhc2UyNC1tYWludAorMzgwNTAgNmY0YTZlOWFkNmYzM2FiYmZhMmEzNTk4YTE2ZmJhNWMxMzA3NjhjZSByZWxlYXNlMjQtbWFpbnQKKzM4MDUxIDUyMWJlYzYwZWIzMDJmY2JjMzUyMDA1MDkwNjRmMDVlZjAyZjU3YTggbGVnYWN5LXRydW5rCiszODA1MiAwNDcwZDc1NDE3ZmYxNTVhNzQzMDQ4ZTdmMjE5M2M0N2NhMDdiMzU0IGxlZ2FjeS10cnVuaworMzgwNTMgZDA0NzAxZTU5ODcyODQ3OTc3ZWQxYzZhNzhlMzlhNzQ1NGI4OTlhMCByZWxlYXNlMjQtbWFpbnQKKzM4MDU0IDQ0ZWJmOThhNTg2ODIwM2QzNmI0ZWY1NzQyNzgzNDA1ZDgyZjhhZTYgcmVsZWFzZTIzLW1haW50CiszODA1NSBhNGJkNWQyMWM4YjI2Y2IyYWYxYjEzMjVmMDU5YzRlMmMzZTgzM2E0IGxlZ2FjeS10cnVuaworMzgwNTYgY2Q0ZGQ2ZGQ5NzIxYmRhNzBlMmIwMTc4MDE5NDI4N2ViZGYxMzk2ZSByZWxlYXNlMjQtbWFpbnQKKzM4MDU3IDk4ZDc5YjQ2OWU3NGQzMWZkNzJmODA2ZTkyZTU3ODE5ODMyOTM4YTggbGVnYWN5LXRydW5rCiszODA1OCAxMjg1Y2ExMzQ1ZDVjMzEzMWRiNzQ3MzExMmQ3Njg1NTA2NDE0MzcwIHJlbGVhc2UyNC1tYWludAorMzgwNTkgYTIzNDI4NGY5ZTA2MDJmMWM1ZDRkYjBlY2U1ZmY5M2U5ZWQ4N2RlNiBsZWdhY3ktdHJ1bmsKKzM4MDYwIDQ2ZmEwZTIwY2JjZmU0MDg2Zjg3NmVmNzNiMjVhZGZkNGE5MjAwMTQgcmVsZWFzZTI0LW1haW50CiszODA2MSAxOTkwZjdlYzBkOWFkMGIwYTc5MjEzMDIxNWQyZTU5NmMzYmM0NTk0IHJlbGVhc2UyNC1tYWludAorMzgwNjIgZGFiZDQzYmYwZGRkZmVlZDVmZTg5ZGZjM2VmNzA1MmVlZDhhMjc3YSByZWxlYXNlMjMtbWFpbnQKKzM4MDYzIGJlOTc2ZGRmMGZmNzA3MjFjZTQwYTM0MTc0ZWI2MDAxYWRiZDllNWUgcmVsZWFzZTIzLW1haW50CiszODA2NCBkNDcwMmU2N2UxMTk3ZmIyOTNjOTAxODkwN2Q0NGI1NzNlOTg5MzIzIHJlbGVhc2UyMy1tYWludAorMzgwNjUgN2ZiNjdhZTkzMTI4ZTE5NTE2NTc5NWY0MjBmZDkxYjIwYmM1MmYyZSBsZWdhY3ktdHJ1bmsKKzM4MDY2IGEwYzdkZjUyYmE0MTU3MzFhOTJkNjY0NTZkODgzM2E5MjZiM2QwMGUgcmVsZWFzZTI0LW1haW50CiszODA2NyA5Y2I4YzY4N2YzZDY3ZmZhN2JiNmM1OGU4ZDIyMzhiMWQzZDEyOGYyIGxlZ2FjeS10cnVuaworMzgwNjggMzA4ZWZkNzI2OGMyNmNlYWExZWU3ZmE5NmVhOTk1OGJkNzdhZGViNyByZWxlYXNlMjQtbWFpbnQKKzM4MDY5IDdkNWQ2YmRjNGY5NzlkNWE4NWE4MDY4MzEzZDgxMGFmNjAyMTdhY2YgbGVnYWN5LXRydW5rCiszODA3MCBlYTM0MDAwNmMxZjMwYjg2ZTExODI3ZjYwYTk4M2RjMjU5Y2IzYjVmIHJlbGVhc2UyNC1tYWludAorMzgwNzEgODZhNjBkNGZhODdhMzU2YWNiNjc0MGRlMGZlN2I1MGMzYTZjYWYxMiBsZWdhY3ktdHJ1bmsKKzM4MDcyIDE5Mjg2OTk0Zjc0ZjMyYTMxNjA4MWFmZWRlNTY2NWE3M2Q5ZTEwN2IgcmVsZWFzZTI0LW1haW50CiszODA3MyA3YzQxM2QzYTQwYTUyYmEwY2UyYWNhM2FiNTdkOTc3MDhlZjYwNWVmIGxlZ2FjeS10cnVuaworMzgwNzQgMDJmY2I1ZWI4NGNiNmExZmJjNmZmNjg2MThlMWU1MGQzNWY2N2M1NCByZWxlYXNlMjQtbWFpbnQKKzM4MDc1IDAzNGM2MTFiMmU4NDRlMGNlNWFlY2M2ZTBlNDY1YWU3MTczYmU3NGIgbGVnYWN5LXRydW5rCiszODA3NiA5ODY1NGJmYTgwZWE1ZGRiMjQzMzg5MzUwNzUxM2E0OTg0MjkwN2E5IHJlbGVhc2UyNC1tYWludAorMzgwNzcgMWU4YjAzM2Y5MWRjM2JhYTk5Zjk4YmY2NGIyY2JjNWZlZWI3MzcyOSBsZWdhY3ktdHJ1bmsKKzM4MDc4IGE2YmEyOGQxZDgwNmFhODMxNDg1MzJiMGQxYWI1YWM5ZTJhNmMzZmMgbGVnYWN5LXRydW5rCiszODA3OSBhYmUzMTQ1ZGRlNGU3Y2Y2ODdmOWMyMTdmMDI3YmZkY2FkNDRhN2ExIHJlbGVhc2UyNC1tYWludAorMzgwODAgYjY2MTk0MjNjMTk2MTAxOTUyMDE4ZjgzMmI1ZjNkNjY3N2FmODlmYiBsZWdhY3ktdHJ1bmsKKzM4MDgxIGMxYjQ0MGVhY2JiMTgwYmZkOWRkOTQ0YTFhODM2ZTY1Y2Q3MmQzYjEgbGVnYWN5LXRydW5rCiszODA4MiA5OWUzZGRiM2E3NGFhZDc5ZmMxZmMzODI3YzBiZWVhNjkyOTU2MWNjIHJlbGVhc2UyNC1tYWludAorMzgwODMgOGQ2MDA3N2U5OTUxNDkwYThlMjg0ZTU4MDliZjA2ZmZkNDkwZjM0ZiByZWxlYXNlMjQtbWFpbnQKKzM4MDg0IDY3MTkzNjkwODNjMWViOTIxOWU0NjgyZmRlZjNkZGI5MDE4OTEwNWEgbGVnYWN5LXRydW5rCiszODA4NSA5ZGM5NmFjOTQzNDIzODJkZGNmYjI0NTRiMTA2MDFmZDBkMjEyODliIHJlbGVhc2UyNC1tYWludAorMzgwODYgMmFhOTZlZTNmY2I1YzkwYjcyZDI1MDAyNDEyOTQzMzhlZjJmNmViYiBsZWdhY3ktdHJ1bmsKKzM4MDg3IDRhMGMxZTUxN2U2YmIwZjU4ZmQ3MzM5YjhkYzU2NjBmZTBlMDM5ZDQgcmVsZWFzZTI0LW1haW50CiszODA4OCAzOTExNzI2YWVjYjkwMDFlNzE5NWQ3YzY1Zjg1NTExOWRiMGYwY2VkIHJlbGVhc2UyNC1tYWludAorMzgwODkgNjQyZGIxZmIzNDgxYjMzZGFkMDY5NzY1NzU1MGU4NDc5ZDU0NTljNSByZWxlYXNlMjQtbWFpbnQKKzM4MDkwIGJiZGMxZDczMTBmNDk3YTc4YjUzMTZiMmU0ODhiYTQ2YjViNWNhMzQgbGVnYWN5LXRydW5rCiszODA5MSBlYzE5MjVmMDdlYzk3ZTAyYzNkMTc2YjgzYjMxZjdiNzQ1MTY1ZmViIGxlZ2FjeS10cnVuaworMzgwOTIgZTIwODhhZTBkNjdmZDY2N2ZmYjNiNDJhNjMzYTBiYWZhMGU1NTY4OSBsZWdhY3ktdHJ1bmsKKzM4MDkzIDU3YjIzZTU3NWZmYzYzMGMyOWM0NGZmMDJhMmM0MjhkY2VkNWQ4NmMgcmVsZWFzZTIzLW1haW50CiszODA5NCA5NWJiZTk5MWZjYzMzMTlmOGY5OTY2NGQxNjA1OTA1NGIxY2YyZGE1IHJlbGVhc2UyMy1tYWludAorMzgwOTUgY2ZkYmZhNTRkYzZhNzAxY2I1OTAwZTMzZjdjOGM5NjhlMTZiOGJlYyByZWxlYXNlMjMtbWFpbnQKKzM4MDk2IGE3ZmZkYzA5ZjAwMjY3ZDc2NDhmNGJjY2RhNjBhNzdkZTlkMzg1NDQgcmVsZWFzZTIzLW1haW50CiszODA5NyA2OTQ2NzBmNjUyNTFkNWNmODBmZDEzM2RkNzUzMTVhYTRhOTcyZWUwIHJlbGVhc2UyMy1tYWludAorMzgwOTggOTNiMWIwYmViYTU5ZjkwMzYyNDdhNjU3NjBjMWMyMTVlODZkMGI2YSByZWxlYXNlMjQtbWFpbnQKKzM4MDk5IGFiMWExN2M2MzNhZWJlOTcwNGE0OTllY2Q4ZjU4N2ZhMmEwNWE1ZTEgcmVsZWFzZTI0LW1haW50CiszODEwMCBhNGQ4NjllY2VmMzM4YmViMzJlZjIyMWNkYzQ3ZTFhYWU3YmExN2I5IHJlbGVhc2UyNC1tYWludAorMzgxMDEgYzBjYzY2MDFkZGFkYTJlYTUyMGU1MWFlNWQyMjFmNmMyMjQ2NDBjYiByZWxlYXNlMjQtbWFpbnQKKzM4MTAyIDkwY2QyNGExZWUxMjQ5NjEwMjRjYmVmM2U2MWUxMGNhNGVlZjg1NTYgcmVsZWFzZTI0LW1haW50CiszODEwMyBhZWEyMjM3YjM4OGZmNzJmZTk2OGZjMTEzZWQ3Mzg4NGI1MzFiYWYzIGxlZ2FjeS10cnVuaworMzgxMDQgMjkyMDY5MWY2M2YwNjg3Y2JjNTAwYWMzMjAyNTM4NTJmZjJiYTBmOCBsZWdhY3ktdHJ1bmsKKzM4MTA1IDkxNDUzNGY2ZWY2MTI2YTQ2MmYzZjZjZTVhODFhODcxYjc1ZmE1MDMgbGVnYWN5LXRydW5rCiszODEwNiBhMTVmYTA1OWY5ZjAzMDA3ZDE3MzU2ZTU1ZjQwMGU4MzJhNWI2YzA5IHJlbGVhc2UyMy1tYWludAorMzgxMDcgYzllNWQxZDFlODg3Y2MwM2FjNWZlODgwOWMxNDg5ODMwMzE1ZjJmNSByZWxlYXNlMjQtbWFpbnQKKzM4MTA4IGRmMGMyZjNhY2M3Yzk2MWIwOTcwNDllYjRhODA4OTMxZTBiMjM3ZGQgcmVsZWFzZTIzLW1haW50CiszODEwOSBiMDQ0NzM1YzkyN2IxMDQyNjEyNzg2N2ExNTE4MDI4NDA3ZWI0ZWEwIGxlZ2FjeS10cnVuaworMzgxMTAgNDYzNTM1NjhlNDBkOTlkM2NlYjUzMWY3MTJiNmYyODhlNWM3NWQyZSBsZWdhY3ktdHJ1bmsKKzM4MTExIDk5ZWJlYzJiZTAzMTI5MjFmODM2YmJjNWE4NzMyNTkxNzI5Mjg2OTQgbGVnYWN5LXRydW5rCiszODExMiBhYWJhMWNlNGIzY2EwNWZkOTIwZDZjZDcyZjYyNGQ5NWRjZGFmOTk0IHJlbGVhc2UyNC1tYWludAorMzgxMTMgODZjM2E3YzZiMDBhMWFiMjgwMmIyNTU1OWFkMTJkOTJkYjE1MmY4YSBsZWdhY3ktdHJ1bmsKKzM4MTE0IGY1NGUxNDAwMGQ2YmQwZTJhZjFhM2NjOWI1ZjJjMTkzODU5ZTQzM2QgbGVnYWN5LXRydW5rCiszODExNSBlODJkMTgzMjU4ZjljMTA2NGE4ZmU1ZDM2NzMxMWVmNzM0N2Q1ZmZhIHJlbGVhc2UyNC1tYWludAorMzgxMTYgNTc5OGFhNjU0ZWM2NDBkOGRhOTk1MzEzMTYzYmMwODRmYjRhNzYxNyByZWxlYXNlMjMtbWFpbnQKKzM4MTE3IDI4ODkxZGMyNTU4MGNhYWM4N2IwYzBjMmFiMGZmMjkzOTI2OWI4MWIgbGVnYWN5LXRydW5rCiszODExOCA1ODQwMjNkYWM0MDY5MTViNTY4NzJkMWM4OGEzNWE3YWUyOGIxMjQ5IHJlbGVhc2UyNC1tYWludAorMzgxMTkgNGVjMDA2Y2EyYjkxYmVhN2U1MmQxODI0NWEzZDAxNWIxNTNhZDdlNCByZWxlYXNlMjQtbWFpbnQKKzM4MTIwIGU4MTE1MjE1MjQzM2ZiMThhZGQ0ZTlhZDAyOTdkNzBhZDg4MDc3MzcgbGVnYWN5LXRydW5rCiszODEyMSBjNzAyMzkwYThlMTIyMmU5NzkwMDdlMWNhNTNhOWQ2NDg0YzRlODk5IGxlZ2FjeS10cnVuaworMzgxMjIgMGQ5MTYzZGE2MWEzYmIwMDM1NDk3YmQwMDBhYzNjNmQ5MDU1ZDhiNCBsZWdhY3ktdHJ1bmsKKzM4MTIzIDY0NjE5NWI1OTIwNTc3ZDRmNWI2MmVjNThmZWFiMmRlZGU4YTI1NDQgbGVnYWN5LXRydW5rCiszODEyNCA3NGE5MWU0NTU5Y2E1YjI1MzIwMzUzNTViOGQ4MGNjNjg0Mzk2ZjlkIGxlZ2FjeS10cnVuaworMzgxMjUgMzIxYmMyZDQ5YTVhMmUxMGZlYzRlNDNkYzBkYmU4NTBjMTg4MjkyNSBsZWdhY3ktdHJ1bmsKKzM4MTI2IDU4NmE3NmY5NmIwOWRkNGYyNGJjMzllNzg3NDAzOGRmZjY0ZWRjYWYgbGVnYWN5LXRydW5rCiszODEyNyA1ODk4MWZlOTBiZWZhNGU3MDA4NDc4YzlmMmQ4ZDYyMjRiMDIwOWM4IHJlbGVhc2UyMy1tYWludAorMzgxMjggMTkxNGM0ZGI0YjI4NjBjOTY1NjNlNTBiOGE4YjhkZDczNDBlMzIxNyBsZWdhY3ktdHJ1bmsKKzM4MTI5IGIyZWNkYTRkZDcwZmRmNjhjMDUwYmVkOGFjZmQ4YjIyZDllODZlYjMgcmVsZWFzZTI0LW1haW50CiszODEzMCBhZjAxMzM2ZmYxOWRiMzA2ODI5NmE4YTY4MzJiNjI5YmFmNmZjMDQ2IHJlbGVhc2UyMy1tYWludAorMzgxMzEgMDQ0MjcxNzRjZjZhYjEzZjdlZjliZjhhMTc1MTIyMTRiNzkzYWYzYyByZWxlYXNlMjMtbWFpbnQKKzM4MTMyIDA1NWRkN2Y5MGIxZWE4YjZlZTZjZjg1NWJlYjhjNWZmZDVkMGNjZWQgbGVnYWN5LXRydW5rCiszODEzMyBhOWEwMzM2ODI5YmEwNDAzZWM3YzEzZmJhOGMwNWQzMmM1ZjU1ZDZmIGxlZ2FjeS10cnVuaworMzgxMzQgMDAwNmIyZGQzN2MyMzY5MWQ2MjFlYjRiMzA1MzM0ZDlmMzY3ODhiYSByZWxlYXNlMjMtbWFpbnQKKzM4MTM1IDAwNTYyZGFiZmQ0ZjM3YjgzMDg3YzY1YjQ1Mzc5MzNjNGU2YmUyOGEgcmVsZWFzZTI0LW1haW50CiszODEzNiA0YWNmN2FiZTU4MjU3N2VlNmVlYWQ3MThkYzc5Njg2MmZmZDRiMjg0IGxlZ2FjeS10cnVuaworMzgxMzcgYTEzZDk0NGNhNzZjOTc2NGVjMWViMWRiNGVlYjEwN2NkNTIzMzQ5YSBsZWdhY3ktdHJ1bmsKKzM4MTM4IDIxZGQ1MjRiZTAzNmFjYTRmZmJhZGJiNmM4NWU5NTU1ZThkYjkyNGUgcmVsZWFzZTI0LW1haW50CiszODEzOSA3MmNkOTNmNDYzYjVhZDE5YTBiNDcwOTYwODFhOWRhNTc4NTU2ZmQzIGxlZ2FjeS10cnVuaworMzgxNDAgOTM3NzJiNzE2ZTNmOTE3OGNjNmRjN2MwNDM2YTYxM2JlNzEwOThlZiByZWxlYXNlMjQtbWFpbnQKKzM4MTQxIGQ4ZWM0YWZhMWZmYjBhZjJmYzA5MTQ4YjU5Nzk0ZDdiOTdkZTAyMGEgcmVsZWFzZTI0LW1haW50CiszODE0MiBlOWNlZGU5MWQzYzMyZjZjZDFiZWU0NzI5OWJmZWU4OTRkNmE5MjA5IGxlZ2FjeS10cnVuaworMzgxNDMgYWZkOWI4MmU2OGYxZjhkYTU0NjE1YzNiYmZiZWMxNzE2OGYwYjgyNyByZWxlYXNlMjQtbWFpbnQKKzM4MTQ0IGIzYWY3YzZkYjFjNjBkZGQ3MTczNWJiMDM4NjQ1MjAyMWRhNWRjZWEgbGVnYWN5LXRydW5rCiszODE0NSBiYThjM2VhYTQzYTU5NzI2YmI0MTcyZDlhYjU0YzVjOTVmMjQxMGM1IGxlZ2FjeS10cnVuaworMzgxNDYgYjJjOTk4MTk4MzA0OWM3ODIxZWFkYWNmNDUzMTEyYmI2ZmZlN2NkYiByZWxlYXNlMjQtbWFpbnQKKzM4MTQ3IGVhYjE3NGQwZWQwMzFhZDVjZjU0NGRmNzVlZWQ2M2I1ZWU5NTJhOWMgcmVsZWFzZTIzLW1haW50CiszODE0OCBhOGE0YWZlMThiNjEzNGEzMDM0MzU3ZWY3MzMyMmY5OGUzM2M0NTQwIGxlZ2FjeS10cnVuaworMzgxNDkgZTIyMWQ5OTU0NjI2ODk1YWU1MDA4YjNiOWRmMGNlZmEwNTc5NDk4ZCByZWxlYXNlMjQtbWFpbnQKKzM4MTUwIGY3NWFjODZiY2VmNDRlZjRmODBmNDU3Njk5ZWFlYzRjOWU3YTQ4NWYgcmVsZWFzZTIzLW1haW50CiszODE1MSA1N2JmZWI1M2YyZmEzNGIyMjNmZDdlNTUwMDM4MTcxNDA2Y2Y1NmY5IGxlZ2FjeS10cnVuaworMzgxNTIgM2VjNTRjNWY3MDgxNDhjYjI2MmRkMjFjOGEzNTFkYTUzZDc0MjViMiByZWxlYXNlMjQtbWFpbnQKKzM4MTUzIDVkYzI3NGUxNTgyMjc2NmJiY2IxMzZlZTliZDY5MjI0MzU0Y2IwZjQgbGVnYWN5LXRydW5rCiszODE1NCAxODEwZGZkNjE1YWU3ZGZkOGFmMTdmOThkOTU3OWQ4YWUxNjk3ZmU0IHJlbGVhc2UyNC1tYWludAorMzgxNTUgNzYyMjkwOTY1MWM1M2Q3OGJjOWY3YWVjMmFmYzY4NzYxMWU3N2Q2ZiByZWxlYXNlMjMtbWFpbnQKKzM4MTU2IDUzNjhkMmI3ZDY2YTBhNTdlOWZhYWFiMTlhN2I1NjgzZjQzYjRlMGYgcmVsZWFzZTI0LW1haW50CiszODE1NyA0ZDM4M2I5OThiYjQ4ZjQ3Njk0MjBhMWU3NzU2MWMxZGIzYTc3NDc5IGxlZ2FjeS10cnVuaworMzgxNTggY2Q1MTc3MDFmZDkzYzk0NDhjNTgyMzcxNDI3YWE4NGYwNTcxNThhNiBsZWdhY3ktdHJ1bmsKKzM4MTU5IDNlOWE0ZDUzMWU1NjNkZDk0ZDgzNmFiOTQ4MTM4M2QwNDA1NjljNGIgbGVnYWN5LXRydW5rCiszODE2MCA0MDcyNWYzMDRlMThkNzNkOTQ4YWUxYTBlZTkwNTA0ZDZhM2EzNDRjIGxlZ2FjeS10cnVuaworMzgxNjEgNjdmMjE5MGUxZjZkOWI2NTA1NTE5MDEyYWE5OTA0MzIwNWFhM2RiNiByZWxlYXNlMjQtbWFpbnQKKzM4MTYzIDU2ZTYxMDMyN2I4MTZjNWJlN2I5ZGY5NGRkNzE2YTBhYzU5YmVmNTAgbGVnYWN5LXRydW5rCiszODE2NCBkYzlkMGE5ZWRlODg2NGQzYmI2NzkzNmRiNGU3MTRhZDk3YWIwYzEwIHJlbGVhc2UyNC1tYWludAorMzgxNjUgZGYzODBlMTk2YzRiNWFhMzQ0NWEwNjcxZDIzMjgzZWY5NTE5NmY0NiBsZWdhY3ktdHJ1bmsKKzM4MTY2IDFkNjI1ZGFlZDU5NDQyODIzNjliODVlYjgwZTUxMjlhNjMyZGFmOWEgcmVsZWFzZTI0LW1haW50CiszODE2NyAxZjdjZjg1MjFiYjU4ODZiNWEwZjgyNDIzYjRkYzQwZjJjM2E0OTdhIHJlbGVhc2UyNC1tYWludAorMzgxNjggOTk4ZmIxZTFjOGU5YTZkMjNjYTJlNjYzMmIzM2VlNWNkN2NiNjk0MyBsZWdhY3ktdHJ1bmsKKzM4MTY5IGNiMzBjZmNiMzllNzQ0NTcyYTQyODdjZmJiM2UzZjBhODQyYzZlOTUgbGVnYWN5LXRydW5rCiszODE3MCA5OTEwNDFmNzY0NDc4YzkwNWFlZmIzOTMwZTczOTZiODQzMzIwNmIwIGxlZ2FjeS10cnVuaworMzgxNzEgMGMzMjYzMjdlNzIyMzkxYjZjNjRjYzM1YzViZjcxZTQ3Y2ZiMGRkZiBsZWdhY3ktdHJ1bmsKKzM4MTcyIGYxYzM1ZGE2NGQ1NTRkM2Q2YTVjMDU0YTgxNDQ0MzEyYWY4MTk4ODggbGVnYWN5LXRydW5rCiszODE3MyBmMDBiYzI3M2FlNzBkMWU5ZGJhZTFjYzRkNDlkMWE0MGQzNjA2ODVmIHJlbGVhc2UyMy1tYWludAorMzgxNzQgZThiZjYyMDgzYWM0NDQ2ZjMyNmYxOTM0OWNmMWMwZmM1Y2I2NGEwMiByZWxlYXNlMjMtbWFpbnQKKzM4MTc1IDYwYTRiMDY0YTI0ODBhNzA5N2M2ZDJkMjZhYWY1NzUxNTQzNmQxNGQgcmVsZWFzZTIzLW1haW50CiszODE3NiBiYmNkODEyN2IzMjY4Mjk0NjViYjQ0YWIwZTNkYmNlOTgyMDc1MWU5IHJlbGVhc2UyMy1tYWludAorMzgxNzcgNjEyN2MwODlhMDZjOWUyMmI1ZTRjZGU3OTAxYTNjZDdhMzQwNmRkNyBsZWdhY3ktdHJ1bmsKKzM4MTc4IDc5YWRlMmRkZDMwNjg4MWQxNDRhMjUxNWQ3NWM2NDk0NjdjNTY1NGUgbGVnYWN5LXRydW5rCiszODE3OSA3MjQxN2ZhMjFjN2ZjZDc1ZTk1YjdhOWI1ZjUwNTQ2ZTM1ZTllZjA4IGxlZ2FjeS10cnVuaworMzgxODAgMzIxNjNhOGMzYjY5ZDM4NzBiNWZkZjQ0M2NmYzJiNjdjOTg0NjFmYiByZWxlYXNlMjMtbWFpbnQKKzM4MTgxIGU1OGNlMDQwNjZjZDgyMmEwY2RlYTRiMzJlZTYxNWY3NDJjN2M4MGQgcmVsZWFzZTI0LW1haW50CiszODE4MiBhNmM4MWFkMWY0NGNiNzQzMGJjZmEwNjQ5ZDkzMDJhZTg2Mjk0ZmMwIHJlbGVhc2UyMy1tYWludAorMzgxODMgYWQ4ZjllNzVmNjFkMjQyMDhmNTRlZWYzZTgyNzk4NWE0NjhjNDI3NiBsZWdhY3ktdHJ1bmsKKzM4MTg0IDJiYmM4YjRiNWI5Mzc1YzIzNGI4NWJhMzUxMGI4MGU1ZTU4YjExMGEgcmVsZWFzZTI0LW1haW50CiszODE4NSAwOTc0Mzc2MzQ5Njg5YmIyNjE2NThmMjJjYmVjNTdjZGQ2MzhhNDJhIHJlbGVhc2UyMy1tYWludAorMzgxODYgZjFhZTQxZThhYmYzODkxZTk2YTY3NmJlYzk1ODg4NGRjMjdiZGIyOCByZWxlYXNlMjMtbWFpbnQKKzM4MTg3IGI2NDdlZGQzYjk2YjgxZjVjNWNkNzc0YWExZmQ3YjgyNjcyYmY4YWIgcmVsZWFzZTIzLW1haW50CiszODE4OCA0MWNhN2I3NjhiNGZmNGVmZTU4NGY3ZTQ0ODc2OWI3NWExZDg5OGNiIGxlZ2FjeS10cnVuaworMzgxODkgM2E5NTBmMWFmYzU1ZmYzNzZiNzhiY2M1ZGU2ZjcxZjFlZTMxMGE0MSByZWxlYXNlMjQtbWFpbnQKKzM4MTkwIDlkZDg3YmE2MTc5NTUwMWEwNzk0Njc1NTViMzk0YzEzMjRjNjIxNGYgcmVsZWFzZTIzLW1haW50CiszODE5MSBlZTgwOGUwOGRkNmZiODk5NTVjMDU0ZGE2NjU2MTVlNmFlZmMyODQ0IGxlZ2FjeS10cnVuaworMzgxOTIgMDY2NDNmMDcxMzM1MDkzMDQ5YmZhYTI5ZWYyNDI3NDgxNGQyZmE5NiBsZWdhY3ktdHJ1bmsKKzM4MTkzIDRlNWYwNmM0Zjk1NzljYmM3YmJkNTZmNGM0MTVmYzg5MjcyYzg4YjcgbGVnYWN5LXRydW5rCiszODE5NCBmZmU3NTQyZjhmMWY3YTc4NDU0N2JjMTYzNzI0MGY2YjllZGY1ZWE2IGxlZ2FjeS10cnVuaworMzgxOTUgOWNhZjljZDU0NTNkOWU5NjI1NjFlNWQyN2JkMjU1MWEzZTFhYWQ2NSBsZWdhY3ktdHJ1bmsKKzM4MTk3IDQ0NjExZTU0OTllN2MyN2U3NmVkNjIyMThjMzQxMDY1NGNkN2JkMTggcmVsZWFzZTI0LW1haW50CiszODE5OCAzZmM4ZWNlOWQyYjgwYTQwMGFhZjA4OGIwMTMyZjJlOWJiZGEyMzZhIGxlZ2FjeS10cnVuaworMzgxOTkgYTYyYjNiNGZmNTJjYjkxODk3OTA1NDI0YWMxMGQ5N2M2YjU3YmVlMiByZWxlYXNlMjQtbWFpbnQKKzM4MjAwIGFlYzU5NjY1MDI5MjM0NDI2Y2YwMjM0ZjY4ZmI3MTA0ZmY2MDkxYjcgcmVsZWFzZTI0LW1haW50CiszODIwMSBkOTI2YjhhNWVmNmUzNGEyNDNmYzBlZjQyNTZiYTQwYzNlYzcwZDYwIHJlbGVhc2UyNC1tYWludAorMzgyMDIgODRmNDNkM2ExNTM1NGEyNDQ4NTRjYzRmYmRiYTlkNWUzMDVjYzE5YSBsZWdhY3ktdHJ1bmsKKzM4MjAzIGU2YmYyZTcyOTQxZWUwZWVmMzUxYjA3NTBmMWRhY2NjM2I4OTRlYjkgcmVsZWFzZTI0LW1haW50CiszODIwNCBlMTVjYjYyYjNmZmJkZTBiMjdhMGQxMjRmMzlhM2ZmMTc0ZjM4ODdlIGxlZ2FjeS10cnVuaworMzgyMDUgYmEyNGEwMzI0YTAzM2FlY2QzN2Q2MDY3NzVlZWI2MjZkYmExZDkxMiBsZWdhY3ktdHJ1bmsKKzM4MjA2IGRmOTVhNDE1MTVjNDE0NGNhYWM1YWM5ODAyOTUxMGEwODU1N2IzZGUgcmVsZWFzZTI0LW1haW50CiszODIwNyBiZTQ5MjllNTE3OWJjMGIzMjliMTE0OWQ0MDJjZTFiYzJlMTk0OWNhIGxlZ2FjeS10cnVuaworMzgyMDggZjgwYmI4YWZmNDE5MmZjZDIyNDQzZDZjNWE0MTU4OTE0Y2Q0Yzk4MSBsZWdhY3ktdHJ1bmsKKzM4MjA5IDhmOGY1NjBjZWM5N2VjNWJiYjhkMTg0MTA5ZjI1MDVjMmM3MDFkZTUgYXN0LWJyYW5jaAorMzgyMTAgMjA4MGM4YzQ3NzI5NzdkODk4NWJmMzZiNTk2MGEwMDkxNWQ2NDU1MiBhc3QtYnJhbmNoCiszODIxMiBmNDJhN2MzMzVhNWI5YWIwMGMwMzQyMTNhZWMyMTYwODQzYTM5YTkwIGxlZ2FjeS10cnVuaworMzgyMTMgODI0M2U1MWEyMmRlZWZlNjUyNGMzYjAzZjVkOWFlOGFhNDAwYjk3NyBsZWdhY3ktdHJ1bmsKKzM4MjE0IGEwYzBjZDNlODFmZDQ3N2I4Y2Y1ZTBlMDc2YTUxNjU4MjdhNjMwNGIgbGVnYWN5LXRydW5rCiszODIxNSBiYWViMDlmNjBjODI4MjY1YWVkMGQ1YzNhODM4ZmVlMWE2ZWU5ZDE3IGxlZ2FjeS10cnVuaworMzgyMTYgM2ZlZTdjOTExNmM5MWZkOTUwYmM2ZjY2MzA1YTUwNzdmNjVlYzk3YiByZWxlYXNlMjMtbWFpbnQKKzM4MjE3IDI2Y2NjZjNlODQ4Mjk2MjZmNWIwMjFiNzVkYWVjZDM1YTk5MTU1OWQgcmVsZWFzZTI0LW1haW50CiszODIxOCBhOGVjZDRhOTY4MjU2OTUxZjk5MGM0N2NjMDRiZWM2MDBlOTEzN2I5IGxlZ2FjeS10cnVuaworMzgyMTkgNjNmMzQ0NWYyZjU5NzM1MDc3OGM4ZDc0NGQwNzdhZWYwMWI5YmJjOSByZWxlYXNlMjQtbWFpbnQKKzM4MjIwIDU2ZTBjYzQzN2I4YjUwNWYyMmE0Y2Y0NjIwOGFhYTEzOWRjMGRmZTEgcmVsZWFzZTI0LW1haW50CiszODIyMSA2ODAwNjAwMjc5ZWQ2M2UxYzVmZWFhNWRkYTZjZWNkY2NlNzVmNmE3IGxlZ2FjeS10cnVuaworMzgyMjIgZjI2M2Y5NDNlZjdiMjBhYTBmNzVlNGNhNGYxYjVjMTk2YWMwMTg1MCByZWxlYXNlMjQtbWFpbnQKKzM4MjIzIGExMjNmYjRkNDViZjRhNjdkNDUwMjUzMmU3NjRkODUxMDM5M2ZhY2UgcmVsZWFzZTIzLW1haW50CiszODIyNCBjYTdmNDMxNWIyMTI2ZjdjNjRmMjM1MzIzMTRkZmU0MmEyZTIzMjY4IHJlbGVhc2UyNC1tYWludAorMzgyMjUgZTUxYTgyMTYyODQ2NGYyNWNiYWI2N2I0YTA5NjU4YjczMDUwMTVlMCBsZWdhY3ktdHJ1bmsKKzM4MjI2IGIyZDM4NzkwMDRjZDA2ZGMzMTViNWRlZjIwN2E2NTgxNmFmYmE2NmMgcmVsZWFzZTIzLW1haW50CiszODIyNyBiN2JjYmUzOThiYWE2ODlhZGYyODQ1YjdkMjQwOGMwODAxNWQyODQwIHJlbGVhc2UyNC1tYWludAorMzgyMjggYjFhODQyMzNkODU1N2QzZTIxOWZkZDA2YTUyZTdlYzNiY2UzNTExMSBsZWdhY3ktdHJ1bmsKKzM4MjI5IGYwZGI5YjE4NmYzZGRjMGUxYzcxZGIwY2E5NzE3YmIwZGYwMmQ0NDcgYXN0LWJyYW5jaAorMzgyMzAgZDgxYjYxNzNmMDUwYmY5OGNkMjgxNjQyYTE1ZWQyNmY1Y2NmMTA0ZCBsZWdhY3ktdHJ1bmsKKzM4MjMxIDIzMzY2ODg5YzZiOTRjMmFiYjdiNWQ3OGEwNTA3ZjM0ZjllM2ZlMGIgbGVnYWN5LXRydW5rCiszODIzMiA4NjE4MTY4ZGNhMjcwNTQ1YmI1ZWFmYjAwZGFkZTNjN2UxOGQ0MTNiIGxlZ2FjeS10cnVuaworMzgyMzMgY2MyN2IyNDk3NTVkZTZlZWRhNTA1NmRhZTMwOWM1NTA3OTgyYzU0YyBsZWdhY3ktdHJ1bmsKKzM4MjM0IDM1ZjMxNzkwYzZmOTZiYWZhOTE2ODU1MDE3MDUxNmVkNjFiYjY0OWUgbGVnYWN5LXRydW5rCiszODIzNSAxOWU2MWEyYTU2MzIwYzY1MDYxZjQ0NjU4OWIxYzg3MjI5NTgxMDQ4IGxlZ2FjeS10cnVuaworMzgyMzYgYWEyNDZiOWY2MTg0ZmI5YThmZWZkZDFiOWIwMjMxOTBjYjZjMjZiMyBsZWdhY3ktdHJ1bmsKKzM4MjM3IGIyMmViZmM0ODhmMzAyNGYwZDM4MWRjYmMzNTJkYThjMzFiMjQ1NTcgbGVnYWN5LXRydW5rCiszODIzOCA1Y2Q0ZmZmYWY5MTA1YWY4MzQ2NmE4ZDkxMzI5Mzk0N2I5MjUzNjcwIGxlZ2FjeS10cnVuaworMzgyMzkgZGJiZTgzYzMyOTRhM2UzMWIwYTA5N2Q3NjdkZjFiNWM2YWRjMWM0OCBsZWdhY3ktdHJ1bmsKKzM4MjQwIGZmNzNlMTVhM2ZiOTIzYTE5OTJhNjc0NjA5YzVhODQ0MGE0ZTJmYWMgbGVnYWN5LXRydW5rCiszODI0MSBjZTIzMjA3MmVhZTY0OTNiZDE3NGZjNDU2YWNkMjQwNDA3NzY1NDdkIGxlZ2FjeS10cnVuaworMzgyNDIgOGE4ZDg0NDc2N2I2NjYyZjA1NTcyMmFlOTk5M2VkYjE2NGVkMmYzYSBsZWdhY3ktdHJ1bmsKKzM4MjQzIGNkYWExNjg2OTYwODU1ZGRkODg3NWE2M2U1OTIyYzIwODQwZjBlZGUgbGVnYWN5LXRydW5rCiszODI0NCBiODk4ODEzNDgzNzUzNWQ5MTJlYzFhNzVhYzMzMjMwNWViNDNjNWM4IGxlZ2FjeS10cnVuaworMzgyNDUgOWUzMGQ5ZTJiNDMzNjM5MjU1NzY2YTdiNTkxYzY2NmY3ODA5OWM5OSByZWxlYXNlMjQtbWFpbnQKKzM4MjQ2IGM1OTc1NDMzYWE2ODc3ZjlkODI0YmZjYTUzN2VlZDlhMWJhMmQwYjUgbGVnYWN5LXRydW5rCiszODI0NyAyYjQ4NTk3NGI0NzE1YmM2MjZhYmU4M2EzZjM3OWVmZjJkZmY3MjJmIGxlZ2FjeS10cnVuaworMzgyNDggYTk0ZGEyYzZhNjI2ZTRkMzRkOWI2OTE1ZjhlY2FlZGY0MmJhYTZjYiByZWxlYXNlMjQtbWFpbnQKKzM4MjQ5IGEwYmM0NDE5NjYzYzMxMDVlYTE0MzhmMjFhNjUzMzE3MTc0NDc3M2UgbGVnYWN5LXRydW5rCiszODI1MCAyODdlNzFmNDRkNzk2OThkMjY1MzU5MDFkMGRkNmYwMTMwZjgxNTZiIHJlbGVhc2UyNC1tYWludAorMzgyNTEgMWFlYTgxNTUxYTIyMmY2YmZiMjI5ZmQ1ZGRmZDdiNjRjNTBlOTA0NiBhc3QtYnJhbmNoCiszODI1MiBiYTZlMTcyNzFjNjI4OTE2OTExMjE1ZGUwNzU3NjNlMWJjYzBmNzZjIGxlZ2FjeS10cnVuaworMzgyNTMgNGJkMTgwZDE3MWNjMDM0NDg1NzEwZWYzZTQ5Y2RkZDQxNTkzZTNmYiBsZWdhY3ktdHJ1bmsKKzM4MjU0IGEzMTY4MWE2Y2Y4ODcyODc4M2ZmMDA0OWI2MTk5MjAyZjNlZGViYzcgbGVnYWN5LXRydW5rCiszODI1NSAxOGNmZjNlZDc0ZDNkOTZkZjljZjA5NmFhYmE2YzlhMGUzYzdlOWYzIHJlbGVhc2UyNC1tYWludAorMzgyNTYgYTIxNjAwM2NlZjA0NDAyZDgwZTE1NWRhZjVhMzAwNzBkYjdmNGEyNiBsZWdhY3ktdHJ1bmsKKzM4MjU3IDM1MzNlM2NiN2I5N2E1N2U5MzIzOTVmZDRhNGM1NzE2MTAwMTg1ODQgbGVnYWN5LXRydW5rCiszODI1OCA5MWQ1NWEzMDM4MmNiYjA4MTQ3OWYyMzg2NDVlYmU0MDQ4Nzc4YmZhIGxlZ2FjeS10cnVuaworMzgyNTkgZjI1ZGNkN2YzZTQ4ODBjMDQ4N2IxODAwMjE1MmRkMjdmY2E1ZjhmOSByZWxlYXNlMjQtbWFpbnQKKzM4MjYwIDU5OGQxNmZhMDJjMTk5MTIxNDhjNGQzMmU3Zjk5NTcxMGRhNmE1OGEgbGVnYWN5LXRydW5rCiszODI2MSA3MzkxZTE4YjBhN2NkZGVmNjQ0NzQ5NmFiYzdlMzM1MWU1MGIwMTRjIGxlZ2FjeS10cnVuaworMzgyNjIgMjhmODQ5Mzg0NjhkZWExZTUzYzFhM2Y0MGIzM2JjODc5MjNmZjMzYyBsZWdhY3ktdHJ1bmsKKzM4MjYzIDBhMTYwOGE1ZWIwNWFlZTQ5YTQ4Mzk1NzA0M2E2MmY4YTIxNDA1MWMgbGVnYWN5LXRydW5rCiszODI2NCBlMmMxMDk3ZDdlOGZiMGJlNTE3ODMzZDM5ZWJjN2JjYWEwYjlmZGFhIGxlZ2FjeS10cnVuaworMzgyNjUgYjZlYzFiM2I5ZmNlNzljNzdkZjE3MjY3NTg1NmZlZTY2N2YwNGEyOCBsZWdhY3ktdHJ1bmsKKzM4MjY2IGI0ODBhYmFmMWY2ZjZlNmFiN2QyYTUzYTIxNzZjZmRhOTU2ZDVjODUgbGVnYWN5LXRydW5rCiszODI2NyA2YzAyYmIzZmNjYTY3OTA5ODA5ODJlMGYxZDA5ZDEzZTY1NWE5MGQ1IGxlZ2FjeS10cnVuaworMzgyNjggNzA1OWZiOGI5ZWIzOTM0ZTVlZjUxNzA2ZDdjY2FjMzVkMDA1YzM4OCBsZWdhY3ktdHJ1bmsKKzM4MjY5IGM0ZGI5OTJmODQwZjMwNGVkY2E2MGEyNzMyYzkyNDI5NGYzYTZmNGYgcmVsZWFzZTIzLW1haW50CiszODI3MCA0NWEzMjBmMzhjNDg5MDFmMzViYzRjZmUyMTM1NWZlNWU3ZGJjNDgyIGxlZ2FjeS10cnVuaworMzgyNzEgZDc5Njg2MjFkMjhkMmU3Y2QxOTVhZThjMTMyMmNlMTAzYTAzMzIyNCByZWxlYXNlMjQtbWFpbnQKKzM4MjcyIDhiYjQ2ZmRjZThmZDM4NDQxZWE3YzI0NTUyOGQ2NjJhOTU2NjM0ODkgbGVnYWN5LXRydW5rCiszODI3MyBhOTlmNWFkMjllYWM2NGEyYmYwNDdiYWJmOWRhNDVkMjg5ZmI2NDMwIHJlbGVhc2UyNC1tYWludAorMzgyNzQgOGVjYThkOTgwMjYwZGVkMjVhMmNjZTE4ODdiMWNlMzVjYmNlMThlNyBsZWdhY3ktdHJ1bmsKKzM4Mjc1IDEzYTg1ODA2YmE0OGM5NzkzMzEwYTcyODQ3ZmQzNGI4MTZjMzk0NzMgbGVnYWN5LXRydW5rCiszODI3NiBhODU5OWM3ODgyMThkODg4NTIyN2FlMzlmZjVjODljOWM5YzkzYjlkIGxlZ2FjeS10cnVuaworMzgyNzcgNDI4MmY4ODJiMjg1OTU2ZTNiZWFkN2IxMGIzYzRiZGJkNjg4NTE2YiBsZWdhY3ktdHJ1bmsKKzM4Mjc4IGI5Mzg0NWNlNDQ1NDk1ZTNiNDg1Y2I2YjM5YWVkNWYxODNiNzAxMTAgbGVnYWN5LXRydW5rCiszODI3OSBjODhhYjI5MmJmMDUyOGFhOTVhNjcxMmQwZjEyNTlhMDIxMjg1ZDQxIGxlZ2FjeS10cnVuaworMzgyODAgNzJmZDM3M2NkMGY5NWExYzJmNmVkNDVjNmExOTcwYTY5ZjIyMGZjZSBsZWdhY3ktdHJ1bmsKKzM4MjgxIDFkODY2YzAyYThjYWIyMDViYjFhNDAyYmE5NzcwYWU0NWVhNGE5NDMgbGVnYWN5LXRydW5rCiszODI4MiBhNzBkZDg3NjdiMDcxYjM0MjY2ZGRiYjA2MmU1YzYzMjJmNGY4ODhlIGxlZ2FjeS10cnVuaworMzgyODMgMDJmMzk4ZmJiMGYwNmQxN2M0NWIzYWIwNmU0MjhiYzhjMTU4ZTA3MyBsZWdhY3ktdHJ1bmsKKzM4Mjg0IGIzMmFlMGVlY2RlZTcxYWQwZmM0Yjc4NDllY2JlNzJmNDlkZmU3NDYgbGVnYWN5LXRydW5rCiszODI4NSA4ZjU3MzBhM2JjNGFiZjcyN2U5NDM3MzQ2Njk0NWQ2OTgyMDY2M2Q4IGxlZ2FjeS10cnVuaworMzgyODYgMzQ3MzkyYzhlYjhiMzZjNTNjYjVlZWEyMGIyMTEzNjZkYzMzNjMzMyBsZWdhY3ktdHJ1bmsKKzM4Mjg3IDhmYzAzMGM1YzcwYWJlMjkxOTEyNDU0NjRmYzg4ZTNhOWI5M2VlZDAgcmVsZWFzZTI0LW1haW50CiszODI4OCA1NjNjYmY0ZDZiZTQ2NTY1ZjQ1ZjA0MDViZWQ4M2UyMWQ3NWUwOTQ5IGxlZ2FjeS10cnVuaworMzgyODkgZmU3YTE1NDdmMmZhZWE0NDhmZWFiZTZlNTE2YzNiZTQ2NzNhZDExZSBsZWdhY3ktdHJ1bmsKKzM4MjkwIGZhNjVlMzQyNWE0YzVhZDZkMWEwZWQ2MDcxZDRlMWMwNTg5MDVhMjUgbGVnYWN5LXRydW5rCiszODI5MSA2NTJiODVkMzVhNzVkZGExMGUyZDMzMWE1NzZlOTNhMGY3MzcwN2VkIGxlZ2FjeS10cnVuaworMzgyOTIgMjY5YTJjMTRiYzU3MDg0ZDM2ZDgzY2JkMWNlYzk4MzJhYmZmZWQxMiBsZWdhY3ktdHJ1bmsKKzM4MjkzIDMzMTZhYTU0MGU2OGM4MDcyODQxOTFlZTk2MmZmMWI2MmQ0NDk3N2MgbGVnYWN5LXRydW5rCiszODI5NCAxMzkzNDM0M2E1M2I4MzI2MzI0MjcxNThiZTVhYzhhNDYwZGVjNWU4IGxlZ2FjeS10cnVuaworMzgyOTUgNTQ0OWI3ZjgwNmZiN2RmMmMyMmVmMzgwMWVlYzE1N2RhNDFmZTNhMSBsZWdhY3ktdHJ1bmsKKzM4Mjk2IDViZDJiM2U0ZmRjYzRmNTcxMzA5MjBjYmU1MDU1MzBjYmY2MjBlZTIgbGVnYWN5LXRydW5rCiszODI5NyA4NDM2YTI5NTU5MWI2OGNhODBhOTA0MWY2ZjY0ZDQ5ZmVhNWQ5YTZhIGxlZ2FjeS10cnVuaworMzgyOTggNGI4ZmE4YjBhZjkxNmVlNWQwNDJmMmFlMmFiN2ZiY2YzZmYwMWQ3MiBsZWdhY3ktdHJ1bmsKKzM4Mjk5IGRjMDljYzliMmVlNmM3OGQyODRkNTNlYTUzM2UwZTAxZjc5MjNhMGEgYXN0LWJyYW5jaAorMzgzMDAgNjg5YzIzMzg1ZTRmOWRkMTIzZDc5MmM3MTEzNzdiYTliNzBhZGEwOSBhc3QtYnJhbmNoCiszODMwMSA0YWYzYmZmZTU2MjAzYWVkMjJjY2UxNDU4Y2I0OGQxMjU4NzhiOThmIGxlZ2FjeS10cnVuaworMzgzMDIgNzI4ZWRlZmIxZTE3MzU2ZThmN2Q2MmJjMDdhNjViYzI2Y2RlNmI4YiBsZWdhY3ktdHJ1bmsKKzM4MzAzIGUxMzA1ODk0YmYwOTZhOGM5Yzk2ZWNhYjc5ODNlMDg0MjQzOTI1NTcgYXN0LWJyYW5jaAorMzgzMDQgNDkwMTdkOWVmNmM5ODZiNjg3MzhmNGYxZTgxYzZhYTg4YWYyMDIzZiBhc3QtYnJhbmNoCiszODMwNSA0Yjc0ZmYwNzk2NTJiZjVkYjAyOTFhOTdmN2YzMzE2MjIzOTg1ZjcwIGxlZ2FjeS10cnVuaworMzgzMDYgNjliNjhmOTFjYzc3NjY5MGNiNjMyM2I0OWU0MzAwYjgxMGNhMTQ1NiBsZWdhY3ktdHJ1bmsKKzM4MzA3IGY1NjQ2MzQ5NGJmZDk0ZWU1YTdkMDk3MDNlZDljMThlNjY5ZTUxNTMgcmVsZWFzZTI0LW1haW50CiszODMwOCAwMzk4MDdlMWU0ZDEyODJiOTcxZjkxOGZhNzExNGUyYWMxYTBiY2E1IHJlbGVhc2UyNC1tYWludAorMzgzMDkgZTFhN2ViODMyY2I1MWFiZjhiN2RmNTJiNWZmZjAyNzBmMGQ1MjIxYiByZWxlYXNlMjMtbWFpbnQKKzM4MzEwIDRhYTU1NGIwMGNiMGI1NTZkMDI4M2MxMzk4MDRiNTg3ODE4OGVjZDMgcmVsZWFzZTIzLW1haW50CiszODMxMSAyMjQ2YWI5MjJlYjQ4ZTQwMDAzN2FmMTg0N2IyOWIwM2ZkOWQyMzUxIHJlbGVhc2UyMy1tYWludAorMzgzMTIgOTU1ZGEwODBiMGNmMzY4MGNiOWQ5N2I2NzI2MTdkOTE1MjViM2VhMyByZWxlYXNlMjMtbWFpbnQKKzM4MzEzIDdkOTk5ODFiMmVjZTMyZWQ3YTg3MjBjY2M2OWQ5MGNkYTg3MWY0NzMgcmVsZWFzZTIzLW1haW50CiszODMxNCA2ZmRiYzRlODMzZTIwZmY5NDY3MjY5NmZjZjgzZjBlYTM0YmY2YTVjIHJlbGVhc2UyMy1tYWludAorMzgzMTUgNzc1YTcyYjlkNTJjZGM3NjhhMjllODUxMWFmZTliYjk5YTJmNmM3MCBsZWdhY3ktdHJ1bmsKKzM4MzE2IGVkNGRjMDVlYTRiOGMxMjZhYTcwN2FiMGUzNjkxOTg4OGI3Y2I2NTkgbGVnYWN5LXRydW5rCiszODMxNyAxOGY2Y2ViZTQ3YWFhZTczNTk5ZDJlM2VjYTljNDYxZWIzYWFiMDFhIGxlZ2FjeS10cnVuaworMzgzMTggNjgzNzE5ZTA0MjE4MTgyYjAyZWQ2YTNjZDg0MGE3N2M3MGI1YzUzZiBsZWdhY3ktdHJ1bmsKKzM4MzE5IGNkNmI1NGJhMjcyZmI0Nzc0YmY3ZDlkYzRiOTRmNzBmYmIxOTM3ZDYgbGVnYWN5LXRydW5rCiszODMyMCBkOTNiNjhhOTlmOTZlMzgxNTY0MmZlMzY0MTNiZWZlZTQyZDhmOTY3IHJlbGVhc2UyMy1tYWludAorMzgzMjEgNmNmMzk5YWFmYzY2OGU0NDI2M2MwYzExYzI3Yjg0MTZmMzk4N2RiMSBsZWdhY3ktdHJ1bmsKKzM4MzIyIDIxZGQ3MzNlYjExOGMzYmFmZTc5Zjg3OGNmNjBjYzdjNzdkZjRjMzEgcmVsZWFzZTI0LW1haW50CiszODMyMyA4YzBlM2MwYTIzM2NhYzNhYzQ3ZjBhNTczYWI0ZjFjZThkMTY4OWIwIHJlbGVhc2UyMy1tYWludAorMzgzMjQgYTA2M2YwZDZkYjI4MGU0ZTQ1ZmRiOWE0OGM2NjYzNDIxNDUyMDk5NiBsZWdhY3ktdHJ1bmsKKzM4MzI1IGFmNjMwZWIyNmQ1OWI3ZjFjZDk0OGNmYjYxZGU4MThkMmQ1YzJkMWUgcmVsZWFzZTI0LW1haW50CiszODMyNiAyOTMxZjY1MDRhZjVjM2Q2MGFlMmJlYTZiY2MwYzVjNmUyMTJkZWRiIHJlbGVhc2UyMy1tYWludAorMzgzMjcgMmVlZTkwZWYzMmFiYzcyNzVhN2Q2Njg1OGE2N2ZmMjQ3ZTJjOGM1OSByZWxlYXNlMjMtbWFpbnQKKzM4MzI4IGFkMTI2MDU0YWRlNTc1MDBjOWU0Nzk5ODNmNjZmMDFkZTAzN2QzYmUgcmVsZWFzZTI0LW1haW50CiszODMyOSA2NzBkZTMwMWI4ODdmMTAxYmFmOTQ1ZTIzODQyZDIyOWZhNjBkZDFmIGxlZ2FjeS10cnVuaworMzgzMzAgNTk1MjNlYjM1YzFkNzEyNmMwMTdmMWQyNDQ4ZmM0ZDkyM2NjY2UzNyBsZWdhY3ktdHJ1bmsKKzM4MzMxIGEwOTNhZWJmMWI0MGU3ZDExNmM3ZGYzNDg2ZWI3YzczMWUzZjZiYzQgcmVsZWFzZTI0LW1haW50CiszODMzMiA2NjA1ZTEyYmMxNmQ3MTNlMzc5MjYwMjMxMGRkOTQxNDFlMTQyOTI0IHJlbGVhc2UyMy1tYWludAorMzgzMzMgNTFhMGYwYWQ0NmFjMGQ5YzMxN2M1ZjgyOWFlYTVlZWU3ODQ3ZWRhNCBsZWdhY3ktdHJ1bmsKKzM4MzM0IDcwYTA0NDk3NTVlMjYxZGI4M2JmY2JiODk1YmQ3ZDhhZjRjNDY5YWYgcmVsZWFzZTIzLW1haW50CiszODMzNSAxZjVjMjM1MTYwNWExNTdkY2UxYzliODcyMDJiNjRmOTYyMjQyZTZkIGFzdC1icmFuY2gKKzM4MzM2IDMyOThhZTZmMzY2NTg3YzA1NzhlMzE4NTE5YzQxNGY5NTEyMTRlNzggYXN0LWJyYW5jaAorMzgzMzcgOGI2NTQ4ZjVmMjc5ZGQ5NGEwZDhlYWE2MzU1YTEyNTk0ZTk3ODZhMiByZWxlYXNlMjMtbWFpbnQKKzM4MzM4IGNjM2JkNGU0ZDlmMGE1NjMxNTNlMWI0Y2JhNDc3OWU3MDE0NTMwZTcgcmVsZWFzZTI0LW1haW50CiszODMzOSAwMTMzYjAyMjYyNmViMmNiNDVmZTY3YjZiYWVlNTdiMDIxMTJjMDljIHJlbGVhc2UyNC1tYWludAorMzgzNDAgZDVkZGQwNmQ1NWZjOWRhM2YxZjRhMDQ4N2ZjMDJmM2FkZTVmOWY0MiByZWxlYXNlMjMtbWFpbnQKKzM4MzQxIDlkNzYzOTM3YTI1YjRiNDhhZjQ4MDBjMjZjYWRiNGEyOWIwZDhhYWMgcmVsZWFzZTI0LW1haW50CiszODM0MiBmZjUzZDE0NzE3YzUyODEzNWE0NTQ0NDY3ZWQ1NDNmZGY5YTlkZjM5IHJlbGVhc2UyMy1tYWludAorMzgzNDMgN2RmMDc3ZjQ3MDU2OTBkMjVjZDdhNTdkZDE4ZjkwODY4Yzg4ZGQwNSBsZWdhY3ktdHJ1bmsKKzM4MzQ0IGQ1Y2U4OGViZGJiZDBkNzUwMTk4YzQ0N2RkMDBjYzVjYmFmZWJlZTkgcmVsZWFzZTIzLW1haW50CiszODM0NSA4M2M5NzViNGEyYzM3MjJhMDZkMmI1OTMzOTgyMmU2YzgzNTMwZTUwIHJlbGVhc2UyNC1tYWludAorMzgzNDYgYzQ0MTMzMDdhMmYzMTBiY2I3Njc1ZTI2YTU3MjE5MmIxYWIzYTFlYyBsZWdhY3ktdHJ1bmsKKzM4MzQ3IGY3MzhkNjRjODI3ZDMwODcxODA2ZmI3MDQ2MjMzNDBmYWQ5YjM2NTYgcmVsZWFzZTI0LW1haW50CiszODM0OCA2M2ZjZDY3ZTMzMjlhYjNjMTIwNmUzZDFjMDJkMzg1MmVhMjY0NTIyIHJlbGVhc2UyNC1tYWludAorMzgzNDkgMmIyNThmMGNiYzMxY2I5NWQxZjEyY2FiMDkxODc0NDFiZGU4YzRjZCBsZWdhY3ktdHJ1bmsKKzM4MzUwIDBmNDFmZTNmYWRmNDVlMWY4OWNiNGIwMmEwZDc3NjE0OGMwOGYxODkgcmVsZWFzZTI0LW1haW50CiszODM1MSBmMjQ2ZTQ0ODU2MzdhOTRlNDQxMDgwZTY1YjU5NWRkNzk3MGMyODZiIHJlbGVhc2UyMy1tYWludAorMzgzNTIgN2Y1MjQxN2U1MzBiMzRkYjI5MDY5YmMyOGEyNTRlOWNiMWQzMzIyOCBsZWdhY3ktdHJ1bmsKKzM4MzUzIDIzNjlkZmUyZGFkNDY5ZWE1YzlkMGYyODk3MjkxOWEzZGEzYzBkMzEgcmVsZWFzZTI0LW1haW50CiszODM1NCA5NzI0MTc0MjYyMjQ3YTNhYWU3MDcwZGQ1ZGQ0MTY5ZjIxYjZhY2JjIHJlbGVhc2UyMy1tYWludAorMzgzNTUgYjc0NTU5NWQ0MWQxZjE2MzQxODAwZGJkMGVjNDNmYmQ2NDQ5OGIxNSByZWxlYXNlMjQtbWFpbnQKKzM4MzU2IGUzZDc0ODMwZWQyZmE3ZDVmM2JjNjJjOTc5MDgyODEzNzhkMDI1NGEgcmVsZWFzZTIzLW1haW50CiszODM1NyBiOWJjNDliNTNmNGQ2MjVkNWM5NDNlNjZjMWY5NTcyYWRlZDM2ZDQ0IGxlZ2FjeS10cnVuaworMzgzNTggMzZhYmRkNDc4ZTA3NDFmMjQwYjQ5OWQ2NzkyMjk4YjMyYzc2OTk2NyBsZWdhY3ktdHJ1bmsKKzM4MzU5IDljNjJlN2Q2OTBhNTJhYTk4NWQwYmJiNmY3ODg3NjFkNGY5NWVhODIgbGVnYWN5LXRydW5rCiszODM2MCBlODUyY2Y2YWI1YjU1MjE3YTk4NTI5NWYwNmM4YWIzOTAzMGU2NjIyIGxlZ2FjeS10cnVuaworMzgzNjEgNGExZmVmZGZjNzkzMDQ2MzMzMWY4M2VmNzg2NTg0ZDMyZmFjMTdiOCByZWxlYXNlMjQtbWFpbnQKKzM4MzYyIDhjOWUzZWQ1OTRmZWQyYzg2NjE5YzI5YWVmNTQ5ZTBhYzM5ODE1YTcgcmVsZWFzZTIzLW1haW50CiszODM2MyBiYjA2NTRjZjVlNTIwNWUzNzM4ZGYzZGNlY2Q2NjFjOTEzYmRjZDQ3IGxlZ2FjeS10cnVuaworMzgzNjQgNGQyOWViM2EzZGRiZjJjMzNhMGUzY2M0MTY2YWQ4NzVmMmVlNmVjNiBsZWdhY3ktdHJ1bmsKKzM4MzY1IDQxZjI5ZTI2ZjY4ZjQ0ODA4ZDM3ZTYyYjJjMTU1NDNhY2JjYTQ4NGEgbGVnYWN5LXRydW5rCiszODM2NiA0MjA5ZWMxNzA2YWJhMTc1N2M0MWFmYzIzYjcxYTg2OTZjZDE2N2RiIGxlZ2FjeS10cnVuaworMzgzNjcgYTcyZWU2M2M2Yzg0OTAyMTZjOTcyY2NlYWNlYTI4OTUzNGM5OTViNSBhc3QtYnJhbmNoCiszODM2OCBmYzU4MGZmMDBmNmY1NzBjOWRjMWU3MGZiN2I3YmFjYmZiNTlmNzM5IGFzdC1icmFuY2gKKzM4MzY5IDZiMWM3YjE4ZjU5ZDg3YjU4MWNiMjM3NDdlZmNiNDVjYThjZjFkMzAgcmVsZWFzZTIzLW1haW50CiszODM3MCA2ZTcwMzNjNzRjNzBiN2MwOGU5ZGM0NmUzMWU1ZjhmZDk1YzA2NDg0IGxlZ2FjeS10cnVuaworMzgzNzEgNjgwMjBiZDFiOWUyZTJlYzkzMTRmM2I3ZDc5NTJkNzQ5ZTM4ZTRjMSByZWxlYXNlMjQtbWFpbnQKKzM4MzcyIDZiNmU2Yjk4MmFjODU3YmY3NWJhN2FjYzA0Njg0MzVjMGZlYWY5NWIgcmVsZWFzZTIzLW1haW50CiszODM3MyAwOGUzY2E4ZmIwNzFmNTlhN2MwMmM3MTBlOTdmMTk2OGVlNThlOTFlIGxlZ2FjeS10cnVuaworMzgzNzQgNGRhNDYyNThiZmY4Y2VjOTYxZjE2NmMyNjdlNjJkYjc2YzI2ZDBjNyByZWxlYXNlMjQtbWFpbnQKKzM4Mzc1IGM5MzM3YzlkMmYyYTk0NjYxZDFlMGFjMDgyZDdhN2VlMmMzYjBkNTkgcmVsZWFzZTIzLW1haW50CiszODM3NiA4ZjYwOWVhYWMzZjAwMmEzMGMwNWZkZDE0MGE0NDRlNDJkN2E5OGIxIHJlbGVhc2UyMy1tYWludAorMzgzNzcgNTE2Y2EwYjkyOTcxYjcwMzllZGI1ZjYwNDIzMzNlMmI4MDVmZGJjYiByZWxlYXNlMjMtbWFpbnQKKzM4Mzc4IGFiYjNjMWFkMDBhN2JiNTFjM2NlZjU1NTc0M2UwN2Y3ZmI4YjA2MTggcmVsZWFzZTIzLW1haW50CiszODM3OSBhZTczMjg2ODk3YTM0YTM5ZTAxYTlmMTYzMzI4ZTIyNzJmYThmOTI5IHJlbGVhc2UyMy1tYWludAorMzgzODAgYzE2NDFlZWRhN2M5Mjg1NTA3MjY5YWNiZmViMWNhNDY4ZWQ3ZjFmNyByZWxlYXNlMjMtbWFpbnQKKzM4MzgxIDQ0MGMyNWJkOTlkZjg1YzQ5NGE5NjFjZTRiYWRmMmE2MDgzZjQ2MWIgcmVsZWFzZTIzLW1haW50CiszODM4MiA4NzIyNGYyYzVlMTAwMDJkYTRkMGRiZDQzYmQ2NDkyMWZlN2NhODI4IHJlbGVhc2UyMy1tYWludAorMzgzODMgYzRmNzZlZDJlYWZhM2Y3YTViN2RmZDhiMjkyYTNiZjk3MTc4ZTk2MCByZWxlYXNlMjMtbWFpbnQKKzM4Mzg0IGU5NDlkNDYzNTcyY2U2NjExYzMxNzM0NDYzNjNlOGY2NmRjYjRlOGEgcmVsZWFzZTIzLW1haW50CiszODM4NCAyNjM5YjEwZGFhOTg1YjIwYjNjYWJlYzQ1MTY5ZDUyM2NhYzI5ZDY4IHJlbGVhc2UyMy1tYWludAorMzgzODYgYmRhOTMzODczNzU4ZTU0ZTNjZDY4OTM3NDI1MWFkM2YzMWQ4NWJhMSBsZWdhY3ktdHJ1bmsKKzM4Mzg3IDE4YmEwODVjYzhiYmJmNWZlYWQzYjhjNTZkNWE2YmExMzI4YTQxMDQgbGVnYWN5LXRydW5rCiszODM4OCAxMzE3NmVkNTJlNjVjNDg0ZGJjZjRmODFmYjhlNzg0NWYzYTMxZmZlIHJlbGVhc2UyNC1tYWludAorMzgzODkgNmYyZGQwODFmZTA1MTI2NjgyMDYxMDJiZmRiZDgyMDFiM2I0ZjIxZCByZWxlYXNlMjMtbWFpbnQKKzM4MzkwIDFjMzQ5MDYwYWMwOGYzNzBiYTZjMjE0YzIzNTA3MTk0ZWRiZjA0ZmIgbGVnYWN5LXRydW5rCiszODM5MSA5MTAzODgwMWViNDVmYzMyYmFiYzg0MzRiMGE0ZjM3NTNhN2JjYWIzIHJlbGVhc2UyNC1tYWludAorMzgzOTIgY2I3ODk2ZDc3ZGU1MjJmMjRiOTFjNzA1YmVkZmU4MjBiY2UzMGM0YSBsZWdhY3ktdHJ1bmsKKzM4MzkzIDkyNWQ1NGRmOTJiZTk1MGJkNWVkYjdlNjdiNWI1Njk0NDUxZjAyY2MgcmVsZWFzZTI0LW1haW50CiszODM5NCA1NDgxMzRiYTI3OWZlYzI5NDAzZWM3ODRmZjZhMjcyN2VlMmY5NTViIHJlbGVhc2UyMy1tYWludAorMzgzOTUgZTMwNzRlOTRmYjc1NWUwZDEwYWZmZWMzMjUyYTMzYTVmYWIzNjYwZSBsZWdhY3ktdHJ1bmsKKzM4Mzk2IDY1ODUxMjc3NDQ2ODE1MTUxMjFiYjIxZmIzYTNhYmJlNWMxMzE5ZDggbGVnYWN5LXRydW5rCiszODM5NyA5YjRlMzE4ZDZjNzI2NzRlZGJhOWUxNzZkOTU5ZjIzZjFjMWY1Y2QyIHJlbGVhc2UyNC1tYWludAorMzgzOTggNmM5MGNiNzY2ZTZiYTQwZTIzZWQyNGEzY2E5M2E5ZmJkODVjNjE5MCBsZWdhY3ktdHJ1bmsKKzM4Mzk5IDg4YzI5ZTUxYjAyOWExOGMyOTJkMjg0ODhlY2I2YmI3ZmFhNmQ2YmIgcmVsZWFzZTI0LW1haW50CiszODQwMCA1ZmQ1MDY1MTYzNjE0ZGRmYjJiMjBkNWIzNmM4MTNhYWU1ZjVhZTA2IGxlZ2FjeS10cnVuaworMzg0MDEgODA0YzU2NzM2NDNlNmVmNTAzOGVlZjJjMjk3N2Y2OGYwNTQyNGQ5ZiBsZWdhY3ktdHJ1bmsKKzM4NDAyIGE0MjI1Y2RjMjA0N2ZkMGQ2MmE3OGJjNzIyZmViZDgyYTE5ZWU0ZmMgbGVnYWN5LXRydW5rCiszODQwMyBmNDMwNzE4ZjhiNDMwZTU1NTE5NTA1MmUzNjFjZWNjZmI1NTZhMDA1IGxlZ2FjeS10cnVuaworMzg0MDQgZjAxMzQyMzJiZDg0ZGIzMzI4N2IxY2RhZGI3ZGUyYzJiZTBiNmVkNCBsZWdhY3ktdHJ1bmsKKzM4NDA1IDBiZTE3MjU5YWFjODg2YzVjNWQ0YjgzNzI4ZDNmMGUxZDE0ZDQ4MmUgcmVsZWFzZTIyLW1haW50CiszODQwNiA3Mzc2NDlhNmM5MzVjOWYwYjA4ZjU2Y2M5MWIxYjA1M2RhMjAzOTlkIHJlbGVhc2UyMy1tYWludAorMzg0MDcgYjg0NmRkMWI5NzUxMGFlOTIzYmFmZjhjMDg2NzFjNDAzYzVkNmFjYyByZWxlYXNlMjQtbWFpbnQKKzM4NDA4IDFjMDcyNjE1ZTViODZlMzZkZmM5NDRiYTc0MzEwY2MwOThlZTA4NjMgbGVnYWN5LXRydW5rCiszODQwOSBjZDc0MzIxZWNkYzQ3YTcxMzE1OGI2NWVmYmQwYzI4MGQzOWJjYjQ4IHJlbGVhc2UyMy1tYWludAorMzg0MTAgNjllZDdlOTEyYjNkMjk3MDE2MWU4NzM4NTdiMGU5YjQ1ZGU2YjRlYyByZWxlYXNlMjQtbWFpbnQKKzM4NDExIGNjZjYyNzJlZWRmNDg0YzU3NDk2OGExNjIyMDY4ZDFkYjVkZGQ5MjggbGVnYWN5LXRydW5rCiszODQxMiAxYjc4ZmMyOTZmYzg5NTg4OWE5ZGYyYjE3ZTE4ZDdmZDZmNzk5OTU1IHJlbGVhc2UyNC1tYWludAorMzg0MTMgYzY4YmU4NjU5MDc1YmJjOTliYTg4NWU3NTdmNjFmNzFlOTY3Zjc5NSBsZWdhY3ktdHJ1bmsKKzM4NDE0IDNkMDBiNjQyNTUwNTdlY2M5OTU3MDhhMDAzNDRmNzE4Y2JkMzZlZjQgbGVnYWN5LXRydW5rCiszODQxNSAzZDk5YWRlZmJmM2MwNTBkNTY1MThjYTkxNGJiZTZmNzBlMmU0N2M0IHJlbGVhc2UyNC1tYWludAorMzg0MTYgMzIwYzc2NDNmOGU5ZWY5OTM0YzQwNjhiZTNiMTNlNDVlMTg1MzFmZSByZWxlYXNlMjQtbWFpbnQKKzM4NDE3IDQxNzRmOTc4ZTU2NDczMmQ0ZWE3ZTlhNmI4MDk1MGRjOWJlYzBmNDQgbGVnYWN5LXRydW5rCiszODQxOCAzN2IyZjExYzFhMDA1ZjcxZGNlOTI1N2M3NTZlYTYzZjJmMTY2Mzg5IGxlZ2FjeS10cnVuaworMzg0MTkgODI1OWZmM2VlNDkzNjEyN2ExMDdjN2E0NTQ2MWEyMmQzNDQxMzEzZSBsZWdhY3ktdHJ1bmsKKzM4NDIwIGNhOTE3OTljZWNiYTAxMzRiYzM5ZjhkMjUzNDI4OTNhMmNiZTk1NmUgbGVnYWN5LXRydW5rCiszODQyMSA5ZWU5OWEzNTU2OGQwMWZhOGJhZjYyYTNmMGUyZDY4ZjA1MDI0NjZlIGxlZ2FjeS10cnVuaworMzg0MjIgNDY1NzI0NDI1MzcwMDllMzc4MzRmMTUxYTg0NzUzZTBlNjFlM2E4OSByZWxlYXNlMjQtbWFpbnQKKzM4NDIzIDdlNTEwM2I0YjI4OWQ3YWJhODliMmVmZTk1NTUxYmYwMjMyMzQ1YmYgbGVnYWN5LXRydW5rCiszODQyNCBmMjQxMTdhMzYyOGFhZGU2MDNiMDE4YzZiNjE1MzBlNDc2NmEwZmIyIGxlZ2FjeS10cnVuaworMzg0MjUgOWQ2NmZiYTc4NDQ0ZjFiMjE3ZjY2NDEyNWRkMTA3NDAzM2IxMTQwNyBsZWdhY3ktdHJ1bmsKKzM4NDI2IDdjOGYzMzc4ZjZmNjFhZWU5YTc0YTc0NTFlMTZhNWUzYTczNWFlMWQgcmVsZWFzZTIzLW1haW50CiszODQyNyA4MzViNjQ1YTE2OGY3NGMwMWE2NTg3ODc2MTJjYjI0MDhmNmZkMmY1IGxlZ2FjeS10cnVuaworMzg0MjggMWMyOTQzZjk1NDY4NjM5NjAzYmEwYWZmMzJjM2UyYjY3MWQ0YjM4MCByZWxlYXNlMjMtbWFpbnQKKzM4NDI5IDYzMTRlOTRkMGQzNWQ5N2JhMmRiODNhNTczMzMyYTM2Njc2YjUyZDEgcmVsZWFzZTIzLW1haW50CiszODQzMCA2ODU4YzI0ODQwMTA4MjEzMTAyYjBhZWI2MGI5MDk5OTQ4NzQzMWM0IHJlbGVhc2UyNC1tYWludAorMzg0MzEgMDI4ZjkyZTQ0YjQ4MTQ3ZmJmMzQ1NzY0OTcxNjBmYzdmY2E5ZmZjMSBsZWdhY3ktdHJ1bmsKKzM4NDMyIGEyNGU3MGY0Njg0YjFkMGJmNjliOTAxMjVlODljMjU1ZmY3YTVjMmIgbGVnYWN5LXRydW5rCiszODQzMyBjZDA0ZjJkMThhNmZjY2Y5MTgyNDBmODgwYmEzMDU4Yzg4Y2Y2OTBhIGxlZ2FjeS10cnVuaworMzg0MzQgYzg3OGJkMDFiODFhMTYzNDdmNjZhNjBjNjQ5ZDcwOWQ0M2IxNTBlZCBsZWdhY3ktdHJ1bmsKKzM4NDM1IDkzZjI2NjVlYWQ1ZTJkY2RlYzFhMDY5ZGI3YjE1ODVjZWUzZTViNmIgcmVsZWFzZTIzLW1haW50CiszODQzNiA2YTI0NDBkMDVmNTBjMzI3MmU2NzNmODIwNzY0ZjVjZDJiMWU2N2FjIHJlbGVhc2UyMy1tYWludAorMzg0MzcgM2MxNDRhM2M5MTFhN2JlMWJiNDlhMzQyOGRmYWMxZjAzYzA2NmI3MyByZWxlYXNlMjMtbWFpbnQKKzM4NDM4IGU2MWFhODYyMTViY2E3OTc4M2ZjMTIxZTk4MjExYjllY2QxMzhiNGMgcmVsZWFzZTIzLW1haW50CiszODQzOSBiYjdmMzZhYzlmM2E4Nzg4OTcxZTZlMmU2MGY4M2VkYmU5NzNiMjRhIHJlbGVhc2UyNC1tYWludAorMzg0NDAgMjllNmJkNzA4ZmU3NWQzNjQwZjJhMzY0ZTNkMTdkNDI4OTliNGJkZSBsZWdhY3ktdHJ1bmsKKzM4NDQxIDQwNDBhYTIxNmI4YWIxNmZjMDljYzQ4ZDBmNmMzM2FkYzdhN2Q3OTQgbGVnYWN5LXRydW5rCiszODQ0MiA3YTEyNzdmYWQwNGU5MjY1N2ZjOTc4Mzg0OWUyMGIzYjU2MDAwODhhIGxlZ2FjeS10cnVuaworMzg0NDMgZjc3OTY2ZGE2ZGU1ZGJjMmM4MDE3ZmM3ODdiYjg1MzYwN2U5ZjVlMyByZWxlYXNlMjMtbWFpbnQKKzM4NDQ0IDg5MWMzMWRhZGE0ZWI5MjUxMWJiZmYxZmVjNzc4MGUzZjMxZTI3YjcgcmVsZWFzZTIzLW1haW50CiszODQ0NSA3MDViN2ZiOTAwNTZjYWVmYzZiNGRlNmEwMjI2MTE4ZGJjZjMwNTlmIHJlbGVhc2UyMy1tYWludAorMzg0NDYgMzdiNmRkMzg4NTZkZGUzODg0MjE4OWVhM2M1ZjkwMmU5N2Y0NjNhNSByZWxlYXNlMjMtbWFpbnQKKzM4NDQ2IGQyMjg1MDk0MjQxNzJmOTc3ZWRhZDRmNzg2MGE5Yzc0N2NkNjU1YzggcmVsZWFzZTIzLW1haW50CiszODQ0OCBmZjNjYTY1NmMyODFkZWJmZDM2MGYzN2QwMjAyZjUzZDEzMWM0Yzg4IHJlbGVhc2UyNC1tYWludAorMzg0NDkgODliOGNjZjE0YzBjMDE1ZWU5YzY3OTczNDQ2ZDU4NjFiOWFkODBjMyBsZWdhY3ktdHJ1bmsKKzM4NDUwIDljNjZhYjU0YzFlY2ZmOWViZGVlNjAxNTczYjUzMWU3M2YzZjlmOWYgbGVnYWN5LXRydW5rCiszODQ1MSBlNjdiNTg3ZmVkNzc5YzIxMTMzOGYxODU5ZjJlMDM5ODIxZjJjOWFmIGxlZ2FjeS10cnVuaworMzg0NTIgM2MxNzJjODI2ZWVkMzY0ZDNjOWYyYzk4MjQ4N2FhNGQwYzkxNmY3ZSBsZWdhY3ktdHJ1bmsKKzM4NDUzIDE5MzI3ZGI3NWQxYzkyZTM2YzM2MWJkMTE5MmIxZWY1NDU3NTk5YWYgcmVsZWFzZTI0LW1haW50CiszODQ1NCAzNjllOGU3MWVhMzM5MTY3OGFhZGMwODRlMjY4OGExNDRmZGJjZGY2IGxlZ2FjeS10cnVuaworMzg0NTUgNDU0NWExNTRmYWMxNTgzYmU0MWJjNzk4ODgyYmMwZTJiYjYxMTJmNCBsZWdhY3ktdHJ1bmsKKzM4NDU2IDNmZGZiY2I0MDEzMGNlM2E1NDNkNWU5N2NjMDllNDYwNzAxYTQ5YTAgbGVnYWN5LXRydW5rCiszODQ1NyA3N2ZhMzBlN2YxMmIwNmQzNmM2OGUwZWMzNTA4ODU3YzY2MzM5OTdjIHJlbGVhc2UyNC1tYWludAorMzg0NTggNjA3YzQ4YjVlZmQ3MjYxNTUwYWJkMjE5ZjkxZWE5YjZiNzIwZjRmNCBsZWdhY3ktdHJ1bmsKKzM4NDU5IDVjMjYwODUwNDk2N2EyYTE3ODRjM2M2ZDE0MzNlYmNjOGRkMzU0MDMgbGVnYWN5LXRydW5rCiszODQ2MCBjYTdjMThlZjhiZGMxMDJjYjY0ODQ1MjU4YzE2MzBmMGZiZjcyNmI1IGxlZ2FjeS10cnVuaworMzg0NjEgY2I0N2Q2MjJhYTFlMmZjMTE5ZmNhZGNiNDlkYjMxOTJlYTIzYWM4ZCByZWxlYXNlMjQtbWFpbnQKKzM4NDYyIDBhNmU3NzlkMzQ3ZDZmMTc1ZTI5ZGNjYzA3Y2M2MTA3MWZkMGM5ODUgbGVnYWN5LXRydW5rCiszODQ2MyA4NmFiM2E3NWZmMDg2Yjk2ZTRkN2ZhYjFjY2EyNmM2MTUwYTRiYzc0IHJlbGVhc2UyNC1tYWludAorMzg0NjQgYjk0ZjIyNDczODhlOTJiZDBlOWExNzM3ZWUwMDBjYWZjNDdlMTMzNSBsZWdhY3ktdHJ1bmsKKzM4NDY1IDlmMTgzYTI1OGJlZDBlZTlmNjJiM2E0MDUzZjI2MDgyYjc3NDQ2ZDggbGVnYWN5LXRydW5rCiszODQ2NiA3ZTdlODZmNDUyNTVhOTU5NDgyMGZhZGU2YmY3OWRkNGZlZDRmNzk3IHJlbGVhc2UyNC1tYWludAorMzg0NjcgZTllYzJjZTM0MGZkYzQ0MjBkMzYxZjUzODJlYmJmYzE1MTA5M2JkNyBsZWdhY3ktdHJ1bmsKKzM4NDY4IDcwY2IwYzNmZTRhNzQ3NWUyZjllOTcyNGU0Y2IzNDlhZmVjZGRhMGQgbGVnYWN5LXRydW5rCiszODQ2OSBhODk5ZDY5MGYyNjQwNzRmZWI1YTBiZTNlNGVmMjBlN2QyYmRhNTAwIGxlZ2FjeS10cnVuaworMzg0NzAgZmYzZGVmNzdiMTI5NWYzMzI2OThjNmEyMzgxYTBiYjE5YWZjYzYxMSBsZWdhY3ktdHJ1bmsKKzM4NDcxIDFhZTJjM2I2NmU1N2EzNDYzN2Y5ZTQ4M2FlYjc0MTI2YjZmNzJhMDMgbGVnYWN5LXRydW5rCiszODQ3MiBmYTUyZjFmZmMxNjExNTU3NTA2OTMxMDg5NWMwZDI1ZGY5Yzg2YzZmIGxlZ2FjeS10cnVuaworMzg0NzMgMzc2YTcxZjg5NzliYTFkNTYzYzhkOWFjODU2MWJmYTAzMjE2YjdlNCBsZWdhY3ktdHJ1bmsKKzM4NDc0IDMyYjg5NjA2ZjBjZGExN2FlNjRlY2NhNjQ1ZTFlM2IxNDdmNzY0ZmUgcmVsZWFzZTI0LW1haW50CiszODQ3NSA3ZjdjM2RmYmE5ODU2MjBjNmM0OTAwMTc3ZTEyOWQ0NzJhZTM5MDA4IHJlbGVhc2UyNC1tYWludAorMzg0NzYgMWE5ODk4M2U1OTYzMGRjYzBhZWU4MDM5MGNjYzMxNjk0ZTFhYzlmMiBsZWdhY3ktdHJ1bmsKKzM4NDc3IDdmYmE1Y2NjOTYxZTE0YWQ4ZjEzYjMwZWFlNzU2OTI1MmJjZjQ2YjAgbGVnYWN5LXRydW5rCiszODQ3OCA2NzkzN2EzODUyZmU0NDgyZWQzNmM5Y2VjMDg5YzJmODczZDljZGMwIHJlbGVhc2UyNC1tYWludAorMzg0NzkgNWU3YWRlZDMyNTFlZDJiZWQ5YWY1ZGYzZWZlMzU2NDNiMzEyNjYzOSBsZWdhY3ktdHJ1bmsKKzM4NDgwIGQ4MDRhNTBhMjBhYjUyNzllNzA4ZWNjMjhmMjJlNjIwYjA4NjA5NTcgbGVnYWN5LXRydW5rCiszODQ4MSA4MDk4YzdjMjcwOTcxZTJkMmEzMjBiNWJiNjk5MGU5ZjA1ZmY5ODBjIHJlbGVhc2UyNC1tYWludAorMzg0ODIgMjRhMzMzNzQxY2VjOTlhMDljOWU4ZTY3NDU3MmM2ODBlNTFiOGM1NiByZWxlYXNlMjQtbWFpbnQKKzM4NDgzIDdkYWUxYTgxY2VkODM4MDVmMjg2OGRmYjY0N2ZmZmQxZGUzMThmMGYgbGVnYWN5LXRydW5rCiszODQ4NCA3NzcwM2VkNTQzYTEwZjJkMWFhYTJjYjg4Mzg5NWJjYjAzMWVjYWRlIGxlZ2FjeS10cnVuaworMzg0ODUgZDQzOWM3NDhiNDU0NTFjZGI0NzYyNzM4YWQ5MGFkZjc5YTI3YmQzYyByZWxlYXNlMjQtbWFpbnQKKzM4NDg2IDhiNGRkMmMxYzJhMDYzZjAzYjcwMGE3NDg4ZTRmOTdmZDA3OWZlOTAgbGVnYWN5LXRydW5rCiszODQ4NyA0YjEyMDdjYjAxZWE2NmZjYzcyNGZiNjU3Y2U2Y2Y1YjAzMzZiNmQ0IGxlZ2FjeS10cnVuaworMzg0ODggODEzMDMwZTRkN2IwYTFkYWNkZTQyMWE0NjM5ZTZiMmRkOGNkZjZiNSByZWxlYXNlMjQtbWFpbnQKKzM4NDg5IGM2MGZkZThiMDEwNmIwOTg5MmM1NDQyNGRiNmVhZmZjMzdhMWI3ZDkgbGVnYWN5LXRydW5rCiszODQ5MCA3YzU3MzI2NTJhMjNjYmQ3MWU5YmY2ZGNhOGI1Y2U1NzMwMDlkM2VhIGxlZ2FjeS10cnVuaworMzg0OTEgNjE4Y2YyNGMzMjlmOTlmZDViMDE3YmIzYjA3Y2EzMWFiYjNjOWE4NyBsZWdhY3ktdHJ1bmsKKzM4NDkyIDA3Y2YxYTE2NDBkYTQxMjM0OWRmNDcwNzdjOGIxMjUzYmMyMzEzZTkgbGVnYWN5LXRydW5rCiszODQ5MyBhNGQxMzk3NGY2ZWI3YzRkZjkwMTA0MTAyMDI1YjRlM2I0MGRiZWE3IGxlZ2FjeS10cnVuaworMzg0OTQgYWM2ZGZjNjdjNzdmZjZkMWQ4YWNhNjFjMTM5ZjZhYmM2ZjE4ZDk0MCBsZWdhY3ktdHJ1bmsKKzM4NDk1IGEzNmM1ZmQzMGUyMTI3YWUxMmRkNTM5ZjY2OTQ3ODdlOTNhMWYwZTEgcmVsZWFzZTI0LW1haW50CiszODQ5NiA5ZjAyMjc2ZDU0Y2I0ZWMzMmVjMzlhNTI4MjE0Yjk5OTVmMjM2MGM2IGxlZ2FjeS10cnVuaworMzg0OTcgMDM4NmNjMWVlOTY0ZTRkNDg3ODQyN2VlM2FhZmM3ODdjZjJlMWUwNSBhc3QtYnJhbmNoCiszODQ5OCBlMGY0ZWI2NGQwMDM5MWUzYzQ2YjVmMjg5MDU4YjI5ZmYyZmNhY2VjIGFzdC1icmFuY2gKKzM4NDk5IDI2NzZlMDVjMDFmMjFhYTg1Y2UxY2JlNWM3ZDVlYjdlZGQwODg1ZDYgcmVsZWFzZTI0LW1haW50CiszODUwMCBjOTlhZTg2MzVmM2I1NGRiODgzOTA0ZDNhYmNkNzMwZjEyOGI4YmY2IGxlZ2FjeS10cnVuaworMzg1MDEgMGRkMTQ2ZmVkOWRkYTNjZTNmYjlhY2Y5NTFlZDgzMTIxNjUxMzU5OCBsZWdhY3ktdHJ1bmsKKzM4NTAyIDU1NmY2ZjEwNTZhOGY2ZDVkMDNhMjhlYmZmNGJjMzNmOTc0NTNlN2IgbGVnYWN5LXRydW5rCiszODUwMyAxZWRlYTRjMmIwMTFiNTNhZmJiYjUzYzkzYzQwMjAyOWIzMjljYzQ3IGxlZ2FjeS10cnVuaworMzg1MDQgNTE2YmI4ZmQ3NWI0YmQ1Nzk4MWFjZjFhNzdmY2NlMzMxNzhiYjBmZCBsZWdhY3ktdHJ1bmsKKzM4NTA1IDc2YzlhYjg1ZjVhODg3NDUyNDY3ZmIyMTUzMmU0Y2QxMWZmMmZhMzMgbGVnYWN5LXRydW5rCiszODUwNiA1ZmRlMTdiMzU0NzI1NGJhYmE2NDk5OWQyMTAxOWU2NDI5OWNlNWUxIGxlZ2FjeS10cnVuaworMzg1MDcgYzVhNDk4YzEwNzIzNTk4YjliNGYxOTc0YzZhZWZjZTlhMTZlNTlkOSBsZWdhY3ktdHJ1bmsKKzM4NTA4IGZjYWNmOWQ0YjhmMGZhZWI3NTYyZjk2Y2U4NjhiMTgxNTg0ZjU3M2MgbGVnYWN5LXRydW5rCiszODUwOSBkMjU5OTg0OTYyMDY1ZmU1OGI4NzZmNDU1ODIwZWRkZDBjMDQ2MzVjIGxlZ2FjeS10cnVuaworMzg1MTAgM2U3YTIwYzI5N2E2MGU2ZTdkZGU1MDFiYWZjOWY5ZTQyZTNkYjcyYSByZWxlYXNlMjQtbWFpbnQKKzM4NTExIDA4MGQ4Y2ZlZDlkNGE3YTU0ZDVjY2JlZWM3ZTBhYzU2MDJiMmJlMWMgbGVnYWN5LXRydW5rCiszODUxMiA2NjA0MTliZGI0YWVmOWJiNWRlMjg1Yzc2NWFlNmRlZTE0MmYwYzk3IGxlZ2FjeS10cnVuaworMzg1MTMgNDE2YjUzNGU5Y2M5NjhlZmZlYmNhZjE3NTViZTllM2NmZTM4MmY1ZCBsZWdhY3ktdHJ1bmsKKzM4NTE0IDc3YjU3MDg3ZmU0NWRiMjQ3MTc4ZjBlMjM1ZTQyNmY3ZTRkMjhmOTEgbGVnYWN5LXRydW5rCiszODUxNSA0MzI5YTFhMDA0NjlkMTYzY2E1ODRiN2UwODAzMTE3YjNlMjBkZjU5IGFzdC1icmFuY2gKKzM4NTE2IDg5Y2YyNWUzNjc5YWU5OWE0OTAyYmFjMDUwMTViZWI4NjI3NzdiNzAgYXN0LWJyYW5jaAorMzg1MTcgZDFiMzVhZjI5MjYzMGI2MDk3Y2Y2YjNiYTIwMzA1ZGMxZWRkZWJjMCBsZWdhY3ktdHJ1bmsKKzM4NTE4IGEyYjdjYjczZDliMWQ3MGViYjQ4MzUzZDY0Y2NlY2M4MjM1N2Q5NTQgcmVsZWFzZTI0LW1haW50CiszODUxOSA1ZjI2Mjk4ODExYjcxNDJhNmY3MzA4Njc4ZDZkNzJiZmY4NmMxNDU1IGxlZ2FjeS10cnVuaworMzg1MjAgM2QwYmIzYjA1ZDM5ZjBiZDE0ZDlmOGM2OWUxNzc1MTg0MWQ0NzRiZiBsZWdhY3ktdHJ1bmsKKzM4NTIxIDExNzZmMWJiNGUxYWVhMmZmNTE4MjcyMGM0NmFiYmY2MGMxZjFhYzEgbGVnYWN5LXRydW5rCiszODUyMiA0YTBjMjAyZWU3ODlhMzczZjY0N2RkMDA5MzQ4NjRlZTI5NzliMjc3IGxlZ2FjeS10cnVuaworMzg1MjMgZDNjZTdhOTQ2MTZlOTE3Y2ZlZGJlMDAzNmI0ZjEwZmIxY2I4MDZmOSBsZWdhY3ktdHJ1bmsKKzM4NTI0IDYzNmQ2ZDQzM2I2MjYzN2FlZDRlZmIxOGIzMDcxYmQ0MzEyZDc2MjQgbGVnYWN5LXRydW5rCiszODUyNSBmZDZkMzU5Y2EyNjYyMjFiN2FlZjlhNjMyNjZkZjVhZWVmMjIzNzJlIGxlZ2FjeS10cnVuaworMzg1MjYgYjVhMjVjNTZhODUyM2Q3Zjk0OGFiMDY2OTNmOTZjOTEwYzg1YTE2OSByZWxlYXNlMjQtbWFpbnQKKzM4NTI3IDYwNTBhZTg0MmM4ZjFjODhiOWFhYTIzNTYyNWVjNGQ4M2Q5ZDViYzUgbGVnYWN5LXRydW5rCiszODUyOCBjNTA1Y2JiMjZjZWRjZDA1MGY0NmQwYjdlNTFiNWI0MGZiYzQ1OTUxIHJlbGVhc2UyNC1tYWludAorMzg1MjkgZmEzY2RkNGY5Y2QwMTdhN2VlZDk3ZTE1N2YyNGM4ZDdlNjc5YTk4ZSBsZWdhY3ktdHJ1bmsKKzM4NTMwIGI0MzE1ZTY3ZWRmNTEwYjkyZjZiYjIzZTk5NTRhMjM2YTRjM2M2NDggbGVnYWN5LXRydW5rCiszODUzMSBhOWYxNjFlMzZiZjkwNDFlZTBkYTg2OWUxOWY1YThlNTQ1YjFlNTQ5IGxlZ2FjeS10cnVuaworMzg1MzIgZDQ4ZmEwYWZkY2JhZmQ1MGUxNDMzOTIxYjU3ZGM4MjllYzZlZDQ0MyBsZWdhY3ktdHJ1bmsKKzM4NTMzIDEzYTk1MGEzNjI0YmNhYTJiNGQyMGIwZDRkNGQ5ZjU5NjZmMmQzZmYgbGVnYWN5LXRydW5rCiszODUzNCAxMWZjZGJiMjc5ZGU5MmFlZmFkODkzZjZkNjIxNzEyZjk4N2JiN2JjIGxlZ2FjeS10cnVuaworMzg1MzUgZDk5MjdhNjVmNWY5MmUyNzZkOTIyODZlNmM0M2Q5MzFjMTExNmRkOCByZWxlYXNlMjQtbWFpbnQKKzM4NTM2IGNhYzMxYjRiNWU3OGQ0ZDI1Nzg5ZGEzNTA1MzgxZTBkYWRmODNmNDggbGVnYWN5LXRydW5rCiszODUzNyA4NjFiZTljZDA0ZDdlY2Q0OGZjM2VjNDBjZjdlNGNlYWU4NDY1MDkwIHJlbGVhc2UyNC1tYWludAorMzg1MzggNGFhZmIxYzlhNzBkOTAwZTg3MWVlZTMxMzQwNzc1NzFiMTVjZjg3YSBsZWdhY3ktdHJ1bmsKKzM4NTM5IGU0OGI1YTYxZDgwYmQ2ZWJkNTVmYThkMWZmYmZiOTdiNjJiYzJlMWYgcmVsZWFzZTI0LW1haW50CiszODU0MCBhNmQyMzE1MTA5YTRmMmFjOWFiZjZkYjg0NTE3YmNhOTMyMjU3OTBlIGxlZ2FjeS10cnVuaworMzg1NDEgMmZkOWI4NWJhNjVmZGVmY2Q1ZjJmZjBkOGQwY2ZkNTFjZjRlYWMxOCByZWxlYXNlMjQtbWFpbnQKKzM4NTQyIGU2NDIyNTI1YzI0MDMxODk1Y2Q0OTExYTc5OTBlYTk4ZWQwYjQwYmIgbGVnYWN5LXRydW5rCiszODU0MyA3NTU2NDUzMGY1MGMxZWZiNDA1ZGZiOTI3NjY4Y2ZhZTY3OTJmZTAyIHJlbGVhc2UyNC1tYWludAorMzg1NDQgOTE4YmM2ZDU2ZDI2ZjY2MTI1ZmY1NGY2OTI0YTUxY2M3MTc5YzNmNiBsZWdhY3ktdHJ1bmsKKzM4NTQ1IDlmYTc2OGE5OGM1Y2EzNjFiODA4YzI2MmNiYTZmMGU4NzIxZmM5MTggbGVnYWN5LXRydW5rCiszODU0NiBiNDA1ODYxMjliYjA4NzJiNWUwYzA0YmMxMTc0NWUyNzkwMDZlZTY5IGxlZ2FjeS10cnVuaworMzg1NDcgOWQ2MDg0MTljZGY4ZDUzNmNlZTk0NTVkMjFhZjNhM2VlOTQ5ZTU0YSBsZWdhY3ktdHJ1bmsKKzM4NTQ4IDM3ODU2MTBmZjc2MzAxZjRkZjk5YjYxZGNlZWY4NjE2YThmMGJlZWIgbGVnYWN5LXRydW5rCiszODU0OSA0NjMwMGIxYWEyZjY4MjVmZGZjNDEyZDM3MDk4N2E2NjNlYzhhMWY4IHJlbGVhc2UyNC1tYWludAorMzg1NTAgNDgxMmY2YTdmNzM1NTY4M2IyMmI2MmFjNzNhYjBjYTVjODE3MThlYyBsZWdhY3ktdHJ1bmsKKzM4NTUxIDhjMzU2M2QwOGM2MjNkZWE4Y2JmYzc5YzI5NThhNzgyZmI5ODY3OWMgbGVnYWN5LXRydW5rCiszODU1MiA5YjNhMmM0MzAyYWFjMDZlMDllOWFlODU2ZmE0MmUzMjFmZTcxYWUwIHJlbGVhc2UyNC1tYWludAorMzg1NTMgMGQ0MTA4ZDNhM2E4Yjc3ZGZmNThlMTM1MWIwYjE2YzM0ZmQ1NzBlMCByZWxlYXNlMjQtbWFpbnQKKzM4NTU0IDRjNjZjMTdjNGIyODA5YjM0NGU1YzdmNGVkMjk0NzA0MTZkNTg0NTggbGVnYWN5LXRydW5rCiszODU1NSBkYjdhODMxMGIxOWE5NGQ2MTdhOTVhZjBmZTQ3NTE5MTQ2ZmZhZGIzIGxlZ2FjeS10cnVuaworMzg1NTYgMDg1YmMyN2Y5MmI3NTE5YWYzMzZhODNkNjM0MzMxZjY4MDg2ZmQzMyBsZWdhY3ktdHJ1bmsKKzM4NTU3IDAwZTQ3ZWIxMzZiMmMwOTUxNTFiY2IyNTc0ZDM3MTExZjMwZWZmZmUgbGVnYWN5LXRydW5rCiszODU1OCA3YTFhOGVjNmRjNTM0NGMwZDAyM2IwMzg3YTY3YTJkOWU2ZmI4ZjM0IHJlbGVhc2UyNC1tYWludAorMzg1NTkgOGYwNDU2NDI1NzE1ODE1MTAxZDkwMTQ2NTAyMDhjNmI0MjIyMTU1YSBsZWdhY3ktdHJ1bmsKKzM4NTYwIDRhYmYyMWJlMTdkMzU0MTk1YzA5YTM3MzMwOTEzZWE3YTM3MDcxZGYgcmVsZWFzZTI0LW1haW50CiszODU2MSBlOWZmYWQ2ZDg4MjI4ZWM4M2RkNzllZTRkMGQ5ZTEzOTMyMWRiMmMyIGxlZ2FjeS10cnVuaworMzg1NjIgNTFhZmI2ZTc3NDc0MDhlNmZlOTcwZTA3N2YxYWIxZWQ3N2I4YjIyMSBsZWdhY3ktdHJ1bmsKKzM4NTYzIDgxOTgyNTg0YzYxYmM1NjI0NmY1OWU2YjYyNWY3NmFhOTE1NWE4YzkgcmVsZWFzZTI0LW1haW50CiszODU2NCA0ODEzOTc2ODNlYWNlZjBlOWIzYTgxYTg1MGRmZjQ5NjMwOGYyZGRiIGxlZ2FjeS10cnVuaworMzg1NjUgZWQ2ZWMwMDBhMTM4ODk3ZTVjMTdlNjViN2M1ODU0M2NkNDc4ODVlMiByZWxlYXNlMjQtbWFpbnQKKzM4NTY2IDkwMzA0NWE3MGMzZWI2MDQ1YmQ4ZjBhZWJjYzZmYzBjNWUyODZhM2YgcmVsZWFzZTI0LW1haW50CiszODU2NyAwYzQwODAzZTVlNGQ0MDhlMmM3ZjE3MmZiYTFjNjJmY2U5ZThmYzA4IGxlZ2FjeS10cnVuaworMzg1NjggZjg3YThkMGRmMTI1MmJiOTE1NDhlMWQ0YmIxZWMwYmQ2OWJjMzY5NiByZWxlYXNlMjQtbWFpbnQKKzM4NTY5IDQ5ZDdiYjJlOTZkMmY1Y2JjY2VhMWU3NDMyNzMwZTk0M2UzMGVlN2YgbGVnYWN5LXRydW5rCiszODU3MCBhZTA2MWZjNjMxOGRjZTA3MjlmM2Q5NWY0MjczNTM3OWVjMTg0MmUxIGxlZ2FjeS10cnVuaworMzg1NzEgZWFjMDFjYmNhYWRhOWJiZDdiZmQ1NTAzYzJjMDU0MTY5ZDM0MGVhZSByZWxlYXNlMjQtbWFpbnQKKzM4NTcyIDFhYzI0ZTkxODNlNTE3N2Q2MDgyYTc2Y2U1ZjNmYTgyN2YwYjliYWEgbGVnYWN5LXRydW5rCiszODU3MyA0ZWE5ZGUwMWQzMTE1NmRhNzI3N2YyYWE3OGY2ZjkxMDkxY2M1NmUxIHJlbGVhc2UyNC1tYWludAorMzg1NzQgYzJiNTkxZDdmMjllZmRmOWYzYmNlNTYwZjFjZjE0ZTZmOGI0MmQyZiByZWxlYXNlMjQtbWFpbnQKKzM4NTc1IDA3MjVmMGQ1YTVjNzU4OGFmMDk1NTBkNGQ3MDVlMzQ4ODI5ODgxNmQgbGVnYWN5LXRydW5rCiszODU3NiA4MTdlMjI1MDZmYThmOWM5NmNlNWNlOWI4YzkzZWU1MDNiZWQwN2VlIGxlZ2FjeS10cnVuaworMzg1NzcgNjA0ZmY5ODkxNWVjODE4NTQ2YjJkYWNlYmYwMWYyNjMwNmQyMzQyMSBsZWdhY3ktdHJ1bmsKKzM4NTc4IDlmMDc4ZDc2NjgwNDQ0Nzc0MjQ3MjU2NDRhOWMxY2NhYmYyZmMyYTUgbGVnYWN5LXRydW5rCiszODU3OSBjMDUxNzhmNDFkYjM5MDc4NWIzMjcxM2Q5MzY2NmFjNzVjMGI5NDc5IGxlZ2FjeS10cnVuaworMzg1ODAgYTBkM2Y3NzM1NDNkYjI4MWE3NjQ2NDg3ZTkxY2QzMjdmODVlNDcxOSBsZWdhY3ktdHJ1bmsKKzM4NTgxIDc5MzAyZTUwOTEwZWVjZTIwZjIxNDA2NTBiNDIyZjNlNjljOGFhMGIgbGVnYWN5LXRydW5rCiszODU4MiBhOTFhNDhjOWRlMDBjOWFiYTlmMmE2NmFlYmJkODMyNTg2MGMyYTExIHJlbGVhc2UyNC1tYWludAorMzg1ODMgNDFhOWNhODY2MDM4MjAzNjQ0YmFmYWE2NDIwOGExMTkxNTE2MzZmOSByZWxlYXNlMjQtbWFpbnQKKzM4NTg0IDg0ODU5YjRhNjJjNmVjZGU1NjY1MTgwMWNmNTQyNjU5ODlkZDM2MTQgbGVnYWN5LXRydW5rCiszODU4NSA1ZDBkNzZkN2IzMWZkODgyZTFiMWUyN2UwMmJkYTg0ZGFhMGU4MDYwIHJlbGVhc2UyNC1tYWludAorMzg1ODYgMTMwOWY2OWI0ZGJiZGU4YjdjNTcwNjUxMzE5ZDQ3YTU0Njg5ZWI5ZSBsZWdhY3ktdHJ1bmsKKzM4NTg3IDdkZTc2ZjM0YjNkYTJmMDk2ODVhMWY0ZjkxZGQ4ZTU3ZTJiNzNhYjUgbGVnYWN5LXRydW5rCiszODU4OCBmNGRhNDZiOTQ1NzA4OTIyMzViMTA2M2VmODllM2I4NGM5MjEzMmY0IGFzdC1icmFuY2gKKzM4NTg5IDk1YjY2ZDlkYjJlZTY1OWEwYzJhMjk5ZDNjNDE0YTU2MmU5NjAwY2EgYXN0LWJyYW5jaAorMzg1OTAgMzA5OGVmZTQyYTBmMjA4NmM0NDA1ODQ3OTQzOWU1NDA2ODZiNWYwOCBsZWdhY3ktdHJ1bmsKKzM4NTkxIDdkMmM4ZGFhNDAzYjYxOWNmZjcwYzhmNTcwYzY4YzM5MDUwMWUwZjUgbGVnYWN5LXRydW5rCiszODU5MiBkNjg3YThhMDlhNzJkNzRkNjQ4ZDRiODkwY2U2N2JhYTdhMTYxNTg3IGxlZ2FjeS10cnVuaworMzg1OTMgMGQ0NGQ5MDcxZTk3ZmJjMTA2MzljYTY0NWY0ZjMzN2IxZTFlY2E5OSByZWxlYXNlMjQtbWFpbnQKKzM4NTk0IGYxZmE3YmIyYmY5OTkwZjQwY2EwOWJhYmRlNzM0OGEzYjA5NDE2ODEgcmVsZWFzZTI0LW1haW50CiszODU5NSA2OTdiOWVlYzU1ZGE4MmM0ZDdhMGIzZDZkOTY1NTY2YWJlMmQ5YTQzIGxlZ2FjeS10cnVuaworMzg1OTYgZDU0NDlmMWY4NDBlY2Q0ZTI2NTJkZDI2MjRlODliMzRmOGQ1MGJlMSByZWxlYXNlMjQtbWFpbnQKKzM4NTk3IGYyOTAxMjE4MWNmMDE3YjhmYmE1ZmI4ZTc5YWEyYTI1ZjI0NzMwMmYgbGVnYWN5LXRydW5rCiszODU5OCBlNWQxOTAzMWEyOTVkNzdiZDg2MDBhNDUyOWVmYTg1NmM0M2Y5NTM2IHJlbGVhc2UyNC1tYWludAorMzg1OTkgNmI2ODc1ZWRmNjA3ZTMyYjU4OGNmZWRlZGUwODFjZmJlMmNlMDQ4OCByZWxlYXNlMjQtbWFpbnQKKzM4NjAwIDg0NzEzZDRiMTlhZjEzNmU0YTRhM2Y1NmMwNWY4MDc1MmU2OGI1ZTAgbGVnYWN5LXRydW5rCiszODYwMSA0NGYxNDhiZmM2Yjg4MTc1YWI2NzA0M2U2NmVmY2U5ZmNmNWYyYjkwIHJlbGVhc2UyNC1tYWludAorMzg2MDIgZGRjMjI3NmMyNDdlNjg2ZjhmMWEwODQ4MWJlY2ZhNmZhYmYzY2MwYSBsZWdhY3ktdHJ1bmsKKzM4NjAzIDUxNmYxNTUyMTU5ODRkYjNiNmE0OTRjNDg3ZWMxM2I1MWQxNWQ2MjUgbGVnYWN5LXRydW5rCiszODYwNCBiNTQzM2QzYzZkYzg4NDc2ZjIyODA5ZmJhYzQ4ZDQzMTU1YzkzNWUxIHJlbGVhc2UyNC1tYWludAorMzg2MDUgMjFlNjU3N2ZmMDc0ZTExNmRmNmE3MzIzMmU4ZGE5YjYzYmRlNjE4MSBsZWdhY3ktdHJ1bmsKKzM4NjA2IGIxMjJmZDkzYTViNTE2ZTAxOTBkZmIzNjJlN2QwMDU5MzMwZDBlOTcgcmVsZWFzZTI0LW1haW50CiszODYwNyAxNmNlZjA5YTgzNDJkYWNjYWZjYjg1ODE5YTJkYmZlMTcxNDE0OTNiIHJlbGVhc2UyNC1tYWludAorMzg2MDggOTkwNmU0ZGEwODZmZGNjZjQ0YzdlZmU1Mzk1NjQ1M2EzZDJjM2M2NyBsZWdhY3ktdHJ1bmsKKzM4NjA5IDUyYjY1MWE5NzUwZDVkYjM0Y2EwMjFlYTRjM2FlN2M2NDYxNTY5MDkgcmVsZWFzZTI0LW1haW50CiszODYxMCA0MzAzNTY4MzlkMjg1OTFlNjIyZmE4MjZmZTM2ZDg2MGFiODM3OGVjIGxlZ2FjeS10cnVuaworMzg2MTEgMmM3MzM2N2Y1NGVlZWM4OTYyNjM1YTBkMTY2NDAwNGYzMTgwMWJlMSBsZWdhY3ktdHJ1bmsKKzM4NjEyIDAzNDkyNTdlMWVkNTJlMWY3OTJmODYwNTcyYTkxOGJmNzYzNjg3MDUgcmVsZWFzZTI0LW1haW50CiszODYxMyBiMTQyN2NmZjJmODMyMTFiNzBhY2EzMmMxNDk4YTUzYzg5NDVmM2M4IHJlbGVhc2UyNC1tYWludAorMzg2MTQgY2ZhZTRiMTIwNmY4YWM5ZDUwYjBiNGY3NjJlNjc1NDEyMzBkYTU0MyByZWxlYXNlMjQtbWFpbnQKKzM4NjE0IDExOTVmOWJhMzQzOTA5N2NjNWI1YTM2N2UzYWUxYjQzZjE1N2IyNjQgcmVsZWFzZTI0LW1haW50CiszODYxNiAwYmUwNWViYTExNmQ4MTg0ZDg2ZWExYzMyOTg4MzMxZTY0YmViYTI0IGxlZ2FjeS10cnVuaworMzg2MTcgZWEwMjRhNGIyOWI2ZDExMTJmNmI5MTdmZGZkZjI1ZGZjNTgwMzY5ZCByZWxlYXNlMjQtbWFpbnQKKzM4NjE4IDFhZmVmY2YxNGYwNjM4YzNhNTU5MzY5MTNkZDFlNjk2ZGY0NjRkYjUgbGVnYWN5LXRydW5rCiszODYxOSBlODMzMDlkNDNhODJlOTlhNzUwMWI0OTg3YjI2MDMyMDdjNDkwMzMxIGxlZ2FjeS10cnVuaworMzg2MjAgZDM1NWRhMWQ3YzhmZDE5YmIyMDdkYjJjYWEzYzc4MDYyZjc0ODI5MCBsZWdhY3ktdHJ1bmsKKzM4NjIxIDY1ZThhYWNiMGU5NGIxNjIzOWNlZDgyYjQyMTEzMDM2YzM5OGJmZWYgbGVnYWN5LXRydW5rCiszODYyMiA4MWI1YTEzZmEzOGEyNDkwMjczZGE2NjExYzBjMGRlZGJlZThiNWIxIGxlZ2FjeS10cnVuaworMzg2MjMgOGQ4YmE2Njc4MGVkNzc4NTAyY2UzOGI2Njc0YWVlM2ZiMTA0N2FhMSByZWxlYXNlMjQtbWFpbnQKKzM4NjI0IDQ1M2Q4OWVhYjczOTM2ZmI5MTVmOTg5NTc5YzRhYjJiMmMzZjJhZjcgbGVnYWN5LXRydW5rCiszODYyNSAwYzgyYTdlZjk1NTRkYWQ5ZmFjODc5Mjg4ZTBhNzdlNzI1OWU2M2YyIHJlbGVhc2UyNC1tYWludAorMzg2MjYgM2JiNzU5NDk4NzY3ZDY5MGZlNmYyYzI5Y2JiZGNjMjM4MjVlMTUzOCBsZWdhY3ktdHJ1bmsKKzM4NjI3IGZkZjJmOGZhZDhkNDU3MzYzODZjYTM4NTY5YzAwN2M4MmJhOTYzMDYgcmVsZWFzZTI0LW1haW50CiszODYyOCA2ZjliMzZmYzExMWM5YWZkYWQ0MmY5ODVjMzEzOGZjMmY4MmZhOTgyIHJlbGVhc2UyNC1tYWludAorMzg2MjkgYjhkOTA1Y2E5ZTk5OTk2NmQ2NzdhZTY0NTQ3NjRhZmJhM2E2MDYyNSBsZWdhY3ktdHJ1bmsKKzM4NjMwIDNkOTdlYjNiN2NlY2FmZjQ2ZmRlZTI2OTAwNWY2N2VkYTQ4YzhlNjMgbGVnYWN5LXRydW5rCiszODYzMSA3MmI5ZWI3NDIyNjMwN2JmMmFiYjZjMDM5ZDJiNjlhMmRhNmQwMDI0IGxlZ2FjeS10cnVuaworMzg2MzIgM2ZhMzQ3NTk1NDg3MjBiNmY5NjI2ZmMzYTk3OWUwYTU0Nzk3ZWExYiBsZWdhY3ktdHJ1bmsKKzM4NjMzIDUxODBjZmNjODdiZmU3MjY0MGU1Mjg2ZDAzYjEzZGNkNjcwMTIzMDEgcmVsZWFzZTI0LW1haW50CiszODYzNCBkZmEwOTdjY2JjNDlkYTQ1MzcwNjExNWViN2E5M2Q0MzI2MjJkYjgxIHJlbGVhc2UyNC1tYWludAorMzg2MzUgMjE4YTc2Mjc1OTMyZWQ2OGQyYTY3OTc4ZjI4ODQyZjliZjk2NzYxNCBsZWdhY3ktdHJ1bmsKKzM4NjM2IDY3OWMxNjExNTYxMzFjOWQ0NTcyYTA3NjcxMDE4NGQ3NDU3NGU4MmQgbGVnYWN5LXRydW5rCiszODYzNyA5NjI4MDBlZTMwZWY1ZjQyYTMyNWVhNjJiZTYwM2NjNGY1MGQ1MzFmIHJlbGVhc2UyNC1tYWludAorMzg2MzggMDRiYWE2NDRmZjAwMzM5MWRlYmZkYzJhNjdhMDI3ZGJhNDI5NWFlMSBsZWdhY3ktdHJ1bmsKKzM4NjM5IDExYjQzNTBiNTg3OTJkYTlmNzgxNzY1NjBjNTNjMzZjOTAwNjk2YjAgcmVsZWFzZTI0LW1haW50CiszODY0MCBlNTI3ODMzMWQ5YTkwNThmYWRhN2E0YjRhMTA2YzJjM2VjYzVkODcyIGxlZ2FjeS10cnVuaworMzg2NDEgNmYzN2QxMTYwMjYxMDk5MjgzNDdhNzBiNmRmNzkyMDA3MTUzMGJjOCByZWxlYXNlMjQtbWFpbnQKKzM4NjQyIDdmN2NiZGIyYzYxMTM3ZGFjYzRiYjZlZmY2YzQ4MTgxMWU0MjljNzkgcmVsZWFzZTI0LW1haW50CiszODY0MyA1Zjg5M2E0Y2RlNmZkOGQ2ZGRlOGIzMzgyODc3MTM3NzMyYWIxMzU3IGxlZ2FjeS10cnVuaworMzg2NDQgNTA1MDllZTk2MzY0YzdlODYyYjZjMDM3ZWJmZTQyOGUyMzVlYWNmOCBsZWdhY3ktdHJ1bmsKKzM4NjQ1IDMxM2VkMjgxN2Q2ODA5ZTMzZDQ0N2I5YzA4ODdhMTU4ZTczZjZmMmMgbGVnYWN5LXRydW5rCiszODY0NiA0ZGI1ZWE5NTc3YmFiZGM3Y2I4NGJkOTRjYzg3NWY1ZTA4ZDlmNTZmIHJlbGVhc2UyNC1tYWludAorMzg2NDcgMDc3NDUxNjZmNTcxM2JhNTZjMWI4YWU4MTJiOWFmNGZiYzYzODg4ZSBsZWdhY3ktdHJ1bmsKKzM4NjQ4IGZjYjUwNzQxNGM0MTQ4ZjQxYmVhMWU5YmQ5MDY4YTZlMDJkNzdmMDMgcmVsZWFzZTI0LW1haW50CiszODY0OSAyM2NhMjYzMDY1N2M0ODUwOWMzNWI2YjM4NDVhNmIwNGI0MGI2NzI3IGxlZ2FjeS10cnVuaworMzg2NTAgNmE2NDk4MTYxMjRhN2NlNDVhNWExM2M2OTg5N2FjNDE5NWMxNGE3NSByZWxlYXNlMjQtbWFpbnQKKzM4NjUxIGJjMTU5Mjk2ZDI1MzU2OTZkMDQwODUxYWQzOGI4ZTRjMDI5ZjZlZGYgYXN0LWJyYW5jaAorMzg2NTIgNTExZTdhOTNhMWU5ZjEwNWU2NDIyY2FhOTM1NTI4NWI2ODVmM2E4OSByZWxlYXNlMjQtbWFpbnQKKzM4NjUzIDg0ZWI1ZTE4NTU0NzYxNjZiZjI5ZWM3ZDBmYjlmYzk4MDFmYWY3YjAgcmVsZWFzZTI0LW1haW50CiszODY1MyAzMzNjZjMwMzU0M2I2ODBlYzVlM2ZkZjdlOGM5NjYxZjk0ODhhNTBlIHJlbGVhc2UyNC1tYWludAorMzg2NTUgYmViMWNiNzg1ZTFkNTQwNmNiMDM1ZjUyZDUyYjRhMzRlY2M2N2Q4MSBsZWdhY3ktdHJ1bmsKKzM4NjU2IDdkNzQwNGE2YTVlYTNkMjQzNzcxNmNlZjE5Y2I5YTE2YmM2MjQzZjIgcmVsZWFzZTI0LW1haW50CiszODY1NyA3MTllYjEwMmVhNDQ4ODRmZmI5OTYyY2VlNDVhMGI1YjUwMTk5N2YxIGxlZ2FjeS10cnVuaworMzg2NTggZmIzOWY0ZWVhZWE0NzYyNzVjMDE4NGE3MDcwNWQ4YzBhZGMzZDc3OCBsZWdhY3ktdHJ1bmsKKzM4NjU5IDJlZTU3NWI5YjYwZTVkMmE5NTBhYWQzZDQ0Yjc4YWI2ZmQ1Yjk5MTIgbGVnYWN5LXRydW5rCiszODY2MCBmZGU1YTFjNmE0OTdlNTQ1NmQ2Y2Y3NTVmMTM5MzRhODAxYzlhYjYzIGxlZ2FjeS10cnVuaworMzg2NjEgOWQ4MGU2MzAwNGNkYzZjNTE5NzhiMjJhYmNmMDI5ZWMzNWQ5MTZiMiByZWxlYXNlMjQtbWFpbnQKKzM4NjYyIGEzMDVmZWRjYTFiZmZmNTM0YjZiNjc2NThkZDgyMjQ3MjkyNmNlMTEgcmVsZWFzZTI0LW1haW50CiszODY2MyAwNGZhMTMyYzkwMjNkZWMwNGFlODFjYzM2OTA2MDdkNjRkY2VkYTUxIHJlbGVhc2UyNC1tYWludAorMzg2NjQgMzM2ZmVhNDA2ZmNmMDZiODhmM2ZmZWFiNzE1M2ZjNzUxYzJlMTRiZCByZWxlYXNlMjQtbWFpbnQKKzM4NjY1IDRiY2UyZTUwOTYxZTFjYjgwZGRmYjkyZjhhNzJkMWJlNDE0ZWY2MmIgbGVnYWN5LXRydW5rCiszODY2NiA5OTdiMjU1ZTFjY2M4OGJlZjkxODBjYWI5MDQ4NzMyNzc2OTcxNTQ3IHJlbGVhc2UyNC1tYWludAorMzg2NjcgNzYzMDBjNWZiY2VjOGY1ODc4ZjVmMmIzYjcxMjZlYmJhZmNhMzYwOSBsZWdhY3ktdHJ1bmsKKzM4NjY4IGZkZWU4N2I3MDM3YTNiNjAwM2VjODJlMjBkMGJiYTJlMWNlZThlZGUgbGVnYWN5LXRydW5rCiszODY2OSAwYTZhNGNjZjVjY2Y5ZmRkMGE5YjYzN2U5ODk0ZDQzZjAzYWVkNmI2IGxlZ2FjeS10cnVuaworMzg2NzAgMjNlM2RmYzBjNjQ3YThmNTBlYjZhYzE5NDVlMmU1NWU5MmY3YzMwZCBsZWdhY3ktdHJ1bmsKKzM4NjcxIDJiMzhlZDY2YzY3ZmY3NjllMGY0NGQ2ZDJkOTQ0YjNkZTk2NWY1NGIgbGVnYWN5LXRydW5rCiszODY3MiBkYzZmMzE1ZjFmN2YxNWY5NmI5NWQzNGU5OTlmNTBhYzNhYjU1MDA1IGxlZ2FjeS10cnVuaworMzg2NzMgMTNjMWMzMzE2YzZmZGVlNDJhNGRlYWRlNmU0NGQ5MTU1NTk3YmEzNiBhc3QtYnJhbmNoCiszODY3NCBjZjQzMDJjMjFlMDAzZGI4YTczY2Y3MWUzMjI2ZTNlZjdjMjM2M2U3IGFzdC1icmFuY2gKKzM4Njc1IDZkMWVlOWRiMTU0M2VmMjQwMDZjN2QyZjcyZGM2ZDQ4NWU0YjA3ZTggYXN0LWJyYW5jaAorMzg2NzYgOWY0NTRhZjE3ZjdhMzhmYjcyNjUwMDY5MTMwZDlkMTM0YTliOTAzOCBsZWdhY3ktdHJ1bmsKKzM4Njc3IDNlMmVlMjE5NzI3ZDEwMGQ2MmNmYjEzNzQxMGI1MDQ3ZjlhZjFkNzEgbGVnYWN5LXRydW5rCiszODY3OCBiMTRjOGU2MzEwZTcxMmU3NTZkYzIzNjQ5NzUyYTI1MmZjN2M0YmUwIGxlZ2FjeS10cnVuaworMzg2NzkgOWFlYTlmOGJkYjJjNDc4MWQ5YjQ1ZDU2YzY0NDdmYzJmNzMzYjQ5MiBhc3QtYnJhbmNoCiszODY4MCAxMDdlMWU4YzhmYzdlNWEwZDE0M2JiNDIzNGZmMzE1ZmUwYmI4N2Y3IGxlZ2FjeS10cnVuaworMzg2ODEgMjNiM2U3OTA2ZTBmNjM4ZmE4ZjkyY2JjMjQxMmM1NjZkZTFkYTI4ZiByZWxlYXNlMjQtbWFpbnQKKzM4NjgyIGMwNmM5MGJlYTdkYjA3MDM5ZmUyZDZjOWNhYjJlNDAxOTA5YmRkZjUgcmVsZWFzZTIzLW1haW50CiszODY4MyBiYmI2MGUyNjljZThkYzUwODdjYmI4ZTQzZGZjZTY3MTBjNDc5MGU5IGxlZ2FjeS10cnVuaworMzg2ODQgM2RhMjFmZGMyZWU3MjIzNTVmMDYyN2RmZWU4YWUyMGVmZGIyMzA4NyBsZWdhY3ktdHJ1bmsKKzM4Njg1IGYzZjk5YWNhZTU5ZmY4NzBmYTFkMDQzYTRjYzJiMDM3MTNkYjRmMTYgbGVnYWN5LXRydW5rCiszODY4NiA0YzEzYjAxNDZiM2Y2YmI0MjQ2OTM1YTc1M2I2Mjg1MDkzODM1NzI3IGxlZ2FjeS10cnVuaworMzg2ODcgNmQyMDAwYmFmM2RlOWFhZWI0NjhkMWFmZTFiNjc0ZTA5MGM5YWZkNiBsZWdhY3ktdHJ1bmsKKzM4Njg4IGYxM2YyY2JkZjRkZTI5YTVhNjk5OWNhMDBiMzdjNmM2ZjJiY2U0ZDAgbGVnYWN5LXRydW5rCiszODY4OSAwODUyZDE5NmI1OTA0M2VmZDkxYTNjNGU0MjhmMjE0MTRhYmJiMzQ5IGxlZ2FjeS10cnVuaworMzg2OTAgNzkzMzUzMWQwMmI0NjIxNDIzMjBiNTNhZGRlYjMyOTJhYWFlZWQ3NCBsZWdhY3ktdHJ1bmsKKzM4NjkxIDY5ZTEwZTYzNTdiZDc2ZjZjZjU5YWE2ZTc1MjhkOTNkMTVlMjZlMGQgbGVnYWN5LXRydW5rCiszODY5MiBjZWJmYmFiMDE3YTZlNjMzNTAyOTM2M2RlZTRjMjQ1MWI5MmFlNjY5IGxlZ2FjeS10cnVuaworMzg2OTMgNzE4YjBiNWE2NDE5ZjhlNWE4MDFkMzliNjVhYjFjZTQyMDMxNWNkNSBsZWdhY3ktdHJ1bmsKKzM4Njk0IDk5YzE2ZTQ0ZTVkNDZmNzQ2YzU4NjY3OGRkMDU4OGQwNzY0YzFjYTUgbGVnYWN5LXRydW5rCiszODY5NSBkNTVkZWFlNDMxMGRjMjNkMWE3OTgxMmZkMDVjMjJiMDFhMmRiNmFiIGxlZ2FjeS10cnVuaworMzg2OTYgOGYyMWVjMzI3NGYxYzQ2OWJiMTZmODNlMDFiNmY5NWUxNzdiMzQ4NyBhc3QtYnJhbmNoCiszODY5NyBiOGZmOWJjMDIzZTY3NTljN2ZhZjc0ZGQ1YmU1M2FkMTI0MTQ5NmYyIGxlZ2FjeS10cnVuaworMzg2OTggNGI5ZGY0ODU2ZjM3YTYzMDY1NzdiZTU2NjBlOTA0NTY0NTAzNDViOSBsZWdhY3ktdHJ1bmsKKzM4Njk5IDIzODBmOWQxZWJhYjk1ZWQ0YjBhNDljZTgyOWRhZmIwODY5ZDRlZjQgbGVnYWN5LXRydW5rCiszODcwMCA1NTQ3ZjkwMzAxMDk4MzQ1ZDJmOTk1NWUxYmFkMTI3MTEyOWZmYzhjIGFzdC1icmFuY2gKKzM4NzAxIDkxNTIzY2FlZTE4MzkwNWU2NDZkMDZmOWZiNDlkMGQ0MWUyZjgzYTEgYXN0LWJyYW5jaAorMzg3MDIgZTBmNTE5ODUzYTlmMjgwODYxMGY5M2MwZTA4YWE3NjdkYmRlMmY0NiBhc3QtYnJhbmNoCiszODcwMyA1N2M2YTZhODAyYTA4MzE2N2NlYmIyMWQyZjYyZWU1YmM5ZTkyYmJjIGxlZ2FjeS10cnVuaworMzg3MDQgM2M3YjE5Njg5NDc5ZDhhYzVkNDIxYWZmMjExODFmOTRkYTFmZjIwNiBsZWdhY3ktdHJ1bmsKKzM4NzA1IDhmYzhlN2E2MDcxYzUwNDE2OTAzYzg1MjYzYTU1YWFmZWExMzA3MTcgbGVnYWN5LXRydW5rCiszODcwNiA0OWUzMGM2YzkxYzhjZTVhZmJmYWViMmZjNDM3YTM0ZWJiNzAwMzYzIGxlZ2FjeS10cnVuaworMzg3MDcgYjAxNjIzNmRmYmQ5ZGQwMmNiZTRjYzNlNDU0NDU0MTI4NDZmMThjMCBsZWdhY3ktdHJ1bmsKKzM4NzA4IDI2ZjMyNzJkOWUxMTJlYTFlYWFjMzBkNjNiNDI4Yzc2NDUwNDhjMTQgcmVsZWFzZTI0LW1haW50CiszODcwOSBhNDEyNjM4OTUwYTEzYWQzNDBkYTk3YTY0YmJhNzAxMDM5OTk4NmI3IGxlZ2FjeS10cnVuaworMzg3MTAgNzIxZTYwZjQ1NGYzYzg5MDY1NGM5OWM3ZDMwMzUyN2Y3OGM5NzcyYSByZWxlYXNlMjQtbWFpbnQKKzM4NzExIDI5NTZkZjhlMGE0MDQ1YzBmZjEzYzZkZWE0MmQyYWZiZGNhYzE3NzAgbGVnYWN5LXRydW5rCiszODcxMiAwN2E0ZThkOGViNjkyMjEyZDkwZGQ0MDMyNGU5MTFiMDk4MDE3OTllIGxlZ2FjeS10cnVuaworMzg3MTMgNGVhYWIzODU2NmM5NGZmODQ5ZjQwMGI5Y2Q2OGExNzQ5YWJkN2ViZCBsZWdhY3ktdHJ1bmsKKzM4NzE0IDAxYmEzYjQwNDMxZjI5ZmVkNjI5ZTdhMjEwMTg1MDYyZmE0MDE4YzQgYXN0LWJyYW5jaAorMzg3MTUgZjFjNjMwMzMyMWQ3MGJjMzVlZjVkZjdkYWRjNjVjMjdlYzA1Yjg1OCBhc3QtYnJhbmNoCiszODcxNiBkNjlmZGU0MGM3MTljOTVjNmQ1MDU4NGIwNjA3YTk3MmM4MWJjZWY5IGFzdC1icmFuY2gKKzM4NzE3IDc2MTFkZjIxYTU5MDA5ZDUzNDBjMTcxNmJhNDEyNTc5OWFiYTlmYzkgYXN0LWJyYW5jaAorMzg3MTggOTNjYWE3ZGVjZWUzNjA2NTA5MzQxY2JjMzFhYzVhZTQwYzZlZDIwZiBhc3QtYnJhbmNoCiszODcxOSBhYjgxYzgzYTlhYzZjY2FhYWM0ZTI3ZWQxNmQ4MzZhOGYzZmEyNjZiIHJlbGVhc2UyNC1tYWludAorMzg3MjAgNjUzY2MwOWZkOTMxMDE2MjMxOGRhYWQ5NjUwMWJlMGI3OGFlYjk5NiBsZWdhY3ktdHJ1bmsKKzM4NzIxIDQ3YzU4MDNhYWI0NTgxYjk4NzdhMTBmYmRiODllYWIzOGUzNGQ0ZTMgbGVnYWN5LXRydW5rCiszODcyMiBlYzg3YTExNjQwZDAwMmJjMjZmMGUwYTRjNDRjMTc0OGYyNzdkODYxIHJlbGVhc2UyNC1tYWludAorMzg3MjMgZjkyZDg0NWY4NzAzMzM0ZDg4ZmExNThiZTBkN2JkYmYyOWIwMWIzYiBsZWdhY3ktdHJ1bmsKKzM4NzI0IGE1MGZmZTY1OTExYjBkNDk4ODBhNmExMDU4ZWYwNTgzNWU5ZGQyOGMgcmVsZWFzZTI0LW1haW50CiszODcyNSAwMGZmZGJmY2Q1YTkyNzg2OTJlZTZlNzExNTJkNTU2YmZhMGUyYTk2IGxlZ2FjeS10cnVuaworMzg3MjYgNWNhZjgwZjU1Yzg2MzhkOGY5NTUwNzQ3ZGFhNjY0NWFhYTgxOTdhMSByZWxlYXNlMjQtbWFpbnQKKzM4NzI3IDk4NWRkN2YwNjQyMDgxZWE5NGEzNGY5OTRlOWFkZDlmMmYxZDMwMDIgcmVsZWFzZTI0LW1haW50CiszODcyOCA0ZjA4MzhiNjhiYmJmMWRlMjlkNzY2YjNkZTM2MjVjMjk2OTFhYzVlIGxlZ2FjeS10cnVuaworMzg3MjkgYjcyZGY4YWVlNTZkYThmOWNkMjc2ZTg2Y2RiMDNlZTlhZGQwZjA5YSBsZWdhY3ktdHJ1bmsKKzM4NzMwIDI4ODkyZTY1MTJiYTZiOWI3MzE5NzYwNmYzZjJkOGY0ZDk4MjM4ZjcgcmVsZWFzZTI0LW1haW50CiszODczMSAzM2E5ZTQwYTU4ZDUyYTAyMGMyYjUyODY4MDc5NDg5NTMyNTgzYTg1IHJlbGVhc2UyNC1tYWludAorMzg3MzIgYWQyZGQ4ODQxMzdmZjU3MDM4ZDRlMDUzNjljMTI4MDE2YWI2YzE3NiByZWxlYXNlMjQtbWFpbnQKKzM4NzMzIGJiYTAzOWYyZTA1MjliMTZhM2VkNTYyOGIxMmJjYjE1Y2NjZjgyYWQgcmVsZWFzZTI0LW1haW50CiszODczNCA3Y2ZkYTk4OTg4NjM5NjgzMWY1MmUzYTU4MjUwYjRlYWZkOGNhYjg2IGxlZ2FjeS10cnVuaworMzg3MzUgM2JjZGQ0NDZhMTNiOWNiNzlkMjhjNmU3ZThkNGQzYjJjOGJhOTg2OCBsZWdhY3ktdHJ1bmsKKzM4NzM2IDMwNmY3ZDRkYjVlZmNjYWYxNzg0ZTdmYzMyZDQzZDhjZGJjNzVmYjcgcmVsZWFzZTI0LW1haW50CiszODczNyBhNmM1ODYyNjZkZWE1OGZiYzE1YTIxMjVkOGRlYjdkZWJiZDQxYjk0IGxlZ2FjeS10cnVuaworMzg3MzggN2UyZDhlMTdjZjE0YTQxMWIxZTU2MDU0OGQ3ODBkY2VmMmRmMzhjNiBsZWdhY3ktdHJ1bmsKKzM4NzM5IDMwYjAyYzdlZjhiYTY3MDJlYmZhNmU2YjIxNjliNWQzY2Q1Mzg1ZTkgcmVsZWFzZTI0LW1haW50CiszODczOSBmOTA1NGQyMzU4NzAwMjlhZmEzM2VmOTQ1YmNhN2VjZTk5NjE2YzEwIHJlbGVhc2UyNC1tYWludAorMzg3NDEgZjMxNDIzYzQ5NWQ2N2YwMjQzZTEzNGE1Yzc1OTkyZTU4YWYzZjNkOSBsZWdhY3ktdHJ1bmsKKzM4NzQyIGRlMTIxODk5ZDAyMTYxNjM0MGJmODY3NDA5N2I1N2NkMWEzZGU3MzAgbGVnYWN5LXRydW5rCiszODc0MyA1ZGRhMWY5ZTYyYTczNmNmYjVkMGJiMDEwYTQwNWMxMGJkZDNiZmMzIGxlZ2FjeS10cnVuaworMzg3NDQgMDY1OGU2ZWZmYWM3MDQ4ZjFlOTUxZTc2ZGJiOTFjMjA3ODJmYWZkMSBsZWdhY3ktdHJ1bmsKKzM4NzQ1IGNkMmMwNDRmNjk5ZDdjOGNjZWY1MTE2YzgxNGFhYjFiYmIxN2U2YTQgbGVnYWN5LXRydW5rCiszODc0NiAxM2Q1Y2FhMWU5ZDAyYWE5OTk3MDNlMjhkMzM3NWJlOGM2MDA5NjU4IGxlZ2FjeS10cnVuaworMzg3NDcgNTFiYThjZThkOTJhZmRmMDNiNjhhODExMDJkY2ZmYzJhYjI3NWI0MiByZWxlYXNlMjQtbWFpbnQKKzM4NzQ4IDU4ZjNmMGQwNDVmNTQ1YWRiOWFjM2Y2MDhlZmI3NjQxYWE0MzRlNDUgbGVnYWN5LXRydW5rCiszODc0OSA4NDQ1MzA1MDg0NzU2N2Y4MDE3Mjk4MzVmMWJmNWIzMDAxODdjZjM0IHJlbGVhc2UyNC1tYWludAorMzg3NTAgYWVmNzEzZGU3YTIzYzY0NTExODhjZWRhOTA0NmJjOWU3NDlhYmJmMyByZWxlYXNlMjQtbWFpbnQKKzM4NzUxIGVhZDVlNzNhYmI1M2M5OGYzYzY4YTlkM2I2M2Q1N2M5NmIzN2ZkNGEgcmVsZWFzZTI0LW1haW50CiszODc1MiA2M2M1ZDZjZTA3NjM0ZDY2MmUxNGU4NzdkMmJiZDVkZmI2Mjc0ZDk4IGxlZ2FjeS10cnVuaworMzg3NTMgN2UxYTMxMzNmZmYyZWE1OTJmMzI4MTk5N2E2ODI1MThmMzkwZTg4YiByZWxlYXNlMjQtbWFpbnQKKzM4NzU0IDZhZmYyMjYwMGUxNWFhMzY2YWY4ZTZhOTEwMDExYzBlYjYzZmIxZDUgcmVsZWFzZTI0LW1haW50CiszODc1NSAxMWZkMjYzN2U1YmI3NDRlM2ZkZGZkNDBhNGRhZGJhMmRhMjM3ZGNjIHJlbGVhc2UyNC1tYWludAorMzg3NTYgZWI2YzI5MTViYWRkMzVjMzQ4ZWI3MWE3ZGRjM2NlZDU5MGNmNTczOSByZWxlYXNlMjQtbWFpbnQKKzM4NzU3IGE5NTExYzE1MTI0YmU1YTU4MDMyZWJlZmMxN2RiNTBhYWFhYjBhMDkgcmVsZWFzZTI0LW1haW50CiszODc1OCAyZWEzZDY5MTUyMDQxMDNkOTljYTBkZDA1NzVhMDNlODEzNGYyZTk0IGxlZ2FjeS10cnVuaworMzg3NTkgMzkzNmNkN2YxNmYyNTVmMTFjOWMyNDM4OWFmZDc0MzlkYzNhYzEzYiBsZWdhY3ktdHJ1bmsKKzM4NzYwIGI4NWU4MTA0NjBlZmM1YjQyNzcxYTc1ODVlNzVjYjg3NDQzMTJiYTIgcmVsZWFzZTI0LW1haW50CiszODc2MSBmZTUzMWI1ZGNmZDYwOTJiMTQ0NDAwNDM4ZjNhNGVkYTdiNTlmYzIxIGFzdC1icmFuY2gKKzM4NzYyIDgwY2M0NGVhYmRlZTI1OWEwMDc1MDE4YzI2YTYzZGQ1ZmJhZWI3Y2EgYXN0LWJyYW5jaAorMzg3NjMgNmIyMWRjOTQzOGFkNWMxZWY5OTk2MjdmOGY4ZTU0MmU5YzZhZmZkNyBhc3QtYnJhbmNoCiszODc2NCBjYTRkOGI0ZmJiMDVkYjMxMDY5YTZlODA3NWExMjcxMTk5YzhjMTU5IGFzdC1icmFuY2gKKzM4NzY1IDVjMWViYjVhZTUyMTQzOTY4MTQzODM5YWY3ZGY5MTNjOTQ2YjAzYTQgYXN0LWJyYW5jaAorMzg3NjYgNWU4YzhjYjExZTViZGMyZjNmYjcxY2M3NmFiYTBmMTQ2NzJhNjhkYyBsZWdhY3ktdHJ1bmsKKzM4NzY3IGFiNTgyMmY3NTE1YTVmZWM1NzJmMDMyY2U5OTFiMzIzNmNiMjJhZGIgcmVsZWFzZTI0LW1haW50CiszODc2OCA3MWZkN2VlNGI3ZjUwYmM5MzNmNzExNDA4MWFmOTMyZGU4OGFiZDJlIGxlZ2FjeS10cnVuaworMzg3NjkgMzRjZGZjNWRkN2VhMzRlNTc2NmQ4ODk4ZTI0ZTAxYjFhODE3M2MyNSBsZWdhY3ktdHJ1bmsKKzM4NzcwIGI0OWQzOTExMWM0ODZjZWQ4MzkxYzc5Y2EzNWYyODVhZWM4ZTE2ZTcgbGVnYWN5LXRydW5rCiszODc3MSA1NTM1Y2UwZmY3ZjlmNmY1ZGU5ODAxNDI2OGUwMGI1NzVmODgwZjAyIGxlZ2FjeS10cnVuaworMzg3NzIgZGE0NjA4NDFiNjNjYjgzZDYxN2JhZGY4OGZiZGIxMmQ4ZGFkYWM5ZiByZWxlYXNlMjQtbWFpbnQKKzM4NzczIGJjOWZiYzIzY2Q0YTU5OTE4ZGIxMjcxYjA4NjRkNDBiNGRkOTU2YTMgbGVnYWN5LXRydW5rCiszODc3NCBiNjQ5OTczZDA5NjJlYjA3YjU4OWJlZjM0MjVmYWU2M2ZkZDk5NDM1IGxlZ2FjeS10cnVuaworMzg3NzUgNmRkMmQxMzZlODQ2NjFjMDc4MzhkNDIzMzkzNDE0MDVlOWIyYzQ1NSBsZWdhY3ktdHJ1bmsKKzM4Nzc2IGU3NjJmZWE3OGNiMjM2M2JlMTYzNWVlNzQ2ZmVhMmY4YzkxNGU1NGIgbGVnYWN5LXRydW5rCiszODc3NyAwMTQzZDk5MGQ2MGNjNjAxMjBlNDZiNGExMTMwN2E5NzNjYmM2YzBjIGxlZ2FjeS10cnVuaworMzg3NzggMThkYzkxNTgxNjBkNWI3ODc5NDdhMzBjNzYwNThmNjYwMzNlMTdhMyBsZWdhY3ktdHJ1bmsKKzM4Nzc5IDVhNTIyMjI1YzRkYjM1OWZiN2Q1ODM4NWUzNGRjMmMzMzYwOWRjMTcgcmVsZWFzZTI0LW1haW50CiszODc4MCAyMGIzYzcyMzUwMmFkNGIzOWYzODM4MWI4ZTQ0YzBiZWNiMWQ4Y2RkIGxlZ2FjeS10cnVuaworMzg3ODEgYzJhOWMzYTE4NDc3NmZjNjE0MjY1NmU1MDBiMjNjZTcyM2NmYTJkNyByZWxlYXNlMjQtbWFpbnQKKzM4NzgyIDlhN2Y0NmM0Mjc3MzE0Zjc0ZDU5ZjZiYzEyNGRmYTQ3YjY5NWQ5MWMgbGVnYWN5LXRydW5rCiszODc4MyBiOTk2NzQ3YzA4YjY4OTE1MDIwNjU0MWRiNTJjODM5YTFlMWJiNDliIHJlbGVhc2UyNC1tYWludAorMzg3ODQgYWY1ZDQ4MDE0YjNlNjM2NTg2YTg2NmM1ZDUxODA3YjE3YTEyZjcyZSBsZWdhY3ktdHJ1bmsKKzM4Nzg1IDViYzkxYmIyNDRiMTkwMmZmNDMxZjcxNWNiZmI2YjdmNDBiNjQzNjQgbGVnYWN5LXRydW5rCiszODc4NiA2NGJjNWE5MjJmNTc5MWI0Yjg3NWNlYzBkYWU3YjE4NTdhNzU3NzQ2IGxlZ2FjeS10cnVuaworMzg3ODcgMTQzY2RhNWE5MzQ4MWZkZjA3MzJlZjRjYzYwMTg0ZjY5NGYwMjU1ZSBsZWdhY3ktdHJ1bmsKKzM4Nzg4IDAzNjEzMDk3YjljYjM0NTQxMGY1NDdmNDYwYjA1NTZiNjM3MDAwYmUgbGVnYWN5LXRydW5rCiszODc4OSA3OTIwMWY4MjBlZDA0YTkwZGFhY2RjYWQ0NjE2ZjVhZjA5ZDhlMmIyIGxlZ2FjeS10cnVuaworMzg3OTAgYWQ2YWEyZWVjYjU2OWIxNDUyNjNlZTlkMTBiYjNhOTRjZjI4M2ZiYyBsZWdhY3ktdHJ1bmsKKzM4NzkxIDA3NmE3YzdmZTI4YjgxMGI1MDAwMDU5ZWQ4MGMzZDNiOTMzZjk1ZTggbGVnYWN5LXRydW5rCiszODc5MiA3YzI3ODBjOWU1MWJkZjMzYTVlYjFhOWJmODM1NDZlNTA3YjIzMTNkIGxlZ2FjeS10cnVuaworMzg3OTMgODYyZWJiNjIxMzU1MTA5MjU4YWI5NDk0ZWU3MTc5MTQyNzJkZDZhNiBsZWdhY3ktdHJ1bmsKKzM4Nzk0IDllNjU5Y2I3MjdlYTY4YzlhNTQzOWU4Yzc5NjY3NTE1ZDkyYjIwMDggbGVnYWN5LXRydW5rCiszODc5NSA0NDQ2OGVmYjUyNWVkNTc4NmRiOTg4MjdkMjFkOWFlNjc0YzkxYTkxIGxlZ2FjeS10cnVuaworMzg3OTYgNDhjNzFmZjM4NTc4MmNjMjI3MjUzZTJkMGNlODVjMGI0M2U2ZGEzYiBsZWdhY3ktdHJ1bmsKKzM4Nzk3IDE5MjRhMDdmN2YyM2FmN2U5YmM5Y2IxNTEwNDU3Zjc5MDZhMzhjMWYgbGVnYWN5LXRydW5rCiszODc5OCA0MzNkNzM3OGRmYzJmYzIzMTAwZjBhNmU5MWIxYTNiN2E5MGMxNDk5IGxlZ2FjeS10cnVuaworMzg3OTkgNjFlYzhiNzk1NjQxYzRkMmVhNTQzMmYzY2JjYTI3ZWRjMTgxN2Q3NiBsZWdhY3ktdHJ1bmsKKzM4ODAwIDNiYzI4ZjYzNTE3YTRkMDNjMzQ2MDVjMDMwMzVkZmViMWU2MWY1ZWQgcmVsZWFzZTI0LW1haW50CiszODgwMSBkNTIwNzRkODk0ZGYyOTI5NDg3NjkwZGFjMjYyNjFlMzQ0NmE2MDgyIGxlZ2FjeS10cnVuaworMzg4MDIgZmFkMWU4ZTA5NDU2ZDBkNTFlZWNjNDk1NmU0MDQxNTVlN2Q1YTNmNSBsZWdhY3ktdHJ1bmsKKzM4ODAzIGZiY2IxZGE0ODBkZDRiMWFmMmIxN2Q3NzFlZDdhNTE5NzVjNWUxNzUgcmVsZWFzZTI0LW1haW50CiszODgwNCAxYWM5MTRkM2JkYzM5NDhkMzQ1ZTU2YmI3OGM5OTRjZDI1ZGNlYWJkIGxlZ2FjeS10cnVuaworMzg4MDUgZGFkMmI2MjA0OTc0NTU1OWVmOGQ2ODAxYmM1ZjhhMzMxNGFlODI3NCByZWxlYXNlMjQtbWFpbnQKKzM4ODA2IDM0ZjliMmFkYWUyYzZiZmI5NTlhZGFlMzg0YTY4N2EwMmMyODdjZTMgbGVnYWN5LXRydW5rCiszODgwNyAzOGI2NTQ4MzY5ZmFlODVjMmU5OGYwNzVjZjIwOWI3ZDdiNGNjZjdiIGxlZ2FjeS10cnVuaworMzg4MDggY2QzYjk1MjcwOGFmMGY5YWJlODgwOWI2OTQ5NDA4Y2QwY2FhMGYwYyBhc3QtYnJhbmNoCiszODgwOSA0ZTYyOWViZDBlM2U1N2IwZjc5NzQ3ZDA5NmZkMjNiZmU0NDk4MDcwIGxlZ2FjeS10cnVuaworMzg4MTAgMDIwZWQ2NzFhYTYyMTVlYTkxMTYyZmU1NjcxZjRkYTdmMmQ5MWUyNiByZWxlYXNlMjQtbWFpbnQKKzM4ODExIGQ3YTIxMTdmY2E0MjUzNTBlMjg4ZTE1MTY3MTM2NTQwMmJmYjRkYWIgYXN0LWJyYW5jaAorMzg4MTIgYzYwNzI5YTU3OTMyNWY0MzFmZDQzNWRiMmZhMDQyZmI2MjI3NTJiYyBhc3QtYnJhbmNoCiszODgxMyA4ZTZjZDUwMGM4ZmI1YTU0MDgwN2JmNzMzNDMyZTA0NzM4NThiY2YyIGxlZ2FjeS10cnVuaworMzg4MTQgZmM0NDJjMmViMGNmNmRiZDhhZGExZGIxNWUxN2JmZGQ4NjdlMzVhOCBsZWdhY3ktdHJ1bmsKKzM4ODE1IDk4NmQ0NmM0ZmFlYjIyOTA5OGM3NjI4ZTkwYzBlNzhhNjMzZjcwOWEgYXN0LWJyYW5jaAorMzg4MTYgYzhhZmRkOTI3MTVjMzI3NzUxNDM3N2UzMmYxMGQ3ZDQ1MTk0MjAxNSBhc3QtYnJhbmNoCiszODgxNyA2MDgzMGFkNjI3NWUyYzgwMGU2Njc3YTQ0N2ViYjk2OWE4MWJmMjJmIHJlbGVhc2UyNC1tYWludAorMzg4MTggYTk5ZWUyNTBlMTBjMWM1NjMzYjhjOWQwNzM3YjczMjQxMzI0MjI4ZSBhc3QtYnJhbmNoCiszODgxOSAzMGYzN2MwZTE1OTI1NmM5YzgzNjYxY2ZjNTM5ZDExNzAyYmI2NGZkIGFzdC1icmFuY2gKKzM4ODIwIGE5NmI1MDE0OThhODA4ZjAyMmNlYjgzZjBhNmE2MDJlOTNkNTIwYzcgYXN0LWJyYW5jaAorMzg4MjEgNWM2MGNiYjY1MzMwY2ZhYTU3OGIwNTQ0ZTljMWQzMThkZDFkNGI0ZiBsZWdhY3ktdHJ1bmsKKzM4ODIyIDcyNjdmYzQwYWRhYzE1M2I3ODNlMzczNzIwYjFiODM4ODg3YzRmOGMgbGVnYWN5LXRydW5rCiszODgyMyBkNDM1ZDIxNGE1OTI0MTQ1MjA3Y2Q1YjQxMjI1MjFjZWEyZWQ0NmE4IHJlbGVhc2UyNC1tYWludAorMzg4MjQgODc3MTlhZTkyODhjZWRiYjk5ODNlZGU1MWJjYzY1MWJkMTRkM2Q4NCBsZWdhY3ktdHJ1bmsKKzM4ODI1IDBmMzA2MWY0OWE5ZTg5YWI2OGY4MGNhOGE5ODE5NDljZjk0NTkwMDUgbGVnYWN5LXRydW5rCiszODgyNiBhZjU5MGY2MjJjMGJjM2JlNmZlMjkyMTMyZWIyNjQ5NDk0MWM3ODZmIGFzdC1icmFuY2gKKzM4ODI3IGQ0ZmZjNzcxZTlmZjk2ODhkYzQxNjI0ZDUwNjU5NmU0NDRkYmRlOTIgYXN0LWJyYW5jaAorMzg4MjggYjQ3N2M0ZDdhMjBjMWE2ODIwYzE3Y2I5MjgzNGIwZTYwMWJiOTg1ZiByZWxlYXNlMjQtbWFpbnQKKzM4ODI5IGM0ZWExN2NmNTIxMTE1NjQzZjFlM2Q5MjY0Y2ZhZGFiMTY5OWE1ZTYgcmVsZWFzZTI0LW1haW50CiszODgzMCA4YjAzYjA5MTQxZDI4NzE3MWYxZTk2M2YwNmQ2N2NkODcxNjJjMjg4IGxlZ2FjeS10cnVuaworMzg4MzEgYTEzMDk2Yjg1OThiOWE2N2RiNTM2MDIyNjcwNThiN2VlOGE2ODdkYyBsZWdhY3ktdHJ1bmsKKzM4ODMyIDZiZGMzNDI2ZDQxMTNmMTI1ZTBiY2E0OWUwMTExODc0ZTU1YTJmODEgcmVsZWFzZTI0LW1haW50CiszODgzMyBmOWUzMWRiNmM3MDM2MDM2ZWE1YmMzNmY0NDE3OTQwYjk0M2Y1MmM4IGFzdC1icmFuY2gKKzM4ODM0IGZiYjJmM2JiOGNjY2QxNWY0MWU4OTYwYzY5ZDFiY2FlOWQ1NjljMTkgYXN0LWJyYW5jaAorMzg4MzUgMjgwNGFhMDQzOGNjOGQzNmZjM2RlMWM4OWQyMGY5ZTFhNTNmMzA5MCBsZWdhY3ktdHJ1bmsKKzM4ODM2IGFlMjVkNDVmODk4NzYzNTRiZjg0MzI1NmZlMzdmYjZlZDczMWU5NWMgbGVnYWN5LXRydW5rCiszODgzNyA2N2E4OWI0M2RjYzcyM2E1NWI4ZjMzNmI2M2NjNGMxMWJlMDcyYzM5IGxlZ2FjeS10cnVuaworMzg4MzggNGM4ZTUyNDNjYTQyNTMxZTQzOGY5YjFlMDkwMjQ1ZWU5NzBhODMzMyBsZWdhY3ktdHJ1bmsKKzM4ODM5IGQzNGJkZWQzMTlhYWU1Y2ZmZjQwYjlhY2IzY2Y5ZWFkNWI3ZDMxOGUgbGVnYWN5LXRydW5rCiszODg0MCBiYzEyM2I5Y2VmN2ZhOTY5YzdiMDIyOWExZjFlMjNhYjY0YmEzZTYyIGxlZ2FjeS10cnVuaworMzg4NDEgYzY2YTdmYmUxNmNmOWU1MWM5YjExMDQ5MDMyYzU2NDkwMGRhYTVjMiBsZWdhY3ktdHJ1bmsKKzM4ODQyIDEzMzFjNzc5OTY0MDkzNjJkZGM3YTY5NDYxNDgwMGU5YjAxZWI0N2EgbGVnYWN5LXRydW5rCiszODg0MyA3ZjcyMTA5ZGZiNGZhZmM3OGUyMTEzYTJkMjY0YWQ5MjVlODgzMThmIHJlbGVhc2UyNC1tYWludAorMzg4NDQgZDA1NWY5NGQwOTM2YTY5MGYyMWYxZDZlYTc1MTM2ZDc2MjEyYTU5OCByZWxlYXNlMjMtbWFpbnQKKzM4ODQ1IDk4NTdkYWEyMjgwN2I3MzliYjA1YTllZGM1NmNjMmU2MmQ5M2Y3MjUgcmVsZWFzZTI0LW1haW50CiszODg0NiAzNTgxODQwYzgyZTcwMWI0YjQxZGEzOTBjNTllZmY0NDI3MGVjYzgzIGFzdC1icmFuY2gKKzM4ODQ3IDA4ZTIwZTljNzZmYmYzZWUzN2Q4YWExODMxYzFiNWJiNmVkYjY5MTkgbGVnYWN5LXRydW5rCiszODg0OCAyOTRkYWJjYjM3OWI1MWJlN2NjNDFhYzIzMWUwYjEyNzI1ZWJlMjJmIGxlZ2FjeS10cnVuaworMzg4NDkgOWExYjFlMWFlNjUzZmM5NTYzMTM0NzMyMmFiNGY3YjU5YzM0NTU3ZCBsZWdhY3ktdHJ1bmsKKzM4ODUwIDQ5YzZkY2VkMDhjMjFmNDQzYjZhNTQxNDFlZGYxYWYxNjZiMzcwOTYgYXN0LWJyYW5jaAorMzg4NTEgYzFhOGMyZDdlNTI4YmRiNzk3MGY1MmQ1ODA0OGFjOTI1ZTVjN2VjNCBsZWdhY3ktdHJ1bmsKKzM4ODUyIGFhZWFiMjQ5Yzg2YWQzMjdlZjEyNzJjMzBmZjdiMDU0ODY5OGQxNTcgcmVsZWFzZTI0LW1haW50CiszODg1MyBlYzk3ZTRjMzcwNTYzYWY5N2QyNjQ4ODQ0NjY5NWYzOTZlNjA4NDY4IGxlZ2FjeS10cnVuaworMzg4NTQgNWNjYzg3NzdjZWEyNzE1Nzk2ZTMzZDI2YzYxMWFiOGY2NDE0MTFiZSByZWxlYXNlMjQtbWFpbnQKKzM4ODU1IGE1MTg1YWMxZTRlYzZjYWZjN2QyZTU0ODI4ZTc1MjYzMDNjM2FmMTkgYXN0LWJyYW5jaAorMzg4NTYgMTBhZjE2NTgzYjc1NTU4OWNjMGY0NjI0Zjc0YjI5YjQwMzBiMGQ2ZiBsZWdhY3ktdHJ1bmsKKzM4ODU3IGRhYmE4NWVmNjU0YTQ5YWJjYWIwYTE0NzZkYjIyMzRmMzQ3NGU2YzkgcmVsZWFzZTI0LW1haW50CiszODg1OCBjMGI0ZGU3NDFiMzgzZGZjMzg1ZGE4NTYzZGMxYjZiNzlhNjEwMWIzIHJlbGVhc2UyMy1tYWludAorMzg4NjAgYTEyOTNlZTZlMWRiOWE5NGM4ZmFlOTJlMjFlNmFiNWJjNjM4NGFhZSBsZWdhY3ktdHJ1bmsKKzM4ODYxIDNjNjc5ZDAwODc5ZWJiMWI1MTNiMThlZjZhZWIxNDEyY2Q0MjBmNzcgbGVnYWN5LXRydW5rCiszODg2MiA0NzVmOGFkY2IwMzI5NDBlNmY2NmU0MDdkMTVjZWVjNDI3ODE0NzdiIHJlbGVhc2UyNC1tYWludAorMzg4NjMgNzI4N2I0MTE0NWFlMzc2YTBmY2VhNzAxMjIxNzYwNWFlYjcwNjc2NyBsZWdhY3ktdHJ1bmsKKzM4ODY0IDJjNzQ5OGMyYWU3MDdmZGEzNzJjZDc0NGRkNWYyZmRhOWU4ZDg2MmUgbGVnYWN5LXRydW5rCiszODg2NSA3NGMxMmMxZjM2OTI5NDYxOTM1ODQzODRlYjczYjIzOGY3YmJmOWY1IGxlZ2FjeS10cnVuaworMzg4NjYgOWZlNzgwMWZjOWE0YTIxODkzYTljYTQ2ZTMyMjdlNDRlZTE1YTNlOSBsZWdhY3ktdHJ1bmsKKzM4ODY3IGExNzAwMWY4ZTFiNGViNDExZDQxY2EyZWE1YzQxOTJiZGMxMjlmYzkgbGVnYWN5LXRydW5rCiszODg2OCA5YzkxNzJiZTFmNjk3NWViYjViNDI0MjQ2YTE3YjRlOTQxZjA0MTYwIHJlbGVhc2UyNC1tYWludAorMzg4NjkgZTRlMGNmZjE2YmM3ZTk3Yjk3NDJlN2NjM2ZmNTg4OGNkYzFmOTk0NiBsZWdhY3ktdHJ1bmsKKzM4ODcwIDc1ZjUxOTYxMDk3YjlkOTc1OGQwNDE4Mzk1Njc4NTI2MDhiNDRmYjggbGVnYWN5LXRydW5rCiszODg3MSAxZTdhNmE1YzM2MTQzZTRjZjY5ZTk2N2I2M2JkZTNjM2NjM2RjNDhiIHJlbGVhc2UyNC1tYWludAorMzg4NzIgYjExNjMzOWRkZjI3ODVmMzQxMTcwZjhiZDk1ZTM3OWZiMGJhOGFiNyBsZWdhY3ktdHJ1bmsKKzM4ODczIDM2NThhN2UxMWMxNDhkODNjMDhhYjgzZjA5YTNiNWVjMGVkNzA3OTUgcmVsZWFzZTI0LW1haW50CiszODg3NCBhZTVmMjc0NDZmODE5MjQ3NTNkZGRlMWJiMmE0MTAzYmZmNmY4NjA0IGxlZ2FjeS10cnVuaworMzg4NzUgZjMzMDA3ODY0MjQzZjA5NjA2Njg5MTYwNzhlODAwYzRjYTUwNTZjNiByZWxlYXNlMjQtbWFpbnQKKzM4ODc2IDkzMzljOTlhMjk4MjgxMDdhN2FjOTNlZmE4MmY0Y2RjYWMwYjU0ZTAgbGVnYWN5LXRydW5rCiszODg3NyA0MDQwODg1MDNhNzgwMjk2YTExZDJkMTIxMDczMzQ5MDI5MWNmZmE3IGxlZ2FjeS10cnVuaworMzg4NzggMzc2N2NkYWE2NzI4MjQ4Y2FlZWExNmU5NGQyMzY4NTRkYTcxZmU0YyBsZWdhY3ktdHJ1bmsKKzM4ODc5IGM5MWU1ZTMxYzVmZjFjMmFmYmIwYzdmNzU4MzZkMDcwOTY1YWVhMjYgbGVnYWN5LXRydW5rCiszODg4MCA2YmEyOTNiNzExNWI3OWVkMjFlOWM3NjAzODE1OWJkNmUwNzIxNzJhIGxlZ2FjeS10cnVuaworMzg4ODEgODBmYjI4OTFiMzNiZmNiMTEzYjBjNDMzODI1OTcyOTVkNzU1NjdkNiBsZWdhY3ktdHJ1bmsKKzM4ODgyIDRhMzNjNThjMzE5YzA4Yjg2MTgzYTVlYTkyMThjODA0Zjc5M2IzOTggbGVnYWN5LXRydW5rCiszODg4MyAwNDc0MzRhY2I1YTkxOWQzNjQwNjFhNjY4OTM3N2UyNjY3MzlkZTNiIGxlZ2FjeS10cnVuaworMzg4ODQgNTBiZWQ2NzhlZGRhMmQ3ZjIwODJiNmM4MzY1NTdhYTIwYTVhMTJhMSBsZWdhY3ktdHJ1bmsKKzM4ODg1IDFlYTgwNzc2OTMyOTJkMDE3MGUzNjVhYzllYmI3MDNkNzgwZjFmZTcgcmVsZWFzZTI0LW1haW50CiszODg4NiBmNmFmOTQzMDFlYmMyNzUxOTNkYmUwNDljY2JhYjJhMzRhOTBkZGU2IGxlZ2FjeS10cnVuaworMzg4ODcgMTQ1YzAzYTg1ZWE4Mzg3MjUxZTBjMDk1MzM4N2EzOGRiNmVmNDJkOSByZWxlYXNlMjQtbWFpbnQKKzM4ODg4IDkzNjI5NzcwYTkzZjQ2NzlkNGQ2YTdiOTQ4MjMyYjZkMjY3NjNjOTYgbGVnYWN5LXRydW5rCiszODg4OSA4NmY0YjE4MTdjYWE2OWM2YWEwYzU0MTQzOWNiNmU0NmIwNjYxYTM2IGxlZ2FjeS10cnVuaworMzg4OTAgNjcyZTVmNjUxNzJjMmYxNjlhMWJkNDg2NDFlM2M0NzliYzZlYjgzOSByZWxlYXNlMjQtbWFpbnQKKzM4ODkxIGQ0NTE1NTQ3OTk3NjY2YzBhZjhlY2YyYmUwODNjNGUwYzZjZjRmYjcgcmVsZWFzZTI0LW1haW50CiszODg5MiAwOTA1ODEyZGY0YTVmMTQ5MjVkNTExN2Q0MmIyOTdjMmViMTZlMjQ2IGxlZ2FjeS10cnVuaworMzg4OTMgMWRkOGEwZDY0NDMyMWNiZDAzZTU4YWY0OTY3N2Y1MjA4MWJkY2FlYyBsZWdhY3ktdHJ1bmsKKzM4ODk0IDkxNjUxNjk4MTI2MTA2MWZlMDY1MmVjNDZkNjYxZTVmZTNiYzIxNjQgbGVnYWN5LXRydW5rCiszODg5NSAzOGQwNGVkMDI4ZDFlZjVhZmY1MzExM2EzMjNhYzhlMDc4ZWRmYzkxIGxlZ2FjeS10cnVuaworMzg4OTYgNWU1MTFkZGVmNDhiMmRiNWQ2YjkwZDNiYzA5OTg1ODdlMWNkNWM4NSByZWxlYXNlMjQtbWFpbnQKKzM4ODk3IDE4NzNlOGFmNWE4YWMyMTU0ZDUyYWYwNTgzNzVmNmZjNzY0YTE1YjggbGVnYWN5LXRydW5rCiszODg5OCAzY2FiYTgwNzIwNGJiYzg4MGJmYjVmMTY1ZTRkNjllYjNkOWYxOGM4IGxlZ2FjeS10cnVuaworMzg4OTkgMGIwMWVlODZjY2ZkODhmYmY5ZmY1NTIxMGVhYTIwZmJmZmQ2MjIzZCBsZWdhY3ktdHJ1bmsKKzM4OTAwIGEyOTFhZDlhYTZhMTBjMDE4MWE4YTgxNWIzOTY3NzAyMGQ3MWNmN2MgcmVsZWFzZTI0LW1haW50CiszODkwMSA5YTA3ZjZkNDgxNmFiMWNkYjE4ZjNjMTUyYzQyODk2MzdhOTVkNDNiIHJlbGVhc2UyMy1tYWludAorMzg5MDIgMTg0ZjEwZTExNmZmZjk0MzU1MWU1ZWY1YWZiMjc5MjQ5YjNjMDQ1NiBsZWdhY3ktdHJ1bmsKKzM4OTAzIGVmOTMwY2FlNjNhOGUyMWJlNTJkOTliMjc0YWFhMjAwNTZmZGRkZDIgbGVnYWN5LXRydW5rCiszODkwNCA2NmUwNDE0Y2RmYTZhYjA4OGMyOWU1NzA2NmZlY2FhZmIxNDRhOGNiIHJlbGVhc2UyNC1tYWludAorMzg5MDUgMTY5OWRjNTFhNWI1NzY5YzY1OTg1ZWRkN2E4ZTAwNDFlYjJiYTc5MyBsZWdhY3ktdHJ1bmsKKzM4OTA2IGIxNDFkNTdjNGZjYTk2YzAxODU0YTRkOTdiNmE3ZWU3NjdjYzM0NzIgcmVsZWFzZTI0LW1haW50CiszODkwNyA5ODU0NDcyYjkyMWJhNDdiMTdhOTY2Mzk1ODg0YzFhMTQwMzdjODU4IGxlZ2FjeS10cnVuaworMzg5MDggZWYxODQ1NjJlOGUwM2RlOTYxYjE4NzZhYmE4ZTliZjYyMDJhMmU0NiBsZWdhY3ktdHJ1bmsKKzM4OTA5IGMwOTU4ODhmYzU0M2M4MGM5NTBjMDMwZGNmOTEwZmIzZDI0OWY5ZDcgcmVsZWFzZTI0LW1haW50CiszODkxMCBiMzE3MzZmNjI1YmE3ZjljNzUyODBkNTE1MzFiODY3MTMwZDU0NWU2IGFzdC1icmFuY2gKKzM4OTExIDAyZjEzZTAwZTJlZDEzMDM1ODhlYThkNzllN2ZiZjlkM2MxMzNmYmEgYXN0LWJyYW5jaAorMzg5MTIgOGIwNWE0NzMyY2YzNjFhMzg3NTNlMDlhMDRkZGY5YmE3MjA0MTk2ZiBsZWdhY3ktdHJ1bmsKKzM4OTEzIDAwY2QzNTBjZjdiZjBjNjJkM2ZlMmVkMWMwZWNjNmJiZDZjYmUyZjkgbGVnYWN5LXRydW5rCiszODkxNCBjMGVhZDI5MThjZjc0NTQwMjQxY2ZjYzFjOWRlMzQ2NWE5NGNlOGMxIGxlZ2FjeS10cnVuaworMzg5MTUgZjcxM2U4YWJmMTRlM2NhNjIzZjkyYzk4ODZkNGZlOGRjNTdjZmY0MCBsZWdhY3ktdHJ1bmsKKzM4OTE2IGEyYjIyMjc3NzNlN2ZlOTRiNzM4NDMyNmMyM2Q5OWEzYzJkMWI1MjEgcmVsZWFzZTI0LW1haW50CiszODkxNyBiNDIzYjQyN2UxN2U4ZDYxYjFlYWY2MGQxMzhmNDE1NDRiNWEyMGU5IGxlZ2FjeS10cnVuaworMzg5MTggN2JjYWJiYjZiNGI3ZWY0M2RhZGI4YTMzMTYzZDc2ZDdmZDA5MmZmNCByZWxlYXNlMjQtbWFpbnQKKzM4OTE5IGUzYWM1ZjBhZDNlM2FjYjllZDJjYzhlZDE2MTM5MDkzZjgyZjZhNWYgbGVnYWN5LXRydW5rCiszODkyMCAyMTI1MWUyMjFlNTYyZjBkY2VjMmMxOTg1OWUzYjljMGQ0MWRhYjkxIHJlbGVhc2UyNC1tYWludAorMzg5MjEgMjVhMGUxZmFhOGE1ZWQ4ZjA5MWZjZjFhMGU2YTExYmU0YzI2Mzk3NCBsZWdhY3ktdHJ1bmsKKzM4OTIyIGZjZDJjMzg0Nzg2OTlmMjMxY2M4ZWZiNjQxMzIwZjViYjdkYTYwOGYgbGVnYWN5LXRydW5rCiszODkyMyAxY2RjMDMzNGQ4NzdjNzFhYmZmMTJmZDRkNjdmZTk5OWYxNDBmMmFiIGxlZ2FjeS10cnVuaworMzg5MjQgMTdhYTI4OTYyYjg1ZGFhMzkzYjFmY2JhYjcwN2UzNjE5MDZjNDk5MSBsZWdhY3ktdHJ1bmsKKzM4OTI1IDFjYTdhZTQ4YTkzMTUxYjQ1ZWZjNWVmNjNlY2RiNGE3YTc2MzY2ODUgcmVsZWFzZTI0LW1haW50CiszODkyNiA1MmZlZDJkMDY0MWE1YmQ4ZWZhNGQ3OGE1MDZkNzYyOGYxMDJiNzhmIHJlbGVhc2UyNC1tYWludAorMzg5MjcgODg4MGQ5MWNkYjA5MzgzYTRmZmYzMjAxNzk3NzQzYWNjYTIxYjA0ZSBsZWdhY3ktdHJ1bmsKKzM4OTI4IDc4ZDBhNTU4YjA5MzgzNGU4NjdkMzA2MmYxNWMyZTRkMDk1ZWVmN2MgcmVsZWFzZTI0LW1haW50CiszODkyOSA2NWM5NWFkNjcyYWU4ZmQ1N2RlMzQ0MDI3YTY2YmY1ZjVmNzYzYTBkIGxlZ2FjeS10cnVuaworMzg5MzAgZGU3NmIzNDNkOWM4MmIyYjZhNzJlOGUwYmJkOGNlNjJiNWM3ZWIxZSByZWxlYXNlMjQtbWFpbnQKKzM4OTMxIDQ0ZTNmMjFmMDUyNTkwZGRmYWJjMTI5MDlhZjUxODhhNGNkODlkOGMgbGVnYWN5LXRydW5rCiszODkzMiAxZmI3NjhlYmQ5MGUyYjJjNmY1ZDY1YjE1YTkwZDRjYWJlNDBhZmRiIGxlZ2FjeS10cnVuaworMzg5MzMgOGU5NjgyZmQ1N2Y4ZWE2OTBjYTQ3MDBlOGEzNWRmYzE0ZWFiMjI5NiBsZWdhY3ktdHJ1bmsKKzM4OTM0IGI3NGExYTUxMjkxNzhhNjFmMzI0NDg1N2JmMWMzNzQwNGJlMDFhMzIgcmVsZWFzZTI0LW1haW50CiszODkzNSBlMzk0ZjdlOGEwYzE1Zjg3MDRiMjdjZDcxMDg0NzY3ODQ1NTY0NzUwIHJlbGVhc2UyNC1tYWludAorMzg5MzYgNGEwMmE0MzE3NjU1NWJhY2EzMDQ1ZDU1NTJhNmZjNzBhZWMyMjhkNCBsZWdhY3ktdHJ1bmsKKzM4OTM3IDI3NTg0MzYzMDUyMjg2ZTE4Yzg3NjAzMmJmZDBmMmVlYjEzOTMyMjkgbGVnYWN5LXRydW5rCiszODkzOCA5MGZjYTA4MTQ1ZDExNDk3ZTY1YTBmNjYxODRiZDQyNjJmNjJiZGYzIGFzdC1icmFuY2gKKzM4OTM5IDYyZWFjOGQ5NTNjZjFhMGYwNjE5NTU5Mzg3MDdmMThkNTQ4YzU1YzcgYXN0LWJyYW5jaAorMzg5NDAgYmFjODk4ZDM5YjUzOGYxMjgyZjU1YmNhMTc0OWQ4OGIwYmY5NDM4MSBsZWdhY3ktdHJ1bmsKKzM4OTQxIGIzOGMyYWE2NmVlN2IzZTRhNzQ5ZmRlMjA0NTFjZjk0OGUwYjQ0MDkgbGVnYWN5LXRydW5rCiszODk0MiA3NWZkOWE1MTU0YzQ2MWUxZDg3ZGViZWI2ZDc2MTY5NGU1MDNkOWU5IGxlZ2FjeS10cnVuaworMzg5NDMgNDBmN2UxZGExYmRmZTU1MmU1NmY4NzQzNTAyNTYzNmQ5ZDJkMTEzMSByZWxlYXNlMjQtbWFpbnQKKzM4OTQ0IGJhNDcyN2RhMDdlNTRlYmE0ZmE4ZTJmMjQ4Y2RhNjAwNDUwN2VlNzIgcmVsZWFzZTI0LW1haW50CiszODk0NSBjYjJiZTQ0MjlhNGNmZDNhYzhjMTk1MjRlNjE5ZGQ2ZDRhMzdiYzZiIGxlZ2FjeS10cnVuaworMzg5NDYgZWE1YzIyODBmOTE1NzQyMzdmM2Q0MWFhMTg4ZmUwMmI1Yjk3MDI2MyBsZWdhY3ktdHJ1bmsKKzM4OTQ3IDBkZjA1ZWFhMWUwOTZlZWNiZDAyMTI3ZjFlNjViNTkzNDczODQxM2QgbGVnYWN5LXRydW5rCiszODk0OCBhYzU2ZDE3YmMzZDE3MGNiMWJmNmVlOWE1YjBmMWU4NzE5OTg0YzRlIHJlbGVhc2UyNC1tYWludAorMzg5NDkgZmNmMDEwYzM3MGNiY2ViNzdjMzVmYWE0OGI3NjFmNDI1MTI4YjIwOCBsZWdhY3ktdHJ1bmsKKzM4OTUwIDVhMWEzMWQ5ZTM3ZTNjMTM5ZGU5N2I5YmFlNGFlODE4ZTQ3MTU2ZDMgbGVnYWN5LXRydW5rCiszODk1MSAyMTViNzg4NWUxMDg1NGM1MTk5Nzc2NmMxZTNhY2FmYjdhNzkyNGRkIGxlZ2FjeS10cnVuaworMzg5NTIgMzI5YjI4YTg1OTQ3NGEzNTA3ZmEzZjI1MWJjYTI1NmQ5OTgwZDg4OSBsZWdhY3ktdHJ1bmsKKzM4OTUzIGUwMzcxNDgwNDg0NWI5MjllOGNjZTVmMDAwYTYxZDRlNTI4MjEwYmUgbGVnYWN5LXRydW5rCiszODk1NCA4YmZlYmNmMDYzNjM3MDE0NTExZTFlNGMwZjc5Yzc4MGY3MDcxMGEwIGxlZ2FjeS10cnVuaworMzg5NTUgYTQ5Yjg4ZTUwMzA1OThmOTQzMjM0OTVmNGNlZGYxYTZhOWZkNzMwOSBsZWdhY3ktdHJ1bmsKKzM4OTU2IGI3M2YxMzBjN2I4NDA1OGU2N2EzNTI0NGU2YjQ0ZjgwZGJhZjVkMWIgbGVnYWN5LXRydW5rCiszODk1NyBkNGRhYWJhYmFhNDVhNWZkZjc0NWRmMGZkZmZjODJiODcxNzM1OTk5IGxlZ2FjeS10cnVuaworMzg5NTggMjlkM2RlZjNhNTZhYjVhMmRjNDBhODgzNWZlNzAzYjU1MzJlYTc4ZiBsZWdhY3ktdHJ1bmsKKzM4OTU5IGYzYjAyMjIyYTgwYTIwNDMyMmVkNzc4MWRhOGYyMWYxMmY5MjAxNTUgbGVnYWN5LXRydW5rCiszODk2MCBjNTU4OTk4NjNiOWM3OWU5YzA2MjI3OTkwNDFiOTc0MWYzMjE4MjMxIGxlZ2FjeS10cnVuaworMzg5NjEgMTlhNTA5MWYyNjU4MDY0MDY1MDc4ZTA1OGNmYjJkZTU0ZWYxY2UzOSByZWxlYXNlMjQtbWFpbnQKKzM4OTYyIDU1NTQ1MTFiMzcyNTQ5MTFhNjg2NDE2MjFhMTUzZjE0Mzg1OGQxZmYgbGVnYWN5LXRydW5rCiszODk2MyAwODc3MzVmODY3MDFjMTlkNDMwMWFjMDkwN2M5MjAzMDYzNzY4NTMzIHJlbGVhc2UyNC1tYWludAorMzg5NjQgZDYwNDdlNTVmN2FkM2Q2Y2UxZmNkY2NjOTJhYTkyMTEyZjc2NWQ4NCBsZWdhY3ktdHJ1bmsKKzM4OTY1IDNiNDFiZDg3ODkxOGQwMzA5OGYzNDFhYWUyZDcxZjk1ODk1ZWZjYWYgcmVsZWFzZTI0LW1haW50CiszODk2NiAxNDkwZjgxMWY5M2E5NGE1NjExMDllNjZiMGUwODI2YWUzZDZmY2I1IGxlZ2FjeS10cnVuaworMzg5NjcgNzNmMjRmNWM0ZTNmOTMyNThmMGEzZGZmMmYwMDBhYThkMWQwOTVjZCBsZWdhY3ktdHJ1bmsKKzM4OTY4IGMwNWU0NWU4NzI0ZTJmZTRhMmFkNDA1Njc2ZTU1MzgzM2NjNTU1NjIgcmVsZWFzZTI0LW1haW50CiszODk2OSA1NTU0NWUwMjMxOTlmYzA2YTUwMTZjZjNlMjk0YjkwNzY0NDQ1MGZiIGxlZ2FjeS10cnVuaworMzg5NzAgNTYwODg3NDk3MjFhOGFkN2I3YTg3ZTdjOWNlMjk3MzVhYWZkNjNjOSByZWxlYXNlMjQtbWFpbnQKKzM4OTcxIGQ0MzBiMjk2NDFiYTQwYmU0ZjNmN2QxNzZjNzEzMTVjMmY4OGVhMjMgbGVnYWN5LXRydW5rCiszODk3MiA2NjI0ODhkNDE4N2RiNjg4YTI1MjUwZmVhOGI3M2U2ODA3ZjFlMjczIHJlbGVhc2UyNC1tYWludAorMzg5NzMgODIzNzNkMjUyNWVlMGJkYmE0OTk0ZDNjNTUwZmI4MDdlODllMzQyMyBsZWdhY3ktdHJ1bmsKKzM4OTc0IDVmNzYzZjllNTBmOTM3MGRlODNiOGI3YjJkNmQ5MjEyMGI5MmM2OGUgYXN0LWJyYW5jaAorMzg5NzUgZjIzMDA3ZjkyMTdiMTM1ZTEwZWJjOGU0MDc0ZGI5MWQxZDExYmYyNiBhc3QtYnJhbmNoCiszODk3NiA4YWU4ZTY0Y2E5YmQ0ZDg3NTRjOWVmYjk5MTc0M2Y3NThiNTE4MDkzIGxlZ2FjeS10cnVuaworMzg5NzcgZTc5NzkzYThlZWVhYjVjOTg1MmY1Y2M2Y2M1OGFlMGI0ZDJlNDE2YiBsZWdhY3ktdHJ1bmsKKzM4OTc4IDRmZGE0MDYzY2M4Y2MyYzdjZTVmZTlkMjczY2EwMzFlNzIxZjcyNmYgcmVsZWFzZTI0LW1haW50CiszODk3OSBlYzRjMTZmZTczODRjZWQ1NjVhOWJjYmNlZjhiY2ZhYjY2MmY3MjdiIGxlZ2FjeS10cnVuaworMzg5ODAgNWU0NWRjYmY3Y2ZmZDA0YzNlMmZmNDMxYWE0Mjc1MWNiOGI3NDcyYiBsZWdhY3ktdHJ1bmsKKzM4OTgxIDc0OGM4ZTJkNDBlZWMwNWNkNWZlMTlhYzI4OTg3NzFmNjcyNmViYzggbGVnYWN5LXRydW5rCiszODk4MiBjYTVlZjdlZTNmNDE3YWMzMTFjY2YxMDk0OWJmNDcxZmE4NGZhYTMzIGxlZ2FjeS10cnVuaworMzg5ODMgZWU5OWRiMDZjMGViY2ZkODZhYzVkYjkzYzY2MmI0ZTNiMTAxNjNkMSByZWxlYXNlMjQtbWFpbnQKKzM4OTg0IGM1NTUxMGRhZWJkMjUyZDQxN2I0YWE2YjYwMGE3ZjAyZmQwMmMwOTQgbGVnYWN5LXRydW5rCiszODk4NSA4MDc2NDI0ZDQ1NWQwZWIzN2I3MWUyNDNiNGE3YWZkYzlkYzFmODBjIGxlZ2FjeS10cnVuaworMzg5ODYgMDc4ZGE0NzRiMzAyMTMzYTMxYzlmODJkN2NlOWYzYTkwNmZhZDJkOCBsZWdhY3ktdHJ1bmsKKzM4OTg3IDJlYjU2OWI2Y2UyMzRhODZkNjliZmRkYTQwZTFkOTEyNDZiYjhmMzEgbGVnYWN5LXRydW5rCiszODk4OCA5MjRlMDI4MmI1N2U5ODM1ZWM2YTExZjg3ZmU0ODBmMWNiYjFlYjE3IGxlZ2FjeS10cnVuaworMzg5ODkgOTJjZDk1MWNjNGIxOGQ4YjJhM2M4OTM5NGRhNGI4ZjNlYjJlMDdlMyByZWxlYXNlMjQtbWFpbnQKKzM4OTkwIDg1MTQ1OGZmZmQzNDIxMGY2MjBlYjM4MGUxMWM2YWEzMzM0OTZhM2MgbGVnYWN5LXRydW5rCiszODk5MSAxNzNlOTBlMGQyZTMxZDdkOGI0MDY2NjAwNDZjNDY2MzU3N2VhZmQ1IGxlZ2FjeS10cnVuaworMzg5OTIgYWExYzUzNjY2MDdkNmY1YTk0ZTlkMzI3YWZkYWJkNGExY2JmMjVjMCBsZWdhY3ktdHJ1bmsKKzM4OTkzIGEyYjUwNDVkZjRmODU2ODBiZjBmZDZkMDAzODM4MGJjZThmOGU1OTUgcmVsZWFzZTI0LW1haW50CiszODk5NCA3NGE4NDU4YjIyNzYwMmY5YjRkNTVmOGQ1MGFhY2E5YWZlZDllOTUxIHJlbGVhc2UyNC1tYWludAorMzg5OTUgYWJlNWE1ZTM5Y2NjN2RhZDIzZmRlYTg5Yzc2N2JmOWJlNDc5OTVlOSBsZWdhY3ktdHJ1bmsKKzM4OTk2IDkxYjhjZGJmZDdiNDY1OTQwMWY5YWYxNzQ4YWY0MTc2YmY2ZjViYTggcmVsZWFzZTI0LW1haW50CiszODk5NyAxMzMyZjJlNzA1YjIxNmVkMWY0NWViOWIyMzdjNmEyYjA5YTc4Y2UzIGxlZ2FjeS10cnVuaworMzg5OTggODM1YWIwNjk4NGE5YzhkOGY2NWExYzEyNzQ1M2FkZTFmM2M4NDE0NyBsZWdhY3ktdHJ1bmsKKzM4OTk5IDVmYjIxNjMyMzFkMzM1ZDU5YzE1YWY2NDViNzFjMGFkNGUzYjZkMDEgbGVnYWN5LXRydW5rCiszOTAwMCBkYjE2NzZmZGI1YjkxYzA2NDAwYzM3MjRhODJhNmMyNDM3MGJkNDUzIGxlZ2FjeS10cnVuaworMzkwMDEgZjg5Y2JlNjlkYjYzZmEyNWJhYzhhZWE2ODZkYjJhZjY3MzMwN2M2OSByZWxlYXNlMjQtbWFpbnQKKzM5MDAyIDUxZmUyNDEzODQ4NmU5NTRjYzI2YmI5NDU2M2UwYjM1ZTljOGM4MzcgbGVnYWN5LXRydW5rCiszOTAwMyBjNDI1Y2RjOGFlOGE3Y2E4ODZjMWE4NGQyNGE1NTU4OGVhOGEyNGNkIHJlbGVhc2UyNC1tYWludAorMzkwMDQgNGY1ZDI2ZjVlM2U2NDUyZmQyMTUzMzNmNDQ5YWU5NTczYTkwM2RhZCBsZWdhY3ktdHJ1bmsKKzM5MDA1IDQ2NjZiNDU3NGM5Y2I1ODNmZmE2NTAzYzIzOTNhNDhhODM1ZmRkYjUgbGVnYWN5LXRydW5rCiszOTAwNiA2OTY0NTgyNDBhNjVlYzRjMzdkODA1NmVjODI4MTkzYjg5YTNiOTY0IHJlbGVhc2UyNC1tYWludAorMzkwMDcgMGE5YTQxMGJmNzRjYmIwMzhiNTQ2ZDc5ZWRmODJiOGM4YzMwOWE1NyBsZWdhY3ktdHJ1bmsKKzM5MDA4IDJiNTE4NmI1OTViMWFkZGRkYTdmMDUyMmU5MmIwNDVhZTg0MTU3MDIgbGVnYWN5LXRydW5rCiszOTAwOSAyN2FhNWVlYzU0MDA0ZDdjMzIzZTY1NzYyZDkzMzg1NGI5ZjhmNzA1IGxlZ2FjeS10cnVuaworMzkwMTAgZDFiYWMyMGMwYjlmNGUxMmJmYzE4ODBmNDI4ZWI1NTAxZWY3MzBhYiBsZWdhY3ktdHJ1bmsKKzM5MDExIGFiZTk2ODYzMjVjMzhiYTA4MzZiMzM3NWUyMmNlMGM1YWU3MWNjYjUgcmVsZWFzZTI0LW1haW50CiszOTAxMiAyMDE1ZDE2ZDI2NDcwNDZiNTJmYmZmMDVlNzZjNGY2MjhiYTkxZjk4IGxlZ2FjeS10cnVuaworMzkwMTMgYzZiN2ZhZGYwYWRhZTI3ZmVjNTU2YTBhNDMxZjIxMWE2YmE0NTJiYSBsZWdhY3ktdHJ1bmsKKzM5MDE0IDE3Y2NhYzY5NTQxMzQwMDBhYzk5MzlmNDhmZGI5NGQ3ZjFlZTUzYzAgbGVnYWN5LXRydW5rCiszOTAxNSA0YTVmMTgxYWMzMjQwOGFkMWZlYWY2YmI5NmIzNTg2NTRjNmU1ODk1IHJlbGVhc2UyNC1tYWludAorMzkwMTYgYTUzNTg3Mjk1ZjIwNTk2NTk2MjAzZWQxZjliZWY4MTBlYmVlMDEwNiBsZWdhY3ktdHJ1bmsKKzM5MDE3IDMyMzhhZTZkMmIzMDQyMzMzOWYzNzEzOTQ4MGM2ZDMxYTNmYjZlZGMgcmVsZWFzZTI0LW1haW50CiszOTAxOCA0Mzg0ZTU4NzkxMjYxNDE5OWMxMzkzZDJhNzQ0ZDc1OTc1NWNjNTkyIGxlZ2FjeS10cnVuaworMzkwMTkgNjhiY2U2OGM4ZjkzMjc4ZmY1YmRlZGMyYzVhMGZiOTA1MThjNjQ1NiByZWxlYXNlMjQtbWFpbnQKKzM5MDIwIGIyYmQwNWMwMWEzNTFjZjgzYjJiMTFiMTc3ZjQ0MDE1NTUxYWM2MzggbGVnYWN5LXRydW5rCiszOTAyMSA5ODE3OWM4MjgxY2RiNjEzMjYwYWM0ZDJiMzdkMWI4MmM0OTg2OWQzIHJlbGVhc2UyNC1tYWludAorMzkwMjIgODM0MWNlZmRlY2FjZThjMzJhYWZlOTkyYjIxOGQwZjNhNDE2ZWQyZiBsZWdhY3ktdHJ1bmsKKzM5MDIzIGYwYWUxMTk0ZGI2OWVhNWU1ZTE3YTNkODFjZDYwYTVmYzhlMjc1ZjEgcmVsZWFzZTI0LW1haW50CiszOTAyNCA4NjBkN2Y5M2U2YjRjOWFlYTQ1YjNkMjBkMDFlOTAyMTRlNjAyMGVhIGxlZ2FjeS10cnVuaworMzkwMjUgNTZhYzQzZDlkNjI1OGIxYTYwNmE1OTEwZjlmN2M2N2UzMzdkZTg0MSBsZWdhY3ktdHJ1bmsKKzM5MDI2IDE3MTRjMjQ5OTI4ZWY4YTBkNWE2Njk4NTBlMzc5YjlmZDIwNGIwYTQgbGVnYWN5LXRydW5rCiszOTAyNyAyZDA2OTNiOWYwYmQ4Yzc5NGQ0OWZhMzA1ZDBiNDk3MmVkYzg3OTkyIGxlZ2FjeS10cnVuaworMzkwMjggZjU1ODlmYzNkOTc3MTQ4M2IzZGFmODI2OWY3ZjAyOGQwNTNkMDQ2ZSBsZWdhY3ktdHJ1bmsKKzM5MDI5IGFjZjY4ZjY3Yjk3NWM3NTFhY2JiYzYwYWJkNWQ5Y2FiYjUyNDMzYWQgcmVsZWFzZTI0LW1haW50CiszOTAzMCAyMzRiMjJhMmFjZjNiNzk2MmVhYTA0NzRiN2MyZTdlNTcwMDU3Y2IxIGxlZ2FjeS10cnVuaworMzkwMzEgMmU5ZTY0MmE1OGNlZDFmODliNGU0ZDg3ODRhOGE5MjgwMTdiODk4YiBsZWdhY3ktdHJ1bmsKKzM5MDMyIDRjMjM3NjIwMTExNWQ1YWFiOTI0MjMwYzk4ZDhmZDNiNzQzMzg5OGEgbGVnYWN5LXRydW5rCiszOTAzMyA1MjJjOWE0OTA0NDEzYzk4OTM1ZTFkMjc3MzIzZTE1YmIzZmI1ZjAwIHJlbGVhc2UyNC1tYWludAorMzkwMzQgMDlhOTEwY2I2YzhmZjAzYjgxNTdiMjg5NzlkZDA3YzZkZDkyMjJkMCByZWxlYXNlMjQtbWFpbnQKKzM5MDM1IDk3M2FhNGVlMTYxNTJhZGEzNzY2MmFjNmQwZjZiZTUyNWVjMzk5MDcgbGVnYWN5LXRydW5rCiszOTAzNiBiNmQyYTlkMWE5MzNhN2MwZjhiMzUzZjM0MjEyNzQwYzMyYzMzOTQ1IGxlZ2FjeS10cnVuaworMzkwMzcgZjNkMzE1MWY4NDE3OWYxZmZiNmVkZjFmNTIxZTA1MWY1MGY5MDQ4NSByZWxlYXNlMjQtbWFpbnQKKzM5MDM4IGFiODNhYjI3YzgzN2I2NDFjMGEzOWM0YjBlMjFiOGU1YzMzZWRmOGEgbGVnYWN5LXRydW5rCiszOTAzOSA1ODYzMjA5MmUwMjMyNzBjOWFmMzQxYmU0M2JiNzRjMTFiZGM2NmUzIGxlZ2FjeS10cnVuaworMzkwNDAgYWRmMTg5ZWI0ZjU4YThlNTk3MzdmZmYwNmU4MmM5NDExZmMwNjU1MCBsZWdhY3ktdHJ1bmsKKzM5MDQxIDU4NTA1OWRlMmI0MDRhZGZjOWE5YjlkMjY0N2Y2NmJiYThiMjc4NGQgbGVnYWN5LXRydW5rCiszOTA0MiBiZmM5MWQ0YWY2NDUzMmEwZTFkYTg1NzI2NmYwZjUwZTY1MTNhNTBhIGxlZ2FjeS10cnVuaworMzkwNDMgMmZiMGM3NmQwMjUxYTFhNzAyNjU4ODJmZDgxMTE1NzZmNTgzZDk5NiBsZWdhY3ktdHJ1bmsKKzM5MDQ0IDdlYTJiZTJjMGUxZGUwZjdhYzhiY2U4NjAwY2JkMmIxNDQ3MWVjYjYgbGVnYWN5LXRydW5rCiszOTA0NSAyZDgzMzEyM2IxMTkwNjM4Yjg4Y2NkZjkyMDJiZDg5Nzc4NWVkMjhmIGxlZ2FjeS10cnVuaworMzkwNDYgMDQ4Njg5NTlmMWZlNjgzMmNjOTk0OWEzY2JiNWUzYTMzNTdhN2JmYyBsZWdhY3ktdHJ1bmsKKzM5MDQ3IGRhNzcyMDA3ZDM0ZDgwNTlkOTYyM2IyNjI0ZThiYTYwM2E3ZDhmNjIgcmVsZWFzZTI0LW1haW50CiszOTA0OCAwZWM3MTE1MmM3ZTJiZTEwMWUxNTkyZGE3YzZmOTMxZjhhNDFiMDBlIGxlZ2FjeS10cnVuaworMzkwNDkgMmVlNjNmZjQ1OTcwZmRlMzM3MDIyODA5Y2I5MDQ4ZmU1MDE5ZmE1NyBsZWdhY3ktdHJ1bmsKKzM5MDUwIDUzNGY4ZWE1NzM3N2VhODkzMWQ1YjI5N2I2YzdjYjVlNzQ5ZDMwNTggbGVnYWN5LXRydW5rCiszOTA1MSBkYjJjZjc1OTk0OGFmMjUxMmI1YzIwM2IwYzZmZTY0YTVkOTRkYjlmIGxlZ2FjeS10cnVuaworMzkwNTIgY2RlYzk3OGI5MTZjZTI1YjcxNTMwYWZmMjA1YzhkODNmOGM2NThiMyBsZWdhY3ktdHJ1bmsKKzM5MDUzIDcwNjgxMjY3YTc0YTlhNjM3NjE1MzE1NWQ3ODdiNTljY2U1YzA4NzggbGVnYWN5LXRydW5rCiszOTA1NCAzZTBkZDYyZWUzMWJmN2NkODY0NDVmY2YzOTk4ZjM2YzY2OGZlMGM2IGxlZ2FjeS10cnVuaworMzkwNTUgMDA4N2FmMDk1M2Y0ZGM1ZGE5ZTI3NWRlYjIxNWUzOWJkZDEyYzQyNiByZWxlYXNlMjQtbWFpbnQKKzM5MDU2IDVkMzNkODNlOGRlYzhhOTRhMGQ5Y2EzOWU2ZjNkNzJlNjhhMWIyNDUgbGVnYWN5LXRydW5rCiszOTA1NyA2ZTkzNDQyZTI2ZGQwM2Y0OWI2NTViY2NkYzY5NjUyNzFmNDhiYWI2IGxlZ2FjeS10cnVuaworMzkwNTggMDEyYTBhZGEwZDA1ZmU4MmY0YTMxYTgyNzE1Njg1ZWE2OThjYTlkZiByZWxlYXNlMjQtbWFpbnQKKzM5MDU5IDJjYjYyODYwMDA1ZjYwMGE0MDlhZGJhZjAwMGM3MTU3NGMzZjYxY2MgbGVnYWN5LXRydW5rCiszOTA2MCA4NmU5ZjYxNjk3ZDhhZmRmNDE1NzUyMTRkZTRlNzJhYzVhYTkyMmE0IHJlbGVhc2UyNC1tYWludAorMzkwNjEgNzdkZTIxY2NkMjEwZTRhMmQyNjliM2YyZjRhNjllMjZkZGI4NGQ2NiBsZWdhY3ktdHJ1bmsKKzM5MDYyIGRjNjhkZTcwMzc2YjQwN2U5YWU3MTA0NzE3YjZhZWRhYmI3Y2FlZjIgcmVsZWFzZTI0LW1haW50CiszOTA2MyAzOWJiOGE0MGEyYzg1ZTVkOGFlMGIyNGRhMGMwODcyMjU2OTg0MGIzIGxlZ2FjeS10cnVuaworMzkwNjQgODI5ZjY2ZDU2MTQwYzI5ZjNmMDRkZDJlYzlhODg2NDM0ZDM3NGYwNCByZWxlYXNlMjQtbWFpbnQKKzM5MDY1IDNkZDhkNDFlYzM1MDMwMjA4MDQwMmE2ZGNhNjk4N2Y0ZWFiMzkzZGQgbGVnYWN5LXRydW5rCiszOTA2NiAzM2E0ZDdlNWM4MmYyYmNiZTRkNWQ0NWJlY2M2MjBmNTNmMzY5MjczIHJlbGVhc2UyNC1tYWludAorMzkwNjcgYmJiODRiNTg1NmZjZTRkZWNiNWYyZmVjYWU2OTA1NTEzOWVmY2I1OCBsZWdhY3ktdHJ1bmsKKzM5MDY4IGZiMmY1YWE0ZDVhYjAxZjVmNTZkY2RiNDhmNzgzOTU0MjY4NjM0ZjcgcmVsZWFzZTI0LW1haW50CiszOTA2OSA4ZGJiNzMxYmFhNjBmMDY1NGFiYzRkODhhNjMxYjZlMGM0YjgwYWFhIGxlZ2FjeS10cnVuaworMzkwNzAgZDYwYTUwYTkwZmQxNTBlZTgyMzUzYzZmYmFiZDdmMWRhYTdlMDEwYyByZWxlYXNlMjQtbWFpbnQKKzM5MDcxIDMyNTNkYmQ3MmI2MGFjZGFmODYyYzU3YTc2MDIzYjZhY2Q4MTk3OGUgbGVnYWN5LXRydW5rCiszOTA3MiBlNWY2MmUwNDljNmZkOTIxMGI0ODBjNDQ4OGI4YTU5NDA2NzA0YmE0IGxlZ2FjeS10cnVuaworMzkwNzMgOTEwYjVkYjQ2MjNlMzFlYTA1MDFlYmZlMWMzODIxMjZkMjI3NDFmNSBsZWdhY3ktdHJ1bmsKKzM5MDc0IDk5MzA5ODAyZDQ5MDQ4ZWZjZmU2ODhkZjRkODdiZmRkYjhmZTJlNDEgcmVsZWFzZTI0LW1haW50CiszOTA3NSAyOTg1ZmM2MzA5YTg0YTllNmNiMmQ5YTEzYjQ5MDNmMmJmMDk5MTc3IGxlZ2FjeS10cnVuaworMzkwNzYgZjg0MGY0NDcwMzI1MTlkMTE1NDVjY2FmZDc4YmQ0ZGJmOTRjNTJjMSBsZWdhY3ktdHJ1bmsKKzM5MDc3IGI4NDEzOGQ5OGNmYTAzZmQ5MDE1MDM2MWU4ZTNhZjJjNGNmYjc4NjggbGVnYWN5LXRydW5rCiszOTA3OCA3MjhhMGRlODgzOTVjMjMwZjY2YTQyYTk5ZjUwNDRiM2I2OTI5NjBlIHJlbGVhc2UyNC1tYWludAorMzkwNzkgMDZjNzYyNzIyODkyYjhjY2QyYmY1MDU1MmQ4YmUwZDA2YmVjMmJhMSBsZWdhY3ktdHJ1bmsKKzM5MDgwIDRkMWRhNjM2MTJlYjVjOWRlODc0NGY1YjdmOGM0MjZkYjgwNGM5NDkgcmVsZWFzZTI0LW1haW50CiszOTA4MSBhMzFhNzcwYmI3Nzg1ODc0ZTQ0NzExODM3YTBlM2EwYjVjMGMyYTUzIGxlZ2FjeS10cnVuaworMzkwODIgZjU0NzNhNzYyYjUwMTZiNjJhYTUzYzg2ZmIyNGNiODExNjk3MzAyNCByZWxlYXNlMjQtbWFpbnQKKzM5MDgzIDNjNmFlZDNmM2EzMTAyYmJiMWMzMmJkZmUyNzMyY2FiY2QzOTM1MjEgbGVnYWN5LXRydW5rCiszOTA4NCA4MWNhMzVhZDkxOTllODgxNDgyZDFhZjk5OWVmYmYxZjgzNTg0MWUzIGxlZ2FjeS10cnVuaworMzkwODUgZGFlYmZkZTBlMWNmMWM0M2U4YWNiNjFkMWIyNmZkYjQ3ZDJjM2FjNyByZWxlYXNlMjQtbWFpbnQKKzM5MDg2IGM4MmI3NDZjNDI4ZjhiM2JiNDdhODVmYzRmMDI1MjNjN2IzNTU4NzggbGVnYWN5LXRydW5rCiszOTA4NyBmN2MwODhhOGI1ZDNjODE5ZDM5Mjk3OTI3Mzc5ZmQ5ODQyYmY0ODAxIHJlbGVhc2UyNC1tYWludAorMzkwODggYjMzYTcyNjQ0NTRmMDYwMTllYjcxOTdkOWFiZmYzMDNmN2Y1MTJjMiBsZWdhY3ktdHJ1bmsKKzM5MDg5IGM1NzQyODJkNTBiZmVlNDBjM2I0ZWUxNzE3NTQ0NDljOTA4ZGJmZmMgcmVsZWFzZTI0LW1haW50CiszOTA5MCA5OGY5NmYwN2Q1NDk4ODUzODEzYTAzOWE2NGFjMGQxYTZhMThhYWU4IGxlZ2FjeS10cnVuaworMzkwOTEgOWE4MTJlYjhhMGFiMjg2ZTZjNmIzMzBmZGEyNGMwYmI5ZjkyZDliMCByZWxlYXNlMjQtbWFpbnQKKzM5MDkyIDczOTAzMmJlOTZkNWQ5MDVmZDM4YjAxNWY1NDc1ZmJlYmIyZjg1NDggbGVnYWN5LXRydW5rCiszOTA5MyA2YWQzZjg2MDM0NmU5OTNhMmUyNzNhM2RjMjg5NzcxMmNhNjhlMGI5IHJlbGVhc2UyNC1tYWludAorMzkwOTQgMDIxYTRhYmY3ZjI3NGIzMjQ1MzY0YzliNzQxODQ0ODMwM2QzNTM4NyBsZWdhY3ktdHJ1bmsKKzM5MDk1IDFhNzBjYmY3NTljYWU1MjA3YTJkMmE3OWM0MTk1ZTRkYmFiZjdjNTQgbGVnYWN5LXRydW5rCiszOTA5NiBkNTc0MjhlODU4ZmMwZDA0ZmNmMDNhMTVjNzkxOGJiMTE5ZDIyMjdhIHJlbGVhc2UyNC1tYWludAorMzkwOTcgZWFmYTEzYmVlZjI2NDZkYzNhNWE0NjFhMmQ5MWRjYThhNjEwM2MwYyBsZWdhY3ktdHJ1bmsKKzM5MDk4IGQ2YTE4YTMzYmQ2MjU2ZjcyMjNmYTM5ZDM0NzI4ZDI3YjU0NzI4NjIgbGVnYWN5LXRydW5rCiszOTA5OSA3OTkwNDU1ZTZhZTBhMGQ2ZDNhYTE2MDkzYjM5Yjk1YWFiM2I3MGYzIHJlbGVhc2UyNC1tYWludAorMzkxMDAgOWU0OTI3M2ExMzM0Mzk2YTA3ZjIzYjlmNzg3MWY1MmViMGUwOGY4MCBsZWdhY3ktdHJ1bmsKKzM5MTAxIDEyMjg3ZWZhODc3N2Y3MjJhN2E1MjIxYWVhZDQ3OGMyYWI4ZDBlZDIgcmVsZWFzZTI0LW1haW50CiszOTEwMiAwZmMyOTAwMjY5MzlhNmMwZDgzMDdkOTE1ZDRmYzNlNTkzMWI1MzQzIGxlZ2FjeS10cnVuaworMzkxMDMgOGZjNWQ2YmMzNWZmZGUyMjNkZDk4NWExNTM4OTg3MDY2OTQwODllOCBsZWdhY3ktdHJ1bmsKKzM5MTA0IDI3YTcxODIyMWU3MmU3ODRmNDFhMTYxODc2ZmVjZjI5NjIxOWVlYjIgbGVnYWN5LXRydW5rCiszOTEwNSBjZjdhODQ5Y2U2MWZhNjA1Zjk0MWRhZGM0MTEwMTcxYzRhOWJkNDZlIGxlZ2FjeS10cnVuaworMzkxMDYgNjk1MjgzY2JlNDNmYzkwYzM3ODU1NDdlMmNlOTljOWVjNDM5MzY2YyBsZWdhY3ktdHJ1bmsKKzM5MTA3IDE2ZGZlMTUyYjllNmRhNWY0MjNkYzIwZmM1NDM3MDdlNWRmNzAxZGYgbGVnYWN5LXRydW5rCiszOTEwOCAzMGIxMzQwMWM5MTI1NjQwODgzNDU4OTcxZThkNDM0MjQ1NTY3ZjMxIHJlbGVhc2UyNC1tYWludAorMzkxMDkgOWU0YmYyOWU2YzJmY2QzYThhZTQ3ZjYyYjQ5YWQ0MGI3NGU3ZDU3NyBsZWdhY3ktdHJ1bmsKKzM5MTEwIGQ3YzViZDU5Njk4ZDA2ODhmMDkwMTg3YTNjYzNkM2NjMzQ4Njg4MTMgbGVnYWN5LXRydW5rCiszOTExMSBlNmIwNzViZDc4NTVhZjU0YTU2NWRjMzFhNTljNDA3YjgwMzEwZmJhIGxlZ2FjeS10cnVuaworMzkxMTIgYjA1Y2MxMmEyMTc5ZjI5NDE3MzY1NDQxYjBkNGRjMWExZjZkOTNmMiByZWxlYXNlMjQtbWFpbnQKKzM5MTEzIGEyMDQzYWZmZDU0MzMwMjExNDViOTc5YmNjZjQ4NTM5OTU2M2I4NDkgbGVnYWN5LXRydW5rCiszOTExNCA1ZDk3N2Q3Y2MzMzU2OTcxNGRmMDczNTJhYzA1ZDViYjAwMjcwM2VmIHJlbGVhc2UyNC1tYWludAorMzkxMTUgMTgxODRkODJkYWVhYTE5YWI0ODg3NTg4MTA0YzhmZjk0OTMwZWVlNyBsZWdhY3ktdHJ1bmsKKzM5MTE2IDlkMWU0NjExMWQ5YTcwODI1ZGI0YzBiOTZjZGJiNTdlODdmYWYxOTYgcmVsZWFzZTI0LW1haW50CiszOTExNyBmOGYxNWU2YWVmM2E0YWE5MzgzMDFkZGY1MzNlNWQ4MTdmM2JmNDE5IGxlZ2FjeS10cnVuaworMzkxMTggOGY3ZTQ3YTBhYWNhYjZjODA1MjlhMGQ4NDdjOWE0ZDA4ODBlYTBjNCByZWxlYXNlMjQtbWFpbnQKKzM5MTE5IDY4MjY2ODAzYzAxMzRkNDM5OGIzOTU0MDRjZjAzMjhhYWEyNjQwMzkgbGVnYWN5LXRydW5rCiszOTEyMCBkMDdlOWMzN2JlYTA5ZTFiODBiMGM0NzYzZjRhYjQ0MDAzMjExODU3IHJlbGVhc2UyNC1tYWludAorMzkxMjEgMjEwY2EzODNhYmU3NjIwZDc4ZjQyMjM1ZDdmYTU5MDdjYWI1ZmUxZSBsZWdhY3ktdHJ1bmsKKzM5MTIyIDc4MDRiYmIyNjQ5MjhlZGMwNGYwZDI1Y2NiYWI3MTNjNjg3YjYyYTEgcmVsZWFzZTI0LW1haW50CiszOTEyMyA0NzQxODUwMjk0MmE4NWFiNmEzMTk1ZWJhODBlNjExNDY5YWVlYjIyIGxlZ2FjeS10cnVuaworMzkxMjQgMmY5Y2ZlY2EyNzk5NmNkZmZhMmM3MWUyNDUxMjM5ZDYzZmIxODI4MiByZWxlYXNlMjQtbWFpbnQKKzM5MTI1IGNkODc5Y2E4NDYyNDQ4NmRjMWRhNDg1NzAzZWY0NmYzNWJjNmZlN2IgbGVnYWN5LXRydW5rCiszOTEyNiA3MjZjOWJjNDljMDQ4YWFmMjFmZjkwMDliNmFiOTliZDNlZTBkM2JiIGxlZ2FjeS10cnVuaworMzkxMjcgNWRmMWM2OTJiYjQxNjY2NDRlYmMwZWQ5MTc3NmZiN2JmZWJjOTIyMSBsZWdhY3ktdHJ1bmsKKzM5MTI4IGUwMjA4N2FjNDc5MjY4MDE5NmYxOTI1MWY2YWQ2OGY3MmQ3OWEwZjIgbGVnYWN5LXRydW5rCiszOTEyOSAzMzQwNTM2NDM2ZjVhMGUyODI1NTA0MWE4ZDYzZmQ3Y2Y5ZjI0MzEzIHJlbGVhc2UyNC1tYWludAorMzkxMzAgYzU4ODg0MTM0MTJiOTRlYmNmYzA2ZTFjZTIzOGRiODk3NjZkZDU1NiBsZWdhY3ktdHJ1bmsKKzM5MTMxIGY5NGQ1YmZhZDA3OGY4MWJjMjU0ODY1MTQzOTQzNTVhM2E1ZWEyNDAgcmVsZWFzZTI0LW1haW50CiszOTEzMiBlMjYzNmQxMDhkN2QwOWE2NWQ4ZTk5NmZhYWQwMzEzMWVjYmY5YmE3IGxlZ2FjeS10cnVuaworMzkxMzMgODk3MTA4MDViYzNkZWZlODYyNGZlZjEyYWM1ZWQyNGUyYzQ3YWI4MiBsZWdhY3ktdHJ1bmsKKzM5MTM0IGQ2Yzg3NjFkN2YzMTQ3NWUwMWQ1ZDcxNWQ2MjllZmRjN2JkZGE5ZTYgbGVnYWN5LXRydW5rCiszOTEzNSA2NjZjMGVkNGZiOWQ0ODBlZWNjYjJjYmYxZTgzNTMzYTRlM2RmYTEwIGxlZ2FjeS10cnVuaworMzkxMzYgODU3ODcxYzcxYzNiYjkwNzZiMGIzOWUzN2RlZTYxMGVjM2RhZDNjMCBsZWdhY3ktdHJ1bmsKKzM5MTM3IGM4NTcwNzBlOTdlOGQxZTNhNzU0NDk0OGI4ZGZiNjdkODFjOTQzZTQgbGVnYWN5LXRydW5rCiszOTEzOCBiM2NiNjQyODlkMmJlMjQ3NjgwZmMyYjFhZDNmZTYwYTE4ZGQ4NGU4IGFzdC1icmFuY2gKKzM5MTM5IDI3NjBhMmQ5OTIzOGYxMjFjMTk0MmYwNzcxYjE4ZmIyNzkyMzU5YTkgYXN0LWJyYW5jaAorMzkxNDAgNWIyM2E1ZGNjNmEzZmYyYjZmODhlNmVhMDliMjRlZDY0MmJlMzcwMiBsZWdhY3ktdHJ1bmsKKzM5MTQxIGZkY2RlNTlkZmExYmQ4OWYyNmZmMTNjYjVhM2QwZDE2YTZiYjM1NmMgbGVnYWN5LXRydW5rCiszOTE0MiA3M2U2Y2I1ZjQwMzllNmMwZGE1OTVlODNlZDI5OWE3ZjU2NzVhNjQwIGxlZ2FjeS10cnVuaworMzkxNDMgM2I1ZjU0NjZmMTA1ZWFhYzJjN2MzOTViZDUxMjQ2YjJiOWFlZjFiNyBsZWdhY3ktdHJ1bmsKKzM5MTQ0IDczNDkyNWI0NmJhN2U0N2RmN2I4ZWE4N2E1ZTc2ZWEyYzU5MTg0N2EgcmVsZWFzZTI0LW1haW50CiszOTE0NSA5MjQxMjE4OTkyYzFlMDY3MTZiM2ZmODExYWI0MGUzZTIxNWMxYzdkIHJlbGVhc2UyNC1tYWludAorMzkxNDYgYjg2MzkyZjU1YjU5N2VmNDMzNzYwMTdjOTgwYTIxZDY0NDBkYWE1ZSBsZWdhY3ktdHJ1bmsKKzM5MTQ3IGI4YzkwNzZkMTc0ZTkyYzUzZGEwMWU4MjYxNDg5MTEyYjg0ZTI2MzEgbGVnYWN5LXRydW5rCiszOTE0OCA1OGQ1YTZjN2I2MjkwZmMwMDg4Y2UxOTY4NGNjNzkzYzNlMTA5YjM3IHJlbGVhc2UyNC1tYWludAorMzkxNDkgNGJmOTllZjA2ZDM4ZGIzNjYxNzBhYTRkMDdmOWMxNzk1ZDM5NzY2ZiBsZWdhY3ktdHJ1bmsKKzM5MTUwIDMxZDk1NWFiMjIzMmVjOWVmNjFjYTYyN2IwZjc0NDkxZWRlZmJmZTkgbGVnYWN5LXRydW5rCiszOTE1MSA5YzE4OGZmNjMxMzE5NzZjMjhkNGZkODc3NWNiNDAzODkyMzQ0NWMzIGFzdC1icmFuY2gKKzM5MTUyIDgxMjdhNTVhNTdjYjdiZDc4MGE1NGQxNDExNGQxODc3YmMzYjY0N2UgYXN0LWJyYW5jaAorMzkxNTMgOWVjZjAzZGZkNWQ2MTc3YjIzZDYwZmUyYzdkMDVhN2RhZDY1ZmMwYyBhc3QtYnJhbmNoCiszOTE1NCBkMjU2NTZhYjNlMWQwM2FlODBiYzM1OWE2MzEzYjBkNTcwMzRhZGY4IGFzdC1icmFuY2gKKzM5MTU1IGFhMmYyZmFlZjdkMjkxZGE3ZGMwNDc2ZjZiY2U3ZThkYWIyY2MzM2UgYXN0LWJyYW5jaAorMzkxNTYgOGQwZDM5NWMyMTFlZDc5NmE5MmFhMWUwM2Q5NDU4N2MzYzNiZDBkNyByZWxlYXNlMjQtbWFpbnQKKzM5MTU3IGUwNTk4OTgzZjBhNWY2MjM5Nzg3MDlhODZiYTIxNjI1MjVlMDc4NDggbGVnYWN5LXRydW5rCiszOTE1OCBlMWY3ZmNhNzg0ZjNhNmZhMzQ1MjI3Y2MyMTk2NTZjMWI2NDgyNjQzIHJlbGVhc2UyNC1tYWludAorMzkxNTkgZGRkNzhlYTM1MTljNTFhY2JhYWI4NDczYWI1OGU0MTczOTdkMjQzYSBsZWdhY3ktdHJ1bmsKKzM5MTYwIDk1NWQ0YmFkZGJmYzg2NTlhMjg3ZDZlMTg3MThjODY3ZmJjYjQ5MmQgbGVnYWN5LXRydW5rCiszOTE2MSAyMTRjOTZlNTQ5MDUwYmFjM2FhOWEwYmY2OGE2ZWRmMzI0ODdhYzQ3IHJlbGVhc2UyNC1tYWludAorMzkxNjIgYjY3MDBiM2RlNjk1NWQ1MWQyYjYwOWQ0ZWYzNDFmZmE2MTNlMDIwMSBsZWdhY3ktdHJ1bmsKKzM5MTYzIGRiNzY4MzEyOTlkMDAwODVmOWRhZDcyNGQzMjJjMTFiYTc0MGIzMTUgcmVsZWFzZTI0LW1haW50CiszOTE2NCAzNTU5MmJhZDM0NWJkZWQ3YTQ5Yzk5YWE5NTMwMDhjMDU3YmFjYmI5IGxlZ2FjeS10cnVuaworMzkxNjUgNzYzZTg1YjEwN2I0MGRiYmE5NTY1MWNjNWRhNDIwZTY0ZTgzODUxOCBsZWdhY3ktdHJ1bmsKKzM5MTY2IDU3YTRkMjc0NjYzMjM4NDZkOTczYTVmYTBhODA3NmNjZWZkMDgxZjIgcmVsZWFzZTI0LW1haW50CiszOTE2NyA4NDdlNThkZGI3ZDllZTZmOGQ4YzcyYmViMmVkNTExYzBhN2ZiZTFiIGxlZ2FjeS10cnVuaworMzkxNjggYWNlN2Q4MzYwODNmZTc0MTAxNzNlNjNjZTA4YmY0NjAxYWI1ZjAwNiBsZWdhY3ktdHJ1bmsKKzM5MTY5IGY5YzVhZTY5YzE2ZWUyYjVhMWQyOGRkMDNiNjcyMDFiZGZlYTFlYjIgbGVnYWN5LXRydW5rCiszOTE3MCBkMGM2OTY1YjUyNWVjYmFlZTg3YjBlYjNlMTZiN2Y3NTdkNDk3ZjkyIGxlZ2FjeS10cnVuaworMzkxNzEgYzA4OGVjYTkwYTYzNTA5MjE0YWNjNDk4MmM4NmE5ZTJmYjEyMTMyOSBsZWdhY3ktdHJ1bmsKKzM5MTcyIDUyNmZhYWFiMDBlYjk1MTlkZmU3ZjBkOWY5OGVjZWNiYzRlYmJjYzIgbGVnYWN5LXRydW5rCiszOTE3MyAxZmRiY2EzNTE0OTg5ZDgxN2QyZmQ0OTJkMGQ0YTIzY2YyYmM1ZDQ4IGFzdC1icmFuY2gKKzM5MTc0IGEwYzMxYjcwYmQxODBmNzhmNjgzODVhMmVlNzE2MTVjYWQyZmY2M2QgYXN0LWJyYW5jaAorMzkxNzUgMDllODhmZDdkNTVhNjhhMWYxMGRhNGFlNzU1YzQwN2I5Y2U5Mzc4YSBsZWdhY3ktdHJ1bmsKKzM5MTc2IGI3MzVlYjQyNjdlOGY5NGNhZDkwMTBkMTMzZjcyNmM0NDEyOGJjNGEgcmVsZWFzZTI0LW1haW50CiszOTE3NyA3YjY0MzZkMjM0NGQxZjQ1ZmI2Y2YzZmNlNzA4OGJmMTliMTczNWNhIGxlZ2FjeS10cnVuaworMzkxNzggNzRjMzcxNzY2MTIxYzgxNjNlMDU5NjRhY2YxOTZiYzBhYWVlNjQxYiByZWxlYXNlMjQtbWFpbnQKKzM5MTc5IGNkNTk1YTY5ZGNhNWNhMmQ5NDg2NmEyMTgwNWI5NmMxMGJiNTdhZmYgbGVnYWN5LXRydW5rCiszOTE4MCA5MTlmMmQxMzE5ODJiOGIxNWRlOWYwNDUyMjg1YTQxZWMxNDc2M2EwIHJlbGVhc2UyNC1tYWludAorMzkxODEgNTU4MTYzY2I3MGE5NjgyZjM3Mzk3ZWZiZDBlYzIwOGE2MWFhMjRmYyByZWxlYXNlMjQtbWFpbnQKKzM5MTgyIDYyZjgxOTQ4MzI5MzliZTE0ZjJiZWRhN2FiNGQ3ZjIyYmUzNGJhNmYgbGVnYWN5LXRydW5rCiszOTE4MyAxOTQ5NzIyZjM3ODc0ZDIzNjc5MWU1NDQyMGU5YWUwNjc2ZjJjNWJiIGxlZ2FjeS10cnVuaworMzkxODQgODc1Njk3M2E2Yjk5MTI0YzljZDA5NWViYjE3MmMyNmQxMmZmNjAzMSByZWxlYXNlMjQtbWFpbnQKKzM5MTg1IGM2YjY5YzZkMDFhMzc3ZDRjOTM1NWM2MTJjZTYyMjRjZmJlODM0ZTggcmVsZWFzZTI0LW1haW50CiszOTE4NiA5NWE5ZmY0N2IxMWQwMzk5Mjk3OTkzOTE1ODZmMmZlNjNlZjJlMWJiIGxlZ2FjeS10cnVuaworMzkxODcgYTQ5OGRjYWFlOWQ3ODI2OWI0NDUwYWU4OGE1ZTlkZTJhOTY5YmNlZCBsZWdhY3ktdHJ1bmsKKzM5MTg4IDAyN2UwMDBkMWY2ZGYwZTA0MTEzZmFhMmNjYzQ0YzFjOTE1Mjc5OGEgcmVsZWFzZTI0LW1haW50CiszOTE4OSAzMmRlN2E4ZDg4NmNjZGY0YzU5ZWFmYzVlMmQxN2U2NTczZTMzNTRmIGxlZ2FjeS10cnVuaworMzkxOTAgMDdiMDFiMzM0MGY5YzI1NDI2YjljMjBiNDI3MGI4M2Y5YmY2ZTc1NyBhc3QtYnJhbmNoCiszOTE5MSAzYTZlZWYzMWU5NWFlMjU1MDdmYzMwMzEyMzEyZjQzYTEzNWE4NTQ2IGFzdC1icmFuY2gKKzM5MTkyIGQ2MWVmY2Q4N2M4ZTM4MzZjYzY1MWYyOGEzM2QxNzY1ZTY0ZDY3ZGYgbGVnYWN5LXRydW5rCiszOTE5MyBkNDc2ZTU4Y2M3ZTc0NWM5YzBiYTQ2MzkwMzY0ZjM5MzUzNTk2N2RlIHJlbGVhc2UyNC1tYWludAorMzkxOTQgOTJiMzdjNzFmOTM1ZWFiYzQ2MWMwNzBmMmI4MDJmOTQ4YzQzOTlkMSBsZWdhY3ktdHJ1bmsKKzM5MTk1IDc0ZjgyMDJkODMxNTAxMzdjOGMzOWVlMTEwYWQ5MWFlOTU0NGQzZjIgcmVsZWFzZTI0LW1haW50CiszOTE5NiBjNTJjZDFmZDk0ZmM1NGJiODRlZDI1NmRkMmRiZTMyZmMyYjhhZjViIGxlZ2FjeS10cnVuaworMzkxOTcgM2Y4NmY4Y2JhMDVlZDU2ODkwMjg3MWExNzc2ZDNkZTE2YWU3NGE5NCByZWxlYXNlMjQtbWFpbnQKKzM5MTk4IDdlMWMxZDZkZWExYzMxNjlhM2IwZTFhODRhZDM1OTY0ODBkY2ExYzEgbGVnYWN5LXRydW5rCiszOTE5OSA5NjhkOTQyMmFmNzg3ZmU2ZmYxYTdmMzMwMTQ2ODk1ZjgzYjY2YzE0IHJlbGVhc2UyNC1tYWludAorMzkyMDAgNzI4ZjgyYmViYzNlYmQ2NjNmMjM3MjE4ZDVmZDcyZDM5YTU1NDdmMyBsZWdhY3ktdHJ1bmsKKzM5MjAxIDg3OWM4NzZiYzU3YTM4OTgzNjNmNWE3MWJmOGQwNzE2MzE2YzVmZWIgcmVsZWFzZTI0LW1haW50CiszOTIwMiBiNDMxZWQ3YmNkYzIyNTBhZjE2ZDkwMzQ1MDY4ZmQ4NjRiMWIxM2M0IGxlZ2FjeS10cnVuaworMzkyMDMgODYwZTBmZDJmZWU4ZWY2OWI5NGFjYTFmMDcyNmRmNzA1MmFmOThlYyByZWxlYXNlMjQtbWFpbnQKKzM5MjA0IGFlZWMzOWZlZDhjNWMxNmY3NjVhYzM5NDI1ZDFmMjFmNjg3MjExZmEgbGVnYWN5LXRydW5rCiszOTIwNSBmYWFkMDk2ZGVjZjZhYjRkMWU0ZmFlYjEwZTM4Nzg0NjliMTc4M2ExIGxlZ2FjeS10cnVuaworMzkyMDYgOWY0MzY1NTEyMzI2MDI0MWUwMjY1YTM1NjZlN2Q2ZWJmNGFiNDAzNyByZWxlYXNlMjQtbWFpbnQKKzM5MjA3IDJiMTE3ZWIxODk0NGQyMjQ0OWNjYmMwOWI2MjdmOTM0ZDc0ZDYyOTggbGVnYWN5LXRydW5rCiszOTIwOCBlNzg5NzAzZmU0YmVlNGFhMjI1Njg3MmY4YWQ3YmI3ZWZmODU5MmNiIHJlbGVhc2UyNC1tYWludAorMzkyMDkgYTkxN2UyYzQ3NmY2NjE4ODEyZGM1OTMzZDE3YWQ0Mjk2NzI0NTQ1NSByZWxlYXNlMjQtbWFpbnQKKzM5MjEwIDFhYzJjM2ExYzNhYzNkMzlkNGQ3ZGRjZjBlYzAxNTY2MGI4OGE3NzUgbGVnYWN5LXRydW5rCiszOTIxMSA5ZDgzOGRkOTY3YjJiMjJhZmYxZjMzMTc5ZjRkNTVkZGJlN2U4NGQ0IHJlbGVhc2UyNC1tYWludAorMzkyMTIgYmU2YWIzZDg2YzI5MjVhZDhlZDA3ZTZiZDEwODYyYWQxNmI4MzljMCByZWxlYXNlMjQtbWFpbnQKKzM5MjEzIDUzYWI1MTYzYzFhYWExOTUzZWJiMWFkMWQxZTdkMTFiZjdhZDA2NjggcmVsZWFzZTI0LW1haW50CiszOTIxNCA0YWRiZDMzMWQzMzUyZWI1ZmFmZDcyZmNiNTg5ZTUxMmY0YjM1ZGIyIGxlZ2FjeS10cnVuaworMzkyMTUgNmViYzQyM2YyZDgxY2U5MGE0NDg5MGU2ZmJmNWEyOGRkY2E1MTVmNiBsZWdhY3ktdHJ1bmsKKzM5MjE2IDk3MDdiYTI3ODg5NDFhMDNlM2Q2OTJiZjRiM2I1ODYwMjZhODQ2MmEgcmVsZWFzZTI0LW1haW50CiszOTIxNyA1MmFjYmI4NTg0ZWFlYjQ2MWE3OTY5YTBlODBjN2Y4YTgyMzg5OTRjIGxlZ2FjeS10cnVuaworMzkyMTggY2E2NmExNmMzNzlkYzIxMDczOWMxMDJkNWMwNTc3MWIxMGVkZDZmMSByZWxlYXNlMjQtbWFpbnQKKzM5MjE5IDQyY2ZlNDYwM2MzMGMwMDE3MjkzNWM2Zjk5YzhjOWM1OWExMzdjYTAgbGVnYWN5LXRydW5rCiszOTIyMCBlZGYyNWMxYTRmNjA4YzRkYjM4OTU1ZTk3ZTYyZWUyNDJkZjg5OTc2IHJlbGVhc2UyNC1tYWludAorMzkyMjEgZjhlNjBhM2YzNDQwOWU5ZjgxZmJhY2M1Mjc2ZjU2NzkwZjU1ZmNhNyBsZWdhY3ktdHJ1bmsKKzM5MjIyIGM4YmQzYjUyMzBjNDI1Y2E0ODViZDg0NjVmYzk3YjllNGVhMzBhNGUgbGVnYWN5LXRydW5rCiszOTIyMyBiNGU1NzAzMzdiZjQ3N2UyMzZkN2QzZjZjYTI1YzkwMzk1MjU5YzUyIGFzdC1icmFuY2gKKzM5MjI0IDMxNDQ3YWRiMWIzNWVjMGJhMDkzNDgyOWFjZGE5YmNjMDQzNTMzZjYgYXN0LWJyYW5jaAorMzkyMjUgMTc3NGZlN2VjMGM3YzcwZDg1MDlhYzM2NWI4YjU0OTA3ODlhZjEyYSBsZWdhY3ktdHJ1bmsKKzM5MjI2IDg1YTM1Zjg3MDFiM2JiNjlhMTU3Y2QwZTI1MWY0NmYzMWRkMWVmYTAgYXN0LWJyYW5jaAorMzkyMjcgMjk4ZDNmYTRlYzM5ZGQxODAyZWY3OWMzYTM3Yjk0MmMzMDkxZGUzNCBsZWdhY3ktdHJ1bmsKKzM5MjI4IDJmZWVkZjg1MDc4OWQwNzUzZTJmMWRkNDBhYjkyYjViNjQxZWJiYWEgbGVnYWN5LXRydW5rCiszOTIyOSA2MzZlNWYxZGE3MzNkN2I3NDdiZGE5Yzc3M2Q0Njc1NGUxNzM3NWUyIGxlZ2FjeS10cnVuaworMzkyMzAgN2E1MGJkODJkZjI1ZjJiZTllM2ZhYWE4MjIyZTdkNzc1YjVmZmNmNSBsZWdhY3ktdHJ1bmsKKzM5MjMxIDM0OWEwZmQ1OThlMDc5ZDIxN2NlZGU5ZDJiODI2MzhiZGE2NjVkMGIgcmVsZWFzZTI0LW1haW50CiszOTIzMiBjNmMyNGZmMWUzZGE1OTI4YWMxZjgwYzIyODg1MTI3MmE0ODQwMTQ4IGxlZ2FjeS10cnVuaworMzkyMzMgMzVhNjk4MzAyYzYzYzViMWYwNjg1OWE3OGFkODcxYzk4MzhjNGIxNiBsZWdhY3ktdHJ1bmsKKzM5MjM0IDhmZmZiNGM5NTQ4N2VlMjM3MzA4N2I3MjM2OGY5OTBkMWI5YzM0M2UgbGVnYWN5LXRydW5rCiszOTIzNSAzZjFiNDhmOWZmMGRhOWYzNDdjZDAxMTU0NjE4YWM0ZThjOTUyMjQyIGxlZ2FjeS10cnVuaworMzkyMzYgZjMwZWJkYzNiZGRmNzliMWZjYmI2MzdmN2YyMWM4OGNlY2EwMWIxZCBsZWdhY3ktdHJ1bmsKKzM5MjM3IGQ5MTk2NGY1ZmUwZDZiY2IwZDJhZTQwMDI0ZTI3NGQwZTNhMmE3MWMgbGVnYWN5LXRydW5rCiszOTIzOCAyNmJmNmMyN2U5Y2VhNWVmNTM3ZTg2ZWVkYWZiMWM1OTYxZGUwNTAxIGxlZ2FjeS10cnVuaworMzkyMzkgYjJmZTVmOGZjZmRkYzg0YjFhMDM0YzQyNDViNzg0MmMzMjNhN2Y3MyBsZWdhY3ktdHJ1bmsKKzM5MjQwIDVhOTEzNGZlNTcwOTA2MGEyM2FhMjdiZTZhMjk1OGU1ZWU3OWJhOTMgbGVnYWN5LXRydW5rCiszOTI0MSAwOTkxMjhmZmFiZTYzMTlhMDA3ZmZkNDIyMjM3YjIxNDA2YzZkYjgzIGxlZ2FjeS10cnVuaworMzkyNDIgMzA4NjYyMGRiNDZiOTdmYzJkMDgyMDE3ZTdiZmNjZjc4NzI0NDljNiBsZWdhY3ktdHJ1bmsKKzM5MjQzIGI0OGYwYjJlMGRmNjA5NWRmNTljZjhkODkwM2JhNWJmYjZlOWRlYTkgbGVnYWN5LXRydW5rCiszOTI0NCBiMzYzYTI4ZWQyNGY5YjEwM2M1NGY5NGEwOTA3NDA4ZWVhNmQ1NTdlIHJlbGVhc2UyNC1tYWludAorMzkyNDUgYWJkZTIxN2M1ZDkwZDFhNjUxZTY1NGJhY2M4OWRlY2U5NmJiNmI0YiBsZWdhY3ktdHJ1bmsKKzM5MjQ2IDM3NjAwMjMzZGI3Njg4MWM4Zjg5OTc0ZWRmYmE4Y2Y4NGNmNTAzODUgbGVnYWN5LXRydW5rCiszOTI0NyA0NTVjM2I3NjVkYzNhOGYxYjkxYzhiMTk4ZTFjYjU3ZWYzMTdjMjcwIGxlZ2FjeS10cnVuaworMzkyNDggMjU5MGZhMGVjN2U4ODFiMjMwOGNhMGUxOTM0YzVhYzQ0YzJkZTk0YyByZWxlYXNlMjQtbWFpbnQKKzM5MjQ5IGQ1MzNmMDhhOWRmYWFjNzNmN2YzZGFmZTYxMzAwM2RmYzJlYTM1ZjYgbGVnYWN5LXRydW5rCiszOTI1MCA1ZmU5Y2VlY2ExMTE4ODE0YzQ0ZjRhNjZkZTFlYmIxMTg2Zjk1ZDYwIGxlZ2FjeS10cnVuaworMzkyNTEgZjM5OTZhYTc4Y2RlYTViNTk2ZjI5ZGExNjE2OTM2MGI2NTUwNzFkNyBsZWdhY3ktdHJ1bmsKKzM5MjUyIDU0MWJmYmIxMDAzMGJmZmFhY2NjZjI2MDRjOTUxNzY2MjlhOWUxZjMgbGVnYWN5LXRydW5rCiszOTI1MyA4YWE5YmQ4MDI4NmIyMjAxZTc1ZjFhMzczMjQxM2RjMTdmNGIzNDczIGxlZ2FjeS10cnVuaworMzkyNTQgYTY4OWEyMGY1OGY3NjNhZGEwMzJkYzdjOWRhY2ZkMzI1ZWY5ZjZjZSBsZWdhY3ktdHJ1bmsKKzM5MjU1IDFkODYxMWQ4NTU1YzVjYWZlMDBjOGRlZmEwNmZjMzE4YTkxYzYxZWYgcmVsZWFzZTI0LW1haW50CiszOTI1NiBhNmNiZmNkMGU2OTFiYTBiMWM1YTU3YzllNGUwY2I5OWY5OGQ2ZTY5IGxlZ2FjeS10cnVuaworMzkyNTcgY2UwOTk1ZTAxZDNjNzQ1NzQzY2VhNzZlYmE0OWJhYTQ2ZTljNDUwZSBsZWdhY3ktdHJ1bmsKKzM5MjU4IGZkMDA0NjE4NjFjOTA3MDY0NWUyNmI2OWZmOWY5MDJhMTg3NmNmMDIgbGVnYWN5LXRydW5rCiszOTI1OSAyNjEyZTk2YjE3YmJjNWJjYWFjNzJhZWExMGYxZGYyMWU2MDUzMmI0IGxlZ2FjeS10cnVuaworMzkyNjAgYmQ5YWYyNjBlOTI3OTQyYWY1ZTBkOTgwMjMyNzNhMzFlOGIzNjcxZiBsZWdhY3ktdHJ1bmsKKzM5MjYxIGZhOTVmZTkxY2RmNzYwYmUzZGIxMjA0MmM3YTc5ZGM1ZjEyNzE4MjUgbGVnYWN5LXRydW5rCiszOTI2MiBiZGNiMDFhOWI2MGM1NzlmNzE2YWIwNGI4ODQ0NjNiNzQ4YWQwN2YzIGxlZ2FjeS10cnVuaworMzkyNjMgYjkyYTg1YzNiZGM4MTZhYWY5Mjc3Y2U0ZGQ5ZjJkZTNiMjg1YjU4YSByZWxlYXNlMjQtbWFpbnQKKzM5MjY0IDNmYTU4ZTViZGRmYjI5YTVjMDQwZjIyZDA1ODY0MjNkMWUxMjA1NWUgbGVnYWN5LXRydW5rCiszOTI2NSAxN2UwNDQ0ZGQxMmRhZWZlMWNkZWNkODE4ZWRhNjlmNDIwYjNhOTkyIHJlbGVhc2UyNC1tYWludAorMzkyNjYgYWM5YzBlZTE5OWZjOTZlZWExZTRiYzNiMzIyMDhlMDgzNGYxZTAwYiBsZWdhY3ktdHJ1bmsKKzM5MjY3IDMwOTQ4NDNlN2I5MmNiMTAzYWUwZmJlMWIzYjQ2NDhkYmVmMmZjNDYgbGVnYWN5LXRydW5rCiszOTI2OCA2YWE3M2ExZjBjYmE4NDU0MDNjN2Y4MTY2OWY0NDRkMzI5NmQ1YzQzIGxlZ2FjeS10cnVuaworMzkyNjkgMGVmNjRhOTNmM2YyNWUwZDYzODFlODMzODMwMDhiN2NiNjlmY2M0YSBsZWdhY3ktdHJ1bmsKKzM5MjcwIDMwMGYzYWFmODUzZmI4ODhhNGRmYzQzZWZkYzYyOWQxYjY4MTJmMDcgbGVnYWN5LXRydW5rCiszOTI3MSAwNDRhNWNhMmNkYjgyY2RmNjdmZTdhNTZjMzQ2ZmRkOGIxODM1YjgwIHJlbGVhc2UyNC1tYWludAorMzkyNzIgZWYxMWNiYzA4ZGFiYTBmZGE0OTBjMTk2NzM4OWU4ZGQ1NWNkM2I5MyBsZWdhY3ktdHJ1bmsKKzM5MjczIGZkMDJiODRmYjJkYjIyOWJlOGQ3OGJjZTJkOWNkZDg2YzY0MWEwZjIgbGVnYWN5LXRydW5rCiszOTI3NCBkYzhhZTQ5OWVmY2YzOTM4Njk3MTQ4YTZmNDgzMzI1ZjExMTdkZTFkIHJlbGVhc2UyNC1tYWludAorMzkyNzUgNzI1NjcxZGI3NzlhNjgxODJiZDI2YzA3YzBmODg2ZWQ3NWI3NjhiMiBsZWdhY3ktdHJ1bmsKKzM5Mjc2IDliMjIyN2E2MGRhZWNkZjU5MmQ4ZDFlZmI0ZDA3MjFjNjgzNTE2YjMgbGVnYWN5LXRydW5rCiszOTI3NyA1MDNjMzY5NzU3OGY4YzllNDBkMmRlMjg0YTg5YzAzYmJmZWM2MjA5IHJlbGVhc2UyNC1tYWludAorMzkyNzggZGVmNDM0ZTJhODFhZmJkYzRiMDA0MmQ0Y2Q3OTlkODQzOTUwNzliZSBsZWdhY3ktdHJ1bmsKKzM5Mjc5IGQ2NTc1Y2QxYWI2N2ZjNjYzMmIwZTI1NWQ2NDQ5ZjkyNTBlMDk0ZTQgbGVnYWN5LXRydW5rCiszOTI4MCAwMjhlOTRhNmVmYzU2YTk4NzdiYjdmODAwMTc5NTM4NjcwYzMzNGNkIGxlZ2FjeS10cnVuaworMzkyODEgYjhjNWQyMjIyZWQ3NTgzYmRlMTA3NTMyOGExMjNiMWVkNDdmMWZhNSByZWxlYXNlMjQtbWFpbnQKKzM5MjgyIGY2YjQ2MmQyYTNhMzZjNTM2MzY3NDNlYmNiMWNiZDA1ODgwNGU3ZjIgbGVnYWN5LXRydW5rCiszOTI4MyAzYzNhNDVhOTY1NzcyMWYwY2ExMDY2MzU0Y2YxOTY1OTg2ZWM1MjM1IGxlZ2FjeS10cnVuaworMzkyODQgZGQ0MzU3YTVkYTdjYjdkNzA0Nzk3YmI5ZmIzM2E1ZjY3YTIzZjVjZCByZWxlYXNlMjQtbWFpbnQKKzM5Mjg1IGM1NDk5ZjI1Njc4NmIyODIxZjgyZjE3MzFlM2FiZDQ1Y2I0OTdmOWEgcmVsZWFzZTI0LW1haW50CiszOTI4NiA3MDBmMDgzNjkwOTI3ODU4MjBjOGUzNmQ4ZDIzZTVhNGMzNzI1YjEwIGxlZ2FjeS10cnVuaworMzkyODcgZGQyMzU3OTUzZmUzODcxNDg0ZDg4YjBjZjQ3NGM4NmU4NDAwZTk4ZCBsZWdhY3ktdHJ1bmsKKzM5Mjg4IDM5ODI1Y2EzNDY0NzNlZDU2ODA1NDY5NDVkMThiNzFjYmYxOWJkYTkgbGVnYWN5LXRydW5rCiszOTI4OSAyZjFiZjY0YjgzN2VmNWY0OWUxY2Y0NmUzNWU3ZDJmMjQzMWRjNWIxIGxlZ2FjeS10cnVuaworMzkyOTAgNmYxY2QyOGQ2Yjg3NTAxMmQwMzQwZTUwNjMyYWRmYTMzYmFkYWQwMCBsZWdhY3ktdHJ1bmsKKzM5MjkxIDcyOWJlOGNjMDA5OGJmNWUxN2VhNjNmMWMzYjVmMzJjMDJjOWU3MzQgbGVnYWN5LXRydW5rCiszOTI5MiBjMWQyMmQ0YzA4NjU1MjgwY2UzN2UzYjUxYTcwNDI2N2RjYWQzZGFlIGxlZ2FjeS10cnVuaworMzkyOTMgY2Q4ZDhlNjM0YWI4MDZlMDEwZTZiNzY5NmFkMGE4MTQ0NmIwMTJhZiBsZWdhY3ktdHJ1bmsKKzM5Mjk0IGU4ODA2MDk0ZDY0NDhkZmYwZGUxZjhiZDZkZjE5ZTAwNmU2ZmNhMDAgbGVnYWN5LXRydW5rCiszOTI5NSBkZTJkODRlMDQ0N2VlZWQ4NjFiNTRhOWY1ZTM1NjkxNGVkYTQ4NzIxIGxlZ2FjeS10cnVuaworMzkyOTYgNGZkMDM4NzM3ZTIxZDJhY2I4ZWYxMDA4ZjcxNzVmN2M1ZTg1YWZlZCByZWxlYXNlMjQtbWFpbnQKKzM5Mjk3IDNhMmZmZjY5MDU1OGRjMDQzYmUyYmUzNDMxMjNlMmVhN2RiY2I3ODEgbGVnYWN5LXRydW5rCiszOTI5OCA4Nzc5MTZkNjMyZTA3MDY5Yjg1Nzc1N2JlOGU1MDVlMWRiY2VmMTI2IGxlZ2FjeS10cnVuaworMzkyOTkgMjBiMThiN2Y4MzA5NTc4ZTBjNTAyOWMwNmE4MjlhOTQyMTI0MmQ5YSByZWxlYXNlMjQtbWFpbnQKKzM5MzAwIGM1YmY1Njg1MjY3YjhlOGRhNjkyOTYxMGI5YjQxOWNmMTc4Mzc4ODYgbGVnYWN5LXRydW5rCiszOTMwMSBkN2YzOWU2MjA4YmE5YWM4ODVhNDhhNmNjMGZiYzVlNTIwZDBlMjdjIGxlZ2FjeS10cnVuaworMzkzMDIgNjYwNTdkNTUwNjI4YWU3NjViYzcyMjlhZWE4OWY1NjNkYTNlMGQ5MiBsZWdhY3ktdHJ1bmsKKzM5MzAzIDUwMjgzYTQ0MTdkOTg4NzBmOGM5YmNmOWI5Njg1MWE5YTY5MTJlYmIgbGVnYWN5LXRydW5rCiszOTMwNCBmMjA2OTE5NTc1NzgxMTMzOGQxZTIwMzU3OGRkNDE1ZjUxNWZhMjU4IHJlbGVhc2UyNC1tYWludAorMzkzMDUgYWViODU4MGExYWY3NDg5ODg3MmNmMWVhZmUyY2FhYTFkMGVkNDk3ZSBsZWdhY3ktdHJ1bmsKKzM5MzA2IDhiMDdkNzMxYmU2MDNkZWQ0ODIzNDgxYjY1ZTE4OGIyMmQxZWMyZjMgcmVsZWFzZTI0LW1haW50CiszOTMwNyAzZWE4ZjU4YThjOGVjNjQzNGYwNGZhZWU4NjY3NWE4ZmVkOTE5YWZkIGxlZ2FjeS10cnVuaworMzkzMDggNGU1ODg3MjVjM2Q3NThlN2QxMWYzMjExZTkzZGUxMmI3MzM4MWFiYiByZWxlYXNlMjQtbWFpbnQKKzM5MzA5IGNkZTI3NzgyYTE2OTJhZDQxY2JkMTcxZjJhYTkyZjQ2YWIwMzhkNzcgbGVnYWN5LXRydW5rCiszOTMxMCBmNTcxM2UzMDM4MGM0MzZiYThkZTEyYThhNmY0ODUxZDY5NjM1MDg1IHJlbGVhc2UyNC1tYWludAorMzkzMTEgN2Y5YTQzMGI4Y2U3MWVjOTdhNzhkY2M3Mzc2NjQwZmNiMzU2OWM3OSBsZWdhY3ktdHJ1bmsKKzM5MzEyIGNlMTI0NTEyMjBiNDBhOTI3YjYyZmUzN2I0ZTI0YjMzYmNlYTEwZTQgcmVsZWFzZTI0LW1haW50CiszOTMxMyA3NmIyNzIyODA2YWJjNWQ3OTUzY2FkODllNTI3Y2I4Yjg0YWE5Njc2IGxlZ2FjeS10cnVuaworMzkzMTQgMDg0ZDQyZGY3YmFkNGU5NDAzOTdjNmNiYjNhNjk4MDliYmRkOWM5ZCByZWxlYXNlMjQtbWFpbnQKKzM5MzE1IDc5N2Q4MmVlYzYyNTIxYjZhNjhkZjlkMzZkOGIyOTI0YzZjMmE0YmUgbGVnYWN5LXRydW5rCiszOTMxNiA2MjQ5MThlMWMxYjJlZmVlOWU0YjdiZWUzMWRkYjgyMjEyZDExYjMzIGxlZ2FjeS10cnVuaworMzkzMTcgYTQ2NzMyNTcxZjJlOGYwNWVkY2Q1YmJhNzk2ZGY5MjVjOGVhNjQ1MSBhc3QtYnJhbmNoCiszOTMxOCBmODRjZjg1MzQ2NGFhYWE2N2IzMWIzZDE0YjNmNTlmYzRmMGZlN2QwIGFzdC1icmFuY2gKKzM5MzE5IDdjMTRjN2Q4YjM5NmZmNjExZGU5Nzk0MjNlZWYwNzU2MDJhNjc1NWQgYXN0LWJyYW5jaAorMzkzMjAgNDY4MDBmMmFkMzA4YTQ4ODg3YWVhNGUyYmVmYTY3ZDhkY2ZjZmZlZiBhc3QtYnJhbmNoCiszOTMyMSAwMDE0NTk2Yjg0MGM2Y2ZkYmU4ZDU2NmIzODA0NWYyODhiNWRjYWYzIGFzdC1icmFuY2gKKzM5MzIyIGI0NjNiYjQ4MjU5NDliZDQyNjEwYTVmZjM4ZjczYjZkOTBkZGNmOWYgYXN0LWJyYW5jaAorMzkzMjMgZTdlZDBlNmFlZDJmMjczOTQ0YzMxN2VlYjM2ZDE3Yjc2MGIyYjhlNiBsZWdhY3ktdHJ1bmsKKzM5MzI0IDQ0OGM2ZmJmZjY0MTMxMjJhNTdlNWNlMjA2YzBmM2IwMDNhMzYzODYgcmVsZWFzZTI0LW1haW50CiszOTMyNSA5MzMwMDgwYTNkNDE3NThlMjZhMzZmYzdjM2JiODVmNjUyM2FiYzUwIGxlZ2FjeS10cnVuaworMzkzMjYgOTI2MTY5ZmRlNWU2MzNmMWUyYmE4ODI3ZTY1Y2MzY2YwYjAzZTRjYyBhc3QtYnJhbmNoCiszOTMyNyBmZGViNGE4YmNiNGUyNTA5OWEwMzhhNzcwY2ZhODVhMDJlZTlmZDU5IGFzdC1icmFuY2gKKzM5MzI4IDQzMjExYmUwZGU0MTVmZGExYmQ3YzZhM2Y5YWQ5MDBlOWJlYTYxZjAgbGVnYWN5LXRydW5rCiszOTMyOSBkNjgyNzkwZDVkYjBlMjRhYjMzN2RiYzJmNzUzYmIxZjdmMmJiMjBkIHJlbGVhc2UyNC1tYWludAorMzkzMzAgMGYxYTIzMWMyYzdjYWI1ZDIxZGZmOTNiZjA3Y2U5OTJlNDk0YTY2ZiBsZWdhY3ktdHJ1bmsKKzM5MzMxIDc4NzQ3ODkyM2U4MmYyN2UzYmIwNTZiYzUzNDc5OGFjYTMyZGZhYzcgbGVnYWN5LXRydW5rCiszOTMzMiAwNGRkNWIwNmQzYzhlZDUzZGJlOThlOTYyNDRiZTc4NTMwNjMwZmJjIGxlZ2FjeS10cnVuaworMzkzMzMgMzRmZjdjYTRjZWY4NTI3ZTNiMWZiY2JjOTUwZjc0MjE2NTBkOWNiNCBsZWdhY3ktdHJ1bmsKKzM5MzM0IGE2ZTcwMDA0ZTk4NzBjZDg3ZWYzMWIyZGMwZTM0YzIwZGJhYjUyN2YgbGVnYWN5LXRydW5rCiszOTMzNSAzODgyNGI2ZTM2MDA3YzM2OTUxZmNkNTFmMzllZjRmNDM0ZWJmOTljIHJlbGVhc2UyNC1tYWludAorMzkzMzYgMGViMzg2ZWU5NDBlMzAzMjZjNDdiY2FhYmExNWI5MjFmMDhlNTAzYyBsZWdhY3ktdHJ1bmsKKzM5MzM3IDA3MTM3Mjg2NzczY2FmZjZlZjA3NTkwMzYzODkyYTg1N2FhNjI4OWQgcmVsZWFzZTI0LW1haW50CiszOTMzOCA0YWNkMzA3NjFiYzIxNzYzMDNiZjQyYzc0YmJiMjhlMDk2ZmNjNGY0IGxlZ2FjeS10cnVuaworMzkzMzkgNmIzN2VhYmUyYWM0MzdiZmQ0NDg0OWRmMGFkNWU5MDNlMDY0ZmFmNyBsZWdhY3ktdHJ1bmsKKzM5MzQwIDVmNDAwZmIyZGQ4YTY5YjdjZDY5YTMxODkxY2JiZTY0NDQ2MDg2MGMgcmVsZWFzZTI0LW1haW50CiszOTM0MSAzOTczZDYzZDI2Njc3YzA2NzQ2MTM2ZjFiMTUyNjU3MTM3ODExYTViIHJlbGVhc2UyNC1tYWludAorMzkzNDIgOTFkOTY4Yjc3NTc5YTVhMzY2MWJjNDZlMDFmZWE5YTZkNGI0OTVkOSBsZWdhY3ktdHJ1bmsKKzM5MzQzIDQzY2Y1OWU3YTYxNDVhYzcxOGZlOTUzODQzZjQyMGFjYzgzYTFkN2IgcmVsZWFzZTI0LW1haW50CiszOTM0NCA0ZGE2ZDRlMGMzZDU2MjhjMGNmMWRlZjVhZTM1MGNlZjZlYWRlMWU2IGxlZ2FjeS10cnVuaworMzkzNDUgMTJhOWJiMjRiNmQ5NjQ2NjA3NDk0ZDYyOGVjYTg5ZWMwZmFlZDhhYSBsZWdhY3ktdHJ1bmsKKzM5MzQ2IGJlZDkzZDA0MTZkZGU4MmEzNDk4ZTJkZTc3YzM5OTNlN2ZiODQzYTQgbGVnYWN5LXRydW5rCiszOTM0NyA3ZjE2Mjc3NjY2MjE2YzFlNzg3YjIwMTc3YmJjZGQwOTQ0YTc3NGIwIGFzdC1icmFuY2gKKzM5MzQ4IDAxZWZmNjA3OWY5MGI2ZmFhZmJhNzQ2NWRmNzg5MDZhYjFiMTE3YTAgYXN0LWJyYW5jaAorMzkzNDkgMTcwODQ3OWFkZTRkNWJhY2Q0MDJkZDYzMTJlMzRlODQ3NTE2YjcwOCBsZWdhY3ktdHJ1bmsKKzM5MzUwIGM5ZWIyNWZlMzljYmJlMDVkNWFkMmZkM2M4ZjUyYmQ0OWMyMDVjZDggbGVnYWN5LXRydW5rCiszOTM1MSA5ZTA1ZWEzYjFiZjNiODVmM2EyOTllNGQzNDJkNGZiMTk0NzE5NWQ5IHJlbGVhc2UyNC1tYWludAorMzkzNTIgNWM3Y2NhMjU0NzJkZWZmZWU0NmQ3NWNhOThjNzE1MmZmYTE1ZjgzYSBsZWdhY3ktdHJ1bmsKKzM5MzUzIDZjMDg2NWJlYWFiNzMxMjkyMDgwZmEyMmRlNGFhYmJhMDE3ZjU0MzMgcmVsZWFzZTI0LW1haW50CiszOTM1NCA4ODM3ZGRmYWFkNDVlYWY4MzgxN2FkODFhZDMxNzVhOWQ3YTYyZDI1IGxlZ2FjeS10cnVuaworMzkzNTUgZjk2Mjg3ZDFiNWY2Zjk4YmU3ODVjNGI4NzJjOTg1YjY0YmU3MjcwZCByZWxlYXNlMjQtbWFpbnQKKzM5MzU2IDYzNGNhNGQ4YTMwNmEyMjIyMTlkNmFlZWIyYTYyMjBmYjBjNjEyMWMgbGVnYWN5LXRydW5rCiszOTM1NyBiNzA5N2Q5MWYwNGQxZWJkNTZlNDdiMGU3ZDIwMWRhNTdlZmQ3YjQyIHJlbGVhc2UyNC1tYWludAorMzkzNTggNWIxYTJmYjg2NGE3NjI2YzE2NDdhMGI1MzE5NzYxZDlhY2NhODU2NiByZWxlYXNlMjQtbWFpbnQKKzM5MzU5IDNiYjkzMjgwMWI2NDUyZjg4Yjc5YmQyZWVjMjBmYzU5OTczZWVjNmQgbGVnYWN5LXRydW5rCiszOTM2MCAzNzQ1ZTNjNmEzZTEzNjAxNjg5Njg0MjVlNDlmMDU3ZTVlZWY1ZmUzIGxlZ2FjeS10cnVuaworMzkzNjEgZGRlMDU2YTY2NmRkZWY1MmFkMzIwMzJkYTM4ZTU5MWQzMjlhZjk5NSByZWxlYXNlMjQtbWFpbnQKKzM5MzYyIDNlZWM5MTAzOGZiY2E5ZjQzOWFhMmRhOTc0NjViOWY1NWY0MzEyN2EgcmVsZWFzZTI0LW1haW50CiszOTM2MyAwYTZkYmNiNGUwNTY2MjMwNWNhZDM4OGEzYWIzNTMyNGEwNmY2ZWI1IGxlZ2FjeS10cnVuaworMzkzNjQgNGQwNWY5ZTdlNmUyOTRhOWU0MTdkYTU3NjA2ZmJmMzMxMGY1MmJkZiBsZWdhY3ktdHJ1bmsKKzM5MzY1IDE1NmFiZGE0ZTQ1NzNhOGUyZjRmMWZhMDdhOTA2ZWQxMjUwODY3MWUgcmVsZWFzZTI0LW1haW50CiszOTM2NiBmZjJlNjZmYzBhMjkyOTA0ZGMwNGQzNzIwMmM4OGJkY2UwNWMxZDNhIGxlZ2FjeS10cnVuaworMzkzNjcgNDg5NmY4MzM0YmZmMjQ0NTMyNjhhNWNiNTg4MGJkYmE5ZjUxOWI0NSByZWxlYXNlMjQtbWFpbnQKKzM5MzY4IGU0OGZjZDRjMzU4ZDQ5N2MwN2Y2MDczYjZiNTU0YjljNDY3ZDAxNzggbGVnYWN5LXRydW5rCiszOTM2OSAzN2ZhN2I2ZGNhOWJiODliYWIyZDkxZWQxZDY1Y2YwMGY0MmFhNGQzIHJlbGVhc2UyNC1tYWludAorMzkzNzAgMmE2YjY5NDJhN2Y3Y2I2MDQwNjA1NmJmOTBjOWI0MjE0N2UzZWNlOCBsZWdhY3ktdHJ1bmsKKzM5MzcxIGM0ZTVlZDdhMmJhMzdkNjUxMDA0NDFiZjIwZWIzYTVhMWE1NGIwMTQgbGVnYWN5LXRydW5rCiszOTM3MiA4NWYwYTZlODM4MGI1ZGQ3OTJjZDU4NzEyNGI2NzBkMTk4MjNlMjI4IGxlZ2FjeS10cnVuaworMzkzNzMgNDgxNDYzYTViMjBjODk2ZmQ4ZjE3NzY2ZTQ4MjZiMDY5MWIyYmNkNCBsZWdhY3ktdHJ1bmsKKzM5Mzc0IGZlMzIzNWZjZGQ3NzI1MmVkYWU3YmExNDFjNTBjNzRlM2VlNThlMTAgcmVsZWFzZTI0LW1haW50CiszOTM3NSA3Y2FhYmM3NDk5NzU2N2VlYTI4MTRmNjk0MjJmMDQxNDZmYzc2Njk5IGxlZ2FjeS10cnVuaworMzkzNzYgZDVkZjUyMjJmZDZkNTQyYzlhZmI1Y2M2OGI1YTkxZDQyODdjYzAyMCBsZWdhY3ktdHJ1bmsKKzM5Mzc3IDE2NTIwZmNjMDYwOTUwY2IwZjZhM2VhNTgwNDE3OWUwMmJhZjA5ZTggbGVnYWN5LXRydW5rCiszOTM3OCA1NWUyNzU5ZDAyMTEzNzI0OWYxYWY0Y2M1NzQ2ODdjZjVhOWRjOTcxIHJlbGVhc2UyNC1tYWludAorMzkzNzkgMjQ1ZThmNGNiYTFkYjI0ODZhNGE0YmRlMzE0NGJjZTQ5Nzc3N2M4NiBsZWdhY3ktdHJ1bmsKKzM5MzgwIGUwYmQ2ZjMyNGZkNmExZDI5NWM3NTYwNjNkNjA4Yzg1ZDk3OGEwM2QgbGVnYWN5LXRydW5rCiszOTM4MSAxYjdjNGZiZWUwYjhiZTEwZjMwODgyMDdmOWFhZTJkZDU3NGI4MzA0IHJlbGVhc2UyNC1tYWludAorMzkzODIgYzFmMGYxNzA5MzZkNTU3MmI0YTZlNzVkZjQ2Nzc1OGJlMTBiZWQzZCBsZWdhY3ktdHJ1bmsKKzM5MzgzIDEzMGI2Y2U5YmJmM2RjMTI3NjA4NWRmMmZkMTQ2OGVmNTBhYTcxMjUgbGVnYWN5LXRydW5rCiszOTM4NCBlZGRjZTQwZWQxYjE2ZTE3ZDYyNzBhZmJmYjQ3ZDE5ZDE3ZmNlYmU1IHJlbGVhc2UyNC1tYWludAorMzkzODUgN2QzZThjMmFlMzM5MTMyZTg2Y2JhZGM5YTc0NGZmZGE5Yzc0M2JmZCBsZWdhY3ktdHJ1bmsKKzM5Mzg2IDlkMzQzYmM4MTg2MzgxNmI1YjYxZGE1N2IyZjE2NTNmNWM5Y2IxZjQgbGVnYWN5LXRydW5rCiszOTM4NyA0YTUwNzc4NzNjYmEwYmJhOTlmZjhiZWZjZjZiYWQ3NjM1OGFjYmI5IHJlbGVhc2UyNC1tYWludAorMzkzODggM2QwM2QyY2JlMWFkMTZkZTU5NGYxOTZkYTljZGI1ZjY3ZjIwZDhlYyBsZWdhY3ktdHJ1bmsKKzM5Mzg5IDY1MjM4YzlhN2E2NjAxMDgwZDA1YTY4NjA3NzA2MDJlZjYyMzc4NTkgbGVnYWN5LXRydW5rCiszOTM5MCAxNzA3Yzk0NWQ2YzI0ZGQwODc3OWQ2ZjNjZTgxOWFjNzJkNmE5MWQyIHJlbGVhc2UyNC1tYWludAorMzkzOTEgNTk1NDUxYzJjOGVjZGM5OWM0MDY4MTEzNzdmMTE1NWVlZGVkZGM3YiBsZWdhY3ktdHJ1bmsKKzM5MzkyIGExNzAxMjM0NWFmNmFhMjlmMGMwNWNjMDIwNWFlNDhjMDgwZWJlNmYgbGVnYWN5LXRydW5rCiszOTM5MyBkMGU4NjU3NmYwYjVkZjU3OTg5YzhhNjI5Y2NiYThmMmFlZTYzZjY1IHJlbGVhc2UyNC1tYWludAorMzkzOTQgNDQ2MTI1OTM0NzFjOTYwYjczNGYzOWUyZTY4NjZkYjlkY2UwNGM3ZSBsZWdhY3ktdHJ1bmsKKzM5Mzk1IGNiNDk5YWVlMzZlNzhhY2JmYTdlMmE4NWUyNjIzYjhlZGQxZTk5YzkgcmVsZWFzZTI0LW1haW50CiszOTM5NiA3YTBkMGI0Yzg3ZDA2NDUxMTU2MDk5MmFmODg0NWQ0YThjZWEyZWJmIGxlZ2FjeS10cnVuaworMzkzOTcgNTgyYzkwZGVkYTlkZmUzMDQyNWNhNmRhMDVhNjVkNWIyYzUzM2QxZCByZWxlYXNlMjQtbWFpbnQKKzM5Mzk4IDA5OTkyOTBjNjc1ODhhMTAyNWFjZmNhNzViNDExNjlhMTZlZDMyN2EgbGVnYWN5LXRydW5rCiszOTM5OSA1MzE2ODY4NTRmMDg2ZWEzNjBlZGViZDJlNWJiMjRiZDgyMjRjNDI1IHJlbGVhc2UyNC1tYWludAorMzk0MDAgMWZkZmQwMTMwZTI4MTkyMTM4ZWZlMGQzMjdjOTY3YjE2NmJkOTEzYiBsZWdhY3ktdHJ1bmsKKzM5NDAxIDk3Yzk3MTk0ZTY0YmI4NzIzZTYyODMwOWJkZjAxZTdjMTcxZjY2MTkgcmVsZWFzZTI0LW1haW50CiszOTQwMiAzNjUxNGI5NTAwMmFiMWQ1OTJmMDU2YmY5Njg4ZGFkZjgxYWNjMjA5IGxlZ2FjeS10cnVuaworMzk0MDMgNTlhNjNiMDlhNGMyNjllNTI2NzVhZTMzNTdhYjhlMzliMGI2YWU3OSByZWxlYXNlMjQtbWFpbnQKKzM5NDA0IDM4NTVhOTYwYTZhYTk2Y2E5ZWM4NTlmZTlhMTIxMDc5MWI2Mjg1OGEgbGVnYWN5LXRydW5rCiszOTQwNSA5YTgzNzM4MGMzYzVmMTI3YTE3OGRiNmQwNjIyZThiYzczMDAwYzA2IGxlZ2FjeS10cnVuaworMzk0MDYgOGEzZDdmOWYwMmNjMmZlMWQxNWYzNmUzZWQwNDNmZjQzYjMwMzM0NyByZWxlYXNlMjQtbWFpbnQKKzM5NDA3IGNmY2MyNjQxYTkxMDk4MGQzMmI4NzJlZDhiMzg5M2IyZmFlYmY4YzYgbGVnYWN5LXRydW5rCiszOTQwOCA5ZDQxYWZhNjNiNzk1MzEzM2U0NjRlZjAwNjJiNGYxMDk4NzViZmEwIHJlbGVhc2UyNC1tYWludAorMzk0MDkgMzhlNTg4ZDFkODg1M2I4YTQ5YmQzOWViNTYwZjZjNmU5Mzg2MmFhMSByZWxlYXNlMjQtbWFpbnQKKzM5NDEwIDA4NTI4ZmJkNDgwNDlmYmNlZGQ0Y2ViNmYzMWE2NTQ4ODc2ZTY4ZmQgcmVsZWFzZTI0LW1haW50CiszOTQxMSA5YmU5MmZlOGE3YTgxMDEyMGU1NTA0Y2QxOTBkNTY0ZWZiZTU4OTc2IGxlZ2FjeS10cnVuaworMzk0MTIgMDM1NDA5ZWYwOTAxMWY1NWI1NmRlZWIyZTk2NzBjNDM5N2FjZTVjZSBsZWdhY3ktdHJ1bmsKKzM5NDEzIDI1NmU3Mzg0ZjI0ZGJkMzMzY2IzNWQyYmI5YmJiOTAxNzE2ODEyNTYgbGVnYWN5LXRydW5rCiszOTQxNCAxMzEyOTQ2ZjMyYWI1Y2UxMTczYTVlMmFmMWI0Mjg2NGVjNmQxYmQwIHJlbGVhc2UyNC1tYWludAorMzk0MTUgYWRlZGE5ZmIzNDg1ZDY3NGM3MGNkMjAyNjdlZTA4YTA2NmRlYzZjMyBsZWdhY3ktdHJ1bmsKKzM5NDE2IDNlNWMwN2ZhYWIxMTEzOTliMjQwMmNlOWNlNWJjYjc3MWVhNmM1NjggbGVnYWN5LXRydW5rCiszOTQxNyA1MjMzZDE5ZmY4N2YyNzdmMWQyNjQ4NTQyZjVjNTE5OGVhM2VlNmRjIGFzdC1icmFuY2gKKzM5NDE4IDcyZDNhZDA4YjJjNjIwYmFhNjYwY2RiMWY0YTljNGNjYWNmYjM4M2QgYXN0LWJyYW5jaAorMzk0MTkgNjllYWI4NTE3NGZiYTNkODYyY2Y2MDZiOTI4YTU3NmI3ODk5NGRmYSBhc3QtYnJhbmNoCiszOTQyMCAzM2Y2NjJmNjc5NWYzM2ExZTE5Yzc5NDcwNmZiMDJkNmMzOGUyNjdkIGFzdC1icmFuY2gKKzM5NDIxIDcxM2NjZmY3MWZkZmU0YjcwMzIzM2VmMmZjZjYwNThlMzk2ODQyMjkgYXN0LWJyYW5jaAorMzk0MjIgODU5NjBjYTRmYzA4OWU5YTE2ZjRiYTkzYjY2MDUwOWNmOTEzYzM1ZCBsZWdhY3ktdHJ1bmsKKzM5NDIzIGRiYTFlMmRmZDhkZWE3ODQ1ZWJiOWNkNzJjZDM2NTgzNmFmZGQyNjcgcmVsZWFzZTI0LW1haW50CiszOTQyNCAyMDBlMmVmNGRiZGM2NDNjNDdmNDU0ZjY5MTEzNzVjZDNiNDI3MTI4IHJlbGVhc2UyNC1tYWludAorMzk0MjQgMGY0MDVhMWM1MzQwNTQ5NDI2NGY5N2I0ZGRlODJlZTFhNjg5MDRjMSBsZWdhY3ktdHJ1bmsKKzM5NDI1IGFhYTM2NDZmNDU2NzEyNmIwMGI0NDIxMmZkYjhjZDkyZDYyMTcyNWUgbGVnYWN5LXRydW5rCiszOTQyNiAwMjM0Yzg0YTdkOGRhODI2YTI1MTc0ZDgyMTY1OTZkMTliYzZmZmY5IGFzdC1icmFuY2gKKzM5NDI3IGU1MmVkODc4YzVlZTBhZGUyMDdjZDI5ZTk0ZjQ0NjMwYjQ2OGIxZjMgYXN0LWJyYW5jaAorMzk0MjggNDk2ZDI5YjBiYTViYmFmNjM5NmNiMjI5YzlhMTBkYTBiOTg2OTAwZiBsZWdhY3ktdHJ1bmsKKzM5NDI5IDExZTE1ZjdhYjk0MDZlZWM1YzYyYWQxYzQ2ZjJhNWEzMTU5MWQzZjUgcmVsZWFzZTI0LW1haW50CiszOTQzMCBkOTJmMGVkNmE3ZjJmOWQ3ZWViNWI3YzM1YjAzNTZlOGRjMmQyMDRjIGxlZ2FjeS10cnVuaworMzk0MzEgYTg0Y2RhYmI4YWYwNmRhYmQ5N2U5Mzk0OGExNGFmYjYzYzcyOWY1YyBsZWdhY3ktdHJ1bmsKKzM5NDMyIDg5ZThhNWVjM2RhMDU3N2I3MmIxNGRhNGMzZDI3Zjk4MGUxYTc4YzEgcmVsZWFzZTI0LW1haW50CiszOTQzMyA2NzYzYzkxZmNmZWY0MDk5ZTljNDZiZjVmZmMyZTQyZTk1NGZkNGIwIGxlZ2FjeS10cnVuaworMzk0MzQgYmFlZDhiN2RlYjU2ZDFjOTVhZDk0MGM1NWI5MDFjYzNlOTA3YWM5YyBsZWdhY3ktdHJ1bmsKKzM5NDM1IDliMjEwNDAxMWY3MDI2YTVjYzk2MWUwZjVlZTEyOGIxMmQ2MTEyYjQgcmVsZWFzZTI0LW1haW50CiszOTQzNiBiYjY3NzA3OWY4MjdjZTIwMTY1YWEwY2NmMzEwZGRjNmIzMGZhMGRlIGxlZ2FjeS10cnVuaworMzk0MzcgMGU4OTY0ZjUzNzMyYmRjOTIwYzZjZjEwZWUyOWE5YzFiYjljNWYzMyBhc3QtYnJhbmNoCiszOTQzOCA1MTZlZDYwYThmOWNhZjY3MGYzZDA5NzE4M2ZlZTQxNTA0NThlYmEzIGFzdC1icmFuY2gKKzM5NDM5IDYwNjFhYWE0NGViYzUzNWU0OWI2YjgzNzJiMzkxNDgxNDU0Y2NjNzYgYXN0LWJyYW5jaAorMzk0NDAgZDMzMmIyMTY4Y2IyNDcyNjlhNDZmYzZhNWZhYmFjZmQ3MzZhNDM1OCBhc3QtYnJhbmNoCiszOTQ0MSBjZDdkNmM2ZjJkYjIxNzU0ZTJiMjAzOTc3YjI0NTdlMjQ5ZWEzZWYzIGFzdC1icmFuY2gKKzM5NDQyIGUxNThmMWUxN2FiNGI3MTU5YWMxZmVmNjFhNTY4MjZmZjk1YjdjZmQgYXN0LWJyYW5jaAorMzk0NDMgMDZlZmVlYzc0ZDU5YTUyMTI0OTg4N2E4ZWI3ZDczZjUwMDJlZjExYSBhc3QtYnJhbmNoCiszOTQ0NCAzNDM4ZWViYTU4YzM4YThmZDM2NjM0Y2VkNjAzYjM1ZTRiZTY5ZTNlIGxlZ2FjeS10cnVuaworMzk0NDUgODFhMDZhOWExYWM0N2M0OTdiOWM4Yzg2MzE1MDQ3YTgzMDM2NGY1ZiBsZWdhY3ktdHJ1bmsKKzM5NDQ2IGFiM2RkYmJkMDg2MmM4ZjQzZWY3MTNjODRmMDcyNjhjYTlkNmZmNjUgbGVnYWN5LXRydW5rCiszOTQ0NyBiYmY4MTU3ZDAzOTg0ZTk2YTlhODY3ODg5ODgwNWZlYTI3MTk5MzU5IHJlbGVhc2UyNC1tYWludAorMzk0NDggNGZjN2E3ZWRjYjRiNmFmYmM5NDI0MTk2YTEzMDJkMGY1MTVkMDFhOCBsZWdhY3ktdHJ1bmsKKzM5NDQ5IDZiOGM1NTg3Nzc1NWM3ZmRlZTA1NDM0YTZlOTg5MWMxODZiYjVmMDQgcmVsZWFzZTI0LW1haW50CiszOTQ1MCAxYTNjZjk2YzhkNDY0YmQ1NDU0ODkyZDY0NzUwZTFmMWU2MjNhNmQxIHJlbGVhc2UyNC1tYWludAorMzk0NTEgYmNkOTgxMTIzNWQ0OTYyYmUwNGZiNmQ4NzU5OTU5OWM4ODc5N2JhMSBhc3QtYnJhbmNoCiszOTQ1MiBhMTU5NTg0ZGI2NWMxMzQxNTdkNTYxMjhiMGYwMzM3ODFiNTVhZThhIGFzdC1icmFuY2gKKzM5NDUzIGJhODQ0YmQ3YTMyYjZiYjY1MTA1MzFhNjNhYjBkYzAwMjkwOGQ2NjggYXN0LWJyYW5jaAorMzk0NTQgNDY4MWE4ZmE0NmQwNmVjZmM3YTRjNjc3NDRmZDM1ODBjY2RjNDU4ZiBsZWdhY3ktdHJ1bmsKKzM5NDU1IGNlNWI3NTMyNTIwYTg3ZDk0Njc0MDM5NjFmNmI5ODhiM2E0NDk3NDkgbGVnYWN5LXRydW5rCiszOTQ1NiAwZWFlNTIxOWYzYjgyNGQwZmU2MjdhMWQ3ZGE0NzM3YWJlNDg4ODQ1IGxlZ2FjeS10cnVuaworMzk0NTcgM2U2MjEyMTEzZTgyYTBkY2JiMDllOWUwOTU5NTcyMmY2NTUxNTA0MiByZWxlYXNlMjQtbWFpbnQKKzM5NDU4IGExODVkNjk2MzBiMzhhMjc4Y2M3NDY1MDMxMmNkMWJkYThiOGRlZWUgcmVsZWFzZTIzLW1haW50CiszOTQ1OSBjMzUzYzI3ODJhZTE1OTVkNWU0NzU0Nzk4MmQwNDQ5MjI3MzVhZmRkIHJlbGVhc2UyMy1tYWludAorMzk0NjAgOTdkYzhmMDZjNGZhYjdkOTU0YWI1M2Q2MjAwMDA0ZDkzNzBhNjMwNSByZWxlYXNlMjMtbWFpbnQKKzM5NDYxIDBiY2IzMDNiMzQxYjY2NGI5ZTE2NTRjNGQ1YThhYzVlMGMzZTE0ZmUgbGVnYWN5LXRydW5rCiszOTQ2MiAwZmU4MTE3Yjc2MWQ3NGFkMWEyZWY3MjA0OGZmNTFhYjM0Y2FjZDNlIGxlZ2FjeS10cnVuaworMzk0NjMgZmUwY2E2MDQ4MjY3MDI3NzIyY2IxNmQ4MTdhMzhmZDhhYjNjZjhjYiBhc3QtYnJhbmNoCiszOTQ2NCAwNzk1NmQ0YThlNGFiYmRkNzVjMWY2YWMzZjM4Y2VkN2Q1MWY1Zjg0IGFzdC1icmFuY2gKKzM5NDY1IDEyOWFiMjJjNGIxOWE5Y2E0ZDE5ZTdjZTI5NWU3OWJkNTNmMWM3OTcgYXN0LWJyYW5jaAorMzk0NjYgZjU0ZTUwYzUzYTcyZDM5YzZhZGQ3ZjYzYjliMzE1NzQ4ODY1MjUyMyBsZWdhY3ktdHJ1bmsKKzM5NDY3IGM4OTNjYWViMTEzNzA1NzljYTYzNjQ4MzhlMzFlMjE1ODg0M2EyNjEgbGVnYWN5LXRydW5rCiszOTQ2OCAyMmE0MDkzYjUxNTFjNjliODczOTVjZWMyNjlhYzA2ZjZmYWNjY2NjIGFzdC1icmFuY2gKKzM5NDY5IGRhZjMzOGVjZGNjYzZiZjYxMGEzZjY0NjgyYzczMGQ0NDYyNmUxMTQgYXN0LWJyYW5jaAorMzk0NzAgYjcyMDEwNGI3ZGI5MTY1YTAzOGE1NTM3OGIxZTdmNDUzZmZhZDI1YSBsZWdhY3ktdHJ1bmsKKzM5NDcxIGJhNDRlOWUyYjU1NDcyOWY3MjBjZGQ3Y2NjZWY5ZWEwMGNiMjM5YTMgcmVsZWFzZTI0LW1haW50CiszOTQ3MiA4ZmE4M2E5ZWJjNmVjY2VjZWJiOWQwOTVhMTU5MWFmNzBiZGU2NGM1IGxlZ2FjeS10cnVuaworMzk0NzMgZWQ2NWUwYWQyMjE1OTViNzgyOTY0NGY0Mjk1OWQ5M2ExZDRkYjU4ZiBsZWdhY3ktdHJ1bmsKKzM5NDc0IDc3MTg0N2NiZTNiNmNiNjg2MDI0NDdhZDA3YWZjMGJiOGExYzVlYTUgcmVsZWFzZTI0LW1haW50CiszOTQ3NSBmNjNlNjk2MGM1Y2ZiZTI2YjFiNTlhZjFhYTIyMTliZmE4ZWFlZGMyIGxlZ2FjeS10cnVuaworMzk0NzYgMGI3ZmE2ZjA1NTJhYmU5MDUxZWU0ZjRjMzNjZGNmNjQ3OWU2MTE3MiBsZWdhY3ktdHJ1bmsKKzM5NDc3IDI2YmEzZDRmNGZjNDE1NTdmZDI2ZTNkZmVjMmQzZjZhZmE4YzE5N2UgbGVnYWN5LXRydW5rCiszOTQ3OCBhNTc4MDAyYzhmNjU5OTIyMGQwYmFhMGI2MDM4OGJmYzdlYjhhY2U5IGxlZ2FjeS10cnVuaworMzk0NzkgMTVhODk3NWY3ZmE5M2Q1YTA2OGY3ZTJiZmI0YjI2NGE0N2IwOTU0NiByZWxlYXNlMjQtbWFpbnQKKzM5NDgwIDFmMmFmMjU5OTY4YjQ1NWQ0MGIzNWFkN2M0NTE0ZWNlNDM4Y2U3OTYgbGVnYWN5LXRydW5rCiszOTQ4MSAwYTI4ZDQ4NjM2Yzg2NDNmZGZjZmM4YjcyMDUxNzUxOTBjY2EzMzYwIHJlbGVhc2UyNC1tYWludAorMzk0ODIgNWQ1ODQ0M2Y0ODliNGZkMjkxMGE0MGYwMWRhMzU2YTViMTBiZjE3MCBsZWdhY3ktdHJ1bmsKKzM5NDgzIGU3ZmQ4NTU1MGJjMGI1OWI4Zjk2NmVhMmVmNWU5YWU0MzNlMjA5NDEgbGVnYWN5LXRydW5rCiszOTQ4NCA5NTE2YmE1NGI5ZGY0NDc1N2RlNDgyOGJiZmEyN2I0MDZiMDAwODYwIGxlZ2FjeS10cnVuaworMzk0ODUgNWRiMjczMTVlZGNmZmE1YTY4ZWI3YTE5Y2UxNWQ4M2Y0ZTgxNDc5NCBsZWdhY3ktdHJ1bmsKKzM5NDg2IDRhYmFmNjkyMzQzNzE5NGRiYzYzMjBhZjZhNTEyZWVmNDM0ZmVlYzIgcmVsZWFzZTI0LW1haW50CiszOTQ4NyBjZWFjMDI3Nzg1MjM0OWJlNjU4OWMxM2RhY2JiMGVlY2EwOTk1YzVhIHJlbGVhc2UyNC1tYWludAorMzk0ODggZGUxYzVkMTdmZGU2YzYzMGU5ZjUwYWFhNWY0NjFlZGVmMzA2MzllYyBsZWdhY3ktdHJ1bmsKKzM5NDg5IDQzNmJlMmM4OTE0MDJmNGRjZWQzZmQ5NjYyNzA1MWU5ZjQ5NTlkYjEgcmVsZWFzZTI0LW1haW50CiszOTQ5MCA3ZGQ0MzE3NTBiZDM2NWZkNWQzNzExZDQzNzA2M2U3NzUzYTFiMDgzIGxlZ2FjeS10cnVuaworMzk0OTEgZWNkNjFjOTJhZGYzMTYyZTYzMTAyNzNmZjhlZTM2NzcxOTM4MzA5NyByZWxlYXNlMjQtbWFpbnQKKzM5NDkyIDk1MjFlMzgwMzgwZjBlYTNlYzQzM2UyZmJiNWVmZDlhY2E1NjUyNmMgbGVnYWN5LXRydW5rCiszOTQ5MyA2YmRlNmNkMjM5NTRjNzEyNTczNTRhYjMyMzJhNzk4MWUwOGE5ZDBiIGxlZ2FjeS10cnVuaworMzk0OTQgMTdiMWRmZDNjYmJiZDMzZmVjMTY2YjllOTg0NzIxY2U2NDBlZjZmZiByZWxlYXNlMjQtbWFpbnQKKzM5NDk1IGNjOTQxNmVlNThlMTlmMjgyYWJkNGMxMWMyNTgxYTcyYzhjMTM0ODQgbGVnYWN5LXRydW5rCiszOTQ5NiBmNzM3OGU5N2I2NmEyNDc4N2NkNjdiN2RhNWZiZDVhMmQ5YjgwNGIwIHJlbGVhc2UyNC1tYWludAorMzk0OTcgZTczYWNjZjNlZGRiNGEzMmY5Y2M2NTE1MGE4YWZkMjQ2MDRkMzdiNyBsZWdhY3ktdHJ1bmsKKzM5NDk4IDMzNmI2NjRhMjIxMGU5MmQ5NGJlMWQ5NmIzMzM4YTFiNzBmNWE3YjkgbGVnYWN5LXRydW5rCiszOTQ5OSA1ODI0MTMwYjdhYzM1MGZmMjdkZGFkYTU5MGFhMTc0M2YzODE3NDExIGxlZ2FjeS10cnVuaworMzk1MDAgYTdjY2NjMzkxMjI4MDIyYTgyYjcyMTAzZjllYzQ2OGQ2MGVhNGU2OCBsZWdhY3ktdHJ1bmsKKzM5NTAxIGRjODUzODg0NWIwYzg5MGVhNzkyNzU0YjRmNTJkYjRjOTk0OTA3MmEgbGVnYWN5LXRydW5rCiszOTUwMiAzNjNlNmRkMDc5ZmNhYzM5N2YzZTlkMTM2YmIzNTNjYjI3ZTM0MDZjIGxlZ2FjeS10cnVuaworMzk1MDMgMzlkYmUzYmUzMjdhYWFmYzdiYTRjOTg0OGE4ZmE1MjUyODNkOGQzZCBsZWdhY3ktdHJ1bmsKKzM5NTA0IGQ1MDRhMzAyYmY1M2UzYTNkYWNiNGNlZDk0YzcxMDhlMGVjZjkxZTcgbGVnYWN5LXRydW5rCiszOTUwNSBmMTdlZDNiNjJhZGFiMTU2Njk0NzgzNzhiMGQwODFjY2FkNGQyOWYzIGxlZ2FjeS10cnVuaworMzk1MDYgZWE1M2U3ZDk4YjAwNmFhMjM5ZjkzMzQzMTczNTgyNWFmZGUzNTY5NyByZWxlYXNlMjQtbWFpbnQKKzM5NTA3IGZhNzM3NjVlOGVmNTFkODU3MzY5YWYxYzM3NTlmYzEwZDI4NGZhN2YgbGVnYWN5LXRydW5rCiszOTUwOCA0NmYwYTQ0ZjQ5ZTY0M2ZlN2NhMmMyYWQzNWU3NTBkZmU2OTA4Y2M2IGxlZ2FjeS10cnVuaworMzk1MDkgOTY2ZGVhYzE1YTg5MGRmNzNhMGU2ZTUwYmI1ODYyNzhiZjhjYjg0ZSBsZWdhY3ktdHJ1bmsKKzM5NTEwIDg3NTczOWQ3MmZjMWM3Yjk4NmVlNjA1ZGU1Yzc5NWI0MGUyYTFhYTggbGVnYWN5LXRydW5rCiszOTUxMSBjMGQ2YmFlMzViNGU3OGZhMjBmNzdmMzE2MzdkZjJhYjc1NGNkMGFkIHJlbGVhc2UyNC1tYWludAorMzk1MTIgZTQxZmRhOWYwZmQxMDMzY2YxOTFhOGFkZWZiNGIxMjdhMjAxNzE0OCBsZWdhY3ktdHJ1bmsKKzM5NTEzIDdkMGE1YWMyNDY2OWFiNmJlNDcwYWQ5OWFjNzFkYjhhMGExNGZmYTAgbGVnYWN5LXRydW5rCiszOTUxNCA4MTI1OTAwOWJhMmM4ZjAyNDExMWM3MzA4YmM3NzQ3NmU1NDcwODQ1IGxlZ2FjeS10cnVuaworMzk1MTUgMjUzNzhiZGIxYjNhMGRhOGNkZGNlZjQyMDgwN2NmOTRlMDZmOWUzOCByZWxlYXNlMjQtbWFpbnQKKzM5NTE2IGFjZmMwZTIyY2Q4ZmM1OGU2YjIyMjZhNjZkZTBkZWExMjc5YTJlYzIgbGVnYWN5LXRydW5rCiszOTUxNyA3NmUyOTVlYTUxNTJjOTg0NmYxZTA5NjczYWU0NzI3NzliNjY4YTY0IHJlbGVhc2UyNC1tYWludAorMzk1MTggMTFhMjY1MGU4NTY4ZGMwYTc1MWJkYTZiODRkN2QwNTZmMDEzMDI4YyByZWxlYXNlMjQtbWFpbnQKKzM5NTE5IGJiYmI3ZGRhMzJmM2VlMDg1OWI4NjIzM2JmNmYzN2Y1N2NiMjVhZDEgbGVnYWN5LXRydW5rCiszOTUyMCBkNzlhZjA2NTExNTUwNmZiZDMwODNlYjA4MzIzNDFmM2ViNTk1ZTA1IGxlZ2FjeS10cnVuaworMzk1MjEgYjE5Y2Y3M2M1NGE3ODAwMWQ2ZDZkNWExM2RmYjA1ZDk3YTcxYjJhMSByZWxlYXNlMjQtbWFpbnQKKzM5NTIyIDcyNGJiZDQ4OWFkNDcyN2U5MDUyYzY5YjU2MzQxYjJiNWIyY2QyYTkgbGVnYWN5LXRydW5rCiszOTUyMyA1N2Y2MzBhOWRlMjYxOTYxNmYyYjIwYWUxYzM1N2ZiNDNlMDEyODUyIHJlbGVhc2UyNC1tYWludAorMzk1MjQgOWI3ZDExN2ViNGJjOTZkY2NhNzRjNmM4Y2VlOGFiYzkxODQ5MTkyZSBsZWdhY3ktdHJ1bmsKKzM5NTI1IDExNzQ0ZjdiYjQ3YTgyZDc4YjM2OWY5YmUzN2U2ZjczMDBjMjllYWUgcmVsZWFzZTI0LW1haW50CiszOTUyNiA2OGFkNTJiMDQ0NWJkYjdmMjI4YWVjNzcxY2Y3ODM4YjUxMzMzOTQ3IGxlZ2FjeS10cnVuaworMzk1MjcgNDE0MTNmMjMzNDViNGY3NWUwNDU2NzE0ODBiODA5Y2QyYTNkOTZjYSByZWxlYXNlMjQtbWFpbnQKKzM5NTI4IDhhNmM5OWY4NjVlYmQzOWNmZTc5YzUwZWFkZjg0MTU5OTRmMWRiNWQgbGVnYWN5LXRydW5rCiszOTUyOSA4YWQ5YTJmYThlYjJhNjA3OGY5NmFmMzBjODNlMmM1NTlkYWIxZWVkIHJlbGVhc2UyNC1tYWludAorMzk1MzAgYmZiZTJjOWIxMjE1OThiNmU1YTNmYzE1ODI3ZjIwNDE0NDBlNzQxYyBsZWdhY3ktdHJ1bmsKKzM5NTMxIGYyMzVlOGVmMGQ1NjkwNGZlMjA0YWRhYmE3Mzc1ZGQ3MjcyYTYyZmMgcmVsZWFzZTI0LW1haW50CiszOTUzMiAwN2VhZjYwZjc1NjUwYjE3MGYzNWQzOWI5M2FlNWYxZGEyOWFkYmUwIGxlZ2FjeS10cnVuaworMzk1MzMgYjhkMWI0NTI5MjA3MTE2MzM2OGI1N2NjZTcxYjQwYzNlMzc5MzBlMSByZWxlYXNlMjQtbWFpbnQKKzM5NTM0IGFjODgwNDRjZGU0ODZiMDBhM2U0NzhkNzc4NWI3ZmQ3YWQzMmJkZjggbGVnYWN5LXRydW5rCiszOTUzNSBkZmFiZjBjN2YxYWRmZDE3YzQ1MjZjZjJiZDljYTNkY2I4MDJmYjg3IHJlbGVhc2UyNC1tYWludAorMzk1MzYgYzg2NTU4ODVlNDA2NWQzNTUzMzgzNDkwOTA5MTNmODVjYWZmZGYzNSByZWxlYXNlMjQtbWFpbnQKKzM5NTM3IDZkYmZiZWU1ODVjYzgzZmUzMzIzMjY0NmM2ZDc4YThjYTg0YmI1YmUgcmVsZWFzZTI0LW1haW50CiszOTUzOCAxNTJhZTcxOTNjOWE3N2VhMmJhMGM4N2M0Yzc0NzYwZDgwYmU2MDU5IHJlbGVhc2UyNC1tYWludAorMzk1MzkgZmEwODgxZmQ0OWI3YTk1MDVlMTc2OTY1Y2ZhN2E3Yzg2NDcwNDkyNiBsZWdhY3ktdHJ1bmsKKzM5NTQwIDhiYWQxYmZjMzMxOTkyYzhlMWYzNDllZDUyYmE5ZTE2NDVmOTliMTEgcmVsZWFzZTI0LW1haW50CiszOTU0MSAyNjkxY2JkYWU1OWJmMzU2MTdmMWEzMzY4MDUwNjNlZGZhZjRjMjdmIHJlbGVhc2UyNC1tYWludAorMzk1NDIgOTA5MzBkMmQwYzE5MTA3NmEyYTAyN2Q1OWRkN2YyN2VmMzM0OTViZiBsZWdhY3ktdHJ1bmsKKzM5NTQzIDM1YzQzNjc0MDgzYTlhMzQxMzNlN2EwZmEyNGYzMTIyNzQ0MWIxZDMgcmVsZWFzZTI0LW1haW50CiszOTU0NCAxYjI1ZmU4ODM0YWVmZDdlY2JlY2RiOTAwM2M0MjY4NDk3YjU5YWJjIGxlZ2FjeS10cnVuaworMzk1NDUgZmQ1MWNlOGQzNWFiNGZkNDJhZjVlZmY2MWQwMmRjYzI3MGI0NDNjMSByZWxlYXNlMjQtbWFpbnQKKzM5NTQ2IGNkMzEwMjdhNzE2N2EzNzU0OGYyODU2NzljNWM5NjdhMGJiZWFjNmUgbGVnYWN5LXRydW5rCiszOTU0NyBkM2FlNzkzMGNiOTM5NTMzZmNmZmQ0NGQxNjk1ZDkzNjJlZDBhNGM3IHJlbGVhc2UyNC1tYWludAorMzk1NDggNzNmZTIxNjNmMGIzMGQzM2EwMjZjOGJhNmQyNTI5MGVhNTI1OTA2MiByZWxlYXNlMjQtbWFpbnQKKzM5NTQ5IDVhNmM0ODNlZDY4OWY0MTA1ODc4NDI4ODIwN2ViOTkwZGEzMTA0NmMgcmVsZWFzZTI0LW1haW50CiszOTU1MCBjMjhkMGVkODZmZjA1OGI5ODEwMGU2Yjc3MTMwNGQ0MmQxMTUxNjk4IGxlZ2FjeS10cnVuaworMzk1NTEgOGVmNTAwYzQ1MDZjNzJiNzRiZjlmYTA1MDBhOTU5ZmRkM2Q1MGZmNSBsZWdhY3ktdHJ1bmsKKzM5NTUyIGY0YzJjNjFjYjU2MDk1OTUyOTk0MTI3MmUxODBkZTQ2MzI2MWUyNWMgcmVsZWFzZTI0LW1haW50CiszOTU1MyAzNzg1OWM2YWQ1YmI1ZjdlYmFkMTlhMTY5ZDk4ZGVhNDI2YzEyMTUyIGxlZ2FjeS10cnVuaworMzk1NTQgNTJjNjVkNzNmYjc0MDE5ZjZmOWFiNTQ3YzBmYjE4NTEwOWIyYjBiZiBsZWdhY3ktdHJ1bmsKKzM5NTU1IDA5OGVhMWUxOGU4ZDk3NjA0ZDhmNmYxOGQwYWY5ZGExYThhMzViOTAgcmVsZWFzZTI0LW1haW50CiszOTU1NiAwYWUzMDcyMTI3NTUwYWUyNGI3NDJmMWIzMmJjZDFjNDE1MmIxMmZiIHJlbGVhc2UyNC1tYWludAorMzk1NTcgMGRhMzk3NWZiMGJiZmNmNzgyZDhjMGY2N2U2NWU1MDJiMTA2YTc0NyByZWxlYXNlMjQtbWFpbnQKKzM5NTU4IGU2MTE5ZDU3N2NkMzVmZDhkNTM4NWU1MGNjMWZkYWJlNGNiZTQ3OTUgbGVnYWN5LXRydW5rCiszOTU1OSAwMmE4YzA2NDNmNWJjZTI2NmJlYWI3NTBhYjkxYzcwMzZlZjc4MTdjIGxlZ2FjeS10cnVuaworMzk1NjAgMWNmMTcwMzdhMmNhOGM3NTgxNzdjYjdkYWExNDFhMDM4YTQ2MTgyMyByZWxlYXNlMjQtbWFpbnQKKzM5NTYxIDVmMjc4NTcyMmNiYWQwMzk0MWEyMTY3NzE2N2M3OTZmNzNmM2ZlYTIgbGVnYWN5LXRydW5rCiszOTU2MiA0ODA2Y2IwMDlhOWNlNjIzY2VmOGMxYTExYWE5ODAxM2QzNDFhNjAyIHJlbGVhc2UyNC1tYWludAorMzk1NjMgOWEyZTIwMzE4YzlmNWZiZGI3OGE5MTk0NGFmMDg4ZDllZmNjZDNhZCByZWxlYXNlMjQtbWFpbnQKKzM5NTY0IDYyMDk5MmFhMGE5ZWY1ODNkMzZiZjkzYzRjMTE5Y2RjMjgyZWEwOTcgbGVnYWN5LXRydW5rCiszOTU2NSBiNjhiMTM1YjQ1NTI2MWQyODI5OTcwN2M2NmU1MzBjZjkwODc0OWQ2IHJlbGVhc2UyNC1tYWludAorMzk1NjYgYmNkMDVjZjJkNjFiYTgwY2U5YjU3NGI5Mzg3YTJkYjMyNTUzZjZlNyBsZWdhY3ktdHJ1bmsKKzM5NTY3IDhjY2FkNzMyMzE1Zjg5MmRiNTNiM2RiNTE5ZDc3ZThkMDA0ZTRhY2YgbGVnYWN5LXRydW5rCiszOTU2OCBhZmRhZGQ1NjkxOTcwNWMxZTE5MTk1MWYyYmQ0Y2I1NGEzYjcwNzE3IHJlbGVhc2UyNC1tYWludAorMzk1NjkgNWMwYzA2ZTIyNmVjMDZlYTY0ZjRhOTA2ZDM2OTFlNjA3MDgwOGE3YiBsZWdhY3ktdHJ1bmsKKzM5NTcwIDQwZGRmMzY2ZjVhMTUyZjZiZDIwZTk4MjA5MjE5MjliZDkyY2YzNDEgbGVnYWN5LXRydW5rCiszOTU3MSA5Yjk5NGM2N2U5MDljMDg2ZjAyNjE3MTFiOTliNjRhNzc0YjkxMDFmIGxlZ2FjeS10cnVuaworMzk1NzIgODczYTFiMmVmZGM3MzY1NzZkYTA0ODQ4MTRjZjY1NjA4OWMwMWNlZCBsZWdhY3ktdHJ1bmsKKzM5NTczIDJjMjgwZTQ2NjFkMGEwNjk0NDRjYTIxMDE0YjVhNGFkNTY2ZmY3YmEgcmVsZWFzZTI0LW1haW50CiszOTU3NCAzOWViNmEyMjFjZjMxMjQyMjFhMTRiMzhlNjNkNDk5MWNmMGNkOGZiIHJlbGVhc2UyNC1tYWludAorMzk1NzUgMjFiYzYyNjJlYjk5MjBhYzhjMmU1N2VhMWUzZjBiZmM3ZGU2YTBhOCByZWxlYXNlMjQtbWFpbnQKKzM5NTc2IDg5Y2YyZTNmZTcyOGE2OGY0YmM2NmZjYTljMGFmNzllMGUwODVhOWEgbGVnYWN5LXRydW5rCiszOTU3NyBmODZjZDI3Nzg2YWIzMTliNzM2NTUxMGI1NjA1MDNmNjY1YTBmYWE2IHJlbGVhc2UyNC1tYWludAorMzk1NzggNzc1NzFmNzFiM2U2N2IwYmYzZjVkODlhNDYzY2JlMzA1MDJiOTMwYSByZWxlYXNlMjQtbWFpbnQKKzM5NTc5IDVhOGJmOGU3ZDAxMDJjMGUwYjFlZmRkODFhZDAwYjcyMDcxZjIxYmUgbGVnYWN5LXRydW5rCiszOTU4MCBhNjcwYTVkZDFmYzZhYTkxN2JiNjJhZDQ1NjA0YzNmY2I2ODNmNDlhIGxlZ2FjeS10cnVuaworMzk1ODEgMjNkZGE5MmRlOTkzOGEyOGZmNTU1ZWM4MTM4Zjk0NDYwYjMxMjA1MSBsZWdhY3ktdHJ1bmsKKzM5NTgyIDFmMjM2ZTU5OGFlOTc2MzFkNGRiNDQ3MjMwMjUwMGZmMzM4NDFjM2IgbGVnYWN5LXRydW5rCiszOTU4MyBhZjNhMDY2MjVhNmU1OWMyZGJmOTJiNDBlYWJiNzRiYzJkNDU2ODFiIGxlZ2FjeS10cnVuaworMzk1ODQgMzVhOTllY2NhY2E2NzkzMjZmNWU1Yzk5MGIzYjlmNmE2OTRjZjliZCBsZWdhY3ktdHJ1bmsKKzM5NTg1IGVjYjc4ODYzYTRlZTdmMzE0MzJiNzlmY2MxNDM2MTQ5YzA1NTBkYzEgcmVsZWFzZTI0LW1haW50CiszOTU4NiA3YjJiOGRiOTgxMzYzMzUwN2NlNTk2NWRmMzg3ZDI0NTViN2UwNGIyIHJlbGVhc2UyNC1tYWludAorMzk1ODcgYzZkN2YxZmU5ZDFlYmU5MWE2YWJiOGYzMjVlMGI4Y2U1OTIwZDhmZiBsZWdhY3ktdHJ1bmsKKzM5NTg4IDkwYmI3MTEyMjI1N2MxMTIzY2VjODliNTUwOWI3YjkyODFlZmNmNDYgcmVsZWFzZTI0LW1haW50CiszOTU4OSA0ZDFiZDlkMGMwMDZkYjY2M2VjZTU3OWM4YTI0MGVlNmJhMzdiMDczIHJlbGVhc2UyNC1tYWludAorMzk1ODkgZDAyZDM4NzU1NGUyMDBiZWZjZWVjOTk5Yjc4OGY0NTkzYjQzNGI0OSByZWxlYXNlMjQtbWFpbnQKKzM5NTkxIDcwOTI3Yzc5OWEyMWUyNmIzYjVjZDBmNmZjMTA1Y2JhZjk3MWNkZjQgbGVnYWN5LXRydW5rCiszOTU5MiA4ZmZlZWRiNjA2ZDMzMGNkZDNhNGQxNmJhNjc2YTFhNmVhMzBiNGNjIHJlbGVhc2UyNC1tYWludAorMzk1OTMgNmYzZDIwOTU1NWViNTVmZjQ4ZjU1YTFkOTQ1ZDRlZmYwYWEyMWU0OCBsZWdhY3ktdHJ1bmsKKzM5NTk0IDcyNjYwYzA4NjZhMTlmMDAzNmU3MjA4MTc5OGJlYmI4ZjZlMWVmMWEgbGVnYWN5LXRydW5rCiszOTU5NSA3NzRiZjlhMzhiMmFiOTQ2NjZjNWZiNjU0ZGE0ZTI0ZTI0YTVjYTM2IGxlZ2FjeS10cnVuaworMzk1OTYgMTdhODJiYTQ1NDUyYWMxYjVhMTJkZTlkZGQ0MzNjZmE2MzlhMzc1ZCByZWxlYXNlMjQtbWFpbnQKKzM5NTk3IDM5OWM0MTE3NmJiNzlhMmYyNDg1YzlkNGEzODA3YThjMjA5NWQ0YTUgcmVsZWFzZTI0LW1haW50CiszOTU5OCBhOTU3NjVmNjkyODI1MWQ4NmYwZDEzNTdlYjQ2NjQxYWM0ODMzOTEyIGxlZ2FjeS10cnVuaworMzk1OTkgNGUwZDJhN2Y1ZjE1NDQxYmRjMTUyZmIxZTBjYTRlMDBhZmZjMDVmNyByZWxlYXNlMjQtbWFpbnQKKzM5NjAwIDc3N2IyOWQ5MTNhNjIyYTJlOTlmODNhN2VlYTIzZWFmYjBmNjcwOWEgcmVsZWFzZTI0LW1haW50CiszOTYwMSA0OTVlN2ZmYWQ3ZThjYzA2NDdiZmUyZGMzMDRlOTBjY2RlZmEzZmMwIGxlZ2FjeS10cnVuaworMzk2MDIgNjg3ZmFhOWNmNmViMDhjMTYyZWUzOTJmNTUwNGY0ODhiYzMyNjYzMCByZWxlYXNlMjQtbWFpbnQKKzM5NjAzIGMyNjBkM2I3ZDU4Mjk4MzA0MDNkMTVmYmQ1NGE3NDQ4OTYwNDhjODkgcmVsZWFzZTI0LW1haW50CiszOTYwNCAwM2NmZGNiYzRkMWYzYTM1M2RjMzg1MDdmYTQwYzJmZjczZDJhMGExIGxlZ2FjeS10cnVuaworMzk2MDUgNDVhYWE0MzZiOTQ1MTI2MDYzMTI0MjIwYmJkNTE4ZWM4ODgzN2NiZCBsZWdhY3ktdHJ1bmsKKzM5NjA2IDMwMjhlMzBhYTgzNTU5MDM1Y2VmMjcyYjQ3ZGJiMGI3ZGJiMDcxMDAgcmVsZWFzZTI0LW1haW50CiszOTYwNyAyN2UxNDI2YjdmMzFkNjQyZTQxMTRhMmZiZjYxM2Q4ZGY2NDg0ZjI0IGxlZ2FjeS10cnVuaworMzk2MDggZTIyMzM0YjFkYTY3ZmIyOTE2ZTY4NmQzYzRkZjljZTYzYjVjOTdmNyBsZWdhY3ktdHJ1bmsKKzM5NjA5IDdkZDRlNmNiOWQyNzUyODNlYzU4MGFiNzFjZmEzYzYxOWUxMGFmZWQgbGVnYWN5LXRydW5rCiszOTYxMCA2OGRiY2JmMDUxNmM1NzY1ODYyMDc5M2UyODQ2M2E3ODIyMDg5OTY1IHJlbGVhc2UyNC1tYWludAorMzk2MTEgZTMxNTY0YzdiZGJmN2EyNmIzZDgzMWFlODA4YWNmYWM1NjE3MTg2MCBsZWdhY3ktdHJ1bmsKKzM5NjEyIDFlN2I3NTUxOTRhNGRkYjc0OTVlNDA4MWNlYTY3N2E5ZjUxMzE0MzYgbGVnYWN5LXRydW5rCiszOTYxMyA0MDdhYzQ5OWE1YTM5MWY2NjBlNGNkNjVhM2RlM2U5ZjE5MmEyNTkyIGxlZ2FjeS10cnVuaworMzk2MTQgZTBhOWY2NmI3MDE0NjcxNmI2YzE3NGVmZmUxNjQzOGRmZGE5ZTQ3MiByZWxlYXNlMjQtbWFpbnQKKzM5NjE1IGFlNTM2ZTY2ZTg2ZjVmMDFjMThjZDQyNWUwMmRmZjY3ZGY3NzFjMzEgcmVsZWFzZTI0LW1haW50CiszOTYxNiBiNjQ2MzljZWEzZWQ4N2ZmZjRlYzBlNGE5MmI2ZTQzMTViYmI3Y2NkIGxlZ2FjeS10cnVuaworMzk2MTcgZjViZDdlYWQxNmM0NzIzNzFkNTVhYTE5YWUyNDAzNjhkOWVkMWY2ZCByZWxlYXNlMjQtbWFpbnQKKzM5NjE4IDRhZTdkYWFmMGE2NjExODg0NDlhYjgzZGZhOWEzNzZjZGFkOThhODEgcmVsZWFzZTI0LW1haW50CiszOTYxOCA4ZDM3Mjc2ZmRmMDc3ZDZkMjNkOTYzZDNmN2Y5NTM4MWQwMGYxOTI2IHJlbGVhc2UyNC1tYWludAorMzk2MjAgNmI0MmVlYjUyMTRkYThhMDMyMmQzMTYyZTUzZmVlMzE5MmI5N2NjNCBsZWdhY3ktdHJ1bmsKKzM5NjIxIDhmMmJmMTg2NzRjYmU5MzI4MjBmM2U5ZDQwZDJhMjgzYTFkYzliYmIgcmVsZWFzZTI0LW1haW50CiszOTYyMiBkMzNmNGZjODRkNGFmMmIxOWU2M2Y2MDMyMzVhOTE0OTc4YmVjYzkyIGxlZ2FjeS10cnVuaworMzk2MjMgYzM3ODNhMTJhMWJjMTlkM2QwZWIyODEyNDg3N2UyMWJlYzI4YTMyYSByZWxlYXNlMjQtbWFpbnQKKzM5NjI0IGNhODQ0NTE3Yzg0OTUyYzQ1NjQzMGJkNTViNjA0YjAzNzBmZWY1NzQgYXN0LWJyYW5jaAorMzk2MjUgNmEyMDgzMWQzNTdkNTdjZDYyNGJhYjkwZGUzNzMzZTUxZWI1MTMxMyBsZWdhY3ktdHJ1bmsKKzM5NjI2IDllZjI1Yzg5ZDBkNmMzMDY5Y2Q4MGFiOTU5N2MwYTI3MDBlMTYxNTcgcmVsZWFzZTI0LW1haW50CiszOTYyNyBiNWEwMTI4MmRhZGFmYzk5Y2NhNGVhNjExMjM0NDA1M2RiODY3ODFhIGxlZ2FjeS10cnVuaworMzk2MjggOGViNzVjMjhlZDk0MWM0MzJmNWQxM2RjMTUwZmMzN2NkYjU2MTA4MiByZWxlYXNlMjQtbWFpbnQKKzM5NjI5IGEyY2YyNTY0MmM4ZWNkZjk2YTg4NmY0MjNmZDg2MmFiNzM1MWI4ZWUgbGVnYWN5LXRydW5rCiszOTYzMCBjYmExMGM2ZDM0ZTM4NTkzZTY2ZDZhOTY4ZDUxZTBiODdiZTAxMGI4IHJlbGVhc2UyNC1tYWludAorMzk2MzEgYTgzZThkZjEzNDk4NjJhZjMxODRhNjIxOWRlNTQ3ZWZhN2ZlZjdmMCBsZWdhY3ktdHJ1bmsKKzM5NjMyIDFkNGQ4NWM3MzVlN2M0ZjhhMTllNjBlZGE2MmJjYjUxMTRmZDJjNjcgcmVsZWFzZTI0LW1haW50CiszOTYzMyA2ZDA0Y2IyY2RkNGFmY2NhZjU4OGM0ZWFlNGFhZDEyNGU1YmZlOTlmIHJlbGVhc2UyNC1tYWludAorMzk2MzQgODU2NTFlYjNkOWE5MGQxMjFhMGY0MmE1YjA0Yjc0MTJmMTUzNmUwZCBsZWdhY3ktdHJ1bmsKKzM5NjM1IDY3ODQ4Yzg3MTc2OGI1NTljM2YyMzRhOTRmOTZiYjRmZmMyZDg3ZDYgcmVsZWFzZTI0LW1haW50CiszOTYzNiA1NjExZGI0NTFhMzliYTJlZjdiOGE1MGJjMmFhMjQ1ODYwY2JiNWVmIGxlZ2FjeS10cnVuaworMzk2MzcgMGJlMDA3NzVhODBjNDUxYzA1MTYwMWE5YzQwNWQ3NjRhZmYzYzQzMSByZWxlYXNlMjQtbWFpbnQKKzM5NjM4IGRjNWQ3MDYyODNkNjJmZWJjNDU4N2FiZDliOWMyOTJiZTIyMDJmM2MgbGVnYWN5LXRydW5rCiszOTYzOSBiOGU1NzFlNmRlMmUzZTU3NjdlYjBlYWJkNjUwYTJiOTY1NGU3ZTYyIGxlZ2FjeS10cnVuaworMzk2NDAgZTQ1NGQ2YzFiM2MxZjNmYzNjMzE3MDBiODcwYmFjMzQzYzRlN2IxZCBhc3QtYnJhbmNoCiszOTY0MSA2MzBmZjU0NDBkZmM2ZTk0M2NkNDMxMzVjNmU4NWI3ZDk2OTI0Nzc3IGFzdC1icmFuY2gKKzM5NjQyIDc1MzQ1Nzg3OTQyNTU5MGE0MTM1OTYwODgwMzJhMWQ4YmY1ZjBjMTEgYXN0LWJyYW5jaAorMzk2NDMgNmMzZDBhMGMxOTU2MDA4N2I1NDM1M2QyNTQ2ZGFlNDFlYzhjYmQ4YyByZWxlYXNlMjQtbWFpbnQKKzM5NjQ0IDg0NTQxNzMxYjE2NmE2YzQ1NTNhYThjZmJjOWRmNzk3ZjAxZjk3MjggbGVnYWN5LXRydW5rCiszOTY0NSBmNmEyMDliNjk1MGNhYjczYWEwMjJiOTliNTdiMjUyY2NiZmE5NWY4IGxlZ2FjeS10cnVuaworMzk2NDYgY2VlZDMzZWFjNDM2MTY4MTJhMjY3MWVlYTY1ZDgzZWFmOGY5N2Y0NiBsZWdhY3ktdHJ1bmsKKzM5NjQ3IDVkNTIzNmVhZThiZDNkNjBkZjgwMzhjZjU5N2UwNjA2MzQ0MTVkNGIgbGVnYWN5LXRydW5rCiszOTY0OCA0MTJkMjFlMzBjMTMwZTIyNzZiOTg0NzA4OWE2MTc1NDhmZTg3Y2UzIHJlbGVhc2UyNC1tYWludAorMzk2NDkgNjEyYTEyMTc4ZTQ3YjcwODRjNmUxMDNkNTA5NWUwZjFlZjQ2OTEyZCBsZWdhY3ktdHJ1bmsKKzM5NjUwIGQxNDgxM2U3OGE1MDBmYjJiOTFhYzU0Y2U1Y2ExZDRkMzE5MDNkNjcgcmVsZWFzZTI0LW1haW50CiszOTY1MSA5ZDQzMzgxYzE4NGNiYmJjN2RhY2MyYTI2ZWQ1ZTAwODVhNDA5YTlhIHJlbGVhc2UyNC1tYWludAorMzk2NTIgZTFkZjQ4ZjI4NDdhZDhlOGRkZjYwMmI3ZjI5NDA5YTY4ZWM5YWY5YiByZWxlYXNlMjQtbWFpbnQKKzM5NjUzIGU5YmFlMmZlYmFjODAwZTAzYmNiY2ViN2I0ZTQ4YWFhM2QwOTcyNTAgbGVnYWN5LXRydW5rCiszOTY1NCBmMDk1MWZkYWVkMzdjMGFmMzM4NThkYTBhN2ZkNDA2ZWIxNDZhZDQ0IGxlZ2FjeS10cnVuaworMzk2NTUgMTcyZmNkOWMxOTUyNjE1YzgxZmQwY2E4MWQ4ZTEwZTU1NTA2ZmNkNSByZWxlYXNlMjQtbWFpbnQKKzM5NjU2IDhiZGQ4YzJjNmM0OTVmOGE2ZjU4YTQxZmQ1NGE2ZDYzMjE2ZDQ5YTcgbGVnYWN5LXRydW5rCiszOTY1NyAzZTBiYjdmNzVhYjc2NWE5YzhhNTdiOTAxMWI4MjE5YTdmNjE1YzA5IHJlbGVhc2UyNC1tYWludAorMzk2NTggZTQ2NmMwYTU1MGI4OGNiODdiYTQyYTUxYmIzN2JlY2RlMjg3YjE5NiBsZWdhY3ktdHJ1bmsKKzM5NjU5IDAyZmU1ZDQ5NmZjZTk5MjQ2YzYzYjUyMzBhMjcyZjJkZGRiZmI0ZWUgcmVsZWFzZTI0LW1haW50CiszOTY2MCA2OTA3ZTQ3MWJkYWNlNDAwZDIzMGEwOTRjNmY2MzA2NzZlNGEyNGU3IGxlZ2FjeS10cnVuaworMzk2NjEgM2JlODM1MzUwMDgyODYyYjVhZTY4ODNkZWI0MDBmMmRjYzNlMGViYSBsZWdhY3ktdHJ1bmsKKzM5NjYyIGY5ODc5MjM3ODk1NDE3YjdkZDg1MjgxMTliY2Y0ODY3ZDhhODVlNTggbGVnYWN5LXRydW5rCiszOTY2MyAyOTg1ZTQyZWIyZDJiMDkxY2FkMThhNjJmM2RmZWJiNGI5OTVmNDc0IHJlbGVhc2UyNC1tYWludAorMzk2NjQgMzMwYzIzMDc1MDU0MTkxMDZmNzE2NzM2ZTAxMjMxNTAwZmYxYmMyYyBsZWdhY3ktdHJ1bmsKKzM5NjY1IDJmZGE3YjE3NDc5NGQ5YzAwNzhlOWI2NTc1ZmUwOGZkNDFmYzk5ZDQgcmVsZWFzZTI0LW1haW50CiszOTY2NiA1NDhiYWQyMTU0MjlmMzlhZjkzNzM3ZWExOTViOTVkZGEwMmE4MmIzIGxlZ2FjeS10cnVuaworMzk2NjcgZTI5OTU1NjM2MTBmNzE3OTRlZWRjNWY5YWJjYWQwMjFjZTA4YjhiNSBsZWdhY3ktdHJ1bmsKKzM5NjY4IDdhN2U4NzliMmFhMWIyZTA1OTFlYjU0NGY5OGE0YzZiOGVmZmZiZmIgSURMRS1zeW50YXgtYnJhbmNoCiszOTY3MCBiNjFjZGQ0Zjg4OGJmOWY2MTI4ZjM2NjIyNTEzNThmMTExMzBkYjE0IGxlZ2FjeS10cnVuaworMzk2NzEgMDhhNTUxZTc1NjFjYzJiNDYzZGM3NzI1YWZhMjhiZDJmZWIzODRkMyBsZWdhY3ktdHJ1bmsKKzM5NjcyIDk1YzBkZDExYWZhNzhkMmE1ZmUxOGM2NDI1NjRiY2FiNzQ0ZjE1NDYgbGVnYWN5LXRydW5rCiszOTY3MyA1ODZiNDhlM2NiOThhMDMzYTNkNzMxMTIwYWJiMDE2ZWY4MGE0NjFjIHJlbGVhc2UyNC1tYWludAorMzk2NzQgOTIxYWZkMDhhNWRjYmQ0MjAxMjk4N2U4YjJiN2NkZTM5ZjBkODE5MiByZWxlYXNlMjQtbWFpbnQKKzM5Njc1IGQwYWY3YjA5OGE5OWQ2MmVlYjJlNjdmNjE3M2JjMjg3MDZiMDljNGIgbGVnYWN5LXRydW5rCiszOTY3NiA5MjM3MjNhOWM0M2NiOTZlODE4NTMyZTAzMmExOTU3MGY1MTVjYmNlIGxlZ2FjeS10cnVuaworMzk2NzcgMzU3MjI0OWMxZTc3MTAyOTQyODhkMWNkNTk5NjMyMzMzNmU0YTE3MyBsZWdhY3ktdHJ1bmsKKzM5Njc4IGQ0M2RmZTY5NWQwOGE0YTc0M2I2ZGUyNTE3NzlhMjM0OGE5NDc5N2QgcmVsZWFzZTI0LW1haW50CiszOTY3OSBlMTZiNmJkZjNmODk5YTdmNzZiODE3M2RiNWRiNzkzZDllNGE0ZTNkIGxlZ2FjeS10cnVuaworMzk2ODAgMjJhNzIwYjM1MzE0ZDAxMjk5YWRhZWE2YjJmYTA1MTFhM2IzMzJjMiBsZWdhY3ktdHJ1bmsKKzM5NjgxIGU3OGU4NGYxYTgyNDg3ZmNjNDUzZWMzZTQ0ZDFlYmNmYzViODI5YTkgYXN0LWJyYW5jaAorMzk2ODIgNzY2MzVhYjdiNzA3NGQ4NTYzNTFiYmI4N2QzNGRmOTdmYzE5ZWIwOCBsZWdhY3ktdHJ1bmsKKzM5NjgzIGE2NGJlMTM4ZjBmNmM0ODA2MGQ2NDNkZTg5NGY5MjgxNGJkZTUzMDUgcmVsZWFzZTI0LW1haW50CiszOTY4NCA2ZTA0YTU1N2FlMjBjZDZlZmMyZGNiNjgxOGM3YjE0NzA4OGUwY2RiIGFzdC1icmFuY2gKKzM5Njg1IDRlMzk4ODM3MzczYzlhZDZlMzc1MWY1OWQ4YTM0NzQwOTA1NzE3MGMgbGVnYWN5LXRydW5rCiszOTY4NiBhYWUzNzQzMGY1MjU5NjM0NzdhMGM1YWFjM2ExM2JmYTYwZDYzNGI0IGFzdC1icmFuY2gKKzM5Njg3IDg1NjdlYjIzZTY1ZGViNGYzYjEzNmJjMTk1N2VkMGRiM2M5M2M2MzIgYXN0LWJyYW5jaAorMzk2ODggMGU2OTA3OGNhZDkwMGZkMzdhMjU1M2I3ZTg3YjA5YjMzYWRhNDA4MSByZWxlYXNlMjQtbWFpbnQKKzM5Njg5IDU2ODVlYzU5ZjM1Yjg0MTMwMjFmMTQzZDhlODQ2Mzk2ZDFjZmU1NjAgbGVnYWN5LXRydW5rCiszOTY5MCBhYWIxZDVmZGY2NGRmNjU2ZWRmM2EyNWYzNjNlMmQxMjc4NzUyMDFmIGxlZ2FjeS10cnVuaworMzk2OTEgOGU4NmRiYWQ4YzcxNGU5ODhjOGEwOTIxYjhiMWY3ZmUxM2FhYTFiOCBsZWdhY3ktdHJ1bmsKKzM5NjkyIDU5YzRhNjU2NDJjNTY3YWQ4MGEzOGM1NTQ3ZDVhYzAyODQ3ODY5YTkgbGVnYWN5LXRydW5rCiszOTY5MyA2ZTcwZWQ2ZGZhZDY3NTc5NzA5YjIyMTk3YjdlMDk5MTBlNmY2YTRkIElETEUtc3ludGF4LWJyYW5jaAorMzk2OTQgZTllMzBkOTI4NzFlOWEyN2FhM2E2NzQ0NTAyYWFmNzJmNmFjMDg4OSBhc3QtYnJhbmNoCiszOTY5NSA3YjM1YzI5MDQwYzk5MmZhYmU5NDI0ZTM0N2VkZmRmY2VjMzFlMTY3IGxlZ2FjeS10cnVuaworMzk2OTYgN2I3ZWIzZTc2MjBkZjkxMDAxODhiM2I5Y2EzMThhNjYyMzA1MTM0NiByZWxlYXNlMjQtbWFpbnQKKzM5Njk3IDcyZmViZWU1OGU3YjllMzY4MDgwNWFiNmIxOWE0M2RlMmNlMjMyYTMgbGVnYWN5LXRydW5rCiszOTY5OCBjMzhlNGVjN2I3ZjExZDU2ZTNjY2EzNDM2YzYyYzA1NGE5MGFmMGFmIHJlbGVhc2UyNC1tYWludAorMzk2OTkgN2U3OTg5YjZhYzM2YzRiOTE1NTk3YThiY2VhZjQzZjBkM2MwYTAzYSBsZWdhY3ktdHJ1bmsKKzM5NzAwIDVhNjI2ODZmN2RmZGY2NGViNmMxM2VmMzNlYTJkYmUzNWVmZmY3YTQgcmVsZWFzZTI0LW1haW50CiszOTcwMSAzMDdiN2VlZTNlM2Q5MjIwNzNhNjZjN2JlNDhjOWU4ZWMzZWExNWFmIGFzdC1icmFuY2gKKzM5NzAyIGQ5NDdmYmVjMzVkM2YwNGYxNDhkZTRmMGFmNGZmODI2ZjkwNWJiM2EgcmVsZWFzZTI0LW1haW50CiszOTcwMyA3MjU5NWE2MTU1NzFiNDA2NzFlOTMzZDIzMzFlNzJjNmMxNzJmYjQxIGxlZ2FjeS10cnVuaworMzk3MDQgYzNkNjRiYzdmNjk2MjI4NmQ0YTQwYjA4Yzc1MzQzYmYzNTc3NDRmMiBhc3QtYnJhbmNoCiszOTcwNSA1N2Y2MmU1YTM5MjE2NjYwMGU0YzA3NmI2MDVmNzg5OWU2YWMxYjJmIGFzdC1icmFuY2gKKzM5NzA2IGM3YTdlM2QxYmZhNzBhNDIwOGRkMDk3ODFiYzU5MWE3MDkwNzMyNjUgYXN0LWJyYW5jaAorMzk3MDcgYWM3ZjU0MDcyNDZmNDBmZDNmYWQ0OGQ1MDY5ZWY1OTE2YWJhNWU2MyBhc3QtYnJhbmNoCiszOTcwOCBlZjdjZGRlYjMyN2NjOGM0Y2Q3MDU1NWQ0NTAxNGVjZDNiN2UzMzc5IGFzdC1icmFuY2gKKzM5NzA5IGIxMDgxYzQ5NWQ0NjczM2JiZmE3ZDJiY2EzYjEzMjA4MGRkYTQ3ZGQgYXN0LWJyYW5jaAorMzk3MTAgMTc0NWMyZWRjNTE0ZDkyMzJjZTU0Zjk1MWU5NzQyOGQwZWVhZmFmYSBsZWdhY3ktdHJ1bmsKKzM5NzExIGE0NDI5Yjc3ODdkNDRlNWI5YjJmODYxMjUxZTIwZDFjNmVlY2ZlZGQgcmVsZWFzZTI0LW1haW50CiszOTcxMiAyMzQyY2RiOTI2OTU2YjJkOGQ4ZGYzMDUzYzU3NWYwZTZjNDFmZWI4IGFzdC1icmFuY2gKKzM5NzEzIGVjZTVlYjZmMmI1YTMzZGQyOGE5MTY1ZGYyYjExNTY0ZGJjNjRmZTIgYXN0LWJyYW5jaAorMzk3MTQgM2JkNzQ4MjRhM2FjZDBhMWU0MDZiNTM5ZGNiZmJkYTM3YjA2ZWQ0OSBhc3QtYnJhbmNoCiszOTcxNSBkMjA0NGU1YTA2YzdlNjM4YTJjYTNhYjcwZjdkMDI1MWU5YjM0YmMyIGFzdC1icmFuY2gKKzM5NzE2IGE0YmVjN2I2YjY0MDViM2VhYWMyOGU0NWYyMTVlODRkYzkyYTUxYzMgYXN0LWJyYW5jaAorMzk3MTcgMzBlODhhMTc1ZmRjOTBjNzk3NTE4ZDY5ZGM5YzNlYmY2N2Q0Njk5NCBhc3QtYnJhbmNoCiszOTcxOCA1MjVkYWMwZDI4NWJmMmUyNDg4MDBjNTIzZGVjYmQyZDBkNjA2YTdlIElETEUtc3ludGF4LWJyYW5jaAorMzk3MTkgNzZiOTFhY2FkNWU4OGNjZjcyNGM0YWYxNDRlMzZlNDhiMWFjZTAzNyBhc3QtYnJhbmNoCiszOTcyMCBiYzdmNmRlYWIzNDBhZTc1NzM4NDYyZWU3Y2JhZGRhZjk0ZTliZWZkIGFzdC1icmFuY2gKKzM5NzIxIGRkMjkyNjFjYjQzODIwZWJkOWJlODYwYzVhNGU3NTMyOGJjY2NlNzggYXN0LWJyYW5jaAorMzk3MjIgOWViNDQxYTcwNzI0NmJkYTFlN2FmMWRiMzgxMDFlYTYxOTMwZjE1ZiBhc3QtYnJhbmNoCiszOTcyMyBjZGE4NzM1NzE4NWZiOTNjZjBhNzkzMGNjYzhjMTcxZjNiMmQ3ZDk1IGxlZ2FjeS10cnVuaworMzk3MjUgNTY2OTMwN2MxMzFjNTM4NDY2NTZhY2U5YTZmMjljMWExNjk5Njk0YiByZWxlYXNlMjQtbWFpbnQKKzM5NzI2IDQyZDNhNDQwMGQzODY2Y2E4NjQ1YzBmZGQ2NDYzZTIzZDhlZjdkMWEgYXN0LWJyYW5jaAorMzk3MjcgMjE2MTFmZjU1OGE1MDIzODNiNTY5ZWJhYjkyNGRiNWM5YTUwZjQ3MyBhc3QtYnJhbmNoCiszOTcyOCBhZTUzOWFmNGFmYzUwMWQ0Mzk2ZDEyZWY2MGNiNDQzOWI0NGRkMDA0IGxlZ2FjeS10cnVuaworMzk3MjkgNjBkZmUyZjU1YzBmNTNmYzY0OTE2OGE3NTFlZGYzZmY0OTliMTgxYSByZWxlYXNlMjQtbWFpbnQKKzM5NzMwIDY2NzkyYTJlZjNkYmQwNDNjYTRlOTZkMzc0MWI0N2FjNjRmNDM5NDUgYXN0LWJyYW5jaAorMzk3MzEgMDZhZDYzNDU2NDlmZGRiNmE0OGFhYjYyN2M4ZGRiMDVjYTk5ZTcyYyBhc3QtYnJhbmNoCiszOTczMiBkN2Y0MDcwOWUxNTg1NDBkYWZhNzU2MTgwOTEzYjRlZTVmNDkyZWYxIGFzdC1icmFuY2gKKzM5NzMzIGJiNWJhNTQzNTllNWJjZDM4MmY5OTg5NzIwMDc0YTUwYmE0ZDE0MjMgYXN0LWJyYW5jaAorMzk3MzQgNDk2ZWI1ZGVkNWU0NWIzZWM4MjRkMzMyZjI0ZGY5NGVjYzA5ZDlmOSBhc3QtYnJhbmNoCiszOTczNSBjOWZhODViNDA1M2I3NWI3OTI0OTQ2ODhjYjUzNjM5YzYyNjU4M2ZhIGxlZ2FjeS10cnVuaworMzk3MzYgZWIyYzA5ZDg3ODcwMTgzZjc5Zjc0NDllYjY0YzMzZWQ2YzhiMGQ4NiBsZWdhY3ktdHJ1bmsKKzM5NzM3IGZlMTAzNzNjZjhhMjcxZGRhYmQ3ZDU5ZmIxYjhlNGZmYTMzOTA5ZmQgYXN0LWJyYW5jaAorMzk3MzggODNmMjQ1ZjcyODMyZTM5MWY4ZmVhNGEyZDRkNzAyM2RhYTYzOThiMiBhc3QtYnJhbmNoCiszOTczOSA1MzY1OTBjMzIzMTE4NTJhMzNhMTg4ZmNkNzFlZDZkY2M4ZDZjOWMyIGxlZ2FjeS10cnVuaworMzk3NDAgNTc0N2NlZDM1NDI0YTZmMTA2NWEyMDk3MmQyMjFlYjdiYjEwYzgwNiBhc3QtYnJhbmNoCiszOTc0MSBjYjVjYzQ4YjVjMjk1YWYwODJhOTc3NTA0N2ZlNWZlNGVjOTdlMmM3IGFzdC1icmFuY2gKKzM5NzQyIGJjN2NhMTYzMzRiYWI1NGFkODgxMWJiMDA1OTg3MWRlNTlkY2NkZDggYXN0LWJyYW5jaAorMzk3NDMgOWVkNDNlNjM3YWU3YjVhZWQ1YjFhZGM4ZGNmOWI4ZmNmN2IxMTNiNyBsZWdhY3ktdHJ1bmsKKzM5NzQ0IDY5MTNhYmI3MDQ3YWVmZjE4YTgyMGIzMzMzOGUxMDVkYjlhYmM2YjIgbGVnYWN5LXRydW5rCiszOTc0NSA4YmVjMTIwZGJiMTZhNjc5NDRlYjNkZWZiNGE2NjIzOTQzZmQ5MTE0IGxlZ2FjeS10cnVuaworMzk3NDYgMGI4MjY4ZTBkNzBlNzc4Mjk5YWEyZjJmOWM4ODRjNDc4YWJhMWY2ZSByZWxlYXNlMjQtbWFpbnQKKzM5NzQ3IDRmMjg0M2RmYTIzYzc5YWMyN2E4ZWE2MDIzNWE4MTRlMGQyZTg4ZDggbGVnYWN5LXRydW5rCiszOTc0OCBkMTIwMWZhZTA2YTg1MDA3M2UxNTNhM2U3Y2ViNTY5MThhMDM1NTJiIGxlZ2FjeS10cnVuaworMzk3NDkgZGZiOGZjMzc3YjU4ZTY4ZGU2MGQ3OGRhMjk3YjBlNzc0NGQxMmU5OSByZWxlYXNlMjQtbWFpbnQKKzM5NzUwIGVhNjgwOGJhMTYzN2JjMjc4N2FmYmUzZDAyZjVlNmQ1OTIzM2FmZmQgbGVnYWN5LXRydW5rCiszOTc1MSA3ZWQ4NzA1MGUxNjk3NDY2YzIyMTRkNThlZGNmMzBlMzVlMmFhMjI5IHJlbGVhc2UyNC1tYWludAorMzk3NTIgNTM5MGRkYzc3ZWI4NjZkZmYzNzJkMWFlYTJkMmI1MWJlNzRiMzI5YSBsZWdhY3ktdHJ1bmsKKzM5NzUzIGUwMThmY2UxNGYxMDA2NTQxZTEwYjg0MTMxNDljYjA5MjBkMzhkYmQgbGVnYWN5LXRydW5rCiszOTc1NSBkMDM5OTM3OWQwY2IyNjRjMzgyMzEzMDMwYzM0MzI3NWU0M2FkNmNhIGxlZ2FjeS10cnVuaworMzk3NTYgYjMyYTM5MDkxYWVkY2I2YjA2OWNmMGNkZGU2ZTkzMDRjZGMwMWNmNyByZWxlYXNlMjQtbWFpbnQKKzM5NzU3IDM3MTYwNTE4MzBjMmNjNWFiMGQ1YzFjODIyOWUwNTA1MWQ0ZGM5ZjcgbGVnYWN5LXRydW5rCiszOTc1OCAxYzRkMTkyZjE1NjhkZjhjYWUyZDM1MTQxYTcyOTI0NzU2NGEzY2ZlIGxlZ2FjeS10cnVuaworMzk3NTkgMDViNzE1ODIyYmE1OTZlMjc1NTU1NWM1MTVjOGQzNzJjMDgwNDNmMCBsZWdhY3ktdHJ1bmsKKzM5NzYwIGU3ODE1NDk1YmIyNzliMTkyZWMxNGRlNTNhY2Q5YWE5OWQzZTU4NWMgbGVnYWN5LXRydW5rCiszOTc2MSA0MDdjM2RhY2JkN2MzMDVmYzY3NDIzMDI4NmEyN2JhYjIzOWUxZGNhIGxlZ2FjeS10cnVuaworMzk3NjIgNzE4ZTlkZTIyZWE3MjVlMjViNDBmYjU3ODViYWVkZTMwZGJlYzFiNSBsZWdhY3ktdHJ1bmsKKzM5NzYzIGZkY2I1OGNiZmY0ZGYwZDZkMDIxNzZmZWU5ZDVmZDIwODQxNjA2MTIgbGVnYWN5LXRydW5rCiszOTc2NCAyNWJhMmYzMzEzYzkxY2M0ZTc5ZjY3NzNiZWIyYjU3ODk0YzI2YTc0IGxlZ2FjeS10cnVuaworMzk3NjUgMTc4MjhhMDBhNDU0NGZhM2ZiNDIwNjViYjUxZDYwYmU4ZjU2NTEzZiBsZWdhY3ktdHJ1bmsKKzM5NzY2IGE3YTQ5M2RiNjIzMTNkMDMzYmRiYzRjNjVhODg3N2YzNGI5NTZlZGQgcmVsZWFzZTI0LW1haW50CiszOTc2NyBlNTYxNDQ3MDQ4MDhkN2NlNmMzMDVjMGI0ZjA1MTRlMWViYmRiYTUxIGxlZ2FjeS10cnVuaworMzk3NjggNDc0OTZlN2RiZjJmY2QzMDYwYzc5MDFhMTIzZmM2MWIxYzI3NjJmZSBsZWdhY3ktdHJ1bmsKKzM5NzY5IDgxZWJkNmUxNzdhM2Y4YTkwNDM1N2Q4YzA3MGE3MDdhM2I4MzAwNGUgbGVnYWN5LXRydW5rCiszOTc3MCAxNDQwOWI4MjA5MzNmYzc3YmQ1Y2FiOWIxMWEzYWVmMjVhMTY1NjdlIGxlZ2FjeS10cnVuaworMzk3NzEgYzI4YzFhMzdiODZhZTE4MDA4MTk2MzA5OTI2NDY4NWFkZDU0Yzg2NSBsZWdhY3ktdHJ1bmsKKzM5NzcyIGI3MmIzZTUxN2E0ZGU3YTI0ZGU5YjIzM2U3ZjVjNjU5YjU0NzQwZTYgbGVnYWN5LXRydW5rCiszOTc3MyBlYjE1Y2RkNGEyZjEwMDE3OTIwNzRjYTA3ODkwMjY5ODk0NTJmZjgyIGxlZ2FjeS10cnVuaworMzk3NzQgZTBlMzIwZjM2YzkzNjNmNmQ1ZjhiZmM0MDczZGQ2YzUyNzk0NGY5OSBsZWdhY3ktdHJ1bmsKKzM5Nzc1IGQ5MWVkNzEwN2ZkMmRhMDNkMzU2YWNiYzUyNDNhNjhkMGI1MDU4NTEgbGVnYWN5LXRydW5rCiszOTc3NiA3OWM1YjgxN2ZlZGMxMTU3OTMwYjkwZTAxZjIzZmI5NjA2Y2EzNWNlIGxlZ2FjeS10cnVuaworMzk3NzcgN2E1YWMyMDMxNTRhYWEyZDc1NzVhMWJkOTI1ZDg4NDNkN2U2ZTIwMiBsZWdhY3ktdHJ1bmsKKzM5Nzc4IDNmNjMzNDFkOTMxMmY2OTIyMWQ2NjcwZDVjZmU1OTNkOTcxNDdhYTkgbGVnYWN5LXRydW5rCiszOTc3OSA1MjhlMDM4ODM5YTJhYWU3ZDNkZWEyZTU3YjhmNDU0ZTc2YTk4ZTAyIGxlZ2FjeS10cnVuaworMzk3ODAgNGFhZjUwNmE3ZDA5OTJiOGMxNTRhNTBhYjU2NDM4ZDNmZGYyZjFlNyBsZWdhY3ktdHJ1bmsKKzM5NzgxIGYzNzYyMjFiYmI3NmMxZDI3MmU0MjM4NDBjMzQ4YTFjNWMyM2RiYjkgbGVnYWN5LXRydW5rCiszOTc4MiAzNGVmOWYxMzhjMzAzYjc2MmFkODY4MmEwYmE0ODUwYjA1YjkzMzZlIGxlZ2FjeS10cnVuaworMzk3ODMgN2VlNjg4MGNiMTZmMjg1MmUwN2YwZGY1MTNkNzJkNGUyZTE3NWVkYSBsZWdhY3ktdHJ1bmsKKzM5Nzg0IDU3NmI5YTljZTU3OTdjZjdjNjcyYTk3NDU2ZDY5MjFkYTEwMmRhOTQgbGVnYWN5LXRydW5rCiszOTc4NSA3ZDA2NTQzNWU4NmMxYjg4MmNmZmFiMGNmNGRjOTBjZjg3Mjc3ZjM4IGxlZ2FjeS10cnVuaworMzk3ODYgOWE3YzJkMWU1NmRlMzFkYWVhMjBmYTM0OWIyMWVkMDA0OWRlY2QyOSByZWxlYXNlMjQtbWFpbnQKKzM5Nzg3IDA0NGQ4ZTBmNjVmMmZiOWUzNjExNTdhZDFiMzgyNTMxNzFjMjVmZDMgbGVnYWN5LXRydW5rCiszOTc4OCBmNjRmYjI4NGVkMTU0ZDQ4NzI5NWE4OTBjYTVmMjgyNDgyMjI0M2ZjIGxlZ2FjeS10cnVuaworMzk3ODkgMGFlZjM1MTIyM2RhZWQ5ODRjMzg1ZDI1OGQ2YTZlZjk1Y2Q3NjRiZiBsZWdhY3ktdHJ1bmsKKzM5NzkwIDY2YjkwNzVkMTQyYjhlYzUzYjQ2YTM0ZmVkOThkNzZhNDdjMTZhM2EgbGVnYWN5LXRydW5rCiszOTc5MSAxNDRiNTI1MzU0MzRmZDM1ZTE4ZDc5ODFjNzFkOGU2M2IyZTM5MTQ5IGxlZ2FjeS10cnVuaworMzk3OTIgODkzYmU5NGM4ODkxODJhOTA5MWI3OTIwYWRiNGUzZDFkMzc3MjQ3ZSBsZWdhY3ktdHJ1bmsKKzM5NzkzIGVmZTYwNzMwYTFlZWFiNmQyNjIyYTBmMmE4NWQ2NmZiZGNmN2Y5YjYgbGVnYWN5LXRydW5rCiszOTc5NCA5NWQwYTg1N2FlNTFmYTE1YTU5ZWMwMTljZWY5ODAzM2YzMmJhNzU0IGxlZ2FjeS10cnVuaworMzk3OTUgMTlkNzk2YmQ3NDBmNGEwOTc0OTY2MjFjMmE4MzkxMGE1NzJhMDA4MCBsZWdhY3ktdHJ1bmsKKzM5Nzk2IDcyY2IwNDFjY2RlM2FjN2JlYjI5NmQ0OWJmYzIwM2E1ZTQzYWY3ZDEgbGVnYWN5LXRydW5rCiszOTc5NyAzMWQzNmRkNTk1OWNlOWQ5ZTYyNGJmYTIyYWUyZDUwZDZkMmViYTUzIGxlZ2FjeS10cnVuaworMzk3OTggYWFlNDExMzUyZmJkNmE0YzMwYjk3NDVhNzIzYmY3ODY4YmMwZmFkNSBsZWdhY3ktdHJ1bmsKKzM5Nzk5IGIxYTBlMWEyYjI4ZmFjYmJlZWE3YmI3OTg2ZDA4ZDA5NTQ5NTMxNzEgbGVnYWN5LXRydW5rCiszOTgwMCBjNmRiZjg4ZTRiMTRiODZkMDIxNmY0Yzc3NWM1MjQ4ZTNmNDNkNTE0IGxlZ2FjeS10cnVuaworMzk4MDEgZGNhNzBmNGVjNzdiNjc0Mjk0ODAzMDY5ZmFiNTBiNzFmNzgwMDc5NCBsZWdhY3ktdHJ1bmsKKzM5ODAyIGEwYmIwZmQ1ZTE0M2E5Yzg0ODY5MDA4YTIxNzQwNTg0MTM4NDNiMTIgbGVnYWN5LXRydW5rCiszOTgwMyAxNjYxZTczYzA3YWJhMzk5OTk4ZDgzMGI1Nzg3OTc1NGJjYmYxMDIwIGxlZ2FjeS10cnVuaworMzk4MDQgZGI5ZTJkZWE0YzExM2Q2YmU5ZmJjNzE4MGEwZjk4MmI4OTI5NTA4MiByZWxlYXNlMjQtbWFpbnQKKzM5ODA1IDE5YTM3YTlmNGVmOTRiMjZjMTY3MDI5NGVkYjc3NTFlYmJhOWJlYWIgbGVnYWN5LXRydW5rCiszOTgwNiBmN2IwY2JlYTkwNWI1YjM0OGQxMGI3Mjc5NTJkMmFmM2NjOTBlZTNjIGxlZ2FjeS10cnVuaworMzk4MDcgMWFjOWVkMWI1YTAzYzE5MzUzZDc2YmI3ZDg3ZDRiYjRiMWZmOWI2NyBsZWdhY3ktdHJ1bmsKKzM5ODA4IGI4YjEzYjFmZmU3NTcxYjRhZjVmNWJjOGI3OWFmMTNkMDI4MjNlMmUgbGVnYWN5LXRydW5rCiszOTgwOSA5MTRlYzBhZmE1MWMyMTViMTA4Nzk4OGIyM2M5Mjc3YjQ1OWIzNDRkIGxlZ2FjeS10cnVuaworMzk4MTAgMzlmMzYzMGE3MTI0ZDkwZjdiNTc5ZjQ5NjI0NjYyYjM4ZjU0Yzc5YSBsZWdhY3ktdHJ1bmsKKzM5ODExIGRiYzk4OGJlYTU1ZDZmNmM1MTQ1NjUxZGI2YzU5N2JhZGRkNmE4MjEgbGVnYWN5LXRydW5rCiszOTgxMiBmZDYzMDA0MmFhZDQzZGVjZjUwYWY2NDIyNGI2YTA3ZDEzNGMwYmUxIGxlZ2FjeS10cnVuaworMzk4MTMgMzc3ODA4M2ZlMmM4NjJjNDBkOTNlZDIzYzY3MTFiMzQyMzE2YzBlZSBsZWdhY3ktdHJ1bmsKKzM5ODE0IDg1N2Y2OGZiYTI3NTQ0ZGFjYTMyOGIwOWQzY2NkYjY3YzNhNzFlMmYgbGVnYWN5LXRydW5rCiszOTgxNSA4NDJjYWEyNDU5MTdkODg1Y2Q5YzM2MGYxMGM4ZGQxMzgwMjc4OWFkIGxlZ2FjeS10cnVuaworMzk4MTYgNGJmNjQ1OWM4ZTNiYjk2NDMzMjZkNWFiOWQ2MTcyNDM4N2ZiOTM0YiBsZWdhY3ktdHJ1bmsKKzM5ODE3IGUxN2EzMDdiMTIxNjk0MDkwNWRiM2YxY2MzMzI5MGE3ZDA5NmJiMDIgbGVnYWN5LXRydW5rCiszOTgxOCA4ZGFlZmU4NDk5NDkzNGRlM2U2NTg0ZmNmZjMwNTM4ZDA1ZjMxYzhmIGxlZ2FjeS10cnVuaworNDEzMzggMTkzMzA1YzlkYmRiMzU0OWFkNTk2M2Y1ZjgyZGE3NDdhNjJjNTU0YSBsZWdhY3ktdHJ1bmsKKzQxMzQwIDc2YTZlOTA4NjI0ZDdjNWNkYjdlNzdmNzdhYmM3ZmU2NGNkNjdkOTUgbGVnYWN5LXRydW5rCis0MTM0MSA1MmY2NTg5ODg3NGE2ODg4NWIzMjdiN2Y3ZDg2NGM2OWMzZGY1MmM2IHJlbGVhc2UyNC1tYWludAorNDEzNDIgNDRmZTE1NzI1NWJjNGNkOGEwNWY3ZjA2MDBjOGZlMjc4ZjJlMDNhYyBsZWdhY3ktdHJ1bmsKKzQxMzQ2IGRmYjExMzllZGM1NWExYjBmN2YyNzJlZDc3MzVjZjU0YTQwMDQ2ZGYgbGVnYWN5LXRydW5rCis0MTM0NyBjMmE5OGJhMzcxYzhhOTBjMGJkYzFhNDJjNzI3Mzk5MjI4ODI3OWFlIGxlZ2FjeS10cnVuaworNDEzNTIgODg1MjMwMTc0MTRjMTg3M2RjZjNjMmMxNTgxNTlmOWRjNjZmYmYxOSBsZWdhY3ktdHJ1bmsKKzQxMzUzIDM5YjFlNzRiYTE3YzU1NDcxODk2ZTFhNDQwNDUxMjY5ODYyMGNlODIgbGVnYWN5LXRydW5rCis0MTM1NCA5YjBkZDFmNTNhZTIxODZkOWYyOGVmMjA4NWRhMmQ2YmMwMmNhNzMyIHJlbGVhc2UyNC1tYWludAorNDEzNTQgYWJiZmU5MTc4NzMxOWI3Zjk0NTQzZjQwZWE3YmExNWQ5OWFkNmUwYiBsZWdhY3ktdHJ1bmsKKzQxMzU1IDJlMjVlOTgzMjNhN2Y2NTFmYTkyNWM1NDA3NGNkYTkyMDg4YmU1ZDYgbGVnYWN5LXRydW5rCis0MTM1NiAxM2RlZWM1MjgxZWZjYjIwYTVkNDI0MzAwYWE0OGEwZTQxNjRjNjNiIHJlbGVhc2UyNC1tYWludAorNDEzNTcgZWI5YTM5YzFhNzhiYjczZWRmM2YxZTNkOTRmNGEwNTFjY2VlODFlNSBsZWdhY3ktdHJ1bmsKKzQxMzU4IGEwMDBmMzIyZGQwNWRiZmFiYzVkNjYxZjM1NWVlNzY5MzI1YjE1ZmIgbGVnYWN5LXRydW5rCis0MTM1OSBlZDI0N2Y2ZTZmMDc1NGRmODBjY2U1OTNjOWUxODdkNTY4ZjI2ZTEwIHJlbGVhc2UyNC1tYWludAorNDEzNjAgMjBiYjdmZjE2OTUyNzdiY2NkYTZlNTAzYWYxNjQyMzA3NTI3ODU3YyBsZWdhY3ktdHJ1bmsKKzQxMzYxIGE0OTdlMTBiMjNlNDcwY2M3NmIzNmYyN2VlNzA0YWU1MDg4MmNjMmMgcmVsZWFzZTI0LW1haW50Cis0MTM2NiA2OTAzNGEwOGU1YTNhMzRmOWY5ZTcyYTg0YTc3NDA3NzY0ZGM2MGE5IGxlZ2FjeS10cnVuaworNDEzNjcgYjY1MmY1MzUyMDFkNmZjZGY3NGIwODg5MzRlMzA0NDI0ODIwMjczNyBsZWdhY3ktdHJ1bmsKKzQxMzY4IDZjZDExMDc0M2JkMjA4OWYwZDY1M2FhOTZmMjlkNGQ1N2FkM2FjYWIgcmVsZWFzZTI0LW1haW50Cis0MTM2OSA4YjAyZDhhNWU3MDdmMjZmMDI0MmY5NjdjM2ZmMTUwNWQxYWVjZjVmIGxlZ2FjeS10cnVuaworNDEzNzAgZjllNTBmZjk2ZmY4NWViZjc2YjRjZDZhYzhiMzY3MTIxZDVlMDZlMyByZWxlYXNlMjQtbWFpbnQKKzQxMzcxIGNjMTdhNTgyNTE4YWVmZDQyYTMzNzYwZTk1OGZkMDM0MTc2MGRiMjcgbGVnYWN5LXRydW5rCis0MTM3MiAwZWNiZmZiYWRjMDA1NjgyM2U1OTNmMjE3YWZmMzUyNGZkODQyNWNjIGxlZ2FjeS10cnVuaworNDEzNzMgYWIzZDFlNmEwMjM3MjcwZTJiMDE1Mjc2YjIzN2Q5ZjMyMjRlOGJhZiBsZWdhY3ktdHJ1bmsKKzQxMzc0IGJmZmFlMmY4MTJmNzRhZWQ3NWIwMjBhMjNjZmIyYTQ4ZDViZGEzOTIgbGVnYWN5LXRydW5rCis0MTM3NSBmM2NhZjgwYmQ2NmQyMWJhODI5NGEwNjQ5MzI0MzRjOWIxMjUwYzhkIHJlbGVhc2UyNC1tYWludAorNDEzNzYgMDI5YjZjNWYyNThlNWFiNDZiZTJkMjA3OTk5NjczNjhjMzAyNjllYSBsZWdhY3ktdHJ1bmsKKzQxMzg1IDY0NmJhNzYxMTVhY2I0MzUwY2MzMGY1ZWM1YTBkNzhhZDY3YWRhNTQgcmVsZWFzZTI0LW1haW50Cis0MTM4NiA3YmY0ODQwMGYyNGE4ZTdkOTE0NGNmMmU2ZGRmY2MxMTcwODEyMDUxIGxlZ2FjeS10cnVuaworNDEzODcgOWIxZWZiMGVkNjM1OTJkZTEyZDViZWZjNjc0NWI2MjlhYzE1ZGI3ZSByZWxlYXNlMjQtbWFpbnQKKzQxMzg4IDQxOGE2MWVhZDExYjg1ZGViY2UzZmE1MWEyZGNmMjRmMmFhMDllMjEgbGVnYWN5LXRydW5rCis0MTM4OSAyMGFhMWQ1YjNiMDgzMjdlYTY0M2EyZTc5MzE4M2IxM2I2MjBlZTE4IGxlZ2FjeS10cnVuaworNDEzOTAgZmQwODkxODM5NGY5YzNiMTExOTJmNjU4ZmE0NmJlZjE2NjA2NGM5NiByZWxlYXNlMjQtbWFpbnQKKzQxMzk5IGE4NjQ5ODY5Y2I2MGJiZWEwOTVkZmY1NjQxYWNkZGRkNTk1ZTc1MjIgbGVnYWN5LXRydW5rCis0MTQwMCA0OWJhZjhiMDQ2ODEyNTVhZjQ1YzAxOTZlMTQwOTllNTdjNjQ1ZThkIGxlZ2FjeS10cnVuaworNDE0MDMgZGUwOTBiZjY3YTU5ODlkYmZmMjVkYWE1NWRlY2ExZWI4NWM1OGVhNCBsZWdhY3ktdHJ1bmsKKzQxNDA0IGVjZjlmNGVkMTA5ZTVjZDAwZGVhNjIyYjM0NDc3ODdlYzc2NzQ4NjMgbGVnYWN5LXRydW5rCis0MTQwNSA2ZTJiMjgyNDM0ZDQ5NTEwOTQ0ZmNkMTQyOTJjOTg0YmIxNzc5YmUyIGxlZ2FjeS10cnVuaworNDE0MDYgZjg1ZGMzMWYxZjNlNGZlMGY4NjQ4NWQzZGJjYmJhYWZmNWYzNGEyMiBsZWdhY3ktdHJ1bmsKKzQxNDA3IGQ4MTJlMzlhZTkwN2E3ZDU5OTFmODY1ZmVhNzAyYzkzNjYwYWRlNzMgbGVnYWN5LXRydW5rCis0MTQxMiBjYWVhMGNjMDlhNDJmOTFjOTE2NmM0Nzk3NmQ3YzFjMjE5ZmNhMjk5IGxlZ2FjeS10cnVuaworNDE0MTMgMWQxOTU3ZjU1NjI2NzkwZGVjOGVkMGMxY2I4MzFiN2IyMWQ0Zjc3YSByZWxlYXNlMjQtbWFpbnQKKzQxNDE0IGZhMWQ1Njk0NzMwMTMwN2ZhYTY3MDg2ZTQyOTNjYzMzZTBmYTNhNGIgbGVnYWN5LXRydW5rCis0MTQxNSBmMGUzMzU1MjM1YTVlNTI1YzgyZmVlNjcyZDYxYTUxOWUxZThlOTNiIHJlbGVhc2UyNC1tYWludAorNDE0MTYgNWY3MWE1MDI4OWEyNTU2YmFkN2NkYWQwNzk4YmJkZWY0OWZlOWY2OSBsZWdhY3ktdHJ1bmsKKzQxNDE3IGFlZjg1MjZmYzliYmE2ZjlkM2VjMGU5MjViY2IwNDhkNzM4NGI2MDkgcmVsZWFzZTI0LW1haW50Cis0MTQxOCBmNmQ4YjBkZTEzNGEyMDEzOGU0OTVmYjJkZTBmYjJkZDc3NTdkNDI2IGxlZ2FjeS10cnVuaworNDE0MTkgNDEzYzY4YjMxNDg3MWVhNDFhOTU1MzU4YmQ1ZDAxZTMwZmJjY2I2MiBsZWdhY3ktdHJ1bmsKKzQxNDIyIGVlM2UwZWUxZWRjYTdkMzQ4MmM5MTliMDcyOWI1MDBhZjc5NzgxZmEgbGVnYWN5LXRydW5rCis0MTQyMyAyYTkyZDVjZTBjMGQ4YzQ4ZjdjYTFkYzA1MTUyNjFkZjFlYmU3NTkxIGxlZ2FjeS10cnVuaworNDE0MjQgN2YzN2NjZjY5OGNmNWIwMTQ2MzJkNjhjMTZkYTlmMjYyYTMyMDA1YyByZWxlYXNlMjQtbWFpbnQKKzQxNDI1IDY4ODhkZGYxZWE5ZDUzZDQ0ZmFhNTkxNzRlZWUwMjE1OGQyM2JmM2UgSURMRS1zeW50YXgtYnJhbmNoCis0MTQyNiA0MjlmNTM3Y2Y2ZDZiN2U1OTI3OTZmMTQyNTE0MTJiYTNiZjFlN2UwIGxlZ2FjeS10cnVuaworNDE0MjcgNDQ2Mjg3MWE2ZGNlYzAxM2RiMjg3YmZlMDg1MDEwOGRjNjNkZmI5NyBsZWdhY3ktdHJ1bmsKKzQxNDI4IDg3ZTIyMTBlMDdmNDlhZDVkNTBlNWJlOWNmZDY0ZDIwZmRkMGUwODUgbGVnYWN5LXRydW5rCis0MTQyOSA2YTAxOGQ4YzU5YzkxZTA0NmNiNjcxZDQ2NTk4Mjk2Njg1OWU2MDNjIGxlZ2FjeS10cnVuaworNDE0MzAgNjAxNWRmMTM2YjAwZDFiY2NjNDEyY2RiZTIwODhiMWMwNDU1NmU0MyBsZWdhY3ktdHJ1bmsKKzQxNDMyIDliODg1YzkzNDE0NGI3MDU1ZTM2YmQ2MTdhMGUwYWM4ZTEyMDdkMTQgbGVnYWN5LXRydW5rCis0MTQzMyAzZTYzNGU0MWI2ZWMzYzc5NzAxYTJhY2YyYmIxNmJmYzM2ZDBiNjYwIGxlZ2FjeS10cnVuaworNDE0MzQgNjg2Nzk5NWExOGE3ZGE5MDBlNzlkMjIwNzY1ZmQxOGFhNWNmMjViYSBsZWdhY3ktdHJ1bmsKKzQxNDM1IDc5ZjJjZTMyMDE5MjVjOWQ2M2VjYjE2NDQ4ODc2ZjVkZmFiZWZhOWQgbGVnYWN5LXRydW5rCis0MTQzNiBkYmM5M2VlNTNlMmZlZmZjYmZiOWVlZTQxNTc3ODRiM2U5MzUwNmRiIGxlZ2FjeS10cnVuaworNDE0MzcgNjAwYmJiYTU2ZjliYWIzODJiZDgwNWM1NDA1Nzg1N2FhZWYwOTMzZiBsZWdhY3ktdHJ1bmsKKzQxNDM4IDlmNzNkYzA5NTNkMjAyMDRhNTQ5YzhjNzgxYTRjNDg4NGIyMjJjZWEgbGVnYWN5LXRydW5rCis0MTQ0MCBmNDg0MmY0MjcwMGJkYjdmNzNkYjg4YzdhZjYzM2IxMTdmNGE4OTNiIGxlZ2FjeS10cnVuaworNDE0NDEgMzdkYTk2OWFkMTE2YzViYTliNzM1NWMyM2YzYmRmZmEwNzBmZWYwOCBsZWdhY3ktdHJ1bmsKKzQxNDQyIDkwMDM4MzZhMDM2ZjEzMzUyYjViYWIxYjJlYzczNzJhMjBkOGUyNGQgbGVnYWN5LXRydW5rCis0MTQ0MyBmNTMxYzA1Y2QyNDA4NjZlNDYwZWVlY2RkMTAwMWI4NmVlZmRiZTU2IGxlZ2FjeS10cnVuaworNDE0NDQgOTQ3NjU2NjMwYjEyOGRmZThlZTIwN2M3NmQ2ZmY0NGEyMTU2YTFlMiBqaW0tZG9jdGVzdAorNDE0NDUgM2FjYjZiMzQxMDc1YzlhNmU4MzQ2MjZkZDc4OTFiMGJiOTRlN2FiMiBqaW0tZG9jdGVzdAorNDE0NDYgNGFjM2ZhMTU4OTI3OTAyMzA3ZWVjMmY5MDkzNDc2NjQxM2U0YmY3ZCBsZWdhY3ktdHJ1bmsKKzQxNDQ3IDU4M2NlOWMwYzY2NGViYmE5OGQyYjcxYTMwNTMzMjhiNTQ4ZDY2OTMgbGVnYWN5LXRydW5rCis0MTQ0OCA3NmVkN2ZkYzlkODViZGY1ODI5MTIyNGMwNTkyZGYyYzEwMjhiNmZhIGxlZ2FjeS10cnVuaworNDE0NDkgNDRkNjNlZWRmYWNhZjA0NzBmMzI1NDI2OWUxYTliMzVkYjhjMDRhYyBsZWdhY3ktdHJ1bmsKKzQxNDUwIDA4NmNhY2NmZmYwZTc2NmFjM2M3NTk4YzBlZTllMzQ1MWVjMjhhZGUgbGVnYWN5LXRydW5rCis0MTQ1MSBmMzM0ZWZlNzZmNmE1NDYyMDI1YmY5MjI5ZjJlMjE3MTJmZDg0NWI0IGxlZ2FjeS10cnVuaworNDE0NTIgNmQ4Y2U1NTcwY2I3MDIwY2RjYmMwMzA5NzFiNmQxODQ1MjU4YjRlZSBqaW0tZG9jdGVzdAorNDE0NTMgNDBmM2Q3OWIyMTI1MGE0MTVmNzk5ZDI0MTEyZmVmZGQyMWJjNDYzMSBsZWdhY3ktdHJ1bmsKKzQxNDU0IDk0YTQwOWRhNGJkNDBiNzMyNmY3MWFhNmQ4NjU0NTNmNTU2YTk1NWIgbGVnYWN5LXRydW5rCis0MTQ1NSAxZjlkNGFjMzUwMTAyODIzMTJiOWFmMzg4OTM5ZmU1MGVmYzM4ZWIxIGxlZ2FjeS10cnVuaworNDE0NTYgMGQxZTJlNzNjM2VjMDMzNzdhOTFlNmYxYzljNGZjNTYwNjc0NmYxOCBsZWdhY3ktdHJ1bmsKKzQxNDU3IDI5NDIwYmQzYjVjYmIxOGE0ZTg5MjA2NGM4MTAzZjBlZmJiMWEwMGIgbGVnYWN5LXRydW5rCis0MTQ2MSAzMjM2YjVmYjFmYjcwZjMwOTcyMzI5ZjlhYjZmNzE1Mzg4NTE0Njk0IGxlZ2FjeS10cnVuaworNDE0NjIgZTcxNjQ4M2NiM2Y5MTRjYjE5NmZhZDYyNmI0YzE2OGE1ZDRlN2NkNSBsZWdhY3ktdHJ1bmsKKzQxNDYzIDAzODY3ZmM2ZmQ4MDc4Y2MzYjRiNTY5YWMzNzJjMzBmOTVlNmZjYzMgcmVsZWFzZTI0LW1haW50Cis0MTQ2NCA1YjgyMTIwY2I0OWQ2MTIyZGQwYWE2ZTNiZmY0OGEyZjE2MTc5NmE3IGxlZ2FjeS10cnVuaworNDE0NjUgZjk5ZDZjYjg4ZjZmMjA4YmU5NjFmNjU4YWVjOTExMDI5NDc1ODJkOCByZWxlYXNlMjQtbWFpbnQKKzQxNDY2IDM5NTZkNjIwYWYwOWJhMDBkMDY3ZWQxMDFjMzM4OTBlOWI4ODFkYWMgbGVnYWN5LXRydW5rCis0MTQ2NyA0Nzg5ZTc1YTZmZTdkMDYyMDYyZDIyYTU5M2JkMjg4MjE1N2MwNjFiIHJlbGVhc2UyNC1tYWludAorNDE0NjggZTI0NzNjNGYyZWUwZDdmZDdlZGMyYmNlMTJkMTY3NjcxOWU2NTg2YyBsZWdhY3ktdHJ1bmsKKzQxNDc4IGY0MTRmZjI4NzgyM2I2MGZmMzI3MjIxZmU1NDUxZWExY2M5YTYyYTAgbGVnYWN5LXRydW5rCis0MTQ4MCA4ZmQ0NmI2NjBlNjY5NTBiNjliNmE0OWQ2ZTM1N2IxZjYxMDUxOGFlIGxlZ2FjeS10cnVuaworNDE0ODEgNzFlYTZiN2Y1OGNlMzhkMjI1MDUwOWE3YzU0YWRjN2ZjN2FlMWQwNyBsZWdhY3ktdHJ1bmsKKzQxNDg0IDgyNTY1NWJmZGYyMDY0NTAwZWFmMDYyZjdlZjI1YWRmZDE5NjRiOTAgbGVnYWN5LXRydW5rCis0MTQ4NSAwNDQ1NDJkNzA1YzJjYWVlZGE5ZmI1Nzc0ZmI0MTVlNGQzMWI3MzIwIGxlZ2FjeS10cnVuaworNDE0ODYgZmU0YzYyN2IyMDk2NWU5MDU5NjQzZWNmOWI5NzE3OGYyNjkwMzVhZSBsZWdhY3ktdHJ1bmsKKzQxNDg3IGU0YTVhODRlNWViYjEzOTczZGQzNTBmYjAxZWYyODM4MDFiZjQ1YTggcmVsZWFzZTI0LW1haW50Cis0MTQ4OCBjZTliYTAxZWI3ZWQ1ZmZkMTNiZTIxYTM1NzY3NGVjOGRhZjZkNzAyIGxlZ2FjeS10cnVuaworNDE0ODkgZDcyZGI4MmE3MGNkN2FkZWNjNmI1MDM0NTFjZDYwNDliZTM2Njg0OSBsZWdhY3ktdHJ1bmsKKzQxNDkwIGRmNTkyODU1OGE1N2I0MGZlY2Q2OTFiODZmYWY4ZmEyODMzNmFkMjEgcmVsZWFzZTI0LW1haW50Cis0MTQ5MSBlOWJlOWU2MTg4ZjRkNGUzMjZkN2MxNGVhYjRlNzJlMGU3Mzc1NzVkIGxlZ2FjeS10cnVuaworNDE0OTIgMmIwY2Y1MGU3N2VjOThhMTU0ZTc1ZjhmOTdjYzA4NDc1M2JiN2QxMSBsZWdhY3ktdHJ1bmsKKzQxNDkzIDlmZDBjZDM2MmFmZmM3MDkyZmQ2ZDE0ZTJjMWQ4ZTc3ZGQxM2ExMmYgbGVnYWN5LXRydW5rCis0MTQ5NCA4MDBmNDhhMTRhOGEzODExMmZhMTEwMzg2NzNjZDkxYzE1NGZjZWQ5IGxlZ2FjeS10cnVuaworNDE0OTUgYTZiZjdjYWVkMTM1NzA1NjRlMmM2ZTVlZWZjN2NjNmYwOGEwNDI4MyBsZWdhY3ktdHJ1bmsKKzQxNDk2IDFkZmQ1ZDYyZDc2NGVkZWM1YzcyYjI2ZjdmMWU1M2JiMGI4NWVlOWMgbGVnYWN5LXRydW5rCis0MTQ5NyBmOTM3Mzg3ZjRkZjEyMWY4ZjNkMWY5MGU4YmMwNzA4ZTY2ODk1YjhhIGxlZ2FjeS10cnVuaworNDE0OTggNGQxZDI3NzE3OGE1N2FkM2M1MzcyYjVkZmZjYzBjNmIyODA5MmE4MCBsZWdhY3ktdHJ1bmsKKzQxNDk5IDRlNWUxNmEzYmUwZDNjMzg4NWQ5Mjc5NWRlZDljMmM2NWUzNWNhNzIgbGVnYWN5LXRydW5rCis0MTUwMCAxMWExYmMzNTI5MTdhM2VkZjFhYWUyY2E1MmQwMTY3M2M1MjFjODIzIGxlZ2FjeS10cnVuaworNDE1MDEgOGZlYWVkMDdmY2NkNzE0NTI2YmJhODkzMDM1Y2ViYzY3NzdjMmQ1ZSByZWxlYXNlMjQtbWFpbnQKKzQxNTAyIGNmMTU3MTRjOWM4YWEzNTNmNmQ5MjM3NDM3YmRmZGNkOWY3NGM4NWYgbGVnYWN5LXRydW5rCis0MTUwMyA2OGIzOThhODVhMzg3NGJkNDJlNmU4YzgwZGMzMTY1YzZlNDBiYzBkIGxlZ2FjeS10cnVuaworNDE1MDQgMTJmMjIyYjYxN2I4OWY2Y2UxMDMzMmVjZjBhNTlhNTNlMzYxMTY3MCBsZWdhY3ktdHJ1bmsKKzQxNTA1IDNmZDk3ZGUwYTc5MDgzZTQ4ODExZWI1N2QyYTE2M2JmODcwMWE1MWYgbGVnYWN5LXRydW5rCis0MTUwNiBmMTNmYzBjOWE2YjNhNTY4NDZiYjVhMmUwZDE5MmUyMzRiYTU2YWY3IHJlbGVhc2UyNC1tYWludAorNDE1MDcgNTFmNGVlNGY5N2VhMWFiZjk3MmY4M2U5ZjQwMzg2ZGIyYmIyOGYyNCBsZWdhY3ktdHJ1bmsKKzQxNTA4IDFmYWEzMDY5OTNjMDVhZjUxODhkNTgyMWYxOGVmZjY2ZmY0Y2UzMmQgcmVsZWFzZTI0LW1haW50Cis0MTUwOSA5ZmM2YmY2NTVmOWNiMDI5NGI3ZDZjYWMwNWY4OGI1ZmU3NGM1YjgxIGxlZ2FjeS10cnVuaworNDE1MTAgZDRhNmQyNTkxY2Y1OGExMThmMDVhMDBmMTFjMmM0ZTdlMTcyOGFjYSByZWxlYXNlMjQtbWFpbnQKKzQxNTExIGUxMTMyMzE4OWM4NDkxMmUwZWUyNmU5MTMzMWM5Y2Q1MzI5MzZiYmYgbGVnYWN5LXRydW5rCis0MTUxMiA3NGU1NjFhN2U4MmNhZDdhZTM4ZDg1YzMyN2U3NmRjZmQ2OWQ2N2UwIGxlZ2FjeS10cnVuaworNDE1MTMgYzk0MjY4Mjc3ZGU5MzgzNjg1YmU4NjNjY2UwMThhMmE3NmRkNzExNyByZWxlYXNlMjQtbWFpbnQKKzQxNTE0IDFmNzc0NTI5MmU1MGVkODRkMzhlMjdiNmQ1MDc5OGMyMmUwY2I1NmQgbGVnYWN5LXRydW5rCis0MTUxNSBmMjYwNWY1YTZkNDZmODNhNzlkZWUwOWZiYjJhOGRkMDZjOWIwMGEwIHJlbGVhc2UyNC1tYWludAorNDE1MTcgYzJiYmE1ZjQ2YWI2ZWFlMTc3YTZlNDk4NTZjZjIxMjVlOGE2MmY4NiBsZWdhY3ktdHJ1bmsKKzQxNTE4IGZhYjM3MTM2ZGQ2ZGE1M2E4YTA5YTI5OTBhOTE1MWUzMDUxNjEyZDUgcmVsZWFzZTI0LW1haW50Cis0MTUxOSA5ZjY4NTJmZjNkMTkxZTQ4YTRjMTAxMWRjNGUyYjc0MWVmMjczMzZjIGxlZ2FjeS10cnVuaworNDE1MjAgMWUxYzNmNTUzMjhhMDg2MTQwNDdlMmI3MDEyMThiYzE1YWIwZGIyOSByZWxlYXNlMjQtbWFpbnQKKzQxNTIxIDcyZDVjNjBmYTQ1ZDllZGMzOTViZDliN2Q4MWE4MDI4MmM0MDkyYzYgbGVnYWN5LXRydW5rCis0MTUyMiA5ZTYzMGNjMWQzMDkwYjllYzIwZTVmZDc3YjBlYmEwYTI5NDAzZDdhIHJlbGVhc2UyNC1tYWludAorNDE1MjMgY2YyYjRjOGFkMWFkNGU0NmY2ZjJlNmZhNWM2NzhhZjZhOGFlMjE3ZCBsZWdhY3ktdHJ1bmsKKzQxNTI0IGI3YzZjNDYxYTgwODE4MGIwYmJmYjcxNDEyMzUwOTIwNjBjMTc5NzUgbGVnYWN5LXRydW5rCis0MTUyNSBlMGRkZWE4ODFmNGFiZjcxYzRlY2E0ZTgxMzM3MGIyMDliZjliMGJiIHJlbGVhc2UyNC1tYWludAorNDE1MjYgMWZkZWJiZDYwZDdkZGRhMGVlMGNhM2M3Y2YzYWIzZDQ5ZWU4NWMwYiBsZWdhY3ktdHJ1bmsKKzQxNTI3IDdjODgwMGI4MWM1MGM5ZjY1OWFjZDc0MWE4OGZlYWFkNDhiNDc5MWMgbGVnYWN5LXRydW5rCis0MTUyOCAyMTUwYWY4NGExODVlOTA4ZDVlYzU4ZmE0YTViYjU3Y2RjNGNlZDU2IHJlbGVhc2UyNC1tYWludAorNDE1MjkgZTZkMzFjYmYyZWQzOGM1YzFjMjljNmY1NTAyYjQyOWIzZTAwYTkxMCBsZWdhY3ktdHJ1bmsKKzQxNTMwIGJiODBiOGYzOTNlZmYxZDJlMTlkZGMxOWU0MGY1ZjUyMDAxMDdkYmMgbGVnYWN5LXRydW5rCis0MTUzMSA3OTM3NGViNmRiNTE2Y2NhOWE4NGJkZjk2YjQ3YTE3ODU4ODhmZDE3IGxlZ2FjeS10cnVuaworNDE1MzIgY2IxZmYyYTg1ZTNkZGQyMjgxNTg2NDk5MmIxZTcxNzlmMTdmNGM5OSBsZWdhY3ktdHJ1bmsKKzQxNTMzIDAzM2JiNGRiNWFlOGMxYTYyNGI4YjFlMzgxZDFiNmJhZWRiMzZkMTEgbGVnYWN5LXRydW5rCis0MTUzNCA2ZDZjN2NkNDUyOTg5ZTU4MThhMGJhMGViYzdhN2EzMDYxZGZmNzU0IGxlZ2FjeS10cnVuaworNDE1MzUgNWM4ZGM1ZDIxOGQ4ZDcwZjJmMDNjODk4MDM3NjA5ZDExM2ZjNzk0YyBsZWdhY3ktdHJ1bmsKKzQxNTM2IGI0NmRjNmQxMDk4Njc1NDMxZGEwYWZkMTJjY2U5ODA3NWUyMmY4ZDYgbGVnYWN5LXRydW5rCis0MTUzNyBlODBhMWFmNjc2MjNmMGY1NzI5YzFjZGFjM2E3MWZhN2EwNmVlZmM5IGxlZ2FjeS10cnVuaworNDE1MzggYjJlYjE1ODljMjJiNTEzN2VlMTMxZGZhMjgwN2Y3ZmQ1MjJhOTZjYSBsZWdhY3ktdHJ1bmsKKzQxNTM5IDQ1NzJmYjRkZmJiM2YwZmI2YWQ0NTczMjk2ZDc4Y2I2NTg3OTllZTcgbGVnYWN5LXRydW5rCis0MTU0MCBlZjYwOGI1OGJmZDhhZDVjMTNkOTVlY2FlYWE1MmQ1OTcwZmUzNzk3IGxlZ2FjeS10cnVuaworNDE1NDEgZjgwNTYzMjhmMDFhMTYzZGNkMGU1Mzc2NmQyYWNhZDYwYmY5ODEzZSBsZWdhY3ktdHJ1bmsKKzQxNTQyIGI5YzY4MmVkOTEwY2RjNjJiMzc2OTRjZTA3NDBlNzcyNDc0MjFlOWMgcmVsZWFzZTI0LW1haW50Cis0MTU0MyA5MDc5NzIzMzIwOGVmZTBmYTE2NThmNTcwODU3YzY1NzA2OTM5Y2E1IGxlZ2FjeS10cnVuaworNDE1NDQgNDgzNTNjZjUxMzQwM2ExZGM2MTI2YjM0NWYzY2FlN2YwZjU3ODJiZCByZWxlYXNlMjQtbWFpbnQKKzQxNTQ1IGQ3ZjYzZWRlNDk1ZTg1ZTI1NTFlYjcxYWQ1OTQzYzIyNGJlMDU2YjEgbGVnYWN5LXRydW5rCis0MTU0NiBkN2Y1MmZjNDIyNDU4YTE2NTk3YWJkZDJhZGUxOWM3ODhjMGIzZjcyIHJlbGVhc2UyNC1tYWludAorNDE1NDcgZDlkOGIyZTJlNjBhZGYwNmVlMDhjMzhlMjBjNzE1ZTY2Yjg4NDM5MCByZWxlYXNlMjQtbWFpbnQKKzQxNTQ4IDc1YTc5Y2M0Y2Y3YjY5MDZjNTIwM2JiYmVlOGU4MTQ0OWVhMjFjOGYgbGVnYWN5LXRydW5rCis0MTU0OSA5ZmM3ZGZlODZmOTY2MzYwNWJlOGY2NTBmZmZmMzE0M2Q5MGM5OTNmIHJlbGVhc2UyNC1tYWludAorNDE1NTEgMWQ4ZWZmZGU4MmYxYjQzZWY1YzhlNTk2MTU3ZGY2MjQ5NjliNmIyNSBsZWdhY3ktdHJ1bmsKKzQxNTUyIGZjYTczMzc3MTBmZDdiMzQxN2U0NzQzNjdlY2Y4NTBiZWQ1NWRiYTkgbGVnYWN5LXRydW5rCis0MTU1MyA2NTg0NDRiYWViYTM3ZWZjOGU0OTVhZjdiMWEyMzE0ZGQ1YzE1YmIzIGxlZ2FjeS10cnVuaworNDE1NTQgNzI1NTVhOTY3ZDZhODVjYjM3Y2MxZjEzZjFiMmIxNjljMzU1NWJhOCBsZWdhY3ktdHJ1bmsKKzQxNTU1IDczZWJkYzYyYmY4ZjBkMWM5MTNiMTY0ZjMxMGExMzBlNmZiZTA3ZjAgbGVnYWN5LXRydW5rCis0MTU1NiA0ZDA2MTYyYWQyMDljODJhNWRiY2U0NmJiNGUxNWFmOTFmZDRlN2ZlIHJlbGVhc2UyNC1tYWludAorNDE1NTkgZDE3MmNiYTk2NGI3ODFiYTNlN2ViNDYwZThmNzllZTg1NTUzOTkxMCBsZWdhY3ktdHJ1bmsKKzQxNTYwIDlkOWU0ZWU0ZGE4OWZlZmM0YTY3MGI5MzQwMGFkMDc0MzZiZmE3ZDEgbGVnYWN5LXRydW5rCis0MTU2MSA5YzQ3NjVlOWRjOTI3MjM2NTI1NTM1ZDVkYTZkYjBlMjRlYTZmYjk3IGxlZ2FjeS10cnVuaworNDE1NjIgZjk5NzIxMzgzNmJiMjkwZDYxZDRkMWY5YTM4ZjdiZmRkYzM3Yzc3YiBsZWdhY3ktdHJ1bmsKKzQxNTYzIGExYjZlNjc4NGNhNTgwZTVhMzA0YTU2MzE2ZDVjZTI4Y2RhNTJlNDQgbGVnYWN5LXRydW5rCis0MTU2NCAxNWNjNjAxNjc5NWUwMzQ2NmNlODE1YjQwMWQzNjg1YmEzNzZmNDAwIGxlZ2FjeS10cnVuaworNDE1NjUgNzRlOWZlMDY4YzRkZDIxODQzZjRjZjE1ZTFjM2RjNmE0OTUwNzkwYyByZWxlYXNlMjQtbWFpbnQKKzQxNTY2IDRlYWE3MmJhMTlhMmU3MjdiZDMwYjUyZDQ5ZDcwYzM4MjllMTBhZjUgcmVsZWFzZTI0LW1haW50Cis0MTU2NyBhMTdjY2ZjMzcyZTk5YTk4NDA0ZmViMzQzMzUwMWUwYTg3MWU1NDJjIGFzdC1vYmplY3RzCis0MTU2OCBlNjc1ZmQyOTViNGI5ZTI2NTEzMWM0NGFiMzkzZmM3MjgwOGY1MTNmIGFzdC1vYmplY3RzCis0MTU2OSBjY2Q4YTBkMjg5NTA5NjZkODUzZjU4NjJhNjRlNjc1YmZlZDY5NDIzIGFzdC1vYmplY3RzCis0MTU3MCA1YjBmNWQ5NzYzMjU4ZjlhZjg3ZmQxNjc5NTJmMWRiOWJiNmMyOTg5IGxlZ2FjeS10cnVuaworNDE1NzEgYTVkOGYwNWJhZjk4Y2YyYzUwZDhmZjU3MzZmM2E3NGU5NzRlNTBjYiBhc3Qtb2JqZWN0cworNDE1NzQgOTZhNGU4MDY0MjVlNDE4NTVlNzVjZjUzMzJjY2M0YWJlMWE1MDc1MyBsZWdhY3ktdHJ1bmsKKzQxNTc1IDQ2NTAxNDkwMjUyZGI3YWFhMzFkYzhjYTc5OGM5ODE5MTg3NDAwMzIgYXN0LW9iamVjdHMKKzQxNTc2IGViNjZlYWU5YzJjOGMzNDIwNDIwMWYzY2IzYTUzYmRiZmIyYzNjMWQgYXN0LW9iamVjdHMKKzQxNTc3IDg1MDdkNTgyNTM1NGFmNzk1YmI1YjVmZTZhMDQ2OTFiNjgzOGQzNTQgYXN0LW9iamVjdHMKKzQxNTc4IDljMDQ5MDk5N2U2NjIwMGNlMzhjZmU5MDA3NDA5ZDg2NGFkMjhjODggYXN0LW9iamVjdHMKKzQxNTc5IGFiZmVhYjczYzhmMTljY2VmNzJlODQ0MGE1MWRlNzcyNzcwNGJlMDIgbGVnYWN5LXRydW5rCis0MTU4MCA4MDU2M2RjMTM0ODc1ZjBmYWFmYzg5NjU1NGU5ZGUxY2U1YTQ5NDI4IHJlbGVhc2UyNC1tYWludAorNDE1ODEgNmY0NjEwZjY5MmUwZWFiODU1YmJlODNlMmRhNDNhNzNmYzQwMDNhMSBhc3Qtb2JqZWN0cworNDE1ODMgN2FhYTA5ZjFhMDQ3MjQzMzFjM2Y1ZjU1YTQ0MjRiM2IxZTM3ODIxMSBhc3Qtb2JqZWN0cworNDE1ODQgYzU5M2YzMzY0M2RkZjUwYmVkNTBjYjFlZTZlMDc4NTNiYjQ1OWZjMiBhc3Qtb2JqZWN0cworNDE1ODUgODFjOTQ0YzNkMTNhMDU4ZjVmZjVjN2VjZWM3MWU2NDAyMDJmOThlOSBsZWdhY3ktdHJ1bmsKKzQxNTg2IDE5MWI1OTkwOWRlZDhkNDAzOGMzN2E2MzFhZThlZThkMDY4YWY0MzggbGVnYWN5LXRydW5rCis0MTU4NyBlNzJiYzVkYWZlMTZlYmVlZTlhZmI1NWUxM2Q1ZTdlYmMwMDg5MDBkIGxlZ2FjeS10cnVuaworNDE1ODggNWQ5NmE1MzZiYmYzZTY1ZDIzZGE4MDJmMzk5Njc1NGFiNjU1NWQ4NyBsZWdhY3ktdHJ1bmsKKzQxNTg5IGFkMGYwMzg1YzZmMzk4ZmM0ZGFlYjlhMjBhZjA0ZmUzNDExODUzNmEgbGVnYWN5LXRydW5rCis0MTU5MCBjZjMxYjJjOGU4NTQ2MGYwZDQ4NDlkZWQwZDA3NDQ4ZWM4ZjhhZDQ5IGxlZ2FjeS10cnVuaworNDE1OTEgMDNhZTBiOGViNmNiZmI0YjFjYmFlZjU0ODQyMDg0ZjdhMmFkODg3OCBsZWdhY3ktdHJ1bmsKKzQxNTkyIGUyNmRjMzM0ODkwOWJmNzAwNTI3NTQ4NmU2OWQ3Y2I3ODY3YzM3YTUgbGVnYWN5LXRydW5rCis0MTU5MyAxNmUwM2NmYjlhMDIyYWUxZDM5M2I2ZWI3Y2EzOTNmZWEwZWNmOGE5IGFzdC1vYmplY3RzCis0MTU5NCA3NWQ1MzZiMjQ3ZWFhOWMxOGJiYTUwMmYyMzVlMzUyMGFkOTEzMzY0IGxlZ2FjeS10cnVuaworNDE1OTUgYTA4N2U3YmY1MGYxZGUzNzg0NDAxYWVkMDQ2MDFhNDI1ZGE5YmRhZCBhc3Qtb2JqZWN0cworNDE1OTYgNTA5OTU2YTU0ZjM3NjE3NjE4NmQ2Mzc2M2I3ODY3ZmEwZmIxMGYwNiBhc3Qtb2JqZWN0cworNDE1OTcgM2E0MjE0YmZiNmU0NGIwMDVlZTEyYmQ4MTVmZjU3NTE2ZmYxY2E0ZSBsZWdhY3ktdHJ1bmsKKzQxNTk4IDUyMjUxMjI0Y2I5OTVlMWJkNzg5NmVkOTgwODU4NjQwMDlmMTMyZTYgYXN0LWFyZW5hCis0MTU5OSA1YmE5MjBlZWYwMTYwNDM4MTM5MDU3YWM3OTY2ZDA0NDNiNDAyNGNkIGxlZ2FjeS10cnVuaworNDE2MDEgOGVkYTFhNThhNDkwMzcwYTI2ZjIyNDlmZWRlNGE1NzIyNTE5ZmQyZCBsZWdhY3ktdHJ1bmsKKzQxNjAyIGYwMjBhN2FkZTZiNWQ1ZWVjN2RiNDgzY2ZlNDUwY2RkNDJiNjFlMGEgbGVnYWN5LXRydW5rCis0MTYwMyAxZTEyODdiNmY2NTI2ZjU5Y2IzZjFkMDk0MGE3OTIxNjMzMTY3MzQ2IGxlZ2FjeS10cnVuaworNDE2MDQgY2IzYWU3Y2VhMTA2NjYyNDljM2YyYTAzMWVmNGZiYjJhM2VkYzBkNyBhc3QtYXJlbmEKKzQxNjA1IDVkMDMxYmQyMjMwN2JjYjQ1ODZjYWNhOTVlMDdmMmZhMTc1YzM1ZjAgYXN0LWFyZW5hCis0MTYwNiAzYzIxZDViZDE1YmU2M2ZmNWZkZDNkNDhkZjYzZTg2NTkwMjQxYzZhIGFzdC1hcmVuYQorNDE2MDcgYzg5NzA3ZGFhMDExNDQ5YzQxNTlhM2I1ZmNlYTJjNTBmMjI2YzA4MSBsZWdhY3ktdHJ1bmsKKzQxNjA4IDAxYmQxNDZkYzUyMDdmN2Q3YzE3YmUyMmMzNGM3YWNiZWJiYzYzNDQgYXN0LW9iamVjdHMKKzQxNjA5IGM4MDA5YmQ2MTE0ZmE2NWIwODZiZWM4ZDE4Yzg2MGY5NzFjNjFjNGEgYXN0LWFyZW5hCis0MTYxMCBlZTU1NDMwZTVjZmU3NzhkY2NhNjY3MzZjMDdjNTI3ZjE0MWM1MDA4IGFzdC1hcmVuYQorNDE2MTEgNTUxZDU4YjNkMGNkM2M3NmM1MzBmYWZkZDU4NjM4NjMwMzU2NmU5YSBhc3QtYXJlbmEKKzQxNjEyIGFhNWQ4ZTRhMDBhOGE0ODYzODY0NWQ4NTQ0MGE4YzhlNjU3MjdhMWQgYXN0LWFyZW5hCis0MTYxMyBjMWU2NzhlN2JiMTI4MzliYmEzOGYxZTg3NGVlMjFjZTQzZjViNGI4IGFzdC1hcmVuYQorNDE2MTQgYTI5ZGM1OGE5OWYzODk0ZWE0OWUzZGUzOTViYzQyYjRlZWI1ZmU2YiBhc3QtYXJlbmEKKzQxNjE4IDExZWU5ODJmOGM4ZDBlNDYwZjRmMWE0ZDBkYWZmYWNjYWY5ZmRhMzMgbGVnYWN5LXRydW5rCis0MTYxOSBkNDdhYmY5NzU4YzlmZWFlNzU5N2M2ZmM0YjgyZWU5YTllYjYyZWYwIGFzdC1hcmVuYQorNDE2MjAgYzYyOTgxMjUwMzllNGRmYjEzODdiYjA5MTFlYWIwOTdmMmVhOWQxYiBhc3Qtb2JqZWN0cworNDE2MjEgYzBjMTJhYTc1N2U3MDlmMDljNzZiZDMxNzYyMzA3NzdmMmE1ZTJmZCBsZWdhY3ktdHJ1bmsKKzQxNjIyIGFiZTFiMzMyZWFhMDBmNzA3NDA5MzJjMWY2OTg2MGM2YTYzN2E5YzQgYXN0LW9iamVjdHMKKzQxNjIzIGMyMzZlYjZkOTkzNDUyNzVmOWQ0ZmRhZWFmMzc2ZTBhYTlkZGNiNjMgYXN0LWFyZW5hCis0MTYyNCAxZTY5ZTYzYWUzYTA4YjQ5Zjk4ZWI3NWYwMTNhOTM4YWQ5YWJkNWZjIGFzdC1hcmVuYQorNDE2MjUgYWI4YWI5YmU2ZjRiNDdjYTBiYjFhZTY5YTk4MTBjNDNiNGFlOThlMiBhc3Qtb2JqZWN0cworNDE2MjYgYTI5Yzg5YjRlOGM2MzA5NWM3MmMxNGUyNWVlODE5Mzk5OTBhZWQzNyBsZWdhY3ktdHJ1bmsKKzQxNjI3IDhhZDMxOWYzYTkzNWVjNWQ0YWZhMGYxYzVlMjhmOWNlODY4MDJkNjAgYXN0LWFyZW5hCis0MTYyOCA1MWUzYTgzOGFlYmU3NDAxZGM4NjI4YzgyMTY2YzAwMmQ5Y2YyMDJlIGFzdC1hcmVuYQorNDE2MjkgYWI0MzFiMzI0YTRiZDQzOTk3MzIyZmFmOWFkM2I1NjM4MTc1MjJmOCBsZWdhY3ktdHJ1bmsKKzQxNjMxIGI3N2VkY2VlODg4Y2EzNDUxYTcwNWJiZjM0MWQwOThkMmQzZjA1ZmIgbGVnYWN5LXRydW5rCis0MTYzMiBkYmNjODkxMmEyNGRlYzQ0ZDZlY2EzZDA5MDI5ZDdjMzhjYWE2ZDcxIGxlZ2FjeS10cnVuaworNDE2MzYgNjQ5YzM0MTgwYTBmNTBlMDA1NTA0YmRmOTRlMDQyZmM4YWM3MDE2YSBsZWdhY3ktdHJ1bmsKKzQxNjM3IDk2ZDFmYTM2OTY0ZDRlMTFhMDI3M2I0OWU0ZjA2ZGMxMmZiOTU3YzQgbGVnYWN5LXRydW5rCis0MTYzOCA5NTQxMzY5YjBkY2FmMDQ4ZjFiZDk4NmEyOGM5NmZmZWVlMzdmODA4IGxlZ2FjeS10cnVuaworNDE2NDEgY2MzMjYxNTk3MTM2YzYyNTZmOTFjYTc2MzBkZGM2YzkzMjkwN2YzZCBsZWdhY3ktdHJ1bmsKKzQxNjQyIDYzMjE2NjlmMmY0ZDEwYzZiY2U1YmUzNWU5MWMxN2Q5OTIzNTUxNjAgbGVnYWN5LXRydW5rCis0MTY0MyAwZWI2ZWY5MmM1NmUyNTc5NmIzYjI5Y2RjYzE5MDQ4ZDEzY2ViM2I5IGxlZ2FjeS10cnVuaworNDE2NDQgNTJmMWQ1N2YyMzdkYmJkYzVkODM3NDRkZjZkMTNmNDY0YmRhNjEzMSBsZWdhY3ktdHJ1bmsKKzQxNjQ2IGU0YjYyMWUxZWRhNjYyMjA1NjUwZGRjMTE0NmY1YWE1MTU0NTUyY2QgbGVnYWN5LXRydW5rCis0MTY0NyAzMmU3ZmU5YzIzYjkxY2IyZjUxMTg4ZmI4Mjg1MWI4N2FhNmI3MjY2IHJlbGVhc2UyNC1tYWludAorNDE2NDcgZjZlNzM0YjFmMjYxYzU0NmQ4MGU5ODQ5MDM4MDU0YmYwOTdmZjg0ZSBsZWdhY3ktdHJ1bmsKKzQxNjUxIDZmNTAyZDM1ZmM3NzViZTY3YjgzMWQ0ZGIzZTVhNTk5NDFhMTA4NjEgbGVnYWN5LXRydW5rCis0MTY1MiAxMDIxNDBjM2EzNjE0ZGIzZTkzMjVhYjAyMTI0NTcxNGUxZGRkMTZmIGxlZ2FjeS10cnVuaworNDE2NTUgYTVhZDc2YTc4ZjRiMjlhOGFhN2Y3NDdkZGI2ZjE2YTgyZGNlMzhmZCBsZWdhY3ktdHJ1bmsKKzQxNjU3IDUyMmUwMDczZDljOWU4YmI3NTE3YmZjNjljMmViM2JjM2JkOWYyNDUgbGVnYWN5LXRydW5rCis0MTY1OCBmOTQ0MTg3MTVlNTUzMTI5OWYzYWI3Y2NkYzIxNWMwYTJjMzBjYjM3IGxlZ2FjeS10cnVuaworNDE2NTkgMDdmZGI0ZDJiOGY2MjMzN2QzOTM2NGE1NjkzNTk2ZjRmMWFkMTA0ZiBsZWdhY3ktdHJ1bmsKKzQxNjYwIDA3Y2U5Mzg4NTdlMWJhMmYxODVjNThkM2EyZGVhOTc2MWUxMjc3YzAgbGVnYWN5LXRydW5rCis0MTY2MSAxNjQ3MGI3MjJmMjA5YzAxMjU0M2U4YTkwMGVkOWJkNzE0NjY0ZDkwIGxlZ2FjeS10cnVuaworNDE2NjIgNDAzNjc4NzRmODYxNmFjNzA0NTdhODMzZjFkZWJkYmQyYzNiOTRmMiBsZWdhY3ktdHJ1bmsKKzQxNjYzIDM3N2RmMzliY2RhMWYyNmZkMzNmN2JmNzc3YjNiYzI0MzMxNjA0MGIgbGVnYWN5LXRydW5rCis0MTY2NCBlZDM0N2M0MzZkNTg5NjZjYmZkODRmZWJjMTQwYzUzMDkzYWNlZmJjIGxlZ2FjeS10cnVuaworNDE2NjUgYzI1M2U5OTNkZjhhY2U4MjE2MWViMmRkNzMyOWVjZGEwN2M3NmQ2YSBsZWdhY3ktdHJ1bmsKKzQxNjY2IDY4ODE3MzE1Yjc0Y2E5NjlhNGM3NmU1MzBkNjc3YjE4MmM1ZTYwMzAgbGVnYWN5LXRydW5rCis0MTY2NyBiZmQ2YTZmYzcwZWFmNTNkNmMxMGJlMGNiNDEyZWQ0YmE0YWJmYmY2IGxlZ2FjeS10cnVuaworNDE2NjggY2Y4ODYzNmNkZjRiZTk5ZDZiZWU5Y2ViMjU0ZTlmMjhkMzNjMzRkYSBsZWdhY3ktdHJ1bmsKKzQxNjY5IGExNGE3ZjYxNGE5NmRhNGJiOWJmNDYwNDU5MjhlOWEwNzhhZmI4YTggbGVnYWN5LXRydW5rCis0MTY3MSBiZWM5ZmFjOWY3N2M3MzAzNDFkYWI2Nzg4ZGRiZGQ3ZWY4NmE4Zjk2IGxlZ2FjeS10cnVuaworNDE2NzIgMjdkZjJmYmUyNzA2NjRjYTIyODVmZGQ3MmFlMzAwMWQ2ZDI5OTU1ZSBsZWdhY3ktdHJ1bmsKKzQxNjc0IGRiMWMwYWFiYzQwNWEwMmVhNTVhZGNiZWFjNjZhYzE3YWM5NDlhZjQgbGVnYWN5LXRydW5rCis0MTY3NyBlMDFkODUyNGI2ZjY0MmNiYjM5MDk0MWFkNDczZmQ1ODBiYzNiYWViIGxlZ2FjeS10cnVuaworNDE2ODIgY2Q4YjViMzFlMDJhYTRiYjhhYzk3ZmNmOTY3N2FjNmQxNDc1NzJhMCBsZWdhY3ktdHJ1bmsKKzQxNjgzIDkzMDFhN2MwMzEyYWMwM2I3Njk1MzliMDI5MzNlNzkzMzJjMzM5OTEgbGVnYWN5LXRydW5rCis0MTY4NCAzNWZlOTAzMjVmNWI3YTIyY2ZhNGIxMjQyMzZhYzAwNTljNjkwZjU2IGxlZ2FjeS10cnVuaworNDE2ODcgZjBhNTMzMGYyYjNlMTFiMWY1NzBjZmU0YWJjNGQ0MzUzZjg1MDk2NCBsZWdhY3ktdHJ1bmsKKzQxNjg4IDYzNWUwZDkwOTY0NWVmNjVhMzEzMmEzODBjYWYzMzlmN2E5NTlmNDggbGVnYWN5LXRydW5rCis0MTY5MSA2ZDdkMWE5OTZhMDIzYThkYTM1ZWZkOTlhYTYxNmM0YWJhZTE0NjNjIGxlZ2FjeS10cnVuaworNDE2OTUgMjQ5ZmZlMTNjYWY4YTU0YzZmZDZiYzAwZGJjOTNjODQ5NDQyNmYzZCBsZWdhY3ktdHJ1bmsKKzQxNjk2IGZkZjBhYzM2ZWI3NDYxMmZhNDY4YjMxZTU4NDk3ZmM2ZDQzOGZiNTggbGVnYWN5LXRydW5rCis0MTcwMCA0YmZjZDVkY2QwYmZhMjUwYTU5OTAzNTIyYjM2ZDJiNTFmYzA4Yzc0IGxlZ2FjeS10cnVuaworNDE3MDIgNzU0OGQ3NjU2ZDg5ODY0YjNhZTBiM2YxZGZjZTlhZGZiZjBhMzZmMiBsZWdhY3ktdHJ1bmsKKzQxNzAzIGRlNjlhNTI0ZjRlZGJjNmMzYjEyNWU5ODg3ODQ0NTFjNTFhODQ2N2QgbGVnYWN5LXRydW5rCis0MTcwNCA2NGM2YWI1NjcxZTdkNzcyOTY5OGIwOTE4YjE3ZTY0YzQ4MTUyM2MyIHJlbGVhc2UyNC1tYWludAorNDE3MDUgZGUwYzJmZWE2NWMyMWJjOWFjYmVkMzhkOGEwMDFhN2U0MDUwYTI2OCBsZWdhY3ktdHJ1bmsKKzQxNzA2IGM2OTFmZDYzZWIzYzA5NWM2ZWQwYmI4OTY4OTQ2YWYzNThkOWQzZjkgcmVsZWFzZTI0LW1haW50Cis0MTcwNyAxOGQyN2M0NDQ3ZDExMzZjZGMzYjEzZTAwNmVhMzAzZGY2NmI2NWZiIGxlZ2FjeS10cnVuaworNDE3MDggYzExNTEzNjkzY2I5NzAzY2U2OWE2MTQyMTFmMTMyOWU5OWZkMWFmMiBsZWdhY3ktdHJ1bmsKKzQxNzEwIDk4NjUzZDlmOWNjMzljM2U1OTNiNDE0YmJlY2JiOGRhMTQzYzRjODMgbGVnYWN5LXRydW5rCis0MTcxMSA2NTJiZDVlNWI3NzgyZjg2YzA3YzNhMTUyMTM2NmVhMTA5ZmUwNzQ0IHJlbGVhc2UyNC1tYWludAorNDE3MTIgMThmMDlhYzYxOWU4OTJmMmU5ZDViMGM4MzUwNThlMjI5N2VkYjQxZSBsZWdhY3ktdHJ1bmsKKzQxNzEzIGE1NTgzMWQzMjkxNWEwNWY2MWExY2Y5ZWRhYzNhOGE5MTY4OTA3NTcgcmVsZWFzZTI0LW1haW50Cis0MTcxNCA0ZGIxN2EwMGJkY2QzNTMwN2YzNjg3MjAxMWQ1YmQzNWM2M2M0ZWQzIGxlZ2FjeS10cnVuaworNDE3MTUgZGVlMjUzYTMxMTZjNDU2ZjliODZjZDc3ODFlMjVkZDM1MTRiNTU1NiByZWxlYXNlMjQtbWFpbnQKKzQxNzIyIDRlYzYwMTExMDkwNjEzNzYxZTk5MGZlYjZlM2RjZDNjOGI3MTY1ZjggbGVnYWN5LXRydW5rCis0MTcyMyA2NTg2Y2Q5OTIwZTdlM2ZmNmIxY2UwNDlhNDU5NDNkMDFkNGY4ODdjIGxlZ2FjeS10cnVuaworNDE3MjQgOWI4OTdmYjdhYzZhMjIxNmQ2ODk4Y2VjMDhkZDNiNTEwNjc5MDM0MiBsZWdhY3ktdHJ1bmsKKzQxNzI1IGY4OTNkNDAzYTk4YzFmODE5YzAyMTZhNjNmNTI5MzkzYTFjNWZmYjAgbGVnYWN5LXRydW5rCis0MTcyNiBmYTA4YzY5N2EyNzU4ZGIzZmVjZmQwZDhmODkyMjBiYjVkMWE3NTEzIGxlZ2FjeS10cnVuaworNDE3MjcgYWRlNjc4Njg3ZDNiMzI4MDVjNDI2OTlmYThjZmEzYjIyMDY5ODcxNyBsZWdhY3ktdHJ1bmsKKzQxNzI4IDMyMWVmZDAzNzg1OWNjY2U4M2RlNjYzZDljMzY3YzJmZmJkZDJmMmUgcmVsZWFzZTI0LW1haW50Cis0MTcyOCBmMWFlMTE0NTdkMzRiYzNiMGM2N2Y3Y2MwMzQzZTg5ZWNkNTI5NmMxIGxlZ2FjeS10cnVuaworNDE3MjkgODc3YjVkNGNhMzY4MTcyMTM0ZmE3MGIyMTQ0ZjRiMGE3ZTlhYjM3OSBsZWdhY3ktdHJ1bmsKKzQxNzMwIDczMTAzMmQxMDE1OWZiYzBkNTI0MjQ1M2Q2ODI3NzllMTQ2N2Y1Nzkgc3NpemVfdAorNDE3MzEgMjc5MTljZjg0ZGMzZGRmMGNkYjMwZWMxMTM0Y2Q2YzdjOGE5MjJjMiBzc2l6ZV90Cis0MTczMiBjZWM5YzJjMTRlMjhkNDRmNDA2MDY1MjdjZTgxMTJhNGM2NzhjYWEwIGxlZ2FjeS10cnVuaworNDE3MzMgOWVjNWIxNjVmZWEwODE0YTI3YmFhOGI5NjVmMTUyOTEwOWQxMWEzZiByZWxlYXNlMjQtbWFpbnQKKzQxNzM0IDc5NjMxMGNiZmZlYjIzMjRlOTQ2ZmY1OWUyZWUyZTUxMjYyNjA2MjMgbGVnYWN5LXRydW5rCis0MTczNSA0YzE1YThlOTFhZTc0ZmVjNWJkMGFjNTMwZGM2NmZmMzFmMWZhOTM1IHJlbGVhc2UyNC1tYWludAorNDE3MzYgODFkNTk5NTk1MWZkNDEwY2E4NmRjM2Y3NGQ1MGRmMTYzNjVkMGRmNSBsZWdhY3ktdHJ1bmsKKzQxNzM3IDk4MDU2MTk1OGYxZDM5MzNmZDYyMTM1MWY5YWRkM2VkMjk5YzBjNDYgcmVsZWFzZTI0LW1haW50Cis0MTczOCBmYjZlNjRlYjg2YzAzOGYzMDJjZTI4ZjNkOWY2ZjcyYzk3ODkxMTZhIGxlZ2FjeS10cnVuaworNDE3MzkgZWEwODNlZmRjOTZjNzNhOTkyMDQzZWZlYzdkY2UyNzc3MWUzZDFkYyBsZWdhY3ktdHJ1bmsKKzQxNzQwIDcxOWJhMDJkMmUyY2E2M2QxNTEyMmI0NDZkYzNmMjkzZmZlZDRjNjMgbGVnYWN5LXRydW5rCis0MTc0MSA3YmZiMDk3Zjk1OTc2ZjRlYmM3NmEzNzk1Y2UzMDA3NTI1ZGYxODk4IGxlZ2FjeS10cnVuaworNDE3NDIgM2QxYmFmNzE3YzVhZjVkOWVmODkxODZmNTAzNzU5NGU3MjZiOWEwZiBsZWdhY3ktdHJ1bmsKKzQxNzQzIGQwMjE0YmIxZmQ1MTJiNjdmMWNlNGViYjBjZTIzZmMxZTExOTZmMjkgbGVnYWN5LXRydW5rCis0MTc0NCA5Njk3ZWVlYWYyNDY2MzJlYzQwOTNhNzc2YTg2YTcwMDYxMjc5YThlIGxlZ2FjeS10cnVuaworNDE3NDUgNDVmN2I3MzgzYTRlMjBhOTcxMGY1MmQ5Y2Q5NmU1ODM3MjZmNjU3NiBsZWdhY3ktdHJ1bmsKKzQxNzQ2IGRlMTZhODVjM2I0Y2YzOGUyZTU2YTc4ODM2ZmM3NTcxYmRkMjFmMjkgbGVnYWN5LXRydW5rCis0MTc0OCAxNWI1OGU0NWYxYTEzMTZhY2MxNWI3NGQxN2UzODAwZTlkZjdmMGU1IGxlZ2FjeS10cnVuaworNDE3NDkgZGEwYmFiNWRkNzQwODlmNzI3Yjg2ZmZjNzI5MjNkMWVlNzJmNzNkYyBsZWdhY3ktdHJ1bmsKKzQxNzUwIGY2N2M0YWIzMDRlY2VhODFhYThhNDM5NDNhZjVhMzI2NzMwODA5NTcgbGVnYWN5LXRydW5rCis0MTc1MSBhYTdkN2RmODUzZDU3MDU5MDY2ZDNkNWU1YTlmYTcxM2QzYTIyMzNjIGxlZ2FjeS10cnVuaworNDE3NTIgM2I5MDI1OGZlYzlmNmIyZTZiM2M5ODM5NDBiY2EwMTQ4NGQ2ZDc1NyBsZWdhY3ktdHJ1bmsKKzQxNzUzIDFmZjQ3OTBiNzYwNTAxOGM2NDFmY2NjNDU5NjkyMTQ3YTUzZDAxNTIgbGVnYWN5LXRydW5rCis0MTc1NCA4ZWJlMzRlYjNlYjc0ODAyYTQ5ZjJkNzcxMGY3ZTRkNjQ0YTY0ZDQxIGxlZ2FjeS10cnVuaworNDE3NTUgMTA0NDBiY2ZhMDYxNzE5YzdiN2U5ZWZmNzVkMjFlNzQ3MDE5ZWUyZSBsZWdhY3ktdHJ1bmsKKzQxNzU2IDE5ZDk2YzJkN2RmNTRlMjlmMGVmNTg0MzEzYWViMWJkZTlhMTFmNTAgbGVnYWN5LXRydW5rCis0MTc1NyAzZjM1OGFmYmIzZDNmMzdhZjIwMzIzYzZhNzA3ODRjMTNiN2UwMmM4IGxlZ2FjeS10cnVuaworNDE3NTggNGNiZjJhMDEwZDk0NWI2YmNkOTU1ZmEwNTE4N2MyNTc5OTcwZWIwMCBhc3Qtb2JqZWN0cworNDE3NTkgZTNlY2E2NWFlMTQ0ZjVkYzg0MGI4NDY1NDZkZDRkZTY1OTkxMDY5YSBsZWdhY3ktdHJ1bmsKKzQxNzYwIDMwMWZiMGE5OTM3MTQ0ZWM5N2IzMjNhNWI4ZjQ1M2ViOGI1YmU3NTUgbGVnYWN5LXRydW5rCis0MTc2MiBmYTY5ZjBmYTM2ZmVmOWIyZTljNmE2MjE3Y2U0ZDEzMzRjNGIzZDExIGxlZ2FjeS10cnVuaworNDE3NjMgZTE0ZjQ3OTY0NzQ4MWU0ZmQ5YzUxODM2MTYyZjI5OGM3MzI3NmE5ZCBsZWdhY3ktdHJ1bmsKKzQxNzY0IDQ5YTA0OTNmMjQ1ZTNmYjg0ZTU1ZGYxOWUxOWEyZTkwNzMzZmJkYTAgbGVnYWN5LXRydW5rCis0MTc2NSBhOWQ0ZmI4NjA3ZDI5ZmU5ZjAwMDhkNDdlZWRjZGNjNzRlOTc0YTM4IGxlZ2FjeS10cnVuaworNDE3NjYgZWMzNDUyODQwYjk2NmU2ZDhkZTJkM2NmYmZhNGJjNzBmNzBhYzIwYSBzc2l6ZV90Cis0MTc2NyA0YWEwMTg3OWE4ZjVhOWJjZTgzMzkxNTEzOTJmNTcyMWQ1YjdjNDdmIGxlZ2FjeS10cnVuaworNDE3NjggOGNiNjg2ZGQ2ZTY0NThmZjQ5ZTZmODNlZTU0ODdiOWM1OTlmMTNkYiBsZWdhY3ktdHJ1bmsKKzQxNzY5IDdjNGQ1YjM4YzU1ZTY2MmE2NDEwODg2NGEzNGI5ZTRlNmIwOTk3NzUgbGVnYWN5LXRydW5rCis0MTc3MCBiNzBiM2U1YjNjZDFjOTZiNzI5OWJiYjRhZjA2YTJjMmQzNGNiZTk5IGxlZ2FjeS10cnVuaworNDE3NzEgYjhiMzc4MmIyZGMwNzViZTI3OTQ2YmE1YmQwNjc0ZGZjNzM4Nzk2YSBsZWdhY3ktdHJ1bmsKKzQxNzcyIGU5MGU3ZDllOTg5MTA5YTEwMTk3OTAyY2IyMzg1ZDdmMDcxNGVhMjIgbGVnYWN5LXRydW5rCis0MTc3MyAzNTU5NjMwN2U3ODYwMjFiMTBiNGMyZmZhMTdiNDk1YTQwYWNkZTAyIHNzaXplX3QKKzQxNzc0IDk2M2Q3NDljOTc3NjQwYzE5ZWM0ZTcyZmE4OWExMjc2ZDQ1YmIwMjEgc3NpemVfdAorNDE3NzUgNWE4NzY0NGEzOTAwMGY1NWMxNjk4NjZiMmU3ZTY0MzRlMjUwYjFmNCBzc2l6ZV90Cis0MTc3OCA4ZGQzNWRkNmIwZTg5Y2NlNTkyYzcxMWU3YjI5MTIxMmNiZWFkODgzIHNzaXplX3QKKzQxNzc5IDNiYTIzMGM3N2Q0MDAwMzEwM2M5ZTEzZGMwNTg2YzM1NGEyNTFhNTIgc3NpemVfdAorNDE3ODEgMTZlM2VlYjg1MjA2ZmRhMmYwYmQxYmFiYjc3N2E3ZmE2YjM4MmVmMCBzc2l6ZV90Cis0MTc4MiA0ZDFmM2VjNGVhZDU5NjhhNzJlNWNkOTRlNmM1MTU5ZWQ3N2VhOWY0IHNzaXplX3QKKzQxNzgzIGQ2ZWExNTMwZGEzMDA0MzU1YjYzN2UzYTg4MzhmMzE3NmFkZDI5ZmIgc3NpemVfdAorNDE3ODQgNDJhY2YzM2FhM2M4YTI4ZjBlNDgwM2MwZDMxNmVhNThkN2UyMjIxOSBzc2l6ZV90Cis0MTc4NSAwOGU4MGEyYmY0MGNmODU1ZDNmM2Y3ZTlmYTUwZGJiMDExMTFjOWFlIGxlZ2FjeS10cnVuaworNDE3ODYgOTg4ZmRmMDI1MmI3OTRkNzA2Y2Q1YTAyMjA3M2ViYzI5MDk3MWRjZSBzc2l6ZV90Cis0MTc4NyA2MTcwNmU1ODFlZjljYTQ0OTkxNGM3M2I5ZjI5NDY1OTY5ZjljMzY5IGxlZ2FjeS10cnVuaworNDE3ODggZjJmYTQwZTg4MzYzMGI2M2VjZTNlNDk1YTU0YWI2NjFlNjUyY2RlNCByZWxlYXNlMjQtbWFpbnQKKzQxNzg5IDkxM2E4MGY0NThlNjg3NDc5YTZiODhkNTI5Yzc3NjhkYzJkM2YzOWIgbGVnYWN5LXRydW5rCis0MTc5MCBjODA4OTdiYjUwNTNjZWVkODc4ZjMxYWI2M2UzNDBlN2MwMjNjN2I5IHJlbGVhc2UyNC1tYWludAorNDE3OTEgMmE1ZTYwMDlhNDQ1MjcwMzIxNWM4NDVkZjEwNGM3MjkxNTAyNTZhZSBsZWdhY3ktdHJ1bmsKKzQxNzkyIDUwZmE1OGEyNGU2MGY0MTcwZTc3OTU5NmJiNTVlOTZkODBjMWZlZDQgcmVsZWFzZTI0LW1haW50Cis0MTc5MyAwY2YzMjQ4ZTI3ZTY1OGE2ZWE0ODEyOWMwYTI0NjU0YjQ2ZGUyNTgxIGxlZ2FjeS10cnVuaworNDE3OTQgM2VkNWE0YWNiZTdjYjNiOWNiZmZhN2YyYWRlYmZiYzkxNGVjMTIxZCBsZWdhY3ktdHJ1bmsKKzQxNzk1IGE5M2JlNTE5ZjllYzQwNzI0YzdhMGJiMTgxNGMwOTc4MTZkMjNhZTAgbGVnYWN5LXRydW5rCis0MTc5NiA3ZWNjNDBkMjA1ODY0MWZjN2NiMzMxZmJlNmM4ZTM1ODYxOTM3MTkxIGxlZ2FjeS10cnVuaworNDE3OTcgNzRiZWRmZDBiZDZiMmZmY2ExZWFhMzI5M2ExNGFkYWZjZGY5YzZiZiBsZWdhY3ktdHJ1bmsKKzQxNzk4IDVjZTQ3MTAzZjg0Nzk0OWUzNTlkMjFhNTAxNjY2NmZjNDk3MDFkZTEgbGVnYWN5LXRydW5rCis0MTc5OSAzYTM5NDMxYTU0YTUzYWI3NjMzY2I4YTkyMjkxYWQ3MjA5OWIyMDU4IGxlZ2FjeS10cnVuaworNDE4MDAgMzRhNTE1NGU2MTFjYzEwNjk3MDdiOGE3ODgwOTU1OTUzNzhkNmY1MSByZWxlYXNlMjQtbWFpbnQKKzQxODAxIGYwMTEyNTNkM2M0NzBkMzM5MWUwZWM3MDMwNzgyNDllZmIwOTk3ZDQgbGVnYWN5LXRydW5rCis0MTgwMiA2MzBkMDFmZWNmZWM2NDFlNGZjYWMwNGEyYzc4ODNhOGQyYjZiZmRkIGxlZ2FjeS10cnVuaworNDE4MDMgNTZkZGYzYWExMmIxMWNjYmFhM2NlZTlkOTE1ZGMzMTJiYWNjMzBlNCBsZWdhY3ktdHJ1bmsKKzQxODA0IDk4ZTI1OTVkNzM3ZjAxYzMzOTliMmEyNmRlNzAyODc4YzJjMjAzZTUgbGVnYWN5LXRydW5rCis0MTgwNSBlOWExMGY3NGNmODhhYzdlMzdjMjhlMDk3OGE0ZjFkMTRkNGFjZGU3IGxlZ2FjeS10cnVuaworNDE4MDYgMDNkYmVjMGQ5NTA0NmUxYTFmOTEzNmNhMmM1ODdkZmEzZjQ5ZDg2YiBsZWdhY3ktdHJ1bmsKKzQxODA3IDc2NzQxZTczYmI2NDk3OGM5NjdhODBmYzI4YWMwMDJhM2MyNDNkYWIgbGVnYWN5LXRydW5rCis0MTgwOCA3ZDZhYjlmMzk5OTZjY2ZhMjk3MGFiMGZhZjg0MWE1ZTM5MzAzZjUzIGxlZ2FjeS10cnVuaworNDE4MDkgMDQ0ZDM1Y2EzNDI0N2I2ZTc5MjFkOGUyYWRiN2Q4YTM3NWUzZGZmZiBsZWdhY3ktdHJ1bmsKKzQxODEwIDZjYjU3MzliNzFjZTBiODRjY2UxNzE5MTNmZmM3MzdiYzc1NzQxMTUgbGVnYWN5LXRydW5rCis0MTgxMSA0M2JjN2NhMmQ5ZGZiODc5YmJlMDM0YWM4NjY3Zjk2N2FkNzQ4NTNmIGxlZ2FjeS10cnVuaworNDE4MTIgNjg2MzA2YTY3ZTliMjQ2MjVmYWY1MGZjYzk4MjE2ZTBjYzFjY2IzMyBsZWdhY3ktdHJ1bmsKKzQxODEzIGNhZGM3NzhhZWM3OTZmMjM1NDQ3YzQ1NTU3ZDFmY2YyZjVkODkxNjggbGVnYWN5LXRydW5rCis0MTgxNCA2ZjA2MzhlN2JkMjM2ODhhNDg2YzA1ZTkzMDBlMGY4MDlkMTU5OWZjIGxlZ2FjeS10cnVuaworNDE4MTYgNTM2ZjI0ZTE2YWYyNDY4MDIxOTdiYWVlZjNiMTM0Njg1ODcxYzlhZSBsZWdhY3ktdHJ1bmsKKzQxODE3IDE2Mjc3NzE4Y2ViOWFlNjYzMWYyOTc1NTdmNWM4MTk5YmJkYzVhYWQgcmVsZWFzZTI0LW1haW50Cis0MTgxOCAyM2ViODY3N2JkYWQxMzhmZjZkZWQ3YjM4OTYxOGMzNzMzZTg5OThmIGxlZ2FjeS10cnVuaworNDE4MTkgNzZkNTExOTcyNjE2Mjc3ODhhZDQ0YzYzZmViMWI2NDI0OTJjMTg1MiByZWxlYXNlMjQtbWFpbnQKKzQxODIwIGU0MzE2ZGExOWNmYzFkOTRhZThiNmZkNTUyYzY1NWI3OTE4OWFhZWUgbGVnYWN5LXRydW5rCis0MTgyMSAyMTQzMzcxYmI5MWZjMjM3ZTNmOWQ1Yzk3YzRhNTM5MDJkNjIwYjUwIHJlbGVhc2UyNC1tYWludAorNDE4MjIgMTU2ZGY3N2Y5OTJlYmVmZGY2ZTg4ZTFlZGU0YWQxMmVjMDM2ZTNkYSBsZWdhY3ktdHJ1bmsKKzQxODIzIDU5YTg5YjU4OGMzMDk2YTM2YmU2OTBmNGYxOGJkYmM3M2Q1YjQ2YTkgcmVsZWFzZTI0LW1haW50Cis0MTgyNCBlMDZkZjVlMTNkYjlkYjcxNzM3ZWNkNzkzMzQwYTYxZDZiOWNkZjNjIGxlZ2FjeS10cnVuaworNDE4MjUgNzMwZjg0YzJmZGRiNWIxMTY0OWQ4NzlhYWE0MGI2YTZlYzJhZGRmNCByZWxlYXNlMjQtbWFpbnQKKzQxODI2IDQ5ZDYzZjM3N2ZlNzJkNzE5NWYxOTIyYmJjZWQzYWVhOWQ5YzhiOTMgbGVnYWN5LXRydW5rCis0MTgyNyAxNGYwMDJjZDAzNzFiNGE4N2UyZmFmOTg3MzAzNDg5ZjE0ODYyZDcyIGxlZ2FjeS10cnVuaworNDE4MjggYzg4NmNiMTZhMTU2NDY1NjhkMjJiNmJhZDY5NGRmMTJiZjhkOTQ4OCByZWxlYXNlMjQtbWFpbnQKKzQxODI5IGYzOWJkYmY0YjBjMWI3ZmI0YTk5OGZhN2RiOWVlYmJjNWFiZjM1YWQgbGVnYWN5LXRydW5rCis0MTgzMCBhNmFlMTAyYTZlMTE5ZWYzMTdjNjRkNzdjZjAyZjYyYWFlNmE3NDc4IHJlbGVhc2UyNC1tYWludAorNDE4MzEgYjU0MGI2MDc2ZmQ5OTE1ZWQ4ZDhhZTNlNjI1MDg0YjUzNTViNGVkYiByZWxlYXNlMjQtbWFpbnQKKzQxODMyIDdjYzIxNWYwYzA5YjNiZjFlYzI3ZDQxNmJhMDJkM2FiNjRlMGJkYzEgbGVnYWN5LXRydW5rCis0MTgzMyAyMzM5NzVkYTI0N2UyMmFlNjhjMGY3ZDkzZjY0NDNlMTgzZTljYTE4IHJlbGVhc2UyNC1tYWludAorNDE4MzQgOGU0MzhiZjc2Y2JiZjI1MDYyYTU1NGFjODU3OWRjNjk2Njg2ZDYxNCBsZWdhY3ktdHJ1bmsKKzQxODM1IDEwMWI2MWE5ZWVkMmU1MThjOGMzYTVmMDliM2FjODYwZDMzYWVmNjggcmVsZWFzZTI0LW1haW50Cis0MTgzNiA4MmE1MmE0NjRhYTI1NmNiYWI3N2U2NWRmN2I0OTM5NTE4ZDRiMjQ3IGxlZ2FjeS10cnVuaworNDE4MzcgNzRkMTZlYjJjYWJkZDJlYTQzZDNiMTcxMTExMWU2NDBlNGI2NWRlOSByZWxlYXNlMjQtbWFpbnQKKzQxODM4IDIyZGJmNTgxOGIwYjI5NGU0MWY0NzQ1OWU5MDA3Y2QxMGMxNmZlYmMgbGVnYWN5LXRydW5rCis0MTgzOSA4NTBmN2QxZTRjYTI3NjQ1ZjMwOTViNjhhM2U2NWJjMTU4NDc1MzM5IHJlbGVhc2UyNC1tYWludAorNDE4NDAgYWE3MDcwNDE1MDVkODk5YzMzNDI4NzcxMWFjYzliYmY1ZDQxMGM3ZiBsZWdhY3ktdHJ1bmsKKzQxODQxIGU0NGE4MzNlY2E0MzM1ZDg1MTIyYTI2NjdmM2NhZDdjMmM2NmIwOTcgbGVnYWN5LXRydW5rCis0MTg0MiAyZWI3OGY1ZDE0NTAwZTQ2NTJmM2JjZDU3MzhjNmNmM2U0NGQ0Y2JhIGxlZ2FjeS10cnVuaworNDE4NDMgNzNkYTU5MWY5YmRiZGQ1Y2U5NzgwNzI2MTVhYWE3YTFkZjdiMDE0MiBsZWdhY3ktdHJ1bmsKKzQxODQ0IGY5MjgxMjgzYjEwOWE0OWJkNDI3YmY2NzcyMWJkYmQwOWFhNWM4NzMgbGVnYWN5LXRydW5rCis0MTg0NSAwNDJlYjNkMWNlM2YzMzhhZTYxZTM1ZjNjNWViZjc0ZGE1MGE1MmVmIGxlZ2FjeS10cnVuaworNDE4NDYgOTYzYTk4ZDhmZTJlNGQyY2ZmMjdkNjg3MjU0MzRlNzI0MTNkN2VkMSBsZWdhY3ktdHJ1bmsKKzQxODQ3IGZlOWJkMjFmMjdmMjI4OWQ1MGVlMjYxNDM3MTc0NTVkNDhjYTUzODcgbGVnYWN5LXRydW5rCis0MTg0OCBjNzFjYTFjZDM2M2I3NWYzNDhlYTc2NGJmZjRiNzNhNDFiOWQ1YTZlIGxlZ2FjeS10cnVuaworNDE4NDkgOTZlYjJhNWNmYmVmNjIzZWVmZDBiNjExYWRmMzg3MTVjODM5Nzk2YiBsZWdhY3ktdHJ1bmsKKzQxODUwIDM0NTFiMTA5YTI0YzU2M2U5MWFjOTgwODRhZWM4MmY1MjM3MDg2NTAgc3NpemVfdAorNDE4NTEgMjk4ZmMzMjY5MzEwYmU5ZDdhMTc5N2U5NWQ2ZmE1NWIyNWYyYzc1YiBzc2l6ZV90Cis0MTg1MiAyNjEwN2M1ZDA1N2MxZmY4Yzg5MWU3NDU0ODZhMDM3OGY3MDhiNThiIGxlZ2FjeS10cnVuaworNDE4NTMgZjQ1MDc3NzRkNGU0MWZmZTRlZTk1NDBhMTAyNGU0MDIwYjgxMzMxNSByZWxlYXNlMjQtbWFpbnQKKzQxODU0IGQ5OTNhM2VlODkxZWQ4MmE0MWM1MzdkNmZmNDgwOGJiZmFkNjY5OGYgbGVnYWN5LXRydW5rCis0MTg1NSBjZmQxZTFmNGZkZGRiMTI3Njk3NWZiOGZkMjlmZDYyMmViMjc1ZTlhIHJlbGVhc2UyNC1tYWludAorNDE4NTggMWU1OTViNmM5MjRlMTcwOGY1YmIyY2YwYmZjOWYyNmIxOTFiZmU3ZiBsZWdhY3ktdHJ1bmsKKzQxODU5IGJiNTFkNmM2YTNlMDNhMzkzZWM4MzY2ZTA0NmRjMDMzYTBkNTViMDkgbGVnYWN5LXRydW5rCis0MTg2MCA1MDg4NmQ0MmI0NDRlNDBkN2U5MzYzYzFhYjYyYTI0MDI5MTI5MDcyIGxlZ2FjeS10cnVuaworNDE4NjEgMTQ3YzM1ZjQzNWEwYjVhZDA4MTcyMDhjNmZhZWQ2NjU1N2Q5M2YxYSByZWxlYXNlMjQtbWFpbnQKKzQxODYyIDZmMjUwMjlkZTlkYjQzNjg0NzE5NTI5OTZmOThiNzFkYjRmNmMyMmIgbGVnYWN5LXRydW5rCis0MTg2MyA4MzRkZDY2NGFlZmNhOWZlMzUzMmYwOTE1MDJkY2I1NDNmNDY1ZmI1IHJlbGVhc2UyNC1tYWludAorNDE4NjQgOGEyYWI1ZjUxOTMyZmVhM2ExMjJhNmUzODkyZGFhOTY2N2E1MzQwMiBsZWdhY3ktdHJ1bmsKKzQxODY1IDY1MjQyOWM0ZjJhNDkyZjczY2U1YTg5YTQwNDgxZmE4ZmM3ODJlNjAgbGVnYWN5LXRydW5rCis0MTg2NiAyNjZiYmRmOTFiYjUzZTcyYjIyZmM1ZGU5N2VmZDM2ZjkwOGM2ZGEwIGxlZ2FjeS10cnVuaworNDE4NjcgMDBkZjA1ZmE4MTYxNGFlNjA5MjFkZjQzMTM5MGIyYmIyYTdhOGNkYSByZWxlYXNlMjQtbWFpbnQKKzQxODY4IDA5ZWQ2YzliZGJkOWEyOTVjNWMyYzhlMDA5M2FjMDc2YWI4ZTFkYjggc3NpemVfdAorNDE4NjkgYzE4NTA0Y2VmMmJhNjVhYzMyNTEzNTIxMzlmNDM5MWY0YjczMWYwZSBzc2l6ZV90Cis0MTg3MCBjM2FkYzc3ZWIyODkxZTIwNGYyYmNlZDdlZjMxNDBmZGUyZmYyNDdmIHNzaXplX3QKKzQxODcxIGY1NDQzYmRmOWIwZGY4YzE5M2ZhYTc2YWNmZjhiNjU0NmExMGZhZjIgc3NpemVfdAorNDE4NzIgMTI0ODRiNjU5ZmE4NjdhODQ0ODMzYTI2Y2VjMjY4ZjQyOTI5M2I5MSBzc2l6ZV90Cis0MTg3MyA0NmZmNWM1ODZkODYzOTcxMGViMzNkMWEzMmI2MjlhNjk4MzYwN2Y1IHNzaXplX3QKKzQxODc0IGEyMjdlZjI2YTE4ZGJkNDJkODkyYjcwNDY1ZDQ4Y2VhOGQwMmM5ZWYgc3NpemVfdAorNDE4NzUgNTBhNDc1MjFiNDBmNDMwZTVlYmVhNDdiOGM5ODNjMjIwYTUxNzZmMiBzc2l6ZV90Cis0MTg3NiBjODhhODMwZDgzMWMxYmYzNzI2MGY0NTEwNTBhOTdlYzZkOGFlM2FiIHNzaXplX3QKKzQxODc3IDI5MjQzNWE3MzJlOGMyNDlmOTFlOWNiZmIzYTMwYjRhZDIzMGM4NTkgbGVnYWN5LXRydW5rCis0MTg3OCBhZGU0NjM3MWYwNGIwNWM5YTBmNjYyMDM5NjMxYTc5YTA0NThkZGQ2IGxlZ2FjeS10cnVuaworNDE4NzkgNmRkNjI1NDJiNmU1ZGJmOGUxZjBkZTM0YzFhM2Y4MzlmNTBlYzViZSBzc2l6ZV90Cis0MTg4MCA4NWIyZDgwNGFjMGFiYzc4OTk0Nzk5NmNmYzU0M2Y5OTM1ZGRjMWQ5IGxlZ2FjeS10cnVuaworNDE4ODEgYjkwODY1NDQzODJlMjIwODIzNWY3NDljZTE3MWU4ZTI4NDQyZjcyOSBsZWdhY3ktdHJ1bmsKKzQxODgyIGYzMjFiZTM0Yjg1ZDVmNTU4NDdlZjNiNTA5OTc3MjhhOWNkODNiYmUgcmVsZWFzZTI0LW1haW50Cis0MTg4MyAwM2EwYjE4YTc1YmY1ZGRjODA0ZGYyOWVmODA0MzViOTQzNTFhNTU0IGxlZ2FjeS10cnVuaworNDE4ODQgYTgxMWViYTMwZmE0ZGYzYWZiNzcwMjgxZWQ4OTFkZTg4ZjE3NmFmZCBsZWdhY3ktdHJ1bmsKKzQxODg1IDliOWNlZDRkNzkyMWY2Y2ExMzVlNDI0MGRkMzhkMTk4M2ZkMTgyYjggbGVnYWN5LXRydW5rCis0MTg4NiAzZjYyZDMxZDU5ODVhYjI4ZDE2ZjAxNjBmYTBiYTg4MTM3NjdjM2M1IGxlZ2FjeS10cnVuaworNDE4ODcgNDMxZDZlODdiOWZlMGJmNGJhNGNlZDlhYjM2NmNlMWVjMDY2OTc0NiBsZWdhY3ktdHJ1bmsKKzQxODg4IGIyNjQ4Y2EyMzFlODAyNTMyZDQwMjYwYWU1MzViOTNkNGJiYzQyY2UgbGVnYWN5LXRydW5rCis0MTg4OSA3OTcwZTAyZmM4NDdiODUxNjBiN2U2ZmVmOWY5NmZkMzkzNmJlMTVkIGxlZ2FjeS10cnVuaworNDE4OTAgYzgyOTc1ZTkxZTk5ODVjOWZkZjUxM2FmNjgyYjQ0MzJlYTk1YzQ2NiBsZWdhY3ktdHJ1bmsKKzQxODkxIGJmN2VlZjUwNzJiNjkxNjkzYjM2MWMyZGZiNzY5MzIyNDBmMjViMzkgcmVsZWFzZTI0LW1haW50Cis0MTg5NCA4MWZhNDdkMmQ0NzdiZDliZjhlNjk0ODE1OWE1OTg1MTg3N2E0ZmU2IGxlZ2FjeS10cnVuaworNDE4OTUgZWU5ODRmZTk4MWI0ZWZiYTllM2IyOTFiMDVkMmE2ZTYyMTNkNzk3OCBsZWdhY3ktdHJ1bmsKKzQxODk2IGY4MGVlMTQyNzI3YTg2MmQyZGVhOWI1NzVjZGRjYzVjZmQzOWU1ZGMgbGVnYWN5LXRydW5rCis0MTg5NyBkZWU5MmVjYjhhMTEzY2YyOGI1MjU5NjQwYmNmMzQxNTJkOGQ0NzYzIGxlZ2FjeS10cnVuaworNDE4OTggYWE0NTY0NDkyNjYwM2IwNGM1MTUyZTc3ZTZmMjQ2Njc4ZDcxNzc5YyBsZWdhY3ktdHJ1bmsKKzQxODk5IDc5ZTcwZmE4YzIxMmZlYzcwMjBlYTJlY2EzMTI1ZTEwNzZiMTczZjggc3NpemVfdAorNDE5MDAgY2VlZmNhY2U2ZjI0OTlkYjUwMTQzNjYyZmRlODZmYjBiYzUyM2FjYSBzc2l6ZV90Cis0MTkwMiA2YzgxNDVmZTQ5NWVkYzkwNThjOGMxNDdlZWExMTk2YzAzYWFkNWVhIHNzaXplX3QKKzQxOTAzIGVmMmQ3YjlmZGU3Y2Y5ZTRkOTVhYzFhMjBmZWMwYWEyOGZhOWNlNGIgc3NpemVfdAorNDE5MDQgNjkxZWU1MjRmMDI3NTRhOWJkZDI3OGIxNTllZWYxNTMyYzg4YTQ5YyBzc2l6ZV90Cis0MTkwNSA3NjU0ZGEzNmZlOWNjYTg2OWUwM2QxYTE2MDUzMDYzZmUzMzY3YThmIHNzaXplX3QKKzQxOTA2IGYwNjEzM2JjYzA1ZTY2N2IwNTM1YzkwOTE3N2QxNmE4NzUyNDQ3MmIgc3NpemVfdAorNDE5MDcgNTJhNzRhMzIzNjgyMDY3N2NlMTEyNzU5ZjMxODQ2NWE3MThmMDk5YyBsZWdhY3ktdHJ1bmsKKzQxOTEwIDYxNDk0ODNmN2EzZDU1NDNjOGM1ZDc3MzAxZGU3ZTU2NjQ4ZjkyMzcgbGVnYWN5LXRydW5rCis0MTkxMiBlY2ZlZDFmNzQ3OGNjZGI4NzkyMTI0MmU5NzkyOGFhZDkxNTUyNDcyIHJlbGVhc2UyNC1tYWludAorNDE5MTMgOTIwOGE3OWY1NjgzY2RiYjQ5NThjOTI3NTk5YzZhNTczMWQ0MmFmOSBsZWdhY3ktdHJ1bmsKKzQxOTE1IDAzNjA4ZDY2ZTU5ZjBjNTQ0MDAxYmZkOGU3ZWI4ZjVjZWJjM2RhZTIgbGVnYWN5LXRydW5rCis0MTkxNiAwYjEwZTg1NWRhZGY2NDgyMGUzNmExZWI2ZWRlMWFhMjBjNmUzZmQ3IHJlbGVhc2UyNC1tYWludAorNDE5MTcgZWE2Y2QxYmU5ODM3YjUyODk1MzRiYzUxN2M2MWQwMTBkNWM4ODg2YSBsZWdhY3ktdHJ1bmsKKzQxOTE4IDI2YmU4YjFkMTg1MzAxN2RjNDg1ZDliZjM1MzkzZjYyYWNmZTQ0ZTcgcmVsZWFzZTI0LW1haW50Cis0MTkxOSA5MmVmNTZjOTdjZGY0MjEwZWQ2M2U2YzRhZTAxMDJhYjdmZWQzZDZhIGxlZ2FjeS10cnVuaworNDE5MjAgYjM0ODIxNjRhMTAwMzgxNDViMThlN2ZmMGYxYmM1ODkzZWU4ZTFhZSBsZWdhY3ktdHJ1bmsKKzQxOTIxIDQ0ZjA3NjBlMjRhMTY5ZWRhYjgzZjQ0NWUyYjc5ZmJjZjcwYWRmNDcgcmVsZWFzZTI0LW1haW50Cis0MTkyMiAzOGIwZmU1MWIwYjRmOTk1ZTVjOWQ1ZmQ0ZTgwYmJjYzcwZGUyOTQ4IHJlbGVhc2UyNC1tYWludAorNDE5MjMgNDRjZmNhNjEzNmM2MzgyYTZlOWFiYmE5MzBiMWNjMTIwOTliMTA3MyBsZWdhY3ktdHJ1bmsKKzQxOTI0IDAzMjkyNGU3NWMyNGJhMDBkYmYxNjFiZjhiYzZiNjY5OWQxYWIzZWIgbGVnYWN5LXRydW5rCis0MTkyNSAwMWNiZWQ1ZTg3MzEwNzBiMTdmMzQ4OGY1ZDUwYzVhYTdjMDI5YThkIGxlZ2FjeS10cnVuaworNDE5MjYgODc5MWU4YzQ0OGIzMWUzMDA3NGMzMTc3ODI3ODkzMDBjMWI1MGI0NyByZWxlYXNlMjQtbWFpbnQKKzQxOTI5IDgyNWEwNDE4MTNmYmVlMDc4YTNiZmYzZjExM2RlZjNhNGVhZTkyNzQgbGVnYWN5LXRydW5rCis0MTkzMCAyMTUzMWUzOTIxMTZhMDYxZmVhMzE4NTU4OWQ0NTZmY2UzYmUxMTcwIGxlZ2FjeS10cnVuaworNDE5MzEgMDNhNTc0MWNmZWE5ZjYwYWJlZjNjY2U3ZmJhYjNmYmFlNzJiOTgyNiBsZWdhY3ktdHJ1bmsKKzQxOTMyIDgzMzY0NzYzYzdiMmM2YTgzOTIxMTI1NTM5YzU5OWI3NTM4MGMzNDEgbGVnYWN5LXRydW5rCis0MTkzMyA2ZDc0M2U1YmFmMTQ3YWU0YjUxYzQyYjkyYmYyNDYwOWJmZjI0MWNmIGxlZ2FjeS10cnVuaworNDE5MzQgY2VlMDU5ODBmMWZkMWM1MjNmMzQyMzcxNjVmZjk4ODQyYTIzYzE5NyBsZWdhY3ktdHJ1bmsKKzQxOTM1IDliODg4NWM5ZTU1MWMzOWNhNDM4OTgwYTcyNDNmMGY2ZDE4NDM2MDMgbGVnYWN5LXRydW5rCis0MTkzNiBjOWRhMDhkNDgyYzM2YWZmYTk5MTY1YjJjZTU0NTdmNDdiZTg2NjBiIGxlZ2FjeS10cnVuaworNDE5MzcgMjQxMDc4ZWU2ZTg3YWU4NjNlM2ViMTE0ZmRlMTVmMzM3ODQ4YzQ1OSByZWxlYXNlMjQtbWFpbnQKKzQxOTM4IDY1ZGYyNTY3NGQxYWVmNzJkMjE3MTY3MjMyNmQ4NDQwMmI5MjA2YTQgcmVsZWFzZTI0LW1haW50Cis0MTkzOSA3N2I0YWFhZDY5MDNlYmI4ZmRlMWNlOTRiNDMxZmYzNDJmNTMzMWIyIGxlZ2FjeS10cnVuaworNDE5NDAgZjcyM2UxOWZhM2I3MWEyMGIyMWZkZTc0MDJmOWViNTg4YmJkYWZmMCBsZWdhY3ktdHJ1bmsKKzQxOTQzIGIxMzljOTk5NjY1ZDk5NzkyNjg5ZmMzYjJjY2VjZTA0YTQyNDUyZDUgc3NpemVfdAorNDE5NDQgMTIyMDU4ZGZiYTc2OGE5M2Q5MmZkYmExOWE4NTljNTk4NzU0MWQzZiByZWxlYXNlMjQtbWFpbnQKKzQxOTQ1IDZlMTc5NjhkNGRlOTJiMTYzMmE4M2ZmODYyNWYzODJmMjQ0MmQyZDcgbGVnYWN5LXRydW5rCis0MTk0NiBhMWIxZTQ1MWQ4MmU4NWU3OTRmYWNmOTJlNzJhZDFiZjMzZjc2OWY3IGxlZ2FjeS10cnVuaworNDE5NDcgNGM4YTc0YTIwMjI3ODM0ODNjOGMyYjczOGE0YzliY2IyMGUzMDRjYiBsZWdhY3ktdHJ1bmsKKzQxOTQ4IGNmNjllMzE5MTIxODI4YjRhNzUyYWJkODFmZmI5YmMzMjVjNmFiMDEgbGVnYWN5LXRydW5rCis0MTk0OSAxNjg1ZGNkMmY5Mjk5M2NmNTFlNWUzM2M5ZWZjMDI0M2ZmNzNhZTZkIGxlZ2FjeS10cnVuaworNDE5NTAgNTZhZDlmMjc1YmVjMTkzZDI5NjNjMGJhMjI1NmEwYTU4MzI2NzY4MCBsZWdhY3ktdHJ1bmsKKzQxOTUxIGJiNmZhNGEzMWYxNTI5NzYwMzllM2I2N2UxYTM4N2FjMDg2ZGI2MWUgbGVnYWN5LXRydW5rCis0MTk1MiAwMjZhZTFiOGE3ZTNiYTA1ZTE0Y2FiMTBlMGYxZmY2YmNhMTNiZGI5IGxlZ2FjeS10cnVuaworNDE5NTMgZTdjOTZjMWQxNDRiYTc0Mjg1NDM4ZTEzNzYxY2U1ZWU4MGQyYTZmNCBsZWdhY3ktdHJ1bmsKKzQxOTU0IGU4ZGVjNzhjZmEyZTNlNmY0ZjMyOGNmMTJjNGY3NzRkZGM0ZWYxN2EgbGVnYWN5LXRydW5rCis0MTk1NSBkZWQ0YTQ5N2ViNzZmYjg3YmRlYzgyZWM5MmI5OWE1MWQ4ZmM1NGIwIGxlZ2FjeS10cnVuaworNDE5NTYgZDNmNGM0NjdlNDM5YTI1Nzg1M2VlNWUyODk4MjlkYTA5MjNlMzE4MiBsZWdhY3ktdHJ1bmsKKzQxOTU3IGE3N2U1YjA0NmE1MDg3NjMzOGU4YzE3N2VlN2ZkMGFhMzJmZDU5ZTMgbGVnYWN5LXRydW5rCis0MTk1OCBiOWRkNDgxYjM5NzJkZDY0MDEzYjVjYjZjYzllZWFjMWNlODQ5Njk1IGxlZ2FjeS10cnVuaworNDE5NTkgZTk0ZWU1OWEyZDQ2MWQ5NTA0YWM3ZmU5MTFjM2VlYjkyNzM3Y2U5YSBsZWdhY3ktdHJ1bmsKKzQxOTYwIDlmNjZiZGQ1YTA2MTIzOTI0MWM4N2YwNWY2MzljYTgyZWUxYzY1NWIgbGVnYWN5LXRydW5rCis0MTk2MSBlY2Q0MjM3MThhMzI3ZGY1NmQ5OTYzYjhmM2U4YzE2NWM3NWYyOGVlIGxlZ2FjeS10cnVuaworNDE5NjIgOGFiNzhmYjRkMTdlZDRhYzE5ZTZkN2U5NTg1OWMxZjMwMDg0YmU1OSBsZWdhY3ktdHJ1bmsKKzQxOTYzIDBmOGM1NTQ2ZDNiZjQ0Yjc1NGYzZTBmZDhhZDAyNzRkZDllMGZkYzIgbGVnYWN5LXRydW5rCis0MTk2NCA5MmUyNDY4YmRiNGE2YTQwMzE3Y2RlYmUzOGU1NzM3ODY4OWQ0ZGZhIGxlZ2FjeS10cnVuaworNDE5NjUgMDBiZGMwOGE1MDdkZWM5ZGEwYzZkZTYzYTExNGNjNGYzNWZlNjNjNyBzc2l6ZV90Cis0MTk2NiBhZjdkNDg0MjA4ZTkyNzFhNGNiYWJlNDU4MjVlNjYzYjc5NjYxZTU3IGxlZ2FjeS10cnVuaworNDE5NjcgZDIyMjRjOGQ0NTQ5MjYyNTQ5M2M5NjI3YTkyY2Y4YzA1MTc2ZDllMiBzc2l6ZV90Cis0MTk2OCA1NTdlOWI2ZWU3ZTExZTZmN2VhNWVhMDQyN2JmYjA0N2IwZTU0NzRlIGxlZ2FjeS10cnVuaworNDE5NjkgMGY1MTg5NjA3MjY0MGFlMTE2NzkyYjE0NjBmZmNiYjNkOTFjN2VmZiBsZWdhY3ktdHJ1bmsKKzQxOTcwIDYwYTVhMWFhMTY4MmI2NzBlMjNlN2ZkZDA5YmJkOTNjMzFlZDY2NTkgc3NpemVfdAorNDE5NzEgYTlhYmRiMTRjZjNiNzhhNDdhOWViYzM0Y2ViNmJhMWMxZmJjN2U1MiBzc2l6ZV90Cis0MTk3MiBhMjY0MzI1M2FjNzk2Mjk0YjNjNjhkOTE5ZDk0ZThmZjZmMTQxZmMzIHNzaXplX3QKKzQxOTczIDA5NjhmMDYyZjM1MDY5ODhiODg2YTRmOWMxYjUyZTRjMjY3ZjFlMzAgbGVnYWN5LXRydW5rCis0MTk3NCBlNzg4MGY0ZjUzYTQwZDMxM2M3YTA0N2Q1MDQyNTIzMzYyMjRhOGI5IGxlZ2FjeS10cnVuaworNDE5NzUgZDNlNjhjYjczOWZiMjU3NWZhNTlhNGNkNDhiMzhlMTVhMWFmNTIxNyBsZWdhY3ktdHJ1bmsKKzQxOTc2IDU5MWRmNTRkMmQzMGYxNGUwNjEyNDVjNjc5ODU0YTQ1Mjg4MGVkYTkgcmVsZWFzZTI0LW1haW50Cis0MTk3NyAzYmE5ZmY3OWJiMjliOTQ3ZWI5N2U4Zjk5MzUwOTFkODUzZDE2ZmU1IGxlZ2FjeS10cnVuaworNDE5NzggODExZDY0NGQxOTE3Njc3MTA1NDc2MWEyN2RmYWU4MTUwZDcxNmJkMCBsZWdhY3ktdHJ1bmsKKzQxOTc5IDRhYzliOGZjZDYzZWE4ZDg1MzEyNjk5NDQ5MzU0ZTJkZWQ3YWQ1OWEgbGVnYWN5LXRydW5rCis0MTk4MSBmMDllNjA5MWE3NjI5ZWVmZmI3NjE2NWIwNzk4YjMwZTNkMjMyMzE0IGxlZ2FjeS10cnVuaworNDE5ODIgOGRmMTk0Mjk0YzkwZGM0YTExZGY5MGJiNWQyZWUzMjI1OTU4NWI0ZiBsZWdhY3ktdHJ1bmsKKzQxOTgzIGQ0MzRiM2M3MzkwMTYwZjM1MjIwOTQzZDVjNDNlZDg2ZGVhY2U4YmEgcmVsZWFzZTI0LW1haW50Cis0MTk4NCAyN2JkYzFlMjdlZWRiN2VjNDU5YmNiOWUzYjA0MzRjOGVmZDZlYjlmIGxlZ2FjeS10cnVuaworNDE5ODUgYzNiNDJiN2JkNmQ5ZGFhZGM0YTk3Njg2ZmViZDg0N2VjYmQ4MDY0ZiByZWxlYXNlMjQtbWFpbnQKKzQxOTg2IDNjMTU5NzZmZjYxODcyYjViOTAyYmMyYmQzZWJlZGFhMDZhMjM4NjQgbGVnYWN5LXRydW5rCis0MTk4NyA2Y2Y3ZDA0ZGNjMWY1N2U2NzMzN2QxNjA5ZWY3ZTZlNTQxMGNlZmJmIGxlZ2FjeS10cnVuaworNDE5ODggMDljMjFhNmJlNjA0MTg0NzhjN2JjOTlkZmMxNWM2MzAzNDE1YjI5OCBsZWdhY3ktdHJ1bmsKKzQxOTg5IDlmNmVkYzg3NDU0MWNkMjljMjQ0MmU0OTExNDBiOWI2MGVhOTZiYzMgbGVnYWN5LXRydW5rCis0MTk5MCAyNmU3OGIxOTZjMTcyNzhhODYwOWYzZWVhMDZmMDgyMzI4NjRkYmVjIGxlZ2FjeS10cnVuaworNDE5OTEgY2FkNTkxZDkyMWVjYjAyZDQwMWRkOTMzOTM0NzYyYjQ3OWYwMzgxYyBsZWdhY3ktdHJ1bmsKKzQxOTk2IDMwM2RlYTg0NzYzOTA0ZmI4NTRjY2M4YjhlNmY3NzE0ZTFmNWFiZDUgbGVnYWN5LXRydW5rCis0MTk5NyA3NmExYzIwZTgzMGU1NWMwMjFhMjVkMzdiOGZhOGFhMDMyMDRiY2Y0IHJlbGVhc2UyNC1tYWludAorNDE5OTggM2MwMzBlZGZmOTg1YTZiYzk5OWJmM2Y3MmM3NzZhYTMyNmI3M2FkYSBsZWdhY3ktdHJ1bmsKKzQxOTk5IDlkZjM5Yzk2MGJmMWM2ODBiYjM0ZjE3ZmNmYmVlNjAzYmU5OGY2YmUgcmVsZWFzZTI0LW1haW50Cis0MjAwMCA3OTBmOGQ5ZTQ5ODg5ODExNjgwMmE3MmZlNzUwNGZiZjJiMDFmOTJkIGxlZ2FjeS10cnVuaworNDIwMDMgNDFlZjI5MTBkZDQ5OGIwZjg0ZThmNGNiYTNhODFlM2RkM2E1NTg5OCBsZWdhY3ktdHJ1bmsKKzQyMDA0IDM1ZGY2ZGQ4MDkxMTBjN2I0ZWRhMzIxZmI3N2M4N2JhYmFlMWIzMmEgbGVnYWN5LXRydW5rCis0MjAwNyAwZDUzMzUzODdiYTczMmM4NGRmOGU1OWExNjMyYzUxZmNmOWY4ODc0IGxlZ2FjeS10cnVuaworNDIwMDggNDc1YjY0NWUxMmY1ZWMwNThjMzI4MGJmNDAyNTg2YWQ1NGM2ZTEzYSByZWxlYXNlMjQtbWFpbnQKKzQyMDA5IDg3NDdiZjRiOTU0MjJjYjIzY2YwNTUxMjE1MWM4MjI0ZGYzMzhiODQgbGVnYWN5LXRydW5rCis0MjAxMCAyMWUxNzhiOTMwMzBkMWJmYTJiYWM2M2M5ZGMwYjA3NGFjMjM1YTQ1IGxlZ2FjeS10cnVuaworNDIwMTEgODRiYTI5OWUyYjVmZWY0MTFiMGE3MWZiODE2ZWQ1NDcyNjA2Y2MzZiBsZWdhY3ktdHJ1bmsKKzQyMDEyIGQwMTA0MzY0ZjZkMWM4NDA4Mjc3MTg0ZWJiZGIwYTMyYjIzZTk1MGQgbGVnYWN5LXRydW5rCis0MjAxOSA1ZDgxNjkyOGEyMjQ1ZTE3NDUzMWVkNzNkYWM3MDY1NjA1ZWNlODRiIGxlZ2FjeS10cnVuaworNDIwMjAgZTFmZDdiZDI4OTViMDdkNDhmZmUzYWY5MDRhMGQ2NTkxMTZlMzBlNiByZWxlYXNlMjQtbWFpbnQKKzQyMDIxIDE5MmU4Mzg5NGU4OThjYWM0MDM2NDg1ZGMwNmQ3ODEzZGFlNzQxMmMgc3NpemVfdAorNDIwMjIgOGI4ZjFhNTE0NjhhZDI0ODExMmE2NWQ0Y2ZmN2Q5NjUwNGMwZDNiNyBzc2l6ZV90Cis0MjAyMyAwZmU3NWEwNDZjMDA1NDgwZjI0YjA5YjViNGFkNGU2MTdlYjkwZGI1IHNzaXplX3QKKzQyMDI0IDRmOTUwN2JlNTg1NzliNDJjZDI5NjcwYTU2YjFjNTA3OTNiNDgwNjQgc3NpemVfdAorNDIwMjUgNjYyYzYzOTU0ZGYyOTRiNzQ4NDQwMDE2NjhlZDZkNDdmNGQ1OTRkYSBzc2l6ZV90Cis0MjAyNiBmZDFiMTJkM2FiYjY5YzM5YWZjODkxYzdiMzE4MTE0ODhlZTZkOTg1IGxlZ2FjeS10cnVuaworNDIwMjggNTI3Nzc3MGJjOWQxYmE2YWJiN2I0ODBhMDViNDQ0OWIwYTE1N2I5MCBsZWdhY3ktdHJ1bmsKKzQyMDI5IGFiMTMwZDU2NjkzMTllOGVhODNlNmQwYzc1ZTAwZjBkMGZmOTVlNzYgcmVsZWFzZTI0LW1haW50Cis0MjAzMCA1ZTJhNThjODY3ZjcyYzM3MWJmYmJjYjVmNjZiNDkwNjAyOWJkNWRhIGxlZ2FjeS10cnVuaworNDIwMzEgZGEwOTk1Y2ExZjMwN2U3ODdjMjRmODFjYzA5ZDY2NTExZmI2MmVhZSByZWxlYXNlMjQtbWFpbnQKKzQyMDQxIDc4YTY5NzU5NTQ3ZWJlODAxM2ZlZDAwZTkzZmY2ZTkxNzc0NmQ1NjYgcmVsZWFzZTI0LW1haW50Cis0MjA0MiAyMWQzMGY4ZTQxZmZkZTY3OGNjNDQwZTIyYTlhMWI5ZGJhOTA0ZTM1IHJlbGVhc2UyNC1tYWludAorNDIwNDMgZTYwOWZlYTkyZDFlMThhNWZlZTFmYWVlYjA0Y2FhOTQxNDM3YjNmZSBsZWdhY3ktdHJ1bmsKKzQyMDQ0IDBiMjMxYzA1YTdlZGFjMTY2ZDQ3YjQyN2M5YjBkYTEwM2M2ZTMyYTkgbGVnYWN5LXRydW5rCis0MjA0NSA4Njk3Nzc2YmI0MjAzN2MyMzI1MzE1ODQ3ZGI1ZDdlY2QyNWUxYjI3IGxlZ2FjeS10cnVuaworNDIwNDYgYWU0NDgwOTM1MDE2MGU1ODMzMjkxNjY1MzJhOGVlMWVhN2NkYTljMiBsZWdhY3ktdHJ1bmsKKzQyMDQ4IGMxMjgwMDAyMTM5Njk5MzFkNWRhMTRkZjVlNzI0ODA1M2ZkMjkzYWMgbGVnYWN5LXRydW5rCis0MjA0OSBjOWVhNTU3MGRhYzdlNmMxZjRjMGY5NDE5ZmExZWI4ZWViMmQwZWZmIGxlZ2FjeS10cnVuaworNDIwNTIgN2NhNTFjYjcwYzJlMjRkYTYyOWY5OWYyMzhiZTAyYjNhZDYyYzM4MCBsZWdhY3ktdHJ1bmsKKzQyMDUzIGI5NGVlOTJhNmQ2YjVlYjU5ZTg0YzhlNDk5NDhlYjNmYzZlZTA0OTMgbGVnYWN5LXRydW5rCis0MjA1NCAwN2ZiZDM0ZjFmNmVkMTMxYWZjYjQ2ZTQ2ZjJjZjMxNzM4ZmY5M2E3IHJlbGVhc2UyNC1tYWludAorNDIwNTUgZWYxZDhkNmFjNmJlZmI2ZTQ4N2FlNDE5MGYxN2UzMjYzNTM3MTIyOCBsZWdhY3ktdHJ1bmsKKzQyMDU2IGVmM2I0MzU3OGE1ZmZhNzcxNDM3M2I1ZjBlOWEyZTljZjcxOGVkNGIgbGVnYWN5LXRydW5rCis0MjA1NyBhMjEyNTNmYjA4Yzk3MmQwMDYxYTI0NWI3MWFiMWJjNWE3NzFhZTY0IGxlZ2FjeS10cnVuaworNDIwNTggZTcwMzNkZmZkNjBjYWU4MzQ5NTYxNzY3YzMwZGZlMzIzZTA3ZTBlMSBsZWdhY3ktdHJ1bmsKKzQyMDU5IGM3Y2ZlYTFlYmIzMjM0MTllMjlhZmRjYjFkZWQ3NWRiNWIyYzRlY2MgbGVnYWN5LXRydW5rCis0MjA2MCA2ZDJiZTNiNzZmMmUyODM2NTczNDU3NGRjYzYzYWZjY2JjMWVkNGUwIGxlZ2FjeS10cnVuaworNDIwNjIgOWVlYWEzM2Y5NjQwNjMzYzYxNjI4YmQ3YWRmNTk5NmU1MGM2Y2NjNCBsZWdhY3ktdHJ1bmsKKzQyMDYzIGIwZDdkMjhjZDc0NjFmMmYxYzM0ZDM1NjkwYzEyOGRmYWUwM2Q4YzkgbGVnYWN5LXRydW5rCis0MjA2NCAzODhlYmM2ZTNkZTExNzk3MzMxNTA3ZDIyOTJiOGFiMTExNjRlMTNiIGxlZ2FjeS10cnVuaworNDIwNjUgZThmYzYwYzRmYWFkN2UzYTc3ZTJmODY5ZmFmMzgwMmYzZTZlNDFlYiByZWxlYXNlMjQtbWFpbnQKKzQyMDY2IDQwNWFiMGRjOWNiYzM5MTNmODg0OWU5MDMxNTI1MWViYzBmYmRlYTIgbGVnYWN5LXRydW5rCis0MjA2NyA0M2IxNmVlZmYyMjZiMmVlZGNjZDQzNTAyOTJjNmRmZTFhYzgyMWE2IHJlbGVhc2UyNC1tYWludAorNDIwNjggMmFmYmFhZTZiODhlMGJhY2QyZjAyN2RmOTA3NGFmM2MzZTBjZjRkNCBsZWdhY3ktdHJ1bmsKKzQyMDY5IDJjODYzMGI2YmMzNTk5NThiMmEwN2U2NTdmM2M4YzU0NjQ1MDBkMWUgbGVnYWN5LXRydW5rCis0MjA3MCAwMjk0ZTY2NjI3NDlhZDRjNTNlZWFhOWZmN2ZhMDRkNGRkYTI2OTJjIHJlbGVhc2UyNC1tYWludAorNDIwNzIgYmVjZWI4ZTY2YjBiYTA0YWQwZDMwOWMxNGJkNjg5NzYzZTM0ZWVlNiBsZWdhY3ktdHJ1bmsKKzQyMDczIDJmN2I1NDAyMmIzYjFlZTNjNmNkNDNkN2E4YTUzYTA1NDkyNjAwYWUgbGVnYWN5LXRydW5rCis0MjA3NCA0ZGJhNjFlNDkwMzdmZWJjOTA4Njc1NWViNjRmMmQ1NzlkNjAyZTNkIGxlZ2FjeS10cnVuaworNDIwNzUgMjBmMjFkYzczOTZmMjNkZTljN2YwYjEwOTI3Y2I3NzYzYTc2NzYzOSByZWxlYXNlMjMtbWFpbnQKKzQyMDc2IDM3MDljZTM3ZmUxYzRmMWVkNmExZGFjNTNmNjUxNzI4ZjNmNGM5OGUgbGVnYWN5LXRydW5rCis0MjA3NyA2NWZlOWFjZWQwMDJiYzhhNTBjNjkxZGQ4Zjk5YmE2NDU4NmFkMGM3IHJlbGVhc2UyNC1tYWludAorNDIwNzggYmMxODNiNWY4YmMxOWRlZmU3MWZlM2E4NGFhOTVkNDhjNWI1Y2NiNyByZWxlYXNlMjMtbWFpbnQKKzQyMDc5IGUzNjQ4YmE5MThlZTQwMDgwNWVjZDNmNDZkNjM5MjllMzQxOTRmNjUgbGVnYWN5LXRydW5rCis0MjA4MCAyYWU0MTZhYWNiODg3NzU3ZGQ5NGU5NTc3MzZhZjYyMDhlNjRmNzg0IGxlZ2FjeS10cnVuaworNDIwODEgN2JiNjRhY2VhZGQ3YzhjNjkzY2YzYjE5NDkyOWFiMjVjNWZlYjQyYSByZWxlYXNlMjQtbWFpbnQKKzQyMDgyIGM0YzkzYmRlMTg1YzdmZjQ0NTFiMDI4MTA4MmU4ZDBiMTBiYzQ1MmUgcmVsZWFzZTI0LW1haW50Cis0MjA4MyAxZWY1MDYzYTBjNmQ5NTRlZjNmZWMyOGVmMWQ1N2FmZWNiZGQ3NmUyIGxlZ2FjeS10cnVuaworNDIwODQgZjYyZDdkMmM1MGRlZWQzNGY4YjZlNDMwNTVkNGYxNTExYWUwNDUwOCByZWxlYXNlMjQtbWFpbnQKKzQyMDg1IDQ5NjZhMzYxZjkzNjQyNDY1ZmJkN2RhMmNlNThiMWZiZWJiMmJmMWYgc3NpemVfdAorNDIwODkgODViNWEyY2RiYWMxMDdiZmYxNzQwNWY0NzI4ZjgyMmEzNmM4OGY0NSBsZWdhY3ktdHJ1bmsKKzQyMDkwIGFlMDdiMGU3ZDcwYTg5YTA3N2MwNDUwMDM5NTZhYWQ3NDI4YTZhY2MgbGVnYWN5LXRydW5rCis0MjA5MSBjNTgzMjE0ZDRjNTEwOTRjOGE0NmQ5N2Q5YzFjODQxNWMyNWVkMzRjIGxlZ2FjeS10cnVuaworNDIwOTIgZDc5ZjA0MzI4NGJkNTA2ZmNhOGYwYzNjN2ZlNjQ5YWZiYjM3ZTEwMSBsZWdhY3ktdHJ1bmsKKzQyMDkzIDFhZjdmNzE5ZWQyOGYyNzc3NWIxYWFjOTlhODU4ZDAxOGFhYjIyNzkgbGVnYWN5LXRydW5rCis0MjA5NCAzZWYxMzgwZmQ4M2MyZWI1Nzc5MmZhMGRkYzFmMTFjY2EyYjlmYTIyIGxlZ2FjeS10cnVuaworNDIwOTUgMmUxNTFiYzgyMGY3MTg0MDk4ZTFhN2ZmOTczOTRhY2NkZDcyZmY0YiBsZWdhY3ktdHJ1bmsKKzQyMDk2IDIxMmJjMjM2MzJhYjVkNDc0OTNjZDE1ZmRhMzEyYTliOWYzMWViYTYgbGVnYWN5LXRydW5rCis0MjA5NyAyZDNhMWMzYzkzMDU2OTEzYjJiYzYwZmYzNWIyMjJjZTg4ZGFiMGY4IGxlZ2FjeS10cnVuaworNDIwOTggNjg3NGYyNjkzZWI4YTBlZWY5ZDY4Y2VjZWJlMTM4YTk5MTZjZDk1NiBsZWdhY3ktdHJ1bmsKKzQyMDk5IGE1MzAxNzYxODU4NjVlZjllYmIwNDIyOWYxZjEyYzYxMDBmNjdkZDIgcmVsZWFzZTI0LW1haW50Cis0MjEwMCBiNTg3NjEwZTIwNjlhNGQ5YzRiNjc5YWU5NGViNGNlNzU0MWMxNzMxIGxlZ2FjeS10cnVuaworNDIxMDEgMWQ3NjQ2MzhhYmRkODAzMTc2YTA1YzEzMjM3YjU0YWNhZTVhYTMyOSByZWxlYXNlMjQtbWFpbnQKKzQyMTAyIGVhNmE0NmQ4YzUxZWMwYWJjOTRmMmJmZTRmYTJjNTQyY2JkN2ZhMDIgbGVnYWN5LXRydW5rCis0MjEwMyA5OGZhYWMxZGY1YmJlZGY1ZWIwZmY1ZjI3MDQxNTQxOTQ2OTg1NGQ0IHJlbGVhc2UyNC1tYWludAorNDIxMDQgMDcwYmI0MjFhMzAzYmNlMjAwMjczNDE5YjBmMTJhODI0ZGFiOWI1YSBsZWdhY3ktdHJ1bmsKKzQyMTA1IDkyOGRlNGEzYmU2ZjU0OWExMGI4MDRjNjgzOWM2ODk1YjAyMWM1OGEgcmVsZWFzZTI0LW1haW50Cis0MjEwNiA1ZThhZjI0MjM1NzUwNjM0MWI3MjIzZDg5NmVkM2Y5NGU0NmE2YTc0IGxlZ2FjeS10cnVuaworNDIxMDcgZmRhOTEyZmU4YjlhZGM0MDc4YjE2ZDJhN2ZiNmJhZTczODU2ODQyOSByZWxlYXNlMjQtbWFpbnQKKzQyMTA4IDc2YWJhM2ZhNGUyZjgxN2I1ZTUzMWYzMzk3ZGQ4ZGQxNTAxMTM5YWUgbGVnYWN5LXRydW5rCis0MjEwOSAxN2YwOTk0NzllNmI3M2RjZWU1ZDY3MjU2MGM3ZTcyYjk4NzgyODUxIHJlbGVhc2UyNC1tYWludAorNDIxMTAgNGJjZjVmZTU0ZDgzNDBhYWQ3NGNlM2IyNWNjNjAzZGIyYzQyYjlkOSBsZWdhY3ktdHJ1bmsKKzQyMTExIDllYWUzMmJkZjgwMWI2NzAxYmM3YjlmOGU5ZDhkMjMwMzUwOTlmY2MgcmVsZWFzZTI0LW1haW50Cis0MjExMiBhYTdhYzkwODdhMWMzMDYzMmFiZmQ3OTUwMjA4NjQ3NTAxYWI2NzFlIGxlZ2FjeS10cnVuaworNDIxMTMgYzJiMTQ5NzMxMGQxMDE1OWJjM2M1MzQ4NWVhNzBhOTRjYTFlMTM1MyByZWxlYXNlMjQtbWFpbnQKKzQyMTE0IGFlZDMyY2UzNWI4MmRmZmFkN2U1YjI5Y2E2YmIyZTEzM2E4MDZkY2MgbGVnYWN5LXRydW5rCis0MjExNSBkNDhmNGE0YTMwNmY1OTNlZjBhMTE0ZGMxNWMzNjBlMTcwMDVlNTEzIGxlZ2FjeS10cnVuaworNDIxMTYgNTgyNTFjOTkwNGUxODkyNzA0NDZlNjMzNWVhMzBiMjU1ZGE3YTc5NCByZWxlYXNlMjQtbWFpbnQKKzQyMTE3IGViNGE0N2I4MTk0MjRjY2YzNjk4MTFjZDZiMzIyYWE4MGE2YjdkNTAgbGVnYWN5LXRydW5rCis0MjExOCBiMGE5YThkMTRhYjIyMjQ0YzBhYjA0YTNjNTMwOGVhMmJiMGZmODEzIGxlZ2FjeS10cnVuaworNDIxMTkgMzE1ZjQ0MDdhYjEyZDU3N2UwMDdlOGE3YzczYzZhNzBiYjgyNGE1NiBsZWdhY3ktdHJ1bmsKKzQyMTIwIGY4ZmNjYWU2YTBmNWRjODI4N2YwNmVhNzc2NTJhYzRlMGIyZGJiYjUgbGVnYWN5LXRydW5rCis0MjEyMSA2ZTEyNzA3MzcxYTEzMGVlZDQyZGIxMjAyMDBlOGU2ZjZlNjEyODVkIGxlZ2FjeS10cnVuaworNDIxMjIgMThhMmQ3NWEzYzY5NjQ0ZjcxM2MyNTU5YmMzZTk5NTg3ZjViMTFiZSByZWxlYXNlMjQtbWFpbnQKKzQyMTIzIDNhOTJlNTY1NDc0ODVhZDg4ZGZkNmI4ZGNiMWU0YWM3NWE5MDRhYTMgcmVsZWFzZTI0LW1haW50Cis0MjEyNCBiYTE2MDQ2NGE4YzZjMTljYTEzMzk4ZGNmZTZjZTljNzhiMDVjMGZjIHJlbGVhc2UyNC1tYWludAorNDIxMjUgMDRhOTZjYzg4NTgzZWMzYzIxZjkwZjNhZjRjN2QxZDMwZmIzMWUxNyBsZWdhY3ktdHJ1bmsKKzQyMTI2IDI0NDU2MzM4MDI2YzA0ZjJkNWRmODIwM2FjZWQ1MjQ1ODllOWYyZDcgcmVsZWFzZTI0LW1haW50Cis0MjEyNyAxZThmNDY3M2U0NDc0NzNiYWM0YzRlMTQxZDlmNjY4MjZjZDY3YWI0IGxlZ2FjeS10cnVuaworNDIxMjggYjA1YzRjYTg1OTQzNGRiNzYxZmYzY2Y1MDEwYzlkN2VlODk3MmQwZSByZWxlYXNlMjQtbWFpbnQKKzQyMTI5IDQ3NDZmYWIzNDAxMjQ0ZmZiZjRiZjhjYzZjYmIzNzRmZDQ2MDk1YWIgbGVnYWN5LXRydW5rCis0MjEzMCBhYzAyZjY1NWIzMWUzODA4ZTJmYWE3N2I5ZmVkYzUyYmRhYTc3MjE4IHJlbGVhc2UyNC1tYWludAorNDIxMzEgY2E2YzgwMGFkNWEwMmMxMTliYjBjM2EzOWRkNzBhZWY2Y2ExM2I2NSBsZWdhY3ktdHJ1bmsKKzQyMTMyIDZmY2I1NDA1MDc0ZTdhNWU1ODQ5ZGJmNGEwZjM3ZjdlNzYzNzIzMmIgbGVnYWN5LXRydW5rCis0MjEzMyA5Nzg4NWFkZjczYjU0NzFhYzdkYTNhNDMyZjNkZjgxZDAyY2NmN2FhIGxlZ2FjeS10cnVuaworNDIxMzQgNzg3MDJhNTAyOGE0MWY4NWFiODBmNGVjNzBjMWQ1ZjgxYTUwMmQ0MCBsZWdhY3ktdHJ1bmsKKzQyMTM2IDlmN2NlMjg0NmMzMDk1OWM1NDVkOTExNDZmODE3NDk1NTNhOTMzZDggbGVnYWN5LXRydW5rCis0MjEzNyA2MWI4ZTNlM2Q2NDE4M2FjYzI4MDY0NGViNjQ5OTFjNjRiZDRiOWM0IGxlZ2FjeS10cnVuaworNDIxMzggMjgwNjUwNzkyZWY3MmI3Y2VlOGI5Mzg5ODNiMWFmMDc0YWUwM2I4NCByZWxlYXNlMjQtbWFpbnQKKzQyMTM5IGY5NDk5MWQ1ZGQyMDY5Y2JkYWJmZjlkNDg1OWFmMDVkYjQzNDQ2ZmMgcmVsZWFzZTI0LW1haW50Cis0MjE0MCBmZGYxYmU5Y2ZlZGYyYjMwMTk2MDMyZDkzMzNmOWE1NzRmMzM2OTczIGxlZ2FjeS10cnVuaworNDIxNDEgMDBlZTIxNzE1MzdmNzVkZTdhNzA5NThmYjc5ODU0N2U0ZDk0NTM2NiByZWxlYXNlMjQtbWFpbnQKKzQyMTQyIGYwMTU0M2UxNWY4NWE0OTkxZTMyMDExZDFhMmI1YTEzZTQxYzE2NWUgbGVnYWN5LXRydW5rCis0MjE0MyA0MzE1YzUzZjUxYmNhNjA0MjlkYTU2ZGIzZTViMzE2MzdkMDY0YTQ5IHJlbGVhc2UyNC1tYWludAorNDIxNDQgNGQyYTA5YTY0ODVkM2U5Yzk4Y2I5YTFhNmY2NTk3NWYxMzEyODJkMyBsZWdhY3ktdHJ1bmsKKzQyMTQ1IDNiNjNiYzkwNGQ5MmU3YjViNTI1MDQzZTA2NjE5MmQ3MGRkOTAwNTAgcmVsZWFzZTI0LW1haW50Cis0MjE0NiA0ZjExYjIzZTM2MWY0NTRkOWU5YTllYjc3YTk0ZTRhNjY0OTg0OGZiIGxlZ2FjeS10cnVuaworNDIxNDcgNDQ2Y2I1ZmMzZDI4MGJmN2ZjNDZmMmQ2ZGFkMmM4MTI2MDI5ODVjOCByZWxlYXNlMjQtbWFpbnQKKzQyMTQ5IGExN2I3MzgyNmY5NzgzYTgwMTY4ZTU0NzhlN2IzNGM0NDUwZDg3ZjIgbGVnYWN5LXRydW5rCis0MjE1MCBjODNjMDIyYTM0OTFlYjE2ZmUxYWZmNWE3OGU0MWVjZTY5NzMzZGMwIHJlbGVhc2UyNC1tYWludAorNDIxNTEgODE0MGYwMDBlOWQ0NTllZjM0ZjMyOWQzNWI1OWYwY2MyYzBjZWMxYSBsZWdhY3ktdHJ1bmsKKzQyMTUyIDYwNGZlODdhZDQ3YzdjMGMxOTI0ZWIzOWY5ZGFhN2NhODU4MmUwZTcgbGVnYWN5LXRydW5rCis0MjE1MyA5OWQ0OTFmYWE2NWMyYjlkZjdlMTQ4ODA5NzFhNmQxMTA2NTJiY2YxIGxlZ2FjeS10cnVuaworNDIxNTQgN2IzZDkxNWI2ZTlkMDAxMjNlOGZjN2U1Y2Y4YWQ0NzJhMjY0ZmI2YSBsZWdhY3ktdHJ1bmsKKzQyMTU1IDRmOTBjN2MwNTM2NGY0MjRiNjNkNjJkNGQxMmIxM2ZjZDI3MTY4MmMgbGVnYWN5LXRydW5rCis0MjE1OCA4MzhiNWY1OTI0ZWUxNzE0MTQ2N2U5MTg4MTVhM2Q1M2UwZGUzODEzIGxlZ2FjeS10cnVuaworNDIxNTkgM2I0YjQ0NTRmZTg2NjRiYzRiZWFmMTVjYzhlMWMxOTczZTgzMDYzYiBsZWdhY3ktdHJ1bmsKKzQyMTYwIDVlZTQ2YmJlZDFmOWZlMDQ2OWUxNmUyZGQ0NDNmNGNkNjVlNjE5MDggbGVnYWN5LXRydW5rCis0MjE2MSA1YzQ4N2NiNjMyOTUwNzhkYjNmMzM5ZWFlM2M2NzBlNmI2ZDgyN2E2IGxlZ2FjeS10cnVuaworNDIxNjIgN2YwNTk3NGM4YjgwMzE3ZjI4NzA2OTIxOGUyMDAwZTEwYTdjNTBjOSBsZWdhY3ktdHJ1bmsKKzQyMTYzIDAwMDZhZTEwYjdmMGM5MmM5MWEzZTA5MDI3NGMyYThmYTQwMjUwMzkgcmVsZWFzZTI0LW1haW50Cis0MjE2NCA3OGJkNzhhMWNlNzRiNDYxZjI1OGI1NmI1NTRiNWZiZmUwN2NiNzE2IGxlZ2FjeS10cnVuaworNDIxNjUgMjAxMmM1NDhjZTY5OGNiZjQwYmI5ZTQ1YzZhODM4MTBhZDBhNzE5YyByZWxlYXNlMjQtbWFpbnQKKzQyMTY2IDMxMTRlYjA2MGQwYWVkMmVhNzg2NWUyZjNiNDJkMThlYTk5OGZlNjMgbGVnYWN5LXRydW5rCis0MjE2NyA3NGE1OTg5NjRjOTYyOGQwYTQ3ZjljZGRlNGE4ZTQ0MmI2NTJhODE2IGxlZ2FjeS10cnVuaworNDIxNjggYTI5Y2MyM2JiODljNGM1Zjc3YmVlMjBjMzA5NGI5ODc1NmVjZTM4ZiByZWxlYXNlMjQtbWFpbnQKKzQyMTY5IDAzNzJlMjVlNDMwZWNjNTcyZjJmOGE5MmY2OWU4MWI4NWE0MjI4NWMgbGVnYWN5LXRydW5rCis0MjE3MCBhNTBmNTYzNWE0OTQ5Yzk1NmZlN2NmYjBhYjEyZjc4NmI0MmMwMjNhIHJlbGVhc2UyNC1tYWludAorNDIxNzEgZDY4ZjczZjk2ZjMxZjcyZTM0NDM5YzVmYmY0ZjhiOTU5NzZmZmQ0NiBsZWdhY3ktdHJ1bmsKKzQyMTcyIDZhYjgyYzQ3MDYzMzhmMWU0NjViMmI1YTFiYjk4MGYyZmI1NDU0NjQgbGVnYWN5LXRydW5rCis0MjE3MyAwNTVmY2RjNjUyZGQ0MzU2Y2ZhOGM0ODUwZmM3NmIwYzRkMDI5MmUzIGxlZ2FjeS10cnVuaworNDIxNzQgMWI5ZWI5NjMyYzg5YjhhMDk0YjMxYmEwNzE5ZGFiNGNjNDIwN2YxMiBsZWdhY3ktdHJ1bmsKKzQyMTc1IGJmYjI0N2Q3YmMzZjcyNTJmMzM5OTE4OTFmNDNkNGM4NjVjOTk3OWEgbGVnYWN5LXRydW5rCis0MjE3NiBkNTczNGRjMDdkNGFiZDk5NWUxZTk1ZGZiYzQ1MWE3MGFkNmY0MDU3IGxlZ2FjeS10cnVuaworNDIxNzcgNTEyMzQ1MzY5MGU1MWExODg4NmZlYTFlZDUxNDQ4MzNlZDNhZDdiNCBsZWdhY3ktdHJ1bmsKKzQyMTc4IGQ2MmRhMzZhYWUxNTUxMjVhY2ZhYzNhYzk1YTlkNzc3ZmY2MmVhZjkgcmVsZWFzZTI0LW1haW50Cis0MjE3OSBlN2YxOWVkMWVhMmRjMGNhMWJjMjAwMDlkNDNmYzdkN2NiMmJjMTM4IGxlZ2FjeS10cnVuaworNDIxODAgYzAxZDIyNzJlNmMzYTZmYjQ5NzRmOGU1ZTJlNDhiNGJmODNiMGI3MCByZWxlYXNlMjQtbWFpbnQKKzQyMTgxIDNkZjYzNDYxYjExNmQzNzlkN2VlODYzN2MwYzM3MjczZTEyMjEzOTYgbGVnYWN5LXRydW5rCis0MjE4MiBlMDI4OWZiYTZmZjFlYTkzOTFiNmNhMzc0ZmI2MDBjZmQ0NjM5YjRkIHJlbGVhc2UyNC1tYWludAorNDIxODMgMDQwZDdmYjRlYjU2ODQ3YWRkZTEwZDhiZjNiNmEzYmE2NmQ5ZDM2YiByZWxlYXNlMjQtbWFpbnQKKzQyMTg0IGU5NzgxOGJjMjkxOTQ0YWY2ZDA5ZTFkNjdiMmIwNGQ3YjdiOGIzYzUgcmVsZWFzZTI0LW1haW50Cis0MjE4NSAxMzU5NjA1ZjM3MTNmYjU5MjM5ZWZmYzBmYTI1MzdiMWQxOTI3NTczIGxlZ2FjeS10cnVuaworNDIxODcgYWY2ODRkNzNmM2E2NzNkZjk3MzFhNzMxMGViMDZmZWNhOGM4OWFjYSByZWxlYXNlMjQtbWFpbnQKKzQyMTg4IGMzYjY3MjhkODg2Yjg3N2NiZDQxZmE0MGRjMmZlNjhmMmY2YTM0MjggcmVsZWFzZTI0LW1haW50Cis0MjE4OSBjZGU2ZWEwOTFhYWFmY2U0NWUzMTUyYjk0YzliYTUzYWVhNTI4ZDk2IGxlZ2FjeS10cnVuaworNDIxOTIgMDYwMjg4N2RhZGY1ZjU3NDFmMzU1NDc2ZDZiMDE4MTkwMWQ1NjZkZSBsZWdhY3ktdHJ1bmsKKzQyMTkzIGYwYWRhNmYwZjY3ODk5MjkzYTljNDIxOTc0MTEyNGU0MDkyYTExYzcgbGVnYWN5LXRydW5rCis0MjE5NCBhNjI1ZTg4NzY0MDcwMzgxOGUyM2YzMDM2MGZlNTQ2N2UzYjgzMDczIGxlZ2FjeS10cnVuaworNDIxOTcgOTUwZTNlMzg0M2JiZjAwNDc3YzMxZTJlNDQ5NmIwZjYwMmJkZjUzYiBsZWdhY3ktdHJ1bmsKKzQyMTk4IDAwMDRhOWQwNGQwMzY2NTcxNDZhMmUyMWY0ZjVhYjM4ZDY5NDQxZTEgcmVsZWFzZTI0LW1haW50Cis0MjE5OSAyMjg5OTUwMjExN2ZlNjg5MWY2OTIxYzdhYzEwOTA5ODg2MWFhNDIyIGxlZ2FjeS10cnVuaworNDIyMDAgZmMxMmNjYTczYzM1ZDBiY2QxNmZiZDgwYzk0YzcxYjQxZDdiNjhhZCBsZWdhY3ktdHJ1bmsKKzQyMjAxIDI5YmZiYjU4OGQ5M2Y4ODc3MTdhYjYxZTExM2UxMGZlZTcyM2QwNGIgbGVnYWN5LXRydW5rCis0MjIwMiAyM2ZlNDdlOTMzN2Q4ZjljNjg0MTJhMWE2NWY0ZjUyZDNiMjcwOWYyIGxlZ2FjeS10cnVuaworNDIyMDMgYmZhMjI3MjY3ZjQ4MTRlODJlOWZiYWNlYTlhMzIxZTZhMTFhZmM5NCBsZWdhY3ktdHJ1bmsKKzQyMjA0IDBmMmQ4MjAwM2EwZmI3NGQ0ZDJhZTQ5YjcxYjM1N2JlZjI5OTU3ZTggbGVnYWN5LXRydW5rCis0MjIwNSAyODBkNjAxOWNmNDI2YzBhMDM2NjEyOGNkYTc2YjM0YTg3MTI5YmY1IGxlZ2FjeS10cnVuaworNDIyMDYgMzhhOTRlNThhNjk1NmM2YWE5NzA4YzhlZjdlMjgzYzA1MzExNTA3NiBsZWdhY3ktdHJ1bmsKKzQyMjEyIDE2YmZlOTM4NjA2OGNmYmUxOGEzNWVlOWMyOTkyZTYxY2ViOWI2ZjggbGVnYWN5LXRydW5rCis0MjIyMSA4MTk0MmZjOWEyMGQxNjY5ZTg3MjY5ZmE2YTZiZjI2ODE5NGRmOTU0IGxlZ2FjeS10cnVuaworNDIyMjYgZDY4MGZhNTI1NTEyMjZjNDBmMjU0YzliNGY2YjEyODhmNzUxYzYwMCBsZWdhY3ktdHJ1bmsKKzQyMjI3IDZhOGQ1ZTA1NGU5NzFkM2RiNGRmMGE5Y2NjMmY5ZGJhOWM5ZDc0NzMgcmVsZWFzZTIzLW1haW50Cis0MjIyOCBmMjM2NjEwOGJjYjI4MWM2ZDZjZjZiOWViMzQzZjkzZjczM2MzZmMwIGxlZ2FjeS10cnVuaworNDIyMjkgYmQ0NGM3YzA5NzdmNTc2NzI5MTY1ZjdhNTQwZjEwNGUyMWRiZDcxMiByZWxlYXNlMjQtbWFpbnQKKzQyMjMwIDI2ZTBmNjhkZTg2ZTZiYWIxMDAwOGEzMzM0ZTVmZjZkYjE3Yzg4ZTggbGVnYWN5LXRydW5rCis0MjIzMiA2NTVmYTIyNjA2Nzk4NDYzZjNmZjE1M2EwYWQ5YzdjNzk3MTNkODgwIGxlZ2FjeS10cnVuaworNDIyMzMgZTY2MjI4NTgwZWEyNjQ4NDhhOGNmYTM0NDdkMzY4ZTAyYjQyMjc5YiByZWxlYXNlMjQtbWFpbnQKKzQyMjM1IDk0ZDI3ZTAxODMzZGE0NzliZGY4ZWY1OGI2ZTIxN2QxN2UzYmM5ZDQgbGVnYWN5LXRydW5rCis0MjIzNiBjYjBkYmFlNzJhOGU3NjFiMTk4OTRjOTI5YjE3MTgwYzhmNjhiMWQyIHJlbGVhc2UyNC1tYWludAorNDIyMzcgNWUyYWNmNzQ0MWJkNjliY2ZjZGU1YmIxZTRiMzcyMDU3YjAxYjY2YSBsZWdhY3ktdHJ1bmsKKzQyMjM4IGRjMzI0NjMwMTVmMWJjZDg0MjZlYTBhMzJiNDU4YWRlNWJkMDdjMDYgbGVnYWN5LXRydW5rCis0MjIzOSA4ZTIzYTdjY2Y2MTVkMTk0YmM0Y2IzM2I2MGEzZDMyNmRkOTdiMGJkIHJlbGVhc2UyNC1tYWludAorNDIyNDAgOWE0ZmY2ZDZlNzI0NjQxM2M4N2ExZTVlYmIxNzliZWFjYTYyNjYzMCByZWxlYXNlMjMtbWFpbnQKKzQyMjQxIGEwN2ZiMmVmNTJhZTc1OTljNmFmNDNjODYyNTliZjYxNzEyNmViYWQgYXN0LW9iamVjdHMKKzQyMjQyIGQxZWYyM2ExNjc2MGMyMzEzNGI4OWQ1NmExM2Q0YTQyNmQ4NTRjYWQgbGVnYWN5LXRydW5rCis0MjI0MyBhMzA0NmQ0M2ViNTJmMmYxY2FmYzhiOTllNTZiNDhjNmU0NTVjZTNiIGxlZ2FjeS10cnVuaworNDIyNDQgMDJmMDc0NGE5Y2QwMmRkODAxMzY4MDQ1Mjg2YzVhZjMyYmI3ZjkwMyBsZWdhY3ktdHJ1bmsKKzQyMjQ1IDNlZGIxYmNkNDM0ZDRkYTFiOWNiMzljYjJmMWZhN2YyMjViZjIwNTkgcmVsZWFzZTI0LW1haW50Cis0MjI0NiAzODhhNTgzZTdhNjM0NGQ1ZTBkZTVhMDllMjNjM2M2Y2VhNDJiOTE5IGxlZ2FjeS10cnVuaworNDIyNTAgNGVkMzBlYWEwMjU2MTI1YTQyMTBjMGIyNTNhMGI1MmMxYTNjMmQ4OSBsZWdhY3ktdHJ1bmsKKzQyMjUxIGMxOTMyODNlNjNiY2I3NjEyNTNhZDlhODgzNWFlMjFmZTc0NzU2ZWQgbGVnYWN5LXRydW5rCis0MjI1MiA4NDA0YzllZmRjMzVlYmZmNzAxNWQ1NTJlNjhjN2VlZWY3N2M1ZDQxIGxlZ2FjeS10cnVuaworNDIyNTMgNzc4OWNjNTU3ZTFlZmE1NGMwOGVhOWQzNmEzMGJkMTY4YjQ4NTE2MyBsZWdhY3ktdHJ1bmsKKzQyMjU0IGFmNjdiNjI2NWFmNmFlMGJkZmQ1YWVmYzM2OWQ2ZWFlODI1MTk0NTkgcmVsZWFzZTI0LW1haW50Cis0MjI1NSAwMDJmOWI4ZmVjMjFlNzBiNmVmZDUwMTBhNWM5ZDJmNDg4OTY5MjViIGxlZ2FjeS10cnVuaworNDIyNTcgMGEyYTRmMTQxMTBiOTRhODQxZGNlZGMxYTBhYTlkZjRmZjBhZTNiNyBsZWdhY3ktdHJ1bmsKKzQyMjU4IDUxZjc2MDI4ODEwNDUyOWFhN2QwNDVmODVmNjk1ZGVjZDM1YjFmZDEgbGVnYWN5LXRydW5rCis0MjI2MSBmMzhiNjM1MjYzZDNhMWZmZjZhZWQ0ZDcwNDFkNzk3YjFhODE2NGI1IGxlZ2FjeS10cnVuaworNDIyNjggY2Q0NDU5ZDA4ZWUyMzY4ZTZjZThkMGUyYjc2YmIyMDI2MDI5NGQzZiBsZWdhY3ktdHJ1bmsKKzQyMjY5IDNhYmYzMzI2NDE0NjMzNjFkOGY5YjhlZjBhMmNjNWE5YWM3MWYyZDcgbGVnYWN5LXRydW5rCis0MjI3MCBlYTU0ZWFmOTIwMTYwMzE4ODVkYmNmYjU3YTFlYTFjMTJlMzNlYzllIHJlbGVhc2UyMy1tYWludAorNDIyNzEgZDU5NjE5YTM3MWMyMTc5YzMyMGZlN2Q2ZDYwNTU3YmFiZGFjMmI0NiBsZWdhY3ktdHJ1bmsKKzQyMjcyIGZkYWNmNzJkNDk3NjMwMmM5MmI0NTUxOWRhNDU5NDU2YmEwMjNjOTcgcmVsZWFzZTI0LW1haW50Cis0MjI3MyA1NTI0NjRkODFlMWIyMTY5NjFlYTJhNzZhZWU1ODE1YjkyYTViZDRjIGxlZ2FjeS10cnVuaworNDIyNzkgODQxNmZiMzIwNDAzOTE5YTZkZDA2NmYwMjg2ZDk1YmU4YzJhYjVkZiByZWxlYXNlMjMtbWFpbnQKKzQyMjgwIDM5N2Y2MzlmN2U2YjhhZmQwYjgzMjA2YTBjOGZkOWQxODAzNjMxYmIgcmVsZWFzZTI0LW1haW50Cis0MjI4NCA0YzJkNmViOGQ1ZTljM2M2MjdlYWE4ZjliZTVhZjM5NDc0YzY2Y2Q1IGxlZ2FjeS10cnVuaworNDIyOTAgODlmMWRhMTM0MmNhNDdkZjhhYmJkYTMwMDk0NzM1NWRhMTlmN2VlZCBsZWdhY3ktdHJ1bmsKKzQyMjkxIDNjZjhhOWVkNDQ2YjNlNGIxMDU5MTE1OTRkMTMxMjViMjVmZjNmYzIgbGVnYWN5LXRydW5rCis0MjI5MiA5M2VmYTU5YjMyOTdjZmZhYzdmOTA2ZWU5YTkzOTEzNzdlYzUwZDE1IGxlZ2FjeS10cnVuaworNDIyOTMgMDVlMzE0ZWUyNmY3NzA4ODVkZDc3OTY2NzM4NjllNjY5MDNmOTA2OCBsZWdhY3ktdHJ1bmsKKzQyMzAzIDE2NTM4OWIxNGQ2YmE3MTliY2MxNTE5ZmU0MTc0ZjUwZjUwM2M0ZDYgbGVnYWN5LXRydW5rCis0MjMwNCA4MWY0NGQxMmJlZjdhMThlMzhmNjZlNTkxNGQwMzM1ZjhjYjkzN2FhIGxlZ2FjeS10cnVuaworNDIzMDcgN2IxOWE1MzNjZTliYWQ5NWRmODU3YjNjYTRhZGQ4YWNlNzljMGRiZiBsZWdhY3ktdHJ1bmsKKzQyMzExIDBjNWFlODkyNDEwNGVlNjQxN2RiMGQ0NWMwNWI3NTE4ZmRhZThiZjggbGVnYWN5LXRydW5rCis0MjMxMyAxYzNiMTVkZjY3YTI5MzlmZjMwMWRiOGRmMGM3ZTZhYTE3NjczZDQyIGxlZ2FjeS10cnVuaworNDIzMTQgYzA3M2RmZmJlNzBlYzk1YzIzYmI0MGU0MGUwOGIwYTk5OWM0M2EzYyBsZWdhY3ktdHJ1bmsKKzQyMzE4IGQyMTg3NWQzNTkyYjY0OTc0YjI2YjBhMDAxZWMxNDNmNGM3ZTMxYzggbGVnYWN5LXRydW5rCis0MjMxOSBlMmQ0NjA4ZjVjMWQ2ZDBmOGY0NTVlZjg0N2E4ZWUwYTc3OTI1OTk5IHJlbGVhc2UyNC1tYWludAorNDIzMjAgZDQ5NmMwNzY0YWQ2MTRhN2U1OGRhOTgzYjc3YzRmZGMxZWM4NmVmZCBsZWdhY3ktdHJ1bmsKKzQyMzIxIGFlMWRhNTEyNDM4MjRhOGQ3Y2EzN2VjNzAyNzczZmZhNzhmZGIzYTUgcmVsZWFzZTI0LW1haW50Cis0MjMyMiA2YzZiNDI5YTcwMzBjNjUwMDlkOGZkZjE4ZjdjZTYxZTlkZTAxNGNhIHJlbGVhc2UyNC1tYWludAorNDIzMjMgNTEyOTc4MzFiNWY4OTA5ZWUzNjRmNGI4MmE5N2NhMWZiNjI1YjQ2YSBsZWdhY3ktdHJ1bmsKKzQyMzI1IGI0OGEwNDcyOWNjNDk4YjBiZDNlOGRhMzNmODZhZDUzOGVlMzE4YWIgbGVnYWN5LXRydW5rCis0MjMyNiAyMGY3NWQ1ZTc5ZTk1M2JlNDZmYTE1ZjJiYmNhNDIwOWE2MTI0NmU4IGxlZ2FjeS10cnVuaworNDIzMjggYzAwNzBkNzZjMGRiM2UwNTUzMWUyYTk3OTYyZjZjMDdkMzJhNGFjMiBzc2l6ZV90Cis0MjMzMCAzNmVhZTNmYzM3M2Q1MDEwNTJhZDRmMmYxY2FjMDkzYTJkOTkzODczIHNzaXplX3QKKzQyMzMyIDcxNTMwOTIxY2U5M2IzZTM3ZTViZDRiYTk5ZGQ4NmE3MjU3YTllOTcgc3NpemVfdAorNDIzMzQgMmEzMjMxZmU3MmUyOThhZDlmOTkxM2ZkOTdjZGNmYmE3ZWY1ODMyYiBzc2l6ZV90Cis0MjMzNSA5OWRmZGNjNmQ2MTNkZGU0NGI4OWE4MTQ2YzM5ZTYyY2QwNzkxNjIwIGxlZ2FjeS10cnVuaworNDIzMzggYzQ2ZGUxZTViOWEwMzIwMTgwODVjYWQ2ZjQ2ZDVjMDFmZTc0YmQwMSBzc2l6ZV90Cis0MjMzOSA2NWFlNzMwYjYyMzE0M2E5YjVjZTJhMWJmMTUzOTJjNzdiZTljOGNiIHJlbGVhc2UyNC1tYWludAorNDIzNDIgMDdiYThhYWUzZGM2NzFhODYxOTAxOTIwYmEyZDRlZWVlYzQ2ZTc4YiBsZWdhY3ktdHJ1bmsKKzQyMzQzIGEyYjZkZGFiNjZkNzhhMGI4OTlmYjg3OTQ4N2RjYjdmODYxMjU5OGQgcmVsZWFzZTI0LW1haW50Cis0MjM0NCBlNDcxZjFkZjJkMDMxZjEwNjY4ODI5OTg4YWYxOGE1MmQ0MmMxMDc0IGxlZ2FjeS10cnVuaworNDIzNTQgNzRiMjUzM2I1OWI4YmViNDdkYWIyNzU1NGNhN2MxMmM0ZDZmZTNlNCBsZWdhY3ktdHJ1bmsKKzQyMzU1IGM3YWI0MTdjNTliYzhiMDNkODY2OTViNGMyYjg4N2U3NTFhMDMxMWUgcmVsZWFzZTI0LW1haW50Cis0MjM1NiBhY2Q3MDJlMzA2ZmI0MTRiOWRhZThiNjAxMmJhNmUyNzZmNjk1ZDU0IGxlZ2FjeS10cnVuaworNDIzNTcgNTc0YzI1ZmU2MDI4NDUyMGVkMjUzZTMzNGMyNzU5Zjg5Y2UyM2M5OSBsZWdhY3ktdHJ1bmsKKzQyMzYyIDM0NDc1NDQ5N2NiM2Y1ODhlNjU4NzU4MTI0NTZkYjBhMTkwNWRmN2IgbGVnYWN5LXRydW5rCis0MjM2NSAyMjA0OTdlMDg5Y2U4ZGViNWIwYzk2MzdmMTEzMWU0MDdjMzczNGVlIGxlZ2FjeS10cnVuaworNDIzNjggZGIyZmNhOWVhMjY0MDYyODE4NmUzNjFkMGE1NTMyOGVhMzc2MzMwYSBsZWdhY3ktdHJ1bmsKKzQyMzcxIGMwYzM2YmJkNWUwYzE5NDM3NjhiMGIzOTkzYjZjNTE5NGFjZGUyMTkgcmVsZWFzZTI0LW1haW50Cis0MjM3MiAxN2VjMTdkZDJhYjNkN2ZjNDY2NDEyNGZiNDcxOGQzM2ViMGVmY2JmIGFzdC1vYmplY3RzCis0MjM3NiA5NjY4NWYxMTI3MDk0NDQ0NTJkNDEwNDQzN2Y2ZmQ2OGQ3NGNlMWJjIGxlZ2FjeS10cnVuaworNDIzNzcgMzVkZThiY2NmZDBlZDcyOGI5OWJjNDFhY2ZiNWUyMjI5ZTUwODM0NiBsZWdhY3ktdHJ1bmsKKzQyMzc4IDk4ZjdiNzQzZDkxYjAzNWJlZjI1YTQ5NjZkOTEzMDQ1ZGU1ZDJmNDEgcmVsZWFzZTI0LW1haW50Cis0MjM3OSBjMDM0Y2RkNzk2MGNlYzYxNDRlYTJiZjY1YTQ0ZGVmMGY4MTk4OWJlIGFzdC1vYmplY3RzCis0MjM4MCAzNjI1YzhiMTQzZDljY2NkNTkyOGNmOTBjZmUxYmNhYTcwYWY4ZmI5IHNzaXplX3QKKzQyMzgyIDdmZGM2MzliYzViNGQzYzA5MmNiM2ZkN2Q4N2Y3M2RiM2Q0N2JhMjcgbGVnYWN5LXRydW5rCis0MjM4NCBiOGU3M2MyZDFmMTdiMjc1MGM2NTM3MWYyNzcyNTk5ZDgzNTE3Y2E2IGxlZ2FjeS10cnVuaworNDIzODUgNzk5OGQ4NTY0OWM5ZTAwMGIzN2JjMGQxZjAxNmRmNDY2M2M3NjhmZSBsZWdhY3ktdHJ1bmsKKzQyMzg4IGRhOTNmOWYyZDZlOGE4MWZkZGJkNTNhMGE5NTE2NmZlOWQzYTc5YjYgbGVnYWN5LXRydW5rCis0MjM4OSA1ODI1YzZhY2UyOGI2MGViNTdhNWQ1NDI1NTkzY2VmM2JlMWMwNjJhIGxlZ2FjeS10cnVuaworNDIzOTAgNzc1ZGVmYmE0ZWU3NGI1NjFiZjQzOGRmZDcxZTQyYmMzNDE4Y2RmNyBsZWdhY3ktdHJ1bmsKKzQyMzk0IDc2N2FkYzA5ODQxNjFiZjYzMzA1MjQzNjBhYjMwN2M2YjUyNTE3OWUgbGVnYWN5LXRydW5rCis0MjM5NSA3MzIyZGNjYmEyMjQyOGE0MmFjODk5ZDUwZWQ5NGU4ZDk1ZjI0MTYyIGxlZ2FjeS10cnVuaworNDI0MDAgMTNlOThlMzY5YWJkOWY4NmFlYzc0YmIzNGMzM2MxNWM4NzhhNzM2YiBsZWdhY3ktdHJ1bmsKKzQyNDAxIDBmMzg5NGJiMmFkYWFjOGE5YTVhNTZkYzEwNGNhMDFkZTY5ZmMzZGQgbGVnYWN5LXRydW5rCis0MjQwMyAxNTk2ZmY1Yzc5YjUwMmUxYjNjNGM4ZjJjMzg1MjhiNWVhMmJiYWMzIGxlZ2FjeS10cnVuaworNDI0MDQgMzM1MGY4NWM4ODlmZDgwYmQzZmJlYmE3OGY5NTEyZDAyZDFjNjJlNyByZWxlYXNlMjQtbWFpbnQKKzQyNDA1IDQ0NWMwYWE4MTFjYTcwZGQ5ZDdiODA3ODI2YzQ2YTFjNjI1NGMzZDYgbGVnYWN5LXRydW5rCis0MjQwNiA5MTRmNWIwZGE1NGVlMWY0MDIzMTNlNTkxMTM0MTU4NDkxNDA0OGIyIGxlZ2FjeS10cnVuaworNDI0MDcgN2M5Y2ZkM2I1ZDBmYTZmMWQ0NGU1Y2YzNGMxYzg1OWZmYjllZWE0YyBsZWdhY3ktdHJ1bmsKKzQyNDA5IDdkYzFmZTc3NzEzZjJkMjBjYzk0MTU1ZmI5MTlmOGYwMmFjMTBhNzAgbGVnYWN5LXRydW5rCis0MjQxMCA5MTMzMWE4ODcxOGUwMmJlMjExYjQ5NzM0MTJmY2U4ZmI2OGU3NmI3IGxlZ2FjeS10cnVuaworNDI0MTEgOWYzZjg3ZTkyMGE2ZDFlMTk1NTc3MTkxYTFiNTE5YzliMWQ2OTVlNiBsZWdhY3ktdHJ1bmsKKzQyNDEyIGQ2ZDQxNWRmMGRmMGFhYzJhMWNhN2YzMWI0OTU4Zjk2NDNlMDE4NzEgbGVnYWN5LXRydW5rCis0MjQxMyAyNjQ3MGNkZWVhM2Q2ZmJlY2EwYzMzN2RkNWU3Y2YxNDhjNTczMjk5IGxlZ2FjeS10cnVuaworNDI0MTQgMzBhZWYzY2UyYjI2YzA5MTljYWY3Y2Y2YmJhZmFmYWRiYTU5NDRkNCBsZWdhY3ktdHJ1bmsKKzQyNDE1IDI3OTE2NzZiMzgyNTkwMDc2MzBkOTc3YjE0NDZhOTQ2MmJmMzYwNTcgbGVnYWN5LXRydW5rCis0MjQxNiA2NzJjMzBiZjk1ZTY5YTdkZTE4YzFkNzdiYzViZjNkNTc5MjY2ZDFkIGxlZ2FjeS10cnVuaworNDI0MTcgNGM4NjA2MTkxYzBjZjMyMmU5ZTc4NTE3ODQwMDlkN2YyZTJkNzIyMCBsZWdhY3ktdHJ1bmsKKzQyNDE4IDIyOTdiMjcwZmNmNjhkOTYwZmYyMWNhMDU0OTZlNDMwMDE3MjI0ZDggbGVnYWN5LXRydW5rCis0MjQxOSAwMGY5YzZlMTUwYmEyNTg3YzY4ZjMyZjFjZTg1Njc3MWQ3ZWZiOGZjIGxlZ2FjeS10cnVuaworNDI0MjAgOWRmNjFiOTZhYTQyNjRiZDk0MjU5OTNhYzJiOGU3OGEzNjBlMTlhNyBsZWdhY3ktdHJ1bmsKKzQyNDIxIDc2Y2U4ODBkY2U0OWUxMTEzZGU2ZTMwZjUyNjY3NzFiOTdjZGY4NGIgbGVnYWN5LXRydW5rCis0MjQyMiA0NDJjMGZiM2M0ZWQxMTE4ZDhiMWQyYjVmMGRkY2NlYmFmNTdlMGRhIGxlZ2FjeS10cnVuaworNDI0MjMgOTJhZmY5NzQxN2M0NmExYWFhMDZkNjMwOTJkMWYzYjM2YzZjYzcwMiBsZWdhY3ktdHJ1bmsKKzQyNDI0IDcxZTZmNmI0MTVhNGMyNjMyOTRkMmMyNDA3ZGY4NmZjNDlhOGRmMzggbGVnYWN5LXRydW5rCis0MjQyNSAwYzA5NmJlMjcwMDAzZGFjYWEzZTVjNjg2MTdhMDQyNTFlOTNiNjc1IGxlZ2FjeS10cnVuaworNDI0MjYgZWQwN2MxYTVlMjRjNjI3NjM5YTJlMTAxZWM3Nzg0Yjg5OTVmNGQ2OCBsZWdhY3ktdHJ1bmsKKzQyNDI3IDg2MjQ5M2NlYWU0YjMyMzc4ZDNhMzBjNTI2MGFlM2Y1NmZkY2MwMDUgbGVnYWN5LXRydW5rCis0MjQyOCAyNmNhYzM3MWQ3YjZlZjlhZmI5MWQ2YWE1ODFjYjJlNjc1YmI2ZGY1IGxlZ2FjeS10cnVuaworNDI0MjkgYzA2ZWUwYzkxMjA5NTdhNzcyNjFiYWY5NzdjNzhiMzJhNDU4ZjM1NCBsZWdhY3ktdHJ1bmsKKzQyNDMwIGZkYWJkZjE0ODMzNjIwNWVlNTYyZWQ0MGE1YWI5ZDkzNmEwMTQ5ZGMgbGVnYWN5LXRydW5rCis0MjQzMSAzMTY5MzhiNGY4ZDAwMjgzYzliYTFiYzM2MjY1MzZmMmU0ZjYwYmQ2IGxlZ2FjeS10cnVuaworNDI0MzIgMGQ0ODkxMjg0NDFhZjZiOTc2YzgzOWNlNDE4YTI4OWU1ZWJmNzE5ZSBsZWdhY3ktdHJ1bmsKKzQyNDMzIDdkYjNjYjllODM5ZmFlMzVhZDI4NzJjYzA2Nzg1ZTNlN2Q3YWJiNDUgbGVnYWN5LXRydW5rCis0MjQzNCBmN2YwZDJhNWIyMGI4MjVmMjcwZjZhZGJkMGU4ZWJiMzY4NzRmYzBiIGxlZ2FjeS10cnVuaworNDI0MzUgOTdjODFkYzAzZGRkYmU3NjNmOGNiMDFlMmFiMjg3MWY3MDBjNzY3YyBhc3Qtb2JqZWN0cworNDI0MzYgMDU2ZTViNDYwNmRhNDMzMWE3ZDdmOTZlOWJhMmU5YmIzNjJiMWM4YiByZWxlYXNlMjQtbWFpbnQKKzQyNDM3IDM2MzI1Y2FlZmY5YzY1YjE0YjFjNTQ2OGU2MGQwYjlkNmU4MDRkZTEgbGVnYWN5LXRydW5rCis0MjQzOCAyM2UyM2UxNWU3ZTdjMTQwMWJkYTE3MjI2ODUwYTJjOWY0NjQ0NzllIGxlZ2FjeS10cnVuaworNDI0MzkgMTIzMmU4N2NiODE2MDc5OTRjMzg4ZGRhZGVkNmZlNjEyMDI0ZTRkMSBsZWdhY3ktdHJ1bmsKKzQyNDQwIDViZDAyZGEwMzdiZmMzY2Y2M2IxNjJkZjI5OWNhNmRhOTJkYzNmODkgcmVsZWFzZTI0LW1haW50Cis0MjQ0MSBjOTE4NzkxMmI1OWU5OTE3ZjM0MGQyMWQ3YjMwZDAwMjQzNjUxMzc3IGxlZ2FjeS10cnVuaworNDI0NDIgNjkzZGE4Njc4OTQ2YjY1NjMxOTMxOTdjMjdhMjViMGMyZWMzMTEwMyBsZWdhY3ktdHJ1bmsKKzQyNDQzIGFkM2M0YjJjMTczMDA5NDJjYjVmZGI5MDM4ZmFmZGNlYmNjNDI4MGIgcmVsZWFzZTI0LW1haW50Cis0MjQ0NCBiY2UzZjM1NmNkN2I5ZDFiMjM4YjNmNmU1ZjMzM2E1NjA2YWFmYWVmIGxlZ2FjeS10cnVuaworNDI0NDUgYTlmOWRiOWZhOTc0YWM4MjQ2OGU3MzMwZWU4NDg5Nzk0MmFkMDI1NSBsZWdhY3ktdHJ1bmsKKzQyNDQ2IGM1NjUwZGJmOTM2ZWMwYzExNjFjMjIzMmY0MTkxYWU2MDQ4NTY0NzEgbGVnYWN5LXRydW5rCis0MjQ0NyA1YjM5NjE0ODE3YTNlOWMzNTMyNjM1NGM0MDE4YTk5NjUyZDVmMTIxIHJlbGVhc2UyNC1tYWludAorNDI0NDggYmM0N2YxYTZhY2I5OWU1YmE1NjU3MGE0YWZiNmMzNDU1YzAzNjUyZCBsZWdhY3ktdHJ1bmsKKzQyNDUwIDQ2NjhkZjQ1MDY3MmMyZWZiOTkzMDVjMmM5ZTQwNDhmZDRlNmQwMTIgbGVnYWN5LXRydW5rCis0MjQ1MSAxNTc2ZjliZWI1MDNiYzQ4ZWNkYTlhMjBlY2VjMTNlYTliMGU3MzUwIGxlZ2FjeS10cnVuaworNDI0NTMgNzg3ZmViYWUzMGRiZjNjNmEzZTQ4NGMyOWVmZGIyYjdhN2ZkMDE0NyBsZWdhY3ktdHJ1bmsKKzQyNDU0IGQzNjg1ZjliN2I3MWI5NzU3YWU5MDdlY2I5ZGFkNzk2N2FiNmFhOTAgbGVnYWN5LXRydW5rCis0MjQ1NSAwOTIzMDM1N2Y5Mjc5MTE4Nzc4ZTE0NDA2ZDJiMWQ5OTdhYWY4NjI0IGxlZ2FjeS10cnVuaworNDI0NTYgOWE4Mzk2ZjQ2MGFmZmNiZGI5MjA5NWM2MjU4N2ZmOTdjMzA2OTYxMCBsZWdhY3ktdHJ1bmsKKzQyNDU3IDZiZjc4ZDJiNTNiNDM1ZmNlZmZkYjYxMWU0NTUyNzZmOTM4M2JjY2QgbGVnYWN5LXRydW5rCis0MjQ1OCBhMTIzMjYwMjI2MmNiZmFkMTU1ZDkyYzdlYjYzMjJkZDc0MWE5MWJkIGxlZ2FjeS10cnVuaworNDI0NTkgYjkzODFhNTYyM2UyYmU3NmNhMWI2YTBkNjEyNmQxOWFkNmU2Nzg0ZCBsZWdhY3ktdHJ1bmsKKzQyNDYwIDhkZTU4MjQ2ZmVmOGUwYzRmMTliMGU0OGRkODZlMGYyOGZhMDk3YzggbGVnYWN5LXRydW5rCis0MjQ2MSA5NDE3ODZlNjNhYzhlNmE1Yzc1YWYzYjU2ZDg2MDYyMGRmYjBlM2Q3IGxlZ2FjeS10cnVuaworNDI0NjIgMGVmN2NmNTIyMmIwOGFkN2MxOGMxYjY0OTZmYjhlYjZjNmNmZjZlYiBsZWdhY3ktdHJ1bmsKKzQyNDY0IDlkMjlkYWVjYjlmYWFlOGFmNGI0YWZlMjI0OGI4MmVjNmRiNmIzOWQgbGVnYWN5LXRydW5rCis0MjQ2NSA1Y2UzMmE1YmQyNDBhNzQ5MmMwNjdiOGVjNTU4YzkyOTVlMTg2ZGI0IHJlbGVhc2UyNC1tYWludAorNDI0NjYgMjM4NmMxMDVhODk0MzY0MTMyYzZhNmI4M2E0ZTRiMDY2MjJhMmY1ZiBsZWdhY3ktdHJ1bmsKKzQyNDY3IDNlMWQ4ZDNiNGI2ZWQ4OTMyMjIwZTU1MzU5NmFjOTliM2UyMWQwMDkgcmVsZWFzZTI0LW1haW50Cis0MjQ2OCAxODQ1ODcxMWViZWQ4NmM1YmMyNDhlNDBlNjhlMzMzNTdkMjkyY2RlIGxlZ2FjeS10cnVuaworNDI0NjkgOGI0Y2IyMjViNDk3NTc4ODg5YzIwNjZiMTNkYWEwY2FkZTQxY2I3MCByZWxlYXNlMjQtbWFpbnQKKzQyNDcwIDU5YjUzMmFiMzM3NjkyMzIwYWVkZjUyMTMyMGJmNWYxOTJjMTdmOWUgbGVnYWN5LXRydW5rCis0MjQ3MSA1NzI5YjRiYzliOGQzOTY5YTllNDM2ZTY0YjQ1Y2MwOTk5YmJjNWFlIGxlZ2FjeS10cnVuaworNDI0NzIgYjYwYzUwYjE2MTI2YjVkY2U3MDc2ZWE4MzdiM2EyNGJmODY0ZTBhZiByZWxlYXNlMjQtbWFpbnQKKzQyNDczIDMzYWRjNWRkMmJmMjE5OGI3NmU3YmY0NzI0MDhjYzNmZjNiY2I5ZDMgbGVnYWN5LXRydW5rCis0MjQ3NCA5MjAwNDkxM2I0MTIyMDYzYWI4YmZmNWM2YTI3MGExYjA0ZDZjOTUwIGxlZ2FjeS10cnVuaworNDI0NzUgODFmZmRlZWExZDA2NjAxZmNmNGI5YmY3NDVjODRiMTZhM2U5OWEyZCBsZWdhY3ktdHJ1bmsKKzQyNDc2IDAyYTBlYjFhMmIyMWJiOTQ5YzExYzc4ZjcyZDY0YTBjY2I4YTRkMjQgbGVnYWN5LXRydW5rCis0MjQ3NyA4ZTEzMjM2MjQzZGQzNGNmZWQzOWE2MDQ4MmIyZGJhYjAwYzA2M2FhIGxlZ2FjeS10cnVuaworNDI0NzggZGM2ZGVjMTU2ODY5ODJkNTkzMjViYzQwNDhhZjU2NDg3M2IwNDMyMSByZWxlYXNlMjQtbWFpbnQKKzQyNDc5IGE2NDUwZjk4OGFhNDQ1NzJlOGZjMzhhYzg5ODUwMTUwMDBlMTBhMTEgbGVnYWN5LXRydW5rCis0MjQ4MCAwZjFmYzhlZmI3MGI1ODJhYzEyNGUxNmYwYzRlNmYyOTY0Njc0YmM3IGxlZ2FjeS10cnVuaworNDI0ODEgOTg5YWEyODVlZGI5YmRkZjU3NDE3ZWIwMDVlMjk0MzY3MzZiZWFkMyBsZWdhY3ktdHJ1bmsKKzQyNDgzIDE4ZjI3MmY1MzY5OTEyOGE1YjIwOWY1MDczN2NlYmIyZWFkZmMxNGUgbGVnYWN5LXRydW5rCis0MjQ4NCAyNDc1ZmU5NTc4MmQwMDU2NWVmOTQ4OTJjZGFkYTQ1YTI4OTdmNjVhIGxlZ2FjeS10cnVuaworNDI0ODUgODJiYmQ1ZGUwMmYxYzg4Njk4YjdiNDNkZDU1NDY3NjExYjI3OGVjZCBsZWdhY3ktdHJ1bmsKKzQyNDg3IGM2YmQwMWM3YTU2OGM1MDZjZTA5MzUyMDIzYjQyMzk5MmE5NTI1MzkgbGVnYWN5LXRydW5rCis0MjQ4OCAyMTBjZmU5ZDMwNzc0MTI4NmYxYmZkZjkxMzFiOTMwMTlkMThkOWI2IHJlbGVhc2UyNC1tYWludAorNDI0ODkgMGQ1ZjgwNzdiZDI0MTk1YTA4YmMxNTUzODdhNGU0NDM0MGMzMTZlMSBsZWdhY3ktdHJ1bmsKKzQyNDkwIGExYjMwZmNkOWUyOGViODQ1ZjFjYTM0YjZlZDFhZmZlNjg1OWM0YTUgcmVsZWFzZTI0LW1haW50Cis0MjQ5MSAwNWVlMDZiN2I1NDczNzAwZGRhYzU3OWY4ZmI5ODFlNzRiMDJmZWFlIHJlbGVhc2UyNC1tYWludAorNDI0OTIgYmQ3ZjJkOGU4ZGVhYmJlMDQyNWQzZDQxNGEwZmNhYjgzNDViZGU4YSBsZWdhY3ktdHJ1bmsKKzQyNDkzIDc4MTY1NGJlNTVlZjBjOGRlM2E1OTgzYjE5Y2ZkZTEwODEyNGY0NGYgbGVnYWN5LXRydW5rCis0MjQ5NCBjNmZiYTQ1NjIyN2I5NzNmZDI1YzZhYTBkYWNmMzljM2IxMDA4YzVhIGxlZ2FjeS10cnVuaworNDI0OTUgZTU3Mzc3ZjBhMTY3ZjE0NmQzYzJlYzIzNTM4YWZkYWFhODJhOGM3YyBsZWdhY3ktdHJ1bmsKKzQyNDk2IDM4ZjRiMDk4ZWE2OTBjOTVjN2Y2MzA1NjY0ZGIwMTI5YWYzYWI1NDQgbGVnYWN5LXRydW5rCis0MjQ5NyA5ZDk3YzgzMzhkNGMyNGMzMDIxYTViNjIzNTczZjQ2MTQzZDllZGI4IGxlZ2FjeS10cnVuaworNDI0OTggYzU4ZTc5YjJjYTA1ZWI5NDQ2YTM3Y2NkMTMxOGU2MjFmNjMwNTZkNyBsZWdhY3ktdHJ1bmsKKzQyNDk5IGU4YTQ5ZWI4NTE5YzM1NjU5YjgxMjhkMDhjZjE4ZWJiZTVjYjRkMGIgbGVnYWN5LXRydW5rCis0MjUwMCAyYzE4NzBhYmI2Y2U1NmRkNWNjZjIzYWY5N2E4NTY3ZmRmMDQ0ZDRmIGxlZ2FjeS10cnVuaworNDI1MDEgOWMwZmQ1ODY0NzVjMTcwNjQ0MjcwOGZhOGVmYjc2MWZiZWZmOTA5MiBsZWdhY3ktdHJ1bmsKKzQyNTAyIDk0NmNmNmQ1OGZkMTE1OTU3NzM3YzdiMGRlYzNhYWYzMzQ4OTI5ODAgbGVnYWN5LXRydW5rCis0MjUwMyBmZTRhZTBjNDE3YzdiMjk2NjZkYTZhNjUyNGRjMTNiY2Q3NzE1ZmI0IGxlZ2FjeS10cnVuaworNDI1MDQgY2FiMzZhYWVlMmUzZDU3YTUyOTE1Zjg4YjllZTQ1ZjczNWUwYThiYiBsZWdhY3ktdHJ1bmsKKzQyNTA1IGY2ZDZlNTIyMDgyM2UxNmE0ZjYwYTU5MzBlMTZhMGMxNWFmYzJjZDggbGVnYWN5LXRydW5rCis0MjUwNiAxYTk4Nzk4YTRiMWRhNzIxOWM1MzQ4OTExNDA0OWQwNGU0NDJmMjkxIGxlZ2FjeS10cnVuaworNDI1MDcgM2E1ZjcxZDZiYmVlOTQxMTFlNzg1NzA0YzAyMGJlZTkwMzA1ZTBiMiBsZWdhY3ktdHJ1bmsKKzQyNTA4IDQ2ZWM5NDhjYmRlOGY3OTY5ZjI3NzhjNzQ2ODY2ZTdmZjZkMjUxMGUgbGVnYWN5LXRydW5rCis0MjUwOSAwNjcxZjNjNDYyZDUwMDY4ZTRkZjI4OWI0Mjc0ODRlNjk0N2U5MzQ5IGxlZ2FjeS10cnVuaworNDI1MTAgNGQ3NjUzZTVjYjNiY2FhYWEyOTZlMWEwMzY0MGNkMzJmMzViMWU1NCByZWxlYXNlMjQtbWFpbnQKKzQyNTExIDk1MjNhOTQxNWUxODEwZTEyZDY5ZjMyZDA4NWE0YzhiNDgyOTA0M2QgcmVsZWFzZTI0LW1haW50Cis0MjUxMiBkY2Y2MjExM2MyZTMyYzFjNTEzZTliNzZlZTQwMzRhZDRkYWQ2MzA5IGxlZ2FjeS10cnVuaworNDI1MTMgN2QyOTJjYmM3MTNhYjBmZTk5ZTkwNjJkYjllMjEyOWZlMTg2NTEwMSBsZWdhY3ktdHJ1bmsKKzQyNTE0IDM2MWM2NThhNTVlNmUzMWEzMGFlYWZkYTI2ZGY4ZWJjYTQ5MTJjOTEgcmVsZWFzZTI0LW1haW50Cis0MjUxNSBjMzZlMzdhMThmMWEzOTY5NGIyNTFlOTNiNWVmMDg5YjQ0OGM0MmMwIGxlZ2FjeS10cnVuaworNDI1MTYgYTlkNmIxYWVjMDk2M2I0Y2NkOGUzY2E5YzI0YjZmOTRkYmE0NTZiZSBsZWdhY3ktdHJ1bmsKKzQyNTE3IDZkM2JhMDA0ZDVlNTk3MWIwZTQ2OGQ1OWM2ZmJjOGVlMTE0YTcwOTIgcmVsZWFzZTI0LW1haW50Cis0MjUxOCBiNzY2ZWQwM2Q0MjU2YTZlZjRmN2Q0OWQyYzFjNDAyNGFhNzliY2NiIGxlZ2FjeS10cnVuaworNDI1MTkgYzZmZGU4YTNiOWRmOGEwNWViYTY2YjEyYWRkYzM0NzQ3YzE4ZDA0MSBsZWdhY3ktdHJ1bmsKKzQyNTIwIDRiNGVhMzhkYTk4ZWQzMTk4NDY2MzBiOWZmMWFmMWY3MTliOGUzMDUgbGVnYWN5LXRydW5rCis0MjUyMSBkMDA4MDc1MDU3M2I2M2NkYzc3NmY5M2UwY2QyYzYzMjk2MWIyYmIwIHJlbGVhc2UyNC1tYWludAorNDI1MjIgZDExMmRhNzk2NGQ2MjlhMmEyODU5MmE2MjJjNmIyMzk4NWRhYzFiMSBsZWdhY3ktdHJ1bmsKKzQyNTIzIGZmOWFmZWIwNWIzNDI2NzRkYTc4YmQyNDk1YzI2ZmFhZjM5YTUzOTkgcmVsZWFzZTI0LW1haW50Cis0MjUyNCBiZGRjMTNkNTdiODgyZDJmZWUyYjMwYjUzMzNkOGEwYzQ1OGZiNTY3IGxlZ2FjeS10cnVuaworNDI1MjUgMWUzOTY4ZmNhYzY4MTllZTQ2NTAxYzExNzYxOWNmYWFiNDNiYjkzNCBsZWdhY3ktdHJ1bmsKKzQyNTI2IDhhNmZhZWQwYWYwNGI1Yzk3MzE1MjkwMWQyYjRkOTk5ZTc0MzY3NzEgcmVsZWFzZTI0LW1haW50Cis0MjUyNyBkNGUxNzYyYjhlMTUzNDBmZmNhMWU5N2Y1ZGY3MTJkNDllMmY1OTYwIGxlZ2FjeS10cnVuaworNDI1MjggMjg0MTNjMDgyYzA4NzYyZTBiNThhNTE4NTViNjAzOGExZThkMDFjOCByZWxlYXNlMjQtbWFpbnQKKzQyNTI5IGViMDk3NzkzMmUyZGU4NjVlZjUyYjc0ZTdkZTU3YzBhOGIyYzUzNGIgbGVnYWN5LXRydW5rCis0MjUzMSA0OWQ5YzEyMDM1N2FkMTAxNWY5YjFmYjVlMWVmY2MzZWU3NDNmMjc5IGxlZ2FjeS10cnVuaworNDI1MzIgNGQ5ODhkZGE2NDc4NjQ0YjkxZDYxZjNkYTNjOWFiYjIyNTk5NmVhYiBsZWdhY3ktdHJ1bmsKKzQyNTM2IDIwYzhmYTFlMDY2ODM4ZjA1OWFkZGRkNThiOWE5ZmU0NjExYmNmYWYgbGVnYWN5LXRydW5rCis0MjUzNyA5OGY2YjU5YTZlMGEwOWRhNmI2Zjc4NjFjNDRlZjhmYjEwMmIyNjRiIHJlbGVhc2UyNC1tYWludAorNDI1MzggMTQ1ZDVmYzlhNmE1MWEyNjQzZjVkZTEyMWI1YTA4MGU3MGIyMGUxZCBsZWdhY3ktdHJ1bmsKKzQyNTM5IDRlNTBhYTdiYjFiNTJkMWMxM2UwMzU1NDVlYWYyYjZhZGFjZmU1MWMgbGVnYWN5LXRydW5rCis0MjU0MCBkMGViY2I0ZjYwMzEzOWIzNDAzOWE1ZTJlZGQzZTEwNTJjMDhhZTY1IGxlZ2FjeS10cnVuaworNDI1NDEgNjljMGJlYzExMDBhYzgzYzc5ODM4NWExYjUxODJiMjI3YTAzNzg2ZSBsZWdhY3ktdHJ1bmsKKzQyNTQzIDVmMmNiNDQ1ZTFjNTQ5ZWRkOWQ1YzJlNmI3ZjJiNmQzZDA5YzEwNDcgbGVnYWN5LXRydW5rCis0MjU0NCBlMGMyYWJkNTgxYzViMGI1NWU0MjZjZmY5YjQwOGU0MWViZjM4NDliIGxlZ2FjeS10cnVuaworNDI1NDUgMzZhZTNkOTI5ODMyZDRmZjhjYWU3M2M2OTQ2YmY1NGFkZDljYzU4YiBsZWdhY3ktdHJ1bmsKKzQyNTQ2IDJjOGRjMzU4MWI3MGYyZDExYTQ0ZWM0OWE0ZjIxMzQyOWMwZmM3ZGQgbGVnYWN5LXRydW5rCis0MjU1MCAwOWQxOTM3ZjJkYTg5NWZlOGRjNDBjNTdkZmNhYjYyMzIxNTUzMWQ3IGxlZ2FjeS10cnVuaworNDI1NTEgODFmMWIwZGRjOGExNmYxYWEzZTYyZTBhZmNhY2MwY2JkNjA1YTQ1MSBsZWdhY3ktdHJ1bmsKKzQyNTUyIDVhODM2OTg2MjA2ZGQzOTBkYWE2YTE1NGUwZTg4MzdiMDdhM2I4YmEgbGVnYWN5LXRydW5rCis0MjU1MyAyMTYyMjE2MTM5Yjk1Njk1NDMyZTE3NDg3OWFmYjg5OTg1NDZiYTY0IGxlZ2FjeS10cnVuaworNDI1NTkgOTExYzdmYTQ5NWIyNDA0NzA2ZjhhYTQ1Y2NjZTBhOWExNGY4YWFhMCB0aW0tb2JtYWxsb2MKKzQyNTYwIDE0M2MzNDhmZjcxNzY5ZDYwYjBkYWY0YmVmMjA3NDE5ZmUzMzI1ZTUgdGltLW9ibWFsbG9jCis0MjU2MSA0MTI3NjE0Zjc1MmExZjQzNmM5OWVjNzlhYTg0YWM2OTU2MjdjYjBhIGxlZ2FjeS10cnVuaworNDI1NjIgOTU4MDA4NzViZDEyNTk0YjMwNDgyYzlmOGIzMjA3OWFkYzY5ZjE2YSBsZWdhY3ktdHJ1bmsKKzQyNTYzIGUxYzNmZmU5MjZjMTE1NjJkYWNjNDc2ODA4YzAzNDljZTQwZGE4Y2QgbGVnYWN5LXRydW5rCis0MjU2NCA1ZDgyODcwM2M2YTE3MzJhZGQ0NDIwMWQzZjNlNDJkODcwNTJiNDgyIGxlZ2FjeS10cnVuaworNDI1NjggNjI1NjRkYzdiZDcyNjJkMTAxMDg0MWMxNTBlYjA2NmJhNzA3M2JjZiBsZWdhY3ktdHJ1bmsKKzQyNTY5IDhkYjk4NWI0MDg2ZTE4Y2VlNzNkNmM5MTc0MGUwMzUwYjM5ZjJhMTcgbGVnYWN5LXRydW5rCis0MjU3MCAyZmRhNGQxNTBjM2RiNDZmNjQ3MDI5YmI3MTc1MDFlZDVhMThhNWEzIGxlZ2FjeS10cnVuaworNDI1NzEgNmI0MjkyMGFjY2M5MjY0ZjdjYWJmZjVjMzg2MTcyYzIyNGYzNDVlNyBsZWdhY3ktdHJ1bmsKKzQyNTcyIGM2NTA2NDQyZGZlMDE1MjJlZDhiZGMxODZiM2E5MTMxYWVlMDE4ZjMgcmVsZWFzZTI0LW1haW50Cis0MjU3MyA5MmNlOGJiOGIxMmE3ZWI1ZjRhOTMyZDZhNDNiZGY5ZTJlZDhlNDg2IGxlZ2FjeS10cnVuaworNDI1NzQgYzk5NmExMjIzNGMyNTljMGZjYTBmMzUyODhhYzlhNGE0MDVkYzk0NCBsZWdhY3ktdHJ1bmsKKzQyNTc1IDM5MjRhZmNmOTVlN2ZkOWI1MTNjMWM1NzBjYjcyMTVlNTcyYWM5MTMgYXN0LW9iamVjdHMKKzQyNTc2IGM5ZmJiMDY3YzJhNmM5MGUzMGFiOTE3YzFjODYwZmUyMjU0ODllYTUgbGVnYWN5LXRydW5rCis0MjU3OCBiYjQ4MTE1ZTZkYWIzMzUzMDk2YzJhMzc2NDIxMGJlNGU5ZTM0ZDYzIGxlZ2FjeS10cnVuaworNDI1NzkgM2MwYjI2MTEzZGY2ZWQ1YjM2YTYwNjQ5ZDJmZDMxMjYyZTg2ODFhNyBsZWdhY3ktdHJ1bmsKKzQyNTgxIDcxMGNiZGQ0NzhhODUxYjM0MGFjZjRlZjM4MTBlOTcwZWNkNWM2MzMgbGVnYWN5LXRydW5rCis0MjU4MiAyYWI5MjcwZWYxOWFlYWY3ZjBlYThmNDhjNDUxMDY2YjI2ZDU0NDQ0IGxlZ2FjeS10cnVuaworNDI1ODMgNTc4OGUwYTY4OWUyNTc3ZThhNWUzMDZmNDg4ZDZkMDhiNjNiYzc0NiBsZWdhY3ktdHJ1bmsKKzQyNTg0IDdiZmJmYjJlZjRlMjE0NWE1OTM0MzgzYmRkZTg2MDIxMDFkNTAwYTkgbGVnYWN5LXRydW5rCis0MjU4NSA1OGE4NDUxZmY3OTU4N2UzZTc4YjI1NDYwYjVkMGJlZmUwZDQ3MTk0IGxlZ2FjeS10cnVuaworNDI1ODYgNjE2NTkyNzQzMWQ2YTY4NTUwOGZkZTQwODZlNjcxZTVjYWNkODJkMiBsZWdhY3ktdHJ1bmsKKzQyNTg3IGRiNTcxZjljYWQ2Zjg3YmYwZDkwZDMxNmJkYTMzMmIyMDc0MGY4YjIgbGVnYWN5LXRydW5rCis0MjU4OCA4NDEwZjA2YWQzNmUxODg1OTU4OTQ5ZDE5NzU4ZGY0NzYwODY3YmJmIGxlZ2FjeS10cnVuaworNDI1ODkgOTUwNGY3YWMzNjY5YzI4MWNlMjE0ZTE4NzlkYTZmYzBlNTk1OWRiMyBsZWdhY3ktdHJ1bmsKKzQyNTkwIDI5NmNkYTliM2UyZjgwOWY0NTg4ODhhM2RlOTc5NDNhZDMxYjkzYTAgbGVnYWN5LXRydW5rCis0MjU5MSA1ODQ2MzdkODMxZTNmY2JlY2RhZWQyNDgzZTJlMGVlZmYwYjI2Nzk3IGxlZ2FjeS10cnVuaworNDI1OTIgNmMwYjZjMWNkMWY0NjlkNTk0OTQzYTI1NWM0MDJlZWRhOGU3MGI1OSBsZWdhY3ktdHJ1bmsKKzQyNTkzIDJkZGVhNTUzNWYwODY0OWU1NjVjYjc0MjIwOGQ0ZTc3YjEyZDUyOWEgbGVnYWN5LXRydW5rCis0MjU5NSA3ODBiN2FmZTYxNzg1YWY3YzE0N2E5YjcxODViMDI0ZmM1NjFhYjM4IGxlZ2FjeS10cnVuaworNDI1OTYgZGJhNjQ5NDczNWQwMmE1NTM5MmU1Y2VhMTY5MDI4NDQxNzBkMjdkYiBsZWdhY3ktdHJ1bmsKKzQyNTk3IDY3Yzc0ZWZhZDhjMjNmN2ZjYTQ3ZjQ4NzQ4MmUwMDRjZmRiMGMwMWYgbGVnYWN5LXRydW5rCis0MjU5OCA1MjMwYzRjMjllYmIyNzg2NDNlN2VjMjA2NzYyNGVkODJlYTgxZmZjIGxlZ2FjeS10cnVuaworNDI1OTkgYWM0OTg5NTNjZTU3OGZhYTkwMjcyMjNjN2UyMzI1ZWZiNGYyYzM0YyBsZWdhY3ktdHJ1bmsKKzQyNjAwIGUxMzkxOTEwYjAyNjUyZDgzNGUxMTg0NjAzOTRjNjBlOGU5Yjc1YWMgbGVnYWN5LXRydW5rCis0MjYwMiA1NGViNWIxZmIzNjMyZWM4YmFjM2NjNGUxNDQ0NmY0OWU0OWZhNzc1IGxlZ2FjeS10cnVuaworNDI2MDMgZTlmMGRiNDI5ZjJiYmFlM2JlMTY1MGY3YWNmMjJlOGZiZGMxYjE0ZiBsZWdhY3ktdHJ1bmsKKzQyNjA2IDUyY2JjNDQ3ZTFjOWZiZWU3YWY1MDJmZDJjZTc2MGQ0NWQ2NGExMDQgbGVnYWN5LXRydW5rCis0MjYwNyBkYTJhMTA0OTIxNWQ2MzE4YmYzZjdmMjFkMjE0OGQ0ODI1M2JjNzc5IGxlZ2FjeS10cnVuaworNDI2MDkgMGJlYmViMzkzMDQ1NDMzZDBhZmM0MTUyOTA4MDgxZTcyYjZmOGEwMSBsZWdhY3ktdHJ1bmsKKzQyNjEwIGI4NzNlYzY3ODU2MDUxMzZjM2M2NGU0Mzk1ZGE5ZTQ4MDM1MTI3NmIgcmVsZWFzZTI0LW1haW50Cis0MjYxMSA4NjExZjM5Y2Q4MmJmYzJhZjNkNDhjMTlkMTQzZTY0YmYxMmU0NDQ2IGxlZ2FjeS10cnVuaworNDI2MTMgN2QwZjEyMzQwYzllNGY1OGI2MWMwNjhlOTFjOWE0MGUwNDY5ZWM4OCByZWxlYXNlMjQtbWFpbnQKKzQyNjE0IGUwZmVhZGM3YWZmYjcyYmY4MWNkNWExYWQxODU0NTgxNjI2Zjk3YzMgcmVsZWFzZTI0LW1haW50Cis0MjYxNiAxMTQ4NGE3MmQ5NjZmZDg4ZWJmZjlhNzdlYjRjZTZhZWVkMTAzMmVmIGxlZ2FjeS10cnVuaworNDI2MTcgYWNhYTc5ZTczMTMzM2U1MmQwYTBlNTQyZDA0YmM1YjZkMWZiM2Y1YSBsZWdhY3ktdHJ1bmsKKzQyNjE4IGRkM2U1YTk0NTk2MmMxZWM5ZDgxMTU2MmRjZTY0ZWNmNzZmMDNhOGMgbGVnYWN5LXRydW5rCis0MjYxOSAzMDE3MTA1MzVkMTUwMjc0ODFjMGNiY2RkMDdkOGIxYWE0NzMzYzMxIGxlZ2FjeS10cnVuaworNDI2MjAgMTgwZGJmY2YzYmVkMDY1MDU5ODU2MzI3OTQ0MzA3MmM2NzEzZTdiOCBsZWdhY3ktdHJ1bmsKKzQyNjIyIDAxNTFhMDIzNzRhODJlMjUzYTM1ZjU0MjJlOGNhYjgyMTA1MjVkYzIgdGltLW9ibWFsbG9jCis0MjYyMyBkZmFiMjJhZTQ4ZTM2N2Y0MDkzOWUzNTEwMzI0ZTFiNmQwYzBkZWI4IGxlZ2FjeS10cnVuaworNDI2MjQgYjZkMmY2ZmQzZTExNmI5YjlmZTk1YmM5ODJhYzc2M2MzNTlmZjEwMyBsZWdhY3ktdHJ1bmsKKzQyNjI1IDdiNThmYmRlNWU1ZGZjMWJkZDM5ODEwYzY3NWVkNDBhYzQwMWQzZjUgdGltLW9ibWFsbG9jCis0MjYyNiBlMGE3NzAxMGQwMzNiYzkzMjJhNzdjZGQwZWUyNWJhN2QyNzE1ODI1IGxlZ2FjeS10cnVuaworNDI2MjcgNzhkZTVmNmIyZjY3YjNlODUzOTM4OGI3N2NhZTBlMzI0ZWE3ODQxYSBsZWdhY3ktdHJ1bmsKKzQyNjI4IDMwNTY3YmU5MGM4NTEzMTFlOTJhZDEwMGJjMTkwY2RmYzQ4ZWE5YmEgbGVnYWN5LXRydW5rCis0MjYyOSBhYTA0MDQxMGZiOWEyZGY5OWQwYTM4M2IzOGRiNmY3ZWI1NDU2ODJkIHJlbGVhc2UyNC1tYWludAorNDI2MzAgMmEyZDQ2ZDE5MjlhNDA2YWZlNjViMTNlM2Q3YWMzOGMyMzYwZWQ0MCBsZWdhY3ktdHJ1bmsKKzQyNjMxIGUzMjQ4ZjFmYzU0ZGI3MThhOTQyMzg0Mjc5YmY0OGQ1NmJlNTI1ZjkgbGVnYWN5LXRydW5rCis0MjYzMiAzNWRiYmMxYWI0NDg3ZGZmODc2NDk4NzgxZjM4ODljNDJhOTM0MzkyIGxlZ2FjeS10cnVuaworNDI2MzMgYzNlMjg0MDk2ODZjYmUyYzNhNjc5MDBlYmIwZGI3ODFkZjVjZWVjMyB0aW0tb2JtYWxsb2MKKzQyNjM0IDY2NDVkYjA5NDk0M2RkMmI0NDRmYzFlMDFkNDgxODc2NzgzYjgzZjIgdGltLW9ibWFsbG9jCis0MjYzNSA5ZjNlNThkYmVhNjMxYmM2NjUzNTk0MDc1M2E1Mjg4OTY4ZDYyNTIxIGxlZ2FjeS10cnVuaworNDI2MzYgM2Q2OGYzNTJjMmZmMDFmMjA3ZDZhOTFjY2Y0YzcwYzBiNzM2Y2M5ZiBsZWdhY3ktdHJ1bmsKKzQyNjM3IDhmZjI4ZmNmODcyZTBhOWI5NWM2YzlhYWIwNWEwNzc0M2NmNjhhMTEgbGVnYWN5LXRydW5rCis0MjYzOCBiNmIxYzQ0ZDkxMTA1Mjg1M2M3Y2RmMWY3NDNlODNlN2JkZGZmNTQ0IGxlZ2FjeS10cnVuaworNDI2MzkgY2Q4NDdlNzI2ODM3MmU0ZTdlYmJkYjA0MWYwMTlkNjBjZGEyNzliOSBsZWdhY3ktdHJ1bmsKKzQyNjQwIDgxYmUxNWI4NDI0NDUzOTgyNmFlZjFlNmJiYmMzNjcwMDQ4MTY3YjggbGVnYWN5LXRydW5rCis0MjY0MSBiZWE5NDc1NDQ0MWIxYTcwYjcxM2ZlZWVlYzgxZTZjNmVlOTllNDI3IGxlZ2FjeS10cnVuaworNDI2NDIgMjU4OTkwMjQyODk4ZTZjNjAzZTczNjRmYTU4MTRjNzI4YTg0YmY0NyB0aW0tb2JtYWxsb2MKKzQyNjQzIDNjMDdiNmM1Y2Y3ODhiN2JkMGM4ZmVhOGE5OTRhNGM2YzkxNTA4MDMgbGVnYWN5LXRydW5rCis0MjY0NCBmMTUzMDJkOGIyZGU1OWYxYTE0MTI0MWRlYTgwM2NiMmRlZGExZGI3IGxlZ2FjeS10cnVuaworNDI2NDkgNWMzNmMyMjJlN2NhNTMxMGU1Y2M4YjhkYjI4M2JkNjY5ZDFlMjRkNCBsZWdhY3ktdHJ1bmsKKzQyNjUwIDk3ZWU3YjUzMzY2NDgxNzgwYjZmMzMxNTUwZDY2NGFjODYzZjY2ODIgbGVnYWN5LXRydW5rCis0MjY1MyBjMzQ0NWIxY2YxYmYxZWQwNGRiZDFjMmRmNWE4MTUxYjQxMDJkMTc5IGxlZ2FjeS10cnVuaworNDI2NTQgNDI5MmI0MjY4M2M1ZmNjNzU1NDMzOGJiZmQ4NDdiYjUzZTkxYWM1MiBsZWdhY3ktdHJ1bmsKKzQyNjU1IDcxZDg3MzA1NGQyOWVkYmQyMjAzMmM4YzkxNWNmMGVlY2JiOGI1YzMgbGVnYWN5LXRydW5rCis0MjY1NiBhZTM5ZmNlMGY5YTE2ZWMwYTU4OGQ3MTg5OWRkNDZiNzdkNTE0NjEwIGxlZ2FjeS10cnVuaworNDI2NTcgNDVlNmY5MDE5MDJjYTU4NTdlZWU5MWFiYTA0OGRmN2RkNTYwMTg2NCBsZWdhY3ktdHJ1bmsKKzQyNjU4IDY2ZmM1YjI2Mjg2OGJlZTdkMjMxYzc1OTg0NmMxZmVkM2NkNWVkZWMgdGltLW9ibWFsbG9jCis0MjY1OSA5NDJhZTI1Y2IzOTE1MDQwOTEwMmQ0ZDY2NmUzNzMxNDg5NWE0MmQxIGxlZ2FjeS10cnVuaworNDI2NjAgNDAyZGUwZmVmMTE2ZDhlN2MxNGMwMmM1NmRkZTBjZmViNWY3NGI1ZCB0aW0tb2JtYWxsb2MKKzQyNjYxIDExNTk2MDY0MGYyNWRlNWIwMWQyMjliMzIyYjc5ZTc1ZjhiMjBhYTYgbGVnYWN5LXRydW5rCis0MjY2MiBmN2I0NzI2YWRhNmM1MDljMDM5ZjY3NjJmZTBhYTFhYjMxNmIzYmYyIGxlZ2FjeS10cnVuaworNDI2NjMgYzQwYTMzY2E2NWI5MTYzYjlkODJkYzkzZWI5YjE3MmYzNmMzYmJlZSBsZWdhY3ktdHJ1bmsKKzQyNjY0IGU1ODBjOGIwZGNlYWI0MGViZjI5Zjg1ODY5YTQ2NWM0OGUwYzZhZmYgbGVnYWN5LXRydW5rCis0MjY2NSA1ZjM4MjJjMmU3MzEwNGJiZTRmOWQ3Y2EwODFiYjBiMzAzODUyNDNhIGxlZ2FjeS10cnVuaworNDI2NjYgOTkwNjZiZWExN2Y4ZjAzMmU4MDc4ZDVhZDc4YzZhY2ViNzRmYzBkNCBsZWdhY3ktdHJ1bmsKKzQyNjY3IGJiZjE2ZmQwMjRkZjdiY2ViYzBmNmZlODgyYjdjYzhjZjk3NjBiNTYgbGVnYWN5LXRydW5rCis0MjY2OCBjMDY2MTNlNTNmYWRmMzc0OWI4OTFlOGZjZmQ0YWNmY2U4ZTI5YzQ2IGxlZ2FjeS10cnVuaworNDI2NjkgZjJhODk1ZDMzYTVjYWU5MTNmNmVkYzgzYTA1MTVhMGI5NzU4MTI1NyBsZWdhY3ktdHJ1bmsKKzQyNjcxIGQ2Y2JjNzFiODAxMDkwOTlkMmQzNjc4YmJhNmU4ZTkyYTYzMmIyOGIgbGVnYWN5LXRydW5rCis0MjY3MiA4NzcwNjQzOGRjM2M0MWJhMjdjN2RjOTRkZDEzNTYyMjExNzdmMTBkIGxlZ2FjeS10cnVuaworNDI2NzMgZmQ1NDk3YjY0MjA5YzI0MTE3YTQ3Yzg2ZTNlODc5NThmZGQ5OGM5YyBsZWdhY3ktdHJ1bmsKKzQyNjc1IDhhMmE1ZjcxYjhiM2Q3ZTI3MDA2YTEyMDQ3NDAyNGM5OWYzOTliOGQgbGVnYWN5LXRydW5rCis0MjY3NiA2NTgzYzg2ODgxN2FhYTRjOWI5Y2UzN2MzNWRjMTNlZmI3ZTEyZWQ1IGxlZ2FjeS10cnVuaworNDI2NzcgNGE0ZTBjNThkNDM3ZTg3ZjBjMzE1OTk5NWNkN2ViNThlMGE4MDNkNSBsZWdhY3ktdHJ1bmsKKzQyNjc4IDQxNzgxNTA2MjMzNzhhMWU5MTUyNWNhY2M0ZDlhYTc3NjI1NGNjYjAgbGVnYWN5LXRydW5rCis0MjY4NSBiYmNlOGVjMmZmODFkMGRjZjk4MzcxNjFmMTY4ZmJlMjA0NzVkZWFkIGxlZ2FjeS10cnVuaworNDI2ODcgOGI2ODUxMzgyZTI3NTM1OGZhOGIyOGM1MmVmN2ZlYzc5MjJiYzQ0NiB0aW0tb2JtYWxsb2MKKzQyNjg4IGZhOTJmZTE1MjUxYTA1MTA4NTdiMjAyOWU2ZmQyYjc1YzE5NTk2NjIgbGVnYWN5LXRydW5rCis0MjY4OSA0M2I5ZDVmMDkwMWJlNjYyODQ0NWY1YWE1MzA4YzczY2Q5YTA4MGNlIHRpbS1vYm1hbGxvYworNDI2OTAgNDNjNzA0NjBjY2Q1OTBkMGI1OTQ4ZjQ1OGRiYjRjODFhZGZjMzFmOSBsZWdhY3ktdHJ1bmsKKzQyNjkxIDc5NmQxNTBlNDVhOTRiZmYxMjA1ODc0MjAyMzM0OTdiN2M3MGI3ZGUgbGVnYWN5LXRydW5rCis0MjY5MiBhM2U0YmQ0NzVhZDdmNzQ4NTg0MGUxM2E0ODMyZmI0ZGQyMjlhMTIwIGxlZ2FjeS10cnVuaworNDI2OTMgYzA5ODJiODE1NWM2MmQzZmY0NWE4MjFmZDZhZDMxNWI1NzIzYmUwZiBsZWdhY3ktdHJ1bmsKKzQyNjk0IDY1OGY4ZmYyYTQ0MmQwMTgxNTZlNTU4MWFjYjE5Nzc4YzZmMGU0NjMgbGVnYWN5LXRydW5rCis0MjY5NSAzMTA1MWE3MGIyOTcyZDhmMmNlNDBlNDg5Y2VkZWE5NDk0NjQwMGRiIHRpbS1vYm1hbGxvYworNDI2OTYgZGJmOWNjNmMzNmViZDcxY2JiZDkyMzM3ZmMyM2JlYjY5Yjg4MzE3MCBsZWdhY3ktdHJ1bmsKKzQyNjk4IGEyMTM4ZGZiNTk2NTI2NDk0NTUyNmUwMTJjN2Y1ZTI4MWVjMjk3ZjcgbGVnYWN5LXRydW5rCis0MjY5OSAzZmZjMWUxZDJmNTc2ZjY0ZjZkNzE4MWE2MzM2NTMyNmUwYWNlZmYwIGxlZ2FjeS10cnVuaworNDI3MDIgOTIyNTM5ZGJkYzRlNWQ5Yzg2YzUwZjUzOGJmMDMzZmI3ZDc2MzFkMSB0aW0tb2JtYWxsb2MKKzQyNzAzIGU4MjFiOTM2ZjNmYTc1NmExNzY4Y2U2M2ZhNDVhY2JlMGI4OWM4NjAgdGltLW9ibWFsbG9jCis0MjcwNCA4ZGY1NTAxNGM4ZmIwY2QyNzE0YTMzZGEzYjQxYjA4MzNhZWViYmE5IHRpbS1vYm1hbGxvYworNDI3MDUgZWY1MjQ2Y2U4ZmU2NTYwMGYwZGZhNWFhOWFmNGFlYWZmNDYxOGJlMiBsZWdhY3ktdHJ1bmsKKzQyNzA2IGRiYTc3MDkyZDQ2ZWJhZjJiYjhmMjQyYmMyYWQwM2Q4NzdiNGY1NzkgbGVnYWN5LXRydW5rCis0MjcwNyAwZjcyODRjNDkxYTMxN2JkN2ZmNjQ5ZTc2Y2VhYmY4MTE1MGE3NjJiIHRpbS1vYm1hbGxvYworNDI3MDggYzI5NDJjZGQ4OGIzMjUwN2Y1NWEzOTQ0NGJiOGQ4MDE5OGYyNjA2NiBsZWdhY3ktdHJ1bmsKKzQyNzA5IDBiNWU5YWNlMmU4N2IzODY4MjUwZjNkZDM1MTQzODVjOWEyZTNkMjIgbGVnYWN5LXRydW5rCis0MjcxMCA5MmJhNzI0ODRmZjM4NDUyNDhlZTk5N2IxNjlmZDNhNmUwNjUwNTdlIGxlZ2FjeS10cnVuaworNDI3MTEgOGUwNGRlMjQ4MGU0OWVhODQ2NzZjMThhYjNmZDY1ZjdhYzY0ZDlhMiBsZWdhY3ktdHJ1bmsKKzQyNzEyIDdiNjZiMmRjYzVlOTZhNjRhMThkZjIxZDEzYmE5ZjJhZjExYjQ4ZDUgbGVnYWN5LXRydW5rCis0MjcxMyAxZTgzZjE4MmI1ZjlhZjgxMWQ0NzQ4ZWQ5MWFlYWZkMzZiNDUxMzE0IGxlZ2FjeS10cnVuaworNDI3MTUgMmYxOWI5ODFhYzI0N2MzMjNkMDQwNDE5ZWI2MTdjZjMyZWE3YTVlMCBsZWdhY3ktdHJ1bmsKKzQyNzE2IDMyZTJiOGJkYTUzNWI4YTY4NzE1ZDE3MjU0MzdmMzlhMzYyZmViZTAgbGVnYWN5LXRydW5rCis0MjcxNyBkMGNhNjMwMmRkM2M5OGNjZjA3MWQ4M2M2MWJiYjdjN2Q4MzRkY2UzIGxlZ2FjeS10cnVuaworNDI3MTkgYzQxMzhhZDFlMDlhMGUzOWM3ODIzMDRlZDJkYzllODBiZDZlMWZhMiBsZWdhY3ktdHJ1bmsKKzQyNzIwIDNlMTkyNzFlZmM0NmU2OTI2MzhjYmQzNjFkN2UxMGVhNTJhMTQ2NTEgbGVnYWN5LXRydW5rCis0MjcyMSA4M2I4NjBhY2ZlOTVlNmYwMTdjY2Q2MjAyOTNmNzU0MzgwM2U0NjlhIGxlZ2FjeS10cnVuaworNDI3MjIgYTM2NmRmYzcwMzVmZDE5MjBjMWFhMDNiMjdmMzU0N2FmMTllNDhkYSBsZWdhY3ktdHJ1bmsKKzQyNzIzIDNkZDkyZDk3YTY3ZmY4MjFkZjJlMzc4MTliM2NkODZlOTI4YmFhNzQgbGVnYWN5LXRydW5rCis0MjcyNCAyMmM1MTYzMmI0NTlkNzcwMmU0YWM4NTYxNWFmYTJmYjA2NjJiNzIwIGxlZ2FjeS10cnVuaworNDI3MjUgNWU0NjNhZTcwNzA3NmRkMjg3MDhkNzY3ZDNlZjJiMmMzNGI0NDg2ZCBsZWdhY3ktdHJ1bmsKKzQyNzI3IDk1YTkyYjJiNTNlZTQ5YWM2Mzc4NmVlYTczMWJkMmM4YTU5Mjk4M2EgbGVnYWN5LXRydW5rCis0MjcyOCAwNjc0Nzk2YjY5NmNjNWEyMDYwY2JhMjMzOTZiZjNkMzk3MjNhNjExIGxlZ2FjeS10cnVuaworNDI3MjkgMWRhYTE5OWI3ODRiZTRhNjNmNTBjODA1ZjZhYjQzYTljNjc5NmVkZiBsZWdhY3ktdHJ1bmsKKzQyNzMwIGUzNjRiYzc2YmRjOGQ0NjNmNjRmYjcyM2I2YzAzNTAwMTRkYzc4NzUgbGVnYWN5LXRydW5rCis0MjczMSBkNmMzMGNlMzg2OGIxM2Q3YzlkZGQzMzdlOTY1OWZmYWU3YjJkMDMxIGxlZ2FjeS10cnVuaworNDI3MzIgYWIxYjUzZDU0OTAxYThkYTcxNjdmZWEyNGNmOTA5NzhjYzZlNDY1YiBsZWdhY3ktdHJ1bmsKKzQyNzM0IDYyMzc2MzQ1N2E0ZThmNzU3MDE2MzQ4YjFiNDY1NTUzOGU5NjUyNDIgbGVnYWN5LXRydW5rCis0MjczNSA0Y2M5NWZjZTY1ZGE3NjM5Njc5ZmU1YWJhOWE3MjM5MjI0MmFlZTY1IHRpbS1vYm1hbGxvYworNDI3MzcgZjhmZmE3Y2JmOTYwNWRlNThjYzRjZjc4N2U3N2E1ZGY1MmE0OThlOSBsZWdhY3ktdHJ1bmsKKzQyNzM4IGFmOWY5YjU5M2E1MzZkNzI4ZDJjNDc4ZGU2NmYwNTg2Y2Q1MDE0NDggbGVnYWN5LXRydW5rCis0MjczOSA2NGZmM2IyMjVkNDg1MTYxNTRkNDUxY2ZlZThjNGYwNGQ3M2QyMGVhIGxlZ2FjeS10cnVuaworNDI3NDAgMzU2MTJhMTMxYWM2MjQ4MTQ5OTgyNWRkYWMyMTAxYjlkMmFmODNhNCBsZWdhY3ktdHJ1bmsKKzQyNzQxIGE1NDk0ODE4MGEzZGUyMjllNWUxY2Y4MzVhYzAzYzViY2JkNmJlMGYgcmVsZWFzZTI0LW1haW50Cis0Mjc0MiAxYWVhM2FlY2E1MzVhNjMwY2FkNjM0ZDg0NWIyNDZiZWNjNWJkZjVlIGxlZ2FjeS10cnVuaworNDI3NDMgMTIxMWE2OGIyOGRkMzcxNzc5ZGM0MmE1ODMyNmM0N2FmMmU0ZDNkMCBsZWdhY3ktdHJ1bmsKKzQyNzQ0IGNkN2QyOTE5MTc4Yzc1NzYzNzc3ZTA5NTNiZTExOWRlNTNjNzRlYTcgbGVnYWN5LXRydW5rCis0Mjc0NSBhN2IzNjMyZDBlMDUxNTI1YmY1ODcxZmY2ZjY4NDFiZDIyMTg2ZjBkIGxlZ2FjeS10cnVuaworNDI3NDYgYTAwYTllZWY2MDYzYWNlOTk3ZmQzZTM3OGNmNWM1OWY5ZWEwNmRlNSB0aW0tb2JtYWxsb2MKKzQyNzQ3IDM3Njc5MmJmYjU3ZWY5YjgzNDBmNGJhNDdmOWYzMjVlMmY1YTJkMTIgbGVnYWN5LXRydW5rCis0Mjc0OCAyNWY4ZTZkZGU0YTNiMDk2YjA1YWIzMDczNmExZGM2MzQ2MTU2YWJiIGxlZ2FjeS10cnVuaworNDI3NDkgMmI2NTkyNjhhNzNhYTNlNjg0NTE2ODllZjQyMGQ3ZTk2YWVkMmUxZCBsZWdhY3ktdHJ1bmsKKzQyNzUwIDk2NWJiNGE1NDA5NjYzMmJmMTQ0MWRhZGM4MTM2OTYwMDg3NTRiNjcgbGVnYWN5LXRydW5rCis0Mjc1MSBkODUzYmMwNjg0N2U2NmRhNGE1ZGE3ZDJmNjA0ZmZhNWQ2MTFlZDljIGxlZ2FjeS10cnVuaworNDI3NTIgNmUyODVjNjllZmMwNWI3ZjhiZGJiMDk5MGFlYTdiMGM5M2JmOGQ1NiBsZWdhY3ktdHJ1bmsKKzQyNzUzIDU3MzIyY2IyY2ExMTE3YjdmMGQyYjRjMGRkNTQ2MDFlMGJiZDJmYWEgbGVnYWN5LXRydW5rCis0Mjc1NCAwY2M1OGRiZDg3ZmViZTE4MjBhYjM2NDlkNTM2MjFiZGJmMzk2NTU0IGxlZ2FjeS10cnVuaworNDI3NTUgYzNjNWQwNmZhYTAxZWNkMWY2N2JlYTUxNWEzZjJiNjhhYjQ1ZDY1ZiB0aW0tb2JtYWxsb2MKKzQyNzU2IGY2NjZiYzlmNjE3ZDg3MDJjNDU4MjI4ZmM2NDJhZmY4MjEzYjFlNjIgbGVnYWN5LXRydW5rCis0Mjc1NyAwOWQxNzQzMGY0YzI1YWM0OTQyYWRmNmIxNjM3MWFhNzI1ZjBhMGIxIHRpbS1vYm1hbGxvYworNDI3NTggMGUyY2Q5NGM1M2E5OGEwODQzZmVmN2JmYjIxYmQxMTk1ZmQ0NzI2YyBsZWdhY3ktdHJ1bmsKKzQyNzU5IDQ4YTI4YjM1ZGQ2NDU1NjVlYTJjMjRhMzRhNGNkMzUwZWMyM2E0YjQgbGVnYWN5LXRydW5rCis0Mjc2MCAwMmQ5YjQ3NjlhODhlODZlZGVjMmE4MzEwN2JkN2Y3OGEzOWEyNTE0IHRpbS1vYm1hbGxvYworNDI3NjEgNjA0YTEyNmY4M2MyMTRmNDA5NWQxOTU4ZDYwZmEyYTE2NjI5ZDc5MiBsZWdhY3ktdHJ1bmsKKzQyNzYzIDY4ODc5NTg3M2ZmMWNlYTE0MDhmNGYyYmY4YWQyNDMyOTg2NjVhNGEgbGVnYWN5LXRydW5rCis0Mjc2NSAxZThjYjQ3YmVhYWE0OGRmODU2ZjdkZmJjNjczZjM0ODQ2YjVjODMyIGxlZ2FjeS10cnVuaworNDI3NjYgZGY4NDNiMDdmNWZlMGE4YzMyNGU0MTA1MjZiZDYyM2NjOGUxODQwMyBsZWdhY3ktdHJ1bmsKKzQyNzY5IDg5ZDY5ZDkyMTJhMmRjYjkwZmM4NGYyYTAwZTVjZDdhMGM2ZjgyODkgbGVnYWN5LXRydW5rCis0Mjc3MCAwNDc0NzFjYjllNGQ5N2I1NzM4NzNjNzBhNDgwYWMwZDg3OWU4M2JiIGxlZ2FjeS10cnVuaworNDI3NzEgNzI4NWMzN2Q3NjMzZTRkZTNkYjU3YjRkOWY4ZDUyMTM0YzJiMzU0MyBsZWdhY3ktdHJ1bmsKKzQyNzcyIDhkZGNhYWEwOGZkZGVkM2YxZjgxZTJlNWNiNTZkNGNlY2ZkNzdjZTMgbGVnYWN5LXRydW5rCis0Mjc3MyA0MjQ4N2Q4Y2YzMzgwMDhmODE0NzMxZWMzZGQzYmNhYjM3MmIxMWI5IGxlZ2FjeS10cnVuaworNDI3NzQgMDRkMThiY2Y3NTE5ZjgyZGFhZTU5ZDhlZDJiZjkyZDgzNjdlODY1MCBsZWdhY3ktdHJ1bmsKKzQyNzc1IDUxNWVmN2RkMTZiZDk3ZDY3MjVlNjdjMjQ2NGZlYzUwNGFjNTM1MjMgbGVnYWN5LXRydW5rCis0Mjc3NiA4OGRmZDMyODFmNzFkN2NhZDUxNjgwNzk2Y2RiYzgwODRlNTYzZmZmIHRpbS1vYm1hbGxvYworNDI3NzcgYmQwNjQxZDYyNDYyNTM3ZWQ0OWVmM2U4Nzg4Mzg4NzU0MTFkZjA5NiBsZWdhY3ktdHJ1bmsKKzQyNzc4IDhlYWY5NTMxYTJkZWQyOTZkMDFiNjQ1ODdkYjU5ZWNhNzkwN2NhZjkgbGVnYWN5LXRydW5rCis0Mjc3OSA2NTgyYTQ0OTBkMWFhYjE1YzVhYzRlNzY3MzBiZDBiMzcwMGQzZWVhIHRpbS1vYm1hbGxvYworNDI3ODAgYzU1MmYyMjc1NzgyY2Y2MmI4YWI0Y2M4MTg3ZjE3YmI1NGM2Mzg2NCBsZWdhY3ktdHJ1bmsKKzQyNzgyIGUwMWYxN2MyN2VmMzBjOWY0YzgzNzMzNjI2MzE1NzA1YjE0NGMwMzggdGltLW9ibWFsbG9jCis0Mjc4NCBhMDBiZDNjZGI3Mjg3YWFmYjM2YzRiYjQ4NWVjMGM4YWZmZTZkMjQwIGxlZ2FjeS10cnVuaworNDI3ODUgZDVlNWE1ZDlmZTdjMDI1NDdmMTk4ZDlmMzkzZDIzODFmZmU4Y2M2ZSB0aW0tb2JtYWxsb2MKKzQyNzg3IDcwOTlmNmU2ODE4M2VjYTY0OWY4MTAwYzM5YWYxYzJmMDNjM2Q1MzIgbGVnYWN5LXRydW5rCis0Mjc5NCBkZTQ4MTZkMzQ0ZWVhNDg1OGU2ZjRjNzIyZDNhM2ViNGFhMDE0YzgwIGxlZ2FjeS10cnVuaworNDI3OTcgYjFhM2MyMjM4Zjk3ZTFhNjU1MmY5NWQwNDhlNTM0NjcyZmY5OWJhZCBsZWdhY3ktdHJ1bmsKKzQyNzk4IDJjMmRmZmUwNzBkZjI4MzYxMjg0MDhjZmIyMmI1NzRjODVjOTY5MDkgbGVnYWN5LXRydW5rCis0Mjc5OSBlZjg3NzlkNDU1ZWM1Y2M5NjRlOWFiN2E1ZGM1Yzc2NjdjYjljM2U5IGxlZ2FjeS10cnVuaworNDI4MDAgYWJhNzNiNDY4MDNjNzc5MGIxYmM5NWIyNDk2MTQ5MjA5YjUyMmYxOCBsZWdhY3ktdHJ1bmsKKzQyODAxIDFkMDU1ZWJkODMyMjlmYTc3MGJiZDZkNjFhMTNkOTg1MGE2MTRiNDIgbGVnYWN5LXRydW5rCis0MjgwMiA1NDc1NGYwZDI1YzcyZjdhNWYxYTllZjk1YTViNDZjZGQxMzJkN2ZmIGxlZ2FjeS10cnVuaworNDI4MDUgN2EzMGRjMmFmMzI5Mzg1ODEwNWQ0NTE2OTY4NTc2MDkyMzA0YjJlYSBsZWdhY3ktdHJ1bmsKKzQyODA2IDZiN2NhM2IyMDFmM2VmZGZhY2Q4N2VjN2VlZTc0Y2MyYTM3M2ViNDAgbGVnYWN5LXRydW5rCis0MjgwNyA0ZjJhZjU2ZDhlYmU0ZDAyN2UxMzMzZGE5OWUwM2ExZTY1MzJjZjBkIGxlZ2FjeS10cnVuaworNDI4MDggYmMwNzk3YjA2YTk5ZWJjNmVhNjc1YjUxNzA4MzJiZGViN2M1ODZlMCBsZWdhY3ktdHJ1bmsKKzQyODEwIGQzOGFiNWNhZDk0NWIzNTRjMzFmMTAxMTQwMzRiNjVmMGEwODAyMDggbGVnYWN5LXRydW5rCis0MjgxMSBiYjVlMzA0NjdmZTRkMTc2MmU1MDgxODM5NTVlZDhhNzM0MTUyYTgyIGxlZ2FjeS10cnVuaworNDI4MTIgYzFjNDYyMTBiNGI3ZTQwZWNjNWY1MzczNzY1MTQyNjljMjgxZGJmOCBsZWdhY3ktdHJ1bmsKKzQyODEzIDEyYmNkMTZjMzFhZGU2ZmQ0NTNjYTk0NDA2Y2IzZmJhNmY0YzEwYmQgbGVnYWN5LXRydW5rCis0MjgxNCBkMDJiNGNmZWZhMGEwYmU2MGNkZWZiMDcyMDM2NGE4YTA4NTNhYjgwIGxlZ2FjeS10cnVuaworNDI4MTUgN2E2YjE3NGRkZWYyZjE4ZTMwZDdlZmM3OTQ1NDVjMzFkOGZhOWIwOCBsZWdhY3ktdHJ1bmsKKzQyODE2IDA3ZjMzMGFkMWI0NzVlMmFiNzU2YmM3MzIwMGYyYWIyNDBkZjk0OTUgbGVnYWN5LXRydW5rCis0MjgxOCA5YjlkODM5MWI2NzFjYzVmMGU1NjUwYjI5M2FlNGI4MDAyOTQ4OGQ4IGxlZ2FjeS10cnVuaworNDI4MjAgZGI2MTMxYzVhZTVhYmYyMDhmZGUxYjM4NGY5ZWE3MGM1YzAxZTBhZSBsZWdhY3ktdHJ1bmsKKzQyODIxIGIyNDE2ZmFiMTNmZTZkM2ZkM2Q1N2UzYTM0YTFiYWUyYTIwMzM5YzUgcmVsZWFzZTI0LW1haW50Cis0MjgyNSAxZjU4NDE2NGUwMTMxNzYxYTVhYzJjMWFlZjE1MWQ3ZjMyMWY1ZGM4IGxlZ2FjeS10cnVuaworNDI4MjYgNjUzZDg1ODVmMDgwYTAxNzk2MTc5YmY1NGY4NjA4MjEyNWNhODcxZSBsZWdhY3ktdHJ1bmsKKzQyODMwIDc0NzAxZTRmY2RhZDBmOTQ4NTkyMDVhMTExMTQzYjcyZWYxZmY2NTkgbGVnYWN5LXRydW5rCis0MjgzMSBiYWM2YmQzNDNhMTI0N2I4MDc1YjIxYzI3ZGY3NTVjNmY2YzMxZmYxIGxlZ2FjeS10cnVuaworNDI4MzMgM2M1MTlhNjEyYmRiN2VjYTI0MzIxMzcxOTY4NDJkNzdlNzJmM2U5ZiBsZWdhY3ktdHJ1bmsKKzQyODM0IDllODE3ODhiMGQ0YjU5MTJkMzJmOWEwNTk2NzczNzI0NGZmNTIwOTYgbGVnYWN5LXRydW5rCis0MjgzNSAwYjc4MDk2NjA0NTZmNzkyMmQwNjMwNjcxNWI2NzVkNTkxNWRlOTY5IGxlZ2FjeS10cnVuaworNDI4MzYgOTEwOWIxYTBkMjY1ZTFhZWZjNmZiMjgzZDY3ZWY4MjhkY2E5OGUwMyBsZWdhY3ktdHJ1bmsKKzQyODM3IDAxYmM4ZWUzZDJmZjg0NmM0ZjdhMzNhNjE5ZTBiMjg2YjViMjVkMWEgbGVnYWN5LXRydW5rCis0MjgzOCAzYTNhZWQ0OWIyNDU2ZTkxN2Q4YjY2MjA2MzhkNjI1MTc5ZjhiZTNlIGxlZ2FjeS10cnVuaworNDI4MzkgZGVkYzJjOTRkMTEyNjI0NDE4NTYyY2VkMDNjMDRjOWJjNTFiNmY3ZCBsZWdhY3ktdHJ1bmsKKzQyODQwIDdjMWFjYThlM2Q3ZDdhNWFiOTI1NWJmMzFlNDk1NGI1ZTVkNTJkN2EgbGVnYWN5LXRydW5rCis0Mjg0MiBiMTkyOWU4ZDE1Zjk5OTk0NGE1MmE3Y2FmNjc5NDFlN2I0NWVjMTdjIGxlZ2FjeS10cnVuaworNDI4NDMgZDNkMGRkOTJjNzMxYWI3ZTBhYzQ3YmYyYWQ0MWE3ZTUyNGVkYzk2MiBsZWdhY3ktdHJ1bmsKKzQyODQ0IGE5NjliZDE1Nzg4ZjUxNDA1MTc3Zjk0MzJiYWY2MTM1YmNkNzJjMzUgbGVnYWN5LXRydW5rCis0Mjg0NSAxODQ4ZDc1YmJkYjM4YmQ1YzQ0YmQyNzYwMDBlOWVjMWU0OTExMmViIGxlZ2FjeS10cnVuaworNDI4NDYgNDI4NGIzMzI0Y2UyZTRiNjQxZDBhMjc4YzQ3MzQ2ZDliMGNmOWM5OSBsZWdhY3ktdHJ1bmsKKzQyODQ3IDM5MWY3NGM5YzI2MzY4MDk3MDM2ZmM0ZGQ0MDkwNDVjMzMyY2FhYTcgbGVnYWN5LXRydW5rCis0Mjg0OCBhZGJhYTllYmE5NzU0M2Q3YTExZDNlOTU2NTdlM2MxZGViMDg5MzRhIGxlZ2FjeS10cnVuaworNDI4NDkgNGNjZWY0Nzg4MWY3OWQ5MzhmOTEyNTk4ODE4OTI4YTA0OTNlZDEwZiBsZWdhY3ktdHJ1bmsKKzQyODUwIDJkMWRmMjRlMzNkZjcxMGU0ZDM2N2M4ODJmMWM2N2IwN2E2ZTFkMDkgbGVnYWN5LXRydW5rCis0Mjg1MSAzYjY3NWFjOWE5MjU0ZTEyMDVkMDI1MDQ2NzczNzIwNTk4YmM0ODk4IGxlZ2FjeS10cnVuaworNDI4NTIgOGNkMTUyNzQ2Mzk4Nzk3ZDg2ZDBlNzZhYTA2NjA3MjgzNzI5ZGFhNiBsZWdhY3ktdHJ1bmsKKzQyODU5IDZhYWFkYmFiMzUzMDE1NWVjMTlkODFjZGEzYmRhYmIzMDYxZmM2ZjEgcmVsZWFzZTI0LW1haW50Cis0Mjg2OCBmODBjYTcxM2JiNGJlYTM1MzkzOTBjMjExMzc1NjdhZWJlZDAxOWM1IGxlZ2FjeS10cnVuaworNDI4NzAgOWIxM2RhNjQ3YTVlYmI1NTJiYjg3ZjA4YTU5ZTAzYzZjZDkzNjE4YSBsZWdhY3ktdHJ1bmsKKzQyODcxIDhlMGYwZmIxNGQzNThiN2JmYzI1YWNiYWZmZmYzYzNlNGE1NjUxMWYgbGVnYWN5LXRydW5rCis0Mjg3MiAyMDRjMzA3YjAxY2U1N2VjMzdmZWIxYmZmM2RkYzYzMmVlNmFmZDNmIGxlZ2FjeS10cnVuaworNDI4NzMgZmUwNzM2Y2NiYTc1NTE4MDcyMzQ2MzczYjlmMzJjNTg3MTk4OWU0ZSByZWxlYXNlMjQtbWFpbnQKKzQyODc0IGNkNzJlYjU1ZDVmOGQ4Y2NhNzFiOTBiNDUyNGM0YTY1MDU5NjgzZWIgbGVnYWN5LXRydW5rCis0Mjg3NSA3ZmFjNWQ3OWQwNDNiZmFlOTcxMTFmMDU3NGJjOWE3MGIwZGI0YzJiIGxlZ2FjeS10cnVuaworNDI4NzYgNGY2MjhlY2MzMGNiMmViNGUyM2U5NDVlYzAyNWMyN2M5NzAwMWQ2YiBsZWdhY3ktdHJ1bmsKKzQyODc3IDhlYmY3OTk3YzZjZDU2ZTgzYzgzZDZmMzBlNDg1YTcwZTUzY2M1NDYgbGVnYWN5LXRydW5rCis0Mjg3OCA4OTUwNzRlNWVkM2FiODBhNDYzYjEwZTZiYTk4Y2QwNjU4ZmFmMWEyIGxlZ2FjeS10cnVuaworNDI4NzkgMWUwNDNhMTI1YmU2ODNmNWI0MTA0Nzg4MzU0NzFjN2JlODdlNjNjMyBsZWdhY3ktdHJ1bmsKKzQyODgwIDJkMjRmM2EzN2ExYjM1ZjUzNDNlMGEwMTExNjg1ZDEzYmVjYTYzNmYgbGVnYWN5LXRydW5rCis0Mjg4MSAxZTE5MTM5MmVjNWM2MTgyZWM2NmNjZTE2MzkzNjI4Yzg1MDBhNTczIGxlZ2FjeS10cnVuaworNDI4ODIgMTVkMzMyOTU2MTVmNmYwYTQ0YTlmZjg3ODA3MzEzZjBhNzkxOTBjMCByZWxlYXNlMjQtbWFpbnQKKzQyODgzIDllYjI0ZjkyYTc4NGJmMGNlYTY2Y2MyYmNjNjZjMWVkZWYyYTRmMGUgbGVnYWN5LXRydW5rCis0Mjg4NCBhNzM1ZGY1NTJmMDJkOWZhMTk5NjMyYjI0NDA0ODZlMDllYjU2Yjk0IGxlZ2FjeS10cnVuaworNDI4ODUgZTYyNzY3ZTY0ZGU4MTk2YzUyMTJmODRiZmMxOWY5ZjEyOGEyYzI1NCBsZWdhY3ktdHJ1bmsKKzQyODg2IGM5MTIxNTY0MmRjZDQ1ZGUwMGUyN2NkNzNmMWU1M2I5NDgzZjgyYWMgcmVsZWFzZTI0LW1haW50Cis0Mjg4NyA0NTU2NzJhOGY4Nzc2MWM3MGViNjRiMDNmODhkMDhmOGMwOGQ4MTE0IGxlZ2FjeS10cnVuaworNDI4ODggMjU3YWQ4OWQ5MmRmODQ1MjIzNmI4ZmVkNjdlYjgwYWU0MjU2YjBmYSBsZWdhY3ktdHJ1bmsKKzQyODg5IGIxNmU1MDQ0MTNjM2I4MzQ2YzU4YTE1ZmI4ZjE1YTMxOGM4NDBhNGYgcmVsZWFzZTI0LW1haW50Cis0Mjg5MCA3OGM5YWNiYjQ2M2MzM2FmM2FkNTZiOTY4NDEwMDY0MTUxNTliMTdhIGxlZ2FjeS10cnVuaworNDI4OTEgOWJiNTkwYTBiN2ZiMDRhNjU2MGM3M2UzN2VlMmM4YjMxYjZjYWRkOSBsZWdhY3ktdHJ1bmsKKzQyODkyIDY4YTA5NDNkYmJlNTMzZGIyOGNiMjZiN2NmZDE3MTVhZGZiNzhjNDEgcmVsZWFzZTI0LW1haW50Cis0Mjg5MyBjYTRiYmNiYmQwZDU5NTBmMTAxMWJjOTFkNjYwZGQ2MTZkMDIxOGViIGxlZ2FjeS10cnVuaworNDI4OTQgZTlhN2EyNzg0ZTE3ZWZiYmEyMzA4ZTFhY2FkNjY3ZmNiYmVmZDI4MyBsZWdhY3ktdHJ1bmsKKzQyODk1IGFjY2ZiMTU2ZjljYzY0MWVhZjRjMjNhMzllZTc0YTEyY2Q5MjVlMjMgcmVsZWFzZTI0LW1haW50Cis0Mjg5NiA4ZDQxZGRjMzFlNjFlNjNiMjJlMTI3ZjJhNWJlZGRkODgxNjQ2ZmIxIGxlZ2FjeS10cnVuaworNDI4OTcgYjIyYzQ4ZmU2MmE0YjI4NjQzOGRhNzQ0YTJhMzU1MjgyMmZlYmUyNiByZWxlYXNlMjQtbWFpbnQKKzQyODk4IDQ3MDZiN2ExMjU2YzI5Yzc0OTdlOTRiODZiN2I3NDk1MzcxOTNjMmUgbGVnYWN5LXRydW5rCis0Mjg5OSA2YTljNzE2NWIxN2JkYjdiODUxMzZlMWVlMTMxNThkYWMyODA2NDdmIGxlZ2FjeS10cnVuaworNDI5MDAgYjE3ZGE1ZTBhNjk3YTBmZmQxOTFkNWY4MGU4MTZlNjQ5MTg2YTQ5MyBsZWdhY3ktdHJ1bmsKKzQyOTAyIGNkZTc1NzMzNTQ5MjlmYmI5NjVlNTBiZjM2MjE3NGUxMTAwNDY4YjMgbGVnYWN5LXRydW5rCis0MjkwMyBkYjU2ZjU3MGIwY2ExMjA1ZjNlNDRiZWYwY2RjMWNhYzMzMDZlOGEyIGxlZ2FjeS10cnVuaworNDI5MDQgZDM0MmIwZGM0OTM0MTRmYjIzNGM1OTkyMjM4MjkxMjRlOWJmMzczMSBsZWdhY3ktdHJ1bmsKKzQyOTA1IDEzYjk4ZDBhN2JhYThiNmVmYmUyZDNmMWJkZTMwMTQxYWZhODQyOTQgbGVnYWN5LXRydW5rCis0MjkwNiA3Y2Y1ZDliYTVmOTdlYWEzYTQ4NjdhMDNiOWNiZjI5NDBiN2U5ZGZhIGxlZ2FjeS10cnVuaworNDI5MDcgYjQ4YmE3Y2Y0NTc2ZWI1Y2EyODk5MmU4Mjg4MDgwNDE3MjMxNDdlYSBsZWdhY3ktdHJ1bmsKKzQyOTA4IGY2YjdlMGMzODRkYTlmZGRjMzBmNTAyMDk5ODhjZDg3NDY2MTViNzUgbGVnYWN5LXRydW5rCis0MjkxMCBhOTY5N2RlNWUxOGJmZjQyMDEzYmUwNDg4OGJhODlmMzMwNDVjNzNlIGxlZ2FjeS10cnVuaworNDI5MTEgNjMyYTRkYWE4ZDRhZmUxNTM3M2QzM2MzMmNkOTM5ZmU5NDJkZjE5OSByZWxlYXNlMjQtbWFpbnQKKzQyOTEyIDRiMzQ3YzY1NDYzNWY2YTVlNTJmYzJlYmQxMzA3OWY3ZDNmNDMzNmQgbGVnYWN5LXRydW5rCis0MjkxMyA1NTJkZDVmZGI5ZDg0ZmM3ODExNWY0YmJlZDJjNTM0MGQwZjdhYjIyIHJlbGVhc2UyNC1tYWludAorNDI5MTQgZmQ3MzU1OTZmNjljMWNiYzM4MDZjZTA4Mzk5N2IxMzk1NGY3ZWI4MyBsZWdhY3ktdHJ1bmsKKzQyOTE2IDQzNWY3ZjNjOGI2ZGE0NzVlYWU1ZDQ2OWUyY2Q5NjIzMjMzMjFlOGEgbGVnYWN5LXRydW5rCis0MjkxOCA2ZjJlZGE0OTVkOWRlNmI2OGYxODUyZTBlYjQ0NjAzNGIzNzgxNTMwIGxlZ2FjeS10cnVuaworNDI5MTkgMjc5MDVlYmFkZGFiNWRkYWM1ZmUwMjk1NTFhNGU2N2M3NTQ1YmRmZSBsZWdhY3ktdHJ1bmsKKzQyOTIwIDAwMjNjMGNmOGZlYmMwYjlhZjNjMTI1MTY1MDE0MjAxN2ViOWU5NzkgbGVnYWN5LXRydW5rCis0MjkyMSA5MjI3YWUzZGI3ZWQxZTJhNGFmNDNiMmM3YzI4NzE3MjFiZjMxNjFmIGxlZ2FjeS10cnVuaworNDI5MjMgMTJiMDgxMjNlY2JjY2Q4MmUxODY0OGM5ODBlNTBiYjA1ZGQ4YzIyMSBsZWdhY3ktdHJ1bmsKKzQyOTI0IDRkZWRjMDVhZDZiNDc2NGFhNTJiZDUwNDQ5ODdlZTQ0ZGVkMWI3ZTIgcmVsZWFzZTI0LW1haW50Cis0MjkyNSAyMTAzM2JiN2VjYmUxOWExMTRlNzVlMzZhNzUxYjJmY2ZlYzMwNDkxIGxlZ2FjeS10cnVuaworNDI5MjYgNTZhNGNmMmIwMmZkZGNmZGQ3NjZmMzVjNzYyYWQzZTYwMWYwOTZmMyBsZWdhY3ktdHJ1bmsKKzQyOTI3IGNhMjlkZGE1NjNiN2E0NmE0ZmNlMzI3YzU4ZWIzMTQyYTFjMmExZmUgbGVnYWN5LXRydW5rCis0MjkyOCA5MDJlZjFkYzI5NzliNmNiZjgyODE3ZTM1YTM4MGQ0YTcxOGQ3NDBhIGxlZ2FjeS10cnVuaworNDI5MjkgNjllYjZkMWI5OWY1NmQ2YTY0NDk1MmNkMDgyNzZhYWI1YzVkZjQ3NSBsZWdhY3ktdHJ1bmsKKzQyOTMwIDNlMmI1NzQ3MDM4ZmZmZDQ2NTdmMzRjOTk3MGIzYmQxZDQ3N2M3NDMgbGVnYWN5LXRydW5rCis0MjkzMSAwYmY1MzYzOTAxNGE5NGJiM2UwODNmZDQxOTliOTAzMzQ0MDI2OGMwIGxlZ2FjeS10cnVuaworNDI5MzIgOTFhOWUyZTMxZTkzMGQ0NjE2ZWJmMDdiMmU5MzNhYTViNTdjMjc3YiBsZWdhY3ktdHJ1bmsKKzQyOTM0IGI0ZTg5ZDI5YmVhOGM0NWNmMmJhYWFjYzlkMWYxMGI4ZGMyZTEzNzQgbGVnYWN5LXRydW5rCis0MjkzNiBiMjE4NGQ5MTBhMDBmODE2OTYzNjQyOGRlNjkyNDIxMDAyMGM4MTkwIGxlZ2FjeS10cnVuaworNDI5MzcgMGUzNmU3YzY2YjhlOGE1YTNmZTI5ZmIxMDlhMDNkYzc5NGZhOGRkYyBsZWdhY3ktdHJ1bmsKKzQyOTM4IGYxZWFhZTdmOTYyZDNmN2ExYWFkMzEyOTRhYzU1MmEwMTI1MzExNTcgbGVnYWN5LXRydW5rCis0MjkzOSAxOGY5MTFkZGUzZTI0MDBkZGViMGJkZDAyZWNjZWVhZmNjNGJkODY1IGxlZ2FjeS10cnVuaworNDI5NDAgNTAyYTY4ODg3NzgzOTk5YmFmNTg0ODQxMDM1MGE4YzIwZDNlODNjZCBsZWdhY3ktdHJ1bmsKKzQyOTQxIGQ0MGI0OGRmODNlNzk0ZDlhMmMwNDAwYTk1ODUwMWZmMGIzMGNiMGEgbGVnYWN5LXRydW5rCis0Mjk0NCA2ZTliMzY4Nzg5ZGYwY2U1NjYzZTMxYTUyMzkzZmQyZGZlYzI2OTE4IGxlZ2FjeS10cnVuaworNDI5NDUgMzY1MmI1MTI4YjcwN2RlODMzMTE0MGI2ZWQ3MjNhMzE2ZDhiYmM4YiBsZWdhY3ktdHJ1bmsKKzQyOTQ2IDc5ZDViN2Y3N2FjNDU5NGYzMzdlNjQ0YzBmYzhmYTkzMTBjNWY3ODggbGVnYWN5LXRydW5rCis0Mjk0NyA5N2QzODc5N2I4YmMwOTdhYjNmMGEzYjczMWJlMWUwOWFkOTI1YzgwIGxlZ2FjeS10cnVuaworNDI5NDggZDNkMmY5ZmZkYzA2NTQwYzZiOWVhYTgzODZhNzFhOTE5YTVjODQwOCBsZWdhY3ktdHJ1bmsKKzQyOTQ5IDgwNTgwMDE4MWUwZTE5ZmU2Y2EyY2MwMWNiYTg5ZTdiZWY2YzFkZmYgbGVnYWN5LXRydW5rCis0Mjk1MCA0OGUwYTVlMzk0MDNiYTFmZjBlNDdjM2RjNzExZjk1NzY4YjUxZmI1IGxlZ2FjeS10cnVuaworNDI5NTEgN2MxN2U5MjIxZjk0MWY2YTFjZGQ0MDcxZGNlY2ZhMmJkZDYyMzAxZSBsZWdhY3ktdHJ1bmsKKzQyOTUyIGZjMTBmZjMyMmRmMWI3OTNlZDg1ZmM4MjQyNWE1YjM0OTJkMzhmZjYgbGVnYWN5LXRydW5rCis0Mjk1NCAzMjY2YTAyMGEwZGFiN2YwYTcyOTRiYWU5ODFmNmU0NGI4YWZhMjFmIGxlZ2FjeS10cnVuaworNDI5NTUgMTFmOGI1YjhjZTIwMTg3ODY5YTllOTdhMmJhMDc3NmVmNzVmZDRjNyBsZWdhY3ktdHJ1bmsKKzQyOTU2IGZhYjQ0YzVjOGRmNDJiOTUzMTFlNzU3ZTMwNWY3OTExYjhlNWQ3MDUgbGVnYWN5LXRydW5rCis0Mjk1NyAyYTkwNTZmNGMxNjQ3NjYzNDY2MDkxNjI3YzJkNmZkZDE0ZWRjMGUzIGxlZ2FjeS10cnVuaworNDI5NTggZGI0NjUwNDkzYzJiOGUzOTJjOTkyYWM1MjMyNDRmZGY2ZTFiZGY0NyBsZWdhY3ktdHJ1bmsKKzQyOTU5IGFlNTlmY2VkMmUxNDJkNGFiZmQyMmM3YjE5NzQ3MjM1ZWIzYjc3OTAgbGVnYWN5LXRydW5rCis0Mjk2MCBlYmViYTczNTM4OTQ3ZGYzMjcwMGY4MzdjODVkNDVjMjAxODMxOWVlIGxlZ2FjeS10cnVuaworNDI5NjEgZjEyMGY3NDBhYmU0MWU2NzdhNjFhZjM4MDk3ZmM1Y2ZlZTgzYmNiZCByZWxlYXNlMjQtbWFpbnQKKzQyOTYyIDA2ZTNmNjI3YWQ5OTU4OTg5YjU2ZWQ4OWEwZGNlZDY1M2FhNDYxYmEgcmVsZWFzZTI0LW1haW50Cis0Mjk2MyBlMjU2YjUzMDJiNTVjMzg0NzFlM2MyNTczM2M5NzFmYmUwMDkyYjhjIGxlZ2FjeS10cnVuaworNDI5NjQgZGY0M2MwNGQyNTU0NWVkNGJiZGU1YzAzZGU5NGQyOWNiNDFiMDdkNSBsZWdhY3ktdHJ1bmsKKzQyOTY2IDFkZDY1MjA0YzA5ZmU3ZDc5MWY2MTlmZWI1YjU0Y2FkMTE2NzA5NjkgcmVsZWFzZTI0LW1haW50Cis0Mjk2NyAwM2VmOTg3MDQzY2UwMGU5MDQ0OTBmY2Y5ZjY0MjkyODc0NDE4ZDhmIGxlZ2FjeS10cnVuaworNDI5NjggZTQ0NjVkMjczN2M0ZTc1ZGQ2ZTQxYzA2MTM1YTZlNGVhYWVkYzdmZCBsZWdhY3ktdHJ1bmsKKzQyOTY5IDY3MTg3N2QyMmExY2M4ODI4ZjI3M2RmMjJiMWM0YzEwZTYyMzYxYzQgbGVnYWN5LXRydW5rCis0Mjk3MCA0Yjg2N2U2NTRhOGE0Y2MwNzMxZWJjMzVmYWYxZjUzNTg1NTE5NmFhIGxlZ2FjeS10cnVuaworNDI5NzEgZjA2MTI1YTlkNDA2MzU3MTVkOTY4NTJlM2JmMzljZDg1MzMzNmVlMCBsZWdhY3ktdHJ1bmsKKzQyOTcyIDczNTFhYWI4N2U2ZGUwZmIzYmVjN2U0ZDllYjg1ZGY3MGZhNWMwOTcgbGVnYWN5LXRydW5rCis0Mjk3MyAwZjE5YTZmYzk3NTYwN2E2MGE0MDI2ZGY4YjNiOTNjMDExZjMzZTAzIGxlZ2FjeS10cnVuaworNDI5NzQgZmRiMDVjOGFkNTMzM2EzOTE3ODA3ZTU4NmVmNDRhNWE4M2FkMmJkYyBsZWdhY3ktdHJ1bmsKKzQyOTc1IDQwMjU2YjU0Yzc5MDYwYjYwNGQ2MDNkYzEyM2IwYTg3NzY4YjY5NzEgcmVsZWFzZTI0LW1haW50Cis0Mjk3NiA2OTEzZWJhNzhkNDA3OTEwYzJmZTZlOWQ5MWYyODc5MTdhYmVmNjFjIHJlbGVhc2UyNC1tYWludAorNDI5NzcgYzc3ZWNlNjY3MDlkMTdlNTc0OTU1MmUyMTgyMDkzMjM0M2E1M2M2MyBsZWdhY3ktdHJ1bmsKKzQyOTc4IGFiMDAzMTljMzc0NDg2MTA1NGNiMTBiOWVmYmEyYWZjNzkxZjBlNmQgcmVsZWFzZTI0LW1haW50Cis0Mjk3OSA5N2ZlZDYxOGI1ZTcyM2E0ZmEzYWNlNDM2OWIxOWUwY2VkODU5M2Y0IHJlbGVhc2UyNC1tYWludAorNDI5ODAgMWE4NDY1YmFmMDdkZDRmNzI5YWJlMjRmZWQ3NTg2NTc0YWJmZDU4MiBsZWdhY3ktdHJ1bmsKKzQyOTgxIGM5ZTQ5MTM4ZjY1OWIxZTE0OTkwN2MyYWU1MjY0ODM2YmIwYjM1MjMgcmVsZWFzZTI0LW1haW50Cis0Mjk4MiBkYjVlNzIwYjBjZWY5ZTI4ZmJjYzIzZTdmYzI0NzVhMGQyZmNhZTQ2IGxlZ2FjeS10cnVuaworNDI5ODQgOTU4NDI1MDA3ZWE2YThhNjkzNWQ2YTQ1ODgzZmQxMzIzNGY2N2U3NyBsZWdhY3ktdHJ1bmsKKzQyOTg1IDNiZTI0MjVkNzc0MDBkODg3MjdlNDk4NjcxY2YzMWI5OGEzMDUwYWYgcmVsZWFzZTI0LW1haW50Cis0Mjk4NiBjYjk4NGE4YjExMzQyZjBiZTE2MWViNDhkZDkzN2EyOTZmZmM5NDFjIHJlbGVhc2UyNC1tYWludAorNDI5ODcgNDMwOWIzZmI1YjQzNWVlYTkwMjFhMTE1OWM0MjhlMDA5YTQ3NTRjNyByZWxlYXNlMjQtbWFpbnQKKzQyOTg4IDMyYjg2OGE0OTY1OTMwOWM5NTkzMTljMjBiZjg5OTU1YTkzNmY4OGYgbGVnYWN5LXRydW5rCis0Mjk4OSAzYWQ0MmY5OWE2ZGJiN2ZkYzA0N2UwYzkwNjViNTEzNmJiOTY5N2VjIGxlZ2FjeS10cnVuaworNDI5OTEgZGRhNDI0MWY5YWJjN2VhMWVkZDI5Zjg3NWI1YTEyZWIyMTRlOWI2MiByZWxlYXNlMjQtbWFpbnQKKzQyOTkyIDNkN2FkZjg4NzRhYzU4YjgzODZmY2Y5M2FiZGY3NTNmOTA3ODFkMDggbGVnYWN5LXRydW5rCis0Mjk5MyA4MjkyZTNlNmVjZmVhOTdhZDI5ZTE3ZmNjMDAwMzZiMWNhMDBhMzYwIGxlZ2FjeS10cnVuaworNDI5OTQgN2ViMmMwZjBkMGZkNjY1MTI2ZDFhNWUyOGRmNWE3Y2I0YTViYzE3MyBsZWdhY3ktdHJ1bmsKKzQyOTk4IDlhMDg3MjQxMTBkMGJlYjk2ZGI4MWMzMjk2YjY4NjYyMGEwY2YzZWUgbGVnYWN5LXRydW5rCis0MzAwMCAzMjEwM2M1ZGJlZmFjM2UyYmNkYmZkNDY5MjgwOTJiMDczMGZhMTRmIHJlbGVhc2UyNC1tYWludAorNDMwMDEgYThmZDkxY2QzMTdhY2JiODkxMDhjZTQ2NTcyNzUxMDMxNThlNjVlNCByZWxlYXNlMjQtbWFpbnQKKzQzMDAyIDE1YTQ1ODE3MWViMDA4OTA2MzVhOTExZGE2NGM2MmRkOWVjMDYyMjUgbGVnYWN5LXRydW5rCis0MzAwMyAwYzA0MDgzNTJlZTY5Y2FmZWRjYWE0NjVjZmExYzAyN2UzZTNmNmJlIGxlZ2FjeS10cnVuaworNDMwMDkgMDM1Y2M4NDE0N2ZiMDRlNDg5ZmEwN2FkOTJiMWFlY2M0NjQxOWJmMiBsZWdhY3ktdHJ1bmsKKzQzMDEwIDg1MTg4ZTViNDkxMmY1NGI3MTAwNDhiYmM2MDIwOTkyN2Y1OTliMTIgbGVnYWN5LXRydW5rCis0MzAxMSBiNWExMzU3MDU5MmRkYzk0NzA3YzZjOGYyYWJiYTVkODEyYzkxOGMwIGxlZ2FjeS10cnVuaworNDMwMTIgNmIxYjMyYTg1ZjQ3NjAxZDhmYzk2YTk3ODAzYTA5ZWQ2NGQxM2U2MyBsZWdhY3ktdHJ1bmsKKzQzMDEzIDI5ZTZlN2ExMDdkZTM5MjA1YzU0MGEyODY3YzRjMjZjODY4Nzk4ZDQgbGVnYWN5LXRydW5rCis0MzAxNCBiZGFmY2EyMTkyZDM3ZWIxZjFhZjMwMDk1Zjg1NTViZTM5YjRkYWQ5IGxlZ2FjeS10cnVuaworNDMwMTUgOGMxYmY3OTk5NTJjZjFkMDM0NWIwNzJiYzBkYjQyYjNhZGI3NzMyMyByZWxlYXNlMjQtbWFpbnQKKzQzMDIyIDk1NDY5ZTk3ZmQ5MDAwYWIyOGM3MGY5OTY0YjcyNzlmZTFiMjAxOGEgbGVnYWN5LXRydW5rCis0MzAyMyA0ODA4ZWU2MmIxNTZhNjE5YTU5YzJhODI1NDg2NTEyYTE5YmRlYWJiIHJlbGVhc2UyNC1tYWludAorNDMwMjQgYjNjMzY0MGQ5MmY4NGExMmUwNWUyOTg0NTgxNTVjMDcwZjM0NjEzMyByZWxlYXNlMjQtbWFpbnQKKzQzMDI1IGM4ZmZjOTEzZDAxNDMwNTdjNzUwMzNjZmNlMTIzYzAyNGI1YzY3NTMgbGVnYWN5LXRydW5rCis0MzAyNiBmZjMwMjQyNTlkOTFkNzJiYWU3YTdjM2M3Y2VkZTIyMzIyMGU4OTNiIGxlZ2FjeS10cnVuaworNDMwMjcgZTJhYjc1NWFlNjg1ODBlMGMwMjMzOGI1ODkxOGViOTEwM2JlN2YxZiBsZWdhY3ktdHJ1bmsKKzQzMDI4IDIyZmZmMWYzYzc4YWU1NDUxODgxZDA3MTk2NWEzMjNhOTM5NmNlY2MgbGVnYWN5LXRydW5rCis0MzAyOSBjZGU1OGNkMDdlN2Q4NTA0M2JlZTVmMzJiNjhjOGU0NzgyNzJiZDZkIGxlZ2FjeS10cnVuaworNDMwMzAgNGE4OTZmYzEyMzg0MjcyNDE5MzliZjgwZGQ0MGJjMGZhMDQyZDRiZCBwM3lrCis0MzAzMSA1NzBjNjE2YWNmMGMxNGVjN2E4ZWYyNzQzN2UxNDM2ZjNiMjliYzIwIGxlZ2FjeS10cnVuaworNDMwMzMgMzc1Y2UxYzA0ZTY2YjU5YjFmNzEzZDVhNTQzNmQ0ZDRjZTViMDg3MyBsZWdhY3ktdHJ1bmsKKzQzMDM1IDQ5YzZlYjY4ODkwNmIxZGRkYWJmNTc4ZjA4MTI5ZTY3MjlkNjE1MWYgcDN5aworNDMwMzcgYWJhODE0YWE0YzZhN2JkODJkMWEzM2YwYzRjMDhlMWM4MTE5ZGZmNSBsZWdhY3ktdHJ1bmsKKzQzMDM4IDY5Y2JlMGZiN2E2ZDIwNGIwMTlmMmJjMzI2NzMzNGU5MTIzNGIxODEgcmVsZWFzZTI0LW1haW50Cis0MzAzOSA4ZThkMGUwM2YwNzZhMjQyYzJiNDA3Y2Y3OTVkMWU1MzBlODNmYTg1IGxlZ2FjeS10cnVuaworNDMwNDAgMjUxZjkyMWNjODFkY2MxZDlhNTVmMjVmYjFjNjQxZmY2MDZiYjIxYyBsZWdhY3ktdHJ1bmsKKzQzMDQxIDVmYjU0ZWQ4NTQzYmIwNzNiYmY4OTM0ZDMwNWZkODg2MWI0NWUxM2EgbGVnYWN5LXRydW5rCis0MzA0MiBkOTY5ZTMzOWFjMWU1MzdmZmM2NDVjMGJiZDI4MTVhOTBiNmIxMWQwIGxlZ2FjeS10cnVuaworNDMwNDMgZjkxNDYzMGY0MTljMWM0ZTY4MTIyZmI2ZGM3Y2E1NzRlZDI0YTI1NyBsZWdhY3ktdHJ1bmsKKzQzMDQ1IDdmYTRjMjlkNzAzMDE1YTc5ODE3OWUyZDgxYmY5NjBjOWExMDk5ODIgbGVnYWN5LXRydW5rCis0MzA0NiA5ZDNhMmNkZTBkYmQzMGY5YzcwNWUxMDgzMzZmNjNkN2I0YjAyMjE1IGxlZ2FjeS10cnVuaworNDMwNDcgNDUxZGEzYTUyOTEzMTZkYTFlODg3NTlmNjJhYTQ5OTVlZGViYjUwMCBsZWdhY3ktdHJ1bmsKKzQzMDQ4IDE3OTA4NDg5OWQ5NjliMzc5NTU2ZGZlNjBjZWNkMzI3MDczM2Q2MDMgbGVnYWN5LXRydW5rCis0MzA0OSA4NmYxMzMwMWMzZGI0MTRjZmFkY2E0NTliZTFjYzAzZTdjODk3NjVmIGxlZ2FjeS10cnVuaworNDMwNTAgNTVlNGY0NzY1NzYzZWNmNjYyMGFjM2NiOWQ3MjliMmY1ZWM5NWQzNSBsZWdhY3ktdHJ1bmsKKzQzMDUxIDViMzhkYzU1MWY4NmY4YzViZWIyMzNhMDcwYzRlZThjYmZlMDkxY2MgbGVnYWN5LXRydW5rCis0MzA1MiA0ZjQ0NDEyZTlmNmMxMjdjYjVhMjAwZGUxN2U4YmI4OWQ3MjVmNGExIGxlZ2FjeS10cnVuaworNDMwNTMgM2JmMjMwNjFkODZjZDk0MzVmNTZjNDk0MmMzMzhiMDNmYTdlMmE2NSBsZWdhY3ktdHJ1bmsKKzQzMDU0IDY3MzhmN2IyODJmNjVjNWM5MWMwNWM0MjViZmYwOTRhMWYyNDgwOWMgbGVnYWN5LXRydW5rCis0MzA1NSAzNTRlMjJmM2RhYzZmMzIyZGFjODQ2Zjg2OWQyZTZiMzU3M2Q3ZjE5IGxlZ2FjeS10cnVuaworNDMwNTcgMWRkZjBkODFkNmM1OTBjY2RjYjMzNTIwN2ZlM2E0ODc3MzBjNGNhNyBsZWdhY3ktdHJ1bmsKKzQzMDU4IDYxNGQ4MGRmZmMxZjg4ZTIwMGZjOTcwNmE4ZTc3YjE5ZmZmYTRlZTggdGltLW9ibWFsbG9jCis0MzA1OSA2ODU4NDliZDkwNWM0YWIzZDNiYzYyNTIwMzUwMzQwYWJhOTMyNTEzIGxlZ2FjeS10cnVuaworNDMwNjEgOTc4N2Y4MzBkMDI1YjU4NWM0YWM3NDRlOGNjNzM4NzI3NzBlZjk4NCBsZWdhY3ktdHJ1bmsKKzQzMDYyIDYyNDA5YTFiYzRkYjMyZTRmZTBjOTRmZTkwZmZmNjJiMGRiMGY0ZTcgcmVsZWFzZTI0LW1haW50Cis0MzA2MyBhYjE3ZGE2ODQyNmJhODU0MjQwYTBlOWY5MTUyODVkMzNmN2VhOGM0IGxlZ2FjeS10cnVuaworNDMwNjQgNWQyYWI0ODIzZjNjYzdmZTJmN2E3MmZkZTE3YmYwOTg2Zjc0ZDQ1ZCByZWxlYXNlMjQtbWFpbnQKKzQzMDY1IGYwYjBhYTM1N2Q0OWU0MzQ5YWY1YjQ1ZDlhZDdmMGQ1ZTk1ZWVhM2YgcDN5aworNDMwNjYgMjUwMDdjMTU1NjY4ZGQ3NGUzZDEyY2Q2MmZmZTk0NDgwMWJhZGM3MSBwM3lrCis0MzA2NyA1NjBhYzFiYTk5Mjc0ZmJlZDk4N2RhMmZjNjAzZWIxNjJlZDRiODMxIGxlZ2FjeS10cnVuaworNDMwNjggNGFlMGJiZmM2ODY2ZTE5NTQ3Nzc5OGFmNzNhNzE2NGJhZDI0ZjMxMSBsZWdhY3ktdHJ1bmsKKzQzMDY5IGQ2ODM0NGQ5MzJjNDU4Zjg3Njc5MTFhNTI4ZTBhNDUwMDZjNTY3OGMgbGVnYWN5LXRydW5rCis0MzA3MCA4NWVhZjBjYTY0ZjJlNGZmNmMzZDY0YjMxMDc2YWRhY2VlNjgxOWZiIGxlZ2FjeS10cnVuaworNDMwNzEgN2RhZDgzY2E3MDJkYjJiMDlkZmUyN2MyOTE3ZDZjMTE2N2UyMjQyOSBsZWdhY3ktdHJ1bmsKKzQzMDcyIDQ5MjBiZDQ5MmQ5ODZiNWFhZDAyYTFlZDZkNjg1Mjk5ZGI4N2E2YzIgbGVnYWN5LXRydW5rCis0MzA3MyA0NzI3ZjI2MGY2ZjhkOTY5MzVlMGRjOWM3NWNmNDU5NmIwMGMzNjAzIGxlZ2FjeS10cnVuaworNDMwNzUgMGY2YjRjZWVhNTgwNTM4YzgzODY0YTA2MzI3ZjZjMjJkZjRmN2NhZiBsZWdhY3ktdHJ1bmsKKzQzMDc2IDQ5NTM0NGZlZDI1NWI1YWI4ZDFiMzNhYmE5ZWExOGY3MzAyZTVkY2EgbGVnYWN5LXRydW5rCis0MzA3NyBmNzBjMDM2NDg5ZWM0MzE3ODA4YTg0MTI0ZDA4NDU0OGViNWQ5OTExIGxlZ2FjeS10cnVuaworNDMwNzggMDM4OTRhN2EzMmVjZDNmZmY0Mzk3ZmEzZGEwYzIyMWQ0ZDFmZTM5YSBsZWdhY3ktdHJ1bmsKKzQzMDc5IGEyYTYwNDkzMWZmNjgwNDdmYzYwNmNhMjg4MDgwMWRhMmFjMTkxOTIgbGVnYWN5LXRydW5rCis0MzA4MCAzMDIwM2UyYjk3ZDczMmQ1ZGZmNjA5NWI5YmU4YTYxYjc0MWQ1Y2JmIHJlbGVhc2UyNC1tYWludAorNDMwODEgOTJiZTJlMTE3MDMzMTk1OGM1NWRiYjAyZmYwOGEyOTk4NmY5OTQxOSBsZWdhY3ktdHJ1bmsKKzQzMDgyIDgyZjcwMGZjNGRlMjBkZTU4YjdlZGJiY2VjNmU0M2RhMmE2ZGM3NzIgcmVsZWFzZTI0LW1haW50Cis0MzA4MyBhMjUzOTU4YmZhNGM0MmIzMDJkZGRlNGM4OWE2NWY3ZDM0ZTJiMDEyIGxlZ2FjeS10cnVuaworNDMwODQgZTcyMWQ2OGRiZjZmMTI4MzdkOGM2ZWRiN2I1ZmYzNmQyZTg0MzhhNCBsZWdhY3ktdHJ1bmsKKzQzMDg1IDNiMzA3MjBmYTU3YTExNGIyZjBhMDgyY2Q0YTE0Mjk2N2M3NWIyYTIgbGVnYWN5LXRydW5rCis0MzA4NiBjMGFlYjEwNjU0YjJmNjY5Y2UzZTNhMWUyZDBmMWI1MzAyMmRhNTJiIGxlZ2FjeS10cnVuaworNDMwODcgZmZmNGVlY2RlZjQ1ZjY0MThkZTQ5ZDgxZWMwZGUxYzcxMWRmN2RkNSBsZWdhY3ktdHJ1bmsKKzQzMDg4IGJjZTVjN2FlNjU5YTUyNTIzZWMwNmJhMDc3NTA2ODZkMjVlODk2MWIgbGVnYWN5LXRydW5rCis0MzA4OSBjNDQ5OTQ0MDY4ZDIyOGY2ZTM0NDc5NjNjNGUxYjNkOTM0ZThmN2VlIGxlZ2FjeS10cnVuaworNDMwOTAgYmZiNzRhNDIwYWM4ZWIzNTE1MmQwNzYyZDk1MzdkNDBiNDBmN2FjYyBsZWdhY3ktdHJ1bmsKKzQzMDkxIGU0MTVmMWE4NzRiMTA5ZWZiNDcyMDNmNTcwY2E1OWYyNGU3YjEyMGMgbGVnYWN5LXRydW5rCis0MzA5MiBhOWMzYzkzODI0NjUzZTA2ODkyMWY3MGJjMzgxNWZmYjc1NjNiNjQwIGxlZ2FjeS10cnVuaworNDMwOTMgNTNjODA2ZjdhMjUwODZjMjQzZjdlOTdjOWVkMmZhNGIzYWVlNWNkOSBsZWdhY3ktdHJ1bmsKKzQzMDk0IGJkMzcxNTM1M2EwOWI1NjI2Njc5NDUyYjQ0MDMwMTk2ZTcxZDk3ZjYgcDN5aworNDMwOTUgN2FkYTE2YTE0OTY4Njc0NjIzMTQzZDJkMDgxMTY1OTA1MjZjZWQ3YyBwM3lrCis0MzA5NiBjZDE4MThlZTdlYTlhOGNlODM5YmYxYjc2MTAxZmRiZmNhYjdhNWM0IHAzeWsKKzQzMDk3IGZmMzgxYjM4OGNmZjQyYzk3NTQ0ODdmNmZlYTZmYTY2YmI2YzIxN2QgcDN5aworNDMwOTggMDgxYjRmMGU4MWI3YmFhNjgwMjU0YTMwYjcyYzQ1NDUxZDcxYjc4ZCBwM3lrCis0MzA5OSAzMzQyYjNiNTg2MzA0MDUzYTc2YTBmNjNkZDk1MGU1MTJiNmNlYWVjIHAzeWsKKzQzMTAwIDNlMWVlNmUxNmM4MWY5MTJmNjkxYzI0NGFmMTQ2NmEwZGI1MTdiOWEgbGVnYWN5LXRydW5rCis0MzEwMSBjMDQ4YTA5ZDA2ZmY4Njc0ZTA1MDk0OTRhNWU1ODZhYWNlMjczYzA0IHAzeWsKKzQzMTAyIDExODM5Nzc2YzY2YzMyNDM2NmE3N2MyMDg5MWNkMWZjMDA2MDc4NmEgcDN5aworNDMxMDMgNDA1MTFiZjU5Mjk3OTgzZTQ5Njc0YmVmOWEyNzExZWRmYjg2OTkwZSBwM3lrCis0MzEwNCBhMDE2NzJhOTZkNDcyNzA0NjM2NjBiZjU1NzA5Zjg1ZjlkOTY1ODUzIHAzeWsKKzQzMTA1IGNlMjY3ZjY4MDY1ZTIyMDkyZjE3OGVjMTc2MzY0YTdmYzMyYWM0NGMgcDN5aworNDMxMDYgOWVmM2ZhYzVkMmMwYTJhOTQ5NjIyZTU0Zjk5MzEwZTA5MGIwMTA0ZSBwM3lrCis0MzEwNyBlYTViNjZhZjYyNDVhNDA5ZTJjMjNkNzY2MjE1Zjg3ZDRlODM1MDlmIHAzeWsKKzQzMTA4IGZkYzA1YjE2NzIzNmU3NTcyMTdkYzU4ZDE1OTNlNzBkMWZjOGE1ZGQgbGVnYWN5LXRydW5rCis0MzEwOSA1YWVjZWRjOThhZjY1NTllMDQ1MzlhYzU5MzU0MWU3ZTBlNDU0ZTJlIHAzeWsKKzQzMTEwIGY3ZmQxMWE3NWE2YTRkY2I4YTIzYjBmNjBiM2NiNDc2YmQzMmIxMTQgcDN5aworNDMxMTEgYzJjMTI4MTRmODU0YWJmMGUwODBhMTE1ZmJhYTQ1ODA4ZmI3YzY2MyBwM3lrCis0MzExMiAyYjA0YjljN2I1OGViMmQwMDZlNWI3NjExOWUzNWY1MWQzMTgzNjJhIGxlZ2FjeS10cnVuaworNDMxMTMgZjAyYTAzMjU0YjkxZTc3Y2E3NDAyYzU4ZjU3NzMxODBmMDRiNzUwNiBsZWdhY3ktdHJ1bmsKKzQzMTE1IDIwM2MwNmZiYjA3NTQ0NzQzYzJkNmRkNGFkZGNiNTM1MjQxYTkzMmYgbGVnYWN5LXRydW5rCis0MzExNiBkN2QxMmQ3ZmNjMzkyZjk3OTZhYzdmOGRlOTc5MzgwYjg1NTQxMGQwIGxlZ2FjeS10cnVuaworNDMxMTcgMjMwNDVmMWUzOWYyZjkxYzhmZDFmYTQ1M2UzNDAxODJlZDM4NjRiMyBsZWdhY3ktdHJ1bmsKKzQzMTE4IDY0YzgzZTBmNjgzZTU2NmFjNmRlMDA5NmUyYjYyNGNkZjZlMjNiYmUgbGVnYWN5LXRydW5rCis0MzEyMSBiMDFjODBkODgyNjdmZTUwYWZiYjM0Njc0YmNmM2NiMzcwYzVmOTgxIGxlZ2FjeS10cnVuaworNDMxMjMgNGM4MDRhYjg3ZWFkYWMwYWFjNjAyNGY2YmNiM2M2NDNiNTJhZmVkMyBsZWdhY3ktdHJ1bmsKKzQzMTI0IDFmNDU0OTg2NWFhZGJlNTU0YWVkNDI1OTVhZWQ4YWVkMWIyNTZhNDIgbGVnYWN5LXRydW5rCis0MzEyNSBlNDNkNWQyY2E1MGFiY2ViZjRjNjdlZjZhZjgwNjQ3M2E3MzEyMDVjIHJlbGVhc2UyNC1tYWludAorNDMxMjYgZGQ0OTg0N2E2MGQzMDBkMTc2MGYxNjA3YzUwNDRkYTI2NTFkZTcyZCBsZWdhY3ktdHJ1bmsKKzQzMTI4IGIzM2Q5MTY2ODY5NjE1Y2YyOTc0ZGM4N2U4OTJiNjk5MTg1NmNjNjMgbGVnYWN5LXRydW5rCis0MzEyOSA5OTQ5MzFiNmI4NzU0ODkyOWJjMzYxMmNkOGM2NTVkMjY1MTJkNjBkIGxlZ2FjeS10cnVuaworNDMxMzAgNDNjMzkzYjJmZTlmYTQ3OWQwN2RiNGI3OWNlZDAxZWE1NThjMzU0ZCByZWxlYXNlMjQtbWFpbnQKKzQzMTMxIDgxZDBlOTMyMDhkOWU4MTA1ZDI3MGRjNjY0MmRlZDRhNjJmMTVjY2UgbGVnYWN5LXRydW5rCis0MzEzMiBkMTM0MzBhOGJkMmNlMjU5ZWU5NTI4NWUzZDhhODVhYmE2NTBiODhjIGxlZ2FjeS10cnVuaworNDMxMzMgYjU1ZjUzMDQxOTY1MzU5NjQ0Y2FiZGM5ZmJiYzUyMzg0MDg1ZDRlYSBsZWdhY3ktdHJ1bmsKKzQzMTM0IDY4NWUyMTIzODY0ZDNmNmFmMDRiODY3Y2M5MDY5YTkyMzE4NTU4NjUgbGVnYWN5LXRydW5rCis0MzEzNSAzODQwMGI2NjI0MDQ3NWEyOTU5ZDIxMGIyZTBmMDUyMDI2YjE0M2M3IGxlZ2FjeS10cnVuaworNDMxMzYgM2Y5MGE5M2ZmNWQwZWE5MTg4MjRjNTFmMDgwYWM2N2NlZDNhMWVlNCBsZWdhY3ktdHJ1bmsKKzQzMTM3IDkyY2I0YTdmYzU1NGVmZmE2OTE2YjcxYWJkMjI1YTZkYjlmNGZlYTUgbGVnYWN5LXRydW5rCis0MzEzOCA2NzcxZjBlMDhiNjBhMjM2ZjIxNmU2NjdmZWI0MTMwYjEwOGY5ZDgwIGxlZ2FjeS10cnVuaworNDMxMzkgOTI5NTJhYzhlODkxMWYwNjdmNTZiZWJjNDlhY2VkOGQ5NTc0Y2FmZSBsZWdhY3ktdHJ1bmsKKzQzMTQwIGJiNDkxZTU1ZmI0YzI0MzNhNTFjY2I0ZTFlZWZmNTYwNzg5NDRmMWQgbGVnYWN5LXRydW5rCis0MzE0MiA4NDM5MjhjNmIyNGNkZGY2ZGI4YzI1ODdjZDI3OWNmZDgzOGFjZjAzIGxlZ2FjeS10cnVuaworNDMxNDMgNmMzZWMzNzM2YzUxNGRmN2FjMWRkMDgwMWY1NzRhMDhiOWE5YjkwNiBsZWdhY3ktdHJ1bmsKKzQzMTQ0IDk5MTBmZjY5YWY5NzNiZTMzOWMyYTc1Nzk4YjBiMGUzNDViMWFlYWIgcmVsZWFzZTI0LW1haW50Cis0MzE0NSAzYjdiMjk1Y2NhOTAyYmY3MTBmZmI3MzNkZWRkZTUwNzFhNmM5YjY3IGxlZ2FjeS10cnVuaworNDMxNDYgYzAxMWFmNGEyYjAxZmQyNTE3ZWVlOGUzZDJhMjNlNjVhOTJkZTk1NSBsZWdhY3ktdHJ1bmsKKzQzMTQ3IDA3YWI1NTc2MjViOWNlZWZlZmM3YWU2NDM4ZDVhMzk2ZWE1OTdmN2EgbGVnYWN5LXRydW5rCis0MzE0OCAyMzM1N2I4OGMwM2VhZmE2YmUyOTg1ZGRmNTU2Y2UxNTA1ZTM1YWQ3IGxlZ2FjeS10cnVuaworNDMxNDkgMWQzMDgxY2IzZWE2NzM1YmIyY2U2Y2E4YTk1N2JlZmJhMTY0NzM3YSByZWxlYXNlMjQtbWFpbnQKKzQzMTUwIDdjMjJiNWFhMzQzODcxZGI5NGQ1ZWU2MzFmNGUwYWYzYTc3NjRkYmMgcmVsZWFzZTI0LW1haW50Cis0MzE1MSA4ZDQyZjY2MWZlYzgwMjllMWEyMGMzNDNkYmJkN2IxOGE3YzY5OTBmIGxlZ2FjeS10cnVuaworNDMxNTIgNzc1Y2Q2OWY4YTIzN2RhZmVkYjk0NzI5ZTZhMTJmNjU4OTA3OTNhNSBwM3lrCis0MzE1MyA2YjUxNmYzMjFkODUyNGNiYmVlMTRkMWU2NjE3OTg0MmM4ZjliMWI5IGxlZ2FjeS10cnVuaworNDMxNTQgYjMxYjdlYzVhNmI0Mzk0MGNiOGU5MDEwYmJlOWMzMmE1ODg4ZTgxZiBsZWdhY3ktdHJ1bmsKKzQzMTU1IDNkYWJkOWJiNDk2ZTlhNjhjZDZjZDk0Yjc2MjI5NzNmYzc2NjQwNWEgbGVnYWN5LXRydW5rCis0MzE1NiBiNGQwZjhkOTUxNzlhNDZiY2NiNDlkODBkZDU2MTNkMDVhZTBjMjRkIHJlbGVhc2UyNC1tYWludAorNDMxNTcgZGU4ZjVkMWNkZjRkOTU4MjRhZWQzYjBlMzNkNzhkNzJmM2I5YjUwNiBsZWdhY3ktdHJ1bmsKKzQzMTU4IGQ2MmIxMzQ4ODk0M2Q3OGM5YzhkODE3MzIyOTMyMzJhODRiNzkwNDcgbGVnYWN5LXRydW5rCis0MzE1OSA4NTJkZTMzZWQ0MjdkNmE0MzBmNjFjZDg5ZDM2MjJkOWEzOTA1YThhIGxlZ2FjeS10cnVuaworNDMxNjAgMmRjNjNjZGIwOWNmMGRhODNiZjE0OWZmMzUwNzBhMmQ0MzMzNzI5OCBsZWdhY3ktdHJ1bmsKKzQzMTYxIGRiOTg2YmUyYzAwYzVkMDNhNWRlNTQ1YWU2MzFlZDgyYzA1Y2JkNzggbGVnYWN5LXRydW5rCis0MzE2MiBlODBmZGIzYTBmNDBhOTYzOWI0ODFmYWY4ZjY4ZmQyMWFiYWY0MmMyIGxlZ2FjeS10cnVuaworNDMxNjMgNzllNGRiZTRiZGM2YTYzODgwNGM2ZjU1Y2Q5NGJiMzJiZTdkNzZmZiBsZWdhY3ktdHJ1bmsKKzQzMTY0IGEwNmM5ZmQyNTEyMDhjYWQyZGVhZGJiNTllOTQ1YzBkODNiZGU4YjkgbGVnYWN5LXRydW5rCis0MzE2NSBkODYwMzExZjhhOTcxZTcyYTllYjMzMjUyOGZmZTM5NGNkZGM2MDU4IGxlZ2FjeS10cnVuaworNDMxNjYgMzYwNTIxOGQwM2ZhMDQzN2FlNGYzYjMzZWRhMTFhNWQxNTJiYWZiMSBsZWdhY3ktdHJ1bmsKKzQzMTY3IGRlMmI5NDJmMzdmOTQ4ZTBjYzZhZjZkYjRiZTliOTFiM2RkZjUxOWYgbGVnYWN5LXRydW5rCis0MzE2OCA1YTc3NTBkYjA5Nzc4ZTAyMjdmZWExZWYyMWI4YWE5ZjA2ZDRmZWEzIGxlZ2FjeS10cnVuaworNDMxNjkgYTBhYzc3MjU5Yjk5Y2U3ZmM2OWEwMjdmZGNmNjM4MjJlMjcxYzUyNCBsZWdhY3ktdHJ1bmsKKzQzMTcxIGQ4NTkyMjc2YjEzNzQ1YTkxYjhiMzRkMzQ4MWQ2ZDI3NDI1YjY2NGMgcmVsZWFzZTI0LW1haW50Cis0MzE3MiA0OTA3ZmI4NzljZDljN2E2Mzg4YWEzNzliZjc2NzgyMDU2YTA3ZGVkIHJlbGVhc2UyNC1tYWludAorNDMxNzMgNjQxMmVkNjk3NWRlZWU4ZmE4ZDk5ZWVhYjU1OGYzOWYxYzM2YWQ1NCBsZWdhY3ktdHJ1bmsKKzQzMTc0IDg3ZWQxZjNkMjcyZTRlYzMyMDBmMGY5NThlZjI3NTE1OWU5ZjJjMzIgbGVnYWN5LXRydW5rCis0MzE3NSA4MmFlYjU0YjBiYWFiM2YxZDY4MWE3MDdjMzM0MmJmMDA1YjUyY2NkIGxlZ2FjeS10cnVuaworNDMxNzYgMTM2YjQ1N2I1NDNhYjY1Nzk2YmI2ZmE2NDFlMWIzZGQxYzA5NGZiOSBsZWdhY3ktdHJ1bmsKKzQzMTgxIGY3OTkzZGM2YmYyNjRmOGJiMzA5NDg4MWQ3ZjAzZTViMmVlMTBkN2MgbGVnYWN5LXRydW5rCis0MzE4MiBkYjMxN2U0MzU3YWQ1NGU2Yzc3MGNlMmY2NzVjZjc3Njc2NzlhYTIwIGxlZ2FjeS10cnVuaworNDMxODQgZGIyOTdiOTQ0MmU0MGNhNTY2NTdhZjEyNWNjMDI0ODM1YTNjNzYxMSBsZWdhY3ktdHJ1bmsKKzQzMTkxIGU3M2IzNWQ4MTYxN2JlYjFkZDI4MDEyNDljODY2YWRhODA2MmRlNmIgbGVnYWN5LXRydW5rCis0MzE5NCA4ZGM0NGU5ZDVjOTM5YjgyZDYyNDExZjRjMjFjZTRkMzVkZGE2NmY0IHAzeWsKKzQzMTk1IGE5YzFlNTJhZGRmMjhiYmFkODAxYzk0Zjc0NzE3MDY3ZjIyYmY1NGQgcDN5aworNDMxOTYgMjUxZWNlYzA0ZjFiZmZkNjM1YjU3MGYxZDZlOGQ4M2ZmZDY4YjgzOCBsZWdhY3ktdHJ1bmsKKzQzMTk3IGUzNDUwNmU0NGU2NzY4MmI3ZDMzMjMzNTBkZTU0ZmM4YTc0ZjYzYzAgcDN5aworNDMxOTggNTJkZDQ1ZGIxZTg1MDQ3YWJiY2MwZTU2Zjc4OGUyYWJlODEyMTMxMyBwM3lrCis0MzE5OSBiYWY2NWRjNjM5YzE0ZmUwZTM5NTJmN2I1MDRjZTdhZjAwOTM2YjVlIHAzeWsKKzQzMjAwIDA4Y2Y4YjllYzIwODcyMzdiNGIyMzE4Nzg2NGEwOTE3YmY5MDI5ODAgbGVnYWN5LXRydW5rCis0MzIwMyAyZjRhNGY5NmFjZDFlNmY0ODI5YzE4ODMyODQ2Nzk4NGQ2YzhjZGU1IHAzeWsKKzQzMjA0IGFhMDM5ZGU4OTFjOTg3ZmU2ZmUwNDVlNTk4OTM1ZmE0OTMxYjk1YTcgbGVnYWN5LXRydW5rCis0MzIwNSAwYmI3NzAwNTkzZjc1YTIxZTdhN2M1NmE1NzgxYjk2YmZmNzAwMjAxIHAzeWsKKzQzMjA2IDZlOTI5MjM4ZTNhYzQ3YjE4MjlmMzE1OTBlZmVlYjEwMjdlNTJiNzUgbGVnYWN5LXRydW5rCis0MzIwNyBjOWVlMzJiNzkzZTc4ODQ2ZWQyYzY0NjhkMmIyNzM5ZDJkY2ZkNTk3IGxlZ2FjeS10cnVuaworNDMyMDggZTcyZDFjN2M4NTU0ODkwOWMyZmNmZTlmZGQxZmM4MmI1OTliNmM3YyBwM3lrCis0MzIwOSAzZjgyNDE0MWVlYjk5ZWJkODM0YWRkMzExNzJlYTFhNGU3YzljZWU1IGxlZ2FjeS10cnVuaworNDMyMTAgN2RhZGQzZmM1ZWZhYzZiYjBjOWRhOTkxMDNmMTk4NDhjNTc3YjZmZiBsZWdhY3ktdHJ1bmsKKzQzMjExIDcxYzU2OTRlMzQyM2IyNDVmMjRjODI1NTgwZTc4NWJjMjJjZWZmYjYgbGVnYWN5LXRydW5rCis0MzIxMyA2MTc3NDMxMTQ2MDBiYjRmM2JiYzliOTE2OTRmNWYyODdlMDkxZjRkIHJlbGVhc2UyNC1tYWludAorNDMyMTUgNzY3ZTZiZTU4OWEwNDBkYmU1NDZkNzZhZTYwOTQwZmQ1YjU0MWY3MCBsZWdhY3ktdHJ1bmsKKzQzMjE2IGRiYWYwYmNlOGQ0NjAyZDIwYTU1MWFkNDE2YTRmYjE1NDE1ZmE1OWUgcDN5aworNDMyMTcgN2VhYzIzYzhlNGU5ODkzZTA3NGZlNTk2MjZhMTQwMGFjNzliYjMzOCBsZWdhY3ktdHJ1bmsKKzQzMjE4IDRlZjk5Njk1ZjdiYmJlZWQ5OTViM2Q4MzFjMWUxYWQ5NTEzYzRhYzEgcDN5aworNDMyMTkgNzA0OWRjMGM2MjFhM2QyYjAyYjMyMWM4NTU2Nzc0YWQ4NDY1YjIzNCBsZWdhY3ktdHJ1bmsKKzQzMjIwIDUyMTdjNzAzYTk0ZjhhYmVhNTE4ZGNhMzU2MWFjMDg3MGE1ZmJiODMgcDN5aworNDMyMjEgOTFkZDRkNDRkM2JjNzBkYTZmNTc0ZjhhZDRjMjkxZmZlY2JjZGNkZiBwM3lrCis0MzIyMiBkNzUxM2YzOGIyMmY5OWViZDQ4NDU5Zjk0MjU1ZWQzNGIyMDc4OTNlIHAzeWsKKzQzMjI0IDY5MWRkMDU5MTY5MTcxN2M3ZjZjNWYyNzljODM4YzNmYTBiMDNiZGMgbGVnYWN5LXRydW5rCis0MzIyNSAwMDU3ODYyYTNiZGJkYWY2MWVhODhkYTIxOGIzOTYxZjI0YmY5YWE3IGxlZ2FjeS10cnVuaworNDMyMjYgMmQ5MmFiN2Y1ZTg5ZTBkOGJiZjRhMjk5NmY5OWZkNzgzMWExNDBmNSBsZWdhY3ktdHJ1bmsKKzQzMjI3IDRkODA2MDcwMzNmYjMxNWRlNTZmMDIyNzJiNDFjZDBhNDJhNmQ4ZDIgcmVsZWFzZTI0LW1haW50Cis0MzIyOCAxMGNjZTNmNjUxNzAyOWFhYTk3MWNmNGI1MjVjMDcwYTBhOGFlYWZkIGxlZ2FjeS10cnVuaworNDMyMjkgMzU0NTgxMTIzOWI0MGJhMzlkZTQ3YjMxMTVmNmMxMzA5Nzc5NTdiMSByZWxlYXNlMjQtbWFpbnQKKzQzMjMwIDE2Yjg4NTliMDc2MDVhYjZkMWY5YmQxZDUwMDg2YzVmZWU3MWQxOTUgcmVsZWFzZTI0LW1haW50Cis0MzIzMSA5YWQwZTUxNzUyN2ZmNDFiNzczNzE3YWE0MDMzMzkxNjE1YzkwYzE5IHJlbGVhc2UyNC1tYWludAorNDMyMzIgODE0OWQwYTQyNGE1NWUwMDU1MGUxOTI2M2ZjYzAyOTQ2OTYxMjkzNSByZWxlYXNlMjQtbWFpbnQKKzQzMjMzIDFhZjI0NWZhYzkwYTZiNmZhZWY4OGFmZjAwNGQ5NTM0MzBkMjRhZTMgcmVsZWFzZTI0LW1haW50Cis0MzIzNCBjMWU3MDJkMjhjZjI4N2ZjNjRhZjZhM2ZmNDFjZTg3OTE5YmI0MmUwIHJlbGVhc2UyNC1tYWludAorNDMyMzUgYTk1MDQ1MGVmNGViOTI4NzI2NGFmZjE4YzljN2E5MDNkMDQ2ZDliYiByZWxlYXNlMjQtbWFpbnQKKzQzMjM2IGQxMTcwZTlhYTc4OWIzYTRhZDAxNTNkZGEyZDA3M2MyY2U0ZGIzNWUgcmVsZWFzZTI0LW1haW50Cis0MzIzNyA3YzViZTdjMGZkZmRiYmMwYWMxZDkxYzA3MDM4YmM4MTQxMmRhNDEyIHJlbGVhc2UyNC1tYWludAorNDMyMzggM2UwOWM4NTY2ZGYxYWZkNzBhNTU0ZGIwNjA1MmJmMzU3MTQ3NGQ4MyByZWxlYXNlMjQtbWFpbnQKKzQzMjQyIGIyZTZkNmFhODZkMWMxYjMyMmFjMzUwNGY5MjBjY2NiMzQ1OWRiZTUgbGVnYWN5LXRydW5rCis0MzI0MyBiNGQ5MmVmMmYzMzgwZGVkYjI5ZTMwZmZmNDI4MDMyMDFhZmJkNmQ0IGxlZ2FjeS10cnVuaworNDMyNDQgMGM2MDI5MzhlZDhlODc5NzgzYTFkNjQyNWI5NGMzZWQ2NGVkMDlhNyBsZWdhY3ktdHJ1bmsKKzQzMjQ1IDJiN2VjZTc4ZTI5MzE0Nzc3NzY0Mzg2NWY3M2MxN2E3ZTZhYzBiZjMgbGVnYWN5LXRydW5rCis0MzI0NiA0NWRkOTM4YjdmZWIyMGZkOTA4Y2NkZjAwMmI2MTZkOTBkZTgwZGM2IGxlZ2FjeS10cnVuaworNDMyNDcgMDI3YzZmY2VlZTBkYWY5ODBlM2U0ZTgzNjI1NDI3MzljZjRhNWUyNiBsZWdhY3ktdHJ1bmsKKzQzMjQ4IDQxZDcwNTc4NTc4YTM4MTE2MGY0OGY5YjJmMjIzZjA4Y2UwNDgwMTQgbGVnYWN5LXRydW5rCis0MzI0OSA0Zjk3YjZhMjI5Y2UwMzE1ZjQzOTIzYWE1MmVhZGE3MGJlYzE0NzRkIGxlZ2FjeS10cnVuaworNDMyNTUgMDY2YzljZTQ4YzMwMDJiZWVkNGUzYjZmZmU2ZTU5MDM3YWVjNjM2OSBsZWdhY3ktdHJ1bmsKKzQzMjU2IDI5ZGY0ZmUxMjhhMGFiZWFiZjAxNzA2Zjk0ZGUwZTQyZDUwN2IxYzcgbGVnYWN5LXRydW5rCis0MzI2MCA3MmE3MjBkZDY0ZmI0YjcwOWZmNjQxNWVjMjMwNDRmNDE3MDliNzJhIHJlbGVhc2UyNC1tYWludAorNDMyNjEgMWVkN2I4ZGM3NzdhY2ZkNWY2ZWY1M2JmYWRmNDk5M2ZiYjQ5YmQxZiBsZWdhY3ktdHJ1bmsKKzQzMjYyIDk3MzU3ZmUzNDIyMjdiZDliZWEwZTA3OGE5ZmZkY2ViZTc5ZGYyMzEgcmVsZWFzZTI0LW1haW50Cis0MzI2MyA3ZTNiZjg0OTJjMDNhNjk2NWZlZjU1MmU2ZmU1MjdhY2RkMDUwNzU3IGxlZ2FjeS10cnVuaworNDMyNjkgYTE4YWEzZmJkZDRhYjBkODFlNzI1MjY5MTNmZjgyNzIyZDkwOGNjZiBsZWdhY3ktdHJ1bmsKKzQzMjcwIGZiNDgxZTBmNTc4NmU1MWVlM2UxZTI2NTVhMTYzMzU0OThhOWM5OTAgcmVsZWFzZTI0LW1haW50Cis0MzI3MSBhOGRlMGI5NjAwMjc1YmM0NjgzMDQ5MTEzNGE1NTc5YTU5NGExYzU2IHAzeWsKKzQzMjcyIDIzMWQ2MDRkZWQ4NDZlMGE0MWI0YzNjMTFiZGZlMzE2OTFjNjRjOTYgcDN5aworNDMyNzMgNTIwZTU1YmQ3NmQ2YzIzYzliZTYxOTMzOGMwY2M4OTQ4MmJiZTkyOSBwM3lrCis0MzI3NCA2NGFlMzJiMDc4Mjk5YTI0MGI2MWYzMjY0YjcwNjZmMmU1NThmMGJjIGxlZ2FjeS10cnVuaworNDMyNzUgY2FhOWFmZjA4NWE2NjYzZDIzZDkwNGE5OTMyMDBjZjFmNGVkODhjMSBwM3lrCis0MzI3NiBmOWYwNDExNWZiYjVmNTAwM2RiMWMwNDkyNzBhZDNlNmNjNGFmMDcxIHAzeWsKKzQzMjc3IGIyYTA1ZWE3ZWFjMWFkMmRjNTY0ODRkZTc4N2RmMmU5OWNmMDRmMWQgbGVnYWN5LXRydW5rCis0MzI3OCA4NjhhYjJhNjVjNzMwZWViNDk2MGZjMzQzNjIyYzRkMDJiOTFlMmNkIHAzeWsKKzQzMjc5IDY2OGE1YmE3N2RjNmYzZGNlNzU4YzI3N2M4NDY4NWExOGVhMjg1Y2UgcDN5aworNDMyODAgMzVjYzVlMTgwYWEzZTY2NGU3YzdjYjM0ZjljZTk2YmE0NjFhOGYyZCBwM3lrCis0MzI4MSA2M2M2MWRiNTUzYTg2OTZkYzNkMzE4Yjg0YjYxNTMxZGY3OTJmZThhIHAzeWsKKzQzMjgyIDc2MGZmYjBmYmEzNzM3ZDRlZWIwZTRmMWQzMmYyMzYxOGI5ZGExZDIgbGVnYWN5LXRydW5rCis0MzI4MyBiODU2N2I4NGM1MzEzN2Y0NzZhYTQxMDFhZTYyODU1OGY3MmNkYTgxIHAzeWsKKzQzMjg0IDBhZDM4N2ZiNjMxNDMyM2NiNWRmNTkzZWYzNWE0NmZiYzU5NTY3N2UgcDN5aworNDMyODUgNGJmZThhZmU4ZjY1ZWQxMzNlMTIxMzMzMzk1MTEzYmQ4MDVlOWM5MyBwM3lrCis0MzI4NiA1OTNlOGZiOWEzY2FmZTVjNDc3Y2Q1NjM3YTFkYzI3YTc1NzI0NTczIGxlZ2FjeS10cnVuaworNDMyODcgN2YzMjJlZjY4NDM4N2RhMWE3OWY0ZGI4OTUwZTkwYjNlYTVmZmY4MSBsZWdhY3ktdHJ1bmsKKzQzMjg4IGUzOGZmMjExOTFkZTUxZTk1MjZlZmE4NWE5NDIzODYxNWZmYjYzN2MgcDN5aworNDMyODkgMjQzNjMzMDFhMjk5YzUxMDdlZmU1ZWFiMDM2OTQzYzNhN2M1ZDVkNyBsZWdhY3ktdHJ1bmsKKzQzMjkyIGMxYTZiYTdlY2IyMzRhOTVlMDhjYTQ3ZjQyMDIwMzRiYWFjNDZlZmIgbGVnYWN5LXRydW5rCis0MzI5NCA2NDMxN2M3MWVkNmQzOTM2MWUwNzM2NTEzM2VjZWMzNjRlZWMzNGE3IGxlZ2FjeS10cnVuaworNDMyOTggYmVkM2Y1MmYwZGM2M2Y3ZjJhMGNhMGEyNDc5NThjNDFiOWE0YTkzYiBsZWdhY3ktdHJ1bmsKKzQzMjk5IDFiNzJkMGU0ZjRhYTBhZGE5ZjM5ZmQ4ZDY5YmNkNWQ2OTQ2MDI5NDUgbGVnYWN5LXRydW5rCis0MzMwMCA4YWIwMWE5YzE0MGI3MDJhMjk3ZmEyZjRlZDk0NTY5ODMyMjA5ZmE4IGxlZ2FjeS10cnVuaworNDMzMDEgMzk1YWQwZDU0MjNkNjBhNDFjZDYyYzBjZGI4YTRiMDY2NzJlY2M2YiBsZWdhY3ktdHJ1bmsKKzQzMzAyIGY1Y2QzMDkxZDk5ZjlhY2YxMWU3Y2JhZGUzOTYzZDIzZTlhYTlkNzkgbGVnYWN5LXRydW5rCis0MzMwNCBiMzljM2Q3YTVhZDQ1MGNkYjE2YWJlYjEzOTkzNjYxZWI0ZjMxZGI3IGxlZ2FjeS10cnVuaworNDMzMDUgNjQyNWE0M2JmM2M2ZTllZjU4ZmIzNjZhYWVmNzEzYTc1Mzk3YTc2OSBsZWdhY3ktdHJ1bmsKKzQzMzA2IDQ5NjIyZDY1YzI5ZDJhZjE3ODBmNjViOTY0YzA0MGNhMjM0ZTg0YWMgbGVnYWN5LXRydW5rCis0MzMwOCA1MWRmOTk0ODg1ZTk3OGYzNjRhNDZlNWY2OTVhMDA3MmY0M2NlMTYzIGxlZ2FjeS10cnVuaworNDMzMDkgOTZlNGQ1MzEyOGM5ZTczZTg1ODMxYTFmMDNkOTY1MmNjOWQ5YTkyOCBsZWdhY3ktdHJ1bmsKKzQzMzEwIGE4MmVlMzI5OGUxYWQyYjY0MjhlMGY3NzQ2MjI4ZjJkN2I3OTFlMjkgbGVnYWN5LXRydW5rCis0MzMxMSBjODQ0MzA1YWE4ZWQxZjIyZTA4MGM1ZTllYjE5MWYyOTJlNjcwYzFiIGxlZ2FjeS10cnVuaworNDMzMTIgNjljMzU4YmY2YTM0NTZkNTM4Y2RhMzEwMzIwYWIyNDE2YjY1N2YxZiBsZWdhY3ktdHJ1bmsKKzQzMzEzIDJjMWZlNzYxZjAxOTQxOTk4MGIyZTUwNGViNGZhOTA2YTEzYzVmMDEgcmVsZWFzZTI0LW1haW50Cis0MzMxNCAwNmQ3NjEzYTM1MjMxOWMyOTU2ZjQ4NTcyMDM2MGYxMDRhOGE4YjAzIGxlZ2FjeS10cnVuaworNDMzMTUgNTE1MTE4YzBlMzM4YjgzY2E1OTkyZWU4Njk2MGJlMTVjMGY5YzgxNiBsZWdhY3ktdHJ1bmsKKzQzMzE2IGIzNDQ0MDQxOWI2NzllN2UxMTM3ZTBlYWExMDU5OGRiMDliNmJlMjkgbGVnYWN5LXRydW5rCis0MzMxNyAzMGZhYmI4N2ZiY2MzMGZmZGYxN2RkNjQ4ODEzY2M2NzU5MzkzNWIxIHJlbGVhc2UyNC1tYWludAorNDMzMTggNTRhYTVhYThmMmNiMjZhN2RhOTNhYjJhNGNjNWQ3OTI0ZDE4NGQzNSBsZWdhY3ktdHJ1bmsKKzQzMzE5IDQ2MTc2ZmZjOGJmNWRkY2RmYzFjZmZkMWU1NGU5YmI1YTQ0NzQwYjEgcmVsZWFzZTI0LW1haW50Cis0MzMyMCBlMjM0ZmY4YmVhYTIwMjFiMmUxMmY0OWU3NzU0Mzk0MmY0ODVhMzg2IGxlZ2FjeS10cnVuaworNDMzMjEgZDdhNmVjOWRlODg3NTU4MTNkOWUyNWZjNTQyMjhiYjAyMzZjODgyZCBsZWdhY3ktdHJ1bmsKKzQzMzIyIDViYmY3MjI3YWQ2ZTliOTNjMzEyNTk3M2ViZWY3OGZhNTc3Nzk0MzUgbGVnYWN5LXRydW5rCis0MzMyMyBmMTk4OTBhODZjNDMzMmM1ZWQzNmQ0NTI3ZTA4OWRhNzA3ZmI3NWJiIHJlbGVhc2UyNC1tYWludAorNDMzMjQgNDE2MzQ4NzQ4NDYwNDQ4OWFhMGY0MWZkMmExNjM2N2U4OGFkMmJmMiBsZWdhY3ktdHJ1bmsKKzQzMzI1IGMwODE4ZjIxZjY1YTJkYWJhZmNkOTUwZGJhOWEwZWVhZWM5NmM3MTQgbGVnYWN5LXRydW5rCis0MzMyNiA5MjM4ZjA0ZWVhYTZjZTg1NDQ5NTliYWI3MGJlMmM1Yzc1ZDY4MmNkIGxlZ2FjeS10cnVuaworNDMzMjcgOGFkZGMzMTNhYjBmYzcyMDMyYTc0MTdmOTY5ZWM5OGJkYTVhNzFjOSBsZWdhY3ktdHJ1bmsKKzQzMzI4IDc5OWI0MGM0YTJjNjFiYTlhMTU5MDFlNzg5NGU0NmU4NTA1MDJmNzcgbGVnYWN5LXRydW5rCis0MzMyOSA4ZDU3ZDI1ZTY1NDg3OWM4NjlkZDlmZWNlOTA5ZDI3NGFhMDU3MjcyIGxlZ2FjeS10cnVuaworNDMzMzAgOGY3YzAzYWNhZGRkYmM3NjI5MjE5YzdhNjkwN2U2MmE4YzYzMTVhMiBsZWdhY3ktdHJ1bmsKKzQzMzMxIDZlMWE4OTljYWM4ZWU2ZGQyM2ZhYjY2YTVlNWUzNTJlZDllZDIxMmYgbGVnYWN5LXRydW5rCis0MzMzMiBhNGQyZjdiODQ3YjFlODI4OTU4MmZjMjQ0ODRiNzNkZTU4OWZlZDVlIGxlZ2FjeS10cnVuaworNDMzMzMgOTRmNTRlYzYyZDE0MzhiMDQzMDc2Mzk3ZWI5YmRmMGU3YjM1MzU5MSBsZWdhY3ktdHJ1bmsKKzQzMzM3IGU1Y2ZkNGEzZTY1YzYxNzJhYmU5MTI2NjcyMjEwMWQ5NzcxZmIwZDcgbGVnYWN5LXRydW5rCis0MzMzOCAwMDk4ZTcyNjRlYWFjNTRhM2VmYWY4ZTJiZTM4MjEzNmJkZWMyMjhmIGxlZ2FjeS10cnVuaworNDMzMzkgMzRmMjBhYjQ0Y2VmZDQ5MDlhYTBmZTI1YjUzY2YyOGZjZWFiMzgyOSBsZWdhY3ktdHJ1bmsKKzQzMzQxIDlkOGIzM2FmZjYwYzEwMGU1NTI5ZmEwNWI1YjYyY2RmZjkyYjE1NDIgbGVnYWN5LXRydW5rCis0MzM0MiBiMDUyMjQ3YjE4MDlmZmVjNTczYjkyOTY4MDdkMjA0NjhkZjY5NWE0IGxlZ2FjeS10cnVuaworNDMzNDMgZWUzNmMxNmQ4ZDJiYjE1ZTlkNDNjZDBhOGE5MTRlMmIyODFiYzM1MyBsZWdhY3ktdHJ1bmsKKzQzMzQ0IGMwNDFiMzYyYmIwNGQ4Y2YxNzUzYzQ3YmJiMjZhZGU0MTZkYTg2NTggbGVnYWN5LXRydW5rCis0MzM0NSBkYzE4MzVmYjllN2MzYjI4YTVhY2M2MTk3ZTZlNzY2MmE1NGIwOGQ0IGxlZ2FjeS10cnVuaworNDMzNDYgNDM0NTJmMWZlYTY5MzRiOTQzODI5OWVmNjQ3ZDI4ZGE4MDZlOWIzYyBsZWdhY3ktdHJ1bmsKKzQzMzQ3IDM3M2Y3ZmUwZTczM2Y0YmFiZDEwNDQ2ODMwYmI3MWJjYjcxMThhMjggcmVsZWFzZTI0LW1haW50Cis0MzM0OCAyMjM0NWQxZTY4NTI3MDNkN2Y0NWVlODI1YWI5OWNmOGQ4YzgwNTRiIGxlZ2FjeS10cnVuaworNDMzNDkgMjYxMTE2ZjY4ODljMmM0YzdhOTRkYWFlZWFjNjNhZjM4Zjk3MzA1NiBsZWdhY3ktdHJ1bmsKKzQzMzU0IDNiNjFlNGFhN2VkZTFhN2FjMGIyOWYwZmEzMjI1ZWQyOGVlNGVkYTkgbGVnYWN5LXRydW5rCis0MzM1NSA2ZWI5YjE2ZDZlMjE1ODYzZDIzYWE5YmIxZDkwNzY5YjEzMDU5ZTgxIGxlZ2FjeS10cnVuaworNDMzNTYgNDFhMmQ3OGQ0M2M2OTdjY2MwMjg1MzFmZWI3NDVmNjc4NDBiZmQ3OSBsZWdhY3ktdHJ1bmsKKzQzMzU3IDA0OTAwNGQ3OWZlZmIxODAyYjZlNWM4MjhjNTgxYmYxNGQwMGFjYzYgbGVnYWN5LXRydW5rCis0MzM1OCAwMGU5ZDU5YzIzYjRlMzlhMjU1MjI5NWMzMDVjYTI2ODBiZGFhMTY3IGxlZ2FjeS10cnVuaworNDMzNTkgMzUyMGY5NzE0ZThjMTA0MmQxOGE1YmM2MGMxOWY3OTdlMzBjMmRiNyBsZWdhY3ktdHJ1bmsKKzQzMzYwIGM4Zjg3ZjA4ZmUwYmRkZjA4ZDFkMjU0MTFhZGVkZjBlNTFhMTcxNWMgcmVsZWFzZTI0LW1haW50Cis0MzM2MSBjMTFmZTJlMjk4NGQ5YjM3NTg5ODhjNGEyN2MxOWRkZDBhNjVjYjRkIGxlZ2FjeS10cnVuaworNDMzNjIgNTJkZWJiYzNjYzA4YTJlYTM3MGViMmQ0OWVmOTc4NzA0YzAyODhhYSByZWxlYXNlMjQtbWFpbnQKKzQzMzYzIDkzMzQ0ZGE3NmFjZDBlNWY0MTBhMjNmZjdmYmYxOGM3NDM1N2IzYzUgbGVnYWN5LXRydW5rCis0MzM2NCBhNzgxOGMyODc0OWY0YWE3MjZlZjJhODJkNzViMTdhOTUxMjY3Y2VlIGxlZ2FjeS10cnVuaworNDMzNjUgZjRjYTAzYjg3MTYwYmU2ZGRkNGQ4MTI4ZGZlMTc2NDI2MTM3OWUyNCBsZWdhY3ktdHJ1bmsKKzQzMzY2IDk0ZjE2MTNiODdkNWIyYmFmMDlhOTkyMjdhZTJiODM5ZDZmYTZlYjkgbGVnYWN5LXRydW5rCis0MzM2NyAwMzRjMGNmNTAwN2IyODQyNGZlYjYxMjk1YmY5YzRkYTY3MzM0MTdmIGxlZ2FjeS10cnVuaworNDMzNjggN2I1MjQ4MGMxMmM2MmJlZmM2NWY2ZDllMzk2ZTI5Yzg1YjRhZDk5ZCBsZWdhY3ktdHJ1bmsKKzQzMzY5IGFmMjRlYjNiYmZjZWI3ZGVlNzFjYTA0NzhjMDAyNjVlZmY3MmM5MzYgbGVnYWN5LXRydW5rCis0MzM3MyBlMTJlNDkzYjUyNDQ0NTRhZjgyZTdhNjA5YzI0YzRhOWQxM2RjYzlmIGxlZ2FjeS10cnVuaworNDMzNzQgYmM1MTYxZjI5MmI3NzEzMDE5MzhhOTU2ZTVmOWY0NWM3ZWE2NTA4OSByZWxlYXNlMjQtbWFpbnQKKzQzMzc1IDVhM2YyMjgwODdhZmRlM2FiMzY5ZjA1MzEyNGM3MzJlN2E3ZmNkYWUgbGVnYWN5LXRydW5rCis0MzM3NiBiNzU0NDBjYmZkMzRmMTVlOWY1YzU4ZTE0Y2VjMmJkNzEyOGY1ZTJkIHJlbGVhc2UyNC1tYWludAorNDMzNzcgNjE0NjFlZWJkNThmN2UzYmM0MGNiODFhN2UwYjZmMDczZjE4NGM1NyByZWxlYXNlMjQtbWFpbnQKKzQzMzc4IGEyODQ3YmIzMjhjMGU2ZTJlNTNhYmE5MWQyNDA1YWEyMzlkOTRiYjIgcmVsZWFzZTI0LW1haW50Cis0MzM3OSA1ZDYyNWY1ODlmMmE3Y2M3Zjg5NDFlZWFkZTljYTc1YjI2YTZmOTBiIGxlZ2FjeS10cnVuaworNDMzODAgZDhkZTc1MDAyOTFkZDQ1NzYxYzFmYTMxNmY0ODEzZjMzOGM2NzUyNCByZWxlYXNlMjQtbWFpbnQKKzQzMzgyIGE3ODM0ODQ0ZGNmNjEwMTY4Y2FkZWUzM2RhMzJlZmUzNDRiMjkxZmEgbGVnYWN5LXRydW5rCis0MzM4MyBiYWRhYTdlOTFkOWE3ZTcwZGFlNjMzMTQzMWE4Zjg3NDM4YTRmMWExIGxlZ2FjeS10cnVuaworNDMzODQgYTAzYzk1NWZmZWQxMGZmZWIzNjE0ZDhjOWU0YjVmMmI2ZTg1NWYzMyByZWxlYXNlMjQtbWFpbnQKKzQzMzg1IDgwYzRmYzAzZmY5YjdkNjhiZmVmNjNkMWI4MzQyNTQ5YTQxZTlmODYgbGVnYWN5LXRydW5rCis0MzM4NiBkY2Q0NTliMDM2NzA2Yzc0NzI0YmYyZDQzYjlhNzQyYTM0ZGU3NGNiIGxlZ2FjeS10cnVuaworNDMzODcgYjk0MjYwOTNkN2VhNjdhZDE5OWNlOWMxOTQzMzFmZjFmNmEyZTY3YiByZWxlYXNlMjQtbWFpbnQKKzQzMzg5IDYzYzQ0MjI2NjcwNTZiNmMxYzExYWU2ZDZlOTdhNDk3NzFmNDBhMDUgcmVsZWFzZTI0LW1haW50Cis0MzM5MCA4Y2NhMjQ5MjYyNmNlNDA4Y2Q1NjcxMTA4MTFjMDY5MmZkMWQzN2RkIHJlbGVhc2UyNC1tYWludAorNDMzOTEgNzYyZTViOGQxODlkYWVhMDdkZjE0ZTk3NzBhYjVlODlkYWRlYjllMCBsZWdhY3ktdHJ1bmsKKzQzMzkzIGVmZDE0MWNiZjZjYjM3Njk0MDEwODYwNDIwYTRiNDI0MTRjMjQ1YTMgbGVnYWN5LXRydW5rCis0MzM5NCBiYjFiNDg1MTYxMzE3ZmVjMGEyYjI3MDkwZDBmZDEwNzUyMGEzNDA0IGxlZ2FjeS10cnVuaworNDMzOTUgNGUxYWZmMGUyMGQxOGZiNzQ4MjgwY2EzZGE3ZmZhNzdkMTJkNDgyZSBsZWdhY3ktdHJ1bmsKKzQzMzk2IGNjYmRjZmM0MGM4MWM0NjhiODJkNzUwNDY3M2EyMjBmYTZhMDExNGYgbGVnYWN5LXRydW5rCis0MzM5NyBlZTRhNjBjNzEzNTcxMjdmN2U1ODE0NjI3YWJiZTlmN2QxOTBlODMxIGxlZ2FjeS10cnVuaworNDMzOTkgOWM2OTM3ODUxNmFiMGZiYjU4ODJiNzhlOTkzMWUxOTA3YzljNzViMyBsZWdhY3ktdHJ1bmsKKzQzNDAwIDUyMDMzNzZmMTU4OTJjYmRlOTRmYTAxZTg5Zjc3Zjg2YTI1Y2QzNjIgbGVnYWN5LXRydW5rCis0MzQwNCBlZjgwNTlmODdmZDJmOTJlYmQ0MTEzNzgxMTY3NzY1ODg4MzJlMmM3IGxlZ2FjeS10cnVuaworNDM0MDUgYTE1N2Y1YTY5ZDM1YzYwOTA4ZWEwNjNmOWE3YjA5ZGVhNjkyNzQxNyBsZWdhY3ktdHJ1bmsKKzQzNDA3IGFiM2VmYmNhNWM5MjA5ODQxODY4NzQwZTk3NjcxODliOTQ4OGIxMDYgbGVnYWN5LXRydW5rCis0MzQwOCBlNDk0NTVlOTRiZWUyODhmMDk0Zjc5MzQ5MjgyNGUzNWRhMGQ3ZmJkIGxlZ2FjeS10cnVuaworNDM0MDkgMWY2MWFhNDZmZWU1YjNkMzAyMjgwMTQ1NGU5OWIxMTQ3N2EwOTZhMCBsZWdhY3ktdHJ1bmsKKzQzNDEwIDQzN2QyNzZjNzMyYzdiZGE3OTM1ZGE4MDYyOGNlZDNmN2Y1NjU2ZjMgbGVnYWN5LXRydW5rCis0MzQxMSA4OTE0MmNhZGNmYjllNzQ3NjkxMzhjZTU3OWVjN2U0Nzk0NTllZjgxIGxlZ2FjeS10cnVuaworNDM0MTQgOTNiYTE1NjE5ZjVhYWM5Mjc4ZWY0ZjQ4MjkyMDBjZWYzMWFhNjFiZiByZWxlYXNlMjQtbWFpbnQKKzQzNDIwIDYwYmUzZjM5YTcyYmRmODU4YTE4MDg0YzE5NzVkZTQ3NjMzYjU1ZDIgcmVsZWFzZTI0LW1haW50Cis0MzQyMSAxY2EwMTJjZTQyN2UzMzY0YWM1MGViNjFmNTc0N2UyZmVkNWNhZGFiIGxlZ2FjeS10cnVuaworNDM0MzUgYjg1YWQyMTY2YzAxYmU3YWQwZWUyMGU0YzM0NDJhNjNlNTFkMGE5NyBsZWdhY3ktdHJ1bmsKKzQzNDM2IGI4ZDFhNDVhMzA1NzMyOTYzOGVmYjQyYmI4MzJiMTFiNjE0OTZjNTEgbGVnYWN5LXRydW5rCis0MzQzNyA4MWQ2MTE5ZGJjNjZiNTdkYWE5MzNjMDQwYTAyOThkZmQwMTMzODYwIHJlbGVhc2UyNC1tYWludAorNDM0MzggZWZiMDlkYmFhNDBlNjdkYjk5NjJkNGFkZDVjMGQ3OTA2MTVkMDUzOSBsZWdhY3ktdHJ1bmsKKzQzNDM5IGFjY2UwNDBlMGExYWFiYjBjYmY0MDAyMGM3ZWFhYTUyN2Q3MGRlOWEgbGVnYWN5LXRydW5rCis0MzQ0MSA0NGU2ZmM4ZDAyZTFjMWZjOGY3OTIwZjBjODExNzA5YzRjODgyZTIwIGxlZ2FjeS10cnVuaworNDM0NDMgMjQzNDdlNDY1NmE0ZmQyNWQzYjFlZjIwNDgzYzgyZjdhM2E4Y2JiNiBzcWxpdGUtaW50ZWdyYXRpb24KKzQzNDQ0IGU5ZTgwOThmNjU3MjQ4ZTYxYjNhODI0YTE4MDFjZjkwNjY4MjUxMDggbGVnYWN5LXRydW5rCis0MzQ0NSBmMjg0ZTg1NGZlNzJlYzQ3YzMwYTU2OGQ0MGY4ZDVkZDljNDU4MWUzIGxlZ2FjeS10cnVuaworNDM0NDYgZTE1NmM1ODE0ZmNjYmM1MDY1YWU0M2UxM2M4Y2Q0ZjJiMGViNjAyMCBzcWxpdGUtaW50ZWdyYXRpb24KKzQzNDQ3IDA4YmYxMTIyYzE0NDBmMjc1YjNhY2QwZjliZWY0NDMxNTVjZGJhYTcgc3FsaXRlLWludGVncmF0aW9uCis0MzQ0OCBmYjdiNTJjNDExNmMzNjNmZjkxMjIyN2EzM2Y2NmVkMTBhMjliODM5IGxlZ2FjeS10cnVuaworNDM0NDkgMTMzZDRiYjYxYmFiMmYzYTExMzkwZjA0NDRkZDNjMzAzZmYzNWUwMSBzcWxpdGUtaW50ZWdyYXRpb24KKzQzNDUwIDk1NWE4NmY4YTE0MGMwMjY4MGQxOTBkZjRhMmQ1YTFlOWY1NGMzY2Igc3FsaXRlLWludGVncmF0aW9uCis0MzQ1MSA3OGNhYzIwZjk2NDJkNzJkNjEwYzJjNGFkZDZmYjAzMTY2YmFkZDliIHNxbGl0ZS1pbnRlZ3JhdGlvbgorNDM0NTIgNjkxODc3OTlhOWY2YmU3ZGY4MGY2MmM1YjVlOWNjOTIxN2ZiYjY4MyBsZWdhY3ktdHJ1bmsKKzQzNDUzIDc5YTBmMDgwZjg5OGMyNTRiY2E5OTliOWQzYzMzNzNkMWM4OWY0YmEgbGVnYWN5LXRydW5rCis0MzQ1NCA1ZTFiNmY1NTM3NjMxM2M1YWM1YmE4YTI1ZTQxMmJjNjA4NzdjNjZiIGxlZ2FjeS10cnVuaworNDM0NTUgODQ5NjdhMTk2MmNiYjJhNWM3NDI3YTNlYTQ0YTdmNTMyNTNjZDI1NyBzcWxpdGUtaW50ZWdyYXRpb24KKzQzNDU2IGNlNTZjNWUzY2IyMDUwZWFlZDBhYWY0NTFlODJiMWNmODhlYzg2NTUgbGVnYWN5LXRydW5rCis0MzQ1NyBlNThhNzFhODU1MGU3YzkzN2I2MjBhZGMzODhjZGE1YzcxYzJmZTRlIGxlZ2FjeS10cnVuaworNDM0NTggYWFhMDRiZmFmYzU4NTVhMWZkNWY0NDczMzQ1YWRkY2E2MTYyYzA0MiBsZWdhY3ktdHJ1bmsKKzQzNDU5IDIzNWY2MzVhYzQ1YTA0ODcwYmRhODg4MDkyZGQ0NjgxMTdkMmRiN2EgcDN5aworNDM0NjAgMzYxOTBkN2ZkOGFiMmVhYWM5OGE2NDVjMzEwMTJmM2Y2NDA3ZmE1MCBsZWdhY3ktdHJ1bmsKKzQzNDYxIDA4OTlhODA0YTU5NGNjZjkyOGJiZTY5MmU1OTgzMWU3ZmU5Y2VlNWQgbGVnYWN5LXRydW5rCis0MzQ2MiA2MTQ1MmJkMTI1ZTVlMTA2YWQ5NDZhMTgyNTkyZTMzZjQwZGZmODM5IGxlZ2FjeS10cnVuaworNDM0NjMgMjI4ZTI1YzkzYTk3OTNiNjg5NWNjNDM2YzM0ZWQyMTk2MmM3YTZkMCBsZWdhY3ktdHJ1bmsKKzQzNDY0IGM3MmJjODQ3MGY2YzllYjgyNGY3YzkwNTk4NjRhMTI5Yzc2MDI2NTUgbGVnYWN5LXRydW5rCis0MzQ2NSAxOTA1OWRmNDVjZmU5MDJmMGUwOTA5ODYxZDFkMzk2MTk1MGNlNTRiIGxlZ2FjeS10cnVuaworNDM0NjYgMDQ5NjA2OTMzMzI4ZTg5MDgyMWUxMzMyOTBiYzk5NzRkNTM1NzA0NiBsZWdhY3ktdHJ1bmsKKzQzNDY3IGY1ZTc5MmE5M2M0MzFhNGRiMGZmZjU1NTY4YjhiODAyZWUxMDk5MmUgbGVnYWN5LXRydW5rCis0MzQ2OCA5OGY1YzkxOGEyNGFjYjkzMWUxZjc3YmViZjMwODQzOTA2ZjQ0NTY5IGxlZ2FjeS10cnVuaworNDM0NjkgMjAyZmU0YWFmY2JiMmMwODIzMGNhOTk2YmJjMzFhNGVlN2VlMGMxMiBsZWdhY3ktdHJ1bmsKKzQzNDcwIGQxOTkzZWU4YWM0MTFkMWZjMTIxNzZkYjQyOGNkMDJhMGZhZThkNWEgbGVnYWN5LXRydW5rCis0MzQ3MSBjYjI2NDVhNTU0ZDg4MmFmN2EyYjdhZmQyY2JlMTI3M2U1ODg4YzFlIHNxbGl0ZS1pbnRlZ3JhdGlvbgorNDM0NzIgMGQzZTVhYzA3MmIyYTE3YjQ5ZTM3MzAyNTA1OTBhY2E4Mzc2M2RhOSBsZWdhY3ktdHJ1bmsKKzQzNDczIDMyZTc2NzY5OTAwMTRiZDFhOTU0MTM5NzU1N2MxY2E0YWZiNjIwYzYgbGVnYWN5LXRydW5rCis0MzQ3NCAxNjRmOTVlOGUwY2NiNTA2OGRlY2QyMGQ1YWNlYTAwYWFmZjdlZGMzIGxlZ2FjeS10cnVuaworNDM0NzYgYzQ5ODhhYzU4OTk5NzkwZTUxZmY0M2FlYTY0Njg2N2IxMDljMjc4OCBsZWdhY3ktdHJ1bmsKKzQzNDc3IGQ2NWE5YzljOGE3YTJlYTM3MTczNDZhNGM0ZjFhY2YwM2I2ZWNjZjEgbGVnYWN5LXRydW5rCis0MzQ3OCA1OTkxMmI0ODEyZTZhZDg1ZWU0YzY3NTFjYmVlNzMyZTBhNjY4NTg2IHJlbGVhc2UyNC1tYWludAorNDM0NzkgZmI3ZDg5NWE4ODk3ZjUzZTM2ZTg4NGIzYzRjOTQ4NzU2M2JkZDlmOSBsZWdhY3ktdHJ1bmsKKzQzNDgwIDg2NmRhN2YzMGU1Njg2MGE2MTE4NmM4MGE2ZTE1Y2ExYjk4ZTRlMTAgbGVnYWN5LXRydW5rCis0MzQ4MSA2NzE5MmRhM2U2OWM5ODViYjEyNzJkYTkzMmQ3ZGU2MDczMDMzZmFkIGxlZ2FjeS10cnVuaworNDM0ODIgYzc3MTE1ZGRkYmUxNmRmNTJmYmY2ODIyNDlkZmEyYTNiYzViNTU4OCBsZWdhY3ktdHJ1bmsKKzQzNDgzIGFhYzAwNWU4YmI4MDA3OTAzZWQyZTUwZTcxZjU5ZmI5ODlkNTYwMDYgbGVnYWN5LXRydW5rCis0MzQ4NCBiODBiNWY4NGFlNTRmMmQ0NTIzMTVjZjY4OGJlNDE3NzRjMDdjYjNlIGxlZ2FjeS10cnVuaworNDM0ODUgYTdlYzc4ZjhkMDg2NmU2ODgyZjg4ZDU4ZjAzYmY4MDBmMWE2Y2M5NCBsZWdhY3ktdHJ1bmsKKzQzNDg2IGE0OTUwZWE1NTZiNTM0MzliOTU4MTcyYWJmOWI5MTZiMDcwYzQ2ZTQgbGVnYWN5LXRydW5rCis0MzQ4NyA3NWY5ZWIwMTEyMjZlMWYzZWY3YWUxYzU2YWE2MGE2MTFmZjA5MGFlIGxlZ2FjeS10cnVuaworNDM0ODggNmM2YjIwMDQ0M2UzNmM3YjQ0ZTA5MTYxY2RjN2IyODU1ZTU2MTUxMCBsZWdhY3ktdHJ1bmsKKzQzNDg5IGM5YTYyNzM3NzViNTAzYzQxZjZkYmM2ZDVmN2M0YzQwMjc4MzhlYzYgbGVnYWN5LXRydW5rCis0MzQ5MCBkYTc3MDY1OWY3N2I4NDJmMTJhZTRmNmUwZjhlYjJjNDZlNjcwYjZkIGxlZ2FjeS10cnVuaworNDM0OTEgNmZlZjk1NzcxMmI5MDZjZjNjZDI0NjBmOTE0MDZiZmVhMDJkNmNjZCBsZWdhY3ktdHJ1bmsKKzQzNDkyIGE2MWQzYWZkZmM0YjQ5M2M5ODMwNGQ3N2Y0NmYxYjkyNWZhMmFjZWYgcmVsZWFzZTI0LW1haW50Cis0MzQ5MyBmMzMwMDQ4ZDhiZGY4MjAyNDE0YTMzNjRjYWQyNGYxOTUxMjBlNmVlIGxlZ2FjeS10cnVuaworNDM0OTQgZDYxMGZjZGI4OWY3ZWJiMWJmODA5ZjUyMjIwYTViY2I2YWY5OTk5YSByZWxlYXNlMjQtbWFpbnQKKzQzNDk1IGZlM2I5M2MyMjQ4MTRmMzYwZWI2MGIzNWIxMGQxYzk4YjZkMmM4ZjEgbGVnYWN5LXRydW5rCis0MzQ5NiBjNmNmMTFhY2I0MWZiMzBiZTg0NGYzN2U0YTUzYWY5Y2NhZDBhMjQ2IGxlZ2FjeS10cnVuaworNDM0OTcgZTYwYzhiOWIyYjRmM2VkZWQ1YzkwYzAzMWVhZjMwZTFlZTFiYjdlMCBsZWdhY3ktdHJ1bmsKKzQzNDk4IGNjMzVkM2E4NzlhZDQ5NGNlMzE1OGZjMmJiNjU0ZGFmMTIyYWJiNDUgbGVnYWN5LXRydW5rCis0MzQ5OSAzODUwYTQ0MzQ4M2ExZmEyY2ZjZGMwNWNjOGUzZjQ1MTY2OTgyYzJjIGxlZ2FjeS10cnVuaworNDM1MDAgMzcwNDA0NTliZjJlNDFhODQ1MDgxYWY3OWJmYTFiYzg2MzdlMzFkOCByZWxlYXNlMjQtbWFpbnQKKzQzNTAxIGEyNGNiZjk0YmI4ZTBjZDQ1ODM1Mjg2YzJlNDczOWVhYWY1Mzg1NzcgbGVnYWN5LXRydW5rCis0MzUwMiBiZjY2NGExNjBmYzBhZGM3NDNjZGViOGNkOGE5NGU5OTQ0ZmZiZDVlIHJlbGVhc2UyNC1tYWludAorNDM1MDMgMjkxNGU3YjRkMjVhNDAwNzBmYjVhODBlM2Y4YWY5Y2Y4NjM3ZTJhOSBsZWdhY3ktdHJ1bmsKKzQzNTA0IDQzNmIwM2ZmYThhMjQ4ZmQ2MjYxMWNjZGQ5NmVjMTQ0YzE5ZTQ0NTIgbGVnYWN5LXRydW5rCis0MzUwNSA0YThlZjcwZGUyMTJlNDJjMmNlYTE5ZmI2NjY4NmMyYzMwMmU3ZWJlIHJlbGVhc2UyNC1tYWludAorNDM1MDYgMDE2ZDNkMjNmZjUyZGM0ZGJmMGM0MTM0NDVhZjBiMTcyMmRjN2U5MCBsZWdhY3ktdHJ1bmsKKzQzNTA3IGE3ZjhiMGJlNTk3ZTU3Mzg0ZjFlZjFmMWE5MzIxNTIxY2M0ZmJiMmYgcmVsZWFzZTI0LW1haW50Cis0MzUwOCA0N2ZiYmE4NDlhNmM4MTk3MzA4OGE0Zjk0YmIxOWRhNTc1MWJlMjBhIGxlZ2FjeS10cnVuaworNDM1MDkgODY3MGEyNzAxYTBmOTZmMmI4NmQ1OTVhYTI2MTVhNGJiOTgwY2Y1MyByZWxlYXNlMjQtbWFpbnQKKzQzNTEwIGZhYjY3MmMzZGRlNjU4NzQzMjU5N2NjZTA5Zjg1ZmVkZjNhMGU0ODQgbGVnYWN5LXRydW5rCis0MzUxMSA0NjJjOWQyYTA3YmIzN2NhMjg2Y2IyYzQ2ZjQ1MjkxZjA0ZWVmMDU3IHJlbGVhc2UyNC1tYWludAorNDM1MTIgOTgyNTE3ODAyMzZkN2Y0NGFiNGIwMjlhMDBjMzI4Yjc3M2VkMTFkOSBsZWdhY3ktdHJ1bmsKKzQzNTEzIGYwNWJkOThkOTM1ZDU2ZjVlYzE4YjU1NWEwNTY4M2FjMTQ5YjVmYzIgcmVsZWFzZTI0LW1haW50Cis0MzUxNCBlNTQ2Mjc0ZDY1MDNlYTIyMTM0NTgwYjU3NjgwN2IxYjNmYjI0OTU0IGxlZ2FjeS10cnVuaworNDM1MTUgNTkxODVmZmE4NjFkYTBmMTYwZTNhOWMyNjBkZjI1ZjQ1YzE3NTJmNCBsZWdhY3ktdHJ1bmsKKzQzNTE2IGI0N2Q4MjE5ZWNkNjFmZGFmOTA2Nzg3NjBlODMzMjIwZmRkMzQ1MzUgbGVnYWN5LXRydW5rCis0MzUxNyAzNWNmOTEyOTc2OTNlZjA0ZmZmNmE0NGQ1MjA0OTY2OGZiMjdkMzIyIHJlbGVhc2UyNC1tYWludAorNDM1MTggYjgyM2Y1ZmU5ODBjYzM5ZjBiODQ1MTIxMTE0ZmNlZjgyNDkxMDBmYiBsZWdhY3ktdHJ1bmsKKzQzNTE5IGE1MzNkNWI1ZGI4NDAxNGU3Mzg1YTJiMzIxOTQ3MzJiNWNmODM3ODEgcmVsZWFzZTI0LW1haW50Cis0MzUyMCAwNTkxNGU4ZGVkNzNlZGI5OWVhYTM0ZmFjZDIzMzRmNTAzYjg5NzJlIGxlZ2FjeS10cnVuaworNDM1MjEgODU4YWU5NTRmMDU1ODc2NDczMzc5Zjk4NzZhODYyOGQ2ZmIyYmMxYSBsZWdhY3ktdHJ1bmsKKzQzNTIyIDg3MGQ1NmEzYTIwYmU0ODVhNmNmMmMwN2FkMWY3NGQwMDU3NzFhNjYgcmVsZWFzZTI0LW1haW50Cis0MzUyMyA0OTIwNDQwMzRhODdiYmI0ZWE0NWQ5NWM3YmFiYzI2ZjUzOGZmZWEwIGxlZ2FjeS10cnVuaworNDM1MjQgNDIzMTJlNWYxMWZkMTE1YjMwODIyNTFiZTFjNTIyMzU5ZGM3MTJmMiByZWxlYXNlMjQtbWFpbnQKKzQzNTI1IGY2NDgxMmIyYjVjMWNiNGQxOTY5MmNhODI2YTMyNTQ4MDc1MGJiZjcgbGVnYWN5LXRydW5rCis0MzUyNiBiMDY4YWVlMWRmYjViMzU2MjRlMDE4Y2UxMmVkODQ0YTNhZWNhZmYwIHJlbGVhc2UyNC1tYWludAorNDM1MjcgNmYwODYzYmVkY2VhMzJkMWNmMzNkZDRhODJjN2E4ZmNlNmMxZmEwYiBsZWdhY3ktdHJ1bmsKKzQzNTI4IGIwOTgxZjBjMThmZWI2ZWMzZTdmNjFlNjI3NDU0YzAxZWY2MTg4ZmIgcmVsZWFzZTI0LW1haW50Cis0MzUyOSA4ZDA1NzlkMmI2NjI3OTJhM2U5MDVkMDNhNjMxYjM3NTBlYWYxYjliIGxlZ2FjeS10cnVuaworNDM1MzAgODIzYzQ4ZDY4NzFlYzc5M2FmM2FiNTg0YjIwMmFiNWY5OTFkNGJiNiByZWxlYXNlMjQtbWFpbnQKKzQzNTMxIDJjY2U5YmNkYzlmNjQ1OTViYTUxY2E4ZWZhODcyZTNlNjkzMzExZDIgbGVnYWN5LXRydW5rCis0MzUzMiA1ZjM1N2U2MGNkZGVhNTljZjE1MWRiMDkyNzI3MWU2YzM1ZDg0NjFmIGxlZ2FjeS10cnVuaworNDM1MzMgOTFlOWZiNWNmZTE0MjU1YjM5NjM4ZGU3N2RmMWIwZjQyZTNhOGMzNyBsZWdhY3ktdHJ1bmsKKzQzNTM0IDgzOTg4MzU0YjY0ZDlhODhiZmFlYzMwNDYxYzU5ZDc0Y2RkOWQ2MWYgbGVnYWN5LXRydW5rCis0MzUzNSBiNzMxNzRhZjI2YTliNWQ3ZWE5M2YwZmJmODgyZjAyZmY4MTNkZTk3IHJlbGVhc2UyNC1tYWludAorNDM1MzYgZmFiNDY5MzYxYmJjMGU0Yjk5OGI1ZGUxMmIxZDBkNjUwZGExMGNkYyBsZWdhY3ktdHJ1bmsKKzQzNTM3IGFjZTY3ZTNiY2E2ODMyZTE0YmE0ZWFjNWE1ZGRiYjBiYWE3NzRlZmQgcmVsZWFzZTI0LW1haW50Cis0MzUzOCAzYTgxZGNlYWE5YThiZTQxM2E3ZWY3ZThjMzMxYjMyNzc1MmI1ZTU1IGxlZ2FjeS10cnVuaworNDM1MzkgNGFiOGVjOWU1OWRmYWYzNDkxYzM0MDUxNTRmZmU1YzFhYjg4MDRjNCBsZWdhY3ktdHJ1bmsKKzQzNTQwIDBlNGIzY2FkODlmZTZjMjI2ZjBhYjM1Njc2YzIxMThiOTQ4MTU1NTIgbGVnYWN5LXRydW5rCis0MzU0MiAzZDRhM2Y0ZmM5OGU4YjFmYWVhNDNlMWYwNjdjZTZmYzEwODE0Y2MyIGxlZ2FjeS10cnVuaworNDM1NDMgNWUxY2YyMWQ0YWIyMzE5MGVhNTNkYTU5ZmE2MTcyYTZiNDQwMTUyNiBsZWdhY3ktdHJ1bmsKKzQzNTQ0IDRiNjVhYjQxYzc3MTdmZDVlYWQzNDYwZDgxZjYyMmUzNTdiNGNiNDYgbGVnYWN5LXRydW5rCis0MzU0NSBmZTk3YzAwMTZkNGIxM2ZmYjc1N2Y4ZDkyY2U0MWI1NDE1ZDg3ZDZmIGxlZ2FjeS10cnVuaworNDM1NDYgYTZiY2U3YWViZTA1YmNmZDNhMTEzYTY1MDM3OWE2MmJkOWRiNGI4YSBsZWdhY3ktdHJ1bmsKKzQzNTQ3IDRhMjA2ZmNlNWZlN2E4NDI4ZDlhYjNkNDM3MGI1YzJlM2M4YTcwMDYgbGVnYWN5LXRydW5rCis0MzU0OCA1YTZjN2Q2ZGVmMGM5Y2U1NWMwZTY4NWRkZTc5MmZhNTEzODNkMDA5IGxlZ2FjeS10cnVuaworNDM1NDkgM2FhMGE0ODI3ODg4YjI0NDRlOTBmMTFiY2Y3YmE2OWQwZDUwMjBmZSBsZWdhY3ktdHJ1bmsKKzQzNTUwIDgwNjhjMjJjMzcyNGU2Y2ZlMzQwODQ5ZjRlNzI2OTZkN2Q1NDhiNmMgbGVnYWN5LXRydW5rCis0MzU1MSA1M2VmNmMzNzcyNzFkZjhkYzhkYjNhNTQ4ZTAzNGNiN2UxMDJmMTM5IHJlbGVhc2UyNC1tYWludAorNDM1NTIgZjRkODhjZmFlYzYwYWM1MjBlNzZkMjJhNTI0MDgyMTU5ZDY1ZTFjMiBsZWdhY3ktdHJ1bmsKKzQzNTUzIDQ4Mzc3MjJhNjBmMDNkOTY1NmZhOGUwNDc0ZTcwNjdlYWU2ZmY5OTIgbGVnYWN5LXRydW5rCis0MzU1NCBjZjEwZjI0NDM1NDJmNmQyYmU0ZTZkOTc0NWM0Y2U3ZTc4NWZjNjllIGxlZ2FjeS10cnVuaworNDM1NTUgMmNmM2I1YzQ1MWQ3NDViMzU1YzNiMmNhNmJhMTgyMWVkYWI3Mjg1NyBsZWdhY3ktdHJ1bmsKKzQzNTU2IDI2MGVlMzkxZjkwOGYyM2UyZWU2OTcwNjI3NGM5YzMxNWFjZWM4NDkgbGVnYWN5LXRydW5rCis0MzU1NyBhMDY2ODVmMDg4ODY3ZmE3YmFjN2I4N2JjYzgzMDM1NjQzYmVjZTU4IGxlZ2FjeS10cnVuaworNDM1NTggZTk1NTI4NGNkNjk0MDJkYWIyNTg3NzYzZWMxZjBmZTIxZjM3MWUwZiBsZWdhY3ktdHJ1bmsKKzQzNTU5IDg1YjI2ZjRmYTJhNTA0ZmRiNTM0YzlhNTEyNjg2OWViMDJiNzYzOWMgbGVnYWN5LXRydW5rCis0MzU2MCAyODM0Y2NmNTUyZjM3ZjY3Y2U3YWFkYmU4NjI5ZjdjZTQ0OGZhNDI3IGxlZ2FjeS10cnVuaworNDM1NjEgYTYwYTk0NDNlOGRhZDllMmZkMDg4NjRjZjhiYWVhZGJiMmEyNDk4OCBsZWdhY3ktdHJ1bmsKKzQzNTYyIDljMmE0NjJkNjZiYjczYWFjOGE4NDJkNjFhZTk1MzA4MmRkNGM4NjYgbGVnYWN5LXRydW5rCis0MzU2MyA0MDIwY2Y2YzM4M2UwNjA2ZTY4NWE0OTVjYmIwZjAyYjk1ODIxOTJlIGxlZ2FjeS10cnVuaworNDM1NjQgZWE5YTAzYjhiOWY2YjFlZTYwY2YzNWY1MjE0ZTA2M2E2YjA0MjJiMSBsZWdhY3ktdHJ1bmsKKzQzNTY1IGRmYzMzZWM3ZjczYTg1ZmVhYjA4MjkwOGNhMWE4MDc5YWZmODhjMjMgbGVnYWN5LXRydW5rCis0MzU2NiA3ODI2MDQ5YWNiNGIxZDNhYzExMmM4YjVmN2IwYzIyMzhmNWNhZWRkIGxlZ2FjeS10cnVuaworNDM1NjcgNTAxZmRhNTExYjBhYmQ0ZDdkYWQ3ZjZmMjM0ZjkyZjY0OTRhNGJiNyBsZWdhY3ktdHJ1bmsKKzQzNTY4IDA5YjhlNWExMjE0NmNjOThmOTk3MzM4ZmM4YjQ1YTMwMzA4OTE5M2QgbGVnYWN5LXRydW5rCis0MzU2OSA1NDZiNjMxOTI0MDA2MmU5ZTY0YTdiYWMyYzkxOGQ3MmQ2MmYwMjI5IGxlZ2FjeS10cnVuaworNDM1NzAgMTAwNDBkMTg3YzIxMDRmNThmYmJkNGI0NmZkMzUyMGE4YTFlZGEzMiByZWxlYXNlMjQtbWFpbnQKKzQzNTcyIGNlYTU0YzlkOTIxZDU3YTk4ZTQ5NGUzYjNmMWY0YmVkYjQ3Njc0YmYgbGVnYWN5LXRydW5rCis0MzU3NCBlODJhYTgwNDE4MjFhMzU5MzMwNTFhNzE1YzJkZjA4MWE1ZWZlMmMxIGxlZ2FjeS10cnVuaworNDM1NzUgYTM0ODE4NzExMzJjZTY1NWMxNDQ3NDIyNTVjN2ZkODRkMjdiZDdlMCBsZWdhY3ktdHJ1bmsKKzQzNTc4IDc5ODZhNWIxMzFlZDJjMDdkNDk4MjE3MWEyMDA3M2MxZmVmZmY5ZWIgbGVnYWN5LXRydW5rCis0MzU3OSBlOTU2ZTE2ZTc0NDRmYjI0YmM4ZmQxNDI2N2RkYTZhZWE1M2U1YjRkIGxlZ2FjeS10cnVuaworNDM1ODEgNTdiMWZmMTM4OTk1ZTg3MDE5YTU1ZDVkYzUzZDRlN2JmZjIwNjQ0NSBsZWdhY3ktdHJ1bmsKKzQzNTgyIDNlZWE2NWJiODk2ZWRjMDYzZjI3YWJmMDU0ODY3OTllZmI3NDVhOGYgbGVnYWN5LXRydW5rCis0MzU4MyA1MTMzYjViMGI0YTg0NThkZDVlODU5NzUwYmE0NTE3NmRmZjlmMTU5IGxlZ2FjeS10cnVuaworNDM1ODQgZTE0MjU1ZGY3ZmQxNjFlODgwYjQ1N2FhZmQ2ZjliOTAwOWE5Y2NjNSBsZWdhY3ktdHJ1bmsKKzQzNTg1IDkyYTE3YTI4MjFlMDRlMTY5YmFjMTQ1OTgyMjEwOGRjMDBkODEwZDYgcmVsZWFzZTI0LW1haW50Cis0MzU4NiBlYjY5ZDJlMzEzNGNlYjBhNTNkNDZmMmI5NzJlN2E2MmExOGE1MDY0IGxlZ2FjeS10cnVuaworNDM1ODcgZTgxNGFkOTcwZmM2YTkxNjVkMDVmNDEzOGEzMjRmZmYxOTJiZDQzNCBsZWdhY3ktdHJ1bmsKKzQzNTg4IGZiYzYyZGI5N2U0MzljNWJmZjE1MjE1ZGI2ODI4NGI0NGVjN2E2NWQgbGVnYWN5LXRydW5rCis0MzU4OSBhOGNkOTA1ZmQ5NmNkM2VhZDJlZTNiNGI1MzdkNTUyY2M4OWM4ODJiIGxlZ2FjeS10cnVuaworNDM1OTAgNzk2YWNkZTcwMTk1NDExZjEzMDZjMWYxMWVhMThlMTJkYTM1MTRiYSBsZWdhY3ktdHJ1bmsKKzQzNTkxIGJkYmUwN2Q5NmI4ZWY0ZGIzNWNhMWE0N2IxMWMzY2YzOTVmNjQyYWEgbGVnYWN5LXRydW5rCis0MzU5MiAwMWZkMDkzYjg3OGNjNzcwMjNmNDVhNmQyMzM5MmMxMDk3MmEwZjJmIGxlZ2FjeS10cnVuaworNDM1OTMgYmJlMWNkYzkyNjA1MWFkODI4YzgwNDVlMzBjMDNkYmViYWVhMmU2YSBsZWdhY3ktdHJ1bmsKKzQzNTk0IDExNTQyOGJiMWQzZjY0NWJlOGY4ODc4MGRlYzU5NTZlYTZmZjUyMjcgbGVnYWN5LXRydW5rCis0MzU5NSA1Y2M2ZDcxNTM3YTMxYTk1ZjNkMzkwYjFhNjczN2RkMDQ0ZmQyYmE2IGxlZ2FjeS10cnVuaworNDM1OTYgNmQ1MGZkMzY0Y2Y1Y2I1OTZkM2YwZDQyZTdjNTY5MTc4NTE4NWJkOSBsZWdhY3ktdHJ1bmsKKzQzNTk3IGU0NTdiMjRmOThjNTFmNzNmODA2OWVmMWI0ZjI5Mjg3M2FiYzdmOGIgcmVsZWFzZTI0LW1haW50Cis0MzU5OCAzNWM0YjA5MzNhOGI3ZTU5ZDE2NGJiYjQzYTVkM2U3YTY1MTk2N2IwIHJlbGVhc2UyNC1tYWludAorNDM1OTkgZjVhZDNjN2VjMmNiZjQ1M2JmZTViOGEyMjliOTVmMzhjNjNhZDMxZCByZWxlYXNlMjQtbWFpbnQKKzQzNjAwIGJjOWQ1M2MwMGRhZDZjMzYzMDEwNDc4ZGQzMDQxNjAyZDVhMWIzMTUgbGVnYWN5LXRydW5rCis0MzYwMSBlMmIzYTdkOWFjYTkxOGFkNWM1MjYyNzIyNWY5ZjZmNzVhYjk1YjczIHJlbGVhc2UyNC1tYWludAorNDM2MDQgMTA0OWU5YWViMzg1MDlmZWVlMWRhNTNiYTBkMWJlZGM0ODJiMWU2OSBsZWdhY3ktdHJ1bmsKKzQzNjA2IGEzODMwMzc3ZTFhNzk2MjE5YzEyNGJmZGNmMjkwYmUzMzAxMjUxY2IgbGVnYWN5LXRydW5rCis0MzYwNyAyY2QxZTViMTVlMDUwZGUzYmQ2ZTRhM2NhN2MzNjViMmE2ZTYzM2FkIGxlZ2FjeS10cnVuaworNDM2MDggMjlhMDZhMmYzZjJkOGYyNTgzN2M2NzgwNWQxMGUwZjI5ZGQ5NDA2NCBsZWdhY3ktdHJ1bmsKKzQzNjA5IDYwYmVkNjQxYjZkMDMzMDA0NDUzZjhiNzY5NDJjZWQ0MTBmMzljMjUgbGVnYWN5LXRydW5rCis0MzYxMCA1YWEzY2VmNGE4YTdiNDkyMmFjODNiOWE0NTNkNWFhZjA3YjgxMmRkIGxlZ2FjeS10cnVuaworNDM2MTEgNmRiZWE5MTFlODgxMGE0YTI1MzI1YTY2YTgwNGZhZDljNjFkZWZiNyBsZWdhY3ktdHJ1bmsKKzQzNjEyIDBmM2I3YWZhMTg3YWU2NmJkYzE3NjBkMGZlZWRiYmRhYzgyMzZkOGYgcmVsZWFzZTI0LW1haW50Cis0MzYxMyA0OWRiZWRmYjFkNzQ4MzBlNmExNTU5OTE3MzZkOWYzM2MxYTRlOTRiIGxlZ2FjeS10cnVuaworNDM2MTQgMTZhNjRlMzk0NjAyMmZiOGIzMWY2YWM1MjQyYWJhYWVlOWNlOWUyYSBsZWdhY3ktdHJ1bmsKKzQzNjE1IGVmZjZjNTM0ODNmZjM5YTMyNjQ2M2Q0NzA5OWQ2MzNmNjIzZWMyMjYgbGVnYWN5LXRydW5rCis0MzYxNiAwN2U0NGZkMDZjZjc2MzllNzg1MTk1MmNjN2U5NzJkZmZhNjc4Y2RlIGxlZ2FjeS10cnVuaworNDM2MTcgMmY1N2RhOTIxYWVmN2MxZWE2Nzk5Yzc5OWE3MmU1NGFjNTc4YjVjYyBsZWdhY3ktdHJ1bmsKKzQzNjE4IGRjY2U4MWI3ZTY0ZDAzYzg1NTQxOWMyMjA3ZjQxZjdjOWY3YzE0ZmUgcmVsZWFzZTI0LW1haW50Cis0MzYyMCBkMjcwNThjNDA5ZGYzYzY5NWNkYzUwNzM5OTczMGQ2ZGNlZDA1ODk0IGxlZ2FjeS10cnVuaworNDM2MjIgYzFjZWYxZDJkY2NmNGI5ODQxZjZkMGU0NDg3MDdjN2EzNWYyNWFmNSBsZWdhY3ktdHJ1bmsKKzQzNjIzIGQyNjk3YzUyY2NhZTU5YjkyYjAwYjczYWVlYWEwNjJiYmI5MDE1M2UgbGVnYWN5LXRydW5rCis0MzYyNCA2YWIxNWZjODVjMmQwYzY4Yzc3Y2M2OTVmODdjZDI2YmNkZTliN2ZjIGxlZ2FjeS10cnVuaworNDM2MjYgYjYwMzMwNzI5MmZjNzRhZTg2YWY2YTU1OGVlMTA0MzdhZGM4YTNjNSBsZWdhY3ktdHJ1bmsKKzQzNjI3IGFkZDAwNzg3MGJiZGFkMzkwOTIxZDkyMGE2NGQzZDJhMjU4MjY3OTAgbGVnYWN5LXRydW5rCis0MzYyOCBkMzQ1MTY1ODgyNzJhZWUxYzgzYjk4ZTRkYjU0M2JmYTg5ZmNkYTc5IGxlZ2FjeS10cnVuaworNDM2MjkgMmMzOGVlNGJkZDhhYjI5NWU0OTlhYjUzMzc0NGIyZWNjY2MxY2RjMyBsZWdhY3ktdHJ1bmsKKzQzNjMwIGMxMTViM2FlMWMxODc5YTNiMDBiZWQwZTU3YmI3YWVjOTcxMDRhNmYgbGVnYWN5LXRydW5rCis0MzYzMSAxZjEwOWE0OTUzYzY5YTIzOTE2OTExNDRmNjY4YjExZWI3ZjkwZWZlIGxlZ2FjeS10cnVuaworNDM2MzIgMDRhZmIzNjUwODQ3NjBlYWNlYTZkZDhhZGNmYTI4MjdmYTA0ZmI2NCBsZWdhY3ktdHJ1bmsKKzQzNjMzIGExN2I1Mjk0ZTk5M2NhOTZmYzEwMWNlNWI5OGRmOTljOTIyMTMwNDcgbGVnYWN5LXRydW5rCis0MzYzNCA5ZWNiY2U1NWE0NTQ2NWQ4YTA0YmJlNGRlOTQwN2Y5MjcyNmViNzdiIGxlZ2FjeS10cnVuaworNDM2MzUgOGVmZGVmMmVjZjNiMTk1ODVkMTI1YmJkMDMyMjZkNjQwOTFmNzliMSBsZWdhY3ktdHJ1bmsKKzQzNjM2IGY4ZmMzMGMwZmM3YzM0NTIxOTNhMWY4YzNmM2IxZTliOGE4NmI3NzkgbGVnYWN5LXRydW5rCis0MzYzOCAyMGZmYzJjYTAzZTBjYTUxYmFmODk2NjBkOGZiOWMzZTY5NjYyMDExIGxlZ2FjeS10cnVuaworNDM2MzkgNjI1NjdiYmU3ZDg4ZGE1OGIwMTRlOTAzOWMwY2JlYzQ3M2U3ZjgwNSBsZWdhY3ktdHJ1bmsKKzQzNjQwIDU4YjhkMjk4MjE0NGY4OGQzNjVjYjQ5OTJkYjlhYWZhOTQ0NjM2NjAgbGVnYWN5LXRydW5rCis0MzY0MSBlNjU4MjkwNWVlYmE2YjU2YmM3ZjI1YTNhZGI4NjQxNDg4OGFiNzI4IGxlZ2FjeS10cnVuaworNDM2NDIgOTAzZTMxNjIwOTllMjkwZjg4YjFiZTUxNzE4OGUxY2M5ZTgwM2ZkZCBsZWdhY3ktdHJ1bmsKKzQzNjQ0IDg1MmYxYzFhODliNGQzNGU2MTc5ODcxNDgxNjJkYjdhOTJkMDBkMzEgbGVnYWN5LXRydW5rCis0MzY0NSBlNzA5ZTYyODg2ZTYwMzk0NTIzOTUyMDUwMzU5MTNkZmFhMjU3YmQxIGxlZ2FjeS10cnVuaworNDM2NDYgZDZlY2JhNTk2ZTFlNjg5MWQwNGE2YTFiZDhlNjc5ZjM5YWU3YjBkZiBsZWdhY3ktdHJ1bmsKKzQzNjQ3IDI5NjM5MmM3MTA2OTBlNjBkZDE0ZDNkNGViYjExM2MzN2Q1ZjkzNjEgbGVnYWN5LXRydW5rCis0MzY0OCA0YTk5OWM2ZTAwYzAyZmRhNWFlMDEzNTVlNThjNWQyNmQ4OTY3ZjM2IGxlZ2FjeS10cnVuaworNDM2NDkgYTk4MmIwMmJlYzBiZjE4NDUwNjJiZjU4NWE0ZmQxYTZhMWE1MTVhNiBsZWdhY3ktdHJ1bmsKKzQzNjUwIDEwNWE4ZGQwMTg1MTY2NTNiZDAxNWY2NjZiNzgzYWFlM2M3OTA2ODQgbGVnYWN5LXRydW5rCis0MzY1MSA4OTZmOWZlYWQxN2U3MjBlYzRhMjFkZTNhYzIxNDUxOGRhODQ4NDVmIGxlZ2FjeS10cnVuaworNDM2NTMgYTBmMmMzOGQ4NWY0NTNhYzk2ZTU5NmVmZjI3ZTBjMDQxMzMwYzliNSBsZWdhY3ktdHJ1bmsKKzQzNjU5IDM5NWIxZjVjOTc1MTQ5M2NhZTcxYjRlODQxNDBjYWRmMTkyOTQ2NjggbGVnYWN5LXRydW5rCis0MzY2MCA0Yjc2MWE2MzM5OWM0MjdiYjc4YjUzZDJmODc2MmYyYzg0N2ZhNDA4IGxlZ2FjeS10cnVuaworNDM2NjEgNjlmNzk1MTc3NjFkMTJhNjNlZWYwNmRkZGVkNzkxMDBhMWY1MWExZiBsZWdhY3ktdHJ1bmsKKzQzNjYyIGRiZjViMmYyYTQyOTE2ODcwMTc0Mjc2ZDFhOGM2NWYwMzY0MzE0NWEgbGVnYWN5LXRydW5rCis0MzY2MyA2NTMzMzhhYTY5ZjJkN2RjMGQxNmJmNzFmZWU2OThjMjIyYjFlOTIyIHJlbGVhc2UyNC1tYWludAorNDM2NjUgMDk5OTA2NjEyMjZkYmFhNWMzMGRlMTRjOTQ3ZGI0ZDYwMTA1YWRlMyBsZWdhY3ktdHJ1bmsKKzQzNjY2IGVkNmZlNzI5MTA4Mzk5OGU1NmMzNTlmZjY3MjE5NGMwNzEwZTQzMmIgbGVnYWN5LXRydW5rCis0MzY2NyA5NzZjMDEwOTFiMzg1ZGVkOTA0NTJlMWJmNWY1ODQ4MjUzNWFlOGEzIGxlZ2FjeS10cnVuaworNDM2NjggZDM5NjlhZWJhNzc3ZDEwMDZjZGY5OWRiNDYwYThkYzhhNDBlMzg3MiBsZWdhY3ktdHJ1bmsKKzQzNjY5IDQ4OThmMTk2YTI0ZGViY2VkNWI0ODU4NzU2MDg3NDVhMzgzYWE0ZDQgbGVnYWN5LXRydW5rCis0MzY3MCAzZDRmMzUzYzNkNGZiMjY5NDk2MmIyNTY0ZDc5ZWQ5NzdiMjBiMmFlIGxlZ2FjeS10cnVuaworNDM2NzEgNDhkMTJkZWYzMmIzYzhjZWI5OTQ0N2YwMGY3ZmFiYjZkZTdhM2U3ZiBsZWdhY3ktdHJ1bmsKKzQzNjc1IDk3YmMzNDhkYmM1ZGYyZDlkODYxOTBjYWEzNDE5NjYxMDllNGViYzIgbGVnYWN5LXRydW5rCis0MzY3OCA1ZWM4ODgzYTJlZjlhMTY0MmI2YzA3ZmNiZDc2OGY0MDdkNzE1NGY3IGxlZ2FjeS10cnVuaworNDM2NzkgZjY2MzVmMzA0Njk1ZTY2YmY1OTU5MzhkZjc3M2MyMDllZDljNGRiMCBsZWdhY3ktdHJ1bmsKKzQzNjgwIDQ4Y2RlMmY4ZDUwZTFmMTM5MzIxZDQ0Y2YzZmY3NzhiZmNhNDdmZjggcmVsZWFzZTI0LW1haW50Cis0MzY4MSAzNjliYjVmNjdlZjY4NTdkMzE1MGI0MGIzYjU3YWVhODNhMjIwOGI5IGxlZ2FjeS10cnVuaworNDM2ODIgOTYwYmY2YWE4NTRkZDY2NWNjZmFiOWRiMzg4YThiMTEwZTYwODZmMSBsZWdhY3ktdHJ1bmsKKzQzNjg0IGZjOGM5MGE0NGU2OGI3OTMyNzliM2Y1MGRmYzMzYjdkMWNjNmJkYzIgbGVnYWN5LXRydW5rCis0MzY4NSAxZGFmNGY3YjMwMjE2YTExZGJiMjFjMTY5Y2UyYTYxM2RkZmZkM2FlIHJlbGVhc2UyNC1tYWludAorNDM2ODYgNWIxMTlmMjU2Y2RlNWViMTFhNmRmMmEyMWJmNmEwZjViNGViZjU2NyBsZWdhY3ktdHJ1bmsKKzQzNjg3IGQ1Y2I3NzIzMjJiZjY3YzMzMzRjMzEwNThlMzhlMDUxM2Y5MTE1MTEgcmVsZWFzZTI0LW1haW50Cis0MzY4OCAzZjA5NWM1NWMyZDliMWQ0ZDdjMTdlMTdhZTQ5MTgzOGIwMTQwYTRiIGxlZ2FjeS10cnVuaworNDM2ODkgNDI4NDg3OWExOGVhZDg2M2VmZjRjZDcxMjg3MzAyNzM0ODVlM2E2NSByZWxlYXNlMjQtbWFpbnQKKzQzNjkwIGFkNGY3NTUwZDhhNDA2MjU4YWU4YzZiOWNkZDBiMTk1ODI4ZTY0MTIgbGVnYWN5LXRydW5rCis0MzY5MSBkMWRkYTExNDhmMTA5NjliOGUxMjVmMTQ3YTQwMDBmYTcyMjhmMzdlIGxlZ2FjeS10cnVuaworNDM2OTIgZDAzMjAxZjJmOWMyNGE1OTNiODk4ODY0ZjM4NjRjYzk5MmVkNzJkOSBsZWdhY3ktdHJ1bmsKKzQzNjkzIDJiMGE1ZWVjMDI4YjA3ZGZjZGFhMGI2YzA3ZTg3ZGMyMTQyNDgyY2QgbGVnYWN5LXRydW5rCis0MzY5NCBjMTZiNzUyZWU5M2JjMmFkYTYxZjUxZTMzNzIyOGViN2Y0ZWU2MTQzIGxlZ2FjeS10cnVuaworNDM2OTUgN2NkM2JmMjM5OWU2MjBhNjM0MmJmYmViYTkyMGVkNDBmZjkzZjBlOCBsZWdhY3ktdHJ1bmsKKzQzNjk2IGNlNGFmNTQxNmQ3NjVlYjVmYTg5N2RmZTE4YTVlNGMzY2Y4NWMwODggbGVnYWN5LXRydW5rCis0MzY5NyA3OWQzYzRhZDkzMTA5Yjc5OWE5YjlmZTEwZjAxZTFmZThhMmZkZmU3IGxlZ2FjeS10cnVuaworNDM2OTggZmY3MTg3ZGNhMmYxYWY0MTFhM2UzZTAzMzY5NDk1NzYyNTE1YzRmNyBsZWdhY3ktdHJ1bmsKKzQzNjk5IDIxMTQxMDM3YTEyMzNiZDk0ZWUyOGJkMDQwZDNmZmVjMzJjODcwYWQgbGVnYWN5LXRydW5rCis0MzcwMCA3YzQwNDhlYzBjNjg4YzVlNTZhNDQ5ZGEwNmU3NTQ3NDk3YzFhODUzIHJlbGVhc2UyNC1tYWludAorNDM3MDEgNTU1NmNlOTlmMjBjNDg0NmY3OGQ1NmFhNzM1NGFhNDc3MTk3ZWQ0NiBsZWdhY3ktdHJ1bmsKKzQzNzAyIDBhMDE0ODg0MDE3Y2RjYzYzZTFlNTMzYTA1MDQwYzM4MWFjNGY1NjggcmVsZWFzZTI0LW1haW50Cis0MzcwNCAwMTg0NWEyNDdjOGIxNTVlNmE2NjAzMDRmZWNkZWI5YzgyZmVhMjllIGxlZ2FjeS10cnVuaworNDM3MDUgOGM3ODI4OGQwZGJiYjE0YjgxZjEwODg0NGYzNmVmYjY4YzhlOTZjNiByZWxlYXNlMjQtbWFpbnQKKzQzNzA3IGI0M2RiODdhOTc1MjM5N2ViMTVmNWI4NTUwNTQ3MWE3MWFmZjhhMzkgbGVnYWN5LXRydW5rCis0MzcwOCAwYWUxZmFmNDExZmZmMjI0MTVhYzhlZTRkOTYxYjMzMmUxMmM1NjMxIGxlZ2FjeS10cnVuaworNDM3MDkgMGE0NWNiMzBiNjRlMGJlYzA5M2E2ZDc4OTFmOWY1OGFmZmMyM2Y5YiBsZWdhY3ktdHJ1bmsKKzQzNzE0IGE5ZGY5YjBiYTQxNjVlNGM4YTVlMGVmMTk1YjNjOWQxYjg1ZjBlYjYgbGVnYWN5LXRydW5rCis0MzcxNSAzYzdlYTUwNTE4YmUyMjE1Y2MzYjEyMTk2ZmJmOWQ4OGYxZDA3YjhkIGxlZ2FjeS10cnVuaworNDM3MTYgZDIyY2IxNGRhNjcxNDNlNzgwOGE4MjI2MTIzYjYwMDU4NWE1MWM4NyBsZWdhY3ktdHJ1bmsKKzQzNzE3IDE1ODNkM2ZkZGRjZDc2YTgwMjliOGVjM2M4ZGJiZDY2ZjlmODJiZDEgbGVnYWN5LXRydW5rCis0MzcxOCBhOTQ3MGViNjM3ZjE5NDg4MDc3MWM4MDE1NGMxM2VhY2M5ZDljY2E0IGxlZ2FjeS10cnVuaworNDM3MTkgODY5ZjNjOWQ3NDAxNDAwZWUxMGM0YTk1YmY1Y2JmM2Q0OGJhMGM5NSBsZWdhY3ktdHJ1bmsKKzQzNzIwIGY4YzRhYTU0MTNkYmEwZjZkOGMyMzdhYmI1MDE5ZDVhYWIwZDdhMDIgbGVnYWN5LXRydW5rCis0MzcyMSA5YmVkMzBkZjdhNGFlYTk0ODM2ZTk2ZWM1NWNkOTkzMDAyNDk5Y2YyIGxlZ2FjeS10cnVuaworNDM3MjIgNWJjMmI0ZTNmZmMxNjQ1ZjJiZTNjYTFkY2ZhZGNhYzY0YTkxYWRhYSBsZWdhY3ktdHJ1bmsKKzQzNzI5IDkwMDZmOTIyM2Q4MGI1YzQ2ZDZlNTRhY2U0NmYxNzEyY2M0YzI1MmYgbGVnYWN5LXRydW5rCis0MzczMCAxNDlmZTY4NGU0MDE2MDk2YmQ2YTUyZDFmNzdiZTgzYjVmZGMxZWVjIHJlbGVhc2UyNC1tYWludAorNDM3MzEgYjM2NjZjNWRkZDhhMGE4YmM4Y2IyZWU1OGIzZTQ0M2I2OGExNDZhMiBsZWdhY3ktdHJ1bmsKKzQzNzMyIDcwNzMxMjUyZGEzNDY5MzA2NTQ2M2NjNGMwZGY4N2FlMDYwOTdmODUgcmVsZWFzZTI0LW1haW50Cis0MzczNCBjMTdjNTIxOTMxNjllZTQ0Yzc1MjIxZjM5MmY3MDMwZTA0MzExMGE5IGxlZ2FjeS10cnVuaworNDM3MzUgYTdkNjg4ZWJlM2UxYTIwMzI4Zjk0NGVhODVlNmNlYWNjYTUyM2U2MCByZWxlYXNlMjQtbWFpbnQKKzQzNzM2IDQzMTYxM2JjOTM1ZTk1YTM2OGZlMTJlZTBlN2NiYTIzMjcyMWMwNTYgcmVsZWFzZTI0LW1haW50Cis0MzczNyA3MDkyNjYyNmM2YTBhMzQwMDBlNDRmMmFlNmNkYzMyOGZmNzllOWMxIHN0ZGxpYi1jbGVhbnVwCis0MzczOCBiYThmMjc2NGFhNGFjMDkwMDFmZTg5OTMxOGJmNDA0MTc2ZmI4NTY0IHN0ZGxpYi1jbGVhbnVwCis0MzczOSBhOGQ0OTI4MjkyZDhiMmIyMjhhYjBlNWEyYTk1OGIyYThkMjAwOGZiIGxlZ2FjeS10cnVuaworNDM3NDAgZWRjNmEwY2M4NDY2YmU2MWVmNGUxODgxMTE1ZTFkYTI4ZTA0MjkxOSBsZWdhY3ktdHJ1bmsKKzQzNzQxIDQ4MzExNDAxYTIwZWEzNjZhNWUxNWZiYTc1M2IwZDkwYWRhNzdlNzcgbGVnYWN5LXRydW5rCis0Mzc0MiBmMWM0NDA2YmY0ODFlYWQyMzQ1OWEyYTdlYjNhMjU4ZmFiMTZkMGIwIGxlZ2FjeS10cnVuaworNDM3NDMgYjA1MjhlOGM2Yjc4NDRkOTUzNjdlMjdiZDcxNjNlZjQyM2U5Yjk4OSBsZWdhY3ktdHJ1bmsKKzQzNzQ0IDAzNDJjNWYwZjRmZjY1YzM2ZjJmODVkYjBkZjY3MjU3MDkxYjM5NjUgbGVnYWN5LXRydW5rCis0Mzc0NiAwNDZlNmUzNDgzODE3Njk1NDI3YjI0ZDgzOTBkN2Y4MGI4NmY2ZDNjIGxlZ2FjeS10cnVuaworNDM3NDcgMmNkZjUyN2I1OGY2YTI5YWJiZjYxNjMyMTkzZGZmYzE0YmJjNDYxMCByZWxlYXNlMjQtbWFpbnQKKzQzNzQ4IDM5NTk4MTBiYzU0OTEzMjY5MmMzZjQzYTJkNGEzY2Q0N2MxM2YxYjYgbGVnYWN5LXRydW5rCis0NTIyMSAzNmJjYjgzZWNiYWQ1M2ViNjNlMjNkYTQzNDA0OTk0YzhmMDk2MDE0IGxlZ2FjeS10cnVuaworNDUyMjMgMjMxZTQyZDAzNjJlZDI2N2QzYjM1MzI1ODRhNmY3NDk1OTg5YWI0YSBsZWdhY3ktdHJ1bmsKKzQ1MjI0IDliZGE1YmE0MTY3N2NmNmIzMTQwM2Q1ZWI0Zjk1ODlkYjU4MGY4ZTggbGVnYWN5LXRydW5rCis0NTIyNSA2YWU0YWRlZmM1NzNiOGViMDZjOWRhYTU1OGU0OWVkODliNzZkODM0IGxlZ2FjeS10cnVuaworNDUyMjYgMjg2YzgxNjg5ODI2Y2FiYjE1NzcyZjJhMTkyMWE4NjUwODQ0MWE0NiBsZWdhY3ktdHJ1bmsKKzQ1MjI3IGE3OGJjMGJiMzQ1OTYyZTY5MDI5Y2UzYzA5OTA4ODhiMTRhZGNhNzkgbGVnYWN5LXRydW5rCis0NTIyOSBlYjBiOTkyN2ZmZmQwMjUyNzZhOTZkZGMyNDBhYWUyODQ4YThjNDhlIGxlZ2FjeS10cnVuaworNDUyMzIgYmQzNzU3Nzc5MzJkOTFhM2ZiMDA5NDkyYjIwOGZkZGFmOTdlYTcwOSBsZWdhY3ktdHJ1bmsKKzQ1MjMzIDBmMmU4NmQwOGQ4YWZmMjJmMDkyOWM3ZDk5MTdiNmQ5MGQyMTVlOWEgbGVnYWN5LXRydW5rCis0NTIzNCA0MjAyM2Y1YjdkNmQxZGQ3M2IxZTQ5MWU3Zjk3MzIxZDhhMjhkZmI3IGxlZ2FjeS10cnVuaworNDUyMzUgYzc4MmNmNmI1MTZlNDJlODc3MTRhOWQ3YzVmZjY1NDdiZjNhMDdkOCBsZWdhY3ktdHJ1bmsKKzQ1MjM2IDgwOTRjYzBjOThkN2E2NDJjYTM5YWE3MDlkMGNiODg0NTk3YTRkMzQgbGVnYWN5LXRydW5rCis0NTIzNyAzMzQyM2I4NDU1NTQwOTZiMjAyMWEzZTFmZjhhODRjMDhjNDAwZDdjIGxlZ2FjeS10cnVuaworNDUyMzggM2Q2MDE1MTM5MmMyMjU3ZDZiNmE1NzlkYTI5OWY3MDE2ZjNjZmZkYSBsZWdhY3ktdHJ1bmsKKzQ1MjM5IDIxM2M0MTk4ZmUyM2Q5YmQ1ODU4NWU2MWYzOGM0NzI3NzFhNjRjY2MgbGVnYWN5LXRydW5rCis0NTI0MCBiNzQ0MGFiNWNkNzA2ZjQ5MGZhYzg3MDQ3YjNmMjdiYjk5OWFhYTg2IGxlZ2FjeS10cnVuaworNDUyNDEgNWIzNTFkZDdkMDgxNWRlMGUyMThiNjdmOGU1ZDBjOWJlZmVmMzhlMCBsZWdhY3ktdHJ1bmsKKzQ1MjQyIDBiYzNmNzRhNGE0NzE4NDE5ZWIyY2U5NjBmYWQyZWU3Y2RiYjFhMjAgbGVnYWN5LXRydW5rCis0NTI0MyAyZTIzNGY0ZmQ3NjM5OTA3MzZkZTZkNDlkNDM2MjA5ODA3ZjRhNzZjIGxlZ2FjeS10cnVuaworNDUyNDUgZjZhMWY1NWQzZTVjZTZiYjkzZGM4OGU1ODhiMTdlODQzNjI2ZWNhNyBsZWdhY3ktdHJ1bmsKKzQ1MjQ2IGRkMDg1YzEzYzQ5YTc1ZTg0YmY3NTZhYmU0ZGIwZTZkYTJjNjYxNGUgbGVnYWN5LXRydW5rCis0NTI0NyBkYzlhMzZjOGI0NzMwYWJjOGY5MzVmZWRhNmE2MzEzNGI0ZDQxZDNjIGxlZ2FjeS10cnVuaworNDUyNDggZDExMzY2ZjdlMWU3YTU4NjkyMTI2MGEwYTVmY2FiOWQzOTFjNThjMCBsZWdhY3ktdHJ1bmsKKzQ1MjQ5IDdjYjZhMzA0NDYwZmMwMGFiMGI5NDhkNjk4NmUyYjdjNzVhN2I0NDggbGVnYWN5LXRydW5rCis0NTI1MCBlMjljZGY4Njc4ZmU5OGUyZGYwZGUxNzBlMzdiOWM1YmNjMjI5ODZmIGxlZ2FjeS10cnVuaworNDUyNTEgMDBiZjhmMDBlYzYzMjc1NzE4NmM1OTIwYWE1OTNkY2JlOGUxNTM2MiBsZWdhY3ktdHJ1bmsKKzQ1MjUyIDA3MjA1MDYxNWZjMGMxNjZjYjdkNTBkNzY0Y2U3OTNmZTdjNTZiYmMgbGVnYWN5LXRydW5rCis0NTI1MyBiMTEyZDhjNzk4OGMzMTdjMGRmYTliNjk2MjUwMGViMWJkYTM4MTg2IGxlZ2FjeS10cnVuaworNDUyNTQgMGFmN2YxODA4N2ExZmZmYWY0Mjc4YWMzNmI1MGNlMTE3NzM0MDI1NiBsZWdhY3ktdHJ1bmsKKzQ1MjU1IDFhM2U3OTlkMDYzNDFiNDEzOTUxMmEwMTA2OTVjNmFiMTMzNDcwYWEgbGVnYWN5LXRydW5rCis0NTI1NiAzYjRmZGM3NWJlMTJjZTcxYWE0ZTExOTViYzY4MDdjOWQ2NTI2ZmYxIGxlZ2FjeS10cnVuaworNDUyNTcgMjkyODU0YzQzYjk5YjlmMzU5MWFjZjNjZWYyZDdmYThhN2E2MGEyYSBsZWdhY3ktdHJ1bmsKKzQ1MjU4IDFjZWQ3OWYwODA1MDljNDQ0ZGQ1MTQxMTU0N2I3MTMxMzE4MDlhMjcgbGVnYWN5LXRydW5rCis0NTI1OSBhODQxNmFkMWE1YzU5YzM0MDc3M2U1YTc4NTM3ZjFiYjA2YzdkMGE4IGxlZ2FjeS10cnVuaworNDUyNjAgMTNkZDMwOTc0YWQ2OTEyZTlkMTg2OTAxOWJiZWQ3YzNkNjBiZjIyZCByZWxlYXNlMjQtbWFpbnQKKzQ1MjYxIGFlZWU4NWI2YTVkZDg4YWQxZWM4MTUyM2RmZWEyZGFhZGI5NGUxNjAgbGVnYWN5LXRydW5rCis0NTI2MiBmNzdkYmMwZjk4ZTM0MzUyMWZiZDg0NjMzZWQwZmRjN2Q3OGQ5NjYwIGxlZ2FjeS10cnVuaworNDUyNjMgYWRkZTlkZTEwMjg3YWQ0NWQ5NzJiNTg2Y2Q3YzY0M2M3ZTk2ZDVlYyByZWxlYXNlMjQtbWFpbnQKKzQ1MjY0IDkyNDUwNGIwMDE5NjQ5MDQxZmQ1M2VmMjc0MjljODBkN2Q5ZGUwZmUgbGVnYWN5LXRydW5rCis0NTI2NSBhZWQxYzNjMzViODM2M2U4MzU4N2U5MTAxMzJhMWMxZGYzMWE1Y2M2IGxlZ2FjeS10cnVuaworNDUyNjYgNmRkMGQ4YjRiYWM1NzRjZTRkMDY4NTI5ZGE5ZGIxNGE5MjJlMDc3OCBsZWdhY3ktdHJ1bmsKKzQ1MjY3IDA1OTFkMDMyMmYwNGMyNGRhNWZiOGI3MzE4YzI3ZWRjZGZiODE1YTAgbGVnYWN5LXRydW5rCis0NTI2OSAxYjA3ODQ5M2Q1MzgyYjgzZjUzMzM2N2ZjMmFjNWJlZDlhN2U0Y2Y3IGxlZ2FjeS10cnVuaworNDUyNzAgMmIyZTljMzg4ZmJiZTIyNTU2Yzk4ZWY5NzA3ZDAzMTZmYmU2OWE0MSBsZWdhY3ktdHJ1bmsKKzQ1MjcxIDU2ZTAwYzliNTAxMTczNDY0OTIwYjRjZjVlN2JmZjRjMWI2MjZmNjAgbGVnYWN5LXRydW5rCis0NTI3MiA0NGZiMDNhNmE1MjQ5NzA4N2UwZWQyYjY2Y2I4NzMwOTZjMDI2ZmI5IGxlZ2FjeS10cnVuaworNDUyNzMgYzRjNWVlYjA3NzM5YWI0MTA1NTM3NmVhZTU3ZTM3NDY3MWYzNDA1YSBsZWdhY3ktdHJ1bmsKKzQ1Mjc0IGY3NmI1ZDk4NzMxNGQ3NDQ3NTgwZjU1ZTdhZTllYWVhZTBlODU5NWIgbGVnYWN5LXRydW5rCis0NTI3NSBjYTk1YWQ1YjBmYmM2MWY5ZWQxMTVlZTYwMDg2ZGEyNzI3ZTdhMzg3IGxlZ2FjeS10cnVuaworNDUyNzYgMzhhY2I5MTgyNGZjYzU3MzU0ZjNjN2JmYjVkYzhmODVkMzY2M2YxNiBsZWdhY3ktdHJ1bmsKKzQ1Mjc3IGM3MzJmNjZjOTEzZmQzNjJiYWJhMWM1YjFhNGMwNWQ4MjY0MjgxMjYgbGVnYWN5LXRydW5rCis0NTI3OCBlMDcwYzMxNmViNDU1OWE4ZmU4OTkzNGUwM2M2Yjc1NjA2Yjc1ZDI0IGxlZ2FjeS10cnVuaworNDUyNzkgZjQ0OGQwMDc1NjkxZjk1MmQ3Y2Q0YmY4YjA5MGFjZmU0Y2MwOWRkMCBsZWdhY3ktdHJ1bmsKKzQ1MjgwIDQ4MGE1NjI1ZTI4NjkyMDE3NDQ3MDIxNDVkMjY1ZTQ5OTk4YjBhZjYgbGVnYWN5LXRydW5rCis0NTI4MSBiNzRkM2FkYmY4ODg1ZWZiZGEyNGZlOTI4ZDMxYzE2Y2Q5OTdlYmI5IGxlZ2FjeS10cnVuaworNDUyODIgZTYwYjMxNjQ3YTZiMzFkMDdhMTc1MTU5NjU3OWUzYWRmNmQ4NTY0MiBsZWdhY3ktdHJ1bmsKKzQ1MjgzIDdlZDBmMDAzYmE2MzEzNmExNTg4MjAzMTg3YmQ2MWUzMWU4Y2NiMDQgbGVnYWN5LXRydW5rCis0NTI4NCA3YWZhYTc1MmM3NzIwOGUzM2Y3ZDBkNWY3NjU5NjBhNmE4ODM4YzhkIGxlZ2FjeS10cnVuaworNDUyODUgY2QxOTVlMDczZGQ0NjVkMGY1YTAwZmJlMmI4ODYxMDY0NmVlNDVlYyBsZWdhY3ktdHJ1bmsKKzQ1Mjg2IDBjYTUxMTJlM2UxMjlhM2QwODQ1MDhkMGU1N2E3N2U0ZGM0MmNkMGYgbGVnYWN5LXRydW5rCis0NTI4NyA3MmNlYjFiMzBkNGJiYzIyYWVlZGM1NTcwMjM3NDM3M2YxNzRiODg5IGxlZ2FjeS10cnVuaworNDUyODggMTlkOTliMzE1NTVjZWJjZjBlOGNmNDYwZWEzZjY3ZDg4YTQ1NTVjMCBsZWdhY3ktdHJ1bmsKKzQ1Mjg5IDFlOWQ3ZTY2YzFiY2ZhNmJhY2NmZGYyNTg1MTA0ODFhZDBjYjBlZDcgbGVnYWN5LXRydW5rCis0NTI5MCA4OTY4YjEyNDJmMTg5OTRiMzlkMzExNGE1YmY1MWI2NWFiMTljOWNiIGxlZ2FjeS10cnVuaworNDUyOTEgNmZiYzExYTAzYmNjMmEzYjY4NDk3ZmM1MDIyOThkN2ZlZWExMWI1ZSBsZWdhY3ktdHJ1bmsKKzQ1MjkyIGYxOWFkZGQ2OWFkOTM5ZjIwYTQ1MzQyYjdkY2I3ZWZiYzI4OTUwNDEgbGVnYWN5LXRydW5rCis0NTI5MyBiNDNhOTcwMjY0NzkwM2Y1MjQ1OTJkODNkZjlhZTRmNTFkMjg4MDhkIGxlZ2FjeS10cnVuaworNDUyOTQgMTU3MTc5ZDJhNGMzNTIyZTJmNDc3NzYxYTU5YWEzODA0NzAxNmJmMSBsZWdhY3ktdHJ1bmsKKzQ1Mjk2IDhhMTg4MDM2YjcxM2I0YWNmODAxYTllODZkN2MxNDIzZTY4ZDRmN2MgbGVnYWN5LXRydW5rCis0NTI5NyAyZmQ2YWQ1ODIyMDMyZmJhOGFlNmQ1MmQwMDhhYTU3OTM5OTlhMzFiIGxlZ2FjeS10cnVuaworNDUyOTggZTgwOGUyYWY5MWY2MzQ5YmQzZGZjZjFiYjcwNmFjNDc1M2UxZWEyMyBsZWdhY3ktdHJ1bmsKKzQ1Mjk5IGM4YTA5ZmQ0ZjEwZGE3ZWUxMDNiZDE5YjNiYmZmYjE5Njk2N2Q5ZjkgbGVnYWN5LXRydW5rCis0NTMwMCBjMjZmNWUyMDZkZTc5ZDU0ODljNDUxOGQ0ZGRkZmIwOTZhZmI5NjBiIGxlZ2FjeS10cnVuaworNDUzMDEgYTUzOTJiYjA3NDQwMjljZjE1YjE3MTc0NmUzMTczMjFkZTdiMzExYSByZWxlYXNlMjQtbWFpbnQKKzQ1MzAyIDBkZDMyYTZiMjk2NGUyMzQyMTA4MWMzNzk2ZTIzZTVmZGI0NmUyZWMgbGVnYWN5LXRydW5rCis0NTMwMyAyODkxMTZhNTJiYjFlOGU2N2ExZDcyMjUzNDE4MWVjNGUxMmI1ZjFlIGxlZ2FjeS10cnVuaworNDUzMDQgMWUxMmVjNDlkZjliNGRiOTg0MzA0NDg0ODdjMGQyYjUxZDcwNjY1OSByZWxlYXNlMjQtbWFpbnQKKzQ1MzA1IDM5OWE5YTcyMDk1ZjkzMGEyMzIzYTY2ODNlNzdhZjhlMzlmZWRiMWYgbGVnYWN5LXRydW5rCis0NTMwNiAxN2Y4YWRjYzczZWQ4NmI4ZjU4YzJkN2RiYTYzMDMwODVjYTJkNTlhIGxlZ2FjeS10cnVuaworNDUzMDcgYWYwNTZiNjNjZTUzNjA0MzBjMTAxZjgxZjU4N2U1YzA2NjE3ZmIwNSBsZWdhY3ktdHJ1bmsKKzQ1MzA4IDg4MzFmZDgyMmI2MDVkZGFiZWI4Yzg0NDNiMDQyMWZiM2JlODI3MTAgbGVnYWN5LXRydW5rCis0NTMwOSA3NjljNjI2MTM1NWU5MzlhMmJlMDZjMzBhMjk2N2I2NGE1NDYwNDUxIGxlZ2FjeS10cnVuaworNDUzMTAgMmU4YWI3OTdjZWFmOWQ3NDhkODVjZWQyYWE1ZGNiN2Q0NjRhNDRiYyBsZWdhY3ktdHJ1bmsKKzQ1MzExIDlhNmEwMzc1ZWYyMjk1ZWFmOTFkMjAzNDZhYWMyMjhhZDI3NTdlZGMgcmVsZWFzZTI0LW1haW50Cis0NTMxMiA2NWVjYjgzZWE3ZGRmZDIzMmVlODBlMWI0OTQ0OWMzZWM0YTc1NWNhIGxlZ2FjeS10cnVuaworNDUzMTMgYmM0ZmJiYjJkYjMwMDlmMGFiN2MwZmEwODlmNjcwOWQ1MjUwZGFiYiByZWxlYXNlMjQtbWFpbnQKKzQ1MzE0IGZlZDI5N2MyMDYyZDkyOGEwMDQ2NTA5OWI3MWRlNTYzM2I5MTIzNmMgbGVnYWN5LXRydW5rCis0NTMxNSAzNmUxNzYyZWFkODZiODBiMGFjZjk2ZDdiMjg1NjQyMjI2OTg4ZGI4IGxlZ2FjeS10cnVuaworNDUzMTYgMjJmMmM5MmExZGE3Zjk2NWZhZmNjZWY2NjJjYjY2NmIwZTljZGNhOCBsZWdhY3ktdHJ1bmsKKzQ1MzE3IGFkNDg2ZTQ4NzVjNmUxODNiNTBmMzFkNzc0YmQxODZmMTRmM2U2ZjYgbGVnYWN5LXRydW5rCis0NTMxOCBjNmUxMWY4MDRkMDBmNzYzZjQwMTVmODgyYTM1ZTM1OWFjYzc1OTNiIGxlZ2FjeS10cnVuaworNDUzMTkgMmMwNjU4OGFlNjllNjI4MmVmZmRlNWM2NjMwZWE2OTllNGY2Y2M2ZiBsZWdhY3ktdHJ1bmsKKzQ1MzIwIDQyMmNkZDI0YWY0NmM0NzRlNDM5NzRlMjY3NzY0MTQzZDEyOTYyOGMgcmVsZWFzZTI0LW1haW50Cis0NTMyMSAxMGU0N2YyN2VhMzlmYTA3Njg2YjBkNjBiNjVhMDljZDE4NDI3N2VjIGxlZ2FjeS10cnVuaworNDUzMjIgNDU1MWRhODQ3NjUxYWNjMjYxYTMzYmYyY2ZlZTdlYTU4MTAwNGEwMCByZWxlYXNlMjQtbWFpbnQKKzQ1MzI0IDIxZmNjODZlNDgyMDgyYmVjNmJkOGQzZDE5ZDUzMTVjMDI1NDA2MjggbGVnYWN5LXRydW5rCis0NTMyNSA4Yzk5OGM3NjAxOTEwZWQ0ZWNhNTNlOGEwMzIwZWJiOGEwYThkMWM2IGxlZ2FjeS10cnVuaworNDUzMjYgNzRkMDQ4MzhjZDExMjc0ZmE2MTUzODAyMDhiYzM2YmE3Yzg4N2QwYSByZWxlYXNlMjQtbWFpbnQKKzQ1MzI3IGI1Zjg5OWMxODdkNGM1Y2U3YTE3ZGExNjlkOWE1YjMwNTU5OTQ3ZjYgbGVnYWN5LXRydW5rCis0NTMyOCAxMjU2NzE4OWVmMjU3MWZkZmE5NjJkZjM4NWIyYTI3MTQ2YTE2ZjkyIGxlZ2FjeS10cnVuaworNDUzMjkgZGVjMjU5ZTRkODkxNmM2NWQwMDA1YWUyNDBmMDM3OGNhYzViN2UyOCBsZWdhY3ktdHJ1bmsKKzQ1MzMwIDJmM2YyZTMyZGZkOWQ3NmU3MTk4NjNlZTE1YmViMDExOTkxYWJjZDYgbGVnYWN5LXRydW5rCis0NTMzMSA3ZGYwYzQ0ZjM5ODYyMzY5OGRjZjMwZmI4ZTczNzA0MWM3OWU4NjFkIGxlZ2FjeS10cnVuaworNDUzMzIgYjYzMTlhNjk5ZGFiYTFkNTllZTk2MDJiOTQ5MDBhMzI0MDhkNTA1NyBsZWdhY3ktdHJ1bmsKKzQ1MzMzIDJjMDg0ZDgxYzk1MTQwMWRkMDllMDNlYWQ4MjFmMmY1YmYyZGZjMzkgbGVnYWN5LXRydW5rCis0NTMzNCAwNTRhY2VkZjNjMGQ5MGMxNDQxOWI5ZGUwMTQ4MGExOGQ0NGJiOTJiIGxlZ2FjeS10cnVuaworNDUzMzUgZjQ1YmMyNDFlMjAwMGIyZWEyYzdlMzYxNjFjYTIxNTRlZTcxNWVkOSBsZWdhY3ktdHJ1bmsKKzQ1MzM2IGIxYzZhMzg2NGIxZThjMTY5MDhlYTczMGM5ZGZhY2QwMzIyZTc0OGQgbGVnYWN5LXRydW5rCis0NTMzNyAwNjc4Y2U5ZmI2YjJiMTExMGZiNmI2NjkzZTIzOTZhYjE1YzY1ZjBlIGxlZ2FjeS10cnVuaworNDUzMzggYTg0MGU5YmFmZjk2Y2M5NzI1NmRhYzJlNWY0ZDAxZDI2NjFmZjY4MSBsZWdhY3ktdHJ1bmsKKzQ1MzM5IGQxM2RlZDkxNjVlYzQ0MTQxZjA4MGExNjkxOTU0MDA2YjJlM2I0ZmEgbGVnYWN5LXRydW5rCis0NTM0MCA2NjY3NmE4ZWNiNTJjZTRjMDMyMGQwNWNlNDg2ODZiZjMyYWRkZmMyIHJlbGVhc2UyNC1tYWludAorNDUzNDEgNWE5ZmNkNjc2YjNmZTllZDEwODcxZGNlYmUxZjIzM2ZlOTE3YjFkMCBsZWdhY3ktdHJ1bmsKKzQ1MzQyIGIxNzI0ZTkyNmUwN2M0Njk1ZjRkMGU1NWI0ZDk4OGY0Y2MwMDQ2YmEgbGVnYWN5LXRydW5rCis0NTM0MyA0MzQyZTQ0MWIxMWNjYjU1MDI4YTViM2NmMjAwMDczYzJmM2ViNjM3IGxlZ2FjeS10cnVuaworNDUzNDQgYjkzYzA1OTYwYTE1ZmFiNmM3Zjg2YWNmZmZlZjI0NTgyYzM1YjM0OCBsZWdhY3ktdHJ1bmsKKzQ1MzQ1IDM2YmZlNDZjNWM2YTYzY2JhOTFmNjMzZDkwYzFkMzNkYjBjNzg4YzMgbGVnYWN5LXRydW5rCis0NTM0NiAzZjk3MzlkZTY2MDMzMzUzYzM4NDVjMjc4MWIxM2I4NGFmNDE4MTI2IGxlZ2FjeS10cnVuaworNDUzNDcgMGEyOGYxNTc4NzVlMmMxMTQ0Zjg5MjE2YjYxM2MzNGNlOTUyOTBmMiBsZWdhY3ktdHJ1bmsKKzQ1MzQ4IDYwNjgxOGMzM2U1MGZlNjcyMzA4MzBkZDc1NWI0ODRkZWZmZmY4MDIgbGVnYWN5LXRydW5rCis0NTM0OSBhNDIzMWFhMzIwMWFlMWEzOTRlZTY0M2M1YTQ3YzdjMTk0ZjY4NGNhIGxlZ2FjeS10cnVuaworNDUzNTAgODZkYjZkZjI0MTc0NDhkYWFjMGE0MmZiNWQ4Yjg2ZWEwMDA5OWIzZiBsZWdhY3ktdHJ1bmsKKzQ1MzUxIDNhMzllZDU5N2I2OGFhZjc2MDMwMDhiM2Q0ODYyYmU4OTNhYWZiMWMgbGVnYWN5LXRydW5rCis0NTM1MiBlNzk1ZDZjODZhNWVkZTk4NDFhMGFhYTRjZjk3M2FjYzFlODc5ZTRiIGxlZ2FjeS10cnVuaworNDUzNTMgMzBkNmI5ZWFmMDJkYjhlMjlmM2ZhZjYzZWE5YjI5Y2RjMjM1ZWFjMSBsZWdhY3ktdHJ1bmsKKzQ1MzU0IDU4NjQwOTgzZmQ2NmM2OWU3OWJlOTMxMzcyNWU1N2U5NzU2NzVlZDUgbGVnYWN5LXRydW5rCis0NTM1NSBmZTg4ZTAxZmY2ZGU4YjQ5MjdiZDg3MmU5OTFlZWRkZjJhOWMxZGQwIGxlZ2FjeS10cnVuaworNDUzNTYgMjNlZGYyOTBiNjc2ZjIwYjhkNTUwMDc4OGViOWFkMmE5NzcwN2RkNiBsZWdhY3ktdHJ1bmsKKzQ1MzU3IDVhNGI5NjQxMjMyZjg1ZmZjNTA4OTliMTcwOTRhM2U3MzY2NmI2N2UgcmVsZWFzZTI0LW1haW50Cis0NTM1OCA0MTMzZTg0MWYwY2I5MWRkMTg1MjRmNGVmN2ExYTVlMzlhZjg5MGViIGxlZ2FjeS10cnVuaworNDUzNTkgMzk5YjExOWMwNThhMWI5NmNlNDI2YmViNDllYWIwNDE2MjM0Y2JiOSBsZWdhY3ktdHJ1bmsKKzQ1MzYwIDVlNzJiMGM3NDEwMGQ3NTBkM2E5ZGU5ZjA1ODk1MTcwZDUzYWIyNDQgbGVnYWN5LXRydW5rCis0NTM2MSA5NTNlYjNkYzE4ZTU0MzFmMTA0NjU3MjM5ZWI5OTczYTc1MzZmNTY5IGxlZ2FjeS10cnVuaworNDUzNjIgOTk3NTEyODllYTAzYmFkMzVmNTk5ZTgxNWVhYmEwNjg3ODU4NzFhNyBsZWdhY3ktdHJ1bmsKKzQ1MzYzIGIzNTBlOWQ3OTFlNmUyZWY3MzBlZjI3N2VlNDcyOTkzNjRiNzVkZTkgbGVnYWN5LXRydW5rCis0NTM2NCAxYjViMTZjZGJlMGUxYTBiY2JiMzc0MjZkNjJmY2M1MzQ5Y2Q2MzYzIGxlZ2FjeS10cnVuaworNDUzNjcgNzUxZjdjNzliNWZkMTQ1OTQyNThjNWMwMTNkNjYzYmU1NTU5NjE2ZSBsZWdhY3ktdHJ1bmsKKzQ1MzY4IGVhYzgzZmVlYjExZjZjOGNiNDIyODBhZTk4MDViZWMyODE3YjBiMWIgbGVnYWN5LXRydW5rCis0NTM2OSA0ZDdiMjIzN2ZhMDdmMzcxZjg5ZmU5NTkwNzVmNjBmNjNlYjFmOTk0IHJlbGVhc2UyNC1tYWludAorNDUzNzAgMzA4ZTJlOGVkNjc2NjFhMjJjODliOWExNDU5ZTJjMjk5YzM2ZWNhYiBsZWdhY3ktdHJ1bmsKKzQ1MzcxIDkxYWVjNDc0NjIxODVkZTQzNzQyOGEzMmUzNGNiYzkxODA0ZTkwZTcgbGVnYWN5LXRydW5rCis0NTM3MiBhYzc5ZTkwMzdlMDZjZjM2ZDJmOTNkYmI2OTQzNzBkZTFhZTUxNGFjIGxlZ2FjeS10cnVuaworNDUzNzMgNzIwNDc0OGMyOTIxNWQ4Y2Y0ZDY1YmJkNjc4NTM4MWU3NTViMmRhNSBsZWdhY3ktdHJ1bmsKKzQ1Mzc0IDdlZTQwNjhlMmM2MmEyNTBlMmE5ZWVjMmJmOThiYjA5MjNkZDZkMGEgbGVnYWN5LXRydW5rCis0NTM3NSAyNTRjY2NiN2VmMTc2OTlkOWM4MzE2MDBiY2E4N2U5YzdjZGJhNDkxIGxlZ2FjeS10cnVuaworNDUzNzYgZTA1N2FmMmRmZmNlYzMxOGUwN2UxYzAxMTM3MDk2MWJmNjMwZjcyOCBsZWdhY3ktdHJ1bmsKKzQ1Mzc3IGZiY2RmN2MwY2M3NGQzMTM1Y2JlM2U0ODVkMjhjZGU3NzE1NGE2YzQgbGVnYWN5LXRydW5rCis0NTM3OCAwYTBkODlkNzEwYTRkZjE1YmU2MmM1ZmRlZDExODllMDUwMWFhMTMzIGxlZ2FjeS10cnVuaworNDUzNzkgOWIyMmQ4YjdiY2FhYzQzMzU2MTgwZTYwZjZkOTc1MmEyNmY0OTk4YyBsZWdhY3ktdHJ1bmsKKzQ1MzgwIGVlNTczNDk3NDRmMzcxMWFiM2RlMGUwYzZmYWVjMmQ4OTYzOWM5MmMgbGVnYWN5LXRydW5rCis0NTM4MSBiYjNmOTA3NmQwNzljNWY0NDNlZWMxZDU3MmMwODYyOWU2Y2NmMTE1IHAzeWsKKzQ1MzgyIDkxNTBlMjYwYzQxNzRhNzU5OTQwODNhZDVlNWFmYTQ2ZWQ1ODY3NGYgbGVnYWN5LXRydW5rCis0NTM4NCBkNzFmMjZlNjQ0ODllYjFmN2VkMzk0ZmE4N2FmYzVhZGUwMjM1NjBlIGxlZ2FjeS10cnVuaworNDUzODUgNzg2ZDAzNTZkZTUxM2EyZmIzNGYxZTAyNDg5NzBhZWRmYTcxMDU3YSBsZWdhY3ktdHJ1bmsKKzQ1Mzg2IDIzMGZmZjZlMDYxOGQyNDFiMWVjMjc2YjY4ZWU3ZjcyMzBiOGVhMGYgbGVnYWN5LXRydW5rCis0NTM4NyAzN2E4ZWI3NGM1MDQ2NTEzNmM1NTQ2YTk5YWRmYzZmOTNkOGU3YTgxIGxlZ2FjeS10cnVuaworNDUzODggY2NiM2FmNDliY2IzMDFjNzI1ZmE4NTkxYTM1MWIyNjE5ZWRkMmViYyBsZWdhY3ktdHJ1bmsKKzQ1Mzg5IDIzM2IxMGVjZmNlZjY2MmVlYjlmMWNhOTRhNTJiYzIyNjdlNTcxZDQgbGVnYWN5LXRydW5rCis0NTM5MCA5YmVmMWRlYmNiYWE3Zjc3Njk1MzI0YTI5MTVlMjIyYmIzYTk5YzY5IGxlZ2FjeS10cnVuaworNDUzOTEgOTFkMTZhODdjYmU4ZWE3NmU3MjgyNWI5N2YwM2RiOGYzZGNhYzEzZiBsZWdhY3ktdHJ1bmsKKzQ1MzkyIGVjOTg2YWFiZTFmZGVmMjcxMDNhZmE1MTc4M2E5ZDllZmI3NmExMTAgbGVnYWN5LXRydW5rCis0NTM5MyBhZmU1NmI5YjY2NGIyNDE3NzZjNTQ1MzhlYmFlMmY4ZDFjMDUwOTA3IGxlZ2FjeS10cnVuaworNDUzOTQgMWQ1YTRjODIwNjFlNjhkYTNjZDFkOGQ4MjkxMzkyYTg4NzI5NTdiMCBsZWdhY3ktdHJ1bmsKKzQ1Mzk1IGQ3ZGMwMDg1ZGQ4NWM4YzQ2NDUwMDczM2FiM2M5ODBmOTIyYTBlNDggbGVnYWN5LXRydW5rCis0NTM5NiBhZjQ3ZGE1ZTljZTE0ZGI0YWNlMjIwYWI5ZmRhMDhlMDQ4YWUzMDk4IGxlZ2FjeS10cnVuaworNDU0MDEgY2Y3MWMzODE0YjBiMzE3N2M5YzAyOTA5NDFhYzJiOWJiZWEwMDY0YSBsZWdhY3ktdHJ1bmsKKzQ1NDAyIDEzNjZiZmEwODRlZTcxNzFhNGYwMjc4MWJiZTk3OWJhODlkZGU1YzUgbGVnYWN5LXRydW5rCis0NTQwNiA4NTZiZWUxNTAwYmJjZGVhYzAxNjZhNjMwOWUzN2YzODE3YWYwN2Y2IGxlZ2FjeS10cnVuaworNDU0MDcgNjQ0MWY2ZmE2NTcxYTdkMmJhMjY1MGYzZjM0ZTZlOTEzODBlYzM2MyBsZWdhY3ktdHJ1bmsKKzQ1NDA4IGI5NDBhYzRmOTU1ODZhYmMwYTc4NGFhMzVhNDJjOWVlYWUyZDZlOWYgbGVnYWN5LXRydW5rCis0NTQwOSAzMTkyOWRhMGIwNWFmYTEyOTU0NjE3ZTQxMGUzODVlNjZiZjQ4ZTUzIGxlZ2FjeS10cnVuaworNDU0MTAgNmU5YWI4N2M2MDhjZDkwNTUzN2E5ZmNiMDdkZDUyMTk2OTY2MDI2NiBsZWdhY3ktdHJ1bmsKKzQ1NDExIDI3YTYzOWM0NDcxYTRlMDA3M2I2MDlkMGY2ZmU5MWVlNjVjMzMxMzYgbGVnYWN5LXRydW5rCis0NTQxMiA2MmM5MDM4YTU3OGE4YTkyMjdlNzJjMGJlMTEyYzc5YTQyMWM0MmYzIGxlZ2FjeS10cnVuaworNDU0MTMgNTg4Zjk3YjI0YmY5ZTFmZjY1NjcwNGFkNDM5ZDI1MjNmZjY1ZDM5MCBsZWdhY3ktdHJ1bmsKKzQ1NDE0IGM2ZGY1ZTc5NTQyMzAzOWMzODQ4ZWFiYzU3OTExMjY2MTViMGNiYTAgbGVnYWN5LXRydW5rCis0NTQxNyA1MzA0MDU5ZTdkZTNiMWIzM2IyNDAyZmQ5MDkxMjJkZDljZGE4ZGYzIGxlZ2FjeS10cnVuaworNDU0MTggOWIxNmU4MTYxZGY3NzdkMTAxODZlYjk4NjM1ODg1Y2JhMmMyMDA1MiByZWxlYXNlMjQtbWFpbnQKKzQ1NDE5IGJmYzQ4YWQ4MWU4MDRjYjI1ZDY1OTMyOTQ2NzIwZjU4ODVjNzJkODYgbGVnYWN5LXRydW5rCis0NTQyMCA5ZjgyMTAzMjU0ZmE0ZWJlYzUxNzhjNDBhYmVhMDM2MGExMzM1MzI2IHJlbGVhc2UyNC1tYWludAorNDU0MjEgNGM2ZDQ2OThhMTE1ZGM3Nzc0NTAyZWYxYTUyNzI1OTRkODAyYmJmYSBsZWdhY3ktdHJ1bmsKKzQ1NDIyIDA1YWYzOWE5MDc1NDM1ZGZiMWZiYTQ2NmE5MDljMGYzYzkzMGQ1MGYgcDN5aworNDU0MjMgYjAyNzBjNjgwNDJlZDQ3ODRhY2VjN2FlMDFmMTA4NjY3Yjg0OTE2YSBwM3lrCis0NTQyNCAwYTEzYTk2NTg1YzNkMzY3NjI5MDYyZGViZWRhMjBjNzIyNGY3ODc3IHAzeWsKKzQ1NDI1IDRjYzM0YWYwMTlkMmMyNjNiNzYwZmExZTg3OTU2MmI2ZjQ3NTE1MTMgcDN5aworNDU0MjYgZmIyYWZmMTg2MmU0NmYxOGQyY2NiYjAyYWRlNTU1NTZiYzg1ZTZjZiBwM3lrCis0NTQyNyA4ZGFhZTdiYTA3OGE1NTQ1M2FiYzQ4MDg1MTFiODU4MzUzMzUxM2IxIHAzeWsKKzQ1NDI4IGE2N2YyMTU4ZDYxYjFhZWFmZjliYzM3OGE1N2E3NTllZTM2NjIyYjcgcDN5aworNDU0MjkgYzQ3Y2NjY2EwYmY0Mzg2Zjg1ZTA2ZDg1NDUwMDRjMzliZmU0YWVlZiBwM3lrCis0NTQzMCA3Y2FlNjIyZWRjYzk3OGQ0MWQzMThjM2I5NzMyYmE2MGNkMDgyOWQ0IHAzeWsKKzQ1NDMxIGE1Yzk3N2U2ZjVkYTE0OGJlNzgzNmM5ZDhmNWQ1YzAwYmRiZDg0MWMgcDN5aworNDU0MzIgMzUzZmUwNmRhYjViMzcyNWM3YTUwNGZjNWVjYTNjYmRkNzZjNDI0YyBsZWdhY3ktdHJ1bmsKKzQ1NDMzIDYzNmNhODBhOGNiZWRjNzA1YmU2YzQ3ZmQwMTU4ZDE4OTNmZTI5ZWQgbGVnYWN5LXRydW5rCis0NTQzNCBhNTkwMmUwZWMwN2M4YmE4NjllOWI3NzVjNzk0YzUxMGQ1ODE4MTI5IGxlZ2FjeS10cnVuaworNDU0MzUgZDE1NDc0MjZhYjYxMDZlY2FkMmQzYmIwZWYzNjBmNDdmNmM3NDRhOSBsZWdhY3ktdHJ1bmsKKzQ1NDM2IDI0MDA5ODkzNWNkNWViZDE4ZGRhMzBkMWZmNDlkOGUyYjhkMWVlYzcgbGVnYWN5LXRydW5rCis0NTQzNyA2MzE0NWMwNmRlZWViNDgzZjM0YmY5MjgxYzA5YzRhMWQ2YTZkMGVhIGxlZ2FjeS10cnVuaworNDU0MzggMWQwMjM3NGY0YzdlMWE1YTQ2MjIxYzA2ZDFlODY3NTFkOTlmNzQ4MCBsZWdhY3ktdHJ1bmsKKzQ1NDM5IDdmNzI3OTFmMGFlYzMyZjY5MDQ3ODdhNzJiOTczYTc3OWI3ZDY2MjcgbGVnYWN5LXRydW5rCis0NTQ0MCBhYmY4MjQ2MWU2YjRkZjUxZjUxMTdmMTI1MzYzMTg1MmYxNmM4NWEzIGxlZ2FjeS10cnVuaworNDU0NDEgOWUzODJmMmY0MzlkOTc3NTIzMDY2ZTZmNWFkN2E4MTBiN2ZjZDExYyBsZWdhY3ktdHJ1bmsKKzQ1NDQyIGI3MzczYmMzYjA5ZjMzOTJiYmEzMjYyZDEyY2VmNzBhNWU3MTQ0NDYgbGVnYWN5LXRydW5rCis0NTQ0MyA3YjJlNDM2YTRhMjExYzJlNTdiZjRhODRiZTIxZjFhNWNhY2FjOWI5IGxlZ2FjeS10cnVuaworNDU0NDQgZTEzODhhYmE5ODk2MjNjYTAxNmM2NzlmNGI0YzZhNmM3NWYzNGY2ZCBsZWdhY3ktdHJ1bmsKKzQ1NDQ1IDliNzhkYzA3YjE3MGNjNjY1MDU5NDk2MDE0ZGYxMDM2MDIzMTRkZjcgbGVnYWN5LXRydW5rCis0NTQ0NiAzNTNiNTk2NTFlNDUwZTE0MjYyNDA5NDE0MGU0YTQ0MzMyZjQyNDJmIGxlZ2FjeS10cnVuaworNDU0NDcgOWViNGRjMWNjODNlN2E2MzEyNGFiOGNjODJjOGZjYjAzOTM3MjNlNiBsZWdhY3ktdHJ1bmsKKzQ1NDQ4IDgzM2YzODRlYmQ0MWI2MzAyZjJiNzFkZDM3NmQ2MjgwZjg2NGM1OTEgbGVnYWN5LXRydW5rCis0NTQ0OSBhMzljYzg0ZmYxODU2YzdhY2M1YmM3ODFjNjc4NjJiNzBjNzAzZmZkIGxlZ2FjeS10cnVuaworNDU0NTAgYjdhMzk3MmU5OTE1NzI3ZTk3M2E4NDY4NGYyMGNjYWQ1ZTRkYTM5NSBsZWdhY3ktdHJ1bmsKKzQ1NDUxIDk2YWRkYWEyNTg2OTcwYjA4MDk4ZjhkZWE1ZDIyNzNlMDc2NWYwN2QgbGVnYWN5LXRydW5rCis0NTQ1MiAwYTU0YzE1YWExNDNjNGQ2MDAyMDgxMzZkMDFlNzc2Yjk4NjdhNjU4IGxlZ2FjeS10cnVuaworNDU0NTMgZjFjOTg1M2RmMGY3ZDRhZTZhNGRiNDk3YzJlYmFhZjdiYmQwMGY2YSBsZWdhY3ktdHJ1bmsKKzQ1NDU0IDdjYzMxNTE2ZjgyNThmZjE2Mjg4MDEwN2RkYmQzYWM2ZWE3NDcxZjkgbGVnYWN5LXRydW5rCis0NTQ1NSAzOGQxN2Q1MWVhOTVkNDQ4NzUwNDFiODljMDUwMTY3ZjJjNzUxNjBiIGxlZ2FjeS10cnVuaworNDU0NTYgMDFlNTFmNWRiODgxYjg1YmExZTdhYzlkZDEzNjU5MTM4NDU5ZWFjNCBsZWdhY3ktdHJ1bmsKKzQ1NDU3IDMxZGNjMzExMTEzM2JlNzAxOGRjMDRmMmQyMWY3YThhYjYxYmNjZDcgbGVnYWN5LXRydW5rCis0NTQ1OCAwODRkMTg4ZTdkYmVmN2FlZDY5OWFiMjdiMGM3MDhmYjY5Nzk2NWJlIGxlZ2FjeS10cnVuaworNDU0NTkgYjkwYTdjNjAyMWJjYzQyMzgyZGE2ODhmNGY1YWQwYjQ0MjY4MzE0NyBsZWdhY3ktdHJ1bmsKKzQ1NDYwIDYwNGM5YmNiMzA2YzZkMjZiZDMxYjIyYjk2Njc5ZjIwOGFjZDBiMmIgbGVnYWN5LXRydW5rCis0NTQ2MSA1YmI2ZTU0Zjk0MDhmNjE3NmM5MDU5ZDdmM2I5ZDZlZGI2OWQyNTFjIGxlZ2FjeS10cnVuaworNDU0NjIgZDhiMjNiYTRhMjc0ZWNmNGVkNzZkZGM1OGVmMDAzOTE0MmYyYmE3OCBsZWdhY3ktdHJ1bmsKKzQ1NDY1IGIwMDQ0YmI0ZGYyYWVkY2ZiZjMxMWRmNTk5MWQ5Y2RiNWQ1MmJhYjcgbGVnYWN5LXRydW5rCis0NTQ2NiBkNGFlNWEyNjE1Nzg4MmUxZDEwZjc5YTQyNjZkOWY1ZjkxOWIwNWQ4IHJlbGVhc2UyNC1tYWludAorNDU0NjcgYmUyMzhjYjI2ZDMyNWUzNTgzMmQ3ZTllMWFlNTBkY2MxODUzYTQ3MiBsZWdhY3ktdHJ1bmsKKzQ1NDY4IDdiYmI5YjVmN2FkY2ZkOGUxOTk0NDY1NTQxYjc4NDc4ZjhlNjJjMzkgbGVnYWN5LXRydW5rCis0NTQ2OSBiOTViNWMzM2NiM2E1MzMxYmVhN2M1YWM1ZjdlMzE5MzAwYTVkYWMzIGxlZ2FjeS10cnVuaworNDU0NzAgMzAwYmYxYzRkZWVkZTdjMWQzZWFmN2M3NWZlOTJmMzU4OGRhZjYxOSBsZWdhY3ktdHJ1bmsKKzQ1NDcxIGRkZjhjOTE0NWYxMzYzZTgyZjhjNDNjN2IwYTA5ZmJkZDNhOTBhZTggbGVnYWN5LXRydW5rCis0NTQ3MiBiNWZjZWYxNTgxMzNhOTc2ZjYxZmFiZTY1MmYzODMxYjU0NmQzZjkyIGxlZ2FjeS10cnVuaworNDU0NzMgZTIzOWQ3NDVjNjQ3NDAzNzYwMGNhMTQ4M2RhMmM2NWYxYzhhN2Q1MyBsZWdhY3ktdHJ1bmsKKzQ1NDc0IDJjNzZmNzFiMjIzZGU3NWE4OGNhZjlmY2U2NzEyZTJmMmQ5MjUzMzYgbGVnYWN5LXRydW5rCis0NTQ3NSA1YzQ1MzMwMmQ1ZjZhMGVjNDIxNDlhYTY2ZTdjNWQ0ZTQyMThjYzBhIGxlZ2FjeS10cnVuaworNDU0NzYgZWMwMGI3OThhYjU2OWVhZTg0N2ViNmY2YWM4N2YxNzhiMGQ1OGViYSBsZWdhY3ktdHJ1bmsKKzQ1NDc3IDMzNTIyMzQyMjE5OWNlNDMzMjg2ODgwNmYyYTgyZmRkMDExNWI4MzMgbGVnYWN5LXRydW5rCis0NTQ3OCBkZGE3Y2M4OGMwNWFhYmMwNjFiOWI5NWZjODE5YWJmNDE1ODMxMWRkIGxlZ2FjeS10cnVuaworNDU0NzkgYzA0MTM2YTgwNjJhMWRiZDUyNWY4M2I2YWVhNjFiZGM3MGM4YjI4YiBsZWdhY3ktdHJ1bmsKKzQ1NDgwIDM4NGU5MTIwMjU3OGY5MTcwNWRkMTBhOTgzMmVjMzQyZjQ3MjlmNmMgbGVnYWN5LXRydW5rCis0NTQ4MSBlODE5Yjg2YTE1MDZhMDM3MzUxM2UzMjZiMmMyOTJhZmY5MTk4OWIzIGxlZ2FjeS10cnVuaworNDU0ODIgYzk0ZDc3MDUwODVhNTQ1YzNmODFkNzZhNTVlOGZiMmFjYThkODU0MSBsZWdhY3ktdHJ1bmsKKzQ1NDgzIDE5YzFiYWMxNWJkZWExNDg3MzBkNDljYmEzMDU0YmM5NzNkNWEwNDAgbGVnYWN5LXRydW5rCis0NTQ4NCBiMzc0MTQwZTQ2N2QyZTlhM2ZhMWIyNTllNzg1YWNmYWY0MTk0ZDc1IGxlZ2FjeS10cnVuaworNDU0ODUgZjc5OTFjZTQzMWU1MmVmNjcwN2E1ZTljYjVhYjAyOWY1MGRjZjYyNyBwM3lrCis0NTQ4NiA2ZjM1ZjdiZTM2YzNkNDVmNzkzODEzNmVlNzc0MjE5NDUxOWQ2OGEwIGxlZ2FjeS10cnVuaworNDU0ODcgODFiZjRkMzc4YjllNjc5ZDcwNDNiNmIzN2ZiOGEyYWQyYWMwZDc3ZCBsZWdhY3ktdHJ1bmsKKzQ1NDg4IDcwMmQ1OTdmMmY2ODljMmNmZDRhOWJlZjgwNzE3YzExZjc3OTMwYmIgbGVnYWN5LXRydW5rCis0NTQ4OSBmMTE3YTVmZGU0ZTU5YmRhZWNhMjBlNDgyMGQ0YmRlNDdkYTAxNWQxIGxlZ2FjeS10cnVuaworNDU0OTAgNGQ4MjA5M2UyZTE5NzgzNjcxNjZkMmUzODg3MzA3MmE4OTI2NDg1YSBsZWdhY3ktdHJ1bmsKKzQ1NDkxIGZiYmMwYmVmZmZmNzc4ZmE5YTM4YThiOTA2YWE5OGVmOTRiYjQwOGYgbGVnYWN5LXRydW5rCis0NTQ5MiAxOWQyNDc3YzEyODMxNjhiODEzNTFjOWU5NTk2MGRiMzhmNTI1ODA2IGxlZ2FjeS10cnVuaworNDU0OTMgNmNmZTQ4ZTY3MmM0ZTA4Yjg0YWY0NzlmOWQwNTNjNzRiNjIzYWIyMiBsZWdhY3ktdHJ1bmsKKzQ1NDk0IGVmZTc0OTIyNWJhZTJjNjUyZjgxOThjNTU4ODBiZjA3YWMzNWRmNDggbGVnYWN5LXRydW5rCis0NTQ5NSBkZjllY2FjYjBiZjY3YzBhNTM4NDJjYTQ2ZmQ2ZWJmOGJiN2FjMmZkIGxlZ2FjeS10cnVuaworNDU0OTYgNWY0NTdmNDI2ZDkxNmMxOTlkYWJmMWNiNTIyZGIzNjc5ZWExZTk0MiBsZWdhY3ktdHJ1bmsKKzQ1NDk3IGNjYzBiNTQxMjc5OWVhOTExYTkzNmQ3YTkzNjQ4MzdjMDYyYjY4NWMgbGVnYWN5LXRydW5rCis0NTQ5OCAwODZkODQzNGM3ZjdkYzI0ODgyOTZkMGM4NzA0MWQzNDFkYWExNTBhIGxlZ2FjeS10cnVuaworNDU0OTkgNTk5N2Q3Y2VkMTdkN2RmZjM3OGZiMzIxMmY4MTY3YzhmMDJkZmZlMSByZWxlYXNlMjQtbWFpbnQKKzQ1NTAwIDZkOGUzZTY1OTQ3ZjJhMjU5YmMxZTBkOTZjYzZjYmQ2ZjUzZGU3ZjYgcDN5aworNDU1MDEgOTI3NDg3OWYwNDg0MjhiOGNlNjg1NjkyYjFlMTMxZGFjYzY5NzAzOCBwM3lrCis0NTUwMiA4NTY5NWRlNjA0OWUwMTNkMDRhZjlkZTNiMTFlNTk4ZjdjMWEzNGEwIGxlZ2FjeS10cnVuaworNDU1MDMgODYyNWU0YTVjZTRkMGJkYTQ1MjE3ODkxNDdiYWM2MDRjMTc0ZjIyNCBsZWdhY3ktdHJ1bmsKKzQ1NTA0IDIwY2IxM2JkZjFmMDA5ZDVlOWNmN2Q2MmE3ZDcwODEyMTMwNjY0NDIgbGVnYWN5LXRydW5rCis0NTUwNSBhY2I2MTgzNmY3ZmFhZDlkMTM2YzhkMDQxZjE2MDIwZjMxOTVlODcxIGxlZ2FjeS10cnVuaworNDU1MDYgY2M5MTkyNTA1YjQwNWJjOWM3MjI2ZmRiZDI1NmFmNWVjMjc1M2ZiMiBsZWdhY3ktdHJ1bmsKKzQ1NTA3IDJlMzI3NmRjMjMxZjc2MDVlM2RiMzNkMTQzZTJlZDUwYzhlNDU5YmYgbGVnYWN5LXRydW5rCis0NTUwOCA2MWFjMWUzMjJkYTc2ZDk3ZWUzMDdkMTQ5ZTdmYjIyMDY2NTAwZGVmIGxlZ2FjeS10cnVuaworNDU1MDkgNmViODZhNzFmNWM4MTY3M2NhZDI3ZmYyOTViZjk4NTQ1M2RlNGQ2NSBsZWdhY3ktdHJ1bmsKKzQ1NTEwIDMxMzU2NDgwMjZjNGFlZDUyMWYyZGRkNGZiYTNjN2JhMmY3YzdjYzIgbGVnYWN5LXRydW5rCis0NTUxMSAzZWRlMTc1ZWFkMzdhODk5NmQ1NGQyOTAyZDRjYmUwZWU5Y2ZiMzBhIGxlZ2FjeS10cnVuaworNDU1MTIgYTVlODc5ODdjYWU2M2VhOGMwYjQxM2I3Y2YxOTAzZDZkZTA1M2Y0MiBsZWdhY3ktdHJ1bmsKKzQ1NTEzIGUyNTRiOTIyYzRmMzRlZjBkMWI5ZDQwMzYwZjNiZmU0MWNjODA2MWMgbGVnYWN5LXRydW5rCis0NTUxNiBmYzU4OTc0MThmMzFiZDRkNjZkYmRhNmZlN2RlODJkODYwZGM5ZDNjIGxlZ2FjeS10cnVuaworNDU1MTggZjU4MzFmZjdjZmJkMmJhZjQ4ZjY0NzQ4YTA3MTIwYTAyZjg3OGViOCByZWxlYXNlMjQtbWFpbnQKKzQ1NTIwIDQ1NzdiMjQzYjk4MTM3OGRmY2EzMjQxMDhlNDgwZDdmZDJlNzhmZWMgbGVnYWN5LXRydW5rCis0NTUyMyBiZTJhN2VjNDYyZmU0MTc5ZjJkNDMxMzNlZGJkOTNjMmY1NzRjMGY4IGxlZ2FjeS10cnVuaworNDU1MjUgZjA0ODExNmFhZGUwNTc4Y2QyY2Q4N2U4OGFjYzI1OGUyZGUzODA2ZCBsZWdhY3ktdHJ1bmsKKzQ1NTI2IGU4OTJiNTQ0MjgzNTA4YWVkNTQ2ZDFhZTI5YzVmMWI2NjJlNTRmNGEgbGVnYWN5LXRydW5rCis0NTUyNyBkODJkY2VkNmYxZmE3NDA3YTNlYTEzMWI2MzQ4MWU4NDk5Nzc3NTYxIGxlZ2FjeS10cnVuaworNDU1MjggMTc0MDYyZjdjMWJlMDA2OGE5YmY1NzhiOGE1YjMyODEyYjJmNjBmYyBsZWdhY3ktdHJ1bmsKKzQ1NTI5IGVlOTBhYjI2MDg2YWE0MzUzOTg2ZGJiYjc3YWYyNDdmZDE5YjMyNzYgbGVnYWN5LXRydW5rCis0NTUzMCAzMWIwY2RhMTFhNmQ2ZWM5MjE3YTI2NWUwZmNjODU1MzBjOTU5MWY5IGxlZ2FjeS10cnVuaworNDU1MzEgZDQ4ODI0NGRmMjg4NGIxNDVkZjM4MDJhOGEyNDhiYmZlNWFmZWVmYSBsZWdhY3ktdHJ1bmsKKzQ1NTMyIDYzODY0NDQ1OGZjNzUyOWM2YjM4OWY3ZWJjN2RlYmVmNTU2ZTI0MDggbGVnYWN5LXRydW5rCis0NTUzMyAxN2NjY2E1OTBhZTkzNzc1ZTgwYjAwYjYxY2NlYzc5YzhiNGZlMGE2IGxlZ2FjeS10cnVuaworNDU1MzQgY2M0ODk4NWMzMjY2YzQ4ZDEzNzNmNTVhMTY4Y2UzNTdlODkwMDAzMyBsZWdhY3ktdHJ1bmsKKzQ1NTM1IDkxM2QzNzkwZmQ5OWU5MWZhOTUxYjMyMDA0Y2Y4OGU4MjQ2MzNiYjcgbGVnYWN5LXRydW5rCis0NTUzNyBlMGE2MDMxZGY3YzBlZGRmMzUxZTZkN2IyNjkxN2IwOTk3NjQ3ZjE2IGxlZ2FjeS10cnVuaworNDU1MzkgMGMwMTIyYmQwZWEzMWQ2YzRlNjlmMzhmOTEzYzExZWQxM2JlMDJhMiBsZWdhY3ktdHJ1bmsKKzQ1NTQwIDI0MGZlNDk1ZDE4NjcwYTIyMmJjMjYzYmZlNWE3OTdjYWU5ZjFhZDYgcmVsZWFzZTI0LW1haW50Cis0NTU0MSA0ODhmYmI0Y2E4ZTUxNGQ2ZmYwY2Q4YTQ5M2FlODgzYzA0NzBhM2I3IGxlZ2FjeS10cnVuaworNDU1NDIgODcyNWI5MDdhY2JiZmVkZmRmZjJkNDliM2FhZjE0MjcwYmVhYmEzZCBsZWdhY3ktdHJ1bmsKKzQ1NTQzIDM1ZjI3YmJkOWFkOGEyZGY1Zjc3MzcyYmM1OTIzNDJmMTE1NzJkOTcgbGVnYWN5LXRydW5rCis0NTU0NSBkNjRiYWRhYzZjZjMxMjY1YzlhZTY1NzRmYjE4NmQ1Yzk3OWY5YWFhIGxlZ2FjeS10cnVuaworNDU1NDYgMTJhYjIwY2Q3YzI3M2ExYzFjMzM2ZWNkOTFlMmEzM2VhZDRiMzI3NCBsZWdhY3ktdHJ1bmsKKzQ1NTQ3IGRkNDE1NmMzNjcwM2ZhY2Q3MjZkZmI3NDFmMTRlM2RlMWM3MDBiZTAgbGVnYWN5LXRydW5rCis0NTU0OCA0MWYxM2I1NmRjMzJiY2U4NDk2ZjcxNTAxNzA1ODQyZjkzZjllOTlmIGxlZ2FjeS10cnVuaworNDU1NTAgZWJlNTljZDE4MjczMDJkZWNlODBjMDk3MDhlZTY0N2YyOTgzODEyNiBwM3lrCis0NTU1MSAxOTA0NWM1ZjBiYTJkYWM2Mzg1ODQ1YWFhODI3OTExYzZjZGJlOGMwIGxlZ2FjeS10cnVuaworNDU1NTMgODBlMDAzNDk2NDdkMGQzNjE2YjEwNjBlNzM0YWUxYmY0ZGZjZTc1NyBsZWdhY3ktdHJ1bmsKKzQ1NTYwIDI5MjU3ZWY2YWJlYjdlMDFkMTM4YmUxYjA5ZjIzNWY5MjEzNjc2NjEgbGVnYWN5LXRydW5rCis0NTU2MiBiN2Q0NzFlMTIwNDI3NmFmMjhlNGNlMjg4MTYwZTA4YjU5OWRmN2I3IGxlZ2FjeS10cnVuaworNDU1NjMgZGM4ZWZkNzBhYjU2ODY4MTBmMWE2Njk1NzUxN2Y0MzFiYTRmZGZmNSBsZWdhY3ktdHJ1bmsKKzQ1NTY0IGFjZDhmYmE2MTk0MzBmODFiZWQwYWY4NGE2MmI0ZDFlMzE2Y2M2OTUgbGVnYWN5LXRydW5rCis0NTU2NiBhNGQ1Y2VmYzJkZTQwODUxYzgwNzIyYjhlYjMwNTY5MTQ0MDk0ZWVkIGxlZ2FjeS10cnVuaworNDU1NjcgNzRmNDU5YTI4OWJlOWRkMGIyZjg4NDBjNTI3NzkwZDY3ZmZmMDlkNiBsZWdhY3ktdHJ1bmsKKzQ1NTY4IDU2NGVjOTczNjVmOWQ5ZmFjZGMzNGYyMjVmN2QzN2VhYTdkZDVhYjAgbGVnYWN5LXRydW5rCis0NTU3MyBkNGFlOWMwMzI1YjFhNzlmZDkzOWUyNmY0NDNjMmQ3MTBmYzAxZThkIGxlZ2FjeS10cnVuaworNDU1NzQgZTk2ZDFjYWQ0NjgyMDVhMzdjN2MwYmJiM2JiMjMzMzE4NTkzNmI1ZiBsZWdhY3ktdHJ1bmsKKzQ1NTc1IDQ3YWM1MjRkYjhhN2M4M2U4ZGU0YTg5YTE0MWYyMDlmMzVhN2Y0OTUgbGVnYWN5LXRydW5rCis0NTU3NiA0NzdiZjkzMGYzZTdmNGVkMTFlNWFiYmI0ZDAwYTlkZjlkZGIyMTRiIGxlZ2FjeS10cnVuaworNDU1NzkgNzVlNzA2YzM2Yzg2NGExNDdmNmUzNGNhYjYyMzI2YWQ0ZDBmMzJkZiBsZWdhY3ktdHJ1bmsKKzQ1NTgwIGQzZTVjOTU2NTgxY2UyZWNlODA2NzRkZDZiMTE3NmQwZDA5MmViNDEgbGVnYWN5LXRydW5rCis0NTU4MSBiMGYzN2Y5ZmM2M2ZmOWI2NzA0ZjNlOGQ4YzBkODkwZGEzYjAzMGYxIGxlZ2FjeS10cnVuaworNDU1ODIgNGM4OTQ1NTJiOTY4MGY1NWI5YzVhMzdlZDJiN2I2NWVhMDkyMGM3MiBsZWdhY3ktdHJ1bmsKKzQ1NTgzIDJmYjE2YTYyOTQxNTc4ZGIwNzg3ZjFmZGE2NTg4NTA5ZDMwNjA2NTIgcDN5aworNDU1ODcgYWMxMjdjZDg2NmEzMTJmMmEzYmM3MWEzMTg5NGMyZTJlMzMzNjRmOSBsZWdhY3ktdHJ1bmsKKzQ1NTg4IGM0MzQxZTZjNmEwM2RlNGI4ZWRjZmQzOWE1OGJkYmU5OGY5MzJlODggcDN5aworNDU1ODkgYTQ3MTE3ZmEzY2E4OGM0NjBiNWVmMjkyMzBiNzBjYTZlZTVmNzc1ZSBwM3lrCis0NTU5MCBiMGY4ODE0M2RjNWM5NTAzMzViMzhlZjIwNTM2YTNmODgxNjA5NzU0IGxlZ2FjeS10cnVuaworNDU1OTEgZDM1ZGI4NGNhMDcyY2Y0OWFlMjNmOTc1MzE0OTRjYmQ2NGU4MTllOSBsZWdhY3ktdHJ1bmsKKzQ1NTkyIGI5YWFkNmE3NDQ1MmRjNWI3MTBlYjVhZWJlMzhjNTM5MzUzOGM4NmEgcDN5aworNDU1OTMgYTRjNzBmMzk2OGJlN2Q5ZjgwYTYzYTJiMjY4ZTM3NTU4MzEyMzU0NSBwM3lrCis0NTU5NCA4ZGY2MDc5NjMzNTU4ZTQyZTE5NzQxMDcxM2FmMDIwYjM3NWYyNzczIHAzeWsKKzQ1NTk1IDZhNDVmMjZlYTYxOWU1NzA2OTAzNzBmZjg1NThlYWRlYzg1ZjAyZmQgcDN5aworNDU1OTYgYjY4ZDIxMzY0OTE2NzEzYjUzY2JmNjc1ZjIxNTM3NjM4ODgwYjIxNCBsZWdhY3ktdHJ1bmsKKzQ1NTk3IGY3MzE4NTllOWIzYjkxMjY0YjMxMmE4MmMzMTI4ZDY2YTQyZDhmZmMgcDN5aworNDU1OTggOTZhYTVjZTg2NDQ1ODA3YmU0NzNmZTkzMzUwNTliMWVmNWJjZDBjNyBsZWdhY3ktdHJ1bmsKKzQ1NTk5IDcwMmQ4NWQ5NDE4YTc0NTYwM2FmYTg1MDBjMDQzNjkwYmY2MzYxY2UgcDN5aworNDU2MDAgYjI3MjRhMTJkZGNlNGZmYzZmMzkyNjU5NjI3MmMyMmZiNGY3ZmRiMiBwM3lrCis0NTYwMSA3MjI0NTE1OTI5OWUwMTUzYWZlMmJjMTk3ZDc3ZjExYjUyYzg4ZjNlIHAzeWsKKzQ1NjAyIGI0OTg0M2EzYTFkZjRhNGJmNTJkMjI1N2VhMDA5NDQ5OTNlZThlOTUgbGVnYWN5LXRydW5rCis0NTYwMyA5YmI2ZTM1YzFjYzQxOGI4MjViNDU3OTgxNmI4ZDIwYzNkMTYxMDY1IHJlbGVhc2UyNC1tYWludAorNDU2MDQgYzI4Zjc0YmVkODNiZjg0YmRhMGY2YzRjODA5MGM2OGI1YTM5M2E3OCBsZWdhY3ktdHJ1bmsKKzQ1NjA1IDMwMWM0ZWRlNDlkZDZlNjMzZjI5ZGQ3YWZlNTEwMjE5MGUyOGVkNWEgbGVnYWN5LXRydW5rCis0NTYwNiA1YmM5MTVmZWVkMTQwYTFmYjgxY2FhMDdjZWZjM2E4NjVmMjg0YWY1IGxlZ2FjeS10cnVuaworNDU2MDcgODEwMjU1N2FmZGYxNzY2ZTE0ZmIxOTljN2JjYTljMzM1NGE2MjUyYyByZWxlYXNlMjQtbWFpbnQKKzQ1NjA4IDc0OWFkMmEzNjkzZjIyYmU3ZDAwMzViMmJjYjhmZjExMmRlNDE4M2EgbGVnYWN5LXRydW5rCis0NTYwOSBkNjJjOWY2NDY2MzgxZTY3ZDlhMGM1MDg1MTYyNDE2OTJlMDZhNWRjIGxlZ2FjeS10cnVuaworNDU2MTAgYmQ3ODUzMzk0YzdhYTVmYTI5NmEwYTEyMmNlOWFiNDY5MGRhNjI0YyBsZWdhY3ktdHJ1bmsKKzQ1NjExIGQxOGEyYzg2NjYwOTVhMzdlZWY4ZGQ2Zjg4ZTMxYzU0MjhiYWJmOGIgcDN5aworNDU2MTIgNzNkOGU4OTc3N2UzMzAyNzdlYTQ4M2FmNDA3NDlkNzNkMTQ3ZDAxNyBsZWdhY3ktdHJ1bmsKKzQ1NjEzIDkxYTA5ODFlYzRjMmMxMDUzZTk2ODNjMzhkMjk0MWRlNDJhYTU0NWUgcDN5aworNDU2MTQgZjllY2ExMzNjZjg4NjljYzU4MjNkN2U3NWZmZjhmNmJhMDUwMDBlMiBsZWdhY3ktdHJ1bmsKKzQ1NjE1IGEzMTIwMmM5NDg1ZGFjZWI2ZDNkZjQxNDJlNGZiYTcyOTIwM2JlZWQgcDN5aworNDU2MTcgNzgxNDBiZTUzMTViYzdmZmE0MGZiOWVjNmY0YWU0NTlhMzkxNTg3MSBwM3lrCis0NTYxOCAzN2MyOGE2YWQ1MDExYzg3ZTdmZTRiOGI3N2NiMmM4ZDA4Mzg5ZDZlIGxlZ2FjeS10cnVuaworNDU2MTkgNTBlMGJkMmU0NTg4MTZhMjBlZmRlNjU5YmE4YjhlMWU1YWZmMmRhMSBwM3lrCis0NTYyMCBmZDZmMTkwZTI2YThjMTE5ZTgwNjQ4YzY0YmFkMTIxNTE5MmY1NzFmIGxlZ2FjeS10cnVuaworNDU2MjEgNTI1NTEyMjFhMTMyZDU1MTc5MmI5YmRhNjMwYmU5ZjM3YzI1ZjkyMiBsZWdhY3ktdHJ1bmsKKzQ1NjIyIDU2MDg5ZmFiYTA1NmEwYzA3YmVlMTUxNTVhY2Q5NDAyYjA0N2ZjZDEgbGVnYWN5LXRydW5rCis0NTYyMyAwNmRjZGVkZmM5OGZhN2ZlZDQ2NThmYTczN2E0YWM5MzZhOTc0YTQ1IHAzeWsKKzQ1NjI0IGMyYWU2ZGIzMDU3MmIzODRlNjc1MDM3YTAyNjE5YTYyMzg0ZjFhYjUgbGVnYWN5LXRydW5rCis0NTYyNSBmZDI5YWQwYmVmNzA4Mzk1YzRmNzk5NjQ2N2JjYzcxYzIzNzI0OTU4IGxlZ2FjeS10cnVuaworNDU2MzAgMGUwZTMxNWI0MjAyMzU3Y2UzYzU0ZjBkYmIzMDg4NWU5MjczMmRjZSBsZWdhY3ktdHJ1bmsKKzQ1NjMxIGM3ZWY5MmI5MDQ1YzY4OGEzN2E0NGM2NjY0NDQ3YTVkNzY2N2EzYzAgbGVnYWN5LXRydW5rCis0NTYzMiA3MjA0ZmJhYzU3OWNjOGFjNDVhMmQzMGJjNGQ3NWQzMzllODRkZjg3IHJlbGVhc2UyNC1tYWludAorNDU2MzMgNmM2MzRjNmQ3N2RkOGQzYTAwMThkYThhMGIzYWZiY2E0ZjU4NTAxMSByZWxlYXNlMjQtbWFpbnQKKzQ1NjM0IDNmMTQzMWE5ZWRjYjcxZTk2OTZlYmViMzlmOTE0NGE1NTE3ZTJjZmIgbGVnYWN5LXRydW5rCis0NTYzNiA2MjhmNDFhOGIxY2UwMzgzODBkZDRiMGY5ZjFmYmEwMWU3MThiMmE0IGxlZ2FjeS10cnVuaworNDU2MzcgNTRmMTU1MzY5YTljMTI5YzMxY2Y5NzNiMDZhMDZlMGM2ZTM1ZjM3MCByZWxlYXNlMjQtbWFpbnQKKzQ1NjM4IGZhNmI0OWJhOWFlOWI1MThmYmYxNzU4MjkzMTNmNTI1MDE3MjRlMmQgbGVnYWN5LXRydW5rCis0NTYzOSBjZTJlYzhjODM1ZTkzNWU5MDk3MjkwNTU1MWFhN2U1ZGQ0ODFhMDM3IGxlZ2FjeS10cnVuaworNDU2NDAgZGU0YTVmNTVlMjFkZTEzYTZlZTQ4MWIwMGU4YmI4N2QwZGNjNWUyNCBsZWdhY3ktdHJ1bmsKKzQ1NjQxIGZiMTgzN2U4OGU3MmI2M2I1YmYzNGU0ZjJmZGI3YjBlMjUzMjllMWEgbGVnYWN5LXRydW5rCis0NTY0MiAxMGYyNDFmYzk1OTM5ZjljOWQ3YzhiMmQxYzJhZGMxZTgxNmQ0NzcxIGxlZ2FjeS10cnVuaworNDU2NDMgYWI0ZTY1YzgwOWU2ZmYzMDBlNmI0OWE5OGNiMzZhM2FlODE1ZGI5YyBsZWdhY3ktdHJ1bmsKKzQ1NjQ0IGNlNTU4NWFmYzIwZjkyMTRkNDc4YzIwOTU5ZTRiZDA2YTVjNmRjNTYgbGVnYWN5LXRydW5rCis0NTY0NSA1ZjllYTc2ZTIwNzI0NDQ0ZTRkMDY1NmJhNGY0Zjk1ODRlZThlYjcyIGxlZ2FjeS10cnVuaworNDU2NDYgZjQ5YTJkZGE4ZTc0NTY4NmQ0NTc0MzVjNWY0ODg5ODdiZWI5NzYyZiByZWxlYXNlMjQtbWFpbnQKKzQ1NjQ3IDgzNGZkOWIzY2VlZWMyMDIwOGM3MTA4NGEwYTcwNjFhY2JjZDYzYzYgbGVnYWN5LXRydW5rCis0NTY0OCA5MDQ4ZDc2YmYwMWU2ZGY0OWQ5OTRjYjFiMDFiNGIwMzg3OTI5M2Q0IGxlZ2FjeS10cnVuaworNDU2NDkgN2RlMjg0OTU4ODgzNjA1MTZmMDI5NzliOGI5MWRiZWM1NDA0YjY1ZCBsZWdhY3ktdHJ1bmsKKzQ1NjUwIGZkODA4ZWU2OGViOTg1NWVlMTliMTM0YTYwYjU0ZTYxNzAyNjgxNGIgcDN5aworNDU2NTIgYTdmMzc2NWVhNDY0MjliNGY5MmRjYmM1ZTg4MDQ0OTlkNmJmMzJjNSBwM3lrCis0NTY1MyBhZTZmNTA2MDBjNDZiM2JmNTc3NGU3ZTYzOGY5ZDdmNTI2ZmRlMjFiIHAzeWsKKzQ1NjU0IDg4ZGE4NDc3NjExOTI5MWRiOGY0MzIzZDRkMjU5YjAzMzRmNzRmY2MgbGVnYWN5LXRydW5rCis0NTY1NiBlMTI1MmNlYTQzOWM2NWViODVkMGVmZWJlMTY0NGRlMjQxNDg0MjA2IHAzeWsKKzQ1NjU3IGQwZTRjZWQ0ODdiMzY3ZTQyNGU1MmU2ZWVlZjcyMWVkOTZjN2RmNmYgcmVsZWFzZTI0LW1haW50Cis0NTY1OCBhMGFhOTExYmU5NmEzMWVhYzE1YzQ5N2JjOTA1OWZhZmFhOWNiNjIxIGxlZ2FjeS10cnVuaworNDU2NTkgYmNmNzE1YTk4Nzc0YjA0ZDg3YTIxOTNjODcxYzk1MDRkYjZkZmZlYyByZWxlYXNlMjQtbWFpbnQKKzQ1NjYwIGVhNjc2MjhkZGFlNTY1NTFmMzAwZGZiMzkyNTIyYTY5ZjBjY2M5NGYgbGVnYWN5LXRydW5rCis0NTY2MSBlM2E4YThkZTM1NWUzZmI5NmE5YTA5YzQ0ZTcwZTgzYTU0Njk4ZDc3IGxlZ2FjeS10cnVuaworNDU2NjIgNzk5NTlhZjBmOWUwZjMxZTY4MjlkNmViMmM5OGRkZjU4OGI1MzkzMSBsZWdhY3ktdHJ1bmsKKzQ1NjYzIDk3N2U3YTdlMTU1YWQ0Mzk0NmMxNjYxYzQ5YjdmZTg0NDRjNmNhOTYgbGVnYWN5LXRydW5rCis0NTY2NCA3ZGE0YWY5NWViYWRhMTJkN2NmZDdmYmUyZWI3N2NiOWZkMGE4MjQ5IGxlZ2FjeS10cnVuaworNDU2NjYgN2JiYjA3MTEzYjI5ZmQxYmFjOGE3YjU3NjdmZWUzZTkxM2JhNjlhYyBsZWdhY3ktdHJ1bmsKKzQ1NjY3IDIyMmI0N2Q2N2Q0MzJiNDE4ODM3ZjA2Nzg4ODFmMWRhM2E2NjkyOGEgbGVnYWN5LXRydW5rCis0NTY2OCBkNmIxZTJiMzA4N2YzODQwM2QyNDA1NTU0NTc0MjdmM2VmMzRlZWNlIGxlZ2FjeS10cnVuaworNDU2NjkgYzI1ZGQ3NWUwNjY3OWVlZjFhOWFmMjhkYTNkMTlmNGZlMDEyM2Y0NCBsZWdhY3ktdHJ1bmsKKzQ1NjcwIDk5MTA2NjU3NjQzNDdhNDU2MTM0MGI1ZGZkYTRmMzE0MTFlNWExYzAgbGVnYWN5LXRydW5rCis0NTY3MSA1MDliNTMxNzE5NTRhODJkZTY0NGU5OGE4Nzk4NjNkZWUxN2RkMWY2IGxlZ2FjeS10cnVuaworNDU2NzIgMmZkNDc3YjYxNGUzZjYyZWI4ZjAzZjc5YjFmNjVhNWEwMzY0ZGVkNSBsZWdhY3ktdHJ1bmsKKzQ1NjczIDg0NzcxMGU1ZDdlMTY2MWNmYmNmOWNkODZhZjMzZjBjYzEwYTg2NjYgbGVnYWN5LXRydW5rCis0NTY3NCAxYjE5MjAzN2I2MmYxZmI5NTY5ZTliMWRkNGViNmUwZWU5NGI2ZGM5IGxlZ2FjeS10cnVuaworNDU2NzUgNThkMTBkN2QwYWExMWNlYzgzYjc5MjllN2Q3ZGJiNjYyNDg3OTZiNCBsZWdhY3ktdHJ1bmsKKzQ1Njc2IGI2ZDEwZGQzZjk5Nzk1ZDYxMDk3Y2EwZGEwZTIzMTUwNjJmOWI3MDcgbGVnYWN5LXRydW5rCis0NTY3NyA2ZjRlZGQ5MTRjNTg2YTE2MWYzZjk0MTY1MzUxMTI0MjZlMDY2ZjQwIGxlZ2FjeS10cnVuaworNDU2NzggNzE2N2MxYzBlMDEzMTcwNWZjZDg1NTY1ZDc4NjI0YjRhZjU3MjYzYSByZWxlYXNlMjQtbWFpbnQKKzQ1Njc5IDljMDQxYzg4ZWI2NzgzNzg1ZDQzMzc2ZmYzNGU2NzRmOTMwMjY0MzggbGVnYWN5LXRydW5rCis0NTY4MSBkNjBmYmM1NGMwZDRkZmViMmE4MjY1N2QwMTc1NTJkNjE0NzMzN2RjIGxlZ2FjeS10cnVuaworNDU2ODIgOWFjYjU1NTI4NjgwMzk5ZTY4MjBlY2YxYjFhODI4OGIyYjI2OTlmZCBsZWdhY3ktdHJ1bmsKKzQ1NjgzIGFkYjEwYWZkYTU1YjRlZGEzNDBiNjRmZmJkZWNkZWU0Yjg5Y2RjYTkgbGVnYWN5LXRydW5rCis0NTY4NSA5N2U1OWQyZTYzZGY2Mzc3NTMxYzI4MTg1NjViODUxNGE1NWVmMmYwIGxlZ2FjeS10cnVuaworNDU2ODYgZGFkOWIzM2U3OGU1M2Q5MWJhZGE2MjgzNGNlNGU5ZTkyN2E0ZTUyYyBsZWdhY3ktdHJ1bmsKKzQ1Njg3IGM3OGQzMDZhYWNjZjkxMjUxNTNiZGNmN2RiZDE3NTY3NjNhZTAxNjQgbGVnYWN5LXRydW5rCis0NTY4OCAyZjRkMTdiY2M5NzUxYTljNGZjZWJhMjljNGQxZWY0ZmU0ZWYyN2I4IGxlZ2FjeS10cnVuaworNDU2ODkgZTBiN2UzNGI1OTcxMzMxYmE2NTUxZmVjNDIyMTI5MmZmNDNkMGE0ZSBwM3lrCis0NTY5MCA4YjBmMDczNWIyNDZlZTE1NjNlODIzMDE2NGNjYTEzNDJiNzQ0NzlkIGxlZ2FjeS10cnVuaworNDU2OTEgN2UyZDVkMzc0ZTNhMmY0NWFjZTkyNjA0Y2FkNmM2MWMzZWM4ZWJhZCBJRExFLXN5bnRheC1icmFuY2gKKzQ1NjkzIDkyZjIxOGE2YjIwYjg0NGQzNWEzMGNlNmQ3YTgxN2U0NWU3YmEwZmUgcDN5aworNDU2OTcgNjEyMjhlNTU3OTFmM2VmNzAwNzA2YzE0MWE2ZDNkODkxODIxODRjZSBsZWdhY3ktdHJ1bmsKKzQ1Njk4IGFjZDVlNTU1OWUzYzI3OGNkN2ViYjc4NzE4MjgwMTMzMmQyMTVmOTEgbGVnYWN5LXRydW5rCis0NTY5OSAzMDE1NTIwZDY3ZmYxYmJhYmZlZWIxZWRkYmE1ZGUyMGUwNmIzNDZlIHJlbGVhc2UyNC1tYWludAorNDU3MDAgODk1YjdkYWJhMmQ2MDg0YWMwNDU0OGY4ZmI0MjAxYjJkOGJhNWRhOCBsZWdhY3ktdHJ1bmsKKzQ1NzAxIDAwZGQxZGFlNzg4YjdkMTE4MmMyYjljNGM5MDA1MzEyZTUxYjU5ZWIgbGVnYWN5LXRydW5rCis0NTcwMiBmMzNlNGVkNTUwYjhhNGY3MTI4NTc4Y2U2NDQyZGZmMWNkNzBjMTkxIGxlZ2FjeS10cnVuaworNDU3MDMgNDQ5ZDRiYTNjZDQ0MjQ3YWIwZDdjMTk3YjI2OWUxMGY1Y2NjNzQyNCBsZWdhY3ktdHJ1bmsKKzQ1NzA0IDE0Y2IyZWVjYzZmODk0NGQyZWFhMjcyYWJkZjBhN2U5NzczZDY3OTAgbGVnYWN5LXRydW5rCis0NTcwNiBhZjQ0ZGIyYTk1MjNhMDUzYWUzZTJkYWFlNDUxMDBjYzczMjVmYTZhIGxlZ2FjeS10cnVuaworNDU3MDcgNmMxMjQyNzZhMWYwY2FmY2RmNGRhNWE1ZDViZTZiN2NlZWY4MjAyYiBsZWdhY3ktdHJ1bmsKKzQ1NzA4IDQ1Zjg0OTI5YjJhZWI4NjUyNDk1OGI5OTFjNjhmZmQzYjFlY2MzZWUgbGVnYWN5LXRydW5rCis0NTcwOSA4ZTE0MTQ4Mzg2ZWMwNGU5NjBkMjAyNzY5NDljNTdjNjQzNGE0ZjBlIHJlbGVhc2UyNC1tYWludAorNDU3MTAgYTg2OGMyMThhMjEzMWI2YjY2ZmUzNTVmYjcxY2Y5YTc1MWI4N2FkNSBsZWdhY3ktdHJ1bmsKKzQ1NzExIDg4NjNmZWQ2YzhkNzE5ZDlhMGY4MTQ3MWU2NjVlNGQwMDM5M2Q2OWUgbGVnYWN5LXRydW5rCis0NTcxMiAxODQzNzEwZjMyZTgzMjEzNjdhODQ1NTYxZDg1MTVjYWRjNjNiNDlmIGxlZ2FjeS10cnVuaworNDU3MTMgZTVmZWIwNTFjMzJmZGMzZWE2NGEwMzU3ZGI0YmRjMWUwMDExZjJiNiBsZWdhY3ktdHJ1bmsKKzQ1NzE0IDcwNGI4MDUyOTY2NGJhNGU5ODk3Yzk0MWQxODhkZTU2ZTQ3ZDA1NTggbGVnYWN5LXRydW5rCis0NTcxNSBiNTM1YzE5MWE0NGIwODIwODIxYTNjN2VkYTg1ZGFjMmZhY2U2ODY3IGxlZ2FjeS10cnVuaworNDU3MTYgNzgzY2FiNjkzMzQ3N2M0MWM3NDQxYjA3YWE0NjAwNzcxOWJiZjIzMyByZWxlYXNlMjQtbWFpbnQKKzQ1NzE3IDY4YTdjMDE1YTU0NzQ3ODQwMWI5OGQxZDA2YWNkNDVjZjJiZWQzMzcgbGVnYWN5LXRydW5rCis0NTcxOCAyNjljNjJjN2Y2NmE1MzMzNWZiMWJjNzdkYzM1YjUwOTYxOWVmMGQ4IGxlZ2FjeS10cnVuaworNDU3MjEgZDhkOTAwZDBlYjhhNDY4NGNmZTczODY1ZWUzNTY1NWQ3NGZjNzU3OSBsZWdhY3ktdHJ1bmsKKzQ1NzIyIDA5YzQyNWE1YWEzYWYzY2VjMTlkZDJhODg1OWFmMGU1ZTI0YjY0ZjkgbGVnYWN5LXRydW5rCis0NTcyMyBkNWU2ZTQ5YTM4NzkwYWVhYTE3ZDQwZGMzZjJjMTVmNWFiYmU3NzA3IGxlZ2FjeS10cnVuaworNDU3MjQgMDZjMDU5YjkyZDBiYWM3N2MzZDEwYWQwZTNkMmEzNTgyMzdlNWE4MyBsZWdhY3ktdHJ1bmsKKzQ1NzI1IDg4MzllYTkzYjZkNzA0Mjk0NzkyN2I1NTY5ZGNlYzAyYTU2YWY2YzQgbGVnYWN5LXRydW5rCis0NTcyNyBmODFjZDdlOWQwMDFmMDgwOWNiNWE3YTY1Y2JhZDk4Y2RmMGYxYTU5IGxlZ2FjeS10cnVuaworNDU3MjggNTU2NDRmMGE0MDFiYjkzNWY1ZjlkMWIzYmJiNzk5MTg1YjliMjliNyBsZWdhY3ktdHJ1bmsKKzQ1NzI5IDE2NDk3MDRhMjIxYTFhNjExNzU2YTE3NDVkY2UyMGY0OGY5NGI4ZTMgbGVnYWN5LXRydW5rCis0NTczMCA4ZGMyYTRkOGEyMmUwMDY2Zjc2NDkwY2M0MmIxZDExYzIyYzFhYTE0IGxlZ2FjeS10cnVuaworNDU3MzEgMzU4NjYyZTJmMjczYTJkYmE5MDYwYjRiMGJmMTIzNzRlNjJlY2VlNSBsZWdhY3ktdHJ1bmsKKzQ1NzMyIGZlZDZlMzdhZDAzZDEwNTJlN2I4ODYxYmEyMTRlYTU4ZTQwODQ1NmEgbGVnYWN5LXRydW5rCis0NTczMyA5Y2MxMmJiMGI3MGE4NjYzNGI4N2ZiNTgxNGVjM2U0MmFlODhkYTcxIGxlZ2FjeS10cnVuaworNDU3MzQgMjJiYjVjNjM4NjJlYzYyMmE5NmYxNjkyNzQ4ZjNkYWFmMjIwYWE3NCBsZWdhY3ktdHJ1bmsKKzQ1NzM1IDdjMjIyY2U1MWJkN2ZlMGNmMjU1YThkMjk0ZmNiOTg0NDJlYTY3NGIgbGVnYWN5LXRydW5rCis0NTczNyA4NWM5Y2E1ZTAzNWFkZmY4MmY3ZjczYTRjZTNjYjA2NDM4Nzc1NjBmIGxlZ2FjeS10cnVuaworNDU3MzggYWMwNjg0NTNhNzhhODEyNjFkY2M4Y2Y3ZmYxNjg5ZDNmNmJjZGQ4NSBsZWdhY3ktdHJ1bmsKKzQ1NzM5IDk0ZDllMGRlNGU0OWUzMjBlMDk4NDIyYjYwMWEyN2I1MWIyMDMyMDMgbGVnYWN5LXRydW5rCis0NTc0MCAwZTgwOWI3YTg0ZjE3OGY4NDlmN2U3ZmJjNWM1MGM4NGI2NDhmYzVhIGxlZ2FjeS10cnVuaworNDU3NDEgMjZkMDc3MGYyYjdlZTI4OWEzOWEzYjU1ZGNlYzFjMWVlNjU4NDljNSBsZWdhY3ktdHJ1bmsKKzQ1NzQyIDUwODU2Nzg1NzMyMDVlNWU0MGJlN2ZkODA4MGQ2OTE4NjRlMDExZWEgbGVnYWN5LXRydW5rCis0NTc0OSAwOTkyN2YyZjc0NzhlNjNjZGI0YWI1ODA4YTUwZTUzMTBiNGZiYTRmIGxlZ2FjeS10cnVuaworNDU3NTAgOTIzMzUzMmVjOGIzNTEzNTgyZGViMjIxY2Y4MmQ5Zjk0Y2IwNTdlYSBsZWdhY3ktdHJ1bmsKKzQ1NzUxIGNkOWVkMjczYTY4Nzk2MzNhMmVlOGZhNjAyMDQ1ZDZmM2NkZWJjNGUgbGVnYWN5LXRydW5rCis0NTc1MiAxZTFiNTM2YzY4YjY1NjA1ZTMxMWM3NDk0YTg0MDJkNjU2NDc3OWE5IHJlbGVhc2UyNC1tYWludAorNDU3NTMgZGZiZDU3ZjRhNzExMmY5MmY3NDQ2NWM5OWQ1ZjM3Y2ZmMzJjNzk2MyBsZWdhY3ktdHJ1bmsKKzQ1NzU0IGE4NGE2MjFlYzVjMjRiOWM3Mjc1YWRkYTQzNDlkZDlhYzk4ZjZlYzggbGVnYWN5LXRydW5rCis0NTc1NSAwOTEzNDc3YmQyNGVhNDBiNDQ5OGYwNzhiZjM4ZjJlYzNmODBmM2I5IHJlbGVhc2UyNC1tYWludAorNDU3NTYgNzdmZWEwNmViYzEwYTBiNzI5NGExOGEyN2E5MjM1ZThlMGU5NWVkYSBsZWdhY3ktdHJ1bmsKKzQ1NzU3IDc4OGQ4NjY1ZmY1OGM1NDRjYzk2M2Y3ZjEyMzg1ZDJhYWQzYjViYzcgbGVnYWN5LXRydW5rCis0NTc1OCA0ZGEwZjc2MjEzMjVjMjY3YTA3ODEwZDVjZWM0MjAyNWYwYWZhM2ExIGxlZ2FjeS10cnVuaworNDU3NjYgYWY5NTJiYzdmZWIyNjE1OWE2ZWVlZGE4MGJiZGJhNTFhNGE5NDM3NSBsZWdhY3ktdHJ1bmsKKzQ1NzY3IDk0MGNlNWE3NmM1ZmY4NWFiZmY3ODQzYzgwNTM5NmFlYjUwOGQwMWUgbGVnYWN5LXRydW5rCis0NTc2OCBkNTUxNGE3ZWFhNGNjZWNlZjgyYmM3OGM5NjE5ZjlmMTVjOTRhODU5IGxlZ2FjeS10cnVuaworNDU3NjkgMGI4ZTc4MmI4NDg0Yjg4ZGQzY2VlMjE4ZjRjYmY3NGMyZTY3N2M1NiBwM3lrCis0NTc3MCBiNWU3ZDViM2M0NDJlNzlkYjEyODRhYmIzNTk5YWVjMmNiMTZkYjVhIGxlZ2FjeS10cnVuaworNDU3NzEgMzg0NWY3MGUwYmFmZGEwNGFmYThjYTBiODNiNjhiZDkwMmIyMzRiNCBsZWdhY3ktdHJ1bmsKKzQ1NzczIGJiNmM1YzIwMGEzZjAzYmZjOTJkY2RiNmJjY2EwMGYwOGRjM2Y3YTYgbGVnYWN5LXRydW5rCis0NTc3NCBiNWU3MTgzYWQxMTIyNWY5MzI2MTQxZTlkNTc2YjllNTNlNjRmNWZmIGxlZ2FjeS10cnVuaworNDU3NzUgMzUxOGU5NGFhNjYzNzIxOTRlNTdjZTBlZGFmZjI0OTdlNDVmM2U3OSBsZWdhY3ktdHJ1bmsKKzQ1Nzc2IDE5YWQzZDM1ZmFjNGE4NGE1ZjIyOTVjZmRmNGIwZWM0MmVjODBjMWUgbGVnYWN5LXRydW5rCis0NTc3NyA4YmM0YTdlNWZlZjg0ZjcxOGJhM2E1YmJkNzBjZjc0MmJhMTExMmVkIGxlZ2FjeS10cnVuaworNDU3NzggNjFjN2VjOTk1YWRmNTdlMTgzOGEzYWVkM2QyN2FkZjZkZjE5NzM5ZSBsZWdhY3ktdHJ1bmsKKzQ1Nzc5IGU5YTcwYjE0Njg1NzhkOGU0NjA1MTVlMGY0OGQwMTgzYTc2NDU3YjUgcmVsZWFzZTI0LW1haW50Cis0NTc4MCAzNGQ2OTZjMWVlYmM2OGMxNGFlZWJhMTRkZjZlNjRlZmMyNDhmMDc4IGxlZ2FjeS10cnVuaworNDU3ODEgOGU1YjY0YTdiMzNmMmExZTM4YTZkYjBlMTljNTA4YzdhZDhhZmU1NyBsZWdhY3ktdHJ1bmsKKzQ1NzgyIDM5ZWI1YjUyMjUyMzljZGVjNTAwZGYxOWMwYTgzMDA0OThlOGFiZTggcmVsZWFzZTI0LW1haW50Cis0NTc4MyBjMTI0NzE2OWYzYTE2NmQ4YjA1Y2ZjMzc4YWMxYWY1Y2MxYzRjZGZmIGxlZ2FjeS10cnVuaworNDU3ODQgZGUyZWU4ZGVkY2U4OTlhYzIyZDg2OGE4ZmM2NzkxNDhlYWVhZWRiYSByZWxlYXNlMjQtbWFpbnQKKzQ1Nzg1IDU2NWJmZmRlOGJmMTgzMDY0OGZmMzIyNmY1NDg3MjcwNTc4YzExOWYgbGVnYWN5LXRydW5rCis0NTc4NiA0NzNmMzdkZTEzYTEzN2Y0MWY3NDQ0YThjMmEwMTVmYTQzZDg5YjlhIGxlZ2FjeS10cnVuaworNDU3ODcgMjU0NmM0NzczNGEwMTVmOGY5NWM2NzVlN2VhNTA5NjY3Yjc1ODRkMiByZWxlYXNlMjQtbWFpbnQKKzQ1Nzg4IDhiZGJlZDY3YWRmNzg2ZTg1OTdmYTJmZDAyYzRjMGZiNjQ0Nzg3MTIgbGVnYWN5LXRydW5rCis0NTc5MiAzODllOTIyYTY0N2MxMTAyZjVmMWZmMjZhNmQzMWIxMzFhODI4NjRhIGxlZ2FjeS10cnVuaworNDU3OTMgODc0ZDc3ZWVmY2U0MzFjMGQ4MDllZmUzOWQxMDUxMTRmODk2MWI0MSByZWxlYXNlMjQtbWFpbnQKKzQ1Nzk2IGYyNzQyYWNhMmFkMDdmNDQyNGI0Y2JlOWM3ZWIzMzYzMDFiMzkzOWMgbGVnYWN5LXRydW5rCis0NTc5OSBmMDgwOTQ4M2I0ZDA1ZjFiN2YyZjBjYTJlZTRiZmY1NzA0N2EzYmMyIHJlbGVhc2UyNC1tYWludAorNDU4MDAgMzZjN2E0NDIyZTMwNzU5NDVlODE2MGU1ZDI5M2MxYzc0Mzc5NjE0NyBsZWdhY3ktdHJ1bmsKKzQ1ODAxIDU3Mzk4ZWI5NzhjMjU0ZTY3MGE3MDJjOThkYWNkZGQ5ZmQ5M2U4MTIgbGVnYWN5LXRydW5rCis0NTgwMiA4NDY5ZDNkOGQ0ZWRiNzQ2Zjk5NWY0ZjU2ZTFhMGRjMjZlMTQwNmQ1IGxlZ2FjeS10cnVuaworNDU4MDMgODg3M2QzMGExNDBmODQ0MGI3OTZiNzgyNGM4MTFlNzc5MzVmM2RkZSBsZWdhY3ktdHJ1bmsKKzQ1ODA4IDVjMjI3N2EyOTRlYTQ1ZTNiNGMwZjIxYjBlMWU4YzYwMTMyOGQwMTMgbGVnYWN5LXRydW5rCis0NTgwOSA1MWI2ZjhlMDQyZGZiZjliZjU5ZjM5ZGMxZWQ2ZmJmOWEzMTY1M2RhIGxlZ2FjeS10cnVuaworNDU4MTAgM2Y1MWZmZDVkOGJmNzdhYTkyZmJlYjA0OGQ4MzViODk2NjI0ZTMwOCBsZWdhY3ktdHJ1bmsKKzQ1ODExIGY2MjZkNTJmYWJmMDQ0YzNhZDg5MDNiMDc2MTllMjYxMGFkMDFkOWQgbGVnYWN5LXRydW5rCis0NTgxMiA0NjVmNWIzYTAyMzQ4NGEzMzU4Y2VkNGEzZDg1ZWQ0MWVmOWNjMjY5IHAzeWsKKzQ1ODEzIGFjYWYyNzYzOWE0MTFiZmJjZjBhNGY1Mjk5NzM2Zjk2NTNkZmM3MGYgcDN5aworNDU4MTQgNjE0YzkyMTcwN2Y5NTRhNmYyNGE4NWQ5NDFmZmRhYTcwMDQ2YWZkZSBsZWdhY3ktdHJ1bmsKKzQ1ODE1IDJhMjg5MTU2MTZkNTAxYmFhNWM1OTFmMzhiZWIwZTM3MDc2NDAwOTkgbGVnYWN5LXRydW5rCis0NTgxNyAzMmExODdmM2Q1YmE5MzZhY2MzZjAxYzM4OTUyYTI1MmQ3YjQ5MGQ1IGxlZ2FjeS10cnVuaworNDU4MTkgZTRlODQ4MjE0ZDIzODUxYmQzZWI0ZWNmYmMzNTg3NGNmYzE5MmZiZSBsZWdhY3ktdHJ1bmsKKzQ1ODIwIGFiNTNhMzc4ZWRhOGY5YjM3MzNhZGYyMWRkNTYwN2NkNzU2NmRlYzYgcmVsZWFzZTI0LW1haW50Cis0NTgyMSBmY2M2MTgzNWM2YWM4ZTZmMzk4NThjNDMzODg3YzU1NDhjZTc4Y2JiIGxlZ2FjeS10cnVuaworNDU4MjIgNjlmMDQ1N2MxN2JiMTgwODU3ODU2YmJjZTRjZDAxYTkzZjg2YjMxZSBsZWdhY3ktdHJ1bmsKKzQ1ODI0IDhmN2FiYzJiYTdkMGEyMmQ1ZjMwMmEzMzc2NmEzZTgzNmNlMTJlZjYgbGVnYWN5LXRydW5rCis0NTgyNSA5YWJlYWI5NmFmNTcyMzZkM2FmZGRiMTdhMzdlMGE2NDE5NmJhM2JhIGxlZ2FjeS10cnVuaworNDU4MjYgN2NjN2M3YTEzNjk3YmNmMDJiZmUyNTJjMGViMDVjNDc1N2RiY2NlYyBsZWdhY3ktdHJ1bmsKKzQ1ODI3IDgxZDkxZmY4MDAzYjk5NDNiMWMzNTdhMjYzOTBjMDdlYzAwN2ZhNTAgbGVnYWN5LXRydW5rCis0NTgyOCBmODk0MTA0NDgwMWNiZmIzZGY0MzI1MTdkOWZkYjkwOGE4MzQ1YjI0IGxlZ2FjeS10cnVuaworNDU4MjkgZmM3YjYxODFkMDllYWUzMTdkOTJkYzQzYTAwNDIyZmQzODVhNTM3ZSByZWxlYXNlMjQtbWFpbnQKKzQ1ODMwIGY2MmJkNTExOGM3OGNmMzQ1YjY4MzhiYzA1OTQyODQ3M2Q0MWIzMWYgbGVnYWN5LXRydW5rCis0NTgzMSAwNzM2YjI1YzU3YzU3NjgxM2NmMDNlMTcxMzMyZDU5ODRiMGQ3Y2ViIHJlbGVhc2UyMy1tYWludAorNDU4MzIgMTM1YjE3Nzg4M2MzNDI1YmVhNmViNGE1MWYxNTViZGIxZWYzOTBjYiBsZWdhY3ktdHJ1bmsKKzQ1ODMzIGI4NTA3ZGVkNGQxNWNjMzhhODg3MzVjY2Y2ODhmNTg2M2ZkMThiODcgbGVnYWN5LXRydW5rCis0NTgzNCBlZmVlYmM4NzcwZTVlNjIxYjFmNDI1ZDgxMGNjNTY1NmIyOGZhN2JlIHJlbGVhc2UyNC1tYWludAorNDU4MzYgY2E2YzkxNTMxYTk2Nzg3MDQwNTcxZDRjNDVmZmUzODAyOTdkZGQ3MyBsZWdhY3ktdHJ1bmsKKzQ1ODM3IGNmMTlhMTIzYTVkOWFjY2M2MjRmMTcwY2U1Mjc0YmVmOWY1ZmFiODIgbGVnYWN5LXRydW5rCis0NTgzOCA5Yjc1YWQyMzZmMDAwMDgwZDZhYzNiZDA4ZWEzZDQ0OTkyOGJjNzBkIGxlZ2FjeS10cnVuaworNDU4MzkgZDc2YjlhYTcyMjlmYzY5NjE4NjIzZGRkNGViMTAwYjhmMDNjY2UxZiBsZWdhY3ktdHJ1bmsKKzQ1ODQwIGVlOThlY2YwNTc3M2E3MDcxNzdkMzM1NTFmZmVjYjhmOGU0OTUyZmMgbGVnYWN5LXRydW5rCis0NTg0MSA2MzUxY2QwZjdjMjg1ZjkyNzlhZGQxYjU1ZGE2ZmQwNzI5NjcxMWYzIGxlZ2FjeS10cnVuaworNDU4NDIgZWQzMzVlNTJkMTcwNTQ5NGZjYTcwNzY0MzI2ODYxYWFiMDlmYWIxZCBsZWdhY3ktdHJ1bmsKKzQ1ODQzIDdiODNiNjhiZThhNjdhNDVhYWRmNjAyMGQ5MjE4MjFkNDcwZDQ0OTUgbGVnYWN5LXRydW5rCis0NTg0NCAxMjhjMDA2MWI1YmIyNmIyOWViZDUzNjA2M2Y2OWYzMjFhZTExODBmIGxlZ2FjeS10cnVuaworNDU4NTAgYzkyMDJmMWM1NmMyNzRlMzAxNzc3MmUyYjg1MTEyZDBjNGQwYThlOSBsZWdhY3ktdHJ1bmsKKzQ1ODUyIGIxY2JjNjA1YmVjOWNkZjlhNDZmMDNkZGU4N2MyMjM0OTVjYWY5MWIgbGVnYWN5LXRydW5rCis0NTg1MyA3MjhjMTZmMTYyNjcxZjM0MWI3OWMyYWU3NTE5NGY2MjVkZTI1NzIxIGxlZ2FjeS10cnVuaworNDU4NTQgYjhlYzY4OWNiMmZiY2M0ZjZhY2JkMWMwZDllMWM3NWM5MTZkY2Y3OSBsZWdhY3ktdHJ1bmsKKzQ1ODU1IGI3YjVmMGIzNGQyNWNjZGQ3YzFlMWExZmM4NjM3MzBhZDRhNGM3MWUgbGVnYWN5LXRydW5rCis0NTg1NiA5YTE3YjgyZWFmYzk0MTI3YTM3ZmFjOWZmMmNiMmRjYjJlZGJhOWM4IGxlZ2FjeS10cnVuaworNDU4NTggYmIzZTBjODg5NjMyNWE1MTMwMTFhMzcwNjAyMzEyMzQ4YzRlMWExNCBsZWdhY3ktdHJ1bmsKKzQ1ODYyIGE4MTJkMGZhZTc0YTQyOGExNzJlZTBmYWE1OWU5OGJiOWFjODA2NTMgbGVnYWN5LXRydW5rCis0NTg2MyBmZTI5Mzk4ZjQ4Yzk4ZGZlMGI4Yjc2ZmIzOWNmMTg5MzljM2U4MDVlIGxlZ2FjeS10cnVuaworNDU4NjQgYWM3MjkwMGUxOTE5YTFmZWJlY2E2NmZhY2E4ODM3M2QwYmE0NDgzZSBsZWdhY3ktdHJ1bmsKKzQ1ODY1IGI3MDZiMTAwYzhmYzBhMDM4NTEzZjEwNWY2ODYxODJiYTAxMTI2NzcgbGVnYWN5LXRydW5rCis0NTg2NiA4YWFmNTdiY2NiZjhiNTY4M2E4YWRmNzg2YjM1MzdhOTBlN2RhNjZlIGxlZ2FjeS10cnVuaworNDU4NjcgNjY4NzViOWM4OWY0NTQ1ZjU0OGRhMzBmMzc1NWUyMzQ5NDIzZWM0ZCBsZWdhY3ktdHJ1bmsKKzQ1ODY4IDY2ZjFiM2ViYWVlM2EyMTlmMjkxMzMyM2ZlNmU2ZjVmODdjYzkzODQgbGVnYWN5LXRydW5rCis0NTg2OSA2ZTBiMDUzYzZjZjdiMTc2YWI1ZTFiNmUyYjY1MTdjYzFiMTJjM2JlIGxlZ2FjeS10cnVuaworNDU4NzAgMGZhM2JhZDQ4OWRkNDc3ZmM4ZjM4OGEwMzNhOTRmZmZhYzQ2Yzg4MCBsZWdhY3ktdHJ1bmsKKzQ1ODcxIGJjNDhlNmIxZTY1NDU1YzdlZTkwMGM4MDc0NWMwMjAyOTkwYTYzMTIgbGVnYWN5LXRydW5rCis0NTg3MiA2YTE0NjliMzlkNzM3ODUzYmNkMDQxNDQ4ZThkZTVmNDc5YjNjN2ExIGxlZ2FjeS10cnVuaworNDU4NzMgZWIwMzU2MmRmNGE3OTY4NDdjYTNjY2YwNDZmOWQxNWI4ODBiNWRiZiBsZWdhY3ktdHJ1bmsKKzQ1ODc2IDU0NTdhYjlmODU5OTE3YjA0YjFiMzljZjU2ZmRjMWQzZDhkYzc0ZTIgbGVnYWN5LXRydW5rCis0NTg3NyBlNWQxMWRmYjJkMDhlYzZjMWY5NTNhODA3YmQxN2Y3NmU4YzE0ZWRlIGxlZ2FjeS10cnVuaworNDU4NzkgMjNkNGFjMzNhYzE2ZTc0YzIxZGVkOWQyYjk5NWNhNTBiMmRkNmM3NiBsZWdhY3ktdHJ1bmsKKzQ1ODgwIGMwNmE2MmYwNTg5ZmJhNGE4Mzg2NDdhYzI1NTE2ZTkwNWY1NDIxNjIgcmVsZWFzZTI0LW1haW50Cis0NTg4MSA0ZjcyYTQ5ZDcwYzgwNWMwZjk3MTc2ZTdiMjliZDNiZTk3ZGMxMDgyIGxlZ2FjeS10cnVuaworNDU4ODcgNmJjMWU4M2E5N2E2OWZiODk5YWE0ZGVhNDcwOWY0ODRlYzU0NDI1NiBsZWdhY3ktdHJ1bmsKKzQ1ODg4IGU5MmE4YjhlZWM3M2I4M2NiNTY1YmU5ZmE5NDIzNjI3YTc4YzgwMmIgbGVnYWN5LXRydW5rCis0NTg4OSBhMDZiNjlmOGMyNzZhODk0MWRiY2UyZWUyMWUzMGU2NDljZTJjNWI5IGxlZ2FjeS10cnVuaworNDU4OTAgODhiODlmOTZiOTdmZjA3OTc3ZjRjZmZjODZiYjU3MTg4MTMxY2M1NyBsZWdhY3ktdHJ1bmsKKzQ1ODkxIDhjMzgzZWY3ODE5ODQ5YThjOGIwYmNmYTFmYWY5YzFmYmY4NDUyZjAgbGVnYWN5LXRydW5rCis0NTg5MiAwMjUxOGNmMTdhNjZlYTc2MTdhN2MxM2RmZDM0OTZjYjhlZTEzNjJkIHJlbGVhc2UyNC1tYWludAorNDU4OTMgMjk0MjUwODZlOWFiNjI4YjMxOTI0Y2Y2Y2IzMjJmNWJkZjJmNjNlOSBsZWdhY3ktdHJ1bmsKKzQ1ODk0IDIyMGFkMjAzOTRkZjBiMzFhNGRlNTlmMTAyOTJiODI5YmFiMGZjNGIgbGVnYWN5LXRydW5rCis0NTg5NSA5MWE2NDM2ZjBhNTg0ZTEyZDRhNmJlMzg0ZWQ3YmRlODUwMDA1ZTdmIGxlZ2FjeS10cnVuaworNDU4OTYgY2UyYTdmYWRjMmIwNGUyMzg4ZTA4OTQ2NmZlMzAxOGM5ZTU2ZjdlMiByZWxlYXNlMjQtbWFpbnQKKzQ1ODk3IDBlN2QzNGFhZWE2MTMxZWQ5N2EwYzFiODY2YjJlNjE5N2VhOGM5NzEgbGVnYWN5LXRydW5rCis0NTg5OCBiZTQ5NjQ1ZTM5ODQxMGE2NmI5MmVmOWIxMjkwNTBhODQzZTViYzAzIGxlZ2FjeS10cnVuaworNDU4OTkgYjU4Zjc1MGQ1MjEwMWZlMzc3Nzk1MTc4MTljM2Q4ZGIyZjA0Y2I4MiBsZWdhY3ktdHJ1bmsKKzQ1OTAwIDc5YzhhMmE5ODhjYjM5NDQ3OWFhMmEwNjE1MmZiMDBjMjI3OWM3MDkgbGVnYWN5LXRydW5rCis0NTkwNSBhNmExMzU5YWFiODRkZjUzMWQ3ZDAzN2E3ODQyYTgxY2M4YWNlZDhiIHAzeWsKKzQ1OTA5IGJlMGNjYTcwY2NhYWRiMzExNTJlNTUyNWM3MWJiY2EwZThhNzg0NjAgcmVsZWFzZTI0LW1haW50Cis0NTkxMCA1N2JkN2M3ZDkxZTNhYmUwMjFhZTViMzA3YjZhMzYxMWZlOGQxZmJhIHAzeWsKKzQ1OTEzIDM2MTgxMjZjNjMwNGM3MWE4MzM4MTNlMWVmNDU4YjQ0ZDRmMzAwNDYgbGVnYWN5LXRydW5rCis0NTkxNCBjMDFjMzM3YWQ2MTg4ZWZlMDI1YTkxNjJkMTE4NDhlM2FkOWZlZjAyIGxlZ2FjeS10cnVuaworNDU5MTUgYTU5NmVkOTNjZjQyNjRiMjdkY2RmNDY2MjAzM2JlMTc1ZGQ3NWNmMSBsZWdhY3ktdHJ1bmsKKzQ1OTE2IDc0MWZiODNiNGVhYjQ3NjEyZDkwOGE3MDIxOTljYzFhYjlmYjg5YmIgbGVnYWN5LXRydW5rCis0NTkyMCBjMzM0MmQ4OGFlZmQ0Y2I2Nzk3YjkwZDc1ODNmNWIzYjljYWMzZGQwIGxlZ2FjeS10cnVuaworNDU5MjEgMmM1ZTc0YzY0NWUyOGM5OGRjNjU4YjNiZWNjZjhlMjljYzYwNTA4ZiByZWxlYXNlMjQtbWFpbnQKKzQ1OTI0IGMzYTM2ZDQ1NmRlYTBiZjMzYjQ5NTZiZTRhYTU1ODkwMTNmOTNiNGYgbGVnYWN5LXRydW5rCis0NTkyNSAwZDg3OWJmZjI1ZjY2YzcyMGQ3ZDhhNzk1OTFmYWVmNzdlZDk1OTY2IGxlZ2FjeS10cnVuaworNDU5MjYgOTBkZDU3ZmNkMjRlMTJiYWQzMWQ2MzA2YWEzZDk0NTY5OTBjYWRhNyBsZWdhY3ktdHJ1bmsKKzQ1OTMxIDRjMzkxOGYyMzAzYjVhOTViZjdkYTgwNjVlZDg4MmM3OGZkNGY4NDUgbGVnYWN5LXRydW5rCis0NTkzMiBlNzAzNTI3NTI0NWJhZTM2NmYwNTVlY2RhOTNkMjc1YzlmNDc3ODIxIGxlZ2FjeS10cnVuaworNDU5MzQgZDAxNzAyNzZjNWRlZDMwNGJkNDQzOGYwOTYwMmNjOGY0NGRiNDM4OSBsZWdhY3ktdHJ1bmsKKzQ1OTM2IGRkZjAwNjlmNjFmOTJkN2VkNWQ4YzZiNjFkNjRmNjhiN2VlYzY3NTMgbGVnYWN5LXRydW5rCis0NTkzOCA4MjI1YWVlOTE5MDQ5NTA5M2FkODU4NjI3M2VjYmU5N2VkZjYzMDZhIGxlZ2FjeS10cnVuaworNDU5MzkgNmQxZTI0MGM5MThjMTJmMDc0Y2M4YTQzMzA4MWVjNDRlZGZmOTQ2OSBsZWdhY3ktdHJ1bmsKKzQ1OTQwIGI0NDg1OWYwYjMwOGJjODQ5NjEzMmIwNDRmNzc5NDYyZTNjY2U2MDAgbGVnYWN5LXRydW5rCis0NTk0MSBlYjQ4NzljMDg1YWFhODdmMmI5Njc5MGYxNDgxNGFhNzJhZTJjYzA3IGxlZ2FjeS10cnVuaworNDU5NDMgY2UwYjQ3ZDNlNWQxMGM3MDI5NmFlZDk4NTE5YzMyNDgwOTgyN2U2ZiBsZWdhY3ktdHJ1bmsKKzQ1OTQ0IDA2MDZiOWMwOGFjMjRmMWRkYjc4NTdlNTJmYzNmNmU4Zjk3ZTM0NDkgbGVnYWN5LXRydW5rCis0NTk0NSBmM2E1ZTE1M2MzMjk0OWI4MTE3MTY4MmJmZWU0ODVhZDIyMGJjYjA0IHJlbGVhc2UyNC1tYWludAorNDU5NDYgNGM5OTIyZDhkY2RkMTA3ZmMxODk4N2E4NmE2ZWEzYzA5YTk4NTQ1ZiByZWxlYXNlMjQtbWFpbnQKKzQ1OTQ3IGYxZTI0NDUyZGJiYTdiMWFlZDQ2OWJmYTA1ZTU4YmE4ZDA1ZmQzNWUgbGVnYWN5LXRydW5rCis0NTk0OCA4ZGEwOGQ4NWZjYjFlNjkyZTEwMjc3MjAwMDdlYmYyNjc2NGZhM2Y4IGxlZ2FjeS10cnVuaworNDU5NDkgOTdkYjNkOWIxNDU4MDA5MWM0M2U1ODFiNGI3OGM1N2M2NzQzNTUxZiBsZWdhY3ktdHJ1bmsKKzQ1OTUwIDhjODZjYThmMjY4Mjg4MDFkNzQ0OTYzNzBjMzJhNTgxNDY3Yjg0NjAgbGVnYWN5LXRydW5rCis0NTk1MSBlZWExNzZlNjdmMjI4ODRjNTU2OTY5N2Q4MTBhMmViNWI2NjYyMGFjIHJlbGVhc2UyNC1tYWludAorNDU5NTIgMTQ1NzMzNmQ0MzJmZTQ1OWJlYThjMDU0YjlkMTY3OTAzMzZjZGIxYyBsZWdhY3ktdHJ1bmsKKzQ1OTUzIDQyNzI4Y2IxOGVhMjU2MGMxZGE2NWQ3NmZlNTIxNDMzYTY3NDJiNzIgcmVsZWFzZTI0LW1haW50Cis0NTk1NCBmNjFjODkyY2FkYWM5Nzc0MTU0YTRkNDlmZDYxYzk0OGI3MGY4MTllIGxlZ2FjeS10cnVuaworNDU5NTUgN2ZlNDlkYmNiYmRhYjFjOTU5OWU0ZTVkNjU2Mzk3YjgyMmJiMjc2ZSBsZWdhY3ktdHJ1bmsKKzQ1OTU2IGYyNmZjM2FlZWY5NmNiNDc4ZWI4ZmViZWRlNWE3MzAwNGVkOTljYmQgbGVnYWN5LXRydW5rCis0NTk1NyA2NzAxMzA5ZWZhNzY4NmU2MDI3MjJjZDM1MTc0MzdhZGUxMWY2YjQwIGxlZ2FjeS10cnVuaworNDU5NTggODZhMDUxZDIyNjRkMmEyOTA1ODJiNGVmMDhhMjVmNTg1ZWVjMTE5NCByZWxlYXNlMjQtbWFpbnQKKzQ1OTYwIDlkNGZjYzM5MDIzNmU0YWI1ZDgxMDA1ZDUyZGJlY2E3NGEyZDMyYWQgbGVnYWN5LXRydW5rCis0NTk2MyA5YTYzN2JmNGRmNDI3YWJhM2FmY2EwNzYyYzMyMzFlMGQwZTY5OGQ2IGxlZ2FjeS10cnVuaworNDU5NjQgZTJlZjYwZmVjM2RhZDkxYTZkZjFlNDUxNGIwMjBlNTdmNTBhNzFhMiBsZWdhY3ktdHJ1bmsKKzQ1OTY1IDQwODJkMWExMTkxN2MxMGYyMDkzZDgyYTQ3ODhkZGJiY2UzNGVhMTkgbGVnYWN5LXRydW5rCis0NTk2NiA4ZjQwOGFhMmE3ZWZhNDdmNGE1YjA3MDQ2ZDVhZjRlMTA4NWU5NTUzIHJlbGVhc2UyNC1tYWludAorNDU5NjcgMmE5YjQ1ZGMzMTE0MWQ5ZWJiNDE1OWY3OWVkMDYzMDllYmFlNGJmYiBsZWdhY3ktdHJ1bmsKKzQ1OTY4IGIyMWJlOWQyMzQxYTkwNzI5NzQ4NTNmZGVkOTU4MDRhM2FlYWExM2QgbGVnYWN5LXRydW5rCis0NTk2OSA3ZmM5M2Q5NTMwYmY2MGRmODUyODI2MDJkMzU0NDAwNDI2ZTBhMWQzIGxlZ2FjeS10cnVuaworNDU5NzAgYzRhYTU2ZDdhNWMxMDYzOTQzNjc1YjkzOGRlNGFhNjcyZDY2M2EwYyBsZWdhY3ktdHJ1bmsKKzQ1OTc0IDVlMzU0M2I3ODMzN2JhMzc2YjIxYTljYWI4YTYyY2IyN2M5NTcyYjcgbGVnYWN5LXRydW5rCis0NTk3NSBiZjM3MzUyMDY4NzFiZDI3ZTlkYTFjMzhhY2UwODZkYzU3MDBiOWQ1IGxlZ2FjeS10cnVuaworNDU5NzYgMDc5NTM3MmE4NGFiZmUwZGM2MjViYzBhN2RlYmQzOTc3M2MxZjJlMyBsZWdhY3ktdHJ1bmsKKzQ1OTc3IDc4OTBmNmI5MmMxNDljZjliMTk2NGFhOTFlMGEyNWFkMzdjMzM3YzkgbGVnYWN5LXRydW5rCis0NTk3OCA0ZGUzMTU1ZTE5MmJjOTkwOGY2ZmRkYzhjODNmNmJkMTcyYjllYjU2IGxlZ2FjeS10cnVuaworNDU5NzkgY2Y3OGY5YzQ3OTBlZTEyOTlhOTRjZDNkNTEzNzgzZjg4ZWVkYWJkYSByZWxlYXNlMjQtbWFpbnQKKzQ1OTgwIDU3NGZmYzRkN2JmNmJjNzc3NDA1YmYwNDRhZjVjZGY2YmQxZDI2NTYgbGVnYWN5LXRydW5rCis0NTk4MSBiYjYwOTI5OTU0MDk5MzUxMzZhMDJjOWQwZTlmYjgzZTgxN2UxZGFlIGxlZ2FjeS10cnVuaworNDU5ODIgYTc5N2VmYjRlN2Y4M2ZlZjIzNTMzYmI0YzA0Nzc1ZTY3NTMxYjMzOCBsZWdhY3ktdHJ1bmsKKzQ1OTg3IDg1YzgyODg3ODE4OGIzNWRiZGUwNGRhNTc0YTgyOTYwY2NjYzE3ZWMgbGVnYWN5LXRydW5rCis0NTk4OCA4YjYwMTdjOTM3YWMyN2YwMDg5M2FhMWU5OTRhOGU3ZjE2NmI4ZGFkIGxlZ2FjeS10cnVuaworNDU5ODkgNTI1NjI0ZTk0ZTc4YWU3NmRhOGU4NTMyYWEzOTcxYzJiNGRiYzhmNyByZWxlYXNlMjQtbWFpbnQKKzQ1OTkwIDMyNDcyZWE1ZjNjZGI2MDhmMzY3MDJkZmJiMmRlZGIwMGUxNTliMmMgbGVnYWN5LXRydW5rCis0NTk5MiAzODBkYWQzOTU1OTkxNGY5ZDU0NzZhZmRmZDJmODA4NDQ5MDlhZWZlIGxlZ2FjeS10cnVuaworNDU5OTMgZWJkNTczMjEwZTI1MDM4Y2U0NGMwNTA2OGUxNjk4NWZmNWQ2YmI3YSBsZWdhY3ktdHJ1bmsKKzQ1OTk0IDRiZGYyN2JkNzNkMjJhZDVlNzc0YjI2MjBhN2EzZWU4M2Y0YTA5ODEgbGVnYWN5LXRydW5rCis0NTk5NSBjZGY4ZjUzMzQ0MjY5ZTkyMDRkNjU5YWQ3NjdjMTRiODFhNDhlZDIwIGxlZ2FjeS10cnVuaworNDU5OTYgNjc2NDkyYTkzYzhhN2JmN2RlYzU3YjFmNmE5OWQyMzVmMDdiMTczMCBsZWdhY3ktdHJ1bmsKKzQ1OTk3IGVmODJjNWQwMTQ2MDdmYmI1OGZjMGMxMGE3OTVmOTU1Yjg2NDU3YmUgbGVnYWN5LXRydW5rCis0NTk5OCBmMjUyYzZhZTBjNDI2NDM2MjZjOTQ2MjVhNWU3MDYwNzU0NTEyY2VkIGxlZ2FjeS10cnVuaworNDU5OTkgMjliNzM2ZjA3M2EzNWMzZmI4ZTQwNDAyMTY3ZmFiNTNmZmEwZjRiNCBsZWdhY3ktdHJ1bmsKKzQ2MDAwIGFiNzA0Yjk5ZTE1MGNmMDM3NTllN2VhNmVmZWJjZGNkNjgwMzNiZmYgbGVnYWN5LXRydW5rCis0NjAwMSBkODM1NWNjY2ZmNGFjZmMyOTdjMjYwODJmMmNjZDNmNjIxODcyY2E3IGxlZ2FjeS10cnVuaworNDYwMDIgZmVhNWQyZmQ5YjhhNDgzYzcxMTk2OGM4YjcxMGYwNWEzOTg0OTE5ZiByZWxlYXNlMjQtbWFpbnQKKzQ2MDAzIGU3ZDMwZDc1ZGFlN2MyYmZiNDA4NTg4NDA4MjYzNmU3NGY4NDEwM2MgbGVnYWN5LXRydW5rCis0NjAwNSBhZDhiNzZlOTkyNjEwNTJiMTkxNmQzMDI3M2M2NzNlODk1MTUyZDI3IGxlZ2FjeS10cnVuaworNDYwMDcgY2ExMDUwN2E2YWZiZjNjYzdiNmZiYzMyNzFhM2JhZWU2MThjNTQzNiBsZWdhY3ktdHJ1bmsKKzQ2MDA5IDBhZTRiYjc0ZTc4MWE4MzRjM2E0ZDkyM2IyNjFlZDBlNjdiYzhhY2UgbGVnYWN5LXRydW5rCis0NjAxMCAzMzc5YWQ2NmIwZTA3M2E0NWZjNzUxZWFiNTU5YzNkMDc1YjFjMTM2IGxlZ2FjeS10cnVuaworNDYwMTEgM2I1Y2Q3YzY2ZGEwOTA5Nzg3NWJkZDk3MDk5YzhkMzA3ZjI1MTQyYSByZWxlYXNlMjQtbWFpbnQKKzQ2MDEyIGQ2ZDg3OWFmMzZkMzRhNWM3MGEyMWFhYTc2NTZlY2E1NTgyZTYxYmIgbGVnYWN5LXRydW5rCis0NjAxNSBmODM4NWQ2YzhmNWVlMTYwNDUxZTc5ZWY5OTNlYmU5MWJlNzA1ZGVjIGxlZ2FjeS10cnVuaworNDYwMTYgNmNmNDY2Mjc2M2ExYTI5M2M0NjQ0NmFkYmM3MDEwODhhMjAwYWI5OSBsZWdhY3ktdHJ1bmsKKzQ2MDE3IDM2NTYzYjEzY2U3OTJhNzJiYjBmODBhZTBkNTNhNzBjZmYzM2ZhNjkgbGVnYWN5LXRydW5rCis0NjAxOCBmOTEzNTA1MDA4MzQ2ZjQzZDE2ZGNhZTI5MDlmMmE5Y2MwZTVkMGI2IGxlZ2FjeS10cnVuaworNDYwMTkgZDZlYTdkNDNlYmZjMGFiYzc2MDI2NDVlNGUyOGJhMjljZmViMTIyYSBsZWdhY3ktdHJ1bmsKKzQ2MDIwIGFjNTA2ZTJkZjA0ZDUzOTZhNDk2N2U0ZTc4MzBhOWY1NWY0YmM4ODggbGVnYWN5LXRydW5rCis0NjAyMSAyMDRlYzM4M2I0NDVhYmYzOWJmNzUyZGFlZDQwYmIyNzgwNmRlYTI0IGxlZ2FjeS10cnVuaworNDYwMjIgMzAxODhjNTIzYmM1NThkYWQwNzdiMzVkY2QyOGJjN2E5NTEyNmEyNSBsZWdhY3ktdHJ1bmsKKzQ2MDIzIGFhZTJmZjMzZTI3YzM4NTQwZGFhNzRlNzFiMzkyY2RjNzBhZTExNTggbGVnYWN5LXRydW5rCis0NjAyNCBhYjFkYzdlMjNiZmU1MTM5ZTU2NDU3MWU5NjYwYjc2OWVhYWRmZDU2IGxlZ2FjeS10cnVuaworNDYwMjUgN2NhYTZkMzNhNGM2Nzk4ZDQ4MDYzNDFhMmE3NzBlYzFjYWZhYzQzMyBsZWdhY3ktdHJ1bmsKKzQ2MDI2IGJmYjc2YWU4MmM5MTIxYmUwODNhMzBhOGJiZTI1NTBiMDJhYzA1ZGIgbGVnYWN5LXRydW5rCis0NjAyNyBjMmUzYjVjMzZkZTQ1MmJkMGU0ZTc0NzJhZGEzMDQxN2E2MDdmMmYxIGxlZ2FjeS10cnVuaworNDYwMjggZmEzYzRlYTk5ZDk1Y2E2ZWRlZDFhN2Y4ZTUzOWM3OTUzODY3ODNiOCBsZWdhY3ktdHJ1bmsKKzQ2MDI5IDBiNDczMTA0OWI3MWNlODkwYmJiZWQzMzlhNzk3NmJiOTJkM2YxNDcgbGVnYWN5LXRydW5rCis0NjAzMCAwN2FiYzYyODQ4OTlkZmExZjBhMzU0MGY0MDIwZjY0ZDM0ZjE5NDEyIGxlZ2FjeS10cnVuaworNDYwMzIgYjczZjI0ZTIxYjBhYjY0YzViYjlkOGQ4ZjE3OGFiYWZiMDhhMGJiMyBsZWdhY3ktdHJ1bmsKKzQ2MDMzIGIyODZlZDQ1NDM5ZDY2MGJlMGM5MDA3NzAyYjIzNGM3ZWRkMjk1YzAgbGVnYWN5LXRydW5rCis0NjAzNCBiMzVjZGE1NWQ2MGM2YTE5NzA5NTdhOGFhYjc4Zjk2ODliNDZkYjBmIGxlZ2FjeS10cnVuaworNDYwMzUgNzNjN2FkNWU4N2RlYmE3OWY4NmRjODA0ZDEzNjE5OTY2ZTEzZDRiZSBsZWdhY3ktdHJ1bmsKKzQ2MDM2IDZmZWFhNDJlZmY2OWY0ZDUxZjEyZWIyZTdiMjg5Njk2YjBhYTA4ODAgbGVnYWN5LXRydW5rCis0NjAzNyA0MmQ2YmFiODgwNzlmZjYwZGUyMWIxNzc2MGJmZDQzOGRmZjhmYTU3IGxlZ2FjeS10cnVuaworNDYwMzggODFlMzg1YTY0MWVmOGIwNzAzYWVlYjg1ZjdmOWQ2ZjYwMmQ2ZjQ0NSBsZWdhY3ktdHJ1bmsKKzQ2MDM5IDRjYjlkYzBkYzNmOWViZDFiNTg2YmY2MGVkOTk1ZDIyNGE3OTdjYmUgbGVnYWN5LXRydW5rCis0NjA0MCBjNjRjZDI3MWFjZWE5YWZjNDU2ZDU3N2E1ZDE0YjBkNmE3ZjcxYTgxIGxlZ2FjeS10cnVuaworNDYwNDEgYzA3YTVjMjMwNGYzZmNmOTY5NzBjNzFkZGFmZjUwYWRiZDM3OTBkNyBsZWdhY3ktdHJ1bmsKKzQ2MDQ0IDIxOTU5NzJmNzM5MWQ0ZWM0MTZiYzhjZDVhNjQxZTdhMTdkYWE1ZGYgbGVnYWN5LXRydW5rCis0NjA0NSAyNmZiNTYzODgxYzkzZDk4YmI1YjQwZDVkNTZiMjhmMTdjODY1YWNhIGxlZ2FjeS10cnVuaworNDYwNDYgY2JmMmQ1NjJlMzIyOTI5MTA0MGNhYTIwYWM4MmM5MDlkYTdlMjFmYiBsZWdhY3ktdHJ1bmsKKzQ2MDQ3IGM0OTA3ZDk5MGRiNWQ3MGE4ZTNkYjc1ODUyMjNmZWFkYTljM2IwNDMgbGVnYWN5LXRydW5rCis0NjA1MCAyODUxMTU1NGRmZjFmZjRlYmQ1MjlhNjQwMjk4NDUzYWRiY2RjZWFkIGxlZ2FjeS10cnVuaworNDYwNTIgYjBiYTRlODIyOWY3NzUxOTY0NzE0ZDc2NWFiNDA0MGFlYTNiMmQyZiBsZWdhY3ktdHJ1bmsKKzQ2MDU0IGFjY2RmMTEyNGJhMmVkZjNiZTI2MzJkZjc4MDE5ZmIxYTg0NGE3ODggbGVnYWN5LXRydW5rCis0NjA1NSAxMDk0MzdjNGNhYzQ3NjA5NzM4ODg4MTI1NjVmZWFiMTE1OTdmZTg0IGxlZ2FjeS10cnVuaworNDYwNTYgZjk2MTIxNzdkMDhkMWJiMzMxOTRjYWE2OWVjZjZlMTVkZmU4MjRiZSByZWxlYXNlMjQtbWFpbnQKKzQ2MDU3IGNjMDU1NmFkYzJiMGNiZjExN2M0YzVkM2QwYjQ1NTYyM2E1NzJiZjMgbGVnYWN5LXRydW5rCis0NjA1OCAyZDE4MmZjZmFiNmI5ODA0MGRmYWYwZjBhOGJlZGQ2YjQzMzZmZGNlIGxlZ2FjeS10cnVuaworNDYwNTkgYjRiZGJkN2IxZjVlZTc2MjcyOGNhOGExMGUwMzgxY2RlZjZhZGMwMyBsZWdhY3ktdHJ1bmsKKzQ2MDYxIGNhMWYxYzIxODllNzRmYWQwZGJhYjQ1ZDE2ZDE5ODEwMTk1YmI0YzQgbGVnYWN5LXRydW5rCis0NjA2MiBhNjllZTViYWQ5YjIzYzZlYjg2OWViNWI2NDNjMWVlNjMxOGQyNjc3IGxlZ2FjeS10cnVuaworNDYwNjMgZGFlMGU0YzM5MGU3NzIxNDViZmVkNWI4ODg2MmI0ZThiNDE4MmI2YSBsZWdhY3ktdHJ1bmsKKzQ2MDY0IGFhNjIwODU2ZThhM2Y3NWNhNjdmZmU5ZDkzYmRkZDA1NjFiNTE2ZTMgbGVnYWN5LXRydW5rCis0NjA2NSA5NTkxMGJjNjVmNmI5OTFmNDdjN2VjYzg2NzI5ZDlkOWE3MzRkNjliIGxlZ2FjeS10cnVuaworNDYwNjggMTA1NWQ2MjZlZDU5NGQ2MzhmMDQzMzEyNTcxZGE5YWMxYWQ5NzU1NiByam9uZXMtZnVuY2NhbGwKKzQ2MDY5IDg4MmI2MTJhNWZlOWNiN2EzNWM3OGZlZjM0MTA2ZGQzMTRjNTA1YjkgcmpvbmVzLWZ1bmNjYWxsCis0NjA3MCAyN2M4MDA1ODE3M2U4YTdhZjFhMmM2Zjg0MDBkODNiMmE0MjFiZTcxIGxlZ2FjeS10cnVuaworNDYwNzEgZmI0ZjBmZDdlYmE0ZWJlMzU3NThmZGRlYjI1ZTQzMDdiYzFlOGY4MiBsZWdhY3ktdHJ1bmsKKzQ2MDcyIDUxMjQxY2M5NTg4M2VkZWQ1YzhkNzVkM2Q4OTljYTRjNDI3MjEyMDcgc3JlaWZzY2huZWlkZXItNjRpbnRzCis0NjA3MyA3ZTE2ZmNjZTM0YTEzNTM5NTFhOTVjNmViMjQ3YjZjYzYxNGNlMDYxIGxlZ2FjeS10cnVuaworNDYwNzUgZDcxMGMyZGJhM2U4ODBjOTIwY2ZlODlkMDFmOTAxMzU4OGM5YzMwOSBsZWdhY3ktdHJ1bmsKKzQ2MDc2IGZlYjAwZGY5MTkyMjA2YzQ0NGM0MmNiMjk0NWM2NWE4Zjg3N2UyNzggbGVnYWN5LXRydW5rCis0NjA3NyBjY2VkODNhOTE1Nzc4YWY3ZDIwYTMyYTE1ODdmMjAzMWU4ODQ2MGJiIHJqb25lcy1mdW5jY2FsbAorNDYwNzkgNjA0YWY4NjdjNjVmYjgxMjUyNDgzZWY1ZGFlNGFkMjRhYTQ4YWNlYSBsZWdhY3ktdHJ1bmsKKzQ2MDgwIGNkMzRhMDg4MzA1MzZlM2IxNDQ3YTE1MzlmOWVkMzBhNTk5M2QxYTIgcmpvbmVzLWZ1bmNjYWxsCis0NjA4MSBlYzU0YzZkZjkwNDAyYmZlZjFiYTYxMDE5NTUzNjk4MGUyZjMyZWEzIHJqb25lcy1mdW5jY2FsbAorNDYwODIgMDJhMGM2OTI4YzUwYTdjMWM2OTIxYjlkMGVkMjlhNGY0YmEyOGE1YiBzdGV2ZS1ub3RyYWNpbmcKKzQ2MDg0IDAzNzNhMDc0MDA0YzJlYTlhNTQ5ZjJlZWYxYWE2MmQ4NTBkNTE3YzYgbGVnYWN5LXRydW5rCis0NjA4NSA1ZWFmOGI5NTg3ZDg2OTk0MWM0OGFiZDExNGQ3MDMyZmE2YmI2MDU1IGxlZ2FjeS10cnVuaworNDYwODYgODcyMDQyYTNiMTM0M2M5YTUyMmNkZTJmOGU4NWJmOGUxNmVkNTMzNyByam9uZXMtZnVuY2NhbGwKKzQ2MDg4IGZiODE2ZGZjZDAzMTU0MzBlMmJmZmU3NDUwM2IwYmI4MDAyYzFmMmUgcmpvbmVzLWZ1bmNjYWxsCis0NjA4OSA0Y2VhYmI1NDE0ZDVmMmEyNDMzZjJhMzg3NjQ5YWM2OTNmNTRmZDJlIHJqb25lcy1mdW5jY2FsbAorNDYwOTAgOWEyOGJmYTZmNzg3YzQ2MzczYThjYmJiMDBlZTc0Mjk1MWI2ODQ0MSBibGFpcy1ieXRlYnVmCis0NjA5MyAwMDQ1NmZjYTM3YzQyNDRjZGVkZGIyMWI4NDU1M2JmM2U3ZTcyZWUzIHJqb25lcy1mdW5jY2FsbAorNDYwOTQgMGRlOWE3ODlkZTM5MDRlNWM2OThhMDlhZGNhZDZiMWUyZWFlN2NmOSBsZWdhY3ktdHJ1bmsKKzQ2MDk1IDBiYTcxMWE0OTZlNmIwMDE5ZDAzNDQ0N2QyZmQ5YWU0ZDlkMjZmYTAgbGVnYWN5LXRydW5rCis0NjA5NiBhNjM3Yzc4YmYxMTk1ZWZjN2I1ZjRhOTQ3YmYxZTBmYjE4OTQ0MGEyIGxlZ2FjeS10cnVuaworNDYwOTggNmE2YzU0OTJiOWFkMmVhZDlhZWE4ZTMwMjM3Nzc3YWNmNDU4NzA0NSBsZWdhY3ktdHJ1bmsKKzQ2MTAxIGVlMjEzOTkzNWExZDNhZjUyZDUwMDliNzQ3MTkyODY0MDIyMTZmYzIgbGVnYWN5LXRydW5rCis0NjEwMyA1YjU4NzE5MGY0YzY4NTc3YTMyNTI5NjNjODU3NmM0ZjQzZjhjMTY0IGxlZ2FjeS10cnVuaworNDYxMDQgMzA3OGZkYjdjZjNkZjU1YzczZjQzYWZiNTMyNzk1MjdhOTkxMTZmZCBsZWdhY3ktdHJ1bmsKKzQ2MTA4IGI3YWFmMjFjNDc1NjQwM2YwMTgyOGE3OWJmY2IyNmI3MmZhM2FiOTQgbGVnYWN5LXRydW5rCis0NjEwOSA3NmJlZGY5ZWQyMmZmMjRlM2Q1NDM3YzY0YmY1MGIwZTk3NjAwZGY4IGxlZ2FjeS10cnVuaworNDYxMTAgY2EzNDUyMWJiMTNjMzgzN2Q2NTFmY2E5MGMxZGYwYzRiY2UyOTIyMiBsZWdhY3ktdHJ1bmsKKzQ2MTEzIDc1YmRkNDRmODVkY2Q0YWRhODZjZWIwOWUyZjcyYzQ0NzdjZjBlZGIgbGVnYWN5LXRydW5rCis0NjExNSA5YTkwNzUzZjZiZmJiMjFhOWQ3YmYyMTNlYzk3YjVmMTc0NDQ3MTI1IC4uL2JpcHBvbGl0by1uZXdzdHJ1Y3QKKzQ2MTE3IDY2N2EyY2FlNzllNjI2OTY1MTZiOTEyMDMxNmYwZjNmYjk2ZDRjNzYgLi4vYmlwcG9saXRvLW5ld3N0cnVjdAorNDYxMTggNTgzMTdkZjRkMzBiYmNiNDJkYWIwMzcyODk1NTg2NWI0NGQ0OGVhMyBibGFpcy1ieXRlYnVmCis0NjEyMyA0YjBmZjc4OGU5ZmRhZTBhN2RiYjZlZGNkNTI1NTI4N2ZkNGYzMjVjIHJ1bmFyLWxvbmdzbGljZS1icmFuY2gKKzQ2MTI1IDBmMGYwNDZhMjlmYmE0OGRjN2Y3ZTgzYWEzOGI0Y2NlOWRhODg5YWEgcmpvbmVzLWZ1bmNjYWxsCis0NjEyNiBmZjUwYWUxM2RiOWU2OGRmZjYwYjUzZDg1MmExNzE5MzQwNWRhN2ZkIHJqb25lcy1mdW5jY2FsbAorNDYxMjcgZWFhZTY5OTBlMmQxOGQyYThkYjQ3ZDY2YWIwOWI2MTk3ZTQ5NzhhNSByam9uZXMtZnVuY2NhbGwKKzQ2MTI4IDRiZDI5OWQwMGU0YzZmMTczY2JmZjM1ZGVmOTM4MGY0OTM5NGU5ZTggbGVnYWN5LXRydW5rCis0NjEyOSBiZjVmYjZlNzUyN2MyZmZlODUxYTk5ZDUyMGRjZWJmMzU3MWFiYzg4IGxlZ2FjeS10cnVuaworNDYxMzAgNDk1YTM0ZTU0ZDYwYTUyNzg1MmQ4NzA0YTQ0YWZhZDM5MjBmYmFmMyBsZWdhY3ktdHJ1bmsKKzQ2MTMxIDllZmNjZjU2ZDRlNzFmNGQ0NzNlZjAyYjQ4M2JkZjFkM2Y0NWQ5YmUgbGVnYWN5LXRydW5rCis0NjEzMiBhZjQ2YzdlZDA1ZWI3OTFiMWU0MzY1Yjc4MDgyNDJlYmZiZTI2ODQ0IGxlZ2FjeS10cnVuaworNDYxMzMgOWZkZDQzNDIxNmVmODJlZGIyZWY3YTVmYTdjMjY3ZjhjZjFlYmRjMiBsZWdhY3ktdHJ1bmsKKzQ2MTM0IDg5NWRhNDI0ODBmMWMzNTczNzA4YWMxMjg4ZGRmNDZmOGMxZTQ1OWMgbGVnYWN5LXRydW5rCis0NjEzNiBjMWNlMGI4MzE2MzY3MDNkMTNkODEwN2VlNmQ0MDUzMWMwZTRmYWNjIGxlZ2FjeS10cnVuaworNDYxNDEgMjc4ODJhOGU0M2E5ZTg5YjEwMzNiMjJhMzczMTdhMDRhZWU5ZTk4ZCBsZWdhY3ktdHJ1bmsKKzQ2MTQyIDZiNzlmZmZiYmUxZjA0MzNkMWJkNWFjMTUwZTg0ZTY0NTkzNTViYTIgbGVnYWN5LXRydW5rCis0NjE0NCBlZmI3ZTg3MjRlZWZhNmNlNzYwNDdhYTk1YWY0NGRjY2YxZmQxNWY1IGxlZ2FjeS10cnVuaworNDYxNDggMzM2MzFiNmIwODAxNDc1OTZlNjIwNWY1M2ViOWE5OWE2ODQxYTg2YiBsZWdhY3ktdHJ1bmsKKzQ2MTQ5IDdkODJjZGVkOGFiMTUyZWIxOTU0OGZmOTk5ODkzNzY2MTg1MDY0M2UgbGVnYWN5LXRydW5rCis0NjE1MCA3NGM4MmViYzRlNDQ5OTFjYjVhNWFkNzBlYTk0NzVmMzUzZjQ1ZjRkIGxlZ2FjeS10cnVuaworNDYxNTEgY2Y1YTkwNTdlZDNhOTIwNGViODc1NmRiOWM0NGQyMzViYTcwYWYzOSBsZWdhY3ktdHJ1bmsKKzQ2MTUyIGUwN2RjMTM0OGRhZDlkNGM0NDdmMmYyMjAxZWQ0Yzk3ZjUyN2QyZmEgbGVnYWN5LXRydW5rCis0NjE1MyBiOGJlZjVhMDdkZjZjY2ZiNTIxMmRlN2ZiN2MxMTI3ZmVjMDkwOWU4IGxlZ2FjeS10cnVuaworNDYxNTUgMWRjNTY1N2YxNzQ1M2M3MGE3OGJlNmNhNzZlMjYzZjM0ZGNkODU1YyBsZWdhY3ktdHJ1bmsKKzQ2MTU2IDMxNGQ2NjZjN2FkYmQxZDdlYzI0OThiMzE2MGZkMDc4NjE4YzkzODkgbGVnYWN5LXRydW5rCis0NjE1NyBkZTlmMWExNDA2MTE5MzcyZGY5ZWYyM2E0MjNkOGI2MmEwODY5NWU3IGxlZ2FjeS10cnVuaworNDYxNTggOWFlNjliY2FiOWY3MjIxN2JiYzE0ZWE5ZjllNTM4MzgxZjM3NjEwOSBsZWdhY3ktdHJ1bmsKKzQ2MTU5IDA2OTFmM2ZiMzljYWExZDBkOWE0OGQ0ZWVlNGVhODdjMTVjNjgxNzggYmxhaXMtYnl0ZWJ1ZgorNDYxNjEgMmQ1NWU5NzkwMDM1OGJiN2I0NTMzZGQwOTY3NzVkNzZjOTdmNmVkNCBsZWdhY3ktdHJ1bmsKKzQ2MTYyIDM1N2I1NDAzZTgxYWQzYzlmNjM3MjMzNzY5ZTljYTdhNGY2MWFkZmEgYmxhaXMtYnl0ZWJ1ZgorNDYxNjQgMDQyZWQ2ZjgwODQ3Y2MwNGJiM2E0MDEwMzNhMzdmZmMzOWQzZGE5ZCBibGFpcy1ieXRlYnVmCis0NjE2NSBhNTg5Yjc0NDE1YzAyMmY2ZTE2ZTcwMTRkYzZmNjNhNWE1NDIwODEzIGJsYWlzLWJ5dGVidWYKKzQ2MTcwIDg5YjJjYTUxMjMwNzIzZTJhOGVhMzBkMTY0NDJhZTBhMDJjMTM2OTAgcmpvbmVzLXByZWFsbG9jCis0NjE3MSAwYTk1NGY0ZTNlMzZhMmFjYzk3NjdiZDBmZDIxMTA5NDNlYzEwNTQ0IHJqb25lcy1wcmVhbGxvYworNDYxNzMgNDNiMTQ3NGI1MTJiYmI0Y2YwMDhmYWRiOGZjM2ZhMTk5Y2QzY2U0YSBsZWdhY3ktdHJ1bmsKKzQ2MTc1IDZkYTMxYzQ5ZWIwYTY4NjM2MWUxYTU2NWNiODg4ZjM3NDViYTZjMGQgcmpvbmVzLXByZWFsbG9jCis0NjE3NiAyMjk5NWMxMDllZmQ2N2U1YzA2NmVjYTY5Y2YzY2EwZDQ4NGYzYWQxIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYxNzcgOGFkOWUxNDQ4OWZmZjFmMWI1NThlMWI4YzQ0NmFjODlmNDVjY2QyZiBibGFpcy1ieXRlYnVmCis0NjE4MiBiNWIyNTY5NjZmZTkyYjQxNWI3NGI3MDMzZDg4ODU0YjBmYmY0NjMyIGxlZ2FjeS10cnVuaworNDYxODQgYjgyNWU2MjI3MzY2NmU2ZDJiMTEzOGQ1OTgyZTA5Zjc4MzllMDMzNyBsZWdhY3ktdHJ1bmsKKzQ2MTg2IGMyNmI5ZmRiNjVmYjNiNTc2YjYzNWQ1MzE3YjJmOWE0MTU3Mzg2YTMgYmxhaXMtYnl0ZWJ1ZgorNDYxODkgMjYwZDVhNmNlMzBmNGUyNTY5YWI4MDE3YzM2ODc3NTcxMmQxZmFiZSBsZWdhY3ktdHJ1bmsKKzQ2MTkwIGZlZjQ5NmFkN2Y2Y2QyYmRjMWYyNWQ3YWMwNWI0Nzk5OWJmZDNlN2UgYmxhaXMtYnl0ZWJ1ZgorNDYxOTIgNTFkNmUyNzE4MjQzNjhlZWVhZjJiYmM2ODQ3NzM5M2NjZmYwZTQwOCBibGFpcy1ieXRlYnVmCis0NjE5MyBhYWNlMzE0OGY3ZWJhZjAyMjkyNmQzZDI3ODc4ZWFjMWM2YTA5MjQ1IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYxOTQgM2NmYWUzYTBlNjk1OTEwNzFkMTc0YjE0YzJiYWEyNzMxODlmMzUwYyBibGFpcy1ieXRlYnVmCis0NjE5NSBmN2E3NzQyYWVmODNiODU0MjMwNzRlYmUxOWVlMGNiZDExMWExYmE1IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYxOTcgNThkMjBmZWI2ZTAzOWJiYTZmMTYxODkzN2Y4ZTM4MGUwZWE3OTY0OCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MTk4IDY4NjBjMzZmN2RiNzUxNGY1Y2FkOWJlMzU1YjgyOGVkODY3Mjg4MzYgbGVnYWN5LXRydW5rCis0NjE5OSA5MWZlMWIwYWRiZjI2MTRmOWViMGJhOTc0ZjY4MWI0MjIxNTNkN2JmIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYyMDAgMzJiYTNhMGM2MDQwOTM4M2Q4ZGQzMzQ4NmIxOWVmNzE2MWMwZTA2NCBsZWdhY3ktdHJ1bmsKKzQ2MjAxIGIyNDkxZmQwYTRkYzZjNjdkYjRiMjlhYTVhZDlhZjIzMTQyYjg5YjkgbGVnYWN5LXRydW5rCis0NjIwMiAxYzVlZTk2MzFjNmI4Yjg5NjZiZTg1NzlkZTE1OWU2NWIwOWIyMzY1IGxlZ2FjeS10cnVuaworNDYyMDMgODhjYzdlNGYwMWZmNGQwZjU3ZjNjMmEwYWQxOThhOTZkN2NlNjNkYiBsZWdhY3ktdHJ1bmsKKzQ2MjA0IGJjZWE3NGIzNWQxZmVkZTBmNzkxN2MxNDNhM2NiZGE1NTFkY2FjMWUgbGVnYWN5LXRydW5rCis0NjIwNSA2NjMyMmZjYTkxYjQxYmJiYzMyNDNlYzBlYjNiMzdjMTA5ZjJhZGEzIGxlZ2FjeS10cnVuaworNDYyMDYgMDQzZTI5YTFlMzk4NWVjY2IwMTAxZmE2NTNkZTZkN2JhY2IxNGFkZiByZWxlYXNlMjQtbWFpbnQKKzQ2MjA3IDQ1Nzg4MTI4YTFiMTU0NDllYTZiMmZjYWJkODRiMDg3N2MxMmNlMTAgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjIwOCA2OTgxOThjYWJiYzVhYjc3NzUxYjU5MDljMTM5ZmQyOGRmOTQ2YmZmIGxlZ2FjeS10cnVuaworNDYyMDkgOGM1MTQ2YzUxZTJkZjAwZThkMjc4ZDEwZjBiNGNmZDk4OGM0YzBiYyBsZWdhY3ktdHJ1bmsKKzQ2MjEwIDc1ZTFjZDIyYjU2YmRkYzRhZjBlODAwM2Y4NDJhMGFjNDJjZmMwMjAgbGVnYWN5LXRydW5rCis0NjIxMSAzZGU3MDY0ZGZhNTY0MTRhYzQ1Yzk4MDhjNTM1MDQ1ZmFmYmMyNmNlIGxlZ2FjeS10cnVuaworNDYyMTIgOWJiNGMxOWU1NjEzNGM2ODkxYjkwZThhZDQ4YWI3ZTA5NDU2OWI5NCBibGFpcy1ieXRlYnVmCis0NjIxNCBhZDFlMjQzOGNmYWE1YmY0NWU0OGM5OTQ5NmU4ZWIwNDQ2NTk0NTc3IGxlZ2FjeS10cnVuaworNDYyMTUgN2IzZDRhODFlOTRkZTVhYWFhYzU2ZGQ4M2M3NGVhMjc1ZmJiNTAzMyBibGFpcy1ieXRlYnVmCis0NjIxNiBlMTViMTRjN2ZhMTRkNWM0NDAwNTJhZjExMDVjYjE5MTgxYWVlOWNmIGxlZ2FjeS10cnVuaworNDYyMTcgNjg4ZjI1NzU3MTA0MzMxM2ZhMTBhZjgwOGNiMWViZTA4ZGZjZDE5ZSBsZWdhY3ktdHJ1bmsKKzQ2MjE5IDQxNzY4ZGUxN2VhZDkwOTJjNDU0YWRmOTkxMGY5ZDhkYmI4NTJhYzcgbGVnYWN5LXRydW5rCis0NjIyMCA0YzBjM2VjZmZjYWMyYjMyMTg0M2IxOTc4OTRmMzAxMzMyM2ZmMjJmIGxlZ2FjeS10cnVuaworNDYyMjEgYmE3MTNkMzFkMDBjNjY5OTIxYjM3MzNjZjRjOWVkMDUxMTIwOGFhYSBsZWdhY3ktdHJ1bmsKKzQ2MjIyIDI5Y2NkNzcxMDQxM2ZlZmQ5ZWE2OTA4MjBhYmI0ZWIwNDAzYjMyZWEgbGVnYWN5LXRydW5rCis0NjIyMyA5ODZiZWUxNmJiNDQ1MWNiMWQ4MjM1YWI3ZWI1ZWM3OGUzNTBiNzA3IGxlZ2FjeS10cnVuaworNDYyMjQgYWU2YmJmMmYyYTQxMmI2YzQxZDE1NDRjMjBlNDI0MzczZWQ3ZDQ5NSBsZWdhY3ktdHJ1bmsKKzQ2MjI2IDQxODA5NDA2YTM1ZWJhMDRmOTNhZmI0ZjQ1NGFjYzA1ZWM5ODQxMGEgbGVnYWN5LXRydW5rCis0NjIyNyBkY2NiY2JiZDY3MjA4YTA3ODIzMGVjYzhhODAzYThkOTQ5MDYxMWVhIGxlZ2FjeS10cnVuaworNDYyMjkgOWMwOGE3YmRiYzMxMGE3NzQ2MDg0NTk5ZjZkY2M1OGVjZTNhYzBmZCBsZWdhY3ktdHJ1bmsKKzQ2MjMwIDE3ZWFhOGI1N2UwNTJmNTE0NjVjYjMzMWZhYmZjM2M1YTMzN2U3MWMgbGVnYWN5LXRydW5rCis0NjIzMSAwNTQ5NmRlZWJhNjRiZTcwNDAxMGJjNjFmM2M4ZTVkZTJmZDBiNWFlIGxlZ2FjeS10cnVuaworNDYyMzIgNmZjMWRjMDg2NDU5NDAyNTk3Zjc4MzAxYjk5NGQwZDlmNWFiNzE0MSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MjMzIDNlNmQ3NzU1MmJlMzAyYmVhYzI1NjJkNGQ1Mjc5NzEyZTA0ZDY4ZjUgbGVnYWN5LXRydW5rCis0NjIzNCBjNWQ2MTk2NWNhZDQyMTlhOGY3YTAyY2UzYWIyZTNjYWNmN2Q4N2VhIGxlZ2FjeS10cnVuaworNDYyMzUgNWE2MzM2OTA1NmE3ZmU1ZmMzYzBiNWZmMGRlMTA4N2IxOTY1MDcxOCBsZWdhY3ktdHJ1bmsKKzQ2MjM2IGYyNzlkMDMxZjBjZWEzY2Y4YmM0ZjEwMThhZDlmYTlkMjVlOGQ4NjYgYmxhaXMtYnl0ZWJ1ZgorNDYyMzggNzRiZWIxODlmZDdlZTQ4NGNmYzJkMjMzOGFlYTI0OGFiZGJmNWViNiBsZWdhY3ktdHJ1bmsKKzQ2MjM5IDJhYTk0MDkzNTFkNjFmOTMxN2NlMTFkYTc3NTJlMDk2NWQ3MmRiM2IgbGVnYWN5LXRydW5rCis0NjI0MCA4NTBkNGY3NzE3YjhkZWEwZjliZGY1OTAwZTUwMjNjMTUwYWQ2Y2EyIGxlZ2FjeS10cnVuaworNDYyNDEgYzlkYzMwMGVlZTY4MmFjZTA1Zjc3YjQ4OGQ5MDM1MzY0NmVkZmZmMCBsZWdhY3ktdHJ1bmsKKzQ2MjQyIDA1MzI0YWE0NDRiZGUxYzBiNmYwZDI5OTRiYTNmZjUxODU1MThmODIgbGVnYWN5LXRydW5rCis0NjI0MyA0YThjOWY5YjY2ZTY4ZWM5NzA1YzIzZGJhNWFlYzBhNDlmYmQ3MGRhIGxlZ2FjeS10cnVuaworNDYyNDQgMWZkZjI5YTg4ZjBlZTBiMTNiMjg5MjFhNWZiZmIxNzUxYjVmMGNmMyBsZWdhY3ktdHJ1bmsKKzQ2MjQ1IDkxYzZjOTQ0OTBiMWM1NjQ0ZGFiNjhmODllNGM0MWNlNDMzOGU1NjcgbGVnYWN5LXRydW5rCis0NjI0NiAyZjE2ZTI3MTUyMjM1YjdmZjNjYjg3YjE1MTEzNTVmNzg1N2M1YTI3IGxlZ2FjeS10cnVuaworNDYyNDcgZWNmMmJmNDE4MmFkZjQ5MzNmMTJkMDY0Yzg1MWI4NmY1YTk3MDEwZCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MjQ4IDY4YTM0OGM5ODY4ZGI4YjM1ODYxNWJiNDA0NzFiYWNhMjVhNTAyMWMgbGVnYWN5LXRydW5rCis0NjI0OSBjMDA2YzI3MjExNmZmYWE2YTgzMjdhMzljNGEwM2ZkYjRhODI4YzA1IGxlZ2FjeS10cnVuaworNDYyNTEgYzM1MDhhOTQxNTY4MzY1OTZhMDNlOGE5MDkzMjY0Y2MxZGNkODhiYyBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MjUyIGUxNmI0MTU3Njg2Y2I5YTQ4ODg1MmQ0NDgwZjIyNzUyNjE0ZjA5M2IgbGVnYWN5LXRydW5rCis0NjI1MyAzZDQ3N2QxNTg0MDFjNzFiMTM4NDNkNzA3ZmZhNmRiZGMxZmY3Nzc5IGxlZ2FjeS10cnVuaworNDYyNTQgZWEwYWQ0ZDRmZjhlZGYwYWNiOTg1MTllMmZlNWQzMGUxNWRlMmU4YSBsZWdhY3ktdHJ1bmsKKzQ2MjU1IGM3N2RhMjczNmZiMjY1ZDZhNDQ1N2FiMGMyY2U4ODUzNjg3NDE3NjQgbGVnYWN5LXRydW5rCis0NjI1NiAzNTg3ZWUzMTNiMDA2MTAyYWU2MTBhNTk3ZTg0ZTRlNzgyOTZhMGM1IGxlZ2FjeS10cnVuaworNDYyNTcgMDRmMzllY2JjNzNjNzZhNTVhZThjYzFlZjViNTNkZjViN2VmZDBjMyBsZWdhY3ktdHJ1bmsKKzQ2MjU4IGQzM2Q4YThiNTQ1ZWVlYjE1MGQxYjRjNTc4YzgwZTkzMmY0NGZiNDcgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjI1OSA4YTU4YWE0MGRjYzA1ZDU4MDQxYTZiNGJlNmYzOGQxNjQxYjMwZTJmIGxlZ2FjeS10cnVuaworNDYyNjAgNTU2NjIwY2Q3YjFkZTNjMTE4NjUxNTJkNzU5ZGIwMGNlYTU0NTNkMCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MjYxIDlmODg0ZDM0YTBlY2Q0Yjk5ZTcyMjhkNTk4ZjViMjk1N2RhODQ2OTkgbGVnYWN5LXRydW5rCis0NjI2MiBlOWViNTI2YjcxMTE1ODBkMTgzZDhkZmQ3ZmNlZDhiMmJlNTZmYWRiIGxlZ2FjeS10cnVuaworNDYyNjMgY2VlYmU2Y2M0NTcwNGM4YzE4YmZhYTRkN2ExZDk4YTM4NWRlNDk3NSBsZWdhY3ktdHJ1bmsKKzQ2MjY0IGFiMDIyMTgxMTc3MTdiYjYxYjBhNzZjNGM1Yjg2NjFiYTA1MzMyYjUgbGVnYWN5LXRydW5rCis0NjI2NSAwODcyODcwMDk2NThlZWM3MDk5NTcyYWY1YjdlMjNkZjdkOWRiZGE4IGxlZ2FjeS10cnVuaworNDYyNjYgN2E2YWY0YTE0M2M2MmJjNWY2ZTRmZjg5MGM5OTcyMmU1ZTAwMzQ2NCBsZWdhY3ktdHJ1bmsKKzQ2MjY3IDhhOWNkOTk5NTM1ZDE3OTc0NjBjZTZjMDU2MGY4YjhjYzdhMjQzYTIgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjI2OCBlYjIzN2EzN2VhMDJkZWIzMzBlMmZlNWUxZjQzNzI5NzJiMDg5MDc2IGxlZ2FjeS10cnVuaworNDYyNjkgZGRjMjAwYWZkZTFhODMxYjFjMmJkYTczZjZhMTM2YTUyNDczZTkxYSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MjcwIGQ2ZDU1M2I5ZDQ2OTc3ZmJkY2NlZDAxYWUyMTA0M2U1MWRmMDdjNzUgYmxhaXMtYnl0ZWJ1ZgorNDYyNzEgNDZkNzdiYjMyZmIwZGE4YjQxYTY1YzFiMjUwMWI0ZmExMWNlMTliYyBsZWdhY3ktdHJ1bmsKKzQ2MjcyIDVhMTQ3MzY1NTI3ZTUzODQ1YTBmN2FjMWEzY2Y2ZWU2OTgwOTBiYWIgbGVnYWN5LXRydW5rCis0NjI3MyBmOTMzMmFkNDI4N2E3ZjZkODYyNGQ5MDg3Y2IwMjE5MDFkNDczNWFjIGxlZ2FjeS10cnVuaworNDYyNzQgODJiNjgwODQ2ZGY4ODk3ZmY3MjhiY2U3ZDZlNjVkODAzZDQ5YjM4MyBsZWdhY3ktdHJ1bmsKKzQ2Mjc1IDgxYjY0MWRhNWM3OTUyYTdlMDQwNWY4M2I5NmU5YWYwMWExZTQwNzQgcmVsZWFzZTI0LW1haW50Cis0NjI3NiAxMDM1YTJiMzFlNmRmMjYxNmM5YTQyMDhlZWIxYWE5NGUwZmFkZjZkIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYyNzggOTU4ZjkxNjg0MjA5ZDAwYzMzZDdmZWZhNjhjZTQ2ZTlkMDNhOWNlZiBsZWdhY3ktdHJ1bmsKKzQ2MjgwIDE2NzBmZjcyNmU4ZmQ3ZDc0NzgyODYxNWYxMDA5YTI3NDUyNWM0NzUgbGVnYWN5LXRydW5rCis0NjI4MSAzMDkxYTc1ZWI1NjBjNTZkZTc3Zjg2OWZmZjdmZjE4MTkxNjk3MDJiIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYyODMgZGQ0MTczMWRlZTZkNGJkMmM4ZDA1YWI1NGU0NDQ1MTQ4ZDI1MmFjNSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2Mjg0IDJmNGZiNjQxNGU4NzIwOGFiYzE4MzFkMzVhNjU2YjAyYjU3MTc4ZTUgYmxhaXMtYnl0ZWJ1ZgorNDYyODUgOGE5OWNkZWYwYzk0YWNiNTgxZjUzZWIyNWNjMjFmMTRiOTZmNTliOCBsZWdhY3ktdHJ1bmsKKzQ2Mjg2IGE2NTRkNjFkMzZkNTMxOTY3MWIxMGIwYjFlNTIxODkxYjE3OWNlNzQgbGVnYWN5LXRydW5rCis0NjI4NyA1MzgyYWFmM2EwZGFjNWZjZjJlNTg5ZDFmNDFmZmYwYjI5OTM2ZTZlIGxlZ2FjeS10cnVuaworNDYyODggYzhlNGIzYjM5Nzc0MzA1ZmFjOGE3YTUxMzk3NzZkOTdkOWEzZDVmZiBsZWdhY3ktdHJ1bmsKKzQ2Mjg5IDgzNWVhNTk4YTQwNjBiYTgxYjk4OGRjMTYzM2RlOTlkYzI5MjYyMGYgYmxhaXMtYnl0ZWJ1ZgorNDYyOTAgNjYxMGQ0YmU4ZmJkOTAyNTA1NDAzZDkyYzBiZmMzNjAwNzkzNjAzZSBsZWdhY3ktdHJ1bmsKKzQ2MjkxIGZlNjUzZTIyNDg4YzlhMGIwODMzMWQwNTRiOGYwZTk2MTBhNGIwNjEgbGVnYWN5LXRydW5rCis0NjI5MiA5MmIwZmM1NGQyMzAwZDA1OGQwMmJlNzA0ZTJiNzAyZmU5ZTcxNDgyIGxlZ2FjeS10cnVuaworNDYyOTMgNmQ4NjE1ZjlmMWNjYTk3ODM4NWI3OTYzOGJjODEyMzQ1YmZjMjI3NiBsZWdhY3ktdHJ1bmsKKzQ2Mjk0IDhkMjhlNjNlOGYyMTY2NDgzZjAwMmU1ZGY2NDk2YTg1YjFjZTk2ZmIgbGVnYWN5LXRydW5rCis0NjI5NSBhZDJlNGRlNDdkMDk2MzY1ZGFlZDdlMTRjZmJlZTRlMTdjMDg5YzgzIGxlZ2FjeS10cnVuaworNDYyOTYgMmY0NWFkNjZjZDM2NTA1OGIwMGRmZDIxZjY2ZDY0MDBiNzQ4ZTk0MiBibGFpcy1ieXRlYnVmCis0NjI5NyAzYmVmMjQwODZhY2U1MWRhMzJhMjFlNjU1ZmFlNTUyNWVmZGRmNzdmIGxlZ2FjeS10cnVuaworNDYyOTggYjdiNzYxNWVhNWY1ZjIwNzNmNGZjMTJmODIxMGY2ZTBlNzNkNGNlZSBsZWdhY3ktdHJ1bmsKKzQ2Mjk5IDlmN2IxYjdhZGYwMTBlMmZiZmRjNTc4ZjgxMjA4NzExNDFkMDRmMzcgbGVnYWN5LXRydW5rCis0NjMwMCAzNmNkNGE0YWI4ZjdlOGY3MmJhODAyMGNiNTdkMGE4MjVhOGExODU3IGxlZ2FjeS10cnVuaworNDYzMDEgYzA3YTk2ZjY5ODM5NjJiNGIyYTUxODVmMWIyNGE4ZmRmZTA5OTQ2ZSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzAyIDk1NzcyN2YyZmYwOWYzOTM3MzcyNzE3NWQ5MmUzMThkMzg4Y2U0YzQgbGVnYWN5LXRydW5rCis0NjMwMyA5ODgzNzkwMTQ0NzczMDgyYjBjNWYxNWYxOTg3NWEwZDMzZjUyYjU3IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzMDQgMzc4YmE2NzdiNTc5NzA3NmZkMzQ4NTBkZDI3MmRjYTU1YjkyOTI0MCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzA1IDc4YzYwZTU5OWFmZGI3YmFkZjYxYTQ4NDNhOGM4MWU1NjVlMGI3MjAgbGVnYWN5LXRydW5rCis0NjMwNiAzMWI5Yzc4YTA3ZjM2OWZkMWRjMTBlZTc2ODgyYWJhMDJhZTFjYTMyIGJpcHBvbGl0by1uZXdzdHJ1Y3QKKzQ2MzA3IDA1YmJiZGRmY2UzZjdhMjdiMjUxNTM5ZGVkZDdhOTdkYzY0N2MzOWYgbGVnYWN5LXRydW5rCis0NjMwOCBiZTc0MTViMGEzMTg1MWEzYzkzYmJiY2YwNGJiYWI2MTIwMTVhMmM3IGxlZ2FjeS10cnVuaworNDYzMDkgZTNlZTNlYjE4Njc4ZGM2ZTgzN2YzYmVlNmI1OGRmYmUwYmM4NjU1YyBsZWdhY3ktdHJ1bmsKKzQ2MzEwIGQyZGY0YTM1OWUzNTJhZjc3YzBlMzgzMTc1ZmY1YmQ5ZDY3YWNjNDIgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjMxMSBhNGVlNDU5ZmYyODhhNDJlODkyZWRkODBhOTM1NDNmNjA5ODUxOWRlIGJsYWlzLWJ5dGVidWYKKzQ2MzEzIDg4ZTlkODY3NzAwNjZlY2QwZmJiMWNhOTNmMGIwMTkyOTZhMWI2MmYgbGVnYWN5LXRydW5rCis0NjMxNCA0NTRiZGU3ZTQxNmU0OWJhN2JiMGU5N2JiN2RjYzBiMzJiNzNhYTJkIGxlZ2FjeS10cnVuaworNDYzMTUgODkwZjYxNjFjOThhNWE5MTU3ZjA4NDMxNWJhMjAwYmEyOTkyNDg0NSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzE2IDY1MzNkOGFlMWZkOTUxMmVmMTdiOTRlYTg5MDFiNjAzZGMzOGE5MmEgbGVnYWN5LXRydW5rCis0NjMxNyBhMDQzYzVkNzFlYWExOGIzNmFmZWE1MGM3NzdhZjhhZTY1M2YyZDRiIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzMTggNzZiMzAxYWM0YTVlNjM0MTg2Zjg0ZGVmZmQ0ZWUxZjRiODEyNTQwMyBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzE5IDhhMzhkYThlMTI4ZjdkYmM2NDA4OTNlNTQ0MmM5M2QzMDFlZDQ2NzAgcmVsZWFzZTI0LW1haW50Cis0NjMyMCA1MjEzYjYwNjUxOTc5NmU5MDBlNTViNzI4MWY2Y2M4NDM5MzQ3YmFjIGxlZ2FjeS10cnVuaworNDYzMjUgMWExMTMwNTA2OTBiNzQxZjMyNzZjNzFkZTkwNGUxZWM2YTJiOTk2YSBsZWdhY3ktdHJ1bmsKKzQ2MzI3IGMwMDgyNzA1ZjJmMjM0M2EyNDkyOTliNGU0MTAwYWRmNWFmZTI3NjggbGVnYWN5LXRydW5rCis0NjMyOCBmNzQzZTNjNmI5YmYxNmE4Njc3MGFlZWRiNTBhMTBkMTQ3NDg2NTA2IGxlZ2FjeS10cnVuaworNDYzMjkgMmVkNGI3NTdjMGNmMjYzZDg5ZWZlMjM3NTc4MDc0Mzg5NDE2NDcwNiBsZWdhY3ktdHJ1bmsKKzQ2MzMwIDc5YzhkY2MyNzdhNWYyNjNlM2JhY2Q4OWFlOTE5ZTFiOWE5NmFlM2YgbGVnYWN5LXRydW5rCis0NjMzMSAxM2UwZjcxYTcwZDU0NGU0YWE5YTQ3MTI2NDMwODBmMTQ0OWJhNjM4IGxlZ2FjeS10cnVuaworNDYzMzIgMDlkMmU5NjhkMDc0NzI5MzI5NWE2NzNhMDFkZThmZDVlYzY2ODViMiBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzMzIGZhOThiOGRmMGZlMjE3Njg0MTU0OGVmZDI3MzUxYWJkZGIyOGY0NGMgbGVnYWN5LXRydW5rCis0NjMzNSBhNGU0MzNjMTM2ZGE0M2IwMThkNzVhYjIxMmYzYTUyZmMyOGU0NWE0IGxlZ2FjeS10cnVuaworNDYzMzYgMzFkNDIxNTQ4MGM2OTk5NTkwN2JmN2M0Y2NjZTNiMDMyYzk5NzUyMSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzM3IGQyYjM4YTYxZGU3MTM1MzRlOWEwMjgzMTllMjkzZmVmZjY3MzllNDggc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjM0MCBiZWY2YWFiNWY5YjNhM2QwMThhNTJhNTBjMjhhMzdlM2ZmNjNmZjUwIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzNDEgYzBkYmZlYThjMGZiNWI5MDg0Njc3ZWIzMDQzN2I1YmUxYTQzNDQ2ZCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzQyIGQxMDliMDgxZDQ0YmU1NDA2ODllMDE5YWZjN2I3OTIyYTIzZDRkN2Ygc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjM0MyBjMTRlMGM4OWE4YjBkMDdlNTgwYmU2YTRmMjAwYWEwOTU1Yjk4MWMyIGxlZ2FjeS10cnVuaworNDYzNDYgMmU3YTAwZWJjMzE5MjYwNTg1ZTkxZWE0MzhmNDk3ZmFjNThlMzQ5MCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzQ3IDVlNGRjZTc4ZjIzZGE5YjMzMGNkYzcxMzJlNTI5MjhiNzRhYjBjNmIgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjM0OCA2MjRiNGJiOTNkOTAyNmEyZjU4ZDIxODBkOGE3ZDAzNWYyZmNkNDZhIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzNTAgNDNjODZmMzQ5ZDQ3ODRjN2Q2NDc3YjU4ZmVlYzE1YWVlZDhlOGQ5MSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzUyIDRiZmVhYjIzMGUzODVkNjdkNDE0YjFkMTI5MTk0MmE3MjhjOGEzODQgbGVnYWN5LXRydW5rCis0NjM1NCAxYmEzZTQwZTg2NDk2YTI3MzZiZmFhOTM4YWE1ZWQ5M2M1NTAzZGE4IGxlZ2FjeS10cnVuaworNDYzNTUgNTJkMTM5OWUxYzZkOTFjN2FlMWM2ZjUzMGQwZjdhYTQ3NWRmZDNjMiBsZWdhY3ktdHJ1bmsKKzQ2MzU2IGExNjk0OGU5OTE1ZWNhNTZkODMwNDg5ZmQ1ZDk3MWQ2ZjQ5NzlhNGYgbGVnYWN5LXRydW5rCis0NjM1NyAwYjhiMjhmMGYzMDE0M2IxMDc1N2JkYTYzNTI4NDExYTcyNzk2NWJmIGxlZ2FjeS10cnVuaworNDYzNTggNzI5ZmY4MDA4YzllNTk4MzA3NGNlMTk1YmRhNGFiNDNiNjBjZGU5NCBsZWdhY3ktdHJ1bmsKKzQ2MzU5IGQzN2Q1YzU1MjFlMzg2NDZlYTU5YTdlZTQ2NmI3MzFkODkyM2U5ZWMgbGVnYWN5LXRydW5rCis0NjM2MCAyZTRhMjc0ZTMxMDhhZWIzNjIzMjZiOWNlZDI5ZDUwYTdlNjJmZTAyIGxlZ2FjeS10cnVuaworNDYzNjEgYTVmNTNmZWNmY2U2NmNiMTlkMTFiNjdhNGViNzAzOTQ2OTc4OWVmMCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2MzYyIGIzMmY5YmIyZTA3NzI3ZmE2ZDA0OGU3ZDQzY2UxYmUzM2UzMzIzOTcgbGVnYWN5LXRydW5rCis0NjM2MyBmNzEwZWRjYWE2NzU4OTllYTRiN2JmOGE1ZDUwNGQ4YWE0Y2NmZTYwIGxlZ2FjeS10cnVuaworNDYzNjQgMDU3NDQ5MTdiN2MzOWIyMzg2ZDM0MzdiMzg4OGM0ZDE5MTFiNWUwMiBsZWdhY3ktdHJ1bmsKKzQ2MzY2IDk2NDE1MTA1YzI5ZTAxZWVhZTEwMDExZTU1MTA3MjRhN2RkMjMyMjYgbGVnYWN5LXRydW5rCis0NjM2NyAzODkwYTNjNzkyYjkwMzczZWUxNzhjZjI5MDYyZWQ3ZDU2NjgwYjNjIGxlZ2FjeS10cnVuaworNDYzNjggMzVmNDE3MzFiZWU5NGU0YmFhNDVhNDg5ZjgzMDk3MzE4ZDc0NmYxYSBsZWdhY3ktdHJ1bmsKKzQ2MzcwIDRkMGFiYjk5YzllNTQ4ZDNiOWMwZDc0MTUzY2M3YWFhZTcxYzM1YmQgbGVnYWN5LXRydW5rCis0NjM3MSAyZjcxZDFhNjkyYmY0YTBiYjE2MWEwMjFlYmY3OWRhNjNhYzFjMDU2IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzNzIgZDIxODk2YjJkZDBhZDcxZWY3YjE1MjM4MzFhMzllMjNhMmIyNDA0ZiBsZWdhY3ktdHJ1bmsKKzQ2MzczIGQ4NWIzNjBhYTVmNmY4MWQ4YTQwYWU4ZDJkNzY1OWQ0YmQxMDNkOGUgbGVnYWN5LXRydW5rCis0NjM3NiAxYWIzMjYxN2RhZGRmNjY3YjkwNjRiMTE2ZGJjYTBlOGNhZTg0YzM4IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzNzcgNzY4MDc5MDJhMmY1MDVlNTdkMGU1MjliMjZlMTM1OGE0OTRiMDFhNiBsZWdhY3ktdHJ1bmsKKzQ2Mzc4IDIzZjc4ZTViZDNlM2FlNWM3NDBmMDdiZjA4OThkZWE3MWUyMTBkZGUgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjM3OSBmNzA2NTNjMWU2MzNiNjhhOWQ5NDI0OTIyMWRlODI4MjE3NmZjNThkIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzODAgNzg3NzFkNjczYjRiNzMxMjYyNWQ1MjY5MGJlNDk0N2U2OGYwMzNiYSBsZWdhY3ktdHJ1bmsKKzQ2MzgxIDgxNmY4ZTYwMDk3YTlkYTdkN2QyNGQ4NDE4MmUyZGVmNDk0OTI4MTUgbGVnYWN5LXRydW5rCis0NjM4MiA0MWY4MzllODk1MzI1ZDM2MjgwZjMwM2ZhMWYwOTU4MTFhYjQ2ODJmIHRpbS1leGNfc2FuaXR5Cis0NjM4MyAwZjYxYzNjNjJiOGJmODE5MThkM2Q0NTNlZjYyMzM4Y2JiOGRjMGMwIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDYzODQgY2ZjOWEwMDdlOGNlYjMwYTg1YmJmNWYyZTU3ODc1YTU5ODM3ZDNjNSB0aW0tZXhjX3Nhbml0eQorNDYzODcgYjIwZTdjYmRhNDA5MTJjODM0ZDc5Yjc1NWFhYjc4ODRkZjMwZWIxMiBsZWdhY3ktdHJ1bmsKKzQ2Mzg4IGQxNTNkMmY2Njg4NGZjMzAxODViYzIxYjNiNTg5NTAzNWM0M2NiMWIgbGVnYWN5LXRydW5rCis0NjM5MSA3MGMwZmZkMjFiZjBhNzMwMGUxOGJhOWViNTMyOGQzYWIxYzk3OTMzIGxlZ2FjeS10cnVuaworNDYzOTIgZGYwNGYxOTJhMmEyN2M0ZjAwOWJiY2RmNDAyNGYxYjkwZjU5MDQ5NyBsZWdhY3ktdHJ1bmsKKzQ2MzkzIGFjNDVlY2E4YzM1YzI0NmRiODY4NjEyNzE2NjBhNWI3YjI5MDk5ZDIgcDN5aworNDYzOTUgYjE4OTY2NTZmMjJlNDY5MDYzZjI5NDEzNzEwNmQ3MzBiNjdlNWE0YSBwM3lrCis0NjM5NyBkYmIxOTVjOWRkODhlMjU0NjYyOWFkZjYyZTAzYmNkY2U5OGU0OTk4IGxlZ2FjeS10cnVuaworNDYzOTggMzNjMzI4ODk2ZjUyN2ViNWYwYzc2NWNiZWU0ODcwMmI5ZjEwYjYxMiBsZWdhY3ktdHJ1bmsKKzQ2NDAwIGFkYzIxNGZjMWUxYzEzYzM5ODA2ZDM4MThmNTdmMzFiNjgxOTBkYjQgbGVnYWN5LXRydW5rCis0NjQwMSA1ZGRiZDIwNTAwZmM1MDQ5MWY3OGI4MTFlYTJiZjA3YTkwNTM5OTczIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0MDMgNmIwM2E0N2ViNTRkZjdlZGFjY2ExZTExMzU2NDEwYmE5MDAyOTYzMyBsZWdhY3ktdHJ1bmsKKzQ2NDA0IDZkOTlkZjU1NjA2ZTI0ZDBmY2U2N2I3NmNlNmY0YzAxYmUzZDdlNmUgbGVnYWN5LXRydW5rCis0NjQwNSBlODNlMWFhYWIxYTNhZTA0NjEzZWRlYjY1NjA4OTIzYTQ2MWZiMzMyIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0MDYgNTJmMmM5Zjc0ZjVhZDVhNzZiMmIxZjhhZDk2MmU0NWVmMmEwNzhjMSBsZWdhY3ktdHJ1bmsKKzQ2NDA3IDMxMjhjZmFkYTZiNGE3Y2Q4YWZlYjIzZjQ1OWM3NDFhNDMxODE1NjQgbGVnYWN5LXRydW5rCis0NjQwOCA0MDJmM2FjNDA1MmZmYWZkZDgxNGI4ZDRhNTZkZTRkZDlhZGZkMDY1IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0MDkgOGY3YzdhZWFjM2E1ODNhM2I5MmZhOGVhZTQ3YmM4ODk4Yzg4NjY2ZSBsZWdhY3ktdHJ1bmsKKzQ2NDEwIDFkYjBkNzM3NDllZDllZGE1ZWRlMDBiNzY2ZWU5MTQxZmM2ZDM4NWEgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjQxMSA1NjA3YWI2YzY3ZGZkYjBkYTZhZTlkNWEzNjUyM2JiNGYxYjU5OTZlIGxlZ2FjeS10cnVuaworNDY0MTIgZmE2NzViM2Q3NWNhODIyNWVkOTQ3MTY0ODU0YjQ1NzA0MWQ5NDhmOCByZWxlYXNlMjQtbWFpbnQKKzQ2NDE1IGU3YWY5N2UyNzhjNDRhNzEwZGI0MTllMDk3MDdiOGM5MzFhYWQ4ZDggbGVnYWN5LXRydW5rCis0NjQxNiA0Njk3ZDE5NThjY2IwNWJhNmQ5ZmQzMTQ2MTBkYTE1MzQ4ZWE3OGNiIGxlZ2FjeS10cnVuaworNDY0MTcgNjMxYjY2NDhmZGY0MWJlMmM0NTc1OTUzMjU3ZGQ4OTExNjg0NmZjZCBsZWdhY3ktdHJ1bmsKKzQ2NDE4IDJiZWUxNTBhMGY3NTIyOWExMGNiOTA3ZjliMjRlNWUzMDEyOGIzMjkgbGVnYWN5LXRydW5rCis0NjQxOSBmZWE2ZmI0NTU3MTEzYmM2MTE3MjYyYzkxZjNjZjM5YjhhZDY5ZjU1IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0MjAgNGRjNjFkN2RiM2EyOWZmODZhY2RlNWYyZWNiMDk1NjU4YTQwMWQ2NCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2NDIxIDhlMmRjM2U0MTgwMTFhNmUyNWQ3NjAyZGRhZWVjYzEwZDYwZTc3Y2YgbGVnYWN5LXRydW5rCis0NjQyMiAwZWViZDllZWI3MTdjYTMxMzNjN2UxY2Q0ZWRkZjRjNzA4YmNiNDNkIGxlZ2FjeS10cnVuaworNDY0MjMgY2U2MzhkNGI0ZmM4Y2RhZjBjNGI2M2ExNjQ4NTNhMjc2M2VmNmU1NiBsZWdhY3ktdHJ1bmsKKzQ2NDI0IDkwZWRhZjBkOTA2MjE4MjE4YmI5NGJmY2NkZGUzZTAwMWVkMWU5ZmUgbGVnYWN5LXRydW5rCis0NjQyNSBlMGU0M2U1NjE1MTJiYzk2MDQxMGI3YzdkMTI2ZDIxZWFhYjZmMDFhIGxlZ2FjeS10cnVuaworNDY0MjYgNzA4ZWFmMDg5NmJmNDU0NGQ0ZDU0MzUzODMyZjMzMDA3MWNhYTY1OCBsZWdhY3ktdHJ1bmsKKzQ2NDI5IDM4ZTlhZjM4ZjM4MWMyN2VjNjA3MGI1YzYyYTUzOWMzOGY0NmQzMjkgbGVnYWN5LXRydW5rCis0NjQzMCA0OTljZjdjMmY3NzczZWY5NmZlYTRiNDI0YjNjOTM0YmVjYzVkNTZkIGxlZ2FjeS10cnVuaworNDY0MzEgNDIwOWEzZDI5NWUzNDdlZWQ2ZmU1NDEwMjhhODlhMTNjM2M0MzExMSBsZWdhY3ktdHJ1bmsKKzQ2NDMyIGRmYmQ0NTdjYTY3YWM2YThmMDlkZjNjZGY1OTViZGQwZmM1NzRlOGQgbGVnYWN5LXRydW5rCis0NjQzMyA2OGUxYTAyYTViMjkxZDg5MzgxYmZmOGQ5NTA0ZTAzMTM1MGY2NGViIGxlZ2FjeS10cnVuaworNDY0MzQgMTBhNTk3M2UwYzlhNzM3NGYxYzFjOTEyN2E0NzAyMWQ3YmFiZmNkOSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2NDM2IDNkODFmYWY0N2FmNzdkZDA5YWZkYmVkMGY0OWIyYzgyMzE1ZTAzYTkgbGVnYWN5LXRydW5rCis0NjQzOCBjYTY1N2UwYmQwOWMwMzc3OGYwMTZjMGQwY2NlNDdkNWNhNGQyZmM4IGxlZ2FjeS10cnVuaworNDY0MzkgOWYzMzc1ZTMzZGI5NWQwOGVjNGMyZDk3M2E2M2UxMjU0NDc0Zjc1MiBsZWdhY3ktdHJ1bmsKKzQ2NDQwIDk5ZDA2MWJjMzE0MzFkMWZmYTFjNjIxNDcwZmE1OWQwMTVkZGU0N2IgbGVnYWN5LXRydW5rCis0NjQ0MSA4YjRkMmE5MDc1YWY1YjBjM2YzYTA5YWFiZjM1MGQxZGMzNzQ1MjQzIHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0NDQgNTQ5Y2FkYTRlMzZjYzU3YTNlNWYyYWU0MTk5NjhjZjFlZjQ4ZDJiMSBsZWdhY3ktdHJ1bmsKKzQ2NDQ1IDNmZjNkMmYyMjAxMjI0NmZjMTgwNjc1MjJjZGUxNmE4ODlmNDJkYTIgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjQ0NiAzMjg3OWQyNjEwOWQ5Njk2MDZkNzg3YTU1MTU1MzA4M2FhZmFjMTU3IHNyZWlmc2NobmVpZGVyLW5ld25ld2V4Y2VwdAorNDY0NDggMTZhMWNhZDBmOTQ5OTkyNTQ0YmY4YmNhNWM4YjY5MmVlOWE0OWFlNSBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2NDQ5IGNlM2UzYzYzZmU1YWRkZTMwZWQwZjc5NjNhY2QyZTNjNGVjNDNhZmMgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjQ1MCAwMDM0MzM1MTFlNGRkODRhZmE0YzA0MWIyYWE3NjdlNzJlMGJmNzZjIGxlZ2FjeS10cnVuaworNDY0NTIgNzM0MjZlNzFmNjdhYjU3NjJhZjMwZDkwYmE1YTMxZGNlODEyY2M4NCBzcmVpZnNjaG5laWRlci1uZXduZXdleGNlcHQKKzQ2NDUzIGE1ZDVlNzNiMmVkYmI1ZmIzZWI5OTc5NzI1ZTEwMGJkZDE0NjAyYzAgc3JlaWZzY2huZWlkZXItbmV3bmV3ZXhjZXB0Cis0NjQ1NCA3OTVkMWNiMWRmMDEzY2RmMzQ1YTkyNmJhZjUwNjViZDAxNWEwYjE1IGxlZ2FjeS10cnVuaworNDY0NTYgNGMwODIzZjBhMGExNTc0ZWE4MmMxOWRlOWQ0YzFlMmExYTU2MDlmNSBsZWdhY3ktdHJ1bmsKKzQ2NDU3IGE1NmFhOGFiNDg5YjcwYzQ1YzUyNzMwNmU5NGRmMTQ1ZDY5MzM0N2UgbGVnYWN5LXRydW5rCis0NjQ1OCBjZWJhOGYyZWEyNGVlYmE1MDg3NWQ0NDNmNDZkZmI5NzFkNmQyOWY2IGxlZ2FjeS10cnVuaworNDY0NjAgY2NkYzBiYzExZGNmMmUyOGY2YzRiYzk2NDQwZGZmMTRmYTY0OTlmNiBsZWdhY3ktdHJ1bmsKKzQ2NDYxIDYwNjNlNGU2ZWUyMGUxN2Q5NDljMjE3ZTM3OTYyMzJmNjcyNjkyMzMgbGVnYWN5LXRydW5rCis0NjQ2MiAzMGU0ZWE0MjMzNjkwOWFiY2UwNjVkZDVjNDg2OTJjNWQ0Mzk3YWQ0IGxlZ2FjeS10cnVuaworNDY0NjMgNzgxYmQ5NGNlYmFkNTVlMjhmNzg4ZGM5MjI1NDNmMzZmZDk0NGY3OCBsZWdhY3ktdHJ1bmsKKzQ2NDY0IDA1MzA1ZDNhYTA0ZDFkYjY0MzgyZTgwYjg5NjU0NTVkZWE2NGY3ZDMgbGVnYWN5LXRydW5rCis0NjQ2NSA1MDZlZjkxMzAyMzhiNWViOWRhMmE3OTNhZGNkNmVkMTVlNjExNzY4IGxlZ2FjeS10cnVuaworNDY0NjggNWIwNzUzYjlkMTZhYzM4NzY4YzA2NWVlMGQ0MjQ4NWM1YjdiOTVmYyBsZWdhY3ktdHJ1bmsKKzQ2NDY5IDcyMzI3ZjhmNGE3OTZmZTU2YTQ3YjkwODQ4YjFiZWVhYzY3NGNmOWEgbGVnYWN5LXRydW5rCis0NjQ3MCA4MDM4ZTQxZjQ2Y2MwZDI0MzQxYjBiZmU4ODM2MjEyZDU5ZjVkYTU0IGxlZ2FjeS10cnVuaworNDY0NzIgZWFlNmRlMWI0MzgzODBhNTU3MDJmYjMwZjFmYmIwMWQxMGVkMDc3NCBsZWdhY3ktdHJ1bmsKKzQ2NDczIDA4YmYwODIyYzUwYTBkNzNmOWZmOTM1NmRjMmU0NDA0MjU0MmUxMDYgbGVnYWN5LXRydW5rCis0NjQ3NCA4ZGFlYjlhZjg0MjJjYmQ0N2MyOTI0MTIwNTgzOGI5YmQzNTQyNzk4IGxlZ2FjeS10cnVuaworNDY0NzUgOWE2NWZkNDI1NWEzN2NlYTcyZWQwMTM4MDUxMWUwOWUwNmM3ZDE0YSBsZWdhY3ktdHJ1bmsKKzQ2NDc3IDgwNzU0MGNmNzcxNGM5ODk0ZDI5YWIwNmRlZjgzMWIyODFlZmNiMTYgbGVnYWN5LXRydW5rCis0NjQ3OCBlOTU3MTU1YWU5YmRkYzIxY2E2NjYxZWEyNWMwMTFjYzQwYWY2NDRhIGxlZ2FjeS10cnVuaworNDY0ODIgMDM4YmI4ZDAwNThiMjUzOTU3MmYxOTU4MGQwZThjOWFhYzQzYzQyMiByZWxlYXNlMjQtbWFpbnQKKzQ2NDg4IDQ1NTZjMmM5MzBmNGIwMjVlNzlhYjFhMWVhYmQwNGFhZDFlMjIxMGUgbGVnYWN5LXRydW5rCis0NjQ4OSAzZGVkMDkwOGU5NTJmNjQ2ZDQwMGU5ZTU1YzZmOGM2OGNiNDFmNDViIGxlZ2FjeS10cnVuaworNDY0OTAgMGYyZjdhMGQ5YjdkZDIwMTViNGQ3MDRlMTNlZTE5MTVhMGRlYzEzNCBwM3lrCis0NjQ5MSAyOWFlNWUwZmMzNDgyOGI1ZTYzZjE4NGYzMDM4NDYxMTY2OGRiZWZkIHAzeWsKKzQ2NDk1IDYzMWMyMDdjMzY5MjNkMDIzZjg0Y2QwYTkyYjI4OWI2YjcwYmU2ZDAgbGVnYWN5LXRydW5rCis0NjQ5NyAxYTIzNzA2MTM5Y2EwZmMyNzg2ODk0ODMyNWUyZjQyMTUxYWJjYTQ4IGxlZ2FjeS10cnVuaworNDY0OTggM2ZlYzNjZTIwNDEzODRhZGViZDlkYzczZWVlNjMyOTY5OTI0NWMyNSBwM3lrCis0NjQ5OSA1NTE4MTRlNGI0NzExN2IzMmY2Mjc0YzFlMzkwOGM0NjRjZjgyMTQ0IGxlZ2FjeS10cnVuaworNDY1MDEgMjM2NzI1ZjY0YTM0MWZmZTkwMTI5YjA5NzkwM2ZlMTBhNTkzOTRiMSBsZWdhY3ktdHJ1bmsKKzQ2NTAyIDdmYTdjYjZkOGJlODFlMjkwYWEyYTZlOGQwMjRlMzhkNzQ4MjZkM2EgbGVnYWN5LXRydW5rCis0NjUwMyAwMjAzYThhZjc0YTc1YTlhYmY2MGRmZDY5ZGY4YWViMzI3YWYzOTE4IGxlZ2FjeS10cnVuaworNDY1MDQgNmJhNTY3OGJlN2YyNjM1NDQ2Yjk4NThmM2QzMmZjNmI4MWI3YWEwNSBsZWdhY3ktdHJ1bmsKKzQ2NTA1IGY3NmQzZTY4ZDFhYzM3YjAwYjFkOTViZGZiZDhiYWQzMzg0MDdkZmUgbGVnYWN5LXRydW5rCis0NjUwNiA1MTI1NWNjOGEwZGMwNGFiZTczMDVlNTRkYTNhMzBmNWZjNGMxMjRlIHJlbGVhc2UyNC1tYWludAorNDY1MDcgZTk4OWVlNWQ0MDRhYmU3NzYyMTRhYjA4MGUyNzYyMGJlZGMyN2YwZSBsZWdhY3ktdHJ1bmsKKzQ2NTA4IDMyMDRhYTllMmIyMjU5NmE5NjI0ODk5MDVhNzM1ZTg2ZmMyY2JjMzMgbGVnYWN5LXRydW5rCis0NjUwOSA3MTg2MWMzNzgwOTM3MTM2MWVkZDllYTE5ZDkxY2FlNmVlNmY3ZjkwIGxlZ2FjeS10cnVuaworNDY1MTAgNTkzYWNjZGRlMDBlZjMzM2QzZWJkNTliODg4MmFjYmU4NjUyZTU2ZCBsZWdhY3ktdHJ1bmsKKzQ2NTExIGYxN2QzNzkyMGY2YTFiZGZjZTA4NjA5MjdlMTdiODU3ZTYzOGJlYmIgbGVnYWN5LXRydW5rCis0NjUxMiA5NWZiMmNkMWQzYmFjZTQ3NWNkMjQxNTg0ZDFkMDA4YzgyNmUxNzlhIGxlZ2FjeS10cnVuaworNDY1MTMgZTBjZWE2MDU0MTdlNDVjNTUxZjI3NmFjNGQ5ZWU1M2Q2NzdkNzdlMiBsZWdhY3ktdHJ1bmsKKzQ2NTE0IDkyNjhjMzA3ODJjMGFmZjcxZjRmMzMwOWJhZjM1MDAwNWI1NTE2MTcgbGVnYWN5LXRydW5rCis0NjUxNSA5MzhjMGZjZDViY2NiNmM3M2NhYmM5YWQzZDZhMzM5MzMwNzRmZDRmIGxlZ2FjeS10cnVuaworNDY1MTYgZDYwYzdmNmMyYWEwMDRiZTNiYjk0MmIwZGEwYTMxODdhODM1NTVmOSBsZWdhY3ktdHJ1bmsKKzQ2NTE3IGJmMzI2NTgxYzc0MjIyNjJhOGE5ZjdiMDg3NDVlNjYxOGE0NGM2MDcgbGVnYWN5LXRydW5rCis0NjUxOCA5ZjMyODRjOTJlYjMwZjEwNzEwYzliNmI5MmM2ZDAwNzZjN2FlYWVhIGxlZ2FjeS10cnVuaworNDY1MTkgZDMzODMwNjM0OTFmNTk4M2NmYzFjNTlmMTYzOGVhMGRlNjIxZTAzMCBsZWdhY3ktdHJ1bmsKKzQ2NTIwIGFhMDY1ZjgyMDI1MjQ2YmExN2ViMjMyNTdjMGQwMTg2OTA3YjNmOGMgbGVnYWN5LXRydW5rCis0NjUyMiA1OGU5OWYyYTY0ZWNhMWRlMmE2YWFlNTg3NTdiMzE1YzcxNzI2NGIyIGxlZ2FjeS10cnVuaworNDY1MjMgNTUzMTk1NTk5M2VkNDE2NDA2ZDUyNDY2NDdkYTEyNjU1ZTdjYzk3NiBsZWdhY3ktdHJ1bmsKKzQ2NTI0IDliMDAxZWJlYWE1ZTQ4Njc3NzVkMTBkZmY0OTAzMWYzYjNjNDdiMTYgbGVnYWN5LXRydW5rCis0NjUyNSAzZDFhOTliMzlmY2EyNWFlYjYxNDFlNTc4NWY1MmI4YzczYzQ4MjcwIGxlZ2FjeS10cnVuaworNDY1MjYgNjc0M2E2YTA2ZjE1NmQxZGJmZTg5ZTc5NTNhZDgyNTNkMzM5OGU0MiBsZWdhY3ktdHJ1bmsKKzQ2NTI3IGZiNTZhMzk5MjYwNGJhODU5NzZjZGQxMTcxNjc4NGUwNzY2YjIyMTEgbGVnYWN5LXRydW5rCis0NjUyOCBmNjRiMTNhMDBmMzNiMjhjOGVmYWE1NThhMDMwY2E4MDc3MzM5MzM5IGxlZ2FjeS10cnVuaworNDY1MjkgZGNmOTJkZDc0MDhhM2YwYmQyYWY1NDQ5NDk4ODFhMzk1ZjY5NDUyOCBsZWdhY3ktdHJ1bmsKKzQ2NTMwIDhhYzYwM2U1NzBhMDU1OGY5YTI3NTcxNDU2ODI2MTg5NGE5MTcxYWIgbGVnYWN5LXRydW5rCis0NjUzMSA1YTEyYzBjNTE4M2U4OGEwNWZiOTAzNWNkODI4NmEzYzliMDJiODE1IGxlZ2FjeS10cnVuaworNDY1MzIgNDhhNmFmODdmM2U4NjJhOGIzMzc3MDgyMzVkMTQ2MjAyMmQ1ODkxNSBsZWdhY3ktdHJ1bmsKKzQ2NTMzIDNmZTNjY2RmMDE1NTUyMTYzYzRjOTFhMWU5NDZjYjExMTZiNmFiMGIgbGVnYWN5LXRydW5rCis0NjUzNCBhNTI5OGYzNzFiZTdjZDJhZDkxOTQyMjIzMDM1NTA1MDU4MGY4OWIxIGxlZ2FjeS10cnVuaworNDY1MzUgYzNmMmM2Njc2YjA2MWNhNzEyODliZGRjN2NlMDUyMzJhY2Q0Y2ZiOSBsZWdhY3ktdHJ1bmsKKzQ2NTM2IGQ1YmRmZDEyMDIzMjcwODI2N2FkZGM2NDZiZWUzNmEwZTdmYzgwZDMgbGVnYWN5LXRydW5rCis0NjUzNyA3ZDUxMGU0ZjNjOTg4NTA1ZDA2YmM1OTFjNTkwOThlMDU0YmIxMzYyIGxlZ2FjeS10cnVuaworNDY1MzkgNGU0ZTY1M2E4MGJmNGFmNjRhZjA5OWIxNmViMjk4Zjg1OGIxYTI3NyBsZWdhY3ktdHJ1bmsKKzQ2NTQwIDE3MzFmYmRmMDI5ZDIwOWU3NmZhOGI4NTI4ODY0M2ZlYWMyNmY1OGIgbGVnYWN5LXRydW5rCis0NjU0MSA2ZDc5YWNkYzgxMmQyMDEwZDBkMmNlZGYwZmZmZmFiYTczNDMxZjgzIGxlZ2FjeS10cnVuaworNDY1NDIgYTgyZmQ3YjA0NGRjN2E3ZDZkNWQ2OTFhODYxYTI2YmM4ZTJkMDIwNCBsZWdhY3ktdHJ1bmsKKzQ2NTQzIDhkZmJhMDg3ZGMwNzdhNjFmNTBmM2FmNmEyODM0Y2NhMjRkYzM0ZTIgbGVnYWN5LXRydW5rCis0NjU0NCA0OTRjYWI1NjNjMTE3YTEzOWJkYTEzODk0OTk2ZjI4Y2JlNTZkMjViIGxlZ2FjeS10cnVuaworNDY1NDUgOWY4NjJkOWY3Nzg1ZGRhNzUxMGUyMmFiY2QzYmM4OWY3ZDUxNGNkYiBsZWdhY3ktdHJ1bmsKKzQ2NTQ2IGVjNWRjOGE0OWVkZmI2NTc0MDFkYjVjMjExNjkzZDdjYTk0YjZlY2EgbGVnYWN5LXRydW5rCis0NjU0NyBjNDUwMWZlZmQzMjRmYjQzNjNjOTQ1NmY3ZmJmNzJkMmM5MDY4NDEzIGxlZ2FjeS10cnVuaworNDY1NDggNTEwNjgyYWM1ZTg5ZGQ1YjY1YmQ0N2I4YWM4ZTBlZmMyYzY0MzViMyBsZWdhY3ktdHJ1bmsKKzQ2NTQ5IDQ0MTcxMWNiZmUzNDE3MWRhNjc0MzZlZmYxODVjYTQ2MzExMDljYTIgbGVnYWN5LXRydW5rCis0NjU1MCA0Zjg1ODY5NDZjOGY1NjMyYTQ2NTc4M2U0YThmNjllYWMzOGZmMjA3IGxlZ2FjeS10cnVuaworNDY1NTEgMGFiYTYzZmY3ZjczZTM4NjgzZGE1NTVmYzhiNGJjZWZlY2U4MWM3OCBsZWdhY3ktdHJ1bmsKKzQ2NTUyIGQyMDA4YjMxZmQ2MmEyNGQ2YTRmZWUxNTY1YjM1NWVkMDRlMDIxNzYgbGVnYWN5LXRydW5rCis0NjU1MyA5OTU2NGU2MmFlYTkyZGUxNDA4OTJlMTc4MzJmZTIxN2E2M2VjYWIxIGxlZ2FjeS10cnVuaworNDY1NTQgZTExNThlMTk1MWRhNTBmNmVhZGY4ODI0YzRlZTcwNzdiMjQyYzk2ZCBsZWdhY3ktdHJ1bmsKKzQ2NTU1IDEzZmVkZDBkMGYyNmM2NjRlZDU5NjRlNGVhYTc1OGUzZDA0NTllODYgbGVnYWN5LXRydW5rCis0NjU1NiBjNzQ3YWQ1M2UwOWUwZjkyOTQ0YzU0NjM1OGM3ODU0MDRlZDc1N2U5IGxlZ2FjeS10cnVuaworNDY1NTcgMTY4ZWI2ZTE1YjhjN2M5NTFkZDEyMWQ5M2Y4ZDcxZGE5NmFlNjQ3NCBsZWdhY3ktdHJ1bmsKKzQ2NTU5IDdmMWYzNmIzYzlmOWFhYzM5MThlZDZlODZmM2UzYmYxZTg5MTRlOGYgbGVnYWN5LXRydW5rCis0NjU2MCBlY2Y3MTczZTc5ZmY1NjZmNGY5NThiYWRjMTg5ZTU3YjcwZjI4NjBlIGxlZ2FjeS10cnVuaworNDY1NjEgYmIwZDJiOTU1NDM5ZjMyZTQ4MTIzNzA3MDNmODhlNjFlMjI0NjcwMiBsZWdhY3ktdHJ1bmsKKzQ2NTYyIDJmZTMyMzNiZDQyNjEyZjRiMTczNGMxYWU5M2RlMjYxMGYxNTY1ODggbGVnYWN5LXRydW5rCis0NjU2OCBkMmFlNTgwODgwYjRiYmRkNjg1ZWM3ZDkwZjRkMzlmYmY5MjQ4Y2E2IGxlZ2FjeS10cnVuaworNDY1NjkgZjlkMTg0MGZhZDM0ODUyNTQwOTI1ZWY3YWY5YmU5ZjlmYWQ5NzE1YyBsZWdhY3ktdHJ1bmsKKzQ2NTcwIDYyOWViZjdkM2I1Y2FjYTU5ZGJmMGMxM2RjOWE5ZjlhZjY4Y2Y1NWYgcmVsZWFzZTI0LW1haW50Cis0NjU3MiAxYTU2ZGE4NmMxMWE4NzlmYTcxOTUwY2I0MmUyZWZmYTE4YzYzOTNlIGxlZ2FjeS10cnVuaworNDY1NzMgYmFkYzE3MzdkYzgwMTljZjJiMzAyZDUyMDAwNWYwMzU3MTJhMGVjNyBsZWdhY3ktdHJ1bmsKKzQ2NTc0IGYwZjI5MWZhOWI0NjkxODQxZWRlZWU1ZWU1MzgwMDBlZDhlMmNlZGMgbGVnYWN5LXRydW5rCis0NjU3NSAzZmQ4MDI3ODQ1ZjgwMmM5YTBkODgwOGFjNjZmNzRiZDY3MDg2ZDliIGxlZ2FjeS10cnVuaworNDY1NzYgZjUwZDNhNTFkNjQ2ZjMzYmVmZjViNDJiYmU2MDU4NmQ0YzQ0MDJlNSBsZWdhY3ktdHJ1bmsKKzQ2NTc3IGQyNWUyNzljN2VhOWIyNTdjZGM1YTFiMTJhM2Y3MzVkNDlhYjYzMGMgbGVnYWN5LXRydW5rCis0NjU3OCBmODMxZThiYzZiZDM3ODk5MzQ0NzU4YTg1ZjZlMDI3NzUwOTVjNTAwIGxlZ2FjeS10cnVuaworNDY1NzkgNWY0NDJmN2JmNDE5ZTRmYzNjMTIwOTgwMzA3ZDkxYjY2NWMzZTg5ZiBsZWdhY3ktdHJ1bmsKKzQ2NTgwIGUwOTk3ZmZhMzU3MjQ2OGI5ZWEwZWEwY2Y2MmIxNjgxN2NhMTExZjYgbGVnYWN5LXRydW5rCis0NjU4MSBhN2YyMjk1YTc4YWMxMzk1MGJmZmU4Nzg0YmY4NDkyZjBiMmNiYjE3IGxlZ2FjeS10cnVuaworNDY1ODIgNDQ3YTk0YjAzOWRlYjgwY2ExZGE5MzMzYmEzYWM4MTNiODcwYzkzOSBsZWdhY3ktdHJ1bmsKKzQ2NTg0IDQyOGU5Y2JiNDM0NjFlMGVlZmZmMmY3NDMwMDc1YTg0NzUyNjdmZWIgbGVnYWN5LXRydW5rCis0NjU4NSBkYjJkOGFhOWZlM2Q0MjA4Yjk5Mjg3ZjA1M2JmNDhkMTNmYWViM2Y0IGxlZ2FjeS10cnVuaworNDY1ODYgMzAzMWE3MTEwZGE5YTg3NTk3MzJmZjI2MDJmYzM5OTIyMzFhZjk0MSBsZWdhY3ktdHJ1bmsKKzQ2NTg3IGIxZWI0YTY3NDk5ODA1NGE2ZTc1MWExNmUzYTdlYWYzYmU3MmFjMGQgbGVnYWN5LXRydW5rCis0NjU4OCBjZjY3N2U5Nzg4NTJmYTZjZWJlYjA5M2E1MDRlNWQ0Yjg0OGI5MzBmIGxlZ2FjeS10cnVuaworNDY1ODkgMTc1Y2JkZjlhNWZiZDA2NTdmODUxNTg2MGVjNTEwODNiZTQwY2I4MyBsZWdhY3ktdHJ1bmsKKzQ2NTkwIDk5NWVjZDIzMWY3YzU5OGQ1YjQxNTEzMDNmZDMyNjRjOGQwNzI5MzYgbGVnYWN5LXRydW5rCis0NjU5MSBjNWQ1MDg3MmVmZjQ4MmE3MzdlNDkxNGIyYzYyODQxNjdiYTQ0MThkIGxlZ2FjeS10cnVuaworNDY1OTIgYjliMDM2ZjAyMjA3ZTI5YjIyMTUzNDg2NmQ3MGQyZWYyOWQ0ZmQ2YiBsZWdhY3ktdHJ1bmsKKzQ2NTk0IGQ3ZGQ1Mjg0MjdjMGQxNGFhNDNiMGY4ZmFkNTJlYjU1NTM4NmU5ZGUgbGVnYWN5LXRydW5rCis0NjU5OSBmMzdlNjdiZDQzOTMxODRhMWViYWFlZWM4ZDExYjIxOWQ1NTE3OTk5IGxlZ2FjeS10cnVuaworNDY2MDAgMjYzMmJkNTVjMjlmMjU0NGJkOTg3NDE2Y2YyY2Q3OWU2MzU4ZGIyNSBsZWdhY3ktdHJ1bmsKKzQ2NjAxIDc1ZDY4MTE1OTMyOWQ5OGYxNjU1ZGJlMGYyN2U1NjEwZDNmZThmOTQgbGVnYWN5LXRydW5rCis0NjYwMiA2OTdkZDg0OGUxZjEzNjM2ZTU1NDNmZGE1ZmM2MWQ1MDdhNDMzMjlkIGxlZ2FjeS10cnVuaworNDY2MDMgMjFlOGRkM2UzOTQ1NzdjNTgxNjZiNTE1MDEwMmUxMGFiZGZiYTM4OCBsZWdhY3ktdHJ1bmsKKzQ2NjA1IDJlYjhiZTBmODczMTI5NzE2MDc2ZDM2OTQ3ZWUwYWE1Mzk1ODUyMmEgbGVnYWN5LXRydW5rCis0NjYwNyBmOWMzMDFkYzVmYjc0YzhjMmUxOGE1ZGFmMjBkZDA4ZjgyNzQxZDA0IGxlZ2FjeS10cnVuaworNDY2MDggMzgzY2Q5NGMyYTY3ZDM3ZjJiYTFiMWMxNzI2NTBhOWNiNjg0MTc3NSBsZWdhY3ktdHJ1bmsKKzQ2NjA5IDZmOWI1MzZlOTZmNjYzNTNjMWZlOWU3NTUyMzhhOTAyM2UzZTljNTkgcmVsZWFzZTI0LW1haW50Cis0NjYxMCA5NjZlNzQ3MGZlMjM3MzMzYjRlMGVmMWQ1NGM3OTUyODA0MDlmN2Y4IGxlZ2FjeS10cnVuaworNDY2MTIgMmI1YTlkYzQ5MDVjOTM5YmQ0ZDNkNjQyZTBhNzcxMjNmMWJjNzVmNCBsZWdhY3ktdHJ1bmsKKzQ2NjEzIDY0YjkzNzlmYTgwZGIwODg0MTM1OWQxZWE0Mzg4YzYyZTIzNmE0ZGIgcmVsZWFzZTI0LW1haW50Cis0NjYxNCA0NjQyNjVjMWQwOGIxY2E2N2Q0NTZmODhlYzU3NGMwM2M3Mjg3ODFlIGxlZ2FjeS10cnVuaworNDY2MTUgMzQ3M2ZjZjBiY2VlODQ2MWY2ZjY2ZmQ2NjYwNWZkYmVkODdkNjc3NiByZWxlYXNlMjQtbWFpbnQKKzQ2NjE2IGFhYmMxMzYwMjQ0MGFmM2U2ZjhiNTBjY2VkMmM0YjVlOWRlMDMwNzMgbGVnYWN5LXRydW5rCis0NjYxNyA4NTU5OTNiMDlmZDkyMDgyYjQyYTdkNjU1NTY5MGYyYmU5NDBhYTNlIGxlZ2FjeS10cnVuaworNDY2MTggMzJmNzA2ZmQ0NTAzZTk4OTBlN2YxMWJjODQ0ODFjZjNiZDM3YjUzYyByZWxlYXNlMjQtbWFpbnQKKzQ2NjE5IDk3MDUyNmMxYTdlMmZmMzY0NGVmMmMyNDU2MzMyY2JmYTQ3MmEzYTggbGVnYWN5LXRydW5rCis0NjYyMCAxMjlhYjg0NmE3MWZhZmY2MTIzYzM1NWVkMDU2MmM3ZTMyZWYyOGNjIHJlbGVhc2UyNC1tYWludAorNDY2MjEgZDQxNDBmNzlmMWM3MDc5OGEzMDEyNDNmNjRhYTA2YWEyZDY1MWU0ZCBsZWdhY3ktdHJ1bmsKKzQ2NjIyIGY3ZDQyM2MwYmNkODZhM2IwM2JjOWI1OTY0NjAwMDJkMzMzYTQ2MDkgbGVnYWN5LXRydW5rCis0NjYyMyBmMGY1ZGNhMjk5OTA3YTQ4MjNjYjliOWZiYzA1NDkyZjMxNjYzMzdhIGxlZ2FjeS10cnVuaworNDY2MjQgMzQ3MTRlNDBkNDY1NmRmMDI3Njg2NjYxNGJkZWIwNmIyMzA4NGMwMSBsZWdhY3ktdHJ1bmsKKzQ2NjI1IGQxZmFjYTRmMGI4MDI2MTI1YjFmMWQyMjkxZjc1OTkyOTA5NGJlYWMgbGVnYWN5LXRydW5rCis0NjYyNiBhNDY1NDc3MWU1YjMwMTQ0Y2I4MThlODYwZDAzODQ4YjA1MGI2Zjk1IGxlZ2FjeS10cnVuaworNDY2MjcgYmVmMDIzNmQ3YmZhNmYxMzZlM2Y1NzhlZjU1MmQ1ZGMwODM3ZDhkNiBsZWdhY3ktdHJ1bmsKKzQ2NjI4IDRlYzk0MmNmOGM5MmVkNzZlNDE0YWE4M2MyNTY0YTM2NzE1NDkxNjggbGVnYWN5LXRydW5rCis0NjYyOSA4MDZmM2UxNDExOWQ3N2RjODNmZDc2MTYwYTQyMjQ4NTk0ZmVjNWU4IGxlZ2FjeS10cnVuaworNDY2MzAgNzIxYTdlYjIzZWJmOWMwOWRjYThiN2MzODMwMmFhNzExOGFmZTNkZSBsZWdhY3ktdHJ1bmsKKzQ2NjMxIDE2MzE4MjQ5YWEzMzI0NjM3MzIwYmUzNDVlNjE0MmYyN2QyZGQ1MTggbGVnYWN5LXRydW5rCis0NjYzMiAyNDhkMTA2Zjg5NTJlZmQ0ZmQ3MWJjN2I5NDY2NjdmNDhmZmEwOGVkIGxlZ2FjeS10cnVuaworNDY2MzMgMDdhY2Y2ZmE1YWEwZWRmZmVlYjFlMDFiNmU4YjFkZGZhZjU2MTc0OCBsZWdhY3ktdHJ1bmsKKzQ2NjM0IDNhYWRjNmRjNGIxYTY0MjA1NWFhZThjMDRkYTA3MWQ1MWZmMGFjOTkgbGVnYWN5LXRydW5rCis0NjYzNSA2Zjc0MDRmM2ZjNTc2NWIzN2QyYTUxMzczMjQzYzY4YzcwNDMzNTdiIGxlZ2FjeS10cnVuaworNDY2MzcgNTcyMmYxMTJkNWRhNTRiZDA1YjEwYjVkZWQ0YWUwZjdlMDgyZDZlNyBsZWdhY3ktdHJ1bmsKKzQ2NjM4IDgyMDcyYThmNTI2NzRmMDM1NGY2Mzg1NGY1YzBlZjY4OGU3MTQ3MTggbGVnYWN5LXRydW5rCis0NjYzOSAwN2U1MDNlODU4ZWZlMjdkNGIwODMxMjJmODNkY2M2YzBlMjE1ZjA5IGxlZ2FjeS10cnVuaworNDY2NDAgMGIyYjA3NmU1OTA4ZWEzYzEyMzRiYjc2NTM1Mzg1MjFiYTQ4NzJjYSBsZWdhY3ktdHJ1bmsKKzQ2NjQxIDE5NDMwY2RmZjJiZDZhYTkxZjI5OTkyY2VjMDhmMTQ2ZGJjMDA4NTkgbGVnYWN5LXRydW5rCis0NjY0MiBhMTE0MDAzYWEzZDNlYjA3MTMzNDQzYjFiYmFiYmY5NzFiMGYxMmU2IGxlZ2FjeS10cnVuaworNDY2NDMgNzIzOWExYTgwNDg3OTAwYTNiZjExZDZhZDgwMjY4N2Y3YTRiZDViYSBsZWdhY3ktdHJ1bmsKKzQ2NjQ0IDQ3MjJkMzdmYWExNDM3OGI5NGFkZTMwNjJiZDI4NTU5MWE2MjczYmMgbGVnYWN5LXRydW5rCis0NjY0NSBlMDBlNjhkZDFkZGZhODYxYTc5Zjc3NTI1ZGM0ZGYwYmI0MTE4Zjk4IGxlZ2FjeS10cnVuaworNDY2NDYgNWVjODk3M2RkMjIxMzkxYjlhYzU4Y2NiN2U4MDk3Yzk5NTA4NWI3MSBsZWdhY3ktdHJ1bmsKKzQ2NjQ3IGRiNzkyOTc3MjYzYWNlZTZmMDRkNThkMWE0NDMwNTg3MTQwZGFmYzQgbGVnYWN5LXRydW5rCis0NjY0OCA5ZTBiMDUwY2U0NmYwNWMwZTc3ZTM2NTk4ZDc1MGE4NDkwNTIyYjg1IGxlZ2FjeS10cnVuaworNDY2NDkgMjE5NjliNzFjMzZkMDcyMWNhZThhMzYyODQ3YTk3YzU3MTgxOGY3MyBsZWdhY3ktdHJ1bmsKKzQ2NjUwIDVkZmIyMWEzN2YxOWZhZjkwYjVlNTE1MGNkNjc3YWVhNTU0ZWFjYzkgbGVnYWN5LXRydW5rCis0NjY1MSA3ZDMxZDAzMWY4ZTEzMzUwOWFhMTE3ZmU0ZWU1YjIzMDljMWQzY2U4IGxlZ2FjeS10cnVuaworNDY2NTIgOTEzZTVlODRmYWRlNzZkNjRiM2I5OTgxMDhmZjUxM2U0MTRkYzQyNiByZWxlYXNlMjQtbWFpbnQKKzQ2NjU0IGYxNmQ0NGQzMDNjZjg0MDA5ZTQyOTA0ZjVmODUwYTBmOWNlMjA0YjMgbGVnYWN5LXRydW5rCis0NjY1NSBjNDU4N2E1ZjVlOTRlZTZjNmFjYzE4NTNiZWI0NGUxMWE5ZDliNjZlIGxlZ2FjeS10cnVuaworNDY2NTYgZDAwNzNjNmY2ZjU2ZTJkODE1MzUzMjA3ZjQwMWNkNGFjMTk1OTg2ZSBsZWdhY3ktdHJ1bmsKKzQ2NjU3IDFjMjNlOTVhODBhMmVmODk0YzQzOWQ3ZmJmZTY3ODZlZGVhYWY4YzMgbGVnYWN5LXRydW5rCis0NjY1OCBiMDBjYmIwOGUwY2MxMWJlZTBkZWFiNDU3YTlmYTRlM2E0ODM3YWFlIGxlZ2FjeS10cnVuaworNDY2NTkgNThkZTYxYmVkZGZjZWYzZmYyYTNlM2YxOWUwY2E2ZWRmODA5YWNmNSByZWxlYXNlMjQtbWFpbnQKKzQ2NjYwIGMwNWVmMDhlMWJhOTRkOWNhMTc5ODY5MzBiYmU0MDc5MmIwYzBkNTggbGVnYWN5LXRydW5rCis0NjY2MSAyMzc0NTYwNjJiODBmNzM2Y2I4NzIyMTMzMWM5MzUyYzRhMDk5NmZlIGxlZ2FjeS10cnVuaworNDY2NjIgY2IzZjUxMzhlY2I1NzgwYTRmZGI1YzBhY2ViNDhlODZmMTdkYTU0YiByZWxlYXNlMjQtbWFpbnQKKzQ2NjYzIGM5MDhhYWE5MWVhZTE3ODdjMzE1MzQ3YTU1ZTRmZDNhNTgxZjU3ZGIgbGVnYWN5LXRydW5rCis0NjY2NCAxYzlkODA3N2VjZmIyMWY5Y2ZkNzY3NDg3OTYyYTE1OWJkMGEyNjY3IGxlZ2FjeS10cnVuaworNDY2NjUgNWFkYmE3MDk2MDZiM2E2NGQyMmNhOWIyYjhkM2Y1MWVlNzg3Zjk0ZiBsZWdhY3ktdHJ1bmsKKzQ2NjY2IDk5MDY0N2UyYWJjNGIyNDUyYjI1ZTg3NzhkOTNkY2YzMDRmM2IzM2EgbGVnYWN5LXRydW5rCis0NjY2NyBhNGI1OGFiNjUyMDIzYzU4MTI5MDUzNDhjN2NjYTE2NDhhZDJiZmE5IGxlZ2FjeS10cnVuaworNDY2NjggZjNhNjc5OTg1ZTBkNTQ4ZGYzMDdhOTlhNzRhNDVmMWIwMjE3NzViNyBsZWdhY3ktdHJ1bmsKKzQ2NjY5IDMwNjA1YmY5NWVmOGI4YmU3YWIwN2MwNGJkMTQwMTVjODhlNjU2NDcgcmVsZWFzZTI0LW1haW50Cis0NjY3MSAwMmQ0NzU0MDVlM2I1ZjI5MGI2MDRhZjAzMzMxMTEwYTVkM2VmODFiIGxlZ2FjeS10cnVuaworNDY2NzIgNjY0OWI1MWUyNDVmOTI1ZGM3NzQxMTAxYzA5NzU1ODYyN2E5NmNjMyBsZWdhY3ktdHJ1bmsKKzQ2NjczIDIxNzdhZWNkOTFmY2JhYjNkYThkNzczMGE1YTYzYTNhMTk3NmNhNjEgbGVnYWN5LXRydW5rCis0NjY3NCAwODU1ZGExNGE4MjBjMGYxNmE1ZTdiY2I5MGE2ODUxNDQyOWFlYzEwIGxlZ2FjeS10cnVuaworNDY2NzUgOTYzOWNiMTNiOTQwNTMwZDEzOTBhN2VkNDYxZjcxMDQxN2UwMDg2NSBsZWdhY3ktdHJ1bmsKKzQ2Njc2IDY4N2FhY2Q2NGJlOTY2OTYxYWQ3NDcxMTgwMzYwYWUyZTJiZDc3OWMgbGVnYWN5LXRydW5rCis0NjY3NyAwZGNiOTIyOGNiM2ZkODU1MDI0MGQ5YWQ5NDQ3YjFkMTQwZWIwMjA3IGxlZ2FjeS10cnVuaworNDY2NzggNjU0ZjAzODNkYmNiMmUzY2NhZTk4MWMxMzgyYzU1NTE3MjFiNGNkYiByZWxlYXNlMjQtbWFpbnQKKzQ2Njc5IGM0YjQ0MjIyYTU5OTRiMDdhY2Q0ZTllNzY4ZWEzNjkxZGZkNmVjNTQgbGVnYWN5LXRydW5rCis0NjY4MCAxOGRlNTBiNThmYjFkNzhmZmNlNzYxMjE1MWE4N2U3NjFkOWUzMDBkIGxlZ2FjeS10cnVuaworNDY2ODEgZjAwNTE4YmI1YjQzMzU3NzVjMDZlMjY5YmQ1NGY2YzIyMzJlOGQyZiBsZWdhY3ktdHJ1bmsKKzQ2NjgyIDgwYTYyNzM0MGM5ZjIzZDc5ODA0N2ZlMzhjNWU4MWYzY2YwZjU3YmQgbGVnYWN5LXRydW5rCis0NjY4MyAxMWY2NjczMTU1NGRiYTc4MGU1MDUwNTQ3YWMxYzVhMGNjYTdkMjk5IHJlbGVhc2UyNC1tYWludAorNDY2ODQgYTYwYWRmMGNiMmZkNzRmYmM3ZDkyNGQzMzY4YzIzMGVmOWU1NTdmMSBsZWdhY3ktdHJ1bmsKKzQ2Njg1IDcwODFlOGQ1MzI5OGVmM2M0NDlmY2Q3YTkyNDMxZDZlYTQyMGI5NjcgcmVsZWFzZTI0LW1haW50Cis0NjY4NiA2YWU0MThlNGIzNmE5YTY3Y2NkZTcyM2JmZGEyMDk1ZmRiNDZlNjk1IGxlZ2FjeS10cnVuaworNDY2ODcgMWUzOGZmODFjOGE5NTJlZWJmN2NiYmYzNjcyNTc4NTJhOGMwM2VmMiBsZWdhY3ktdHJ1bmsKKzQ2Njg4IDgyOGMxMDZkNWVjYzlmZDc0Y2QxNmY4YmZkMWE5Mjg2YjE2ZGMyMGEgbGVnYWN5LXRydW5rCis0NjY4OSA1ZmJlZmI1YzhhMjNlNjljZDAyYTZlMzk5MzVjNTFjOWMyMzk4MWUxIGxlZ2FjeS10cnVuaworNDY2OTAgMGRjYjYyZDZkOTlhMjhhNDgwNzY2NGFhYjJjMzU4OWE1Njk1MDdhNyBsZWdhY3ktdHJ1bmsKKzQ2NjkxIDk4ZTgxYWY0MDAwN2VmZDE4ZWE2NjZlYzRkYTVkNTJhZDE2ZjRmNjcgbGVnYWN5LXRydW5rCis0NjY5MiAxYzAxNmY5Y2E1YTc0YWQxMzczNmNiNzAxM2RkY2ZkMmYxMzgyZWQ1IGFpbWFjaW50eXJlLXNmMTQ1NDQ4MQorNDY2OTMgMjgwYjhlYWVlMWMwMzRkZGEwNWFjMmQ4NzJiMDZhMjhjN2IwMmFkYyBsZWdhY3ktdHJ1bmsKKzQ2Njk0IGM5ODlmYWZmZjNkYzZjNTJkYmEyZjE0OGIyMzIxMTIxMTc0ZDk5YzEgbGVnYWN5LXRydW5rCis0NjY5NSAzMTFmNzUxYWNhN2EzMzJkODgxNWIwNWQxNDBmYjk0NmM3ODhjM2RjIGxlZ2FjeS10cnVuaworNDY2OTYgY2IzYjQzOWMyOWNjZmRhOWZlMDgxZjk1MTk3NmRiMWQ2MjQ4MWZkZSBsZWdhY3ktdHJ1bmsKKzQ2Njk3IDkzMWFkMDZiZWM1NjE5NjlkMTQ0ZTVhOTAzZWRkODhlYWYzNDhhYjMgbGVnYWN5LXRydW5rCis0NjY5OCA2MjVjMmQ5OGExZjgwNWQxNzkzN2MzNmE4MzlhNTU5ZWQzMDczMGU5IGxlZ2FjeS10cnVuaworNDY2OTkgN2JmYWZkZWZmZWUyNjA5NTZlYzI4YWZkZDNiZjE1MzZiYTdkMjgwMyBsZWdhY3ktdHJ1bmsKKzQ2NzAwIDFlOGI1OTM4OWUyZTEwYjY4MjY4ZTk5MzE4ZjE0YTdiOThhN2JkMzYgbGVnYWN5LXRydW5rCis0NjcwMSAxZTg1NjU3ZjA0NzQwZDYwYjY5N2RmMjJiNDJjZWZlY2ZjOTZlMjI5IGxlZ2FjeS10cnVuaworNDY3MDIgM2EzNmQ1ZjViMTBmZDMwNGU1MTZmOGM5ODg4NjU0YjIwZmIyYjc5MCBsZWdhY3ktdHJ1bmsKKzQ2NzA1IGVhOTk2NmM4ODY1NzQyZDI4MDQ2YTgzZjQxODc5ZGViMmYyYmNmNTEgbGVnYWN5LXRydW5rCis0NjcwNiAwY2QyMjczYmMzYjE3NTZjODhjM2Y2YjY5MjNjMThjZTk2YzU1NDQ3IGxlZ2FjeS10cnVuaworNDY3MDggZGVmYjJiOTkzNDM0ZmYxZjY2MTk3NWQ2Mjk4M2Y3ZGYwZjFjYTgxMSBsZWdhY3ktdHJ1bmsKKzQ2NzA5IGEyY2Y4NzFiNzgwMGU4ZGRjMzczYTk0MGViNmMzNTcwMWI2NTRlZGYgbGVnYWN5LXRydW5rCis0NjcxMCAzZmIzODM1MWRkMzljYjczZTVkMmJiM2I0Njc1ODhmMTM2Mzc1ZWFiIGxlZ2FjeS10cnVuaworNDY3MTYgMmFmNTc1N2RlN2IxZTlhZDY0N2E5OTJmMmU2YzczMzI0YzgyODZlZSBsZWdhY3ktdHJ1bmsKKzQ2NzE3IDFjYjJlY2U0YjllMWRlMGVhYmQzOWQ2YWU0MWEyMGZlNDkzNjEzZjggbGVnYWN5LXRydW5rCis0NjcxOCBhMzY2OGU5NGZjNmQ0ZDQ3NzJiNGMzNDAzNGJlNTE1M2EyMDA5ZjQ0IGxlZ2FjeS10cnVuaworNDY3MTkgMWI0N2QwMzBjM2ZhZTVjN2Y1YWIzYjA2YmRmNzZmYjMzYTJlNjlhMSBsZWdhY3ktdHJ1bmsKKzQ2NzIwIDc3MDRmMzc1NDFmNDIzMWZlYmQ2MDJjZTMxMzI5M2Y1NjIzNDBkMDkgbGVnYWN5LXRydW5rCis0NjcyMyA4NzJlOTkxZjliNzAxNTQwOWVmNTdhNzlmMjM1YjA3NzYyYzhhZjYyIGxlZ2FjeS10cnVuaworNDY3MjcgMTEwMGI1MmM1NWZkZmUzNjQ1YmYxMzllNTYwNGZjYWNlN2U3YTQ3MCBsZWdhY3ktdHJ1bmsKKzQ2NzI4IGEwNzYxY2ViODYzM2E4MWEzNGQ4NGY5MGZkM2M2YzZkOTJkZGM2YTUgbGVnYWN5LXRydW5rCis0NjcyOSAwYjRlYWM0MDUwYjgwMDI4YmYyZjU1YTBlYzE3OTA0MWJmM2ExMDE4IGxlZ2FjeS10cnVuaworNDY3MzAgZmMzYmNkNGU0NGI5NjRhZTcyODAyNjlkMmU5MTI4NDBmOTU2ZTNjMSBsZWdhY3ktdHJ1bmsKKzQ2NzMxIDBlN2JhZmIxYjgyZjljMWExOWQyN2I4ZWE3Zjc4YzhkMjZkNDgxY2QgbGVnYWN5LXRydW5rCis0NjczMiA3ZDMxYjY2OTJhYjc0ODAxZGViMzVjNjU2MTA0MjA3YWZhMDIxYmIyIHJlbGVhc2UyNC1tYWludAorNDY3MzUgZTNjMDhmMDY2ZWI4MGQ3ZTgxZWQxZDg5OTBkMDM4ZDEwNTU1OWYwMCBsZWdhY3ktdHJ1bmsKKzQ2NzM2IGZjYmY2M2M5YjRmNmZjZWRhNjI1MjU4N2JjMWVkZmVmMTIzYmZkNTkgbGVnYWN5LXRydW5rCis0NjczNyA0YjBhM2QwZDg1ODQxYjc1MGY3ZjMxNGI3ZTdkMzNkMGU5YzY5Yjc0IGxlZ2FjeS10cnVuaworNDY3MzggMWUwNzA0Y2Q5ZWU4MWFhYTU4ODBmNWE4ZGIwMjNmYTRjOGIwZTcxNyBsZWdhY3ktdHJ1bmsKKzQ2NzM5IDVjNThmZGE5NWFhNWEyYmZkNDIxYzdhMWVkNGNiY2U5OGM1NDM0ZDQgbGVnYWN5LXRydW5rCis0Njc0MCBmMjhmOWMxNWUyZDBmOGUwMjMxN2U4NzBlNjZjNjVkNjY5MDEzNWM3IGxlZ2FjeS10cnVuaworNDY3NDEgMzU4MWQxZGM0MjUzMzcyMjMwNTk2ZWM4NDlhNmJmMGU2MTI1ZDE3MyBsZWdhY3ktdHJ1bmsKKzQ2NzQyIDFkMjM5YzdlOGQ2MDc1YTMxODYwMThhYjZiNGZhNDBkZmRhZDFiMzIgcmVsZWFzZTI0LW1haW50Cis0Njc0MyA3MmM4ZjE4ZTAzMTE4M2RiZTlhN2ZjZTlmZTY2MDMxMTFkOTYwOTliIGxlZ2FjeS10cnVuaworNDY3NDQgNzYxOTIxNmJiYzE5NGMzNDMxZjgzNzA5YWFiOTZmOWE5YWZiYWJlYyByZWxlYXNlMjQtbWFpbnQKKzQ2NzQ1IGQzZDk2MWYzODhiZTJiMDNhZjY0YjE0OGM3M2YwMmY0NjczY2VhN2YgbGVnYWN5LXRydW5rCis0Njc0NiBlMmJhNWFlNGI4MTNkOWZkMmMyZDI2OGQ4YmFmNmMyNjg0MjU1ODUxIGxlZ2FjeS10cnVuaworNDY3NDcgZTBkMjk1ODYyMTJhMzc3ZWRkOTIyNzM2OGY0YzNjNmQ3MGNmMzIxNSByZWxlYXNlMjQtbWFpbnQKKzQ2NzQ4IGRlZTczZmE4MTEwZjNlYWQ0MzAwZjkxNjQ1ZjY1ZGI4YzhlM2U0NWUgbGVnYWN5LXRydW5rCis0Njc1MCAxOWZkNjE0MTk0MGQ1YjBhN2I0ZmIyYzQxMzg5MTJhYmIwMjgzZDk4IHAzeWsKKzQ2NzUxIDI0OTMwZTNiNjA2MTlhZWMzMTljZGYzM2IyY2Y0MGJjOTMxMTgyNmIgbGVnYWN5LXRydW5rCis0Njc1MiAzNjVjYTA0ZDA4NTY0YTA5ZDFjZWJhYWRhZTc0NWIwOGE0Nzc2YzY4IGxlZ2FjeS10cnVuaworNDY3NTMgMDk5OTdiMmY2M2EyYzNkYWIyZTZjZDdlYTljYmZiZmYxYmZhMWIyZiBwM3lrCis0Njc1NCBhMTljMjBjNWU1Yzc1NjYyMTU3YjExMDJlMzZjMDdkMWUyYzAxYWI5IHAzeWsKKzQ2NzU1IDZiYTdkNDY2Nzk4NjdiZjlkNGFiNmVlOThlMTU1ZmNkMDExN2NhZDUgbGVnYWN5LXRydW5rCis0Njc1NiAwZTMxOTY2NzQ1NWMzNWM2MjIyNDM1NWIzNzI5M2VkZTRlNTAyM2I4IHJlbGVhc2UyNC1tYWludAorNDY3NTcgNWJjNzI3MmI4MWU1NDdkZmNjZWEwYjBmZmI4MDM1MjA5N2NmNzU1NiBsZWdhY3ktdHJ1bmsKKzQ2NzU4IDkzNWFjMjJmMGIzZjAyNmU1M2Y4ZGJjN2NiMWJjOWQ2NTEzNzE2MmUgcmVsZWFzZTI0LW1haW50Cis0Njc2MCA1ZjE5NTQ0M2UwMGFhOTA5YzkwNWZkMTUxYzM5ZmNlNzhlZGQ4NDkyIGxlZ2FjeS10cnVuaworNDY3NjIgNGU3OThjYWEwODJlNWNkZDEyYTJkN2UxZjcyZmNlZTFiN2JjYzA1OSBsZWdhY3ktdHJ1bmsKKzQ2NzYzIGMyMDM4NDA1N2EwNmMyN2I3MzYyNTVhMGI4MmI4NGQxOWRhNTY1OTQgbGVnYWN5LXRydW5rCis0Njc2NCBjM2M1MmYxNTk5OTlhZTk0NjBhZmRkYjRkNjM3Y2MxMjIxZjkwZmE5IGxlZ2FjeS10cnVuaworNDY3NjUgZWNhNGZlMTMyOTQwYmQzYzUyYWE2ZGIxMTBlODllYjQyMzU2MTJjMyBsZWdhY3ktdHJ1bmsKKzQ2NzY2IDJlYTI2M2I2Mjg5NzJlNDUyNzNmZDlmZGViOGJlMWVlOTY2NWI2MjQgbGVnYWN5LXRydW5rCis0Njc2NyBkZWJjOGQ3ODNmODY5ZTVhOGM4YTcyOThmNzI0MGNhYzFjZjlhMjc3IGxlZ2FjeS10cnVuaworNDY3NjkgMGExYmFkMzJhYmZlMzlkOWEwZGMwYmIyNmNjNGM1MGY1NmViODBlMSBsZWdhY3ktdHJ1bmsKKzQ2NzczIDY3ZjQzMGQ5MmIzOGU1Y2E0NGMyMmM3NjNhNmY0MzE3ZjlhZmY4MzQgbGVnYWN5LXRydW5rCis0Njc3NiA0NjU5OWZjNDg2ZThmZGFhZjIxZjhiYjgzYjlhODhiNGRmMjA0ZjA1IHJlbGVhc2UyNC1tYWludAorNDY3NzcgYzU3MzIxYzg0MjI2YzkxNjc5NmE4ZWQ1YzA3ZWMzYjVlZDE2YjI2ZSByZWxlYXNlMjQtbWFpbnQKKzQ2Nzc4IDc3YjY1ODlmYWRiOTdkODVlMGM2NDVjODE1Yzk4OWYzNGU1NTY0YmYgbGVnYWN5LXRydW5rCis0Njc3OSA0ZWYxYzY4NWJjYmRjZTQ0NDNiMzI4YWUwN2M5Nzc3MDM5ZmYzMGY1IGxlZ2FjeS10cnVuaworNDY3ODMgMDVhNDljODk4NWZiMDlmNDc1YzdhMmE5ZjQzYjlkMTgzYTk2OTk3NiBsZWdhY3ktdHJ1bmsKKzQ2Nzg0IGFjMjVlZWU5MDI1NDE3NTEyMWJjZWExNTc2MzVlOWVkZjFmOTJkNzYgbGVnYWN5LXRydW5rCis0Njc4NSA3MmUzN2FkYTQxNzA3MmZiMWExMzAzMDhjZThlMzBlM2YwYjdhY2FjIGxlZ2FjeS10cnVuaworNDY3ODcgNzBhYWMyYjkzZTA5YTNhNDg5MDBiMjViZDNiYzhkNWJiZWNlYzIwZCBsZWdhY3ktdHJ1bmsKKzQ2NzkyIDZlOGQ5OTcxODE3MDBkNDFjMjIzMjZmY2QzNDk4MjhlNmMxY2I5ODcgbGVnYWN5LXRydW5rCis0Njc5NCAxMzVkMTU4NmIzNWQ1NGJhYzgxZDcxZmE0NmUyZDZhNzk4NDgyMzljIGxlZ2FjeS10cnVuaworNDY3OTUgMWNhZmJjZDdmNTVjY2NhOTFjNDA4NWIxZjVhNmVhNWFmOWFmMmFlNSBsZWdhY3ktdHJ1bmsKKzQ2Nzk4IDc2YWQxMThmZmUzYjVmODU2Mjg2NzU5ZjBlZGM3NTNkNDhlZjdiNDggbGVnYWN5LXRydW5rCis0Njc5OSA1YTc0MTkzNDI5ZjA2NGUxMjVkZTkzNjJjYzE4NjM2NDRkOGJhNDJhIGxlZ2FjeS10cnVuaworNDY4MDAgMDdmMjQxOTdiODdjZDcwZDIxMTY4YWYxYTExNGM1ZjM2Y2FjZmM0MCBsZWdhY3ktdHJ1bmsKKzQ2ODAxIDI2YTk3ZTViZGYyMTIxNTExMDNhN2I4MzBhNDUzN2VhMTc0NjkxYTEgbGVnYWN5LXRydW5rCis0NjgwMyBiMTI5YTUwMjcxYWRmZWM3OTIwNjIzNmNjMmVjNTM5NDRiZWZjZTU0IGxlZ2FjeS10cnVuaworNDY4MDQgMTgyOGFmNWRjYzk5NDRhMmY3ODU1YjdmY2IxNjg2NGI3OGIzYmE5ZCBsZWdhY3ktdHJ1bmsKKzQ2ODA1IGJhNmVlYmY3YzcxOWRmYjU4YTVlMzk1NGE4Y2U1YjI0YmZhMzg5MDkgbGVnYWN5LXRydW5rCis0NjgwNiAxNmM3OThlOGVhZTMyN2I4NWE0NjBjYmJhMWNlYmZiNDQxOTc2MzkwIGxlZ2FjeS10cnVuaworNDY4MDcgNDkzZmI1Nzc5MzJmMmQ4ODMxYTQzYjUzMTljNGVjOTdmMjhhMTdlOSByZWxlYXNlMjQtbWFpbnQKKzQ2ODA4IDQyZmU2ZGUyNDYwMmZkNDBmNDJlMzkzZWQxMzQ0MWNmNTQ5YTNlZTcgbGVnYWN5LXRydW5rCis0NjgwOSBhZDVkNDczNWJlZGM4NDZjNmFlZjIxYzEwMmVjZGJjY2NlYTVjMzIxIHJlbGVhc2UyNC1tYWludAorNDY4MTIgNjc0NTBkYjI2ZjgxNjdlNzhiYmMzZTA1MDk3MDgxNDdkNTU3Y2JlNSBsZWdhY3ktdHJ1bmsKKzQ2ODEzIGUxNWZhZmE0MTA3ZDIwZDZiMGQ0MTlkZmI3YmYzZGQ5YjJkZTg1YzMgcmVsZWFzZTI0LW1haW50Cis0NjgxNCAwOGIyNGM4OGQ1MTkwMTBmNTEzM2I4Mzk0Mzg3YzEyNzZlNDg0ZjVlIHJlbGVhc2UyNC1tYWludAorNDY4MTUgZTdkMDg0Y2Y2NWJiOWI0MDg0MGNlZTkzM2RhZjFiYmM1NTBiYTQzOCByZWxlYXNlMjQtbWFpbnQKKzQ2ODE2IDQ1NGFhMGVjMGViN2IzYTZjYjM0MWNjMjEwMzA0NmEzMjQzYWI2ZTEgcmVsZWFzZTI0LW1haW50Cis0NjgxNyA4MjMzMWYxMWExNTYwYmZlM2NlZjQxOTgxYmJhOTRhNGQ1ZmRlMGVjIGxlZ2FjeS10cnVuaworNDY4MTggZTJkMmRjNTA2NTI4Nzc5YmJkMjVkNjk1MDI0MWFkZDEzM2E3NjBhMCBsZWdhY3ktdHJ1bmsKKzQ2ODE5IDQyODA4NTI2NTExYzliYjQ5MjBiMWUxMDcyMjFmOGVhZDE3M2VmZjYgbGVnYWN5LXRydW5rCis0NjgyMCBiMjNlZWI4MDI3ODA1MjNiNjU0OTZlNGJiZjVlYTZjODI2MmIzZWE2IGxlZ2FjeS10cnVuaworNDY4MjEgMzEyNTA5OWIzNDk3MWMzMGM3Njk3ODNlZDM5MDBhNmU1MWNlYTIxNiBsZWdhY3ktdHJ1bmsKKzQ2ODIyIDJkZDE5NzAxNDYxMjJhZGVjZWM4NzY5MjZkMjQ4YjU1MjY1YWFlODEgcmVsZWFzZTI0LW1haW50Cis0NjgyNCBhYTVhMWJjYTI4ZGQ4OGNjYzJkZWMxNGI1OWU0M2E0ZDgxZTY3MGY4IGxlZ2FjeS10cnVuaworNDY4MjUgY2Q1ZjJjNWJhYjY1M2I1NTczNmU3NzNlYWUzODVhYjQzMmMyZjhkMSBsZWdhY3ktdHJ1bmsKKzQ2ODI2IDUzOGNmMTg4ZjhhNmNiYzIyMDhhNTIyNjJlYjlhYmRiOWYyNjA2NDEgbGVnYWN5LXRydW5rCis0NjgyNyBiYzA5MTE4MWI4NDEzOTU1MDdhNzc4MDIxZjQ1OTVmMWIxZTRiMjRjIGxlZ2FjeS10cnVuaworNDY4MjggMDE0MjUzNmI1MmI2NGIzYTgzNmE2Mjc4MDc3ZjZmMDViY2U0YmMxOSByZWxlYXNlMjQtbWFpbnQKKzQ2ODI5IGM1YWZkNDQwYTRkMDlkMGRlMGM3NzM3ZTUzNzFjZDJkMzVlNzJlN2IgcmVsZWFzZTI0LW1haW50Cis0NjgzMSA5MjQ0MGRlODY4ZTkzZmVmMTNiMzM4M2JlOWNjNTEwZTk3ZmI0ZGZjIGxlZ2FjeS10cnVuaworNDY4MzQgYTFkZDI1ZWMyZjViYzY2NTU4YzMzODlkYWI1NWIwYmYzMTJlNzk4NyBsZWdhY3ktdHJ1bmsKKzQ2ODM1IDczNjY1ZjZmZWMzMTVhZWNmMzBkY2Y3ZTMxYWY0NjhmZmE3ZDliNDUgbGVnYWN5LXRydW5rCis0NjgzNyA3YjMxOGU5NmY4MGFhOTQ4ZGFhNDBmMWNhMDcxZTk5ZTFiM2EyY2U4IGxlZ2FjeS10cnVuaworNDY4MzggYjhmMjI4NTFjMWZmMWU1OTkyNGM1ZTdiMjY1ODBiOTNhOTAyNjU1NiBsZWdhY3ktdHJ1bmsKKzQ2ODM5IDBiM2ZlMmI3MzRhMWRmZjE0MDY1NWYxM2MzMGM4M2RiNTUzNmU2NDcgbGVnYWN5LXRydW5rCis0Njg0MCBiZjRlNDg1YmVjZjM3NzYyMmIwZmMyYmFlOWUyZWJlZTdjMmNkMzBlIGxlZ2FjeS10cnVuaworNDY4NDEgMTk1YTBkM2VlY2Q0NWViNzQzYWIyMDRiZjhhMmU2MzA3YTFlNjM4NCByZWxlYXNlMjQtbWFpbnQKKzQ2ODQ0IDlkODQ3OGY3MzJkNWFkYzkxZjFjN2RjOGNiMjk5NDBlZmYxYjQ3N2MgbGVnYWN5LXRydW5rCis0Njg1MCA5YTk0NDY3NjczMmE3ZGIwZTQwYmI2NWM4ZGVmNjY1YzMzMjgyODljIGxlZ2FjeS10cnVuaworNDY4NTEgZTgwMDk3YmY3M2I2MGZhZDhlN2YxNDBmMzAzNjVkMTM1NjNhZWNjZiBsZWdhY3ktdHJ1bmsKKzQ2ODUyIGU2MTU3NTVjYTg3MjVmYjBiOWY4ZmNkNzE1Y2NkZDM5Y2I1NmViY2IgbGVnYWN5LXRydW5rCis0Njg1MyAwYThhMzkyZTFmYWVjZjMwZjgxMzUzZTgzMTcyNTBkMzkzOGI1NmQ3IGxlZ2FjeS10cnVuaworNDY4NTQgYWYxNzQyYTgwNDllYzc4ODZlODRkNTEwNWVlZjg5M2ZjMjBmNGIwZCBsZWdhY3ktdHJ1bmsKKzQ2ODU1IDUwMWVlMmEwNWZlYzRiOGZkMGRmNWI2YzI4OGVhYjcyYjM1ZDhlZTkgbGVnYWN5LXRydW5rCis0Njg1NiBhZGYyMDg5MmQ4Y2ZiYzBjZWZmZGM5N2JkYjE3N2YxYWFjOTkzYWJlIGxlZ2FjeS10cnVuaworNDY4NTcgNDkwMjZhZjlkMWQ3OWM0MWEwYTdhYTY0YjJmZWJkYmQxMzQ1M2ZhNCBsZWdhY3ktdHJ1bmsKKzQ2ODU4IGU4NDY0YWZlZjRhNDFhYTlhN2IyZjYxNWMwY2MzMWI4ODBkNzBjYmUgbGVnYWN5LXRydW5rCis0Njg1OSAxYjNiNmIxOTgyYWFjZDAzMTQ4ODhlZmZiODFiYmVkNWM2NTE2NzM2IGxlZ2FjeS10cnVuaworNDY4NjAgYWIyNTNjZDQ5N2QyMTM3NjczMDJiYmViNmEyNWY4OGEyYzAwMDRhOCBsZWdhY3ktdHJ1bmsKKzQ2ODYxIGZjNGFmZWU0MGMyYjNiODU4YTk1OTc0YmMzNDE3ODUxOTM3Mzc1YWEgbGVnYWN5LXRydW5rCis0Njg2MiBhNzg5MzkwZDhlYTdlZGRlN2QwNjM0ZTdjYWE4NDU1YWI3YTg5NGMwIGxlZ2FjeS10cnVuaworNDY4NjMgYjUwYWIyODhhZTI3ZmY0ODk1NzBiZTMxYjg2YTMzNjhjMzg5MWRmNyBsZWdhY3ktdHJ1bmsKKzQ2ODY0IGQ2N2RlZDdhMjkxNGU0Y2YzZjljMTVhMTgyNDcwYWI0MzFhZGUwZjYgbGVnYWN5LXRydW5rCis0Njg2NSBmY2ExZTQyNGQwMjM4Zjg5NTJiMDg4M2Y3ZWI5Yzc3NDQ1NGQ5OTBmIGxlZ2FjeS10cnVuaworNDY4NjYgY2JmMjcyZjQ3OWQxMDdiMzIzZWNhNDA2Mzk2MzJhMDk5ZDg4OTYyZCBsZWdhY3ktdHJ1bmsKKzQ2ODY3IDVhOTk0ZDI2YTNjZjg5NGJhOWExNmVhODg1ZmEwYjdmYzA1YTk5NjUgbGVnYWN5LXRydW5rCis0Njg2OCAwYWNjNTJkM2ZiZjFmNDM1YTNmYzNiZTdiMmJlZTE4N2I3OWY4YzhiIGxlZ2FjeS10cnVuaworNDY4NjkgZTZjODAwYTQ2M2IxMzEyOWQzYzcxODAyY2FhNWQ0MzdkMzE2MWZmOCBsZWdhY3ktdHJ1bmsKKzQ2ODcwIDhiYTk3Y2NiZjkzYTgzZjZlNmJmYTgwNjJlNWRiYmViYmU4NTYwNzIgbGVnYWN5LXRydW5rCis0Njg3MSA2NmNiY2NlNDIyNzhmMjJkMjE0YjY4YTZlYjJlZmVjNzU5ODkzYTVlIGxlZ2FjeS10cnVuaworNDY4NzIgMWZhNzhmZDFlOTMzOTE0NzRmYzg5NTMxNzA5NmU4NWUyZTQ0NzJkMSBsZWdhY3ktdHJ1bmsKKzQ2ODczIDYwZDc5YTJiYzk5N2U4Y2MwYzMzMDQwOGUzMTczMTJiM2I3Yzk5MTIgbGVnYWN5LXRydW5rCis0Njg3NCAxYTExYTRhNDlmYjg1YTNmOTZmNGUzNGYyNzBiZmIwZmRiMDc5NDVmIGxlZ2FjeS10cnVuaworNDY4NzUgM2VlZTdiZDlhMGQwNzJiNDNiZGM2ZWQ3MGM3Zjc1MGUyNDlhNmQzNCBsZWdhY3ktdHJ1bmsKKzQ2ODc2IDQxNTcwZjA5OWE0YzNlNjUxZjZiMmQ1N2Q3OWMwOWI2NzA3NjZjMWMgbGVnYWN5LXRydW5rCis0Njg3NyA5MmQ4Y2RjNGI5MGMwMmM0ZDE3NWZhNmE0NzBhNzM3OTg1MTI2NDA0IGxlZ2FjeS10cnVuaworNDY4NzggZjE0YWI3MGMzMjBlNDhmZDJiNTJlMzFmYzdhODdiYzI1MDcwNWU2ZiBsZWdhY3ktdHJ1bmsKKzQ2ODc5IDY5ZTg5YzI5MDQ0ZTJiZGQwZmI5Yjc1NTNiMGY5YjVmOTMyZmE3NzggbGVnYWN5LXRydW5rCis0Njg4MCA0N2Q4ZDE5Y2NhZGM3MDUyYmE4YzJiNTI0NjlhMDFlYzUzMDdiNGM5IGxlZ2FjeS10cnVuaworNDY4ODEgNzk5ODNjZjYzNGMwMjVhYjRhNWU3MWVlODdkN2M5OGYzNDgwZThiMCBsZWdhY3ktdHJ1bmsKKzQ2ODgyIDQ2ZjNlYjQ3NGM4NDJkMGIwMGFlOTI5MWNiMzU3Zjc2MTFlMjlhNGEgbGVnYWN5LXRydW5rCis0Njg4MyBhOTFlNzM5Y2UzMzMyNWZhNGFhZjEwMDI0ZmNkOGEzODg3M2QwOTZlIGxlZ2FjeS10cnVuaworNDY4ODQgMTg5MzA0YzlkMDdlYWRhNGNkNGMyMTkxNzJhYjVlZTU5MGMyZjQ5MCBsZWdhY3ktdHJ1bmsKKzQ2ODg1IDJhYjAzOTRlNmU0OWI0ZjM1M2I4NmIwM2NlZjk2M2Q1YTUzZTZlZDYgbGVnYWN5LXRydW5rCis0Njg4NiA2MThkMDg4ZDk2Njg5Y2Y3ZGRhZTc4M2UyYzRjOGY5Mzg0Y2JiY2NkIGxlZ2FjeS10cnVuaworNDY4ODcgMWRhODQ1NmViZDQ4NzE5YTRlYmQ3ODdlNGZiYjM1NjVjMzAzMDkxNSBsZWdhY3ktdHJ1bmsKKzQ2ODg4IGQ1NzcxYTM4OWI4ZWI3YTk4NTc4Y2Q4MDVlZGQzZTEyNjBmZDUzZDkgbGVnYWN5LXRydW5rCis0Njg4OSAxNzAzZWZkYTU3NzQyZDE4MWJlMDQ1ZjIwNzA4ZDY1ZDkyZGI5OWQxIGxlZ2FjeS10cnVuaworNDY4OTAgNTE3MzJlODFjNzk2MTQ2N2Y2ODMyZWI2ZmI4YzAzYTg3ZTNjZjM4ZiBsZWdhY3ktdHJ1bmsKKzQ2ODkxIDhmZTM3M2ZiMjFkNDMwYzRhNjRlYjQ1NGQwMWVjYmQyZGZiNWI5NDYgbGVnYWN5LXRydW5rCis0Njg5MiA5NzFhYmYzYWVjZjQxMTU4Y2M3MGMxZGI3OTNkMTQ1NGYxNWFkZTE4IGxlZ2FjeS10cnVuaworNDY4OTMgOTdiNjFkNmY2Yjc2ODE2MjA0N2E5YzY0ODYxYTE3YzUwYzUzMzgzNiBsZWdhY3ktdHJ1bmsKKzQ2ODk0IDRjNzRlYzgzMWE2YzNiZmVlM2Y4NDQ5M2ZjODBiYjliYjc2ZWI0MmQgbGVnYWN5LXRydW5rCis0Njg5OSAzODFhNzJhYjVmYjgzOTRhMmQzZWEyOGJkNzBjMTAwZDYzNmM3ZDFhIGxlZ2FjeS10cnVuaworNDY5MDEgYzg2MTg0NzNjZGM2ZTgxNmI2OWNiMGNhZTBjOGE1NDkyZDBkMzJkYiBsZWdhY3ktdHJ1bmsKKzQ2OTAyIDUxZjMzNDJiNzBkM2NmYTczOWVkMjBmZGY3ZDQ0NWUwYzIyYzY0MzIgbGVnYWN5LXRydW5rCis0NjkwMyA3NjVmYjFjY2MzZDg5NGRiZGIxYWRhOTFkM2ZlOTQzNjhiNjI2ZGM3IGxlZ2FjeS10cnVuaworNDY5MDUgOWI4NTA3Y2ZiZTk1MDEwNTlmMjc3MGZjZWQyOTVkMWM5YjdhN2JkYiBsZWdhY3ktdHJ1bmsKKzQ2OTA2IGE0NTUyZjA4ZDUzYjM0MjczZWY0Y2M0NDY1Nzk1OGU3NDU5M2YxODcgbGVnYWN5LXRydW5rCis0NjkwOCA5YzUyZWZjYWZmNjUxZGVlODU5MjEzN2Y5OWM3ZjNjNzM3NDU0Mjk1IGxlZ2FjeS10cnVuaworNDY5MDkgNzBiMTY2Y2ExYzQ5ZTIzNzg4NTUyMmU4MjRkODBmYTlkZThkNGY0ZCBsZWdhY3ktdHJ1bmsKKzQ2OTEwIDkxNGRhMTAzNmVlZDVkYjZiMDY4YTZjODA4ZWE4Y2ZjZDMyZTc1NmMgbGVnYWN5LXRydW5rCis0NjkxMSA5MzY0MjllMTBiODc5NmViNmJlYzMxYWZkMzA5NTBlMjQ5Mjk0YmIyIGxlZ2FjeS10cnVuaworNDY5MTIgZWEzNzIzYjJkNDZiZDE3ODA0Njg0YmJhZDI4ODExZTEwYmU2NzYwYiBsZWdhY3ktdHJ1bmsKKzQ2OTEzIDY0NTYwOTJjMTIzNWExNzAxYTc2NGE3Y2VkZjk2N2JkNDQyMWJiZmUgbGVnYWN5LXRydW5rCis0NjkxNCBlMWIxODQ3OWNlOTMwN2QzZjVmYTgxMjQ5MTBhNTNkNGQ4OGMzY2M5IGFpbWFjaW50eXJlLXNmMTQ1NDQ4MQorNDY5MTUgOTgxMjJkMjE3NmYxNDBhMWY1MDI3N2Y5MzI3ZjIyNjI1OTk1ZDdhMiBsZWdhY3ktdHJ1bmsKKzQ2OTE2IDVkYjFmYTZlOTY4MTgzNWY1MmQwY2M5NzRmODQxODVlOGRkMjk2MGYgYWltYWNpbnR5cmUtc2YxNDU0NDgxCis0NjkxNyA5OTIxMjZhMjllMGZkMzhkNGRmYzA0ZGQ3MTQxMGExMWZlMGExZDUxIGxlZ2FjeS10cnVuaworNDY5MTggNGU3NGRmOTU5NTE4YTRiNzM4M2M2ZWQ0ZWNjZDY2NmEyNGRmMTIzZiBhaW1hY2ludHlyZS1zZjE0NTQ0ODEKKzQ2OTE5IGY3ZDIzYmNhNTk5ZmViY2JkMWU0ZTE5YzEwMWZlODFmMWQzYjRlYzYgbGVnYWN5LXRydW5rCis0NjkyMCBhNzE0ZjJmMTNlMjVmMjI3MDRmMTdhYTE4MjQ0MGJlNTU0OWEyNzRlIGxlZ2FjeS10cnVuaworNDY5MjEgM2U5NmU1MDI1ZDlmN2FhZTRiMDRmMzY1Nzg2Y2M1NzZkYTUyMTlhZSBsZWdhY3ktdHJ1bmsKKzQ2OTIzIDZmMmYxOGY4NjM4NzQzZDQ5YWQ0N2QxMjkxZTQ2YTVlYTJhNWJjNTYgbGVnYWN5LXRydW5rCis0NjkyNCA2ZjMwNjExZjI4M2RjYmU3MmVmNzYwOTA2ZjcwNWYxODNiZWY0Nzk3IGxlZ2FjeS10cnVuaworNDY5MjUgNWQ2MjJlNDgzZmNjZmE2MmRmNTdiNDRjMzQ0OTNlMWMzMjU2ODk2OCBsZWdhY3ktdHJ1bmsKKzQ2OTI2IDUxMjUwNzY2ZDZmNWQyNTEzMjAyMDg2YjZmY2I5NGI4NTJjMWFlNzQgYWltYWNpbnR5cmUtc2YxNDU0NDgxCis0NjkyNyBiYjFmMDJlOTcxMWRhNWY1M2VhZDI3YjcyMjNmNWM0YWEwNGJhYTA0IGxlZ2FjeS10cnVuaworNDY5MjggMjE2NzEwNTEyM2U0NDc4YmFhYzc1M2MxNDk2NDdhYmQ5OWJiNDlhZiBsZWdhY3ktdHJ1bmsKKzQ2OTI5IDZlMGMwYzdjZjA2ODlhZDQ4MGNjNWVmZTE3MmE1ZmQyMGVhOWM0YjMgbGVnYWN5LXRydW5rCis0NjkzMCA3MGMyZWZhMDAwMDc4ZjI5YzRkY2VkMjVmMjY5OTUxYzUyYzhmMjNkIGxlZ2FjeS10cnVuaworNDY5MzEgYTI0OTBmNzkzMWQzMTEzOWViNWQ3ZGZlYjIwZjRjYTk5MWI0ODI3ZCBsZWdhY3ktdHJ1bmsKKzQ2OTMyIGJiNjg0YTBjMjJkOTYzNGEwY2YwYzM3NjFiMGY2ODlmOTZmMjk0NzYgbGVnYWN5LXRydW5rCis0NjkzMyA3NGJmNTczYmZmNGMzNWU3YTg1ZTI5ZTg1MTE4YWFjMjIyZGExYzI5IGxlZ2FjeS10cnVuaworNDY5MzQgMGE1Y2YyNTk0NWUyYjY3NWNkNTJkZGExOWMwOTRkM2YyYTVhYjgxYiByZWxlYXNlMjQtbWFpbnQKKzQ2OTM2IDNlNWZkMmI3MGU1YTcwZDVlNTcxMzk0ZmYxNTIxYzMxNGY3NjRkOWMgbGVnYWN5LXRydW5rCis0NjkzNyBlY2U4YTY3NTFkYjc0ODhiN2I4MDdmNmUzMTgxODcwNzk2N2UyZWUzIGxlZ2FjeS10cnVuaworNDY5MzggNmY3ZTY0YjcyYTU4NzllYTZjZGM4MDE1MjZmY2U3ZmUxMjhlN2Q1MyBsZWdhY3ktdHJ1bmsKKzQ2OTM5IDQ1NTg5MTZiODQxZjFjZmE3ODI5OTE5ZDczYzViMmQ1OGJkMGI3NGIgbGVnYWN5LXRydW5rCis0Njk0MCA2MmNmNmQ1OGJiNTNmYjZiZGVhYTA3MGE1NWJlNTRjNmU1MTdlNWI5IGxlZ2FjeS10cnVuaworNDY5NDEgNTc5NmFjZmJiNmRhMTY3ODRiZDgyMTE2NTBiZmMwNGE1YzkwZmUyNCBsZWdhY3ktdHJ1bmsKKzQ2OTQyIGI3YTM2MjBkM2RiYjc2NzA1ZDI5NzJmNjNhNDQ2Y2Y0MzFjOWI0ODMgbGVnYWN5LXRydW5rCis0Njk0MyA2ZDgwNzZkMzgwNTk3YTY2OWRmNGMxMmEyMWFjN2ZhZWE1ZmUzMGVkIGxlZ2FjeS10cnVuaworNDY5NDQgZDg1N2EzMjA3NWQ0YmVjMDcxMjk4M2MzYTNjMzljZGVkYmIxYzE4MyBsZWdhY3ktdHJ1bmsKKzQ2OTQ1IDU0OWM1NDc3MDBhZjg3MjVlNTA0ZWJkYzA5NWQxNTg1ZjdkZDE5NWUgbGVnYWN5LXRydW5rCis0Njk0NiAwNjlmZjNhNzA2OTQxMDRhNDNmMWM2MWY0OTFmYjZkYWNjMjRiM2VhIGxlZ2FjeS10cnVuaworNDY5NDcgYzk1OWRlNjRhOGRhMTg3ZTFlZTg3ZTE3NjM4MDBjOTc0NjUyOTA0ZSByZWxlYXNlMjQtbWFpbnQKKzQ2OTQ4IDQzNzdiMTdkZGIyY2ZlNTAzZGFiODJjNWU3NDhlM2NjMjY5YjZlNGQgbGVnYWN5LXRydW5rCis0Njk0OSAwNjkwNjI4NTkyOThjNTI0MmYxYzljNmI1OTY4NzM1MTQwNTU5NjYzIGxlZ2FjeS10cnVuaworNDY5NTAgYzUyMGVlY2UwMWIwMzk2ODRiNWM4MmI3YTdhNTljN2FlYzhkNGNiMyByZWxlYXNlMjQtbWFpbnQKKzQ2OTUxIGQ2ODc3ODM1NzkxZDdjNjQyYTNkZjA5MmE1Yzg2ZDk0Njc1ZTY3OTYgbGVnYWN5LXRydW5rCis0Njk1MiBiN2Y0YmE2MDFkZjk3YWY3Y2U1YzNhY2MzNWYyMjAwYWNmZDFiMDQ4IGxlZ2FjeS10cnVuaworNDY5NTMgOTE3YmVlYTU1NTk1ZDliYjA2NTBlMGNhOTc1ODRkYzY5ZDZhYmZmYyByZWxlYXNlMjQtbWFpbnQKKzQ2OTU0IDE2ZTA1YzYwNjI3NWViODhmZjVlODM3ZDhiOWI3YzhiNzcyNWFlOTkgbGVnYWN5LXRydW5rCis0Njk1NSBkMWFlYzdiNGRiYjg2OTNmNDM4OTJmZjdhNmFiMTgxMmUyNjFjNWY1IGxlZ2FjeS10cnVuaworNDY5NTYgMDNjMDVjYWI1ZjIxMjc3YTllMWIxOWJmN2NkYjQ4YTVlOGRjNmE0NSByZWxlYXNlMjQtbWFpbnQKKzQ2OTU3IDBmNzZhNTZkNTA2Y2MyMDBjOTQyZGI0OWFhZTEwMWFhYWMwMWRlMzcgbGVnYWN5LXRydW5rCis0Njk1OCAwY2YyZWIzY2M1MGE3M2I2ZTc0NjI0ODM2N2QxNjhkNmQwZTlkNDc1IGxlZ2FjeS10cnVuaworNDY5NTkgODY4MDg1M2U5ZWU0MDk3NjNmZTE4ZDBjMzFmMDhiNDI1ZThkYWVlYyBsZWdhY3ktdHJ1bmsKKzQ2OTYxIGQxNWRmMDJkYjFjYzEzZjdhYzQ0MThhNDhhMTNmOTRjN2E1MmIwZTEgbGVnYWN5LXRydW5rCis0Njk2MiBkN2JjNjQ3MGU4MzgzNWNiZGUwZjIyNzZmZGYzZDQyNDI4MTJjZGZhIGxlZ2FjeS10cnVuaworNDY5NjMgMzJhZGFhZDU5ZmIzN2Q3OWFiMzU5OTU0MjExODI1ZjE2YzA5N2NhMiBsZWdhY3ktdHJ1bmsKKzQ2OTY0IDBhOGI4NTFiMDM3NTIyOWViZWUwNjNkNjEzYzFjZTZjODE5ZmMwNzQgbGVnYWN5LXRydW5rCis0Njk2NSA3N2IwMWM5MzMzMDg4YWZhNmU0YzFkNDdjNDIxODMzMzgyNWMwODA3IGxlZ2FjeS10cnVuaworNDY5NjYgYTlmOWI1MDc1YmMwY2YwM2NlY2JlYzk1ZDM5MWQ1ZmJiY2Y1MWQ1YyBsZWdhY3ktdHJ1bmsKKzQ2OTY3IGZkNDEyYTAwYTA3ZGY0NTljMmFjMzQ5MDI0MjE5NTMwNDllYzIzODMgbGVnYWN5LXRydW5rCis0Njk2OCBkNGIxZjlhMzFjMjk2OTg1MDMzM2QyNWQ1ZTRmYjQ2MjViMDc2MTE1IGxlZ2FjeS10cnVuaworNDY5NjkgOTkzN2YwOWQ3NmUzYTBkZThhZGZiOTQ2NWMzYWNjYmUyNTg2NWJkZSBsZWdhY3ktdHJ1bmsKKzQ2OTcwIDc5M2YwMjY5OTNiYjI5ZDZjYzkxNTkyNjUzMjlmMjA2ZWQ2NzBiZWMgbGVnYWN5LXRydW5rCis0Njk3MSAzYjY1ZWVmYmFmNzZlM2RiZDBmYzdkYThhMmIxYzI3MDI5ODg3ZTRkIGxlZ2FjeS10cnVuaworNDY5NzIgMzRiNjk3MDQxMTkxYWU3MWUyNjg3YjQ2NWU3NTM0ZmFhZWI1NzRkNCBsZWdhY3ktdHJ1bmsKKzQ2OTc0IGM3N2JlNWM0MDYzYjMxZTRiODdiZDdmM2I2NjlhOGUyNWYzYjU1YTUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis0Njk3NiA5OTM4Nzc3NGViMWRkYTExOGUyODdmNmIwMTE4ZWU1YTViNmE1Mzg2IGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNDY5NzcgNTRkZjM1ZTljNjk4YTdmOGQ4NWJiMWVjYmZhMGEzYzcyYzU0Yjk1YSBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzQ2OTc4IDllNDgyODAwMGNmYTkyOGJhMTE5ZDBmNWRmMWZkYTNjMTY3ZDNlNDUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis0Njk3OSA3ZGJiZTc4NmZkY2QyM2RmYTc5YjhhNWMwMzgwNWZlYzQ1NGNjNjliIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNDY5ODAgMzczMDQzYTFiZGZiYjg1MDFlOTQ1Y2Y5NDY2MTA1NjNiMDQ0Y2VhNCBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzQ2OTgxIDkyZWI2ZWQwM2MyZTFjYzg1MDEyMjg0ODU4ODRmMDg2N2E3YjBlN2UgbGVnYWN5LXRydW5rCis0Njk4MiBjYWNkNDdhNjFlNzk2ZGZiMzY3NDQxN2Q0MDI1Y2IzNzM5ZjEwMTRhIGxlZ2FjeS10cnVuaworNDY5ODMgMWY5NDdmMTM0MWQxOTQ3YjMyYWJkZjA5MmQxOGVjZWNhNDg2YmYwOSBsZWdhY3ktdHJ1bmsKKzQ2OTg0IDlhOWQ1NzgyZTQzNjdiOWEwMThkYzZmNDI5Mzc5ZTUwOWRlNTQwNmYgbGVnYWN5LXRydW5rCis0Njk4OSA5ZTgyN2ZkODMxZDc3Yzg0OGY3NjRhYWVjYmFmYjAwZWUwYjgzYWYxIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNDY5OTAgYjVlZmEyM2NjOTQ4OGQ3YWQzNjZhZmRiMDBmNjQ3MmRlZjYyOTZjZiBsZWdhY3ktdHJ1bmsKKzQ2OTkxIGU3NmI2ZjNhNDQxOTM5MzUwMjQzOTNkMDUxYmIzODEwYzdlOTJlZDEgbGVnYWN5LXRydW5rCis0Njk5MiA2YjRkYTRlZTcxNDZlYjkwNjZiYjllOGNjZGY4YjZmZGJhNzRjMjdmIGxlZ2FjeS10cnVuaworNDY5OTMgZTBjM2Y1YTQ0NDBmZDQzNDFiYzdkNDZlNDI1YTBlNTVkNzQyYjNhYSBsZWdhY3ktdHJ1bmsKKzQ2OTk1IDU1N2U2MjEyNmNiMWRjMjJlYjg1YjBlNTk2OTQxYTZlZGQwNjBlZTQgbGVnYWN5LXRydW5rCis0Njk5NiBiMmE0YmU0NzM3MjgyMzAwYzRmMGY1NTU3ZGY1NmU1ZjViOTNkYThiIGxlZ2FjeS10cnVuaworNDY5OTggOGE1MGQ4ZTkwMThjODQ3OTU3MDBhZWQ4ZDlhN2Q4YzI4MzkyZjJhMyBsZWdhY3ktdHJ1bmsKKzQ2OTk5IGY2ZGM1NWQzMmY3MDJjZTA5Y2U2NDhlNGJhMjhhMWIyZTI0YmNmZTggbGVnYWN5LXRydW5rCis0NzAwMCBhZmY2NjI5ZDFkMWM0MTFmZmY0NjQyY2ExZDE5Mjk5YjlmNGM4MzI4IGxlZ2FjeS10cnVuaworNDcwMDMgMDNjZjVkZDdjOTA2MTViZjg3ZmZkOGVkOTZlNzMyYThkZDI0NzA2OCBsZWdhY3ktdHJ1bmsKKzQ3MDA0IGEwYjA2MmZmMjkzOWM5MmViZTM3Y2ZiNWRhNzY4ZDc4YmNlNGJjMjkgcmVsZWFzZTI0LW1haW50Cis0NzAwNSBjNTAyNjcwMzkwODhlMDIwOTRkN2QyY2MzOTMzYWZjODAxZWNmMmZjIGxlZ2FjeS10cnVuaworNDcwMDYgMDI2NTBhNDdlZThiZTM5Mzg0MjY4ZmYzODNiMGVmOTk1MTM1NGMxMCByZWxlYXNlMjQtbWFpbnQKKzQ3MDA3IDk2ZTFiMGM4ZmY5YThkYTFhYTMzMzgyYzMxNzkzNTM0NTAxYzQ4YmYgbGVnYWN5LXRydW5rCis0NzAwOCAxMjU4ZTkzYmIxZDAwNTk0ZDRkMTAyYjdmNGMwMGQ3NzkyOTE4ZjhlIGxlZ2FjeS10cnVuaworNDcwMDkgNDg0ZDNkNWJhN2Y5YTVhYjAzMzAxZTRlMmJkNjVmZTA0NzY0ZWUzOSBsZWdhY3ktdHJ1bmsKKzQ3MDEwIGI5ZDE0NDBjMmRkMTYzMWQ0ZDA4NzYwN2NhOTQ3OWNlN2Q2OGQxY2UgbGVnYWN5LXRydW5rCis0NzAxMSA2YTdmMWYxMmVhYWY3ZDQ0ZThkM2M5MzM2ZTIzMWQxZjg0NDQ2YTAzIGxlZ2FjeS10cnVuaworNDcwMTIgNDExZDBhMzUzYTE1Yzg0ZmQ3ZTJiMGU1Y2ZhNjdjNjY2MjNjNmM5MSByZWxlYXNlMjQtbWFpbnQKKzQ3MDEzIDMwZDIzMzM4NTJkNTBmMDFkM2QzOGM5ZWUwNzg2MjZiMWI2OGY2NjggbGVnYWN5LXRydW5rCis0NzAxNCBhZDVhZGQ5ZTAzNjk2ZDNhYmRhZjE2YzAzMzFiZGY2NDUxMTU3Yzc3IGxlZ2FjeS10cnVuaworNDcwMTUgZjRiNDQxMjU2NDY3ODlmNTQ1OTEwOTE1ZDVkNWFmMDA4ODVlY2NmMSBsZWdhY3ktdHJ1bmsKKzQ3MDE2IDkzY2MzZmMyNTA5OTk5OWVhYTVlOGYyNjUyMjliZDI2MDM4OTkzZWMgbGVnYWN5LXRydW5rCis0NzAxNyBhM2M2MWM2NDhmYzgxOTRkYzc5NWJjNmMxNzliOGQ4Y2IyMDFiMzljIGxlZ2FjeS10cnVuaworNDcwMTggODA1ZjQxODgxZTI3MGUzODEyZjkxZDQ3MTllYjk2MDBjZDBiMzRjMSBsZWdhY3ktdHJ1bmsKKzQ3MDE5IDI4NDNiZjcwYTljZmQ0Zjk5ZTI2MzkzZmYzY2FhY2E2Njc3NmJlYmUgbGVnYWN5LXRydW5rCis0NzAyMCA2NzI5YzI3ZDAxZmU4ZGI5ZjE0NTJjYzhkNGYxNzBiZjRiN2ZiOThiIGxlZ2FjeS10cnVuaworNDcwMjEgMTE4YzY1MGUyYzliM2I0NGVkZDJjOGM2ZTg1MTA2MzM1Mjg4YzBhMiBsZWdhY3ktdHJ1bmsKKzQ3MDIyIDRhNzY2MDI0MDQzYWVlZTU5MmE2YzA5MzdkZTJkYjRiMTVhMGE2NzIgbGVnYWN5LXRydW5rCis0NzAyMyAwYjk1YTBhYWFhZWY5ODZhYjRlY2UzMTdjMTY3YTEyMmY4YTJjNjE1IGxlZ2FjeS10cnVuaworNDcwMjQgMGJmOWUzMDk5YzU3YmM3MzBmZGI2NWIxNmY1Yjk1YTU3ZTU2ZDViOCBsZWdhY3ktdHJ1bmsKKzQ3MDI1IGM2M2QyYjYyNjNiNThiNzIwNzEzN2I2NjQwMzViN2JmZTQ5YjkzYjQgbGVnYWN5LXRydW5rCis0NzAyNiA0ODMwZDYxNDdhYWYwOTk1MjRkN2M0YWJkMGJkYTY1OWY0MTEyZjZlIGxlZ2FjeS10cnVuaworNDcwMjcgYTc0NjIwNWY1OTc1OWM3MzI4ZDg5OGU3OGI4Y2RiZTk4MzQxYmMzMCBsZWdhY3ktdHJ1bmsKKzQ3MDI5IGYwODg1ZmUxNGQ0MmFlZWExZTc5Yjc0ODA2MTc3M2E1ZTI5YTU3MDcgbGVnYWN5LXRydW5rCis0NzAzMCA0MDhkMmE1OTZmOTkyMzQ1NmE3MmM2OTg4MDM2MGQ4NTljNzg0ODhhIGxlZ2FjeS10cnVuaworNDcwMzIgNWI5ODdkMjEyMzFiZmI2NTQ2NjIzNjAwYzM2NTQyMWE2ZDRmZWYwNSBsZWdhY3ktdHJ1bmsKKzQ3MDMzIGYxOWU4NzcyODFlNDkwMzcxMWYxNTc3ZmZlNjM2MDg2YzdjNzlkNzYgbGVnYWN5LXRydW5rCis0NzAzNCBkNDliMTk4ZjU0NWNkODJmYmY3MzVhMjI5NzljMzMyYjhhOTdlZWNiIGxlZ2FjeS10cnVuaworNDcwMzggNTIzNzVmMjAzMjQ0OGZlNDdiMDZlNTlhNjJjMjkwNTdiZThhYTBhOCBsZWdhY3ktdHJ1bmsKKzQ3MDM5IGY4NzE2Yjc2YTcxZWY3YTA3YTA3ZmQyODQ1ODVmYjFkMTg4Yzc0NzUgbGVnYWN5LXRydW5rCis0NzA0MCAzYWYzMzJmZmY1Mjc5YTdhZTU2NGM5ZmM0YWM5MzM4YmU2YjZlY2NiIGxlZ2FjeS10cnVuaworNDcwNDEgZmRjY2M2YjE0ZmFkNmVkYTU1OWJhYTI1Mzk2YzRhY2FmODc0YWI4MSBsZWdhY3ktdHJ1bmsKKzQ3MDQyIDI2ZTRiZjE5NWFlMjkyZmQ5ODk0MzFmMGYzMmFjNmQxNTljNDE0ZDIgbGVnYWN5LXRydW5rCis0NzA0MyBhM2JhMWEzN2I1Mzc0OGJmYTg0NDQ0YTBkYTljZDI1MWY2ZWU0YTA2IGxlZ2FjeS10cnVuaworNDcwNDQgODY4MTI2ZTNiY2Y2ZDAyYTU0ZmI4ODUxNDcyMWVhOGNhZTcxMjNhMCBsZWdhY3ktdHJ1bmsKKzQ3MDQ3IDRmZmZlNjc3ZjU1Mjk2Y2I3OWFiYmM0ZWMyYmEzODY3ZTg3ZGU2ODYgbGVnYWN5LXRydW5rCis0NzA0OSA3MDIzY2VkY2M1ZWQwNGE0NWI5OWNmN2Y4ZTVhM2ViMTdiMzI4MjNiIGxlZ2FjeS10cnVuaworNDcwNTMgMDUxY2MzOWE4MDA4NDMyN2RjMGFkY2JmZWE2OTkxZTJlZTQ1N2FiYiBsZWdhY3ktdHJ1bmsKKzQ3MDU0IDUzYjA0YzE5ZmU0MTZjY2E5MGQ4NjYyMjU3MDgwZjA5MDM3OGI4ZjcgbGVnYWN5LXRydW5rCis0NzA1NSA5YjBmOTQzMGNiY2JkYmI0OTY1YWM2MDI3MjNiYzQxZWYyYzA0MjgyIGxlZ2FjeS10cnVuaworNDcwNTYgMTQ5MWU1MmM4NTk3MGQyNTM4Yzg0MTdmMjllYzVlMGNhZmI1NjAxMCBsZWdhY3ktdHJ1bmsKKzQ3MDU3IGUzYWM3MzlkNDg4OTU1NWNmZDQ1ZThjOTZmYjY4ZDU5MjM0ZjI5NGIgbGVnYWN5LXRydW5rCis0NzA1OCBhNGRkNmIyMDliNjVhMmE2ZTg2YWZmMmFhMTliZjBiMDA0MTUzZTc4IGxlZ2FjeS10cnVuaworNDcwNTkgNjllZjIzZmNmNWY4M2YyYTFlNDAxMzhiOGZiNzZlNDRmY2MzMWRkMiBsZWdhY3ktdHJ1bmsKKzQ3MDYwIDE1MmVjMjJjNGU2OTVkYTExNmY4YjhlMWFiNTU2OTRkMTk0OTQzZWIgbGVnYWN5LXRydW5rCis0NzA2MSA1MDZjNzY4NDdlYzcxNjI1ZDZlMzQ5Y2VjMjU5ODE3ZjM5ZDIwNjE4IGxlZ2FjeS10cnVuaworNDcwNjIgM2NkZGU0NWE0NjhkNTliM2I3Yzk0ZjJjNGIzNjk5MzdlMGNhY2Q0NiByZWxlYXNlMjQtbWFpbnQKKzQ3MDY0IGNiNzIyNWU4NDgwNTZjYzA3ZjM1MTVkYTAyMjA5NzNlNTI5MDhiMjQgbGVnYWN5LXRydW5rCis0NzA2NSBhY2EzNmY3ZjNhZTg3Y2EwYTM3ODM4Y2UwNGI0ZTE5MGFlNTcwMDkxIGxlZ2FjeS10cnVuaworNDcwNjcgMDQxYWQwMDY4NTcwMTE2ZmNlYjQxZDNiMDQxMjE2MDBkNTczNDY1ZCBsZWdhY3ktdHJ1bmsKKzQ3MDY5IGViZWU1NTM5MzA4YWVlNzc5MjRhZDY1NThkOWIxMDNkMGExNmU5OTAgbGVnYWN5LXRydW5rCis0NzA3MCBhZWQ4MDk0NDMyMDUzZDE3NGYxZGE5MWE1Yzk5YjkzMDdiNWEzNTExIGxlZ2FjeS10cnVuaworNDcwNzEgMjExNGViNzNhZWI1MTcyN2FiYTQxYmVmOTlkZmJhZjk1MGVhYzE3ZSBsZWdhY3ktdHJ1bmsKKzQ3MDcyIDU4MDM0MDg0ZWY0NGFlNDVmMmI4MTdlZjQ5ZTUzYWE0ZWE3YTQ0NDYgbGVnYWN5LXRydW5rCis0NzA3MyA2NTM1M2M0ZGI4YzIxYjkzYzk1YWFjNTViM2YwOTdkNzU4NjZhYzhiIGxlZ2FjeS10cnVuaworNDcwNzQgYWZjNDc1ZDA1Njc4Njk1NDBmNjFjYTdkNmEzODUwMWQ2NGQ4MzJkNyBsZWdhY3ktdHJ1bmsKKzQ3MDc1IGFmY2I1ODJkOTJkODMwNDg0NzM1ZGM5NDk3ZDA2YjdjMDUzYTcyOTAgbGVnYWN5LXRydW5rCis0NzA3NiA3ODgxNmM1Y2ZmMDUwOGM0YTI4YjU4NWE2N2ZkZGZjZGNjMDBhMzk3IGxlZ2FjeS10cnVuaworNDcwNzcgYmNlYWE3NzIwY2M3MTFjZDUzZWVkZWI4M2E1YTU0ZjllYmFmYzIzNCBsZWdhY3ktdHJ1bmsKKzQ3MDc4IGQ4NDIyNDMyMGY4MjhhMGI2ZDI4MzkxZDQwNWMzNDdmNzlmMDA5NWEgcmVsZWFzZTI0LW1haW50Cis0NzA3OSA5YjQ2YTRmNTJkMGMwMzE1ZmY4NjI2ODQ3NDdhZGRjNGJjNzgwNzA4IGxlZ2FjeS10cnVuaworNDcwODAgMzIzZGE0NzZmMTdlZTE3ZjI4NTM5ZmUwNzIzMWYzODhiYjkzMDM4NiBsZWdhY3ktdHJ1bmsKKzQ3MDgxIGJhYjBiMWU2YzZkNDFjYmZlMmU0NmEzOGFkMDg2NzliODQ2YTQ2ZDQgcmVsZWFzZTI0LW1haW50Cis0NzA4NSA2NGQxZjY2YTIzOWE2MDljNDUyOWZhZjhmZjI5Yzk1ODA1NTFmMzgxIGxlZ2FjeS10cnVuaworNDcwODYgNmYwNDJmNWJmOTRkZTc4NDY5MmIzMzlhZGU5ODliYWQ1NjA1MDk0YyBsZWdhY3ktdHJ1bmsKKzQ3MDkxIGM3NTMyODU2ZmQxNzU5MjUyNWVhZjlkODhhMGU0YmYxMWYwNjgwNzYgbGVnYWN5LXRydW5rCis0NzA5MiAxMzQyZGZkNTI3MzM5MDA4ZWVlZDQwODNlODBhYmY2YjM5YWUxNDk1IGxlZ2FjeS10cnVuaworNDcwOTMgMDlkMTYwNmU3NTI0OWNjMDEyMGRmMTI1ODU5ODVhMDNmNGE2NWQ4YiBsZWdhY3ktdHJ1bmsKKzQ3MDk0IGFkNTk0OTE1MjcxMTZkM2EwMjI3YTZmZjU3ZDcxN2JkMWI1YjBlN2YgbGVnYWN5LXRydW5rCis0NzA5NyBiOWE2NGI3YTMyNjEyZGI2MjllOThlYjhkYWI4YWExNTUyYmNhNTQ2IGxlZ2FjeS10cnVuaworNDcwOTggYjgyYzQwZGMwOGQ4MmNkMDE0MDY2NWEzYmViMjUyYzNkNjczNWM2NSBsZWdhY3ktdHJ1bmsKKzQ3MDk5IDgxNjhkMDVmOWI0OWU2MGM0OWU2MzQ0Y2IzYzI5MGVhMDVhZWIxZDYgbGVnYWN5LXRydW5rCis0NzEwMCBmMmNjMTU2ZWI5MjhlM2ZkZmZmMzk5NzQwY2Y1NmNkODNhYWZlOWQ5IGxlZ2FjeS10cnVuaworNDcxMDEgNThmNDE5ZDhjNjQ2MWZiOTE3YjA2Y2NjOWMyMjcyOTdiNGU2ODc2OCBsZWdhY3ktdHJ1bmsKKzQ3MTAzIDM1Y2YwZjg3OTgzZWRlY2E4MDU5NmQ4MTFkYjVmM2IxZjM0MzI2NzAgbGVnYWN5LXRydW5rCis0NzEwNiBmMjY2MTNiZDQ4NGQ3ZGU3ZDUxNjQ2OGRmM2ZmM2IyNjllZTU3YzcxIGxlZ2FjeS10cnVuaworNDcxMTMgYjhiMjI1NTBhY2FjMDE0NTcyMGM1MzU1NmViMjY3YzRjYzc3OTk3ZCBsZWdhY3ktdHJ1bmsKKzQ3MTE0IDc0MTMxMzAyOWQ2M2Q5Njk0NDczYjI0ZTBmYTVkMDFlNGVmYTc4ZjIgbGVnYWN5LXRydW5rCis0NzExNSAyMjU0NzlhY2U5YTcwZDI3OWFkNzRmMjMyZTU3ZGUxN2FlZWQ5ODkyIGxlZ2FjeS10cnVuaworNDcxMTYgY2VlYThhOTg2NTg0NDc3YTMwYzk0NTk3Yzc2ZGViYTY4MWQ0M2UwZCBsZWdhY3ktdHJ1bmsKKzQ3MTE3IGNiODM5OTk2YTM4NmVkYTAxNzdiYzBiYThlYmI2OTg2MjE4ZjhjM2YgbGVnYWN5LXRydW5rCis0NzExOCA3MjFjZWM3ZjAxODU3NDc3ZjU2ZjM2MjAzZTBlYWVmODk5NDZlYjVlIGxlZ2FjeS10cnVuaworNDcxMTkgNGRlYTVmNDZlZTk4NTU0MjQ5ODBjNWE5NzJkNDNiYWM4YTUyZTJiZSByZWxlYXNlMjQtbWFpbnQKKzQ3MTIxIGRlNDEwMjUyYjlmZGEzYjhkNTgzMzhiYjUxMWVlM2Q3NjU0MzE4NTggbGVnYWN5LXRydW5rCis0NzEyMiA1MjI1MGVlYWY3OTFkNjY0M2RmMGIxMzczMjUwMmMwNGFlOGI0NTJkIHJlbGVhc2UyNC1tYWludAorNDcxMjMgMDYwMjc3MWI4YjQ5YjdjMzM0MGRkNGQwYmE0MzZkN2JkYzI5ZGQwOCBsZWdhY3ktdHJ1bmsKKzQ3MTI1IDA5NTU0NmRkYjJmMTZjNjQ3MzQ3Y2NmYzBmNmIzNjhhM2EzZTc2M2YgbGVnYWN5LXRydW5rCis0NzEyOCA3Yzg5OTBjY2NmOWIyYWQ5YmNmZDIwODI4ZTZmMDFiMzM2MTc0OGM2IGxlZ2FjeS10cnVuaworNDcxMzEgYWMzZDRiNzFiY2UyYjI2YzlmYTc5YmRkMzVhM2ZjNDMxYzdkMGY5MiBsZWdhY3ktdHJ1bmsKKzQ3MTMzIDNjZjIxOGU4YjQ0OTI1NzNiMjI4YjNlYTMxOTIyOTZhMzEwOGJiMjUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis0NzEzNCAwMzg4YzdkY2U0ZDQyNjY2ZDFlZjUzMmNmYWRjZmIwMjkwNTczZWU2IGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNDcxMzUgNGI0ZWQyMzAyZDFjZjU2ZWYxNjE5MzA1NDE1YmIwZGUyZDc4NzEyNCBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzQ3MTM2IDg1MWYzNzhhYjljZGM1Yjc1NjRjNDdkMmZkNzQzMDc1NjY5YTYxOWUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis0NzEzNyBkNzQ5MDhlNzRkMzA3MjBmNWMxMGMzMzMyYjQzYjA3YmJkMDY1ZDZiIGxlZ2FjeS10cnVuaworNDcxMzkgNTZiZjU2ZjVjODIxNDc2ZDVkNjdjYjQyNzc5MGNmMWE2OTA5NWVlMiBsZWdhY3ktdHJ1bmsKKzQ3MTQwIGE0MjYzYzQyNDhjYjY3ZTdhZDNiZGM2M2JmNGM3MTdlYWFjZGM3OWUgcmVsZWFzZTI0LW1haW50Cis0NzE0MiA1YjgwNzk2NjBlYzQ1ZTRjOGIyNjBmY2VmYTY2ZmQ4YjUxMzEwM2NkIGxlZ2FjeS10cnVuaworNDcxNDMgNTgyNzBhNjkwZjQzYzVkMTkwMDlkZTIwNjA3MzdlZjY5NDNiZThhOSBsZWdhY3ktdHJ1bmsKKzQ3MTQ3IGY5OWZiZmJhODk4MzQ2MDFkNDQ3MDRjMWI5NGM2NjA5OTgxYmI2ODggbGVnYWN5LXRydW5rCis0NzE0OCAyZWU1YmRhOTIwYTI0NWFlMDgwMmFiNmUxODQxYzZmODgyMzZjZjQxIGxlZ2FjeS10cnVuaworNDcxNTEgMWVhYjVhZTNiMWZmYmFlZTcyZTU5ZmZkYjdlNWNmOGVlNDQ5MWE5ZiBsZWdhY3ktdHJ1bmsKKzQ3MTUzIGIzZWY3NDFlMjYxNzFhZmYxMWZjZTExYWZiOWMwZTg0YjM0NTQxMzggbGVnYWN5LXRydW5rCis0NzE1NCAzYzlkM2EzMTNkODFkZTUzOTE2ODQ3YjM0MjVjYzJmMGJhMWIzZTEwIGxlZ2FjeS10cnVuaworNDcxNTUgMTdmODJiZDY4ODc4NTMyZmIyOTkzNDE4MWI2ZjU0Y2RjZWZiZjc3YyByZWxlYXNlMjQtbWFpbnQKKzQ3MTU2IDI5ZTQzYzVlMTE4ZjdiMDkwMTQyM2ZmNjRlMjk3MmJkYTUzYTMzMzYgbGVnYWN5LXRydW5rCis0NzE1NyAxYjJkZjJlY2JjNjM2YTJjOGI3MjIzM2U4MjVhYzYwZWI3OWQ3Mzg5IHJlbGVhc2UyNC1tYWludAorNDcxNTggMGE4M2RjMzUyOWQxNWFmNDQ5MzRmNWIzNDgxYzBjYjhhMDMzZmM4YyBsZWdhY3ktdHJ1bmsKKzQ3MTU5IGY0OWNjMjkwNmNkMDBmNjA0Nzg2ZDJkNzBlZTJiYWFhODMzODUwNDggbGVnYWN5LXRydW5rCis0NzE2MSBjNmQwNGM5YzNjNGFlNzc0YzVhMjkwMDE2NDY5MzExY2VjZDY5MmE0IGxlZ2FjeS10cnVuaworNDcxNjIgOTliMTVjMjViODQwMTY5MzhhYTY5NWUyOWZmNWQ1ZTYzMWY5MmRiMSBsZWdhY3ktdHJ1bmsKKzQ3MTYzIDE1ZmU5ZGJjNWQzOWVmMTI4ZjlkODkzNWUwYWE4ZDQwMDJjODIyMDcgbGVnYWN5LXRydW5rCis0NzE2NCBkYTIyYjkwNWRmYmViZDllOWFjZDg4OGMzNTQxNmI4ZmZjODI5NDdiIGxlZ2FjeS10cnVuaworNDcxNjYgYTIxZTQyMGE1OTdjYzk1MDUxNzE4ODRmYTI0M2FjZjQ3ZjRiN2NkZCBsZWdhY3ktdHJ1bmsKKzQ3MTcwIGQ4NTcwODc2OWFiMWQ5NGJjZDJiNDA0NjhmODFhNjY2ZTllYjljNjkgbGVnYWN5LXRydW5rCis0NzE3MSAxMzkyNTYxZDVkZDdhZTNkZTJiNGJkNTUyMmQ0MDc4ODZiMjJmNmZiIGxlZ2FjeS10cnVuaworNDcxNzUgMjcyZjE5NWEyODRlN2UwMTRjYTk0MmZmYjE4NTg5NjJhZmZiNzEzYyBsZWdhY3ktdHJ1bmsKKzQ3MTc2IDQ4NTA1NmU1M2NkYjk5Y2YxNTY4ODczYjM4M2U2Y2RmNjY5M2Y1OGYgbGVnYWN5LXRydW5rCis0NzE3NyA2YjBjNjNhOTc1MTQ3YTk0ZjY5YjNhMDM4ODM4Yzk0ZTc1NTA0Yjc2IGxlZ2FjeS10cnVuaworNDcxODEgNWQyYzk4MmFiYmIzOWU3ODQyNjFmYzYxMDBlMWMyMmMyYTE1MGIyMSBsZWdhY3ktdHJ1bmsKKzQ3MTg4IGQ0ZGJmYmYzZjJiOTBjNWMyMzk5MGZhYjdhZmFmZWM1ZTNiZDY5MWQgbGVnYWN5LXRydW5rCis0NzE4OSBiNjY0YTkwOGJmZjM1MGVkMWI1NmI1NjBmNGYwNzJkMmExNWI3NDYwIGxlZ2FjeS10cnVuaworNDcxOTAgYzU0N2Y2ZTkxYzU4NGI5NDI2MjA1ZmI4NmEzMDFmZmU3N2Q2NDNlZSBsZWdhY3ktdHJ1bmsKKzQ3MTkxIGUwNzZlM2Q3NmY3NzEwYTAwMDFlMWUzOGNmNTYyZGM0MjU3YTY4OGMgbGVnYWN5LXRydW5rCis0NzE5NyA1ZGQ3MzYyNjhmZjQ0MDIzZGI2NjVjNmJhNzFjNDRjZDZkMThiMjA5IGxlZ2FjeS10cnVuaworNDcxOTggNjk3NWJkNDg4NGViYzJjODAwNGJkOTY4YmFkN2JmNDMwMDA3OTU3YSBsZWdhY3ktdHJ1bmsKKzQ3MjAzIDBmM2JhM2RlZjFhZDgwYWVkMWZjNGI1MWZmNDdkNTgzYTYzNmVhZTIgbGVnYWN5LXRydW5rCis0NzIwNCBjMDEyMzAwNzY4NTljMWZlNjZjZWFmZjMxNzAwODRmZTk4ODllOTk4IGxlZ2FjeS10cnVuaworNDcyMDUgODg5NGVlZmJiMGE0OWZjNWVhZjU0OWU1NTdkOWMxYWI1ZTIzZjNkZiBsZWdhY3ktdHJ1bmsKKzQ3MjA2IDYzODI0MWZmODdiZGRiYmJlMGUyMjA2NTI3NzA5YWU2Yjk1NzI3OTAgbGVnYWN5LXRydW5rCis0NzIwNyAyNzk3Mzk2MmZjOWZiNjJjZjhmNmNhYWYwNjliMjM4NzU2YTUwZGRlIGxlZ2FjeS10cnVuaworNDcyMDggYjE2MTRmNjc0YjMyNzA0MzViOThmZDgwYzNlZjMzZWMxMWU2MTQ5MyBsZWdhY3ktdHJ1bmsKKzQ3MjA5IGU2MWE5MzhmZTk5OGQ1Zjc5OTc0YjM3NjMxMmYwYmFhYzAyYWI4M2QgbGVnYWN5LXRydW5rCis0NzIxMCAyNTM3ZGVkYTM1MWZhODkxMmNlZmNmZGI5MmJmMjIwYTg0YjExNjRhIGxlZ2FjeS10cnVuaworNDcyMTEgYjk0NzBkNjdkOTZjMmUyNzAyZTgwOWQ0MWY4OGQ3NGE4NzA2YWYxMCBsZWdhY3ktdHJ1bmsKKzQ3MjEyIDBlOGE5NGJhMjEwNjZkYTY1ZGY5ZDY2MDhlN2U0OGJiYTYzOTM3MWEgbGVnYWN5LXRydW5rCis0NzIxMyBlOWQzOWM1ZmNjMjc0NjE0YmMyYjZlM2ViOTM0ZTk0ZWE3MzFkMDJkIGxlZ2FjeS10cnVuaworNDcyMTQgZjExNjU4MmY2NjIyNDI1ZTk4Y2NhOTllYmNiNzA5MjU3YzNlMmRhYyByZWxlYXNlMjQtbWFpbnQKKzQ3MjE1IDA5MzE1Njg5OWY3NWFiMmNiMDZkMDkwZGQ3OTg5NGI3NjQxZjNlMDUgbGVnYWN5LXRydW5rCis0NzIxNiAxNmJmMzY2NDgzMjMzYjA4ZGZiY2UzYjlmOTkyNjUyNTU1OTdkZjg2IHJlbGVhc2UyNC1tYWludAorNDcyMTcgODY3NWE2MDg0MjQwZjg1NTcxZDQwZTkwMzA1YzQzNTRhMDQzMTM0NCByZWxlYXNlMjQtbWFpbnQKKzQ3MjE4IGM1YmViY2JlNDUzOTFhM2NiYjJmOGI5MTFhM2VlNjQ4MDYyMTk1MjkgbGVnYWN5LXRydW5rCis0NzIxOSA4MTMwNGMwMTQ2M2EyZTliZDhhM2U3ZWY4NmExNTM0ODJhNDZkMDM0IGxlZ2FjeS10cnVuaworNDcyMjAgNjNhMzE5ZjA3MzNjYTA2NjZiNmYyMWEzM2I0MDBkNGZkY2Q5MDQ3NiBsZWdhY3ktdHJ1bmsKKzQ3MjIyIDAxZDRiMDY4NTA2NzYwNjgxMDllMmNkOWFlOTE5NmU1Mzc2MWUxMzAgcmVsZWFzZTI0LW1haW50Cis0NzIyMyA3NWJkYjFlYjA3NjY1OTVkYTMxNjkyM2JmMWNiNWI2OGRkOGUzOWQ4IGxlZ2FjeS10cnVuaworNDcyMjQgOWM5MjJlMzFiNmE1Yzg5MTA0YzQ2YjIwZjA3MGQ2OTNmMzJmM2JjYiBsZWdhY3ktdHJ1bmsKKzQ3MjM0IGM4MjM3NWQ1NjBiM2ZlOGEyOGEyNzdmOTE5ZTYwMTYyOTRkYTRkY2UgbGVnYWN5LXRydW5rCis0NzIzNiA0MWZjMjAzYTNlOTFmMTYxNWMxNGE2ZmIzODA4M2QwMThmNDc0OGFkIGxlZ2FjeS10cnVuaworNDcyMzcgMTg5ODlkMDlkNTg0ZTZjM2U4NGQ0MDVjNjY0MTFhYWU4ZGZiZWYxMyBsZWdhY3ktdHJ1bmsKKzQ3MjQxIDZkOWUyMmMzMzBlNGI3NjQwMzAwNDY5ZmYzOWM1OWY2M2FkNDUwZTUgbGVnYWN5LXRydW5rCis0NzI0MiAwYzRlNWEwYzE5MTRmN2IyMmRmYjBiMGUzY2ZkZjg1Njg1NzNhMzM2IHJlbGVhc2UyNC1tYWludAorNDcyNDQgZDllNzgzMTlhMTkyOTM4MTI2NzE0ZTZkN2IzN2QwMzJjYjQ0ZDA0ZiBsZWdhY3ktdHJ1bmsKKzQ3MjQ1IDc1NTA0NDcxM2U5N2NhMjQzYmE2ZGFiZWQ2ZTdhOGY5ZGY1ZTE3MjMgcmVsZWFzZTI0LW1haW50Cis0NzI0OCBiOTE1NWJiMjZiMjgxZThlMzMxMWQzNmM3YWRmNDBlNGFjYmExZmExIGJjYW5ub24tc2FuZGJveGluZworNDcyNDkgYjBiZDBiY2U5NDA2ZWRhNGIxMDMyNzQ5OGQ5NTRmYmI2YjEzZDMyZiBiY2Fubm9uLXNhbmRib3hpbmcKKzQ3MjUxIDllODIxNDM1YTYxMmQxZTk3MmIzNTk2ZTI0OGRlYmVhOTM2OTliNWEgbGVnYWN5LXRydW5rCis0NzI1MyA1MDBhZTk1MjE1MGI3NjY4ZTMwMDc2NTQ5ZWVkMDQwNDljMGMzMzhlIGxlZ2FjeS10cnVuaworNDcyNTQgODdlNWIwMTBiM2IwOWQ1YjViOWM1NGY3NGUzOTA4OGRiM2YwNDFjZSBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzQ3MjU1IDcxZWFkYzM1ZjE2MzcyNjExNjY5YThmNjRmOTk2M2Q1NDIwYWRkNGEgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis0NzI1NyA0MTU2MWIwMDE0YzhiNjgxNTY0OGU1MDQyMDgxZmE2OGQ2YWVlODNiIGxlZ2FjeS10cnVuaworNDcyNTggNDBmMDU4NjczMTcwYjhhNmE4YWRmMDNiNmFlNWMwN2NmMWFhNzBhYiBsZWdhY3ktdHJ1bmsKKzQ3MjU5IGI4NTFhZmNjMTY0OTY1NjcwM2E3MmQwZWZkNWMyZjlmYTY2OWJmY2EgbGVnYWN5LXRydW5rCis0NzI2MCBlM2NmZjYxYjc3Nzk2MWFmNDZmNDJlM2MxN2VmZjg0OGNjZTA4NGUxIGxlZ2FjeS10cnVuaworNDcyNjEgNGRkMWE5MzgzZTQ3N2ZjNjcyYzk1NDQzMzAxMjVhYzc0ODA1N2RlMSBsZWdhY3ktdHJ1bmsKKzQ3MjYyIGQ4Y2U5YmM0MDVlNDFiNjk1NDZhMTQ0ZDcxN2NkNWFhMDkwZWU1ZDAgbGVnYWN5LXRydW5rCis0NzI2MyA2OGM5ZThhNTUzNjgzYjJjMjM0OGNjZjI3OTk4NDhmOGZkYjMwZDY2IGxlZ2FjeS10cnVuaworNDcyNjQgMjA3M2YzMmNmNzFmYzdlYTQ0ODU2ZWI1Mjc4ZDcwOWNlZTA0YTkzYiBsZWdhY3ktdHJ1bmsKKzQ3MjY1IDY5N2QwNTQ4MDA1M2Q2ZmRlZmU2NDVlMDg5ZmNjMTQ2ZGIxY2E4MTAgbGVnYWN5LXRydW5rCis0NzI2NyBmNGUzM2IxMmJiNTdiMTAwYjM0YzJmOTI2OTA1MmY0MzIwOTUxMDRhIGxlZ2FjeS10cnVuaworNDcyNjggMzRhNjZlMmY4OTU5ODAyNWFkMWM3M2E0OWE0YWI4M2QxYmE1ZDU3MyBsZWdhY3ktdHJ1bmsKKzQ3MjY5IGY2OGU1MWE2NzNkZjczZjJiMWY0NzQ5ZTc0NmNmMzliYzA5OWYyNjIgbGVnYWN5LXRydW5rCis0NzI3MSAzNGNiOWE2Y2UxMmQ4N2Y2YWUwMzE2NjYxMDc1Yzg4YjA5MjY2MTEwIGxlZ2FjeS10cnVuaworNDcyNzIgMzc0YzIyOWQ5MGU4ZjM2NmU1OTU1OTg0YzQ1NjE1OTExZTk2NzY1ZiBsZWdhY3ktdHJ1bmsKKzQ3MjczIDVhNGFiMzgyMDU4YTVmMTBmMzRmZjI1MjBhNjA1NDNhMDQ3NTE0NjAgbGVnYWN5LXRydW5rCis0NzI3NCBlZWJjOTVmOTU4ZTQ4ZjM3N2RmZDk5NWNlNjNjYmFhNGEwNjc1NTVlIGxlZ2FjeS10cnVuaworNDcyNzUgMjM4ZTBiMjAzN2ZjMjQ4YWE3ZTYzZGU2ZWRhZTQxNWRjNDY2MzJhMiBsZWdhY3ktdHJ1bmsKKzQ3Mjc2IDM0NDI1MWNkOGQ3NjQ0MDljYzAzYzU5NjdmYjE1Zjc4YzI3ZDU0MjYgbGVnYWN5LXRydW5rCis0NzI3NyAzZmE3OTBiMGFhNjgxNWMxZTFkYWU4ZjIzMGFjODVkYWJlODE5OWQ4IGxlZ2FjeS10cnVuaworNDcyNzggZjkzZGJmY2M2NjNiMzMwNzNjODJiZWRiZmMzZTU4NWMxZDQwZTdlMSBsZWdhY3ktdHJ1bmsKKzQ3Mjc5IDU4Yzg4YTdjOTMyNjNjNDhiYmViMWVlZDNhMjIwM2MyMDUwMGJjNmIgbGVnYWN5LXRydW5rCis0NzI4MCA4ZmVmYTk5ZTg3YzBkMzg1NjQ0OGZjNzY3M2QyN2RlOGY4ZDEwNmZkIGxlZ2FjeS10cnVuaworNDcyODQgZWQ0MzI0M2M4ODYwNWVmYzhlMDlhZDQ0YWZjMWEyN2Y2NTY2NGJmNCBiY2Fubm9uLXNhbmRib3hpbmcKKzQ3Mjg1IDQ1MjQ3YjkzYTVkOWExMDE5MjA3YTFkZTIyMjkwZWQ2NWUwNjBjMTYgYmNhbm5vbi1zYW5kYm94aW5nCis0NzI4NyBiM2MwZTA3NTlhYzA5ODA0NDYwOTJlNDVlNzc4NGQzZjNiM2FkY2FkIGxlZ2FjeS10cnVuaworNDcyODkgZGE1OTgzNjE0ZmFjMjI4MTljYWVjMDk1YmZlMjM4ZjAxZjYzN2U1OCBsZWdhY3ktdHJ1bmsKKzUwNDc3IDEwOGRjMmYxZTdkYTMyY2YxYTFjN2U3ZWJmNWRkZmM0ZWE1ZTFjNjUgYmNhbm5vbi1zYW5kYm94aW5nCis1MDQ3OCBiYjMwNTAyNjMyNDQyMmFlN2FjNDVkYjNmZDA5ZTQyMmJlOWUxOTU1IGJjYW5ub24tc2FuZGJveGluZworNTA0NzkgYjhhOGVmYzAwYjFlMjVlMmY0YWQ5ZDdjZGM0NjVhMTNlZTY4MWEwNCBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNDgwIDkwM2Y5ODY3NjU0YTE3YTM5NDc0Y2VhZTMyOTMxNjY3NWQ0MTQ0MzggYmNhbm5vbi1zYW5kYm94aW5nCis1MDQ4NiAzNWFmZTdjNDY3NzIwNmNkMzViYTM3YTIwODc1NzQ4M2UxNGUyMzg4IGJjYW5ub24tc2FuZGJveGluZworNTA0ODcgYjQyODEyYzc3NGQwYzk0OWIwYmE3N2NmNWMzZjYxODA3MDEzODJlYSBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNDg5IDA2NmFhNDJjZTVmMjQwOTc4YzE2NTZmNWVjYjYwNjY5NWViODJhMDUgbGVnYWN5LXRydW5rCis1MDQ5MCBhYmIyYzc2YTVlMDUwY2Y4ZDA2YzI2MDczY2YyMjY1YjJmMDQyYmMyIGxlZ2FjeS10cnVuaworNTA0OTEgMWM1YmRiYzc1ODBjYTE4Y2U2OTkyYjE4YjcyYjQ2MjYwMmI3NzUzOSBsZWdhY3ktdHJ1bmsKKzUwNDkzIDlmNzBmNmJhN2I2OWNiZTZiYWRkMTFmZDI5MDczMjQ5Mzc1NmFhZjIgbGVnYWN5LXRydW5rCis1MDQ5NCBiYmM3OGYwMjEwMDdjMGYwNDIxOGQ5Y2EyNmMwYmE3OWJmMDY4MGI1IHRpbS1jdXJyZW50X2ZyYW1lcworNTA0OTUgNjRjY2Q3NDVlYTkyMGJlMWI5OTM4OTFlNDk2MzdkMWYzNTFjNDQ5NCBsZWdhY3ktdHJ1bmsKKzUwNDk3IDk1ZjllMDE4NDU1NTZmOTYxMjgxNjFkYTRlYWVmNjFiM2JmNTZhMmIgbGVnYWN5LXRydW5rCis1MDQ5OCAzZjU1NjFjNWQ5NTk1NWIxMzljYzY0ZWUyNzJmZTNmMDllMzk1MzM1IHRpbS1jdXJyZW50X2ZyYW1lcworNTA1MDAgY2EzZDlhNjcxMjZiZjhkOTE0YTc2NjFiN2RhMjAwMTExNmQwZDkyMCBsZWdhY3ktdHJ1bmsKKzUwNTAxIDhjYzk3ODQxMzBhMGU4M2QwNjI3N2U1OTdhZjBhNjQ4NjBlNzk2ZWYgbGVnYWN5LXRydW5rCis1MDUwMyBjMDJmYTE4N2UwZjQ5Y2IyZGNhN2E5YzQ0OGRiNTM2MThhNjZlNjkxIGxlZ2FjeS10cnVuaworNTA1MDQgYzY3YjIzMzk3ZjMwNjQ5YWZlNzU0ZTU3MzA3YzhkYWY3ODc2YzU2MiBsZWdhY3ktdHJ1bmsKKzUwNTA2IDBmZTA4YWVkYmQ4YzRmY2JkZmI2MGEzYzIzNTI0NjgwYzEyNDU5YzEgbGVnYWN5LXRydW5rCis1MDUwOSBjNTQ3NjQ1YWI3MzY0YzI5NDc1NjZhZGFlYjk3YjIzMDNkYjYxZjc3IGxlZ2FjeS10cnVuaworNTA1MTAgNTE0MjhjMzc4Y2MzZTI2ZjFmYjJkYzczZmNhYzg0YzMyNWE0Y2M2YyBsZWdhY3ktdHJ1bmsKKzUwNTExIDdlNDNkMDJlZTIxYTYxZWRmNmNlMzc0ZTQ1Y2I5NGZmNzE0NDQ4ZDIgbGVnYWN5LXRydW5rCis1MDUxMiBjMWY0YmY4ZmY3NDhjMDFmNmMyMzg1NzMwNThlOTI0Mzk3NjQ3M2E4IGxlZ2FjeS10cnVuaworNTA1MTMgMzVjNGZkYTQ3ZGZiZDhmNzMwODVmMTIxYjM5NDAwYjU5MTQxZWZiZSBsZWdhY3ktdHJ1bmsKKzUwNTE0IDAyNTk4YzU3Y2EwOWNjMGU4ZWE5MjQwYTIzNWIzZGYwODVmODc5OWEgbGVnYWN5LXRydW5rCis1MDUxNiBmMzczNjQ2Nzk1MDE4MjU1ODk5ZmJhZGI3N2U4MDY2NWIwOWM3MDFmIGxlZ2FjeS10cnVuaworNTA1MTcgYWU1NjQ1Yzc2ZDVlYTMzZWNiOGFlNTgxM2E2MTdlMzE1ZWZiMWZmZCBsZWdhY3ktdHJ1bmsKKzUwNTI2IGI5NzhhZmU3Y2FiNjZhZWNmZmRhN2M5ODczNzRlY2VjMGY2NzI0YjQgbGVnYWN5LXRydW5rCis1MDUyNyA4YWRkYzkxMzE3MWU4ODM0OGMzZjQ5Nzc5MTI0YmViZjQ2ZTEwYTdjIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTA1MjggZjJhYzMxZmMzNjllNjJmZTc3ZmI1YjVjODkyNDcxMGVmYjQyYzBiNiBsZWdhY3ktdHJ1bmsKKzUwNTM3IDNiMzhhYjljNGIwMzY5NWEzMzE1ODUxYzlmYmM4ZmM3MjUwYzYwNGUgbGVnYWN5LXRydW5rCis1MDU0MCBjODQ5OTdlMWVjYzc2OTI1NDg5YmQzMDFkY2U2MzBkMDdjZWMzYmVjIGJjYW5ub24tc2FuZGJveGluZworNTA1NDEgYjZmZDQ5OWU0MzQzZmI3Nzc5MGNmZTRiNzM1MjdmMTMzOGIyZjIwNCBsZWdhY3ktdHJ1bmsKKzUwNTQyIGMzNjE5MTVkZjI5MTNjNjFhZjc5MGEwNjE3ZjJhMGU0NDE3Y2VkNDcgbGVnYWN5LXRydW5rCis1MDU0OCBmY2JmNDYyMTE5MDNhNGYyYTBkNzY0MDg2ODdlYmUxYThlNGY4MDY4IGJjYW5ub24tc2FuZGJveGluZworNTA1NDkgZTQwMjQ0ZjVmZWI5NGQwMTU0ZDNlMDNiMDNiODc5YzNiY2MxMTBlNiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNTUxIGZhNmNhM2Y1ZjIyNmU1ODBlYmJkZDY5ZTExYWZmOTliODVhMGViYzYgYmNhbm5vbi1zYW5kYm94aW5nCis1MDU1MyAxY2EwMTViZTcwYWUyMmY4NWFlZDcwZjhjOWVkNjhmMWUyN2I5ZWQ0IGxlZ2FjeS10cnVuaworNTA1NTggMmQ1N2U0YjA4Y2U2OGNmN2IxOGIzNmQ4ZjUxNmI3YTViOGRmZDdhNSBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzUwNTU5IGIyODY1MzYyMjA5MzgzMDJjY2UxNmViNTJjMGZjNjBjZDA3YjRiNTQgYmNhbm5vbi1zYW5kYm94aW5nCis1MDU2MCBlMzFlZGVlNWJjM2Y1NGUzNDI2NjIwMjk3ODliYzRlNWFjNjQxNzRkIGJjYW5ub24tc2FuZGJveGluZworNTA1NjQgMjE2YTk3YTJlZDM2ZjI1OWRhZWFmMmY5MTE1OTIwMzI0ZjEyYTc0NyBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNTY1IGRhZWU4ZjhjMDM1Zjk2YWUxOWQwODMwZTcyYjEyYTEwMjNhNDIwOWMgYmNhbm5vbi1zYW5kYm94aW5nCis1MDU2NiBlM2Y2MDY2Y2U3NWY1ODJkOTRkMjI4MDc5YTBiNzUzMzc3MWFjMzdjIGJjYW5ub24tc2FuZGJveGluZworNTA1NjcgNTJhODczOGY1YWI0ZDFlNjgwMGQzM2RlMDEyN2NkNmY2MjZlNDg5NSBsZWdhY3ktdHJ1bmsKKzUwNTY4IDAzYjZmZTU3Y2Q2ZGY1YmIzNGNhMTlmNGI3NjBiOTQzMTg2Y2M4MDYgbGVnYWN5LXRydW5rCis1MDU2OSAwMGY5NzVlYWQzNDRhZmIyY2FkMTRhMmNlNTk1MTlkOThiMWM2YzVjIGxlZ2FjeS10cnVuaworNTA1NzUgZDY0NjNlOGVmOWM0N2QzMjczZDNlOTA1NWRhYWQxMTY5MzliMGQwZSBsZWdhY3ktdHJ1bmsKKzUwNTc2IGY1MGI5ZGE1ZTM2MTk1M2FkNDBiM2MyNDNhMGE2ZjRkNzQ4MGY5OGMgbGVnYWN5LXRydW5rCis1MDU3OSBhZTBjMzI4YWM1YmY5MWJmOGU2OGM1ZDk0MTIxZWRkODZiYzdmMzM1IGxlZ2FjeS10cnVuaworNTA1ODIgMjE0YjI4ZDdhOTk5MzM0ZDA0MWFjNzA3ZjBmZGU5OTYzYTU4MDZlNSBsZWdhY3ktdHJ1bmsKKzUwNTgzIDY1NTIyOTkyM2Q0MmY5ZjMzYjNjMzgyMTA0OTcwZWM3ZmJjY2Q4M2IgbGVnYWN5LXRydW5rCis1MDU4NSBjN2RkNjY5NmVjOGNiMTcwYTE3YzdhZTJjNzAyZDFiYWU4NWFmNWRjIGJjYW5ub24tc2FuZGJveGluZworNTA1ODYgNmY2OWFmYjc4NWQwYmY5YzVhMDAwN2Q1NzRjZGQ4OTE0YWUwNTI4ZiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNTk0IGU2ZjE2YjdhNTg0ZjIzNjZkMTFhNzhjN2YwZjdhNTMwNjRiZWNhMjkgYmNhbm5vbi1zYW5kYm94aW5nCis1MDU5NSA5MzNiZTNlMGFjNmNiMDU2ZWE2NGE1MDEyMjM1YmNiOWYwNWY2MmYyIGJjYW5ub24tc2FuZGJveGluZworNTA1OTYgNzE3YTc4ODdmZDdhNzZkNzE0YjhjMTJkNmFiOTA4ZGMxYjc3ZGJjYiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNTk3IDcxODJjMjc3NWMxZTQ1NDJjZDdkNDI2MjA1YzQ5ZDY1YjNkODBiYzUgbGVnYWN5LXRydW5rCis1MDU5OCBiMWJiMTc5YThhYjA1N2RiYzJkNzQ1ZGM5MDY2ODA2MjEzYjA2OWEyIGxlZ2FjeS10cnVuaworNTA1OTkgNDc2Y2Q4Mzc3N2YyYmE3MmVkYzdlZmVjYTI1NTZkNmI4ZGQ4NTNhMCBsZWdhY3ktdHJ1bmsKKzUwNjAwIDJjM2VjNzIwYWE3YmViMGRhNDAwMmI4NDdjYzVlZDdkYzc4MjU2NmMgbGVnYWN5LXRydW5rCis1MDYwMSBiMDk1ZTgzODhiMmU2NDUyNWRlMjgzNWM3MjJlYmJiZDJjNjE1OTVmIGxlZ2FjeS10cnVuaworNTA2MDQgMzZjNWQwODViODY5MjA3NDAzY2Y0MWU2MWI3YTIyZDRiNzFlYzdkOSBsZWdhY3ktdHJ1bmsKKzUwNjA3IGM0OGIzYTY4ZjY5NjJhNjk1YjI5YmQxNjJiMjQyODk5ZjYzYThkN2EgbGVnYWN5LXRydW5rCis1MDYxMCBiNTYyZmQ3OTUwMGQxZDM3MGY2OTdjZGU1MmRlNDA5N2E2YjY0ZThlIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTA2MTEgMmYzMDUxNWNmNjZiOTZlOTFiYWExYzdiNDY5OWZjNDE0MzRlZjEzOCBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNjE3IDg5MmI3YWMyNmQzYmI1OTAwODQyNWNmMzZlYTgyMzg3NjUyMjIxOWMgbGVnYWN5LXRydW5rCis1MDYxOSBlNGI2YTRmMmNlMTQzN2RhNjE0YjlkMjFlZGZmMDU4OWRiNWFhYWUxIGxlZ2FjeS10cnVuaworNTA2MjAgY2Q0NTljOTIwZjk5MGM5NDNmNjEwNjFlMmIyZjMwMTM0OGE0MWQwYSBsZWdhY3ktdHJ1bmsKKzUwNjIxIGE3NzY4ZmVmNTliMmNkMWViZDJiYzc5OGIxMzk3ZDdjNjRhYjE0OGUgYmNhbm5vbi1zYW5kYm94aW5nCis1MDYyMiBmYzY5ZmE2ZTU0Yzg2ZGMyZTE0ZDg0MDUxOGYzMTIzNTc1M2I5NzhiIGxlZ2FjeS10cnVuaworNTA2MjcgMThiOTc5NmI3YmE1OGM3NGVhYTMyMmU1OWY4OTNlMzAzMjFmN2FhNiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNjI5IGM4NzBlZTA2NmMxMjU0OGM4ZTk3YTM4MTE4ZGQ3NjEzZGVjOGFlZjUgbGVnYWN5LXRydW5rCis1MDYzMCBmNzFmMjg0MzYzMWZlY2ZiM2JhMDk1NDMxMjMyNmUzYmEwODU4NzlmIGxlZ2FjeS10cnVuaworNTA2MzEgMmE4NGI0NmFkNjRjYTY5ZmE0ZWRjZjVmZTBlNWFlMzAxMmI2ZjU1NCBsZWdhY3ktdHJ1bmsKKzUwNjMyIDE2ZjNjMDJlZGUwMjUzMWIxZGI3ODBkNGVlZmNhODQ1YmYyOGNiZDUgbGVnYWN5LXRydW5rCis1MDYzMyAwZGU1OGJjZTQ3ZWYzMmEzMGYxZWU3YzE5NGFlYzJhYWYwM2E1YTkwIGxlZ2FjeS10cnVuaworNTA2MzYgN2RmYzc3NmRkODFiY2VmNjgzMDAzNzYzODUyOTlmNDgxZjI0ZmNiOSBsZWdhY3ktdHJ1bmsKKzUwNjM4IDlmMmMzZGU3NDg1NmRkZDEzYmZhZTY4ODBiMDU3MWMwNDQxNWM2ODQgbGVnYWN5LXRydW5rCis1MDY0MCA4NWZmYzBiZmNjOTgyOWVhZjA2ZmZjNDBiZjdkNjlhYjEzZGRlYWZjIGxlZ2FjeS10cnVuaworNTA2NDMgYjYzMjU2MzQ5ZTc3OTAwNTFhYzcxNzc0NGEyYmY5N2EwZWJmOTM1ZSBsZWdhY3ktdHJ1bmsKKzUwNjQ3IDdmNDBlZjg3MTczMTExNDZmNzA0OTM3YjVlYjUzOWQ2NjJlNzI1ZmIgbGVnYWN5LXRydW5rCis1MDY1NSA2YjFlZDdiNzA0OGU1ZThiOTE4MGI5MTk5NzhlZDU4NDcyNzQ1ZWM3IGxlZ2FjeS10cnVuaworNTA2NTYgYmY0NzRmOWQ1MjI1ZTdlN2VhNjBjNDE5ZTQ0OWE4MTdhZTE4MTJlMCBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNjU3IDVlY2YyMmE0ZTVkZmMyMDQ0NWQzNDdkYTA1NDBkNjc4YzRjZDVjM2MgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MDY2MCAwNTI5YTU4NTA2NGM0ZDc0ZDQ2NWJiMWRhY2RiNjg3MGE5MzA4YWRjIGJjYW5ub24tc2FuZGJveGluZworNTA2NjEgMTQ2NzFhODBhYmVmMDkwNzQyNmM5OGRlNmNjNzYyZGI2ZDBlNTVmMyBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNjY0IDJhNzZlYzJmMGI3OWQwZDU0YTE5YzlhYjAzNjY1MjNhNDk3NWRhMmMgbGVnYWN5LXRydW5rCis1MDY2NSAwNjMxNjQxZmRlZmY0ZWU0NTBjMmZmNjRmNTExM2MzY2FiYzY4MDUzIHJlbGVhc2UyNC1tYWludAorNTA2NjcgMDA3MTUzNTNmODJjNTY3N2Y3ZjEzMDIwNTdjMDE3OTZkYjY4NjkwYyBsZWdhY3ktdHJ1bmsKKzUwNjcxIGMxMzZmZjRkNDI2ZGZiY2I3MzI3ZDRlMzU2MDk2MjkzZDA3OGRjNTIgbGVnYWN5LXRydW5rCis1MDY3MiA5MTBhOTQ4ZTAyOTBmMTgxNzE3OGE0OGY4ODdjMzRhZWQ0YmY1YWFlIHJlbGVhc2UyNC1tYWludAorNTA2NzMgNzU2ZDU3YWNkYTg1YmNiYTI4ZjIzMGU0NWQ3MTQ4ZjhjZmNjZWI5OSBsZWdhY3ktdHJ1bmsKKzUwNjc0IGJkYTkzYjQ1Y2E0MTNlYjNhNTExZDUzYmNlZWExZGVlNWNlMzdiNzcgbGVnYWN5LXRydW5rCis1MDY3NSAzZGRiNTk0ODNmMTAzMzVmMTY1MTY5YzY4YTI4MmFmOWMwYWM2MTQwIGxlZ2FjeS10cnVuaworNTA2NzYgYWVkYjg1ZWU0ZmVjMmVlYTcwYTk5MmM1NjVkNzIyNTU4OTJhYWJhMSBsZWdhY3ktdHJ1bmsKKzUwNjc3IDUwYjBiNTRmYjE3ZDdlM2ZiZTVhYmMwMmQxNTdkYWE0NWIyMzBiZjAgbGVnYWN5LXRydW5rCis1MDY3OCA3NzVmODViOThlNjU5ODM5NjM5MzRhMjhkNDVkOWZiMDJiNDE4NTEwIGxlZ2FjeS10cnVuaworNTA2NzkgOTBkNWQxZmVhNGYyYzExNTY3ODM5YWFlN2Y1ZjliNzJmZjIzZDk5MSBsZWdhY3ktdHJ1bmsKKzUwNjgwIDM1ZDUwZmJlMGI4ODk5ODBmZmIzNjVkZThlYTAzY2Y5NDUwM2FjZDggbGVnYWN5LXRydW5rCis1MDY4MSA5MzRiYTViZThmM2YwYzI3MTIyYWQxNzM1MjNjNzAyMmE5NWMwNjY3IGxlZ2FjeS10cnVuaworNTA2ODMgYTU1MTk3YmQ3MjAwZGUxMTMyM2RhZGI4Yzk1ZjE2ODQ4Zjc3YjU0YSBsZWdhY3ktdHJ1bmsKKzUwNjg0IDYwNjRjYjMwMTIwOWM4ZWM3MzdlN2ZiNTFiN2U4YmQ1NmQ2ZmQ3YmMgbGVnYWN5LXRydW5rCis1MDY4NSBhYTg1NzkxZjU5OTEzZjFhMTA2ZDdhOTgyYTEyYWMzYzI3MTc2YjNhIGxlZ2FjeS10cnVuaworNTA2ODYgZDJiZmNjMWFhYzNkNGZhZTllMjkzN2I4NzA4ZjI3ZTM2OTZkMDBjZCBsZWdhY3ktdHJ1bmsKKzUwNjg3IGJiMTcwNzI2NWRlN2UyNjgyNGJiNWMwMDg5ZTI3MGI4NDUxMTc0ODEgbGVnYWN5LXRydW5rCis1MDY4OCAwMDg5NDE1MjE4MDUwMmRjYTY0Yzc0NGQ1ZTA1MzFmZmEyMTU5NWYxIGxlZ2FjeS10cnVuaworNTA2ODkgNjU0YTViMjYyNzE3ZTI3ZjI5YzI0OTRmMWQwMWNlYzYwNjRhYTczNiBsZWdhY3ktdHJ1bmsKKzUwNjkwIDYyOGI4NTEwZmVmYmI5Nzg5ZGQ3MmYwOGIxNzQ2MDBkZDcxZjU2ZmYgbGVnYWN5LXRydW5rCis1MDY5MiBmZGEzY2JkNzRjNzE4ZWZjZTZmN2ZhZDQ2NWFiMTE3YTUxZTVhZTIzIGxlZ2FjeS10cnVuaworNTA2OTMgZmY1Mzk3MDdhMWVkMzQ3YmJkOTdiMDk1NDI3YWY3MzdjZTI2YzkzNSBsZWdhY3ktdHJ1bmsKKzUwNjk0IGU3ZDBhNzVlMzE0NTUzZjYwNTFmNWYxMmExNzRmZWQ4MDU4Njk2YjUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MDY5NSAyNDRmYjUyNGRkZDQxYjU0NGJmNTc2YmJmODNjOTVlMWQyMzhmNWNkIGxlZ2FjeS10cnVuaworNTA2OTYgOTc5ZTM5MGUyYmI0YzU2NWQwNjhkM2ZjZTgxNjliZjI0MjEwN2VlOSBsZWdhY3ktdHJ1bmsKKzUwNjk3IDk3MDE2MzM4MThiNGJiMjAyNmJmNGQ3MmFmOGIzOTAwYjQxODNkMTEgbGVnYWN5LXRydW5rCis1MDcwNCA5NWZhOGZjOGEwNjVjMzcwNGU4MzhmNjk0ODM3Mjg1NDgzNmQ0YjJhIGxlZ2FjeS10cnVuaworNTA3MDYgYWNmZjFjMzRjY2EzYzM1ZjcxMDY3NWQzYWY5YjcxZDZjZjIzYmI2MSBsZWdhY3ktdHJ1bmsKKzUwNzA4IDg1YjIzOTY1ZWM0YzA2OTFiM2EyNTE1MzhjZjk5NTIzODc1NjBiZDUgbGVnYWN5LXRydW5rCis1MDcxMCAwOGYzNWFiZWNmOTgwZmRhNTRlNWNkOWM2YmFjMjJiZDU0NWQwZDA3IGJjYW5ub24tc2FuZGJveGluZworNTA3MTMgYzU3NTliNWE1N2YwYzY5MDkyOWE5OTcwYWI0NWZiZjA0ZjRmNmZlYiBsZWdhY3ktdHJ1bmsKKzUwNzE1IDFkN2RhODYwODAzMWJmZDJmMGM3NGEyZDA5YjZlYzhiOWViNTgwOTkgbGVnYWN5LXRydW5rCis1MDcxNiA1ZmY1YTU4M2IxMmU5YzY0ZDUwZmJjNTEzZTJmZmFmZTk0Njc3MDg2IGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTA3MTcgODRlOTE2NmI3MTA4ZjEwZDYyMjQ1MjM2MGJhZmU5YTFlMDYwMDNiMiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNzE4IDNjNWRiMmIzZjg5M2FkYTI3ZGZhYzVkMGM1ZmYwNGIwOWE2YTJiY2IgYmNhbm5vbi1zYW5kYm94aW5nCis1MDcxOSA1YzkwM2Y2NTA3MTk5ZTNkNjJlYjI4MGY3MDU2MDUwYTBhODgwZmI1IGxlZ2FjeS10cnVuaworNTA3MjAgOGZlNjc4NmY1MTQ0NWJhNGI0NjA3MWRiNjFjNjBiNGExM2RjODE2MCBsZWdhY3ktdHJ1bmsKKzUwNzIxIDVhYjc2ZmJmMjNmM2NmMjE3YmZmZGU3YTVhMTVjMTFlZDdhZTIzMTkgbGVnYWN5LXRydW5rCis1MDcyMyAyYTFmZWZiMTg3NjRjYTMyZDFmNjhiMTVjNTFkMGU4MGRlODllOTQ0IGJjYW5ub24tc2FuZGJveGluZworNTA3MjUgMTQwNTMxYjEyNGY4NWRmNTcyOTI3NDFlMjUwNDZiYzk1ODg1ZDdhYyBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNzMwIGJlMTczNGNjNmRjMDJjNTc0ODk2YTE2MDI2YjU5MGNiNDhhYzIxNzcgYmNhbm5vbi1zYW5kYm94aW5nCis1MDczMSBhMzJmMjBlY2MwMjRiN2JjYjk3NTZjNzQwYzVhMWFkNTViYzZiYTRmIGxlZ2FjeS10cnVuaworNTA3MzcgNTk3NjliNTM0Nzg5ZTc1M2E1NDIwNmYwNWU5MThmMjFmNzEyZDE0MyBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNzM4IGViNDQwZWM3NGExM2ViZjU1MzEzMmM3NjA0ZmRhYTdjMjVjNDI1YWYgYmNhbm5vbi1zYW5kYm94aW5nCis1MDczOSAwNjA3MGExMmE2YjAyYjU3MGRkZjc5NzhmN2Y1YWZlNDIxNzgxOWE3IGxlZ2FjeS10cnVuaworNTA3NDAgMzU3MmZhYTlhMjllMDc4YzMyMTdmNjlmMWNiODQwYjkyOGE0N2MxYyBsZWdhY3ktdHJ1bmsKKzUwNzQxIDdmMzgxNzMyNTFiYmM2YjAwNWVhMGFlNTM1N2MwNzE4ZmI3MWJhMTYgbGVnYWN5LXRydW5rCis1MDc0MiBhZjRhM2EwZDQ3Y2NmZTZmNmI3NDczNDVjNDc4YzA4OWI2ZjFlNzA1IGxlZ2FjeS10cnVuaworNTA3NDMgZjIwMzFmMTVkOTlkODEyOGFkZjFjYjNhNzBiYWI3MWI5N2MwZGVhMyBsZWdhY3ktdHJ1bmsKKzUwNzQ1IGJhYTU0MzM3YzNkOWU5NWZiYWQzNTk2MTU3MTJkNGE0MWJmYTUyNzggbGVnYWN5LXRydW5rCis1MDc0NiA3YzA5YjY2ZjA0YmQxNDkxYjAzNjdjOTc3MWE5NDIxOTk3ZmQ3ZDRkIGxlZ2FjeS10cnVuaworNTA3NTQgNDE3Y2RlZGUwNjg4MGYxZDU0OTgzM2Q2YmM0NzgxMjJkMTE5YjhlOSBsZWdhY3ktdHJ1bmsKKzUwNzU5IGQwYTk1NjU0ZjgwMzIxY2UyMzUzOWM5YWQyYmE4YzI3ZjM2NWNiYjYgbGVnYWN5LXRydW5rCis1MDc3MSAwNzllNDJlMGI4MjZhODkwY2YwZjAzNTRmNGJiMDFiYmUyNzZjN2RhIGxlZ2FjeS10cnVuaworNTA3NzIgZjFhMjc3N2U1YzhiM2Q2ODU0YzQxYzQxYjg2ZjhhNjM1NDQxZTgxMiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwNzczIDEyZTk3M2JkZmVlZTI5OGY5MTI0YjA1MDFkYmViZmI4NzdmNmYxZGEgbGVnYWN5LXRydW5rCis1MDc3NCBlZTZhYjMzMTc1ODFiZjc4NDVkODRiNWE2ZTk3N2RiZjg5OTEwNTA4IGxlZ2FjeS10cnVuaworNTA3NzUgODMyZmNlNTBkYTkzNjJlYTQ0NDQzZmVjOWU2ZTI0OTVlNmEyMjdlMyBsZWdhY3ktdHJ1bmsKKzUwNzc2IDcxMzJmOThlZjA3YjMyZDk5NDQ5MzNmMmRiZTdmOGU3NDgwY2NjMTkgbGVnYWN5LXRydW5rCis1MDc3NyA3NWE3MTA2NjYyYTNmZDYyNzI5ZTNkMjIyMzg4ZGY1MzI2MjIwMWM5IGxlZ2FjeS10cnVuaworNTA3NzggMTgwNWU2ODRkYzkyNTcyOTc1NDI1N2Y2MGJlYjExZWZkN2U4ZTkwMyBsZWdhY3ktdHJ1bmsKKzUwNzc5IGJjNWQ4MzFmMWRkYTUwOWNiZjU2YmZmZWM1ZTczNjcwYWFhOWE4MjcgbGVnYWN5LXRydW5rCis1MDc4MCBjZGJiNDRjM2RlODcxNWExMGMwZGNkYThmMDhhOWJiZWM2OWYzZTg1IGxlZ2FjeS10cnVuaworNTA3ODEgMGUwYTk3Y2VkOGU5MWY5MmUyM2E4ZWFlZGRkMmU2ZTQ3OTgzYTNlZCBsZWdhY3ktdHJ1bmsKKzUwNzgyIGU5NzczZmMyN2U5YjM2YTU5NWRlNTEzZjc1YmUzZmRhZGYyMzc4NzAgbGVnYWN5LXRydW5rCis1MDc4MyA5NTdiZjMxMTkyNDc4NDA2MjI4NWYyZmJmOWJmNDZkODZlYzhmY2UxIGxlZ2FjeS10cnVuaworNTA3ODQgOWQxOGQ5NjhhNThiMzMxZmU3ZjIzNWU5NjE2YzAxMjg0Mzk2M2E3ZCBsZWdhY3ktdHJ1bmsKKzUwNzg1IGUzZGE1Zjg3ZmU2NDFkOGIzOTJlYWU3NTFmY2EwYWMzZmY2OWY1ZGYgbGVnYWN5LXRydW5rCis1MDc4NiA1NGJiNzIwNjMyYzQyZmQxODVhZGU4OTk5ZThjMGUyODgyM2U2YWJiIGxlZ2FjeS10cnVuaworNTA3ODcgMGE0YWQ4M2ZkNjU0OTIyNTNjMjg3MzQ5ODE1ZDYwYmU4YmRiNjBiMCBsZWdhY3ktdHJ1bmsKKzUwNzg4IDNhYzg1MDk0MzdkZmRiYzI0NTAwOTY4Y2E4ZDNkODE0OWNkZDc2ODUgcmVsZWFzZTI0LW1haW50Cis1MDc4OSBiNThmNzk1MmUzOGFlODkxZDJhMTAzNTRmOTYxMDMzOWY0YTMxN2EzIGxlZ2FjeS10cnVuaworNTA3OTAgNzg2NDNiZTNjZjQwYmIzYTlmNGQ0MzkzNTcyZWUwMjIzMmM2M2U5ZSByZWxlYXNlMjQtbWFpbnQKKzUwNzkxIGEzZmRhODQzMjM0ZTQ4ZDFjYTZjODJiMjVlNjNjYTRhNDRhOTkzY2EgbGVnYWN5LXRydW5rCis1MDc5MiBmODgxOWJkNGU0Mzc5NzcwNWRhY2UwMTE3ZTIyYzU2MmFiNDQ5OTliIHJlbGVhc2UyNC1tYWludAorNTA3OTMgNTM0MThjYmFkN2ZkNGMzNjJiOWU3NDhmYzlkNTY1YjEzNDhjMWMzZCByZWxlYXNlMjQtbWFpbnQKKzUwNzk0IGE0YzRiN2VhNzljMGE3NGYzNjkxMzE5OWI3NDY3ODNiMWUxMTc4ZGIgbGVnYWN5LXRydW5rCis1MDc5NSA4MzJkNWEzNDEzMGZhNTM2NDU3MDc0MGRlNzUxMDY5MGExYmMzYTViIGxlZ2FjeS10cnVuaworNTA3OTYgYTRmYzRlNzUyNjM0NjgyNTI3YjdmMGQxZmVlMjViYzMyOGJkNWIwNCBsZWdhY3ktdHJ1bmsKKzUwNzk3IDYzYWVhNjg4YjViYjI2ZGZjY2RjNDBlNTY1NzI4ZGIyYWVlYzczOGQgbGVnYWN5LXRydW5rCis1MDc5OCAxYjFmZDE4YjFhZGE1MzgzYzI1ZTU2MjRmODYxYmYwNTNkNTg2MTI4IHJlbGVhc2UyNC1tYWludAorNTA4MDAgMDJmYTEwMTVjYmNjNGM5MzRjODQwYTNmOWZkMmZlNjIwMDFlOTcyYyBsZWdhY3ktdHJ1bmsKKzUwODAyIGNhYWYzN2U0NWQ0N2Q0N2VjNDc4MzU4NmI5NjA2ZTk0MGU4ZDAxODggbGVnYWN5LXRydW5rCis1MDgwMyA4OWUwOTBmZWY5ODUzMDIxY2FiNjk5NmI3ZDg0NjRiZTE4ZGI0MTMxIGxlZ2FjeS10cnVuaworNTA4MDQgZWZkZTVlZTg4YzlmNzc3OWYwMWNlNWIzZmM2MzI4ZjE3MzQyZjkzNyBsZWdhY3ktdHJ1bmsKKzUwODA1IDBjMDBlMmY1MDllMDA3OTM0N2EzZGE1ZDNkOGM1MTRmYmU3MTg3MzQgbGVnYWN5LXRydW5rCis1MDgwNiA3Y2U3ZWQyZWNkOWNhZDM0ZjI2NzdjODQzMTc3NDVjY2MyZTJiNDhlIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTA4MDcgZDcxZDQ2Njk3NGU1ODdiYjM2Mzk1N2EwOTljZmFjZWZmODc4NzFmNyBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzUwODA4IGVhZWRjY2MwMjgzZDc5MTBlNDlmZjJlNzk5YWZlOTMzODI1MWZiMjAgbGVnYWN5LXRydW5rCis1MDgwOSAwN2NlZTAxYTRmY2NjMzg3ZjBmYzFkOTI4ZmE1MGZhODFlZTdjZTExIGxlZ2FjeS10cnVuaworNTA4MTAgYTVmOGQxZDI1NWE5NzliYzcwZjRmNjhjMDc0MzliNmMzZWQyZDM4OSBsZWdhY3ktdHJ1bmsKKzUwODExIDk5YWE4NDIyNGYxODE5ZDU1MjcyNmFhOTExZWE4NTcwOTQ1NGY0N2QgbGVnYWN5LXRydW5rCis1MDgxNSA2M2E0NGM5MWE0ZDVlYmNlMzI1ZmMwZjgyMmMyZThmODJkZjEyZTI3IGxlZ2FjeS10cnVuaworNTA4MTYgNjIyODJmZGFhYzVhMGExMzU2NTk1MDJiZjNjMzRiODVmNzQ0MTZmOCBsZWdhY3ktdHJ1bmsKKzUwODE3IDc5MGE3ODJkOTgzY2M3NDQ2NDE4NTQwMjIzMGJjOGViMjE3OWRiOTcgbGVnYWN5LXRydW5rCis1MDgxOSA2NjIxZWRmZDI5NmFiOGRlMTcwZjE2MDk4ODE3MGM2NzA3ZjAyMjdhIGxlZ2FjeS10cnVuaworNTA4MjIgMmQ0YzlhY2NiOGZjYzEzYzQyODZmMTgwOWZmMjA3ZWUxYzNlOTIyNiByZWxlYXNlMjMtbWFpbnQKKzUwODI1IDgzN2Y1Njk1MGNlYThiNzQyYTQ2M2Q3NDY5ODYwMTYzNDkyZmViMmYgbGVnYWN5LXRydW5rCis1MDgyNiBmZjhlN2M0NmU0Mjk4MDFmMDU2ZDExZjBlMzE0YWM3ZTY2YzZmOTY4IGxlZ2FjeS10cnVuaworNTA4MjcgOTUzNzY3NTJlNjdjZjkzYmIxM2Y1NGNmZmIzODJhOTQ5OWRjMTdkZiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwODI4IDkwM2ZkYzM4ZDU2NDVlNGMyZTAxODkyMDBmNWYwNTRjZDk2MTdhNzIgbGVnYWN5LXRydW5rCis1MDgyOSBmOTBmMzI4NjI3NTYxYzVkNjcxYTg0YWUzOGQxMjI2MTlkNmFmMzI0IGxlZ2FjeS10cnVuaworNTA4MzAgYjkxNTFjOGM3OWU4ZjUzZTlkMzM5ZDA1MDQxMDY3NTM2Y2YwMmQyZCBsZWdhY3ktdHJ1bmsKKzUwODMxIDVkMTE2MmU2YmMzN2Y0OGQ1ZjI4ZjliYWFlNGFlZjY2ZTkzYzMyM2EgbGVnYWN5LXRydW5rCis1MDgzMiA0MGU4Y2FlZjg0MGVmMjQ5YjU2NzBjZTA4MWJiMTg5YTRiZGE2YTZmIGxlZ2FjeS10cnVuaworNTA4MzMgMTQ5MDUyOWU3NGNlM2JhYjkyODNiODU1MzNiZDMzYzk2Y2MzYTA2ZCBsZWdhY3ktdHJ1bmsKKzUwODM0IGI1NWJmMmFkZmFlNWU5MTQzYWJiOGM5OWRjNDNkZjgzM2M4NjhlYzQgbGVnYWN5LXRydW5rCis1MDgzNiA1ZjMzMTIwNTRjZWRlNjFlODM1ZTQ4NDEzM2UzZTc5NTU0NGIwN2E4IHJlbGVhc2UyMy1tYWludAorNTA4MzkgY2ZiZjU3NTcyNDU3ZGMwMzVkMDhiMTRhNDc1YmMwMTk0YTIzMWUwOCBsZWdhY3ktdHJ1bmsKKzUwODQwIDZiMjAwYjhjNjNkMzMyNjZjM2NiM2ZiYzc0ZWI5OWU4ZDA5ZjhkYTEgbGVnYWN5LXRydW5rCis1MDg0MSA2ZDE4NGZiOGM1MzUwOThkOTlhMTUzYWZlYTY2ZmYyOTdmOTQ3YjU5IGxlZ2FjeS10cnVuaworNTA4NDIgN2RhNmY4MWFkNGQ1M2U1MjFhOTZjZjU3NTk0ODk2NGM0YjIyYTczNiBsZWdhY3ktdHJ1bmsKKzUwODQzIDE3ZDU2NzFmZmZjY2MzY2E5OGQ4YzZhYzcxYTFjMGUzMmYwNGM0MDYgbGVnYWN5LXRydW5rCis1MDg0NCA5YzZkYzZkMDliMDczNjIzZTMxZjg4MWEzNWYxYWUxYzgxMGNmYTQ2IGxlZ2FjeS10cnVuaworNTA4NDUgOWYzZjFlZGQ5YzM1MDYzOGQxOWQwM2Q5YmY1NTQ1MzEyNzU2M2U2YiBsZWdhY3ktdHJ1bmsKKzUwODQ2IDI2NzA2NTA3NmYwNTlkZWYwNDIwMTVlODVhZmQ0OWU1ZjUwNTg3ZWYgbGVnYWN5LXRydW5rCis1MDg0NyAyNzFiMmJiMmZjOTIzY2YwZGYwMzNhYjVhNTEwYTE1ZGE2YjA5NWM4IGxlZ2FjeS10cnVuaworNTA4NDggZjI5MmEyYjE0YmFmNDgxMmMzNDNhNzlkODk2MWNiYWI5NjUyNDQxNCBsZWdhY3ktdHJ1bmsKKzUwODQ5IGFjZjYwMDQ3MTM2OWY0M2Y0YjNmNzJiMzRlNDhiNDg3N2ZlNjlmYzEgcmVsZWFzZTI0LW1haW50Cis1MDg1MCBmMDhjNWJiYjgwNDIxY2QzNGJlN2IxYjgwZmIyMGVmNmJmY2I5YzM4IGxlZ2FjeS10cnVuaworNTA4NTEgYjgxNjQyZTUyMjg3ZjM2YmY2YTFlMGY5Y2FiMWIxZjUyYzlkNDljNyBsZWdhY3ktdHJ1bmsKKzUwODUyIDFlMDBlZjA3YmViMjcxOTg0ODIzYjhkMmYzNjE4MDRhY2U1ZDM5YzAgbGVnYWN5LXRydW5rCis1MDg1MyAxODVmNDI4M2EzYjljZDRiNjcwZDliMGFiZGYxZjJiYmNjNDE2MmUxIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTA4NTQgMjljMmZlZTZjOTg0OGU4YTI3Nzg5ZDcxYTcwYmJkNTM0OGQxZTllMiBsZWdhY3ktdHJ1bmsKKzUwODU1IDQwYjQ0NmVkM2YxMjYyZDk2MmUyM2UxYWZjM2MxOWJiYjAwZWUzNDAgbGVnYWN5LXRydW5rCis1MDg1NiA1ZWU2ZDNkYTBlNjQ1NjQ4N2QxMDY4M2JmNzU2OTcxMTI1ODAwNGM3IGxlZ2FjeS10cnVuaworNTA4NTcgYmNlZmJjNWU2NzFhZmQ3YTE2ODQyNWNhZWFkMzJkMDhjZmE3ZWRlNiBsZWdhY3ktdHJ1bmsKKzUwODU4IDBiMGNjN2E0OTY4MmNjMGFmODFlZDRlNDAzZmUyM2Q2YmQxZGI1NzEgbGVnYWN5LXRydW5rCis1MDg1OSBkNzY1Nzc1ZWQ3OWY4NTYzYTE5OTU1Y2Y4ZTViMDVhYTg5NTdlZjg1IGxlZ2FjeS10cnVuaworNTA4NjAgOGNhMzA2OGVhMzQzYTI0YWU3M2FhYjBmNDE0MTBhNTEwOGNmNDMwZSBsZWdhY3ktdHJ1bmsKKzUwODYxIDAyNWMyN2I4MTJmNjhjNDI0YTY2ZWJiNjhiMTgxZGRiNDI5ODcwZWQgbGVnYWN5LXRydW5rCis1MDg2MiBiMDExYmVjZjhjODIyYzJiYjU2NTRjOTkxZDdhNzZkMjAwMWVkMjE4IGxlZ2FjeS10cnVuaworNTA4NjMgYzE4YTY2OTRhMDY2YzdlOTVkMTVjNjdhYWM1YjRmNjY2OWQwN2VjOCBsZWdhY3ktdHJ1bmsKKzUwODY0IDAwYWNlNmU0MDhiMDM3MWEwZjIyNTg4MTU3MDRjNjBmZjkyNGMyNTIgbGVnYWN5LXRydW5rCis1MDg2NSBhMTEwYTQ0NjIxODlhMjAwMDJiOGQ4ZDRmMDc0MmU2NTRhZjRjNzBhIGxlZ2FjeS10cnVuaworNTA4NjYgNjFjMGZlNDgzNzZhMTJkOGEzM2M1YjY0MzVlMWZjNWMxOTU0YmIyOCBsZWdhY3ktdHJ1bmsKKzUwODY3IDYwNTIyZGZlNjI1OTkwYjA0NWE0MGE0MTEwMDdkOTg5Y2UwMzA1OGYgbGVnYWN5LXRydW5rCis1MDg2OCA3MmE1MmU2ZmM2ZjEwZTUzZjUwYjZmMTIxZjIwNjQyNTMwNDQ4MTM3IGxlZ2FjeS10cnVuaworNTA4NjkgODc5YmQ3NTEwZmVhMDBkMjEyNjk3YmFlMjJjMzk3NWM4NmE4YmYwMSBsZWdhY3ktdHJ1bmsKKzUwODcwIDZiM2Q0YTBmMmFjNTkxNTc4MDc0ZDVmZDM3ODRlYjQyZTY4Nzc5NDQgbGVnYWN5LXRydW5rCis1MDg3MSBjNGE3NTQ2YTUwOWYxNzRjMzg4ZGU0MzQ1NmMzZWJjMDZkMGU4NmUyIHJlbGVhc2UyNC1tYWludAorNTA4NzIgY2U0ZGZmMmE5NTIzODAwY2I2NTA3MTQyZWIwOTljZmE2NDg2MmNkMSBsZWdhY3ktdHJ1bmsKKzUwODczIGVlYTY3NDIxMWQzMmJjMWQ1NjNlMDJkMmVmZGQ5OTNlMzk2Mjc0YjEgbGVnYWN5LXRydW5rCis1MDg3NCAwZDBkODJlNDBiOTI3ZTUzZGFiODYzZWY2MDRkYjJhNWM1NTE1ZDg5IGxlZ2FjeS10cnVuaworNTA4NzUgYzZkNGMwYWYyYTEyMjI2OWExOTEwZDRhYjFhNTMzYWIwZmZiZDZkMSBsZWdhY3ktdHJ1bmsKKzUwODc2IGFjMDFiNjM1OWI2MjE1ODhjZDhmYjNjNGY3MzFkM2FkNjk2YTgyMDggbGVnYWN5LXRydW5rCis1MDg3NyBiMGNkY2JjYzVmNDU3OGRiNjRlNGM3MTAzODA0YTZlNGRiODUxMWZlIHAzeWsKKzUwODc4IGE3NTMwMDM2ZjA1NWNiZDg0MjE4MDM5MTk2NmZhMTZhNjJmNjliMDkgbGVnYWN5LXRydW5rCis1MDg3OSBlMTlkYTliMDAyZGEzMWM2MmYxODgzYWRhMTJkNmE0NTNlZDk2ZWUzIGxlZ2FjeS10cnVuaworNTA4ODAgNmViMzc1N2MyYzk5MWQzNjg5ZWI1ODc0N2IzM2E2ODIxZGVmOTNmMiBsZWdhY3ktdHJ1bmsKKzUwODgxIDI4Y2RkNDNlMDU2OTAyY2ZmYjdjMGMwMmVjNmNlNjJjYzQ2MjdlZTUgbGVnYWN5LXRydW5rCis1MDg4MiAwNzgxNzJlZWFhZTUzZDYxNDEyMzA3NDA4NDg0YmE5ODFhMmJkMmUzIGxlZ2FjeS10cnVuaworNTA4ODMgMGIzZmQwNGNkZmI0ODg1YzczNjk1ZDQ2NzFlYWFhYTI2NjMwZGM3YSBsZWdhY3ktdHJ1bmsKKzUwODg0IDExMmYyMTg4MjEzYjI0Y2IyMzc3YTBkZTJlMGNhZmRmZTUyY2NiZmUgbGVnYWN5LXRydW5rCis1MDg4NSA0MGNlYmFmYWU1NmZmNjAzZjgxY2RkOWUwZTJlMjUyYTFmNzRjNmI3IGxlZ2FjeS10cnVuaworNTA4ODYgMzUwNDNmYmE3YWVkODAxY2RkYTUzYThkMjcwYjcyOGYzODAzMmZmNSByZWxlYXNlMjQtbWFpbnQKKzUwODg3IGNkOGYyMGQ0MDBjMWM2NWEzMzBkNzNlNGNmNDk3YmE0ZDYwYmQyYmEgbGVnYWN5LXRydW5rCis1MDg4OCBlZjFlN2YzZDlmOWQ4MmVjOWNkZGI3NTlkZDAzOGZhYWQzN2IyYWVlIGxlZ2FjeS10cnVuaworNTA4ODkgNjFjOGI0MTA0YWVmYWVhNTIxMWY2ZjljZjBjODU0MWU4N2VjNGVhOSBsZWdhY3ktdHJ1bmsKKzUwODkwIDc1NDMxYjBiZmIwZTcyMTNiMGIzNGIwOTYwZmVlMDkzYTYzNDE3N2YgcmVsZWFzZTI0LW1haW50Cis1MDg5MSBiOWYzNTNjMmMwMjNlNWI5ODYzMzJkNzg2OGVkNmFjYzMyMDUwOWFmIGJjYW5ub24tc2FuZGJveGluZworNTA4OTIgNjk3YWUzNjJlZDAyNDE1MmExMDg3ODNjNjM5NjdlYTAwMTE3ZDcxNCBiY2Fubm9uLXNhbmRib3hpbmcKKzUwODkzIDQyNzZkMGI0NjlhZmZmMjRmMmI3ZTI3MTAxZTA2ZThiNWY3MmJkYmMgcmVsZWFzZTI0LW1haW50Cis1MDg5NCAyNzdkN2FmNTVjNDk0NWE3ODBhYjM4NGQ3NmVmMjNhYmU3NDUzZjc5IHJlbGVhc2UyNC1tYWludAorNTA4OTUgNGE2YWRlOWNlNzgwZGI5MDU1N2EzNmExY2Q5YzA1Mjk2ZTU0ZTQzNSBsZWdhY3ktdHJ1bmsKKzUwODk2IDU1ODY1ZDdiYzZlYTQ5MTQ0NWFjYWE1MzExYmUxOTlhNThmMWVmYzcgbGVnYWN5LXRydW5rCis1MDg5NyBiZjE5ODRjMTNlMmY3OTg2NDQ2NDlkZmNjMDgwZTgxODAxYTBkNjEzIGxlZ2FjeS10cnVuaworNTA4OTggNmRhY2RjMWEwMDU0ZmE5MzY5YzczYTk1OGY1OTEyYTJlYmM4NjY5YiBsZWdhY3ktdHJ1bmsKKzUwODk5IDBlOWEyNjlhMjE4OTBiMTAwNWU4YjgwOTBkYzY3NmYxNzYwYTEyOGQgbGVnYWN5LXRydW5rCis1MDkwMCBkMTY2NGE1MDFkYTVjYmRlMGUwMDEwN2U4ZmZjOTk2MWU4YWJkYTM2IGxlZ2FjeS10cnVuaworNTA5MDEgMGRlOWQ3MTQ0NGY2Mjk2ZWI1ODQwMDcxNjE2MGExNDYzYTNlNWQ3NiBsZWdhY3ktdHJ1bmsKKzUwOTAyIGE5YjJmZDJkNGM5NjE3Y2E1NDM0MDk3M2U5MjI0NjFhNjYzZTQ4NzggbGVnYWN5LXRydW5rCis1MDkwMyBjODM0Y2I5NTYzN2FjZGIxN2QyM2RkMTZkNmFhYzMyZGE2YTBkNTRlIGxlZ2FjeS10cnVuaworNTA5MDQgYzNiYjRiMjNlYjliM2ZiYWNhMjYyYzlmODFlYzA5ZmNhZjY5MjA4ZSBsZWdhY3ktdHJ1bmsKKzUwOTA1IDQwNmMxZWZlN2JlZWQzNDY5ZjY5MWU2OWIxM2NjOWJjMzNkYjcwNTUgbGVnYWN5LXRydW5rCis1MDkwNyAwNGRmMGE5NzIxYjJjNzRjYmYzMDE0MjVjNjIxZWI5NTNmNDIzMmY3IGJjYW5ub24tc2FuZGJveGluZworNTA5MDggMWI1OTdjODAxNTcyMjJjNDMyOTEwOGQ0YzczNDhmZjQ3NDA0NGI5ZiBiY2Fubm9uLXNhbmRib3hpbmcKKzUwOTA5IDlmZGM2ODQxYzNlYjY5YzcyZWExN2ZiMzRhMDFjNTQzZjIzZmEwMWEgYmNhbm5vbi1zYW5kYm94aW5nCis1MDkxMCAzMDhiYTY0MzE3M2EwMDRmM2ZiY2I5ZGE0YTU2YmIyMzI4Mzc4NDNhIGJjYW5ub24tc2FuZGJveGluZworNTA5MTEgZWM1MTZiYWY4YTMwYzVkNTljMjVhMjFlMmQ4MmI2NDRhMzk2NTQ2MyByZWxlYXNlMjQtbWFpbnQKKzUwOTEyIGYzZDU0MDc1MWFkZTA3ZGQ5OGNhYjEwODYzZWNkMmZkYWI3MTE3MTUgbGVnYWN5LXRydW5rCis1MDkxMyBjNGFjNmVhNDk3YTEwNWVkMzU0NDNlNGU2YTI0Mjc2YzY5ZDkzYjk2IGxlZ2FjeS10cnVuaworNTA5MTQgODdjOWUzMzFkNWM4ZDYxMTJjODEzZGU4MWEzZGY2NGFiZDg1ZjI2NyBiY2Fubm9uLXNhbmRib3hpbmcKKzUwOTE1IDZiOTZkOGM5MjNiZWM1YjE1ZWE0ODUwYjEzMzcyOWI4MTVkNGJmODQgbGVnYWN5LXRydW5rCis1MDkxNiAzZjQ0ODViMjBlNzk5ZThjYWUyN2EwZjdhYTgyY2MyNzUwOTQ4OGE0IGxlZ2FjeS10cnVuaworNTA5MTcgNWU4NWVlZTMzNTgyOGQ4MzVkOGE4MDQ5NTQ3OTUzYmVkZDhlMGM4MSBsZWdhY3ktdHJ1bmsKKzUwOTE4IDEyY2ZhMWJjZjg0M2Q3NGJjYmUxM2U4NDI1MjcxZTNmNGIzZmQxMWYgbGVnYWN5LXRydW5rCis1MDkxOSA4YjljY2Q1ZDkzMWUwZjI0MzdiNWFmMzQzNDdlZTA0MGM2YjQ2MTk4IGJjYW5ub24tc2FuZGJveGluZworNTA5MjAgOTI1YWI0NzgyOTk0MjQ5NzA5NzNlMjk2ZmQyNjk1NDM5ZDllMmIyNCBiY2Fubm9uLXNhbmRib3hpbmcKKzUwOTIyIGE1NGFlMjU4M2I3MDEwMGNhMjA4ZmUxMTM1ZTZiNzgzN2U1MDBiZWEgbGVnYWN5LXRydW5rCis1MDkyMyBlNzk1ZTA1ZDZkNTY1YzYyYjkzMmEzN2MwMmI2NzI4NWYyODljMDA5IHJlbGVhc2UyNC1tYWludAorNTA5MjQgNmM4YmM3Y2Q3MmE2YzlmYzdmNDgxZTAzYzAzZmVlMGE2MWU5YTIzZCBsZWdhY3ktdHJ1bmsKKzUwOTI1IGZiNmJjY2ZmYmUzMTBhNGIwODgyNjBmZGMzMmRjNDcwY2M3YmFiZDkgbGVnYWN5LXRydW5rCis1MDkyNiBjZGI0Nzg3MjI2YWYzYjU1MzEwYWU4MDVhOTQ5Y2YzMThhMzA1MTE1IGxlZ2FjeS10cnVuaworNTA5MjcgZDQ1MzQ0MGIzM2M2ZTUxNzMzZjFkM2ZiMmJiYWEwMGZhNTU2YTk0MyBsZWdhY3ktdHJ1bmsKKzUwOTI4IDFmYWQ0ZjNlMzZiYTRmYjA0NDM5ZDQ2OWNmMWI1NDE4YTcxZTdjZWMgbGVnYWN5LXRydW5rCis1MDkyOSBhYjM0OTVkZjRjY2VjYmE2ZTFkNjI4ZmQ3YThjNzNmYTQwNzBlMDZlIHJlbGVhc2UyNC1tYWludAorNTA5MzAgYmQyNmExOTUzYzA1YmUyZWFmZDNhNmRlNTZkNjgzODA3OTRiYWY4NSBsZWdhY3ktdHJ1bmsKKzUwOTMxIGE5OTVjZmY4NDNiMzQwZTFmNWFiOGM5NzdkMjI0ZmFmYzBjYzhiMTMgbGVnYWN5LXRydW5rCis1MDkzMiAzZmVkN2ZiNmJjOTY0NDkzOWNkN2VmM2MwMTcyNjE2YTRhNTBlMjQ1IGxlZ2FjeS10cnVuaworNTA5MzMgNWYyMTU0M2MzM2RjNGVjYTdhZTNlYTI1MzFlNzQ2ZmJiMDkxZmQ5NiBsZWdhY3ktdHJ1bmsKKzUwOTM0IDJmM2Q4NzFiZjZlZjIyZjM5YTI1N2M2NjY5MzRiODczZTQ1Y2RjYzggbGVnYWN5LXRydW5rCis1MDkzNSA2ZmY3MmFkOTNhZDJiYTYxN2M1MTUxZjE0ZTFlMTg0Y2E1YjRjYjljIGxlZ2FjeS10cnVuaworNTA5MzYgMWM5NGY2NjIzNzc3OWI1NmJhYTk3MWUxNzFmZmQ1YTBlYmJkMTI4OCBsZWdhY3ktdHJ1bmsKKzUwOTM3IDZhODk5NWMyZThiYzk5MWQxOGNhY2MzNDA2MDIyMWYyNDM4NjBiMWYgbGVnYWN5LXRydW5rCis1MDkzOCAwNjkxZDkwMWQ4OWNiZjNiYWMwZDUzYmE1ODcxZmFmN2QyNDg2ZDIyIGxlZ2FjeS10cnVuaworNTA5MzkgMGFiYTZiMWY1YTAxYzNiZGY1ZGYxZGExMmI0M2JiNWRlMTc3YjNjMCBsZWdhY3ktdHJ1bmsKKzUwOTQwIDFhMjIyZjExMGFhYWY5OWRkMTIxODI1ODg1NjRlMTFlMTE1MjU5MTMgbGVnYWN5LXRydW5rCis1MDk0MSBjYjFlNDMyYjQ5MTlmMTA2NDQwNmE2OGM4ZWYxNjA4MzU4YmQ2NTI0IGxlZ2FjeS10cnVuaworNTA5NDIgNGRkNTJiYTUyZGU4M2VlMTNjMzNlZTc3NGVhMTJmZDQ3NjU1OWE2NSBsZWdhY3ktdHJ1bmsKKzUwOTQzIDNhMmQzZWRhM2UxNmU1ZDRkOTZkOGZhNWQ1NTdmNDEwN2JjYmNmMDEgbGVnYWN5LXRydW5rCis1MDk0NCAzNDk4M2MwYjI2YmMyOTI2NjI5ZTIxMjY3NGM4OGYyNjFmODQxMDdkIGxlZ2FjeS10cnVuaworNTA5NDUgODA2OWQ3M2FjYmRmOGI1ZTlkM2I4N2M2YWU5MjFhYjVmOGIwYjlkNyBsZWdhY3ktdHJ1bmsKKzUwOTQ3IDM1NTgzZjU1YzVhOGE1NWEwNjdhMWJlMWNmYjQwZWYxYWU0ZDI2NGYgbGVnYWN5LXRydW5rCis1MDk0OCA3MjgxNDI5YTAxZDY3ZDRiYjcwOTg2ZjJlNTc3MTk1ZDZiYzQzMmY0IGxlZ2FjeS10cnVuaworNTA5NDkgMzRjMjBkM2YyNTEwNjQwNzNkZmQ2ZWIzZDI5MDMyOWI3ODE0YTAxMiBsZWdhY3ktdHJ1bmsKKzUwOTUwIDg4ZGI2MDJmMjNhNmQxZTVkNDVhODQxMjQwM2MwYWU5YzU1Nzk1OTQgbGVnYWN5LXRydW5rCis1MDk1MSA0NWEzNTRmNzRkODBkNjU0MDlhMGRmMmE1YTJhNTkyYjZiZGI0NDZkIHJlbGVhc2UyNC1tYWludAorNTA5NTIgNGRiOWQ5NTMzYjE2M2QxNzljMDk5OWMwYjRiZTY3YjU3OTFmNmI1MyBsZWdhY3ktdHJ1bmsKKzUwOTUzIGQ4ODg4YzhiODcyYjEzYTczNzRkNDYzYTM2Njg4NzBkZGNjZmFmMTUgbGVnYWN5LXRydW5rCis1MDk1NCA2YTVmNzlhNGU2ODczM2UxMzZmMTI1NmMwYzFiOTExNzI1ZjhmZjU2IGxlZ2FjeS10cnVuaworNTA5NTUgNWFkNmUyYTcyYjJhYzJhMTQyMzk3ZjQyMzU5YzFlNWZjOWE4MTE5MCBsZWdhY3ktdHJ1bmsKKzUwOTU3IDZkMWY2NzNmMDU5MDdjNjgzYjcxOTQ2ZjcwYzFhYTBlNTI0NzQ0NTggbGVnYWN5LXRydW5rCis1MDk1OCA4MDU1MTJjZjE0ZWZjYTY1ZWQ4Y2JiZTBhYTBjOTJmYjEzZjFmOWU0IGxlZ2FjeS10cnVuaworNTA5NTkgNDQwN2U1MTkzYTRiMGM5MTcyODVmMjJmY2MwODQ3ZWM4ZTA2YzRjNCBsZWdhY3ktdHJ1bmsKKzUwOTYwIDRlM2FkNjVmNTVlOGVlMjdjZWEwMTIxYmJkYTk2NGVjYWQyYjNjNDUgbGVnYWN5LXRydW5rCis1MDk2MSBlZmJhZWM5Njc0ZGZkMWY5OThkMDY1NjM0MzIyYzdmMWFhZTg5ZTFhIGxlZ2FjeS10cnVuaworNTA5NjIgZGQ1MWU1NmI2Y2IwYTVkMjllODk3YmJjMjVhMDBlMzE2NDlkNDlkZSBsZWdhY3ktdHJ1bmsKKzUwOTYzIDE1MjNjMzhjZDUwNWZmMjE5MjJiNmY4YjQ3ZGUxZDNkNzAwZmYyNjkgbGVnYWN5LXRydW5rCis1MDk2NCAzODhiN2Q5MGJiODk2M2U5N2U0YmRjZWIxZTZkMTg3NGZiMmQ4ODNkIGxlZ2FjeS10cnVuaworNTA5NjUgZjY5ZDkxYTdjZjcxNDg5NGVkZDA0NmVlNTdlMzE0MjA2Y2EzYTc4NSBsZWdhY3ktdHJ1bmsKKzUwOTY2IDc3ZjM2NTNiZmMxNDgzZjc0MGIxMjBjNzc5YThlM2ZlM2FkYjYxYjggbGVnYWN5LXRydW5rCis1MDk2NyBhZWU5ZjBkNWZkMmIxNjcyNDUzYWRlZTlkZTUyMGI2M2M3M2I2Y2M4IGxlZ2FjeS10cnVuaworNTA5NjggYjc0NWIzZmQ2NmE2NDlhNWZhNTQwYmRmNDc5NzFjMjZhZjBhOTU5ZSBsZWdhY3ktdHJ1bmsKKzUwOTY5IDdkYzVmM2VkZTRjZGM2MmJmZWZiMWQ3MGJkMGJhZWJjZDk3NTgzNjQgbGVnYWN5LXRydW5rCis1MDk3MCAwNDFlYjYyMzFjZGMyNDE2ZDliOTVkMDY1YTgyZWNiMWExNDc1NTUyIGxlZ2FjeS10cnVuaworNTA5NzEgMWI0ZTVlYjIxMDQ5ZmI1ZTU5YTNiMjQ0NjhiYzhkYzg5NzAyMGE5OSBsZWdhY3ktdHJ1bmsKKzUwOTczIGNlYmVlMWY4NTIyMjE5MTFhZGIwYmIwOTU2YjE5NzU4ZDRmYWM2MmMgbGVnYWN5LXRydW5rCis1MDk3NCAxZWI5MjE1NjQxYTg4NDRlYTY0MmMxNDc3OGNkMzAzMDVkM2UzMmI5IGxlZ2FjeS10cnVuaworNTA5NzUgMjE2ODc3Yjg2YmMyODY1Zjc1YWYxYTM5NTNlYzk4OGNjNTIyOTU4NSByZWxlYXNlMjQtbWFpbnQKKzUwOTc3IDkzNzdjNjYwNDU0MmNlNmVhYmY1ZDBlNjJjZDQ0MzVkZTZkMWVjOWUgbGVnYWN5LXRydW5rCis1MDk3OCAzNjFlZjdjZWVmMjhkOWY2M2ViM2U1YzdlNTU3NTgzZjBhMTM1NDNkIGxlZ2FjeS10cnVuaworNTA5NzkgYmRlNThhNzhmYzcxMmUyYTk3MjVkNDc0NTgxYzE0YzliMzBhMWUzNyBsZWdhY3ktdHJ1bmsKKzUwOTgwIGQ5M2EwNDM0MGU2YmJhNTc0N2VmMGIyZmYwOTk4MDUxZTZmYzkxZTMgcmVsZWFzZTI0LW1haW50Cis1MDk4MSA2NWU3YjQyMjM0NDRmMzZjODY3ZDk3MDEyYzQwZTk0ZDRlMzJmMTMxIHJlbGVhc2UyNC1tYWludAorNTA5ODIgOWI5NTgwOTgyMDM1NWI2ZjFlNDg3NDcxYmNlMWViOTA0ZDc0MDcwYSBsZWdhY3ktdHJ1bmsKKzUwOTgzIGM5OGEyMzUyOTgzYTQ5NmQxNGE5OGQwOTkzMGU2NGUxZmY3MTUzZmIgcmVsZWFzZTI0LW1haW50Cis1MDk4NCAyOWM3NjM1ZDAxOTlhYzViZTJjOTc5OTQyZWUxMDJiMDljYjI0NmUxIGxlZ2FjeS10cnVuaworNTA5ODUgN2Y0NGQ2MzRmMzc3YmQ2ODliMzlkZDRmYjJhZmJmZThkZmUwOTJjOSBsZWdhY3ktdHJ1bmsKKzUwOTg2IDRhZWQ0MzY3YWRkMjdjZWViZmJkZDdkODUzZjJiMDI1MGMwNmE5OTIgbGVnYWN5LXRydW5rCis1MDk4NyBkMGU2MTcwNzA0ZGVlODUwOTYwMTRiMzM3ZWQwNDFkMzJjYjMxYWFmIGxlZ2FjeS10cnVuaworNTA5ODggYzg3YTM5NTFkZmM1MGFhMDcxOGJmZDhlMjBiMDljNjY5MWYxZDUwOSBsZWdhY3ktdHJ1bmsKKzUwOTg5IDRlZDVkNGM4ZTY1NDI0ZjRhODExYTA1N2FhNTc3MDFmMmQ5ZWUwYTMgbGVnYWN5LXRydW5rCis1MDk5MCAzOTVkMTVlODM3NGE3MGEwNmE0NmRjNDc4MzI4MGQzM2MwODUzZTJlIGxlZ2FjeS10cnVuaworNTA5OTEgYWVjNjY2OGM1OGQxZTFmODkwMmZlODVkNTIwNjcyMjFkOWM5ZWI1MiByZWxlYXNlMjQtbWFpbnQKKzUwOTkyIGNmMDQ2ZTIyZDdkZDU5YzRjYTMyZDI0NzM0M2Q2OGJkMTAxYTJmYmQgbGVnYWN5LXRydW5rCis1MDk5MyA5MzBiYjFlYjhkZDVkMWNhYzUyOTc0MTUzNDg4MTRiZjc0N2Q4NTIwIGxlZ2FjeS10cnVuaworNTA5OTQgM2RkNDEwMWNiN2U5Nzc5ZmZmNDQ1MjNjN2JhOWFkYTZjYzc1OWI4YyBsZWdhY3ktdHJ1bmsKKzUwOTk2IGY3ZjEwYThiOTZlZTdkNjAxNGY3NjQ4N2RkN2UwMzk1Y2U1MDM3ZjUgbGVnYWN5LXRydW5rCis1MDk5NyA3ZjA0NzkzZmUxMzVlNWU4ODQ5NTdhNTc0ZjQ1ZTI1YTMzODQyOTkxIGxlZ2FjeS10cnVuaworNTA5OTggOTEwMTUxNTI0ZjVlZWIwZDMxNTExM2NhZjVjYTAxMGU2OGFhYjM1YSBsZWdhY3ktdHJ1bmsKKzUwOTk5IDY2MjgxNDg4ZTkwMjNhODIyZDY5N2FmOTVhNzllZWMyZWQ3MDIzODEgbGVnYWN5LXRydW5rCis1MTAwMCBiNzliNjhiODJhNDQ1YzMzMTFlMjU5MjBjODc1NTc3ZDhmNDlkNTQxIGxlZ2FjeS10cnVuaworNTEwMDEgODZlODFkZWZjMjg1NmU2MDIwODEwZjU4ZWU3NzQyN2EwZGU4YmQ5ZiBsZWdhY3ktdHJ1bmsKKzUxMDAyIDNiNzg5NTdjNzc5MTk5ODRiMDEzYmI5NmRiODA1MzU4NTEzOGFjMWIgbGVnYWN5LXRydW5rCis1MTAwMyBmM2UwODkxNWI4N2I0NDM1NjFiM2MzM2IxNDFhNjU0Y2QxOGNhMWYzIGxlZ2FjeS10cnVuaworNTEwMDQgODZjMzYxOGE0OWMzZjNhNTkyNDU4ZjVlZTliODQ3M2NkMWU5OTg1ZSBsZWdhY3ktdHJ1bmsKKzUxMDA1IDQ5NjZiMTc5NjNiNDFlN2U3ZTYwNjFlNGRlZTZlNDVkMGNhYTA0OWEgbGVnYWN5LXRydW5rCis1MTAwNiAzZGU4YTU4YWUwYjllOGUxMmRlZTI0MTNhYjRiNmZkYjk1ZWYzZDI4IGxlZ2FjeS10cnVuaworNTEwMDcgMzkzOGU2ZWZhNzkzZDZiMzE3NmU2NWMwMzg3MzAyM2U0MzQ3YzgyMyBsZWdhY3ktdHJ1bmsKKzUxMDA4IDMxNWE2NmQyMjQ3YTc5MWQzYjBjZjQwYTczMjU0NDI1NDUwODE4MzMgbGVnYWN5LXRydW5rCis1MTAwOSBmZjIyM2I5NWYyMDdlMDlkMzNiYzUwOGQ2ZTI0ZTRkYTJmYzg4MDNlIGJjYW5ub24tc2FuZGJveGluZworNTEwMTAgOWQ3YzQ1ZDBkMWJmN2VjMzY5ZmU3ODNjMTQ3Yjk5YTJjMmFkMDI5NyBiY2Fubm9uLXNhbmRib3hpbmcKKzUxMDExIGVlMmQ0NmFjMmY2ZTdiNWI5ZjE2ZTQ3Nzc3NTlkOWY4OTNhMzYwNDYgYmNhbm5vbi1zYW5kYm94aW5nCis1MTAxMiAxYzBjMTI4MzhlNjI1M2VkZjE1MTE4ODA4MWQzMTIyOTZlYjNmZWY4IGJjYW5ub24tc2FuZGJveGluZworNTEwMTMgODJiNjc1N2ZmZmY0NzZiNTYxNDU3NWU2MmYyZTliNGI3NDI1OTFiNiBsZWdhY3ktdHJ1bmsKKzUxMDE4IDkxY2E2ZWVhZWI0YWNjNTY0ZTBmYWFjMzllYTEwYjI3MzNiNGU1YjEgbGVnYWN5LXRydW5rCis1MTAyMCBkMzlhZWU2Y2RkMzJjZmFiZDFjYmRlYTJiNjE3N2UyZjFkNmRiYjc4IGxlZ2FjeS10cnVuaworNTEwMjEgNTNkMDU1MmE3YThjNTA3MTUxM2JiMTA2NzVlOTIwOTZhYzQ2YTUwZiBsZWdhY3ktdHJ1bmsKKzUxMDIyIDI5MTVjMDcyOWYwYThjZTZkMzE4YjMxMzk1NmMxZjUyYzRiY2IwMGYgYmNhbm5vbi1zYW5kYm94aW5nCis1MTAyMyA3ZTAzMTgzZWI3YTUyYTFjOTRiMGRjNTc1NDc4ZmUwNTBkOGFkODA2IGxlZ2FjeS10cnVuaworNTEwMjUgMTU2N2MwMWNjYTczZjlmNjg0ZTNiZjY2MGZiOWE5YjM2NmU0YTUxOCBsZWdhY3ktdHJ1bmsKKzUxMDI2IDQ2Mzc3YjA1ZTE4MTU4OTE1YjY0Nzg1ZTFhMGU3OTZjZDZhODFkN2UgYmNhbm5vbi1zYW5kYm94aW5nCis1MTAyNyAyZjIyMWJkZDlmNDRiOGY4YzkxMzdjNzAyZTYxMzRiNTliZjQ5ODFjIGxlZ2FjeS10cnVuaworNTEwMjggMjMyZDE1NmJlYjgyZmM2YWQ0MmUyODkzMDhlMGU3NmFmZjU5NWMzNyBsZWdhY3ktdHJ1bmsKKzUxMDI5IGQyMGI5YTJkOGVlNzMwMjA0YmEyYWRhN2YxNGQ5ZGZmZGVhZWEzOTEgYmNhbm5vbi1zYW5kYm94aW5nCis1MTAzMCBjZDgyZWJmYzY2YWZkNDY0Zjc0ZWZlMjJiODNiYjJhZWE4NWRhN2EzIGJjYW5ub24tc2FuZGJveGluZworNTEwMzEgYmQ1MGE0MmI3ZGYwZDBhNmVkZjEyNTFiMjczODJhYmVlMjdlMzZlNyBsZWdhY3ktdHJ1bmsKKzUxMDMyIDRmMTVhYmIxMjBkYzUxNjMyMzg1YjBlZDAyMTAxYzIxMTJlM2NmYmUgbGVnYWN5LXRydW5rCis1MTAzMyA3ZDZiOTcxNTgxODA1YTc1MGJlZjRmNWI0NTkyNTk5MDZkYjQ1ZDAwIGxlZ2FjeS10cnVuaworNTEwMzQgZmEyZGFjMzkyNmZmYzE1OWRhMTM5NmQwYTgwODA1MGU0YjBlMDgzYiBsZWdhY3ktdHJ1bmsKKzUxMDM1IDU5NzYyZTc5NjI4MTJmYTc4NjRlZDk0MjFmZWQ1MmE3YmEyNWVjOWMgbGVnYWN5LXRydW5rCis1MTAzNiAxMmZmZWQ5MjdhM2Q0NWQxOTUwYWRjNTBiNjlmZmI2NjA0NWMxNWQ2IGxlZ2FjeS10cnVuaworNTEwMzcgMzQ0MzY0YjQ5MjA4NTY4ODY5MzZlMWVhNWY4ZjRmOTAzZmYxZDU0ZSBsZWdhY3ktdHJ1bmsKKzUxMDM4IDAwMzUwY2JlMGE5ZTk0ODdjYjZmNjU4MDVhZjVkODllYjU2ODIxYzEgbGVnYWN5LXRydW5rCis1MTAzOSA4NWZkY2RmY2E4NWMxY2JhMWI5N2JlYzZmZTJjZmY4ZjI1YTMyOGM2IGxlZ2FjeS10cnVuaworNTEwNDAgNWY5ZmEwYjg2M2FlZTgwZjk5MjNmZWY1ZTA4ZTE0M2U0NjdiYTI4YyBsZWdhY3ktdHJ1bmsKKzUxMDQxIDhiOTMxNzRkNTAxYTRjYjliNGUwZGQ4MDFjMzdhNDAwNjg3ODUwYzEgbGVnYWN5LXRydW5rCis1MTA0MyAxZWFkNDEyMjFiZDg4MGVjMTlhZDEyNTliMjlmM2EwNTZhNGQ3ZDJiIGxlZ2FjeS10cnVuaworNTEwNDUgY2UxMGUzY2M3YWViZTg5ZjI0Yjc0NzhhNTA4YjcwOGMzNjAxMTc5ZiBsZWdhY3ktdHJ1bmsKKzUxMDQ2IDgyZjU2MjA3NjUyZjY5Y2FiMmE5YzIzMDY1NTY3ZWM0MDcxZWM0ZDggbGVnYWN5LXRydW5rCis1MTA0OSBjMGFiYjE4Mjk5YjQ0MmUxMTYwZDJmOTU4YmNlMThmNjY4NTBjYWE5IGxlZ2FjeS10cnVuaworNTEwNjUgY2RjZjJiY2FkNjI0ZWE4YmFjNjM2NTYzZGZiODE5MzAwNDc0MGE3YSBiY2Fubm9uLXNhbmRib3hpbmcKKzUxMDY2IGMzODk4YTczYjM4NjA3ODc1MTM3ZjNmMzdkYTlkNzFiYmQ3Mjg4OGYgbGVnYWN5LXRydW5rCis1MTA3OSBlYzRmMzVkMmE2OTNjZTE5NTAyZjA2ZDZhYjRmNGM1YjVkMThmZWYzIGxlZ2FjeS10cnVuaworNTEwODAgYjkwYThiMDM5NWJkNDNmZDE5Mzg0MjQ1MWQwYzQ5NTczYjRkNzE2NiBsZWdhY3ktdHJ1bmsKKzUxMDgxIDhlZjNmOGNmOTBlMTIxYTBiNDBhMGUzZmI3YzMwODZiYzBhOTE0NDAgbGVnYWN5LXRydW5rCis1MTA4MiA3NWJmNzczNjdkYTMyMGIxMjU5Mzk4OWZlOTFlYmVjZjdlYmIyNGQ5IGxlZ2FjeS10cnVuaworNTEwODMgODI5NmZiOTZjYzE4NGY2NGEwMDdmYTQ1ZjU2ZjgwZWI3Nzk3MTgwZCByZWxlYXNlMjQtbWFpbnQKKzUxMDg0IDU1ZjgzMDE4MzUzMjZlNmNiYWJmZjJhOGY4Nzc3MzM5YzBhMjAxNTcgbGVnYWN5LXRydW5rCis1MTA4NSA4NDk3NGM2NzY5MDMxZDBmNTdhZmNlNTgxODdmNzI1YjdiODQ0MGFhIGxlZ2FjeS10cnVuaworNTEwODcgNzdjZjE4YjhiMWNlMTMzMDBkYzlkMWY4NzRjNThmMDQ3NzNlYjM0YyBsZWdhY3ktdHJ1bmsKKzUxMTA0IDEwMDRhMTZiMGYwOTFiYjc4M2YyODQxOTUxOTEyYjBmYmVmYTdjYTQgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MTEwOSBlYjIzZDA5NmQ2OTQ2ODk1MTk0NzZmNmFjY2NhOGFiNmQxMjAyM2ZlIGxlZ2FjeS10cnVuaworNTExMTAgYTljNzQyZDZjODg4ZWUzMzUzMWJhZGJmZWU5ZmQ0ZDczMTcxZjEyYyBsZWdhY3ktdHJ1bmsKKzUxMTExIDAyMzgxNjZmMDdiNzAzNWRjNjZhMjQwZjEyM2I2NzVkNmQ1M2FkMzMgbGVnYWN5LXRydW5rCis1MTExMiA0MDU4NWZiMzg3YmJhYTgyMzk5MDRhNjI3YTNhZjU0OWRlNWU4NmE1IGxlZ2FjeS10cnVuaworNTExMTMgNDY1YTA3OGQyY2E2YjdhMzZkODkxM2YzNDQ4MDMyNjI4NGY3ZmYzMiBsZWdhY3ktdHJ1bmsKKzUxMTE0IGFhMGNjNzU1MDc0ZWI4OTEwMWMzNmQ1YTUwMDRhN2MwNDY0MzZhN2IgbGVnYWN5LXRydW5rCis1MTExNSBlZmE4MDYzMzMwOWRhODc0NWMyM2RiY2M2Yzc2MzEzYmE0YzQ5NzEzIGxlZ2FjeS10cnVuaworNTExMTYgNjU2N2MzMmFiODgxNTUwZTBlMGMxNTIzYjJkMGJkZTU5ZDM0MjZlZCBsZWdhY3ktdHJ1bmsKKzUxMTE3IDk5OWE0OTE0ZDUzY2I0MWY3ZGRmZjM0MGJlOTBlZjYxNWM2YzMzZWYgcmVsZWFzZTI0LW1haW50Cis1MTExOCBmZjRiMTU3ODAzOTY4MzNmNWE5NGRlOWE0NDQwYzc0OTAwZWZlNzdiIGxlZ2FjeS10cnVuaworNTExMTkgOWNiNDU2NWU2MGNhYjQzMjExYWM0NWJiMGRlNTRiYTAyZDVhZjhiMCBsZWdhY3ktdHJ1bmsKKzUxMTIzIGZlNDRkY2JlMTNmMmMyNzdiYWJiMmE0OTYwZWRhMjBlODA2MjY1ZTEgbGVnYWN5LXRydW5rCis1MTEyNiAzYmZlZjNkYjMyYjM5MmE0ZjYwYjBmMWYzOWNmNWIyZDVhOGIxMzM1IGxlZ2FjeS10cnVuaworNTExMjcgNDA0MTVkZjViYTlkZTVlYjY3NGM3NGRmN2FhM2IyNmE0ZTQ4ZDg0YSByZWxlYXNlMjQtbWFpbnQKKzUxMTI4IGI5MGZlNGFlMzAwODM0NjJkNzlmZTI4NmVhZjRhYTlmM2JkYWI4YTAgbGVnYWN5LXRydW5rCis1MTEyOSA1MDA5ZGU1MDRmOTI0MDIxYTQwMzJlZDk2N2U4ZjRmZTY1ZTk4NWJhIGxlZ2FjeS10cnVuaworNTExMzAgMjE0ZTRhNDM4NGYxMmIxMmY0MmFhYmE0NTE4ZDA3Yzk1MjNhZTk4OSByZWxlYXNlMjQtbWFpbnQKKzUxMTMxIDJlNjMwYjJkNWI0NDYwZWQ5YTY2MmM4YTA4ZDMxMDkxODkwNGZlMTUgbGVnYWN5LXRydW5rCis1MTEzMiA3MmEzZjcyM2VmZDE2OTcyMDQ5NmI3YTIzNTM0YzVjZTNmNzBiMzk3IHJlbGVhc2UyNC1tYWludAorNTExMzMgZmMxMDFjYzM1NGE3OWZiNjUwZGE1YjE1OWIyODdhOTNiODBiMWY5YyBsZWdhY3ktdHJ1bmsKKzUxMTM0IGI3ZWFiMWMxOGU5ZDM3YmM3ZTM4M2ZlMTgyYjdkMTMxODhlNjkwMjUgbGVnYWN5LXRydW5rCis1MTEzNSA1OTQzMjk2YTUxODIxNWQ3MDAzNjdiNTIyY2FmZjFlMGIwM2U3NzMwIHJlbGVhc2UyNC1tYWludAorNTExMzYgYjUwMjY4ZjQ2ZmZmOWE3NjBmMzA1ZTkxNzRlZDg0ZGNiN2Q4ZDIwMiByZWxlYXNlMjQtbWFpbnQKKzUxMTM3IDMzNTA0NzRmMzQzM2M5OWQyZGUwYmY0MDEyZTBmN2UwZjY4MDQ3NzMgbGVnYWN5LXRydW5rCis1MTEzOCBmNWE3ZjRkZDkzZTBkODc1ZDhhNjM1YjQyYWU3NjVhOWQwNzg1MWRlIGxlZ2FjeS10cnVuaworNTExMzkgOTk3Nzg4ZGU4NjY3MzMwY2U5ZjIyYTE2ZTkwNzlmMWM0ZjAzZWE4MyBsZWdhY3ktdHJ1bmsKKzUxMTQwIDI0ODVlZjRjNWQ0OWQyYmUwOWI2MzMyZjZiZmY1Mjc3N2QzNjEwNjAgbGVnYWN5LXRydW5rCis1MTE0MSAwYmM2Y2ZiNmI1ZmIyMWFkMTU2OGNlYjgzNGRmYzRjMDJkZTQ5NDFhIHJlbGVhc2UyNC1tYWludAorNTExNDcgOWVkNTYwYjM1MTM5ODBkNGM2NDNjYmU1MzdkZDVlMDlkODkyODg1OSBsZWdhY3ktdHJ1bmsKKzUxMTQ4IDI5MGM1ODJhMjJkMDQzOTgyMzYxNjg1OGY3Yzk1ZWI5ZDc4NWM3MjUgbGVnYWN5LXRydW5rCis1MTE0OSBiNjdmNTIyZDc2ZDc4ZDgwMDI5ZTU1OGM3MzM2ZTkxZmY0OGU5Njg0IGxlZ2FjeS10cnVuaworNTExNTAgMTRjNzY5NDg5NTNkNWM1ZjdjNjRkMjBlMzFhNGEzNjJjOTcxYjYxMyBsZWdhY3ktdHJ1bmsKKzUxMTUxIDJmMDMxNjQ4ZTU4Nzg0NDk3ZWUyNWFhMjE5MTFiMDNlNmRjMmQxNzYgbGVnYWN5LXRydW5rCis1MTE1MiBkMTU0MjYwZjQ2ZThmN2Q3NzdkOWVkYTRkZjMzNTI0NWJlYzBhNjQyIHJlbGVhc2UyNC1tYWludAorNTExNTMgNTZjMGUyZjU5NmU3NmYxZDMwZjMzZjAxYmRjMzYyOTE4YzBjMGEyOCBsZWdhY3ktdHJ1bmsKKzUxMTU0IDhkYzZiZTNlMTFlMDBhN2M3NmUxZWI4NTUzODIyYWU5NjBiOGI0MGUgcmVsZWFzZTI0LW1haW50Cis1MTE1NSBkZTQ5N2M0MWU5YWRlZmM4YjZkNDRjZDExY2VlZjA1YTk2MzYxZmM3IGxlZ2FjeS10cnVuaworNTExNTYgNTY5MTYyNDI2OWE1YTYwNjc2ZmJhNWM1ZjY4NDAwYzE3ZjJkZmFkYiBsZWdhY3ktdHJ1bmsKKzUxMTU4IDlkMDg5YWE1OGUyZjRiNWNlNGNhZDljNGY1MWQzOTFjM2MyYWI2NWMgbGVnYWN5LXRydW5rCis1MTE1OSA4MDIyOTI3YzE3YTg0NjQ2ODVkZTUyZmI2NGFmMGIzMjM1NDViOTg0IHJlbGVhc2UyNC1tYWludAorNTExNjAgNWI5NjkyZjY2MjlmNDA3YWRlOTRjOWI3ODgzZWFmMGM4ZjA2MDFlZiBsZWdhY3ktdHJ1bmsKKzUxMTY4IDZmNzc1MThiNjM3ZGIzYjhmZjlmZTA5MWIzZWYzOWI1Nzk5NjA4NjMgbGVnYWN5LXRydW5rCis1MTE2OSBiOTViOWY0MTU3YTgyMjEzMzAxMjE4ZjU1ZDRmZGI3NjM1MDI5OGRlIGxlZ2FjeS10cnVuaworNTExNzAgNWMzZDQ5Mzg1ODE2ZDcwNmY3YTIyZDk3YTUwODg4YWZiOWFjZWJlNyBsZWdhY3ktdHJ1bmsKKzUxMTcxIDE5OTM4OGI0NmM4M2EwMGJlZDJmMThmZjZiMTBmZmMwYjk2NDJiZWYgbGVnYWN5LXRydW5rCis1MTE3MiA5YTgwODFjZjRhNzBkYWI0NmJhMGYxMDYzMTBjYzIxOTBjYmI5ZDM3IGxlZ2FjeS10cnVuaworNTExNzMgMGYzYWQ1YjkzNmE4NTcyYmZlN2MwN2Q4ZTM3NTM4NjczZjIyODc4NCBsZWdhY3ktdHJ1bmsKKzUxMTc4IDc0ZDIzY2QwNDQyMTA0ZmY5NzViODVlMWI3NGY1ZTRlYTIzZDZlMmIgbGVnYWN5LXRydW5rCis1MTE4MCA3ZDZiMmUwNGU0Mzk1NDA2MDBlOTg1OTBhMjgzMWFkODU5ZjI4ODEwIGxlZ2FjeS10cnVuaworNTExODEgZmVlZTY1ODIwMTFmMTc3NmE2ZTFkZTg5NWZiMzJiM2VlOTBkN2NhNSBsZWdhY3ktdHJ1bmsKKzUxMTgyIDkyMjJkMGRhYWIzYzZhZWRlYjAxYTk0NzUxNDcyNTI3Zjg2MTA1NGIgbGVnYWN5LXRydW5rCis1MTE4MyAxNTZiMjhmMGYyZDM1YWMwMGU4MmM2M2QyYTE0MDE4MmM5YzdlYzc2IGxlZ2FjeS10cnVuaworNTExODQgZGRlYTRkMzdjODNjYTQ1MWMzMDc5Y2FkODU1ZDA0ZTU4OWI4MzFlOSBsZWdhY3ktdHJ1bmsKKzUxMTg1IGI4ZTM3ZTAyNjhmMmNhYzA0MmQ5MmQxNjIwMTZhNDNjMTM4ZjQ4NjEgbGVnYWN5LXRydW5rCis1MTE4NiAyNmE2YmVkZDE3ZTIxZGIxMDY5NzM2ZGUzMjUyNTY2YzU2ZGUzY2NkIGxlZ2FjeS10cnVuaworNTExODcgM2MyYmY3OTUyNmJlODk4MTRjZDAyMTcxMDQwMzQxODc4YmJkM2Y1OCBsZWdhY3ktdHJ1bmsKKzUxMTg5IGQ4ZmE4MTBjZmQ1NGRmZDhmMjdlZWEzYmMyMmExNTE4ZDAzYjAxYzAgbGVnYWN5LXRydW5rCis1MTE5MCA5ZjA4NTE2YTRkMGM5ZTk5ZDdmNGJkNGU0NzkyMjEzZTIyYTg4M2ExIGxlZ2FjeS10cnVuaworNTExOTEgZWFkNDhhODIyMjk1YzgzZTFmMWU4MTQxYzc5YmJlYWFhYzI3MGM1YyBsZWdhY3ktdHJ1bmsKKzUxMTkyIGU1NWY2ZDcyMjQwNGZhOTJiMmE0M2M3MmZmMjEzMjdkN2E0NzE0YjIgbGVnYWN5LXRydW5rCis1MTE5NCA5YjMyNjBkODM1NTg3OTVkMWExZDMxZGI5NTg4MWI2MjY3ZWVjZWFkIGxlZ2FjeS10cnVuaworNTExOTUgZGU5ZTFhNWRjYTkzNjYxYTcwMTBlNzc2MDExODdiNzY5ZDk3M2I5OCBsZWdhY3ktdHJ1bmsKKzUxMTk2IDhlZDYyZGIxOTA1YzRkM2UzOGI3NWFmNzFiNWQ5MTM5NTNmMTc3ZmUgbGVnYWN5LXRydW5rCis1MTE5NyAyYWNhNGYwNDAwMTJjZWIwOGFjZjA1Y2U5YTdkYzJiMzg2NTIzNzM5IGxlZ2FjeS10cnVuaworNTExOTggYmUxMDdiMDRjMjUyNWI2YjgxMTJhMjFiYTY1NDEyZGYzMDAwMDUwOSBsZWdhY3ktdHJ1bmsKKzUxMTk5IDZhYWY1NWY0ZDdhM2I2ZDM1ZmQ5MTM3MDUzZDM5NWJhYTg0MjQ5NTEgbGVnYWN5LXRydW5rCis1MTIwMiA2YWI0YzM5ZmQ3YTM4M2ZkOWQ5NDJmY2Q4ZjliN2JlODg0NTg2MDdkIGxlZ2FjeS10cnVuaworNTEyMDQgODY0MTcyNTE1ZWU3NmEzYjQ1ZGYxNDhmNjY4MmU5YzM5MzAzYjhmNCByZWxlYXNlMjQtbWFpbnQKKzUxMjA1IDQ4ZmQzODg3MzQ2MzZkYTFhZDAyM2JlODg0YzM0NGFhYTYxM2MzNDIgbGVnYWN5LXRydW5rCis1MTIwNiAxMDg3ZGYwMGE2ZTg3YjkxZDY2Nzg3MjUyY2Q1YTZiZGUwMGVhYzAxIGxlZ2FjeS10cnVuaworNTEyMDcgZTc3ODc1N2QzMzMwNzIwMTQ1ZTc0ZmRjNWRiMDNlMmE5NWZhYTAwNSByZWxlYXNlMjQtbWFpbnQKKzUxMjA4IDc3OTBjZDBjYWJkMDRjOWQxMWQ3ZTg1NmZiMzY1ZTdjYzgwNGViOTQgcmVsZWFzZTI0LW1haW50Cis1MTIxMSA2NTRjMzgwY2Y4YjlmMDc5MTU2ZTMyMTExZDE2MmFkODAzYzg5MzE5IHAzeWsKKzUxMjEyIGY2OWJlM2M2YTJkNDYzNjQ5YmM1Njg0NjkyODgyOTQ4YTA2Yzk0NTYgbGVnYWN5LXRydW5rCis1MTIxNSBiOTk1ZTI3NjBkYTQ3MmMzYjU5MGQzNjkzYjhmZDY1NjkxNDczNGUyIGxlZ2FjeS10cnVuaworNTEyMTggZTExY2FhZDdlMDI5ZGM5MGI4YTdkM2I4Njk0YzgyZDk0NzUxZDgzNCBsZWdhY3ktdHJ1bmsKKzUxMjE5IDlmMzkwODgyYTJjM2E1MWUwODdkMWM5MTU4ZDkyMDg3ODk0YzZhZTAgbGVnYWN5LXRydW5rCis1MTIyMCA3MWIwYWM4MGExMzVlM2UyYmFjYTM2MTJiMjMxYjc2ZTY5Y2VjNzk2IGxlZ2FjeS10cnVuaworNTEyMjEgMjE3OWQ5ZjE0Mjc4MTczYmU5NWRhYjNkZTBiYWVjNzA1ZTdiN2I2MyBsZWdhY3ktdHJ1bmsKKzUxMjIyIDg0MmJkNjEzNGU5ZDIxYTAxM2RhN2Y1OTEzYzViNmU1NTg4MTJiZmMgbGVnYWN5LXRydW5rCis1MTIyMyBhODBkZjUzMzA2ZjBkY2ZmNzlkYzE4ZDE5NmFiZGI4ODYzOTdkZWM3IGxlZ2FjeS10cnVuaworNTEyMjQgNmQ1MzZkNDNjMWEwNjU0YzQ2NjQxOTkzNDBlYWUzYjUzZjAxYTcwZCBsZWdhY3ktdHJ1bmsKKzUxMjI1IDgxYzZiMGVkMzE4OGRkY2MyOWQyMWUwN2NmNjM2ZGY3NGYyMTZkMDggbGVnYWN5LXRydW5rCis1MTIyNiAyN2Y5YjRmZWUxNGY3YjY4MDhjN2FmMjZhMDRmYjJiZWQ5Y2Y2NzFhIGxlZ2FjeS10cnVuaworNTEyMjcgOWExMjg4ZDgyMDBmOGNiM2NlMjIwYTZmMmQ3OWQ4OGFhMmQyNzY0MiBsZWdhY3ktdHJ1bmsKKzUxMjI4IGVkNjU3NjVlYjY3OWI1MDMzMTY0ZjBiNGNiMTQyYWI5YTUyMDYzMDYgbGVnYWN5LXRydW5rCis1MTIyOSA2YThmMDE2NjBhM2IyZGU0ZjA4YmIyMmM1M2M2MzJiNzJiZTM0ODY5IGxlZ2FjeS10cnVuaworNTEyMzAgOGI5MWZmNjk4ZjRmZjJmM2RmNTU2YmU1MjFkMTIwMWJkNjRkOGM4YyBsZWdhY3ktdHJ1bmsKKzUxMjMxIGRlYjc0OGYzM2MxZGI1MmViMDg0ZjJiYWUzZWMzZDFjZGM0YjhkN2YgbGVnYWN5LXRydW5rCis1MTIzMiBjZTExYzZjMTkzOWRiNjg0ZjMwNjdlYTY0NGI2ZDQ3YmM5MWU0NWRhIGxlZ2FjeS10cnVuaworNTEyMzMgMTUxMDg2NmM5MjBlYjgyZTYyNzczYjViMDhiNzUxYzE4ODFjM2U1MyBsZWdhY3ktdHJ1bmsKKzUxMjM0IDJkYmFkNTNkZTJiMTI3MTdjMDc5MGJjNjQxYjAzNDdiYmZlZjFhNTEgbGVnYWN5LXRydW5rCis1MTIzNSA2OGJlZDUzNDg0NTQwMjNjY2ViYjQwMmY1YjM3MDVjZTgyOTM3YTFlIGxlZ2FjeS10cnVuaworNTEyMzYgNmNhZmRjODFjZmRlODY5OGU2YjgzZTY4MmZhMjRhMjY5OGY2MjFmOCBsZWdhY3ktdHJ1bmsKKzUxMjM4IDQ4ZjFkYmM1Nzg0NTA2MWZhYTUwYTVjMjMyZWM1M2FiMTY1MmUzNjQgbGVnYWN5LXRydW5rCis1MTI0MCBlY2U5N2NmZTYwODM3YjE3ODZlZGY5MzcyZjllMmQ5YzdmMmNhMTBjIGxlZ2FjeS10cnVuaworNTEyNDUgYzdmZjAyYzE1NTlmZDg2NmNjMDg3YWFjMDY1ODQ5YjFjY2EwM2ZiZiBsZWdhY3ktdHJ1bmsKKzUxMjQ2IDNiZTY2MjczMjNiOWQzYTA1ZWE3MGUxM2Q4ZjZjMWEyYTIyZTFkZWIgbGVnYWN5LXRydW5rCis1MTI0NyA1NzQ4MjE3NmUxMDExNjYzZTNmYzUwOTIzYzQ0YjM4OGRkOGJmOWI4IGxlZ2FjeS10cnVuaworNTEyNDggNzFiYWEwNjc2N2RkYzI5ZjdkNjkxMWZhOWM2ZTU0NWZlYTc2NzBiOSBsZWdhY3ktdHJ1bmsKKzUxMjUwIGRhZWRhYWNmN2UxMTBhM2NkMWEyMzY2ODkwMTQ5YjczMmIxYzFjY2MgbGVnYWN5LXRydW5rCis1MTI1MSA1MzFiMzY0YmJjMGUwZDgxNWNmZWVjMjJmMDllMjgxNjNjNDdkMThlIGxlZ2FjeS10cnVuaworNTEyNTIgODE1OGI0ZTBjN2I5YjVjM2I3ZDFiOTkwYTczNDlmZjg3ZDBkMWRmZSBsZWdhY3ktdHJ1bmsKKzUxMjUzIGJjNzRhZmI4ZTRlZjYxZDQ4YmQ4ZjE5ZGI1NjZmZDYyOWI4ZTcyNDEgbGVnYWN5LXRydW5rCis1MTI1NCAyNGQyY2MzMzAwMGNiMTg1ZjUxZWYzNWUzYWQ0ZDEzYzdmMDg5NjIwIGxlZ2FjeS10cnVuaworNTEyNTUgMjQ5YTU5YWNiNmVmY2YwMjA0ZjA5NjllNzZmNTY1NmQ0YjNkYjRjMSBsZWdhY3ktdHJ1bmsKKzUxMjU2IDcxMjMxYmM0ODYyMmUzNmRlZTM2MDExN2ZjMjEyNzk1ZDQwOTQzYmEgbGVnYWN5LXRydW5rCis1MTI1OCAwMzU2ZGQ5Y2MyNzQzOTYxODZjNTg1M2FkYmI3NmUxNzZhNDdmMGM0IGxlZ2FjeS10cnVuaworNTEyNTkgMzE3NjA1ZjJjZjZmOTllMWQxNmQ1YjA5ZDdmZWU2NGNhMjI1NDIxOSBsZWdhY3ktdHJ1bmsKKzUxMjYwIGQ1MjMxZWM2ZGFjMzk5ZDMzMGQzOWIyM2EyYmQ1Nzg4YjFkNjFmZDUgcmVsZWFzZTI0LW1haW50Cis1MTI2MSBlNzcwMWIwNWZkOWUyM2ZkMjQwNDc0ZGY5OTI1ZjcwNjcyMDY0YmZjIGxlZ2FjeS10cnVuaworNTEyNjIgZGY5NDc4YmUwNjI3OWEwNDdhMWRhM2E2NTU5NzZlNWFhZDI4MjQzZiBsZWdhY3ktdHJ1bmsKKzUxMjYzIDhjMTZjYmVmNzkzMjYzNTcwMjBlYWVlNmNkZjFmNjExMWIwMjExMTcgbGVnYWN5LXRydW5rCis1MTI2NCBhYjg1MzljMDdiMWIzYzZlOTI4M2I1ZThlNjc5MWVhMWZlNmUzYmM5IGxlZ2FjeS10cnVuaworNTEyNjUgYzBhNThhODU1YWMwZTM4MTM2YTU4OGU3NTE4NmQ5YzMwMDEzNDAxMSBsZWdhY3ktdHJ1bmsKKzUxMjY2IDQyMTgyNmM5NDEwNGYxM2FmZjc0YzkwN2QxNWU4Y2Q1NWYxZjMwOTMgbGVnYWN5LXRydW5rCis1MTI3NCBhNmE2ZGZmMTc5MzU2ZTI5ODFmYjU1MmYzOTJlNDQ0ZWM1Mzc0MTQxIGxlZ2FjeS10cnVuaworNTEyNzYgNjM1YjA5YjFmNTQyZTI5MTc1Mjk3NmUzZDk3ZjEyZWMwYmZlNjZmMiBsZWdhY3ktdHJ1bmsKKzUxMjc3IGE1NTM2OWUyM2YwNjk0YTVlNzkzM2UyMDAwZWFhM2ZiNmNlMTdkNjMgbGVnYWN5LXRydW5rCis1MTI3OCA0ZTViODNiYTdjMmE2YWY5Y2EwMWJjZjgzNTMyNTBjYjE1ZTY0NWY4IGxlZ2FjeS10cnVuaworNTEyNzkgNjRmYjY4ZGNhODk2NDhiNTlkMDE2MzcxODMxZWE4MjAzMjBiOTYzNiBsZWdhY3ktdHJ1bmsKKzUxMjgwIDIzMTJlMTc4YjM0ZDk3OTg4Y2ZkNmU1YmRkNjU4NGQ4OWM4M2UxYjAgbGVnYWN5LXRydW5rCis1MTI4MSAyNTRhMTg2OTM3YTliNDk5ZTk3MTgyZTM3YzdiZWNiNDdkNzkzY2NlIGxlZ2FjeS10cnVuaworNTEyODIgMTYwYjgzYzcxZDdhMGFjOTYwN2I4YzlhMDk2MzY2NDUzNTg3YWUyMSBsZWdhY3ktdHJ1bmsKKzUxMjgzIGE5NTA5MDI4MTAzMjEyMWEwMDJlNzZmNDFhNmJhNTdhZGI3MjJiYWYgbGVnYWN5LXRydW5rCis1MTI4NCAxNGVjOWNmZDk3NjAwZTI2MTQ2NjY0MTFmYzNhZDZiN2Y2NTYwNjc5IGxlZ2FjeS10cnVuaworNTEyODUgMzUyZmZlNzdiNzFkZDBlN2NhOGY2NjdhOWU2YTIwODZkYWEzYjA2MCBsZWdhY3ktdHJ1bmsKKzUxMjg2IGVhMWY4YTExYTcyYjlhMmEwMDBhMjU0NGY4N2MxMWY3YzZlMzQwMTUgcmVsZWFzZTI0LW1haW50Cis1MTI4NyA5ZDY0YmQ3NDgzMjBhZGI0MGM3ZTAzYmFiOTA0ZmMwODU0YWFmMDliIGxlZ2FjeS10cnVuaworNTEyODggY2Q2N2UxMTFlMWI4NWI3ZTE1ZWIxYmU0ZjU5ZDE5NDczMzk2YTFjNSByZWxlYXNlMjQtbWFpbnQKKzUxMjg5IDIwN2U0ODdmNDI1ZGZlNDFjNjE5OTA5ZTZhZDhkZjA5ZTE1NWU5MzcgbGVnYWN5LXRydW5rCis1MTI5MCBlOGM0NmNjOTlkZjVlZGQyYjUzMjMzYTg4MzE0MmY5OGY1ZDJlZTM3IGxlZ2FjeS10cnVuaworNTEyOTEgNzk5YmNmMGNjYmZkMzEzZmY1OTcyN2I2YWE5N2NlMGU2YWRjYmY3MCBsZWdhY3ktdHJ1bmsKKzUxMjkyIDE0OWRlNzI1Njg2NGNmOTIwMGQ5NzIzMmI2ZjIzZGM5ZDVkNzhkOTEgbGVnYWN5LXRydW5rCis1MTI5MyA4NDY3OGYwNzUwYjg0NDgwNDcwOGU0ZjBkNzRmZDIxZDVkZDRhOWM5IGxlZ2FjeS10cnVuaworNTEyOTUgZTkwZTdlNzY4Y2IzNTI3YWJmMjBiNGIxMTg3ZDQ4NjFmNzc0MWY0OCBsZWdhY3ktdHJ1bmsKKzUxMjk2IGU2ZmM0Zjk5YTYxYmUxOWFhYjdhM2ViYzFkOTJjMWJmMzE4ZWFlOWQgbGVnYWN5LXRydW5rCis1MTI5OCA0ZjkwYzFkNTMwZDk1YzljOTA2ODI5OGQwOWIyMWM4YTY4Y2U1ZWI3IGxlZ2FjeS10cnVuaworNTEzMDAgNjRiMzMwNjBlZjA5ZDVhNDcwZjQyNjcwYTUzNjcxMzAwNmM5ZDRjZCBsZWdhY3ktdHJ1bmsKKzUxMzAxIGJmNWJhZTFmMDBhZDQ4NWU0MzIwZTI5NTU4NDNhYTEwODY4MWJiMGIgYmNhbm5vbi1vYmpjYXAKKzUxMzAyIGJlOTBmYTdhYWNkYTc5Y2M3M2RkZGRmYzNhYmEyMDk4OWUyOTM3NWYgYmNhbm5vbi1vYmpjYXAKKzUxMzAzIDk1ZjY1NjY5MGEwMDA4ODljYjc0NDRiOGFjN2MzNDgwMTBmNzFhZTcgbGVnYWN5LXRydW5rCis1MTMwNCAyMDdlNzdjMTQzMzA2NGI2Y2NlMjcxZWEwNmE2NjQzODM5OTY2ZjFkIGxlZ2FjeS10cnVuaworNTEzMDUgOTA5N2VjZmViMzQ1MGMwM2I1YTBhNDg1ZjNiOWU3YzZhMDY3MjBmMSBsZWdhY3ktdHJ1bmsKKzUxMzA2IDZlN2IzZGQ1OGY5ODcxMDNiYzc1Y2YxNjQwMDk3ZTcyZTYzNDZhNGMgbGVnYWN5LXRydW5rCis1MTMwNyA5MTMzMDc2YzBiZjk3MWU5NmJlZGMyZTRlODk1OGRmOTNjYjkyNjZlIGxlZ2FjeS10cnVuaworNTEzMDggMmRmZTFjNjI0Mzk3YTRkYTE2MjY2OTQ1MjgwMWExYTY4OTkxZTkwOCBsZWdhY3ktdHJ1bmsKKzUxMzA5IDM3MWI5Y2QzYWYxNTYwMjk1ZDAzZGM1N2VlNDRlMjJjODVmYTZmYTEgbGVnYWN5LXRydW5rCis1MTMxMCA3OThiZWNhYjM5MDNjNGFjOWVlNDI5MDliYTc3OTg2NDc5MTlmODdkIGxlZ2FjeS10cnVuaworNTEzMTEgMjRjYWIyMjhiMDM5NmI3MDAyNWNiOTczOTQyNGQ3NjQzMDM0M2Q5ZCBsZWdhY3ktdHJ1bmsKKzUxMzEyIGI1MDczYjQ4YzkyNWYxYTk3NjMwMzYyM2I0N2UyNDJlZjczODEzNWEgbGVnYWN5LXRydW5rCis1MTMxMyBkYTRiZTA0MDhiNjI1NzI5NmE2ODc0ZGZlNWUxMmI1ZmYzNGExNzNkIGxlZ2FjeS10cnVuaworNTEzMTQgYTI3YmQ1MGViMGZkODdiMGNlMzkwNmJmYjRlNTkwNjI3ZDhmZGNiMSBsZWdhY3ktdHJ1bmsKKzUxMzE1IGM4Y2UzOTk0NWRmNWY4NzU3OWIwYjY5YzIzM2UwZGFkMGQ0M2RhNmEgbGVnYWN5LXRydW5rCis1MTMxNiBhNWQwZjlmYmNiZjRiODI0MjVkMDI1MGNkMDU5M2VmMWY3OWFmNTQ0IGxlZ2FjeS10cnVuaworNTEzMTcgZDIzYjY2N2YwNGRhMmJlMWU2YzE3NzZkZWFlYTIxNTRhYTU2NGNjMiBsZWdhY3ktdHJ1bmsKKzUxMzE4IDRiYjM0ZWI0ODczNjc0NzBkNGNmMjZkMmU5MjM3YWE1ZTliOWM1ZWUgbGVnYWN5LXRydW5rCis1MTMxOSAxMzU4NDA0ZDZkZDllZTk0NTJmY2MyOTQ4ZmMxYTliN2MzYWNhZGYzIGxlZ2FjeS10cnVuaworNTEzMjAgZmZlN2QzYWIzNWE4MzcwZDE2MzAwMzIyMjJjNDkwNDI3N2IyOTY4YSBsZWdhY3ktdHJ1bmsKKzUxMzIxIGZlODBiYjEwMmFiNmQ1MWUwZjk0ZWZlMDVlZTQ1MjEyODQxYTZmOGMgbGVnYWN5LXRydW5rCis1MTMyMiBkODIyMTg1NTQ4OTcxYWI3ZjgwODMzMzI2MTUzODc5MDNiNzdhZjUxIGxlZ2FjeS10cnVuaworNTEzMjQgZWRkODNmMTYyNDUzYWEzMDg4OGE2NTdlNDMyYmE2ZjI0MGZhNzk1OSBsZWdhY3ktdHJ1bmsKKzUxMzI4IGFhZmUxYWQ3M2VkNzQ5YmZmYTYzZmVhOGJiMmM3ZjVhMjI4ZjNmNDcgbGVnYWN5LXRydW5rCis1MTMyOSBkOTY2MGY1MWIwNTZiNzRmNzU0YmVkYTJkMTc1NDQ1OGZhNzMzNzhjIGxlZ2FjeS10cnVuaworNTEzMzAgYTZhZmUwZWRhNzExZDk5NmI3MjZhNTQ4YzA1NzkzZWM1NWI2ZThlYiBsZWdhY3ktdHJ1bmsKKzUxMzMzIDJkYzY0ZDU3MGU4ZDdhNDQ5OGFiODUwMTA4Yzg1NzA5YzI3NmRmOTMgcmVsZWFzZTI1LW1haW50Cis1MTMzNCBhMzU4YWYyMWE1NGE5YmQzOWY1MDZkNzI5MWRmMzQzODc5ZDE3YTgwIHJlbGVhc2UyNS1tYWludAorNTEzMzUgOGU4OGVjYmQ0MDhiZmM5Y2QwYmZkMzU2MWQ3NmRkZWZhNGY3ZmY0OCBwM3lrCis1MTMzNiA4ZjViOTk4MmJlYmEwNDhiNGJlNTZiMDZiODdkYmYxM2RmM2M2ODk4IHAzeWsKKzUxMzM3IGU0YTY0MjljMTIxNGVkZTkxMWNhYTU1ZjBkODA2MDA1ODQ2OWMwM2YgcDN5aworNTEzMzggODQxZTBjODZlMDBlNDIzZjgxNzA5MmUyZmY1Y2RhZmE0YjgxMDE0MSBwM3lrCis1MTMzOSBjYjY3M2VkNTA3YTc5NDAyNWJlYjRhMzdhZjg3ZGVmMTZkZDM4MGFjIHAzeWsKKzUxMzQwIGIyZmUzNmJhYzNhMTY0NGUyNWJkNWQ4NmE4ZDE0MTU3ZDU3MzJiYWUgcmVsZWFzZTI1LW1haW50Cis1MTM0MSAxYTY4OWJlMjczMjk3MzI0YzNmYTNkZDVkMGI4MDk5ZmE1MGNlOWU2IHJlbGVhc2UyNS1tYWludAorNTEzNDIgZWRiMTYyMTAwOTc5Yjg3OTI3YmRmZWQxNThjZWJiOTY0NGUwNTdiZSBsZWdhY3ktdHJ1bmsKKzUxMzQzIDliYzBiYzBhZDFiZmU2YzkwOTZlN2IxY2MyZjQ3OGNhOWEyMmM1ODMgcDN5aworNTEzNDQgMDEwMzQwMThlOGIyZjgwZDhmZDVjODI5ODhkMjM4MmFhM2RmYjMwYiBwM3lrCis1MTM0NSA0YWJiNDZkZDJiNjA3ZjllYWE5ZGFkNTY3NmVhYzg5Mzc2Njk0NDdkIHAzeWsKKzUxMzQ2IDFlZGRlMjM0OWY3ODQ2NmZiYzAwOWM0MTcyMzg2NzNjMjgyODdkZWIgcDN5aworNTEzNDcgZjY4MjY5ZWQ0NjFlNWQ2MjA5OGEzMjk1MTdmNTg5OGU5NTU2MGQ1NCBwM3lrCis1MTM0OCA2N2U0NTcwNGMwN2VhNWEwNGFmMGU3YjFiZGEwMmRkODE3ZGUxMzEzIHAzeWsKKzUxMzQ5IDMwMjJjZDVlMDEwMDQ0YzNiYWQxZDZiODAwMGEwMTUzYzYzZWI0ZWYgcDN5aworNTEzNTAgNWI2ZjgyMTAxYzQwNWIxNzU2ZGM4MDJmZjIyMTUzOTRiZWE4MGYxNiBwM3lrCis1MTM1MSBhOGJiMWFkN2ZjNmZhZGM5MTQ0ZjYxNzIyYzA4NjA2MTAxOGIzMmQ3IHAzeWsKKzUxMzUyIDBhMWY4N2E4NTViM2U2MTViN2M5ODIyYWVlMGMyNDcxMGRjNjYwZDEgcDN5aworNTEzNTMgZmEyNzU4NDU4NjZjOGE3ZDVlNWU5YjBmZTcyMzQ3NGE1MDU1ZDllOSByZWxlYXNlMjUtbWFpbnQKKzUxMzU0IGE4NzMyMGViZDBlNjY4OTY0YmU4YTc0NTM5NTMwZjg2YjQwMTdmYTYgbGVnYWN5LXRydW5rCis1MTM1NSAxZmY5M2JhNDA0NTA4ODM3MGRkZjA0ZDRmMjNlM2Y2M2M5OWFiMzY0IGxlZ2FjeS10cnVuaworNTEzNTYgMzFiOWE0YjQyNTI4ZWNmYTUxZmEyY2Q2YjUwZWI2MGFhYjhmNWM3MCBsZWdhY3ktdHJ1bmsKKzUxMzU3IGRmODdiNjA1NjdjZWI1MjRhYjlhMjMzNGU2OTBiM2RjZmUzZmViOGQgbGVnYWN5LXRydW5rCis1MTM1OCAwNDVlMjBmZjg5ZWJiNzA5MzIxNDEyN2M2NWQ3MzIzMDg0MGIwOTA5IGxlZ2FjeS10cnVuaworNTEzNTkgODliNzMwYjcxNDM0ZjljZWE0ODQ4YWJjODY2Y2M4ZTgzYzhjZDRmYiBsZWdhY3ktdHJ1bmsKKzUxMzYwIDIxMGM1YjU1NzVjYjVjYTAxZDFhMDJjOWI2OTRkY2JlYjZhYWFjNzQgbGVnYWN5LXRydW5rCis1MTM2MiBiNWQ0ZjNhNzNkZTA0ZjcwZTc1YTUzZGYxNzg0Yjg3ZTlkYTJlNTZiIGxlZ2FjeS10cnVuaworNTEzNjMgZjNkZWU2MjVmYzQ4M2E2M2RmZTVmNDdkNTM4ODM4MjIwMmNjYWJmMSByZWxlYXNlMjQtbWFpbnQKKzUxMzY0IDRjNmY3N2I1NjQ1MmQ2YTQ4Y2YyYWVjYjU5MDNjZmQ4NDdkZjZkNDAgbGVnYWN5LXRydW5rCis1MTM2NSBjYTc3ZGUzNWRiNjIwYTE3NTA3ZGQ3MzkwYzM5MThhYTg3NjI3YzQzIHJlbGVhc2UyNS1tYWludAorNTEzNjYgN2ZiNTZhYWY1MmJiY2VhNTVjMjNhNWY3MTkzMDE4ODUyZDM3OTM2ZSBsZWdhY3ktdHJ1bmsKKzUxMzY3IGI4N2ZlMTFmYjdlMjhhZTI5M2VmOGJkYTZlZjhkNzE1Mjg4N2U1MWIgbGVnYWN5LXRydW5rCis1MTM2OCAwYWQ3ZTg1YzhjMDRlOGE2N2Q3MTU2N2U2N2M5ZTdhMzQ5MzhmYjdlIGxlZ2FjeS10cnVuaworNTEzNjkgNzliYmZhMWRiZDFiYjBjNmExZmJhZmYwNzEyMGI1OTQ4NzIxMTI5NyByZWxlYXNlMjQtbWFpbnQKKzUxMzcwIDFhYzE0ZDQzZWM2NDQxZTZjYjIyMGIzMThmMjk4NjczOTgwODc4OWQgcmVsZWFzZTI1LW1haW50Cis1MTM3NiBjNGU3YjQwNzBmMDc1NDdmZGIxMzRkNWU2Y2I5NTNiMzI2OWNlOGFjIHJlbGVhc2UyNS1tYWludAorNTEzNzcgZTdhNWIyODdmMjdjMWE5ZWU5MDFkNTIxMTE4ODQ1NmEyNjg1ZTQwMiByZWxlYXNlMjQtbWFpbnQKKzUxMzc4IGNiYjQzNWM1YzIxYzY3MDNmMTk3MDM4ZTc0N2Y1MTQ4OTdkOWMzOGEgbGVnYWN5LXRydW5rCis1MTM3OSBkZTRlZjE3NzI3OGJmZjg1N2Y3MTE2M2Q0NzBlMWQ3ZjA1ODFiZTlkIGxlZ2FjeS10cnVuaworNTEzODggMjU1MWViNTY3MWE0MWQ4YTQ2YjY4MTNmZjE0ODkzYTk0MTkxOTg5OCBwM3lrCis1MTM5MCA2MzIzN2ZjZWZkOTllZTRmNjc1NzIyZDVjMjcxMDY1OWFhNWRkOGNiIHAzeWsKKzUxMzkxIGNmYjM4NDczY2ExMTk5ZDk4MzJiM2FlYmMyMzU0YWQ2MTE0YWFhMDggYmNhbm5vbi1vYmpjYXAKKzUxMzkyIDg0NTJkNWVlN2IwM2JjMmVjMDY0OTAwNjYwOGJkMTQ2YzA5NDU3NzQgYmNhbm5vbi1vYmpjYXAKKzUxMzkzIDRjNjc0YTA3YjIzYzM2MGZmOWIxODhjODFhZmFmZmVmYWI1YzllYjIgYmNhbm5vbi1vYmpjYXAKKzUxMzk0IGQyM2I3Y2IxNzAwYjUwZWRhYmQ0NWQwYWRlZjgzYWFmNDM2MjE1MDMgcDN5aworNTEzOTUgMGI1ZDhlYWUzZWNhMDYxYjdlYmRlNjJiYTNhODAzZDZiZjM4N2NlNyBwM3lrCis1MTM5NiBjNTU3ZDQ0NzRmMGY0ZjA3ZjliMGVjMmFlNzlkNTgyYzJkODY5NWU2IHAzeWsKKzUxMzk3IDNlYmY1NjA0ZjYzMjBlNWIxZWUyYTM2NDQyOTUzOTFkMWRjZGNiNmQgcmVsZWFzZTI1LW1haW50Cis1MTM5OCBiODhiNjlmOTdhY2MwMDYxYWFjZDNhNjhiMjA5NmRiMzZkNWQxMmVmIHJlbGVhc2UyNS1tYWludAorNTEzOTkgN2NiY2IyMmM4YjhiMmM4YTRiNjM2MGEwNWEyYjc0OTM0MDcwYTVlMCByZWxlYXNlMjUtbWFpbnQKKzUxNDAwIGE3NDVhMmJkNDhhZjBiOTRiMWZjY2VkMDQ1ZjQ4ZjAwNTY4YWJlOGMgbGVnYWN5LXRydW5rCis1MTQwMSAwYWY0ZmZhYmEwM2MzMmI0Y2E0YzA0ZmE5YzJlMzI0YzdkNDZhZTZkIGxlZ2FjeS10cnVuaworNTE0MDIgODdkMTUzZmZiYjk4YjVhODNiNWU2OGNmMjIwZTdiZDc2ZjIwYTUyMyBsZWdhY3ktdHJ1bmsKKzUxNDAzIGIwZTBhNWViOTA5ZjE5NzliYTExNDUwMThkYzk1M2I4ZDMxZDg2YjkgbGVnYWN5LXRydW5rCis1MTQwNCAyYzQwMjY3Njk5NDU0OTkwN2NmODFjNWYyMmQ4MmE0OWEzYjkzOGI2IGxlZ2FjeS10cnVuaworNTE0MDUgYmJlZjJlY2RlZTMzZWJiODE5MDMzMjA5NWY4ZGE5NDdkM2MwNjM0NyByZWxlYXNlMjQtbWFpbnQKKzUxNDA2IGJkZWU0NTg4OGI2NDBjOTU2MWVkM2I4ZTRlY2RjNmIwM2Y4ZDRmMjIgcDN5aworNTE0MDcgZDI0MGNlNTY5NmY5ZmU4Zjg1NjFhNTVmZjhkMTNkZDI4MTYyNjM5YSBwM3lrCis1MTQwOCAxMmM0MmZmOTk0MzdiZjcyYWRlNjc5MjY3MGJkMGI4ZWJkZTE4NzJiIHAzeWsKKzUxNDA5IDgyNzE3Yjg0ODg4ZTA0NmFhYjljZTMxMDkzZjQ1ZjA1ZjM0MzU0YTUgcDN5aworNTE0MTAgMGYxMzVhZmZhYmYyYzdhZjQxNjczNmMxYjEyNDg3YmFiZWQ0NDc5ZSBwM3lrCis1MTQxMiA1OTlhYmMzMWY3NzBhZDc1YTc2Y2Y3NmI5NzdlNTUyY2JlYWY5ZjFjIHAzeWsKKzUxNDEzIDk2MzQ5NmNiZjNkM2MwZjFjY2UzZjBmZmRlNjJmNDUwMDYxMDNhNmMgcDN5aworNTE0MTYgNDQ2MjJlYjU4YTI1YjZhZjA2MTg4MGZjYzA1N2ExZDQ1ODUxOWI3NSBsZWdhY3ktdHJ1bmsKKzUxNDE3IDViMmMxYjY1ZDM1ZWVhOThlMDRhNDE4ODNmZTAyMWIxMThkZmM0YWUgcmVsZWFzZTI1LW1haW50Cis1MTQxOCBjMzMxOTJlMmMyNWIxOTRmZGNiODcyYWE0MGQxZGYyYjhhYmE2NTRkIHAzeWsKKzUxNDE5IDE1NGYyNTZmZmY0Mjk5NWQ5ZGExM2Q3Njc0YjMzMWM0YWIyOGYxMjEgcDN5aworNTE0MjAgMjJjMmUyNWVkMGU0MGJlY2NjZDZkYTFmMDI5MThhMmExYWVjZTNjMCBwM3lrCis1MTQyOCA1ZTE0Mzk0NDc3MGI0MWNiMjRlZDJjMTlkOWU1NWUxOTY0MGEzODkzIGxlZ2FjeS10cnVuaworNTE0MjkgZWVkYTI3MDQxMzBlZjUwYjA3M2Q5ZThiNjA4NDQxZWJlZDg1MjFmNSBsZWdhY3ktdHJ1bmsKKzUxNDMwIDczYTMyOTFjNThkYzFlZWI0ZWM2NTM1ZjYyZmE0MGVjNmIwMjMyZTcgcDN5aworNTE0MzEgNDBiYmU2NjliMDg5ZWZhNzBkNmEzMWQ1YzE1NGQ0NTkzOWQ3Y2EyNCBwM3lrCis1MTQzMiA4ZGQ1N2M1M2NjZjZiMjkzYzM0ZGRmODFjZDMzODBjMDVlY2M4OWE4IGxlZ2FjeS10cnVuaworNTE0MzMgZGI0MmU4N2M5Nzc2ZjcwMjQ3M2FhNDNiNmU4ZDQ0ODRiYjkwN2Y1ZiBsZWdhY3ktdHJ1bmsKKzUxNDM0IDJmZmRlZTFjMzg4NDRhYjAxMmI2ZjkyM2Q0NTUyNGNlY2M3YmQ3N2EgbGVnYWN5LXRydW5rCis1MTQzNSA2ZjEwMjA3NDMwNzc0ZjEzODZjMDZkNjY3YjU1NGRlOTk1ZTgwODYxIHAzeWsKKzUxNDM2IDhkZDcxNTdkMmEyMmExOTEwMmU1NDNiYmJkNTI1OTYxYjFmYTVhYjcgcmVsZWFzZTI1LW1haW50Cis1MTQzNyBjZjQyYTQ0YzU0OWVkYTAxMzliYWQ0NWU5ZTIyZDUxODE4NGExMDIzIHJlbGVhc2UyNS1tYWludAorNTE0MzggMzY3NGYyMGFjNzgxZjY1N2M3ZmJlNmNlNDM0NDViN2ZiYzQ1MTRlNiBwM3lrCis1MTQzOSAxN2YxZGYxNTUzYzlhZTQyNWQyYWJjMzE1OTRjMjUxMzJmYTgwODAwIGxlZ2FjeS10cnVuaworNTE0NDAgNTExZGI3MWI1YzE0ODlhMzg1YWI2MWIyZDQ2N2NkMmMyOWMxNmRlNiBwM3lrCis1MTQ0MSA1MzkxNGQ1NDBhNjc4MDE4NmZjOTdhYzcxYmIyNmQyYzVhOGVjYzJmIHAzeWsKKzUxNDQzIDlkZWU4MWRjYjliNDE5YjljYTc3MWFhNDRlZGUyYjViNjBhOWMwN2MgbGVnYWN5LXRydW5rCis1MTQ0NCA3ODNjNWUyODAzZjk1ODBmYzgyNzZhMGFjYTczZTg4NDc1ODUyNjRmIHJlbGVhc2UyNS1tYWludAorNTE0NDUgYzQwZmU4NjU2M2ZjODgxY2VhOWUyMjFjMGVhYWUxYzE1ZWM5MDcxMyBwM3lrCis1MTQ0NiBlZDBkYjBkNmNhOTkzODFhMjg4N2M4ODM1MzQzNDhjMzkxNWIyOTc0IHAzeWsKKzUxNDQ3IGU2MWIyMmJmN2FiNDc3MjU3MGM5NzFhOGVmYTNlMzUzMzUzMzVhMmYgcDN5aworNTE0NDggMDJiYmVlYzI3MTRmMDQ5MWIwNTE1NTZkMTI2YzU4MDVlNjQwZTU3NyByZWxlYXNlMjUtbWFpbnQKKzUxNDQ5IDM5ODI0NzVjNTE0NGJiYzk5ZTE5ODJiNmNjY2E0ZGUyZjNjMDIwMDUgcDN5aworNTE0NTAgZThhNjViYmQ2YTI5MmM4NzQ4ZWIyMDQ1NjY1NjUzMzY3MjA0ZGU3MiBsZWdhY3ktdHJ1bmsKKzUxNDUxIDNjYmVkMTNjNDY0ZDljMWRlNGM1ZTQ0N2NkM2U5Njc5Y2FmOGUxMDAgcDN5aworNTE0NTIgZTdiMWEzZGIxZmUzY2RiYzc2MGU5ZGY1N2JkMWNjZmYwM2E1OTc5OCBpbnRfdW5pZmljYXRpb24KKzUxNDU0IGM2ZDlmYTgxZjIwZmRjZDAyYzM0M2FhNjIwMjRlMDE1ZDUxM2M2MjAgcDN5aworNTE0NTUgZjE4ZDc3OWM3Y2ViNjcyZWUzN2U3ODNmZDFmZWE0YWNlZGFkZWNlOCBwM3lrCis1MTQ1NiA1ZmRkZGRkNTE2Y2I3Y2MzY2E4YmRlNjM4NjNjZTQzOGZkZGYyZjZhIGxlZ2FjeS10cnVuaworNTE0NTcgYzhmZjQzODAyZjMxNGM3ZDZlOGQyOGJkMzkzN2Y0MGEzN2JiYTA4MiBwM3lrCis1MTQ1OSBlODZjMGIyOWI0YTI2YTQyZTRjZTY0NjlmMmNhM2U5YmZjYzMwOTVhIHAzeWsKKzUxNDYwIDcxOWM1ZGI3YmZhZDQ1YTdmYTkxN2QxNWJhNTYzMzFmYTA1NTM0OTQgcmVsZWFzZTI1LW1haW50Cis1MTQ2MSA5Y2M2YTU0OGRlYzQ5NDNlYzJkYzYyNjZiMDczMzNiYWI4NDI1NTBhIGxlZ2FjeS10cnVuaworNTE0NjYgMmY2YjQyYWVhZDk0ZjgxY2UyZTYwZTNmMmFjZWZlOGYzNGE5OGRiZSByZWxlYXNlMjQtbWFpbnQKKzUxNDcyIDhkNzFmOWE2YzFjM2EyZWFmMzI3ODEzYmFkZjIwZTk0YjA2YmE1ZDggcDN5aworNTE0NzMgZDY1ZTZkY2ZkY2I1N2ViZDAxMDkzOWZiZTE5OGE5YTRjYWQzMDFjYyBsZWdhY3ktdHJ1bmsKKzUxNDc0IDlmMjc4MDA5MDI2ZGIzODM0YjVlMmYwNjJkNDcwZmU3YTQ4NWYyYjYgcmVsZWFzZTI1LW1haW50Cis1MTQ3NiA1ZmY2OTZmMmE3YTVhYTI1Nzc3NjExNWQ0NjEzNzcyOTdlNzAzMjhkIGludF91bmlmaWNhdGlvbgorNTE0NzcgNDRkYTNkMjk3MTA3OWJiZjdiMTY5MTRjNDdhZGE4NTBkYjllNWM3YSBpbnRfdW5pZmljYXRpb24KKzUxNDc4IGQ5MTU4NWIyY2RjMTAwNzk3OGRiZmJiYjA1NDVhMWRjZTMzYmZmNjMgcDN5aworNTE0ODIgM2VhNTI3NTg3NDEzMWUwODJlMTIzNDdlZGIwNTkzOGY1ODJjZTM4YSBwM3lrLW5vc2xpY2UKKzUxNDg2IGYwZjQ5N2EwNTA0Y2NmNTI1ZjIyYmVmZDQ2ODAwOTYxOWVkYTY3Y2YgcDN5ay1ub3NsaWNlCis1MTQ4OSBmOGE5MGQxODI1Y2UwMDJiODExZDE1NGI0NGM3ZThmOTQxODg1ZTFhIGxlZ2FjeS10cnVuaworNTE0OTAgNTNkZjNlZmY5NGUzZTYxODJlZThhN2RiYThhZTg5M2RjNDY0Y2Q1YiBwM3lrLW5vc2xpY2UKKzUxNDkyIDE4NGY3YjE2ZDIwMzZmNmM0ZTQ1NmQ0OTE3OTI1MTkzOTIwZTE3YzEgaW50X3VuaWZpY2F0aW9uCis1MTQ5NCBhNWYzNDNmNzI0NzEzNWZhMTgzZTg1MmNhM2UyOTJkNzNjNTdlM2YwIHAzeWstbm9zbGljZQorNTE0OTUgY2U1ZTQ1ZTRjNWQwNjljZGEwZjQzM2QzOGVkMDk3ODg4ZTNkZTkyOCBpbnRfdW5pZmljYXRpb24KKzUxNDk3IGE1OWJiZmQ4MDhkOTcyNzA4NmExYTBhZGEzOGI4YWUyNmU1YTIxZjEgbGVnYWN5LXRydW5rCis1MTQ5OSBlNmUxYjQwMzgyN2U1ZTU3OTQ0ZWVkOGJkZjkzODBhNWYyM2UzMmE2IGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTE1MDAgODc4MmNjMGZiNWUwZmVjMGU4YWM3ZGZkOGZiZmNhZjE3YTNmZTY5MCBpbnRfdW5pZmljYXRpb24KKzUxNTA1IGFjN2YzOTNmZDI5YjM0MmYwMzYxOTAxMzlmY2JiYjU0ZDM3MjNmMDQgaW50X3VuaWZpY2F0aW9uCis1MTUwNiBkMTc0M2IwODI3MzQ3MTQ0YWZlMzg0NWRkMWNkYjJiZmEyZjQxOTQ3IGludF91bmlmaWNhdGlvbgorNTE1MDcgYmNjNDE0Mzc4ZjMyMDdjY2Q1MmQyNDhiNDMyOWY4YzUxYzNhNDk1YyBpbnRfdW5pZmljYXRpb24KKzUxNTA4IDZkNDM1ZGE4Yjc5YjMxODZhYzA0ZDYxN2U5ZGM1ZWQ5NGQ5ZDYwNDkgaW50X3VuaWZpY2F0aW9uCis1MTUwOSBmMjhiZTVkYjUwMDViYTkyYmQ4M2U0NmJhMzFmNWZlZmY0ZTY1MzI1IGludF91bmlmaWNhdGlvbgorNTE1MTEgMDUwZmI5YTA5N2NkN2NmMGNlMDgxMDhmYzQ2NDAxOGNmYTc4MTZlNCBpbnRfdW5pZmljYXRpb24KKzUxNTEzIDQ3MmNhNzAwNmY3MGYyYTNjYWU0YTA5NjJiZjM0NTliZDFhNTNkZWQgcDN5aworNTE1MTUgNDQ5YmEwZWZiNmJkMjc5MTFkOWE1YmJkZTk3NTNiMjI4MjVlMDg4YiBsZWdhY3ktdHJ1bmsKKzUxNTIyIGUyODAzMWFmZWZmNWYyZmE4YmJjNTYwYWU0ODJkMWEyOTUyZmNmMmMgaW50X3VuaWZpY2F0aW9uCis1MTUyNSBkNWZhNGFmZDY2MjBlNmU2N2UwMWM1NWI0MzA4Yjk4ZWZlZjY1NDdiIGxlZ2FjeS10cnVuaworNTE1MjYgNWNjZTAyODg3NGJjNzhlMTIzMGE5NGI0Mjc3N2Q1NGIzNDkxYjUzMSBsZWdhY3ktdHJ1bmsKKzUxNTI3IGY0NTQ1MTgxOTQ5MWI0NjVlY2E3NjE0ODk1ZjA4NTlmMzViMDhhNGEgbGVnYWN5LXRydW5rCis1MTUyOCBhYWE3NDVmYzdiNzY3ZTk3MTAxZTdlMDI4MTliZDcwYTY5MmM3OTdiIGludF91bmlmaWNhdGlvbgorNTE1MzAgOTgxMTgxZDJhNGZlMDc1NTdkM2U4NzI2MjMyOGUxOTBlNTEzZGQ4YiBsZWdhY3ktdHJ1bmsKKzUxNTMxIDNkZDYxZmZkMDQ5ZTE1N2UyNjI5NjQ0NmYzMmU1NTJlMWQyMDVlMmIgcDN5aworNTE1MzMgMTNkNWU1ZjBlOTkzYWM3YTY0YzM3YzkyM2Q0N2E0NGY5OGYyZDc4OSBwM3lrCis1MTUzNSA4YjllYzM0NGJlZDJlNTcwZmQ2ZTJhNDgyMmFjNWNmMTA2YTkxOTFkIHAzeWsKKzUxNTM2IGNlMjNkODY3MzJiMGI4OWFmMjA0OWZkYmFlYjA4OTg2NGMxNmE1ZTggcDN5aworNTE1MzcgZGNlZWE0MWY0YTZkYWVhMjEyODVkZTg4NzNkYjE4OTlkMjM1YWEyYSBwM3lrCis1MTUzOCBlZmUzZjJjMGRhNWU4ZWQ1MmI2MjU4ZGI4YmIzYjAxNWRkYTZjNmZlIHAzeWsKKzUxNTM5IDc0OTZmOTQ3NTRmZjBlYjE4MmQ2NmFmYjg0ZTYzYTI4ZDYwYjU0NDAgcDN5aworNTE1NDAgNjlmNjFmOTBjNGZjMDhhNTU2NDg4MDc2MGY5ZjBhNTg2ZmUyYzJmNyBwM3lrCis1MTU1NiAxYTBmNDQ3ZTYwYThhZmIzNjcyZWMwMDM2ZDMwZDg1Zjc0NDQ1NzNiIGludF91bmlmaWNhdGlvbgorNTE1NjEgMWNmNTI4NWM4YWI5NDdmNTg1YTVkM2RlZDI1NzRmMzNjZWZmMWQ4MiBwM3lrCis1MTU2MiA1MWNkYzM5OGUwYjA2M2U4NjVjODMwNTM4MzhhMmQ3NzYwMzgxYzJlIGludF91bmlmaWNhdGlvbgorNTE1NjMgMzE3ZGNjNTkwZmZkOGEyNmI2Nzg5YWE5MjhmYTQ3ZWVjY2E2Y2I3ZSBpbnRfdW5pZmljYXRpb24KKzUxNTY0IGU0ZGVlYTkzOGRlZjA4MmFmZGVkNzA4NmZhMzZiMmJkNWJjY2IzMWEgcDN5aworNTE1NjUgYTg4YmMzYmFkNjUxYjNhZmFiNjhlY2NkNDE3NWJkZTM0Y2Y1MDU3YyBsZWdhY3ktdHJ1bmsKKzUxNTY2IGFkYmZkOGQ1ODUxY2M2MmI1OGIwMTMyZWMyMzQ0Yzk1MWNhM2JlOGQgcmVsZWFzZTI0LW1haW50Cis1MTU2NyAyODBjNmRiMzFjNWEzZDIwMzJmMGE5M2U2Y2M1ZDlkNTYyMjZmYzIyIHAzeWsKKzUxNTY4IDkzNDhlYTYzYjAyZGZkZWMwMzcyZjljNmY2Y2RhNGFkYjY1MWVkN2EgcDN5ay1ub3NsaWNlCis1MTU2OSAwODAwNWJhNmNlYjkzMGRjNzM3ZjRmYjEyYTJlZjdkYmExZGEyMDBmIHAzeWsKKzUxNTcwIDUyM2U2Y2NlNDE4NzE1MGRkOWEyN2I0MWE1ZWY3ZjliNTcyNmFmZGIgcDN5ay1ub3NsaWNlCis1MTU3MSA3ZWQ1Y2U4OWYyNmFlN2M0OTVhZmFlNTdlNzg4MzYxOGEzZGE1MzQ3IHAzeWstbm9zbGljZQorNTE1NzIgZWJhZDU5YzcyMzNlM2E4MDVhNjlhYzM5M2Q0YzgxNzc1YmZiYmI5OSBwM3lrCis1MTU3MyA3YmM0MTkyYTUyNzhjNThiY2E5NWNmZWQ1NDBmM2EzNzc3NzA1YTYwIGludF91bmlmaWNhdGlvbgorNTE1NzQgODQzMzU3ODhkOWNiMjEyNjJiNzU3ZjQyMWYxMDEwNWRjYTRmYTEzMiBpbnRfdW5pZmljYXRpb24KKzUxNTc1IGU1ZWMxYWRiMDYxZjVhYjU4M2QyNjFhYTc2YzhlNzczYjFmOTNiNTggcDN5ay1ub3NsaWNlCis1MTU3NiBiZjQyYzgxZGI4MDZlZjIxMmYyNWEwYTkwZWRlYjUwYzhmNzRiMjUwIHAzeWstbm9zbGljZQorNTE1NzcgYTUwNDhjOGQ4ZjMzMzJhYjdkNDQ2YWNkYTgwMDhiOGM1MWEyNjE5NCBwM3lrCis1MTU3OCBhMjQzYTUwZGEyM2FlMmVmNTEwYjZjYmQwZTM5NWVlN2M1YWU0ZjM4IHAzeWsKKzUxNTc5IGY5ZTc1NjBmZTAwZDIxODk4OTYzNWYwNzVhNTYyMjlhYjM3YmM0ZTAgcDN5ay1ub3NsaWNlCis1MTU4MCA3NmE5YTUxMzFhYWVjOTYzNTRhOTI3YTY4YWQ5MzA4YWRhZjFlOTNlIGxlZ2FjeS10cnVuaworNTE1ODEgNDRhZjRiMzdkNWZmNDBhMmU3Y2NlZWRmMWE5NTRhMjM1N2RjNDQ4MyByZWxlYXNlMjUtbWFpbnQKKzUxNTgyIDI2ZDI5NWU3OWFlODcxNjMzNzE4ODRkMWFlNDdmZGFlNjIxZTMwYzcgcDN5aworNTE1ODMgZTY4NGY5N2FlM2ZhZmIxNDgwYTA4NTEyZGFjZmY1YzM5MGFmOTBmZiBwM3lrCis1MTU4NCBmMTZhNTgzYzViMDkwNDVkOGEyZDNiNDM0NzdkMzg5NjliMmYwMTMwIHAzeWsKKzUxNTg1IDRhMzhjZDFhMTYwNjFiMWYzZTIwNWNiZTZjYmE5NzFhYTk4YjhmNTcgcDN5aworNTE1ODcgZjUxZWRiY2Q1Y2MwMDA4YjAzM2ExMzUyNWVlOGM0YTUwY2Y3NTZhMiBwM3lrCis1MTU4OSA5MmNmMzk3NGQzMmZiY2VlNzYxOWEzYTAzYTViYjYxZDY2Yjc5M2NkIGxlZ2FjeS10cnVuaworNTE1OTAgZWRlYzc5NjJhZjI4N2U4YzBmYWU1NmVhYzE2NDllZDEyYzgzN2U5ZCBwM3lrCis1MTU5MSBlMDc2Y2NhNGQ5ZDdhMGM5Y2MzY2Y5YjRlZjUzNDUxNjhhM2Y0YWI4IHAzeWsKKzUxNTkyIGRiYjU5NTRmZGRjY2NiMDM5Nzc1MzdkZjRiNjA2NDk5YjE5ODEzYzYgcDN5aworNTE1OTMgZjA3OGU3ZTRiOWExNTA2MjIxMzlhY2Y2NzkyMWRjMTEyMDQzZjE4NyBwM3lrCis1MTU5NCBmZjY5M2E4NjFiNzA0ZmRlMTc1MGVjOWRkZjIxNzgzYWQ3OTE0NWZjIHAzeWsKKzUxNTk1IGY4MTE1ZjY4NmU0MDExYzY4YzE0MmEzZjc3MzA4MWFiYWNhMzZlMDMgcDN5aworNTE1OTYgNjkyN2FjYmZhMDFiNDdmYWJhODQ0MmMyMDBmMjc2ODUwODM1OGM0ZiBwM3lrCis1MTU5NyA0ZTVjOTRkMDM2NDkzZGY3MGNkMmY0NjkwMGJjNWVmYzg3NjllOTkwIHAzeWsKKzUxNTk4IGViMmY3MGZkYmYzMjQwYjk5ZDI2MDUwNmFlZTJhYWZhMzlkZjQwOGUgcDN5aworNTE1OTkgNzg1NjRlMjY5ZDIzMGIyZjUzNzc3ZTMzYmI3MjgxOTQ3ZTIzMzVkNyBwM3lrCis1MTYwMCBmODdhM2U2MTg1M2Q3MmIxZDEzMzk5MmY5OTFlMzk3YjMxYWFjOGU4IHAzeWsKKzUxNjA0IDNiZmM4YmI0ZTcyNmYwYTczNmM5YzUwMmNiOGE4YTM1YTkzZWM5NjkgbGVnYWN5LXRydW5rCis1MTYwNSBjYTJiMmNjMjMwN2U0NDEzZmEyYmZmNWI2YWFiMDkyNzM5MDdmYzc5IGxlZ2FjeS10cnVuaworNTE2MDYgZjQ5NzY1MGExNDkwNmYyNzYzOGRmYzMzMGRiMWFiMzA1ZTZkM2ZlYSBsZWdhY3ktdHJ1bmsKKzUxNjA4IDkxNmFlNjM2YTgzZTRiODAwMmMwNzI0YmM2OGFjNzRkODQzODYyZWMgbGVnYWN5LXRydW5rCis1MTYxNiBiYjA3MzgwNWZiYWJhMDExNTM3NzQ4NjkyN2MyNWQwMWNhMjlhNmVhIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTE2MTcgOTA0OTU4MjE2ODEzMWQ5ODlmYTVjMmVjNjFlMzZhN2MwYjBiNzU3YiBsZWdhY3ktdHJ1bmsKKzUxNjE4IDU1NDI3NTkyNTRjMGIyODBjZGJmZTYwNTViNWExMzgyOTQ5MzAyMGUgbGVnYWN5LXRydW5rCis1MTYxOSAxYjczNWE5ZDIxMDcxMGRlNGI4YzRhYWIzNDAyMDk3NmNhZTlkNDc3IGxlZ2FjeS10cnVuaworNTE2MjAgYWNhNzA5ZjMzYTZhMTY4YjE5OTg2NDVkYzE3YjRmODhjMWZkNzg4NCBwM3lrCis1MTYyMSAzZDc3OThmZWFmYzU5OGY5ZWJiZDc2MTRiOTU5YzIxNThjNzRkOTdhIHAzeWsKKzUxNjIyIDZjMTg0ZmE1NTE3MGEyNjg2ZTE5MzIzMGU3YWVhNzRlNGQ5YWIwNjUgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MTYyMyBlYmViMzRhZGQ0YTYyY2RjZTY1ODhkMDQ5MWZjNjhhN2I3NDM4NDY0IHAzeWsKKzUxNjI0IGQwZWQ3ZGJhYWQ1NmUwYTBhZWE1MmZhYjY4OWZkOGJkNmRlYWNmMGIgbGVnYWN5LXRydW5rCis1MTYyNSAwY2I5ZTU3ZWM0MDY0NzhjN2RmM2I2ZTA1YWQ3NTcxYjIzNjQ0NjA0IHAzeWsKKzUxNjI2IGM0ZDhjMDU0NjE2YzAwOWQwYWMwMjc5NTNmODFlNTMyOWVkZTZhMTcgcDN5aworNTE2MjcgYzA5MzYzM2JlYmVjY2ZlMDRlOTQ4MzI1YjYxNjBjNGNmY2IxYzFkYyBwM3lrCis1MTYyOSA1NDBjOTU5MjcyOWU3NGQ4MmFkMzMxZjY3NDNlZDQ5NTE4YWMyYTcxIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTE2MzEgZDBiODNjNDYzMGMwOTI0ZGY2NjEwNjM1NDNmM2M1NDc4YzhjMzVhYyBwM3lrCis1MTYzMiBkYTNhOWY0MDI4ODYwNjU4YWI3OWM2ZGUzNmIzMzY2Yjk5YTE0NzJiIHAzeWsKKzUxNjMzIDRmNzZmNjNhMzJmMzZiYWFmMTcxNzlhYTZjYmU5NGYyZmIxMmYzM2YgcDN5aworNTE2MzQgZDE0ZjEwYTRkOWQ0NjYwZGNlMTNjODc0YjU5YTYyMTM1MWQxNWVkZSBwM3lrCis1MTYzNSAwNWFjOWM0OTI4YTQ4ZjEyOTRjYjllZGZjOTgxMTZkNzE2NTBlYWU4IGJjYW5ub24tb2JqY2FwCis1MTYzNiA2ZTE5OGM2NTVlZWFhY2YzNTU5MDc1MTcyZGI0ODNmZjYyM2I5ZGRiIGJjYW5ub24tb2JqY2FwCis1MTYzNiA5MGE4ZWU2YzNhODY3NmNjNWI5NDNiMmIxZGViYzNjYTBmMTdiYWYxIGJjYW5ub24tc2FuZGJveGluZworNTE2MzcgYjU2M2IxMmU0YzAwMzYzOTJjNGRiODE1MjhlODkwYWM2ZDhiYmEzNSBiY2Fubm9uLW9iamNhcAorNTE2MzggZmVmMDJkYmE5YjVmMzI2ODcxZTYyNzU0NWJjODZmMWQyZTZjYjAzMCBiY2Fubm9uLW9iamNhcAorNTE2MzkgZWM0ODA1N2EzNGI2MDE4ZjU3YmJmNGY0OTc0NjUyMDM1NWYyOTczNCBwM3lrCis1MTY0MCAwN2ViODAyNjRmNjE1MTFkZWY1NzI4ZGY1YzZhNzU3ZWQ2OGQ5YmQ2IHAzeWsKKzUxNjQxIGY5NzQ4OTBjNmNkMmE3YzUyZDMwMDdkMWQ2Y2IzMTY4ZDRjZjExYWYgcDN5aworNTE2NDIgMjE4YjZlOTAwYThkNDQyNWJkOWQ5MmE1ODIwNWFlMzg4MzNjNzc2ZiBsZWdhY3ktdHJ1bmsKKzUxNjQzIDc1OTEyMjgxNTFkNzAyZWM1MzNiZmJhYmI4YTM4MzVlNmI5YjA5YTEgcDN5aworNTE2NDUgODkzYWRkNTU0NTQxOTY3MDgwMGViMTE3NmI4ZGI0YmNmZmQzNTAwNyBwM3lrCis1MTY0NiBhYTU5NDY2ZWJkOWMxNjE2MWM1MWMxMTQwMDQ3NDExZGY0MTMyMWY5IHAzeWsKKzUxNjQ3IDc1NGE3MjllOTdhZjVhYzY0ODVhNWZhNThlZTRhODliZGQ5ZDQyZjAgbGVnYWN5LXRydW5rCis1MTY0OCBmMGI4ZjcxMTg1ZjU1ZDZmZDhjYzU1ZTJhZTk5OTE3MDc5NDcxYTU2IHAzeWsKKzUxNjUwIDQxNjEwN2EzNTE4NTNkOGViMzNkNWZhNGZjOTYxNTMzOTViNzhiMGUgYmNhbm5vbi1vYmpjYXAKKzUxNjUxIDE2ZDQ4NmM3ZGE4MjQ1YzM1NjBmYzQzZTk5OWQ2YWViOWI1Y2YyNWEgYmNhbm5vbi1vYmpjYXAKKzUxNjUyIDhmNzMyMWFiOGY0MGY3Mzc3NjJhYzAzMjA1OGVlMzFjNThlMzcyMTMgYmNhbm5vbi1vYmpjYXAKKzUxNjUzIDRkMjNlOWExMjcxMDM4NTVkODMzNzliNDAxY2MxN2Y2MWRkZjNkZmYgYmNhbm5vbi1vYmpjYXAKKzUxNjU1IGYxMGZlZGJlNmMxMzk2MWI4ZmI2M2IwOTU2MTc1NDgwMDc1ZjA3Y2IgYmNhbm5vbi1vYmpjYXAKKzUxNjU2IDViMDJlYjVmNjVmMWJmZjZhNDVmMDg4NmRkNDQ4MThhN2ZjNTFjOGQgYmNhbm5vbi1vYmpjYXAKKzUxNjU3IDM1NTQ5NjJkOGIyMWQ3ZTU2NTY5NWFiODhkMzJjMGQzMTljMjYzM2EgYmNhbm5vbi1vYmpjYXAKKzUxNjYzIGU4NWQ1YjIwZWE2MGVkNDE4MTI2YmI3N2EwZDU3MGY4OTBkNWU1YjQgbGVnYWN5LXRydW5rCis1MTY2NCBhODM5NTdjOTFmZGI5YmI3NzE3MDcwZjliMDcyYjUxN2E3NjM1ZmE1IGxlZ2FjeS10cnVuaworNTE2NjUgMWYxNzA1NzA1ODllYTVmYjUwMzYwMzYzOTFiYjEzM2U5NDgwYzAyMiBsZWdhY3ktdHJ1bmsKKzUxNjY3IDYwYzExOTM0NzA5ZWM3NDI3ODRhM2YyYWQyMDBhY2UxYWZhODVhNjIgYmNhbm5vbi1vYmpjYXAKKzUxNjY4IGJjY2M5MTU4MDhkODAxZmZhYThhNTI4YmVmM2VjNWNlNDcwNWZlZGYgYmNhbm5vbi1vYmpjYXAKKzUxNjY5IGRkNTE0YTE3Nzg0OGFlNmU1MTVkZDY3NDE5MDE1NmNmMTI0YWNlMDAgbGVnYWN5LXRydW5rCis1MTY3MCA4OTE3NmU2NWFkZDJjOTg1YjAwMzVkOTJkNmIwZGE5YTVhYjdlN2RhIHAzeWsKKzUxNjcxIDcyMWMzOTRlYjBiYTMzZTk5ZDgwMjk1NzkwODZjY2EzNjllMDRlM2EgbGVnYWN5LXRydW5rCis1MTY3MiA1NjI2YjJlZThjZTRjYmM1YzQxMzhhNTk3Y2YwNmQxNDhjZWNmNjA5IGJjYW5ub24tb2JqY2FwCis1MTY3MyBhYTY0MWZiMTc2OThlZDMyNzc5MDM5MGZjZDM1ZjkxZjc5M2IxM2UzIGJjYW5ub24tb2JqY2FwCis1MTY3NCA4MjA4MWJhOWE1YzUwN2MwNDlhYjc2NDE4OGI1YTA5OTJjYzg3YzA1IGxlZ2FjeS10cnVuaworNTE2NzUgMTFmNzA1MzA1MWZmOWVhZGZjY2Y1ZDY2OTljNDA2N2EyMDZmMzgzMiByZWxlYXNlMjUtbWFpbnQKKzUxNjc2IDRhNzkwNmQ4ZGU4NjEwN2NhMTAwYzA2ZDczMjIyODFjZGU0ZjkzMjggbGVnYWN5LXRydW5rCis1MTY3NyA3MWVhMmJlN2Q5MTI2YThiY2FhZTNiZjY5NTk1MzE3YmYzYWM5MTViIGxlZ2FjeS10cnVuaworNTE2NzggMTg0YzFkYmY3MTk0ZTQwNDhhMWIyYjgxMTU4ZDVjZmIxYzEwYTgzZSByZWxlYXNlMjUtbWFpbnQKKzUxNjc5IGJhODM3NTQ1Y2MyZmFmMDc4YzNjOTg0N2ZiN2ZkYjk5YjUzODllYmUgYmNhbm5vbi1vYmpjYXAKKzUxNjgwIGE2NjZkNzVmM2RmZmMzOTM0ZTZjZTVkMjUzNGRiMmFjZWMyODQ0NjQgYmNhbm5vbi1vYmpjYXAKKzUxNjgxIGQxOTg2ZDM2OWZlZmI4ODliNzU4OGNjZWU5M2U2NzViYzk2M2M2YTggbGVnYWN5LXRydW5rCis1MTY4MiA4NDE4ZjFiOTA5MGU4N2VlYWE5ZDNlZmEzMTU1NzM5NDkzYWU0ZWZjIHJlbGVhc2UyNS1tYWludAorNTE2ODMgZTkwNWY3OGVhZmNhNTcyMWE2NjIxZWJmODNjOGFkMDNmMDU3NWM0NCBsZWdhY3ktdHJ1bmsKKzUxNjg0IDEzNTJhZDlhZmNjMGI4ZGYzZDIwYWEzYjI2ZGI5ZTMxNTc4MDIxNjMgbGVnYWN5LXRydW5rCis1MTY4NSAyZjA4NmQ1OGNhMTBmN2UxMTEzMWM3ZDhjOWNkMDYyNzFkMDMwOGYzIGxlZ2FjeS10cnVuaworNTE2ODYgOGZlMTY4NzAzMzQ4Yjc0YzlhYmJlMDlmNTY4YzU1ZjZmZjU2MWYyZCBsZWdhY3ktdHJ1bmsKKzUxNjg4IDc2OTNiNjk5M2RkYWYzZjgwMzAxN2Y4ODNjYmE2ZTg4NjQ3NGZmOWYgbGVnYWN5LXRydW5rCis1MTY5MCAzMTRjNGU3YTM2ZDNlZjNjNjNmOTk2ZGVhZTI4MTk5OWFlYmM1YTAyIGxlZ2FjeS10cnVuaworNTE2OTEgMWVjN2VmMGYzYjhkMDRmNGNiZDFkNDE0OWNhYWMzOWNmOTU0MTg4ZCBsZWdhY3ktdHJ1bmsKKzUxNjkyIDIxMTk3Y2JlZDUxZGFjODhmMzFkNDU3ZjU1YWM0NTRkYTg0NjVmZjAgcmVsZWFzZTI1LW1haW50Cis1MTY5MyBhYThmZWRmNmJiMjQ4ZWRkYjNmZDFmNzRjYzMzNTcyYWQ2YjQyMzljIGxlZ2FjeS10cnVuaworNTE2OTQgODgzMmI4YzJmYzQ5OWY0NzY0OTcxNDc3OWU5NDkxM2RmMTdjMDIwZiBsZWdhY3ktdHJ1bmsKKzUxNjk1IDRjZWM0NWJkNjY2Mzk4M2VlMmY3NmM0OTY2ZGVmOTE3YzZlN2Q0MDcgcmVsZWFzZTI1LW1haW50Cis1MTY5NiAwNjMzMGQwYjQ2NGFmMjUzMzVkNzExNmQ2ZDkzYmFmYWRmMzZlNGY0IHJlbGVhc2UyNS1tYWludAorNTE2OTcgY2I2NjQyZGVkNGU3NTgxMzJmNmQ1OTUwNTA3NjhmNmUzNDExNDA1ZiBsZWdhY3ktdHJ1bmsKKzUxNjk4IDEwMWUwNGE0ZjQwM2FhZTVjNWU3NDM3YzcxZTQyMTRkYWNhNzI2NmQgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MTcwMiBjNmZlZjk0NGFkOTVkZWFmZDJhZjA2ODA3ZTdjYzIxMmE3ZmVhOTI3IHJlbGVhc2UyNS1tYWludAorNTE3MDMgNTg5OTgwYzc4MDI1NDYwOGFkMzNhYjQ1NGY5YWU0YjcxMTc4ZDlhOCByZWxlYXNlMjUtbWFpbnQKKzUxNzA0IGNmYjc3ZmZmMDI0MDIxMDgyYWQ4MTFhZDIyNGFmNzE4ZGMxMjYxOGYgbGVnYWN5LXRydW5rCis1MTcxMCBhYmNhNGU2MjZjYjVmNmE4YjI2Mjk5NjA2Y2FhMzY3MjE2NTg3N2YxIHJlbGVhc2UyNS1tYWludAorNTE3MTEgZjVlNzhhZThlYzBjYjhlY2NmMWU4YzgzYTY0MDczZDFhZjJlMzkxZCByZWxlYXNlMjUtbWFpbnQKKzUxNzEyIDAwZDJjOTNiODhiZmVkNTdhZWFlMWEyNjE3Y2ExM2E3YmJhNjcwZDIgcmVsZWFzZTI1LW1haW50Cis1MTcxMyBjNmQ0NGE5NzQ5ZGI0ODZiNjY4Mjc4YmIzNzA1MDhkMzM5Zjc4ZTkyIHJlbGVhc2UyNS1tYWludAorNTE3MTQgOWNhMTlkYjE3ZmFmNzk1MDAzMTlmNWFiMDI1Y2I3NzI4OWFiNDc2MiByZWxlYXNlMjUtbWFpbnQKKzUxNzE1IDI0NGM3MzRmMWQ4ZDFkYjgwY2U3YWU2OTI4MGFhNDk0MTgzN2I5OGYgcmVsZWFzZTI0LW1haW50Cis1MTcxNiBlMWFhOWEyOWVkMTUxZmZiZGYxNmU0NDcwNmIzNjZiYWU2ZGIyZjk3IGxlZ2FjeS10cnVuaworNTE3MTcgOTk1NzQ2N2ZhZjQ3YzNjZTE2YzdhMWIzZjAxNzg5YzBjNzE3Y2Q4MyBsZWdhY3ktdHJ1bmsKKzUxNzE4IGQxYjQ5N2VjMTkwYTFhYjZjZTkzNGUzZjQxYmE4MzJlOTk4ODQzOGEgcmVsZWFzZTI1LW1haW50Cis1MTcxOSBiMzUxNDM4MmMzMjc0N2NjODE0MWU4MTcwZGQ0YTEzNjdkNDdiM2E1IGxlZ2FjeS10cnVuaworNTE3MjAgMDhjYTQ3NmY4YTM0MjRkYzI2M2E3ZTIyMmVhOGQ4ZDM0ZTcyMDE2OCBsZWdhY3ktdHJ1bmsKKzUxNzIxIDk3ZDNlYWI4Y2RhMmY5MjBiNTA0NzlhMGU1ODM0NjU3YjQ4NjJjNDUgbGVnYWN5LXRydW5rCis1MTcyMiA5ZDQ0NzkyMDYzYmJmZGU5YzYzZmI2OTlhOGY4NjFjODIyOGIyZTI2IHJlbGVhc2UyNS1tYWludAorNTE3MjMgNjI3YTIxY2NmMjRmYzQwM2M4Y2I3OWE2NDUzNTQ2Mjk3OThjMzZmNyByZWxlYXNlMjUtbWFpbnQKKzUxNzI0IDMwMGZlNTA2YTBhYTQyMGIwM2NiNmQyMmYwZDQwNDg4ZDcwY2VkNzkgbGVnYWN5LXRydW5rCis1MTcyNSA4MjYzOWMwNTVhNmZhODQ3NTNmNDJiZTQ1ZTUzMWUwNjI5NzQ2ZDI1IGxlZ2FjeS10cnVuaworNTE3MjcgMTU1Y2IxNTU3Yjk3NTBkNDkxMTFiMTBlMzE4OWU3OTAyMjg4NWRiZCByZWxlYXNlMjUtbWFpbnQKKzUxNzI4IDRjODVjZTcwNDI2ZTM5ZjRhYTE5MGQxNDUxOWM0YjFlYTgzZmNjMmEgbGVnYWN5LXRydW5rCis1MTcyOSA4ZGNiODgyZWMzZTFhYWM3ZDMzNmE0MGFhNjRlYzY2NTYxZmMzZGVjIGxlZ2FjeS10cnVuaworNTE3MzAgMzMwMGQ3NDkyZjFhMTNjYTYwNGJmYWEzZmUyOTdhNGYzMzM4ZDBmMyByZWxlYXNlMjUtbWFpbnQKKzUxNzMxIGM1OTFkOTk1NGZiMzkzMzBjMjEzNmIyMjY2MDkwODg0ZmE2NjBhMGIgbGVnYWN5LXRydW5rCis1MTczMiAzZDk2OGI1ZmNhZjliZWU3OGM2YzhmMGQ3MDYzZDkxYmQxNmUwMWM5IGxlZ2FjeS10cnVuaworNTE3MzQgNmE1MWNiODA2OGY1Y2VlZTVhMzAwMDU2ZDY4YmY3ODAwZGQzNzVjOCByZWxlYXNlMjUtbWFpbnQKKzUxNzM1IDVkNmU5NmEyZmU2ZTg2ZGQ1ZjhmNmExMjMyMzk5YTI2ZGQxNzk2YzcgcmVsZWFzZTI1LW1haW50Cis1MTczNiA5ZjBiM2Y5YzcwZGExYzcyMmZiOWJkNTQ5NmQ0OTg1OWY1ZjRmM2Q5IHJlbGVhc2UyNS1tYWludAorNTE3MzcgMTUxMDk3ODFmMDE2OGViZDg1MTNlNGVjOTE2YWUyN2RkZjIwY2YzYSBsZWdhY3ktdHJ1bmsKKzUxNzM4IGVlMGM3NTdjNDk5MGFiYWFiMjA0OWE5MzdjNjJkMGJkMWQxMjZjYjIgbGVnYWN5LXRydW5rCis1MTc0MCBkZWQ3YjY5MGMzMDYzYjBjN2IzOWM0MDQ3MzlmMGNkYWMzNjQ3ZWUyIGxlZ2FjeS10cnVuaworNTE3NDEgY2E5NWJkNTU5ZTcxNjdlZjE1MGNlNWI5NWMyYjc4YWNiZGU5NDc5ZiByZWxlYXNlMjUtbWFpbnQKKzUxNzQyIDZkN2E4YjVlYjU1MWZjNTE5NzEzNmFlODIyZDkyNGUzNzE2ZGUyMzcgbGVnYWN5LXRydW5rCis1MTc0MyA4ZmI1OTc3ODRmMTg1NTExMjVkNDNkOWMwZGJhMjEzZDc4YjMyM2ZlIHJlbGVhc2UyNS1tYWludAorNTE3NDQgNzFhYzc5NmEwMThjNjMxOTllYjY5MzZjMzRlMDUxMGM4MGY5MzdhOCBsZWdhY3ktdHJ1bmsKKzUxNzQ1IDdjNWUyOTM2MjgwM2IxZmYzYWI5ZGZjZTFmYTE0MmRkODU4ZTVmNGEgbGVnYWN5LXRydW5rCis1MTc0NiBlOGI2OGRmOTBiODRlZDVjYTVlNjJhMzBhZTJhMjkyMzM2ZGMxNDc4IHJlbGVhc2UyNS1tYWludAorNTE3NDggYTUyNDg5OTgwYjViNDkzYTVkODljOTlkNzNjMTI1YTI1NjYyYmVjZSBiY2Fubm9uLW9iamNhcAorNTE3NTEgZTQ2NmZmZmRjOWE5MWM1M2M2ZDg4NGVmYTBiZWVlN2M0Mzg4ZTU5OSBsZWdhY3ktdHJ1bmsKKzUxNzU1IDFjNDI1YTg5MGY2Y2NhMzE1NzlkYTBhZmY1NTU0ZTgyYjFmMDU4ZmQgYmNhbm5vbi1vYmpjYXAKKzUxNzU2IGM5Y2MyOWJlNzU1ODc4Y2I2YWI2MDAyODhmNmI3NDY2ODdjZWE0MjQgYmNhbm5vbi1vYmpjYXAKKzUxNzU3IDc2YjhhNzVkYmU2YTNkNzRlMzRiYmY0MDI5OGI0OTU3MGMzYjFkNjIgYmNhbm5vbi1vYmpjYXAKKzUxNzU4IDQ2N2M3MTZlMmY4MThiYjQwNzJhYmZmYjY1YzEzMTcyMWI0ZjliNzUgbGVnYWN5LXRydW5rCis1MTc1OSA4YTIwYzk0ZDlkOTllMjJiOTQxMzE1NTg5NzQxYmIxMTBhZjVlOTkzIHJlbGVhc2UyNS1tYWludAorNTE3NjAgMmE3MzBmYjZmMzRiNDMxYTc1YmM0Yjg3ZDM1MDFiMWE4YTU5MjNhMiBsZWdhY3ktdHJ1bmsKKzUxNzYxIDlkZWIwOGVmNGJhMWRmMzUwZTUwNjZiNGIxZjhlNzkwYmY4NGQ2OTEgcmVsZWFzZTI1LW1haW50Cis1MTc2MiA5OGNkN2IxNjY2ZmI0OGNmNTFmMWUyZDFmMGU2MmQwNWQ0NzgzNTA4IGxlZ2FjeS10cnVuaworNTE3NjMgNmRjYzY0ODc5MzQxMzgxYmIxM2U2NzUyZWMwZjMxODA1NWYzYTExOSByZWxlYXNlMjQtbWFpbnQKKzUxNzY0IGFlNWI4YThiOTExZTI5ZDljMGIzMzUxYjUyYzcwZjM2NjRkM2Q5MDMgcmVsZWFzZTI1LW1haW50Cis1MTc2NSAzMDdhMTFjMDg1YjQ2MTBkODZlZjkyMmQyM2UzN2YxYjg5NjExMDQxIGxlZ2FjeS10cnVuaworNTE3NjYgODM5NGQyZTliZmQ2N2FmNGViMDQzZjgyYWE5NmUyOGMxNmY5OWE0OCByZWxlYXNlMjUtbWFpbnQKKzUxNzY3IGI4ZmJkMzIyNzYwYTliYjE1YTBhMzNmMzBlMWFiNDFhMGUwZGFhNTEgbGVnYWN5LXRydW5rCis1MTc2OSBkNzE5ZmFiNzk2Njc4NzZjZDE0NTY1YTQyN2Q3Njk2MGZkMjhmNTljIHJlbGVhc2UyNS1tYWludAorNTE3NzAgY2I4ODNlN2UwYjdlMTcyY2Y3ZjE0NTFkZjA0ODljZjU3Y2M5YjI1YyBsZWdhY3ktdHJ1bmsKKzUxNzcxIGM5NGYzNzA1NGYxOTcwZjZmYzE2MmIxMjUxZWVmMjU0MDg1OGUyM2MgcDN5aworNTE3NzMgN2EwYWQxMTBlOTFlNzkxNjMxZGY4ODljMTJmNTVmMDc2Yjk4ZjNiZSBwM3lrCis1MTc3NCAzYjc1ZWRjYzRhNmY0ODdkZmM3Y2FlZTExZjdiZmM1Njc0ZTRmMjUxIHJlbGVhc2UyNS1tYWludAorNTE3ODUgZGNlMTdiNWJkMzg3Y2EzYmE3NzhlNWQxYjk3NjY0ZmQ0MThiZDQ0ZCBsZWdhY3ktdHJ1bmsKKzUxNzg2IDgxYjQ2N2ZlOTJlZTUwOTY0YzUyOGZkZWUwZjA5ZDM3NTk3MWU4YjYgcmVsZWFzZTI0LW1haW50Cis1MTc4NyA0YWE5ODQxNDFmZWZjZmI2N2I5ODU3NWU4MmQ2YjBkZTE5N2Q3NWJlIHJlbGVhc2UyNS1tYWludAorNTE3ODggMjUyN2E0ODM1MDk5MjkzYjlkOTAyYjY1NTg1Nzk3MWI5MWEyNTkzOCByZWxlYXNlMjUtbWFpbnQKKzUxNzg5IGNkM2I3ZjI1NjQ5ZDRmMzc5NGYwMDBiN2MwYzRmY2YxNDIwYTIxMTkgbGVnYWN5LXRydW5rCis1MTc5MiA1NmU3ZDY5NTI5ODUxNTVjYmZmNWYwZGVkNDU5NGJkY2EyODVlZTg1IHAzeWsKKzUxNzkzIDVlNTAyZGUwY2VkYWNmZDVlYWFmOTNlNjVjNzEwY2ZmMDg0ZmVjOTkgcmVsZWFzZTI1LW1haW50Cis1MTc5NCA2ZDQ3YzhiYzA1MTI3MWI0OTk0OTBlOWM3Zjc4MWQxZWRjNzBlYWMwIHJlbGVhc2UyNS1tYWludAorNTE3OTUgNmU2YmFmMWFmYjEyYzA1NjAyNmE4ZGQ3NmZkNzAzNjQyY2Q2NTQ2ZiBiY2Fubm9uLW9iamNhcAorNTE3OTYgOTQyMDQ1NDliNTE2MDkzZDczZDk1NTJkMzVkMDExNWU0YjQ3MDU0ZiBiY2Fubm9uLW9iamNhcAorNTE3OTcgMzYzZWY4MDRhMDk2ZjUxODliYmYyYzljYWE3OTZjNDRkMWIyZWVlOCBsZWdhY3ktdHJ1bmsKKzUxNzk4IGVmMGY0MmJmMmEwODUzNTBjOTM5M2IwMzA1ZjM2NGEyMzRhOTU4MjkgbGVnYWN5LXRydW5rCis1MTc5OSBjNjQzYjAzMWQ1MjZjODM1NzVkMWU3MzIzNDc4ZmMwMGYxYzVmZmViIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTE4MDAgZTgzNzIyYWE3OGRkNDc1MzE0NzlkYzIzNWQ5YTM1YzlmNjIxNWY4NyByZWxlYXNlMjQtbWFpbnQKKzUxODAzIDM4YmE5NTI0NzgzYTFlYWJlOGY2NzdjMDA3ZjZjZTU3OTdjNGIwOTEgbGVnYWN5LXRydW5rCis1MTgwNCBjZjlkM2IzODI1MWY5MmFkNmJiMDZjMzQ3YWY3MjNkMWNlNjY0NDFmIHJlbGVhc2UyNS1tYWludAorNTE4MDUgMWVlYmI2NDczMTBmYjVlY2ZhY2M1ZGViNzVjNmQ1MWViZTE3MzkzNCBsZWdhY3ktdHJ1bmsKKzUxODExIDQwNTgwNDE5MmE2ODI4MjVkZjgzNzJlYWYzY2ZmN2M4YTMyZTdkZGQgcmVsZWFzZTI1LW1haW50Cis1MTgxMyBjM2EzNTNhMDcxNDY4YjU4YTcyMWY5ODM3YzkwMTUxYjA2OGNiZWE3IHJlbGVhc2UyNC1tYWludAorNTE4MTQgNDFjMWU1NDNiOWU5Njk3NjE0NWQ1MjI1ZGM4NTE1ZTdjMjJlZmU5YiBsZWdhY3ktdHJ1bmsKKzUxODE1IDRlODE5NzRmN2UxNDAzYzc0YTc0ZWY2NjljNTE5ZDRiZjllNTU3MGYgbGVnYWN5LXRydW5rCis1MTgxNiBkOTY3M2I2MmNlMzVkOWQwZDNiZjMwYTYyYmQwNGVmNzdjYzY1MThlIGxlZ2FjeS10cnVuaworNTE4MTggNDM0YWZjNzI4ZjZmNzRhZjkwNTAzMTRkYjEyMTg2ZTZlYTAzODM1NiBiY2Fubm9uLW9iamNhcAorNTE4MTkgYTA2NWI1NWUxZmIxZDA2ZjA2ZGQ1NWU3ZmZlOTMzODJkYzJkMjY5MSBsZWdhY3ktdHJ1bmsKKzUxODIwIGQ1YzZmZWEyNTJmMDQ4ODI2NWU3N2U4MmNmYTRmZTQxYTM4OGQ5NGYgbGVnYWN5LXRydW5rCis1MTgyMSBlYzZmZDljZWJkYTE4NTg3YjYwNmQ2NWExNmJmNDZkMWEwYjhmMTAwIGJjYW5ub24tb2JqY2FwCis1MTgyMiA3MDEwOGM2M2M2ZTUwZTgzN2Q2OWNkYTZmNjA3NDcwYTFjOTBkZGMzIGhveHdvcnRoLXN0ZGxpYl9sb2dnaW5nLXNvYworNTE4MjMgMzIzOWY5M2NmNGQyM2VkNjlmYzg4MTcyOTRjMjgyZTAxNzRlZmNhNCBob3h3b3J0aC1zdGRsaWJfbG9nZ2luZy1zb2MKKzUxODI0IDI2NTNmODMzNTg3NzkzODdkMWRkNDExZmY2NzYwNTllMWRhZjkyYzYgaG94d29ydGgtc3RkbGliX2xvZ2dpbmctc29jCis1MTgyNSA4OTFlMzMyY2QyZDZhMjY5YzBjYTJiMWQ0OTAzMDNjMmZjMWIxMTNmIHJlbGVhc2UyNS1tYWludAorNTE4MjYgMDI5OGNjNmMyOWNkNmVjZGFjZDU0ZWMyNGUxMTcwMDYxZThjM2ZhMCByZWxlYXNlMjUtbWFpbnQKKzUxODI3IGMwMzE0Yzg5MzZlNTExNmQzYmJiYjJmN2RhNWUwMGM2NjZiOWMxYmYgbGVnYWN5LXRydW5rCis1MTgyOCBkNGU1M2U3MGNkNzgyNzRkMDUzODYzYzhmNTZiYWE1NjBhMmI1ZTJkIGxlZ2FjeS10cnVuaworNTE4MjkgN2JlMzBjYmZjOWIyODNhYTM4OGUwNzRhMDhkZmZjYjQ3M2IyZmRkMSBsZWdhY3ktdHJ1bmsKKzUxODMwIDUyN2EzZDAwNTJjOTAxMTIxYjU4YmFhYjk2MDhlY2VjMzgxYmVkYjQgbGVnYWN5LXRydW5rCis1MTgzMSA2YTgzYjI3NDBmYzdjY2RhMDNkOTYxMGUzY2QwYjg5NDI5MzM5MWM5IHJlbGVhc2UyNS1tYWludAorNTE4MzIgNDA3MzVkNWY4YWNkYmU3Nzg4MWRmOWNlYmQyMTZmYTdhODU5ZWVhYyBsZWdhY3ktdHJ1bmsKKzUxODMzIGI1Mjc1ODgyYTNlMGQ0YjBjYzQzMTQ3YjMzM2ViMzg3NDI2YTkwNzggbGVnYWN5LXRydW5rCis1MTgzNCBhNGEyMTRiZGY4ZWFjMGVhMGU5YzM4ZDFhMmM4OTQ3NGFkNWM4YjQ3IHJlbGVhc2UyNS1tYWludAorNTE4MzUgNmY2ZTU1ZmQ5Yjc5MWMyYTdkY2FkODg1NjE3NTFlNzEyYWYzNTEwYiBsZWdhY3ktdHJ1bmsKKzUxODM2IDBlYjNmMGY1NGEyNjc0ZmVmNjgwYWI1MjkxYWRlMWI1ZmI5NmVhYjkgcmVsZWFzZTI1LW1haW50Cis1MTgzNyBjMmZkOTc4ZGYzOTIyNDI1ZjVmZTg3OTFkZDQ5ZGE1NWQwOTMzMDdmIGxlZ2FjeS10cnVuaworNTE4MzggOWU3ZGM2NDMyYTQ0NjViNjM1ZDc3MWU2ZTgyYTZlMThjYzcxMTRkNyByZWxlYXNlMjUtbWFpbnQKKzUxODQxIDgwNGQxNzFjMmNiNzE1NWM2OTMyMmU3YTk2ODc1MjI4YzExN2MwNmQgaW50X3VuaWZpY2F0aW9uCis1MTg0NyAwZmZlN2Y5MmFiMmZkZWZhMmY4ODVhMmQxOTliOGVlNjQ1OGI2ZmFkIHJlbGVhc2UyNS1tYWludAorNTE4NDggMzk4NmIzNmI4NDk1MjMzNDBkMzA5YzljMDg1Y2YwNjVhZDZjMmJkZSByZWxlYXNlMjUtbWFpbnQKKzUxODQ5IDVlZjA0MDZlNmQ1MjRjNmNjZjY3MWIyODQwOTI4ZDU3NTUzOWQ2OTQgcmVsZWFzZTI1LW1haW50Cis1MTg1MCBlNGU4ZjBhNGVkYTRmZTI4YmM3NTFhY2RkYWU5NmMxNTNhN2Q3YjE1IHJlbGVhc2UyNS1tYWludAorNTE4NTEgNTRkNGZkMDg4Mzg1YzdmZGMxZTQxZjY0MDZjZDU1NzRjZjIxZjJiMSByZWxlYXNlMjUtbWFpbnQKKzUxODUzIGQwNmIyYjQyZDEzODgxNmZlYjg5Mjc3NTA4NTkyOWE2ZWQzNTUxZjUgcmVsZWFzZTI0LW1haW50Cis1MTg1NCAxNWFkNmJhMmUxYTU0Mjc4MWJlYWJhMTI0MDNkZjdjYjc0MDFlMmE3IGxlZ2FjeS10cnVuaworNTE4NTUgNjZkMDM1NzAyOWI1NWFjNjE2OGY5YTMwMTgzOTk3ZTdmMjU3OGRhOSBsZWdhY3ktdHJ1bmsKKzUxODU2IGMwYTA3MWRmNDYyMWE1Nzk0ZDQ1YTkyZTRhNTk1MzZkN2NiM2U1NmQgbGVnYWN5LXRydW5rCis1MTg1NyAwZjdlZTk5MjViN2M0Mjk2MmI2MTU2NGJkMGQ0NDlhMzNjYTIzZmJiIHJlbGVhc2UyNS1tYWludAorNTE4NTggMGJhYzQwZTRkMGM2NDNhNzhjMThiNDZmY2IwZjQ4Yzc4NzFhZDFmZCBsZWdhY3ktdHJ1bmsKKzUxODU5IGM1YzlkYmVlYWZhNzZhMWRkNGJmMjZmMjI2MDFjYWQ2ZmRkMzcyNGMgcmVsZWFzZTI1LW1haW50Cis1MTg2MCBjYzNjYjNhODIzN2VhNTQ1ZGI5MTdkODRjNDlkOGEwYTVlMTc1Y2MxIHJlbGVhc2UyNS1tYWludAorNTE4NjEgN2Q0MGQzN2U0Y2MzNWQ2MTkxOTQwODJkOWY4MjM5MTRmYzIyZjdiNCByZWxlYXNlMjUtbWFpbnQKKzUxODYyIDI0OWZkYjU5ZGM1MmY5YjUzYTUyOTJhZGViMzM4MmQ1NjdiOTA5YWEgcmVsZWFzZTI1LW1haW50Cis1MTg2MyBkYzUwZDRhYzk1ZDkxZmMxODAwMTg3MDQwNDE3NTdlOWYyOWQzNTY4IGJjYW5ub24tb2JqY2FwCis1MTg2NCA5NWNmMzFlNjkzMzUwMWYyZDNmMjk2ZGJiMDdkMjY1MTEzMGIzZjhhIGJjYW5ub24tb2JqY2FwCis1MTg2NSA0MTc1MDFlZTNlODZmZmFjZWJkZjBlNmE4YjJkMWU5NzQ1OTRmNWNkIGxlZ2FjeS10cnVuaworNTE4NjYgZTU3ZDhhZTQ1NjY5ZjRkN2UyZDRjZTNkN2Y4YTYxZWVhZjJlMTZkOSBsZWdhY3ktdHJ1bmsKKzUxODY3IDU0YjgyYmQyNTY5M2U5ZDdmMmRmNjhhMzhmMTllZDUyOWQ5ZjhjODYgbGVnYWN5LXRydW5rCis1MTg2OCA1MDQ0ZDA2OWI1MzI5MmVlMDMwZDE2M2YxNjNmMGU4MmRmNjhmYWIwIGxlZ2FjeS10cnVuaworNTE4NzQgMTBlYjFmNmIzMDgwOTM0MjYyN2NhMTQ0ZTAwM2FiZmRmMjRjMzlhMyBiY2Fubm9uLW9iamNhcAorNTE4NzUgMGJjMzljMTMxOWRkYzAzN2FiMmFiNDA0NDlmZjNjZjgyOTJmY2FhZCBiY2Fubm9uLW9iamNhcAorNTE4NzYgMDdhNDRiZmY5NjdmNTgyNmMzNTEwODFkNmNlZGI3MTI5ZDEzMjM2YiByZWxlYXNlMjUtbWFpbnQKKzUxODc3IDc0ZTQyNGMxNzhmNDVjMjM5ZjE5NTlhZTQ1NmQ1MmFlNTc5NzU2MjcgbGVnYWN5LXRydW5rCis1MTg3OCAyYjA1ZWM1ZGY3Nzc3OTdkNDhlZDMxYmIwZDA1NjgzOGU1ZmU0ZTNkIGxlZ2FjeS10cnVuaworNTE4NzkgYTAyMzVkNDM1ZWQ0ZTcyZDQ5YzVhNTNmMmMxNTdmZjgyNzViMjVkMiBiY2Fubm9uLW9iamNhcAorNTE4ODAgNzUxNzljMmVjYWMxYzViMGYzNWM0Njc3MjE0MjliMDI5YTVmZGFiYiBiY2Fubm9uLW9iamNhcAorNTE4ODEgZGFkYTM0YjRkNmI2YTRlMmQ3YTg5ZjBhYzAzYzAwYzNjNzQ1YTIyNCBiY2Fubm9uLW9iamNhcAorNTE4ODIgMzRhYjA1Mjc0NWVjMmE3MGU0YTIxY2I3NjBmNWFhMDQ1M2FlOGYyNiBiY2Fubm9uLW9iamNhcAorNTE4ODMgMGVjZTI4Y2I1YjllNzNlOGNmMGY2NWUyM2VhM2EyNjk1NWJhZjgxNSBsZWdhY3ktdHJ1bmsKKzUxODg0IDg5OWQ0ZGMxMmMzNzhkYmUyNWI2ODljNDUxZWI1NDVmZDY4YzE0N2UgcmVsZWFzZTI1LW1haW50Cis1MTg4NSBiNjczM2EzNmVlY2RmNjU1NmE4MzhjMTdhNDNlN2VmNjI0ZDNmMTIyIGxlZ2FjeS10cnVuaworNTE4ODYgODczNzU5YjBiMTI2MTZhODA0ZTAxZTlmYWFmNDczZmJlZTJmNmZkZiByZWxlYXNlMjUtbWFpbnQKKzUxODg4IDRmMzZjNDE1OTZiMThkMGRmZjc5Y2NjMWQ0ZjFjNTkxYmI0ZjRhYzIgcmVsZWFzZTI1LW1haW50Cis1MTg4OSAyZTk5NWYyNDRkNmI2MmM5NDA5MDllYzAyMWM3N2JkYmRkOTI5N2FmIGxlZ2FjeS10cnVuaworNTE4OTAgMmEzNDk4ZDg3NDFiNDJjNTFhYTRiMzc5ZDQ2YTM0YTRhNjZlYTQzOCByZWxlYXNlMjUtbWFpbnQKKzUxODkxIGY5YzlmOGEwNWE4OTRiZDE0MDYyY2IwNDFkZDUwMmNkOTkwMTMzZTEgbGVnYWN5LXRydW5rCis1MTg5MiA4ZDNiNzY0MzU5OTIxYWNkNzMwMTJmODdjNzE0Y2I4NzJjNTEzNzU4IGJjYW5ub24tb2JqY2FwCis1MTg5NiAzMzBiZGEyNDA1ZWU2YzY4MjE4M2RjNWVhYTUzMTBiODg5MjMwNDAzIGJjYW5ub24tb2JqY2FwCis1MTg5NyAxNjYwZWFhMGNjMjY2MzMzMGMzMTM4YjJmY2IyYjFlZGJlMjI4ZTQ4IGxlZ2FjeS10cnVuaworNTE5MDEgZjVmNGQyZmRiNjJjMjlhZjk0NDAzYTIxYjczZjRiNGMxYTdlNDBiZSBiY2Fubm9uLW9iamNhcAorNTE5MDIgZDQzZDk0MjJiN2FjNzlmM2I2ZTFjZmZkZGJmY2I0MzEwNzUzYjk3MCByZWxlYXNlMjUtbWFpbnQKKzUxOTAzIGNlZGVhOWUyM2E5NTVjNzU1OWMyN2FkZTMyZWM0MGZkMDAwN2RlM2MgbGVnYWN5LXRydW5rCis1MTkwNCBiYjllOTE0ZWRlMDUxZmFiMDBiMjJjZjAyODhmZjRjZjcxNjY3NWYyIGxlZ2FjeS10cnVuaworNTE5MDUgNTkwYTk4YTcwYmY5ZDk0NWRhNmMxZjZjNGFkNTNkNDMwOGRhNWMwOCByZWxlYXNlMjUtbWFpbnQKKzUxOTA2IDZiMDFhOWM0NTVkYmQyNjVkZGVmYjdhNzU4YmJlMzUyYzNmNmM0NzMgcmVsZWFzZTI1LW1haW50Cis1MTkwNyA3Njc5NjJmODg4MzQ2MDlmOGU4OTQ4MjdlODhkZmI0NDIxMWExOTRhIHJlbGVhc2UyNS1tYWludAorNTE5MDggYzEwYTcxY2YxNmU0NzE0MjVlNmQ3NTY0ZTNmN2E2NDhmMTRiNzAyZSByZWxlYXNlMjUtbWFpbnQKKzUxOTA5IDdmNWY0NmI1NjYxMWMxNTNhZWM3YjA1M2MwMGYxZDg5MDNmYTFlZWQgYmNhbm5vbi1vYmpjYXAKKzUxOTEwIDIwMTQ3NDE1ZTk3ZjliMGNkOTUxYzFlZTVkNjhhZjI5YTIzODg4ZDMgYmNhbm5vbi1vYmpjYXAKKzUxOTExIGNlMjQ3NzhhNjQ5ZjFhZTUzZjVkMDA3NTgyMTQ0NWJhMjQ5MTViZjUgYmNhbm5vbi1vYmpjYXAKKzUxOTEyIDc3NTIzNzgwNzdhNTM3Y2IzY2QyYTRjMGZhOTc1MjdiYzcxMDYwMDggYmNhbm5vbi1vYmpjYXAKKzUxOTEzIGI0NDcwYTU0OTkzYTM4N2M1NzliZjY3OWIyM2ExYzU0NjdlZDlkMzQgbGVnYWN5LXRydW5rCis1MTkxNCA3ODM5NDFhMDBlOWUyOTUyMjkxYzA4Yzg0MjdlNjlhZWNiZjE3ZDZiIGJjYW5ub24tb2JqY2FwCis1MTkxNSBlNzBhN2I3MTk3YjY4NDFkNzgzNjcwODBiNmVmNjMwMWYwYWY1YWQzIGJjYW5ub24tb2JqY2FwCis1MTkxNiBiNmVlNGQzNTQxYzBhNTI4ODEyMWQyODhhZGZkMjNhOTgxMjM2NjgwIGJjYW5ub24tb2JqY2FwCis1MTkxNyAwOTRkYWU0OWFiZWJiMzRkYTM4YzNiMDY0M2JhODA3NmM3OWNiZjI4IGJjYW5ub24tb2JqY2FwCis1MTkxOCBlMDM2ZmM5YzY4MjcxNDc3Yzk2NWZhNjkyM2JiMmVlZTgxMmIzZjhhIHJlbGVhc2UyNS1tYWludAorNTE5MTkgYmM3NzJmYjUxMzkyOTVkMTU4YjcyNzQ1NDZmOGFkNmRjZmNiMDdkNiByZWxlYXNlMjQtbWFpbnQKKzUxOTIwIDcxYjgwMjQwYWMzZGRhZTQxOTJhMmM1MGExY2JjNTRkYjZjZGRmYmIgbGVnYWN5LXRydW5rCis1MTkyNiAwMTcxMTA4YWI1MTU1OGViMDZiN2FiNGU3M2QwNmY1MWM4MzM4M2Y1IGxlZ2FjeS10cnVuaworNTE5MjcgNDg4OGQyZDRkMjkyZWMzOGQ1ZTNlOTQzMTkxMzkzZTA3Y2YzMmNjNyBsZWdhY3ktdHJ1bmsKKzUxOTI4IDcxZTBmM2ZjNTdkYTc3OGY0ZmUwODQ5YjY0YTY1ZWFhNjExZGQ1ODUgbGVnYWN5LXRydW5rCis1MTkyOSBiMzAzZDJjMmM2YzU2NDM0M2EwMzY3ZTBmZjhhNmFjZTdhYzU5NzM4IGJjYW5ub24tb2JqY2FwCis1MTkzOSBlYTI0YTljOGVkYTI1OGI5M2FlZjU5MTNjMjg4M2RjNDM1NmRkMTJmIGJjYW5ub24tb2JqY2FwCis1MTk0MCAwMDMxZmMyZTA1ZTI4NmUyYmFmODkzN2U3YjMzYzcyYmVlOTdlMmVkIGJjYW5ub24tb2JqY2FwCis1MTk0MSAwMTUxYzA3YzUzZTUxMDYyNzMyYzAzN2UyNTY0NWJlMjNmMGRmN2E2IGJjYW5ub24tb2JqY2FwCis1MTk0MiBkZTQ5MjRkMDM5MDNmNzRjODU5ZmMyMzA3ZWJiMmRiM2JmZTRjOTA3IGJjYW5ub24tb2JqY2FwCis1MTk0MyAxZjQ4OTdmNWZiMmJlYmE2MTg4ZjRlMjM0ZTAyZjRiMGYyOGU3ZGExIGJjYW5ub24tb2JqY2FwCis1MTk0NCA0M2JhZjZiYjBmOGIwYjRlNzNkMGUwMmU4ZWJlMGZiM2VlZDQwNWIyIGJjYW5ub24tb2JqY2FwCis1MTk0NSA1NmYwZWM1MGQ3MzcxNzQ4Yzk4OWU2MWNkOWIyNmI1NzBlNTIzOWUzIGJjYW5ub24tb2JqY2FwCis1MTk0OSA5MzYyOTcwNDdjMTc5ZWQ4Nzc5ZmMyM2IxZTZiNDM2ZjMyNDZhMjVjIGxlZ2FjeS10cnVuaworNTE5NTAgNjk1MzBhYTIxYjhhNjQ5ZmY3NDcwYWUxNGY5ODFjM2NhZDNjMmE2NiBsZWdhY3ktdHJ1bmsKKzUxOTUxIDM1YmYxNmU3ZjExY2RlMTZjNDVkNmMwN2YzOGM1MzI5Y2FhODUyYWUgcmVsZWFzZTI1LW1haW50Cis1MTk1MiBlZmY4OGM2YWFhYzM3NDc2ZGNiZDljOTc3OGNhNjExZDg1MmE0NjkwIHJlbGVhc2UyNS1tYWludAorNTE5NTMgZGU0ODY2ZDQ0ZjEzNzc1YzVmZGEzMmQzZmI3MTljYjNiYjU3MzE1NCBsZWdhY3ktdHJ1bmsKKzUxOTU0IDdmNmI0ZmM2N2JiNmIzZjM5MTc5ZWI4MWI4NDBhMGExNTk5YjMxZDQgcmVsZWFzZTI1LW1haW50Cis1MTk1OCBkZjk4ZDk3MzEzOTBmMTQ3NjgxN2Y5NDQ5NDQ4NWY3YWRjMGEwZWJjIGJjYW5ub24tb2JqY2FwCis1MTk1OSAwODlkZGYxODc3Y2MwNzhkNjE0NjZkMTQyZGRhMTJkOTU0YTk3YWUwIGJjYW5ub24tb2JqY2FwCis1MTk3MSAyNGY5YTEzMDg0YjAxNzQ3NDQzOTJmZDhjMDdiYjYzYjc4OGE2ODVkIGxlZ2FjeS10cnVuaworNTE5NzIgYjhjYjcyMDEzNzljNjc5NTBkZTExYWVmZDNjMDMxMTExNDQzNDFjYiBsZWdhY3ktdHJ1bmsKKzUxOTczIGFlYTE5YzJhNDViZmM5NGFlMTYxNTc5M2JhNjBhYzk0OTBmMzRkMjQgdGhlbGxlcl9tb2R1bGVmaW5kZXIKKzUxOTc0IDI2NjE4NTI4ZmEzYjc2NGIwOGQ2NzgxYjNiODMzNTFiYTY2OWQ1MzEgdGhlbGxlcl9tb2R1bGVmaW5kZXIKKzUxOTc1IDk0YThjZDU4ODhlNzBiMDcwM2I1NmQ2NGIxYTExNDQxMzQzZDQzOGQgbGVnYWN5LXRydW5rCis1MTk3NiAwYjYzYzI4NTkzNGZhMDUwZmJmYjRhYjY3YjdmMmZiMTIyYmU5OWU3IHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk3NyA2OWJlMDE1YTRiNTFjMDNkMjQ5MGE0OTU3NDNmM2Q4OGM5YWY1ZGY0IHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk3OCBjNzgxYzk4MGM5YTBkZDg4MGI5MzFkZjFhNWM4ZmVjMDQyYjIzNjlkIHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk3OSAwNzlmOWJlYjFkN2ZhMzU5MjJiMjg2ODBjY2RjYTY3NTFlYTAwYjYyIHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4MCA1ODcyYmFiZmY2Mzg0ZjQ2ZTUzZTUzOTk0ZDgxZGZlYmMyZDYyNzhmIHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4MSBlM2M1ZjNiNTkyNzFmMDJlYWYwYzM2YzkwODg3N2ZkZjYzZThkMjRjIHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4MiBlMjc0MzIyMjU4MWQyOGRiZTlmYThmYjFiZjdmMDQyMDAwZWI2ODFlIHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4MyA3NDM5N2IwMDk5MTQxZmNhZmQ5ZWMyMmNhZjdlZGU3OWY1ZWMzNjE1IHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4NCBiOTQyNzhlMWJjYjMxNDFhNTAyZDczNjM1ZDQzNzE4YTI5NjYzNDU3IHRoZWxsZXJfbW9kdWxlZmluZGVyCis1MTk4NiAwNGM5OThmZjI4YjdkNDFjZDMyOTc2NDcyMWU4NTYwZDRiNGJmODVmIGxlZ2FjeS10cnVuaworNTE5ODcgY2FiMDU2OTAzYjNkZDI2NDkyZjA2ZWE5MzI4ZmU1YTMzZjk0MGYzNyBsZWdhY3ktdHJ1bmsKKzUxOTg4IGMyMGJkNzRhYzlhNjdkZGViMjI3NWYwNDQxODA1YWJhNmVhYTI3NjUgcmVsZWFzZTI1LW1haW50Cis1MTk4OSA0NzllMzg5Y2I0NjJmOGRjYmE4ODVjZWJjOWEwMjY1ZWFhNzE4NjQ3IGxlZ2FjeS10cnVuaworNTE5OTAgN2Y2ZGRmNTU1YzEyMGJjOTM1YTgyOWU3NTBjZGYxMWRkMGZlMzMxOSBsZWdhY3ktdHJ1bmsKKzUxOTkxIGQ5OTc1MzMxNDQ1MzM1M2RkZWViOTk2ZmI3ZDA3NTcyMjk5ZGQ4MDAgbGVnYWN5LXRydW5rCis1MTk5MiBiNTI5MmY5Njc4NzdjYzM0OWExNDM1OTJhNTViY2YxNTNhMmY5MzZlIHJlbGVhc2UyNS1tYWludAorNTE5OTMgMjViY2RmM2NkMTk0MjFkNDM0NDdlNGVmNmIxODQ4OWNiMDY4ZGY5OSBsZWdhY3ktdHJ1bmsKKzUxOTk0IDM0NzhjMTYwMjA3Yjc5ZDZmOGMxODVlNDIzMGM2MmU4MjUwMjgyN2MgcmVsZWFzZTI1LW1haW50Cis1MTk5NSBlY2FhZmMzMmM1MDAwNjMxNDQ5YTYwMWI4NDg2MTQxYWJhZjYxODVhIGxlZ2FjeS10cnVuaworNTE5OTYgY2NkZGIyMjYxMWRjNmYwZDU2MDBjZWIxMTVjZWY5ZjAyNDBhODcyMiByZWxlYXNlMjUtbWFpbnQKKzUxOTk3IDYwM2NkZTVlZDFlYmM1N2Y2OTU5MTljMjc5YWEzODM0YjMyNjRlY2IgcmVsZWFzZTI1LW1haW50Cis1MTk5OCAzYzdmMTg4MWU4MmE5NmFlNDY1YmMwMmFmMmNlZTllYjJmNDRhMWE5IHJlbGVhc2UyNS1tYWludAorNTE5OTkgZGVjN2Q5OTNiNjhmMjQxNDlhZDg4ZjE5MjgyZWVjMmUxZWFiNTZiNCByZWxlYXNlMjUtbWFpbnQKKzUyMDAwIGY4YTdkZmJmODFkMDg5MjJiMTA1Zjc2ZGUzMDM1OGY2MDYzODAwNDcgbGVnYWN5LXRydW5rCis1MjAwNSA3OGM1YTAzOWZhM2E2NDIzY2UwODBkMDQ5YWI0OGEzNDA1MjI4ODQ1IGJjYW5ub24tb2JqY2FwCis1MjAxMCA3OGQ0ZTVlNDcwY2Y4MjQzYTljNjdhMDdjODVmYWVhYWI2YmVkYmQ3IGJjYW5ub24tb2JqY2FwCis1MjAxMSBiMDcyMjI4Yzk1YTIwNDA1MDEwN2VhMjI1OTg0ZDFjZDg1YWIxMGM2IGxlZ2FjeS10cnVuaworNTIwMTQgNzRkY2ZkMzZmN2M0YTM5YjI1NjVhOGEzZjJkMjY5ZDE5YjU2YzI1ZCBsZWdhY3ktdHJ1bmsKKzUyMDE1IGU2YTRlMDY3ODk5M2NlODZkMGRhN2E4YWZmMzA5ZDdhYTYwZTJmYjQgcmVsZWFzZTI0LW1haW50Cis1MjAxNiA5MzQ3YzJiNDUxYmFkOWIxZGEzZmJhMjdiYTY0NWIyYThmZjUxMzBiIHJlbGVhc2UyNC1tYWludAorNTIwMTcgNmZiNDZlODdkNWY5NGM2MGU1NDhmYzE0M2M1ODRhMDRkYTU0MWExYyByZWxlYXNlMjQtbWFpbnQKKzUyMDE4IDNiNzBkYTllZTM2ODc1OTMwMmU3ZGJjNTQ3YTc2OWU3MTU1MDIwMGYgbGVnYWN5LXRydW5rCis1MjAxOSBhNTIxNDJiYzE1OGY2NWQ1ZTM2N2NiNmI3MjQ3ZTdkMDA3NWU4MjgwIHJlbGVhc2UyNC1tYWludAorNTIwMjAgNjhhNTZhMTVkNzU1OTMzNmM2YTViZmU1ZjMxMGE3ZmExNDY0ZGRkZCByZWxlYXNlMjUtbWFpbnQKKzUyMDIxIDk0ZGZiYjlkYWM1NzhiMDM3ZGZiZDI4NGQ4MTI0NmQ2NzQ1M2NmYzIgcmVsZWFzZTI0LW1haW50Cis1MjAyMiBjNDlmMDJhNTBjYWRkNmY4MDFjYjVlMjdkOGVhYTNiZGNlYjY1ZjZhIGJjYW5ub24tb2JqY2FwCis1MjAyOCAxNjk2ZDg1YmEwNDM1NjQ1YTJhY2Y0NzU0MjRlZDg5Mjk1OGM4ZTE2IHJlbGVhc2UyNC1tYWludAorNTIwMjkgYWYzMTg2YzY0MDkyMDdjNThjZTdkMjUxNjE5MWNkOGQ1MWZhNjU4NCByZWxlYXNlMjQtbWFpbnQKKzUyMDMwIDg4NGQxY2I3MDIyMTViYjdkMDJkNjQ2NjcxYjg1MzE1MzE5NmY4YzUgcmVsZWFzZTI0LW1haW50Cis1MjAzMSAxMjg2OWFhZTlmNmQ5ZWRmYmU4YjY4YjQyMmYwMWIwNjY1ZmM4ZjQ1IGJjYW5ub24tb2JqY2FwCis1MjAzMiBmOTBiYTMwNmMyODdhNDhkYjAxMDM1OWQyY2FjOWQ5MWRiYjhkMzkzIGxlZ2FjeS10cnVuaworNTIwMzMgMzUwNzc3NWY0ZWQ0MWQ1NmEyYTdhODc4YWZlZDI4NjhmNzYzMWZlZCBiY2Fubm9uLW9iamNhcAorNTIwMzUgZmIyODllZTFjZDYwN2IzNzlhMDFlYWMyNjA4ZTk2OTNhNDllNGFlMCByZWxlYXNlMjQtbWFpbnQKKzUyMDM2IGFiNzllZDBmOTI4MTc1ZTE5MDc1MjIxYTY4YmQxOTYwM2JjY2VlZTUgcmVsZWFzZTI0LW1haW50Cis1MjAzNyBjYzE4ZmRhZDEwOGI3ZDcyMDA3OTdlYjA1ZTFjNTBjMzc5MDgxMTA2IHJlbGVhc2UyNC1tYWludAorNTIwNDAgNGYxMTc0NWM3ZTVmY2U4ODgxNDg2Y2M4ZmY2NDdmYzM1ZmM5YjgzNyByZWxlYXNlMjQtbWFpbnQKKzUyMDQxIGMxMWNhZTJiOWE3NWYyYTgxNDFkODdhMDE2NTAzODgwMTdkNDlhN2IgcmVsZWFzZTI0LW1haW50Cis1MjA0MiAyNjMyYzlhZjY0YWJiMjUyNzYxNGI0Y2ExNmFjYjg5MjhmNmZjNWM3IHJlbGVhc2UyNC1tYWludAorNTIwNDMgMTVkZGFiZTYzZDk1MmM2N2IzNTNhY2UzZDIyODM3ODMwZmJlNTZiNSByZWxlYXNlMjQtbWFpbnQKKzUyMDQ0IDFlNWYwYjA0NjZkOGRmMGRiYTljNGYwMDE2MTRlNWE2NTAzYjg4YjEgcmVsZWFzZTI0LW1haW50Cis1MjA0NSA5ZTBmYjk1NDc5MWVjOTM0OTJlY2E3YWUyMmZmOTM4Y2NiMTUzMjVjIHJlbGVhc2UyNC1tYWludAorNTIwNDggMDU4NjE3NDllYWNkMjExYWZiMmNmMTNhZDlkMGFkM2ZmODA3ZGZmMSBsZWdhY3ktdHJ1bmsKKzUyMDQ5IDAxYzAzYTcxMWIxNWNiMWVkMDFmZDNmMGQzMTRkMzAwNTNlNjZmOGUgcmVsZWFzZTI1LW1haW50Cis1MjA1MCA1MmNkYmU0Yjc2NDRkNzJhYTkyY2EwZmM2NTQ4Nzg2MTRjYzEzZDZlIHJlbGVhc2UyNS1tYWludAorNTIwNTEgMGVkZjM5OTk2MThhZTI4Y2Y5NjhhOWIwMGVkYjAyNzJjZjFiMTNhYiBsZWdhY3ktdHJ1bmsKKzUyMDUyIDFkYzIyY2MyMDEzMmYyYWMwNTk5NzdhNWM0YzdmYTJhOGMzMDg0ODIgcmVsZWFzZTI0LW1haW50Cis1MjA1MyBkZTc5ZjE4NzBhZThmMWQ4NmQxZjU4NTE4NjgxZDM0NmVmZTM1ZmVhIGxlZ2FjeS10cnVuaworNTIwNTQgNWRmZmEzNWNjNjQzMDJjMmMzZGRhM2FlMWZjZGJhYzhkNmZjODI5YiByZWxlYXNlMjQtbWFpbnQKKzUyMDU1IGQ4MzM4MDZjNzM1MWE1OTE3MjYyYzg4OTAwYzUyZmM4MWRjNjVhNjQgcmVsZWFzZTI1LW1haW50Cis1MjA1NiBjNDc3YTBlMmIwNjc5OWRhYWQ4OTQ1MmQ5ODFjNzVkY2M0OWMzOWQxIGxlZ2FjeS10cnVuaworNTIwNTcgMmM4MjRhOGExZmI4Y2Q1NmFhOGViNmZlZmY5Y2E1NmQzNTMxZmRhNiByZWxlYXNlMjUtbWFpbnQKKzUyMDU4IDQ5ZmJkZGZiMTIxNzAxZGRlZTE2NGFjNzUyYjEzMjEyODBmYmNmNjggbGVnYWN5LXRydW5rCis1MjA1OSAxM2NmMzQ0ZGU4Yzk4OTg0ZjM1ZjhkMzgxOWMxODE2ODQ0MTUxNGM1IHJlbGVhc2UyNC1tYWludAorNTIwNjAgNTI0NjBiMDkyYjVhNjZkNWEzNTkzYTE2ZjJlNGM3NjMxYjg5ZDhmNiByZWxlYXNlMjUtbWFpbnQKKzUyMDYxIGUxYWI0NjUzZWJjMDkzMjU5NmI2YjA2NDJjMmYwZTg5YjE5MmMxM2IgbGVnYWN5LXRydW5rCis1MjA2MiAzOTg2YmZlNTMxMDFkYjMxMjkyMjk0M2E2YzkzMTNmN2U5OTc0OWNmIHJlbGVhc2UyNS1tYWludAorNTIwNjMgZTdhNTgzNDFiMmU4Zjc1MzVkNzdjZDE0YzIyN2IyYTcxOGQzMzVlMSBsZWdhY3ktdHJ1bmsKKzUyMDY0IDFiZjUxZDJmNDY5ZDJkMmZhZjc4M2JjNjhmNTNjZWY5YmYyODQ2YjkgcmVsZWFzZTI1LW1haW50Cis1MjA2NSBiOWEyZWYxMzAyZDQ3Y2NkNTE1MGQ1OTNhMTljNjFlNWEwM2I2MjVkIGxlZ2FjeS10cnVuaworNTIwNjYgOTlkMWM5MzY3Njc5NGQyZDRiNTgzYjY0ODYyN2JhZTZiNGZjZTZiNiByZWxlYXNlMjQtbWFpbnQKKzUyMDY3IDMzMGRiY2FkYjkzMTcxZjYyMzdlYjE4ZDdhYTgxYjk5NzRkZWY0NmEgcmVsZWFzZTI1LW1haW50Cis1MjA2OCBmZmI5MDEzNzRhMzgyNTM5YTkwNjU3YTU0Yzg5Y2NkZTA4ZmYyY2Y1IGxlZ2FjeS10cnVuaworNTIwNjkgZDkxODI2YmFjNjU1NWNiMGE2MTQ2Yjc1NWM2NmNiNDVlM2M0Y2Y2OSBsZWdhY3ktdHJ1bmsKKzUyMDcwIDk1ZDI0NzNmNzc3MGNiMTBjNmY4OTM1YzAyMTE2Y2RiNzdkMTQzNmMgcmVsZWFzZTI0LW1haW50Cis1MjA3MSA5Y2FmNWE5ZGE1NTRkMGJhYjNiYTFhYzg0OTYyYzQ2YjA3NTRiZmMwIHJlbGVhc2UyNS1tYWludAorNTIwNzIgYjdhZTg5NzdkMDZlNDk3ZDZmZGFkZWFhMGM4NmQzMzZhZWRjZWFjZCBsZWdhY3ktdHJ1bmsKKzUyMDczIDliZTAzMjI2YTdiZjhkYTk5ZWRmMTc5MGFlNTU5ODYyMzJmZWJhMzIgcmVsZWFzZTI0LW1haW50Cis1MjA3NCBjZjU4ZmI4NDUwYmEzMDVkNGZjMDU5ZDkwOTVhNWVhYTAwMjk3Y2NlIHJlbGVhc2UyNS1tYWludAorNTIwNzUgNDBlMmZlZTAzYTk0OTIyNTA5OGJiODdkNGJmYjQyOGY3ZmNkY2ZiYSBsZWdhY3ktdHJ1bmsKKzUyMDc2IDUxMzBiNjhiNTRlOTRhOGIwOTIyM2FkOTUyY2FhMTcwNjUzZjBmMTAgcmVsZWFzZTI0LW1haW50Cis1MjA3NyBkZmQ4MDlkY2Y2ODAwMGZlNmE0YTY4MGEyNTBjMWY5ZWI5OGQyZWMyIHJlbGVhc2UyNS1tYWludAorNTIwNzggYzg5YTc1NmMwOTY1YTkwZDM1Y2E2MjFiMzBiN2Q0NTIxYTI2ZWU1NCBsZWdhY3ktdHJ1bmsKKzUyMDc5IDkwNzI4ZGZjMzNlODU4ODRkY2NlY2I4MzZlNWIwMTQ1ZWFlZjg0NzMgcmVsZWFzZTI1LW1haW50Cis1MjA4MCBkNzQzMzgxMTMxZDZjOWYxYjg5M2UxMzZhMTY4NGVlZTc3NjE4OWJiIGxlZ2FjeS10cnVuaworNTIwODEgYmY0N2RlNmQ5YzkxOGUyMDZjM2FiN2ZjZGVjZjQ1MWQ4NmZkMWIxOCByZWxlYXNlMjQtbWFpbnQKKzUyMDgzIDI1N2RhZjM5YjA4YzY4ZTYyZjRlNzBkNTUxMzhkMjI2OWE4MDhjMjEgbGVnYWN5LXRydW5rCis1MjA4NCA4OWU0YWViYmYzMWM0NjA5M2IzY2NhN2M4MTgyM2M4NzFkY2I2ZWM5IGxlZ2FjeS10cnVuaworNTIwODYgMDBhZjY5ODcwMjZhNmQ1YzFlMmQzZTE2NDVkZDFmNmE5N2IzOTBhNiBsZWdhY3ktdHJ1bmsKKzUyMDg3IDFkYTA0YzhlZThmZjAwMzA4ODcwNzhhOGJkYTY4ZTI0NWY2YWQ3ZWYgcmVsZWFzZTI1LW1haW50Cis1MjA4OCA5ZmNhYThlZThjMjJmZGIzZWQ2M2MzM2EzNjM3OTA4NTc2YmE1ZTEzIHJlbGVhc2UyNC1tYWludAorNTIwODkgMTY5N2QwZDRlZjMzN2E4ODIyYjU5MzUwYTdiYWEwMTVhZTA5NDdhNyBsZWdhY3ktdHJ1bmsKKzUyMDkwIDVjMzZlYzVmZDNjMjM2ZWI2YzA0NDBjZmJlNWZkNzhlOTlmODk4NDYgcmVsZWFzZTI1LW1haW50Cis1MjA5MSBjMGU3MWE0YjcxYzc0NmYwYjhiZGFiNTA1OGMxYjVhMjNlYmZmNDFmIHJlbGVhc2UyNC1tYWludAorNTIwOTIgY2RjMzY3YWIzYmJmY2IxMWZkZDRmNWNjY2MyZGVlODcxNGIxNjI1NyBwZXAzMDJfcGhhc2UyCis1MjA5MyBiMTQ0OWE3ZTE1ZWRlZWFkODU3ZjUzY2I4MGZmNWRlOTM2ZmZjZmRiIHBlcDMwMl9waGFzZTIKKzUyMDk0IGI0NTUzYjEyZTI1YmU5YWNmNjNiZGIxMWEzNmM3ZjkxZjMwZjdlMzAgcGVwMzAyX3BoYXNlMgorNTIwOTUgYjIyYmFhMTU0MTQ3NGY1MWZhMmNjZjUyYmMzMjI5ZDkyOWM5NmUyYiBwZXAzMDJfcGhhc2UyCis1MjA5NiA4NGFmYTM2NmVlZTdhMmIwNjU0MWU5ZGI4M2EwYTM0MThjNzEyMzExIHJlbGVhc2UyNC1tYWludAorNTIwOTcgNDVkYmNiMGU5ZmE5ZmQ0ZjkxODYzOTcwMjE0YTkwYjA2ZTA4ZjRlOCByZWxlYXNlMjQtbWFpbnQKKzUyMDk4IDgxODExOGMzYTM0MGRmYTEyN2EyZmVhM2NmZGFmZTMzNTI3MmMxNDYgcmVsZWFzZTI0LW1haW50Cis1MjA5OSA1ODBmNmE2OTUxNzIzOTc1YzVlYzgzMWY1NDZlOTFmMDBmNWU1NTRiIHJlbGVhc2UyNC1tYWludAorNTIxMDAgMmM4OWQ2MTZhOWVkMzdjMDFmMmJiNTY3ZTgwMDcwNTQ0YmVhNmEwYSBsZWdhY3ktdHJ1bmsKKzUyMTAxIDJlMWM0OTM5NWI5NjFmNjU1NTRmOWExYTZkNjc5Mjk1NGY3ZmY5MzYgbGVnYWN5LXRydW5rCis1MjEwMiA0ZGE0ZGU5NTQwMTJiNDlmMzU5YjQxYjllNTQ1N2JmNzdhYjg5NmVhIGxlZ2FjeS10cnVuaworNTIxMDMgZjAxOWU0Zjg2Mjg3N2FhN2IwYjk0MDk2MmJjYTlkYjMyZWQ2NzY3NSByZWxlYXNlMjQtbWFpbnQKKzUyMTA0IDI4YTk0YmY3ZjY3ZjNjNGIxYjJjOGZmMGRkZTNiMGZmNzIxMDViNGQgcmVsZWFzZTI0LW1haW50Cis1MjEwNSBkZTdjMGNiNWE4NzI5NWM2YTE0MDM2N2FmMGJiMmVhNGM0ZmQ5MTJkIHJlbGVhc2UyNC1tYWludAorNTIxMDYgYjMzMmUxYWM2NmNjZDdjNmVmN2YwZmU2NjNhMDdiY2RiZWRiMmNmZCByZWxlYXNlMjQtbWFpbnQKKzUyMTA3IDA2MjkxZWFkZGUyZGI1YTJlY2QzM2E0YjI3MTg0MWYzNWMzNmY0ZmIgcmVsZWFzZTI0LW1haW50Cis1MjEwOCA0NDNiODczZjllYjkwODU1ZWU0YzJmYjUyNzZlOWQ0M2VmOGJmYzBmIHJlbGVhc2UyNC1tYWludAorNTIxMDkgNWRkNmM5MGQ0MjIyY2I5ZTZkNzZhM2I2ZjhlNDJjNzg3N2E0MDRlZSByZWxlYXNlMjQtbWFpbnQKKzUyMTEwIDZiMWM0ZDdkM2EyNmMzMDU0NWZmZjAzZDQ5ZTVhZTVkYTM5NTU1OWEgcmVsZWFzZTI0LW1haW50Cis1MjExMSBiN2UzNGZiYzgwYWQ2OWJjZmZjZjhlMDEwOGZmODQ4YTJhNjJmMThhIHJlbGVhc2UyNC1tYWludAorNTIxMTIgNTJlOTk2NGVmOTIyZDc3MzA0OGZiYTgzZjI3Yzc1NjA4OTc0ZmY4NCByZWxlYXNlMjQtbWFpbnQKKzUyMTEzIDU0ZDE3N2VkZTg4Mzg4MDJkNjliMGU5ODFlYzYyOGZiNjQ5OTZiYzYgcmVsZWFzZTI0LW1haW50Cis1MjExNCA4YzgzZmQ3OWNlZTViZTMwNjQ2NzYyMTM0MTU1NDE5YjA1MDRiMTQxIHJlbGVhc2UyNC1tYWludAorNTIxMTUgZWYwOWUyNmVmMDk5YTQzOTE1YjA4YzllYTlhMDgzMWE5NDY4MDhmNSByZWxlYXNlMjQtbWFpbnQKKzUyMTE2IDJmMjM4YTJjZDE4OWRmYzM3ZDU3YjUzYTcwMGU0MDhiZDM1OGY3MWQgcmVsZWFzZTI0LW1haW50Cis1MjExNyAwYjZiMzYwZTkyMTc5NTEzMTE2ZGQ4ZTRlNGViNzRhYWQ4MTk0YmNmIHJlbGVhc2UyNC1tYWludAorNTIxMTggOWU3NjNiY2QxM2NiOWZlYmJjMzY3ODY1NGJhN2RjY2RlMjg2NGI0YiByZWxlYXNlMjQtbWFpbnQKKzUyMTE5IDBkMzViOWY5NGIxNTE2Y2YyZjVlZTI2ZTFjMWIxYTUwNjVlNjZjYTcgcmVsZWFzZTI0LW1haW50Cis1MjEyMCA5MTY3OTI4N2NiOTZjZjk4NmMwMjcyNDNiZDgwMTBlYWRlNTViY2M5IHJlbGVhc2UyNC1tYWludAorNTIxMjEgNDdhYjBjMjdkZDFmOTIyZjRmNjBkYjM3ZjA0YjVlNTdlOWQyMzc4YyBsZWdhY3ktdHJ1bmsKKzUyMTIyIDM2MGQwOTcxYTZlZWYxZDg3OGYwYTBkNTM0YTVkYTM1NWQxMzg2NGMgcGVwMzAyX3BoYXNlMgorNTIxMjMgOWUzNWI2MmVkNGQyZGY5NzU3MjU5MWM0ZDFjNWZhODU5Mjg2MjU5ZCBsZWdhY3ktdHJ1bmsKKzUyMTI0IGZkMTRiYjU4MzFjZGFjNGNjZGE1ZDdhOTQyYzAxMjRhN2ViOWRjNWYgcGVwMzAyX3BoYXNlMgorNTIxMjUgYWRhNTZiNTRkYjlhNzkzNGNhYWMwOTQzMjFhMzc3ZGZiMGJhNDUwMiBwZXAzMDJfcGhhc2UyCis1MjEyNiA2NjBjZDA3MjA4MGRmM2U4YjA0NTZkMDIxMGVkZjRhOTdlMGU0MzE3IHJlbGVhc2UyNS1tYWludAorNTIxMjcgNzliNjQ0YmYwMTE2NDdhNTMxZDNlZmQyYTYzZDU3ZTU4MzkwZDU1ZCByZWxlYXNlMjQtbWFpbnQKKzUyMTI4IGRiNmNhM2VhNTNlNWI2N2FlNDE4NDFlNTBlNzVjZjIwODM4NTUzYmEgbGVnYWN5LXRydW5rCis1MjEyOSBmNWQ3ZGU1MDMxYWE0ZTIyN2RkZWQyMjcxOTU4MzhmNjJmZTFmN2I2IGxlZ2FjeS10cnVuaworNTIxMzAgY2E4ODdkNTVjNTkyMTNkMzRkZTg3ODM0MzI4YWFmOTEzZDkyMDJiOSBsZWdhY3ktdHJ1bmsKKzUyMTMxIDhhMjg1M2JmOWVjYWQzYjE2NWZkZjk3Y2U4YWNkNzc0NTY3NDU1OTUgcmVsZWFzZTI1LW1haW50Cis1MjEzMiBlMDM5Y2Y2YjdkNDI5Y2U1OTA1YTdhMWE4MmM3NWEyMTAwZmQ0ZDU0IHJlbGVhc2UyNC1tYWludAorNTIxMzMgMWI2MWU4MjY2MGJhOWM5YzAxMjMyMmY0OWQ0NzI4MWUwNDU4OGZlZSByZWxlYXNlMjQtbWFpbnQKKzUyMTM0IDEwYmI3YWNiYmRjODM3ZTI5YTliMTFmMTM4N2E2YjFiMmNhMDQ1ZmIgcmVsZWFzZTI0LW1haW50Cis1MjEzNSAyYWRkNDRjMGRlNmM3ZGFhNjQ3ZTdkOGQyOTM2MWViNDllOGE2NTQ3IGxlZ2FjeS10cnVuaworNTIxMzYgYTliMWY0MDRlODhiNTljZTQ4MWYzYmY4Mjc2MzJmZjEwMzI2OGMxYSByZWxlYXNlMjQtbWFpbnQKKzUyMTM3IDBjOGU5ZjkyNzJkNWYzZTE0NDcxZjU1MGIwNDIwYjA4N2QyNjc0ZjQgcmVsZWFzZTI0LW1haW50Cis1MjEzNyAwYzM2NDEwYzM5ZThkZGJiODk1MTg1N2RjNGFkZjMzZjI5ZmRjMzVhIGxlZ2FjeS10cnVuaworNTIxMzcgNGViMjg2ZTkzMWE5NWRkZGIxOGQzZWNjNjlhYzk3MzI0NzVmNGYzZSByZWxlYXNlMjUtbWFpbnQKKzUyMTM4IDc5ODkzNWUxMjk1ZTdmYTMyNDEwOTgzMDhlNTc1MDJmNTE1YWVlZGYgcmVsZWFzZTI1LW1haW50Cis1MjEzOSA2YmE0MDJiNjAwNDE4YTU2ODQ1M2ZhYjllZWU3ZjNjYjhhYTE0MGE2IGxlZ2FjeS10cnVuaworNTIxNDIgYmZhYzIzMzg4YTIyNGU3OThiYzIxMWY1YTZmYjU2YTc5ZGQwMTY5OSByZWxlYXNlMjQtbWFpbnQKKzUyMTQzIGRmN2E1NDM1ZWNiYjVjZmZiNTYwYmYyMDkzMzA0YWU5ODU4NTM1MjAgcmVsZWFzZTI0LW1haW50Cis1MjE0NCA0MmFiZmIzOTEzMDBhMjUwNzY1N2E5ZjU1MjA5ZWNiNzUyMjFlMmU0IHJlbGVhc2UyNC1tYWludAorNTIxNDUgMDRlYzM5MTQxMGNiZTQ2ZWI5MmZkMDkwMzM1MzI0MGY3N2E3ODZiNyByZWxlYXNlMjQtbWFpbnQKKzUyMTQ2IDUyNzBiMWUzNjY0OGVmMDQyNzhhYWNkMzg2YWYxMzY2ODYxMWM1ODYgcmVsZWFzZTI0LW1haW50Cis1MjE0NyA0NDA0YTM5ODE0NzA2NDFkMzE3Yjg5OWE1NTk5MDkxOTM1ZjYyNjE1IGxlZ2FjeS10cnVuaworNTIxNDggOGFhYTNkOTFlZWZhN2YyOTZjZjJjN2MzZDc5MWJmYjdlMzYyNjY0MiBsZWdhY3ktdHJ1bmsKKzUyMTUyIGIxZTczNzdlY2YwNDQ2MDEwNDM3YzI0Y2JjZmQ2ZGQxNzBjMWY0ODggcmVsZWFzZTI0LW1haW50Cis1MjE1MyBlODhjNDI2N2FjZDFjNzkxNzRiZDBhNmExMzgyMzgzZjI2YzdlZjYyIHJlbGVhc2UyNC1tYWludAorNTIxNTkgYTRiYmZjYTQwYzdjZjc2ZjAxYjVkODI0YWQ2YjcwMDNhMmNlNjVlZiByZWxlYXNlMjQtbWFpbnQKKzUyMTYwIGY2YmJlOGQ2ZmEzMzAzNTVlMmZhNjFhN2RlODMyMjA1M2E1NGUyY2EgcmVsZWFzZTI0LW1haW50Cis1MjE2MSAxZjU4OGE5ODJjYzU2Yzc1ZWJiODBhZTA0ZDU4OTE0ZGQwOTA5YTZhIHJlbGVhc2UyNC1tYWludAorNTIxNjIgODAxN2IzZjIxZjYyZTZhMDRiNzk4ZDNhNjIyYmViYTQyNzQxZDMzYyByZWxlYXNlMjQtbWFpbnQKKzUyMTYzIGMyN2Q4Zjg5YWE4OTE1NTE5YzEwZmRhN2ZkNWI3MWE2MjFmMmJkMWIgcmVsZWFzZTI0LW1haW50Cis1MjE2NCA5ODE5Y2RkMmZjYjE1NjlhZGJhOTNmYzMyOGVkMDUwMjI3YjcyN2NhIHJlbGVhc2UyNS1tYWludAorNTIxNjUgYTlmZWUxZjYyZjE3NjA2NzY2NmMwOGY3YTZmYWE4OGVmNDA1NDUyNiByZWxlYXNlMjQtbWFpbnQKKzUyMTY2IGFiMTM1NzYzNzRiMWE5NWZmNzBkOWU5YTM4NWQwZWEyMmFmMGU1NjEgcmVsZWFzZTI0LW1haW50Cis1MjE2NyA1ZTI0NDk5NGU0MmU1MzQyNzVkZTI0YmJmMWE1Yjg0OTNkNWNhYjQ0IHJlbGVhc2UyNC1tYWludAorNTIxNjggNWQ5M2U1Y2NiMzFlNzRjNzgzNDM4ZGRjNzc5NDg4MTU1NzgzNTBiZiByZWxlYXNlMjQtbWFpbnQKKzUyMTcwIGNkNmNlNjY2ZWZmOTFiZmEyMTI2NTEyOTA0YjQ1MTk3YzRkODVhMDcgcmVsZWFzZTI0LW1haW50Cis1MjE3MSBlNjU4MzY4MTU3OTFjN2JmNmZmMDAxMjMxZjA0MDgxYzI0OGJjOWU3IHJlbGVhc2UyNC1tYWludAorNTIxNzMgM2I1N2VlY2RjNTA0YTEwMGI1ZmQzNGQxNmI0MjE4YTkwOTU1MGE2OCByZWxlYXNlMjQtbWFpbnQKKzUyMTc4IDJhNDZiNzZiZWI5ZWJkOWEyNTYyNDJlZGYwNmY3MzE3YTM1MjI0MjEgcmVsZWFzZTI0LW1haW50Cis1MjE4NiA0NjYzYWNlMjM0OTljZTY3YWYwYjRjYjU4MjlkZmNhZWI5OTZmZTNkIHJlbGVhc2UyNC1tYWludAorNTIxOTAgN2JiZmYyZTlhOWMyMTljNWY5MGVkNTFiNGNiYWIxMzEyYzA1ZmJhMiByZWxlYXNlMjQtbWFpbnQKKzUyMTkyIDViZWM0YTY3ZmYwZGE4OGRjZDQ3MzgyNzU0ZjgwODdiODY3OWViYjggcmVsZWFzZTI0LW1haW50Cis1MjE5MyA0NWFjOWNlMGJiMTU3MTZkYzFjZGU0NDE0OTk0YmUxOTAxOTkyOGEyIHJlbGVhc2UyNC1tYWludAorNTIxOTQgNmJiMzc1ZjU1OWNlNDY3NGMxY2U3YzM0MzAzYWFlOTY2NjM5MjQ5ZSByZWxlYXNlMjQtbWFpbnQKKzUyMTk2IGU4MWZmOWFmNjQxZGIyNWNiYzNjYTM5NWNiOWEwOTM0YWIzMTFmZTIgbGVnYWN5LXRydW5rCis1MjE5NyA2YjFkZGYzODdiZDE5NWU1OGJhMzI0M2NlYWIzZDY2NjYzNWIzMGRlIHBlcDMwMl9waGFzZTIKKzUyMTk4IDU0MzRlZDRmZTg2MjI2NzFlM2FiZGQ5NTRjMTU5NDk2OGIwMDlkZjQgcmVsZWFzZTI0LW1haW50Cis1MjE5OSA0NzEzZDk5MDBlOWU5Y2I3MTYwYWQxYTg3YWRhMTNkOGI4MzU5NWU3IHJlbGVhc2UyNS1tYWludAorNTIyMDAgNzc2NzRjMGY5MjE0MTA2OTc1NmZkODY4M2NkM2Y5NzI3M2Y0ZmZjOSBsZWdhY3ktdHJ1bmsKKzUyMjAxIDc4ZDdiZWEzYzEyMjBiYTI1YTdhMzk5M2U2MTA5M2I5OWZmMjA3NzMgcmVsZWFzZTI0LW1haW50Cis1MjIwMiBkZDU0YmQ2YTZiMWVjYTRjNWYzMDc2NjkyNmRhY2YzY2JjZGE2MzJjIHJlbGVhc2UyNC1tYWludAorNTIyMDMgMDc2YzIwY2E1ZDdiNmYzNTljM2Y5NTYxOWE1YzJjNGJlN2ZiOGVhMiByZWxlYXNlMjUtbWFpbnQKKzUyMjA0IDI2YzJmZjcyODAyN2ZmODkyZTNhZWYxMzZlNTZhZDJiMTk4NjFiY2YgbGVnYWN5LXRydW5rCis1MjIwOCA1YWVhOGIxZmQyNjI1NDBkODRmOGViMTdkOTQ4ZjFjMWJmOGY2YjI0IGxlZ2FjeS10cnVuaworNTIyMDkgMzU3MTQ3MDBjZjg3YzU0YjA0MzFhYjg1NDllY2JiMjVmYjVmNTRlNCByZWxlYXNlMjUtbWFpbnQKKzUyMjExIDBlOWZkYjE2NGQyMDYxMmQ2NWI4NjI4ZDViNTU1ZmQ3M2ViM2I1MjMgbGVnYWN5LXRydW5rCis1MjIxMiA5OTRhZDc1MGIwZTNiYzA1OGM1ODkzYjFiZDVmZjkxZDE3MmFjMzU3IGxlZ2FjeS10cnVuaworNTIyMTMgNWQ4Mzk5NGNkOGNkZjQwYTRiMzM1YTgzYWZhZGM2NWUxNDA1OGEzNSBsZWdhY3ktdHJ1bmsKKzUyMjE0IGQyNGVhYWVkYTc0OGM0MTZmNjcyNmRjYjgyYzg0ZDg0ODEzODM1OTYgcmVsZWFzZTI0LW1haW50Cis1MjIxNSA5MTE4ZWE3ODFmZDUyYWY0ZGE2NDk0NDE1MjA2NTAyNjFkNTZkZGRiIHJlbGVhc2UyNC1tYWludAorNTIyMTYgMmEwNWVlNGEyM2UwNzFkMWVkMjVmOGM4MDkxOTkwM2FkNjAyNjkyNSByZWxlYXNlMjQtbWFpbnQKKzUyMjE4IDdjMzQ5NDRkNGM4MGJlOTc1OGMwMGM2ZTJjNjYyMTVkZWRmZjBhNzggbGVnYWN5LXRydW5rCis1MjIxOSBhMmYyNmY5NDRiNjU3MTc5YWZlMzZkM2U2ZDZmZmU4YTI4MmI5MzQ0IHJlbGVhc2UyNS1tYWludAorNTIyMjAgZWQ4OGQ2YjdjMWY5NjY5MDNiZDkxZDlhOWVlN2UwMzkxYWIyMzI3YSByZWxlYXNlMjUtbWFpbnQKKzUyMjIxIDE2ZTI4OTJlMWUzYzJhMjY5MTVjMjYxOGU3MDVjODlhYmQ2NDJjOTkgbGVnYWN5LXRydW5rCis1MjIyMiA5ZTA0MzFmZDY3NGEyNGY5OGRiMWJjYWI3YWNiM2M2MWU5MDJmOGJhIHJlbGVhc2UyNS1tYWludAorNTIyMjMgMzQ3Nzk0MzkxY2U0MzQwYmI1YzIxYjFlODFjNjQ2MjJhZDVlZWZhOCBsZWdhY3ktdHJ1bmsKKzUyMjI0IGQzYzE5NDdkMTY2NjUzMWUxYmExYjk4MWY4MTI2YjNkNWIwMGFlYzYgcmVsZWFzZTI0LW1haW50Cis1MjIyNSA5M2UyYjMxMTJkNzllMTA5ZWM1YjY0MGEwZDQzMzUzNWIwZjEyNjVmIHJlbGVhc2UyNS1tYWludAorNTIyMjYgNjk5Y2M2YTVjODZlYjhhNTlhYjA1NjkxZDgwOTVhZWY1MWNlNWU2MCByZWxlYXNlMjQtbWFpbnQKKzUyMjI3IGI5ZDMzMDFlNWYxOTVlNjBkOTkzN2JhN2E5OWU0NWJjYzI0MWI0M2EgbGVnYWN5LXRydW5rCis1MjIyOCBkZWVlYTRkYTFmMzU0OWVmMzNhZGVjNjE5NjA0OWM3NGQ0NzRhODJiIHJlbGVhc2UyNS1tYWludAorNTIyMjkgMjA0NzRkOWU3NWUxNGJkYzIwNDQ2OWRhZDQwNmI4ZmUzOTc3OGQ2OSBsZWdhY3ktdHJ1bmsKKzUyMjMwIGY4MDVjY2NlMmY1NjRlMDUyZTY4NjhjMGJiNmUyNzQ2OTgyM2M3YTQgcmVsZWFzZTI1LW1haW50Cis1MjIzMSA2OTNmZjVkNzM0MTI1MWY5NjMxNmVkMTY1ZWI0ZWVmYzQ2ZDM1ZDg0IHJlbGVhc2UyNC1tYWludAorNTIyMzIgMGRjMjYxZDhjNTdmYTg0NTMxZjFkMjgzZTE5M2EwNGI0MTFmM2IyYSByZWxlYXNlMjQtbWFpbnQKKzUyMjMzIDgzOTY1OTc3ZjM0YTFhZTM5NDc1MDAyMGMzOTlkODgzNmQwN2RlZjQgbGVnYWN5LXRydW5rCis1MjIzNCA3Njg4OTRmMzNmMWMzNDdmNDQwNGRlOTVkYmYzYmVlMzYzMWFlY2UyIHJlbGVhc2UyNS1tYWludAorNTIyMzUgNzExN2Y2ZTVhYzgzOThkZTcxYmFmY2QyNTYzYzBiODMxZDYwZWU2OCByZWxlYXNlMjUtbWFpbnQKKzUyMjM2IDkxYmU5NjY0NjQwNzMyOGFhNzdmZDNjNDgwMmNiYzg4Yzk4MDBlNjEgbGVnYWN5LXRydW5rCis1MjIzNyAyMGRkMTNhZWUyMzM0OTEyMjkyMWFjYjIyZTdlMzQ0MmNiODQxYzY1IHJlbGVhc2UyNS1tYWludAorNTIyMzggYzMzOWExYTE2ZWM1YjY0MTU2ZDI2MGZjNjE5MGQzZDZkZjEzYmYzNiBsZWdhY3ktdHJ1bmsKKzUyMjM5IDQ3NTIyOGVkMjA1NGM3ODJjZTUyM2NkYTY2NDQ2OGM5NDUwNDMwM2MgcmVsZWFzZTI1LW1haW50Cis1MjI0MCAwYWNlM2M4MDYxMTQxMmRiODgwMWU3YTM0MDc4Y2IzNzkwYzY5MmE3IHJlbGVhc2UyNC1tYWludAorNTIyNDIgYWVlZTlmNWEwYjNlYzBlNWM1YjYyYmFkMzY0ZjgyODczYjBiMzNhNyBsZWdhY3ktdHJ1bmsKKzUyMjQzIGRlMmI2YTFjOWIzMTExMTU1MWM4NmUwZGI4YTgxYTcxNDBmZWQ2NGUgcmVsZWFzZTI1LW1haW50Cis1MjI0NCBhNjA0OTViMzZmMzhjYjJlYzRiNWIxMGI0ZThkNThiZjBlYjYxMmI1IHJlbGVhc2UyNC1tYWludAorNTIyNDUgYzM4NzdiNjQzMGI1ZDg5ZTJlMDliYzFhNGU4NzQ2MjExYjdmNjcxOSBsZWdhY3ktdHJ1bmsKKzUyMjQ2IGVkYTkzMWYzOThjMGQ1ZWZjYTBmNDhlZDI4YjdjMjRjNTdlMGMwYTcgcmVsZWFzZTI0LW1haW50Cis1MjI0NyBlZGUwNWQzNGM1MTgzZmUzMTZhNGViYzAwYzc0ODgwZjNkYTljM2MwIHJlbGVhc2UyNC1tYWludAorNTIyNDkgNGVlZmNlOGJjMmY3NDhhMzM3ZGE3ZmJjMDA3YmIyMjRhMTllMDhkNyByZWxlYXNlMjQtbWFpbnQKKzUyMjUxIDY2NWQ3Nzk4YTFiYzhhNjBiNjhiZGYzMmVlYTAzOTQyZWE0YzYzZWQgbGVnYWN5LXRydW5rCis1MjI1MiBiZjZhMDJhZGE0NDllNGEyYzk4MmU1MzYzNDYzODQ1ZTg4NjBhMGI3IHJlbGVhc2UyNS1tYWludAorNTIyNTMgMzgzNTY5NTFjMTlmOThhYTY0ZWU0NGU2N2MxNDVlYzc3MGIzMGNhNSByZWxlYXNlMjQtbWFpbnQKKzUyMjU0IDFlNGUwMTVjMDdjMDc0ZGU3ZGI0OTgwMzQ2ZDhkMTEyNTM5YjRhNjkgcmVsZWFzZTI1LW1haW50Cis1MjI1NSBmNDZiYWRjOGRjMjEzMzk4MmUzMjhlNDYwYzljMDgzYTIyNmEyYTIwIGxlZ2FjeS10cnVuaworNTIyNTYgZDMzZTQwMTFlMjAyOTQ3OWFhYTU3ZWNiMGJjMDlmZGU3N2M5Nzk4NCByZWxlYXNlMjQtbWFpbnQKKzUyMjU3IDI4ZGI2MTEwMTQ2MzZlZWExYzg4ZDBjZDNmYzJjZGIxNGM4ODQzMmQgbGVnYWN5LXRydW5rCis1MjI1OCA4Y2E5YTdiMTFhN2Q0MjYxYmEwYzJiOGU2YTNhYjA3ZDM2ZWEyM2U3IHJlbGVhc2UyNS1tYWludAorNTIyNTkgNTJiNjVmMjhiZTE3MTcyMDMxYzMzMDIzODU1MTM3ZThhNDhlYjVjNCByZWxlYXNlMjQtbWFpbnQKKzUyMjYwIGNlNTE1MDMyZmNlMzdhYTFiMGQ4NzY4ZDA3NzYyZDcxYjJlZTE1ZjAgcmVsZWFzZTI0LW1haW50Cis1MjI2NiAzMDkwOWUxY2FmNzljOGQ1NDQ2MmQ1ZDU5MzJhYTZhZmViYWY5MzE3IHJlbGVhc2UyNC1tYWludAorNTIyNjcgMGRhYzZkZTBmZTc4YWRmYmY5OGZkZWVhNDMxODBmZmU4ODM4YzZmNSByZWxlYXNlMjUtbWFpbnQKKzUyMjY4IDY2YjgzZDFiYTJmYzVmOTlmOTkyNTdhYTMzZjdkODA2M2M3ZjFlNDMgbGVnYWN5LXRydW5rCis1MjI2OSBiMmVkZDUxMjQxYWUyMjFhOTRjYjFkMTQ2NjZkMWY2ZjI5MzU3ZDE1IHJlbGVhc2UyNC1tYWludAorNTIyNzEgNTZiOTExZGNjMTg1YWM2MGZhZTliZTgzNGVkNTYzZWZiYmY4OWQwYiByZWxlYXNlMjQtbWFpbnQKKzUyMjcyIGY3ZmJkYzU2MmQ3YWRmNjg5N2EzZDY4YTdkMWI4YjQyM2IxODFmNDEgcmVsZWFzZTI0LW1haW50Cis1MjI3MyA1YmNhYjRjYTY2MDgwNDk3ZWJkN2NjY2M3N2Q5MmI4MGYyMzg3NTc1IHJlbGVhc2UyNC1tYWludAorNTIyNzQgOTg1MTI2ODczNzQwZGVmNTU3NzNiZGU1NDBjNmQyNjIzMWNjNDZhYyByZWxlYXNlMjQtbWFpbnQKKzUyMjc1IGExYzM4MWMwNWRkZWM0Njc3MDhlZjQ5ZDllZDJjMGRhOGRlZjU5N2QgcmVsZWFzZTI0LW1haW50Cis1MjI3NiBiYWFlZWE3MjJiMWM5N2NhMDMxNzllNWEwMmE0NzE3ZTcwMTdiYTJhIHJlbGVhc2UyNC1tYWludAorNTIyODIgYTA0NTRmMWY5N2M2Y2FiYjM2YzRmYWNjYzU4OTM4YzlkYmYwOTQ1YSByZWxlYXNlMjQtbWFpbnQKKzUyMjkzIGFjNjUwYWQ2YzgxN2JlMmE1NjY4N2FhMGM3OTNkMTFkOTM0MzgyNjkgbGVnYWN5LXRydW5rCis1MjI5NCA2OGI0ZDBkYWI0OWFkMWVlZDZiNjM4NmM4ZTYyMGRmNjk3MjhmMzQwIHJlbGVhc2UyNS1tYWludAorNTIyOTUgNzAxNDBjY2NkM2RhNzNiZGQ0MjYzOThjZmI1YTEwMDM4MTE4YjAzOCBsZWdhY3ktdHJ1bmsKKzUyMjk2IDY2NzBkZGE0YjI3ZDlmMmQxMjIwZWI0OTRlMmJkOGYxNmU4NGQwYzUgcmVsZWFzZTI1LW1haW50Cis1MjI5NyBkZWIxYTBiNWRiY2I4ZWFiN2Q4NDliZjIxNGQ1MTc2MTZiYWI0Y2UxIGxlZ2FjeS10cnVuaworNTIyOTggYzY4ZmFjMWViNmNiZTQ3OGI0YzY1ODM5MTZlNzFjNDE5MDkzZGJkNSByZWxlYXNlMjUtbWFpbnQKKzUyMjk5IGMwMjA4MTk1YTU1ODUwNzU2M2E4YmRmYzUzNzAyZDMzNDQwZDM3NDkgbGVnYWN5LXRydW5rCis1MjMwMCA3NjQwYTU3ODIyYTY3YWM2YWQ5NDE5MmNkZjRlN2IzNGU5ZjY3YzdmIHJlbGVhc2UyNS1tYWludAorNTIzMDEgNjQ3NTk4YzFhOWQ5MjQzYmM2ZmRiYTA2N2JlNDhhYTExNzMzMjQ2MiBsZWdhY3ktdHJ1bmsKKzUyMzAyIDZlNmMyMjBjMmZhNjIyYWMyNjhkZDRmODU3MTUyMzhiY2I1YzFmN2IgcmVsZWFzZTI1LW1haW50Cis1MjMwMyBkMjdlNzYzMjY4MTk4N2FlNTY5OWI1MWQ4N2MyNjA0YjI3MTQzODhkIGxlZ2FjeS10cnVuaworNTIzMDQgMTdmNDE3ODA5ZTIzOTgzYzAzZDY2NjJmYmNlNGM0OTZjY2IzZjc2MiByZWxlYXNlMjUtbWFpbnQKKzUyMzA1IDQxNTkzODZmOGRiZGZjMDU1NmQ2MzA3NmFlZjVlNmRhNDMxYTM3OWQgbGVnYWN5LXRydW5rCis1MjMwNiBhMGJmNzI4MWJkMjBiNjVhNTg0ZjRhNjI5OWNiZWNlMjU5NTZkODM0IHJlbGVhc2UyNS1tYWludAorNTIzMDcgMTBhYmZjYjY2ZTY3YmRlZmE3ZDdjNTcwOWQ5NTcwNjdmZTI0ZmUyNyBsZWdhY3ktdHJ1bmsKKzUyMzA4IGNkNWY3Y2QyMDk4ZWIzZjc0YWJlOGZiODRmZmE5MTBiMmYxMDZlYjYgcmVsZWFzZTI1LW1haW50Cis1MjMwOSBmNDQzMGJlYzMwMTNlMjhmOTExMTQ1ZGE1YWU2YzBkNjkxNzA4MWNkIGxlZ2FjeS10cnVuaworNTIzMTAgMWExYTU5ZjUwYjRhZTIyOGY5NjFjOWMyZGRmMzU2NWM5ZTc1MjEwMiByZWxlYXNlMjUtbWFpbnQKKzUyMzExIGEyNDgwMWRhOTJlZTBkNTJiNjEwMzBmYWQ3YTcwZTVlNmFmMWI4YjYgbGVnYWN5LXRydW5rCis1MjMxMiAxZThlOTAwZDlmNDlkMjdiNDBiMjViNjQzYTQzY2FiOTViOTY3YzliIHJlbGVhc2UyNS1tYWludAorNTIzMTMgN2ZhYmJjNGEwYzRlODZiNjY4MDNlODQ2MmQ3N2M0OTgxNzllNjFmOSBsZWdhY3ktdHJ1bmsKKzUyMzE0IDNjZmE4OGZiMGY0NTM5NzhjMGE2ZjIwYjAzYzI2NmY4Mjg0MzQxMmUgcmVsZWFzZTI1LW1haW50Cis1MjMxNSA2MzU0MzhiMjk2NzNmZDYxMWYyMjk5YmQ3Yzg2OWVmMjE0YmVkYjFmIGxlZ2FjeS10cnVuaworNTIzMTYgYzRjNGVlYzY0YzEzNjRiYzY4ODRhYzBiNTRhNmJmNzA4NjgzMTRlNiBsZWdhY3ktdHJ1bmsKKzUyMzE5IGM3N2Q5YTlmZTcwNDM2OTJmM2NjZTJjYWUxMjEyMTc5NGMxYWQ2OTkgdGhlbGxlcl9tb2R1bGVmaW5kZXIKKzUyMzIwIDhlNjg1YjIzODlkY2VlYWYzOTE0YTUxNDYwOTYxMzQ4NWI0YzZjZGIgdGhlbGxlcl9tb2R1bGVmaW5kZXIKKzUyMzI3IDM5Yjk5MWJhODc4Zjc5MDVjNjg0Mjg1NDUzMTY1ZGRmNmZlODFiZGQgbGVnYWN5LXRydW5rCis1MjMzMSAxMDlmOTBjMjY2ZmJjMjg3MzZjNDM1YTVkOTkwMzVlZjMwN2JhYmNhIGJjYW5ub24tb2JqY2FwCis1MjMzMiAzOTg1ZDdlMjA2N2RiNzVmMTcwZTA4OTE5OTRiMGZkNzA5NjNlNDBiIGxlZ2FjeS10cnVuaworNTIzMzMgYjYxYTkwZTc0N2U3YzkyOTAyNTI5ODNjNjU2YTQyNzJjNzlmN2YwNiBsZWdhY3ktdHJ1bmsKKzUyMzM0IDg0ZDNiNzJkYzMzOTJhNmQxMGRlY2Y5YmFjZTBiNWJiN2FjMTIxZjkgcmVsZWFzZTI1LW1haW50Cis1MjMzNSBiOTRiY2I3YWVkM2RkM2FhN2EwYzllN2EwMmRkODg4OWVmOGQyMDBlIGxlZ2FjeS10cnVuaworNTIzMzYgM2JjNGE5NDAxYTExNjE3YjU2NTc2MmZiZDAxMGZmNTMwMjhkNTVhYiBsZWdhY3ktdHJ1bmsKKzUyMzM3IGRhZTc0YTgwOTRkOTBhM2IwYzUyNjlmZTY2MWVhYTAwNWIyY2ZiYjggcmVsZWFzZTI1LW1haW50Cis1MjMzOCBiYjM1YzU1YmM0NjcwYmQwZGViMjk1NzZlMTljNmY4NWRkZjAyZjhkIGxlZ2FjeS10cnVuaworNTIzMzkgMGY1MDVlYzhiOTdhYTIxZTBmYWExNmQ0NDBmNDY5MGY3M2Q1MWUyNSBsZWdhY3ktdHJ1bmsKKzUyMzQwIDQ1ZWZlNDM1NmI2MWVkYTAzMDk2N2YxMTk5Nzg0YThmZjRjMDliOWMgcmVsZWFzZTI1LW1haW50Cis1MjM0MSBjMDA2ZDIyNzk0OGRlZWQ0OWRjODFlMTNiMDYzNTZhMmUwNjk4YzE4IGxlZ2FjeS10cnVuaworNTIzNDIgMDVjMGNkMjdhYmNhMDg2NjEzNDBjYTdjZTgwMzQzY2Y3YjliODYwMiBsZWdhY3ktdHJ1bmsKKzUyMzQzIGRlODhjMzYzZDYyMjM2Mjg2MzMyOGUyNmUyYmEzMmFkOGMyZDJhMjMgbGVnYWN5LXRydW5rCis1MjM0NCBhMjlkMTAwYzc4MTUzYzEwYTJhMjRhZTcwYmE4YTk1YWU4OTI2N2MxIGxlZ2FjeS10cnVuaworNTIzNDUgNTYxNWVhYzhhYTc5NzZmY2U2NjYyZDg4NDY2YzQzYWJmYzNjNDVlMiByZWxlYXNlMjUtbWFpbnQKKzUyMzQ2IDJhMWE1ZGMyNTVhZGM5MmI3MTE0ODY4MTU3NWExYWJjMWY0OTE2NjYgbGVnYWN5LXRydW5rCis1MjM0NyAxZTU1NWYwNDhlM2Q0YmJlMGI2MzBjOTQzMmM0MzY1ZWI2YjFlOTYyIHJlbGVhc2UyNS1tYWludAorNTIzNTQgZmE5NmJmZjkzYmNhZDAwYWQ3M2Q2OTI3NDhmODY4MzkwMzJlMWU1MCBsZWdhY3ktdHJ1bmsKKzUyMzU2IGJmOGRhZjRhNmU3MWExZWEyZTVkZTUxZmM2NDhkZjc1ZTVhYTg4NDEgbGVnYWN5LXRydW5rCis1MjM1NyA0NjljMmQ2YzgxNjViMjU2NzUzMzVhYTVlYTM5ZTg5MGMzOTcwYWFlIHJlbGVhc2UyNS1tYWludAorNTIzNTggODUwNTA4MzkxZDQ2YmRlNGUwMDE3MmE0OTQ5MWMxYWIyOTYwMGE4MyByZWxlYXNlMjQtbWFpbnQKKzUyMzU5IGUxY2IzMjY0NWY3N2UxZjk3ZWY5MTc3Y2MxMDExMWQ3MTgwZWE2MGUgcmVsZWFzZTI0LW1haW50Cis1MjM2MCA3YzdlYjE5MGIyNjYzMGZjNjJlNjRlODk1NTA5NTI2ZGI2YzNmMjU1IGxlZ2FjeS10cnVuaworNTIzNjEgYTY1MTFlODI5N2YwNDhjNTMyYTg3NDk1NmNlZGE1NWZmOTU4NmVjYSByZWxlYXNlMjUtbWFpbnQKKzUyMzYyIGZiNWRiMTJmMDI2NzYwMjE5YzhhYzYzNDQxNTJjNDYxNjlhNDUyMTMgcmVsZWFzZTI1LW1haW50Cis1MjM2MyAxNDUxM2RiMGQ2MmQ1MGZmMjJhMjM3NjFlMzNiOTM1ODc3ZmYyZWZhIGxlZ2FjeS10cnVuaworNTIzNjUgNTJmZTBlY2Y1NWMxYTE4MTA1ZmY1YzJkNzc5YTg3MWY3ZmNhZjU0OCBsZWdhY3ktdHJ1bmsKKzUyMzY3IDQwNTBmMjUzYTZmOGE1ZjAyNzkzODhjYjZlYTEwNzk5YjY3OWQzZDcgcmVsZWFzZTI1LW1haW50Cis1MjM3MiAzNDU1NTQyMmRjNDVmODhmNTI5M2ZiOWZiYTMxOWI1NTllODc2YWE5IGJjYW5ub24tb2JqY2FwCis1MjM3NyA0OThjZjRiMDlkOGFjMDNlNDVmM2EwZTI2YTczY2I5MTNmZTc2NzgwIGxlZ2FjeS10cnVuaworNTIzNzggNjYwOWYwMjA2NDlmMGQwY2Y2NTNlNjllOGExOTA2YTg2YTNjYTRkMyBsZWdhY3ktdHJ1bmsKKzUyMzc5IGExYTY3OTEwNTI4ODZjODkwYTBmMTE5YzUyNWMzZDI3MThmMjdjNGMgbGVnYWN5LXRydW5rCis1MjM4MCBiMWQ3MDhjMzNlYWI0MjkwMjYyZTk2ODUzY2ZiNDM0NWY5ZTA3MzBhIHJlbGVhc2UyNC1tYWludAorNTIzODEgZmIwYzZhNjdhOTM5ZThhMmVhMjc3OWY3OWUzMmMzYjc2ODljMzdlNCByZWxlYXNlMjUtbWFpbnQKKzUyMzgyIGVlNjZhMTVhOTAzMDIxY2EyNTA0YTMyMzI0ZDNkY2JjNDZlYThhOWIgcmVsZWFzZTI0LW1haW50Cis1MjM4MyA1OTJhYzkzNTMyZWZkZmE5YTQwZjQ3Yjk2YjFjMTIzMWQyZWFlMGU1IHJlbGVhc2UyNC1tYWludAorNTIzODQgMTA0MzRkMWI0MjY2MWI3MDAxODhjODJlZmMzNTA3MWY4MjRjYzFlNCByZWxlYXNlMjQtbWFpbnQKKzUyMzg3IDQxMGMxYzc4ZWQ1MWUxMmRjM2RlOTU3OTU5ZjZiNzk3MGMzNzk5NGEgbGVnYWN5LXRydW5rCis1MjM4OCBlMmRmMTM1NjM0OWYxNjhiYWViYjMzNWUyMWMxNTgzMzMwNDNkNGRmIGxlZ2FjeS10cnVuaworNTIzODkgMDUwOWFiMTRiMmQ5N2NlZWVmZTI1ZTk2NDMyZjRlMzczZWFhYjgyZSBsZWdhY3ktdHJ1bmsKKzUyMzkwIDE4YzEyZDM0MjE0MzgyZmFmOGM1ZmE1Y2IzYzYzNjQ5MDUzODQyYzYgbGVnYWN5LXRydW5rCis1MjM5MSAxOWRlMzE2NDkyZTczOGNlZWRlY2I4ZWM1ODA4NDc1MTM2ZGM2NmMwIHJlbGVhc2UyNS1tYWludAorNTIzOTQgM2I4NTMzMzQyOGY5ODZkZDZkOTFkNTdmMDdjZTUwNzIxYjAxODViNSByZWxlYXNlMjUtbWFpbnQKKzUyNDA1IDg2ZWE4OGM1MjA1YmY1MDQ1MWEzMjMwZjY3MzVkY2MyZjIzYzk2M2EgcmVsZWFzZTI1LW1haW50Cis1MjQxNCA4MjZlODY3NGExMWQ1ODk1N2ZiYWVhZGRlOGMwOTY0ZWVjMDdmMjMxIGxlZ2FjeS10cnVuaworNTI0MTUgYTBkOWZjZjZmMjE1M2Y1Mjk3YTE0YmUyZTE5N2RiOTVhMTcxOTg5ZCBsZWdhY3ktdHJ1bmsKKzUyNDE2IDM4NGVmODdmY2MyNTc5ZWE2ZDVlOWI3Nzg1MDJhMGM0ZmY4YzUxMjAgbGVnYWN5LXRydW5rCis1MjQxNyBjNTQ0MmI0MjRhODY5Mzg1ZTAzM2NlN2MyOGZlN2FhNjAyN2RmYTZjIHJlbGVhc2UyNS1tYWludAorNTI0MTggNTAzMGZiNGE0MDBmZWJiOWFjOGNkNDc5MmI4Njc2YjhlNTk4ZDk1NSBsZWdhY3ktdHJ1bmsKKzUyNDE5IGU5Yzg0NGM0ZDFhMWM5NTg3ZWZkNzZkOWUxMWI3YWQ3OTdhYWVmY2IgcmVsZWFzZTI1LW1haW50Cis1MjQyMCA3NDlkODU1ZWUzNTcxYWI3ZTU3YzJmNDkxOGQ1NTEwMjFjZmE2M2MxIGxlZ2FjeS10cnVuaworNTI0MjEgMTIzYzE0ZWQzMDhhMTUzODFkNDBiMDgzOWY1MzdkMDhlZWZlOGNiNiByZWxlYXNlMjUtbWFpbnQKKzUyNDIzIDRlY2YxNjYyNDQ5ODQ0ZTZlMGNkYzk5YjQ0ODE3Y2QzZDlkOTFjYjAgcmVsZWFzZTIzLW1haW50Cis1MjQyNCA4Y2QwYjcxMTNhNzFhMDU1MWUzODMwY2ZmZmZhNThhMDE4MTZhMDRmIHJlbGVhc2UyMy1tYWludAorNTI0MjUgYjIxNDI3ZmYyNjQ3NWY5YzdmNGE3MDFkYTMyNGU5NTFjMmIxNjJmZSByZWxlYXNlMjMtbWFpbnQKKzUyNDI2IGNkZDM0NzZkMWIwNmIzYjRlY2M4OWVkMzVkNWI0OGI2ZGZiNjAzYTYgcmVsZWFzZTIzLW1haW50Cis1MjQzMSBlODJlNjk2YzAzZGM4YWQ2MzZhNzMzMTc1MzMyZjI3YzVjN2M2N2I3IGxlZ2FjeS10cnVuaworNTI0MzIgMDUwMDQwY2JhMjZhNDVhODE5OThiZDc5NWEyYTZlMmQwMzM0ZjU2YSByZWxlYXNlMjUtbWFpbnQKKzUyNDQ2IDkxODY1OTgyOTZjYjA5ZTE1OTU1YTU3ZDE4OWEyNzFmOWQ3ZTg5ZWQgbGVnYWN5LXRydW5rCis1MjQ0NyA5NDczNjZlMTMxZmRhZTIwMTJkOGY5NmIyZDI5ZmY5NjFiNjI4Y2E1IHJlbGVhc2UyNS1tYWludAorNTI0NDggZDc4YTdhNjA1NjE5Mzk2OGU4ODU2Y2M4MjdkODNkMTEzOWY4ODRlNCByZWxlYXNlMjQtbWFpbnQKKzUyNDQ5IDE1ODZmYWIzYzg0OGI5NDQ3MjdlMWM0ZmRkOTdhZmIzOTYzYjY3ZTIgbGVnYWN5LXRydW5rCis1MjQ1MiAwYzFjYjkyZGFjOTdlZjM5ZTExNWY5YzU5Y2EzMzQ5MzllOGJjOGU4IGxlZ2FjeS10cnVuaworNTI0NTMgMGU4M2Y4YzVkNzBhZWMzNDczMWIwYjhlMWZjNWE3MGFjZmM2MjgyMiByZWxlYXNlMjUtbWFpbnQKKzUyNDU0IGMwZjU2ZjI0NjFmNTI5OGZiYzEzOTE0Zjc5ZWEzYzcxNDZmZjg3NjkgbGVnYWN5LXRydW5rCis1MjQ1NSA1ZGM0NzMxNjUwOGZiNGU4YmYyNmJkMDJmZGE1NWUwZWRhYTAxZTQ2IHJlbGVhc2UyNS1tYWludAorNTI0NTYgMDE1Zjg5YTczOTI5ZTRiYjNjZDJiNDdkZDAwMjFhMjJmMzU4NDRlYyBsZWdhY3ktdHJ1bmsKKzUyNDU3IDM0ZGNiYzc0NjI0M2U2N2MyMTZjYzljOWFhNDhhZWNiYjAwNjliMTggcmVsZWFzZTI1LW1haW50Cis1MjQ1OCBlNWNiNGNiNTY1NDFiOTdjYjAyN2VkYWEyZWJiNGRiYTM2YTczZTY0IGxlZ2FjeS10cnVuaworNTI0NTkgZDNkYmIzMjZmZmJhYzc5YTU3YzM5ZjZiNzVjYTk1NGU0ZjY0YjViMyBsZWdhY3ktdHJ1bmsKKzUyNDYwIGFkNGM5YmExZGI1N2ZkMWUwMmMwNGQ2Njk3OTFmYjk3ZTZiNWYzNTEgbGVnYWN5LXRydW5rCis1MjQ2MSA1YTEwNmI0YmNkZDI4ZjIzYWMzYmY5NDlmY2UxOTBlMDBhOTdlMTk2IGxlZ2FjeS10cnVuaworNTI0NjIgZTU3ODJlMmE0MTJiYTE4ZTMyYmI2OTZjNGNlOGIxMTUzNGNmMTc5YyBsZWdhY3ktdHJ1bmsKKzUyNDYzIDdhZjk0YTI3MjNlY2IxMzRmZmUwYjBkYmIwM2FlYTFhZTkyMzVmN2EgcmVsZWFzZTI1LW1haW50Cis1MjQ2NCAwZDUxNzZlMmJmZTRiNDRhOTFlNzRiMjM2MWQyZjM5MzM4NWMzMmEzIGxlZ2FjeS10cnVuaworNTI0NjUgZGRiMWRiNTY1NjA4OTNjNGI3YTU2MGU1OTAzNTVhOWU1Y2U2ZTEwYiByZWxlYXNlMjUtbWFpbnQKKzUyNDY2IGU4NjdiNTk1MDc5ZTkyN2U0ZjJjZWRmOWEwYmE0MmI1MTE3OTA1OWMgbGVnYWN5LXRydW5rCis1MjQ2NyBiNTZiNTYyZTNhN2I3YzgxZjEwZTE2OTZhZmFjZTE5ZDIwNTJmMmM2IHJlbGVhc2UyNS1tYWludAorNTI0NjggNzYyZGNhZDcyMGI1M2VhY2YxNGE3YzM3MDZmNzJlZTU5YzE1ZDBiZiByZWxlYXNlMjQtbWFpbnQKKzUyNDY5IGUyZTgwYTAxNjk0NTIyMDlhNmU0ZDIyYmM5Y2NhZDIwMDFlZDQ3YmIgbGVnYWN5LXRydW5rCis1MjQ3MCBjNWE2YWNlM2ZjN2ZkMjU0YjIzOGQ3YmMwYjRhMjI5OWM0MTJkMTk2IHJlbGVhc2UyNS1tYWludAorNTI0NzEgNThkYjk2OGQxNDQ4MmU3Yzk0NTViYjJiNzc2ZmYyZDZlMGQ3OTI1YSByZWxlYXNlMjQtbWFpbnQKKzUyNDcyIDZiOTFjMGRjZWE1OGE2NjZiNzkxMWNmOGRmMGM4N2MwZjc4NmQ0MGMgcmVsZWFzZTI0LW1haW50Cis1MjQ3MyA4ZjlhZDM1ODEzNmYwMzkxNDI5ZDQxYjVmYmFkMzY2YjYzMDBjMmI0IGxlZ2FjeS10cnVuaworNTI0NzQgMjljMDFlNjJjZTZiY2FlNjgxNjkwYzI2Y2QyYTUyZTNjYzE4MWNmZCByZWxlYXNlMjUtbWFpbnQKKzUyNDc1IDE5NTU1OWM1YmFjZGYwNmMyNjJmNjBkZmVmZjQxNzEzODdkOGFlNWEgcmVsZWFzZTI0LW1haW50Cis1MjQ3NiBlM2I5YzYzOTc3MjM0ODJjZDFhZWI5NjNkZDQzYmVmYmMyMDVlZmUyIGxlZ2FjeS10cnVuaworNTI0NzcgZjQ1YjJmMGM1NDJmYzNjMmI4YWVhNzVlOTY2ZTIyMGY1Zjk2MGNhNiByZWxlYXNlMjUtbWFpbnQKKzUyNDc4IDc3MGM3MThiYzk3ZTAyYTJiM2NiMjdlNGRiOWNkMzUwYWUxZGQ2M2EgbGVnYWN5LXRydW5rCis1MjQ3OSBiYjBkYjQ1ZjIwZWEyYmMzNzdmYjQ2ZWFiNTQ3NmRlMjVlMmYxZjIzIHJlbGVhc2UyNS1tYWludAorNTI0ODAgZmI5YTdiMjg4ZGNlMjk0MzU1NmUyNTU3M2QxMDdhMmE2YjA5MWNjNCBsZWdhY3ktdHJ1bmsKKzUyNDgxIDlkNjkxZDM3NTVkMGRlNGUxZWIxMjc0OWI5YzMxZjdkOWFmNjk3YWQgbGVnYWN5LXRydW5rCis1MjQ4MiBiOTExNjZlOGQzOGRiMGM3MWMzZWQzOWU2Y2Y5YzlhNDMzZTdmMzdhIHJlbGVhc2UyNS1tYWludAorNTI0ODMgOThlOTAwNDk5MDQzNDE1NDBjYjI5MDA0ZDlkM2U0OTk1NGRjYjZmYiBsZWdhY3ktdHJ1bmsKKzUyNDg0IDg2MjQ5MDlmNTAzMWY0MGQ5MjU1ZjdlNjc3ZjhkNzA5MTEyOWRmMTMgbGVnYWN5LXRydW5rCis1MjQ4NSA5ODhkOTVmZjFmZGI3MmFkMDU3YzgwN2Y4NzA2YTczOTBiNmYwYTFmIGxlZ2FjeS10cnVuaworNTI0ODYgMTg4NzFhMTBmZmMxZmE1NGZjYjIwOWY4MmE1OWYxNjVmMjIxODIxOCByZWxlYXNlMjUtbWFpbnQKKzUyNDg3IDQzYTgyNjQ2N2FkM2NlYWJmYjQxNDRhNzRhMDUyMDEzZTFiYzk1MGUgbGVnYWN5LXRydW5rCis1MjQ4OCA1ZDVmMTg0NDM2NjRkMTU3MjJkMmE3NmZkNDQ5MDEyZDRhOTE1ZTU5IGxlZ2FjeS10cnVuaworNTI0ODkgZGMxZTQzNjE3OTcyODIyZjI3ZDE3YmJjMjc3NzFhNWY0ZmFmNzdiZSByZWxlYXNlMjUtbWFpbnQKKzUyNDkwIGQwYmQ4YThhZmIwMTAzYzZjMTNjNTNjNWY1ZmI4MTk3YzRhMTA5MTQgcDN5aworNTI0OTEgMWNjZTA1MjZkOWIwYTUzZjRmZjk1NzEzZGRlMTUzZGM3MGRhZTJkYyBwM3lrCis1MjQ5MiAyMTkwOGM3MGQyNjRiY2Y5MzI3Mzg4MzljNDNmNGExM2Q2MGIzNzU2IGxlZ2FjeS10cnVuaworNTI0OTMgMTNiOGFkNjc5ZGVmYzc0MzRiMWJhMWM1ZTMzYTFmYjIzNDk4MDhmYyBsZWdhY3ktdHJ1bmsKKzUyNDk0IDUxMzM5ZDM5YTU5NmFmZjAyYWQxNWMzODg0NjdhYmQ3MWIzNjEwNTYgbGVnYWN5LXRydW5rCis1MjQ5NSA2OTcyOGE3ZDIzMTIzOWNlYzUxNTBlYjdiMTVkYmY2ZThjNzViNTEyIGxlZ2FjeS10cnVuaworNTI0OTYgN2QwYmRkNmUxYzQ2OGIyYjU2MWE2MzU1NDNiOGZlMmZhN2IzMTAxYyBsZWdhY3ktdHJ1bmsKKzUyNDk3IGMzODFmY2Y5ZDEwODFjNjU1ZDhjNjZlOTUyZjlmZmUyOTdmODkwZGMgbGVnYWN5LXRydW5rCis1MjQ5OCAyZDVhNWRlZGQ5NzU5NjgxZTllYjIzYjFiOTc1ZDQyODc5ZmY4MDFlIHJlbGVhc2UyNS1tYWludAorNTI1MDAgNGM1M2IyNDNjMzkyMmE0NTQzMTVjM2VlNTc2YzRmMjA3ZGVkZDEyOCBsZWdhY3ktdHJ1bmsKKzUyNTAxIGM1OGQxYjk2OTg0MzhlNmFjMGY4ZjRiZDAxNGJlMDVhNmE5NGUyNzYgbGVnYWN5LXRydW5rCis1MjUwMiA3OTYzMDRlZmEyNjhjMDVkMmUzZTk3Zjg4YzYyMDhkZDU3NmZjMzMxIGxlZ2FjeS10cnVuaworNTI1MDMgNjFlNGI1OWFkYTBjMjllZjkyNGQxMWE4NjJmMGVmNTYyMzMzYjExNCBsZWdhY3ktdHJ1bmsKKzUyNTA0IDM2MDg2MDVhNzRkNThlNTZlYThhMmE5ZTNiMTU4MmI1Nzg3N2NhYTcgbGVnYWN5LXRydW5rCis1MjUwNSBjNGU1ZTUzYmE3M2YzNThiOTg5NDAxY2YzNDczYmQ0MTZlZWYwNDc1IGxlZ2FjeS10cnVuaworNTI1MDYgMzIxYzA3NWY5NWNmZGFjN2QxZTE4YmIwNTFhZTM4MGZkYmJmMjI1YiBsZWdhY3ktdHJ1bmsKKzUyNTA3IGExODYzODMzYzRlNmY3MGFjODkyODY5OTY1OTgyMDdlNzljZDFmN2IgcmVsZWFzZTI1LW1haW50Cis1MjUwOCA0YzYxZjQwMGNlMzBkMGNiOWY4NTZjMGI4ZjE0MzRlOGVmZmFkNTE0IHJlbGVhc2UyNS1tYWludAorNTI1MDkgMzgwYTM1ZDc4YzYwODk2Yjg2OWYyNzBlOTBjZDE5MWQxYTBjNTRhOCByZWxlYXNlMjUtbWFpbnQKKzUyNTEwIDlhY2MxNzc1ZDU3MTRiYmZlMjE5MDNiMTRlZjU2ZmUyZTMzYzFhMzUgcmVsZWFzZTI1LW1haW50Cis1MjUxMSA2YTY0NjllMjk0ZTcyZmNhYmM5YTQwYTM1OGVhY2EwODdmMTVhZGE0IHJlbGVhc2UyNS1tYWludAorNTI1MTIgZDAyMGUyZjcwOGJlODI5ZjM1OTdjNDFlODg2MmMyOTRjMTkwM2Y4YyByZWxlYXNlMjUtbWFpbnQKKzUyNTEzIGRlMjYxZjc2M2I0Y2MwNDk1OTA0N2ZjYWU0YjlmNjAyZjU2MzFmYmIgbGVnYWN5LXRydW5rCis1MjUxNCA0ODFiYmE0MWY5ZjQ1MGUyNjVmMWE5MTcyYTBiNDZiNmQ0NDljMjM2IGxlZ2FjeS10cnVuaworNTI1MTUgZDIxZGQ4Y2JjNzE2MTY3YTA0MTZjODczNjk0YjM2NTJjY2M5ZGZlMiByZWxlYXNlMjUtbWFpbnQKKzUyNTE3IDdjNDA1ODY4MTIyNDk1NWRlNmFlYTJmYWJhNGExYWFmMjMzYzE5ZTQgbGVnYWN5LXRydW5rCis1MjUxOCBkMjQ1ZWZjN2VjODkwMDQ4YWVjNzFiZWM5Y2NmMTQyMTRkODNlYTVlIHJlbGVhc2UyNS1tYWludAorNTI1MTkgNmE4NjBjODFhYjdkMDgzOTgyNzhjN2NhNmQ2OTYzYmU0MzZkMWVjOSBsZWdhY3ktdHJ1bmsKKzUyNTIwIDRkODMzZmNhMzY3MDJjYmVhYzQ3MzYxNjAyMzQ4OGQ5MDdkMWU4NjQgbGVnYWN5LXRydW5rCis1MjUyMSAyYTFlYWU2YzBlYjg2MmE1YTg0ZGJlNTAwYjIwYmRjNTJhODRjMTdkIGxlZ2FjeS10cnVuaworNTI1MjIgYTcyZDk3MGMzODRiZDEzNTk0YzU2MzE1YjhhNWUyYWIzZWFlYTQ3OSBsZWdhY3ktdHJ1bmsKKzUyNTIzIDNkM2YxMjdkM2UwYzc5YmU4M2ZiNTBiMmNmZjM1MGY3MzBmZTBmN2MgcmVsZWFzZTI1LW1haW50Cis1MjUyNCBmZDhhNWY5MjVkNGQ1MTM5Y2UyNjIzNzIxMTNiZmRmMTMyMjVhNjkzIGxlZ2FjeS10cnVuaworNTI1MjUgZWQyMmNhOGY3OGZmMDNhNTMwYjBiZmQ1MDYzM2ZkYTRkYTkwZWRjZCByZWxlYXNlMjUtbWFpbnQKKzUyNTI2IGM3ZDc3OGRhMTYyYzkyMGZhYWVjMmIzZTEzZmI4OWVhMzU1MTMxMWIgbGVnYWN5LXRydW5rCis1MjUyNyA5NjYzMTAwYzk1Y2EyZDI2MTIxNzE1NGY3NDM2NGEwZTdjNzAxYWVhIGxlZ2FjeS10cnVuaworNTI1MjggN2M0NDE0NDcxNGY2OGY5MmE3YWI3NDIzM2Q0NDUxZjY5OWM0YjhkNSByZWxlYXNlMjUtbWFpbnQKKzUyNTI5IGUxNjgwMGFjMWVlYTE0MWYwZDIzZTQzYzMyMDNkNTMwNDBhZDgwOWMgbGVnYWN5LXRydW5rCis1MjUzMCA4MjY5NWU3MzY4MjNmMDI4NDZlY2VjMDUwN2NhMTg0MTE4OTJjN2I2IHJlbGVhc2UyNS1tYWludAorNTI1MzEgZjQ5Y2I2MDkwNDI4NzNiNjVkZjhlYjM1NzIxYzdjMzI0YWY4YTlmNiByZWxlYXNlMjUtbWFpbnQKKzUyNTMyIGRhNzljNGU5YTViYmZiNTc0YTJjZjAyZGM3MTAxZGJhMzg5MDMzMTEgbGVnYWN5LXRydW5rCis1MjUzMyA5MzY2N2E3ODViODM0NjYwZjNlNWVlMmQ1MGJlM2IxMjViNWJmODc2IHJlbGVhc2UyNS1tYWludAorNTI1MzQgYzY3NzRlYjNhMDY3MzY1ZmM5ODk2NDI0N2NjOThiOGMyZjk5MjY5NiBsZWdhY3ktdHJ1bmsKKzUyNTM1IDlhYjdhNzczNmNhMDVkMzUyYmE5OThkMjVlYjM0OWJjMGZhZTViN2YgbGVnYWN5LXRydW5rCis1MjUzNiBiZjc4YmU2M2YyMGQ1NmJlNGU4MDNiNzJjODQxMDA0ZmMzMmFkN2U1IHJlbGVhc2UyNS1tYWludAorNTI1MzcgZDlhOGQ0ZjFkNjUxNGM3ZmU5NDczNzY1MzFiMDc2YWM0MjJiYWRlZSBsZWdhY3ktdHJ1bmsKKzUyNTM4IGY1NmIyNTE2ODE0MmM5NDU0ZGQwODllOTc3NTljOGQwODE3N2E0MzQgbGVnYWN5LXRydW5rCis1MjUzOSA3Y2U4NzJiZjAwYTNmOWRhMTRjMDVkNTQ2YTE1NTc4MmZjODEyNGNiIGxlZ2FjeS10cnVuaworNTI1NDAgNDE0ZWMyNjJkNjA4ZTRkYWExY2QzOGQ1NDBjZGYxMDExNzFhOWYxYyBsZWdhY3ktdHJ1bmsKKzUyNTQxIDhkNmQzMTViMmFmM2I5NWZhYTY1ZDAyNjU3M2UzZDZjM2NhYmE1YmIgbGVnYWN5LXRydW5rCis1MjU0MiBjYTNkMWQzYzRkOGMyY2YzMmY0YTc3NzgxMTMzNzQyYjg2ZjNjZGVkIGxlZ2FjeS10cnVuaworNTI1NDMgYzM3MDdkYTgwYWVmMzllOTQ3YjhmZGIxZmQ5YjJmMDMzMDVhNjMxYSBsZWdhY3ktdHJ1bmsKKzUyNTQ0IDEwMDczMjhmOWRiNTE0ZWVjZDFiOTFlZjZiOGFhZmFlM2M0MWNkZGYgbGVnYWN5LXRydW5rCis1MjU0NSA3NTUwNjgxMGNiYmY0Y2MwNWFjZWM3OGZiZmU2MWIxYjliNTg1ZWQ4IGxlZ2FjeS10cnVuaworNTI1NDYgZmZjYzY5NmUxZGEzYzI0MjhjNmRlMTYwMDE0M2ZlZGM4NDM0MDYxOSBsZWdhY3ktdHJ1bmsKKzUyNTQ3IDBkMGFlODRkZDFiN2FlYWViODEwZjYwZGNmOTMxNGYxMTkwZjBjMDIgbGVnYWN5LXRydW5rCis1MjU0OCAxNzE1ZTZhMGFlZTlhZDBmZDc5ZmYwMTM0M2JmODE2ODkxODRkOTM2IGxlZ2FjeS10cnVuaworNTI1NDkgYzVhMmY0MzFjNjk4ZWYzMGY0OGZjMWZlNjQ5Y2U3YjRiZjZiOTU5OCBsZWdhY3ktdHJ1bmsKKzUyNTUwIGE4YTZlMmI4NGJiYWY2OGQ0N2I5MDU2YmI5NGI5YWQ3NTFlZWViMjIgbGVnYWN5LXRydW5rCis1MjU1MSBiODg1MGFlYzA0NjZmZmVkMzgyYzVmZWJmZjYxYmFkNDIzM2NjMTcyIHJlbGVhc2UyNS1tYWludAorNTI1NTIgYmM4ZmZjM2UzY2RiNGU5Y2Y1OWJiZDZkZmNhNTMwMTMxMjIzOWU4NiBsZWdhY3ktdHJ1bmsKKzUyNTU1IGI4MjA0MDY4NTJhMGE5Y2QwYmU0ZDkyYjNkYmY2M2U0ZTQzNGM4NjIgbGVnYWN5LXRydW5rCis1MjU1NiAzMzg0MGM0MDcyYjc0NzQyMWZkNzQ5MDc4ZjNlZjc5MDk1ZWI3MzNjIGxlZ2FjeS10cnVuaworNTI1NzIgMWFiY2ZlZmVhM2VlYTY5NzMxODJmMzFkMzZhOGI5NWZjN2JlNDhmNSByZWxlYXNlMjMtbWFpbnQKKzUyNTczIDNiNmZiNTQzOWMxMDYxYTk0MTQwMTI0NTA3NmMzMTViZWFmY2M3ODcgcmVsZWFzZTIzLW1haW50Cis1MjU3NCBiNjc1NTNjMTRmYmNhZTFlMjA0Yjc1NmRjNGNjOTJlMWQ0YWRjN2M0IHJlbGVhc2UyMy1tYWludAorNTI1ODggYTNiZTQwYzA3MjUwMzAzN2I2ZWZmZjVhMzFlZThmMTBiMzZkZTQyNCBsZWdhY3ktdHJ1bmsKKzUyNTg5IDg3MWIwNWQyNTJiZTBhYTExZGFmZTE4NzU0YWQxOGJjYjI2YjBkNjcgcmVsZWFzZTI1LW1haW50Cis1MjU5MiBhZTQxMWZlMWVlYzAxYjJhMjUyNzEyYjI0MTA5MWQzMThiNzQ5YmE5IGxlZ2FjeS10cnVuaworNTI1OTMgM2U0ZTBiZTQwZjUyMDkzODU3NmU3Njc2ZmYwNDU3ODMwYjY2YjM1MiByZWxlYXNlMjUtbWFpbnQKKzUyNTk4IGZmNjc4NjY5YWE2ZTEzMWVjZDJhZTg3ZjAyMzExNDhlZDBlNWE0NzUgbGVnYWN5LXRydW5rCis1MjYxOSA1MzBkN2ViMGM2YzQ4ZjFkNTBhZDU0NDBlNWRhMGUzNWU4MDg0MGFjIGxlZ2FjeS10cnVuaworNTI2MjAgNmRmNGE5MTQzZGRmODgwNGVlOTU4ZTM2N2Q1MzU3ZDQxN2I5N2QyNyByZWxlYXNlMjUtbWFpbnQKKzUyNjIxIGViYWYzNDdkNDJmYjE0ZDczYjg5YmI5ZDJhYTA3MTkxZmM3MmRjMjYgbGVnYWN5LXRydW5rCis1MjYyMiAwMDNkODNkYTk5MzI2MjUwMmIxODg3YzBiNzNlYjM2OGY4NGVkYTVkIHJlbGVhc2UyNS1tYWludAorNTI2MzAgMWYwNTVmY2I2Y2E2NjBiZDdhM2QwZDk4N2JjMTA1ODExNWM3ZGE1ZSBsZWdhY3ktdHJ1bmsKKzUyNjMxIGQ3ODVjMjlmNTM0MDM1YmUzMDJiMGJkMjU2MjM1ZjQ5MDk2ZTMwNmIgbGVnYWN5LXRydW5rCis1MjYzMiAxYTBmNDY4ODNlYTVmMGYxMjEyMTNmMzIzYzU1OGY2YjM3YjU5YjY1IHJlbGVhc2UyNS1tYWludAorNTI2NDQgY2JlMTMzZDcyZTM5NzJkNzFkMjNmZjBhNWU3YjQ4NTdhMGM1NWYzYyBsZWdhY3ktdHJ1bmsKKzUyNjQ1IDU1MzFmNDYyMzJiN2FmNGJhNDU1ZDhhN2FmNjQwMmY1ZTllNjQwNjAgcmVsZWFzZTI1LW1haW50Cis1MjY0NiAyNDQ5OGQ0MzEyNmNiODlkNzJlZjdkMzI2NzI1NWM5NWRkNzc2ZGJlIHJlbGVhc2UyNC1tYWludAorNTI2NDcgZWQyYWM4MDg0ZTA0ODUwZDVjMDE3YmUyNmU3MjE4ZjZhNmNlZjY5OSBsZWdhY3ktdHJ1bmsKKzUyNjUxIDFkZTVlNzM5ZjlmZjU5M2RlOTBhMjNlNjUxMzkzZTg4MWRkOTQxZTUgbGVnYWN5LXRydW5rCis1MjY1MyAzY2MyZWFmMGU1ODE0OTlkYmZmYjAzOTQ3YjliYmUwNmVlNzdiYmRlIGxlZ2FjeS10cnVuaworNTI2NTQgZjg4NjI5OTgyNzBmYmZiYTA4MDZlODgxOTZlODQzM2Q3Y2U5M2RmZiByZWxlYXNlMjUtbWFpbnQKKzUyNjU3IDk2MzNmNTM4Yzk4ZGE2ZWY1ZGMzNDhmMzNmMGNjMDZlMTgzNjY2ZmEgbGVnYWN5LXRydW5rCis1MjY1OCA4ZDY4YjIyNGE4ZjA1OGUzMTM2NGViZDEyZWY5ZmQ1N2E5ZTI5MTY5IHJlbGVhc2UyNS1tYWludAorNTI2NjIgNjFjZDhjODdjZmUyYzM3ZTRkMzU3N2NhZWY1N2MxYjBmMjkyNGVjOCBsZWdhY3ktdHJ1bmsKKzUyNjYzIDc4Yzc1YjNkM2QwYmIxNDIwMTZmNGE0NjQ5Njg1Y2NhNzhhOWNhN2YgcmVsZWFzZTI1LW1haW50Cis1MjY2NCBmYTkwMjlhNDFjZThhYjA5YzgzOTg4Y2RkZjkwZmE4ZGQyMWY2YWIyIGxlZ2FjeS10cnVuaworNTI2NjUgYmQxNjIzZDA0YmZjNDRlMTc5MTgyMGYxZWQ1NTI0ZjBkNGIxODZkNCBsZWdhY3ktdHJ1bmsKKzUyNjY2IDRmOGViYWNlYzVmMDUzNjI4YzhmMjRkMTgyNzIyNzc3M2MwOGY5ZTEgbGVnYWN5LXRydW5rCis1MjY2NyAwMmMzNjZiMmFhYzJjYWM2NWYzMDdmZGVmOGNlYTY4YWYzNTMxZjEzIHJlbGVhc2UyNS1tYWludAorNTI2NjggMGRlYTM3YmNiZWZmNGMwMGQyMWM3Y2MwMDMzZDU3MzIzMDA3OTkzMyBsZWdhY3ktdHJ1bmsKKzUyNjY5IDdiODUxMjA2ZDI0Y2UzNGMzNDk5ZWRlM2MyZjM1ZWUyODMxZTEzOGMgcmVsZWFzZTI1LW1haW50Cis1MjY3MSA3MGM3NTZhYTkyNzNjMjA4NjM3MWM5NTZmNzg0YTcwOTczMGVhMWM2IGxlZ2FjeS10cnVuaworNTI2NzIgMzU3Yzk5NTM3ZTg1MmRkMzM5YTJkYjA2MTlmMTlkMTU1ODRmOWRlZSBsZWdhY3ktdHJ1bmsKKzUyNjczIDU3Njc0MjEyYzM3Y2YyYzk1NjBlNmYyNGVkNWI1ODE4YmE2ODMwMzIgbGVnYWN5LXRydW5rCis1MjY3NCAyNGE1ZGM3Nzc5MzE2NjQ2ZTBkMjBiZjMxMjY1NmE3YjkyYjE5NWE0IGxlZ2FjeS10cnVuaworNTI2ODYgNTI2Yzk1ODRmMjUyNzg2NzI2NzZkMDc4NzU3NTc2NmY2MmU1ZTJjZiBsZWdhY3ktdHJ1bmsKKzUyNjg3IDAyNWIyNGEyNjEzMTRkMTBlYTFkZWViZTY1NmJhMGI3YWIzYzMzYTAgcmVsZWFzZTI1LW1haW50Cis1MjY4OCAwN2IyOWJjZmMwMTM1MjM2OTExZDMxNTcwNGJiNWJlMjE4NzMwNTI4IGxlZ2FjeS10cnVuaworNTI2OTAgNmQ5OTc2MmNkODE4ODFkN2RjYjQzZWU4N2VlYmUyMjlmMDc2ZTczNiBsZWdhY3ktdHJ1bmsKKzUyNjkxIDZjMDY3NzI3M2M1YWJiM2I1OGJlYzZkNTAxOTkyMzhjOGU1OGE5YTQgcmVsZWFzZTI1LW1haW50Cis1MjY5MiBhZDc5NmZlNDcyY2FlZmU0NzE4ZmRlZTVhMWZjY2NlODIwNjE4NzE1IGxlZ2FjeS10cnVuaworNTI2OTUgNzA1OWRmN2MxNWRmODIzMTZjMTg5ZDlhMzU2Nzk2OTQwZTYwYjdlZiBsZWdhY3ktdHJ1bmsKKzUyNjk2IGMzMGM1ODRjYzZhYTQ5NmIxYTk5NWUxMTg2ZGMyZThiYzVkZTQ0ZTcgcmVsZWFzZTI1LW1haW50Cis1MjcxMiA1NjFmZmE3NTdkZmI1YTRjMjI2MWFiNjUzZWEwMDA2ZGRjYjNhNDM5IGxlZ2FjeS10cnVuaworNTI3MTYgNTRmNjIyZGQzYjI2NjY0YTUyYTllMTI2MTIyYmJkYWI0NWM5MTc2YyBsZWdhY3ktdHJ1bmsKKzUyNzE4IDczMjQyNWUzYjkyNzRiNzNmNWY3N2UxZmU2NWUwNDNkY2MzMDM3NmQgcmVsZWFzZTI1LW1haW50Cis1MjcxOSBkNzVjYmUyYjk2MDE5YzkyMDkxYmJjMzc4NTFiZjdjZTgzN2UxNmZjIGxlZ2FjeS10cnVuaworNTI3MjAgMGU1ZjJkMDU0OGViNmM5NjZhNzIxNjhlZjA4OWUxMmUzOGU0NDg5NyByZWxlYXNlMjUtbWFpbnQKKzUyNzI1IDZmMjk3MDkyMmM0NGNkODRmY2M2MGM4NzRlM2I4OGQ2NjYyNDRlNjcgbGVnYWN5LXRydW5rCis1MjcyNiA2MTZhMjA4ZjRiODA1MTQwMWM4YWM0Y2I3MDZjYjE3MjMyZmIxYjczIHJlbGVhc2UyNS1tYWludAorNTI3MjcgMTBhOTc3NGJiM2UzNDdlMGVlN2QwZGRhNjkzZGVjY2M5N2I2OGI3OSByZWxlYXNlMjUtbWFpbnQKKzUyNzMxIDQ0NjBlYzI0ZGFjOTBmOWM5YWI2OWQwZDJkMGNmMmUwZTcwNWMwOWMgbGVnYWN5LXRydW5rCis1MjczMiAzNWNmMTMzYWM3ZjhmMDEzYWE4MWE3OWFhNzIzZWE4N2VkNDQ5NmY4IHJlbGVhc2UyNS1tYWludAorNTI3MzMgMmNmMThmMTI3NjYzYzc4MTYwMmU0OTQ4ZmI1M2IwNjQ0NWQ1NDI0ZCBsZWdhY3ktdHJ1bmsKKzUyNzM0IDYzMzgxMmU4Y2ExYjZhOWE1YWQyZjVlYzA0NmI0MTkxMDkzNDNmOGYgcmVsZWFzZTI1LW1haW50Cis1MjczNiA5MGQzNTU4MjliYmI3ODY4ODU4OTNlMWMwZWEwNjVjYzM5OGJmNzBlIGxlZ2FjeS10cnVuaworNTI3MzcgOWY3ZmM2OGEyMGFlZGRjZWU2YjljZTk1ZWUwNjc2ZTZkNDRjY2I3OCBsZWdhY3ktdHJ1bmsKKzUyNzM4IGJmNGQyMDQ3NmE4NjE0ZTlhMWJkYjM4ZTM1YTFlY2MyYTU5OWQ0NjggbGVnYWN5LXRydW5rCis1MjczOSBlY2JlOTFiNWU0NmE1MzVhODUzNTE5ODFkZDFjZDdlNDBiZGJhOTRlIGxlZ2FjeS10cnVuaworNTI3NDAgNTkxZGFhNTM2MmIyZDQ4YTI3MjEzNWRkZWVhMTUxZjU1OTNmYTk0OSByZWxlYXNlMjUtbWFpbnQKKzUyNzQxIGQ0OWUwZGU0MDE5ZDFmNTVlMDFjYzIwN2M4ZTE4ZWY2OWI5MDg1OTAgbGVnYWN5LXRydW5rCis1Mjc0MiBlZmYxMWU0MzVmNDEwM2E2ZTc1MTcxM2ZjZTY0YmYzYjY2NTYzN2E2IHJlbGVhc2UyNS1tYWludAorNTI3NTMgN2UwY2Y2ZTM2NTBjOGU5M2M0MTVjZTNhZmE4ODZiZTM0YmVkNDJjYyBsZWdhY3ktdHJ1bmsKKzUyNzU0IGY5MWI2ZDg1Y2FiNTYyMmNhNGViMTAyZGUwZWFiNmU2Zjg2ZWY0MTEgbGVnYWN5LXRydW5rCis1Mjc1NSBhMWMwYjUxNGNiNTM5YTA3ODM2OTUzODk2NjlmYzhkMjVhMzU2OGU2IHJlbGVhc2UyNS1tYWludAorNTI3NjIgYjgwYTM2ODg1M2M3NWE3NjBhNjYxOWY4ZjRlMDdiYzVmNjQxMWNmNSBsZWdhY3ktdHJ1bmsKKzUyNzYzIDhhMzY1ZmRjZGM0OGRjZWU1OTY4OWRiMjBkZTVjYjE1OTk3MTYxMjkgcmVsZWFzZTI1LW1haW50Cis1Mjc2NCBiYTU2M2FiN2E1N2FlMmQ4N2Y2ZWRhZDk3ZjA3ZGFkMWVhNTNiYjViIGxlZ2FjeS10cnVuaworNTI3NjUgMjUxNWVjNGI1YjMzNjU2NTFjNThiZjYxODg5MTYxNWE3OGNlOTU0YSBsZWdhY3ktdHJ1bmsKKzUyNzY2IGUyNmM1MTc4MDczNzUxY2JjNGMxYjI2ZDBlN2NkNDFlMzU4ZmZiMTcgcmVsZWFzZTI1LW1haW50Cis1Mjc3NiA3Y2VlOTQzNDk4MWEyYWE4ZmJlN2Q1MjRiMGU0NGZlNjNhNTdiNTZkIGxlZ2FjeS10cnVuaworNTI3NzggNGM2MmM4MjkwZDRmNTgyZjRhNGQzMjFjMDNkNTVkZjViNTRlNWI4ZiByZWxlYXNlMjUtbWFpbnQKKzUyNzgwIDg5ZjJlOGRhMGYwZjllZGQ2MWM4ZjUzNzliMzRjNzIzYThmYzc2ZTYgbGVnYWN5LXRydW5rCis1Mjc4MSBjMWFjOGJkZTVlMTc2ZDM0YThlMmJkZjlhM2JlOTlmYWJhYWMwN2Q2IHJlbGVhc2UyNS1tYWludAorNTI3ODIgNWMwOGRjYjdkMjgwOWY0NGNkNDNiNGJjZTMwYjExMzViMjJlNmM3YSBsZWdhY3ktdHJ1bmsKKzUyNzgzIDc4YzBlNzJmMTZkM2QwNzdmOTIyZTgwMTMzYTQ4OGMwZTI0MzFkY2IgcmVsZWFzZTI1LW1haW50Cis1Mjc4NCAzMjBkZmRlZTg5Njg5N2M1YzcyYzQ3YzM4ZDBiMTYwNDRlMWYyYWRhIGxlZ2FjeS10cnVuaworNTI3ODUgYTA0MDZlOTMzYTgxNzM3ZGI1YWQ2ZjhmODYyZmM0NGUwODIyODE2NyByZWxlYXNlMjUtbWFpbnQKKzUyNzg2IDVmYTVlZjU1OWEyZjEzYjhmM2EzNjZmZjQ4ODIyZmNiMTEzMTJhNTMgbGVnYWN5LXRydW5rCis1Mjc4NyBiODcxZTdiZDgzNTViMjkyMmRjOWI3MjM4MDBlODYzMWVjMWE1NDFjIGxlZ2FjeS10cnVuaworNTI3ODggMGZkYzJiODIxMWY5MmU1NjYxOWU2ZWJlMTdlMzg5ZWY1YTgxOTM0NSBsZWdhY3ktdHJ1bmsKKzUyNzg5IGJlMmY1YjJkNTNiM2JkMjYxYzY5MTczMmQyOGQwN2U5YWJhMGM4MGQgbGVnYWN5LXRydW5rCis1Mjc5MCA0MDE2NmU1MDExZjgxOTBhOGI5MDA3MThhZWZkYjUxOGM5NDZlZWEwIGxlZ2FjeS10cnVuaworNTI3OTEgOWZkMTM1NGRhNmRiNmIyYmU4NmI0N2ExOTU5YTUyODg2YzViYzViOSByZWxlYXNlMjItbWFpbnQKKzUyNzkyIDI3MTEzMzk4MWU2M2UxYmM3OGY4OWU3NzAxM2QxMDBhN2M3OTkxMmMgbGVnYWN5LXRydW5rCis1Mjc5NCA2NGUwYWM4Mzk2YTNkNmVlMjNlMGYzNTRlMDQ1Mjg4NTkwMmVjMjdkIGxlZ2FjeS10cnVuaworNTI3OTUgNjA2ZTFmMGU4N2JkYWQ2Y2QyNDM1OTVlMWJjYjE0MDg0MzZmYTM4MCBsZWdhY3ktdHJ1bmsKKzUyNzk2IDQyZWFlZDhkMmI0NTQyYWZmY2VmMDEwMzViN2EwMzk1Mjk5ODE2NzIgcmVsZWFzZTI1LW1haW50Cis1Mjc5NyBmM2E2MzE4NTc1NDQ3NWNkNTViMDg1NjliMThhZDU2ZTNmZmZlMjFkIHJlbGVhc2UyNC1tYWludAorNTI3OTggZDdhYzNiOGYyMTM5MjE5ZWY4ZDI2Njc3N2RhYjVmMThiZDQ2NWMzMyByZWxlYXNlMjMtbWFpbnQKKzUyNzk5IDhmZGE1Yzg2Y2MxNmNlYTg5MzExNGM1Y2YwNTdhZjg1NmFiMTg5N2QgcmVsZWFzZTIyLW1haW50Cis1MjgwMCBjZjBlNjg1NjI2MDRkOWEyYTM2NjNiZDMwZjJkM2NhMjczMzdlOTc4IGxlZ2FjeS10cnVuaworNTI4MDEgY2U0Y2NmODdmNTZlNDYzOTRlYmYwZjMzMjljZTY1ZTE0NzIzNzE1NCByZWxlYXNlMjUtbWFpbnQKKzUyODAyIGM3YThjYjA5NWM0ODUxZjgxOTBkZGMxNzQ3YjA1ZGMxZjk3Y2VkOTIgcmVsZWFzZTI0LW1haW50Cis1MjgwMyA5NWFlNzQxZTI4N2JhZjdiNzA5MWJhNWU2MWMyYmYwMGIyYTY1OWU3IHJlbGVhc2UyMy1tYWludAorNTI4MTEgOTljYjM4MzUxZmZjNDBiYmMzMDFmN2MzY2YxM2M1NWRiZWJkMzI2YiBsZWdhY3ktdHJ1bmsKKzUyODEyIGFiMTg4NWYzNDQzYTdkYWIzYThlNDk0ZGZiNGY4MTdhYmJlOWQ2YTcgcmVsZWFzZTI1LW1haW50Cis1MjgxMyBhMjdlZGUyY2E2MDY4YTUxNjhiNTYyZGM0ZjliNjVjMDdmMWNiMmUyIHJlbGVhc2UyNS1tYWludAorNTI4MTQgNjFiMDY5Yjg0ZDBhZmNjNTEwZDI1NzYyY2U2MzJkYzQzMTg4MzE3YyBsZWdhY3ktdHJ1bmsKKzUyODE1IGIwYzA4ZWYxYzMwMzA5MDdhNjZkODdiN2NkYmUyZTNjMDIzMGNiY2YgbGVnYWN5LXRydW5rCis1MjgxNiA2ZTFiOTAwN2JiZGM2MDQ4YjgyNGU2ZGM5YjIxNzdlZmViNTg0YTFlIHJlbGVhc2UyNS1tYWludAorNTI4MTcgZDE4M2Q4MTI0ODAzZDAyNzJlNWNkZGU0M2VhOGFmYTlkMGYwYTg5MCBsZWdhY3ktdHJ1bmsKKzUyODE4IGEwMzdmYThmODQ1OGUzMWYzMWYyYTcxNzkwZTM3Yjg3N2M4ZWRhZDEgcmVsZWFzZTI1LW1haW50Cis1MjgxOSAyNTlkMjY5MDA4NjE3Y2JjMTdkOTEwZjAwNGYwNDkxYWI3M2YwMGE5IHAzeWsKKzUyODIwIGQ3NWIwY2FhNjdkYjlkZTYxMjEwOTc4YmRiYWYxZTZhYTRlYmU0YzEgcDN5aworNTI4MjEgOTNkYmZjNjU0YjZhMjIyZmJkNTJhYjhmZjQzYmViNzkxMWZiZjYwMyBsZWdhY3ktdHJ1bmsKKzUyODIzIDdmMzNmMjRhN2M0MTY3YzgyNzlkNjhlZGNhNDJlYTliNmUzZDM5NDAgcDN5aworNTI4MjQgMjVjYzYxNjE0NzIwNjNiYWNjNmEzZmVkZDU5ZWFlMDJlNmIzNmQwMSByZWxlYXNlMjMtbWFpbnQKKzUyODI2IGEzZTBmMWUxMTA4Mjg4OGU5M2QwYzgyODVlYWZmMjU5NjhkODVkZWUgbGVnYWN5LXRydW5rCis1MjgyNyBiNmIwMjU5MzE0NTEzMzM3N2RlMjgzMWVhZDlhMGIwZThjZjk4YjgwIHJlbGVhc2UyNS1tYWludAorNTI4MzMgMjkxZTYzMzY4NjdiNjc0ZjBmODRmZDRjYzBmNDYzNjIxZGNjNjcxNSBsZWdhY3ktdHJ1bmsKKzUyODM0IGNkM2Q2Yjk4Y2FlYWQyNjZiOTAwMmM4Y2Q3NzE5NWM2ZDhlYmZkZTAgcmVsZWFzZTI1LW1haW50Cis1MjgzNSAwMDQ2MmNhNDg4NDU0ODBlOWNhODQyM2E0YmY3NWI3MDQ3YjIyZmM0IGxlZ2FjeS10cnVuaworNTI4MzkgZTcwNzBkNjdkYjhjN2M5ZmUzM2YwYzc4YjlmZDU2NDIwNGYzNWYwNSBsZWdhY3ktdHJ1bmsKKzUyODQwIDE5MzE0NmU0ZDI3NmMwNDRlZjdhYTIxYjNmNWVjNGQzYjc4ZWVjNDggbGVnYWN5LXRydW5rCis1Mjg0MSA5NmJlOWQ3NGFkMzY3NTA0MGQ2MDIxYzNlNzk2OTFkNWU1ZTI2NDQ2IGxlZ2FjeS10cnVuaworNTI4NDIgNTg2ZGQ4ZWVkYjc1ZmVmODc5YTZjZmI0ZmI1MDAyNmQ5MTQ0N2MzZSByZWxlYXNlMjUtbWFpbnQKKzUyODQzIDI1MDgzNWRjNTQ0YWE2MDAzZDIwMzY2MDc2YTI1MmUzZDY1MzJlYzMgbGVnYWN5LXRydW5rCis1Mjg0NCAyMGJlNDMxZTc1NDAxYWZkOWI3NmZmNDBhMWY4Y2FjZDViZmE3Mzg0IHJlbGVhc2UyNS1tYWludAorNTI4NDUgNDU0ZWZmMjcwNmQzYjhiYjI3MWRjY2UxNDdmNWU3OWE4MTQ5ZjAyYSBsZWdhY3ktdHJ1bmsKKzUyODQ2IGE1NWQ0NjVkNDBjZmQyNGRlNWQ1MmMxMDljYzI2N2YxYTZmZTg2NWQgcmVsZWFzZTI1LW1haW50Cis1Mjg1MCBlZjE1NDcwMTY3MDMzYzc0YWU1MDVkN2Q0MmEwZGZiNmQzZGQ5ZWFiIGxlZ2FjeS10cnVuaworNTI4NTEgYTEwMTUzMDJkN2U0ZDQyYTBhZjE2OTVjMDg2ZDJlZmE4MjdkMDhlZiByZWxlYXNlMjUtbWFpbnQKKzUyODUzIDg4MTMzNDE3ZGZkMDViNGUxNTZhNmJjZTcxNGQyYWYwMTljNWNhYjggcDN5aworNTI4NTUgNzhmYjc5OTBjNWFhNTk1YmZiYzRmMTdjYTgxZDhmZGMyOGE2MzRiOSBsZWdhY3ktdHJ1bmsKKzUyODU2IGExZmQ5M2I1ODkxMjEwODc4YWMzYjRhYzdlNGY5MDY2NDMzZTQ5M2YgcmVsZWFzZTI1LW1haW50Cis1Mjg1NyAwMmQ1MTNlODcxZmU5NTcyZDIyZjE2MjAyNjQ5ODk2ZTY4ZTMxODkxIHAzeWsKKzUyODYyIDRlMzY4ZTgyYzcwZDZhMWUzMTIwODQyZmJlMjQxYWIzMjk2NWMyZmMgbGVnYWN5LXRydW5rCis1Mjg2MyAzOWFkOTlkZDY3ZTRkZTVjZmE5YjMxNTgyOTQzMmQxMTI1MTQ1NDZiIHJlbGVhc2UyNC1tYWludAorNTI4NjMgOThhMWVjYTNhOTMwODNjY2YwMWY0NWQwOWEyNjA5NmJkZTQxMDZmOSByZWxlYXNlMjUtbWFpbnQKKzUyODcyIGZlZjViNzc0ODE4YmRjNGU2MjYyYTIzMDA0ZWEyZmRkM2I5MDQ1NWIgbGVnYWN5LXRydW5rCis1Mjg3NSAxZTNmNTAyMGJiNTU1OGYwMjc3NzlhM2UyMWE4NmJkMzUyNzFmMTRkIHAzeWsKKzUyODc3IDJlNTAxMWFjYjQxNGQ0YjI2Nzg4YzAzNTdhMDViMWFhNTRiNzBmNzIgcDN5aworNTI4NzggYjNlZDA1M2NjNmExZjJiMWYyYWNjMDFjYWU5NTM0ZWY3OTE5YmQ0MiBwM3lrCis1Mjg5MCBkODAwZDY3Mzc1NTY0MTQ0NGEyZmE2Y2M3OGJkODYyNTMzOTI5YTFmIGxlZ2FjeS10cnVuaworNTI4OTkgMGUyYTA3M2NiYmJmYTdjZjdkZmFhZjVkNGZkMTY3M2NhZWE0YjQ3NiByZWxlYXNlMjUtbWFpbnQKKzUyOTAwIGM3ZTdlNzE5NmE0Y2NmMzU1ZmFlOTEyZjFkOWU5MjQyNjY2NDJkMmUgbGVnYWN5LXRydW5rCis1MjkwNSAzYWIxMmQxYTE3ZDJlZTM0OGZkOGFiZjBlZGY1NTA2YTc3ZmNiMDFmIGxlZ2FjeS10cnVuaworNTI5MDYgYzQzNzg3ZTZkNzA2MWQ1N2ZkNzA4MTY0ZDBlZjAyZmMwMGQ5YTU2MiBsZWdhY3ktdHJ1bmsKKzUyOTA3IDI2YjcxM2ExOTUzNGYyOGU3ZGUyYWFiOWFlZGM2OWZlMTdjNWNmYjMgcmVsZWFzZTI1LW1haW50Cis1MjkwOCAzZWU5ZDFhMzZkNDY0MzA5Y2Y0Y2JjMTUyOGQ2NTE3MGY5YTc1OGUwIGxlZ2FjeS10cnVuaworNTI5MDkgYTAxNDY5MmNmYTY2OGRlZDFjMGJjYmE0MmJlOTMzYzdhZDExOWE1OSByZWxlYXNlMjUtbWFpbnQKKzUyOTEwIDczZjBmYzJmOGYyN2RjMDk3YWYxYTIyNGExODA0ZjVlMjI2MzBhNDAgbGVnYWN5LXRydW5rCis1MjkxNSBjMWE2ZDk0YjgwMjc3NjhmMjM2M2EwMWQ4NmExZGE0M2QzZjNjNjk2IGxlZ2FjeS10cnVuaworNTI5MTcgMGNhYzNlNTMxYzVhMTViMWEyOTM5NDBlMmRmOTE5NDUwZDcyODk3NyBsZWdhY3ktdHJ1bmsKKzUyOTE4IGYxYTZhYjM1NzRlZmRiZGQ2OTFlNmYxM2NjZDQ5ZTUwYzAwOWEwNjMgcmVsZWFzZTI1LW1haW50Cis1MjkzOCBlYjMwZDMwZjIyYTE4NTc5ZWZkMWYwNWFhNzUxMzIyZjdlMzdjNjc3IGxlZ2FjeS10cnVuaworNTI5MzkgOWZmMmI3NDU4YzcwZDBhYmM3OTcyNDIzYzM1NTVkZjM3M2UwNzQ1NCByZWxlYXNlMjUtbWFpbnQKKzUyOTQ1IDlmZTU4NTViMDVkZGE4ZjdkZWZkMjA2OTM5N2M0ZGM1YmZiZTRlYWIgbGVnYWN5LXRydW5rCis1Mjk1MSBkNTU3Njk3MTJmNzNkZjU4ODVjODJhMTc4YTZjNTY1ODg1ZDJiMTEyIGxlZ2FjeS10cnVuaworNTI5NTIgZWVmNzI1YTQwYTY2NzgxMTViMmU1OWFiMDUwYzNhMmFlYmU3YmIzYyByZWxlYXNlMjUtbWFpbnQKKzUyOTYyIGU1Y2U1YTA1MzQxMTY5NmJkMDY2YTgwNjFhMjI4NzNjM2QyODQzNWQgbGVnYWN5LXRydW5rCis1Mjk2MyA2ZTkxZmM4OGJmOTljZjg1MGUxZmU4ZmExYzIwNGFmYjRmMjA4OGUxIGxlZ2FjeS10cnVuaworNTI5NjQgNmIwMmZlMWIzODJmZGZjOTZlNGE0ZWE3OTUwMmE0ZGNiNGExN2IwYSBsZWdhY3ktdHJ1bmsKKzUyOTY2IGExNWJkODFlZmRiNjM2OTk2ZDMxNzRhZDY1MjJjNGE3MjgzZjI2N2EgbGVnYWN5LXRydW5rCis1Mjk2NyBmYTI4MGQ3YzdkNWVkMmI3MTE4YTIyMWE1YTc5NGYxNDlmYWNiYTMwIHJlbGVhc2UyNS1tYWludAorNTI5NjkgYWU5MmM4ZDBmMDhkNTk0YjUwOTRlNjllNTg2N2ZjZjU1NjI1ZWIzNCByZWxlYXNlMjUtbWFpbnQKKzUyOTcwIGNmODdjOGYzM2Y5ZjcyZjdmNGYyNGUyN2Q0Y2IzYzBiZTFhYzQ3MDMgbGVnYWN5LXRydW5rCis1Mjk3MSBiODdjNTYzOWJjM2I4MGE0OTBjMmJkMTE5MDRhMWM5MzdlNTdiN2Y0IHJlbGVhc2UyNS1tYWludAorNTI5NzIgOWQ0NzI1NTViOTBkN2ZhNDU1NDRhN2Q5ZTc2ZTM1NWFiYjkyOWEzOCBsZWdhY3ktdHJ1bmsKKzUyOTczIDY4ZWYwN2Q5YzgxZTFjMTU1MWEwMzkyZGY4Njc3MGU1NThhN2NkMGUgcmVsZWFzZTI1LW1haW50Cis1Mjk3NCBkOWI0ZWZjNGViZWZmZmM4Zjg1NzYyNzM5NmY5OTBiNTQ0YWQxYjYzIHJlbGVhc2UyNS1tYWludAorNTI5NzUgZDRlYjY3ZDFkOTMxOGU3ODZlZWQ0ZjI0MGVjNmUyZjViMGYwOTc3OSBsZWdhY3ktdHJ1bmsKKzUyOTc5IDQ0N2VmMGU3NDYyOTk3MTEzODkzMWNjZDVlZDVlNDA2NzQ0MzYxYWEgcmVsZWFzZTIyLW1haW50Cis1Mjk5NCAwYzUxYjAwNWMyMTQ0YTQ0OTY3OTcwMjRhM2MxMThlZjljMzRjNTExIGxlZ2FjeS10cnVuaworNTI5OTYgM2Q1YjMwNzcyODkyYWNhNmFmYTg0YTVlM2VlMjM1NjJlZTIwY2QwNCBsZWdhY3ktdHJ1bmsKKzUyOTk3IDA0ZmRmOWZmYjE4ODJlOWJjZmEwOGViY2ZjNTAwZjQ4NDFjYTZjOGMgcmVsZWFzZTI1LW1haW50Cis1Mjk5OCA2MTMwNzJiOGY4ZDA5YzNkNmFlYzcyOWM5YmRmODAwY2ViYzU4NjFlIGxlZ2FjeS10cnVuaworNTI5OTkgYTMxMWExMGJhMGJmZDZmMDZmNjdlMmRlMzRkNWJmYTJjYzVkMTYzZiByZWxlYXNlMjQtbWFpbnQKKzUzMDAwIDMxNWM1YTYzM2IwNWJmMjU0ZjNmYzY2YTQ2MmZiOGVjYzkzNzY4ZDggbGVnYWN5LXRydW5rCis1MzAwMSBiMzMzMmVjMjkzZjI2ZDliMGNiYjJhOTEyMTQ0ZDQ4MmQ4Nzk5ZTAxIHJlbGVhc2UyNC1tYWludAorNTMwMTIgODEwMDgxODEyOTk2ZDhmZTdlMjVkYmQzNWRhYjk4MDMzYzJlM2NhMiBsZWdhY3ktdHJ1bmsKKzUzMDE3IGNjOTkyZDc1ZDViM2M5OTJhOWVkMDkxZTExODkyYTExM2MxMzQ1ZTkgcDN5aworNTMwMTggNjQ4MjI2MWIxMDkyMTYwYTFmZjQ5OGVjNmRlYTAyZjQ3ODE1MGQzNyBwM3lrCis1MzAxOSA1MGNlNTZiMjRjYmUzMTM3MzFiOTdkZjhkZWVmNDZhYzAxMWNmNmRiIHAzeWsKKzUzMDIzIDFjYjdiM2FlNDE0ZDA1YzIwMThhMmE0NmZmYThmZDA3YmExYjVmYzEgbGVnYWN5LXRydW5rCis1MzAyNSA1NmU4OGJiYWQ5YTBlOGRiMTE1ZjdjNGYxN2UxY2Q1ZDg5Mzk5ZTdlIGxlZ2FjeS10cnVuaworNTMwMjYgNDgwNzg5YjMyOTRkYzViYmNmYjQwNWVjYWVlMmM4NGExZWI1YWFkNiBsZWdhY3ktdHJ1bmsKKzUzMDI5IGU0ZjJiOTJjNzU3Yzk1ZDY0ZGE0YWM4MzA3NWE2ODQ2NjAxMjg3MzcgbGVnYWN5LXRydW5rCis1MzAzMCBjZWVlZDAyODcyMTY4MjMyZmIwMGE0YTZlZDFhZDYxYmFkYmIyZDExIHJlbGVhc2UyNS1tYWludAorNTMwMzEgYTkxMGFiZTc4MTU5MGE1NTRiN2YxOTgzMDM5ZTA3M2ExNjVjYmE3MSBsZWdhY3ktdHJ1bmsKKzUzMDMyIDllMzk2OThhZmJhNTZjYTY5ZjQxNDY5NmJlYmEzYzYyODRkYTM1NzIgbGVnYWN5LXRydW5rCis1MzAzMyBlZTVlNDFkZWE5NDkyZWI1OTk2ZDBmNDlmZTI4MjYyY2RhYTQ4MzhmIHJlbGVhc2UyNS1tYWludAorNTMwMzggMGRkZDA1OTNkNDBiZWU5MjQwZmI4ZDM1NzkwMGMwMDA5ZjMyNTc3YyBwM3lrLW5vc2xpY2UKKzUzMDM5IGZhOTkzNDYyNjQxMDQ0MmMxYjI4MTAxYTU3NWIwNWNmMjAyMTI1OWUgcDN5ay1ub3NsaWNlCis1MzA0MCA0NjdiMzgxMThiMjlhMmI2YWU4ZTM5MTlmMGI0MDFlMjg4ZTk1MWYyIHAzeWstbm9zbGljZQorNTMwNDEgODMzODRhNjkyNWE0YzkyY2IxODNlNTU5YTgxNTFlZDE4MzlkMzgxYyBwM3lrLW5vc2xpY2UKKzUzMDQyIDU5N2ZlODk1YTk1ODM2MmY2ZWZjYWEwNjEyYmJkZGViODU3YjcwYmIgbGVnYWN5LXRydW5rCis1MzA0NCA0ZjdmNzJiYzM0MGE3ZTVkMzAxODkzODk1ZDRmNDdhOTAwYmI2NTFjIHAzeWstbm9zbGljZQorNTMwNDUgNzQ1NzNmZGU0ZjBjZTc3MWEwZmUxMDY2MzhlMDc0ODA1ZjM2ZmZkNCBwM3lrLW5vc2xpY2UKKzUzMDQ4IDBkNjRmMjllZjI3M2QyYzIzMzRiNzhmODE2ZjliMjA2NzhmNjE4YzkgbGVnYWN5LXRydW5rCis1MzA0OSA3ZDc5ZmQxODE2YTg0NWQ5NzA4ZmNkYTExYzkzN2Y3OTcwYWFiMGY3IHJlbGVhc2UyNS1tYWludAorNTMwNTAgODFjY2ZlZGMxYzk5ZTdkOGQwZjEwNWJmZmY5YjRjNTZhZmVmYmUyYiBsZWdhY3ktdHJ1bmsKKzUzMDUxIDhlM2YyYjAyMmY3Mjc3MWM3MGM1YjA2ZDY0NjBkNDcwOWQzNDNkYTQgbGVnYWN5LXRydW5rCis1MzA1MiAzOGFhMWEwMTAyMTllZWFjNDg2ZTM0NTJkOWFhY2RlZTIzNjhmN2JhIGxlZ2FjeS10cnVuaworNTMwNTMgNTZkYzcyYzFhMWY0M2RlZWFjNDI2MWU0ZjRlMzg2MWEyNTRmN2ExZCBsZWdhY3ktdHJ1bmsKKzUzMDU0IGNkZjYzNTEzYThjZGZmYzM0MzgyYjJkNWE4NTFiNzY0NGQ0MGEyZTcgcmVsZWFzZTI1LW1haW50Cis1MzA1NiBhZGQwM2E5ZDc3OGI4MjgxOWExYjI5OWEyZmZmODI4Y2I1MzliNjk5IHJlbGVhc2UyNS1tYWludAorNTMwNTcgZmUyYTNjOTY2YzhlYWYxYTc2ODQxNThhOTE1Zjc2MzZmNDZiNjY0NiBsZWdhY3ktdHJ1bmsKKzUzMDYzIGViM2IyMzlhNGQwNzgwNjE2NmYyODkyZDEzN2Y1NTZlMmIyMmYwNWMgbGVnYWN5LXRydW5rCis1MzA2NCA5NTQ4Y2EwZTY1NjBlY2Q0NDRlYmRhODQ5OGVkMzdhOTU4MzliZTE2IHAzeWsKKzUzMDY1IDIxNDgwZDg5YjQ3ZjEyZDBjZjUxOWFjZWZjMWYwNzFjNTM5NGY1NjQgbGVnYWN5LXRydW5rCis1MzA2NiBiMjdkNWQ5OGE1NTY3NmM2NTk2NDE1ZmZiNDBmNjRkNjY3MzM0YTRhIGxlZ2FjeS10cnVuaworNTMwNjcgMTdlNzRjZTJiYzM1ZTc5YjY1NGMyMTUyMWQ1YmQ5ZGM4NWNkOGQ2ZiBsZWdhY3ktdHJ1bmsKKzUzMDY4IGRjYzQwYjkzYmZiZWNiYTNiMDQ1ZDQ0YjcxMzhjZTdmZDEwYWNiMTMgbGVnYWN5LXRydW5rCis1MzA2OSAwYjA0Y2I3NTFjMWEyMjExM2RhMzY2OTkwZTNlNjc4MWVjY2Y3ZWIwIHJlbGVhc2UyNS1tYWludAorNTMwNzAgMTY0NGJhN2RjZTFmMDVkZTA2ZGE0OWQzMDlmOTY1MmExOTFhNmMyMSByZWxlYXNlMjUtbWFpbnQKKzUzMDcxIGY5ODM0MGUzNmMzMTE1ZWQ3NjNlMTU4N2M2ZDQ4ZmQwYzc0NTgxNjAgbGVnYWN5LXRydW5rCis1MzA3MiAzMGYwOTc3NmVkNTU2MDBhMGM0ODYzZDQ3MzRjMjA4MTI1ODEyYzhiIHJlbGVhc2UyNS1tYWludAorNTMwNzMgZmU2OThkMDc4Y2Y5N2U3NzY3YWExYjJjYTA0OTMzNmIxMTIwOWI5NiBsZWdhY3ktdHJ1bmsKKzUzMDc0IGE4ZmEyNmEzYTJjYTFjOWRhZjNkZDg5MmEwNGY2NjZlNjk2NGZjNGQgbGVnYWN5LXRydW5rCis1MzA3NSA2Zjg2NGE5MWM2MTJjOWVkNzI5ZjExMDZmOTQ1ZDc1ZjMxZTUyMGRiIHJlbGVhc2UyNS1tYWludAorNTMwODAgODU2NWUzZmVhOWI2MmEyYmMzODdmNzBkNmFjOTUyYTk3MDEwNjY5YiBwM3lrCis1MzA4NyBkNGZjYjU2NTYzMTYyYzI3NWNmNDg4ZjQ5MTlkZGJjYjllYjllYTdhIHAzeWsKKzUzMDg5IGYxYTRjZTFmZTViMTBiNWQyMDg2N2Y0ODYxODhmMzgyNDFlNDUzMTQgcDN5aworNTMwOTAgNTEzOTVjMGI1NDgyZjhjNDBmZmYwNzAxNWNiNmFhNzczMDhlMWE4MSBsZWdhY3ktdHJ1bmsKKzUzMDk5IDk2ZDUzM2VmYmU3ZGQ0YzdmMDdiNTRiNWI5N2M1ZTY5OGQ2ZDQ2Y2MgbGVnYWN5LXRydW5rCis1MzEwMCBmZTliNTY5OTA4OTQ0OGVjZjk3NWJjYzliMDBjNGFkMTBkNDQ5YjI4IHJlbGVhc2UyNS1tYWludAorNTMxMDEgMDM3ZjNjZWEyNjU1MDJjOTZmNjVlOTAzZWYzYTE3ZGNiOTc3OTRhYyByZWxlYXNlMjQtbWFpbnQKKzUzMTA2IDEyNTBmZTQyY2U1Yzc5MTI0MDc3OThiMzdhZGRmMWY4ZTNjNTNhM2YgbGVnYWN5LXRydW5rCis1MzExMCA4ZmIzMzUwMGUwNjcwYjg1OGQ1YTJmODU5NGIwM2U5ZGM3NTU4YWM4IGxlZ2FjeS10cnVuaworNTMxMTIgNzkwOWE0ZWU1NjZiMDU4MzQyYjE1MDRmYTUzYjcyMDNiZTU5NGZlMSBsZWdhY3ktdHJ1bmsKKzUzMTEzIDJkNWVkMjY3YTQwZmExYWNmZDI5OTlkYzFhMDQ4MzlhYjk5ZjgyZjAgbGVnYWN5LXRydW5rCis1MzExNCA4M2Y1ZTgwY2UxZjI5YzMxMWEwNzYwYjI0Y2Y3NjBlZWM0NWI5YzliIHJlbGVhc2UyNS1tYWludAorNTMxMTUgYTg1OTVkZWFkNTRhZDVkN2ZhOWJlYzczYzdiMzQ3MjhmNWM0NmJiNSBsZWdhY3ktdHJ1bmsKKzUzMTE2IDIyYTU3ZjRmZmJjZDNkNGVlOTUxYTgxNjE0NWQ1OGJkNmNmZWZmMjggcmVsZWFzZTI1LW1haW50Cis1MzExNyAzNWM0OGY2OWJhY2VjNzk1ODI3ZmY0ODE1YTZjMGUzZGMwMDMyOTRjIGxlZ2FjeS10cnVuaworNTMxMTggZDJmYTdkYWFhNTliZjMwODcwODlkMjA2NjNkZjA4ODQzZmE5MGY1NSByZWxlYXNlMjUtbWFpbnQKKzUzMTIwIDNkNjY2OWFkZWNlNGE2NDM3OGFiZTZmZWMzM2Q0NDBhMWYxZWVmN2YgbGVnYWN5LXRydW5rCis1MzEyNSBlOGUyM2VkNmI2N2YxMzRjYWQxYmZhNDNiM2RkN2E1MzhiNDIwZjcxIGxlZ2FjeS10cnVuaworNTMxMjYgZmI1ZTNmYzQyMjdiZTgyMmIzZTdmYWFmODk4YmZmOTBiZTFkNmEyMiByZWxlYXNlMjUtbWFpbnQKKzUzMTI5IDk0ZWJmNGEyZjczOGYwMTFlNTljYzFmNjYyNGI5YzMyY2RhNTNiMTIgbGVnYWN5LXRydW5rCis1MzEzMSBmOTRlMmIxOTUxODllZGM5NTY3M2Y4NTQxZWEwZDg0MjU3ZmM2NGRiIGxlZ2FjeS10cnVuaworNTMxMzIgMzdlNzFmZWFlYTNkMmZjMjA0YjkyYjdhMTZiYTVhYTZhNTQ4ODQ2OCByZWxlYXNlMjUtbWFpbnQKKzUzMTM3IDg4MTYyNWMxM2MyMDZjYjcyNTFkYWU5MmNiMzRlOTRkMzI5YjRhNTAgbGVnYWN5LXRydW5rCis1MzEzOSA2NjNjOWYxY2UzYWFiZjhkODRjMzU3NWI2NTNlMzBhNTM1NWFhMGYwIGxlZ2FjeS10cnVuaworNTMxNDAgMmM1MDRjNjJkNGQ4ZGQ1NDE4MDc1OTExNWI1Yjc1NTQ3NGVkZTVmZCByZWxlYXNlMjUtbWFpbnQKKzUzMTQxIDJmODRiNmU4MTkwMmE4NDE3NDA0ODYyOTE2ZTE3ZjAzNTA4OThlZTEgbGVnYWN5LXRydW5rCis1MzE0MiBmOTI2YmJjMmZkNjI5Mjc3ZTZhM2EzZDdmYzIwOTA2MmVhM2U5ZWJjIGxlZ2FjeS10cnVuaworNTMxNDUgNWM2NzQ4NGM0Y2Y1ZWUxNzJjNTcwNWY5MzczYzYzOTBmN2YzN2JhMiBsZWdhY3ktdHJ1bmsKKzUzMTQ2IDkyZjNlZjhmYTRhZmEwODA2NzY3ZGQxOWVjMjFlNjBlYTk0ODYyM2UgbGVnYWN5LXRydW5rCis1MzE0NyAwOWY0YjQ2MGJhZWI3ZTVmYjRjNzg0NDdiMWY5OGJiYTRmNzkxZjRjIGxlZ2FjeS10cnVuaworNTMxNDggZGVkOTlkYjcwY2E2NzhkZDA5YjNkZWNhY2Y4NjcyMzRlZjBhODBkOSByZWxlYXNlMjUtbWFpbnQKKzUzMTQ5IGU0YjBmZjQ0OTIxNWYyNWYyYWQ1NWRkNGNkM2QyNTMxNmFiYjFkZDIgbGVnYWN5LXRydW5rCis1MzE1MCAyODk4MTlmZGUzYWYwZWNmNDk2NDA4N2IwYjcyN2EwZGRkOGM1Njk4IGxlZ2FjeS10cnVuaworNTMxNTMgNWM3ZWE5MzQ2ZjEyNzQ1MTg4ZTkyNGY2MTk2NDJhOWVhOGJmMjlhZCBsZWdhY3ktdHJ1bmsKKzUzMTU0IGFjOGE5YTQxMjFkMTdhYTcxZGJhZjVhZWRhNzNiZDZiMTZmMzY2MmUgcmVsZWFzZTI1LW1haW50Cis1MzE1NSA2NzYzZTQ1YzdmN2QzNDgzNTQyZTQyYjQzYjc1YmU5YzZhYjg5MjY1IGxlZ2FjeS10cnVuaworNTMxNTYgZWY0YjhmY2QxNGQ3MmZlMzhiYzAwMjc5ODA5M2JhZjYwMWExNzdkYSByZWxlYXNlMjUtbWFpbnQKKzUzMTU5IDFlMWI5YzJlMmFmMGUzMjJkMzExOTAyMTEwOWM2MWNkZDk1NTA1NzUgbGVnYWN5LXRydW5rCis1MzE2MCAxMmFmNjc4OGQ5MTE1NTljOWNlZjRlODBjOWVlNDc4Y2MzYTU0ZjQ4IGxlZ2FjeS10cnVuaworNTMxNjEgZTg1Y2EzZmQ0YmQ2M2YzODBhMGFiMzFiOGViNDEyODQ2ZGFmODVlMCBsZWdhY3ktdHJ1bmsKKzUzMTYyIDI2NzZkODI4N2ExMWIwZTlhMmZkOTIxY2ZmNWY3OTk4NjU5OTZkY2UgcmVsZWFzZTI1LW1haW50Cis1MzE2NSA2ZjhjNmY4MzBiNTFjZTY1ZTI1ZDhmNTU0Y2ViYmQwOTQwNWY1ZWVlIGxlZ2FjeS10cnVuaworNTMxNjYgNGQ3N2EyYzZhYTU1MzM3M2E2NDA1YWQ4NjIzOTc3NTkxZTNiYWMzZSByZWxlYXNlMjUtbWFpbnQKKzUzMTY3IDE5NWY2ODlhZjVhZmY0YmNjMDY1ZmY1Zjc0ODhmNjVlYjNiMzQ2OTggcDN5aworNTMxNjggYmNlN2U0YTkyNmE5MWJhNWI0M2I2ZWFhMTA5YmI0NTVjOTA5OWY5MiBwM3lrCis1MzE3MCA1NGNkNDc3ODg4MTFjMDNjNWVkNTE0YWEwZDAxMDNkNDZhNGZlMTgxIHAzeWsKKzUzMTcxIDdhMzVkM2QxYWM1YTMwMWVmM2RjNTJmOTE0MDg0NGYwNDIyMDExYTUgcDN5aworNTMxODcgZDYzZmE5MGRmOWVhZDg0NDdjZWFkM2I3ZmU0MjNjMTFhYzE4MDFiNiByZWxlYXNlMjUtbWFpbnQKKzUzMTg4IGEzMjIyMDc1ZjVjNjZhMTNjYmNiZDU3NmMyNmI5ZTA1YTJiMzY1MDQgbGVnYWN5LXRydW5rCis1MzE4OSBiMTllZDU0M2Q2OTVhMDMwNWZhMDI4MTQ5NjQzOGU0MTljODY0NTQ4IHAzeWsKKzUzMTkwIGI5ZmNhOGZiMGZiMzUxOGYxOTE0NTNiZWE5NjY5Y2M1MDQ5ZjZjODYgcmVsZWFzZTI1LW1haW50Cis1MzE5NyA5NDM3NWQ4MTQ4N2RhODE4MGIwYmQ5ODNlMWQ3NmY0MjU3MmQxNjk1IHJlbGVhc2UyNS1tYWludAorNTMyMDAgYzFhNGRjNzFjZGQzNzYwMTIwNWZiNjY0ZDQ5YzQyMmUyNzYxY2IxOSBsZWdhY3ktdHJ1bmsKKzUzMjMyIGJlODI0MGNlNTJmZjdmMzliYTE2NjFmZGI3YWI5NjVlMzVlMDQ4ZGEgbGVnYWN5LXRydW5rCis1MzIzNSAyYjE5YjJhZGM1YzFiOGE4NzE0MDBlOTAxMGM0YjAyZThhODExMWMyIGxlZ2FjeS10cnVuaworNTMyMzYgN2ExMzgzOWM2MzVkYzU1Y2RlNDdlMjFmZTk5M2VkNjFkODdkNjNmOCByZWxlYXNlMjUtbWFpbnQKKzUzMjQzIDljYzc2MWI5ZTJhYzU2MGY0OGE0Y2M1ODkyNGU2OTFkM2VhYjZmM2YgcmVsZWFzZTI1LW1haW50Cis1MzI0NCBkYzdkNGU1ZDhiNDk3ZTJiMDFiYmQ4NmQyNzA5ZTMzOTgxOGE1NmUxIGxlZ2FjeS10cnVuaworNTMyNDkgNDIwM2Y4ZTZlODZhYjQwYmZmZDJjM2I4MzdhMmY0MGViNzhkM2MwYiBsZWdhY3ktdHJ1bmsKKzUzMjUwIGQ5NzQ5YzNlNjMyNmFlMTYyM2Y5ZDFkNGFlNGJmNDhjOTcxYTY0NWIgcmVsZWFzZTI1LW1haW50Cis1MzI1MiBmOWIyNzgyMDc5OGI3NDc0ZjM2Y2YzNDFhYjE3MjJhMTg2ZjU3MzIxIGxlZ2FjeS10cnVuaworNTMyNTMgNjlmZTY4M2VjZTU2NmM4NDIzMDc3YmYxNDJkNjM1Mjc1NzZjZjJhZSBsZWdhY3ktdHJ1bmsKKzUzMjU0IGFmYWJmZmQ1NjJlOTRjYmRlMjRlMTM5MWQ4ZjY4YWY0NzJlNDRkMzIgcmVsZWFzZTI1LW1haW50Cis1MzI1NSA0NWM3MzE1MmI0YWM1ODMxNDU1M2QxMDVjNjM0ZTY3YTg0NDAyY2ZiIGxlZ2FjeS10cnVuaworNTMyNTYgY2EyOTVjMjcwYjFjM2YyYzE1NWE5NTJhOWRjZGUyZTM3MWUzNGE1MiByZWxlYXNlMjUtbWFpbnQKKzUzMjU4IDQyNzRlZGZkY2U5ODE4ZTU0Njg0Y2RlMjBlN2I4MTdkYTRhNGZhODIgbGVnYWN5LXRydW5rCis1MzI1OSAzMGRhMDZiMjI1YWZhYzNiYjE4YzA4ZDE3NWQ5N2YzYTEzY2ExOWRhIHJlbGVhc2UyNS1tYWludAorNTMyNjAgOTZkNzZkMDlhNGU5YzIyNTJkZmE4OTdmZDZjYThmOWVhYzc0NGI3OSBsZWdhY3ktdHJ1bmsKKzUzMjYyIDdmNzY5OTZjN2JmNGI4ZWM3NGJmNDZhMDRkNDRkMGY1OTY1MTY5MGIgbGVnYWN5LXRydW5rCis1MzI2MyA5MDkzN2QzMTc0Y2JlNTY4NmNhOTFkZGU5MGM3MWY4MTVjOTlkNWFjIHJlbGVhc2UyNS1tYWludAorNTMyNjQgOTMzNGIwZGMzYTE3ZDkwZTI3ZWY0NTc5Nzg4OTcwMDQzNjRhNWNjZCBsZWdhY3ktdHJ1bmsKKzUzMjY5IDNhOGZkMzYzOGYyNjBhMWM1NWUxYTU3OGJhZWQ1YTJmM2E3NzNmNGMgcmVsZWFzZTI1LW1haW50Cis1MzI3MCA4NGFjZWE4ZTA3MmU2NmUzMWI0MGI3NWNlZTUwY2Y2ZjExZDc5OGJjIHJlbGVhc2UyNS1tYWludAorNTMyNzMgZjcwMjc5ZjAwZGZjODBjMGRmYjk4ODlmNmU4Mzc5NjE4MjFmZTY3NSByZWxlYXNlMjUtbWFpbnQKKzUzMjc1IDY4NDVlMGU2MjkwMGZjMjE5NTU5YjFhNzhhMjZjZmJiNGQyNzQ0MGMgcmVsZWFzZTI1LW1haW50Cis1MzI3OSAxNjdlN2JhNzQ3NTYxM2MyMjY4MGNhYjk2YmZhZmVkYmFjMDU3YjE0IGxlZ2FjeS10cnVuaworNTMyODUgMDdjNDcwMjAyMGRjOTJhZGU2NWIxZjFhMWZjOGVkZGYyYTkxYjNkOSBsZWdhY3ktdHJ1bmsKKzUzMjg2IDQxMDU1NzBkYTMwYWQyYjIxMDg5Y2QwMTVmMWM1ZGFiN2MyNDkzMWMgbGVnYWN5LXRydW5rCis1MzI4NyAxNTIwYmFhZjI3YmY3NGU5Nzk3OWQ3YWYwNzUyMTJmZTg0YWJmZjg1IHJlbGVhc2UyNS1tYWludAorNTMyODggNmJkNjVjYjViOTUyMDYyZTMwZWEyZTIzNmRjNTIxNTljMGI5YjBhMCBwM3lrCis1MzI4OSA5OTViN2ZjYzI5NmRmNTY4NGFjNzM5YTIxY2U2NGE0NTJiODcwNGIzIHAzeWsKKzUzMjkxIGNjOTQ5YzYwNTU3NGRhNzVkYzg1OTFiNzJmOWZlZjVmNGIxOGY5MWYgbGVnYWN5LXRydW5rCis1MzI5MyA3YTExYTNhYmU2NGMxZjZmN2M1YzIzNzdiYjhjZWVlNWIyNWVlMWViIGxlZ2FjeS10cnVuaworNTMyOTQgNDRjNjIyMGIxZGMzZmZhNjZkYWRmZGYyOTkwYzU4M2ZmZGQ4NDlmYiByZWxlYXNlMjUtbWFpbnQKKzUzMjk1IDk5MDkzYjUyN2MwMWNhM2ZmNTkwZWEyYzM5ODBkZmIxNWYyZmVjODEgbGVnYWN5LXRydW5rCis1MzI5NiAwMzU0N2E0Y2QzMGFmYTEwYTM4YmE4YzIyYTY4NTU2MmM4NWY4YTUwIHJlbGVhc2UyNS1tYWludAorNTMyOTcgOTQwZmY1Yzc3ZjNhOTEwN2VlY2IxNjgwYWQ3MmEzZmNiOTk0NmRlMSByZWxlYXNlMjUtbWFpbnQKKzUzMjk4IDhkYTZkZGE2NzlmOGIyYThlNWRkZjZiNWViMzliMjVjMDRmZTdkZjIgcmVsZWFzZTI1LW1haW50Cis1MzI5OSA0ZGM3OWUyODMyMDk0ZDUyYTgyNzNjODJmOGRiNTMzZDg5ZTU1YjMxIHJlbGVhc2UyNS1tYWludAorNTMzMDAgYmQ3ZTQxZGU5ODJmNjBlOWYyOTgwODgyNGNjM2Y1ZTVlNTc3NDY2NSBsZWdhY3ktdHJ1bmsKKzUzMzAxIDlhZmQyYzdmYWVkZTYzYTcxNzk1ZDMxYTY1N2U4ZTg0YmRjNjU3MWYgbGVnYWN5LXRydW5rCis1MzMwMiAxZWQzZWQ5YWYzNDhjZmJhNGNlNzkzMTc2ODZjODliYTQwZDYxM2JmIGxlZ2FjeS10cnVuaworNTMzMDMgZGU1MDQwMjRhNmU3N2I0NTliMDllYTQwNjg3YTA2OWQ1NjEzNjgzOCBsZWdhY3ktdHJ1bmsKKzUzMzA0IDkyZGQyYmI5NGNhOWM4NzkxNDA3ZWIyN2IwMjAzNGJmMTE3ZjY3NWYgbGVnYWN5LXRydW5rCis1MzMwNSA1ZDQzMTAyNWM5OTlhOTZlMGQyNzU3NjhhYzgxODE1N2EwYzA5ZTBlIGxlZ2FjeS10cnVuaworNTMzMDYgNjFkNjM0YTBiZDZhMjNkOTAzNzQxMzhjYTY3NGNiNzcxZTJlZmRiMSBsZWdhY3ktdHJ1bmsKKzUzMzE2IDBkOTJjYWEyZDBmNDJiMmMzOTJjZGRmYzkxNjFhODIzYTQ4ODRhZDIgbGVnYWN5LXRydW5rCis1MzMyMSA2ZGRiNjM2Zjk1YzAwOTQ0YzY4NjMwYWRhMmEyYjc4Y2VhNmNmMjVhIHJlbGVhc2UyNS1tYWludAorNTMzMjkgYjgxZjRlZTk0YjA0Y2I5NmFmNGQxOWNhZmEzMjI5MzI2NjZkNTFmNSBiY2Fubm9uLW9iamNhcAorNTMzMzEgNDlkYzdmYzY2YmVlMzgyYTA1NWMyODBmNzZlZjg0OWI1MGRiYTI1NyBiY2Fubm9uLW9iamNhcAorNTMzMzIgNjcyODdjYTRlMWU4NTNmY2RhNzIyZjNiOTkzOTZmMmQ0ZTg4OWY2ZCBwM3lrCis1MzMzMyBiYjFlZWE5Y2VkNzBkYWI3ODQ0ZjMzYjQ1ODFlMDViYjkxOGZjYTE5IGJjYW5ub24tb2JqY2FwCis1MzMzNCBmMzFmZWUyNjJiNTE0NWYwNDNjNWIzODMyMTg2MDk0MTI2OGJlYjA0IGJjYW5ub24tb2JqY2FwCis1MzMzNSA2OWJjODA2ZDk2NjE2NTNhMzZjMjk1NGUzYzc3Mzg5NzRjNWVlOTkyIHAzeWsKKzUzMzM2IDBiNzk3YTdiNTMxMzA0ZjI1MDkwZDk5NTM4YzYzZmE0NTJjNDViYTggcDN5aworNTMzNDAgNjY3YmQwMjdkODAwOThkNDcwYjljZTg4NTU3ZDVkNmQ0NDMxNzllMiBsZWdhY3ktdHJ1bmsKKzUzMzQxIGI0YmE3MjQ5YWJhNTY4MzExMDU2ZDlmMGRhM2I5MDE1MmVkN2FmMzYgbGVnYWN5LXRydW5rCis1MzM0MiA2YjE4YTA5NWMyZTdhYjdjM2UzM2EwNjZjOGE3NDU5MjViZWY0NGFkIHAzeWsKKzUzMzQ5IDRiYWI2NWZjY2E4ZTYzNjk5YjAyMjYyNDJkZmUwODIwMjQ1OWQ5ODggcDN5aworNTMzNTcgZmY3MWI4MmY2Yzk1NjA4M2IwY2QyOGNiMjJjNDg2OGZlZDM2OWQxNSByZWxlYXNlMjUtbWFpbnQKKzUzMzU4IDEzZmMxOTQyMDRjNGU3NGM2ZTQzYzY2YjVlNDE3ZTNjZDgwZjllMWYgbGVnYWN5LXRydW5rCis1MzM2MCA0NjhhZTNlMzkyYTJhMmI2NDgwZjRhZGY2YjQ3ODhkYWRiMWIxYzBjIHJlbGVhc2UyNS1tYWludAorNTMzNjEgOTA5NDZkNTQzNGFhMzJhNzc2N2JlN2M5OTU5NDUxMzQ5ZDNlMGEyZSBsZWdhY3ktdHJ1bmsKKzUzMzYyIDVmMTMwMjcxZjM4Njk1ZWY0OTk2NzJkNmNjNjM4ZWExYzRmNGIzM2QgbGVnYWN5LXRydW5rCis1MzM2MyA3ZTI1MDAyMjZjNDM2YzY1YTFkZDc5MzM2OGY4Yzg1YmVmMTMxYTk5IHAzeWstbm9zbGljZQorNTMzNjQgOGMzNjkzNDZhNGNjNTA4YzlkY2QzNzdjNjEyN2JmMDU0ZTJjYjVjOCBwM3lrLW5vc2xpY2UKKzUzMzY5IGUxZTQ0OTNmNmU4ZjI0N2FmMjU5YWUyNDE2NGNjOTFhY2ExYzgzZTQgcmVsZWFzZTI1LW1haW50Cis1MzM3MCA0NmZjNzU2MTVkYTUyMmJjODA4YzUzNGI1NmEwNGVjMjVhNDMzYmYyIGxlZ2FjeS10cnVuaworNTMzNzEgYjYwYjQyMDk3Yjc4YjZhY2E0ZGJlY2JkMWYzN2FhNTZlNThkNDk2MyByZWxlYXNlMjQtbWFpbnQKKzUzMzczIDgxM2RjYzgzZTQyYzI3ZGMwNmEzZTBkNDNiODQxMDc0YjU5NThjMmQgcmVsZWFzZTI0LW1haW50Cis1MzM3NCA0M2M3NWU1NDBlOTIyZmI2ZThmNzg2MDcyNGM4Y2YzZmQxN2JiYjcxIHJlbGVhc2UyNS1tYWludAorNTMzNzUgMjExMTlkYjVlMDk2NjUwZDQzYWM1NWM0ZTdlMTVmOTIxYzhiOTgyMCBsZWdhY3ktdHJ1bmsKKzUzMzgwIDI2ODU5OTAwZmE1ZGU3ZTVkYTZiMzVlOTFlYjEyMTgwZWNkODkwOTQgcmVsZWFzZTI1LW1haW50Cis1MzM4MSA3ZGEzZGJjODE0NWI4NGRiYWEyZTIzN2Q0MTljY2I4OGI1MTA2ZWU1IGxlZ2FjeS10cnVuaworNTMzODMgYmUxOTNhZjIyZjA0N2ViMGFmNzYzY2NkM2IzY2Q5ZTRiZmU2NWFkMSByZWxlYXNlMjQtbWFpbnQKKzUzMzg0IGUxOGFmMjhiNDlkYTlhNTkxMzZhZjNjMmE0NjUxYjEwMTU4YjIwYTUgcmVsZWFzZTI0LW1haW50Cis1MzM4NSA1M2MwYjA5YzQ4YzExZjRjYzA0YTFmM2ZhYjA3N2M0MGExOTdhNmUwIGJjYW5ub24tb2JqY2FwCis1MzM4NyAxYzRiYmU2M2ZkZmM0ODc3MjQzYWFhN2FhZmVlNzUzMjcxZGU1ZDMzIGJjYW5ub24tb2JqY2FwCis1MzM4OCA3ZDg4NjhjZmJhN2M1ZTlkZjQwZjZjYjQzMzljMzU2ZmJiYzUxNzFhIGxlZ2FjeS10cnVuaworNTMzODkgYTJlMTdiNzUxNWQzYTM2M2UyNTI3MDIwZGQzZDZiYjZkMjdlZmQ1MSBiY2Fubm9uLW9iamNhcAorNTMzOTAgNjg5OWI3NDBlOGVhZTZkZGQ3ZGNkZDg5OThiZWQyNTRjYjI4YTA0OCBsZWdhY3ktdHJ1bmsKKzUzMzkxIDc4Y2QzODRkM2ZjZjkwOWFjODUyZGUzODc2YTQ1MmU5NDRkMGZiZGMgYmNhbm5vbi1vYmpjYXAKKzUzMzkzIGM3YmQ4OTJjMDU2N2Q3MmQyMDdjM2UyNjVjNzMxMDlhZWQwN2RhYTggbGVnYWN5LXRydW5rCis1MzM5NCA2ZDE2ZWJjNzE1Njk1YzA5MDkxOWYwOTg1M2MzZTk5NTU2ZGM1MDVlIHJlbGVhc2UyNS1tYWludAorNTMzOTUgMTgwMmNmOTMyNTRiZjY2NDU0NWYwZmQxNGI1ZDA0ZDA1NmZlOGM5ZCByZWxlYXNlMjUtbWFpbnQKKzUzMzk2IDhiZjY4ZWNjNzY3NmFmMWZiZDM0YjhlZDNiMGJjNmFmN2NiNTYzOTAgcmVsZWFzZTI1LW1haW50Cis1MzM5NyAyYzU3MWY2Y2UyM2FiMjc2NjhjMmFlMTJkNGRiNjQyODc3YjRlZDZlIGxlZ2FjeS10cnVuaworNTM0MDEgZThhZGU4YTZlNWNiOWNhNGEyMTM1YTFmZWI2N2FmOWJkZDU5YzM4NSBsZWdhY3ktdHJ1bmsKKzUzNDAyIGNmOGFmNmI3NTk4YmM1MzU1ODlkNzVkNjk1YjFkY2I3MzMwMDIxZmIgbGVnYWN5LXRydW5rCis1MzQwMyBjYTUzN2U5YmE3YTdmMWE2MTA2OGY1MDVjNWYzM2U4NTYxYWU5MDgxIGxlZ2FjeS10cnVuaworNTM0MDYgYjMwM2ZiMzgzZmE0Njk0ODM3NTJlM2YzYWE2N2Y3YmVlYWQ4MGM5MSBsZWdhY3ktdHJ1bmsKKzUzNDA3IGYyN2I4ODk5YjYxMzUyMzJhN2EyYWU5ZDYzZTMxNDQxMWNhNmQ4MjkgbGVnYWN5LXRydW5rCis1MzQwOSBlZDdhY2YxODgxYTk0MGZjNjVjN2QyNTk1YzYxZjM1Y2ZkMjVkNDQ1IGxlZ2FjeS10cnVuaworNTM0MTAgMmE0NzZjOTRiZTIwMDQwNWE5MWU4MjUzOWUyZWRhZmFjM2QyMzcwMCBsZWdhY3ktdHJ1bmsKKzUzNDExIDY4YjQxYzJkNjY2MzFhYWM0YjQxNGIyY2E2YzYxZmVmZWUzNDdjYzYgbGVnYWN5LXRydW5rCis1MzQxMiAyZGY4MGU3MTZlNWM5ZDkyNjZmZmVkMGE5ZjIzYjhkZDZmNDdhNTE4IGxlZ2FjeS10cnVuaworNTM0MTMgMTQwOWUxZjI3M2I1MDg1MTM1NjJjODYzOTBlZDMzZTZiMDIxNWJhMSByZWxlYXNlMjUtbWFpbnQKKzUzNDE0IDczYjkzZGM1ZTQ0MGFjMDg4OTI2MzVkZTBlYTE5YzBjMzY3ZjE5Y2UgbGVnYWN5LXRydW5rCis1MzQxNSBmMzI4MzI5NDcxZGY1NzEzOTZhM2JhY2M5ZGFhZjNmMGMxMmZiNzVmIGxlZ2FjeS10cnVuaworNTM0MTYgY2ExYjQwY2M2Yjc0YzM1OTlhMjQ2Y2FlOTU0NDU3NWFhZmE4MzQzZSBsZWdhY3ktdHJ1bmsKKzUzNDE3IDQyNmYxZDM3M2NkZDY1NzgwZjg3Nzk4MTMyY2I0OWI5YzEzY2IwYTkgcDN5aworNTM0MTggNGViZjBiODA1Y2U4NGY3YTc5ZjAwY2I5ZDAxNjNlMmQ0ZTg2YTU3ZSBpbnRfdW5pZmljYXRpb24KKzUzNDIwIGI5ZDRjZWQyMzUwNjIxZjY2OGNmZjk0MmZjNDM1MDIzMGViZDlhODIgbGVnYWN5LXRydW5rCis1MzQyMSA0YWVlM2Y2NzJmNzdlMGZlYWYwMmNjZGFiZDAxZWVkOGI2MzIzNmRlIHAzeWsKKzUzNDIyIGRiZmQ4NmMzYzc5MTNhYTFjZDI0MjdmYWYxOTQ2YWViZjUxMTZhOGUgcDN5aworNTM0MjMgOTBjMzgyNzE2ODZiMTIxMzE0NDM1YjM4OWZjMmIxN2VjODk4YjM1ZiBsZWdhY3ktdHJ1bmsKKzUzNDI0IGEwMDRjM2IwMTljYTE1MzIyNTBjNTJjNWFmYWNlYjkwMGFlNDQ5OGYgcDN5aworNTM0MjUgM2Q3OWJjNmVkNmVjZTcyMjg5YTE2YmM4ZmEzODFhYzA5OTRlMDJjNiBsZWdhY3ktdHJ1bmsKKzUzNDMzIDk4ZDVmOTBjYjkwNWFmZWJjZmNmZDFjZDM3YmMxZTI3MzgxZmUxM2UgcDN5aworNTM0MzQgNmVmZTNhNGIxMGFjOThhZDJlMjU3ODkyODIyZmE5NTQxMjI5ZmNmMCBsZWdhY3ktdHJ1bmsKKzUzNDM4IGRiOGMxNzVkMTI4M2Q3ZmI3NjYyMDMwMDJhZDYwZjE3MDk2NDQwN2EgcDN5aworNTM0MzkgOGUyY2E1NDQ0OTAwMWVjYjIzYWU1YWE1MTg3NzRlMTBlZmZlNzFmZCBwM3lrCis1MzQ0MCBjZjk4MzQ1YjlkNmIwMjBhZjAwZTY3NzcwYjBmM2E3MTIzYmRlNjlkIGxlZ2FjeS10cnVuaworNTM0NDEgZjM3Njk2ZTY0NmZhYzVkNTM1NjNkMzk4Nzk4ZjRkODAyMGUzMzNhMyBsZWdhY3ktdHJ1bmsKKzUzNDQyIGNjNWMwNzFjODQyMzExZTgzZjZjZWEwODgzZjQ0OWI4ODc3ZjVlZjUgbGVnYWN5LXRydW5rCis1MzQ0MyA4NmNlMWRmNmE4OGU3MGMxYTM5MGEzM2EwOGRiN2RlNDI4OGMwNjI2IHAzeWsKKzUzNDQ0IDgyYjliNWIxMjI1NmU0NWUwY2E0OTFkMjRiZDZlYzVkYTljOTNlMWQgcDN5aworNTM0NDUgNmY1YjMzOTQ3Mjc0ZThiNGQzZmM1MWVjOTQ1M2EyZTIxZjI2NDdlNCBwM3lrCis1MzQ0NiAzNDI1MzJmNDUzNmU2MTg0ODlhYzUyODAwOTNmMzk3M2I1NTYyZDJiIHAzeWsKKzUzNDQ4IGQwMmQyOWM1MjMyYTFjYWJjYjI3MDAzNDdkODRkYTk4NjUxZDFlOGEgcDN5aworNTM0NTEgNDdmOWVmZGMwODU1YThkMTc2MWEwYTQyNDc5MzU3NjJmNDJjMzVjMyBwM3lrCis1MzQ1MiAxYzI2NTA1YzFkZTZlYjUwZWE4NjRhOTc3MDI4YmRmNjk1NzhhOTdjIHAzeWsKKzUzNDUzIDNmNzgyNzRmMmEzNDk0MzViNzQ1MmUyZDI0MmZiNjBhNTQ3MzY2ODIgcDN5aworNTM0NTQgNGE0YmM1Yzc2ZTQ1OTBiZGM4ZTVlN2FkYTJiYzM0ZjRlY2MwNjRjYiBsZWdhY3ktdHJ1bmsKKzUzNDU4IDliZTYyYzQ1ZjNhODc5NDBmMWIwY2RlM2IzYjc2ZGNkZGQ4YTkzNjUgbGVnYWN5LXRydW5rCis1MzQ1OSBlNWI2NDFlNzAwZjIzNTQ1YTM5NGMwYTgzODBmYzAxNzUyMDBjZmE4IGxlZ2FjeS10cnVuaworNTM0NjAgYTRjZGI5YzhhZjI1YmQ2N2EzOWIxNDkyYzM4YzFjM2MxYjI1YWVmNiBsZWdhY3ktdHJ1bmsKKzUzNDYyIDM3OWFmNDE4ZmMzNjc1MmRlOTVmNGFhMmJiN2JkZDU5NThiZTgxMTEgYmNhbm5vbi1vYmpjYXAKKzUzNDY0IDQ4ZDM4ZDc3NzAyNDk2MjllYjUxNTNiMzkwNjBmMTUxNWQyOTVmMjUgbGVnYWN5LXRydW5rCis1MzQ2NSAwM2E1ZjJiMDY4MjUzZmFlMDUzNDRhNGJkMmJjNGEzNmRiZGU1Y2ExIGxlZ2FjeS10cnVuaworNTM0NjYgNjY3ODJlNWI5OTJmNTdmNGI3MjFiMWM5NTY0YTk5YzU0NDhlZmExNyBsZWdhY3ktdHJ1bmsKKzUzNDY3IDRhOTdmM2JmYjU1Y2UxZTViZGNjZDkzY2Y1OWY3MDdmNWE5MDY4MTkgcmVsZWFzZTI1LW1haW50Cis1MzQ3MSBiNzMzOGYzYjFiMDIyNDVlYTRjZmM4NjkwZGMzNDYxZTA1ODhiM2Y1IHJlbGVhc2UyNS1tYWludAorNTM0NzIgMDkxZGY0MzYwMzhkNzQ1ZWE5ZDYyN2Y4ODIwMmIzMDg0MGY0ZDVjYiBsZWdhY3ktdHJ1bmsKKzUzNDczIDE5MWVhYWU1YTI5ZDJlYzNmNGE1ZjYzMjllZmI2NmM3ZDExZmU1NTIgcmVsZWFzZTI1LW1haW50Cis1MzQ3NCA0ZDg1N2RhN2U2YzRmNDEzMjg3NTQzZjk2NmU5NWYzYTNkYjkxMTA0IHJlbGVhc2UyNS1tYWludAorNTM0NzUgNzczMjliMTI3ZDQzNzRlNDE2ODYxOGYyZDRmMGIyNmZlZmUwZjczMiBsZWdhY3ktdHJ1bmsKKzUzNDc2IDk0Y2EwNmQ5NTkzMDZmODJjNWViMTMzODFjNGUzMGU2YzJiY2I0N2IgcmVsZWFzZTI1LW1haW50Cis1MzQ3NyA5MDE2MDQ5MGM2ZDQwNTJkM2I0NzUxOWQ3MzM1MzdlYzU5YjIxMTg0IGxlZ2FjeS10cnVuaworNTM0NzggMjIzZmYzNWRjZmZjMWIwNmFkNDBiZjA3NDU0NTY0MWRlOTI2MjM2YSByZWxlYXNlMjUtbWFpbnQKKzUzNDc5IGVlODdlZWY5NTdmMzU5MTM2MzI3NzAzNDA3ZTNhMTM5ZDE0MzAwZTUgYmNhbm5vbi1vYmpjYXAKKzUzNDgxIGNhNjA3ZDc0OGY2NGU2NjA0YzhhNWFlMDYwMmJmYmE0NWVjZGM5ZjYgbGVnYWN5LXRydW5rCis1MzQ4MiA5YmRmMzRiM2Y3MmViMGZlZTNjMmIxOWIzOWYyZDg4OWQ1ZDM2N2ZiIGxlZ2FjeS10cnVuaworNTM0ODMgM2YxZGZhZjI5M2ZhMWRhMGVmOWI5NDkwNzlmNjg4ZmY5ZjA1NTA0YSBsZWdhY3ktdHJ1bmsKKzUzNDg0IDBiYzQyYzE1NmU5ZjVlZmVlNzg5Yzk1MmE0ZDBlODg2ZjZlNDRlYTAgcmVsZWFzZTI1LW1haW50Cis1MzQ4NyA5ZmU5MmYxOGJiNmE0MmE3NDY5M2Q2YWU5ODA4M2M2MWE3YmQ0OGUwIHJlbGVhc2UyNS1tYWludAorNTM0ODggYjhhY2VjNGE0Yzg5Y2E2YmQzYWY4NTliN2Y2N2I0MjQxN2M5ZWI0YiBsZWdhY3ktdHJ1bmsKKzUzNDg5IGIwNTFkMTk3ZjdhNDkzN2ZjY2VmYzY3YWFlYjgwYzIxNmE0NTUyNzUgbGVnYWN5LXRydW5rCis1MzQ5MCAwNWE4OTg2ZDk1MjY3MzdjOTI0MjMyYzU3ZGM1MzJjYjgwNzRhY2Y3IHJlbGVhc2UyNS1tYWludAorNTM0OTYgNjgwZDE3YTZiMTVmMGEwNDI0YTAzZDYwNGQwZDQ1MjMxZWUxNmQyMiByZWxlYXNlMjUtbWFpbnQKKzUzNDk3IDM5YjNhNWEzYzY0NWI4OWI4MGY1ZjNiNWMwZDRhMzRkMWFlNGQ0ZGIgbGVnYWN5LXRydW5rCis1MzQ5OCA2MGQzMWExMmIxNTBkNTA5Y2ZkNzBiZjE5OGQwNmJjYWY2NWZlYmE4IHJlbGVhc2UyNS1tYWludAorNTM0OTkgMmY4MGFmNjc0MDc0YWZjMjUyNmFlMDAxYWFkOGM0YjVlNjM4NGJiYiBsZWdhY3ktdHJ1bmsKKzUzNTAxIDViZjRmMDU5MDNiMjBjNjBmNzhlYmM0NTA2NjBkMjc0NmNhN2FlYTAgcmVsZWFzZTI1LW1haW50Cis1MzUwMiA1OWNmODllNWYyMzdlZGFhNTE2MDg0MzEzMTMyMWY4Zjg0YWM4YzQyIHJlbGVhc2UyNS1tYWludAorNTM1MDMgN2IzOGY5OTU1YzY0NjU5NDAxNDc3NTcxYjcxYWY5Yjk5M2M1OGZhZiBsZWdhY3ktdHJ1bmsKKzUzNTA0IDEwYmZmZDE5YjUzNWE0NDhlNDgyZTI5ZWZmZWFmYzg1OWQyYjNmMTIgbGVnYWN5LXRydW5rCis1MzUwNSAzYWU0ZjkzMGJmMjdiNGNkYzBjNzdmZTE2YmRmNTA0MTZhODc5NjUyIGxlZ2FjeS10cnVuaworNTM1MDYgYWM0YzJmNWMzZmMwZTk5MzQzMzY0NjhiM2M5MDk5Mjc5Zjk4OWM5MiBsZWdhY3ktdHJ1bmsKKzUzNTA3IDVmOGE1NGM4MDRmZjZmMGRkMzJiMmMyNTgxOTJkYTkzYTlhNmVkNjQgbGVnYWN5LXRydW5rCis1MzUwOCAwYmZmY2E2NGNjYzRiYTA0ZTQxMzA4OGQwNzQwZWM4MmY0ODQ4MTE5IGxlZ2FjeS10cnVuaworNTM1MDkgNzdlMGY0NzE4YTdjYTYxNzc4N2U3MGZiM2E4ZjZmYmRlN2JhMDVjNiBsZWdhY3ktdHJ1bmsKKzUzNTEwIGM4NmRmMzExZTYyY2VjZTIxMDA2YmU2YmMzNjIwOWZhZWYyYjRiOGMgcmVsZWFzZTI1LW1haW50Cis1MzUxMSAyZmE2ZTgyYjFmMTdiN2FlZjg3NjEzNzk3MmE3M2I3YzJmZmRlNzc3IGxlZ2FjeS10cnVuaworNTM1MTIgNTczYTQ2MTc2MTc1Mzk1MmEwYjA1MmMyMTUwNDIzMDU0ZDA3NTQwYyByZWxlYXNlMjUtbWFpbnQKKzUzNTEzIDY2NmZhZjg5MTJlMDVmMzdmZTNhYjRkODEzZGEyNDkyMTQ1YmNkYWUgcmVsZWFzZTI1LW1haW50Cis1MzUxNSAxNjc5YTRhZGExNzEyYjBkODg5OWE1OGZkYWM5YWQwZmNmOTA0N2RmIHJlbGVhc2UyNS1tYWludAorNTM1MTYgM2I2YWM0ZjRiNDM3MjQwYmRmYTBmODUzNDBhZWNkYzU2YmJiMTgzOSByZWxlYXNlMjUtbWFpbnQKKzUzNTE3IGIyMzcxMWJlMmIzZTAzNDIxMzhmNDc0ZmYzMTY2NDg0ODg3MGZkNGYgbGVnYWN5LXRydW5rCis1MzUxOCBiYjRjMGJiYmEyNzJmOGQ3OGY3NTI2ZmQyNGM2MjA4MjgxNDAwOGI4IGxlZ2FjeS10cnVuaworNTM1MTkgYjE2YjRmOTc2ZTcwYWQ4N2Y2NjM5NzJjMmNhZmE0MDc5M2Y0NzhjMSBsZWdhY3ktdHJ1bmsKKzUzNTIwIGVjZTJhZjc2NDYyMWQwNTdlNDI1NjRhNGI0NGQzNDFiOTZlY2E1NDUgcmVsZWFzZTI1LW1haW50Cis1MzUyMSBkZTJiYmRlY2U4M2VkYWZkMmFlMWRhNDg5MThhNDMyNzM1ODZmMjA1IHJlbGVhc2UyNS1tYWludAorNTM1MjIgZDdiZTAzZWJmNDY2NzMxY2I3YmU2MWM0NzRjNjUxZTk1MWZmNDQ0ZiBsZWdhY3ktdHJ1bmsKKzUzNTIzIDlmMjM5M2U5ZWFjYWJmNDM4MDYzZmRhZjI4ZjJmNGYxNzg3OWU4MzIgcmVsZWFzZTI1LW1haW50Cis1MzUyNCAwODFjYTYwODBmZjE0NTMwNGU0ZDM0ZjExODkxOTk2NDM1MmNmNTE1IGxlZ2FjeS10cnVuaworNTM1MjUgMjliOGI2NWJhZTNmYWI1ZTBmNGI5NzBiZDk2YmZhM2JlMDMwZTIxMCByZWxlYXNlMjUtbWFpbnQKKzUzNTI2IDdmNDA2NWVmYTQ0ZWUyMzk2NTExMTUxNWY0YzMwNzJlMjVlMmEzM2EgbGVnYWN5LXRydW5rCis1MzUyNyA4NmFiMmYyMGEzMzMzOGRjMGEyZjAxMGFmMGM5MjkzMTRlYjY4ODNiIGxlZ2FjeS10cnVuaworNTM1MjggZDJlMmVkZDA3MDgyYzRmYmVkZTQ4YjI3YjJmZWIzYmU3NjVlMzhhNCBsZWdhY3ktdHJ1bmsKKzUzNTI5IGRhMzBhMjZkZmViMzljYjUwMWI1YjBjMjg1YWRlZGM1ZGRlN2JmYTUgcmVsZWFzZTI1LW1haW50Cis1MzUzMCA2ODYwYmE4OGQ2N2VhOWQzMGY3OWVlODFhMjkzODYzZjEyNzMyY2Q4IHJlbGVhc2UyNC1tYWludAorNTM1MzEgZGYyOTRiYzVjZTZlODI2OTg3NjUyMTY3YzEyZjM4OTU0MmJjZjU3ZiBsZWdhY3ktdHJ1bmsKKzUzNTMyIDBlOTVjNzc1MTJmNTRhMTBjMjljMDczODBiMDJhNzFmMDU0NjQ5MTYgcmVsZWFzZTI1LW1haW50Cis1MzUzMyAyOTMzMTFlNjNhNzMyZTIxZGE3ZWY2NjMwZmZmMjVkOTgwMDgwNDdmIHJlbGVhc2UyNS1tYWludAorNTM1MzQgMDMxNDRjNDg2NzgyYzFiMTNlMWJhNjA4NzhiNTlmNDhlMGZmMTYwMSByZWxlYXNlMjUtbWFpbnQKKzUzNTM1IGRiYmRmYzAzOGRjOTQ3Y2Q5MjQwYmMyOTc1ZjgyODI1ZTdmMjdjYWUgbGVnYWN5LXRydW5rCis1MzUzNiAzOGQ5NDRlZmU2MDBjNmM0ZWY2OTdlZmUzOTU4ZjQ1M2Y5MGI2MjZjIGxlZ2FjeS10cnVuaworNTM1NDMgNDgwN2E2YWJmOTA2MjRjOThiNzljNTUzYjEzYmMwNTAyZTM5YjZjYSBiY2Fubm9uLW9iamNhcAorNTM1NDUgMGQwOTZiMTQ2YjQ4NjhiMzI4YjU4MDAzYTc1NmVjMDNkYjJjMTE1ZiBsZWdhY3ktdHJ1bmsKKzUzNTQ2IDQxNThiYTdmNDZhMDM1YWE0MWNmMjI5MWRiZmI3NmY0Zjc3MTIwZTAgcmVsZWFzZTI1LW1haW50Cis1MzU1NiBhNWIyNjljZTA3OWRlZGM2YjBmZjRjOGI0MzE5NGUwNWUwOTAwOTlkIGxlZ2FjeS10cnVuaworNTM1NTggNjU2ZGQwMDk1ZjUyZWRjMThkZWU5NWQyM2Q2OWJhY2IxOWFhYmRjMiByZWxlYXNlMjUtbWFpbnQKKzUzNTYzIGU0MzgxNmRkYzRmMDVkMzE4ZDU0MDllNzJhY2E5ZGM3M2RjN2E5YTggbGVnYWN5LXRydW5rCis1MzU2NCAxNWRlY2EzOWUwZTZiYmM3OWNjNDgxNjA2M2RiY2UyMjAwYjIzZjJkIGxlZ2FjeS10cnVuaworNTM1NjkgNGZhOWM4MGZiMTdhYjg2YzE5ZDQ4ODRhMzU0ZmM1MjU5MjM5YjNlYiByZWxlYXNlMjUtbWFpbnQKKzUzNTcwIDExNjNmNTVkYWQ5NWY4MGNmN2YwNWVmMThiYjg2ZGU1N2YyZTdjNWQgbGVnYWN5LXRydW5rCis1MzU3MiAyYmJmMTdjMWM2OWNiOWQxYmRjY2ExNGRjMzg0NDcxMDFkNTA4MTY5IHJlbGVhc2UyNS1tYWludAorNTM1NzMgMTI4NTUwMDBlMTNiZGVhYjQ4ODdjNzQ0YzNlMTY1OTk1NTY3NTlhYyBsZWdhY3ktdHJ1bmsKKzUzNTc1IDIzNDNjNjhjYTFjODdhM2FmZjUwMjNhYjI3ZDgxYjBlOGNhYjU1MDcgbGVnYWN5LXRydW5rCis1MzU3NiAxNzUxY2EzZmVmZmU5NmI0NDhmNmUzNjJiNGQxNjJjYzlmYjdmMjk1IHJlbGVhc2UyNS1tYWludAorNTM1NzggYzlkN2I4NmY5Mzc3Y2IxOGJiZjEzNmZjYWJmOWNhY2VhZWUxMGFlMyBsZWdhY3ktdHJ1bmsKKzUzNTc5IDI0MzFmODJhNmExNzU2ZmE3NGFkMjJjZTNiNzIwMTdkYTRmYTFmZmIgbGVnYWN5LXRydW5rCis1MzU4MCBhZDkzNmUwYjZmY2ZkMWJiMmRiZjlhN2EzOTkwZjFjYTM3OTgzNzIyIHJlbGVhc2UyNS1tYWludAorNTM1OTAgMTc4MmI2MjJhYWM3MWI5YjBlM2FhZDkxM2E4ZjY1YzkxZGUwNmQ5OSBsZWdhY3ktdHJ1bmsKKzUzNTkxIDJkODIzOWFiZmE2MGZhZTNjMWJlNzVlYmMwZGJjNDRjOGUyZDViOGMgbGVnYWN5LXRydW5rCis1MzU5NCA1ZmM4MTljNmMxM2UyZWY5ZTdiZDVkNmU3MDYwZGY2Y2JmMGZhNWI4IGxlZ2FjeS10cnVuaworNTM1OTYgZDYwYWQ5MTRkODMzZWU5NmNkYmViMzRjZDVhY2M2YjRhY2QxMGM2MiBsZWdhY3ktdHJ1bmsKKzUzNTk3IGFiOWM4NjUxOTYyODFhZmEyYTc1NzdjZjY2NDllNzU3NzhlN2MyMDYgbGVnYWN5LXRydW5rCis1MzU5OCBmZmI5NTgwZjk2N2JhYTZjOTYyMjg1ZDVkODM2NmVmODE1ZTBhNzk0IHAzeWsKKzUzNTk5IGQ1YmFiYjMyNmE1MGQxMDNiMDE1NGJlYzRkNmMwYjI1MTA4MzA4ZmYgcDN5aworNTM2MDAgYTI2NDQyMjI4MDU4NTVjODE3ZGYxZDUzNmMyNDgyN2ZmMmM0MTY5YyBwM3lrCis1MzYwMSA1ZGFlMGQ3ZjY4M2FiMzc5NjkyZmQ0Y2I0NWE5MTkxZGQ5MmNlMjBkIGxlZ2FjeS10cnVuaworNTM2MDMgNGIxMDAxZGEzOTkyODZhODYzYWM2NTk5OTIyMTVlYWFiYTVkOTgxNCBsZWdhY3ktdHJ1bmsKKzUzNjA0IDBhY2EwMDM5Y2MxYjVlZDE1ZjEwYTlkZjQxZTI2NTg0N2QwMzc1NzggcmVsZWFzZTI1LW1haW50Cis1MzYwNSBiZDM3MzlhODcyNTk1YTA3MTZkOGY2MTc3N2MzMGZiNjlmZTg0YmE5IGxlZ2FjeS10cnVuaworNTM2MDYgMDM3YWJjYTgxN2I2MzgzYmRiNDhhNzc2MTM4NDQ2YTkyNTVlNDA4NiByZWxlYXNlMjUtbWFpbnQKKzUzNjA3IGMxNDdjNmJjNTc5ZjI4MThhZDEzMTMyZGEwODQxZWNkMzBhYWYzMWYgYmNhbm5vbi1vYmpjYXAKKzUzNjA4IDY3ZWM0YWZmYmQxNGMwZTRkODcxNWQ1YWFmMGRiMDYyMGM0NTNmZmMgYmNhbm5vbi1vYmpjYXAKKzUzNjA5IDBmMjBjM2JjNjI3MDZhMjJmYzFlYTExOTJkNmVhYmIwN2EwMmNhMTkgYmNhbm5vbi1vYmpjYXAKKzUzNjEwIDZlYmFkMmE2Yjk5MDc4NmFiNjEyM2JjOTZiNjE2NzMxNTE3YTJiYTIgcDN5aworNTM2MTMgNTgzODlkZWE2NTFjZDY5MzFlOGE0MWNhMzcxZWZlMWFhZWE3OGNlNCBiY2Fubm9uLW9iamNhcAorNTM2MTYgNzJjMGM2YWVjMWVkMTg1YzYzNmNlMTNmMDRhNWE3MDYzNWMyMjAxMiBiY2Fubm9uLW9iamNhcAorNTM2MTcgNTNhMzZkYjJjMzg3NjQwOThiZThmNjEwYWY2MDNiOTRhMDlkNGQ4YiByZWxlYXNlMjUtbWFpbnQKKzUzNjE4IDJhOGU5ZWZiNWQyMGMzYmM1ZGNjNzE5ZWUyNzE0ZTY4OWIwM2VhYzkgbGVnYWN5LXRydW5rCis1MzYyNCBhZDhjZGZiNjk4NzIxM2VkMGNkNmQ1ZDNkZTQ4ZjU3NWMyMDgwMjU4IGxlZ2FjeS10cnVuaworNTM2MjcgODQ4MDk2OGY0ZjRhMTRlOTI5MWFiNTAxNTU5OWQxOTE3ZjZhYTkxOSBwM3lrCis1MzYzNCBmMTcwMWJhMjQ1MmI0MGVhOGRiODljMjNiMmMzYTJjN2MzMzNhMzgxIHAzeWsKKzUzNjM1IGNjYWM2MzZiMTUyY2U2ODJmYjRmMjUyNTI1YmU0NWRhYmRmOGQ2ODMgbGVnYWN5LXRydW5rCis1MzY0MSA2ZDljYTkwZDhiZjc0OWQ5NWJkOTgwYWZkMTE3ZGQwMmNhNmJlZTU4IGxlZ2FjeS10cnVuaworNTM2NDQgMWFmOGZlZTMzMDEzYzBlNzYyYjI0MGE1ODQzNGVlOWUxNzJiYTMyYyBsZWdhY3ktdHJ1bmsKKzUzNjQ2IGQzZTg4NjMxZjkyYmI2YTA3YmE3MGU5NWQ5ZWMyM2ExZDA1Y2JiMWYgbGVnYWN5LXRydW5rCis1MzY0NyAyNjVjNTFiYTM5MTAyMzE0OWM2OWFkMDVjNTBhNThjNTYxNmQ2ZWUxIHJlbGVhc2UyNS1tYWludAorNTM2NDggMDlkY2FjYzhhMGJjMmExZTMwZmQ4NDdhMDM2N2Q3Y2FkNTg1NDY2OSBsZWdhY3ktdHJ1bmsKKzUzNjQ5IDA1MjhkNmY5NGViNmVlNjNmOGU0OGMwZDFhZjI3MDdiMzk4NzJmMTAgbGVnYWN5LXRydW5rCis1MzY1MCA2YzQxYjAxMjI3NDdhZjU5ZDUxZmU3OTRhYjBhNThkN2UxYjlkMjRkIGxlZ2FjeS10cnVuaworNTM2NTEgZDU5NGVjODU4ZmU5NzRkYzVkOTJjMTcwMTM2YjBmMjM2OTRkNmY0OSBwM3lrCis1MzY1MiBmODNkNmFhMzkwZjEwNmI5MmZiOGZmMmRmZTJkYTRlYjg4NThkOGRmIHAzeWsKKzUzNjUzIGM3NzkzMzQ1YTBjNTQ0YzI0ODI3Y2E1Y2JhMzY3ZDkyZGViNmFmZWUgbGVnYWN5LXRydW5rCis1MzY1NCA0OTliZjMwNDBhZjdiZjQ1M2JmZDMxZGUyM2U1OWIzYmQ1YWExYjQyIGxlZ2FjeS10cnVuaworNTM2NTUgNTZkYmRiN2I0MDRhMzliZTdhNWMyODMzYTY4MjlkM2RkMzk0ZWQwZCByZWxlYXNlMjUtbWFpbnQKKzUzNjU2IDA3ODc1NTQ5OGNmZTM1NTBiYjYwMTJkZWMwYjU2YTM1YTI3Nzk2ZjMgbGVnYWN5LXRydW5rCis1MzY1NyBkNTA5OTQ2OTNjOTI1NmZkMWUxYmNiZDcwZWVjZWFjODk1MWZlNDgzIHJlbGVhc2UyNS1tYWludAorNTM2NTggNDg3ZWYwZjkwM2UwMTU4NDE3Yzc4NWI5NGQxYzAzOThkY2E2OGM4YyBsZWdhY3ktdHJ1bmsKKzUzNjU5IDhlYjAzYjExODE2NDBmMTllNTQ5OWIyMmMyZDNlMjRmYmUyM2U0ZGYgcmVsZWFzZTI1LW1haW50Cis1MzY2MCAyOTAwYzc1NjQwNTVkNjJjMmRmODBhNjdiMjdmNzQ4NWY2MjY2ZWY3IGxlZ2FjeS10cnVuaworNTM2NjEgMzAyMjc3OGVlMGNjNmQzNmZiNTQ4NjcxNzM4N2RiM2QwYjEzZjQyNSByZWxlYXNlMjUtbWFpbnQKKzUzNjYyIGZmYWFhZTAyYzY2MjljYzU1Njg4ZWQ4ZTM2ZWUwMTUxNTk0MDdmZGQgbGVnYWN5LXRydW5rCis1MzY2MyBhMmQ3ZjRjMjllNWIwODkxM2RmZTdmYzk5NDM5OGJmZWQ1OGVlNDk0IHJlbGVhc2UyNS1tYWludAorNTM2NjQgYzk5NGMyNDVkOWFiNWNmOTY1NzA1NDg0NGNjMTAzODcwN2Q3ZTE1ZCBsZWdhY3ktdHJ1bmsKKzUzNjY1IGQ4ZmIwZjZhYWFkNDNjYjJmODIwMzg4YjIwM2NiOWIxZGFjZWMxN2IgcmVsZWFzZTI1LW1haW50Cis1MzY2NiAxYWQwNTY4NzM3ZjYxMDEzMjRhNTQ3NTJmZGExNzJiOWVkNzU2ZGJjIGxlZ2FjeS10cnVuaworNTM2NjcgNDdiYjI4MDNlYjFiZTM2OWRmMzhiOWNmNjgxYzQyN2FlZTExYTkwYyByZWxlYXNlMjUtbWFpbnQKKzUzNjY4IDFmNzFhMzJmOThkMjNiYzAzMDQxYWQ2ZWE3NjYwZmE4NzkwMTkxOGUgbGVnYWN5LXRydW5rCis1MzY2OSBhMDRjNzgxNTQ2ZWQyYTk3YjNmNWI2YmJjODUzZDBjM2IxMDBkODRkIHJlbGVhc2UyNS1tYWludAorNTM2NzAgOWY1ZWFlYTNjNzk1NDA5YmMzMzU4ZmFmYjRmOWVkYzZhOTExMDkxYyBsZWdhY3ktdHJ1bmsKKzUzNjcxIGU3NzZjODNhMGMxOWUyNzNlNzIwOGYxY2ZkMmE5NjFiMGE0NGZiOTAgbGVnYWN5LXRydW5rCis1MzY3MiA3MTU2Y2ZkYzM2NjdlM2JmZDA1MmQ0MThiZGEzNmY5MmI1OTkxYzdiIHJlbGVhc2UyNS1tYWludAorNTM2NzkgZjdlOTA3MWMzYTFmMDBlZDcxMjRmMWRlMGRlMGEyOGUxZGU2YzhmNyBsZWdhY3ktdHJ1bmsKKzUzNjg1IDc5M2UwMzIzZDRkNjViZmM4OWI0MGQ3ODE2MmNkNzcxYzU3NWExOGUgcDN5aworNTM2ODYgNGNkZjIxYTBkYmJjZTg5MWU3NWE5MjBkNGZhZjRjMGVjYmRkODMzMiBwM3lrCis1MzY4OCAxZDU0M2EzMjAzNDYxMDczMDVjNDkxM2Q4MjdkMTQ5ZjIwYTQzNDg3IHAzeWsKKzUzNjg5IGY2ZjM5MWQxZDA1MGZlMzZkMDAyOGZlYzJkY2UxMjJiZjMwYzQ0ZTkgbGVnYWN5LXRydW5rCis1MzY5MCA4M2VmZmY0ZDVhZTk0MjU4ZWM2OTJjZWJmYjE4MmJmY2VlZjcwYzViIHJlbGVhc2UyNS1tYWludAorNTM2OTEgNGQ5MTU2NDY0NjczNmRmNzEwNzgxOGEyOTlhZGNhYjU2YzQzOTgzZCBsZWdhY3ktdHJ1bmsKKzUzNjkyIGI3MDQyYmRmOTBhOWJhZTQxNGY0MTQxNThhNjEzNzgxZGU2OGRmZjUgcmVsZWFzZTI1LW1haW50Cis1MzY5MyA5ODQwNDFlNzQ0NmQzMWM2YTNiYTA0YjVjNTlhMDA4YzZlYWFkNTczIGxlZ2FjeS10cnVuaworNTM2OTQgZDJmZTg5M2E0ODQzNzI1NzA1OTcwM2QwNjE4ZTY4YjZmYTMzN2ZlZSByZWxlYXNlMjUtbWFpbnQKKzUzNjk3IDI2NmMxYjBmOWUxNmM2ODg2NjQ2YWIyOTM3ZTA0NDBiNjZlNmM0MTYgbGVnYWN5LXRydW5rCis1MzY5OCBiZTI5NTg3ODI1NmFhYmNmM2VlMDYzZGMwZWRiNmJlNTNkYTI5NTc3IHJlbGVhc2UyNS1tYWludAorNTM3MDEgMjI3NjBkNTNkNGRhNWQyODc3ZjgxNGZhMTlkZDYxYmY3MDA2YWJhNiBwM3lrCis1MzcwMiAwY2UxNGM0Y2ExMzM3ZDEwNjgzYTQ2OWE3N2FjNDNhYzg4YmU0YmRhIHAzeWsKKzUzNzAzIDY5MTdjNjc2YzkyZmJiNDljZDFiMTI1MjJkOTNhNzNhMzhmZDRlOWEgcDN5aworNTM3MDQgZTlhNjIzNGIyNmFmZDFlMDI1Mzk2MzI1NTIzYWNiYTNkMWEzZmFmMSBwM3lrCis1MzcwNSBlOGIyOTEzZjkyOTdmNDdmOTQyYzE1ZDNhOTNmMWRiMDA2NDEyMjlhIHAzeWsKKzUzNzA2IDhkOWEwZWM0ZDk3NjAwNzc2Mzk4ZTk5NmRkZDJkMjhkMGUwOTE2YmQgcDN5aworNTM3MDcgOWZkOTY0MDg4ZTA3MDVmNTJlODUwNTdlYTAyZWViMTc1Mzk2N2Q4NiBwM3lrCis1MzcwOCA4MWU0MDM0YWQ4ODM3NjEyMDI2ZmYxZWRkZjgxZWUzNTVmMTllNDYyIHAzeWsKKzUzNzA5IGMxNWNmZjJkZDE4ZjVjZWQ5NTliNDVmMTE3ZDNiMTQwOTIzMTMwOGEgcDN5aworNTM3MTAgYjdmODlkYjlhMWQwNWFhODY0NWE1NzhiYjY4YTdhNDNjYWNlZTg2YyBwM3lrCis1MzcxMSA0M2UzNjljYzAyYzU1ZjQ3M2Y2ZDRhNzU2ZjVmZmM4ZDQxODkzNzJlIHAzeWsKKzUzNzEyIGM0YmU0OTNkY2I2Zjk0YjU2YmI2YzVjZGJmZDcxMzI2ZTE3NjU3ODUgcDN5aworNTM3MTMgZmZkYzhkMzk4ZTQ5MTFiN2M0MWM4ZWNjYzc3MmE3ZjlkNWU2YmNjZSBwM3lrCis1MzcxNCA3MjI3N2UxOTY3YjJiNmRmY2UyMjQzY2Q3ZWU5MTJmNGJlMTFiN2QzIHAzeWsKKzUzNzE1IDA0ZjVjYmM3NDQyNDFkYmQ0NjRlNDkzZWViMGE4NWVkYWEwZTkzY2EgcDN5aworNTM3MTYgNjc1MjVlZmM5OWM1N2Y3YTk3NGI4ZTM0MGY4MjUxYTU4ZGZiZjMzMyBwM3lrCis1MzcxNyBhZThlZTllNWU4MTUwMzhmY2Y2MDhjMDQ5ZDk0MDUxOWY5MzBmZWY0IHAzeWsKKzUzNzE4IDU2MjJhMTNhZDhhYjExZDcwMTNlMTE2YmFhM2U2ZmYyMTViMmExZjUgcDN5aworNTM3MTkgZTI4MDBlOGRkOWM0ODRjNGE5ODk1ZmNiYTY5NThhZDJmN2JiOGQ0YiBwM3lrCis1MzcyMSA0MzVlZDY0MWEzMzNmODMzOTYzM2FlNzExMTEyOWZiZTFmM2Y4MmNiIHAzeWsKKzUzNzIzIGVhZWRmODRlYWJjZGY2ODM4ZGRkODQ5YWE0MTZjN2I4N2JmNzI5OWYgcDN5aworNTM3MjQgN2RhMmFlMWE0ZjcwOWQwZjE0ZDNhOWU1OGFkNmZkOGIyZTcxYTllYSBwM3lrCis1MzcyNyBmMjI5NjQ1ZDYwN2RkZTNlOTBmMTMzZDM0OGUwMjA5ZDZjZDk5ODE4IHAzeWsKKzUzNzMxIDM1M2MwMDlmNmM1Mzg1MjU0MGZhY2JhMGQzMWM2NTNlY2E3NmRjOTggbGVnYWN5LXRydW5rCis1MzczMiBmMzQwY2IwNDViZjkyZDBlNzc3MjM4NWE3MTk3ZTliMGFmMzdmMGE4IHAzeWsKKzUzNzM0IDRhMDFmNmUwMjAxNjg4NjQxZGY1YWY5Njk0ZDI5ODEwNDZlZGM1YzEgcDN5aworNTM3MzUgNWRiY2UyZWExMzNjM2MwMWU3NmIwYzZkM2E0OTQxNjk1YWJiYTkxYiBsZWdhY3ktdHJ1bmsKKzUzNzM2IDkwNTM2YmUwOTNmN2RhNWY5ZGU2NjM4YjFkNjUxMWRiMDNiNzdjY2IgcmVsZWFzZTI0LW1haW50Cis1MzczNyBmY2Y2OTAyZjIxMGVkM2IwNmI5NWJjNTIwNDUxZTc0OWJlYmNmZmQ4IHJlbGVhc2UyNS1tYWludAorNTM3MzggY2I4MTIzYWIyYTA2NWQ4YTA5MGQxNDIzY2ZhYTEyMTNjY2NlM2U0MiBwM3lrCis1MzczOSA1ZGU3NTQ3YTVhMjM3MTExMTM4NjYxMmE5YTlhMmZhNjIzYzA2NGVkIHAzeWsKKzUzNzQwIDNkMThkOGYzNjZiMTE4NGQ2MTliYTc0OTUwYTNkNzE1OGQ2NGQyNTkgcDN5aworNTM3NDEgMjlkNjU3NDFmNmM4OTZmMmUxYzE5M2UwMjBjZjdkZGI0MTI3MjliMSBsZWdhY3ktdHJ1bmsKKzUzNzQyIGE4NDQ2MGU1MzE2MDkzZDAwMzBmZWI4Yzc2MGFjMWMzYTk4ODU3MjQgcDN5aworNTM3NDMgNWVmNzBjNDlkODVhMjQzMzViNDNhZjQzYzNmMDliNmRmNjMxOTJhMyBwM3lrCis1Mzc0NiBlNjY4NWM4NDBlZTNjMTFhOTFlMGEzMzcyMWE1N2IxN2NmNTFmODM3IHAzeWsKKzUzNzQ3IDQyOWE0YmMzMWM4ZTM2NzBlNzAwMGZhNTQwOWM3ZTJiODBmNTQ3NTAgcDN5aworNTM3NDggZGNhOWJjODgzMDQwOTY1OGZiNzcyYTZkMGIzMDUzYzZkZDQzNDVkNSBwM3lrCis1Mzc0OSA1MDMzMGQxOGQxY2Q3MTQxYmFmYzJjOGE5OTgwYThiOGNhODgzZDc2IHAzeWsKKzUzNzUxIDE4MGQ0ZTg5OTY4MzkwNjlmY2E4ODE5Y2Y5ZjNjY2M1ZWEyZWEzZTEgbGVnYWN5LXRydW5rCis1Mzc1MiBlYzFlYmRmNTRlYWZkOWFiYjE0MjQxOGRjNjVjYmE0YTYyZGQzMDBhIGxlZ2FjeS10cnVuaworNTM3NTMgYmJlNmRlM2E5NzQ1MDA2ZjQxMjVhYWMzMjcyY2ViYzQzM2YzZTNlYyByZWxlYXNlMjUtbWFpbnQKKzUzNzU0IDcyNGUwYjYzYTc5YjVkNGIwY2IxNjdhYjhmOTYwZWM1MWU2YjM5MjggbGVnYWN5LXRydW5rCis1Mzc1NSA3YWQyOWU5OWVlYzg1NzI2MjBmY2YwOTg3MDNhYTU1ZDYwNGI5NzY1IHJlbGVhc2UyNS1tYWludAorNTM3NTcgMzJkNDZhYmFhOGFiYTRjNWU3YTljYTgyOTUyNTIzY2RjZDgxZDk2OCBsZWdhY3ktdHJ1bmsKKzUzNzU5IDlkMjUzY2QzOGI1YjY1YTNkNmM2NGM0OGY4Y2FmMzQ1ZTU1ZTQyNmIgcDN5aworNTM3NjAgMjhjNGQ5Yjc3NDBlZDAxMDM4NTczZWZhYzcwMWZlNzAxNzhjYjA0NSBiY2Fubm9uLXNhbmRib3hpbmcKKzUzNzYxIDM1YzBkMzhhY2RjZTA4MDJmM2JiZDA0N2Q2YzAwM2VjYzAwYzE0ODkgYmNhbm5vbi1vYmpjYXAKKzUzNzYyIGQ0YTZhNjdhMDBhMGJhMzViYzIxYjlhYzMyMDNlOWIwODU4MGIwYjQgcGVwMzAyX3BoYXNlMgorNTM3NjMgODFkNjhkZDg0YWEwNWNmOGQ1OGRmNTVhZjE3NDZkODFhOTk5ZmIxNCBsZWdhY3ktdHJ1bmsKKzUzNzY0IDFkYmE2MWMwNzcwMzRlMTY4N2ExZmY2MTVhYzJkYjdiYWYwODcyZWEgcmVsZWFzZTI1LW1haW50Cis1Mzc2NSBkYWYwNjM1MjdiOTcyMTRjOTVlMjczMjdkZGQ5OTJlYzA3ZTRkMDJlIGxlZ2FjeS10cnVuaworNTM3NjYgZDk0OTkzM2NkNmI0NmM3MmNmN2M0MDI5MTQxMmQyYzZlYjdhZjYxOSBsZWdhY3ktdHJ1bmsKKzUzNzY3IGJkMjRkMzgyNmNjODNkZjBjOWI1OGNkZGYxYzdlMmM0YzczMjYyZjQgbGVnYWN5LXRydW5rCis1Mzc2OCAxNzdhN2JlZTY0ZTllYjJkMzc3MmNlZmY4MWQxOWMyYzlhOWFlZGE0IHJlbGVhc2UyNS1tYWludAorNTM3NjkgM2JiZWM5MWM1YjhmZTY2ZWMzNGYwZjhmMWFiMDg4NGExNGE4OTMwZSBsZWdhY3ktdHJ1bmsKKzUzNzcwIDg4NWE3N2ZkNWMwMWM3ZGJmODNhMjlkNWRjYmU5OWY1OTZhMDkwNzEgcmVsZWFzZTI1LW1haW50Cis1Mzc3MSAzOTgzZWUwZjZmOTY0ZGJiMjI4ZjVlMWIxNTJkYmFkZTk4YWM1NTlkIGxlZ2FjeS10cnVuaworNTM3NzIgZDQ3NjhiZmY2NDNlYTgxM2Y2NmViNmQ3OTcyMTVkMmI1MmE1YTJlOCBsZWdhY3ktdHJ1bmsKKzUzNzczIGFiZmQ5NTE4NWFiOTkxOTM2OTQxZGFkYzQwZGFkZjVhZDIxZjZiYjQgcDN5aworNTM3NzQgOTBlMjJmZWE4MzYzNDQ1NjdkYzU1ZGU4YTlhOGEwZGFiN2NlODNjOSBsZWdhY3ktdHJ1bmsKKzUzNzc1IGRjNTY3ODliMjllOWE2M2I0ZjU3MDRmMGQ4MTQ1MTAzOTcxZjE4OWMgbGVnYWN5LXRydW5rCis1Mzc3NiBhNjU0NmMyNzM2OWE2YzRmMTMwZTZkZjEwZWM2N2ExNWJiZmRmMjMzIGxlZ2FjeS10cnVuaworNTM3NzcgMDk3MmMyMTc2YWY5YjlhOTBmOGZjYjBmYzRlYTVkYjQxYjJhZGFjNSByZWxlYXNlMjUtbWFpbnQKKzUzNzc4IGE2MjE4NGIwM2YwZjE1MDJkMGFiOGU3ZGVmOTJjOWI2NjZiZmE2ODIgbGVnYWN5LXRydW5rCis1Mzc3OSA3MzQ4MWUwNzc3NThhOTQxOTNmYjAxMWZlOTY2YWM1OTc4ZWVkYzkxIHAzeWsKKzUzNzgwIDUwMmRlMDc5YWIzYTIwNTIwMzM1MWEwZmY1MDJiOGQ4NDA5Njk2MDIgcDN5aworNTM3ODEgMWQ1M2VhMGZjMjNmMTVmNWQyYzYwNTc2ZTk2YzMwNWJjMGZhNzI2NyBwM3lrCis1Mzc4MiA0OGI2ZDAxNTM0MGFlNjk3ODhiNTk2OTM0ZjA0M2YzZjFmNTcyMjI3IGxlZ2FjeS10cnVuaworNTM3ODMgN2U0YjYzNWYxZDMxZGJhMGQ3ZWFlMWUxM2FiM2U4MGNjNGZhM2EyOSBsZWdhY3ktdHJ1bmsKKzUzNzg0IDk5YjBlMDRiMmViMWNhMDExZjhmYTgzYjMyZWM0NzgxM2Q1YzM2YjUgcmVsZWFzZTI1LW1haW50Cis1Mzc4NSAyYTI1MzI4ODNkODBmYjM3MmRiMmUzZWVhOGUyN2NlZTk2ZDc3N2Q2IGxlZ2FjeS10cnVuaworNTM3ODYgOTE0ZGQ1MDU5ZjM4ZjMyMjU1N2E4MjQ0M2NlMjhmNjFmNWNmMDJhMyByZWxlYXNlMjUtbWFpbnQKKzUzNzg3IDQ3NDk3N2NkNGQ5Yzg0NDE0MjhhOTE0M2QzN2VhYWEzNzE2MzA3NWIgbGVnYWN5LXRydW5rCis1Mzc4OCAyOWZiOGRiZDEwYjg1ZjRiMjlmNzk4OWQwNDVkOTYzMjdkM2I3OWFmIHJlbGVhc2UyNS1tYWludAorNTM4MDAgYmMyYmQwZjAxZDk1YjU0MzQ5NmZmYTE2YzViYmY2YTQyNTRhNThlMyBsZWdhY3ktdHJ1bmsKKzUzODAxIGI0YjMyNzg0MGZiMTUxMGU5N2M1NDA5NDA2MTQ2NjE0ZjU3NTNiZjAgbGVnYWN5LXRydW5rCis1MzgwOSBmNGY2OTVhNzU2NjRhZjNiYmYyZjc4NWQwNTMzZTNkNmNkY2U1ZDRiIGxlZ2FjeS10cnVuaworNTM4MTEgZDc5NWE1NWU5YmU0MWQ2ZDlkNTIwZDI3M2JmNjU2ZGZjMGRiMjY2OSByZWxlYXNlMjUtbWFpbnQKKzUzODEyIDczNmYzZDkwZTRlMjg0ODZmNzA3NWNjMDM4Mzc0MDY5OGQyYWQyNTMgcmVsZWFzZTI0LW1haW50Cis1MzgxNiA5ZTM1NjQ1YWY0MGY2ODJlY2MyZjkxZjY5ZTQwY2Q3MWRkNTg0NDA3IHJlbGVhc2UyNS1tYWludAorNTM4MTcgMzVhZTI4MjU3YTI4MDViNGE3MWU5ZWIxM2IxNzgwZjNlZDFmMDhlMCByZWxlYXNlMjUtbWFpbnQKKzUzODE4IGIwZjhlOWIwY2MxOTkyOGNjZjk3M2E1NTI4ZmZhNDNiNzc3N2ZmYWMgbGVnYWN5LXRydW5rCis1MzgxOSA4MWI1ZGY1Nzk4YzI3YTVhNGIwYzk4ZTFjZWYxOGVjZmZlNWViODk5IHJlbGVhc2UyNS1tYWludAorNTM4MjAgMzZkN2IzYjZlZTU5NmZlODE4ODE4MGU4OTJlNmZlZGZmMDZmZDQwNSBsZWdhY3ktdHJ1bmsKKzUzODIxIGQzODZiNDYwOTkzYjczYjg2ZmZkYWNjMDgyYzUyNTNlZWM0NTA1MmIgbGVnYWN5LXRydW5rCis1MzgyMiBkZjAyMDRjYTk3MzlmMTU3NWVmMDNhOWNiZDNkMjMwYTllNTZjOTZhIGxlZ2FjeS10cnVuaworNTM4MjMgMGNjNDUwYjg5ODM4OTE2ZDE1MjNiYjQ3Y2UwZTRiZjg1NTYxZWYyMCBsZWdhY3ktdHJ1bmsKKzUzODI0IGM5ZTQxM2IxZDU0MDZhMGE4YmY3Yjk0NDZjNGY3YmRiY2I0ZTM1NmEgbGVnYWN5LXRydW5rCis1MzgyNSA1NzdiZjIxYjJjODZkY2UwNWIwMDMxNDQ2OTlhYTE4YzI3MDFiMmNjIGxlZ2FjeS10cnVuaworNTM4MjYgNTNmZDE0NGEzZjFhYjNjYjlmMjU4MzAyYWI1Zjk4YTZiZTg1NDY3ZiBsZWdhY3ktdHJ1bmsKKzUzODI3IDY3MmI5MDc1NzY0NzEzZGE4ZDU2MGU3OThlYmEwYWIwMzc1NTlkOGIgbGVnYWN5LXRydW5rCis1MzgyOCBjMzRiZDY1ODllMWVlYmNkMzk3NTMxNzM2OWNjNzJkNmQ5Yzg3NGNiIHJlbGVhc2UyNS1tYWludAorNTM4MjkgZDVhMTVmODUzZGI3NGRlNzZjZTkyNmI1YjUzNTVmMTFiNWVlNjhhMiBsZWdhY3ktdHJ1bmsKKzUzODMwIDAxZDU0Yjg4YmY1ODZlM2I4ZDBiNGE2MzQ5ZTIyZDY3NDYxNTBiOWIgcmVsZWFzZTI1LW1haW50Cis1MzgzNyA2ZmEwZDY4MmUxZTU1MGFhMDFiM2QzM2MxYmQ3MjE2ZDI1MTk2OTFmIGxlZ2FjeS10cnVuaworNTM4MzggODEyODYxOWU5ODRkZTk4Y2Q2NzE0MDU0YThkMmE2NDc2ZDk5NTdlNiBsZWdhY3ktdHJ1bmsKKzUzODQxIDQzNzk3Mzg0MTE1ZTU5ODg4MWU2MTE2YTAzZGIwNzc0MzRkNzljMWYgcDN5aworNTM4NDMgNTVkZWIxZGE0Y2I4ZGUxNjM1MzEyZTRmZGQxZmM5NTExZWQ3NzgzOCBwM3lrCis1Mzg0NCBlNjhiNDhjMzlkOGFjYjUzZjNmMzE1Zjg3OWYxOGJhM2UzOTgzMWMyIHAzeWsKKzUzODQ1IDYwODgzZTYxNDI5OGYzMWE2Y2U2OWRmNDQ0Zjg4ZWM2NzYyNGE0NTEgcDN5aworNTM4NTIgM2ZiY2Q2ZTJiY2I3N2RkZDljZDA4MjQ4MjRhYzNhZGQ5OTNiMzFhOCBwM3lrCis1Mzg1MyAzNDI3YTk3MzQ1ZmNmZTc0OGNkNGM4OTFhNjM5NGJiYmU4ZGYxMmIyIHAzeWsKKzUzODU0IGMxNjRiMGI3NTk3MTYwZWY1MjI0ODgyMjEzY2JmNDQ2OTdlNzU3NWQgcDN5aworNTM4NTUgMTI0ODlhNWRmYjRhYjAyZWY2MzczZmIzZGFlOGExMGRiNTE1ZWNlYyBwM3lrCis1Mzg1NiA5MDk3NjVlYjM4MWJkZjViNzg0YmNhODljYzU3NjlhNDA2Nzk1ZjkwIHAzeWsKKzUzODU3IDI5OTg3MjQ0OTA1ZGZmZDQ0YmEzZTVhMDdmMzEyZmM4OTVhY2Y4ZDcgcDN5aworNTM4NTggYzUwZTI2MzMwMWRhYmI1MWYwYTc2Y2ZlMTRkNjk0N2Q4YjI1ZDUxNyBwM3lrCis1Mzg1OSAyMGUwOGE4NzkxNWE1NWFhODUyYmY2MjYzNTYxNjUwZTAzN2Q4ZjQ4IHAzeWsKKzUzODYxIGYzYTU5YWNjYTUxZmZlODcyNDA4N2M2OGQ0ZDE1MDA4MzAzODZhZjIgbGVnYWN5LXRydW5rCis1Mzg2NCBjOTNmOTJhN2Q5MjAyZTJhNTIwYjgxNDRmMDEyOWUzNTMyNTI4ZjJiIGxlZ2FjeS10cnVuaworNTM4NjYgMzJjNDg5N2I1ZDQ2YzAwZWVlY2VmMWJhZWM3ZGMyMWQwZDFiYjVjMSBwM3lrCis1Mzg2NyAzYmFjNDkyNThhNGE1ODBmOGQ5OTUwNTk0ZjU4Y2Y3ZjE5NWVlZTg5IHAzeWstbm9zbGljZQorNTM4NzIgMGVhMjRmNGYyNDY3YWZjNDkzZDEzNGY1NThhYTQ3MGNiZTgwNDdlOCBwM3lrCis1Mzg3MyBiZDE0MTllOTQ3NzNmMDhhMGJlZDYxMTQyNDBmYTNlMjM5YjE5YzQ3IHAzeWsKKzUzODc0IGIwNTc5MGQwNjZiNDc0NGU1MmQzYzcyZDkyOWJkZjE4N2NjMTYwZjQgcDN5aworNTM4NzUgNTgzZmU3NTNlNzIxMjk3OTEwMWI0ZWUzMmU4NWUwZDNkMTUzMTEwMSBwM3lrCis1Mzg5MiBiNThhNDM3NGFjMjFlNDViMWEwNjJmMGU3ZmZjMDBkMDMzZDg1Yjk5IHAzeWsKKzUzODk3IDQyZTc5YzU5MjEyZDIyZDI1MmEwNGY4NTViN2Y3OWIzMmIxNDAzNjkgcDN5aworNTM4OTggOTMwNDdlZTQ4NmRhNGEwOWY0ZGRhMmQzYzZhM2QzZDUyMTUyYTQ1YSBwM3lrCis1Mzg5OSAyZTRkYWMwNTljYzU0YjNhNDBlMjM3Y2RjYTU5OGUzODdhNTczNDMzIGxlZ2FjeS10cnVuaworNTM5MDAgNjVjZDFmMjgwZTYzYzBiNjZlMGU2ODdhMDA1NzY4ZjlhYWY4ZWJiZCBsZWdhY3ktdHJ1bmsKKzUzOTAxIDg4MmI5YzE0ODk1YzBjY2U1ZThlMzgwMWM5ZjNjOWZlYWE1MDM0YzEgbGVnYWN5LXRydW5rCis1MzkwMiAxOTFjNDhjYThiZjljMTI2ODE5NTQyOGI4Njc4ZWI4NjJmMzUzYzkxIGxlZ2FjeS10cnVuaworNTM5MDYgZTg1NDI3MTQ5NWRlMTA0NGNhZjZkYWFhMDk1OWYyNTczMTNkN2FiNyBwM3lrCis1MzkwNyA4MzA4OGFkODNhNmIwZjJkYTgzMmFjYmFkNWQ2MWZhMmE4NzQ0MzA5IHJlbGVhc2UyNS1tYWludAorNTM5MTAgMGM0MTBjNzg1MzFjZjMwMjMzYWE4MTc1OTc0Y2ZlMTZlZmQ1OTMzNyBsZWdhY3ktdHJ1bmsKKzUzOTExIGQwMWJkMzdiZjVjZTUyNjE4MGQwYWEzMWNhMzkyZjczNjk3OGI0N2QgbGVnYWN5LXRydW5rCis1MzkxMiBmMmYwYjQxZjI3MGRhZTRjNjk4ZjJjYWZhOGU0NTMwZjFmMzk4OTllIHAzeWsKKzUzOTEzIGVhYWVlNzg1ZWI4NmQ3OGYyNDJjZjQzY2UxODA0ZmE2ZDU2ODdiMDcgcDN5aworNTM5MTQgOTdjNzdiMWUzNGJmMjQzMTIyNTQzZTJlNDFhZjg1YzBjZTcyMDdhNiBwM3lrCis1MzkxNSBhOGMzYWFhYjAwZWEyMzI0YTZmMDE4MDY3ODZkNzFlNzhlMDI2MTZiIHAzeWsKKzUzOTE2IDE5YWZiMDMwMmEwNmViMWU2YWJjNzU1ZjI0ZjUzZGUyMmE3Yzc0ZGUgdHdvdXRlcnMtZGljdHZpZXdzLWJhY2twb3J0Cis1MzkxOSBkODQyZTM1ZjVhMzEwZTU0NmVlNTZhMDViZDEwNTYxZTVkYmNiNzBkIGxlZ2FjeS10cnVuaworNTM5MjAgMDcwYjlhMGI0YzA0MDQwN2YzN2JlMjllNGMzOTkzZmE1YjM2YWFhOSByZWxlYXNlMjUtbWFpbnQKKzUzOTIxIDEzZjM5MzFiOWZjNDY5Mjk0MmUzZWNlNjJkZDBmYjliNjkwNjcwOTcgcmVsZWFzZTI0LW1haW50Cis1MzkyMiBmNTc5MGY5NmFjZjNjMzlkZGNjN2QxZmMxN2FlZWEyY2U3ODk2MWY4IHAzeWsKKzUzOTI2IDViZDNhMjJiYTQ5NmIxYzQwOTJjMmQ0MmE0MDUwZGRmNGIxNGI1NDcgcDN5aworNTM5MjggMWI5NzJiN2UzNTJhZGYzMTA1MjkxNTEyNzBlZDE5YTk4OTFjOTVkNSBwM3lrCis1MzkyOSA0MGIxN2FmYzRhYTdiZjcxYjUwNGM5NDg3NjZmZmU0MGI4Mjg5NzY4IHAzeWsKKzUzOTMwIDBkMmRjMzYxMWUzYjM4MjZmZmQ5MzE1NjU0MDllMWMxOGJkZWIwMGIgcDN5aworNTM5MzEgNjEwYzdhY2M5OTgyOGU2MmUxZmQzN2ZiMGY2N2I4NmU0NTEyYTkzZiBwM3lrCis1MzkzMiBiZTQxZGE2NmNlMzdmNjQxZjViNjU2ZGZhOWU5ZjUyYjY5YjVmNWMxIHAzeWsKKzUzOTMzIDI1YTg0OTAwZTIwNTVjMTRjNzY2MGU0Y2U2MzViNTY0ODc0NWZmMTEgcDN5aworNTM5MzQgMDM4ODNhY2I2NTBiODA4YzY5ZGY0NjE5MjdmZGFjZDM1MGQxN2RjZSBwM3lrCis1MzkzNSA2MjE0NDNmYzAxYmJhMTU1OWQwOGJjYmJiNGZjNTYyYzI2M2JiNzU5IGxlZ2FjeS10cnVuaworNTM5MzYgOWQxYjBjMjk1ZWJiYzBmYzE3OGM2MmM0MWU5ZjYxYjEzMGQzNWM0OCByZWxlYXNlMjUtbWFpbnQKKzUzOTM3IDkzZjU4MjgwMzczMzA0ZGUyMTljOGEwNWM2NmZlMzkxMGI0Yjk4ODYgcDN5aworNTM5MzggN2JjN2Y3NDBmNjlmZGM5ZjkyZmQ1NDg4MjA3YTBmM2IzMDNmYTE0OSBwM3lrCis1MzkzOSBjMzQ1MWE3N2JmZDE2NGRmNWRmY2Q4MzcwZDUwOTg3ZDg5OTNmZDAyIHAzeWsKKzUzOTQyIDkwYzgwN2VlODc2N2IxYmI2NTA4MWI2YmFjYmJkMjY0OTE3ZDU2YWIgcDN5aworNTM5NDMgZWNlOGEzOWZhMjgyZWRjNjJlMTRmYjc2OWNiMTM4M2I2ZmQ3NDhmZCBsZWdhY3ktdHJ1bmsKKzUzOTQ1IDU1ZDdlOGZhNWVhOGQ0ZmE4ZTcxNzA3MzBkZjU1NmFiZDdkMWQ3YTIgcDN5aworNTM5NDYgYTI2MjliZTFiMWQwMTU5OTI3MTkyYTNjYWRlNTE1ZGRlNTIxODY5YSBwM3lrCis1Mzk0NyA4OWJhOTNjNzAxYzg4NDczOTZkODJmOTY1YzY3NWNhZDVhYjVlZDk5IGxlZ2FjeS10cnVuaworNTM5NDkgNDVhZmZhZTQ2NWU0MTE5MjkxODE0MmZlZmY3NDZmMjA0ZjUxZmZlMyBsZWdhY3ktdHJ1bmsKKzUzOTUxIDAzNzZmMTNhMWFmOTEzMDcwNDJkYzRhNWIyZjU4N2EzZWQ5YmIyZDMgbGVnYWN5LXRydW5rCis1Mzk1MiA2YWExYmU1ZGQwMDk4YjM1NzFmMzViYTcyMzk5NzI4MjRlMjdkMWRmIHAzeWsKKzUzOTUzIDJjMDNkNzA2ODM1ZTQ2MGJiZGM4ODgxMWM1NDBmOTEwNzgzNGIwMDIgdHdvdXRlcnMtZGljdHZpZXdzLWJhY2twb3J0Cis1Mzk1NCAwNDdlZTIzYzBmODc4ZTkzM2VjMjg0ODIxYWJmZmQ5NzNhNGQ5NDEzIGxlZ2FjeS10cnVuaworNTM5NTUgYzhjMDY3MzAyNjU5OWJjZDY0MGVmYWE5NTM2ZDRkMjkzNmQ2OTllMCBsZWdhY3ktdHJ1bmsKKzUzOTU2IDE4NTNjZjA2ZTM2YmEzMTJhYmQxMjNlOGMyZDE2OTg5OGI0NzdkMjggcDN5aworNTM5NTcgMmNhMTRkNmEzNjliNzI1YjEzZDQ5YjBhZTM3N2IzM2IyNTM0MjZkYiBwM3lrCis1Mzk1OCA4NjQ3MTkwZGI5NmNkMWFhOGI0M2IyNjRmMzFiNThiZDhiYzA0MmUzIHR3b3V0ZXJzLWRpY3R2aWV3cy1iYWNrcG9ydAorNTM5NTkgZmMyM2ZjODYzOWJhZjAwZGU1MWI0NDY1MTdmZWU5NmEyNDFkNzEwMiB0d291dGVycy1kaWN0dmlld3MtYmFja3BvcnQKKzUzOTYwIDRiOWQwZGFjNzljY2MwOWJjMWY3YjQ2MjEyYzcwMmYxNDAwNDM1YzMgcDN5aworNTM5NjEgYzc5ZTYyMzRmYjE5ZWY2YTM0Y2VhNWEyNTljZDBkZDZiZjZiMzRhMCBwM3lrCis1Mzk2MiBiYjczZDNhMDQ1N2U5NzdkODQ4OTYwYmRlZWMyZTc5NThjZWU2NjI3IHAzeWsKKzUzOTYzIDdmNzA3NGQ0ZjgyY2Y3MGNhMWQ3MDk4ZDNjZDIzODY3OTRmOTZmNTQgcDN5aworNTM5NjQgZDk3NmM5YTYzMTExNGE4ZmFiMWIwZjUxMTMzYmI0Y2ExMjA4MmQ0OSBwM3lrCis1Mzk2NSBiMDgyNmU4ZTQ1Yzc4ZWY1NDg4YmY4YTQ4YjljZWM4NzczNjE5YmU4IHAzeWsKKzUzOTY2IDMwOTNlYTliNDAyNDk3MjgxOWRjMDc3NDJlYzAwM2RiYzA2OGFiZTUgcDN5aworNTM5NjcgZTc1OWZkOGQ5NWFlN2JjY2M0NjI1OWUxZTA0ZDFhNWFmZDg0MzY0YiBwM3lrCis1Mzk2OCAxZTRlMjkyNDg2YjY4ODg5ODYyYTgwNDdjODAxMDk2NDAxMGJkYjM4IHR3b3V0ZXJzLWRpY3R2aWV3cy1iYWNrcG9ydAorNTM5NjkgZjNmMGM2OTdhYTViMTYzMmVkMmUwYzRhZjNkZDkwZGUyM2UzMzhjOSBsZWdhY3ktdHJ1bmsKKzUzOTcwIGVlMzYwMmM3YWUwNDE0NzRhOGM3NWRhZDA0ZGNiZDNkZmRhMDUwOWUgbGVnYWN5LXRydW5rCis1Mzk3MSA0MzA4MTFiZGJmZWY2NmJjOWE4NWVjOTRjY2I3YWI2OTk4OWFhY2RlIHJlbGVhc2UyNS1tYWludAorNTM5NzIgOTRjNGUzNmMzMTI0MmI4OWUwMjYwMTUwYjEyYWViMmMxZmQxMjEyNSBwM3lrCis1Mzk3MyBkYTczYjVhMGZkOTBhYmEzMmM0Y2IxZDA5MzRkZDA0YTNkNzI4ZDg5IHAzeWsKKzUzOTc0IDJjZTIyOWE3YmEzZjY5ZWM1NDdlNzlkYzQwYTViMmQ1N2Y1OGY0MDYgcmVsZWFzZTI1LW1haW50Cis1Mzk3NSBjODNhY2ZiMWE2MzJmNzk0NmYzNDZlNzIyZjcwZGU3OTFmM2MyMzQ2IGxlZ2FjeS10cnVuaworNTM5NzYgZmVkYjAzZWFjNmFkNmQxMTA0NTA0OGQyODk2YjFlN2ViMGFmNzQyZSBsZWdhY3ktdHJ1bmsKKzUzOTc3IGFhMTk1YTFhYTk1NTI4Yjg4NTMyMmRmZmFiYjRiZTMwNDE4YTM3MTEgdHdvdXRlcnMtZGljdHZpZXdzLWJhY2twb3J0Cis1Mzk3OCBlNWU5ODM3ZGE3MGI3ODYwMGE4MGE1MmU3NzI2ZmMyMzkyNGU3MWZmIHAzeWsKKzUzOTc5IDBlYTUyNTU4YmRmZWMyOWFmOWNkOWM5OGUwYzA1ZGIyYmQyNWEwMjIgcDN5aworNTM5ODEgNTQxYThiMWI1ZGE3NWQ5YWY1NDk0MzQ3MDRiMWFiNTYzYjcyMDc3MiBsZWdhY3ktdHJ1bmsKKzUzOTgyIGU2NmRkYjZlMzRlODQ0Njc3NjVhNzZkZTdjY2UzY2ViMzM0OWQ2NGMgcDN5aworNTM5ODMgNDE2MjkyYzgyNDljZThjOTA4MGM1NDExMWZhNzg4NDcwNWZhZWM4NSBwM3lrCis1Mzk4NCBjMjRlOTVkMTE3NTIwMWI1NzQ3MDQxNWFiYzNiMGUyYTBjYjQ3YWFkIHAzeWsKKzUzOTg1IGQ1NTQ2ZjA5ZjIwZTc2MzhiNzU4MjQ4ZTVkNTRmMWI4NzZlMmFhZDIgcDN5aworNTM5ODYgMzBlNWNiM2E1NWFjMzE0N2Q5ZTkyZWEzODhmNGY3OTQ1NjE2ZTc2NyBwM3lrCis1Mzk4NyAxNDBmMzUyNDAyN2YwZTBiNWE3MGNlMmZmMTU5NGYzMWJhMjQ2YzhkIHAzeWsKKzUzOTg5IGE5ZTZjNzNlMGZhNWIyMTMyYzE1MzFjMzFhYWVmNGNmZmU0ZDUyNmIgcDN5aworNTM5OTAgMmQ5ZDEwNzAyZWM0NGUyZmU0Y2Y4MTQ5YzZjNmYyNWE0MzRlZGMyMiBwM3lrCis1Mzk5MSA2YzBkMGJlODJiNDdiYWYyOWE1ODExODQxYzU4Yzg4MjcyOWFiZGVmIHAzeWsKKzUzOTkyIDExNzc3Yzg4N2Y3Y2UwMGU0YmQ3Y2VhZWM2MTM2OWZmOGI5N2U0NTUgcDN5aworNTM5OTMgYTJjOWViOWFiNjA5Njc0YjQ1MmYzZGJiNDk5OTFiMjY3NWMzNjE2ZCBsZWdhY3ktdHJ1bmsKKzUzOTk0IDBiNDc0NDZjYzQwODRhMDM4MGRiOTY3NzE4ZTQ3ZjcxZGU0MzU4ZTMgbGVnYWN5LXRydW5rCis1Mzk5NSA0NmY3NzFlMjY3YmM4MTU4MjhiNmVkMDZlMDIzY2Q1YzNkNGRjYWEyIHAzeWsKKzUzOTk2IDNjYWJiZmE0Mzk4NDA5M2IxM2Q3Y2M0YjNkZjk0ODk4YzUxMWU3NWEgbGVnYWN5LXRydW5rCis1Mzk5NyBkNjI4MDVhOTkzYzUwODgxOTgyZmY1MWVkMDE2ZTQxYjY5YWM1NmRjIGxlZ2FjeS10cnVuaworNTM5OTggNWVhZDMyMTMwZjY0NmU4YjJlNmFmY2UwZDk3YjMyMzVkNzYxMDFhZSBsZWdhY3ktdHJ1bmsKKzUzOTk5IDRhNGY2ZjAyNmYxYzU4ZjQ5OWFhY2E4MjY2ZWNmMTE3MmIyY2UxNzUgcDN5aworNTQwMDAgNjFmZWUxODUzY2E4OGYzODIwYmY3YTNjNjNmYmY0NWE3MjU2MWQyYiBwM3lrCis1NDAwMSA4MGU4NjFlN2ZhYmU4ODg1ODZlY2RhMjdmNjhjNDk5Y2M0ZjZjZTM4IHAzeWsKKzU0MDAyIGMzYjI4YmE5MThmODNlYmZmMmU0Y2U4MTE2NTRkYTdkNGIzZjIzMTcgcDN5aworNTQwMDMgMWY3OTBkYTc5ODQwOWQ5MWNlODljYmQwYjBkN2VmZWY0NzY5YThiNCBwM3lrCis1NDAwNCA0MzFiMzIzODU5M2VhY2JhYzY1YTU5ZjE0Y2NiNGQ5OWViODE1NzZmIHAzeWsKKzU0MDA4IDc2Mjk2NGY5OTg3MTA0N2JmMDIzOTE5NGNhNzI1NGQxZDMyZDQ2YTUgcDN5aworNTQwMDkgYzAzNDQ3MGUzYzBhZWI5MTY0NzQxMzcyYTU3MGQ5ZWIxNGMwNzc0MiBwM3lrCis1NDAxMCA4YmViNzU0MDJlNzRiZjU1NDdkNGZmNDk3YjdiOGRhMDBjZjhkODM5IHAzeWsKKzU0MDExIDkzMDMxZTcxNjVhYjAxMjlmYmJkOGExMDlmNmJlYWIwMzRlOGY0ZDUgcDN5a19ub19hcmdzX29uX2V4YworNTQwMTIgYmE5MmU5YWRlMzZmMTE3OGFkNDU2NDc1NjgzMzg3NTViNmIzMTNjMyBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDAxMyA2ZDkxZTc0ZmNmNTVlNTIwODZkOGFlM2ZmNGIyYzE4MjUxMDkyYmIxIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDE1IDM0YTdjMjllNjVkMTYyYWYxYTcwODUwMTA4ZWI3NGNjMDY1ZGI5OTggcDN5a19ub19hcmdzX29uX2V4YworNTQwMTYgZTEwM2I5MzdkNzQ3NTEwZTRlZTMxMjBlYWZhM2NkNGRlODk2MjMxMyBsZWdhY3ktdHJ1bmsKKzU0MDE3IGExYWVlODEwYjczOTY4NjA2MGRmZjBkZWUyNzFiMmY5MzRhMGM0ZjAgcDN5a19ub19hcmdzX29uX2V4YworNTQwMTggOTUzM2ViMGU4N2NmZmNiZjUyZjJjYzZmMTBjMmJmZWJkMzRhODc0ZCBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDAxOSBmMjUyNDY4MDU4NTA3ZWM3ZDk0NGQ5ODQzNjgxODMwNWJiZWQwODk2IHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDIwIGJkMzU5MGI4Yzc4ZWU1OTFlMDQxZWM1ZWIzNjNjZGNlMjcyMzA5NzAgcDN5a19ub19hcmdzX29uX2V4YworNTQwMjIgOWRkODZlYWQ1MWMzNzc2Y2Q2YTRhYTFiYzY0YjE3YmFmMDFiZDY3OSBsZWdhY3ktdHJ1bmsKKzU0MDIzIDE2NTQ2MWFkMzhkYjhlMDVlMTgxNTJiYWZiOTA1ZTkwZTA3YzE1YjAgcDN5a19ub19hcmdzX29uX2V4YworNTQwMjQgODNiOGM3MGVmZDFlNWYxYmVhNTgzNDI3MjZhYzVjOGRiNzI0ZjRiZCBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDAyNSA5ZWI2MGEwNzI4NWE0N2VkMzQ3MjZiODdhM2JiNmUxZTdmMzc0MTAyIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDI2IGE4Yzc5YjFlNjk2YWU3ZWQzMmIxODU0NWIzZTMyNTAwN2IxYmUzNGYgbGVnYWN5LXRydW5rCis1NDAyNyAxNjViYmVkMzM3OWQ2ZDNmNDViZTFlZGYyYWUxMmY1ODQ3Mjg2MTBmIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDI4IDJjNmNkOThkYjBiOGYzZTNlNzdjMzZjMDlkN2YyMjY5YjYzN2Q3OGEgcDN5a19ub19hcmdzX29uX2V4YworNTQwMjkgYjM1Y2ZkOGI0OTEwNjE0ZDJiZGQ3MDAxM2VlMDgyYmM5ZTUxNTJmYiBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDAzMCBhYzBlYmFlNDU4NzIyMmRjYTIxZGQxNDc3ZWFmNGM5NDZhNjU3OTNiIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDMxIDRjNTZmY2VmYjI4M2I3ZjZiYTQ1YjRlNWFmZTM5M2NiM2IwMzlhYmIgcDN5a19ub19hcmdzX29uX2V4YworNTQwMzMgNDA4N2MwZWM3MzNiYmE1NGU4MDEzNzI3ZWQ2NGYxNzNiOWE2MTc1ZiBsZWdhY3ktdHJ1bmsKKzU0MDM0IDAxZGRlY2I3NzgxNTQyNjM4MzRlOWIwMGIxY2RhMmFkNjQwOTBlNWUgcDN5a19ub19hcmdzX29uX2V4YworNTQwMzUgZTQ3NmE1YTc4YjI5MzdlNzY3MjEyMmYwMWFiNjY0NTVkYjBhOTNjZiBwM3lrCis1NDAzNiA1NmQ1MWY1OTQ4NjUzZGEyYTFlOTk3OWVmYzRiMTFlMmY2ZGFkMWY4IHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDM3IDdkN2YzMjJmMmNiNjc4NzI5MGJmNjczNTgzZjc4OTMxNWM3MmY0NTkgcDN5a19ub19hcmdzX29uX2V4YworNTQwMzggZTIyMDhkNGY1YTdmYzliODZiMzU1NmQ1M2JjYzg3MDIyNjk0ZjFiMCBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDAzOSA3NDcyZjdiN2Q5MDM0NDYxNjJiMWE2YjFlZDNkMjExNmVjODQ1ZmNlIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDQwIDFkY2UyNTAyNTY3OTIxYjI1MmM5MzAwNGYzY2QyODVlZTVjZTFlOGIgcDN5a19ub19hcmdzX29uX2V4YworNTQwNDEgYmRiNTI3MjhiMDJlZjRhYjcyZDg5NzBmNDgzNDVjNWZjNzNiOWRmYyBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDA0MiA0NTU1OTYxYzVhMmY5NmFhOTNlODJiOTdhNDQ5YjM2MmRjZjU5NDhkIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDQzIGUxNjI2OGMyNzNiYjI2NjRjNjA5OWVlYzUwMmJmYjVhNGE1NjA5ZWIgcDN5aworNTQwNDQgNGFlMDQ5MGUxYTBjMGYzNDlmNjc4MWMwNjQ1ZTIyOWQ0NmIxMWM3NSBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDA0NSBkZTJjOWY5YWVhMWVlNzZkNTlkM2UwZTUyYjdlZjNiY2YzYWFhNzkxIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDQ2IDY5Y2E2NTdhNjRlN2VkYmYwNWViMmMzNDkwY2RmYTU1ZDI0YTE4NzcgcDN5a19ub19hcmdzX29uX2V4YworNTQwNDcgNGMxZTJjMzNmYWNkMDhjZWViNjcwZWM4YzQzNWM3OGI3NzdjZDFlMyBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDA0OCAwYzE0YjY2YWNhNzAyYjRkMWY5ZmVhZGZjM2E2MjI2NzA1Y2I2NGY1IHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDQ5IGVlNDYyMTdjODdhZjdhODczODE5YWEzZGNjNzMzMTI0Zjk2NTk4NTMgcDN5a19ub19hcmdzX29uX2V4YworNTQwNTAgMjdhMjE4NmY0NWNiNGIyMzcxNjNlNmU3NWIyOGQ5NGFlNjAxZDMxZSBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDA1MSA5MTg1YzcwYTE1ODVlOWE2ZmMwYzJkZmRlZjc2NTgxOTY2ZWFkOTAzIHAzeWtfbm9fYXJnc19vbl9leGMKKzU0MDUyIGQ5YjE1MzRlYzc5ZmU3NTA0M2MwMDgxOTY1MWE0OTUyNzE5MmM4YzggcDN5a19ub19hcmdzX29uX2V4YworNTQwNTMgYjQ2YzZkMjc2MjVlM2U2YzAzOTY5YzM2YjY0OTI1NWQwMjQ3ZjI4NiBsZWdhY3ktdHJ1bmsKKzU0MDU0IDUyZTQ1MzA3NzNjOTcwMWEwNmMxMWUxMTU3N2VkZTliYjFkZjI2MGQgbGVnYWN5LXRydW5rCis1NDA2MCBiZTQ0YmYyZGIzNTBlNGFhMmM0MjU2OTExZjMwMjE2MzU1ZWVlMTBlIHJlbGVhc2UyNS1tYWludAorNTQwNjEgODg4ODRlN2JhYzZkYzJhMjhmYTg4YjA4NjE0YWM3ZTYwNjIzMjQyMyBsZWdhY3ktdHJ1bmsKKzU0MDYyIDUyZTk1ZmIwODkwMTdkYWI4OWY3NjBjNWM1MWExYWRjOWNlNTQ1ODYgcDN5a19ub19hcmdzX29uX2V4YworNTQwNjUgMzJhNGU1ZWUyZDk4YzE0NTc5YmQ1MWY1MmU4NmFhYTAzNWM5ODIzNiBwM3lrX25vX2FyZ3Nfb25fZXhjCis1NDA4MCAxYzU4NjExYzUxZDBjYTZmYTU5ODJiNWExMjg4Y2FjZmFkMDczMDY3IGxlZ2FjeS10cnVuaworNTQwODUgYmU2OGRhNTYxZGNkNjc4NzBmOTY1YjE2NGM5YjI3YjY3YzI1ZmUxYSByZWxlYXNlMjUtbWFpbnQKKzU0MDg2IDRlMzQ4MTk2MWZiYmMyZWNlMTY1MDI1Y2JjYzA4OWIyMTYxMTBlZGMgbGVnYWN5LXRydW5rCis1NDA4OCA2OGE0ODdkMjFjMDY5YTc1YzMzZWM4NmM1ZmM2ZjM5MDJkNTc3N2FiIGxlZ2FjeS10cnVuaworNTQwODkgMzI0YTcxYTEwM2VjMmRmZWNjZDNhNTA5OWU4MDllYzIyZGRlNmQ5NCByZWxlYXNlMjUtbWFpbnQKKzU0MTE0IDJmMmI4OTM1YTgxZTI2MjAyNmJhMWY1MmJmMWRlODRkOGVhNjA2ZGQgbGVnYWN5LXRydW5rCis1NDExNSA2ZGVmODJiOGNmMjBhYTIyM2JhN2E1ZWFhOTljNGM4OTlkNGVjMWQzIHJlbGVhc2UyNS1tYWludAorNTQxMjQgZmU5YTlkMzlhMzUxN2ZlZjU4OTI0M2U3OWZhZTU3ZTk3MDE2ODI1NCBsZWdhY3ktdHJ1bmsKKzU0MTI1IDNiMWVmY2UzNThhMzYwMTI3MzBlZGMxNmI4ZGZiZmQ0ODcwMWQxMGQgbGVnYWN5LXRydW5rCis1NDEzNiAzNzIwNzBiYTZmZDMxZjRlMzg5YTkwY2NiM2NiMDYyZmQ4MTdjN2Y4IGxlZ2FjeS10cnVuaworNTQxMzggZTFiMDAwYmVkNDYyZjM4YmRkMGYwN2NlYTE3NWY1MzcyNmNkZGFkMSBsZWdhY3ktdHJ1bmsKKzU0MTM5IDZkMzQ1NGMzNzFkZDQzYWM5ZjMxYjRhMzM2ZjE0NDJkNDZkYmY5NDggbGVnYWN5LXRydW5rCis1NDE0MCA4OTFjMjhkNTM1Njk2OWIwNDkyNWFhYTZmNDViZTYxYTg1NjJlYzZiIHJlbGVhc2UyNS1tYWludAorNTQxNDkgMDgxYjRlOGI2ZjViODIxNjVjMzA1ZTI3ZDdkYjIzOGNjMTY4MWMyOCBsZWdhY3ktdHJ1bmsKKzU0MTUwIDYwNTg1NTMwZjMwYjhiY2RhMDU1YTcwYTE2ZTAzZDYwMWM2NTE2N2YgbGVnYWN5LXRydW5rCis1NDE1MSBlNDIyODAyMjAyYmUwYTIwNWUwNTBiMzQyOTg0MTA5MzJiYjMwMmVjIHJlbGVhc2UyNS1tYWludAorNTQxNTIgZjFlODhjMzUwMmQ5ZjFhYWY4MGM0NWNmZTk2ODhmYTZiOGFiYTY3YSBsZWdhY3ktdHJ1bmsKKzU0MTU0IDQ4MjU0NzM5MTU5ZmZhZWJiNjgyZGZiY2FiMThkMzA0YzE1ZWUxN2QgbGVnYWN5LXRydW5rCis1NDE1NSAzM2I0M2RlYmI5N2VlNzY3N2I2NjM2ZWQ1ZjEwZDZhZDA0ZTc1MDU2IHJlbGVhc2UyNS1tYWludAorNTQxNTYgNWMxOTZhYTZlY2Y0OGRiOWNkOWUzNWRjOGZlZjJiMDM4YjRlODEzNCBsZWdhY3ktdHJ1bmsKKzU0MTU3IGI2ZGNiNzc4MzM4NTdkOTlhOTQ2ZjVjYzNmZDc2NTBkZDQzNjk3MTkgcmVsZWFzZTI1LW1haW50Cis1NDE1OCAxMDgwZGU0OWM4MWU4ZGY1NjRjOGEwNDc4YmY2MDQ5MWQ3NTQxMjMwIHJlbGVhc2UyNS1tYWludAorNTQxNTkgNWMwOGU2NDYwZGM1NTRmODgyMTllYjE0ZDVjYzU4ZDlkYTI5YjIzZiBsZWdhY3ktdHJ1bmsKKzU0MTYwIGIwZjI2YTc4MTNjOTA5NmY0OWQ2NGRlYjUzM2QyZDg5ZDM3NTk2MWYgbGVnYWN5LXRydW5rCis1NDE2MSBmODNlNTgyMmU2NzI2YmU5ODkwNjc5NDFlMDdiODBmOWQ3YjJkMzhkIHJlbGVhc2UyNS1tYWludAorNTQxNjIgMDlkMDhmY2I4ZjdiOWQyMjI4NDlmYzc3MGM5ZWQ3NjY2ZDRmNjIyZiBsZWdhY3ktdHJ1bmsKKzU0MTYzIDJlZTM2NmEyZDJiODkxZjdiZmI3OWY2ZjM2NzNjYTBhYWI2Y2U1YTkgcmVsZWFzZTI1LW1haW50Cis1NDE2NCA0ZTgzNWRmMmI0YmE4OGNiOWFkMTg1Yzg5YzVhZjlhOTViNDUxMTljIGxlZ2FjeS10cnVuaworNTQxNjUgOTYzYzBlNDQyODMyMTE0YmFmZWI3YjIxYjYyMjIwMjY0ZDYyZTAyYyBsZWdhY3ktdHJ1bmsKKzU0MTY2IDA2OTkyZTZiMjA1YTQ0OTYxNGU2ZDhmNGIyNWNlODM0YTg0MDRjYzAgbGVnYWN5LXRydW5rCis1NDE2NyAzY2ZkYjgwYmM2OGU4NzRjZTZhYzM4MmE0NThhNmJiNTc0ZTIxMmIxIGxlZ2FjeS10cnVuaworNTQxNjggMWVhMTlmNzQ1MDRjYmM2MGExMjQ5ZWVjNGM2MzYzNjI2ZGNkMzRjOCByZWxlYXNlMjUtbWFpbnQKKzU0MTY5IGQ0NTc3MjE1NTM5ZGRkMzc0MTkwZTliNTYxMTUwZmE3NTQ2NjEwMDMgbGVnYWN5LXRydW5rCis1NDE3MCBhNmEwOTViZjY0NTg1ZDAxNDJmNDg1MjYyYjczNjNhMzA3MTY3ZjU0IGxlZ2FjeS10cnVuaworNTQxNzEgNjdjYzBlOTVlOGE1NzhmYjBhNDZlYzJiNjNhNjVmZjk1YzlmYWY1OSBsZWdhY3ktdHJ1bmsKKzU0MTcyIDQxZWQ5NGJlNmQ1Y2FhMGZiMTliNGZjYmU1ZTBjMmQ1MzFhMTQ4ZDEgcmVsZWFzZTI1LW1haW50Cis1NDE3MyA2YTU5OWFlZTdjYTQwYTEyNjEwMjgwYzJlYjI1M2YwNDNkMTFhMzJkIGxlZ2FjeS10cnVuaworNTQxNzQgNjE0YmNkMzdjNmYzYTRlZmQyZTU0NTE0NDkwYjM4YzFlZjA5MjRjMiByZWxlYXNlMjUtbWFpbnQKKzU0MTc1IDZjZDM2NmU2YmVlY2M1OGZiZTM4MmZkMzgxNzI5YzQzNjdmNjdmNTQgbGVnYWN5LXRydW5rCis1NDE3NiBlNjZjZmM3MjVlOGRiMGUxMGUxYjkyZDE2OWVmMmFmYjAyNDQxOGIzIHJlbGVhc2UyNS1tYWludAorNTQxNzcgNmQ4ZGNhZDEyZmQ5YmZiODRjMGUyZTVlZDk1NmZiZWEyMzU0NGMzYyBsZWdhY3ktdHJ1bmsKKzU0MTc4IDgyODBiN2M0MDU1NzYwMjI4ZDkzYjI3MmEyNzc4N2NkYjAwYTkzOGUgcmVsZWFzZTI1LW1haW50Cis1NDE3OSBlZmEwYTc2MTkxOGMyOGM3MmY1NjAyMDdhOGE5YTJmNjYzMmRjN2NhIHAzeWsKKzU0MTgwIDNhYzI0YzAxMTBlOTZmOGE1MWQyNDI1MjEyN2JlMjljYTUwNGQ1NTQgbGVnYWN5LXRydW5rCis1NDE4MSAxYzE0YjIzYjljMWJjZjY5NzFlYmQwNGE4YTcwZTg2ZWUwYmNhZGQxIHJlbGVhc2UyNS1tYWludAorNTQxODIgNzU3ZTkzYTQwOTZjNTI0YmE5ZTM4ODg1MWI1ZTZlMDFhOWZlMDY5NyBsZWdhY3ktdHJ1bmsKKzU0MTgzIDE2YzIxNWU0M2JhZDBhM2Y0MWUyZGEwMTY5YjZkN2JmMjdkYjNiYTQgcmVsZWFzZTI1LW1haW50Cis1NDE4OCA3MjhjNjBlODVlZmE1OTRmY2QzYjAxNTQ0YTE5MjRiZDY4NDcyNzJkIGxlZ2FjeS10cnVuaworNTQxODkgYzhlZDRhZWE2YzU4MzMwZDk2YTc2NDk1YTBlZTQwYWUwYTcyMTgwMCBsZWdhY3ktdHJ1bmsKKzU0MTkwIDIxMjMzYzJlNWQwOTM5OTQwNzRkYzhhYjc4ZmY3NGEyZmUzNTI4MGYgcDN5aworNTQxOTIgZjQ3OWI5Yzc0Yjc4MTk5NzkxZDY1NzcwNjU3NjUwYjUzNzM3MDI0YSBsZWdhY3ktdHJ1bmsKKzU0MTk0IDEyOWZmZmYyY2U2ZGM0NWYzNTIwNmVmMTNmZTVhMmU0ZDQwZjBkZDAgcDN5aworNTQxOTUgMjQyZGUxNmE2ZDQ0MmMwZDU2NzU5MDI1ZjZjMzcwNjEyNTg4ZGFlZSBsZWdhY3ktdHJ1bmsKKzU0MTk2IDFhMGM5MDc5MjhiNDAxMzQzYjY3MTY1NjJhZmM0M2Y3N2M2MmFjMjggcmVsZWFzZTI1LW1haW50Cis1NDE5NyA4NTBjMzJkYjI3ZTY0NDA2NTZmMjhmYTIzNDFkYzllMGQwN2NmMzMwIGxlZ2FjeS10cnVuaworNTQxOTggZTE5NjJhYjEyZmNlOWFiYTg5NDVmYTczZTZmOTczYWM0YzNkOWQ5ZCByZWxlYXNlMjUtbWFpbnQKKzU0MTk5IDdkYTIzYmY4OTQ5ZmM0YThlYjg4OTE1YmZiZTJhMTBkNjY0ZGMwYzIgbGVnYWN5LXRydW5rCis1NDIwMCA4MWU0ODZiMzAwNzg4NWMwNTcxOTQ1MWUzMjZhYTFkZTEzZmVkMGM5IHJlbGVhc2UyNS1tYWludAorNTQyMDEgYjA5MmIyYzgzYWI3ZTg1OTY3YjMzZjc2YTM1ZjUwNDEzNDVkZGM1NCBsZWdhY3ktdHJ1bmsKKzU0MjAyIDUxMDIzMzZjYTM0MzU0NGNkNjVjZjI1ZTM1Nzk3ZjRmZGFhMmMwNWMgbGVnYWN5LXRydW5rCis1NDIwMyA0MjNiMzY0ODQzY2RjMWNhZTAwMjVjZjg4OWYwYzgyOTE0YWFlOWE3IHJlbGVhc2UyNS1tYWludAorNTQyMDQgOThiYmM5M2JkNTViYTBhNjQ5ZjRiN2MwNmI4MWE3Nzc4YmQzMTk2NSBsZWdhY3ktdHJ1bmsKKzU0MjA2IDNiNTM4YWNmNzY5NGUxMzE4YmNhZjY0MTlhZjRhMTEwMmM2MTM5YmMgbGVnYWN5LXRydW5rCis1NDIwNyA0NmNmYWJiN2Q1NDQ2M2U2OWUyZGEzZmFiNmM3NTU1YWIxMTg1MWM1IGxlZ2FjeS10cnVuaworNTQyMDggZTQyYzYzZDdjMjMwYTg4MGQ3YTY3OTI3ZGNkNDg5ZjM1NDE3NDU5YSByZWxlYXNlMjUtbWFpbnQKKzU0MjA5IGJhYWJlZjZjMDBkNjhlMjc2NzU2YWQ4YzI4ZDUwNGQ2ZGU0ZDk3NjIgbGVnYWN5LXRydW5rCis1NDIxMSBiZmRiZDNlYzI3ZDg1YTVlZjQzNGI0NDY2ZmU0YWQxMzg1NDA2YWMzIHJlbGVhc2UyNS1tYWludAorNTQyMTMgNGEwZTIyOGMzNmU1N2Y3MjIxMzQ3ZWJlMzM0NWNhNDMyNWMwNjc1ZSBwM3lrCis1NDIxNCA2ZTFjZjRkMjhhZjM0ZWI1MmQ1YzhiNGI0YzA3NWM5MGRkNzhhOGUwIHAzeWsKKzU0MjE1IDE1NzI2MGVmNjc3Y2FkNGNkNGVlNjEwYzk0Njc4ZWJiOGZhNGExZjYgcDN5aworNTQyMTYgNjNhZjM3YzJkMGMwZWQyODliYTg1ZWJmMjBlYjY4ZmUzYjkwMGEwNiBwM3lrCis1NDIxOSA5MThlZGFiYWFhODRlNjI1YjgzOTkwNTg2MzllMGNkZDU5NDAxZDViIGxlZ2FjeS10cnVuaworNTQyMjAgYzFhOTdiMDgyMTNhOWRiNTM0Y2Y0OTEyZWIwMmI4ZDM2ZjhkZGM1NSBsZWdhY3ktdHJ1bmsKKzU0MjIxIDMyYWY5NTg4YTE4MmVmNDQ4YzA5ODk1NDhkZjcxNTJhNjU5MzBlNDggcmVsZWFzZTI1LW1haW50Cis1NDIyMiA4YWE3Y2I1MWQzNTg0ZjhmOTNiMmY5Y2IxNDhiMzZhZGFhNWI5ZDVhIGxlZ2FjeS10cnVuaworNTQyMjMgMmY1ZDg0ZGNiNjU1N2RhZDM1ZmQ3YTlhMjlkNTA3Y2QxMzdmODFlYyByZWxlYXNlMjUtbWFpbnQKKzU0MjI0IGQ5NDhhMmMwZmNmZGRkOTUxMjA4ZjBjMDU2NDM4MTA5NGFjYjhjNjYgcmVsZWFzZTI1LW1haW50Cis1NDIyNSA1NTY1OWU2NDI3N2JlNmNkNDA2NDQ5MDZkMGE4YWU0YWE5MDJkOWJkIGxlZ2FjeS10cnVuaworNTQyMjYgOWI1NmVhZDM1MzJjZDc4ZTljNjYyZTE5YWUxNDk3OGUwZGVhNDA1OCBwM3lrCis1NDIyNyAwYmI5NjlmMTUxMThhMzg4MGVjMWJlNzliYzMyODBiMDA3NDY2MGRhIGxlZ2FjeS10cnVuaworNTQyMjggODM0MDBkZjk3Mzc5YWUyZjU1NTczOGVjZTBiOWVjNDE3NjYzZmYxZiByZWxlYXNlMjUtbWFpbnQKKzU0MjI5IGE3YzhhNGQxYjk0MDdkMjliMDU4MGM4NDkwMDY4NTQ1ZWZkOWQyM2MgcmVsZWFzZTI1LW1haW50Cis1NDIzMCBmMmJhODEyZjcyMDA3NjBiNjViZmY3NWIzMWRiMDAzZDc0YjVjOGQxIGxlZ2FjeS10cnVuaworNTQyMzEgM2JlMjE3NWJiYjAwMDc0ZDI0M2M4NGJmOWM5ZGNmNTZmNjlhOWIxNyBwM3lrCis1NDIzMiBmZjBjNDZmYjE5NWEzNTZhOTJmMmQyZGM2NDQ5YzMyMWViNzBlMGM4IGxlZ2FjeS10cnVuaworNTQyMzMgYmUxZTJmNzQ1NjY5ZGMwOTVjNzU1NGM1MzZlYmI3ZmMxMTRlM2E0NiBsZWdhY3ktdHJ1bmsKKzU0MjM0IDljZmM5Y2JhNjc2OGIxNmZkNmQ1MmY5MzlhOTMwNDQ0YzIzNWRjNzMgbGVnYWN5LXRydW5rCis1NDIzNSAxYTBmNmExMjg3NGMyYWFjMzNmNzA2NDVjM2Q5MDZmZGMyM2JkOTk1IGxlZ2FjeS10cnVuaworNTQyMzYgZTgzMTA4NTVmY2M3YTY3NDRkODE1MDAwNTdjOTcyNWRiN2ZiZDE2MSByZWxlYXNlMjUtbWFpbnQKKzU0MjM3IGY3NTQ1N2Q3NTMyY2UwY2U3YjdkNTdkNDcwM2Q5YWMzNDU3MWY5N2MgbGVnYWN5LXRydW5rCis1NDIzOCA3ZjZkNTM5MGExMWFiMmRkNzVhMmY4MzZiN2FkNTY5YTNjYTVmMGFiIHJlbGVhc2UyNS1tYWludAorNTQyMzkgNzQ0NmFkNmNiNThiZGNiZmNlODE4OTMxZGEwYmFmYzZkY2QzYjU1YiBsZWdhY3ktdHJ1bmsKKzU0MjQwIDA5YmZjMGNkZmY5ZmVlM2JlNDg4ZGJlMWIyMDRjOTBkYjQ3N2MxZGQgbGVnYWN5LXRydW5rCis1NDI0MyAyODc3Nzk4NDNjNWQzOTk0YTIxZTVkMzJiMGUzZjhmYWRhNWU2NjU4IGxlZ2FjeS10cnVuaworNTQyNDQgMzcxN2IxNDgxZDFiOTU3Mzc5YWIyMWIwZmZiZDY5MjA5Yzk2MTU0MSBsZWdhY3ktdHJ1bmsKKzU0MjQ1IDFmZWU5ZjQyYjFmYWRkOTc1MTRhNzU5MTRkNDFhMDI0ZTI3NmM0MmQgbGVnYWN5LXRydW5rCis1NDI0NiBiMTMyNmFhMDRiMmMzZGEyNDU2OGE3Zjg2ZjhhNWRhNTI5MzZmMTQ1IHJlbGVhc2UyNS1tYWludAorNTQyNDcgNDdhYzFiZmVhMzA0N2M2Y2U4MGJmMTU3OTI0MzA0ZjE1YTcwYjVmOCBsZWdhY3ktdHJ1bmsKKzU0MjQ4IGZlZGQ2Y2NjNWU1YjRmODY0N2NiOGE0MmJhMDUwNTQ2YjUzZWM1ODIgbGVnYWN5LXRydW5rCis1NDI0OSA0YWE5MTg3YjUxNTljY2RlMzU4NjQxMDRlNWY2YjM1MDZjY2IzMTg1IHJlbGVhc2UyNS1tYWludAorNTQyNTAgMWFmMzhhZjMxNGYyNzI3M2Y4NDkyNjZkMjIzMjM1MDhlNTNhYjI2NyBsZWdhY3ktdHJ1bmsKKzU0MjUyIGJlMGQ0OTEzNGU0ZmEyZTg1ZjZmMDZjM2ZkMTU3MmM5NWViYzE2MzkgbGVnYWN5LXRydW5rCis1NDI1MyAxYmJkNjg4YTZkZTE2ZjU3Yzk5ZDY0ODM4YTJlNWE5ZjM0MzI2ZTgyIGxlZ2FjeS10cnVuaworNTQyNTQgMDAyMzdmNTE0ZjA2MjkyYTA0YjIxNzk3NzVhYmExZWEyZGZjZjZiZCBsZWdhY3ktdHJ1bmsKKzU0MjU1IDAxYzhmM2UzMzMyY2FhMThiOTJmOTUwZjViODc1ZDhmZmY1MTYwOTAgcmVsZWFzZTI1LW1haW50Cis1NDI1NiA3MTgwOWMwODlhMjYzOTVlOWU3MDEwZGUxN2I3NThjZDY3M2EzYjBjIGxlZ2FjeS10cnVuaworNTQyNTcgZDNhMzVmZTEzODM4YTIxOTY3YTc2MzU3ZGZhZmU3Nzc1MDI4NmMxZCBsZWdhY3ktdHJ1bmsKKzU0MjU4IDU5NzhlMDcyOTFmZTc2ODBkNWUwMDhlYjhjYWQ5YmU4MzNiZjNiNWUgcmVsZWFzZTI1LW1haW50Cis1NDI2MCBhM2YzMTEzMDRlYTYzMmViYjEyMTljNTRiOGY1NmFkNjI4MDE0YmIwIGxlZ2FjeS10cnVuaworNTQyNjEgMmI1MWIwNGIyNTQ1NGNhMTIyODMwMjk4ZTAyZDA2ZjJmNGVhMThjNCByZWxlYXNlMjUtbWFpbnQKKzU0MjYyIDEwMWExYWI1NzNkYjRlYjI0NzUxNTE5N2NjZWIxNGNmZmEyMGQ4MjAgbGVnYWN5LXRydW5rCis1NDI2NSBjZjQ1MjAyNzA3M2UyOGNjZTM2NWJjNjU5NjE2MmNlZDhlNzRlODBlIHAzeWsKKzU0MjY4IGYxMThhYWRjMTEyMDVjNzU0Y2Q2YWYyMjJmOTk2OTYxYmQwMTRhZDcgbGVnYWN5LXRydW5rCis1NDI2OSBjOWI0MGIwYWEzMDMyMDFkNzVmYThhZTAwZmE0NDk1ZGU5NWE3MzQ2IHJlbGVhc2UyNS1tYWludAorNTQyNzAgYThhZTJjMjljNjZhZTJkNjBkZGE2MDAwMGQ3NDk1NTZmOTAwNTgwYSBsZWdhY3ktdHJ1bmsKKzU0MjcxIDVhYjdkYzhlNzMxYTk3YWFlMjgxYzg0OTFiMTgxMmI1ZWYxYmY3YmMgbGVnYWN5LXRydW5rCis1NDI3MiBkNGVhMDY4YzM4MjA0ZDgwZDE1ZDJjOWJjNzE3ODlhZWRiZDdlZmNkIHJlbGVhc2UyNS1tYWludAorNTQyNzMgZDcwNDQ0NjViNzQzYmY1MTVhMDdjNDZkM2MzM2U2MGUzNDE2ODI3NyByZWxlYXNlMjUtbWFpbnQKKzU0Mjc0IDYwYTM1YzA3ZDMyZGYzNDFhNGViODlmNzc5OTI5NWUxZmI2YWZmNTMgbGVnYWN5LXRydW5rCis1NDI3NSA1YjZlMWMwMDhjYTMyM2RjNzE0NmFmMjNmNDc4M2U3MzM0NzI1ZDYxIHJlbGVhc2UyNS1tYWludAorNTQyNzggOWEwY2NkYmJjNTY4ZGNlODJiMDkzNWFlMTA2ZmUwYzFjNWU0YjJmYiBsZWdhY3ktdHJ1bmsKKzU0Mjc5IDcyYzViNTVjYWExZGIyZTM3M2Q0MDQyOWE0YzljODU3NmU1NWUyYzEgcmVsZWFzZTI1LW1haW50Cis1NDI4MCBkODUwYmY1NmZkZjZjYTJmZGQ4NGYwZjMzZWRjYWE0NDgzODVhMzVlIGxlZ2FjeS10cnVuaworNTQyODEgZGNlOTQwZDlhOGU5Y2RmMGQ2NTU4ZDMzODJkZTVlNmFjNTE2YjkyMiByZWxlYXNlMjUtbWFpbnQKKzU0MjgyIDQ3ZWRlNjVlMmVmZDhmZmViMTA5OGNlMzhhYmFmOTRjM2JkNzEwYWEgbGVnYWN5LXRydW5rCis1NDI4MyBhZGY2MTJmNzA2ZTRlOTA2NGJiZGU4ZTAyZWMxMmM3OTIxOTFiODJkIGxlZ2FjeS10cnVuaworNTQyODQgYTdkYWEwMjE4Y2YwYzA2M2E1ZWUzZDBjMDk2N2Q1MGIwNDRlZTQ1YiByZWxlYXNlMjUtbWFpbnQKKzU0Mjg1IDNlZTk1ZmRlN2NmYWU0MDQ5NDIzYWQxMjM0NmE3NmRiODVjMWE5MmYgbGVnYWN5LXRydW5rCis1NDI4NiAyMTEyMDFlNmIwNDVlZDJjNTExNWUwMDIxMzU5Y2JmZGMyMTU4ZjkwIHAzeWsKKzU0Mjg3IDcxN2JjMmE0ZWVlNzdiNmYyZGYwMGQyZmVkYzk4ZmJhY2QwYWU1ZDIgbGVnYWN5LXRydW5rCis1NDI4OCBhODdiY2MzN2JmMGZlYTc3YWQyOTljYTYxN2E5ZTVhMGI5NTc0M2M5IGxlZ2FjeS10cnVuaworNTQyOTAgNzEwMGM1OTE4MmZmMzE2ZGY4NzdhNDRiZTUxZDU2M2ZlZTk0YWRlNyBsZWdhY3ktdHJ1bmsKKzU0MjkxIDQ1Y2UzODhlYzU5YTVkMjNiZTBiMzhhMDAyYjRjMTEyMzJmODE3Y2MgbGVnYWN5LXRydW5rCis1NDI5MiAyY2I1ZmI3Y2QzNTdlNGI4MTJlMjkxYzY1MmY1NzZhNzJhNDJkMGJhIGxlZ2FjeS10cnVuaworNTQyOTMgNWJlM2QyMTc3MzQwNWRmNjdiN2I4NzE2MTFkNjg0ZDI1YmE0ZjcyOCByZWxlYXNlMjUtbWFpbnQKKzU0Mjk0IDY2ZjI2NWFjNGVjNGY5MGI1ZWIyNjgwYmI0ZmZhNzAwZDM0MmI1NTQgcmVsZWFzZTI1LW1haW50Cis1NDI5NSAxZTEyYmVkN2EyZmU1YTQ2YjI3MzZjZjU4OGM4Yzc1Y2U4YjdhNWQ3IGxlZ2FjeS10cnVuaworNTQyOTYgMDEzNTUxMjRjZTQwNTE1YmMxODFjMmRlMTNiMmEyN2JiZWM1YmQzNyBsZWdhY3ktdHJ1bmsKKzU0Mjk3IDkxYTgwZTUyZDg2M2VkNWIyYWNlNTJlNTU1YTZlMjdlNmU3MGQ3YzcgbGVnYWN5LXRydW5rCis1NDMxNSA5MWJkNzM4YTQyMDY3YTEzYWMzY2E1M2UyMjczOTZjYjU4MWI2YzYxIGxlZ2FjeS10cnVuaworNTQzMTYgODQ0NzhkZWI0YWQ5NmE5YWNkZTk4ZTdkMDhhNWIxZDU5Y2YwZjBiMyBsZWdhY3ktdHJ1bmsKKzU0MzE4IDQ3OWRjYmQ3OWI1N2YxNWVmOGEyZTYxYTRmY2VjM2IwMDE3ZjU4OWMgbGVnYWN5LXRydW5rCis1NDMxOSBmOWEyNmFhM2QwOWM0NGMyNmQ5NTJiYTc2MTQwYjZiNzZjNjcyOGJhIGxlZ2FjeS10cnVuaworNTQzMjEgOWRiM2UzMjVkZDg4ZDRiMTc3NGFiZjYzNDRjMzFjMzVhNmJmN2ExZCBsZWdhY3ktdHJ1bmsKKzU0MzIyIDcyODZkODMyYWQyNzI3MTQ1YWY0NDM5MDViOTIwNDY4NzVjMGNhMmIgbGVnYWN5LXRydW5rCis1NDMyMyBlMmNlZWRlMjBkOGMyOTQyNGM4ODZkNjUyMDUwNmNkN2IwMDFlYTk0IGxlZ2FjeS10cnVuaworNTQzMjQgMTZkN2RjZDdhNjljNDJmNzVkN2YzMTg4ZjQwYzdjMjY2ODBhYzljMCByZWxlYXNlMjUtbWFpbnQKKzU0MzI1IGJlZDU3ZGZmM2RiODZlNjhmMGZjOTQ0N2U4NjQ5MWVhNTk1YjIxMTggbGVnYWN5LXRydW5rCis1NDMyNiA3YTMzMWM3Zjk0MDRmY2QwMDFhYzM4MWY2OWI4NTI4YzUxOGI0NmU5IGxlZ2FjeS10cnVuaworNTQzMjcgYmJhZjZjOTM1NjYzNmZhNTM3YWRlMDUyNDg2YjZmZmM5ZGRjNWE5OSBsZWdhY3ktdHJ1bmsKKzU0MzI4IDhmYTRlOTgwYjU4OTlmYjliZDIxNTNhOGVmYTMzOWE1MjAxOGNhMTkgbGVnYWN5LXRydW5rCis1NDMyOSBiODk0MzdlM2JjOGViZDdkNmI3ZThhMmEzN2M1YzAyYjgzM2IzMTc0IGxlZ2FjeS10cnVuaworNTQzMzAgYWRlOGQxYzgxMDA5M2U1ODQ0ZjY4NTI2YjUyNDg5YWFlNTUxMWIxOSByZWxlYXNlMjUtbWFpbnQKKzU0MzMxIGIxM2U2MTI4ZWZhNzJhNGUyNjY3ZTBjZTI4OTdjYmEyNmMyMDk5YWMgbGVnYWN5LXRydW5rCis1NDMzMiBiNmMxMDM4NDUwNTRmMTg4ZDJhYjUxOTFiMWZmZTkzMWJmZjk4YThhIHJlbGVhc2UyNS1tYWludAorNTQzMzMgYzZmNDE1MjkwZjgwNmNiMDU1ZmY2YTliNmJiNTkyODUzMzhhNTcxMiBsZWdhY3ktdHJ1bmsKKzU0MzM0IDdkMzBkNjJhOTAxYWE4MWYxMjQwOWNmZDZjYWM5OTczYWViYTZkZDQgcmVsZWFzZTI1LW1haW50Cis1NDMzNSA1YTNhMWIwMjQxOGFmZDBjYjlmM2ExNGNjNjUzMzI5ZTIxZjU0MjM3IGxlZ2FjeS10cnVuaworNTQzMzYgYTRlMGM3OTAxNWQ4MmZlMjk4NWE5ZGY3ODJjNWFhNThlN2ZmYjk1YyBsZWdhY3ktdHJ1bmsKKzU0MzM3IDgxZTVjNWQxOTk4ODdjOTViMDI1NzBjNGUwNjUxMWY5ZGM2ZDZmMmMgcmVsZWFzZTI1LW1haW50Cis1NDMzOCBhMzQxOWM2YzBjZmVkZjZhZmIxNzQ4NmRkMGQ2MDM2YmQwMjRiMjM1IGxlZ2FjeS10cnVuaworNTQzMzkgNTNlZTI3OTUyODdiNDRjNmM5NmFkZGQ5NWE1MzE5MjgwODBiOWU4NyBsZWdhY3ktdHJ1bmsKKzU0MzQxIDFkODBkODRjNzc5MjQ5NzViY2IzOTNlZDJkZGQwYzYzY2M4Mjk1MGUgbGVnYWN5LXRydW5rCis1NDM0MiBiOTBkOGIyZTVlZDA3MTc0YzQ4ZWY2YWM4NGE5OGIzMTdkZWYzOWJlIHJlbGVhc2UyMy1tYWludAorNTQzNDMgMGMxMjJmZTgyN2Q3OGE0NmUyMjJmNDcwZWI4NGE1ZWY0ZGQwMGU4YiBsZWdhY3ktdHJ1bmsKKzU0MzQ0IDdiMzZhNjRkY2IwOGQwMjY2MjIyN2IyMzNkOWVlNDdjZDRlYzgwZDAgbGVnYWN5LXRydW5rCis1NDM0NSBhYzcxZGI5ZmFkYzg2YjlhZTE2OWZlNjlkMjBhMDU3ZWVjNjE1MTFkIGxlZ2FjeS10cnVuaworNTQzNDYgMjhiMDQwM2Y4YzkyYjcxZGMzYzQzNDcwYzMxOGU1OGQwMGI4OGFiMSBsZWdhY3ktdHJ1bmsKKzU0MzQ3IDkzZTY3ZDM2MmE4MWEyOWE5NzlmNjY2ODk0NDQ1MDY4ZGFkZDFjMjIgbGVnYWN5LXRydW5rCis1NDM0OCBkOTZlYmIyMGQzZTFmNjEwNWM5MzVjODFkOTI0ZWNkMjk0NjU3NDkxIGxlZ2FjeS10cnVuaworNTQzNTIgNGE3OWRkMTViYTU5ZjY1ZTM5MTg0NGFmMmQ5ODhlYTYxNjI1NDczMCBsZWdhY3ktdHJ1bmsKKzU0MzU3IDQ5M2NhZTcwNWY5MTg4YzNiYjcwOWM3Nzc1ZmQ5NjNmZTFlYjRjOTggbGVnYWN5LXRydW5rCis1NDM1OCA3ODY4NmM3YTIzYTdkNTAzZTgyMjZjNDliYTY3NWZmYzUwMzk4MTVjIGxlZ2FjeS10cnVuaworNTQzNTkgOTIyYjc3MDhhODBhZmUyMDk2ZDgwODlkNGNhYjUxOWMyMGJiMDA2NSBsZWdhY3ktdHJ1bmsKKzU0MzYwIDIyNmQ5ZmNmOWQ1OWNkYTQ3N2UyOTBkMDFiZDFiMWVkYjNkYjUwNmMgbGVnYWN5LXRydW5rCis1NDM2MSBkYmE1YTMzYTBlNzk5NTI4MTQwMjI5YjUzY2NkNjRjMGU2MWZjY2U0IGxlZ2FjeS10cnVuaworNTQzNjIgMjA5ZDY4OGYzY2E1ZWVjMmUxODYxMWExZTc1MjFjYWE5Y2I3OGQ5YiBsZWdhY3ktdHJ1bmsKKzU0MzYzIGVhZmJmYThhMmIzMDBjM2FiYTkxZDVlNmE0NTJlM2MxNzdlMDc3NDMgbGVnYWN5LXRydW5rCis1NDM2NCBmMWYxODY0NjAyNTBhMmY1MzA4ZWU0NjQwMGQwNjExMzU4YWM4MzFmIGxlZ2FjeS10cnVuaworNTQzNjUgY2EzMzhkNTYzYTdhZDE2ZmY4Y2QxYzliZTgzMGEwMGZlZWIyNTQzMSBsZWdhY3ktdHJ1bmsKKzU0MzY2IGQzMTEwMTNhMTYzOGE5NGNiMzZjYTExNjA1NmMxMzAzNmU4YTdiZDcgcmVsZWFzZTI1LW1haW50Cis1NDM2NyA1YTFhMGFhOWE0YmJhZTE5NzZhNDdjYjAxNThmMzBlMTYxYTE1ZTZhIGxlZ2FjeS10cnVuaworNTQzNjggODk0NjkxY2E0ODM1M2YwYzQxYjhhNWJlYTExNDEzMmQ0ZWY4ZDAxNiBsZWdhY3ktdHJ1bmsKKzU0MzY5IDFkY2RiYzI1ZGVhN2M2NTk4ZWNmYjQzZDQ3YTkxNDdhMzg3ZTg1NjQgcmVsZWFzZTI1LW1haW50Cis1NDM3MCA1MmE2OWEwNjQ2MzdhNTk5NTM3ZTRkMzUyYWMwOWEwODc3MjRmZDRjIHJlbGVhc2UyNS1tYWludAorNTQzNzEgZGUxZDA1YzU1YjZmZGYzY2VhMjI1ZWU3ODUxOTRiZDg4M2QwMzc3YiBsZWdhY3ktdHJ1bmsKKzU0MzcyIGZmOWQ4MWU3NmE3NmY3ZDU3ZTYyZTlkMmRiYTUzNGEwOWQ3ZDMxYmEgbGVnYWN5LXRydW5rCis1NDM3MyBiYzJhNWE1NGI1Y2FmM2Y0ZTFmMGY2ZGFhNjNlMDYxODQzMjk1ZTIzIGxlZ2FjeS10cnVuaworNTQzNzQgYjUwMDc2MWI0YjYyNmRjMWZiOTBjMzA4ZTA4Zjk3YWFhNTg2NDIyYSByZWxlYXNlMjUtbWFpbnQKKzU0Mzc1IDU2YjJiOTMzYmFhZTJjNDVkZmU1MjZmZTExYzYwYzUzN2ZiODdjMjIgcmVsZWFzZTI1LW1haW50Cis1NDM3NiBjMzAxYjViY2RmZGM1MTBkZmI5YThiMzU0NTJjODgwMjBhNWZlNjA5IGxlZ2FjeS10cnVuaworNTQzNzcgOTBlNTdlMmM3YTAzMzNlYjc4ZGRjMmM1MzY0NGI1YTc4MTQ4ZDY1ZCByZWxlYXNlMjUtbWFpbnQKKzU0Mzc4IDI5MDBlYzA0MDMxZDk0YzNhZjhkNmE4ODk5M2RmYmU2MmMxOTBhMzggbGVnYWN5LXRydW5rCis1NDM3OSBmYzVlMDQ1Y2VhZTQzOGQyMzg5MGQzZjY1NjlkZTI2MGI1NjBhYjg0IHJlbGVhc2UyNS1tYWludAorNTQzODMgNTE0YWVmZjYzYzlmZmI1NTExMDA5OTdkYjRiYmE2ZWYzZDBhZjc4YiByZWxlYXNlMjUtbWFpbnQKKzU0Mzg2IDYyODA1NTJjMTI5NzIzZTM3ZDdiMzg4YjRiNTgyNjYxYTE4YmVmM2MgbGVnYWN5LXRydW5rCis1NDM4NyA5OTQzYWVhNGYyZDFkZjIyYzdhNjBjZTMzYzlhYjlkY2RhNTM2NGZmIHJlbGVhc2UyNS1tYWludAorNTQzODkgYmJjZTJkOGZmNzNkNTRlMGY5Nzc5MGEyNmNlMzhhYWU0ZGE0NDI0OCBsZWdhY3ktdHJ1bmsKKzU0MzkwIDRlYjRjZmI2MjU0ZWJiN2I4ZjNmMGFjMjQ5YmQxM2Y3YTVkZDY0ZTggbGVnYWN5LXRydW5rCis1NDM5MSBkMTU1YWU2MzY3Mjg0OGVhYTE2YmUwNmRjNTcwMTNhNTI2YzZiN2RjIGxlZ2FjeS10cnVuaworNTQzOTIgMGE2YzUxMzVkMmRlZjQ5OGU4Mjk1ODcxMTM0OGMwOGNlYmU0MTc5ZiBsZWdhY3ktdHJ1bmsKKzU0MzkzIGZjNTI3ZWI5OGRjZTY4NTVjYTkzOTdmNjgxNGQzMTA1M2MyZjY0Y2QgcmVsZWFzZTI1LW1haW50Cis1NDM5NCAzNzZiNDIzNWRkNDQ0NDgxYjc4NjRmMzVkODY2YTJmYjYzNjNkYTVkIGxlZ2FjeS10cnVuaworNTQzOTUgNGFjYjQ1YzI5N2VkMWZiNmI4ZTI5ZDUzNmEwYTM1MDlhNzFjZjM2YyByZWxlYXNlMjUtbWFpbnQKKzU0Mzk2IDhkOTdkZWU2ZGY2NDQ0NDE2ZTNjYzU2ZjQ0NmZhMGUyYmY1YTFjZmMgcmVsZWFzZTI1LW1haW50Cis1NDM5NyA0MjE3ZjM4NTBmMGI4YTViNmU3MzYwMDU5YzYwZjdlMzZlNDYyNTZiIGxlZ2FjeS10cnVuaworNTQzOTggNTJjMzM5YzBjYjM4YmM2OWQ2NzgzZTVkYWVlNmE0OTY4ZjcwMWIwOCByZWxlYXNlMjUtbWFpbnQKKzU0NDAwIGEzNzdmOTQyZWUwYWRjMTg5ODVmOTRiOWU0ZWM3YjNlMzZmODIwYTggcDN5aworNTQ0MDEgYTMxMmMyNzZhNWU3OWJjZmIzNzBiNzQ5OTk5ODMyMjNiZGIzNzAyMSBwM3lrCis1NDQwNCBiNDNhNTJmNzE2OTZhMDY1M2IyOTUyNjc5OWJjN2FhN2MwYzZkZWYwIGxlZ2FjeS10cnVuaworNTQ0MDUgZDgzNTgwOWY0NWVjNDQ5MTRmNGJjZDEwODE5ZmY2ZWRiYzcxNjg1NiByZWxlYXNlMjUtbWFpbnQKKzU0NDA2IDAxOTUxZjZiODE5ZDEzZWFiMjNiNjdlNWFhMTQ2MzRkNmNmODBlMzQgbGVnYWN5LXRydW5rCis1NDQwNyA5NDIwNTk4NmFkNTMwOGE5NDNkZjE3ODNhNjIxMDNhN2NhNzM1M2Y0IGxlZ2FjeS10cnVuaworNTQ0MDggMjY5MGRlNGJlYWExM2RhNGFjZDk2ZjEwY2YxMjI3NzE2YWE5NGIyNCBsZWdhY3ktdHJ1bmsKKzU0NDA5IDY0NTA3MGI4Mzk0MjZiZjFmOTNiYzc1ODgyMGI1MjRmZDdmZDg5ZmIgbGVnYWN5LXRydW5rCis1NDQxMCBhNjk3OWFjOTUzM2ZhZTY2OTg3NmFjMmFkOWQxNDVlMTA3MzhhMTRlIHJlbGVhc2UyNS1tYWludAorNTQ0MTIgYzU3Y2Q1NDY2MTJkZDgzZTg3ZGVjMzE3YWM0NjgwOTk2YjY1OWE3YyBsZWdhY3ktdHJ1bmsKKzU0NDEzIDA2Y2Q2MGIwYmQxNjRjNzNlMjJhNWQ0OTM1MjllNzVmNDdkZWU2OTggbGVnYWN5LXRydW5rCis1NDQxNCBkMWJhODEzNDUyOGUyOGMwYmFiM2M0ZTQ5MzYzNWYzZmIwMjQyMjMxIGxlZ2FjeS10cnVuaworNTQ0MTUgNzJkYTQ4ZDk2MjU3ZmMzMGIwMzJhMmI0ZjVmOTE0NWJjMjExZDU4MCBsZWdhY3ktdHJ1bmsKKzU0NDE3IDhiYjU3MGFlNGM0NWM3MmU4ZWMyMmY5OWM2ODhlNzg3NmVlZTY0NjMgbGVnYWN5LXRydW5rCis1NDQxOCA3NTQ5YzRiM2FhMzZhMDFkMzhlZDA1NWZmZmVlYzUxM2JmMGM3ZTlhIGxlZ2FjeS10cnVuaworNTQ0MTkgZjNkNDI3NGQwNjNkMzBiY2M4MDk2MDIwNDUxMzM3ZDUyYzgxOGVmMCBsZWdhY3ktdHJ1bmsKKzU0NDIxIGViZTUyZGJjMzU1M2Y3ZWU2MDg5ZGMzY2NlYTgxYTU5ZWI3ZGYyNTkgbGVnYWN5LXRydW5rCis1NDQyMiA5MTI2ODY3OGQ1N2Y5NmQ1MTAwYzI2NDE1MTVkYmU5ZTdiZDZiZTQ0IHJlbGVhc2UyNS1tYWludAorNTQ0MjMgMTM3M2E4MzA4M2JiMjEzYTlmY2MzNmJhMTgxOGMwMTY2ZWZjOGUwNiBsZWdhY3ktdHJ1bmsKKzU0NDI0IGEyYWUyNGZmYTYwYTkwMzU1ODUxOGNiMGVkMjQ0MWViZDI5ZGNjOTEgcDN5aworNTQ0MjUgM2M3M2E4YTIwODM5NWZjOGY4OWE1MWEwOWY5NzI4Y2NhNmQ4Mzc4ZCBwM3lrCis1NDQyNiBlM2JhNjBkZTNkODQyZTFkNzRjMjEwNGIyNzYzZTY2ODM2OTk2ZjA2IGxlZ2FjeS10cnVuaworNTQ0MjcgMzQzYmUzOTZiYmQ3YzYxMjljNDYxMmY1OTdlNmMyNjhlZGVmMTVkNyByZWxlYXNlMjUtbWFpbnQKKzU0NDI4IDE5ZjdmZjQ0MzcxOGY3YTlkYTFhZWE5ZWRiZjAwYTEzNWY4NjA4ODMgcDN5aworNTQ0MzAgNWUyNGY2MzZhYzc1NzZlOGIzNWZkZDhkODc5M2JiMTU0YTFlZDA4MyBwM3lrCis1NDQzMiAwNzEwMTZjNzI5MzkyZTU1M2NhM2M5Zjg5ZDI0OGI5MzgwMDIxZWIwIGxlZ2FjeS10cnVuaworNTQ0MzMgMWY4NDM4OTBhNGU2MWI0NzE1ZDJjM2ExNGE1ZWMyYjE1ZGRjMDFlNCBwM3lrCis1NDQzNCBiMWExOGM3ZWQ1Y2E2NzlhZWE4OGYwNzQ1MTMxOGVjN2Q2NmFiYzU4IHAzeWsKKzU0NDM1IDE2ZmU5MzZmODliMTlhNTUxMTIzNDBlYzVkNGE4OGQwNzdiNzhlODAgcDN5aworNTQ0MzcgOGQ3OTlhOTljZjY4ZjRkNjhlNzNhNjNmZDE1YjlhMTYxYzE4YTE4NCBwM3lrCis1NDQzOCAwMzdmZTZhNDQ0ZDJmZTk4Mjc0ZWJhYWNlZTRjNzFkOTA1OWFmZDdkIHAzeWsKKzU0NDM5IDhkMDZjMTEyMWIzMzFhNTNmMjkyNjAzMGY0MDA2MGY5ZTc5Mjg1MzEgbGVnYWN5LXRydW5rCis1NDQ0MCA2YzhjMzNhNDNhMTU1NWI4MWVjZWM5MTEwZjVlZGYwZDI0OTU5MGJiIHAzeWsKKzU0NDQxIDlmMDdkNDEwYzU1NTQ2OTY3NDI1OWUyNmE3OGU0NTIxZGI1NTA3YWMgbGVnYWN5LXRydW5rCis1NDQ1MSBjN2MyNzU0ZmYyZDZkZGI5YTkwZjE4Mjc3MGU3YTNiOWIyMmVmYWVhIHAzeWsKKzU0NDUyIGY5OTczYTZlMWFmZTAxZTBmYjNiYzk3ZDdhNDBmYTAxZjdkMTc5ZWYgcDN5aworNTQ0NTYgOGQyOTc4MTQyNTkzMzg5ZmVhNDY3NjlhOThjY2I1Nzk2MGRiZjc5YSBsZWdhY3ktdHJ1bmsKKzU0NDU3IDIzNmFmMjE2MWViNjc4YWQ0NGRlNDFiZDFjNTlmMzljYzBiYzlhNTkgbGVnYWN5LXRydW5rCis1NDQ1OCA2MDE4MTk0YWZiYmRlMTNlMWZhM2QyNDg4OGQ3YzA0NzgxODFhZjY5IGxlZ2FjeS10cnVuaworNTQ0NTkgYzk5N2U5MDdjNGM2NzA2MGQ4MzgxYTc2YTkxMTUzNWRjZWU1N2RiYSBsZWdhY3ktdHJ1bmsKKzU0NDYwIDMwN2U1ZDQxNjRmM2EzYmIxMjE1MGI3MDdiYWYxOThjNmZkNjIyYzAgbGVnYWN5LXRydW5rCis1NDQ2MSA1YTc3MWI0YThiNzhjYzQzZDc1NjIwZjU5N2QyMmI3YTY3OTJjNDkyIGxlZ2FjeS10cnVuaworNTQ0NjIgNDU2NjljNDE0ZGI0NTU2NzU1MjQ2ZTk3MTBiYmVjNTU1NGY3MzMzZCBsZWdhY3ktdHJ1bmsKKzU0NDYzIGI4YjE3YTJmYWNlNWFhZjNjZDdmNzM5MGNiN2MzOGJlYmZkZmFmOWMgbGVnYWN5LXRydW5rCis1NDQ2NCBiNDNhMmRhODMyYTcwZDdhODljMmZiOWNhYTYzMTZjZjQ2ZjVkMDcyIHJlbGVhc2UyNS1tYWludAorNTQ0NjUgZWM2ZmIwOTEwMzliNDUzYzBjMGU5MjFmZWE0NmVjN2YxZjEwYmRjZCBsZWdhY3ktdHJ1bmsKKzU0NDY2IDUwYTZiMzNjOWQyYzVjMDcxMzFhMDljMWY4NzU3Y2E2NjZlOWIxMjMgcmVsZWFzZTI1LW1haW50Cis1NDQ2OCA5ZDBjMDU0MTE3MzQ4MzE0MDA5ZTU4OTgxNTQwMjFlODQ5NGU4M2JhIGxlZ2FjeS10cnVuaworNTQ0NjkgN2YyOWJlMWNlZmJhMTI1NjM0MDgxYzMxMGJkZTJhMDgzOTc0ZTU2YSBwM3lrCis1NDQ3MCBlMTJjNTA0ZTQ2NmI1YjZlOWYyYzg2MGJjNzA3MjBiYmUzYmI3NmVmIHAzeWsKKzU0NDcyIGYyOWYxYThiNzg2OTJkMWNmZjE5MzZlMGEwNDIwMjBhNjg1NTM4YmMgcDN5aworNTQ0NzggODgxMjcxODY2OWUxOTc5MjIxM2NlYTY4NjhmMzM0YzQ0ZTAzN2JhOSBwM3lrCis1NDQ3OSBiNzUyYTFlMDk0NGI0MzYwOGViMzgwMTk0ZWQ2ZmM2NDg2YzA2ZTViIGxlZ2FjeS10cnVuaworNTQ0ODAgOWNmMjJjNWVlZTNkN2ZhMDAwMTAyMjM4MGFmN2YzOWNjYTAxODYzYiBsZWdhY3ktdHJ1bmsKKzU0NDgxIDA4ZDE2MTgzYTljMTUwNTIyYWU2YWU3YzBmMTZhNWJjZjY1NDdmYjggcmVsZWFzZTI1LW1haW50Cis1NDQ4MiAxZGM0YzRjZTJkYjlmZjAyMGYyYjkyMDM5OWY0Njg3OGM4YWIxMjA0IGxlZ2FjeS10cnVuaworNTQ0ODMgZDE2YWJlNWM5MmRlYmY1NTUxNmU5MGFlNGY1OTNjYWY1OGEwYzk3ZiBsZWdhY3ktdHJ1bmsKKzU0NDg0IDg1MmM5ODk2ZmU5MjM2NTFhYWU4ZmQ1NjAwNDdmN2ZiYzEwYTM2MDMgcmVsZWFzZTI1LW1haW50Cis1NDQ4NSA0NTllMzZiMmVhNDUxZmNkZTIyMGZjMGZhMjYzYjZkNWZjODVlZDYxIGxlZ2FjeS10cnVuaworNTQ0ODYgNWI3MTE2MzJjYWUxMzJhYjhmZGMzZDVlNWI1MmJlNGJkZmE5Nzc3NyByZWxlYXNlMjUtbWFpbnQKKzU0NDg3IGNiNmViMTMyYWNjZjI2Njg5NGYwYjFkZjJhYmQ4ZTdjZWJhNjJjZDEgbGVnYWN5LXRydW5rCis1NDQ4OCA3MzkzYzcxMGQ0YmJiZWRkOWEyMDdlMmU2OTJlMTk0Mjc0MTBlNGNkIHJlbGVhc2UyNS1tYWludAorNTQ0ODkgZTU1YmZiMWFjMWU3Y2NhZGVhMDYzNmFkODkyOTc2YzFkNDYxNGNkYiBsZWdhY3ktdHJ1bmsKKzU0NDkwIDViZDk2NjM2MjBiYzk3OGExMjc5NzJhN2NlN2FiYzZmMTY0N2JiZGIgbGVnYWN5LXRydW5rCis1NDQ5MSBiMWU4YmZkZmU0Yjc5NWEwMmRlZTZjNzg1ZDE0ZDk0MDE0ZmM5ZWMwIGxlZ2FjeS10cnVuaworNTQ0OTIgY2NjNDQ3YTZkOTE2NDhmNzExNjIxMTVmNDVkMGFkNzc5OWFkZWNiMSBsZWdhY3ktdHJ1bmsKKzU0NDkzIGQyNWY3NzU3NDg2NjMxZTg0NGIxYTRmNTBlOTcyZTAxNGE5YjM5YTAgcDN5aworNTQ0OTUgMTVhN2UwYjdlNDI1NmI1YzkwZjhjMjI1OGFkZWQ2OWZjZGE1NzAxMyBsZWdhY3ktdHJ1bmsKKzU0NDk2IGY4ODlmNjVhNDg2MWJlYjVmYzAxOTE3Y2MyZDVhYTk1NjUzZDU0YTAgcmVsZWFzZTI1LW1haW50Cis1NDQ5NyA0MDhkZmM3ZTMwMTg0YzIxNWEwNjM4NGExZDU5ZjgxYzYzYzRiNDM1IHJlbGVhc2UyNS1tYWludAorNTQ1MDIgZDQyOGUyMWQ2ZWFmNTgwNjRlZjRjYWFmNzIzZDZmNzVjNjc5NmYxZiBwM3lrCis1NDUxMCBiZmM0ZTgwNDYxMDIzOGI4YjAwYzM5MmUzZGFjYjI3MzYzMTNmMmIzIHAzeWsKKzU0NTI0IGFjZjlhNTVjODg1ZDc5MTI3NjllNjljYzY4MmQ5MjMxMmJhOGVkMmIgbGVnYWN5LXRydW5rCis1NDUyNSA1MmUyZmNkNTNhZDMzOTY2M2VlYmRhZmZjYjEzOWJiNTgwM2YxODRjIHJlbGVhc2UyNS1tYWludAorNTQ1MzIgMTc1N2Y4MGI1ZmRiYWU0NzlkZGY2MDQzYjcwOTkzOTc1YjZiZjUyMyByZWxlYXNlMjUtbWFpbnQKKzU0NTMzIGFmYjFjNmNiMmM4ODQyMjkxNGU2OGFmYTAxYmQwZTg1Y2NkOWY5NGYgbGVnYWN5LXRydW5rCis1NDUzNyBmZTE4NDJiNDhiNjZmZmVjOGE2OTg2NDhmYWFlNzJmYTEwMjBmNDBhIHJlbGVhc2UyNS1tYWludAorNTQ1MzggNDJlYjViYjc3NjYxNTdhZjM1MGJhNTgwMjNhOGM0ZGZlOGYyNmQ4NyBsZWdhY3ktdHJ1bmsKKzU0NTM5IDhkZWJjZTJjNGZiMWI0ZTg3Mjk0YjVjNmEzNjU5MjRlNjY4ZWUzNjkgbGVnYWN5LXRydW5rCis1NDU0MCA1MWZiZjJhNzU1NDhiMWE2NDAwODc4MDc2YTA3NWZjMDE1NGU0MWU4IGxlZ2FjeS10cnVuaworNTQ1NDEgOGYxYzllOGVmYmJiZmQxOWY4ZjI5YmQxZDU1M2RkYzZiMzlmNDM4OCBsZWdhY3ktdHJ1bmsKKzU0NTQyIGQ4NzQ4NjczZmQ5ZjlhNWVhYTZiN2U3OTFlYmM2MTBlNWI1Yjc5YTEgcmVsZWFzZTI1LW1haW50Cis1NDU0MyAwMjU3NGY0ODViMTVjM2ViZDlmYzFkNjJiMGU5OTliYzZmNTlmYmZmIGxlZ2FjeS10cnVuaworNTQ1NDQgMGVhNTU5NWQ3NWRhZDhhM2EzMzUxYTEyMGNjOTVmMTI4ZTA5NzUxMyByZWxlYXNlMjUtbWFpbnQKKzU0NTQ1IDEyYzcwNTU4MDc0ZTdjZDBlYjMyOTczNWU0MWIxNWU3MmY1ZDA4NWYgbGVnYWN5LXRydW5rCis1NDU0NiBhNzNhYTBiODIxY2E1ODg0Y2IzZjA2MjVlMjQ4ZWZkMmNiOGNhYTM5IGxlZ2FjeS10cnVuaworNTQ1NDcgM2I1NmU3ZTg5NDcwMmUwZWMwZGMwMjVlMjVhNTQxNzljZTkzZWUyYyBsZWdhY3ktdHJ1bmsKKzU0NTUzIDc0ZDI5YjYzNTQxNmI4OWFiYzUwY2FjYmQwYTUwMmFiNzNhMDM3MmEgbGVnYWN5LXRydW5rCis1NDU1NCAzZmY2ZDNmYTgxMjI5YjkwZTYyYjM5ZmRjNjE4YzIxMjg5YTBlY2YxIHJlbGVhc2UyNS1tYWludAorNTQ1NTUgMTg5OTViZDhiYzhiM2FhNmI5NThjOGViM2RhODE5Y2UyNjYxZjNiZiBsZWdhY3ktdHJ1bmsKKzU0NTU2IDFjM2UwZDJjMzZkYzk3NjIzZjlhOGNjMWY1M2ZjZTdjY2NlMDY4OTQgbGVnYWN5LXRydW5rCis1NDU1NyBlZjcwY2Q0ZGJhNTBiNjU3NGFkMWE1YjcxMWRlMTU1ZWM0YTU1OTcyIHAzeWsKKzU0NTU5IDM4YTNkYTAyNmQ1ZTU3NDNkZTY3YTVlZDhiMzU5MjM0M2RjMDUwNTUgbGVnYWN5LXRydW5rCis1NDU2MCBlOTM4ZTllZjQzNGI4MmU2MWY4Yjg1Y2UwMzIyM2QyNzBhYjkwNDg0IHJlbGVhc2UyNS1tYWludAorNTQ1NjUgMzJmNzJlNTc2MThjYzE1YjJlZjYxMmNkNDhiODZjMWY2MzNmMjg4YiBsZWdhY3ktdHJ1bmsKKzU0NTY2IDhmYzYzOTZmMDc2YTVlY2JiMjFhNTNjNThmOWM4OTU3NmRhM2ZiZDMgbGVnYWN5LXRydW5rCis1NDU2NyA2NTBlZTE3OWYzY2VjMjBhN2JhZTZkZmYyMjQ0YTM4YTNhNWEyMzFiIGxlZ2FjeS10cnVuaworNTQ1NjggODI1OGYyNWQ0M2Q3OTY0OTAzNGU1ZjM2ZjVkNzFiYWJkYzEzOTBmZCBsZWdhY3ktdHJ1bmsKKzU0NTcwIDNjMDkxM2I2NWU4ZDZkNTVlN2Q2MTRmOWQ4ZDM5OWNkOTZhZGQ2YWMgbGVnYWN5LXRydW5rCis1NDU3MiBlYjI1YzhlMmI0YTFlYmUyNDZhMmU2NGFiZjYyM2IyOTRmMmYxMTJjIGxlZ2FjeS10cnVuaworNTQ1NzMgYTA3Zjk4Y2ZmYmRmZWY5NTEzNjI2NWUxZDY0ZWRlYWRiOGRhOWRkOSBsZWdhY3ktdHJ1bmsKKzU0NTgwIDJiZTEzMzAxM2I3MWNhYjI4M2VmNDA5M2Q3N2NhZDU0ZTg4MWYzNzIgbGVnYWN5LXRydW5rCis1NDU4MSA4YmU3NDRkNWM1NjczODkyMzU1YmNjZDBmNGQ4NDZlNGZhMjBmZDQwIGxlZ2FjeS10cnVuaworNTQ1ODIgMDNkNWRiODMyNWY0MTFhNmI3ODNhMGE2ZDk5YjNkZTc2ZTIzMjRjYiBsZWdhY3ktdHJ1bmsKKzU0NTgzIGEzMWIwYjE4Y2FjNjJkOGZlMzczNWY0NWMyMTdjMDc0YmNhZWFmYWIgcDN5aworNTQ1ODUgNjUzMjZhMzgxNWY3NjBhZTg4NzQxOTk5ZTQ3MGE4MmZkMmZmYmQzNCBsZWdhY3ktdHJ1bmsKKzU0NTg2IGU0ODkzZWU5YTg4NTc5NjQwMDU2ZjQwMjE0YzAxYWJhMWVjNmYwN2QgbGVnYWN5LXRydW5rCis1NDU4NyA1MDk1YWZlZTA4MGYxMDA5YTU4MjljOGFkNzQwN2U3M2FkYzI2Njg4IHAzeWsKKzU0NTg4IDgzNGRhNTJlYjJhNGViZTZmODBlMDU5ZDExM2FjZjFiMDQ4ZDMyOGEgcDN5aworNTQ1OTIgNDVhMjc2MWM5YjE2Y2UzYjNlNDdiM2U4ZDliZjhlOTJkMGEyZjI5ZSBwM3lrCis1NDU5NCBkMTQ0ZjgxNTc0YzA4NWRlMTViODI5MWMwYjAwYmY1YmNjZGFiNzIyIGxlZ2FjeS10cnVuaworNTQ1OTUgZDQxNmQ5NzE3MTgxNWJhNjI4ZTQ1NzExNWFhMjQzZDFmZDZiYjg1NSBhbWstbWFpbGJveAorNTQ1OTYgM2U2ZDAzMjE3YTAyYjA1OTlmNjdlM2EzOTY4YzRkNGNmNDM4MWNiOSBhbWstbWFpbGJveAorNTQ1OTcgNDZhZDIxOTM5NjhlZmE3YTI4ZmNjNThkMDZmYzczNjAwNDMzZGQ4NyBhbWstbWFpbGJveAorNTQ1OTggNzMwNTQ1ZjI0MDg2ZGQ5ODE5Mzc2NThmMWNkMTcwMGY3MmVhMDgxZCBhbWstbWFpbGJveAorNTQ1OTkgMmQyOTY2NTY3OWU2NzQ2NjAzNDY1MjQ1MzZhM2I0ZWQyMDUxY2IzZCBsZWdhY3ktdHJ1bmsKKzU0NjAwIGVmZGNlOGQ4ZGI5OTAwMjhhNDEyZGM3NzE4ZTg0NTMwYWJmMTE4YWIgcDN5aworNTQ2MDEgZjlkZmJiNWQzNWMyZjMyZTYyMGY0ZDQyOGE3YTFjZjVjYTY4MGM4MiBwM3lrCis1NDYwMiBiODk3Yjc3YTAwNGY3YTU4ZDg2NzIwZTkyNTIzMjE5YWVmMDNmNDUzIHAzeWsKKzU0NjAzIDM5ZTQzODZkNzFmNjUyNWFiNjU0MDc4MzczYTQ1NjdmYTI5ODBlZGYgbGVnYWN5LXRydW5rCis1NDYwNCBmNTdlOGUzMjU0NzVlYzUwNjYzOGIwNDY1MzBlOTM1NDk1ZGRjY2RmIGxlZ2FjeS10cnVuaworNTQ2MDUgNWE4Y2E5ZGQ4OWRiMzQ3Y2ZlMjg3ZmU1ZDkzZTA2ZjZmNzIxYTM2ZSBsZWdhY3ktdHJ1bmsKKzU0NjA2IGUzMzQ5ZDQxMjY4MWVlNmYwZjQxODJiMWVmZWNkMDViY2Q5NzJlZWQgbGVnYWN5LXRydW5rCis1NDYwNyBmYTIxODFiZDI3MDQ5YmQ4ZmEzYzkxMjQyNDRmOWRiYzhjNmJlYzU1IHJlbGVhc2UyNS1tYWludAorNTQ2MDggM2ZkOGYwNjU3N2ZmZjlhNTEwNzIwYTk4Y2UyYzI3NjA2NWEwMjMzMSBsZWdhY3ktdHJ1bmsKKzU0NjA5IDUxOWU3MmQ2MzBkMjA4NzM4OTZlNmU0ZDY3YTFhODcxNzBmNTA5NWYgcDN5aworNTQ2MTAgODhjMmFjNTkwNDQxYzJlNTNjYzYwNjc5NGNmNDgxMjcwNDJmMzkwZCBwM3lrCis1NDYxMyBjY2RjNWIzYjliMTE3YWM5ZGFiNGVkYTA4OWRmNGRhM2E3NmNjMTJjIGxlZ2FjeS10cnVuaworNTQ2MTQgMzc4YjJmNDdlODA4ZjcxMzExYTA2YWUxNGRmY2RiNGQ2OGY2OTFjYSBsZWdhY3ktdHJ1bmsKKzU0NjE1IDZmOWU2OTNkNzZhMTg0ODQ4YTRmYzJkOTY4NDQyZWJlNDg1YWZhYWYgbGVnYWN5LXRydW5rCis1NDYxNyA4ZTNjN2E1YWNiY2RmMDAxNDdmMjNiYTIwYjMyNGVhNjFiNzk1NzMwIGxlZ2FjeS10cnVuaworNTQ2MTggODNlMWIwNjExNzE0NmM2ZGY4N2IxYTBhMTFmM2E4NDMxYTlhNTUzYyBsZWdhY3ktdHJ1bmsKKzU0NjE5IDRlNjBlM2E2MGY1MDRjYjNjMWJkMzhiNjFkMDhiZjUwMTU3ZGE3MWIgbGVnYWN5LXRydW5rCis1NDYyMCBhNTA3NWE1MjczZGY3OGQ0YjE5Nzg0NDcyODFmMmVhY2U0MGM1ZDYyIGxlZ2FjeS10cnVuaworNTQ2MjEgY2RiMjU3OThjZjBiYTA1YTRkZDViYThlZjIwOWM3ZmIyNGJhOTJjNCBhbWstbWFpbGJveAorNTQ2MjIgNTg0MjdlMWU1MWJkYzYwNjg5ZmQ0OGQ3YTgxYjkzYzhiNWRlYmFjMSByZWxlYXNlMjUtbWFpbnQKKzU0NjIzIGRjNmU5Zjc5Y2M0YWZiZmM2ODA0YTZjYzA4ZDhlZDc5NjIwMDYxYmUgbGVnYWN5LXRydW5rCis1NDYyNCA1MDI2MzIzZDk5Mjg4MzM0NjM1ODk5MTU0N2RlZmJhNjY2NDI5ZGEzIGxlZ2FjeS10cnVuaworNTQ2MjUgNTVlY2MzYTQ1Njg2NjM4NzJhNzk1MzdhNmZiNWQ5ZDc3YzNhZDIxNSBsZWdhY3ktdHJ1bmsKKzU0NjI5IGMxZjY3ZTFlZWU1OGI2MTkzMTI3OTA2MTUzZThmYzk5ZjEyNDNlZTggbGVnYWN5LXRydW5rCis1NDYzMCAzOGE4NjExODFmZGQ1OGMzNWQ5ZTM4NDMxZjk0MGE5ZGMwN2QyM2JmIGxlZ2FjeS10cnVuaworNTQ2MzEgNDFkYjNmMzBhM2Y5ZjBkMWMxMWM2MTBkMmYxYWE1OGM3YjQxNjVlYyBsZWdhY3ktdHJ1bmsKKzU0NjMyIGRiOWVhZGMwNzgyNjQyMzYxYmY0NjM3ODNhOTY2OTdjNWNkMDVmMGYgbGVnYWN5LXRydW5rCis1NDYzMyBmODY1NTdlNTAzZjNhN2QxM2VhZmNhZGYwMDY2M2MxZjE1NThjNGViIGxlZ2FjeS10cnVuaworNTQ2MzQgOTM0Nzg3NDQxMDM4NzlhODViNDMxYjIzOTMyNDVhNjYyOTBhNjczMiBsZWdhY3ktdHJ1bmsKKzU0NjM1IGMyYmYzZDY0NmVmZmEyYjMyOTAwZjUzM2E5ZDc5YzQzOGFkYjY4YTEgcmVsZWFzZTI1LW1haW50Cis1NDYzNiAyY2U4ZTgwNTM5Y2Y3OTE2M2JkYWEwNjU1YTRkNWUwZGJjYjQ5NDU4IHJlbGVhc2UyNS1tYWludAorNTQ2MzcgZmM3ZmJjZjJhZTUxNzdhZmRmMjU3Y2RhNjNhZDQyODIyYThlZjhkMSBsZWdhY3ktdHJ1bmsKKzU0NjQxIGYyMTliYjdlNzRjOTIxNzJhOGE5YjM0MGJlNWU1NjdkMWZmZTI4OTUgcmVsZWFzZTI1LW1haW50Cis1NDY0NCA3ZGVlN2Y3ZDI5ZjA4YzllODAzN2JhMzBlMjcwZjRiZTRlZGI0OGEyIGxlZ2FjeS10cnVuaworNTQ2NDUgMjIxMTk0MjQ5ZmE4NmUzYzVkMTMxNmIxYjY5ODNlZTRkMzRmNGEyNCByZWxlYXNlMjUtbWFpbnQKKzU0NjQ2IGI1Yjc1MGNmODVjMjA5NTZlNmJlNmZjNzI1M2I4YTIwNzJmZjZmMjkgbGVnYWN5LXRydW5rCis1NDY0NyA2OTZhNjY2ZGZlNjE0MTY5ZTY1N2JmNDgwMjVlYTI5ZTk4Yzg4MDIxIGxlZ2FjeS10cnVuaworNTQ2NDkgZWE2ZjJjNWQyNzQ5MmYyYzU1YjU5NzczMDgyNTFhMTk2NmJjNGFmMyBsZWdhY3ktdHJ1bmsKKzU0NjUwIGU5NWQyYmNmZWI0NjMxZTYzMmEwM2Y0NDA1MDlkZWNlZmFmZTNhY2MgbGVnYWN5LXRydW5rCis1NDY1MSBhY2RiNGYzYzNkNjMyMmEzYTk3YjkwMTBhMmQzYzU3NTk5ODQ4MGM4IGxlZ2FjeS10cnVuaworNTQ2NTIgMWE1ZGEwNzhjNDM1ZjJmNzU1ODAwNWJkMDNmZTJjMzc5ODIyY2I4NiBsZWdhY3ktdHJ1bmsKKzU0NjUzIDkwYzRjM2YwNDIwNTZhZmJlZGJlNDQ2MGE5ZGM5MGU0MmM5Y2ZkNzYgbGVnYWN5LXRydW5rCis1NDY1NCAzNWJkYzYxYWM4ZWFkZTlmMmJmMDRlYjk0OTI1MzYyZTdhNzEyYzAxIGxlZ2FjeS10cnVuaworNTQ2NTUgNDdkMDVmMWFlYmRkZmJkYzJlMDBkYzg1ZTUyY2NkNTJhNzAxZjNiMSBsZWdhY3ktdHJ1bmsKKzU0NjU3IDgxZTU4ZjAxMDFkYjdhMTIxNGU5MTA1NTA3MmY4YWMyZmQxMDRiZjEgcmVsZWFzZTI1LW1haW50Cis1NDY1OCBmNzY0YTc1NTIxNjJlZmMzMDkzOGI3ZWQ4OGU1MWFjZGMzMWJjYTdhIGxlZ2FjeS10cnVuaworNTQ2NjAgMTJmZjIwOTQ4YTAyMjU3MzdjNTI0ZGRhNzIyNWZhYzM3MWIzNTc4MSBhbWstbWFpbGJveAorNTQ2NjEgNjc2MGYzOGU5ZWQ2NzYxYmRmNjhhYTkxMDA0ODhkYzBlY2E5NjEzMiBhbWstbWFpbGJveAorNTQ2NjIgNmEzZGQxYzRhN2RmMDE0MTU1NDFhZDkzYmNhOTZmNzNhYzI2YzMwZSByZWxlYXNlMjUtbWFpbnQKKzU0NjYzIDRhMDM4NjBhZTA4YjU3MDdkZWY4YzE2OGY3MWVmOWFlYTY5NjFkNDIgbGVnYWN5LXRydW5rCis1NDY2NCBlZjVkM2U1MzkzODQ3MjIwNWNlZWZlNDBhYmJjMWM0MDRhYzM1YmI3IGxlZ2FjeS10cnVuaworNTQ2NjUgOTliZjE0NTU1OGQzNWIyNTU5YzhlNzcyZTcxYjMyNzUxOTExNGMwMSByZWxlYXNlMjUtbWFpbnQKKzU0NjY2IDQ4ZDhkNWQzMTdhZWUzYWEyY2M2NjQ4ZWNkZTYxZDQwNjk1YTcxNDMgbGVnYWN5LXRydW5rCis1NDY2NyAzNDNlZWYzNDI3NzczYmUwOTAyMzIwZjNkYjkxMzU2ZWI1MWYyNWU4IHJlbGVhc2UyNS1tYWludAorNTQ2NjggZTY4NWJmYTZiNGVhYjg3NTAyNGQ0MjE3NWJkNTQwODNmOTBhNjZkMSBsZWdhY3ktdHJ1bmsKKzU0NjY5IGY3MWZlZWM3ZDU0Nzg5Zjk0YTNlZTk5ZGY5ZTM3OWZkNTQ2ZjU1NTggbGVnYWN5LXRydW5rCis1NDY3MCA4OTBiYjkwMDBjZTU1NTMzZmE2ZjU1NzMzZmI2MGFhZTJhODEwYjBiIHJlbGVhc2UyNS1tYWludAorNTQ2NzEgMjJhMTY3YzQ2NzhjMmE4NWVmN2JhNmRkOTg0OGM0NzhhN2VjM2QwMyBsZWdhY3ktdHJ1bmsKKzU0NjcyIDg1MTEyZGQ1MDA1OTVlZTIzM2RmNTMzNmNhNjIxOWJiYTQ2OTFkNjIgbGVnYWN5LXRydW5rCis1NDY3MyBjZmFjNjRhMDJhM2Q4M2UxNjM0NDRhMWRjY2UyNzM2M2EwOWU0NmVhIGxlZ2FjeS10cnVuaworNTQ2NzQgYzczODE4MDQ0NDdiYzNkNDE0YjBmOTMzYzQwYTRlNDYzNzk4NzRjNCBsZWdhY3ktdHJ1bmsKKzU0Njc1IGFjMjU1YTQyZWMwZTFhOTE0MzJmYWRjMWE5Y2RkN2ZkMzU5MzE2Y2MgbGVnYWN5LXRydW5rCis1NDY3NiBkNDFkMWJhMjA5Yzk0MmFlMDcxYTY3NTJiM2I0MTFjMjBiODMwYTQ0IGxlZ2FjeS10cnVuaworNTQ2NzcgY2I2Y2NlNGQ0MjMyYmY0MjhkMjQwZGNjNWVkZTdlZDE4MDE0NzVmZiBsZWdhY3ktdHJ1bmsKKzU0Njc4IGUxYWIyNWZkNWJhZDgxNDU1ZjRjOTRjODRiZTEzNDQzZDQ2YmI3YWQgbGVnYWN5LXRydW5rCis1NDY4MSBkZDdjNjliZDBjNTJhMTM1YjMxMzY3NDM1YTczOTJmMTg5YzQyMzEyIGxlZ2FjeS10cnVuaworNTQ2ODIgZTdmNzhhMzdhZTUwYjBiOWYyOTEzMzhiMWU4YzkxNTZhYzc4ZTAxMiBsZWdhY3ktdHJ1bmsKKzU0NjgzIGI3ZTM3OGU5ZDAyZDU1YzNlOGRiMmNkZjlkYmM4MzZhYTJiYjUxMmIgbGVnYWN5LXRydW5rCis1NDY4NCA1ODZhN2U4Nzc1MDBlMjBlZGRjMjZlNWE3ZmQ1Y2Y5NTAzZGFjNDA0IGxlZ2FjeS10cnVuaworNTQ2ODUgZDhjZDg4ZjkzMDk4MGRlMGY4NmVjYjA1MzRhNGMwMmFiOTI0MGJkOCBsZWdhY3ktdHJ1bmsKKzU0Njg2IGIwMDFiNjU0NzhmYWJlOTgzNjEwODA0YWQ4OTkzOTI1MTdmZmZmMjkgcmVsZWFzZTI1LW1haW50Cis1NDY4NyA0MzI1MDAxODI4NWMyYmIyMTk5MTgyY2MxNGExMGM2YWM4YzI4Y2M1IGxlZ2FjeS10cnVuaworNTQ2ODggNzEyYTE1ZWZjZjE5YjczNjkxMmQzZWFmMDBlYTNiZTY0YWZlZGMwOCBsZWdhY3ktdHJ1bmsKKzU0Njg5IDUxMmY1NmFmYTRhMDUxM2U3MGQ0MDYwNTBjYTg3MjNiYjVjODAxYjYgbGVnYWN5LXRydW5rCis1NDY5MCA0YzdlYmMzOTdkOTQ3YzcxMjZkNzZiZGJhMjBkN2VhM2M0NGYyMzNkIHJlbGVhc2UyNS1tYWludAorNTQ2OTEgODEyMDI3ZjFlZWE1MzVhM2EzMTkxZDdlMGVjZDlhZmFmMjdmMzhjMyByZWxlYXNlMjUtbWFpbnQKKzU0NjkyIDI4YWVjMTM1OGY1OTRlMTRiZjdiZTZkODZiMGRhYjUyNTE1ZmMyZDYgcmVsZWFzZTI1LW1haW50Cis1NDY5MyA0Nzc3YzQwMDdiNWIxOTQ0MjM5NTNkNDFiMWU1ZTZhZGFhYmE2YzVkIHJlbGVhc2UyNS1tYWludAorNTQ2OTQgODE3MGQ0NGRkOTA0ODhkZTAyNzhlNTExYzAzN2RiMzFiMjlkYzVhNiByZWxlYXNlMjUtbWFpbnQKKzU0Njk1IDgwZmY3NWZhMjc1NGViMGY4YjQ1YzA0NzJlNGJmMTE3ZDYxYzFjNDUgbGVnYWN5LXRydW5rCis1NDY5NyA5YTUwZTJiNmI2ODU3NDdmOGY5MDU3NTRjOTI3YzFiODViNmY5YTQyIGxlZ2FjeS10cnVuaworNTQ2OTggZWE2ZmJmNDA0YzM0ZDk2MzFiODMwNzRjYTQxNmNlZWFkN2JhOGVmYSBsZWdhY3ktdHJ1bmsKKzU0Njk5IDU4MWQxMjdlODIyYjcxOTQ2ZTE2NGVjODdiMWExNTY2OTFiZDM1ZWEgbGVnYWN5LXRydW5rCis1NDcwMSA5MTIwMjgxMjQxYjgyY2VjMTAxZWFkY2E1YTY5YjRjNDcxNTFjNTc2IHAzeWsKKzU0NzAyIGJhZDVmODMyODA5ZmMyOTQxOTEzZTQwZmMxOGQ5YjAyZWEwMGMwZWEgcDN5aworNTQ3MDMgNThkNDljYWU4ODdmMmY5YTNkZmJkNzYxMjQxOTE4ZGZhNTFjN2Q2NSBwM3lrCis1NDcwNCAzYjEzOTZiMDEyMzkzODIwMjkwZmMzMDUwOGUxM2UxNDhmNDlhZTE2IGxlZ2FjeS10cnVuaworNTQ3MDUgMjM0ODY5ZGQyNzg0ZWQwZjZmZmJiYWNiMmE1MDk5YWUzMjhmOTViZiBsZWdhY3ktdHJ1bmsKKzU0NzA2IDk0MDhkY2QzY2U4OGZkZjAyZjFiZjg3NDQxN2E3MWIyM2M5NzZmNjUgbGVnYWN5LXRydW5rCis1NDcwNyBjN2I4MzBjODZmNDJiYmQzODFjZmY2MmYxOTJjODU0NDI3MDBmOGI1IGxlZ2FjeS10cnVuaworNTQ3MDggMDIwZmQ2ZGU2NTI1ZGEzNGMwNmIwMWUyZWNmMTcxOTBmMmY4NTZmZCBwM3lrCis1NDcwOSBjNTY2MDA1NWI0MjVkZGJhYWQ2ZmE0Yjc5NDhlZDE3MGVjMDYyY2Y2IHAzeWsKKzU0NzEwIGQ4YjE0OTk0ZDg3MGI2OGU0ZDBiNzU5ZGYxMjM2YzhmODNiNWNhZjYgcDN5aworNTQ3MTEgODBmNWVlMjFlNTQ1NTg3ZGQ1MGJlZjNjZWYwYjMyODU4NGRjMzY3NyBsZWdhY3ktdHJ1bmsKKzU0NzEyIGNjMDBiY2U2YzU5ZDM3YTM3ODQ5MzA3NjVlMTg2MTgzNjBmNzMxMmYgbGVnYWN5LXRydW5rCis1NDcxNCBiOTEyNGMwZWYxN2EzMjE4ZGU0NzNjNDZiNzhlNjZjZGRkOThlYmFjIHAzeWsKKzU0NzE1IGFmNTExZDI0NDYzNjkzY2Y0NDBkMTFjODg2MzliYmFkZmNkOWY5MTEgcDN5aworNTQ3MTcgZTI5ZmE0YTFjYmQ5MzFiM2ZlYTcyNTM0MGVjNjc3ODIxMTdkOWE1ZCBwM3lrCis1NDcxOCBhNTcwN2JmNGY2ZDE0MzM5MmVmYjYxYzhjNDk4MDllYWMyNmE0OTlkIHAzeWsKKzU0NzE5IDMzOTAxNWQ5OGI3ODY0MjI1NzdhZmY0YjU1NTUzZDAwZTk1N2RkOTcgcDN5aworNTQ3MjAgNTIyYjNmMzVkMGViN2RiYjYzNzUzMmRhNzdmODVlMTZiZjVjMDU0OCBwM3lrCis1NDcyNiA0ZDUwZmFkOTU3NjgyMDYyZjQ0OTc1MTQwZGY5NGI2NmJlMGVmOWNjIGxlZ2FjeS10cnVuaworNTQ3MjcgNjU3M2VjMWU1ZGMwY2RmZjRhYjIwNmY3Yjk5NTg2MmFjM2ZlMWE3NiBsZWdhY3ktdHJ1bmsKKzU0NzI4IGY0MzkxYWJlNWIwMjM0NWYyMTU2YmM0MzU3ZTU5MzMxMmMwYTJmOTYgcDN5aworNTQ3MjkgODU0Mzk5Mjk3Zjk1N2U4NTI1MTJmYTU4ZTViNGI3YTg1ODlhYTllYSBsZWdhY3ktdHJ1bmsKKzU0NzMwIDY3ZjkwMGQyZjJlNjIxNGVjODExYzI1NzdmMDZlZmNmZTg5M2VjNTkgbGVnYWN5LXRydW5rCis1NDczMiBhZTRjZWQyOGE4MzkwMmJiMjFlOWYzMmU1MjY1NTc5OTUwNzk1MmM4IGxlZ2FjeS10cnVuaworNTQ3MzMgNGY3NzAxNjI1NGJjODRiZjUxZmUyNTA3YmFmZjJmNjUzNDVmNzkwMCBwM3lrCis1NDczNyBjOTBkNzVhNWUxOTExNGJjN2FhZWMyYTZjYWVmYjQ0YjU4NDM3MzNkIHAzeWsKKzU0NzM4IGQ0MTA4YWNhODc2NDI3YTlhYmE1ZWI5OWQzMmNjMzJjNDU3MDZmYjggcDN5aworNTQ3NDAgYmEzMWU3MTIxMGQ0NjlkMzM2MTc4NmY4NDczNmQ4MTczMzAwYzZkZiBwM3lrCis1NDc0MSBlN2Q5NzkxMDE0MzA4YTg3NTE5YTkzOWIzYjk1MGNiODgxYzViNjY2IGxlZ2FjeS10cnVuaworNTQ3NDIgN2M2OTcyZjM3ZmUzNTMyMGNjMWZiY2JjMmY1ODNiN2ZkNDUyMGI1OCBwM3lrCis1NDc0NCAwNDg2ZGVhYWFkZTNlNDBlODZhYTVlMzE4ZTYzMTYyYTA0ZjhhYThiIHAzeWsKKzU0NzQ1IDQ1NjFmNmRhM2I3ZDM5NDc4NjhmNTUxZmJjN2VkZWU5OGU2YzY4MTkgcDN5aworNTQ3NDYgNDAxMTBkMDZlODJhZTIzYjY3OTNlNmNkMjI5YzlhOTkxNzhiNDQ1OCBsZWdhY3ktdHJ1bmsKKzU0NzQ3IDE1ZjM0YWQ0NjgxYjg4NTQ1YTM3NmE1ZWVlNmYzNzZjMGU3ZGY4N2MgbGVnYWN5LXRydW5rCis1NDc0OCA3M2MwMTY2OTZhODJmODRiZWM3YzVkMDJmMmRjZTY4MDRjMDFiMzk3IGxlZ2FjeS10cnVuaworNTQ3NDkgMjZjYmNkNzlhMTUzMTAxNTY1MDNlNDk5YjI4MTgwN2IzYTNjMmU3OCByZWxlYXNlMjUtbWFpbnQKKzU0NzUwIDI4YmM3ZWQyNjU3NDczMDVhNTI2MTI0N2U1YTIwMDJmOWZmMTA1MTMgcDN5aworNTQ3NTQgOTgxYTMxZmYxOTY2ZGYzMjU5MzQ5ZDFlZDc2YjA1ZDFmY2UwYjdhYSBwM3lrCis1NDc1NSAwMGQ5ZjUwYmRjMzFhYTk0Y2IxNWEyNjcwMmM2ODFjNDIwNmRhNGM2IHAzeWsKKzU0NzU2IGYzOTA3OTNlNzVkZWMzZDk3YTgxZjAxYjYwMzIwMWYzN2Q2OWFmZmEgcDN5aworNTQ3NTcgNDZkMGY0MDU3NzA1YjA5N2U5YTE3MDg3MWZkMDFhNWI2MjExZGQwNiBsZWdhY3ktdHJ1bmsKKzU0NzYwIDBkZmEyYTU2NDA3NjBlNjg4ZjU0N2M0YTRjMGNhYzVjNGZmM2IwMWMgbGVnYWN5LXRydW5rCis1NDc2MSAzNjY3ZDFhOGM5MTZmMWEzZGM4MWE5MDNlMGNkYmY4MzI2YTY3YWJhIHAzeWsKKzU0NzYyIGEwMWNiM2RmMzhkZGYzNDc0MWIyNDgyZGE3M2Q5OTdlZGQyMTA4NGMgbGVnYWN5LXRydW5rCis1NDc2MyBjNGY0MDNmNDUwZWRhNjVlOWEyMTZjNzA5YTM5MmYwOTQwZTA0MGEyIGxlZ2FjeS10cnVuaworNTQ3NzIgY2VkYzhkN2QxYzdmZWI1MmIyNmZlYmVkOWVjYzc5YzI3NTU1NjE0MCBsZWdhY3ktdHJ1bmsKKzU0Nzc0IDg2YzQ2ZGM2YTc3NGFlOTc0NWE1MDQ4ZTQ0MjhmODBhZTE3N2YxMzEgcDN5aworNTQ3NzcgNjVjYjZiMWZhMzk1MWYzNDUwODBkMWM4MmFiNzM3Yjc5YTc0YjdmYyBwM3lrCis1NDc4NCBjMzRkNzA1Yjg4NGU0ZTlmMDczMzc5YjUxZmUwYWNhMmU1ZmVhNWM5IGxlZ2FjeS10cnVuaworNTQ3ODUgYzBjNDQwN2QzNTMxYzZiYWY1NGNjMDg1OTQ0ZGZlZWNjZjdiOTA2MyBsZWdhY3ktdHJ1bmsKKzU0Nzg2IDg0NDczMTRmNTAwYTk3Y2M1NWM0ZmQ4NDY5YWJmYWM5ZmQxMDMxYjUgbGVnYWN5LXRydW5rCis1NDc4NyA5NTNiZGVmZDgxZmY1NTZhZTYyMWQ3ZmY4NmQxMTgzMjkyNGQ1MjVkIHAzeWsKKzU0Nzg4IDM1Njk1ODdiZWYwNjVlYjkwM2NjYzhiMzYyMjdmZTI4ZDM3YTM2NjUgcDN5aworNTQ3OTcgNDU4YzhkYjJlOTQ2MTZhMmFmMzNjNDc3MDM3MTJjOWE4NjI5Zjg2MCBwM3lrCis1NDc5OCAwYTM4OWI0N2YxMjllOGY2ZDA2ZWJiOGQxMmRjZWYzODE4NjgxNGJlIHAzeWsKKzU0Nzk5IGQxYzNkZDE4NGUzODgyYjk5NDQyNzQzNmViZWFhNDgwOWVkMzZmZGUgcDN5aworNTQ4MDAgZTJkN2E0YzM5MzYwYThmMWMxMzdiMDhhNTFhNDZkZDk2NmJiZTAyOSBwM3lrCis1NDgwMSAzYzMzOWRlODAwMTA1NmI2ZDJhMDc0YTI0MDk4MzFhOGE2NzhlMTIyIHAzeWsKKzU0ODAyIDM1ZjlmZmM2YjUxMGY4ZjljNjZjNjYyY2ZiMjI4ZDZlZTAzNTIwNzUgcDN5aworNTQ4MDUgYjgyMmZiZDg1YWZlYjNiN2FiMjQ3NzQ3NjU5MGRjNDJiOTcyNzEyNCByZWxlYXNlMjUtbWFpbnQKKzU0ODA2IDVkZmQyZjRiYzgzNGI2ODMzM2M1ZjE5NmUwMTA4MjMzNTU1MTk0NTAgcDN5aworNTQ4MDcgNTM0ZTRjNzA3ZTkxZTZiZGE4Y2QzMjU4NTNmOTYxMDI1YjY5MGZlYiBsZWdhY3ktdHJ1bmsKKzU0ODA4IGJhYjljMzgxNzA5MjZiMzc2YjE1MDBiY2NlMDMzNWFiZTY5M2UyZDIgcDN5aworNTQ4MTIgMGQxZTQxNWVjMzZjY2QzNjllNDA2ZDFkYmJlOTcxNDQwNDIxZmI4YiBsZWdhY3ktdHJ1bmsKKzU0ODEzIDgyZjI3OTFiN2MwMjIxNjRhZjJkODIzYjg1YmMzZjQwNmMyMzQ0YTcgcmVsZWFzZTI1LW1haW50Cis1NDgxNCBlYTNjYTQ5NWYzMjExZDNiMWU4NWY2MDQwZGIyMmJmZGY4MzBiNGY2IGxlZ2FjeS10cnVuaworNTQ4MTUgZWQ4MjAyMzlmODc4NzYwNmNmYjg0MDhiOTRiNDI2NzA0MTMxNjNmYSByZWxlYXNlMjUtbWFpbnQKKzU0ODE2IDg0MjM3NzIwOTdjNzRhNmNjMGFkZWQ4N2ZmZTUzMmI0NmYzNGYzODMgbGVnYWN5LXRydW5rCis1NDgyNSA1ZjhhODdmYjRkZjMzMmQ5ZjliM2U3NGJlNGJiOWNlMTRlOWFlNTFhIGxlZ2FjeS10cnVuaworNTQ4MzUgMDYwYzc5ZjZkOTE5NjdmZWQzYzI3OTVjOGRhMDkxZTQ0ZTJmMjI4OCBwM3lrCis1NDgzNiBkNjdiNWQ5NTNiNDUyM2IyOGJiNjFjYzA2YTIzOTU2YjM4MTg5Y2NjIHJlbGVhc2UyNS1tYWludAorNTQ4MzcgYmM3NWM1MjNiOWQ4MTcxNjRlN2YxZDQ0ZWMzYWUzZTYxYWUwNzhlMyByZWxlYXNlMjUtbWFpbnQKKzU0ODM4IDU2MjNlMjMzZTljY2ZkNDdiZTM5Njc4ZTExNzc5M2EyNzIwYzFmMDYgcmVsZWFzZTI1LW1haW50Cis1NDgzOSA0NTc5YTI3NGZkNmUyYTU5ZWY2ZmI0M2MxYzk3OTlhNmRjMGU4YTBhIHJlbGVhc2UyNS1tYWludAorNTQ4NDAgMmZlOTFkMjAxYjA1MjJjMWMzMTc1NWFkMjZkZWI2ZDg3ZDVjMWQ3MyByZWxlYXNlMjUtbWFpbnQKKzU0ODQxIDMxYzkyODI4YWVmYjFiMjRlOTAwNTViMTQ5N2UwNmQ5ZWRmYmEyOWYgbGVnYWN5LXRydW5rCis1NDg0MiAzZTVmZGI5M2M5NWE3Y2MyZTlkNzYwMGM2ZDQxNTJiMzQ2N2U3NTZiIHAzeWsKKzU0ODQ0IGNjNzA3ZjFhZTBiNmVlZDNkMzI1NDI3NGNiNWZmYzUxM2U3MjE5ZmUgbGVnYWN5LXRydW5rCis1NDg0NSBhNDk4NTlmNDRjNDMwYzY1NDIwNmM3ZTVjYjQ4ZDAwNTU4NjUxMWM5IHAzeWsKKzU0ODQ2IGI1YTJlNzUzYjY4MjMxYjBkMWMzZDU2NGQ4NDJiOTVkODQwZDUzMDIgcDN5aworNTQ4NDkgZTAxMTY5NjYzNjVlMmI3ZjZkOThmYTQzNmI1MzVhZGZjMDU2ZGZmMyBsZWdhY3ktdHJ1bmsKKzU0ODUwIGMxY2ZkMGFmNWY1NzMyNzE0N2MzMzVkMjdlOWU5YmE4NDdhYmE3MWMgcDN5aworNTQ4NTEgMDkwOTcyYzIwYTQ3MmU5YjJkNWI5YzExMjZiNzE4ZTQ1MjdlMmVmZSBwM3lrCis1NDg1MiBhMzBhZjgzM2QzODliODI4ZGUzMzQ1YmY0MTczNjY5OGVkYjVmZTQwIHAzeWsKKzU0ODUzIDk2NTczOTVjMjVlNThiY2RlZTYxYmZkOTE5NTcwZjM0NzE2YzViNjcgcDN5aworNTQ4NTQgOTkwMjdjMmIzZmQyZGU0OWE5NjdlYmUwMDhkYTU0MjJjYTQ0OGRhNSBwM3lrCis1NDg1NSBiZWEwYTU1OTJkYjNmZGU5N2Y2OWRiMmZjYzE0NTIwZDU1ZGRiOTI5IHAzeWsKKzU0ODU2IGE1ZTQxMDYzOWUyNDg2MzU1ODA3MWNiZDhiYWM0YjQyYWQyMzExYzcgcDN5aworNTQ4NTcgNjFjMjhkNzc4ZTM3OTMyYjM4YWFhMGJkN2QzNDYwYjQxOGYzMzA5ZCByZWxlYXNlMjUtbWFpbnQKKzU0ODYzIDQ5MGQ4YzA5YWJjYjgxNDk1MGJlN2JiN2EyNWMzZmYyMDQ3YzdlYjUgcmVsZWFzZTI1LW1haW50Cis1NDg2NCA0ZTBlODRmOWQxNGUyYjVkMjg2NGIxYjNiMWUxNTJkMjBjMTJjMDVlIHJlbGVhc2UyNS1tYWludAorNTQ4NzMgYzMyYzRiM2RhOTNmZDRiZmY2NDE3ZDY2NDA5OGM0YWEwMGU4YWFlOSBsZWdhY3ktdHJ1bmsKKzU0ODc0IDU4NTI3YjliMjQyYzdkNGJkNTE5ODBkZDVhMTBhMTFhYjZlYmU5NzQgbGVnYWN5LXRydW5rCis1NDg3NSA1YTZkOTAzYWI3YjViYTRlZjBkMWQ5MWQyYzFiMGVkNmIxYWE0ODljIGxlZ2FjeS10cnVuaworNTQ4NzYgZGE0MDNkMmI4ODZhYjU4YmYwZGYxYzExZGM3MWRkYzNkYTU4OTdlNSBsZWdhY3ktdHJ1bmsKKzU0ODg0IDc2ZmQzYjk4ZDAwN2Y2YzQ4Y2FlOTE5YjM5YmRjMTNlODdjYzNlMGIgbGVnYWN5LXRydW5rCis1NDg4NSAxN2U0MzYzZWYyYjUzMGYxYWE5YTBiYzEyODQxOGVlNjNmN2M0NGUwIHJlbGVhc2UyNS1tYWludAorNTQ4ODYgMGY2NzVhNjI5NzcwYWExYzJmYmFkMDAyN2MyNTU5MDdmYjFhYzk4MSBkZWNpbWFsLWJyYW5jaAorNTQ4ODkgMDFlNmQ4NGUzODkyNDUyNDczMjM2ZjIzZWVhZWY3NGVlOTk5MzZhZSByZWxlYXNlMjUtbWFpbnQKKzU0ODkxIDE4Nzk1ZDQ5YjhkMmFjNDBiZGQzODg5MDM0N2I3NDAwYzRmNDU0ODkgZGVjaW1hbC1icmFuY2gKKzU0ODkyIGY0MzY2NGU4YTFmYTRjOWZkYzQ1MGQwNTcyNGU3MmQ5NGVjNDE4MWUgZGVjaW1hbC1icmFuY2gKKzU0ODkzIGJmYjZmMTMzMmZiNGUzM2Q1YzcyNGE2YmJlYWY1NDZhNTA5NjY0ZTQgZGVjaW1hbC1icmFuY2gKKzU0ODk3IGY3NzdkMWRkNGRjZGRhMjU3N2QyZmFmNDJkMTQ2ZmJjNGE5YzljYTIgYmNhbm5vbi1vYmpjYXAKKzU0ODk4IDZiNDY1Y2MwMjViM2Y3NWNiZmJjNmViN2Q0OTE2NTNkYzg4ZTYyMWEgYmNhbm5vbi1vYmpjYXAKKzU0ODk5IDg0YjVhY2VkNTM1NjEzODhmMzExNzM0OTNkOGI5MGQ1YjAzOTY1NzcgYmNhbm5vbi1vYmpjYXAKKzU0OTAwIGFmNzI2ZmI2ODFmYWFhZWI4ODE2NjI0YWM2MTVjZTdkNDk5YTI1ZWQgYmNhbm5vbi1vYmpjYXAKKzU0OTAxIDBiNzA4MzBlZDc0M2ZjY2FkOGVhZGEzNDA0NzllNjFjZTNiZjE1ZDQgYmNhbm5vbi1vYmpjYXAKKzU0OTAyIGJiNjBiOTUzOTgzOTQxZTkyMjY0YjI3ZTFiM2ZhMjU2NzRiZWFkNDIgcmVsZWFzZTI1LW1haW50Cis1NDkwMyA4Y2QwOTMyNzRkNTc4MTBkNmQxNjhhMzNkNzg2YTVkM2M4MmQ2ZDY2IHJlbGVhc2UyNS1tYWludAorNTQ5MDQgMWNjNmJmMjM0OWU0ZTFlMDNjZDA3NWQ2YjliODhjOTUyZjJmNTBiZiByZWxlYXNlMjUtbWFpbnQKKzU0OTA1IDlhOGMzZDlmNDA1YThhNWZjNjdkMTdmZmQzNzFmYjFhMzMyM2MzODIgcmVsZWFzZTI1LW1haW50Cis1NDkwNiA2YzZjOGE4YWZiMzgxZThhYTQ0NWQ4YmY3NzAwNDcxYWNjYzhjNTY5IHJlbGVhc2UyNS1tYWludAorNTQ5MDcgNWE0NjE5MjE0MDQzZDAxNjYzMmVlODQyZTA4ZDU4ODNjNjc5YTAyOCByZWxlYXNlMjUtbWFpbnQKKzU0OTA4IGFhM2M3YmE1M2Y5ZDJmNDY5NmUwZWYyMjBkZDMyMzAwNmE3N2Y4ZTMgcmVsZWFzZTI1LW1haW50Cis1NDkwOSAwYTZlNTM3YjhkOTZiMzY3YTk0NGY2NDFlZmYyOTZhOWM3NmNjNTAyIHJlbGVhc2UyNS1tYWludAorNTQ5MTAgMGM1MDE5YWZjNTViNWUyYWVjZDhkMWQ2N2I2OTI3OTBlMGIzYWZkOSBwM3lrCis1NDkxNyAxZTI4YzY4YjRlNDNmYjJmOTU2ZDg4MmIwMDM1ZGE0M2YzNGJjZDU2IHAzeWsKKzU0OTE4IDI4MDRlNDg4NjFiYTYyN2Y0ODhkZTU2NmRmMTNiOGY5YjhmNWZkNTkgbGVnYWN5LXRydW5rCis1NDkxOSA0NTYzOGIzN2I4MmM4MTM4ZTVkNjZmNWQ5YzUwMWQzNjEwMzJiMDVlIHJlbGVhc2UyNS1tYWludAorNTQ5MjAgM2NjYjRjMTQzZDNiOGIyNTNlZjAxNGVhY2UxZmJlMTEyYjc2OTMyZSBsZWdhY3ktdHJ1bmsKKzU0OTIyIDNjMjY3MDkyZjEzMWU1YWI3NmU1N2U1ZjViOTFhMjlkZDFhYmZlMGQgcmVsZWFzZTI1LW1haW50Cis1NDkyNCBmNTUyNmQyZWI2NTQ3YjFkOGNhYmNjYTM5YWRlMjlmZTE1OTJlYzhjIHJlbGVhc2UyNS1tYWludAorNTQ5MjUgNTVkNzYxYWNkY2JjZDQxMmQ5ZWYxNGFjZjE5NzliOTc1MzBmOGEyMSBwM3lrCis1NDkyNiAyNmRmNTY2ZjgwZjBkZDc4ZmM0NTBmY2NlZWJmMzEwNGQ1OWQwNTYxIHAzeWsKKzU0OTI3IDgxMGQzMzNhNzNhMTBkZGUwZjYwM2Y1ZmFmYjUyYWM1YWRhMGQwMGIgbGVnYWN5LXRydW5rCis1NDkyOSAzYzEyMDVjYTQ0MmI2YmM4NzYwY2Q4ZGQ2MjJkN2E4NTllNmE0YjRmIGxlZ2FjeS10cnVuaworNTQ5MzAgZmQwZmJmZmQ2ZDUwZjc4NWNmZDYwOTlmZGQ0MDA1N2E1ZmQ3MTQ2NiByZWxlYXNlMjUtbWFpbnQKKzU0OTMxIDA5ZGRiYWRlNjVmZWRhMzkwMmNkY2U3YWM2YjY2ZmJmMjkyNGUxNmYgbGVnYWN5LXRydW5rCis1NDkzMiA5MWYzMTIxNzZlYWYzNzhmMDc4NWE3ZjNhOTkzYWJmMDY3ZjM2NWIyIGxlZ2FjeS10cnVuaworNTQ5MzMgZjQ0NjE5MzhmNTBlMzViZTM4NjY0ZjhiMWU1NDQ1MmY2NTE3ZGI5MiByZWxlYXNlMjUtbWFpbnQKKzU0OTM0IDJmODc2YTVmZmEwZDNkNGYyYzVmYmViMGU2ZTM5ZDM4NTUwOWUwNmYgbGVnYWN5LXRydW5rCis1NDkzNSBkMzZhMzYxYzA1ZmQwMjdkM2I3ODEwNmI4YTUzYzQxMGU2MzFkOGQ5IHJlbGVhc2UyNS1tYWludAorNTQ5MzggZjU4YzBkMTFhNzVjMzE1Mzk2ZDgxMDhlOGM4MGM5ZDAyMWZiOTVjZSBsZWdhY3ktdHJ1bmsKKzU0OTM5IDhkNTAxOGQ3NTA4YTJhN2IzYTZiMTg3YTQ4OTNlZmJjNjVlODA4MTggbGVnYWN5LXRydW5rCis1NDk0MCBkMDVkOTg2NGI2M2M3OWVjNjFmYTM5NjZmZmYzYjdiNWVjNGY5ZjA1IHJlbGVhc2UyNS1tYWludAorNTQ5NDEgN2VhNTk0OTcxNGFkMTViODZlMDdlYjU3YmZlZmU5OTllMTM2ZDNkMiBsZWdhY3ktdHJ1bmsKKzU0OTQyIGFiZmE3MDU1YjhmMzA5YjI1MDVhNzI1MzdlZDcwODdiNWMxNWMyNWQgcmVsZWFzZTI1LW1haW50Cis1NDk0MyA3ZTk5YWY4NjljOTE3NmRiNDY4MWFiYjM1NGE4ZTFmMGJhOGI5ZGY3IHJlbGVhc2UyNS1tYWludAorNTQ5NDQgNTE5ZjIzMTM0NTNiNzFiZDgyNTFkZGVhZWJjOGNjZGY4MDRmNmVmMSBsZWdhY3ktdHJ1bmsKKzU0OTQ1IGI2ODI3MjQ0OWRmNGIwMzExYmQ3MGM5NGEyN2E0NzM1MzZhMzU1YjUgbGVnYWN5LXRydW5rCis1NDk0NyA3MDhjOGM1ZmMxNzMyMzZhY2QyOGMwOGQ5ZjQ1NzVlN2ExNGY3NmUyIGxlZ2FjeS10cnVuaworNTQ5NDggMWJiMWZhN2ZkMTc0MWIzN2IxZTc4OWEzNzM1ODQxNzc5ZGI1YjhkNiBsZWdhY3ktdHJ1bmsKKzU0OTQ5IDQ3YWViMjQ4ODJiZDc5ZDVhZmI4OWQ3ZTA3NjQ5ODQ1YWQ3NGIxZjQgbGVnYWN5LXRydW5rCis1NDk1MCAzZWU4NDk3NDZjMWJmNWI1MzAwYWExOWM5MjJlODIxNTY5M2U1Mjk2IHJlbGVhc2UyNS1tYWludAorNTQ5NTEgMzc5N2I5ODA5MmNlYTJkYThmZGE2OTJiZDAzZTgzNWY0YjJjYzYyYiBsZWdhY3ktdHJ1bmsKKzU0OTUyIGNhNDg5ODA0YWUyMDEwNjNkNDJlMjJjYjRmMDU1YjQ4NzkwNTVlMDEgcmVsZWFzZTI1LW1haW50Cis1NDk1MyA0YjlmYTgwOTJlODI3MTAzYmNkMWIxYjJmNWY5Njc2Y2VkNDBhODE5IGxlZ2FjeS10cnVuaworNTQ5NTQgN2RlZDc4N2U2MzExNmNjOWMyNmI2OTVjYWNjOTZlOTJjYTA0ZTJmOCByZWxlYXNlMjUtbWFpbnQKKzU0OTU2IDZjNGQ3Njc4YWY1ZTJkMTkzN2ZjOGZiMTY3ZjQxYTIxMDYxYzZlOTMgbGVnYWN5LXRydW5rCis1NDk1NyAxMDAyZjQyZTEwY2RmMmQyYmI1ZTgxZmI3Y2NkYzc5M2IxZjgzODJkIGxlZ2FjeS10cnVuaworNTQ5NTggNzFiNWMxZTJjMDljMjIxZjExMzMzN2VjODFjOGM4ODVlZWYyYWVkYyBsZWdhY3ktdHJ1bmsKKzU0OTU5IDAxOTkwNGM2NDcxN2M4Njg3MzhhOGRiYWQ3YmJlNzM5Mzg4NzJhYjIgbGVnYWN5LXRydW5rCis1NDk2MCAxZjFmYjgxODg4YWUyOGU1ZGI1ZDkzN2I5NzIzZTQ2YjIzYjExOTY3IGxlZ2FjeS10cnVuaworNTQ5NjEgNzYxY2UzOTQ2Yjg2ZWI4MzYzMTE1MGVlNGMwNzU4MDI5MTA3YWQ1ZCBsZWdhY3ktdHJ1bmsKKzU0OTYyIDNmNDNlYmZhOTJkY2YyM2Q1NjRiMDdhZmFjNTJkMDRmM2VhNjZmNWQgcmVsZWFzZTI1LW1haW50Cis1NDk2OSAwZjI5YTFhMDk3MmNkZmE0M2VjZDI0NWZjZTQ5NGU3NWYwMzk0NjIyIGxlZ2FjeS10cnVuaworNTQ5NzMgZTYxNmZhMTMwYzJmY2MzZDA1M2NiZTA3ZTk0NmQxOWI5ODQ1ZmVhMyBkZWNpbWFsLWJyYW5jaAorNTQ5NzQgMDczZDY4YzI5MDQ5MzgzYjBmYzNmNTY5NjEzNGI1MjkzZjk0OWQyZiBsZWdhY3ktdHJ1bmsKKzU0OTc5IGI2ZThhZGVjMDU0YzdkN2NjZDNiZWE2ZDI5OTQ2NDcxOGQwMTc3YjkgbGVnYWN5LXRydW5rCis1NDk4MCAwMGJmMTQ3NjAxZTQ4ZDE1ZmU5NDIxMDE5MmI1Y2Y5YzI5NjFlNmQxIHAzeWsKKzU0OTgxIGY3NjYzYzY3MzRiYmU0ZTQzMmFlYmY0YmRhOGZhZWY2ZTAwNTdlZmEgcmVsZWFzZTI1LW1haW50Cis1NDk4MiBkOWE0ODdjMmZhOTYxNjAxMDZkYThjNTk0ZjQzNzMxOTUzZDczNmQxIGxlZ2FjeS10cnVuaworNTQ5ODMgNjg3N2I3OGU4MTBkMDI0NTYyOWVlZmZiZGUwOTRmNTZmZGQxOWM4YSBsZWdhY3ktdHJ1bmsKKzU0OTg0IDg5MDVkZjYxNzYxM2UxYzBlOGJmMThkZmVjZDgzZjRmMTc1NTIwYTQgbGVnYWN5LXRydW5rCis1NDk4NSA3Y2MzMTAzMmUyMDYzZmUwNjEzODRmOGVjNWFmM2Y0NzBmMGM5NGM5IGxlZ2FjeS10cnVuaworNTQ5OTUgOTM4YzVhZThkYzMxNGJlMjk4OTNkYmUwYmUzY2U0MjIzMjM4NzZlNSBsZWdhY3ktdHJ1bmsKKzU1MDAxIDEyNjQ5YTczNGJlNjI4M2UwYWJhZGYwYzdkOTdlNDRhNDQwODk5OWYgcmVsZWFzZTI1LW1haW50Cis1NTAwMiBjYzlhZmVkZWQyM2ZjYTE2NzA0MDk2MTgwODQ5YWE1YzU0NjUzOGZiIGxlZ2FjeS10cnVuaworNTUwMDQgYWRmYWJjNTczNjFkMzdjOTk5OWZjMTVlNGJjZDVmYmUzY2I1YTdjYyBwM3lrCis1NTAwNSAwNjE0NWZiYzdhYjkzMTgzNDA0ZmVkNmY4YzYzYWU0MzI1ZjM3ODI0IHAzeWsKKzU1MDA3IDI3MDA4Njk5NGY0ODRlOTYxOTUzMGNiOTk0YTg3MmIxOTZjYmI5YTggcHkzay1zdHJ1bmkKKzU1MDA4IGE2YTQzNmFhZWZkYmVlZWUyODU4ZGU1MGI3ODE0M2FkNmNmMTFlYzEgcmVsZWFzZTI1LW1haW50Cis1NTAxMSA3NmUzNzVhYjc1MjU3NDA2MjY4MTU2YmZjMDYzMGEzYTJmYmQzZjUwIHJlbGVhc2UyNS1tYWludAorNTUwMTMgMjlhZTY2N2YzMjM5NDExNjQ3ODA2YzI3NjVhMTdkMmM1YTMyODk5OCBweTNrLXN0cnVuaQorNTUwMjEgYWQxZDU2YzA3NDIzMzk2ZjFiYjZlZDgzZjQ0Mjk4OWEwYmJmNGEyNyBsZWdhY3ktdHJ1bmsKKzU1MDIyIDUyMTE2MGM5YjM2OWQwNGE5Y2Y5OTk0NTY1ODNjNjE1MDI5MTQ5OWQgcmVsZWFzZTI1LW1haW50Cis1NTAyNCA0ZjgwMWE3NTg5MzZkNDQ2NjQ0MmIxNTEyYzRmMzM1OTA0Y2M4NjQ2IGxlZ2FjeS10cnVuaworNTUwMjUgNmE1NmFlZGJlMjgwOGEzYTZiOTgxMGExNjIxOTc4NzNkNWI5ZWYyMyBsZWdhY3ktdHJ1bmsKKzU1MDI2IDg3M2RmYjUyYzMzNDYwNmEwOWJjMjdlYWVjOTU0MmYwNWQ0ODMwNmIgcmVsZWFzZTI1LW1haW50Cis1NTAyNyA4MmU3OTk4M2NiMGMyOTk4NDg5ZDM4ZTY3MDg1ZjQ0OTQwMWRiZWNkIGxlZ2FjeS10cnVuaworNTUwMzYgYjg2YmQ3N2QzZDQwNDBlM2QxNWQ0NjNkMWE3MDBmZjg0MWIxMWFlYiBsZWdhY3ktdHJ1bmsKKzU1MDM3IGJjN2EwMzc5ZDNiMThlYjNiNDE3M2M0MWM2YTQxMmJmN2ZiYzEwYjMgcmVsZWFzZTI1LW1haW50Cis1NTAzOCA4NmEyMzJlYThiYTQ1ZGNlYmY0ZTNlMWE3YjM0Y2I2NDQzNjdlMjY2IGxlZ2FjeS10cnVuaworNTUwMzkgMDBmZTRiYjAyOTM2NGQ3YTFhZTFlZWNiNjFhMWJmYjllNDk2ZjEyNCByZWxlYXNlMjUtbWFpbnQKKzU1MDQxIDJiMmQ1N2Q2Y2M3ZWI4MDVlNTg1OTdhMzZiNzRiNzIxNjE5MjMyYTYgbGVnYWN5LXRydW5rCis1NTA0MiBkM2RmMzFkNDU0NTcxYmE4NWJiOGE2ZjU4NjZiNTYxN2Y2ZjYwOGUxIGxlZ2FjeS10cnVuaworNTUwNzAgMzc2OWE1MTk2MDM1YTMwNzUwODRjMzg5Yzc3M2MxNTA1ZjA4YTY0NiBsZWdhY3ktdHJ1bmsKKzU1MDcyIGU1MGQ4MmM0MThhNzJmZTQ1MWQ3ZmU4ODIxNzMxZWFjNDQ4MjJiYTcgcmVsZWFzZTI1LW1haW50Cis1NTA3MyBhM2JmNTVhMDNmNjZmN2JiMmM0MzNlMjM4NjJhY2MyNjRjMTk2Y2M1IHJlbGVhc2UyNS1tYWludAorNTUwNzQgMzllOTUzODA1MTg0OTM3ZDRhNmZmYjk2NjAxYTg2NjNiOTg5ZTNkMiByZWxlYXNlMjUtbWFpbnQKKzU1MDc3IGVhYjI5NWQ5M2M4ZTY1MDY5MzBjMjQxNjIwMTZjZTdkOTgyYmNhNzEgcDN5aworNTUwNzkgYmVhY2Y0MGI1OTYwN2E2MmJlOWI2N2M5OGUyYmEwOTUyY2E2ODZmOCBweTNrLXN0cnVuaQorNTUwODAgOTgwZmYwYjFiOTU3ODU1NGRmYjNhNDFhNDU0ZjU0ZjZjYTQzZTcwYSBsZWdhY3ktdHJ1bmsKKzU1MDgxIDNkNzJjMTA5MWU1YTM5YmFlZWI4YTgwODgzMGZhODNlMjUwYzFhOTEgcmVsZWFzZTI1LW1haW50Cis1NTA4MyBiYzZhMGZlMzIzNTE3ZWQ0ODI1ZTdlMmUyYWRhZjlmZTVlY2QzYjAwIGxlZ2FjeS10cnVuaworNTUwODYgZDcwNTY1NDU3ZWFiYjA0ZTgyODQxYTVlMTg3MGFmMGNiNDYyMzA2YSBiY2Fubm9uLW9iamNhcAorNTUwODcgN2E0ZjE3NGRmODQ0MTA5NGQzODYyOGNiYWVmMzk1ZGE5ZTE5NzBlYyBsZWdhY3ktdHJ1bmsKKzU1MDkwIGE2ODQ2N2NjMDZkM2I0YTA1MmZkMmViZTEzZTNkODNmOThhNTlmMGUgbGVnYWN5LXRydW5rCis1NTA5MiBlOWJlZjViNDIwMDE1NTRkYTA4OTBkNzkxM2M4NWU0MjA0NDYzNjhlIGxlZ2FjeS10cnVuaworNTUwOTMgMjVjYzFjZWU1ZTY5MDQxYWQwMGEyN2MyYjlhMzUxN2YyMWQyODllNSBsZWdhY3ktdHJ1bmsKKzU1MDk0IDdiNzRhMTk3NjA5Yjg2MjE4NjA3YThmNTlkNGI1NjZjNTAwYzRlZDIgbGVnYWN5LXRydW5rCis1NTA5NSBjMWY2Zjk4NDhiMTdjYzE4ZTc4YTE2NDg0YzU2NGNlM2EzOGNhNzYyIHJlbGVhc2UyNS1tYWludAorNTUwOTcgODI1ZDk2NjMzOGVhNzAwMDYxYjNmNWY4YmQwYjZlZjQ0OTMzNzkyZCBweTNrLXN0cnVuaQorNTUwOTkgMzY4ZmVkOWFmNzYxNzk5MTE1Nzc0NGEyYzczMDhlNjNiNmE3NGVmYiBweTNrLXN0cnVuaQorNTUxMDAgMTViODEwZTIxZmU5YTkwYjQxNGFhMzc5OWE2NDBjYTVkMTEzYjI2MyBweTNrLXN0cnVuaQorNTUxMDEgOWIwMWRmZDAzYzI5NDljMGM5NjRkMzY2MzA1MTVjNWNjYWJiZDJhYyBsZWdhY3ktdHJ1bmsKKzU1MTAyIDM3ZDgyYmVlN2ExNjE1Y2M1YWZkY2IzMjU0YmRlNDFhYTNjMDQ1OWIgbGVnYWN5LXRydW5rCis1NTEwMyAxYzE3MDViZjM2Yjg4YjdkNDFiNTgzMTMxMzY4MWJjYjRhMTUwMjViIGxlZ2FjeS10cnVuaworNTUxMDQgYTg1ZDcxNTAwOWVjYzFhODBlNTNjNWVhMzVkYmVmMmRkZTQxNTIzMyBweTNrLXN0cnVuaQorNTUxMDUgMWU1YTJhMmIxOGVlZGI4OWNjYTdlODMxZWE3MjY3NmJmYWE4NjQyYiBweTNrLXN0cnVuaQorNTUxMDYgZGM1YTE1NjdhZjk4NGQ1ZTZmY2M4OWNiYWJmYmYyMGE4ZDIyNTgwOCBweTNrLXN0cnVuaQorNTUxMDcgZjZmYTQ3MDhhNGRiNDcxMWY5YzQzNmU0MjBiMDUwNDcxYjYzYzBkNyBsZWdhY3ktdHJ1bmsKKzU1MTA4IDJjNTQ3NjNjNDUwNDIxZDBiZjNjYWI4YTJlZWNmNzhkYThiZjg0NjkgcHkzay1zdHJ1bmkKKzU1MTA5IGNmYjNlMDAyMWIzYmY4ZDMyYmZhZjc2MTdjMmQ4MGJiZTBmNjFjZGUgcHkzay1zdHJ1bmkKKzU1MTEwIGNiM2M5MjA2MmVjNDA1ZTlkODE4NzBlYmFkZjlmMjc5ZGZkOTBjNjggcHkzay1zdHJ1bmkKKzU1MTExIGNhNDQ4YzYwN2IxNDAxY2U4MGI3OGRjNWJkYmZiMjY4YTZlNWNhZWQgcHkzay1zdHJ1bmkKKzU1MTEyIGExNGZmMzcwYjYzZDkzMmI2YTU4MGM4NGRlNTdmZmUxNTg4OGM4OTMgcHkzay1zdHJ1bmkKKzU1MTEzIGFjMTZiZWNlMWU1ZmI3ZjVlNGYyMTFmNzAwZGQwMGI2NzVmYjQ2ZDkgcHkzay1zdHJ1bmkKKzU1MTE0IGIzOWFiY2JiYmJiYTRiNTQyYWI1ZTUyOTI1NjFjNWVlZDRkNTg3YjUgcHkzay1zdHJ1bmkKKzU1MTE1IDFkZTU0OTQ3MTcyMWMzOGEyMjg3YWQzYTk0YWEzNzJhNzY3NTM0MzEgbGVnYWN5LXRydW5rCis1NTExNiA0OTY4NmVkNTZlYzdmZTg3MTdmYmM4ZTI0ZTNjZmMzNWExNjhmNzRmIHB5M2stc3RydW5pCis1NTExNyA1YjhlZjk0YmI4MTBmZDAyN2Q3YzUwZGUxOThmZmIyMjEzYWEwYzcwIGxlZ2FjeS10cnVuaworNTUxMTggMTE2MjUwMmEwOWRhNzZiMWVkODQ5YTFiMDBhNjM5NGY0ZmJhMTAyYSBweTNrLXN0cnVuaQorNTUxMTkgYTNlMzAwMWIzNWJmMGExNWUyZWI1MWRkYWVkNzYxNDc1MGIyZjBjNiBweTNrLXN0cnVuaQorNTUxMjAgN2YzNmY5NmI2Yzc2NTg2ZjgzODIwNDRhOWQwNWUyOGUxOWQwYTdjNyBsZWdhY3ktdHJ1bmsKKzU1MTIxIDA1MmJmMGRlZTZiODU0NzA2NDgwMTgwZjMwM2YzN2FjZDhhMGU0MjAgbGVnYWN5LXRydW5rCis1NTEyMiA5MmVhZDg3YmY5ODQzYzQxZTcxYzc3NjkzYzllMjZiMDMyODEwZTNhIHB5M2stc3RydW5pCis1NTEyMyBlNzhlMWI2MTZjNzJmYzgyY2VmZjYxOTUyZTk3ZjhkYmY0OWVlMjA0IHB5M2stc3RydW5pCis1NTEyNCBhNzMyM2M3MmI1YzcxZjkwM2FjZDJlODk0OTRhMzU1MTc4Mjc1MTIyIGRlY2ltYWwtYnJhbmNoCis1NTEyNSBiZTkwMzliNTc0ZDk3Y2VjOWVmZjMyNmJhZTk4OTVkNDhkYTM4ZTk5IGRlY2ltYWwtYnJhbmNoCis1NTEyNyBjNDhmZTRkYzM0YTkxNDIzMDZmYTg1NjFkMGJhM2UxOGY3NDlhYzlmIHB5M2stc3RydW5pCis1NTEyOSAyMTMxZTAzNzIxZWZkYzlhNzcwOGIzZjMyNGVjYmM3YmRlMmJlOWRjIGxlZ2FjeS10cnVuaworNTUxMzAgNTJiOTlhOTE1ZmFhNWU3OTdkODI4ODMyYWY5MWQ2YzU1MjEzZDMzOCBweTNrLXN0cnVuaQorNTUxMzEgOGI3NDNmNTU1OTYxMDhkYzU3OTE2YWM4OGQ4YTU4ODk3MzQyNDdmNiBsZWdhY3ktdHJ1bmsKKzU1MTMzIDA3OGI0ZjJmZGZjOTQ3NmE3OWEzOTU2OGEzOTY4NTYxOTEzZDVhNDkgZGVjaW1hbC1icmFuY2gKKzU1MTM0IDNiNTdmMGI3ZWRkZmY5MTVlYzg0ZjlhMDUyYmYwNDhmMGM0ZDdmNTQgcHkzay1zdHJ1bmkKKzU1MTM1IDllMWRmYzg1NTg5MDViZGI4NzgwYmVjMTkyYjEyNzZkYTg5NjFjZjQgZGVjaW1hbC1icmFuY2gKKzU1MTM2IGUyYjFkMDIyMmFmZWNmMjUxZDkxZTIzOWQ0ZDExMzU5MDRiY2U3NzUgZGVjaW1hbC1icmFuY2gKKzU1MTM4IGRmNDYwMTFjNTkzNjI1NmZjNDAzNTIwNmY3ODdhYzJiOTczNzg2Y2MgZGVjaW1hbC1icmFuY2gKKzU1MTM5IDg2ODA5NzJlZDhmMDM2ZWJmMjdiMmVlYzlmOGEzZWY2YmM2NjM1MTIgcmVsZWFzZTI1LW1haW50Cis1NTE0MCA2MTU3OTVkNTJiOWZkOThhNGZhMjFjNjQ3ZmFiNDQ3MjZiZDg5NGQ2IGxlZ2FjeS10cnVuaworNTUxNDIgYmU3ZWIzZmQzNzc2NjEzMDcxYjZkM2NhYzM4MDlmYWZmNzRjYTM1ZiBwM3lrCis1NTE0MyAyNjZlMTIzOTRiOTdkMmZiMzM0ZDFlZTdmNTBjM2RlYzBkYzhjOWQyIHAzeWsKKzU1MTQ0IDk0NmZkNTRiNDU3ZjVlNDI2YWQwZTc2MDExY2JkMTkzYzBmOWUwMDcgcmVsZWFzZTI1LW1haW50Cis1NTE0NiA2MWFjZmI4MzE2MzNjOGU3MmQzMzQzOGE5M2IxMTcyZjEzMDA0YTFkIHB5M2stc3RydW5pCis1NTE0NyA2YjdkMTc4MmE1NzQ5OTcwYWJmMDdlODJiMDI3ZjQ1MmQzNGVmZjdlIHB5M2stc3RydW5pCis1NTE0OCA4MzhjYWIzNzkzNzZlN2JmYTAxZmE2YjRiOTEwYzM0ZDMwNTM5NjM5IHB5M2stc3RydW5pCis1NTE0OSAxMDdhYWNiOWM1OTU4ODMxY2IyMDdkMWQ3M2ViNGEwZTk0Y2VlMTQwIHB5M2stc3RydW5pCis1NTE1MCA2YmMxNTZkM2MwMGVjMjUzY2IxYzM4MTJhNTVlMTRmYmU5MzYwNGFhIHB5M2stc3RydW5pCis1NTE1MSBlMjVkY2Q4NzRiODI3OTljZWMzYzc0YmU5NWI1MjgxYjAyY2NiZDhlIHB5M2stc3RydW5pCis1NTE1MiA0NmIwMGM3M2UzMmZmYjUyZmZiMWQzZDZkNTQxYzI1MTM2Y2YzZTdhIHB5M2stc3RydW5pCis1NTE1MyAxNDQwYmJiNjcxNTBhNzAxZmNhMjZhMjhkYzA5YmE5NWUwODQ0YTliIHB5M2stc3RydW5pCis1NTE1NCBlYTVjY2VlNmIyODU0YmUyYTU4YzgzNDE2NjkyYmI4MDI5ZTU4YmI3IGxlZ2FjeS10cnVuaworNTUxNTUgMmQzNzc0MDhhOTg3YmNjN2VkMzhkNjRlZDU1ODZmMjZhYTViNzU3NCByZWxlYXNlMjUtbWFpbnQKKzU1MTU2IDU1NGZmMjcxNDVlMTRhZmVjNjY1MWQzNGFjYzFhNTI0Yjc1ZTk1ZWQgcHkzay1zdHJ1bmkKKzU1MTU4IGYzMjAyZmU3ODU5ODE5YTRhZTZiMjM2Njc2YmI0NGY1NmQyZTcwM2IgbGVnYWN5LXRydW5rCis1NTE2MiA4NzI4Y2QwMTJiZDg3ZTc2NDJiZjYxY2FiNzFkMjliZDM4NDQzMjkyIHAzeWsKKzU1MTYzIGM3OTFhNWUyZTA5ZThmZTFkN2U5ODQwMzQxNGNmZjAyMDZiNDRlNmUgcHkzay1zdHJ1bmkKKzU1MTY0IDJkY2MwNWE4MDkwNWZlZTQ2YWU1NmE5OWNkZjhlMmNlOWEzMGNjMTMgcDN5aworNTUxNjUgMGMzYTMxNDgyMDhlMGI5NjRmNTY1NjI0YjkzOWQ5ZDU5YzA5ZmI3MSBsZWdhY3ktdHJ1bmsKKzU1MTY2IGQ0YmE2NjMyNzdmOGZiYzI3MzQ3ZWRkZDgyZjJmMjM3YTgwMjJiM2MgcDN5aworNTUxNjcgYzEwNzVmMDY2NTBhNzYxZWI1MjlmMGM4ODNjMjAyMzI5NzZhMzg1NCBwM3lrCis1NTE2OCA1ZDA5NjkxNjdmNmRiNzZkNzFmMDMxZGI3YjkwMWI2MzgzZGFkNTNiIHJlbGVhc2UyNS1tYWludAorNTUxNjkgNTQxNzk1MzhhMzg3NzI1NWRjNjVhOGFmNWFmOGFiNjVlMmU5NTRlZiBsZWdhY3ktdHJ1bmsKKzU1MTcwIDQ0MzEwMmJmNTg5NTA1NDdhYjg3YmFiZGVhNzU1ZTA5YzhjODZiOWMgcHkzay1zdHJ1bmkKKzU1MTcxIDQxMTAyNzNhMjYxMTA5ZjI0NjY3MDk4YzA3Nzg0YTM5YzUzMjU4MzAgcDN5aworNTUxNzMgYmUxZTcwOGQ1ZDNkZjE1YjhmM2JmZjAxOTgxY2ZjNWY0OGUxMTBlNSByZWxlYXNlMjUtbWFpbnQKKzU1MTc0IGE1MjM0ZjNjNzU1MTFlZDJiYzBkZTQyZThjZmVjMmIzNjM5ZWFhNGIgcmVsZWFzZTI1LW1haW50Cis1NTE3NSA4NDNkMGNjYjAwOTRkZjc4Y2U3MjQzYjE5MzdhNjY4ZWFhMzQ2ZjM4IHJlbGVhc2UyNS1tYWludAorNTUxNzcgZmRmZGVlMTkxYTYxMmI5NGIzMzEyNGE2NDE5ZWMzMTMwNzQ2NDYzZiByZWxlYXNlMjUtbWFpbnQKKzU1MTc4IDIwNTg3MWM5NzE1ZGI2M2MxMTdlYmNkMGNkOTRhZmQ4ZGQzNDlhYzYgcmVsZWFzZTI1LW1haW50Cis1NTE3OSBhMTUzZjIxNGZhMWI4NDA4ZDU0NTM2OWVlNTQwZjVkZWQ5NzFjNjg3IHB5M2stc3RydW5pCis1NTE4MCBhNmViNmFjZmUwNGFjMmJmMzA0NDI4NWFlZjU1MmMwYjdkZmU0YmVhIHB5M2stc3RydW5pCis1NTE4MSBjNjU2ODU1MGIxYzYxMGRjNGI1Zjg3N2U1N2Q0OGEyYmViMDZiMGMxIHB5M2stc3RydW5pCis1NTE4MiA4ZTdjNjBiMTM1NmI3MzgzZmIzY2M5ODQ5ODQzMDFhZDQzNmM0ZTg5IHAzeWsKKzU1MTg0IDljYzRjM2YwYjU4MDc1YTQzODNlMjA0MmVjM2Y4MDZiYmVlYjdkZTUgcHkzay1zdHJ1bmkKKzU1MTg1IDcwNDcyYzE1N2JiOWMwMDUzODRlNzhkYjk1ZGI2NmI1YjJjZTdjMjIgcHkzay1zdHJ1bmkKKzU1MTg2IDhmNzdmOTYwNzExMzg4MDVjMmZjY2QwZmIzMWY2MjA5YjVmYTQ5NTQgcDN5aworNTUxODcgNmEwMTZmM2UwMDUxNjY3YzNlMzI0NWYxZWY3ODFkOWZhOGFjNTc4NSBweTNrLXN0cnVuaQorNTUxODggYzg0MDAwOTZkMmQ3MWM4ZjUzN2JkMWM4ZmRkMGVmZjg1YzdmZjc5OCBweTNrLXN0cnVuaQorNTUxODkgYmM2YWQ2M2NkNWYxZjZlMDg3OWIzZDJlODBlZTdhMGNkNDM4NzRhYSBweTNrLXN0cnVuaQorNTUxOTEgMmQ5ZTU4YzVhZDM0M2Q0NDE0NDhiNDcxMzkwNDFkNGU2NmM0ZjBiZiBweTNrLXN0cnVuaQorNTUxOTMgMjNhOGIzZGZiZTk1MzcxMGZkY2M2N2YwN2UwOGQxMWQ3NTlhMWZlYyBweTNrLXN0cnVuaQorNTUxOTQgNDRlYmFlNGY2MWM0YTJiMDAwZWM1M2U5MjQ5ODU3M2Y0ODNhZGZhYSBweTNrLXN0cnVuaQorNTUxOTUgMDUwYzk4Y2Q0MWM0Zjc0YWNkMmNlOTNjMWIzYTA3OGMzZjhlOWQ2YSBweTNrLXN0cnVuaQorNTUxOTYgNTI1MzMzNzBmMWFkNDAzYzIzMzY2MWYyZmFiMDA1MjM2NDU5YTNjMSBweTNrLXN0cnVuaQorNTUxOTcgMzcwYjkxNTMzYzUzZDhjMDA4NTk0NThlMzg1OWU5Y2Y0ZDk2ZWQ5NSBsZWdhY3ktdHJ1bmsKKzU1MTk4IGYwZGExYjdiOGU1YTJhZTQ5ZGRiMzI5YWVjN2I4MWVhZjY5ZjAzZDggbGVnYWN5LXRydW5rCis1NTE5OSA3NmU2M2UwMzMzNTYwNWRjNjNhZDkyNGI4ZTU5ZWNlNjk1MTZmYWMyIHJlbGVhc2UyNS1tYWludAorNTUyMDAgNWM3Mjg1MzQ5NzBjMWUyNjJhNzhkYzBlYzQ4MDQ4NDA5YzU0YmI3MCByZWxlYXNlMjUtbWFpbnQKKzU1MjAxIDdmZTZhZmNiZDNmMmE2YTY3NmQ5MDIyODg2NmNjY2IxOGYzODMxODAgcHkzay1zdHJ1bmkKKzU1MjAyIDY1MGZmOGQ3Y2MzODBhYTE0NWVkZjY4ZmFkZmZlMTZlYmU2MWQ2NWYgcHkzay1zdHJ1bmkKKzU1MjAzIDNhNGYwNmJjMjU0YmI1ZWRkYjM4ODZiZTZkZDE1MTVhZDM5N2Q2MzQgcHkzay1zdHJ1bmkKKzU1MjA0IDAyZTY5ODk4ODUyMWE5OTU3ODU3YWUzOTJmMTJkNThiYTg2Nzc1OGYgcDN5aworNTUyMDUgOWIxNGMxZTU4OTM2MWJjYTNmN2MyY2U3OTQ2OWE5NGFlMWUyMGRlYyBsZWdhY3ktdHJ1bmsKKzU1MjA2IGRkMmQ0MDdkY2ZkMGM0N2QxZTFhMDIyMGFlNTllODVjNDMxOGZhNGIgcmVsZWFzZTI1LW1haW50Cis1NTIwNyA0NzVjN2M1NDM3ZmM2MmI4M2QwZDcwZTk4MzY4NTBiZjVmNjgxYjNhIHB5M2stc3RydW5pCis1NTIwOCBhMzYzY2VhMzJiOWJhYWEwMmIwZmMzOGIxNDNhMjU1M2Y5MjVhY2FjIHB5M2stc3RydW5pCis1NTIwOSBhMzI0OGZlZmMwZGM4YjZhZWUwNTZjODU1MjQ2MjM0ZTA5MzRkNTc4IHB5M2stc3RydW5pCis1NTIxMCA4NWQ1MWNiOGFlNWVkODUyN2Q2MzU4NmUxNzk4Mzk0MzAyOWFmMTgwIHB5M2stc3RydW5pCis1NTIxMSA0YTk1MzNlOTM2NWUwZDk3ODE2NzQxMjkxODM1MGNlNzc0MDQ4Y2RiIHB5M2stc3RydW5pCis1NTIxMiBiMWJiZTgwMTExNTI4OTNjY2M1MThkNjc2ODQ0ZWRjMjUxMTViYjZlIHB5M2stc3RydW5pCis1NTIxMyBkMTI4MTFkZWNmOTRkMzdkOTlkZWRlZTYyMTg0OTA2YTc3OTM1MTQ2IHB5M2stc3RydW5pCis1NTIxNCA2ODhlMmJjMjA4MDI2MzhhZWQ1ODgzNWViZWNiODE3YTE0OTAxNjhkIHB5M2stc3RydW5pCis1NTIxNSA3YTk2Yzg2NDA1NzUxYmQ5ZWM5OThkN2VmZWYwMmNjYjVkN2UwYzk0IHB5M2stc3RydW5pCis1NTIxNiBkZDNhYzFjZDFjOTE5NmYzMmQxMjZhYjAzMzhlYTJjMWFhMTBlMWI1IHB5M2stc3RydW5pCis1NTIxNyA1ZjIwMjg2YjBkYTk5MzYyOThiMTYxNmI4ZWQ0YjU1NDkzMWMyOTAzIHB5M2stc3RydW5pCis1NTIxOCAyNDhkZmMxYmQ0NGMwMjViYWM5MDJiZmQ3M2UxMGUxMjk5MjUxOGU1IHB5M2stc3RydW5pCis1NTIxOSAyOTc3MzRmOGE2MjdhY2RmNmViYWQ4NTZmMGI1NWEzZGQyNGVjYWNkIHB5M2stc3RydW5pCis1NTIyMCA5MTVkNTI0NTVmZmM0YmZlZmMyMmI2ZDMxZTdlOTM2MDQ0OTg3OTExIHB5M2stc3RydW5pCis1NTIyMSBjNGE5OTkzZjJjZTZjZWFhMjA5N2YyODY1ZGFhN2Q1YjkyMWI2MDQ0IHAzeWsKKzU1MjIyIDk5MTQ0NmZmNmIxNWMwOGIwZGYyZmNjYzRmNGEyNGQ3M2ExZWU3NjIgcmVsZWFzZTI1LW1haW50Cis1NTIyMyA3NzVkNDRhNTQzOTk1NTBiZDU5MWU2YTExYzJhNTQxMzUxM2MxMjA1IHJlbGVhc2UyNS1tYWludAorNTUyMjQgOTg3MDkxODlkOWUxYzAwYWM5NGU2MTlhZTBiZjk4ZjU5NTFjMDZlNiBweTNrLXN0cnVuaQorNTUyMjUgMTA0MDU2OGY5MDJjYTJiMWI4NWFhYTM2ZGVmZDc5ODU5N2E1MWY0ZiBweTNrLXN0cnVuaQorNTUyMjYgMWQzMzQ5MTJhMTA0MGQ5ZmU4NTRmZTQ4MTA4YzA1NWVlMTQzNjkwMSBweTNrLXN0cnVuaQorNTUyMjcgNzU5NDcwOWU2MzFiMzMzN2VlNGJjNmZlZmY2NDc3ZTI0ODUzYWM3YiBsZWdhY3ktdHJ1bmsKKzU1MjI4IDhhOGJmMmMwNzRlMDRmMGJiMzI0NDRlZTQ4OGJiMjUwYjM1ZTg1NWMgcDN5aworNTUyMjkgYzVlYmY5YzIxOWJlNDY1MjA2MGM0ZmExMTAyNjJmN2I3YmIwMmExYSBweTNrLXN0cnVuaQorNTUyMzAgZmI3MDVmMThiZjNkNzY2NWY2NjhjNjBiM2I4NjdmNWU4MTA3MzVlYiBweTNrLXN0cnVuaQorNTUyMzEgYmFiOGE5YzdmNDllYjYyMDE3MmZiY2U0Mjc1OGMyNzg1ZjcyMDYzYSBweTNrLXN0cnVuaQorNTUyMzggYTZlNGYyY2JlZmE5YmQwYjM1MWFlZjRjNjMzOWIxM2U1ODMyN2MwYyBwM3lrCis1NTI0MSA0MzY3YjdhZjc1MzE5YmQ2NWY3ZTc4MWI5ZTk5ZmViNDA3MGUyNjdiIGxlZ2FjeS10cnVuaworNTUyNDIgOGVkZDc0NjI5MWZlZmRlZTZmZGVjMmQ4Mjc3NTZmZTBkMTNkYTRiOSBsZWdhY3ktdHJ1bmsKKzU1MjQzIDAyZDI0ODhmZWM2MGNhMTVjYjlhNjViZjJjNDVlN2M2NzZlNTI0ODAgcmVsZWFzZTI1LW1haW50Cis1NTI0NCBjZjlkZDdmMGY0YTIwZjAyNmEyOTQ3ZTBiZDI1Mzk0MDc4ZWRjMTFjIGxlZ2FjeS10cnVuaworNTUyNDUgNmM0YWE0NjExYzg4MWRjNjJjZTVhOWM0ZDY3OGU1ODIxMTAxNTAxMSBsZWdhY3ktdHJ1bmsKKzU1MjQ2IGNiYThjNmE1ZWNmMDI2MTY3NDY5N2M3ZjVkZjVlNDRmMzE4MDAwMzYgcDN5aworNTUyNDcgY2Y3OWZlZThiNzFhMTBhOGQ2OTlhNWUzMjMwNzJkNjVkYzg1MmQ5YiBsZWdhY3ktdHJ1bmsKKzU1MjQ4IDAxMTI3ODIxYWY3NTYxNGVhNTczYTc3OWZmMDYwZmU3MWI3NTVkMzggcDN5aworNTUyNDkgZDIzMTY4NWU5ZWE3ZDU0YTJkYzRmOGJmZDZjM2Y4NGI4NGU3YTkzMiBwM3lrCis1NTI1MCBmMjIzYTQ0ZGIxM2E2ODgzN2ZlOGZmMGUxMGEwZDUwYjc2NmU4NDYwIHAzeWsKKzU1MjUxIDliOWM1M2MxYWE1YzA5NWYwOWZiOWJiYTM4NmQ1YTE1ZTUzYjMxOGQgcDN5aworNTUyNTIgZGMzOWJmYzVjNzRlNjIyYmM1NDhiMmJkNWVmNDQ1ZTFiZjg1MDFjMCBwM3lrCis1NTI1MyA4MWQ5ZjUyNzBlODc1MmQ0N2MxZGFlMDNjNDU2NTA0MjYyNmYxNzYwIGxlZ2FjeS10cnVuaworNTUyNTQgM2VlZTA2Y2IxNWEzZWUxYmVlMzQ0MzFmMTlhMDQ1ZmI0OTcyMmMyMSBwM3lrCis1NTI1NSA3ZDk4YzEyYTM0NGRiYjAzMGM0ODE0OTY3MjZjODU3YThmYjAyYzhmIHAzeWsKKzU1MjU2IGQ5MWNjOGQ0OTI5NGU4YWY0MmUxMzQ4YmMxYmUwZTNhYjFmMTM3NjYgcHkzay1zdHJ1bmkKKzU1MjU3IDQ1NDhjZWIzMWM5NDkzOTkxNWVmN2NiNGYxNGRjY2IwN2VhMDhlM2IgcmVsZWFzZTI1LW1haW50Cis1NTI1OCBjZDI0MDNkMzcwZTBmNjdjNDFiNjlmZTI3YTAxZjM3OTUzYmI4OTZjIGxlZ2FjeS10cnVuaworNTUyNTkgYjhmYTRhYzZjNWYwN2M2MDlkZWY3M2Y2Yzg0YjNmNDg0N2QyNzY1NSBsZWdhY3ktdHJ1bmsKKzU1MjYwIDNmYTQwYjU5YjliNjhlMmZlYmJkMDViZTQ3MmYyYTQ0N2RjZTE4ZmQgcmVsZWFzZTI1LW1haW50Cis1NTI2MSA1MWM3NDEyMjg5NTgzZmZlYTE0NTExYTMyOWE2MTljNDM5ODVlNTU3IHAzeWsKKzU1MjYyIGJjZjU3YTE1M2IxMWE1NzBmZTBlNTQ1NTNkYmUyMDcyYmExNmE4MDIgcDN5aworNTUyNjQgZDdjN2ZlOWI2ZTk3MmU5MjU4NjYyYTNkZDY0MmQ3ZGFjZDJkYmY2ZCBwM3lrCis1NTI2NSA5MTUzOTJkNWYwYjg2NDZiMTZkNTE0NGJiOWRlN2QzNzZlOThjZDUzIHAzeWsKKzU1MjY2IDMyNjczYjg4OGMyNDRjZTE4Y2NmNDFlY2UwYTU5ODAxMTU5ZDE3ODYgcDN5aworNTUyNjcgNWEyZjU5MjBjZjc1MGZjZDU4Y2RkYmYyNTk0OGU4MDI1OWEzMjkzNiBwM3lrCis1NTI2OCA3ZDQ5MDM4ZTk5Yzk5MTQ4MTJkOWNlNDQ1NjhlZmJmMmI2MDM5YWI5IHB5M2stc3RydW5pCis1NTI2OSBlZTQ3ZmQ1YzBlNWQ3NDY3ZmViMjhlZWQxNjEwZjgyNTAwZWMyM2NjIHAzeWsKKzU1MjcwIGUxNmM4ZTVjNWNhNGMxMTFiNjVmOTFhZTlhMzg0YTlkOTc3ZjBjMmMgcHkzay1zdHJ1bmkKKzU1MjcxIDI3MTllMTdjOTI4ZDM2NjgwOGI5NDRiMGNjY2RlOWQxZTIzMDllZjAgcDN5aworNTUyNzIgZGRjNGJlMjc4NmZkMjU4MzVkZjhlNjZlMzI0MjNiYTgzOGJkOTBiYiBweTNrLXN0cnVuaQorNTUyNzMgMjBiOGIyOTU5M2MwZDk4ZDRjODE5ZmY0ZDhmZDJjMWZkNTBlYjFkMSBsZWdhY3ktdHJ1bmsKKzU1Mjc1IGUwNmUxOTZhMDVjZmYzODFiYzQ2ZWMzNjYwNTI4NzQyYjdiNGRlNzcgcHkzay1zdHJ1bmkKKzU1MjgwIDk3MDZmM2I0OTA2NzBmMzE4OTcwYzc2YWUxNTFkNWE4N2Q3NTFjMWYgcDN5aworNTUyODIgNzk5M2YyM2FkNDZjYTU0ZjEwZmI5YWM1OTUwMWMzY2RkNzY1ODA4ZSBweTNrLXN0cnVuaQorNTUyODMgZDIzN2Y0N2YyOTNmMjliOWFhNjA1MGZiMTgwYTYxYTI3NmRmNmJjNSBweTNrLXN0cnVuaQorNTUyODQgOTE3MDQwZGZlYzU4MzhjN2ZkMTEzZTcxZDExYzlmMWI2ZDgwNmJlNyBweTNrLXN0cnVuaQorNTUyODUgMjYxNzEzM2M3YWZhMjczODM0ODgyNjdlMThmZjMxNzIyMDE0NzY0NCBweTNrLXN0cnVuaQorNTUyODYgNjAyNmI4YTI2YzA1ZmY0ZDQ4NmM0ZTIzMjVlODUxODA4ZWEwZmNhYiBweTNrLXN0cnVuaQorNTUyODcgNDgyYjU5OTBkMmZiM2RmNjg2NzQ1NDNiZGZmZmE1YjBiMjExNWZhMyBsZWdhY3ktdHJ1bmsKKzU1Mjg4IGMxN2Q3NjBjYjZkMDZmMDk2MGMxM2JkZGZhMGJmOGJhYTJjOGYyYWYgcmVsZWFzZTI1LW1haW50Cis1NTI5MCA3YmJiOTdlMTRhZDZlZDEyZTdmMWM0ZmI2NjMwMTAyMTc4NjhlNzg4IGxlZ2FjeS10cnVuaworNTUyOTcgYTQ4OTNjNDgwMjY0OGI3N2FjMjY5ZTU1Y2YwM2M1YTcxMmI5M2M0MyBsZWdhY3ktdHJ1bmsKKzU1Mjk4IDkyZWI1YWU0YzE4ZjE1MWE1ODk1NmFlY2UyNzNkZTRkYTgwMDNlZWUgbGVnYWN5LXRydW5rCis1NTI5OSBhMTYwYjQzN2ZmMzVmZTE2ODI0ZmFiYmI2N2UyZmNkNGY1NTc2NjJlIGxlZ2FjeS10cnVuaworNTUzMDEgYjQ2MDA4NDQ3OTkzMzM5MWY4MTk4NDU5ZmFkM2ZlMzRiMGRhMTU2MSBwM3lrCis1NTMwMyBiN2U5MTM2ZDRjODM4ZjhlY2ZiYTdhZWI0NjMyZWQ5NzhmMzkwZWM4IHAzeWsKKzU1MzA1IDdkMjRhNjhkMGExYzYxNjM2MjJjZjQ3NDYwZjA0NDYxN2I4NDM3NWQgcDN5aworNTUzMDYgNjU2NjZlYzgzYzJjMDBjNzEzYjIwOTEyN2VlZThjZGQ4YmQ5NTEyZiBwM3lrCis1NTMwNyBhYWU1NDllYmE3MDc1ZjU0NmU3YzhlMjExZTc2ZGZjMGZhNjIzM2M4IHAzeWsKKzU1MzIwIGM0ZDU3ZGM2MGIwMTliNWUzZThmYjIzNWMzMTY1Y2EzY2ZlNzY2Y2IgbGVnYWN5LXRydW5rCis1NTMyMiAxNTIzYWE4MjcxNDY1ZTlmMjY1OWNlYjVkNmE4Yzk2ZDY2NTAwNDI0IHAzeWsKKzU1MzI1IGY2MGM4NzdkNTJjOGEwOTdhNWQ4MTEzZjlkYjNjZmVhM2UyY2I0NjQgcHkzay1zdHJ1bmkKKzU1MzI2IGM3ZjU0NjYwZWExN2VmYWZmYmNkY2MwOTI0MGZmYTZkNmM4NzUwMWIgcDN5aworNTUzMjcgZDZlNmY5ODJjNjM3YjY5ODA3ZDM4NzQ0MWVlNTYxNzM5OWZjODY3NyBwM3lrCis1NTMyOCAwMGMwMmM0NDg4Y2VmOTExZTBlMjEzNDA1YjhiYWU5NGU3NDYzZmJhIHB5M2stc3RydW5pCis1NTMyOSBmMzI1NmM4YzcyY2E4MTMwZGUzMWE2Yzg5N2NmNTI1NDQwZmNkZWUzIHAzeWsKKzU1MzMxIGJjNDNjYjIzMTY0MDQwODkyMzJhY2Q2ZGIwYmFlNjMyMDFiMjg1MTkgcDN5aworNTUzMzIgNTU4NTE4ZmY5ZDkxYWI2MjQyNmQwY2U3NjRhYmQyZTJjNDcyNmRiNyBwM3lrCis1NTMzMyA2ZGViNGJiMTAwNTlmOTFjY2NiOGJlZjFjNTI2ZjJhMDFjNjZjMjVkIHAzeWsKKzU1MzM0IDFkYjMxOTQxZTAxMzkxZTc5NmQ4NzIzOGVkYmY3NzE0ZmRiOGQxNzYgcDN5aworNTUzMzUgYjljNzI0ZGQ3MmM4MThmMWExZDM3MmNlNWY5MDRhMDFmMzVjYTRiYSBwM3lrCis1NTMzNiBkODEzZmMzNmI5NzAxZjUyNGI0ZTdiZWUwMjRhNzNiMTIzZTFlMmJiIHAzeWsKKzU1MzM3IDFjOWEyOTk2NTZiZTM3MWExYTI5N2NmNWViMDYxZDhlN2FlZTcxNjUgcDN5aworNTUzNDMgOWFkODQwNzBiMjJkODRmMTc1YTNiODkwMzY3Y2Y5MDY5MmI2NDE4YyBweTNrLXN0cnVuaQorNTUzNDcgNmNhM2Q1ZjNkMWJlMTMxZmY2Njk3YTc5ZGYwZTg0YmNhNmM0OTNhZSBweTNrLXN0cnVuaQorNTUzNDggM2UxZWI3YWY0ZWEwZDIxZTdmMWU5MzA1ZGYxNzUwZjE3N2Q5NTZjZiBsZWdhY3ktdHJ1bmsKKzU1MzQ5IDJiNzExMmE2MzU3MWIyZWUwYzQ5NDc4NDEyYTNiODg4ODdmYzMxOGUgcmVsZWFzZTI1LW1haW50Cis1NTM1MCAyNjM0OWE2NGVmNzAxNWJjMjBiOTkzMjI5ZjM1MGM0ZmJlMWY3ZDgwIHJlbGVhc2UyNC1tYWludAorNTUzNTEgZDNjZDI5MjBiZWI2ODdiZjIxNzFlZjc5NjEzODBkMzE2YmNkMjBkOCBweTNrLXN0cnVuaQorNTUzNTIgYzljNTJiODdjMzBiNWZiMzNhYzNhZjk0OWZjMDNkOTY4NDExZDAwNyBweTNrLXN0cnVuaQorNTUzNTMgYThiN2E4MTU5OWQwNDhhYWExNDI0ZDY1NDUxNGIzYzJlMDAzNDMxOCBweTNrLXN0cnVuaQorNTUzNTQgZDExNDZkNGRiNTQ5NDY4NDRmNDk5OGFmOGEwODkyYjk2NjZiODg1MCBweTNrLXN0cnVuaQorNTUzNTUgMjAyODZlY2E0NzQzMTVhOTYzYjFmNjEyMjQxOTQ1NjM3YWU1NTUxZCBweTNrLXN0cnVuaQorNTUzNTYgNDMwYjZlZDgwMTQ4ZTliMDA5M2U5ZDBjYzk3YmI5MjMxOWY5MmJlOCBweTNrLXN0cnVuaQorNTUzNTcgNmVhOTM3MDBkNzc5MjA3MDZmY2E1NGYwYjJkNzNlYzYwOWMxZjZiMyBweTNrLXN0cnVuaQorNTUzNTggMjk2ODU5NzExOGMxMzljOGJiN2IzN2VkNzNiMDNlMjNjODg0ZDMyYSBweTNrLXN0cnVuaQorNTUzNTkgMjkzN2Y1MzcxMzJlYTNmZmU0MzVmZTk1MzRkNjYwM2Q4MDRmY2QzZSBweTNrLXN0cnVuaQorNTUzNjAgYzdiMTU1YWQzNzkxMTkwNGU1MWM4NWZlZjRjODJhMTA2NzgxY2JkMCBwM3lrCis1NTM2MSAzNzg3YTNmYmM0NThkOGRiYjljOTdhY2IyYmYyNzlmYTkxZDdkNTlhIHAzeWsKKzU1MzYzIDc4ZDc2NDM1ZGE5YWM5Y2UzZjJhMDBlYzVlZTc5NDg5YTY0NjZiYzggcHkzay1zdHJ1bmkKKzU1MzY0IGJiYjA5OWQ0ZWM4MDI0YmY4MDBlMDJjMDYzNWYyOGM3OWQxN2IxODUgcHkzay1zdHJ1bmkKKzU1MzY3IDA1MmQ1NWU4YWY3NzMwYTc0ZjI1MDgyYTcxNDNkMTc0Mzg2MjI4ZmEgcDN5aworNTUzNjkgOTJmNzE5ZmE5YjE2ZTkwY2FiYjk1NWE0MGMxNTY1ZDQ0MmE2NzA1OSBwM3lrCis1NTM3MCA0ZTQxYjcyZGEwZmM2NjM3MjQxZjdjM2VhMzQ0YjdkMTFmMzBjYmYwIHAzeWsKKzU1MzcyIDBhZDY5NTFjMThmN2M1NzgyYmNjNjI3ZGU0YjY0ZjljNjk3ZjhlMzMgbGVnYWN5LXRydW5rCis1NTM3MyA2OWUxZjdlYzBjZTkxNmYxZjZlMjUxMzk0YzZiNjFmNWJjMWZmMTlkIHJlbGVhc2UyNS1tYWludAorNTUzNzQgZDBjMDc2NjY5NzMyZmQyZjg0ZjBhYzgzODMxM2QwMjcyODViN2M0MiBwM3lrCis1NTM3NyAwNDI0YTlmYTRiMGI0ZDRjZmMzNjhlOGIwNjcyN2ZlMWQxMWViZGYzIGxlZ2FjeS10cnVuaworNTUzNzkgYjAxNTQ2ZjM2YTIyNjMwNGM5MTk1ODNmM2NiNzc3YzI2ZjhiZjEzYyBwM3lrCis1NTM4MCAwN2YwODMyMjk3YjFlNzJlNWZmZTZhZTY0Njk4NGVmOTRlMTkxMTljIGxlZ2FjeS10cnVuaworNTUzODEgY2NhOWUzMmVlNTUwMWJkOGY4ZGQzZGMxYWMzNTZmNmFmMDIxZjA2MCBweTNrLXN0cnVuaQorNTUzODIgZGM2YjVmMzU1ZDVhOGNiYjE1ZjVjMjNiN2E1NDBmYTIwYTY4YjJhMCBweTNrLXN0cnVuaQorNTUzODMgOWI4MjkzYmY4ZmVjOGJmZjlkMzk4OTY4MzE3NzI3YmRkNjM3M2JjNiBsZWdhY3ktdHJ1bmsKKzU1Mzg0IDc1ODFlYzE2MjMwZWYxODMxODNhZWJhYWVjM2RhNjZhNzc5MmY5ODYgcmVsZWFzZTI1LW1haW50Cis1NTM4NSA2MWM0YzIyMmEzMjcwZDgzMTI1ZGNhMjU5NDUwMDZlYjMzZGI3YmE4IGJjYW5ub24tb2JqY2FwCis1NTM4NiA2ZjEyOTNhYjNhYzQ4ZTgzNjZlYTRmZWYyMDQ1ZGFmMWU2MzU0YWFkIGxlZ2FjeS10cnVuaworNTUzODcgNjkzYjhkOTE0NzcxNzA4MDlhZTkyYjM1NGQ4Y2Y0NTlhNDA0ZjhkMSByZWxlYXNlMjUtbWFpbnQKKzU1Mzg4IDM4OGU0ZjIxZTc0OWUyN2RjMDNmOGEwNDQ3NWVjZTY0MmY4ODc5NzQgcDN5aworNTUzODkgMmVjYzI5NjQ0M2MzMmMzYzExMmYzNmM3MTEyMGEwNDRjMmEyNmI3NiBsZWdhY3ktdHJ1bmsKKzU1Mzk0IDc1NmUxZDQwNGNiODYxYjllMWRhYTBmNDMwMGQyNjg5NGQyOGZjYWUgbGVnYWN5LXRydW5rCis1NTM5NSBlM2VhODgxYjE0ZmVkMmI1M2I2ODQwOWE0NjIzMGNkZGVhYzk3YmJlIGxlZ2FjeS10cnVuaworNTUzOTYgNzlkZDkwNzg3MDkxZGZlM2QxZTBjNjQ2NTM3MWFkZDgzMmJkZmUwNCBsZWdhY3ktdHJ1bmsKKzU1Mzk3IGNjNmY0N2YxZTEzYTQ0NmRkNTMyNzI4Zjc2NTEyMWIzZWJiOTkyMWMgbGVnYWN5LXRydW5rCis1NTM5OCA2ZjBkYmE4MDc3MzRhZmM2YWY5MGY0NzIzYTFlMDAwNGY4ZTg4N2RhIGxlZ2FjeS10cnVuaworNTU0MDYgYzEyYTMwOTc4N2QzY2M4ZjM5NDMwNWIyYmQ1Y2Y1ZTNkNmNmNmIyMyBwM3lrCis1NTQwNyBiMDg1ZWI2NmI3ZjZkYTZlMjQzNzIzYWJkMTFiYWEzMTkyMDM2YzYwIHB5M2stc3RydW5pCis1NTQwOSA0MWExODMwZWVlMTY1MThkYzMyNjYzOTgwMmNmNTcxZjY5ZjcxMjFkIHB5M2stc3RydW5pCis1NTQxMCBlZGE5ZTYwYzk3NDU0NzhiYzY5ZjE1Y2QxODVhZmM2NGJlNDVlMjMxIHB5M2stc3RydW5pCis1NTQxMSA0ZDE1YWQ0MTY1MWU0YzBmNjhlY2VkM2ZkYzU4ZWY5YTEzNDYyYjc2IHJlbGVhc2UyNS1tYWludAorNTU0MTIgMTUxMTg5YzcyYTM3MmI5YTIzNDhmYTg3ZWQ0ZjNiZTlhMGNhZTIxMiBsZWdhY3ktdHJ1bmsKKzU1NDEzIGE2Nzk2YTI0NDgxY2U1MDEzM2I3YTMwZGI0N2U5NzQzOTJlMTA4YWQgcDN5aworNTU0MTQgNjg5YmFlMDc2N2UyMGMxZWRiZjZiZjdmNTA2YjI4ZjY4NjMxM2JhYyBkZWNpbWFsLWJyYW5jaAorNTU0MTUgYzI0MTFiZGI2Mjg2Y2ZlMTYzNjEwMGMxMWIwN2Q4MTc5YjUyMjhhMSBweTNrLXN0cnVuaQorNTU0MTYgNjA5NDViZGIxYjc1NDg1NmExOTQ3M2MxMjQ0ZjljZGI5ZTE3YjJhZiBweTNrLXN0cnVuaQorNTU0MTcgYjBiNTE0YmFkZjBiMGJhOWZjOWVjYTVjYTc2ZDdjMWVlNTc2MTQyYSBweTNrLXN0cnVuaQorNTU0MjAgMTNhNmM2YmVmNjA5NzAxYTc3NWIyYTY2MzU2NjNlNTkxN2ZmZWRiZSBweTNrLXN0cnVuaQorNTU0MjEgMGVhZDEwNjRlYWQwMDJkN2ZkZWY5OGFiYzQzMzg2MWI0ZGM0OGIzMiBweTNrLXN0cnVuaQorNTU0MjIgZWRiNGM5MDI4YmUwMDJhM2VhZTA0NDQ1YWQwMjIzNWY5N2NlYTA1YSBweTNrLXN0cnVuaQorNTU0MjMgMWE5Y2Q3NjM2NGUzZDZhMjNjZGZmMjI2OWFmM2E1NGYzNzMwZTcyZCBweTNrLXN0cnVuaQorNTU0MjUgNWQ5ZGQxYjhkOTA4Yjc4Y2M5YmI0MjA4NzIyOThmNWQzY2RjZjExNCByZWxlYXNlMjUtbWFpbnQKKzU1NDI2IDQ3YjE1OWQ2NDBhNDU0ZGVjZjZhM2I2NDNjZmRjZmNjNjM5YWJkMjAgcmVsZWFzZTI1LW1haW50Cis1NTQyNyBmNDNlOWQxZmFiYWE4YjZmYmU0MDY1NjYyNTU4MDZjNzM3ODAwNDdmIGxlZ2FjeS10cnVuaworNTU0MjggOGZlOThmNjBlYjZlMzc5N2MzNTRjNGI5Y2VkNzMzZGMwYjYwNDcwMiBweTNrLXN0cnVuaQorNTU0MjkgMTQxZTJhZWZmYmFhNDNlYjM4YWIxNzBkYmUzOGRlOGQ0ZmQwOTViOSBweTNrLXN0cnVuaQorNTU0MzAgY2U2MGY0N2IxN2EyNTQxYzliNGJkODJjODAwOWE2ZDJhYmI2Y2FlYiBwM3lrCis1NTQzMiA2NWMzYjQzMmY1MDFiN2ZmM2RlNjkxM2Y0MjM0ZDFlOTQ4MjIzNTdjIHAzeWsKKzU1NDMzIGQ2YWE3ZWRmMjE3YTY1MjBlNjI3MTgwODE2N2M4MDg2NmVhZWVmYTAgcHkzay1zdHJ1bmkKKzU1NDM0IDQ3ZGM3MTYwNTM0MWQzYTk3ZGRkZDE2NmY5MzZiOWViODI0ZTdiYWEgcDN5aworNTU0MzUgOGFkMWM4OGNlMWFjNjc4NGQ3NDdhZGI4ZmMxYjY5MjFkMjkzMjBjMyBweTNrLXN0cnVuaQorNTU0MzYgYjU5Mjk4NWE5NTNmZjkwZGQ3N2YyNzk5YzEyMWQ1NDliZGQ2OTljMyBweTNrLXN0cnVuaQorNTU0MzggYjI5ZDcxZDQzYzgwOTFmMzI1MzAxZjQxZWUzOWYyOGU5YTA5MGEyMSBweTNrLXN0cnVuaQorNTU0NDEgNjUxZmEyYzljMmFiZTVmMzQzYzFhYmY3ZGFiZWZlZDRkNmFhOTRmOCBweTNrLXN0cnVuaQorNTU0NDMgNmQ4ZDY2MDUwMDAzZjFmODgzZWVkOWMwNjJjMzdmNjA2MWIwYjc5NyBweTNrLXN0cnVuaQorNTU0NDUgMTM2NDFhZGJhNmVjYzYwNGRmODA3ZmExOGQ0ZjU5YTFlYzJmYzdkMSBweTNrLXN0cnVuaQorNTU0NDYgZjE5ZTYzMWJlMTAxYjdhZjgyMjhlNDcyYmUzYTg4ZmQ4NDQyNmZkYSBsZWdhY3ktdHJ1bmsKKzU1NDQ4IDRhM2E2Mzc2OWQzNGE5MzQwZGRiOTUwNzQzODg3YWYxNWY5MDNlODggbGVnYWN5LXRydW5rCis1NTQ0OSBkNGRiNjI2YzIyOTA3NjZiODg2MmJkNTBiZDFiNjk1N2VhN2QwNmVlIGxlZ2FjeS10cnVuaworNTU0NTAgMzEyYzExMTlkYzE0NmE3YTNiNjFhZmZjYjdkZWQ3ZDU1MTZkOWQ3ZiBsZWdhY3ktdHJ1bmsKKzU1NDUxIDI5OTg3OGQ2MmUyZjc5ZTYxODRmZGE4NDdlNTVlYTdlZWM1NjdlYjAgcmVsZWFzZTI1LW1haW50Cis1NTQ1MiAwZjkzYjcwMGM0YzlmMDFmMTA1ZWU1Mzk3MGIyYjY4YzBjNjY3MWIyIGxlZ2FjeS10cnVuaworNTU0NTMgNTE1ZTI1NjRlY2E3ZmE4MWE5ZjdkZjNhZDQ3YjZlY2MxMmMwMjU1ZCBsZWdhY3ktdHJ1bmsKKzU1NDU0IDRhNjdmMTAzODMzZWI4YzUyZmY1ZDYyMjI5OWQ3NWM1ZGE4YzYxZWIgcmVsZWFzZTI1LW1haW50Cis1NTQ1NSBmMTRhNWIwMDVhMWUyYzRlMzhjZDVmNjUzYmRlYzliMmNiM2E1YzRmIGxlZ2FjeS10cnVuaworNTU0NTYgYmVlOGQwMWVmNDJjN2IxMmFmYTk1OTg2MjgyNzY1MGNjN2RiOGE1OSBweTNrLXN0cnVuaQorNTU0NTcgMTMyNmIwYjJhZmEwOTE1M2NiYzg5ZWYxYmU2NGE4ODAwODYzNDM5ZCByZWxlYXNlMjUtbWFpbnQKKzU1NDU4IGI3ZmI5NDJiNDAzZTllOTFiMmFkYjU2YWJlODkwZjk0YzUyMmIwMzkgbGVnYWN5LXRydW5rCis1NTQ2MCBjMmQzMmI1YWU5MGIzYTMxM2ZkOGVjNzY3MzhlZGFmNmMwNDcyODk4IHAzeWsKKzU1NDYzIGQxYzM4YWYwNjViZjM5YzE5NDg0ODA3NDRlYzQzMTEwODUxZjU2ZDIgcHkzay1zdHJ1bmkKKzU1NDY0IGVjYzY4NTkyNWI1MmQzYzA0MzU5OTZmYWFhYWRiMDJkZjUyM2YyN2EgcHkzay1zdHJ1bmkKKzU1NDY1IDZkMjQ2YWM2MzE5ODJkYTU5YWMyZjM1MjQ4ZmM5ZWViN2ExNzI3YmIgbGVnYWN5LXRydW5rCis1NTQ2NiAwMDQxM2Y3MGNlNWMzZWJjNjk2MjQ0NDY2MzkzNmEwNGUyNzkyZDI2IHB5M2stc3RydW5pCis1NTQ2NyA3NzlhMjEwNTM3Nzc4ZDU0ZDA3MjAyNTFlNTc2NDJlZTQ1NTZmN2QwIHJlbGVhc2UyNS1tYWludAorNTU0NjggYzAyOGIyNzc1YTlhNGVmZmE1ZGEwNjYzZjkyYzAyYmZhZWU5YjhiNyBsZWdhY3ktdHJ1bmsKKzU1NDY5IDViZWYyYzIyYmY4NTcwNmUyYjRhYjRjMjA4MTBjZDUyYWY0Mzk0OGQgcDN5aworNTU0NzAgMzEwMjlmNmViY2EyYTg3ZWUzMmVjNzc4YWQ4YzM5MjI0OTVhNjVjMCBsZWdhY3ktdHJ1bmsKKzU1NDcxIDY3Y2I4MTgzNjBmMGRjNDcwYjQ0MzFhNGNhOTcyNjkxZDkxNmEzYWEgbGVnYWN5LXRydW5rCis1NTQ3MiA2MmNmMmNiNzRlMzUxYTZjMTdmYWYxYzdmOTEzZWVlZTIzZjU3M2Q3IHAzeWsKKzU1NDc0IGMwZTg5ZDBlZTBlNWJhODJiYmU5ODY3NDQ4ZWJmYjhiYjRiMGM4MmUgbGVnYWN5LXRydW5rCis1NTQ3NiAyYzAwYTE5MTAyNzFjYjU3ZDQyZTFlNWM3ZDc3ZTA0ZDFkN2ViZTYzIGxlZ2FjeS10cnVuaworNTU0NzcgYTU4YmE2N2ZhZjFhYmYzODk0YWEzNTYzMzYyNTk2OWUzODNlNjUzMSBsZWdhY3ktdHJ1bmsKKzU1NDc5IGUzNWYxZWUyMmFiODg5MzE4YzA3MjhjNzRkNTI4YTZiZmU1YThlYWEgbGVnYWN5LXRydW5rCis1NTQ4MSBhYzhhNmRlZWY5NzQwZDhkNTJlNDI2M2EwNmZmZmFiNzI2YWRlNmU1IGxlZ2FjeS10cnVuaworNTU0ODIgMzVlMThhMGQxMGYyNmJjZjQwMzQ4MDEzM2FmOGVhZTA3Y2FkYjY3MiBsZWdhY3ktdHJ1bmsKKzU1NDg2IGQyNGM5ZTQzMmQ1MjRmYjAyYzkxYWM4ZWY4NDQ1YzNiZjU0NjJmN2EgcDN5aworNTU0ODcgMjY3MWUwNmJhYTRjMDdiMzE1OTkwNGQ1YzRmYTNlN2JlOTU2YTc0MSBsZWdhY3ktdHJ1bmsKKzU1NDg4IDk5M2Y4YTliOGFiMzk5NzQxODVmMzVmMjMxMDU3MTdkNTIyMzEzZWUgcHkzay1zdHJ1bmkKKzU1NDg5IDk0NTdiOWY1YmRkMTA5MzJmYjJjMTJiYzI4NjhiNmFkNjM3ZjNlZmIgbGVnYWN5LXRydW5rCis1NTQ5MCA4MWIxNzhmMGIxZWYzNzc4ZWRiNWE1ZWZjMWI3YjYzNTczY2Q5ZTYyIGxlZ2FjeS10cnVuaworNTU0OTEgM2QzYmYyNzQwOWU2MjAyYmY4YjQ3NWEwMGFhZmJlMjFkOTQ5ZDJmOCBweTNrLXN0cnVuaQorNTU0OTIgMTQ0NmI5ZmNhMDFkYmQzNjRlYjlmYzA4M2YyMGNjNWI0ZTlmZjdkNiBweTNrLXN0cnVuaQorNTU0OTMgZWJiMGI2ZDZkYWRhMjgwMjFiOGFhZWRiZjdiOTUxODYyNWRiNjFiMiBweTNrLXN0cnVuaQorNTU0OTQgZWUyOTUxNDQ0YTg5NjQ2NDE2ZmMwMzA4Y2U0YzNlOTA2ODJlOGY2MyBweTNrLXN0cnVuaQorNTU0OTUgYTQwNTczMmEyNjJkYzc0ZjJmYjUwZjZkN2MzMTU1NWM2YzE2NWY4YSBsZWdhY3ktdHJ1bmsKKzU1NDk2IGQ3ZjZkNmY0NTYyZWU2MWUxNmYwN2RiNmNmNWMxNTRhZGEzNzNkZTYgcHkzay1zdHJ1bmkKKzU1NDk3IDhlMDYyZTU3MmVhNGQ2YWU2MTU3NzlmY2NjZjIyOWU4NjA5ZTc2ODIgcHkzay1zdHJ1bmkKKzU1NDk4IGY5OTQ5YjYzZWFiM2ExMjYyMTk4ZmE3NTU3ZDgyYmJjM2E0NjQxNGMgcHkzay1zdHJ1bmkKKzU1NDk5IGQwN2QzNGI1M2RiNTgwOGM0ODQ4OTg2MTEyYzhmMzBhM2MwNTBjYWEgcHkzay1zdHJ1bmkKKzU1NTAwIDUwZGFmYTIyYjhhNGU3YjZiNDAyYThmMzc3NGJjMmI1ZWVjZGU1OGMgcHkzay1zdHJ1bmkKKzU1NTAyIDdjOWRkZDRhMDgxNDZmNmRjM2M1Y2M3ZDAzNzU3Yzg1NzI4ZDQ3YTEgbGVnYWN5LXRydW5rCis1NTUwMyAzZDA1ODU4NzY5MWRkNDliOGFiODU0ZThiOTUyMDgzOWFjN2EzODUzIHJlbGVhc2UyNS1tYWludAorNTU1MDQgYTkyMjdkN2EzNGZhOGU3MTQwNzZhN2I3MmFmMWE5ZDdmYzAzNjFmYiBsZWdhY3ktdHJ1bmsKKzU1NTA1IGVjODNkMjEwNjVhYTM2ZmIxZWJiNDEzZGU5YTU3ZjA2OGRjMGRlMTUgbGVnYWN5LXRydW5rCis1NTUwNiBlYTdhZTg5MWY5Mzg5NGNhZTBlM2JlMTFkZjg2ODMzMWUwYWJjZGY0IHAzeWsKKzU1NTA3IGM4OTc1NTlhODlmYzk0NjVkNDI5OGUyMTI5YzJhYzk5ZjMxNzczMGQgbGVnYWN5LXRydW5rCis1NTUwOCBiZmM3M2Q4NDllMjhhOWRlYjIwMDZlNWU3OGViNDY4MjFhNDliODcwIHB5M2stc3RydW5pCis1NTUwOSBkYjQ5YTEyNDczOWRlZmU2MzM0YTQyN2U2YjQxODlmZjE5MzFlYmRhIHB5M2stc3RydW5pCis1NTUxMCBiNWFjYTAyOTViNzkyZmFhNzkwOTYzMGZjOTQzNzhjMTdjZWQ5YmY0IHB5M2stc3RydW5pCis1NTUxMSBhZTY5MTIyN2ZkMzQzN2Y5ZTdiNDUzOGZiYmY3ODllZjAwYmZlYjRlIHB5M2stc3RydW5pCis1NTUxMiA5OGVmNWZmY2ZmMjg0M2I0NWE1ODQ4MzY5NDc3ZGFmMzNlZmQ5OWRjIHB5M2stc3RydW5pCis1NTUxMyBkZDgwYTRjNWY0N2QwNGQwNWE2MjQ0NzM0NjQwN2I4YTVjNzY2YzMzIHB5M2stc3RydW5pCis1NTUxNCAyNGI2MDYyMmI5NDRkMDRkZmUxMmZjNjgyOTE3Y2JlN2I5MDY5ZTM3IHB5M2stc3RydW5pCis1NTUxNSA4NDNmN2VmYzA1OGYyM2M5ZmYxMjFjM2ZjM2Y5ZGQ4N2QxNGZhN2IxIHB5M2stc3RydW5pCis1NTUxNiA4YzNlNDBiMTc5YmY0MTRmYWIwYjdiZGEyOGY3OTJhNWIzMWI2MGY3IHB5M2stc3RydW5pCis1NTUxNyBlYjQ1Zjg1YzRjNzkyNjNiZTRhNjI5NTUxZWI4N2Y0NzY5YjAwNjNlIHB5M2stc3RydW5pCis1NTUxOCBhN2JlMTQ4ZjdjNTYwODA2NDA5MWVhMTJiNmM4MjgyZmRhMWUyNjc4IHB5M2stc3RydW5pCis1NTUxOSBmN2YyYTQ5YzFmMmU1NGUzYzU4ODRkNDE1N2E1N2Q2MjFkMmFhYmRkIHB5M2stc3RydW5pCis1NTUyMCA3MmQ3YzBmM2JmZmVlOGYwN2Y0MjljZjM2MjQ1ZWQyN2E1NTllMGU5IHB5M2stc3RydW5pCis1NTUyMiBmZjdiZWZlOTE5YjViMTY2YjgwNzk4N2VjNDc1YmZiYThkZjM3MTU2IGxlZ2FjeS10cnVuaworNTU1MjUgYTBlZTNiMmJhMzYxYzNlZTMzOTQ4MTQ4NTcyNzk2OGEzNGZiZWExMCBsZWdhY3ktdHJ1bmsKKzU1NTI2IDRjYmY5NDk0MzZlYjU3YWQ2ZWZhZGY4MWJmOTRlYWEwMjkyNmIzNjIgcDN5aworNTU1MjcgOGMzNTc4OTM0ZGY2ZGE4N2MyNjE2ZDEwM2FmZDZkNmE5MTRmZDQ0MiBsZWdhY3ktdHJ1bmsKKzU1NTI4IDlhNDQ3NTE0ODU1ZjExNzFmNDYxYTk0M2E4ZTlhNTg5Mzk2NmZiZDUgbGVnYWN5LXRydW5rCis1NTUyOSBhNmM5MmRlZWFlMjdmMmZmZmVhMDAzZTE1NjcwMmFiY2M2ZWRkNWE1IGNweV9tZXJnZQorNTU1MzEgODE0MDc3ZTdhZGVlM2FjZjcyMDE4MmYyOWU4NmNiNzA5Mzg2YzZiNCBweTNrLXN0cnVuaQorNTU1MzIgNzA5ZjgyZTJhNTVjYjQ1NGMyZDZkYjU1YTIzOTRhNDRhYjYxZjJlYiBweTNrLXN0cnVuaQorNTU1MzMgYWIzOTY2MmU0NTRiY2U0YjBlNDkwYjA0YTY1Y2E5ZjUzYzZlOGQ3OSBjcHlfbWVyZ2UKKzU1NTM0IGUyNDBkMjBkYTNlYzhmZWE4NTUzOTQwN2MzMTYwYjNlMjQ4M2NmOWMgY3B5X21lcmdlCis1NTUzNSBlOGY2MjRkNDhkYTJkZGYxZTg0ZTRlYjJmZmU4MTVmMDYxMjk3NTYzIHB5M2stc3RydW5pCis1NTUzNiA1NmU5MDA3Mjg5Mjk1MzA0NjFjYjE1N2I3Y2FhOTcwY2M4MTRhYTgwIHB5M2stc3RydW5pCis1NTUzNyAyMzMyMzc3MDdlYmM5OTc5Y2EwOTBkNDI1MDM3Y2RiNjgxZjYzYWUwIHB5M2stc3RydW5pCis1NTUzOCBiZmU5NTMwNDZkMDViMjI2ZmQ4OTZjOTA3MDA3YmEzOWFkYTQ0YmFjIHB5M2stc3RydW5pCis1NTUzOSA1MjNkZjFkZTBhNWMyYjhlYzIwNjYwMDkzYjdmNDhmMzdjMzA5YjJlIHB5M2stc3RydW5pCis1NTU0MCBlYjE4OGQ3ZmVhNWQ5OGU0NjY3MmJlYzNiMjEzM2ZjZTU1YzM0NDc1IHB5M2stc3RydW5pCis1NTU0MSAyMTFkYzlkNjM2NzNiNWRjN2Y4ZmM0ZmNiZTQ2ZTVjMjk1MDM4Y2MyIGNweV9tZXJnZQorNTU1NDIgMTI5Zjk2NTNiMGEyMzlmMmQ3ZjYyMWEzOTkyNGI3MTkyNTNiN2I2MCBjcHlfbWVyZ2UKKzU1NTQzIDFmNzg5MWQ4NGQ5M2ZlMzY0YmE4YjIyMmYxZTQzYjgzMmM2N2U1N2QgcHkzay1zdHJ1bmkKKzU1NTQ0IDQ3NzRhOTRkMmU2ZDY2NWU5NDlmNDZmOGM1MGNjZWNjZDA2ODE3Y2IgcDN5aworNTU1NDUgODJlNWRiNDk2MGVkZmIzNGIxMDkxOTVkMzNhNDI5ODIzOWE0YTdhNiBweTNrLXN0cnVuaQorNTU1NDYgOWNlOGZhMGEwODk5NzI3YmEwM2EzNzMwYmFkMjM0MWU2MjRhYjA2NiBweTNrLXN0cnVuaQorNTU1NDcgMzA4ZTYzMjcwMmJmYTRhZThkNWM2ZGE0NThhZTk3YmRmNTFlNjAxZSBweTNrLXN0cnVuaQorNTU1NDggMjFkYzQ2MjliNzEyMTQ1ODI4MWFkOGEwNzUwMzM3OTQyN2ZlZjRlZCBweTNrLXN0cnVuaQorNTU1NDkgY2YxNTE5NjdlZWEzY2YwMTU0MGQwZDQzNmE5YjQzZDkwYTNkYzMyMyBsZWdhY3ktdHJ1bmsKKzU1NTUwIDZmOGY4MjI4MDU0NWRkOTNkMDYxMjE2MWJkMzRkYzE2NTRlNjYxY2MgbGVnYWN5LXRydW5rCis1NTU1MSAzOTc5ZjllMmQwMjYyODdmNzkwMTBjZGNhOThmZjUxOTI3ZDNhY2I3IHB5M2stc3RydW5pCis1NTU1MiBjZjA4OTFmMWQ2MGFhOWRiMDU1OGNlMzVjN2U3MTk1OGRlOWQzODU4IHB5M2stc3RydW5pCis1NTU1MyBlNjMxMDFmYWFkYTY4YzIxZWM3ODkwZDcyYTM0NjY1ODNjMTJjY2EyIHB5M2stc3RydW5pCis1NTU1NCA4NmE5ZDVmNDMzMDc3NDQyMzU4ODc0NGYzZjRjMmI4ZGIwYmEyY2NjIHB5M2stc3RydW5pCis1NTU1NSAxMDQyNmFkNWE2ZTBiMTM3ZTUxNjBhNjFlOTU3MzZiNzE5NGY3ZTMyIGxlZ2FjeS10cnVuaworNTU1NTYgMDU3YTljM2QwNjdkMTEzNDZjN2RmNDE1ODhiY2ViMWRjMTcwMDBiYiBweTNrLXN0cnVuaQorNTU1NTcgNDFjZmNmZGUwOGE5OWE3NDVmN2FiM2VhZmJmNDNjNTAxODZlY2YzMSBweTNrLXN0cnVuaQorNTU1NTggMmY0OGM1NmM1ZTgxNjkxNTJkNThiYmU1NDBhODU3M2NkYzk4MGU2NCBweTNrLXN0cnVuaQorNTU1NTkgOThjNjZlZmM5NTUzMzNhNWIzMjE4MGU0YTk0OWI5ZTQ2NzBkNzdkYSBweTNrLXN0cnVuaQorNTU1NjAgZTRlOGIxMjc3MGU0MDZiYjNlMWE4ZGU4MGRjNTljNGNhYTE1NDk2YSBweTNrLXN0cnVuaQorNTU1NjEgZTZmYzY3YWQ5YzU0YmMxZGRkYjIxYTZjM2IyNWMzYWIyNGQzOTRiZCBweTNrLXN0cnVuaQorNTU1NjIgOTY5ODY4ZGYxOTM4YmM0ODJmY2M5OGVmNGI2NzRmN2FiNmJmODE3YSBweTNrLXN0cnVuaQorNTU1NjMgNDZhOTRlYWQzZDY4ZGUzYjMxY2Q3YTNmNjA1Mzg1NTExYTUwYjk5NyBsZWdhY3ktdHJ1bmsKKzU1NTY0IDI0OTAwNzY3OTUyNDRkMDUyZGMxZWY4YzA0NjllMmI3YWZkNjY5YmUgbGVnYWN5LXRydW5rCis1NTU2NSA5OWUzMzA2OGMzMzQ3ZGMyOWVlYTI4ODhlOGZkNzcxMjhiMWUwNzc5IHB5M2stc3RydW5pCis1NTU2NyBjZWMyYTljMjAwYmEyY2EyY2I2YWU1ODdhMjUxOTJkMDEzMTc3NjI2IGxlZ2FjeS10cnVuaworNTU1NjggNTIyYzQ5MzhiZGY2ODE4ZTk4ZmI1MGY5ZjNkOTY4YzhhY2YwOGQ0ZCBsZWdhY3ktdHJ1bmsKKzU1NTY5IDJjOGJhM2ZhYWY0MGMwNTk1MjkzNjhkMTE0OTU2MzkyZjVhZTVkN2EgbGVnYWN5LXRydW5rCis1NTU3MCA2MzE5MjcxYzIzMjYxN2Q4YWViZDU1OTdiNzA3NmNiYmQ2M2QwYTg3IGxlZ2FjeS10cnVuaworNTU1NzUgZjU3Nzc1YzVkMGI0MjM2NjI4YzI5MDAxMWVjYTQ2OTY3NWQxNTM4NiBsZWdhY3ktdHJ1bmsKKzU1NTc2IDFhMzg1ZDBhZTgyYmEwZWE1MGI3NDAyYmU3N2M1MDQwMjkxN2RmMTEgbGVnYWN5LXRydW5rCis1NTU3OCAwZTgwZmJkNzMwMDVjNmVjZjZhOTE0ZTVmMDE0OWI2NzMyZmJlNGZhIHJlbGVhc2UyNC1tYWludAorNTU1NzkgY2MwYWVlZTU4YTRkODcyOWRhYTMwY2E5MmI5OTM3NDllYzcyYzlhNSByZWxlYXNlMjUtbWFpbnQKKzU1NTgwIGNlYzZkOTZjMDg0YTE2OTZkZjA4NTBhODU3OWQyZDNjM2RjYzFmNmIgcmVsZWFzZTI0LW1haW50Cis1NTU4MSAzNGU4ZTAzZTkyMWY3ZTQ3N2FmNmEwYzUwZGEwNmMzODAxMGQxNDVhIHJlbGVhc2UyNC1tYWludAorNTU1ODIgMmY0ZDkyMGE1NmZjMGY0MWUyMGNkYjU0ZWYzM2FmOTZlMzE3NDNlMiByZWxlYXNlMjUtbWFpbnQKKzU1NTgzIGRjYjQzZjQwMzkwYmE3OTJkNmU2OWI2NjZkNjE2ODNkN2JmYjcwOGYgcHkzay1zdHJ1bmkKKzU1NTg0IDFlYzFhZmEyYmRiNThjMzhjNDA5NDYwZGY1NTBiODA5NjdhOThiMTcgcHkzay1zdHJ1bmkKKzU1NTg1IDA4OWY0NDlhMjBjZGEwMTkzNGZkM2U3MjBmOTliZDg3ZjU2NmEzNzEgcHkzay1zdHJ1bmkKKzU1NTg3IDg1YzkzNWRiYmVmMjZiZjQwNDc4MTcyYTU1MWRiMmNlMThmZmI0YTUgcDN5aworNTU1ODggMDQ3ODZhZTUyZGFkNDIxMjdkNWIwZDcyNWU3MWI3MzM0NzQyZDk2ZCBweTNrLXN0cnVuaQorNTU1OTAgYmVkZmJkY2FmMzU1N2NkMDBmYTQxODU1OTZkNGI1OWM4ZDNkNWViYiBweTNrLXN0cnVuaQorNTU1OTEgOTY1N2MzMzNjNGVhOGZjMGQ3NmM4YWRmYTFhZDExZTU1NTU4MDU0MiBiY2Fubm9uLW9iamNhcAorNTU1OTIgMzg3N2YzN2M5ODYxMGJjYzZlNjdjMzI0ZDQ4ODM1ZmRiYWJmYmExNCBsZWdhY3ktdHJ1bmsKKzU1NTkzIGU3NDZhMDZiM2VhZmU5YmEwOTE5YzAwY2E1ZDdmNmYzNTYzZDhiOGEgYmNhbm5vbi1vYmpjYXAKKzU1NTk2IDAwZjk0ZDM1YzYxY2U3ZWJiMWQzMTcxMTVlOTY0MWY5YjIyYzUyNTYgYmNhbm5vbi1vYmpjYXAKKzU1NTk3IDFlYTRiM2NmOWQ5ODE0ZTc1NDlmMTllNWFmNmI4OGRmN2RmNDRiZGIgYmNhbm5vbi1vYmpjYXAKKzU1NTk4IDViYzdmNTZmNWMzM2RlZjg4YWY3ZWE1ZDcwMjIzMTNkOTA0NzhiNTggcDN5aworNTU1OTkgYWRiZjY4MWYxYmIyZWI3NTE2ODkwNTIzNTY3MTAxNDM0MGM1ZDc1OSBwM3lrCis1NTYwMCAxMDU2NTMwNjE2YWMzYjJkODMzZmExMzQ4MWUwODk5NmIxZjgyODIzIHB5M2stc3RydW5pCis1NTYwMSBlNzE2MmI2Y2E3YTA0MGQ4YWNhZjhlNDdlODRlNTQwZDc4Zjc3ZGQ0IGxlZ2FjeS10cnVuaworNTU2MDIgMzg5MDc3YTU0ZmNlM2VjODllN2U3ZmE2NDc4MWYxYzQ2ZjRkZDI2ZiBsZWdhY3ktdHJ1bmsKKzU1NjAzIGZiZjM0MmJjYjc4NDY1MjUxYWU5MTNiYWQ2ZmY5MzVmMjgyZmMzMjIgbGVnYWN5LXRydW5rCis1NTYwNCBlYzNiOGU5NGEzNTU3MWU1OTU1YjU3OWZhMWYxMjMyYjMwNjU5YTY2IGxlZ2FjeS10cnVuaworNTU2MDUgZjI4YmVkMjY0YjAyY2IzMjAyYWEyMDdkNzRjYjVlMDBlZWUwNWM4MiBiY2Fubm9uLW9iamNhcAorNTU2MDYgNWU0M2M3MzY3ZDU0NWE4NmIyNjAzYjZlYmFjZGUwYmRmNmU0YjQ0NiBsZWdhY3ktdHJ1bmsKKzU1NjA3IGMzNmM4ODc5YThkYWQ5ODQ1NzE5ZWFkYjZlZjY4MDRlNjUxNjYyMGEgYmNhbm5vbi1vYmpjYXAKKzU1NjA4IGFhNzMyMDZjOWNlNjc1NmViYjYzNDdhMjU1OTZkOTgyOWNhZGY1YWEgcHkzay1zdHJ1bmkKKzU1NjA5IGY2YTllMDM0Y2M2MjgyNDI2M2VkYTQ3ODc1OGQ4NjBlYmMyODNmYjUgcHkzay1zdHJ1bmkKKzU1NjEwIDI0OWI1MjVlMWFjMGU5ODBiNDJhOThjZmM2YWI0YTk3YjBjYWUwY2IgcHkzay1zdHJ1bmkKKzU1NjExIGI3Y2ZiM2ZkOGRiMDU5OTRkZjNhM2Q4NDc5NThlOTQyNzg5YjAyNmYgcHkzay1zdHJ1bmkKKzU1NjEyIGMzMjg3ZTE5NWExZDU4M2VjYTJlZmYzNzA4NTkzM2FmMjQ0M2RhNzQgcHkzay1zdHJ1bmkKKzU1NjEzIDliYWVjMmY1NDUwOWY2ODM1NGRkYjlhMDJlNTc3Y2U1ZjE5YmI0OWQgcHkzay1zdHJ1bmkKKzU1NjE0IDRjYWVlYjQxMzE4NjJmZWExYzlhZTdlNjNhYTZlZmNjY2U2Yjc4NjMgcHkzay1zdHJ1bmkKKzU1NjE1IDNmZGE5ZTZhMGI2ZDFlZDNiNzk4OWNlZjdlNTdiZTUxNDI0ZDA5YzEgcHkzay1zdHJ1bmkKKzU1NjE2IDgxZDViMDA3MTE2OWFjM2IxNDMxODRjNThiNzI0MDg5YjBiYjEyNzEgcHkzay1zdHJ1bmkKKzU1NjE3IDlkZTg3NTY5MTgxY2I4ZjMxZmQxZmEwNzRmOTBjYjgwZDIwOTU2YTIgbGVnYWN5LXRydW5rCis1NTYxOCBhZGU3YjA2OTNlMDc2YzIxMzkzZDEyY2I0NjY1ZTliZjg5NzA2NGYwIGxlZ2FjeS10cnVuaworNTU2MTkgYTllYmM1MDRmNjlkOGNjYjkyOGIyMmEzYTc2MjhiMDE1NDYwOWYyYiBjcHlfbWVyZ2UKKzU1NjIwIDc1ODY2NmUyN2ZiZWZiNDE2NDU4MTNjZjVhMDdmOGQ5NDM0MTZhNTkgY3B5X21lcmdlCis1NTYyMSA4YjRmYjcxZmZmMWQzNjYzNzE2MzMwMDhhMTgwYzlkMjc1NGQ0MWRmIGNweV9tZXJnZQorNTU2MjIgYWVjZDc4YWZhNWEyNmU5NDM4N2I3MDRhNGQyOTA2OTk3Yzk4ZmE1OSBjcHlfbWVyZ2UKKzU1NjIzIDBlN2M3MGQ0MWExOWIwNmU5M2QzN2RhNmMxYzQwNDFiZWEwNDNkYzEgY3B5X21lcmdlCis1NTYyNCA0ODkwNjBlOTdkMTdmYTg3NGNlOGE3MWI4OGNiODc4NTQxMDg0M2ViIGNweV9tZXJnZQorNTU2MjUgOGQ2MzdkODE2Zjc1NDE3YjA5OTFkN2MyYTc4NzBmYmMzOWJmZjViOCBjcHlfbWVyZ2UKKzU1NjI2IDM3MDA1MmRjODk5MmYzNDUxNTQyNmNhYmYzMjk4NWM4MjZkOWMzODEgY3B5X21lcmdlCis1NTYyNyA2ZGQ5NzY3NjM3YmI0M2Q3ZmIwNzllYWRlNzg2ZmU4NTEwYzQyMTdkIGJjYW5ub24tb2JqY2FwCis1NTYyOCBkNWFkOTE0OTM2MGJiOTRkNjE5NjFlYjkyNWU5ZjkyOWE4ZTEwZTQ1IGJjYW5ub24tb2JqY2FwCis1NTYyOSAzN2NhNGRkOGFiZWY0NjkzZGMyZTZmNDI4NmZhMmVkMmUzNTczZmI2IHAzeWsKKzU1NjMwIGRlNTFhYWM0NmIxYmM4OTQ1M2U4NjRhMGM3OTZjNGQ2MjE3NTFmNDkgY3B5X21lcmdlCis1NTYzMSBiYTdlYWVlMzM4MjI3OTE4YjYwNWEyYzVhMDI0NjIwYmRmNmE1MWZhIHB5M2stc3RydW5pCis1NTYzMiA1YWQyZDc3MDBkM2M1MDUwNTkzYTVkZmI5MjFjNTgxZDY3N2VmNzJlIGJjYW5ub24tb2JqY2FwCis1NTYzMyA1MzgxYjRlNzFhMDQwNmM5MjI0OTRmN2QyOTRiMDg3N2VhZjRmYTk4IGJjYW5ub24tb2JqY2FwCis1NTYzNCA1MDNmNWE1NjQ2ZDE3YTA5OTI4YjM1YTEyZWQxNzRmMmY4MTA1YzQ0IGxlZ2FjeS10cnVuaworNTU2MzUgZTE0ZWNlNzc3YjhiNDViOGY5OTJlZjcyNzMwMWU3M2EyYjZiMjNiZSBsZWdhY3ktdHJ1bmsKKzU1NjM2IGM3ODM0OTcxMzE3Y2Q0OWJhMmI2NTJlODEzM2U4MTI5ZDgxYWY2MTggcDN5aworNTU2MzcgODg1ZDBlZjkwZTBmNDQxY2U1N2IyYTFmYmIyYjEyNTUxNzI3OTlhZSBsZWdhY3ktdHJ1bmsKKzU1NjM4IDA2ZTZkNjIxNWM1Yjc4YmQxM2E5MWI1OWVlMDJhZTMwNTM0OGMxYWIgbGVnYWN5LXRydW5rCis1NTYzOSA3Njg4N2UzZThlNTdhNmFkNGQ4YWEyY2E0YTAyZTYyMTg2ZjIzNjgxIHAzeWsKKzU1NjQxIGFlODA1Nzk4ZmE2NzgyYzZiZDk1Y2YwNmFmNzlmMDA4NjQzZmEyMjcgcDN5aworNTU2NDIgNjdlZTQ2OTZkMTQ5YWI2N2I1ZGM5MGY3ZTlhZTEwZmE3ZDY4MDA0MiBwM3lrCis1NTY0MyAzNzdiNWRkNjI5M2RhOTk2NjI1ZTlhYmJkNjk0NTk1YjgzNTg5OWJlIHAzeWsKKzU1NjQ1IGExZWUyNTZmYmM4Zjg0NTk4YWEyNTA1MGM5NDQ5ZjdhN2YxOTRkYjUgYmNhbm5vbi1vYmpjYXAKKzU1NjQ2IDJhZTk5NzVhY2EyMDVlNmEwMWIwNDZmZTcyODExM2JkMGUyYmQ4NTkgYmNhbm5vbi1vYmpjYXAKKzU1NjQ3IDhiMWNkZjkzMjFmZDEzNjBhMTAwNTUxYTI5YjYzMTUwZTM3ZTBmYWYgYmNhbm5vbi1vYmpjYXAKKzU1NjQ4IDkzODYyYWE3NmY3YzJhMDc5NjI1NjU3ZDc1ZWQ5OTFmOTljZjBkMjEgcHkzay1zdHJ1bmkKKzU1NjQ5IDliMWZmY2UyNTZiOWFhZTY4NjU5NmI5NjVkNWM2MGMyMTljYTQyNGEgcHkzay1zdHJ1bmkKKzU1NjUwIDZjMmZhNzFkYzQ1OWYzODUxMGU1YTg4M2M2ZmRiNjk5OGViNjMzMWYgcHkzay1zdHJ1bmkKKzU1NjUxIDQ5MjY4NzY5NWM2NmM4MzU2MmZiNjQzYjA4NmM3ZDUwNmY1Y2MwODAgYmNhbm5vbi1vYmpjYXAKKzU1NjUyIDA5ODJmYjA4ZTc5YjFkODE0MzUwZjZjZDYyN2Y1NjM0MmJmMDQwYWMgYmNhbm5vbi1vYmpjYXAKKzU1NjUzIDAwM2NlMzZkZDIwMjIzNDkwOGM1YTc3YTIwZTljZWNlYmMwNWZiMmUgYmNhbm5vbi1vYmpjYXAKKzU1NjU0IDE4ODIxNmI0M2VmNmE3NGIzNzFlYjQ2ZjhiYWQ5MmQxNTYzNmIyZmQgcHkzay1zdHJ1bmkKKzU1NjU1IDM3YTI4NTZkOGYwZTFkOTFjZWI3MzE2Yjg4ZWYxMDg2OGE0ODdkZmYgYmNhbm5vbi1vYmpjYXAKKzU1NjU2IDc1YjljZTFhNzc0NWYzY2Y0MTg3OGM4N2Y3YTg3MzFkZGQ2ODM3ZTIgYmNhbm5vbi1vYmpjYXAKKzU1NjU3IDYyZTM5NGQ1MGFhMDYxMTMzOTYxOTczMzg5MjRmNDk4YTU0Mjk2MzYgcHkzay1zdHJ1bmkKKzU1NjU4IDY3OTZmMGNiMGJlYTQ4MTAwOGRlMTE0NWYxYWIxOTA4MjlkNWU1YWQgYmNhbm5vbi1vYmpjYXAKKzU1NjU5IGRlZmUyNTEzYjc4ZTE3MTA1NDdiZmY2ZDNlNGY0ZDlmM2ZmMDFkNDIgYmNhbm5vbi1vYmpjYXAKKzU1NjYwIGNlYmFmN2MzYWI4Yzc1MGE4MTYxZTlkZWUzZGUyMWQ3YzRmZjc3ODIgYmNhbm5vbi1vYmpjYXAKKzU1NjYxIGI2ZjA0OTc0ZDhhNzdmZmQ4YTM2MmY3YTNkNDQwYjZiMGFmZmMwODQgYmNhbm5vbi1vYmpjYXAKKzU1NjYyIDU2MjYwMmM5MTAxZDlmMWVlYWZjYWFhNmZhODlhNDFjNTQxN2IzN2UgYmNhbm5vbi1vYmpjYXAKKzU1NjYzIDM2YTA1Njk2YmU4MjE4MDkyNjVjZGRiYzNjYjUzODkxZTkwYzczYzQgcHkzay1zdHJ1bmkKKzU1NjY0IGY0MGZmMmQ3MzhlYTQyNjRiMzBlYjg3OTRjMzllYzY4MjlhOTU5ODggcHkzay1zdHJ1bmkKKzU1NjY1IGM0MGJmYjM3ZmExNTQyNGU5MDRkM2FkNzMxOGZkY2U4YTI2ZWNmOTEgcDN5aworNTU2NjYgNDE4MDU5OTk0ZTQ3MjIyY2JhOWQ0ODliMjZmMjcxNzZhMWViMWUyZCBwM3lrCis1NTY2OCBhYTRiNzI1NDlhNjk2ODI3ZTBjNDM0YTE3YjA4ZGVjZmQyMGE5NjdlIHAzeWsKKzU1NjY5IGQ1YmJmOTc1NzBlMzYyNmRjMThjMTEyMGNlYjMxMTVlMzRjNjFhMDkgYmNhbm5vbi1vYmpjYXAKKzU1NjcwIGU3MWRlNTc1MTNlMWJkM2IyY2I1ZTVmOWE3OWJjNjMxMWI4MzhkNjIgY3B5X21lcmdlCis1NTY3MSAwNjM1YTZjYTE5ODAwMjIwZTdkZDQ2NDllMjI4ZmI0NDVkM2VjMzc1IGxlZ2FjeS10cnVuaworNTU2NzMgN2QzNzljNDc2MDA3NDIxNDUzOTYzNzc5ZDU2NjUyNGYyOGUyMDU0NSBwM3lrCis1NTY3NCAzYWZmY2UyZWY3ODJjYmVhYzQ1ZGQzZTYzZmEwZjQ4ZDY2YTNhZTQ1IHAzeWsKKzU1Njc1IGRkMzk2MzU0MGNmNzcwOTQwOTBhMjk0NDE1MmJiYjIxNGEwZTA3MGQgcDN5aworNTU2NzYgZGRmMDQ3MWE2ZGUzNzNiOTRjNGZjNmJhZmZkZmYyZTY5MGYxZGM1ZSBsZWdhY3ktdHJ1bmsKKzU1Njc3IGFhZjNiNmQ4MmI2M2YzNmRkODc1OGNmNzcyYmNiNWVlNDY2MzU2ZjAgbGVnYWN5LXRydW5rCis1NTY3OCAyNzVkODdhNDdmNjQxNGZlNjlmMzQ5Mzg0MDFkNWFjMDA3MWEzZjQ2IHJlbGVhc2UyNS1tYWludAorNTU2NzkgY2RlYTA5NGNmMDQ1MWY2NzBmNjQyMzY4ZmU1M2IyYTJhMDc3MjhmYSBwM3lrCis1NTY4MCAzOTRhYjVmZjE4NTRlNDE2YWQzZDI2NzM5OTNmZjA1ZmE2M2JjMjUzIGNweV9tZXJnZQorNTU2ODEgYmE4YjVhZDhlNzZlYmQ3ZWNhNWQwYWMyOGE1ZGQzZDAwNjMyMDhhYSBjcHlfbWVyZ2UKKzU1NjgyIDUxNjc4NTc4NTFjMTA5ZDRiMjY0YWFkN2EwOTMwMjU1MWMxYjIwMmMgY3B5X21lcmdlCis1NTY4MyA0MWM3Y2QxNmIxOThjMDA2ZGEzNDAxMjA2YzU3YmZkNzE0MTMyZmI3IGJjYW5ub24tb2JqY2FwCis1NTY4NCBhY2QxZTI2MjQ5OWRkMjhjZmEzYjRkZjQ0MjlhNjhiNzIzNGNjNjE3IGJjYW5ub24tb2JqY2FwCis1NTY4NSBhNjA0MmM3ZDdjNTVmYTJjMWIxMmVhYzA3OGZiMGYxNWU1Y2Q3NjM5IGJjYW5ub24tb2JqY2FwCis1NTY4NiA1YzI5NDExYTA1YTVmNTljNWVmODEwYzhkNjdlMWUwYzVhODQ3NmY4IGxlZ2FjeS10cnVuaworNTU2ODggYWQ2YzViODhiNWM0YjAxOTcwZTBjMTM0MGFlYTg2NjI1NTcwZDkzNCBwM3lrCis1NTY5MCBjMmRjNGQxN2U5OGJjNDA0ZDQ2OTQ3NjEyOGJmNTczODE1ODc2MTdhIGxlZ2FjeS10cnVuaworNTU2OTIgMTc2OTk5MzExNzllOGYzMDU2Yjk1NDczOWRhOTIwZjhjYjE4MjYyMCBwM3lrCis1NTY5NSAxMjAwYzBlMDk1NTM3NjU5MTJkYjE5ZGIyMjM5M2M1YTY4MDBmYmZmIGNweV9tZXJnZQorNTU2OTYgMGUyOWJiODBlMjI3OGVmNjJlNWQyMzQyNjkyM2FhOTYyYmUzMWIwNSBsZWdhY3ktdHJ1bmsKKzU1Njk4IDhlN2VjYmQ4YWFhYjE4NzY4NjAxNzMxMDEwMTY4ZWI1ODM2Yzg2NWQgYmNhbm5vbi1vYmpjYXAKKzU1Njk5IDBmNDI0ZGU0NTZkYjQ2MDk5MGVlNzU2NGQzYjEzZmNiNjc4ZTJhMDcgY3B5X21lcmdlCis1NTcwMCBiYjk0MmI2MGIwZmVmMmI2MmY1OTc1MjYzMjJhOGJiNDI2NGQ5MGUyIGNweV9tZXJnZQorNTU3MDEgZGZjZTlhMjYzNWU5NmNmMTJhNTM1MmJhODNlMzBiMjJiNTA1OWIwMSBjcHlfbWVyZ2UKKzU1NzAyIGRmM2Y3NmFjZTJkNzRkNzNkZTkwM2YwNThkY2FlODViM2E4NmUzYjIgY3B5X21lcmdlCis1NTcwMyBhZjBhYzgzNjAyYjQ3ODZhMjExNWU1YmQxMzZhNTQwN2RkZWI5MTU3IGNweV9tZXJnZQorNTU3MDQgZDhhNmFmYTZlOGM2MGVlNzVkNWEwNDk4ZjU1NjQ3Mjg2ODk5NzkzNSBiY2Fubm9uLW9iamNhcAorNTU3MDUgZDBiNGJiYWFmYWFlNGM0MTViNTVmOWI3YjBmOTdmODg1MjcwNGEyNiBsZWdhY3ktdHJ1bmsKKzU1NzA2IGRkNDY4OWQwZWM4NWI2YzEwM2E1NjMzZDQwMGM5NjY5Y2UxZjI1MWYgcHkzay1zdHJ1bmkKKzU1NzA3IGYyODdiODhjM2MyMWNmYmM1NDQyNTMyMWVhYWUyNDVhMDhmZjA3ODYgcDN5aworNTU3MDggYzQ1MTExNTBlZjYwNzEyMGU2YzM5ZmUzZDlmN2M0ZGI0NGUzZGFjNCBwM3lrCis1NTcwOSA3MWQ4NjFlZTlmZjBkYmRhZTA3YWUzYzQwYjMyZWVjMThhMzA2NmJhIHB5M2stc3RydW5pCis1NTcxMCBiOGJlZjlhMWNkZjAxY2Q4MWI0ZDZlNzUxYTY4MDZmNGI0YmQzNDg2IHB5M2stc3RydW5pCis1NTcxNCBkYmQyY2Y0MDUyNzgyNWZiZjExNGU0YTkzNmEwNmU3MmZiNjU5NWQ4IHB5M2stc3RydW5pCis1NTcxNSAxMjdmMTUxZjMxN2I3N2VhNjEzMzhkNjc2N2JkODQwNmQ5MGVhMjc3IHB5M2stc3RydW5pCis1NTcxNiBiMzgwYzljNDk3MzhhY2EwNWExNTNlZDY1Y2E2YzdhMzhlNjgyNmVlIGxlZ2FjeS10cnVuaworNTU3MTggY2VmMDdkYjFjYWVkMWEwODI3ZTQ5YmQ5MTcxZTQzYjUyYWVkOThkOSBweTNrLXN0cnVuaQorNTU3MTkgOTFiYjE5ODEzY2E2MTFmY2EyMTA4MWRmMmMwM2UwZDA1NWQ0NDU3OCBsZWdhY3ktdHJ1bmsKKzU1NzIxIGM2MWNhYWY1NjE2MzBhMWVhNzBkNGE1MDRlOGU3ODY3NmEyMThlMmUgbGVnYWN5LXRydW5rCis1NTcyMyA2NjdjMWE3Mjc5YzlmN2NiNDg3ODM2YTU3NjlmN2IxZWRiZTIzMDE1IGJjYW5ub24tb2JqY2FwCis1NTcyNCA1Y2E3ZDE3MGU0MzEyZjU0MGI0ZDYwMmI4ZWUyMmU4ZjIzNDczYWEwIHAzeWsKKzU1NzI2IGNjZjIwOTkyNTM4MzY5ZTdmOTgyMDY3YzU1NDEwZDNhOGEwMzYwMmYgbGVnYWN5LXRydW5rCis1NTcyNyA5Njg2MWEwNDFmNTQ2Y2Y0NzhmNzY5Njk4NjM0ZmQzNzk3NDIwYTI5IHAzeWsKKzU1NzI5IDI5MzRhZjA1ZjhiZmIwOTJiY2QxYzA1ZGFmYTc0ZWExMmJlYzg3NTIgcDN5aworNTU3MzAgOWFjYjM5NDc4MGRmOTM2MTliZGIwNGU2ZDIzZTFjNTUyNmFhZWY5YyBwM3lrCis1NTczMSAyNGVmYTJlNDQ4YmNlMmZhZTEwYWI0Yzc3ZmExYjgzNGJiZjY3YWRlIGxlZ2FjeS10cnVuaworNTU3MzIgOTA0ODdhODg3YmUxMzZmYmU5MjQxYmU3N2UxZWFjZmU3OWExNTZlMSBsZWdhY3ktdHJ1bmsKKzU1NzMzIGZlYzEyOTY1NDRhYjk2YzBlZjUyODJiZGU0YjI0Y2QzY2ZjMzljMTQgcmVsZWFzZTI1LW1haW50Cis1NTczNCBmMDEyMWIyMTVkMzg5NjAzMTMzNzRkN2NmYjZhYjE1OTM4MmJlNDQzIGNweV9tZXJnZQorNTU3MzUgZmJiZjg1MWUyMzBhNTllNWZkNjM5YzQ0NDg0OThmOGI3OGZlYTc1NyBsZWdhY3ktdHJ1bmsKKzU1NzM2IGRhNTFmN2Y5MDhjYWQ4ZmU3ZmQ5MWI5MjFkYzM4Zjg1Mzc0NWUxOTcgcmVsZWFzZTI1LW1haW50Cis1NTczOCBkZmY2MjRiMmEyNDkxMDQyZTcyOGIyMTVlNGE5MjI1YjJhZmM3ZmVjIHAzeWsKKzU1NzM5IGY5ZjYwMDAzMjdlMjdiZDJlYjhkNGFjNWIxMTkzNGJmZDQ5OTM3NGEgbGVnYWN5LXRydW5rCis1NTc0MSAzMjhlNDU5ZWI2NzAyOTYxMWZkZjhhMzg3NTYwMzMzODJmZjE1MWIxIHAzeWsKKzU1NzQyIDdiM2Y2NGIzZTczOTM4OGVkNDNmZDBiNGRhZWVhODRjMDc5OTk2OTggcDN5aworNTU3NDQgMDRmNGI1NTdkM2M0NTExYjNjZTEwZTMxYTI2NGRmYTlhMDUxZjgwNSBwM3lrCis1NTc0NSAwNDE4NmY1MjE5MmRkYjEzZTNlMmVmMzEwMzE1NWI4ODQxZDM4Mzk0IHAzeWsKKzU1NzQ2IDdlMGMyMjBiNTVhNjQwMzNjODNkODdiNjFhZGM5OTNjYzllOWU5MjMgbGVnYWN5LXRydW5rCis1NTc0NyBiNGYxM2M3ZmRmZDg4ZDE2OGExNWQ1MjIyZGIwYTBkOTM4MzczYzZjIHJlbGVhc2UyNS1tYWludAorNTU3NTEgZTMxZDJmOTVmMjI1NGQyNDZkM2U1OWYyNDNiYmM5ZTBlMzVmZGQ5NyBsZWdhY3ktdHJ1bmsKKzU1NzUyIGUxOTk3MjgzNDE3MDg4ZGFjYjY3OWM1YWYyMTBjMWRmOGM3OWJlMzIgbGVnYWN5LXRydW5rCis1NTc1MyA4MmI5M2ZhOTFkY2YzNDEzZDAyYjk3ZmYyZWNkMTkwOWMzNmUxNDYyIHJlbGVhc2UyNS1tYWludAorNTU3NTQgYWJkZTA4Mzg0M2NkMmNhMzIxOWFmZWU4NTQ3MmZlZGZkZjlkODYzNSBwM3lrCis1NTc1NSBiOGFiZGZhMWM5YWZjMTAwMmQxMjI5NTBmM2IyOWE1NWM0MGRmMDNjIHAzeWsKKzU1NzU2IGY2ZmFiMWM3MDdlOTA5ZmZkMDU3OTRjZmUxZjZkZjU4MmEwMWNlN2YgY3B5X21lcmdlCis1NTc1OSA1MDE0ZjhkYWE1N2ZhZDU3ODZiYWE3ZGY0M2EwZDQ2NTRjZTNlYmZhIHB5M2stc3RydW5pCis1NTc2MCBlNGFiMDgwMzljNzVmODBmZDhmOGVlOTU1ZjYwMTc3ZDU1NjdkYzA2IHB5M2stc3RydW5pCis1NTc2MSA3M2RkMmRhMzFkMzdlYmQ4M2VmY2NiYjUwY2E4NTIyMzVlMjdjNTBkIHB5M2stc3RydW5pCis1NTc2MiA4YmNmYzQ2ZTQ0NGI1ODI2NmJkY2NiMWYxYWE2MGJmYmZlMTM5YzU5IHB5M2stc3RydW5pCis1NTc2MyA1Mzk2M2EyZjU2NTI5YmU4YzE2NTQ4NGU1ZGU2Y2RmZDg5YThmNDE3IHB5M2stc3RydW5pCis1NTc2NCA1Nzk4YTJmYmFiMDMwNGYxMzY3YmYxNTg2OTJiODljNGRiZjE0NzFmIHB5M2stc3RydW5pCis1NTc2NSA3MTYwNGQ0OWEzODYzOWVjYTE0NzJmMTdkNzZiODU4MzkxMWE3N2U1IGNweV9tZXJnZQorNTU3NjYgYzM2YWM2N2VlZjViNzc2YTEyYzA0NzUzZjcwOGE1ZGM5YWNmYmVlMCBsZWdhY3ktdHJ1bmsKKzU1NzY3IDRiMzRmYWFhOTc3ZGU4OTY5YjJlMmI5NDU4ZTkxMTU2OTI2OTAxMmEgY3B5X21lcmdlCis1NTc3MCBiNmMxYTFhMTVhNmNkYjQ1MDFhMDU4ZmUwZDM5NjA4YmM4OTkxYmFhIGxlZ2FjeS10cnVuaworNTU3NzEgZTNmYmRkN2NiOTY5Y2ViOGIyYzg0Mzk2YmRlYzg4MzkxZjZhYzAyNyBjcHlfbWVyZ2UKKzU1NzcyIDc2MTk0ZTY4MmUyMWNjNmFkNTNmZDRjNDMwZTM0NTJjM2RjOGVkOTYgcmVsZWFzZTI0LW1haW50Cis1NTc3NCBjNWNmOWE0ZjRmYTk3OWNkMTc1NTU5MTliNmQyODc1MTQzOTQ4YjhkIHJlbGVhc2UyNS1tYWludAorNTU3NzUgMzVhY2NlZGI1ZDAzYjQ4ZTAxZDc5ZjgyNDAwM2YxZjZiZWY5MDkxMiByZWxlYXNlMjQtbWFpbnQKKzU1Nzc1IGNmYmNmZjY2ZTcyNWFiNDI4ZTNlOWEyYjE1YTJjNzc5NjM4OTZjYWUgbGVnYWN5LXRydW5rCis1NTc3NSAwMTgxMzg0MWQ2NGJmYjQzNjZjZTBkZDExYTZlMGY2ODI4ZDJmNjBiIHJlbGVhc2UyNS1tYWludAorNTU3NzYgMzlhMWEyMmY5NmNmNjNmMTM0MjlkNzVhYTQyMGU3ODJjMGY4ODQyZCBweTNrLXN0cnVuaQorNTU3NzcgYjNmNjFiYWUxMGMzOGNkODU5NGEwZWYzMTA1YjFiNmZjNzI4MWFlMiBjcHlfbWVyZ2UKKzU1Nzc4IGVmMzc0MzFlYmYyYzk0NWUxZTNhYzgxM2JmZWE0MmJmOTYxZGQ3YmEgcHkzay1zdHJ1bmkKKzU1Nzc5IDRjNWZiZTY1YjdkZTc5MzU5ZDRmMTU3NTY0ZjI4ZDE2ODYwNjQ4NzUgcHkzay1zdHJ1bmkKKzU1NzgwIGIzMGM3NWQyMmYzNGIyMzk3MGE0ZThlMzhkMjg4NmM0ZmI0NTk5MmQgcHkzay1zdHJ1bmkKKzU1NzgxIDcwMTVjY2NmMjllM2JiZDc1ZGMyNzQ3NjJjMjA5ZDNiNGYyM2EwZWIgcHkzay1zdHJ1bmkKKzU1NzgyIDMwZTYxYWMxZDY2YzYyY2NmNTQwOWE1NTQ2YjU2NDUwODBmYWQ1MGMgY3B5X21lcmdlCis1NTc4MyA5YWY1MjRlMzUxZjMyNTBmMzFmMGQ2NDkwNzg3N2I4ZWI3MWEyYzJiIGxlZ2FjeS10cnVuaworNTU3ODQgZjIyNzc0MzlkY2RjOWY4YWQ0YTg4MzlhNDk3ODk4YzAyYzgzYmM4MSByZWxlYXNlMjUtbWFpbnQKKzU1Nzg1IDU4ODY4NmQ0YzJjZjg3ZWI5Njg0Yjc2ZGM1ZGQyOTE5YzA3NzI2YzAgbGVnYWN5LXRydW5rCis1NTc4NiA2ZmQ4ZDUyNGQ1NmIyZTY4ZWViNjU0MjM4ODBlNTY1MTQyMzYwODgwIGxlZ2FjeS10cnVuaworNTU3ODcgMTE5MzBkY2Y5ZDRmYjRkYWU2Yzk0ZWY0YjdjNTBlNDA2MTYxYzQ3ZiBweTNrLXN0cnVuaQorNTU3ODggN2U1MmI1YmVjNWE0MjY5OTc2MzU2NTM1OWZlYWNhODliYTY4MDJhMSBweTNrLXN0cnVuaQorNTU3ODkgY2U1YWY5YTc0NmNiMjA4YzNlMmMzNmMwYjIwOTFjOTExZDYyOTBmYiBweTNrLXN0cnVuaQorNTU3OTAgNDU5NjcyN2Y2YzM5YmM1OGY4MWYxN2ViOGIzZDViMzNhOWNhOTMxOCBweTNrLXN0cnVuaQorNTU3OTEgYjA1YzZkNDJkNGY3MjFmYjY2YmQ5MzgwOTMyYjY0ZTE3YWI2MGJlZSBweTNrLXN0cnVuaQorNTU3OTIgZjE0MWM1Zjc3ODYwZTMwZGMzOTY4NmU0NTk1ZTk0NTRiNTkwYzE1ZCBsZWdhY3ktdHJ1bmsKKzU1NzkzIDA1ODc5YWI4N2U1YjQ4NGM5OTViNWU2NWU0NDMxYjQ5NWY2NjhlZWYgbGVnYWN5LXRydW5rCis1NTc5NCA3YjM3YTQzNzIzNjE2M2Y4YjQzYTk2NmY4M2FiYmJjZTZhZjY0Y2U0IHAzeWsKKzU1Nzk1IDlkMDJhNGFkZjU3NDgxYjYwZDJmOTc1YjZjNTc5ZjFkNmQxYWQ1OTkgcHkzay1zdHJ1bmkKKzU1Nzk2IGIzOTAwYTUxMzQ2YjUyYzRkMTFkZTk5NmFmMDA4N2JkOGQ3OTQ3NzQgcHkzay1zdHJ1bmkKKzU1Nzk3IDU5YjdlOTM0Njg4NWNjNjBjYmFlZDhmMDZjNzBhZGY4NGRiZWVmOWEgcDN5aworNTU3OTggYzYzOTIyOGNmZTIzZDQ0YTljYTE1OTExNmI5Mzc3ODY2Y2IyNWY2OCBwM3lrCis1NTc5OSBhMzI2MWNkZTNhMzdlNjgzYjIyNzEwNGM1ZGVjNzNmNjY2MGUzNjcyIHB5M2stc3RydW5pCis1NTgwMCBmZWU3MWM3YWY1MmY0ZjBlMDk2ZWRiYTU1OTNjMTEyYjc5YTQ2YmI5IHB5M2stc3RydW5pCis1NTgwMSA5NDJkODMwMmY0ZDZmMTU0Mzk0MDI0MDYzMzJhNGM3MzRmNmM1Zjg2IHB5M2stc3RydW5pCis1NTgwMiBjOGIwZTNiOGI0NTZiYzhmMmFiNTlkNDU1ZTY3OWEzMWU0ZTQ3NGYzIGxlZ2FjeS10cnVuaworNTU4MDMgYzJhYzIyYzZmOThkMDNmY2QyODQ2OTUxNGIxNzA3YmE4YTg2YTExYiByZWxlYXNlMjUtbWFpbnQKKzU1ODA0IDFiYzkwMWRkYjdkYzIxYjNhZGRhN2U5N2YxMDIwYjZhOGU2ZDA0ZDAgbGVnYWN5LXRydW5rCis1NTgwNSA4MjNjMmY3NTkxZjUwMmVhODRlMDAwYzQzNTNlODkzYjFmOWFjNDhkIGxlZ2FjeS10cnVuaworNTU4MDYgODE1MGQxZjAxMGFhYzU2NmYyM2QwMmZhNjllOTU1Yzc2N2UxZTdlNyByZWxlYXNlMjUtbWFpbnQKKzU1ODA3IDE0NzQ1YjRmYTcxOGE1OWY1ZDUxZGE0NGNmNmU5ODhjOTU0OTcyYjQgcHkzay1zdHJ1bmkKKzU1ODA4IDgyN2VjNzY4MDE5OTUzNGZjOWNjNGU5YmRjZmM0Y2RkMjE2NWNkYTUgcHkzay1zdHJ1bmkKKzU1ODA5IGNkOGYxNjViZDdlMjk3YTRhMWZiYmM2YWEwYWIyOTJjZDUwMTE4MDUgcDN5aworNTU4MTAgYzZhMGI3NWRiZWMyMjhmZjkwNzUyY2YyYjVlM2Q5MzNkZDI5ODk0MyBweTNrLXN0cnVuaQorNTU4MTEgZWYwOWNiMDExOTU5NjRhM2ZkZDYyMWQ3ZTE1ZjgxZDJiMGM5YjJmZiBweTNrLXN0cnVuaQorNTU4MTMgNTRlZjY0NWQwOGU0ZmJiNmMzOTM5NGIwYTVkYmM3MDkxOGRhZWNjMiBweTNrLXN0cnVuaQorNTU4MTQgYzQxZmQ1NzIzODYwOTYwMDk3MTRiYzc4Zjk0ODhmZWYwYTE2ZThjMSBjcHlfbWVyZ2UKKzU1ODE1IGU0MjAwMzkzNjhiNzliZTJiMTkyZDQwMjU1M2FkMDI4MjVjMWJhZmMgcHkzay1zdHJ1bmkKKzU1ODE3IGFlNmJhNjE4OGQzOGQ0MDRlMzBhYWM3ZDUxMmM2YjA3NTIzMzBlYzAgcHkzay1zdHJ1bmkKKzU1ODE4IDY0NjRjYzYzOGZhYTBkMTQ4ZjY3ZTE3MGE2YTMyYjgxY2VmM2ZhMTQgcHkzay1zdHJ1bmkKKzU1ODE5IGU2NmRhZmE5ODQwM2Q2MjU2NDQ2MjI1ODA1YThlZDEzMzNiOTUwMTUgY3B5X21lcmdlCis1NTgyMCAxNGVjOTY3M2Y4OTQ3YzczZjMyZGVlZGI3NDUyYmI4ZGU3ZDJjZDdhIHB5M2stc3RydW5pCis1NTgyMSAyNDUzYjkzNzkyNWU4OTNmZTg2NzMyZDc5NTBjNzk5Yjc4OTA0M2I4IGxlZ2FjeS10cnVuaworNTU4MjIgMjlkMWFmMjIwYzNjN2E1YjVjNGE4ZmQwZTFjYzAzMzJmOGQ3ODRkYiByZWxlYXNlMjUtbWFpbnQKKzU1ODIzIGUxNTNiYTM1MmI1MTNjNWY4Yzc4YThkYjcxNzM5ZWY4ODAyZjBhYTMgcHkzay1zdHJ1bmkKKzU1ODI0IGY0OGMxOTdmOWMzOGZkZTZmNjQ1NjNiY2EzM2JiMzc5OGMxNDhhNDEgcHkzay1zdHJ1bmkKKzU1ODI1IDU4YTEzMzMwZGZkZTk5NjdmOTM4MjI5ZWZjNWVjZDE5NjQ0ZWFjNDggcHkzay1zdHJ1bmkKKzU1ODI2IDBkODFhNjU2NDEyYTE3ZDQxYWE4YTc1N2E2NzIwMDI3NTJjMTQ0NzYgcHkzay1zdHJ1bmkKKzU1ODI3IDE0YjY1ZGU5Yjc5ODU0OTBhMTc4YjU2YjIyNGE2Y2Q4MTY1Zjk0NzUgcHkzay1zdHJ1bmkKKzU1ODI4IDUyMmE0OTQ1ZGVmODBlNjBjNzIzZTdiNWYzMzkzNWUwNWU0ZTUxYzAgbGVnYWN5LXRydW5rCis1NTgyOSAxYmJjZDM5MjQxN2RjYTU3M2JkYzBkMjkyMzI0MjI0OGY4NjhhYTQ0IGxlZ2FjeS10cnVuaworNTU4MzAgMTBmOGE4YTkxOWUyYTBkMDk3YjdhMmM0OWMyYjQ0ZDUzMTJjMDE2NyByZWxlYXNlMjUtbWFpbnQKKzU1ODMxIDdiODRlODkxOWIwMDBjNTEzMjRhNGJhNTZlYjc0ZTQ4ODNjYWE3NWUgbGVnYWN5LXRydW5rCis1NTgzMiBiNGY0ZWU4NGMzMGQ3YWFlODEyZGNjZjg2ZTAzMTBkOTU5ZjI2NmVlIGxlZ2FjeS10cnVuaworNTU4MzMgODY5MWNjNzZkNDQxOTI1MGNlNTJmMmM4ODY1MWFiYzAzMGEwODA0YyBsZWdhY3ktdHJ1bmsKKzU1ODM0IDA2NzJkYmVkNWY3YTk3OGUxNTY2M2QyZmE2NGY5N2ExZTNiNmVkODIgbGVnYWN5LXRydW5rCis1NTgzNSBkNjBkMGQwZWU0ZjhjOWM4MzcyOWMzYmQ2N2FiY2I0ZGNiYjEwYTcyIHJlbGVhc2UyNS1tYWludAorNTU4MzYgMmJmNGRjOWQwNjQ3YmNhZTU2MTI0MzhkNjYzYWI5ZDkyZmEzNDcyZiByZWxlYXNlMjUtbWFpbnQKKzU1ODM3IDA1MjdhYjk0M2E0ZjIyMmNmODYxODEyY2I3NzkyMzBiODg5NjVkOGEgcDN5aworNTU4MzggNzlmMTNiZjhkZDI3YTI4NTc4ZGE5ZDZhMDk3ZGY4Y2M0Y2YzMGVmMiBwM3lrCis1NTgzOSBlNjJiNjA2ZWZmMGI4MzY2ZWYwMGY5YWY2NmM1MjY4N2Q5NTRkODAxIGxlZ2FjeS10cnVuaworNTU4NDAgMmJkOTQxN2RhY2Q1YzUzYWJlNzg1NGVlZDY0NDg5YzA0OWIwZGYwOSByZWxlYXNlMjUtbWFpbnQKKzU1ODQxIDE2Y2VlNjc0YTQxMGU1OTI2MjViZTQ2MGNjOGNmYTA1ZjU3MTY0ODAgbGVnYWN5LXRydW5rCis1NTg0MiBlODQxMzk3MTIxMmRmOTQ1MDkwYTQ4ZWJlZGI2NTRkMDU1MWU1NTg2IGxlZ2FjeS10cnVuaworNTU4NDMgMjg4MDVhNzIwNDU0MDAyYzhiMzZkN2I1OGE2YjBmOTU5NTczMTJhYiBsZWdhY3ktdHJ1bmsKKzU1ODQ0IDdjOTIyNWRhNWY2MTE1OWI0MzY4ZjM0ODIzODViYTc4ODA3Nzg5NDYgcmVsZWFzZTI1LW1haW50Cis1NTg0NSBlMmMzOWEzMGUwOGRkNmRjNDk5ZjViNWM3MDFkNzY5ZTZhZDIwYWJiIGxlZ2FjeS10cnVuaworNTU4NDYgNzMxYjY5OTQyMzE3ODAxOWYwNjJmNjBhY2Q2MTBjZWJiNTNjZmQ0YyByZWxlYXNlMjUtbWFpbnQKKzU1ODQ3IDNkYzUwN2NhMmUyYmViYjUxMDM0ZGRkZjQyOWY5MzQ5YjA3YzNmMmEgcDN5aworNTU4NDggNTljNmY0Y2JiMzI2OGVjMmE0MDc4MzkzN2I3ZjdlZDU0ODlmZTIxNiBweTNrLXN0cnVuaQorNTU4NDkgMDIyMjRkYTYwZmQxODNiZmUxNWFhZTlkZmFmMWY1NmQwZDhmODNmMCBwM3lrCis1NTg1MCBjZDEyNWZlODMwNTFiNGU1MDg3ODlkYjg2NDQ3MWM2YzJmMjExN2Y4IHB5M2stc3RydW5pCis1NTg1MiA2NDQzODUzYmEzMTQ4OTFlN2NkZTdjMWViMTQ4OTE1ZDE3MWFkNTZiIHAzeWsKKzU1ODUzIDZiZWI3NWVlZTljNTJmMmIxMmM5YjQ3Y2MxZDE4ODYzZTM2YjYyM2QgcDN5aworNTU4NTQgYjFiOGVlODA3YmRhZGUyMTlmMzA2YzJlMjMxODE1MGJmN2M4NTc2MSBsZWdhY3ktdHJ1bmsKKzU1ODU1IDNkZGFhZjYxNDgwNDRhYjc5ZTA2NzdiMjJkNTI3NGI0MGI5MWZiNWMgbGVnYWN5LXRydW5rCis1NTg1NiBiMjM5YTJiY2IyNGYzNTNjMTgyMTM3NzRkNDA1NDU4NjQzNDU4ODRmIGxlZ2FjeS10cnVuaworNTU4NjAgN2VhY2NmNTNhZGJkMTRjM2E4YjcwYTE4ZDFkOGU5YjFmZWY1OWY1ZSBsZWdhY3ktdHJ1bmsKKzU1ODYxIDc5OTBiYjI3NTljYjM3OTRjNzFlOTcxYzUwYzYzOGU2MWIwM2QyNmUgcHkzay1zdHJ1bmkKKzU1ODYyIGY1YjY1NzMxYmQ2YzlmYjYxYWRiNmI1NmM3NGMzZmQzNzBhNDc1ZWUgcHkzay1zdHJ1bmkKKzU1ODY0IDZhNDM4MmNlYjcxZTJjOTNjZmVlZDJlNDU4ODBkN2VkZDI4ODc1NzkgcDN5aworNTU4NjUgMGU5YjBiOGZjM2U3Y2YxZDZmYmFkNWMxNDhhZTIyNWNkZWZmNzhlOCBwM3lrCis1NTg2NiBiMzdhNTY4ZmQ0NDFlYjU1YTJhZTk1NTg2MzliYjc2YWQwZWI3YzIwIHAzeWsKKzU1ODY3IDJkNWUyMzY1YzdkYjA1YjgzMGU1MjIyZDRmMmJjNDRjZWQ3OGYwM2QgcDN5aworNTU4NjggOWU4NTdiNmMxZTU2M2U3NzRmNDQ0MzIzY2QwMmNhNTg0Nzg2ZDQ4MCBwM3lrCis1NTg2OSAxOWZhOWM3ZDNjNGYwOWQ0YzIzOGM0NGY3ZjY3MDNkZDllYWNlZjUyIGxlZ2FjeS10cnVuaworNTU4NzAgZTFhZmU1NmNhNmJhMzA4MDkyMTMyMjg2N2YyMzZkOTM4YzY4ZDIwMiBsZWdhY3ktdHJ1bmsKKzU1ODcxIGI3ZjhkZGQwNzJiODU4ZmEzNGRhOWFjMzI5MjBiNDcwMGM2OWUyZGMgcDN5aworNTU4NzIgNTliYzhkYTAxYzY1OWNmODE0NTdmMGZmMGFmMDE5MTQ0YWI4NTNhYiBsZWdhY3ktdHJ1bmsKKzU1ODczIGRkZTdjMzdmNDUzNjRkNzY2MWYzODBiYWJkOGJhZTBiZGQwYmNlNDAgbGVnYWN5LXRydW5rCis1NTg3NCBiOTRmMjg0ODA1YmU3MDgyNmUxYTU5OGM2MjcxN2NkZmMxMjBjZjIxIGxlZ2FjeS10cnVuaworNTU4NzYgMzZiOGQ3NGRlYjllOTIxMDJjOWJhNWY4YzQ2ZmNmMWQ3Mjc4OTMzZSBweTNrLXN0cnVuaQorNTU4NzcgNzVlZmU2YmY4YTNlY2VkODQxZmJlZmQ2YTQ3YjlhNjBmMTVkZjMxYyByZWxlYXNlMjUtbWFpbnQKKzU1ODc4IDcxZjMxOTI5MTVlMTMxZTJmOTFhOWQyODdmZTEzNjhlOGJkMGE0NzcgcmVsZWFzZTI1LW1haW50Cis1NTg3OSA0MzMyMmZmNWUzMTJjNGE1NDkwNDVjZTY1NmQxMjY0NGYxOWMxMDcxIGxlZ2FjeS10cnVuaworNTU4ODAgYzllM2M4MjgzOGMzMzgzM2NkNDBmNzVkODYzNDMzYzUyYmEwMmMyZSBwM3lrCis1NTg4MSA3M2I2Y2ViYzZmNzI3YTFjOWM0YWMwNGVmZDc3NzNlMTA0YjAyYmY0IGxlZ2FjeS10cnVuaworNTU4ODIgYjM1NmY4NzIwOTQxYjI1OTJhMmI3ZDJjN2U0NTI2YWQyMTUzZGEwMyBsZWdhY3ktdHJ1bmsKKzU1ODgzIDgyMTc4YTYwODJlYWZiZDE1MjE0ZmY0Njg1NGY3NTkzN2ZhN2Y5MDQgcmVsZWFzZTI1LW1haW50Cis1NTg4NCA2ZjNjMzM1ZWY3MTZmZmUwNGQ4ZDFjYWIyNjIwNDk2ZmRjY2MzZDZhIHAzeWsKKzU1ODg1IDliNmM0Njk0NmUwMmRkNWNmZjJhZDA5YzgyMDE3NTZlMDUwMWQ2YTEgbGVnYWN5LXRydW5rCis1NTg4NiA2NDQ5ODUwYzU3NTlhNTBhYzI2ZTEzNjJjODIzZTEyZTljOWI1NDExIHAzeWsKKzU1ODg3IGQxZDc5YzcxZmY2MmNhYWQ4OGE0ZTNhY2M3MGEwMWNjMTA5ZTBhYzYgbGVnYWN5LXRydW5rCis1NTg4OCA5ZDQwNWUxMzNkMGIyNDc3NmNjZjAzN2Q2MWU2YzljMGY4Nzg0NWViIHJlbGVhc2UyNS1tYWludAorNTU4ODkgOWJiZmQ4NDU2N2Q1MGE0MDlkYmNmMzIwY2ZhOWMwMmNhNWQ5OTgyNSBsZWdhY3ktdHJ1bmsKKzU1ODkwIGQwZTRhMzJmNmI3ODk1MTJlYjk0NDZiNWE5NGI1YTgxYTgxMmRmMzYgZGVjaW1hbC1icmFuY2gKKzU1ODkxIDE2MGI3MzE4YTNjYWI2ZTJlMjExNGIzZGI2NTBmMmYwOTAyMTMyNDMgcHkzay1zdHJ1bmkKKzU1ODkyIDE4MDg0NmI4NzU1Zjk4NGZiMTllZmFhNDgzMWMyYTI5YWU0NjkxNWEgcHkzay1zdHJ1bmkKKzU1ODkzIDA1NjYyN2NiMGU0MGEwZmNmZTUxYTRjYzU1NDYwZWUyNTFlN2MyNTUgcHkzay1zdHJ1bmkKKzU1ODk0IGY4M2NjOWIzMWE5NzdiZGU5NzM1YWMyZDM2NzM0YjMyM2JiMWY3NjQgcHkzay1zdHJ1bmkKKzU1ODk1IDk2ZWVmYzdhNjdhMGZjNTdlMWJkYTQ1ZWQ4YWQwYjlmMWVlZjJhMTMgcHkzay1zdHJ1bmkKKzU1ODk2IDNlNjRkMGVhYzc3NDhlYzhmNWVlNTI1OTI3MDc0MTlmNjIxY2U0Y2UgbGVnYWN5LXRydW5rCis1NTg5NyBlMGY5Mjc0MTRkZmEzOWExNjI2ODEzZWFiYjUxMjM0OTY1NTQ2ZGU3IHB5M2stc3RydW5pCis1NTg5OCA2MWZkNTQ0NGQ5NWY4MGJlMTQ0ODFmODhkNWM2MDZhMzcwZmUxY2UyIHB5M2stc3RydW5pCis1NTg5OSBmYWE2MjZkNmU2NzUxNzJkYWI1NmQxYmI0N2JmNmU2NGE2M2M1ZTZiIHB5M2stc3RydW5pCis1NTkwMCAxNzFmMGUwNzM2NzEyNmFjY2ZiYzI3ZmQ4ZDdhNWRiNjJlYzdkNjYwIHB5M2stc3RydW5pCis1NTkwMSA5NWJlNmMzYWRlNmU5Yzk1ZTNlNTAxOGRmNTQ0MmZkZjkyM2NlOGJmIGxlZ2FjeS10cnVuaworNTU5MDIgZDY3OGJhMDE3N2RhZmExZDIxMWNhNWMyNmYxNzFhZjYzZTBmZWFmNCBweTNrLXN0cnVuaQorNTU5MDMgMzkxMDUzM2I2NmM3YWQ0ODM4N2YzODZlYzVjZTFlNTE0ZDZmOGQ3ZCBweTNrLXN0cnVuaQorNTU5MDQgM2MzZjYxNWVkY2ZmZjdhMDViOTVlZTA4ODYyZThiNjU3ZDJkODljZCBweTNrLXN0cnVuaQorNTU5MDUgYzYzMGUzYTY4ODgzZGMzNDkwNDU0ZWE3YzJlMzhjY2ZiNTQwZjZhNSBwM3lrCis1NTkwNiA1N2MzNDQxNDk3MjdmMmU0ZjkxY2VlYmU5MmU2MjkyMTIxYTRlNzA3IHAzeWsKKzU1OTA3IDAyZDNlZDJjYzM0NzU5MDAyMmMwOGE3MjgzZjc1NTdmMjc2YWY1OTAgcDN5aworNTU5MDggMTkwZTJmMDY5YjE4MTgwMmE2MzEwYzFiY2VkZDAwNzIwZGU2N2MxNCBwM3lrCis1NTkxMCA1ZTE0Njk2ODY4Zjk3MTM5ZjYyOTRiMTA0MTllODNiMTZmZWFjYzY5IHAzeWsKKzU1OTExIDZmNzIyMDhjNjQzYjVlNDkwMWFiMTI0ZTU3ZTgwYzVjYmM2Y2E4ZTQgcDN5aworNTU5MTIgNWMyNmZlMDdkZWRmNWQ4Njg1YmMxMzgxMzUwZTA2NDk5MmEyZGUwYiBwM3lrCis1NTkxMyA3YmY4MzYwOTgwZjFmM2MxODEyNDM4ZTU3MWQxOGQwYTk4ZTE1YzkwIHAzeWsKKzU1OTE0IDhkYjA2OTY3NjJiNGYxN2Q3M2NjNmFlYjRhOTYzY2JkOWM5M2M5YzUgcDN5aworNTU5MTUgY2E2OTNmNGZkMDVkMGUyOWIwODA4MzNkMGM2M2E0NTNlODhlODUxMiBweTNrLXN0cnVuaQorNTU5MTYgODgxMjE2MmYwZjgyYTY5OGMxMTY1MTc2NGU3MDA2MTI2YTU3MThlZSBweTNrLXN0cnVuaQorNTU5MTcgODgxYWIxZDQxN2ViZTNmZWRiNDdiOGYzYjhjZTRjMjBhNWY5OTE5NSBweTNrLXN0cnVuaQorNTU5MTggODAyYzg0Zjk5YWFkMTViNjYwYjRlZjUwOTMzMmE5NDJkMmU4MDNjYSBweTNrLXN0cnVuaQorNTU5MTkgMDYzNTMwZmNjMzJlOWUxNDVjZWYyY2EzM2MzNDY2ZjkzZmM1MGVhMCBweTNrLXN0cnVuaQorNTU5MjAgNmQ2NDcyMWVjZDI2OGNlMTVlMWU3ZmM2ODc0N2M5NjcwMWI4Y2FiNiBweTNrLXN0cnVuaQorNTU5MjEgM2ZhYThjODA5NzAyNmJlNWYxYzBkNjA0MGU5NWEwMjc3N2ZhYjgxMyBweTNrLXN0cnVuaQorNTU5MjMgYTk5YTk2YjViM2Y1Y2MxNjI3N2NkYzRmNTBkOTE2NGMwOTcxYzBiNyBwM3lrCis1NTkyNCAxNzJkY2U1ZmFiYTFkYmFhNTQ3MmY4MDFkNWVlNDNlZDc2NTBiZWI5IHAzeWsKKzU1OTI1IDM0NzNhNjg1ZTVlN2Y4ZTQ0ZTliNTM2YWZmMjg5OWMzOGZiMTcwNDIgcHkzay1zdHJ1bmkKKzU1OTI2IGFmMjYwODAwNDAyMWQ2ZWRiMjA3ZTRmNWQxOTUyZDE4ZjljZmZjY2YgbGVnYWN5LXRydW5rCis1NTkyNyAwNDU5Yjg4ZTE0YjQxNDgzNzI0NDMwNjJkYzAzZGJhMDAzOTg5NjJkIGxlZ2FjeS10cnVuaworNTU5MjggYmE1ZDFhMzk3N2U5M2QxMGRlMjk3OWU4YmJkMDVhZmMzODlhZTQ0OSBweTNrLXN0cnVuaQorNTU5MjkgMGJkNzU5MTZlYzU4MTkxMmNhMGQzZTNkYjc2YWM5MDliNTJiYTU4ZiBsZWdhY3ktdHJ1bmsKKzU1OTMwIGQwY2ZmZjg5MzBlNTVhZWU3MGVhMTM4ZTViZjhhMDdiZjU5ZDEwOTAgbGVnYWN5LXRydW5rCis1NTkzMSBkYzdhODJjN2NlOWVjYjU4NWMyOGMwZDU4YjhkZjJmMWRlYzUxNDg2IGxlZ2FjeS10cnVuaworNTU5MzIgYmM5MGZjOWI3MGI3NjIzOTdhMWY4NGE0NTQ2NGJjYWFmYjgwOGM4YiBweTNrLXN0cnVuaQorNTU5MzMgNDg3NzAwODA3NGE5MWI4MDQ0OTA0Y2U1NDM1NmU0NWI1ZDFmY2JhOSBweTNrLXN0cnVuaQorNTU5MzQgNjU3ZmU3OWE2ZGZlYmIzYTUwNzZmZWI5ZDczM2ZkZjEwYjgyMzdlNiBsZWdhY3ktdHJ1bmsKKzU1OTM1IGU4YjIwNjBjY2I1OWM3YWI1MDlhMDhmNWJmYjlhYWIzMzc4ODFiZDggcHkzay1zdHJ1bmkKKzU1OTM2IDQ1YmI5N2E0ZThiNjcxMTc4YjY1M2QwMTE1MGJiYmZhNmE4ZmVlMWMgcHkzay1zdHJ1bmkKKzU1OTM3IDRmYjg1ZTZmODJlNWUyZjAzMjJjNjViMjI3NWY2YjM0NjA1ZDFhY2YgbGVnYWN5LXRydW5rCis1NTkzOCBlOWZiMDZiNDQ0NmUwZTllOTRlOTY0YzVjYmM2ZjI0YTFhOGU2OTA3IGxlZ2FjeS10cnVuaworNTU5MzkgNTYwNTcxOWJlZWUzY2FmNTM4M2NjNWY1OGIwOGIxNzVjZDA0N2M2YyBwM3lrCis1NTk0MyA4MjUwNDFmYzhlMmMxZWQ0YTNiZmYxNzY0MDU4Yjg1M2VmZGY4NDE5IHB5M2stc3RydW5pCis1NTk0NCBjZTYzYTVkY2IwYWYxMzQxNWY5YmZhNDc1NTFjYTQ4Nzg5Y2IwMjVmIHB5M2stc3RydW5pCis1NTk0NSBmODMzYjQzYzI3NTY4OWViMjQ0ZTZiZDFkNDA4NTI1NjFmMGU4Y2U4IHB5M2stc3RydW5pCis1NTk0NiBmYmFiZGIwZDdkZDIyYzRhNjE2NzUxZTg3ZTkxNzBkMzcwY2ZhYTAxIHB5M2stc3RydW5pCis1NTk0NyA4Y2ExZDNhN2Y0ZjBmOWRmN2U4NDI5MTJhZTc3ODg1NWY5MzYzYTkwIHB5M2stc3RydW5pCis1NTk0OCBkZTg4MDM4MTY1NGFmNmY3MjBlZmQ0MzMzMTBiYTE1MzllNzg1ZjYzIGxlZ2FjeS10cnVuaworNTU5NDkgMDMxOGEwZjU0NTIwZTQyNzFhOThjMWI3OTAxNmQxNzI3YTliZDAyZSByZWxlYXNlMjUtbWFpbnQKKzU1OTU0IDYwYmUyNzYxMDU3YmZkZDNlNDMxOGNhNTAzYWU5NGRjODk2ZDk2MGQgcDN5aworNTU5NTYgYjUzOTEyMTRkZjM1ZGVlN2U2NWY2OWY5YTRjNDhhNjBlMTUxMzgxMiBsZWdhY3ktdHJ1bmsKKzU1OTU3IDNkOWUwZWZjYTVkMzUyOTY0M2RiYWM5ZGQ3NzBmMzJhNTQ0ODNmOGEgbGVnYWN5LXRydW5rCis1NTk1OCA1MGJlYmVkYzYxNGVkNTRkNTQ0MzljNWJmNjJlMDgzY2Q1YTFlMjE2IGxlZ2FjeS10cnVuaworNTU5NTkgOWUxMTRiMWZkOTRlODM4MDhmZjUwODIwY2Y0YTg5ZGFkMzcxMjZjMiBwM3lrCis1NTk2MCAwNWYxZmQzMTM0NGRkOGJlNjgwOGE0ZDBlZTI5ZWZmZTEyZTkyMzg0IHB5M2stc3RydW5pCis1NTk2MSBmZmIxYWU3MjMzYTIyOTk4ZjE5OTFhNTBhMzhjZTRiODVmN2RhOTQxIHB5M2stc3RydW5pCis1NTk2MiAzNzE4OWUzNzVlYzc5NmFiMTYwN2M1ZDNmOTgxOTMzY2E3NmUwMDlkIGxlZ2FjeS10cnVuaworNTU5NjMgMjI5YzI4Y2I5YWZiMjMyOWMwZjU1N2JhZGJkNWFmMDhiMzQ2MmQ3MyBweTNrLXN0cnVuaQorNTU5NjQgNTM2OThmOWE0ZWI3NmU1NDhiMmEwYjY3NmNhYTc3ODUzZDZkMGIwZSBweTNrLXN0cnVuaQorNTU5NjUgNTY3NWY2YzNmZjgzZDFmMzA3ZjEyOWYwMmZkMGNhZDBmOGE4YWY3ZCBweTNrLXN0cnVuaQorNTU5NjYgOTczOTkyYTc0NDBhMWNjNTgyMTA4NTI1OGNjNjYzNmVkMjkyYWMzNyBweTNrLXN0cnVuaQorNTU5NjcgYjdlNTQ5ODU3MzIxNTk3YmE5ZDQ3ZDM1MmUzN2NjNGJkYTk0NjU1OSBweTNrLXN0cnVuaQorNTU5NjggMGUwMTBkYjEyMmM3MWEyZTIzYzYyZTA1MGFlMmRlZmNkYTVjOTliMCBweTNrLXN0cnVuaQorNTU5NjkgODY5MzdiMGNkNTZhNmMwYWFiOTkwMzQzNmYxNzU3OTU0ODVkNmEyZCBweTNrLXN0cnVuaQorNTU5NzAgNzJmYzdkMDI5ZDNkMmIzYzFkNmYxMDgzZjY5NDJiZmE2Zjc0MDY0MCBweTNrLXN0cnVuaQorNTU5NzEgZDE3YTI3MjQ3OTg2MzAyNjVhZDAzNTRkOTY0NjQ3NjBiZDk3NjJhNiBweTNrLXN0cnVuaQorNTU5NzIgMzY1NjdmZTAyZWE1ZDExMTRkMTNhYWU1MzdmOTVkNDcwYTExNzMyZiBjcHlfbWVyZ2UKKzU1OTczIDQ5N2ZhZGUxZjg3MzQ4MjQ2YWE0MDZkN2M0ZTgzNGM5YzcyNmZiNzcgY3B5X21lcmdlCis1NTk3NCAyY2Y3Y2U0MWVjNjAzNTliMjljMGE5N2FlN2QwZWZlMzEwNTUwODg0IGNweV9tZXJnZQorNTU5NzUgZmQ4ZGQ3NDQ3MGY5NTkwNDdlZjkzNGE5OWQ1ZjAzNDU0MjU5OTU3OCBsZWdhY3ktdHJ1bmsKKzU1OTc2IDQ0YjQ0YjBhOWZlMjU3Yzc0OGY5Mzc1MWQ1NzQwMGNjYjRlYWVjMGIgcmVsZWFzZTI1LW1haW50Cis1NTk3NyAyNzFmNjg2ZjYyMTgxMWRjYzYzMjgyMzQ5MzViNDEwNjhjZTk4OWE0IGNweV9tZXJnZQorNTU5NzggZjY1NjcyYjhlN2QxZmVlOTQ3ZTZmYjkxYTg1YzkyMzMyM2MyNDlmZCBweTNrLXN0cnVuaQorNTU5ODQgODVjNDQ2ZjRiMTk2MjJjYzg4YzhhN2FmYjQ4ZTg5MTQzMjU1NTg1YSBsZWdhY3ktdHJ1bmsKKzU1OTg1IDRmNmNlOThiMDYwZDFmYzZjOTQ1NmNiZDZmNTRmMWE2NWViNGExZDggcDN5aworNTU5ODYgMjQ2MzI0YjM5ODk2YjEzMGJkNzJlZDE4OGM1OWE0OWE5ZjdmNGYwYyBweTNrLXN0cnVuaQorNTU5ODcgNTgzOGJlYzdjMTE1OGFlMzAwNTc2NWU2MDdlOTg3ZDNiMDRlNDljNCBweTNrLXN0cnVuaQorNTU5OTEgNjcyN2NjOWVkMDlmZjFmNWIwNWRiMzE2YjcwNDk0OWQ5ZmM4YmMzNiBweTNrLXN0cnVuaQorNTU5OTUgNDg3NzQ3ZDkxMGM3NjJjMDJlYTNkZTdhZmQ2ZDM4ZmUxOTQyOTI2YiByZWxlYXNlMjUtbWFpbnQKKzU1OTk2IGQ2ZDFlODZhZDQ2YzFlOTBkN2U4ZTMxNDcwZmE0ZTgyNWEwNTRjOWUgY3B5X21lcmdlCis1NjAwMSBlZDZjODJkYTFhNmNlZWIxZDk1ZDE4NzljZDA0MTNkMWZiNjI1OGIzIGxlZ2FjeS10cnVuaworNTYwMDIgOWJhOTkyZjY0ZTk1N2YwNzg2YzA1ODQ0NjA1ZDJhM2FiNWYzYmNhNiBjcHlfbWVyZ2UKKzU2MDAzIGU0ZTZhNGQ3YzE2ZTk1OGNlNDkxNDAyNTM5MWM5MWI4Y2UyMmI5NTUgcDN5aworNTYwMDQgN2Q3YzQ4MDU2M2UyMWNjZmRjMDViOGE3ZWYxODM1NDBlYTNjNThiZiBwM3lrCis1NjAwNSA4ZTg2MDk0MzJlNTZjODkxZmEzYTgxYjU3NTM0YjQ4YjU3YTg1MDhmIGxlZ2FjeS10cnVuaworNTYwMDYgY2VkOGRiNjE4ZTViNmJlYTk1OTk2ODE0ODY0NzRmMTI0YzkwYWRlZCBsZWdhY3ktdHJ1bmsKKzU2MDA3IDQxZDQ1YzIyZjE0Nzg2MWQyODk5NWVjNzVmY2M4MGQwZTI4YTlhOTUgcmVsZWFzZTI1LW1haW50Cis1NjAwOSA4NTNiODQwOTMxNTE0NmY0MTMyNDNmMGVjZTk2NGEwMzQ2NDUyMTU3IGxlZ2FjeS10cnVuaworNTYwMTAgNTZlYzM0N2RhOGU0MmY0ZDY0OGY3NTlhMmU1YTBiMjI2ODA2NTNhZCByZWxlYXNlMjUtbWFpbnQKKzU2MDExIGE5YWVjYmY1YjEzZjAyM2M3ZGM5ODcyMjMzMzg4YjQ2NTkyMDIwNDAgbGVnYWN5LXRydW5rCis1NjAxMiAwMmRhNjMwNThkNmIxNGU5YTEwNjQ0Mjk4OTZlYmJhNDZmZGI1ZDk4IGxlZ2FjeS10cnVuaworNTYwMTMgNTk0OTdlYzI4Y2FhYmUxMzQyYTY0NTEzMmEzNzAxNWJlNDFkMjNjYSBwM3lrCis1NjAxNCAwODA1MTU3NzM0ZjhkOWRjMjBmOGM3M2Q5NDk1NGZiMzUxMzA0MjUzIHAzeWsKKzU2MDE1IDI1OWRlMzg3NDQyMDYwMjIyNDY3OTA0MmU0ODY5MjhjM2E3YzljMDAgcDN5aworNTYwMTYgODI4MjNlMTNiNjZjZDllNjBiMGE2YWIyY2E0OThhYTZkODMwOGUxNCBwM3lrCis1NjAxNyAwZTIwNDM2MjMyOWVkZTcyOTU0ZTAzZTk3MzA2NDY4NTJlZjkyZWFlIHAzeWsKKzU2MDE4IGI0NTY1ZTA5NjEzMWYxZDFkZjA0MTc5ODU3ZjcwMzhjMjU2YjQ5OWIgcDN5aworNTYwMTkgYjJlNzMzNmZlYjgyNmE3NmRiYWQ5NmE4MTZmYWU0YmRiZDYzNmEzNiBsZWdhY3ktdHJ1bmsKKzU2MDIwIGU0ZjY0OWM0ZjQ1NzI1ZWRmNmQ5YmJkYzZlNjYxOGZiYzcwMzk2NjYgcHkzay1zdHJ1bmkKKzU2MDIxIDMyZmUyYjllOWYxMTE0MzNjNzc4ODIxMTE4OWUwMDljNmMxMTkzODMgcHkzay1zdHJ1bmkKKzU2MDIyIGViYzg3Yjk0ZTZlYWI1ZDEwMzgwMzA5OTU4M2JiYmMzMjIzODNmZTYgcHkzay1zdHJ1bmkKKzU2MDIzIGE0YWU2MjY1M2E1Y2IxNjljZGUwZjVhZWZkNTBiYTE0YmUwYWM3MTEgbGVnYWN5LXRydW5rCis1NjAzNyA3Yzg5MmU3M2U4ZTQ5ZjUwNTU4YTI2MDkxZjIxNjlhYWY5YjRjNmU1IHAzeWsKKzU2MDM4IGFhYjkwODBhYzRjN2VhMzY5ZTJkNzhhMGQxNjRhYTBlZjk1NTM2ZDAgbGVnYWN5LXRydW5rCis1NjAzOSA2NmM4MzQ3YTY0ZGRhZWQwNWMxZGQ4NTg2ODA2YjdlODY2ODk1ODFjIHJlbGVhc2UyNS1tYWludAorNTYwNDAgMDRhNDE4NWJkNGQzY2MxNjUzNWQwNmM5MWQ5NjVmNWE2ZTM0YjU3ZCBsZWdhY3ktdHJ1bmsKKzU2MDQxIDY3ZjcwOTdjMzRmMzQ5OTgyODA1MWZhYzZlZDMyNDQ5M2QwNTE3ZTYgcmVsZWFzZTI1LW1haW50Cis1NjA0MyA3MGEwODMxZmVkYTY5MGU0NGE1Mjk4MTBmMjhiZjI5OGNiY2ViMzA4IHB5M2stc3RydW5pCis1NjA0NCA0ZGIwYTBjYzU3YWJlZTk1NDExY2UwZDE5OTM3NGNlZjJmMjhkNDJkIHB5M2stc3RydW5pCis1NjA0NSAwNDEzOWUzMGU2NGRhOTUxZWY3ZmQ1ODhmM2ZhMjdiNzcwYzA2NjlkIGRlY2ltYWwtYnJhbmNoCis1NjA0NiA4NDI1MzM0NzdjZWE1NDQ0OWViMTc3N2M2MjU2MjExZjU1MTQyNTI2IHB5M2stc3RydW5pCis1NjA0NyAxZjA2ZDVlZTQwYmQ3ZjJjMWFjODdhMzAxZjZiODk1MjNhMDVlMjk5IHB5M2stc3RydW5pCis1NjA0OCA2NzEwZjQ1M2NmNGE4YTJlOTU3NTliN2JmM2ZlODYyNzdkMjBmZjg1IHB5M2stc3RydW5pCis1NjA0OSAzODNjODkwN2JlYTA0NDgwMzFkZmI4NGY3Y2U1MTQzZWY4ZTQyN2M2IHB5M2stc3RydW5pCis1NjA1OCA2YjMyNWIwNjVhZWRhZWYzMWRhY2U1YmE5NmU3N2NkM2MxYTE5MGZlIGJjYW5ub24tb2JqY2FwCis1NjA2MCAzOWVhYTljMDI0NmU0YTJiMjA4MzhkNDRjNmVmMmZiODkwYzliNmJiIHAzeWsKKzU2MDY5IGUxM2Q1YjEwNTNlZjgzMTlmZTZmMWUyMDg3NjNkODQyZTIzNjZkMDkgcDN5aworNTYwNzAgYmU5ZGUwNWJiODg5Y2MyYjlkMTFlZDA1Nzg5NTgzNDZlYWY4OGI4MCBwM3lrCis1NjA3MSA5NTkyNzY4NDQ3NmJlMTZiZGIzZmEwN2VmNTJlNGE3MWRiODM5YjUwIHAzeWsKKzU2MDcyIGY5N2I2NmU5YWE4ZjBkN2I2NmY2YWQyYzBmYjRhNmYyZWQ5Mzk2YjcgZGVjaW1hbC1icmFuY2gKKzU2MDczIDQ1OTAxMjllNGMyYjVkZjhkNGQyNjdkYTg5ZTJkYzZkMDMxNzU0ZjYgcHkzay1zdHJ1bmkKKzU2MDc0IDc5YzI2NTYwNTZmNjc1ZWFhODUwYTI1YjRlMDE3Y2U1MmRmN2Q0OTMgcHkzay1zdHJ1bmkKKzU2MDc1IDhmYzkzMjE1YzBjY2ZiYjA0MDg4MTRjYTczZmZlZjMwM2ZiODZkYjcgcHkzay1zdHJ1bmkKKzU2MDc4IGMyOTFkMmY2ZDAxN2YyNTE1ZmNkNzE5NGNkYzc1ZTkwY2JmNDI0YTcgY3B5X21lcmdlCis1NjA3OSBiOWJmN2M3NjBhMTAyNWJiYWVjN2MyOTE0NDMyOGFkMGRkZmU3MjlkIGNweV9tZXJnZQorNTYwODAgOWI1NmM5MTYyNTM0NzRhYTc2YjE0YjdmNjhhM2I5OTRlMGU3ZTBlZiBjcHlfbWVyZ2UKKzU2MDgzIGU4NzZmNjQzOWRjN2JjNWMyYjY2NWVkZjg2OGRlNDRiNTdjZWE2NDggY3B5X21lcmdlCis1NjA4NCA0MWU4YWQyYzliYTk5MWM5NWEwMjEzOTRjOWRjNWJmMjg0MzY5ZDMyIGxlZ2FjeS10cnVuaworNTYwODUgZDgzN2I1ODQ2ZDQxNGZjZDgwZjY5ZjUxMzhmYzBmNjM4YjAxMTYzZSByZWxlYXNlMjUtbWFpbnQKKzU2MDg5IDlhNmFjOWE3ZTNhNGZmOWZjNjkxM2EyOTI0MzEzMjJkYTY4YjY4MWQgcDN5aworNTYwOTAgZGIzMjA4NzA0YWMwYWY5ZDQ5Mzc0NGEwZGQyNjA0NWNiMTVjYzE1NyBiY2Fubm9uLW9iamNhcAorNTYwOTEgNzA1YmM3M2VlNDMzMWM4YzMwYzhjYzIzZjIwODFmMGMzOTY5YmQ2NSBsZWdhY3ktdHJ1bmsKKzU2MDkyIGIwMDc0ZmQ5MjYyMWM2NzNjMTcyYmU2MzkyYTAwMjdiZDNkYThjNDcgcmVsZWFzZTI1LW1haW50Cis1NjA5NSBiZjZlYjg4NDdhNDI0NDAyOWRiMGZkYTUzYjY4YTU4NTA5NTVhODgxIGJjYW5ub24tb2JqY2FwCis1NjA5NiAxNTkwMzFkYjhlOWYyODU3MzA3NWU1ZWE1YTZiMmM3NWYzMTlmODlhIGJjYW5ub24tb2JqY2FwCis1NjA5NyA2MzNiMDQ5NDdhYzQ2MDVjMDY0YjliZjg5YzJjMGQ3NmY5NTgxY2YxIGNweV9tZXJnZQorNTYwOTggYmIwOWVhZDA0ODQwNTNhZGE5NTU4NzA3MmQ4MTNmMmNiZjBhZmY1OSBjcHlfbWVyZ2UKKzU2MTAwIGEyMDAyNDBkZWE4YWI3NjM5ZTViY2FlNDU2MjhkODlmZTAwMWU4NWIgYmNhbm5vbi1vYmpjYXAKKzU2MTAxIDNmNTg5YzU2NDQyNmQ4N2MxZDA1NzJkMzAyZGU2MDk1MjM1MWJlYjUgYmNhbm5vbi1vYmpjYXAKKzU2MTExIDdhMTE4YWMxNDlhMDY2NzAwM2E1ZWZmM2RjMjZmMzlhZTg2ZWYzZDYgYmNhbm5vbi1vYmpjYXAKKzU2MTEyIDUwZDMyNjQ3YjAzNTY1MmFiMjc1MmI3MzIwMDg2ZDI3ZWMyYzVlZmYgYmNhbm5vbi1vYmpjYXAKKzU2MTIzIDVmMTQ4ZjZlMGE0Njc5OGVhZWIyNTVkYmQyOGQxMDA3YTFhMTQxMjkgY3B5X21lcmdlCis1NjEyNCAzMTRhZGMzYjdiYjQ3OTk4YjlkZTY5M2QxMjZhNDM2YWZjZjQxNmVjIHAzeWsKKzU2MTI1IDdmZjM1YWQ0NjZlYzU1ZThkYjNiZjMzYzcwYzljN2Y2MWE4NjAzN2MgcHkzay1zdHJ1bmkKKzU2MTI2IDg2M2VkN2NkNDVkYzhlZDU2NjFkMzk3MWNmMGRhNzYyZDA3MGEwZGIgcHkzay1zdHJ1bmkKKzU2MTI3IDQxNjc2ODBiM2FlMjRmM2Y2MmMxMDliYzRkZjZmMmViMzJiNjE0YzQgcDN5aworNTYxMjggYTg1ODJlMjU3NDhiNzI5NTdmY2Q0N2QyOWRhMTQzYmY0MmU2YjYzMSBweTNrLXN0cnVuaQorNTYxMjkgZGE0Y2M2NzY3M2E4NTFiNjg5NjExN2MyOWEwNDAwMjkyZWFhMzM0ZCBsZWdhY3ktdHJ1bmsKKzU2MTMwIGM3NmE5NDMyMmNjYzg4Y2ZjNDQxOTdhZmJkZjUyNjc4ZWI4ZTE4YTAgcmVsZWFzZTI1LW1haW50Cis1NjEzNCA3OGJjMDc4YzczNTBlMmY5ZmY2MjFhZjQzMzYwZTE2MGYzMWFkODg2IHB5M2stc3RydW5pCis1NjEzNSA4Mzc1MzU5OTQyMGRjOTM4YjJjYjVlMDUxNDc0MGQxNTEwYWQ5ZGNmIHAzeWsKKzU2MTM2IDI4OTljZjhjYTU3MjVmMGEwNDE5OWQyOGFlNmIzZDliZTMyYzUwMGEgcDN5aworNTYxMzcgZGNjZjE0ZmUwMGVjZDNjYzFlNjQ3YWUxMjMxMGQ3MjkzMjBmNmFjMCBsZWdhY3ktdHJ1bmsKKzU2MTM4IDkwODU4MGI5YzhlMTBiZjJiNDMzY2JlOWZjNGNjMTBlYzdmNzBjODEgcmVsZWFzZTI1LW1haW50Cis1NjEzOSBmNTM1NzEyNGNlZmU1NDIxMmQyMDQyZGQ1NzNhZGJjN2NiMmQ1ODU3IHAzeWsKKzU2MTQwIDFmN2I2NmE5ZmZiMGQyNzJiMTdiMGQ5ZDYwOTBhYjdkODZhODEzODAgcHkzay1zdHJ1bmkKKzU2MTQxIGUzYmNiOTg0YjI0YzhlOWQ5MTlhNGVhNjY5YjdmMjE1NTkxYmUzOGYgYmNhbm5vbi1vYmpjYXAKKzU2MTQyIGQ0YzRmODljNzc3ZDQ1MzlhZGVlZWIzY2JjMDA4MDEyODk3MWMyZDYgcDN5aworNTYxNDMgNDA3ZDE3NGRiNmRlYzdmZjc3YTRhN2IwNjkzNDYzYjc0N2EyZDAxYiBsZWdhY3ktdHJ1bmsKKzU2MTQ0IGMzZWEyNzc5YzYzNThhNTI1MzVhMmNlNjQ2Mjc2N2JmOGMwNmEzZmMgcmVsZWFzZTI1LW1haW50Cis1NjE0NyA2MDRiZmE2M2MxMTM4OWZkYTkzYmFiN2RmMTQ0ZmU5OThlMDFiZTU3IHAzeWsKKzU2MTQ4IDIxMzc0MzY5Mzc1YzE2NTk4ZjcxMTViZmMzYzIwYmU4YmQ0NGM4N2QgY3B5X21lcmdlCis1NjE0OSBhYjc0YmRiZjZkYWFmZGI3ZTFjZjhmNzUxMDY3ZjdkMzhhZWM3M2FiIGNweV9tZXJnZQorNTYxNTAgZWIyZDUyNTg2MDE3NTg3OWZhZDU5NTY1ZjQyZmNjODAxMzY5ZjdlNyBjcHlfbWVyZ2UKKzU2MTUxIGZlYjI3NmMwODkxNzFjOGRmMjgzYTFkMWQ4YmVhNmJiNWJlN2M3ZTUgY3B5X21lcmdlCis1NjE1MiBjMmNjMTIwM2JkNjljOTZlZDk4MjNiM2FiYmUzOTJjNmE5ZjA0ZDg4IGNweV9tZXJnZQorNTYxNTMgODE3Y2JmZjlmYmViNGRiNDQ1ZWE0MjQ1MjQ4OTRiZjYyNTQwMzBmNCBjcHlfbWVyZ2UKKzU2MTU0IDhhMTdlNGM0MmEzNWZiOTY5YjlhN2U0NjRmNWIwNDg5ZWMwZmY1NzQgY3B5X21lcmdlCis1NjE1NSA1YjFlNzRmYzQyYjgxZmI1MDZjMTU0NTM3OTA5YTFjZDQwZjljMGEyIHAzeWsKKzU2MTU3IGE1M2U0OGJlNmRmOTU1MmM2MmZkNjEzMDQ3YzFjNjdjOTcxZDQ1OTAgcHkzay1zdHJ1bmkKKzU2MTU4IDBkYzYyNjQ3YWZmMGNjZGM3OTU0MWJiNDlhNjk3MWQ4MjkwYjZlOTQgcHkzay1zdHJ1bmkKKzU2MTU5IGFlODcwMjI4ZDVmMzM0ZTM5MTcyNzU2M2RhYzk4ZWNkYzA2OGFiMTMgcHkzay1zdHJ1bmkKKzU2MTYwIDMxZjQ3N2IwODhjOWY2MjNiYmZhMWUzMWMyZTAzYzMzMDNmNTFjMzAgY3B5X21lcmdlCis1NjE2MSA4ZWVhYTk5MjM5MDFmMzg4NDUyMjA5NzdmZGViNzExNzM1ZTlmMzU5IHB5M2stc3RydW5pCis1NjE2MiAwMTAyZjVlNTM3MDM5ZjYyNjg2NDY3N2Y4ZWUyMGU5N2NlNDNmNzcyIHB5M2stc3RydW5pCis1NjE2NCA1MTg3ZWQ2OGFiZTBiOGQzZTNlNzFhMWFkZDQ0ZTM2ODI3NWFiZDY3IHB5M2stc3RydW5pCis1NjE2NSA4YTk0Y2U1MDIyMDliMDk1NWE0MWViNjI3NTE4NWQyNDExZmFjY2MyIHB5M2stc3RydW5pCis1NjE2NiBlNDc2OTk3MDQ4YTBhYjUxM2Q1N2YyMjFlZWEwMTJhYzBlODBhYzMyIHB5M2stc3RydW5pCis1NjE2NyBlNmM1ZmZhNmRjNjczODE0ZWZjOTQ4ZDgyOThkOWVhNDAxOWNlNmE0IHB5M2stc3RydW5pCis1NjE2OCA0MGE2YjkzZjllMGJlOGExMTZkYzZmNmE4YzliMWMxNGY2ZTEyNzBjIHB5M2stc3RydW5pCis1NjE2OSAzZjc4Mjc4MTAyMGJlMjJmOTUxYjMyY2Y0MmQ2YTA4MjE0NzZmY2U2IGNweV9tZXJnZQorNTYxNzAgYjBlYWJhOGI5ZjAyOTM1NjIzM2FlMWI3NzJiZDhmYTlhN2I0MjA3MCBsZWdhY3ktdHJ1bmsKKzU2MTczIDc5NmM3OTYyMzkzODM2NzUxYzk2MjBjZDEyNGMyYTU4Y2M0NjAxYzAgY3B5X21lcmdlCis1NjE3NCA4YjJmZWJmZGE1Zjk5YTM5ZWU3NjNhZGYzMWUwZmU4OTZiNDE4YTllIGNweV9tZXJnZQorNTYxNzUgYzQwNDRlNDdmYzFhZmVkMGU3NGY1OWZiZDRhOGQyNWI3MzBkMmQ0NSBjcHlfbWVyZ2UKKzU2MTc2IDllNWEzOTYwOWEyMDhkZDFlZDBhNDllZGY0ZGU3MDJkMjAyYjlhZGEgbGVnYWN5LXRydW5rCis1NjE3NyBkNjM2MmVkNTQ4YjBiMTcwZGM1MjNiOWZiMDMwZTk1YjAwZWJjMjNkIGxlZ2FjeS10cnVuaworNTYxODEgNzIyNGU0MjA4MWJkMzgxYmI5ODhhYzYwYjU5NDY5OTAxNWI3MTQwYSBjcHlfbWVyZ2UKKzU2MTgyIGRkODk2MDUxMjZlNTg1Y2RmZDFkN2QwNjg4ZDRiOGZjNDk0OTgxNTAgY3B5X21lcmdlCis1NjE4MyBkYmM3NTNjMDIwMDczNjJkZTcwNThjODJhYTJjZDQxZGQzZDcxMjc1IGNweV9tZXJnZQorNTYxODQgOWMwOGQ5MTY5YzFjZDQ0OTIxNDExMzEzMTEzMWMxNzgzZTc1ZjFiOSBjcHlfbWVyZ2UKKzU2MTg1IDM3NDEzZjYyMTEyMGEyOGIwNDc1Yjk2MDg5N2Q0ZDZkNDM4ZmY0MmQgY3B5X21lcmdlCis1NjE4NiAwNGUyNGI3OTIxOGFmMjg5MWQ4MjhkN2Q5NGQ0NmZlZTk5NjQ2MTBlIGNweV9tZXJnZQorNTYxOTMgZTYyZTJiODExMzZhMjJkOTY3ZmE0NzJjZDQyOGIyZGY1ZmMyOTMyNiBjcHlfbWVyZ2UKKzU2MTk0IGIyZmZjMDI4NTg1ZmIyZDBmYTg0OTQxZWY5YzQ5YTAyZTEyYjMyZjEgY3B5X21lcmdlCis1NjE5NSA0ZmE2ODM4N2I2YjM1OWU5YzA1MGU2MmQ3ZTE1ODc1MjA5MzYzYmQyIGNweV9tZXJnZQorNTYxOTYgYWEzMGIyYjA1OThlNDgwN2NiYjQ5NWRjZDViN2I4MjljNTcxMDI5OSBjcHlfbWVyZ2UKKzU2MjAyIDUzN2ZlOGRiODMzNDk4OWQwMzExNzk3NGZiNjJmMmNjMDI5NzliMWEgcDN5aworNTYyMDMgNzRkMTFkNDQyODk4NWNhODY0ZDA5Y2U4YTQzMTg2MGFmZTBiYjAzNCByZWxlYXNlMjUtbWFpbnQKKzU2MjA0IDc4MmY0YjNlNGRiMDhlMzYwZDJhMGMyZjllNWEzNjE3NzEwMTRlNTEgbGVnYWN5LXRydW5rCis1NjIwNSAyNjM4Yjk3NDkzNzE0N2I4ODE5YzZhNGNmOWZmNGIyYmJmMDA5MDMxIHJlbGVhc2UyNS1tYWludAorNTYyMDYgZWM0YjczY2IyNDQzOTQ3NjcxYjE3M2Q0OGI4NzcxYzIyOTYwMTI1MCByZWxlYXNlMjUtbWFpbnQKKzU2MjA3IGQ4OWQ5MDBjNWQ3ODJkNmYwNDFhMjIwMDgyYjFmMmZiZjIyNTE4ZWEgbGVnYWN5LXRydW5rCis1NjIwOCBiZjIyMmViZmYwZTU0NzQzYzVjNGI3YzY2YWNmYThmZGRiODU3NWYwIHB5M2stc3RydW5pCis1NjIwOSAwZWI4NDBmMmRhZmE5ZDlhMjE5ZThjNWEwZGJhMjA1NDg1OWQwZWRhIHB5M2stc3RydW5pCis1NjIxMCBhNjJlY2NiNTNmMzAxYmIzMWI0ZmJmOTZkOTNmODU4ODJiYWYyYWIwIHB5M2stc3RydW5pCis1NjIxMSBiZmY5ZWJhYmZjMTU1OTM5YzQ1MjdlYWQ4NjIxYTM1YmU2N2U4OTJjIHB5M2stc3RydW5pCis1NjIxMyAxNmU4M2JmODFkZTk4ODllYjhjZDAyYjE5MWVjOWRhMTIzOThiMmRmIHB5M2stc3RydW5pCis1NjIxNSBkZmI4ODU4YzA2NjQwZGRlNDZmZjJhZWY3ZjJmZTIzNDYxOWIwZmM0IHB5M2stc3RydW5pCis1NjIxNiA3ODIwMzI5OGI0MmI3OTQ0YjViYWNmOWVlYmFjYTZiYTFmMzE4ZmUxIHB5M2stc3RydW5pCis1NjIxNyAyOWJhNmMzOTkwOTAxZGU2OTA0ZGM1NzBjNjcyNjIxMGY1OGQwY2Y0IHB5M2stc3RydW5pCis1NjIxOCA2YjMwYmQxMzBkYzE3ZDhjMGU3ZDM0NDQwZDU5ZmRkYmYxZjlhMzg1IGNweV9tZXJnZQorNTYyMTkgZjRiOTkxOTU2NjJmZGViNWY4OTkxN2EyM2ZiNzI0YmI1MGVmYTE2YiBjcHlfbWVyZ2UKKzU2MjIwIDMzNTA2ZDEzZGQ3OTBkZGI4Yzk4NzQ1YjAzYjk0Y2FhMTc2Yjc5MTkgY3B5X21lcmdlCis1NjIyMSBkOWQ0ODJkMDM4ZDVkYjIxZDk4NTdmYzQ1ZDFlNjFiNmI1YjYxZGJiIGNweV9tZXJnZQorNTYyMjIgNDAyYTA2ZWNjNjEzMTA2ZjI5MTc0ODNkNGI1YTg5NzAxOGI5MDVmZiBjcHlfbWVyZ2UKKzU2MjI1IGYwOTc5YTg2NjcwZjQ3Yzc4ZDNkZTQxMWI0MzA5OTI4ODYyM2Q1MmMgcHkzay1zdHJ1bmkKKzU2MjI2IGUzODA0NzU1MDM4MzRiNjhjMmI0MWIzMDVkMWEyYzIwNzExMTQ1ZDkgcHkzay1zdHJ1bmkKKzU2MjMwIGFjZDFmNjQyNzA2ZjJjNzc3ODlhNDQ5MDFmOWE5MzY0ODYxZjU1NGUgcHkzay1zdHJ1bmkKKzU2MjMxIDlkMGQ4Y2FlMWNjNzNhZmIyMjU5ODhmN2JmZDk4M2YyZWFiYjYzY2MgcHkzay1zdHJ1bmkKKzU2MjMyIDNkYjAwODNmNjY4MzdkMDEyZDg2MGQ2MTI3Yzg0NThiMDYxZThiOGIgcHkzay1zdHJ1bmkKKzU2MjMzIDkxYWRlNjdhYjIzMGRjNTBjZmY4YTllZTk2ZDVkZmZmNzRmNzMxNDAgcHkzay1zdHJ1bmkKKzU2MjM0IGYwYTk2MTNmY2Q5MzNiYWNjNDU5NzUwYWE4YTEyY2U5MDgwNzdjM2UgcHkzay1zdHJ1bmkKKzU2MjM1IDhjZmRhZDIwNDY3NjM3OTcxZjhjZDU3N2JkNjY1ODAyNzI3N2NhMDIgcHkzay1zdHJ1bmkKKzU2MjM2IGRkYjkxOWRjYjQ4MjBmZjA1MjJiZmQyMDVlMTU1OWI5NTMwODc4NDQgcHkzay1zdHJ1bmkKKzU2MjM3IDhkNGI2OWUzMTU4MWJkNGQ4MTIyNmQ3MTdmMTRhODYyZTY4NGU0YWUgcHkzay1zdHJ1bmkKKzU2MjM4IGIyZGMzMTcxOGIwM2YyNjQwN2RmZDU3ZGY3MDI2ZjkyMjU2MTE0ZjEgcHkzay1zdHJ1bmkKKzU2MjM5IGY0YTFiNzZhNWE2M2QzYWE0ZDZhNDMzYTdjMzc4NTIxOTFiMWMxM2UgcHkzay1zdHJ1bmkKKzU2MjQwIDU2MjE1MDcxYzc0MmU3YjUwOWNjN2I0NmQxNjYyYmM5NjljNDE0ZTkgY3B5X21lcmdlCis1NjI0MyA5Zjk5ZWE0ZjgxZTkyZmM5MDU5NmI0MTk3YTcxY2NiODNjNTAyNWJhIHB5M2stc3RydW5pCis1NjI0NCAzNjQxYTIwNjMwZjNjOGM5MzhmMzY1MTM5Y2EyYTAwZGQ4MTgwOWNjIHB5M2stc3RydW5pCis1NjI0NSAwZTQ0NjA4MDNiNGE4MDkzNTQ3ZjI5ZDczNTFmMDA2NzlmNDk3OTRiIHB5M2stc3RydW5pCis1NjI1MCA4YjMxNjA3Y2FhMGNiMTg4OGY3N2ZkZWNiODczZGVlN2EzYmYwNDZlIHB5M2stc3RydW5pCis1NjI1MSA5YjM4NjYwNDIxZWU5YjlmZDQ1MTMwNzY1MGY1MzUzYjA5N2YxOWNhIHAzeWsKKzU2MjUyIGJmNWQwNGUwZGE0Yzc1MjI0ZDJjMzJhNmMyZTQwYjlmYjc3NDU1N2EgcHkzay1zdHJ1bmkKKzU2MjUzIDYyMjgwNjI5MDlmMzQ3ZGIwNzcyYTJlNDAwMTliNDBlNWY3NmVmY2IgcHkzay1zdHJ1bmkKKzU2MjU0IDc0N2IxNTE5YTM2Y2RmZTA2ZmVmN2NkMzk3MTM5ZmQxM2Y2ODljZDAgcHkzay1zdHJ1bmkKKzU2MjU1IDFkY2YxZjEwODYyYzAyMjA1YmQ1Y2Y0NTE2OWMwNTEyMmYzNzY0ZWQgcDN5aworNTYyNTYgZTliZmIyNGY5NmUwNjNkNTA0YTU3OGFlZDNhNGQyNTQwM2YwYzQ5ZSBwM3lrCis1NjI1NyA5MGZjZDA4MmRhMGRjYWNlODdjNWZjZDNkNDI3NmM1N2EzOWQ5MjQ3IHB5M2stc3RydW5pCis1NjI1OCA4MTkzMGVhYWU3MTU4ZmEzMDhiM2IzYTkxNzRhMTgyOGEyMWU0MmVlIHB5M2stc3RydW5pCis1NjI1OSBlODQwYTRjZmI0MWY2ZTg3NjEzMDE3MWNiMzdiOTk1ZmFjMjhhNzQyIHB5M2stc3RydW5pCis1NjI2MCA5NjNmNTBlZDJiNGY4YmM3MWI3OGI0NjcwNmI2ZWVjZDgzNDE2MDRiIHB5M2stc3RydW5pCis1NjI2MSBjNmE4YTdkZjM3ZWY2NWNkMzkwMDk5MDhjNDBkN2JmMDc2NGU1MTZkIHB5M2stc3RydW5pCis1NjI2MyA3OTA4MmNjMTRiZjE0NGIyNGEwOTk3YTZlN2JmZDFmZDU0MGUzZjQ4IHAzeWsKKzU2MjY0IDFhYzJjMWI4MDMyNDA1NGEwOGY0MjYzMWE3M2NiZWM3MmEyZjJiODUgcHkzay1zdHJ1bmkKKzU2MjY2IDA5MDU4OGExNzQ5MDMzYmQyZjUzMWQ1YzgyY2I3ODdkNTUwNGFhNWYgcHkzay1zdHJ1bmkKKzU2MjY3IDc1ZDNjYWE0NmE5MzZiMTBmNTMwOWYxMDhiMDZlYTA5ODA3Yzc4OGUgcDN5ay1ub3NsaWNlCis1NjI2OCBkZjQ3OTUwYzgzNzA4ZTliYzhjMTdjODZiNWMxZDk4NTAyOWNjYWQwIHB5M2stc3RydW5pCis1NjI2OSBiZDRlMzcyZjQ3OTg1NDA0Njc0ZDVlODg5ZTQ1ZTZlMTRiZmRiOGY5IHB5M2stc3RydW5pCis1NjI3MCBhMzU1MzU5ZTQ3YjQ1ODcxYTY2Y2ExNTZkMmExYzZkYzljODNmNWRhIHB5M2stc3RydW5pCis1NjI3MSA1YjM5MzFhZTI2MmZjN2RlMDc0ZGQyMGY3MTQ5ZjQ1ZjQxMTUyYjg2IHAzeWstbm9zbGljZQorNTYyNzIgYTgzOGI4YzY0MTAzNjNjOGZiNTQ0MDcyMWY2MjNjMzkzNjJhODE1MiBweTNrLXN0cnVuaQorNTYyNzMgNTE2ZGM3MjNjODllYmI2OTZjN2Q3ODUxNzBiNDk1MGQzYTNhYjAwYSBweTNrLXN0cnVuaQorNTYyNzQgM2JlZmI1YWRiMzRlYmU2Y2FlYmI2OTY2ZDc0Mjg4MWE4OTJlOTM2MSBwM3lrCis1NjI3OSBjMWE2MGI0YjgzZDM5YjI4ZDM1ZTQ3MjI3MzAwMmU2NzU1N2E1Y2FkIHB5M2stc3RydW5pCis1NjI4MCAwOWJmMzU3OTNiY2RkNTkzNjkzNjljZmI3ZjM5YWM1MmRlY2JhOWQ0IGxlZ2FjeS10cnVuaworNTYyODEgN2EyNGZlNzBjMTZkYmI0ZGY2MzAxYTY3MDQ2Y2IwYzQ5MDAyYmY5ZiByZWxlYXNlMjUtbWFpbnQKKzU2MjgyIDg1NGNjNGQ1YTMzZDhhZmRjN2NkYjNhZmRlMjZlNmM3NjEyZWJkNTMgcHkzay1zdHJ1bmkKKzU2MjgzIGJiYzA5NGMzMjhlZmQ5MWQ4ZTY4NDE0Zjg4MGVlZDZiOGM4YzBiMzUgcHkzay1zdHJ1bmkKKzU2Mjg0IGU1Y2NmZWIxMWNkNjcxMTk5MTQwYjQwMzE4OWMzYzNkM2M1NTFlMjggcHkzay1zdHJ1bmkKKzU2Mjg1IDliNzJmMDYzNjk4NjRhMDNiYTliZjJjZDBhZjBkOWVjMDA1ZjdiNmMgcHkzay1zdHJ1bmkKKzU2Mjg2IGQxYzdjMjU0MzkwM2I4ZDcyNWY4YWY0ODc1OTNiN2E0YTE4NzFhYjggcHkzay1zdHJ1bmkKKzU2Mjg3IDdjNmE3OTViNTI1YWNmNDhmMGMzYmU4YzE4ZmM0MDA5Y2M2OTM5MDEgcHkzay1zdHJ1bmkKKzU2Mjg4IGNhM2NmYjM0ZTNjMjYzNTk3NWQ1MWNlMTg4NmE4ZTM3MjcxMmU1YWYgcHkzay1zdHJ1bmkKKzU2Mjg5IDIzZjFkMmMzNmQxMmNmMzg1MmUzOGI1NDg5NzBiOWY5N2FmZmQyYzQgcDN5ay1ub3NsaWNlCis1NjI5MCBhNWMyMzQyMmFmNmM2OGJhNWZmNGU2Y2E0NDM1MGU4MzdhYjA1YTkwIHB5M2stc3RydW5pCis1NjI5MSBjYTA2NWI1MWE2MTY2ZDU3M2ZhMDE4N2NlYjc2MGYxMDQ3MWM2NjhhIHAzeWstbm9zbGljZQorNTYyOTIgZDVjZjE5MTY5OTA0NjI3M2I3MDI3YjExN2VjM2Y1ODg5NmMxNTU5YSBweTNrLXN0cnVuaQorNTYyOTMgMjU1YmQ0M2NhNzhmNzkzNzlmNjJhNDgwNGU1ZTM2YTM0NGRlNzdlNyBsZWdhY3ktdHJ1bmsKKzU2Mjk0IDIzYWM4ZDE0MGE4YTJlOTVjNDg3OWRkZGRkMzI2ZDdlNmZhOGYxNDYgcmVsZWFzZTI1LW1haW50Cis1NjI5NSAxOTZlNWM2MzIzYTM2YjhmZWIyOTk2MDUyM2UzYTlmNzlkYTU5Mjc3IHB5M2stc3RydW5pCis1NjI5NiA2MzE5YWRiMDA0MWQ2ZWVmZWMyMGJjYzYyZjNkMGU0NmZiYTBmYWM3IGxlZ2FjeS10cnVuaworNTYyOTcgOGI4MTU4MGFkMGMxMDYwNzRlYTY3ZDViM2Q3ODM4NjUyODIxOTNlMSByZWxlYXNlMjUtbWFpbnQKKzU2Mjk4IDg2ZDFkYmZjNTgzMzFiNjIwNTMzYmQ0MmRmMjA1NmZiOTRmNTMyNTAgbGVnYWN5LXRydW5rCis1NjI5OSBiNDNlNWYzMzQ4YWVhOTUyYWM0YzkyNGJmNWZiN2JiNWY3YWU1YjU3IHJlbGVhc2UyNS1tYWludAorNTYzMDAgMjkzYjgzZjlkYTlmZGRlNjc2ZGU5NGFhNjVkZDQzNjRmOTQ5M2U3NCBwM3lrLW5vc2xpY2UKKzU2MzAxIDdjMzc4NGJiZmMwOWFlOGJiMDcxM2I4YzIyM2I5ZDM0ODQyYjE5MTQgcHkzay1zdHJ1bmkKKzU2MzAyIDI0OGEyMDY5OTBhZTA5YjliZWQxZDlkOGYzNzQ4MzIzYjJmNTEwZmUgbGVnYWN5LXRydW5rCis1NjMwMyAxMGU5YzkwZWFmMDNlNmRmYzkzNzhjN2IyY2I3OGVmMTg2YTQ2OTBmIHJlbGVhc2UyNS1tYWludAorNTYzMDQgMmMzM2RmMDljMWM3MWY1OGQyMTM2YjcyMTg2MjQwNGEyNWQ3NjRiYSBsZWdhY3ktdHJ1bmsKKzU2MzA1IGMyNTVjMTBkYWM2YTY5MWViNjU0YzI0ZGYyNWZlMjExNjYwMmYxYjYgcHkzay1zdHJ1bmkKKzU2MzA2IDRjNDljZDY1YjVmMTcwNTJjY2E5MzI0ZWM1MDk3MjUwNDg2NzQzMmQgbGVnYWN5LXRydW5rCis1NjMwNyAyYWYzZjA2N2E0MzEwMmRjYjNhNTUwNzA2YjY3ZDYxZjE2ZTAzZTI5IHJlbGVhc2UyNS1tYWludAorNTYzMDggMzQzYjYwYjYwNGJkOTNkMGU2NjE4MGFlZmU3ZTA5NzU4Y2JmMzEzYiBsZWdhY3ktdHJ1bmsKKzU2MzA5IDcyYzU4MzM4YjIyYjYzOWI4OTk2ZmY0YzU5MGQ5Njc5NTU5YWIxOWEgcHkzay1zdHJ1bmkKKzU2MzEwIGVjNzQwODRhOGNiYTBhMDdhMTAxYTc2ZTY3ODRmN2ZmODUwN2Q0MDMgcHkzay1zdHJ1bmkKKzU2MzExIDZjYjllZmI1Y2JlNWJlODc2ODcyMzU1ZjJhOWU4MDkzNGYzMTk5NWQgcHkzay1zdHJ1bmkKKzU2MzEyIDNlMDZmMmI5MDEwMjY0MTJkZmZmODcwOGE2ZjRmZjc4ZTA5MTlhYzEgcHkzay1zdHJ1bmkKKzU2MzEzIDNmZDM1NTNlMjU4ODU0ZWEzODM3OWE3YmMxZDA2NGFjZmRlODdmNDIgcHkzay1zdHJ1bmkKKzU2MzE0IDU4NjYxYTgyMzM4ZTgyY2YxMDJlMzE2ZTAxNzhlYjdjYjIyYjMwOTMgcHkzay1zdHJ1bmkKKzU2MzE1IGU3MTVlMjA4MTYzNzFhMTQ3ZWU1ZmRiMGJjYTE3MTJjOGIwMGJhODcgcHkzay1zdHJ1bmkKKzU2MzE2IDBiODk3NzQxMWIwN2I0ZTY4ODI1ODc2MDE4MjY5NjBiOTUyODcyOWMgcHkzay1zdHJ1bmkKKzU2MzE3IDg0YTIxNzU3OWFlNTlkNTM4NDhjZGJlMTlkMWUwZmI1YTdhNDg5ZWUgcHkzay1zdHJ1bmkKKzU2MzE4IDg0MjI5YTkwNjZlMmY4NjYwMGI1MmE0Y2NiYTJkY2QwNDY2ZDkyODcgcHkzay1zdHJ1bmkKKzU2MzE5IDA2ODEyMzMzNDRkOTNmZDBkZTllNWUzNDYxYzgxNjA1NGUxMTdiNjcgcHkzay1zdHJ1bmkKKzU2MzIyIGI0NWMwZjQ0NDgxMzFkY2NiMjNkNTgxN2ZlMWY0ZTlkMTk1ZTYyZTIgcDN5aworNTYzMjMgMmFjYzYzNTlkMDVkNDA1NWQ2MmU2ZDA4M2VmOWQzNWIyNmRjMTg0MSBwM3lrCis1NjMyNCA0OGM1YTg0OWEwYzJmY2VmYTVhN2RlMzEwYTY2ODI3MTY5NzdiOTg3IHB5M2stc3RydW5pCis1NjMyNSA3Mzg0NmY5NjI5YzU2N2ViYWZhMGViMDBhYjFjYmQwYzk3Yjk4MDIwIHB5M2stc3RydW5pCis1NjMyNiA0ODRhMDA5NmJhZTkwZjY2MTlhZmM2OTE2YjNmZjlmZjA2MmZiNWUyIHB5M2stc3RydW5pCis1NjMyNyAwNDk0YWU3MzUwNTgyYjU4MThkMDk2MWE1ZmMwNTRlOGE4Nzg4MmJhIHAzeWsKKzU2MzI4IGZiYWUwMTJmZjI5NWRjYWY3YmI0MDA0YzVkNzUzNWMzNGFiODM5ZGEgcHkzay1zdHJ1bmkKKzU2MzI5IDc2OWU3MDc4YTJhYTdmMjRkOWU5OGY0NDQwM2RkM2Y5YTAwZWJkY2UgcHkzay1zdHJ1bmkKKzU2MzMwIDdjYzg0OTZmMjM0ODBjMDZiZGYzYThjYjI0MDAxODcxZDZhODA2NmYgcHkzay1zdHJ1bmkKKzU2MzMxIDJmZDE0Njk3MjNhMDcwMmViMDllZDY1NjFmNjcwMDNiYjliOWE4M2YgcHkzay1zdHJ1bmkKKzU2MzMyIGFmZTg3MTU0N2IxYTM5MGYyMmIyYTdmYzExMzI0ODIyYThlZTIxOWMgcHkzay1zdHJ1bmkKKzU2MzMzIDEwZGU2YTkxZGE0ZGExOTBjYWJmNTc0ODNjNWMwMzYxMmQ2NTU4NmUgcHkzay1zdHJ1bmkKKzU2MzM0IDZhMDk3NzcyZWE4NmI1YTQwMTc1ODc4MTgxNWZlMmFiZjNjYjcyYmMgcHkzay1zdHJ1bmkKKzU2MzM1IDZlNjVmMDhmMTI3NjI4NjIxY2UxNmI2ODlkYWViODliZWFmZDRiZTUgcHkzay1zdHJ1bmkKKzU2MzM2IDFjMzc5MGM4MzFmYzE2NTU2YWYxMGU3YmFjYTc4ZGMzNjRiNzU3MGIgcHkzay1zdHJ1bmkKKzU2MzM3IDhlYWYwM2ZjM2YxMjk1ZDYxNDJjOGEwMjRmMTBiODE1ZTU5NDEyODkgcHkzay1zdHJ1bmkKKzU2MzM4IDIyZDY1ODRiODcxMjZjOGZiODk5MzgzODM1MGI5MGIwYzk5ZWJiZDIgcHkzay1zdHJ1bmkKKzU2MzM5IDVkMTZmNDc4NDY1YTUzNTU4ZjI2ZGQwMjZmZjlkNDY3MGNiYWJkZDAgcDN5aworNTYzNDAgMGMwZDc1MGVlNzVlNGMyNTIxZjZhOGQzNTY2NjNlODc0ZWExNGFlNSBsZWdhY3ktdHJ1bmsKKzU2MzQxIDdiYzQ3MjNmNTYyZmFjZTExZGM5NzA3YmU5ODQ3ZjcyMjQ5ZGIyMzIgcHkzay1zdHJ1bmkKKzU2MzQyIDA5ODAwMzRhZGFhNzIyYjQ2NDg1MzNkNjgzZWQ4M2NmMTNmNGY3Y2UgcHkzay1zdHJ1bmkKKzU2MzQzIDY5M2JlMjdmNjI2ZmJiYTk2Y2ExODJmNTUzNmQ2ZTMzYjQ2MTM2ZjUgcHkzay1zdHJ1bmkKKzU2MzQ0IDE3YmIzOTgwNDgzZWNmYmQyMDYxY2FmZDE2M2QxNDBhZmEzNzU0ZDUgcHkzay1zdHJ1bmkKKzU2MzQ1IDEwODlhNGY1N2QyMDk1YjlmYmQ1Y2EzZGExMTUyY2E3MDg4NzE0MjQgbGVnYWN5LXRydW5rCis1NjM0NiBjMjgwNjQ3YzMzMGNmMmFhZDkyNDc2Mzc0NjVkNGY0YzZhZmE2NWQ4IHB5M2stc3RydW5pCis1NjM0NyA3YzFjOTAyZDcwMDAzMTJkMWQ4OTA0MjQ5YzNkZTU1Zjc2ZTQ4Mjc4IHB5M2stc3RydW5pCis1NjM0OCA3NjAyMWJiYjg5YzczODM3NmNiMzlhYTdkNzljNDdhMzFjODk4NmU4IGxlZ2FjeS10cnVuaworNTYzNDkgY2I4NjVlMzk5ZTg0YzY1YTk4MTJlMzQ4YjY3ZmFiZGIzODEwY2IzOCBsZWdhY3ktdHJ1bmsKKzU2MzUwIGFlYWQxMzZjYTQ5ZTI5OTU3ODk3MWI5ZjIyNzBiNDcxMzZmZDk0MWEgbGVnYWN5LXRydW5rCis1NjM1MSAwZDYyY2RkMzU1N2Q1YWRmODZmNzQxNTk4NjEwNWZmMGQ4YWVjYWVkIHJlbGVhc2UyNS1tYWludAorNTYzNTIgYjZlYWE2OTE2ODg0Y2RjZjFmODJmNDNmOGUzYzRiN2I0OWQzNzU1YSBsZWdhY3ktdHJ1bmsKKzU2MzUzIGYzMzY1OGRhMDYzNzU0NjJiNzBiNjdmMGU5NWQ3ZjVlZDllODYwNjMgcmVsZWFzZTI1LW1haW50Cis1NjM1NCAzZjg3OWQ3MjZkMTg5ODE0YzAxNDgyNGMyYWE0YzhjZjY0MzNhNzg0IHJlbGVhc2UyNS1tYWludAorNTYzNTUgZjhjNzVlODQ5OTU2MDk0NjUwNjY3ZDE4MDM4ODg5MWM4ZTE4OWQ3NiBsZWdhY3ktdHJ1bmsKKzU2MzU2IGYwMWFhM2QxOGM5ZDNhYzAwNmQxM2ViNmExMmZkZmIxYmQwMWU3MTEgcHkzay1zdHJ1bmkKKzU2MzU3IDRjZjA0NTk0MTA4NTQ1MGQyMTg4NjYwMjlmZTM3NGRhY2YxMGNkN2IgbGVnYWN5LXRydW5rCis1NjM1OCA1OTllYTllNWM2YzVkOGU5YTM2NTg2ZGNhOWZkYTE5OThkMjExYTFiIHJlbGVhc2UyNS1tYWludAorNTYzNTkgZDhiZjQyNjcyMzMwNTZkNWEzN2Y1ODI4YzNhOWQxMjY5YWNhYzg1ZiByZWxlYXNlMjUtbWFpbnQKKzU2MzYwIGMyOWIwZGJkYTNmNmFkZjhhMjI0YzI4YjU3ZTRiMmRhMDk0ZjJkZjEgbGVnYWN5LXRydW5rCis1NjM2MSAwYmZmNGI2YjkyYmUyYjczZmZhMzljZGQ2NzczOTUxNDE0NzQ2NjRjIHAzeWsKKzU2MzYyIDYxNDEyZTI1ZTYxZTMwZDFjYWRhNDczYzQyZjYzZjJkMDIwZTNlODQgcDN5aworNTYzNjMgMjAyYzM3ODM1NjI4YjkxNWFkNGVhZGJlMTQzNjExMWIwZTgwZTczZCByZWxlYXNlMjUtbWFpbnQKKzU2MzY0IDhjYzY1MDdiMDYyNmJiNGUxMGQzODliODkyYjc5NTU3MTBmMmUzYzkgbGVnYWN5LXRydW5rCis1NjM2NSBkYTJmODk0OGNjMThkMjA4YWE4MTRkOWRjZjc1NzY2MmIxNzJiODAxIHJlbGVhc2UyNS1tYWludAorNTYzNjYgNjk3YzBhNzhkOGM5MDA1ZDlkZjAxZDVlYmQxY2U4YTgwYWJlMzExZiBsZWdhY3ktdHJ1bmsKKzU2MzY3IDg1ZDRhMDJkMGFiYjBjNjc0MTdhNDNlZmEzMTU1M2MyOTc5YjJjNjkgcmVsZWFzZTI1LW1haW50Cis1NjM3NSBjZjg5MGU0MWFjMTM1MWY1NDNhNGI0OTBhZjQwNmFhZmRjZWEyNDEyIHB5M2stc3RydW5pCis1NjM3NiA1MDY2YjAwMjViZjA4NjUwMWM5YWMxNGZhOWNkYjE0YWI3ODRkMzVlIHAzeWsKKzU2Mzc3IGE1YTNkZjQ5YWNmMzAyOWU0MmJmM2ZlNWQ0MGI2MDYzNTRkMzFlZTcgcDN5aworNTYzNzggMmQyMjUwNDI4MzA1NzM4OTU2MThlZjc4MTQ4ZjJhODI1NDAwZTk0MSBjcHlfbWVyZ2UKKzU2Mzc5IDA5Y2QzZTUwMzIzNWU2NWM2ZWExZjkzZTg4N2I4NmNjNzJkZTg0ODYgY3B5X21lcmdlCis1NjM4MCBhNWU4ZGQ1OTk2MGRkZDk5ZDE1ZTFkMDhiNDE1NjMyNTZmYzVjMTZmIGxlZ2FjeS10cnVuaworNTYzODEgNDVjN2Q0NzM1ZGEzNmMyM2ZmMTQ5YmRhOTk2ZjE5ODQ1ZDc2ZDRlOSByZWxlYXNlMjUtbWFpbnQKKzU2MzgyIDhhZjA3ZTExZjE5N2UyNjEzNGRhMWFkZDNkYjVlYjZhNmFjMjg1ZTMgbGVnYWN5LXRydW5rCis1NjM4MyBkYWFlMjdmYmI4MTY2ZWRlMWQ4ZjU3ZDFlZGI4OGQ4OGJjNDc4MThkIHJlbGVhc2UyNS1tYWludAorNTYzOTIgYzIzZDhjMjdkYzkyMjIzODUwNzBiNzEwNTM1M2NmNTNmNjM1ODZhZSBsZWdhY3ktdHJ1bmsKKzU2Mzk1IDE4ZTVhZTkxYmQyOTc5ZTAyZDI2MTlkMjMyOGJhYmUxYzJiYjg3NzEgcHkzay1zdHJ1bmkKKzU2Mzk2IGViZTk2MGQxZDYyN2VlZDZjZmNiOTMyODdiZTEzMGFiYTljMWJjODIgcHkzay1zdHJ1bmkKKzU2Mzk3IGY3MTViYWNkZmQwMGYzM2JhY2Q1ZDFmNjRlYzMzMmUyNmFmNzcyNjEgcHkzay1zdHJ1bmkKKzU2Mzk4IDE5MTk5OWJlNmNmNThlZmE2ODIyZGQwOWNiZjAzYjM2NTJjZmU1MzkgcHkzay1zdHJ1bmkKKzU2Mzk5IDVhZTc3NGNjMjZlYmRkNzA3Njk3MDBjOWY5NjczNzlmNzViNmIwNTQgbGVnYWN5LXRydW5rCis1NjQwMCBkMDYyZjY3YzMyNjA0ZDQyMGU0ZDNiZjM1NjNlYzYzZTE5ZTY0ZDgyIHB5M2stc3RydW5pCis1NjQwMSBmNWI1ZGFjYjlhZTI5YmIxMmI0NzE5NjIyYzY5ZDkwYjQyNTk4NWJiIHB5M2stc3RydW5pCis1NjQwMiAzZjI0MjA5ZjI1MWUzYWQxMTNjNDY0MTY4MDdhYTY3MGZkNDkxNWEzIHB5M2stc3RydW5pCis1NjQwMyAzNzcyMTAzMjAwZWM4OWJjODhiYjNiMmYxYjY2N2ZjZTUwZWI2OTkzIHB5M2stc3RydW5pCis1NjQwNCA4NDc3ZmMzODhlZWFlZTNlOGYyNWE1MTFkYWJhODgzZTRiZjE1YmUzIHB5M2stc3RydW5pCis1NjQwNSBhOGQ0MzA4NWE4NTcwYjBjZTMzMWE2MDk1NzhmMjVkYjAyYzA4OTJjIHB5M2stc3RydW5pCis1NjQwNiA0NGJjNDlhMDdlNTI0OTU4ZTgyYThiOTk0NzhjNDE5YmY2MzY5OGVlIHB5M2stc3RydW5pCis1NjQwNyA1MzM3YzNhNGEyNzNkOTA3N2Q4YmU1MzcwNjVmZWE5YmM0NzAyM2Q4IHB5M2stc3RydW5pCis1NjQwOCBmNTFkM2JlNDM1ZGY2OGUzZDFkNTI1YjE0NjcyYzA1ODVmNWE2NmViIHB5M2stc3RydW5pCis1NjQwOSAwNThhYmY4NzhhZDRkZjk4ZmJjMzMwNmY3ZWVjYjkyMjdkNmJiNDA0IHB5M2stc3RydW5pCis1NjQxMCAzYmVhOGZhYzNhN2NmNmQ0M2Q2ZjQ0ZGJhYjlkMDkwZTM4ZDc3YWY4IHB5M2stc3RydW5pCis1NjQxMSBjNGFiM2VmNjE5NGY3MzcyMTQ3NzZlOWIxYjRhZDM1MTEzMjk2NjRkIHB5M2stc3RydW5pCis1NjQxMiBmNjU5MjE0NmM3ZmE2OGY3YTE1OTQxNzdmNDNiYjJhNDkzNWI0YmVkIGxlZ2FjeS10cnVuaworNTY0MTMgNTUwMTQxZmQ2N2MyM2RlODk1MzViNWQyOTIyNDBkNDFhNTUyOTk5ZiBwM3lrCis1NjQxNCBjOGU2MjQ1NzlhNGQ2M2U2YmQ2ZWVkMzVlOWUyNGY4ODgwZmY4ZmFkIGNweV9tZXJnZQorNTY0MTUgZjk0MGU0NzBlNTUwMjZlMTJkMzRkNzE0MzQwMGZmMjA3N2I0MzVmNCBweTNrLXN0cnVuaQorNTY0MTYgNjdiMDFiMDVhODFiNjIzNDg3ZmEyZjQ5ZmEwNWQ2MmU5YmJjNzdmOCBweTNrLXN0cnVuaQorNTY0MTcgYTMwOWNkYjdjYjMzMGQxMGFmMWY4YjkzZGY4YjkwNDNiMTk4ZDAyZCBweTNrLXN0cnVuaQorNTY0MTggN2QxNmI0MmZjZGJkZTJjYzUxM2ZjZGI0Mjc3NTZiYzlmMGNhZDM1MSBweTNrLXN0cnVuaQorNTY0MzggZDA3MTk0MDZiMmM2NTllN2RiNDM4OTYyYjZiNWJjNTRjNjBiYWU2YiBweTNrLXN0cnVuaQorNTY0MzkgN2NlZDNlODUxOWYxNDE4ODkxZDMwMzc3N2Y1ZDg1ZjE0OGY3MTZhZSBsZWdhY3ktdHJ1bmsKKzU2NDQwIDM1ZWI3MjIxNTYzMGFmMWFmZTRmYzFhMGFjMzk4Mzc1NTA0ZmE0ZGUgcHkzay1zdHJ1bmkKKzU2NDQxIDY3NzVlZTZkODlkM2Y5ZmRiMjk5N2ZhY2UxYzlmMmY0MjU1MmQ0ZjEgbGVnYWN5LXRydW5rCis1NjQ0MiAxNDk4MTViYTI4NGNjZGZkM2Q4YmIxY2NmNWM0MTZkYWU5YjgyYmIxIHAzeWsKKzU2NDQzIGJkNmFjZmRiNDdkMjVhNmNmZWMxZmFiMGEzZDkwYzE4ODI4NTMzNTAgcHkzay1zdHJ1bmkKKzU2NDQ0IDRjNjU4Mzc3YjkwODQ3NTQ5MTZlMGFmMTg5M2M0MTgzOTgyZDQzNzMgbGVnYWN5LXRydW5rCis1NjQ0NSBjMWU5ZWVlZGEzNGY5YmYyODNhOGZiNWEwYTYwMGEwNjM0NzQwMmI3IGNweV9tZXJnZQorNTY0NDYgMWFlNWYxMDJmZDNkNmUyNTE1ZmVmODU4ZGVmZWEwZDI4ODdlZDY3NiBweTNrLXN0cnVuaQorNTY0NDcgMDA3ZWQ2Y2RkMWY3YmM3NGJlOGQ5MzExZDIxOTUwMmRkZjI2NjllYSBweTNrLXN0cnVuaQorNTY0NDggMDg2NDJiZDFiZTE4NGFlMTJjMmUzN2ZkNjc4NmZjY2FhODNhNTU5NyBweTNrLXN0cnVuaQorNTY0NDkgZGZhY2I1MWQxMzg2MTYxMjE3OTVjMTMxMjgzODIwOWY1NmM3N2FmOSBweTNrLXN0cnVuaQorNTY0NTAgYmRjNjdkYzFhOTVlMmU0MDM0N2U5Yzg1ZGMwNTliMTlhYzk0NjhiMSBjcHlfbWVyZ2UKKzU2NDUxIGQwMWFlNjk4Y2I1ODM4Zjc1Y2I1MDc4YjZjYmQ2NGFlMzU2YzgzMzkgbGVnYWN5LXRydW5rCis1NjQ1MiAyOGFmOTYxMDM4ZGU4MjZhNTA3ZDY4NWFmOGE2Y2QyMTM3MWI4NDczIHJlbGVhc2UyNS1tYWludAorNTY0NTQgMzc5MDJlYTQxYTE3YjQzMmFkYjYwM2IwYTI0ZWJhZDU3ZjUxZjA5ZiBwM3lrCis1NjQ1NSA3Zjc2MGRiNGU3NDZiYWVmMThiMzU0ZGYwOTg1M2U2NTBmOWM1Nzg3IHAzeWsKKzU2NDU2IGMwMmEzMzc4OGE4ZjVlYmQzMjJmOTZlNWFjNWIzMzk2MzRmOTg4NWYgbGVnYWN5LXRydW5rCis1NjQ1NyAzZmI1OTY2NmIyODEwYTQxZDAyZTE2NjQ2Njk4NDgxM2NkNjRkYzNjIHAzeWsKKzU2NDYwIDQ5OTlhMDk0NzM0MzRhY2Q0M2U0NDBkOTZiMmM4ODZiMWFkOTE1ZjcgcHkzay1zdHJ1bmkKKzU2NDYxIGFjMzZmMDZhNjEyYjgwZTBiMTE0NWEzNzkyZTliNGVmZTU3NmE4MmYgcHkzay1zdHJ1bmkKKzU2NDYyIDYzOTU1ZTNjZjk5M2I2MTk1MzIxMGM4NDBhMWUxMTM3YzI2OWM5NDkgcHkzay1zdHJ1bmkKKzU2NDYzIDhjNGEzMzA3OWNhNjAwZDg3MmI2NDYyNzljZjc5MDRjODk2ZWFhM2IgbGVnYWN5LXRydW5rCis1NjQ2NCAzZTMzMjE1YzY2ZWRlOGZmMmM1Njc0YjdhN2IxYWNkMTA2MWYzNjNkIHB5M2stc3RydW5pCis1NjQ2NSAxMTYyNTFhZGE5MDU4ZmU2MDdlOGM4MjI1MzU3YWYzMzgwMTNiNzg0IHB5M2stc3RydW5pCis1NjQ2NiA2MGI3MThiNmZjOWIxNjMzY2MyNGE5ZGRmN2YyNTYzNjNiN2U3OGM4IHAzeWsKKzU2NDY3IDRiYmJlMGM1NWZhMjE1OGZlMjE2NTM3YzhmY2RmYjNlYmFkNzQyYjkgcHkzay1zdHJ1bmkKKzU2NDY4IGM0NmYwYWZiNDAzYzQwN2ViOTllZTg0MmRlMjIwNTdlYTM1YmM1MmYgcHkzay1zdHJ1bmkKKzU2NDY5IDk2NGM0YmY4NmQ5YTY5Njc1N2VlMGQyMzQ0YmI2Mzk0YzgyMDhhMTMgcHkzay1zdHJ1bmkKKzU2NDcwIGEyYzVjZWJkMGRjNTFmMTViN2I5OTVhYmU5MGY1ZmRlYmJmZDE1OTggcHkzay1zdHJ1bmkKKzU2NDcxIDU3YzYyYmQzNmIxOWJiODFiZGM5NDE3MjdhMWU5YTM1MThiNjA5NTggcHkzay1zdHJ1bmkKKzU2NDcyIDVhOWUzZDM3ZjY2MWYxM2VmZGUxNzFjYmFlYTcxODQwMjdlMjgzMWMgcHkzay1zdHJ1bmkKKzU2NDczIDMzM2ZmMDU4NDkzOGM1NjMzOWRlNzU2NWIzMzVjYjY3OTY4MmJiNDkgcHkzay1zdHJ1bmkKKzU2NDc0IDdhMGQxYmFhNGE1M2RlZDQyNDUxYjE4MDkyZDZhYjU0OTU5MTA2MmQgcHkzay1zdHJ1bmkKKzU2NDc1IDJiZTI1MWRkMmNiZGYxNjEzM2M0YjU0OTEwMjIxMWEyYjc5YjhkYWYgcHkzay1zdHJ1bmkKKzU2NDc2IDY2MjBhNTEwZTlhOTUxMTBkYjEzOTEyZDY2NTUxOGFkZTdkZDdkOWQgbGVnYWN5LXRydW5rCis1NjQ3NyBlMzcxNzFhNGIxNDc5NTlmNmYyM2VjMmEwOGYyMmQ0ZGI2NzMyN2Q5IHAzeWsKKzU2NDc4IGZkMzQ1OGE5MmE4OTQwZGJkN2E2NzUxMWEyM2ZmYWQ5OGU3N2E5NzQgcDN5aworNTY0NzkgNGU4OTg3MmYwODJlMDZiOGZlODkyNjA1YTdlNjIwYzM2MTI4OWM4ZiBwM3lrCis1NjQ4MCA1MzFlMTgxZjViNTMwZjllNDUyODYwNTQwNDliMjY0NGRlNzM3ZTIyIHAzeWsKKzU2NDgyIDEyZGY5MDYwMDNlYTkyMjZmMjJjZTMxOGRmYjFkOTBmM2I5OTA0YzMgcDN5aworNTY0ODMgZTcwY2RjZTBlOGIyOTU1YzQ0MDA4YTQ0OGYwOTM1YjlkZTdkMTg1ZSBweTNrLXN0cnVuaQorNTY0ODQgYzhiODUwYjVhMDY2NjkxZmE4OGNmZTUyZWQzNWU4YjgyYTM5OWVlOCBweTNrLXN0cnVuaQorNTY0ODUgMDNhYjhjOGJiMGFlMTg0Y2U4YzgyZjA2ZTU4MWRlYzQxZmRkYzliMyBsZWdhY3ktdHJ1bmsKKzU2NDg2IDIzYmZkYjc1NzFhN2RhZDFjZTg1YWE2NWVlYjE2NDVhYzhiZTgyMzYgcDN5aworNTY0ODcgODhlZTBhNTU2MmVlMjIxOTBkZjcxZjAwMThjZmU1ODlkMzdlMTkyMiBwM3lrCis1NjQ4OCAzOGQxYmViNjUwYmFjZmUyYmRlYzMyNjk4YTBhYjhkMjU5YjI0YmZhIGxlZ2FjeS10cnVuaworNTY0ODkgODExYzlhYTZlZDg4MmU0MDU3NTFkYzZmNGU5NWI3MTk0ZjViMTAzZiBwM3lrCis1NjQ5MCAyNzg2MzhjZGM2NDdhYTI4NGVhMGZhZjNjZmJkYmJiMGNmNWNjNmUyIHAzeWsKKzU2NDkxIDYxODU5YTM5YTg3ZTcyNjQ1MWI3MTg1NGE3ZTAxYzY3ZjM4NDVmZmEgcDN5aworNTY0OTIgN2JmZTlhMTA3YjI5Nzc3MjAzZDY0MjIwNjY3NzA2ZTc2N2RiYWE2NCBweTNrLXN0cnVuaQorNTY0OTMgYzE1MmM3ZmExN2M0ZDAyODczYzdmMDY2NGZjNjU0NDJjMTViN2Q0YyBweTNrLXN0cnVuaQorNTY0OTQgZjRhZjZmNGI1MWNjMzYxOGZmYjMzOGQxMmU5NTcwNmVmMTk4ZmI3MSBweTNrLXN0cnVuaQorNTY0OTUgMTQ1NzQxMDE2ODQ4ODJjN2JkZGY1MDE1OGYyMWQzMWQ4YWNiNzYwZCBweTNrLXN0cnVuaQorNTY0OTYgNjBjNzY3MThlMDRhMDA1ZmM3NzZmMDc3YzFjZWM0YzhkZmJhN2M0OSBweTNrLXN0cnVuaQorNTY0OTcgZjMyZmJmOWZhNjBiMWM4OTQwOGRjNWRiMDgxMGY2NjQzNjY5ODA0YSBwM3lrCis1NjQ5OCA0MDk5OGYxOGM1ZGNjYmMzMDE3ZTBiYTI1NTNhYzVjZjg5ZDgxYzM5IHB5M2stc3RydW5pCis1NjQ5OSA4MzY3MGMyZjFlYTg0YzcxMWIxZDc5MDA4M2UyYzRhZTQ4NzNiNjczIHB5M2stc3RydW5pCis1NjUwMCA5Y2U1NGNmMGRiZTJhNjlkZGFmZmRmZjBiOGVkNzQ0YjM4MjNkMzQwIHB5M2stc3RydW5pCis1NjUwMSAzNmI2NzAzMGNhNDcyZGEzNGJhMzY0ZmNlOTNhZTQxNWE0MjZiNGQ3IHAzeWsKKzU2NTAyIGI1OTBmNGEwNmJmODY0N2NhNjI3ZDg0MTc3NTA2Njg1ZGJmZDM4MTcgcHkzay1zdHJ1bmkKKzU2NTAzIDVlNjZiYjY5YzFlM2U0ODZlN2JmNzQ1ZGM3NDZkZDBhYTc1MmNiZDYgcHkzay1zdHJ1bmkKKzU2NTA0IGJmZTA0MWFmYWZlNjkwYzBlYjY4NTA1NDZhMjhkY2U0M2IzZThiN2QgcHkzay1zdHJ1bmkKKzU2NTA5IDNmZTY0M2Q2MmVjYzQ1ZWIwNGMwNDY4M2VhMDNhODI2NTM5YzRiNTcgbGVnYWN5LXRydW5rCis1NjUxMCBmZDY3MDUzOWMwODVkNTYwMjI2YjllM2NmY2RlOTVlYThlY2ZiNzNjIHB5M2stc3RydW5pCis1NjUxMiBlNTBlMzNiN2UwZTBjY2I3MTE0MDUyODY4YjBjZWEzZDU0NDRiYzVjIHB5M2stc3RydW5pCis1NjUxMyA2NDA5NTJkZjQ0MzE0YjRiYTBkYWI1OWVkNzUyZTY4ZGM3YzJkYTE5IHB5M2stc3RydW5pCis1NjUxNCA5NTllNTJhZTI2MjdhMDg5YWQ1OGIwZWU4YzViNTNkMWQyNDUwZGI3IHB5M2stc3RydW5pCis1NjUxNSAzNmZiY2RhODBiMWM0NTdmYjRlZDlhMjA2M2RhOTg5Y2JlZGMxM2I4IHB5M2stc3RydW5pCis1NjUxNiA1YjljOGRjZTRlZGQ3ZThjZDZiZTFjMzVhYWY5ZTJlNzc4N2Y3ZTkzIHB5M2stc3RydW5pCis1NjUxOSBkOTRkNWI0MTZhOTQ3YWY0Zjg1ZTgyM2YxZDJmYzZkOTI5MTMzNDAxIGxlZ2FjeS10cnVuaworNTY1MjAgYmM4ZTVlMTU3MWFjY2YwZWVlNzhkZTRkZWNhY2FmMzZkMzcyZDQ2YyBsZWdhY3ktdHJ1bmsKKzU2NTIzIDMwZTExMjM1MGUyMDNhMzY5ZjRjZDU4NDFlNDgwZThlMDdmOTk2MDUgbGVnYWN5LXRydW5rCis1NjUyOSA3NDZhNTAyMWUxYWE4NzExZTViNDg5ODI0YTU3Njc4NDBiZDIxZjU3IHB5M2stc3RydW5pCis1NjUzMyAwZTJmYTRjNmE0MjgzNTUzNzIyMGI3ZjlkNTMxOGFjMTViZGE4YTgyIGxlZ2FjeS10cnVuaworNTY1MzYgMTEzNzcyNDkzMGE3MmIzODhkNGU5NDc0YmY1ZDA0ODczMTE0YTQ2NSBwM3lrCis1NjUzNyBkYTYyODM2ZGQ5OWY3NzNkNjRhMWY4MWFhOTAwNDQ4NWVlNzM1YzViIHAzeWsKKzU2NTM4IDJmZGE1NTNhYzZlMTYzZGIxNGYyODhkMzM4YmE1N2VjNzQzYzZiZTYgbGVnYWN5LXRydW5rCis1NjUzOSBlOTg5MWQ3ODdlZGQ4MjY5MmQxOGI4NDNmMjNiMWEwY2NiMjdmYWZmIGxlZ2FjeS10cnVuaworNTY1NDIgMTIwNWQzMDM0NjFjMzIzYjk4MTQ1NGVhZjYzZjhlMjliMzk4Y2FmMyByZWxlYXNlMjUtbWFpbnQKKzU2NTQzIDI3ODY0YTE4MWYwMWIyMzkyY2M5Zjg4OWFmMTE0ZjNhNDk4Mjg3YzMgbGVnYWN5LXRydW5rCis1NjU0NiA3OTVhNWRjZGM5ODIwMzAzMmU1MjIyNzdiMTE5YTFkODA1Y2EyZmNmIHB5M2stc3RydW5pCis1NjU0NyBkNDhhY2IyODQ2NjRjNzQ0YjE4ZjBmNzU5NzJlZGU2OTA1OTRiMWIyIHB5M2stYnVmZmVyCis1NjU0OCA1ZjNmNTRjMGM2YzhlYjIwZDZiODEzYmZhZjU2MmFiYzcxNDkxMmM1IHB5M2stc3RydW5pCis1NjU0OSA4ZmY4OTk2NDE1NjM1MmY3N2FhZmU0ZDkyMGJkNjA0MWQ3YTczM2UxIHB5M2stc3RydW5pCis1NjU1MSA2ZmE3ZDhmYjA3NzMxOGY4Y2ZhZWJmYzg5ZGIyODQ1ZjRlYmY1ZjRmIGxlZ2FjeS10cnVuaworNTY1NTIgNDM0YWU2NmI3ZGUwNGU5YmNjYWY5Nzc4MTdjOGNmMzI2ZjBlOWY0OSByZWxlYXNlMjUtbWFpbnQKKzU2NTUzIDY0OTAzZmY3NmVkZTFhMDk2OWU4YjE2NmQ4MWE1NGExNmU0NTRlMDcgbGVnYWN5LXRydW5rCis1NjU1NCA1N2ZhY2YzNGE3MTg2MTBjNTY5M2I0ZTlmZTM4NWE0MzkwZmIxNWRmIHB5M2stc3RydW5pCis1NjU1NSBhNTQzNGZhZGE5ZmY0OWM0MDdlMDFlMjcyNzdmNjBiNzhiNGVmNDExIHB5M2stc3RydW5pCis1NjU1NiAyYWNjODkwMjc2OGM0NDdmMDMzNjYzODg5Yzg2NWE5NWJiYTY4MGEzIGNweV9tZXJnZQorNTY1NTcgMDdhNTc3YjYyMGVjNjkxODJjNDg1MzcxMDA5NmRiYjY5ZmE2MzgzOCByZWxlYXNlMjQtbWFpbnQKKzU2NTU4IGRlZWM0MTI2ZmZhY2ViMDZlMjZmYWRlNmEwYThmYjhlMjdlYjhlYmIgcmVsZWFzZTI1LW1haW50Cis1NjU1OSBiMDBiZDA4YTA5NDk0OTEyMjc5Yjg0OTc5ZDUyYmRiMzRhMWQ4MGNhIHB5M2stc3RydW5pCis1NjU2MCAyNzhjNTIxMzQxNDBmNjE3ZGNmZjFjYWEwN2RjZGU4NDA4YWM4NDg5IHB5M2stc3RydW5pCis1NjU2MSAxMDcxZjcwNzZlOGUzOGM3MzRmYjU4Y2ZjMzRiZmI5YzEwZWU5ZmNiIGxlZ2FjeS10cnVuaworNTY1NjIgMjBiZDViZTI0YWI1NmI5Yjk4NWJjOGFiZjFiZDU2OTAwNjgwNWJiYSBsZWdhY3ktdHJ1bmsKKzU2NTYzIDg2Mjg1YjM5N2I0ZDEwNGQ0OTdlYTBkYzRkNGEyMDE3NDM1OWVjYTcgcHkzay1zdHJ1bmkKKzU2NTY2IDA1NDZjMTE1YTljZjNjNzJiMzYwNTFiOGJlYmQwM2VkZmYyNDA5NTMgbGVnYWN5LXRydW5rCis1NjU4NCA5ZTg0YjQ4Njg5ODQ2ODFlOGUxZmNjMWU3YjgzYmNhYzMwYjBhZjc3IHB5M2stc3RydW5pCis1NjU4NSA5MGU0MmEwYjIyMDJjZjg1NmRjNWExMzgwOTNmNWYyMmZiYWM3YjRlIHB5M2stc3RydW5pCis1NjU4NiBmNjcyMDcxZDgyZmI4MzhkYzhiNjVkNjY1MTM4NzA0YjgxNzVjMDUwIHB5M2stc3RydW5pCis1NjU4NyAzNTdjYjg5NjdlODVlZTBmNzhjY2Q5MjAxYzU2MzdjZTYxNzlmMDU4IHB5M2stc3RydW5pCis1NjU4OCBlOTkxNmE0ZTA2YTRkZDNhNTFjMWI1ZTVhN2U0MjBjNGFkYTIwNDhjIGxlZ2FjeS10cnVuaworNTY2MDAgN2U3ZGNlMzA4OWUzN2E5YzEwZmJlMjFhYjYzMjZjZjYwOGMyNWRkMyByZWxlYXNlMjUtbWFpbnQKKzU2NjAxIDg1YjdmNDBlMWMxY2YwYTViNTVmNjYzNzkyYTE2NzFlNjFiNmY0MzIgbGVnYWN5LXRydW5rCis1NjYwMyBkMzQ3MWVmNmZlMzhhOWM4OGNhNTE2ZjIxNDdkZjM3NGE5ZjdhNzZlIHB5M2stc3RydW5pCis1NjYwNCBlMzFjNDgyMThiMGNiOTFhMGM4Y2QyNmE0OTdiMWE1MDdmNmMwMDk0IGxlZ2FjeS10cnVuaworNTY2MDUgNzg1ZGUyMjQ5OTVkNTExNWFmNzVkMzFmOTc4ZWM5ZWNiMzg1ZWVlYSBweTNrLXN0cnVuaQorNTY2MDYgZTFkYWU4NjI2YzExYTZkZTA5ZjdjNmY1ZjQ2YWQ2YjAxNjE0Zjk0ZiBweTNrLXN0cnVuaQorNTY2MDcgODZjMTNjZTYwYWFkZTVkOTc4NzNkMzk3MWJiZWU2OTY5ZDY4ZDVmZiBweTNrLXN0cnVuaQorNTY2MDggZDUyYmVmNTUyYWE0MDdmMWE2MjJkMmY5MmEzMmU5YmE5YTA3NzUzMSBweTNrLXN0cnVuaQorNTY2MDkgMzEwNWI3Y2YzNWJlYTcwNzdmYmE5NzZlODRhZGNhY2Y2ZWNjZjMzNiBweTNrLXN0cnVuaQorNTY2MTAgYjlhZGFkNTY5NWEzOWFkMTA4OWE5NDgwZGYxZmQzMDBiZjQ3Nzk2ZCBweTNrLXN0cnVuaQorNTY2MTEgZTk0ZDUwNjBiMGMxYzRhMjRmNjA3MjViMTAwMjVlNGMzYWNkMjZiNiBsZWdhY3ktdHJ1bmsKKzU2NjEyIGYxZjFmNWUxMzk1YzhiNDllY2VkMDczYzI1NDE3NzIzMDE4Zjk1MDYgcmVsZWFzZTI1LW1haW50Cis1NjYxNCA1Y2Q1ZjMyYjRhMjg4NjQ4ODA2MmUwMTYzZDU0MTFhYjc5YjE4YjQ2IGxlZ2FjeS10cnVuaworNTY2MTUgMzY1ZTk5MWE2MzFiNGM1NjVkNjU1MGQ3ZmFhMjI1YTg5MjkxNTBiOSByZWxlYXNlMjUtbWFpbnQKKzU2NjE3IDhhZDhhMzM0YmUwZjM1NWZkMDQ3OTAwZjE2MzczM2M1NTA1MTkwNTEgbGVnYWN5LXRydW5rCis1NjYxOSBlNTk4MTczZjk1ZTg4MDQxZjk1MGYxNTI0OGIyZjYxYjNhN2ZjMjM2IHJlbGVhc2UyNS1tYWludAorNTY2MjAgMjUxMDMzYTFjMmUzMjg1ZGEyNzRkODZjZjZmNDVkMzJiNWI3YWNhOSBsZWdhY3ktdHJ1bmsKKzU2NjIxIDdlODQ2OTYxN2IxYzNkMjU2ZTdlOTM4NWY2MTMyZGM4NTIzYjkwNmIgcHkzay1zdHJ1bmkKKzU2NjIzIDBjMzAwYjI5MjAwYzIyODliNWY5NTUxOWY2N2EyMzUzN2FhMjNlZDMgcHkzay1zdHJ1bmkKKzU2NjI0IGNlN2ZjMDhkNWY0Nzg1MzE0MTY0MDA2NjM2MmQ4MzFhZTE3YWYyYTkgbGVnYWN5LXRydW5rCis1NjYyNSA0OGNmYWFhODI4NzMwZGUxYTFhMTU5Y2E1NDVkMjFjY2MyMTY5M2ZhIHB5M2stc3RydW5pCis1NjYyNiA0Njg2MjE1NjliZThlOTVlY2Q5MzNmYzljODZlYzZiYTIxNjMzNTRmIHB5M2stc3RydW5pCis1NjYyNyBiZDg0NTZjOTU2OWFjMjUzMTQ0YWVkNzgxZDAyNTZmZjhjYzUzODdhIHAzeWsKKzU2NjI4IDhlNjlhYzFiZDA0MmNjYWRmZGI4NGM2MGZkYjQ4MmVjZWJkNGE1Y2IgcDN5aworNTY2MjkgNTA0MDg0YzA0YWMwMDBjZGQzY2JjZGQ3ZmJhOTJiYjBiNzZmYTRlYSBweTNrLXN0cnVuaQorNTY2MzIgM2EwMTUzNTViMDdhYTAzNTA0MTIyODM0MDk0ZTBhYzIwOTNhZGUyNCBsZWdhY3ktdHJ1bmsKKzU2NjMzIGI2MDY4ZGQ2YWUwMGMzZTE1Nzg5MDg4ZDg5OTIxNmE3NTExMGFlOTMgbGVnYWN5LXRydW5rCis1NjYzNSBlZjJkYzYyZDI3ZWI3ZDhmMzE5OTI1YjMxZTMwZjI4YmUzM2FmNzY2IHJlbGVhc2UyNS1tYWludAorNTY2MzYgZTFjMGFhOTRjMDkyZjljMjBlM2QzZDJhZGI0MTMwZjY3ZmRhYThmNCBsZWdhY3ktdHJ1bmsKKzU2NjM4IDNmNzhhY2MwMTAzOTgxNWI2ZmJkOTUyMDI1MTAyMWUxODg2MTJhY2IgcDN5aworNTY2MzkgOGI1NmEwNjk2MTRlZjRhMjE1MGQyZjA4MTAyMzY5YjI3OWZhMzQwMCBweTNrLWJ1ZmZlcgorNTY2NDggMzkyZjk4MjIxZDEzZWVhYzQ4ZWVlMDM5MjQ1NDc2OTNkMjcxZGJhOCBweTNrLXN0cnVuaQorNTY2NDkgOGMxNjVkMjA3MDlmNjNmYzYzYjVmMmRkMGRiOGM4ZDM4M2Q0OWY1NyBweTNrLXN0cnVuaQorNTY2NTAgYTZkMjZhNGQ2NzJkZWEzYmQ4M2YyNDRhODNlZTQ2Nzg1ZDE2N2RhNiBweTNrLXN0cnVuaQorNTY2NTEgOTg5OGE2Njk2NWJjZDk4Nzg1OTRjYTYyYWZiYTUxZGYwMDE1ZTM5NiBweTNrLXN0cnVuaQorNTY2NTIgZDNhNWM3OTZjOGJhMDBmZjVmMDEzMWEyYmJiMTJmZGRiODc5MGNlMSBweTNrLXN0cnVuaQorNTY2NTMgNjcwNTliNzhiY2U0NzVkM2FmYTU0ZjVkNWFhZTAyNmQ1YmQwZDNjNiBsZWdhY3ktdHJ1bmsKKzU2NjU0IDgwMWFkMmYwZDBiNTgwNTk3ZGMyYzgxZjkwNDViZTA2ZDA5NGI3ODcgZGVjaW1hbC1icmFuY2gKKzU2NjU1IDA3YzJmODFjMjY3ZDYxOWJjNzYzZGFlYzljYzQ1MTUxYTJkNDhlOGQgZGVjaW1hbC1icmFuY2gKKzU2NjU2IGNmNDU5NjUyYzM1MjM0Yjc4M2RmNDM5ZWJlNjdhNTk4ODY2YzcxYmIgZGVjaW1hbC1icmFuY2gKKzU2NjU5IDZmMjMzMGUwOTA5YmVjNGI3YjA0YjZkNGJhY2JkM2QwNDMzN2UxMmQgcHkzay1zdHJ1bmkKKzU2NjcyIDAyYzI3MTc3ZGY3OTM0YmNjYTFkNmNlYWQzYTdkYjZkNTQxOGFmYjggcHkzay1zdHJ1bmkKKzU2Njc5IDBjYmJhNDQyNmNkM2M0ZDJhYTllYjgwYWMxZjM0NmRjMGEwMGY3YzQgcmVsZWFzZTI1LW1haW50Cis1NjY4MSBlMjFkNjQ3NDZiZDNjYzRmNTA2YWU5NWMyMTZjYjNhMTRhNGNjMzA1IGxlZ2FjeS10cnVuaworNTY2ODIgNzU1ZTMxZGVhNDdlNTk2ZjMwYTY0NzBhNzQyMGVhMjkxYTI3YjI0NiBkZWNpbWFsLWJyYW5jaAorNTY2ODMgYzMzYzM3YmE5Y2IzYjU5ZTA3YjFlOTk5MDQxY2UxYzg0Yzc3NDU1YSBkZWNpbWFsLWJyYW5jaAorNTY2ODQgYjFmZjU0ZjhmOWQ4MzEzYTUxYjk0NDc5Yzg4NDRlZDE1NTYxZDk0OSByZWxlYXNlMjQtbWFpbnQKKzU2Njg1IDNhZGIwMzM1ZGU1MDZjZGVkMjE5ZTA3NmQ5ZmQxOWFkZjllNDc1YWMgcDN5aworNTY2ODYgMTY4ZDA1NTE2MGRjMTlmOTExMTc0YzkzYzAyYmRmMGViNzAzMmQ4NyBwM3lrCis1NjY4OSA3MjNjYjllM2ZhNTAwZTc1MGUwY2YwZGViMmQ0NThlNjI1OTBkMjA1IGxlZ2FjeS10cnVuaworNTY3MDMgNzc5NGRhMTMzNGEwMWY3ODQ5ZTcwN2E0M2M3MzdlZmVkOTE4NDBhNyBweTNrLXN0cnVuaQorNTY3MDQgYWU3MmJmNWFlNDY1MThjYTYxZDViNTA5YjRmM2M1ZDRhMTIzZWVhNCBweTNrLXN0cnVuaQorNTY3MDYgNDY2MjVlNjEyMmU5OWJmZTBjYTQxZjY5ZjI5ZmM2MjkxNmRiMDI1YyBweTNrLXN0cnVuaQorNTY3MDcgODFhZGUwMTQ0MjQ3ZDc4NzVkMzNkODUyZDMyNDE0MTBjM2I1MDIxZCBweTNrLXN0cnVuaQorNTY3MDggYjFiZjFiYWI5Nzc5NjYwMzE1MTBkZjU0MTEwMTNhYzViYmEwMTUwZiBweTNrLXN0cnVuaQorNTY3MDkgNmMzZmE0M2YxZDFkMjUxMTk2Y2IxZjk0MmNmMDM5NjVmNDY5NGYwOCBweTNrLXN0cnVuaQorNTY3MTEgNzQwMWZmNzhlYjI5YzAzYmNhOGQzMTEzN2I4MWUwYzc5YjIzNDg5YiBweTNrLXN0cnVuaQorNTY3MTIgNTM1ZGFlMDRkNmNkNjc0NjQ1ODNjMmUwMWNiNTgzZmZmYWU3OGQyMyBweTNrLXN0cnVuaQorNTY3MTMgZTMxOWQyZDI4NWJhM2Q2NzVhZjZmMDE3NzEyZjM1NjBiZjZhMzk1NiBweTNrLXN0cnVuaQorNTY3MTQgYzM1MTQwNTU5Zjg3ZThkYThjZTYxOGQ2OTdiYmFhZTUzZTliYTQ0MSBweTNrLXN0cnVuaQorNTY3MTUgZjZjYzc2ZTRjYTI1MWJkYWM3ZjkwN2YxNzFkZTQwZGM0ZjliOWYwZiBweTNrLXN0cnVuaQorNTY3MTYgM2VkMDIwZTk1YjQ0NGUzMGUzOTFlOTVmNjcwMzUyMDhhYTEzOWI2MCBweTNrLXN0cnVuaQorNTY3MTcgM2JlMjk3MmEyOWNhYzVjNzBlOTA3ODE4NzIxNmY5ZDdmYWFiMDE1NyBweTNrLXN0cnVuaQorNTY3MTggYWRlNWQxYWMxYTJjOGE1MDM5YWRlMDZiNTBmNGFkYzIzNzZjMjAwZCBweTNrLXN0cnVuaQorNTY3MTkgNzEzMDRlZmJjMzE2YTZkMmY0MmQzNWI2NGE1Y2ExMTcwZDRiZDgyOCBweTNrLXN0cnVuaQorNTY3MjAgMDU3MjhlNTJiMjgzMjBkMTgwMTgyZjY4NWRkMjg3OTU2ZDYxN2U0NSBweTNrLXN0cnVuaQorNTY3MjEgYjZiZGJiNjMyNmQyZjBiOWUxOTdmNDA2MWI1ZmUzNTAyOWI3MDZiYSBweTNrLXN0cnVuaQorNTY3MjIgMGZhODRmZmJhNzY5OGFkZWIyODVjZWVlYTIyOWVlZDE0NzVlNjI3YSBweTNrLXN0cnVuaQorNTY3MjMgYzYxOTQ0ODBiMWQ1OTYxZDRlZGYzNGE4ZTEyOTMxZjA0OWVjOTc4MiBweTNrLXN0cnVuaQorNTY3MjQgMTJkYmFlY2ZiNDRiOTE0N2U4MzM5ODY0NzNmOTk1NTcyNDhhMTkxZSBweTNrLXN0cnVuaQorNTY3MjUgMTMzMzUwMzk4NzIyMTBhOTFkZmQ5NDhlYmQwOWUxYTYxYjkxZjcyZiBweTNrLXN0cnVuaQorNTY3MjYgOGQ2OWEwODRlMzY1NWNhNTUzMGI1OWVhZTY1NGQ0NjAwNWJhNDkzNyBweTNrLXN0cnVuaQorNTY3MjcgM2ZlNTdkYWFhNjA4MTM0OTY3OGFhYzU4MGUyMmI2YmZkNWRiN2RhMiBsZWdhY3ktdHJ1bmsKKzU2NzI4IGJhNjRmY2FiNTIxNDJhNWZiODdjOWVhMGQwNGZmM2M1NWVmNjAzMDEgcmVsZWFzZTI1LW1haW50Cis1NjczNSBhYTVlZTY1MzI4ZmI2OTQ4YTYzODE5NjVhNGMzNjhhYmFlODE4MDcwIGRlY2ltYWwtYnJhbmNoCis1NjczNyBlZDM3NTQyZjQ3M2VhZTI4NjVkNzJlMGY0MTZjMWU3ODZhYmEwOTlkIHB5M2stc3RydW5pCis1NjczOSA1MjhhOGQ5ZWYyMDJlNTRkNjM3ZTZlYjkzN2FhNzQ0NzQyMTA4NzBjIHB5M2stc3RydW5pCis1Njc0MCBhNDBhZWRkYzBjODFiZDhlNDdhOWMyOGU1ODI2MDg2MjI1NGM1NmZjIHB5M2stc3RydW5pCis1Njc0MiBmNDQwOWM1ZDc5OTRkM2EwZmVjZmRjYjZhMThiNzI2Yjk1ZjU0MjkxIHB5M2stc3RydW5pCis1Njc0MyBkMjIzNWFlZTJkMjU1MDJjYWMxOTYyZGI2OWNkMGRlNDMwYTNjOGNmIHB5M2stc3RydW5pCis1Njc0OCBhODRlYWRmNjM3MmUzOGIyMzZjYmZlYjA4N2QzZmM0MjkxYjRhOTNjIHAzeWsKKzU2NzUwIGZkYmVkNzNlNWRhN2Y1Y2IxMTA5MzhhNGE4ODBmYjg3ZjhhYjAzZTUgcDN5aworNTY3NTEgNjQ4NTc3Y2M2ODhhZjZjZWIwNzk3MjlhNTdiZmFmMWU4NjY0MWU0YiBsZWdhY3ktdHJ1bmsKKzU2NzUzIGRkNzRlMDIwYTEzMjM4NmQ0MTY5OGZhODcyZWNlZDBhZGEyMTQwN2YgcHkzay1zdHJ1bmkKKzU2NzU0IDYyOTE4NTk5MmFhMjE1MGIwMjhkOTg5Y2FhNDVjMjRiYWJmNjQ0NDEgcHkzay1zdHJ1bmkKKzU2NzU1IDA4MGYyYWExODAxNThlNzJlOTI4OGI4OTJmY2VhMDdiOGZkNDFhOWQgcHkzay1zdHJ1bmkKKzU2NzU3IDQ5ZDUxYzFmYzE3NzhjMTJlZjY1MTU4NmE5YTY5YWFmZmE3MzhkMGEgcHkzay1zdHJ1bmkKKzU2NzU4IDE3ODAwMzVkNTgxMjNjNzdmY2U4YjA1NGE3NDY2N2RjNjVlZmU1YTggZGVjaW1hbC1icmFuY2gKKzU2NzU5IDg4ZDdhM2RmNWY3OWU1Mjk4YWU2MjQwYWFkNGJiNWY5YzNlNjBjYWEgZGVjaW1hbC1icmFuY2gKKzU2NzYwIGI0NTAwNTY0MWJjYTYyODlkOTE0NWJmNGVmNjcwY2VlMmFmZjY0OTYgcDN5aworNTY3NjIgZGJmYzNjZjE1MjJkMDdhNGU2OTZjN2FjMjMzNmVkMTlmNzViNjNmMyBsZWdhY3ktdHJ1bmsKKzU2NzYzIDliMjZlZTZlNmQwYTQ1ZGZjOWFiMjkyZDgzODBlMTk0OWFiZWVlMDcgbGVnYWN5LXRydW5rCis1Njc2NCAyNThlMmI3YTc4ZTRmZTE3NDc4NDAzZWJhOWZjZjIxNGVhMjlhNmZhIGxlZ2FjeS10cnVuaworNTY3NzUgMGFkYjcyMDdlNGJlYjdiNGQzZjA5NzZlMzViY2ZmMzFiY2YyNjE4ZCBkZWNpbWFsLWJyYW5jaAorNTY3NzcgOGI0NWYyMjk3ZGJkMTQ5YjI5MjFjMmQ2ZWM4ZWY0NzMxNDBmMzhhOSBweTNrLXN0cnVuaQorNTY3NzkgYjEwYmEzOGU2YjgwODEyMzZhNTkwM2EyYTE5ZDZkYjkxZmU0ODRhMiBweTNrLXN0cnVuaQorNTY3ODAgMjI5MzYxMTk4ZThkNWVkODNjNjU5YTRkMDgwNjZkYjZkNmQ3ODQ1ZCBweTNrLXN0cnVuaQorNTY3ODEgNDQwMTc2ZjA2MTQ3OTQyNDA2MWE4N2MyNmIyY2I1MmQxNjEwYzZmOCBweTNrLXN0cnVuaQorNTY3ODIgM2ZjM2NlZGM0OWNhM2M2YTg1YjE4NTgwNzE0ZWQ5MTRhODZmMjViOCBweTNrLXN0cnVuaQorNTY3ODMgODFhMzgwM2Y0M2NmOTg5ZWJkODRmYzM3ZmVjYzdmM2M1MWY5ZTQzMyBweTNrLXN0cnVuaQorNTY3ODQgZjRjOTljYWQ4ZDJmNjRiMjdmOTM2ZDUzZTM5OGQ1OWVjZjAxNzM5MCBweTNrLXN0cnVuaQorNTY3ODUgZjgyODFkYzJlNjhkZWQ3ZjNiNmZmNzdlMWM2NGI3Yjg4N2JhNzVlYSBweTNrLWJ1ZmZlcgorNTY3OTAgMmFiMThmZmI0MDFjZjFiN2FkMDk0M2Y3NGRhOTE4NDlmZTI2YmE4ZSBweTNrLXN0cnVuaQorNTY3OTEgMmExMTNhODI2NGIxNjIxMDY5OTRjNjk3NGVkNWE0ZDMzMzI2NjJlNCBweTNrLXN0cnVuaQorNTY3OTIgZjMyNDhjMzIwZGQwM2ExZGMyYzZlNzhmYTY3YzIyODg1YWQ1NWM0YiBweTNrLWJ1ZmZlcgorNTY3OTcgZmU1YTA2MjFmOTE4ODA2ZGJmYTEyZTJiYTg4NzNmNmI5OGYxYWZmNSBsZWdhY3ktdHJ1bmsKKzU2Nzk4IDdkMDc4ZmEzNGJiZjYzYmYyYTJiYWU5ZDU1MDRjNmQwODRiNzcyYjkgcmVsZWFzZTI1LW1haW50Cis1Njc5OSBiMjJkOWZkNGE3ODVhZGZhYTMyYTU3ZjQ5ZTgwZTZmMmUxYzdkYTE4IHB5M2stc3RydW5pCis1NjgwMCA2YmEyZTY3NTgwZmM5OGI4MDJkNTAzNGI5YTk5ZmRmOTVkMThjNTJkIHB5M2stc3RydW5pCis1NjgwMSAzNDVjODEyZjMzNjY1ZWRmMzJlZWMwZmFhYmNhZmMyZmUyOGU3MjQ0IGRlY2ltYWwtYnJhbmNoCis1NjgwMiAyOTczNTg5OWNhMTVhMDY5NmE4NTkzYTEyYmZjZTI1MzBkMDQyNmM4IHB5M2stc3RydW5pCis1NjgwMyA2ZmRkMWFmNjNmYTZhNWZmYjdhNzQ1NDRiZGU5NTJiMTAyZTFjYjBjIHB5M2stc3RydW5pCis1NjgwNCBlN2ZkMzI3ZTBjMTlhMjg4ZjA5NTVkNzU3OGNhNzA4OTU4ZjMxYjdjIHB5M2stc3RydW5pCis1NjgwNSA0OWQ0YzRjZGYwYzg2MjgzYzFiY2ViYzViNzk2ZDcwMTQxOWYxZDFjIHB5M2stc3RydW5pCis1NjgwNiA5ZjE4NDhmNTk2ZTBjYzY0ZDVjNjQ4ZDY4ZDFhMzQ1YWRmZGFjZDkzIHB5M2stc3RydW5pCis1NjgwOCBlMTE1MGFhZTBmNjRkNmRiOTY0ZGEzOWJhMmU1N2U4NDI4NDE0MjZmIHAzeWsKKzU2ODA5IDEzZGM4MzZkNGE5OWE4NWUwNzkyNDgxM2Q3YmUwYTBhZGZkN2VkMTEgcHkzay1zdHJ1bmkKKzU2ODEwIGIyMGNjMWMwY2YxMGU0NDYxZTc2NDFmMTNmNjZmZDFmYWZhOGYzYjYgcHkzay1zdHJ1bmkKKzU2ODExIDRkZWEzYjY4YjAxM2IwZThkZDJjODA3MWQ5MzhiM2U5OWYxZTA5MzAgcHkzay1zdHJ1bmkKKzU2ODEyIDA0YTE0ZGY0MDczYTRlZjhlMDFmYWNkY2ZjODhmMWRhMWM5MWIwYTAgcHkzay1zdHJ1bmkKKzU2ODEzIGMxZWQ0OTBiZDI2Njc0ZGNkOTQ3NzQ3Yjc4MzE2M2MxMDYwYzFhYWEgcHkzay1zdHJ1bmkKKzU2ODE0IGI2NWY2YWM1Mjk2OGM2NjM0NzRlNWJhZjllOGQzNTBmZTU3NjdhNjEgcHkzay1zdHJ1bmkKKzU2ODE1IDNmMWZjZDA4MGVjNGI1MDEwYjAzNzk3YWFmNzMxMzk4MDBkNGE3MzkgcHkzay1zdHJ1bmkKKzU2ODE2IGM4YTA5MWI4NDJkNmVkY2YzMDFiN2ZmN2MzZDVkMWI4YjM4OTJhOTcgcHkzay1zdHJ1bmkKKzU2ODE4IGM5NmI0YzM4NjUyYzM5ZTI0ODMzM2JkNmZjZTAzYjkzMDhjZDhmMzYgcHkzay1zdHJ1bmkKKzU2ODE5IDY2OGE1YWRjYzg3Y2YyY2Y5N2U1ODkwZWYzNzc3YWI4ZjJlOTRlMmUgcHkzay1zdHJ1bmkKKzU2ODIwIGI1NmE4ZDgyMmYyMWI2NWExZTY1NzNlN2ZjNDQzMjBiODU3ZGIyYmQgcHkzay1zdHJ1bmkKKzU2ODI0IGE4ZjEzYTQzZWFhMWU1M2RjMmYxZDY2ZWQ1NTJmOTc4OWYwNjRjMTggcHkzay1zdHJ1bmkKKzU2ODMwIDg2ZmQzOWMyYzY3NjhkY2YyYWE5M2FiZTE0MjQwMzM2ZWM1YzVmODUgbGVnYWN5LXRydW5rCis1NjgzMSA4OWM4MWZkNzAzOGU2MzE3M2Y0MTc0MWNhZDZiNDhkMTVlNGNkMGQ3IHJlbGVhc2UyNS1tYWludAorNTY4MzMgM2Y2YmUxMmI5NTM0MjNmZGJjMTVlNjdmMGVmZDAyMzNlN2ZhODQ0NiBsZWdhY3ktdHJ1bmsKKzU2ODM0IDU3Y2QwNzBhZDMwNDJmMTJlZDQyMDMzYTgwNzNlMGZhZTYyZTc5ZjYgcmVsZWFzZTI1LW1haW50Cis1NjgzNSA1ZjYwYzllNDE0NDAzYWU1YTRmNGExMDFmODk1MzQ4YzA4NWU2N2I5IHAzeWsKKzU2ODM2IGY0ZTM2NmMzOTJiZTcwNmVjM2M5MWY3OTIyZTQ2OGZlMmZjYWZlOTcgcHkzay1zdHJ1bmkKKzU2ODM3IDE3Y2RiZWRiYjE1ZDQ1NGEzZGE3NWQ3ZGEzNDExNGI2ZjEwN2JjNTMgcHkzay1zdHJ1bmkKKzU2ODM4IDk1ZDNhNjVjYjc0YzcwZjhiZmExNmM0MWRiYTgzMjdjNjFhMWI4ZWQgcHkzay1zdHJ1bmkKKzU2ODM5IDk2MDk4YWJjOGY4ZjY3NjZjNWNlY2Y2NmZhNjcwYjAwNGNhZTA0MjkgcHkzay1zdHJ1bmkKKzU2ODQwIGMzMjFjMmI1OThmMTc0ODA5MDE3YWE5ZTU2NzJlMWVmOTAzNjZmZTggcHkzay1zdHJ1bmkKKzU2ODQxIGY2MDY5ZjlkZDUyZGZhOWM5YjZmMTIzYmZmNmJhYjYxZTA0Nzk3NzMgcHkzay1zdHJ1bmkKKzU2ODQ3IDllZGYzMGJmYzJlYmUwYWQ4MTMwOGE2NzgxM2FhZWY1OWE3Y2MzZjcgcDN5aworNTY4NDggOTkxODk4OWI3MzNiNWVjN2Y1NTE3MzdiNzhmM2IzOWI1OTBjYmYzOCBweTNrLXN0cnVuaQorNTY4NDkgMjNkOTYzYTc1Njk2MmVhMTBiNDAzMTRiNGE3ZGNkNmE0MmU4YWJiMiBweTNrCis1Njg1MCA1ZmJkMTVjNjFiMTI1MDUxN2NlMWM2Nzc2ZmQ5OTBiOWQzYjQ0NmEwIHAzeWsKKzU2ODUxIDNlMWExNTE4NWY4Y2Y5ZWVjMDljNjY0YjM5OWI2ZmM4ODIwYTY1MGYgcHkzaworNTY4NTIgMjZjYTNkNmY0NzNhZDZkZTU2N2YwYTFjN2UwOTc2ODQyMTljOWQ2ZSBweTNrCis1Njg1MyBkYjI1OWQxNDFlN2FlYzAyZjZhYjdlOGI4YmM3NWRmYzQ4MzJkZTNmIHB5M2stc3RydW5pCis1Njg1NCA0YWFlYTM1ZGNjY2Y4ZDIxNGVhOGNkNTA4M2IzYjUxYTkxZTYyYTE0IHAzeWsKKzU2ODYwIDBjODk0MDliZGE3YWJjNjBmMzlkYmRjY2ZhMjg0MzA2N2QxMDYzMTMgcHkzaworNTY4NjIgZGY0Y2Q5Mjk3MDk4MTk0N2EyOWY1ZDBmYjFiMGRlNjUxZWNhZjAyMCBweTNrCis1Njg3MSA0ODY1YjUxMGNmNTRlOGRhMWRmM2I2M2U2ZmU3OTFkODEwMmZjOGZkIHB5M2stc3RydW5pCis1Njg3MiAzZGEwYTRkYjIxMDI0ZGU1YjY3NTBjMzMyMjVhMDRkZTAzYjBkYTcxIHB5M2stc3RydW5pCis1Njg3MyA1MjJhM2UzYTAzYTk2Y2UxOWJiODZhOGMxOWU0ZjYyNzJmNmViMTc0IHB5M2sKKzU2ODc0IDA0M2ExMDJhMTcwZWUyZWYzYmEzMmVhZTQ1ZDBiZTZlZTA2MWE4NjMgcHkzaworNTY4NzUgZGNmMjczODVmMTI1MTkwMjA2NzhhODg3ZDVlMThiY2M0YzEwMzA4ZiBweTNrCis1Njg3NiAxNjZjNzQwNTM2YjVmNzNhYjQ3NmU0OThjYzgzNWU2NjgwNmIwODU1IGxlZ2FjeS10cnVuaworNTY4NzcgODJhNWMzMGMxNzg2MjA2YWRjNWQxZDI0NGE0YTFkNzYyNGFjNDZhYiBwM3lrX25vX2FyZ3Nfb25fZXhjCis1Njg3OCBiZTNmZWNkMmQzMzk0MjljMzg1MDQyZjlmOGE1YWE4ODFiOTE3ZDczIHB5M2sKKzU2ODc5IGEyNGUyN2YwNWU0ODI5Y2I4NzIzOGZkOTY4YmRhOWQ2ZWQyOWQ0YjUgcHkzaworNTY4ODAgYzBkYmY0NWNjMjA3Mjk4ZjRjMDcwMTgzZGQwNWQ1OTk5MWJlOTllMiBweTNrCis1Njg4MiAwODcwZThlOWU5OWY1OGY2YWRlZjY0NmY3YWIzOGRjMWZlZTRmM2E5IHB5M2sKKzU2ODgzIGYwY2ZlZDM4YjlkOWUxZjU0ODVkNjA2MzAxODI4ZjE2ZTJiNzZiNGMgcHkzaworNTY4ODUgMGU1YWViYTNjNjdkYjJhNWM0ODZiMzhiZjcyNzA0YWUwZmIxODliOSBweTNrCis1Njg4NiA1MDdmNTY3MWUzODg2MjhmNWRlODE2MzQwMzc1Zjc5ZWQyNzdkMjkyIGxlZ2FjeS10cnVuaworNTY4OTAgMGFiMzQyMWEwOTA2NzdjOTA5YjlkN2Y0OGYyMzViYzFkNTNjN2M3YiBweTNrCis1Njg5MiA5ZDRlMjIwMjI0ZmI1ZGQ3ZmM1MjczMGM1MmEzNTRlZTg2MDFlMDAxIHB5M2sKKzU2ODkzIGNjMjVkMTYwZjBmN2VlMTBiMGEzNzJjMGNiZDkwNjg5NTc3MjRlMjEgcHkzay1idWZmZXIKKzU2ODk0IGVlYjM3Yzk3OTNlYTUzNDM2OGQwNDk5ODIxOTdhNDdjZWUyNDJjZjAgcHkzaworNTY4OTYgZjM3MDE2ZDQyNzI5ZmJlZjk4NTdlZGM5Mjk3NzFkZjgyMDJkZTdiMyBweTNrCis1Njg5OSA3NzAzMTg3YzdjNmYxMTdjYzliMDE1ZWU4OTc0ZmZmZWNjMjE4YzczIGRlY2ltYWwtYnJhbmNoCis1NjkwMCA5MzA3MzZlZTkzZDk0OTBhOTNkMjhmYTFjYjM2MmRjNzI2YWI2MTgxIHJlbGVhc2UyNS1tYWludAorNTY5MDEgMzQ2ZDBiODQwMzBiOWRmOTU4ZmFmODU0MWFmY2Q1MzkyZWNiZGY3NCBweTNrCis1NjkwMiBlNjQyODYwNTNiMjUyMjg1MTVmZjg4M2NiMDU0Yzk5ZjkxNzZlMDlmIHB5M2sKKzU2OTAzIGQ5NWIxNWE1NWYyYzA2MzBlMGNlNTYwNjAyOTRmNTUyNzc1YzllZTQgcHkzaworNTY5MDQgM2VjMjBjNGMxYTRmYmM1MTMzNjkyZWYwNmY2MjE0NWZhZGE3YzFiZCBweTNrCis1NjkwNSBhZmZiMWU4Nzg4MWE1ZjFhZjYzZjJmYzMzOTE3NzVkYmM4MGZmNGY1IHB5M2sKKzU2OTA2IDgxYmQzZTk0Y2YwYzMxZDgzNDJiNjZhMGMyYjJmYjAzYzYxYzJhYWIgcHkzaworNTY5MDcgMzg1OGQwYjhiMGVmNzZmYmQwZGFiZTE1MzZkNDEwYWQ5ZmJkYWUzYiBweTNrCis1NjkwOCAzYTE1NzJkMWZmMWFkNTRmZWNkYWVhMDZjYjE1ZThjODg0ZDMwMDg3IHB5M2sKKzU2OTEwIGY4MjhmMzUwMTRhZTM5YmFlNTA4NGQ5MTgxZmU5ZjYwN2FmODc4NDkgcHkzaworNTY5MTEgNmEwOTQyMzE2NGZlNjI0ZjU2N2NhMTRiMTAyYTc1NTQxNTIyNzcwZCBweTNrCis1NjkxMiA1ZjllNzlkMWUxNTg0YjU5ZmU4MWVlOWM5MWY3NjI3NDA5NjUwMGRlIHB5M2sKKzU2OTEzIDhkNjg2N2NiOGE4ZGI3MTg5NTE4ZWQwNWM1YjgyNWZkNzMwZjcwNDQgcHkzaworNTY5MTQgNmNkZGNlNDA5NmEyMjdlMjBjYTk1MTQwNDgzZDQ4ZGJjNzAzZTNiYyBweTNrCis1NjkxNSA3NGEzYzY4MjY2ODNlNGY3NDlhMjE4ZTM3NjI3NzlkYzMzMzQ2MmU2IHB5M2sKKzU2OTE2IDljM2U2NDQwZjU0YzMyM2M2ODE1MjE2ZTRjYjE1OTIyMDM4ZGQ3ODIgcHkzaworNTY5MjIgNDNlMzJiMmI0MDA0ODFjYTM3Yjg2MzhjM2FjNmNjNmNiN2FlOTFjMSBweTNrCis1NjkyMyA2OGZmOTA5OGIyZGM4MzZkNWIwZDBiNGJkNjIzMTE5MTc1NDdkNjk2IGRlY2ltYWwtYnJhbmNoCis1NjkyNCBhYWI2ODc5MzZlY2Q4Mjc0YmU0ODgwMjg5M2ZjMGQ5YWJmMGE3ZmI0IHB5M2sKKzU2OTI1IDBjOWFkMGIyZmFjNTRhYjkwYTI3ZmIzNDNiMmNlYmMwMmQ5OTgyNjUgZGVjaW1hbC1icmFuY2gKKzU2OTI2IGQxODU1ZDBlNGUwM2MzOTM3NjEwNzY3Mjg5NDFmY2IwYmMwOGJjNGIgcHkzaworNTY5MjcgY2ZhZGQ3Y2M5YzQ1NzdhNTZjOTFiN2Q1MjRhZWUwODcyNTdjOTM2OSBweTNrCis1NjkyOCBhNDRjNTY0MDI2YjgzMTQ4NjA1NWZiMTRlYmM4YzdkNDU1ZjMxMjY0IHB5M2sKKzU2OTI5IDA3N2M2ODE4NmUyMzc3ZDQ1YWEyN2IyYTZiNWE2Yjg2MGE5OGQ1MzEgcHkzaworNTY5MzAgY2Y5MTM3N2UyNDQ0ZTQxNGE1YWU0MjI3YmU2ZTdiMjUzZjNhYmYxNSBkZWNpbWFsLWJyYW5jaAorNTY5MzEgNDIxZjlmMzU4ZTRmYmI0Yjk1NzgzNmE2NDFhNWViOTQ3MTA4MmQ4NiBkZWNpbWFsLWJyYW5jaAorNTY5MzIgMGMwZTM1NWNmNzQwN2NkM2VjNDY1MmY3YTAzOWRjOTFhMWJiYjhiOSBweTNrCis1NjkzMyA4NDQ3ZWNkMWJmNDU4MWI4OWE1M2ZmN2Y5ZjQ3NTUxNmFiNmQ3ZmY5IHB5M2sKKzU2OTM0IGE4Yzc0MjQyNTM1NjJjZDRmNGMzMThkNDExZjZlMWYxOTg3MDRkMjkgcHkzaworNTY5MzUgZTBmNjIyODZhOWE0NTRiZDNmOTNlZmJhZTcyMGU4Njk2MWE2MzE4MiBweTNrCis1NjkzNiA2NWYxZDQxOWY2MzEwOWZlNzcxZWI4YWRiN2M4NGY4Njg2MmYwYzU5IHB5M2sKKzU2OTM3IDI3NjMzMGY0MmU3OTM2YjQ2ZjBhYWM0ZGZmN2FjMWZjNDljODA1ODYgcHkzaworNTY5MzggYjY2MjVkMmIzNzhhZjEyZGYzMjU4YmYxOTg5NjFlOGU3ZmVmOTkyMiBweTNrCis1Njk0MCBhYzE5MmY4OWMxMDkzY2EyMDFiMjFmMTMyZDVhNmNmMzdkNDA1NzA0IHB5M2sKKzU2OTQzIGM2OWQxMjI2NDNkNTBkM2QzYjU0YjFmNDlhOWQ0Y2NiMTAxZjEwNzggcHkzaworNTY5NDQgN2FiYWNjOWUzOTk1OGYwODU0M2JmNjNlMGZjNGZmMWE1ZmFiOGM5OSBweTNrCis1Njk0NSAzZTY4MmFlOWQyOThlZjExOGE1OTJmZWM1NzcwYTYxY2M5N2M0ZWJiIHB5M2sKKzU2OTQ2IGI3YjNmNGUzMjUzM2ViM2ZmMDI2NmE5NDU1YTNjZWFlZjBiYTI4MzIgcHkzaworNTY5NDcgZmVlNWM2YmJlMTQ0ZGFiODM0ZWFlZjQ5YjQ2N2IxZDczZGQ0ZjNkZCBweTNrLWJ1ZmZlcgorNTY5NDggNGI0OTk1YzhlM2ZkNjc2ZTFhYWM1OTg3MzJjMGE2ZWQxMWI5Y2I3ZCBweTNrLWJ1ZmZlcgorNTY5NTAgYzNiMzRiMGY4MjE2YWUzOWUzMTYwZjIyN2ZjMWQxZmE5NjQ1Y2UyYiBweTNrCis1Njk1MSAzNDZhZmE2NThlNDQ2MDM4NTA2NTM5ZmFiMDgzYzVhMmU2OGI3MWQzIHB5M2sKKzU2OTUyIGU3ODEwODVhYzk4OWU0YzBjMWEzZjI1NGZlZTJjYzlkMTE0NDNmZDkgcHkzaworNTY5NTQgN2Y5NDljMTdjYzM2N2JiY2IzNGM1NTI1Zjc0MDkwOWJlZDRmZWM4ZCBweTNrLWJ1ZmZlcgorNTY5NTUgMGZjYzE4YWJhMzg1ZGU0Yzk2MDFkYjgzZDhmMGYwN2JiYWYwYWYwOCBweTNrCis1Njk1NyBkMDIwYjliMWQ5OGI2YWQ1N2E5NjA5NmE2MGVmNjc3NmUxYzdjNmQ3IHB5M2sKKzU2OTU4IGFlOWNmNDhlZDZmNzI4ZmQ3YjAzMjU3YTFmMTg0ODI4MGNhZjhlNGYgcHkzaworNTY5NTkgMGQ5OTUzZDdiODI3NTdjZmM0OTMyYzllYzE3NmFiYTVjMTJmZTU0NyBweTNrCis1Njk2MCAxNTAxOWVhZTM5ZTgyN2Y0MTQwYTNhMmVlYTNlMDNkNWM5ZWY5MmM5IGxlZ2FjeS10cnVuaworNTY5NjEgMTM4MTA0NmZlODk0NWJkN2MzNTgwM2Y0NDMzNTVjMmFlOTdhZjcxMCBweTNrCis1Njk2MiBiOTBjMjIwNDE2MzUxYTVlNmM1ODMyZWE3MGMwNDFjNmJjOThiOTYxIHB5M2sKKzU2OTcxIGViMmMwNjc2YzczZjFiMTZkZjJhNzg3NWM1OGMxODIzZTAxYTUwZGEgcHkzaworNTY5NzMgZDRlZTU0YTg4NDg1MGJjZTZjODYyY2ZlMjM1MjZlOTY2OTM5MWZkNiBweTNrCis1Njk3NCA1M2I3M2MyNzExYjZjNjgyYTRlMTJhOTU2NDI2OGE5YWUzNTYyOTgwIHB5M2sKKzU2OTc1IDU0MjYxNjM0YWQ0NmQ1ZTk2ZjAyOGQyMzk4NDNlZjk0Y2JlNzc0ODkgcHkzaworNTY5NzYgN2E0NWU4Yjc4ZDYzZmY0NGVlOWQwMWFjY2Q5YjkwMDE1YjUxZjlmMiBweTNrCis1Njk3OCBhNzI0Mjc5ZmM5MzFhNWYxYTBmZWU2MDE1Y2E1NmQwMDYxZjU0OTdiIHB5M2sKKzU2OTgyIGZiMDY5ZWFmYWY4OWY1MzFiMmNhMWY2OWVlMWUxN2JmMTk3NGFiZTAgcHkzaworNTY5ODMgNGJjZTk0ZDllYzMxZTQ1MzhjMzA2ZmZlNGMxNzg5Y2UyZDliZjVlYiBweTNrCis1Njk4NCA2YWY2YmI0ODI0ZDViZTYxYzBjZjA3Y2ZmNzcwMTJkMjdiY2JhY2NlIHB5M2sKKzU2OTg1IDQ3YWFmM2Y0YTAzOGNlOTRhYjg0ZmI3MjlkYjQ3ZTgyNDdmNmUyNTUgcHkzaworNTY5ODYgMGVkM2QxODI5MjBiOGY4ZDY0YmRmMzQ4YTJiNzI3MzBhMzMzZjRiMiBweTNrCis1Njk4NyBjZjliM2I0ODdmZGExZjY1YmQ0MGE0NjMxYmM5MTVjZTVlNmIyZGIwIHB5M2sKKzU2OTg4IDM3N2I0ODM4MWE0OWMwMzM0Y2EyYTU3MDQxYWM0MjlkMjZjYjk0MmUgcHkzaworNTY5ODkgNWFlYjI2MWRlMGJkYWNjOGY3YjllYTZkNDVmNWVhMzc1YTU2ZmZlYiBweTNrCis1Njk5MCAxZTQ5MzY5NjQ3NzZmNTdmZjYwOTIxZGViY2RhZmY3MDdiYzVkNzQ3IGFsZXgtcHkzaworNTY5OTEgYmJjZWY2ZGU0Njc0MDU2ZGI2YWVjYzI1NWJjNmQ2ZDVjYmMyMGY1NiBhbGV4LXB5M2sKKzU2OTk1IGQ2OGE3MWM5NjVlYzE1MDViNzFmNWUxMzVjYjllODBhMjY1MmRlZDIgcHkzay1idWZmZXIKKzU2OTk5IGJmZTIwMmJmZmRmNDJmYjQ0NGZlMDQzZmQzYzBkZjE2NzdlOTZhZDcgbGVnYWN5LXRydW5rCis1NzAwMCBiZGM0MDI5M2Q3NWVmYjhlYjBmMWZlMzQ5NzBiOGU2YzM0NDUyMDdlIGxlZ2FjeS10cnVuaworNTcwMDQgOWNjZjlkNjdiYjM0OGM5NWMwMWQwZTU3NzkyYmMxNzkxY2QyM2VhOCBweTNrLWJ1ZmZlcgorNTcwMDUgZDMzNzFmZDQ5MTAyNDVlYzJhOGE0NzhjYTA5ZWZiZDFjMjgyOWZjOCBsZWdhY3ktdHJ1bmsKKzU3MDA2IDIyOWQ2MzQ1YTczYTExMjQ1MzA3NzdkZmUyNmY4OTdjZjNhZTBkMTEgcHkzay1idWZmZXIKKzU3MDA3IDY3OTM3ZmVlNzVhZjZhMjcwODgxYTZkM2UxMzRhZTdiMTg5MWNhZTYgbGVnYWN5LXRydW5rCis1NzAwOSBiNjIzNzc3ZjIyYjBkYTQwM2MxN2I5OWVhOWFiZmZjOTBlYjJlMWUzIHB5M2sKKzU3MDEwIDNjMWEyMDM2NWEwNWJjMWEwNGIxYmRkY2FjYjM1N2IwYjc1MGE5ZDcgcHkzaworNTcwMTcgMjE5ZmUzOWVkZTk5ZjdlNDIzMThkNGZiNjk4M2U4NjVmZmJlYmJlNiBsZWdhY3ktdHJ1bmsKKzU3MDE5IDI3NGYzYWU0ZGNjNzgwMzQwNzU4NWMzNjYyOGNhNWYyY2RkYTBhYjcgYWxleC1weTNrCis1NzAyMCBiN2JkNGEyNjg5YzE2Y2U1ZDExM2M2MmI2MmRiMGEyOWQ4YmE2Nzg2IHB5M2sKKzU3MDIxIDg2ZmFmMjExM2QzNmY1OGRhN2IyMDVjYmEwNjE5OTE5ZWE3ZGUyNGEgZGVjaW1hbC1icmFuY2gKKzU3MDI0IGE1MjhmN2Y4Zjk3YTI5YzA0ZjJkZDNjZTlkMTZlNGY4OTQ4YzJhN2EgcHkzaworNTcwMjUgMWI5MWZhYTBkZTJkMWUzNmU4ZTFkYWJkZTgyOTdhYTkzYTc0Y2MzZiBweTNrCis1NzAyNiA5YjAyMTI4NTIxZTI3MDRhZWVkMGIzYjY3NGIxY2ZmZWMzZTJkYWFmIHB5M2sKKzU3MDI3IDMwYzBkNTlkYjBjNjQ4NTI3ZmNkZmM4OThkNzM3YTM2NmNjNmRmMTYgbGVnYWN5LXRydW5rCis1NzAyOCA1MzkxYjVmOGNkN2EwZTM2YWY1YTg2YWZiODk0NWZmYmUzMTk0OGRjIHB5M2sKKzU3MDMyIDEzYjIzYWRkZWY0MWQ4MjA2MTk2MzcxNzU4NTJhMzIzNmM0YWMxMTcgZGVjaW1hbC1icmFuY2gKKzU3MDM4IDNiZWVmMTZkODE2NzEzYzFkNzkzM2YyOWFjZGU5YjRjYzZiNDgzMTkgZGVjaW1hbC1icmFuY2gKKzU3MDM5IDdjNjZmMTExOWU1NTRlMDIwOTM3NjRkN2Y0YjYzMWMyNjk5ZTdhZTQgZGVjaW1hbC1icmFuY2gKKzU3MDQwIDRlYmVhNmFmZGM4NzExMDI4YzYxY2M5MTE5MTkwMzk3N2YzMWViZGMgYWxleC1weTNrCis1NzA0MSBlZDk4OWRkOTk1ZDI0NDIxMmJjNjQ2NWQ4MjZkYjg5ZTQ5MDkyODRmIGFsZXgtcHkzaworNTcwNDIgYWM1Y2U3YzQzZWU3NTlkZTQ5NTY3MDgxNmYxYmJhN2VhMGM0NTI3ZSBweTNrCis1NzA0MyBmNmFmMGIyNTk4Y2ExMmMxZGM1MzRmNjM4YWZlZTYwZDQzMGE2ZWE5IHB5M2sKKzU3MDQ1IDk4MDMwOGZiZGEyOWY5Yzg5MDY0NmIxMzliMjM0NGE4YWEwOTI2OTUgcHkzaworNTcwNDkgMjA0NzdjYmZkOTk2NzgwODU0YTk2ZDA3MGVjM2I1NjIzODZiY2EwYiBweTNrCis1NzA1NCBmNjhiNmJmNDYzNjYxZTJiZGUyMmRhYzBhZTA1NWU5NjE2Y2IzY2E3IHB5M2sKKzU3MDU2IGY4MjhhOTVhOWRhNmJhOTA4YzliYTBjMjY2M2RkMjJhM2JhOGQ0YzkgZGVjaW1hbC1icmFuY2gKKzU3MDYwIDQ2MjA2NjFlMDZhZmFmNDUxOTM4NTg2MDNjNGMxYWVmODA2Y2I2MWEgbGVnYWN5LXRydW5rCis1NzA2MSAxN2JlOGZiZWMxNThjNDViMzcyMGU1MTExNGU3M2YyNTBlOWVkZDMwIHB5M2sKKzU3MDYzIDI0NDk3MDE5YzQwNzM1NjRkNjQ5YWUxYjJiZGZjZmQ1NzNhMWIzMTQgbGVnYWN5LXRydW5rCis1NzA2NCA3MTdmZmIxNmI1ZDEyNTRmMjc5M2UzNWM2NGFjZGYwOTk5NDI0MDM0IHB5M2sKKzU3MDY1IGM2MmY2NjY5YWUyMmI4Nzc5NWJhMzY0OTQ3NTE2MzE0MDFhYTVhZmMgbGVnYWN5LXRydW5rCis1NzA2NiA5ZTE1MjliZjA0NDIyOGI3ZjdiOGExNmM1MzdkYjkxNzg1NjQ4MGVkIHB5M2sKKzU3MDY3IDcyNjFhOTFiZTAwMzY4MzA4MzVmN2U0YWNjMmE5NzZhOGU5MjM3ZWYgZGVjaW1hbC1icmFuY2gKKzU3MDY4IGIxYWJmODQ2Y2U4MTUyYzM4MDMwMzEyNjlhNmRhNWE1Y2E3ZjRlMjUgbGVnYWN5LXRydW5rCis1NzA2OSBhM2U3NjQzMTcwNWIyNjNjODY2NGIxNTFiZWMwNTM3MDE4NDIyN2RjIGxlZ2FjeS10cnVuaworNTcwNzAgZWFiNzVhZTMyMTJiZGIyZDRjYmY4OGVmYmViZjk4ZTQzYzk1NDg1OSBsZWdhY3ktdHJ1bmsKKzU3MDcxIDNjYzJjYzc5NTc2NWZhOTg0Y2FkZDgzZjc0M2Q3ZWFiNGQwYjZmOWMgbGVnYWN5LXRydW5rCis1NzA3MyBkMzM2MmM0OTUyOTYwYjRjMjNmMGVlYzY1MmIzMmFiZjg5ZWJlNzEwIGxlZ2FjeS10cnVuaworNTcwNzQgNzkyNmE4Y2E5MjkwNDJlYTc5MTc4YTc3ODYyNzhhNmNlODExOWQzNSBsZWdhY3ktdHJ1bmsKKzU3MDc2IDEyMTIxM2JiZjM1OGY4NmE5MWRkZDE3YTljOWI3YmVlYTFlYTcxZGQgbGVnYWN5LXRydW5rCis1NzA4MiA0YTQ4NzE5MWZjNTRjMGExNzA5ZWUwZGM3MjI4OTRkN2I0NzZlZjg3IHB5M2stYnVmZmVyCis1NzA4MyA2NmE1OGMxYzI4M2IzZTU5ZTc2NWU5OGFlOWM3YTk4MDczNTI0MjUxIGxlZ2FjeS10cnVuaworNTcwODQgYmJiNGY0NjYzY2QzMjEyYzhkMTAwYzFhZGFiYWI0ODFiNjliMzFmMiBweTNrCis1NzA4NSA3YTU2MmEwMDk3M2VkNGQzNTI4ZDgyNzRlMWFlOWI1N2E2MTY0YTY5IGxlZ2FjeS10cnVuaworNTcwODYgY2VkMjdiOGYwODliYTViMDc2M2Q5MzZiMDUxMzkzYThhZTFmNTc2YSBweTNrCis1NzA4NyBjYjhjMWRkN2VlMzJiMDI3YTZlYzM3Yzk4ODUyMWVkODFiNzhjYTVhIHB5M2sKKzU3MDkyIDYwM2RjNTNjNDcxNjIwZTk1OWE4OTZiYWQ3Y2M3MzNmMGUwNjhhODYgbGVnYWN5LXRydW5rCis1NzA5MyAxMzViM2NkNWU3MjMyZWVmZjIxOTFmZTBlNDVlYTUwNzc5ODczYTllIHJlbGVhc2UyNC1tYWludAorNTcwOTQgZDI2NDEwN2M3ZGE2ZjZhMWJkNjM0NWM5NGYwNTVmZDE1YmU0YjQ4NCByZWxlYXNlMjQtbWFpbnQKKzU3MDk1IGExNzY4YmJkNzY4MTllZGI0OTg3ZTE5OGQ2Njk1MGM0YWMxNjc5NTAgcmVsZWFzZTI1LW1haW50Cis1NzA5NiBkOTdmZDQ0Nzc3YjJjMTJjODhmZTYwYzU5ODEzMmVkZWFkZTk2YzU4IGxlZ2FjeS10cnVuaworNTcwOTcgNGQyYWE0YmZiMmQ2MDE0YmU2MWEyNDNlNjg2ZTI2Y2Q0NWU4NmRlMyBweTNrCis1NzA5OCBhZjE4MGQ1NDZlYzIyMDI4ZTNlMTRmMzFhNjIyM2YyMWIyMDI4NGVhIHB5M2sKKzU3MDk5IDhkYmM5ODFmMDQwYjhjNGQ2ZjU3NTgwODhjNmM1NmI4MzcxZDNkODIgcHkzaworNTcxMDAgMTI0YmQyODI0OTNkNTU2ZDMzYWFhNWM5MWY4ZDU0MDYwOTU3MTQzMCBhbGV4LXB5M2sKKzU3MTAxIGQzYTg5ZDlkMmY1ZTA2YWYxN2M1ZDkwOTRhOTk3OWRkZjdjOWI2MmMgYWxleC1weTNrCis1NzEwMiA0NTE4M2QwYjIwYTc5N2Q4MWZhM2Q0YTJmMmM5YjkxNDU1ODQxYmNiIHB5M2sKKzU3MTA0IDg5YTNjYmExY2Q1MjQyMzA3ZjQ2M2QwZmRlNzI0YjIxZWQ2MzlhZjMgYWxleC1weTNrCis1NzEwNSBmMWEyZDUxZjFjYWIyODRmMTY3OGZmYzc1MmMwZjRmNzUxZTEzYTM3IHB5M2sKKzU3MTA2IDE4MTA0ZGJhODVlMzM3M2U4MTQwYmNkNzIwMjRmYjk1YWRiNTE3ZWIgYWxleC1weTNrCis1NzEwOSBlY2I3YjJkZDNhZjU4MDNlOGMwYzMzODEwMGU4MTMyYTk5NDAyOTRmIGFsZXgtcHkzaworNTcxMTAgMzQxMjQ2MTNiYzRkZGFiZmE3MTEyMDlhZGJiM2YyZjM1MDZiNjNiOCBhbGV4LXB5M2sKKzU3MTExIDQ2ZjQ4MGUxMTY2Yzg0YTdiZmVlM2IxM2Y5M2NkYTI2OWQ5ZmIzN2EgcHkzaworNTcxMTIgMGRlYmY5NDU1Y2RjMTc3NTg0OGQ3ODkwNDcyOWEyZWQzMzkyMWQ0OSBweTNrCis1NzExMyBhNmM0ODkyNWRlNTNiMDg2MGRhZjg3OGI1M2I0MDEyMTdhZTA2NDhhIHB5M2sKKzU3MTE0IDIwYWVjOWYzNDU5OGQzNTM5MTFkNWQ2NWM3Zjc2YjQ3YTkxOTU1ZTEgcHkzaworNTcxMTUgYTI4NTlhZTg5ZGE5MWExYmViOGFjNzdhNjA2YjNlYTUwY2UyM2M3ZiBweTNrCis1NzExNiA0OGEzMWIwYmY1MDE4YjM2MGYxYzhmOTEyNTc1ZGM4Y2E4OTAwNTI3IHB5M2sKKzU3MTIwIGI3YTViYzY5ZDJlZTViYjk0MzcxZjlmZjZmNDg1ZThkMzg2Y2FmZGYgcHkzaworNTcxMjMgN2IzOTFhNGVmODljZTJkMTNjMjlkMTIxMjk2ZTUzMTk5YTg1ZjI4ZiBsZWdhY3ktdHJ1bmsKKzU3MTI0IDEyZGQ2Mzc3ZmY4NWJlZDc5YWYxYWEzNzQ3NTQ3MWYzNmZkM2FkNzAgbGVnYWN5LXRydW5rCis1NzEyNSAyODFiNTE4ZTRiY2MyOGNhNDNlN2VkNjRmMDhiODU1MWU0Mjk2YzllIHB5M2sKKzU3MTI2IGZmNWFkYjMzNzRhZGNkZWNjNTU3NTE5MTY2OGMyODg4MTZjN2ZjZGMgcHkzaworNTcxMjcgMjA1NmQ4MzUzYTY4OWI1MTRmYWMwMjFhNDU5ODY0NWU4MzVmYTUxMCBsZWdhY3ktdHJ1bmsKKzU3MTI4IDI2MDZhZWFhODZkNDA2NWQ0YjVlY2Q4NjdjM2RkMGYyYmE4ZDIwMjYgcHkzaworNTcxMjkgZmNmNmRjNTFhZjU0MzFmNDI0MDVlYjFjMDAzMzcyZDVlOTQwOWFmMyBweTNrCis1NzEzMSA0YzVlY2MyY2NhYmRkNTJjNWVmMzlmNDdmMzQwODJiZjkwZTgzZWJiIGxlZ2FjeS10cnVuaworNTcxMzIgOWZjMjFjOGJhYmI5NmM3NjNkZDkxNGNlMGJkOWIyYmNkZGFlN2MzOCBweTNrCis1NzEzMyA2ZjQ5MjI4MDM0MTE2NmEyYTQ3YWNiMzAzMjQwZmE3YzAzMjMzZWFkIGxlZ2FjeS10cnVuaworNTcxMzYgODYxMGExY2E2NTBiMzQyYWVmODAxYTQzMTk4ZTYwZDVjMGNiYWIwNiBsZWdhY3ktdHJ1bmsKKzU3MTQyIGE1ZTk4NGVkYTQ1YTIwY2U3MDAzODhhNTMyNzUzMmY2NzJmODY4MzYgcHkzaworNTcxNDMgZTM5NDQ5MDk1Y2M1YWI2YWY2MTZhZTA5MWRhYWQyNzQ4ZWJiZGJkMyBweTNrCis1NzE0NCBjYzdiNWJjMjk3YzRlZDUyYTc1MjBjZTc5NDRiYzQ5ZDI0NDBiNzZlIHB5M2sKKzU3MTQ1IGE4Y2ExNGNlYzExY2Q2OGM2MDEwZDI0YmI2ZjA0ZmJjMzEyNDVmNGUgcHkzaworNTcxNDYgYzkxNjczMTMyMWMwYjAxZTgzOTliZDk2MzJiMzVjNjYwZjBmNDJmNyBsZWdhY3ktdHJ1bmsKKzU3MTQ3IGYyZjBlOTVhNzk3YmM3N2ZlMmIwMzk2Y2Y2YTc0Mjk5NjY2NWM3NWYgbGVnYWN5LXRydW5rCis1NzE0OCA1NmQ4Yzg3MWRjODZiMzlkYmRlZWVjOTUyZjk2ODVlMDYxM2UzNDJlIGxlZ2FjeS10cnVuaworNTcxNTAgOWM0ZjViMWQ2YjlkYjVmYWRkMjhmMWU3MTZlOTRlNTZhMDUzYjBmMyBsZWdhY3ktdHJ1bmsKKzU3MTUxIDk4Njc3NjQ1Njc5MTM2NWUwN2IzMjVmY2IyOGVhYzViODA2YWRhNGUgcHkzaworNTcxNTIgNzQ0NDY1MDlmMGYyNzZmMDJhNjVjMDAxODZkZWYwYTg0M2UyZDFlNiBweTNrCis1NzE1MyA5MjUxNWI2NDliOTIyN2UxNDQ3NjI3NjVkNjcwNTk0OTlmZjE4ZTQ1IHB5M2sKKzU3MTU0IDFiNGM5NTk3NGE3ZGE3MmRmODc5YzdkYTMyNTg2NTFkZWQ5ZDRmYzkgcHkzay1idWZmZXIKKzU3MTU1IDE3MjFmZjVlMjg2NGQ1YzA3YjIxMTNhMWJjNTg3ODgyYmU1YzVkN2QgbGVnYWN5LXRydW5rCis1NzE1NiA2ODc2YWU5MTdmYjFiYWM3MWJjMjk2MDFiNmViODBiNDY4NTAyZTk4IGxlZ2FjeS10cnVuaworNTcxNTcgYWQwNjMyN2UxZjM5YTczY2NkYzkzOWJlMDA4OWFmYWJhZGU3MmEwMyBweTNrLWJ1ZmZlcgorNTcxNTggYmMzMWRmY2Y3ZGZhMGQ0MTRjNGQ1YTRmZGQ3NTBmYmJmMjIwNDNkZSBsZWdhY3ktdHJ1bmsKKzU3MTU5IDM3ZDcwODU0ZDI1NTJjZTdmYTk1NTExMjhiMGFjZTM2YTlhNThlMWMgcHkzay1idWZmZXIKKzU3MTYwIDM4ZGZlZGYxZDJhYThhNTZiZjI3ZTg5YWUzNjFkZDdiMDg0ZDI2NTYgbGVnYWN5LXRydW5rCis1NzE2MSBiODA1NDEyNTFlMGVkMWVmZTM5MmJiOGJmMmNkZDk2MjMzZWEyM2IzIGFsZXgtcHkzaworNTcxNjIgZDg4NTkyZGQzYTYxMDkyYWM1MWU1ODQzZDBjMmMxNDFjMDgwNGU2NCBhbGV4LXB5M2sKKzU3MTYzIGM1OWY5OTQyNjgyYmIxZGNlY2U3MjljMTM2ZTM0YzljZjNhMmU0MmIgYWxleC1weTNrCis1NzE2NSBkZmZiZmU2MDc3NzRmMDczZmZjODljN2U4NmNjYzc2MzM2YTE1MGU4IHB5M2sKKzU3MTY5IGUwY2M4MzNmZGQzZWJkZTk3MjQwYmU0MjAyNmYwNDYxMDhmODhjYzYgcHkzaworNTcxNzAgYTU0ZDg2NmRjN2I0ZWZkMmViN2E3NzkwOGQ0Y2M4ZjZhZTMxMDgxMyBweTNrCis1NzE3MSBhZjEyYTQ2ZGY3MzdhZDE2YTZiYzkzNGFjZTE5MWI2ZTNhYWNiOWQ1IHB5M2sKKzU3MTc1IGE5MzFjNjAxNWI5MTdhN2ZjNjdiMDNlMjQzMmIwODc0MmE1NTBiZjkgbGVnYWN5LXRydW5rCis1NzE3OCA2OTc1MGIwOThlYTI0N2VkOTM3NjQ2YjczYTdlMmJmZTcxZWQ3MTljIHB5M2stYnVmZmVyCis1NzE3OSAwNjk1MGJkMDRlNjk2OTJjMjhkNGYzMTkzNjIzMzYxN2Y0ZDQzNDkyIHB5M2stYnVmZmVyCis1NzE4MCBhZDQ3ODhkZjUwNGUwOTY0MWUzOTU2MzFiODJhNWVhODk4ZWQ1MmEwIHB5M2stYnVmZmVyCis1NzE4MSA4NWMyMmI0ZDQ0NTU5YjNjNWY0MjY5ODc0ZWNhNmQ3M2M3NWI4YzU2IHB5M2sKKzU3MTgyIGIzY2E3ZjViNTM3YzVkNzJiZmEwZjlmY2Y2MzFjZDkzMTM1ZDY5NzQgbGVnYWN5LXRydW5rCis1NzE4NiA4MWI0NWMwZGEyYzhiOGE2NWIzMTNmMjEyNzFlM2YyNTQ2MGQyNzI5IHB5M2sKKzU3MTg3IDc2ZTA0OTczYjE1ZGZkMGNmODIwNmFmZGZhOGMxMDAzYjMxMmFhNDggcHkzaworNTcxODkgZWQ5N2E5ZDFjMzQ3MzQ0MTJhMjQ0ZDI3NGM5YzA1YTc1N2RhNzhkNSBhbGV4LXB5M2sKKzU3MTkwIDBiYzljZjFjZjk1OTE4OTgyOTVkYmQ2YTBkNTJkN2QzYzVmY2Q2MWYgYWxleC1weTNrCis1NzE5MSA4ZGNlNmUyODcwZTgwOTNlNTYzZmJmNTEwYzg3YmE1YjhjMTA4OWE1IGFsZXgtcHkzaworNTcxOTIgZjc4YmY1ODQyNzllNmRkNzM3NzJjNTQ0N2RkZmVjNjM1NjM2Mzk2OSBhbGV4LXB5M2sKKzU3MTkzIDJjNTFiZTk5MDRkZTFjY2U0NjgyYjcwMmU5ZTViMzgwZjQ1NDEzZjUgcHkzaworNTcxOTQgN2U1ZWZmODdkNjY0YTAwOWY5ODNlMGFmZmY1ODk1N2Q0MTk5M2M2NyBweTNrCis1NzE5OCBmY2EzNTQxNjA0NTg1MThkYzk3ODIyYjY1N2JlYjhmMGYzMWFlYjE3IHB5M2sKKzU3MTk5IDZiNTMwZTAyOWIzYzNkODNmYjc1ZmFhZGQ3ZjcwYzEwNGRkMjE1NmEgbGVnYWN5LXRydW5rCis1NzIwMCA5NWIzN2NhZTQ3YzRmN2VjMTY2MzM5OGI0YzUyN2QyMjNhOWE2OTU0IGFsZXgtcHkzaworNTcyMDEgNzM5ZDMxMDUwOTdmZTAyMmViMzRhNjE0OTMxOTZkMGQyOTU3M2U0YSBhbGV4LXB5M2sKKzU3MjAyIDY5MmY1N2E1ZGM3NmExOWEzZjk2YmIxODdlMzk0Y2RiOGI2ZmUxZDggcHkzaworNTcyMDMgZDAzZWI3NzQ1NzZhM2U2ZTQ5MTkyZjM4YTM5ZjY5MGJhYWY5N2M5NyBhbGV4LXB5M2sKKzU3MjExIDcwNTQ2MTVmMzdmZTYwM2E2NmM0ZjZmMDA4MmQzNDdkZmZlZDZiNGUgbGVnYWN5LXRydW5rCis1NzIxMiBjZDQ1OTFiNzU0ZTAxMWQzNmE4YTI1OWI3YWFlZWNkOGYzZmNjOTNlIHB5M2sKKzU3MjE0IDU4NWQ4YmVjZTgyNjdkMDU5OTg2ZmNmN2IwYWJiMjVkMjNlZmVkM2YgcHkzaworNTcyMTUgOWEyZjM3OTQxYjJiMDVjYjU0MTAxYTVmYzA3OTJkNzFhNWQ4MjU1YyBhbGV4LXB5M2sKKzU3MjE2IDBmNTBlMDkxYTM2ZmVjNmI3ZjU2NGRlMjAzMTRjNDA5ZDZkMjBiNTMgbGVnYWN5LXRydW5rCis1NzIxNyAxNTA0N2IyYWNkM2Q1NTQwOTI5ODNiOWJkZTJmYmUyMTg3ZDc3Mzk0IGFsZXgtcHkzaworNTcyMTggMDQ5OTNkOTZlNzM4MTYzMGNiOTBmZWNkZGM0YmYwODE4NDJjNjNjYSBhbGV4LXB5M2sKKzU3MjE5IGMyM2RjZDk0ZGNjZTAxYjYwNGUyYWQ5YzNlZjMyNjEwMWE5MjhiNWYgYWxleC1weTNrCis1NzIyMCAzNjQ1ZjBiOTQ5MDhiYmFkYmE3MzY1M2I3NjM5MGMxMjU5ZmVmM2FlIGFsZXgtcHkzaworNTcyMjEgYWY2YTcxOTBjYWJjYjNhY2Y5YzMxYjcyZmY3ZThlMDFhYjZiNjMwMiBweTNrCis1NzIyMiBlNzFjMzIyMzgxMGYyNDViZTBkZDUzZWU2ZGQ3YTMyMmM5ZGRhODFkIHB5M2sKKzU3MjIzIDJmNDY3OTMwMTEzMmU4NWU0OGI2ZWU1ZDg1NzI5NGQ0OGZmZTdkZTQgcHkzaworNTcyMjQgNWFiYTk2NDY0Yjg3OTdlYTEyMDNlZjU4ODdhZTVjMDQzZjM1NzgzZCBweTNrCis1NzIyNSA1YzA4NDcyY2ZjMzQ1YzhmNmI1MGY4M2QyMmEyODlmMGM2OTJmMjU0IGFsZXgtcHkzaworNTcyMjYgOTU0MmUyZTZlZjAyYjJmOGE3YzczY2Y3ZDc4NTcxYzRiM2ZhMGQ0NCBhbGV4LXB5M2sKKzU3MjI3IDQzYjM1NGE4Zjc3M2NmNTI3YjI0NzJjNDEzOTQ3ZTk3ZTlhNDhmYmQgbGVnYWN5LXRydW5rCis1NzIyOCBkMGYzZDI5YjcwOGQzMDhiYTBlNjQzMmFjMGU2MGFiZTgzYjM4NGYxIGFsZXgtcHkzaworNTcyMjkgZGRmZjUyMWFjN2YxYTkxMTYwNTU4M2I1NzY2YzBmNzQ3YjgyYWRlMiBsZWdhY3ktdHJ1bmsKKzU3MjMwIDhkN2ZhOGE1YTdlMzhmZTViNjJjMjBjZDUzN2U1Zjk5MTAzMGQ2ODMgbGVnYWN5LXRydW5rCis1NzIzMiAyYjRmZWUxZDQ4NjFhYzNjYjgxZjhmMzA3ODgxNGZhZGQ2NGI4OTdkIGFsZXgtcHkzaworNTcyMzcgNDQ3NGZmMTBiYjBhMjJiOTVhYmVlYzhlZDU0Y2JlZWY0ZTUwZDQ4YiBweTNrCis1NzI0NCBhYjdhNmU3NGJiZjIzODE0Njk5ZWNmNDMzNDhjZDRhMDM2YTU3ODk2IHJlbGVhc2UyNS1tYWludAorNTcyNDUgNGYxMTI1NTk1OGJlOWYyNDc2OWM1ZDY1YjM4MWIzYmNiYTI3NjJlMSBhbGV4LXB5M2sKKzU3MjUxIGMwNDBkYmI2OWRmNzFjOTEwYjI3MTQyMzcyYTc2NDFiNTg2N2VhNTAgYWxleC1weTNrCis1NzI1MyBlZTllYmJmNWYzZGM4YjAyZDI1YjliNDdmNDc0ZjA5ZTZkYjZiYzhiIGxlZ2FjeS10cnVuaworNTcyNTQgNjJlZWU3OWRlOTIzYWM3ZDRjMTE2ZTRlOWMzNTM3NmMwZjFlNjEzZCBsZWdhY3ktdHJ1bmsKKzU3MjU1IDFlZmU5YjEwYzRhNmYzMmFiYTZjNTRlZGNlNjA4YzJiOTY2ZGQ1NTggbGVnYWN5LXRydW5rCis1NzI1NiBmYWNkZDc0YTBiZGQxYjc0ZDMzMjBjODIyMGZiOTVlZjY4YTdjMjQxIGxlZ2FjeS10cnVuaworNTcyNTggNWJmNjhmYzczOTIzYTk2OTg3YjcyMGZiNDI1MWQ1MDNmNDZlZTcxOCBweTNrCis1NzI1OSBmMzE4MWU5ZmRlNGQ3YTBlNWI0NjYzZTMzMmI1ODNlNWVlNTBkMzkxIGxlZ2FjeS10cnVuaworNTcyNjAgZGU2ZjMwYzYyNzMwNTQzNzA3MmQyYTkyNWRlNGRhZmMwM2I2OTY0MSBhbGV4LXB5M2sKKzU3MjYxIGQ5ZTM3ZDI2Zjc4ZTk1OTIzNWM4M2UyNjg4YmVmMTdlM2FjM2ExMzMgYWxleC1weTNrCis1NzI2MiA2ZDI1MjgzOGQyMzA2Mzk3ZDFiMDdhZGMwZTg5MTIzNTVhNjBjM2E5IGFsZXgtcHkzaworNTcyNjMgYjkzNzkyY2VkOWU4MGYxNjZiYWQxZDhlZjAyYjY3ZTAyZDI0YWRjZSBhbGV4LXB5M2sKKzU3MjY0IGFlY2ZmOWUwZWVhZTRkOWY4NDcwMzY3MTU5Zjk1YWMwYWI0YjIyNDMgYWxleC1weTNrCis1NzI2NSA2MDU0ZDdkMjM0OWYwNDYyNDZhMWY1NDE0MTM5NGZlMjE0ZTZjMTk5IGFsZXgtcHkzaworNTcyNjYgMjA4MTExNjEyNWNlYTlmNTY4MmRjMGZlYzRiNmY1NTVmMjJiOWE3ZiBweTNrCis1NzI2OSBlNzY5NmZjZTMzNzYxMGJhM2RlMWE5NDlhM2ZjMzI3ZTI2NGU2ZTA5IHB5M2sKKzU3MjczIGEwM2YzNzhjM2JmN2JmMmM4MWNlNWQ2YTg5MzBhNTU2ZTQxOGI3NDcgYWxleC1weTNrCis1NzI3NSBjOTQ3YTA0NzY4ZTQ1YTIzMTFkYzBkYWExZDI2MTQ2NTI1ZWM5ZDZhIHB5M2sKKzU3Mjc2IGUzMWIzODdlNmQ3NzVjMTA1YWIwZGRlOTAxYjNjOWU0ODY4NGU2MTAgcHkzaworNTcyNzcgMDA4MWRiYWNiN2FhNjEyMmNjM2UzNTY4ZGU2MGRiYjFiNmQ1MzNmNiBweTNrCis1NzI3OCBkODAwYTljZGFiNzY0NjQxMzg4MGQ2MjZmMWQ0ZjQzMDk3MGJjMDVlIHB5M2sKKzU3Mjc5IDNiNGUzOWU4MzE5MzIxMmMzZTU2NjNhMTdkMzkwODg2OWMxMGFjYzAgbGVnYWN5LXRydW5rCis1NzI4MCA4NGM1YzA1MjRkM2NlZjdkY2Q4MjYxZmI5Y2JkYWIzMjUzOGM0NGYyIGxlZ2FjeS10cnVuaworNTcyODEgMjY3M2NkZWQ4ODU1NDUxMGMwMGZiZDE1M2U5N2Q3Y2YyYjZhNGVkOCBweTNrCis1NzI4MiA3ODIzNzBjOTM1NzU4ZTY0MzM0YzRiM2UyMDllMWQwODA1MzRiNDExIHB5M2sKKzU3MjgzIDhiYWQ4NzIyZjBlNjQyOGQyYWI3YTA5Y2UxYzRhNzc5NjRjMTIxNTQgcHkzaworNTcyODQgMDkyZjAyY2YwMThmOWQ5Mzc5MDAzMDIyOGM0MjhlNmQyZGVjN2E4NCBsZWdhY3ktdHJ1bmsKKzU3Mjg1IDFiZjE3ODU1ZThlODVmMWYzNzYyZTFiMTI1YmFjNTU2ZmFkZjhjOGMgcHkzaworNTcyODYgOGI2NDAwZjk3MTZmZWUzZGJmOTRiODIyZWIwMTU2YzA0MGUxYTdlYSBsZWdhY3ktdHJ1bmsKKzU3Mjg3IDVhMjBlZTgwNTgxOTU4YjAxNWMyOTNmYzkzMTNkNzU3N2MzNjY5MDQgcHkzaworNTcyODkgMGIwNjA2OTY2MGMyMmJlYzJlN2Q3NDg1OTViODllNDk2MDdiM2UyNSBweTNrCis1NzI5MCA5ZTgxYjIyNjg5ZDJkMTdkYzNkMjE1YTQ4MTRiYjY4YzY3ZTI2ZGIwIHB5M2sKKzU3MjkyIDY4OGNkNDM5OGY0NDY4NTYwNmEzNDI2MjgyZmI4MWFiNGIzZmU2MTYgcHkzaworNTcyOTMgNTA5OGM2ODc5MDkxNmY0ZGMyN2NjYjIwOTYxMzI2NGRkYjhhNzFlYiBweTNrCis1NzI5NCA1ODkxNzUxNGU0MjNlY2YyMWYxYWQ2ZGI3YzYyMmM3YjM0MTYwZTc3IHB5M2sKKzU3Mjk2IGFhZDE3YjFhYjBjOTJkYjNiYTgxZmJlNzA0NWZkZWIzNTNiZmIxOGEgcHkzaworNTcyOTggMmVjMTZiNmI0ZDA0NDIzNmI1ODk4YTQ3ZjgzNzkwNDUwZGZhMmViMyBweTNrCis1NzI5OSBlNGFkZTE2YTY5NGZmNTQ2ZTBhNTNlYTU4ODcyZTZhYjNmNzRiZTFiIHB5M2sKKzU3MzAwIDI2YjI5ZjdiOGZmZDhlZjlmYWFjM2E4MDhmODUxM2ZiYjI3ZTcwYTkgcHkzaworNTczMDEgMTk5NTA0ZmI5MWM1ODBlNmM2YWZhZGYzZGRjMzlmZmY1ZGE0ZTZhYiBsZWdhY3ktdHJ1bmsKKzU3MzAyIDdmZTI4NDhmZDQxZDc0NmNiODk0ODRmMDBiMTZiOTY5ZDA3MWU5NjggcHkzaworNTczMDMgYWU4M2VmYjczNTA2ZDI1N2VjMzEzYWE3MDBmZTA0NDgzNTc1NDQ0MiBweTNrCis1NzMwNCBlYWUxMGQ5YzljNGVlZGI1MTk4MTIxODZiNzQzZGRiOWVmNTFmMmRkIHB5M2sKKzU3MzA1IDUwNmI5MTdkMjM2M2E4NzBmYzYwMTY1MWVjNzg5YTA5YzBiNTY4MTUgcHkzaworNTczMDggMzI4NDMwN2E3MzUxOWE5ZDViZjQ1NzIzYjIyODM1ZWQyZjc0NjJlOCBweTNrCis1NzMxMCBmMzQ3NmU5YmJlNmFiMzYxMDYwM2YzOTA5MDI2Mjg1NGRjNjQ4MGQwIHB5M2sKKzU3MzExIDdmNGQ5M2UwMjk1Y2FjNWI1ZmQwZWJjZTc5Y2IwNTU2ZjMyYjYzMzYgcmVsZWFzZTI1LW1haW50Cis1NzMxMiBmYTlhNDBlZjA3ODBkZDc3ZmNjYWM3ZDdiOGY4MThiNWY1ZGI5MjA0IHB5M2sKKzU3MzEzIDA2ZGU2MmYzM2MzNzdkNjMzYTFiZmM0MDZjYzgyNWRhYWRiYTUwNjUgcHkzaworNTczMTQgYTlhNGNmOTFjYjdlN2I1Y2ZlYWIxNWRhYmIzMGFmZWQzMTNlMmZlOSBweTNrCis1NzMxNSA4MGJjNjg4NTBhMDg2MGRiMWM3ZWZkYzE3YTExNWUwZGY2NzlkODM4IHB5M2sKKzU3MzIwIDI0ODBiODY0YmUwMzk3YTYwNWE5NjgxMjk1MjYzYTc0YzQ2YTMzMDQgbGVnYWN5LXRydW5rCis1NzMyMiBkZTFiYWNlODFlNmVkMmE0ZTUzYjg4YTNiNmNlODk2MThiZjQ4OTlkIGRlY2ltYWwtYnJhbmNoCis1NzMyNCA4ZTg3ZDlkNmU4MTI3NWMxMjRmNWE3YjE2MDhkMmI1MTJhZTBiODIxIGxlZ2FjeS10cnVuaworNTczMjUgN2E3NWNkMjhiMTI1ZDNiNmViOTkzYWM2MmYwOTY5MTg2ZjI4ODA0NiBweTNrCis1NzMyNiBiMzQ4NTUwYTJiZmM2ODhkNmFiZTdhNDdkMzZhMjA5YThlYzk2YWU4IGxlZ2FjeS10cnVuaworNTczMjcgYmNiZGM5NWRmYmE5YWE1NDNmMDQxM2VlMzk3MzVhOTZmNmIwYTI5NiByZWxlYXNlMjUtbWFpbnQKKzU3MzI4IDkwODczMzdmM2EzZjg5OTFkZmUxMmY3MTRkOGUzYWFiZmNlMDM3OGEgbGVnYWN5LXRydW5rCis1NzMyOSBhOTExY2Q5ZDE5ODkzYmU4ZjRkZjg5NDhkMzljYmMwN2RhNzBjOTM3IHB5M2sKKzU3MzMwIGRkZWZiZGJkYmNiNTFjZTBhYjE4N2E1MjU1ZjMzOTE0ZGNkY2UxNDggcmVsZWFzZTI1LW1haW50Cis1NzMzMSBhZGI4M2Y0YWM0Y2JlNWUyNWMwYTJhY2VmYWM1YzYyMWMxMmQ1NTdiIGxlZ2FjeS10cnVuaworNTczMzIgNzI5ZmU5OWI0MGE1NzJkZWM5ZWZhY2FmMTZjM2M0NWE2YTlmM2VmYyBkZWNpbWFsLWJyYW5jaAorNTczMzQgNGVkZmM1OWI3MmIyYjRmMWRjOWMzYzhlOGQwNGZjZTcyNGNmZDAwMyBkZWNpbWFsLWJyYW5jaAorNTczMzUgYWY4ZmM0NmQ0YjU2MTc4ZWZmMzYyMDMzMDA0NTQ2MjI2MWM3OGEyZSBkZWNpbWFsLWJyYW5jaAorNTczMzcgNzFjNjhkZTNiMWM1NzRkOGFhYWE2YzdiMDFjZjQ2MDU4NzdlNjgyMiBweTNrCis1NzMzOSBmNTNmMWExYWMwMTY0MGY4YjNjM2JiODA3YzFkN2UxZDZmMDQwY2JkIGRlY2ltYWwtYnJhbmNoCis1NzM0MSBhMmNjMDE4ZjM3MDBkZDQxOWZlM2FiNGY2M2M0N2MwOWViMDM4MzdhIHB5M2sKKzU3MzQzIDkwODBjYzc2ZGE5OGYwZTEwOGYxZWU5YWM4ZmY0ZTFhNDRmMTQ1NjMgbGVnYWN5LXRydW5rCis1NzM0NSBlMWNkZDZlZTkxMGU3ZGIyM2Y2YjdhMzhmODcwMTY5ZTZmNTM3YmMwIGxlZ2FjeS10cnVuaworNTczNDYgMDBmOGIyNDgyNzY0Y2Y2Y2ZjYjhlMjJjYjQyNzY3NzgxNWE4ZGJmZSBkZWNpbWFsLWJyYW5jaAorNTczNDcgMDMxOGFiY2ZhZjM2YTZmZDY4NGZiODEwYWYxNzYxNGVjZWJlNDBjYyBsZWdhY3ktdHJ1bmsKKzU3MzQ4IDk1MjA1NzljYzMwYmZkY2E5YTc3Mzk3ZWM4MzcyMWRlZTk2YTAxM2YgbGVnYWN5LXRydW5rCis1NzM0OSA4MTg4NmUwNWZkNDAxNmFiYzRlYmMwZWE4MWRhZTQyMDc1NzgzOTRlIGxlZ2FjeS10cnVuaworNTczNTAgYTE1NjU0MDQ1OTllNWVkODZmNjgwOWRlZTg4ZWMwNjY0YjcwOTQ2OSBkZWNpbWFsLWJyYW5jaAorNTczNTEgMjY1MDBiYTA5ZjcwYzYyMDU3ODRiYzhhMWMyMGM0MWMwZGJmYTRhYyBsZWdhY3ktdHJ1bmsKKzU3MzUyIGUyMDQyZWMzMzBhNDU1NTIyOWEwZjFhMjRlZWJjMjhlZjEyNWE5ZjIgbGVnYWN5LXRydW5rCis1NzM1MyA5YTM0N2JhMTdjYWIwZThmOGFkYjJlMDA5YTFkMmU4NThhNTFiZDNiIGxlZ2FjeS10cnVuaworNTczNTQgM2VkNzgxNGNjYTM2NmQwOWY3ZTFlNmI1NGVjNDZkY2I4MzFhZjA3NyBsZWdhY3ktdHJ1bmsKKzU3MzU1IDc3Y2YyODA4ZWVhNjM3NTExZTYxNmYwNTAyNmE5NTY4NTYwYjQxZWEgbGVnYWN5LXRydW5rCis1NzM1NiBjZTUyY2Q3MWE4ZDlhMjdjMTBjNWE5MDllMTMxZDg3NmJlMzBlNGEwIHB5M2sKKzU3MzU3IDIwNzNlYTMwMDVhNzg3OWViNTk3MDQ5ZDQ3ZTdkZGY2YmI2M2NlNTIgbGVnYWN5LXRydW5rCis1NzM1OCA3OTIzYmZmMTkyMTJiMDM5YzM1YTc4MTYzZWQxNTZiNDQ1ZjE3ZjhhIHB5M2sKKzU3MzU5IDA3N2ZlNzg2MGNjOWIxODY4NTVmNTQzZjFhMjZlNDQ1ZGQ3YTdjMzAgcHkzaworNTczNjEgMWM5OGI0NDVkODQ3MDk5YzI2NTJhNzU3ZDQzNTE0ZjcwZDgyNTFmMCBweTNrCis1NzM2MyA0MmIzOWNiNTM2ZDllNGI1OWY0OTU5ZjY5ZmVkMDI5ZWViODBkN2VmIHB5M2sKKzU3MzY0IDBiNjI1MzlhY2ZiOGRlZDY3MjUxYzc1NDhjNjZhYzhjNmRiMzRiYjggcHkzaworNTczNjUgZTc0NGEyMGVkOGE2YWRiZjA0NjMyYjdiMjYyY2FlNTA5ZTI2NTM1ZiBweTNrCis1NzM2NiBmOTRjNjhmY2Y3OWRjNTI2MmNlNWM0YTNhMDA4ZWU3NmU0MThkMmM2IHB5M2sKKzU3MzY3IDI3M2FjZTM1OWU1NWU2Y2JiNTY3MDhhNGJiMzZkODU0OTkyMDBjY2YgcHkzaworNTczNjggZTNlMDZiMzg5NDA2YTkwYTM0ZTU5ZDc0NzRmYTU2ZWExYmRkNjc3OSBweTNrCis1NzM2OSA1NjdjOTIzY2IxYzYxZDkyZTViNzQ4Yjk0Mjk4NTRjNzZiNTVhOTZhIHB5M2sKKzU3MzcyIDgzYzg0NDhjNmRlNDExNWFkOTIxZWQwZGM4MjhlNTU2MDM5ZWQ0YTcgcHkzaworNTczNzMgNjZmNzNjZTk3YjMyZDcxNGEwOTg5Nzk4OTliNmFkNmVjZTc2NmY2MSBweTNrCis1NzM3NCBiNjI2Yjg0YjUwNzA0NTEwMWUyYzIxYmYyMDBjZWNjMmFmNGRiZTliIHB5M2sKKzU3Mzc1IDE5ZGE0MWZjMTE3YTAzYWQ3ODY5ZWNlOTdiMWY3ZTM0ODJhMjMxMDMgcHkzaworNTczNzcgYjE5N2MxYzA0YmExNTg2OTIxMjQ0NTJkOWY4YjBlNmQxOGM0MDMyZCBweTNrCis1NzM3OCAwNWZlMDI3ZTJkODA5ODI4NGRkODk3OGIzMjlhOTk5NTExMzEzNzQwIGxlZ2FjeS10cnVuaworNTczNzkgMzE0MTUxNWY2YzQ1YTI4ZWNkMWM2MmU3YTc2YzM5NjE5YzE5NzY1ZSByZWxlYXNlMjUtbWFpbnQKKzU3MzgwIDJiOWIyMTQwMjY1MDQwZDAxYjY1NDQ1MTAxZTlkNDgxMTQwOWM5NjggcHkzaworNTczODEgZDNiYWFiMjA5NjI2NDllMmVmNDIzOWFkNDc3ZWJmNDk4OWJkMzMwZiByZWxlYXNlMjUtbWFpbnQKKzU3MzgyIDczMjMzMzE4NzZkZDQzOThkYzJlMWNkYTFjNTU1M2QwNWEzZjdkZmEgbGVnYWN5LXRydW5rCis1NzM4OSA4OTAxYTdjZTZjMDc0NWIyZWNjODI1M2FmNmM3Mjc1ZDFlOWVkZGQ1IGxlZ2FjeS10cnVuaworNTczOTAgM2ZiYTE0ZWM5YWFlYjQ4M2NhOWExMGI0ZGNiNTZhYWMyNDYyYmI4ZSByZWxlYXNlMjUtbWFpbnQKKzU3MzkxIDJjNDIyYTQ5NzJmMWM5NTYwNmRkZmU2ZmNlZjAwZDEzZmJjMzY4OGMgbGVnYWN5LXRydW5rCis1NzM5MiBkNzUxN2MzMDY3OTE0NWFhMGNjZjg2ZjE2ZTZkODEyZDA5YTc0NDNhIHB5M2sKKzU3MzkzIGMzYjUzZTA3NGVkMTFiM2I4YWRkMmU2ZGE4ZTdlYmZjMDFjM2I4MTUgcHkzaworNTczOTQgOTQyODYwZjhjZDk3ZTljNTgzYThlYjkxZmJhOGY0M2Q1MWU2YmJkMyByZWxlYXNlMjUtbWFpbnQKKzU3Mzk1IDU4ZjM1ZGYwZjZmNDg4NmQ0ODlhNzEwNGM4ODY3NGJmNTgxZTc3NTQgbGVnYWN5LXRydW5rCis1NzM5NiA0YjcwMzZkYzc2ZDU1OTIxOTc4ZDZkMDYyYzMxMWY3YmY4YjE3OTRiIHB5M2sKKzU3Mzk3IGUyNTc4ZjMwNDJiMmQ1Mjc1NjRjYjc1NWU4NWRjNmEzYzBkMjg2ZGMgbGVnYWN5LXRydW5rCis1NzM5OCA4YjFiMzI3MjU0YzBkMzUxOTlkZmQyMWIwYjM4ZmZiMTg3ZjkxYmU5IGxlZ2FjeS10cnVuaworNTczOTkgMjU2YTRkM2M1ODFmNzJkNjRlZDMzNGU0ZDRlMjNhMWViOTU2ZDQyMiBsZWdhY3ktdHJ1bmsKKzU3NDAwIGY3OThjMzY2MjcwYzBmYmNlMzZkMDNiMTQ4Yzc0ODMxYmIzMTgzZTkgbGVnYWN5LXRydW5rCis1NzQwMSA4YzU2OTU2OTcxYWRlM2VkNjU2ODk3MmU3YzEyODM3ODRmNzY2ODFjIGxlZ2FjeS10cnVuaworNTc0MDIgMzAyNWU2NzZlNjY5MTgzODEzOTNlMzU0ZTMxYTZhNjQwMzEzYmY0YiBsZWdhY3ktdHJ1bmsKKzU3NDAzIDA2NmQzOWZhZDQwOGUxZDFkNTc5ZTJiZjM4ZTUzNGEwODI0MjNjMGIgbGVnYWN5LXRydW5rCis1NzQwNCA0OGQ5MWYxNTU4YTAwOWQ5NWU1YTYzNmYzOWY2OTY1YzAxYTEwNTZjIGxlZ2FjeS10cnVuaworNTc0MDUgYzZkNjMyMWRjN2Y5NDJjMThmZjY0ODg2ZjExNDU0MzliZGE0NzFiNyBweTNrCis1NzQwNiA3MjFjM2VhMTNkODRhM2MwNTlhMTM5M2E5ZTJhM2E0NDQzMTEyZWVkIGxlZ2FjeS10cnVuaworNTc0MDcgNjEyNGIyZWY2NTEyMDE2MTllNDBkNjdhYjM5NTY1NTE0YzYwZjZjMCBweTNrCis1NzQwOCBhNmU1YjM4NjhmM2Q4MjQyNDIzMGM0YTcyY2EzZjVkZjA3ZjA3Y2FmIGxlZ2FjeS10cnVuaworNTc0MDkgZTQyZTdkMDMxNzNiMzE0M2I3NWU1ZDAzMzg3ZTI1NzA3YWI0MDhjZCBsZWdhY3ktdHJ1bmsKKzU3NDExIDYxZmI1OTc5MTdkMWNmOTc2YmVhYjAwZTA3YjllYWNlYTcyOTNjYTAgcHkzaworNTc0MTIgODQ2MThiMjA2NGMxNmFjMzYzZTU4OTI1YTQyYjdjMTAxMTNjODIwZCBweTNrCis1NzQxNCA2Y2Y2YjgzMWFiMzZjZTA2ZTBjNTRmZmIxOGIxNzM1YzJhZDM2Nzg5IGRlY2ltYWwtYnJhbmNoCis1NzQxNSBjZjJiMzdiOTBjNjZmNTQ5NDdjNmJmMTExNGJlN2QwMDk5ODIwMjAxIGxlZ2FjeS10cnVuaworNTc0MTYgZTFhMzY1NTlkOGI2ODk3OGFkNjZjMjgwM2I1NDZlYmQ5N2NjYzczMCBweTNrCis1NzQxNyA4ZTk3NzExZmFkYzE0NzAwNzIwNTQxNjBjM2MwYmI3OTlhYzU4MWFlIGRlY2ltYWwtYnJhbmNoCis1NzQxOSAzODM2MjBlNjJlZTY0YzRlNGEwN2NjMmJhNTIwMDc3OWJjMTdjNzgyIHB5M2sKKzU3NDIxIGIwYTcxYmZmYTBhMWY3MTM2ZjNlYzg3MGQwOTgzNjgxYmNmYTljNzYgcHkzaworNTc0MjIgZDAyNjEwYjBhOWYzYWNkYzVlNjI5NzIyNzg5NDhlOWQzODMzMmU2NSBweTNrCis1NzQyNCA4ZTYxNzI3ZGI1MjliNWIxNjhkNzNlYTExNjA4MTI0YTRiMzgwOWIwIHB5M2sKKzU3NDI1IDQxZGE0OWM5N2E1OWVjNmY4MjcxNjFkYTZmY2I3ZTU1ZWFmNTRjNmEgcHkzaworNTc0MjYgMDFlZTYzMTFiYTQ2OTRjMmM1N2NkMzhlZTEyYjhmNDM0NWFlMDc1NSBweTNrCis1NzQyNyAwOTk0OTU4ZmZkNGZkNGQ3MjhjMTFmNWZiNTJiZmJiYzlmOTkyY2QzIHB5M2sKKzU3NDI4IDY5YjhlMjk3NjU1NjVhNzQzMWRkYjliNzg2NWMyZTk0ZDhiZjJhZjkgcHkzaworNTc0MzIgM2NkNjBmNzQ0ZjhlOTNiNjAwZDQ3OTgzMzM4ZDAwNTU0MzYwNTQyOCBweTNrCis1NzQzMyAzY2I1ZGVmMTg2NWRhNjU4MGVlMmJiODc3N2NkMmE1ODhlMTYwMTQ0IHB5M2sKKzU3NDM0IDc4ZjdlZDdkODA2NDljMTE0YWUwNzYwN2IwNzlkMzRmZWM1YTBlZDMgcHkzaworNTc0MzUgNTk5NTE0Mjg5MjI2ZTFhNDk5MGFhOGM2ZTVlYWNiMGEwMmI2ZDM1ZCBweTNrCis1NzQzNiAwMGUxMjhiNTI3MmY1NWVhZjY3MjM4ZDI0YzA3OTg0NzcxNmE1MzY3IHB5M2sKKzU3NDM3IDc3NmI4YmQ2OGIzMDFhMDY2YjUwM2JmZTlkMjQ4NDA1NjMzMDgyNzUgcHkzaworNTc0MzggMmMyZTkwNTg5NGEzODBjNjU2ODg5YTY2MmQ1MjIxYTAyYzQ2YzNjMiBweTNrCis1NzQzOSBhOTllYzRiZWZkYThhZGZmNTI2ZWFjMDQwYzdkZDlmYmRlNmE2MjllIHB5M2sKKzU3NDQwIDc0Yjk5M2E4YWQ2ZmVmNzMxOTQzNjU5YTE5YzEwYjgxNTEwNDc5OTcgcHkzaworNTc0NDEgM2Q1ZDA5YjQ1MWI2NmEyZjg1ZTRjNzJkYzcxYTFmZGJiYWRmYjg2MCBweTNrCis1NzQ0MiBmODFkOTRjMDVhMGVjZGE0MWRlMGQ5OGFjNGU3OWEyNmI5Zjk4MzdjIHB5M2sKKzU3NDQzIDg3MmM3YzNmMGFmMzU0MDBlZmM1MDZmYjQyZjAyY2EwM2FhZDA4MGYgcHkzaworNTc0NDQgNTM1NTMzNzcwOWUxMDk1MGJjNmUyNTZmODVjNDNjODgyMTRhYjg3ZSBweTNrCis1NzQ0NiBmYjU4ZmIzYmRkYzE5YjlkZDY5MjcxZTg1OTczNjU1ODBkYjNiYmJiIHB5M2sKKzU3NDU1IDFiNDIwZTZlMDBlYjE2NGE1ZmQwMDQ3YWQzMDMyMDk1MGUzMjMyZmUgbGVnYWN5LXRydW5rCis1NzQ1NiAyMmJiYWZhNjkzM2JkOWZjZDAwMjc5ZTc4NTBmMzExNjRmYzlhNmNkIGxlZ2FjeS10cnVuaworNTc0NTcgYmIyODhlMDRiOGU1ODg0NmM5YzNiMTNhZjc4YzU2OTljNzQ2OWI1MyBweTNrCis1NzQ1OCAzMDJhZWVlMzJkYTgzYTQ5ZmM3NDhlZDEyMDZhNjdkNzI0NTIxNWJlIHB5M2sKKzU3NDU5IGJkOTNhYzMwYzc3OTUyYmY5ZDIzNzY3MTYwOGViOGNhNzhjZjdhODEgcHkzaworNTc0NjAgMTg0ZjgwMGZkYmY2Nzg1ZmNkZDQ2NWZkN2ZmNWEwZjJhZDc4NTBjMyBweTNrCis1NzQ2MSA1NDNmMmJhOTdmYWI5ZDdkMWU2NGZlMTYzZTY2MDJiMjVlZjkwOTVhIGxlZ2FjeS10cnVuaworNTc0NjIgNzgzNDBjY2VhMTRiZTQyZTcwZjM3MzIwYTEyZmMwN2Y5OWI1NmM1ZiBweTNrCis1NzQ2MyA2ZDEzZTE4ZjcwNmFlMzk2OWRmZTk2OTVjMGEwOTg1YzYxYmE1Y2JlIHB5M2sKKzU3NDY0IDA4YjYyNzhhYTFmNDA5ZmNhYjBjYmNjY2RmM2YxODM5NTkxMjdmYWMgbGVnYWN5LXRydW5rCis1NzQ2NSAyNDEwNTM3Mzk3MzMzMjQ2M2FkMTM0ZGFlZmJkZTNjNGI4NDYyMTcxIGxlZ2FjeS10cnVuaworNTc0NjYgYmIzMzZhNjhhNDdmMjUzNDQ2YmQ3Mzc4OWI2ZDBkMTI4YjI4MTk2NSBsZWdhY3ktdHJ1bmsKKzU3NDY3IDRjZDExZTgyNTY0NDgwOWUxYjY2MThmZWUwYjU3NGEzMDk0ZTMzNTYgbGVnYWN5LXRydW5rCis1NzQ2OCBjYWZlMWY2NTNkYjM2YjYzMWQ0NjY3M2YzMjc3M2Y2MDAwZTg0Yjk3IHB5M2sKKzU3NDY5IDZhMTgxYWJmYzhhNDA3MGNmM2YzMTQwOTk1MjU2ZjAyZDNlYjRhZDggcHkzaworNTc0NzAgMjBlMWNjNzRlOGNhNTFmMjU4ODZjOWY0NjUzZTY5OTJmZjVlYTA0NCBweTNrCis1NzQ3MSA1YTliN2MyZjM1ODlkOTUxMDUzODc2NWYwNWY5MDE3NTczMDcwM2NmIHB5M2sKKzU3NDcyIDc4Y2YyYmRhODg1NzE4ODJmYzVlYzBhNWMxYjg3NjEyZjJlMGUxNmMgcHkzaworNTc0NzMgZWZmZWVhN2NmODk4NDg1MWI1MjgyNTg4NDYyYjRiNmQ1ZDJiYzdhNiBsZWdhY3ktdHJ1bmsKKzU3NDc0IGQ4YTYzYjYzMjc0MTJmOGRjZmY0MDlhYmFmZjFmYmEyZjkzNTRiMGQgcHkzaworNTc0NzUgYzMxYzIwN2I4Yzg2ZDU1NzdjNjc5MDM1ZDc2MTcwYTlkYWExNzVlYiBweTNrCis1NzQ3NyAwNTQ4ZGY3ODEwYTBjYjgzM2MxMmFlNWU4NDI4NDZiNjI3ZmU1NzA3IHB5M2sKKzU3NDgwIDNhNjg5Zjg4YzgzODVlMTFkMzBlODk0YTFhYWQ4NTU1Y2Q4MDI3MWIgY3B5X21lcmdlCis1NzQ4MSBhOWIzY2UwNjY1YzNhMzVkMzJmOTFjNTMwMjM4YmRiOGM0ZjgwZGNjIGNweV9tZXJnZQorNTc0ODIgNjczY2JjODVkOGM0MGJjMjBmZTAxNDdiMTkxZTgwMDllYjRiMjAyYSBsZWdhY3ktdHJ1bmsKKzU3NDgzIGViMTlmMmZhZWVhMTJiMjJkNzUzNDYzYzllYmVkYzNiNjVjODMzYzAgbGVnYWN5LXRydW5rCis1NzQ4NCAzNGU2ZmE3OGI2NDMyODg1MmExOTI5NWEzYzA1NThiYjQzNGJlMmQxIGxlZ2FjeS10cnVuaworNTc0ODUgNmU3MzU5MTA2NzE4MWEzMzI1MzkxNjM3MjgyOWZjMGFkOTExZmI3YSBweTNrCis1NzQ4NiAzMTUyZGY3MDUxN2E2ZjEyMTQ3YTYxYzQ3OTdjZWRjY2ViZjhmMWFiIHB5M2sKKzU3NDg3IGI1NWU3YzUzMjUzYzBkMTE0OTNjOTFlNjk1N2EyZDZiMDdkN2U5ODIgcHkzaworNTc0ODggN2ZmYWRkZDFkZTMwNTBjNGRmYzU0NzQzNGVlNDMzZGU5ZWE0NzJlNyBweTNrCis1NzQ4OSBlZDFkMzUxMThlZDhmMGY0MThlNjQxODNjYjY5YjA5NTZmYzYzZGQzIHB5M2sKKzU3NDkwIGJiYzQ0MzI2YjUzZDY5OWUwY2M4YjQ3OGNjMmI3YWVjMWJjNzdjMzIgcHkzaworNTc0OTIgMDI3YzdkMDQ0Y2ZkN2NkOGQ0MzQ2N2YyODgyNDg3YmQxMmU0MjQwOCBweTNrCis1NzQ5MyA2MzgwZjg4ZTNkZWVkYjMyZDNhY2E5Njc0NWQ1ZjdiYjMxZjMxYmI2IHB5M2sKKzU3NDk0IGZlZDRmNzJiMDRjYjlkOTgyNjk3ODUxMzJhZmQ1NjMwZjNhNzE5NGIgcHkzaworNTc0OTUgMTM5MGMxMWU2NDBiMWE2Y2NkZDQ4NmU3NzBjMGM4OGJjYTM3OTNmOSBweTNrCis1NzQ5NiA4MjRiOWQ1MmUwMDZiY2FjOWJlNWVhZDI3MmMwYzdkOWM4M2M0N2RmIHB5M2sKKzU3NDk3IGQ1YjUyZDU2YmViYWZiZGVkNDZmNmZkMDYzZTcxOWZiZDFiMWMzNzMgcHkzaworNTc0OTggZjNiM2ZmZDEzOTU0OWVhYTE5MzZjYTViZjk5NDljZjA5Zjk4NWQyMiBweTNrCis1NzQ5OSBlZjU2MjgxZjAzYjQ1ZDQ1OGIxZWZmZDE5NTkzMGQ3ZTVkZmQyNmQ1IHB5M2sKKzU3NTAwIDE1NDdkZTE2ZmVjOTUxYTZiYzIzY2Y5Y2ZmM2VkOGU0NDQ5MjczODIgcHkzaworNTc1MDEgMDM2NTk4ZGU0NjYwZDYyNGY5ZGM5ODc1OWNjYjljNDQ5NjgwNDQzMyBweTNrCis1NzUwMiBiZjFhNTNjYzZlNjUxZjdkNTBlNjNhYTFiN2JhOWZkYTRkNDQ1MmNkIHB5M2sKKzU3NTAzIDc4ZTAwYTBmNjAxNWU1YTFiMDc0MzE4NmE2MzRlZWYyMGZlMGUxMTQgbGVnYWN5LXRydW5rCis1NzUwNCBlZDE1OTRhMTZiZGI3Y2MzMDc4ODQ0YTIzYTk0N2Y4ZTkwYTJmZWI5IHB5M2sKKzU3NTA1IDg0ZmE5NDdmZjY5NjYwMmFkOTg5MWZjOTg5MGRiZjFmZDJhNzVhNDUgcHkzaworNTc1MDYgMWIxZjdjYTNmZDQ5MzA1ZGUyOTUyZDdhZGYyYTcwZjQ3OGZiN2RmMyBweTNrCis1NzUwOCBhMDk3MjhiODk1MzAyMzJkMDI4NzAyOTlhMzViNjA5MWFhYTg1MTAyIGFsZXgtcHkzaworNTc1MDkgM2ViNWRkYWRmYmY3OGJlYjkxMDczMTc1ZDk4MDk4NmNhNDgzYWNjMyBweTNrCis1NzUxMCBkNmQ0OTNiNjE3ZTNlNTFiY2FhNzNiZGQwZTMzNWZiM2QzNTEwNDQxIGxlZ2FjeS10cnVuaworNTc1MTEgNDAzZWJkMTQ1OGFmZmI1ZGZhZmM4ZTY3MTRlZjdkZmZlZTE0N2UwNCBhbGV4LXB5M2sKKzU3NTEyIDZkZWRiMzNkMmRhMzg0OWJhYWY5ZDA5OGU5OWY4OWY5ZTUzMDFkZWQgcHkzaworNTc1MTMgYmFiNzVlNGM2NDdmNmY0MWZkODRlZTY5N2ZjYjBmZWZlNTM4M2JkMiBsZWdhY3ktdHJ1bmsKKzU3NTE1IDM4OTVjMTI5ZTQ4NjIyMzcxMTRkYTgxMDY2ODI4MTFmMTRlMDJkODAgcHkzaworNTc1MTggYzJjNzZhMDQ0NmZhYjI2ODUzNmJhZjUxYzEzNTcyODkzZDU1ZWJlNCBsZWdhY3ktdHJ1bmsKKzU3NTE5IGExMzQ4NWEzYjQwNzgzZjRjODZiM2Q4ODI0ODJiMTcyNzJlMTYxMzQgcHkzaworNTc1MjIgZmYzYzBiZTcxZGMyYjM3YzE0MjE5N2EyMDZlNDY1NWQxNWY4NDcxMyBsZWdhY3ktdHJ1bmsKKzU3NTIzIGQ4YWQyOWM2ODc2M2VhYjQyYTM2NDI2NzU0MTljNWExMWFmZWM4MTkgcHkzaworNTc1MjQgODVlYWVjZjlkNjc4MzQxYzYzY2MyZjRjZTU0MmE4MDM4MWJjMjgyYyBsZWdhY3ktdHJ1bmsKKzU3NTI2IDVmZDY1ZTI1MDg0MzU1ZWI1Y2EzZTJjMzYwM2Y0YzhhMGQzYmYwZDYgcHkzaworNTc1MjcgNTZiYmQxNzY3MDU3NWYzMGEzMzJhYTU1Mzg2NDdiN2M3NGZkZmExMyBweTNrCis1NzUyOCBhNDBkZmI1MWRmOTE1NGIwOTg3NDQwNWMyY2Y1ZGMwZjJjMzY0ZjRhIHB5M2sKKzU3NTI5IDQyNmFkYmZmNDkxZGQ1NmIyODFlOWY0MzU4MzZhYWUxNzRhYmFmNzEgcHkzaworNTc1MzAgZDkxMTVhNDUwZjFjNjljNWI1NGFiODIyMzQwMWI5YzA0MWVjODVkOSBweTNrCis1NzUzMSA4MDM2NWRkNDU1ZmE2ODg5OTRmZGRiOTgwZTFlOWVlMTE1YzZkMmU1IHB5M2sKKzU3NTMyIDRjNzhjMDQ4YzNiYTA0ZGJhNDVkMDc0M2M3NGRlZTM5ODg0YjAzMTEgcHkzaworNTc1MzQgMjUxOTc1MTUzMmFmNzZiNjdhNDAzNmZjNDM1N2RhZTJjYTU0Y2FlMyBweTNrCis1NzUzNiAxOWRjMmVlYWNiYzExYTM3ZTY5ZDYzNzA1ZWRhNGMwMWJiYTFmNGIzIGxlZ2FjeS10cnVuaworNTc1MzcgOGUxMmQ1NmRkNjAzZWFjYWZkNDNiOTg5NDQwN2E0MDdmZmFlY2RjMiBsZWdhY3ktdHJ1bmsKKzU3NTM4IGJiNjI0OTJiNTg0ZWI2ZjU1NmYyYTNlMjk3OGMwYWI0ZmIzZThjNGUgbGVnYWN5LXRydW5rCis1NzUzOSBlNjQ4NDg1Y2YzYWZlMjY3NTczMjZlMzk3NDA1Y2YwNmFkOThlMDI0IGxlZ2FjeS10cnVuaworNTc1NDAgZDVmYmI4NDNiMGE5ZGQwMjlhNmQ5NzRlYmI4OGY2ZmFjY2Q2NmU1MiBweTNrCis1NzU0MSBlOTQ2MTAwYmI5ZmQ5Y2YzYjNlYmI2NDMwZWZkZThiNWQyN2YyYjUzIHB5M2sKKzU3NTQ2IGRkMDY3MGM2MDFkOWFiYWI0NjViNWEzZGFmMDllOTliZThiMWI3NmEgcHkzaworNTc1NDcgOTA0Njk3YmU2OGNjYjU4NTczNzBjMTM3NWFjNTk0NzhlNTVlNWZiNiByZWxlYXNlMjUtbWFpbnQKKzU3NTQ4IDI1MmE4NDI4MGI3MzJhZWE4ZWY0OGExODBhY2QxZjc2OTViNTdhNjcgcHkzaworNTc1NDkgOWIyOTQ4NDZkMjBkMGJhZjk3YWNmMDFlYjVjZWM3YTM4NTA0NGViZCBweTNrCis1NzU1MiAyYzAyYmE3MjcxNGI5NDRlNmRlMDU0MzY2ZDNjYTNiZjM3NDQxNjBjIHB5M2sKKzU3NTU0IDZiNDc4MWRjODFmZmZjY2NjOWE0Mjc1M2RlZGEzZTRiNWZhYmNmOTAgcHkzaworNTc1NTUgNTk0Zjg5ZWMwNjA3NzllMjc5MDEyNmVlNDllN2VkYzUwZWM4YzQ5ZiBweTNrCis1NzU1NiA3YmY4ZjIzMzllYzY5YmZjMmRmNjg5NjFiNzkxYzc5Mzc1OTRmODk5IHB5M2sKKzU3NTU3IGUyZmZhMGNkOTdiOTdiZmM3NTVjYWUyYjU0NWU4MmJiNmY5ODhkNTcgcHkzaworNTc1NTggMDAyMGJjNzg0Yzc2OWY4YjBlYmRhMDMzYjQ2NzQ1NTM1YjU2MGI3YiBweTNrCis1NzU1OSBhNDk2NjVmOGQyZjRkMDcyMzJjYzU5Y2FhMjY2N2UyMjFhNWNhMGMxIHB5M2sKKzU3NTYwIDE5MTk2Y2NlMTQzMTMwYjIxM2ZlODkwYmEzMWYwODQxOWM3ZjljZmMgcHkzaworNTc1NjEgYzA5YzMyNjRhOTAwOTUwYzdlY2Y1OGJhZDQxMTZkOWI3ZWEyMmUxYyBsZWdhY3ktdHJ1bmsKKzU3NTYyIDYyODc0YjM0ZDk1ZDk5YzcyZDNiYTE0ODRmMDI3MDlkYTQ1OWIzNTcgcHkzaworNTc1NjMgZmIzMjZmZDlkMTg0MmQzY2Q4NzFhZmU4MTYwOWM1ZDAxZTI5Y2E2NiBweTNrCis1NzU2NCBjZDIzNTAyN2U2NGMzN2JmMmU0ZTYwZmYwMTVjNGY2NTc3ZGMzYjM5IHB5M2sKKzU3NTY1IDdlYThhNmNjZGM0MmRkMTRlNjFlNDRiMDc2ZmFlZTQyMWYzNzI0NTggcHkzaworNTc1NjYgYjk3ZmE0MDU1MzQzOGRkNjQzNDdkYWEyNDBjZjIwMmJiZDg5MTNiYiBweTNrCis1NzU2NyAwMTcwNDE4ZGFkZWFiYjNlZWM3ZmUyNDE4NTAzM2E4NTRhOTg3MGVkIHB5M2sKKzU3NTY4IDU4MDVmZTE3Y2IyZGM2MDQxZWRhYmQzM2ZmZDRhY2M3ZGQ3YThhMzkgbGVnYWN5LXRydW5rCis1NzU2OSA3YTYyYzI0NjlkZWEyZTRlOWMzZjY5NDY1ZjM5MmZlNjY3ZWUwMmNjIHB5M2sKKzU3NTcwIDI0YTA1MzI1Njc4YjEzYWUzZDFhYzFmNWI0YjlkMDg2ODE5YzNkMGIgbGVnYWN5LXRydW5rCis1NzU3MiBjYjI4ZTE0ZWU4MDgwZDUyOGUwMWE5NDNhNjJiMTljZDM0NzlkYzlkIHB5M2sKKzU3NTczIDA0NGI2Mjg1ODE1ZjE4YjIzMWQxMzUzYTc5OGU2Y2I4YThiMTU2OGIgcHkzaworNTc1NzQgNzk3MzEwNDAyMTdiNWY2NWVmNWJlNDU0M2FlMTUwMjVmOWMxMjgzNiBsZWdhY3ktdHJ1bmsKKzU3NTc1IGUyMGQ1YjY0MTg5Yzk0M2ZmMGQxOTQxZGEzOTYwOTc4ZDlkNzQ3NmMgbGVnYWN5LXRydW5rCis1NzU3NiAzZjBmMWM3NzVkOWQ0MmZhMTgwYzNkNWJhMWQyOTI5MTdlMDBlMmVlIHB5M2sKKzU3NTc3IDlmYjgzMzFjZWMyY2ZlNzNkZTc1MzRmNTdkNzVmOTY5MGE2OTExY2QgcHkzaworNTc1NzggOGUwMWYyNjI2MmNmOWU0ZDAwYThiYjdkNDMxZWRjNjczYzc5MWMwYiBweTNrCis1NzU4MCA5MjIwOTMxZTQ3NDFiZjA0Zjk2NzVhYWY0OGJlMGI0MjIzNjM3MTJkIHB5M2sKKzU3NTgxIGM3MmEzY2MyMWVmNzNlMTMyMzUyYzI5ZjMyM2M5ZTIxYTQyYjU3MDQgcHkzaworNTc1ODIgYWVjYmY1Njc4NzA0NWMwOTY4MzE4MWQ0ODU5NTM0NzJmYTQwNjJmNyBweTNrCis1NzU4MyA4NzE3YjRmOGUxZTVlZDgzMzA0NDFiYmRiMjU1OWMwMTdiZTZiMDFlIHB5M2sKKzU3NTg0IGIxMTBiYWM5ZGY0MDkwMjNiNzRiMjBiNmY2NGM1YmI4YjJjNTMzNWIgcHkzaworNTc1ODUgMzg0ZjlkOWM3NWEwMmZmZTg2N2EwMTQyYjEyNDI2YTZiY2JlOTE5ZiBweTNrCis1NzU4NiBiNGIxNGM0YmViODJjYWI4N2UzYTM2NWI1M2FjOWQwYmMzOTdlNTMxIHB5M2sKKzU3NTg3IDAwY2JiMzNjYjg2NDBmOGZkZDc5NjgzM2ZlY2UwY2Q4MzcwZGJkY2EgcHkzaworNTc1ODggZmQxZmNiYTVlMTZiMDU2MzJlMDA1MmM2MmMxYzY1MGJlYzBhNmE3NSBweTNrCis1NzU4OSBmM2IwYWM0ZTY4NGY5ZGRjYTk0NThkZjBiNWIzNGI3NGYzMDZjM2M0IHB5M2sKKzU3NTkwIDdiZTBlMDBiMDM2NmQ5ZGRjYWM3ZWQ4MzhmYTU5NzYwYjQ1NWZkM2IgcHkzaworNTc1OTIgMTFlYzQwOTdmYWZlNzE1NGExZDNiYmYyNDJiYjQ1YWY1YWZhMmNkMiBweTNrCis1NzU5MyBjYmQ1MGVjZTNiNjEyYzA4YTY2OWQyMGNmZTNkODM1YTI1NWIzOTczIHB5M2sKKzU3NTk0IGFlZTIxZTBjOWE3MGYzOTA2MDNkZGVjYjVmY2YxZmZlYTg3YTY3NGIgcHkzaworNTc1OTUgYWEzOTUwZjExMWQ5ZjEyYTRhZDBjMGIzNzRjMTU0ZWI5NjkzNWVlOSBweTNrCis1NzU5NiBiODQ2NWYwMmZjYjFlZTZmYzI0NjU1MmVkMDAyMDU1NDkxZmM3ZTZkIHB5M2sKKzU3NjAxIGZkZWYzMmJiYmNiODQwNzlhZmM5M2JmNzZlMzAzODUwNjI3OTllOGMgcHkzaworNTc2MDIgNDlkY2UzZGEwZTgwM2NmM2EyZWMzOTY2YmI4ZjJjOTU5ZTI3NWU5MSBweTNrCis1NzYwMyBlMGI2YjYyODdjNmIyM2Y3YjM5NjRmMTQ4NjJhNTE1OGM5ZjVjNDNlIHB5M2sKKzU3NjA0IGJjOThhZjk3MjY3OGQ4OGViNzM4YmIzZGFmOWM0NWM2NzdjNDNhOTUgcHkzaworNTc2MDUgZTgzNmMxMmM1NGMyZjQ0NjBmOTNmMmI5MjU3YWU4MWI1MmZhOTdjMiBweTNrCis1NzYwNiA4M2MxMzFkZmRkODRjMTg4OTRjY2M4MzFkZGIyNjhhYzhmODg1MTQwIHB5M2sKKzU3NjA3IDFkZmU2ODViODU3NmJmZWExODRhNWRlNWViZjU4NDcyYjRlMWUxNjUgcHkzaworNTc2MDggMTcxYjlmMTVjMjIzYTRiZDllODhlZDFhMTdiMDk1ZDVhZWRjODQyOCBweTNrCis1NzYwOSAzMjQzMjBkOTQ2MTAyZjEwYjliMWY5Y2FjNzk0NTU3YTNiNzA4NGNhIHB5M2sKKzU3NjEwIDcyYWZhZjlhYjMwYmE3OWJlNTQxNzI1YTgwMDllYjdjZWViMTg5N2UgcHkzaworNTc2MTEgOGIwNmY1MTQ3NDQ1ODYxOWYzYWFiZDQzYTExZTg0MWI0Y2M2MjBkZCBsZWdhY3ktdHJ1bmsKKzU3NjEyIDY4ZmUzNTA5MDc1OTI4MTg4MTI0ZjY0Nzg3MWFmNGJhMjBkYTEyZTIgbGVnYWN5LXRydW5rCis1NzYxMyA5YTEzZThmYjFhM2I2Y2M5Yzc4ZDY0OTZkYjhmY2UxMDA0ZTJmODdlIHB5M2sKKzU3NjE0IDk2ZGExYjlkZWU4ZGIyYzE5NjY5NzM5Y2IyZDBjNzA0MmVmMTNjZGUgbGVnYWN5LXRydW5rCis1NzYxNSA0ZWNiYWUwNzQ4MWYyMTRhMTFkZDUzOTk0NzEyMDg3ZWRmNDNiYmQyIHB5M2sKKzU3NjE2IDNiZjJjYWQ4ZjIyYTljZTEwMTc3MmVkYTdmNTllMGIwMjFhMTkyMmQgbGVnYWN5LXRydW5rCis1NzYxNyA2NmUzNmNlNWE1NmM2ZjI2MmFhMjEwZDEwNGUzMTBmMmQ0MzJkMWE0IHJlbGVhc2UyNS1tYWludAorNTc2MTkgOTYyMDEzNDAxMGE1YWQyZTU3ZjlhZTFiZDc2ZmMzY2UyYjdhMmY0NyBsZWdhY3ktdHJ1bmsKKzU3NjIwIGQxNzg5ZDRmZjAwYzZlYzY2ZTBjZjM5ZWYzYTRmYmU3OGJkNWU3YWMgbGVnYWN5LXRydW5rCis1NzYyMSBjYWFkMzVlODIxM2I4YTdlZmQ3NGYxOWI1NWI2MjUxMTMxY2M1M2Q1IGFsZXgtcHkzaworNTc2MjIgMWVkYzZlMTdhZTE4NWQ0MjBkNzJjNjcyZDE4MWE1NzFmODM2YzRjOSBsZWdhY3ktdHJ1bmsKKzU3NjIzIDI1YTg5M2Q2N2M2NDE4NDMwNTk2OWNkMTYwN2M1ZmVjNTU5YWFkZDYgZGVjaW1hbC1icmFuY2gKKzU3NjI0IDI3ZjAyODliNjgzNTFjZThjNDJmYmIyMTcwZTFhYTFiMDc4YzI0NmIgcHkzaworNTc2MjUgMzA1MTEwNjhkM2Q0ODJlOTE0ZTZkNjU1NDM5MjZiNzI4MzRhOGI1ZSBweTNrCis1NzYyNiBlNmE5ZmNkMWI0NGU4MTU0ZmIyNWFkOWVhN2E4NDA5NmI4ZmRkOTljIGxlZ2FjeS10cnVuaworNTc2MjcgNTMzZmI1MzIxZDZiYzFkNGMwOGVjMGMwYzM2MzYxNDc2N2YyMWY2MSByZWxlYXNlMjUtbWFpbnQKKzU3NjI4IDhiYjFmZTFhNzJhNGEzMmI1ZTgwYmZlNGU0YTY3NGNhYzFiNjc5MjAgbGVnYWN5LXRydW5rCis1NzYyOSA4OWM0ZmY5N2ZkODkzZWNhMDc1YWNhY2ExMjQ1NTlmMTExZTY4N2ViIGFsZXgtcHkzaworNTc2MzAgZDY5ZDgwNjAwY2YxNzIxNzY2NWRkNDI0MzA0NjBjNmFhNDk4MmNmMyBhbGV4LXB5M2sKKzU3NjMxIGZiMmNmNmU4Y2Q4NjExNTM5NzM5Yzg2NzkyMzUxNmZkY2FiOTRmYWMgbGVnYWN5LXRydW5rCis1NzYzMiBkZWMyZWM4MjY4NzQxMTdhYjA5MzQxOTlmNjRhYzhiMDk3ZDBjZTQ4IHB5M2sKKzU3NjMzIDFhMjMwY2I3N2YwNWNiZWM2ZDU1MGRhNzY3ZmZlODAzMGQyYWZiNzkgbGVnYWN5LXRydW5rCis1NzYzNCBiOTJmYjI0YzVkNGI1MDYxYjYyOWQ4YzE1ZDAzZTliNTgwMDliZmRhIHJlbGVhc2UyNS1tYWludAorNTc2MzUgYjJkZjQ0YjljMjUxMzQ4ZDdmMThlODRhOGJmZDVlYWIzZThhMTI3YSBweTNrCis1NzYzNiBhNzk1MWFiYjg1MzRiMzEwMmI5NjA1N2I4YWFjNjM2ZmYxMGEwYjcyIHB5M2sKKzU3NjM3IGQxYTE3Y2QyNmE0YjAyY2ZlZjA1Y2RkMDc1MzRiMzFmNGZhZWQ4MTEgcHkzaworNTc2MzggMzdiZWFlMDlmY2IwZmQ1ZmVhOWIzZGM3OGExMzc0ZmM5MzVlZjdmZiBweTNrCis1NzYzOSA1MGI3ODdjYmE4ZjFjZDZkNzVhNmY2OTdhY2E4NTVlM2FmNjVkZWJlIHB5M2sKKzU3NjQwIDcxM2ZiYTM0ZDY2Yjg4YjQxMWRmZTY3OWRlMTkwNzExNjg5Y2ZhYzYgcHkzaworNTc2NDEgMGU1MTBhZmY1ZTlhZTE1NDJiODNkMGZmM2NiNTJkYTA4MzM5YTM5NSBweTNrCis1NzY0MiBjYjVhZTAyMGEwNjBlYmE3NmI4OTBlZTI5NzA1YjQ0ODdhYTQ2MGQwIHB5M2sKKzU3NjQzIDlmNzRiNjk5MDU2YTQ2NTZkNzdkYzIzZTc1YzBkMjhiNzc4ODM3NTcgcHkzaworNTc2NDQgMDVjNDczOGY4YTQzYzczMzBkNzI5ODM2MTIxYmU5OThhZWNjODRmYiBweTNrCis1NzY0NSAxY2U4OWYyNTc4Y2Y4MWRmYmM2MDEzNzYxZDAxMTVhNzJhNTQ1NWQ1IHB5M2sKKzU3NjQ2IDBlOTA2NTEwMjYyZDFhOThlNDk4YjE4NWQ2OTEwYjg5OGY4YThkMTggcHkzaworNTc2NDcgNzFjZDU1OThiNzRkNmQwYjgwMGE4MTJiNDllMGJlMDg4ZTdiYzZiOSBweTNrCis1NzY0OCA2YjNlOGFhNTRkZDlkOTE4Nzk5ZDQxZjdhYjE3Y2I1Y2ViZTM5MzMzIHB5M2sKKzU3NjQ5IDU0MmI5YjExMTkxNWNlZDY0MGI1OTZmMDJjZWNlZjYwYjA4OWRjMDcgcHkzaworNTc2NTAgZGY4ZWY5YzgzNzFhNDU1MDI5MDg0OWUyYTU0NzAzOWQxYmM4ZGI3YyBsZWdhY3ktdHJ1bmsKKzU3NjUxIDgyNjAyMzE1ZWFlYjllNzEwZWVlMTE1MGEyZjllOWY0N2JhY2RmY2UgbGVnYWN5LXRydW5rCis1NzY1MiA5ZGY5MTFkNjU0YWZjYmM0YjI5NWM4YTNlZjc0OGQwYmUxZTAwYzZlIHB5M2sKKzU3NjUzIDBmODJmYzQyZmQ2ODFhZjkyNDk0YjFjMWQxZmY4ZWVmNTU3ZjI5ZTMgcHkzaworNTc2NTQgN2ZkZTZlZGYyYjkyMDEyODI2NWE4ZDViZGYxY2JjYzM4YzA1NTE5YiBweTNrCis1NzY1NSA3OTE5MWJkZmEyM2I1MmMyOWFhZDY4MTk5ODk1NDE0YTAyMTIwNjYxIHB5M2sKKzU3NjU2IDNhNTZlNzNhZTkxOTU3NDU5YTEzMzliNDU5NTgzMGM1OGRjNGNlNzcgcHkzaworNTc2NTcgZjQ4NTFkYzBkZjA0MTc0NTc2ZjEyMDFkNjFiMGVlYTVhYzE0YzBmNiBweTNrCis1NzY1OCA3MDczZjQ4MTQ3YmRhZmMwYjBiNDhmOGU0MWU3YjMyOTk2YTY4NmUwIHB5M2sKKzU3NjU5IDRiZWJiMjI4MTdjZmVlZGIzZjI1MDY2OWNmNWQ0YWEyYmJmOTNkMjggcHkzaworNTc2NjAgMGQyOGE1MjBjOWIxOGVhMTk2YzE3MGIzYTdkMjliMjIwMWE0OTQ1OSBweTNrCis1NzY2MSAxNzIyNDU5MjVhZTYwM2QxNjEyZGFlZWRiYTA5NDE2YzFkNTZmY2RkIHB5M2sKKzU3NjYyIGEwMzUzMjYwN2QxY2E3YTgzZDE1YTBjZTc4ZjE5Yzk3YTUzYjZiYmIgcHkzaworNTc2NjMgMzNlODdmOTcwYTIyYzAzMjM5NTJkOGY4OWQxZmE0NTJmMmEzZTZlOSBweTNrCis1NzY2NCBlY2RhMzMwNTE3MzlkOTZlOWFlZmRhNmEyMzNiM2VhZDY2MDM0NjFiIHB5M2sKKzU3NjY1IDk4ODU0Yzc2MjljOGUwMzNmM2Y4YzM0NTkyZjU4ZGEwNjM5MjRhZmMgcHkzaworNTc2NjYgYWJlYTU2NTMwNDA0OTk2NWM4YTg4MjJkZjA5NDNjODA3ZTk4NjZlMSBweTNrCis1NzY2NyAyNTBhOWQwN2MyY2MyYjZmMzgzMzM1ZjJlMjdhOTBkOGQ2ODVmZTI3IHB5M2sKKzU3NjY4IDRkNmMxMzQ0MzQwYzJjNzJhMGJmMzQyMGFmODYxYTU4ODg2MmI2MzUgcHkzaworNTc2NjkgYjkyMjZjYWQ5ZGZkYjA4YmRiYzdiNDFkOWUzMGM4YjUzMDk1NTk3YyBweTNrCis1NzY3MCBkY2QyODVjMDc4MTM1YzU5OTM4NTgwZDM4MjBkMzEyNzQ1ZjNiYjIzIHB5M2sKKzU3NjcxIGRjMGYwZmZkNDI1NzI4ZTcyMDc4NjQxOTNiNmNmNDUzNjVjZmY2MTUgcHkzaworNTc2NzIgOTZiZGUwODgyZTVmNGE0Nzg0ODA2YjVjNzI1OTNmMzAxMDQzMGVmNSBweTNrCis1NzY3MyBlYWZjOGIyMzU4OWQxM2EwMDg1MGI4MTNlZTVlMmJiNjQ0MTA0OTI1IHB5M2sKKzU3Njc0IGUxNDJjZDRiNTcxMDFjNWMyMzRmZDI5NjM2NTZlZWU5YTU0OTdiOWQgcHkzaworNTc2NzUgY2Q4MGViOTg5NzI4M2YzNTgzYTZkMmI3NjZlYzhlMGFiMTAwMzdlNSBweTNrCis1NzY3NiBhYTU3Y2VlMTE2MzEzZjZhZmUxMTk1NTI2ZjcyOTNiMDMyMjdjMDYyIHB5M2sKKzU3Njc3IGI3NTRjMDkwODg5N2ViYjI2MzkyZDQxZTgzM2I4YmRhNTAxOTAwNTggcHkzaworNTc2NzggYWM4YjM4OWYwMDI1ZDczN2I0NGNkNDI4NzkwNzY3OWQ5ZjI0OGIxYiBweTNrCis1NzY3OSA1ZmRlNWQ2OTY0ZDdjZDcxOTQ1ZWYzNjdlNTY4Yjc1MzBiNzFhOTU5IHB5M2sKKzU3NjgwIDQ3NzE2MzlmYzA0OTk2MzlmY2Y5NzExOThmMDg0ZTdkZTUxNjBhYjkgbGVnYWN5LXRydW5rCis1NzY4MSAwN2Q2N2E5NzI1YTc4ZTFiMTY3NjAzOWVlODA0MTI3NWYxYzE5ZGZjIHB5M2sKKzU3NjgyIGFiODllMTMwZDY0YTg0ZmFkZjMxZDYxOTk5Mjc3OTc5Y2Y3ZDgwNTUgcHkzaworNTc2ODMgNmUzNWM3YzE3NjA0ZTZhZjI4ZjBlMjdkOTZiNWM1MzE1NGI4YjJiZCBweTNrCis1NzY4NCAwZGNkN2YwODczOWFjODA3Mjc0NTI0ZmZkOGIzMWQwNmE3YzU3YjYyIHB5M2sKKzU3Njg1IDg4YmI0NTlmZGJmNTdjNzI4NjFmOTAwMDEzMGJkNjBkYTAxNjdiMTggcHkzaworNTc2ODYgOTgzNDMwMWEyZmQzZTAxNzg3MmZmMTNmYTlmYzEyYjU4N2U0Mzg4NCBweTNrCis1NzY4NyAwY2Q0MDFiZjJhYTdkZGFhNzRiZjAxZTMyNTEzZWUwMmJjYWFlNGU5IHB5M2sKKzU3Njg4IDk1MDg0ODExNzM5N2Q3MjRkNDQwY2ExYTlhYTc2ZGJiNTAwZTdjZDQgcHkzaworNTc2ODkgMDEwNGQ3OTlkZDQ0NTQyYjI1ODEyMmNiMDE0ZmRkNWMyYmZhYWUyOCBweTNrCis1NzY5MCAxNjU5MzRiYzQ0Mjk2MTA0NjA3NDI0OTNmOWEzYjYwZmVhOWQ4YTQ3IHB5M2sKKzU3NjkxIGQ1ZjNjMmY0MTZmMmE4OGIzZTRjNjY4Y2MxMTcwMmU4OWFhODAxMmYgcHkzaworNTc2OTIgOTA3YTQ1ZGYxMjk1M2E1OGFjYThiNDRkZTYwN2IwNzVmM2JkYWE2MSBweTNrCis1NzY5MyBhMzQ2NDRhNjU3ZjVhMjZmZjZkNTJjNjU0ZmVkNDI5ZTlmMjU0YzMwIHB5M2sKKzU3Njk1IDM5MThhOGE1MWJkMTk3ZThjZmM1MzFkYjRhZDA2MDVlZjJjNDQ3NzQgcHkzaworNTc2OTYgOTUyYmY2YTQ0YzI3N2Y3MDM5ZWY4ZTBmNGE2MzA2NTE0NjJlM2E5MSBweTNrCis1NzY5NyAxMzIxYmEwYjY3MGYxMDEwMjA3NGU3ZTA1NzY0ZGM3OGJiZTA3ZGFiIHB5M2sKKzU3Njk4IGI5NmNhMzUwODkxZDFkYTJmMmVmM2I5ZDkzMGE1N2JmZmM2NDNmNzUgcHkzaworNTc2OTkgYTZkMzkzMGI1NjEzODBhYTZkYjNjMThjYmQyNjUwNDRlYTk1YzViYyBweTNrCis1NzcwMCA5MDc1NzEyZGVlOGZkNDg2ZTA3NTdiMTU3YzAwZjg4MmM3ZGExODZjIHB5M2sKKzU3NzAxIDgwNzdlZTQ5ZmFkZmRjZDM2YjFlMDNmZDMzOTU4OGI5MmU0OTI2NmMgcHkzaworNTc3MDIgNzA4MDMzZWQ5NTE1OTQ4ZDAxM2ViOTZjZWM1ZDE4M2M0NDM4MjQ5NSBweTNrCis1NzcwMyBjYzBmZTA1NmJhYmRmNWE5NmY0MWEzOGUyOTFhMjlmZDY4OTExYTI0IHB5M2sKKzU3NzA0IGFjMmQ1ZDM0NjI1MmEyNDQ3NDk3MGVmZjU0MmJmYmQxNzI5ZGU3ZTQgcHkzaworNTc3MDUgYjVkOWMxOTVhMGM1M2E5N2IyNWRkNTMzMzhiZTI3ZDZlZDMzYzI2NyBweTNrCis1NzcwNiBlMDkzY2E1NTljMjNjZWJmZWU3NjUzYWRmYjg3ZWRjMzdkNzhkMTIyIHB5M2sKKzU3NzA3IDhjY2Y2ZjRjN2YxMjU2ODU3MDRlN2Y1NGFiNWQwNTA4NDQ5ZmYzMzggcHkzaworNTc3MDggNDI3NTQyMDhhNjU0NGNhMTkzNjRmNDQ3Y2NkYThjOTRmM2Y5YTQ1NCBweTNrCis1NzcwOSBlODJjODBhMDQ0OGQ1YjU2NWM2ZmMzNWEwNjUxNWMwMjg3N2E5NDlhIHB5M2sKKzU3NzEwIGNjN2U5MTRhMjJkOWNjNzQwZjZjMjk5ZjgzOGRkZDQ2MzlhZTA1ODQgcHkzaworNTc3MTEgNmUxMDEzYjkyM2UzYzFjODJhYzA1ZWIxYzFiOTY2ZDFjNTg5ZmVkZiBweTNrCis1NzcxMyBmZmE0MjMzZGU4NjYyMjdhZGEwZDI3NGRhNGQ0NTRhOTk4MWFiZTk2IHB5M2sKKzU3NzE0IDk2MjQ4MzJmMzE1NmYzNmY3NzdjMWNkZjdjODEwZGM0ZGFkOTViMWIgbGVnYWN5LXRydW5rCis1NzcxNSBhMTEzNjczMTdjYTBmY2NmYWU5NGQyMTlkMjY0NjNiOTRlYjk4MWEzIHB5M2sKKzU3NzE2IDhiMGIxMTQ2ZDkwODA1ZGU1NGI4OWQxZmQ2ZjFiZDY5YTFhY2Y5ZjggbGVnYWN5LXRydW5rCis1NzcxNyAxMTMyMjBkYWNlNjQ2YmIzMTBiNzUzY2JhMzdkZTQwN2RlODJhODBlIGxlZ2FjeS10cnVuaworNTc3MTggMzlkOWU1MDAwZTdjZjRjMmNhNDViMGQwM2RhMDVlYzU4MTA1OGRkMiBweTNrCis1NzcxOSBkZjUzYzU3NmM1MzFlY2UxZDQ3YmMwNTFkOTQ3NjY3NjM4OTNjMDA3IHB5M2sKKzU3NzIwIGI2ZTMzYjVlYWM0MGZhZTA1MmUxYWMwNzBkZjljNzNhYTg5NmQwYWMgcHkzaworNTc3MjEgMDhmN2E2YjI1YzhmMmJkNDY2MDU3MmVkNWE3OGZmNWU3MjkwZDc4NSBweTNrCis1NzcyMiA2NTAwYzhiZDdmZWFiNzA1MDE4N2Y1OTc1Mjg3OTJmNTFjN2JmZDE3IHB5M2sKKzU3NzIzIDNhN2JkYjBhNTk0ODJiYTAxMzFhYTU4ZTYzMzQzODEyMzc0YThlMjcgbGVnYWN5LXRydW5rCis1NzcyNCA1NmFmZGQ2ZDZjZjc4ZTkxYTI2NmMwMmFjZmIwOGY2MjU0YmVkY2Q0IHB5M2sKKzU3NzI1IDIyN2NjZGQwZjhkYjdhZjI4YmZmM2Y3Y2E3NjU5MGM3MWM5ZTI1NjIgcHkzaworNTc3MjYgOTczZGEyZWJjMmQwZjM3ZDBhZDA1Nzg5ZWIyMjZkZjM4MDljZjI0OSBsZWdhY3ktdHJ1bmsKKzU3NzI3IDZmY2I4NzNmMzk2YzY4ODlkZWM1OWE3YWE0YTc5MDgxZDc0NzE3MjAgbGVnYWN5LXRydW5rCis1NzcyOCBkODNjMmIyMWFjMjZlYzJlY2Y0MmU4Y2M0NWM3YTI2M2JjZDljZmRiIHB5M2sKKzU3NzI5IDdlYTY4ODg1NjJkMWQzODQ3MDMzYzExNjZjMzE1ZTBjODRmNjk3YmUgcHkzaworNTc3MzAgM2JmMWI4YjM0MDgwMzJkOTA3Y2FmOWY1NGM2NTIyYjlmYTIwNGRlNiBsZWdhY3ktdHJ1bmsKKzU3NzMxIDdkZmVkMWNmZTc2MmM1NGU2NDQ1YTBkMTY0MWZlZmZkNjZiMjEwNTkgcHkzaworNTc3MzIgNWI3YWFmYWRmMjIzMDE5NGRlNGU1N2VlYjI0NDg1OGJjZDUwYzM5MSBweTNrCis1NzczMyAwYTM4YzEyOTcxN2EzMTU1ZTc2YTliYzQyNmNkZWQwYzM4YzAyMTZmIHB5M2sKKzU3NzM0IGQ2MDM2N2ExMzE2ZjQzOTBkNzc4MjUyODJlM2E0ZDZlMDQzOGM5NmIgcHkzaworNTc3MzUgNzgzZWE2ODIxZTA0NzFhMzU3N2M4YTk0YTlhN2Y5ZDg1ZjYwNWI3NCBweTNrCis1NzczNiAxYTkwMWIxYzdjZDMxODYxNTI3MjVhNjFjYjE3ZDNhNTRjNWVlM2Q1IHB5M2sKKzU3NzM4IGU3YTM5MGEzNmVjOGY3M2JjMDQ4MTFjOGQ0ZTI3OTUwNjc2NTQxNjkgcHkzaworNTc3MzkgMDJkMWI1ZTdiZWY1NjhmY2EyYmFmNTMwMDY2ZmY5YmY4YmI3MTk1OSBweTNrCis1Nzc0MiAwOTNmZDg0ZmE3N2M0NTQ5M2RhMTdjMjkzODVhN2UxM2I2NDU4ZjNkIHB5M2sKKzU3NzQzIDZjMjAzYjdiMWUwYTExOTdjZmQxYTc2NzNlZjFlZWM2M2RlNjFiZjQgbGVnYWN5LXRydW5rCis1Nzc0NCA2YmJlY2MwMjhiY2UyNjZhMDcyM2M3OTc3NzA1ZTY2YmE3ZWExMmUzIHB5M2sKKzU3NzQ1IGE1NTMyNGM5NjAyZDYyMWZhZTNkMTExYjU1YzdmZTYxMmI2MWRmMTggcHkzaworNTc3NDcgYmVhZjY2MzA4MTQ4ODRmY2U3Mzg3YTdhNjE4ZDYzOTFkNzE2ZWZhZCBsZWdhY3ktdHJ1bmsKKzU3NzQ4IDY2YTVjNGJhOTM4ZWFjYWRmNDQ1NWZlMWIyZTY3MWUzNDBjNzc1YjggbGVnYWN5LXRydW5rCis1Nzc0OSBjNGE5NmRlNWU0NGU1OWY4Yjc4OTYxOTY4NWZkZDc4YmY1MmM5YWZiIHB5M2sKKzU3NzUwIGZmOTE4ZmNjNTdkMmFhMzkzMTAzM2RhODZkNWUxNTA1NmU1ZmY2NDEgbGVnYWN5LXRydW5rCis1Nzc1MSAyMzM2NDQ5NmRmMzEzNzRjMjUxMTEzNjJkZDY1NzBlMTcyY2Q2ZDAyIHB5M2sKKzU3NzUyIGRiOWExNzYxOTBkMzYwZDc4OTUxZDJkZWNmYjBmYTJiMGIyZGUzNmQgcHkzaworNTc3NTMgNTA0YzE1ZjA1ZGYzNTQ0YTM5ZjZlODMzMWMyYzczYTM1MjQ3YWFiYyBweTNrCis1Nzc1NCAwZmQxYjRlMmY0ZWU1OGFlZGRkZGM3Y2EwNjMxOWEyNGEzNGQ4NWI0IHJlbGVhc2UyNS1tYWludAorNTc3NTUgZGNlZGQzMmYwNmRlMzcxMWQwZDUxZDRlNDI5MTc4ZGQzMWJlYzQzMyBweTNrCis1Nzc1NiAzZTNiYzg0MTIyZDdiZjdjZjRkMWVlYmRjYmU4M2E2Mjk1MTIzOWFkIHB5M2sKKzU3NzU3IGJmMTFlZDQwYjEwNThkYjRhMDI1ZDc0NDQ3M2UwZjdkZGU4ZGVkMDcgcHkzaworNTc3NTggODdhMGZkY2FhODRhNjQ0OWRmMmRmMTgwMjgyZjk1MWJlOGI1NzdmZSBweTNrCis1Nzc1OSBhZTkwNDIwZDI2MzU1ZTI3MTgxZTkxNGQ3MmI3MDZkM2VlNDhjNTZiIHJlbGVhc2UyNS1tYWludAorNTc3NjAgNjhmOGIyMzkzMjQzNzdlMmZiZDUxMDExMzAyM2MxNGQxZTlhYmM3MSBsZWdhY3ktdHJ1bmsKKzU3NzYxIGFmYmY2ZmQ3Nzk4MDc5ZGUyNmRjMjE2ZjFmYmFhZmJlMTY0OWU5OTEgcHkzaworNTc3NjIgMjBkOGQxMWM5YjIxMzgxZjVjODY5YTU1YThmYjJlYmUxOWE0Y2Q3MCBsZWdhY3ktdHJ1bmsKKzU3NzYzIGNiMjUwYjA0NzNmY2I2Zjc2OTkyY2M2YjA2ZjBiMzJmYmFkYjZmZjkgcHkzaworNTc3NjQgNWQzMTRjM2U5OGVkZTU2ODVmMDQ2ZDAwYTg5OTY0NjZlNDY1MmNjZCBsZWdhY3ktdHJ1bmsKKzU3NzY1IDhkZmQxODA4MzU0MGQ5MGJlYThmOThlNDNjNWM5N2JmMTY4NmViZTIgcmVsZWFzZTI1LW1haW50Cis1Nzc2NiAxYmNkZWExZGM4Yzc1MGY3ZGM3M2QwYWVlYWZkNDBiODhkZjVkZjc3IHB5M2sKKzU3NzY3IDJlM2MwMmM2MjVkZWFjMzcwNWEzYjcxMjZmMGMyYjA4MDg0NzU5NWEgcHkzaworNTc3NjggOGM4OWI4YzQ4YjZjYjkwZmUxZDU4ZGYxMDg1YTIxYThlOTY2OTFhOSBweTNrCis1Nzc2OSBhNmJkM2RhYjNlYjhjNGVjNGEwYjZjOTY1ZjkyYWYwMzg2YzIyYmFjIGxlZ2FjeS10cnVuaworNTc3NzAgOTJlNDdkMzM4ODRlNDdlODlmM2E2YjEzNjc4MDVmMzg0MTEwMDA5YiBweTNrCis1Nzc3MSAxZDU3ZmI3ZWZiMTViMGRiYTRiNjc0MGMxNzM1NjBmODk1MTc2MTU5IGxlZ2FjeS10cnVuaworNTc3NzIgZGQwNjg4NzQwZDI0M2RiODYzOWZjOGI3ZGM4MDg0MDdhODE5N2QyYyBweTNrCis1Nzc3MyA0YTA3YTI4OGY1YzQ5YWY0ZTNhZThhMTgyNGJiN2IyZjA0MWRhMWUxIHB5M2sKKzU3Nzc0IDY5ODkwNmMyZjQ2OTEzMGFiYjA5ZmFlZGU3ZGZhODE4Y2Y0NTEyY2YgcHkzaworNTc3NzUgYTlhY2MwNmRhNTdhYjQ0NDA5NmM3NWUzYTA3Y2FkZGJkMDkwNmY1YyBweTNrCis1Nzc3NiA1NGRlZjE4ZWIzMWZkZmQxNmE1NzExZDc1MzYzNWY2OGU2YjI1MjQ1IGxlZ2FjeS10cnVuaworNTc3NzggNDQ0MWMzODc2NTBkOWM4NjMyMDM1ODNmOGQ5OTU4YTVkMTUyZDljYSBweTNrCis1Nzc3OSA0ZTZiNGJhNjBjM2IyODQyMGJhNGUyYzViZjE2ZmUyMzhlMTI0MzUwIHB5M2sKKzU3NzgwIDNjNDMyOTQzMWJiYzQ4ODJiZjllZTNjMzgxZjE0MzA5ZDdiZjBjOGMgcHkzaworNTc3ODEgMzJmNmRkOTVkMWJhN2NhN2YyYjI2MjAxZDAwYTI3NTA0ZTgwZGFkZiBkZWNpbWFsLWJyYW5jaAorNTc3ODIgZTkxZDJiZjcxZmRlZDg3YWMzZDEzMWNiYzRiNWEwYTliMjRmMGY1ZCBkZWNpbWFsLWJyYW5jaAorNTc3ODMgOTgxZWNjNTI2NzAzMDNkN2QyMzFmZjdhYTk1NWRlZjI3MThkNTU3OCBweTNrCis1Nzc4NCBkMmU5ZGFkZWRjYzZkOWFjOGEyN2U1M2UzMGQ3NmQzYmJiYjRmZTIzIGRlY2ltYWwtYnJhbmNoCis1Nzc4OCBkZWU0Yzc4ZWE5MTBjODRiZDE4YWIxNmQ5NjkzMTE0YmRkNDNlMmI5IHB5M2sKKzU3Nzg5IDY5MWI1Y2NlZjBjODExYmJmYjFkNDU5Njc1Njk1NjRhN2VhNzcwN2QgZGVjaW1hbC1icmFuY2gKKzU3NzkwIGRkNmNmMDBjMTc5NDk0YTdlY2NjNzkyOGFlMjMxNTg2YmZiOWJkZmIgcHkzaworNTc3OTEgOWZiMDMyN2IzMTEwMDkzYzlhNDIzNTNkMjU4NGExNzdlYmM1MzlhZCBweTNrCis1Nzc5MiBlZWQxNWVjNmI3NTk5NWJjZTUwNjVlYjU1Y2Y5NjFkZDQ1YjdkZmJmIHB5M2sKKzU3NzkzIGE4OWQ0NjllMWZmNzc3MTY5MTRjZTFhNDI0NGZhNTI5YTcxY2U2OGEgcHkzaworNTc3OTQgNTdlM2Y2ZjBhNTg4YzAyZjI2MTJlZTMwOTkyNDVhOTIyOGQ1YjhkYiBweTNrCis1Nzc5NSAwMTM1ZjBlNjc2YmQwMWI0MTEzYWFhNDZjM2NlZGZkZTVhNTdkZDUyIGRlY2ltYWwtYnJhbmNoCis1Nzc5NiBlZWU1YmRkMzcxNTg3ODQwOTJlNGMyZTdmMmYzODA5NjM0NjJiMDE3IHB5M2sKKzU3Nzk3IGNkYjdiOWY4MmNjNDU2MDg3ZjgxYzU5NGE4MDQ2YmVjYTY2MTg5MjIgcHkzaworNTc3OTggN2IwMjM3Y2JkMGVkMTE5NDY0MGY4ZTBmODE1Mzk0MDdhNWE2YWZlYyBweTNrCis1Nzc5OSA5MGM3MTViYzdkMzA1ZGEzZDE3MzczYTY3Zjk1NGY3YTdmZTk5NzFmIHB5M2sKKzU3ODAwIDdlYzA0Y2IyNjJkMjFlMjRkZTQzYmU4NGRjYTRkMjAyZDgwMDgxYjMgcHkzaworNTc4MDEgODQ1NGEyYmZhZTA0NDU2ZjBmNDUwYjllMGFlMzMyMDcxNmY2OTIwMSBweTNrCis1NzgwMiA5NWQ2ZmUyZThlMGU5MWYxYzkzNmEzZGJmMzA5YTg0NjNhOWVmMjY5IHB5M2sKKzU3ODAzIDBjZjcwMDQ2NDE3NzZkNzIzN2RmNDE0MWIxNDZkNjRmOGZjYWExZGUgcHkzaworNTc4MDQgN2VhMTM2N2JhMjc1ODhiNDJiZGVjZTA3YzRlN2ZkNjA3MGY2YjYzZCBweTNrCis1NzgwNSA4OGFhYTM4MGYwOTE3YzI3MDA3NGQwYWI4ZTJlNzliODdlNTA5NjdiIHB5M2sKKzU3ODA2IDE0ZWU2NzA1NTdjZjAwMDgwMTU1MGMxNzZhZjQ0MGYxZjUwYWU5OWMgcHkzaworNTc4MDcgZmVjMmMwMjk5YThjYmFkMjFiMmRlZjkzZmE4NjFiODc5ZmU3ZjQ5MSBweTNrCis1NzgwOCA4ODM0ZTY1NjgzZTdiNDEyODdkNmQ3ODRmYmJjYjhiNDQyZWJjMDQzIHB5M2sKKzU3ODA5IDM0MjQ4MDMzMzdhMzcwZDY5OWNmMjE2YmZjYmNkYjEzOWUyY2E1MTIgcHkzaworNTc4MTAgODVhNjc4NTc5OTgzMTQxOGI2YmZiYjczNzgxMDkxZWRmNmZlYTgyMCBweTNrCis1NzgxMSA3Mjc1Mzk4NjVmMDQ2NWNjYjk4NTU4MDk4MThiNjZkN2FhYjQ5MTZkIHB5M2sKKzU3ODEyIGVhOGI4ZTNkOGM5MzI4N2UxMDUyZWI5NGI2NDM0ODAyYjQxNDNhZTQgcHkzaworNTc4MTMgMzQ0OTFkYzE0M2U3Y2Q4NDZjYjNkN2QwM2U4Y2FhNWUxNjAwZWRjMCBweTNrCis1NzgxNCBlMTQwNTVlODJkYjk5MWViNzU3NjlhZGI1MDA5MWVmY2ZkYWRiNDg2IHB5M2sKKzU3ODE1IDIyMWZmYWRjMWE0YzI2OTUwMDg5NmExNmVhMzJiN2QzM2IxYWRiODYgcHkzaworNTc4MTYgYzkyZDQyNmVlZTc1MWI0MWRkMWQxOGI1OWZhNzk5ZjJjMTFkNGMxOCBweTNrCis1NzgxNyA0NzI5MGNhZjdlOGU4M2QxODdiMTRhNWE3YTRhZDU2MDk4YTFmN2M3IHB5M2sKKzU3ODE4IGQxNWQ5YzZiZWRhN2ExMDRhNDZlYWVlMTliMzkwYzUyZTI1YTI1ZmEgcHkzaworNTc4MjAgNWZhNWIyMTMzZmViZDhhNDc1OGRlZTRkZGExMGI4NTA4ZjA0MzY0YyBsZWdhY3ktdHJ1bmsKKzU3ODIyIGJjMThhY2Y4YjYxODJkYTE5ODk5MmRlM2M2OTQ0OTM5NjEzMDEyNjYgcHkzaworNTc4MjMgNDMwNzdjMjc5ZDE3Yzg2NmUzZDllNjVhOTI0NGFiZTkyNGMzYzRkZCBweTNrCis1NzgyNCBkNjdiOTRmNDlkZmNjY2YwM2E1ODhhMzFiYjYxMDVjMzdkMWE0ZDNjIHB5M2sKKzU3ODI3IDk5OGQ3NTdmM2ZiMGFlOGI1MjE3Y2NjYjMyMDA0ZDFlNTMzMmZkNGQgbGVnYWN5LXRydW5rCis1NzgyOCA5NThjNGNjNTk5M2UxZTZhMTA0ZDE3ZjgwMjBjOGY2MjdiNjlmNTVhIHB5M2sKKzU3ODI5IGExMmEwMmI5ZjY0OWRhY2M3OTZhMzQ3MTg5OWNlNGI0NzI0N2Y2MGIgcHkzaworNTc4MzAgMTEyNmU3ZTg1ZjE4MDQ1ODg2YTE1OWMwOGQwYzNlZDViY2ViMDk2ZiBweTNrCis1NzgzMSBiNWYwNmU1N2EyNGY0OTg1YmVhZDIyNjg3MjY5M2MyMWUzYTZiMTNmIHB5M2sKKzU3ODMyIGY3Zjk0NDM3NDQzOGMwM2MzNzY4M2ZkNjJjNzNiZmIxY2M5YTEzZDQgcmVsZWFzZTI1LW1haW50Cis1NzgzMyA3MTEyNTI0MDJiMmY1NjczYTZmMzdhYTkwNWY3NWUyNmM2ZTJiMmZlIGxlZ2FjeS10cnVuaworNTc4MzQgNzcwMDBmMjY0MWVlOTE2OTdhMjIxNWNkMzZiYzJjZjA3NWM5Y2FmZCBweTNrCis1NzgzNSA1YzMwZjE1YTZiODc5OTdiYjkzNTQyOTVkNjdlYTk3NWM5MDE5ZTg0IHB5M2sKKzU3ODM2IDIzNjFhYWVhZmNiY2M4NTllNmNlNWQyMTQ0OTQyZDM1YjM0N2I0Y2YgcHkzaworNTc4MzcgMDgyY2VmM2JlMjliMzM5ZjNhNTVkYWI3MWJkYmRhNjk1MWYwNmJiMSBweTNrCis1NzgzOCAwNmRjNDMyMWE1NmEwYjM5OWUxMzA3Mjc5OThiOWIyNjRjNmJkNDA2IHB5M2sKKzU3ODM5IGE3ZDU0NDAzNTNjMzVkNDM5ZjhjM2MwODJkMjVmN2JiZWQ5ZGY5OWIgcHkzaworNTc4NDAgZmZiMTAwYmUwMzEwZGE1ODRmNjhmNzYzZDQwMjBhZmFmZTBjOWU4MSBweTNrCis1Nzg0MSAxYmI2M2EzMmE2YzhkOTFhZjk2NmVhMmM5MzU5ZGU1YjVkNWFlMTc2IHB5M2sKKzU3ODQyIDQyMzE0ZDdkNjA4M2Q0ZmVhZjMwMzFiOWI4MzFhMjg2MDE2Y2E1YWEgcHkzaworNTc4NDMgYTZmM2JjMjE2YzM3MGJjNjhhZTgzMGY4NGMwMGMxOGMyMWYzZmVmMCBweTNrCis1Nzg0NCBiNWUwZjc3MjEwMTRhNmM0ZTE5ZDRiMTJmZTI5ZTY1Yjk4ODk0MTZkIHB5M2sKKzU3ODQ0IGNkM2Y3ODNjZDA4YTE2NzgxZTIzNmMwYjljYjU3MTdkMWQ5OTVmYTkgcHkzaworNTc4NDYgMzM1ZWY4NmE4YzVjYWM5OGM4ODE5NTIyZWJlMTJlMDY0M2UxNDYxZSBweTNrCis1Nzg0NyA5ZmYxMTI2ZjA5NmMyYTc1ODI3OWUzZmU2YWJmNjFlNWI0YzMwZDg5IHB5M2sKKzU3ODUwIDhjMWMyZDViZWQzMjI2ZjVkMDM1YWQ3YzJiNjMzZjFiYjc1MTEzMjcgcHkzaworNTc4NTEgMWQwZjRiM2VlZmFiMzc3MmM0MDAzNjJhNjc3ZGJlYTExOTliZDlkYyBweTNrCis1Nzg1MiAyMGFiZGI5MTZjZTMyM2UxOTUzZGJlYWNhZTkwY2M5YWZjZDc0OTVjIHB5M2sKKzU3ODUzIDI3NWY4OTRkYmYxMjFjNDA0OTYwYTMwODNmMzRiOWRkNWY1MDllZGYgcHkzaworNTc4NTQgOWNmYWQ5YTVjODNiMzgwZTJkY2U4NGVlNGU3ZWI0ZTI1ZTZjNjcyMSBsZWdhY3ktdHJ1bmsKKzU3ODU1IDlhZjljOGE3MWJmZTgzZDJmYTg4OTUxZDNiNDdhMTEwYmE0ZDQwMzAgbGVnYWN5LXRydW5rCis1Nzg1NiA0N2M4ODBlNDhiZjZiMmU5MmNlZDRjNzk4ZGM4ZDg1M2FlZjA0YTc2IGxlZ2FjeS10cnVuaworNTc4NTcgZTliNjczNmMxNjMyMDg1YjZkNjZkMTM4Mjc2ZjQzNmVkY2M1MzI0NiBweTNrCis1Nzg1OCA2NmM3NTFlODFjOTBlNmQ0NDk2NWEzMGE5NmZkNTc0ZmZlNzIyYjFiIHB5M2sKKzU3ODU5IDUxYWZjMWQ1NjVmODMyYmZkMWQzZWQ4ZjMyYmY4ZDY1ZWEzNjYyMDYgbGVnYWN5LXRydW5rCis1Nzg2MCBiZDk5ZmVhZmY5OTU4Y2I2MGIxMGFmYTViZDE3MDA0ZTQ3YWJmYTkzIHJlbGVhc2UyNS1tYWludAorNTc4NjEgNjIwZGNhNjc1MTM3YTE2NGQwZDRhNjI1ZjRhMjBmOWQ3NjVhOTdhOCBweTNrCis1Nzg2MiBlZTFiM2ViN2EwMTM2ZGNjMTI2OTMzYjVkNGUzY2E3MjJiOTJjMzc2IHB5M2sKKzU3ODYzIDBhMGI4MjI2NTcwNjIyODJiMzhlNzNmYzZiMTE2NWYzODdmZDI2MTUgcHkzaworNTc4NjUgYmVkMGY1MGVjNzBiN2Y5ZWY0NWFlNjhmNjgxMWY5YWM5Y2JlMTNkOCBsZWdhY3ktdHJ1bmsKKzU3ODY2IGQ4NDI0NTdlNGIwZTM5ZmIyYjEzMmUxNGYyMmNkZWRjYTQ1ZmU0MDYgcHkzaworNTc4NjcgYmYzYzk0MjEzZDVkMWUyNDM1OTM3ZTJjODVlZjhhOGQxNDg4NTc3MyBweTNrCis1Nzg2OCA1ODNlNDFkMTI5NGI0YTUzYTAyMGY3YmM3YTAxY2Q3NjZjYzQyMDk1IHB5M2sKKzU3ODY5IGRhMjg1ZDNiMDY1YWMyYWQwYWIwOTdmNGVkNWI4Mjc2ZjY2YTgyY2UgcHkzaworNTc4NzAgODA4ZjMyYTBkOTljMmUwMmM0Y2NiNzM4YWVmZTM4MzNiODFmYWU2YiBweTNrCis1Nzg3MSBiN2JmYTc4MGE4ODI4ZWM2NjVkMjA4Mzk0ZDdmOTU0NDhlNjNlYzYzIHB5M2sKKzU3ODcyIGY0ZDJlZDUwZGU4NTlkOTFkOTQwNGM3MjJmYTM1YjMyYWNiYzk1ZmQgcHkzaworNTc4NzMgYzRmNjNiYjRkMzhhMmM0M2Y2NjU5NjlmN2VhNzk2Njg5MWI0YjQwZCBweTNrCis1Nzg3NSBhY2FjZThlYjBiZDgyNmQwMzBjOTBiNTcyZTIwNDkxMzczZDk2YjZkIHB5M2sKKzU3ODc2IDllYmE2ODllY2YyODdkYzc3M2UzZjk1Yjk1NWRiMTI5NDdlYzA0ZjEgbGVnYWN5LXRydW5rCis1Nzg3NyAzMjBjNmJlZjhkMzBjMjlhOTY5ZGU0OTkwZmI3NGMyMWM1ZDg2NjU5IHB5M2sKKzU3ODc4IGNhZjBkN2UzYjI5YTVmNmY4ZGM3YmVlMTUwYzE2ZTg4ZjUxZjhmNzQgbGVnYWN5LXRydW5rCis1Nzg3OSBhZDNkNWFjYWNmMDNkZTcwYmY1MzhjZTRjODdiOTZlZTc0YWY0NTI5IGxlZ2FjeS10cnVuaworNTc4ODAgOWIxODMzZmM1YzdiMjA3YjJjYzYxMDQ1ZWNlNmFkNjZjNDg0ZmMxZiBsZWdhY3ktdHJ1bmsKKzU3ODgxIGNlM2EwNzEzNTFmY2NkNTBkYTc3ZWNlOTY1M2E4OWM3YWMyMDg0NDMgcHkzaworNTc4ODIgMTRlOWI4N2I3NTNiMjc5YjM3MjI1OWJmYjI4NzlhNTU3YzE3MTI4ZSBweTNrCis1Nzg4NiAzODZjMjJkOTNhYjY1YjYzYjA1Y2FkODkzOTQwMDA1OWY2Nzk4N2ViIHB5M2sKKzU3ODg3IGQ0NDI5ODRmMjkwYjljMjVlMGRlMjg3Y2QxM2U4OTNmNTE0ZDBmNTYgcHkzaworNTc4ODggM2FjMjM3YmNhNWVlNTM3OWMzNWZlYmY4MWE1NGVjNGRiNGVkNWRiNSBweTNrCis1Nzg4OSBkODY2NzJiZGU2NDA2NTY1YWRlZWM1MzBlMTgwZTVmNGFkNjM3YzViIGxlZ2FjeS10cnVuaworNTc4OTAgZWExODQ1MTM2NjBiNWQyODE2YTdmYTc4MmQ1ZDJjMWI0M2ZhNjYxZSBweTNrCis1Nzg5MSAyNzliOTU2YTNhOTYzNWRmMWI2NDFiODk4NmQ4OTE5NDE4ZmZmOGRiIHB5M2sKKzU3ODkyIDE0Nzg2ODhmNDU2NTg3YTUwZWRmNTk5MTg0NzNkMTU0OGUyMzViZTggbGVnYWN5LXRydW5rCis1Nzg5NSAzNmY1NmEzZWYzNmY4MDkwMWMwNjUwYmIzOTg4M2FmNTI2Yjc3NTJiIGxlZ2FjeS10cnVuaworNTc4OTYgYjc1MTZhMzQ2ZjBmMzk4ODQzMTRjM2I2MGQxMTRkMDI2NGQyN2YwZCBsZWdhY3ktdHJ1bmsKKzU3OTAzIDFiMGQxNTQ0NGNhNWQ0MjZkZjhhMTAxY2E0YjkxMGE2MDNmY2ZmY2QgcHkzaworNTc5MDQgY2UwY2IyZDg2OTE5OWRmOGI3MmI1ZDg5MzVmOGY1Y2YyYjdhZTBiZCBsZWdhY3ktdHJ1bmsKKzU3OTA1IDFiNWIwNTQ2YTdkZDJkOWNkNWIxYjI4YzRjNmEwZjlmZTU2M2M5NTkgcmVsZWFzZTI1LW1haW50Cis1NzkwNiA0NjNiMzQxYTlkNjMxZWM0ZGYyMzg0ODcyM2Y2ZjhkMTVhMWNhMmU4IHB5M2sKKzU3OTIzIDQ5MDI2NzFkZDY3ODUyNzg5YTBlNjFmZDI3NDBmZmRlZDFlNTI5YzQgcHkzaworNTc5MjUgN2M2ZTdkMTlmZjUzYmM0ZWQ4MjY4NjYxYWJiYzYxMDYyYzIyZTM3YSBsZWdhY3ktdHJ1bmsKKzU3OTI2IGI1ZjUzNWNmMTM1ZmM5ZGM0MjBlYzkxMzRmZjkxOGE5MjE5YjZjZTAgcHkzaworNTc5MjcgYjUxYWMyZDJkNTM4YmRhMGY2ZjU3ZGQxZWVhMDNjODhjZTcwMTAyMiBweTNrCis1NzkyOCA1NjRhZTU2YmQyZGE2MWM4ZjI0NWUzOTk5YTBmYmM1OTE3NDhiZDI3IHB5M2sKKzU3OTI5IGY0ZmI3NGY2MzgwNjdmM2QwYzQ5MTM3YzNmNjRkMzI0NDE0NDQ2M2QgcHkzaworNTc5MzEgZGQwYzY1M2JhMjlmMjMwOGYyNjJjNjhmNjM1OGY5NzlmODQzMjMzMyBweTNrCis1NzkzMiA1NzhiMTc0NjFmNmI2YjlhYmExN2IwM2RjOTIxODU0ZmZjYzFiMzdlIHB5M2sKKzU3OTMzIDExOTkzYmNiMGJhM2QxZDlhNDZiYTkzOTM0OTZhMDMzOWZiZGUzODEgcHkzaworNTc5MzQgNDM1OTc3NzhlZjJjYmM1MTMzNGRhMWI5YjJmNTdkYmQ5ODBjYTE4OCBkZWNpbWFsLWJyYW5jaAorNTc5MzUgN2ViOTU0MzUxYTRmZDdkZDQ3N2YwYjUwNmZjNGNjZjI2ZWU5ZmUzZSByZWxlYXNlMjUtbWFpbnQKKzU3OTM2IGM0OGNkNmUwNmFjYTUzOWQwNTI5MDc2NzYwNDUzOGJjMGZjYTBmN2IgbGVnYWN5LXRydW5rCis1NzkzOCBhOWZiNjVjOGVhY2IzODFlZTI0OGMxNTUzYjkzYzUwZWY3YmRlYmY0IHB5M2sKKzU3OTM5IDQ4ZWU2MzlhNzVkZDcyZmVkYWQxOTRhYjQzZWU1ODA2YWQ3MGQ1ZmIgcHkzaworNTc5NDAgZTI1M2IyMDQ1MjUwNjlmZWVjNGZjM2IyMWJhMDY2NDJmNmZmN2I3OSBweTNrCis1Nzk0MSAzY2JiNGY5MjIwZjQxOTI1YjEwOGZmYjdhYWEzMjRjZDdhNmE1ZTdhIHB5M2sKKzU3OTQ3IGEzMTFhYjJmYzFhNzAwNTE1MGE0YmZmNDUxYWNkMDA3YzgxY2UzY2QgcHkzaworNTc5NDggMzQzNmRhZjQ1NTE2YWU3OGM4YjIyZmYzNTA1MGQ3YWI0NWUyNzk5ZSBweTNrCis1Nzk0OSA0MjhkOTIxODA0ZmE0M2NkOGU2MWM0YzQxOGI4ZjMyNjZlODgxNGQ2IHB5M2sKKzU3OTUwIDY1NTA3MWJmNmM0NWM2ZDg2NWI0NDNkNGE1YzlkMTEzNTYyYTFjMmQgcHkzaworNTc5NTEgYTFjYzliNTg5ZTIyMmVmMjk5YzE1Zjc2MzE4NjA1OTk1NGYyYTU1OSBweTNrCis1Nzk1MiBiYmQ0ZDI5NmY3NGFjZThmMjhlMmI2OTRmNGFkOGZiZjg2MjE0NTg2IHB5M2sKKzU3OTUzIDk3OGM0MmI1MzhkMWM5YjRlOTI4N2M3ZTFjNzFlY2IxMmI4ZDc5YWQgcHkzaworNTc5NTQgMjA1MmY1NGNlZDQ5NjYwYjI4OWY0YzI5MTg4ZmU4ZTQyZTc2NGIyNSBsZWdhY3ktdHJ1bmsKKzU3OTU2IDAyOTRiYjJlOTVkZTMyOWJmNTkwNzlkNjI2YjJiZWJmNjNlYTYzZGQgcHkzaworNTc5NTcgMzhmM2Y5ZWYxOTNkMmFhNDQ5M2MyODFjYzRjMWNiMjQzNzNiNTMyNiBweTNrCis1Nzk1OCA0N2Q5MmRiN2NkMTAyMjJjZDdmYjEyNjc3OGJlOTEyYjM3NzczZDc3IGxlZ2FjeS10cnVuaworNTc5NTkgYzlhYzViOGU0YTgxNjk1ZWRmYzFhYzhlNDIwODM1MTgyOTI5MzIzOCBweTNrCis1Nzk2MCAxYTBjNzM1ODA2NjVlZjZkNDE1YmEzNjZjOWI1MmM1M2NlYjY5MGViIGxlZ2FjeS10cnVuaworNTc5NjEgNmEwNDhmZjMwNDg4ODc4YTJmZDIzOGQyZDkyZTI0ZTA2MmVkMDVhNiBsZWdhY3ktdHJ1bmsKKzU3OTYyIDQyNTEyN2MxZDExM2M0ZmFhYWYzYWIzYmVmMDA5ZTEyYjg3OTQ5OTIgcmVsZWFzZTI1LW1haW50Cis1Nzk2MyA4ZTcwZmQ2YTdkY2IwOTUyM2VmMDRlZjRmMWU1NjVkOTY1Y2QzOTdlIHB5M2sKKzU3OTY2IDA4MWUzNjIzMjVkYTY4ZTNiMzc3MTNjZTI1NDBmODhjYzI0MmQ0MTMgcHkzaworNTc5NjggMzRiYzYzOGFjNzA3NmVjMTViYTE3M2ZmZjVlNWU5NTc4NjI5ZTAwMSBweTNrCis1Nzk2OSA0OWQ2ZmE5OGRjNzgxN2Y1MTA1YzA3OWVlZTQ0ZDU2ZTdmZGFjMzgxIHB5M2sKKzU3OTcwIDc5MDRmYmFmYWIzZGU1MDg2NTRmZjkxMWNiMDM5NDc3ZTM5YTJhMjEgcHkzaworNTc5NzEgMzQ4NDM1MGE0ZjY5ZGYzNzY0MjI2NGQyYjJjYjE4ZGJiZGRmNWE0NSBweTNrCis1Nzk3MiA4MGZmY2MxNjFiMzBjOGY2OGIyODk5OGY1YmY1YzliYWM5OGNkYjU2IGxlZ2FjeS10cnVuaworNTc5NzMgNTNiOGZjMDc5MDc3ZjQ4YmVhYjFiOGMyY2ZjYzBmMzU5MzU5OGZiNCBsZWdhY3ktdHJ1bmsKKzU3OTc0IGM2YjExMjNlMGU2Y2E0YmUxZDA1MjBmMDI2MjBiMTk0ZjA0ZTYxYjcgcHkzaworNTc5NzUgMjk0ZTM1NDUyZDI1Nzk4NTI4ZTRiNGJhNTY2MmM5MTU4YzNiZTdjNiBsZWdhY3ktdHJ1bmsKKzU3OTc2IGU5NDYwNzNkZWUzOGIwNjVkNmFkZTcwNjBjMTA2MzI0Mjg4Y2I3MWYgcHkzaworNTc5NzcgZTZkZTlhZGQ3YzA3NWJjOTcwZmM1YTJkZjQyYWI2ZjQ0M2ZkZmMxZCByZWxlYXNlMjUtbWFpbnQKKzU3OTgwIGUyYjRmYzk2MDgzMGZjMjJiZTFmN2E4NDU3MzlkZGMwNDI5NGUzODkgbGVnYWN5LXRydW5rCis1Nzk4MiA3OTA4MGM0ODg5YmMyN2U5NWQ4Y2M5YjIxYTc2YWJkYmU4ZjI4M2U1IHB5M2sKKzU3OTgzIGNjNDQ0Mjc1NDUxMDVlMzIzYTExNzMyYTg1ZWE5N2I4ODdkZmUyODggcHkzaworNTc5ODQgZDMxMDQ3YTFjZTE5NzY4NGYyZjU1Mjk2Yzg5NzE1ZWUyYmYyMDJiZSByZWxlYXNlMjUtbWFpbnQKKzU3OTg1IDQ1MzEyMjBlNTBiYThjMTRmYjE3YWEwMzMzYmI5NmJmMmU3MTE5NGMgbGVnYWN5LXRydW5rCis1Nzk4NiA1ZmQwNDUxZTc0MDYwOWZjNmE5ZmJhOTcwZTU3YzU5MWU0YWIyYmJlIHJlbGVhc2UyNS1tYWludAorNTc5ODcgN2ZiOWNkOTFlNjQ4NjFkM2RlODkzNWU2YTNkZDQ2ODhiMmNjNzgzZSBsZWdhY3ktdHJ1bmsKKzU3OTg4IDcxYzNlNWI2OWUxNGU3MWRlMzM0NWQ1NTUwMzc4OTczODhhMzRmM2UgcHkzaworNTc5OTAgM2MyYTRmNmFjY2Q1NmFkZDQzOWZlNmFjNTY0NWQ0ZGVkYjBiZGM5YiByZWxlYXNlMjUtbWFpbnQKKzU3OTkxIDU4YWY2Njc1MDE5ODYyZGFiNDQ5YWI2NDU5ZjhmNWE4OWNiZTlkOTcgbGVnYWN5LXRydW5rCis1Nzk5MiAwOGUxMDU1NGU0MzAzODA3MDM2YTkxODQ5MzU5ODU5ZTBmMzdiYTM3IHB5M2sKKzU3OTkzIDkxYzk5MDExZDA2OTQ0YTYxNzAxODNlYWJjOGZkYWYyZDA0NjhjYTggbGVnYWN5LXRydW5rCis1Nzk5NSA3MmE5NmU2YTdjMmZiYzViYjhkZTE4NGFkZWVhYjBjNjAxZGEzYmM4IHB5M2sKKzU3OTk3IDg4NTgxM2NjYmY0NTRjYzBkOTNmNTk2NmUwNGYyMTViMDdkNmRjMmEgcHkzaworNTc5OTggYTRiZDhhNDgwNWE4MDI0NzcxNmYxODFiZjhlZjdhNWVhYmIwYzJmMCBweTNrCis1ODAwNCAwYTMxZDFjNDVhODkyYmE5ZDBkZDNkNTMxZWZkNzE3Yzc0OWYxM2FiIGxlZ2FjeS10cnVuaworNTgwMDUgODg3ZTFmZWFiZGJkZTZhYzlhMTZhNTAyODE3MDY4ZWIwZTEyMGU4ZiByZWxlYXNlMjUtbWFpbnQKKzU4MDA2IGZkYzY3NWNiNWU4YWVjMDM3ODc3OGFkOTQ0ZmEzOTYwZmRmN2VlNjEgbGVnYWN5LXRydW5rCis1ODAwNyBiZThmN2QzY2Q3Y2MxM2IyZjZkZjZkMTlkZGY3OGNmZjc1MGNjMmZhIHB5M2sKKzU4MDA4IGZjYjAyY2I5NmNhMjAxYzE3MjU1NzMxMWI3MzU1MDM4ZWM4YTAyN2UgcHkzaworNTgwMTEgYjRhMmYxMGIzOWQyMGYxMjIyNTU3YjcxODFjMGZjNjE1NTI5NzA4NCBweTNrCis1ODAxMiA3OWRkYTU2OGY0MjVhMzkwOTg0YWMyOWUyZjE0MGUzYTYwNjgzZWQ3IHB5M2sKKzU4MDEzIGFjM2ZjMmFlNGFiY2ZmMGRlMWQyMjA3YmJlMGM3N2NlZTcwZjQ4ZjQgbGVnYWN5LXRydW5rCis1ODAxNiBjNzZhY2E0ZTEwMGRlMTE2MmY0MjdmZDcxYzE2NTQ5Yzc0ZWNlNjQ2IHB5M2sKKzU4MDE3IDdjMmY1YzYyZjhjYTBkOTM3MzNmNjUwMjc4Mzc5NzQ5ZTA1ZGM4MDEgcHkzaworNTgwMTggZWRmYmNmMWZmNzM0MDc1MTBlNmZkNjM3ZDUwMjZiOWZhYzk3NjRhNyBiY2Fubm9uLW9iamNhcAorNTgwMTkgYzljNjE2NWY3YzBkMWUwNGNjNmI3NDhkNWMyYzQzNTg1OGNlODZhNyBiY2Fubm9uLW9iamNhcAorNTgwMjAgZTdmZDFmZDkxYzUzZmFiNmRhODU0ZDI4ZGU2YzgwNTQzOTE0NmZkYiByZWxlYXNlMjUtbWFpbnQKKzU4MDIxIDJkYmE1YWM4Y2UxNTlmMWUwN2JhMmE0MzY4MWEwNWU1MzRmYTEwMDMgbGVnYWN5LXRydW5rCis1ODAyMiBiYTA4ZjdmMzZlOGVkNGMwN2Y3NDM0YmMxMGViNzk2MjVjNTc2NDE5IGxlZ2FjeS10cnVuaworNTgwMjMgNTU2NTY5YWIzZjlkZDg1NTUwZDhmNzE2MzFhYmMxYTkyNGYxMTllMCBsZWdhY3ktdHJ1bmsKKzU4MDI0IDE2Y2I4NWZlZmM1ZDAyNWUzMDRlNTFjMmQ0NGJkNWM1Mjg1MDcwNzkgcmVsZWFzZTI1LW1haW50Cis1ODAyNSAxYmM0YThkNTdiMzEyOTg1ZjRmMjljZDU1N2VkN2UyMDQ3YmMxZjI4IHB5M2sKKzU4MDI2IDcwNTI1OTM1NzRiZjQ3YjQ0MzM2Nzc1OTAwMmZiNTAzYWU2MjA3ZjIgcHkzaworNTgwMzEgNTdlYWJiMDUxY2ZkY2FjZWM4Zjc3YThhNTlmMTE1NTg5MDZhMzNiNyBsZWdhY3ktdHJ1bmsKKzU4MDMyIDNiYzNmMTJjYWUyOGYwMmIzNTcyYWEyYmU3ZmNiMjUwMjVlZjA3ZTUgbGVnYWN5LXRydW5rCis1ODAzMyA4MGQyZGFlYzYxY2M4Y2FjNWFhY2Q5ZGQwZjU2ODI1ZTQ5YjI1NDc3IHB5M2sKKzU4MDM0IDI4NzE2ZGQxNGJjNWZhMjcxNDJjYTU3OWVjYWU3Yjc4ZjI5YWU2OTkgbGVnYWN5LXRydW5rCis1ODAzNSA3ZGFkZDIxZmE4N2MxMmIwMjlhOTU2ZDY5MDNlYmYzYWFkZTRjYzA2IGxlZ2FjeS10cnVuaworNTgwMzYgZjYyODU3NTMzY2JlYWEyYjk0YWFhYmI4MDMxYjg2NWRhODBkOWZiYyBsZWdhY3ktdHJ1bmsKKzU4MDM3IDRiMjEzNGU0NzMwYzIyZDVkMTcyMTJlM2E4NWM0NGVlNzAzNTI0MDYgbGVnYWN5LXRydW5rCis1ODAzOCAwNmY2NjgyYjIxNjZlMzA3YzJhYTFmMmE3YjE5OGRlNjRiOGU4YjkxIHB5M2sKKzU4MDM5IGZjNDcwYmJlOGQyNDJiODdiMjgwZTU4MzYyMWRhOGJhMzZkYzEyNTMgcHkzaworNTgwNDAgMWY5ZWVlMDhhYjM1ZTk1N2ZmNTY1ZmZhNTJiYjAyNmY1MjEyOWI4NiBweTNrCis1ODA0MSA3NTVmYTUxODdkMWJjMTJlOWQ0MGI5NTMwOWMzNmNjNjBjNDE1Nzc0IHB5M2sKKzU4MDQyIDg4NWZiMTdjNWUzMTk2ODI1ZmZlNDc2ZmFiYzkzZjg2ZDYyYTNhZmEgcHkzaworNTgwNDMgZmE1NWQ0MmM4ZDljOGQyZTU3YTY3MjY2ZmM3Yjg5NTU3ODA5YTJjMCBsZWdhY3ktdHJ1bmsKKzU4MDQ0IGI4YTgyMDZjMDg0OTI1MDVmM2RkODM1ODE3ZDQ1NDE3OTg1NGE2ZmQgcmVsZWFzZTI1LW1haW50Cis1ODA0NSBiMzY3ZDZlNDIyMzE1YTkwNGJlNDVkODZmNjc3YjI1ZWFkMGYwNzQzIGRlY2ltYWwtYnJhbmNoCis1ODA0NiAxZjYyMjczNjVjMzZkYWJhYmFhMTgxOGE2M2M2YWYwNzBlN2FmNGM0IGRlY2ltYWwtYnJhbmNoCis1ODA0NyBlODVmYWEwMjE5MWM0N2M5NTBjMTk3MmIzMzdlMTdmODcyZTMxYWIwIHB5M2sKKzU4MDQ4IDA4ODFhYmFiOTM3Mzg0MWU4ZDY0N2YwMGFhYWZmMGFmOTBmOTkyMmYgZGVjaW1hbC1icmFuY2gKKzU4MDQ5IGZmYTA3NDdhN2NiN2EyMDYxNDcwODMyNDhmZGIzMjgwOTVlZGRmZjYgbGVnYWN5LXRydW5rCis1ODA1MyAyYWU2ZGIwYmM3ZWJjYmJiYzczMTJkYjZlMDNhYTBmNTU3NjQyNWQ3IHB5M2sKKzU4MDU0IDg3NmI3ZWY0Nzc1ZDhmYmI5ZTRhNWRhM2Y0NGYwOWE4MzE4NzljNmIgcHkzaworNTgwNTggYmFlYjY2Y2U3YjUxZGRiMzY3MmM0NTU2YzczMDRmYmRhMzRkZDRjYiBweTNrCis1ODA1OSA3OGYxYzMyOWM5ODM3MTNhNDFmMzFhODVhNDBlODgzNmZjNGMxZjIzIHB5M2sKKzU4MDYxIGEwOWVhMmNmZTc2YTMwNWIwMzcxMjljMWNkODE0OTVkMWY2MzcyZTYgbGVnYWN5LXRydW5rCis1ODA2MiA3NWNkNTQ4NjMyNTA5YTJlYWNhN2YwYzMwZjczODdhNmI1YjNkZWM3IHB5M2sKKzU4MDYzIDc2YzFjYzY3MGM2MzNlZmVkOTgxN2FhMDMwOTJiYjYwZWUwZjc3M2MgcHkzaworNTgwNjQgYTExYjQ4ODViNDQ1ZjI3ODBjYjgwNjM1MDJlNjViMjRjMWUxNTc5ZSBsZWdhY3ktdHJ1bmsKKzU4MDY3IGU4YWE3MjRkYTkwNTg0ZDM0MmJjODczYmZjZTUwNTIwZmE4NGUyN2UgbGVnYWN5LXRydW5rCis1ODA2OCBiMzU1ZDJkYmE5YjZlMjVhMzlhN2UyZjlmOTUyYjJlYzdhNTc2ODZkIHB5M2sKKzU4MDY5IDgwN2FkYzAzMDY1MzUxNTFmYzgxZjAzNjFlOTY4NWY4ODdmMmZhYWMgcHkzaworNTgwNzAgM2QxNDk2NDg5ZjU4NTFjNjBmNWU1NzA5ZTU1N2VhNzU2ZDg3YjcyOSBweTNrCis1ODA3MSA5MTc2YTUzYjRiNjI1MGVhYzg1MzZkMGNmMGIxOGExYWRmOGUwYzQwIHB5M2sKKzU4MDcyIGY4YTVmYmEzNWViMzZhZjM0YTliMDJmZjM4Y2IyOTI5YzhkM2I5OTAgcHkzaworNTgwNzMgNzViMjY1YzA4YzkxMGJlNWE4NWJjNDQzMDg1YTIxMzM4ZjQ0NjEzMCBweTNrCis1ODA3NCA5ZjdmMzE0NzAzMWMyNjg2ZGEyNmNkNDBhMTIwOWFjMDc2NjIzZjA2IHB5M2sKKzU4MDc1IDg3NTA1MmMyYjdiMzQ2ZmNkZmIzYzY0M2ZkMGRhZjdhNTFkZDMyODcgcHkzaworNTgwNzYgYjI3ZDM0OTE2MmJkZWVlZDE2ZGRjMzZlMDgzM2NmZjVlYzU1MmRkOSBweTNrCis1ODA3NyAwOTI4N2YyMDU1YWI1ZDhkZjE2NGVjNzk0Y2I4M2FiYmRjMzg4MDE4IHB5M2sKKzU4MDc4IDg3ZDQxMWViYmFlMGUyNDI3YTlhZWNhYmI1N2RkYjgyOGY0YTc2NmMgcHkzaworNTgwNzkgMDk5YWI4MjNiODRjNGExZWE0YWUxMGE3NWUzMTU4YmQ2NzcxZThiMCBweTNrCis1ODA4MCBmYTAyY2QyY2MzM2I4YjM5MzU4YmZlN2MwNTM2ZDUwNTNmNjA2ZDAzIGFsZXgtcHkzaworNTgwODEgYTdkYjllYmVkMjhhZDEyOWUwZDdiMGQyYTVmOWQ2OTk2NjA0ZDI3NyBhbGV4LXB5M2sKKzU4MDgyIGQ5ZmM5MjhkYjFmYWY1NjQ0YjU4ZjA5ZDU3ZDQ2NTY0YmYzODE5NjMgYWxleC1weTNrCis1ODA4MyBhNjY4OTc0MTlhMzRlZmE5NzhhY2FhMWMzYmUzYWQyY2Y4ZDFhNjBkIGFsZXgtcHkzaworNTgwODQgNWE1MWQxYjY1NjI5OTVkYTFlMmExOWE4MWY5Y2VhYmVjYmViODE3OSBsZWdhY3ktdHJ1bmsKKzU4MDg1IGQxNTUyYzE1MGU5MTRkN2JjYWMyMGI2ZGFiNDJmZjI3YThiZmMwYmMgcHkzaworNTgwODYgNjBmYjk4NjEyYTllN2RhY2Q2MmI0NWM0NjFjOTU4NzY0OWNmOWQwMCBsZWdhY3ktdHJ1bmsKKzU4MDg3IGNlYTZhODBiZmZiMjliMGY4M2YyOGJmNWQ0NmM1YjNmNzIyMGQ2Y2EgbGVnYWN5LXRydW5rCis1ODA4OCAzNGI1MDAwMWRkMmMzNTc3MjZiOWQ0ZDNmMDU5MzY3MjQ4OWJhMmY4IGxlZ2FjeS10cnVuaworNTgwODkgODYyYWU0M2NmYjJiMmUyMTZjZTgwYzZhZGM5NmUyMWRkOTAwMGIxNCBsZWdhY3ktdHJ1bmsKKzU4MDkwIDc4YTdiOTlkOWY0MmEwZmMzMTNiZjRhZmFiNjE4MmYzNGFiNjU5MjAgbGVnYWN5LXRydW5rCis1ODA5MSBjZWQyNGNjYzQ5ZGQ2YmIzN2U2YzgwZWQ0NTk5ZTZmMjkzZWM3YzQ3IGxlZ2FjeS10cnVuaworNTgwOTIgYWMxOThmYmQzNzAwNGZjYTgxOTRjNTVlMDA2OGU2Mzc2NDYxOGU3MCBweTNrCis1ODA5MyAyODJlMmQwYzI5MzcxYzExMzQxM2FhNzE3ZmMwYWM5NTAxZjcxZmQ4IHB5M2sKKzU4MDk0IDViZmZiNmM3OWMwNjExMjQwY2M2Y2UzOWZiYTI2MTE1MjhmYjI3ZjkgcHkzaworNTgwOTUgMjZhZTIxMDk2OWMwNWU3YmY1NGExNDMzN2ExOTI0NzQ5YWZiNjczZCBweTNrCis1ODA5NiA0YTZjNzg4MjI2ZjVjMmZkODExMWEwMzMwN2UzNWNkNjdkYjQ4ZjcyIGxlZ2FjeS10cnVuaworNTgwOTcgMTkzMDIwYmY1MmRjMzU2YzlmNjhiZTRiZTU2NzNlOWI3YzJlMDY2OCBsZWdhY3ktdHJ1bmsKKzU4MDk4IDFkYWQ1OGUwMGMzYTUwYWQ3Zjk2NzNlMDcxNjE0YmJkNGYwMjNiNDAgbGVnYWN5LXRydW5rCis1ODA5OSAzMzgxN2RhNTNmZDc0M2E5NGU5NmE3NjU0OWZjZThhNmQ4MWI0ZGI1IGxlZ2FjeS10cnVuaworNTgxMDAgMjBhODBiODNhNmM1MjY5NmZmZGEzZmFjMzkzOTA0ZWQwNDdkNmQyMyBsZWdhY3ktdHJ1bmsKKzU4MTAxIGIzYTRhMTRkOGFjMzEyMzE5NWI5MDkzNzE3N2VjYTBiMWI2N2FjYjMgbGVnYWN5LXRydW5rCis1ODEwMiBlYmRmMmMwOWMxODk5MDg3NDJmYTk0NDY2MmQ3NzM0NGEwZWE1OTBhIGxlZ2FjeS10cnVuaworNTgxMDMgYmZlMThiOTA3ZDg3MzVlNTFhOTc2MzljODllNDBiMzk5NGE5NmRkZCBsZWdhY3ktdHJ1bmsKKzU4MTA1IDE4ZDVhYTUxMzVjYTNhNTMzZGRhYjAzMzhmZDQzYmZjZjYzOGRiN2YgcHkzaworNTgxMDYgM2ZmMjQ5OGNmNTQ4YTc3MTcyYTljY2M0OWY5MWNkZTBhZTA0ZDQ4NiBsZWdhY3ktdHJ1bmsKKzU4MTA3IGU4Mjg3NmE2MjFiNWY0MzgyMjQwZWI3MjcwM2VjYWE4Nzg2ODczMDEgcHkzaworNTgxMDggYzViNmFlOTQ0MGI1ZGZmNDFkNWUyZWExNzc0ZTg3MDkwODEzNTRhMiBsZWdhY3ktdHJ1bmsKKzU4MTA5IGVhZDdjM2M2YmUxYjlhOGQ5MDlhYmJiOTA3N2I3MDk5MTllOWE0MTEgcmVsZWFzZTI1LW1haW50Cis1ODExMCAyNzRmZTRiYmUzZTA3MGQ4YzQyNjI3NDc2MTU2NzAzZTI5ZmIyNzA0IGRlY2ltYWwtYnJhbmNoCis1ODExMiAyNWVhNGU2NmY5YTAwNDgwYzUxYjUzNDdhZDcwZjg4MTgwYTA0YTU1IGxlZ2FjeS10cnVuaworNTgxMTMgNjM3YmZiMGM1ZGFlODVjZmI3MDRkZjFlZmE2NzQwZDQxOTRhZTRlOCBweTNrCis1ODExNCBjYTA2YzRhMzA5MWVlNzRiNWNhMjI4NjJhYzkzZjNkZTk0NDE5ZDVhIGxlZ2FjeS10cnVuaworNTgxMTUgNTU1M2Y4YjRkZWMwZGUwODA3ODRjYzAyN2QyOGMyNDQ0MmExNDllMCBsZWdhY3ktdHJ1bmsKKzU4MTE2IGI1Nzk1ZGE3ZGQyNjNhNTE1MTI0MjNkNmRhZmYwODcxYTQ3NWI1YWEgcmVsZWFzZTI1LW1haW50Cis1ODExNyAwODU4ODg3NmU0YTc0Y2Y1ODExNTY0ZTVhZjZjNDRmMDI1YjcyZGFhIGxlZ2FjeS10cnVuaworNTgxMTggMjAzOThiNTUyNjZjOTZiNWYxZmIxNjdmYTM3YTdlOTA3YWU5YzgwOCByZWxlYXNlMjUtbWFpbnQKKzU4MTE5IDg0MGZmNThkMWU5ZWZhNDhmMDMzODdmNDY5NzQzNzg5YTI1MThlZjUgbGVnYWN5LXRydW5rCis1ODEyMCA3NTZhN2I3Y2RjNGU1YWQ5OTYwYmZjMTRkNTA0YmNjZjllMzc4ZWEzIHJlbGVhc2UyNS1tYWludAorNTgxMjEgOTAwNzE1NGE3YzQ5MTU3NmYzYThhZDhmYjRlZjZlMjM5Y2NhMDI1ZSBsZWdhY3ktdHJ1bmsKKzU4MTIyIDA2ZWZlODM1ODA0YTJkMmE2YTU0NjUwZDViOWI1YzQwNmI4Nzg5MmEgbGVnYWN5LXRydW5rCis1ODEyMyBjMzhlMzUzZTg3NjFlODQwMDQ2YjY0N2M2NzZlZGNmZjVhYTdhM2M1IHJlbGVhc2UyNS1tYWludAorNTgxMjQgMWUzZjU3ZTczZTA0YzNhZjM2ZTZiNmVkMDZjNDJlYWE5OTg3OGRmOSBweTNrCis1ODEyNSBhMGQyMDEyZmY0YzE1YjVlY2M5Y2MxNWIwYjk0YmU2Mzc0NTM0Nzk3IGxlZ2FjeS10cnVuaworNTgxMjYgODRkYzg2ZjIxMTk2NGI3Mzc0ZTExYzc4MTVjZmFlMDUxZTE5ZTA3YSBweTNrCis1ODEyNyA1YWI1YTVjNzM2NjhmZGI5YmU1ZDJjZWQ0MmI4NzI4Zjg2Y2Q1MmE0IHB5M2sKKzU4MTMxIDk0MmZhMWM0YTlkMGVmMDEyNjZkNWY3NjNhYTg0ZGY1YTUwOTI1ODIgcHkzaworNTgxMzIgYmYyZDhiNzk0OTNhYTIwMTcyYzJhNDBmNjg4MzUzNWVjY2JhZDI2YiBweTNrCis1ODEzMyA3MTA3ZjM5YzJmNjZjMjBlNDMwYmE3YTU1ODk0YjRkYTRiMDBhNWM5IGxlZ2FjeS10cnVuaworNTgxMzQgMzllYmNmMGE5OGI0ZDEzNDdlNzdmNmJlMjg5YmM2ZDkyMDAzNGFiZCBsZWdhY3ktdHJ1bmsKKzU4MTM1IGUxMDAzNzFhM2Y2MmRlNTNhZTJmMGE1YzgyNTViMGQ2MWE3YTUwOTIgbGVnYWN5LXRydW5rCis1ODEzNiA5NDlhMzViMjdkMjA0MmRmYmRjOWUwZDUwMzRiZTBiMmI0NmFlZjZlIHB5M2sKKzU4MTM3IGIyZGNkNzU3YTZhMzc1ZWNmZWUyYTY1ZWY2NjljZjBhYzBkNzI5Y2EgZGVjaW1hbC1icmFuY2gKKzU4MTM4IDUyN2M0NGVmMjZjY2QyZTM4M2IyMWVkMzk2OWM3NjE3NmZkOTIwY2QgZGVjaW1hbC1icmFuY2gKKzU4MTM5IGM3OWEyZjBhNzAzNDJkNDRjMmY4NzdjYjdlZGQwZDhlZjUyZWI0MDUgbGVnYWN5LXRydW5rCis1ODE0MCBjNjc4NTExMzBmYzRjNmU5YWNmYzg1ZGEyN2NiZTM0OWZiOGIyYjliIGRlY2ltYWwtYnJhbmNoCis1ODE0MSBmMTRmYjdiMDNkY2ExZWI3Njk2NTYxMjEzYjUwZmJkMDg2MDc1MWI3IGRlY2ltYWwtYnJhbmNoCis1ODE0MiA5OGJhNWMyMjExOTg2Y2MyYWI5ZmY0OWYzMDY3ZGQzN2ZjNDgyYmJmIGRlY2ltYWwtYnJhbmNoCis1ODE0MyA2M2YzMTU0YzczMWQwMjJjYmIwOTg5OTM4ZWM2NjdkMWM2YzhkMzcxIGxlZ2FjeS10cnVuaworNTgxNDQgNjNjOTU3NjNhNDNiZTRlOTE5NDRkYWYxOWVhMGYwMzhlNzc1Y2I2NSByZWxlYXNlMjUtbWFpbnQKKzU4MTQ1IGM4YzdhOTQ3YTY0MTk3Yjg2ZWZlOTQ0NWRkM2Y4ODcwOTNlZWI5ZjQgbGVnYWN5LXRydW5rCis1ODE0NyAyZjhiM2VhNjJhMmUxZWFjYWI0ZWQ5MDIzOTg3NDA4OWIxMjk0OTQ0IGxlZ2FjeS10cnVuaworNTgxNDggZGY4ZDMyZDVlNDQ0MTBkNjZhMTJlMjQzZjg2ZTE2OWJmYmEwNDU5YiBsZWdhY3ktdHJ1bmsKKzU4MTQ5IDYyYzNjMTA0Y2EwMTIwMzliNjlmN2Q5NDI1YjU5ZjE2YTljNzlhMGQgbGVnYWN5LXRydW5rCis1ODE1MCBlYjk4ZjIyM2Q2ZWFlYWQ0NWZiMTg3NTM3YmJjYzczYzQ0YzZhYjNiIGxlZ2FjeS10cnVuaworNTgxNTEgOGI2ZGM2NmUwZWI1NGVjN2FmNmZlYTE0NmIzMWViMzU1ZDMxMDVlYyByZWxlYXNlMjUtbWFpbnQKKzU4MTUyIGUwZjVhZjE0Yzk4ODNjYTQwMDVmYmNjMDEzMDcyMDY4ZWRlNmMwYTQgcmVsZWFzZTI1LW1haW50Cis1ODE1MyBlNTFlZGRlMjgwN2YxZWExMWUxYjczNjkwYWE3YTQ3YWZjNDdlYzcwIHB5M2sKKzU4MTU0IDA1ZDdjM2QwYjc3YTIyOGFlZTRiODFlM2U2MjBkMmNkZjg1NDkzYzMgbGVnYWN5LXRydW5rCis1ODE1NSBmZGZmNDhmODdmMzVlOTA3NTc4ZGYwYWU3NGE5ZjM1ZDI3N2Q1NTJhIGxlZ2FjeS10cnVuaworNTgxNTggMTMzOTFmOWQyMGVhNDk5MjYyZmNjZjQ1N2FlNjkxZmRiOTZiNTYwYSByZWxlYXNlMjUtbWFpbnQKKzU4MTU5IGUwMDIzMzk1ZTUzOTMyOGI5ODE5MGQxNzdiYmViYmRlZjdlN2Q4NzEgbGVnYWN5LXRydW5rCis1ODE2MCA3M2YyYzlkMTZjZjRkNzVjNGNlYTRkN2Y2NjJjMWNiOTVlNTg4MTFjIGxlZ2FjeS10cnVuaworNTgxNjQgOTA0MTk2NWE5MmYyZWY2NmYwNWVkMDUxODc0NmI1NGUyNWFhMTI0NCBsZWdhY3ktdHJ1bmsKKzU4MTczIDFiNjZlMmE1Nzk2ZjE4Yzk0NzVhNmZjNmM0ODAwZDgyZTFlYzVhMWMgbGVnYWN5LXRydW5rCis1ODE3NSAyZTdkZDIwMWVhMWQyYzdlYTllODYyOGE3YmU1MWE0NzVjZWFkZTM1IGxlZ2FjeS10cnVuaworNTgxNzYgNzYzMDI0OGI1OTNjZGZkMjAzMDcyMDcyYzcwZTU1OTVjNTU0ZTY3MSBsZWdhY3ktdHJ1bmsKKzU4MTc3IGFlOTgyMjkzYzFhZTA4OWNiN2YxNjNkOTMzZjFjOGFkNmI5MTY4ZDYgbGVnYWN5LXRydW5rCis1ODE3OCBlMzEzNzk1ZWExNzQyZGRmYWUxYzU2YmM2YmY4MDMxNzhhMmU1MzUwIHJlbGVhc2UyNS1tYWludAorNTgxNzkgOWNjMTMyYzg0NjFlYzY0NTcxZjQyMjY3Nzc5MDA2ODRhNDk5YWIwOSByZWxlYXNlMjUtbWFpbnQKKzU4MTgwIGUwMWRkMmJmMDk5YTVhZGEwYTU3MjMxM2M4MzE1ZDM3NzExOGVmNDYgbGVnYWN5LXRydW5rCis1ODE4MSA4ODkwYmU5Mzg2YjdhYzQ3YTYwODc5ZGNiZjVlZTY1ZDc5YTk4ZWYzIGxlZ2FjeS10cnVuaworNTgxODIgNGU1N2MzNmY2ZDJlMzY2MjI4MzJlNDNmZjk4ODIxODY5NTU3NzI2YiBweTNrCis1ODE4MyA1ZDM0MjhmZjdmZmExODIzZGFmMjIyNTEwZDlmYzIyZjljZjBhNTc3IGxlZ2FjeS10cnVuaworNTgxODQgMzYzMjAzZDc1ZDY5ZjNkZjg3MzY5NmJlMDRiMzQwNWRhODA1ODBhYSByZWxlYXNlMjUtbWFpbnQKKzU4MTg1IGM1NDkwYTllYWFlMmY3ZWZjM2VjM2IwMzQwNTc1M2QzZTU5Njk1YjAgbGVnYWN5LXRydW5rCis1ODE4NiAyZmRmZjBiNWJlYjZhYjdjNmYxYzc4YzUxN2M2ZTQ1YjU4YWQ3MTIyIGxlZ2FjeS10cnVuaworNTgxODcgNGU1NDNmYWUwZGVkODlmOGEyMTBjODc0ZGI5YmU3NTc1YmY5ZmE0NSBweTNrCis1ODE4OCA1MzM1Zjg5ZGYwODFiYWU0ODdhZDQyMThhNmEwNjBlOWNhZWZmZTM1IHB5M2staW1wb3J0bGliCis1ODE4OSBlMzk1YTYzNmVlNGE3Y2VlNjNlZTc4ZjkxYzE0OTZjYjcyMWIzYmVmIHB5M2staW1wb3J0bGliCis1ODE5MCA2NDFkNGNhYzk3NTZkOGE3MTczY2FkOTdjZWQ1MDdlYTkxZmM5YzFhIHB5M2staW1wb3J0bGliCis1ODE5MSBjMWJjYjYzMzkzNTc3NGEwOThmY2U1YWM1NWFlNzBlMjIxMTEyMDRlIHB5M2staW1wb3J0bGliCis1ODE5MiA1OTc1YTczMTZjMDY1MzIyZTg5ZTVjMWMxYzc0NzNjMzg4YzhmZWM4IGxlZ2FjeS10cnVuaworNTgxOTMgYjkyMzZhNzVhNmU1YWVkNGE5OTdjMGMxN2JjYjJjYTY3ZjVlMDkyMCBsZWdhY3ktdHJ1bmsKKzU4MTk0IGVmMjIzNTQ2YjRiZDZkZTMzODhjZGNlNjEzOGE0YTY4Yzg1MjVmZDggcHkzaworNTgxOTUgNmEwZWEwNjVhOTlhMmY5OGU4MTIwZTQxY2FhMjk2YjAwY2U2N2U3MSBweTNrCis1ODE5NiBmMTkyNDQyZjQ0ZDgxZDhhNGMyZjE2NzE5YmViZTYzZTM0ZTMzZTJlIHB5M2sKKzU4MTk3IGIyOTU4MmJkYzkzY2Q2Y2NiYWVhZjE0NmRkZGRjNjcyODFkOTc3ZmMgbGVnYWN5LXRydW5rCis1ODE5OCA3ZGRkNDA1MDNlMWExZDAwMjY5Mjk2YTRlNWMwZmZjYzIzZTU3Y2ExIGxlZ2FjeS10cnVuaworNTgxOTkgNzVlNmJmYTJkNGQyMjBlN2MxYWJlNmJjZWNiMjVhOThiZDZhMzI4YiBsZWdhY3ktdHJ1bmsKKzU4MjAwIDNlZDJmNzcxNjNmYzMwZjhmOTI3YmVmNGZjZWU5ZjcwYTFlMDczYmIgcmVsZWFzZTI1LW1haW50Cis1ODIwMSBmMmVmOGFlMGJjMTg3NTI5NTU0NzJlODBmZmZkODYzZmI4MDBiZDEzIHB5M2sKKzU4MjAyIDFiYWMzODZjMTdjYzY5Yjk5ZDMzMTViOWZhYTE1MDUyNmM5ZmY2MTcgcHkzaworNTgyMDMgZWIzOTZkZTgyYzAzMGZjNzBhZmJlMWM0NzY2MjFiMGU3ZTQxYTgwZCBweTNrCis1ODIwNCA4ZTEzZDNlYWNhY2NiNGJlN2NiYWY2ZWFjNzdhMzEwOTViZWNlZDM2IGxlZ2FjeS10cnVuaworNTgyMDUgNjkyNDkzNzcxYWUzMjJjNWQ2ODgwNjU4NzU1NjUyYjExODNjNDhiNCByZWxlYXNlMjUtbWFpbnQKKzU4MjA2IGQxZmE4MjBiMmRjYTBkMWVhZDc3NTcxM2RjM2QwMjlkYTRhNTc0NDMgbGVnYWN5LXRydW5rCis1ODIwNyBjMTllYzk1MTVhMzM2NzYyNWJhNDYzODA3YWZiMjBjNWE5ZTQ4MmY4IGxlZ2FjeS10cnVuaworNTgyMDggMzU3ZjU0MDE1YTJkM2JhMTBjZGYxMzFjODM0MzZjYTNiNGUyMmY1YyBsZWdhY3ktdHJ1bmsKKzU4MjA5IDQ0YWE0ZmZkYzFhYzk2Zjg4MWI2MjczZDIzNDhiMGY2YzY3MzkzMzEgbGVnYWN5LXRydW5rCis1ODIxMCA4MTQ3ODQ2NWZlZjNiMTQ3Mzg0NTlmYjdmODUzMzFlNWVkYWZjYjQ1IGxlZ2FjeS10cnVuaworNTgyMTEgMzU3Y2YwN2EyM2ZlMzY2YmY2YWI2ZGViYjU2MTNiOTcwNDg4ZmQzYiBsZWdhY3ktdHJ1bmsKKzU4MjEzIGIwNmIxOTFiN2NmYTBiODdhZWVmZThjZmQ0MzJlM2M3NWU1MmEzN2EgcHkzaworNTgyMTQgYTVkMzdjZGNkMzE2MTczYTEzNWQzYzdiOGVjNzMyMmRmZTE2YjUyZSBweTNrCis1ODIxNSA1MjFiZjg3Y2ViYmQ5ZTA4YWZkY2MxN2M0ZWZlMDM4NWI5MDhjZWNlIHB5M2staW1wb3J0bGliCis1ODIxNiBlZjE3MjE4MzYxNzgyYTA4MTg3NGZkMjk5MjU5OTYxNDM2MGU3ZjY5IGxlZ2FjeS10cnVuaworNTgyMTcgNDA5MDkxYjI4YzdlOWQ2ODM0NmI0MmNkMTg4NWE0ZmU5YjVjMDg4NiBsZWdhY3ktdHJ1bmsKKzU4MjE4IDdkMTRhMzE4ODg1MDFkYzFkOTAxODc5MzU2NjQwZWE4NWUzMmVmNmYgbGVnYWN5LXRydW5rCis1ODIxOSBlMWMwOWZhNmZjMGY1ZDI2ZmUzMmIyOTkwODliOTlkNzZlNTM3NWRhIGxlZ2FjeS10cnVuaworNTgyMjAgZGMzOWRkZGVhMzMwMDQ1ZTk0NTQ2NjMxYzkxYjY3ZDdiZmI3Njk4ZSBsZWdhY3ktdHJ1bmsKKzU4MjIxIDQ2YzQ2N2RlZTY1OTM4ZTczZTliNDNhMmQ3Mzc0YTE5NWYyZjBkMzMgbGVnYWN5LXRydW5rCis1ODIyMiAwYzhmZWM3NjExMWM3ZmFlYzYyMWNhODljNGVlOTk2MDhlNDI0NzA3IHB5M2sKKzU4MjIzIGRhOTUxOTc5N2M2MTA1OGExOWFhMGVjMjllNDg3OTk3NTFlNmJiZGEgcHkzay1pbXBvcnRsaWIKKzU4MjI0IDE4MzdjYWU5MGU1MmU1NTBmYmFjNGU1NTY0NzFlYWVmMjFmYzc0OTYgcHkzay1pbXBvcnRsaWIKKzU4MjI1IGVjODQ2ZWJhYjJlZmEwYzU3NTE2MWMxMGRhZjRjOGQ3ZjA4OWI4N2IgbGVnYWN5LXRydW5rCis1ODIyNiAwZmY0MWIxNjNmNWJhMWY1ZDI4OTk5MmQ2YWExNDRjZWE1ZjViNmNlIHB5M2sKKzU4MjI3IGYzMWQ0MTU1NTRjZGJmYzViNTQ5ZGQzNzZlMmFmZGRhMTkwNmJjZWQgcHkzaworNTgyMjggZjZjYmFiNzU5MjhmNjg2NDljNDU2YzA5ZDE2MmViOTdmMGQ1YmU0MyBweTNrLWltcG9ydGxpYgorNTgyMzAgNzNkMjZjZDhlMGI1NjRmMTA4MzJiN2JlZmI1OTkyYWQzMDI2ODQyMiBweTNrLWltcG9ydGxpYgorNTgyMzIgZmMwMzM2ZjQ0N2FlYWYwYjVmZjNlZDY0NGVhYmE0MmYxNTBlYTMyOCBsZWdhY3ktdHJ1bmsKKzU4MjMzIDM3ZmZiYjdhMTk2MjkzMGY3MmE1ZDRiMGY5NWUyMGVmMjJkYTZjYjUgcHkzay1pbXBvcnRsaWIKKzU4MjM2IDA0NzZhMmNjNTY1ODc0NDNjZjQ2ZmRlYmNmODg1MTEwNjExYzg4ZmYgcHkzaworNTgyMzggY2VmMmVkODI5MmI2Y2ZkYmI4NTQ2MTI5ODVhMmE2ZTk1NzMwNDUzMCBweTNrCis1ODIzOSA1ZjczMzhhNGQxZGRkZDI2MTgxZjYwYWRhYWFkNDk2YzcwMWJmODc0IHB5M2sKKzU4MjQwIDU1YTY2MzE2Yzg5ZWQyY2IxNjE0YzI3YTU1NjBmYmQ0NWJkZjE0NjYgcHkzaworNTgyNDEgYTRkZTMxMjIxNTc4NDdmMzA4ZGJkNjJiM2ExYjAxZjM1MTRmYzUwYSBweTNrCis1ODI0MiBiNGU2ODhmZDY2MDJhNTY5MDE1MDNlMjY0NmE5N2VkNzJhZDk4MTY3IGxlZ2FjeS10cnVuaworNTgyNDMgOThmZjliMmZmNzU3NjUxZDVkMmE2ZmIzNjM4ZTEwNTViMDY3MmM5NyByZWxlYXNlMjUtbWFpbnQKKzU4MjQ0IGI5M2VkMDQzZjI3MjFiNWJjZmNlMGUwMDJmYTg0OGY4MWNhMzZlZWUgcmVsZWFzZTI1LW1haW50Cis1ODI0NSBlOThlMTFkNzc2OGM2NWI2ODIxODI3MmRkYWUzYTNkNTEwMWVjYTQyIGxlZ2FjeS10cnVuaworNTgyNDYgYjcwZWRiNWE3Njg4NDkxYzczZjU1ODUxNWJjNWE3MjI3ZmZmODNjZiBweTNrCis1ODI0NyA3NzNlOTc2YmFiM2FmYjUxNDlkMjRhM2UxZDE0Y2YxMzFjYzVlZjRlIGxlZ2FjeS10cnVuaworNTgyNDkgMGI2MTRmZDJkYzJhZTA1NmI2ZTA5MDFhNjk3MDgxZjY0OWMwMGNlMiBsZWdhY3ktdHJ1bmsKKzU4MjUwIDk0NjNkZGExOTE2MDEzYWY4ZGM3NWFhMjhkNDRlZjZjY2ZkODAxOWEgbGVnYWN5LXRydW5rCis1ODI1MSA1M2Y3YzkyYjQwMjQ3NTVmNjIwZDkzNzEyMDE5MjA3NDg3Y2E4NzgzIGxlZ2FjeS10cnVuaworNTgyNTMgMmRjMGU2ZTNhZDIwMGU2YWFlYzNjYTk4ZmNhNDA3NDQ3YTc4NjdkOSBweTNrCis1ODI1NCBmODFlMzljNDM3M2RhNTgzZGM0NTMzOGM1M2E1MWI5Yjg4OGJhODFkIHB5M2sKKzU4MjU1IDc5YjBkYjAzNTZkMzFjOWE2NGE1ZDg4Y2FhNGFiNTNjNDM5Y2Y1OGUgcHkzaworNTgyNTYgOGQ3ZTkzYjQ3Y2FiZDUzZjczYzM3NzhkOGE2ZjhmNjg0OGQ1NzUyNyBweTNrCis1ODI2MCAxYTc5YTQ1MDAzZjVkYjk0MjY4MDkwYWNlNjNkYTBhZGMxNWI4ODcwIHB5M2staW1wb3J0bGliCis1ODI2OCBiOTAyODZhYjg2MjlhZjAyNDEzODFjMDQwYjM3ZTg0MTdiZTljMTU1IGxlZ2FjeS10cnVuaworNTgyNjkgODU2ZjhlYTkyMmRmNTEyOTQyZGJmZDQzYmQyOTNhMjIxYWZiOWMyMyBsZWdhY3ktdHJ1bmsKKzU4MjcwIGY1MzAwNTk4YjExY2FkMTMxMWUzMDhiMmMwNTExYzcxYmJhYjU1MDcgbGVnYWN5LXRydW5rCis1ODI3MSAxOTQ0Zjc5ZGI4YWQzNDRmZTVlZDFlZTk1Nzc5ZDVlZTg1ZTk0NzVjIGxlZ2FjeS10cnVuaworNTgyNzIgMTNiYWFkYTJhNjAxNzFlNDIyYTQ4N2JjYTlkMWYyNjc4NGFlMDA1OSBsZWdhY3ktdHJ1bmsKKzU4Mjc2IGE3YzQ4YWI4MDllYzQ4ODFjOTFiY2I4MzRkNzhlODdmOTM1Y2Q1ZTQgcHkzaworNTgyNzggMGZmNDZlZjk0NmIxM2RjNTIzMzUzMjI2Njc3YjIzYzEwZmQ3OGQ1NSBweTNrCis1ODI3OSA5YmM5ODU1ODJjYjI4NTY3MGMxOThjNDdhZWI0Y2YwN2I3NGZmOTY4IHB5M2sKKzU4MjgxIDdmY2Q5OTQ1ZDFiZmUzODQ3NzYzN2RiZWE4MjI4NTA5ZGIzZGJkMjkgcHkzaworNTgyODIgZTg4ZjgzYzNiMjVlOGM5ZTUyM2FhMmQ1MGFkYjZlY2FhOWU4YjIwZiBweTNrCis1ODI4NSA4NjY3MTcyNjljYTM4MjM1MTM0NGM4Yjg5Mzk5ZDVkMzA4ZjkxZDQ3IHB5M2staW1wb3J0bGliCis1ODI4NyA4ODBiMGIyMmMxNWE5ZjcxYmNmMmRlNjgyYzAyYTAyMTJkN2M0NGYxIHB5M2staW1wb3J0bGliCis1ODI4OCAzODFlZDQxMDAzZTc2N2FmMjk4NGNlYTU3NzQ4YTI3NzU2MzYyMWRkIGxlZ2FjeS10cnVuaworNTgyODkgMTA2YTcxYzUxNDc3NTFiYmZlMDU2YmIxMjc5NGVlMjBmYmI4M2RjYyBsZWdhY3ktdHJ1bmsKKzU4MjkzIGExY2E0ZWE0MWU3ZTlmZDU4MDk3OTJiYzMyNDYxNTEzODExY2I3ODkgcHkzaworNTgyOTQgOWQ2ZDlhYzk1YWUxNzYwZDAxMDNhZjhiNGY3YmY2MWIzMDAxZjU4ZCBsZWdhY3ktdHJ1bmsKKzU4Mjk1IDc5NDMyNjJlNWZjNDM3NjdkMDQ5NWJkYzU5NTFkMmRjMDJlYWVjOTggbGVnYWN5LXRydW5rCis1ODI5OSBjOWJmNmU3MDMwOGU3NjQxYWNiYjczZGExYWNkYzhkMzc1N2M3NmE1IGxlZ2FjeS10cnVuaworNTgzMDQgYjEyY2Y0NjdiMDVjYzJkMzc3MmYwNDI2OWFhODM1OTgxMmMyMjc1YSBsZWdhY3ktdHJ1bmsKKzU4MzA1IDMzM2IwNTJlOWRhOWEwYTIwY2RjYjNiZjVmNDZmMDkyMzdiNGJlN2UgbGVnYWN5LXRydW5rCis1ODMwNiBjZDI4MWMxMjgzNmRjNGYwODdjNTRjMDY3NDU3MTg3M2VlMDgzNTljIGxlZ2FjeS10cnVuaworNTgzMDcgNzMyY2EyN2E2NzhjZmVjMWVmNDRlNWNlYmQyYjMyOTYxNGY3ZWRkNyBsZWdhY3ktdHJ1bmsKKzU4MzA4IDFiMWE1NjUyZmVkOGY3NzZmOGU0MWI3MGUzYzhlNDdmYmQ0YmE3NTUgbGVnYWN5LXRydW5rCis1ODMwOSA5YWU0ZThhNTM0ODY2MmRlY2EwMmQ2ZGZhYjU5YThmZDNiNzQxYThmIGxlZ2FjeS10cnVuaworNTgzMTAgMTc2YjYxMzFiMGJhZjQxMDNkZmY0MTI4NmNlZGIyM2M2N2UwZjNiNiBsZWdhY3ktdHJ1bmsKKzU4MzExIDY1YjM2NTRjNjdmNjMxYzY3ZTQzNjBhMGY2ZmFmOThlYTUwNjVhYmEgbGVnYWN5LXRydW5rCis1ODMyNSA1YjUyNDlkZDE2YjQ1MDc5YjE4YzBjZjRlYjA3N2I2Y2MwMDYyNDM0IGxlZ2FjeS10cnVuaworNTgzMjYgNzNmNDk2NTY0MjBiY2E3NzE1NzJmYTIyMTRmYTYzOWIyZTEyNTg4YiBsZWdhY3ktdHJ1bmsKKzU4MzI3IGU4Njk0YWI1M2E1ZWNhM2YyMWZhNjNkODBkMWRlZmM4OWZjYWRhNzkgbGVnYWN5LXRydW5rCis1ODMyOCBjMGFiZGQ1NzllYjI2YWZmNDg3MWZjYzUyZDUyZjc1YjhlYmRiNDJiIHJlbGVhc2UyNS1tYWludAorNTgzMjkgZjJjOWYyNGEwZjVhODlkNGQ4ZGUzYmEyMmEzOTI1MGE2Mzg3YTExMiBsZWdhY3ktdHJ1bmsKKzU4MzMwIDk5NTY3NzIxOWE2NTU4MmE4NDg2ZGMyN2Y0NjQyM2ExMzBiMDNlZTYgbGVnYWN5LXRydW5rCis1ODMzMSAyNzUxMTU5OTliNTgxMjFmZDMxZDZhZDk4ZTgxMzcyODI1OWQ1ZTJlIHJlbGVhc2UyNS1tYWludAorNTgzMzIgMWJlYTZmYWZjYzUwNTcxMDk2NTNmMWU1ZWIyNjJkYTRlODc5Nzk2NSBsZWdhY3ktdHJ1bmsKKzU4MzMzIGE1NDMwMDYzMDhiYjliZDk0MGViNWIxOGJiOWZiOTQ5Zjc5Yjk1ZmQgcmVsZWFzZTI1LW1haW50Cis1ODMzNCBlODQxMTk3YzFkMTdmNTVmMGIyN2U5YjM5M2YzOWIwYjY1NWM1OWVkIGxlZ2FjeS10cnVuaworNTgzMzggMTdiMDczNzBhNzgyOTAxYWRmMTgyNjg4ODVjMDY2YjE0YTBjNGEwNCBsZWdhY3ktdHJ1bmsKKzU4MzQzIDY4ZmMxMDdkZGI1MGI5OGFmZDEzNjgxNmU5YjZhNWI2MDMzYTZmNGQgbGVnYWN5LXRydW5rCis1ODM0NCBmNzM1MzU5NWI3ZmE4MTlmOTZlY2NlYzYzMzFkYWQyMzA5ZmM5YjRjIGxlZ2FjeS10cnVuaworNTgzNDUgYWNkYWM0MWY3MTA5NzJhOTIyNTE1ZTYyOGE1ZTkzY2FjZDFhMGQxYiByZWxlYXNlMjUtbWFpbnQKKzU4MzQ2IGVkNDk5ZTM0OGExMTlkMjc3ZGRmZTIxODkzNjE3NzlmODRiMzAwNDMgcHkzaworNTgzNDcgYWUyYTk5ZmM3M2RhNmQyYmViMWEyYmIwOWQxZTJkYTIzNzg1OWI3OCBweTNrCis1ODM0OCBmMzZkMGY3MDc3ZmNiZjVmOTc2M2UyNzQzODYxNzRiNzQwMjQwM2Q5IGxlZ2FjeS10cnVuaworNTgzNDkgYWQzNjZlMzE2ZTMwNjRmM2I0NjdmZjNhMzMxN2IyZmQzNzUyOGJlZSByZWxlYXNlMjUtbWFpbnQKKzU4MzUwIDM5ZjRjNTA2Y2Q3MThiMDQzN2Y4MGZiMDAxY2FmNTRlNzc5MTlhMjcgcmVsZWFzZTI1LW1haW50Cis1ODM1MSAzY2QxNDYzYzkzOGQ2ZjdjODMyODBmNzk2ZTMxMjRmNjg4OTg0OGQ4IGxlZ2FjeS10cnVuaworNTgzNTIgMDc0MTMwYTA3M2I2NjgyYWVkOGU4MWVkZWFiZTM0MmVkOTkyNTRjZCBweTNrCis1ODM1MyAyMzE5MmIxYjcxZTI3NTU0ZGU2ZGYzMDY0M2RlYzFjZmY5ZWY4MWYyIHB5M2sKKzU4MzU1IDE0YWRkZGE4MzM0NDMzNzVlMjkxZWRjNWFhNjcxNTI0YjMwNDI1ODMgcHkzay1pbXBvcnRsaWIKKzU4MzU2IGY1Yzc5ZjQzYmJmNjk1ODZlMmZhYWNjMDZiOWYwODViOWFiM2M5MzQgYWxleC1weTNrCis1ODM1NyBhM2JhZDY5NGMyODM5ZGEzZWY3ZGY1ZTU1NThlZWZjNzc4YmUzMzY3IGFsZXgtcHkzaworNTgzNTggOTRlNTM2YzM2NDQ5M2ZjOGFjNjI2MjVjNWRhN2E2OWMzYmFmMmJjMiBhbGV4LXB5M2sKKzU4MzU5IDMwNGQyY2VhMTM3ODM1Yjc0ZDEyOTUzMTA0MmNjMWY5YjU3ZjU3OTMgYWxleC1weTNrCis1ODM2MCA4YzEwYWFjMzcwMzc5MjVkY2NiN2JiZGZiNGI3MTRiNjFiZmIzZmZiIHB5M2sKKzU4MzYyIDhiYTUzMDBjYjRiM2I1ZDZiMzgwNzFjNzU2MTk2NWRkNDVhZWUzMTYgcHkzaworNTgzNjMgNzY3ZTBjMzEwYTZhYWZhN2YwOWJjZGQ3YjU3YmRlYzQ0YmNjNTQ5MSBweTNrCis1ODM2NCBmNjE0M2M0MTE3MTM1NjUwMWU0NmFlY2FhN2RhZjA0ZTk3Zjg1ZDhlIGFsZXgtcHkzaworNTgzNjUgZjYwNjFjNzFhNGQyMzZiNmU4ZDUzYjhjYzM3ZjdlYmQ2MTkwMjY4MyBhbGV4LXB5M2sKKzU4MzY2IGZhYjQwODlkYWI5ZjlmMGQxNzVlZGU5Yjk0MDRjNzI4ZGMzNjM0NDAgcHkzaworNTgzNjcgZGU0MWU5NzlhZWJlYjg5OGNiNjZhOWEyZGU2YTI1ZWQ1MWY1MTU4YyBweTNrCis1ODM2OCAwNDU5NTJmZjA4Zjc0M2IyMzE2MzUyOWM3ZWUyYTNjYmQ1OTAxNDY3IGxlZ2FjeS10cnVuaworNTgzNjkgOWU2MDIwYmIyMzUyMmIzMWM4ZTk3MmQwMGE0YzM1NDU5Mjk5OGY0ZCBsZWdhY3ktdHJ1bmsKKzU4MzcwIDRkYjVkYWI3ZjIzNTg5ZGFjNzg0NDNkYWI0ZWNiNDBlMGFiN2NmMjMgbGVnYWN5LXRydW5rCis1ODM3MSBmZjRiYmU2ODIzZmM5YjkzMGEyYTllMWQxOTkzNzE2ODNmZmUwZDE1IGxlZ2FjeS10cnVuaworNTgzNzIgOTE5MDRmM2U3YmUxYmE0ZTc4ZTMxMTk3ZTVhYTMyY2VmMjUxNTZjYiBsZWdhY3ktdHJ1bmsKKzU4Mzc1IDY2MTRkNDJkN2YwYTMzNWQ5YjFkNDFlYTA1MWNhZDM5NTU1ZWEwZDMgcHkzaworNTgzNzYgMGJhMzgxMDBjZGE5MDMyNTE1YTc3YjhiMTljYzBmYTcyNjIzMzFmMiBsZWdhY3ktdHJ1bmsKKzU4Mzc3IDhiZDkxMDAzNmM5N2Y3NDBiNzBiNDljMTFhOGM5OTdiYWM5YzhmODggYWxleC1weTNrCis1ODM3OCA1NzEzYjE3NmRkYjY5ODQ4N2VlOGRiMDY0YTVlMTM1MTg5M2U5MWFhIHB5M2sKKzU4Mzc5IDI3YWY0NTI0OWE4MDNkMTVjNjAxZjc3MjQ0NWFhOGIxYThkZjkxMzMgYWxleC1weTNrCis1ODM4MCA2NTk4N2IzOGRmMmUzNThjZDMzMmNlZTJkODRlZjcyMDM1MThmOGRlIGxlZ2FjeS10cnVuaworNTgzODEgOTY1ZTcxNTQxNzdjNjk1MDU5MzgxMDg1NjEyYmNlOTU1ZjhhNTNjNSBsZWdhY3ktdHJ1bmsKKzU4MzgyIGViZjJhNWNmMTNmYmRlMWU0NWRmMGUyNmYwODdmNTE4MmVlNWE5YWMgbGVnYWN5LXRydW5rCis1ODM4MyA5OGY2MTgwYjliMzMzMGIxMDFmNGMxMDYzNjIxZGU2MDgzZmUwZDhiIHB5M2sKKzU4Mzg0IDMzMDIxZTQwM2YzYzY1OWRhMzNjNzA2MWFiNGE2NmQyNzEzOGI3M2IgbGVnYWN5LXRydW5rCis1ODM4NSA5YzMwMTVmYzViZjQ1OTk3MDJkYTdhY2YwYTkzZWYzOWE1M2MzNjY0IGxlZ2FjeS10cnVuaworNTgzODYgYzQ4ZjkzODFkZGYxMzBmNjc0N2MyYjRmZjg1ZWNmYTAxY2FiNmNkMiBsZWdhY3ktdHJ1bmsKKzU4Mzg3IGRjNmUyYWRmOGRkMmEzMDZlOTg2YjdmNmZmMzUzMTYwZmIyMjY4MDAgcmVsZWFzZTI1LW1haW50Cis1ODM4OCBhMWI3Njc1N2Q2MmVlMGZiMDYxNzU2YjMzZjQxMmFmNTEwYzdkNmMxIC4uL2N0eXBlcy1icmFuY2gKKzU4Mzg5IDI0ZDExMTgwOTQ4MDA5NGIzNzEzYjA5ZTRiNzcxNzE3MjQ1YTRkMzIgLi4vY3R5cGVzLWJyYW5jaAorNTgzOTAgNDdjMDI3OTFlYzZiMmM2YmYxNjBjY2I3NzY3YjdkMzhjZDQxODA0YSBweTNrCis1ODM5MiA0YTcyZmM1ZGZiNzliM2QyMGE3N2Y1YWNjMTBlMzJjZWI0MjVmZTM2IHB5M2sKKzU4MzkzIGM5NGRhODQ3NjVlZTMwMjUyYWI4NmY4YTA4ODAzMzkyN2U5YjYxYTIgY3R5cGVzLWJyYW5jaAorNTgzOTQgZmE5M2RkNGUzNGJjMjMwNDY3YjE5MDBjYmM2OTYzMmZlZjg5MWViMCBsZWdhY3ktdHJ1bmsKKzU4Mzk1IGJjMjViYWZhMzNiMWZjNDZmOGQ4MWEzNzBlOGEyYmUyZjk4NzdkMTggcHkzaworNTgzOTYgMzdkODI3MGFjOGQ5NjFiNDgzYjg1OWY4YTAwMWQ4ODE0NDkzYTVmYyBsZWdhY3ktdHJ1bmsKKzU4Mzk3IDM0MGU2ZmQ1ZDc1ZjA1NTU1Mjg4NDZjNDY4ZGY3MDhjMDkzNWNhZDMgcHkzaworNTgzOTggNDE1YjFiYWNmZWQ3YWYwMGNkMzU1NjVjMGUzM2QwMGY2MDYzYmNkYiBweTNrCis1ODM5OSA4YzVlNjBkZGFhODI3YjVmMDE3MzUxNWEzYjExMThmZGQxZGRhZjIyIGxlZ2FjeS10cnVuaworNTg0MDAgOGQ0MGM1MzQ4Y2E5ZDkzZDAyZDg4MGFiNzY4MWQ0MWM2MmZlNGQ1NiBweTNrCis1ODQwMSBkYTUyYjRjNzc2YTQ1NGZhMWEwZDkwYTU2MzBhM2JkYzc1MTJiMjQ2IGxlZ2FjeS10cnVuaworNTg0MDIgMDZiYTQyYzJjMGQwNzQ2YTU2ZDVmNmMzZmQxOTMzNjE1ZjJhZGY5NSBweTNrCis1ODQwMyBlNWQ2ODkzZGJiMzZlZjQ0ZTkwMjhiYjZmYzMzNWI2MWUzYTFkMzllIGxlZ2FjeS10cnVuaworNTg0MDQgMWQ1MmU3ODM4NDJkYTFhODA2NzEwODFhOWU4MzdjOTU5ZDAxYThiNCBsZWdhY3ktdHJ1bmsKKzU4NDA1IDlmN2RlMTg0MzFmZTk1MGQ1MzkxZTU3NzRlZWQxY2QwNDU4MTA5OTkgY3R5cGVzLWJyYW5jaAorNTg0MDYgZmZlYzQ5ZDNkMjE1NDcxZmJkZmVhZDdiMTFkZTZhMmNjZjhmYmJjNSBjdHlwZXMtYnJhbmNoCis1ODQwNyA0ZjllY2VhODE3N2NiZWQ5N2I5YTZjMThmNTIxMmZhZDhiZGEwYzg2IHB5M2sKKzU4NDA4IGI0ZDhmNzE0NTllOTQ5YmNkMDU3MjUzMjEzYWNkNDA5N2E2ZGZlNmEgcHkzaworNTg0MDkgNGMxODljNzE0NGI3OTRiNDY3YjM0YWFjOGNlNDVlNmQzMThmMDczMiBweTNrCis1ODQxMCAyZjMwYmZiN2M3Mzg1ZjM4ZDA0NzdkYmQ4ZTg1Y2RmYTQ1OWEwODMxIHB5M2sKKzU4NDExIGI5ZDE5ZDUxZGUzNjk3NWE1ZTdjNDU3MDVkOTY1NTYwZDQzMTFjMTMgcHkzaworNTg0MTIgNmU2MGY2NWZmMzY0N2M5ZjE3MDhjNWI1NGFmNjZjZTE2NzYzNTkwMiBweTNrCis1ODQxMyAyYjc0NmYyOGIzOTlhNzEwNjk3ZDhhMzEwYWMyMGNhYWQ2ZTkyZDhkIHB5M2sKKzU4NDE0IDk5MzcxYmQyY2E4Zjg3ZDliNWJiYzRjZTQwZWVjNWM4MzE3Yjg3NjUgcHkzaworNTg0MTUgMDI3MTBiODk3MDFlMDgzNzUzMTcxNWM2NGQ5MDE1Mjg4ZjdlOWY2NiBsZWdhY3ktdHJ1bmsKKzU4NDE2IDM5YzliNTYxMjQ1MWEyNzI3Mzg0NjNhODEwYWQwYzI1NmNjMGU0OTUgcHkzay1pbXBvcnRsaWIKKzU4NDE3IDM5Y2I1ZDk2Y2U3NzAwNGU5NzI3NGE0MWVmMDkwNmE2YjJmYmViZTAgcHkzay1pbXBvcnRsaWIKKzU4NDE4IDhjNWE0MzNhOWQ5MGU3ZGEzNTFlYzU1NDEzMmNmNDc2MWNlNDg4M2QgcHkzaworNTg0MTkgYmYxMDE0NDQ4YzQxN2Q5NDg1NmViM2MxMzdkY2MyYzNjZDQ5ZTRiYSBsZWdhY3ktdHJ1bmsKKzU4NDIwIGI2Mzc4ZmE2ZTE2NDkwYTcyYTRmNmZkNTZmZGNjNGMwZGI3MDEzN2EgbGVnYWN5LXRydW5rCis1ODQyMSBjYTliMDhlN2RjMjNkYTAxMGIwZjFkMWE3ZWZmYTI0ZDVhZDE0ODhhIGxlZ2FjeS10cnVuaworNTg0MjIgZTQ5YWU5OTgwODA4MjJlMzQ3MWE5ZDRhY2FiN2I5NTBmODY2YTZkMyBsZWdhY3ktdHJ1bmsKKzU4NDIzIDE2ZDRiOTA0ODUxZmUwYTFiMTc0NjI0NmU3ZjIzNmU2NjdlNGU2MWEgbGVnYWN5LXRydW5rCis1ODQyNCBjZGEwYjYyNTI3NWE2MWIxYTZiMWRjZTI0YTRlOGMyNmZhZWMyNjUxIGxlZ2FjeS10cnVuaworNTg0MjUgOWI2YTQ3M2NmYTIyOGIyZDcyZTY0ZmQ2YzliYzBlYjA2MzEzZmEwOSBsZWdhY3ktdHJ1bmsKKzU4NDI2IGE0NGU0Y2MzM2Y1ZTAzZGNlZTU5Y2QyNGMzMWNhY2RkNWU5MjYxZmUgcmVsZWFzZTI1LW1haW50Cis1ODQyNyBhMjYyMTc4YzFjMGFmNDUyY2M3MTlmZjNmOGVmMjUwOTJlZDNlMmU4IHJlbGVhc2UyNS1tYWludAorNTg0MjkgYTNmZDZlNTliYTgzNmVjZjQ3MTM4MDgwNjZjMmU3OGM2OTg1N2M3OSBweTNrLWltcG9ydGxpYgorNTg0MzAgODFmNTk4YTc2ZjU5ZmEzNDI4MGU2NmEwNDk2YzEwOGM4NWQ3NThhMSBsZWdhY3ktdHJ1bmsKKzU4NDMxIGZjMDQ4YjcyYmYzZDA4YWJhNDY4NDk2NWJiZDczMmVlNDc5ZDlmOTcgcmVsZWFzZTI1LW1haW50Cis1ODQzMiBkMGJhMzlkZTdhYjdlNTBjODEwMDMwYWY2OGRiMjBkYjRkZjMxMjlkIHJlbGVhc2UyNS1tYWludAorNTg0MzMgZmIzMTBiODYyMGVjZTFkMTY1YzU3NjA1NTBhOWFjZDI2ZTI1ZDBlZCBsZWdhY3ktdHJ1bmsKKzU4NDM0IDk2MDMyMjFiYmE5MDJhYjAzMmQwZWI0NjBjMjJjNjdmMjAwMGRiZmIgbGVnYWN5LXRydW5rCis1ODQzNSAxMDRkMmYyOWY4ODZiOGM5MmViNzU1MzIyNGVhNWY1MWYzMmViYmY1IHJlbGVhc2UyNS1tYWludAorNTg0MzggNmE5N2Y3MjYwY2FkMDk4NWYzOGYwZGU0YjJiZTFjZmRiNzZmZWI3ZiBweTNrCis1ODQzOSA4MzNiMGU3ODE1MDZkYWQwYTI5MjQ1Y2MzYWE2NzFiZWQxZmRjMzg1IHB5M2sKKzU4NDQxIGZiOWQ1MzA2ZjRjNzIyNDBiY2ZkNGQyNDNjNDIzMzI2Y2VjYTE3ZTkgcHkzaworNTg0NDIgOTkzZTI0YzcyNGI4YzdkMzJiY2I5M2QxNWVhY2IxOGZlNTU0NDE0YiBweTNrCis1ODQ0MyA0ZWE5NDVjYmJiNmQ0OWQxZTQxMzUxMzI4Y2JlOTQ5Y2U4ZjBlMDU5IHB5M2sKKzU4NDQ0IDQ4M2NiNDFhNTY5MWJiNTU2YWY1MjI5ZDc3ZGM1OTU3ZGQyZGY2MDMgcmVsZWFzZTI1LW1haW50Cis1ODQ0NSAzNTg2NjMxZDhkMjFjNTkzNjc1ODNkN2YyNzhhNmFhYTQ1ODc3ODkwIGxlZ2FjeS10cnVuaworNTg0NDYgOWYwMzY2MjYwY2ZiYjQ4NzM3MDhlZjFhMDVlMjQzMzRkMDMxZmIxMiBweTNrCis1ODQ0NyA2NDRlMjhlYTliMjJhNDYwZmZjMGM1NzJjYjQ2NzNiMzliYTM4ZjY5IHB5M2sKKzU4NDQ4IDhlNzJkYWNmN2YzYTUyN2IxMjVhNjg5ODk1YWEwN2VjYWI4NjFiMGUgcHkzaworNTg0NTAgMDJhMzNkY2E0MDAxYTU4ZmM5ZDVhZWYyNzgwZDQ2YmZmNzFjZjg2NiBsZWdhY3ktdHJ1bmsKKzU4NDUxIGMzYTI1ODIwZjUxMjM1Y2Q0YmU3ZDQyNjFkOWE1YmFjZTczN2Y5MWQgcmVsZWFzZTI1LW1haW50Cis1ODQ1MiA5OTI1Y2UxZmQ3YmU3ZGZiNDY3OTg0NzEzMDIzZTFhZmExM2Y2NDgyIHB5M2sKKzU4NDUzIDMwNmQ1Mzk1ZGZhMjk5ODA5OWU0OTUzZDVhMWY1ZDhjZjY3ZTlmOWQgbGVnYWN5LXRydW5rCis1ODQ1NSBhYzYyZWIyNjcyMDZlMTVkMzk5NDRiNjYzYTc3YjYwOWU5OGQ2MDJhIHB5M2sKKzU4NDU2IDAwMTU1NzJkMTFiY2Y5ODYzZjExMDYyNjhkMjFhMmVhYmFjNzgyMDYgcHkzaworNTg0NTcgOWZiZjczM2EwNjM5YmVhNzdkOTEwNWJlYzFhODdkZGI5N2FlYzJlYyBweTNrCis1ODQ1OSA0ZTA1YzI0ZTI2ZjhhNTM0YjY0YjY5ZmVhMWEzNGRhMzAwN2U4Y2EzIGxlZ2FjeS10cnVuaworNTg0NjAgN2UyN2Q1MGM4NjcyMWU2MWZmZmZlOTcwNGJkNjYzYWU4MzY3YjdjYyBsZWdhY3ktdHJ1bmsKKzU4NDYxIGI0MDM1ZDM2NjViYjgzMDIyMGIxYzM1ZDU3ZGZmZDU2Y2JlZjYyZjcgcHkzaworNTg0NjMgMTI2ZDJmYjczNWI1YTI2NGMwNmE1ZjgxNTM2YTYzMzEyM2QyMGFlOCBweTNrCis1ODQ2NCA1YWQ1NzhhZTk4NzNlNjE3NDY3ODA4M2QzZWEzMDMzNzNiMjI3ZTEwIHB5M2sKKzU4NDY1IDkwMjk0ZDgwYTNjNWJjZmRlNmEyMzk5MDQ1MjIxNTJjMmNiOTg2ZWEgcHkzaworNTg0NjYgMTkzMTllNzBmYzNlZGJiNDViMmQwMDcxNjFjMWIzYTFkZTA5NDE4MSBweTNrCis1ODQ2OCBhNWE0Yjc4NmJiMjE1YjZiMGE4YmE5NDBiODQ2YzExZTE0Y2Y0ZDY3IGxlZ2FjeS10cnVuaworNTg0NzAgMjE5NWQxZjE3OTU4M2FmNmYwYzNlZTg1ZmY1OTdjZTZmYmRlZGQ2NyBweTNrCis1ODQ3MSA2OTc0MDBmY2U3YzVjMDRiNWIxN2RlOGVjNzBkZTdkYzIyOGMzNWVhIGxlZ2FjeS10cnVuaworNTg0NzIgNTA1OTliYmIwYzY3MjM5OTJjZTc0MjQ3YWZmNmZiZTg5MDk4ODQ5NCBweTNrCis1ODQ4MSAxNmUyMzdlY2UyN2QzOWQ0NzgxNTRlYzhlYTBiMDU2MDIxNDRjZGVkIHB5M2staW1wb3J0bGliCis1ODQ4NSBjOWU2MWQ2NmZmNjUxODI4MWVjNjQwZDNlMzM3MGQ2ZGRmYWM1YzU0IHB5M2staW1wb3J0bGliCis1ODQ4NiA2Y2I2Mzk3ZDIyMWFmMmE4YTM3M2Q3ZjZlYjNhMDNjMTkyOTMyYjNjIHB5M2sKKzU4NDg4IGQ3MTM4NGNiNTYwNDRkYTE5OTFhZmVmZjNiN2U3NmExNmM0N2ViNGMgcHkzay1pbXBvcnRsaWIKKzU4NDkxIGU3MmFkNGQyNTZlODQwYmI3ZDk4NDUwNTUwNzNmMGIzODAwYzk3N2MgcHkzaworNTg0OTMgNjk3Y2MzMWE4M2Y2NWU5MjBkMmYyMjNlY2RjZGRiOTI2ODhlZDI3ZCBweTNrCis1ODQ5NSBhY2U0NWIzNjFlODczZTBlMTdkODIyMDk2YmJhMzM0NjU5MTRhNTFiIHB5M2sKKzU4NTAwIDQwNjAwNDdiM2YxZDNiMjBjZjAxNDg3MmRhMTExYjQxYzZmMzk1NDUgbGVnYWN5LXRydW5rCis1ODUwNiAwNDZlZGFhMTU2NmE3Yjg4NWQ2OGI1ODRhY2VjY2RjODFjNjJjMjBhIGxlZ2FjeS10cnVuaworNTg1MDcgN2NhMGJjMGFkOTYwMzViY2NkMDUxYWIyNGIyNDQ3ZTkzMmNmODU0MSBsZWdhY3ktdHJ1bmsKKzU4NTA4IDAxNmRhOGUyZjk0YjhjYzM4M2MwZDk0NDYxNjE3ZjE1ZjkyYmM3NDMgbGVnYWN5LXRydW5rCis1ODUwOSBjOGVlMjYwNzMwNTAzZTk5MWYyMWFhZjRlMDBjZmVhMTc5NmI3MjdjIGxlZ2FjeS10cnVuaworNTg1MjIgNjE1N2UwZDI3ZWVmNjEzOTRhZmRkNmM4M2FkNGVkMWM4OTBmMTA0ZCBsZWdhY3ktdHJ1bmsKKzU4NTMwIGRhNDQzMzRlYmVhMjQ1MmNiMjMwMmI4MzhlYWY4Y2UwNjE2ZTE3ZGQgbGVnYWN5LXRydW5rCis1ODUzMSBmMWY3MDFjMjI0YzFjMGI5ZTRiZGQ2OWU0YjVlYjYwMDIxZmIwYjcyIGxlZ2FjeS10cnVuaworNTg1MzIgMjdhNGQyMjRlYTFiOTA5YWFjYjhhY2Y4OTgwYTljOTk2ZWJhNzlhYiBsZWdhY3ktdHJ1bmsKKzU4NTMzIGI4MzM0NmYzYmZhZmRhNGMzZjE3MTkyYTMxZjdlMTE2YjNmZmVkZTEgbGVnYWN5LXRydW5rCis1ODUzNCAxNDNhY2JiZmFmZDdjNzA2ZWNjZjg3OWM5OTYwNGEyODI2ODY1ZWExIGxlZ2FjeS10cnVuaworNTg1MzUgNmRiN2JiZThmMjdjZTY3MjQyZTk2ZjAyYjY3YTBlYmI1NGFhZWMxMyBweTNrCis1ODUzNiBkMjE2NWRjMWIwOGRmYzA2NTE5NmRmNGY4ZDBkMjc2ZGIyYWIyOWY4IHJlbGVhc2UyNS1tYWludAorNTg1MzcgY2MxNTgzNmI2ODA4Yjk5OGZiZWQ5NDE5NmY2NzkwZWIyODdhMWMwYSBsZWdhY3ktdHJ1bmsKKzU4NTM4IGU5YWY3MDYzODg4OGRmZDBmZDA5YzFiZjFlNzUxODM4ZjM4YjdkM2EgbGVnYWN5LXRydW5rCis1ODUzOSBmMjY3Nzg0MzA0NzAwNGRlNjM2MDM0MmJlNmRkOWI2NzdmODJiMTQyIGxlZ2FjeS10cnVuaworNTg1NDAgNDQ1MDdjNGRlYzJiNWYyODQ0ODdjZWQzMDYxNDgxNWY4MzQ3MGJmNSBweTNrCis1ODU0MSBkMzdjMDA1MTQwNmU2NmU0ODNmOTUyYmFjODJhOWM2NDRlYjNmMDk0IHJlbGVhc2UyNS1tYWludAorNTg1NDIgNTQ4ZDA2ZTk4ZjU2NDVjZjcwNjQ1MDU0MjVlZjUwNDlhZDI0MmM4YiBsZWdhY3ktdHJ1bmsKKzU4NTQzIGJiNWNiODllZmUxOGFlOGMwZTQ1NTRkYmU3ZDMxMDYxZmI2MDI5NmUgcmVsZWFzZTI1LW1haW50Cis1ODU0NCA5NmFmNDFlNTBlNTYxMTdjZDZlYWM3ZTdlMjY5OTczZmMxNjNmNGIwIGxlZ2FjeS10cnVuaworNTg1NDUgYmRkOTI0MjUxODBmNGJkZjMzYmFjMmE0MjBmMmU3NTkwNWRhNTVhMiBsZWdhY3ktdHJ1bmsKKzU4NTQ2IDIzMjBjZDRmNjhiNThiYTdmZWIxMjY4OTcxMTNjYTE5YmEyZjg2NzQgcmVsZWFzZTI1LW1haW50Cis1ODU0OCA4YTAxNjc0MTYyMjMyMDU5MjVkZjVjNTQ2MGJiNDJlOTE1MzY2NjM2IGxlZ2FjeS10cnVuaworNTg1NTAgODA3NDRjOGQzNGQ4YjE0Y2M1MmNmMjE5NDA2MjBmZTE1NDNmNzg2ZCBsZWdhY3ktdHJ1bmsKKzU4NTUxIGRkMDNhYTc0MWY1Njg4OWM1MTI2MjhmNjI2ZjUxZjEyZmZiZWNhM2QgcHkzaworNTg1NTIgYjE4ZjYwOTJmNmUwMTc3ZWQyN2VkOGVmNmNmMjM2OGJkOTM1ZTg4ZiBweTNrCis1ODU1MyBhMmJiNzZkMTFkNjZiMzEzZTRhOTU4ZmRlNTAyODE5N2NmYzc4MTQ5IHB5M2sKKzU4NTU0IDU3ZjNmMTI2ZjNmNzAxMmNiMmNlZTE0Mjc4NWU0YzU3MzRiNTM3M2EgcHkzaworNTg1NTUgNzU5MzQzNjA1OGRkNTMxMDE0MmZmNDUyYzBlNGJiOWJmZmEzNGVkMiBweTNrCis1ODU1NiBmMGJjYzExY2E5NjU2NTlkNDMxYzkyOGMyYTdiZWFiNzg4ODFmYjI1IHB5M2sKKzU4NTU3IGQzNzhhY2RjMzBlZWQyMmNlOGQ2OGI1YmY3OGZhNWYzOTc2ZDRiZWYgcHkzaworNTg1NTkgNjVmZTE5NTUxOGNiMmZkMGJmZmE0ODE5Mzc3NTcyZmJiYTMyMThmMiBsZWdhY3ktdHJ1bmsKKzU4NTYxIGNiOTRlYmQ5YWZhN2ExYWNmNmY5NTVkNGZmZmFhZTA3ZWMwMGZmNjEgbGVnYWN5LXRydW5rCis1ODU2MiBhMjE0MGViNWZjNmFjZWYxNGU4ZGRjOTc5Nzc0MWFmMTRhNzc1N2IwIGxlZ2FjeS10cnVuaworNTg1NjQgM2NiNjc4NjI4YWYzOGU4NTZjZWUzZDM2YjgwNmM4M2RkMTBiZTRjNyBsZWdhY3ktdHJ1bmsKKzU4NTY3IDI1MmI5ZDIyY2E1NTVjNzBjMmI4ZjIwYzA0NGJiZDY5ZDc0MGUwNDYgbGVnYWN5LXRydW5rCis1ODU2OCBkNzI3OWMzMjFiYjdjYzhlMjRkYzNjYTVmZmE1MGI3OTMwN2FkZDUxIGxlZ2FjeS10cnVuaworNTg1NjkgMjAxZGQwOTQ5OTk5MGVmMTI5YWEwZWU1YjQ4YzY2ZDVhOGNiMjI2NyBsZWdhY3ktdHJ1bmsKKzU4NTcwIGM0Y2MzYzI0ODlhMDQ4Mjk1MGI5ODFkMWYxNzg5OGM3MmRjOGFhNWEgbGVnYWN5LXRydW5rCis1ODU3MSA4ODk5N2YwODIxNzQ5YWQwZmUxNTZjNzE1MWIyMGYzN2FkNzcwNjVkIGxlZ2FjeS10cnVuaworNTg1NzIgNWU0MjExN2Y5Y2JjYzAxMDUzNTBiMTRiMjk5MzQ3ZDBlYjUwNDk0ZCBsZWdhY3ktdHJ1bmsKKzU4NTczIDI1Mjk2ZWMwMmIxOWM1MWZkMmQxZjQ2ZWU0YzU3NjBhYjFmMjRlMDggbGVnYWN5LXRydW5rCis1ODU3NCA1Y2JhMTRhNTY0ZmRkZmFlZDgwMDE2ZDc1NjFlYmQzMDFkNGUyM2IxIGxlZ2FjeS10cnVuaworNTg1NzUgOGZlMjI2OTMxZWU3MjFhZTNkY2ExMTVhZDRjODdhNmYyNmM3ZDZmOCBweTNrCis1ODU3NiA3YzM1YTU5MzE3NTVmZDY1ZDAwZjgwOTA5NGM2MTNiMTI1YTkwYTUxIGxlZ2FjeS10cnVuaworNTg1NzcgMWJmNDc2MjM5ZjM5NTllMjBiYzBkMDU5NWQ1MzczMzkzNDI2MjU2OSBsZWdhY3ktdHJ1bmsKKzU4NTc4IGE1NzYzNTEwMGRjMzk0NmIxNjZkMmFlN2Q4MGNlYjU4YWQ0ZmI2ZWYgbGVnYWN5LXRydW5rCis1ODU3OSA0ODIyMGQ2NDRjOGUxMDlhMmMwMTNhNDAyZjllNzczZmMxYjk0NzA4IGxlZ2FjeS10cnVuaworNTg1ODAgZmFmNWRlNjllOTc3MWU2NzY2YTA4NDBhZjUyMzEwNjc4YWE5MjA5MiBsZWdhY3ktdHJ1bmsKKzU4NTgxIGM1Yzk3ZDdhZTkwY2U4ZjRmNWU3ZTQ4ZTdlNjcxYTI1ZmNmOGIzOTYgbGVnYWN5LXRydW5rCis1ODU4MiA0ZjY2MmJhMDlmMWZiZTM4NjFmY2Q1YWU4NWMwYzM1MjZkZTFiZTMzIGxlZ2FjeS10cnVuaworNTg1ODMgNmRmOTg1NzQ0ZDk2NzhmYThiMDhmMjlhOWRjOWY4NmE0NzJhNjk4OSBsZWdhY3ktdHJ1bmsKKzU4NTg0IDAzMDU2MzY1YTFiNjYyY2FmMjg3NmM0M2FkM2ZlNWU4YmU3MzhiMjIgbGVnYWN5LXRydW5rCis1ODU4NyAwMDY3YTZhYjQ4NTRlNzE2NTdhNWJiOTJiNzJhZTI3MTdmMjZhMjZkIHB5M2sKKzU4NTg4IDkwMjEyNWI1OTRjYzg5OWY4OGU3MDU3OTc5ZWU5ZDk0NTA1YTU1NWQgbGVnYWN5LXRydW5rCis1ODU5MCAxNzgyNTgzZjExNThiZjM1OTAzNTk3Zjk0YmZlMjhkYmVlZGUyNTAxIHB5M2sKKzU4NTkyIGE1OGYzMTkzN2RhZjljZGNkYTdkYzkzZWZlYjQxYTcyZWFmZjZjZDEgcHkzaworNTg1OTMgZTgyZDlhODhlZDllNDI4NTJjNWFkZWYxZDRjMzVhZTdhNzhhMGEzNyBweTNrCis1ODU5NCBiNmEyOWEwZWEzMDdkMzkzOWRlNzg0ZTA5ZWIyMGI5NTdiYThiOWYyIGxlZ2FjeS10cnVuaworNTg1OTYgYjEwNTQ0ODI3YWY3MGIzNTcwM2MyYTRmZjNmYjQzOTNhM2JhODc3NiBweTNrCis1ODU5NyBhMzJlN2VjOTMzOTRlMTUyNWRlY2NmYWIyMWU5NjlmYjFjOWMyMjdlIHB5M2sKKzU4NTk4IDA0MDg4YWJmNGU0ZmQwM2U3ODg1NDU2ZmUzOGQxN2ZjM2Y4NDRiNmMgbGVnYWN5LXRydW5rCis1ODU5OSA1M2VlODk0M2QxNjU4ZGFhYzNhODBmZjgxOTcxNzUwMjg4YmFmNGZiIHJlbGVhc2UyNS1tYWludAorNTg2MDAgZGM4MWJjZmMzNTFhZTAxYmEzN2UzZjNiNjc3NzQ0MDg3ZmE3N2M2OSByZWxlYXNlMjUtbWFpbnQKKzU4NjAxIGViOTA4YTE5YzA1YTI0ZTA4MDMwNjZiODY1Yzc1MzhjOGIzZGExNTAgbGVnYWN5LXRydW5rCis1ODYwMiA5NWQ4YzkxM2U4YmYzNjExMmVjNzdiYTYzNmM3MTFiYjFkZDE0MTNkIHB5M2sKKzU4NjAzIDk5NTI2YzQwMTQ3YjE0NWI0YmMyMGEwMTc5ZGFiZGRiYjZjYWJhYTAgcHkzaworNTg2MDcgY2Q1YjM4M2EzOTdlNmUyMTJkZjZmZmI1ZDMyNmJkZDJhMmNhY2IyNiBweTNrCis1ODYwOSA0NDFkNjA5ZDA5NmI1ZGY2NjAzZTE0Zjc0OGNiYTQ3OTYyODYyNDlkIGxlZ2FjeS10cnVuaworNTg2MTAgNjM0YzNkNDA0OGU3ZDdkNzBlNjUxOTYzYjFjNWQ4YWVkZTgxYzljOSBweTNrCis1ODYxMSBmOWI3OTU0ZDc4OGQ2MGNkMDRkNTI0ZWYyMjZmNmZkYWRhODc0YjFiIGN0eXBlcy1icmFuY2gKKzU4NjEyIGRhODIzMGZhZjJhZWJiZmEzMTgwYjQ4OGFhYzUzODliYjJmMmFlNjMgcHkzaworNTg2MTMgYzlmMjg2OTdlMTk5NWI5MzAwZDIwNjZkYjU1ZWFiZTc0ZTMzOTRiNyBweTNrCis1ODYxNCA3OTkwNGU4NDFkZjM4MGM2MGRiYWM3MGY4OTg2YjRjMWJhM2U0ZjAwIGN0eXBlcy1icmFuY2gKKzU4NjE1IDM0NzkyYjllNGI0MjhkZWIxNGQ2Njk5YWZjMWI3YTRmZDg0NTRmMzcgY3R5cGVzLWJyYW5jaAorNTg2MTcgMDAzZDM1MjE1ZWYyYWM2MjY3ZWZkMWNhNGM1Y2E1ZDcxZmY5ZDNlZSBweTNrCis1ODYxOCAwY2ExZDI5YjgzYzJiNmRhOWRhYWU5ZDJiMTcwYjhkYTk4ZGVmY2ZhIGxlZ2FjeS10cnVuaworNTg2MTkgMGM3NmU1M2MxZDY1MmUxMzc4ODNkMTlhNzVmNTFjNzk2OGRiZDQ4ZSBweTNrCis1ODYyMCBhMDk4M2Y1NWM5NTc1Y2VjZmZlMGQwNGY5NTZhZWVlNDFjMzJiZWIzIGxlZ2FjeS10cnVuaworNTg2MjEgYTc2MGMxYTA3ZDI2ZjBhOGYxMTU2NWY3YmEzZTdjZTgyYzE3M2I3YyBsZWdhY3ktdHJ1bmsKKzU4NjIyIDM2YjJhYWY0NTdiNGFlMmI4NDJjZGYxZWVkMTg0NzgzYWI1NjJhYzMgbGVnYWN5LXRydW5rCis1ODYyMyAwOGVlMjU2YTliZDExOTE2NDIzMDMyNmZjMjU2YTk5Zjc3ZmFiZmU3IGxlZ2FjeS10cnVuaworNTg2MjQgNzQwOGUxYWU5OGM0YTA3NWJjYThhYmVjYTdhNzg2YTE3NWI0YTAzYiBsZWdhY3ktdHJ1bmsKKzU4NjI1IDk3NGU2NGNjMDgzZGNhOTI2Y2Q0MzFjMzUwNTQ2NDk1MjY5MGUxZmIgcmVsZWFzZTI1LW1haW50Cis1ODYyOCAzYTE0YzkwNGRhMjMyN2MwNDEwZGQyMGE0N2JmYTM5YjQyMmEzMTJiIGxlZ2FjeS10cnVuaworNTg2MjkgNzMyMjc1YzQwMjZiNTIwYmE0ZTE2NGU2Y2RjOTBjZDUyMzAyZTgwMCByZWxlYXNlMjUtbWFpbnQKKzU4NjMwIGU1M2Q5NWMzYzBjNGRiMTRlOTllYmEzYWNjMTY5OWYyYjY1NjRlM2UgcmVsZWFzZTI0LW1haW50Cis1ODYzOSAzZGY1Yzc0NjE2MDNjZmE5YTU1YmVjNzlkZDBmMTU3Y2I3NGU1ODE3IHB5M2sKKzU4NjQwIDMzZWZiZmMyOGQyYjM3OWI1M2M1MmQyNzdjYzJlNmI0N2NlZmVlOWQgcHkzaworNTg2NDEgNTkwYTFiZWVlZjg5ZDFkYWMxZGNiMTI0YmVmMzNjYWM3ZDZhMzdjOCBsZWdhY3ktdHJ1bmsKKzU4NjQyIDdjN2I0MmY2NGY0MWQ0MThkODM1ODRkODdlNjRiMmJjN2FjOTUyYzYgcHkzaworNTg2NDMgYmFjMzQzYWRmZmQ5ZDI3MzJmN2JhNDFlYzZkZjEyZjNiYzMyNDMwNyBsZWdhY3ktdHJ1bmsKKzU4NjQ1IDNlNjM0OGJjOWEyODM3NDkxMDQ5ZWJjNjlhN2JiMThkODUyOTIxMTkgbGVnYWN5LXRydW5rCis1ODY0NiA4ZGVhNTk5NzliYTJlOTg4YmFlZDUyZWU1YTIzZmRiNzQ5YTk0M2VhIHB5M2sKKzU4NjQ3IDU3YzBkMDg4NDMwNjQ4NTllZTFkZmNiNmE3ZTFjY2VkYmE4N2JiMmIgcmVsZWFzZTI1LW1haW50Cis1ODY0OCA1MWJhMTJlMGExZDUwZTI3MzMxMWU3NDZlMTJlNjJlMWU4ZDg1MGUxIHB5M2sKKzU4NjQ5IDhmZTI0ZTVlZWVmZmI5OWQzYmFjYzQ5NWI5YjA2MDdjOTc4ZTNjM2UgcHkzaworNTg2NTAgZDY2MDE4ZWQzZGVkNTkwYmExZjZjNjY3MDVlYzNhYjAwNDAzN2RlYyBweTNrCis1ODY1MSA5MDBlZjBlYjNmOTRiNTAxMjUwMWY0MDI4ZjlhZWRmMTE1OTYwMDk1IGxlZ2FjeS10cnVuaworNTg2NTIgMzVkYTkxNWFkZWRjYWNjMWEwMzJhOGE4NGI1YzE3ZTc1ODdlZjE1ZiBsZWdhY3ktdHJ1bmsKKzU4NjUzIDgyMzc3MmYxZDJiZTkwOGI1YzU0OTJlMGI3NGIzOGJiZGI5OTJiOWUgbGVnYWN5LXRydW5rCis1ODY1NCBmZWQ2NDMxNGQ5NDQ5ODNmYjNmZmI4MzM4MDk0OTliN2JhNzIyYjg1IHJlbGVhc2UyNS1tYWludAorNTg2NTUgNTMwNTczY2Q0ZjdhNzc4MTY4YmQwNjFkZmFjYThhMjAwZmU5ODI3ZCBsZWdhY3ktdHJ1bmsKKzU4NjU2IDUwOWE3MzZlYmRiOTcwNjIwNjZhMWRhNTcyMGI0ZmU5YjI5MzBmNjUgbGVnYWN5LXRydW5rCis1ODY1NyBhODgxOGZmZTI0ZDExZjEwMTQ1YzM1MWU0YzY4YTk1Yzc1ODA4OTI0IHB5M2sKKzU4NjU4IDcwNzVkNDY0ZDkzODQ1M2ZiMzg2NDI5NDY3NjVmYWY1MWRiZTNjOWUgcHkzaworNTg2NTkgMDZiZGI4NDM5ZTI5ODRjMjc2NDc2MDgyOTUwMDM5ZTljOGUzMTdhYiBweTNrCis1ODY2MCBkM2JmMDA5ZmJiYTk4ZDNiN2MzMjJkY2YxZWNlYWRlNjNiODY4ZjdmIGxlZ2FjeS10cnVuaworNTg2NjIgNGJiNmEwYzM1M2FiNjg2ZTc2NTcxMmYyNWIxNjRlZDhhZTFkMTlkZiBweTNrCis1ODY2MyA1YjEyYjBiZDgxODgwZTk4ZjAwZTljOTczNjJhZmRiNTdlMzVkNGExIHB5M2sKKzU4NjY0IDE5OThlZTBlZmYyYzEyNjZhOTA3NWY4MGMyZmQyMTQxYTM1NzdjNDggcHkzaworNTg2NjUgNmFiNjRmNmI0YzAzMTdlNzEwYWJhNzllMDVjMWM4YTZmYTNlZTM3MCBweTNrCis1ODY3MyAwNjUzMTg0OGEzOTQ2ZWFlODk5M2E0YzRlZGFjMDg5MTEwYmQwYTkwIHB5M2sKKzU4Njc0IDY0Y2UzYmYzYTZhOWQzOGRjODUwYzYxYTFkMjY3ZTNjMjRiZWU2M2UgcHkzaworNTg2NzUgZmM2YmEwODhiZDc3Y2FiMThkMDkyOGE3Mjk4NzJkOTI5MTkyZDRlZSBsZWdhY3ktdHJ1bmsKKzU4Njc2IDVhNGU4YmRhZGI4NTA0Y2I3YTE3YWQxMTcyYWUwYmNlZDE1NjQ5NzkgcHkzaworNTg2NzcgNTBhMzQ3NWRiNDY2YjdkOWQzYmExZGRjYTcyNzFhNjAzNjVkOGUzMCBweTNrCis1ODY3OCAwNTAyYThjNjRlZjIwZWZmOGJiODljNTU1NzljY2Q2YTc0OTQxMjZiIHB5M2sKKzU4Njc5IDdmYjg2ODAyM2Q3NWFlZjg1ZmIyMWUxZTM0MjBhZTgyYWVlYzI0NzYgcHkzay1wZXAzMTM3Cis1ODY4MCAxNzI2YTRjOTE2ZjAxMzE0M2RiMGM4MDllYzZiZWRmOGM5N2FhOWNkIHB5M2stcGVwMzEzNworNTg2ODEgZmE3Y2Q4ZWFiMmQyYzNlMDdlYmFhZDAzZDNhYTI5YzdmZTZhMWJhMCBweTNrLXBlcDMxMzcKKzU4NjgyIGIxMDJiODM2MWQ1ZTkzY2VmNTQxZjc5OWVhZTMzZGEzYzlmZDExMGEgcHkzaworNTg2ODMgMDQwZjUyMmZlZTExMjM4ZjIwNmM4YTA2MWIwZGVhN2FmNmQwZjU0ZiBweTNrCis1ODY4NCAyM2U2ZWMxYjVmMzUwZDZmNTY1NGNhNzk2ZGViZjMzZTE0N2MxYjBkIHB5M2sKKzU4Njg1IGZmYWE2Y2U0YmZiNDc4OWJlY2ZiOWY2Zjc5NjdmYTZiMzM1ZDA5MjYgcHkzaworNTg2ODYgZDQ2YTMxZjVjNWRmMjZiMDkxM2Q2MmUzYWQ4ZTMzZTZiMDZiMjkzMCBweTNrCis1ODY4NyBmZDRkMTBlOTkzYjc5YzQzOGViMWIyYzY3MGVhN2Q1ODVhNjU3YjY5IHB5M2sKKzU4Njg4IDk3ZTJlODljNjU5MTJmMmQ2MjJhNTU5MDMzOWNkMzNhYTQ1MGVhNzkgcHkzay1wZXAzMTM3Cis1ODY4OSBlMTg5ZDMyYjM3MTkwNjhiYWY2YmYyN2VkYjY0NzAyNjZkNGEwMjdjIHB5M2stcGVwMzEzNworNTg2OTAgNjFiYzgyZGYzNWZmOTA2YTczNGRkMmIzZjdhNWM4MzVjYTA4NDUwMiBweTNrLXBlcDMxMzcKKzU4NjkxIDVkMGJlOTdmMTcwNDBjZjNlNGJkYzcwZDE0MDdiNTQ4OTcyNDQ4YzggcHkzay1wZXAzMTM3Cis1ODY5MiAyZTllZGNkZGRkNDQzYTUzY2Q4ZmQ1YTc1MzY1ZGE2NWYzOWZjMDNjIHB5M2stcGVwMzEzNworNTg2OTMgZGFjYzczMGM3Mjk4ZDU5MDI2MTkxODNjMTI3YWI2NmI3ZGRiODgxZCBweTNrLXBlcDMxMzcKKzU4Njk0IDhmZDNkYjY1MzMxOGViZWRkODA2ODdiZjBkYzY0NGFmNGFmMjZkMzkgcHkzaworNTg2OTUgZGM5ODE2MmVmODQ0ZjBhNmYxZDJkZTA2OTAxMjI2NTE1NWEwMDg5MCBweTNrLXBlcDMxMzcKKzU4Njk2IGY1YmM5NDgxZjg4M2ZjYTY0Yjk1ZTNhZjI3ZGY2ODEzZTIzZWQ3MTAgbGVnYWN5LXRydW5rCis1ODY5NyA2MDhlZTRiODIwYWZhNzIwY2RhMzgxM2JlZThmY2JhMDIxZGE0NzIzIGxlZ2FjeS10cnVuaworNTg2OTggMzY1OTEzZDdhZjdkNjVkNDhiZGY0OGY2N2UxMzEyNjg1ZmFiN2IwNyBsZWdhY3ktdHJ1bmsKKzU4Njk5IDkxZmQ2NTA0NWVlZTY4YWRiZjg0ZWZmM2Q2NjA2ZDY0MTk3N2MwMGEgcHkzay1wZXAzMTM3Cis1ODcwMCA3MzYwYzEyYmQ4MWQ0OWVkOGJhYzUxZDBmNzc1OTNjMjI0NjA4ZTQxIGxlZ2FjeS10cnVuaworNTg3MDEgNTFhNzM3NDEwNWFjNGMzZjVjYjUzMTg3MDI4ZmJiMGY2OWJjZWUxNyBweTNrCis1ODcwMiAzZjQ2N2FjY2VjZDJlNDYyYjBkN2I1YmRmOGVhNWI2ZGZjYTg5NTQyIHB5M2sKKzU4NzAzIDEyZDIwZmRmZWE2MmY1MTk3NGM1MDVjOTliMjI1M2IyOTY2YzVmZjUgcHkzay1wZXAzMTM3Cis1ODcwNCBkOGY3NDQyYjhjYWU4NjZmYThmYTUxMmY5NzMwMDg4MTk0OGY1MTdmIHB5M2sKKzU4NzA1IGMzNDcyMDc3N2NiNjZmZjM0YWE0YmRlOGVkYjA3YWRjNzQ2OTcwZGIgcHkzaworNTg3MDYgNDBlM2EyZGI1ZDllMzAzZGQ3YTllZTA1NDE4MGMxODA5YzIzMzU0ZSBsZWdhY3ktdHJ1bmsKKzU4NzA3IDMyMzU0ODcwZGZiMmJiOGZmNjEyNmE2Y2MxZTM1YTVkZjQzNzNlNzMgcHkzay1wZXAzMTM3Cis1ODcwOCA3NmE1NWY3YjUwNjAwNzUyYTFhMjdhNTFmYmQ4NzUzYTY3MzE2ZjJiIHB5M2stcGVwMzEzNworNTg3MDkgMTI0Y2JmMWEwZTNlYTQ4MDUxOTJlOWU4N2M1Y2U4YmU3YzViNDQ3ZSBsZWdhY3ktdHJ1bmsKKzU4NzEwIGE1ZGQyNzhiMGMxZmJhNDBkZDc5ZjRjYzQ3OGU0NjA0ODk1NGViYWEgbGVnYWN5LXRydW5rCis1ODcxMSAwMGIxMzZiN2RhODQ0ZDMyZGU4OGQyZWFhNWQ5MjFhMmZhOTNkYThkIHB5M2sKKzU4NzEyIDQ3YzU1M2ViNzVkOTFkMjZiYTI2Mjc1NDYzZGE5OTFmMDI0YjQyNGYgY3R5cGVzLWJyYW5jaAorNTg3MTMgOGY3ZjZjODUwZGJkMjYyYjY5YzJiNTNjODRmMjA5Y2UyZTljNmQ2NSBweTNrLXBlcDMxMzcKKzU4NzE0IDI2ZmU3MDg5ZjE0YWYxZWJkMjM3ZGJmZTcxZGRiZDM1ZDAyM2NkZDggcHkzaworNTg3MTUgMzM0ODA3NjVmNjY5MzAxZmI0MjFmYjUwYTFkN2QzMGMwMzNmZDExOCBsZWdhY3ktdHJ1bmsKKzU4NzE2IGUyZmU1ODYwNGNiMWNlYmY3OGViNDY0YTAwYjc5MWY0MjUxMmJmOGQgbGVnYWN5LXRydW5rCis1ODcxNyA4ZWRlYjUxNjhiZjUxNjY0MTQ2NzNmZDhiN2FiNzg5M2M1ZDViMTBlIHB5M2sKKzU4NzE4IGMxMjE0YmQ2ZWQxNjA1MmU5OWVlMWVjZTAxNTQ2OTg1NDM4OGQyZmEgcHkzaworNTg3MTkgZTUxMGI3MTZiZDgwYjdhNzY5Y2ZkNWI5YmMxMzQ2NmFhNmE4ODkyNCBweTNrCis1ODcyMCAwNDY4MjY4NzgxN2ViOTQ0YWYwOTk0OGI1N2IxY2YxZGNhODc2NWY1IHB5M2sKKzU4NzIxIGU5MTUwNmI0Yjg1ZjhhYmQwM2VmOGY3NTNiYTQ0YmNlODAzMDRlNjUgcHkzay1wZXAzMTM3Cis1ODcyOCA3OGE4YWVhNmNiMGFlNTFlMzJkNWZjMjYyYTA5ZDYzZjUwNTRkMmY0IGxlZ2FjeS10cnVuaworNTg3MjkgZTIzNGQ5NzZiNWQ0N2I3MDAxN2M5YjQzZjcyZjc3ZDU5NjNlNjRiOSBjdHlwZXMtYnJhbmNoCis1ODczMCBlM2EwMWY0OTNlOTRmMzU4MzgwOGE5Y2RiNWI0NjBjMDQ3MmNlNTgyIHB5M2stcGVwMzEzNworNTg3MzEgNDMxYzVhMWE2MjkwMTEwZDEwZWU5YTMwY2RiZDAwMGI1NGQxYWRiMiBsZWdhY3ktdHJ1bmsKKzU4NzMyIGJjZjYyOWU0MzA4Mjc4M2IyNTJlZTBiMzUwMTFhYjhmZTEzMThkNjggcHkzaworNTg3MzMgNTI1MzFiNGY1MzVkM2I5NDk2OWVjMDc0ZjkwOWUwOTJhMzlhMTEyNiBweTNrCis1ODczNCBlZWIzNzI4MTg5NTk1NTdmM2ZmZDRjZTg4MzAwMDFkODM2ZjdmNGFlIHB5M2sKKzU4NzM1IGZlNTcwY2Q1YjE4ZjFmMmQ2NjcwZDU3Yjk1YzhhZDQ1M2IxMjA2MmMgcHkzay1wZXAzMTM3Cis1ODczNiBkNDdhMDRhMmUwYmI0NWU1ZTkxNjc5MTVhNTQ1YjZkMmE5YzZiYjUyIHB5M2sKKzU4NzM3IGVhNjUwMTEzNDI4NjhjNDIyYjllNzI4ZTk5NTk5NjUxYjcwNGM0MTAgbGVnYWN5LXRydW5rCis1ODczOCA2MGQ5NjEyMDQ2MGIxYzQ3MmVhOWRmNDMyOGYwMGU1YWU3NzQ4OWMwIHJlbGVhc2UyNS1tYWludAorNTg3MzkgZTQyMGFhN2Y1MGNiNTBkYjM1NDU0OGM5MmY5MDBlOTUwZDhiOGY0MyBsZWdhY3ktdHJ1bmsKKzU4NzQwIDNlNzM4ZTUyYTNjZWIxMWJiZWE0NTczNDI1ZjU3NzcwMmE2NjA2ZmIgcmVsZWFzZTI1LW1haW50Cis1ODc0MSBiZWY4OGRhODIxYTRjMmM3MjY2OWEwZTRjZDUzNmZkNWYzZjZlM2U3IHB5M2stcGVwMzEzNworNTg3NDIgYTJmOWU2Y2VmMDJmNzhhN2E2ZTQ4NzBmZjU4NTViMzIzZGJkZTliMiBweTNrLXBlcDMxMzcKKzU4NzQ0IGZiYzZmYzZkYzRmZmUxYjJjMjc0N2M3MjUwYWI1NTgxN2E3NTk4YTggcHkzay1wZXAzMTM3Cis1ODc0NSA0MzFiYzkwOTQwMTk1NWEyMTAzY2QwY2Q2ZGFlM2E2YTM5M2IxOTA2IGxlZ2FjeS10cnVuaworNTg3NDYgMDIxY2VlMTg5ZjllMWFiZTViN2MyMDAwNzIyMTljMDUwMDNjMGZhNSByZWxlYXNlMjUtbWFpbnQKKzU4NzQ3IGZkNjg1ZDdlODU5YWExMGRiZDRkNmUzOTQ1Yzg0OGI3NzkyMmE5NjkgcHkzaworNTg3NDggZjg3ZGM2YTA0Y2VhYmEzMDdjMjA4YmYyYzFiMDJjYmEwODU4ODg5ZSBweTNrCis1ODc0OSAzZTVlZGYxOWQ1ZjA1ZDJmZmExZDAyMWRhNzgxNjE1ZmQyZDg1ZjA0IHB5M2sKKzU4NzUwIGJkMmY4YmIxMWJjYzM2MjUxYjFmMGM0NDBiNTU2ODg2MTc5OTY3MTcgbGVnYWN5LXRydW5rCis1ODc1MSBlOGQwMDNiMzg3MGYwM2UxNmQ1MjlmOGUzZTBmZmY4NmQ0MjVmOTgyIGxlZ2FjeS10cnVuaworNTg3NTIgM2Q4NjY1NzkxMTdkYTcwODk3OGRkNzlhN2QyYmVhNTllMGE5ODM2MSBweTNrCis1ODc1MyA3OWY1Y2E5ZWUxNTQ5YzE1ZjU1ODhjYTNlN2QzYTAxMTNiNGNkOWY2IGxlZ2FjeS10cnVuaworNTg3NTQgMGY3NDFjODlkODAzYWEzOGUyNzdhYWZkNTRkOWEzNmFkYmQzYzNkOSBweTNrCis1ODc1NSBjMDBkYzc1ODY3MTQzZTc5ODkwM2RiOTJmNWM2MTVkNzVkODlkNjJiIHB5M2sKKzU4NzU2IDJiN2FhZGJjZWEzNGY2NWU0ODM1M2FlNjllOWQ4Yzg2MjkxZmViZjAgcHkzaworNTg3NTcgMTU3YmIwMjg5MmJjOTRmNzA5YjQ2YWVlMGQ4ZTNlNzczZGVhYTQ4ZiBsZWdhY3ktdHJ1bmsKKzU4NzU4IDVhMWNkM2NhMGIzOTFjYjdlNDVlNDFkNmY1NTlhNTViNTFmMjJhMjEgbGVnYWN5LXRydW5rCis1ODc1OSBjMTliNjg0OTQxMWMwMzI0MDg3NjM5ZTRjMDg3OTViNWJiOWY1NDM3IGxlZ2FjeS10cnVuaworNTg3NjAgZWQzYzJhYWEwMDJhMmE3YjA5YjE0MWYwZGI3NTYxYmYzODI5ZTJiYSByZWxlYXNlMjUtbWFpbnQKKzU4NzYxIDk5ZmY5ZGNmMzc2MGUxMjhkOTg5Zjk3ZDNiNGI5OWZlMjgwNzQyNjQgcHkzaworNTg3NjIgZTVlYjkzYTBhMjBlMDUyMzFlODI4YTVhNTJhNTU5NGY4MGY1Yjk5MiBweTNrCis1ODc2MyAzMjc2N2I0Yjc5MjFhOWM5ZTljNmMyYjljNDMyYzVhZjYzZTNiZGMyIHB5M2stcGVwMzEzNworNTg3NjQgOGFjMjg0YjY1ZTM3ZTA2OGI5ODJhNzIyZTJjNDQ1MjUwZGUwMWNhZSBweTNrLXBlcDMxMzcKKzU4NzY1IDhhNDBiODMxYWI2ODk5YzUwNDkzOTQ0NzU5N2Y1Nzk2YjhlYzI3OTkgbGVnYWN5LXRydW5rCis1ODc2NiBjNDYyNGRjMGQ0MWIxMDdiYmFhZTA4ZDkzODA0MDhiZGI3YjAzNWY5IGxlZ2FjeS10cnVuaworNTg3NjcgNTg5MGQ1MTBhYTZmNzQ2NTE4OTFlNDZkOTVlZjExMGU5ZjhhY2ZiMSBweTNrLXBlcDMxMzcKKzU4NzY4IDg5NDhmODgxZTQwM2ZiMmQ1MWU1YThjYjQwN2QyOWQ1NjcxMzdjZTIgcHkzay1wZXAzMTM3Cis1ODc2OSAyNzQ4NmEwMmFlNjRmZDVhODk1Mzc1MDJlODEyOWE3YzA5NjVjNGZiIHB5M2stcGVwMzEzNworNTg3NzAgODcwZjcwNTYwYzhmMjg5MWIzNDBlOTE4ZWQwNzk0ODRkZmFjM2VmMSBweTNrLXBlcDMxMzcKKzU4NzcxIGI2YzhhNjY5Yzc5Y2EzNjYwOGYwODFmNDBmZWEyODM4MzU0Y2JkYzcgcHkzay1wZXAzMTM3Cis1ODc3MiAwNGJlODlmYTc0OTdjMjllMmEzYjA1MWNmZjY4MTJiMjYzMDkxMDQyIHB5M2stcGVwMzEzNworNTg3NzMgZDdhYjVhZjNjOThlYTk2NWU1NmYwZWYwMTQ4OTI0MGJkODk5NjFkMCBweTNrLXBlcDMxMzcKKzU4Nzc0IGI0ZThlNTIzYjg4MmVlMjZkNmUxNzRmMDQ1YzNhNjVlMmNmMTg4MjcgcHkzaworNTg3NzUgNWIzYmU0YWIyZmUxZDExZTMzYWRjMWU1MDM0ZDFlNDA5ZDFjZDE5NSBweTNrLXBlcDMxMzcKKzU4Nzc3IGVlMWJjODM0ZDhjNmZjZDY1MDUzNTZjOGY4MGY2ZjZkMDc4M2VkZjcgY3R5cGVzLWJyYW5jaAorNTg3NzggYzUwZTZmOTI0MTlmM2EwMmYwZDE3NjljMTA0ZWQwNzcyZTZmNjdlOCBjdHlwZXMtYnJhbmNoCis1ODc3OSAxMWMyZmRlNzhkNTc3MWI3M2MyYWQ5M2ZhY2E0Nzg5ZWQwZDc3OWFhIHB5M2stcGVwMzEzNworNTg3ODAgODkwNGEwYmNiZjRmZjkyMjZhYzljNjgxZTNlNDk3NjMzNGIyMzBmYyBweTNrLXBlcDMxMzcKKzU4NzgxIDJhOTM5NGZiNTBhYzE2Yzc5NjdiNjA5YzUxZDQ1MWFkOGU4Yzk5MGUgcHkzay1wZXAzMTM3Cis1ODc4MyA4YzdkYWFjMGQ0YjBiM2Y0NDZiYzcyZDZhODNkYjI1YjMzZDkxNjhiIHB5M2stcGVwMzEzNworNTg3ODQgNWZjYjY2MDJjNDlhOWM1ZGMxMTRkYzhmMmViNjdhMDFhNjQ0YzUwNSBsZWdhY3ktdHJ1bmsKKzU4Nzg1IGE3Zjk1ZTJiOTM1ODI0Y2IxYmJjZmIyN2M0YzI5ZWUyMjBiZGQ3NGYgbGVnYWN5LXRydW5rCis1ODc4NiBiNjEwODM3NzRjMDhjNDA1NGNjM2NjOGE2NGRhYjI2NzhjMmMwODYwIHB5M2stcGVwMzEzNworNTg3ODcgMDYwNDZkMTc5MGI5MzBiOTRkNTI5OWU5YTliMjg3ZDZkNDM4OTE5MiBweTNrLXBlcDMxMzcKKzU4Nzg4IDkwZDVkODRjYTI3ZDgxZjRiYmE4OWZmZDQ5MzdhZmIzMDZkYTBjYzIgcHkzay1wZXAzMTM3Cis1ODc4OSBhOTgyMzQ0NTE2NjllODUyMzIxZTBkZjMxNzhmNmEyZmRmOWY0NGI1IHB5M2stcGVwMzEzNworNTg3OTAgNmRhOTBhNWFlOWZhYTAzOGJhZjE5NTI2M2VmMGUwOTJjNTVhZjNmZiBweTNrLXBlcDMxMzcKKzU4NzkxIDQyNjRhMDdhMzlkMTNmNjk0NjU5ZGIyNjgzODVhNTIyN2ViMDgyZDYgcHkzay1wZXAzMTM3Cis1ODc5NCBhMDMwZWNlYTRjMjRiNzVjYWFmOGVkYzMxOGU5YTE3ZTUyNGI0YWRiIHB5M2stcGVwMzEzNworNTg3OTUgMjgwM2U5NmNjNjRhZjhjNDE3MGNkM2QwMGYwNGE3NjBiZmZhNGEwZSBweTNrLXBlcDMxMzcKKzU4Nzk2IDRiMzYyMzU2OGU2Y2Y4NGM4OWI1MzY4NWQyMDk1YTc1NTNiNWEyNmIgbGVnYWN5LXRydW5rCis1ODgwMCA4NDRhYzJjZGY3YThlMDU5MTFkYzRhNjlkMmQ4OTE1ZWMzODJhMzJiIHB5M2stcGVwMzEzNworNTg4MDEgN2M0M2Y0ZGNjN2M3YzBiODYwOWU0MmFiNGNhODdiOTlkNTJiN2VhNyBweTNrLXBlcDMxMzcKKzU4ODAyIDZkNDZmZWIxNjRiNmJkZjY3Y2I4MzVjZjBiMGMxZDQwYzUzMzQzMDIgcHkzay1wZXAzMTM3Cis1ODgwMyAwMGM5ODQ2NjYxNWIyM2FmNTY4M2U2ZjA5YjMxOWVmMzMzYjkyNDMyIHB5M2stcGVwMzEzNworNTg4MDQgOGJiM2U3NzY4Y2E2OGZmMjM4ZmZkZmRmMzZmZTczMzkzMjUwMWRiMCBweTNrLXBlcDMxMzcKKzU4ODA1IGFkOGMzZjllYzFiMjk3ODYyYTY0M2Y5MDI5Zjc5NDUzMWE3Y2JkNTQgcHkzay1wZXAzMTM3Cis1ODgwNiA3ZWRiZjI1OGNhZDAwMTE5MzIzOTU4MjZjMGNhNTJmNmYxZDY4OTU1IHB5M2stcGVwMzEzNworNTg4MDcgMTE5Zjg0MWJiODE2NGFkZmI3YzBkZWM5OTc5ZTQxMzM1OGU3MzA5MyBweTNrLXBlcDMxMzcKKzU4ODA4IDAxMTM1ZGRkNzI2ZGNhOWUxOWZmYjY0Y2FiMWJkNTkyMTM4OGQ4NDkgcHkzay1wZXAzMTM3Cis1ODgwOSAzNTc1Mjg0ODU3NDM1MzI4MmNlZjJmYjFkMWIzYmI2NjM4YTRkYjcyIHB5M2stcGVwMzEzNworNTg4MTAgYjQ5YjMxMDdlNDIwMzBjYmRmN2JmZWI4MDk0YTU5NzhjMWFkYmEzMiBweTNrLXBlcDMxMzcKKzU4ODExIGE4ZTdjYjllMzdjOTQ1ZDEyZjAzODA0ZTRkOWExNzRkZTAwZTRmZWUgcHkzay1wZXAzMTM3Cis1ODgxMiAxNDJmMjY5NDdhYmE3ZDg0MjExOWIwN2M0NjYxZDViN2MxYTY1ZGI3IHB5M2stcGVwMzEzNworNTg4MTMgZDI0OTU0NWJhNzkyMjRhNGNiMjY4ZmQ3MmRlNGY1OTQ5OGIxNzBkNSBweTNrLXBlcDMxMzcKKzU4ODE0IGNmY2ZhZDg3ZWI3ZDBmNGUxMjc2YjFkYjdiODA0NGQxM2VlN2NmN2EgcmVsZWFzZTI1LW1haW50Cis1ODgxNSA3MDRlNjcxMWU1MGRjZTVlNjFhMjc1MDBkZDcyNDM1ZWE3ODA0ZWU4IHB5M2sKKzU4ODE2IGQyYmEyYmY0ZTc2YmFkYTU4NGE1ZjUxODY5NTM5MzAyNzAxNjQzOWEgcHkzay1wZXAzMTM3Cis1ODgxNyAzMTdiYTUzY2Q0NWM4ZTZlYjBiYTVmNzQyNDA5ZTY4Mjc5MGY3M2Q1IHB5M2sKKzU4ODE4IDUyMmJiYjkwMDVhNDE3ZGNkMTdlZGE5YzYyNzRkZjE1ZTYxMzRmNDcgcHkzay1wZXAzMTM3Cis1ODgxOSAyZmYwZTgxZTY4ZmNhMjMwNmU1MGI3YTNjNzU3YTEwMzE3ZjUzODUyIHB5M2sKKzU4ODIwIGE0MTQwYTI4YzNlNzYxY2IyM2Y3ZWMxNWQxZWU1Yjk0NjZiZTllM2QgcHkzay1wZXAzMTM3Cis1ODgyMSA4N2QzOGY0MmQxNjM0NDBjYTQyYzQ2YmY2OGQ1Y2YwZjVkM2E1YzVmIHB5M2stcGVwMzEzNworNTg4MjIgNmU0OTFkMTI3NjVjNWY3YjRjZjI1MWIyMWI1MzRmNDlhZDYzZjlmYyBsZWdhY3ktdHJ1bmsKKzU4ODIzIDQ0OTBmMzM1YmJjZDM4YmI3MjBmNjk4Mjg0OWI3NTRlMmM4YTNhMDcgcHkzay1wZXAzMTM3Cis1ODgyNCA2YWRjOTlhNjg4OGZkZWQwZDI3YzM1NTBjOWZkYWZkZjhmZGVhOTA2IHB5M2sKKzU4ODI1IDhmZDY5NGQwZjkwMmI4NjQ3YjRjYzBlMDM0ZDUyOWIzYjQ0NDhlMTMgcHkzay1wZXAzMTM3Cis1ODgyNiAwYzUxNzE3OWNiOGM0MDVjNTY4MDFjNmI4YWJiZmFmYzNlY2FjMmE4IHB5M2stcGVwMzEzNworNTg4MjcgOTIxYWY3ZjI3NjAwZjdjNDk0MzljZTZhMDUyZTc0OGQxYzc2YTI1OSBweTNrLXBlcDMxMzcKKzU4ODI4IDlkZTA3Mjc1YjAwODdhNjZlZTY2MjNhOTFmOWM3NzhlNzZiOGE0N2IgcHkzay1wZXAzMTM3Cis1ODgyOSBmZDFjMTBkMjFjOWVlNDMzZDUxZTgyNTg1OTcwOTc1MzY1OTlkMWMxIHB5M2stcGVwMzEzNworNTg4MzAgM2NiYzc4YzNhNDAzNTQ5NWU0YjJmMDQ3Mzg3ZGI4ZDc3ZDQ5NDMxYSBweTNrLXBlcDMxMzcKKzU4ODMxIGY2MWEwZWU3NDc2ZmFjNjEyMzRiZWEwNzMwY2M4NmI0YjY3Njc0ZGIgcHkzay1wZXAzMTM3Cis1ODgzMiA0OGU3NzkyMjQxMWQ5YzVhNThjY2RjNWEzNDMzY2I5YTQ2MGU0MjY2IHB5M2stcGVwMzEzNworNTg4MzMgYjNmODZjNDFkMGEzYTA3MjVjODhjMjQzMTgzNTdkMzZhZWIxYzA0ZiBweTNrLXBlcDMxMzcKKzU4ODM0IGY3YjQ1MjlkMDk4NDJhM2Q2ZGE5MTgzMzdkZjQwMWFiYzVhMTYzN2UgcHkzay1wZXAzMTM3Cis1ODgzNSAxNGRmZTJmMTM1ODIzMjk5ZTc4OTBhMzU2MmM4Y2FkYjA2MjQzMTM4IHB5M2stcGVwMzEzNworNTg4MzYgZTkwMDY1ZTE3MjEyMDIwNzg2YjI1MWQzNmM0YWU0MTBiZjRiMmQ3NiBweTNrCis1ODgzNyA2NThjZDM0YThjNWRiZTE5NjhjYzhlN2FjYWJmYzkyMDU3ZDYyMzg3IHB5M2sKKzU4ODM4IGRlM2I2M2Y4YjE3YjZjZGU2NGExZjEwMTc0MTVlYjE5MmE5Y2VjOWMgcHkzaworNTg4MzkgMDNjM2E1NDA3MmQ5MWVmNDMxYmJjNTc4MTI2NDAzMjU0OWUyOGE3ZiBweTNrLXBlcDMxMzcKKzU4ODQwIDE4OTEyNTdkZmQxMTNkYTY4MjI0MTczYmYzN2I2NzE5NTgxZTNhNTcgbGVnYWN5LXRydW5rCis1ODg0MSAwOWY5MjJjNGY4ODcyNWU2YWQ3ZTk1OTE0ZjhmNmFhYTRkZTdiNmI4IHJlbGVhc2UyNS1tYWludAorNTg4NDIgZWYxZDNlODcyOTZmMzY1ODkxMDU5NzdjZWYyNGU3ZGU5ZGY4NzE1MCBweTNrLXBlcDMxMzcKKzU4ODQzIGYxZmRkNmI3MDE1ZjAwNWM1MmFmMTFmMjJjZTg5MzIyZjI4MGEyZTggcHkzay1wZXAzMTM3Cis1ODg0NCA1ODVhZDc3MTNlZmVmZWU0MjBhMjY1MjE3OTU3MDQ4OTFiODcwYjkwIGxlZ2FjeS10cnVuaworNTg4NDUgNDQ3ZDJhNDUwMWNiNzJhNjVjMWU3OGY0NzY4YmRiNjg5YzZjMWFkMyBweTNrLXBlcDMxMzcKKzU4ODQ2IDUwNDIzZjQ0ZTZkY2ZmYzVkMjFiMTcwNjdiNzg0ZDZkOWIyMmQwM2QgcHkzay1wZXAzMTM3Cis1ODg0NyA3MWY4NDM1NzUxYmFhNWM3MWZlMDgzZWNkMzNkOTU4N2IyOTg1OWIwIHB5M2stcGVwMzEzNworNTg4NDggMTUzYzBjNzQ0MWFhZjZmZTExNDA4MWI5NjZhODhjMDZjZDRkZjk0MiBweTNrLXBlcDMxMzcKKzU4ODQ5IDVhY2Q5ZGYyNzEwODUyODNmN2MyODc5MDUzNTRkOWU2NTY4OWJkMDcgcHkzay1wZXAzMTM3Cis1ODg1MCA1MWEwZGU5YmFiMzc0NmFmMWE1ZDdmOTYzMWNiNmVlOGE1ZDY4Mjc2IGxlZ2FjeS10cnVuaworNTg4NTEgOGQ0ZTljNGYwMzUwYTFlMGI0Y2ExYzM2NzgwMzQzMWU4NmU5ZGU0YSBsZWdhY3ktdHJ1bmsKKzU4ODUyIDM3NDIzYzc2ZTIwODU4NjhhOTZkZDhhYjAwNWFjM2Y2YzM2MTRhNmUgbGVnYWN5LXRydW5rCis1ODg1MyAwZmQxY2FhODUyMjVmYWNhMjU5ZmUzODgwMTZlMzZkNmUwNjAwNGRmIGxlZ2FjeS10cnVuaworNTg4NTQgMzcxNTY5NDVjYTM1MTZlNWI3YjhhNjU1OWM3MzhlZGQwOWE2ZDg3OCBsZWdhY3ktdHJ1bmsKKzU4ODU1IDAxZTYzMzNmM2I2Y2VmMjM4NzhiZmNkMDEwMDg0ODNmM2M4N2I4NGYgcHkzay1wZXAzMTM3Cis1ODg1NiAxOTg3ZGJlN2ViNmU3ZDcxN2M3MDg0YTRiMDEwNWM5NWMwOTJlOTZmIHB5M2stcGVwMzEzNworNTg4NTcgMDhlZTNjNzNiNmJlY2FjMTYyNTUwNWQ2Yjg2Zjg4ZjE2ZGM5OTczMyBsZWdhY3ktdHJ1bmsKKzU4ODU4IDcwZWYwYjZhODM0NWYxMjJhOTU5ODUwYjE2OWUyNTcwZjZjNTBkZTIgcHkzay1wZXAzMTM3Cis1ODg1OSBmZTljMjIzM2NkMDRmODMyOGY5MTk0NmY3Yjc4Mjk2Y2ZlMDRkZGM4IHB5M2stcGVwMzEzNworNTg4NjAgMzA3ODgxNDZmMGE2YzA3YWIxMzgyNmRhMDQ0MTc4MjkwNzdhMmYxZCBweTNrLXBlcDMxMzcKKzU4ODYxIDc3ODgyM2MwZmZiNjM5OWIzYWM3OGFlYjA2YzUwZTIxZDkyODIzZmEgcHkzay1wZXAzMTM3Cis1ODg2MiBmM2MzMzdlOWQxZTU5N2MzYWQ0YTM5M2ExYjNlYzdlYjExNGE4NmFiIHB5M2sKKzU4ODYzIGY5ZDQwMWYxZTFlZjBiMGM3YmZjNTlhZDkzYWIxOGJkMTJlMmU3ZmUgcHkzay1wZXAzMTM3Cis1ODg2NCBjNDkwYWUwOGQ2MDhiMDE2MDgzOGJiNjMzOTc2MGU4MTc3MWExZGQ1IHB5M2stcGVwMzEzNworNTg4NjUgYzE1NWYxZGVkYTY1ZDg0N2FhZGZjMjJmNWI4ZTljYTAwZmNkNTg5ZiBweTNrLXBlcDMxMzcKKzU4ODY2IDc5ZmU3ZDA2MjA2YzE4ZjQ0MGM0ZTU4MWFkYWUxYmVkZDJkMzc0MWUgcHkzay1wZXAzMTM3Cis1ODg2NyA1M2FmMDQ2Y2MyYzUyZTJlODNlNzQ5MmE3NWQyN2Q1ZmY3NWI0NTYwIHB5M2stcGVwMzEzNworNTg4NjggZDdkYjQ2N2NkOTQwN2FhMDk2NDA0N2E0YjJkNWIzZGVhNjRlOWQzOSBsZWdhY3ktdHJ1bmsKKzU4ODY5IGE0OTRhOTE1MTJlYzllZTQ1ODJlYTZjNmE1ZmRmMTg2ZmVkNzBlN2QgcHkzay1wZXAzMTM3Cis1ODg3MCA4ZDMxYTM2ZjBjYWFlNTA4OWRlMGNmOTM0OGMxNGVhZDRhYTVjYmU0IHJlbGVhc2UyNS1tYWludAorNTg4NzEgZDI0ODUyYjg2ZDcwYmMyNjRlOTFjOTc0MGI2YTc3MmRhMTEyNjM0ZSBweTNrLXBlcDMxMzcKKzU4ODcyIDI5YTU5OGU2OTM4MjYwZjg2NzA5MTdiOWMyMWMxMjBhNTMzMDE1MTQgcHkzay1wZXAzMTM3Cis1ODg3MyA4NzE3OGYzNWQ3MDA3NDk1Nzk2YThjNWIxNTFiMmQ5MzY5YzVlOWFmIHB5M2stcGVwMzEzNworNTg4NzQgNTUzMTM4NDgwOTE4NTM2NWY2MWFmOGI2YWY5MGVhYmFlYWE3MjA2MyBweTNrLXBlcDMxMzcKKzU4ODc1IGNjNjViNjQwMTk4OTQ2ZTRiZmJhMzI3NWEwMDEyOTE2ZmU4MDhlZWQgcHkzaworNTg4NzYgMGIyMDY3OTBmZWI2NDNlY2UzY2Y4ZTEwZGI1M2FmZWQ5MjY3MDMwNiBweTNrLXBlcDMxMzcKKzU4ODc3IGQ4MjRjMzE1ZmNhYzI4ZTQ1ZGFmNGJiMzZhNjU3NTY1OWFiOGMxMTkgcHkzay1wZXAzMTM3Cis1ODg3OCBkZTk3MzkyNmEzNWNmZDI1MzIzODhmOGVkOTRkMmQ1NTVhMzQxOGVlIHB5M2stcGVwMzEzNworNTg4NzkgYzkzYWQ2YzQxN2RmMjUxYmZhYTZiMjNkYzI5YWQ5YTQ3NWRmNWJkNCBweTNrLXBlcDMxMzcKKzU4ODgwIDkxYmExNjk4YTAxMTg2YzJkNmI3YzVhYTk1ZDJkOWEyMmU4MjBhMTkgcHkzay1wZXAzMTM3Cis1ODg4MSA2ZGIzODA4NTJmNjNmZTFjZWYyYmE2YjJkNTI1Y2Y1ODdiZjExYmI4IHB5M2stcGVwMzEzNworNTg4ODIgOTMwYzYwZjhhYWZmYTcyODk4ZjA5NDIwMTI0NzE1OGFjZjIxODZjMSBweTNrLXBlcDMxMzcKKzU4ODgzIGZjM2JlYzIwZWMxNTM4ODhiMTZkNjA0NWEwZWRhNDhkMjhjY2ViYTMgcHkzay1wZXAzMTM3Cis1ODg4NCAwMjI1N2VjNTRkNzkxM2NmNzgyYWY0MTY4MGM2NDQwMjIzM2MwZjZlIHB5M2stcGVwMzEzNworNTg4ODUgY2I4ZWYyNTUxZDBkMGUzNGZjOTNjOGVlNTQwZmZjYzZlMmY0YjU4NSBweTNrLXBlcDMxMzcKKzU4ODg2IGIzMTBmZDJiMDE4NDdhMGM5MWQwN2E4ZmFiMDc4NWMyNzJlMWQwZWMgcHkzaworNTg4ODcgOTBkMGMzNzY2ZTkyOGEzMmI2MGJjYTYzZmVhZGYzYTNhOTViM2I5NSBweTNrLXBlcDMxMzcKKzU4ODg4IDBkNDYyZDc4OWIxOGVjNmE1OWViZTIxMTY2ODhkNWI2OTg1YzIxNWQgcHkzaworNTg4OTAgY2ZlOGZjZWQ4YTEyMjZhZmYwZjE0NGIwZjliOTRmMjNmODc0NTAyOCBweTNrCis1ODg5MSBjNWY3MDhiYzRjYjdmYzAyOWE3NjI5MzczMDExYTQzZDlmZDU4MWU0IHB5M2sKKzU4ODkyIDczNDdmNzViOWMzNDQyYmQ2MzNhZGFlNTMyNjk4ZjI0YzJhMmJlMDcgbGVnYWN5LXRydW5rCis1ODg5MyBkYTU4Y2Y5YmNiMDFiNWE3MjZiYzM2NjVlMWNhNDAzNTY0N2I4OWIxIGxlZ2FjeS10cnVuaworNTg4OTQgMDZiYjgxMDc0N2UxZDM2MDcxZmVlYTJkYmRiMWQ5ZDRiOGI5ZWMwZSByZWxlYXNlMjUtbWFpbnQKKzU4ODk1IDlmMTdhOWE1YjVhZWVkNzRiMmJlMWVmMGJiNmI4MWQ5ZThiNmE5MTMgbGVnYWN5LXRydW5rCis1ODg5NiA4ZmNjM2Y0NmM2OWRlMTczZjI4NzM3YmU1NzkzODUzYWUwMGMzZmU3IGxlZ2FjeS10cnVuaworNTg4OTcgZmE4MmVjOWM4MGNkNjc4NjdmZmVkMjIzOTU1NzJhOTliNWRiZjRlNiByZWxlYXNlMjUtbWFpbnQKKzU4OTAwIGRlNjNlZjE4NmMxZWM1MDAxODgxNWY0MzFmZTZmZjFjZDJkNDNhNDAgbGVnYWN5LXRydW5rCis1ODkwMSBmNDc0ZGU5NzM0MDQ3OGVhYzcxMTc4YTkyNzZhY2JlZDFhYjEwOTkxIHJlbGVhc2UyNS1tYWludAorNTg5MDIgN2JkNzJjNTZmNmE0MGQyZDQzNDFiZjE4MmM4Y2M5OTQxZjRjMDhjYyBweTNrCis1ODkwMyAxMjQ3ZDI0YjI4N2I4YzZkZDIwZTM1ZjM4OWE0ZGFmNGQyMjUxYzQxIHB5M2sKKzU4OTA0IGRiYTI0OTFjZjcxNzYyNWIxYWQ2OWZjNWQ5YTA5ZTg5Yjk0Y2E0ZjggcHkzaworNTg5MDUgZGZiNDYwMDA0Y2ZlMmRmNzAzOTg2YWExM2JmOGFjM2Q5MDgzZjVkOSBsZWdhY3ktdHJ1bmsKKzU4OTA2IDJmMDRhYmQxMzM5NDRkZTMxMzdmMDBkNmI2YWQ0MGJhMWY1YjIxOTUgbGVnYWN5LXRydW5rCis1ODkwNyAyZDhkNjg1NWE2MDI0MTllYTlhOTk2ZTc2ZDgzZmUyY2M3ZmVlNThhIHB5M2sKKzU4OTA4IDJiM2FiZTNkM2FlNmVhMzNkMmIzOWYyOTgzNDg4MGNiNTA4NDIxZWQgbGVnYWN5LXRydW5rCis1ODkwOSA2NmQyNzVmMjlhYzU1MGVhZjViN2YyYTYxZmNiYTg4ZWQ0ODIzY2EzIHB5M2sKKzU4OTEwIDcwMjJhZmZkN2JkMDljZjExNTUzYzIyZjhlMGFmZDQzN2EzZWRjZmMgcHkzaworNTg5MTIgNmFjNjE4ODJmOTM3MGNmZmZiZGFmYjRmY2Y4Y2U2MjgyYmM0NDgzZCBweTNrCis1ODkxMyA2ZDM0Nzc3OTUyMWI1YjI1MjI3MWVlYTA3NWY5YzgxYzg0ZWI1OTllIHB5M2sKKzU4OTE0IDM2MGRmNjQxMjQ0ZDllODExZWZkODlhZDA2MjJhZDQ2YmE2NmZlZmYgcHkzaworNTg5MTUgYjIyZjI3ZTA3MDExNDhlYjYzYjIxZWYyYzM5MTU0YzAzZmVjMTViMiBsZWdhY3ktdHJ1bmsKKzU4OTE2IDJmN2M0MDFjYjYyZTA0OTczMWRiMzZiOWU1YjAxMmU1YzkyNTlhZDQgcHkzaworNTg5MTcgM2MxZjg1OTNhMTRlNGM1NWU3YzAwNjQ4MGMzNmVkNDFhYjc4NGY5NiBweTNrCis1ODkxOCBhZGU1NjYzZTg4ODY4YTMxYzA0NDVjYjk5NWY1YTcwNDI4ZGRlZWUzIHB5M2sKKzU4OTE5IGQ1YzI1YmYyNjkyZWVhY2ZlOWNkOWIxZGJiMTAwZmYwMzlhNmI3YjUgcHkzaworNTg5MjAgODNjMDVkMmUxMGRlY2QwNjMzMDRlZTU3ZWU5ZTdjYzQ4NWVkYWNhNyBsZWdhY3ktdHJ1bmsKKzU4OTIxIDgxZTMzYmRlNmVlMjBhYzQ0YTAxNjk2MWFhODE2ZTljOTBmYjhkYWYgbGVnYWN5LXRydW5rCis1ODkyMiBkZGM3ZDE0YmUxZTk5Mzk0MThiMzQzMjc4MzliNDgxNjk2MzQ4MjZmIHJlbGVhc2UyNS1tYWludAorNTg5MjMgYzFmODgzMTE1NWRlMGU1OGI4MjMzYmIxNWY0ODllZjczNWRiNmQ5ZiBsZWdhY3ktdHJ1bmsKKzU4OTI0IGFhZWVlNTBhMDY0MDE2NzFiZjVhMDc5MzM2MjI5NjMxYTZkYTVhZjggbGVnYWN5LXRydW5rCis1ODkyNSBhYzEyYWM4OGFlZWE5M2ExMDZiYjY4ZTc1OGZiMTliY2ZjMWNlYzRjIGxlZ2FjeS10cnVuaworNTg5MjYgMjBkYzY3ODZmOWFjZmU5ZmYwN2QzMzQ0YzJhYzhlYWVhYmMxOTMwYSBweTNrCis1ODkyNyBmODJhMjBkZGE0NjVlZjIwZDgxOTcxYzlmMTAwN2YxNzUzNjFlMWFiIGxlZ2FjeS10cnVuaworNTg5MjggMTU2MTc2M2NkYTcyZGVjNmNjMjE5MzY5NDVhYzRhYTQ4MTI4ZmMxMiBweTNrCis1ODkyOSAxOTdmZmI5OTZmYjg4OTU5OWI3YmYyZTViYjNiZGY5MzE3MDIwZDUwIGxlZ2FjeS10cnVuaworNTg5MzAgODVjZjMzNGIzMmMzYWMyMWViYzQxYzUxNTYxZDZlM2I3ZjZjYjEyMSBweTNrCis1ODkzMSA0ODdmMzczN2VhZWZkMDIxM2IwZTE5MTEwM2JlOTYzMzY5MDQ5ZmQyIGxlZ2FjeS10cnVuaworNTg5MzIgMWFkZjA2NmYxODc5YTRiOTM3YWE4OWYxZTFhNGU0NjI4YWVlY2IxMCBsZWdhY3ktdHJ1bmsKKzU4OTMzIDVhMTY5ZGUzNmRlNzhjYmI3NTlmNWNlZGJhZjUyYzY4YmZkYzhjNWIgcHkzaworNTg5MzQgMDY4NjU1MDU0YjBkMGQxMzYyYWE3MmIxYzBjZDdkZGMzY2ZlMjYwYiBweTNrCis1ODkzNSBkMmY5ZTIwMTIwZjllOTM1NzQ5ZWVlODc5MTU4NTBjM2E2NDJhZDE3IGxlZ2FjeS10cnVuaworNTg5MzYgMDFhNWJkYzI4MjBhMDExZmE3YzYwODkzODhjNzk2NDhiOGZlNzNkZCBsZWdhY3ktdHJ1bmsKKzU4OTM3IGM0ZTI5MzZkMTMwNzUyMzI0NjUwOWMwM2YxZGE2Y2U2ZDM3YzFiODEgcmVsZWFzZTI1LW1haW50Cis1ODkzOCA1NWNiZDBjN2FhY2ZjMzg3NDIwYmYyOTM1N2U0NjIxYzZhZjNmZDEzIGxlZ2FjeS10cnVuaworNTg5MzkgNGVkMTZjYTRkOTgwMDhkYTEwMDdhYWI3M2U4NWYxNjBhNDRmMzIyYSBweTNrCis1ODk0MCAyOWJlY2UxNDc4OTM5MWRmMWIzNDg0MzEwZmM4ZWU1MzlkMjdmYTlmIGxlZ2FjeS10cnVuaworNTg5NDEgYWRlNThlYjdjOGM3NWM1YmVjYzNiNWExMjljZDgzODU0ZDY4YThkMyBsZWdhY3ktdHJ1bmsKKzU4OTQyIGFmMzQyOGZhZTE1ZmQ4MzM5MDhlYWEwOTI2NjdlZGEwNTVkMGVkNTQgbGVnYWN5LXRydW5rCis1ODk0MyAwMGU2MTY1ZjQ0ODI5ZGVhYmYwNzVmM2JmZWU1ZWY5ZGM1ODM5YzA5IHJlbGVhc2UyNS1tYWludAorNTg5NDcgN2JjNGNjOTcyYjBiM2M2MWVlNDQ2YWMwZGVmMDBiYjQ1MTZiNGVmZiBweTNrCis1ODk0OCA4ZWQzYTk1Y2ExMTRmYjFjMmQyNDAyMDU3NmZlYWE5YzVlNGMzZTdkIHB5M2sKKzU4OTQ5IDE2NGE2YWM5NGQzYzgxZjQyMjc3OGZhZWZhZDBmM2NlZTA0NzdjODMgcHkzaworNTg5NTAgNTkxMmI2NmNjYzJkNWZmNzViNmFkYmNhN2EyMDk0ODM5ZWFlZjRkYSByZWxlYXNlMjUtbWFpbnQKKzU4OTUxIGNlNzdkOTFlYTFkMGJiZGZmYTFiZmNkNDZhNDMwZjBjOTNhNjZmODcgcHkzaworNTg5NTIgZDdlOWJlYzFmZWFhOWE1ZDYwNzUzMTU0ZGVmMGJkZWRiZTg2NDIxMyBsZWdhY3ktdHJ1bmsKKzU4OTUzIGEyMjEzMDYwZDlkZGIwNDhkMWRhMjE3OTkyY2YxNGM2MWIyZDlkZTcgcHkzaworNTg5NTQgMWQ2ZGI5ZGQzZTc3YTdjYzhkODlmYzhmODRlYTA4N2M0YmFmZGNmZCBweTNrCis1ODk1NSBiMzFmNjFkN2Y4YjBlZTAxNGViYjA5YWM3ZWI2NGIyYTg2ODAxODRkIHJlbGVhc2UyNS1tYWludAorNTg5NTYgMWUwZWExZjAzMDU4YjVhMjUxZGYxM2ZkMzhhZjE3ZjI0YzNhYjA0NyBsZWdhY3ktdHJ1bmsKKzU4OTU3IDA4MTExODJhOWNlOWFjMWRkMmEwOWVlZmE0ZGQ4Mjc1OTM4MzQ4Y2MgcHkzaworNTg5NTggNzNjOGUyN2ViOWNlZjQwMmZhY2Y4YTljYzMxZWY5MzFmOGZkYTA0ZSBweTNrCis1ODk1OSBjY2NlYWVjMTE0NDJmOTRhODkzMDMzM2MzYTZlOTk4NjEwYjBkNjA5IHB5M2sKKzU4OTYwIDI0MTI4MTEyM2ZkODM1MWQxMGUwMjE4ZDMyMzlhNWJmMWYxMGVmZjMgcHkzaworNTg5NjEgYTA2MGIzY2MyYzYyYjEyOTZlMWM1Y2U5MTU1NDZiYTJhMDY3Njk5YiByZWxlYXNlMjUtbWFpbnQKKzU4OTYyIDJjOTdlMjRiMTZjZmNhOTMzNDhhODg1MjAzMWI0ODlhNWM4ZmYwNGMgcHkzaworNTg5NjMgNzY4NDRhMGE1NzlmOTkyZTJiMDQ4YmE4N2NiYjNkNjNmNDJkMGRkNSBsZWdhY3ktdHJ1bmsKKzU4OTY0IGQ1ZmM2ZTk2MDkxZmI2ZmVkMjM3YTQ5MjQzZjgyMzAwOTlmM2RjNjMgcmVsZWFzZTI1LW1haW50Cis1ODk2NSAwMzc3YmE5YmMzNTkxNzUyYjc3MTNiZjQ4YjQ3YTM3MzFlOWI5MGE1IHB5M2sKKzU4OTY2IGUxNjJlODgxZWE1ZjRlM2RhNWM0MWQyMzkyY2IyZGFjMTdhNDAxZDIgcHkzaworNTg5NjggMjRjODRkNThjYjgwMTBiMThlNjIzZTc5M2RhNzJmYmRhMTg3YTdmZSBsZWdhY3ktdHJ1bmsKKzU4OTY5IDUzZmMwZjQxZjY4ZDdmMTY2NmMwNjkxOTZjZTkzNjU2MTBmOTQ2MzkgcHkzaworNTg5NzAgOWExMjgxMzkxYzQ2ZTljNTMxMzY3NjZhYmRlMDM2MGFmZWZlYTFmYiBweTNrCis1ODk3MSA4OTk5ODkzYTZlMjIxNTBjODk4OTdhZTQxYjM4NmZjNWIyOWYyMmMwIGxlZ2FjeS10cnVuaworNTg5NzIgMDNhZDFkYjdjODBlNDVkNmRlNjY5NWVhODFiZDBjNjUyN2Y4OGRhMSBsZWdhY3ktdHJ1bmsKKzU4OTczIDNjMjlkNzNjNzc2OTRlNmM3MzU3NGNlNjA3MmM4ZmI2ZTIyNWUxODcgcHkzaworNTg5NzQgZWUwODE2MDljZWU4Y2QzNDUzMTkxMjQyNzYzYmQyZTM0MWNlOGEyNyBweTNrCis1ODk3NSA5ODc5NTczOGI0YzI3OTNmMGNkOGNkOGE4MjE5NWZjMWM0OTVkYTY1IGxlZ2FjeS10cnVuaworNTg5NzYgMGFlOTA3ODc4NmI0MDJlM2YyYmQ3ZjYxOTc0NmM1YTBkOTEwZDcyOSBsZWdhY3ktdHJ1bmsKKzU4OTc3IDAxOTgyOTgwMzg0OGU2ZjExZWZlMDE4YzNmZjgzNGE2YTYwYTk2OWIgbGVnYWN5LXRydW5rCis1ODk3OCBkZDNjNGRkM2VjZmQxNGNkZGE4N2I0ZjhjZGM5MmFlYjI0NGQ3OGIxIGxlZ2FjeS10cnVuaworNTg5ODUgMTc5MTg2NWE2NjhiOWYyZGI0YTBkOGM3Y2Y4OWMxYWM2NTFmYmMxOCBweTNrCis1ODk4NiBmYTZjZGY1NWRlNThmMzZhMjc0MjBhYTY5MDkwZGE5MzMxNzI0YWRmIHB5M2sKKzU4OTg3IGQ0Zjk3MDZjYjQ2YjNjMmIxMjFlM2U0Mzg3MzFjYTBmY2U1YjExYzggcHkzaworNTg5ODkgNTE2MDQxZDUyNjU2ZDQ4MWIxNTc1ZTFlOTQxYWEyMjJiNjgyNWJhOCBweTNrCis1ODk5MCBmNGEzYjRlMTU1YzI1OTM3NGM5ZGM5NWQzYzA5NWZkNGJhNGI3ZmQ5IHB5M2sKKzU4OTkxIDlhMzVlOTI2NjM3OWJjYWE5NWIzNjI1NmRiNTUwYmUwZjc3NjU1Y2IgcmVsZWFzZTI1LW1haW50Cis1ODk5MiA4ZWQwMjgwYzJhYjY3NDg1M2VhMTdlMGIyZTJhZWJiYmJjMzExNDQ0IHB5M2sKKzU4OTkzIGY0NDRlMjU5MzQxYTk2ZTM5YzU0NzgxYzZkMzRlM2QzYTZkNzYzYmMgcHkzaworNTg5OTYgZGU2YjEyNmE4ZDM3NDk1YjY5YTI5MzhmYjI4MjgyODc2ODA1ZWE1MyBweTNrCis1ODk5NyBiNTk4MjVkOWRiOGY5OWU2NjBhZWExYmE1N2E4YmM1OGQ5MzUzYWIzIHB5M2sKKzU4OTk4IGM3OGRiNDkzODQ4MmM3YjZiYzBjYjg2M2IxNjZhMTYxNjI1NTgwNGIgbGVnYWN5LXRydW5rCis1ODk5OSA1OTA5MzBlMTdlMGM5OGY4N2ViZDUwNTdjY2VkM2Q0Mjc1YTA4NWM1IHB5M2sKKzU5MDAwIGQ0MTkzMzMwZDFiZWVhZjkyYjIwMWIyNjI4N2RiZTk1Mzg2YTAwY2EgbGVnYWN5LXRydW5rCis1OTAwMSAxNzM5ODY5Y2JjNmU3ZTM1NDBhNjQ1NDE3Yjc4ZmNiY2UzNmM4ZjlmIHB5M2sKKzU5MDAyIDZiMDEyZjAxYTg4OTA5MzI5YTdmMDVmZmU1NDM5NzgyOTE2NmE4YmMgcHkzaworNTkwMDMgZTIwMjAzZDAzMzFjYzI5OGYxNTJiMWI0ZGI0MTZlOWQwMGI5MTI1NCBweTNrCis1OTAwNCAxN2FhZjk1YWY5MDlhMTYyZTNhYWIyZTQ1NjljZWYwYmMzYjU3Nzg1IGxlZ2FjeS10cnVuaworNTkwMDUgMTE2NWQyNjFmYjA1ZGI1NzNmODJjZWNkY2ZmYTA5OGEwY2Q4MWRiNCBweTNrCis1OTAwNiBjMzE1OTRmYjFlZDQ0ZjAzNmFhOGQ0NWY5ODNiZmJjNjMzMzI5MzY5IHB5M2sKKzU5MDA3IDU1OTAxNTdmNGZjNjE3NTQ5N2ZkZWI0MDQ2NjYxNjk1YjE4YmNkZjAgcHkzaworNTkwMDggNGE2YTdhZWE1N2Y0ZmQ4ODY0ZTgyNmI2MzUzNjY0Mjg0N2U0OGJlOCBweTNrCis1OTAwOSA3MGNmYzdiNTA0YzI4NjM2MjQ0MTAyMjM1NGMxYTBmMzc2ODJkNDBmIHB5M2sKKzU5MDEwIGY2Y2NhNGIyMjYwY2FiZmM4MmExMzAwN2I1Zjc3NGNjOTM5YTNlOGYgcHkzaworNTkwMTEgZGMyMjU2ZTMwMWE5MjM5MmM5YzU1ZmIzMzA4NGViODZiOWFiYjU2MCBweTNrCis1OTAxMiA3MWU3NDU2MmZiNjQxMjg1OGVlZDNiNGIwNTZkMGUzMDU1ZjQ1MmJhIHB5M2sKKzU5MDE2IGE5OWRhODkzZjIwYzFlYWRmYTAyYjM3ZTdmMzM0MzJlMjhjNGI5MjYgcHkzaworNTkwMjAgMjVhNWY2YTMwMjkyNWQ1NzQ5MjFkNjUzMjFjMzI4OGUwNjQ2N2VkMSBsZWdhY3ktdHJ1bmsKKzU5MDIxIDJkZjUzZjA1MzkyY2MxYWU3ODRjOGVkNTM2NTMwOTU4NTNmZDI4YmQgbGVnYWN5LXRydW5rCis1OTAyMiAxZmIzNTM3NzZkZmI0ZTg2MDhiZjA5NjY3YzVhYjBkYzAzOGQxYjk4IGxlZ2FjeS10cnVuaworNTkwMjQgMTQ5NGJkZTUxMGZmOTRlZDk2YWQ1MGNhMmM0MjNmMDA0ZGRhZWEzOSBsZWdhY3ktdHJ1bmsKKzU5MDMzIDk5NWQyNWFhYzE2YWFhOTJiYzk1M2I3NjA3ZjIzYzliZTU1NmIxMmIgbGVnYWN5LXRydW5rCis1OTAzNSAzOGY2MzQxOWFiZDY0NzNhNDRlOWM4OGI3ZjNhMjcxZDg0YTkxNzUzIHB5M2sKKzU5MDM2IGQ1MGM3MDk5ZDRhYTRjMGNkNDRmN2JhZGY2NmYxYTZhNmNlNjUwMTQgcHkzaworNTkwMzcgNDgzZTk1OGQxM2M3NmI2NjRkZTE2YjM3NjQyYjU5NTRlYjZhYTMyNCBweTNrCis1OTAzOCAxMzMyNDUwYmM5NTIxZDAzOGU3NGUzNmQyOWNhYWM3ZWY5YTBlYzYzIHB5M2sKKzU5MDM5IDRjZWMwYzYzOTJjMTNhZDViYTY4OWEwNmVhMDU3NDgwYmExYmQ3NjkgbGVnYWN5LXRydW5rCis1OTA0MCA1MjBlMmVkOTRiY2M1MzBkNWRkNGQyNzA5MjBmYTU1MzVlY2FhZjljIHB5M2sKKzU5MDQxIDQxZjdjMTNlZjE2MTFjNWJkMjAxMWRmZWM5YTY1YWNlNWUyODQzMjIgcHkzaworNTkwNDIgYjkxZmQ3NGYzMmQ4ZTljNGNjMThjZmM2YWE1ZDZkYWE3NzUwYTMxOCBweTNrCis1OTA0MyBmY2Q3NjMzOWZlMWZlNmY3NGY5YTkyNDM3Y2FiYmFkNTAwNDU4NWQwIHB5M2sKKzU5MDQ0IDNhNzMwZjQ5MDhlM2YyZGIzZThmM2U5MDNmYTlkNmJjNGVjZGU3NWQgbGVnYWN5LXRydW5rCis1OTA0NSA3MGRkYmU2N2QzYzQ2MGExYzhlNDVhYmNiMDM4NWIxMDBhMzFmNTI1IHB5M2sKKzU5MDQ2IDE5Zjk5NjU1MzE4NDgwNmI5Yzc5NmM2YzM3ODA2ODAxNzNlYWI0ZTkgcHkzaworNTkwNDcgNmFhOGUxMzVkOWY4NGRmNDAxZDIyMTljYzc5NmZmMjkyNWMzZTY3MiBsZWdhY3ktdHJ1bmsKKzU5MDQ4IDQ5NjgxZDQzNmRmOTIzNmE2MzRkZDYwMjg2ZDEwNDM1NTE1NjE1ZTggcmVsZWFzZTI1LW1haW50Cis1OTA0OSAwZTg5NzkwNWVlOTQzZDk0MjI0MmFiMDljOGEyNDhiNWMwZWQyZDYwIGxlZ2FjeS10cnVuaworNTkwNTAgZTVkNDhmYmUxNjQ2MmM0MGRjMjJmNzBmMGViZmFiNDQ1NWIxZjkyMiByZWxlYXNlMjUtbWFpbnQKKzU5MDUxIDc4MGM3Mjg0MDZlNjc1ZjJiNGZjOTllYzZlZDJlZDllY2IzMjE3MWEgbGVnYWN5LXRydW5rCis1OTA1MiBkYThkY2Q1Y2Y1YTAxYTM0MzA1NzA4MTlkNWE3NGUzOTY1ZGYzZDBiIHB5M2sKKzU5MDUzIDFhZTkyMjRmNGVlN2YwMWE1YTQwN2NmZGE0NGU4ZjU4MDYwYTI0NGUgbGVnYWN5LXRydW5rCis1OTA1NCA1NGI5NzNmMGY1NWI1YjVkNmMwNTZhMmNlMzMyOGUxNzZmMzY0YTBmIGxlZ2FjeS10cnVuaworNTkwNTUgYjZmNTc4MWY1YzNmMGY1NWNmNzUyMTVmOTZlYzZjMGI4ZWY2MTVjZSBsZWdhY3ktdHJ1bmsKKzU5MDU2IDQ3NDdlZjk2NDBhZThiMTM3NTIxNzAyMzQ4MDJjNDYwNGNkNzYyMGEgcHkzaworNTkwNTcgNjFlZjkwYTFiMzVlMjU3Y2IxYTA3NGU1ZTg4N2UxNGNkMzRjMTA5OSBweTNrCis1OTA1OCA0MGRmYzQ4NWIwYmUzN2ViYWEzMWM2ZTg5MTA2OWU4NzA1YjVhYTUwIHB5M2sKKzU5MDU5IDY5Njk5Y2ZkZDI2ZWQwZTUzYmNmMDM1ZWY4ZDQxZTZmNDUzYWJlMWYgcmVsZWFzZTI1LW1haW50Cis1OTA2MCBiMWJjZDU5OTY3MWYwNTE4MWRjOTUxNTYyNDBiNGE3NDQ4ZDBmYTZhIHB5M2sKKzU5MDYxIGE5MTVmMmIxMzVjMDk1ZGZlOTQ5MjlmODNiNmFkMzIwYTQ5OTMzOWEgcHkzaworNTkwNjIgMTQ2YmE5N2ZmZTFhYjJjOWFmNDM2YjAyM2M2M2ZiOTgzODYxZmViMSBweTNrCis1OTA2MyA4ZWE3ZjU5ZGZmNmJjNjNhYzhmYzUwYjJlNjcwMzE5YWY3NmIwMWJjIHB5M2sKKzU5MDY0IGZkZjE0MTcwMzM3YWQ3OGM1ZGRjNDNlODBiMTA1NDBkZTgzYjE3ZGUgbGVnYWN5LXRydW5rCis1OTA2NSAyYTNkNzM0OTVmMTg0ZGNiMWZkMjZlYzZhNjhiY2Q3NjI0YjI0MjBkIHB5M2sKKzU5MDY2IDMyZDQ1N2E3ODg1YmRmMzgyNmJlYmRkZWE0OTk0MTRlOTRjMDYxY2QgbGVnYWN5LXRydW5rCis1OTA2NyBkM2NiMTZiMzIxZDU1YzNmYmZkN2E4NTI0ZmE0ZjlhZDZjNjg4MTFmIHB5M2sKKzU5MDY4IDc0ZjIyOTU0ZjE4OTlkYjRjNDlkMGNmOTZkZGFkMjVjMTY4OTljN2EgbGVnYWN5LXRydW5rCis1OTA2OSA2Y2EwMDQ0NzVhYTBmYzg0Mzc4YjA0ODI4NGMwMjhiZDZjYmRlNjI4IHB5M2sKKzU5MDcwIDJkZTdkMDBmYmYxOTJhYzNhNmZmYzE5ODNmYTI4NWM4NWMxMzRlNGYgcHkzaworNTkwNzEgNTU3NjE0YzRmZjAwZjMwOTg3YjY2NzkwMDNhY2Q0MGU3MzY4NDI2NSBweTNrCis1OTA3MiAyOWIwZjQ5NzVkOWYzMWUyZDEwNmViYjRmMzU2NGYxMjQ5ODk3OTU4IHB5M2sKKzU5MDczIDdhYjQ5MDY0ZDQzMGFhNWM5MzA0NjM1OGExMTEwYWIyZDQzMmQ4YWYgbGVnYWN5LXRydW5rCis1OTA3NCBmNTRlY2Y0OTRjYjcxMTA1MDI2MDgyZTgzOTk0OWM4ZjczNDA4M2QxIHB5M2sKKzU5MDc1IDhiN2Q0MzEzZWJjMDU2OWNhYzkyZmUzNzQwZDMzN2I1YWRkMzIxNWUgcHkzaworNTkwNzYgZThhYzFhZTQ1MDNjZDdhODI4MDcyMjgyOTVkNDU1OWU3YTBlMjFhNCBsZWdhY3ktdHJ1bmsKKzU5MDc3IDljNGJmMThlNWQzMGU2MzM0Y2MzNDQ1ODRiMGZlYmVjMzg4MDBkMDQgcHkzaworNTkwNzggNzFhMTdkNGQzYWZhMGRhNDE2ODg2NzFlMGNjNDBlMWJlZTgxOTUxNSBsZWdhY3ktdHJ1bmsKKzU5MDc5IDJiYTVhYjM4NjhjOTBmYjFmNDdkOTQ2ZWQ1Y2Y0YTI5ZDkxZmZkNmIgcHkzaworNTkwODAgMzhiMWRlYjRlNGViZGY4MzlmN2M5MTZmODY5YTRiOTc2MmNjYzkwZiByZWxlYXNlMjUtbWFpbnQKKzU5MDgxIDg4Mzg4NGZkYWFlOGUxMTQzY2ZhMjk4Yzk1MzAwYWExNjkyYTE1ZjUgbGVnYWN5LXRydW5rCis1OTA4MiA4NjM2ZGNiODAxY2UwNjAzZTQ3YTY1ZmJkNDZmNDk2Mzk2YzhlZmE0IGxlZ2FjeS10cnVuaworNTkwODMgMjVkOWNlMjgzYjM5NGYxYWVkNjlmNzkzZmYzYzVkZDA0MzY5MjQ3YSBweTNrCis1OTA4NCAzZmI3ZWQ1YzIzZGQ2OTBkNDQ0MGJkZDY2ZDc5NTE0ZWM0MTE2MmVhIGxlZ2FjeS10cnVuaworNTkwODUgM2IwNDg5NDExNmZlMjIyZjgyMTQzNTVkZmJkNmVjNmFmZWY1NDU4ZCByZWxlYXNlMjUtbWFpbnQKKzU5MDg4IDc4MmNiNDAzNzhmNDRmODdhMTRjNmFiYTUxN2FkMDRmYTQ1Y2U3MjIgbGVnYWN5LXRydW5rCis1OTA4OSAyZGJjZDM5MGI2ZjE1Mzc4ODNjMTlkM2M0MWRjZDRjOGE4N2QyYjVmIGxlZ2FjeS10cnVuaworNTkwOTAgYjA5OWQzOWMzNDgyZDk1Y2FmZjcyZWYyZTg0Y2YyMzNhMmMxZDFkZSBweTNrCis1OTA5MSAyZmQ3YzkxMTE2MzJhMjUwMGExMGY4MjY2N2YzZGYzNTU3MWJkOWU1IGxlZ2FjeS10cnVuaworNTkwOTIgNmM5NjdjMjY4NDFhOTE0NTUyYmQwNmUxZjVjN2U5NjNhY2Y5YzZlZiBweTNrCis1OTA5NCBjYmM4YjNiZDMxNTc4MWU1M2FmYjg5MDI2ZTU0ZDAxZmMwNmQxMzNiIHB5M2sKKzU5MDk2IDhlMGM0YzcxMDM3NWYyZGM5MThiMjQzNmZiMjY0NWVjZjA4MWU3N2EgcHkzaworNTkwOTcgZWE5ODg0ZjE0NTQ1OTg4NWJiNTE0ZjFjZTA4NWQ3OTE5YjI5ODEyNSBweTNrCis1OTA5OCAyYTNjYTkwMDA4ZmZmZWMxZWNjMzAxY2RhN2E0OGFmNmE1OTI4ZDY5IHB5M2sKKzU5MDk5IDMyYmZmN2YyOTc1ZDgxMGE5OWQ2OWQ5YjNkYWI5ZTE1ZDhkYTY3YTEgcHkzaworNTkxMDAgNmYxNDk1MjZlODY0YzQxMDQ2ZTRkZGVhM2I1M2YyZTU3YzQ1YTJjMCBweTNrCis1OTEwMSBkZGJjNWUyYzY4OWE3YTQxMTEwMmQ4YTU5MDYyYTkxYzk0MzAxZGY2IHB5M2sKKzU5MTAyIDA5MmI1MzA2OTgzZjcyMGJiZTAxZWIzZTFiZWY5NzcyMjE5NTg4Y2QgcHkzaworNTkxMDMgNzUzNjQzNjQ0MDhiNjkzMWQ4M2Q4OWJjNTA1ZjFkMmU1MmZlZGI0NSBweTNrCis1OTEwNCBmZTViMmVkZmZhZTc2OWFjY2E1MDViMjhmMzNhODA3ZGVhYjQ0NTY2IHB5M2sKKzU5MTA1IDIzYmVmZTU0MGQwZDU0NmRkMTY5ZTdiNTU0YmQ5YmM2MDY4MGQ2NzggcHkzaworNTkxMDYgMTAzYjdmOTU1MDM2ZWEzNmY1ZmVjNWQzYmQ2NjgwYTU2Y2JlYzdiMiBsZWdhY3ktdHJ1bmsKKzU5MTA3IDEyMDk5NzA2MTJkZmUxODExNjA2MDE0ZDFlYTczODRkY2U0ZmE5NWMgcHkzaworNTkxMDggOThiNDk2NjY0OWQ1MWIwOTNlMTkxOTdlMWM5MmE2ZGJhNGMxMjMyYSBweTNrCis1OTEwOSBiMjMxYmRhNjUzYTRmOWIzNWY2MWRjZDI2NTNkZWFkOGFkYWQ2OGJmIHB5M2sKKzU5MTEwIDI1OWU4YTJkNmY4YzI3MDU5NDUwZTgyZGQ3OGVmMmZhYjYzZThiYmYgcHkzaworNTkxMTEgMTRjNGJiM2M2NWE3YzdlZWY3ZWJiZjE5MDFlMWY4YzkyOTlmY2E3MCBweTNrCis1OTExMiAyNjU1ZDExMzEyMzJjMWNmZDI1Y2IyMDkzNTQ5MzY5MzJjMWMzMWNmIHJlbGVhc2UyNS1tYWludAorNTkxMTMgNDFiMmYyNmM3YjNkYmM1MDg4NjFiZWM0MTQzYTE5NWU2YjA2MTcwMyBweTNrCis1OTExNCBkMjM4MjlhOWRiMjExOTNjNmU0ZjE1YzRiOTZjM2IxNGU0YWEzYTVhIHB5M2sKKzU5MTE1IDhkMWVlZjM5MTlmMDUxZTc5ZDU3OWI2OThhNjYwYTc3MjdjMmYwZjAgcHkzaworNTkxMTYgZDliY2Q5NGU1OTM1ZTZiNWY5MWE0YjIxYWRhYzhmMTQxNmZiYTYzMiByZWxlYXNlMjUtbWFpbnQKKzU5MTE3IDhiY2JmMzIyYzJiNWMyNzkwZTdjMDlmYzVmNTU3MDhlM2I3YjczZTYgcHkzaworNTkxMTggNGE3NTUzYjE3NmI2YTFhM2NkNGMzMDFhMjY1ZDJjYWY0Y2YyNDkyNCBweTNrCis1OTExOSA3Mjk2MmFiZDkwYTE2YWI4NTZiYTY5ZTIzZWYwZjJlZGJmNWM3ZmM0IHB5M2sKKzU5MTIwIGE4ZGQ4ODc0ZmYyZDUxZWJiNzQwYTM0MzkxNWMwMGM4NWYwMDMxZTIgbGVnYWN5LXRydW5rCis1OTEyMSBmNjMyNzIwZDgxMDI3Y2U4OWYyNDYxYTQ1MDcyNTNjZDZlMjQxYTg0IHB5M2sKKzU5MTIzIGRhNDc4NDcxZjFiNmI4Njg1NzdmYzg2ZDM5N2FhYTQ3OGJkZTZiYjAgcHkzaworNTkxMjQgNmQ2YjYwOWU0NTdjODA3NTJhYzVkZTA1NzFjNTMxY2UxZjcwMGI3OCBweTNrCis1OTEyNSA4NzQ0ZTQxZGFmNTQ1Y2QxODZjMTI1ZTVjYzEyYzgwZTVhYzNiODc4IHB5M2sKKzU5MTI2IDNjNzI1YTQzYWM4Y2Q4ZTY3MzEyYTQ2NGVhY2E4MDZlZTY0MjU2NDYgbGVnYWN5LXRydW5rCis1OTEyNyA5MzUwZTQyNWU1ZjNiYjdlNWI2NGZmZjBmYmQ4YTk1YTRiNDIwNWZmIHJlbGVhc2UyNS1tYWludAorNTkxMjggNDljZWZlY2NmOTNlYmY1YWI1MmZlYWExZTZkNzhkMDY3ZjVkMzYzOSBweTNrCis1OTEzMCA2ZmY2ODUwNTE5OWFlMTg1MWZkNmJiNjdhZGFhNGZlOTM2ZWZjZWI4IHB5M2sKKzU5MTMxIDYyY2YwOGE2NGJjMjMxNDA0MTkzZTdkODBiNzQyMjM0N2EzNDE1YmMgbGVnYWN5LXRydW5rCis1OTEzMiA1ZjZhOGUyYjllOWNhNmRkNDQ2MjcyZTliYjllMWM1MjYxZjM2MThjIGxlZ2FjeS10cnVuaworNTkxMzMgZTcyNTE2NmM4YzgxODRmODBmZmQ2ZmRlY2VjOTQ2NzUwY2Q0MWUxMSBsZWdhY3ktdHJ1bmsKKzU5MTM0IGFmMzYwMzgwYWExNmZmMzdlNjYwZWYxZjVhNDIyMzUzYzllZmNiODEgbGVnYWN5LXRydW5rCis1OTEzNSAyMjMwZjE2ZTQwMmIxMDUxMzNkNGI4ZDE3YThmNmFkYjVkNTViNTc4IGxlZ2FjeS10cnVuaworNTkxMzYgZWQyOWI5MTYyYWU5ZTlhNzM4YmFhZjMwNzEzZTE3NzFhZTIyZTA1NiBsZWdhY3ktdHJ1bmsKKzU5MTM3IGI0ODFhZGIwNDY5OWFjM2Q2MjdlNTk4MmU0ZmVmYjU3ODMwNGMwYjUgbGVnYWN5LXRydW5rCis1OTEzOCA0ZDBmZTdkYTRjZDVmNmYyMGY0ZGQxMTI4YmU3YzJiYjllNTdiYTY3IHJlbGVhc2UyNS1tYWludAorNTkxMzkgMzU4NmE2NjM0OGJmODRjYTBkYzkwNmI3MzcwNTRhZWYyYWI3NDU0NiBsZWdhY3ktdHJ1bmsKKzU5MTQwIDRlMWExOWJhM2Q0YTYzOGY1YWRjZDM0OGUwNmNkNmZkZjNjMTI0YzQgcmVsZWFzZTI1LW1haW50Cis1OTE0MiA2OGNhYTQ3ZjVlMTUzZTM1NTczMDhiMzM3NjYxYWJmNWY0ODAyNjA1IHB5M2sKKzU5MTQzIDExZTNlMmFlMjM2NDNkMjIxYzYwMTMyNmY0OWU3OTAxY2MwZjExZWYgcHkzaworNTkxNDQgYTRhMTQwNDg2NjkxMDNkZjJjYWJlYjNiMzc5MzAwNjExZjY4NDYzMyBsZWdhY3ktdHJ1bmsKKzU5MTQ2IDU1ZmFmYjQ2ZmE0NTVmNWJjYTZlMGFhYzBkNDY3MDg1ZTczMWQ0N2UgbGVnYWN5LXRydW5rCis1OTE1NCBhOWNmNzgwZjYzOTZhNzJlOWNmZjgwN2ZhOTViM2Y4NjQ4NWUxZjdmIHB5M2sKKzU5MTU1IGI4NmU2YmY3NDM4Zjg4ZjMzOWNiYzViN2U0N2ExOWU4ODY1NmMzM2QgcHkzaworNTkxNTYgMTc0NzlhMDllYzdjY2Q1NTE5MDU3MmE4NGNlNzIyOWU4MmQ1ZGJlYiBsZWdhY3ktdHJ1bmsKKzU5MTU3IGJiMWUxNWJiN2I1OWVjODU5Yjk0NTY5MzI4ZGE1Mzk4NmYxZTkxNmIgcHkzaworNTkxNTggYjliOTQ3ODViMmM3MmZjNWM4YmM3NGE5MDgyZjkyNjJiOGNiMTJlMCBsZWdhY3ktdHJ1bmsKKzU5MTU5IDE1NWU5NzI1ZGEyZjkzNDc1OTU1MmZjZDFkYmIyMGVhZGNiZDc5N2IgbGVnYWN5LXRydW5rCis1OTE2MCBjZjYwMzhkZjlkNTI2OWM4ZTFlZGE3NzRjOWUxMjg4MzY5OTA1NjQ1IHJlbGVhc2UyNS1tYWludAorNTkxNjEgNDlhN2M3ZGJhOGNhZmY0ZGE5ZjA3MDNiOGY0OTJhNDU5ODA4MWY3ZiByZWxlYXNlMjUtbWFpbnQKKzU5MTYyIDBiNTM1N2NjNDE2YjhmMzU4MjRiZjMzNDExMjBmMmZlMTJmODdmMzkgbGVnYWN5LXRydW5rCis1OTE2MyAyYmVkODQxNTg1YTljYTY1YjBiNzRiNzcyNmU0NzRkZGJiZjk1OTRlIHB5M2sKKzU5MTY0IGQzYmU2ZTYxNWY4YzQ2ZGFhNjVhZjgyODdmYzI2NThlZjY2NzdkOTUgbGVnYWN5LXRydW5rCis1OTE2NSBlZGI3NWMwOThhNGIwNTlkODQyMDc2OTQ4NTczNTRlZDYxMjYxMmMzIGxlZ2FjeS10cnVuaworNTkxNjYgNmQ2MTRiOGM1MTI1MzJlY2Y4MDcxMTAzMTRjNzNkZjIwZmRkMGIwYSBsZWdhY3ktdHJ1bmsKKzU5MTY4IGNmMjIwNTk2MGNiYmFhZDZlNDVjZDczNTRhNWJmZDhhZDU2MjhiNTYgcHkzaworNTkxNjkgMjA2OGJmNzc4OTFkMGI0MjQwOTI0Y2M4Yzg0NTc1ZDEzMWJkZTg4MSBsZWdhY3ktdHJ1bmsKKzU5MTcwIDIxODNkNzJhYmZhYWNmY2RlNWNhM2ZmOWYzNGQ4NWE2ZTIwYzUzYWEgbGVnYWN5LXRydW5rCis1OTE3MSA0Y2Y5YmI5Y2VmOTFmNTAzZmM2MTlkYWM3MDIzNzQ5NTI4MDE2YTI2IHJlbGVhc2UyNS1tYWludAorNTkxNzIgZDU2MDFlYmUxNWE5NDcwZDFkZDMzZTg1ZDczNTI3YzU2MzRkM2EwNiBsZWdhY3ktdHJ1bmsKKzU5MTczIDE0YWEzZTRlNzM3NTliN2E2NjdiYzdiZWZmMTYzZjIzZmZjNTdiMTAgbGVnYWN5LXRydW5rCis1OTE3NCBlMDQ2NWJhMGU5NWQ2OGJmMTYyOTUxZmZkNDJiYjZhMzRhNGVhZTVkIHJlbGVhc2UyNS1tYWludAorNTkxNzYgN2RkNzk2MWUwZWZmM2ZmNGM3ZmMyMmZlZDYzY2QxOWI2MDQ5YTgxNiBsZWdhY3ktdHJ1bmsKKzU5MTc4IDIyZTA5OTA1ZTQwMDBhZTdjZmY0ODZjYmZjNjc1MjFiZWM0MjlmZDYgcHkzaworNTkxNzkgN2I0ZTk0YTdiOTJlOWVlMDFhYWY3NzllNDVkZDg3ODgwZWMzMjdjOCBweTNrCis1OTE4MCBhN2MxOGI5MjQyMzZhMDdlOWE2M2Y1MTgzZDFkODI4YWI1MWMyYWVjIHB5M2sKKzU5MTgxIDdiMzAxMTEyNDdmNjcyMDA3YzI2ZWM3ZTM0Mjk5NGRmMzMwODljZWEgcHkzaworNTkxODIgZTYxNjVlMzg5YzUwMjJiNDY4NzNhNWYyOWRlODI3OTEwODAyYWE1ZSBweTNrCis1OTE4MyBmZjVkZjFmYzBmY2M0YTZkZjMzOGE4Y2VjNWYxODRkMDk5NGU3MDljIHB5M2sKKzU5MTg0IDUyYmJlMzM2NWM3MmMyNzBmNzVkMTczYzBjNjk4ZWI0Y2U2MDE2MDQgcmVsZWFzZTI1LW1haW50Cis1OTE4NSA3M2Y4Mzg5OWViOWQ5ZWMwMGU2MjJjZGIwMGUxN2Q4MjY1Yjk3NmM4IHB5M2sKKzU5MTg2IGU0YjFlMDVjZTI2MzUyNzU1YzAyZDMzZDkxMTlmN2E0ZWYzMTUxNTYgbGVnYWN5LXRydW5rCis1OTE4NyBlYmM3Mzg5Mjk3ZDY5MWM2ZTE1OWM1OTk5OWU3ZTAyODVmMGQ1NjZkIHB5M2sKKzU5MTg5IDQ4YWY2Mzc1MjA3ZTcwOGRiNDFjMTliNjAzNzNiYzYxZGYwM2ZlYjAgcHkzaworNTkxOTAgZjQ4ZDJlZjcyZTdlMzk0MjRiMDRhYTI1NThiOWJmNjBiYTA5YmNhMiBsZWdhY3ktdHJ1bmsKKzU5MTkxIDA0NzY0NTdmZmIzOTFmZDJmMDQ2OGM3MjJlN2JjNWU2Mzc1NDE1NjAgcHkzaworNTkxOTIgZTdmZWQ3YTU5NTc2OGRjZTI5M2U1ZDA2M2U2MGRmOGM4MjBiY2ExOCBweTNrCis1OTE5MyBiNGRhNzFhODhmYzAxNWVkNDI4YTdmZWVjZGExODM4ZjA5NTU5OWNjIHB5M2sKKzU5MTk1IGYyZTI0NzlhZmRmMGIzMzA4ZjI3NWJhNjhmZmU3Njg1NjFmNDM5MjYgbGVnYWN5LXRydW5rCis1OTE5OCA4ZjkyYjRlZTZmYzRjZjU5NTQ4OWJiYzViOGI5MmIyZDVkMWYyYTEwIHB5M2sKKzU5MTk5IGJhMzA1NjExOWIyODNjMGQzOTQzOGQyZTU5MzEwNjM0ZjE0YzM2NTUgbGVnYWN5LXRydW5rCis1OTIwMCA1ZDEwNDlkNGMzYzY1ODQ3MGRlMDM3MTNiZGMyZTZiYzlmZGQxM2RlIGxlZ2FjeS10cnVuaworNTkyMDEgYmZlMDM3ZTNmZDU1ZmYyZmI4N2RiNjA1ZmZmOWU2YTgzMTU0ZmJiMCBsZWdhY3ktdHJ1bmsKKzU5MjAyIDQ1Y2VkNmFiMDY2ZDViYzYxM2QxOGVmZTk3MDFjMGZlZjY0MGU0OGEgcHkzaworNTkyMDMgNjBlNmVhYTM3OGQ5ZjkxYmUyYjQ5OGQ2NjJhNTZkNWVjYWJkYTE5NyBsZWdhY3ktdHJ1bmsKKzU5MjA0IGQ0NGZmZmRhMmNkMDg3NTdkZWQ1OWI3M2FjNDI5N2IzODUxNzE2YTIgbGVnYWN5LXRydW5rCis1OTIwNSAxMmU3MjgwMzVlMmM2Y2YyYmZkMTMzMzg2NmZmNDlkNjMxYjBhNmEzIHB5M2sKKzU5MjA2IDcxZjQ3Zjg2NDY5MWU4NDRmMzZjNDgxYmUzYmU3NjFiMGFmN2NmM2EgbGVnYWN5LXRydW5rCis1OTIwOCA3ZThlODc5N2Y5ZDBhODUxOGI1NmIxMzI4OWIxNTM2YWZlZmQ4ZDFmIGxlZ2FjeS10cnVuaworNTkyMTAgOTE4YmJlZTNhNTQ1ODgwMGYyYmUxZWYxYmZiMzhmNjc2MDE1OWI4NSBweTNrCis1OTIxMSAxZjAyNGE5NWU5ZDkxNmEzOTQ1M2UzZDYzOWZlMDdlYzU1MDU5ODBlIHB5M2sKKzU5MjEyIDUzYjA4ZmQ4OGJmNDc1YmI0ZjY3OTk5MWUxMTRkYzA0YzIxMWMwYWIgcHkzaworNTkyMTMgNTMwZmI5ODUyYzUwNDNmZWMwYmQzNzNiYjNkMmUyNWVlMTM1ZGQ5MiBweTNrCis1OTIxNCA0YzM5MDI5ZTNmYjAzMGE2N2Y3NTVmN2M2MThmYzNjZTkwODgyMTRiIHB5M2sKKzU5MjE1IDQyOWNhZGJjNWIxMDkzY2Q4MDdlYzg4MTY1ZDU4YTdjMWNkOWMxNWIgcHkzaworNTkyMTYgNDFiN2Y4MDI2NWRiMTliMzk4NDg1NzU0M2ZiM2MxYTZjYmJhNjQ1OSBweTNrCis1OTIxNyAxNTY0OWFlZjJkYjU1ZTEyNzAwOTQxYTNjYTNmMDE1N2UzOWVlOTNhIHB5M2sKKzU5MjE4IGVjY2IxOTcwNDRkZDQ5NWQ3ZDYxMDRmMDc2NzU3ZjZkNjhiMjhlODggbGVnYWN5LXRydW5rCis1OTIxOSBjMDI0Yjg5NGQ5MjljZWQ0Y2I2ZWM1MzkwZjg4NGI4OTQzYTZhN2MzIGxlZ2FjeS10cnVuaworNTkyMjAgZTZjYTkyYjE4Y2Y0ZGE0MmVjNTkwN2RlYmQ0MzY1Y2NmZTFlNzViMSBweTNrCis1OTIyMSBmMjM4NWQ5ODI4MmFiYTBkOTEwZDAwOTliNzlhZWNhYjYxY2I1ZDA2IHB5M2sKKzU5MjIyIGM0YTZkM2VjNDJjMTI0OTI2NzFjNzg3NzlhOWYwNjRjMzBkNzU2ODIgcmVsZWFzZTI1LW1haW50Cis1OTIyMyA2ZWQ3N2ZkYThiOTE0ODBhYjliZjUxOWFjNjY5NDMwMTFiMjVkNGM2IGxlZ2FjeS10cnVuaworNTkyMjQgYjZiNWI2Y2RkMjAyYTkwZWQ1ZGUzMjAxYzc5ZWJhNmEwM2JhNDM1YSBsZWdhY3ktdHJ1bmsKKzU5MjI1IDllZjg1NzI0ZjRiMWY1MjM3YTMzMmE0ZTNlZTEzNTdkNDFjOGNhMjMgcmVsZWFzZTI1LW1haW50Cis1OTIyNiA0OWFjNTg3ZTIyZTkxZjAxN2ViMWQwMjMwMGE0YjM4ZTdmZGU1YWU4IHB5M2sKKzU5MjI3IDI5NWNmMDVmZGQyYzMyOGM3NTAxYzQzYzA2NTYxZTU5NGM3Njg4ZjkgcHkzaworNTkyMjggZDYzOTQ1OGM3ZTAyNDVjYjNjMDRjMTBiYTMwYzEzZGQzZTkxZGZjYiBsZWdhY3ktdHJ1bmsKKzU5MjI5IDBjYzU1MmFiNzZiZDM5YzNmMDVjMzMyODIwNDQ0Y2M1MDE5YTdiYTcgcHkzaworNTkyMzAgODk0ZmVlMjc5ZGJjZWYxNjFiYzExZTdlYTRmZWUxNjcyOTg0MjE3ZiBsZWdhY3ktdHJ1bmsKKzU5MjMxIDQ0MTdhYjViMzUxZTZjZDg0Y2RkMDNmYmU3ZTBiNWNiOTUyOTg3MDIgbGVnYWN5LXRydW5rCis1OTIzMiAwMDA0OGZlZGJhYTBlMjJlM2ZmNTZiOGI5YzIwYTQ3MjViOWZmYWM3IHB5M2sKKzU5MjMzIDNlZjZkYmM0MzUzMWExY2JmMjg0YTZlY2VkYmYwOGNlNGM3NGUzNjcgcHkzaworNTkyMzQgMjhjODAyODM3MjUyMzNkMWY0NTY0NmNlYzcxMTdjNDRjNzI1MzdhYiBweTNrCis1OTIzNiAzY2ViZGU0NzhjYzRkZmUzMzc3NWM5NDEzNDM2ZGUxNDVhOTRiOWEyIHB5M2sKKzU5MjM3IDUzMTEzMTA2ZmViYjU5NTVhNDExNWI5OWMzMDY2OTZmYmFkMTMyMGYgbGVnYWN5LXRydW5rCis1OTIzOCAzYWExMTBmNjgwYWIzZTBhMDgxNzI5ODRlMDg4YWQ1N2Y2ZGZhYWNkIGxlZ2FjeS10cnVuaworNTkyMzkgZjU2NDQwNWM4MTA0MWRmYjhlNmIwNTU4YjZmOGViYTM1NDc4ZDA5OCBweTNrCis1OTI0MCBiNDQwNTllMGYwNzU5ZWQxMmNhYWU1MzU5ZTFjM2FmODU2NDBjYmE3IGxlZ2FjeS10cnVuaworNTkyNDEgMmY0N2IyMjhiYTA2NTRhMGEwYzE1YjU4YTEwMmViNWViNjVhM2MwNCBsZWdhY3ktdHJ1bmsKKzU5MjQyIDc1NzdiOTllYzUzYjU5MmJjYmU5YmY0NTkxZDRiNzFiN2MyYzQ5YTkgbGVnYWN5LXRydW5rCis1OTI0MyBjNWYyYzk3ODkzMTM1ZmJmODczYTA2ZDkyOTRiZGI0NzQwMzhmYzIxIHB5M2sKKzU5MjQ0IGY0ZTdjNzI5YjNhMjRlYzJiODViZWZmY2I0ZTU3OGRlYjY2MzBjOTMgcmVsZWFzZTI1LW1haW50Cis1OTI0NSAxNjVlNTI3YzM5OWFlZTUyODY1MDRmMGUzMmRlZTJlMjI5YjYxMWY0IGxlZ2FjeS10cnVuaworNTkyNDYgNTFjMWVhZWI4Nzg2YTY5MmQ1MzY0NmJjM2NiYzk4NTdlZmFjN2Y4MiBweTNrCis1OTI0NyA2NjRiMGJjOTJiOTZmZGU5ZTc1ZTYwODc5YTBiMTdmOWRhZjlhNTYxIHB5M2sKKzU5MjQ4IGRjYzRiYzU4YWY1MmI3ZWM2ZjA1MDUxMmE0NmJjNDNlYTNlMzY1OTkgcHkzaworNTkyNDkgODBiNDJkYjJlYWM5MmJlODllZDE0MGI2OWU0MjNmNzQxYjEwZjZlYSBsZWdhY3ktdHJ1bmsKKzU5MjUwIDJiYWFiZWU0MDcwMmY4NDYwYzFiZTcxZWZhMjlkMDM1NDA4OWYzN2QgcHkzaworNTkyNTEgNGNiOTVmYzQxMjllMGUxMzU4NDFmMDcyZjQ0ZTU1MTBmNjBiZjM5NiBweTNrCis1OTI1MiAzNTFiN2JkNzg2ZTRhZWVkMzNkOTZmZmFhNGQ2MGRiZWVjZTNlOTYzIHB5M2sKKzU5MjUzIDJiMjFmMTU4YWI5ZmYzMTUwODYzOGU4MmFiYmMxODgzMTQ1YjMwMjggbGVnYWN5LXRydW5rCis1OTI1NCBjMjE4ZDFhYzkxNmU1ZmU0M2JkZDNkNWE1YWQ1OGUzNjIwZTJiMjQ3IGxlZ2FjeS10cnVuaworNTkyNTUgMTEwZmY2MTRlYzI4YWRkZWY2M2YxZmNiZjYwZGM2NThkNjBkMDUwOSBweTNrCis1OTI1NiA5NDRhZTM0NWU5ZmZiNDFhOWExOGFlZjIxOGFjOTIwNzYzNTBkZWQ5IGxlZ2FjeS10cnVuaworNTkyNTcgODZhNzM1YjQyYThmY2VkOWZiYmUwYzViYjVmNjM1ZGU3M2QxOTU5YiBweTNrCis1OTI1OCAyMTMyMWRjZjBhYjVkOWY3NmYwNjFjY2NmZTAwZWUzZjc4OWQ3ZDE4IGxlZ2FjeS10cnVuaworNTkyNTkgNmQ3ZmQ5NWVmMTRhZTk3ZDI2MzE3ODU1ZjFhMjk3ZWMzZjFhMWY1ZSBweTNrCis1OTI2MCBlNjM0NTExYjRhZjVkYThjZmU2ODdjMjIzZTg4ZmM1ZjJlMzQ5YzhmIGxlZ2FjeS10cnVuaworNTkyNjEgYjIxYjFjNGYwNDM5NWI5YjJhMWE1MGEwNTk1Y2U2MzYwY2JlMzU5YyByZWxlYXNlMjUtbWFpbnQKKzU5MjYyIDRmMWIyMGVkOThlNWZhNzU3ODA4MDBkNDY4Mzc5MDBjY2U4YzNiMTAgbGVnYWN5LXRydW5rCis1OTI2MyA2MjI0ZGNhYzgwN2Q4NzMwMGM5YjdjOThhNmFkZDc5NmEyMmEzZGU3IGxlZ2FjeS10cnVuaworNTkyNjQgYmZkZWE2NTM4OGMzMWE2NWJhYmJmM2RlODE5ZjFkMDQyOTU0Mzk3MSBsZWdhY3ktdHJ1bmsKKzU5MjY1IDE5OWRmZjg1MzBhZDlkYjk2YjNlMDA3ZjUwY2UwZDM4ZTc0YTc5MGMgbGVnYWN5LXRydW5rCis1OTI2NiA4MjMxNDFhZGIwODAxYWE0M2VlYWJmYzIzY2QxOTFiODc2YzFlYThjIGxlZ2FjeS10cnVuaworNTkyNjggMDg4OWRhZjZkMGQ5NGI1Zjk2N2FkNjk3MGUyYjlkNTE3YWFhNmE2YSBweTNrCis1OTI3MCBmMzI0NjMxNDYyYTI3YzZkMmE2ODRmM2JiNTcwOTE4NWZmNmI4ZjJhIHB5M2sKKzU5MjcxIDFhYzdiYWFlYmNlNzc1NDlhNmM1N2I0MjI1ZmM2ZTFmN2NkNzdlMWQgbGVnYWN5LXRydW5rCis1OTI3MiBhYmEzZDA5NDlhMWQ1NTJkZDdlZWZhMTlkZGM0YTY4ZGE3NjA2ZWUxIGxlZ2FjeS10cnVuaworNTkyNzMgZTdiY2FjODU2MjQ1MmM2OWE0ODIwYzJjNWUzODllNzNmMGFlMGNlNyBweTNrCis1OTI3NCAxZTI2NjAxNWNmNWJhZWNmZDQzMDc4MDRiMGE0ZGVjNjk2ZjUyNzdlIGxlZ2FjeS10cnVuaworNTkyNzUgZmYxNzY2ZWIyZmNlZWYzM2U1OWE2NDUzOTQ3MDliYmUwYTIxN2E5ZCBweTNrCis1OTI3NiAyN2ZkY2EzYWE3ZDQ2OGQwY2FkMTA5OGM5YzBiMjhmMWVmMmRlYmUwIHB5M2sKKzU5Mjc3IDQwZmNhYWRmYjE2NjNmZDlkZmJhZGE4ZjVjNTMyNWQwYmM5ZWI2ZmEgcHkzaworNTkyNzggNGUxZDY0OTEzNjdjNzU4ZDMwNmQyMjdiNmU3ZGZlMDc3Nzc2MWYzYSBweTNrCis1OTI3OSBjZWRiN2FkYzg3YzVmN2MzYTM3ZWFiZjEwZTI3NWNhOTRkM2U5MTg1IGxlZ2FjeS10cnVuaworNTkyODAgMTY5YTgzNjQ1MzY3MTcwOTlhZDQ1YjQxYzE1NWE2NTZjMTc1MTY2OCBweTNrCis1OTI4MSA1NzgxZTE5MjhiY2E2NTYzM2JkMmVjNWMzZWZhYzEzODY5M2VlMjA5IGxlZ2FjeS10cnVuaworNTkyODIgN2YwZTQ4NTM2YTI3YjM1YzAyOWFjYzkzZjlkNDdjM2Q3YThlNDY0OCBweTNrCis1OTI4MyBhMWMzYmQzODI3NzFjZTQ5YmFlOGZmZmMwMDA4NTkzZjQ2Y2Q3ZDhlIHB5M2sKKzU5Mjg0IDkxZDExNGQxYjU4NTEzNDgxYTgzNGNmYjI3YTI5YTJlNTMyMzkwMGMgcHkzaworNTkyODUgNDg2ZGM0ZGYzNzg5Njg3MTBiODA2OTg5NmI5NGUzNzlmZmYyM2FjNSBweTNrCis1OTI4NiAyMGFjNDc3N2MwY2ExMDNlOTJmNGUyOTc3ZWFiOGM1Mjg1MmI3ZWUzIHB5M2sKKzU5Mjg4IDgwM2VkZjliMWRkOTE0MzMyNmVjYzJlNmFmYWM3NWJjZjYzOGI0ZDYgbGVnYWN5LXRydW5rCis1OTI5MCBlYWQwZDQ3YjAxMmI1OTJiN2FiY2QxMTllMDIzNjE0ZjgzYTJjYWQzIGxlZ2FjeS10cnVuaworNTkyOTEgN2VhYjE3YmU4Y2I0OTc4MGI4ZDAzNjdlMDQ3MWJhNTk1MzYwNzQ0MyBsZWdhY3ktdHJ1bmsKKzU5MjkyIDY0NTgyMDgzY2I5YWZhNDNjMDc0NTA5MDAxM2E3YzdjYWJhNDJiMGUgbGVnYWN5LXRydW5rCis1OTI5MyBmZTZiZWRhZmI0NmE2NDYwZWIwMGNlZDA4YWEyYjgxNGQ5ZTc4NjIyIGxlZ2FjeS10cnVuaworNTkyOTQgMzBmNTQ5Nzc4MjhiMzM3NTBiMzViNmNjNjVkMzg2OWEwZWQ5NWEwMyBsZWdhY3ktdHJ1bmsKKzU5Mjk1IDk3MjEwZDg2M2QxMjM0YzZlNGI2M2Q3OTJkN2U5YzA3ODgzNTQzYjcgbGVnYWN5LXRydW5rCis1OTI5NiA0ZDE2ZWUzOTMwMWY5YzIxZTlkOTJjZGY2OWI4YTNiMjdhNjQ0ZGI5IHB5M2sKKzU5Mjk3IDk3MzI2ODVlZWUxNzJhYTc2NjU5ZWNiY2E2ZmYyZTk2NWQxODQ3ZGQgbGVnYWN5LXRydW5rCis1OTI5OCA4YWNkOGY1YzYwODE3NTJhMmM4YTU2MTk5MWVhMTZlOGQ5YTQyYjIwIHB5M2sKKzU5Mjk5IDdlODlmNWNmNmIyMTRmNGJiZjU3NzJkODY3MjBlYTcwZDhjOTYyODkgbGVnYWN5LXRydW5rCis1OTMwMCBhYTYwMTdhMmU4ZjkyNmZkMTE5NDJkNGQ3MDFjMjUzN2Q0NGNiMzg5IGxlZ2FjeS10cnVuaworNTkzMDIgYmU3YTg1YzM0YTRjNGY4NzM4NmU4YzNkZTgwNTJlMDAzN2EzNjhlMCBsZWdhY3ktdHJ1bmsKKzU5MzA0IGI2MzczNDkzMzZmZDlkMTIyN2FmMDczNTMwZjk1MDUzNmM3NzhlYTQgcHkzaworNTkzMDUgZWFkN2EwNTNmNWI0MzRmYjljMzZiOTYzMmMwMzFhNDU4M2JkMzdlMCBweTNrCis1OTMwNiA0NGQwYzcxZGMzYzNiMzg5ZGZlZGNmMzI4NzdmZTUwMWI3MGMwNzg0IGxlZ2FjeS10cnVuaworNTkzMDcgYWVlZmI4OTczODRmYjQwZGE5ZjBlZDZkM2Y1NjFlZmNiYmY4ZGUzMCBsZWdhY3ktdHJ1bmsKKzU5MzEwIDBiZmVjNjA5ODM3ZWM1MDFhYmM4MTY2NTg1NzY2MGJhYjE2YjQ1MDEgcmVsZWFzZTI1LW1haW50Cis1OTMxMSBlMDhiMTJjM2I5MTM2NDNiMGFkNzhjNjcyNDYwYzVlY2ViYTc4ZWI5IHB5M2sKKzU5MzEyIGQ3NTIxMGJiY2E5N2FmODc5ZTY0NjExMzg3NGUxZDY2NzY0N2QzMGMgbGVnYWN5LXRydW5rCis1OTMxMyAyYTQzNTA3Y2Q5NTMyZWIwNDFiZjU4NDE3MTBkYzRjOGI3YWIzMWNiIHB5M2sKKzU5MzE0IDgyNWNmZmQ2YzBjZGE3NDg2NTI0ODEyZDAzMjZiZDc0NDdjMDY0OTcgcHkzaworNTkzMTUgOGU3NGFmMTk3ZTZjMDMyNGQ5YTk1YWY4MzQ1ZGJiZDBjNzlkZmZmNSBweTNrCis1OTMxNiA4NDJiM2Q0NWJmZTRjM2NmN2IyNjI0MmJmYzIyZTgyNWNmM2IzYTI0IHB5M2sKKzU5MzE3IDA0NTA1Yzk4OGFiY2Y3YzNiZWRhMjZjNDg1NjQ3ZDliYTQ0ZTdiZWUgbGVnYWN5LXRydW5rCis1OTMxOCBlY2U2NWM2OWIxZDMxNGUwYTFiNDU2OTcxYTY5ODRlMTg5M2QyYmNmIGxlZ2FjeS10cnVuaworNTkzMTkgYzhiMzM5Y2ZlZjFmZTViNDYyZGJjZDk3ZDA5OGEzYWM4Nzc0MjAyNiBweTNrCis1OTMyMCAzMWEzY2UzOGI1NmMzNWQ5YTA0OGMyYTI4ZGE2YTY2M2YyZDIzYzViIGxlZ2FjeS10cnVuaworNTkzMjEgYzlmYzRiMWY5YmM2OTJmNWVkOTczYzAzMDQyYTgxNDZiNjNlYzFhZCBweTNrCis1OTMyMiAwY2U2MTIyMWM2M2Y4NGYyNzVhZGYyNTQ5YjllMTVmNWVmNTQ3ZmE1IGxlZ2FjeS10cnVuaworNTkzMjMgNjBlZjljNGU0MDEyNGRjMzMzYzljYWIwMmZiYjdkYTI4MjhiY2I1MiBweTNrCis1OTMyNCA3ZTUwNDJlZTk0MjQ0ZmRlZWRlYTJhM2FhNzhlYjIyYTk3Zjg4NjY0IGxlZ2FjeS10cnVuaworNTkzMjUgNTMzMjBkNTQ0YmM3YWQ5MmI5ZDI4YWJiOWM0MGQ2ZDJjNmQxYTU5YiBsZWdhY3ktdHJ1bmsKKzU5MzI2IGYwYjMzMTliNzI2NmI4ZjJjYWFlMjUxZWVlMWJhYjNjYjQxNjQ5ODIgbGVnYWN5LXRydW5rCis1OTMyNyAyZmZhNGY3OTk0YTNlOWM4NDVmYTdjMTI2NDQxZDA0ZWY2ZmVmZjZmIGxlZ2FjeS10cnVuaworNTkzMjkgMTZiYTAwMTY4YzZhZWRhNDZkZTgxOTVmZTEwOGM4ZjQ0MzUxZTE4OCBsZWdhY3ktdHJ1bmsKKzU5MzMwIDFlNzI2YWVhYjZhNTI5YWNjYzViNDhhYWMzNjEyYzc2NTI4Njk2ZDIgcHkzaworNTkzMzEgODhmODY0NDViZTc3M2U4NWEwMWJlZTAzZGE3NDMxM2I5NjgyOWIzOCBweTNrCis1OTMzMiA4Mjk5MWZmNzVjNWE2ZTRiN2ZmMWQ5N2Y2NTgyODY4NDcwNDI2M2M4IGxlZ2FjeS10cnVuaworNTkzMzMgMWEyYTZkZjBmYmUwMTcwYzgxYjNlM2YxMzcxOTNjNmIyNDdjODNhOSBweTNrCis1OTMzNCBmYjg0YmQ5NTAwYTQwZWE2YWRiNDk2MTA4YjRhNTkzMjNmNDEzZmE2IHB5M2sKKzU5MzM1IDU2NTAxMmQxMTIzZGYyZTJhN2NiYjllY2IwNmRkYjAzZDkxYzMyZGQgcHkzaworNTkzMzYgODFlMGMwZTJhOGMxMzg0NGMzNzk3MGRjYjliNWIxNTkxZGVjZWE3YSBweTNrCis1OTMzNyBhZjg2Yjg5Y2U3ODQ3MGE5YjlmYmRmMDViNzI2ZjNmMmIyNzFlYjBkIHB5M2sKKzU5MzM4IDlkMTUyNTMwOTEwYTY1MGQzY2FkNGFmMzA3NDk1YTAyZmRjMDFjMGYgcHkzaworNTkzNDAgMWE3ZGZiNjFiNGQ4ZTE2YjdlNDY1MjE1NWZjOTliOWMxZTRlNWEzMSBweTNrCis1OTM0MSBlZjUzOTliMzUzYzk1ZGE3MGU3ZTc3YjJmMmYzYjMyOGE5NWY0MTYwIHB5M2sKKzU5MzQyIDU2NDlmN2NlMzA2Mjg1NjFjZGZhNjc4Y2EzMTRhYmE1MDY3ZDEyMzUgcHkzaworNTkzNDMgMzM0MTYxZjc0YjhlNWZkZmVhMTAyNzFmZDAxZDNlMTE1NmM0ODE2MSBsZWdhY3ktdHJ1bmsKKzU5MzQ0IDYxMmQ4ZGVhN2Y2Y2UzMjM5MTIzNTg0ZDg3NWY1MzA1NTdhYzA3ZmMgcHkzaworNTkzNDUgZTRjMjI1MDVmMDExY2YwNjcwZjdlZTM0ODY4MGM1MTU1NGU2MjNlYiBweTNrCis1OTM0NiA2M2U2MWM3NzBhOTMyYzg0ODdjNWE3ODU4YzFkYWJhNTEwOTEyNDQ1IHB5M2sKKzU5MzQ3IGMyNzg3ODI4MWM4Zjc4MWI2OGMxMTgwNDU0ZmY2MzQ5NTk1M2MxMzAgbGVnYWN5LXRydW5rCis1OTM0OCA1ZDk5MTA4MGQ4OGU1ZmExYjE0NzQwOTdmNDhiMTQ3YmRhYjgyOTg0IGxlZ2FjeS10cnVuaworNTkzNDkgMjZhNDM3ODYzOTViNGQyYjIyY2U0MWIzOTcxZDU4MTllZDk0ZTMwOSBweTNrCis1OTM1MCAxN2I0MzkwMWJiNDE1ZmJhMjhhZWU5MDljY2U2OGQ2Nzk1Nzc1Y2QzIGxlZ2FjeS10cnVuaworNTkzNTEgMjc4NWUyMTYwZmE2YjI3MjQyMThjYTZmY2NjOTdjYzg5ZDRlMTdhMCByZWxlYXNlMjUtbWFpbnQKKzU5MzUyIDI1MGM0ZmQ0Y2E1NDJkMjQ4Yzc4MjA5MzRlZjIxYTMzZTBhMTgxNmUgbGVnYWN5LXRydW5rCis1OTM1MyA4NjcxNjEzNGVkODc2ZjNiOWY0MTIyODQ0MWQxMWY2NThkNDZiMWQ3IHB5M2sKKzU5MzU0IDEzNDllYTQ0MWU0MWJiY2EzZmY2YmVjY2JkZmJlNmNhNWYxNDBmNTAgbGVnYWN5LXRydW5rCis1OTM1NiA0MGZjODQwNTE3ZmMwMTJiYTE0NzFjNTUyZjBmY2QwZjYwOWQzMzM1IGxlZ2FjeS10cnVuaworNTkzNTcgZGFkOWVkMzM5YmMzNDU4ZDYwZDk1YzRjN2U1ZTUyZWJiZTI5NmZjZiBweTNrCis1OTM1OCA5MzQwNjk4YWU0MjEzOTA4NmUyMzdiZmI4MjgwNjQ3ZmQ1YjhhZWM0IGxlZ2FjeS10cnVuaworNTkzNTkgNzlhZmE0YzU1MjExZGZhYjU4YWRmNGUwMDRlZDQ5ZWQ3ZDRkNjA4OCBsZWdhY3ktdHJ1bmsKKzU5MzYwIDYyMDBhNDQ3ZGFhMTY2Nzc5NTAxNTBmNjdjMjgwMDI3ZTgxZjMzNTAgcHkzaworNTkzNjUgMzIwZjdlYzYzZjBiZGZkMjdlMmRkYjkxYzA2NWIyNmQ1NTQwOTg4ZCBweTNrCis1OTM2NiA1OTBhMTQ0NzYwMTlhM2MyYjYyYzAyNmQwMmU2Yzk5M2NjZmY5NzczIGxlZ2FjeS10cnVuaworNTkzNjcgZDMzZjhjYzcwN2NiZmUzYjkxZGUzZGM0ZTQ5ODA4OWEyN2VlMjgzZCBsZWdhY3ktdHJ1bmsKKzU5MzY4IDg2MGNlOTc1NWQxNWJkNzg1MTA3MTNkYjM0MjNlMWYyOGFkNDcyMWIgbGVnYWN5LXRydW5rCis1OTM2OSA1NWMwNTA0MjMwM2IzOWYwNTRjNDcyMTNmNTYxYjBiZjU5N2VjNGFhIGxlZ2FjeS10cnVuaworNTkzNzAgYTFiYzY1OTU0YTljYmMxZTE3ZWNhODViNzBiYmU3MDc3OGU5OGFhNyBsZWdhY3ktdHJ1bmsKKzU5MzcxIDA1ZGE0OWViMTJjMTRmMDM0OGE1ZWMzYzMzM2E5MzE0MTgwNjJkY2MgcHkzaworNTkzNzIgMWY3MjJiMDg1NDAyN2M1ZWMyZDcwYzI0ODljY2I0YzQwYjQ2OWE2MSByZWxlYXNlMjUtbWFpbnQKKzU5Mzc0IDUzODQ3NmI2ZDdlMDUyYjUwYTgyZmRiMWE4MjRiZjA0MWUzZTg2YjUgbGVnYWN5LXRydW5rCis1OTM3NSAxN2MxNzgwN2E2MTE3OGFkNjg4YWU4MWI0MTE1NzZmMjk0ODVmNWJjIGxlZ2FjeS10cnVuaworNTkzNzYgZDY0YmViOGZhZDA2NjE3N2Y5MWVlOTFlN2ZmNzZhYzBjOTM3YjI4NyBweTNrCis1OTM3NyA4NWU0YmZmMzdiYmRjYjZkNTZmMDJlZGY4NTMyM2IwNWExOTI2YzRhIGxlZ2FjeS10cnVuaworNTkzNzggNDRjMDkwYzc0MjAyNjAyM2NhMGYwYjczMTUyNmIzYzU3NWFkMWU3YyBsZWdhY3ktdHJ1bmsKKzU5Mzc5IDFkOThmYzI2NWY5OTJlNTY2Y2NiYmYwMmQzZmJmYTI4YTUzNzQ4MGUgcHkzaworNTkzODAgOWFkNGFlZGYzNDliZTkyYTI4NGQzMzdmZDNkZDI4YmEwYWUxMTAxNCBsZWdhY3ktdHJ1bmsKKzU5MzgyIDZlZjhiNWI4ZTVkNmZmZThiMDRmNjc2OGU1YmYzZDAxZjBhNjI4OTMgcHkzaworNTkzODMgYWZkMjk5NmYyMDIxMjQ3NDk2MjA4ODliNjIzOThmZmI2ZjQ0ZTE3NiBsZWdhY3ktdHJ1bmsKKzU5Mzg2IGE1M2VmNzc4NTkwZWJiM2QwZDY2ZTAyZjIwZmY5MTFmZjIyZmYwM2EgbGVnYWN5LXRydW5rCis1OTM4NyBiY2MxNzNjM2FkNzA5MmIzYjY3MGUyMGM5MWEzZmJjMDliZjExZWExIGxlZ2FjeS10cnVuaworNTkzODggZjExZGQ0ZDMxNWRkMGRhNjdiNzBkYmEwNGZhNWExMWJkYWNmOWFiYiBweTNrCis1OTM4OSA3NGJkZDUwZjA3ZTVkYzNjNDhhNmY0MjJjOTllNmZiOWJkMjEzOTU3IGxlZ2FjeS10cnVuaworNTkzOTAgNzFhZDVlMmJlZGRhMjdkMDljNTE5YTE5ZDYzNzYxZjYxYjBkYzAzNCBweTNrCis1OTM5MiA5MzllODEyY2MwOWNlN2IwMDliNDNhYjkyMzBjZjA3MTFiYzU5NTE3IHB5M2sKKzU5MzkzIDUwYjAzYWZhMGJiZTc5MzM3YWZkMTI4ZTcwMTMyMjJhNmE3ZGE5OWUgcHkzaworNTkzOTQgYzIzMjgzNmNlNWM5NDM2NDU0MDA1MThmM2FmYmRkOThjZTMwZGMxZSBweTNrCis1OTM5NSBjZTI4MGEwNGY1NWUwZmU4N2I1ZTljYTFlYzYwZDZhMTFlYTY1ZDViIHB5M2sKKzU5Mzk1IDY1ZTgyMTQwZTI4MWJmMjZmMmUyMmVkYTA1YTdmOTk1NmM0MjBmOGIgcHkzaworNTkzOTkgMmZjZTk4OWRhMDIxM2NhZDQ4NjQ1MTNjMDM0ZWRmNTA3Mjg3NzhhNyBsZWdhY3ktdHJ1bmsKKzU5NDAwIDMzNTZhZDYyYzJhMzY5OTcxZWViNzVmN2YyYjFlNjg1OGU1NDIyY2UgbGVnYWN5LXRydW5rCis1OTQwMSA1ODJkMmE4Mzg2M2NjNDM5MDM1MGMxNjNiOTEyODNlNDJmMmYwZjA0IHB5M2sKKzU5NDAyIDgwODg0NjQzYTZmOWU3ZDEzNmM5NjI3ZDEyNzE0NDdlMDc4M2NiOWUgbGVnYWN5LXRydW5rCis1OTQwMyBjNmZiMzkzYjZjODE1OGIyMDU5ZmM1MGIyMTg2ODlmZDI0NGVjNGU2IHB5M2sKKzU5NDA1IDcwY2M3Zjc0MGQzNDcyNjBhMGJlNjI5MDdiNGI2NjgwMWNmYTRkYmMgcHkzaworNTk0MDYgMjJlM2Y1YmQxNDA3ODYzMzhhZjQ2ZTRiMmUxY2JmYThlZmNmOWI2OCBsZWdhY3ktdHJ1bmsKKzU5NDA3IDRkZTU5NDc0MGE4OGY5OTZiNzAxMDYzYzI2OWE5N2NhNmY5ZTYxYjIgbGVnYWN5LXRydW5rCis1OTQxMCBhNzFhNzFjYWI2MDgyNWFjMTcyNmU1MzBjYzllZTYyY2FhNTQ0NDVmIGxlZ2FjeS10cnVuaworNTk0MTEgMGJiMTA4YTNjMGM5N2NlOGI0Y2NlNTkzN2E1YWU5YmVhZmE3MzdiYiBsZWdhY3ktdHJ1bmsKKzU5NDEzIDc3Y2I4ZmYzNDkxMmFjZDA3ZDNiMTllZjUxYTRjMzkwMWMyOGI2MTEgbGVnYWN5LXRydW5rCis1OTQxNCBhOTg3N2I3ZWU4NWRlYzhjOGNkNGU5N2I5YmU2N2Y2N2VmYjgyOWQ4IGxlZ2FjeS10cnVuaworNTk0MTUgNjI0ZjUxMWNlOWYyNDhkMzhhZDA4YTAyNzNjOWQyNGUwZDQ0YzgwMyBsZWdhY3ktdHJ1bmsKKzU5NDE2IDAzOTQ1YTFkNGZiM2NmNTlmODIxMmZmZDdiNDYxNTAyNDYyNjdkMzggbGVnYWN5LXRydW5rCis1OTQxNyA5YTk3NmE2ZWU5MzY2OTFlZjlhNDNlZjBjNGFhZjkzODViYTcxMjNlIGxlZ2FjeS10cnVuaworNTk0MTggMTE4ZTZkNjhiNDRhMTI4OGFiNzZlODQ5ODMxNDMxMTdkNDFmNDcyOCBsZWdhY3ktdHJ1bmsKKzU5NDE5IGYyZjczOGE0MzdmODc5YzY0M2RkNDY0NjRkNWI5YTRjNzhhY2UzYTAgbGVnYWN5LXRydW5rCis1OTQyMCBhZDhiODA0NjA2NDRmMWY4ZmE2MzU0ODU3YzIzNjQzZjkwNDZjOTJhIGxlZ2FjeS10cnVuaworNTk0MjEgYWFkNjVhMjQyNGUzOGQ4YTcyYTdjMGEyNjU2ZGYwMzlkMTA0MDM4OCBweTNrCis1OTQyMiA0ZWU3NDMxMGVjZjk4ODc3NGIzNGFiYTVkZmI4MmE1OGQwMmI1MGU5IHB5M2sKKzU5NDIzIDE3NDQ4ZTVlOTY3MWRhNGI5NjE5NjMwOGY1MTNmNjAyMmQ4NThkMDEgcHkzaworNTk0MjQgNjk5ZmNkZjViYmQ3NGIwMTA4NDRmZDQxYTE3Y2FhNmVhOWNmY2I3MyBweTNrCis1OTQyNSA2YjUxN2FjMTBlOGVmOGUyMzdhZDFiNmJjYWViYjE2M2M0NTQ4N2I3IHB5M2sKKzU5NDI2IDkxY2NjZTc0MWQxMTQxZDk2ZDNhM2YzMDNjMjU0MTE2NDVkZDcwOWIgcHkzaworNTk0MjcgNmQ1ZjA4NjAxZjRhOTViNDIxNWZjNWM5YWY0N2JmMWRmYWMyMTQyYSBsZWdhY3ktdHJ1bmsKKzU5NDI4IDUwYTUwZTc1MjE0MjNhMjcxNTM4MzkzNDY1MzI5MGE1YTg3MGNhZjAgcHkzaworNTk0MjkgYTVjNDczOTEyMWUxNGZkM2RhMTc0OWE1YjBkZWM2MmU5NGVmYzk4YiBweTNrCis1OTQzMCA2MWRmNWY1Mzc5NjllNmFhZWNiNDgyZDM2NTQyMDFhZjk0NmYyNTg5IHB5M2sKKzU5NDMxIGY2N2VjNGViNDc4YTg5MDhjOTAyMzFhYTIwZjA1OGU2ZTljMGVkY2MgcHkzaworNTk0MzIgNDRhMjRiNTliMTZkMDIxMDY4MmRkYjAyYWFmYmFkYjFjNWVjNTY0YyBweTNrCis1OTQzMyBiZTNiNjYwMWY5ODlhNjhlNWEwMTljZDgzODY1NDcwZmFkOWQxYmU0IHB5M2sKKzU5NDM0IDM2OWE0ZTA2ZmQzMDExNjJiODdmYmY4MDg5MzM1MmJkZmMwNGY4ZWIgcHkzaworNTk0MzUgNmNlNmUyZjNkY2IyZDY4N2Y5NWFkNDUxNjJjMTdkMzNkMTY0MDM0MiBsZWdhY3ktdHJ1bmsKKzU5NDM2IDVhYzg3NGQwOTU1NjM2ZDUzOWNkY2QxOTk2MmEwZmM4ZGIyZjgyZDIgbGVnYWN5LXRydW5rCis1OTQzNyA2NmRiZTEyZGRmMzFkNzZjNDhhNjAzYmQ5MGVmMDM0MzFmZWMyNjE2IGxlZ2FjeS10cnVuaworNTk0MzggNDBiZmQ2ZjFjYzE2OTAzMzIyYTE2YzJiNzBkMmQwOTIwZWY5NTExOCBweTNrCis1OTQ0MSBkNzdmZDFiOGMwYzU0NzMyMDkzZjE0NzEyM2EwYzQ4ZmUzYzI1YTMyIHB5M2sKKzU5NDQyIDVhYmZkMDdlOTdkNDg5ZjI1YzVkZTIwMmVmNmYzNGVjMDQ0YmIyYmMgbGVnYWN5LXRydW5rCis1OTQ0MyBhYWMzM2VlMWE4ZmM3MzI3N2RlMDEyZmRkMWI1YjczMWFiMDc2OGQ0IHB5M2sKKzU5NDQ0IDg4OWE2NDIxZjEzNWI1OWVjMjQyZDU0NTA3MmEwZThmOWI3MTA4Y2IgbGVnYWN5LXRydW5rCis1OTQ0NSA5Y2YyYmY5NDYxYzQxMGQ4NThlYWNjMWQ2YWViYTllY2Y1NDI4NDNiIGxlZ2FjeS10cnVuaworNTk0NDYgMzNmZjQwZTZlMTM3NTg5NTZlMWZlNDZmYTNlZWZjNGRjYzJjNjhiNSBweTNrCis1OTQ0NyA1OWU2NGZhM2FkMWQ5Y2EyZTc3NTk5OTMwYmU3NWYzYmIyOTMxZjQyIGxlZ2FjeS10cnVuaworNTk0NDggMjAyOGZlYjk0YjU3NTUyMDQ5YWU1ODdjNDc0NTc3YzdlMWFjYTIwZiBsZWdhY3ktdHJ1bmsKKzU5NDQ5IDQ0NGRhMDhmNzhhNGRhNzlmNmM3MTdiMTdlYmEyMDdlZjYwZDE1YWUgcHkzaworNTk0NTAgNjBhNzQwZjVhNTdhM2ExN2U5ZGE2MmQ0NzY2ZGZiZWI4MDM0YjM0YyBweTNrCis1OTQ1MSBhMzg2ZWYyOGIwMDg3Mjg4MzZhYTk0MzRkOGU0ZGVmYjc5MmQ5Zjk1IHB5M2sKKzU5NDUyIDEyY2Y5ZmZmOWQwYWVkMzZkNmEyYzZmZTdiNDQ2N2Y4OTg3YWU1YjUgcHkzaworNTk0NTMgNmIzNWRmNDBiY2FjYWZkNmQyZDVjYWViZDkzNjkwZjA2MDY1MjgxYiBweTNrCis1OTQ1NCA3NmNlNTk3YzcyZWUwZTEwNTVlNWM3OTA3YThjZjU4NDJkZTcxODlhIHB5M2sKKzU5NDU1IDQ3ODk1Y2E2ZjBjYmE4ZmIxYThmNzU5MDI3MTVlOGE1MDNlMTA3ZjUgbGVnYWN5LXRydW5rCis1OTQ1NiAxYjBjZTlmZmE5NzI2ZDUzOTRjNDhiOWI1OGQ5MTMzYjM1ZmMwNTMyIHB5M2sKKzU5NDU3IDY4MmQ5Nzg4YTAzOGU3MmZiYWJiMTAwMzQ2NzNjMWM2ZmQwMDQyMzMgcHkzaworNTk0NTggNjZjZTMzMTRjMTk4MjBhNzFhYjk0YTg2YjI5MGQ5OGYyNzI3ZWM4ZCBweTNrCis1OTQ1OSAyNDc0OWEzODA0MDkzNDAxZGU4MDMxNDA3Zjc4MGNlNjZhYjBkY2NkIGxlZ2FjeS10cnVuaworNTk0NjAgZWI2NWUxMDVlNGI4Y2RhZGEyMDBhOTUyYmRmYTk0YTQ4MjU4YjU3YiBsZWdhY3ktdHJ1bmsKKzU5NDYxIGE0YWFiNzJjMmNjMGJjNDk0MzE5ZDIxMTA1ZTU3YTVkZTg0NzhlZjMgcmVsZWFzZTI1LW1haW50Cis1OTQ2MiAyYzZmZTJkY2M4OGVhMWQ4MWJjNWMyMTg5NjQzNWQ2ZjljNTEyZTNmIHB5M2sKKzU5NDYzIGU2NWU5YzY0OWNmZGFmYjM4YzM0YTg4NDNhMTlhODMyOWYyYmM0YWUgbGVnYWN5LXRydW5rCis1OTQ2NCBmOTA5ODcyOTE3Yjk1ZDliM2NkZDlmZmFlODU0NTA5NTNjYmI1NzUyIGxlZ2FjeS10cnVuaworNTk0NjUgN2FlNjA0YjM1MzNiNTM2MzU0ZGEzMWEzYzNlMzdmOGI1MDk2N2I3ZSBweTNrCis1OTQ2NiBiNTIzOWNjZjk0YjViYTczOThhN2M3MTdjNDYxNDgzYmQ4MGMwMmQwIHB5M2sKKzU5NDY3IDcyN2FmMTYxY2E0NjRhYmQyNzEzMDQ0YWNkZjVmNTEzNGE2ODAzYTAgbGVnYWN5LXRydW5rCis1OTQ2OCAyZTE5YzNlNTExYmY1OTM5ZjYzZjQ2ZWI2NDNkZTBlNzEyN2IwZDE2IGxlZ2FjeS10cnVuaworNTk0NjkgM2UwODY3YTA3NzY1N2U0MTQ4NzU1MDQ0ZTFiZDgzNjI0OGQxMWEyMSBweTNrCis1OTQ3MCBlYjIyNjBkY2IzNjVmZGU2NTExZjQxYWZjNGQ4MjRhNGYyOTI4OWViIHB5M2sKKzU5NDcxIGE2ZDEwNTlmMjJlMmNkMTQwNGJhMGEwMmNmMjI4ZDUyNDdiNDRkOWEgbGVnYWN5LXRydW5rCis1OTQ3MiA0ZWJiYTliMjY4OGY0MDcyYzE3ZjU5ZWI0YTk0ZDQwMzBiYjU1OGUzIHB5M2sKKzU5NDczIDY2ZDQ3OTZlZTkyY2JmYzQ2OGRmOGRmNzZjM2YyMWM3M2Q4OWUxZjggcHkzaworNTk0NzQgOWEwOWQ0NDJiY2UyN2IyZDczNzZmZDM5YmIxMWJiMGM4ZTFmNzk3NCBweTNrCis1OTQ3NSA5OTI5NzgyZjVjYjQ4ZDA3YjQ0NTEwNmMyMzVkYjIyNjI4MWJjZTgxIGxlZ2FjeS10cnVuaworNTk0NzYgMDE3MDcxNGViMDQ0MjE1OGMzMTBhMjRmZGI0ODdmZGFhMTE3MWUyOSBweTNrCis1OTQ3NyBlMTc2YjRhZWE5YzUwZjVhMTlkMmFjNWI0M2Q0ODZiNmNjMTRmZTVlIHB5M2sKKzU5NDc4IGMyZTcyZmViNTNiMzZlYmMxNTBhOTY4MWI0MThlOTU1NzA4OTJiMzAgbGVnYWN5LXRydW5rCis1OTQ3OSA1NDEwNTJiMDQ0ZjA5ZTMxMDk2ZGRkOTdlNjI5Y2JlYjhiN2M0MDVmIHB5M2sKKzU5NDgwIDdhOGM4YzU2ODVmY2NiMTRmZmNiNmY2ZjdjYTYwYjg5N2Q5MzlmNmEgbGVnYWN5LXRydW5rCis1OTQ4MSA2YWU5NGEyYmE1ZGZhZmEwMWEwZTQzOWQxNzU5NTFkYTlhYjdkNjQwIHJlbGVhc2UyNS1tYWludAorNTk0ODIgMjI2YTA2MmFiNDNlZjc3Nzk3Nzk0YmFjODVkMWUxODVmNTYyYmU1ZiBsZWdhY3ktdHJ1bmsKKzU5NDgzIGQ4ZTA2NTQzY2RkODBlMzQ1ZWRlMTZjNmUyYTI3ZjA0OWU3ZDVhYzUgcmVsZWFzZTI1LW1haW50Cis1OTQ4NCA1ODkyNjJkODFlMjk4ZmVlYzcwODYzMmZkYzhiNzg5YzE2NWI2MjdmIGxlZ2FjeS10cnVuaworNTk0ODUgZjA0YzAzNjVjOWFhZmJiMzllOGI2MWRhYzZjZDYyZWE1MTQwMThkZSBsZWdhY3ktdHJ1bmsKKzU5NDg2IDMwOTZiMDEyNzMzZTE5YTRiOWJjYTM3MzA1MDE5ODIwNmYwMGY5YTYgbGVnYWN5LXRydW5rCis1OTQ4NyA2NmVkNmUwM2ViYmRhOWVmYTMyMTI5YWQ3NzYyMzkxZDEyZmRlZGZmIGxlZ2FjeS10cnVuaworNTk0ODggNzE2MjM4NzgwNTdiMmU0ZmRiZGJhMmFiNGY1ODgwMTA4NzgwYzk4NiBweTNrCis1OTQ4OSA0NGM0MThiMmJmN2Y2NjA5ZWY3MjEwYjAzMzJkYzgwNGZmMGY1NWM0IGxlZ2FjeS10cnVuaworNTk0OTAgN2E2MmM2ZDkxMDdkZjk4MmRmMWY3NWJkYTM1NTVlYzMyMzQzZGU5MSBsZWdhY3ktdHJ1bmsKKzU5NDkxIDI5NGIxYTc5ZjIwMTlhYmMwMmQ2OGIxOTViMmU5YjY5MGZmOWJiMzggbGVnYWN5LXRydW5rCis1OTQ5MiA2MzVhMjMyODAxMTI2M2QyOTU3Y2FhZmU2M2Q0YjljNTYyZDIyMmFmIGxlZ2FjeS10cnVuaworNTk0OTMgYTMyN2YzZTI2MTU2MTFiYzU0ODM2ODNhMGUwOWIzYTQxMDJmYmRlNiBsZWdhY3ktdHJ1bmsKKzU5NDk0IDNjOGI3MDJlNWYyMDcwZWVjZjEwNDcxZjRjZjUwNWE3OTcyMTYzNWUgcmVsZWFzZTI1LW1haW50Cis1OTQ5OSA5NjFlODljYzc5MTFjMGE2YzAzOTcwOGMzMTU1NTY3MzE0MDE0ZTgxIHB5M2sKKzU5NTAwIDkwNWE5Njk5N2I3YzgwZWIyZGEzMzM3YmFjOTViODc4ZGNkOWJjN2EgbGVnYWN5LXRydW5rCis1OTUwMSBkY2E5NTk1NjczMGZjM2Y2MTk3MGE2ZWZhM2M3YjlkMDZiMWVhZDU4IGxlZ2FjeS10cnVuaworNTk1MDIgN2RhOTQ3NTdlYzViZDNmNzhmODZmYjY5ZmNkMWUxOGU4ZjE5NWMwOCBweTNrCis1OTUwMyAyMGVkMWQ0MTU0MDllYWMwYTkxY2U3MGU3MGQyYjQ4NjkyMGNhNThiIGxlZ2FjeS10cnVuaworNTk1MDQgMWJiOWIwN2EwMWRkYTFlYjkzY2U0ODQ2MjhjOTNlMWY2YWVkN2JkYSBsZWdhY3ktdHJ1bmsKKzU5NTA1IDQ1Yzc4ZTUwY2JkNWUwZTVlN2RhZGVlNzc4MjJiNGJiYTY2ZDNkY2QgbGVnYWN5LXRydW5rCis1OTUwNiAxOWY4OTRhZTg2NGFmMWRhMmEzYzI0ZTM0Yjg3YzExMjYyNWY5Yzc1IHB5M2sKKzU5NTA3IDE0YzVkMjc1ZGRmMTQwM2E2ZTJkZWM3MDZlNWM1YzNlZTZlZmUzZjggbGVnYWN5LXRydW5rCis1OTUxMCAxMTU3MDY4NDYyYjUzOGVjOGJhMDY0YjM5N2UyNzcyNDNmYzVmMGNmIGxlZ2FjeS10cnVuaworNTk1MTEgMDZkMTIyYjRiZmZkN2FlZDhiYWU0NmVjZTU3OGE1OGI3NDlkNDAzNyBsZWdhY3ktdHJ1bmsKKzU5NTEzIDJjZTUwYTI2MGY1M2Q0MjNiOTYzMWJlNGYxNmM0YjI4NjBiOTBjNTIgbGVnYWN5LXRydW5rCis1OTUxNyBlNzBhY2JmMjZjZGE4ODBlMzBjOGZhMjE4OGQ2YjY2YjBjYmM4OTNjIHB5M2sKKzU5NTE4IDMwMzcyN2M1OGI1MWUwMTRhNjM2OWRmNzE1ZWIwMTI2M2U0YzI0MTggcHkzaworNTk1MTkgMDQzY2E5YjY2Zjc5NzIyMDA5MzU5ZGM3OWNlOWMyNWU0Njg5ZjQxMSBsZWdhY3ktdHJ1bmsKKzU5NTIwIDYxOGNlMjgxYTU1Zjg0NTIxZjZiMmE0ZDk1ZDllOWU5YzNmMmI4NjQgbGVnYWN5LXRydW5rCis1OTUyMSA0YzBlYjU4NzQ4MmY2MGNhMjExZGNkODJjNmUyNDA5MDQ0YmRjMjg3IHJlbGVhc2UyNS1tYWludAorNTk1MjIgYWFkOTBlYmJmYjUwNGJkNTgzNjNlNzZiODdiOTU2ODg4YWViMTkwZCBsZWdhY3ktdHJ1bmsKKzU5NTIzIGE2NDlhYTUyYjA3OTkwNTAwMTNhYjIwNDFmYzZiMzQwZDk5NmM5OWMgcHkzaworNTk1MjQgZWUxMTc0NjIxMmIyYmQyNWU1ZmI4ODViMTZmNjA2ZDdiMWFkMDBkZCBsZWdhY3ktdHJ1bmsKKzU5NTI1IDVhNTBhNWI1NzBiMDJlNmYzNjJiYjZlMjM5ZDA2NGZkN2YwODFkNDMgbGVnYWN5LXRydW5rCis1OTUyNyA5YjQwYWQwNTdkNTllMjA3Y2FmNTE3YjIwMjljMTAwODcyOTVjZGZjIGxlZ2FjeS10cnVuaworNTk1MjggMjExYWJjZmI0OTI4YjJjMTcxZDVlMjhiYzkwMTk1ZWEyNjI3MzExMyBsZWdhY3ktdHJ1bmsKKzU5NTI5IGE0NjM3NDJmYTQxMWI4OThiMjJlOGQ5ZDRjNzAwODM5OGM5NGVhYjggbGVnYWN5LXRydW5rCis1OTUzMCA3NzkxYTVlYTE1YzM4NGVlMmU1MzcxZjY2MmFmMjU0MDZmMzllMjJmIGxlZ2FjeS10cnVuaworNTk1MzIgZTk3ZjEwNWQxYzgzNDBmY2FiYWZiMmIxMWFlY2VkMzVmNWRhZjI0OCBsZWdhY3ktdHJ1bmsKKzU5NTMzIGExNDQ4OWY2ZGI2ZjkyYjg3NjNmNzkwMTY3YjdjMGMzODIxN2FjNGEgbGVnYWN5LXRydW5rCis1OTUzNiBhMmQwYzZhODg5MDk4MDEwOTU2NDEyYTE2MjZkNWI2OGMxZDE3NTFiIGxlZ2FjeS10cnVuaworNTk1MzcgMGE1NDQ1MjhkYzlmNWQ3Nzc2NWY2Y2MxMzQwNjdjMDI3ODlmMGRlOCBsZWdhY3ktdHJ1bmsKKzU5NTM5IDA1YzUwMWE5NTMwODc1MTFmMTViYWEwZTFkOWNlZjdjOGNlYzE0NTIgbGVnYWN5LXRydW5rCis1OTU0MCAwOWY3NDMxNmQ1ZmI1NTgwYTlmNmI3ODBhNWNkMjdjY2UxZDA4MDYzIGxlZ2FjeS10cnVuaworNTk1NDMgNzVjNmJmZDNiMWYzMmVjMjE3Y2E3MzFlNWM1NTRmOWZmMzEwZmFiYSBweTNrCis1OTU0NCA0YTZjMDZhNzdkZWIxNmEwNzhjNDM2MmVmYzRlZDY3OTk0YjJlYmY5IGxlZ2FjeS10cnVuaworNTk1NDUgYzBmMmNmNDM4OWM1MDI4ODgwMWI3ZDhjMTVmMmNlYjRmMjM2MjA1YiBsZWdhY3ktdHJ1bmsKKzU5NTQ2IDExYjZmNWI2OGFkMWE3MjllMDdjOWEwODM5ZGI3NzlmNjZkZGQwMzQgbGVnYWN5LXRydW5rCis1OTU0NyA1NmYzNDJjODRlODcwNzVmZjZjOTZhNjc3NTZhOWVmODdjMzIxZDY5IGxlZ2FjeS10cnVuaworNTk1NDggMDdhYTE5MTcwYTY3M2RhNmIzZThjNGM2NmJmZDg2OGIyZjkwYzBlNCBsZWdhY3ktdHJ1bmsKKzU5NTQ5IGI1YjMwODBiMzYwZmRlYWU0M2FlYTgwN2RjOTBhNjNjNWIyN2QyNTQgbGVnYWN5LXRydW5rCis1OTU1MCBlYWIwMDJiOGUxN2U4ZTJlODQ4NzY5MWQ3YmY4MDkxNDA3MzZlMGJkIHJlbGVhc2UyNS1tYWludAorNTk1NTEgYjU5YzMyOGJmYTYyM2UwZjk2NjRhOTYyN2I5NTA2NWE5MmFmMzE3MyBsZWdhY3ktdHJ1bmsKKzU5NTUyIGE5OTEyOGY2Yzk3ZGYzOTMwZmMzODk5NmIwN2EyOTcwOWQwZDNhNWIgcmVsZWFzZTI1LW1haW50Cis1OTU1MyA3YWMxMTdiM2JlMzdlYjdhZTMyOTcwNzg3ZTYzMWIyMmFiYTA0OTk0IGxlZ2FjeS10cnVuaworNTk1NTQgMTVmYmU3Yzc5Mjg0OTczOTE3NzExNjMxNTBmZDBlODlkYjYzMTk2YiBsZWdhY3ktdHJ1bmsKKzU5NTU1IDk1ODU4MTA5ODE1MWFiNzYxYjYxZmZjOTkxN2U2MjYxMDk1MDgyODMgcmVsZWFzZTI1LW1haW50Cis1OTU1NiBkYzg4NGI2MDUwZDQ1ZmI1MzA2YjUxN2E0YzM5MTUzZDA4MDk4MDcwIHJlbGVhc2UyNS1tYWludAorNTk1NTcgZjhkMGZhZmZjZTg4NzZmNTU0YmY2ZTE4NWNkMjllNzAzYmRhNjFmZCBsZWdhY3ktdHJ1bmsKKzU5NTU4IDFkNjlhYWJmNmY3ZjIyNzQ2YjRjNzIwM2FmNWM5YjAxOWQyMmUzMmUgbGVnYWN5LXRydW5rCis1OTU1OSBkNTFiMzljMjE2MGEzYjg1NWY0ZjI2NWM0MjBjNDY0MGQ3ZjU3NGRhIGxlZ2FjeS10cnVuaworNTk1NjAgYTI4YWM5YjY3YmVkYjU2YWExZTI0NzM4MThjZmMxMjk4ZmUxZTFkOCBsZWdhY3ktdHJ1bmsKKzU5NTYxIDYxNmZlYzBlYjUxNGI2NTEwNjBjNDA5YTM5MjhkNGE5YjA1Zjk2YjIgbGVnYWN5LXRydW5rCis1OTU2MiBlMmVmZmVjOWQ1YWQ3Y2YwOTZmZGM0MGM2YmQzNWFhNWNiMWVmZTNmIGxlZ2FjeS10cnVuaworNTk1NjMgNGRjMDE0MDJkNzhhZmUyYzliNGE0YmQ4MDA0ZWIwOGUyNjQ3MzM1ZCBweTNrCis1OTU2NCAyNjM4NGI4MTgwYzdhNTVjZDZhMmVkNDQxMDdjZjRlMzM5MDI1ZWM2IGxlZ2FjeS10cnVuaworNTk1NjUgODZhMjY3OWRjYTQ2NGEyODRmZDAyYjgxNjQ2ZjI2OTIwNDlhMmNlOCBweTNrCis1OTU2OCBmN2JjNzkxMTJiY2ZhODliYmVhYjAzNWQ4YmNlYTQzZTgyZmU4OWQ5IGxlZ2FjeS10cnVuaworNTk1NzIgNjMxNGI5ZjhhN2UwM2YwYzU3ZTk5NTQzOGE0OWQ4OTFjZmFkMGQzMiByZWxlYXNlMjUtbWFpbnQKKzU5NTczIGIxMzQ3YzY4ZDQ1Njg1YWUyYzgzZjUyYzIwOTI4OTQ2NjgxZWYzOTQgbGVnYWN5LXRydW5rCis1OTU3NCBiODliMDMzNDM3MmJhODNhYmY0ZDJmYzI0NGFjMTZiZTNkZjk3MjgwIGxlZ2FjeS10cnVuaworNTk1NzUgNTFjMTc1Yzg2ZjM2YmIzYmVkMTMzYTFiMGExNDhmM2UyODE5ZTVjZSBsZWdhY3ktdHJ1bmsKKzU5NTc2IDE3NGUwYmNiMmMzYzEzMmEyNmM5ZjA0ZDNjZDYwZmQ5ZjdkZjFjZmEgbGVnYWN5LXRydW5rCis1OTU3NyAwYWQxMmM3OWFmMTg1ZGY4MzhmMjE2Zjc3NmU3NDQzZTFjMjM5MTcyIGxlZ2FjeS10cnVuaworNTk1NzggYmI3MTZlYmNiMDgyYTFlNzk0NDJlNjI1ODEzZmExNjNiYzQ2OGQxYSBsZWdhY3ktdHJ1bmsKKzU5NTc5IDhkNGQzMzUzNjk5NTBjMTIwMmIzM2ZlOWE1OGQ1NmRlMTVkY2E2MjIgcHkzaworNTk1ODAgYmFkNTVhNTg1OTU5YjExZjkzNDFjOTZmNjE0ZWFiMWE3NTU0NWVjMiBweTNrCis1OTU4MSA1NWRhZGM4YjY4ZmMxOTQyZmNlMzZiZDczZTQ4NTJmYjZkODljYTA4IHB5M2sKKzU5NTgyIDIxMGM1MDdkYWM5OTYxODQ4MjE3ODFjYjEzYWI4ZmVlYjljOTMyZjMgbGVnYWN5LXRydW5rCis1OTU4MyA2ZWEwZTE1Y2U1NzM2ZGY3NmRhNTFiMjVhZWNkNDNmZmY3YzMxZDY0IHB5M2sKKzU5NTg0IDhkZWFkNmY4MWJhZTAxYmU0Y2QzNGJjOWI1Yzk0YzViZDNjOGYwNGIgbGVnYWN5LXRydW5rCis1OTU4NSA4M2NlZDQxNzdlYWNjNDkzZWI1ZDU2ZTRlMGQwYzI0NzFkZDgwNDBjIHB5M2sKKzU5NTg2IGVhZWZiOTNiNWVkNDQzODQwNmZjN2Y4MGExMGFjMDM1MmNiZjVhZWYgbGVnYWN5LXRydW5rCis1OTU4NyAzMmRkOWI3NzczYzNjMjFkMWY1MTZlYWVhOGZmOTgyZGM2MDQxYjYyIHB5M2sKKzU5NTg4IDQ0NTQxMDc0NGZkNjM3MzU5NzEzZDBkMjMxNzZkOGFiNDk1YmJiMzYgcHkzaworNTk1ODkgYmNlNzBhNDc3ZjFkYTNkYTM0OTNiZWI0Y2RjZDVmYzdlMzljZTBmZiBweTNrCis1OTU5MCAyYjAzY2FjYzFiNmE0ZTFhYjU4MTI5YmViZjBjNDU1MmM5MThiYTI0IHB5M2sKKzU5NTkxIDk1N2JhYTM3Y2UwZDRmNGIxNWYyN2JkMGI0MzA0MWZmZWU1ZjA4ZDYgbGVnYWN5LXRydW5rCis1OTU5MyBjOGQzMTI3OWZjZGNiNmE3MTJhOWEzNTYwNmY2ZjJjNWJmMzFjNWYxIGFsZXgtcHkzaworNTk1OTUgMjc1MGQ1MzFmZGMwMjNkYmRiNDAyZGI2MmZiMTljYzgzZjRkYTczMyBweTNrCis1OTU5NiA4NjM2OTJkYzQxMWVmMDFmMGM2NDIwMmI1YjE1YTQwMzhhZDZjODM4IGxlZ2FjeS10cnVuaworNTk1OTcgNWY1OTEyM2U3ODFmZjY0YzU4MWEzZmVlYWVkY2FhOGNlYzg3N2M5NiByZWxlYXNlMjUtbWFpbnQKKzU5NTk4IDFkYjYyNDNlOTNmMjliZDJjMDE1OTg5ZWNkOWZmMTJhMzM1ODA4NGMgbGVnYWN5LXRydW5rCis1OTU5OSBkYjY3NTIxMWMyZjc1MzExNjJmZDc4NWNlMmY5YzA5Zjg2NWQxOWFmIGxlZ2FjeS10cnVuaworNTk2MDAgYjliZTExN2IyODJjMzdiYjM1Y2E5MjAyMjViOTVjYTgzYTY5NDU4MSBsZWdhY3ktdHJ1bmsKKzU5NjAyIGVkYjZhYTYyNzUzYmM3OTA3ZmVmM2NlNGYzMzY2MTI5NTk5MTNiZTIgcHkzaworNTk2MDMgMDg0NjhhMjYzYTk1ODE4ZjliMGJmN2E5NjZmZjMyZGIwNWZjNjdlMyBweTNrCis1OTYwNCBlYjY5NWM1OTFlNzA0YmE0OTczMWJhOTcxNjdiNTZkZWQ2ZjM2Y2ViIGxlZ2FjeS10cnVuaworNTk2MDUgNzFiYjcwZjYwOTdiODIwMDRjZDE2ODdkMGQ1ZDQ1NWE3NjUyMzM4NyBweTNrCis1OTYwNiAzNjI1MjM0YmYzZDJlZDM2ODAxY2EwYzY0ZWQ0ODU0ZjA1MzQyNGFlIGxlZ2FjeS10cnVuaworNTk2MDcgZGEyYjEwNWIwYzUyM2Y0ZmEzOTJhYWNiYzM4M2UxMDNhOTBhNjVlYiBweTNrCis1OTYwOSA1NjcwMTA0YWNkMzk1NDk1MWNhZTJmMzJhOTlkMTk5ODkyNmE0MWEyIHB5M2sKKzU5NjEwIDdkMmRhMWNkODBhMTFiYjZmNTQ4YzY0ZjI2YWY2ZTQ1MGQwMzA0M2EgcmVsZWFzZTI1LW1haW50Cis1OTYxMSBmMjkyMjczNWZiN2FiMjllMzAyYjQ5OTNhOWM2OWI4OGE1MjQyNDA2IGxlZ2FjeS10cnVuaworNTk2MTIgYWUwZjJlYTA0MDlmNDQwMGRkMDUzMTEwMzhhMjA5ODRhN2M5NGI3OCBsZWdhY3ktdHJ1bmsKKzU5NjEzIDFmY2YxZTZkOGJiMWRlZDk1YWJmNTdjY2YzOWUwYmI4NWQ5ZWFiYjcgbGVnYWN5LXRydW5rCis1OTYxNCA4NjM1OGI0M2M4YmIyNWMxYjkyYTFmYTFkZjg1ZmI5NjM5MjJjOGI3IHB5M2sKKzU5NjIwIDk1Y2YzZDUzY2FlMDAxYmU2YmNkODQzMzY1MjQzZTUwZTQwZGY4ZjYgbGVnYWN5LXRydW5rCis1OTYyMSA4M2ExMzhmZGZkZmE5ODE4YTU0YmJlMjIyODU2OTZmMDMxNmZlZmM3IGxlZ2FjeS10cnVuaworNTk2MjIgNzQyZDY1OTYxYjFmYTZjYzRiMzk5MmE3MWRkMzk1NmRmN2ZmZDljMCBsZWdhY3ktdHJ1bmsKKzU5NjIzIDM3MTVmMDM3NGY2YWU3ZGMxODllMmExYTU5M2IwZTM0OTNhODhjYTggbGVnYWN5LXRydW5rCis1OTYyNCBhNjMxOWFiNDllMGEzZmJlNDI4ZjdhZWQzY2ZhNzlhZDJkOTQ0ZWNiIGxlZ2FjeS10cnVuaworNTk2MjUgNjU1NmYzZjIyYzE5ZjFiYmVlMzk1YjU1MDkxMGJkODQ4MzdmYzAxYSBweTNrCis1OTYyNiBmMDVhYzE0NTExZmY2MmYxNTkwNTJhNzEwNzlkNmJlNjcwZjJlMmYxIHB5M2sKKzU5NjI3IDFlYjQ5ODIzN2JhNWI1OGQxYWJiYTEzMDcwZjIyNDY2NGY5NzMxZmEgbGVnYWN5LXRydW5rCis1OTYyOCA0NDZlOGI2MDdiZDNhMDBmM2NmOTZhYzMxNzcyYmEyYTkxNWJkODg3IHB5M2sKKzU5NjI5IDQxYmZiZmMzNmNmNzI2M2ExMzkzMDEzMzQ2Nzc3MDE3NDAxMmYwYWEgcHkzaworNTk2MzAgODFiM2FjNTkwODljMThhNDFiZDkwNWQ3YWIxZTQ2ODgxZmE4YmNhZiBweTNrCis1OTYzMSBhY2I2YTRiMmMwN2YzMWViNmUwMDg4MjU5ZTk3OTI4OTlhNjM4Nzg5IGxlZ2FjeS10cnVuaworNTk2MzIgNDI1MTg1M2ZhOWI5MzQ4YjJiZWY5NzJlZWJiY2Y0NmJjNDE5YTM1YiBsZWdhY3ktdHJ1bmsKKzU5NjMzIDNlZTVkZTE3NmU3ODUyZWQ2YmU4NzQyYjA2MTU0ZmJhOTUwYTcyODkgbGVnYWN5LXRydW5rCis1OTYzNCA3YTg2YjIwYzViNGIxZDNjNDMzMTUxN2ExODk1OWU4ZTA4MTUwNWViIGxlZ2FjeS10cnVuaworNTk2MzUgZWIxMjA3NTEzZWU3ZGVlOWE1N2M1N2U1ZjAxZWMxYmJkMTI2OTQyNyBsZWdhY3ktdHJ1bmsKKzU5NjM2IGRkYTI5ZTcxMjgxNTA2ZjFkMjIxOGE2ZWVmMjQ3N2NlMmIwNGYxYTAgcHkzaworNTk2MzcgNDZkNTQwMTFlMWU1NjNjNGMzODc4ZWM4M2MxY2QxYmUwNzk3ZTI1NSBsZWdhY3ktdHJ1bmsKKzU5NjM4IGUzNjZjNDQ5NDhhMzE0MWM4Y2IzNTZmNDRjZTg1N2QwYmU5YmU2ODAgbGVnYWN5LXRydW5rCis1OTYzOSA2MDdlNjhjYjA5NDhkNzA3YWJjOGY5MzZhN2I3Yjc0MDNlYzZmMjI2IGxlZ2FjeS10cnVuaworNTk2NDAgOTM4MGQ1ZGE3NzE2OGUwZTk3YWYyNjIwYzcyMjg0N2Y5MWQ5YjkyMCBsZWdhY3ktdHJ1bmsKKzU5NjQxIDkwMWY3MGRiM2IzNDA0MDA4ZTgyNDA4YWQwMDUzOTIyNWRhYzViODcgbGVnYWN5LXRydW5rCis1OTY0MiBlZWUxYjc2YTk0ZTAxMThhMDZiY2NlNjZlMGIzMzM3MjNjMDM0ZGViIHB5M2sKKzU5NjQ2IDY1MmY3YWI1OTE4YjJmN2Q5Y2FkYWYwZjRjMmNlNDRkZmIxMzdkZDkgcHkzaworNTk2NDcgM2ZmNzc4YTM1NDEwNDhiZmU4ODA5MDE2ODE3MzI3N2QwN2QxY2ZjMiBweTNrLWdyYW5kcmVuYW1pbmcKKzU5NjQ4IDliMmUyNTUxYWZiZTM3ODQzYWQ5ZDdlNjE3NWEyZjRiNmRmMDgzYzUgcHkzay1ncmFuZHJlbmFtaW5nCis1OTY0OSA5NGEyOTM3MzQ5M2JkMTAwNGZjZWZmNTBjNDBhZTk3YjEwYWY1ZmUyIHB5M2stZ3JhbmRyZW5hbWluZworNTk2NTAgZjY3YjJlODNiMzQ3NWRkZGY5YWJlYTJiMTQ2YTg2ZDU4ZWJmOTVmNCBweTNrLWdyYW5kcmVuYW1pbmcKKzU5NjUxIGRiMGM4YjQxZGRiMGQ1ZTRjMjlkOTdiMDBmOGU2NGUwZDkxY2M0MDkgcHkzay1ncmFuZHJlbmFtaW5nCis1OTY1MiBiOTg4ZTRkMzVlZjNjZDBkNjVjYWFkZGU1ZjA0ZWMyZTNmNTNkOWJkIHB5M2stZ3JhbmRyZW5hbWluZworNTk2NTMgYTFmZjJmYWVkYzZiZThmYmVkNjZjYTc5NzhhZTY1ZDFkNGE2YmI5OSBsZWdhY3ktdHJ1bmsKKzU5NjU0IGQ5YTRhNWYwMTIxZTE4YjFkZThlM2ZjNjQ0MTAxODM5MjRhYmIxMjcgbGVnYWN5LXRydW5rCis1OTY1NSA2YzBjNTNiOWYzN2I0Zjk5NDcxZTYyOWNjNDkzNmI3OTIxZTc5NGEzIGxlZ2FjeS10cnVuaworNTk2NTYgMWE1NDhhNjU0YzFhM2U2OWUwZTUwNTU0NDE2MGFmNzFkZTc1OGYyNSBsZWdhY3ktdHJ1bmsKKzU5NjU3IDlhYjMxZmEzNmZiNTJmYzEzMmM1N2I5ZjQ2MzA3MGFiNDIzOTE2MDIgbGVnYWN5LXRydW5rCis1OTY1OCBmNjQ1ZTA3ZDg3MGFmNTk2YWYxY2UwZWY3MWNiY2I3NzBhZDA5NDI4IGxlZ2FjeS10cnVuaworNTk2NTkgZjBlOWMzZDE2NzY2ZDI0NmFmODUwMDAwY2ZjZjU0ZDViMDVlOGIwYyBweTNrCis1OTY2MCBkYTMwODc3Zjk3Nzk5OTQyMGRkOGYzOGNlMzQxMTJmZGM3ODkxOTNkIHB5M2sKKzU5NjYxIDA5OWExN2UyZDJiZDQ5ZjM0YmFmYWYxNjQwNmNkYjliOWFjZDhkMzUgbGVnYWN5LXRydW5rCis1OTY2MiA2NmJlYTkxMzI0Y2Q5MzM3MGZkMGM2NGFkYzUxZTk0MmQ1YjhhOTVjIGxlZ2FjeS10cnVuaworNTk2NjMgMWU2ZjI3YjY5NzNjYzVhMDY3MmUzYmU5Y2Q4YzU5NWQ4YjE0ODQ3NiBweTNrLWdyYW5kcmVuYW1pbmcKKzU5NjY0IDg5OWZlYWQ5ZWFlMjFiNmEwZjk5OGVmMDQzYmRhMzhmZTAyOWFjMWYgcHkzaworNTk2NjUgZTkwN2Y4MTRkOWEzMDcxOWM4YjdiNmM3YzBhYzFkYmI2YjU1ZWJkYyBsZWdhY3ktdHJ1bmsKKzU5NjY2IDY2ZGEzNzdiYTgxMDc4OTMzMmMwYWRkMmIwYzQyNmFhYWFhN2VjMzAgbGVnYWN5LXRydW5rCis1OTY2NyA2ZTkzZDJkNmViMjgwMWRiYmQxZjQ5MGJlN2JiOWMyNzFmZTUzMmYyIHB5M2sKKzU5NjY4IGU5ZjQ4MGI0YzEzM2NmNmU5Y2U1ZGI4Yjg4N2EyYjNmYzg4ZWFkMmYgcmVsZWFzZTI1LW1haW50Cis1OTY2OSA1Y2QyOGYwMTBmYzcxYmEwYWM5NzAyM2MyNjJkOTI5NzY2OTk3MDNiIGxlZ2FjeS10cnVuaworNTk2NzAgNGFlMzAwN2ViMGY0NzE2MDRlNWUzY2M0ZDYxNjczNzY2MWE0ZDRjZiBweTNrCis1OTY3MSA0Zjk3MjNkOWNhMzIwYWY2N2U5ZjYwYTJjMTk3ZGEyZTZmZGZkMzBlIGxlZ2FjeS10cnVuaworNTk2NzIgODM4NmVlZGEyMWM4ZTM1OGY5YTRlNGFiMDNlZGViYWE2YjFkMTk5MCBsZWdhY3ktdHJ1bmsKKzU5NjczIGEzZjE4Njc5MGZmNmUwOWFhNDAyYzhjNGViMThhMTlhZTk0ZTdmZjcgcmVsZWFzZTI1LW1haW50Cis1OTY3NCAxOGExYmM0OWE2OTZlMDVkZDRlNjM1Yjk1Njk1MTI1MzYyNjM1MTUwIHJlbGVhc2UyNS1tYWludAorNTk2NzUgNGMwNTZjMGEwYjlmNTY2OTlhNzk2MzUzNjcxMzdjNTg1NmU5MmVjZSBsZWdhY3ktdHJ1bmsKKzU5Njc2IDk2OGJkYTgxZTZjODBiYTVmZmZmMTVkYWM3Nzg4YWJiODZiN2IxOWYgbGVnYWN5LXRydW5rCis1OTY3NyAyN2U0ZTUzMGNmMmY2ZjA2OTU3YTVlNTI5Y2NlZjVjNmM3YzY3NjYyIGxlZ2FjeS10cnVuaworNTk2NzggMGNiZTk0YmVhMmM3ZWY2MTBkZWE3YjA1ZDFiYWI5ZjA0YWY5YWY0NCBsZWdhY3ktdHJ1bmsKKzU5Njc5IDYyMDhiMTdkMGRiZWRmMGRlODJkOTBkMGQ5ZDA0NTg0MTdkMGRkOTEgbGVnYWN5LXRydW5rCis1OTY4MCBiOTFjYTg3ZTZmMzI3MjE0N2Y5NGFiNjVjZWE3NjhiMjQ5NDIwMzA3IHB5M2sKKzU5NjgxIGZhMmY3MTgzYjFhZmM1NTNjMTdiN2U2YWU1ZDMzODI1YThhMDFmYzQgcHkzaworNTk2ODIgYzczMjEwZWE2MWM4NjUxNmVlZjAyMmFiYTg4Yzc4ZDFhMGZiMjk3NiBweTNrCis1OTY4NSAwMzZiMDBkYzk3NjdmNzVlMjMwMDVmNDNhNTc4ZWQyNTQ5NDYwOTFjIHJlbGVhc2UyNS1tYWludAorNTk2ODYgNTNhYzNmYzY5Yjc4YjFmZGUwODI1ZmYzNmI4YzQ2ODRiNzFiNGRkNyBsZWdhY3ktdHJ1bmsKKzU5Njg3IDhkNjllZGQzZDI5MDI4N2U5ZmRlNWI3ZTliOWE1MWE0MDZlZjFlMWYgbGVnYWN5LXRydW5rCis1OTY4OCAxNzM1OWM5YTRhN2QyN2ExOGEyMzZjYTY0NTNmNDM5ZGRiMzM5YjYzIGxlZ2FjeS10cnVuaworNTk2ODkgNWUwMTcwZDNjNGRhNTQ0YzlhMTdmMWE2ZGQzYmE2Y2YyNzUxM2Q1MSBsZWdhY3ktdHJ1bmsKKzU5NjkwIDk0NjI5Yzk1OTY1YTExODRmMzNjMDgyYzgxZTFlMWEzZTQ1ZTM4MzYgcHkzaworNTk2OTEgY2YyNjY3ZTJiYTJmNWUyZTQxNzdjY2EwMWI1ZWNiNWQ5ZTMwMTVkOCBsZWdhY3ktdHJ1bmsKKzU5NjkyIDUxNzFiNWFlNjg4YTIxN2I5ZWM4Y2NiN2EzZDA1ZTY4OGRhMjFkNTcgbGVnYWN5LXRydW5rCis1OTY5MyBkMWEzNmRkYmFhNDkyZTkyNjc5OWM1NDdjYmI5NTk4MGU4MjVjMjNiIHB5M2sKKzU5Njk0IGNiYTlmZjc2MDQzMDQ4ZWMyZGM3YjMyMDRjMGY1ZTE0NGIzMWFjNTMgbGVnYWN5LXRydW5rCis1OTY5NSAyOTg2YmI0MzIyMjIxNzIxYWJlNGJhNDg2OWZmZTBlNzBhZDg3MDZiIGxlZ2FjeS10cnVuaworNTk2OTYgZGUwMGFmMDNiYjRkNTY5NTU0YWRmOWRjYmQzMzMwY2I1OGIwOTdlYiBsZWdhY3ktdHJ1bmsKKzU5Njk4IGRjZGQxYmEwOTY0MTBlOTdjMTA5NDU4MjczMWJiZmM3MmFmNDJlYWUgbGVnYWN5LXRydW5rCis1OTY5OSA3NDJjYWY1MzU1NTc2ZmU2ZWRmMzYzOTFlNDQ2NzM0OGYwMWJkZDllIGxlZ2FjeS10cnVuaworNTk3MDAgYWQyYmNiZTgzZmRjMmZkMTRiNzU5ZDE1Y2VhY2RjN2ZkNmJlZTYxMSBsZWdhY3ktdHJ1bmsKKzU5NzAxIDc2NDNhNDNmMjVhMWU2OTdmMTZiMjNmMmFjZjhmMGM2ZGJmYTE3NzIgbGVnYWN5LXRydW5rCis1OTcwMiAxM2FhYmMyM2NmMmUyYzBlMjI1OWM5YjUwNjY4OTQ1ODE4ODk3NDM4IHB5M2sKKzU5NzAzIDYxYzE2NGYyNTQzNTY0MmMzM2FhNjY2MmY5ZjY5M2VkNDE1Yjk0YzcgcHkzaworNTk3MDQgNzZhODlkZDRhNTEyMzcyNzdiZTU1NTgxNDQwNTI1M2UzNTAyZTU1MyBsZWdhY3ktdHJ1bmsKKzU5NzA1IGQyYzFiYTA5OTI5MDgzYzgyNTY2NGUwYmQ4YTBkNGExNjlmOWQ5OWIgcHkzaworNTk3MDYgMzk4YjYyNDY3NTlmYzJkMmUzY2I0ZDAzYWY1ZTE4YTE5ZWEyOTU4MyBsZWdhY3ktdHJ1bmsKKzU5NzA3IDc3YzM3ZTMyZmUzNWI1YzA3MjU0M2VlYzk4MDEzODBmNmEyNjQyYWYgbGVnYWN5LXRydW5rCis1OTcwOCAxMjdjYzJmZWE5ZmI5ZDE1ZWMwNjY2ZGZiY2ExNzMyNGVkMzExNzFlIHB5M2sKKzU5NzA5IGRjZTI1OTQ4OTE4ZDBkOThhMDMzMGRkMDE4MmI5NTcyN2Y0NjJiZjQgbGVnYWN5LXRydW5rCis1OTcxMCA4MTY2OWZiYzg0NWYxMjQ5N2M2NGY2Nzk1MmE0M2E3YjNiYmQzZmZkIHJlbGVhc2UyNS1tYWludAorNTk3MTEgNWQ3ZDJhZjU5YWZlMWNhYjUyMWE2NmRlN2FkZjExMmJmOWQ3NDFmMSBweTNrCis1OTcxMiBiZDAyNThkZjMzMGVjNWRhZTliMTZkMmRmY2I4MmVmOGYxNzIwNWE0IGxlZ2FjeS10cnVuaworNTk3MTMgMjkyYzVlNTFhMGU1OTYxOGVmOGE4YjQ4ZTAwMzhiNzkyMWM0NjAxMSByZWxlYXNlMjUtbWFpbnQKKzU5NzE0IDkwMTkwODZmZDIwYTRkYjc1MmYyN2JhNjdhMzNmOGY5MDJmOWQyNWYgbGVnYWN5LXRydW5rCis1OTcxNSBkMDc3YjBjODkzYmM2NTYxOWFiNzMwNDI2NjY2ZTU3N2U4OGEyODUyIHJlbGVhc2UyNS1tYWludAorNTk3MTYgYmZlZDcwMjc3YWIzYjY4NjUzNzlmN2EzODU4OTM1N2I1ZWY2ZjRjMyBsZWdhY3ktdHJ1bmsKKzU5NzE3IDYxMzQxNzc1YmM0MjE3MjMxNWUxOGViMTQ0ZjdhNzQ1MTdkZTZlY2UgbGVnYWN5LXRydW5rCis1OTcxOSA4M2NhNzM1YTM5OTVhNzIxNTVmNmEwZmVmYzYwNjJiMmFiYmIxNDlmIGxlZ2FjeS10cnVuaworNTk3MjAgNjQ2Y2ZmMDk2MDM5YmFmYTVlOWNmMDBiYjdlMGJmYzgzNTgyZTkyYyBweTNrCis1OTcyMSA3M2JjMDAyMjUyYmZkNTgzYmY2ZmU1YzJkZDJlMWQyNGUyMDMyYTdjIGxlZ2FjeS10cnVuaworNTk3MjIgMzRjOTFkZjYwNTMyOTk5MDY0MThjOWM1YzlhM2UzZmFkOTQxMjZlMyBsZWdhY3ktdHJ1bmsKKzU5NzIzIDU3YzdkNDJmNmNkZWIxOGE3YWUyMzk2ZGQyYjc1NmRkNWQ5MDA1ZGIgbGVnYWN5LXRydW5rCis1OTcyNCAyMDM3ZjRjYWJiMDdjY2RhNjNkZTNmMjFlODFjNjM1MWQ1NmZiYThiIHJlbGVhc2UyNS1tYWludAorNTk3MjUgM2ZjYWY2Y2MzMDZkMWU0ZTZhYTlmY2YyMGZhZTc2MGYxN2VjYTRlMyBsZWdhY3ktdHJ1bmsKKzU5NzI2IDJlMmZhMjkxOTE0YzUzY2Q0ZDRkYmE2YmUyMTg2YTAyYzllZjkxY2YgbGVnYWN5LXRydW5rCis1OTcyNyBkY2M3Yzg2NWM3N2IxMDE3ZGE5MjAzOGYxM2EyMjRlZjBkZjc3NTRlIGxlZ2FjeS10cnVuaworNTk3MjggN2JiOTFiM2JhMGVjYzI4NTM1MDJmMGUyZTg0MDRiYzE1YzhjODllMiBsZWdhY3ktdHJ1bmsKKzU5NzI5IDVhMGNiZTM2YTYwMzc3OTVlM2EwZDVmMWYyYmQwYWE5ZGZlZmM4NGMgcHkzaworNTk3MzAgMzNhMGFlNzA2NzBmNDM2OTIzNGQ4ODk4NTUzMGU2OTAwZDI0ZWViNiBsZWdhY3ktdHJ1bmsKKzU5NzMxIDk0ZWVhZWViM2NlOTNkZjhkMmIzYTcxMWU3NjA3NjVkMjZmM2QwODggbGVnYWN5LXRydW5rCis1OTczNiBlNDhiNDY5ZDFkODY2Yjc3ZTViNjdiYjIwMGFjNGRmMjNkM2JlYTZhIGxlZ2FjeS10cnVuaworNTk3MzcgNzc3NDI5YTIzMDI2NjdmMWQ1NjMzY2Q4NDQyZThkMmQ5ZjNjODRhZSBweTNrCis1OTczOCBjMGMyMzY5Zjk0MjY3ZWExNTBjZTJlMmUyZmVjNjM3ZTc0ZjE4ZDhhIGxlZ2FjeS10cnVuaworNTk3MzkgOWNhZjhhN2IxMWE2Yjg5YzE3OTNiYzZmNGQ0YzA4Y2I4NWM5ZDRkNCBsZWdhY3ktdHJ1bmsKKzU5NzQwIGJiYzllOGMwOGNkNWVlZTM3YzAzNWU5MTFlMTA0YzE2N2M0MDU2YWMgcHkzaworNTk3NDEgZmM4MTg2YjUwMTQ1YjlkMmI3ZjJkMDE0ZDVlOWQ5ODVlMDg2YzQ1NSBweTNrCis1OTc0MiAwYzBhZWJjNjY1NmY5NGQyNTMzNDRjZTRhMTJhMDMzZjM4OTc2YjM3IGxlZ2FjeS10cnVuaworNTk3NDMgM2M2Zjc1NDNiZGQ2YjRhYWQ5Nzg4OTA2M2NmNGNiN2Q5NTYxOGI1MSBsZWdhY3ktdHJ1bmsKKzU5NzQ0IDAxZDViOGU3ZDEyMTIwNWVjN2IyMWE4YWYwZDczYTQ4ZWNiYzQ4OGMgbGVnYWN5LXRydW5rCis1OTc0NiAxNDI2Y2QxMzY3MzlmYmRlZTI3ZmQwNjc0ZWNiOTQ2ODNlMTRiMzY2IHB5M2sKKzU5NzQ3IDMxZTI5NGQwOGNlMWM5ZGYzZjI4NmM1MjMyODY3OWZjMTViMTZhYmYgcHkzaworNTk3NDggYmQ4NTg3OWVmZmE2OWRhY2RjOTk1MWM4NzVlZWY0NDY1ZjI0NzYzYSBweTNrCis1OTc0OSBkMDBkZTBjZjA0ZTI3NGYwMjNhMmQyNDFlZGFlMzg1OThlNjlhYjY2IGxlZ2FjeS10cnVuaworNTk3NTAgMGYxYzhiYWI4OThkYmQ5YmNkMzljNDY2MzIyMWRjZDM3Yjg1MDY3YiBsZWdhY3ktdHJ1bmsKKzU5NzUxIDlkOGI5NTNkNGFmNTJlY2FiZDA2ZDQwNGVjNmZiMjlmNDBkNGQ0YzcgcHkzaworNTk3NTIgZWRiYTBhMWI3ZWJlMTA4YzZiNzIxNTJiZDQ4OTc5NTU1NGQwZTZlZCBsZWdhY3ktdHJ1bmsKKzU5NzUzIDI0NGJiMzFjMDM2YmQ1NGQ3MzFlZWJiODAwMjgxYzdlMjg3N2EwMzggbGVnYWN5LXRydW5rCis1OTc1NCAxMTVkYTIyNjhjZDk1ODExMjNiNDk5N2E4MDdkMDc4MmQ0ZGRlN2M1IGxlZ2FjeS10cnVuaworNTk3NTUgOThjYzFjYzU3NTczY2MwNmMyYTdlNGQ3OWE1MGJjMzg4MDhjZWIwNiBweTNrCis1OTc1NiAwODEzOGJjM2MwNjBlYzZmMzQ2YjI5MTZmYzQxODllNzI5OGY3ZGE2IHB5M2sKKzU5NzU3IDRlNzRjMjc2NzhiYTE1Y2U5ODY0ZGU5OTJmMzA3ZDViMjY3Nzg3ZDEgbGVnYWN5LXRydW5rCis1OTc1OCA2NWZlNmU1NmQ0ZjhkNWM5YTI5MDJiZWU5ZGI4NTNkY2U4NjRiNDNiIGxlZ2FjeS10cnVuaworNTk3NTkgYWZiMTMzNzkwNmFlOGE1MmU4ZWJkYWI3NGI1Y2YxYzY0ZGNmNjY4OCBsZWdhY3ktdHJ1bmsKKzU5NzYwIDI4MWM5NDc5MTQyYTNlNGFiYTA2YjI2MDBlODRiN2JiMzRmNzc2OTIgcmVsZWFzZTI1LW1haW50Cis1OTc2MSA4YmY2YTlhM2E2MzI5YmUzOWNkMDBiZTgwNjUwNDg5ZGQ4NWYxOGIwIHB5M2sKKzU5NzYyIDU2YmE3OTFkOGIzNTkyMzU0N2JmMmNhYTM3YzM5ZDhhYjQ5N2Y3ZjEgcHkzaworNTk3NjMgMjg0OGZmYjlkMTdhNmMzYzliMzkyNjZhYTcwODIyNmY5ZGE1YjcwZiBweTNrCis1OTc2NCAzMjY4MWFlNmM1YzE0ODg1NWZiNzQ2ZDQyYzExMWM0YjgxNWI4NjQzIHJlbGVhc2UyNS1tYWludAorNTk3NjUgN2EyMDY1YjViZTc1YjMyMzVmNTkyODg1YmQxYWFlNzBlZTZmYWEwYSBsZWdhY3ktdHJ1bmsKKzU5NzY2IGJlZGQ4YmZkM2ZkMjY4MDQ3OTA0NDY1NGVlZWUyZjgxOTMwZDUwNjIgbGVnYWN5LXRydW5rCis1OTc2NyBmYWIyYWE2YjgwNzM2MzMyZGNmMTMwMTg5MGFhODQ3YzQ1NjE2ZTA1IGxlZ2FjeS10cnVuaworNTk3NjggZTViZjY2OTZlMmUzNmE3NGNjNzFhMGM4NGQ0MTEwZWU4NzA4MzcwOSBsZWdhY3ktdHJ1bmsKKzU5NzY5IDNiYzA0MDVkZTQ5MTVkNDg3YzQ1ZGVjYTNmNWJiZGY5ZjViY2JiMDEgbGVnYWN5LXRydW5rCis1OTc3MCA0MzIxYTVhYmQ2Y2UyZTJkN2Q2NjJkMTVmZmZmMGYzYTRiYWRhMDU3IGxlZ2FjeS10cnVuaworNTk3NzEgMTU1ZjVjMzZmZjkyOTU2MWZmMmI1NDc5MjJkNWI1ZGFmYWY4YWI2MCBsZWdhY3ktdHJ1bmsKKzU5NzcyIDc5YTM0MjQ4YTI2MmZiYTlhNDI3ZWFlODY0YmYyZjM2YmM1ODM2YTUgbGVnYWN5LXRydW5rCis1OTc3MyA2NjE5N2Y4ZDBmZGYwZjg3MjcwMzA2MzE1YzliNmI0YzczOGM2ZDQwIGxlZ2FjeS10cnVuaworNTk3NzQgNTA3ZTc2ZDdmY2RkNWM1YmY2ODViYTViNDViYjVjY2Y5ZGE4M2MwMiBsZWdhY3ktdHJ1bmsKKzU5Nzc1IDY0Nzk0YmE5ZTI1YWQ1YzFjOTJlZDMxNGFkY2Y2ODViYzdhOGVlMzIgbGVnYWN5LXRydW5rCis1OTc3NiA5OWY2MzcwYzZjZDA1ODRhNzUyMDIzM2MwMWIwYWU3ZTRkZGRjZDBlIGxlZ2FjeS10cnVuaworNTk3NzcgZDg5NzllNjQyOWU1ZmY4YWJjY2QyZDA0ODdlMTYzYjllNjU3YTI5NyBsZWdhY3ktdHJ1bmsKKzU5Nzc4IDZiM2FhZTVjNjliZjIwNDRlMjU5M2YwYzIyZjIwMzE5MGQ1OGE1MWEgbGVnYWN5LXRydW5rCis1OTc3OSBlZDc1OGY2YTk3YmIxMGNhYzUzOWM1YWIwOWQ4N2U3OTRiMzI4MmRkIGxlZ2FjeS10cnVuaworNTk3ODAgMDkwMDgzYTIzM2Y4ZTM2NmRlOGNjOWU2ZDZlMmZmMjlmMTE3YTkwYSBsZWdhY3ktdHJ1bmsKKzU5NzgxIGIyNDg4OGNiOTU1MzMzNTg0YzhjNTg5NDBmNzQwODYwYmI4OWNkNTkgbGVnYWN5LXRydW5rCis1OTc4MiAyYWNjNjUyZTU4YTE5YzZjM2Q2MDgxNzg0NWJiYjkyNmVlY2FlYjI3IGxlZ2FjeS10cnVuaworNTk3ODMgNDIwZmU2ZDdkNWY0NWU1ZjlmZWU0YTI0ZmNlYmZmZTJhNmQ0MjZkZCBweTNrCis1OTc4NCBhYzdkZWIxYzFkM2NlMDNhZTcxMDdkM2YzZDM0ZThiYzAxNWZhZmI0IHB5M2sKKzU5Nzg1IDhlYjk2MzYzZjFkNTljMmI3NWVjNTE0Y2Q5ZmI1NGVjZWI5ZDYwOTYgbGVnYWN5LXRydW5rCis1OTc4NyAxODExZWIwM2JhMDBjOGY5MzcxZTA1YWNlZTNmOTExZDMyZTQ3MGVmIHB5M2sKKzU5Nzg5IGZhMjUwYTU4MDk5ZmM0YWFhNzhhNTZlZTFmYmVjMjdhZjA3MTVhMjAgcHkzaworNTk3OTAgN2NiYWNhYTVmODg1OGY0OTQ3NWJkNTMyNGRiMTg5ZWFhNDQ1YmI5NCBweTNrCis1OTc5MiAwYzRkMjU4YTViMjVlYTBmZGE1OWM2NTZmZGQyYmMyZjM0Yzg3YzM4IGxlZ2FjeS10cnVuaworNTk3OTMgZDA0NjVlNzgyYjAxOTEwM2M4YTg0NWJiNTcxOWYyOWYzMDAzNjBkMCBweTNrCis1OTc5NCA2NzRjOWI4OWQxMjQxNDAxY2UyZmI1YzMwYzdlMzgwNGJjY2QyOGRiIHB5M2sKKzU5Nzk1IGI4ZTM0YmNkYmE0NTQ4Mzc1NGM0Y2VhMzA0ZTg0NDBiODJlODFmNzQgcHkzaworNTk3OTYgMTNiN2NhMDRiZDcwZTE0NjQyZWQ2ZDk3YjEwZTg1ZjU0YzM5OWIwZSBsZWdhY3ktdHJ1bmsKKzU5Nzk3IDk3NGYwMzIwZDZiM2NkOTMyMWQyYTkyYjZjNjA0YzhjMDUyMjZiNTQgbGVnYWN5LXRydW5rCis1OTgwMyA0MjY0NmE4NzI3NzJlZmFkYTA2MjA5MmNjM2NmZjE0MTQ1YzNhMDJlIGxlZ2FjeS10cnVuaworNTk4MDYgMDViY2I3OTBlZjYzMjRiZThiN2Q2ZjJhMDA2NDJkNmI1Y2MzYzBkMCBweTNrCis1OTgwNyBhODY5N2FmYmYxN2VmNWM3MmMwNWUzOWNkZjVjZTI0ZmJjNGEwYjlkIGxlZ2FjeS10cnVuaworNTk4MDggNDU1MzZkNTU4N2Q0NzcwMzI1MDFhMWM1MzY0NThmOWI0ZTRiM2VkMiBsZWdhY3ktdHJ1bmsKKzU5ODA5IGY5Yzk1MGU4ZjJlMGFlNmZhYjI5MzdlY2MzZDcyMmFiZGFhMWVjZjYgbGVnYWN5LXRydW5rCis1OTgxMCBiNmVhNTI5OTNjYWU1MGFlNjU2MDQzZmRlNzA1MDFkZjU2OTEwNWM0IGxlZ2FjeS10cnVuaworNTk4MTEgZjI3MDc0ZDE0N2Y0ZTE5OGE3YjMwODc5MmIxYjViYzhkNDU0YmQ2OCBsZWdhY3ktdHJ1bmsKKzU5ODEyIDZjNGIwY2M5ZjZjOTAwYmIyNWI0OTIxZTIxZmI3OTViZDZmODEyMjUgcHkzaworNTk4MTMgN2VhMjMxNTc4YjAyZGZhMDNjNzg2MzZlODNlNjBlMmE4ZjRmNWVkYyBsZWdhY3ktdHJ1bmsKKzU5ODE0IDNhOTQ0OTM1YzYxMGRhNGZjYzAyYjRiMTk4MjljZjU1N2MwODc2ODggcHkzaworNTk4MTUgODY0ZTY3OWEwZTg1MDgwNGJiZjIzZWJkMzRlZjA2OGI5NjZjMTcwZCBsZWdhY3ktdHJ1bmsKKzU5ODE2IDRkMjNmNWE3ZDRjOTYwOWMzMDM0ZmVjMzk0YzAzOGExY2I3NDBlN2UgcHkzaworNTk4MTcgMTljZTllZjM0YjYyMzNjYjM4MzU1OGNiYjc3YjI0YmM2OWNkMjZlNCBweTNrCis1OTgxOCBiOTg5NzdmMGFiYTFjNjU3YzQwMGViMWRhYWQ1NTkyMjJjYjhlZjJjIGxlZ2FjeS10cnVuaworNTk4MTkgYWM1MWNmZTVjNWM2Yjk4Mjg0YzM2NzQ0NDE4NmY3Y2NhYjU1NzM5MCBsZWdhY3ktdHJ1bmsKKzU5ODIwIGYzYzFmOWM4Y2U5ZjEwNmVjY2JmMWY0Mzc2YzJiMDAyMDQ1YTZhNjEgbGVnYWN5LXRydW5rCis1OTgyMSA3NmZjZWI1OGJjZjUxZDFlNzk5MzI2NGU3YjFjNWFmZDQ2ZmYxYjAxIGxlZ2FjeS10cnVuaworNTk4MjIgMDZkMTVkYTFmMTI1OGM0NDU0NTQ0MDMwMmJlZmJmOGMxNWFlMWE3NyBsZWdhY3ktdHJ1bmsKKzU5ODIzIDJjZGI2NjE2NzVmOWMwM2Q5YTk2MmQ2OGE3MTIxZTNjY2Q3N2Y0NDkgcmVsZWFzZTI1LW1haW50Cis1OTgyNCA1OTlmMjJhMzQ5YTI0ZmUzYTk5MGVhMWNiNTM4NzU3MjAwYzE1ZGNiIGxlZ2FjeS10cnVuaworNTk4MjUgY2RjMjg1YmQwZWZiNDRlN2E0OTA2YzFkYjNlMTExYTg5MjIyMThkZSBweTNrCis1OTgyNiAzMDVkN2QyY2UwNDcwMWI0MWNlMDk0ZTUwODNlMDA2ZTc1ZGE1MjA2IHB5M2sKKzU5ODI3IDEzMmQ5MDg0NzFjODM4YjkxMDU1Y2YzMDA0MTQxNGY1MDI2YjMzNWIgbGVnYWN5LXRydW5rCis1OTgyOCAwYWFlMTQ5NTBlMGJjMmJkMzdmMGY0NjFhMjQ3OGRjNTcxNmQ1OTBkIHB5M2sKKzU5ODI5IDNiM2FiOTI1YjI2MWU3MzRiNjRlM2QxZjA1ODgxNDM2OTYzY2U5NDkgcHkzaworNTk4MzAgZGI1ZTAxYzMzZWI3NjMzYzAxM2E1MTRkMjc5YWYzMjQ3OTg4OWI1NyBsZWdhY3ktdHJ1bmsKKzU5ODMxIGZkNTMyYTliMjgxMDYzODMzOTE4ODY0Y2VhZDc5NWNmZTY0YzZlNTIgbGVnYWN5LXRydW5rCis1OTgzMiA2YjcxNWVhODA0Mzc3NDY4ZmQ5NmUxNTRmOGEzOGI1YmEzNGM3YTQ5IHB5M2sKKzU5ODMzIGNmMzZlMDFlODNmMjBlNzQwZTkxMzViOWIzNmJmNDhkMDBkYTBjYWYgbGVnYWN5LXRydW5rCis1OTgzNCBhZGRjMTg1OTZhMTU3NTM1ZTBhZWRhODAzNTJhZjUyMTk1MjNlNmI3IGxlZ2FjeS10cnVuaworNTk4MzUgY2ExNDE1YzYxMDVmN2ZkMGRlN2JlMWNmZGYwZjU3MzNjZDZlYjBmNyBsZWdhY3ktdHJ1bmsKKzU5ODM2IDE5ZTFmYTc4ZDMzMDU0OWY0MmFjZDI0ZjI0MmNhNDVkNTUxZGM3ZDcgbGVnYWN5LXRydW5rCis1OTgzNyA1ZTAyNGU5MWVlMDY3ZDc1MWE5NDI5MDgyY2JlOWE2ZjEzNjdmMGQzIGxlZ2FjeS10cnVuaworNTk4MzggZTk3NTYyNjZlMGI5MzgxNDAzODQ4NDE5YjE3MGVlMjI5NmYyYWMzNCBsZWdhY3ktdHJ1bmsKKzU5ODM5IDZkNTIxNjAzZTA3ZGU3ZmI3ODhlZGE1ZThmOGM5NTQyOTJkOTZjNGQgbGVnYWN5LXRydW5rCis1OTg0MCBjNzVkMzYwYWI4N2IzODc2NjNhMTgzMmM0MmEwNTRhYjdhYzNiY2JjIGxlZ2FjeS10cnVuaworNTk4NDEgNzNlMWJmMTc5YTAxYWQ3ODI0ZmY1YWEyYjI5Y2UwNjhhNDU3Y2Q2NyBweTNrCis1OTg0MiAyMzZlNzUyNmFiZWFmNThmMDVkZmU5N2VkNWNjZTJmMmU5YWFhODkwIGxlZ2FjeS10cnVuaworNTk4NDQgNDJjZjU5Y2NjZTY2MmI3NTAwZjc3NGE5NGE2MWZkYmUzZDU3YzVlZiBsZWdhY3ktdHJ1bmsKKzU5ODQ1IGEyOTM4YzU1MjAwY2U0YTZkYzFjZDBkNTEwYTg5Y2VmMjQxZGUzZWIgcHkzaworNTk4NDYgZmI1YTYzMzBmNzFiMzk4ZmNlYjBlNDA1MjAyYTg4ODA1YmExY2MxNCBweTNrCis1OTg0NyBjYzg2OGZjZjUwNWFlYjU5ZTQxM2MyOTgxOTFhMzNjYTg2OWFkOTlhIGxlZ2FjeS10cnVuaworNTk4NDggYTViN2YyZDg3NjFkNWExZDJhYjI2ZTIxZjM2MDdhM2FlZjY5MmE3OSByZWxlYXNlMjUtbWFpbnQKKzU5ODQ5IDYwYjU0ODAxYjY0NjMyZTgwZGE0MTE0MTU0YWQ5YzQwNDc0YTExMjggbGVnYWN5LXRydW5rCis1OTg1MCBhMWRkZTY4MGU2OTQyMGY3YmQyYjgxMGYyOWE3Njg4MWZhNzM1ZWJiIGxlZ2FjeS10cnVuaworNTk4NTEgY2IyMmY4NzQ4ZGE3Y2Y0NTZiODZlYjJmNzBmNGJjMzFlOTJiNDU4ZiBsZWdhY3ktdHJ1bmsKKzU5ODUyIDA1N2RlNDZlYTE3ZTIxYTYwYzRiNjkwMjJlMzE4OTQ5ODgyMzkyODIgbGVnYWN5LXRydW5rCis1OTg1MyA4OGQ3NmI5MjA2ZTY2NzMyNmEzY2Y4MWRmMjhlYmM2ZjI1ZDU2MTExIGxlZ2FjeS10cnVuaworNTk4NTQgZDFhMWJhNTAyNTc5ZTllMjIyNTVhNzhkN2I2ZjhlMzBjODM2NzI0MyBsZWdhY3ktdHJ1bmsKKzU5ODU1IDc2Yzc2NWE3NGZiOGNiNDM4NWY5MDI3MDVmYWZiNjY0ZGUzZWZjYWIgcmVsZWFzZTI1LW1haW50Cis1OTg1NiA1ZmI5YjJmNmJhY2I3YzZiZTg4OWIwMDA0ZjljNmQ3YTExY2NhYmUxIGxlZ2FjeS10cnVuaworNTk4NTcgMDg4YjUwNzdjOTAwYzhkNDg3M2RkYjVlOTc5OTg4NzI3NmRkNjAyNiBsZWdhY3ktdHJ1bmsKKzU5ODU4IGY0NWVhZWRiOTIwZTIwNTVlZjM3ZTEyZmIxZDNiZWQ0ZWE0MDYyYzAgbGVnYWN5LXRydW5rCis1OTg1OSA5YTYwYmQ4ZjAwZDZhZmE5MDQyZmMyODIxZmUwYTI4YjYxM2QyYzAxIHJlbGVhc2UyNS1tYWludAorNTk4NjAgNzZjYWI4Njc4OTE2ZTRkNGE4MGIwMmFlM2QxOGYxNDhmOGQ0YTU5MyBsZWdhY3ktdHJ1bmsKKzU5ODYyIDQ3ZTc4YzJkMTZkZTBkNDMwMGU2YTdjMjcyMmY1MzZlODllYTUzMjYgbGVnYWN5LXRydW5rCis1OTg2MyBiN2QxYjYyN2E3ZDUxZTRkMmIyMmUwMDkxNzBlZGE1MzlkOTI2YjlkIHJlbGVhc2UyNS1tYWludAorNTk4NjQgOTRhYjU3MmVkNmRkZjM2MDgwMDYwMjc5ZDliNzFmMGZkMDNlMjdlNyBweTNrCis1OTg2NSAzMzQ0MDkxOTk2MTI0MzIxNDM5NmZkMjk1Mjc5NmM4YzA5ZjY5MzVlIHJlbGVhc2UyNS1tYWludAorNTk4NjYgYmY3YmJkOGRiMWE4MmQ3ODI1OWZmOTI1NGMwZjRjYmEyMzMyMjg4YiBsZWdhY3ktdHJ1bmsKKzU5ODY3IDVmNjQwZjhmOTJmNDhkNGRiZDJiODkzMzAyOTIxZWRkMGQxOTNjOTYgbGVnYWN5LXRydW5rCis1OTg2OCAxZDc0ZGQ4MjI4ZGIwY2M5NWJjNzAwMjNlYzNlOTJhN2NiY2U5ZDNjIGxlZ2FjeS10cnVuaworNTk4NjkgMTBlYmQwMjdjMjQzOTQyNWRjMTI1YjM0MmYxYWMxYzE1NDE5NmQzYSBsZWdhY3ktdHJ1bmsKKzU5ODcwIDUwODY5ZTc0N2U3NmU5ZTQwYTk2ODM5NTA0ZjdkYjViOGM2MTcxNjggbGVnYWN5LXRydW5rCis1OTg3MSA5ZjZhYTQ5ODQ5OGQyODVjMWExYWNkZDc3ZGZlNjk0MWEyNTU1MDM1IHJlbGVhc2UyNS1tYWludAorNTk4NzMgYTYwZjkyYmEwZDFlZDU2MzE1NTViMmMyOWFhMDU3MDdmM2IxMzA5OSBsZWdhY3ktdHJ1bmsKKzU5ODc0IDY3NzZkNmVmMjAxYTEwMzc1OGI0YmZjMTI3ZTkzOWQ1NmNmYjljZTcgcmVsZWFzZTI1LW1haW50Cis1OTg3NiBkYzlkOTViNzE3YzU3ZTNlNjFmNGRiMjllZGY5MGQ5NjU3ZWU1OGVlIGxlZ2FjeS10cnVuaworNTk4NzkgOWE5NzkwOGI0Yzk3ZWY5MWIxZDJkYjUxMjM2NGUxNzFmNTJkNzliZCBsZWdhY3ktdHJ1bmsKKzU5ODgwIGM5YjZiZTQ4MTY1N2RkOTYyODFjZDAyNjg3YTQ1MTYzMjcwNmFlYjcgbGVnYWN5LXRydW5rCis1OTg4MyBhMjlhZGMzYjBmMjY2YjYzNmM5NjJlNDI5YzE0MGEwYmJiM2MxODk3IHB5M2sKKzU5ODg0IGZhZTljZWRiOTE0NmJkZjE2MmJiODg3YmMzODM5ZDcxZjc1NWExNDcgcHkzay1pbXBvcnRob29rCis1OTg4NSBmYjI4NzQxNWFjYTBlNmZhNWQyYTMyOWUyOGEzNjA0YzJmMDEzNDMzIHB5M2staW1wb3J0aG9vaworNTk4ODYgYTkzZTBlODBjMThhMDE3MTA4MDE0ODdiMzFkZGU5YzBjOWE1OTM0NCBweTNrLWltcG9ydGhvb2sKKzU5ODg3IDc2YTQ2MWRlMTU0NDQ0MTBmZTE5MDVkNmFlN2E3YTczMTJiNzJkMWIgbGVnYWN5LXRydW5rCis1OTg4OCA0MjY3NmE0ODQwYjVhNzExMGFjY2M2ODJjNzZlYzQyYzYzMTc4OTc3IGxlZ2FjeS10cnVuaworNTk4ODkgYjQ0NmNkNjEzODhmMDViNWZkZDVlNjU3ZGQxYmFhMWYyN2I4NWQwMCBweTNrCis1OTg5MCBkOGQ3YTc4YzY0MjNjMWE0MTYyMmM1YjY3MDY5YjU2ZjA4MjEwNTVlIHB5M2staW1wb3J0aG9vaworNTk4OTEgODk2OWQ3NGQwZDIyZjMxOWM3YzQ1ZTY0MjU5YWQ3NDc3NTYxODc1MSBsZWdhY3ktdHJ1bmsKKzU5ODkyIGMzMTEzOTE0ZTY2ZTllMGQ2NjkzOWFjM2UxYTdmYzhhY2ZkMjI0MzEgbGVnYWN5LXRydW5rCis1OTg5MyBhZjZmMzQ1NjU3YjRiNzk0MWYzMWZkNGNlNjM5MzI0OGZhY2U2ZTQ1IHB5M2staW1wb3J0aG9vaworNTk4OTQgMjA1NzhkYjA3NjI5YTIwNDY2ZjU0ZjY3YmI4MzQwZjhiODJiYjIxMyBweTNrLWltcG9ydGhvb2sKKzU5ODk1IGRiYWZjZDgyNzk3OWUwOTdlMDlmZmVhMTc2MzQxZmI2ZDUyYjk3ZDQgbGVnYWN5LXRydW5rCis1OTg5NiBlNzUzZTMxYTBjOGYxNzk0MzhhMTlmZjc0NjkwY2VlMDc0MDNlYjQ3IGxlZ2FjeS10cnVuaworNTk4OTcgZGY4NTZlMGUxYjJhMDg5Yzk0MWRmNGMyYTMxNzMwZDc1NTU1ZDg1MiBweTNrLWltcG9ydGhvb2sKKzU5ODk4IDY5ZjQ5NTA4MjQxMjY3MjczNDg5MWY2NmUyMjhhNjI5ZGU2ZTA1N2QgbGVnYWN5LXRydW5rCis1OTg5OSA2MDEyNmFhM2I4MTY5NzcwZDc5ODQ4NWIyZjc1YmZlOWUxYjhlNWVkIHB5M2sKKzU5OTAwIDc4NTFlNzVmNTQzOGNhNDU5OGQzMDVjNmM5OWZiOTQ0MGZkYzBkN2EgbGVnYWN5LXRydW5rCis1OTkwMSA0MDNjZmNhOTg2M2ZkMmUzMDhiMDQ1ZTJhZjE4YzBmNmQyYWZjYTQ4IHB5M2sKKzU5OTAyIDVkZWM0YWRlOGZhOTUyODRiMDYwZTBjNTQzZjMwNDM2YTEwZDAwN2IgcHkzay1pbXBvcnRob29rCis1OTkwMyA4MDU4ZTE2ODIwZWY4NjBlNGM5MGM0N2UwNzBhYjNiZjc2Zjg5MDM4IGxlZ2FjeS10cnVuaworNTk5MDQgMzU0YmUwZGFmZTU0YjIyMmFmMjVhOTNkYzk4NWVmYmMyODdjOWI1NyBsZWdhY3ktdHJ1bmsKKzU5OTA1IDNjZDliODc3ZWFlMDlhMzViOWNjZDc5NWRlNzVkODM5NzI5YTQ4N2YgbGVnYWN5LXRydW5rCis1OTkwNiA3ODUyMzdmYTVmNDAxNDQ0YzMxZDYxN2RkYzA2ZTAxMGEzOWU4ZmE2IGxlZ2FjeS10cnVuaworNTk5MDcgNmIwYjVlZGZiMWI3ODVjMTY5MWM3Y2Y2OWQ1OTgyNzExYzQ5OWRlYyBsZWdhY3ktdHJ1bmsKKzU5OTA4IDA2ZjlmNTFhYjhjMDNkZGNiYjFkMjlhNjkzZDI2MGM4MTQzNmEyMDQgcHkzaworNTk5MDkgYmUwNGVlNGM0ZmQ3MzQ1ODY5Yzk4MDNkNWQxMGI4MWRmYTE5MmJhMiBsZWdhY3ktdHJ1bmsKKzU5OTEwIDJhZDNlMzVjNTgyNWMzN2YyOGI3ODgyYmFiZGEzMzM3NTM1YzgxNzEgbGVnYWN5LXRydW5rCis1OTkxMSBhZjNhMGNhMWFiNGEwMmJlMmE1OTMxODZhNDMwNDYzZGNiZjM3YjkxIGxlZ2FjeS10cnVuaworNTk5MTIgNjJmNmQ3ODBhMTFkZTAzNzM0NjM3NWFmOGY1ZmNiOTY2MmQ4YmFjZSBsZWdhY3ktdHJ1bmsKKzU5OTEzIDNjYzNhNTVkMTIzMzQ1MTNmYTczNmE1MDQ1NzNlN2I2MjE4YWVkYWEgbGVnYWN5LXRydW5rCis1OTkxNCA5NDI2MWYzMDI3YTU5M2RlZjQ0YTM1ODZkMTMwYjhkNjE0OGRiOWZlIHB5M2sKKzU5OTE5IDU5YTgyY2RmYTEzN2U4OGI4Y2MzNmQ2NTUwMzVjYTdmNGU5YjcwOTMgbGVnYWN5LXRydW5rCis1OTkyMCBhYWRjZGE3YTRiZjdhZjRlZTNhMDliNTAxMmU0ZjRhMmQ1NTY4OTYxIGxlZ2FjeS10cnVuaworNTk5MjEgZDhlNDM0MmMxNDVlNmI1YTg4YTE0OTFjNTRmMWYxZjE5ZGM2OTUyYSBweTNrCis1OTkyMiBlN2I4MjEwMWI5NzBmOGVjNWIxMGU1NWU5ZDlkOTE4MmQ0MmUzMjliIHB5M2staW1wb3J0aG9vaworNTk5MjMgNzk1NzlmYThkNzUyZjJiZmE5NDQzNDg0ZjRhNjc2MDFiNzdlYTY1MCBsZWdhY3ktdHJ1bmsKKzU5OTI0IGYwYjkzM2YxMjk4MjY3ZDhlNmNhMzU1MTM2MjgxNzljNzBiZWI0ZTcgbGVnYWN5LXRydW5rCis1OTkyNSBhMjIwMjExZjgzMzEzMTYwMjkxYmRmNWZhNzY2NTZlMjMwZjM5MDUyIGxlZ2FjeS10cnVuaworNTk5MjYgZDU4MjRmZGQ5YTE1ZjBmZDc2NjljYzc4Y2IxYzJjZDExOWE1YmU1YSByZWxlYXNlMjUtbWFpbnQKKzU5OTI3IDc3NmI0ZTA1OWY4MzZhMWZjMTI0MWNhZDczYmRkZTZiMWI4MzZmYzUgbGVnYWN5LXRydW5rCis1OTkyOCAzYWYzZmQzODg3ZWUyM2U0OTVjMjIyNTQwZmIxMTBlY2JkOGFiY2I5IGxlZ2FjeS10cnVuaworNTk5MjkgN2I3OTg1NDhhNGFkZTRkMDI2ZjVlOWQ4ZDljOGIyNjAzYmMyMzlmNiBsZWdhY3ktdHJ1bmsKKzU5OTMwIDdkYmMzZjQyNzhlYmQzNGZiNzFmMDQ4MGUyNjdjOWE4ZjA4N2RjODUgbGVnYWN5LXRydW5rCis1OTkzMSAyNzNkMzdiZjIzZDNiZTJkMzJhYzI4OGNhOThiMmVjZDBiNjkzMjYxIGxlZ2FjeS10cnVuaworNTk5MzIgYTU0Y2M0NzcyZTczNzM4MzViOTZjZTY4NmMyODlmY2FiNDAyZDhhMCBsZWdhY3ktdHJ1bmsKKzU5OTMzIDVhNzFkY2M3MWVmZjc2Mzk0ZDM1OTk5Mjc3MmEwZDlhMGQ5MmE3OTQgcHkzaworNTk5MzQgNTM1MTEwNWZmODA4YTMxNzBhNjNjNmVmN2U3YzhkODA5NWFiYmNlMyBweTNrCis1OTkzNSA0Y2E4YWNjOWJlZDcxNTQ4OTI3ZWE4Mjc1ZmU5Y2EwMGI0ZWRlYTU4IGxlZ2FjeS10cnVuaworNTk5MzYgM2Y2NWJjYzg5NjZmMjlkODkwOGUwZWNhZTE1NmVlOWRjMjU4OGIyMSBsZWdhY3ktdHJ1bmsKKzU5OTM3IGI2NzJjMDE1YzJkYjg0ZmY0Njc5NjMxMzY3MDUyOGQzMDdkMDRlNjggbGVnYWN5LXRydW5rCis1OTkzOCA5NDY4ZTYwNjM2MTczNGUxNWNjZmEwYWMwY2U5NThlNGI5YjkzNTRhIGxlZ2FjeS10cnVuaworNTk5MzkgYzczNzY4ZDk3N2E5ZjkyYmI5Y2RiOTA0NzhkNTcxY2FkMTk5MGQyYiBsZWdhY3ktdHJ1bmsKKzU5OTQwIDg5NGQyYWQ0NTAyNjllN2UwNWQ4OTk4N2YzZGQ2N2UxODA4ZGEwOTcgbGVnYWN5LXRydW5rCis1OTk0MSBmMmQ4MjBiNWFlMmFlNjQzNzA2MGJmMzg0MDkyNjAxYTk1OTRmY2YxIHB5M2staW1wb3J0aG9vaworNTk5NDIgYzI1NzYwYzIxMzk3YTFlNDIzOTBlMzM2NGFlZWM5Y2FhYjVhNTVlZSBweTNrCis1OTk0MyA0MjkzYTA2YWZkNzI3Zjc1MzYwMTVmN2RmM2QyYTFjMjcyZWM5YjkwIGxlZ2FjeS10cnVuaworNTk5NDQgMzg3ZDQ4YzNhMGIzZTdjMjc0MTg3MWIxOWExMWI3YjI3YzZmYThhMyBsZWdhY3ktdHJ1bmsKKzU5OTQ1IDkxOTI4ZDk5ZWJiMDkyNzA3YjQ2MmQ2Y2U4YTU0OWFmODFiNjUzYTEgcHkzaworNTk5NDYgNDI2ZmVmOGJhZGUyZGQ3YTg2YzhhNjhkMDBiNDA5NTE2NjhhYzdiOCBsZWdhY3ktdHJ1bmsKKzU5OTQ3IGI0MDk5NDFjN2E1MWUxMDA5ZGIxNDE4YzEwMjMzNTgyNzNkM2RiY2UgbGVnYWN5LXRydW5rCis1OTk0OCA3ZTQxZTFjNDZiNTdiMGVhNmEyOGVmMmFjOTZlY2MwOWFlMGMwNzI1IGxlZ2FjeS10cnVuaworNTk5NDkgOWI2ZDM0OGNlYzg3ZTRiYTRjMzBlM2E3ZDhmZDczZDQxNjIyOGMzYyBsZWdhY3ktdHJ1bmsKKzU5OTUwIGQ2NmU1ODM3YWE1N2MzMjJlMWRmZTYwMTMwNWMxZjVlOTQ2ZTZhNGQgbGVnYWN5LXRydW5rCis1OTk1MSAzM2Y2NzA5MDc1ZTgzYzhhN2U1YzJlNjNhMGYwMTJiMjhiZDRmZmU4IGxlZ2FjeS10cnVuaworNTk5NTIgMzIyYzIzOGE2NGU1MjczODVhMzU5NjdmNWZjZGM3ZTk4ODNiMmQzNyBsZWdhY3ktdHJ1bmsKKzU5OTUzIDYyZWFjZTY3ODBmNjU4Y2RlNTFhNjVhMWU1YTBjZTliNThkMmNkNzcgbGVnYWN5LXRydW5rCis1OTk1NCAxMTU0MTU4YTE5OWY3Nzk0ZjI1ODU1ZDllZjcyMWM0NzcxYzY1YmU1IHB5M2sKKzU5OTU4IDYyN2YyZTIyNzNiOTRmZTk4YmI5MWQ3M2UxOTlhNzRkZDkzMGExNjcgcHkzaworNTk5NTkgMDA1MDIxYmY1YWNlYzczYzMyM2VkYzQ3ZGE4OTllMzY2MzFiZTA2NSBsZWdhY3ktdHJ1bmsKKzU5OTYwIDgyN2YwNDUxNzM0ZmQ5NjY0NzdhZjNiYmNkNWVlZjU1YTdhNzc1NGUgcmVsZWFzZTI1LW1haW50Cis1OTk2MSA1ZGZkZWQ5YWQ4YTBjYzZkZmViYTc2ODUzY2E5ZTNjZDlkNzc0ODFlIGxlZ2FjeS10cnVuaworNTk5NjIgNmFmMTk0YzQ5NGNjMmZkZjNmNzIzNDJjMDQ5ZTVkYzU3NzlhYWNmOSBsZWdhY3ktdHJ1bmsKKzU5OTYzIDc3NGE5NTk3MjI4ZTBhZGI3ZjhlMWI5YTViNjkzYjdkNjQ5ZTY1YTUgbGVnYWN5LXRydW5rCis1OTk2NCBjYWI4NDEyOWRjY2I1NDU2NDA2M2YxNjM5NjE4NTY1ZmYzODdlOGMwIGxlZ2FjeS10cnVuaworNTk5NjUgZjAzNGViNWQ4Y2RmNDlhYzUxMTM5M2ZjOWY5NmM2ZDZhNGM3YmM0NiBweTNrCis1OTk2NiAzNTdiMzY1NTYwZjRiNzkyMzhlOTBmODQ5M2U0NGViYzlkNzlmZWM2IHB5M2sKKzU5OTY3IGEwMGQ5MDAwNGEyNTE5NmFkYTZjZmNhMjA3NzYxMmU3ZGQ4NGNmYzMgbGVnYWN5LXRydW5rCis1OTk2OCBlNTExY2NmMmZmYmU2N2ExMmUyMTQyMzkwYTY4MzZjZDU3NmIyZTA1IGxlZ2FjeS10cnVuaworNTk5NjkgZDAyMDhkNjVkYzIyYzUwMTA4YTY3MzllOGEzNWE5NzkzOTllYWU1YiBsZWdhY3ktdHJ1bmsKKzU5OTcwIDg2ODlmNDZkMjVkNmFmNTVjOGNiZTRkNWYxNzVkZjhjMTVmZjc5YzQgbGVnYWN5LXRydW5rCis1OTk3MSAxNDg1NGM3YzZhMjQ4NzBhZGI1ODhkMmE2MTVhNzU1NzJiM2ZmYTY5IGxlZ2FjeS10cnVuaworNTk5NzIgNWM3YjdmYmVhNjgxYjE1ZDg0ZTQzMTI5OTgwZjgzY2ViNTk5ODg0ZSBsZWdhY3ktdHJ1bmsKKzU5OTczIDBiYjZjZjc3Yzg1YWY4NTM0ZDBmZWVlY2JhNDQ0YWVhZjE5MWEzMTggbGVnYWN5LXRydW5rCis1OTk3NCA0NmU3MzFiYjZhODVmMWNlZGM3NjQ4NzRjOWZhYjEyZDY0YmU1MmZhIGxlZ2FjeS10cnVuaworNTk5NzggNTlmMjliMDEzNmZiNWY2MTg0OTdmMDlmOGE0NTJhNTA2NGI0MGIzYSBsZWdhY3ktdHJ1bmsKKzU5OTc5IGJmYThkMjI1NzgyMzIyM2RiN2M0YTNkZGNlNjYxNDQ0NDFhZTFmNzggcHkzaworNTk5ODQgMjhjODFjMjczODllMjU0MzM5YTkwYzMxMGFiNTc3NDdhZTMyMzIzMSBsZWdhY3ktdHJ1bmsKKzU5OTg2IDZlNTY3NWNhMjU1OWM2YTczN2VmMWI0NmI4MTE0OWY3NzFhN2Q0N2EgcHkzaworNTk5ODcgYzc5MDU4N2YyOTkyNWMxNTE0NTEwNDBkMzk0MzcyYWU2ODdkNjY5YSBsZWdhY3ktdHJ1bmsKKzU5OTg4IGNiOTA0MDRhNDZhZDE4YTEyMmJmMTgyYWQyNDE3ZTljZjRmYTVhNTAgbGVnYWN5LXRydW5rCis1OTk4OSBmMzAyY2Y5OTk2MzNlYjdjNmQyYjBlMGYyNjg0ZjRkZWZiYzkwMGE1IGxlZ2FjeS10cnVuaworNTk5OTAgNmYwNDljYTU1ZTA2YjJjMTA4ZWMwZDhkMGU4NGJiMGI4MjNkYzM4NSBweTNrCis1OTk5MSA5OTJhNjExYjJlMzE0NjZjMTcwNGJhN2VlNmMxOTZiYjg0YjRmMDFjIHB5M2sKKzU5OTkyIDJmMTFmN2Q5YmRjODRlMGQ2YmJhMmVmZTNjZTVhNDlmYzBjZTlmYTUgbGVnYWN5LXRydW5rCis1OTk5MyA3MWM3OTllYjI0YjI0ODBhZGZiNzdmNDNkZDI3NWZmYTRlMjFhODgwIGxlZ2FjeS10cnVuaworNTk5OTQgN2YyZjIxYWEzNjkwNmE5ZGQxZTc4NTdjODllNzllOTQxYTgxOGJhOCBweTNrLWltcG9ydGhvb2sKKzU5OTk1IGIyM2I0NzdkNzg5OWE2NjhmNjg0MzQ5NGE2NzEzNTk0NTg5MjQzODMgcHkzay1pbXBvcnRob29rCis1OTk5OCBjNDM4M2Q3NjVjYTcxNzgzNzQ4NGEzYzJhYzVkMzcxYTgwMDY2NDk4IGxlZ2FjeS10cnVuaworNTk5OTkgYTRhMDI0MzJlNzMzM2U5OWVmMDllYzU3YjM5YTI5ZWFhMGU3NWI4YyBsZWdhY3ktdHJ1bmsKKzYwMDAwIDQxZjFiM2NiMGJiMTAzNTViMjQ5NWY5MTNlZWI0OTZmMzk3NDMxNGMgcmVsZWFzZTI1LW1haW50Cis2MDAwMSAyZjdmM2Y1ZTczZDNjNWVhYTE0MDJjOTFhZmUwZTRjZTE4YWIyNzI0IGxlZ2FjeS10cnVuaworNjAwMDIgM2Q3MDQyODkzY2M1MDQ2Y2VkN2ExOTZkNThiNmQyMGExZjU5ZTllNyByZWxlYXNlMjUtbWFpbnQKKzYwMDAzIGNhZjU4YzgzMTQ5OWNjN2Q1OTQ1MzU5MTg5NmQwMzEwZWQ5NWZkMjcgbGVnYWN5LXRydW5rCis2MDAwNCBhMmYzZDQ5OWNlMTJlZjRjZTIxYjU2YmNiMWUwOWJhM2M1NjIyNjllIGxlZ2FjeS10cnVuaworNjAwMDYgMjdkNTk2NzViOTJjNmY3YTBkMDA1ZWJhODljYWE4NWQ1ZGUwNGJiMCBsZWdhY3ktdHJ1bmsKKzYwMDA3IGYxMjhlNmViZjkwZjgxZDBmZDJhMzA1OGJjN2ZhM2NhYjY2YjMwZjMgbGVnYWN5LXRydW5rCis2MDAwOCAyYzliYzYxZDRmNzNmMzc2ZTM1ODk1ZmZkZDcwZmQ5MTFiMzEwNjMwIGxlZ2FjeS10cnVuaworNjAwMDkgYzc4NGYyMGM5NjdlODQ0YmVkYmIyZmQzNzQxZDI5YmNjYWU5MmE4ZCBsZWdhY3ktdHJ1bmsKKzYwMDEwIGFhNWNmNjM5NDY0MWRjMWQzYTJiZjBkNjM3NGRiNmFjNGVlODA1YmMgbGVnYWN5LXRydW5rCis2MDAxMSA5OTAwMGVhMjFmZjI3OGFiYjg5NDlkYWVjNzBhNzE1NzRlY2RkZDczIGxlZ2FjeS10cnVuaworNjAwMTIgYjQ2OWU5MDI3M2ViMDcyZGY3ZjA0ZGVlZTMyYzQ3OTE1OTI5ZDNiNSBweTNrCis2MDAxMyBkMGY3OTYzY2Y4YjAzMzQ4Y2JjYzQ1MzA4NjcyMDU4NjU0MDNhMDg0IGxlZ2FjeS10cnVuaworNjAwMTQgMjZiNjFhNWRmMTFiNjEyZDMxMTE2NjI3NGE3MmFlNjI0OWQzMTU5ZiBweTNrCis2MDAxNSBjYjBkY2Q2ZTNiMTE0N2YzYWNhM2IyZTI3MDVmNmIxYjkwYTg4NDY2IGxlZ2FjeS10cnVuaworNjAwMTYgM2IzODU2YjM2MjFiMjA4OTVkYWU0ZjM0YTMyMTJkNTg4MTVkODRhYyBweTNrLWltcG9ydGhvb2sKKzYwMDE3IGRmNzFmY2RkYjc1ZWFiMTdhMDVmZTI2MWU0MDIzMzAyYTJlZDY4OWQgcmVsZWFzZTI1LW1haW50Cis2MDAxOCBhMzgwMjg1M2MzMTc2MjY2Y2Y3YjI2MGQwMGQyZTQ5MDljMTgyZDg1IGxlZ2FjeS10cnVuaworNjAwMTkgMTcwY2IyNzM5YTM5MGUyNzgzMjI5NDQ2MjVlZjFiOTViOGNlYzIyZSBsZWdhY3ktdHJ1bmsKKzYwMDIwIDA3NjZlZmQyYTZkNjNlNjNhM2IzZGRiNTMzZGRmMmNhYWU4N2E2MDAgbGVnYWN5LXRydW5rCis2MDAyMSBkODE2YmMwYzQwYjY3NTk2ZTI1MzVlMDQ3NDU2YWI1YTE2YjdjNzc2IGxlZ2FjeS10cnVuaworNjAwMjIgNzE3MjY1ZWQyMDQxYjMxOTdjMjVlNjFjZjViMmUxNjIxODgyNWU4YyBsZWdhY3ktdHJ1bmsKKzYwMDIzIDNiNGJjNGM3MDRjMTRmNjkwYmY0MmEwYWRkZjY1ZGZiODVjZTc0NmYgcHkzaworNjAwMjQgMjIyYjkxOGNlMDkyNGNlZDZlZTdkYjE5Y2QzYTRiZTVmMGFjMmU2NiBsZWdhY3ktdHJ1bmsKKzYwMDI1IDI5ZTRjODZkNTA3MWE2YzhlNWJhMjgxMjAxZTE4MWIyMjM1OTA3YzkgbGVnYWN5LXRydW5rCis2MDAyNiAwNzZjOGFiYmQ1NGY3ODk5ZDgyMDQ1OTU1NjUyYTBjOTE2YWJlZGVhIGxlZ2FjeS10cnVuaworNjAwMjggOGI0OTU0MDNiYTIzNWJkYThlM2U4M2JiMGFhNzA3M2NhNDg0N2VkMiBsZWdhY3ktdHJ1bmsKKzYwMDI5IDQyOGRkODUxYmI4YWU4MGZkM2IxM2IyMjc4MzhiNGQzZmMyNTdkZDEgbGVnYWN5LXRydW5rCis2MDAzMCBiYjMzYjMyZGUzYTBiOTM3MjE1NDI5M2RiYjE5NmMyYTRlMDdiNTRkIGxlZ2FjeS10cnVuaworNjAwMzEgODVjZjIyMGYxNmQ4NWVlNDA0NjY4MTk3NDYzMjJiOGVkMzU5YmU4MyBsZWdhY3ktdHJ1bmsKKzYwMDMzIGEwZGQwOTJiYjZjMzZlN2M2ZDNiNThiNDY5Nzk5MzU0NDc0MDQ1OTkgbGVnYWN5LXRydW5rCis2MDAzNCA0ZDYxYzg4NzYyNGQzNWJiNmNjNjMwMjFiNzZiMjk3NWU5M2JmNjI4IGxlZ2FjeS10cnVuaworNjAwMzUgMjZhODZjMjlhZDYwMGE2ODhlNGE0OTRjOWE0YWVlZDQ4Mjg2YjRlMyBsZWdhY3ktdHJ1bmsKKzYwMDM2IDg0MGU4N2UxODMwNjk0MGI4MGM3MDViMzkyYzM0ZDg2M2VmNTVlNGYgbGVnYWN5LXRydW5rCis2MDAzOCBiNDAwM2I2YzZkMTM3ZWY5NTRjNDczMzZkY2NjNWY5NmUzZjUzYTcyIGxlZ2FjeS10cnVuaworNjAwNDEgYTNiZjBlMjRiOTFlNjk0ZWY5NGM0ODU2N2YwOTFmYjM5MDZiZGU0NyBsZWdhY3ktdHJ1bmsKKzYwMDQyIDc5YmFiYjRjY2VjODUyZmZmZDkzYjk2MTMxNzg2ZTdkMzQxMGVjOWMgbGVnYWN5LXRydW5rCis2MDA0MyBiYmY0ODQ1ODEwNDM3ZDY2YjYxNjg3ZmU3M2I3ODc1NGM4OWIwMmI1IGxlZ2FjeS10cnVuaworNjAwNDQgMTRkNDEwNDk3NmZjYzdkNDFjODc5N2IwMTA2YTcwNDVmZDY4ODhhNiBweTNrCis2MDA0OCAyOTQ2MDIwNTYwZTczZjk1OTNjNDAxMGY0ZmQ5NzYzNjEyODgxZWI0IGxlZ2FjeS10cnVuaworNjAwNDkgZDk4MzNkMmJmNDY5NWZmYzY1YTc4MmE5Yzg5ZTJjNzM2MmEyN2ZmNiBsZWdhY3ktdHJ1bmsKKzYwMDUwIGRiZjA4NTY3NzZkZDdjM2MyYmY5ZjZlZDdlNGYyNTRkZTY3MTU3ZDAgbGVnYWN5LXRydW5rCis2MDA1MSA5N2E3YzEyNmQwNGViZjY2NTUxMmE1MDBhM2JlNThkODY1YmE2ODNhIGxlZ2FjeS10cnVuaworNjAwNTIgOGRhOWViZjczMDI2NDdlY2FiNTM5NDkxNDU3MjNjN2Y0YzM2Mjk5OCBsZWdhY3ktdHJ1bmsKKzYwMDUzIDRhNjc2NzNlMzQ4MWRjMTA0ZTVlNjg3ZTViZjNiMzdjYmNmMDA3NjIgcHkzaworNjAwNTQgNTVkZGIxNjZmMWQxYWEzMmI0MTQwZWZmNjE4MGMwZWNiMDFkYjRkOSBsZWdhY3ktdHJ1bmsKKzYwMDU1IDNmNDBhZDNjMTNkZDdlYzJiNGNlYjI0NzkxNGY0OTYxMmViZDlhM2YgcHkzay1jdHlwZXMtcGVwMzExOAorNjAwNTYgNzY1ZTU3YzAwMWIxYTExZWJiZmUzMGU3NjM4MzcyZWE5ZTkwODM5MyByZWxlYXNlMjUtbWFpbnQKKzYwMDU3IDU4MzAzZWQ3MmJhMWE3YmYxMjVlZjY2MDk2NDI4ZDQzNzBjOGQ2ZjMgbGVnYWN5LXRydW5rCis2MDA1OCAxM2Y3NGM4NTQ0Y2M4YTkyMWRlNmI0ZmM2MzE2NDA0YWIzYzk5MDJkIGxlZ2FjeS10cnVuaworNjAwNTkgZWI4ZWY5NjllZDY4YTVmNzg2ZmE0MjlhZTM0MDcwZmQzYWNhMzJiNiBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDA2MCBkN2E4N2M3ZjE0ZDllZTk3NmY0NTZlN2Y5OWVlMTI1ZmM3MzUxN2E3IHJlbGVhc2UyNS1tYWludAorNjAwNjMgYTUwNzJiYTM1ZjBhMGYzYWQxNTY5NDUxMDhmNDY3MmNmOGJmY2U3YiBsZWdhY3ktdHJ1bmsKKzYwMDY0IDIxNzk4MzNjOWM5YTU5MDhmMzljMTA2MjFkZDdkZDI0MzEzZTQ3NTEgcmVsZWFzZTI1LW1haW50Cis2MDA2NyAwYjdiNjJkZDRkY2JkMjgzZjc2ZjExMjM1YTIwMWQwMmYxNTg5NTU1IHB5M2sKKzYwMDY4IGM0NzA5YjgxYWJkZWI2YzdjMTZjY2I2MGFhYTE5N2VjNzk1ZWQ0NDQgbGVnYWN5LXRydW5rCis2MDA2OSBmZWJkZTNjYWYyOTEyNmM1M2IyY2NmNTA0NzczMTRhZjljM2NhZjJhIGxlZ2FjeS10cnVuaworNjAwNzAgZjI3OTdlMDcwOWUzOGNlMTRkZjNjYjQ0NTRkOTkzZWZmMzk3MjQ2NSBsZWdhY3ktdHJ1bmsKKzYwMDcxIDNkNzJmNTIwOWU2N2Q1NDk4MjUzYTE4NjU0ZTJjODc2YjcwOTk2MDcgbGVnYWN5LXRydW5rCis2MDA3MiBmOTc3NTQzODM2OWFiNjExNjFiYWE0NTUwYmYzZjY2ZWY5ZGY2NTU2IHB5M2stY3R5cGVzLXBlcDMxMTgKKzYwMDczIGNlMzI2YWZkZjA5ODlmY2I2MGQ3ZDE4ZDg5NWE1YTliMzY2NWE5ZjAgbGVnYWN5LXRydW5rCis2MDA3NCBjYzBhMjk2MTE5NWVmMzgxYWNhZGI1MjU1YWY4MTE0YWEyOTE5ZWY5IGxlZ2FjeS10cnVuaworNjAwNzUgNzNiNWU5MzllMDU4MGRkYmU4MTA1MDFiODkyYTBiYzljNWNkMjVmOCBsZWdhY3ktdHJ1bmsKKzYwMDc2IDUyZTgyMTQxOGE3OTliNTI0YWQ4MzU4MTE1OTlhNjU3YjQ0MGJiMDMgbGVnYWN5LXRydW5rCis2MDA3NyA4ZWRiZTAyNWFlZDU3MTI4ZjEzODc1YmU1NTQ1OGNjMTU3OWNjNzg3IGxlZ2FjeS10cnVuaworNjAwNzggYzdjYjU4MDA2MDZlMmY2ZGUwM2JiOTJiZGVkN2FlYmExMTJkMDQ4OCBsZWdhY3ktdHJ1bmsKKzYwMDc5IGE2ZjlhMmJhODk2MmE0NjI5NDNiNmEzNDM1ZDQ0NjExZWYxNWI3NDMgcHkzaworNjAwODAgY2RlNDFiZDA4ZTVlMjRjZDkzOGQ2MjI3NTU4ZDA0N2Y1YTBjYjk5ZSBsZWdhY3ktdHJ1bmsKKzYwMDgxIGUzZmRiYzgwOTk5OTgwODhiZDA3YWJlNGQwMmIxMmM0NzY0NGZjNGYgbGVnYWN5LXRydW5rCis2MDA4MiA4NTliZjg1YTU1NmE5OGI4MjBiMDAxNjgyZDM4YWZlMDQ5NTBjMWEwIGxlZ2FjeS10cnVuaworNjAwODMgMGZlOTM2Yjc3MTE0MjM1MTRhY2UwNzhjNWU1YmZiNDQ2N2IwN2VjYSBsZWdhY3ktdHJ1bmsKKzYwMDg0IGFmYTBlZjM3OTE4NjVkMThjZWI3MTM4ZDYzNTE4MWYxYmNlMzJkYmMgbGVnYWN5LXRydW5rCis2MDA4NSBhMjY1YmFhNzkxMDAzNDNiYTE1Yjg1ZDA1ODc1NDNlMzNkZjJjMzY2IGxlZ2FjeS10cnVuaworNjAwODYgODAzNjY2MjFjNTAyMjk4MWI3MjNhODY4YmEyNGE1ZTMzMjYwMjI1ZiBsZWdhY3ktdHJ1bmsKKzYwMDg3IDljMGE5MTNhZGNkNGI4YTk2ZTZiOWY5MWNlOTI1NDIxYTVlODIyZWYgbGVnYWN5LXRydW5rCis2MDA4OCBlNGU2ZmM5Yzk3NzVkODIwMjQzODI5YjE5NDYzNzFlMWZiZjE1ZjhiIGxlZ2FjeS10cnVuaworNjAwODkgOGI1NTMyMTE2MTE1MmJiMGZjMmZiMDI4NGZhMjM3YjlkYjU4M2FhZSBsZWdhY3ktdHJ1bmsKKzYwMDkwIDM2MjVlZWQ0ZjBjZDliZThjODNiNTY4ZmY0N2UzYTFhMWRmYTQwNTggcHkzaworNjAwOTEgODc3YjQ2NzliOWZlNjliNDA1YmU1ODNlZDA4ZjY2MTJkYzQ2MThhYSBsZWdhY3ktdHJ1bmsKKzYwMDkyIDYxYTExY2M5NTYzMmU4NDE1MDVmMmZhZTEzMzVjNmNmODA4YjE5NDYgbGVnYWN5LXRydW5rCis2MDA5MyAxNzAwOWQ2MjExYjgzNmE2NjAxNDZkZjM3MGIzN2ViZmY1MmNkZmQ4IGxlZ2FjeS10cnVuaworNjAwOTQgY2EyNjgzYTY3OTQzMTNhM2ZlYzE3NWQ3NDA1ODdjNTM3MzllMjM4YyBweTNrCis2MDA5NSA0YTdhZmZmNTJlYTcxZjQ4N2EyMWVkMTk2ODViYWFhOTdjYmNkMWVlIGxlZ2FjeS10cnVuaworNjAwOTYgYjMxMDIwMDZkZDdlYzlmY2VjZTM4MjI4ZWYxMjdkN2MxMGRhYTczOSByZWxlYXNlMjUtbWFpbnQKKzYwMDk3IGI1MjBkMzNiZWUwNjE1NGY5N2M1YWVlZjJlMDc3OTZhNzVkZDk4ZTYgbGVnYWN5LXRydW5rCis2MDA5OCA0YWM0ODQyNDliZDFlMWZkYzYyMTFiNjE2YjFjNmNmOTFhZjBhYWY1IHJlbGVhc2UyNS1tYWludAorNjAwOTkgNGYzNTExOGVlZDNiOGYyMTYyNWM3ZmI1MDNkNmNjNWU3NjQ1MmM3NyBsZWdhY3ktdHJ1bmsKKzYwMTAwIDg4ZjhmMTUyYTBiMzMyYzJkMGI5MTQ3ZDAyMTkxYmFmOGE1YTQ1NTQgcHkzaworNjAxMDEgM2M5Y2NjMzJkYTlhZmU2NDQ5NzBhNzdmZmI0OGEzYmRiZTExYmZkMyBsZWdhY3ktdHJ1bmsKKzYwMTAyIDIxMDMyM2UyYTkyNzI2ZDRiY2JlNTNiYzZmYmUxOTcyZDdiMTRkNDQgbGVnYWN5LXRydW5rCis2MDEwMyAxNTUzNjg2NTE5OGFiMjE5NjUwYzUwYjk4N2RmNzg2MWQyNzcwOWI2IGxlZ2FjeS10cnVuaworNjAxMDQgYjRkMDNhOTJiZGRmOWNiY2I3Y2MwNWNkNzI3NjE4NDM0MGNmMTY1YiBsZWdhY3ktdHJ1bmsKKzYwMTA1IDNkMTMxYzgzOGYwOWI4YTMwMTFlNDMwOGRjOTNiZTJiNGNiYjFkNzcgbGVnYWN5LXRydW5rCis2MDEwNiBkOGMxM2VjYjZlODU5ZmVlNmRjMTlkZjhmZDRjYmYzMWUwYWRhZDkxIGxlZ2FjeS10cnVuaworNjAxMDcgYmRhNDllYjQ2MDc0OWY4NDMwNzk1ZjI0ZWYyZmQ2YzNhZjM4NmU0NyByZWxlYXNlMjUtbWFpbnQKKzYwMTA4IDE3Zjg0NTMzMjc3ODQxNTQ1YWZjMTc0OWJmODlhMTNlZTIzNjkxMzUgcHkzay1jdHlwZXMtcGVwMzExOAorNjAxMDkgMTNkYzY1ZmU4NTk5ZjA4YThkNGFlNWRmNDU2MDBlY2U3ZjA3MjM2YiBsZWdhY3ktdHJ1bmsKKzYwMTEwIGVjMDJkYmU2YjA1MTAxYjYxM2FhZTUzNmUxMTA0NTZiMTE5YTU0NGUgbGVnYWN5LXRydW5rCis2MDExMSA1ZTY2MDMwZjFhNjdhNDY5NTQ4NDc1YmI4ZjBhMDhmODgwNjIxNDJjIGxlZ2FjeS10cnVuaworNjAxMTIgYWMyZWE5NTUyMjkzMGIyYzIxYzZkYmRlZTg2ZTc3NzE0MTcyY2VmMyBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDExMyAwYWNlNzQ3Njc0NzhjZjY3ZTZiMDc0MmVkMWY5MDRhMGNjNTMzNzljIHJlbGVhc2UyNS1tYWludAorNjAxMTQgNDc5NjU4OGQ5ZjlhY2I3NTEzNzUyNjc3MzM2YzNjZjZiYTI3ZWM4YiByZWxlYXNlMjQtbWFpbnQKKzYwMTE1IGMyMzg5MmY1YTY5ZjE2ZjgxYjExZGY3YzgwYjAwYzZkNmY5OTU2MzYgbGVnYWN5LXRydW5rCis2MDExNiAxMTQ4M2E2NzNhNDVlZWQ0Y2I0NDI1NTI1ZDBkY2NjZGQ5ZjczZjFmIGxlZ2FjeS10cnVuaworNjAxMTcgNjhmNWNjOTViNzBhNWU2ZjljMDQ5YzlhODE2YTRjM2QxOWRmNmE0YyByZWxlYXNlMjUtbWFpbnQKKzYwMTE4IDc2NDcxNTJmNzQyNDViN2VlNTI5OWIxZDg4ODZjZWU3OWEyNDQ1MjcgcmVsZWFzZTI1LW1haW50Cis2MDExOSAxZTU2MTQ1NjdhNmVkOTY5Y2Y5NDI3NzQ1YmVkYjg3YjAyYzk5NzNkIGxlZ2FjeS10cnVuaworNjAxMjAgODE2YTdiZGJmNjllOGZjMThjODlmOGY5N2UwZTZiMWI0ODQ2Y2Y0YyBsZWdhY3ktdHJ1bmsKKzYwMTIxIDExMjBiM2Q2MDZmMjhjMWM1YWQ5MDUyZDQ2NDg0YTUzODc5NTQ2MzAgbGVnYWN5LXRydW5rCis2MDEyMiA2ZDQzZmNjZGE5MGMzYTE0MmNiNGUwMjFlZTNjMDFjZGFiMDBlZDY2IGxlZ2FjeS10cnVuaworNjAxMjMgM2UwZjRhNGI5ZjU1YWU2MTIyNGE3ZTIyNWJiNTVlNjk4MWVlOGQ3NiBsZWdhY3ktdHJ1bmsKKzYwMTI0IGZhNmNlZTE0ZGNiYTQ4ZDBhYmQ1ZDAxYjRkOTA3OTE4OTdiODAwYzAgcHkzaworNjAxMjUgNTUzNDlkNGQ5ZjgzMzllNTBjNWVkNjg5Y2U4MzVmYmZkYmM4NDdkYSBweTNrCis2MDEyNiAxZThiOWU3YzM0Y2VjNTVkMDYxN2FkYjNkZjAxMjE0MGUzYWM4MjkyIHB5M2sKKzYwMTI4IDAyYTIxMjBlNWRiMjNiNWZiNGQ0ZDQ2ZjNmOTAxZjk1Zjg0MzY4ZjEgcHkzay1jdHlwZXMtcGVwMzExOAorNjAxMjkgOTQxY2YyYmYyMDBlNDM5MmEzZjhiZDg2ZjM2ZjY1MTk1YmE1ZTBlMCBweTNrCis2MDEzMCBiOTlmOTI5NWZkOWNmODg2ZGVlYmNkYzY0NmIyOTU0ODY2YTk3NWFhIHB5M2sKKzYwMTMxIDk0MmU0YjQyZGExNGQ1Njg1Y2UyYTY3ZGQ3M2IzZjVhMTdkMTkxYjUgbGVnYWN5LXRydW5rCis2MDEzMiAxNTBjYjQ4ZWRiMDdlMWJhODYxMGRmYzNjMTAwMjI3NjhjNmVlZDE2IHB5M2sKKzYwMTMzIDNmMzRkM2IwMzUwZDEzNWI5ZDYxZmNlZjUwNGM1NmEzNTBhZTlmYzkgbGVnYWN5LXRydW5rCis2MDEzNCBlMzY0NjllNmQ4YjY3ODA5YzczNGJhYmJmMTgxYTg5YzJhZWM3YmI1IGxlZ2FjeS10cnVuaworNjAxMzUgYWJjYjc5MjNkODk4ZmRhM2RlZDJiNWM2MTM0NTQzNzdjNzI2N2QxYyBsZWdhY3ktdHJ1bmsKKzYwMTM2IDE0NWIzZTYwNTM3ODQzNTI2NmU1NDNhMDA0MDhmOGMyNWQ5NmY1NjkgbGVnYWN5LXRydW5rCis2MDEzNyBiMjhmZGVmMmYwZDcxYjE4ZDY4NDQ3ZGZkYjI3YmE5OTI5YmQwODI4IGxlZ2FjeS10cnVuaworNjAxMzggNDI0Y2NjZmQyYmFhYTcyMThhOWNiNGRhZjM5YmQyMDhlNjU4YjNjNCBsZWdhY3ktdHJ1bmsKKzYwMTM5IGVhY2EyMzY3ZWNjOTkyNzhiMjA5NjY1YWI2MWFkZDA4OTQxYTI0NTMgbGVnYWN5LXRydW5rCis2MDE0MCA4NGYxYTY1OGIyMzE5MjM3MDVjZTkyODk5YjAwYzUwN2E2Mjc1YmE2IGxlZ2FjeS10cnVuaworNjAxNDEgZWY4NTljZDc1NGE3NmZhNzdlMDg0YTg1OGUzNGMyZThmNTJhMDYzYiBsZWdhY3ktdHJ1bmsKKzYwMTQyIGVhMzg5YTI2OGI1NDQ5ODA3MjdjZTM4NTk3ZDM0ZmE5OGY4Yjk5YjQgbGVnYWN5LXRydW5rCis2MDE0MyBlYWIwMGRiODBjMjc5NTlmMDIyZjRhZDljNmQwZjM4NGNkZDczYjE0IGxlZ2FjeS10cnVuaworNjAxNDQgZWY3ZDcyZDk4NDg1YmY0MTRhODYyMTY3YjBlZjI3NThiZjllMTMyYyBweTNrCis2MDE0NSBhYzk3MGY4ODMxODc1NmNlMmFkYmQ2YmQ2YmEzYzkwYjZhNmI2NDZhIGxlZ2FjeS10cnVuaworNjAxNDYgMGYwNzJlZGIzMzQzNzMyNjE3OTQ1Yzc1YmQwM2U5NWU5NmY5ZWU2MSBsZWdhY3ktdHJ1bmsKKzYwMTQ3IGMzYmY4ZjliZWFhNzI3MTI5ZTRlMDdlNzYzYzE2NzllNWI0OWNlZDEgbGVnYWN5LXRydW5rCis2MDE0OCBlYjJlYWZkYTI5Yjc2ZGQ5YjFiMmVkYjYyNzc0ZmY1OTRlODFhZmMzIGxlZ2FjeS10cnVuaworNjAxNDkgODliMTNiNjkzODY0NTQwNjVmMDViNjZlNjVhODk0NjY4MTAzMTA1ZiBsZWdhY3ktdHJ1bmsKKzYwMTUwIGVkMzNkYTJlNzRlNzBlM2UxNGZhOTlmY2Y4ODAyOTc0ZTJkNjM1NDEgcHkzaworNjAxNTEgOTQxMWIxYjkxMjE4MTJiN2JlZjZlNzg4M2I5MzViNDRlZTEyMjk1MCBsZWdhY3ktdHJ1bmsKKzYwMTUyIGZhYmM2ODhhMDhjNjhmZmJiNWQxNmE1MzQ0ZmQwOTZlYjYzMDFmZDcgbGVnYWN5LXRydW5rCis2MDE1MyBhZDZhOWRiMWZmNDVjNTQyNzkyYWEzYmQ5NTBiYzZlNWE4YjNhNDYzIGxlZ2FjeS10cnVuaworNjAxNTQgZjZkNGEyYzQ5NTMxNTBlOGM2M2MwZTgwMmViMjRiNDljZDdkZmRhNiBsZWdhY3ktdHJ1bmsKKzYwMTU1IDhmMTVmOGRlNDIxODVhYWM0YWExZGZhZWE5MmE0MGRmNWMxODRmZjMgbGVnYWN5LXRydW5rCis2MDE1NiA4YWJkMzZmM2FiN2EzYWRjODI5Zjk0NTcxODhkYjRlNzg1MjM5NjI3IGxlZ2FjeS10cnVuaworNjAxNTcgMGFlNTlmNjA4YjQ0ZjljMTFlOGMwMzYxMGVjZmViNjU2M2Q1MWVjOCBsZWdhY3ktdHJ1bmsKKzYwMTU4IDE5OTBmYTZiOWU4Mjg3ZDgxMmE3MGFkOGMxOWY2NTc0MDYxNDNjMWQgbGVnYWN5LXRydW5rCis2MDE1OSA3OWYxNTA1Mzc1MWVkODc2ZGMyNjRiNDhmODUzZGViOWE2MDYyYzYzIGxlZ2FjeS10cnVuaworNjAxNjAgZGZmZjA0MTc1M2FhMThlMDYwNTk0Njc4ZjA0NTgxMmE0ZjhjNjZlMSByZWxlYXNlMjUtbWFpbnQKKzYwMTYxIDI3ZGFjMTY1NDFkOTA5MDg2NDI0MmU0NWQwNTUxN2M2NmNlMWQwOWUgbGVnYWN5LXRydW5rCis2MDE2MiBkOTYyMTQwNTQwNmJkZWQ1NTk0ZmZiOTZhNzNiMmI0ZGYwZTM5ODZhIGxlZ2FjeS10cnVuaworNjAxNjMgYTZiMTkwYjBjZjA2OGU3ZDI0Y2M3M2RkYjE3Mzg1ZTk3YzliODBiMSBsZWdhY3ktdHJ1bmsKKzYwMTY0IDQzMmM0YWUwZmQwNDZmZTkzZjQ1M2ExMTE5OGFjMDMxYmU4OTNmZTggbGVnYWN5LXRydW5rCis2MDE2NSAzMjQxMmZjZWIxYjM0YWQ2MzQyYWY3MTE1ZGZlNTFiZjVmMGI0NmFmIGxlZ2FjeS10cnVuaworNjAxNjYgNzI5NDk1ZjdiMjIxYTQ1ZTA4ZWU4NmQxMTEyNjQ0ZTJiZWFmMjdkMyBsZWdhY3ktdHJ1bmsKKzYwMTY3IGM2OWE3YjU1YWQ2YmZmYTU5ZmRmMTcyZDZkNWY5YTg4ZWY3MDM5ZjUgbGVnYWN5LXRydW5rCis2MDE2OCA4YTliM2IwYmU1NzM5YWFlOTYyZDgyZDUwYzIwM2ZjZmNjYWMwMGZmIGxlZ2FjeS10cnVuaworNjAxNjkgMWJlNGJiZDgzNGExNGNkMmZhYjVhMDYwZGM2MzExYjQxMjMzZDA5MiByZWxlYXNlMjUtbWFpbnQKKzYwMTcwIDdjNTRmNGEyZDQzODRlY2RhMjI0ZmQxZTAzMTEwZTUyZGRjNmU3NjkgbGVnYWN5LXRydW5rCis2MDE3MSAwYjQxYTkxY2QyNjFhMzUyN2I4ZjhlMWY1NDEyZDVlYTA2NjUzYmNiIHJlbGVhc2UyNS1tYWludAorNjAxNzIgZGYyMmU2MTgwZTY3YWM5MzU4OGJmNjRhODE1YTU0MzdjM2Y2MjJjNSBsZWdhY3ktdHJ1bmsKKzYwMTczIDI5NjQzZmJlMTE1MDcwNmE0OTJhM2NhOWU4NmI1NzAwNTA4MTlkN2IgbGVnYWN5LXRydW5rCis2MDE3NSBiNzZjNzhjZGEzYWJmZTFkNzI3NWIwYmM3Y2E0ZTZlMjIyMjQxN2U3IGxlZ2FjeS10cnVuaworNjAxNzYgZmViYTVkNWNhYzIyMWYwYmQ5MTNmZDk2ZWQzMjg1MjU3OTY1YTIyNCBweTNrCis2MDE3OCBjM2Q5ZTU3ZTcxZjJjMjM0MDE5M2Q2MmQwYjVhNWEwNDg1ODNkY2NlIGxlZ2FjeS10cnVuaworNjAxNzkgNWJlYTQ1OTJjZDdhMWI3MGUwN2Q4OTVkOGQ4YzBhMjNmNjg0ZTQ1MSBsZWdhY3ktdHJ1bmsKKzYwMTgwIDEwMWQ4NmExYWY4NTg4ZmRiNGFhNDY4ODFmZDEzN2IyYzNlZDJhNjMgbGVnYWN5LXRydW5rCis2MDE4MSBlYjRiNTBmNzM5ZjZlMWE1ZDlhNGVkNDJhOGYwNjRhZjZhMzhiYWZiIGxlZ2FjeS10cnVuaworNjAxODIgMzEwN2ZkYjkwODFlNTg0ZWU2N2I1YTVhMWY4ZjlhZmQ5MzUzYzUwYyBsZWdhY3ktdHJ1bmsKKzYwMTgzIDgxMDNmMDE5ODk2N2M5NjUzNzY4MTNkYjEzODZhNmZjOGYxNmY1NGQgcmVsZWFzZTI1LW1haW50Cis2MDE4NiA3MTFhZTBlOTljMDI3ZDVlN2Y4NWQyZDlmMzhiNzFmNThlMzI4OGE3IHJlbGVhc2UyNS1tYWludAorNjAxODcgZWE2MWU5ZWRkOTc5OWI4YTU2M2RiOWRlYjk4OTZmYzg5ZGQ3ZWY1MyBsZWdhY3ktdHJ1bmsKKzYwMTg4IDdmMmI1MjVmOWRmNDhjN2U4MDc1M2U5MjIxMTgwODA5YjZiMWJiY2UgbGVnYWN5LXRydW5rCis2MDE4OSBiNWU4MDlmOTI2ZGUxODdlYzFmYTg0OTk5ZTUxY2Y2NDllOWY4YjQxIGxlZ2FjeS10cnVuaworNjAxOTAgZmU3ZDQyMzQ3NGRlYWQ5YjZkMzJmNzk1ZWE2OGY5YjVmY2VmYmE3MyBsZWdhY3ktdHJ1bmsKKzYwMTkxIGZmYWNiNDQ2NzNlYWI3NmQ5M2E5YjMyZThkNGFjMjg2NGVlYjIwMTYgcmVsZWFzZTI1LW1haW50Cis2MDE5MyAxMmI2OTEwMTE1ZTBmZjI4NzRlOWQ5MDBiNzQ3NjI1NmFmZmM0ZTNmIGxlZ2FjeS10cnVuaworNjAxOTQgOWQ4Yzg3Nzg4OWMzYWQwYjVmYWQzOGY4ZTQ2MGE2MTZiMWQ3YzZiNCByZWxlYXNlMjUtbWFpbnQKKzYwMTk1IDAwYTY4NTk2ZTUwNjUwZDQxZDgzNDNlMDcyZTlmNzA0ZTJkMmZkZDEgdHJ1bmstbWF0aAorNjAxOTYgZTA1MDRhMWM1ZjlkNzJkNzE0NGIyYjU3ZjQ5N2RiN2E1NTZhYjJkYiB0cnVuay1tYXRoCis2MDE5NyBlNDNjMmFiNmE1N2M3Njk1ZTg4YTc0YjU5NTcwNTE3MWVjMWEzMGIzIHRydW5rLW1hdGgKKzYwMTk4IDA5MTgwNjM4MWNmOGQ2YzE1MTJiYjgwOGE3YWQwNTA0OGZhYmM2MjYgbGVnYWN5LXRydW5rCis2MDE5OSBjM2NlNTZjN2VjZDExYmFkMTU1ZTdjMmFhOTMwNTNmN2Y0MTFmOWNhIGxlZ2FjeS10cnVuaworNjAyMDEgN2NhMDdmZTAyOTU4ZDEzOGI1NzMxMDM3ZmJhNzliOTBiMzE5Mjk2MCBsZWdhY3ktdHJ1bmsKKzYwMjAyIGJiN2VlM2Q4OWMyZjYwNzY4MzkwNGE1NTNlM2Q5Y2JkOGNiYjVmOGYgbGVnYWN5LXRydW5rCis2MDIwMyA1NmYwZmJhZWI2N2ZkZmM4ZTRiNjcwYTE3YzE0ZjFiOGMwMTRmYmJhIGxlZ2FjeS10cnVuaworNjAyMDQgODY3YzBhYWQ3OWMxNmE3MWVlYjE1NzIyZjcwYWQ1NmEyNDc2YTQwOSBsZWdhY3ktdHJ1bmsKKzYwMjA1IGMzZWQ2ZGE3YTE0Njg0NmMwM2NjYTVmNTg3MzM0OTVmYjgxZGFhZTUgbGVnYWN5LXRydW5rCis2MDIwNiA1Mjk4YWJiZGQ5MWNjZWM2ODM2N2M2NmI0YWZlN2JjMDgwNDgwNDk0IHB5M2sKKzYwMjA3IDZiZDQ4NDliNTQ1OGRlNTUwMGQzMDUyYWQ0YmY5ZjRmMDM4MTIyNjYgbGVnYWN5LXRydW5rCis2MDIwOCBkZjgwYzZiNjA2YTQ4NmNlNTBkOTg2ZjY2NzRhNzE3YmE4ZDg4MmQ5IGxlZ2FjeS10cnVuaworNjAyMDkgZDYyYzEyNmZlNTZhMmQ2NDMxN2I2NzUzMDlmMmQzYWNlNzA4ZjJlZSByZWxlYXNlMjUtbWFpbnQKKzYwMjEwIGZlZmFhMGU2NmZkZDBlMzUxMjEzZmJhYjA5MjkxNDFlZThiMTg4ZDcgcHkzaworNjAyMTEgZWI1OTEwMDkyZjU5YmJiNzVkYjZmMzgxMTU0MTFjYmFmM2NiOGViMSB0cnVuay1tYXRoCis2MDIxMiBjNGI5OGJjMTBiZTdlMTE2MGU1MWI5NjZkYzk5ZjhlMGU2MWUyNmM1IHRydW5rLW1hdGgKKzYwMjEzIDJlMTUxMzc2OTQxZjhiNWJiNjk2NWJiYjg3NDVkZjk2OGM3NmU2ZTYgbGVnYWN5LXRydW5rCis2MDIxNCBkZmQyMTc5M2E1YjU3NTExNjllZmU4NmMyMGRiZTljYThjZTIxNmE5IGxlZ2FjeS10cnVuaworNjAyMTUgZGZiNmYzNjdhNDA2YmJhZTllNGU4ZjY2Njk0MzA2MDZiZTBiNTRjNCByZWxlYXNlMjUtbWFpbnQKKzYwMjE2IDlhMTIxMWM3N2UwMjhiM2FiY2IzODMwYThiZDIyZDVmYmQyMGJlODUgbGVnYWN5LXRydW5rCis2MDIxNyA2OTU4MmJiMTExNGMzNmJkZmU0MzQzMjE2NzM3MWZjY2M2MzQ4MzYzIHRydW5rLW1hdGgKKzYwMjE4IGE0MDIyOWFkZmEyY2NkOGQ1MzE1OTdiODg5ZDhkYjE2MGFmZjdiNWYgdHJ1bmstbWF0aAorNjAyMTkgYjI4NTRlOTc0Y2E5NjcwZjYwYmNkYTFkYTBhOGY2YjZhMWQwMjMzOCB0cnVuay1tYXRoCis2MDIyMCBiY2NjNzY4MmM2ZDRiYTRhNTJkMmQ2NGRmYTkwZGQyN2ZmMTdiYmFjIHB5M2sKKzYwMjIxIDAwNTkyMWZjZmY0M2FkYmM4OTNiY2U3Nzc3NWY2Y2IyNWRjZGRkMTcgbGVnYWN5LXRydW5rCis2MDIyMiAxNDhjODdhNjY3YzIwMWQwNmYxYjc5MjIyZjA2MTYxN2Q1OWQxYTZmIHJlbGVhc2UyNS1tYWludAorNjAyMjMgZmRkNzRiZGVlZTE1YmQ0N2MzNzc5YmM4NTk1Y2Q0YzllZmM1NzZkNCByZWxlYXNlMjUtbWFpbnQKKzYwMjI0IDRjODMwOGFjMjBjZGQ5ZGRjMzFhZmIxZGQ5YmUyNzMyZjYwY2I4ZDcgbGVnYWN5LXRydW5rCis2MDIyNSBiOTM0ZDJlZTYzZjYzOWJkYzViY2I5ZTYxNjJlNjZmZTc5ZTljYzBjIGxlZ2FjeS10cnVuaworNjAyMjYgNzMzMzM1YjIyZjhmZDc4YTMwZmEyNGI1Mzc4Yzk2NmRkMjMwN2RiYyBsZWdhY3ktdHJ1bmsKKzYwMjI3IGQ5YTYwNzUyNTU4ZWY3ZDg0ZDI5MjQwZTEyMGU5OTExNDM5NTQ2NzcgbGVnYWN5LXRydW5rCis2MDIyOCA5NWE0ODczNTE3NDA4MGFlNTc4MjI3YTVmNzAwN2U0NmE4YTYwOWZkIGxlZ2FjeS10cnVuaworNjAyMjkgY2RjNGFlY2VkZDRjODVjZWY2ODRlMDFlMjgxZGViM2FlMDRjZmZkNSBsZWdhY3ktdHJ1bmsKKzYwMjMwIGNjNzNhOGQxOTM4YjQyZWM0YjlmZTcxZGQyZGQwYTU4ZjliMzIyMGQgbGVnYWN5LXRydW5rCis2MDIzMSAwMTJmNTE2ZDRkMjJmMzhlYmUwMjllMzllZTIxNjA1MThlODY2ZDFkIGxlZ2FjeS10cnVuaworNjAyMzIgZmVkOGMzNmQ4NzE1MGMzNzAxMmQzY2UzMDI0MjUwY2NmOWFhOWYyYyBsZWdhY3ktdHJ1bmsKKzYwMjMzIDIyYTlkOTc1N2ExNjk3Yjc5MjNjZTM3OTg1M2ExODA5NDMxODkyNTkgbGVnYWN5LXRydW5rCis2MDIzNCAwNjNlZDM3N2ZkM2Q2MmY0ZjEzNTcxNDBhYzAwNjE0M2FlNzVkZmI2IGxlZ2FjeS10cnVuaworNjAyMzUgYzBmMDQ4MzU2YzM2Yzg5MDJlMWEyODYyZmQ1NTYzOWNjNDhkNGI0MCBweTNrCis2MDIzNiBlMjJhOTJlZWM2NjIwMDY3NzVjYmNmOWFjZTY5MjBkZjg1NDgyMzNiIHB5M2sKKzYwMjM3IGYzYTlhZDQ0OGNjYWQxOWViMzcyNWYwZDkyYTI3NDQxNWY1NmQzNTYgbGVnYWN5LXRydW5rCis2MDIzOCA0MzcxNzIwOTNhMjNhMjQyMTA2YTMwOGFiM2FhYWZkM2RkNTdkYjg1IGxlZ2FjeS10cnVuaworNjAyMzkgY2JhMzA4NGIyN2U3MjY5MDY0OTQzYzdhZDJjOTc3Y2M0NWVlMWI4YSBsZWdhY3ktdHJ1bmsKKzYwMjQwIDk5OWE1ZWU5Y2QyYzNhMWY3NTEwMTU5ZjU0OWZlMmNiODZlNzhjMWUgbGVnYWN5LXRydW5rCis2MDI0MSA5NDhiYmEwZTI0N2I4OTU5MjlhYzJjZGE1YjNkYzNiMmE0MmJlNTNkIHJlbGVhc2UyNS1tYWludAorNjAyNDIgZDhhYjMyODIwYjE3ZGI1YmFjMTY2MTFlNjRhZGNjN2E1ZWJiN2JkMiByZWxlYXNlMjUtbWFpbnQKKzYwMjQzIGYyZGE3ZmNmM2EyNDRhMjA5MGRmYzkzNDk4YWRhMzRkZGRjZjVkOTIgbGVnYWN5LXRydW5rCis2MDI0NCA3ZmEzYWU5YmEwMzFkYWY2ODlhMjYyYTQ0OTIwNWUwOTYwMTliNTE2IHRydW5rLW1hdGgKKzYwMjQ1IGMzM2YyNzc5YTkzODYwNGMyOTFmY2NjMzEwMjRkMjBiMjBjNTUxMmEgcHkzaworNjAyNDYgZWJiYjdiYjAwMzNiYzM0Yzg3ZDI2YzI3YTg1ZjBiZjU4OGY0MjkzNCBsZWdhY3ktdHJ1bmsKKzYwMjQ3IGRiNjI0YjFiYTA2ZGU5YjVjODk3YWY1NjIwMzRiNTQ5OGU1NjYxY2QgcmVsZWFzZTI1LW1haW50Cis2MDI0OCAyOWZmOTA2NmRkMGM4M2RkZjQ1MGI3YjRmMDYyNmUwYWNkNzRkYWYxIGxlZ2FjeS10cnVuaworNjAyNDkgNjg1ZTk2ZDIwODgxYmFkNmRiMzQ0ZTVhMTRmMDE0NzA2NmNlYThlNSBsZWdhY3ktdHJ1bmsKKzYwMjUwIDhiZDVmMGRiN2Y1ZDEwNzBhMmQ0YzAwNGMwNDhiZDE0NjA3N2JlOTkgbGVnYWN5LXRydW5rCis2MDI1MSBhOGI3NTAyMTBiNzk5MDkxZThiMzI4MDMwYjY5MTZhNmEyNGQyODg1IHJlbGVhc2UyNS1tYWludAorNjAyNTIgNmVmM2JlNDdhNDRlN2U0NmMxZmExZjBjZjMyYzdmMDE4M2IyNzJkYyBsZWdhY3ktdHJ1bmsKKzYwMjUzIGQxNmRlNjI1MmY3ZmE0MzhlZjRmNjRhZjc4ZjNkYjVmODQ3MWYyYmIgbGVnYWN5LXRydW5rCis2MDI1NCBlOGVmYTYyZWVjMTU3ZDBmMjVkODdmYmI1NmVkZDEzMzZiY2JhYWY2IGxlZ2FjeS10cnVuaworNjAyNTUgYThjNzQxMjUzNzZkNjUxOTQ0NmY1OTQ3MTJlZGE0NTEzNzAxN2U1NiBsZWdhY3ktdHJ1bmsKKzYwMjU2IGY0YTZjMzIzNTAwYmVlMDU1MjA2ZGEwMTNmZGE2NTFmMmNlZTFlZDggbGVnYWN5LXRydW5rCis2MDI2MSBhNmYwZTRiZmMyZGQ3MGZlYjQyYjhjOGIyNWYwMWEwODc5ZDU5MjMzIHB5M2stY3R5cGVzLXBlcDMxMTgKKzYwMjYyIDdlM2FmZTkwNjQ0OTViMmIwZmViOGFhNWU0ZTVhN2NmMjMyZjAyYzEgcHkzay1jdHlwZXMtcGVwMzExOAorNjAyNjMgM2Y2MWI2NjQzYjdlZWExZGRhNTdhNzc3NTM3ZDM1YTYzZjFhZjI2ZiBsZWdhY3ktdHJ1bmsKKzYwMjY0IDc1N2E3ZjMxZTQ2MDkyYzA4YzQ2ZGRkODcwNDI2OGYwNzRlMmJlZGYgbGVnYWN5LXRydW5rCis2MDI2NSA2OWM1NzAzZDIwZmI0MTA5MzRhMWUzMGQ5Y2I2M2ZlYmMzZGE2MDI1IGxlZ2FjeS10cnVuaworNjAyNjYgZWJkYmU4ZGY2MmIwMzk4NTM0ZTkzNTUxY2I1ODcxMGFmNjdlNTdhZSBsZWdhY3ktdHJ1bmsKKzYwMjY3IDQyNjhiNzdmOGU1NjdkMGMwMzZiMzM1ODUwZjQ0MDExODQ2NDZmYmYgcHkzaworNjAyNjggNzQyYTI2NGNjZTRmYWIzNzgyZjcxMTM4OTg5NzA0ZGI4NzdmZGUwOSByZWxlYXNlMjUtbWFpbnQKKzYwMjY5IGNlMTU5ZDAxZWUzMjJhNzcxYWM3MzU2ZmMxMzEwZTBiZDQ3NDRiMmMgbGVnYWN5LXRydW5rCis2MDI3MCA2ZGEwZWVhMzY3ODNhOTMwODkxZTNiYWM3OGIxNDRlZmQ0NDRiOWZlIGxlZ2FjeS10cnVuaworNjAyNzEgM2JkMTljOGFmMmIxMWQxZjEzY2QxMDUwNTNmMjBkYmY2ZWI0MjgxYyBsZWdhY3ktdHJ1bmsKKzYwMjcyIGZhZTU0NTkxYzAzNTY1ODYxMTc1NjZmYzI2NjE0ZTcyZTYyZWE1NWUgbGVnYWN5LXRydW5rCis2MDI3MyA4NDQyMDMyMDlmYjA2ZWNiZTg1MzRhZTU5YWMyYWMxYjgxNTQwY2RkIGxlZ2FjeS10cnVuaworNjAyNzQgNTQ1NThlMDI5YzJkYTQyMGM1Y2E2ZjJkMWNmYmNkOWNkYzAyMTNlMiBsZWdhY3ktdHJ1bmsKKzYwMjc1IDkzNGE1OWQ1MjU0MzE0ZDM3M2ZkY2MzY2EyODljNjdiN2VmMTg2MTEgcmVsZWFzZTI1LW1haW50Cis2MDI3NiA5OTcyY2NjZjZhMzNmNDQ5YTU5ODkyNWQ3NzgzMzdiNzEyNWEzODRiIGxlZ2FjeS10cnVuaworNjAyNzcgMTIwOTkxNDM3MjRmMzRjY2NkOWE2MmFmMGNmOGEyMTViMWRmYjFmNCBsZWdhY3ktdHJ1bmsKKzYwMjc4IDA4ZWIxYzQxMTExMzkxZGJiMWNkZjFmNjNlM2JmNzdmMWM4YTE1OGEgcHkzay1jdHlwZXMtcGVwMzExOAorNjAyNzkgNTNlN2JjZmI1NGE0NWY1ZmQxY2IxNmUyNTNhZjQzNWMyN2JlYmEzMiBweTNrCis2MDI4MCBhYTgzODk1OGU1NGFiMTM4OGU0ZDljZDg3Mzk5Njc0ODUyM2NkMTRhIHB5M2sKKzYwMjgxIDY1NDdiZTExZjQ0Mzg1ZmM4MGYzMGY5ZjMxN2MyYzY2NzQ0ZTQ1NzggcHkzaworNjAyODIgOGJjYThlYjM2ZTM3ZjUxODlkMDk1MzcxYmU3ZWFmZGQ5MzEyZjFhOCBweTNrCis2MDI4MyBiYmM3MTlhOGI1OGJmNmQ5YzRiN2ExZmUzM2RjYTA1ODBjZTRjYzA5IGxlZ2FjeS10cnVuaworNjAyODQgMDVmMDFkZDc1OGExYmRmZmQ5ZmMzMDdhODljNDY0OWViNTliNjM3MiBweTNrCis2MDI4NSAzYTQ0MmEwMDlhODNlNTg2ODY4ZDQ2YTBiOWMwOTBlOTNmYzM5Nzc4IHB5M2stY3R5cGVzLXBlcDMxMTgKKzYwMjg2IDhlNDM1YmRkNGJjODk2NmFhMzlhZWVkMTlhMDY3NGI2NWUwMDc4MzkgbGVnYWN5LXRydW5rCis2MDI4NyAxYmU5M2RkMTc5ZGY3YTkwMmM0OWI0NmM0MzhhOTE2NDRlNTg0NTUyIGxlZ2FjeS10cnVuaworNjAyODggZGNjZWFlZmE2N2ZkOGU1ODJlNWNlMTRlOTZhZGQ0MTA1ZWUwNWQwZSBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDI4OSAyN2QyMjdhODdhNzM3YmJkMTEyZjVlZjk4ZjFhZjQzYzE1OGFhMGViIHB5M2stY3R5cGVzLXBlcDMxMTgKKzYwMjkwIGVmNDJiZDdmY2JjODNlMzkwMmQ4M2ExZDBkMDBlNGJjY2VjNzUyMTggcHkzay1jdHlwZXMtcGVwMzExOAorNjAyOTEgZGRiMWU0OTlhMDFmODE2M2RlMTMzYWVmOTc3MjZiOTg4ZTBjODJiYSBsZWdhY3ktdHJ1bmsKKzYwMjkyIDNjNTdhNTFmNzM5NGY4NzUzMjhkMzk3MGUwOTM0OTkzNjcxNWUyYjggcHkzay1jdHlwZXMtcGVwMzExOAorNjAyOTMgZDhlODgzNThmNmMyNDA4MjhiOTZjYzZjMzI1MTM4NjE2NmIwZjY5ZSBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDI5NCA0MjQ0OWY2ODI4ODViYTA2ZWY3ZjVhMGZkM2NjYmQ4Njk1ZDRkODI3IHJlbGVhc2UyNS1tYWludAorNjAyOTUgNTk1MGQ4ZGU4MTM0YjU0OWVmODJhYTY5MTFlMzBmNzlkYzM5ZGQwYyBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDI5NiBiNTQ3NDZlMmE4ODBiZDM1OGFiZGQ0MDk0NWY0NWY3NDk2NTMzMzBmIGxlZ2FjeS10cnVuaworNjAyOTcgOTQ2N2VhMjAwNDZjMzFkOGNkN2I3NTA1ZTE0MWE0MGE4NDUwNTA5MSByZWxlYXNlMjUtbWFpbnQKKzYwMjk4IDFmNGIxYmFiYjllMDdiMWMzZGE1ZmU3YjIyNjZhMjRhZjA4MDY4NWUgcHkzay1jdHlwZXMtcGVwMzExOAorNjAyOTkgZWExZDQ3YzdhNDY3NDdiMTVhM2MwNjc1OWNhZWQ1N2I2MjA5MWZmZiBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDMwMCA4OTEwNTBhNmE1YzkwMTcyNzc0ZmVjM2UzYmVjZWJjOTdjOTI3ZTc0IHJlbGVhc2UyNS1tYWludAorNjAzMDEgZmI2OGU0NDU4N2VhMjU5ZDUyMjAyMGFlZjE0ZmMzNjkzYTg4YjE3ZiBsZWdhY3ktdHJ1bmsKKzYwMzAyIDk2ZjVkY2I0ODBhNjAyZjlkZTUzY2Q5ZDIzZWUzN2Y2NDgwZTYxZTkgcHkzaworNjAzMDMgODUxMDMwMTYyZDcyODM0ZjA4YWViOTMwYjViYTQ0YTg5N2UyNjM0ZCBsZWdhY3ktdHJ1bmsKKzYwMzA1IDY2NmNlYjY3OTlhNzgxNTcxZTVkZDM5ODk2OTJjMGRjYWYyZTRlYjkgbGVnYWN5LXRydW5rCis2MDMwNiA2YWUyMjAzMGUxNTI1NzZlZjY4YzZhMGEyYjEzOWI0M2FmOTg1YjNhIGxlZ2FjeS10cnVuaworNjAzMDcgZDM0N2MxZjljMzhhZDY1OGI5YTdhY2M3YzJjN2RmODA5NTcwN2NkNyBsZWdhY3ktdHJ1bmsKKzYwMzA4IGM2ZTVjNjA0ZWE2MWRlZTJjYTJhNmVhYzJiM2M3Y2NlNzJlNjJjZGEgbGVnYWN5LXRydW5rCis2MDMwOSBiZTQ0ZmFlZDU0MmQ3ZmQwOGY2MWU0OGUyZTRhNDM1NzI1YjNlN2I1IGxlZ2FjeS10cnVuaworNjAzMTAgMGYwOTNlOGIyZjUzMWI0YjE0ZmVjOWI1NGM0MWI4Y2E5MjkwYzRlZSBsZWdhY3ktdHJ1bmsKKzYwMzExIDMwN2Q0MTA5ZTIzZWE1ZmRlYTBhYzJiNDMzYWQ1ODk0YWNjNjYyNmQgbGVnYWN5LXRydW5rCis2MDMxMiAzMTI0Y2M1Yjk3M2YxN2M0ODk3MDdmOTA4Mzk5MWYxZDVjYjYyMDgzIGxlZ2FjeS10cnVuaworNjAzMTMgYjcwNDg1MDExMjE0NTM4ZjNlOGMxMzcwYTg0YTdjOGVkNmE0MmU0MCBweTNrCis2MDMxNCAzN2Q3NjI5NzVhOTUzZGUxY2M2ZTU4ZTBlNzE5MWE4MDg5YTExNmMwIGxlZ2FjeS10cnVuaworNjAzMTUgMjIxZGVjMDNlMjYxMjU3YmI0NzY3YjM3MzM2ZTkyMTFhY2Y4YWVhMSBweTNrCis2MDMxNiBhZWRiN2FjMjYyN2VlNDI1MWYzZmQ2YWJiODE1MDZjMDA4NDg5YWQ3IGxlZ2FjeS10cnVuaworNjAzMTcgNDdiYjMxZDA2NTc3MmQxMDA3YTU0YWI1YTFkNmNjZWZkZDYxZjY2NSBsZWdhY3ktdHJ1bmsKKzYwMzE4IDY0ZDEzZjQ1NmQwNmJhY2YzZTkwMzQwOWVlNDIxNDdkYWEyMjI3YWUgcHkzaworNjAzMTkgODQzMTYxN2YyMGUyYTk1YWJkNjE4OTkzZjhkZjI0NWUyODhjZjM0YyBsZWdhY3ktdHJ1bmsKKzYwMzIwIGFhYjVjOGU4ZjM4ZGMwMzM5ZDIzMDhhZWI1NWFiZmUwZTE2ODY5YmIgbGVnYWN5LXRydW5rCis2MDMyMSBhYWE1YTc5NGY4ODdlMjFkMWNmYjY0YWY3OWEzOWQ1MjE3NDUyMWRlIGxlZ2FjeS10cnVuaworNjAzMjIgNWUwYjQ2MGYyOTRhNWM3Y2MxZTFhZGM4MWFkNzQ3MmU0MTVhMmNhMCBsZWdhY3ktdHJ1bmsKKzYwMzIzIGE3NTBhMjZiNWZhZGE2MmU2YTBlZDk5YTk2YmJkZTIwNDNmOTIyZTMgcmVsZWFzZTI1LW1haW50Cis2MDMyNCA1MWJiN2IxYWU3NjU5MTA1ODgzNmYxNjg3YmIwM2Y5ZmVkYjA0NjlmIGxlZ2FjeS10cnVuaworNjAzMjUgZGYyM2Q1MjQ5NTUwZDdmNzg4ODdmZWIwNzZlNjI3NWYwZjZkZDdhOSBsZWdhY3ktdHJ1bmsKKzYwMzI2IDY5OWIzNzE3MGNhZGM2YjAxOTRjZmE0YzM2M2ZmNWY1OWQxNjAwY2IgbGVnYWN5LXRydW5rCis2MDMyNyBjYjU4MzlkMTMyMjYxNmEwMTQ5Nzg4Mzc4YTJkODZlNGZmY2M1OTI3IGxlZ2FjeS10cnVuaworNjAzMjggOGNiY2E5MWUzMTU0OTcwYmI0NzU2ZDI4ZjI1YWVlOGQ0MTlhOTZiZCBweTNrCis2MDMyOSBmYmI5YWU5YTUxNGZlYmE5MGNhYzcyOWJiM2NkOTkyN2Q1NGQyMzMyIGxlZ2FjeS10cnVuaworNjAzMzAgNWQ3ODJjOGQ0MDE2NjhjYjkzZDYxOWM0ZDg0Njk3MTY3ZDQ1MDMxYSBsZWdhY3ktdHJ1bmsKKzYwMzMxIGRjYTNmNjQ2ZThhMWZiNTlmZjI4YWM2Njc4YjQxOTQyYWZlZjA0ZjkgbGVnYWN5LXRydW5rCis2MDMzMiBmM2I1ODQ4NDNmOWZiZGM5YzU0YWI1MTQ1NmU2ZmM3ZTA3NGRhMGZjIHB5M2sKKzYwMzMzIDk2MmM0OTFlMTdkNmNhOGM2ODAzYjAyZDBhMjcxZDA3ZGVhYjkyNDAgcHkzaworNjAzMzQgNWY5ODQ0NmUwZjFiYjdiNzU2MjRiYzU3MDI5NWU1YmYxZmE0ZGMwMCBsZWdhY3ktdHJ1bmsKKzYwMzM1IDUwZjJkN2JkYWJjOWE0NmM3MDljMTE4NmIxMWJjY2IxMzc4MzU2YzUgbGVnYWN5LXRydW5rCis2MDMzNiA5MDkzOTA4YTBjZjVkNGMyY2Y2N2Q2M2Y5YTI2YTk5YTlkODU4OTkyIHJlbGVhc2UyNS1tYWludAorNjAzMzcgZTMzNjI1ODk1NTUwMjYxN2I1ODMyOWM3ZmEwNzBiNGU3NzkyMTVkMCByZWxlYXNlMjUtbWFpbnQKKzYwMzM4IDViMTdiNDRiZTFiZjg3OGQ2OTFlZWNmOWYzMmM5NmU4ZTQyYmNkYjUgbGVnYWN5LXRydW5rCis2MDMzOSA2MzVhNzU2MzYwZjE4YzlhMTE1Y2NiZTI1NjRhNzYzNmRjYzYxMjQ0IHRydW5rLW1hdGgKKzYwMzQwIDcyYTY3MjdiZWQ5YzllMTRmM2U1NTQ2MDNhZGE3NDIyOTBjZTg4YWUgdHJ1bmstbWF0aAorNjAzNDEgNmFkYmQ2MmI5YWJmYTBlMzBiNTk3ZDdjZTExMGQ5ZTEyNDNiNmJlYSB0cnVuay1tYXRoCis2MDM0MiAyY2EyYjA4NDBiMzVkMzg0NWQ4MGJkNzc4NjM1YTA2NWQzNjZhNjQ5IGxlZ2FjeS10cnVuaworNjAzNDMgMjBiZjk0Mjg1ZWVmZTg2ODY1YzE0NDkyZmMwZGZmMDc3YzBmMzUxZSByZWxlYXNlMjUtbWFpbnQKKzYwMzQ0IDRkZDBmY2YzZGFmNzNlMjZmMDNjMmI4YjdlZDExODhlMTY5MTE1ODEgbGVnYWN5LXRydW5rCis2MDM0NSBmZjU4YjMwYThkNTI4NzFkNmNmMDU0MmNmN2VhMWE3MDRkOGExNGViIGxlZ2FjeS10cnVuaworNjAzNDYgNmJiZjZmZGMxNTJiOWU0MmVkYmYxMWE2MDVjMjE2MjMxOTk4MWU2MiBsZWdhY3ktdHJ1bmsKKzYwMzQ3IDQ2N2M3MWYzNjVmZGViNGY2OThlYzQ3MjEzNGFiODRiNzE5ODRmY2QgbGVnYWN5LXRydW5rCis2MDM0OCBmMDE4MTNiMzNjYTRiY2RmYjRjZTEzNTVlN2QzYjFlYTA5ODhlYTA4IGxlZ2FjeS10cnVuaworNjAzNDkgNjJmMGJhNzQ1MzU3ZjA1OWJlYzZkZGQzYTQyNTdiMjgyOGZhYzdjYiBsZWdhY3ktdHJ1bmsKKzYwMzUwIDdjMDIxODJlMjk3OWEyMmVlNzU4Y2EwMmYyNWY4ODJiMmI4NDBkNDggcHkzaworNjAzNTEgOWI3NGM5YzhiOTJjNzlmYmY5MDRmNDY3NmU3M2NkYThkYzM2ZjBkNyBweTNrCis2MDM1MiBmNWU1MmE1M2ZjZDE0ODM0ZjYzNzJiNmNlMWI2ZWFkOTg5MTNiMjA4IHB5M2sKKzYwMzUzIGVlMjQzY2E2NWY1ZjU0NjhiZDA5NjM5YzgwNzA0MmZmM2VjZGY2MmUgcHkzaworNjAzNTQgZjE1ZDNiZjRjYTU2YTEyZDFiMDZjNjI2MWI1MzBmZjE4MDQ1N2I0YyBweTNrCis2MDM1NSBlMjI0YWQ0YjhiOGNhZTMxNmZkYTA0YTI1OTc1M2FlYTJlNmEwNTU2IGxlZ2FjeS10cnVuaworNjAzNTYgNzA3ZGQ5ZjM4NGYzODk2MjRiMjBmMjEwYmFiOWI5YjQ3NTEwNjg3YyBsZWdhY3ktdHJ1bmsKKzYwMzU3IGZjZmExMzE5OWVjYmRhMjllZDk1OTFkNTJhZDc1ODhjOGJiM2ExNzYgbGVnYWN5LXRydW5rCis2MDM1OCAxZDcxYmY0NzVhODVmM2FjNjY3ZWY3ZTMwNTNkZWJhZTUxMWQ4NWJkIGxlZ2FjeS10cnVuaworNjAzNTkgMmU0ZGQzOWJmNjkwNTYzMjY5ZjUxNWU3NzQwNjE0NWUyNGY5YTljMCBsZWdhY3ktdHJ1bmsKKzYwMzYwIDYwNGFhYzQzMzdhNWM1YjEzNGFhOTVjNTFjNmJiYjM3MzQ3ZTUxNGEgbGVnYWN5LXRydW5rCis2MDM2MSBjMzE1YjY3MjQ1ZjdkNTRiMDMwYTUzZTI0ZDA1MDRkNDdkZGNjZjRkIGxlZ2FjeS10cnVuaworNjAzNjIgYTNkNTcwMGIxZDVhM2UwNjA3MDc3YjVjZmU0MTY1MjJiZTNmNjRiMiBsZWdhY3ktdHJ1bmsKKzYwMzYzIDFmZjJiYjUxODdkZmY5MmE1NDIzZmZjOTEzY2I5YTJkNTc1OTI0MTYgbGVnYWN5LXRydW5rCis2MDM2NCA4NWNjYzdjMTU0MjVkZTgyNzhhZDQzMzI5ZjJmMmJmNDA5OTE0OTA3IGxlZ2FjeS10cnVuaworNjAzNjUgYjA2NGUyNWZiODQyMzQxOWY3Nzk5ZTNlY2FlMzVkOTU0ZjhiNjBjYyBsZWdhY3ktdHJ1bmsKKzYwMzY2IDU2MWMwNjVlM2YyZDVmZThlZmEzYzU2NDkyZTM1YWYxY2VlNTdmOGUgcHkzaworNjAzNjcgMGE3MGY1YjMwYjhhYzE4N2E0Nzk3OTQ2NWZlNDJmNDJiYTEzMmU4MCBsZWdhY3ktdHJ1bmsKKzYwMzY4IDIyOTQ1ZGJjZDAzMDFmODY3N2JmNDBlMTI4OTE5NzM2YjBmMTE2YzMgdHJ1bmstbWF0aAorNjAzNjkgNDcyNWM4NGIwNDIyNzliOTU2OTJkMzJkMTYxNmNlZmYyMGY1YjliZCBweTNrCis2MDM3MCBmN2QyMzYwZTk1M2RlN2NlOWQ3MzljZTgyNmM3ZmJjMzQ5MDFiZmY5IGxlZ2FjeS10cnVuaworNjAzNzEgYWZhNTk5MzIyNGU1NTYzMDY0ZWFhY2MxM2YwMmY5YjY4ZWI3NjYyZiByZWxlYXNlMjUtbWFpbnQKKzYwMzcyIGJlMzE0MGVjNjdjOGY2MzA4ZjQ4N2EwYjNlNmNiMzRmNTg2MTlhNDUgbGVnYWN5LXRydW5rCis2MDM3MyA3OWY0MzlkOTlmOGMzYjhiMTkwNjc1N2VkYmMzMTNkNTNlYzVkNDlkIHJlbGVhc2UyNS1tYWludAorNjAzNzUgNjk1ZTViZjNhZjljMDU2OTIxNGZjY2QzN2FlMjVmNjcwMGRmY2JlZiBsZWdhY3ktdHJ1bmsKKzYwMzc2IDcyN2NjODEwZDY5MGJjZTg4NDY2NDM3MjFkNmM4N2YxMTFlZDVhNjEgcHkzaworNjAzNzcgZjA2MmRkYTU0ODk0ZjI0MGY5OGEwNDg1NGYwNzYwMzRkMzI2NGRlMSBsZWdhY3ktdHJ1bmsKKzYwMzc4IGVhM2ZlMzAyZDM5MjA2NDBmYzYyODg3NTA2YjVhOWE2M2ZhZjFkZDQgbGVnYWN5LXRydW5rCis2MDM3OSBlYmZiYWExMDUxZTJkMGQ3OGQ2Y2RkMjE5YjU1OTAxMTU1Yjc4Yjg5IHB5M2sKKzYwMzgwIDUyMzJmMDdkOWM4ZTNkYjM4OTI0ODRiMjdmMWZlY2UyN2U3YWI0YWIgcmVsZWFzZTI1LW1haW50Cis2MDM4MSAxYzlhYzAwYzQ3NTg3OTYxNWJjNzFjMWUzYzAxN2M3OTM3ODc2ZWQyIGxlZ2FjeS10cnVuaworNjAzODIgNDNjYWY4MThjZmYwNzI5MWMyODUzN2Y2ZDQxYzdkZmVhZjQ5N2JlOCB0cnVuay1tYXRoCis2MDM4MyBlZjJkM2JmODM4M2RjYmIyNTZlN2E3YTg2YTQ3Mjc3NjBkMjRmMjUzIHB5M2sKKzYwMzg0IGYwN2U2ZjMyOTc1NTNlN2M1ODRhODNjN2ZlNzQwNWZkNTU4MTM5NWUgcHkzay1jdHlwZXMtcGVwMzExOAorNjAzODUgZTYxNGQyNDhiZGQxMDE1N2JmZjc3ZTRiNTBkYzVjZDM4OTU2NWI3ZSBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MDM4NyA1ODNhY2UxMmM1Y2YxMzFjMGU0NjlhYWZmMWY0MWYzN2FjOWZjYTk1IHJlbGVhc2UyNS1tYWludAorNjAzODggMTVmNWI3MzFlMDBiMzgxNWEzNmEyYmJkODFlZDZkZjUzNjQwZWRmMCBsZWdhY3ktdHJ1bmsKKzYwMzkwIGEyOGQwYjE0Yjc3ZGVlZjQ1YzNhN2I4YTBmNTRmZGZjM2RiMDllYjEgcHkzaworNjAzOTEgMmMzZDQ5N2ViZmQ2ZGJhYWZjMjc4MDY0YWRhM2Y2NmNmNWI4ZmI1NiB0cnVuay1tYXRoCis2MDM5MiA5NGYxOGMyZGVhYTVkYWFiZTJiMjIxZGFmNWZlMjc2YjU4YjM2OWIxIHRydW5rLW1hdGgKKzYwMzkzIDBkYTJlZjlmZWRjMDMyZjA5N2JhZTZhZjA0NWQwNmZiODcxMmJjYzAgdHJ1bmstbWF0aAorNjAzOTQgNmFjN2QyZTlhM2JjNDAyNTA3MTI4OGIyZjY3MmRjYmMwNjA2M2U1ZSBweTNrCis2MDM5NiBhYjY3MjYwNzM3YjFjODZlMTMxZGFlNTNhNmU3MGQ2NzI3ZTk0ZjNiIHB5M2sKKzYwMzk3IDE1ZThiMzQyNTRlY2ZiNWY3ODg1MWMzZDZkNDNkNGI3ZjUwMWNhMjIgbGVnYWN5LXRydW5rCis2MDM5OCAxZTU4M2ViNzFiM2ZiMzYxOTc5ODk4YmM2Nzg5NDBiNTJhMWVjZjA0IGxlZ2FjeS10cnVuaworNjAzOTkgNzdkMDUyY2UxZjRjN2M1ZDM1MDRjN2MxOTllNGJlZmU1ZDEyYjJmZiBsZWdhY3ktdHJ1bmsKKzYwNDAwIDc1NjQxM2MwZmYxZDlhYTg3ZTQ1MTE5MWNhNjNjMWRlODNiYWI1YTcgbGVnYWN5LXRydW5rCis2MDQwMSA3YTZhODBlODRhOGEwMDZlNDY5N2YzZTIzMDI4NDU2ODFlODU2MTk2IGxlZ2FjeS10cnVuaworNjA0MDIgZGM0NmE2N2E3YjdiNzBkMDExN2IzZjUzZjI5MTIzOTNiMDZmNGNjZCB0cnVuay1tYXRoCis2MDQwMyBiZDI0NmYzMzY4N2Y3NTc1YzQ5ZDZlMDMzZGQxN2MyMjBhYmE4ZTFjIGxlZ2FjeS10cnVuaworNjA0MDQgNTQ2NzNmNzI0MTA2ZWIxZmU2ZTFmZDgzMDg0NTFjZDJmMjA5MWYxNCB0cnVuay1tYXRoCis2MDQwNSBlZmVhNDIxN2E5NTQzM2NlMzBjZGEzZGM0YTgyYTE1NTQ5NGM2MTEwIGxlZ2FjeS10cnVuaworNjA0MDYgNDE4YWQxNTlmZTg0M2VlNDc3MTBjZTE1NjUwNTM0YTRkNDdmOTIyYyBsZWdhY3ktdHJ1bmsKKzYwNDA3IGNjMjJkM2YxMmIxMzdmNzI4M2Y5ZGY3MGM5YzU3MjUyODBhNDU0MDIgbGVnYWN5LXRydW5rCis2MDQwOCBjM2IzOGE4NTk4OWZjNzY1MjMyMmYxNDNlYmUzOTAwYWM2ZTM3YjEyIHB5M2sKKzYwNDA5IDg2MDk0YzQ2N2VhZmIxNDgwY2VhMzE4ZmEwN2ZiYWY4MWIyNWZjNmYgdHJ1bmstbWF0aAorNjA0MTQgZTlkM2Q1NjFkYmQxYWYyOTllY2Q1MGJlOTJkZTdmZTVmYzEwYjJiYiB0cnVuay1tYXRoCis2MDQxNSAzZjlmZTI3MTU1M2YxNmQ2MTE2YzllM2JhMzE4MGU2MzZhYTQ1MTRiIHRydW5rLW1hdGgKKzYwNDE2IDMwM2NlZjA2M2MzNTIwZWE2ZDU1ZjRlMjRlYzA1YzU2M2UxYmQ5MmMgdHJ1bmstbWF0aAorNjA0MTcgYjliZGM2YTk4YmVhMjI4OGI0ZDNhYmMwM2E4MzM3N2Q0NDIyYjY5YyB0cnVuay1tYXRoCis2MDQxOCBlZGQzNjdjMjJjOGZjYzQ0OTM4NjYxMjhhY2Y4NDE2NTdiN2IzMDU2IHRydW5rLW1hdGgKKzYwNDE5IDNlYmFhZTM0MWMxYjEyM2U1ZDllNTQzZDU2OWYxZDRlYWExNDA0YTUgdHJ1bmstbWF0aAorNjA0MjAgM2I0ZjBjNWVjZjUzZmQ2MmM4MjE3NWJmODkzNmFhY2QxNDcxNjE4ZSB0cnVuay1tYXRoCis2MDQyMSAyOWQ2MTVkZDFkOTcwNTVmOWRhNTJjZTQwNTBlZDRlZTc0YmMxMTFiIHRydW5rLW1hdGgKKzYwNDIyIGIzNzJjMzU0YTI4YzE3NDc1MmUwNjE0YjBhYzMyODJiZjVjYTQwYzQgdHJ1bmstbWF0aAorNjA0MjMgNTA5Y2RmNmQ2NDc5NWVkZmQ5NDk1MDQ0YzZkNTFlMjYzZjdkNGVkMyB0cnVuay1tYXRoCis2MDQyNCA5Mjc3M2Q3ZTY1M2U0YzFmZTQ5Nzg4MzhlMTNiNWY0ZjAxMTM2MzFiIHRydW5rLW1hdGgKKzYwNDI1IGU3OTFiYjBhZGNkZTgyOTA3MTdiNGFkNzMzODU5MzBmZTc1NmFkZjIgbGVnYWN5LXRydW5rCis2MDQyNyA3YWM3ZTA4OWEwNmZjOWFkNGNlMWFjYWMxMjYzN2U1OGJlZTA3OGIwIHRydW5rLW1hdGgKKzYwNDI4IDcxNjZlZDQ5OGM2ZDNjYmRlNWQxODUxY2JjZTlmZTMyZmYyMjMzNmQgcHkzay1jdHlwZXMtcGVwMzExOAorNjA0MjkgY2Q2NWJhMjNhNTBlNzYxMGU0MDEwM2YzNDM1ZTVkYTE3NmJiMGNkZCB0cnVuay1tYXRoCis2MDQzMSA5NmQwMjQ5MTY0ZmM2NTI2ZmNmYzJiN2QzMDBhNGVhOTBhYWY2ZWE2IGxlZ2FjeS10cnVuaworNjA0MzIgYjdhYThiZGU3YmNmNzBmNDhjODhkZmEwNDYyNmNlYTc2YjU1ZTAxNyBsZWdhY3ktdHJ1bmsKKzYwNDMzIDI1MGYyOWJhYjYxYjEyYzM2NmFiMzMwNmY1MmJlNDljZmRmYjM1MDEgbGVnYWN5LXRydW5rCis2MDQzNCA5MGU4NmVlMzY4NGIzYzFiNThkNmUzZWVjMDJiMDBiOWI2ZGMxNjdlIHB5M2sKKzYwNDM3IGU5NzY0YTY5NTgwOTdhMDRkODkzYzI0ZjU5ZGZjYWYwZWUwYzE4MzMgcHkzaworNjA0MzggNjI5MDlkMmU1NzNiOTc0ZjcwZDk2OThhYWE2ZTFhNTIzM2YxM2FhZiBweTNrCis2MDQzOSBlNDMyMzg3NjBjMzg3Mzk2ZTA3OWQ2ZTczYzBlMTI5ZjYxOWQwNTM3IHB5M2sKKzYwNDQwIDI2Mjc4Nzk2ZDRkYTEzMTlmMzkzODM3MDBmNTQ3Y2NkNjk5YThkZTcgbGVnYWN5LXRydW5rCis2MDQ0MSA1M2I5MGYzMWVmZDZlNjZhMjgwYTY5MGU2MzA4ZDQ4NGVlYjA4OTZkIGxlZ2FjeS10cnVuaworNjA0NDIgNTEwYTQ4Mjg5ZDFkNjg4ZDUxODFjYmZkODNkNGE5ZWI4ZmJkOTUzOCBweTNrCis2MDQ0MyBjOGZjYTliNWNkM2MzMGRjY2I1ZDRkZDcyZmZhZDQxZTM1ZjI5YTVmIHB5M2sKKzYwNDQ0IDc2MzhkNGFlMzEwYzIxZjk4MDA4OTYyMDE1ZTQ0ZGUwNDgwMTg5MDMgcHkzaworNjA0NDUgYmQ4ZDIzNjlmMTQxMWIzNTA2YjY0ZWM4ZTI1MmUwZTFmODA3MzI3NCB0cnVuay1tYXRoCis2MDQ0NiA1YWIyMzdjOTY2OTVkZjdhMGI3YmU4ZTY3N2YzNGYwZmUzMzA2NDYwIHRydW5rLW1hdGgKKzYwNDQ3IGFmZDBjYjI1YzczZTIxMzE4MDdiMDEzMDFkMGM2NWVkMzdkMGVjYWYgcHkzaworNjA0NDggOTYzOWE3M2FmYTQ3NzYxNGMwZWQzNmQyYTg5ODljNzQ1YTUzOWVkYyBsZWdhY3ktdHJ1bmsKKzYwNDUwIGMwNWVlNzdiMzlmMmRjMTA2ZGQ3YWFlOTFiOTEyOWUzYTgyMGY4NjQgbGVnYWN5LXRydW5rCis2MDQ1MyBiOWVlMzFhMjZmMzg1ZDNjZmE5NGM1YmY5MjRmYzg0NmUyNTBiZjg5IHB5M2sKKzYwNDYzIGJlMDZiMzM5NTc2ODRjNDRiMDk1NWNkNGY5ZDZlN2Q4ODJjN2I0NWYgbGVnYWN5LXRydW5rCis2MDQ2NCA3ZDBkZjVlYzNkMmY0YmU3ZWIzNjRhZmUzYmQ5NTJkMTkwMTI1MDVkIGxlZ2FjeS10cnVuaworNjA0NjUgZTg0NzZhZWY4NTdjMjFjMTBlOTE1NDNlNzk5OTBkMGEzZTYyNTMyNCByZWxlYXNlMjUtbWFpbnQKKzYwNDY2IDcxOTgzNjAzZWE5OTk5MDQyNzI0NTFiYTMzMDI2MTdjMjRhNmQxOGMgcHkzaworNjA0NjcgM2YyNDk2ZGM5MWRiM2Y2NzhjNzgyMjE3Njc3ODVhMzdjZmJhOWRmNSBweTNrCis2MDQ2OCA4OTMwZmYyMzBlZTllNDYzY2Y0ZjRkMDEwZDY1ZjNkZDc4ZmY5Zjg4IHB5M2sKKzYwNDY5IGRlN2MzMDk3YjJjMTA2NTJlMTdhODZiZmRhMmY4MDRhODQ1ZDBkNzMgbGVnYWN5LXRydW5rCis2MDQ3MCBlNzdiODJhZWQxYTgzMTMxZmY0MzUzOTE1MDA1ZjhiNTEyZTIxOTUyIGxlZ2FjeS10cnVuaworNjA0NzEgMDNlNGEzNmE1NmJiYTQ5NWUxMzE1Y2YyZmUwYTkwZTc2MTIyYTAwOCBsZWdhY3ktdHJ1bmsKKzYwNDc2IGYzODBkOTkxMzkwZTA5ZjIzZDEyODQ3MDllZTJiNDk2OTE4YjlmN2IgcHkzaworNjA0NzcgZjE4M2YxMTg5ODI0OGU3NTRlZmJiZTQzOTMxMjEzMDE3MDJiMjE0NCBweTNrCis2MDQ3OSBkNjM1ZjI5ZTU1ZjgyOTQ3MGY1YTJkZjFhMjhjZTg5NTNjNjdlZjEwIHRydW5rLW1hdGgKKzYwNDgwIGE3N2M4ZGNiY2VkOTEwZmZkM2UyZjkzZDEyYjgyYzBhNWFjNzZmNDggbGVnYWN5LXRydW5rCis2MDQ4MSAzYWE0YjhkZmJjNGE0Y2I1NDJjZTk0ZjhlNDIwNmE4MjgwZmU4NzI5IHB5M2sKKzYwNDgyIDg2NTllNTI2MTRkYWRkNjllMTFiYTZlMzcxNWY1N2NjYzg4ZGE3M2MgbGVnYWN5LXRydW5rCis2MDQ4MyAzZjE2YWM5MTUyMTRlZDM5ZTU2ZmU3NGJmYjc5Y2UyM2RjMTY4NjQzIGxlZ2FjeS10cnVuaworNjA0ODQgZjBlNmJiOWIyNGY2OGIxZWYzZGNiYjRhYWYzMGUyNTg5YzNhNTk0NyBsZWdhY3ktdHJ1bmsKKzYwNDg1IGE0Yjg0MjU3YzdmODU3ZjUyNzZkNWQ1MDE1NjdjYmRiOTI2YjNjYmUgcHkzaworNjA0ODYgNDkyYjMwMmFkZWQ2ODk0ODcyZmMzYWYyNWFkZmI5NjY0NTBiZDIyMyBsZWdhY3ktdHJ1bmsKKzYwNDg3IDY3ODUwOWY5YTAzZjcyYTFlZWI0MDRiNTViZGIzZGY3ODlhZmNlMzkgbGVnYWN5LXRydW5rCis2MDQ4OCAzMTY0YjRhZTI3YzNjMWRmMjUxYWVjNzJjNDAwYjcyMTIxN2ZhMWUzIGxlZ2FjeS10cnVuaworNjA0ODkgZDc1NDAwMzFiOTU5MjE3Mzk2MWVlYjc5OTczNmVhNmFhNTI5NzA5ZCBweTNrCis2MDQ5MSBjNjZkYTU3Yjk0ODg5ODBlNTQwNTVmYTk2MWMxMzVkNDMwYzYxYTczIHB5M2sKKzYwNDkyIDM4NjA0ZmEyYTQ4ZjFmZWUxNWI5N2ZlNDdiNmZhZDJlMTdiYmMwNzggcHkzaworNjA0OTMgYTI4MWUzMzE5OGMwYWUzNGQxYmIxNTU4ZjNlN2U2YWRiNWNjZmVmMCBsZWdhY3ktdHJ1bmsKKzYwNDk1IDdjYjZlNTYxN2RhMDlkODlmM2U5Y2YzMTg4YTUzYTc4OWI4YjUxM2EgcHkzaworNjA0OTcgOTllZjI0OGZiMzE1M2ZkMDk4OTU2MGEwNWM4NTUxY2UzMjIyOTc0YSBsZWdhY3ktdHJ1bmsKKzYwNDk4IDJiNjM2OTBkNTEyODU5N2M3MDFjZGQzOWYyYjZiM2JiYTVhMzc4YTcgcHkzaworNjA1MDAgMzNiYmRjNzZhZmI2MmUxNDVlZmQ2MmFhZWNlMmQ5MjVkNmJiMGNmZCBsZWdhY3ktdHJ1bmsKKzYwNTA0IDM5NzlhZTFlZWExN2E3MTk4MDk0YjY5ZTBlOWYwZDJiMjRkYTVmOTYgbGVnYWN5LXRydW5rCis2MDUwNyA2NDkyYTc4ZTkzYjRjMWNjYzFiOTM3ZjdjNzc2NzM5ZDg5ZmZhY2JlIGxlZ2FjeS10cnVuaworNjA1MDggZmFhODhmZjRjY2U0ZDI1OWZhYjEzNzkyNzliOTFiMTFkNjhmNzEzYSBweTNrCis2MDUxMCBiZGI3MDI5NTI0OGJjZmMzNWM3ODMzYzA0MDNhZWYyOGI4NDVhMTMzIGxlZ2FjeS10cnVuaworNjA1MTEgYmVlYTczY2EyYjg4ZTdkNjhjYWFmZDIzNDdiZDdjNzNiYzJhNjA4NiBsZWdhY3ktdHJ1bmsKKzYwNTEyIDVjYjgyODgzNjBlNzM4YzNiMjFhMDY4N2MyYzk0MzYxMDYzYWY3MGMgbGVnYWN5LXRydW5rCis2MDUxMyBkMTJjOTdjYzc0NjcxM2Q0N2EyNjczMmU0ZWM0YjU2YTNkMDExMjhmIGxlZ2FjeS10cnVuaworNjA1MTQgZjRiNDllZmNlZGMwZWUyOWU0ZDRmY2UyMjY1MWJmNGU3ZTlhYzBkOCBsZWdhY3ktdHJ1bmsKKzYwNTE1IGRmNWU1MmUwNTI0NmZjYTBlOTUzZjQ4NDFlOWNmMTVkYmU1YTBjMzEgbGVnYWN5LXRydW5rCis2MDUxNiBkMGIzMWYyNDY5NGRiZTcxYjlhNzNmZjQyM2JiZGYyMjk1ZjdiYjk2IGxlZ2FjeS10cnVuaworNjA1MTcgMGI0ZThhZmVkNjYzMTI0ZDA1Yjc3YjBmNmQzYWQ3ZTQwNDI3ODA4OSBsZWdhY3ktdHJ1bmsKKzYwNTE4IGY1ZTE4YzliZGU3MDE3NTIzODBjY2Q2OTJkODdjNjcyYjU3MGJlYzMgbGVnYWN5LXRydW5rCis2MDUxOSBjZTk4MTZmNTM2OTA5YjU5ZGVhNjk5N2I0NDU1MTYyYmQwMDFkZWJkIGxlZ2FjeS10cnVuaworNjA1MjAgNGM1OWE4Zjc5ZTQyODFlYzI1NWU5OTQ5YzhkNjZmZGJiMWQ3ZjljMyBsZWdhY3ktdHJ1bmsKKzYwNTIxIGUyYThiNjc2NWFiM2ZiMGM4YzViYzZkZDE0ZDVkMDE2Y2NhNDM1OWIgbGVnYWN5LXRydW5rCis2MDUyMiBkNTRkMTMzYzZhOGRiN2Y3NmY3ODA5MDg2Y2YyN2Q2ZmM0ZTUxYWU2IGxlZ2FjeS10cnVuaworNjA1MjMgN2UyZTYwM2Y0Y2JlY2UwODUyOGZhNmIwNTU5NzA2NTRkYjJhOWU4NSBweTNrCis2MDUyNCBhM2U2Zjc0NTMzZDYwY2QwY2JmM2IxNGRjYTBiNTRjNjAyMmYyZGY0IHB5M2sKKzYwNTI1IDY0MDkxMjQzYzA3YmNlYzk1OTJkMDQyMGRlYjlkMTI3MmM1Njk5ZmIgbGVnYWN5LXRydW5rCis2MDUyNiBhODFlZjYzYTEwMDlhMjk5NGNjYmUwMWQyN2NiYWE0MDkyNjFjMmI0IGxlZ2FjeS10cnVuaworNjA1MjcgZDk4MGYxNzVjODg2MzRiZGFiMDAwOTUzNWI3ODFjZWU2N2EzMWE2MCBsZWdhY3ktdHJ1bmsKKzYwNTI4IDZkNzViZTJjM2QzZTQxMmIzNTNmODY2OTc5MjcwNTUwM2Y0MzBjOGYgbGVnYWN5LXRydW5rCis2MDUyOSA2NjBkMjk4OWIxNjFjZDU0MGFjOTk3Y2ZmNjMzZGM0ZDY3ODY4ODgyIGxlZ2FjeS10cnVuaworNjA1MzAgMDQ2NTNmOTI2NjRmMzFkMjE2MTIyY2ZhYmQ5NDFmOTJhMWRlMGI2ZCBsZWdhY3ktdHJ1bmsKKzYwNTMxIDY1YjEyNTJjMWJjMTkwYWFmNjAyYzc5OTZmOTU2MGRkNzE1YzgwYmUgbGVnYWN5LXRydW5rCis2MDUzMyBmMDNhZjYwMTIyNWIxZGU5ZTBhYzlkMmI1MzFlNjNkNmYyYjc0ZTViIGxlZ2FjeS10cnVuaworNjA1MzQgYjJkZTk3ZWIxZjY3Yzc0MzA1NzJiYTk2NmZkODVlZWQ1NDYxMmI0NSBsZWdhY3ktdHJ1bmsKKzYwNTM1IDk1YmJmNTYxM2IxOGY0OWRlNTJjNDIyYjY4ZDZjY2FlMmIwZWFhNmMgbGVnYWN5LXRydW5rCis2MDUzNiBhZWZkY2I1MjQwNmRkNzFmZWI3ZjE0NTU5NzAyZDQ3YmY4Yzg0ODFlIGxlZ2FjeS10cnVuaworNjA1MzcgNTlkODlkNjFjM2EwYjMwY2U5MGVlZjNjZmI4NTVhN2M1NzQxMTAyMiBsZWdhY3ktdHJ1bmsKKzYwNTM4IGMyZGNmNTRlOTFmZDE4OGU2MWUwNmU4N2VjMWI5NjYyNDE3MjdjYjIgbGVnYWN5LXRydW5rCis2MDUzOSAyNDk2OTQwNWUxYWFkN2Y0ZGQwODBiNTY5YzM4MTk1OGE3ODNhMGI2IGxlZ2FjeS10cnVuaworNjA1NDAgZTVlMDI4OThiNmM0MmMxMTdhZjY4Yzg3ODk1YzE0YWY2YzNkNGY2ZCBsZWdhY3ktdHJ1bmsKKzYwNTQxIDM5NDA5MWZkMWQ1MzM1ODA2MTQ1YmRjN2UzYWZlZTE2NWI1ODIyNWQgbGVnYWN5LXRydW5rCis2MDU0MiAyMTU5NGM1YTA2MWE1MGUwNTgwNTIyYjM4YTk0ZWJkYWMyNzdjOWY4IGxlZ2FjeS10cnVuaworNjA1NDMgZjJjZGVkMGMxZmQ3N2E2YjQ1ZTliZjZjMmZiNjQxNWIyNjMxMzBkMSByZWxlYXNlMjUtbWFpbnQKKzYwNTQ0IDNhYzQ4Y2IzNDAyNzM0YzYyOWZhZTc3NTY1N2FlZDUxOWNhZWNkYjggbGVnYWN5LXRydW5rCis2MDU0NSAyN2NhNDcwMGJjNmRmMGZmNzhiNDU4NGI1YTYyNjk4YjIxN2QxMmI2IHJlbGVhc2UyNS1tYWludAorNjA1NDYgNDAzYTdlZTVhNTNlY2ViNmExNThkZWNmZjE1MTQ5ZjAyMTM5OTY4NCBsZWdhY3ktdHJ1bmsKKzYwNTQ3IDZjOGM2ZGU0NGZmNzU4NjdjMDJiNTgyMjMxMGFmZWUxZmYzZDhkYjQgcmVsZWFzZTI1LW1haW50Cis2MDU0OCA2ZTEzNGFhNzM4Nzk2OTUyNjk4YjA3MjNhMTEyMzU5ZDllYzc0YWE0IHJlbGVhc2UyNS1tYWludAorNjA1NDkgYjY2YWJmMGZkNTkxMjk2ZTU0Njg2ODU3ZjcyZTkyMzA3OTBjMTBhNCBsZWdhY3ktdHJ1bmsKKzYwNTUwIDViZGM4YjU5OTIyMmJhMTRmN2ZiYWRiZGNlMzU0NzViZTcxMjU0ODUgbGVnYWN5LXRydW5rCis2MDU1MSA0YWQwOTU2NTU3OWQ3YmNmNzIwOWFkNmJjY2ZhZTVlZmU2ZDVjMWVkIGxlZ2FjeS10cnVuaworNjA1NTIgYmRjZjQwZDFiMzhlYjRmNDc3M2ZjM2YzYzM0ODYyNTNhMmM2NjIzMiBweTNrCis2MDU1MyA1YmM1ODdmOTAxNjRjNWIwN2FjZGRiYzY2NzFjMmM4ODkxNGVkZGE3IGxlZ2FjeS10cnVuaworNjA1NTQgZWI5N2U4MzAyZmEzMTA2YzQ4NDM2Y2NlMDQ1ZGE5MWRlOGI1ZDE2MSBweTNrCis2MDU1NSA0YWE2MzgzMTMyOTgwYjNlNDJjMWZkMDFiODVhODdkYTM4M2VkY2M5IGxlZ2FjeS10cnVuaworNjA1NjAgNGY2ZjQ0YmM1MTk1N2UzMDJhMzI0YTRmMzg1YTczOWYzNDFmZmQyMiBsZWdhY3ktdHJ1bmsKKzYwNTYzIDc1MDM5ZDMxMThhZWVhZDY1ZTM3YTEyM2QyNzI1ZmM1NmY1ZTJjOTQgbGVnYWN5LXRydW5rCis2MDU2NCBhM2ZlNzQ4NWY1YzU1NmIzZmVlYzVlY2JmYzhjOTYzZGMyZjMxODY5IGxlZ2FjeS10cnVuaworNjA1NjUgMzg1MGQxM2JmOTZiNzUzOWI1ZTgyOGFjZWFiZGRmMmVjOTIxZDU2OCBsZWdhY3ktdHJ1bmsKKzYwNTY2IGYwMzk1NWZhZmZiNDc0YjYxMGRhMWY1NWE1YmRiN2ZiNGI4MzdhNTQgbGVnYWN5LXRydW5rCis2MDU2NyA4ZmRkNmQ2MmVhNTVhYjc0YzJiZTlhNjdlOWMwMGI1N2RlOWMxNjBlIGxlZ2FjeS10cnVuaworNjA1NjggY2MzMTlhNWY1MDNlNzQwNmUxZGQwOTg1OWU2ZDgzZWEwZGMwODk2MCBsZWdhY3ktdHJ1bmsKKzYwNTY5IDNkN2I4NGRhYTM0YTRkNGNiYTU5ZjQyZjE3NDM1ZjQ5NjNhMWYyNGEgcHkzaworNjA1NzAgM2JlNGZhZmQ5Y2MwZGYzNzdlOGVmNzk2YTJjZjBkZjcyNTQ5MDY1NiBsZWdhY3ktdHJ1bmsKKzYwNTcxIDFiZWI3ZDI5M2Y1NTJjODBjYjU1Y2QyN2I0YmUwYTQxNzU4OWQwYzEgcHkzaworNjA1NzIgMzhkZTBlNDFkMjU0ZDc0Njk0MGQ4YmJkZDIzOTVkOGI1ODMwZGQ4MiBweTNrCis2MDU3MyBmNjlkYTNmNTcyMTc2NmUxZmIxZGZhNjcyOTY2OGM0NWFhNmJlYTJhIGxlZ2FjeS10cnVuaworNjA1NzQgOWI2N2QyNTk1YTIzMWI2Zjg5MmQ3NTk0OWM2OGUzODFkMjAxZDk1NyBweTNrCis2MDU3NSA2NDNjMTM5N2Y5NTQwZjAyZWM4YmI0MjFlMmRiZDE1MmUxZjU2NTlhIGxlZ2FjeS10cnVuaworNjA1NzYgOTY4NmM0YjQ2MjQzZGE4NWMyZTUzYTA3ZjZkN2RkNmE2YzljNmRiYyByZWxlYXNlMjUtbWFpbnQKKzYwNTc3IGU2MTEzNWY3ZjliYmZhYjdjNWIxNjYwMmIxYzYwMzQ4MTY2ZDg1NGMgcHkzaworNjA1NzggY2IxZTVjMzdkM2QwMjQwZThjNTk3NWZlYjYyYWEzZDBhMzM3YzhlZiBweTNrCis2MDU3OSA4NjYwMmI2MDM0NjJjODE2YTg2NjIyYjMxYjRjZGM0YTYxZGEzODA1IHJlbGVhc2UyNS1tYWludAorNjA1ODAgMWY4N2VjOTkxZTU5ZGVhZjQ1YWU2MTc2Yjc1MzIxZGU0OGYyMDA1YyBweTNrCis2MDU4MSBlODdiZDhkZGQwMWIwYTA5MTFlOWQ2MGQ2YWZkNzA2NTUxZGEyZjIxIHJlbGVhc2UyNS1tYWludAorNjA1ODIgMGRmYWE5MmJkNTM0OGRiNDhjMWVhMTZiMDYxNTVhMThiYTYxMjVmYSByZWxlYXNlMjUtbWFpbnQKKzYwNTgzIGU2MDY5YjI0MDMxZWFlNGEwZTdhNTdmYTBkYTA1N2I1MmVhMDk1NjQgcHkzaworNjA1ODQgM2Y4Zjg2NDkzZGFhZTgyOTcwYjRiOTk4NjY1ODk0YjRjZTA5ZmZlOCBsZWdhY3ktdHJ1bmsKKzYwNTg1IGJkZjc0ODY4OTNiYWFhMmM3MWY1OTY0N2E5MmJjYjYwNjc5ZDUzYTMgcHkzaworNjA1ODYgNjQ2MzQ3NDQ0ZmFhNTJjYzEwNWRhMjU2YTVjOGE2NjlkZjAxNGNlNCBweTNrCis2MDU4NyA1YmRhNGY3NmFkOTJjNjc1MWE0M2E0MDQ1M2IxNjFhNTllYzRjOTRmIGxlZ2FjeS10cnVuaworNjA1ODggOTRkOTgwOTY2MDU2ZmUzZWU5MDU5ZWU0ZDE2ZTNhNmU3ZjZjOGE1YiBsZWdhY3ktdHJ1bmsKKzYwNTg5IGYyZjk5MTYzNDc4MTQ4NGE0M2IzYjBkYTcwNmNmY2RiOWE5OTJiOWQgcmVsZWFzZTI1LW1haW50Cis2MDU5MCA4ZDg5MDM3ZDVmYzFhYzIwYTExNzU2ZTBkMGNlNDJmYWU1ODRhODUyIGxlZ2FjeS10cnVuaworNjA1OTEgMDYwZjAzOWQyZmFiNTQ1NzU4YzBiY2JmOTdkNWFhMmE0Yzk3NmNkOCBweTNrCis2MDU5MiBjZmEyODA0MjRiNjUwZjg3OWVlMzA4N2RjMDc1ZWU3MmM4YWI4ZGRiIGxlZ2FjeS10cnVuaworNjA1OTMgYjAxMTM2NjEwMmRiYWI3NzlkN2JjNTcyNWM3YjliYTlmMDU5NGNjZCBsZWdhY3ktdHJ1bmsKKzYwNTk0IDRkNThjMGZhNmUzNDMyMDdiNWIxODkwYmE1MGU0MWI5Y2FlNDk1ZmIgcmVsZWFzZTI1LW1haW50Cis2MDU5NSBkYWM0MjE3ZTk5NjVhMGVhOWUyM2NhODY2ODkwMmNjZTc2MDAzZWI2IHJlbGVhc2UyNS1tYWludAorNjA1OTYgZDJiNDlhNjhlNmY3YmIwZWFkMjZiMmVkMDcxMTlmOTk4OGUxMWM3YiBsZWdhY3ktdHJ1bmsKKzYwNTk3IDVmZTU1N2M3NjBhMjAwZDY3ODZmMGJkZGM3OTdkMmUzYmJiZTA5MGMgcHkzaworNjA1OTggNjg3NDM3ZjdiNzg0OTE2OTJmYWNkNzEwY2YwMGU2ZTI3MzUwMjkzNSBweTNrCis2MDU5OSAxYzJhMjY2ODZlNTQ0MDFiZGYxZGMxMDNlY2NjZDNhNDlmZDljYzcxIGxlZ2FjeS10cnVuaworNjA2MDAgODNiNWQ2YjJhYTcwZjNjYjM1Y2Q5Y2VlM2UwYTgxMmE3NmVjOTJmMyBweTNrCis2MDYwMSAwMWQxYTRmZmQ1YjM1Zjk5ODFkNDdhYWRjYzk3ZDdkYzE1YTllZTk4IHB5M2sKKzYwNjAyIDY4NjM2ZWE4OTE1MzExOTM1MGY1ZmY4ZmJmZjc5ZmRmMWZjNzM3Y2MgbGVnYWN5LXRydW5rCis2MDYwMyA4YmMxZmRjNjMzNzBkMTRmYjNkMmFhZjA2ZGYzOTJjYzlmYzkyN2E4IGxlZ2FjeS10cnVuaworNjA2MDQgZjRjMGU1M2MzNTYxYTM2YjlkNmE1YjEyNzRiZmVjYjc5ZGYxMDlmOSBsZWdhY3ktdHJ1bmsKKzYwNjA1IDc3YjM3MWM2OTU4Y2VkZWRkMDU3ZDNlYzY0ZjE5Y2JiZmIyYWRjYzcgbGVnYWN5LXRydW5rCis2MDYwNyA4ZmVjNTBhMzg1OWY0ZDFkZjJhNGM3ZWZmMmI5Nzg1ZjA4NTMwNjFiIHB5M2sKKzYwNjA4IDExMWNiMmFkN2FmNDhkNjUxZjIxNDU3ZmJlOTRhY2ViZWZlN2NlY2IgcHkzaworNjA2MDkgM2VjZDUyNmMzNWM1NjcxZTVkMWQxZWNkYjcyY2U2YzJhN2Y2N2QyYyBweTNrCis2MDYxMCA4ZWYzYzdjMDA0NzAxNTlhZjBiZTA3ODA3Nzk4ZDNhM2M3ODI4MTMxIHB5M2sKKzYwNjExIGI2NWY3OWUzNWIwOGVjZTRiODhiZGJlMzNlODc2N2VhODUzYmFkYzcgcHkzaworNjA2MTIgZmRkOTkyOTFjYzQ1OTE2ZTllYzIzYWFmMjcyM2EyMTE1NjRhMjFlYSBweTNrCis2MDYxMyAxNjUzZjVmZjNjMDAxNGFhZjgzMjkxNjRiZTQxNDM3YjljNzUwYjk5IGxlZ2FjeS10cnVuaworNjA2MTQgYTRjODdjODg5NjQ4MzFkMzgzZjc4ODVkYzM4MGE2MzFjNjg0ODU2OCBsZWdhY3ktdHJ1bmsKKzYwNjE1IDczNzgyN2I0YzVkNzVmNTI1OTJiOTcwODNmZTJiYjUwYzZkZWM0ZDYgcHkzaworNjA2MTYgOTIwYTc2MzNhZTA4OTIyNTFkZWMxMmZjODIyMmQxY2Y0YTc2ZmYxNiBsZWdhY3ktdHJ1bmsKKzYwNjE3IDE0MmExMWIzMDU3ZTlhZjg3ZjI2M2RkMDcyNjk4Nzk2ZjdmNGIxN2EgcHkzaworNjA2MTggYjg0N2E5ODIzYjJmZmZhYTI1NDRhNjAzNjY2OGNkNTY1YjVjMzM4OCBsZWdhY3ktdHJ1bmsKKzYwNjE5IDMzYjc4YWFmYmJiMjIyMmM5OTAxOTBlYWJjODk0ZGFjMjY5MTFlYTEgcmVsZWFzZTI1LW1haW50Cis2MDYyMiA2NWZiMjE3NTA5NDI1YzllNzFlN2YxMjFiNWUxMGZhZTkxYzJhNzJjIGxlZ2FjeS10cnVuaworNjA2MjMgMDU3MWJjNGFiNmMyODIxYmE5OGMyNmNhZmE1NzliMjlhOGYxNzJiMyBweTNrCis2MDYyNCA4MTkwMGE5MTQyMmJmNzEyMThkNGRmNDFlOTRkMDM2NTU5MDZmNDYxIHJlbGVhc2UyNS1tYWludAorNjA2MjYgMGY3YzMxN2JiZTdmOGNkYzZmZGE4ZmY0ZTY0NWIwODk2N2MzNDU2MiBsZWdhY3ktdHJ1bmsKKzYwNjI3IDBiYTMxY2VhNmUwM2IyYzkyMzc5OGU3YTg5M2IzYWI3NzE4MWI2ZWIgcHkzaworNjA2MjggZGJlM2ExMzNiNzE4MzQyYWJiOTFhZjJmZDlmZjhmZGI1MDYzNDFkNSBweTNrCis2MDYzMCBmNTVhNGYxMTkxNDE5NWEzZmU4MDdhYzQyYTExNDUwNWQ3Yjk1MmJjIGxlZ2FjeS10cnVuaworNjA2MzEgYTIxMjZlZGIyMDdiMTI4NDBjZTA0Y2FlMzg1OGExNDY5NzA1MzI5MiBweTNrCis2MDYzMiAzNDY2MjViYTU5MDMyY2I3NDRjNjUyMmI3MWY3YjBkNjUyN2MzNTVjIGxlZ2FjeS10cnVuaworNjA2MzMgZmZlMmQwZjU3ZWZkNzFjZmNlNmM1NzE0OTYwMGI5YmEzMWUwMzNkZSBweTNrCis2MDYzNCBkMzllMWEwZTA5NjU0ODIzNTM1M2EwOGMzNTI4YzQyMTA4Mzg0M2M4IGxlZ2FjeS10cnVuaworNjA2MzUgMDYzZDAyMmFjMDExYjg1ZWU4NmYwMGQyMzQ5NjNkMGIyNGNjMWIxYiBweTNrCis2MDYzNiAzZjEyNDk3NWUwOTk1OTQ1ZDQ2ODRhZTNjMGQ2YzRkMGEyYjBmMWRjIGxlZ2FjeS10cnVuaworNjA2MzcgM2JiM2M3NDNmMTA1ZjcxMGFhOGM3MzMzNDE3MjkwYTU5Nzg5MzEwOCBsZWdhY3ktdHJ1bmsKKzYwNjM4IDkzOGJhNjIyYWNhMDNjZjJkZTZlNDhkODM3ODYzZWU3NzhmZGVkZWUgbGVnYWN5LXRydW5rCis2MDYzOSAwOTU4Y2M0NmIzM2YzNDlmY2MzMWYyMDUwZjYxNmNkNmEyM2Y2YmIzIGxlZ2FjeS10cnVuaworNjA2NDAgOGNiYjhhYTQ1YmE5YTlhZGI1YzY5NTk1MWI4ZmFkMjg3ZTRlNGZiOSBsZWdhY3ktdHJ1bmsKKzYwNjQxIGZlYjZkZDM2ZDUzZjMzZTk2NjMwMmE3ZmI0MTRmOWQ1MDJjYmY1YWIgbGVnYWN5LXRydW5rCis2MDY0MiBjNzNhMjgwMmI3Mzg2NjBkMTJhMzk0MTQyMDhlZjkxZjA1MjExM2MyIGxlZ2FjeS10cnVuaworNjA2NDMgZTgyYWIyNDIzYWFiNzA5YzZhYzk3YTY0OGYzMjZiODFiYjZkMTEyYyBsZWdhY3ktdHJ1bmsKKzYwNjQ0IDQ0ZTJkOTg5OTExNWQ3MjhhNGE5YTFjZjE4N2ExODJiMmI3N2IxZmEgbGVnYWN5LXRydW5rCis2MDY0NSA3ZGM5ZGVlMDk5ZTg4MGRhN2YxYjkwMTE4MTUzYTAxNzJlZDkyMjVkIGxlZ2FjeS10cnVuaworNjA2NDYgNWFjNjA1YzBmMjdjYThkODRiYTk4ZWRkODQ0OWY5NjU4MGYyYTEyZiBsZWdhY3ktdHJ1bmsKKzYwNjQ4IDIxOWY3ZjIxMzRkNDhlZjlmMDE1Yjc1MmZkYzNkMmRjZmRkYTM4OGEgbGVnYWN5LXRydW5rCis2MDY0OSBkZWI0ODczZmEwZjA0YzU3YmFkZWVmMjY2MjJhODgzMDk1MDNmZjcxIGxlZ2FjeS10cnVuaworNjA2NTAgN2ZhNDcyNWNjZTg3OWRhZWRhMTkxMTBhZGJjYmE5MzViNWNkYmI2NyByZWxlYXNlMjUtbWFpbnQKKzYwNjUxIDJjNjNmMTUyMmJiZTRlNzZlY2QzYTkzZjJlNTFjZWE4MDdhZThiMzYgbGVnYWN5LXRydW5rCis2MDY1MiBjZGQyZWEwODBlMjM2NWRkYWVkNjYyMjdmMGE3MDk4ZDE2NGY1YzQwIHJlbGVhc2UyNS1tYWludAorNjA2NTMgNGUzM2ZjODJlN2YzMTg4ZjU5MTU4YTVhMzU5MTRiOTVhZTJmOGE0YSBsZWdhY3ktdHJ1bmsKKzYwNjU0IDQwM2Y3MDVkNThjOTJmNmFhNDI1ZTk0ZThjMWQxZjg1YjFhZDNlOTUgcmVsZWFzZTI1LW1haW50Cis2MDY1NSAzODFmNGEyOTMzYjU4OTcwMTRhMWU4OGJiNWY5MmI4YzUwMDNlOTIzIGxlZ2FjeS10cnVuaworNjA2NTYgNWQ4ZmVjYTMzMzE1ZGU5N2I3ZDNhZGIxOTljZjNjZGMyMjQ1ZTEyYyBweTNrCis2MDY1NyA1OWE2NDg1YmFjMDIzMWQxY2Y2MmVhMjUxOWMzMzZlMWMzNjljYjBhIGxlZ2FjeS10cnVuaworNjA2NjAgNGU0MzcyMmZkNTAzZTE2MjdjMTA2NzQyN2I0MWI1M2IyMmQ1ODIyZSBsZWdhY3ktdHJ1bmsKKzYwNjYxIDI2MjI2MzczN2JjZTJkY2ZmMmJhYTMyNGQzYzY4OGE5OWJjOTAxM2YgbGVnYWN5LXRydW5rCis2MDY2MiAxYzMyNmRlYTQ5NGMyYzllYjg3MDBjYThiMzljODBmOTdlNGJmNDgxIGxlZ2FjeS10cnVuaworNjA2NjMgZTk0YWYwYzdhYTEyYmEyODcyZmI2NTNlZjI0MzFlZDVmY2I5M2Y0NiBsZWdhY3ktdHJ1bmsKKzYwNjY0IDQxNjY5NDVhMGNjNGZmYjc2Yjg2YjM4MWFjNjRjZGNjM2Y5YjAzMGUgcmVsZWFzZTI1LW1haW50Cis2MDY2NSAwNDYzZjgwMWQ3ZGM1MDk3Mzg1MmQyMDI2NzRlMzYwMzcyZWM0ODZjIHRydW5rLW1hdGgKKzYwNjY3IDU0ZGNmODA2ZGVkNjNjMTg3ZDg3MGEzOTJlNzAwMDVlNmExMTA4NzggbGVnYWN5LXRydW5rCis2MDY2OSA0MjQyMmNmMDIwOGIwYWRlZDZjYWZmNmQ1ZDc4NmIwMjk4MjJmNTE1IHB5M2sKKzYwNjcxIGVjYTkwYjhhYTdmZGI4ZTI5NzlkYzA5NGY4ZTZmZDdhYTQwMzVhOWIgbGVnYWN5LXRydW5rCis2MDY3MiAzZmE3ZmIzMjhkOWFhMjkwYmY3ODg0N2NkNTc5NTliNTI2ZDcyN2RhIHRydW5rLW1hdGgKKzYwNjczIDE5ODBkNzA1ODYyNzI1NzA3M2QyMmM0ODcwNDQwODUwMDA0NmRlNGMgbGVnYWN5LXRydW5rCis2MDY3NCA4MmQ0NDI4MGMxMzU2ZWFkMDU0MDU2MWUxYjIyMGU1OTRhMjlhNzEwIGxlZ2FjeS10cnVuaworNjA2NzUgNzdjNTc5MWI3YzIxMDE3NzgxYzc2NjNiNDI1Mzk0MmY2N2JmOGUzZCBsZWdhY3ktdHJ1bmsKKzYwNjc2IDE1YmM4ZTgzMjQyMDdjMjdlMzExYmZiMjI2NjQ3YTQyOWVmOGEwZTUgcHkzaworNjA2NzcgNjhkMzFhOTFmZGYzMjkyMjk2MzU1ZmRlZWQzNTQzNzZkODk3MTAyYyBsZWdhY3ktdHJ1bmsKKzYwNjc4IDU5NTBjNDlmMjI1YWRlYTQyMTYwMzUxODRhZDA5NjljNGQyZTY2YzggcHkzaworNjA2NzkgOTdiNDIwYjJkOGQxMGUwY2M1MjIzNjhkZTc5NDM3NjBmZDZkMjNmZSBsZWdhY3ktdHJ1bmsKKzYwNjgwIDViYTVjNGM5YTAxNjk2NjFmN2QxYmQ3YjRlNGEzOTBlYzMwNDUxZTggcHkzaworNjA2ODEgMmE4MjFlMDAxYTJiNDZkM2RhODEwNGJmOGU5NzI5M2ZjMTE4NGFjYyBweTNrCis2MDY4MiA4NTI3ZWQ3NTYzZDBiNGJjZjM4OTc4YzVjNjllMzZjYTg1OTZiYjk0IHB5M2sKKzYwNjgzIDBmM2Q1OGY5Y2QzNTI2ZGNiNmYyYjdjODE4NGFmZGIzYTZhMGRlYmYgcHkzaworNjA2ODQgNjQ1OTM4ZTBlYjUyYjI1MDZiYmFjNzU5ZGRlYjg3NDk4YWM1NjIxYSBsZWdhY3ktdHJ1bmsKKzYwNjg1IDI0OTA2Yjc5MjU0MjQzN2VmMDBmNmEzMTdhYTlkOWQ4ZDAzMjlmNDcgcHkzaworNjA2ODYgYWViZDljNGQxOWVkZmMxZDQ5MTBmNGM0NTc3Y2E5N2RjZmQ5MmZiNiBweTNrCis2MDY4NyAwMTU5ZTYyYjk3YzU1YzYwNDk3ZmYxMzZiNGE0NzMyOTgxYTQxZWQ0IGxlZ2FjeS10cnVuaworNjA2ODkgYTgyMTU3ZjUzNGE3ZTI5OTQ1NTA0OWNkNDYyYWVjMjE1NDZjYTJmOCBsZWdhY3ktdHJ1bmsKKzYwNjkwIGEyYmYyYTU5NDA0YTkwZWY2M2E0YzkyYjVlYWZiOTMyOWNkOWM3NGQgcHkzaworNjA2OTEgNGNkMWQwNDc0YTEzNGU1YTgwMDNjNWYyOTM5M2Q2NjhkODM1ZTUzNyBsZWdhY3ktdHJ1bmsKKzYwNjk1IDgzODIxZTBmMzk1YjRkN2M1MWRmNTQxMDE2ZTUxYzBkMmI5ZGIzZDEgbGVnYWN5LXRydW5rCis2MDY5NiAzMjljNmIyZTExMDUxNzk0YmFlODZjYzNiNTA5YzI5NTIyNzc2NjM0IGxlZ2FjeS10cnVuaworNjA2OTggYmM2Mjg1NGVlOWMyMTE0ODljM2I4ZDg1ZTdkMzMwMTQ3OWIxM2JkMyBweTNrCis2MDY5OSA2MjYwZGIyMmZmNzUyZjQ1YzQ4YzBiOGU3YzBjZmU0YjZhODJkMjNhIHB5M2sKKzYwNzAwIDU4NWFlYTkwNGYwZGI0ZGRhODI2YTczMTYzM2E1NTU0MTVkMmNhMTggdHJ1bmstbWF0aAorNjA3MDEgODcyOGY4MTZjYTc1MjAzZTQ0OWJlYTUzYjlmOGIwNDRjZTk5NjBiNyBsZWdhY3ktdHJ1bmsKKzYwNzAyIDg2ODliNjcyNjViZmJmMzZmMjY1MWM3OTQ1NDFiYzM2MzIyZDI1Y2YgbGVnYWN5LXRydW5rCis2MDcwMyA2MWViYTgzMzJjMTQ1ZTAyNWNjZWRjMjBhNmY0ZDgxM2EwZjVlOWYzIGxlZ2FjeS10cnVuaworNjA3MDQgNzQ1MjgwZDcxNDI1NWNlYzQ3MDk0N2ZjOWJhMTk5YmY3ZDU3Yjc1NyBsZWdhY3ktdHJ1bmsKKzYwNzA3IDg2OTA2YTVjZWNhNjM0ODgyNTY2MmM0ZDM5ZmYwMGM4NzQ1OGI0YzIgbGVnYWN5LXRydW5rCis2MDcwOCAyZDZmNjQwZjcwODEzOWM4MTBkZDQ0MGFkOGRlNzE0YmVlYzgzMmI1IHB5M2sKKzYwNzA5IDg1M2M3M2IwMjllM2UyOWU3Njg1NTAyNWNhZWUxMDMzZWI1Zjc0MTUgbGVnYWN5LXRydW5rCis2MDcxMCA3ZjRjZWYwNDE4NmYxY2JiZjVjMTM0MDYyNzU1Y2ZmZDYwZGNiY2ExIGxlZ2FjeS10cnVuaworNjA3MTIgNGFlMDM5N2VmMWM1ZjE0ZDljNDI3ZWVkNTdiOWYwNjAxNmRmY2M2NiBsZWdhY3ktdHJ1bmsKKzYwNzEzIDZlYmU4OTMyOGI1ZTczZTk2MjFkZTIxYzc0YjdmYTlhOWU1OTYxM2QgbGVnYWN5LXRydW5rCis2MDcxNCAxZGM3MWYwOGVhN2M3YzhiOWRmMDgwNTQ0NjUyN2Q4NjgyZGE1N2MyIHB5M2sKKzYwNzE1IGZiNTUxYzkzOGE1OThlOTNlNDE0MjQyODMxYjQxZGIwMjgxZDEyNmQgbGVnYWN5LXRydW5rCis2MDcxNiAwMTNlNjZjYjM2YzBmZTViMmFiNDRkYTcyYjljMGI5MGMwNDYzNGRkIGxlZ2FjeS10cnVuaworNjA3MTcgZmQ3Nzg5YTFiZmNkYTJhNjVkZDM0MjQyYzI5ZmUzMGZkYTRkYjU4ZSBsZWdhY3ktdHJ1bmsKKzYwNzE4IGY4ZWUwNmE1MWMwYjJmMjAzNGRlZTYzNjA0NjkxYmY1MjRiZTRhNGIgbGVnYWN5LXRydW5rCis2MDcxOSBjN2Y5ZjlmZGNmODI3MWMzMTIxMTI1MjMzMTk0NzNkNzMyYWQ0ZWRkIGxlZ2FjeS10cnVuaworNjA3MjAgYThjYTllMDY1ZDlkZWUxNWU5NWQzNDFhNzdlOTllYjhiOTg2ZGUxNSBweTNrCis2MDcyMSBhNTBjMWZiN2Q5MjBhODFiMTlhYWQ4N2UwZjAyYjI1ZDMyNGQzZTFlIGxlZ2FjeS10cnVuaworNjA3MjIgOWYxYTJjOTkyNTVmZjQxYzExMmY0Nzg1ZTYzOGRhM2NjMWE3ODI1MiBsZWdhY3ktdHJ1bmsKKzYwNzIzIDFkYzVjYTExNDQ4Y2QwNzMwODdjOWY3NjUyMzFiNzZmYWZkY2VlOGQgbGVnYWN5LXRydW5rCis2MDcyNCBkYzUwZGVlN2Y4ZTUyZTMxZmZkMDNlYmRjNjc3MDE2Y2I2ZGQ2OTQ3IHRydW5rLW1hdGgKKzYwNzI1IGU2NzA1MGQ2MmFkZmE0NmVkYWVhYmY2MGQzYjE5ZmMyMTFiMDVmNTYgcHkzaworNjA3MjYgM2U1YTc5MGUwY2Q2NWQ5ZTc4YTU4YmMwOGNiZjM2YzkxODhmMmVkZSB0cnVuay1tYXRoCis2MDcyNyBlZWVmMzlhNmY0ZGQ5OTVhZjZiMzMwYTcyNDQ5Y2RmOTU2NzVmMWE0IHJlbGVhc2UyNS1tYWludAorNjA3MjggNGFmYmNkZTM0M2VkYmMzZDI4MWE5NDJkMzg1YzMzMTdhNDQzM2IyYyByZWxlYXNlMjUtbWFpbnQKKzYwNzI5IDQ1NjVjNjk0MjBiOGNiMzRhOWYxMzllNGU0MDMxM2I0ZmNmNGE2ZDIgcHkzaworNjA3MzAgNzkwNTU0YWUyYjA0YWNiMzBhZGM3MjY3MTBiMDdiOTFkNzBkYzBmYSByZWxlYXNlMjUtbWFpbnQKKzYwNzMxIGMwYWE2ZDhmNWNkYjQyMGUyODhlMjdjNjY5Zjg3OTFlNjdkMTFlNTcgbGVnYWN5LXRydW5rCis2MDczMiBjMmZjMzE4YzRmYTMzM2Q2ZTgwYjVjN2I0ZjgwNzQ5Yjk0YTgyNWQyIHB5M2sKKzYwNzMzIGNhMDg1MzYyMmYxYTFmOWI5YWMxOTFiOGUyMTRkOGI3OTE0NDRkYmYgbGVnYWN5LXRydW5rCis2MDczNCBmODViNjNmNTY3MDYwNDE4YTc5N2I1MzVjZGJhNWMyOTYxZGQ2ZGM3IGxlZ2FjeS10cnVuaworNjA3MzUgODA4Zjg0YzU2NmYwZWRhZDZhYmI2OTc0NTllMjc4YzNmZGQwZTJhZCBsZWdhY3ktdHJ1bmsKKzYwNzM2IDg1YjY4ZDdkNmY0MTFlY2NlY2FiMWZlMjQ4Y2JjOWYyM2RhZmViMGEgcHkzaworNjA3MzcgYTM5ZmI4OThiZWIxYWQzZGEzZjYxMTEyYWNmZjk0YzdkZTM5ZmU4MCBsZWdhY3ktdHJ1bmsKKzYwNzM4IDkyYmQyMWU2YTgyYzRkMmM3NGY1YjJjZWU1MTJkYmFkMTFhNjhiYjMgbGVnYWN5LXRydW5rCis2MDczOSA1MDc2MmIxOTRhMDBhZDZiMTVhYTFkNjc1ZGExY2VlNTVlNjcwZWE1IGxlZ2FjeS10cnVuaworNjA3NDAgZWViNzJjZjM3YWViNGNiNDgxNTZlNGQxY2M0ZmRmYjRiMTFmNWZkOSBsZWdhY3ktdHJ1bmsKKzYwNzQxIDRjYTcwNjYzYTc5ZDA5YTdmNTA4ZDBhODgxYjQwNTIyMmVjMzMzNDAgbGVnYWN5LXRydW5rCis2MDc0MiBmMGU4YjU0MWYxMTMyMTU4NGYxZTRmNjIxOTU4NGVkOTM1YTdhNTA5IHRydW5rLW1hdGgKKzYwNzQzIDI3NWVkODU5M2VjNjFkMTYwZmY2YWVkMjJkNTljYmNlMTNjMmZlNjIgbGVnYWN5LXRydW5rCis2MDc0NCBiYTE3YjIxYWI5M2U2NjQ3ODY5ZjZhOGVlNzA1NTU1YWNlNDIzNDRkIHJlbGVhc2UyNS1tYWludAorNjA3NDUgNzg5YWE2N2RjZTZkODJiMjFmYmY2N2VkNTczOTAwYWU4NzA3MjAzMiBsZWdhY3ktdHJ1bmsKKzYwNzQ2IDVmNWI0NjQ1ZDkxMzJiNGJhOThlNjhlZGJkNGFiODZjYTdiNjBjNDMgcHkzaworNjA3NDcgOGViOGU5YTMyNjBkNmVlOWQwYmJkNWJjMGM2MjZmODI5MzZhZTU5NCBsZWdhY3ktdHJ1bmsKKzYwNzQ4IGFlNTVlNzE0ZDc0NGQyYTAyNjUzYTBkMTYyYTg3NzQwZjUwMTk3YzUgcmVsZWFzZTI1LW1haW50Cis2MDc0OSBhNDdmNWZmYzA4MjM1MzdmNzI1YTUyODk3ZGU5ZTJmMjkwYWYyYjZmIGxlZ2FjeS10cnVuaworNjA3NTAgMjdmODg1OTdkMDJiOGMxMTE4ZTUwNWI2OTAxNTk5M2ZiZGVkM2Q2MyBweTNrCis2MDc1MSBiMWNiNmI0NGI3OTg3MzMzNzZkYmE4OTI5NTgxMWUwMDZhNmZiNjA0IHB5M2sKKzYwNzUyIGQ2NzNkMDAzYjZjYTgxZTE0ZDc2NmU2NzhlZjY5OTdiMzgyMmM1ZjMgbGVnYWN5LXRydW5rCis2MDc1MyA5NWMwMDAyNjU0MDA5MDcwNTc1NjI0MTRjMmFkNTQ5ZWJkZWQyOWI2IHB5M2sKKzYwNzU0IGQzMTlmNDBjZDAwMGZiODRlZTQ4NzU3OThjYmE2MTJiMzk1ODc4MTkgbGVnYWN5LXRydW5rCis2MDc1NSA4ZjhhZGVjOTNjZjJjYmNkNmRjZDAyYzU5NTM2MWZiNDE0NDFmNmFlIGxlZ2FjeS10cnVuaworNjA3NTYgZjEyMDUxMjFlODQ4YTYyMzNjZDhkZjQ1NDg3NzdjMzZjOWZlNGM1NyBweTNrCis2MDc1OCBjZWVlMDk4MWYxNDFkNDAyMWNjNTUzMmE3NzE4OGY5NzcyZDEzODExIGxlZ2FjeS10cnVuaworNjA3NjEgMTE0ZGMyMTU4MzY5ZDg3NjAwMmUzZDllZGQ5NWI3ZWJiZWIxYzQ2MCBweTNrCis2MDc2MiBjNTIwNTU4N2IyYWJjMDY3ZjdmMjg5NWIzZWUwMDJkNGUxM2Y2ZGRjIGxlZ2FjeS10cnVuaworNjA3NjMgYWU5ZWNlZGI0ZjkxYzYzOGQ1MTZiODU5YThjNTJkOWU0MjcyODNkOCBweTNrCis2MDc2NCAxOGM3NmFmNGYzNjQ4ODU0NTc1NjVjMWFhMjU2NTE2NjMzYTE0NmMyIHJlbGVhc2UyNS1tYWludAorNjA3NjUgNmViNjQyZTBhZGQ4MGNkNWY3YTg3NjYwZDM4NjJhNTc1ZTBhZWIxOSBsZWdhY3ktdHJ1bmsKKzYwNzY2IDdlZGY3MjI1YjA1ZjhiMmI1NzYxN2JiZWJkNTEzNmVhOTc5NGYxNTYgcmVsZWFzZTI1LW1haW50Cis2MDc2NyBiZWVhMzViMGVkNTBhZDVhMWY1NTk2MGNlNTBiMmQ5ZjgwNzJkN2NmIGxlZ2FjeS10cnVuaworNjA3NjggYjBmMzgwYThiNDQ3YjRiM2ZmYTRiZDVmNWQyMzRmN2U2MTM0MzQyNCBsZWdhY3ktdHJ1bmsKKzYwNzY5IGY5MDNhNjQzYTg4YjFiNTFhNDY4MzczODRmOTQ5Nzk0ZjExZDdjODcgcHkzaworNjA3NzAgNWYyZWE5NjVmODUzZWNlMTg4MGJlMDQ4OWZmM2Y4OTkyYzg1MGIzZCByZWxlYXNlMjUtbWFpbnQKKzYwNzcxIDMwYjU2YmViZGU1NGFkYzlkNzhjYTk1MzIwYmFiZGE1YWVjMmQzZTggbGVnYWN5LXRydW5rCis2MDc3MiA3MzcyMzA4ZWI2MmY5ZjY0ZDBkNWFhY2Y1ODNiMDBmODExZTczNzhhIGxlZ2FjeS10cnVuaworNjA3NzMgMzMxMjJmZjgzNDA1MTU4ZWJmNmI4ZWMxN2FjYTk3ZGZjOWRhMGVjZiBsZWdhY3ktdHJ1bmsKKzYwNzc0IDdkMmZiYjRlNTc2ODZhNGZlOGI3MzdiMjhlZjE3YjgzNmFhM2JhZGQgcHkzaworNjA3NzUgNjA4YmQxMDE0ZmJlYTZmY2QzZGY5ZjE2YzQxY2IxZDIyYjNjMDViMCB0cnVuay1tYXRoCis2MDc3NiA1ODRmYzE1ZDQ3YWMyYTcwYWRiNmJiODk1NjEyMjg5NjEyYmZkYzc5IHJlbGVhc2UyNS1tYWludAorNjA3NzcgNDQwZTcxNWJiM2QyZWRhYzYwZjM1YzA5NDhhNTMzZmMzYTViZTFhZCB0cnVuay1tYXRoCis2MDc3OCBkNmVmOWNiNTQzYWY1YTgxN2JhMDQzY2FiYzU5ZTEzMjQ1MjNiMDcyIHJlbGVhc2UyNS1tYWludAorNjA3NzkgNjg1Y2VlMTQxMGY4ZTM0M2Y4OTI4ZGQ5NTEwMDNlYjk1ZmE5ZTBkNSByZWxlYXNlMjUtbWFpbnQKKzYwNzgwIGY4ZmIyNzEwNmVjYzAxODRmMmI2ZTU2MmFhOTI3ZDZiNWY1NGQwM2UgcmVsZWFzZTI1LW1haW50Cis2MDc4MSAwODNiZjZlMGFlNTA1MWNiNTVkNmJkNzQyYzhkMzRiZmIxNzgwNGExIHJlbGVhc2UyNS1tYWludAorNjA3ODIgNzZiMmRlOWM5YjBiN2U1MjNkYTVkM2U5NzliNzMwZDM0Yzk3NTkwOSByZWxlYXNlMjUtbWFpbnQKKzYwNzgzIDFlMGVlMzI0YzUxMzY2ODQzNGM4ODIyY2Q5MmViZDhjMWViMGU2NmIgcmVsZWFzZTI1LW1haW50Cis2MDc4NCA1Njc4NmEyZGVlYzQzYjg3MzZhYzVmZWI0NGQxYjcxY2NhMzhkODcwIHJlbGVhc2UyNS1tYWludAorNjA3ODUgYzdlNjgzZDUyYjNiM2UxMTI4OGQyMjNkYjYyZDY2ZDYxNTk4ZTZkYiBsZWdhY3ktdHJ1bmsKKzYwNzg2IDRmY2I3MDAxMTVkODAzYTlkYjM0YzM4ZmU5ZGUwOGMxMWE1OWIxNWYgbGVnYWN5LXRydW5rCis2MDc4NyBlNzBmNTZjZjY5NzIyZTIwMTY5MmM1MTA0N2NlNmQ3YTZhYmJkNDg2IHB5M2sKKzYwNzg4IDY4MDE2YTA4ODhiOTY4Mzc1YzBhYzlkMjE1MzA2NjgyZDEyMTJkNzIgdHJ1bmstbWF0aAorNjA3ODkgMDk1Y2E5ZmYwZDhlY2E5YzMxYzk1Njg4YmI2NzU4NGVhNWZhMWUyNyB0cnVuay1tYXRoCis2MDc5MCBlNTE4ZTM5ZjRhOWU5NTkxNzZkNWIwZTEwMmMxNWFmNzE0OWE2YTczIGxlZ2FjeS10cnVuaworNjA3OTEgZWY3NTQ4MTczZTYxNzFlOTk1NDk1Y2Q3YjgzMDc5MzU4MDExZmRlMiBsZWdhY3ktdHJ1bmsKKzYwNzkyIDBkZDA1ZWVkNjNkZTk4Njc3OWY5NTIyMDQwZTk2YzBmMDdiYjVlNWEgbGVnYWN5LXRydW5rCis2MDc5MyA4Y2JlMGJkOTNjMjhiMDEzMjNhMzg5MzIxYjEyOTU5MTIwZWRlY2ExIHJlbGVhc2UyNS1tYWludAorNjA3OTQgMTkwZDU1MzczZTUwNTdkM2M4YTc0YTY0ZjJhZDU5MjNhMWU2ODIyYiBsZWdhY3ktdHJ1bmsKKzYwNzk1IDVhZDhhZTRkNzg0ZTZhY2I4NmJkNzg1YzIwN2Q3MzNlYzQ2YjQyNjMgbGVnYWN5LXRydW5rCis2MDc5NiBlMjJiYzhiOTY1NDczZjU4MTc2OTNjZDU5Y2I5MzY2NTRkY2JhYmIzIHJlbGVhc2UyNS1tYWludAorNjA3OTcgNjVhZTY4YzdhY2EzODE2MmJhMDQ4OGUzNmY4ZGEwOThiYzFjYTIxZSBsZWdhY3ktdHJ1bmsKKzYwNzk4IDVjMWRhN2IxYjRhNmI4MjhkYmViMDA4NWU4Y2U1ZjE5Y2M2ZTFlMWQgbGVnYWN5LXRydW5rCis2MDgwMCAwYThhYWU1NzVjZGRkYmYzZDEzM2ZjYjRlZWQ5MTA4MGUzZmU0MWYzIHJlbGVhc2UyNS1tYWludAorNjA4MDEgMWRjMzIyYWRiYjY3NjQwMmU1MmY1MjY4ZDY2ZTM0ZTEwNzVmOGU2YSByZWxlYXNlMjUtbWFpbnQKKzYwODAyIDg5ZWM0MmIyOTg2MzBlODhiMWI5NjhiNTMzMDdiOWMwNTQ2NTE0ZTQgcHkzaworNjA4MDMgMTY3YTlmYzgyODQ0OTFjYjVjZWJlMTI1YTFkOTlhMmExY2VmZDQzNiBweTNrCis2MDgwNCA4M2QyYzcwNDQzZmI3MmIyZDYwNzBlY2E0NDQ0NTEyNjY4NGVjZjdhIHB5M2sKKzYwODAxIGEwMzM2MTc3OTJkMTlkZWM0YjFkZDBhNjc5ZDc1NGEyODE1MjIzM2UgcmVsZWFzZTI1LW1haW50Cis2MDgwNiBmMTk5ZGUzOGFkMDEwMTM3N2FhNDBmYTgyNzIyMmQwMDkwMWJlYzdjIHB5M2sKKzYwODAxIDk1NzAyMGVkM2FmYWU5ZWU0Njc1ZTM0ODViYTYxYzdjMWJkZmRhMzkgcmVsZWFzZTI1LW1haW50Cis2MDgwMSA3MjFhNTkxMGZiZjBkOTkwYTRjYjIzNWE4ODYyOTk5OWUzYWZkMGIwIHJlbGVhc2UyNS1tYWludAorNjA4MDkgMWNlYjJhNmM2MGVlYWU5ZDE1OGI1ZDRiNmM0NjY3YzczYjlkMDFkMyBweTNrCis2MDgxMCAyZDllY2EwYjQ2ZmQzZjA4YmJiZGRlYjQ0NGFmZmZkODIwZjZjMmUzIGxlZ2FjeS10cnVuaworNjA4MTEgMjE4MzZlMGI5ZWIwMzE5NzFkNmRhZGZkMDFlOWFmYWViODIyYzFmNyBsZWdhY3ktdHJ1bmsKKzYwODE0IDc0NmE4ZTFhNzg1YTU5MDVmODAzY2JhNzI1OTIxODM0YTkwZGNjNWYgbGVnYWN5LXRydW5rCis2MDgxNiBlMThjYjIxZjVmNWZmMDc0YzRjMmFmNDYzN2Y2MGM5MDNiNTY1NjM2IHRydW5rLW1hdGgKKzYwODE5IDQxZGMzNjg2ODg5MDhjM2YwZDEzOTIzNzBiYzY1OWI4ODgxNzlkNjUgdHJ1bmstbWF0aAorNjA4MjIgZWVjNjdhZjRkN2RmZjExNWI4ZGRlNzFlZjI1MTE4NjhiNGZhZjRhOCBsZWdhY3ktdHJ1bmsKKzYwODI0IDEwYjI2M2EyMDJjYWQzNzg2M2Y3MTA3MzcxODA3MzQ1NWEwNzZhNDYgdHJ1bmstbWF0aAorNjA4MjUgY2Y1YTVkNzMyZTNjY2IyOTI4YmY5ZWIyYWFiMGNlYzcwMDYwYzJmNCB0cnVuay1tYXRoCis2MDgyNiBmNDgzNzRiOGMxYzNkOGQzNTYxYTM5YjEyZjU0YjJjYzk0ZWJjMzA4IHRydW5rLW1hdGgKKzYwODI3IGEyMzU2NzNiOWY4ZWEyNGJhODE3NjI2MDRhM2Q0ZDIwZjk0ZmFhOWUgbGVnYWN5LXRydW5rCis2MDgyOCA4OTFmYjVjM2JjMTgyYTMxNzQ1ZTZjYjhmYmIxYjY3ZjUwMjU0ZmFjIHRydW5rLW1hdGgKKzYwODI5IGIyZjNmZDlhNGM2NTcxNDhkMjJkNmFjMGY0NWY1NzA3NmI0YzE4NTMgdHJ1bmstbWF0aAorNjA4MzAgYTk3Njg5YjNlNzQyNWU3ZDM4ZTEzOWU2ZmMwOWZkZTY3N2FjNDQ5OSBsZWdhY3ktdHJ1bmsKKzYwODMxIGIyN2RlMjlhMjMyN2E2MjA4NzY5ZmUxZjJlZmNiMDdlYzc1NTllMDcgdHJ1bmstbWF0aAorNjA4MzIgMzMyMjFhZGMwYzIwNmUzMmZmMTQxYWEyODU5OWUyMDc1ZDI1OGQwMCB0cnVuay1tYXRoCis2MDgzMyA0YjQzMjE0NjFhOWYwMjg3Y2E3YmRjMDBlNTRlYWJjMDNlMzM1YjhmIHRydW5rLW1hdGgKKzYwODM0IGE1NzM5MjVjOTFlNDJlYTBjYTdiN2ExYWE2YjYxODJhODAxZGJkOTkgdHJ1bmstbWF0aAorNjA4MzUgM2E1NWMwZmQ4MjJmYjMwNWE5Yzk4MTkzN2YwYjQ0NGZjYjRkYmZhZSBsZWdhY3ktdHJ1bmsKKzYwODM2IDdhMzU1YjZiMjFhYzhkNjRhNmMxNTczYzQ3NjVmOTRiNmMzYWMxODAgdHJ1bmstbWF0aAorNjA4MzcgZGY1MWJhZDg2NzEwMDU0NmFjMTcwMjNjZmIyOGIxNTJhOWIyZDQyYSBsZWdhY3ktdHJ1bmsKKzYwODM4IDQ1MDRkZmNjMTkyNGRkNWYzMDNlMjJiNWQ1MmZmNjA5NWEzZjAxYzYgcmVsZWFzZTI1LW1haW50Cis2MDgzOSAzYzRkNTkzZTE1Mzg2NWI3Y2Y2ZWRiZjM2Y2M2OTgzZGQ2YmI0NjI4IHJlbGVhc2UyNS1tYWludAorNjA4NDAgOTE1ZmRhY2Y3MDJkYTNhYjRlMWFmNTY5YjJjOTFjMzlkNWY2OGFkYiBsZWdhY3ktdHJ1bmsKKzYwODQxIDU1NzIzNmQ3NTJlMmQ5NzllZTJmZTIyY2Q5YjhmMzNiYzBmMjk2Y2EgbGVnYWN5LXRydW5rCis2MDg0MiAwZTJhYWE3YjliMWZjOWJiOWU1ZDlhYmE1ZGFiYWJjYTIxMTY0MzI4IGxlZ2FjeS10cnVuaworNjA4NDMgZDhmMTJiYWUzNzhhZDA3ZTU5OTAzNTE4ZWM4MWRkN2U3MjZjNmNhNSBsZWdhY3ktdHJ1bmsKKzYwODQ0IDE2NmUzYmE3ZGUyNDM3NzVlZDg5NTE4ODNkYjVhZTBjYjE1MjMyYTUgbGVnYWN5LXRydW5rCis2MDg0NSBjNDQ3NTJkOTBmZDJjY2U0MGQ5YjU2ZGQyZjRmYmUxOGEyNWQ1NDc1IGxlZ2FjeS10cnVuaworNjA4NTAgNjJkZjFlMzM5ODMyYjZmNjhmNDIxM2Q4NDc5ODhjNDQyY2FjNzE5MyBsZWdhY3ktdHJ1bmsKKzYwODUxIDcxMTM5YjY5MjQzOWJkZWQ4MTgyYjM4NmVkZDAxMmQyNjVkYmQxYzYgbGVnYWN5LXRydW5rCis2MDg1MiA5YWNlYjkwNTRiM2Y5ZmYyYTcwOTlkNjIyMjEwYTkwZjVjMTVmNWMzIHRydW5rLW1hdGgKKzYwODUzIDdjNGM0NjM0MjEzNzNiNTJlNGU3NTc1ZWYxNmY1Nzk0MDAyOGQwYjYgcHkzaworNjA4NTQgZDM3ODU5ZjI5ZTUxMWExMmM0N2NjYzgxMDU5MDMwODE2NWM3N2Y2NSB0cnVuay1tYXRoCis2MDg1NSA4YzY4ZGI4NmZmODdhNDEzYmJkYWQwZDU2NTVkZmQ2MmRkMGIxMGI1IGxlZ2FjeS10cnVuaworNjA4NTYgMWE4OWU5MTMzMzczOTUwN2UyNmU5NmRhYWFiZTBjNTg2MzM4YjIwNiB0cnVuay1tYXRoCis2MDg1NyAzMThjYTZiYzg5YTNkNWRmM2M2ZGY1ZmE3ZDhmYjU3ODg5ZDI4OTVjIHRydW5rLW1hdGgKKzYwODYwIGYzNzhlZGQyMWRmMjZmNjIyOTMzN2UxMDA4NmE0ZGRjNDM3ZDMxZjQgbGVnYWN5LXRydW5rCis2MDg2MSBhYzA5NWI3NzRlMTkzYmY0Zjg3OWI1NjZiMTI4NGFjOGI2ZjViMjU5IHRydW5rLW1hdGgKKzYwODcxIDI3MGZjZDJlOTc4MjY4YTQ0MzI4NjM0M2I0YWVmNmZjNDExZjE3ZWIgbGVnYWN5LXRydW5rCis2MDg3MiA2NTUwNjU5ZGJjOWRiNjZlMDU5OGZjZmQyZWVhODI3NDg3ZDNjZWU2IGxlZ2FjeS10cnVuaworNjA4NzMgNjIxMjM2NzM5MGUzMjRhYzcxYjcxOWE4OTc0OWJjOGY4YzhiNDNmYSBsZWdhY3ktdHJ1bmsKKzYwODc0IDE4NzJiZDZjZjRiNDViNThhZGE5ZTI5OGQzOWJjM2ZhODgyOWE1MjYgcHkzaworNjA4NzUgMTJmZjE0NmY1OWE3MDcxYWQ4ZDA4NTc1MzcxZWI3YTFlMWI1MjNmNCB0cnVuay1tYXRoCis2MDg3NiA5M2I2MTU3NDEwNzQwYzgzYjZiODIxNDgxM2U0MGUwNDFlMGM1ZmI5IGxlZ2FjeS10cnVuaworNjA4NzcgMDhjYjVhYmZiNWI2YTI0YjE4ZGYyZjMyNmNlYzE0MTk5YmJjMzViYiBsZWdhY3ktdHJ1bmsKKzYwODc4IGNjMDIzMmRlMDY2YzMzZGU2NTkyYTViNTA3MzgyYTExNzc2YjVjMDAgbGVnYWN5LXRydW5rCis2MDg3OSBiNzIzMWJmNmJmYjc5NTllMmM3YWRkOTIzNjg0MzQxNjk3YjgwZmExIGxlZ2FjeS10cnVuaworNjA4ODAgN2FmOTU1ODQzOTI5NjI5ZjZjZjM5YTA3MGNkOThkYzUyYmUzNmIzNyBweTNrCis2MDg4MSAyMWViMWU2ZWRhZmFmMzllNzE0MzkwYTNlMmM3Y2I3ZTMzNTI3MzJmIHB5M2sKKzYwODgyIDljYzdhODY3MzdjOTY1MmZmM2E1MzE4NjcyMGVjYjBmNGI5ZTcwNjMgbGVnYWN5LXRydW5rCis2MDg4MyAzZDJmZjAxNDY1NzQ5MGNiMGQxYmFkNzVjNThiNGU3NThlMjdhYWY0IGxlZ2FjeS10cnVuaworNjA4ODQgMWJjOTIzYTEwN2Q5NTZlNjllOGFjYjE3NDAxYTc2Y2QwZTFhOGM2MSBsZWdhY3ktdHJ1bmsKKzYwODg1IDBlOTJlZjU3YzBkNGE5ZWQzZjMyNmNjZTMwM2YxYjE1NDEyNDQwNDAgbGVnYWN5LXRydW5rCis2MDg4NiBkNGIwZjEyN2NmY2IxZTkwYjVhMDVmOGFiMzMwMzcyYzhmMzNiZTYyIHRydW5rLW1hdGgKKzYwODg3IDUwODc0MTUwNTRmMTkzNzg2ZWJkOWEzZDY5Y2Q3NTdiMzQxNTVjNWUgbGVnYWN5LXRydW5rCis2MDg5MSAyZWZjZDdmNjA2ZjhjZDUxYjJhZGYzYjIxY2EyM2FiYjdhNmFlMTIwIGxlZ2FjeS10cnVuaworNjA4OTIgYmY2YjI2OGU3N2YzYzQyZjBkYzg1MzU1YTkzN2VkNDU3Nzg5YzRlNyByZWxlYXNlMjUtbWFpbnQKKzYwODkzIDNmYzU4NjMwN2Q2NjkzYzRkM2UyOGI1NDZlZDc0NmNkZmViNzFmZDAgbGVnYWN5LXRydW5rCis2MDg5NCA4ZWNlNWNhNGE3ODVlMDc0ZGYxMzllOTc1ZjNkYzkxZTBjNzU4Y2UwIHB5M2sKKzYwODk1IDYwNmQ0Y2M1Y2RiMzBiYmFkMTZjZDM2MTU3NTI4YjMxOGY4Y2EyNmIgcHkzaworNjA4OTYgMjdiZWFlMjFhODJjOTY5NDNkNmFkMWRkODRlN2Q3ZWNmNzNhMjdmYiByZWxlYXNlMjUtbWFpbnQKKzYwODk3IGJjNzBlOGI4OWExYzA1NmM2NDU0MTExZWU1OWFjMGU2MTJiMDI4ZWIgcHkzaworNjA4OTggYjBjYzdhNmRhMWUwMzJlMmJkNTFjMmUxMzQ0NzUzNmU4OWI1Yjc4NyB0cnVuay1tYXRoCis2MDg5OSAzZWU3Nzk1OTg1N2FmM2FhMWY4NWFmYmNhOTQ5YzRkNjQxZjZiOTc5IGxlZ2FjeS10cnVuaworNjA5MDAgMjk1ZjM3ZmM2MjFiOTUzYzE3ZWI1ZjZiNzkwMTk0NTAzYmE0OTI2OSBweTNrCis2MDkwMSBmOWY0NzljZTUwZDBiYTRkZjA3ZWQzYjk4N2M0MTVlZjk3NTRkOGQwIGxlZ2FjeS10cnVuaworNjA5MDIgMTVkNTc3NmYyNzAzY2MwODc4OGE1ZDg1NWZkZTY2MTA1Y2ExYjYxNyBweTNrCis2MDkwMyA5ZTI2YzBiMjM5ODdmNWY2MzFjMzQ4NjY5NjVjN2VkYmFlZjI0YTllIHJlbGVhc2UyNS1tYWludAorNjA5MDQgYzQ3NGM5MjdlMDM2MGZlMjJlOGVlYmI1MmI2NjZmNmI5MGIyNmQxZSB0cnVuay1tYXRoCis2MDkwNiAyOWE2NmU2MjFkYmUzZjJkNzljMzUzMzYyODYwMjY5NTAzY2Q4OTI5IHB5M2sKKzYwOTA3IDJmZjUxYzQxMmU1NzdiNTQ1YTliZmRlMzJhMmE0NjFkMTc2OWMzZjQgbGVnYWN5LXRydW5rCis2MDkwOSAwZWEyMzZhNzFkNzc3M2M2ZjEyMjgxOTJhZjkwZWYwNGM4MWIzMDNmIGxlZ2FjeS10cnVuaworNjA5MTAgNWQ3MjZkYTIxZDc1NDMxMDVmYmVmYjQ3ZjhiYWNjNWZiYzAzMDU3OCBsZWdhY3ktdHJ1bmsKKzYwOTExIDA5YjE2N2E0MDE4YjZkYTY4ZTIwODEyZWJmMWEwNTM1N2UwYjYyMjQgcmVsZWFzZTI1LW1haW50Cis2MDkxMiAxNTFlN2ZmYzdlODkzNjhhMDYwZjVhYjA3ZDI0MWI5ZWE3ZGNlMmYzIHJlbGVhc2UyNS1tYWludAorNjA5MTMgZDEyMTk5ZDYwMmQzY2E5YWIzZGY4OWZkNDBkYmFkZTkyODEwZjM4NSByZWxlYXNlMjUtbWFpbnQKKzYwOTE0IDFkNTA4YmJiZGI0OWEyYjExNjI5ZWUxODZhNjM5MjgyOTFiMDg2OTQgcmVsZWFzZTI1LW1haW50Cis2MDkxNSA5ZjQyOGE1ZTYyYjMxNDI3Y2M1ZmFmMDdiNzc0ZDM5ZDM0NDZkOTBkIHJlbGVhc2UyNS1tYWludAorNjA5MTUgOTQ1NTAxNjVkNjI2ODIyYTBiZDUxZDNlZDJiNjAzZGYxOGFhZTk0ZCByZWxlYXNlMjUtbWFpbnQKKzYwOTE4IDgwZWNmNjczNDdlOTU0MWYxMzY0YTI0ODk0NTRhYmFlZjM5YzdjMGQgbGVnYWN5LXRydW5rCis2MDkyMCAxYzk1OGZlNzE4ZTNlMDg5MDIyM2EwNDA4Mjk0Nzc3NGExMjJiZDUxIGxpYmZmaTMtYnJhbmNoCis2MDkyMSBiNTI2NWFjYmVlNzVjZGZlNDlmMmRhNTc4N2MxNmNjNDk0NDJlYTc4IGxlZ2FjeS10cnVuaworNjA5MjIgZjZlZWVhMDE5YzFmNGNlNWQ1N2I5ZjNjYmRiZGRkZGNhMGMxMzMwNSBsaWJmZmkzLWJyYW5jaAorNjA5MjMgOGExODdmNTYyOTU5NDkyNWMxNWY0NDcxNTQ5NzI4MjU2NGY4MGFiOSBsZWdhY3ktdHJ1bmsKKzYwOTI0IGY4MmJkOWVmN2Q3ODgzYzQwYzdhODQ2MjY0ZDM4ZTc2NmZmMjI4MTYgbGVnYWN5LXRydW5rCis2MDkyNSAwMGJkZDk2ZGRlZGEzMWEzMjM1NzNiYjc4NjNlYzZiNDllNDQ0OTE5IGxlZ2FjeS10cnVuaworNjA5MjYgOTA0OGNlOWUzN2M4ZWZmYjEwYmZkYjcyZTVkY2UwMjljZGExNDhkOCBsaWJmZmkzLWJyYW5jaAorNjA5MjcgZjllMjU1NjJiMmQxYjk5ZTNmYTQ1MGE2MzdhZTE3YWNhNzAzZGE3ZiBsZWdhY3ktdHJ1bmsKKzYwOTI4IGU5YmM0ZmJkYTE5MTI1ZGU3MzE2NGEyYjM5NTRlN2UzMmRjOTUzNjEgbGVnYWN5LXRydW5rCis2MDkyOSA1OTUzZjZmYzAyMDQ0OTUxYzA5YzkwYTJiZGNiMWFmOTdmMTY4OGVjIGxpYmZmaTMtYnJhbmNoCis2MDkzMCAzMzc4MmNhOWY2ZGNkMzMzMWIzOTQ3ZjdkYjc3NzNhMTc3OGRjNzI5IGxpYmZmaTMtYnJhbmNoCis2MDkzMSAxODRkMWIyMjc1ZGM4NzZhYjVlOTVlM2U1MjA5NDI0NDllZDU2YmY0IHB5M2sKKzYwOTMyIDdkMjYyMzBiYjc2MzAyYjI2ZWUxZTFjZDllODk2MTU4ZGRkNGRmZmYgbGVnYWN5LXRydW5rCis2MDkzMyBlYzBhODU3ZTg5NmRkYWFhMWJiOTdhODc5NGE1NjYxYjk5ZTZlMGEzIGxpYmZmaTMtYnJhbmNoCis2MDkzNCA3YmUyMGY0OGZmNjcwZmE4NjAwOGVmYTUwNTQ1NjdkMzZjNjMwYTg3IHB5M2sKKzYwOTM1IGQ4OWQ0ZGY5NjdlNjBjOTc5OTE4ODZhNGExZWNlY2E2ZjA0NjFlYTUgbGliZmZpMy1icmFuY2gKKzYwOTM2IDM0YWZlNmNiMDJhMTU4YzE3NGUwNWJkNDc4NTIwOWQ1YzJkNzFiMzMgbGVnYWN5LXRydW5rCis2MDkzNyA5MzAwNTNjOWRiMWRjMzk2NWQ4MDY1MzJmY2I2MGQ2OTBhOGE4NjQxIHJlbGVhc2UyNS1tYWludAorNjA5MzggYzU5ZmQ4MmE1NmIwMzMzZWY2MDA4NGI4NjRiZmFiZTBlMTNjZjY5MiBsZWdhY3ktdHJ1bmsKKzYwOTQwIGUyODg3ZGM1YmRiNWE2YWI4MGRhZjljZWU0YzRmZGJlYWQ0NGQ0MGEgbGliZmZpMy1icmFuY2gKKzYwOTQxIGE5ZTFmZGFmNDEzZDlmZjI2YjI4ZGZkNTkyMzQ1MDcxY2MyYjk4YmUgcHkzaworNjA5NDIgM2NjNTdmZDg3ZDBlMGU5NjA5ZDhlYzNjN2E5MjM2ZjNiZTk0NmZhYSBsZWdhY3ktdHJ1bmsKKzYwOTQzIDAyZDRmOThhN2UxMzJlZWVlN2IzZDhkZWU5NWE1MDdmMjI0NTFjZmEgbGliZmZpMy1icmFuY2gKKzYwOTQ0IDNiYmY5NmQ5NjYzOTEyNDcyNGMyYzhmMjQ0ZDI3ZDRmMTkyODUzZWYgbGliZmZpMy1icmFuY2gKKzYwOTQ1IDZlYTZjODdhNzUwMTI3ZWFjMGEyYmM0NWM1YTNhODU4OGZiZDhjNmMgbGliZmZpMy1icmFuY2gKKzYwOTQ2IDkyZGI2OWRjOGQ0YjA2NTk3NDJkZGQyNWUxZGY2YTg5OGVlMzkzYjggbGliZmZpMy1icmFuY2gKKzYwOTQ3IDhlZWY1NmUwOTg2Y2YwMTIxNTJhNDFiODc0NTk3MmFhZTE2N2I4NjAgbGliZmZpMy1icmFuY2gKKzYwOTQ4IDk4YzNmOWExZDM2NjMwMGY1Yzg0NWJmZWM4ZmU3MmIwNDdiYTY0MzQgbGliZmZpMy1icmFuY2gKKzYwOTQ5IDg1YzYzMDM2Y2EwMTkxMjVkMWI0YjhlMDgyOGM3ZTIwYzI1MzQ3NWQgbGliZmZpMy1icmFuY2gKKzYwOTUwIGYwZjhiMjAwMTUxNWUwNWQ5MzU5Y2EzODBlZTZhYzdjYWE2MTg3ZmIgbGliZmZpMy1icmFuY2gKKzYwOTUxIGE3ZjM1MGIzZWQyNDkwNjNjMzZiZjgwMzA3YWYxYmNkMWEyY2E2MGIgbGliZmZpMy1icmFuY2gKKzYwOTUyIDFiNGNmYTAwNmJlMTU5MDkxMGMzN2UyNmVmMDQxM2E3MDEyMjgzZWMgbGliZmZpMy1icmFuY2gKKzYwOTUzIDM3MzA5ZTMzYzQyYzQ1MmRhZjYwZjQyZjM1ZmU2YWQwYmRmYmU4ZmUgcmVsZWFzZTI1LW1haW50Cis2MDk1MyA0NTQ2NjgxM2RlZjc3Y2IyYmJmNTU0ODVlMDc2MjRiMWM1Zjc4ZTBmIHJlbGVhc2UyNS1tYWludAorNjA5NTUgYjg4N2RiYTJiNWUxYzE0MjgxMDNkMjUyMzcyMzIzY2VkMGIzMzMzYSBsZWdhY3ktdHJ1bmsKKzYwOTU2IDg1M2FmNWJiYjQ5N2IyMzAzNzE2NWY1NTQ5NTlhYWVkNDcyYjYyNjkgbGVnYWN5LXRydW5rCis2MDk1NyBiYzlmZDg0YWZkZWNjZWIzYzk2YWNlMjhiNjdhYjYyYTE3NDQ0MjNmIGxlZ2FjeS10cnVuaworNjA5NTggYWIzOGQ3NzFmNTZkYTk5NmFkZjQ1M2UxY2Y1ZWFlY2Y0MDM0ZmViYiBsZWdhY3ktdHJ1bmsKKzYwOTU5IGQ0NjYyNzczMGEyYTMwM2VlYTlmMGZkZmVmYWM3YzY4YmRlNGE3ZjggcHkzaworNjA5NjAgNDI3YjU0YzdlZTI1MmQ2NDQ2MjVhYzI4YzQwZmU2ZTU2OWNiMzY5MyBsaWJmZmkzLWJyYW5jaAorNjA5NjEgNmQ2YTI5M2ZiYWYzYjUxMDhkNWY4ZGMwN2YzZGVkYTY4M2JlMjdiNCBsaWJmZmkzLWJyYW5jaAorNjA5NjIgNGE5NTIyZmQ3NWE2ZTJhYjU3NjVhYzZiODIyZGFlMmM2OTYwMTU5MyBsZWdhY3ktdHJ1bmsKKzYwOTYzIDA5MWIyNzg3NmExYjg2NGUxZjkwNDA0ODBiMjkwZjM2MGUzZWQyNDAgcHkzaworNjA5NjQgNDJiM2IxMTczOTFkY2I1MmNiNmJkMTAyYmJjZTRkYmRiMDc3ZWFmYyBweTNrCis2MDk2NSA2N2E5ZDMzODU4NTEzODBlMGRlOTNiNzMxODUzNDlmMjA5NDE1OGMxIGxlZ2FjeS10cnVuaworNjA5NjYgN2M1MWUxZDE0YzhjNTlkOWM2MDU2ZWEwMDEzZDE4MmFjNTg2NjUyMSBsaWJmZmkzLWJyYW5jaAorNjA5NjcgNmE2Y2E1ZTU3OWY2NmUzZTc0MDAzMWMwNjk5NzVkZDRjOTAyNDEyNSBsaWJmZmkzLWJyYW5jaAorNjA5NjggMDc5ZTIxZjU5MzE5M2FkNzgzZGU1YjE1MGJiMzIzNDEyZmE3OTdlMyBsZWdhY3ktdHJ1bmsKKzYwOTY5IDExYTczZmJiZjg2ZjJkZjM5ODA1NzhiZDY0MjQzNmZiMzU1YTQzMGUgbGVnYWN5LXRydW5rCis2MDk3MCA4ZWI1OTgzMzEyMzE1NzA4NWE4YjMwYTIxNDRmZGRlYjc3ZTMwYzQ2IGxlZ2FjeS10cnVuaworNjA5NzEgMWM3MmE3MzgyMTMzNmIxZDZkMzNmYWRhNGFmMDNhZDFiZWU5NDBiNCBweTNrCis2MDk3MiAxNDdiNDhiM2JjMjM0ZTY4MDY5ZjViM2VjMWU0N2JhYzNjNWJlZTVlIGxlZ2FjeS10cnVuaworNjA5NzMgOTAwMzQ3ZjcwMjU4NGJiNjI3MzUxNjE0Y2NlMmJmZTYwYjlhNmUyNyBsZWdhY3ktdHJ1bmsKKzYwOTc0IGNhNWYyZjk2MDYxNzRjMzY1MTkzNjQyMTlkMWZhZDA2NTU4ZTc1YTEgbGVnYWN5LXRydW5rCis2MDk3NSA5NmEzNGVlZjg5YTNkMWRiZmUyNDUxNDUxODhiODA4MGFiOWNjNzdlIGxlZ2FjeS10cnVuaworNjA5NzYgZGRhOTJhMDk3ZThjNmY2ZDIyNjBiZmVkZTIzZDVjNDU2MjAxZGRjOSBsZWdhY3ktdHJ1bmsKKzYwOTc3IDVlMDc3MmVkMjBkMWQ2OGE5NTY1MDIxNTJjNjBhYjkzMmZkZDQ5ZGEgcHkzaworNjA5NzggMzkzODIyZjJlZjkwMWMzNjU1ZDg0YjJiZjg0MDVlM2VhYjRjODVlYiBsZWdhY3ktdHJ1bmsKKzYwOTc5IGYxYjUwYWE1ZDVhZjQ4M2FhMjYzYWE5N2RjYTFhOTNjZTcxM2VjZTggcHkzaworNjA5ODAgNzM0ZmMwYTE5NjU3ZDVmMGYyYTg0YmFkOTE1YjA1MzE2NjY5NGUyYiBsZWdhY3ktdHJ1bmsKKzYwOTgxIDdhOGRlMmE3YjFhNTZiZGYyMjJmZTZmMTQ2NjA3M2ExZWIxNGVlN2IgcHkzaworNjA5ODIgOGY5OTRkNjk3NzQ3NTUwZDEyNmE1ZWVmMmJhODdiOWM2NDMxZDgwNyBsZWdhY3ktdHJ1bmsKKzYwOTgzIDM2NTdjMjdlYTJmZDJiOWE1NzQ3M2ZlZDU5MjczZjYyY2IzNzk2ZjEgbGVnYWN5LXRydW5rCis2MDk4NCA5MzBiMjgwMmMwMzdiOTM1NTQ5ZTNhMzdmMDgwNzIyNWYxYjY3OWIyIGxlZ2FjeS10cnVuaworNjA5ODUgZDdlMjMyZTlmMWExZWUxNWMyYjNmODU5MmY3YjdjNTEyNDk2ZmMyNyBsZWdhY3ktdHJ1bmsKKzYwOTg3IDFiMTlhNTcxNDVhNWIyZjVhNjZmNmMzODVlNGE0NzhhMDczMGYyZmUgbGVnYWN5LXRydW5rCis2MDk4OCA5NzcxMzk1NmMxYjBkZjNhZWQ3ODhhZTIxNGU4ZTgzY2M0YjAxYTIzIGxlZ2FjeS10cnVuaworNjA5ODkgYmEzNTliNmMzM2MzODE1NjQxZWE5MWIwMjc5NmQ1Y2Q1NTJkNzA5OSBsZWdhY3ktdHJ1bmsKKzYwOTkwIDlmMDM3ODg3NjNlMDlhMDkwMTM3MGM3MjVhM2IzNTcxMGY3NDVlYjQgbGVnYWN5LXRydW5rCis2MDk5MSAxY2M0N2UxMjlmZjQ3ZjRlYTZkNGQ2NGYyYmQ1ODBiZmU2NGM4ZGU4IGxlZ2FjeS10cnVuaworNjA5OTIgNThjM2YzNDM5NjcwOGFkZjM0MTdjZGY2ZGJkMmY3NTU4OTZiNWVkNCBweTNrCis2MDk5MyAyYzVkOTE2YmQxMWM5YTllMTE0NjVjYjk1YjdkZDBjMDBjNzNjODMyIHB5M2sKKzYwOTk0IDQyOTg1ZWJiZmM0NTMwOWI2OTQwNGY0MzJlMmNhYWQ4Mjk3NDg5ODcgbGVnYWN5LXRydW5rCis2MDk5NSBlODRhZDJhMjU4YTQ2OTQ5NDJmOTE0NzFkOGNiYmZhNDEzZGVjMDIxIGxlZ2FjeS10cnVuaworNjA5OTYgOTc0Y2ZmM2UwMDIxNjIxYWU0YWI0OGNmMGVhNzllOTBlY2ZmZjZjZiByZWxlYXNlMjUtbWFpbnQKKzYwOTk3IDEzMGZiZmIxNjAzNmFmNDY4ODAxMmQ2YmY1Yjg5OGE0MTRmNjIwZTEgcmVsZWFzZTI1LW1haW50Cis2MDk5OCA3NDhhZjBiODM2NzRjYzFjMWZlMGZjNWVmYzlkOTVlOWQxYzZiNmQyIHJlbGVhc2UyNS1tYWludAorNjA5OTkgZWM3ZjA4NzNiNjY0ZGY0NjM2ZWQzMWI3YmVkZTBlMDMxYTAwNjQ4ZSByZWxlYXNlMjUtbWFpbnQKKzYxMDAwIDFkODRiZjVmOTQ3ODZhODQ2YzA4MDI4Zjk5YjZjM2I4MjdhY2Y0NjMgbGVnYWN5LXRydW5rCis2MTAwMSA0N2E1OGNhM2UxMGViNzAyN2QwY2M5OTRlM2IxYWRkNjU3ZmI5NGJlIGxlZ2FjeS10cnVuaworNjEwMDIgMzkxNWQ1ZjY1MGZhOWRlMDdhYmI3MWQyNjEyYzg2MWMxMmE2ZTQ2ZiBsZWdhY3ktdHJ1bmsKKzYxMDAzIDdkZDJjMTc0NjI2N2QyZWNlMTc5MjgxNTM1YWIwZmVhYTlhZDY0MjAgcHkzaworNjEwMDQgNmJhNTMwOGY3YmE0MTY1YjhmZTIwZDk5ZWU5YmI1M2UzMDIyNjIzMCBsZWdhY3ktdHJ1bmsKKzYxMDA2IGVlYzRjMWU5ZTljYzg4ZmVkNjEyMzhjY2Y0ZTNmZWIxNmFlYjU2NzEgbGVnYWN5LXRydW5rCis2MTAwNyA2YTEzZmVjYWYyZGZiMjZjNGIxMDA2NTE0MGVjMTA4YjRjMDc3NjcwIHJlbGVhc2UyNS1tYWludAorNjEwMDggNGViNWE2NjdjODgyYjVhNGUyNzQxODA4ZTdmNmMwNDBmNmY1YmE2NCBsZWdhY3ktdHJ1bmsKKzYxMDA5IDgwZTBhMjkzMGM2ZDU5ODVlNTQ4NDdmMmFjNGI3MzJlMGU0MWEzNjIgcmVsZWFzZTI1LW1haW50Cis2MTAxMSAyNDFjZjgxYTA1MDg3OTdmY2M1ZDliNWIwMWFjY2M0Nzg4YWIzNTNhIGxlZ2FjeS10cnVuaworNjEwMTMgOWYxODNhZTM0NThiZmI4YTkzMTczYzNmNDI2NzdmNzljNGQ5NjJmMiBsZWdhY3ktdHJ1bmsKKzYxMDE2IDQwZDI2OWQ2ZGE5YzU4MzA3YzNhYTQ3N2E1MjQwODk2YTc5NWVkMjMgcmVsZWFzZTI1LW1haW50Cis2MTAxNyBhMDEyMTNhNTQyNWQxYzQwNTFlY2EyZWQ3ODlkZDY0NGI1MzI4MzNhIGxlZ2FjeS10cnVuaworNjEwMTggNjY5MzA0M2QyN2ZkMzI5N2NhOWZkOTFlOWMzZmU4YjYyZjdmZjM2MSBsZWdhY3ktdHJ1bmsKKzYxMDE5IDgxMGJkNjc3Mzg2MzZlYzg1OWM2ZjUwMjkzMTdkNjc5ZjEwYjA0ZjkgbGVnYWN5LXRydW5rCis2MTAyMCAxOWQ4NTI5NDJkZGRkMjJjMTA5ZmM2ODZmNDhkMmRiMjFhZTVlYWNmIGxlZ2FjeS10cnVuaworNjEwMjEgODUzMWY4OGI1NzhlMjBhNDI5NzZlMzM1NmFlMWViZmIwNzA0NzhkZiBsZWdhY3ktdHJ1bmsKKzYxMDI0IDMwNTc4ZTA0ZDM1Y2RjMGM4NjE1YTg3NzdiZjYxNGM2YmIwYzU4ZDIgbGVnYWN5LXRydW5rCis2MTAyNSAyN2JhYjM5ODlmNjM1M2NkNzJiM2Q3ZjNlMDMyYzA4OTQzNDY5ODg3IGxlZ2FjeS10cnVuaworNjEwMjcgODEzYzE0Njg1OGY3OGUxMjhiMTE0MWY4MWI2NDU4MGMxNjIzZWIxZSBsZWdhY3ktdHJ1bmsKKzYxMDI4IGMxMjZiZDliNTA1YmY4NmI4MWVhYmU0NzljZWY2Y2IyMTA3ZDJiYWUgbGVnYWN5LXRydW5rCis2MTAyOSA2YTk5MmI2NjgwYjFiNzY0NTVjZTBlMjExM2NlNDAzOWJkOGE3NGRiIGxlZ2FjeS10cnVuaworNjEwMzAgMWIwZWI3NmVmNzJhYmQ5MDgyYTA5NTE0ZTg3OTE4N2ZjYWE4NWNhMCByZWxlYXNlMjUtbWFpbnQKKzYxMDMyIDliMTE1YzVlOTExNTJiMDcyM2ZmZGU5NWI5YjU4MTJiMThjMDJiYTUgbGVnYWN5LXRydW5rCis2MTAzMyA5N2ExOTcyYjY3MmU3YjViNTM1YWIwM2ZlZjg4MmYxZjFmODM3NjZkIGxlZ2FjeS10cnVuaworNjEwMzQgMjFhNWU5YTU0ODNhNTIyNDBiNTFiNjJiZGY5MWI1NjQxMmYzNWFjMCBsZWdhY3ktdHJ1bmsKKzYxMDM1IDdlZmE0ZDFiY2VkMzhjMzBjNTc5OWQ1NzEyNmZjNGViZjU4MzJhZTYgbGVnYWN5LXRydW5rCis2MTAzNiA0ODQ4OGZhNTA3MjllNGYwYmEwMDVhNWUyYjMzNjAwMzc5NjgwMjhjIHB5M2sKKzYxMDM3IDAwMmE1YWM3OTJiMWU2YTdmOTk2N2NhMTAyMzRmODJkNjJkOWQ2NzcgbGVnYWN5LXRydW5rCis2MTAzOCBlYWE4YzE5MzkxMDhlMDFkMTRkZmUwMDI3YWU1YmYwZDNlM2ZhNzkwIHB5M2sKKzYxMDM5IDhjN2JhMGVkODQ0M2I1MTM3MmY5Yzc5YmU5ZDNkNTJlZGQwZGE5NjYgbGVnYWN5LXRydW5rCis2MTA0MCAxOGZlZDE0YjA2YjYwNjY0ZmMyZmQyMGZjMzE1YWJlNjliNGZhYTc3IGxlZ2FjeS10cnVuaworNjEwNDEgYzAzYWZmNmQwN2Y1M2IxMDZjNjJjNjI5NWY5MGNlNWI1NmJlMTgzNyBsZWdhY3ktdHJ1bmsKKzYxMDQ2IGQ4OWZlMWQyZmFkZDgyYTBjYzgzNjEyOGMxYTkwMzRkNDBjOTg4NGIgbGVnYWN5LXRydW5rCis2MTA0OCBhZGU3YWM4OGQyZDA5ZTIwZTYyMWI2MjExOWQ4YTcxZDA2ZDU4ZTUxIGxlZ2FjeS10cnVuaworNjEwNDkgYWY5MjhmZjBjNWM2OWQxYzU4M2ExZDY5ZTgzMTRjMGI4ZjdkNDU3YiBsZWdhY3ktdHJ1bmsKKzYxMDUwIDFiNmZiNTY5OTYzNDU3ODQwYWU5NzgzN2YwMzNhYzQxYWQxODAyYzcgcHkzaworNjEwNTEgYmY4ZWU1OTNjYmFkMDNjNzI0ZTVlNDk2YTBkZWRkZjdkYzMxNWI3NyBsZWdhY3ktdHJ1bmsKKzYxMDUyIDU1ZWVmYjQzZWY2ZjNhZDFhMDExNzdlZGFkMDJjMzE2NTZmNDU3NzUgbGVnYWN5LXRydW5rCis2MTA1NCBhNzdlMWNmN2VkMjUyNjJhOWNmMzUzNDdmZDg2YzMwMjczOGNkNDYwIGxlZ2FjeS10cnVuaworNjEwNTUgYjBmZGU5MzY2MWNlODc1MWVkZmM2YmIzOWNjZmMzYTRiNWZkNzhmNiBweTNrCis2MTA1NiAwOWM5Y2VlY2RkNTZkMDRiZjIzNzE5MWNkMTQ4NmQ0NzZkNjhjM2FiIHB5M2sKKzYxMDU3IDcxMjkzNzJmNTMzZjQxYjM3NDE1MjZhZjgyNjQ5OTVhOGM4OTU0ZTggbGVnYWN5LXRydW5rCis2MTA1OCBkYzViMDEwNzI5NGMwZGM0ZjdkNjg5NTNmZTUyNzExMTAxZDVhYzg5IGxlZ2FjeS10cnVuaworNjEwNTkgZTU3ZmZhMmI1ZDA3ZjAxMjVkNmM3ODlmNGI1MTRkZjk1OGZiZjZlYSBsZWdhY3ktdHJ1bmsKKzYxMDYwIGIyOThjYjQ5NzVkMmRmZGMwMTBlYmRlYTA4YzdjM2U4ZjBlYzI2YTQgbGVnYWN5LXRydW5rCis2MTA2MSBmY2U1YWY1Y2UxNmE2ZDcwZjAxMDY1NTk5YWQzY2I2YmE4MjM0NTFmIHB5M2sKKzYxMDYyIDhiNTJmZjQxZTBlMjc5NjMzMGRiNGU2YzNkZTJiYTg3OTBiNDk3ZWQgcHkzaworNjEwNjMgZjg4YmViZWViNjczZTk4NjA4NDgwZWYxOTI5NmM3NzFmZjQzNWQwNiBsZWdhY3ktdHJ1bmsKKzYxMDY0IDNhNmNhODllZjc2ZDQ3NDI1YWRkM2Q0OTUxZDRjOTkyM2FmYTE2NmQgbGVnYWN5LXRydW5rCis2MTA2NSAxN2M4ZWM4ODlmZjQyYjBjZjI0MjFiNTVlNTU3MWY1OWQyYTM3OGIzIGxlZ2FjeS10cnVuaworNjEwNjYgYzVlNzdlMGYyZjMyZmZhZjQyYzc1YTc0ZGRjYTFlNzRmM2UwMTE3MiBweTNrCis2MTA2NyAxNDRlODQ2NzJlZjkzNmQ5NzA4MDE1ZmQ3MjUyMzQzMzJhYWNkZmUwIGxlZ2FjeS10cnVuaworNjEwNjkgNDI4OWM0MTA0Mjc5MDM2ZWZiODYyZDIyNDkyMDgwYzY4M2RhZjQyZiBsZWdhY3ktdHJ1bmsKKzYxMDcxIGY2ZGMwOGFkNTY0YjFjNjk2ZTY3YTNmYjQyMzBjMzliNmI4N2NjOWMgbGVnYWN5LXRydW5rCis2MTA3MiA0ZjYzOWFmNThhMTkwYzA5OGI2NjVhMzdiMWRlMDViYjQ2ZDg5MGYzIGxlZ2FjeS10cnVuaworNjEwNzMgZTgxZTQ1ZjgwMDJlOGMwOWEzY2YxMDcxMjc2Y2EwNzYyZTAzNzdmNCBsZWdhY3ktdHJ1bmsKKzYxMDc0IDQ1ZmMzZWNiMzAyM2VkODBjOTc1OTAxOGIyYjkyZWZlN2ExMDFkM2QgbGVnYWN5LXRydW5rCis2MTA3NSA5YjM4MWVkMWRiMTQzMzJlNDE0Zjk3OTQyMjZiMjI1NGI2NmFhNGYwIGxlZ2FjeS10cnVuaworNjEwNzYgNjI0YWU4N2YxYzk2MWZkOTFmNWExNTVmYmE2ODljM2Q2NGVmZDEyNSBsZWdhY3ktdHJ1bmsKKzYxMDc3IDA4OGRmYzBmNzFiNDk4MGNiOGUyOTUzMDY1YTBlYTQ3N2Y4OTg5ZDAgbGVnYWN5LXRydW5rCis2MTA3OCA0YWU0MzMxNGI3NDYyOGY5ZjljYmVjNzM3YTdlZjk0MTY2NmIzMGM0IGxlZ2FjeS10cnVuaworNjEwNzkgYmYxYWIzYmY3OTljODYzNjgzODhjMjlhOGNiMTJmNGI3OGRkNjk0NiBsZWdhY3ktdHJ1bmsKKzYxMDgwIGNhY2Q3YmExMWI3NzU4YzE4OTI5NjAyZmYyZTBjZmI2YmNmM2NmMzcgbGVnYWN5LXRydW5rCis2MTA4MSAyYjM2NzI1MGIwY2QzMzU5MTdiMzIwMjU0ZWU5ODg1MzYzNGFjYmUzIGxlZ2FjeS10cnVuaworNjEwODIgZmU3Mzk0YmM3OWQ2M2UyMzUyMzk4ZjEyNDA5NDA0NDIxOTk2YWFmYSBsZWdhY3ktdHJ1bmsKKzYxMDgzIDdhZmVmOGY0M2U0YTUyZTA4MDE4ZDZjOWNjMDE0MjI4ODAzNzEwMTUgcHkzaworNjEwODQgYzU3Y2IyZjhjMzUwNTJjNTQ2NDYyODgwYzZhNzkzMGU1YTIyOTkxMSBsZWdhY3ktdHJ1bmsKKzYxMDg1IGQxMzIzZmNmM2FhMTc5NTNkYzAyNGM2NTJmYjIwYjZlN2MwOTQwZDQgcHkzaworNjEwODYgZjMzZjY2YTIwODJmYmYzMjZmZjc0ZTYyZjRiZjI0NGUwMDE3MzA5OCBsZWdhY3ktdHJ1bmsKKzYxMDg3IGZmZGQzMWYxY2QyMDk0ZDI2YjhiMGMwYWI0Zjg2YjU1MDllNjczOTEgbGVnYWN5LXRydW5rCis2MTA4OCBjYTQ1ZWI3MWYyZDJiYTMxZWNkMmFmYjJiMmZmNWRlYmJmMTM1ZTBjIGxlZ2FjeS10cnVuaworNjEwODkgZTQyNWRkYTRmNjMwMDYwZGY2YWU4MmFhZmU5NTE2MDJkMTUzMjZjMSBsZWdhY3ktdHJ1bmsKKzYxMDkwIGYyZjMzZGI1ODkyMDBiZWMzYmQzYjc5NjkyODA5MDU0YzdlMTI5MmYgbGVnYWN5LXRydW5rCis2MTA5MSA3ZDczNDdkZDk0ZTg3N2Q3Njk5ZDY3ZGU3YzkyZTVmZDJlNmY0ZmFiIGxlZ2FjeS10cnVuaworNjEwOTMgZjc4ODQxNjRmMDg4OWJlYjYxMjBjMWUyNjY2ZmI1M2E2N2U0NDY3YiBsaWJmZmkzLWJyYW5jaAorNjEwOTQgMmM5MzE4M2I4YTNjMjY5NDQ2YzUzNGYwNWFiYzI5OTQ5NDVlOTAyYiBsaWJmZmkzLWJyYW5jaAorNjEwOTUgNmM0NjEyMjU1ZjYwNTJjMmFhYTQ5YzgxN2QyYTc4NjAwMmY3YzY2MCBsaWJmZmkzLWJyYW5jaAorNjEwOTYgYjc4YzNhNDM3MWQ1MTExMGEzNzU0NjhkNzA0ZTYwZDJiNTE2NDhlMCBsaWJmZmkzLWJyYW5jaAorNjEwOTcgZDE3NjkwYzUwNzY2NjgzOGM2Y2I5ZjdiM2EzYzY0MjgwNTBhOWEyMCBsaWJmZmkzLWJyYW5jaAorNjEwOTggNjU5MmU1YTkwYzJjZDg0ZjIxMGZkOWY2NmRhMmE3NDhmNDg0YjUxZSBsZWdhY3ktdHJ1bmsKKzYxMDk5IDhhYWYxNDk1ZGEzOTU5Y2Q4NDRjYjVhNmRkMTZmM2UyOWEzNjMwMTQgbGVnYWN5LXRydW5rCis2MTEwMCAzZTQzNWEyMTEzNTY5NjhkN2U0MGViMjMxYjllNmI1YTVlYjEzM2EzIGxlZ2FjeS10cnVuaworNjExMDEgZDQ0MzRmMDNiOTcwMjJiMjc1ZjA0NTZiYTAzNjYyYWYwM2FlODRkYiBsZWdhY3ktdHJ1bmsKKzYxMTAyIDk2ZDVhMTU3MzE2ZTM1MTgwOTI3N2Q4M2U0NjI5M2ZkNGU3OGI1OGUgbGVnYWN5LXRydW5rCis2MTEwMyA4YzNjNWI0ZWVmNTU1NzE5Mzk4NTZiMzMxN2EyMDYyNTExYjY4MTlkIHB5M2sKKzYxMTA0IDhkZDMwZmUxMWE0YjM0ZDEwNzdiZTgwOGYyZTBmMTRhZGI4NDM0NGIgcHkzaworNjExMDUgMTE4OGVkZTE1NzM1YjliODY5OTEwY2M0NmY4N2Q1N2MxOTdlYzZmNSBsZWdhY3ktdHJ1bmsKKzYxMTA2IGNjMjIwNzQ1ZTRlNTkzZTZjMzZiNmY2ZGYyZjc0YTU0MGNkODJlM2UgbGVnYWN5LXRydW5rCis2MTEwNyA1MDRiNDM1N2JkZGQzOGU3M2EzY2VlYTYyNmQyOTkwMzAwNDEyZTMzIGxlZ2FjeS10cnVuaworNjExMDggMmQyYjBlMTU1ZjE5OGZiYzZmNjA3ZjFjODI5M2I4ZThhNjA5ODU2NyBsZWdhY3ktdHJ1bmsKKzYxMTA5IGJmM2ZhMzdmZTc5Y2QwMzhjMmVkM2ZiNjQyY2I1NjQ0NmNjNzk0OTkgbGVnYWN5LXRydW5rCis2MTExMCAwY2I0ODE5NTY0NTJmYzVmNWMxMDFlZTNmMjQwOGM5OTY1NWFhYThkIHB5M2sKKzYxMTExIDI0MjU0NDMwZTg5YTBjOGUwNWQ3NWQ5OGY4MGQ2YmUzMjZiYTZlNjYgdHJ1bmstbWF0aAorNjExMTIgMDEyOGNlNzczNTRmNjA1MjZkYjhkYzg3ZWU1MDc2OTM0YjNiYTRjMiBweTNrCis2MTExMyA3MTBkNTI1YjA1NGM4MWViMmNlN2I2MmVhYzQ5YTIxNmY0ZGYwODhmIGxlZ2FjeS10cnVuaworNjExMTQgYzM4ZGNiN2Q5NGE2ZGE5YmRmY2FiOGY0N2Y5NDNlNTM3MjhkMjVmNSBweTNrCis2MTExNSBlNGZmZTY0OTk1NDgxYTk3MTA1YjkzMDBiODllZmQ3Y2NlYzZmNWI5IHB5M2sKKzYxMTE2IDU5NzYyZDY3MTRhMzEzYjk1ZDkyZDViM2RmNjdhNjM1YTJiMDBlMWEgbGVnYWN5LXRydW5rCis2MTExNyA5NzJmYzdkN2NiNzI2OTc4YzI4NTUwMjZjNDQyOGI3MWU3NDE1MTAxIHB5M2sKKzYxMTE4IDQzZTA4NDg0N2U1MzMyMzQwMWU4Y2Y3YzJkMDI4YzI2OGNjZjgwMjggbGVnYWN5LXRydW5rCis2MTExOSA3ZGEzNmI0OWM5ZTVhYWUyZjg1MDVkM2VjMDZiMzZiNjEwZGFhZGEyIGxlZ2FjeS10cnVuaworNjExMjAgYzU0NjUyMzY2NzcyOGM5NTcwN2RkMzg1Y2UwYWIyNzgwNmI1ZTMxMyBweTNrCis2MTEyMSBkYmYxZGRjNWY0Nzk1Mzc5NDc0NWY2ZmM5ZmRlMmU1NDI5ZGFlMGYzIHB5M2sKKzYxMTIzIGJjZTRjNDBkZjdkZjc0ZWZkODdmZWUyOTIwOWViMWNlMzM2ZjE5NDMgbGVnYWN5LXRydW5rCis2MTEyNCAxMDk2MmIzZjc3YTliMzgxYjYzMTgxNmFjYjE2YThmYzQ5Y2Q2NTk1IGxlZ2FjeS10cnVuaworNjExMjUgZmFjZjAxZjE1YjE1MzU1NTljMmJhMDVjNGY1YWE3MjA0NmI4OGYxYyBsZWdhY3ktdHJ1bmsKKzYxMTI2IDkzN2EzYzVhZjY5MTkyYjhlZDE4ZjRlN2FlZjZjMWU1OWVjZDBkYjggcHkzaworNjExMjcgOGNkOTg0YzE3ZGVjODVhYzA3MzkxODVkMGVjY2U3ZDBlNDlmYzU4YyBweTNrCis2MTEyOCBiMjY5YzJkMDNmZDJkNmEyNzA4ZWNmNjYzMGI3ZmVhMjE5MjViYTk4IGxlZ2FjeS10cnVuaworNjExMzIgMDk0MDcxM2I2NzI2Y2EyNmYzYmQ5ZTZmZjQ1YzBlODdiZjVkMGY3ZSBsZWdhY3ktdHJ1bmsKKzYxMTMzIDA1YzM5NjE5MWU0MzI5MWY3NjBiYzIwMjkzNzkzZjZhOTRmZTNiNTcgbGVnYWN5LXRydW5rCis2MTEzNSA0YTk1ODhiMWU0Yjk1ZGYxM2JkNTEwOGViYTM0N2MwNjFlZmUyMzE0IGxlZ2FjeS10cnVuaworNjExMzYgODljZmIzOGE0Yjk4NjIzY2EwNTUyNmQ2YWI5MjI2MDdlZDA4ZWUwZiBsZWdhY3ktdHJ1bmsKKzYxMTM3IDIwN2NhMGE4YWZkMDAyMzBhYmI1ZWNlMjQ3N2Q2OGZiNzMwYjJhNDAgcHkzaworNjExMzggY2ExMWNmMjRlYjg1NWY1Yzg2Y2MxYzQwZjA0N2I0NjVjYmU3ZTQ4YSBsZWdhY3ktdHJ1bmsKKzYxMTM5IDY3ZDQwNDg2Njg0NjIwOTRlZGYzZWNlNzU2ZjQwMjlhNjJmZDUwNzUgbGVnYWN5LXRydW5rCis2MTE0MCAwMmEwMWU1NzhkNmM1YTBiZTM0Mzc4MzA2NjYwYzNmY2M0ZDU5YzYzIHB5M2sKKzYxMTQxIGI3ZWU5MDc0Y2EwZWIzYjc3ZWZmZDJiMjMxYjMwOTE2NzkxNjBlYTAgbGVnYWN5LXRydW5rCis2MTE0MiBmYzZmOTA1NDVjYjQ4ZTVjZWY1ZjZlY2JiMTBmZTZlY2NkY2Q3OTdjIHB5M2sKKzYxMTQzIDAwMjNjMDQyMjhlNmIzNTMzMDVkNWNhZGFhOGZlNjU5MTgzMTgxMDYgbGVnYWN5LXRydW5rCis2MTE0NCA4OTQ2ZTI3YTQ1NjNiYzJkM2RiMjllNDYwZjk4YzE4MWFkZTc1ZGYyIGxlZ2FjeS10cnVuaworNjExNDUgOWI4ZmM0MDVmOWIwNGZjNTExYTZjMjM4MTExOTk0ZTgxMjI4NWM0NCBweTNrCis2MTE0NiA5YWQ1NDJlYTA1YmExZGE5YjAwNjFlMmVlOTJlOGM5NTA3ZjQwNjYzIGxlZ2FjeS10cnVuaworNjExNDcgNDRkMTBkMzkwOTJjNjVlYzJmZWJjY2FlNzI2Yzg2MmZmNGI4NzU0NyBsZWdhY3ktdHJ1bmsKKzYxMTQ4IDZhMDRkYmIwZDE0YjQ5ZDE1ZjMwZGEzZjc3ZDM5ZjVmNjRhMDllNjYgbGVnYWN5LXRydW5rCis2MTE0OSAzMTI3OTU2ZjNiMzNlN2QxZGZhMmY1ZTI3MjE1NTg2ODhjOTU1YmIyIGxlZ2FjeS10cnVuaworNjExNTAgYThmYmQ5MjcxNGE5YTljNDcyMjdiOGYyNmU4NzZmNDRlZTgyNjA3ZCBsZWdhY3ktdHJ1bmsKKzYxMTUxIDJkMGJkMDk1YzQyMGIwNzExMDAwZDliZTY2ODQ4ZjZjZmQ5NzJiM2IgbGVnYWN5LXRydW5rCis2MTE1MiAwYWRmYmE4YWU5NTcxM2M0ZTBkNzJmMTVkMDg5NmRhZmJmYTZiOGQ0IGxlZ2FjeS10cnVuaworNjExNTMgODJjM2IwYjVhYTkyNThkODhlMTdmOTdkMTVmMDhmMDcyZjQ4ZTdlMyBweTNrCis2MTE1NCBjMDlkYjc4YmQwNjZjY2IxMmQxNTg3ODlkYmRmMzQ5OGE2MTM4OTNhIHB5M2sKKzYxMTU1IGNjNTU0M2I1NjEwYjJkMDY1Mjg0NDQ2Njg0OTY5ZGVkOWVmNjVmNDMgcHkzaworNjExNTYgMGUwMTY5YjBlYWNjNmRkZjgwNjhkNWM3Y2QxODQ3M2E3YzMwYjlkOSBweTNrCis2MTE1NyA1YmEwNjY5MGMxODQ3OTliMDVjNWRiNjAxMTBlMjNmYThjNzBhNTM4IGxlZ2FjeS10cnVuaworNjExNTggZGYxNTgyN2YzNDg4MWI5YWYwOTM2MzUwODEzY2VkNWMxMjNjODIzMCBweTNrCis2MTE1OSAzNjJhNDZlN2MzM2EyYTZhZjY3YTc5NzQzMGZkNjRmYjkwNTc2NjZhIHB5M2sKKzYxMTYxIDIwYTQyNjc0YjExMTA0YWI5ODU4NjlhMWRiZTc0ZDE2MGU1ZjU0ZDMgcHkzaworNjExNjMgY2QxNWE1ZTljMWRlNTliYmVmZGE3ZjZmZjg1ZjQ2MTIwMDU2ZDNmNCB0cnVuay1tYXRoCis2MTE2NCBjMTI1YzYxZTA2YTg2MDY3MzIwYjUyNmQ4MDFmYTlmN2NlYmNkZjU1IHRydW5rLW1hdGgKKzYxMTY1IDcwYzQxYmQ2ODBiNWU3Y2IwMWE0MjU2YmVjZTliMzI0ZWE2NGQwODAgbGVnYWN5LXRydW5rCis2MTE2NiAzNDM5ZmEyMTVmYWVjMGFlMThjYjI4NDM5NGYxY2M1MDQ1OTVkYmVhIGxlZ2FjeS10cnVuaworNjExNjcgNWI3MDc4ZWNjZWU4MzY5N2Y1NDQxNzQyZGY4ZTlhZGM1NGU3Y2M4MiBsZWdhY3ktdHJ1bmsKKzYxMTY4IGE2MmY5NWE0YWRmYzVlMmFkMjYzNmUwNzY0OWJiYzc3YTQwNzU1MDEgbGVnYWN5LXRydW5rCis2MTE3MCA0MDYwZGIxMjZlY2YzNmM1MDU0MjhjMjRkYzZkYjU0ZjFkNTdhYzU5IGxlZ2FjeS10cnVuaworNjExNzEgOGJiZTUzMWZjZDNjOGNhNzFmNWI0MWQxMjZiMzhkZTFjN2NhZWU0ZCBsZWdhY3ktdHJ1bmsKKzYxMTcyIGY3MmIyZGU5OTdiOTkyNzg4NWE5NGM3MzljOWFjOTc4MWIyODdmYmQgbGVnYWN5LXRydW5rCis2MTE3MyA5NmNhOGM3Y2VkYzRkMDMxZWJiMjA4ZTVhZGE5MzE4ZTYwOGNhNjI4IGxlZ2FjeS10cnVuaworNjExNzQgNzYyOGNiNDAzYzUzZTFhMzZhZTNkMmY5NDhiMTcxNTU5NmE2NjM2NSBsZWdhY3ktdHJ1bmsKKzYxMTc1IGJiZGYwNmE4NmEyNDMyOThiMjEwNzRlOWFlNTNjYWNjYWMwODRjMzEgbGVnYWN5LXRydW5rCis2MTE3NiAwYThlZWNhYzVhZDFkYzkzNDdkZTRjYWI0NzI1YjgxNjExZjA1ZmVhIGxlZ2FjeS10cnVuaworNjExNzcgZjY1M2MwYjg5MTZiOGU1NjViNzA3NjZkOTFhM2YyMjUwZDRlNjY4OCBsZWdhY3ktdHJ1bmsKKzYxMTc4IDQ3MzI4ZDc2ZThhYmJkMTc2MzFlZDY2ODA1Yjc1MmU4ZmMxNWEzYjggcmVsZWFzZTIzLW1haW50Cis2MTE3OSA1NGYxY2I4YTgxZjY2MDI1YzdlZjEyNmU4ZTdlNDRlYjQwMzU2ZDMyIHJlbGVhc2UyNC1tYWludAorNjExODAgMDU2NTEzMGQ3ZDlmNjRjMGRmNDQwZTVjMjE1ZjJhNGRlODM0NjBjYyByZWxlYXNlMjQtbWFpbnQKKzYxMTgxIDFmN2Q2MjhjNzBhOWFlZmU3NjJjMmMzMjIxMDg3NmZhZjhkNjRjNzggcmVsZWFzZTI0LW1haW50Cis2MTE4MiA3YTFmYzYxZDVjM2U0NWYzYTIyMTVkNDJjYTg1Njg2MWExODBkMTE5IHJlbGVhc2UyNC1tYWludAorNjExODMgNWNjYjZlYjIwMmZmMjFjMDE4MDA0NzU1NWVjYTY2OWJiOTI2Y2UxNyBsZWdhY3ktdHJ1bmsKKzYxMTg0IDg4YzFlMTdjZWZmY2YzNTkzZmIxYjViMGQ2MTc0NmFlYzBhZTk4MWMgcmVsZWFzZTIzLW1haW50Cis2MTE4NSA4OTNjN2JkNGE5MmJkODg5YTg1ZTY5MWY0OTE4OGMzN2IwYTcyMzU3IHJlbGVhc2UyMy1tYWludAorNjExODYgNTY2ODFkNWJlZTcwOTMwYmM0Y2Q4MWMyODkxZmNlNGMzMGVhNjcwYSByZWxlYXNlMjMtbWFpbnQKKzYxMTg3IDRkNzEzMDFhNmQ0YjdmYTk3OGUwZGUyY2YwYWIyNzFhMTRlYWUyNmIgcHkzaworNjExODggYTMxYjY1MDUxNWNiOWNhNDFjNTdjMTVkNGJkYjczYmMxMzhlZGNmMCBweTNrCis2MTE4OSBjZjNhODBmMWRhN2QwN2EwMzRmZTQ3MTNmMDQ4ZjM3OThlNmE0OWUxIGxlZ2FjeS10cnVuaworNjExOTAgNjA2OGI3NWVjMjdhMGYxOWM3MjAyYzgwZTA4MGRlN2ZlM2Q5ZjRhMiBsZWdhY3ktdHJ1bmsKKzYxMTkxIDQ0YWQ3OGZlMzVmYWIxMzE3Y2ZjZDAzMTg3ZjQ3Njg1MTFhZjFlNjggcHkzaworNjExOTIgYjkzMmYwMzVmYjNlZjQzNmRhYjAwNjIxYjUzZTdmMzEzZmQwMGZlMiBsZWdhY3ktdHJ1bmsKKzYxMTkzIDI0ZjQyMzBiYWViZTdkZmM2Y2IzNzY5ZmU5NzliMzFkYTY5MTc2YTcgcHkzaworNjExOTQgYzZkOWEzNGYwMjRmZGJhNDY2YTkyMjc5ZTNmMTE1NmMyOTE3ZGUyMiBsZWdhY3ktdHJ1bmsKKzYxMTk1IDJjNzNjNTgzM2YyMDA1YWU5ZjU2ZGNjYmM1ZjlkMjA5YTMyMDVmMmIgbGVnYWN5LXRydW5rCis2MTE5NiA3ZTRiNzUzYWZlYzZlMTc5NGUzN2FjOGVkYzY0MzI1MWU0MzVkMmExIHB5M2sKKzYxMTk4IGE1NTEzNmM3OGI2MDQxZDNlZTZmNTA1ZmUxMWQ1ZTlhYjQ1NWJmZmYgbGVnYWN5LXRydW5rCis2MTE5OSBhMThhNDI0YzJiZDM0ZTc4N2Y5MjMzODcxNmQ4MmQ3ZDQ4ZTkwNzA1IGxlZ2FjeS10cnVuaworNjEyMDMgNDFhNzA3NzQ0YmM4OThkY2EzZGZiMGQ0YjU3NzJmNTIyMzE1MWZmMSBsZWdhY3ktdHJ1bmsKKzYxMjA0IDYyODJkZmQ1ZGM0OTRmNDA5MWJhMzI4NTI5NWI2OWEzYmViNDczMmMgbGVnYWN5LXRydW5rCis2MTIwNSA4ODJlYmExNDUxMTk4ZDVhMGZmZDgxYmYyMTc4ZmYxN2FkZjg3YjMzIHB5M2sKKzYxMjA2IDI1NDA2YjNmZjk3YTZmZDI1ZGQ1NTExZGQ1MDVlMzE5YjI4ZTRhODkgcHkzaworNjEyMDcgNjVlZjYwOGRkNjZjYjA0MzIwYjVjMjcxY2Y1NzA1Y2Q5OWIwZTQzZiBsZWdhY3ktdHJ1bmsKKzYxMjA4IGU5OWUxZDhiODA3NzcwZWU4YmU2YjFhYjM1MTY0NTAzMGQyNzBkOTMgcHkzaworNjEyMDkgYzUxOGYzOTQ3M2ZkMGI5MDAzZDgzODAxNTIyMzY1YmVmYmM1MmJhYyBsZWdhY3ktdHJ1bmsKKzYxMjEwIGExNTRmMTk4MjU5MjhjYmFmMWYyZmM0MzI3ODliZGUzZjJlN2E0MGUgbGVnYWN5LXRydW5rCis2MTIxMSAwNzIzOTJlZDRlYTY5MTM5MTc3MWY0MDk1ZDM5Nzg2ZmQwODc1NTllIGxlZ2FjeS10cnVuaworNjEyMTIgODQwMTM4ZTI0OTgwYzg5OTc0NjNjM2Q4NjY0MzE0MDAwMGJkMGFjMSBsZWdhY3ktdHJ1bmsKKzYxMjEzIDJkNTUxZDA0NjAyMmUxYjc0ODY2YTY1NTQyMzc5YmU5MmZiZDNiYjcgbGVnYWN5LXRydW5rCis2MTIxNCA0ZDM2MWYwMTY0MWNiNjExYWIzZmE5MDNjMGVmMzQ4Y2M2ZmEzOTQ0IGxlZ2FjeS10cnVuaworNjEyMTcgOTFkNzU3MmUzNWExY2QwMTBlYTAxNGJkMzhkNDY3YTdjMDIyOGM3OSBsZWdhY3ktdHJ1bmsKKzYxMjE4IGQ3ZTRjNjNlYmNhZDA3YmU2YjJiYzE4ZTAzYzI1ZWQxYzMyNjRhMjQgbGVnYWN5LXRydW5rCis2MTIxOSA1NDg5YWY2ODY0MDhjMWVjMDcyYmEwYjg5NmJmMzMxYjEyZWQyZGUxIGxlZ2FjeS10cnVuaworNjEyMjAgM2ZjMDljY2YwMTQxODVkMmNiNGNlZjFjNWFlMzUwOTYxOTY1MGY4NyBsZWdhY3ktdHJ1bmsKKzYxMjIxIDBlMjI0YWEyMTlhMjFiN2ZhMjI1ZGExM2IxNWU3MTAxNGMwOTQwMjggbGVnYWN5LXRydW5rCis2MTIyMiBmM2ViNDU3ZTk2YTc1YzNmOTc3ZTU3MGIyNWUzMWJkODEyZGU1ZjBlIGxlZ2FjeS10cnVuaworNjEyMjQgZTQ0Yzc0NWJlYzBiYWRiNzkwMTZlYWNkMGNhNmIyZjNjZmU4MTBhZiBsZWdhY3ktdHJ1bmsKKzYxMjI1IDRlYTM2YzAxMmEyZGU1MjI3NDIxMjFkNDkzMjY1MjljOThjMGZiMTkgbGVnYWN5LXRydW5rCis2MTIyNiBkZDAxNmE2ZGRjYzVhOTAyOGYwNWJhNTE3YWRkMzc3OTQ3OTRiYTlmIGxlZ2FjeS10cnVuaworNjEyMzAgOTdiZWEzOTIzNmE5M2I2OWM0NGY5MWJkYTk0MjY3MTM2MjYyY2U1OCBsaWJmZmkzLWJyYW5jaAorNjEyMzEgMmQ0MjUzMDE1ZjU4NDBhMTRjYjRkYWFkZDc3MDc5MDhiYTU5MmMzMCBsaWJmZmkzLWJyYW5jaAorNjEyMzIgOTZhYTZkMDI3ZTJlNzY5MTgxNmU0OWIzMDRkOTc1ODI4MTQyMWNiMyBsaWJmZmkzLWJyYW5jaAorNjEyMzMgNTU0NmRjNGE0MjZhYWE2Njk5YjRjNzdiZDIxYWNkZTY3YmJjNTM3ZiBsZWdhY3ktdHJ1bmsKKzYxMjM0IGQzODdiMDFkYmMxYzlkYWFmOTA2NmIxMTY4MmU3Yzk1ZjUzMzMzYjAgbGVnYWN5LXRydW5rCis2MTIzNSA5MWNhOTU0OTkwNmFjYWJjOWFhNjU3ZTQxZjZjMjVlMDI1ZGM0N2JlIGxlZ2FjeS10cnVuaworNjEyMzYgNDk1NzAwZWUzMzQ1NmY3NjRjZWMxYzE0NTI5NTI2OGYxMzY4MmI1NCBsZWdhY3ktdHJ1bmsKKzYxMjM3IDhhNWM3NWVmYWU0YzIwYmU5YTc0MTliOGRiMTBhZTFlYzI1NjZmMGYgbGVnYWN5LXRydW5rCis2MTIzOCBkZDMxOGMzZjZjYjc5YTc0OTU5YmY2YTJmNTM1MWFjMmY0ZjE0NGRkIHB5M2sKKzYxMjM5IDAwY2IwYTM1ZmI0OWIyZmM5N2Y2Yzc0Y2JmM2M3NGNhMjUxNmRhZDUgbGVnYWN5LXRydW5rCis2MTI0MCBmZjNlOWFlYWE2OTIzNWI4OTI1OTIwNWVlYTMxNjZlN2MxZTYzMTM4IGxlZ2FjeS10cnVuaworNjEyNDEgMzBmYTY3NzcwOTZmMjEwMmVkN2Q0Y2NjODc2MmFkZGIzNjRlYTY0NSBsZWdhY3ktdHJ1bmsKKzYxMjQyIDExZTllMzY2N2IzNjVjZGVkNzdlOGMxNzZlYzI5YTkyMWNiMDgyYzcgbGVnYWN5LXRydW5rCis2MTI0MyBiZWFiOWUxMGExOGJkZTk3OGY0MjZmOTBjOGY4OWE4ZTA5MDgyYjYyIGxlZ2FjeS10cnVuaworNjEyNDQgOTk2MGZkMmY1ZWE5NDA4NWFlZTY5OWJjYWQ5ODBjNTA0NTVhZjllZiBsZWdhY3ktdHJ1bmsKKzYxMjQ1IDFhNjhlY2UxNTQ3YWI0N2Y3Mjk3Y2RmYmU4NjNhZmQ2ZGNkYWI1YTUgbGVnYWN5LXRydW5rCis2MTI0NiAyMzQ0MDFhZGQyOTk4ZmJmYTU0NTc4NDhjNWY0OTg1MmIzMjNlNGZiIGxlZ2FjeS10cnVuaworNjEyNDcgYzlkNjZiZGJjY2NkNDRhMzU5YzViYjgzODNiNGUyYWRiNWM4MWRlNSBsZWdhY3ktdHJ1bmsKKzYxMjQ4IDQzNjEwNTEyNTQ0NTkxZjc4ZTg3ZTFkMDcwZmViNzIzNzUzNmFmMzAgbGVnYWN5LXRydW5rCis2MTI0OSBmNTI0NjkxMWM5MDNmMGMzZmVlMWY1NGZhOGU5MTBiZTEzNWYwYjlmIGxlZ2FjeS10cnVuaworNjEyNTIgMGNkNGFkMWM5MTUzZWE4YTE0MTY1OGI1MTUyN2M1NDgxM2MyM2JiMSBsZWdhY3ktdHJ1bmsKKzYxMjUzIGQ0MWE0MjA2NDA1YzEzNWZmMGQ1ZDI5MWVhYjZmZTRlMTY5NDY3ZGYgbGVnYWN5LXRydW5rCis2MTI1NCAyMjE2YjEwMGIyZDJlZGVmZDIzZmVhZGFmNTZjMWVlZmI4ZWE2YjA4IGxlZ2FjeS10cnVuaworNjEyNTUgNDI4ODliMWE3ZGMyNTVkZDgwNTBjZjkzMDgwZGI4NmJkYWRmMTUxOCBsZWdhY3ktdHJ1bmsKKzYxMjU2IGMxOTdlMTg0NDliNDA0Zjk1M2E1Njk3NTVjODBhZDFkMDk2MmZhNjEgbGVnYWN5LXRydW5rCis2MTI1NyBlZWZjNjA0YWQ5MzVhYjg0MzA2MTE2ZDk5NmU1ODg2MzE0NWQ0NzY3IGxlZ2FjeS10cnVuaworNjEyNjAgZDBiZTJjMzZjYmY4ZDc5OTIyMGVmOTAwZTU4ZGY5NzVlYmUxMTQyMSBsZWdhY3ktdHJ1bmsKKzYxMjYxIDczOTVlZDBmMGY3Zjc3NDM5NjliYjk3ZmE2Mjc0ODU0OTk4ZWFiNjcgbGVnYWN5LXRydW5rCis2MTI2MiA5YjA0OTQxNjczZjE3M2YyMTRjNzQ5MjMyMjU3Njk4MTM4N2Q5YzJhIGxlZ2FjeS10cnVuaworNjEyNjMgZWY4OTMzOTA0ODdiYWZkMDFlODhhZmM4ZTNkZWE0OGNkNGVjNzlmMCBsZWdhY3ktdHJ1bmsKKzYxMjY0IDYxZDIyNzAxYTVlNWViNjI2YWQ3ZGQwOWZmMDYxMGE0NWNmZmRiZTYgbGVnYWN5LXRydW5rCis2MTI2NSBiMjYyYmVjZTEzMjNjYzNlOTExY2QwMWMxOWZkZTQxZjIwYTA0ODRlIHJlbGVhc2UyNS1tYWludAorNjEyNjYgYjhlZjcxYjAxNDQ2MTA3NjhhNTg0Y2QxNDg2MTQzMGQ5YmU5NTMzMCByZWxlYXNlMjUtbWFpbnQKKzYxMjY3IDRjNDc5OTNhZmIxYjEyMzBkY2FmOWQzMDc1M2I2ZWIxNmI4ZWUzMTcgcHkzaworNjEyNjggMGI4YjNlNjYzZTNhMTVjNzY0N2VjMTgzN2IxYTc2ZjUxNGJiYmQxZCByZWxlYXNlMjUtbWFpbnQKKzYxMjY5IDA2NWM0YTc2YWMwMWYxNWNhNGYzYmIzNDMwMThjMDNiMjQwYjJiYWEgbGVnYWN5LXRydW5rCis2MTI3MCAxNTc0NmJmNGEwYTYzYzQ5OTA5MzgzMjc2YTlhYTFjZjRlOTQ2MzcxIGxlZ2FjeS10cnVuaworNjEyNzEgYTRjMjY1NTY1Y2I2YjY3NzQ2YzZjNGRkMjI1MzE2ZTc3NDliZDY0MSBsZWdhY3ktdHJ1bmsKKzYxMjcyIDM5ODAzMTNkOWI4YjI3YzBlMjIzNzBjZjIxYzhiNDYwMzcxNTIyZGQgbGVnYWN5LXRydW5rCis2MTI3MyAzNmZlZjk5YWYxOGQxMjE0M2QzNjhjZGE4ZTE4MTAxMTRhNjk4MDE2IGxlZ2FjeS10cnVuaworNjEyNzQgZTliZTZhZWI0ZGYwNjIxZmIyOTIxOGU1MzQ0ZWU2OGIxY2Y3N2JkNSBsZWdhY3ktdHJ1bmsKKzYxMjc1IDg5OGRjMGY4YWI2MzVhZjdlODZmYTIyOWZjYzE4MTMzMWU3YmNkYTAgbGVnYWN5LXRydW5rCis2MTI3NiAxN2IyZWEwYWZhNjExODg4MjgxYTBmMjQ5YjBjNmViMTAxMzVjOGU2IHJlbGVhc2UyNS1tYWludAorNjEyNzggYWYyNjdlNTRiZjFkZGU4ZDhiNjdkZjAyOWYwNzk5ZWFkMDdlODQ4MyBsZWdhY3ktdHJ1bmsKKzYxMjc5IGJiYWI4ZjY0ZjhkNjJjNTY5YzZkM2M4MDFmMThjOTMzYmQ0MDg3MmUgbGVnYWN5LXRydW5rCis2MTI4MCA5ZWNiMDNlZjFjNjI0MTk3YjUyMzk2Yzc2YzVmMTE2ZGM1ODUwMzM1IHB5M2sKKzYxMjgxIDQ4NWIyMTk1NDc0NjA5N2IyNTA1MjIyNGNlNDllMTYxOGVlMGQxNTUgcHkzaworNjEyODUgNDRhYTU5Zjg1OTFkYWE2ZTc3NGRhOGM2YWZiYzUyODZkMmNlNWI5NiBsZWdhY3ktdHJ1bmsKKzYxMjg2IDBiZTliMWNmMWIxNjIxMTY3YmRhYTJmNzg1NzBkOGNiYWU0NWJkODIgbGVnYWN5LXRydW5rCis2MTI4NyA3MTIyZmE2NTY5N2I4YTczZTYxMGRiNDg2ODEzYTAzZTk2YTMyYWQ4IHJlbGVhc2UyNS1tYWludAorNjEyODggNWY0OWI1NjlkZWRmMTE0YzVmZWNiYWI1Y2Q2MDJmOWUyYTg1OWE4YiBsZWdhY3ktdHJ1bmsKKzYxMjg5IGE4NzU0YzBkYjUzZjUwMzEzZjVkZmM0MTc4ZWU2ZTI3ZjQ5NDdmZGYgbGVnYWN5LXRydW5rCis2MTI5MCAzNDM1OTdjN2Q2ODJiMzU1MjU4MDM1MmRlZGRkMGNkYjM2OTc4YTA0IGxlZ2FjeS10cnVuaworNjEyOTMgOWJiZTU1Zjk4NjdlZTk0ODU0ZTM0NWY5YWY3ODdmY2RlOTE0NDVmNyByZWxlYXNlMjUtbWFpbnQKKzYxMjk4IDM5MWRlMTQzMjI2ZmQ3YjM3Nzk2YmM5NzhmZjNmNzhmMDViMDg5MTkgbGVnYWN5LXRydW5rCis2MTI5OSBmODZmYTVmZWFmMzE0ZGZhOTdiMDYwYjAxYmEyMzY3NDIzMzc4NDc3IHJlbGVhc2UyNS1tYWludAorNjEzMDMgOWNmNzA3MjljMjNmMjA4OGJiNTAzMGIwOTA5MzliMzViZDIyZGVhZSBsZWdhY3ktdHJ1bmsKKzYxMzA0IDM3YWE0MTZiNGM0N2I0ZWY1ZjlmMDkzYWM4Njg3NTc0MjMwYTE0YmEgbGVnYWN5LXRydW5rCis2MTMwNSBlNWFhZGMwNWY2ZjUxZWNkNWJkMDZmNzYyYWZiMTZlMDEzNzIxZjkwIGxlZ2FjeS10cnVuaworNjEzMDYgNDUwNTBkMzc2ZDU3ZmI4NmY4MDQyNDVmYmZjMDY4ZWY2ZmY5MTQ5YyBweTNrCis2MTMwNyBjMjdhYWJhZTA2ZmRjNzViMjI4ZjY4ZDNkOTNmMTA0ZmQzYTIzMmQwIHB5M2sKKzYxMzA4IDlhNzI3YzlmOWJhYTI1Nzg2NGQ1M2E2N2UyZDNhMDAyMWE5OTdiY2EgcHkzaworNjEzMDkgYWY0NGNlZjFjZGY1YTU1YzkzZmQ5ZjE3OTJkYjBhOWJhODkyZTViNyBweTNrCis2MTMxMCBjODMwNjE2YmQyZmM5MzEwNTNjNDE3OTQzZjE0ZTk0ZjRmMjUzNmQ5IHB5M2sKKzYxMzExIDk0MDUzYjI3YTM1MjU5MGFjMjBkNjZiZjVkOGU2ZWVkNDExMTU4YzEgcHkzaworNjEzMTIgNTA2NTQ3ODIyYjhkMDEwMjJkYTY1NTAwZTRiNjFjYTdmZTk2ZDUyYiBsZWdhY3ktdHJ1bmsKKzYxMzEzIDE1ODQyMDk0YjA4OWEyYzc4YjUwMjVjNmM3ZWQ4ZDhjZDlhYWI2MmUgbGVnYWN5LXRydW5rCis2MTMxNCA4YmFiNDE4Y2M4NzkzYjhjMDA4NmEwMDI3YWE4MThlNWE4MjcyNDhhIGxlZ2FjeS10cnVuaworNjEzMTcgNWI0MjM5YzFmOGY4MmY2MDlmODg4MGE0MzRjMTM5YzFkNTk2MmUyMyBsZWdhY3ktdHJ1bmsKKzYxMzI5IDdmMjNiODA0ZTk0YzA0YWM0ZmI3NWUxNjU3MjljNGRmMzY3MzZlZmIgbGVnYWN5LXRydW5rCis2MTMzMCA2NjA3MGZkYmYwYjkzMDc3MzBjNzVkMTliN2MxMmI1OTkxMWU1ODlhIGxlZ2FjeS10cnVuaworNjEzMzIgNmYxOTU3NTVmMTQ0ZTgwMmRjMWQ4ZjcyNTE2ZGQwYWExZWI4OTcyZiBsZWdhY3ktdHJ1bmsKKzYxMzM5IDQ1NmNlZWM2NTM1N2MxNjY1N2IwYWRiYmJjZmUyNzIwYWYwN2FiMDUgcHkzaworNjEzNDAgYWVhYTMwMzE0N2VlYjIzZjRjMGI0ODAzMTZlYzM2NGU0MTI2ODlhNiBweTNrCis2MTM0NCBiOWQ2Zjg3MGJmYjE2OGM1ZmMzNmNkZWNjNzBhMTk1ODMwNzJjNTU5IGxlZ2FjeS10cnVuaworNjEzNDUgZDhkZjRhYTA2MjYxZGU1ZTRjMGFhMDUxZTQ0ODY5N2Q0NzkxZTQzNyByZWxlYXNlMjQtbWFpbnQKKzYxMzQ2IDIwMjI5NDNhZDQ1MGM0MWQ2NDcwOGZiNWNhY2EyZDI2NzJiNWI4ZjggcmVsZWFzZTIzLW1haW50Cis2MTM0NyA1ZDc2NGQ1MThmNjVlYmI5MTA4NTY5NzI3YTdjODhiMzIwYzI3ZWI4IHJlbGVhc2UyMy1tYWludAorNjEzNDggZTg1NzJkOWFjODVlZjNkM2U0YzAwYzRlZDhmMWNhN2E2YWVkOTlkZSByZWxlYXNlMjQtbWFpbnQKKzYxMzQ5IGY3YzM2NThjNzFjM2Q2YzMyMDM5ODI1MDczMjc1ZjVkNzgzYWE0MDMgcmVsZWFzZTI1LW1haW50Cis2MTM1MCAxNjJjNjk1MmVhMzRkNGU3MWY1Zjk5OTdmZDgwYTFiNjg4MzlhMmZkIGxlZ2FjeS10cnVuaworNjEzNTEgY2U1ZjZmZDU3OTEzMmY0Yjk1MGIwOTU1YWRjZjRlYjgxODQwN2JlOSBsZWdhY3ktdHJ1bmsKKzYxMzUyIDdmNGU2MDIxYmM5ZjYwOTRmZTJhMGQ2YTc1MGIwYTZlYTdjMGVlMDQgcHkzaworNjEzNTYgZTA5YmMxYzUyOTViYzE5ODQ1YTBmMzU0ZGEyZTgzMDY2ZmViOGVlNiBweTNrCis2MTM1NyA3YWRhYWI2NGViNzJlNDdlNTdmYmI0Y2NiYWY4NzAzZDBjMmY1ODEyIHB5M2sKKzYxMzU4IDc3NTJhNTdmOWM0OTBkMzFmMGYzYWY4YzYxMjE1NTM2OGUzOWRiZDEgcHkzaworNjEzNTkgZTQ0NjkxMGM5ZDQzN2Y0ZDRhMDMwYWIwMTQ0YWRiZDExYWZhMjRiYSBweTNrCis2MTM2MCA3NDBiNTgwOGM1N2FlN2IzZDRjNzkzYmFkZTUxMWNmYWY5ZjUyZmVkIHB5M2sKKzYxMzYxIDQyYTZhYWQzOWU1Y2U5YmQ0NWZiZGEzZjdmNjk5MThiN2Q2ODM1MzYgcHkzaworNjEzNjIgN2I5NWM1N2I1ODIxYmZhYzI3ZWU2YjE1ZTQ2MTZhZTM5MGMxZTNjYiBweTNrCis2MTM2MyA5ODYzMzhlYjBjMGRlNTI4NjI1ZDQ1YjlmYTUxYzNlZmM4YjkwN2EzIGxlZ2FjeS10cnVuaworNjEzNjQgNzQzMWYzZmFhMzU2OGE0MmUxZWQ0NDNmYTZkMzViNzlhOWFhOTQxYiBsZWdhY3ktdHJ1bmsKKzYxMzY1IDkzOTVhMjJhOTY2YTk0Y2EwODhiNWM0YTdkNTkxMjQ0ZjRiMjZkNTAgbGVnYWN5LXRydW5rCis2MTM2NiAwMTFkNzlhZjA1ZWE5MTNmY2JmNzMzZDVlMWVmMjRkNmJmMmFmOWVjIGxlZ2FjeS10cnVuaworNjEzNjcgZDUwMjRlZTllODhhMzFiMWI2Yzc0NDQ4NDIxZTEzYWQ2ODAyMzQzYiBsZWdhY3ktdHJ1bmsKKzYxMzY4IGQ3MmQ1MjdkZTcxMTk2NTY1YWY3MzVmMmE4NDdmNDg4OTc1NDdhN2QgbGVnYWN5LXRydW5rCis2MTM2OSBjYmI5ZTJmNGIyMDI4M2FjYTMzNTRhODljZGY4NDZmYjI3MTY1MWFhIGxlZ2FjeS10cnVuaworNjEzNzAgZGI1YjMyMWVkY2JiMmMxZjkzZWEwZWMxNDFmOGI1Njc2M2ZjNmRkNyBsZWdhY3ktdHJ1bmsKKzYxMzcxIDZhMzNkNGY2ZjE2Zjc4MjdlNmUyZjFlZjRlNzA3MzNhYWI2MTRkYTkgbGVnYWN5LXRydW5rCis2MTM3MiA1NDNlOGRkZTM2MWY4YTYxYzIxNmU3NzRhYzRmZmU3NDZjNzUxY2JjIGxlZ2FjeS10cnVuaworNjEzNzMgNDlkYzlhZjkwYjNkMWYyOWRlZGI1YmFlYzM4NzRkMzYyNjk2YmE0YyBsZWdhY3ktdHJ1bmsKKzYxMzc0IDY2MzQxYmVkODJiMzA1M2ZmZTY2Y2U4MWE0ZjE5MjU4ZTA0YzBmOWEgbGVnYWN5LXRydW5rCis2MTM3NSBkOTdiYmFkOWEzNWVlZWUyMDM3MWMyNDFjNjRjZmQ4ZGRmYjEwOGFhIGxlZ2FjeS10cnVuaworNjEzNzYgYmM4MTMyNjVlMmM2NTMzYzU1MGNjZWZiZmU3MzI2ZjFlZjhlYTM1NSBsZWdhY3ktdHJ1bmsKKzYxMzc3IGUyZTU0MmZkYWNkMDlkZWI4YWRhMzVmNjNmNzdiZmZhNzQ4ZjgwN2IgcHkzaworNjEzNzggZjZiM2NmMmYzMzMxMWZjZTcxNTFiNjFmN2M2ZDhkMWRiNzEzZTkyNCBsZWdhY3ktdHJ1bmsKKzYxMzc5IDdjNzhlYTcwNzIxOWVlNGQwMGU2NDYzNWNjZGExYWQyNzE5ZmI0ZDggbGVnYWN5LXRydW5rCis2MTM4MCBlN2FhOWI1ZjIxYjUwZDI4ZDg1ZDA2NzRhYmM4NTczNGM4YjBmNWVmIHRydW5rLW1hdGgKKzYxMzgxIDUzNzM3NTFhZDRiNDEwYjgyNzdmNTE0Y2YyNGMyZjUzN2ZjZmUyYzMgdHJ1bmstbWF0aAorNjEzODIgMGUwYzE0OThiZTFhODBmODZiOTk0NzRiNWNlMmFiZmQzM2RlYjNiZCBsZWdhY3ktdHJ1bmsKKzYxMzgzIDM1NGUzNzdjOTU5MDI0NGFiZTA3YTk3OTJhOGFhMDJjN2M2YzFhNjMgbGVnYWN5LXRydW5rCis2MTM4NiAxNjU4MGRjMTQyOTRlOTIyMzk4NGVhOTEyNDBjODljMTUyNThmOGU4IHB5M2sKKzYxMzg3IDAwNTNmYzlmNWExZjZlNzA1ODY0NDhjOGU5MmU1NGRmOWQwYzU3NWYgbGVnYWN5LXRydW5rCis2MTM4OCA5Yzg5MDllZTU3MWY0YzUwNWY1MTFkNWQxYTM3YjZmZGE1NTNmNWI5IGxlZ2FjeS10cnVuaworNjEzOTIgYjk0MGIxYWQ5YTNhYTIxOWEyMWE5NDhiMTIxN2YxZGQwZTA2MGZhZSBsZWdhY3ktdHJ1bmsKKzYxMzk1IGMwN2M1YzdhOTE0ZWUzMWY5ZDcwYzQ0YmEwZWZmNjQwMTQyYzBhMzAgbGVnYWN5LXRydW5rCis2MTM5NiA4MjNlMTFlYmY2NjgyOWJhZjU1MGI5MTYwMTNiNTM0ZmQ3NDVmNzA5IGxlZ2FjeS10cnVuaworNjEzOTcgYTVjOTM5MjI5ZmYyN2ZiNDY0NmQxZWVjYjFhMWVkZGFiYjhmZWQ4YiBweTNrCis2MTQwMiAyMTJlOWM4YWQwODdlYjE2Yzg5NGUwMGVjOTg1MjAxODQ1NTlmMmNiIGxlZ2FjeS10cnVuaworNjE0MDMgNTllYjVhZjYxY2Q3MzY4NTE3Mzk4ODdhNzA1MmI2NmVlMmM5OWJlYSBsZWdhY3ktdHJ1bmsKKzYxNDA0IDUzMWU2MjQxNmVlYjY3ZDVlOTI5N2UwNzg4MTNjMjI4ZmQ1OThkZTAgbGVnYWN5LXRydW5rCis2MTQwNSAwZDEwZjE5M2I5YmUyNWE2ZmVjODk5YWM0M2ZmNjIwZjExMWRiNTNmIGxlZ2FjeS10cnVuaworNjE0MDYgNGUzNThlZDdmNTE1NjE3ZmZjN2JhNTJiMDFlNTNlYzQ5ODMxOGIxMCBsZWdhY3ktdHJ1bmsKKzYxNDA3IGZlYTdiYTg5MTBhOTYwYmY3MGRkOTJlNGU3N2Q3NzAxNjE1Y2RiOTEgbGVnYWN5LXRydW5rCis2MTQwOCA4MzJjODIwZTlkMTQ0Y2I3NmM4Nzc4YWQ2ZmNmZmUyMzJiMWY1YzQ2IHB5M2sKKzYxNDA5IDA1OGZiZmI5ODVhZThhMGI2NWQ3MDQxNWE2MTk5MTVlOGM1ZGFkNDAgcHkzaworNjE0MTAgNzAyNjU3ZWZhYjliZTkxMzkzZDljZWI0YzkyNzA2MzYwZDk1OTRjNiBweTNrCis2MTQxMSBhZTIxYThkNzAzMDI2ZTE4MjIyMzBjNDZlZmI2ZDFhZjZmMTU2NTRmIHB5M2sKKzYxNDEyIGQwYzY3N2RkZDZiODljMDE0ZDY1ZjkxNzQ4NzIwNTdmOGIyNjk2YmQgcHkzaworNjE0MTMgMmUwZTE0MDI5NTlkM2RlNzA3YzUxZjllZTEyNjFiMDQyMTQ3ZmFhNCBsZWdhY3ktdHJ1bmsKKzYxNDE0IDM5ZmIyYzc4ODQxZWEyNTgyNGJiMWFiMDY5NmEyYTk3ZGI1YjlhMDEgbGVnYWN5LXRydW5rCis2MTQyNiAzNzk3MzEyNWIyYzBjYzBhZjk1NzhmYmQzYjU2M2I4Mjc1NDI1YTZkIHB5M2sKKzYxNDI3IGQ3MGZhYjk3ZWJiNWVhOTczMTA3NWUzOTdiOTE4MzFiMzE0NTBlNGYgcHkzaworNjE0MzAgMWYwZTdlMmRiZTE1Y2JhZTllNTY0NWM2MTM0ZmNlODI2MmJmM2MyZCByZWxlYXNlMjUtbWFpbnQKKzYxNDMxIDc5ZGVhNjUzMzJmODZmMzdmOWM2NTNkZTI0MGMxOGVlZjk2YWZlZDQgbGVnYWN5LXRydW5rCis2MTQzMyAyZmYzZTQzMjE3YjdlNTQ0YTM5ZTU0NTgzZTUwZWZkOTY0NzVhMTliIGxlZ2FjeS10cnVuaworNjE0MzQgNGQyOTEyN2YzZmEwZDdiY2E3MjljZGM1MDFkNjBkMjIwOTI2NzE4YyBsZWdhY3ktdHJ1bmsKKzYxNDM1IDE2NzMyZGIwMDgyMmVhOWRhZTE3ZTFhNGEzM2NlYjkzNGU3ZjNhMWQgbGVnYWN5LXRydW5rCis2MTQzNiBjNDQwMmVjNjBjM2E0YTE1MmVlNjI1ZTdkMTdjMjVmNmQzNTVjNTljIGxlZ2FjeS10cnVuaworNjE0MzggNGQzOWQ0YTZhOWRiYTVhOGQ4OWZmMWNjNWViNWRmM2Y0M2Y4N2E2OCBsZWdhY3ktdHJ1bmsKKzYxNDM5IDIyYTRhMTExZDU5OGFlMTNiYTcwZmI3MjEzMmIwMDJjNTIzZDhhZDcgbGVnYWN5LXRydW5rCis2MTQ0MCA0ODI0N2E0YjM4ZWRmMDk3M2QxN2E1NjQ1NDRlZWEwYzdjOTIyMmI0IHB5M2sKKzYxNDQyIDYyZWYwZWEwMzRmNGU5NjkwNzllMTY0YzgwNThmMjUxNmQwOTc3ZWEgbGVnYWN5LXRydW5rCis2MTQ0MyBiYjU0M2E4MDlmZTI0YzhjNTI1MWViMjU4YmYyZTlkNjBmODUwZjE1IHB5M2sKKzYxNDQ0IGYxMWMwMDI0NmZiNTI1ZDE3YzM0ZjI2ZTZhNGZiNmNiNjVjNjQzMmUgbGVnYWN5LXRydW5rCis2MTQ0NSBhY2JmOWNmNTk0ZjhiZDg1MjY0ZDZhNDRmNWVmYzQ2ODY2NGFhMGQ2IHB5M2sKKzYxNDQ2IDM2ZjNjNmJmMmM5N2JmYWZlZDY5ODFhZjIzMjljYjQzMWExNTc0YTMgcHkzaworNjE0NDcgMGRiN2ZhMTRjNzk0OGJmMTQzNjhmNjVjMGRkZmY2OGIzZDNlMzA2MSBweTNrCis2MTQ0OCBjYjM2MGZjODg5MTIyNzczZTNiYjIzZTQ3Njg4MzBlMjI2ZmRmMGY3IHB5M2sKKzYxNDQ5IDcxMDQ3OGExOTc3YWNmY2M0NWMzOWU4NjYzM2RmYmI3MjA3ZTYxYTkgbGVnYWN5LXRydW5rCis2MTQ1MCA4MDE4ZjUwNjU2NjFiYWEzMmEwNGNkMmI4NjI3YzM5ZDU4MWYwN2M2IGxlZ2FjeS10cnVuaworNjE0NTMgN2U4Y2ViMzk0NDdlY2JiYTY2YzBlZWQ3NjE4OGMxOWYxMThkZjU5YSBsZWdhY3ktdHJ1bmsKKzYxNDU0IGI1Y2I3YTY3OGYzODkxZmM0OTY3ZWFhNzUzMmE4ODcwOThjYzNhMzcgbGVnYWN5LXRydW5rCis2MTQ1NSBkZTZiMjgzNGI4YWY5OTBkMTFhMGQ3MzNjNTc3MjQ4OTg1NzY1ZjY2IHB5M2sKKzYxNDU3IDQzMTgyNWVhYzRhZTM3MzYzZTRlOWZkMDRhNjcwZDI4OTUzZmI1YjQgcHkzaworNjE0NTggZDMzY2FkYjU5NWY2NWRkYWY4YjAzYWY5ZTBlNmI3YzQ5MzQzZjZhOCBsZWdhY3ktdHJ1bmsKKzYxNDU5IDZhN2ZhODQyMTkwMmE5NTRkZWM3NzlmZTlhN2Y0YTQ2MThiMWE5NDIgcHkzaworNjE0NjAgMmMyNjBiZTEyNDJkOWFmZDI3MzE4NDdkNDcyZTM3ZjVlYjQ4ODY2NiBweTNrCis2MTQ2MSAzNGY0ZDQ3ZWM0M2E0ZjM2YzFiN2QwNzhjNDE4NmVkYWI0ODA0M2JmIHB5M2sKKzYxNDYyIDlkOWEzOGI4ZWIxYjExYTAyODI1ZWIwNDU5MGM5ZjI1ZTFhOGQ5ZjkgcHkzaworNjE0NjMgYTIwMGMzODdlOGIyNjUxMzVkZTE2YjZkOWU5N2Y2OGNlNDViOGEzMCBweTNrCis2MTQ2NCAxNmI0NDc2NDk0NGViOGEzZWE4MmRjNjNkOTA4ZTM2OTlhOTY2ZjRhIHB5M2sKKzYxNDY1IDZjMzkzZGNkNDVjNDhmMDcwNzMyYjFhOGQ4ZThiZmY4YmFhNDllYTkgbGVnYWN5LXRydW5rCis2MTQ2NyAzMjI2OTNiZjEwY2FjNmNkM2MwODdlMDAxZTZhOTRjMTAyMmU0MTFkIHB5M2sKKzYxNDY4IDk3M2EyM2NmNmYwYjdhMDk1OWVkNmFiNjJjZTc5YjBkZTI3YjEwZTggbGVnYWN5LXRydW5rCis2MTQ3MSA3ZjEzZDY5MDRlMTRhNDk0YWVlYzg4OTlkYWJkNzhjMjRlYzlkNGNkIGxlZ2FjeS10cnVuaworNjE0NzIgOGEzZmE4NmMzMGE2ZTJjNzJkNWM3YmJmYzIzOGE5NWViZjNmNjIyZCBsZWdhY3ktdHJ1bmsKKzYxNDczIDM3NDVmZGI5OTMyZjA3YzQ4NGU5ZjMxNTU3YmIyOGI2YWZjNTI5YjEgbGVnYWN5LXRydW5rCis2MTQ3NCA4ZGVmYTFkNWYwNjZkOTMwMThkOGI3YzdkOWY1N2RlMGQ0YzM3NmU1IGxlZ2FjeS10cnVuaworNjE0NzUgZmYwYWI3YjI4ZjQ5MTdjZDg2Mzc0MDc0ZDJlZjQ5YTk4MTViMTJlYyBsZWdhY3ktdHJ1bmsKKzYxNDc2IGUzMWQzMTc4MWE3NTNlMGRjYTQxZDI0NjY5NzI5ZTM4ZWY5MTNjYzQgcHkzaworNjE0NzggNzlmZGM4OGZmOWVjZGRlNWY5NzI0YWIwZTlhOGM2MjQ3ZmE3YjNhYSBsZWdhY3ktdHJ1bmsKKzYxNDgwIDRkYWJkOTA3MTg3ZWE3MzkxYTU0YjUzMWRhNzJmNDM0NmRkMmUxOTUgbGVnYWN5LXRydW5rCis2MTQ4MSA5NjZmZjE2OGI1NjY5NmMxMDVjMzA0NGU2NjJkMTdhYWYzNzg5MGNjIHJlbGVhc2UyNS1tYWludAorNjE0ODIgN2M0ODU0ZmZjZGNkODhjYzU3MmJlZGQ4MTk0ZmY1ZDBmYzYwNzAwZSBweTNrCis2MTQ4MyBjMGYxNjVlMWRiYzA1ZGNlNTMzNzgzMGZhNDMzZTlkYTBiNDU4M2YyIGxlZ2FjeS10cnVuaworNjE0ODQgYTdiYjAwNGU3ZjA2YTkzY2Q4ODU3M2MyYzc4YmY0N2Y2MDc2NmM5OSBsZWdhY3ktdHJ1bmsKKzYxNDg1IDNkZWI3MGU0MTgyYTA3YTJhNzkyOTgwNWIyMTYxMTZhZmNjM2ZlOWMgcmVsZWFzZTI1LW1haW50Cis2MTQ4NiAyN2U3ZGMyZTYyOTA1ZTkyMjhmOWUwYWIxYjY5ZTRhYjI1MmY3YjhiIGxlZ2FjeS10cnVuaworNjE0ODcgYWEzM2ZiOTBlYWE1MmE5YjliYTc5ZWMwYWUyNzZlMTkwYTJmOWU0NyBweTNrCis2MTQ4OCAwNDQ4N2FkM2QxYmVmNDE1MzUwZmQzY2NhOGNiNGRmNmQ3NDk1NjlmIGxlZ2FjeS10cnVuaworNjE0ODkgM2JiMGYxYTE5MzlkOTM4NzhiNGQ2NDliZWFlOGU3MWVkNTkxOWQxZCBsZWdhY3ktdHJ1bmsKKzYxNDkwIGIzNTk0ODBjYTg4NjQ2MGVjZmVmODUxNjA4OTE5YWY1YTBhMzMyYjAgcHkzaworNjE0OTEgNWMwYjVjYWJlZWM5NjZkN2ZlYzgzNjQyOTllMWFiODI3Mjk2ZDEzMSBsZWdhY3ktdHJ1bmsKKzYxNDkyIGVkY2IzNTQyMTc2YTUzZDE0ODJlZmM1ZDJkODQ5YjU1OWVkOTNiMTcgbGVnYWN5LXRydW5rCis2MTQ5MyAxMzcyOWM3MGM4ZDhjMjk0OTk2ZjA3OTg5OTFhNGFkZDlkZTY2YjAyIHB5M2sKKzYxNDk0IDA0MDUwMzczZDc5OWRjMGQ1MzkzMGM2OTE1ODVmYzI4MmUwNTc0OGMgcHkzaworNjE0OTUgMjU0NjMxM2E4YjI3YWQ0ZmFjOGFjOTJmMmYyYjM4YzljODAxYmEwNSBsZWdhY3ktdHJ1bmsKKzYxNDk2IGM1MjQxMDY5ZmZmZGFhOWU3ZjEzNWZjZmE0YmMxYWY2ODAyMjZkZDAgbGVnYWN5LXRydW5rCis2MTQ5OCA1MjY4MmJkNzM4YTc1Y2Y0Y2I3MTJlNmIxOGI0M2NmMzIyOWJhY2FmIGxlZ2FjeS10cnVuaworNjE1MDMgZTIyN2VkMmNhOWQxNWFiYmI2MTMzMTQxYjM5MWEwMjU0YmEzOWYyYSBsZWdhY3ktdHJ1bmsKKzYxNTA0IGQ0YmJmOWI0NzEwZjQ3ZDhmN2M2YzBmZDA2OTNiMDMyNGI5NDJmNDAgbGVnYWN5LXRydW5rCis2MTUwNyA2ZmM2YTgwNjc4NGY5NWYwNjBmZWVlZjQ0YmY1MzViNmIwNDk2MjZjIGxlZ2FjeS10cnVuaworNjE1MDggODY3MzY0MDFkMzk0NDQ3YWNhZmU5YzQ1NjY0NGQ0MDJjNjM3ZThlZSBweTNrCis2MTUwOSA5NzM2MWQ5MTdkMjJkNDAxYTM2Y2U4NmRmZjZhZDA5YmYyZWRhMjM0IGxlZ2FjeS10cnVuaworNjE1MTAgNDYzNDI0MzE3OTU1MGFmNTU4MmRhNDBjMzdhM2Q4M2VkZmE3MjAxNSBsZWdhY3ktdHJ1bmsKKzYxNTEwIDExN2JiZDQ0YWRhZTY0NmFlYjY1NGNjZWRiYzljM2FlNjI2NjVjYzIgcmVsZWFzZTI1LW1haW50Cis2MTUxNSA4ZjAwYTA5NDhmMDBlMmU1N2U3OTIwNjVhYjE3MzZhZGI1YWIzNTQxIGxlZ2FjeS10cnVuaworNjE1MTYgNmMxN2RhYzcwNTcxN2NmY2Q0MjQwYTM4NzEzYTdmOGY0N2VmNTZlZSBsZWdhY3ktdHJ1bmsKKzYxNTE3IDk2MzhkMmVhMmY1N2JhYTM2NDc1YTg1ODIzZDdkNzMwMDYzZjVhZTkgbGVnYWN5LXRydW5rCis2MTUxOCAzYjM5YjdiYjJjMDdjMjY4ZjlhNzE4ODQ4YjFlN2U2MzU4NThhMmJlIGxlZ2FjeS10cnVuaworNjE1MTkgZTE0ODI4NWJkNTExODM4OTBkMTU5NTZmYTMwYTkwMmMwOWMxOWZjMyBweTNrCis2MTUyMCA5NjYwMWY4ZjMzOTE0NDVkOTJiMmE1NzcyYjI2MDE2NTU5MTk1MGFmIGxlZ2FjeS10cnVuaworNjE1MjEgMzBjNGUxY2E4NDIxMjM2Njk4OWRmODMzYWUyMTc3MDI1ZjE3NDc3YSBweTNrCis2MTUyMiA5YjhjNGI1MTA3ZjBmNTVjYjczYzIwNzVmNmEzYzEyZmExMmNmMjJlIHB5M2sKKzYxNTIzIDIxMTM5ZWE1OWI2YmEyNTY1ZmI2Yjk0NzY1ODgwM2NiODI1ZDFlMDUgbGVnYWN5LXRydW5rCis2MTUyNCA3OGNhOGMyNTYxZGI4ZTc5NjY4ZDE1NzVkZjhmMWU3ZjliMDgzMTVkIGxlZ2FjeS10cnVuaworNjE1MjUgNmYwZWRhM2U5MmIzNjFiMjE4NzdlNjY0MDViNTVmNjhiMGQ3ZDY2NiBsZWdhY3ktdHJ1bmsKKzYxNTI2IDU4MWMzZTViMzQ5YjEyMGQyOTY1MGFkZDY2ZDE0OGRkMGQ4ZWFhOTkgbGVnYWN5LXRydW5rCis2MTUyNyA5MjMzODBhY2QxY2RkODA1NWM5OGJjNjc3MzVkMGQ0Yjk4Njg4ZWU0IGxlZ2FjeS10cnVuaworNjE1MjggYzQyNDA5OWI0Y2U0YjRkZTRiYWFhODNmNjAwZjEyYzA0ZGNmYWQ4YyBsZWdhY3ktdHJ1bmsKKzYxNTI5IDUwNzcxYTNmYWQyY2FhYTg4Zjk0MGVhMzllZmIwMDgyNGM2MGI4YTIgbGVnYWN5LXRydW5rCis2MTUzMCBmMzAyYmVmOGEwMDRhYWVmMTI3MTMzYjE0MjRjNWQ1NTgyMDVmZDMxIHB5M2sKKzYxNTMxIDFjZDkzMGI4MzVhNjM5MjhkMTcxODFiZmU3MzE4ZjZiNmJjMTQ4MTQgcHkzaworNjE1MzIgZWE5MTkxNGJjYjk3NzRmNTg1NDliZGE5MDM1YjVmOTc0MmNmOGI2ZSBsZWdhY3ktdHJ1bmsKKzYxNTMzIGE2MjhlZjgyZWI3ZTBjOWUzOTVjNWM4YjA0NjlmYzdlZTc3ZDkwODEgcHkzaworNjE1MzUgZTBlOGJlZjBkNWVjY2IyNzI0ZTE0NzM5OTY3ZjNlZWUwN2I4ZWI2YSBweTNrCis2MTUzOCBjYzc1OGU4ZGRjOWQ3OTQwNTJhYTBhZDA4NjU3OWEyMWM0Nzc5YWJjIGxlZ2FjeS10cnVuaworNjE1MzkgOTRhNjA4MmE3NzBmYTMwZmNmODVkMGJkMjFiZDcyNDk5NWYxMzg2YSBsZWdhY3ktdHJ1bmsKKzYxNTQwIDNhNzJjYmNjMWJiODA2YzJiNjljNmM1YWYyNTc1ZmQ0MTY4OWMyYjcgbGVnYWN5LXRydW5rCis2MTU0MiBlYjZkMDA3NDUzYmMyYzI3OWQwOTYxNjEzZTIwNzhkZmVhMzUwMjBjIHJlbGVhc2UyNS1tYWludAorNjE1NDQgZGM0ZDY4YWU5ZDNkYmYwNDE1OTc2ODdkYmZkMTZiMDQ0MzNkNTk3MiByZWxlYXNlMjUtbWFpbnQKKzYxNTUzIDBkNzY1OWMyYjk5ODUyNzRiNjYzMWM2YTFiMDcyNjViZjZmNTY3MzAgcHkzaworNjE1NTYgNTE1NjMzNjE1NzM1YWYwNmFiODM2ZjlkMWFkNjc4NDViMTQ3MWI0YiBsZWdhY3ktdHJ1bmsKKzYxNTU3IGJjZTY5ZGI3MmUwMDQzYzU4MTJiNzkwYTc1NDM4YTVjNjZlODU2YzkgcHkzaworNjE1NTggODNjNTVhY2ZiOTU5ODlhZTg5MWI3ZmMwNzdjMDM5NDA5NjhkZTM1MyBweTNrCis2MTU1OSAxYmI2N2U1MDNkZmZjYTQzNjRkZjY0YjUzYmZjZTY1YTJiZmI3Y2ZjIGxlZ2FjeS10cnVuaworNjE1NjAgMDA1ZGI5MzRlZTI1ZWY5OTBiZGFiNWVhNTZmZGVkNWI2Y2VmZWRmYyBsZWdhY3ktdHJ1bmsKKzYxNTYxIDBlNzk3OTNmZmU4NzA1ZTFkNWU4MTE1MGRmZjFlNGViODViODY2MTkgcHkzaworNjE1NjIgMTZjNTc2ZGVlOWQzYmFjMTg0YjQxNDkzNmZkY2RkYWVhMTI2ZDE1MCBweTNrCis2MTU2MyAyZjY0MGYwZjA2OTc2YjJlYWQ5MDM5MzNmNjYwYTIwMzEwYjIxMTgwIGxlZ2FjeS10cnVuaworNjE1NjQgZWUwZGZjY2Y4Y2VlNmVjZTg4N2JkNTM5MjY3ODc4NzI4YjY1OWFjMiBsZWdhY3ktdHJ1bmsKKzYxNTY1IGIwZDAxOTY5YmJjODdkZTQ1ZGMxN2M3NzZmNWIxOGFkNjYxMjVmZjggbGVnYWN5LXRydW5rCis2MTU2NiBmM2JlMTIyMjBmZDdlMDFiYmIyYTgwNjVjYmYxYWQ2ZjRjNmU4MDYwIHB5M2sKKzYxNTY3IGZhNzBlNmFlODMxYWUxZGVhZDFiOWFkYmFmZTBmZTVmNTYyYTFlNjEgcHkzaworNjE1NjggMDVhYzNjMTliN2E4MDM2NDMyNTZhYWFjOTc2MjFhY2IwNWZhMzhkNSBweTNrCis2MTU3MCA4NjBlMjNhNjFlNTUxMGZiYzMzZTM4YWYzZDU2NTExMGRjODdiNzJhIGxlZ2FjeS10cnVuaworNjE1NzEgMjg5M2MwMTI5ZmU1YzM2MDJhNjUzOTM2OGYzYWNkYTRkNzNiMThhZSBsZWdhY3ktdHJ1bmsKKzYxNTcyIGM4YzU0N2M1MWY5YTZmMGFlNTUwM2YwOTVlMGI5MWQwYmRjNzdhNGMgcHkzaworNjE1NzMgNTFlMjQ1MTJlMzA1Mjg1NTZjMmJiNzFhNGM2ODAyNjEwODc5NzcyYiBweTNrCis2MTU3NSAyMzg1ZTE2YWNiNDI3OWQ1MWZjNzFhYzA5MWYxYmEyNjA5YWZjNmJjIGxlZ2FjeS10cnVuaworNjE1NzYgOTZiZDk3MjJlMzFkMzAwOTI1YTZhNjMxZWZjZGNlNGJhODc3NjM3MyBsZWdhY3ktdHJ1bmsKKzYxNTc3IDcyN2Y3NDNjZjYzMGIxZDE5ZTBlMjI2YTE4NzI2NTAyZGY3MzkzOGYgbGVnYWN5LXRydW5rCis2MTU3OCBmN2E2ZjMzOTQzMTA2NzQwMjIxNDg3ZmFjOGIwNmM4ZDkzNGFkMTMwIHB5M2sKKzYxNTc5IGYwOTZlZjljNDExNGY3NTdmZmUzYTcwMmY5MmU2ODVjZWI0MzllY2QgcHkzaworNjE1ODAgZDg3ZDdmYzJjMmJmMzNhZDUwMmVmZTIwOWY3YzNhYjkyODRlYzJhMCBsZWdhY3ktdHJ1bmsKKzYxNTgxIDE5ZDRiNjk3ZmJmOWFkNTNjMDA0NTYyYzM3YjdhZjhjNTk3Y2RlOWYgbGVnYWN5LXRydW5rCis2MTU4MiA3MzNjM2VlMTk4OTk2NjdkNWY2OGNkZDFjYjc5ZTkxZWIxODAyNzE3IGxlZ2FjeS10cnVuaworNjE1ODUgYzc3ZTMxMTllMjY3NWUwODYxMmI5NjhlZGVmNjc4MDg4ODY2NDRkZSBsZWdhY3ktdHJ1bmsKKzYxNTg2IDFkZmI5YWU3OGEzNzI3Y2Y4M2U0NTBkNmJmMjhiZmRkMTYxODg5Y2EgbGVnYWN5LXRydW5rCis2MTU4NyA0Y2E3MTE5ZDE3MDA1ZGY2MTUxMWE1YTA0NGUxNmQ4YThjNDY0Mzk5IGxlZ2FjeS10cnVuaworNjE1ODggYjg0ZTBlMjNjYWJkODkwNDc1YTU3ODE2MTBlODc2M2NiZjE0ZmE0MSBweTNrCis2MTU5MCA3Zjc3NzA3MTllODQ4Njk5YzkxNDE4NDYyYTJhODUzMDAxNjYwNjYwIGxlZ2FjeS10cnVuaworNjE1OTEgZDRlMWRiODc5N2Y2ZGM4MGNhZmMxM2VkOGVhZjVkM2ZhMmQyZTYzYiBsZWdhY3ktdHJ1bmsKKzYxNTkyIDgxOTExNjk1MDA5OTA4N2JlYWZhZWI4ZGMyMzhjODAzZTc3ODk1ZGUgcHkzaworNjE1OTMgZDVjZmY3ZjlhMTQyYmU3MjA2MjRjYWJlODY5MDA0MzE0YTI0NjFhMyBsZWdhY3ktdHJ1bmsKKzYxNTk1IDJhMDEwNzVjZDkwMjE0MjcyN2FlNjVhNWY1OGM5OGQ1MDg1ZTA5MzAgbGVnYWN5LXRydW5rCis2MTU5NiAzMDI2MjVmYTZhMmE2OWFkYzhkNzkyNDI5ZWQ4ZTg4NDY3ZjgwZDJlIGxlZ2FjeS10cnVuaworNjE1OTcgNDU5NzBiMDRjZTgzZTJkNTM0Mzc0MjhjNmViMDQyYWI2NDIzOTk5NCBsZWdhY3ktdHJ1bmsKKzYxNjAwIDk2M2Q2N2RmMzcyMzdlNWRjOGExMTQ2ZjViYmNlYjZjYmNjN2ZjNjcgcHkzaworNjE2MDIgYTk4NTVkYjQwZmZiMzNmNGFiMGI0YzkzODYzOGRkZGI1ZmJjZTJlNSBsZWdhY3ktdHJ1bmsKKzYxNjAzIDFkYTI0OTk2ODNiNDNjM2UwZDE3NmU5NjEwMmJhN2I3OGU3Nzc4NTMgcHkzaworNjE2MDQgM2IzMjNmZjkzMDRjNWYwNTc2MjJiZmZjY2FiYzllNGViNjliOGZlZiBweTNrCis2MTYwNSA0MjJiNDlkZmQxNWI1M2MzZTc1NTBhNWJjNWUzNWU0YmI1NGU0NWI2IGxlZ2FjeS10cnVuaworNjE2MDYgZTBjOWI5ZWYwNDY2MGY5ZmI4MGVjMDQ1NjhiMWM0M2QzZjIyZDVjNCBsZWdhY3ktdHJ1bmsKKzYxNjA3IDQyODQ3MThmYjYzMWZhZGQzMjIyNmY0NTlmY2U5NDk2NGYwOWY5ZDQgcHkzaworNjE2MTMgYWQxZDYwNGJjOGVkMzUzMDE0YmIyZTRkNDMyYjhkOWM1NGE3MDViMiBsZWdhY3ktdHJ1bmsKKzYxNjE0IGFkYmM5MzRiZjFmZDUxMDI3NTU3MzI4NDBiNzhjNzY1NzcwMDg1MzQgbGVnYWN5LXRydW5rCis2MTYxNSAyMTQ3N2IxYmE1ODE3YzVjOGUyYjhhOWRmNzM1ZDc5ODY2MmI0YmQzIGxlZ2FjeS10cnVuaworNjE2MTYgNWNjMDRhMjA0NzY2ZjJlN2U1NDMwYTIyNDY0MTBiOGJiNzhiYjRhYiBsZWdhY3ktdHJ1bmsKKzYxNjE4IDg1NWM0MjkwZGZkN2FhMzRkYjA5ZTNmZmRiYmRjNzgyZTFkNGYwMzUgbGVnYWN5LXRydW5rCis2MTYyMSA3NGFiOGJkOTZjNWRlYjNhMmUwZjA0YjJlNWVjNDNmZmVkYTdmMjY5IGxlZ2FjeS10cnVuaworNjE2MjIgYjBiNjA4ZTU3OWNkNWFlMzYwZDcwYTFjZWE1MjQzYTYwNzI2MDEwNCBsZWdhY3ktdHJ1bmsKKzYxNjIzIGViYzEzMGE0YTI3MzgyOGY2NmFkNmZiYzczNjcwNGJmMWI2NDE1N2EgbGVnYWN5LXRydW5rCis2MTYyNCA5M2Y5NzA3YjY2NGNlNGFjZDk0NjliMTgwYjZiNTBjNzYzODZjYjYyIHB5M2sKKzYxNjI1IDMzMGY1NzRjNThmN2MzZGJlZDVlZDRkMDM3Y2I2ZjUzYTZiMGEzOTQgbGVnYWN5LXRydW5rCis2MTYyNyA4ODE3YThlMTJhNTU5ZWNhODczMjBjZmYxMTIwMWZkYzA2ZTRmMGNlIGxlZ2FjeS10cnVuaworNjE2MzEgM2JmMTljMzFjOTU2ZjE0MTI0ZDNhY2Y1YmYyZGMxYWJkZmNiMmI2ZiBsZWdhY3ktdHJ1bmsKKzYxNjMyIGRjNWJlMGIzYzNiZTdkYTQyNjQ2ZDQ2MzJlNjk4MDBkN2Y4YTkxYTcgbGVnYWN5LXRydW5rCis2MTYzMyBlNjY1YTBiMTZkYTBlODdiMGMzYTAzNmIzYjU0OTI2YjgzNGMwZTlmIGxlZ2FjeS10cnVuaworNjE2MzQgMjQyNzU1NTJjOTczMTcxNDIxOWUxMzVlZjJlZjg1OTQ1MmRhNjQ3MiBsZWdhY3ktdHJ1bmsKKzYxNjM5IDQ0MGIwOGEzMmUwYjNkNTA0ZjUzMjVlY2JiZTBiZTUyMmIwYmRlMmMgbGVnYWN5LXRydW5rCis2MTY0MyAxNjU3ZjBhY2NhNzgyMDIxMDVkNzczNjAyMDc4NTNkZjVjYTA1ZjIwIHB5M2sKKzYxNjQ0IGFlM2FkMDY1NzdjN2Q3YTVkMGZkY2U2OWM4Mjc0ZmE2YzdkNTZiMTcgbGVnYWN5LXRydW5rCis2MTY0NiAyZGEwYmYyZTJmNWNjMWYzYWM0Njk4NzRhNmNkY2M5N2YzNzI2ZTAzIGxlZ2FjeS10cnVuaworNjE2NDcgNjVmMzYxMDRmY2FkNzJjYTg5MjA0ZTZlYzQzMjE2YmI4YjFjNTU0ZiBsZWdhY3ktdHJ1bmsKKzYxNjQ4IDM5ODlmYzYxZTc4OWM4OTQ1MzY4ZDM2MGFmNWVmODIxZmE4MDU2YjQgcHkzaworNjE2NDkgM2FhNWViMTgyOTEzMTUwMTkwN2YzMDA1ZGJiNmM4MWMxYWMxODFhMCBsZWdhY3ktdHJ1bmsKKzYxNjUwIDI5M2M2MTA2ZmJlMzQ5Nzk4MmM5NTRkYzYwZTI1M2QxNzIyMjBhNzQgbGVnYWN5LXRydW5rCis2MTY1MSA2NTA5ZWY4YmZlOWMzNjNkYzdmYjU0NzY2N2U5ZWY2NjQzZDYxOGFmIGxlZ2FjeS10cnVuaworNjE2NTIgY2JhZDFmNWNhYmIxNTExZGNhMTYwNDVlYjdhYjUwNjRlMzUzYmUzYiBsZWdhY3ktdHJ1bmsKKzYxNjUzIGU4NjI4MjE5OTQ2NTE5N2IxYTE2NDExNzFkYzRhOTNiMDBhMGY3ZDggcHkzaworNjE2NTUgZmM5M2JmNWZlY2UxZDY0MmJiOGJkZTU4YzUzOWRlNGYxYzhmYzY4ZSBweTNrCis2MTY1NiA4YjBiODkwMjVkOTgyOGIzYTgwYjgyMjFhMWI0ZGRiZDcxMzY1YzBkIGxlZ2FjeS10cnVuaworNjE2NTcgNWJkMmJkYjM5ZTljZGVmNWYzNDkwZGUyMmFkMDQ3YmVkNzlhOTljNiBsZWdhY3ktdHJ1bmsKKzYxNjU4IGQwMGE5Zjc1ZDIyM2Q5MzRlMGNlY2I2Y2FjMmYzZjlhM2VmZWIyYmYgbGVnYWN5LXRydW5rCis2MTY1OSAwZmRiMzYxNjM4NDFkOGI2OTZhOTkwMmIwZGI4YzA2ZTljMjhiZTA5IHB5M2sKKzYxNjYwIGUwMjAzYzY1OGI4NjUwMWQ5ZjUxMmFhMGE2ODljMjVhNWZkZjhmZGEgcHkzaworNjE2NjEgOWE0NzcwOWEyOGI3OWY0YmM2YzE1M2Q4ODI0ZGIyOWUwYzIzMjUzOCBweTNrCis2MTY2MiBmYzIxMDY3M2VlZjAxNTQ0NDI4NjJiODk0NTU3NDhjMDU3ODNmZWMwIHB5M2sKKzYxNjYzIDYwZGI5YTY3ODU1MWQxNzUwNzBiMWRmMTdmOGI1ZThmZjQ3ZTEwZDAgbGVnYWN5LXRydW5rCis2MTY2NSA2YTNlZjNjOTA5NWMwNThmN2FkYmZkMGYwYjRlYmM5MDEzYjM4NjZlIGxlZ2FjeS10cnVuaworNjE2NjYgMTMyY2YzYTc5MTI2MWY0YzJiNTAyYWI4Zjg1ZmQzOTk4MjY0OTY2NyBweTNrCis2MTY2NyAwNmU2NDFjYjNhMjAwNzNmYTkwNmJiMTM4MWNiYWI3NDM0M2RiNWUxIGxlZ2FjeS10cnVuaworNjE2NjggMzlhNGY0MzkzZWYxOTgyNDA0MzY5NTI0ZmM4M2Q0ZTY0ZTdkNTM1ZiBweTNrCis2MTY2OSA4ZTVlYzY5Yjc2YTc0YzUwZGMxMmI1MTIxNzYzNjIzMWZmZThmMDQyIHB5M2sKKzYxNjcwIDM2ZTI5NmU2NmQyMTZhYzk3Y2U4YThjNzM0NGE1ZjIzOGI4YTc2MTcgcHkzaworNjE2NzEgMTMzNDk4YjkxZjFjNDAzY2Y1NjYxZmQ4OTdmODVkOTVjZmYxMWZkZSBweTNrCis2MTY3MiBjOTU2NjNjNjg0Y2FmOWExZTQyMWY5NDVhYmE1OTU5NDQxMmMzMDkxIGxlZ2FjeS10cnVuaworNjE2NzQgZDllYzA2OGIwOGYzMDk0N2U4OTVlY2ZjYTM5ZmViZjIxMTMwNmU2ZiBsZWdhY3ktdHJ1bmsKKzYxNjc1IDdkMmUxYWM4MzRiODVmNzhjOTk1N2Q1NjMwZGIwOTZiNzkzZmZkMzQgcmVsZWFzZTI1LW1haW50Cis2MTY3NiBkMTRhOWU1ZjgwYWU4ZmMyMzQ5YTUzNDFmZWZmNDAyY2EwNzc0ZWUzIGxlZ2FjeS10cnVuaworNjE2NzcgMWM3YzA4ZDI5ZmVlZTVkNzFhMTU4NTFmZGQ5ZWI5MTFlMmFmZWZhMyBsZWdhY3ktdHJ1bmsKKzYxNjc4IGQ1MTFlMzIxNzQzYTkxMWE1YjkxMjQ5Yjk2NDUzMWZiNTBmYmU4NWYgbGVnYWN5LXRydW5rCis2MTY4MCAyOTEzMTg5MjYxMWM1NWNkNDRlMTVlODc2ODZlMjQ2NzcyYTEyNzAwIHB5M2sKKzYxNjgxIDdjYTU3ZTIyYTUyMDc4OTQwZDg4ZjI3MTVkYTgzZjFjOWFiZTU0YjAgbGVnYWN5LXRydW5rCis2MTY4MiA5MWFjODA0OWU3MDkzNDIyZWI4MWFiNzE1MTg5OGIxMGQ2YzZlYmI5IHB5M2sKKzYxNjgzIGU4MzYwYjVkNWExMDc0ODQ0NGExNjI3NTY5OTJhYWRjZmEzOTRhOGMgbGVnYWN5LXRydW5rCis2MTY4NCA2OTYyMjViNWQ1NTU1OWFiMWQ3NjkyNzY1ODA3MTE2Y2I2YjgwNGI1IGxlZ2FjeS10cnVuaworNjE2ODUgZjNkODM4ZGFiNDBlZGJkNTk2OWExMGVlMGZmYTg2MGY0ZTUzYjRiNSBweTNrCis2MTY4NiAyODczM2FkYTRkMDMxZGUxODk4Nzc1ZWZlODc3YjBkM2ZlY2UwNmJjIHB5M2sKKzYxNjg3IDdjNjY2N2JiOGY4NTM0NzRlNWU3OTAxOTA1NmQ3Nzg1OWVjY2RlNGMgbGVnYWN5LXRydW5rCis2MTY4OCBhYTlkYTRhM2M5N2NlMDU2ZDdiNzNjODQ3ZjE3NmRjYzc2OWJiOGFkIGxlZ2FjeS10cnVuaworNjE2OTYgYzQ1YTQ1NjY5MDE3YjkyNTBlZmM2ZjM1YWRiNTEzNjQ1MTkwYzg4MiBsZWdhY3ktdHJ1bmsKKzYxNzAwIDhmOGIwM2MyYmJmZjAxNzJjOTY1OWNiY2FmODZjZDU0YjZkYTI4OTYgbGVnYWN5LXRydW5rCis2MTcwNCA5NDRkODdhOWJiZDBhY2RkNGQxYWY4MjNkMjdjNmY2NGNlN2FiZmIxIGxlZ2FjeS10cnVuaworNjE3MDUgOGVmMDVhY2VlZjJiNGE5ZTc0NzA2ZWExNmU4NDI1M2U0MDAyODdiNiBsZWdhY3ktdHJ1bmsKKzYxNzA3IDcwNGE4NjRlY2IwMTRjNTA3NjliNWE2NzczODdiYTQ3ZjlkNmRjYjUgbGVnYWN5LXRydW5rCis2MTcwOCBhZGI1Y2FiMzAxYTZlZTU1ZmFlODVmYWM5NDFhOGEwOWJhZjA0ZGM1IGxlZ2FjeS10cnVuaworNjE3MDkgNTQ0YTQ2ZGYwMjIyZGM5MjY5ODUzYjkzMGUwNTQ1YzE4OTVjMmNhOCBsZWdhY3ktdHJ1bmsKKzYxNzEwIGYwZTRkOWI0NWU3ZjM2M2EyYWEzMjljZGI4ZDFiYmFjODJhYjIzZWMgcHkzaworNjE3MTEgN2YwMzU1OTJkNmUxYmY1MGI0NWZkYzI3ZTEyZjg4ZjRhMWEwMzdkOSBsZWdhY3ktdHJ1bmsKKzYxNzEyIDg1ZmJkMWQyNjVhMjk1MTM5YjQwM2MxZTY5ZjMzOTVlNjI4NDVjOTYgbGVnYWN5LXRydW5rCis2MTcxMyA0NDE1MjdiZmM3OWNjNzNkMDVkMWM0Yjk1NzdmNDAzY2JlZTU0Y2JhIHJlbGVhc2UyNS1tYWludAorNjE3MTQgOTkzNTViYWE3NDhkY2Q0ZTYxNjNiNjFhZTRkMTU3YjBkNjkyYWYwNSBsZWdhY3ktdHJ1bmsKKzYxNzE1IDIyNzU2MTJjMTZhOWZjMTczOGQxYzBlNDRiODE3OGM4NDIzOTAyYjMgbGVnYWN5LXRydW5rCis2MTcxNiBiZjA3YmFkMWQ3MmY2M2ZjODkwNTNlMDg4ZjA3MzhjN2FjZDQzMjBiIGxlZ2FjeS10cnVuaworNjE3MTcgNzJkYzE2ZTgwMTc5MGUyM2YxNGIwMjA1NDZkMmZkNjI3MWQzZDBjZSBweTNrCis2MTcxOCBkNjc5M2VjZTMyNTQ0ZGU2ODMyMTYyM2FhMmU2YTkzMWExMzhhYzQzIGxlZ2FjeS10cnVuaworNjE3MTkgYTAyNTM3MTg0OTllM2I2YWE1YWQ5NDQ2YWY4ZmViNWE3ZjU0Y2JjMCBsZWdhY3ktdHJ1bmsKKzYxNzIwIDFmOGJhNWU4YTJmYTkzYmRiZTcwNDc4ZjdhMDZlZTExZTgyMDI1NGIgbGVnYWN5LXRydW5rCis2MTcyMSAyZTNmODZlNzNmYTI3NjFlNGY1Njc3YTczNGI2OWY3MWY3OTc4YjJjIGxlZ2FjeS10cnVuaworNjE3MjIgNzI4ZGMxMzMyN2IyZmI5NGNjYjkxYzNlNjgxYmIyYTgzMmExNzgwNyBsZWdhY3ktdHJ1bmsKKzYxNzI0IGU0N2MzYzdiYmRkYzdiN2JiZjc2NzQ0ZjY5MDBmZGFkOWU0YTQ2YmQgbGVnYWN5LXRydW5rCis2MTcyNSBhNzM3NmQxOTJhNmQ3OGFiMjA0NjBlZWUxNGEzOThlYjUzOGYyNzU4IGxlZ2FjeS10cnVuaworNjE3MjYgN2FhNTJlYjkwNzRmOWQyYTk5MzdkM2RkNzIwNzRmOTI3YWMzZDdhNCBweTNrCis2MTcyNyA4YzFmZjhlNTQ3Mzk3MTFhNWVlYWFmODIyMmM3NmU3ZGRmZDVhY2RmIHB5M2sKKzYxNzI4IDM3NmI1Y2I4YTAxNDM1OTlmYmMzNjJlOGUzZGM1ZDQ0NGE2ZjkwMTQgcHkzaworNjE3MjkgN2Y2YmNhNzhjMzY0ODU3ODk0NWIwNjgxMzM4NzQ2NzJhMzZjNzNmZiBweTNrCis2MTczMSBjZGViYTIwY2NkNmEwMWQ0ZWYzZDZiZWE5YzlhNDY5YTcwOTkyN2FlIGxlZ2FjeS10cnVuaworNjE3MzIgNzI2NGMwNTFhMzljYmI0NDBmMjU4MGQ0ZDg0MDM1YWNmZTI1Yjg0ZSBsZWdhY3ktdHJ1bmsKKzYxNzMzIDYxZjVjNjYzYjQ5ZDhiYWRlNDdmYjQwNjA4ZmMyMDczZDUyMDQyZTMgbGVnYWN5LXRydW5rCis2MTczNCBhOTljYTFlNTc1ZWQ5NzU4MWI0NzVkNTFiNGQ4MmQ0OWRkYzNkMDZmIGxlZ2FjeS10cnVuaworNjE3MzUgMjQwODMzMDVkMWM3MDQ2NjE1YTljNWI1ZmJhYjAwZjkxODc5ZmI5ZCBsZWdhY3ktdHJ1bmsKKzYxNzM3IDExZmJjOGFmZTMwNWZlMzM5ZWJhYjNjYzI0YTUyMzAyYmVmOTU1Y2MgbGVnYWN5LXRydW5rCis2MTczOSAwNGMyMTQ4NTY0ZTQ1OWNmZDliNDg0M2MzZjM5NTE0ZWY0ZGYxZDcwIGxlZ2FjeS10cnVuaworNjE3NDEgZWVlYjZiOTUyZDJmODllYWU0NmJkM2YyNjdjMWFiZDgyM2MyZTQ5ZCBsZWdhY3ktdHJ1bmsKKzYxNzQzIGY5Nzc4NWM3ZGU5YjYyMDFlMGNiMmY5OGY0NDEwMjMzZDVlZjYwY2UgbGVnYWN5LXRydW5rCis2MTc0NCAyMjY3Y2ExNGQ1NGJhYTY5NDBmYjNjOTYxMTg5NTAyY2ExNDM0ZGNiIGxlZ2FjeS10cnVuaworNjE3NDcgYjQ5NzU0ZWE5NGRiOTI2ZDE1N2UwMGE0ZWMyY2YwYzQyM2U4NDNkMSBweTNrCis2MTc0OCBiMGE0M2JkNWMyODE4MmJhZmMyNmEwNzU1M2UyMzJjZWE1NDIyMDA1IHRydW5rLWJ5dGVhcnJheQorNjE3NDkgNzA4MzRjMGU0OTFiZDhiZjE0ZDhiNGJjY2ExODQxOGQ4MWQzMWJhNSB0cnVuay1ieXRlYXJyYXkKKzYxNzUwIDQzNTY0M2I3ODBjNzE5YTcwMjFlYzhkNGY5OWM3YzYxMTU3NGIxMmYgdHJ1bmstYnl0ZWFycmF5Cis2MTc1MiBjNjMyZjllMWVhNWRiZDRhN2Y5MTg2MTA5NzU1MzY3MDZjOGY1NDY5IHRydW5rLWJ5dGVhcnJheQorNjE3NTMgZDRiYTViZDExNTgwYTg3NzkwYjYxMmZiOWM2MzRlYzFiOTVhNjgzNSBsZWdhY3ktdHJ1bmsKKzYxNzU0IGRmYTBhMDExYTI0MzVhNjM3MTQ0Yzk1ZmVkOTY4YjAyZmE4ZGNmNGIgdHJ1bmstYnl0ZWFycmF5Cis2MTc1NiA2NjY3MDA4ODk0ZTBkYjI2ZTFjZTkyODFlNjNhZTI0ZjJhM2Q0ZWFkIHRydW5rLWJ5dGVhcnJheQorNjE3NjAgMjQ4ZjkyN2JhNTdlYjI2M2MwZGQ2YzhjNDk5MWQzNDg3MzhjMjgyMiB0cnVuay1ieXRlYXJyYXkKKzYxNzYxIDc1MWRlNjE2ZTA4MDE3ZmMwYjE4ZDFhNmNkNTcyNjM1ZGNmMzJhZDAgbGVnYWN5LXRydW5rCis2MTc2MyAwMTIyYjQ2Y2U0ZTBiZGQ0ZjVhODQ0ZjMzYjQ1MjBmNjY0MWQ4NDBhIHRydW5rLWJ5dGVhcnJheQorNjE3NjUgZjJhYjUwZDBmYTkwOGViZTc5YTEyZWRhOGRkYjFlZjI4OTJmMTRlMyBsZWdhY3ktdHJ1bmsKKzYxNzY2IDJlNWFiMzVjY2FmMWFkZGIyM2NhNzU5MDNhOTgwNDAzNDlkNmQ2YTkgbGVnYWN5LXRydW5rCis2MTc2NyBkNmYwZTNlNTU2YTQ1MDllMzdhZGIwN2VlMmEyOWFhZDExODVlM2Y0IGxlZ2FjeS10cnVuaworNjE3NjggZTY3ZjQyMWEyMGIwYjFiZGJlYTVkM2I2MWY2YzU1M2NmYmMyYjgxNiB0cnVuay1ieXRlYXJyYXkKKzYxNzY5IDMxY2YzOGJkYWFjMGNiMDNlNzRjN2UxYjFkNWVmZDJhNjYyMzNmNDQgbGVnYWN5LXRydW5rCis2MTc3MCAxMGIwZDgxYTIxNDVkYmRlMGM0YjI0Yzg4YzMzOGRjMzU1MmU1MWJiIHB5M2sKKzYxNzcxIDk1N2NiYTc1NTMxNWI0NjUxNTI0MzJjMzQ3YzI3Y2I5NWZmMDFlN2IgcHkzaworNjE3NzIgZmIxZDM1Y2ZiOGQyZGRhODJmYjc0OTJkYTc0ODlhZTcyMGM1NjRhYyB0cnVuay1ieXRlYXJyYXkKKzYxNzczIGZhNDE4Y2RmM2JmZTlmMDQwZWVmOWJiMmJjZDNhZGFkNmNlOGVjYTkgbGVnYWN5LXRydW5rCis2MTc3NCAyOTZmOWJjNDJiOTYzZWZkMTM3OGI1NzJiZWNhOGQ5YzhlMGRhMTgyIHB5M2sKKzYxNzc1IDNmMGUzZmIyNzJhNjIxZTZkMzJlMTUyNzRlODIwMWU3NGY1NTFmNDMgdHJ1bmstYnl0ZWFycmF5Cis2MTc3NiBmNGM1MGE1MWQyNGYwYmYzMDAxMjRhZmY4ZTExZGIzZDI2M2RjZDBhIGxlZ2FjeS10cnVuaworNjE3NzcgNzIyYmVmNjgzNWI5NDRmZmEzMDE3ZjE4MDU3MGMyZmI1MjRmMzI5YSBsZWdhY3ktdHJ1bmsKKzYxNzc4IGFmOGZiNTNhNTRmZDNkNDRhMDg2Mjc4NGQ1YmFiZGRhZDMxMmZlZjkgbGVnYWN5LXRydW5rCis2MTc3OSBhOGY1NGI2YThjMTg1NWQ0NWYyNDVhMGU0ZTA4MjdjYTZjZmRmNGIxIGxlZ2FjeS10cnVuaworNjE3ODAgYzY0YzdiNzI3YzYyNThlNDM0MDk5ZWRkYjkzZGMwMGY4MTQxMGMwYSBsZWdhY3ktdHJ1bmsKKzYxNzgxIDdkYTViNjg5NzFhNWE5ZjBmZDc4ZGZkNGEzNzgwNjQxNzc4ZTRhNzQgbGVnYWN5LXRydW5rCis2MTc4MiA5NjM0YzE3ZThmZTU2MjA1MDljMWYxYzQ4MjU0YzhjZGUwNzFkMDE2IGxlZ2FjeS10cnVuaworNjE3ODMgZjFlY2IzZTk3OGRiNDlkNTdhNWE4MzJhZDY1M2ZkNmQ0NGQ1ODU4ZCBsZWdhY3ktdHJ1bmsKKzYxNzg4IDc1NjNmNGQyZjM2ZWE0NjhkYmNlMzI3MjhjZTIwNjI4M2Q1MTUwZmMgbGVnYWN5LXRydW5rCis2MTc5MyA4NzEwYmE3ZmJhMmJlYTdkNGNmYmNkYWM0ZGUxODdiN2YwNDA1NjRkIGxlZ2FjeS10cnVuaworNjE3OTYgZjFlNTE3ODU5NDdmNWI1ZjE1ZDMyZGY0M2U0MGQ2Mjc2ZWZkNDY3OSBsZWdhY3ktdHJ1bmsKKzYxODA1IDcyOTZjY2JiODU4YzJiODllZjUwZjk4NTczMjYwOTY4ZWEwZTRmOTEgdHJ1bmstYnl0ZWFycmF5Cis2MTgwNyAxZDVhMTE2MTllY2E4OGNlNzc5NDU5MjQ3M2Q4ZTNlMTgwOWU4N2QxIGxlZ2FjeS10cnVuaworNjE4MDkgZGY1YzhiOTdjYjJhMWZhMWZmNjQ1ZGZlYzY1MzNhMDFiOTgzMzE4MiB0cnVuay1ieXRlYXJyYXkKKzYxODEwIGMxZmM2ZTBhOTRiOWI3YzA0OGNmNDQwM2U0OTRlY2MzODk4ZmM0MTggbGVnYWN5LXRydW5rCis2MTgxMSBhZjFiMGY5OGRhZGY5ZDFiZGQwNjdmY2U0NWUyYTVmOThiYjU1MzE4IHB5M2sKKzYxODEyIDM5ZGM5ODVjNmZjNjA2NDQwOTZmN2U3OGY2NTRlZTNiYzU4NjBkMjAgdHJ1bmstYnl0ZWFycmF5Cis2MTgxMyA0NjdjMTZhNTAzOTJjYzBiNWY0ZTM3NDM2MzM3YWQ2YTA0ODlmZjAyIGxlZ2FjeS10cnVuaworNjE4MTggMGE0ODU1OTNhZTFjZTVkMzhlYjcwMTliNWMxODg0MWVmNmIwODA0MyBweTNrCis2MTgxOSBkMGI5MWE5MGJhY2M5NTNkNzQ0NzY2YTcwMTY3ZjEyMWI1ZmY4ZGE4IHRydW5rLWJ5dGVhcnJheQorNjE4MjAgNWU5MTY4NWQ5YzA2ODUyZGViOTc3ZmMwYWUxYWUzNDZhNzZjMjFkYyBsZWdhY3ktdHJ1bmsKKzYxODIxIGY1YjFmYTEyMTRmMGExNTRmODAxYmUyNTUxNWMwMTljMWI0OTk1ZTYgbGVnYWN5LXRydW5rCis2MTgyMiA3Y2FhYWIwNGE0ZDhkYTMyODBmMDk1ZmQwMjZjOWI0MWQ2YTI3MDJkIGxlZ2FjeS10cnVuaworNjE4MjMgNWNhOTI4NDAyZTU0MzY1Y2RkZTNiMGIzZjQxOWQwYTUxYTI3OGQyOCBsZWdhY3ktdHJ1bmsKKzYxODI1IGEzOWNmMzM1MzEyZTc3Y2I1OTJlNjNjZjUyZDQ3N2Y5NTM3NjVkYzggbGVnYWN5LXRydW5rCis2MTgyNiBiZmVlODczZWRmM2ZmNmY3YjA2ZGFhNjU4MmMwMzQxOGM5OWMyNGNlIHB5M2sKKzYxODI3IDY4MDUxZjhjNjYxOGVkYjhmZTlmMDE5ZjY5NDBlYzU4NTYzOWUwMjcgcHkzaworNjE4MjkgNGE2YjA5M2IzMTliYmZjODgwNzIxMDI2YTliZGZiOGVlYzY3NzczMyBweTNrCis2MTgzMSAzNzA4ZjA5MDZlZjVlNmYyM2MxYWQ2YTBiNmFmZmM1MmM1OTUyZjY5IHB5M2sKKzYxODMyIDVmMDRlMDJiYjQwYzVkNTZkYzk0Y2JhZTEwMzE0ZWNjOWZmYjI1OTkgcHkzaworNjE4MzMgMmNjZTkxN2Q3OTk2M2Q4ZDZiYWIwYTNlOGYxZDVmMjU1ZmYwOGJhNiBweTNrCis2MTgzNCA4YzI2MDRmZTU4ODY4YTU1ZjhjYjEyMGQzOTNhZDE2MmMzNDQxYzI0IGxlZ2FjeS10cnVuaworNjE4MzUgZGY5MDc3NGY5MmIwNjlkOTBkNzlkZTQ3MDJmNDQxZjlkOWM1ZGZiMSBweTNrCis2MTgzNiAzMGVmNTExMjgxMzI2ODUzNzNlMDFiNDk4MGJkZGZmZjllZTc5N2IxIHB5M2sKKzYxODM3IDg1OWZmNWM3YzYwYThjMGM2ZDUxNTUyZWViZmVjNzI1YWMxYTY5OTAgcHkzaworNjE4NDEgMjU0MzFmZjZjZTY5ZGY2NWNjODlhNjg2MDViMmM3YzEwNTYxNTdmZCBsZWdhY3ktdHJ1bmsKKzYxODQyIDM4ZGUwZDIwMjMzODY3ODE5OGI2ZWVmODY4NDY4MTUwMjBiNDM3NjggbGVnYWN5LXRydW5rCis2MTg0NiAyZDBlMDg5MTdhMmUzNjBmOTU5ZTE0ZTAwYmI4ZjY5MTU0ZjdjODI5IGxlZ2FjeS10cnVuaworNjE4NDcgNDYxZmY0M2U3NGQwMjJhYjk3OTMwZjEyODcwY2YyMGZiOTU2N2JlYyBsZWdhY3ktdHJ1bmsKKzYxODQ4IDQxZWU5YTQwMGFkMTE0MDI2NjQwYzA3NTBiNWI0NDgyYmIwZThlMGIgcHkzaworNjE4NDkgMDJhZTMxMTI1NmE3N2ExYTk0YjQ1ZDA3NThkYjBhNTQ1NGYzN2QwNyBsZWdhY3ktdHJ1bmsKKzYxODUwIGIyZjNlNDZlNzhhMjlhOTQzMTdjNmM0ZTNkNWYxY2EyYjY1YzI5MDcgcHkzaworNjE4NTEgYmZjZGE1NTI0OTJlNjVmNTY3YjZkMmM0MjViN2VjMjFiOGU2MWNiMCBsZWdhY3ktdHJ1bmsKKzYxODUyIGM4NmU5ZGQxNmI4ZDE0ZDVmYjljMmE3N2QwNDQ3YTBiM2E2OTQwZTcgbGVnYWN5LXRydW5rCis2MTg1MyBjOTIzMDA5MzA3NzJkNjY2OWZjZjk3OGJiNTJiYzI1MzllYzhjYTFiIGxlZ2FjeS10cnVuaworNjE4NTQgNDIyODVkNjM3NTVhYzM4ZjBjNDBiNjE3NzlhNTExMWY5NTkyNmM1OCByZWxlYXNlMjUtbWFpbnQKKzYxODYzIGYzZTY0OGZlZTRjMTlhZDViZThkNjQxMzNmODkyNmQwZDcxZTdhYzcgbGVnYWN5LXRydW5rCis2MTg2NCAwOWFkZmYzZDY2OTE1NGNmNTFjODQzOWY4NGFiNGNjMTkyNTY5MzcxIGxlZ2FjeS10cnVuaworNjE4NjcgY2U0NWZkM2E3YTNmYmU2MmRiY2JhYTk4Yzk2OTlmNDgxNzQxZDY2NCBsZWdhY3ktdHJ1bmsKKzYxODY4IGRlODNlZGNmZWIzZDMwOTA1Y2Q4MGIxNmJmZjIyMDNjMDFmNTA3MjMgcHkzaworNjE4NjkgZGU1NDQ5NWE0MTRhN2I5Mzc0YzgzNzBmNjYzNjIwOTA5YWI1NzExYiBsZWdhY3ktdHJ1bmsKKzYxODcwIDJiZmY1YTcyOTAzNjlkYjU1YThlMTc1NzY0MjM4OGFhZTcyYWVjYWEgbGVnYWN5LXRydW5rCis2MTg3MSA5NThjZjBjMjdkYTkzOTM2NzFlYTBlNzAyYjQyMjM1M2U1MmNmOGM1IGxlZ2FjeS10cnVuaworNjE4NzIgMzhhMGE3MzdjY2Q0MjUzMjg2YjI5ZGNkMWU3NjI0NjdjZDBjN2JkOCBweTNrCis2MTg3MyAxNDdmMzVmNmU2ZTU4NmFmMzk3MTZjYjU4ZjI3M2RlYjlkOTc3MTMzIHB5M2sKKzYxODc0IDRmOWNhODI3YTdkODdlOTdjZGU0OWZjOGE3ZDFlN2YxOThjZTkyYTggbGVnYWN5LXRydW5rCis2MTg3NSAwZGQ0NDFjYThlYjBjMzljN2UzY2Y3NTRlNjFmMTYwOGExNjYzYTRhIGxlZ2FjeS10cnVuaworNjE4NzYgYWJiZDgxZjJjYzY4ZTZiMTc5N2QzMGRlNDI3ODE1ODQ1MTJmYzBhZSBweTNrCis2MTg3NyAwNDFlOGQ3Y2M2ODQwOTMwY2RlYjQwOGIyNTE3YTFhYjYxMmQzN2QxIHB5M2sKKzYxODc4IDliM2YwZmE1ZDhjYTA3NjAyNDBkMDJlNTMxYmYzN2NmMTM4Njg0YWMgbGVnYWN5LXRydW5rCis2MTg3OSA4NGJiNzcwMWVmYmFkODIyYTA0MjU4MjQwZGY4ZDhlYTczNjhkYzI0IGxlZ2FjeS10cnVuaworNjE4ODAgMmExZjQ4MDFkNDk0ZmNhNDVkMDA3NTkyZTdlMjcxYWQyMTY5OGZlZiBsZWdhY3ktdHJ1bmsKKzYxODgxIGFlNjU5ZmYwNTI4YmMxN2I2MWYxYWRhYjE0MGIyOWY1MTViMzdjMGQgbGVnYWN5LXRydW5rCis2MTg4MiA0N2MyZmZjMzhkMWQxMDNjZWI0ZTVkNzgyNzA1M2Q0MmRhNGVmYmU0IGxlZ2FjeS10cnVuaworNjE4ODMgMWEyYzk2NDVmNzFkZjNjMDZiN2ZjZTgxMzlmNzMzMzhkYzM5NTdlMyBweTNrCis2MTg4OSAyYTg2NmVhNjY1MDliNjM3OGQzYTZlODFhZWNlZTJhYTk3MjkwMzdhIGxlZ2FjeS10cnVuaworNjE4OTEgYTdjYmZjYmFhNmIwNjE1NjdhNTk2MThiOTc2OWUxYzBkNDE5NjM1MiBweTNrCis2MTg5MiAyMmJkMDIyOTNlZmE1ZDVkNDA1MTFiMzFmMjIxMmQxZWVlNjhlY2VhIGxlZ2FjeS10cnVuaworNjE4OTMgMGI2Mzk5OTE1OGIwNzI2NGM4ZWQ3ZTk5MmJhMjczOGRhZjFlNWQ4MyByZWxlYXNlMjUtbWFpbnQKKzYxODk0IDZiZWEyZjEzNTFiMWY1ZjNhNGQ3ZDVjNjM5NjI5MzJiNTEwYmFiNDQgcHkzaworNjE4OTYgMjU2ZjkzOTRkOTNkYjVmMzIyZmRmZjQzOTg2MjRiYzNmMmZkNjRmMyBweTNrCis2MTkwMCA3MmNjNDAwZDgwNTM2ZDFlMTU0NTZlZjVlMzU3NDAzOTVlNjZkMTUzIGxlZ2FjeS10cnVuaworNjE5MDQgZTgxY2FjNzNkYWYyZjA4MTQ5OWJhOGMwZTc4Yjk3ZDlkNTQwNzkzNCBsZWdhY3ktdHJ1bmsKKzYxOTA1IDdkM2E2ZGM0NzFjZDkxMjM3ZmQwM2YxZmNiYmEyY2IzYTA0MTcyYTUgcHkzaworNjE5MDYgMTg5OWUwOGZhNDIxMTY0ZjRjZjI1MmYyY2UwZDQ1NWUxMzNmOWM4OCByZWxlYXNlMjUtbWFpbnQKKzYxOTEzIDVkZjcyYjk4ODdmYTY4OWU5OTQ5ZDM0MjYxNDczNjk2OWJkOTM4N2MgbGVnYWN5LXRydW5rCis2MTkxNCA0NmY4OWY0ODBiZDRjNTBjZDIwMTNkN2QwMGYxY2FkOWYyODU0MDBhIHB5M2sKKzYxOTE1IDYyMmQzYjExNjhhYTI5NGQyNTg4OTI4YjliOGUwMmMwMDllYTJlNDYgbGVnYWN5LXRydW5rCis2MTkxNiBmOTRhYzhmOWNmOTZkNGVmYzQ0MDFkYzBhZTVmNmQyY2VjNTM5ZTAxIGxlZ2FjeS10cnVuaworNjE5MTcgNjc5MDk1MDhlMDQxNWE0MGUwNTgwYTBlNThhNGM2YjFkZjYyMmI4ZiB0cnVuay1ieXRlYXJyYXkKKzYxOTE4IGI1MWU0YjUwZWQzMGVjMjhkNWZhNjlhODE2N2ZjOTE3YzM2NWVmYTMgbGVnYWN5LXRydW5rCis2MTkxOSAxNTExODU2NmY5ODcyN2JjMmFhZDAxZDhiNDY0ZjEyNDgyYWI2Njc4IGxlZ2FjeS10cnVuaworNjE5MjAgMTVkYTA5OGIzY2Q4NWMxNDdiNzc3ODgyZmJjN2IwOGQwYjM1YjYzMSB0cnVuay1ieXRlYXJyYXkKKzYxOTIxIDRlYTZmMTJiYmU4YzY5YmU2N2M0YjM5YWJiYWNmYjI2N2IzNTNkNjkgcHkzaworNjE5MjIgNTRiOTBkN2VkZGI3ODFhMGE1Y2E4ZGZjYzcxYzhkZTQzNTlmNTgwZCBsZWdhY3ktdHJ1bmsKKzYxOTIzIDI5NmMyMThmMzVjZjZjMzcyYWQ2ZmUxM2I2NzU5NTVhZTEyN2RmOGEgbGVnYWN5LXRydW5rCis2MTkyNCA4ZjZjY2QwNzVhMjRkODM2NjhhNGQzNzRlODZiOGRlMTViNzNjMDExIGxlZ2FjeS10cnVuaworNjE5MjUgN2RhODkxODEwMmZlZTE1NGMxOGUwZWNiNTBkYTViZmZhNDM1ZjE1MSBsZWdhY3ktdHJ1bmsKKzYxOTI2IGNkZGIyOTdjMjQ2NTNiNjg2Y2I0MzE0ODZkYzczMTg0ZmFiOTRjMmMgbGVnYWN5LXRydW5rCis2MTkyNyA4NWFjYzQwODExYjNkNjQ0Y2Y1MmUyNTYwOTMxOTI5ZDM5YmY1ZGU1IHB5M2sKKzYxOTI4IDFhYjVjYzI1MzQxYWQxODE3YzhmZmFhZTI5ZGY0YTM4ZGIzM2YzYTEgbGVnYWN5LXRydW5rCis2MTkyOSAxZGQwMDAxNmE2OWNlZDhlYjczZDM2NmY4ZWE1ZGJkYzAzMGE0MDE0IGxlZ2FjeS10cnVuaworNjE5MzAgZDU3ODRmYzE5ZTdhYzcwNjliMjg3ZjI5ZThlNzE5ZmQzM2NhMDkxMiB0cnVuay1ieXRlYXJyYXkKKzYxOTMxIDZlYTQxZDUyMzllMDdlNmVmNjU1OWUxOGZiOTgyNjM1ODRhODY5OGYgbGVnYWN5LXRydW5rCis2MTkzMyAxYzdmYTRhY2VjYjNhZDI1NjdhMGQ3NzQ0NDA4YzZmNDNlZGIxZDllIHRydW5rLWJ5dGVhcnJheQorNjE5MzQgOWZjY2NkNThkNjVkYmY5MzY3NzI3ODIwNzExYjE3YWMyYjMxZDBkNyB0cnVuay1ieXRlYXJyYXkKKzYxOTM1IDIwZmM0MWMxN2NjN2M2MDdmOWU5ZjM3NGYxODYyMWFhYzAyNTE3Y2MgbGVnYWN5LXRydW5rCis2MTkzNiA1MzQxYjMwYjE4MTI1YmYxOTI1YzBkNDRmMGM0NzIzODk4YjUxMjhhIGxlZ2FjeS10cnVuaworNjE5MzcgY2MwZDE5NzdmODIwYzc5ODIwZTZkNjQ4NmU3ODRiMWNjNDc4YTVlMSBsZWdhY3ktdHJ1bmsKKzYxOTM4IDJlN2ZmMzhlMGExODNlYTg4YzRlMmE1Yzk4NWUyMThkM2NhODIxNWIgbGVnYWN5LXRydW5rCis2MTk0MCBjY2VlYTk4Y2NmMzVmNzc0ZTgyZTQ1OWE0MzA0OTYxZmI0YTE0ZjMwIGxlZ2FjeS10cnVuaworNjE5NDEgMmJjYmQzODgyZWVlZDZjZjcwODVhYTMzYWQ4ZTIzMmQ0NjU1NjczOCBweTNrCis2MTk0MiA0ZDE5ODkyMDQwNjIwYTQ3NDE4YWYwN2E5YjRjZjU3OWQ3YWRlMTU2IHB5M2sKKzYxOTQzIDhkNmZkZTE2ZTQ5M2NiMjRjNzVkMTUyZDM4MmQwMTMwZjRiNGQ4MTYgbGVnYWN5LXRydW5rCis2MTk0NCA2NGJkOTZmZjk0ZjE0OTQxODMxMzRiMjY4ZDU2ZTI3OWNiYmY3YjUyIHB5M2sKKzYxOTQ4IDFiNmMwZmYxMzRmYTRhMWQ4YTdhOGYzYzAwN2E2Zjk4NDk3NDU3OTYgcHkzaworNjE5NTEgOTk1Yzk5NjBmN2ZmMzgzNGE5MWQ2YzNmZjE3NTRlOTBiODdjNGMzOCBweTNrCis2MTk1MiBkY2U5ZDJkOTJjODgxNDcyYTA3YzI4ZGIwNWNjMWVmYzM2OGNlZmQ1IGxlZ2FjeS10cnVuaworNjE5NTMgYzc4ZDM1ODZjNDc0ZjY2NDA2OTUzOTdiYzJkN2NhNWNmODgyNjhlZSBsZWdhY3ktdHJ1bmsKKzYxOTU0IGRhYTZhY2VhYmRmYzU4NDkwZjhhOGRhMjI2ZTk0MTk0MjcwM2U2MGQgbGVnYWN5LXRydW5rCis2MTk1NSA3ODUwNGQ2MDRiNDQ4YzhiNWNkOGRlNTFhMjgwNmYxNWU4ZTg0YTc2IHB5M2sKKzYxOTU2IGQwMGRlZDhiMjY3NzFkNDhjMDg5ODNmYjI2OTRlNzU2YzMxNTRkZjYgbGVnYWN5LXRydW5rCis2MTk1NyBhOTM1YzUwY2I1MWFhNDVlZWIxZTQyN2IzNDgwNTFhZWU0ZDIyN2UxIGxlZ2FjeS10cnVuaworNjE5NTggMjQ4Njc2OTg4YzU0OGZjY2NmOWIwNTU5ZjJhYjc2MjQ2Y2M0MTQzNyBsZWdhY3ktdHJ1bmsKKzYxOTU5IDM4ZmU2NGUzYjEzMTczYWZjOTMzOWVhZTQzYmRjZjM3ODc0YWY2OTggbGVnYWN5LXRydW5rCis2MTk2MCAzNmQ4MjhkMjdjMzY0MDkxMWU4NmNkNmE2ZmFlMjAyODQ5MjVmNzg3IHB5M2sKKzYxOTYxIGIwNmExNWVmZGM2ZDFmNDJjZjg2OTJhODhlZjk4N2I1NTA4MWZkZWYgcHkzaworNjE5NjIgYWUyODMxNTQyNTU4MTY3ZTg0M2RhNzI2N2Y4YTI2ODQ3YTU1NzVlZCBweTNrLWltcG9ydGxpYgorNjE5NjMgNWMyNzFlZjZjYjMyNjM4M2FmNzA0YzUwZmQ5NGQ4ZTkzNjIyNGFmZCBweTNrLWltcG9ydGxpYgorNjE5NjQgYjQ1ZTdiNTdhMGQ4MmFhZDU4ZGU3OWNiODE1ZmE5NzI0NmI5NzhmYiBsZWdhY3ktdHJ1bmsKKzYxOTY1IGVmNDBlYzMyYzVlNGQ3NzM5YjJhMjUwNWQ3MDI0ZDUyOGJiMGMyMWUgbGVnYWN5LXRydW5rCis2MTk2NiA4NDc5M2JmNWE0YmZjMGQyNjA5Y2M4YTBmMjNjMTY1OWZjM2U1YzJhIGxlZ2FjeS10cnVuaworNjE5NjcgNjE5MmQ1YjEyYjZhZTE3YjUzYTJkYWY4YzZhMzlhNjc2OTljNTFiNiBsZWdhY3ktdHJ1bmsKKzYxOTY4IGQ3NDBjNzFmMDJmZjI3YWI5ZDk1MThkODMzMmM2ODBlYmNlMTcxMzcgbGVnYWN5LXRydW5rCis2MTk2OSA1MDc4YjdlZTE2ZGMxNzFkNjk3YmEzMTUzOThhNGQwNWMxZWM5MmFkIGxlZ2FjeS10cnVuaworNjE5NzAgYjM1MDk2MGFkZTZkNjY5Njc3M2I3MWZlMDM5NmI2ZjYzNzc3NWI1YyBsZWdhY3ktdHJ1bmsKKzYxOTcxIDMxM2YzODFmYzBhNzE3MGNjMWU4MWE5NzRhNzdhYzA2ZDQ1MWNlN2QgbGVnYWN5LXRydW5rCis2MTk3MiA2ZjEzMWQyYzM2MjgyMDliZWZmZDU4OTVjZGQ1MjMzMTUzOWNkZmFhIGxlZ2FjeS10cnVuaworNjE5NzMgZWFjNDFmOTAyOTZjNjljNmQwN2QyOWYxZmViNDUzYTRjMGU0MDBkMSBsZWdhY3ktdHJ1bmsKKzYxOTc0IDYyMTM4YTBmNDIzMjZiYjAzNDBiZWU3MGZkNDdiMTExNGYyYjMxOTQgbGVnYWN5LXRydW5rCis2MTk3NSBhMGVhM2EwZWZjNzEwOTM0YWQ2NmUzOTA3MjExMjMwZmYyMjdkNmExIGxlZ2FjeS10cnVuaworNjE5NzYgZjFhZWM3ZGVjMDVjYTIxZWI4MzY3NDA2ZGVjOThlYjA2Y2ZhNmZkOCBsZWdhY3ktdHJ1bmsKKzYxOTc3IGUzOWY2OWJmNTYxMGVhZDM5ODUxNzc0NDU5MDlhN2JhZjk0ZjhhMWYgbGVnYWN5LXRydW5rCis2MTk3OCA1NjQ0MmRiNjBhMzYyYmZiNjJlOTA0NjNmNmRhMzE0OTM2YjJkZDllIGxlZ2FjeS10cnVuaworNjE5NzkgMzFiYTNmYTE1ODViMDlkYjBjODAyNzdkZTIxODBlYWNjMTYwNDhkMyBsZWdhY3ktdHJ1bmsKKzYxOTgwIGNiNTYzMzBkN2FkYzhjZDEwMzliZTQwNGVlY2ZmOTFiNTViYTJhN2UgcmVsZWFzZTI1LW1haW50Cis2MTk4MSA2YTY2ZDMyNjdkMGNkNGRjYTYzZjU2MWYxNmI2NzBhNjU5Mzk2NTYyIGxlZ2FjeS10cnVuaworNjE5ODIgZGE1NTk3YTVjMTk1ODJhOGUzN2Q1NDA1OGY0MTc1YjVmYWQxODcyYSBweTNrCis2MTk4NCAxMGEzOWE2NjJlNjljYTRkZGZmYzJiYmZlYjdiNTA4MDFhZDQ5ZmI1IGxlZ2FjeS10cnVuaworNjE5ODUgMThlMTlhYzk4ZDM0YzAxOTMzMTI5ZGM3YmE3NjE0YjQxOTYyMjBjMyBsZWdhY3ktdHJ1bmsKKzYxOTg2IDU5ZDA4MjU5MWY1NjgwNDFhMGM2M2Y0YTRlOWMyZGFmNmUyYzk0MjggbGVnYWN5LXRydW5rCis2MTk4NyA3ZmRmZjAyZTZmNDVlYTk4NDUxYTdiOWJiMzA3MDE4ZThkODYzNTdhIGxlZ2FjeS10cnVuaworNjE5ODggNGJmNjFmY2NjNGU2ODgyNDc3ZmNmM2E5NGY1OTQ1YWI5NzUyNmJmNyBsZWdhY3ktdHJ1bmsKKzYxOTg5IDZlN2IyODA4YjlhNjllNzdhOWI1YWYxYzhlZGIyYzJhYjE3YTAzNWEgbGVnYWN5LXRydW5rCis2MTk5MCAxZDUwNzQ3ZTUzZDM2OGIwZDgxZGE5MjA2ZjBmZDIzOWNhNmMwODg5IGxlZ2FjeS10cnVuaworNjE5OTEgNzIzMjI1OWEwNTI5ZTY5NjAyOWYzNDU4NDJhNDZlYzFkMWI5ZjA4NyBweTNrCis2MTk5MiAxZTEwYjMwZjc0OThjM2Q3MmRiOWRlM2EzY2JlNzYxMDk2NmI2ZDZiIGxlZ2FjeS10cnVuaworNjE5OTMgMzEwM2VhM2RmNDlkOTRjN2U3MWM1YTAxYmE3ZDZmNmRiZGRjNDkwMiBsZWdhY3ktdHJ1bmsKKzYxOTk3IGJiZmNiYWZlYWU4NDNkMDBhOTRiMWFkM2IzMGJmYzk0MjgxYmY1MWMgbGVnYWN5LXRydW5rCis2MTk5OCA2NGYyZWI0MTcwZjE5NjBhMjk1NjgwZjdmZTFlODM1NmI2MWFiYTYwIGxlZ2FjeS10cnVuaworNjE5OTkgNjlkMDA5MDc0MDg4M2ViOGQzZjJiNWVmOTg4Mjg2MGQ2YWQyYTI0YiBsZWdhY3ktdHJ1bmsKKzYyMDAwIGY5YTYyOWY0MTY1NmRhNzIwYTU0ZmRmYWZiMzM0ZjM5YmFmNDRkZGYgbGVnYWN5LXRydW5rCis2MjAwMiAyMzY1YzQ3ZmU2NGRkYzM0ZWYwY2NhNjNiNTdjYWZjMDQ4NTdlMGIxIHB5M2sKKzYyMDAzIDg0ODE2MGQxMDc4MDYxY2NiYjVkNjdjZTcyYjIyNDVlMzY5ZTU1MmQgcHkzaworNjIwMDQgY2EzOGY3YTRiNGM5NTk2OGI4NGEyNzQxZjQxYWUzMmFjMjQwM2JjNiBsZWdhY3ktdHJ1bmsKKzYyMDA1IGE0M2JlMDc0MzI0ZDJmM2YxYmU5OWY2ZTRkZDUyYzZkZjgwZTMxODUgbGVnYWN5LXRydW5rCis2MjAwNiAwOWZhOGNiMmJmZThmNGYyYWE3NTAwMTQzMWJlNTM2N2JiYTcwN2VjIGxlZ2FjeS10cnVuaworNjIwMDcgYWFjZjhiZTUxZjkwMzA3ODc3MDliYzVjZDQ0YWVjYWRmZTM4YTcwMyBsZWdhY3ktdHJ1bmsKKzYyMDExIGEyMTg1NGU1MTBiNDdiY2NjZWRlMmRlZmE4NzNkN2IwMjRmMTAyZDkgbGVnYWN5LXRydW5rCis2MjAxMiA2NTRhZDc0YWRlMTMxMjAxNmQ3ZjViZWU1NzU0NjRkOTg1MWEzYWJhIGxlZ2FjeS10cnVuaworNjIwMTMgMWI1YjZhYmIxZjJlZGU5YjE0NWFhODQ2MjdiYWJjZmYwOTQwY2Y3YyBsZWdhY3ktdHJ1bmsKKzYyMDE0IGMzZTY3NGNiZDcyZTlkOWFiNDUxN2Y5MDY3NmIwMGQ2OTc4OGY1MjUgbGVnYWN5LXRydW5rCis2MjAxNSAzYjk5NGY3NGIxMDA0ODIxM2VmZDI4YjdlNTVhYTgwOTk0NWU2ZjcyIGxlZ2FjeS10cnVuaworNjIwMTYgYzc3Y2MyM2UzOTRmMTQ0ODE2MTJjMDkxNGRmNGU4ZDI1MDYwNjUzNSByZWxlYXNlMjUtbWFpbnQKKzYyMDE4IDk3MzRhNDJjZmExNWUwMTVlY2RkYjlmM2VkM2IyYjkxNGYyNWRiYTEgbGVnYWN5LXRydW5rCis2MjAxOSBjNGVkNjY0YTFkYTFjMGIwMWIwOWE5NmVmM2VlYTZlMzVjMjExOTRjIGxlZ2FjeS10cnVuaworNjIwMjAgM2VhM2U1MWQxZWUzZmE4ZjY3YmM0NzNiMjU0ODU0ZDI3ODZhZTlmMiBsZWdhY3ktdHJ1bmsKKzYyMDIxIGVmZWY0ZTNmZWQxN2RhY2YyZjNiYzdjNDAyNzg0NWRmN2RkNWU0NWIgbGVnYWN5LXRydW5rCis2MjAyMiA4NzJhYmVkN2QwNjk0ZDg5YjRmZDU0OTcyOWE3NmYzZmQ4YjJhNTA4IHB5M2sKKzYyMDIzIDdjZTFhOGZkOGE3MWNhOTdlNmMyNmQ4ZmNlZWVlZTExYTBhZDExNWYgbGVnYWN5LXRydW5rCis2MjAyNCBlMDZlMDhlOGZkY2VkZWM2YmFkYTNiMWRhMjg3NmE5ZjhjYzBhMDcyIHB5M2sKKzYyMDI1IGQxZTFiNzQwZjY4NDM4OWMxZWViMmE4NjMzYmEyYTU2ZDkyNjA4MmYgbGVnYWN5LXRydW5rCis2MjAyNiAwZWE1YzA1NWFiNTRmNDZiNmYzZGMyOWMzOTI1ZmI4NGM4MjJmOTViIGxlZ2FjeS10cnVuaworNjIwMjcgMDkwNTNhN2MxY2RmZDgxOGYwOTJmNmE4YzRjNzA0Nzg0NDAzZWFjMCBweTNrCis2MjAyOCBmZTUzZDFhMzZlZjYzYjk0ZDFlNTk1ZmJmNGU1ZmRmMzUzMDYwMjJlIGxlZ2FjeS10cnVuaworNjIwMjkgYzQ0MGE1NzM3MTQ5YTcxMmRiOWJkNDVhYmQ4NDZmNTc2N2VjMzZkMyBsZWdhY3ktdHJ1bmsKKzYyMDMwIDZiM2FjODllMGRkNDkyNDlhMTA4ZDlkYzVmODVmODU1YzA5OTM4NGIgbGVnYWN5LXRydW5rCis2MjAzMSA5NThjZjdlY2NhZTI0OTYyZDc5NTBiYWIyMjc1NjViOTM5YmI1MjAwIHJlbGVhc2UyNS1tYWludAorNjIwMzIgMGE0ZGEzOTdlMWRiNDdiMDg2Y2ZkYjAwZGRiZjg5YjNhZWE0MzUzNyBweTNrCis2MjAzMyBmMTg0MzMzN2E2NmMxNWU1MzNjNjAyMGU5MGJiN2FlZTZmZTQ0NmZkIHB5M2sKKzYyMDM0IDQ2MzQ4ZGU2M2Y2MWEwZWJhN2ExZjM0YzRkM2E0YTVlOGVkOTk3MGIgcHkzaworNjIwMzUgNTExMGNmMGU1ZjhmZWFmMjQxY2I5MGRmZjJmZjc1MDAwNWU0ZGVjNyBsZWdhY3ktdHJ1bmsKKzYyMDM2IDE2NzM2ZWI0MDE1MGFhN2Q3ODg0MDc4ZmJiMTA2NzViMmFiY2Y3ZDQgbGVnYWN5LXRydW5rCis2MjAzNyAyM2U0MjU3NzIyNmE3Zjg1ZmI4YWIyNzIxZmZkNzgzNDgwODljNWFlIGxlZ2FjeS10cnVuaworNjIwMzggNmUwMmZmMGJkNmY4OTQ0YjcxMjI5YWIxNzEwODIwODk4N2YwMmFlZiBsZWdhY3ktdHJ1bmsKKzYyMDM5IGIwYmYwNmQ0OTY0N2RkMjVkMWMzZDM2NmM4NDFhNDYyOTA4Zjg3NjMgbGVnYWN5LXRydW5rCis2MjA0MCA0YzY3OGU5YzdhMzA1MGMyNDEyYjM2MTc0YTEwMDVhN2MzZmQzYmI4IGxlZ2FjeS10cnVuaworNjIwNDEgNTFlZmYyZmQ5NTI3MTM2NmNlODc4MWQxN2YyYTBjZDYwZWIwMDAyZSBweTNrCis2MjA0MiAwYzIxZjliNGE4MzFhNDYxNmE4NmQyNjJhZWFiNjdlZjYxZWZjYzMwIGxlZ2FjeS10cnVuaworNjIwNDMgMDFhN2U2NjUyNWMyNjI0Y2M3YzI4MWQzMzZhMzgzMjkwZWYwZTIwMSBsZWdhY3ktdHJ1bmsKKzYyMDQ0IGU0NDg2YzM0M2Y3ZmE2OGQ5YTA3MWIwMTc5ZDY3NWE1MWUxZDhkOWMgbGVnYWN5LXRydW5rCis2MjA0NSBlZDg4ZjRkZTQ5NmYxOTgwNmIzNjZhNzBlZjI5ZDc3MmJjYTE2Y2RmIHB5M2sKKzYyMDQ3IDJmZjg4YWU5ODUwYzUyZTVjZTdhZDljNWExMmVlMTUzYTYyMTRjODEgbGVnYWN5LXRydW5rCis2MjA0OCBlMzcwZDljZDE0OWVhMjYwNGJiNzhmNTFhMTcxNTU2MTllNTQ1Y2VlIGxlZ2FjeS10cnVuaworNjIwNDkgNDJjNWQyODdhODUyZTZmMjg5ODhjZDZiMjU5MzIzZGFjMDA3N2FlYiBsZWdhY3ktdHJ1bmsKKzYyMDUwIGYwNTFlN2E4MGFjYzc2YjQwMjllZTU4NjYyMTQ5NTgxZjJiMDZlMTkgbGVnYWN5LXRydW5rCis2MjA1MSAyOWVhNTA3ZmQ5OTgyMjMzNzQzODc0MTAyMTY4MmYwMzFjODIzMGMzIGxlZ2FjeS10cnVuaworNjIwNTIgYzExMjIxOTA2MTcxMWE0NTAxZTg3NmUwZDA2ZTczZTcxMWU5ODAwZiBsZWdhY3ktdHJ1bmsKKzYyMDUzIDA3Zjc1ZDU1MTliNDdiNGMwYjE3NWQzYzNmMjVhYWZiZTFiNjg5OTIgbGVnYWN5LXRydW5rCis2MjA1NCA1OWQ0MmU2ZDE4ODUzYmEwZmFkOThmOWJmZmU1MTU0MDQ4ZDVhYzJhIGxlZ2FjeS10cnVuaworNjIwNTUgZWE3NWIxMmZlOGU3NmY5YmZlODMxM2Y2ODYwNGM4ZDAxNGYzMjhiYyBweTNrCis2MjA1NiA5ODI3NmJlNjQ1NzlmYzNjMGM2MTMxZmYyZTJmMTUxZTU3MDU3ODNkIHB5M2sKKzYyMDU3IDFjOTcyMzJkOTNmZjNlOWFlMjBlNGExNjE4NWM0YWIzYTA2MWM0ODUgcHkzaworNjIwNTggZTg5OThlODBlYWYyYmY4YjU5OTAxODU4NDc4Y2NmN2NmNmY5NWJkZSBweTNrCis2MjA1OSBiZTE4ZGY2MzQ0MDU4NTkzOTU2MDUwYzg3ODc3YTVmODY3M2EzMTE0IGxlZ2FjeS10cnVuaworNjIwNjAgMzJlYTc2NTRmZjljNGVmMzVmZDNjOThjN2EwMmQ4MDcyYTQxNmVhNiBweTNrCis2MjA2MSA0YzdiYjQwOWRhZDZkMDBkOTBkNmRhYzQzZjgzNDk3MjJkNWQxMDU2IHB5M2sKKzYyMDYyIGE3ZmI0ZDg3Y2JkZTM5N2RhNGZlZjM1ZjZmNzhlOTkwYmQ2ZTI5ZWMgcHkzaworNjIwNjMgMmJjMWQ1YWE3MjllZTQ5NmM2ZTkyZmZjODBlZTQ0ZTRjOTJiNDk2NiBweTNrCis2MjA2NCA2MDQyOTE0ZTgyODY3N2NiMjllNmRhOTJmMzhhNWVlZDg4YjBiMWJhIHB5M2sKKzYyMDY1IGM1YjE0OWFkMzAwZjhjMDhjMWVjMzhlYjMyYTkxYjA2MjQ3NDdjMWMgcHkzaworNjIwNjYgNTdiYmFjNTMxOTE5ODI5YjMzZmRmZDNkMzE4NmNlNTRiODcwNGFkOCBweTNrCis2MjA2NyA2MDBmMmZmOGFhOWU5MTcwY2M2MDk3YjU3MzUxNmU2OTM2ZjNmMWNhIGxlZ2FjeS10cnVuaworNjIwNjggZmZiZTZjNzkwNTIzY2QyODhmMTg5MWY5MTcxZTJkZWEwNjU5YjM3MSBweTNrCis2MjA2OSBhZWQ2OThjODY0N2I5OTE0ZjAxNTdiYTdhM2ExOTI5MTEyY2U4MTc5IHB5M2sKKzYyMDcwIGYwZmE2MDViMmE3OGE2MDhiN2Y3MzI5MmVkY2FlM2RhMzczYjMxM2IgcHkzaworNjIwNzEgMzhmOGRmZWNlOThlNWJkODNhNzNjNmJmZDA3NTMyMzYzMjkxOWI5OCBweTNrCis2MjA3MiA4NjQ1NzRhOWNkMjZlYTZkNWY1NmE5N2VjOGU0Yjk5MDk4MDk3NjU3IHB5M2sKKzYyMDczIGU5MDMyZjVkZDUzOWIzYTY0OTI2MTY3MTVjYjJlOTQwMzFlMDdlOTAgcHkzaworNjIwNzQgYjJkOTNhOTYwYjk4OTBmNmQ4MzE2MzVlODhjOWZiM2FmZjc4YjkwNiBweTNrCis2MjA3NSBlM2RjODY3YjYxODJlZTEyOGMyNWIwMDE1ZWYwODJmYWEyYTViYzA0IGxlZ2FjeS10cnVuaworNjIwNzYgMDdiMzZkMmI3NTM0YzVjOGJiNDk2YTcyYTkxZjgwY2MxMWZjYzM3MiBweTNrCis2MjA3NyBlNDc0ODE3NjRlNTczMDg0ODhhMTllMWNiMzkyMzQxYzFkNjQxOTQzIHB5M2sKKzYyMDc4IDgxZWUyNzBhNmViNTRmMDAzNzIwMDcxMzdiZmZjNDgyZGYzNTMzMjcgcHkzaworNjIwODAgYzNlZTBmMGZiZWUxY2VmNjI0YjIwNGNiOGIzZWFlZmY2ZTQ5YTJhZiBsZWdhY3ktdHJ1bmsKKzYyMDgxIDYxYzkyOTIzY2Y3ZmNlYjNlOTJmMGY1YmM3NzNiN2I5ODg0ZWQ5YTMgcHkzaworNjIwODIgNDE1MTU2ZDRjYmQyMGM4YzYyZWE5MTg3NDg5MTZlMTBjYTE2NzNlMSBweTNrCis2MjA4NCBjNzAxNWUzNTdhMmM5NzljNDI0MmI2ZjIyNThkMDA4NTg2Mzc0OGRmIGxlZ2FjeS10cnVuaworNjIwODUgMTc4ODFmOTZlYTAxZTMwNDBmMWE2ZjkyYjMzYTRkMjAwOTZmM2FlYyBsZWdhY3ktdHJ1bmsKKzYyMDg2IDZkZWNmZTM4YTgwOTE5OWYxMjU4ODUwMjE4ODQ4YzA2OWM5NWQwZGMgcHkzaworNjIwODcgZDg2YjMzM2M3MmU3NDFiOWM2YTIwNzdiMGI2Zjg4Y2ZmNjA4ZGE5YiBweTNrCis2MjA4OCAzMGRkNjA2OTg2NzFmMWI4NjY2NTVkOGM3ZjgwMThhY2YyMjYwMjU5IHB5M2sKKzYyMDg5IDVhMTdkMTU3ZGYwMDE2NDdiNjIzMjRkODk5ODUyMmM3N2U0MGI1NWQgcHkzaworNjIwOTAgN2RmZjVlNDFmYTdhZTFiYjAyNzQ1N2ZjMDFiZTgwMGZmMWE0MDU1ZiBsZWdhY3ktdHJ1bmsKKzYyMDkxIDRjNTA2NWRkYjliZDYzODgzMzAwMmYyMzhmZTY0NTM2NDI3MmY4ZTggbGVnYWN5LXRydW5rCis2MjA5MyBhYjRmOGM0NmMzZDliNmRjNjk2NmE5ODM1MDllYTU4NzZiY2JkODg2IHB5M2sKKzYyMDk1IDQ3NzllMzQ5NmFlMWFmYmJmYjgxMmViNmU1NTIzMmRlYjM2MTI0YzUgbGVnYWN5LXRydW5rCis2MjA5NiAwNzMwZjNkNTBjZGNhMWIxNmQzZGQyYWZlNDhjYzU4YWM1ZTE4ZjcwIGxlZ2FjeS10cnVuaworNjIwOTcgMWM3OGQ4ZTg3NjUzYTVkZmIyNzkxODE1YTNjYjc1Y2Y2MDM1NjcxZCBsZWdhY3ktdHJ1bmsKKzYyMDk4IDBiMzc0NzcyNTRmNjQxODA4Mjc2ODdlMjRkY2QyZDM5ZWJiMjM4OTEgcmVsZWFzZTI1LW1haW50Cis2MjA5OSA1OTM5OTAwZDk4ZDIxNDk5MThhMWNmNGY5YjQxYWU4Nzc2ZDBkODE4IGxlZ2FjeS10cnVuaworNjIxMDAgZDZlMTMzM2U2MDc1Y2Y0MWNmMmQxY2I3NTY2ZGY5ZWI2NzA4YTdiMCBsZWdhY3ktdHJ1bmsKKzYyMTAxIGM3YzI1MjA0ODU1NTM3NjhlNDk5YTgzZmZkZmFjNDI2OTkzYjA3NWEgcHkzaworNjIxMDIgZjc1MzkxOGFiZTY1MjgzOGIxYjEzZjI4MzUxOGZhMWM3NjM5ODEyYyBsZWdhY3ktdHJ1bmsKKzYyMTAzIDBiMmE0YTEyNDVhM2M5NjY3MTY3NmFlY2U4NzYyNDM5NGQ2ODE0YWIgbGVnYWN5LXRydW5rCis2MjEwNCBiYjRhNTQ3NDMwZjg1Y2UwMzVjODgxNGZkMGRjMDMwMGU5NDhiYWY2IHB5M2sKKzYyMTA1IDAzZWQwMTE4ZTczMzc2MDM4Y2RhY2Y5MjA5OWQ0NTk3MWRjN2M5OTYgbGVnYWN5LXRydW5rCis2MjEwNiA4ZTZhNGNjN2RmYzA0ZGE2OTRiOWRjMzQ5ZmRmNDQyNDY2ZGM4YWY2IHB5M2sKKzYyMTEwIDgxMTc5MDZiN2JhNzVlNmUyYjQ5OGYwMjYxZGFhYTA1ODU2ZjRhNWUgbGVnYWN5LXRydW5rCis2MjExMSBhMTcyYzJlMzhhYzllMmVhNjJlZDllOGI1ZWJhMWI2NjY4ZTE2YjYwIGxlZ2FjeS10cnVuaworNjIxMTIgYTk0NDY5Yzc0YjllYjRiYjMyZDhlYjA2Yjg0ZDZjMjQ5Y2IwODQ3YSBsZWdhY3ktdHJ1bmsKKzYyMTEzIDBhNWM4NjM1MGE4OTI3NjEzZmE0NTI0OWEwMDkzY2MzMGEzMTk2M2MgbGVnYWN5LXRydW5rCis2MjExNCAyYjBlY2M3ZmQ3ZWVhMjgyZGRiMTJmNGViMzY3MGM1MWRhNDRjZmFiIGxlZ2FjeS10cnVuaworNjIxMTUgMjA1ZDdmZDUwZDM1YTk2Y2FiNjM2OTllZjI2MmZkMjNhZmU2ODk1MiBweTNrCis2MjExNiBmNTQ3ZWJmMDI4NDMyODliOTQ4MWQxOWU4ZjU5NjI4NzcxZmFkNjI1IHB5M2sKKzYyMTE3IDg3OTFhYzljYmNjZDViZjFmMmEyNTc4MWU2ZDQ4MmNiODNiNDVkYWUgcHkzaworNjIxMTggOTc1YmQyMTYwNTI3MGEwN2Q5MjU3Yzk0NmE3OTViNDg4OGM2YTkxMSBweTNrCis2MjExOSAxNWY3NzNmNzMwMGUzNzJjNTZhMjFkNTlmZTQ5Y2EyNjk1NWE2NDc3IHB5M2sKKzYyMTIxIGVjYWIwMzc2NmNhY2NmMzQxN2JmNGZmOWQ3NWEzZDlhNzc1YTQ5NTQgcHkzaworNjIxMjMgZWVjMTQ0OTE3YTE4OWJlMTFlZDVlZmEzNWM2NjA0ZDAzYmM2MmJjYyBsZWdhY3ktdHJ1bmsKKzYyMTI0IDc2YTgxZWY5YjM3OTFlOTRjMzZhNTAyYTliNjIwNWIwNDc2NWNhY2IgbGVnYWN5LXRydW5rCis2MjEyNSBhYTliYWJiOWE0OGVkOWNjMjliOTJkOGJmYmI2YWQ2NjE0MmRhMzkxIHB5M2sKKzYyMTI2IDE2MTdiYjA1YTc4YWQ4MTgzYzJkYTI2Mzg3MjEwMTg5N2IzNmExNmQgbGVnYWN5LXRydW5rCis2MjEyNyA0ZDgzYjhkMDMyOTlmNWFhMWZhNGU3MzQxM2FmMjRlZTQ0ZDAwNmZkIGxlZ2FjeS10cnVuaworNjIxMjggMjg0OGM2NTdhZjBhZTc0ZjYzMGJmMzdlMTIxM2M5OGY3OTUzZGQzZSBweTNrCis2MjEyOSA5ZGNkYTU2Yjg3MWUxY2VhMGIxZTk0OGQ3Y2Q0YzYxYmM5OGM1YjMzIGxlZ2FjeS10cnVuaworNjIxMzAgODE0MjJmMWRlODkwOWRhM2RkMzcyYTRjY2UzMzQ1MjI5YWJjMjAxMSBweTNrCis2MjEzMSA5NzM2YzIwZDI2ZWI2ZjY0OGFkMzFmNGQyNjNlNzY4MzA0ZmQ5NDE0IGxlZ2FjeS10cnVuaworNjIxMzIgZGRmZTk0NzQwZWRlYTU3ZThiYmVkYjAxOTlkMTc1YTM3YjcwMGM1OCBweTNrCis2MjEzMyBhNzJlOTE3NDkxYTQ4Njg0MjQzOGY3MzhmODM2OTAwZWIyN2VkOWFlIGxlZ2FjeS10cnVuaworNjIxMzQgNjdmMWM0NjUyNzljYmMxZDRlMWY4Yjc2Mjk2MjRlMmZkZjNjOTliOCBweTNrCis2MjEzNSBjYzMzMzNiN2JkOTM2NjY4YzE2NzgwZDgwZjAzZGQzY2Y2ZjllOTNiIHB5M2sKKzYyMTM2IDc2ZjU3N2E5ZWMwMzNmZGEwODE0MGFhZDc4ZjY1OTVhMDU4Y2U1YjUgbGVnYWN5LXRydW5rCis2MjEzOCAwM2IyNmY5MWJmNmQwNTAzYTM0MjJiZGQ1Nzk0NDUxMDk5OTJjMjQ2IGxlZ2FjeS10cnVuaworNjIxMzkgNGJhNjgxOTVhNTExNjMyNjNjZTkzNDMwNjlhMGZjMDhjZjQwZjEzYiBweTNrCis2MjE0MCA3YzA4MWMwYjBmNTU4OGRiYzFiMDM0OGVjZTlkYmQxYTQzYjllOTBiIHB5M2sKKzYyMTQxIGFjNWU0ZDU0YjIzZTlkNTZlMmUxNzM0ODc5MDNiMzM2ZmUxNmIzOTQgbGVnYWN5LXRydW5rCis2MjE0MiBmYjNjOWJiNzZiMjk0NThmYjMzODc1MzM5NDk3MTA5YzQ2MTgxOTkwIGxlZ2FjeS10cnVuaworNjIxNDMgZDgxOGY2ZDI5Mzg0N2E3ZjBiMTExOWM1MjBjMjJkN2E0YmM0ZTFhMSBsZWdhY3ktdHJ1bmsKKzYyMTQ0IGNjZGRjNTZiZDViMDcwZmI4ZmY2OGUyMzRhMmNjZDI0ZDUwZjYzYzcgcHkzaworNjIxNDUgYjI4YTJkMjVmZDkyZGMwNTZmZDU2ZTFlNTc0MWYzYzg4ODA2Yjg1YSBsZWdhY3ktdHJ1bmsKKzYyMTQ2IDNkMDM1MmE1NDFjZTU2NjJiNjlhZTRjNzQyNmM4NzQ3NGJhMTU5YWYgcHkzaworNjIxNDcgNGExMTMzMDNmMzE2NTQyZGM3ZDMzZjNhMjE5OTFmNzBhNWU2OWJiNyBsZWdhY3ktdHJ1bmsKKzYyMTQ4IDM5OWU3NGJiMTJjN2RkMGY5MDE3M2YwZGY2ZDk4NzY2ZTYzN2U4ZjAgbGVnYWN5LXRydW5rCis2MjE0OSA4MjczMTc2ODk4NmQ0NzQ5YTBhZTM4YjcxODExYmNmZmM3MDk5MGZkIGxlZ2FjeS10cnVuaworNjIxNTAgYzNhNzcyNTg4ZGI3NmViZGVjNWVlODZlODBmYWM0ZDhjMzZjMTEwNSBsZWdhY3ktdHJ1bmsKKzYyMTUyIDZhYmUyNWI5OTI0YmFjOWYzYWRjZGNjODE0YjZlNTM3YTdiYjQxODggbGVnYWN5LXRydW5rCis2MjE1MyA2MWEwYzc2ZWNmODc2ZWU1YzcyZDc1OThlNDgwNWVkMGE1NWMzMTlkIGxlZ2FjeS10cnVuaworNjIxNTQgYTE5ZWM0ZjE3Mjc3OTcyYTNkNWVlZDc2ZjlkZmUzNjM1Y2Y4MTlhNSBsZWdhY3ktdHJ1bmsKKzYyMTU1IGY4MDZmZDk5NDFkYTY4YzQ1NWQ2YzBiYjZjZGEyYjU0MmMwY2I2ZTcgcHkzaworNjIxNTYgMGNlN2EyMzUyYTUzZWEwNzgwMGZiZWE3MmQxMzNmMTVmMGE3OTgxNiBsZWdhY3ktdHJ1bmsKKzYyMTU3IGU4OTE2YzY0ZGY0YzVmYjUwMGZkMjZjNDA4MjA5NmMwMWQ4ODg3ZmUgcHkzaworNjIxNTggNDkwMWU3NWY3NzVhZTFhYzAyNTJhZDM1Mjc0ZjY1NzgyMzdiOTUxZiBsZWdhY3ktdHJ1bmsKKzYyMTU5IDM3MjZkZThjYjhlMWQzYzAwNDMwYWU3YTFjOGZhMTE1ZDA3Y2Y1OGEgbGVnYWN5LXRydW5rCis2MjE2MCBmNGJmM2U3YmNiZTgwYWUyNGE3MWQxODJjMTJlMzJlYzE4MDQ3MTIwIGxlZ2FjeS10cnVuaworNjIxNjEgZGU3Nzk3M2Q3ZTFhMGM0ZDJmYzU5NGM4ZTRhNGUxMDA4NjkxYTYzZiBsZWdhY3ktdHJ1bmsKKzYyMTYyIDM0NDJlOWU2YjJjZjE4ZGZhNjUwN2I1MjIyNzczYTRhYzU1Y2Q3Y2YgcHkzaworNjIxNjMgOWM5MjZiMGE2NDhmNDI0OGRkZDg1NGM3OTgzOTA3YTNiNjliMjk5ZSBweTNrCis2MjE2NSBiMTAyOTJlYWZiMDczNzE4Mjc1ZGU2ZDU0YzkzM2ZkZmMxZmFhNjA4IHB5M2sKKzYyMTY2IGMzZGNjMGM3YmZkOTU3ZTEyNjM4ZDFjZTA3YjQ5MWU0YWMzOWE5MzkgcHkzaworNjIxNjcgYTFhNTE4YmU1NDdkZDkyYzliYmE3YWQ2YTg3NGJmMGVjNjIwYmMxZCBsZWdhY3ktdHJ1bmsKKzYyMTY4IDEwNTVmMzY5YjFmY2VlMDc5YTJjZDk4YWZkOWQ1ZWM3MzU1NzYxZmMgbGVnYWN5LXRydW5rCis2MjE2OSA2MjUzYTcyMWQ4YTZhMmIzZTY5YjM1OWEyZjQ5MmJiN2ViMTAxY2QxIGxlZ2FjeS10cnVuaworNjIxNzAgZTNmN2RjZmFhMDMwY2JlODRmNWJkYTM0ZmZiYTQ5YWZjYWU3YTEyMCBsZWdhY3ktdHJ1bmsKKzYyMTcyIDg1MzJkNTY5MTg1MDlhYjhlMTEyYzMxMzVjYzEwYjQwOTFjNGFlNDkgcHkzaworNjIxNzMgMTBkOTRjOGM4NDE0YWI2NzJlMjI3ODBiMDJiYmVkZGJkN2JhNDc2MyBsZWdhY3ktdHJ1bmsKKzYyMTc0IGY4NGNkZmMyMjFkMTM1ZTBlMmUxM2U1YmQ5MjVkMTEyOWRmMTY0NmIgbGVnYWN5LXRydW5rCis2MjE3NSBiYzcwMGFkMDI5NjIzMTg1MjY0ZThjNWQyZDIxNmJlZjExMmJhZjJjIHB5M2sKKzYyMTc2IDQzNTJkNDFhZmZiMDFiMjVmMGYxNjI4YmYzY2JhZTk5MTllMTY5OTcgcHkzaworNjIxNzcgODY0YTU2NzFjN2E0M2NhNzcxYzQ2YmM2NzZlYTUyNmQ1Mjk5MDI2YSBsZWdhY3ktdHJ1bmsKKzYyMTc4IDIyYTc0ZWFmNmIyMjUzZmMxMjViMDc5MWMyZTcxMjk3YjkxY2Q5YTIgcHkzaworNjIxNzkgNDJhNzU4Zjk2MWExNzkzM2NlZTJiYTM2YzE4NjlmODAzMDJhZDVkMyBsZWdhY3ktdHJ1bmsKKzYyMTgwIDAxMmQ5N2JiZWVhZjZmNmMxOGVlZmQ0NTQxMGQzNDJlYTRhYjIzZTUgbGVnYWN5LXRydW5rCis2MjE4MSBlNTNmMmNjY2RmMWQ3MWIyNzk3MDE3OWM0ZjZjZDZiZjIxMTQ2YzM0IHB5M2sKKzYyMTgzIGZiNWVhYTRiZTcwMDkxYTZlZWM0NWRmNzJmNWNlZTJmNjFkODQ5ZWUgcmVsZWFzZTI1LW1haW50Cis2MjE4NSBmNDZjZDI0MGUxMDU4NWM5NDkwNTUyZjYyN2Q3ODA3NzIxNTNjOWY1IHB5M2sKKzYyMTg3IDAzNTI4OWU2ZmUyMzVkZDMwNGFlNDhkNmM4YjE1NTU0YTYwYTZhMDEgbGVnYWN5LXRydW5rCis2MjE5MCBjN2RhMzFjMmM0NWZmN2JkYTBiYTI3YzJiZWMzMzJlMjI4NTMxNjkyIHB5M2sKKzYyMTkyIDljNjQ3NTQyNzYwNTIxNDMyZjc3ODlmYzVmYWM4YWRjZjZmYTA3YTQgcHkzaworNjIxOTMgZTI4ZWQ4NWNjOTYyZGQ3NDFjODFmOTIxODg5OTI1ZjgyNjkxMmI0YSBsZWdhY3ktdHJ1bmsKKzYyMTk0IDI3ZDMyNDM2MGE2M2UzMTRlMjJhYTJhODEwMGNjYmEzZmYyMzkwNDEgbGVnYWN5LXRydW5rCis2MjE5NSA4NmRhOTI5OGI5MDhiOGM5NzZiODFkYTA5MjExM2JiOWM0MjViZTJiIGxlZ2FjeS10cnVuaworNjIxOTYgZGY3NjE5NTM5NjMxYTI2OGMyZTA2OWEwMjBjZThkYTRlYjI4OGZmYSBweTNrCis2MjE5NyBhOTNkMjkxOWVhNTliZGQ5YTBhMTBkNjQ0NjA3Y2I5YmYxYjIwMDk3IGxlZ2FjeS10cnVuaworNjIxOTggNGJkYmVmNzA5NTE1NWFiY2Y4YjJmOTYwNGFmODc1YzM5OTczZmQwZSBsZWdhY3ktdHJ1bmsKKzYyMTk5IDRlNzI0ODlmMTZkMDUwYWZiNTQ3MzQ3NWQ3M2U4OTE4YWQ0N2YxYzEgbGVnYWN5LXRydW5rCis2MjIwMCAzYWI1NDc0YmRlNDU3Zjg0ZWY1MDdjMzdhOGQyNjQ0MWFiZmYxOTQ5IHB5M2sKKzYyMjAxIDNkOWFkMjdkOTMwYjA3OGUwMTBkMTgwZmE3MzVjOWFiMjllZWIzMDMgcHkzaworNjIyMDMgNTZlNDk5NTJkMWE0ZjYzYmM1Mzk0OTJhMGQ3YjNiZDIwNGJkN2VjZiBweTNrCis2MjIwNCAyZDk1ZjdhOTgzZDgyZDgwZmQ4Y2JhYjRkYjE5OTdjZDQxY2IyMmZiIGxlZ2FjeS10cnVuaworNjIyMDUgMjdkZjNiODEzNTE4MjhkMzc0ZDdjOTEwZjE2OTQ5YzBkMTNmNTIzNCBsZWdhY3ktdHJ1bmsKKzYyMjA3IGMyNjY3MGYxZTUyMGZlZjRmMTgwMjFhYmEyYWRjNjkxNGM3MGZjZmMgbGVnYWN5LXRydW5rCis2MjIwOCAyM2I2NWYyZDc2MjE5ZDI5OWJmMGE1NmEwZTEwZDY2MzllYzRkMDRmIGxlZ2FjeS10cnVuaworNjIyMDkgMGJlNDAwY2JkNWI4YTAyYzZjYTllM2M2MzQ2NmEyMDQxY2ZlOGQzYiBsZWdhY3ktdHJ1bmsKKzYyMjEwIGQ3NmU1OWZiZjA2ZDQxN2M3NTIyZThjNTliZDkxMTYzZjZmODY1MDggbGVnYWN5LXRydW5rCis2MjIxMSBmZDQ3YTkwMDkwNWMyZDZmZjdiYzZjZmJmZWZhYzMxNGFjYzM1YzhiIHB5M2sKKzYyMjEzIDYwY2RiNjcwM2RmMzNlOGJiYjZiODNjYjZmMjYyYmVjMDEyODA3YjUgcHkzaworNjIyMTQgMDlmMzZkNTdjOWQ2MTNhOTNkNDBlYTQwYWI0NjcxYWJmMzk0NmY5OCBsZWdhY3ktdHJ1bmsKKzYyMjE1IGY5YzYxYzk2YTc2OTViMGE4NTFhMGE4MDkxYzRiMDQ4ODI3ZWQyYjYgcmVsZWFzZTI1LW1haW50Cis2MjIxNiBjZDA4MTg0NjM3YzU4YmVmMjRhMGM4MGY5YzgyZGZlMzdjNGY5MjIyIHB5M2sKKzYyMjE3IDg5ZGQxNjJmMTU1YmZjYTllM2Q5MjIxM2QzYzgzMThlMzVhMzg0MDQgcHkzaworNjIyMTggNDU4OWQ4MzFhYTgwYmJlNTE2YjgxODgwYTQ2NWYyMTJhMDkxNjY5OCBweTNrCis2MjIxOSAyMThmMmQ1NWRlNDg4MWFjMWQ1OGFiNzdmNTBkNzA2Mzk1NjAwMzc5IGxlZ2FjeS10cnVuaworNjIyMjAgNDM0ODM0MzIxOTI0ODlkOWM5M2EyZmNjNWQ1NjM4ZDM3YTFlMTlkNyBsZWdhY3ktdHJ1bmsKKzYyMjIxIDYzYTBkMzNjNGNkMzU0OTg2MzY3NjQzNmUzMmE0MjhlYTc0MDEyNDMgbGVnYWN5LXRydW5rCis2MjIyMiAyNzBkNzlmOTAwNzExZWJkNDY0YjExNWQ3MmQxMjJmMTJhYTA0ZjE3IHB5M2sKKzYyMjIzIGUwMjRiNzU1Mjc5NWVjYjllZDY2N2IzOTJlYTlmYWE4NTFlNWFlNWEgbGVnYWN5LXRydW5rCis2MjIyNCA2M2Y5YTg1MjYwOWUzMTg4NmYxMmZmNTBjZDlhMTJkZGM2NzdlNzBhIHB5M2sKKzYyMjI1IGFlNjRmYTFiYzljYmI0YjllNDJmMTBjNGMyZThmMzhjYjM0YTk5MjQgcHkzaworNjIyMjcgNTBmNTE4NGVlZWQ4ZDhhZjExY2YxYzgxODJkNjI2MjQwZDA5MWMwMSBsZWdhY3ktdHJ1bmsKKzYyMjI5IDM4MmQ1ZWExN2Q3OGE0OGQyY2FlYWEwMjYzMzdhNTNhZDE0YjNkZDMgbGVnYWN5LXRydW5rCis2MjIzMCA4NTQzZjhjODFkYTA4OGFkMjdkMmFlZmJlYmIyM2JmMTFkZjc1MTM2IGxlZ2FjeS10cnVuaworNjIyMzEgMWYxNTQ2M2FmOThjMzk0YTMxN2EzZmE3NjczM2Q0MWExNmQ4NmVjMyBsZWdhY3ktdHJ1bmsKKzYyMjMzIDdlYmU4MWIxZTQyMzJhNWE2ZmRlZWI2NjZhYjM4YzRlMjIyZTY4MGYgbGVnYWN5LXRydW5rCis2MjIzNCBkOTE3ZGEyYjE5NDZlMTJjNDZmNTIzMjZhOGU2N2EzZjVhNTE5MDMzIGxlZ2FjeS10cnVuaworNjIyMzUgMjdjNzEzOWE5OGVmN2U5ZTZkMTFjNDQ3NDk4YmUxOTMyODQ0NzhhOSBsZWdhY3ktdHJ1bmsKKzYyMjM2IDA0OThlYmI2YzQxYjgzMDk4MjYxODE2MzlhY2I5YmU5ZGIzNzE0MmIgcmVsZWFzZTI1LW1haW50Cis2MjIzNyA3ZmQyNzRhNThkNWMxZTBlYzVlYjg3ZTcxYzFlOWNlMmM5N2FiMzViIGxlZ2FjeS10cnVuaworNjIyMzggYWJkYzgxZTFjYjViYTY1NWJkYmMyZDQxMmVkYmM5ZTBiYWVhMmE1YyBsZWdhY3ktdHJ1bmsKKzYyMjM5IGFmNGM0NmJmM2QwOTcyYjc0NTcwMGVkMDQzZjE3NTRhNzJjNDM0OTkgbGVnYWN5LXRydW5rCis2MjI0MCA2MDg4NWY4ZTg1NzVjZTZlNGY2ZGE2MDkzMDA0NTRlMjQ4OTlmMzBmIHB5M2sKKzYyMjQxIGFmYzYyMWExYmM0MTkwMzk4ZmRkNDRiYjA4ZjZlN2VhNWYwNmMyMjQgcHkzaworNjIyNDIgMmU5MTdiMGM4ZjZlODkyYmM0ZGI4YTFmZGE1ZTZmYmZiY2RjZjI0YSBweTNrCis2MjI0NiBiM2NkMDMzOWNhNzdlOTc5MTg5OGNmMTZjMmQ4NzlkYWRiZjUzOThkIGxlZ2FjeS10cnVuaworNjIyNDcgMmM0NTUzZjY1OTI0MzUxNmI4NzEwYzAyZDkzMGIzYmUxMDA3ZDg1NCBsZWdhY3ktdHJ1bmsKKzYyMjQ4IGJlN2IwZWI1OTkwYzZiNjFhOTY0MjhhMTc4NGU2NGMyOTYyMWNhZGYgcmVsZWFzZTI1LW1haW50Cis2MjI0OSBhZmYzODM5ZDAzOTQxYWQ0NWFkN2MxYzQ5ZWQ4ZTMxNGJhMThhZGFmIGxlZ2FjeS10cnVuaworNjIyNTEgNWE1NjkyZTNjOWJlMjI5NTQ3MWE2NmU4NGI0ZmNhNDg4YmQ1ZWJmZSBweTNrCis2MjI1MiBmZjM0ZWYwYTgwOTY0OGNkYzNlMDliNTQ2OTc3MGU5YWE5OTMwNTUzIHB5M2sKKzYyMjUzIDE4ZGI4YzRkNDQ4N2FlNjlhM2RlZWUwYWZjNjVmYzU4NDIxMjc3NjcgcHkzaworNjIyNTQgZWZhOWNjM2JkN2YzZWJhNjhmYTc4ZTQ5ZGMyYjExYjZhZTA1OTVlOCBweTNrCis2MjI1NSAxMWIxOGRkMTU5MDNlYjljM2JhNjczMjAxNTM4Zjc1MTE5ODJjN2VlIGxlZ2FjeS10cnVuaworNjIyNTggZDhiNzcxYmUyMWRmNDQ5OWEyNGIwOWU1YTZiMzVkNWJiZTZjZjc0YyBweTNrCis2MjI1OSAzNjAzMjY3NjcyODgwYTQxYzVhODk3ZmEwM2I5ZWQyZDc1NDM3NzQyIGxlZ2FjeS10cnVuaworNjIyNjAgY2UzMTg3NDYyMDExZjY4Mzg2Y2I1MGViOTk5NGVmN2Q1ZDNkZjI3ZCBsZWdhY3ktdHJ1bmsKKzYyMjYxIDBiNTU4NzVjMWM5YzFkNjYwZjczMWEzMjk1OWE5MTZlOWUzNWY3MzAgbGVnYWN5LXRydW5rCis2MjI2MiBjZDRiMWYzZmQxYTk3NDA3NTAyNjQzYjMwNGYxZWE4ZmY1ZmE4MmM3IHJlbGVhc2UyNS1tYWludAorNjIyNjMgODQyYTZjMmM5YmNkMmE3MzBjY2M0NTdmMjFmNmIyY2Y1ZjRjZDQ1YiBsZWdhY3ktdHJ1bmsKKzYyMjY0IDIyODdhNGFiMjRkODc2MTE5ODhmNTE2YjRhYzVmMjVjMWZlODBmNWEgcHkzaworNjIyNjUgM2NlN2M3OTZiY2ExMjQ5NWJjYTA3YjdmY2NiZWE2MGRhNGJjMGFhMSBweTNrCis2MjI2NiA4ZDU1NTg1MGY3M2Q5NjhmZDY3Y2IyYmE2Y2ExNWY5MjcxNzRlN2IyIGxlZ2FjeS10cnVuaworNjIyNjkgN2M5OWNlZGMzZTU0YTVlZmJmOGRiM2E0MDM0NDk1NzEzYzgyNzZhYSBweTNrCis2MjI3MCA1ZTU1ZDQyNzVhMDk0MTBkMjk2Yjc3MWIwNmZjOTQ2NmU5ZmE1ZjBjIHB5M2sKKzYyMjcxIDFhYWFiMzIxODNmMjI3NDU4NTk2YWUwM2Y5YWQ5Y2JjNmZmY2MwZjcgbGVnYWN5LXRydW5rCis2MjI3MiAwNDEwZmY4MThlYzc4ZWYxYjIyNDBiM2EyN2UwMDkyZWNkYmQ1ODkxIHJlbGVhc2UyNS1tYWludAorNjIyNzMgNjQ1YzUzNWY4MjIzMjZlYjc3MDE4Njc2M2YwNzdkZDJjNjk2MzgyMSBweTNrCis2MjI3NSA4NDE2Y2RkMTFjMTE3MjE4MDJlOWQyNzU2NzE1NDc0MTg0YmNhZGU0IHB5M2sKKzYyMjc2IDYxOTY1MjlhZmQ3Mzg0NzVmNTliZjBiNzdkYWY1MTIxNWQ3YTMyOTEgcHkzaworNjIyNzcgMjlhN2JlYzYxMGNiZjIzOWNlOWQ4NWUyMDQ0ZjNiOTFhYzQ0Yjc1NiBsZWdhY3ktdHJ1bmsKKzYyMjc4IDQ1ZmRhZTRjZGI1NTdmMmE2Yzg1MGRlODk1MjEyNzU2Zjk5Mjk3OTggbGVnYWN5LXRydW5rCis2MjI3OSBkZGNlN2M5NDIxZDJlOTZmZDU1YTZlOWNkZWEyMjU1MGY5Y2U1YTAzIGxlZ2FjeS10cnVuaworNjIyODAgYWZhYzNmZjYwYzZjNWMxMDg4MTQ3M2NhMzYzNWMzMjNmNjE5ZGViYyBweTNrCis2MjI4MSAwOTRhOWNlNGI5YmQ0ZmRkZjNhYmY5NDZmMzg0N2U0NWIyYjdiMDRiIHJlbGVhc2UyNS1tYWludAorNjIyODQgOTc5NzRkOTY3MTI3MGI3ODdlOWFjMjQ4NmMxNTZkODRhYmY0NTYxZCByZWxlYXNlMjUtbWFpbnQKKzYyMjg5IGJjMzM3NzBjYTExNDhjNjAyOWIyNzQ5NDRmODA0YmE4Y2RlNzZkYmEgbGVnYWN5LXRydW5rCis2MjI5MCBhMjQ4NTZiYTc3ZmVkMzRjYWQ1MjU5OGExMzkzYzMzNWYzYWU3MDcyIGxlZ2FjeS10cnVuaworNjIyOTEgMzM2MWI5OGZmNGZmOGNlOGY3OWZkNzJlM2I5NTgxZjhlMjQxZTdhYyBweTNrCis2MjI5MiAzNjUzZmJkZDQ0ODM5YmJhMTA4NjA3NjBkZmMyNDQzOWJhY2JkOTY4IHB5M2sKKzYyMjkzIGMxZmEyZTc1OGUwNWI1YTRiMDdiYjY2NDVmZDI2YzI1NGI2NjFmNDQgbGVnYWN5LXRydW5rCis2MjI5NCA5NDc4MmJlOGYxZTc3YjU4YmY4Yzk1ZWRhNGU1YWRjNmQzN2U5MGZjIGxlZ2FjeS10cnVuaworNjIyOTUgZmUyNzUxYWNhZDNlMTNhNWNiYWZjMDQzZmY0NTAzMjFiMWFlOWU0OSBsZWdhY3ktdHJ1bmsKKzYyMjk2IGNhMjMzYmU2NDU5ODljYWRmZjQ0NjZkMTI1NjExNDU2NWU2MTlkOTQgbGVnYWN5LXRydW5rCis2MjI5NyBkNDZmNmViMDllYmNmYjg2NjRhZGI4OWE3MDk2MzE5YTBhNmM2OWUyIGxlZ2FjeS10cnVuaworNjIyOTggNzY0YWFiMGU4YjliMWU0NmEzNGUyOTFiNzNiYmI4NzAwMWExZDY4MyBsZWdhY3ktdHJ1bmsKKzYyMzAxIDhiOTE0ZmNlOWQ4NGMwODRkYTQ5OTZlMDQ4NDk4YWEyYzA5NTNjMjUgcHkzaworNjIzMDIgMmE5ODU4MjU1ZGUxMDg3M2U4OThiMzkwODczZTg0MDNmOGJlODZmMSBsZWdhY3ktdHJ1bmsKKzYyMzAzIDg0MDA2NDgwMjk1MmIzNzhlODFmNDYyN2EwMTc1YzZmODJkY2VhNjcgbGVnYWN5LXRydW5rCis2MjMwNCBmNzgxY2ExNDM5NWIwNjU3ZjJhYWU2MTllNTYxNmYyY2FkYjUyOGY3IGxlZ2FjeS10cnVuaworNjIzMDUgMzllYTJmYzQ1MDNkMTIzMTc5NWE3Y2NhNWQ3NGFlYjEzNDk1M2IyMyBsZWdhY3ktdHJ1bmsKKzYyMzA2IDgzZTY5NzVjMzE5OTg0NDE3YWIxZjJjZWUxODMzYWIyY2EyN2MzZDAgbGVnYWN5LXRydW5rCis2MjMwNyAzMzA3YTU0NTBjMzc5YTY5MWEyZTg5YTZkMWVhYTk5ZTMzNDY4YzcyIHB5M2sKKzYyMzA4IDM2ZDBhMWUwYzAyNGJhOWQwMDc2YjU4ZDFjMWI3MjNmOTI1Mjg4ZDQgbGVnYWN5LXRydW5rCis2MjMwOSBiNTQ0YmI2MWJjYTljYWJkMDMzNzhmOGNjN2I1NzIyZDVhODFiYjYyIGxlZ2FjeS10cnVuaworNjIzMTAgOWFkMzBjY2NlNDljMTgxY2RlMzliYzFmNTMwMmZhODIxY2VlNmVkOSBsZWdhY3ktdHJ1bmsKKzYyMzExIDAyMzQzZWNhZjBiYjAwODk3OWRmZWFhMjU0NGEzMDMxZmIwOTA3NzMgbGVnYWN5LXRydW5rCis2MjMxMiBlMGMzYWNiMTE2YTU1NGMxMGU2Mjk3ZWMyMjg5ZWUwN2E2OGE4ODJkIHB5M2sKKzYyMzEzIDhmMmI2NWVjN2JiYWI3OGI5ZDQwZTQ4NGEyZmRiNThiODNiYWRjMjQgbGVnYWN5LXRydW5rCis2MjMxNCAyOTIzMWE5NzM1ODBlYTg0ZDNlZTFiZmRmMGVlOTI4OGM1NmVhZDE3IGxlZ2FjeS10cnVuaworNjIzMTUgZmMzM2U3NWI5MjU3MGRjM2YxMmY0MTNjNDY0YzczMDA4YjE5ZDcyZCBsZWdhY3ktdHJ1bmsKKzYyMzE5IDdhNWE1ODBiYTZlYTIzYmE5ODA2MDBjNDcxYTE1ZDAxODE3MWRlM2YgbGVnYWN5LXRydW5rCis2MjMyMCAwNTI4Mjc5MDA3ODI2ZDdmODg0MmJmNjdkZGY2ZWVlMjRhNTE1YmE4IGxlZ2FjeS10cnVuaworNjIzMjEgODVmMGUxYWMwYmM5YjJiMTA2YjA0NTczMDhhMDUwODM3YjJlNTY5YyBsZWdhY3ktdHJ1bmsKKzYyMzIyIDQ3ZDliYmUxMDg5NzIwY2QxZTNkMzcwNzRlYTUzYmZjYzA5ZTJlMTMgcHkzaworNjIzMjMgMDI4ZDg2MjU0MDliMjIyZGFkN2NkYjY5YTAyZmQ2OWY3YTY1ZmFkOCBsZWdhY3ktdHJ1bmsKKzYyMzI0IDRhZmRjNjhlYTUyZWE1OGM2NTdmNWQ0NTBlNzc0NzBhNTlhOWIzMzQgbGVnYWN5LXRydW5rCis2MjMyOSA2OTUyZTcxODFmZmM4OGY4YmY5MTZkOTcyMzlmNWE4ZDc0MjQxZjdjIGxlZ2FjeS10cnVuaworNjIzMzAgYjQyMGVhYmY5ODM1NDU5NzQzMGFkODdiY2Q4NzI5ZDU3MDBjNDJmMCBsZWdhY3ktdHJ1bmsKKzYyMzMxIDdjMjFjYzE0Yjk0ZjVhNjRkMjg2YTNkY2M1YWI3NDg0MmZlMTRmMTEgbGVnYWN5LXRydW5rCis2MjMzMiAwM2Q5YzY2NGE3YmM4NzA1ZmQ1Y2U2ZmZhOGJmZWU1YTA0NGMzMmNjIGxlZ2FjeS10cnVuaworNjIzMzMgNDBmZGQ1Y2QyZWY1MWQ2MTY4ZDA3NjI4MjVmMjdmZWNkMmI0YTBjYyBweTNrCis2MjMzNCBmYjA4MTAyNWIyMjMwYmQ3ZDQ4ZjFlMTMzOTRlMDI1YzdlNGQ1YjU2IGxlZ2FjeS10cnVuaworNjIzMzUgNDY4NzllN2ZjNGQzMzU0YmVmMWRkNjA4OWQ0MGEyN2M0Nzg0MzYwMyBweTNrCis2MjMzNiBjNzQ0MjM1MTAzNjE4MDcxZDYwODhiZjNiN2Q0YzUyMjg5ZmJhNzY1IHB5M2sKKzYyMzM3IDcyYTc2NDg2OTlkMDgzODk5ZDIzNjkyZjFiNmU0NTliMTQ3NjIyOGYgcHkzaworNjIzMzggYjNkY2E4ZjU1MzVlYzIyMWY1MGY4YjEzODcwZDg3ZTczMWQ5MmVjYiBsZWdhY3ktdHJ1bmsKKzYyMzM5IDYxNDg3YmU2ZjQ0MjkyZGQzOGQ1Y2ViMjMzNDMwN2RmOTlkNzYwY2EgcHkzaworNjIzNDAgOGRkMjQ3NDFiNmFhZjBiNjI0M2JiNjdjODgwMTMyMjQ4MWJlZTkyNiBsZWdhY3ktdHJ1bmsKKzYyMzQxIDZlNGNhOWY3MmJiYTZkZGIyZDA2ZThkNzgwYTVhYzk4MjhlZmU3MzIgbGVnYWN5LXRydW5rCis2MjM0MiAwZmVkZTRkMWIxNGJhMmE1M2IxMjcyMTlhZmNmMmZlZGEzZGQ1OGZkIHB5M2sKKzYyMzQzIGFkMTcwYTMzNTk2N2JhYjIxN2FkMDNiNTA5ODViZWMwYzBhYjBkMDIgcHkzaworNjIzNDQgNTk3NTNiZGNlMDg5ODQ5Y2UxY2Q3Y2E5YmJlNzhlOGQ4OTFlMDIzMyBweTNrCis2MjM0NSAyNDIwNWIxZjk1NGVmNzVlNjIzMmQ3YjY4NjJhYTc5NDczYmZjYTM4IGxlZ2FjeS10cnVuaworNjIzNDYgOTliZmI4ZGUzNGIxZjZkMDE2MTM2YWViZTA4OGQ3N2U0Y2FmOTFhMCBweTNrCis2MjM0NyBlYWIxNTM5OGVlZjAwYWNiNjllODBiM2VlMTUyZGQxYzExY2RjNjkxIGxlZ2FjeS10cnVuaworNjIzNDggOTFiMDk5YTdmM2UyMmI4M2VhODIwMzRmODRmMmY2ZTZhMjhkNjQwZSBsZWdhY3ktdHJ1bmsKKzYyMzQ5IDk4MWRmMTNhYWIyMDA4YzExNGY0NTE4NTc0ZWZiYmMzODZmZjVkZGIgcHkzaworNjIzNTAgMTg0MWY5MmUzMGRlZjBhNWIzMTI3ZjVhYTFmYjBhMDNkM2U3MmYzNCBsZWdhY3ktdHJ1bmsKKzYyMzUxIGVmMDZlZDgwNDkxOGExYTQwMzIxY2FkZmJkMzM5Yzg5ZGJlZTk4MzAgbGVnYWN5LXRydW5rCis2MjM1MiBjZTU1OTdhZjk5YzdkOTVjYmY1YjE5YWNmNWQwMDczNGFjMjliNjkyIGxlZ2FjeS10cnVuaworNjIzNTMgM2UwOTVhYjc1ZmM4OWFlZDAyZjBjNGQ1Yzc5Y2Y4NzhhNDdlMDY2MiBsZWdhY3ktdHJ1bmsKKzYyMzU0IDE5ZmQ0NjNlYTcyOGU0MGU4NmY2ODc4YmNjMjU1ZjBkMDZkMDk0ZDUgbGVnYWN5LXRydW5rCis2MjM1NSAzOGM4MzFiNDdkYzViYjQzMWNjMDgyZTQ5NTQwM2Q3MzU5NGJjZjVkIGxlZ2FjeS10cnVuaworNjIzNTYgYjA0ZjIwNTJlODEyNjI5NjFkMmIzZDdmN2U1MTUwMTk5MDg2YjA2YiBweTNrCis2MjM1OCBiNzIzMTA2OTAxZTBjZjBmM2M0NDNiMWUxYmVmM2FhOGU3MmQ1MDc1IGxlZ2FjeS10cnVuaworNjIzNTkgOWYzY2ExOTE2MmE3MzhhNjIwYzYwMjc2MWE2MWNiZjAxZDJlYTJmNiBsZWdhY3ktdHJ1bmsKKzYyMzYwIDQ4Mjg5NjQ1Y2RlZjc3ZmZkZWI1NmNiYmIzZWIwYmNiZmI2NjE1YWEgcHkzaworNjIzNjQgMWM5YmE0MDExZjVkZDg1YmRkZWEzY2Y3ODVkODRjNmIzMWE2OWNhZiBsZWdhY3ktdHJ1bmsKKzYyMzY1IDA3ZDdlNWNkYzFhMDEwY2Y5MWEyNDE3MDg5ODA4NzUxNTQ0NTY1MWUgbGVnYWN5LXRydW5rCis2MjM3MCBiYzk2YmFjNTg2YjRjMjFmYzJiMTJlMmJmMmJjY2YwMTY4MzFlZmQ3IGxlZ2FjeS10cnVuaworNjIzNzIgMWZlZjI2Zjg5YmNlYTE4NmE1NDMyMjAyZDlmMGY2ZTc0ZDIxOTdhNSBsZWdhY3ktdHJ1bmsKKzYyMzczIDdjZDM2M2RmN2E4NDZjZDE4MjUwNGFmZGU4MGI1ODg4MzJiNTgyMWYgbGVnYWN5LXRydW5rCis2MjM3NCA1MDI0YjEyYTAzOWQxYzdkZTFhMGIyM2U3OGIxNDdiNDgxOGIwNDA5IGxlZ2FjeS10cnVuaworNjIzNzUgODkxOGM1MWRlMDEwOGFjZWM3MTEzYzY1ODE5YTM5MWM2NDNiMGVkNyBsZWdhY3ktdHJ1bmsKKzYyMzc4IDRmODI2MWI5MmZjNTYwZGVkNDMwNmVhYWVlNjUxY2NhNTZkZTgxYjkgbGVnYWN5LXRydW5rCis2MjM3OSBmYjhkM2UxZjYxNjEyZDQ0ZWZmMTNkYjA2MDEyNzMwMTViMTE0NjA1IGxlZ2FjeS10cnVuaworNjIzODAgNWJjN2IyMGRjMDRhOWQyNDlhODIzMzk0NTc2NDE1ZGE3ZmU4OGE5MCBsZWdhY3ktdHJ1bmsKKzYyMzgxIDVjNDMxNTlmNWFkMGIwNjU5OWI2YjdhMzliZWNjOWViYzAwYzZiY2QgbGVnYWN5LXRydW5rCis2MjM4MiA3NzljYWExZTBmZmIyZTBjODJlMWU3M2NlN2YxNDRkMjljMjNjMjIxIGxlZ2FjeS10cnVuaworNjIzODMgYTE5OTczOTlmODcyNGM0YWEzMzU0NTU4NWQwZWQ3MzE3ZTA5M2JhMyBsZWdhY3ktdHJ1bmsKKzYyMzg0IGI2OWY0NDNlZjQ4MDcxNzljYjExYjZiNTJlYjM2NTMzOTg5OGYyODIgcHkzaworNjIzODUgYmViN2FiY2Q2YzAxYTU0M2RhZGY2ZjgyNThkZmY1ZmI3YmRlMmU2OCBweTNrCis2MjM4NiBlMTY1OTNkYTQ4OTg5YzcwM2RhZTY3MzZhODBmZWQ1OGUyZmEwMGQ0IGxlZ2FjeS10cnVuaworNjIzODcgZTAyOWQ3YzdkZTgxMTQ0MTMzZmU4YTg5OTA1MDlhYzc3ZGI2NGM4NyBsZWdhY3ktdHJ1bmsKKzYyMzg5IDk3YzIxNDE3YWY0MGFkN2IyNzY2N2U1NDI5ODIzMGJlNGZhMGI3MDUgbGVnYWN5LXRydW5rCis2MjM5MCBiMWM3MGM4OWMzZGE2YzM5YzExMzJlZTEzMDZkNjg4NDdiMjcyNDQyIGxlZ2FjeS10cnVuaworNjIzOTEgMzc0ODMzZGU1NzBjMjQxYmUwNjM0ZmUxNGJlNDkyZjUwMmY2Mjk1MCBsZWdhY3ktdHJ1bmsKKzYyMzkyIDEwZGEyNzk4ZTU4ZDgzNjQxY2IwMzIyYzU3ZTAzODgzZTEwN2YyYWQgbGVnYWN5LXRydW5rCis2MjM5MyA0ZjcxODA2MWY0NWE0NDE4N2M1MjBiMmM2MDZiNDZmYWYxYzQxNTZlIGxlZ2FjeS10cnVuaworNjIzOTYgODJkODVhMDU5MjNiZjM5ODQ2YTQ1MTZiMTYwMjBmMGQwZTU3NTBiNyBsZWdhY3ktdHJ1bmsKKzYyMzk3IGQwZmE0NWU2MzdhMDUwMDE5MGNkM2RmYjNlODdlZWRiZDU0ODhmZDQgcHkzaworNjIzOTggYzM2NTljZTg5M2U3ZThiYmViYjkyN2ZiYWZiMDg3Mjc5MDZiOGM5OCBsZWdhY3ktdHJ1bmsKKzYyMzk5IDY0NGE2NzgzMDA2MWJhMzViNGY4YWZmYjhhMmI2NDUyMTJmZTRmMWYgcHkzaworNjI0MDAgNjQ4YjRkMDFjY2NmNTk1NTgxNTU1NjViM2IzYzRmYjlhY2RlYmNjYSBsZWdhY3ktdHJ1bmsKKzYyNDAxIDEwMjM2ZDFkMDg2MDc2N2E0OWE4ZWUxNGIxY2E1Mjk0YjNjOWViZWMgbGVnYWN5LXRydW5rCis2MjQwMiBkYTRhODdkNjNiMGVlMzAwYjIwMWRhMDJmZTE0MGFlMTJmYzhkNThlIGxlZ2FjeS10cnVuaworNjI0MDUgMzg1ZTIxOGQwZjZjNWFlNWIzZmY3Y2M3M2I4MDQzMTc2NTNmYTNiZCBweTNrCis2MjQwNyBmZjU4Y2I1YWE3NmRhNjAwOWNjZDhlMjFlNmEyNjkzZjBmNDM5NmRiIGxlZ2FjeS10cnVuaworNjI0MDkgZjY0MWU1MDVmZmY0NmUxNzY1YTZkMTBmMjM1MDIxMzNjYWQ0MWQ3NCBsZWdhY3ktdHJ1bmsKKzYyNDEwIDM1YmY4MDEyYTM3NmU2M2QxNWE5MTNlNjM4MjllMDdhYmYwMDkwMTEgbGVnYWN5LXRydW5rCis2MjQxMSBkMTY2MjUxZDgwMTQ0OTE2Nzc3NzI5ODllY2VjNjdlNzk2ODNmYTI0IHB5M2sKKzYyNDEyIDMxZmY1OWQ5ODRiZGUyYzhlN2Y4M2ZmNTY3MjBmNjU0MzdhMjAxMDEgbGVnYWN5LXRydW5rCis2MjQxMyA4MGIxNjU5NWU0NjI2Y2M4NGI5Mjc3ZjAwYTcwZDBmY2Q5MmVkOGE4IGxlZ2FjeS10cnVuaworNjI0MTQgYTIwZGVmMDEwMWRlMjY5ZTFhZGFkZDQ5ZTFiZWQwMTAzYzQyMTZhMiBsZWdhY3ktdHJ1bmsKKzYyNDE4IGYzY2YxMmJkMTExMjg0NmQwYWE0MTUxMmQwODliZTMwNzQwZTEwN2EgbGVnYWN5LXRydW5rCis2MjQxOSA3MzczMmQ2NmQwZDVmN2I1NzM1MzI1NmZhZjk3YTllMGJhNzQyNzA3IGxlZ2FjeS10cnVuaworNjI0MjAgYzc4Y2ZlMjEyNmRhMTg0NjEzNjg2YzE2ZTVkNzIwNGRhZDU5MTk1NiBsZWdhY3ktdHJ1bmsKKzYyNDIxIDYwZjQ0NTZmYTMzODNlMDc4M2MxNDE0NTFlMmYzNmI3MDZiMzFlMzQgbGVnYWN5LXRydW5rCis2MjQyMiA2Mzk2NTMyN2IzZWY2NWYxYmM3OWYxOWQxODQxN2M5MjA3OTM5NzIwIHB5M2sKKzYyNDIzIDYzMjNiZGMyZDY3MTFmYmYyYWQ1Y2NkNzFjZmVlYzk0ZWQxYjc3ZWUgbGVnYWN5LXRydW5rCis2MjQyNCAwMjIyOTYwMzJkOGY2OTY0YTBmZDVjMjEzNjZlNzlkMWRjZGNiMjBiIGxlZ2FjeS10cnVuaworNjI0MjUgZmRkNWEwMTk4NzY5ZDMwNzVhOTM2ZThlODNhNzIxMmM5Y2M2M2ZjMyBsZWdhY3ktdHJ1bmsKKzYyNDI2IDA1MmZkOGYxY2EzNzFjNjg3MzM4MTAxZTY1OTg0NWNhYjhjYWU2ZjQgbGVnYWN5LXRydW5rCis2MjQyNyA0MDZlY2EyZGRiYmM0Zjg5ZjZmYWFjM2IzNDQ3ZDI3YWQzODljMGE5IGxlZ2FjeS10cnVuaworNjI0MjggZGYxM2NjYWE1YWU5N2MwMWQ4Njc5NzU0ODg1MTlkZDg4NDA2MDJjZSBsZWdhY3ktdHJ1bmsKKzYyNDI5IDYwNzc2MDYzMzliYjlmZDAyMjA5OTcwZWFkZWU4NmE2NGNlODM1MjggbGVnYWN5LXRydW5rCis2MjQzMCBkM2FmOWZkMWNmYWZmNjc2ODY1ZWI4YzZhNDU1N2EzYWQ4ZDJjOGI1IHB5M2sKKzYyNDMxIGQwYjhhOTBjYTI3MDlmNWZlOTNiMDg4YTk4NDkyZjJmYmQ2ZGRiODMgbGVnYWN5LXRydW5rCis2MjQzMiBiYjBmNThhZGM5MWNlMDcyMGYwOTM2ZDU5Y2ViZTNhYTFkMDk1YzIyIHB5M2sKKzYyNDMzIGVjNDg0OTBiOTY5YWJkZWIzOGIwNmUyNDk5MmQxMWU2NWYxZDRlYWMgcHkzaworNjI0MzQgMzg3NDljMDljNTU2MzUwMWQwNTExOGZmZDM1MWJhY2Q3MzJiMjljMyBsZWdhY3ktdHJ1bmsKKzYyNDM1IGFlNTU0ZTVkNmUwNmRiMzBmYTU2OTNhYmM3YmI0ZDk3MzQzMDEzMjQgbGVnYWN5LXRydW5rCis2MjQzNiBmNTE5NTNjY2U2YWIxOWM2MzIzNjA3NGJjNGEyODM5M2VlNWIyYTIwIGxlZ2FjeS10cnVuaworNjI0MzcgOThlMDcyZjIyYzRmM2Q2MjhmMTE2NDhjMGI3M2U0OTM4MGMzNTNkZCBweTNrCis2MjQ0MSAxYWNkMDBmMmEzODA3Y2JhNjAxZDg1Yjc4OWJlNWZlMmNkMWI0NjMxIGxlZ2FjeS10cnVuaworNjI0NDQgYjdkZjMwYWM1YjVhMjYwODg3NWYxNDM1OTc4MjljZDAzNDE0ZjAwMyBsZWdhY3ktdHJ1bmsKKzYyNDQ2IDA0OTI4NDcwYWQ4NjA5YTk4NDczZDIxMmRhYjg5YWFmYWRmNDI4NDYgbGVnYWN5LXRydW5rCis2MjQ0NyBiYWUyZjRmZWVmY2NjYWNhYWRhMTU5ZDBhMjk2OTVmMWY2ZTAwMTVlIGxlZ2FjeS10cnVuaworNjI0NDggYzQ0YjhjYTNmNGQyOTU4Y2E4NmJmMjNiYTcyN2QwYjVmOWMzZmZhMCBsZWdhY3ktdHJ1bmsKKzYyNDQ5IGIxMjU4MzY0MzEyOGVhY2Y4NTQ3NDg3YTM1MzNiMzM5ZDBjM2YyMzAgcmVsZWFzZTI1LW1haW50Cis2MjQ1MCA0MzRiY2NlY2E3ZGYwODkwZTQyZTJjNzYyYjExODA5YWI4MTRmMTBmIGxlZ2FjeS10cnVuaworNjI0NTEgMTA4ZmU1N2I5YTY4ZTFlOTc4ZjhkZmE3NjE5OWFiMmMwNGI4MGRlZCBsZWdhY3ktdHJ1bmsKKzYyNDUyIDJmMDA2NTQ0ODg4M2FiYzU5ZjVhMmZmZTU5MjQ0NzdjYTk4OGU1M2QgbGVnYWN5LXRydW5rCis2MjQ1MyAwOTQxZDc5ZWE3ZDZlZmI2M2UwZGQyNTc3YzUyYWNjZWFkZjdlODM3IGxlZ2FjeS10cnVuaworNjI0NTQgODhhOGRlZjU4MDA3NzdhZTFkNzdlMGIyMzRhMzc5YjQ2N2YyMzRjYiBsZWdhY3ktdHJ1bmsKKzYyNDU1IDY0MmQ1NzEyMDkzYjgwYjA4ZTRiZDIwOGZhYWU4ZjJiMTkwNDg0NTYgbGVnYWN5LXRydW5rCis2MjQ1NiA2NmI3OTkzMDY4YmRhMzFlZTcyMzkxMmNjYjYzZjc4NjI4M2Q5ODcyIHRsZWUtYXN0LW9wdGltaXplCis2MjQ1NyBmYjNjYjA0MTk1ZTBmODIyYjA3M2RmNzU1Y2FiY2Q2OTJkNDgxYmU2IHRsZWUtYXN0LW9wdGltaXplCis2MjQ1OCAxNDQwM2E1NDI1OGZjNGU4OTU5NWY2YzNkZTFhYWMxODAyMGU5YWQxIHRsZWUtYXN0LW9wdGltaXplCis2MjQ1OSAwYzU4MjRiMDAyNjMzYmE0NjE1ODAzMjYyNzVlNGQzYjljNDZiOGJkIHRsZWUtYXN0LW9wdGltaXplCis2MjQ2MCBkN2ZlZmIzNWU5OTNmZmM5NDc0MmIwOWQ5YTdlODc2MzFlN2IwMGUxIHRsZWUtYXN0LW9wdGltaXplCis2MjQ2MiBjMGNkYWNmMDdmNTQwZDkyYzhlYzAzZGIyOThkOTliZWMyYmU5YTdkIHB5M2sKKzYyNDYzIGZlZDcyZmE5NjdiZjVhNGEzMWQ2NzI2YTA4ZmE4NDVmMzM0ZjNkZjMgbGVnYWN5LXRydW5rCis2MjQ2NCBhNzQ2NTQzNTIzNjZlZjM4NGY4MTE4MzI0MTU0MDRiYjU4NDY4OTcyIHJlbGVhc2UyNS1tYWludAorNjI0NjUgOThkY2FkOTA5MmE4ODllZjQ3YTkxNGYzZDU5MjQ0ZGZhNjJlYTIzNyBsZWdhY3ktdHJ1bmsKKzYyNDY2IGM5ZGU2NzA1YmQxMTI5NzVhNWEyYWIyNGE5Yjg5ZTM4ZWVkOGMzMTEgbGVnYWN5LXRydW5rCis2MjQ2NyAyZTFlYTYxYzk0Y2M3ZjE3MjhlODllMmFiZjNmMTdjNzhiY2E1OTJlIHRsZWUtYXN0LW9wdGltaXplCis2MjQ2OCBlZDI2N2M2OTg5YjZjY2I0NmM1NTg4Y2FhNzUyNzI2OTcyOTkwN2VjIHRsZWUtYXN0LW9wdGltaXplCis2MjQ2OSAzYzZhMjVlNGRiYjVmMGY5NjNiYjFhNjk4OGNmYTJjNTIyZjZiNzk2IGxlZ2FjeS10cnVuaworNjI0NzEgMDdjZjI4NDgwYWQxZWM4MzYyYWM1MDJkOTlkMGQxMGUzNzE4NmE2ZSBweTNrCis2MjQ3MiAzZTliNGZhOTNlNWM0MjkxYzZmMjg1YmUwYmQxZTcwNGUxMTZiZDRmIHB5M2sKKzYyNDc0IDYyMWEyZWFjYzI3YzQ4OTkzYzYyMjgzZDBhYzYzZTcwZmVhMWQ3MmQgbGVnYWN5LXRydW5rCis2MjQ3NiA1ZTYzNmM5ZDYxYWU1NzVjZDZhNDVlODE1MzQ0NDczM2NkODE1YWY0IGxlZ2FjeS10cnVuaworNjI0NzcgYTAyMjU2MDBiZmYxNDk2ODhhNWIwZTJiNTJmNzlmNTQzMTU2ZTUzZiBsZWdhY3ktdHJ1bmsKKzYyNDc4IDNlOGEwM2E2NDk3ZTE3MTQxZDNkNmJiZjE2NDY5MTVhZWU2MWU4OTIgbGVnYWN5LXRydW5rCis2MjQ4MCA0NTkwODNjNmJlMTUzZWJiNWZkYTZhMDM2ZmNiNmViYzQ1NzA4OTkwIGxlZ2FjeS10cnVuaworNjI0ODEgNGZmOGRmYWVjM2ZjNmRiOTQzYzc5Y2U2M2NiNGY0ZjhhYjcyZmQ2YSBsZWdhY3ktdHJ1bmsKKzYyNDgyIGE1MWIzMjkyNDViMTQ0ZGFiZjhhZDgxM2RhNjk0YWMyMTU5ZmE2MDQgcHkzaworNjI0ODMgODVkNDY3MTU2NWM4NzQ5Y2Q1YmZkMzhiNWNlZDY4YjdmMGI1Y2JjNSBweTNrCis2MjQ4NCA5MGUyMTQ2Y2I4YTMwOGEzMDEyZTczODAxNTdjYWMxMTgyOTRhYTM1IHB5M2sKKzYyNDg1IDk1OTQ3ZmRmNDBhZTQ4YWVkMGZlZmEzOGQ0YWZhNGUwZGU4MjUyZmUgbGVnYWN5LXRydW5rCis2MjQ4NiBkMWZiNDlhZWM3NjUxMDQ0YzllODBlNjIwMGM0NDA1ODNiYjU0YmZlIGxlZ2FjeS10cnVuaworNjI0ODcgODg2NGRmYTk5Yzc2MDJjZThmMjk5MWFhNTVhNTA1MjBkNTgxYzEzOSBsZWdhY3ktdHJ1bmsKKzYyNDg4IDM1MTE5YjAzNjg2ZDJkNDlmMzFjNDQyMzM4YjE5Y2QwODFhOTcxODYgcHkzaworNjI0ODkgMWNmM2IzNGRmNmM2MGVjMGQwNDA4MTg3YTY2ODEyZjBkMjhkODkzYSBweTNrCis2MjQ5MCA2NmM4YmQxYmVkZjMyMzJkZjBlNGEyZDJiOWYwMGUxM2M4NGQwNjUzIGxlZ2FjeS10cnVuaworNjI0OTEgOGI3MThmYzE1ZjNkNmI1MjMxNjJhZDJlODA1ZjQyMWMyYTA1MzlkYiBweTNrCis2MjQ5MiA1YmE2Y2JiY2FlZTczNjQ1M2M5YWJlMWI5YTA5Y2M4YmMyZDQ4NjA3IGxlZ2FjeS10cnVuaworNjI0OTcgMDRiZDc2ZTkyMDY1NDMyZmUzZjk3ZjMzNDkyODFlNTczYzkxZGVlYiBsZWdhY3ktdHJ1bmsKKzYyNDk4IDY4OTg2MzU1MjM4MDczMWZmNDdiYTkzMmJkMjgyNjUxMmNiMGYyMzcgbGVnYWN5LXRydW5rCis2MjQ5OSBjZTYyMGNjOWE2YTg2OTQ5ZDIzZDg1YjJjOTUwODJiNjRmMTNhNmU5IGxlZ2FjeS10cnVuaworNjI1MDAgOWUwNWYxNWY5MjFiMDEwY2RmNTA5Y2QwNGNmNzVjOWViYjQ2YTcxNiBsZWdhY3ktdHJ1bmsKKzYyNTA0IDBjN2NhNDcxZmI4ZDc3OGJjYjM1N2I5MWRjYjI1NTNkZjNjYmNmNzggcmVsZWFzZTI1LW1haW50Cis2MjUwNSBjNzM4MjgwNjIwMzEzMGJhNDExMzQ0NTM4MDc5MjNmMmE3N2U1YmE3IHB5M2sKKzYyNTA2IDJhMzFiYzI4YzEwZmZmMGFkODM2MzNkNjZmZjNiNzFjNWU2MGJjYjcgcHkzaworNjI1MDcgMGUxMTg1YmZhMzEzNGNkMjQwMWU1MDk2MDY1ZjA0ZmQxMzk3ODA3ZiBsZWdhY3ktdHJ1bmsKKzYyNTA4IDBjZmM4NDViODUyZDgyNGExZGU5ZTNmMGUwZjg1YTFjNjZiYTNiZTkgdGxlZS1hc3Qtb3B0aW1pemUKKzYyNTExIDUyMzgzMjdmNDViZDQwNDJjNzZiNWQ0YjhjZGNjYWY4ZGZmOTQxMTUgbGVnYWN5LXRydW5rCis2MjUxMiBmZmVlY2JlYmYzY2E3Y2U3NmIwZjg4YTVkNzYwMDkyZmRmY2YzYjMzIHB5M2sKKzYyNTEzIGViMjc0NmU4Yjk4MzMwZGUxYjEwMmYxZmFmMTM4NTNiOTVlZmRhYzggbGVnYWN5LXRydW5rCis2MjUxNCBhZDM0MTc1MDM2MzZjZjdlZTU3MTA5MmIzYmZiZWFjNDQ4ZDg5MzY5IGxlZ2FjeS10cnVuaworNjI1MTUgMzYxZDc3NmQzODBlYjk0MjczYzRmNDNlZjU5NWNhNmI3NTQwOTliZSBweTNrCis2MjUxNiA0NzIzM2ExN2U5NzA3OTc0ZWFlZjQ4ODM0YzAxZDMyNjU4MWJiOTc5IGxlZ2FjeS10cnVuaworNjI1MTcgZDU4ZWMzOGU2ZGIxYTk1OGIyOGE1M2ZmY2ZjMzJhMDFlOWJiMzU1MSBsZWdhY3ktdHJ1bmsKKzYyNTE4IGFlZjM1MDFkOGU3NzZlNjkwNzg0MmQwNDIwOTUxYWEyY2I4M2UxM2QgbGVnYWN5LXRydW5rCis2MjUxOSAwNmU2N2NiMjIxNTgwODZhMDRiOTQzNGUwNzA2ODdlZDdhMjY5OTVkIHB5M2sKKzYyNTIxIGRhZDg4Y2I2ZWYxZmRkNTk1M2JlOTZiZjgxNzMyMGE1NjQzZGRiZjUgbGVnYWN5LXRydW5rCis2MjUyMyBlZGIzYzNkNjYwMDY3ZWFlNTkyODIwMzI2YmI3MGI0NjlmNzg4Mjk1IHRsZWUtYXN0LW9wdGltaXplCis2MjUyNSBjNTg5NWI5ODFkOGYwZjRkYmIwY2JjN2NjMjRkNjRjYjc5ZDNhOThmIHRsZWUtYXN0LW9wdGltaXplCis2MjUzMSA2YjdjOTFkOWRjNTExYmYxNThiMTVjOTg0MjIzZmI2YTczNjY1ZjAyIGxlZ2FjeS10cnVuaworNjI1MzUgZjM2NWEwMThhZjViNjk0Njk1MDY3MjU4MTUyNDY1ZjVlMmJkZGMzMSBsZWdhY3ktdHJ1bmsKKzYyNTM2IDc2NzAwMDVkYThjNTY4YmViM2JlNDYxNGQxN2E0ZmI4OTI0ZGRiMTQgbGVnYWN5LXRydW5rCis2MjUzNyBkN2Q1NjcyZjVkNWUwNTBiYmMzZGU2ZWEwZjZmNjA2MTM4YTVkM2U3IHB5M2sKKzYyNTQwIDA2YWE4MDJiZmNiMThjNWIwMTllMmY2NTE0MzkxYjY1NDg0NTE3NTAgbGVnYWN5LXRydW5rCis2MjU0NSAzZDlkZGNlMmRhODUyMDQ3NzBjYWI3NTdmOWZhMzI2NDcyMzZjNTE2IGxlZ2FjeS10cnVuaworNjI1NDYgZWJjNDBlNTAwODY5OGE1NmQxNzEzNGI4NDU2NGQyMzE3NmI1MzI1NCBsZWdhY3ktdHJ1bmsKKzYyNTQ4IDE4ZTlhMzcyYTdhM2EwY2M3OTUwZjAxMjY3OTViOGE4OGU0NDg2YzggbGVnYWN5LXRydW5rCis2MjU0OSA4NGRmMDgyZGQyMTY3ODM1ODE1OGExZGNkMDVmOWI2ZGVlY2VhMWIwIGxlZ2FjeS10cnVuaworNjI1NTAgNTlkYjU3NWFlMzc0NjI1NjVmNDdkNmE0NWEyNTAzMzU1YTBhMzUxZiBsZWdhY3ktdHJ1bmsKKzYyNTUxIGM1ZGMwNWNkMzg1ODliYzMwYTdiZGZjYTZlZGFkY2QzN2I2ZDE3M2UgbGVnYWN5LXRydW5rCis2MjU1MyA1NzZmYTI0NDBhMGM4ZDhmODg5ZDNhZmE1NzZmZjA3NWI3NDYyYjA0IGxlZ2FjeS10cnVuaworNjI1NTQgZDJiYjVmMTMxODczOGIwMDY0NzVmYTdkZjEzYmM4M2E1NmVhOTIyYyBsZWdhY3ktdHJ1bmsKKzYyNTU1IDA3YTRlMTcxMDI2Mjk5Y2YyN2E4ZjBhMjM0ZDlhNTFjN2E4ZGJkMDIgbGVnYWN5LXRydW5rCis2MjU1NiBhNTE3ZWNjYzc4M2I5ZTBjODFhMDRlOTgwNzk5ZGRkMGVkZDE4ZGE2IGxlZ2FjeS10cnVuaworNjI1NTcgMWVhNGQxYjE4YWVkNThkNGI1YjNkYThkMDcwNTI4NGE0M2RlYzAzYyBsZWdhY3ktdHJ1bmsKKzYyNTU4IDRlNDc1NDhlZGQzNjZkMmIxMTZiZjNmMWJkZGZhOTFhMDRmNTIzNGIgbGVnYWN5LXRydW5rCis2MjU1OSBmZWY2ZDZiYTc4YTQwMTdhOGQwN2ZlMzQ5NzRjMzhjMzYwZjkxZDdiIGxlZ2FjeS10cnVuaworNjI1NjggYzM0ZjBlNjA5ZmE2YWU0MzBkZDFjNmQzNjQxZTM1NjhiNDk3NGU3NiBweTNrCis2MjU2OSA4ZDNhZDhhZjY5MmI1YTM0ZWZmYzgxMzc0MDc4NWExMDc3YjExZWNmIGxlZ2FjeS10cnVuaworNjI1NzQgNmZlYWQ0Y2Y3OTExMWRiMGZkZmNjN2JmMzRmMmFjM2Y3YzYwYjdlOCBsZWdhY3ktdHJ1bmsKKzYyNTc3IDdmNjBiMzM3YjA0OTJkNGZlN2UxN2I4OWI3MWYzMDZhNjIyMDVlNzMgbGVnYWN5LXRydW5rCis2MjU4MCAwMTU0ZGYyNTBlZjZiNTA5NGE1NWVmMjBkNWEzZjFjYzNmY2Y3ZGU2IHB5M2sKKzYyNTgzIGU0MmQzOTc3OGVhZDljY2I0NTg3NWJiMzZmMzhmZDBkYWM3NjQ4MzkgcHkzaworNjI1ODYgMzdkNjQ1YjAxNTIzMTZlNDFiMTE4NDAyOWQzNmJhNmVmNmIzYmIwMCBsZWdhY3ktdHJ1bmsKKzYyNTg3IDdiNDA4MWJlYzc4Mzc4OWY4NjcwNzdjYTc2YTg5YWNjN2VhYjk3YmEgcHkzaworNjI1ODkgY2JhMjgxYjE2YTgyNDVlMTU2ZmMxZjliMzgxM2I3YjQ4OTgyYjZkNyBweTNrLWN0eXBlcy1wZXAzMTE4Cis2MjU5MCBlZjQyMWEzNjVhMWQ0YzcwMzEyMWU3YzUxYjgxOWUwNTY3NDM1NmUwIHB5M2stY3R5cGVzLXBlcDMxMTgKKzYyNTkyIGQ2YzZmMzY2YjIyMDYyZmQzZGVmMmI0MmMxZjE1NDcxN2FjYzE2NDYgcHkzaworNjI1OTMgOGY1Yzc1OWUwMTljNjZjYmQwYTM0NTc5ZTdkNjhlMDA3MjY1N2Y0YyBsZWdhY3ktdHJ1bmsKKzYyNTk1IDNkMGQzYTY4MDg5NmNkY2U3Njc5MTYxZDQyMWNiMjFmYzgzMWQ0NTEgbGVnYWN5LXRydW5rCis2MjU5NyA5NDhiZWE5NmRkMjAxYjMyMGI2YThlYmI3ZmIwNjRmMDhiM2Q3NDQxIHB5M2sKKzYyNTk4IGFmMGVmMDQ0MDFiYjJlNzliNjRmOTI5NTk5MjY4ZjVhNmZmOTJiMzAgcHkzaworNjI1OTkgN2E2ZDc0NzRjZTZlMDhiMDdjYjZhNTNhZDhmNzNlY2I3MzAxNTA3ZSBsZWdhY3ktdHJ1bmsKKzYyNjAwIGIxMDE1NTZiOThlYWU2MDk5ZTk2ZGEzM2FiYThlYmY5NzQzYWQyMWQgcHkzaworNjI2MDIgMDFiZTFjOGYwMDZiZGQ1NjM3MWFiMDg5NTRkOTA5YWUyMzVhMTUxNCBsZWdhY3ktdHJ1bmsKKzYyNjAzIDAxNDUzNTcxOTY2ODg1YzNmNGY3ZWQ2NzNiYTFhZGNhMWRmNDViYTUgcHkzaworNjI2MDQgMzAzNmUyMWFjNjYxZGRhMDEzZTY3NzcyZDlhMzlkOTdhMDI4NjAxNCBsZWdhY3ktdHJ1bmsKKzYyNjA1IDE0MjM4MzRiNzJkOGQ4ZDI2ZTE3MzNiODc3NmMxMzJmMmZiYTYyMzMgbGVnYWN5LXRydW5rCis2MjYwNiA2OGNmYzUxZTQzMzFlZmUxYjc3ZWJiNWI1MTE4YTkyZjc0NzYxMWFmIGxlZ2FjeS10cnVuaworNjI2MDggNjVhY2M1NWYxYTY5MGZhNDA2ZjcwZDc2ZjczNmI5MDIyMzQ5Mzg0NiBsZWdhY3ktdHJ1bmsKKzYyNjEwIGE0MGQ3ZTYwNWY5ZTExN2E2NjE3OGZmNDdhOTdhYzJiNWM4ZDZkNjQgcHkzaworNjI2MTEgM2YyMTE3ZDMyNzFmN2MwZjYwZDQ1ZDcxMmFhMzg5Y2YzOTMxY2VhMyBweTNrCis2MjYxMiBlNDJmZTE5YmE2ZmRmMzdlOGYyNmZhOThkMzM0NGEyYmZkM2Q1MzA5IHB5M2sKKzYyNjE1IDg3ZDMxMzdjMzFkNDM2MTAyZGY3NmQwY2EzMmEzY2U5YTUyMzE0NzEgcHkzaworNjI2MTYgMzMxNWY2YjQ0NDAzMGI4Nzg3YmNlYTQzZDY2NTA2YzQ5OTgyNWUyMiBsZWdhY3ktdHJ1bmsKKzYyNjIwIDU2ZjgxZWE5Y2I3OTUwZDRlNjJkNWU3OTc5ZTZmOTE4Yjg5ODI4MzggcHkzaworNjI2MjQgODBiZDRiYWE2Mzk4MTkyMDM2NWE3MjU0NTczMzc0NDA5ZTQ5NjQ1ZiBweTNrCis2MjYyNiBlYTFhOWNmNzM1YTU2OTQ1NDMzNjhkODQxN2M1MjE5OGE3N2E4MDA5IGxlZ2FjeS10cnVuaworNjI2MjcgNTQ2MDZlYTlmNGM3YjkzMzg0MmViZDcwZDA1MGRjM2UzY2RhMGE0ZCBsZWdhY3ktdHJ1bmsKKzYyNjM2IDBiYTEyYzMyZTJiNTY5NTkwMDg1ZTIwMTBjOWVlMmVkMGE2MDQ2ZTQgbGVnYWN5LXRydW5rCis2MjYzOCBjNGQ5MGZhOTM1ZWFhNDEzMDVmMTk0MWI1NGZmYmI1ZTA0YWM3OGY0IGxlZ2FjeS10cnVuaworNjI2NDQgYTFjNmYyYWI1OTdlMDM3OTYyMTQ1YWIwOGRkMjE1YzZmYzBkY2I1ZCBsZWdhY3ktdHJ1bmsKKzYyNjQ1IDIwYjcwNzg2NjQ1OWFkYTc0YTA2MzkwOGI4YmNhZDk2YmRkZjBkNGYgbGVnYWN5LXRydW5rCis2MjY0NyAxZmZlYzJhNjg3ZTk1OTZmNDhhYmFhMzhmMzAzNGM5ZWM2NzMxYjk5IGxlZ2FjeS10cnVuaworNjI2NDggM2Y4NGU2YWUzNmRhZDI5ZTA5MGE0YjQ3NDZhMDNiZDQ4Y2IyNjY3ZSBsZWdhY3ktdHJ1bmsKKzYyNjQ5IGI1NWM1NTY3Y2M3NjczM2Y0MWRjMTE5NmViNTU1MWY1ZWU5ZGJkMTAgcmVsZWFzZTI1LW1haW50Cis2MjY1MCBlYjlkYWI5NTZhNmViOGI4MGU1YWQ0YWZkYzIzMzg2M2UxZDZkOWE0IHJlbGVhc2UyNS1tYWludAorNjI2NTEgODA2MzU0ODllOGQ4MzE0NGI0YzA5ZDdmOTQ0ZDI0MmU0NzFjMjU1YSBsZWdhY3ktdHJ1bmsKKzYyNjUyIDZkOTQ5NzU5N2M0ZjNmZWZiNGMxOGE2YzUxM2I3NzI5MjVjMmI0ODYgbGVnYWN5LXRydW5rCis2MjY1MyBjYzY2MDI5ZDJlZmU1OTM5YWJjMjY0NDk0MTU1N2JjM2JlODcyMmQ3IGxlZ2FjeS10cnVuaworNjI2NTQgZmQyN2FjNWZjYzgxODA4ZTlhZmQ5MWU2YWQ3NjZiM2RkZTY4MWFkZSBweTNrCis2MjY1NSAwMzJhMGEwZDNmYTk2MDZjZmUxODcxZDliZmY2YTIxMmU2YWRiYzU0IHB5M2sKKzYyNjU2IGE4NTlmODM1ZWY1M2RhOGEyNjFmNzI4MDE3MTcyZWRmODVhZDAxOTkgbGVnYWN5LXRydW5rCis2MjY1NyAwZmRlZjE0OTgxYThlM2JiMGExYzJkMDQ4N2Y1MmM3YjNiNzVhNWU1IHB5M2sKKzYyNjU4IGJkOTEwMDBjOGU3M2RjNzc2YWY4YjZjNjc0ZGYyYzhhOWRmNzVmNzMgcHkzaworNjI2NTkgM2Q0Mzc3NTIxNzBiNTJkYzA0MTc4MTE5Mzg3NmNlMGU0ZGIxYWE2ZSByZWxlYXNlMjUtbWFpbnQKKzYyNjYxIGJmYTgyYjQ5MzMzNTQwOTcxZTY4OWY0ZmQyNzlmYTIzMjE3OTAwYjUgbGVnYWN5LXRydW5rCis2MjY2MyAwZGViNGFiMDQyNmUyODdkOTZlMDhjMDIzOTU1YTQ4Mjk5NjI3NDQ0IGxlZ2FjeS10cnVuaworNjI2NjYgZWMwOWFkNWJlZDFhY2NhMTBjMmNkNjFmZDRiYmJhZjkxYWY2MjFmNiBsZWdhY3ktdHJ1bmsKKzYyNjY3IGVhNTk0MzA2ZWE4NTQyYjk4YmUwNjg2MzdiMDcxMmE3ODMyYTE3MjEgcHkzaworNjI2NjggNjhiMWQ0NGI1Zjc0YTc5ZjAzNjAyNTdkM2RjODc2MTUxMWI2YWQ0NCBweTNrCis2MjY2OSBlYTMwZjAzYjI0ZjQxZjgyMTUzN2I2ZjNjMmRiMGEwNGMwMGVlNTBjIHB5M2sKKzYyNjcxIDk0MThkYzRhN2I5ODVkNWNmYmJkY2I5ZDE1Y2JiODgwMjA2NWVhNzAgbGVnYWN5LXRydW5rCis2MjY3OSA1YmI5NDA2NWIwNzk5OWNlMmUzNDc5NjU5ZTdlMzcwNjE2ZjcwYWMyIHB5M2sKKzYyNjgwIDgzY2MwOTY4MjA4MWRjMDQ5M2U5MjIzYjg1MjcxMmZmYzhhNmU5MzIgbGVnYWN5LXRydW5rCis2MjY4MyAzMzkwZWI3NTkxZjYxMjhiM2ZkNjY0ODg2NzI0ZjcxOTI5YzgwMDY2IHB5M2sKKzYyNjg0IGM5N2UzNmFiY2RkNTk1NmY1YjM3ODFkYzY5MzNmZjMwZDc1YzA1YWYgbGVnYWN5LXRydW5rCis2MjY4NSBhY2IyYTkzOTQyOTZhNDU3NTE0NDE2MWEzMzVmODU4ZWIyNGE5YWI3IHB5M2sKKzYyNjg2IDE4NzJlMWRjMDM1ZmMzMjliOWU4Yjk5ZjIzYzNmMDdlYjA0ZmRlN2QgbGVnYWN5LXRydW5rCis2MjY4NyBiN2M2NmQzZTJlMjhkYjAyZDZjYzdhNzc4ZWJkNjczY2IyY2Q2MWUyIGxlZ2FjeS10cnVuaworNjI2OTYgYTk0YjlkYjkyMjNmY2QyMGQwNDkwZTU3NWQzZjQxNWUzNzc0N2M0MyBsZWdhY3ktdHJ1bmsKKzYyNjk4IGFhYTBhYjQ5MDEyNmUwMmYxODQwNTVjZmMyODA0N2QwNzNiMzZjMzcgdGxlZS1hc3Qtb3B0aW1pemUKKzYyNjk5IGRlNzZiZTAyZGI0MjViM2U2YTRmNjBiNzFmODYxOWZlYmE5YmJjOGUgbGVnYWN5LXRydW5rCis2MjcwMCA2ZGIzOTJhYzlmNGViMTQyYjRiN2RlNzQ2NGY0MWVkZjQ2MTAzMjgwIGxlZ2FjeS10cnVuaworNjI3MDEgYjkzYTA0MWNjMjIxM2U1ODlkNDJhNGU0YTc3MjJkYTRlYWFmZGIxOSBsZWdhY3ktdHJ1bmsKKzYyNzAyIDI4YjA5OWFjNGNkOGY3YjhjNzUxZTZkNDM0YmQ0Y2YzODIyNzNiMzYgbGVnYWN5LXRydW5rCis2MjcwMyA2YzRlZmU1MmQ1OTRkM2ZmNGZhMDFmYWJkMjg3Njk4MWRkNTFhZjAzIGxlZ2FjeS10cnVuaworNjI3MDYgYzA3ZjE5YWY1NTRhOWY2MzBkN2ViZmMxOTUwMmQ5ZjY0YWJkMWUzMyB0bGVlLWFzdC1vcHRpbWl6ZQorNjI3MDcgMmU0NjM0NDJlNTcwNjA0Yzk1ZGE4Y2I0M2Y2OTk5NzA0OTA0NmEwYyB0bGVlLWFzdC1vcHRpbWl6ZQorNjI3MTEgZmUzMDBhOTcyZmI4ZGYyODc1MDQ3NTY5NThkMDI5YjVhZWY4ZTg2MyBsZWdhY3ktdHJ1bmsKKzYyNzEzIDcxNzJlMTFlOWZjOGM2NzZkY2Y2M2ZmZDk5NTVmNWQyMDI1OTliNWEgbGVnYWN5LXRydW5rCis2MjcxNSA2NDM0MTVmOTFhNTBjOTJmZjkzNTc4OTkyZmE4YTY4NTE5ZDdlOTBkIGxlZ2FjeS10cnVuaworNjI3MTYgMDMxZGZlNDU1NTg1Y2NkZDA3ODk3YjhlNmQwMDRmNzljYTQyNjc5YSBweTNrCis2MjcxNyBjN2MyNWNjOTk2M2RkMzMyNzgzOGE1Mzk1NWVhODlmMjQyZWQ1Mzc3IHB5M2sKKzYyNzE4IDA1YTgxN2UyNWYyMGQ0MmNjNzBhYTZiZTZjZDc0NjUyZDJlMzc1YTMgcHkzaworNjI3MjAgZDkwNzFmYTgyNDRhZjM0MzM2NjlhN2M3MDkwZTZhNTc2NjA3YWViZiBsZWdhY3ktdHJ1bmsKKzYyNzIxIDhhOWI4YjNjZTJlMTIyMjUwMzcxMTBjMDY5NWRhMDE0MTdjODFhNWYgcHkzaworNjI3MjIgOWIxMGJmNjRmMTI0MzIxNmI2MzA3MTFjNWE4MjhjMzljMDg1ODA0YSBsZWdhY3ktdHJ1bmsKKzYyNzIzIDRjOTBiZThhNGQzODI3ZGU0YTQzMjVhNGRmYTlmMTQ4ZTJjZjE3M2MgcHkzaworNjI3MjQgOGUzM2YzMTZjZTE0MGRhOTc1ODYzZWE0ZTk1ZGNkOGEwYjU0MjFmZSBsZWdhY3ktdHJ1bmsKKzYyNzI1IDE1ZjFkMjMyZWFlOTEzODU3YjgyNGU4NzFhMWQzZTk3NjJkYmUyZGMgcHkzaworNjI3MjYgMTBlOGVmOTViMTFmOWRiNjE4NGU1NTQwOTFmYjhlZjUzOTcxZmNjMSBsZWdhY3ktdHJ1bmsKKzYyNzI3IDg2ZjczODM4YTRiYjcxNTAxZjAzOGUzOTQ0YzVlYTczNjliODg1OTggcHkzaworNjI3MjggNTViZjhkNjkwZTY3YWY0NjBiY2E4ZTVlNTNhNDY1NzRiMjg5Yjc3YSBsZWdhY3ktdHJ1bmsKKzYyNzM0IDRkZWQzNTc1NGNiNzIxZjQ5NjEyMjA4YTBlYjg4NTE5MDFmYWRkMzAgbGVnYWN5LXRydW5rCis2MjczNiAzNGE1MzgwZWUyNzVhZTBjYTE3MTcxNWE2N2ZmYWUwZmUwNWFkMmZmIGxlZ2FjeS10cnVuaworNjI3MzcgODhhMDk4MDRiYmEzOTQzMTVmZThhMzUzYjQwNzA1Y2U3N2Y5YzgzYiBsZWdhY3ktdHJ1bmsKKzYyNzM4IGI3NGEzZjk0NmE1ZTY3ODEyZTliMDJmNDkyMzgwMjgwZDEwMGY5N2EgcHkzaworNjI3MzkgZGFjMjE4NDNjZjUzNTE0YzU3Zjg0ZTk5ZmZiYjgzZGRlZTZmM2Q3MiBweTNrCis2Mjc0MCBlMTlmODdhOTg3OGMyODhkM2U4YzllMmQ4MTAzNzdjMTM2NjFjODA4IGxlZ2FjeS10cnVuaworNjI3NDEgOTFkNWYwODQxNzAwMDY4MTkyNjViMWQxMmEwZTI2ZTYzZDBkMDQ5MCBweTNrCis2Mjc0MiBmMmE0ZDhkNGYwNjM0Y2RiMmM2OThmNWVhNzQ3NzdkY2Y4YWM3MDg3IHB5M2sKKzYyNzQ0IDI3MjllOTc3ZmRkOWVhN2UzZWRhYzUzMzFiNjhmM2Y3ODI2MWI1NTUgbGVnYWN5LXRydW5rCis2Mjc0OCA3MTA2Y2E4NzFiZmQxYjY3NWNmNmViYzIxY2FjMDAwOTUyNDYyYjczIGxlZ2FjeS10cnVuaworNjI3NDkgMmYzNTFmYTUzYTZiM2YwZWFmZTg4ODZiOTRlMGRkNzM2OGE0NWU0NiBsZWdhY3ktdHJ1bmsKKzYyNzU2IDVhZThkNTRkMDk1MjhmNjU1NjE4MWQ1ZWJmYWFjNzExNzdmMjAyZWUgbGVnYWN5LXRydW5rCis2Mjc1NyAxMWVkNDA1ZDk5Y2I4NmYzYjVhMTc4NTg1ZTY5ZjMyZTk0NDViYTcwIHJlbGVhc2UyNS1tYWludAorNjI3NjQgMWU4YjhkZjRkZjgzMTUzZGRhYjI3ODc2OTljZWI2YTk2ZWIwZjE4YyBweTNrCis2Mjc2NSBjODJmNjNlZmJjNDA4MzFiNDljYmJmYmM4MzIxYWJlZDE2Nzc3Nzg1IHB5M2sKKzYyNzY5IGIwZmI1NWVjZTg5ZmMzZWNjY2M1NGJjY2U1NzQ0MDBmNWEyODFhZTkgbGVnYWN5LXRydW5rCis2Mjc3NCBmODQ2OGJmZDQzNTc2MDRjZjQ5OThiOTg4YzQzNDBlYjdjZjc1ZTRkIGxlZ2FjeS10cnVuaworNjI3NzUgZGRkNWY0MjMzMmI5ODU2MzI1NzZjNzgyZWJiNTJlNmU0ZjNlOGYzNSBsZWdhY3ktdHJ1bmsKKzYyNzc4IGNkYTgxNmMzYTFlNDZiZTNhZjJlYjdkOGNlMjkyZGU4MjhkMWYzNGQgcHkzaworNjI3NzkgMDJhODE0MmQ4M2RiMjgzNzM3ZjUxZjdmOTk1MjcwOTQxNzk1MWY1OCBweTNrCis2Mjc4NSA5MTMwYjQ4YTcxMzBlMTVhNDljNGUxMjg0MjZiZmYxNjE0ZGViZDk0IGxlZ2FjeS10cnVuaworNjI3ODcgNGIxOWI0MWVmNjA2NGM1MzA1Y2FjYjc3YTVjYmFkZjhiYzhiZjZhYiBsZWdhY3ktdHJ1bmsKKzYyNzg4IDFhMmRiYzg0YmRmY2YwYThjNGM2ZGUwYjA3ZGI0NGViNmJmN2UzMWUgbGVnYWN5LXRydW5rCis2Mjc5MCBmNDA2NGI1YzhjNWQyZGY0YTBkYTZmMmY1MDQyYjZlZjkxYWMxOGZmIHB5M2sKKzYyNzkxIDkxMWM4N2Y4ZWQ1ZTU3M2E2ZTBmODU0YjM3Mzc5M2QxNWJiMDYwYmEgcHkzaworNjI3OTIgMGMyZTRiNTVmODBiOTdiNTZkNzFkMDM0ZDEzMjkxMWQwMjQxNjZjMiBsZWdhY3ktdHJ1bmsKKzYyNzkzIGZmZGI1ZjQxMzlmZTdhODcyYjJkN2MwYjhkM2ZjZjIxZTZjYjA5ZDkgbGVnYWN5LXRydW5rCis2Mjc5NCAxMGIxMzlkODc4NjAyMWMwOTVhYjM1OTUzZmI4OGEwNTZjYTdiNDg2IHB5M2sKKzYyNzk3IGNlZWE0MGRhYTg0OTA3OWI1MTVlZjgwMjRmNDQ2MDQwODBhYzE2Y2EgbGVnYWN5LXRydW5rCis2Mjc5OCA3YzgwYmFjN2Q3NzY1NmNiNzFkOWNhNjFjZTE1ZmI3ZWZjODQ3NGQyIHB5M2sKKzYyNzk5IGM4YWEyMjBjNmNlZWY5NThhZDVkOGQ1MzIzMWVmMGU1ZjcyYTk2OWEgbGVnYWN5LXRydW5rCis2MjgwMCA3MzdhMThiMmRlZDM2NWYwYmJmYzkxMGNhMThmZGMyNDZkYzc0NWYxIGxlZ2FjeS10cnVuaworNjI4MDEgNzRiOWM4NTM2MWY4OGUyNTNiOWY3YmI0OWRmYWUwNDY2MTliOWFkNyBweTNrCis2MjgwMiA3NDg2YzI5ZjkzYTNlZGQxMTIwNjE4YzU0OWY2YjAzNGM0ZTNkNjZkIHB5M2sKKzYyODAzIDBlNWE5NmZjOTQyMmI0ZTEzODU1MzcxYTQyYjM5MDI4NzNkZDlmYzEgcHkzaworNjI4MDUgNzdkZjk5MWVhNjM3OThmNWM5NWMzOTFmN2U0YWQ3MTQwMjM4OGUyMCBsZWdhY3ktdHJ1bmsKKzYyODA2IGQxOTY1MDg4Yjg1ZGQ3Mzc2ZjBiNzg2OGFhZWNhZjhiZDQ1NDFlYzEgcHkzaworNjI4MDcgOGI5MzFhNzk4MjdhOWI2NWUwMTMwYjdmYzlhMDU0YzdkNzYwMGE2YSBweTNrCis2MjgwOCA1ZmJkOTdmMWJjMzVlM2M5NmUzYWZiMGM1MmFiZjRkZGQ1Y2JhMTNhIHB5M2sKKzYyODA5IDM4Yjk0YzA5N2E1NTI2ZjVhYmFjMDE0Zjc0YjVmOTBmYWRmYzdlMTQgcHkzaworNjI4MTAgZDdlMjAyOWIzY2E0YmYxMTMwY2EzOTFiNDZkYWViOGQ4NzI2MTYxZCBweTNrCis2MjgxMSBiNjM1NDYyYTU3OThmMDNlNTUyZjFjYzEwMTU2YWE1M2UwM2EwNDJlIGxlZ2FjeS10cnVuaworNjI4MTIgODE1NDY0OWM1NTE2NjIwMWUwOWQwYjcwNGI0Y2FkMmU3ZTM5NTE3NSBweTNrCis2MjgxNSBhOWFjZjE4YThlNTc1MTFjN2JlYTg4NjRjYTM5ZTE4N2NjMDM1MDkzIHRsZWUtYXN0LW9wdGltaXplCis2MjgxNiA0MzA3ZWVkMWY3M2JlOWM0YjdmYjljNWQ3ZGUzMjk1Mzg3NTgwMzhmIHRsZWUtYXN0LW9wdGltaXplCis2MjgxOCBiOWEzYWJmNTlhNDU0NmYwMDJkNjZlNDE4MjgwMTEzYzU2OTc5MGUwIHRsZWUtYXN0LW9wdGltaXplCis2MjgxOSBhNjRmNDBiNjIxNjk2MzBjNjdmYWY0Y2JjYWJmNjQ3ZTFjNjkzYjA4IHRsZWUtYXN0LW9wdGltaXplCis2MjgyMCBiYjk1NmY0ZTMyNmVjNDYxNTVmMThmNWNlYjIwNjVkMzAyNmZhNjAyIHRsZWUtYXN0LW9wdGltaXplCis2MjgyMSBjNTM4MTUyNjYzNjBmMDVmZjVhMWVhMDY1NWM1M2JiODFkYmFiNGI2IHRsZWUtYXN0LW9wdGltaXplCis2MjgyMiA0YjAzOWVkZmVlNmJlZTQ5MjY4MWU3ZDg1MmY1MDM4YzIyZDU3ZTdkIHRsZWUtYXN0LW9wdGltaXplCis2MjgyMyA5NzQ3ZDExMzcwODNjYTUzYjc1NmFmZDBhMjEwYzY2OTY5Y2RiZDVjIHRsZWUtYXN0LW9wdGltaXplCis2MjgyNSA2N2JhOTNhZDAwZmRmMWI5MTM1NGRiYTExODMyYjM2YzRiZjY5ZjE3IHRsZWUtYXN0LW9wdGltaXplCis2MjgyNiAyYzQ1NThkZmY1M2Q5MDY0YTc3YTEyYjcyMDAyODhmYjJmNmFmODljIHRsZWUtYXN0LW9wdGltaXplCis2MjgyNyA0MWU4ZTcyYWE5ZWRiMWIwYjk2ZDA5YjgxNmRkMzI3ZmEwMjlmZjQxIHRsZWUtYXN0LW9wdGltaXplCis2Mjg0MSBlZjQ3ZGYyNTQyM2M3NmFhY2E0NDI1NGRhYjA5YjZiYjdjOWFlNWU0IGxlZ2FjeS10cnVuaworNjI4NDIgOTU3MGJjMTI4MzE0NDRhM2I4MzM1NGY3ZThkNzc4NWNiYzBhMWZlMCBsZWdhY3ktdHJ1bmsKKzYyODQzIGFkNzc1MWE5NTgwOThkNzEzZDZlZTgyY2ZjMTQwODZhMTgxMmYzMDIgcHkzaworNjI4NDQgODMxYTMwY2QyM2EyODIwNTJkOWIxMTJlOTcyODA4NTVlOTU3OTUxMSBweTNrCis2Mjg0NSBlMzQ1OWFkMDEzNjg2Y2JlY2U3MzY2MWViZjQ4YzY0YjViZDAzN2EzIHB5M2sKKzYyODQ2IDZlYzU2MDhiNjYzYzJjZjI4MDMwYTRiNzBjYzQwMmRmMzEzMDI4MTIgcHkzaworNjI4NDcgYWNkNjgyNzdjNGRkMDEyN2E3OTgyMTAzNTg0MDNkZmY1YmJkNTU1ZSBweTNrCis2Mjg0OCAyZWYxYzM4MTEzOGQ1NzNjZmQ5NGJmZWU5NGE1ZjZiMTFlZWY3Mjc3IGxlZ2FjeS10cnVuaworNjI4NDkgMGU3NmE4ZjM0NzY5NWEzNzUwZmI2ODExZDU1ZDZkYmJkNzc4Y2JkNiBsZWdhY3ktdHJ1bmsKKzYyODUzIGIxMjRlMzE2MTRlZDk2OTMzNmY3NWUxZTI3NmFhNTkzNjA3OTBmYjkgbGVnYWN5LXRydW5rCis2Mjg1NCBjNTYyNDAyYzFjMDgyOTkyNjliZWYzNjg3NTZjODIxYjhiMWNiYTFmIGxlZ2FjeS10cnVuaworNjI4NTUgYzY3YzA5NTU0ZDIzMDIwNDNmYjM3ODA5MWNkMDMyNTNjMzNiN2U5MyByZWxlYXNlMjUtbWFpbnQKKzYyODU2IGUzNTkzNTQ3NTE1MzM3N2Q2NzI3ZDY0ZTZjNTJmNzJjM2I4NDAxNWIgcHkzaworNjI4NTcgODE0ODA2OTI2M2FhMWYwMjEwY2RkMGQ1OGYxNTkzZmJhZDRlNmVmNiBweTNrCis2Mjg1OSBhZWQwNDIzOWEzZmMyNTg1MjA1MmRjNDZmMzkxNmQ2MDViZmUzNjUxIHB5M2sKKzYyODYwIGNlZjVhYTNlZDcxMzM1NDkwNDcyODY2MTg3YjYzOWZiNWE2NjdmYTggcHkzaworNjI4NjEgNDhlOWZiMGE3MjE3OTk4NzdmMjZlZGFlZjAxYWM2ZTYwMjliNjgxMiBsZWdhY3ktdHJ1bmsKKzYyODYyIDZiNzk3MGFhMGRkYTMyN2YyNWE4MzE1MTk1MWQ4YTdiOTY2ZWFiY2MgbGVnYWN5LXRydW5rCis2Mjg2MyA5ZjQ1OTc5NTU4YTliY2Q4MjE5NmYyMmM3MDA5ZDE1ZWVjYzM0NDRlIHB5M2sKKzYyODY0IGQ5ZDRjZWY0MjFhMmRjNDRhYzQyYWI4ZGM4YjFmYTA4YjRmM2RlMDUgcHkzaworNjI4NjUgZDQ0MzBlOTAyMWMyMjNlOGZlNTA2MDI5MjZiN2MyMWI1OWNmZGE5ZCBsZWdhY3ktdHJ1bmsKKzYyODY2IDcyYmUxMzkwYWU1ZjQ3YmY3ODliNGE3M2QxNWZhZWQzNzE4NGVmZGEgcHkzaworNjI4NjYgZTY5Zjg0ZWU0ZjNhNTUwMjJlMmYyNTJlY2UyYmFkOTQwN2QyMTU1ZiBweTNrCis2Mjg3MSA5ODFjYWYyNGRkOGE2YWFkOGMzOTI5ZmYwYWRhZmZiM2RiOTVkYjA0IHB5M2sKKzYyODcyIDE2ZGRkZmUwYThjZGM0NjYyM2UzYzdkMDU5Nzk2NDEyMWYxMGU2NTMgcHkzaworNjI4NzMgYzhiNDlkOGMzOTY3ZTdhZWRhNGFlNzk4MDMwNjE2M2FiZTE5NGUwMiBsZWdhY3ktdHJ1bmsKKzYyODc0IGYyZDc3MWYzNzBiZDhlMGJhMzU4OWZhMTZlMWRjZTJhNGJiOTZlNTcgcHkzaworNjI4NzYgY2E0MTAyNDE0YTM0NWNlZWM4MDliZmE2YjUyOTBlZDYzYjY4M2QyOCBweTNrCis2Mjg3NyAxMTQwN2MxZjY4Y2E0ODRjMjhiMWQ5NDY5MWRiNTg4NTdhZjNhMWZhIHB5M2sKKzYyODc4IGVhYWM1NjE5YTIxZmZjMDU0OWNkZjNlMzJiMjY3ZjNiMzdiODFkMWQgcHkzaworNjI4NzkgMjAyOGZhMmZjMWRkZmNjOTRhZTJlMTNmMWNmYWM2NzMyM2Q2Y2E3YyBsZWdhY3ktdHJ1bmsKKzYyODgwIGU5NWRkMjVkZmIwY2JlMDgwNWVlOTM4MzJhNjUwZTBmMzU1MGQ2MzAgcHkzaworNjI4ODMgNWM1YjM2M2QyZjE5YTgxYTllYWM1ZjM4MDE1MDQ2YmY5OTA4Y2JhOCBweTNrCis2Mjg4NCA5ZmJjMmRhNTRlMjkzZGU5MTMxYzUwY2M1NDE4ZWExMjZhYjQ3ZDM5IGxlZ2FjeS10cnVuaworNjI4ODUgMDQ3ZGEzZjZmZDdmZDk0YTJlYWQ3NzE1MDY0NGI4ZmY4OWEyNmMyYyBweTNrCis2Mjg4NyBjYWM2YTFhMzM0ZTA0Y2IwNmM4NzdjOWJlNTZkNDViODY5OGU2MzA3IGxlZ2FjeS10cnVuaworNjI4ODggYjcxMDlhMGNkMGY5ZjU3YTUxZmY1YjQ5MjVkMGNkNGEzYzA1Y2U3YiBsZWdhY3ktdHJ1bmsKKzYyODg5IGE3NjcwYWZiNWMwOTJkOTk2MTMzMjE0ODk0MTYwYTdlOTNhOTcxODYgcHkzaworNjI4OTIgNmFkYTE1ZDc5OTBmNzI2ODk5NzdmNDNhNDljMTQ4NzUyMzFlMDA2ZSBsZWdhY3ktdHJ1bmsKKzYyODkzIGI1YTY3NzI3OGI1ZmE4NTg0NjdjMGFlZGYwMjc0Mzc5NWFhZjBlNzkgbGVnYWN5LXRydW5rCis2Mjg5NCBiOGU3YTE2MTYxMWMxNGYzMmRiYmJkODM3NTM3Y2QzYzBlNDk2ZjdjIGxlZ2FjeS10cnVuaworNjI4OTUgMWZiMjQ2Y2IyOWFlNDExZWU4ZmNhODJmNWQxODEwZDVlNTY2NzAyNiBsZWdhY3ktdHJ1bmsKKzYyODk2IGRmYjBiYjVmYWE2YmM5ZjYzNGIwNDEyMzc1ZGJmYmI5OGFhMzc2MTQgbGVnYWN5LXRydW5rCis2Mjg5NyA2YmU2NDcxOWE1MDlhY2NiZjQwYzVmZDczYmQ5MTE4ODM1YzNhM2ExIHB5M2sKKzYyODk4IDJhMTczYThiM2IxM2Y4YWUxNDViN2FkNDg4ODE5ZDcyN2JlNTYzZjUgcHkzaworNjI5MDAgZmIxOTg0ZmIxODJkM2I5NjExMGUyYzE3MWYwNmVhMTFiODRlODcxOSBsZWdhY3ktdHJ1bmsKKzYyOTAxIDIyNGNhZDgyMzU5MDVmMDFkMThmYTU1ZmU2NGIzMzhjNjQwYjliMjIgcHkzaworNjI5MDMgNWU0YmQ4MjQ5ODQ2MjRlYjI5OWViYmZmZDIyZmFkZWU4NmYyYzhhYiBweTNrCis2MjkwNCBkYzU3M2VlMGQ5MDQxN2I3OWUyNmU1ODFjYWEwMzJjYTk5MWYzYWQ2IGxlZ2FjeS10cnVuaworNjI5MDUgYTEzMGNmNDhhZDY3Y2FlZjFiMTEzMzk0ZWU5MDgzNmM4MTA1MjQzMyBweTNrCis2MjkwNiA1ZDE1YThiY2M0NDU2NjI1N2E3M2FjNTNiZTFmZTdlZDU1MjRmMjdlIHB5M2sKKzYyOTA5IDhiZmUyYjA2NTI3ZGFkMDM0ZDM4ODJiZGRhMjhjZTU5Mjg1ZjcxMWQgcHkzaworNjI5MTIgYjkzMDA1NzEyZTM5OWZmMGMyZWVkYWZjYTNlYjcyM2M1MmRiMjQyYSBsZWdhY3ktdHJ1bmsKKzYyOTEzIDViNmVhNGRiYTQ0YzljY2ZlMWViY2IwODRjMDVmOGIxZGYzZDIwN2IgcHkzaworNjI5MTQgNGQwMDdhMzFiNDY0NTNkNzNjYjc1ZDQxM2MzYzQwNzQ5MmMzNTZlOCBsZWdhY3ktdHJ1bmsKKzYyOTE1IDM3Njc1ZjBjMzM4YTY2MDVmMWU1OTkzMDkzNGNjNjIxYTcyMTQ0ZjQgbGVnYWN5LXRydW5rCis2MjkxNyA4MTZjMjFjNzYyYzg1M2Y5NjYwOWRmNzgyZTFiMjNjYjQ4NDMwMWM0IGxlZ2FjeS10cnVuaworNjI5MTggZWJjOWY2NmZlOTkwMjkyODYzNDlhMzQ4YjRjNjkxZTljZjY0NDBlYyBweTNrCis2MjkyMCA5NDZmYmFlNGJhYWI1NjZiNDk1ZWVjOGJmOThlMzgxYjYzNTc5M2FkIGxlZ2FjeS10cnVuaworNjI5MjEgNGJkOTg5N2RjZTA3Y2ZhMTFiOGI0NWNjZjU2ZjQ1ZmUyODQ3YTY1OCBweTNrCis2MjkyMyBhODliZTI1MDcyZTNkZTdmM2U4MWQ1MzM2M2RiMjdhZGYxZDI0MmFjIGxlZ2FjeS10cnVuaworNjI5MjQgNWZiOGE1MDRmYTk2ZjExMTViNzVkZDU4MzFmNGJlMTNmOGYwMTE5YiBweTNrCis2MjkyNyAxNWM3MjIwMjg2MTU1YzFiN2I3OWJiNzM0MGY4ZDY0ZWQ0YmM3ZjNjIGxlZ2FjeS10cnVuaworNjI5MjggNTRlNjIyZWYzNTAwZTI3ZmI3ZDljOWZjZGFkNzk1YWJhMTM4ZTJjZiBsZWdhY3ktdHJ1bmsKKzYyOTI5IDg0YWYwY2ZhN2I4MWQ5NDM0ZTc0YWFiOWZjMjI3OTU5MzlhODIwZmEgbGVnYWN5LXRydW5rCis2MjkzMCBjZDZjNmRlYjdmODRlNGVjNDQzMzEyY2Y3Mzc5OGRkNDhmOGUxNDQwIGxlZ2FjeS10cnVuaworNjI5MzEgYzI0NDM4ZTlhYjU0ZmJhMzZlYTIwZWNkNTFjMTUzZTBkMGRlMGZjYSBsZWdhY3ktdHJ1bmsKKzYyOTMyIGNjYzMzN2I0NWIyZTMxYTAwY2Y0MDEzZTk4YzY0NTg3YTI3YzFlZmUgbGVnYWN5LXRydW5rCis2MjkzMyBlZmI5NzlhNDk0N2QwMDM4YzlkZjBjZjNiMGFhMDg1NzgzM2FiZTI1IGxlZ2FjeS10cnVuaworNjI5MzQgZjNmNmE4OTVhNTU1ZGYzNjk1Y2M5ZWRmZmRmY2VmY2VlYjAwMGUyMCBsZWdhY3ktdHJ1bmsKKzYyOTM4IDM5NTVjNTAyY2ZhMzcyMmZhMDk5NDIxN2Y1MjI4NDQwZDVmMTZlZTUgcHkzaworNjI5MzkgMTdjZDYxMmIwNmRhMWY4NGYyYzEzNjVlMTAwNmQ4YmVjMDg5MzRlNyBweTNrCis2Mjk0MCA4YjY3Njg1YThiYzNlZTY3OTIzYTFiNzg4MWEwMzdjN2YxZTgxYWQ1IHB5M2sKKzYyOTQzIDhiYWViYTEzYWU5M2Q0M2YwZTYzNjkyNmJlMjkyZDY5MWU5ZTVlZjEgbGVnYWN5LXRydW5rCis2Mjk0NCA1MWJhYmU3M2MwY2EzNWY2YTM0OGNmMTIwYjA0MDZkNWFlY2E4ZmE3IHB5M2sKKzYyOTQ1IGE0NDQ5ODVhNjc1YWU0ZWFlNDYwZDI5NzZiYjY5OTgyZjk3ZWIyMGMgcHkzaworNjI5NDYgYjQzMjUwNmVmY2U3ZmQ5NmVlOGFmNjgzMTQ2ZDhmYWExYjIyYjY4OCBsZWdhY3ktdHJ1bmsKKzYyOTQ3IGUwY2E3NGIzNjRlNDliNTU2MThhODIzZDJiZDllZWI0MTU2NGQ5MTEgcHkzaworNjI5NDggZmQwYjg5NGJjOTBjNTJhNDRmNTZlZjI2ODcwNzY0N2U1OWY0ZDFlZCBsZWdhY3ktdHJ1bmsKKzYyOTQ5IGJkMjk1NGM0OTE2OThjMTQyYmFmNTM2YWQzZDFhYzk5MTQ0Mzg1Y2YgbGVnYWN5LXRydW5rCis2Mjk1MiA0NDk1NGQ2NWE3M2E0NWRkNTI1YTMxYjRkZWM1YWM0NDk2YzFjZGE1IHB5M2sKKzYyOTUzIDg3ZDg1NGJjMWU0NWU3MWYwOTc0YTg2ODJkMTA5ZTljMDA2MmEzYjYgcHkzaworNjI5NTQgZGVjNTMxYzBhY2Y5YjYyZjlmODUzNDk2MDkxOWM0N2VkYjczZjk3NSBsZWdhY3ktdHJ1bmsKKzYyOTU2IDM3YjI3YTI1YTg0NzA0YThhYjA4MmE1ZDRmOGU5MDdiZDFjNDA2MTEgcHkzaworNjI5NTcgODAyNTE5ZjA0NzU0NWQ0MDExMjk3MjFkNzQwM2UzNmJmNzNkM2Q0MSBsZWdhY3ktdHJ1bmsKKzYyOTU4IGZlOWI5N2RiZDIzMmQyY2RhZGY4NzlhYjdmNjZjYWZhM2E1MjI0MzMgbGVnYWN5LXRydW5rCis2Mjk2MCA0YzVlZTFiMzgwNDUwMTdlODY1N2IzM2ZhZDVlYTFjZjY1MzNhNTY0IGxlZ2FjeS10cnVuaworNjI5NjEgOTFmZmQ5ZjNjY2VjOTAxMjA2ZGEyNzllYjFmYWE0MGJkZDU0MGZmNCBweTNrCis2Mjk2MiBjNTZlODNkMDhkMGIwNTgzNTM0YWI5NDBlYTAwMmFiN2U5YTk1YjE5IGxlZ2FjeS10cnVuaworNjI5NjMgMDdhMzVjOWE1ZDNmYjhjZmRjZjQ4ZWYxYjZhMzE3OWQwYjljMzg1MSBsZWdhY3ktdHJ1bmsKKzYyOTY0IDQ5OTg3NWNiNmJhMmM0MGQyNjA0MmZiZDA0YzZkOTViMzEzZTU5N2MgcHkzaworNjI5NjcgNDM5MjY5NDg1NTY5OTA5NzE0NzA3NmZiN2Y3YTdmOThjN2Y4N2YzNCBsZWdhY3ktdHJ1bmsKKzYyOTY4IDU2NzljZTY2ZTc0Yjg4MzhkNWRiNzdmN2M5MmFiYWVjOGQ2NGEwMTcgbGVnYWN5LXRydW5rCis2Mjk3MCA4ZGU1MWRhYTUwNmZkODU0OTZmZmE5MjBmY2IxZGM1MDEwNjQyNzVkIHB5M2sKKzYyOTcxIGFhOTI1MGU2YzQwOTM0ZTA1ODA1YzE4ZjJmYzYwMmQzMjllZGYyM2MgbGVnYWN5LXRydW5rCis2Mjk3MiA3NmVjNjc1ZTIwYjhjYmZkMTUzNmY5YTlkYTNlNjNkZTYwM2U1N2E2IHB5M2sKKzYyOTc0IDIzZWMzM2Y2NjczNjBlNGExNTA5ZTAxYTA4MGE5MTBjNDI4MDBlZTQgbGVnYWN5LXRydW5rCis2Mjk3NSA4ODRmODQyNmNjY2Y3ODkxMGNiOTNiZGMwNTg5MGEwZGZjYzAzMmMwIGxlZ2FjeS10cnVuaworNjI5NzYgZDBmNGMyNDY2OGYyMzdkYTY2M2MyZjQ1OGEyNTg1ZGQyMDI0YzAyZCBsZWdhY3ktdHJ1bmsKKzYyOTc3IGJlOGM0M2EzZmQ2MmZmNjI5NzQ3N2E2YTI2NWZjZDRmNDVkYzYyYmYgbGVnYWN5LXRydW5rCis2Mjk3OCAzODkzOGI3MTQwMTgyNDA2ODI0ODdiYzBmNDA2ZWNlZGQ3MjdlZmE2IHB5M2sKKzYyOTc5IGUzZDRkZTkzNTBmYjRkZGFkZjg5YjZmZjVkZGJiZDc3ZDBmOWJhYTEgcHkzaworNjI5ODIgMmVjZmM3MDEzZWI1YzMzNmNkMTBiMjM5Y2ViYmE3YmJmZjU4NDU5NSBsZWdhY3ktdHJ1bmsKKzYyOTgzIGExZjQ1OGIwMTQ5ZjA5MDIzYTdhNzBmNmU0NDY0YTIyYjdjZjhiMTMgbGVnYWN5LXRydW5rCis2Mjk4NCBhZDdkMzE5YWRmNzY3YWM2YTU3NzUwYTUzMTZiMzBkZjdjYTkxNWE1IHB5M2sKKzYyOTg1IDQxYTk3NjQ5ZGU2MTc1N2E1YTcwNjk4MTBjZDI4NDQ0NDc1YTQ0YjIgbGVnYWN5LXRydW5rCis2Mjk4NiAxMzJmODJkMjQwMjhlZDdmNzg2NWU3NzA3NjlhNWFjNDE1NWU0MDQxIGxlZ2FjeS10cnVuaworNjI5ODcgNDUxNjc0Zjg2ZDc1NDRlYTIzNTBmMDY0NjU2YzczYzk4ZDgzYzliNiBweTNrCis2Mjk4OCA3NjU0ZWI1ZDBhNjcwMWQyM2I0MjIxOTJhYTU3OTAwOTI1MDUyY2Q2IHB5M2sKKzYyOTkyIGJjOGIyMjY2MTFkZDQzZmJiYjhjMzMyODIyYTJmYzRmZWE1OGRlNDUgbGVnYWN5LXRydW5rCis2Mjk5MyBiMzhlZDdjMWNhYjFjMTllNzJkYzM2MDdkYTc5YTJhYWEyMmUxMGMwIGxlZ2FjeS10cnVuaworNjI5OTQgMmQxZWY5NDg3YzMxNTM4MzJlOTcwODc0YjE5ZDg4NmU4NjA4MTg5YyBsZWdhY3ktdHJ1bmsKKzYyOTk1IGJlM2M5Zjg4NjZlN2I3MmM5M2E5YTQzMDEzYjM0YzdmMGRmYjdmMTUgbGVnYWN5LXRydW5rCis2Mjk5NiBhYWM3YTIyYmVmODQ1ZTJhNWQzMzQ4Y2QyNTAzYTk2NTIxZDVmZTFhIGxlZ2FjeS10cnVuaworNjI5OTggMjcwZjU0ZTgyZDIwODFiMDBhYmNkYjE1MjBkNWJiZTM1YjlmY2IwZiBsZWdhY3ktdHJ1bmsKKzYzMDAwIDc2M2Q3MmQwMDAyNTdhMjg1NzRhY2Q2ZGViOTQzYjc3OTgzNzJhZjYgbGVnYWN5LXRydW5rCis2MzAwMSAzNDE4ZjJlYmNlODcyMzJmMzBjNjZlYjA5YjgyYjAwZTNkZDhmMzU5IHB5M2sKKzYzMDAyIDZiNGJmZjI4YzdiYTJiNWJlYTg0NTBjNDhmNTM3NjQ2NmFhZmFlYjUgbGVnYWN5LXRydW5rCis2MzAwMyA4N2RlNzU4ZGJkNjQ2NTViNmI3OTYyNjkwZGNmZjJjMzkyYmFjNWE2IHB5M2sKKzYzMDA0IDMzZDRlMDNiMjNiYWRlODE1MDU5YzU4M2ViMzJkMzk5Mzc3ZmJjZjIgbGVnYWN5LXRydW5rCis2MzAwNSAxMWEwYjIyMWYzNzI2NDMwNzQ3ZDgzMTEyNzQ2OTY0ZDJmMDBlNjE1IHB5M2sKKzYzMDA3IGI2YjJjZWE1ZDMwNmY3Yjk3MTRhZTkzMDI4N2EyNDI0YmNhY2ZmYWEgbGVnYWN5LXRydW5rCis2MzAwOCA0MjhiNjZjMDRkM2E5MTFiMjM5NDg4ZjMzNTNkZjhhYTFlNzBkNDNlIGxlZ2FjeS10cnVuaworNjMwMDkgNjBiMThiMzlhM2EyZTgzOWY2ZDVmMmVmMzJlN2E2MWJhNjRjYzAyZSBweTNrCis2MzAxMSAyZDA0ZTU2MDEyZWRjNmZkZDg3NmQ4YTAxYmNlMDI0MGU4ZDA3YWU1IHB5M2sKKzYzMDEyIDZlZGFhYTc3YWYyNzY4NmUyODM3M2I2YzFkMjRlNTc4ZmU5M2ViYTEgcHkzaworNjMwMTMgMGMwMmUxNWE3YzFmY2QyMDU0YWEwNGRkN2RhNTdmZTNkZTE2YjQzMyBsZWdhY3ktdHJ1bmsKKzYzMDE0IDJjYTdhMjc5ODE2MWM0MGM2YTgwMTE0MTFmOGMzZjdhNjc2YzMyYTQgbGVnYWN5LXRydW5rCis2MzAxNSBiZTFlZDYyZDhiODBjN2QwNzA4ZDhmN2NhNDliMGNjYmFhZWM5YmRjIHB5M2sKKzYzMDE3IGM3ZDUzMGU4YjdmNTNiY2QzZWMxM2NiYjA0NTU0NGIyYmMyNDZlOGEgcHkzaworNjMwMTggZjJhNjNlYzUwNTVlNmMyNDdlODAwZTQxY2E1ZjFiYzdiZjc5Y2E2YSBsZWdhY3ktdHJ1bmsKKzYzMDE5IDkxZmFhZTQ5Y2JlYmFhNWM4Mjk5ZDM3M2MwMGQzYTc0ZmZjOTIzODQgcHkzaworNjMwMjEgMWU0MjdiYzBmODE4OTRmYzUxYmQwMDgwZGJhZjNhMTg2NGI3MTFlZCBsZWdhY3ktdHJ1bmsKKzYzMDIyIGMwYzU3YmU5OGVlZDZjNDRhMzQxM2IwYzdjMTBjZmRkM2U4MzlkMzYgcHkzaworNjMwMjUgYzE1Y2YwMTQxNWY5MjU2NWVhNGFiNjk2NmVlM2MxZjYyYzBhMGEwMSBsZWdhY3ktdHJ1bmsKKzYzMDI2IGQ4ZTAwMGVjNzc5NmJmYzYxZTYxNTE5N2QzZjBmOTczOWYyOGY2NjggcHkzaworNjMwMjcgODkyZjliMjk1OWM5ZDE2NTYxYzVlODAwMTRkNDAzN2VkY2M2NmE4OSBsZWdhY3ktdHJ1bmsKKzYzMDI4IDM4NDk2OGQ0ZDY1NTg2ZTBlYzI3YWNmYmFiYzRkMjI4MzE5ZjUyYmUgbGVnYWN5LXRydW5rCis2MzAyOSBhYWFlNDg5YjlkODFjMWI0ODQyYzQxNDNlYTUyNmE3Njk5ZTFmMzE4IHB5M2sKKzYzMDMwIDJjYWMzMWZjMTdjMjFmYWFlZjM5ZmE0YjExM2UyMDNlMTRiYmJkODAgbGVnYWN5LXRydW5rCis2MzAzMSBkMjM0NTExOWEyZGFiZGIxOWYwNTZiZDFhN2I4NzE0OTEwMzQzZTEyIHB5M2sKKzYzMDM3IGZiMTRmZjA1N2MwOTY3NjZmZGQ2NmRkZTU1ODY5ZGQ3MWM0MjlhYTYgbGVnYWN5LXRydW5rCis2MzAzOCAxNmYxNmZjZTUzMDI1ZjYyYzE4NmJmODBmOTdiOWUwMjNiOWQ1ZTU1IGxlZ2FjeS10cnVuaworNjMwMzkgZjYzODhkYzAxOWNjODJmNmNiYzg1MWM0ZjU4ODA1YzVjNDhmMzM2MSBsZWdhY3ktdHJ1bmsKKzYzMDQwIDIyNGUwN2I2NTg2MWMyNTZiZWMwZjA4M2YzMWNkMGFiZTlhYTdlMGEgbGVnYWN5LXRydW5rCis2MzA0MSA5YzE4YmFhNzYwYWQwZDBkZDkxOGVjYTc0YmU0ZjgzYmVmOTJlZjIzIGxlZ2FjeS10cnVuaworNjMwNDIgYjQwODI3ZWI0YjgwYjc2ZWMzYTA4MWQ1Mjk1ZjQ0Y2U1YzAwMWQ1YyBsZWdhY3ktdHJ1bmsKKzYzMDQzIGZkZWY3MTc5N2U4MzIzMWJjYzIzOTQ5Y2FiZWQ3NTI3NDgwM2NkNTUgbGVnYWN5LXRydW5rCis2MzA0NCBkZDU1MTNiNDcyZGM5N2Y5MDlhNmRhMzI1YWQ5OGZiYjU1ZDFmZTBiIHB5M2sKKzYzMDQ1IDUyNTY2YjQ0NWZjNzU1NzAzMDE1YzlhYzg1NmQyNjQyNzYzMzJlNTcgcHkzaworNjMwNDYgZTVhZWIzZGYxNzRlNDk3ZWY1Y2YzNTQ4M2UyZjlhYzMxMWM0Mzk1MyBsZWdhY3ktdHJ1bmsKKzYzMDQ5IGQ4ODUwNzU4ODc5MDQ4OWU1Yjc5ZGZiYmJhMGIwZDRlODgyNWNhYTMgbGVnYWN5LXRydW5rCis2MzA1MCA4Nzc3ODMzMzNlYWVkZmU1MWEzMDFmM2ZmNmJmZmE1NDhlMGM3NjRiIGxlZ2FjeS10cnVuaworNjMwNTEgNmJkNjY2MDc1ZTE0YzhkN2U2OGI5OTQ3ZDBlMzNiMGJkYThhOWYzZiBsZWdhY3ktdHJ1bmsKKzYzMDUyIDVkYmJjNDQ5ZjAyYmUyMjVmOTA2OGYwZDA5NTEyNTg1OWM2MzkwOGEgbGVnYWN5LXRydW5rCis2MzA1MyBjN2QxYTE3MGM5NGMzNWNkMDE2NWRlNjVmYzgwNGFkZmUyNWZkMDEyIGxlZ2FjeS10cnVuaworNjMwNTQgYzIxMzZjMTRkY2Q3OTQwOWQ4ZTEwMmZkOGMzOWI1N2Q2YWFkYWQ3ZCBweTNrCis2MzA1NSBmNGU2MWRjZGI2Zjg1YTRkNzM1OTc5YWNiMThjM2QzNWZjNWI1YjkyIGxlZ2FjeS10cnVuaworNjMwNTYgYjI5YjQ2YTQzOWQ5ZjBjOGU1NWJlNDAzYjkyMTA2YjgwZjY2NGQxNyBweTNrCis2MzA1NyA5Yzc2NWY0ZWQ1MTIzNDUwMmY0NjFhMmIxZTVhZGYxZjNkYzFiZTIwIGxlZ2FjeS10cnVuaworNjMwNTggYWZhZWVkYWRiZGIzNmIzOGMxY2E2NWE3NWIzNzliNGZiYTA3ZWJlMyBsZWdhY3ktdHJ1bmsKKzYzMDU5IDRmYjZjMGMxNjlmZjBiNWNjMjQyMzk4ZTc2NjJhMDI1N2JhYjQwNGMgbGVnYWN5LXRydW5rCis2MzA2MCAwZGY2MTYxOTNiOTg4MDZiNDU5ZGQ5YzZkOTdjODlhMTFiODFhMGM2IGxlZ2FjeS10cnVuaworNjMwNjEgYTczZTg3ZjE1ZmZhNzQ5ZWUyODdhNzkwMzJmNDI1NjU4MDQzNjcwYSBsZWdhY3ktdHJ1bmsKKzYzMDYyIDA4MWYyYTY2MjYzNDY1YjU5NTdkYTIyNzEyYWRiMTQyOWE1MGI2MzQgbGVnYWN5LXRydW5rCis2MzA2MyA3Zjc3ZGI5NTBjYjQ0ZWZkNzZhN2RhZWRkNDVjZmU2Yzc2MDBkNzI2IHB5M2sKKzYzMDY0IDgxOGNhZWJlMzczMzExZTE5NDgxYzgxODg3NWFjNTU0ZTg0NTg3ZTIgcHkzaworNjMwNjUgMDc1NzJhODI1NDBmZGRlNzE3MGQzM2Y3OWMxNmQzZTU1OThhYTQwYyBweTNrCis2MzA2NiBiZTg3Yjc3MjY4NjYwYjVkODU4YzVlNjExZjBhYmNjNjA4NTFlMDA3IGxlZ2FjeS10cnVuaworNjMwNjcgZGVkY2U3Y2I3YTVkZmY3Y2EyMjBlYjUwZDY2MWY1NGQ0MjYzMGRlNyBsZWdhY3ktdHJ1bmsKKzYzMDY4IDFmZGZiMjlmNGZiODM2MDljZjZkYzkyYjA0MGRjZjZlOGM0ZmVhOWYgbGVnYWN5LXRydW5rCis2MzA2OSA1Y2NkMTY1ZjMwYTQ1MTIzMjliYWUxNjJmNDgzYzE4YTZkMWNjYzNhIGxlZ2FjeS10cnVuaworNjMwNzAgYjE3YjI5ZTYwZTliYmQ4ZGJlNTA4MjhhYzgyOGE4MjU1MzMzYzBiNSBsZWdhY3ktdHJ1bmsKKzYzMDcxIDQ5ZmYxZmMwMGM2YzUzNGUxZjQxYWZjZWEyMmI2NDY2MjYyMzhkMWQgcmVsZWFzZTI1LW1haW50Cis2MzA3MiA2N2U0MzYzZWEyZTA2NzRlN2ZkNDYyM2U5ODg1YzgzMGE3NzI0OTVjIHB5M2sKKzYzMDczIGFiMTkwZjcxYjkxNzY5NTYwNTFhMThmZWM4NDllMGI5ZTZkN2RkY2YgbGVnYWN5LXRydW5rCis2MzA3NCBlMzQwMWYzMTZhM2I5NGI4NmRlNDVkMzE2ZmRhZTY0ODZiZjk4NGU1IHB5M2sKKzYzMDc2IDIxYWUyYjY1YmJiYjM2OTdlMTY4NWE0NTA5NTM0M2ZkZTNiNTc0NDcgbGVnYWN5LXRydW5rCis2MzA3NyA3NjY4MWE2MzA2YTgwNzBlMDE2NTIzY2NkMTM3M2FlZDA4ODkwODJhIGxlZ2FjeS10cnVuaworNjMwNzggMjA2NzAwZDc0OWYwZjMyMzlkMDNlMmFjMzg2NjE3ZjQ3YzdkNDJmMyBsZWdhY3ktdHJ1bmsKKzYzMDc5IGJkMmM5NWMxNjVlYTRjMGQzZGVlZGUzMjI1MGE5M2JjMDJmNWM3ZWQgcHkzaworNjMwODAgYTk0OTVhM2ZlMmUwYjc4M2RhZDUxYWUwYTBmZjBkZTg3ZDQyNTc4NSBsZWdhY3ktdHJ1bmsKKzYzMDgyIGUwM2Q4ZDNlNjc1NDRmNzdkNzM5MGVjYWNkOGMwMjYzODI5NDdjMDYgcHkzaworNjMwODMgYjcxZmNmZDk4NjZiYWVlYjBkZWRmOGMyODljNDhlOTM0MzAxYzBhYiBsZWdhY3ktdHJ1bmsKKzYzMDg0IGFiZTNmMzA1ZjZjOTYwMWRiMjk4MDg1MTg4OWNmYzgzMmE3Y2NlODEgcHkzaworNjMwODYgN2U0NjllM2NlYmRhNmUwOTgzNzEyOTIwZGZjYzU5NzFkZDdlODc4MCBsZWdhY3ktdHJ1bmsKKzYzMDg3IGI3MTBkNzE5YTA4MmFkNTk1NWE2NTg4MGFjZmI2ZmFlZTBlNWRjNDEgcHkzaworNjMwODggODExMzEwNDZkMWIwOTI5MGZjYmMwYzQ5NTVmMmIyOWJjZTQzOWIyYyBweTNrCis2MzA5MSA2YzE1ZGI2Y2U1ZGFmNjRiYzNjY2JmZTM3MWU4MTMyZTE4YjRlOTFmIHB5M2sKKzYzMDkyIGVkMmMxODg4ZTE0MzAxNDFmOWJlMzBlNGRmMzgwYmI4Nzg2YzhiODkgbGVnYWN5LXRydW5rCis2MzA5MyBlZjRlYzk2OGZkYjY2ODBlZjMzOGYwMzZjNjIyMTNiMzA3ZmQ5ZmJjIHB5M2sKKzYzMDk0IDc0MWIyNjY3YWMwYjcxNGY2YWZkYzExMjJiMzc5OTBjZDgwM2Q3MDYgbGVnYWN5LXRydW5rCis2MzA5NSBmM2QwZWMwYjczN2ViOWMyYmZhZTc5ODIyNTM2NGViN2FjOTEwYWE4IGxlZ2FjeS10cnVuaworNjMwOTYgY2NjNjYzYWE0YTc2NDRjN2UxYjVlMWExYzU0M2ExNTkxYWEyODUwNyBweTNrCis2MzA5NyA2YTE5YjliZWExOGU3YmQyZTE4ZjBiZWFmMDRmNWYyOGY4OTRkZTQ2IGxlZ2FjeS10cnVuaworNjMwOTggOGVhOGZiMTRkZjcxNTNkYzcxMWMwNjI3ZDllMGVlYWU3ZTcxMTZmYiBsZWdhY3ktdHJ1bmsKKzYzMDk5IGU5NDU3NDQ1NWQ5ZGQwNzczYThlZDlkOGQ1M2JiYzJmZWYzNjcyZGUgcHkzaworNjMxMDAgYzhiNzcwMDdhMWMxNDQzM2VjZmZlZDM4NmI5ZjlkMWYwYzE3MDc2YiBsZWdhY3ktdHJ1bmsKKzYzMTAyIDIyY2RiNmVjM2U1NjkyYTI1ZDI1YWZjOGI2MzEzMDFhMzAwZjg0MzMgcHkzaworNjMxMDQgYTQyNzdjMWM5OGE4NTQxMmY4OTFlMDYzM2QzMDFlOGVlNGE4M2FlMiBsZWdhY3ktdHJ1bmsKKzYzMTA1IGQ3YzIwN2I4MGM0MGFhMjZmNmEwMWE0YzE1ODk5MGM4MWU5NGYwMzMgbGVnYWN5LXRydW5rCis2MzEwNiA5MDY4NjA0NWZiYThkMTJmNWJiMGNkNzRmMGIyYWNmYWRjNmU3M2UzIHB5M2sKKzYzMTA4IGE5ZmY3Mjg5MDgyYjIwZmM5MmEwNzFkMWQwN2UwYWI2Y2FhM2MxYTEgbGVnYWN5LXRydW5rCis2MzEwOSAwZDQ5NTc1NDBjOTZlOWY5N2QxOGViMzNmZjQxNGIzOGI0M2FhYmIyIHB5M2sKKzYzMTE0IGMyYWI3YTA2ZWQyNGJlYWQ0ZWM2MzZlYzVhMjQ5NWQ0MzJjYTU4MDQgbGVnYWN5LXRydW5rCis2MzExNSA1MjZkOGNmN2E5MjA2ZTNmNjQ0MjJmMzFhYjNlNzczZjdmNDRmOWMxIHB5M2sKKzYzMTE5IDRjODM3NTU3NGFhOWU3NDYxMGE4OTYyOTg0NWQ4MWVjMzZjMTI5NWQgbGVnYWN5LXRydW5rCis2MzEyMiA2MjJhMjU5NjcyMjhkOWEwODFiNzgzYzgyYWNmNzE1NDcyOGZjOTJiIGxlZ2FjeS10cnVuaworNjMxMjQgZjBhMjg1ZmMyMDFkMDA1ZTUwM2I0NmQ4MDAxOTIzNmMzODI2YWMyMiBweTNrCis2MzEyOSBiZGUzOGE3YjIzMTgzOTkyZTgxMjg5YzNkY2JlNjRjZjBhZGIyNGE4IGxlZ2FjeS10cnVuaworNjMxMzIgYTM3NWIxMzQ2ZWIzN2UzMjQ2ZWVmNTk2YzhkMzgyMGY2MWEwNmJhOCBsZWdhY3ktdHJ1bmsKKzYzMTM0IGRhZmRlMmVlZTNkMGQ4YTEzZTk2OTJhMTU0NDEwYmJjOGI3Yzk1YjUgbGVnYWN5LXRydW5rCis2MzEzNiBjOWU1ZmFhNDgyZThiYWYxZGU5YmUyNWUwZWM2MjllN2ZhNmJmYzQxIHB5M2sKKzYzMTM3IGIzMDVhOTZhNGJlMmU0NGFhMTE2ZWRlMGQ0MWYzMTVlYmRlZThkZTcgcHkzaworNjMxNDAgYWNhNWMxZDFjNTY5NGEzZWMwNTZmMTAyM2IxYTU5OThhNzIxNzJjYiBweTNrCis2MzE0NCBhOWFhMzQyYTM2N2E5MjJkMjM5ZmNlYmI1NDk0OWJkYjRjMWMyODBkIHB5M2sKKzYzMTQ1IDJmMTQ1MThmMzAwYjhmYzMzYTllYzY2MThmNjY0M2Y0ZWJhZmIzMmUgbGVnYWN5LXRydW5rCis2MzE0OSA3OTkzMjFlN2U3YmI0MzI5MTc2YmEzNzFkNzFhYjFiNWU1MjFjOWQyIGxlZ2FjeS10cnVuaworNjMxNTAgYzFhNjhmNTQwZDViYzNiM2M1ODczZTdkMjBhODM2ZTUwMzc2NGZhNiBsZWdhY3ktdHJ1bmsKKzYzMTUyIDgzN2RlMjRhYzFmN2E1ZmJmNTc3ZGE4NGI3OTJlNGJhZjlmZWNhYmEgcHkzaworNjMxNTMgNGFjOWNjMWQ3Nzk4NGJjOWMzZWNlMzMxMGMwMDUxZDllMWQ5N2M1MSBsZWdhY3ktdHJ1bmsKKzYzMTU0IDY0ZDE5ZjI4NTFlMWJkZjIxMzMyMjBkNTE2NDQzYjUxOTA3N2I4M2YgbGVnYWN5LXRydW5rCis2MzE1NiAxMjgwYjhlYzlkYTM4NTFmNmJhYzlkMGMyOGExMmIyOTNjZTU2ZTI0IHB5M2sKKzYzMTU4IDVhN2NjZDY1ZTU5YjNkMmVhZjc5YzUzZDhjNTdmOWMxMTJmMDI3OGQgbGVnYWN5LXRydW5rCis2MzE1OSAwODljOGQwZGY3NzQ0NGQxNTk2NGU4MjhhNDIxNDg1MjVkZGUxNTgwIGxlZ2FjeS10cnVuaworNjMxNjEgYmEyM2ZjMTU3NjE4YjM5OTcwMzBhMTc2YjNjZTc0ZmNjYjg5MzU0NSBweTNrCis2MzE2MiAzOWY2ZjdmMTcyY2E4ZTU0N2MyODg3ZmJjNDRiMDZhZjZmYTRjZjhlIGxlZ2FjeS10cnVuaworNjMxNjMgZmQyM2U2ZDE3N2U5ZGE2ZDdiNTM0YTU1ODVjODYzM2JkZDhhMTJjNyBweTNrCis2MzE2NCAwN2E1M2JiODJiYWEwNWJkYjE3YzgzNjRiZmRjNTdiMGQ2ZGE4ZTQyIGxlZ2FjeS10cnVuaworNjMxNjUgZGYxMWFmZjA5MmNkODRlOTVhYThhYWY4NWY1NDVhYzI2ZmNmYzllYyBweTNrCis2MzE2NiA2YTc3OGMwYTUxN2U2MGViZDgzNzY2NDRjY2U5NDc2Y2Q5OWY0M2RkIGxlZ2FjeS10cnVuaworNjMxNjggYjNlYWMzYTdmZGMzYzc1MTg0OTU4ZjE1ZjU2ZDYwYTU5OWU1ZjY1ZCBweTNrCis2MzE2OSBlOTk3MzkwMzY2MDY5YTQ5NzRmOTU5ZGFlNTcyMmY4ZDY0MDE1YTRhIHB5M2sKKzYzMTcwIGQyODEwYjhhZWQ2ZDFmYzA3OTE2NzMwN2RkYmFlM2E2YzU0Y2NmMjYgbGVnYWN5LXRydW5rCis2MzE3MSBmZjliMjA1NzcyMmNiNTA2YTk0OGZhMDlhYjBiNmVkNGRlMzIwYjNiIHB5M2sKKzYzMTczIDkwOTE2MzdlMzJiMWUzYjdkMjgxMWE2ZDU3NDFmOGUzOGEzYzdhYzcgbGVnYWN5LXRydW5rCis2MzE3NCA5OWY1MGFmNjkyZDAyOGMxMDQxN2EwOTRhZDU2OGU4MzI5MzQ2NGQ5IGxlZ2FjeS10cnVuaworNjMxNzUgOTJkMDBmNWYzYzBkMDQwMTk1ZTdhOWIzODc5NDM5ZGUzNzAxN2QwNiBsZWdhY3ktdHJ1bmsKKzYzMTc2IDlkNDZjMjg5ZDE2NjA1MWFkYzY0NmRjMjc5ZDJmYTA5NTJhOGFlNWUgcHkzaworNjMxNzcgZTY0MDM5YmJmZTI2ODY3ZTk1ZDRjZGViZTdlYTExZWUyYmYzNmVhMSBsZWdhY3ktdHJ1bmsKKzYzMTc4IDFlNTczYzJjZDliZTYxYTE4MDM1OTQ4MjFmMWUwZDY5MjI5OGEwODggbGVnYWN5LXRydW5rCis2MzE3OSAyZWJlMjcyN2ZjOTJhZTQwN2M2NzQ4MzVmMDFjODg5MTYwOTUxNjVkIGxlZ2FjeS10cnVuaworNjMxODAgOGE0OWY4ZWY3Zjg5NDIzM2E4YTEwZWRlYTdjYjhiZTcwYTkyM2I0YSBsZWdhY3ktdHJ1bmsKKzYzMTgxIDg5NDE0NGIxNzNjOWY2MmUxNTBkMGQ5OTI1OWYzYmY2NjliNThhNTYgcHkzaworNjMxODIgMDNiMTIzM2JmNWZlMDBjODZmZGU5MWU1OWQxMWE1Yjg2MGQ2MzBjOCBweTNrCis2MzE4MyA4MjZhZmY5NWNmMGJkMWIyYjQ4Yzg0Mjg1NDhmZjA5M2UxMTdmOTNiIHB5M2sKKzYzMTg0IDY1Yjc1Zjc4MzhmM2I3MzBlYzU3Y2EzYjgyOTgxZDkyNTY2MjkwZTkgcHkzaworNjMxODYgNTFhZmQ1NjZkYjJiZDQyNjNhNDg4N2IxYTlkN2IxMGM4ZjE2NDc1ZSBsZWdhY3ktdHJ1bmsKKzYzMTg3IDZkZjAzOTRhYmJmMWJkYTJiMGQ3ZTU1ZmQ0NzY1ZTZiZmFhMmFjYmEgbGVnYWN5LXRydW5rCis2MzE4OCAyODQ1MWI1ZTgxNmZkYmEwMmJlYmI2YjZiODUzNzIyNWVkNWFkODFmIHB5M2sKKzYzMTg5IDYyNjU4YjBhY2EwODIyZTRjOTY4NTdjMWUzY2EyOTk5ZGMwYmViNGYgbGVnYWN5LXRydW5rCis2MzE5MCBlZWFkMDhiOGUxZmQwNjNlMWQzZWI0ODU1MzI2ZWY4ZTdkOGVlNTExIHB5M2sKKzYzMTkxIGE1OTY0ZWU2NjE5M2E0YjAyYWRkMDkyYTg5Njg5NTA5NTVhMjg4ZDIgbGVnYWN5LXRydW5rCis2MzE5MiBkYTZlZjExMGMzNzM1MjQyZDcxNDI2Y2FjMWI0ZWI0MjJkZWU0NjA0IHB5M2sKKzYzMTk0IGU4Zjc0ODQ3MjczMGM3YmRhMDk3OTUxZjhkNjJjNjkyYzhmOTZiNTcgcHkzaworNjMxOTUgOTExYTdiY2RjMTdlNTkxMGNkM2ZlODg4MDQyOTFjZjg5ZWZmNmM4OSBsZWdhY3ktdHJ1bmsKKzYzMTk3IDc1NTY4Y2RkYTk0NDcwOWZiMTY3NDY5ZmY3NTUyMDdhNGIzYjM5ZmMgcHkzaworNjMxOTggMzg0YzU0ZmFkYWEyZmJkM2Q0NjY2ZDJjZWY5ZjliNzc1MzQ2YjlhZCBweTNrCis2MzE5OSBhOTU5NGE1Y2RmN2ZiODYyYjQ0OWJmNzg2OGMyYzVmZGM3NDI2ZDZhIHB5M2sKKzYzMjAwIDU1ZDhjMzUzMjJhNzBkYjNhZTk5YTgxZGJlZjI1NTg4M2Q2MDM3YjMgcHkzaworNjMyMDMgYzI2YzAyYTQyMDA4MjRiZmYyNWViMWQyODgzNzAxNjk3MmNkNTAwOSBweTNrCis2MzIwNSBlY2RlZWZhOGJiNmE4NDE2MDk1YWM4N2RhZjJlNDc3MWJhMTczZDE2IHB5M2sKKzYzMjA3IDY5ZGE3YTRmMmY4ZTJkMzA5YjRlN2NjZDYxNmZlNGYxODNmMGVmMTQgbGVnYWN5LXRydW5rCis2MzIwOCA0NzY5MmY2YzgxNWVkZGJhNDg0ZTIyYTFkN2E3ZGQzMjQxNmU2YmYxIGxlZ2FjeS10cnVuaworNjMyMDkgN2M4YWNhYTI3ZWFlMWQ0NTVkY2FlZWExYjhmZDQ5NTU2MDJiY2M4NCBsZWdhY3ktdHJ1bmsKKzYzMjEwIGU0ZTNiM2ViYTIyNmZkODliNjczMDIxMTlmYzQxNzdiYTJjNGQxYjMgbGVnYWN5LXRydW5rCis2MzIxMSBkMmMxZWQ0MDhhMWQ3NmE2NTcwMTVmNTIzYjUyZmU4NzUxYTM0YzBlIGxlZ2FjeS10cnVuaworNjMyMTIgNzY0NzdiOTc4ODUwOWI0OWE0OTI2YTg5ODQwNDkwOGMxYjEyOWFkMiBsZWdhY3ktdHJ1bmsKKzYzMjEzIGYyMmVkODAyODlkMzAxNDc5Njc5ZjI4NWUxYWE2Njg5ZjI5YmFmYjUgbGVnYWN5LXRydW5rCis2MzIxNCA0OTAzOGVlMGU1YjViNTMwMDM3YmM0YTllYTRmZGUzYzI2Yzg1YTFlIGxlZ2FjeS10cnVuaworNjMyMTUgODEyMmEzMjRiN2E1NTE5ZGRhYTRiODQ5NWQ0ZTU3MzlkZWIyMTBkZCBweTNrCis2MzIxOCA2MDNhOTM1ZWFhZGE5ODVhYjUyYjFmNDAwZTgyYjFhZGVmNmM3NjdkIGxlZ2FjeS10cnVuaworNjMyMTkgYTE3NTg1YTQ1ZWU3ZWEwZjBjODQ5MzllNjc4OTE3MmU4YTI4NTQ4MyBsZWdhY3ktdHJ1bmsKKzYzMjIwIDdiNmUyMjJlYWRhNzBhYjYyZWI4MDI4MTBkY2YxN2UwMDU0NTZlOWIgbGVnYWN5LXRydW5rCis2MzIyMSA1ZGQ2YzUxYWVlZGVhNDg4YzNkMjg3MGIwZGE4ZTkwMzZhMTVhZDU4IGxlZ2FjeS10cnVuaworNjMyMjIgOGIyMjNkMzUxYjA5NTkyYjAzY2U3OTQwMzVhYjI0YmFhMjNkYTk4MCBsZWdhY3ktdHJ1bmsKKzYzMjI1IDU2MWU1ZjUwMjZlYjBhNDRiMzhiNTBmMzg0ZWQ3YmEyYTY0YzlhNzggbGVnYWN5LXRydW5rCis2MzIyNiA4NzYwOTEyYTllOWZlMDU5MDQ1NDdmMDgyMjM0MzgyNTJhZmFmMzI3IHB5M2sKKzYzMjI4IDAzZDY4NzViZGUwZWJiMTkxN2IxODA0NDUwNmVjODM4MDU1MTVmODIgbGVnYWN5LXRydW5rCis2MzIzMCBlNTM2YzY1MDE0MDJjMTE3ZDBlYTRmZjgzOTBmZWQ0OGM5ZjFiNjI1IHB5M2sKKzYzMjMxIDhmYjliZDU5NjJlNDZmYTJmYzVkZmUwMjVkZWZjZDM5M2IwNzAwN2UgcHkzaworNjMyMzMgZjJjNGFiNzRjYzY1YmNmZmQzNzdiZmY4YzE2MDZlNjJiZjA3MmQ0OCBsZWdhY3ktdHJ1bmsKKzYzMjM1IDkwNWI2MjcxZWYxMThhYzNkMjA0MDBiOGY3YWQ4ZjVhNTA4MGRjNDQgcHkzaworNjMyMzYgNzFhYTkwM2ViN2FjMjI0NmU5YmU2YzM2ZTBmNTIwOTNlMGNlM2JiMyBsZWdhY3ktdHJ1bmsKKzYzMjM4IDgzZTk1MGYyOWQ0NDMzNjZlMjVlYmNkMDc2YmRmZGZmMjViYTZjN2QgcHkzaworNjMyNDAgYTNiNGYxZTY1Y2JlYWU1NjRmZmQ0YzllMTJjMTFmMzE0MDBmMGJjZSBsZWdhY3ktdHJ1bmsKKzYzMjQxIDQyZmM5MjIxMjBkOTZlOGMxZTgxNzkwYmZhN2IxMGNhYmVmNGY5ZDkgcHkzaworNjMyNDIgOTkzZDBiYzA3ZTAwMmE5Yjk1OWRiZTlmMjVmMjA1YmZhZjRlMzYxYiBsZWdhY3ktdHJ1bmsKKzYzMjQzIGM1NDZjNDBmY2VjZTBhNjc3YzJmMDE3ZDNkYTRiYTA0NzU0ZDhmZDQgcHkzaworNjMyNDQgOTU4Mjg2YjE1ZGUwNTBkOWNjYTJhNDQ4Njc4MDRmMzRiMDI3ZTJmMSB0bGVlLWFzdC1vcHRpbWl6ZQorNjMyNDYgZjI4YjcwNjQxNTk1ZjJkMTZmZGY4ZjA2ZTA1NTBmNzMyMmM3ZmE3MiB0bGVlLWFzdC1vcHRpbWl6ZQorNjMyNDcgMTc5NTZkYmFkMGU0MWUxYTRlZGY2MjU5MWFkNDI2M2ZmYTc5OGFlNCBsZWdhY3ktdHJ1bmsKKzYzMjQ4IDcwODIxNGYzNTFmZTdkOGJkZTRhOWQyMjEwNTQ0YzMwZmUxNzJkNzggbGVnYWN5LXRydW5rCis2MzI0OSA3ZTE4ZDY1OTM4MjQzYTUwNzVmNmMxN2ZhNmQ4ODlhMDk1YjQxODYyIGxlZ2FjeS10cnVuaworNjMyNTAgYzIyOWU3NWZjMjI0OWU2YWRlNDNiMDY1ZDFkZWY2NjkzZTMxMjZkNCBweTNrCis2MzI1MSAzNWE4ODk5MjU2YzJjYTdiMjkzOTNkYjI4MTkxZDgxZTIzM2RkYzczIHB5M2sKKzYzMjU1IDRlYjU5ZDhiYWM0ZDY0YzhiMzhhOTAyMTY3NjIwN2IwZDZmNjE1ODEgbGVnYWN5LXRydW5rCis2MzI1NiAwNjYzZjJmYWI5MzQ1MmM3YzM5MTRjOTc0OGFjZTJmODNiZGQ0ZGJhIGxlZ2FjeS10cnVuaworNjMyNTggNDE2MjhmMzhjNWEyODg3NGZkNjBhODY4MTQ1ZjVkMjA5YzdlM2JjNCBweTNrCis2MzI1OSA2ZjI1OWE5Y2NjODQ4MTg4NTM0MjdiMzQ2ZTBmY2MxY2RiZWEwZWQ4IHB5M2sKKzYzMjYwIGYwYTQ3MDkxYzhkODZkZDJmM2JlZGM5YThiNjFhZWMxZjgyMzVmZDIgbGVnYWN5LXRydW5rCis2MzI2MSAxZGY0NjY3MDJkZTJhOGFkMmNiM2NhNzdhMTAwYjJhNGNlNWExYzdkIHB5M2sKKzYzMjYyIGFhYjhiOGQ0YjZhNTA4NTVjZjNhOTE3ODVlNGE0N2VjMzJhZmVkOGUgbGVnYWN5LXRydW5rCis2MzI2MyBkNWVhYTdkYWVjMmY0NzMwNWMxNWI4OGY4YTYwZGNhZGFjNDU3NWRlIHB5M2sKKzYzMjY1IDA1NGZmNDEyOGY3NDRlZWRjMWRlMmZkMThiNDg1MGRhMGExYzMyM2EgbGVnYWN5LXRydW5rCis2MzI2NyAyN2Q2OWRjNzI3OTMyMWQwZDk0NGZkNGYyMzM1NzA2NDU2ZjA4YjAzIHB5M2sKKzYzMjY4IDVlODkzMjk5MWFkZmQxMjFjM2U1NTMyYWJmNTczZThhZmE0YWRkYzggbGVnYWN5LXRydW5rCis2MzI3MCAzYWJhNDQyNTYyNjU3OWVmZTA2OThlNjk2MjhhNjI4ZjRmZTYzMTNiIHB5M2sKKzYzMjcxIDYyZDllYzljOWVmZDEwMmE3NTQyNjZkMjIwZTc2ZjRkOTkyOGUzY2MgbGVnYWN5LXRydW5rCis2MzI3MyBmNTEzYmI3YjhkOTdlNTViODFmM2IxNDVhNWI4OWYzZmVkZDhlYWJkIHB5M2sKKzYzMjc0IGEwOTJkY2U2ZTlkNGE5NjEwMjg0MzNkZGUzYjg0ZDBmZTNhOWRiNmIgbGVnYWN5LXRydW5rCis2MzI3NiAzY2MwYmY3ZjA0YjZmNTUxMGRmYzUyOGM1MjhiYWQ2NjdhYWMxMWIyIHB5M2sKKzYzMjc3IDg3NmQyZjBlOTJlNGUzYTE1NDA4YTVmZjlkNjNkYTRjMDRlZGM0MjggbGVnYWN5LXRydW5rCis2MzI3OSBlNGJiNmYxNzRiMDA0NDQ3Y2ZlMzY1MDA4YmM4NGY3OWJmNzJiZDJkIGxlZ2FjeS10cnVuaworNjMyODAgNmRjOTFiMzY2ZDlmZmU3MmJhMDI0MDViNTkwZGM3NGQzZTI0ZjAyNCBweTNrCis2MzI4MiA1N2NmMDAxYWEyYTI0ZTg2Y2JmOGEzNDdkZTg4NDcyNDA5ZjJmZDJlIGxlZ2FjeS10cnVuaworNjMyODQgZmNmNWRhYzUxMzk0YjhiYjRmZjdlMTNjZTI0ODhkNzEwZjExZWNiMSBweTNrCis2MzI4NSBiYWRhMGU4NzFhYzFjZjE5ZWYzOTc1OWMwY2VlY2ExMDU0ZTIyZTAxIGxlZ2FjeS10cnVuaworNjMyODcgNWFmMzhiOTVhMTdmYWUyOTllM2E1OWRhNjVkYmIzZDZhZjMzMjZkMCBweTNrCis2MzI4OCA5NmE4NzZhZjkzMGE0Nzg3Nzc1YjNmZjM4ZDRmZjZjN2M2NTg4M2Y3IGxlZ2FjeS10cnVuaworNjMyOTAgOGExMGE0MTE5ZmMyNzU3M2FmZWFjZjk1NzI2ZTBiMjRiNjI4ODQzOCBweTNrCis2MzI5MSAxYjQ0ZWQxYTkwNDY1ZWU0YWRjNDA0YWZhMzExNWE0MTYyYjhiZWUzIGxlZ2FjeS10cnVuaworNjMyOTMgZGM0MDk4Y2E4MjNlMjg3OWJlZjM1YmU3MmZhYjIwZDQ5MGU2Y2Y4MyBweTNrCis2MzI5NCBkNGI3NDNiZGViYjE2YzVjOTFhYzVlOTZiYTNiNzllOTNjMmRhZGEzIGxlZ2FjeS10cnVuaworNjMyOTYgY2ZhOGM2MThlZDM1MzcwOWFhMjBiZTQwMzNmZDc0MTNlNDdhYmNmOCBweTNrCis2MzI5NyA4MDQzNWJjN2FhYzQ4MzhmODhiNWJmYTU0MGMyMjlhMjE4MGIwYmM5IGxlZ2FjeS10cnVuaworNjMyOTggMWU1NWIyZDFjOTNlZjM1ODdjZGMyNmM3MWVmMTNjMWQxYWViODdiMyBweTNrCis2MzMwMCA1OWJjZGZkMjc1MDFmZWE0Y2QxMzI1MWVmNWEwMjZkMWE3MTQ0MmY5IGxlZ2FjeS10cnVuaworNjMzMDIgNTI5ODczOWYwYTRkZmMxN2Y0YjFkYjQ5MWVkYTgyNTExMmRiNzhlMiBweTNrCis2MzMwMyBkNGFjZWQzM2Q1N2E1OTI0YzMyODdhOTVkYzg5N2Q5MWNhMWUzZmZjIGxlZ2FjeS10cnVuaworNjMzMDUgZTExNmNhMjZkOGYxY2E2YmJjMDBjNjlhMDhjY2EyZTk5ZDFhNDdjZSBweTNrCis2MzMwNiBlZDUzMmNhN2FlNzVjZmQ2OWFlNmFiODBlMTcwODdjZTA1NDY5MGI2IGxlZ2FjeS10cnVuaworNjMzMDggYTdjMWIzMTcwMTEzODMyYWZhNmVhMDQwMTE1MWRjZmZiMDVlNDk2NSBsZWdhY3ktdHJ1bmsKKzYzMzEwIDVhNDYwODI3MmM1MDZhNmMwNDI4ZGEyM2UxNjk4M2ZjZTZmNjUyMjcgcHkzaworNjMzMTEgZmRhNGQ0MWEwNzczODc5NTY5Nzg4MGM3ZjllY2EzMDI2NTViMGE3ZSBsZWdhY3ktdHJ1bmsKKzYzMzEzIDFkNjJkMzI2MTJkNmRjZmIyZDI2NDYyYjVlZWVjOWEzOTBmOWFkMDIgbGVnYWN5LXRydW5rCis2MzMxNSBhOGE1N2ZmNmY1NjhiYzRlOWQzNmQwZWE2YzBiYzEyMjZhNTIwNWZjIGxlZ2FjeS10cnVuaworNjMzMTcgMTM1NmE0MTg4MzBiMzRjYzE4ZmYzNzM1ZmMwZWNlNjZiNTRjODcwNiBweTNrCis2MzMxOCA2MjhkZDVlYzRkZDJlOGE3ODRhMjBhMmIzYjhhYWQwOTMxNGZkNWFlIHB5M2sKKzYzMzIwIDE1NzNjNzc2ZGY4MmVjNTU1ZThiZjc4NzhmY2NjZjkyODIxZTc0ZjcgbGVnYWN5LXRydW5rCis2MzMyMyBkNTkyOWNmODY4Y2JiYjUyMzFiMTkxNDNlOWIzOWJjMDlmNjNhNTVhIGxlZ2FjeS10cnVuaworNjMzMjQgOTE4OTYyMjcyNzJhNjkyYjUxZDUwYTBiNTEzYzJjOTBlOGM5MTc3MCBsZWdhY3ktdHJ1bmsKKzYzMzI1IDhlMDAxNzk4NmY1MGVlNjRhMTdlODdmOGNjYTBhNGQ3OGVjMjBmZDMgcHkzaworNjMzMjYgMzkxOTc5YWY2NjJiYzQ4ZGFkNjc0NDRlNGFlZjI2ZWY5ZjljZjY5MSBsZWdhY3ktdHJ1bmsKKzYzMzI3IGU2OGU2MTA4NjJiZWI1ZjlhNTcxMmNkZGIzMzJhOTM1OTVlMmNlZjAgbGVnYWN5LXRydW5rCis2MzMzMCA4N2E3OTM1MjM0MmM2MjE1ZWFjZTBmNmNjZTQzNjYxNzU1NTY2YzhmIHB5M2sKKzYzMzMxIDA4MWMxNTgwNmUyODdjMDM2NjE2YTUwODJjZjdhNGJlYjkxNTA2OTcgcHkzaworNjMzMzIgMGQ1NGM3MDU2NDY4YjMyYTY4YTU3N2YzOTIzNjRiM2RkOTZhNWFlMyBsZWdhY3ktdHJ1bmsKKzYzMzMzIDM5N2YyOWRkODJiZGM1ZGM0ZWYzZmY1YjcwNjYwNTUzNGFlYzczMTcgbGVnYWN5LXRydW5rCis2MzMzNCAzMWNjOGUxYThmZGY1ZjIzN2Y1ZTlhOTY5ODkzOTlmZjkyYzFmNmI1IHB5M2sKKzYzMzM1IDk2MGFkZTg1NjA3OGQ2NTcxMmFkNjdmNDA2NmVjNDY3ZDA4MjJlNzYgcHkzaworNjMzMzYgYWUxNmU5NGJiMDNhZThlZGZkNzAzNjQ4ZWU1YzQwNThlNmZkM2VlNCBsZWdhY3ktdHJ1bmsKKzYzMzM3IDJiOGY3NDRkYjc5YjcyMTU4N2FjMDZkY2JhNTVkNzhiMzI2NTI4NGQgcHkzaworNjMzMzggNjc4MGYwMTU5OGEyMzQ0Zjc5ZTczZjFkMjU2MTdkM2ZiNTNlMjhhOSBweTNrCis2MzMzOSA4ZDhlMDZmNGJlMWZmNGJmNmU0MjUyZGFlNDU3MGE0M2JjYTgyNmRhIGxlZ2FjeS10cnVuaworNjMzNDAgMGM3MTQyYzU2ZDdlZDllZjU3NTU4Yjk4MzJjMGE2OTRjY2ZjNWIyMCBweTNrCis2MzM0MSBhOGFlMmFhMDhlN2ZmNTMwNWY4NzVlYzkyYzQ5NDYwMTMzNzYwYTdkIHB5M2sKKzYzMzQyIDNjMDNlOWI0NjY5ODQxNzVhZjhmODY3MDhlYWRlZGMwZTc2MWM5ZDMgcHkzaworNjMzNDMgNTkzYjY0OTkwNGI4NjYzNjA0MGViYmNkYjFiNDFkMTYxYzM4M2E1YyBsZWdhY3ktdHJ1bmsKKzYzMzQ0IDM2NTY4NzM5ODUxODdjODgxMmUzYmY2OTI2MGQ3Y2YyOTRkMWJmOGIgcHkzaworNjMzNDYgMmUyYzcxMmZlMjZkNjk3ZGQ2NmM5Y2RhMDM1YTYyMGZiZDdjOGFmOCBweTNrCis2MzM0NyA1N2Y2MWRhZDdiM2I0ZjNmMzhiNGU2OGU2YWVkMWQ3MzkxMmMzMDgxIGxlZ2FjeS10cnVuaworNjMzNDggMzQwN2JmOWRhYzM4N2E0YzRhYjdjZGYwYmFmZGFhNmE4ODFiY2U5YiBsZWdhY3ktdHJ1bmsKKzYzMzQ5IDU4YTBkNTUyNGY5YTNiYTk1MDYxNTNkMWJmMDJhZjQ4ZGFkODc4ZGQgcHkzaworNjMzNTAgOThmNjg3MjZkYTAyZDUwYTZiNTljYzQ4YjAxMjFiZDU3MDdmODAzMSBweTNrCis2MzM1MiBiNjMwNzI5NTcxZTY2OGY0ZTRlMDcyNjg2YTdhMmZmYThjMGZjOWZkIHB5M2sKKzYzMzU0IDlhYzExMDQzYjM5NTM2M2UxOGVmMDNkZmFjOTZjNzdiNzYwN2VhZDkgbGVnYWN5LXRydW5rCis2MzM1NSA5NDdjYWVlMjM5OWVmMWY4OTFkMTQyMzkwNTQxZWI3MmZkOGRlOWUxIHB5M2sKKzYzMzU3IDNkZjA5MGVkNDgxMDNkNjIyOTIwOTQ1ZmU3ZjAzZTc0NmM5YzJmNGIgbGVnYWN5LXRydW5rCis2MzM1OCBkNmZlNTAyMzM2MjYwZjYwMTM0MTgyZGUyYmM5ZDlkZTYxNzI0MDM1IGxlZ2FjeS10cnVuaworNjMzNTkgNGVhOTkzMDllNTI1NGM4YjU2YTIzMmQ4ZjY1MDQ4MGMxNWQxOGJlNSBweTNrCis2MzM2MCA0ZjFhMDc5ZGY0MjdjYmQ5ZTgzYWE4ZmVhYTkwMWI5YjFlM2FiYWE2IHB5M2sKKzYzMzYxIGIwYjMyNzMyZjY2ZWI3YmUyNjBiN2NkMTQ0YmUzZjk5NDIzNTQ0MTQgbGVnYWN5LXRydW5rCis2MzM2NCBlZDEzMDQwYWMyZTZlNWY3ODQ3OThmYWZmMTlkZGJkMWRkNTNiOWFlIGxlZ2FjeS10cnVuaworNjMzNjUgZmYyZGMwMmJhNDFhYTNkMTExMzM4YTM3NGZhZWVmNzMwY2ZkNDM1YyBsZWdhY3ktdHJ1bmsKKzYzMzY2IDQ1NjUwYzI1YTAyODY1MjY2ZjM2NzM2ZjI0YzU0NGMzM2E0OTdkZWYgbGVnYWN5LXRydW5rCis2MzM2NyA1NGZkMDQ1ODU1MGM2YTc1MDM2MjE1ZGZkYTU1MGQ0OTI4MzZlYjIzIGxlZ2FjeS10cnVuaworNjMzNjggYWE4ZTEzMjc5YjViMWFjMWNjNTVlNWZmNzQ3ZmQ0ZjA2MjFjOTk4NiBsZWdhY3ktdHJ1bmsKKzYzMzY5IGEyY2VmOWU4OWI3YzJlNjk4M2UyM2Q1ZDA5ZmE1MjVlNzAwMjQ0OWIgbGVnYWN5LXRydW5rCis2MzM3MCA1ZDFhZmY0NmNjMGRmMWUzODNiM2JhZjFmMGEyMmExNWRiNTYyZTM2IGxlZ2FjeS10cnVuaworNjMzNzEgYjI0MDNkNDcwYjY5ZGQ3YzhiZmJmMDY4NTdlN2Q5MTZhYjYxOGQyZSBweTNrCis2MzM3MyBkZDBiY2MyMTZmZTM1OTIwYWY0NDZlMjg1NzM1NGM3OWMzZTNmNDFkIGxlZ2FjeS10cnVuaworNjMzNzQgM2I4MjdmMzY0N2NiMTg0NjhhYjY0MDY4YTU5ODJhOWY2ZTM3YmYzYSBsZWdhY3ktdHJ1bmsKKzYzMzc1IDg5M2E0ZGMxN2E5MWM1ZWJhMTM3MzUzNzI1YmU2NjZjNWVhNWU3NWIgcHkzaworNjMzNzYgODhiYjlkZjM4NWRjMGQ3NTA2MDBlZjM2Zjg0Yzg1YjdhMzNlNDRhMCBsZWdhY3ktdHJ1bmsKKzYzMzc3IDBmMTU3MzVjMTgzMWY1NGVhMGZhZDVjMGExZmRiMjdkYzc3ODY4YjIgcHkzaworNjMzNzggNjM3NDFjNzUyMWFhMGMyMjMzY2ZhOGFjNDFhZTU4NDU4OTRjZDZiZiBweTNrCis2MzM3OSAwZTY3ZTIxYTQxMTMyMGM3NzIyZmJhZjNjNTRkN2NkNWI4MTMyYWU0IHB5M2sKKzYzMzgwIDUzMDQwNDZiYjM1OGQ1NjAxNWNiNjk3NTA1ZGYzMmE3MzlmYjk2MTYgbGVnYWN5LXRydW5rCis2MzM4MSBhYmUzNWE4N2IwMWRhMzAzMTFiODk3MzVjZTk2ZWRkOTA3NDE0YmQ3IGxlZ2FjeS10cnVuaworNjMzODIgNjBiODU5MjRlYzZkMDI4ZTZhMmZiODdjNzZiNWI0NDBjZTE5N2NmNCBsZWdhY3ktdHJ1bmsKKzYzMzg0IGNlN2FhODhiNjY5ZWExMGRjMWNjNzk1YWMwYjRlMGYyMjA0ZTI2N2MgbGVnYWN5LXRydW5rCis2MzM4NSBhMDJiYzJhODRkMTljY2QwYjgwMmI4NDhkMjg0NzZkNjIwMDBmMzQzIHB5M2sKKzYzMzg2IDg4MGZlODg3N2RmOTc4YjllY2UwOTI3ZDIyMjc2YWU0YjkxN2U2ZTQgcHkzaworNjMzOTIgYWI4MGJiZmE2ZjBjMDg5MjU0YzVlNTZhOWRmYjMxZDYxYWRlZGZkYSBsZWdhY3ktdHJ1bmsKKzYzMzkzIGJlNTgxYWNlYTRlNzM5OTZiMzc0ODc3Nzk0ZTFmMTQ3ZDk0OWQ1OTQgcHkzaworNjMzOTUgNmFmNjQ1MTIyOTRhZDA5ZDcyN2IxZjBkYjEzMDRkMGQ1NTY3MmQyNiBsZWdhY3ktdHJ1bmsKKzYzMzk2IDQyYjc4ZTBlNjg0ODA3MzQ5NjIxNTA0MjQ5YzY1ZDE4YjhhMzAyYzcgbGVnYWN5LXRydW5rCis2MzM5NyA4NGJiNzJkOTBiYzcyNTI5NjM4MTUzYTdmZDVhODVkNmQzZmJlZGY2IGxlZ2FjeS10cnVuaworNjM0MDEgMDY4MDc5N2FlNDU0NjI5ZTA1N2ZmMjIzZTI2ZGIzMTIzMDExOGVhMyB0bGVlLWFzdC1vcHRpbWl6ZQorNjM0MDIgMjE0NGM5ZjM2NWM4ZmFhZmYzMTNmZTVkMmE1MTFmOWFiNDJlZGExZCBsZWdhY3ktdHJ1bmsKKzYzNDAzIDFjYTk2NzU2Njg4MGU4MDY0MjAzYmIyM2E3ODBmODdiNzI4NWM2ZDIgbGVnYWN5LXRydW5rCis2MzQwNCA2ZmJkMDZkYjcwNzc2MDE2ZDAzNWUyYzU3NTgzYmIzYmNiMDUyN2E2IHJlbGVhc2UyNS1tYWludAorNjM0MDUgNmI3OTc3MzE0YzAyZmQ2MWI3ZmVlMmFjZDc0Y2ZiZTU2MjhkYjQ3YiBsZWdhY3ktdHJ1bmsKKzYzNDA4IDNiYmY0NGQzMjM2MTIyYWNiOTA3ODAxN2E0OTM2YmZmOGUzMWU3YWIgbGVnYWN5LXRydW5rCis2MzQwOSBmMmMwM2Q3MTU5N2Q0OGIyYzRiOTYzYjY0ZDBjMjY3ZmFiYTkwOGVlIGxlZ2FjeS10cnVuaworNjM0MTAgNjk0ZDM2ZmI2ZjRkZmEyNjY4MGM0MTYyM2NlNzFkODAwMDY1ZDA2ZSBsZWdhY3ktdHJ1bmsKKzYzNDExIGE5N2ViMTc3ZjNhNzc5Y2Q5YTRhOTBiYmY2Y2Y1YTUyYjdiMTJjMGEgbGVnYWN5LXRydW5rCis2MzQxMiBhYzkzZWRjMzk2YTY0Zjk0YjAyN2Y2NGQzNDAzOTJhNmI4ZGEyNWRmIGxlZ2FjeS10cnVuaworNjM0MTMgYjY2MDUwZGI4NDFmMDViYWIyODIzZjE0NWY1ZTUxYzQyZjQ1ZDE3NiBsZWdhY3ktdHJ1bmsKKzYzNDE0IDY4MzZlOGYxZGVkYmNkNDZmMDNkOWY3OTk5ZDIxOGZmMjU5MjFkMzMgbGVnYWN5LXRydW5rCis2MzQxNSA3NDYwNDE1ZGE4ZmVjNzY5MTAyODZiN2U5MzNkYmM4ZDlhYTUzM2ZjIGxlZ2FjeS10cnVuaworNjM0MTYgZjNkZGE5ZDM2NjhmZDMzMjNiNzk5OGVkZTE3YzUyMWU2ZmRjYzY2MiBweTNrCis2MzQxNyBkNjMzNDRiYTE4Nzg4OGI2NzkyYmE4MzYyYTBkZDA5ZTA2ZWQyZjlhIHB5M2sKKzYzNDE4IGVmNGNjYTJkNjE3MTNkMzNjMmE1MDI1MjM1ZDQwMzBlMzY5NWQwMmMgcHkzaworNjM0MTkgMjQ5NjE4ODhhZDk1NmFjZTgwNzI3NTYyZTc1NTdjNmEyNzg5Zjc4MSBweTNrCis2MzQyMCA4YTc0NjEyZjNkMmJhZTFkYzIyYmY1NjA0ZmM4Y2Q0MTJkZTA1Njc0IHB5M2sKKzYzNDIxIGQ2ZTFlYTIxYzk0OGVjMjg4NTFmODdlZTExZjUyMjlhOWUzYWVmYjcgbGVnYWN5LXRydW5rCis2MzQyMiA5MjQwYTU5YTI1ZTlkZGM0MjJjMzU4NDgzMDdhMTNiMDU3YmFhNzJmIGxlZ2FjeS10cnVuaworNjM0MjMgY2NlMWIyNDNjMTFkMTM2M2Q4MTcxMjA0ZmVmOGVmM2RkZDE3YjdiNSBweTNrCis2MzQyNSA3MTE4ZmFkZTU3NWI5ZWMxZWQyOTgxMGRjM2JjM2Y4NjJhZjY0MmRmIGxlZ2FjeS10cnVuaworNjM0MjYgNjRmMzg3MzQzOGIxY2IyNjQ1ZDE4N2JmNGRkZGE0ZWRmY2Y1ODFhYyBsZWdhY3ktdHJ1bmsKKzYzNDI3IDVjZTkwNGM5MGU2MThjNzViMTQyZTNkMGI0NDFmNTVhNmJlNGI0NWUgcHkzaworNjM0MjggZDk1M2VhNThjYzhiY2EzNWU0MmE5N2ZkZmFkZmJiNmUwODcxZGY5MiBsZWdhY3ktdHJ1bmsKKzYzNDI5IDdhMWRjM2U3Yzc5YjUyNDM5OWViYTNmZDgwOWQzMDEwYTcwYjA1MTUgcHkzaworNjM0MzAgODAxYTA5ZGQwZWI4YWJkZjliMmZlYjc1OTVjZGE0NjBhZWMxNzA1YSBsZWdhY3ktdHJ1bmsKKzYzNDMxIGFjNTlmZGQ4MGU0NTllNjgyMDBkMjZkYTBhYTFjNDZmZDcyOWFjYjkgcHkzaworNjM0MzIgMGFhMWJkZTlkMTk0YTk3ZDYyNTdmNDQxZWRiNDYzMTVhYTM4MGQ3NSBsZWdhY3ktdHJ1bmsKKzYzNDM0IDMzYzdmZTg1ZTM1ZGZmNjAwMmQ5ZjlmZDJiOWMyZWUwN2U5NjUxNWIgbGVnYWN5LXRydW5rCis2MzQzNSAxMmMyMjlkMDIxY2MyYzYwYTQ2NjljMjI0ZWFjNzgxMjM0MmNmZDU0IHB5M2sKKzYzNDM4IGY4NjJkZmFmOWE0YmUzYTMwNWZiNWViZDlkNzRlNDA3MTgwMjk3MTEgbGVnYWN5LXRydW5rCis2MzQzOSA3Mjk2YTJmYjQ3ODZkZGE5MDdiNDZlY2Q4NjE5YzE4Y2RmNzRmNDdlIHB5M2sKKzYzNDQwIDNkNWNkZGM2ZTVlN2ZjNTAwMzY4YjUyY2E2YzZmMDQ4ZDIzMTkyZGUgbGVnYWN5LXRydW5rCis2MzQ0MSA1ODVmN2NhMzhhODVhZjgwOTcxMzVjOTM3MmY1MDcyNDdhOWNkYzcxIHB5M2sKKzYzNDQzIGJiZDMwYzQ5MmE5OThjM2VkNmUxNzA4MDc0MmViMmIyNmQ1ZmJjYTAgcHkzaworNjM0NDQgY2RiNzVhZjIzODVhMzFmZGE2OTNkMTYzOWVmYjg2MTY0NTllY2E0ZSBweTNrCis2MzQ0NSA5ZjM1NDAwMWVhMjUyNzExNWRhNWY5MmNiYzU2NTQ4ZGJkNDU2OTczIGxlZ2FjeS10cnVuaworNjM0NDYgZWZlMjJlZWYyNmJlM2UyNzVlN2IwOGU1MWVlYzZmNDRlODBlZjA0OCBsZWdhY3ktdHJ1bmsKKzYzNDQ3IDIwYjFjNWM0ZTMwNDQ1ZjJiNmE4N2M2OGNmMTJhZjJjOWVmNmI3YjggbGVnYWN5LXRydW5rCis2MzQ0OCBhOTM4NTI5ZjRkNmRkM2EyMTg5MTMyNzI4MDc5MGJkNzIwYzI4MjM0IHB5M2sKKzYzNDQ5IDJlOWY1NzJiNzMyMjdhODU5YTQ5Y2QyMGQ0MTVmY2QxZWFjNjJiOTQgbGVnYWN5LXRydW5rCis2MzQ1MCBiODZiMjllMGNmMzI5ZDEwYzE4NjMyZmRhNDg5Nzc1YWQ2ZTIxYTVmIGxlZ2FjeS10cnVuaworNjM0NTIgMzBmNjMyYjM2ODY4ZTlkNzBlYWQyMzEzZDU2MTViNDE5MjVhOTQwOSBsZWdhY3ktdHJ1bmsKKzYzNDUzIDM3NDk5Mjg3Zjc1OGE3MmRiMmQyYTliMzkwM2YwZmZhYjE4NjFjYmIgcHkzaworNjM0NTQgNjFhNjc1YmE3OTA2MDI1OWM3YTk5MjFkMDFkOTQ5MzFiYThmYmFmNyBsZWdhY3ktdHJ1bmsKKzYzNDU1IDM2YzcxZDNhNmVmOGMxZTg4ZmRhMjEwZGVjMzg0ZGVhYmNmNTY0YTggcHkzaworNjM0NTcgMzA3MWEzMzdkOTIxZjNlYmFlZTk0MjI0Njc3Yzc3ZjY0Y2U4MGJkNiBsZWdhY3ktdHJ1bmsKKzYzNDU4IDZhNmNiOWQ0YmY5NDUwMmQzOTg4ZjNmZmFmZDgwNWFhMTk3ODdlYmIgbGVnYWN5LXRydW5rCis2MzQ1OSA3OTZjYjkzYzk3MDdmN2JmY2Y4OTIzYjE2N2I5OGVkNWIzNGJjZDVlIGxlZ2FjeS10cnVuaworNjM0NjAgY2Q5MWRhZjAzMjdjNmVkMWUyNTJjZDYyMDkxMjFjMzVlZGJmYmI0NCBsZWdhY3ktdHJ1bmsKKzYzNDYyIDEyY2ExZTgyMDI4MmJmNDljNWQ5N2VlZmQ5NzcyN2FhMWMxOTA1MjMgcHkzaworNjM0NjMgNGVjY2U4ZmVkNmUxZGI2NDNmYWNjZGFlNjkwODNiNjc0MmZkYzA3MSBsZWdhY3ktdHJ1bmsKKzYzNDY0IDk1Y2IwMDkzNjZkY2I5MzA5NWU1ODUyYjI5MjNlOGI1OWI0MGI5YjkgbGVnYWN5LXRydW5rCis2MzQ2NSA4YjYyOGNhMjE4ZjNkNmMzNjI5YmVlY2E1OTA3N2MxNDNhZGQ5NTEzIGxlZ2FjeS10cnVuaworNjM0NjYgYTFmNzA0MzVkOGUzNzNmOTYwYjk4MjNlZTJmYzcyYjYzZmU5NGFlNiBweTNrCis2MzQ2NyBjYThkOGM4ZjI5NjAzMjUzNmVlYzA4OThmZGZmMTUwZThmN2Y0YmYyIGxlZ2FjeS10cnVuaworNjM0NjggODUzMjZmYjc1NWUyOTkwYTFkYzBiMGE0OGQzMjFhZDYzZmQxZGY0NCBsZWdhY3ktdHJ1bmsKKzYzNDY5IGU4MDg1MDA1NWI5MzE3MmMxNDBiYTIxMmFjY2EzYTFlN2NiMGM5ZWYgbGVnYWN5LXRydW5rCis2MzQ3MCBiODNkN2QwMjllMGUxNzVlYjQ5NTE2MjA0NDg3MjQ5MTcxMjJkZWYxIGxlZ2FjeS10cnVuaworNjM0NzkgNjNkZGQzZWU0YTJkMWQ3ODI4YWFjOTAwNTBjNDcwNDlmYzc0MjRmMCBweTNrCis2MzQ4MCA4NWJhMDg3YzBjYzc0YjJjZjc1ZTBkYTAwMTA3OGZkODQwZDEwMjgxIGxlZ2FjeS10cnVuaworNjM0ODEgNDU0ZDM4YzFmNDdlOTFhODAyNGU2YWZhY2RjNDYzNmM1MWI1NTNmNSBsZWdhY3ktdHJ1bmsKKzYzNDgyIGVhYWExOWU5NDk5ODNjNzE2YmIwNTZhMDdjNzY5YWI3ZTgzNzI4MzkgcHkzaworNjM0ODMgZDE3ZmFjODk2YTBiYzZiZmZjZjA5ZWIxNzRjYTkwZjFjZmJhNTAxYSBsZWdhY3ktdHJ1bmsKKzYzNDg0IDc3NTU3MjE2YmEzMjFhMTYxNjE4ZDdiOTczMzg5ZmVhYTk3NWQ3MDEgbGVnYWN5LXRydW5rCis2MzQ4NSBkNWRkOGE4NTI5NzA1NmFlY2Q3YWZjMTFlMTFjNWUzYzk4ZmY1ZjhlIGxlZ2FjeS10cnVuaworNjM0ODYgNWNlYzQzNmQ2NGEyODEyYWY3NTJhMGI5ZjI1ZjU2MTU5MDBkODljNyBsZWdhY3ktdHJ1bmsKKzYzNDg3IGI1MzYwNGZhZDU0YjBlNjYyOTAxYTdiYTViNDExYTc3YTQwZjFhNzEgbGVnYWN5LXRydW5rCis2MzQ4OCBhZTE5MTIwMjMyYjRhOGUzMzkwNTY2NGUxNTMyZTNlOGI1OGE4M2Q3IGxlZ2FjeS10cnVuaworNjM0ODkgN2ZjOTZkN2VjZjJlZDcxY2MxZjE3NmQyYjhmZmNiZTFiODUwZjc0ZCBsZWdhY3ktdHJ1bmsKKzYzNDkwIDUxZTMyNGI1NzNiMDk5NDZiN2YxMmE3NWJmZDVkNWI3MjAwODRlNzUgbGVnYWN5LXRydW5rCis2MzQ5MSBhOGYxNTgzYjc4ZjZmZWU3MTc2ZjdjZTJkMDhmMzBjYzBjYjA4NTkwIGxlZ2FjeS10cnVuaworNjM0OTIgNGFkNGJlZjkxZThlN2Y0NDg5ZTk3MWUxNjgyOTA2MGMyNGE5NGJhYyBweTNrCis2MzQ5MyBmNDE5YjJlOTZhOTg3YzFkMzZjNzhiODc4OWEyNmMzOGNlYWJkMDUxIGxlZ2FjeS10cnVuaworNjM0OTQgMTczZTVlOGIzZTU5ZWQyYTRhMGJhYTEwYjk5MDQxNWIwOTYyNjZjZSBsZWdhY3ktdHJ1bmsKKzYzNDk1IDA5MTI1MTFiOTg5NzYyYmQ0OTlkZGUwMjUwNzM5YzA3MTA4Y2ExYWYgbGVnYWN5LXRydW5rCis2MzQ5NiAzMmJkMTg3MDlkZmRmMDA0ZWFjMzlhMGVhMGZmMGI3NjUzOGMzOTM0IGxlZ2FjeS10cnVuaworNjM0OTcgMTRlYjgwNGIzZmM3ZGYxYzMyMzZmY2NmYzE5NTNkYjAwZTA0NDUzMiBsZWdhY3ktdHJ1bmsKKzYzNDk4IDU5YWIyY2YwMDJmYThiNWFkNjg3ODJjYTFjNTg3ZTljMzJiNjhjYTIgbGVnYWN5LXRydW5rCis2MzQ5OSA1MmE2NjM3MzQzN2QzMjM3YzRmOWIyZjJlYWRjYzZiMmI4MjZmNGI0IGxlZ2FjeS10cnVuaworNjM1MDAgMTJjNTZkMmViNGQ5Nzk5NTk0MDM0MDU3YTEwMTYxNWI2Y2U3ZmJkYiBsZWdhY3ktdHJ1bmsKKzYzNTAxIGRlMTFiZjg0NDkxZDZjZTQxOTUyMWNkYTZhNDIzZjgwYmIyMjBhY2QgbGVnYWN5LXRydW5rCis2MzUwNyA0NmJkOGNmYTc1NGM1ODlhMzY1ZmY4MTNmZDcxMmVhMTgyMjNlM2M0IGxlZ2FjeS10cnVuaworNjM1MDggMzI5MWNlNDkyOGJjNDQ2MjZjNmYyMGNlZTNhNjkyNTE4ZDUzMTI3YyBsZWdhY3ktdHJ1bmsKKzYzNTExIDIyZDJmYjc2MWFjMWQzNDkyOTk3YzMzZDIxZWIxMzM1ZDU4ZDdjNzMgbGVnYWN5LXRydW5rCis2MzUxMiA5YzkzMGEzMmNlYmIyNTc4ZWQzMTQ4YzI1NWQ2YjdlYmQwYmY5MzEzIHB5M2sKKzYzNTEzIDUzOGU0MTBjMDA4ODMxN2YwZWMyNWZmMzNmNWVjNDc0ZTAxZTBlNmUgbGVnYWN5LXRydW5rCis2MzUxNCA1NWE1MGQzOTFiYTlhODM5MjdhZWYwNjZhMTNhODI0Y2ViYTBmYmU3IHB5M2sKKzYzNTE2IDJkN2ZhODRjODc4ZGI1OTJiYTU5NWZmYWM4N2RmZDcwOGMyY2VlNTYgbGVnYWN5LXRydW5rCis2MzUxNyBkMjkwMDUwZWQ4YjIyYTJjNjE3MjA5MmUyYWVjMWU4NDNjMjkwMDFkIHRsZWUtYXN0LW9wdGltaXplCis2MzUxOCA3YWE5YWQ2NTgwMTRhNDNiYzQ2MDU1NDg2Nzg4MWU2YzA0Zjk5ZjMzIHB5M2sKKzYzNTE5IDlkYmNhMjc1NGI0MDZjM2MyMmU2NjIyZmFhMTAyOWY3ZjllOTBiZDUgb2trb3RvLXNpemVvZgorNjM1MjAgMWQyMjcyM2E1Nzg1MjQ2ZDZmMjc0YmJlZmI5MDg3NjY1YjZkNTVhNSBva2tvdG8tc2l6ZW9mCis2MzUyMSAzNjA3Nzc2NWUxY2Y0NThhMGM3MDk4NTQ2NjJlMDE0ODM4NGNkNGFjIG9ra290by1zaXplb2YKKzYzNTIyIDc3OThiYzg2YWJhMzJhMTVlNzY4MmU4OTIwN2ZlMzY2MjUwYjIwMTUgbGVnYWN5LXRydW5rCis2MzUyMyA4YzgxZmFhMjEwYzFkZGVmMjIwMGRmMTRkM2Y2ZThkMjgxMzk2N2M1IGxlZ2FjeS10cnVuaworNjM1MjggNWJlMmQ4MmFjNWFjZDU5NTc4NzdkODczN2JlNWNjZDYyZGIwMzI1NCBsZWdhY3ktdHJ1bmsKKzYzNTI5IGNkZDAwMDA2MzFjYzc4NWFlMzgwODExZmM0N2JhYzg4ZTBhNjMyNGYgcHkzaworNjM1MzAgMmMzNGYxOWUzOTIyYTZhZDE0ODk3YmZiNzMyOGM0YmExZjI5MjY0NSBsZWdhY3ktdHJ1bmsKKzYzNTMxIGM2ZGJjNDMyM2EyMmQyNWU1MDUyOThkZTk1MmIyNWUyNGJhNmNiNTcgbGVnYWN5LXRydW5rCis2MzUzNCA4MWMzYTZmOWQ4NWYwYTNkYzJhNjNjOTc2YWU4NGY4MDlkNmQ0YjY5IGxlZ2FjeS10cnVuaworNjM1MzcgNGY2ZWE1YzU5YWIzMWJhNWYwNWI5NzlkYjk4Y2U0MDZhNTYwODkzMSBsZWdhY3ktdHJ1bmsKKzYzNTM5IDM4YTk3ZGNjMmM5YzVhOTNlZTkwZGI0MDA2MGNmYWM4YzAzYTJkOTcgb2trb3RvLXNpemVvZgorNjM1NDAgNzExNGUxZWZlM2Y5Njc0ZTkyY2U5ZDM2NGI3NGM0ZjNmYTk0MjFmZiBsZWdhY3ktdHJ1bmsKKzYzNTQxIGM1MzRiNjlhYjg3MWQ1YTEyODYxYjRiMmFmYmQ0YTBlNmRjOTRlODEgbGVnYWN5LXRydW5rCis2MzU0MiAyZmZmZGVkYjEwZjhjNDgyNTU1YzU0MTNlMmM5OWY2ZjJlNzU3OWNjIGxlZ2FjeS10cnVuaworNjM1NDMgZTE4NTIzZjg0MmQ3ZDEzOTUwZGQ5OThhMjE1YmU1ZmE0ZjA5ZTMwYiBsZWdhY3ktdHJ1bmsKKzYzNTQ0IDVhMjk1NTI0MTJmYTJiYzZlZThhMjAyYjZiODViMjc3MDU4MTY3MjAgbGVnYWN5LXRydW5rCis2MzU0NSBiYjA0MzMyYzdmMDE3ODJiZmFmMjliMzJkZGIxNjE1NmI3YzlmMDk5IGxlZ2FjeS10cnVuaworNjM1NDYgNzFkZWVlNmI5NDFlOTNiODk1YzFlNGNkYmE2NTc2ZDkwODlmZTEyYiBsZWdhY3ktdHJ1bmsKKzYzNTQ3IDlmYmM0MWFiZGQ0YmVlMGI4ZjRlNDQxNjI0M2M5NWY0ZjQ2NTNiNDIgbGVnYWN5LXRydW5rCis2MzU0OCAzNDJmYmRjY2I3ZDk2OWZmZGY3MmVhOWJjMGJlNzJjMWQ1Yjk5NGMxIHB5M2sKKzYzNTQ5IDk5MTc2YjlkOTBiMzdmZjZmZDcxYmQxNGUwMzVmNWZhNzU5NTNhNTIgbGVnYWN5LXRydW5rCis2MzU1MCBlMmJlZjQ0ZjQ1N2RkYzIzNzQ0MDY3MDJmYTNiNWYzOGZmNjQ2Nzg1IHB5M2sKKzYzNTUzIDU5NDgyOGVhMDNhMTA1YWQ0M2VjZjZhMjZhMzAxN2EyMzY0MTdiODggbGVnYWN5LXRydW5rCis2MzU2MSBhMzBmZWRlODc2NDNkNWJiMDE2ZGFlYzQ2Y2EyNzdmYjg1MmYwNmYxIHJlbGVhc2UyNS1tYWludAorNjM1NjIgNWVjOTUyOGM5M2RlYWE1NmRmOTgyNTc5MmEzZDdiMzcwMWM0ODQwYiBsZWdhY3ktdHJ1bmsKKzYzNTYzIDVkMTkyOTllZTM0NjNlZDdkMzc5ODQ0ZWY0MjhlOWNiNzkxNzlkNWIgbGVnYWN5LXRydW5rCis2MzU2NCBjNWE4NWU0ZjllODY2NmIzZGFiZmE2YzdmMzYwMjc4OTlkYTQzM2IwIGxlZ2FjeS10cnVuaworNjM1NjUgYTIxOGQ1Y2IyNThiMjA4MzEzMjgyM2EwOWRkZjkyZDk1NThiMGIxZCBweTNrCis2MzU2NyA0NmM2Yjk3ODlkZGVjYzMwNjgyMGYyNmYwYTY5MWU5NmM1NTVhMmI1IGxlZ2FjeS10cnVuaworNjM1NjggMDM0ZDZjOWUyNjcxZjllNWQzM2IzOGM1MGI4MzQwZDgwNmQzMGRjNCBsZWdhY3ktdHJ1bmsKKzYzNTY5IDI3YzBkNzM1MWVhOGRmYWM0YWQzMjY3YjNiZDZkMTFjNWZlYmU0N2EgbGVnYWN5LXRydW5rCis2MzU3MCA3MjdmZGI5MDYxOTEzZTI2MmI4MzdjMjQ3MWYyY2E1NjM0NmE5YzMzIGxlZ2FjeS10cnVuaworNjM1NzIgNTU2ODAwNWQyMjE3MzIyNWI3MDY0MWVlZWQzZjJjY2ZjMTJmMGJmNyBweTNrCis2MzU3NSAwZDBkOTY0MWY5YmQ5NzdhNTU3OTUwNWE3MDVkYzg1ZmJjZTQ5MzNkIGxlZ2FjeS10cnVuaworNjM1NzYgNDVmZjczNzY3MWY2MzM5ZGE5YzU1YTRkZmU0N2Y0OWJjYWY0NDI5MCBsZWdhY3ktdHJ1bmsKKzYzNTc3IDZhYmM2M2M2MTUyNjVmOTFlMmE5MDZjYTE2MmZiNjRiYWZhNzA1YjYgb2trb3RvLXNpemVvZgorNjM1NzggOTA5MTJiMTBhZTcyZjM4Y2FjM2QxMjlkYWIwZmNmNTJiNzVlYWFiYyBva2tvdG8tc2l6ZW9mCis2MzU3OSBmZDFhMmY0OTk2ZWYxNjkwYzUzZmIzODdmMGIyNWFjMjY5MDM2YzJkIG9ra290by1zaXplb2YKKzYzNTg2IDI4Y2Y5OWMxOTNjN2Q1NmYyMDEzOGQ0NDY1NWE3ZGVkNWI3ZjI0YTEgbGVnYWN5LXRydW5rCis2MzU4NyAwZjVmMzJiY2RjOGZjZmRkMTUxMTUwZWRmYjJkMmM1ZjE1NzExNTYxIGxlZ2FjeS10cnVuaworNjM1ODggMDVhYTIxZDZkYmViZTYyOTlmYmY5NjU0ZjdmMTk5MGVjNzNkNjdiNCBsZWdhY3ktdHJ1bmsKKzYzNTg5IGJhMWZhNTExYjcyZDFmYzRiMTc1NTUwMmU5NTRmN2Y0ZjQxZjVlOTUgbGVnYWN5LXRydW5rCis2MzU5MyAyMThhMTA4NjcyOGFiNjg3NzAwN2M0MTRhNDY5NGUzMmMyYWVmZGNmIG9ra290by1zaXplb2YKKzYzNTk0IDg3YjE0NDE4ODlhNTMzMmYxNjk2OGNmZGE5M2ExNjEzM2I2YzQ2YmUgb2trb3RvLXNpemVvZgorNjM1OTUgZjViMDI5MDIwZTAyM2ZmZGZjZTVhMTZiNmQxYzM1Mjg1YTcxNmM1ZiBva2tvdG8tc2l6ZW9mCis2MzU5NiA2ODBiYjlkZDU4MDc0NGQxYjdmNDNlYzJkMWU4OTViNDkxOGEwOGIwIG9ra290by1zaXplb2YKKzYzNTk3IDBmZWNkMzg2NzkzZTYyMGE4ZDExYjUxOTlkMDY4Y2JmNTAwNTcxZDUgbGVnYWN5LXRydW5rCis2MzU5OCAzMzllMTcxODMxNWNkODYzNGQ3OGI1YmM1ZmMxOWFkNjU3NzQyNzA0IGxlZ2FjeS10cnVuaworNjM1OTkgMzc2N2E1YWE5NTYwMjViOGY5ZWIwYzBlYjAzNzIxOGQ4MmQxMzYzOSBsZWdhY3ktdHJ1bmsKKzYzNjAwIGNiMWM4OWE0NGVkYjY1MzQ0MmJjZTkzYTE5ZDM2NjU5ODIxMDA0M2MgbGVnYWN5LXRydW5rCis2MzYwMSA3MWZkYmNkN2JhYTlhNmE3NzUzMmE0ZWNjZmJmNjg5MzVjMTAwYWQyIGxlZ2FjeS10cnVuaworNjM2MDIgMjYwYjYyYWFmY2I0OTdiZDk4MGRjM2M5NTJjYmQ5ZDI2MjNjMTNhMiBweTNrCis2MzYwMyA5YWNiMzE0YjkwNzI3OGYwNDYxYmEwZTBjYWU0NWM1MzQzODY4MjZlIGxlZ2FjeS10cnVuaworNjM2MDQgNzNiMjQxMjdmN2I2M2RmOTc3MjgzOTQ5MmRhNTgyYTIyNTE0NzMzZiBsZWdhY3ktdHJ1bmsKKzYzNjA1IGNhZjNhY2RmZTVlNDM4ZDYwYzY4Mjc1MjVkYTU5MTYzYzMyZDlmMjQgbGVnYWN5LXRydW5rCis2MzYwNiBhZmUxNDhhNGFkMjdkZmM1MTZiOTVhZjZhY2Q4ODM2Y2M1OTZhMThkIGxlZ2FjeS10cnVuaworNjM2MDcgZTUzNGVlMGE0Y2QwNDQxYTcwMWNjMzkxNTYzNWI2MDkzMTA2ZDQ1NSBsZWdhY3ktdHJ1bmsKKzYzNjA5IDgwNjU5YjlhNGNkN2QzYjYzMWQxNjZmMjg0NmFmYTEzMjE3Nzc3MTMgcHkzaworNjM2MTAgMTU0NmMxZmI4ZjgyODM0NjZjOGI5NzVjYzAyNWY4MTEyNGExYTMyZiBweTNrCis2MzYxMSBkMTI1OWZmYjEwM2MyOGNlNTViOTIxM2U3ZmQyMTBiODhjNmY1ZWNhIGxlZ2FjeS10cnVuaworNjM2MTQgZDU1OTFjMTZiOTk3YjFhMDNmZTEyZTIyOTA2OTBlYmMxZjM3MjI3YSBsZWdhY3ktdHJ1bmsKKzYzNjE1IDYwZGY4ZjY1ODU3NWFjYmQxZjAyNDg4ZDg1NDQxZmVkZDlkMzc1YmIgb2trb3RvLXNpemVvZgorNjM2MTYgODk1NzA4YjA1NmI3YmQ0MjEwZGY2ZmViMTU0MTJjNWFiNDVhYTI5ZSBva2tvdG8tc2l6ZW9mCis2MzYxNyA5NjcwMjYyNTc5NjExZjFmOWE2NmJkM2QzZDY3NjQwYjI5NzAyNjI4IGxlZ2FjeS10cnVuaworNjM2MTggMDA5MTE5ZWI0ZDJkODAwMTllNjhjZDUyNThkNDFiNzgwNGE0ZDYxZSBsZWdhY3ktdHJ1bmsKKzYzNjE5IGQ2ODhmM2Y3YzhkZmQyZTBlM2MxZTViNjQzMDE5Y2YwZWJmOWE3MjcgdGxlZS1hc3Qtb3B0aW1pemUKKzYzNjIwIDc3MGU0ZTEzMjc3NWFhMGM1ZGFhNTc1MTM3OWRjN2IyOWFiMWFmN2YgcHkzaworNjM2MjEgNDk5MDZkNDMyYjQ3YmFiMDNlNDEyZGU4OGNmNjVhM2RlYmJiNWQ3NSBweTNrCis2MzYyMiA1NjBjOTczOThiOGU1MzRlZjZkMmQxMjBlYjVjODFkNzYwZjgwM2IxIHB5M2sKKzYzNjI0IDM4YjFhMDE3ZGJmNjAwNzFjYWZkZmMwNDg1MDQ0ZWE0NGJiNWUwZGQgcHkzaworNjM2MjUgODEzZTBmOGE3NDFkNTliZDVjYTdiNjUwNTc2NTVlYjlkZDc0MjUxNyBsZWdhY3ktdHJ1bmsKKzYzNjI2IDI2YjM1OWUyMzdiNTRkOWE2ZGI4MDUzMmU2NDgzNDRlMDgyYTQxZjcgcmVsZWFzZTI1LW1haW50Cis2MzYzMCA0NmYzNTFlZTlkNWVkNDEzMDM0ZjJlOWYzNzUzNGZmNDFhMjgxZGNkIGxlZ2FjeS10cnVuaworNjM2MzEgN2ZlM2E4NjQ4Y2UyNDJmNWIyZDZjYmYxNzAzYmVlOGM0ZWI5NDY3YiBweTNrCis2MzYzNCA2ZWRjODBkNDIwMjExNDdjNTJhYmY3ZjkyNTdiZTQyMzFiMmJiMjUyIGxlZ2FjeS10cnVuaworNjM2MzUgOTM4MjZiMzVmYWNjZTY2YmRmZTFhY2U0YTBiNzlkMWNlYzAyNmVmZiBweTNrCis2MzYzNiA4MjcyNTQzODQ1M2JhOWNlNjdhNjY3Y2ZkMDVmMWM0OGEyYjVlOWVlIHB5M2sKKzYzNjM4IDMxNjYxMWZiMTI2ODJmNzBiNGQ1NzYxNzAwNDdkOGE5OGRhNjk4MGQgbGVnYWN5LXRydW5rCis2MzYzOSA1MTE5YmM3N2JkNmRkZTMzMjU4NDZjOTMxZTcwZGI0YjI2MDAwMDU4IHB5M2sKKzYzNjQwIDQwYTE2MzBlZjJjZjg0NjFhMWQxNmY0YTc5NmNhYmJkZTc5NDJkMjIgcHkzaworNjM2NDEgN2RmNGJhNDg0MDU4ZmRjZjExMTlhMjRhMGEwMTdlNzU0NTI2MWU1OSBweTNrCis2MzY0MiAxYzUxYWJlYjkyNWZlNjg0NWFjMmJiNGMxMDY4NjYxNjViMzMwZjhmIHB5M2sKKzYzNjQ0IGFlMDE4NjlmNjJiZThiZWY1ZTY2MmJkODIwMmViZTQyOTlmZWExZGIgbGVnYWN5LXRydW5rCis2MzY0NSBkN2JmMjY2OWZlNjYwODhhNDRmOGYyMmRiNmFmOGY3OGVmYmYyMWQ3IHB5M2sKKzYzNjQ2IDA4Y2UxOTJmMjRiMDQyMzUyYjM5Y2IwNjA0MTcxMTZjNmRiYjQwMjQgcHkzaworNjM2NDcgZjc2MmE5YWI2OWRkMThiZTk0MDJmMjgzMGRkMzVhNzVhOWM4ZTNmNyBweTNrCis2MzY0OCBjOWQ3MTdiNWI3YTI0NmM0YTI2YzM2MDMwZjAyM2U5NDA5OTAwMGMzIHB5M2sKKzYzNjQ5IDY1OTUzYWU5ODEyMjc5M2RmODczMTIxYjU2NjUzODRjNjU2YTNjOWEgbGVnYWN5LXRydW5rCis2MzY1MiA4YzJmNWFhY2MxYmM5ODNjMGM3NDE0ODY3NDE0ZDA5MmNkZGZiOGY1IHB5M2sKKzYzNjU1IDcwZjlhNWRiMjc5YzIwZjIzZTE4ZjUxY2I2MDQ3Y2NiMWIxNDVhYzUgbGVnYWN5LXRydW5rCis2MzY1NiBmMjhjYmFiMTFhY2Q3NGNiMDE3NGY4MWJiNzk2ZDE5MTYxMzFkNzFiIHB5M2sKKzYzNjU4IGUyNDIwMjYxZDRhMzAwYzU1ODExY2E2YWQ3MDY1OWZmNGZiNTQ1Yzkgb2trb3RvLXNpemVvZgorNjM2NTkgNTQxMWI2YTIyNmU1YWIxOTUyODc1NzBlYTdhYWQzOTU5YzJkNGRmYyBva2tvdG8tc2l6ZW9mCis2MzY2MCAwZmQ1NTNhZDUzZjY0NjQxNDE2Zjk0NjQ2ZWMwZjY2ODA0ZjRhNDMxIGxlZ2FjeS10cnVuaworNjM2NjIgYWZiZGUzNjBkZDFhOTVkYWZmYzY0OGMwZDZiZTFlM2UzOTI3Nzc4NCBweTNrCis2MzY2MyA2ZDNlMTMzMGEzYWE4NGFkNzQ2NTMzZWJhMjQzMmUzNDg4OThiYmY1IHB5M2sKKzYzNjY1IGU3MjVmZjE4MzQyYjEzZmNhYzBhZjg2ZmI3YjcxYTc5ODk0NzA3MTIgbGVnYWN5LXRydW5rCis2MzY2NyAzNDZhOTlkZjU4ODlhYmE0ZGM5NGQ1YmU0MzNkYzllOGI1YWM2YmRlIHB5M2sKKzYzNjY5IDBhNDU1MDgxNDMyMDdkZDgyYWQ2Mjk3ZDZkYzZhZGQ3ZTgwOGZmY2MgdGxlZS1hc3Qtb3B0aW1pemUKKzYzNjcwIDBiOTc0MjU4ZTE1YjgzMmY1YTZiMDlmMTZjYjhiOGYwNzA2MmFmYWQgbGVnYWN5LXRydW5rCis2MzY3MSBiOWVhYjc0OWJhNjYwMDc1ZmIzMzViOTkyMWYxY2MzYjhkY2RhZWJmIHB5M2sKKzYzNjcyIDA0YmQzNjkwZmIxZmU1YTM4MTU2NGY2NWZmZDMxNDc4NmE4ZmVjOWIgbGVnYWN5LXRydW5rCis2MzY3MyBhYmFmY2NmZTc1MDFjMjMxY2Q4NmJiM2U0NGI0MTFjYjY2MzIyNTY1IGxlZ2FjeS10cnVuaworNjM2NzQgMzI2NGFhZjdjZjMwM2YwNWJhNzIyZmQyM2NkMjJlMmIxOWY1MWI1ZSBweTNrCis2MzY3NSA0ZmUxOTJkNDg5NjAzMmYzNTYwNjAwNWNkZGYxYTExYzUzY2Q4M2Q4IGxlZ2FjeS10cnVuaworNjM2NzYgNjUzZDA0ZjMwNDI4NzcxZDZhZGE1NGJiYTY0ZGQ4MjljYzUzMGFlNiBweTNrCis2MzY3NyBlOTIzOWFkN2I4YzA3MDI3Y2RhYjlkZTUwMzhiNGZmNjA5ODg2Zjc3IGxlZ2FjeS10cnVuaworNjM2NzggNGQ5OGViYWVkMjc4MzZmNzcyYTdjYzI5YzdiMDc2YzRlYzFhNmM4NyBsZWdhY3ktdHJ1bmsKKzYzNjc5IDE5NGJiZjA0YjAxNTQ0MjVjMTUzZWQ5MzczYjI5NGRlNzRlNjlkYmYgbGVnYWN5LXRydW5rCis2MzY4MCAyY2NiMzRkNTM3ZGI2NGU2NTBlYzFlMDNhMzg1NjYyNWU0YjI5Y2I0IHB5M2sKKzYzNjgxIDk2YjM0MjYzZTQ0OGQ0Y2IzN2Y1ZmFhMmVhMjI5MzE2NDI0N2Q4MGYgcHkzaworNjM2ODIgMjNhYjU4NmM0MjdhMzdlMjFmNjFkZTI3NmYwMzJhMmUyZDgyMDU4NiBweTNrCis2MzY4MyA4MTFhODA2NTEyMzJlOGQwODU0ZWY4MjYyOGM2NTZmMGE3MDYyZjU0IHB5M2sKKzYzNjg0IDhjYzNhZDhiZjdjNGU2N2FkMzk2ZTcxMDczODVlZjFlMmFiNzcxNDcgcHkzaworNjM2ODUgZTNlMGMxYTY1MjA0OWZlOWZlYzc1ZmZhNzVkMTcwM2Q1YzBjYjM2YyBsZWdhY3ktdHJ1bmsKKzYzNjg2IDcwOGE1NjEyNzljYWI0NjExYzAwZDFjM2Y0OTc0MGMzMDdjOWQwMzAgbGVnYWN5LXRydW5rCis2MzY4NyA5YTBkNGRjMDdjODk1NGNhYmU0ODc5M2Q2MDNiMTljNWNmNGU2NTM3IHB5M2sKKzYzNjg4IDM0ZTQxZjRlOTYyZjE0YzFkYTU1ZDQ5NGI1MzQ2MTYwOTViMzc1YWQgbGVnYWN5LXRydW5rCis2MzY4OSA0YWIzZTdhYzhiZjRhYTM2NjA0MjA4MTdkYzY1NTQ0MmFkODY2ODJmIHB5M2sKKzYzNjkwIDE3YjhmNDQ1ZDA0MzFlZDBmYzkxNmQxODAyNjVjMDc4ZGYyYjBiYmYgbGVnYWN5LXRydW5rCis2MzY5MSA2NjJkMTVhZjUyZGY2NjY1NGViNTQ2ZWFjOGRiYjhiZmI3ZWI1YjgzIGxlZ2FjeS10cnVuaworNjM2OTIgYTk0NmJmNzY2NjU0NDA4NjVkMDJmOGQ0MTRlZDI1N2U0NzYyNzk4ZSBweTNrCis2MzY5MyBjZTljZGNlYmFlZjAyNDdiYjhiYWM4ZjZhMWE2MDhiMTVlMmYwOGRkIHB5M2sKKzYzNjk0IGE2ZDYxNzcwODY2NWFmNjdkZWM5MGE2OTE1MTI3Mjg4MTJhZTY4YmMgcHkzaworNjM2OTYgNzAxMDRhM2UxZDlkMzk5OTMyNDJjN2FkOGJiNWQ2N2IzYzA4Nzk1ZCBsZWdhY3ktdHJ1bmsKKzYzNjk3IGJkYTE1ODU5ZjY1OGYyMjEwZmE1OGNlOWRiNTk3MTYxMmFjNzM0NDcgcHkzaworNjM2OTggYzU2MDRiZTdhY2RmZTBhMzc3OWIyYWZjNTA0ZmQ5YzhlNTg3MTZlNiBsZWdhY3ktdHJ1bmsKKzYzNjk5IGJhODAxNWUyMzQ4NzIwNTQ0M2MyYjU2NGIxYjhjNmU1MjZlNDNkYTYgcHkzaworNjM3MDAgZTFmY2MzODgxY2I2ODc1YjRkZjcxYzEzMTBlMTY0YzNkZmFmNWE3MSBweTNrCis2MzcwMiBlMDE3ZTFmZGUzNjkyZTI5ZWFiMDA5ZjU4NGFkNDZkYTkwMGI0YTVlIHB5M2sKKzYzNzAzIDM5NzVlYzJiMGRlMmFmMjQyNTc1YTk5Mzk0MDlmY2EzODZmNmY2NjYgcHkzaworNjM3MDQgZmNkNDU2YWU1MTViYTg4MTg2ZDIxNjlmNzI4MGJlNjFhMmNkN2UwZiBsZWdhY3ktdHJ1bmsKKzYzNzA1IDAyN2M4ODdlOWRhOTIzNjg3ZmE2N2E4NDc5ZTQ2ODQyOTBiYjFmYjIgcHkzaworNjM3MDYgYmM0ZGY1MWMwMWQ1MjU1MTcxZWQ2MmZlOTRjYjU0OGMyZThiMTY0NyBweTNrCis2MzcwNyA3YzViNWYwZWIzMGQ5NTBiOGYwZTUxMmY5YmUwNWYzYjc3ZDA2MjliIHB5M2sKKzYzNzA4IGRiZDlhZDUyYjRkMGU5ZmNmMTA3MTliMmI1YzRjZmQzNzNhMzM3OTIgcHkzaworNjM3MDkgNzljN2U4NDhlYTE3Y2M5MWM1MjY1ZmM1ZWViZDYzZmUwMTRkNjBmMCBweTNrCis2MzcxMCA2Yjk3M2Q5MzZiMDc5NzE2MGNjMTZiNWU0NzE1NjhmNTZlZThhZWJmIHB5M2sKKzYzNzEyIGMyYTBhNzA4NDYyZWJhMjdhMWIzNTAzMGVkM2Y1NDYwZWViNzg4NDUgcHkzaworNjM3MTMgMDYxOTNlM2RmNDE2ZjViMjcyYzk4NWRmNTUzNTAzY2VmMTlmZTNmNyBweTNrCis2MzcxNCA4ZmYwYjkyNWVhNjQ4ODU5OTU2ZDk5YjYxYWRmY2M2OTY0YTkwYTllIGxlZ2FjeS10cnVuaworNjM3MTUgMDUyNWNkNWIyNTgyOTAwNjhmN2ZkY2NkYmJlMzRiN2JjYWNjMmNjZiBweTNrCis2MzcxNyA2ZjFhNjMyY2IyZTUzMmI4M2Y5Y2I1YjdhZjk3OGZkMmNlMTJiNmM2IHB5M2sKKzYzNzE4IDNjNzBkNjhiZWIzMDk1N2E5NzY5YzdmMGEzZmVmZTBjODAyOTE4ZmQgbGVnYWN5LXRydW5rCis2MzcxOSBmNjFiNmMzMTAwMWNiNWZjNjIwZTUwZmEwMzFiMzAyNjIzMDdlZDIxIGxlZ2FjeS10cnVuaworNjM3MjAgNzg5ZTBmMTVjMzdiNmY2MjdhYTU4NThjY2JmYzM5YTE1Y2E1MTQ0MyBweTNrCis2MzcyMSAyZjkzMTkxNjlmZWM5YzYzMGQ4MzM4ZjE5NGIxNTJlNmU2Y2ZjNjllIGxlZ2FjeS10cnVuaworNjM3MjIgNTk3ZDhmZDU2OTNlNDM5NjE3MGE1NTJhZGQzNmMwMGNhYWI4MjU0YSBweTNrCis2MzcyNCAyNzNlOGRlMzQ2MDNkY2EyN2RlYzQ1NTI2YzIzMjJhZjIwNWZjMmM4IGxlZ2FjeS10cnVuaworNjM3MjUgYzRhNDU4ZWNkMmVkN2YwMDJlMWRjMGFkYmMyMjE5Y2ViNjIwNzkyNCBsZWdhY3ktdHJ1bmsKKzYzNzI2IGY2Yzg4ZjE3MmJiZWM2OGM4MjU2OThjOGFmNmYwMTU0YTVmZTM4OTMgbGVnYWN5LXRydW5rCis2MzcyNyBjOTFiMzdkYmJhM2YxOGJkYzM2MDQ3NjMyOTgwMDZmOWZiMzM3NTM2IHB5M2sKKzYzNzI4IGE4Y2M4ZTZmMGMxYTY5MDBiNDlkNjE1ZWNjMTcxZDVmNTY0YzJiMGYgbGVnYWN5LXRydW5rCis2MzczMSA2MWE1Njk3YTc2MjY1MWZmZWViZDFiNjQ4MDJiN2MyNDAwNzY3ZTZiIHB5M2sKKzYzNzMyIDE0NzRmMjUxMjhjNDRlY2E4MDNhM2U5NTBiZGQyNjE3ODdiODExYTYgbGVnYWN5LXRydW5rCis2MzczNCBlMWE0YmY5MWIyYWVkYzQwZTRkMGJiNTQzMGE1NjZhMWE0YzRkYmUwIGxlZ2FjeS10cnVuaworNjM3MzUgMjMzNzk2OTViNGRiMjgwYzQ3ZGNiZTUzMTI0OWRiNjk0NGJjNTBlMiBweTNrCis2MzczNiAzNDNhYWFhODAyZTgxMDQyZTVlYzlkNTcxMGE2NWVjZmE4Yzk5M2M0IGxlZ2FjeS10cnVuaworNjM3MzcgZGMyN2IzYjQ2ZjBkZmMyMGM5NWZhODY2MjQxMzE2MTYyZmY4ZTM3YyBweTNrCis2MzczOCBlNDEwNDU5N2MyYTNlZjc2MmQ5NjIxYmI1OTkyNGQ1NzVlYmQ0ZDkwIGxlZ2FjeS10cnVuaworNjM3MzkgNTFjNjNiN2VjMWE4YmNlYTg0M2M5NjVhN2Q0M2E2YmZmYjE1NWEzMiBweTNrCis2Mzc0MiA1MDJlNzJmMjhlOWVjN2Q1NTI0MGU1MWRjM2EyMTg1NGU4OWFjYjM1IGxlZ2FjeS10cnVuaworNjM3NDMgZjk0YWNhYjc4YWE5OWQ3YmUzNTNkZjQxMGJmNjI4ODQyM2M2NjcyYSBva2tvdG8tc2l6ZW9mCis2Mzc0NCAzZWFhNzIzNjcxM2ZhMTc2NWZmZTM2MmZhYzBkNjBkOTVhNGRhYzMyIGxlZ2FjeS10cnVuaworNjM3NDUgNGE3ZjM0ODBmNDU0ZGI3NjdkZTI0MjRmOTA0YzdiMGU3Mzk4ZjlkZSBsZWdhY3ktdHJ1bmsKKzYzNzQ2IDRkM2U5NTM3M2Q5ZTI0MGYxNWQ2M2NiNmI1YTgzNmI0YTQ2OWZhNWQgb2trb3RvLXNpemVvZgorNjM3NDcgNDM0ZjFkNWFjZmU0Y2U4NWVjM2Q4ZmMzYzI3ZTBkZDQwZDYzYzI0OCBva2tvdG8tc2l6ZW9mCis2Mzc0OCA4NDk0NmY0NTUzZjEzOTlmZjVhN2JmNTg4MDMyY2E2NTI0NGUzNTMzIG9ra290by1zaXplb2YKKzYzNzQ5IDQ5M2IzMmM3ZDEyMTIyNzdjY2Y5MGQxMzU3ZDJlZWIwYzQxZjdkODcgb2trb3RvLXNpemVvZgorNjM3NTMgNGVlMjlmZmQyODU2ODY1YTU0YTFlNTRmMmU4YWYxM2VjZDA4MTk2ZCBweTNrCis2Mzc1NCA3N2Y4YWU4ZmM3MGI0YTA5YjU1YmM5YzM1Nzc4ZDAwNzAwZjliZGM2IGxlZ2FjeS10cnVuaworNjM3NTUgNjdmNGI3NzY3YTBhYjExYWFkM2E2Njk2OTY1NDE1Nzk5YzEzMWJiNyBsZWdhY3ktdHJ1bmsKKzYzNzU2IGI5N2RkNTg4OTI0Njk5ZmIzYjVlMjFkYjU0OGJjZDkzOTBmNGY1MTkgcHkzaworNjM3NTcgOTNmZTkxM2ZhZTU1NDdhMTljMjEzZjYwMmM3MmJmMzM5NzdhNDcwMiBsZWdhY3ktdHJ1bmsKKzYzNzU4IDA5MDY1YjAxMGM5NTA4YTc3OWMwYzNmMTBhMDFlOGQzY2MxYTNmM2MgbGVnYWN5LXRydW5rCis2Mzc2MCA3YWU3OWU5NmZjNDJmOGYzZWZhMDlhODBkYzg2YWQyNTVkOTVhY2ZlIGxlZ2FjeS10cnVuaworNjM3NjEgMTI1MjQ3ZWNlNTYyNTJhNjgxZjVkMjViMTJjYjM2MzVjMDM5YjdiZCBva2tvdG8tc2l6ZW9mCis2Mzc2MiBhMWNiNTQzMDliNGQ0ZjQzNjBhOGRhMmIxNTA5NGQwNTlkZjllZmU4IHB5M2sKKzYzNzYzIGRjZDZiZmIwZGI0MzljOWQxNjdhN2FhNDI0MmQ2ZWI1ZTE4MGQwNTEgb2trb3RvLXNpemVvZgorNjM3NjQgMjNiOThmN2VmNDU0NzY3ODdiMTMyMTBkZmE4ZThiOGRlYTAyYzg5YiBva2tvdG8tc2l6ZW9mCis2Mzc2NSA3OWYzMTI3ZjFkNzI3MGRlYjA2MTA4NGVkN2NmOGQyODk1YTdhZTQ1IG9ra290by1zaXplb2YKKzYzNzY2IDA3MmJmYmI2NTQ4NDg1ZTQzYWIzZmIzODlhODBjMDM4ZTAxMzQxNDYgb2trb3RvLXNpemVvZgorNjM3NjcgMTU2NzQ2YTYzYTVjOGYzMzI3YzhiZWNjNzhmZjI1MjUzN2U0M2NmMyBsZWdhY3ktdHJ1bmsKKzYzNzY4IDc2NTI5MzZmYWQzOWY4YjdlMGY2YmVkMzNlZTAyZTQ3M2RmYzUzYTEgcHkzaworNjM3NzUgNWUyM2IwZmNjNzhlZTZhNDNkYzdlMzI3ZWYzZGEzOGU5MThlYTZjYSBsZWdhY3ktdHJ1bmsKKzYzNzc2IDI5Yzk1MzZjMDRhZDQ4NzY5ZWQ5NzM2YmEyNzdhNDI3NGI2MDZiZmMgbGVnYWN5LXRydW5rCis2Mzc3NyBiNmNiZWM0OTk3NTYyMmQ2OTcyN2JjMzllNDU1MWE3NzNjNTViMzMzIHB5M2sKKzYzNzc5IGIxNGM0YjViYWIwOGQzNmZmYjkyNTI5NjBmYWQzMGYwY2Q0NTExNGQgcHkzaworNjM3ODEgMDAxNTQ1NjdkNTkzNWIyODRjYWMyNTczMmJlODk4OGUwMzczMjE3YSBsZWdhY3ktdHJ1bmsKKzYzNzgyIGVmNTFmY2RhMzQ4YmY5MjNkZDk4MmVhNzJiYjIzNjY3YzA2MDEyMjMgbGVnYWN5LXRydW5rCis2Mzc4MyA2M2I0NzQ1NTYxYzM0MzZlZjVkNzIwM2FiZGQzNmY5YzU5ZmZjODYzIG9ra290by1zaXplb2YKKzYzNzg0IDllNmU2YjgxN2YzMjAyZTMwZGJjYzg4NDk1YWZhNjY1ZmUzMTA0NGIgbGVnYWN5LXRydW5rCis2Mzc4NSBmYjJkOWIwYjQ0NzAzMmExZjdkYWYzODFmNWVmZDkyOTk3OWUwZDRjIG9ra290by1zaXplb2YKKzYzNzg3IGU4MWQwMmQwOTY5NzRmMTMwNWU1MjQxNDIxMzk4MjA5ZDcwMWE4NjkgbGVnYWN5LXRydW5rCis2Mzc4OCBlMmM1YWUzMGNmZmVhY2Q0OGEwZWZkNTYxZDNkMjE2NzUxMWUwNjY3IGxlZ2FjeS10cnVuaworNjM3OTEgYzU5NWRhMDU1ZmQwOTIyMTJmYWE2Y2Q1NjM4MTFlNmNlMzVlNjcwMiBsZWdhY3ktdHJ1bmsKKzYzNzkyIGM5MGNkZDgzNTk2MDZlNDM3MTdiYTBkOTgwMThmMGIxODM3ZGIzOTMgbGVnYWN5LXRydW5rCis2Mzc5MyAzOTg2OTgwM2JmYWVlZGQwNjA0M2NlNDczODQ5NTZmODAzOTUwOTFhIHB5M2sKKzYzNzk1IGFlYTNjNTU0M2Q0M2YyYjlkNTFjMzc4NTY3ODNiZGNkMjliNGU5NTAgcHkzaworNjM3OTYgMzY2YTQzNTUxMWRkNWQ0YWM0MDU5NDIyZDAyNDhlZDQ5OWEwOGQzNSBweTNrCis2Mzc5OCAxZDI5YmZhMjczNjgxYjk0MmFkODhlYzgxMmU1YTJmNDRjZjU4NDA1IHB5M2sKKzYzNzk5IDkyMmU1YTI0Y2M4MmU5ZWZkYTQ4ODY3ODMyOTY2ZmU3ZWU3MDU5ZWEgbGVnYWN5LXRydW5rCis2MzgwMCAyMzkxZGE2YzQyZWYwOGExNmM3MWNkNmE2YjhkYzEyYzY0MzY5ZDQ2IGxlZ2FjeS10cnVuaworNjM4MDEgMjYzZmQ2ZmJhY2FjNTg0NWU5NDYyNDQxMzExZGIxYzAyYjgzYmJiNyBweTNrCis2MzgwMiA4ODJhYTE0NjY1ZTQ3ZjFmZDg4MDc3ODJkMDY0NDkxOGE1MDM5NTUyIGxlZ2FjeS10cnVuaworNjM4MDMgMDE5ZDNiMTEwYTZlZWU5YTRhM2Q2NjU2NDk0NTUyMzFmYTlmNmUyZSBweTNrCis2MzgwNCBjZjVmMjczMWZjNTYwNzE4YzFmMzkxYmIzYjlmMWIyM2M4NWJjMjAzIHB5M2sKKzYzODA1IDFlMWRmODkyMDk1YTcxNDE1NDEwNDVhNDZhNjZlNjBiNjVkYjhhZDggbGVnYWN5LXRydW5rCis2MzgwNiBlYTI3M2M4ZTNlYWEzMDU0NDBlZGYxZTEwZWQzNjA0ZmZiNmIwYzU3IGxlZ2FjeS10cnVuaworNjM4MDcgMzM4NjViYjU4Mzk2MmYyNTMwNTY5YTdhNDNiZjVkYTczOTdiYTAwNiBsZWdhY3ktdHJ1bmsKKzYzODA4IGQ2NjM5Y2Q5NTc1ZmYyMGFlZWMyOWQwYzhhMGRkZTc3MDYzNWExOGIgbGVnYWN5LXRydW5rCis2MzgwOSA2Y2U0NDM1ZjE1YWQ0ZThlZGNmOWYyODc2NWNmMmEwODAwZGM0YWM3IHB5M2sKKzYzODEwIDBlOTE2OTBkYWUyZjYzOTZjYWY0MjE4Y2UyNDE3Y2M1ZTk0NDJkMTkgcHkzaworNjM4MTEgZWNhODgyNzMxMTk0Y2RhYzQxNTEzZTc2MDk0Mzk5YzlmMDhkNmEzNyBweTNrCis2MzgxNCA0N2VmOWE4MDZjZTk3YmU3NjlhNDMxMTU0MjVlODQ4N2IxMDY5NzY2IGxlZ2FjeS10cnVuaworNjM4MTUgMGRhMjdmZGYwMTkyMDU3NDhmYzY2ODA3YzdlNmIwZWI5NTIwODAyYiBweTNrCis2MzgxNiBjNDFjMzk1NDU4ZWIwMjhjMWY4NDQ5NzJiMDhmODQxNDlhODcwOTI0IHB5M2sKKzYzODE3IGJiYTI5ZjQ2MmJjYzY5MDQ5NzNiZGVkMTdjODBlY2Y4ZDRhZGRiM2MgbGVnYWN5LXRydW5rCis2MzgxOCAxMDVhZDYxMzI1YWMxYzIyYTBjNTA4ODE0Mjk2M2RiOTgyODdhZjliIGxlZ2FjeS10cnVuaworNjM4MTkgMjE1MTBjYzBjMmU0MmI3YmYwYjU3N2YwYzI4ZjNkNWNjYWVmY2FmOSBsZWdhY3ktdHJ1bmsKKzYzODIzIDBiMjdjZTNjNmIyMWM5Y2FmNzhmNzQ2NTRlMWQ3MWI4NWE5NTdlMGQgbGVnYWN5LXRydW5rCis2MzgyNCAzZGNkNzAwMDQ2OTZmZGY4NzMzMDQxMTkwNWQ4YzBiMWIwYjY5MGUyIGxlZ2FjeS10cnVuaworNjM4MjUgYTJlNzJlY2RiZTAyYmU4N2UwODg3ZjQ3MDc5MzRlOThkOTNiYzA3OSBweTNrCis2MzgyNiBjMDRhYTRhYWJlMTdlYmQ5NWM4YzhkZTM3MTIyNmVmYTViMTkxNDI5IHB5M2sKKzYzODI3IDJlODc2OWQ1YTc4NmI5NTQ0YzJmYjk0ODZkMmQwYmQxZWE5YjVmMjEgbGVnYWN5LXRydW5rCis2MzgyOCBmZjZjYzlkNGZmZDM1YWU1MWFjMWY5NmEwM2Q0M2E2ZGYxYTU2MDMyIGxlZ2FjeS10cnVuaworNjM4MjkgMDNhZmU2OTg1ZTVkZjc4MDIwNmIxOTA1ODhjNjQ0NDZlNGUyMDkwYyBsZWdhY3ktdHJ1bmsKKzYzODI5IDgyYTQ3ZDc4ZDI3OGI5NzYzNWI1MTNlYmI4OWE4YWY1MWZiZWEzNDggcHkzaworNjM4MzAgYWYzNjg1ZmE5Y2E5MTQ4MjU2NTJhNGU1YmRmZDY4ZGFiNzU3N2Q4NSBsZWdhY3ktdHJ1bmsKKzYzODMxIDUxYTg2NTMxMjhlM2FkNWYzOWQ1NjYzZWFkZDE1NjlhMmJmM2Q1OTQgbGVnYWN5LXRydW5rCis2MzgzNyBiZWUyNzFlNzZhM2U1MzExYjcxMmFlOGQxN2QyMmNlZGZlM2UyMmExIGJlbmphbWlucC10ZXN0aW5nCis2MzgzOCAwNzVjNmJkMjBmMDc4MDRkYjZmZjlmZThlM2NhNDJkODRmOTQ4NjNmIHJlbGVhc2UyNS1tYWludAorNjM4MzkgMDE1NmMzMzZlNmIzZDUxZWFiZjZiYTU1MjY2M2ZjZTc1OWRkNTU0NyBsZWdhY3ktdHJ1bmsKKzYzODQzIDFiZGYwNzQwOTQwM2I0YjU1NzgyODcxZTZkYTFhYWFlNmQzNjJiNjIgcHkzaworNjM4NDQgMmY1ZWRlMDBmYTllZTE3YWFmNDRjYTExZDRmMTU0MmYxODFiZDMxMiBweTNrCis2Mzg0NSBjNGUyZWYwOWEyZjA0YjI5NzQxNGM4YTZjZjM0MjE2Y2Y2MDIzNmNkIHB5M2sKKzYzODQ2IDEwNjJiN2RlYzk1YjdhNjdhMGVkYzk4OWZiMWQ5NjRlYzI2MWM2ZTEgbGVnYWN5LXRydW5rCis2Mzg0NyBkMjM2MmY5OWE0MDM2OGM4OTdiNTMzNDI2ZDIwMmM5Yjg4ODBjMGUwIHB5M2sKKzYzODQ4IDYyMmNhYmJhZjJiY2U5OTdmNTliZGNhZjFhZTMyZWRiOGRjMDE5YzEgbGVnYWN5LXRydW5rCis2Mzg0OSAyYTYzYWIzNTk1YTE5ZTI5MzFkM2I0ZDliODIxNDVkZmIwZWE4ZjMxIGxlZ2FjeS10cnVuaworNjM4NTAgZWNmMmVkMDk1ODgxNTU3ZTZiMjhhNzk0YjA5ZTAzZDU0MzdkZjE3OSBweTNrCis2Mzg1MSBiMTMwNDRkNTU0YWZkYjMxMjA4MWRlMWM0ODhhMGM5ZTMyNDgwOGRiIHB5M2sKKzYzODUzIDgzYTEwMDAyZmVkYmRhODQ5NDE2MDMyOTQ4ZDNiNTVhNjA4NzUxNTkgdGxlZS1hc3Qtb3B0aW1pemUKKzYzODU0IDY1MzAyNjQxNDM3NmM4M2E2Y2Q4ZTgzNjhkMTA1NTc5MTJlMDQ1MjQgdGxlZS1hc3Qtb3B0aW1pemUKKzYzODU2IDg4YmQwN2MwYTg0N2QwMzQxMTc0ZTI1ZThlNjg0NmEwYmYyNGE3MzYgbGVnYWN5LXRydW5rCis2Mzg1NyBiZWEzYzFmNTJlMDViODg3NGViMDIwMTEzYjM3ZGNhOWE4NzdjMmI4IHRsZWUtYXN0LW9wdGltaXplCis2Mzg1OCBlODc5N2U2ZTA3YTc0MDVlYzUwNTM4NTg2NDBmMWNmZTNlZGQ4ZWIyIGxlZ2FjeS10cnVuaworNjM4NTkgYTY1ZjA5NWIyN2YzY2M0MDg1NmM1MTc2YTU0MTViYmY5MGJiZTYxMiBsZWdhY3ktdHJ1bmsKKzYzODYwIDM3MDI3MjlhMjQ3MDczYTA1Mjg4MDg1YjU0NjlkOTkzNDU1MzBmNDQgbGVnYWN5LXRydW5rCis2Mzg2MSBmY2Y5ZDk1ZWY1MGQ3OGIzMzFmNGM4NjNhMTQxMjIzYmZkYWU3YzIyIGxlZ2FjeS10cnVuaworNjM4NjIgY2ZiNTQ5MTAwMWQwMmFlNGI4MTVmM2E0YWJkMzc5ZmY1MmVhM2NlZSBweTNrCis2Mzg2MyBlN2YwZmQ4MzU4ZjVhZWY3NDE3OTgzZGFiMzA1ZmQxY2E5Y2JjNGViIGxlZ2FjeS10cnVuaworNjM4NjQgNGRlZGVmNGMwZGZkMjkwOTI1OTA1MTMyZDY2NmMwY2I1MTVkNDE3MyBweTNrCis2Mzg2NSBjMGZlNTRhMDI4ZTM2NTkyMDEzYWZmY2U4NGQ1ZmRlYjUzZDVhNTU3IGxlZ2FjeS10cnVuaworNjM4NjYgMzE0NzZkYjk5YWMzMWZmMmE4NDJjOGQwNWE5ODlmZGVkYzc2YWQ0NyBweTNrCis2Mzg2NyAwNmQ3ODU2Y2E5ZjQ2YThmZWI5NGEyY2ExMTk3MmMyMzg0NGJkMjIzIHB5M2sKKzYzODY5IDgyM2JlNGEyNzVlMmI5OWUxMmUxODJjZmFhYjJkOTQ4OTI2NjFlZDMgcHkzaworNjM4NzEgYzBkNjE2ZjBhZDg2MzlkMmM2MDlmODg4ZjdjNmZmMDljYmMzNWUwZiBsZWdhY3ktdHJ1bmsKKzYzODcyIDMxZDJmZjg2OTZiZGM4ZWMyMGM5MzdmNDIyZTE4ZThjOWZmZDA2NGIgcHkzaworNjM4NzMgMGJmMDhkZTMzOWEwZDIxMDNhZjIxNDliMGEzNDYxN2MyODk2YWZhYyBsZWdhY3ktdHJ1bmsKKzYzODc0IGYxNTAxNzdmZjFmZjc5NGQyOWRkM2NjNDY0MTEwMmVhNWQ2ZDk0NWIgcHkzaworNjM4NzYgZWJiZjg5NTA1NmVhOGFjZjExZTU3Yzc4Yzk1NmE3NDUwMGQzNjkwMSBweTNrCis2Mzg3OSBiNmRkNDllZTAzNWI1ZDNkNmE4ZjhjMDQwYzgxNGUwYWJkNWM1ZjFkIGxlZ2FjeS10cnVuaworNjM4ODEgNjQwNDQ0NmU1YWEzNmIyMTBiNzhmYWI0OWY4NWY3Y2U2YjIyMjkyNCByZWxlYXNlMjUtbWFpbnQKKzYzODgyIDdlYWFhZDA5YjZjZGQ0YjdkOTg2YmZiOWVmMjU4ZDc2NWFlZjY5MjMgbGVnYWN5LXRydW5rCis2Mzg4MyA3ZDY2MTEwNDY0MDQ5YjEwMmEwZWU5Zjk2MzNlNGJhODA5NDI0ODI2IHJlbGVhc2UyNS1tYWludAorNjM4ODcgMTAwZTMyNTA5YjU3NzY1MzZjYTZkY2FiZmIyMjY0ZDA0NDIxY2Y1NyBsZWdhY3ktdHJ1bmsKKzYzODg4IDA1ODA1MzFjMzc1NTVhZGU4MzFlZjcxMjZhODc0ZTBhYTcwMjJiYzkgbGVnYWN5LXRydW5rCis2Mzg4OSA1YmM3ZGE2NTAzYjA1ZWI3NzZlMTYxNGEzOWQ2MmI5OGQ5NjFjMTlhIHB5M2sKKzYzODkwIDc5MzczZTA3MGQ0ODYwMDllZmFkOTJkMTE4NWM2Y2U0NWFhNjkxYWQgcHkzaworNjM4OTEgYmIyYzRiZGMzYzY4M2I0OGZhOWU5NWJkODI4M2ZkOTQwNDhjMjRiZCBweTNrCis2Mzg5MiAxZjJmMTU3N2FlNzgxOWNkYjA0ZjQxMWI5M2FmMjZiZjU4YWI1ZTU4IHB5M2sKKzYzODkzIGI2YjUzNGI4MjhiMzM5YmJkNmVmN2JhMDIyNWZjOGViYjkxMTJjMDMgcHkzaworNjM4OTQgNjVhNjA2MDhhYjVhNTliMDI4NDkzY2Y3NTg4NGUxOTVlNDVhYjllMCB0bGVlLWFzdC1vcHRpbWl6ZQorNjM4OTUgZjllYmFjYWNlMzVkM2NiNTdjNjllYWZjNWUwNDdjZWExYjlhZDk5ZiBweTNrCis2Mzg5NiBlMGNhMDIxOGZmMzNjMDI0YjUxYzIxNGI1MDE2ZTJjOWM5NDAyOTYwIHB5M2sKKzYzODk3IDQ0NDAyNDdiOGE0NDgxZGZlNmU0ZjNmMDA1MTA0NDhmM2YxZDBlNDkgbGVnYWN5LXRydW5rCis2Mzg5OCA3NzA4OGQ0MWM3OTAxZmNkMGEwMWI0NDI1OTVhNmYxZGNhMTE3ZmE4IGxlZ2FjeS10cnVuaworNjM4OTkgZWQ0NzFhODAwOWE2MzE5MWY0ZGNhOWIzNTdkODFiZGQzNDNjODYxOSBsZWdhY3ktdHJ1bmsKKzYzOTEwIDQ3ZmYyNGJjNjExNjVkMmYzMjY3ODE5NDMyYjE1OTA0NjkxOThiNmMgbGVnYWN5LXRydW5rCis2MzkxMSBjMjNlNmQ1MzAwYTBhMjRjNGE1MTExYTI0NTQ4ODhhYTUxMzEyYTg0IHB5M2sKKzYzOTEyIDM5OTkxOWU2MWQyMzhjMjIyMGMzY2ZmOGYwMDMzMWUyYzEzMGQ2M2MgdGxlZS1hc3Qtb3B0aW1pemUKKzYzOTEzIGY3M2U2ZjZkOWJhNjk3Y2E5MjdlM2RjYjM0OWRiOGZiMjg4MGE3MzcgdGxlZS1hc3Qtb3B0aW1pemUKKzYzOTE0IDUzNTNiNTUwYzk2OTJjZTg4N2QyNjBhZGE5ZDAwNDU1YzljZDViZGMgbGVnYWN5LXRydW5rCis2MzkxNSBhNzZlNDliMjE5YTJjYTJjNzU0ZTU1NDc1OTY2Mjk1ZTFkZTY2NjQ4IHB5M2sKKzYzOTE2IDg2ZWQ5NzlkZTg5ODdmYjBkYzMxOGQyZTA5N2VlNDY5MTA0Y2EzY2UgcmVsZWFzZTI1LW1haW50Cis2MzkxNyAzMjU4YmJmYzQ1NmU2NzRjMWE0ODg0YTA0MDhkY2Q3OWE3MDUyZjgxIHB5M2sKKzYzOTE4IGU0YTE4NjQzNzQ0MDQyYjYzMTU4M2NlZTg4NmExODJmNGNhNzcxODUgcHkzaworNjM5MjkgZWYwY2NjZGU4YzI0NWNiNTU2ZjQyMWYzMjBmOWE2OGNiYmJmNDJjNyBsZWdhY3ktdHJ1bmsKKzYzOTMwIDU3MmQ4MWVjZjAwZDYwZTNkNmZkOWU1ZDI4ZjRhMWRmZjkwMTc0YjAgb2trb3RvLXNpemVvZgorNjM5MzEgZjgyMTE2NjAwYzBmMTgxYmNiNTM5ZmI4NTY0Njk0NmU4OTAzNmQ3YiBva2tvdG8tc2l6ZW9mCis2MzkzMiAyYTFjNjk3OGRjNTc2MTBlMDVmNzZiOWY1MWY0NzI1ZjVkMmMxNDBkIGxlZ2FjeS10cnVuaworNjM5MzMgMjFiZWIwZDVlMzI5OTUyNGIxYTQ5ZjJkOTY4NzU3M2E5NmJlZjlhMyBweTNrCis2MzkzNCBkNTdhYTc1MmE0MDExODI3N2Y2MGExZDM5NjUyN2E5YjIxODgyZTIwIHB5M2sKKzYzOTM1IGQwZjc4M2JhNzY2OWEzMGMxMWJhZTFmMTM1YWE4MGFiYmVjZTMwZDggcHkzaworNjM5MzYgYTY1NjE5YWQ1OWYyODczOGJjNWZjNjk4NzE0MGExNGEwYTc3MWVkNCBweTNrCis2MzkzNyA4ZmNjOWVjMTg4MjQ2M2FiZmUxOWFjOTFiZGViYmI5NDBkYzg1NWIxIHB5M2sKKzYzOTQwIDU4ZjRiNjA3NzNmZTYwN2NiZWM4Y2ZiNzU1YmU0ODRjNzUzMmFkNDEgcHkzaworNjM5NDIgOGFkNGViZGJkMzczYWE3MzkzNDI4MmM1MjAzOWU0NmRiMTEwNjM1MiBsZWdhY3ktdHJ1bmsKKzYzOTQzIDEwZmIyZGVjMzY2NWI0YjU4NzMzNjFjNGVlYzUwYzIxMGYxNTFmNTQgbGVnYWN5LXRydW5rCis2Mzk0NSBiMGQ0Nzk5YjBkYjg0NGU3ZDcxYTQ4ZDY1NTNlOGU5NDNmNDcwOWRjIGxlZ2FjeS10cnVuaworNjM5NDcgODQ4MGY1NGZjZDZkZjRjMzI0YTJmZDRlYjFlYjA0MjIxOTFlZGJlMSBweTNrCis2Mzk0OCA3MWJlZDIwOGZlNTA0MjQyZGY3Mzk4MzRhNWZjNzQzYjc3ZGE1NjY2IGxlZ2FjeS10cnVuaworNjM5NTAgZTk1YzE1YmI5OTUwMmI3YzE3ODRlOGY2YjI1YmJiZjBhMjM4MGRhZiBweTNrCis2Mzk1NSBjMzRlMzQwNTc3MTRhMDExYWI5Nzg3NzYwNzhiN2Y2YTFmZjU4ODZmIGxlZ2FjeS10cnVuaworNjM5NTYgNDU0YzdiMGI2OGE4N2JjOTc4MWIzMWE1OWEwNzRkY2EyOGVlNWUyYSB0bGVlLWFzdC1vcHRpbWl6ZQorNjM5NTcgZjA0YjA1OWU2Yzk4MjExNTVmZGM2NzU4OTM4NDQ0OGE5ZWE1OGYyYiB0bGVlLWFzdC1vcHRpbWl6ZQorNjM5NjEgNzM1MjU0M2NiYTAzYzQzMWVhN2QxNjUyZGIwYmIwMjUyZTMwM2UwZiBsZWdhY3ktdHJ1bmsKKzYzOTYyIGJiY2UxOGQwMGQ4NzUyNWFjYWY3Yjc0MjNhMTA1OGRhODAwMjIwMjIgbGVnYWN5LXRydW5rCis2Mzk2MyAxZDBhOGNhYzE1ZWYwNGU3NTZjNmU3ZmIyNDhkMzMzZDkyMzg2MDljIGxlZ2FjeS10cnVuaworNjM5NjQgOGUwYmMxZmMwOTVlNTBmYzQ2NzJmOTQ2NzZlMjJhMjg5ZTA4NTBjNCBweTNrCis2Mzk2NSBhZDEzY2I5ZTk0ZjFiNzRmOWRhMDQ0N2ZiYzZmZmY3ZTg5NDc5NmZjIGxlZ2FjeS10cnVuaworNjM5NjYgZmQ2ZjMwNmMwNGUwMGFmMmE4M2M0YTEyODJiN2FkMTlkODUzZmZjOSBweTNrCis2Mzk2NyAyYTQ5NmYxZWI5ZjE2NGY4NThjMjZiZGM1NzczY2I1ZGRiNDg1MjQzIGxlZ2FjeS10cnVuaworNjM5NjggMGQ3Y2NiNTAwMDdjZTJjMjBmODM3YTRkYWI5MDIyNzY3MjU2YzA3ZiBweTNrCis2Mzk3MCBiNTUzMDllZjU0Yzc3Mzg3ZmUzZGY3ZjlmYzUyZmQ1YjYwMTZjYWE4IGxlZ2FjeS10cnVuaworNjM5NzEgOTQ1ZGExNzI2Y2YxYTA4ZGYyYWU0ZWY4NDE2ZGViZmY5MzkyY2NiMyBsZWdhY3ktdHJ1bmsKKzYzOTcyIDllMjcxY2IyNWU1OWY4OWYyOTZmZDcxMjJjYzdiNDEzOWNkYWEyYTIgbGVnYWN5LXRydW5rCis2Mzk3MyBmNzQ1M2IwYjMzOWUwNWU2NzBiNTdhM2UxNDc2OWE2MTA1ZTk2YTAzIHB5M2sKKzYzOTc1IGIzODJiZWI3YmUzNmYyNTI2ZWE0ZjcyNGU0MDhmZDdlYjA2YTM0ZDkgbGVnYWN5LXRydW5rCis2Mzk3NiA3ODgwYTQyNzcxNTgyYmNlNWY3NTExZTY2ZjQ4NTZjY2FmY2U2NDMwIGxlZ2FjeS10cnVuaworNjM5NzcgNGY1ZTZhYWY1YTZhODBhNjUzOTA5NTVlYmU0ZGJiODlmMTE4MjZkYiBsZWdhY3ktdHJ1bmsKKzYzOTc4IDdhMWQ0ZTgyMzNmODkwMzEyODM4NGM1NzEyNzQ2NTk0ZDdkOTY2YzUgcHkzaworNjM5NzkgMzI1NWYxZjE2MGFkZWRjMTA0MWU5ZWJhZTRkZjQzNTA0ODQ5NjIyZCBweTNrCis2Mzk4MCAxMzBjZTg2ZDYxYjY3OTJlODJhMTBlMzJmYTQ3ZGRmZTg2YWIyNGM2IHB5M2sKKzYzOTgxIGViYmYwMTE1NTBjZDZhOTQ0ZjkwM2M4N2E5MmMwZTM2OTJjY2UxN2IgcHkzaworNjM5ODIgYWY2ODBmZDNmZmRjNzYzNDg4MWNhMWVjMTM0ODk4NTUzMGU3M2EyZSBsZWdhY3ktdHJ1bmsKKzYzOTgzIDllYTEwNGYxZTVjZDI2M2M1NjEwYmQyOWMyN2M4NDk5Y2YzZjVjYzcgcHkzaworNjM5ODUgY2FhOTBjZjZiZTlhM2Q1N2Q0OWY5Zjc0MTVkMWFkYTljZGJkZDU3YSBweTNrCis2Mzk4NiAyMjg0ZmE4OWFiMDhkNTU3NzEwZjQ3MTUwODVmODEyNTUwNzJmNTkwIHB5M2sKKzYzOTg4IDIyMTBmNDJlN2M4OThiM2RhMjMwMGU0Y2I5NjYwNWE4NTA5NGQ4NmQgbGVnYWN5LXRydW5rCis2Mzk4OSAyNDk1NGViODBiOWI2MTdiMzQyNWI2MjNiZTU1NTJjYTBhMjI5NDcwIGxlZ2FjeS10cnVuaworNjM5OTEgZjA4ODUwOGY2ZDk5ZGFlZjJlYzI3MWJhMDdjN2NlNDJhYjMwOGM2YSBsZWdhY3ktdHJ1bmsKKzYzOTk0IGEwMTkzYjA4ZjBlYjhmNzU2ZmJhZTc3ZDZjMWQ4OTc3YTc1MmU0MTMgcHkzaworNjM5OTcgYzlhNWYyZWI3MjBjYzU1YjU0OTRhMmQwYmI5MmQwMGNkYzk3ODcwMCBsZWdhY3ktdHJ1bmsKKzYzOTk4IGM4OTQzNGNiOTE0ZDhjYzk3NDEwMDQ3ZWNlMGE5MmZmZjM5ZWU5NWUgbGVnYWN5LXRydW5rCis2NDAwMiAzYWViYWM3ZjI3MjUyZTQ0Mzc3MGVkZDczNGY1ZjM4YTMwMWZkZTAzIGxlZ2FjeS10cnVuaworNjQwMDMgYmYxNDNiZWIwOGU4ZTYyMWE1MmQxYWRjOWFiOWJkYzg4ODk1NDY4YiBsZWdhY3ktdHJ1bmsKKzY0MDEyIDlmZGEwOTBjMDQ1ZjZlMzE0NGEyM2QzM2ExY2FjYmEzY2U4ZDJkYzYgbGVnYWN5LXRydW5rCis2NDAxNCBlYmY2ZjYzOWUxMTc4NWRiNDVmYWIwY2Y5ZDc5ZWI1NzIyZTMzYmVkIGxlZ2FjeS10cnVuaworNjQwMTUgOWJlY2U1N2NkY2UzMWI4MDkxMmRjZjY0ZTU5NmRlNzJjOGFlOWE5ZCBsZWdhY3ktdHJ1bmsKKzY0MDE2IGIzMmQ3YjgzMjk4YTk4ZTQwYjMxNzcyZmQwYjE0NzU0ZWYzNjY1OTggbGVnYWN5LXRydW5rCis2NDAxOCA3MjAxYzAxOTNhZGVkODNiZGZjN2NmNjgzZDYyNTgzZTU1ZjNiYzMyIGxlZ2FjeS10cnVuaworNjQwMTkgNDBmMmQ1YTRmYWRjYzMzYmUyMDkwMjJiMDgxYjQwYTA4YjIyOTdkYSBsZWdhY3ktdHJ1bmsKKzY0MDIwIDY3NzU2NGEyNzA3YWFjNzFiYjQyMWFkYmYyMGU5OTIxNzQ3M2QwNmYgcHkzaworNjQwMjEgNWY2NWM4MzNkYzg3MDZhMmQ1ZGRhZWFlZTZkYWJlMzU2OThlZWEwMSBsZWdhY3ktdHJ1bmsKKzY0MDIyIDRmNzBhOWRlMjg2NTE5NjA3ZTJjYzE1ZjBmNDRmYjJiM2MwZWRhZjggbGVnYWN5LXRydW5rCis2NDAyMyA3ZDM2MTNkYzNmMWNjZGU1MGNmYTY2ZWI4MzgxMzRkZDkwODRlZjQ4IHB5M2sKKzY0MDI4IDc4ZDNkMzU5NTU1ZWE1YmFmNTczMWM5OWQ4OTFmMGNiZTk2YmMxOWYgbGVnYWN5LXRydW5rCis2NDAzMSBmM2RmNTFiNjBkYzI2MjNiNTU2NTZiY2NkZjYxZTlkOGY4NzVkZmM1IGxlZ2FjeS10cnVuaworNjQwMzIgMjJjZmNlYjMzMzhlNjhhZjg0OTIxMmQxODk4NzE3YjM5NmQwMTdiNiBweTNrCis2NDAzMyBhN2IxNjIyMjc0YjM3NTJkZjBkNmJhZDRiNmMwOTE5YzEwZGQ2OWY0IHB5M2sKKzY0MDM0IDVkMjc0MmUzNjg4NmYwMWRlMDMyYTVlMzUyNTM1NDZmYTVmY2YzMGIgdGxlZS1hc3Qtb3B0aW1pemUKKzY0MDM1IDFmZmU2YWI4NGExYjhlZGMyNDg5MzlmYzZkMTFkY2I4ZmY2ZTNjNDMgdGxlZS1hc3Qtb3B0aW1pemUKKzY0MDM2IDFjMDMwOTBiMmEwYTJmYmU2MTRjOGUzNDJhNjhkZGFmNTlkODlmMDkgbGVnYWN5LXRydW5rCis2NDAzNyAyNGRmMzQzNGNjZjdiYzI4NDVlZTdkMmM2Y2UzMjUzZGUxMTU5YWNhIGxlZ2FjeS10cnVuaworNjQwMzggYzhlMjk1OWU4YjBmMTkyYTRiMzIxOGJmZjlhNjMxYjZiN2Q4NGJhNiB0bGVlLWFzdC1vcHRpbWl6ZQorNjQwNDAgMzFhZWU2NzAxOWEyYWQ0YjU4YzA5YjI4MzA2NDM2YmRiNTMzMzFiZSBsZWdhY3ktdHJ1bmsKKzY0MDQxIDAyNjUxM2JlMzhkYWE3N2JkMGM4ODI0Zjk5OTdhNTkxOGQyMTczY2EgcHkzaworNjQwNDQgZDU2NDUwZGI2MGEyM2YzNDM0ZDZiZDAyMDc0ZTFiZjM1YmM3MDY0YSBsZWdhY3ktdHJ1bmsKKzY0MDQ1IDUzMjUzZjM2MDE0ZTAwMWYxY2YxM2NhYzE5ZWFiN2RhNWJjMDJlMjIgbGVnYWN5LXRydW5rCis2NDA0NiA5NGUzNjMwZGFjYTczMGZjODVmNDhmNTcxNDM2OWVjNGRkMjdkYmQ4IHB5M2sKKzY0MDQ3IDI0NmE4MDI2MzdhZGY3ZWQ4YzYwYjMwNzlhYWVmYzY3OTJiOTdmNGIgbGVnYWN5LXRydW5rCis2NDA0OCA1MjI5NGFmNGI2NjNjYWRhOGUxZmQ5ODg3OWVkYzQ5MTk5NTQ2Yzc0IGxlZ2FjeS10cnVuaworNjQwNDkgN2FjYjdlN2E1ZjI4MDkwNTA0ZDk2MDBiMmFlZGVlYjYwZjRiNTg5NSBweTNrCis2NDA1MCA2NDI4YzRmMWFlMDk3YTQyNWMxYmNlNGVmYzMyZWU5MzJkMzA3MDBlIGxlZ2FjeS10cnVuaworNjQwNTEgZDRjZDcyMjNhZjNiZjI5YzNjYTdjZDVjNzY5YTczMTlkNDFmMWVmYSBsZWdhY3ktdHJ1bmsKKzY0MDUyIDc3MWY3YTgwNDg3NGZkN2RhMGIzZmNlZjg5NWMyZjAyNTMyYWIxM2YgbGVnYWN5LXRydW5rCis2NDA1MyAwMjA1OTI2OGM4MjVmYTM2MGYxMjM1YTIxODY2OTkzOThhZDEwN2NjIHRsZWUtYXN0LW9wdGltaXplCis2NDA1NCA2Y2ZhMjk3YzY1NTUwYzljMmY0MjI2MzA1ODNjMmNkN2M5ZDk1ODczIGxlZ2FjeS10cnVuaworNjQwNTUgMTA1NzdlMjVmNzhmNmMyYTA1YTMyMzRjMjYzYjdmYWFkNzg0OWM1MiBsZWdhY3ktdHJ1bmsKKzY0MDU2IDJkNWYxZDk1NmVmNmJjZjQyY2I3ZWE1NzUwYWRmOTdkOTE4N2I2MGUgdGxlZS1hc3Qtb3B0aW1pemUKKzY0MDU3IGRmOWIzMzdiYTMxMTI0ODlkMjVmM2ZhZDkyMmI3YjQwNWRhYjFiZWUgbGVnYWN5LXRydW5rCis2NDA1OCAzOTM5ZmY4OTgzNGNmNjBjM2YyZTUwMzI4ZDZlMDM3MDgwNDZhZmJiIGxlZ2FjeS10cnVuaworNjQwNTkgMzM0OTJjMjQxZGFiNWNhODEyYzkwZmY0YmNlNmM1YzdkNWQ1YzdhMyBweTNrCis2NDA2MCAxMzllY2RiZjRmMTk2YTJlNzNiZTYwZTNhOGQ3OWMyYjNhYzY1NmRlIHB5M2sKKzY0MDYxIGMxYWViNmM5NGFmMTBmYjdhODExOTI0ODVjNDBkOGJiMDFiMzI4NzkgcHkzaworNjQwNjIgNTNjNjBjN2NjY2Q5ODM0YmE5MWM3NGNiNDgyNjQ5YmNkNDQ0ZWJkYSBsZWdhY3ktdHJ1bmsKKzY0MDYzIDQ5MmY4ZTEzMDVjZjYyZTA2MTJkY2Q1MzI1OWI2YzU1ODk4MWQyYjAgbGVnYWN5LXRydW5rCis2NDA2NCBlZDU3MmQyNjBmYTcxNzJiMzE2NDkxN2IwMTNlNjk2ODBkNjI3NWEwIGxlZ2FjeS10cnVuaworNjQwNjUgODk1ODdlYTE4ZWQ3ZTE4NzRmMTFiYTMzMjljZWViNjU3YmIyMzViNCBsZWdhY3ktdHJ1bmsKKzY0MDY2IDI5NmFiMTAzOGI3Zjc4ODAyZWI5NzQxMTlkOGM1Mjg2NmNiNzQ3YTEgbGVnYWN5LXRydW5rCis2NDA2NyBmNDk4OTUxNmI0ZDZhMjg2NzE0ZjBkNmQyZmNjMDhlY2E0NTMyNzQ1IGxlZ2FjeS10cnVuaworNjQwNjggZGM5ZjRkNmNkM2YxNzI2ODNlZTE5MWMyODkzNzRjYzRjNTViZDA5MCBsZWdhY3ktdHJ1bmsKKzY0MDY5IGNkNWQyNWRkNjEzMTEyZjdiYzk1YzJkYWFjZDJlNDA4MGQ5NmM2ZDAgbGVnYWN5LXRydW5rCis2NDA3MCA4MTNiODdiMTZkYzUwOTAyZjM3OGI4ZDE3YzZiZDVjZTRjNTY5Y2JiIGxlZ2FjeS10cnVuaworNjQwNzEgYzAwNTc2ZTIwMmRhZGNmZGYxM2E0NDlkZDMzOTQyN2U2OTVhYTYzNyBsZWdhY3ktdHJ1bmsKKzY0MDcyIDc1MjEyYjQwOGQ3YmFiYTJjMmMyZjFkZGM0NTVlOWM0YTFlYWQyZmMgdGxlZS1hc3Qtb3B0aW1pemUKKzY0MDczIGQ1Y2MzYzVjYzE4OGVjMzI5ZTUxMzBjM2EyNGI1YjM0OWIxZGMzM2UgcHkzaworNjQwNzQgZGZjMzhlNWFmMTJkMjY1MjA1ZjZiZmNlZDlhYzVkYTFiZDAyYmRiZiB0bGVlLWFzdC1vcHRpbWl6ZQorNjQwNzUgNDA4NGE4NGU0ZDNiNzQwMDNhZDhiZTk2MzY4MjU2ODEwMmRhZmFiMSBweTNrCis2NDA3NiBlZTczYTZiMjdjM2FhNGE2YmYzNWUxYTliZmIwZTgwYWM0MzFlMzNhIHB5M2sKKzY0MDc3IDAzNjdhOTM3ODhkYmFhMTJmY2ZjYzliODE5M2MxZGVkMTg2N2VkOTkgcHkzaworNjQwNzggOTMwZDkzMDhiMzJhYTU2NWM4ZmNjZjE5NjUwZmI0M2JmMzM1YTk3OSB0bGVlLWFzdC1vcHRpbWl6ZQorNjQwNzkgMDllYjhkNjI2MjZhMDI2MzQ5OWVjYzM2YzdmMWUxM2M2MmFhOGFkMyBweTNrCis2NDA4MCBiYmUyMDc3YTQwMWJjNDliMzY4MjMxYjgyMDY2NGUzOWM3YzMyMTc3IGxlZ2FjeS10cnVuaworNjQwODEgN2Q4MjRmZDEzMWFkOTkzMzliYWVlNTk3MzNmMjgyMWU2OGU2ZDY2OCBweTNrCis2NDA4MiAyNmE3MjgzZjdmMTc5YzRmMTQ3YjU3M2RjMzQyNDdmMWIyODhmYzc3IHB5M2sKKzY0MDgzIDk4ODI3YTIxZTM1MjllYjQ1NzZiYjgyNjE0YWM3MThkZDJjZjdiMDggcHkzaworNjQwODQgOTFlYjI0MjA0ZTA4YTZjMGVjZTkxYmYxYWI4ZjRjYjBhNWIzMTdhMCBweTNrCis2NDA4NSAyOTI1YjU2OGFhY2NhNjA4ZmY5Nzk3ZjZjMzYzZDlkNDk4ZjFmMmZjIHB5M2sKKzY0MDg2IGFjZGE0MzI1MjcxMDAxN2JhNzhmMTU1Mjc3NGMxMWY5ZjJjODNlYjIgbGVnYWN5LXRydW5rCis2NDA4NyAyZWFlMzFhM2VmODkzMDBhYmIxMmNkYjBhNjg1ZTA4ODkzZGZiY2JiIHB5M2sKKzY0MDg4IGJkNTg0ZjEyMWM0YjUwMjI0NTAyZmM4ZTYzZDk1NGMwMjA5NjJlMDQgcHkzaworNjQwODkgZmZjNmEyZWY3NmU4YWQ3MjRjMTU0NDZmZDc0MTI4OTA4MjM4ZDIzNyBsZWdhY3ktdHJ1bmsKKzY0MDkwIDZkZGUzOTFiZTk3ZDg4YjdjMWEzY2QzZWU1ODI1MzE4MTFkYTk1MmIgbGVnYWN5LXRydW5rCis2NDA5MSBmNTI5YmYyZGY0MzY4Y2E4OGZjMmNjOTJhYTY4OTcwNzJkN2I3MmE1IHB5M2sKKzY0MDkyIGFmZDNiOGVlZTJmYjk4ODNhMWNlZmE3OTkxM2MxYTQ2ZGY2NGMwNzUgcHkzaworNjQwOTMgZTdhOWVhYjM2M2FkYWE1NzJiNzUxMTcxNzk3MDllMWU3N2U3YTYzMSBsZWdhY3ktdHJ1bmsKKzY0MDk0IDgyNDhjY2ZlYjUzNDI5YmQ2MjI5YmZkNjdlOTcxNjE4OGYyMDI3OGQgcHkzaworNjQwOTUgZWM4MjdmNmU0Y2M2YjY2OGU4MDk0Yzc0OTRlNDNjZDA5YWJhNjFlZiBsZWdhY3ktdHJ1bmsKKzY0MDk2IDBjYTI0MThjNzcwMjU3ZjVkYzcwMDhjZDk3NjgxOGMyMGZkZjkyZjUgcHkzaworNjQwOTcgMjcxODQ1ZjMyM2JlNDMzMmZkNzFmNzFhYjgyMWMzZTQzYjYwOGU2MSBsZWdhY3ktdHJ1bmsKKzY0MDk4IDAxM2JlNjMyMGI4Mjg2ZTQ4OGIwMzFkM2M5OWYyYmI2OTFmOGY2NzAgbGVnYWN5LXRydW5rCis2NDEwMCAxZWFjOGZmMDFkN2IwNjA3ZWRjZDIzZDA0ZTM2ZTU3MDdkZTMwM2NiIGxlZ2FjeS10cnVuaworNjQxMDEgN2Q3MGI1OWVlYWYyZGQ5MGQ0NmRmY2JiOWFkMmVkMjM5NGE0MDVmMCBsZWdhY3ktdHJ1bmsKKzY0MTAyIGRhMzA3YmVlZWJiOTIwMjA0YjRjNzAzNDg2MTVmNDZiOGI4NjhmMGMgbGVnYWN5LXRydW5rCis2NDEwMyAyYTdiNmU5OWNjNTRjZWViNDhjZTljN2NmMzc1NDZhZGI5MTNmZWFkIHB5M2sKKzY0MTA0IDQ1MTFlY2QyNTYzNDNjNmIyNDAyODJjM2NiODUwM2JkMmFkYmY5Y2UgbGVnYWN5LXRydW5rCis2NDEwNSBhY2RkYjAwYjFkZTVmMDQ1MTNkZGJmNmYwZmQxNTZkZGEyM2QwYjM5IGxlZ2FjeS10cnVuaworNjQxMDYgZTgxZGVjY2IxN2M2YjY2NzJmNjcwOWQ4YmJhMzJlODYwMGQ4NTU1MCBweTNrCis2NDEwNyA5NGY2NGYxMWZkZDAwOThlNGFkNWEzZDZmN2EwMDZmMmU1ZGIwMGI5IHB5M2sKKzY0MTA4IDI1MTE0MzE1MTlhMjIxYmMxODY0ZDgwYjE4NDE5YTEyMGJjZGZjOWYgcHkzaworNjQxMDkgODhhNDJkYjM3NzdjMjNiOTQ3Y2VmYmNhMTIzNGU4MjZkY2NlYTgwMSBweTNrCis2NDExMCBiODJlMDU0NWQxMTE1NGE5ZWMyMDgxNTExMjYxOTJiNGFiNmVkNjI3IHB5M2sKKzY0MTExIGI4MzNhNDAwOThjMDBmNzk5NzY2Njg2ZTU1NWFlMzBlMjRiZWE1OGMgcHkzaworNjQxMTIgYjBlZjAwMTg3YTdlYzE2N2I4MTUxOGEwYjBhZTNlOTZjYTdmNmVjZCBweTNrCis2NDExMyAyNTQzYzRjNzk1NDMzYTYzMTRkMDIxOWUyYzRmZmJmZTA2YWFkNTNmIGxlZ2FjeS10cnVuaworNjQxMTQgMWM5NjRlZDM1ZWY5ZmIyNzliNmNjMmRjYTM5YWUwZWVmN2NjMTI1NSBsZWdhY3ktdHJ1bmsKKzY0MTE1IDhmZTQ3YjJjOGJmZTM3YTQwN2RjZDMyZmMyZjJmNzhjM2YwNjc2ODggbGVnYWN5LXRydW5rCis2NDExNiBjYjg0OTRjZTEzMzdjODNmYjQzNjU4ZGEwODEwMWZmYTJhZTRkZjgzIGxlZ2FjeS10cnVuaworNjQxMTcgMGY1NTY0ZmQwNDBhOTRhM2VlOTk4MWUwYzE4NGQwYTExYTIzNGY3NSBsZWdhY3ktdHJ1bmsKKzY0MTE4IDI0NWRjYTI2NzEyZjc2MzEyMjYyNWIzOTQyMTBlYmNiZjk2OTQ0ODMgbGVnYWN5LXRydW5rCis2NDExOSA1MTdlMTQxN2Y3ZTJjZDllOTlhMGU4MzYxMDI4OTBkOWQ0OTk4MmU4IGxlZ2FjeS10cnVuaworNjQxMjAgY2VmOWYyN2E0Y2MzM2ExZmY4NWY4NzIxZTI4ZTU0ODQwODAzOGU0NSBsZWdhY3ktdHJ1bmsKKzY0MTIxIDIxMmExZmVlNmJmOTNmOGI3NGY4MWRkMzU2N2JmOTY0ZTYyN2VhMjAgcHkzaworNjQxMjIgNWM2Y2RmY2Q2ZWFlNDllZmE1YzdhMTUyYmY4MjA1ZjBmYWE3ZmM1MyBweTNrCis2NDEyMyA1N2M5YWJhYjQ4MzJjOGI2MjRlN2NiY2M4ZmNmZTc2Njc5MmM0ZDNhIGxlZ2FjeS10cnVuaworNjQxMjQgNGRkMTAwMzcwODhjMjgyZDE3NmI0ODE2NmQ4ZDg4OGI3YzE3YjgyNiBweTNrCis2NDEyNSBjMzQ5ZjlmYmM3MDQ0NGE3YjM4NWJiZTQ5YmMyN2UwOWRiY2U0NmExIGxlZ2FjeS10cnVuaworNjQxMjYgZTJlYjcwMjM1MzkyZmIwZGJjMTQzZWY0YzNhZWU4MjRjZDE4NWYxZiBweTNrCis2NDEyNyBiNzcyYmVlM2ExMGVmMGMwNTIyZjE1NzMwMWE4MWNkMGM4MWQ5YjAyIHB5M2sKKzY0MTI4IDhkYzQzMTJhMmY3NTc4NTBhNDNmZTVmZjk4ZDk5ZDg3ODRhOWRlN2IgbGVnYWN5LXRydW5rCis2NDEyOSA5MTIxYzVjYzRmMDU0MTBmZmQyMGI4MjVlNWY2YjIyYjMwODNlZTcyIGxlZ2FjeS10cnVuaworNjQxMzAgNzJiNDk0NmM0NDNhZTQ1MjYzZGZlOWEzNWJlMWYzY2JiZWFjMDcxMiBsZWdhY3ktdHJ1bmsKKzY0MTMxIGU2YmVhNzJlOTQzNzAzZWViODYxNTlhY2U3MTAyNzRjODJlY2E1MzEgbGVnYWN5LXRydW5rCis2NDEzMiBlOTM1OThiZDdmNDI4OTI5NmQwMjQzMTZiYzJjNmUyY2QyYzdkOWYxIGxlZ2FjeS10cnVuaworNjQxMzMgNjk2MzQ0ZWY4YmMwNDg4MTVhMGRmZDNmMjQwNmJkMGVkYzRhZWIxYSBsZWdhY3ktdHJ1bmsKKzY0MTM0IDZkZDNlYjQxMTcwYTU4ZGFiNTc5ZDEwMjE5NjMzNjJlMzhjYjA5NzcgcHkzaworNjQxMzUgMjgyMDEwOWM4ZDU1MjhmN2QzN2ZjYmJjNDZlY2IzODFjZDQxOGE2YiBsZWdhY3ktdHJ1bmsKKzY0MTM2IGNjNzJmNDFmZjAxNDFhNDdhYTZjYzhjZDM3NGMxODgwY2MxNzM0ZWUgcHkzaworNjQxMzcgMTc3ZjFhYWUzYmI0NDkxYzAyNmUzZmRjZTdmNDFmODY2YmQ4NTUxYyBweTNrCis2NDEzOCBkYTQ3ZTdlMTM1YWU5ZjMxNjgzYTRhMmIzNjU0MGJkNjdmYjY2NDkxIHB5M2sKKzY0MTM5IDZmM2MxMzU3YTdmYmRlN2ZhMmM2Yzc0NTA5NTMzNDYzM2Q5Njc5ZTkgbGVnYWN5LXRydW5rCis2NDE0MiA2NzM1MzJhYTM3OGIxZjhmZWE2MzBlYWFkM2JhMTVhZGJkNmEyMThkIGxlZ2FjeS10cnVuaworNjQxNDMgNDQ1Y2Q2ZWJhMzMxZTlkNTZiZTgwZWVlNTIwZGFlNzJmMmU2ZjFiNSBsZWdhY3ktdHJ1bmsKKzY0MTQ0IDA0NWY4M2ExYjg2NDFjMjRmNmY0NGZmNjkyNWFiNWYyYTE3ZDY0MzUgcHkzaworNjQxNDUgZDNlMmE4ZTdiZjQ1OTEyMmYyMTNkMzFkM2UzOGJmM2JhNDdhZTlhMSBweTNrCis2NDE0NiAzMmZlZjYzMWY3ODkzNGMwNmI5ZGExMGNhNGZkODU1MTlhOGQxODM1IGxlZ2FjeS10cnVuaworNjQxNDcgN2E1YmI1NTNkYTJiMTcyYmIzYWNlMGQ0ZTE1MGJmNzE2ZWFmMDY3NCBsZWdhY3ktdHJ1bmsKKzY0MTQ4IDRjNmI4YjkzOTcxODE5N2UyNGQ4ZmJkZWJhZTkzOTgwMmY3NWVhNDkgcHkzaworNjQxNDkgNmE3ZWIwYjcwMTk4MDk5YTgzYzgwZmViZjJkMTg0OTI5ZmI5ZjAwZSBweTNrCis2NDE1MCBiNDVhOTUzOTA2MjBhZTY3MDYzOWRhZDc2ZDM3ZmU4ZDQ1M2NiZDMzIGxlZ2FjeS10cnVuaworNjQxNTEgZjc1MWRhYjcxMzAyNGQ5NGVhY2JkMmU2YTZiMGM1NTE2MDIyNGZiOCBweTNrCis2NDE1MiBhZmRkNDljNDc1OTlkOGJhZjU2ZmI4NTcxYWM4YWQ2YzMxNWI0NDgzIHB5M2sKKzY0MTUzIDhiMGUyYzk2Y2U4MGUwNWNjZTc3ZTMxOWI5MmQwMjdjZmIxOWUzOTUgcHkzaworNjQxNTQgMWJmZWE5NTZkMGQ3MDk5YWQ5YjU5M2FiOTE4MWQ1ZWM4MjAzMDRhNyBweTNrCis2NDE1NSBiZmI4Mjc0ZTM5MzlhOTQ5YjRjMGEzNzk5NzdjMWJmOGFmNTk3OWQwIHB5M2sKKzY0MTU2IDdiM2EwMjdhYjc4NWI4NDUwYTMxZGZlY2JhYmYyM2Q0NTNjZGVjNGEgcHkzaworNjQxNTcgZDE1ZDg2ODBhMDBhNjBjZDE5ZGI4ZTQ1YTAzOWUxZWMwZjQxYjE0YSBweTNrCis2NDE1OCBmNTI4MTNmNDMxODlkMjNjMDg0YTA2M2Q3ZWIyYWI0YzliMjg2YWM3IHB5M2sKKzY0MTU5IGEwMjFmZjExNzE4YjZhOTVhOGUxZjE3OTY5YWM1NzczODNmZjc3NmIgcHkzaworNjQxNjAgMzhkMTc2ZWJiMmZhYjk2M2ZiM2ViNWQ2ZmYxMDM1MzE4ZTU5OTU3MCBweTNrCis2NDE2MSAxOGVhYTFkNWYzOTQyOTgxOGU4NGVlOGZlZWMyZmU5OGUxZjI2MGFhIHB5M2sKKzY0MTYyIDVhZjE1MDg5YTEwMDY0OGI2NmYxZDY0MWIyNmVhYjliZmJjZTI1MWEgcHkzaworNjQxNjMgODA5NzVlNjFmOGM4Y2RlNWI1Mjk5YWI5YTVkZGRjZTI1YzVkNThmMSBweTNrCis2NDE2NCBmMzFlMzJhMjAxM2NmNDBhNDk4YjcxYWY0MjMxNzk3ZmJkNWUwNzYwIHB5M2sKKzY0MTY1IGY2YWVhODA4YjM1Nzk5OTMzZGUyZjAyNWQ1NDg5YzM3YWFiYTE0ZDMgbGVnYWN5LXRydW5rCis2NDE2NiA1MjU4ZDRkN2RlNzdiNDk4NjVlMDUzZDc3NWYxODQ4ZmIwNDZjMDFiIHB5M2sKKzY0MTY3IDVmNGE1MWY2MzlmMWQ1ZmU3M2E5ODA5ZGQ1MTY5NjkzYWRjMGE3NmIgcHkzaworNjQxNjggOTFhODgyMDBmZGYwZGQ4OTM0ODM4OGIzNWZkYjUyMWQxYjI0OTY1MiBweTNrCis2NDE2OSA0NDAxOWUzN2FjOTI1ZTU1ZTQ4OTliZjIzNTE4MjQ1NzRmMTM1M2I3IGxlZ2FjeS10cnVuaworNjQxNzEgNjUwYjNmNjg0NWY5MzFlOGJjMzFlNGRlODcwYjhjMWRlYTNiZjg5NyBweTNrCis2NDE3NiA1YTljZmY3ZmQwOGY1Yjc5MTdmNzA3NjBlYmUwZjM3NWQxYjk4NzEyIHB5M2sKKzY0MTc3IDU4NzBlYmUyNWRkMDkxYTViZDU4YmI1MWFkN2YzOGVhZWQxNGJmMTYgcHkzaworNjQxNzkgM2EzZTIzMWI4NjZmYmUyYWZkZjM5MDFkMDdmMTY3OGUwNDE1ZjM1ZSBweTNrCis2NDE4MCAwYWU1MGFhN2Q5N2M1Mjc3ZTdiZjhlZjg1ZDliYmM4YTVhZWE5YTc4IHB5M2sKKzY0MTg0IGIzNzY5YjZiYWUwZjBhZDc4NzNiNjA2ZjFhYzYzNGJmNTNmYzUzZWMgcHkzaworNjQxODUgM2Q2ODY5ZTJjOTJhYzk5NjlhY2U4YTY4ZDJkMzk4YzIzZGI3NWZkYyBsZWdhY3ktdHJ1bmsKKzY0MTg5IGU4NmYzODU4ZGYyMGNhOTNkNmVhYzA0YjAzM2M5NTdlYTc1MTFlOWUgbGVnYWN5LXRydW5rCis2NDE5MCA1MDNmYjNjNWUwODE0YzEwNWYyZTU5OGUxYTcxNjE3NGM4YTEwNTY4IHB5M2sKKzY0MTkxIDMwMTdlNzk0YmJiOWFjMzVkNGE4ZWZjZTc4ZDE5MTE4ZmFlZDJlMWMgbGVnYWN5LXRydW5rCis2NDE5NCA0MTQxNDkzZGQzYTA1NTZhYmIyMzcwYmYwY2NiNmY2YzU5OTAzZmIxIGxlZ2FjeS10cnVuaworNjQxOTUgNDE0ODRkMTgzOTBjZmMzMDYyZDkxMjMwYTBlZGQyZGQ1OGMwMGQyZCBsZWdhY3ktdHJ1bmsKKzY0MTk2IGY0ZmY1OGUzNDZlZTQ5M2ViYTQyY2UzNjBkODQyNTg0YWIyZGE0YWMgbGVnYWN5LXRydW5rCis2NDE5NyA5N2NkOTUzNjdkNjBmZmI1ZDc0MTY4OGU4MjZjMDVlOWQ1MDY0Njc5IGxlZ2FjeS10cnVuaworNjQyMDIgZTI0ZjI2YzNjY2U0NjQ4ZTc2NzExODdiODM4YjcyOGMxODFkMTE1ZiBsZWdhY3ktdHJ1bmsKKzY0MjAzIGQ0MDdmOTU4YzEzNzRlYzlkNjRmNjQxMWZiYWRkMjRhYTMwZDFiNmEgcHkzaworNjQyMDQgMTA5ZTk3NDhjN2Y0MzUxYmY2ZjJhZDNiMzNlYzJlZDEyMmQyNWRmZCBweTNrCis2NDIwNSBmY2RmODE0YzliMTEyOGEyMTkzYjk0N2Q0Y2YyYWI2ZmFkNWM5YmNiIHB5M2sKKzY0MjA2IDY1ODVmZDFkOWFkNzEyM2Q2Y2FhOGM3NDRhMWVjY2M0ZmI2ZjM0MDQgbGVnYWN5LXRydW5rCis2NDIwNyA0Yjg2ODJlYTM3YzFmNDI0OGRkNmM2OWY5ZmU1ODg1NmU2MTdiODhjIHB5M2sKKzY0MjA4IGZkN2ViMjc0MTAxMjFjOTVkODAyOGU1NjdhZWQxNzkyNWQ3MmZkMjEgcHkzaworNjQyMDkgNTcyNmU5MTU3YmYwMmZiNWQ4N2RkMzdmMWI0NjQ3YmM5M2ZjNjdjNyBweTNrCis2NDIxMCA5MmI3OWI2ZDFhM2I5YmJkMGUxOGE4YWZlNWFkYWQ0OThiM2UwMjZhIHB5M2sKKzY0MjEyIGRiOTlmODc1MjcxMDZjYjczYmU2YTdkMTZiNmYxNDE4MzZlMjY0OTYgbGVnYWN5LXRydW5rCis2NDIxMyA3MWNiN2VhNGYxMTAzNjc1MjRmYjNiMWFiOGRkM2UxMzhmMGNmYTgxIHB5M2sKKzY0MjE0IGZjZmUxMGYzZGMxNDZjZjUwNWFjZWZiZmJjOWJkZjg2ZTdjODNkNzEgbGVnYWN5LXRydW5rCis2NDIxNSBiMWY0ZWE0ZWI1NTU2Mzk5MzQxY2Q2ZmZlZTVkNDZhNDczOTI4NDA0IHB5M2sKKzY0MjE2IDljNzllZTQ5YTJkOTUyYjhlYWZmOTgzNmYwMmNmOWVmMWU3MDg2MTUgcHkzaworNjQyMTcgMzE5ODhiNDAxNTM1Nzk1NDZhNWUyMTNlNzc3ZDk1OGJkMDkzMDA2NyBweTNrCis2NDIxOCAxMzA3MWFkZDhmNDhhZTU4Y2E0NWJiZjM4Yjc3MGQzNzZmYmFjMTcwIHB5M2sKKzY0MjE5IGUzMGFmMzI2NGEwZjU3M2FjMTAyODljNzhlYzkwMmUyNmUxNWYyMWYgbGVnYWN5LXRydW5rCis2NDIyMCA1ZWJjZGViMGNiMjZjNjdhODUxZDg0MzEzNWZkYTE2YTU2NjJiZDM4IGxlZ2FjeS10cnVuaworNjQyMjEgMTQ2NDM0NWExOTY4M2I3NGI1YWZkZmFhMDEwZTExYTYwOWYyYWFhMyBsZWdhY3ktdHJ1bmsKKzY0MjIyIDhmNjFhZTAxMTMwZjg4OTM5ZGE1M2M0MDI2NmUyNzFlNmUwM2Y2Y2EgcHkzaworNjQyMjMgZDVhYTI1YmY5MzYwM2ViNGUxYTgyODJmYTU1ODU2OWY2Nzc5MTFmMiBsZWdhY3ktdHJ1bmsKKzY0MjI0IDM4ZDA0NjdmNWVjNzY5ZDRkNGNjYzg1ODlmNzM3ZWJmNDQ5YzU0MWMgbGVnYWN5LXRydW5rCis2NDIyNSA3YThlZTA1YzY5N2Y1MGYxMjJkYzEwYjExNDRmNWIyOTNkZTcyN2Q1IHB5M2sKKzY0MjI2IGEzNWRhOTRlMDVmYzVhNThlZWE3ZTZjMjg4NTA1MzEzNDRhYmFlZWUgbGVnYWN5LXRydW5rCis2NDIyNyA4YzYwNjhmMTRlZThjZWYxMDEzZTBlMGNiYzE0ZDViZmIxOGUwMjAzIHB5M2sKKzY0MjI4IGI1ZTAyNzc1ZmZmY2IzZmM0Yjk5ZjUxODE4MDhmOGM3YjEzNGNhMjYgcHkzaworNjQyMjkgNjQzNGRkNzA0ZDYwZWE2MDgwMDM4M2FlYjY0MGI0ZTEyZmU4ODBkNyBsZWdhY3ktdHJ1bmsKKzY0MjMwIDJkZmFhMDY4M2JlOGI2NjNkMDYwMzg0OTcyYjAyZDAzZGMxNmYzODcgbGVnYWN5LXRydW5rCis2NDIzMSA0ZGE4YjdhOGNmMmU5NGJiZGM1NjVlOTAyNThmZmMwMWM5ZjJkZWQyIHB5M2sKKzY0MjMyIGExMDY4OGFkY2RkNjI1MzZmYmQ5NWVjM2FjZTlkOTFkODgzNTYwYjggdGxlZS1hc3Qtb3B0aW1pemUKKzY0MjMzIDE2OGM5ZTk2NzcyYzU3OTcyYmZhNzliZmI4OGNkNDZlMmFhYWNlMTEgbGVnYWN5LXRydW5rCis2NDIzNCA3ZmQ5ZTljYmQ3MjE1M2FkOGQ1ZWRmNTg1OWJlYjI0OTg0YzdhMmQzIHB5M2sKKzY0MjM1IGEzMzNjODc3MGUzMjEzMjczOWRkYjUwNGZjNjI1NmM4ZjdmNWM0MDkgbGVnYWN5LXRydW5rCis2NDIzOSBmYWE3Y2E1MjQyNzE4ODQyMmVkMTE3YWQ3MzY4NzFjYmMyZDBhNzc1IGxlZ2FjeS10cnVuaworNjQyNDAgY2RiZjEyOTEyZDRiODJhNDQ4ZTdmODY3ZjczNjJiYTcwMTM4MjE2ZCBweTNrCis2NDI0MyBmNTI1NDlmYjc0YTI2NTE5MTFhNmQ4OWIxMjE5MWRmZWJhOGU4MmE1IGxlZ2FjeS10cnVuaworNjQyNDQgYjkwNWNiMjc5M2NjOWFhZjNhZDVkYjQ1MzQzMzI2NGZkODQ3YjcyZSBsZWdhY3ktdHJ1bmsKKzY0MjQ1IGJiODE3YTVkNjhiN2MzMDgzZDIwZjc0OTY0YTcwYWJmNjg5ZDViYzkgcHkzaworNjQyNDYgYTQ1MGRhMjQwMDg5NmQyNDMzZjAzZWZjY2M1ODg0ZDJiNzc3MzAzNiBsZWdhY3ktdHJ1bmsKKzY0MjQ3IDg3MTQ3ZGI4MmViMWUzMzIyNjNmM2E5NGVjZjVjY2Y0OTI0MTY1N2QgcHkzaworNjQyNDggYWY4ODczZGYwMzIyNWVjMTBmY2RhNjRmOWQ4OGVjZWMxYTI2MWQzMCBsZWdhY3ktdHJ1bmsKKzY0MjQ5IDliOGZmNzNkMDE4ODU5Mzc2YzkwZjY1MmI2ZmQwYmZiYzY2N2RiMGQgcHkzaworNjQyNTAgZDAxMTY1ZmFlOThlOTAwNGUzZjgzNTliOTNhNjY3ZDE0OGFjN2UwYSBsZWdhY3ktdHJ1bmsKKzY0MjUxIDQ2ZTU4NDYxNTBkNWU5NWY4YTJhMTIwNGJmZWRlOThkNDJiYjFmYmYgcHkzaworNjQyNTIgNmQxZGM3NjFhYjRlMDg4OTg5ZDc1NDRiNGUxZDJiNzliZGYwNGRlOSBweTNrCis2NDI1MyAxMDY5NTc4Mzc5YTAxMmNkMWM5ZjhjMjRhNTM5ZjIwYzk0N2UzYzgwIGxlZ2FjeS10cnVuaworNjQyNTQgNDQ2ZDVjMjk5MDhhYTk4NTJlODM0YjNmOWYyOTRhNjYxZWU4YmZlZSBsZWdhY3ktdHJ1bmsKKzY0MjU1IDJmMTZjZWEyMjRmNWNjNDg1MjQxOTIyM2NkZjBkYjY3NGNjZGUxYjQgcHkzaworNjQyNTYgZGZmNzYyYWRmOWQ2MTEyMmE0ZWI2NjVjMGEzYWVkNGE2MWViMTRkMiBweTNrCis2NDI1NyBmMzZmMDkyZGJlOTc4NDZjMjI2ZTEwOTgzNmUyN2M1YmMzZWMxYzVlIGxlZ2FjeS10cnVuaworNjQyNTggYWJhNThmMjhlMTY2YjNmN2FlNzY5NWI4NTVlZTNlZjQyODc3NGIxOSBweTNrCis2NDI1OSBmMmUyZDViOTY0ZGUzOGMxZDRhMjk5MTA4NTdlYzhmMjY1ZDBjNzNlIHB5M2sKKzY0MjYwIDM3Y2Y1YTFlNjM5ZTkwZWZjY2RkYzNmN2IxZDZhY2FlMjk1YzU0MGIgbGVnYWN5LXRydW5rCis2NDI2MSA1N2FhODczZDk2ZmNhOGI5MjA0MDc0ZmM4ZjQ0MzUxYzJhM2EyYmVjIHB5M2sKKzY0MjYyIDA5NWI4NWQ3YTAxNDFlM2Y3ZWZhZDkxNTZkYmZmMjk2YmQxODgzNDQgbGVnYWN5LXRydW5rCis2NDI2MyBlOGRmOWU0ODczYjQ3ODAxM2ZlMjk5N2Q1ODU5ZWNkNWRmZDYyZGUzIHB5M2sKKzY0MjY0IDEwYThjZThkYjZiZmI0ZjdjNjExMDJjMzFjNWYwMmM3Y2MyOGY1NWYgcHkzaworNjQyNjUgNmYwZmUwNjZhODRiYjUwNGU0ZGI0NzFlYmY1ZGQ1ZDlmYzVlZWEyYSBsZWdhY3ktdHJ1bmsKKzY0MjY2IDYxZTUyODZkOTM3YzhhY2VkNjkxYWExZTM2ZjIzMzYwNjQwZTk4M2EgcHkzaworNjQyNjcgYWEyNTAzMTg4YmYzNGQ4OTI4ZDcxMTU5NWFmNDQxYmQ3NjVhZjk5YyBsZWdhY3ktdHJ1bmsKKzY0MjY4IGM4ZjhhNTc4YzAxYjk4YWRkY2EyMGRjNmYxNmRkMzk1MTFiN2QyNmMgdGxlZS1hc3Qtb3B0aW1pemUKKzY0MjY5IGU5YzkzNWNkNzg4OGFlYmY5MGUwNTc5ZTI0NzgxMjA2ZmI2MmMwMmMgbGVnYWN5LXRydW5rCis2NDI3MCAxODk4NjdhYWJhZmEzNzc4ODNmZmI1ODUwM2Y3OGIyMzU5YmYyZDQxIGxlZ2FjeS10cnVuaworNjQyNzEgYjViZjE2NzkwZTNjNjlkMWY1NWQ0YWRkYTk4ZDQ5MWYxMmMwMTM3MyBsZWdhY3ktdHJ1bmsKKzY0MjcyIDUxNmMxOWQ4NTkxYTliNDYwMzVkODUyNTVhMTMyYzBiM2Y5NDEwMjMgbGVnYWN5LXRydW5rCis2NDI3MyA5NmJmZjdlMTM3ZmJkMTIzMGQzZDU4NDQ2ZjI4MjZkNzc1ODU4N2MwIHB5M2sKKzY0Mjc0IDRiMWUwMTUwNWQ0ZDM3ZTk5ZjE3ZWEyZWM0NDEwYzBlNjcxZjhiNDIgcHkzaworNjQyNzggOWFkNjkxMjdlNmFhNjU0YTM2Zjc3YmY0OGJhNmEwNTRhZjg4NTRhNiBsZWdhY3ktdHJ1bmsKKzY0MjgwIDkxNTVmZjc4ZmQwNjRkNjgwZjczMDhmM2RmYWE3OTExOGNlYTYzMDUgbGVnYWN5LXRydW5rCis2NDI4MSA3YmE3OTAxZGFkN2Y4YzZiNWEwYTJjYzRmNDA2OTNjMDZhY2YyNmI1IHB5M2sKKzY0MjgzIDI1ZmEzZGQwMjFmNTJhYmUxYTI2OTk2MGM2OWVkNGUzNmI4YzFmNGYgcHkzaworNjQyODQgYjMzZTgzMzRmODJmNzllMzM3N2EwNzg3NTVhNjdlOTRlMjQ3MzliZSBweTNrCis2NDI4NSA1Y2I1MGU3YTk4YTI4NThhOTEzNzQyODAxMjE5OGQ1MThkOWU4MGI1IHRsZWUtYXN0LW9wdGltaXplCis2NDI4NiA5OTFjYWFkODFhMmRhNmY1NWZjMDE2ODBlNThlODc3MTJlNTQ3YmRiIGxlZ2FjeS10cnVuaworNjQyODcgNGUzMDRhZGVkN2E4NTBiNGJmNjcxZmY4NmNjMDc1NjZkMGFjODgwNCBweTNrCis2NDI4OCA2MTNkYWY3ZjhlNDg2YjQ3MTE2NDExMmE4YmU3YmIwNjU3YmY2NTVmIHRsZWUtYXN0LW9wdGltaXplCis2NDI5MSAxNDM1MGU3NWQwMmE0YmUyZGIyZWQxZmU3Y2Y0ODEwYTQ1M2FhMmNlIHRsZWUtYXN0LW9wdGltaXplCis2NDI5MiAzODZhNzI5ODRhZjVkY2YzNWQwYjA0MjMwYjliYzliMWUwZjM2NDM0IHRsZWUtYXN0LW9wdGltaXplCis2NDI5MyBmNzdmOGU3OTk3MTQ5NGZiZmZhZGFmNGQ3N2NhMDg2NWVjZDQ1YzU1IHRsZWUtYXN0LW9wdGltaXplCis2NDI5NCAyNmU5Yzg3MWQyM2ZhMTI4MGQxMzNlYTk5M2U2YTNmMDkyM2YyNTliIHRsZWUtYXN0LW9wdGltaXplCis2NDI5NiA0MGQ2MDFkZTI4ZGMwODE3NjY3NWQxMjM2NmY2MWE0YWZlNmIxNzk0IHRsZWUtYXN0LW9wdGltaXplCis2NDMwMCA2ZjZmZWQ0ZjA2MjZiNDc3YWVkYmJmODRkODBjM2RjYzc3M2ZmZTg0IHJlbGVhc2UyNS1tYWludAorNjQzMDEgYTZkN2JmY2Q3NDU2OTFlMGE0ZGRjMDFiMjJhOWQwOTYzYjUyODBmZSBsZWdhY3ktdHJ1bmsKKzY0MzAyIGVlMjgyM2UxZjIzYjY1ZjhiZDQwZmU3OGJmYzA4MGRkYjljMjEwYjggcHkzaworNjQzMDMgNDY1MGVlZmI1ODM4ZTljOTYwNGI4MWJmNjA2Nzk3YjEzYmZlMWM3NyBsZWdhY3ktdHJ1bmsKKzY0MzA0IDM4NDMyODYwYjNiNDY4Yzg2NzZlZjE0ZDM1ODQwMzU5ZDBhNjkxZmQgcmVsZWFzZTI1LW1haW50Cis2NDMwOSBiOGU5Y2MyODAyMmM1NGY0NzEwMDI4NGViYTQwNjIwZTFlNjZiMDM3IGxlZ2FjeS10cnVuaworNjQzMTAgNGVkMTY1OTQwYmRkMDE5MjUxZGIzYTg4YzQ3MjUyNjAwMTcxMWU2NyByZWxlYXNlMjUtbWFpbnQKKzY0MzExIDVjODVkNTVjNGZiMmJkYTQ5NWVjM2Q3MDRjODUyMTExOGJlZjg1M2QgcHkzaworNjQzMTIgNTY2YzcxMzdhYThkYWVjNTRiOGJlZTFmYjI4Mzk1NTA5N2Q5ZmQ3ZiBweTNrCis2NDMxMyAyZTEzZmZhYjE5OWZmYmMyYzg5NjhiZjU0OTIwYTc2ZGMzNzc0YWRkIGxlZ2FjeS10cnVuaworNjQzMTQgNjA5YjA5YTlmZWViNDFmN2YyMzM1MmZmZTk4ZGU4MWQ0MjhhZWFhNiBweTNrCis2NDMxNiA4NDU5MGE2NGYzYTIyNjQzMzY4NDBiZTkwZDI5ZmJkZDc4NDhmODViIHB5M2sKKzY0MzE3IGY4YTg4OTRkYTc3YTRiNzI3NjViOGZlYzk4YzE3NTNjOGQ5NGY5MzQgbGVnYWN5LXRydW5rCis2NDMxOCBhMjliZjY5ZmIzNDQ2NDdjNmZmMDE3MzZmNTc5ZjgyYjJmMDJhNDI3IHB5M2sKKzY0MzE5IDMwMmE2ZDc2MzM3ODQwNjVlMjMxZWU4ZGEzMDBmZjcwNjE4MmE5NWMgcHkzaworNjQzMjAgYzA3NDE4ZGUzY2QzMzI4ZWM5NTM1NjZmY2IxMTA4ZDc1OTViNTg2YSBsZWdhY3ktdHJ1bmsKKzY0MzI2IGI4YzlhMzU0MzM4MTNiMjgzNTg5ZjVhZTY5NjgwY2MwY2M0MDllNWUgbGVnYWN5LXRydW5rCis2NDMyOCA5OGQwMTJhOGU0NDVmMDhiYzIwZDE4YmRkODg1M2Y0YjNkY2U3YjU1IGxlZ2FjeS10cnVuaworNjQzMzggOGU4NWM0NmNmNjczYzI2N2VhZmYyZDMxMDkwOTQ1YTVlZjI3NmY5NSBsZWdhY3ktdHJ1bmsKKzY0MzM5IDI4YWJjMjAyYzc3MTA1OTcxMmU5NzlkMjI5YmQ4ODZkOWRhNTM3N2MgbGVnYWN5LXRydW5rCis2NDM0MCAwYjFjMDFlZWM3ODg1MjlmZGYyNjAzNGU2ODk2NDgwNzAxZDAwNDNhIHB5M2sKKzY0MzQxIDAzNjM5YjA5YzM3NjAzMjhhYTZmMTFjNDkwMTRkOTE5ZGU4ODJjZjMgcHkzaworNjQzNDIgNDBhNzU5MTNmMDRhNjRiNGZmODFkMDRhMjZiNmY3ZjNkNTdkMWEzOSBsZWdhY3ktdHJ1bmsKKzY0MzQzIGY2NDk5Njc2MDk4NDcyODM5N2U3NmIzODVhYmE2ZjQxOGUxNGJjYTEgcHkzaworNjQzNDQgNmYyN2Q1MmU4ZDk1NmUzMjM3OTU2ODZhZmExODlmYjE4YjE5OGRkMiBweTNrCis2NDM0NSA2OGQ4N2JjMDZmYTM3MGQyNWMwMGU5OGU1MDBlZDVlOTJiYmMyNTE5IHB5M2stdXJsbGliCis2NDM0NiA4NzAwMTE4OTk5NWMxYWUwOGFkNjNhNjE1MDkxM2JmNDIzOWJhNGY4IHB5M2stdXJsbGliCis2NDM0OCBmNjcyNmYzMmVmNzA0NzdiZjNhMzhkY2M4NjE3YmNhNDU0MTlmNWI3IHB5M2sKKzY0MzQ5IGNhMDc0MjMyYjg3OTc2N2EyODFjNzZkOGEyMWYzYzE0ZjA3NTMwNTAgbGVnYWN5LXRydW5rCis2NDM1MSBlMzljODEwYTdlYjI3NzkxODAwNTdjYWZhOWRkOTg2ODk5MmU4Y2IwIHB5M2sKKzY0MzUyIGVmODgzZmI0YzA3NmRkNmY4NzViYzU5YzhhNGVjMmVhNzEzNGU4M2IgcHkzaworNjQzNTMgNzBkNzJhNzVjY2YxZTZmMDZkNDIwMWQ3M2QzOWY4N2NmNWY0YTc5OSBweTNrCis2NDM1NCA1Zjk0MzUzMTdkZTE3MDU1MjkyOTliNGRiMzE4OTZlODk3YzdkNzA1IHB5M2sKKzY0MzU1IGEwNTIzYzdjMWM0Zjc4NDVlYjY1NjNlNWVjNTQ3OWRkODU2MGRlZTAgcHkzaworNjQzNTYgYTE3NDE2MTdmMDZmNGQ1NGNmMWYwYzM0NmE1ZjIzYzBkYzNiYzg4YSBsZWdhY3ktdHJ1bmsKKzY0MzU3IGRmNWJiMGE2NTk0YmI3YjExNzk5NmZmMzQ1ODRmNzUwYzc4ZTE2NmQgcHkzaworNjQzNTggYTRiOGRiZTFiNjMzNmYxYmNiYTc1MDczYzMxNGVjNTYxMjcxOTM0OCBsZWdhY3ktdHJ1bmsKKzY0MzU5IDE4N2E4MWRkYWYyYmRmOGNlYTI1ZDlhMTZlMTY2NDVjYjZiNTk5ZDAgcHkzaworNjQzNjAgMDNhOWE5ZDMwODFlZGFiNjgxZjUxODcyNjk3YTUwNTI0NmUzNmUwMyBsZWdhY3ktdHJ1bmsKKzY0MzYxIGE0MDhhMDVkMGUyNTFiOGI2MDk2NjdkNmM5OTc1OTIyZTdkNzg0MWUgbGVnYWN5LXRydW5rCis2NDM2MiBkNTJhNzNkOGQyMGYwMzJiOTNkNzU4NmY4ZTBiZDBkMDIyZWM3OTVkIHB5M2sKKzY0MzYzIDY2YzhmNzZjYWM0NDZkMWE0M2Y3YzRkMTc4MDkzMTEzMWQ0ZjI0NjMgcHkzay11cmxsaWIKKzY0MzY0IGFjODU0Y2RlMzEzNWU1N2VjMWY0ZmM5NWFlNWQ3NDQ5NTBmM2M1MzEgcHkzaworNjQzNjUgNTY0YzI5YTBmYWIxYTA0ZmE5NDJkMjNhY2M5NGU0YjJiZmRmZWQ4NSBsZWdhY3ktdHJ1bmsKKzY0MzY2IDBiMTQ5ZmM0MDE4Njg2ZmEyNTc0ZjJhYmRlYTQ1YjBkY2VjNjQ4OTQgcHkzay11cmxsaWIKKzY0MzY3IDI4ZjU2N2E0MTNmNDE0YmNjMGUyNGQwZjhlNThiYmNmNzQxZjBlZTMgcHkzay11cmxsaWIKKzY0MzcwIGFiMTJlM2FkMmU2NjVmMmUyYzVhYWU5YmIzMTYzZGY2NTQ2NGQxZGMgbGVnYWN5LXRydW5rCis2NDM3MSBiNGQ4MjM0ODM0MjFlYjQwNGE3MDY1YzkyODA5MDU0MWZmMGQ0NDQ3IGxlZ2FjeS10cnVuaworNjQzNzIgYTY1MDNhZTNlMTljMWZmY2Y3MWU5ZDViOTI4MzI3NWJmYTE5YzBiMCBweTNrCis2NDM3NSA2YjdkZGMwZmRhOTM3ODI5NWY3N2Y3YmUwODNjZGRkNjIxYjU5MDJjIGxlZ2FjeS10cnVuaworNjQzNzYgNTcwMmVkZTQyMjdhNDFiZmVjYzMyNTFiZTU2YmZkYmU2N2E0YzUxMyBweTNrCis2NDM3NyA5NTQwNTk3OTEwYjk2OTVjMWZjNjlkZmYzNzkwZGQ1MGM0MDU2ODRhIHB5M2stdXJsbGliCis2NDM3OCA0ZGE3NzE1ODhiYTMxMDA2ODhkNWVhNjE2ODE3OTRjMjQyZDQ4MmMxIGxlZ2FjeS10cnVuaworNjQzNzkgMTU4OGUyZmEzZTdlNzRiMmJhMmYxMjM0YmMwYjk3YzE0MDM4ZGUxNiBweTNrCis2NDM4NCA2YWZkZDZmZTU1MTJkZjRkYTE1MDRjMTNiMDMyNmIxNDNiYjBjMzc5IHB5M2stdXJsbGliCis2NDM4NSA1YTQxNmE2NDE3ZDM4OWNjYmUyNDY4Nzg1NWJmOTdiZWVjYjNkMDQxIHB5M2sKKzY0Mzg2IDc0NGY5YzgwOWYzMDNmNDA3MTViYmYyZGFkYjZhZTY4NTkzNGZhZGIgbGVnYWN5LXRydW5rCis2NDM4NyAwMzIyODA4YzIwZmVlNjg1NjMwN2QwM2YxYzI4YzVjOGUxYjMwYmY1IGxlZ2FjeS10cnVuaworNjQzODkgNjkwNDAwOTJiOGY4MzE3NmM5OTNlOTMyODFkOWQwZTdlNzAyMTkxOCBweTNrCis2NDM5MCAyYzEwNjgzMjhiNWJhNDc2YjE3Mjg5MTM5OTg2ZmYyNjllOGZhNjc0IHB5M2sKKzY0MzkxIDA3Zjk0NzI2MDE3ODNlMTJjMjhjODc4YWY4YzQzMDg0YTZkZTczNzcgcHkzaworNjQzOTIgZWExOTRjOWE2YzJmOWRlNDQzYTE1YmYyNjkyMjI5NGRhZTM5MDBjNyBsZWdhY3ktdHJ1bmsKKzY0MzkzIDJkZGQ4NmUzNzAwYzIwZWRjYWRiMjg1MjZiMzdlZWNiZWRlOTMzZTEgcHkzaworNjQzOTQgNWJkNDNlYjllNTIwYzI3NjI3OWMzZjc2YTgxMjg4YTkxZTVhNTlkMCBweTNrCis2NDM5NSBhMzM1YzRkNjQzYjFjZmUxNDE5N2E5ZWYxOTVjOWIyODA0ZjYwOGZjIHB5M2sKKzY0Mzk2IGIxZWQyYjAwNWUzZGJlYWRkZjU0NjRjNTA1NTIxYzNmYTU5NDBjMzIgcHkzaworNjQzOTcgMDczMDIyNGVjZjVmZWUxYjA3Y2E4M2RkOGFiMDI2N2ExOTI1NTA5ZCBweTNrCis2NDM5OCAyZjJmMzJhZjhjNGVlOGY2NTk4ZjYzMmRjODM3MDFhMjA3MjZkMTBhIGxlZ2FjeS10cnVuaworNjQzOTkgMjU4MWVlMWYyNmY5ZTRiOGRkMzY3MjlhZGJhYzcxZmIxYmEwNmZiNCBsZWdhY3ktdHJ1bmsKKzY0NDAwIGVjZmYxYTFhMDdiNTU1Zjg1ZTg2MTg3NmY2NmYyYjVkNTRlOTMzZTEgbGVnYWN5LXRydW5rCis2NDQwNSBiMzRiYzYzOGI4YTdjNzhiMTkwZTNkOWY4NmE1NjkzODA3MjMxMGNjIHB5M2sKKzY0NDA2IGJlMDdmMzc5ZDg3YWRmMGRkNjRlNjhjNmU2OWY3ZDA3YzVjOTZkZmUgbGVnYWN5LXRydW5rCis2NDQwNyBhNGJlNGIxNzQ3NzExZGUxNGUxYjljYTU0N2ViZGIzY2Q2YmUxODRmIGxlZ2FjeS10cnVuaworNjQ0MDggZTEwNzA2MmFhOWNkNzc4Njg3ZjdhYTM5NWM4MWY1YjMyYWU1ODljMyBsZWdhY3ktdHJ1bmsKKzY0NDA5IDlhZjBkNjViYzNiMjc4NDYwNjAzM2UwZmY3NWVlMmI1NjM2NGNhZTIgbGVnYWN5LXRydW5rCis2NDQxMSAyN2M3OGNiZmE3YzY4MWI4YTM3YjIyMzEwZDUyMThjZWQ5ZTM1N2JkIHB5M2sKKzY0NDEyIDBhZWViMmI0ODM0MWM3NzI4NGRkMGUyYzU4ZTUxZTQxYTFiOTc4MzMgbGVnYWN5LXRydW5rCis2NDQxMyBkYjYyYzQ0OGEzNDllMmYxNWM0YzJjY2VlODk2OTFhZjI2Nzg1OWRhIGxlZ2FjeS10cnVuaworNjQ0MTQgY2I4NzFmNzM2YmUwMjRhNzVmNGFlNzkzNWI4YTQ4ZTY0YzZjOTJlOSBweTNrCis2NDQxNSAyYmY0MTEyY2Q2ODE1YzcwM2UzNjU1MjVlOWE4YWI0Mzg5N2M4OTYyIHB5M2sKKzY0NDE2IGI0MThkZDM5Zjc5OGJlZjg0NzFmYzE5YzhjZDAwZGMyNzE1ZmRlM2UgbGVnYWN5LXRydW5rCis2NDQxNyA1OGY0M2FjZTI5NWU1YzM5ODE5N2EzMmQzZjBkMWM3ODlkMTJjOWJjIGxlZ2FjeS10cnVuaworNjQ0MTggNmI0YjI5MmMzYTJkYThkYWJkNzYyMTFjN2E5ZDYxNDFlMWQwNzRmZSBweTNrCis2NDQxOSAyNWQ2YjJkMGVlNDJlZThhN2Y1YTg1YjNjMDNjNTk5MzExMjQ1ZDZmIHRsZWUtYXN0LW9wdGltaXplCis2NDQyMCAwN2RjZjBlYTc4ODBmNDBmOTExOTczNzRmZDk1MmQyNTZiZDc1NDgxIGxlZ2FjeS10cnVuaworNjQ0MjEgYzM5MjYzZTk0YzMzMDc0ZDRiNmZlNWFjNGRlZjRlMDRiNjFkZjEwYyBsZWdhY3ktdHJ1bmsKKzY0NDIyIDdiOTZmYWU0MDBkNjE4OWU5ZTA2NTI1MDY1ZmExYjc1ODllZWY1ZWUgbGVnYWN5LXRydW5rCis2NDQyMyAxYmZkNWU3MTJiOTRjYTE1ZWRiOTQzNjdjMDJhNDM4ZmNkODA4NjBjIHB5M2sKKzY0NDI0IGVkYzcwMWQwMGI2MjI0MTIwMmQ1MjVkZTcxNTg5OTU2NjYyMjFjNzEgbGVnYWN5LXRydW5rCis2NDQyNSA3MTdlOGFlZTRhOWQwN2Q3Y2RhOWY1ODNmM2E3Mzg4Y2VjZjlkY2QyIGxlZ2FjeS10cnVuaworNjQ0MjYgZDFhNDYzNTBiMDQ3NmM0ZmNjMzM5YzA0MzIwNGQyOTg3MzBmNjI0ZSBsZWdhY3ktdHJ1bmsKKzY0NDI3IGJmZGEzOThjOTE3ZTVkYTI1MGE5YzYwOWNjNjg4ZjJkYzg5NmFmYjkgbGVnYWN5LXRydW5rCis2NDQyOCBhNzE4NmZlZTc1OTZiNjYzZjUzNDVjNGE0YjA5NjU2ZTFlNjk3YzRkIGxlZ2FjeS10cnVuaworNjQ0MjkgNjI5ZWVkY2JiMjY1ODUzNTI4NDc5YjQ5MDgyOWMxZmEwOWNjOThjZiBsZWdhY3ktdHJ1bmsKKzY0NDMxIGQ4ZGM2YjM3ZmQ3ODllZjRmOWY4OTU0ODE5Y2JlNzVhZDY1ZjYzYWMgbGVnYWN5LXRydW5rCis2NDQzMiA1ZWJlZmY4MDQyNWM1NDk5YjRjMzJhY2IyOTJlNjVmY2VmOTc1OTZjIHB5M2sKKzY0NDMzIDRlMWNhZGI3ODcxZWVjZTE0MzhhN2U2NmFjMDkxYWMyNzZjNmUxNjQgcHkzaworNjQ0MzQgYTEwN2JjMmQ4ZjM0MjdkOTk3NmI2OTRiMGM1NWI3MDY4M2MyNTFmMyBsZWdhY3ktdHJ1bmsKKzY0NDM1IGIzMjEwMWMxOWJmODQ4NTYzMjBjZGQzODAxMGYzNmI3MzEyZWZiYWUgbGVnYWN5LXRydW5rCis2NDQzNiA0ZmZhOWJiYTdjNWYwMGI4Y2FiN2Q0OGQxYmU5YTI1Y2E5MGRiODRiIGxlZ2FjeS10cnVuaworNjQ0MzcgMjQ1MjBlODI0MTA3MmU3NDAxNzkxYTVkNjU5ZmIyMjZjMDAwNDhkMCBsZWdhY3ktdHJ1bmsKKzY0NDM4IDQyNjdhZGFjZGQ1Mjc4YWQ5N2FjNTg1ZmY2MTRkMWU2MzA5MmY4NzMgbGVnYWN5LXRydW5rCis2NDQzOSBhMDY3ZGMwNDM4ZDUzMmM1NTIzNmYzNGE5MGVjZmU1ZDU2ZmEwMDQ3IGxlZ2FjeS10cnVuaworNjQ0NDAgNzViNmIyNzM3ZWE3MTkzNjhiN2Y2YThhNjhjZWZiM2E3MmNjZjhiNyBsZWdhY3ktdHJ1bmsKKzY0NDQxIGFjNmVhYjI0NzNjNWI2ZjFlMzAyMmY0NDJjM2FjYzc0NjY1OTkzOTMgbGVnYWN5LXRydW5rCis2NDQ0MiAxNmI3YzUwMGI3NTNhM2M5NmU2MDQ4ZDMzNjNlODk0MDBiNDg2ZDI1IGxlZ2FjeS10cnVuaworNjQ0NDMgOWM2N2QzZGNlOTI1ZDk0ZmY1OTU3YzMzNjBmMDU3OTcwNjk1MGNkNCBsZWdhY3ktdHJ1bmsKKzY0NDQ0IGFlYWQwYzc4MWNiZWY2MTI2YTExZjk1MGVkMTIyOTE5YzBkNmZmM2MgcHkzaworNjQ0NDUgNTU2ZTRmNmVjOWEwOGNhY2VhYjc4ZDQ2NWVhZTE1MzY2NmE2N2NjNSBsZWdhY3ktdHJ1bmsKKzY0NDQ2IDAxNjE2NmI3Yjk3NmUzM2YwYmM2NDBhOGE0NzJkYzMxZmQ0YTY3ZDggbGVnYWN5LXRydW5rCis2NDQ0NyA1ZThhN2Y5ZDk1MjM5MzIxZjgyZTk3MmJjMTZiNjZhNTQ4MjhlODUzIGxlZ2FjeS10cnVuaworNjQ0NDggOTY4MTUyNzE5NjNkNWNhYjJhYzNjMGNiNjc1MDlkYzExNTFmNjE1MiBsZWdhY3ktdHJ1bmsKKzY0NDQ5IGUxN2I4MWE5NWFlZDJlOGE5ODU4MjM1MGYxMzQxNWExMmZhNDhmMmIgcHkzaworNjQ0NTAgNzBlMWEzOGM5ODA1YjZhNmMxN2E0OTJmY2NjZTRlMmY3MmVjZjk0NCBsZWdhY3ktdHJ1bmsKKzY0NDUxIGM1N2QxZTk1NGQ5MzQ1N2MzMTM2ZGFiZjVmMTZkNGMyNGY1YjM4MDggcHkzaworNjQ0NTIgOTZhZGY5NmQ4NjFhNDRkMWIyOWU5MTlhZjgwZmYwNDE5NWEzNzNjNCBsZWdhY3ktdHJ1bmsKKzY0NDUzIDdjZGJlMDFhNDU3NjRiMmUzODQzYjUxODg4M2YyNjIwMGUwNDZiN2EgbGVnYWN5LXRydW5rCis2NDQ1NCBhYzE1OGNhNjg2Y2I1MTlhMzgwMTIyYjkyOWE0Y2FmYTNlMzlhYWU2IHRsZWUtYXN0LW9wdGltaXplCis2NDQ1NSA4YjZjMjg1NmRiZTUxMDM3YzJmZDZlYTM1YzA0M2NhYjhmMTJjNTE1IGxlZ2FjeS10cnVuaworNjQ0NTYgZWI5ZmFlMmZhM2Y5NjY0MmViYmY1YWM3MWNhNWQ3MjZiOTE4YjNiYSBsZWdhY3ktdHJ1bmsKKzY0NDYxIDY1YzIzNjYzZDBiZDY5ODEzMmVjNzlmMDBiNTE0ZjIzNDUxMWU4ODggbGVnYWN5LXRydW5rCis2NDQ2MiBkYTY4OTNlMjAwNGY0Y2E3MDkxZDk5YzQzY2NkNzRkZDY4NTRjZDU4IGxlZ2FjeS10cnVuaworNjQ0NjMgNjhjZjNjYmIyMWQyNThkOGUwMjIxNmQ0Y2NlM2M3YjhkNjlkOGUwZCByZWxlYXNlMjUtbWFpbnQKKzY0NDY0IDdiNTFlYThjYzU1OGRiYjM0YjRjNDAyNzFhZmYyZjAyZTE1ZGI5OWQgbGVnYWN5LXRydW5rCis2NDQ2NiBiMTFiMDljMWVmZWYyYmViMjM1NzgzZjNkNjdjNDUxZTQwZWE2ZDYzIGxlZ2FjeS10cnVuaworNjQ0NjggODhiZDhlYWE1MTUyZWRjNTc5NzI0YzllNTM5MDYzNWZjNWMzMDZhMCBsZWdhY3ktdHJ1bmsKKzY0NDcxIGE5YWQ5OWQwYzcyMjRiZTE4YWRlMjM3ZWE4NGNiMzQ3MzQ1YjljY2EgbGVnYWN5LXRydW5rCis2NDQ3MiBlMGYxZTFjNTY2ZDlkNjc1NDMyYTE2ZjU1MTgzY2MzYzEyMTE0YTdlIHB5M2stdXJsbGliCis2NDQ3MyBmODQ2OTFmNDg5YzM4YzYwODM3YWQwNWYxMDBhODY5OGI0YzQ0YmQ2IHB5M2stdXJsbGliCis2NDQ3NCBkZDkwN2Q2YTdhODVkMTYzYzdlMTIxYzVjZTNkMGZmM2M3ZjNkY2QyIHB5M2stdXJsbGliCis2NDQ3NSBmMDAyN2JmZGY5YmM0NDUyNTZmNDc5NGU3YWNmMjkwOWU3NzUzNWRhIGxlZ2FjeS10cnVuaworNjQ0NzYgMWY2NzFjODVkZjA0N2M1Yjc1MDI2YzM0NjQ3MjIwMTU5MmQ4ZDJmNiBweTNrCis2NDQ3NyAxZGJkN2E1MjJhMjM2OWYzYjUyOTA1NjllNjY2MThhOGI0OGQxZDUxIHB5M2sKKzY0NDc4IDZjMDRkMTQ5OTRkMDg4MDEzYzRiODE2YmM4ZmVjNTQ3ZGE1YTYxYmUgcHkzaworNjQ0NzkgOTY3Njg4NDc5ODgzMGQ4MDE2NzRhZWU1YzljNmI3NGM1NjNlZTVjMSBweTNrCis2NDQ4OSA2ZTA2ZDRhODZlM2QwMzI4ZDhkMjA4NDAwMzg2NWJhNjJhYmJmYjdkIGxlZ2FjeS10cnVuaworNjQ0OTAgYjAxNTY5MzExNGY2Nzk3YWM0YjBmMWIxZTJlMWYzMWM2MzNjOGE5NiBsZWdhY3ktdHJ1bmsKKzY0NDkxIDc1MmUxYWJhZjE1YTU2YjViM2ZhZTg0MWQ3MGE5NTJiZGNiNTBkOWYgbGVnYWN5LXRydW5rCis2NDQ5MiAwOTgxNzNlODQ0ZDE1Mjg1M2M1Mjk2MjdhZjhmYTczNmFkM2ViN2ViIHB5M2sKKzY0NDk1IDVkNWY3Mjg1ZjVjNTliNGY1MTU2NjYyNGJlOTU3OGFjYTY3MWIwZWUgbGVnYWN5LXRydW5rCis2NDQ5NiBjODNlZWYwNzhmZDlmMGVjYTg4ZWU1ODczZTkwNjVjMTQ1OWUxNjY2IGxlZ2FjeS10cnVuaworNjQ0OTcgYjFiZGNiYzk3YTE0YzA5NGFiMDRlODJiMjE2OWYwODZjMjZmMWY3ZSBweTNrCis2NDQ5OCA2OGZkM2FiODQ4NGVlYjdkMGI1ZjM2MzM3Mjc4ZmY2Y2ZlYjRhOGI1IGxlZ2FjeS10cnVuaworNjQ0OTkgMTJiZTQ0YzZhNzAyZThiM2I3Y2FhYzlmNzdmMGM0MTFkOGU4MDQ5MSBsZWdhY3ktdHJ1bmsKKzY0NTAwIDdlNzQ3ZGUyMzFiMzgyNzM3ZjYzMThmM2IyMDUwZDNmNTYxZjBkNjMgcHkzaworNjQ1MDMgMjJmYmRkZjE4ZDQ4OGExMDAxODMyZTc0NzVhOGM1N2U5MmQ1NTVkYiBweTNrCis2NDUwNiAyNzBmZjZmNGQ5OWYzZmQwZGY5MmZmNzIyNzA2OWYyNWUyYjUxNDRiIHRsZWUtYXN0LW9wdGltaXplCis2NDUwNyBkOGFmYTQxYzY5NmFiYmRlYjAzZDJkZGNjNDc3MWVjNmFjYjA5MDdmIHB5M2sKKzY0NTA4IDNiNmZmY2ZlMjk3MWUxZmQzOTllMDJlMWNiZmZhYjZhNDZmMWVlNzcgbGVnYWN5LXRydW5rCis2NDUwOSA5NTc0ZmVkOTM2ODgzNmE1YmZmNzc5MmYyYTdmOTMxZTI2ZjgwYjdjIHB5M2sKKzY0NTExIDBhZjZmMDMwMGVhZmY0NDNkNjg2YjJhNThmN2JiZmU0YjdkZTdiOGMgbGVnYWN5LXRydW5rCis2NDUxNSA3Nzg4ZTk4OTNiODViYjkxYzc3M2M3MWQwYTM1M2E0NWQwZWQxMjlkIHB5M2sKKzY0NTE2IDNhZGE0NmYyMzIxZGMyNDQ2ODBiNDcyZGIwZTBiMGFiMDM4M2JmMWIgbGVnYWN5LXRydW5rCis2NDUxNyAzYzhkM2I5OGNmZDczY2QyMjM0NmJhZWQ3ZjdkNWVhMTJlYTEwMDhmIGxlZ2FjeS10cnVuaworNjQ1MTggMzgwYWEyZDE2MWQzOTI5NzIzODAwOGNlNGRlODFhMDFjMGZiOWZkMyBsZWdhY3ktdHJ1bmsKKzY0NTE5IDBiNTJiZGM0Y2Q4OTM5OTkxYjhhNGFhZTk3NTJhNjMwZjAxOTMxMzQgbGVnYWN5LXRydW5rCis2NDUyMCA2NGFiYjYxZTlkNGY3ZjA0NzNmN2I3ZmE0Yzg4MTM2MzBmYjVjMmZjIGxlZ2FjeS10cnVuaworNjQ1MjEgNTdjODJjYjBmYWZmY2U5YmZkMmNkMWQ4OWJhZmU3MTY5NDM0MmYwYiBweTNrCis2NDUyMiAzN2EyMWQwOTdkMzRkMzUxNDVlNjhjNjVmOTY1N2VjMjBjODJiNWYyIHB5M2sKKzY0NTIzIGU1YTUxZWQ5ZTYzNDI3MGUyNGUzMTEzYTJiM2MzMTY0Y2U2Mzc4YWIgdGxlZS1hc3Qtb3B0aW1pemUKKzY0NTI0IGQxZTg2NGE1YzYwYzhiNGYyZTA3ODg4M2YzODdjZDdlMDU0MzVjMDcgcHkzaworNjQ1MjUgZmZiZDRlMzMzZTJmOWJkMGUzZjA4ODE1YmFhZjYwMTkzYWRkNzUxOCB0bGVlLWFzdC1vcHRpbWl6ZQorNjQ1MjYgN2RlMDM4NTUwNTIzZGMyYjM4OGY2ZDQ1ZDU0MjdmMzcwZGVlNDY1ZCBsZWdhY3ktdHJ1bmsKKzY0NTI3IGJkZTJhYjk0MzU5M2MzYTlhYzE4MzdlNWM0YjkwZGRmMzAyYWVjYjUgbGVnYWN5LXRydW5rCis2NDUzMiBiMjYxMTY0MjViMTE0MzYwMDY1MWU3ZjQ4MzY1MzNiZmU0ZmFmODBlIHRsZWUtYXN0LW9wdGltaXplCis2NDUzMyA3ZWIzNzM3NjU3ZDEyZWZjODBjMDAyZjNhYTk2ZWFiZDI2NmQ2MzU5IGxlZ2FjeS10cnVuaworNjQ1MzUgODgyMWI0MDVlMGU2Y2Y5ZTg2YTQ5YTU2YTA0NTdmZjM1ZGRmNDI5ZSBsZWdhY3ktdHJ1bmsKKzY0NTM2IDA2NGIwYjc1YmFkNTNiNWJhNzM2N2QxYTkyZTVlZjRkNjEyN2I2M2EgcHkzaworNjQ1NDQgOGM5MjljZTBmYjQxYzA4NjUxZTVhYmQzNWU4NTdkODI0OTMwNGE1ZiBsZWdhY3ktdHJ1bmsKKzY0NTQ1IDcyM2MwZmY2OThiN2Y1NmY4MzVlNGU1MWYxMDU0ZTY5MTE3ZWJmMzcgbGVnYWN5LXRydW5rCis2NDU0NiA3ZmJjMzc0Yzk1OWQyZDc3OWY1Y2U2NjRmMzVlZjRmYzA4MDZmN2U1IGxlZ2FjeS10cnVuaworNjQ1NDcgNThkYzM2N2RjMWVhMDBiZDNjYzgzNTNkYzRiMjY1MmIxYzQzOTk5ZCBsZWdhY3ktdHJ1bmsKKzY0NTQ4IGM0Yjc2NmFmYWM2ZjY0NmU4NzFhMTMxNGQ1NDNmNjYxZmRhZDJhM2YgcHkzaworNjQ1NDkgZGM0MmVmZDcyOGVlYjgyMmQ1NjM0MmUzNjMzYmU4YzdjNTMyNjFhYyBsZWdhY3ktdHJ1bmsKKzY0NTUwIGVkZDQ4YjA4NDk0ZGE4OTZjYmZlNThkZDMwYmFiYzg0YjUzNjYxMzAgbGVnYWN5LXRydW5rCis2NDU1MSBiZmFmMTQyOTU3OTQ5ZTA0M2JkOGNmZTZjN2NkZDhlOWZkZmZkY2Y1IHB5M2sKKzY0NTUyIDYwNWFiNmY5MjgzODhhZjVmMWRmYWE5MjJjODk1YTQ5ZmQwNzkxOTEgcHkzaworNjQ1NTMgYzcxMmJjZDMyMDNiNGNlOTgwNGNhZWZhMDE3OGM4ZjY3ZTBiMGM4MyBweTNrCis2NDU1NCBjNTYwNzJlYWFjYzI2MThhMTMzOWQ4Y2EyNzgwMGQ5MzMxNGNjODQzIGxlZ2FjeS10cnVuaworNjQ1NTUgYTY5YmQzYWI5Zjk5N2NkYmFhMTk2MzU3Y2I1ZjI3MTE2YzVkMzI0NiBsZWdhY3ktdHJ1bmsKKzY0NTU2IDcyNDM0MDEzYjAzMGZkYzhkMDVhMGUyNWZhODJkNTFjYzBlZjI1NWMgcHkzaworNjQ1NTcgNDNmNmJiMGVhY2IyZjQwODNiOTY4YmZkNGI3YjcxODZjMjhhZmEyNSBsZWdhY3ktdHJ1bmsKKzY0NTU4IDViNGM4NzA5OTAzZDA3YTUyNTNlZTExNDYzNDY0NGIzNmZlNDY0NjEgbGVnYWN5LXRydW5rCis2NDU2MSA4ODM5MjAyMTk0MmE2ZGZkY2VlODZhMzE4NjRkODc2ZWFhMjc3N2Y4IGxlZ2FjeS10cnVuaworNjQ1NjIgZWQ1ZGMxM2I4OTliYTJkNmI1NDViZjhhYTE3OTRhODVjMTI4N2JkMyBweTNrCis2NDU2NSAxYzRiZDUwMmRlNjI5YjI5MGRjODcxZDFmYjJiMjEyOTZhNzU5Yjg1IGxlZ2FjeS10cnVuaworNjQ1NjYgNTA4NTlhZTRhZWJiYTRiZDYyYTM2NWM4ZDk5NzZmZjIxMDlmMzBjZiBweTNrCis2NDU2NyA4NDFhZTE3NjdiNGM1NDgzOGJlMDRiZjI1MDdlZjk2OWQ5MGE0NDdmIGxlZ2FjeS10cnVuaworNjQ1NjggMjQ4YjhhZGZjYzk3YTM4ZjVmMzgzZTBhMGI4YmE5ZTE1ZTM4ZjkxMSBsZWdhY3ktdHJ1bmsKKzY0NTY5IDkwM2I2ZTJhMzA0ZmIwYjMwN2NjZTRjOWE1ZmRmNzNkZjY5ODY0ZjYgcHkzaworNjQ1NzAgYjg1NzcwNDU5NTkxYjg4YjY4MmIwMjYyMmY3MGMzZjM5NTVhM2MwNSBsZWdhY3ktdHJ1bmsKKzY0NTcxIDJjOGUzY2NlYWM0ZWI0ZTA0MDFlNGE4NWQxYThhZmJhNjMyZGJhMzggcHkzaworNjQ1NzIgYWZjZDY4YTg3ZWVjYWQyMTEwZTFmODk4NThkZjU3OTk2MTdiNGUwNSBsZWdhY3ktdHJ1bmsKKzY0NTczIGJkYmI2NmJjMzdkY2UxYjNmY2FjY2UyOWQ2NzdhNTg0YTEwMmI0MmUgcHkzaworNjQ1NzYgYWZiZDUwYWQ0ZjM0ODQwNWQ2YmQzNWI5ODI3ZDUzMzcyZGNhYzkxNSBweTNrCis2NDU3NyAxZGQxMGIwNGRiNDc0MWI5ZmM5M2Q0MjI4NTliMjBmNDc3N2RmZDM4IGxlZ2FjeS10cnVuaworNjQ1NzggOGEyODFiZmMwNThkN2YwZDFlYThmNTJkOWI2Y2QxMmYyYzU1ZTZlOCBsZWdhY3ktdHJ1bmsKKzY0NTgwIDBmYzc4NjFlY2U1ZjZjZjBlNjIzYWI3NTY3ZjhmYWU3M2FhNTdkODMgbGVnYWN5LXRydW5rCis2NDU4MSA1NWFjNmM3Y2ViNTk4M2MyNWYxZmE5NmQ2ZjVjMjQ1OWY2MjZmYWUxIHB5M2sKKzY0NTgyIDNjNDlhZjJkNWJmMGFmZTY1ZDBhODExMDQzZjE3ZWU1M2YzZTY2NmMgbGVnYWN5LXRydW5rCis2NDU4MyBhZDliZWI0MWFhYzEwNTAwZjc2NTk1NzUyZDE2MWUxYmNkMGQ3MWQxIGxlZ2FjeS10cnVuaworNjQ1ODQgZTE3YWRmYWY0ZjY0YzljNGE0MTdhYjA3YTY5ZWNiMDg1OTRhNmI1NCBweTNrCis2NDU4NSBkOTRmYTRjYjUyZTczNDlhOWQwOTBjMzcyYjE3MjkwYWYyZDFkY2QyIGxlZ2FjeS10cnVuaworNjQ1ODYgZWY5MjcwMzc0ODQ0NGNjZTkxOGUxYzIzNjM3MTZmMWQ5ZjlkYzRiYSBweTNrCis2NDU4NyBmNWY3MGYyMGI2NzhmOTY2ZjY2YTQxYmZmZDdjMDA5ZTU0MjE3NzA2IHB5M2sKKzY0NTg4IDRkMmQwYTIxZDQ5NDhkYTljMmM3YjFjZjI3ZmI0ZDQ3ZjRkNDVhNjMgcHkzaworNjQ1OTAgYmU1NWI3YzJjOGU2OTI1Y2JiZTY4ZjU4YzE1ZTBlNzk0NjU2ZmNmMCBsZWdhY3ktdHJ1bmsKKzY0NTkyIDczY2JjZGU3NWUwNThjMzg3NDZlYWNlZmZlNDA5MmQ5MDQ0NTlhNmYgbGVnYWN5LXRydW5rCis2NDU5MyAyOTdlMTIxOGVmZTUwOWY5MzdiZjgxODY4MTc5NDNkZDYzMTE2ZTBmIGxlZ2FjeS10cnVuaworNjQ1OTUgZTE0NzM5YzU4NDAxMzY5MzQ3NWI2MTg0MzNhMmYzODhiM2I5YTk4MCBsZWdhY3ktdHJ1bmsKKzY0NTk2IDI1NDEyYzZkMjc3NjM1NjU4MGY4MjcwMTY1NzhlNjdmOGYyMmViNDUgcHkzaworNjQ1OTcgODJjNDY4MWNkOWJkMDdhM2FkN2VkNWMxZTYxZWQ0M2FhMzJkNjg2NyBsZWdhY3ktdHJ1bmsKKzY0NTk4IDc2MDQ1MTVhODE5ODVhYjcwNzI3YzNlNGFmY2JlNzVjZjA4YzhiODUgbGVnYWN5LXRydW5rCis2NDU5OSBhOTAwYmIxZGVkOWQ5YjZlN2U5NmZlZDVhOTA1NWFjOWIzYWFiOGFjIHB5M2sKKzY0NjAwIGI5ZDJmZjVlM2RjZmMwYWU5ZWFkZTk1NTE2NzYwNTFjNGZkMGZjNzAgcHkzaworNjQ2MDEgOGNjYjM1NzM5YTk2ZjIwYjJhZDc2NjBiY2QyZWUwMzk3ODIzNmNhZSBsZWdhY3ktdHJ1bmsKKzY0NjAyIGUyOWI0Y2U2NDFmOTQzMTk1Zjg1MWE4MTRiMWI0YzZiYzZmZGFiNTIgcHkzaworNjQ2MDQgZmQ3OWM0ZDk3NzQ1YWQxZWNkZmI3OThlMjViODJhMDRiYzRlMjllOCBweTNrLXVybGxpYgorNjQ2MDUgOGNmYjg5YjYxYzJlNTFiNzkyYjFlYmYzOWZmNjBkMjk3NmUyODJlOSBweTNrLXVybGxpYgorNjQ2MDYgYjZhZDY2NGNhZTQ5OTg4MjcyZGI4ZmQzYTJhOTc0ZTQ2MmI1OTdmMSBweTNrLXVybGxpYgorNjQ2MDcgN2IyZjIxODk1MzkyM2M5MGU0MTFlOWIzNjY2NjEzNjFkNzJjY2MwNCBweTNrLXVybGxpYgorNjQ2MDggNzM5Y2M5ZmRlZmU1ZDRhZWI2NDE3MDhiNWU5MDY4NWRkYmFmOTBkMSBweTNrLXVybGxpYgorNjQ2MDkgYWQ5ZmI5ZjFkNmQzYmRiYWY1MzE3MDQ0NTFkNmVlY2FhYmEyZWZkNyBweTNrLXVybGxpYgorNjQ2MTAgNDE2YTU2ZWIyNGYzM2FhZGJmY2MzOGMyMWZiMTk3ZjQ4YTM1NDIyNCBweTNrLXVybGxpYgorNjQ2MTEgNDQ2ZTNkYWMwYzMxYmQ0OWZiMzY2Nzk4MTg3N2U2OTM2YzYzY2VmMyB0bGVlLWFzdC1vcHRpbWl6ZQorNjQ2MTIgMzdjN2QxNzc0MGNjYTY4OTQyNjM1NzMxN2RjZWFmZDgzZDAxZjcwOSB0bGVlLWFzdC1vcHRpbWl6ZQorNjQ2MTUgZTI3MTk3NmFjMzcyNGVhMGIxNDMzNzg2N2UyZWY4ZGE3OTNmMTNiZCBweTNrCis2NDYxNiA1Zjc0NjhhYzE0Y2Q4N2E1YTIxMjMyYzU5YzljMTE3ZWQ0MGVkMTYyIHB5M2sKKzY0NjE3IDkxM2FhMjc0ZWQ3N2I1N2QxYzMxZmIwOTdlMWU0NGY3M2NjOGQ1ZWUgcHkzaworNjQ2MTggYWNkZmZiNWI0MzUyMjExM2RmZGI1ZGQwNWJjOGZiZDk2ZDNjOWVmNCBweTNrCis2NDYxOSBlZWQ1MzE3YWM4MzdlMjYzZDMwZWE5MDA0OGYzZmJiZWM3YzRlYTc4IHB5M2sKKzY0NjIwIGY5MmM4MDA5NWMxNGM5ZDkxYjQ1YzVkZGVhNTEzNDllNTE0MTk1MTkgcHkzaworNjQ2MjEgYmI2NWY5Yjc2YzFmYTUxYTAyZGM1ODNkZDA1MTdmNTM4ZjdlMWQ5ZiBweTNrCis2NDYyMiA4MDEwOWQ0MDQ0Y2RhNGZlOTFlNGM0YTY3YjQ5MDFkZDE0OTRhZTdmIGxlZ2FjeS10cnVuaworNjQ2MjMgZTEwZTI1N2NiZjYxNWViYjY3MTBlZGJiNjBiNjQ4ZWJhZTMyZTA0NiBsZWdhY3ktdHJ1bmsKKzY0NjI0IDdkMTUzMGZhYzFmNjY4NDE3NjkyY2M5NDQ3MTJkNzE4NmM2M2E3MmQgcHkzaworNjQ2MjUgZTY4ZmU5MGYxNWFiMDBlMDMyMTg2Zjg1OTBlZDBjZTRlYmJiZGQ5ZCBsZWdhY3ktdHJ1bmsKKzY0NjI2IDQyMzA5NDM3ZjFjYTI1YzAxNjEzODc0OThkMmIzNjEyZjI0MWMwZGIgcHkzaworNjQ2MjcgN2UyOTlhYjM1ZDk1ZTE5OTg5OTk3OTBkYzZkMzlkOGViYjRhMjJmYSBweTNrCis2NDYzMCBjYTEzNTNiZmQ0OGEzMjMyMzAxZGVkODE3OWQwZjU0NGNhYTIwYTMxIGxlZ2FjeS10cnVuaworNjQ2MzEgNzAzNTc4MTE3Nzg2MjdjMWEyMDE1MTUzMzAzZDZhNmViZWYwNzNkYiBweTNrCis2NDYzMiBkNjY0MDQ5ZWNhY2FkOGJlMTk4OTk4MmI1MGUxYzRmOTkxYzhhMzIyIHB5M2sKKzY0NjMzIDdkYmQ2YjYwNzcwNmEzNjNiYWE2ZDhmMTA4NzhhYmU1ZTQ2ZTY1MTkgbGVnYWN5LXRydW5rCis2NDYzNCA3MGE0ZWM0MTI4ODIyYWNjYjQ3NTRkNTc1MGVmZjcyNDU3ODE1YzdlIHB5M2sKKzY0NjM1IGNkYTU1NmQyMzkyNDQ3Yjk5MDQwMTY5OGFmYzhhYTVlZDEzNjk2ZGEgbGVnYWN5LXRydW5rCis2NDYzNiAyZDQ4NzdmNzUwMGVmYWMzODEyM2Q0ZjhiYzRjYTI1MzUzYjkxODM1IHB5M2sKKzY0NjM3IDZjMzg2MDkxNDI5MmM2YmU4MzA2YWVjNjM2NmNkYzA1MmIyZDM3ODYgcHkzaworNjQ2MzggYTA2YTBlMTEzMmVlMDJmYmFkMTFmODI0Yzc3MjUyYWRkOWZkYTk4MiBsZWdhY3ktdHJ1bmsKKzY0NjM5IDYwZmQwODg2ODExYzc1ZDU5NjA3MGU2NjgyZDJkOGVhNTdjOTlhOTcgcmVsZWFzZTI1LW1haW50Cis2NDY0MCA0YTgzMjk1MzUyMzRkNzViNWQ3NmM0ZGI4NzgyMDExMGYzYWM2NmQwIGxlZ2FjeS10cnVuaworNjQ2NDEgZThiZWUzMDk3ZDQ0MGU1M2JiZjNmNWU4OTYwNTg1ZWVkNWE0YjY0MyByZWxlYXNlMjUtbWFpbnQKKzY0NjQ3IDZjZDNjYmUwNzAzNWU5NGZkYmE4ODNkZGE0N2FmOTNkMDVhZGYyOWIgbGVnYWN5LXRydW5rCis2NDY0OSA4MDE3NTQyMDFiMTE0MTI4NjJiMzU5YjBlMzliODIyYWI2OTkyZmIwIGxlZ2FjeS10cnVuaworNjQ2NTAgMmQwMzZiNzhkZmE0MGJkNjEyNWQyZDYxZjhlMDYxYzQ0YjQ5MWU4YyBweTNrCis2NDY1NCBiN2YzZDk3MGU0NGYwMzE3MGYzNDZjYzhhZGI4ODY0NWJiYzcyZmYwIHRsZWUtYXN0LW9wdGltaXplCis2NDY1NSA2NWFmNTQ0ZGExMjFkNDg1MTUxOTRkMmVkODE2OWE0MTYwYzk1NzM1IGxlZ2FjeS10cnVuaworNjQ2NTYgNWQ4ZjQ3MDA1YjczZWIwYzg1OTcwZDZhZDBiMmFjMTlmODZhMDM5YyBsZWdhY3ktdHJ1bmsKKzY0NjU4IGY5MjcyNDBkZWYxYjczYzdlZDE5ZGI4YjkwMDJmMjU2ZTEzODNmZTEgcHkzaworNjQ2NTkgYjM5Y2VlYzgxYzE3NGY4MWRkZTEyZDljODgxOTBlNjExZmE2N2Q5ZCBweTNrCis2NDY2MCBlMjJkZWFlYjZjMWIwMmYyMTdiNzQ0Mjk4OTgxMWRhZjhlYWNjMjMyIHB5M2sKKzY0NjYxIGFkZjQ4ZjJmYWRmY2JiZTk1NzRiYjMwNmVlZTY5MjAwNTlkMmE0NGIgcHkzaworNjQ2NjIgZGFmOWZhZDdjNTUxOTEzNmUyMjg5Y2E4OWEzNzFhYTQ4MGFmYWU3NiBweTNrCis2NDY2MyA4MzJhZTUxM2QzNDQ0NTAxNjZhN2Y2MDVjZTQ1NzJiZjJmY2IzNzZiIGxlZ2FjeS10cnVuaworNjQ2NjQgZTRiYmIxZDNkZDE0NWM4Yzg2Y2ZhYzA2NTE2YTU2ZTI0ZDA4ZDU0MSBsZWdhY3ktdHJ1bmsKKzY0NjY1IDMwOTU0MmZkN2ZlOGQzMzgwNjc1YmYzY2YxNGE3YzExMzM2ZDFmNjcgbGVnYWN5LXRydW5rCis2NDY2NiA4MWZkOGE4YmFhOWE3MzNjYjUxOWNhMmU4MTFkOWE1OGViNDUzNzUwIHB5M2sKKzY0NjcwIDE4OTliZTMxMjJjMjIwZWM5ZmQ3YmM5OTgxODg3NjdiZDNlMGUyOTggcHkzaworNjQ2NzEgNWY0YTg5ODBjMWFjYmY2OTk3YzBkN2Y2MzhmZmE0MGQ4NWM2MjUyNiBweTNrCis2NDY3MiA3ZTU2MDE2YTY1NjU5ZTBkMmZlMGEwYTA2ODk5Yzk3YzI1MjE3ODM5IHB5M2sKKzY0NjczIDcwZTFkMmJiYmMzMmZhZDE1OGQ5YjMyYTQyMDEzNGJiMjU3ZGMxMTIgbGVnYWN5LXRydW5rCis2NDY3NCA0MDI1ZjYzODkxMWZhMTk2MWUxMTNkYjlkMDg4MTdmMTkxMDNkNmI2IHB5M2sKKzY0Njc2IGJkMjMzNDEyMGEzMGU3YzQ3MWI0NzU0M2YxNzY5YjRiZWY0ZjJmNmMgcHkzaworNjQ2NzcgNjkwMWQ1ZmYwZjdhYjZhOTMwMGRjNTVlZmM2NTcxYWNkZjEwMDEzZiBsZWdhY3ktdHJ1bmsKKzY0Njc4IGZiMDJmZWRmZTY0N2YyYzg4MmYzNDRhNjc3ZWI3MzU2Yzc1MjlkM2EgcHkzaworNjQ2NzkgMWY4YmUyNmQwOThhY2E2YmVlNmJkMWIzN2EwZWRmYTk4ZjY4ZjlhZSBweTNrCis2NDY4MCA5ODg2MGNmYTE5ZmQzOGJjZmJjODAyZGRhNDI4YjI4NmI1NzZiMTRmIHJlbGVhc2UyNS1tYWludAorNjQ2ODEgYWExZmJlMzIxYWNmMWYwYTJmNGU0NDBmOWU0OTk0ZWUwNzk1MTA4YyBweTNrCis2NDY4MiAzNTBhMjg5YjBlZDQ1YzQ0ZTQ3ZThmYjllOWE0MTQ4MWMwYjkyOTY1IHB5M2sKKzY0NjgzIGVmOGQ3NDg3YTA3NzczYzNmODMyNDM1NTViNTEzMTVjZGQ3ZmJiYzYgcHkzaworNjQ2ODQgYTU3MjNhODM2N2U3NmExODk2NjM0OWQ1Yzk4ZDMyMGE1NGEwZGEyOCBweTNrCis2NDY4NSA0MjI0ZmY3N2ExZGRjZmVmMjUwZTE5ZjZhOGI4YTEyNGZhZTI3Njk3IGxlZ2FjeS10cnVuaworNjQ2ODYgODkzZDkwYjc3MzFiZDAxNWYwNjFjYzg3ODMzYWZmMmU5Zjc4MDY0MyBweTNrCis2NDY4NyA3ZDFlNjE0OTJjN2RmZDc4YjIxZDQxMTk2MzI1ZjFlMTkyZjQ1NjMwIGxlZ2FjeS10cnVuaworNjQ2ODggYWNmYWQ4NjQwZTIxZmY5YmNlNGZlYjNlMzVmNGRkZWUyYWIzODFjMiBsZWdhY3ktdHJ1bmsKKzY0Njg5IGU1MDIwNDY2NjhiMTAwYzhmNjk2Zjk1YTA1MDJmNDY3Mjc4ODk3OTkgbGVnYWN5LXRydW5rCis2NDY5MCA4MDdkNjk5NWJhZmQzZWVkMjY3NGQ5ZWEwMDg2OTJkMzMzNTIzYjk4IGxlZ2FjeS10cnVuaworNjQ2OTEgY2RhYWM3OWE3MjM3NjhkOTI4MzAxMzQ2M2ZiNzQ0NzY3OWQyODdjZiBweTNrCis2NDY5MiAyZDBjMzY0MzIyM2Y2OTI2ODUwODYzMjIzN2EyNzczMjQ2MDhmNGZiIHB5M2sKKzY0Njk2IDQwZWNiOTEzMzk5ZTY3MzEzNGI2Njc0Y2RmYjEyZjkyM2M0MGI4ZWEgcHkzaworNjQ3MDAgYjFiM2FmODJhZGQ2ZmFkM2IyNDMzODA2YjU5N2YwMDYxNjJiYWY2ZiBweTNrCis2NDcwMSA0ZTY4NTljNmQzOGM4YTJjYWE5MzZhNzJkZTFiMjIzODA2ZDVmMzIxIHB5M2sKKzY0NzAyIDEzYzk4NTJkZTgxYTNkMDFhMjhmOTJmNjIyM2VmYzhlMDlhOWUyNjkgbGVnYWN5LXRydW5rCis2NDcwOSBlYTdjYzE4YzlhYzg2ZjIzMmNjYmZhNWE5MWQyOGEwNDhhYzgyMjdhIHB5M2sKKzY0NzE2IGRjOWIzZjI4OTJiOGIwYzQ5ZTMyYjQ2ODhiZWQ4YjJjNWM1OGVhMDIgcHkzaworNjQ3MTcgMDQ4MTc3OTNiOTYyNWIyNDYwOGRhYTE3YWIzMmU5MTNhOTE3ZTczYSBweTNrCis2NDcxOCBmMjcyMDYxMDFmZjk0M2MyYTAyZWI0Yjg1M2E0NGQ2N2RiYTIyZmQ1IHB5M2sKKzY0NzE5IGM5MzU5NmVjMWQzZGU2NjVkMzYxMGMyY2JhM2QxODRlZDUzYzk1ZGQgbGVnYWN5LXRydW5rCis2NDcyMSA2ZjEzMmEyNmIyMmY3N2NlNDRmZjEyODZhZmY1MmQzNWFkNmNkZTg2IGxlZ2FjeS10cnVuaworNjQ3MjIgZDc1MjY2NzBmZjBhZGVlZGU4MmQ4ZDMyZjMyN2YwZjgxZjNhMjgzYSBsZWdhY3ktdHJ1bmsKKzY0NzI3IDNiMDBlOWY5ZDY5MjU5ZjJjNTMyZjVkYWM5MTFjMTJiY2IzOGExMzYgdGxlZS1hc3Qtb3B0aW1pemUKKzY0NzI4IDhmMTM0NjUwMjIzNDVkZGIzMGZjMTY1NDk5ZjY3ZmY1ZWJmODAxODMgcHkzaworNjQ3MjkgNGJmODQwMzVjYjVmNTg0MWViNzA5NzhlNmIwNWI0M2YxMTg4ZjJmMCBsZWdhY3ktdHJ1bmsKKzY0NzM1IGY3NzI0NzZhZDkwZGY4ZTkyNzY0MDRjOWUwNjdiNzlhMzkzNTE2YmYgbGVnYWN5LXRydW5rCis2NDczNiAyMjc5ZGQ0YTJmNzMyYjc1Mzg3ODlkZWU0MjQ3YzE0Zjc4OTNmZGQ5IGxlZ2FjeS10cnVuaworNjQ3MzcgNDcyMWYyN2VkNmMyN2U4NzUzZDNhYWM2MDg5M2EwM2E0OTA5ZmQxNCBsZWdhY3ktdHJ1bmsKKzY0NzM4IGZiMjc5MjQyZjk3MTAyZDBkYTc2NTIwMDMzYTZiZGE3OWJhMWEyYWMgcHkzaworNjQ3NDIgNDgwMGRkMjJmNDU1ODM4ZjJkMjBiNWU2MGQ1NGRhN2I3ZTdmMTFiZSBsZWdhY3ktdHJ1bmsKKzY0NzQ0IGQ2NjU3OWY5MjVjNDZmODViOGIxZThkYTQxY2ViNGEzNTYxMzBiNjMgbGVnYWN5LXRydW5rCis2NDc0NSAyNDc2MzczZjU1NGQxNTM5MWY4YmIyYmE0ODNkODBmYTIzZDcxYTY3IGxlZ2FjeS10cnVuaworNjQ3NDYgNDViNjcyMzY3YjFmN2Q1MjJjM2NkZjA1ZjUwYTFmNzliNDhhZDM5YSBsZWdhY3ktdHJ1bmsKKzY0NzQ3IDRiYTNkMDdiODcxZjg3MzQzNzQ5M2JhNmUzNGFlODI5YWNhYWI2NTEgcHkzaworNjQ3NDggNGE3MmJlMWQ1YzIxODExYzg1M2Y4ZjBmOTBkNGFmZWQxN2EyM2Y5ZCBweTNrCis2NDc0OSA2YWU3MWY1MjJiMmYwYWJmZTZkMDA5NTJkNmVkMTVmYWZlZTI4YTNkIHB5M2sKKzY0NzUxIGZhMzQwODgzODBmOWJmMzA5Y2Q4MTA3MjY1YmQ2MjBhZGE0ODBjMWQgcHkzaworNjQ3NTIgYTA4ODJiZmFmNTRkOGQ3ZGEyZjliZTMwMTI5ZWEwMWY3NjQyOTk5ZCBweTNrCis2NDc1MyAwNzM4MTE5YzFlZjhmZDk1YTg4MTMyMmY5YzVhZWE1NmUyYjgwOWNkIGxlZ2FjeS10cnVuaworNjQ3NTQgYTMxMmUwM2EwNjMzMjUxZDFmZTNkMjVkN2E4NmY2ZGE2ODcxYTNkNyByZWxlYXNlMjUtbWFpbnQKKzY0NzU2IGMzMTkzYjcxNTZiYjY2NTA0MTM0ZjIxYTBmZjk2ZmYxZDFhODYzMzAgbGVnYWN5LXRydW5rCis2NDc1NyBjM2JjMDUyMzcyNzJlZGVlMDIxODYyY2M3NzRiY2U0NmMxODBkMGE5IGxlZ2FjeS10cnVuaworNjQ3NTggMmI5ZTEzMGUyMWJjNTQ2Mjk3ODhiOTc1YzhjZWFjMjMyZDk0NzdlYyBsZWdhY3ktdHJ1bmsKKzY0NzU5IDZjOWFmMTRkN2I4MTM0NzZlMjE5ODJiOTU2YzA1ZDIxOTE3Yzk3YmYgbGVnYWN5LXRydW5rCis2NDc2MCA3MWQzMWFiNzM1MDczMWZhY2I0ZmM3MDg4MzZjNmU1NjU4ZTkzYjhkIGxlZ2FjeS10cnVuaworNjQ3NjEgM2FlOTI5YzBlZTdhMjg1ZWJiZTU2Yjk3ZDQ0ZmIzMDhmOWJhZTJmZiBsZWdhY3ktdHJ1bmsKKzY0NzYyIDBjNjJhMjc5ZTRkYWZkMjBhMjJlNTIxNGFjMTFmNjZjMjBmYjdjOTggbGVnYWN5LXRydW5rCis2NDc2MyAzOTQ3YmZkZGE3NmQyN2NlMjJhY2JmNWZmNDg3M2FiNGU5N2YxY2QwIHB5M2sKKzY0NzY0IDY0MGFmNTQ0YTg2MWY3MDRhMzYzYWFhMzNlMTI2ODgxNzM2MzQzZGMgcHkzaworNjQ3NjUgMjIzMWE1Y2VlM2Y1NmVjODMxMDA4NzM4YTI5MmVmZjJjNDU5MDhiMyBweTNrCis2NDc2NiA0NjE0YWMzMTJjY2VlOTgwMjZjMmEwMjdiZWZlMTJmNjA5MDRmNDAxIHB5M2sKKzY0NzY3IDMwZmJmOGU0NTU0OWQwMjk2OTQwMTY4NzA3MzNlZTllYzU2ZGQwYzQgbGVnYWN5LXRydW5rCis2NDc2OCBkN2ZkMzJjZTA3YWE2MmFmNWVmZTk3NjkwYmU0NjQ4ODdhNGJjYmE2IGxlZ2FjeS10cnVuaworNjQ3NjkgYTI0NGQ2YjE0NTAxOGU4MGRkYTYzMmY4NzY0MzcwZjVkMWUzZGVmOCBsZWdhY3ktdHJ1bmsKKzY0NzcwIDViMmYwM2JlYmUzYmFmNmJiNThjMTliMjdlNjZkNWEyZjZjNWM1OWEgcHkzaworNjQ3NzEgMDhjNWM4YzExNGIyOWE4ZTgyOTAzYmMxZjczZTY0MTk3NmM2Yzg3NCBsZWdhY3ktdHJ1bmsKKzY0NzcyIDI2Nzk5ODYxZDMxOGNlMDdhNDYzYjdhOTRhYjk2ZDRkMDk1ZDdhZjggbGVnYWN5LXRydW5rCis2NDc3NCA2NWY2OWNiYWY0ZjBkNWIzYjZmODBhYTY5YWY3YzY4YjYwYTU4NmE0IGxlZ2FjeS10cnVuaworNjQ3NzUgYmM5NDNiYmZkYjFlY2IzMzNlZThiYWNiYTJjZTQ0ODM4YjlhZjg5OSBsZWdhY3ktdHJ1bmsKKzY0NzgxIDgzZjRiNzc3ZDk0YzVlMzUyM2U5YmQ2YjUwMzVjOWZjOWYxY2U2MGYgcHkzaworNjQ3ODggZjhiNzQzNjMyNTkzYWE0MTM3YTNkYzBhMGZhZTFjZjZhMDk4YzAyNCBsZWdhY3ktdHJ1bmsKKzY0NzkxIDFiYzU0Mzk0NGRhYTI4ZGQwZGFjZGRkOWEwNmJlZmM0MjcxN2ZiMDEgbGVnYWN5LXRydW5rCis2NDc5MiA0YzAxZDc4ZWM1OWZmZjRmMDFlNjEzNTU2MDVkZDRkMjE4MDcwODRhIHB5M2sKKzY0NzkzIDM2MTg4NTQ0YzU2MTAyNmY2ZjgzZDZlZmFmZDliODRhZjY3ZThiZjYgbGVnYWN5LXRydW5rCis2NDgzNSBiZWQzZGZkOTkyODFlNDFlNzU4YzE0N2M3MDM4MzQ1OTc2NGQ5ZmVjIGxlZ2FjeS10cnVuaworNjQ4MzYgYzMyZTkxNjUwYzE0NGI5MjdkYmMyMjI1Nzk3YjMxOTFiYmFiZTAzMyBsZWdhY3ktdHJ1bmsKKzY0ODQyIDY4Yzc5NjRkMjUzNDdkMjdkMWJhYWM4ZDk3OGQwNzEzY2EyOTYyYjkgbGVnYWN5LXRydW5rCis2NDg0NSA4ZTczODNjYmU1NmU0OWE3ZWRkMjUyNzgyNGZjNmQ0YzE2NTc2MDExIGxlZ2FjeS10cnVuaworNjQ4NDYgYmQ0MzVlOGIyZTI4MDA2ZGVlYzY0MDA3YzI0N2U1YTQ4NzRiOWU1NiBsZWdhY3ktdHJ1bmsKKzY0ODQ5IDA1ZmVkOWJmNDg5ZDc4M2UxYzQ2NjY0ZjNmMWI3OTkwNTEzZmM2YjIgbGVnYWN5LXRydW5rCis2NDg1MyA3Y2ZjMjhhYzA3MTUyMDFjOTM2ZDdhODQyOThlOWE1ZTI2NGE4ZTIzIGxlZ2FjeS10cnVuaworNjQ4NTQgMTI3NDIxMWEzODhmOWFkMWY4NjY2ODhkOTA3ODUzM2I1ZWYwMmU5MiBsZWdhY3ktdHJ1bmsKKzY0ODU1IDMyOGYzM2JhZmZhMzgyN2Q2ODE5MzQ3NmY3ZGJiNGIwMjQ5ZjA5OWMgbGVnYWN5LXRydW5rCis2NDg1NiBmZDA1NGU3M2UyZjIzOWUzMzVmNTRmZGY0NmZiNDQzN2Y5MmUwMTI0IGxlZ2FjeS10cnVuaworNjQ4NTggMWQ0NGUwMDRjOTFmOGEyZTk4NTVhN2I4MTVjYjVhYzU0ZGUzZGEwOCBsZWdhY3ktdHJ1bmsKKzY0ODU5IDc2MzI1YzE5YWY4NDA4NGQzZjQwOGM4ZDBlYjdmYjNhMjY1ZTVhZGYgbGVnYWN5LXRydW5rCis2NDg2MCAxY2Q0ZDYyNDQ0YjYxNDE0MTcyNTNmMmJlYmVlZjY0NjYzZTllODljIHB5M2sKKzY0ODYxIGUxNjM4NGUzZWUyMmE2NjQ2NmVmYjQ5OThkZjZlMTM2YWM4ZGRlNzIgbGVnYWN5LXRydW5rCis2NDg2MiA1NDVlNDQyMzZmMjg2ZDU2ZGIyYjllN2NiZDE1M2ZjYjM3ODRjNmI1IHB5M2sKKzY0ODY1IGMwM2IyMjNjMmI2OTBiNWI1MjAwOGU2YTY3Y2Y2ZmUwZGFkYTFjYTEgbGVnYWN5LXRydW5rCis2NDg2NiAzODFhZTJhZDgxMGI3NjMyN2UzZDkyZjkzMmMzZmE4Yzk1NzViYjAwIGxlZ2FjeS10cnVuaworNjQ4NjcgNTNiNTFjMjEzYjNkYjAxOGM3NzEwNzdmYWUzYjdmMTk2YjY5YzgyMyBweTNrCis2NDg3MSBlMjg2YmQwZjRlMWJkZjYwMTFlYTRjNDlmODZkNzVlMTcyYTRiZWQ1IGxlZ2FjeS10cnVuaworNjQ4ODAgMTNlNTI1ZDk3NGIxNThiZjZkYWE0MmU4ZTNkOTIzNDdhODFhMzg1NiBsZWdhY3ktdHJ1bmsKKzY0ODgxIDRmODA0ZWU3NzJlYjJmY2JjZmYyZDFkMGRiNWIxYzg5NjE0Y2U1MzMgbGVnYWN5LXRydW5rCis2NDg4MiBmYWVhNmU5ZGE2MzlhZjFkMDFkMmE2YjQyMzIxM2VlYzY2ZTkyYWE5IGxlZ2FjeS10cnVuaworNjQ4ODMgYzY1OWI1MzhmN2JhYzU2YTdhN2M5NTA1ZTllZGQ1YWQwYTdkNDUyMCBweTNrCis2NDg4NCBjZDc3NjNiMDU0NDZmMDM4ODQ0ZGMzM2YzMGRhY2RkYjRlOTY4YTQ3IHB5M2sKKzY0ODg1IDhkYTVkMzhkZGNhM2I4ZGNkMTRiZWEwZTZjNDcwZDdlMmY4NmJmYjAgbGVnYWN5LXRydW5rCis2NDg4NyA5MGI2ZDE5ZjA2YzFkOWZmMjhlZjY4MTI4Y2YwOTY0Y2Q1NGJjZTNkIHRsZWUtYXN0LW9wdGltaXplCis2NDg4OCBhNzQ3Y2QwNjZmMzIxMWY5MGRhMGIwMGZhNDQyYjljNTI2ZTg3NDllIGxlZ2FjeS10cnVuaworNjQ4OTYgYWQzMDkxMjI3ODRjZWZmNTZiYzY2OTRlMjdlMGUwMTE3ODI4MjQ0NyBweTNrCis2NDg5NyAzOGQzYTUwZGVmZWM5N2Y0Njc5ZTc5MWJiNGUyZTcxODgyMTQzNDM4IGxlZ2FjeS10cnVuaworNjQ4OTkgZDZkZmZkYjMwYmRkZDhhZGJlODQ1ZmE2NzBkNWUyZGRkZDYxNGExZiBweTNrCis2NDkwMCBiYzI3Yzg5NjdjYWMxZmFmYWI1YjkwZjgzNTJhZGEyYmRiOTAzMWI4IGxlZ2FjeS10cnVuaworNjQ5MDEgMmM5ZDBhN2UzYmM0ZDNkZDNmZjA0NzkwNWQwYzQ5MWZkNzUyYWM0ZCBsZWdhY3ktdHJ1bmsKKzY0OTAzIGJlYjBmZjVhMmEwZjU4YzU2YmJkOTg5NTY2NDVkNmFiYmNlYjM1MWMgbGVnYWN5LXRydW5rCis2NDkwNCA1ZjI0MzFkZTYzZDBhNTE0OGRkMmYzY2M0NjNjM2Y5MjY3NWU5YjY1IHB5M2sKKzY0OTA1IDJlYTgyOWRkNmI1YTFkZTcxNWRkNzQ0MzMyMmZmNDM3MTAzMTk5YjEgcmVsZWFzZTI1LW1haW50Cis2NDkwNiAxOWNkYWFkNzg4YjkwZjBhMzAxMDNmMjNjMjI4MTZkOGY1MmQzMjM1IHB5M2sKKzY0OTA3IDVlZTMzYjlkZGVjYzY5MzRmODdmNjE5YjJiNjA3NmIzZjQ3ZmUxYjQgdGxlZS1hc3Qtb3B0aW1pemUKKzY0OTA4IGE3MGQ5MDVlNTA0MThiMTE5NDJhMDg4YTYyMDMwNzc4YjA3NDEzZTYgdGxlZS1hc3Qtb3B0aW1pemUKKzY0OTA5IGUyMjk2YjUwMDYzZGYzZTdiOWQ0ZmE3MTM5ODdiMmM2M2VlNTE3OTEgdGxlZS1hc3Qtb3B0aW1pemUKKzY0OTEwIGIzNWM4YjE5NDBhZjUyMTAwZTllM2FlOTc5MzNmNmE5YmYzNDRiMjQgbGVnYWN5LXRydW5rCis2NDkxMSBiNWNmMGNiMGM3Y2U1OGI3MzAzNWQwNTBiOWU2YWFiZDI4ZTgxN2U0IHB5M2sKKzY0OTEyIDg2ODY1NjMyODE1Mzk1ODViZGFiNTc4YmQxOWE5YjAyNGVlNTY2MmEgcHkzaworNjQ5MTMgNWFhZmEyM2NiZmZjOTk2OTE2MmNiMzE4YTQ1OWM3MmNiNWZjMjJkYiBsZWdhY3ktdHJ1bmsKKzY0OTE0IDIzMjEwNDBlYzkwYmU2NzRiM2I4MmJiYzI3NTYzZDUyZWM0NTE3MGMgcHkzaworNjQ5MTUgYjkwNzUyYzVlOGMxNTNjNjlhOGU3N2YyN2IwMWFmYjEyMTIwZmFlOSBsZWdhY3ktdHJ1bmsKKzY0OTE2IDhjZmNmNzkzMjcyNDVjYzcwMzIzZjM3NzM5Yjg1OWMzNmRiYTQwMWMgdGxlZS1hc3Qtb3B0aW1pemUKKzY0OTE3IGFiMmNmZDdjM2JlODc2MjdhNmQyOTY5ZGNhZGRiODdmZmZjYWE2ZmYgdGxlZS1hc3Qtb3B0aW1pemUKKzY0OTE4IGU1M2U0YTcxZjU2ZmQxODZiZGU4MzY5ZGE2M2E0M2VlOTBjMzAyZGEgcHkzaworNjQ5MjAgZDYxMWIwMDkxZDVmNjRlZWFmZWM1NjZmYTY0MDE1OWMxNWUxYjdmZiBsZWdhY3ktdHJ1bmsKKzY0OTIxIDVkNjFhZDIxNGI5YzA2OWM4OGIxYTE5OGYxNzI0YTI0NTI3MGUzMTkgcHkzaworNjQ5MjIgMDQxNTUwNzM4MjAxZmRmZTQ0NjFlNzk3ZTc1M2NkZDVlMDhjMjY2ZCBsZWdhY3ktdHJ1bmsKKzY0OTIzIDhkMGE5NzY4MTZmMmY5ZGU3ODAzOGVhZmFlNDBiOGZhYzRkZGYyYTcgcHkzaworNjQ5MjQgMThiZjJhYWE4N2I1ZjI0ZTdiMzE0M2UwMjZkYjQ3NDJmOWYzOWEwYSBweTNrCis2NDkyNSBjNTcxMGYwZGViYWUyNzUxNWE3ZDhhMzA5ZDExZGNlMTQ2NzBlOTBiIHB5M2sKKzY0OTI2IGU1ZTEyZDMxMDU3ZWQ1MDViZWE3NTAyNWM4YzZmZGYwZjMzNTg2MDAgbGVnYWN5LXRydW5rCis2NDkyNyA1YWMyNmIxZjI1ZDkxZWVjNGJhYmE0ODliMjJhZWQwZmMyYmJkYjM0IGxlZ2FjeS10cnVuaworNjQ5MjggNmMxMjM3Y2I1YWFhNjZiZGNlODg1ZDA5MjExYTdkZjY1NmNjZmE3ZSBsZWdhY3ktdHJ1bmsKKzY0OTI5IDhiYWNlMjE0YWU1NGEyMGM5MGJhY2M5NjJhYjhmYjQ5NTZkNWZhNjYgbGVnYWN5LXRydW5rCis2NDkzMCBhZmU4ZDUxNWJmZTJlOWM5OWFiNzJmYWIzNzYxYzE4MTVhZDdmZmJjIGxlZ2FjeS10cnVuaworNjQ5MzEgODFlMzRkN2U0YmEwYTdmYTYzMWJkM2E0MTgwYTA3MzljMjM5YWI5YyBweTNrCis2NDkzMyA2ZmQ4YTFkODQ0OGJjZDE2NmZlMzcwYzQzYzJkYzRjY2ZlNjRhODhiIHB5M2sKKzY0OTM0IGJlM2QzMTA2ZGE2ZjI0NTFhYmVhNmRiMWZjNjdlN2M5OTNlNTQwODMgcHkzaworNjQ5MzUgYWZkZDY0ZWRmMTg5ZTVmOTY3OTM3MjEwNjI5MmQ1ZDQ2MzEzMWJjOCBweTNrCis2NDkzOCA5MmIxY2FmYTMyNjdiNjY4ODAzOWEzY2Q3YjgyNmYzYTU5OTNkNjMzIGxlZ2FjeS10cnVuaworNjQ5MzkgN2EzMGIzYzVjYjU3YTdiYzk2ZWFiNmJjM2I0MzMzNzg0MGRjZWNjZCBsZWdhY3ktdHJ1bmsKKzY0OTQwIGMzYmM0Mzg4ODJjYjgyZjRlMmU5ZGM4NDI4OWMyODNjZGNkZjA0NzkgbGVnYWN5LXRydW5rCis2NDk0MSBhZTM0Yjk1MWIzMzc3NjI2YWI0ZDdlYjE3NTI5MzQ3NTRmOTkyOWFiIGxlZ2FjeS10cnVuaworNjQ5NDQgMmFkNzQ5ZDU3ZTYyYzA1MDU4NDc1MjBmMWY2MWMxNzZmMzE0YTgyZCBsZWdhY3ktdHJ1bmsKKzY0OTQ1IDJjYzRlMWM0NzVmODEzYzE0Y2EwMDEwNzg2ODdjMmFiNWI4ZjJkYmEgbGVnYWN5LXRydW5rCis2NDk0NiBjMGMwNmZmYWVhODMxMDkxM2UwMzRhYzg0ZjI3MmVhZWIxOWQ0ODVlIHB5M2sKKzY0OTQ3IDE5MzY5YzdmNTc5MTRhNWNkNDJiNjAwODNkZGVjNTk3MGIxYTc4MTIgcHkzaworNjQ5NTMgZTdhNmE0NTE1YWIwYjM5YjU1YjI0MWFkZjIxNjg1YWNhNTMzN2E4OSBsZWdhY3ktdHJ1bmsKKzY0OTU0IDk5ODY4MjA3MjNlMGNmYzcyNzJkZTg5OWQ4MGExYjQwMGQ1YzlhOTUgcHkzaworNjQ5NTYgM2Q4NjgyNTRmZjdlZWZkNmUzYTFmYWJjMzcxNzM5N2EzN2M5MTc1NSBweTNrCis2NDk1OCBjMmIxMTRkMGUxY2Y0ZDczN2Q1OTAzNTg3NGIxMzVlZWMzZjJiMTBjIGxlZ2FjeS10cnVuaworNjQ5NTkgNzQxOTU0OTllOTA5M2NhNzVlYzExZjFhNGI0ZGI1M2VhOTIxNDM2YyBweTNrCis2NDk2MCBkNGU0NzMyOTFhMTdjZmIzNjc5ODY5Y2Q0ZDY2MTk0OGU3ZmNhNWFmIHB5M2sKKzY0OTYxIDJmYmUyOGRlY2EyYTI4NGNkODQzMTE1ZTQyZDEyY2I4ZTU3NmNiM2EgbGVnYWN5LXRydW5rCis2NDk2MiBmOWI4MGE4MjBhMjU2OWNhYmQ1ODJmYzk4YTQxZDlkZDk0NDY0ZmQ4IGxlZ2FjeS10cnVuaworNjQ5NjMgN2Q1NzBkZjVlOTBhNDEzYmUxNzg4NzAyNzlhNGVlOGZiYTQ0MmI2MyBweTNrCis2NDk2NSAyZWUwOWFmZWUxMjYwMjUwZmQ3OGQwMjc1Yjc3ZWVkZWE1YmZmM2FiIHB5M2sKKzY0OTY2IGRlZDIxNzA0MzcwN2MyZjVkNDM2NWJkOGQ4NzkyNzk0YTBlNDRjMDQgbGVnYWN5LXRydW5rCis2NDk2NyBmNGU3ZWY0MzI5YTk1N2U5MmFmYjExYTRmMGVmYzgyZGM2ZWU2ZmQ5IHB5M2sKKzY0OTY4IDFmZGJhMDk3OTMyYWY4NmZhNDE2ZTgzM2E3MmQ2Y2JkOTIxNTE4ZjEgbGVnYWN5LXRydW5rCis2NDk2OSBmODcyM2ViMTA1YWNkNWZhZGUwZDZlNmJhZjUzMjI0MzIxM2I3Zjk1IHB5M2sKKzY0OTcwIGUyNmM3MjRkNWUyM2UzNzQ4Zjg2ZWU1NzU0MGM4NjJlNDRiYWNiNDggcHkzaworNjQ5NzEgOTE2ZDMzZWM3YjVhZmVjYzBiNDNkZDNjNWM0NDgzODRmMTI1ODIxOSBsZWdhY3ktdHJ1bmsKKzY0OTcyIDQzMmQyNzgwOGJkMWVlNjM5M2E2OWFmZGI4Yjk2Y2Y1NGQzYzkwNWUgcHkzaworNjQ5NzMgMWYyNGNlYzBmMmUxZDY4ZDI2N2QxNzgxODZlYWYxY2NiMTM4Y2NmNCBsZWdhY3ktdHJ1bmsKKzY0OTc0IDk3YmE5MzZlOGRmODRjYTQ3YjBjOTYxZmYyMWY1ZTYwOGI0YTU3NTAgbGVnYWN5LXRydW5rCis2NDk3NSBkMDQwYTNiNjNkZjQyNTg4NjdhMTZhZTA5YmQzY2QxM2Q5Yzg2ODk2IHB5M2sKKzY0OTc2IDg3NWJlYjRhZDg4OTE1MGE2MDU4MjBmNDNkNDZlNDE1ZDE1NGZkNDcgbGVnYWN5LXRydW5rCis2NDk3NyAzNTAwNGQ5YmZkMTU2MDQwNDUzMWFmZjIyZGI5NTkzNTQ0M2I5NzVmIGxlZ2FjeS10cnVuaworNjQ5NzggZGEyZDM2MzM3OWYyNmU0ZTQ0YmQxNGRhZDg1YzEwMGYyMDQ0ZTRhYSBweTNrCis2NDk3OSBhNDQ4MmExYTMwYzZkOTNjYzMyMzQzYzhiMTI4NmVkODI3NWVlN2I2IGxlZ2FjeS10cnVuaworNjQ5ODAgMWUwMDkxNzA4ODc1YTc4NTEyZjQxMzczNTQzODI4MTBlYThjOWUzMCBweTNrCis2NDk4MSA5Y2IyOGFkNWE0MWMwMDEyNjkwZTU5NzE1OTRiMjViZTU2MGMxMWExIGxlZ2FjeS10cnVuaworNjQ5ODIgMDFmYmUzZmM4ODNlMGFlYjFlZGUzMTQzODJiYTkzYjQzNjQ2NzY5MSBsZWdhY3ktdHJ1bmsKKzY0OTgzIDUxYzBkM2EwNzFhZDAwNzgwNmZjN2Q1ZGZkZmNhMjJhYzNhOGMxODggbGVnYWN5LXRydW5rCis2NDk4NCAzZmE0NGU1ZTRlMmIxZjJjZDZkOGQ0MjU4MGQ0NWY3NDllMzg5ZTBiIGxlZ2FjeS10cnVuaworNjQ5ODUgYzY2MmU4Y2ZmZGRmNjFkNWI2ZTRjNWRhYTY5OTJlOTQ0YmYwZmI3NSBweTNrCis2NDk4NiBlZmY5ZDExYzQ3NjI2YWJjZTA3MjY3YWIyMmNlZmU4ZTU3MzQ2ZTRlIGxlZ2FjeS10cnVuaworNjQ5ODcgM2EzYTVhNDkyMTQ3MWMzNDgwMTQxZmRkYjQ1N2Y3MWNhNWIyYjQxMSBweTNrCis2NDk4OCAzYmIxZjhiYmEzMzY3NmEzNTk3N2E5MzY0ZGMzY2ZjOTE5NjJhMjZhIHJlbGVhc2UyNS1tYWludAorNjQ5ODkgYmJkMGM5MDAyN2JmYjc3YjQ2OGNlZWYzMTVmYjFmNjJiMjU3YjdjNiBweTNrCis2NDk5MCBiZDQ4NDEwNjljNjg0ODU4YjI3MmQyMjQ4YWE1NWYzZTYzZmMxMDQ0IHB5M2sKKzY0OTkxIGQxNGQwYjE1ZTE4ZTcwZjdlNzQ4Njk1MzgwNWZlNDI4NTA5YjlkNzMgcHkzaworNjQ5OTIgMzhkNzE5YmVkZGJkZDg2MzY1MWM5MGMxZDI2MWYxYTY0Mzg2NjNkMyBweTNrCis2NDk5MyBlYTIzZTdjNTYxNTQ1NmNjYzU5ZDNiM2Q3ZTAxZTZmNzIxZjJlZGI4IHB5M2sKKzY0OTk0IGZjZWZmOTU0ZjM4MDRjNjJiMWNlNjU1ZTI0ZGM5MTM0YzIzMWRjZGIgcHkzaworNjQ5OTUgOGU5ZTY1MzgzYWZiNjUwMmUzOWRlNzRkMTUwNzUwZTliMDVlYTEyOCBweTNrCis2NDk5NiA2NWU5YzAxMDJlZjljNGIwOTQ3YjkwZWQyMTU4MzhhZjFiNzIzYTk1IHB5M2sKKzY0OTk3IDkyNmIyYTE5NjA4MzE1Mjc4NTA4YjEwNWYwNzdjZWU0YTBiZTFlOWQgcHkzaworNjQ5OTggOWViZDNmMzg1NTc1OWQ1OGFlZTRlYjhiOTdjZWYzN2JkYWI4MjM0ZSBweTNrCis2NDk5OSBhY2E1YjJlNmE2NmYzMjRiNzQ1NDZlYjgwZjU0ZjIxOGM3MzU1MTBkIHB5M2sKKzY1MDAwIGY1OGUzYTBlYTk5YTE3Yjc2YzVlMDg2ZGY4OTU4OGNkNTM4MzFjZTIgcHkzaworNjUwMDQgOWFhMDc4MTYxNWZiMWM3YTc2MGFkYjZkZDVkNTI2ODFkYTAyZGI4NCBsZWdhY3ktdHJ1bmsKKzY1MDA1IGMwYWIyYmFmYjI2NDQwYjU5Zjk4NDkwNWM2NDFhMDc2NDc0YTQ2NTUgbGVnYWN5LXRydW5rCis2NTAwNiBjZWEwNjZkZWRmZGZiMjA4ODI1OTZlYTMzOTMyNzY3MWIyYWM1NmUxIHB5M2sKKzY1MDA3IGNhMGQ2MjBjZDYzYjJhNWZiZGFlZDQxYmU4NjY3NzU3ZmQxZmRjYWYgcmVsZWFzZTI1LW1haW50Cis2NTAwOCAyYmI4NjZkMjgyYmFkNTVkZmU2NWU3MTM5YjEyOTMzYmY4MmE5YmY3IHB5M2sKKzY1MDA5IDE3NzMwMmZlYWIzNjg5NTVlZWQwMzI1ZWU5NTE4ZGFmNWFhODliNDcgcHkzaworNjUwMTAgZGUwYmY2MGYxMjQ1YWM3M2U0NGJiMjVlMmM1OGVhZTZlNWQwODJhZSBweTNrCis2NTAxMSA0ZjZlZGVhNGI1NTg1NjExYzE1NGY1YTIwZmIwZDI3OTdjZDI3NzVjIHB5M2sKKzY1MDEyIGE1MTkxZDdlYTQwNTQwYzMxNjFlNWFjZDQ5NzAyYTcwMTM0YjhjODYgbGVnYWN5LXRydW5rCis2NTAxNiA1ZjZkYzJmODZhODg0NDE3NWIyYjliM2FkYzM3N2Y5MWI3ZWFiZTZhIGxlZ2FjeS10cnVuaworNjUwMTkgZWMzOGZiYmI4Y2NlYmUxZjI2NzA5MDdlNjg5MjY4MTU4ZjhhZmJmMSBsZWdhY3ktdHJ1bmsKKzY1MDIwIGI2NDVhYTJiY2E5Y2M3MTIxOWJjMjMzNDhjYjEwNDBiNGU2YzFhMTggbGVnYWN5LXRydW5rCis2NTAyMSAyZTkwZmVmMjI2ZWE2YzIwMmRhNzAxZGI2YTIwZWRhZDcwOGNmNmE0IHB5M2sKKzY1MDIzIGEwOTYzZTQ2ZjQzZTVlNzdlOTIzNTViNTU0ODdmMWY0NzZkNWUzNjYgbGVnYWN5LXRydW5rCis2NTAyNCA2NTRmZjU3NTU0MzZhZDUzYTZkYTFjMGQxMmIxNGI1NTc0YmIyYzNjIHB5M2sKKzY1MDI2IDY1NTIyN2M5ODhhNzhkNmQyMjgzYzE0YzhmOGMxYWI3NjJhNzk4OWMgbGVnYWN5LXRydW5rCis2NTAyNyBhY2FjYTExZDgwZGJjODRkMzEwOWFkODZiZDkxMDM0NTc2MDI3NjY2IHB5M2sKKzY1MDMwIDU5YWM1YWVmM2IyZDFmZjNjM2E2Yzc2Yzk0NDU5MmRlMTViMmU1NmMgcHkzaworNjUwMzEgYjJmM2RlMzU4YWY0MDgwMzI0ZDdhZjg0NWFiODIxNWVmNmI5ODAxNiBweTNrCis2NTAzMiAwOWJlYjk2YmEyMGQ0N2M2MzQxNzI3ZTFmZWM2ZmQwYzEwNmQ0Yzg5IGxlZ2FjeS10cnVuaworNjUwMzMgZWM4NWI1OGFkMmJhNGEwODBhNjAxYmIxMWI4NDc2Yjk2OThlNTJlYyBsZWdhY3ktdHJ1bmsKKzY1MDM0IDZjOGJhYzkxM2FhYmZjYzA4YzVmZDQ3ZjVjZTRlNGE0ZDZkY2I4ZTcgcHkzaworNjUwMzUgZWJlOTMyMzI5MjQ2OTk3ZDUzODEyMGEzOGFlZjdhNTZlZTJjMzgzNiBsZWdhY3ktdHJ1bmsKKzY1MDM2IDYwNGZlYmQyMDRjYjJkM2U2M2YyOWYxNGI5MWU3ZDY5NGY5MmFhNGYgcHkzaworNjUwMzcgZWM5N2I3YWFkMjMxYmVjY2Y3YTI3ODNlNGI0MDI4ODk4Y2FhOTM2NiBsZWdhY3ktdHJ1bmsKKzY1MDM4IGVmZTcwNmFhYjMyYjkxYWUyODNhZWYxYWVmY2I2OTczNDI2ZjJkY2EgbGVnYWN5LXRydW5rCis2NTAzOSAwMTgwNmNkZWRkZGUzNjA4YmYwNDE0OTQwYmVlODE5OWRjMTUyYTFmIGxlZ2FjeS10cnVuaworNjUwNDAgMDkxZGY0YzA4ZDk5YTRkZTUzNTdjOTk5OGY4NGU1NjkwOWE4YmI5OSBsZWdhY3ktdHJ1bmsKKzY1MDQxIGZiZjE2NWE3ODk1MzczY2FkMzBjYzYwZjFmMzY1ZjJiMjM3ZDVmOWIgbGVnYWN5LXRydW5rCis2NTA0MiA3ZTAzMGI2MjgyOTRkYjIyOWI4ZTA3MjQxNGI1NWM3MTU3YjcxMWQxIGxlZ2FjeS10cnVuaworNjUwNDMgYjk4MjhiMmE1MWMwZmYzNTFmMWNiNmYzNTIyZTc1Yzg0ZmU2MTMzNiBweTNrCis2NTA0NCA5MjFjNGE4MDk5MjM4MzE3ZDVkZjhmM2UyNzZmYmI5NjZhYzU4YzE5IGxlZ2FjeS10cnVuaworNjUwNDUgZDg3Y2Q1ZTczNjVhYTgyYWM3NzE3NTM0M2ZmODk3YzJlOTkxN2IxYSBweTNrCis2NTA0NiA3NjhiY2ZmNGMwZGFlZGE2NDdkYmQyNzQ0MTBkOGRmNzAxM2ZlY2Y1IGxlZ2FjeS10cnVuaworNjUwNDcgZjJjNzI3OTI1OGMxMmRjNDY2OTZjNDNjNWQ5MzQ0YWYzMTFkYjAwZCBweTNrCis2NTA0OCBkMzFkNjFmNDY0OThkMTQyMTczZmJiMjUxMjZiYWRkY2Y0ZTNlMzhiIGxlZ2FjeS10cnVuaworNjUwNTUgMzBmZGQwYzNiNmRlMWI4MjM1ZTc1YWI1ODAwOTA2ZjljN2M0NDNmOSBsZWdhY3ktdHJ1bmsKKzY1MDU2IDljNTZjZDk3ZmY0ZGVlMzA5NDY4YzM1MjMwZGJiOTg1ODVhNWY0NmQgcHkzaworNjUwNTcgMjdiY2E3ZmFjMzYyZDcxNTkwZGQ2M2JlOGVhNjE1MjU0ZjZjOTE3OCBsZWdhY3ktdHJ1bmsKKzY1MDU4IGM1OTExYTdiNWZhMDBiYzI3NWY2Y2Q3ZmI2ZDcyOWE4YjRlNWVkN2EgcHkzaworNjUwNTkgNDUyMzNkNGMxOGQyM2IwNjBhZWRlM2JiNWYyMzZmM2ViYWVjMmZiNSBsZWdhY3ktdHJ1bmsKKzY1MDYxIGEyOWM4NmNlNzY2ODcxMTEzYmUyNzZjNDI4NmIyYTFlZmY0MjE1ODEgbGVnYWN5LXRydW5rCis2NTA2MiAxYmU1YjZiZTQzY2I2OTg1NDJjODM5MjE5Njc1MjQ4ZGI4MmFjNTlmIHB5M2sKKzY1MDYzIDc5Zjg0YmMyYjE0OTIwODVmN2ZkNmMzZDdlNmFiNjU1ZTlhNGI1NmEgcHkzaworNjUwNjQgZGJjMmI3YWQwYzIyMTdjMDgwZWRjMDFjNDc5NzYxYWNkZTRmYmIyOSBweTNrCis2NTA2NSBlZWZiOTgzNzk2NDRkOWJmODRjNWUyZmViM2EyNTlhMTVhMzViNTBkIHB5M2sKKzY1MDY2IDc4YTI5YTA1MjA3OTgyZDI2ZTczYmEwMDZiM2U0NDlhYWZjYjc3NjUgcHkzaworNjUwNjcgOTkxY2FkZDQ3ZDk3MzJmMzExMjExZWViZGU5MGZhOGU5ZTdkOWEzNCBweTNrCis2NTA2OCAyMDY4NzEwYjMyYzM1MTNjMjQzNjJiMDhiNTE1OTMxNjM5NDY0YWM1IHB5M2sKKzY1MDY5IGYyODNlM2I1ZjkxN2FiMjZiNTM4ZjRlOGEwNDRmYjA3Yjc4NjlhZGEgbGVnYWN5LXRydW5rCis2NTA3MCA1NjAzODhjZGExNjNkOTNkZDhjODRmOWIwOGEyMmZlYjQ1YmRhMmUxIGxlZ2FjeS10cnVuaworNjUwNzEgN2M2ZWM3YTgwMTZhZGZhNzM0ZmI5NzIyY2UxMGRiYTY2YzlhODFjMSBweTNrCis2NTA3MiBiYTM5YjQwZWJmMmQ5MzM5Y2FiYzdkNWYwNDNhMGFmYjA3OTc3NDQ3IHB5M2sKKzY1MDczIDgzZDBkNGNiN2E2NjFjOTdjZjU5ODQ4YmM2NjE3NmY5ODhlODkyYTcgcHkzaworNjUwNzQgM2Q1MjY1MjViM2U4MWQ5NGFhNGYyZTRjNjcwODFhNTY4MzQ5OGY1ZSBweTNrCis2NTA3NSA1YzMzMDA5OTk0YjQ2MzU4ZDZlZjk4MzUzNzRkOGNlMzhkMjViM2ZiIGxlZ2FjeS10cnVuaworNjUwNzcgNmRkNTIwZTFiYzBkYjM2MWZhYTFjZDYzZWFlNDE2Yzk0Y2YzZWFkZiBsZWdhY3ktdHJ1bmsKKzY1MDc4IDRkZWFkYzhmOWUwYTM5M2VhNjFhYWRmOGQ5ZmQ5NGUzZTZiMjAxODYgcHkzaworNjUwNzkgMDMxYjVhZDU0N2U0MjdiNDM3Nzk0YjgxODFmMjkyNDkwNjJiMDgzZiBweTNrCis2NTA4MCAxNmVjNGJiMTRhNjhlYTQyOGFjZjA5ZWJmMGM5Mjk4MWRhMjY0NmYzIHB5M2sKKzY1MDgxIGE5NjgwMjliNjNkYjEyMWYwMDdhN2RjOTBhZjg4YWM1ODJkZDQ3ZTEgcHkzaworNjUwODIgODFlYzgyNjNiZDZlMjVjOWE4ODU1Y2QwY2U5YWU4ODE3MzI5NzJiZSBsZWdhY3ktdHJ1bmsKKzY1MDgzIDU4ZDRiZjMxNzI4ZmY4YjQyOTYxMWIzZjRiMGU0OTIxYjA4YTFhYzYgbGVnYWN5LXRydW5rCis2NTA4NSAxOWU3NzlkMDIwNTM1M2ZjOGNlMTkwMzU3MzRlMzc4MjhkMmQ0M2Q2IGxlZ2FjeS10cnVuaworNjUwODYgYjc0ZTlkMDliMTgwNjkzZDAwY2M1YjMzNDZjMTAxNGQxNDZjMTU3MiBweTNrCis2NTA5MCA3OGVlNmJhMjA5OWVlN2QyYzZkOGI1YjIyM2ZiOWUxMTliMzdkODVhIHRsZWUtYXN0LW9wdGltaXplCis2NTA5MSA2NDRjYTQ0ODc4ODFlODc5ZTAxMGVmNTNmZjk5NDY4ZjlhODM0MDVjIGxlZ2FjeS10cnVuaworNjUwOTIgMGVhZTliMjVhMmVkMGJkZTA1OTUxYjlhMDBlNWM5ODI3MmFkMjhkNiBsZWdhY3ktdHJ1bmsKKzY1MDkzIDhlYzE4MzBkNTcxOTk3M2U3MDczYTgxYjg5OGIzYTExMDM3YzFhMTAgbGVnYWN5LXRydW5rCis2NTA5NCAxYWNmZTQyOGU4ZjE5Yjk3OTBmNDU3ZDgyZmNkYjRjMmU0ZWMzYWY2IGxlZ2FjeS10cnVuaworNjUwOTUgY2VjNzA0Yjc5YmRmMWY1NTAxMzY5ZjE2ZDlmZDc1Mjc3MDA1OTU3YiBsZWdhY3ktdHJ1bmsKKzY1MDk2IDI5MjUxMzVjYTA1MGE2NDQ3NWRkZjMyYWIwYzM3NTRlNzk0ZTYwNjcgcHkzaworNjUwOTcgNGVjNWEwZWM2MzFhMDU1M2M1NTY4ZDM0OGJiODNhYjlkMmNlMWI1MyBsZWdhY3ktdHJ1bmsKKzY1MDk4IGU4NWQ1NjkwYzI5NmVmNmYzMGY1ZTk3MzBhYTYxYjBmZGE3Y2EwMmUgbGVnYWN5LXRydW5rCis2NTA5OSBhYzFjZDQ2YmY3ZDU3ZTliNGQ3NGYyY2YwYjViMzExMzVjZGUxYzZkIGxlZ2FjeS10cnVuaworNjUxMDIgMWIyMGFmYTQ4ZDU4YWU1MTI1NDkzZmMyMzM5ZTI5OGY3MGZjMmU0ZCBsZWdhY3ktdHJ1bmsKKzY1MTAzIGM0MzIzMDdlYzAwZGQ2ZDY4ODFhYjAxMWQ0MTRhOTFlNDg2MTExZDcgcHkzaworNjUxMDQgOTU3NmJiNzFhMDFiNDhjMGNkNDA5MzBkZTY5NzhlNjhjNTE5ZTMxMyBsZWdhY3ktdHJ1bmsKKzY1MTA2IGU3ZDY0ZTgyOTAzNTIyYjMzNjcwM2ZkZjFhOGMxYzNlZDJhNmUyZDggcHkzaworNjUxMDggOWJkYjc0MDRlZmU3ODg5ZGI4YmU3NDNlYjgyM2MzZjY2ZTdkZDE3MSBweTNrCis2NTEwOSA0OTcyNmRjYTE2ZDgxMWMzMThkYzMzZmE1MmVjYTI3YTU0NTg1NzhlIGxlZ2FjeS10cnVuaworNjUxMTEgYjkzMWEwMjI2NDY2NTZiZjE5Y2Q1NDgyZjIwZTEyZDQ4ZTY1NGNiMCBsZWdhY3ktdHJ1bmsKKzY1MTEyIGY5MDQwZDEwN2Q2NjQ3ZGVmNzlkZmUzNDkyOGU0MTM4ZTA0ODBmNjcgbGVnYWN5LXRydW5rCis2NTExMyAyOTc5NTEzMDY0MDA1MjFiN2Q3ODQwYjJjMWIwMDc1MGIwZTVkZmJmIHB5M2sKKzY1MTE1IDZlNzcxNmEzYmRlYzEwNjBiOGViNTNhYzZhNzdjMzkyZjA1NmY2MjEgcHkzaworNjUxMTggZGVjZTE3ZWRiZWQwOGFiNjljOTIyMWY4NjhiZDBkNDU1NmNmNjc5ZCBweTNrCis2NTEyMCBmZWZmZWMyNmM1NmNiOTZkYmNlYzMyZTdkOTZlNWJjOTEwZjIxMjliIHB5M2sKKzY1MTI1IDQwZGI0NWJmYzBmMmNkYmNjZGVmYTY1ZmE2NTU5MzhkMTdiNzdiY2UgbGVnYWN5LXRydW5rCis2NTEyNiA0OGU4M2U2NjkzNWE5YTZjMzM4YTU3OWE5NWYwMTJmNTQxYTc5NTU3IHB5M2sKKzY1MTI3IGE1ZmZlMzRjNzJjNDg5OWRjMGNhZTc4MzlkMmZmYzZjZmEyMzg3ODUgbGVnYWN5LXRydW5rCis2NTEyOCBjYWNhMzM4MzJhMWE1MTI3YzIyN2ZhYmY5OWQ5ODM1ODFmNWY5ZWUxIGxlZ2FjeS10cnVuaworNjUxMjkgZTZiYTZmNDE0NjliZjMwYmVkNGJlY2JiZTI1MmZhZjY0ZWJmOTBlYiBweTNrCis2NTEzMCA2YzVjZGRiMjY3ZmUyNGQ1OWQ1YjMxZWFlMGQwYjJjMmQ1OTRkZGE0IHB5M2sKKzY1MTMxIDdhZDZlNGNkNzcxMzY2ZDk0NTU4Mzc3YWUwODZiYzAwYzZlMTE1MTUgbGVnYWN5LXRydW5rCis2NTEzMiA0MGIwZTMzMThhOGJiYWRkMTc0NDdhNjg0ZGM1MjkwODQwMTk0YTBjIHB5M2sKKzY1MTMzIDMzYzZhZjY5YWUwZjE3NTMxZDJhZWE4MzQ3Njg4NzQ2ZDBmYTUyNzAgbGVnYWN5LXRydW5rCis2NTEzNCBlOTA3ZGE4MjUxNjkxOTI5ZThmZTU1ZjhjMmJkM2YyNDI5MTk5NTBkIGxlZ2FjeS10cnVuaworNjUxMzUgNDliZTg4MTJkNDMzMGFlZGU1MDBkMDhhOTYyMmE4YWJiMzVmYzZkYiBsZWdhY3ktdHJ1bmsKKzY1MTM2IDk2ZWFmYWI0ODkwMTJlZGYyZDk4MTNiZmVkMTAwYmVhNDZhYzQyNjggbGVnYWN5LXRydW5rCis2NTEzOSA3ZjU0MjJkMDQwOWY5NDQ0N2U3ZTE0ZTZkMTRiZmZjODMzYWI2NjgxIGxlZ2FjeS10cnVuaworNjUxNDAgZGZjMzc1ODNmMjA0NzY3ZWNhZTY5ZTQ2NWNlZTE2M2VjMDk5ZmI3OSBweTNrCis2NTE0MSA5NDhlNWIzMjMzMjkxYmUxNTI1NmNmMTA2ODliNTY3ZjM3NTE2ZjBmIGxlZ2FjeS10cnVuaworNjUxNDIgNDA3ZWIwMDQwMDQxNDFjYThlZjYyYWM3ODdiOTE3NDM3MjAxM2ZiYyBweTNrCis2NTE0NCA4OWY1Y2ZlYzA1NzNjNWVhMzMxMmI3OTljNTAwZmRmMzExYzhiZWFhIHB5M2sKKzY1MTQ3IDdjMTQ3YTc2YTBiMjcyNDY3NWQ0OTA0MDJiYjQ0ZjlmNmY2MGU1YjAgbGVnYWN5LXRydW5rCis2NTE0OCA4Y2RiMTgxYWE5YWZjNjc1ODA4ZTkyY2Y2NjZhZjExMTNmMjJlM2FmIHB5M2sKKzY1MTQ5IDcwYmU2OWM5M2UzM2FhNTNlOGVjMjVjMWQwYWYwMjg4MTBmOGZmNzggbGVnYWN5LXRydW5rCis2NTE1MCA0M2M2OTM0NTE0ZDdjYzM0MmU2M2EyNDI4MDJmOTJlN2M3Y2I2YjBkIGxlZ2FjeS10cnVuaworNjUxNTEgODk4OTIxM2YzODZiMjZiZTQ0ZGJiYzhlNGNkMmIxYWNhY2VlNDRmZSBsZWdhY3ktdHJ1bmsKKzY1MTUyIDY0NGZhN2EyNDBjOGI3OTYxZDZlN2FiMjRjYzJiMDkzM2FhMGUxYjggbGVnYWN5LXRydW5rCis2NTE1MyBiYjI2MzY4ODI1MDNkZDI2ZGYyZWQ3NGY5MDRmZWJiYjJhNmYwZWYzIHB5M2sKKzY1MTU1IGQyN2UyODAyMDcwOTJkODUwNmIyNTgzNzRiYTY3Y2UzOGI2Yjg4ZjQgbGVnYWN5LXRydW5rCis2NTE1NiAxZDRjYjI2ZWM4OWZhNjlkYWM3MTEzOTMxMzhiYTVlNWZkOTY2MzU3IHRsZWUtYXN0LW9wdGltaXplCis2NTE1NyA1NzhhNGIwYTUyMmQyNjBmZDEwMDg1NTM0YTI2NDM5MjgwMmM5NTgwIHRsZWUtYXN0LW9wdGltaXplCis2NTE1OCAxZWQ2OTRhN2FiNjAxNDczOTQxNDA5YzllMDYzY2UzYThmZmFkYmIzIGxlZ2FjeS10cnVuaworNjUxNTkgYTk3ZmQ1YTNiMDkwYjY5YzY5Y2NlNDFlMmQxYWZhNjE1NjhhMjViYyBsZWdhY3ktdHJ1bmsKKzY1MTYwIDYwNTM1MjUwYTYyYzZhNDBmNmRkYzUzNDdjYTNmMWVmZDU3N2VmNzEgcHkzaworNjUxNjEgNjI4MjNlY2E4ODFiZTRhODdlYzYwZGEwZWJlMmJiOTMwMDEzZjk3NyBweTNrCis2NTE2MiA3Y2NjZTJhNzM5NGEwMjgyYmU0MGFiYjRlNWNkZjEwOThkNWUwOWIzIHB5M2sKKzY1MTYzIDM2NDEwNjc5NmIyMTA0NzJlYTI5ZGY2ODI0NTIwMTlmNDdiZTUyMWYgbGVnYWN5LXRydW5rCis2NTE2NCBlY2M2YmUzODBjNWJjOGE0ODIwY2QyNDMzNDkyM2YwMWM4NjRhODQ0IHB5M2sKKzY1MTY4IDA2OGMwMGJmNWEyNGFmZmYzNjk1MTQwYjI2M2EwMmQ5NWU2Y2FlOTUgbGVnYWN5LXRydW5rCis2NTE3MSAwYTc0MWMxM2ZjODFjNmVjMjhlZjliZmJkZmZlMGJmYzBiNTZhNTkzIHB5M2sKKzY1MTcyIDNmNmQ0M2Q1NzU1Y2I5YmFmMzQwOGE0NDMwODQ3MmEyZDU5ODMyMWIgbGVnYWN5LXRydW5rCis2NTE3MyA5MjFiNjc1OWNiZGU3MDlkYjY2MmZjZTVjMWJkMDBhOTM0MDFjMzlkIHB5M2sKKzY1MTc0IGE5ZGZhMDg1MWIwNzM4YzQxM2Y2MzVlY2MyNTY3NzYwZmE2MmU3MTMgbGVnYWN5LXRydW5rCis2NTE3NSA5NzViYmRjY2M1NWVkNTgyOTUwYmUwYTU1NjQwY2Q0NTEzYmY0Y2M4IHB5M2sKKzY1MTc2IDgzMzFiYzRlODI3OGM4M2JmYzE5Y2Y4YzZlZGUzZDQ4ZDJhNjE2YzcgbGVnYWN5LXRydW5rCis2NTE3NyBiODM2YmYyNWYxNzZhMjlmM2I2MWI5Yjc4N2NiMWRhNmQwMzQyYzE2IGxlZ2FjeS10cnVuaworNjUxNzggYmEyNzY3YmQ0NjIwNTI5OTkwNjA3NmQzY2UzZTAzOTlhMDNjZTI0MSBsZWdhY3ktdHJ1bmsKKzY1MTc5IGQ4Nzk4ZDVlYzRiOTNhNTdlYWRhN2U2Y2U2MGY5M2JkNzliNWQ4ODAgcHkzaworNjUxODIgNWQzODMzZTZhYWUzMGVhMWE5ZjRiYmE5MTgzYmVlM2MzMzE0MjQ4NiBsZWdhY3ktdHJ1bmsKKzY1MTgzIDNiNWMyNjEzZWQwNWRjOTkwMWUzNGQ5NDQ4MDA4MzRjY2UwOWM1YjcgbGVnYWN5LXRydW5rCis2NTE4NCA5NmE5ZWJmZWUyY2QyYzc2NDVjZmY5Y2E5ZGY4MzNhNGE0NTQxZDAxIGxlZ2FjeS10cnVuaworNjUxODUgMWEyZjhkZGU4MWVjYzQyOGZlNGZjNmM0NjJiNzEzZWFlNjg0NmRkZSBweTNrCis2NTE4NiA3MzliYjA3MjhlZmU1Mjk5YmIzYmE3MWM4MDBkYzgwNGIxNzY5MjkwIHB5M2sKKzY1MTg3IGVhNTNlZThhODMzMzIxZDhlNzBmYzViZGUxMjc3OWJhMDA1NThkNmUgbGVnYWN5LXRydW5rCis2NTE4OCA5MGZiYmJjZTc1N2FmODcxNTFhMTdkNzdmMmNjYWRkZjNiOTNhY2Y0IGxlZ2FjeS10cnVuaworNjUxODkgOTU2MWFhZWRmYjczOGYwOWZiYWM4YTJhMjU3NzljMWM1MzYzMWY3NSBsZWdhY3ktdHJ1bmsKKzY1MTkwIGRkMzE0OTBkM2ViNmRlODIwNWQ4NmRlMDA2Y2FhZDAwNWMxZjkwZmMgbGVnYWN5LXRydW5rCis2NTE5MSA4MjFlNzNkN2JjYzU0YTRiODVjYjhlZGQzOWU3MzAxNWJlYWYwYjYzIHB5M2sKKzY1MTkyIDY3OWUzYzI3MmVjMjYyZTJkYmYxZDgzOTc3OTlhMzFmOTIyZWMyMzcgbGVnYWN5LXRydW5rCis2NTE5MyAxMGY0MWFkYzBkMjRlNjAyMjNjNTFhMWRjOWRiZGQ2YjZjMjliMzhlIGxlZ2FjeS10cnVuaworNjUxOTQgNzYxZGNhYWFhMDllMjEwNTk5MGNkZjhiOGY2ZDJkY2YyYmE0OWZkMiBsZWdhY3ktdHJ1bmsKKzY1MTk1IDZjYThhZjY0NzQ3YjUwOGM2NWM4MDkxNDE1MzlhNjliNzZiZmE5YjEgcHkzaworNjUxOTYgMjBiNGI4M2E1NGFlZmYxMjAxNDVhZGQ1ZTlkOTkxOWM3MWRjMjNjOCB0bGVlLWFzdC1vcHRpbWl6ZQorNjUxOTcgZmNiZDlmNGYwOTVjNGYwMGUwODQ4NWFhMmNkMWU4ZjE3MGE3YTVlNCBweTNrCis2NTE5OCAwNDQxZDMwZDY3MmJlMDY1N2RkMmU1ZjJmODRmY2QzNjNmYWYzNTAyIGxlZ2FjeS10cnVuaworNjUxOTkgODM3NWIzZjY0NzBmNjBiOTQxZDFmYjBiYzBjZDc0M2I3YWM0ZjJkNiBsZWdhY3ktdHJ1bmsKKzY1MjAxIDBkMzdhYjAwZjZkNmM0NmQ0OWI0MDZkNjhlNmY4ZWVmMGU4NDE0MjggcHkzaworNjUyMDIgYmRkYzFhMTcyNDdlM2Y5NTc2NmExNDMxNTdhMDg1Y2Q4M2RjZmNiZiBweTNrCis2NTIwMyBhYjIyMTc3ZWI2ZGM0OTU2NjNhMTRkNTY0NWE3MThmNmE4YTZmOTM4IHB5M2sKKzY1MjA0IDQ1Zjg4ZDdiZjA1NzZjMzRkYzRhM2RlNjQ4YmFjOGY2NjRhYmJjZTkgcHkzaworNjUyMDUgMTc5YTdmNDE2MjQwYWY1ZjYyZjdjZjlkZTljZmNkNjA2OWY3NjU1NyBsZWdhY3ktdHJ1bmsKKzY1MjA2IGI1MWNkNWQzNzk1Y2ZiNTE4Y2U1NTAxZTZkMWI2N2FiY2RhMWVlZDIgcHkzaworNjUyMDcgM2VmYTIwOTE2YTkwNDNmOWNkYjJjNGZkMjhiMTQ1ZmUxYzA5MDI2NyBweTNrCis2NTIwOCA4ODdlZTZiZDkyODRmYjliNmVhZTQxZmJjMjNlYWI0NzMyOWVlN2VmIHB5M2sKKzY1MjA5IGI2ODcwNDQ1N2VmZWYxMGYyNzc3NTZkMGJiN2RhYTY5MjQ5NDk2YmYgbGVnYWN5LXRydW5rCis2NTIxMCA3NTlhNzMyMzU5MWViZDk0MGQzNzhmODEyN2RhZTdmMjU0NWIxNTZlIGxlZ2FjeS10cnVuaworNjUyMTEgMzg1Mzg1NmY3YzUwNTVkN2E0MzgzN2YwMmQ1MzRlNjM3ZDc1YWZhMCBsZWdhY3ktdHJ1bmsKKzY1MjEyIDA4ZGRjYWQ4NTEzNDhlYjRmNzExYTQ0OWFjMjBkZjQ2YTEwNGNlMjIgbGVnYWN5LXRydW5rCis2NTIxMyAxYjFlMWY4NzJlMDk4MzFkYTkyM2E5Y2JkZWE3ODhmNGY3ZmQ0N2U3IGxlZ2FjeS10cnVuaworNjUyMTQgMDdiODk2NTMxNDVlMDMyYThiNDg0MDI3NmEyZDBiNjU3NGY1OGM3ZCBsZWdhY3ktdHJ1bmsKKzY1MjE1IDQyMDNiN2YwODdjMTAyMzY0YmE5ODMxZDRkMTVmNGU1MjI2ODkxZTcgbGVnYWN5LXRydW5rCis2NTIxNiA3NGZiMGRmMjlhNDg3NmEzNzU1MmIyOTk1N2ViNjg4ODQ1ZGI4MmM3IGxlZ2FjeS10cnVuaworNjUyMTcgMjkwMDc4ZTliNmEyMDJlZGM1MjNiNTViOWY0ODE0NjhkNWE3ZWI4YSBsZWdhY3ktdHJ1bmsKKzY1MjE4IDFjNzhhYTdlYTMzNjBmMzkyYzRmNmY2ODdkZmRjYzc1N2RlYTQ4M2YgcHkzaworNjUyMjAgMWNlN2U1YzVhNzYxN2U5NjZiYjc0MTExYzg5MTRlNGNhZjM3NjRhZiBweTNrCis2NTIyMSBkOWQ0OWY2NzM4OWY2Mzk5ZGIwODg0MTc2NWRmMTI4NTU3ODY2OTRlIHB5M2sKKzY1MjI1IDEwMWJiMThjMTBkNTc1ZGNjMzBhMjI0NDFmMzk0MzVhNTUzZmY4NTEgbGVnYWN5LXRydW5rCis2NTIyNiA3ODE2MzBlMjU1NDBhMzU2MjhjNmE2NmI5NmYyN2U4MzZhNWY0M2NlIGxlZ2FjeS10cnVuaworNjUyMjcgMzVhNDYyZmY5ODczMTczZmZiNzQyYzJmNmYyYjJhMDI0YTkyZTRhMCBsZWdhY3ktdHJ1bmsKKzY1MjI4IGEwMjhjMGIyYWNlZTc4OTYwMTJjZDE4NWUzZmIxYWQ5MDFhOTYyMTMgcHkzaworNjUyMzAgODYyYzBlYWIxYzUwOWI1MGUwYWZjZDEyMThkYjQ2YmI0MThkZTFhNCBweTNrCis2NTIzMSA4ZmYyNWRiMDEwNzgyOTIxYjI5NjdkMjIyYTJlOTJmNDUzNzg2NjQxIHB5M2sKKzY1MjMzIDE4MmZjYTAyNWNhMDRkNTVjYzRhY2Y3ZjliMTgzMzgzYTYwZDAxODUgbGVnYWN5LXRydW5rCis2NTIzNCBiNzFkNzZiZjQ1MDY2YmQ4NjkyNzFiYTIyMzUwZmY1NDQ1NjVkNGY0IHJlbGVhc2UyNS1tYWludAorNjUyMzUgOTcyZjQ4OWFlMzU2Zjc1ZmRiYTA2NDMxODFkMzI4OTIwODdjMDgyOSBsZWdhY3ktdHJ1bmsKKzY1MjM2IDU1NjQwMTUxZTBmY2MwZWQ4NDRiNTdjOTg0MzAyNWRlNjcwYTg0M2UgcHkzaworNjUyMzcgYmUwN2MzMDgzY2VhZTI5MGI5MDM4YWFiOTFhZjU2MGQ2YzY5NzY4ZiBsZWdhY3ktdHJ1bmsKKzY1MjM4IDc0ZWVmODViNGIyY2RkZTc2NGZhZDE2MGQ0MjRkMTBhYjRiZDQyYTcgcHkzaworNjUyMzkgMzAwZGY2YjFlNGIwZDc3ZjQyMzQ0YTZjOGY3NGVjMDM0ZDY3NTYyYiBsZWdhY3ktdHJ1bmsKKzY1MjQwIDlhNmY4ZmIxNzVlMDU3YjEyMWY4MjZlYWZhNGY3MjdmZjQyNmIwNDkgbGVnYWN5LXRydW5rCis2NTI0MSAzMDQ4NWJjMTcyNjgwNjE1YTFlYzk3YTIwMjI0YWVmMjRlZmM0ZWZhIGxlZ2FjeS10cnVuaworNjUyNDIgNDk3ZDIyNDBlMWYwZTk2YzkxNGU1NjQ0ZTM5NGU2YmJkMDdlMDU1NiBsZWdhY3ktdHJ1bmsKKzY1MjQzIGQzZDU4NjAxOWFmZmYwZTc1ODk4ZjgwMjUxOWJmMjYzZDY2Zjk5Y2UgcHkzaworNjUyNDQgYjIxMTdiMTgwNDljNDJhMGM2NzgyMzdkYjBmNTExZmEwN2JkYWJkOSBsZWdhY3ktdHJ1bmsKKzY1MjQ1IDYxM2IyNDAxNGFmYmExY2E3OTU1YWJjYjgwZWU1MmYwMGU0ZWI0YzggbGVnYWN5LXRydW5rCis2NTI0NiA3NjdjYzg5ZTNmZGVjNTkzNmM0NmM5YjcwOTJiNjM1M2IwNjk2YmYwIGxlZ2FjeS10cnVuaworNjUyNDcgNGE0NjIxYTY4N2E3ODdlYjNmODNiNjg3ZTYwMDQxODlmMzNhZDg1NyBsZWdhY3ktdHJ1bmsKKzY1MjQ4IDJkMGUwNDAwMWU4MWMzNmI2NGU5MDczNjRiYTk3ZDVmZmFlYWIwZWEgbGVnYWN5LXRydW5rCis2NTI1MCAyZmI1NWZmMDYyNzVlNjVjNzA4MjNmNTk1ZTA0ZjI5MjRlMjc4NzY1IHB5M2sKKzY1MjUxIDdiMDg0NDgxMzM4OTNiZTliMzI0YWIxMGFjZGQzYTY4OTE2ZTA0ZTEgcHkzaworNjUyNTIgNzE1MzJhZDdmM2VkZjYwOGQ5YTFlMTQ0OTNhODY3NjA2NDRkN2IxYyBweTNrCis2NTI1MyAwYzEyYTM3ZDVlNWQzZDQ2NDkzY2VhYzkxZjcyMjdjYTNkZmZmMzVmIGxlZ2FjeS10cnVuaworNjUyNTQgYjhkNGRiYjI5MzhhNTlhMWY5MzBjNmMxNDJiYWYzNDQyNzQ5OTQ2ZSBweTNrCis2NTI1NSA5ZjllNWZlNjNlYzJjZDc0NTkyYmE3YmRkM2M2ZDMwNTg4YzdiYTIwIGxlZ2FjeS10cnVuaworNjUyNTYgMzExMWI2NTQzZGQ5ZThhZThlNDBmNmJiMzVkMTExMWNiY2U4ZDE1OCBsZWdhY3ktdHJ1bmsKKzY1MjU3IGYzYmYyZTliYjg2OGM2ZTUwY2YwOWI2MjU4MmVhMmFlZTYwNzQwOTUgbGVnYWN5LXRydW5rCis2NTI1OCBiMDFlMjBkMzczMDQyNTg2MjY5ZmUzNWE5OGFjZTJjMzE1ZGM2MzYzIGxlZ2FjeS10cnVuaworNjUyNTkgZTNkYTg2OWRlOThlYWIxNWU0ZWYwY2QyYjc2ZjJhYTE1ZDNjMWY2MiBsZWdhY3ktdHJ1bmsKKzY1MjYxIDJkYTQyZGNiYjhjZWJiMDRlZGM1MDJkNDIyNjcxNWY2M2QwZWI5NjAgcmVsZWFzZTI1LW1haW50Cis2NTI2MiBjYzg0ZWU2NjY3YjcwZTU4N2Q1MWU3ZTRhMjI1YmEwNzczNjdkYWVjIHJlbGVhc2UyNC1tYWludAorNjUyNjMgOTVkZjExOGY0MmM2ZjIxYjAwN2FhNWU4MTAxYmFhOTNiN2I3NmI4NiBsZWdhY3ktdHJ1bmsKKzY1MjY0IDE1MWMxY2Q5NGE0MDJiYzBlNGUzZjNlMGZhODMzNDE1MTdlNDRhYmUgcHkzaworNjUyNjYgOGFmYzRlMmM0YzAyMzZkZDU5ZmY2NjVmNmVkNWE0Y2MwM2I5NTllYiBsZWdhY3ktdHJ1bmsKKzY1MjY3IDQwYTU3M2YwMWZjNGEyZDE3MWZmYTE1YmI1YTgxZThkN2U2YWI0OTcgcHkzaworNjUyODQgY2NiYzg3NzRkODJiNTVjNDFmYzcwMTIyNGE2OGNjMTFiNjZmYjcxNCBsZWdhY3ktdHJ1bmsKKzY1Mjg1IDc5MWE2MzFhMmM3YzgyODE5Mjc4MTFhZmY5NjYyZTY4ZTdjYmEwOTcgcHkzaworNjUyODYgMjYyZDJlYThhYjUwZGE1YmY0YjI2MjYyNTNiOTRkZWVkMTc0YzRhNyBweTNrCis2NTI4NyAzYTI2N2ZlNzM4M2M0ODExMjY2MDcyOGRlZTMxODc5ZDg5NDI1ZWU1IHB5M2sKKzY1Mjg5IDUwMjI4ZDJiMzJjMTQxMTRkZjJhMmFlYmU5ZWFmZDI0Y2VkNDA3ZjMgbGVnYWN5LXRydW5rCis2NTI5MiAyMWVhYzkxMzgyNDk1YmJiZTAwODQ4MTE3NDNkOTk5MmM2YWQ2NmUwIGxlZ2FjeS10cnVuaworNjUyOTMgMGM3ZmFiMGIwNWMwMzYzNzZiM2U0Yzc5MTg1Y2Y3ZDdlMThjNTAxZiBsZWdhY3ktdHJ1bmsKKzY1Mjk2IDY4OWI1ZThhZTY5ZDRiMTUzNWExZjZhODRhOGU0M2QzYzk3NjA0MzAgbGVnYWN5LXRydW5rCis2NTI5NyAwMDgzNDI1MTllODY1Njc3N2MzMjM5M2NmM2U4MWI4YzcwOGQ4OWQ1IHB5M2sKKzY1Mjk4IGZkMzA4ZjAzOGFmYmE3OTdiOWNiNTBhZTRhYzkwZjQwZDA1MTYzYmUgcHkzaworNjUyOTkgYjQwZTEzYmNiOWVhNWU4NjUzOGNmNzQ4YjVlZGZiZDNmZGJkNzExOCBsZWdhY3ktdHJ1bmsKKzY1MzA3IDQwZTk0OWE2ODM0NDY1YTQxY2RmNzY0NjhkZGJhOTljZjY0NjY5M2EgbGVnYWN5LXRydW5rCis2NTMwOCA4ZDA1ZGRhNzM1Zjg3OWM5OTQwZGE3ZTUzZWM4NjVkMDJmODViNGRmIGxlZ2FjeS10cnVuaworNjUzMDkgYjM1Y2U5NTRhMzkyMTBhYjk2NDRmOWFkNjEwOWYyZjVkMjYxNzgyNyBsZWdhY3ktdHJ1bmsKKzY1MzEwIDhmMzYyMGY1ZDY4YWFiZDU5OTBkMDlmYzk3OTBlNjMxOWIxYjBhMGMgbGVnYWN5LXRydW5rCis2NTMxMSA5MGMyNWIzNmUwYWQ2OTU3NWNhYzg4ODQ2MGNjNWJkM2U4YzJiOWUzIHB5M2sKKzY1MzEyIDgzYzdhOGZhZWI3OGU2OWI3ZDVlZjY4NDE0MmIyMTU4MWVjNTUyYjMgbGVnYWN5LXRydW5rCis2NTMxMyAxMmUzYzM4ZDMxNmUzOGRjMTNjMTY3ZmYyMGJjN2NmMzgyMTQwYzUzIHB5M2sKKzY1MzE0IDdmODIyYjVkMzY3MDE0N2Y5YzMxNGZjZjg2MzBhMWVmMTI2NDA3ZWYgdGxlZS1hc3Qtb3B0aW1pemUKKzY1MzE1IDY3ZDE3N2FhYjhhN2M1ZGIwM2EyYWUwNTVlODMyMGM5OTEwOWIzMDEgbGVnYWN5LXRydW5rCis2NTMxOCA4YTEzMzY2M2ViZGUwOWY2OWZiNTNkMmY0YzM4MDU2OWEwMjgxMDFlIGxlZ2FjeS10cnVuaworNjUzMTkgOTE1NDU1M2Y4NzZiYzdjMjU2MDc1MzMzMDEwZTQwODYwOTJmNzdkMyBweTNrCis2NTMyMCAwZmJkZGMwNGFlZTE1OWE0ZmNlMjE2MmJkZGIyMTVjYTY2MjE2YmQ4IGxlZ2FjeS10cnVuaworNjUzMjEgNWRiNDMyODRlYTdhYWMyNmExNDdjNzM4ZTVhMDgwOTg3MzYwMDAyMyBsZWdhY3ktdHJ1bmsKKzY1MzIyIDFlYzM4YjcwN2NkNmIxNDllNTc5ODdmMmNkODNjMzhiYTgyZDRkNjQgcHkzaworNjUzMjMgNmYyMzJmY2ZiNjU3NmM1NWQ0ZmFkNzU0YzU4ZjA5YTg3YmI3MDZmZiBsZWdhY3ktdHJ1bmsKKzY1MzI0IGJlNzUyMWFmODQ1YTBlODRjNmM1MDg5NDE3ZTViMDM2ZmM1MjljNTggcHkzaworNjUzMjYgMzQ3NjAzZjc5NGQxMWI1NGIwOTkzM2IzZDdlOTc2ZDM2ZDZjMTMxZCBsZWdhY3ktdHJ1bmsKKzY1MzI3IDFkZTcxOGEzMTAwNGUxOTY3ZTVjZDUxMzJjZDRlZDZiZDY1NjRkZTEgcHkzaworNjUzMjggNGNlYmI1Yzg0ZDdjZmJhODZmODFmNjA0NzY4NGI4ZTlmNmU4MDRjYyBsZWdhY3ktdHJ1bmsKKzY1MzI5IDAzNzgxOGNhZmMzOTM1OTk2MDZlYTBmOWMxNWVmNTk2MDk5ZjQ4YTUgcHkzaworNjUzMzAgNGMxMWZjM2IzM2EyMzNmYjRjMjZmZjMyM2YyNmM3ZTVjZDkxOTQ1YSBweTNrCis2NTMzMSAzNWIxYTIwNDcwZGIwNzljMDQ1N2M2YTRhYjdkOTczNjcyZTY5ZTEwIHB5M2sKKzY1MzMyIGIzOTAxYzU2NjBmNzFkMGE3MmMwZjE0NTU3MDdiMTRiMDI0NTkxNGIgcHkzaworNjUzMzMgMTg3Mzg4YzExNTA1MGM5OTEwNDA4MTc1ZDJmNWYyMjRhOTE2MGJiMyByZWxlYXNlMjQtbWFpbnQKKzY1MzM0IDBhYWZkMWFlNTEyMDhhMWI2Y2MzMTIwYmVhYWIzYWRkZjU3YzQyM2IgcmVsZWFzZTI1LW1haW50Cis2NTMzNSBjNGQyNGZjOGJhOGEyZWM2NWIyYTQzZDg4YTNiNTJkNTAwZGM0MjIzIGxlZ2FjeS10cnVuaworNjUzMzcgMTNiMmUxMWYzY2Y1YmQ3NDA2ZGFmYTQ4ZGYxZmNiYzM3ZDBkMGQyMiBweTNrCis2NTMzOCBmZWM5ODVjYmY1M2ZhYjA1ODM3OTk1MzcwMDEyNDY0ZDk3MDY5ODQ3IHB5M2sKKzY1MzM5IDQ1NTAxNDRiMTU2MDY2ZmZmYzhmYTZkZTg4NDgwYzMxNTU0OTZmMDAgbGVnYWN5LXRydW5rCis2NTM0MCA1NDI4ZjdmYTE3MWNmMWJhOTYyYzhkOWI2NGQyMjRmM2FiOTM2MTk3IGxlZ2FjeS10cnVuaworNjUzNDEgZGU3NWU3MjgwYjdhYTYxOGNjYTVkYmY3MWJlYzJlMmY5ODA1ZjdiZiBweTNrCis2NTM0MiBhOTRmMTM2YjUyODM4MmMzOTQyODM4NTEzMjNjODU3OGMzMDAyOTBkIGxlZ2FjeS10cnVuaworNjUzNDMgNjMxY2Q5YWU1YzhlMjJlMjNiN2FlMmZmNmVlNTJmYWU1NGQyZjE5NiBweTNrCis2NTM0NCA0ZmVjYzliOTlkOTg1MjJkZjJkZjU2Mzk4N2Y3NzE1YzkyYWZjOWM1IHB5M2sKKzY1MzQ1IGE0NzZlZjVlZWJhZGJlNDI5NzZlMzNlZDg4ZDVhNTU4ZTA2ZDljYTMgcHkzaworNjUzNDYgYzU5ZTkwZDhkMWM3MDgyMWNlMTIyNGU1ZjI1YTc1YWMyNGRiNDliNiBsZWdhY3ktdHJ1bmsKKzY1MzQ3IDNjMTU1ZDc4MTNjYzE3NWNiOTE3OWExYjJmNGJkMTQzNzllZDJkODQgcHkzaworNjUzNDkgYzJiNWEwYWIzMDcwNjM4NmI5ZjNjOTNhODNkZTk0NzRlZTQ2MjZiNiBsZWdhY3ktdHJ1bmsKKzY1MzUwIDcwZDQwZjlhZDFkN2FjZDI3ODRlMzY3NTZjNGI4NjlkYjdjYzMzODEgcHkzaworNjUzNTEgMGQyZDI2ZmZlMjBlYjI0OGFjMzZlMDI4MDE0OWI0OTMxMGY3Zjc5YyBsZWdhY3ktdHJ1bmsKKzY1MzUyIDE0ODAyMGI1YzUzMTJlMzk4MDNhMDFmYmExNjdjNDU0OGRmNGQzMGMgcHkzaworNjUzNTMgMTE0MDc3NGY2OWE1NzJjOTVhNDIwMWIxY2E5NDM4ZmI5ZGM0NWY4YyBsZWdhY3ktdHJ1bmsKKzY1MzU0IGYxZmM3ZDkzNTA5ZDNmZWQyMTkwMTFhZjU0OWE4NGEwZmU1YzNiNWIgcHkzaworNjUzNTUgNWQyY2Q5NmExOTZiZmQyMmE0MzgzYzA1NjhjYWMyYzMxYjc3MTg1MyBsZWdhY3ktdHJ1bmsKKzY1MzY1IGYxMjFhOTYzYWI2OTRkYmJmMzc1OGNiZGFmZjQ2YWIyZWMzMTA0OTggcHkzaworNjUzNjYgZWZmNGM5NGMwMmNkMWUxMmY4OGIwNTFiNDVkNzM4MGQwNjgzOWYyZiBsZWdhY3ktdHJ1bmsKKzY1MzY3IGMwZGYxYzY0NzdiYjkyNzdhZjM0OTI5ODgyNmEyOTI1YTZhNDA5OTUgcHkzaworNjUzNjggOTViYzBjZjMxMjAzY2Y4NzcyYjczN2QyMDFlY2Y4ZDE4NDExYjM5MyBsZWdhY3ktdHJ1bmsKKzY1MzY5IGNjMzcxNTcwZTE0MTMyM2ZhMDQ3ZDM4ZTcyZTI3NjUwNDIxNmM2ZTEgcHkzaworNjUzNzAgMTM4MTc3NDJhNzgxMGJhMTQzNmQ5YzgwM2M3NjQzZTY4Yzg1OWExMSBweTNrCis2NTM3MSAxOWI2YzYzNWY1YzFkMzMwMGU2OTEzODM1N2E5OGZhYjM2YWY4ZjQwIHB5M2sKKzY1Mzc2IDE1MjJmM2Q1YmU2ZTdhOTQ2OTczNDNhNTEyZWY4YjNjNzQwMTNkY2IgbGVnYWN5LXRydW5rCis2NTM3OCBiOGE4ZDExMzA3NmZiOTQ1ODRmOTE5YTk1MWM1ZDMzZTc0OGJhMTA2IGxlZ2FjeS10cnVuaworNjUzNzkgNGI3MmM3ZjYzMDc3NDVmNzg4NmJjZjNlZmNhOTlkODg3NzMyMjI5OCBsZWdhY3ktdHJ1bmsKKzY1MzgxIDEzZWJiNGI1ZDg5YWE4OWEwNjYxODZjYmQxNGM3N2RkNTUxN2Q5MmYgcHkzaworNjUzODIgNDViY2Q5NmU1NmQxZDQyMWZhZTc2YzZjNGEzMjdjN2Q4NjhlNDAyYyBsZWdhY3ktdHJ1bmsKKzY1MzgzIDBhZmYzYmYwYTM0MjZmMTI0NDE5Yjg0MDdjYWM4ODY0ZmJhMWI1MzQgbGVnYWN5LXRydW5rCis2NTM4NCA2OTIyZjg0YTcxNThmOWZjOTE1OGM0ZDc0ZDJmNGIyYTdkZjcxMzNkIHB5M2sKKzY1Mzg1IDZiN2M2MTAyN2ViMDRmYTM3MThlODdkYjY3OWNhZTU5ZmRlZDEzNzggbGVnYWN5LXRydW5rCis2NTM4NiA1Mjc5ZDc5NjEwOTM3YTViNGM0NzUwMTE5NzgxM2JlOTQzZjdkM2JiIGxlZ2FjeS10cnVuaworNjUzODcgNGIxYmE1MGQzYmRmN2FkZTI1NWJjNGRmNzkyNTUyNzkyOTExYTIzNCBsZWdhY3ktdHJ1bmsKKzY1Mzg4IDE2NjBiMzM1MzgyMTAyZGM2Y2IzOTA1MTcyMTUwYWE0ZTU3Mjc4MDMgcHkzaworNjUzODkgZjhkMmEzMTg1ZDlhYWZmM2MyZmExMmI4Nzk3ZGIyNGM3MjliYjRjNyBweTNrCis2NTM5MCA0ZjQ2ZjNmNzIzMWJmZjg5YzM5ODI5ZDhkN2NkNTkzNDM5OTZlMmQ3IHB5M2sKKzY1MzkxIGQyMWMwYTJiNmIxMWE0ZTlmNjliNDMyZDhjNWJiZWZkOTgzMTNlZTQgbGVnYWN5LXRydW5rCis2NTM5MiAwMDE4YjE4ZjVmNDY0MGE3Mjg3NTVlNzU3NzU1M2U5ZmUxNDAwZWViIHB5M2sKKzY1MzkzIGYwYmQzN2VhNjk0MDVjYjQzNWVlMWNhMWJiZWVlMzNkY2ExNjRlZWIgbGVnYWN5LXRydW5rCis2NTM5NCBiODk0NWQ4ZjAwZWEyNTMwM2Y4N2FkYWI0ZGJmM2NmNDY0YWU3MDEzIHB5M2sKKzY1Mzk1IGE3YmY1MDNjODU3ZTljN2VmMjNhZmQ4YjcxYzUxZDE3ZGM2MjdjNDUgbGVnYWN5LXRydW5rCis2NTM5NiBlODc5NmI1NWY4MWIwOGQwNWYyZjcyYzYxNGY4MWJhMjVmNDhjMDM3IHB5M2sKKzY1Mzk5IGJhODRjMWUzZGQ2MGNlZmIzY2E3NjFmMmIxYjFjODc3MGQ2NzgyYTggbGVnYWN5LXRydW5rCis2NTQwMCA0YTRjMjBhMjE2N2JiMTgzZTU3YTg0ZTYxYzU5MWM1MDljOTliODZkIHJlbGVhc2UyNS1tYWludAorNjU0MDEgZDU4N2FhNWU4MjRkNjUxOWJjZGE1YjNhY2M0ZjA5ZmRiMGI1YWVmMyBweTNrCis2NTQwMiBmZWRkYWYyMWMyYTQ5ZjdkZjk0Nzc1ZTZmZWNlZGNmMzdkMGE3N2QzIGxlZ2FjeS10cnVuaworNjU0MDMgNzQ3NWIwZmNjNWZmMmJjM2RlMzBlNTM3N2M3MjVmMGJhYjU0ZTI3MyBweTNrCis2NTQwNCA2NTQ0MjU0NjE3M2VhNDI4MjAyNDE3ZTg0ZGM2NjliMWU0MmNkY2QwIHB5M2sKKzY1NDEyIDc2M2ZmMWJhOTFjN2YyZDNlNTliMzMxOWRkOGIwN2M5NzE3YzcyOGYgcHkzaworNjU0MjAgYmY1MDA4NWZiY2QzMmQxYzQyZDQzZTZlYzM3NjkwNjMxZTA0MGFjMyBweTNrCis2NTQyMiA5NzYwN2ZjYjdiMjYxOTYxZWI2NzkzNjFjYzU3MTk5NTVlY2YwYTRhIGxlZ2FjeS10cnVuaworNjU0MjMgY2M0M2I5OThmNWI1MTgzY2IxYjEyMjg0YjVjOGFkYTVjMTM0NTcxZCBsZWdhY3ktdHJ1bmsKKzY1NDI0IDQzN2RkYmJjZGQyOTRiNzM1ZTY5MGE0NTAyZjQzY2NhMjBmNDkwYzggcHkzaworNjU0MjUgNGU2YTBhZTFhOGU3YWFlOTY4NDc0NGY2YTJiMjQxMDA5MDNhYWNkMCBsZWdhY3ktdHJ1bmsKKzY1NDI2IDc0Y2M5MzJhZDhkYjY4NmI3YjBkMDhhN2EzZWI5YjFlNjM0ZDIyN2EgcHkzaworNjU0MzAgOGYzMmIxMzI2OWI0YjFhZTk0N2RmZTgwNTZlOWZiZTAyZDhkOGY5ZCBsZWdhY3ktdHJ1bmsKKzY1NDMxIGJkNTFjZjcxNzYyNDViMGVlYmY2ZGRkNjgxOGY2ZjUzYmIwM2Q5NDcgcHkzaworNjU0MzIgZTAwN2FmNzlmNjdjNmE1MTcwYTViMjZmOTkxNjg2ZDlmNWNlMzliZSBweTNrCis2NTQzMyAxZGI0ODM5NDgxMDY3ODkzNjM4MWNhY2FmMzJhMzM4ZTE2ZDQzNWEyIHB5M2sKKzY1NDM3IDNlNDRkZWJjMmJjOTBhNzZiMWY2MTgzZGZlOTI0MWZjMTk1MThiMmQgbGVnYWN5LXRydW5rCis2NTQzOCBkZjViMzk0ZDFlMjQzOTI5NWE2MjA5MGU2OTIzNjU5NGY1NmUxMjAxIGxlZ2FjeS10cnVuaworNjU0MzkgZTkzNDk1NmRkY2UzNzJjMWUyMWQ3NTdjYzQwZGQwNjBiMDE4M2QxOCBweTNrCis2NTQ0MCA0ZTQ1ZDBjZmFmNzFiNTJiZDEzOTFjNjI5MGRlMTNjZmZmYmFiMzI2IGxlZ2FjeS10cnVuaworNjU0NDEgOGM0OWEzZTkwZjQwYTg0ZmI4MzQ5M2RjMzVkMTk4NmUyOWI2YTI2OCBweTNrCis2NTQ0MiAxODAzZGU1YWUwZGMzNzBkZjIzNzIyNzZkNWI4ZmZjNDZhMDc3ZTQ2IGxlZ2FjeS10cnVuaworNjU0NDMgMzNkYWFlNjMzOWVlM2EyNzBhMjkyZGI2N2M1MTY3MjNjMDMzYTFlZiBweTNrCis2NTQ0NCA5ODZjYmRhZjE1NGZjMjczYjM3MmJlOTg2YzQ5MWE0NjdmNDEzNjQxIGxlZ2FjeS10cnVuaworNjU0NDUgNWYzZWY2NDAwYTk2NzYyZTYwYzI3ZWQ1MWEwNTVlNmQ3OTExZGM3ZiBweTNrCis2NTQ0NiAyNTEyODI1ODAwNDFhMjgwNjg3Mjg3ZDg0YTk5YmZmYzNmMjNmYjM0IGxlZ2FjeS10cnVuaworNjU0NDcgMGM2YjZiZDg1YWNhZDM3MzcxYjk5ZmFhM2M4MWZjZWQ5Nzg0ODc1ZiBweTNrCis2NTQ0OSAxZjIyZGU5M2RhZjhlMzNjZmQwMGM3YWUwZTUzMzA1N2FmNzhlOGY4IGxlZ2FjeS10cnVuaworNjU0NTAgODJkNGQ2ZGVlMDM0NzVlM2U2YWZhYTRiMDM4N2I4MzVjZGY2MWVkZSBweTNrCis2NTQ1MSBkNGRiNWRlZDc2Y2UxZmMxOGM0ZGNjMTQ2NjE2NGQ4YTQ0OTAzMWY1IGxlZ2FjeS10cnVuaworNjU0NTIgZDdiYWU3YmQzOWQ2ZjIzMDYyMTUwMGQ3MmQ0ZTg2YTc5YjM0ODA0NSBweTNrCis2NTQ1MyAyZThjZGVlMzRkOTc3ZWVhYjhhMzlhM2E4MjliNTBhMmYwZDI4YmUzIGxlZ2FjeS10cnVuaworNjU0NTQgZTM2MjBiNzNhN2QxNGY3MzNhYzUyYzQ2MTk4Yjc1MjI4M2Q1ZWY0YSBweTNrCis2NTQ1NSAzNWU3ZGM5NzdhNjNjMzY0NDczZjJjNDFhODY3ZjgwY2UyMWRkNzg2IGxlZ2FjeS10cnVuaworNjU0NTYgODk3MmNlNTYyNGI0ZDkxNjA3Y2FmZWIyMDIzNTI3OWRmMDk2OTdjNyBweTNrCis2NTQ1NyBjNzdhYzhiZGQzZmViNGM3Y2RhOTQ2ZTQ5MTM2MzU3YzBhNDFmMjQxIGxlZ2FjeS10cnVuaworNjU0NTggNDMyMmFmMWI2ZDNkNmJkNWVlYjAxNjZlNmJkNTgzZGQxN2ZjZTYwNCBweTNrCis2NTQ1OSAyODhjYTFjNzI4ODgwOTRiNTkzMmJmYjI3NzM3NDg0OTc1YmYxNWE5IGxlZ2FjeS10cnVuaworNjU0NjAgZGM4NTBkYTA0YmQ1NDcyMTZlMzE0NzNmNjg1MDFmYWUyMTJjNjJlZiByZWxlYXNlMjUtbWFpbnQKKzY1NDYxIDE1MDhjZWEyYzZiNTZlNTgwMjIyZjgyOWZiNTY0MzA4MzQyMTQwMzYgcmVsZWFzZTI1LW1haW50Cis2NTQ2MiA1NmIzYjJjY2ZkNjg4ZDhhNTRlNTEyOThkMGFjYmE1ZjYwMmVhNTRhIGxlZ2FjeS10cnVuaworNjU0NjMgNTVlMzI1ODA5NGYwMzJkM2E2MDBiNWI0Y2I3MGRiMDIwM2I4OThlNyBweTNrCis2NTQ2NCBmZGYzYjZmNDk5ZGFlMWVhOTQwMTk5NDkwMTllMzYxYTcwODJhMDJiIGxlZ2FjeS10cnVuaworNjU0NjUgZGFkYTk0YTUzMjlmMmY4MjhkM2U3OTZjMzg5YzFjYjU1MjU2NGMyNCBweTNrCis2NTQ2NiAxYzI0YTA5YWNiOTdjOTQwOGY5NzY2YzcwOGU4NWZjMmYxMTg0MjhkIHJlbGVhc2UyNS1tYWludAorNjU0NjcgMjFmMTQ2Mzg3YTYzY2ZiNWM5Mjg4ZDdiYjVjOGIzMjJiZGJlMGNlYyBsZWdhY3ktdHJ1bmsKKzY1NDY4IDlkY2IxZDI4ZWZiYjhmMzlmM2E1NGQyNDYxMTAyOGE3NWY2OTIwN2MgcHkzaworNjU0NjkgOGJkNTY1MDE5M2M2MDg0ZTMzNjg1MDBhZjQ0MWM4NzgzMjM3OWE3YyBsZWdhY3ktdHJ1bmsKKzY1NDcyIDQwYmUzN2U2OTE1OGY2ZmNmNmY5MjhiZjg4NDNlNWQyN2FkM2Q5NTcgbGVnYWN5LXRydW5rCis2NTQ3NSA2NDFlZGVlNGZjYjE0ZjFkNjNjZTNiZTNjZGJmMjFmMTZjMTEyYWQ3IHJlbGVhc2UyNS1tYWludAorNjU0NzYgYzIzNWJhNzBlNTk0YjE0MDY3OGI1NWQ0OTM4ZmI0MThhYzQzNTg5YSBsZWdhY3ktdHJ1bmsKKzY1NDc3IGRmMGFjMDZjZGRjYzNlOGI1YzEwYTZkZGMwYWY5YWMyMTIxYjI4ZmQgbGVnYWN5LXRydW5rCis2NTQ3OCA1MTM0MDZhMzdlMzg1MzZmZWZmNWRlNDM5NjY0NjRmNDdjMWYzNDE3IHB5M2sKKzY1NDc5IGJjZjQwYzgxODkxZTEwZjlkMGUzODE1NmFhN2M3ZjgyZmVkZmJlNmMgcHkzaworNjU0ODAgYWI0YzljMzg0ZDMxODgwMjM3NGYwOTAxZGEyMTQ1Y2E0N2NmY2RhZCBsZWdhY3ktdHJ1bmsKKzY1NDgxIGE4YTgyMzJjYjU0MTlhMmJiZGQ1ODUzMDRhMzcwMzFmYmI2NzE4OWIgbGVnYWN5LXRydW5rCis2NTQ4MiA1OWY0Zjk5NDczMGZhNzlhODE5Yjg3MjA4NTVmZDNjNzRhYzBiYWUxIHB5M2sKKzY1NDg3IDQ5NDExZDdkYzI1NzQ3M2IwOGRkNjA0Mzc1ZTg4OGNkZjQyMDExYjUgbGVnYWN5LXRydW5rCis2NTQ4OCBlYTgzZmVlNTc0MjIzMGI5NjY0MGFjZjBiYjBiOGVhMTdkZmU3YWQzIGxlZ2FjeS10cnVuaworNjU0OTAgNmM4OGRlM2M0ZDRkZDg1MmE2YzRhNTcyMDYwODk0MmRlMGU1MzU3ZCBweTNrCis2NTUwMiAyMTc0NTU2M2U2ODBlMGQ0Y2ZmMWRhM2M5ZjVjMzM1NjE5OWI5MjczIGxlZ2FjeS10cnVuaworNjU1MDYgNmJjM2NmZTA5OGNlNDU3OGZiMGU3MjJkMjQ5ZGU5YmU3NjNiMDY2MiBsZWdhY3ktdHJ1bmsKKzY1NTA3IDUxZjVjOGU4ODVjYThjNDk4M2YxM2IwNDU5YzM4YWU4MTQzNjQyOTAgcHkzaworNjU1MDggOTNiY2M5MjAxZWUwN2Y3MzcyNGQ1NzBiZDFjMzYzNjg5ZjJkMTg5NSBsZWdhY3ktdHJ1bmsKKzY1NTA5IGZhY2Q4MTk3MjUyM2I5NjM4ZTljMzg5M2MyZGYwNzc4NjMyNzVjN2MgcHkzaworNjU1MTAgNGQ4NDI3ZDI1Zjg0ZTFjYzk3ZDYwMzBlNGI2NWJhOWI0NmVlNjY3MSBsZWdhY3ktdHJ1bmsKKzY1NTExIGNmZjgyYjk5MGEyMjk4YTI5MmNlNTAxMDc4M2U2NDI4NzQ4MzQyNDcgcHkzaworNjU1MTIgNDdjZDQ1MTY4NjNlZWE3YmJkZDY0YWZmZmQ2ZTQyYzdhY2Q3ODIzZSBsZWdhY3ktdHJ1bmsKKzY1NTEzIGU5YjZlNDQ4ODg3MWU5ZDJkMWNjNTRhYzA0MmU1ZmQwNjliNDJlYTggcHkzaworNjU1MTQgOTc5ZjBhODk5MDNmMjkzNTgyYjNlY2VlOGM2M2YyNzIyYjFiNzFmOCBsZWdhY3ktdHJ1bmsKKzY1NTE1IDU3YjhjNzc4ZGEwNzM0YzMxOTBkYWJmODMyMjA5MTQzMDM3ODdlNGQgcHkzaworNjU1MTYgZjc4NDZhNzFlMzhhMjExMDg2Mjg2MzYxNDMwMjhiOGYyNjNjMjRhMyBsZWdhY3ktdHJ1bmsKKzY1NTE3IDNkMDgzZTY5MjY1ZWYwY2MyNzUwYTJmNzc3MTI5YWNkYzY1ZTMxNzEgcHkzaworNjU1MTggNmM2YTAzMDU2N2RkMDYzMTJhYmU0NmRjZmNjZTFkMzNjOTQ3YzkyNyBsZWdhY3ktdHJ1bmsKKzY1NTE5IGNmMzMxZmVmMzI5M2M3MjAwZTk3YWZhNjg1MDk2YWZlOTBhZGQwYTUgbGVnYWN5LXRydW5rCis2NTUyMCA1OTRjOTljMGYwNzg0YTJmNjA0MDAyZWYxZWEzMjE2ZTBmYTMxNDkwIHB5M2sKKzY1NTIyIGRmMjc3ZTY0MmU1ODAwYjM5NGUyNjg4Y2Q2ZjdkMmRiODllMzE5MjkgbGVnYWN5LXRydW5rCis2NTUyMyAwZGEzMDJmN2ZlOTQzMmM3MzNkOTFmYjA4YTA0YTM5MzdmNWZkZTA5IHB5M2sKKzY1NTI0IDM4MWE3MWRmMDYwZTRmNTkzMTkzNTZlYTdjNmQ3ZjY4MTdhNzdlMjAgbGVnYWN5LXRydW5rCis2NTUyNSBmZmMxZDhmOGM1YWQwMjViNmUyOWQwZGI4ZmQ4NmNjMjBmMmMwMjZlIHB5M2sKKzY1NTI4IDlmYWE4NzkwMjExNDM0ZjQ1NDY1NGMwYmI2NmM5MTBlMDc2NmUyYzMgbGVnYWN5LXRydW5rCis2NTUzNiA2OGRmODQyZDYzMzA4NGZkZDVjOWU2YmZjZTU1YzJmMjE3M2U1ODRiIGxlZ2FjeS10cnVuaworNjU1MzkgNWI3NzRmZTA0YzdlMTc3ZTNkOGIzYjIzMTVlMGM4MjBjZDI4MGJiMSBsZWdhY3ktdHJ1bmsKKzY1NTQzIGI2NTRkMTRjYjlkOWVlMGQ0N2NmMjNlNmMxNjRjOGYwY2VhZTk4NzIgbGVnYWN5LXRydW5rCis2NTU0NCBlNWZjM2UxOThkZGFjMWM3Yzc5YzU3YWU5OWEwN2VhYzhjM2NiMmJkIGxlZ2FjeS10cnVuaworNjU1NDUgMTYzNTg5MWIxOGU4MWFkNmZjOTE3YzZhNDQwZTBiNmFlZGM3ZDI0OCBweTNrCis2NTU1OCAyMzY2MzczOTA0NTdlNmIzMTgxZWE2YjYyYjc2NWY0OGFhOTJjODNhIGxlZ2FjeS10cnVuaworNjU1NTkgNzllYTM0MGQxYTU5ZGFmZTBjNWQ2NDE5ZGFlMGRlMWRlOTViODFlNyBweTNrCis2NTU2MCA4M2E3MjE5MzY0YjEzNjcxODgzZDNlZjk0YTAyYzdhMGE1ZTExODA2IHB5M2sKKzY1NTYxIDU0OTEwOGU5YTBhMzIyMzE3YjUyODkyZDM0MjlhMDBjZjVhMDU0ODUgbGVnYWN5LXRydW5rCis2NTU2MiA5Y2NjMTY4MmUxOWI4Nzg5ZjQwMmQ3N2FiMWZlYjYwODA1ZTNkNDgyIGxlZ2FjeS10cnVuaworNjU1NjMgNTNhZGU5ZTY4YjU2MmUzM2I0ZTU4ZTM3NTMyZGFkZGI0ZDdhMTZkZCBsZWdhY3ktdHJ1bmsKKzY1NTY0IDEyMzczZmE2ODA0ZTRiOWY2MWUwYzM1NjVlOTdmYTFjOGViMjQzMTggcHkzaworNjU1NjUgMDNkYWUwMzdiMmI3Mjc1NTVkMjhkYzBkNmY3NmNmYTk2OTMzYzMxMCBsZWdhY3ktdHJ1bmsKKzY1NTc4IGYxZmM5NDc3MjJmMjlhNDNjYjI5N2Q0OTE4NjEzYzJmZTdlNmQ5MmIgbGVnYWN5LXRydW5rCis2NTU4MCAwNDJkMTZhMDUwMTY5MTFiZjA5YmNjODgxN2M4YjJhY2U5MWNmYTdiIHB5M2sKKzY1NTgxIGM4YzllNzhmYzA4MjM4MDFhNzM3YmYyY2IwYzAzZDUyMDAxOTMxOGYgbGVnYWN5LXRydW5rCis2NTU4MiA4NWI2N2ZiNTY3MmI5OWYzMTI5ZGUwMzNmMGM2MDFmZWI2ZDY1ZmE3IHB5M2sKKzY1NTgzIGNmYWQzZjdmNWU2MzhlYzFkZDg0NzE2NGYxYjc5NTA3YzYzMDdlN2YgcHkzaworNjU1ODQgMGJmNmM0MmFiNGU0MjM4NTZiODk0NjM4ZWFjOTMxNzhjZDNhOTc2YyBsZWdhY3ktdHJ1bmsKKzY1NTg1IDJiM2Q0MmVmZmU1YmUxNjlhNzlkOTE1OWJmNjc0MGIxNDVkMmE2OGYgcHkzaworNjU1ODYgNjQxNmU2MDQ0YTMwMTY3NmYwMmE2YTViOTJlZmRiODlmMjY5OGZmMiBsZWdhY3ktdHJ1bmsKKzY1NTg3IGE2ZDZjMmZhZDIyMDBlY2Y5ZjI2ODQzNzg1MDIzODk3ZTEyMjA1MjQgcHkzaworNjU1ODggNjU5MDFmZmZmYzZhYmU1YTMwYmRkMWNkMDMxMDhlOWE3NWJjNDMwZCBsZWdhY3ktdHJ1bmsKKzY1NTg5IDQ4N2UwZDlhMzgxYTgwMDAwNmFmNzY3NDI4MTBjMTk2NDFkZWU4NDQgcHkzaworNjU1OTEgZTZmZTgzYzJlMjYyMDZmNGFhZTYyYzIzMzZlNTlmZGQ4NGNlNGQ5NiBsZWdhY3ktdHJ1bmsKKzY1NTkyIGIyYzUwNWQ0YTIwM2Q4MmQ4MDJlNWQ4NDc0ZWQ2MmUzMzNkOTM0NDMgcHkzaworNjU1OTMgZmQ3YjkzYTAxYzA0YjdlNGVkMWQ5NzM1ZGU0YWYxZjc3NjhhMTk2OSBweTNrCis2NTU5NCA5NDliOWEyYjk4Njc2MTA5NjI3MGUxMGY1ZTZhYTAyZDQzNWIzNzg2IHB5M2sKKzY1NTk1IGUyYzcwNmY5OTA2YzM4NWI5NzkzNmVhMDU5NmM4NTI2OTJmYTI4ZmUgcHkzaworNjU2MDEgNzIyNGZmZjk4ODIzYmM5ODMwMDc5OWIzY2Y5Yzc2NmU3NmQ2NTY1ZCBsZWdhY3ktdHJ1bmsKKzY1NjA1IDQ3OTY3NjkwYjU4NTVlYzljYTMzMWFlYjIzMWVjZTQxOGE3NWExM2UgbGVnYWN5LXRydW5rCis2NTYwNiBhYWQ1ODA5ZmM0MTk1NWIxNDExZGE3NzcwZDhmNjc4MGI2NWY4NWU3IGxlZ2FjeS10cnVuaworNjU2MDcgZWUwYTUyYzk4MmU1ZjZhYTQ1ZGVmMDhhM2NjZThiYjYwZjBmZTJmZiBweTNrCis2NTYwOCA2M2FlYTk5Yzk3MWE2N2Q4ZWMwYmQ5Y2Y5ZDlkZjY3YzcxMDJiZGZjIGxlZ2FjeS10cnVuaworNjU2MDkgZDYxNWFhOWZkZjM2MTA0OGRlMmRiMTRmZjMwMzI5N2IwZDJkN2E3YyBsZWdhY3ktdHJ1bmsKKzY1NjEwIDZkOGQ5MjBjZDkzMjQwYTQ3Y2QwYjIyNmRiODIxNDc3M2RiYzhlNmEgbGVnYWN5LXRydW5rCis2NTYxMSAxYTExNzE3YTE1NGI0ZGYyMzA1ZGMzYjRmOWJiZWI0NGVmM2E4YjUyIHB5M2sKKzY1NjEyIGQzNTI5NjQ0YzY4MjNlYzRmYWM3ZDFiOGExNzQ5MGUyODg3ODY2MGUgcHkzaworNjU2MTMgMzg4YTRiZTdkNjc5YTE1ZjFmMjU4NmQ4MDFjZjgzMTY1MmE5ZjFlZCBsZWdhY3ktdHJ1bmsKKzY1NjE0IDk5ZjliZWE5MDliNTU5YTcyZjQ0Y2U0OTExNzRkYmQ4NWYxNDA2YWUgcHkzaworNjU2MTUgYjNhYmZmMTdlMmRkMTc0ZDQ3ZjUwOWEzODU1YzU4MTA1ZGFjMDExMSBsZWdhY3ktdHJ1bmsKKzY1NjE2IGFjYjk4ZGJiMWIwNGZlZTM1MDhkMzFiZDBjNjViYzMyMTEwNmRjYmUgcHkzaworNjU2MTcgYmM2YTM1NzJiYzg5NmQzYjE3ZmU0YzllZWI2NDc2NzE0OTY3Njk3MyBsZWdhY3ktdHJ1bmsKKzY1NjE4IDlmODQzMzk2ZGY4OThkYWViMzYwMTJiMjI5OGE5ZWVlZTI0ZDBiNzQgcHkzaworNjU2MTkgMzAxMzViNmUzOGZkYWY3MzIyMjJlMDkyNGIyMzk4YTA0YjViN2U1NiBsZWdhY3ktdHJ1bmsKKzY1NjIwIDMzY2Q2YzVkMWEwNGIxZjhkMzgxOTEyZDRhMWNkZTg2ZDkwM2FhZDkgcHkzaworNjU2MjIgNWExNWE3MDQ0ZTdkOGQ2YmE4YzJhOWMzMDNhMDcxNjI4Y2FmNGYxZiBsZWdhY3ktdHJ1bmsKKzY1NjI0IGFjODEwMzM0MWI4MGU5MDIwNWNkZmI0YjA2Y2RkMWFiOTU3Nzg0MWMgcmVsZWFzZTI1LW1haW50Cis2NTYyNiAwNTRkYzExMWIxZDljMTFhNzBkNzNiZTYzZDc2M2Q2ZjM3YTgxYWNmIHB5M2sKKzY1NjI3IDZlNGY0N2E2OWVmYTc1NDIyNzRlZWFiNjQyYWNiYzk3YWVhNGEwMDggcHkzaworNjU2MzcgNjk0ODE0ZDdiMTA0M2MxMzUwZWI0OGUzY2EzZWViMTcxYjYwMWJmNyBsZWdhY3ktdHJ1bmsKKzY1NjM4IDBiNjcxYmNlNjk0ZTQ4OTc4Mjk2NDFhZWVkNjBlNDhmZWU0ZTcwZGQgcmVsZWFzZTI1LW1haW50Cis2NTYzOSBjZTU5ZGFjM2ZjYTI0Y2I2YTNkZWJjODgzZDJhN2E0YzViZDM1MGE1IGxlZ2FjeS10cnVuaworNjU2NDEgY2Y2OTg1Y2I2ZDE1NmRkYmFjYjAxOGQ5YTA3ZWI3OGUxZDRjMDI4MSBsZWdhY3ktdHJ1bmsKKzY1NjQyIDc1MjdkYTJiMDVlOGE5ODgzNmQzOWI3MDI5OTE3ODc0MmU4OTYzY2MgbGVnYWN5LXRydW5rCis2NTY0MyBkMjFkOGNiZTZiZDRkZDc0MGFlMzY5MmNiNzVhYmM1YzU2YjZmMzE1IHB5M2sKKzY1NjQ0IDBhYWU3MmY4ZGRhOTA0OTkzZDdlOGJmY2MxNjQxNjNlMmViNDhiYmUgbGVnYWN5LXRydW5rCis2NTY0NSAyOWQ5MzZhNGY4ODU4ODZmZDA3NWUwNDY2YTY5MzkwMTNhZGVkNzgzIGxlZ2FjeS10cnVuaworNjU2NDcgZWJlYWE2NTM2ZDMyOGEzMTg4M2U0MzM3OTVjZjM3N2RlYTY3NWZjNCBweTNrCis2NTY0OCA3Nzc5YWYzODhhZWMxYTNlMDAyMzIyNTIzN2Q5ZTBkMWNmNTViZWI0IHB5M2sKKzY1NjQ5IGVmNDFkYWUzMGYzNWQzNmVkNDdlOTJkZmRlODkzZjMxMTQzMDQzY2YgcmVsZWFzZTI1LW1haW50Cis2NTY1MCBlZWZlNDQ1MGY3NzNmMmNmYTFmNDVkNDk0Mzk0MTcyMjcyYTc2YWY2IHJlbGVhc2UyNS1tYWludAorNjU2NTEgZGQ3ZTJkNjhiNmRkZGYxNjA4OTk2NzQyOThhZTgwN2NiOWEyNDNiMSByZWxlYXNlMjUtbWFpbnQKKzY1NjUyIGEzMzkzZTU4MWIxNWI4NGY5MTljZTI4ZWYxYWIxOGI3NzU4NzQwYjcgbGVnYWN5LXRydW5rCis2NTY1MyBiMjE5ZDU1NDA0ZTc2YWE2NjRlMmI5ODczNzA1ODEzMWYwY2M4MGZlIGxlZ2FjeS10cnVuaworNjU2NTQgYjhjNGJmMzkzNzk0ZTliMWU3NzM3ODhiMDdiOTQzYTk0N2E5Njc1ZiBsZWdhY3ktdHJ1bmsKKzY1NjU1IDc5ZmEzZTBjMDk4ODlhYWNiYWEwMDgyYjYyZDc2NDRmNzljMmRlODEgbGVnYWN5LXRydW5rCis2NTY1NiAzYzhlZjM0NjY5MjM3MTIzOGQxMDAyNTU2YWI1MjA5ZmJiNGJjZjYzIHB5M2sKKzY1NjU3IDcwMTUxNjU1NTM5MzczNmY5YzY5OWVjM2U2Y2U4MjM4ZWRhOWU3YWUgcHkzaworNjU2NTggZjA0NzI1MzNiZmM5ODkwNjM1Zjg5Mjg0NDc3N2Q3M2I4NzJiNTJmMyBsZWdhY3ktdHJ1bmsKKzY1NjU5IDc5YzI5MTZmZTU4ZTQxZTcxYzI5Nzg1Njg1YzZhOWQ4YTVjZDFmMzIgbGVnYWN5LXRydW5rCis2NTY2MSBjZDNiMGI3ZmQ4ZTFiN2UyZTNjYjNlZjFjZmVjNzAyYTRkZjJkNmY0IHB5M2sKKzY1NjYyIDEzMWY4NWJiNjkzMDBjNDhlNmQ5ZjZkYTI3NTdjMjIxNGY4YTBjOTUgcmVsZWFzZTI1LW1haW50Cis2NTY2MyBlY2NkOTQyOTcwMmU0ZjU3M2JkZjQ0MmI2ZmJiYmE4ZTljNGU5NGE1IGxlZ2FjeS10cnVuaworNjU2NjQgZDc4ZTI0YjEyZjYzMzZiODdhNTE2YjUyZGIwM2RkMDQyYmQwZmVlOCBweTNrCis2NTY2NSA1MGZmZmM4MDA4NDU3YTliZTBlY2VmODY3YWFlMTIxNDNmNDFlNTE5IGxlZ2FjeS10cnVuaworNjU2NjYgOWQ3OGZkNjBiZjJhNWVhY2Q3NDVhZTM0YWZjODQ2MTY4Y2E4Y2E2MiBweTNrCis2NTY2NyAwNjAwZmNlNjc4MzUyMjg4Y2RiNzc4NzY0MzcyODQ2ZTRkZTcyNTE1IGxlZ2FjeS10cnVuaworNjU2NjggNGYxZmU4ZjE2ZWY5M2Q2M2Y4ZjM4MTdhMmU2OWNlNWZhMDVhZmJhMyBsZWdhY3ktdHJ1bmsKKzY1NjY5IDA0NTU2ZTJhNzk4NGY5NDE4MTY5ZGExNTZjNDk4MWQ0YjZmOTU3ZjggcHkzaworNjU2NzAgZjYwMjZhMzc5OGQ0NDAxM2NjMDc0ZmJkNGIxMWUwMjMxZGI3ZWQzNSBweTNrCis2NTY3MSA2YjE5MDhlYTZiNTM1NDRmNjNkOWVhMWQ1ZWEwYzhkYmM1MmE0YTllIHB5M2sKKzY1NjcyIDcwZjI3OTVkNjkwMjgyNjE1MmU5MGI4ZmI1OWVhZTUyOTc3M2FjOWEgbGVnYWN5LXRydW5rCis2NTY3MyA2MWQ1MGRhNTgxNmEzODcyMGFiNDQ5MmUwMjcwMmNlYTQxNDlhY2YwIHB5M2sKKzY1Njc0IGYxMjYwZjQzMTFlZTc4Yzg1MTMyOTNjMmNhZDQzMWMyYzM4NTQ2NjUgcHkzaworNjU2NzYgYWRlMzNlMTNlYzY5MzA2NmM2ZGQ2N2Y5MWE1MmQ1MWVlOTc4ZjRjYSBweTNrCis2NTY3NyBlODUwOWFjNTAxZjMyNGQ4NTc3NWU0MDRmMDFiZDJjZjQyMzFhZWI3IGxlZ2FjeS10cnVuaworNjU2NzggYjc1NjIxYTQyMGVjYjI4ZTkyMzkwMGE0MDcxZTA0ZDE5OTZiZjc5MCBsZWdhY3ktdHJ1bmsKKzY1Njc5IGFmNzM4OGFkMzE2NGViNzRkZGRkOTg1MTBjMzAwZTA1MWQ0NDVlYzggbGVnYWN5LXRydW5rCis2NTY4MCAyOTNkZjgxNTNmNjE4NThlYWNiY2I5YTJjOGM4MDUwNTNlZDhjNjgzIHB5M2sKKzY1NjgxIGY4YTM0NmZjZDA0MTk2MzIxYWM2YjM3MzdjYzlmYjc4NzcxODlhNWUgbGVnYWN5LXRydW5rCis2NTY4MiA2MzNmYjAyNjBhYjMyMjU0NDNmZGVlMmVjYWNmNmY4MDg5YTExNGUzIGxlZ2FjeS10cnVuaworNjU2ODMgMzY1MGIxY2U0YmQ4NDY0MTBkYTY4YmY0Y2Q0MmJhMTdjNGMzZjFmMCBsZWdhY3ktdHJ1bmsKKzY1Njg0IDYwZTBlMDk3NjNhYjYwZDQ0MDZjMGJhOTVlY2M1NzM2Y2I2MTZhNjggbGVnYWN5LXRydW5rCis2NTY4NSAxMzZmNjFiNzRlOGZlOWQxYjYyZmYyZjVhNDc5NDYzMWM4OTBjMmIwIHB5M2sKKzY1Njg2IDY3OTM4NTc1YWZjNmNjNmNlNjg1N2ZjNWQ1ODU2MjFkNzViYzc5MTAgbGVnYWN5LXRydW5rCis2NTY4NyA1NGEyZGI4ZmRjNjI2ZGU5NGUzNGFjZTRjNDBjNzg1MGNlMGMxYWJlIHB5M2sKKzY1Njg4IDBhNDMzNzZiYWE2YmYyYTkwN2YwMmQ2OTdjZmU1YzgwYTk1ZDE2NzQgcHkzaworNjU2ODkgZTk2MWNjMDE0NjE5MTQxZDI5NjIzOGViNTBhYjU0YTRiYTg0MDM3ZSBweTNrCis2NTY5MCBjNmYwZGU1ZjJjNjg1MjNkNmIyMjJkYjY4Y2YxYzc0ZjViY2Q3YzY4IHB5M2sKKzY1NjkxIDkyMzMyODZjN2VkMGRjNWU3MmI4MzhjYmNlNjQwNDBiZmFmZmJjZGYgdGxlZS1hc3Qtb3B0aW1pemUKKzY1NjkyIDFkODE3MWQ2NDQ2M2VkMDI0ZWJjM2I2MWQ0ZGY4OGE2ZDc0NjlkOWYgcHkzaworNjU2OTMgY2RkODk4NDMzZDU4OGUzMGRmNWI5ODZhYTM0NTI3ZjY0NWJhMjgzMyBsZWdhY3ktdHJ1bmsKKzY1Njk0IGMwNTc5ODllODdlYjlkZGVhMTgxNTE5ZmY5OTNhODg5Mzg4N2MyNTAgcHkzaworNjU3MDAgMTgwMDYyZTMzOTU2OTgwZDU1YjYwZjQzYmNiZDA5ZjE5MjMxNDM5MCBsZWdhY3ktdHJ1bmsKKzY1NzAyIDgxNjNkYWVlNzg1ZDQwYTNkN2ZiNTVhZDBkOWZkYjE0MGYxMmE3N2UgbGVnYWN5LXRydW5rCis2NTcwMyBmNjI3ZjgwMjAxZDM5ZmUxNWVmOWIyZWY2ZGYxM2RiYmIwOWVhNjRmIGxlZ2FjeS10cnVuaworNjU3MDQgZTYxZGViNjkwZTcwODQwMmQ0NTJlYTZjZmU1N2UxNGNjMTFlZTE0MSBweTNrCis2NTcwNSBhM2Y5NTBkMTVjMDgzZjU2YWRkMWFmM2RhMDJkYzE0MjlmMDhlODg2IHB5M2sKKzY1NzA2IGMzN2Y0YjAzNjM3ZjIyNjU4MzkzNDkzMmQ4OTQwMmUwNDgwOWQ2ZDQgbGVnYWN5LXRydW5rCis2NTcwNyA3MTAxNDY4NWUwZTVmNWI5OWUzYzcxZDc4ODI5ZmE5NDYxNmRjMDNjIGxlZ2FjeS10cnVuaworNjU3MDkgNzgwZTE3MDM4OTAyOTlhYmFhZTEwNDM2YWIyMDlkNTIwZWViMDVlMyBweTNrCis2NTcxMCAxNzAyODczZjI0OTJmMjMwNTI1YTdmOTA2MWRhYWIwNGZmYmE4OTAxIGxlZ2FjeS10cnVuaworNjU3MTEgYzZkNzhmODY5NDA1ZDc1MTRkNGNhNzJiMTM5ODc5OTRkNWRjOWM0MCBweTNrCis2NTcxMiAxZWQ4NmNlMGJlYjI2NmEyN2Q5ZmNjZTJmNTIxNTZhYjk1OWU4NGRlIHB5M2sKKzY1NzEzIGVhZDM1OGNlNGQ4YWIwOWZmMjczOGJmYThmYWMyMDI2ZTg1Y2Y2YmQgbGVnYWN5LXRydW5rCis2NTcxNCA4Nzg4NjE1MTViMTYwYzlhYmI2N2ZmYjM2Yjc5NDA0MmE0OWFjOGVjIHB5M2sKKzY1NzE1IDlmYjEwZjNkMGY4NzMwOWU5NTQ4Y2UxNDQ2ZWRhOWZhNTU3ZjlhODkgbGVnYWN5LXRydW5rCis2NTcxNiA4OTRiNGFjZmZmZTQwZDBiYjVjZWQ2NzRmYTBhNThjODQ0ZjVjYjkxIGxlZ2FjeS10cnVuaworNjU3MTcgOGMwZjg1MTk2ZTM3YzJlMTFkZGZjMzY3OTI1ZGJlZjRmMzljMDM2ZCBweTNrCis2NTcxOSA5MThhOTE4YTk5OTZjNjA5MDcwZWQwOWQ0M2E5MmE3ZmVlMTNhZmQxIGxlZ2FjeS10cnVuaworNjU3MjAgYjk3M2ZjY2QwMmE1YjkwNzgxZWMyNzM0NDhiZTYwOWIzMzBhNzY0MiBweTNrCis2NTcyMSBjYTRjNTEzNTg2Mjk3ODhjMTdkYTE1MGE4ODJjZjIwYzk0Mjk3ZDgyIGxlZ2FjeS10cnVuaworNjU3MjIgMWQ2NWM4ZjVjMDhlMTM4MzU3ZGRhMWMyNDlmMGFhMGEzMjY0YWMwNyBweTNrCis2NTcyMyA1ZGY1NmNkNTUxOWE1Njk0N2QwNGNmOGViZDI3NTcwMmFjOTAyYTg1IHB5M2sKKzY1NzI0IDJkNzZhZjdmNzcwMjY4YTkyZGI0NDQwNzhhODJiOWY2MWVjM2EzOTMgbGVnYWN5LXRydW5rCis2NTcyNiBiNjBlMDkyOGRiM2VjN2ExMDUyNDAzYmIyODIwNWRmYjRiNTFhZmU1IGxlZ2FjeS10cnVuaworNjU3MzEgZTBjNjU5MjJiODc4N2RmOGE0MjllNTA3MGU5MGQ2MGI3NzljOTQ5ZiBweTNrCis2NTczMiA5ZGU2OGFkODYwNzhjMzYxYWIzMGExOGIyYzc2NzZjOWQ1N2NiYWIzIGxlZ2FjeS10cnVuaworNjU3MzMgYWVmYjhlOWQzODQ0ZjFlNWVhOGFkMzZjZGM5YzE2ZDMzMDBlNzNlNyBsZWdhY3ktdHJ1bmsKKzY1NzM0IDMxYzM5YTYyZDNmOTY1NWE3MmY4MDgwMDQ3MWJjNWY1NzA1M2MwOTMgcHkzaworNjU3MzUgZWJhNzQ1N2Y0YmI2OTNiOTBjMTEyNmE3MDViNzc2NjEyNTVjZTQ2MSBweTNrCis2NTczNiAxNTNlOWU2Nzg2NDY0YTE4NDM3M2U5ZWM5YTBmZTAwN2Q5YTQwZmJmIGxlZ2FjeS10cnVuaworNjU3MzcgZmY4NTY1MzU0NWY1Y2E3MGY0ZjBlZjJiMmQzNDdlN2NkNWFjN2JhMSBsZWdhY3ktdHJ1bmsKKzY1NzM4IGViMWU2NGU1MzVlNmExNzEyNmVmZGI0ZTkwMjhjMDk1N2RlNzc2YzUgbGVnYWN5LXRydW5rCis2NTczOSA1YTM1Yzk2M2U3NzEyMmVhNmMzNDlhYzllNTg2ZDY1NjE5OTE1M2Q0IGxlZ2FjeS10cnVuaworNjU3NDAgZDk5ZmU1NmY5ZmY4ZDY0MWMxNjAzZTc2MWE2OGJkMGQ5ZmQ4ZGZkMSBweTNrCis2NTc0MSBhZjRlNDBmODkzYmQ5NTBkMDQ3MTMxZmNmMjUwM2VmOTAxM2EyMGFlIGxlZ2FjeS10cnVuaworNjU3NDIgMmJlMTdkMzY4YTljNWI4ZmU2MDhiZmY4NWU3NjRiYjc1YmI2MjY3NyBsZWdhY3ktdHJ1bmsKKzY1NzQzIGYyNGYyNmExMjE4Njc1ZWUwNzQyMWY4YzMzN2U2YzU5Y2E4MThkMDAgcHkzaworNjU3NDQgNDhkZGRmZDJmYmYzYmMwMDM0NzFhMmJkYWIzZThhY2I1MGMyNzJiZSBweTNrCis2NTc0NSBhYWVmMDhhYTJhN2VmZmJhYzI5YjEzODdlZjM4OTUzYWE2NmM2NzIwIGxlZ2FjeS10cnVuaworNjU3NDYgNjEyYjBjMGU1YTBmMzNkOGI5MmQ0YWYxZjU0MjIxMWFhMDU2NTEyMSBweTNrCis2NTc0NyBkOWQ1MThjZDQ5M2MzMmVmYWZjOGEzYmM1MjUxMjQ4MjIxZjg0YzcyIHJlbGVhc2UyNS1tYWludAorNjU3NDggYzc0ODFjNzNjMTYzYTE5N2E3Zjk4MmEzZWIxODZiNmJlZGIxMGJkMSBsZWdhY3ktdHJ1bmsKKzY1NzQ5IDQzNWQ2NGZkMTNhOWNkOWQ0ZDMwNmU0MzYxNGZhNGZmNWQ5ZDkzNTggcmVsZWFzZTI1LW1haW50Cis2NTc1MCBmNGMyZWFhZDA5Zjg0NWUxMzgzMGM0OWVhODdiZmEzNWE0ZjljNDA3IHB5M2sKKzY1NzUxIDQ1NTY5ODk1ZjdiNTYxNGFhZDUzZmNlYzgzYjhkYjNhNGQyMWIxMzIgcHkzaworNjU3NTIgZGRjNjVjZDJmMGJiYmFjMzVmMWRmNGMwMWE1NjM5NjkyNDUyYTY5NSB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTMgOTBkMDQ5OTgzZjViM2RmZTZjNzczNjk5MDI3ZGIxZjhkOTlkNDU4NCB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTQgMDc0MDllOTg1YzM5YzlhYTE3MWNmZWI4ZGYxNzYxNTQ3ODMyMTYxMyB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTUgOWM0OTg5MDcyMThmZDdlODBiMmYzMjE5MTI1NjhmMzJkNDlkNTlkNiB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTYgZmMxYTBhY2ZjZWY4MDhiZjNjZjQzODE4YTU1NDg2MzE5ZWUxODE1YyB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTcgZGE1ODMzM2VjN2RhNzYxYzUxMTJmNzc4ZTU1YWJmZjA2YzEwMWZiYSB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTggNTA0OTNmOWRkOGM3MWE0YTQ3MWJjZWZjYjU5YjRjZjhiMTE0OTlkMCB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NTkgMTZiOWVlMWVlZTMxZmEyNTk0Mjg4NWExODQyZWIwMjgwOTM1ZDc3NSB0bGVlLWFzdC1vcHRpbWl6ZQorNjU3NjAgOTNhYjlmZGE4MGFiMGM0YTBkNTM2MjlmNzc2ZGEwOWU0ODU4YzEwZiBweTNrCis2NTc2MSBmNDgyODc1ZTJhMDMxYWFiNmMzNDY5ODVmYTAzMmYzOTJiYWU5NjAwIGxlZ2FjeS10cnVuaworNjU3NjIgZjRjMjI2YzYxYjcxYzhmNmIzZThjNjRhYjczYWU0Y2JlYjJiYTExNSBsZWdhY3ktdHJ1bmsKKzY1NzYzIDJmN2U1N2ZjMWYzYTY2NmI1NzJjZWEzOGZiMzE0ZDMxODQwODZlMWMgdGxlZS1hc3Qtb3B0aW1pemUKKzY1NzY0IGE4ZjNlNjNiNDdlNDI0MmQzOTI3ODNlOWIwMTQ3YzVhYjUyMDM5NzggdGxlZS1hc3Qtb3B0aW1pemUKKzY1NzY1IDNkZTY5ZTZiMmNiMjUyMWQ4ZmI2YjViNTZkOWE4YjBiNzRiMDQzNDkgdGxlZS1hc3Qtb3B0aW1pemUKKzY1NzY2IGM1MDU5YjEyZGRjNmQxODQ2YjMwNTAwNTM4NThkZTNiNzNlZTYzNTggdGxlZS1hc3Qtb3B0aW1pemUKKzY1NzY3IDliOTg1NjdkNWRkZTUwNzA0YWU4YTU2ZDNhYmUwOWExOTRlOGNlMWYgdGxlZS1hc3Qtb3B0aW1pemUKKzY1NzY4IDdhMDM4MDIwYzhkZDYzZTZkYmFkMjZjNjMxYzg0ZDRhMWY3NGQ4ZTcgbGVnYWN5LXRydW5rCis2NTc2OSBjYWJmOTdiODIzMzA4NjFlNWI2NTEwYjRmMjYxNGJiY2VkMmI2ZThmIHB5M2sKKzY1NzcwIGIzNzdjMTQ3MzIzZWJmOWUwODY3MmIyMTRkNjQwMWZlMGUzNWZmYjQgcHkzaworNjU3NzEgZTRjOThkNjE1N2M3MDE5N2JiNGFjNmE0YjQyY2Y1ZGRjYmRhYzljNSBweTNrCis2NTc3MiA3MWI1M2Q2ZWE3YTQ1ZmRiNWUwZGI2NWFlYTE1MzIyYzQ5NDgxMjA5IHRsZWUtYXN0LW9wdGltaXplCis2NTc3MyBkN2Q3MTM5ZDU4NDA2YjY1NWNhOWJjMTgyYmM0OTMxZjcyZTExM2Y1IGxlZ2FjeS10cnVuaworNjU3NzQgMWQ4OGFkNWY0ZGVmMzM2M2YyNDg1MTdlZDM5NTA4MWEwZGRiODMxYiBweTNrCis2NTc3NSBjMzZjY2YyYTcxZTE2ZTYxOTVmYjc3MzRkNmMzMjFkZmNhZTkyZWVkIGxlZ2FjeS10cnVuaworNjU3NzYgYjI5ZGYzNjQyYjk3ZDNiNmZjNWJlMTUwMDAwNzdkYzdkODE0ZTBiNyBweTNrCis2NTc3NyA0MGMwN2E2MWUxYzI2YzFmZmEwNGRkMTk1MmI5NDU1NzIxN2Y0NDg4IHB5M2sKKzY1Nzc4IDEyYzNhMDMzODllN2YzZTIwYTdlYzgyYjVjNjUyMmFlZGZlMmE5YzQgcHkzaworNjU3NzkgNDkyMTNkNDI5YzY4MWEwMWRhZTBiMzdkYTlhZTk4Yjk5ZjE3ZjkxMiBweTNrCis2NTc4MCAyYmViYzBhNmQwNDI4MGQwYzczMjY3ZjVkZGJmNDc5MjQ3MGU3OTZjIGxlZ2FjeS10cnVuaworNjU3ODEgMDY4OTFhZWM0MWRlNmU2OWI3MWM1NTVlYmJjMzJlODIzMWQ1MTIwYSBweTNrCis2NTc4MiAxOTVkYTZkMGM3N2MxMDY4ZTI4YWQyOTg4OTNkOThjOWQzMmU5NzQ5IGxlZ2FjeS10cnVuaworNjU3ODMgODBhOWZmNTllYjAyMDJiMmMyYzdlM2I1MjUxNjk2N2E0OGNjMTg2NiBweTNrCis2NTc4NSA1MzBiNGNiMTk0NDI1YTIzYTQ2YWMyOGMyMTRiZjUxZGRmOWMyOTYxIGxlZ2FjeS10cnVuaworNjU3ODcgNzU2NTg1NDNiOTE5YmY1MzU0MjgzM2MwYjIxYjk3Yjg3NDEwZTEzOCBsZWdhY3ktdHJ1bmsKKzY1Nzg4IDIyYWQ4OGU1YzAwM2E0NmQzNDgxZWYxZTRkNjMzMDNlMjNjNDJhNGQgcHkzaworNjU3ODkgNDNmYTUwYjllYjEyOGZkNWY3MDJjNTI3NDA4NzkzZDE3OWNhNjYxZSByZWxlYXNlMjUtbWFpbnQKKzY1NzkwIDU1Mjk1MzMwNmQzNDJjNThlNjgxYzc2ZDg3NTA3ODcwNTdlOGM1MzggcmVsZWFzZTI1LW1haW50Cis2NTc5MSA4ZDk5ZDAzYTA2ZTQ0YTc3NDdjMWQxYzBmNTI1OWY4YTU5ODExNGEwIGxlZ2FjeS10cnVuaworNjU3OTIgYjBjNGFiODIzM2ZhOWI1Y2ZiZmNiZDgwNTgwOWU5N2Y0ZTJiZDk4OSBweTNrCis2NTc5MyBkN2ZiZTczZmU3Zjc0NDc4ZWU3Mjc1MzE1ZTUxYTY0YjVjYmEzMjI2IGxlZ2FjeS10cnVuaworNjU3OTQgZGQ5OTJiNjQwM2Y0Y2ZkYjgwMzVhNDhhZmRkMzM1NjgzNDg0NGM4YSBweTNrCis2NTc5NSA2MmM2OWQ4OGU5ODVkN2M5N2E3MGM3YmE5M2ZlZWIxZTU2ZDBhMGFiIGxlZ2FjeS10cnVuaworNjU3OTYgZWRiNWE4NTkzNzQ5ZTZjZWM5YWY4MjZiMjBjMDg5YjBjNDMwMmZjNCBweTNrCis2NTc5NyA4OTUzOGQ1ZmI4MWFkYjJmYjIwNDAzNmFiZDM3YmEyYzE0NDdmMzIxIHB5M2sKKzY1Nzk4IDk5YTJlZTRlM2EwNTczYzBmNGM1MmU0YTcwNWNhODdiYmY1MTI3NWEgbGVnYWN5LXRydW5rCis2NTc5OSA5NWYxYzdkYjg5MjNmNDhiZjQ0YzQ3OTZhOWE3OGNmOTdhNTY3ZTM0IHB5M2sKKzY1ODAwIDM1MWFkNjg0MDdlN2ZmMWY0NTE1ZGEzOTM4MDYwZjUxNjdjYjE4ZTggcHkzaworNjU4MDEgZjI4N2JlYjM1MmZlMTYzOTM5MGZlYzlhYTMwNDc2NDE1ZmJkZjU3YSBweTNrCis2NTgwMiA1NTA4ODYyYTFkZTUwNWM4MGQzYjM2ZjJmMDNmOTJmNzM0YWNhYjQ2IGxlZ2FjeS10cnVuaworNjU4MDMgNWE4N2IwZDFjZTkxZTE4YTMwNTc4ZGZmNzY5ZGNlYjQ3NDE0OTExYSBsZWdhY3ktdHJ1bmsKKzY1ODA0IDYwMTk0YWIyYjc1NjI1YjRkMzI5YWU3NzFmYjAxYzAwZjFlMTgzZWUgcHkzaworNjU4MDUgMzE5NWJkNmI2ZGQ3Y2RhZWZiZThkZjE0NTRkOGQ4NjRjMTY5ZjMzNCBweTNrCis2NTgwNiBmYzkwYjU4MTUxNmViZDhhMTkyMzE4MGQ0ZGU0N2VkOWU0Nzc1MjAwIGxlZ2FjeS10cnVuaworNjU4MDggMWE0MWQ0NTZkODAyYmZlNDE0NzU0ZTYyZjcwYTFmNDJiMTYyOWQ4NSBweTNrCis2NTgwOSAyMTE5MjcxNDdjNjA2ZTJkN2Q4NTA3Mjc0OTQ3NzM5YTRlM2M2OTNjIGxlZ2FjeS10cnVuaworNjU4MTAgMjI1NGFhODI0ZDRkYTNiZmUzZTA5NTFjNDYxZjkzYmViM2U1YmMyNiBsZWdhY3ktdHJ1bmsKKzY1ODExIDc1MTdiZGNjNzY5YTFlMTc1MDBhZWE3YjJjMTI3ODUzMzY5YmM4ZjcgcHkzaworNjU4MTIgNDIwNzIxOWFjYzdhODAzOWMzZGU0NTljNWY3MzMyY2FlMTlmMjIxZSBsZWdhY3ktdHJ1bmsKKzY1ODE0IDRiNDU2NGJlYjZkYTJlMGIxMzRmOTNhZjAxYjRmMTEzYmQ1Nzg0YjYgbGVnYWN5LXRydW5rCis2NTgxNyAxN2YwMTA1MTdiMzM1MDYwNTJlNmFjYzI4NTc5MzY3NjdhNzJmZTg1IHB5M2sKKzY1ODE4IDFkMjllNTNjZTJhZjY2N2Y2MTBhNTVkZWI2ZWFhZWI3NzliZDE3NTAgbGVnYWN5LXRydW5rCis2NTgxOSA3NjYyMDAxMGQ3ODI5ODYzN2ZiZDYzZDJkZGI0NDVjYmFkYTUzMzIyIHB5M2sKKzY1ODIwIDVjMGU1ZjJjYmM3ZDg5YzBjYjBmMDAyZTcwODc3YmVkNmQ2ZjdkZTcgcHkzaworNjU4MjEgMjYxNGQ1MDFkZTlhZWZjMTdlZTc4NTBjZjNjNDg1NTI4OGFlNGVlMCBweTNrCis2NTgyMiBlMTQzYThmMzUyNDE3Y2YwNDljYzkwYWQxNTIwZDIxZjZlYjhiYmZiIGxlZ2FjeS10cnVuaworNjU4MjMgNDcxYTRhODhmNTFjNjRjMDMyMzEwYTc5ZjExODJhOGI5Mzc0NWYzMyBweTNrCis2NTgyNCAwMjRiMmI5ODQ4NjY3NmNjNDFiNGU3Yzc2MzI3ODczYTg3ZTdjNTNjIGxlZ2FjeS10cnVuaworNjU4MjUgMWZkZmEzODJhZTEzMmUxMDNiODQ5OWM3ZDg2NWE3NjI5NDRlZDA4NyBweTNrCis2NTgyNiA5ZDE4NTZhYmE5ZjI0OTNkYTgxOTc1Yzk2MzlkNzg3MDY1M2QxZjNhIGxlZ2FjeS10cnVuaworNjU4MjcgZDY1MzdhM2UxYjczYzAzOWJjM2RmY2MzNjEwMWU0NDA4ZjVjMGUzMiBweTNrCis2NTgyOCAyOGQ5M2M5YzNhMDMwMzVjYjFkM2I1MTA2YzZhZGE2YTE1MjI5ZGNlIGxlZ2FjeS10cnVuaworNjU4MjkgZGI1ODkyNDFlNmY3NGM4OTU1ZjU2MDY2ZjY4ZjgwNjNjY2YxMmM5MyBsZWdhY3ktdHJ1bmsKKzY1ODMwIDZkZGEwMTY0MzEwNmNmYjJkMjcwYjBiNTg5OWFjODdmNjk0NGZmYzEgcHkzaworNjU4MzEgNTlkOTdhM2VlMjE5ZTQ2MTVjNjBhMzk5Y2U3ZDEzMTU5ZjdiZWVkOCBweTNrCis2NTgzMiA5MmY0YmIzNjYzN2MzNGU4Mjk5MzZkYWJjOTVmMmM1MGQwMTRkMWMyIHB5M2sKKzY1ODMzIDhkODgzNTA1NTNjM2Y1YTY3NDk1MjkyMTNhNDVkYTNiZTI0NzVlNGMgcHkzaworNjU4MzQgOGE3YTI1NDU5YzZmMDIxOWEyMzllZDEyMjA1OWEwZTc3Y2E1MTA5OCBsZWdhY3ktdHJ1bmsKKzY1ODM1IGUxMDcxM2IyZDU0MzM4ZDk4NzkxMzRhODlmZGY5MzkxMzlkMjM4YTAgcmVsZWFzZTI1LW1haW50Cis2NTgzNiAzMjkxNDkwNDhiOTBjYzk1NjU4ZTEzMjFjZjAyZjNiN2YzZTEzMjdmIHB5M2sKKzY1ODM3IDJiYWMwZDQyMTkyOWU0NTY5ZTlhYmFlMzUyNzU2OWQxNTAzYTQzY2QgcHkzaworNjU4MzggNDI4ZDM4NGVkNjI2MzQ5OTZkZTViZDc0NDk0MTAyMmZjM2FlOWY3MiBweTNrCis2NTgzOSA1YzEwNWY5YTc4ZThlMWY5OTljZWUxMTJkMzJkYmJjM2E1Nzc4ZjJiIGxlZ2FjeS10cnVuaworNjU4NDAgOWE4OWZiNTgwOThiNmJhNWNmZTJkMmYzYzUxOGI1OWY2ZGNkNGEyZSBweTNrCis2NTg0MSA1NDEzOGVlMjBlNTdjMmU5YWQyZGZiYzQxODY1NTFjNzUyZGIxODcyIHB5M2sKKzY1ODQyIDAyNzVkODFlMzFkMDljYmUzN2FjOWIyZjUxOWY1ZGJiYzc4NmQ1ZmEgbGVnYWN5LXRydW5rCis2NTg0MyAyOTFhNmYyMjAzNjA3MGM1YTAzMDQxZTE5OTIxMTJjOTBjMzk0MDdjIHB5M2sKKzY1ODQ0IDgzZjc3OTg1MjRmMWM3MDE5YWMxMDk5MTMxMjRmNWIwODc5YTYxNmMgcHkzaworNjU4NDUgYjBlM2FjODZjZGQ4MDJhMzFmNWU2ZjI1M2EwNzExZDMwMDI2YTdmMSBweTNrCis2NTg0NiA3ZDY0ODA2ZmViMTU2MDhkNmFmMmVlYTk4MDA3ODE3NzBkNWI0NmJmIGxlZ2FjeS10cnVuaworNjU4NDcgNWUzZmFhZTZlZmM2NzE5ZDQ0YmMwZWRiM2IyN2JjMzIxMzhkZjU1YyBweTNrCis2NTg0OCAxNGYyYTRjYjU3ZGUwNDM1NzZiODc4YjI2ZmQ1MGExODZlMmU4NDRhIHB5M2sKKzY1ODQ5IDdjODFkNWFhNWY0MTdkMDg1Nzc2ODUyYzIyZmNkM2JkNzk2MjRjNmIgcHkzaworNjU4NTAgMThhYTkxOWRmMjQ1YWI5ZmVmMTE4NjI5ZTgxZmMyZmY0ZmNhMmVlNCBweTNrCis2NTg1MSA5NGE3ZmIzM2FmZWE1MjkwMDg4N2Y3MTA4NTcwNDg2ZTQ4NWFkNTBiIHB5M2sKKzY1ODUyIDQzYTg4NTg0NGFkOGQ0ZTE1MTZmMGRiMmFhZGVhMTBkNGY0NGY4YzEgcHkzaworNjU4NTUgNGRmMTIyYWRhNzZmYWY0NmRhMzBhMTgyZGUyYjdlZWZhNmI1ZTU4ZiBsZWdhY3ktdHJ1bmsKKzY1ODU2IDgzZWIyYWFhNWZhYWE0NDU5Y2E2ODMwN2EyNjNkMzZjZDcwZDkzMTUgcHkzaworNjU4NTcgMTRlODE5YmVlZWFiOGMwNGFjNjRjZTYxNWM3ZGEzZGQyNmUxMjUxYSBweTNrCis2NTg1OCAyMDlhNDU4MWJkOTE5YTAzNTQ2YmZjOWQwMzdmZjBkZmY4NjA2Y2UxIHJlbGVhc2UyNS1tYWludAorNjU4NTkgN2YwMzhhNDcwMGIxYzA4MDRlYzM5OTZlYWJjNWNiZmI0MTk5OWM1OSBsZWdhY3ktdHJ1bmsKKzY1ODYwIDgzYjJkMDdiNDc1YjUwMzA3YjQ4ZjZhZjU3MzllMTZiYWI2ODU4YmYgcHkzaworNjU4NjEgMjQ4MDYyMjk2NWU2MDA4Yjc4ZDUwNzRjMDg3MmRkOTVlZmVmOTk1NyBsZWdhY3ktdHJ1bmsKKzY1ODYyIDc1MTFmM2U2NzJhMjlmMzcyOTVkZTUzZDgxZWQ1MGNmZDQxMzYyM2MgcHkzaworNjU4NjMgZWEzZDEzY2Q3YzFlNmI2ZjVlNGRlNjczN2Y2NzJjMzRlNjA1OWMxZCBweTNrCis2NTg2NCA3ZWE4MDVkODc5ZTFhYjU3Y2IyODYyMTg4YTI0ZDExODkxZGUzNDU4IGxlZ2FjeS10cnVuaworNjU4NjUgMWEwNTlhYWZlNDlmMGU0Yjk5NGVjMTg0NDc0OGVkZTRlMzk0NGQ1OCBsZWdhY3ktdHJ1bmsKKzY1ODY2IGFhNjEzMjA5MzMyZDUxYWI2ZWM2MjliODJhZWYwZDcxYmNhYzkyZTggcHkzaworNjU4NjcgMjVmMDZhNzAzZjg5YTllODk2ZjU1MDg3NGRhZDFjZDNlNzQzMmRjOCBweTNrCis2NTg2OCBiZDM3YTE4NjYzOGYyODNkNDNkY2M1ZDQzZmFjMzc0ZDU5ZTYwY2MwIGxlZ2FjeS10cnVuaworNjU4NjkgZjA0YjcwM2YyZGRkYTFiMTE3YTE5NTU2YjAyOWRlNGY3Njk0MWZmNyBsZWdhY3ktdHJ1bmsKKzY1ODcwIDk3YTI0YzYwOWMyZWU4ODA0MDA5OGE0YzhmM2I5Y2FiYTAyYWE1ZjkgbGVnYWN5LXRydW5rCis2NTg3MSA2ZDIyZWU4YzczY2EzNDhjMTE0YTZmYjc5MzIyZmZiNGQ2YmNjZWUxIHB5M2sKKzY1ODcyIDQ5ZjUyZTI4NWE2NDAyYmNkNWY5ZDBlNTU4MDA5ZGQ0NWI3YWYyZWEgbGVnYWN5LXRydW5rCis2NTg3MyAyYjgyOWZmYTQ4MWI1NzQxZDBlMDQ4MWYzMDRjMDU5NWMzZjgxNjFhIHB5M2sKKzY1ODc0IDk2YTRjZGE2NWM1NTJmZmFkODNjM2M4YjVjYjQ5M2M4ZDE5ZmY0NWQgbGVnYWN5LXRydW5rCis2NTg3NSA1MTA5MTkwNzMxMTlmOTE5ZTI2MjM4ZGVmMTU5Mjk4OWYwN2FlY2QwIHB5M2sKKzY1ODc3IDZhYmFkYTA1YzMxMzEzNTkxMjQ2YjJhZjc4YTBiZTQ3ZWM2NWQzMmYgcHkzaworNjU4NzggZjQ5ZDkzMTRkNDM5MTExYTFmYzBiMjc1YzM3NDhiZDJlNjBiZWVlNyByZWxlYXNlMjUtbWFpbnQKKzY1ODc5IGVmMTk1NTg0NTUwOTRmYzFhYWI4M2MwYmZmMDRiOGQxYWUzYzkzZTEgcHkzaworNjU4ODAgNGI4ODA2NDU2MDc4NzFjMDA1ZjkwOWFhZmUyMTBlYWM4ZDBmZGI2NyBsZWdhY3ktdHJ1bmsKKzY1ODgxIGM3ODIzYjM1MWZiY2I3NTY0MDI5MGI5OWViOTAwZmEyYWU5ZTFiNjIgcHkzaworNjU4ODIgODJjNjk2ZjA0MjRhNDdlNDZhOGEzYThiNDBjODg1MTU4ZTBkODUxZSBsZWdhY3ktdHJ1bmsKKzY1ODgzIDk5ZTc4M2VjNzc4MTU4NzFjNjdhY2IyMTY3YzY3ZDlkNjQxYzIyYzIgcHkzaworNjU4ODQgYzFhN2ZkYjI0NjI4ZjI0M2UxY2YzMmViMDE3NDE4ODljMzJmMzE1NCBweTNrCis2NTg4NSA1MDRlNmQwMzBlODRjN2RmYzQ1OWY0ZWI2MjZhYmJhNmI0ZWYyZTUzIGxlZ2FjeS10cnVuaworNjU4ODYgNTAxMjU2YzU0Yzg0YTY0ODUxZThmNjdlNmM5MDExYzNlNWQ4NTI1NiBweTNrCis2NTg4OCBmN2E2Mzk2YjQ5NmYwMjJhYzk5NTY4NmFjNWQxOWI1NzNkYjNlZjJmIHB5M2sKKzY1ODkwIGU3ODAyNGFmMGNmMDNhNDdmZDk3NTg1ZjkxNDQzNmY4ZjIyMjlmMzAgcHkzaworNjU4OTEgYThmOThhNzI3MzcxMjEyMmFiOWU3NGNjNzM4NmU1YmM3M2IwNzc4NyBsZWdhY3ktdHJ1bmsKKzY1ODkyIGJlZTQwMDMzNmZkNWM3YTA0MzQwN2Q3OTU0MDJkZGU4YWQ4YWEyMjQgbGVnYWN5LXRydW5rCis2NTg5MyBhYmRlNGRiMzA3YTU5YzU2MTE4M2RlN2ZlZmNkMDM2NDljMjQ5MzNhIGxlZ2FjeS10cnVuaworNjU4OTQgMWFmMjExMjM2OTA0MzBkZTA3MDEyZGJkMDgxNWYyOWE5NWFjNzIzYiBsZWdhY3ktdHJ1bmsKKzY1ODk1IDhmMjE1NmIxNWJiOGU2OTBjYjQzNjIwNjc5MWUxZjZmNjM5MTU2ZTYgcHkzaworNjU4OTYgNmNkN2IxOGJiNzQyYTM2YTJjNTRmY2UxNWU4NWY3N2M3MDExNDZmOSBweTNrCis2NTg5NyAzYTExZTc5Yjk0NzE1ZGRkNzEwMzY1YTM5OGVmNjEyNzUyMDhmYzdlIHB5M2sKKzY1ODk4IDBmZTZjYjBjMzEwZDcyOWRhZDUwYjM2NWNiNDFhZDYxZThlMThkYTAgbGVnYWN5LXRydW5rCis2NTg5OSA2ZDZkM2UwMzc1NTAzY2QyNWJlNzI3MzZjNWM2ZTU4NWYwMGFiOTFkIHB5M2sKKzY1OTAwIGQ0MjYyOTE4NTM4MmViM2Q3Y2ZkYTFhNzBhZjM4YWIzNGE2NjJlNTkgbGVnYWN5LXRydW5rCis2NTkwMSBjMTI1ZTc1ZDIxYTA0ODc3NGY2NWM1YTdjODRlNjM5MTczNjM2YWMwIHB5M2sKKzY1OTAyIGEzNmI2YzFjZWM1Njc4MjI2OTY3MTg0NmRmNjQ3MGNmNzQzNDA4MGEgcmVsZWFzZTI1LW1haW50Cis2NTkwMyBlODk0MjA0YWRmYmRhYWEyN2QwNTM5ZWFkMTU5MzY4YmJjMjUwNTY0IHB5M2sKKzY1OTA0IGFlNWI3M2M1MjA5N2U2YTM0NjZmZDVlMGVmZTQ4YjE5MGU3YWQ3MTUgcHkzaworNjU5MDUgNTFmMmY4ZmVlNWM0NTBkMjFmZjZhYzg4MDE1ZTc1NzY4MzgyZjAxMSBweTNrCis2NTkwNiA2Y2M4OWM2MGY3NGQ2Yjk3NjVmNzZlOTU0YTc1MzMzMDc3N2M5N2NiIHB5M2sKKzY1OTA3IDRmNTAyMjgyMzE5OTBlYTFkZWI5Yjg5Mzc2YzBhMDg1NjBmMjRiYTAgcHkzaworNjU5MDggNjdjYjMzODgwMzc3YmMzYWRlMWE1OGM4OTYyZDZhZTIzZWZlNTA1NiBsZWdhY3ktdHJ1bmsKKzY1OTA5IDExZTcyZWJmOTA2YWVmZWJhNmQ4MTNmNTI3NjY4ZWNkOWY3Y2IzMzMgcHkzaworNjU5MTAgMWJlNzg5MGNkNzU5NzgwMTZlZmQ3NTg5ZWM2NGNlZGZjMTNjMDhkNCBsZWdhY3ktdHJ1bmsKKzY1OTExIGMwMzAyNGRiODAxZjk2YWQ2NTk0MDE3MDgwODI4ZDNiNzQwYzQwNTQgcmVsZWFzZTI1LW1haW50Cis2NTkxMiAwNDBkOTU4MDUwMGNkYjY3MjM5OTY5ODYwYTM4YTllNzAxZDE0ZDgyIGxlZ2FjeS10cnVuaworNjU5MTMgZTk5NjE0Y2EwMjA0YjdlNjAzMWJmYzIyN2Y4ODI2NGQ3MGFlZWJiYyBweTNrCis2NTkxNCAxY2I5MDhhMDQzYjNmMGY5MzgzOTc3ZTU5N2NmNGE2ZWViNWMwMTQxIGxlZ2FjeS10cnVuaworNjU5MTUgNzYwOGFmZTExZmI5NjA0OWU3ZTQxNmZjMGNiZmY0YmFkNzIxMWIxYyBweTNrCis2NTkxNiA4MTMzZmJiNzQ1ODc1NGE3MjVlNjcyNTAzNjAzYmIyZWQ0ODE4MWU4IHJlbGVhc2UyNS1tYWludAorNjU5MTcgYjE5OWYzNDE5ZTY1ODAyYjlkZDY3MmJkZmQ3OThmMTZiNjBkYWY3MCBsZWdhY3ktdHJ1bmsKKzY1OTE4IGExOWQ2N2Q3N2IyMmY3ODdiZTE2NWM1MjA5NzhlMmI2Yjk5ZGE2MjkgcHkzaworNjU5MTkgODhjYTUxNzU0NmZkMDIzNTdjZjcyMzNkYzk0N2JlMGNmM2I0NTE1NyBweTNrCis2NTkyMCAwMzNkNjNiZjcwOGVhMmFkNDFjNTJkNGI4NDE0NmRhMjMxZmE5YzY4IHB5M2sKKzY1OTIxIDAxM2Q0ZDg0MDdjYjlmNjhlNzY1NmQxMWY2MmI3OTE4YTk1MjFlNDUgcHkzaworNjU5MjIgYzYyODYyZDczZjllYzY0ZDY1NTQ5NGNmMWY2MTQ0MzQ0NmYyZGVhMiBsZWdhY3ktdHJ1bmsKKzY1OTIzIDczMTY0NTY1YjkyMGUyMDU5NmQzM2E5OTNiOTllZDdhNzkzN2U3NjUgbGVnYWN5LXRydW5rCis2NTkyNiAyN2QxOWI2NjUwMzU3OWQ4YjNhNDFlNTJhY2FiOTA3OTlmMmJiM2RmIGxlZ2FjeS10cnVuaworNjU5MjcgNTA5ZTMwYTc5NjhlMDFiZTMyOWVjMTIxNTQwYjNlNzU1ZmM0ZTU2NiBweTNrCis2NTkyOCBjNDExY2Y2OTQyODk2Y2MyMTYwODlhNjk1MDY0Njg0NDMyMmYyZWE0IHB5M2sKKzY1OTI5IDAxYjllMThkNjlhYzQ0OWVlOTU5YWI1OGExYTFhOWZkY2Y4YjFiNDkgcHkzaworNjU5MzIgYTBhYmFmZjk3ZTAwMWE0YjkwZTQ2ZGYzNjdkN2YxMmFjNTBkYjllZSBweTNrCis2NTkzMyA5NTlkMWFhOGI1OGFlYmUzMjYzMGVmMDJiZDQyYWVhZmVmMTk2MzNiIHB5M2sKKzY1OTU4IDU3YTg3MzU2NDdjZjg3NDVkMGI2MzI2NTBhYjQ4NDQzMDBjZTY0ODMgbGVnYWN5LXRydW5rCis2NTk1OSBhNzcwMjJkYzNmNjFkMjIxZDE1OGZhOTgxN2Y0MGYyNTI3YWNmZTMwIHB5M2sKKzY1OTY0IGUzOWQ0NGFkYjYxODA2Yzk2OTJjM2MwZTBhMjMyNDU2ODdhNzUzNGQgbGVnYWN5LXRydW5rCis2NTk2NSBhOGQ2OWMxYTNmNGVmZDM4NzY4YTM3OTM4NjNiZGVlM2VjZDcyNjZhIHB5M2sKKzY1OTY5IDRmYWFiYjE4NTYyYzYzZDcyNmQ1NmE3YzBlMGNkNTQ1ZDlmMDk2MDcgcHkzaworNjU5NzEgNGIxZjI2MmNlYmRmNDAwMzI3MTlmMjUzN2Y5ZThiMGYxMGVmZjczNCBsZWdhY3ktdHJ1bmsKKzY1OTcyIDJkYzY0NjlmYzRjNGQ0YjNjNmM3MzhmODk0NzUxYzM0YzgzZjEyY2MgcmVsZWFzZTI1LW1haW50Cis2NTk3MyAxOTQ0ZDMxMDQwZTMwNjYxYjNiYzZkY2M5YmMwMzhiMDRjYzMzYTVmIHB5M2sKKzY1OTc1IGFmYmZkOGYyMTRkZDEzMzdkNmQxNzVjOGNmZmFmYWQyZTdhNTAxZjEgbGVnYWN5LXRydW5rCis2NTk3NiAyYWE3OWFkNGViODUyZGRkZDZhN2FhNWEwNTI3N2U4OWYwN2E3OTA4IHB5M2sKKzY1OTc3IGJjZTAzZjg3ZjY1ZGIxYTEwNDRhMTRjOTg3YWM4YTBjMDkwZjUzMTYgbGVnYWN5LXRydW5rCis2NTk3OCA0NmMxYmNjNGMxZDMwMzc0MDU1M2FiNjg2NGJjMGFmNTJkODYzMTVlIGxlZ2FjeS10cnVuaworNjU5NzkgZDk1MmU3NTNjNjExZjc1YWFjZGY1NzUyYzVjMzRlNTY1MDM0OTIzZiBweTNrCis2NTk4MCA3NDg5OWU2Yzg3YTVjNWRhNmFlYjljM2U1ZTgxODI1OTdhYmQwNGYzIGxlZ2FjeS10cnVuaworNjU5ODIgZjk3MGE0Zjc1NjBmZmEyMGU5NGI1NWE1ODk2N2RkZDRmYWE4OWY2OCBsZWdhY3ktdHJ1bmsKKzY1OTgzIGUzZTUwNzM1MGVkNGQ0ZGU4OGYxZGExNDNkYTAxNjI0Mzg2ZmIxZjMgcHkzaworNjU5ODQgMjA0NDMxZDQ0Y2RjNDkyODRjMWMzY2RkODE1YmU3ZWRjZjRmNTk5NiBsZWdhY3ktdHJ1bmsKKzY1OTg1IGNmZDc5YTRjMTYwNDMzZGQ1NDg1NmM0MjhlZmQzNDFkOTc1Y2QxMTggcHkzaworNjU5ODYgNzVmNjRmZDFmMTEzNzg4YmVjNGZlN2VjZWE3ZGZkYjhlYmFhZGYxYiBsZWdhY3ktdHJ1bmsKKzY1OTg4IDY1YjJkZDQ2ZTE3MTE4OTdiOTMxM2NiYzg4NDFlOTczMTI1ZDhlMmEgcHkzaworNjU5OTQgYjUyMTM4M2I4MWE3MTU3MTVlYWY3ODk1NzNkOTlhNzUzZWVhNmI4YyBweTNrCis2NTk5NSA5NjllZGMzYjcwN2YzYmZhODQzYjE1Nzk2MmViMmM0OTk0OGFmYzZiIGxlZ2FjeS10cnVuaworNjU5OTYgZTdiODU4OTBlOWIxMDczNTA0ZDE1ZGMxMzBiMjUxOTllN2JmNmRjNyBweTNrCis2NTk5OCA1ODdjZDRmNjZjMmRjZDk1ZmJjOTUxNDFjZmM2NWY3MWY1Yjg1MmFiIHB5M2sKKzY1OTk5IGRmZTU0NmI2NmVlZmQ3NTgzYWQ1MTZjZDY3MmEwNzE0ZGJlYzYxYzYgcHkzaworNjYwMDAgNzZlNzFjZWNjNGQzMTNjYmMwYTZmM2UyNTMzMjg4MTU5ZTg3NjAxMyBsZWdhY3ktdHJ1bmsKKzY2MDAxIDA3ZWM3MmNmMTljN2Q2MWM4YTJkMjY4MGVmMDI5NTk5ZGRkYmJlYjcgcHkzaworNjYwMDIgN2JiMWM2MGVhZjY0ZjU5ZTViY2VjODVmNjI2NmY0MmY2ZjcyNzZhZiBweTNrCis2NjAwMyA4NWMwOGNmMDhiMmI1ZWVmNzUzZDRlZGVjM2JmMTk3OGQ0MDdkZTJiIHJlbGVhc2UyNS1tYWludAorNjYwMDQgZTE0NTUyYjczMTdiY2M5NTU5NDNiYWJkZjM1OTIzMDZlNGIyZTAxOCBsZWdhY3ktdHJ1bmsKKzY2MDA1IDY4MmU5YTQyYzE1ZDUzYjQwZjAyYmYzNGIyYmNjNzc5OTYzZTkxNDQgcHkzaworNjYwMDYgYjE2ODJjNjkzYjlhMTVkODc5ZDY3NTUyMWY2MWQ1ZGQzZDk3YTc0MyBsZWdhY3ktdHJ1bmsKKzY2MDA3IDVjNzVhMzNlZjViMjc2MzYzN2Q4ODgzYzVkMWNhNmM1OTI3Y2U0ZTIgcHkzaworNjYwMDggZDJiYTM2YTdhNzEyNzQ1Y2I4YzU3MDEzNzRlZmEyNmY3ZWE4YTk2MSBweTNrCis2NjAwOSBhZmI5ODA4YjBmMzBmYTI1YjM2NjhjNzQ4NWRjYjIxYjAxMGUwNDQxIHB5M2sKKzY2MDEwIGEyNzIwMzUzZjBkMzQ5ZDc0MWU5YjU4YWMyM2QyYzFjMmFlOWM1ZjQgcHkzaworNjYwMTEgOTg0ZTFjNjAyOTc5MmM5ZjI5NDU3NGFhNmQzYzU2NjgyM2ExNjFmZSBsZWdhY3ktdHJ1bmsKKzY2MDEyIDJhNmFlN2U4YzdjMzZlMDMzZjIwYmFmMzU5NmE2ZjZiNmIzMTJkMmEgbGVnYWN5LXRydW5rCis2NjAxMyA2ZWExYTcyMGIwNTdlZTFiYzhlZjE2OWUwNTQzYmMyNzYxYjMzOGQyIGxlZ2FjeS10cnVuaworNjYwMTQgNzBlZGFjODkwZjJiNmRmNjJkYzkzMDhmN2UwNTE0YThkYjNjYjg3YSBsZWdhY3ktdHJ1bmsKKzY2MDE1IGMwMDE5ZDQ1NTUxZGM3NTBjNzY2NmYyMzA5ODM3YjFkNWM3OGJlNTEgcHkzaworNjYwMTYgYzk1ZjM4N2VkMWY0MjZjZTY1MjFjMDhiNjU5ZjZiMThhZjMyM2Q3ZCBweTNrCis2NjAxNyA1OGQyOTVlNzgwMGY3YTRmMmZiN2EyZjIxZjVjYTFmOThlMzBhMjVmIGxlZ2FjeS10cnVuaworNjYwMTggZGU5NTRkZDY3OTdiNmU2Nzk0NWRhZTcxOTljN2IxMjE1NzRhZmZmOSBsZWdhY3ktdHJ1bmsKKzY2MDE5IDg4MTE5ODNkZmNhZjhiMjI2ZjQzNjczZDNkODY0NTA1NjFkYWRjNjUgcHkzaworNjYwMjAgMWE0OTIyZmE1MTYwNjU5MjFhY2QwNzQ4N2ZjZWEyMmZjNzUzYjliMiBsZWdhY3ktdHJ1bmsKKzY2MDIxIDY3OGEwZjBlNjFiYzVkNmJjNTI2MWVjNzNiN2E1NTE0MjZiY2E0NjggcHkzaworNjYwMjIgMmE0N2IzYmIxMWZkOGJkOWVhOThmMmU2NzE1NzAzZDkyMDI5ZmI2YiBweTNrCis2NjAyMyBkZjYyNGRmNmVmYTNjZGEwNDFlYTRjNGEzMGJmYjk1ZmI0ZDhhNTRiIGxlZ2FjeS10cnVuaworNjYwMjQgM2RjNGRmYTNlYmExNjhjZmJhNDAxNmY5YmY3ZTAzOWQ4YzM0MjM2NyBweTNrCis2NjAyNiA2ZmFjNjM2MTMzZjAxMDZlZTRhMjllMTQ4NjI1YTI1YTA1OWI2MTg1IGxlZ2FjeS10cnVuaworNjYwMjcgNGZiN2U3YjJjOTYyYWMwODY5YjlhZDRkZDI1YmFmMGJjNTg2NjhkMSBweTNrCis2NjAyOCA5ZWIwY2QzMDMyNmQ4YjY1NDRiZGIwYmJmYmI5NWFjYmRiODVmZmQyIGxlZ2FjeS10cnVuaworNjYwMjkgZGQxNzdmNTc2YmU4YTk1ZTZlMWM4YThhMWVlOWE5ZGEwM2IwNTI3YiBweTNrCis2NjAzMCA1YTIwNTkzYTgxOGZjMjMyYWJjZjYyMzUzMTIyZjg2ODRmNDEwOWU3IHRsZWUtYXN0LW9wdGltaXplCis2NjAzNCA4MmY3M2IwYjVhMzA4ZTk4MmM1MDMyMmY5ZmNkYTM5NzNiOWYyODQyIHB5M2sKKzY2MDM4IDU0OGRjY2M0MDA4ZWQ5MzRiYWZhZDVmN2I3MTBjYTQyZGJiYjIxYWIgcHkzaworNjYwMzkgZWRkMmNhODk0YTY3ZGM2YjRmOWNjOTJkNjhmYTQ1YTc3NTk1MDMzNiBsZWdhY3ktdHJ1bmsKKzY2MDQwIDAzYzIzYzUwNjU0ZTVlM2E2MmE4ZmVjNmY0YTdmYjRkMWIyMWNmNmMgcHkzaworNjYwNDEgNGRiMWY1MDk4MTc1YWJjYzU2ZWFkNmYwNWQ4OTIxYjVjM2U0YmIyYyBweTNrCis2NjA0MiBkNmU4NmE5NmY5YjM1MDg5Y2IyYTk3NDYwNzNkMDVjOGMwYWM2ZTA1IHB5M2sKKzY2MDQzIGQwMWMxZDc2ODg0MTUzNDBlMzJiNmI3MzE3ZmMxZjk2YTc4ODA1ZGQgbGVnYWN5LXRydW5rCis2NjA0NCAxMmQyNzYyMDc2YmFhNjExZjc2OWJiZTgwNmZlZGQyNTg3NjA1ZmVlIHB5M2sKKzY2MDQ1IGM0MmJmOThiMjYwZjM1MjA0Njg0Mzg3MjU2MjQ3NDQ1ZTAyNTM2MDUgbGVnYWN5LXRydW5rCis2NjA0NiBkOWZlMjllOTVkNjAxNWI3ODM3NTRjNDJkYWI3NzM3MTFhODY1M2I3IHB5M2sKKzY2MDQ3IGRlNmZiOWYzNDUxMzI3NWQ2MzZmNTAxMjg0N2MzNmEzNmM1Y2ExOWQgcHkzaworNjYwNDggNDdhODAxYzI5ZjEzZDQ4ZTZjMGZjZTc0ZmY5OWQyMzQ3YmRiZTI0YSBsZWdhY3ktdHJ1bmsKKzY2MDQ5IGFhM2M5MGNlMTkzMmJhZTc3Y2E5YTY0OGQ4MTFjODEzMWY5NzNmYzAgbGVnYWN5LXRydW5rCis2NjA1MCBmZGQxZWUyMGFiODZiMDk4MDdkMTlhNDQ3ODEwZGRhNmYwNjM5ZjZlIHRsZWUtYXN0LW9wdGltaXplCis2NjA1MSBmMjdjY2ZkZWE4MzQwMTIwMzhjYmEwODI3YjM2ZDc0N2I1OTk0ZjdmIHB5M2sKKzY2MDUzIGVmYzQ5ODYzY2Q4ZmY5YmIzOWQxMzZhZWI1ZThiZDIzOWQwMWUyN2EgbGVnYWN5LXRydW5rCis2NjA1NCA0NzE5MmQwYjczMWYxMDQ5NmYzZTYyMzJkOTliNjVhNTBjZDZjOTM3IHB5M2sKKzY2MDU1IDZjZWI3Yzg5ZTc3NmJhOTI0NDk5NzY5YzY5NjliNWUzYjA2N2EwMTkgcHkzaworNjYwNTYgYzU2MmM4ZGFlNDlhNjA1ODcwZTZlOGFhNmZhN2I4ZTJlZTkxN2NhZSBweTNrCis2NjA1NyAyN2UxNDJkOTlhNzE3MzkzNmE2NThmZGIwM2NlZjg4YzEyNjdkYjg2IHB5M2sKKzY2MDU4IGJiZmZlMDkxNGM1NmU2MTBmMTE4ZTEzYmVhYTA3OWIxOTE4YmUxOTIgbGVnYWN5LXRydW5rCis2NjA1OSAwYzY1YzgwMjc1MmEyYjgyMGQzZWIzYmRiZjBjYzY1NzY2NjIxYmNlIHB5M2sKKzY2MDYwIGE4YzUzNTgwYzVlYzQ3MjI1YzE4ZjRjNTFiYWZlMWMzZGI0YWIxM2EgbGVnYWN5LXRydW5rCis2NjA2MiAzMDgzNGI5YWExOTM3ZjFmZjgyZDQ4Nzc0MTMxM2RhODUwNTJhMGE4IGxlZ2FjeS10cnVuaworNjYwNjMgMDEzMTM4Y2RiODczYjJlY2MxN2ZhNmI0MTRjZjM0ZjRhNzM0ZWY4YyBsZWdhY3ktdHJ1bmsKKzY2MDY0IDAzZTIxNmRjOGZlY2NiOTFhNDEyNzQyNjAzOGRkYzc0MGIxNzA1ODggcHkzaworNjYwNjUgNTZlZDQ0NWZhNjFlNjAzNGQ0M2IyOWNkNzI1MTk1NDZmMThiM2JmNCBsZWdhY3ktdHJ1bmsKKzY2MDY3IDk2YmM1ODk2YTI0MDU1MWNkYjc2NDM2YmZjZjdiNDk3NDFiNDUxYTAgbGVnYWN5LXRydW5rCis2NjA3MSBhMmYyMDI4YjczZWQzYWJlNTY4YWI2OTBiNDZhMGM0YmU5YTQ4ZTBmIGxlZ2FjeS10cnVuaworNjYwNzIgODRiZGQ1M2UzOTA2NDg2ZGViMWMxNmZmMWZlMzg1NzMyNGVmMTdjMyBsZWdhY3ktdHJ1bmsKKzY2MDczIDk2MDU4OWQyYTEyZDlhZDQzNzhlNTc3YzcxZmFkOGNiZDZkZThiMDkgbGVnYWN5LXRydW5rCis2NjA3NCBmYTdiNjFkMmJiM2Q3Y2M3Y2I3ODFlNjBmYmE5MTcyZDQyZTRkNGY1IGxlZ2FjeS10cnVuaworNjYwNzYgMTFkOGZhM2M4OGQ4ZTgzNjgxZGMzYWVjNDFiYzYxZmRmODFiYTA3ZiBsZWdhY3ktdHJ1bmsKKzY2MDc3IDQ4YzVlYjUxMzM3MGQ4ZmE4ZDRlMmU0OWQ5YzU3YTVhNDQ3NjYwYjcgcHkzaworNjYwNzggYjUxNTY5MGIzNzlkN2RkZWFiNTI4M2VhM2UwNTcxYzMzMDBhMmRhMyBweTNrCis2NjA4MCBmNjc5NjNjZDQzOTUzY2MxZDllZTA1MGExYjE1YWM4YzQyNzhlZjljIGxlZ2FjeS10cnVuaworNjYwODIgYTFkOWU4M2JjNzZkYTNhZWUyN2RhNGY5N2RkZTJkYTkwZjg2OTBhNCBsZWdhY3ktdHJ1bmsKKzY2MDgzIGViMTM0ZWVlMzIzMjI2MDAzNzNmNTQ4ZjY4NmIzNWJmOTBkYzA3ODQgbGVnYWN5LXRydW5rCis2NjA4NCAzNmFkNWU3ZTM5YjRmYmQ5NmNjMTk4MTRlZGM3ZTcwNmEyMjVhYTEzIHB5M2sKKzY2MDg1IDljMTc1Zjg4NjBlMjNkZjM2ZTE4YTBkMzE4MmRhMGVlYTQ4ZDA4ZmUgbGVnYWN5LXRydW5rCis2NjA4NiAyMjFkZTEzOTQ2ODExM2NmNTg5MTExZDg0NzMyNjRjMmJiMTNmODQzIHB5M2sKKzY2MDg4IDgxYTFhMTU0NTE3MjJiODE5NWY1Nzc0YTZkYzk0ZGM1NTNhZGZjMzEgbGVnYWN5LXRydW5rCis2NjA4OSA1ZGE2ZjIxY2Y4MDU5NDIxZDFkMjQ2NDg0Y2VkY2M0ZjhkZDU1YmZkIHB5M2sKKzY2MDkwIGZjMTFhOTA0ZjZjZDE3OTBhZjkyMGU4NDYxMjM5ODEzNDVlM2I5ZDcgbGVnYWN5LXRydW5rCis2NjA5MSBiZWU2ZWI3Njc3NDI3ZjgzZGE5NTY2YWI2NGE0Y2E3MGVjODBlM2ExIGxlZ2FjeS10cnVuaworNjYwOTIgNjI0YjQ0YjdjZGYyOTIxODRmZjc0MDFiODBkNjc1NTRiZGQ5MTVlZCBsZWdhY3ktdHJ1bmsKKzY2MDkzIGJlNjNlYzc0OGVlMDY0YTIwNmYzYWNjYzAyYWJiMWMxNDdhMmZiYzAgbGVnYWN5LXRydW5rCis2NjA5NCA3ZTE5NGI5Y2MwYTJiNGQxZjI0ZDBmNDljZWRmZjVjZmIwOWZiYmFlIHB5M2sKKzY2MDk1IGI0YzE0YjcwZmUwZjgxOTlhYzRiZmQxMjk2OWZiZDY2M2MwNGIzZTEgcmVsZWFzZTI1LW1haW50Cis2NjA5NyA3YjM5NTAxYjBhNzYyNDdjMDkyMDZkNzBlYjM5M2U5YjA4M2ZlYmE3IGxlZ2FjeS10cnVuaworNjYwOTggMTNmZGY5OGVhMjkwMDEzMDcyZTc2YTFlMDk3Mjg4M2M0MjBjODZhYSBsZWdhY3ktdHJ1bmsKKzY2MDk5IDE3NmM0MDlmZDc0N2U4MTJhMDY3MmRkYWE4ZGFjMDAwMWFmMDU2ZTcgbGVnYWN5LXRydW5rCis2NjEwMCA4Y2RhNjE1ZWYyMmJiNzQ4ZTBlZTM1OTQ0ODE0ZWQ5YWY5ODNhZjNkIGxlZ2FjeS10cnVuaworNjYxMDIgNWZhMGQzMWE2NzFiNzgxMmIwY2VmNGUzOTM3NjJhNjNmYmYxY2U2MCBweTNrCis2NjEwMyA1NzY0NDE1MjdkNGY3Y2MzZGI3MDY5MmQzNDQ2YTE5YTIyYjExODkxIGxlZ2FjeS10cnVuaworNjYxMDQgZWQ1OWYzYjY3YjNhZTNjMTE4NzRiODc1ZWI0YzJlMzllNjg0M2Y3YiBsZWdhY3ktdHJ1bmsKKzY2MTA1IDlkYjNmZTc4MGJmYzZhMTAyMGU4NDZjZWFmNWE4MGMwMjg4ZDJlZjAgbGVnYWN5LXRydW5rCis2NjEwNiA5MjUxNTMyMjU1NzBjM2I4ZTIyY2U1ODkxZGNjOWI3MWY0NDY5M2I4IHB5M2sKKzY2MTEwIDUxOWUwNDc1OTkxZjc2YjgxZDUzMDE1ODQ3NTYzMTAzOTU5YTZmOTUgbGVnYWN5LXRydW5rCis2NjExMSA2OTZmNWQ4NDE5ZjIwOTM5NWIzZjYyMTcyMzQ3OWVkNjUwOWM0ZWIwIHB5M2sKKzY2MTEzIDdlY2VjMWIzMGMzZjQwNTMxNzEwNWZkODM1ZDU4ZjAxNDJjNGIzZTIgcHkzaworNjYxMTQgOTg4NjYxZmZkMTAyOWNiMDM3ZjYyNGZlMjQ0OGMxMDhjZjg1YjliYSBsZWdhY3ktdHJ1bmsKKzY2MTE1IDUxZjc5NWM5NTMwZWMwYmNiNDQxNmU5YTljNmMwYWJkMzA1NWExY2EgbGVnYWN5LXRydW5rCis2NjExNiBhNWEwNzFjODBmMmQyNTI5NGUxYjQ3MjM0MTk1MDJjOTgxYjU3NDI5IHB5M2sKKzY2MTE3IDEyZmIzNjI2ZWU1OWYxOGRlZjgyN2UwNTI5NGQxMjE2MzRiMTg0ZjMgbGVnYWN5LXRydW5rCis2NjExOCAzN2E5ZjY5MGE5NGE5YWNiMzkyMzI3NTE2ZTQzMjMwNTk2Mzg1NDVhIGxlZ2FjeS10cnVuaworNjYxMTkgYjUzNjVmMzQ2NDBmMmM2NjRjMTkyMjk0ZWI2MDM1NTI5MWZjZTdhYyBsZWdhY3ktdHJ1bmsKKzY2MTIwIDY2ZTFhZmQzMzQ1ZmRiMGJiNGMxZjk3YTlkMTRkMGMxYzBjODE4ZDQgcHkzaworNjYxMjEgMTZjMDNmN2NiYzIyMWY5NDA1YzEzNTliYjJhNzNmZmQ0NGYyMjg5MiByZWxlYXNlMjUtbWFpbnQKKzY2MTIyIDMyY2U0MDJhN2UzZGYyMGMwZjVjZTUwZTkzNTQ4NzRiMjQwZGJjZWIgcHkzaworNjYxMjMgZTYwMjFhYWQyZGUyZDVlYzk5NGY2NzY2MTAyZDFlNWIxMjhlZTVlMCBsZWdhY3ktdHJ1bmsKKzY2MTI0IDY4MGIwNzZkMGMxM2EwM2YzMzRhNjc0OWZhNDQ2M2E1ZTNiMTE1MTkgcHkzaworNjYxMjYgNGZjNDgwYmUxZTRkMmM2NzhhMzkyZDQzYTM5YTQ4NzYyZjE5ZjkzNCBweTNrCis2NjEyNyBiYzU4NWI0ZDQ2MDZiNTJjM2M3ZTUxZDk2MmU1ZmYxNzhmOGM4YjZiIGxlZ2FjeS10cnVuaworNjYxMjkgOWVkMzI4N2JlZWYxOGE0YjdiYWJhMDQxMDFkYmMyMmRjM2FmZGY4ZiBweTNrCis2NjEzMCBhYmE4NTk4Yzc4NWNhNTNlMzM2MjFkMGE4YWE0YmEzNjQxNDljZjIwIHB5M2sKKzY2MTMxIDIzNmZjZjI5MzljN2Q1MjM4OTM0YzZlMGQ4MzAwNWJkMmQxZjVkMTQgcHkzaworNjYxMzIgM2I5NjA4MTE4ZjhkODdiODgxMWIzN2E0NmEwNzQ5MDk1MjQ5MWZmOCBweTNrCis2NjEzNCA4YTEwOGQ1NGVmMDNjYWExYjhkN2JhODIwNzYyZGYwYWViMzU0YjA1IGxlZ2FjeS10cnVuaworNjYxMzUgZDU2MzYyMWQ3NmRiNGY5NGU3NDVlYmM2MmI5MjE3OGVhMzNkYjJjYiBsZWdhY3ktdHJ1bmsKKzY2MTM2IGNkMTg2MzA2ZjM4NWFjOGNmYmU2MTg3OWY0ODRjYjExYmZmMDlkNTQgbGVnYWN5LXRydW5rCis2NjEzNyA4YzRmNzUwNjYxZWMzOTQ0MDQ5ZjBiZTUwNTIwZjRkMDcxODk4MWY5IGxlZ2FjeS10cnVuaworNjYxMzggNGMxNzcwYTU1YTg1ZTVkYTMzM2U3ZTRlZGUwYWUxMzA0Y2I1ODhjYyBweTNrCis2NjEzOSBjYWE0MWUxNjFiMDQxMWY0MDZjNzNlMThlODhjZDg3ZjE3NTkzYjQ5IHB5M2sKKzY2MTQwIDNiZGM0NmZhZWY0ZGE4YjA2ZDA3Mjk1Y2NmYWQ4YzA3MmM2YzEyN2MgcHkzaworNjYxNDEgNGIyOGJmNWVlMzkzYjQzYmE0OWJiOGU4NTVjOWQxNjA5MGQ2NTdkNSBsZWdhY3ktdHJ1bmsKKzY2MTQyIDk5ZWUzYjc3YmMwZGIyZjJhZTJhM2E4N2IxMDU4NDNmMDA1MDE1OTAgbGVnYWN5LXRydW5rCis2NjE0MyAxODk3NzQzYjMxNWRlMmFmNTRiYmNhNzA4YzJiYTIxNzUwMTBlZWMyIGxlZ2FjeS10cnVuaworNjYxNDQgNGRhNGY5Njc5NjcyNTc0NGZjMmQ0ODdkMmY1MjVlYzM0MzQ0YmZhZSBsZWdhY3ktdHJ1bmsKKzY2MTQ1IDM3NzlmYzlkZmU1ZjczODkwYWFhNDZlM2M3ZWYxMmU0ZTA2ZmQ5MDAgbGVnYWN5LXRydW5rCis2NjE0NiAzODg4OWNiNDUxODgxMDVkNzFmODM5YzUzNmI1NmNmNDMxYWY1NjdhIHB5M2sKKzY2MTQ3IDdhNmU2YTA0ZTI4ZDE0OTJiYTExYzA3OTNjZDg4ZTQ5ZDU5OGE5YjcgcHkzaworNjYxNDkgZDgzY2U0YjU4MWU2MTU2ZDNhN2JhZWEwMTYxZGI0YTliNGZlOTgyOCBweTNrCis2NjE1MCBkMGQ1M2RlOWQ4MmUyZjFlOTc4YzA1NTFjNDc2NWUzNzI3MjZmNTg0IGxlZ2FjeS10cnVuaworNjYxNTQgMzgxN2M5NmZkNTQwOGEwYjNmNDE2ZTdkNjMyZWZmNjhhNmQ2ODc5ZSBsZWdhY3ktdHJ1bmsKKzY2MTU1IDFjMTRjZTA4NTQxNTFlYTA0ZTE2MzFiNjZjMTk0YWFhNmFmMzVmMDAgbGVnYWN5LXRydW5rCis2NjE2MCBiYTVjNGNlMTJiYmRmMTZkNTk0ZTAyNjg0YjJmYWMxOTFjYzYxMjhlIHB5M2sKKzY2MTYxIDc1MGRhMmQxODA4OTJlYTk4YjJlMGRhZmZlMGUzYWFlYjM3NjdhMmMgcHkzaworNjYxNjIgYzdmZDBlODgxYzQ1MzAzYWQ5YTQxMjkwM2NhNjExMDgyYWVmNDE2MyBsZWdhY3ktdHJ1bmsKKzY2MTYzIDg4YzkzYTliNDEzNzNhZDFjZTJhNjg5MTFlODNmNjQ3MWE3MmJjM2UgcHkzaworNjYxNjYgM2I3NGQxNDYyZTNhMGY3ZDRkNjMyYTUwOTIyYTA4Mzg2NTI2MzIzZCBsZWdhY3ktdHJ1bmsKKzY2MTY3IGYxYWU2OWNkZDRmZmRiZmFiNjdhYzYwOGMzM2NjZmE0OTA3ZmFhNmQgbGVnYWN5LXRydW5rCis2NjE2OSBkODI2YTc1NTcxYmM5NzlmOWQwNTk3OTg3MTg4N2QyMjIyZTVkOTk5IHB5M2sKKzY2MTcwIDc4NGQyNGE1Y2U3YmFjY2Y5N2M0MzhiMzk0ZTYxOWVlMGJkMWM5MTYgcHkzaworNjYxNzEgMmQ4MGQwMGIxZWYzNjAzMzBhN2NlMzQ4NDc4ZTA2MjZmODM5YTM3YyBsZWdhY3ktdHJ1bmsKKzY2MTcyIDNiZDkwMDJlNzQxZmZjMzA2NjJiM2U4MGI5NGY5YTcxMTdjYzIxOTMgcHkzaworNjYxNzQgZTJlZGMxYzExZTUwNzc0NDI5NTI1MmYwMjg1N2EzMmNlZDY0YTI4ZiBsZWdhY3ktdHJ1bmsKKzY2MTc1IDYzNTZhNTQxNGQwMTljZmE5OWM0NDNkNGMzNDdiYjk4NGZkMjMwMTggbGVnYWN5LXRydW5rCis2NjE3NyBiZjA0M2QwZGI3ZGZjOWZhOTdhYWJiNTVkMjQ5ODIyM2Q3OGZmZDY1IGxlZ2FjeS10cnVuaworNjYxNzggNzVjNWEyYzkzNzZlOWI0NWQ2NDFjNzcxMTM4NzI1NzBlMGRmNDg0NiBweTNrCis2NjE3OSAyYTYwZjdiNDIzMjhkYjE0YTJlOTdiNDg5NTBjZWNiOGM1ZDRmYTUzIGxlZ2FjeS10cnVuaworNjYxODAgNWZkMzliODRmYzI5MmM5ZTUwNmZiZjBmNDAwOTEyNDRmMjQzNjMxMyBsZWdhY3ktdHJ1bmsKKzY2MTgxIDRjNjgzZWM0NDE1YjNjNGJmYmM3ZmU3YTgzNmI5NDljYjdiZWVhMDMgbGVnYWN5LXRydW5rCis2NjE4MiBiOWVkMTRlYjllODdiZmM2YWY3ZDM2MTlhNWI1Njc0MDg0YzBhOTJmIGxlZ2FjeS10cnVuaworNjYxODMgMGY2OTMwYTQzMzYyOGM3YjU1ZTFhMzRkODMzNmRlZmVmNGQ3YTcwZSBweTNrCis2NjE4NCAzMzgzMDhjOWNjY2JjYWY3MGIyYzMwNWZhMGViZmFkMGFiNmMxMGMwIGxlZ2FjeS10cnVuaworNjYxODUgMDZmNTRlMTFhMDhiNGFiNTAxYTEwOTdkYjdkNjE3NzQ2NTgzNGExOSBweTNrCis2NjE4NiAyMmFiMTA2ZTMxODZiNTg0OTQ2MGQxZmYzZjk2OWIyNGY3MDMzZTE0IHB5M2sKKzY2MTg3IGY4M2RjY2Y0MTdmMGRhNmQzZDA2NzVhMjVkZjdjOTQyNDc3MzU1MTggcHkzaworNjYxODggOTJhMDFmZTI0YWUwNjQxYWZlZDFhOWU0MmVmODNmZDFlODExM2RjMCBweTNrCis2NjE4OSA2MTU0NTE2YmU0OWNkYzk0ZmIzYmE5MzMxYTI4Mjc3MGEwMTMxZjhlIHB5M2sKKzY2MTkwIDE0ZmMxNjkyNmMwM2ZjODU4OTIwOTc2NmJlNjJlZGJlOTgxN2NlYjEgbGVnYWN5LXRydW5rCis2NjE5MiAwMWYyZGNlMDZmN2QxMDJmYjlkNDMyNjMzYTczNWE5NWU2MzE3YWZhIGxlZ2FjeS10cnVuaworNjYxOTMgZTZjN2I2ZmEwNzcxZTQwYjg3YjA3M2MyN2Y5ZTJiM2U2NzI5MTdlNSBweTNrCis2NjE5NCBhNTM4NjEwMTg2NWI5N2UwZTM4NzM5ODZiYjQ2OWJmZTYzMTZmMWJlIHB5M2sKKzY2MTk1IDE3N2U4YTYxYWY0NWM1MTQwZGUwNmI3NjIzMzViNjAxOGI1Y2VkZTQgcHkzaworNjYxOTYgMmI4NTVhOTQ3ZjBmNWY2MDQ0OGMxNmJjNDk1YmI4NzRmNzExZTliMSBsZWdhY3ktdHJ1bmsKKzY2MTk3IGUwYWI1YjI4NjEyNDU2Y2U3OGY5M2E2ZDRkNDlhODNlODY1NjQ2ZTMgbGVnYWN5LXRydW5rCis2NjE5OCBlN2JjZmQ3MjA4OThhYmE0MjU3OWQyYWQ5NTcyMTQ4NDY0ZTcwOTk0IHB5M2sKKzY2MTk5IDY1ZTIzNjgzYzAxMGMzZGE0NzE5YzE1OTAzNWIyZTY4ZDIxMTdjYmMgcHkzaworNjYyMDAgZTM4NDdlN2MyNGUwMzJlNGExNDc3N2E4YzhmZWZkZTE3MzZjOWQ1NSBweTNrCis2NjIwMSA5OTU3YTM2ZmMxNjdlY2NkMzczY2M2ZDkwOTFjYWFiZWNlNmM5MjU2IHB5M2sKKzY2MjAyIDViNzg0NWVmNGVmZDBkOWFiYzRhY2E1ZmY5ZjdmYjUzMzU2OTQwNTMgcHkzaworNjYyMDMgYzUzMjM0ZmY2MWIwMGY0ZGZlYTA5YWFlYzAwM2U1OTQ0ODM5ZTU3MCBweTNrCis2NjIwNCA4MTJlYTEwNWIxYjBlZDBiOWYxMTMwNTgyYWM2ZDk3MGQyZWJkOWU2IHB5M2sKKzY2MjA1IGY3MWE4OTI4YzFiN2I5NjNhNzY4YjQzMTA5NGFiN2U4ZGU2ODc1Y2IgcHkzaworNjYyMDcgMTQyNDliY2I5M2QwY2E2NWQ5YThhNGI2ZGNiMTA5NDNiNDE3YTYxYyBweTNrCis2NjIwOCBjNWJlOTQ4NGIxNGJkMDdhZjRlOGQ0NjNhYjhhN2JhMzgwMTBlOThiIHB5M2sKKzY2MjA5IDQ1YzQzODA4OTc5ZTk1NzYzNmVkM2Q5MGYxNDIxYTkwOTIwMjBlYTcgcHkzaworNjYyMTAgZGM3NzRjZTAxYzFmYTJiNTkzMjI2NWVjZWJlZjliMDlkNDdkOTFmMyBweTNrCis2NjIxMSA4MzNkM2VjZmJiZjA5MTA5NDM3YjAzNmI0Njg0ODIwNTU4NjI0NTUwIGxlZ2FjeS10cnVuaworNjYyMTIgYjI2NjU4NDc2ZDU1NTlmMDMxYjk0M2I4MmJjMDlmOWI5NjBkNmI1ZiBweTNrCis2NjIxMyAzMTY5MjM2NzczZjFiNzViMzFkZmNlYzI4NTA3NmU0ZTkxMWEwNWQzIGxlZ2FjeS10cnVuaworNjYyMTQgMmMyYmVmOGZmY2ExMzhmZGQzYjFiMWYzMTc5MGIwMTUyZmFlMDVhYiByZWxlYXNlMjUtbWFpbnQKKzY2MjE1IDVjMTBhZjhkMzNmNWNkMmRlMzJkYzE1MGMwMmUxZDE1MDk5YzVlMDggcHkzaworNjYyMTYgOTRjYzExZWM3ZWMyMDJlMzM2NDc5NWU3MjhhYWRiNjk1M2NjMGYxZSBweTNrCis2NjIxNyA1Yjc2YTNlNDVhYjNlMDFiNzlhY2VmZjRjMGQwYzNhMTJjNzYyNmNmIGxlZ2FjeS10cnVuaworNjYyMTggYWUyYzFiMjc1ZmViM2FhZGIyZTI0NDU3MjM3YjM1ZThkZjc5MmEyMiBweTNrCis2NjIxOSA0NDUyZmYxZmJjOWQ1MTM0MmMyZDVjZjNlNTFkMTk5OWM4ZjZmZmQzIGxlZ2FjeS10cnVuaworNjYyMjAgYjc1NzNlZjI0YzcxOWVjMTViZmEzNTEyMzIyZDQzMDI5NDZkMWFhMCByZWxlYXNlMjUtbWFpbnQKKzY2MjIzIDdmOGVmOTgyOTRiYzExYzM3NWNlNjJiY2ZlMzRiZWI5NmY4Y2NmODkgcHkzaworNjYyMjQgM2ZhMDY2ZDJhMzk3ZGM3MDg1NGFhMzJkODE3MjNlNTdhNjBjMjI0ZCBweTNrCis2NjIyNSA2YjA0YmM0MmJhYTViYTdhOGQ3NmUzZTI1YWRmOTc5ZjUxMDM5ZGNlIHB5M2sKKzY2MjI2IGM2MTgzYTg5ODgwZTYyODEzYjRkNGNkYjZiZjdlN2M1ZDczOTc0MjEgbGVnYWN5LXRydW5rCis2NjIyNyBmZGQ5M2JmYTZjMWJhNWU3NWI4OTBmOThmZTA3N2M5YmI0MWEwZTk0IHB5M2sKKzY2MjI4IGE2NjIwMzQzZTNkYjQ3ZjhiZTZmMjYyNDBmMTg1ZGYyOGQwNGVkZDAgcHkzaworNjYyMjkgOGFmYTc3MjNhZmE3NmFkMDdhMzgxNDg2OGY0OGRlZTdlMGY3YjU2MyBsZWdhY3ktdHJ1bmsKKzY2MjMwIGI0ODY2NDljYThiY2UyMDE3YTJhMzI4NDllYmFhN2IzZmJlMDUyNDAgcHkzaworNjYyMzEgODlhOWJjMTg1ODZhMTczMmYxYWQyMTQ4ZGU1MDc2NDJkMTZlYTI0OSBsZWdhY3ktdHJ1bmsKKzY2MjMyIGI0NTg2OGZlNDg5Y2IyMzkzZmRhMGUxNDUzMGEwYzgxNjQ5ODY2NDAgbGVnYWN5LXRydW5rCis2NjIzMyBlN2U3MGU4ODExNjBiYWIzMzk0OGNlZWUwZDdhZTlhNDEzNjljZmQ1IHB5M2sKKzY2MjM0IGE2NzdkNjhlODEwNWM5YWZkZDhhNDJlM2QyMjJiZjMzMjlmY2JiMWUgcHkzaworNjYyMzUgNDMzMjIwYTYwYThkMDM1MGY0MDZlMWIxNWYwNzEyZDliN2I2YzE1MSBsZWdhY3ktdHJ1bmsKKzY2MjM2IDk3YjlmMGJlOTM4NTI0OWYzMmI2NjYyYmZlZmYzNWFmNGRhYTI2NGUgcHkzaworNjYyMzcgZTc0MDk2OTczOGVmMWY4YWY1ZmJmOGVjODU0MDkxNDk0MjUyNTVkMCBsZWdhY3ktdHJ1bmsKKzY2MjM4IGVjZDdmNTkwZTE0MjQ3OWMxNmVlYWFlZDdiNWY3NWM4YzIzOTkzN2UgcHkzaworNjYyMzkgZGFiN2FiYjc3ZThmODU1MzJiMjdiNmM0Y2YzNjdiZTdjNzY3ZWQwZSBweTNrCis2NjI0MCBmMzI1MTdmODc2YjY3YzFjNWYxYzhmMjE0MThkOWE0NGNmMWViYWI0IGxlZ2FjeS10cnVuaworNjYyNDEgMjZiZGQ5NGE0MjkzNzc2YTA3N2RiMTQxMDU4MDg5NWQ4MDQxYWMxZSBweTNrCis2NjI0MiBjM2I4MTEyMTRjZThmYWFkMDE4NjgzMzNmMmNiNGIwYTliY2E2YTkwIHB5M2sKKzY2MjQzIDIzOGEwODlkNDJiZDYyZTA4NzZlOWMzYjA1ZGQwM2FkMjk0YWExMTIgcHkzaworNjYyNDQgZGMwNzA5YTJiNDJmNTc3MjM0YTg2MjgwZjU3ZjVjNGUyNDkwMTZlZiBsZWdhY3ktdHJ1bmsKKzY2MjQ2IDQ4ODJlNGM0MWNlM2VmZWI1YmMyZjM1M2FhOGU3ZDU5MzQwNzM2MjQgbGVnYWN5LXRydW5rCis2NjI0OCAxOTMzODI0NzkyNWZjNGNmOWNlMzE1M2MyNjcyNjFkM2UyZWFkZDQwIHB5M2sKKzY2MjQ5IDc1MWYxYjU2OTliYWRlNGU4MDY1N2E4MTE4YThkMWU4YTA5MTZiOTQgbGVnYWN5LXRydW5rCis2NjI1MCAxMmVmN2E5MmU1OWJiYjI0NWQ4YzkzMzc1MDAyMThkNDQ2MGRlNzI1IGxlZ2FjeS10cnVuaworNjYyNTUgNjYyMzM2ZDU2N2E5ZWNlNmUxYjM4YWY0MTU1YzdjMTNhNjI0YmUwNyBweTNrCis2NjI2MCA2ZTcxYjM5OGI2Y2NkZmY2ODNhYzEyMDAxMDI0ZjAwZWZiZTY0YTk2IHB5M2sKKzY2MjYxIGY4MzY4MTQyZjhkM2I0MjlmMTFjODRhYzk5MzkyZDEwM2MzMzhlYWUgcHkzaworNjYyNjIgMTVkZjI5NzA1ZTE4MmExMjc2MjlmNjQ2Y2VjZTJmNGQwMmM5Yzg2MCBsZWdhY3ktdHJ1bmsKKzY2MjYzIDRkZDU5ODkxNDM4MzQ3YzU4NDQzNmY4NThkYTQ1ZTQxMDFiNDhmMTIgcHkzaworNjYyNjQgNjcwMjhmNWIzMzIxY2MzZTk1MjNkMTU3MGUzYzE3ZjVlOWE3YzAyMCBsZWdhY3ktdHJ1bmsKKzY2MjY2IGMxYThmNmI2NDhlYTUxZjFjYTlhMmU1N2Q2MjUxYWYzYWU5ZmI5MzAgcHkzaworNjYyNjggYmIwZjc0MjhhMTUwN2RlYmE3MjJmMWFjYTk5ZWMyYjIwOTBjZTNmMCBsZWdhY3ktdHJ1bmsKKzY2MjY5IDY3NDZjNmJlZTI4NjA5M2MzMWVkYjg5MGZkYmYyMzU5NTU1NTkzMGMgcHkzaworNjYyNzAgZTI3Y2Y3ZWUyOTY4YjNmYWU5MGEzZWQxZGFkZjRlY2ZjZTJhNTkxNCBsZWdhY3ktdHJ1bmsKKzY2MjcxIGNhMWE4YWM0N2QwNDYxZDEzMmE3MzRjMzEyNWZiZmJiMGI2OTFkNDUgcHkzaworNjYyNzIgNDQ1Y2U2NTc1MTYyZWJkM2Y5OTRhZjdiMTYwMDdlMDJjOGZhMjljNSBsZWdhY3ktdHJ1bmsKKzY2MjczIDhmZmVjMzcyMDQwZTQ3YTliMjYwNzAyMTkxNzc0NWVlNzRiYTY4ZDcgcHkzaworNjYyNzQgMTc5ZjhkODlhZDE5YTZiYTRmNDRhNmVkYzlmYjVmZTFlODdmYWE0NCBweTNrCis2NjI3NSBmZGE2ODk5NzBiM2Y4MjhhNmRhMjI1M2E0YmNiYWMyYjYzNjAwNjQ3IGxlZ2FjeS10cnVuaworNjYyNzYgMDI2MjdiOTI1YTQzYzcxOTRiNTgyNGIxYjEwYWRmOWJlMWM4Yzg4MSBweTNrCis2NjI3NyBmZGMwOTQ4Yzk1Y2YxOTc5YjA1MDI2YjkwOTZhYzQ4MjE5YmE2OWZmIGxlZ2FjeS10cnVuaworNjYyNzggMTM5NTViY2QwOGJlMWE1YWFjMjU3NTgyMGJhZjk4NmEyZmUwYmY2MSBweTNrCis2NjI3OSA3N2UxYjk1ZjE0MThiMTMxZDQzYjFiZjNiNmUzYmViNWRhY2IxZmFmIHJlbGVhc2UyNS1tYWludAorNjYyODEgYzZiMDJmNzliMmJjM2EzNTYwOWNiYWY4YjIwNjEzNGNhMmJiODQwYSBsZWdhY3ktdHJ1bmsKKzY2MjgyIDJlY2I1NmU2ZTBhNmNkMTMyYWE5MTE0MGE0Mjc1MmQ3NTY1OTdlNzcgbGVnYWN5LXRydW5rCis2NjI4MyA3NTEwZDg3M2I4OGMzMDMwZTE0OTkyOWNlMjhmM2Q2OWRlZDYxMTU4IGxlZ2FjeS10cnVuaworNjYyODQgM2YyYzRjZTMyYmE0N2EyZDM4YTQxMjJmOWM4NjBlYzc4OTcxMmJhYiBsZWdhY3ktdHJ1bmsKKzY2Mjg1IDkwY2ZjNmI5MjZjNmY1NDRiNGRkNjQyOWY2N2EwMmJmYTZkZmZiMGEgcHkzaworNjYyODYgNDczM2Q4NGYzNDg4YjRkZTExZmU1MGI5MTRkMzNiMjA2NTVlNjUzOSBweTNrCis2NjI4NyA3MzUzNmE1OGFiNDI2MWQyYjViNzc2Y2ZmMjhmYmY1OTA2OTU3OTRmIHB5M2sKKzY2Mjg4IDhjZmJiMmUyNzVkOWM5MTU0YWEwZWMyYjFkNTI1NDU4ZTU4MzQ3YzggcmVsZWFzZTI1LW1haW50Cis2NjI4OSA5ODdkYjdhZjA3MDAyYTEyYzAzZWJlZjliMmEwMWQ0ZTliZTJjNjE4IHJlbGVhc2UyNS1tYWludAorNjYyOTMgNTIzZDZkN2U1ODI1YzI3YWMwNjNhNzM5M2I5ZTExNDFkMzQ3NjJhNyB0bGVlLWFzdC1vcHRpbWl6ZQorNjYyOTQgM2FmNmE3MDIwNzBiNDNhNGVhNGQ0NTViY2Y2ZTUzYjY0ZDQzZGUzNCBsZWdhY3ktdHJ1bmsKKzY2Mjk1IGExY2FlOTU1NWY1ZGY4Mjg1OWM3ZGRiNjVjZDczM2I0MzQxOWQyMjYgbGVnYWN5LXRydW5rCis2NjI5NiAyYWIwNTI5MjM3Y2IxYTUwMDA4YThjMDQ1ODA1NmI4NGI5MmQzOTZmIGxlZ2FjeS10cnVuaworNjYyOTcgMjYxMWU4YWUyMzhmZDZmMWNlNjM0NThiY2JhMTNhNWQwMjUyYjNhNiBweTNrCis2NjI5OCBkNzk0MjM4MTUwZDIyZmM0YWFmMTAzZmU2NzI0YjU3OWRjNGM5NGQwIHB5M2sKKzY2Mjk5IDA1ZTI1ZDdhMDdlMTk4N2Y1NWMxNDc2ZDhkMDg1NWExZDM4OTUyMjQgcmVsZWFzZTI1LW1haW50Cis2NjMwMCBhOTM0N2NiOGFjMzgwNjcyZGFiMjYwNDg4YzZjMTg0ZWE4NDhhN2Q1IHJlbGVhc2UyNS1tYWludAorNjYzMDEgN2IxZjhlZGU5YjUzNDNlOGNmNDY5YjZmYmQ2MDk1MTJmOGMyNmYwZCBsZWdhY3ktdHJ1bmsKKzY2MzAyIGYwODVmMzlhNmY0ZDEyMjMxZTZkNjY5ZmI4NzJjZGUwZjQ5NmMxNTUgcHkzaworNjYzMDMgMjcxZGNlMDkxN2MxMDU3NTRjMDI2MTBiMzU5YzMwMDI1YmViODExOSBweTNrCis2NjMwNCBhYTBlZjVkZTM0NWE3ODhmN2NjYWZkMjQwZTNiYmYxNDYxOGFjNzE3IGxlZ2FjeS10cnVuaworNjYzMDUgNTY4YWI1ODM3MTk0ZDg5OWUxMWZlZDAxYzI3MDVjYmMxYTk4OGE1YiBsZWdhY3ktdHJ1bmsKKzY2MzA2IGZlNTM2MmQ5MzU0MjU4ZTE5MTljOTBkMDY2OGUwNDM1MGU2ODU4MjUgbGVnYWN5LXRydW5rCis2NjMwNyBkNjFiOTU2YjBiZjY0NGMzMDlmMGRmMjg1Njc4YWNjZTI5OTlkNGFhIGxlZ2FjeS10cnVuaworNjYzMDggZGU2ZWVmMzFhYTVmNzI5OGUxYWE3YzgzZGI2NjE5ZWRhYWFlZTJiZCBweTNrCis2NjMwOSA1MDk0MWJlZmYwMzI4YjRmNmIyNjVhMDMxZGFjN2U3ODcyNjVjNmQ2IHB5M2sKKzY2MzEwIDM3YjcwY2Q0YTBmMGQxMGZmOTg4YTA3ZjA1MmRhYjViNGIwOGFmZTYgbGVnYWN5LXRydW5rCis2NjMxMSBhYzNiNjcwNDMzNjFlYTYyOTIxM2VjZjI4NTM2NjRiYWU3ZjRiZjQ1IHB5M2sKKzY2MzEzIGJmNGJjOTczZTJhYWZiMzM4ZmY3MDdhMmNiOWVlMGQ2MTgyYjA1YjkgcHkzaworNjYzMTQgNDQ3MDJlMjczNzUwNmM1MjdiZGMzYjFjNTBhMjk4OTNmMGRhNTAzZiBweTNrCis2NjMxNSBjODcxM2ZiMDVmOWU0ZTgzNDMxOGU1NGE1ZDBkNjU5MTRiYzM3MTA3IHB5M2sKKzY2MzE2IDk3M2JkYjJkYjZhYzk2ZTI3MGZjNTMyYzc2MTk4ZDNkYmQ3YmYzYTkgbGVnYWN5LXRydW5rCis2NjMxNyA0ZDE0OGJiODRhMDc3YjJhOWZhMzczNGZmNGQzZTM2YWYyZTY2NTgwIHB5M2sKKzY2MzE4IDg2YTQyZTlmNzNkYzIxOTMwMTY5MmEyN2RlNWZmYzM3ZGEyODhkMmYgcmVsZWFzZTI1LW1haW50Cis2NjMxOSAyM2I0NTJhYzFhNTBhNDlmYzQ5YzcyMDFmZTc1ZjljMDNjZWU4ZjJjIGxlZ2FjeS10cnVuaworNjYzMjAgOTY0ZGI4NzlmMTkwZTlkY2NiMWQ2ZjVkY2U3MTA3YzVkMTU0NDE2MiBweTNrCis2NjMyMSBmZjk2YTMxM2NkMWM4MzliYTMxYjM1NDIzMWVjZWRhZGY0MjA3NWE4IGxlZ2FjeS10cnVuaworNjYzMjIgM2U2ZTU2NWVlMzBhZGNiNWVjMDNhNTgwZTdmYTE5OGEyNGRhOTdlMiBweTNrCis2NjMyNiBjNDZiY2NjZjJhZjJlNDc3MjU3NDk1ZDlhZDVhNmIzNzk3MDkxNDNjIHB5M2sKKzY2MzMwIGI1MjhjYmVhNjBlMWM1MTVmMDgwMjY5ZDRhMzkzZTQwOGE2ODcxNGQgcHkzaworNjYzMzEgZjcxMjNkNDVkMGM0M2U5YWUwZTgxNmE2MDc4ZDJkMGQxNTNiMzUxZiBweTNrCis2NjMzMiA5NzQwNDBjOGYzNjk2MTEwNzQ5ZjkwMzQ5NjY3MmUzOTU3MTkwYWQ2IGxlZ2FjeS10cnVuaworNjYzMzMgZjY2NTBmMjQ3NTk4ZTJkOTg2Zjg2MjBmYmQ0M2ExN2M0YzM2ZTMxZiBweTNrCis2NjMzNCA3MDg3ZWE4MjhkZGEyZmI1OTI3MDQyYzU0OTE5NjYyYWZkNTA2NGYyIHB5M2sKKzY2MzM1IDBmNDQ1N2NmMjViMmNlYmEwOThmNTRiYjhjNzM5YTM2YWQyZTk4NzggcHkzaworNjYzMzYgNzU2NjM3YTNhYzRiYTI2MTAxNDBhMWU0M2RmMDQzMDgzZWUzNzNiMCBweTNrCis2NjMzNyAzNmIyZDY3NGZjOGM1M2ZkNDMwM2MzYzRmNGE3YTE1NWM1ZGM1YjU3IGxlZ2FjeS10cnVuaworNjYzMzggY2Q2MWQ1NGZjOGMwNjRkNzM2NzE4MTZhOTYxNDczYzZhMjliNjJkMiBweTNrCis2NjMzOSAyOTA5NDg0MmIzNzc2YTlmOGJlOWM5ODY2M2JiNGQ2MGQ2MGQ2OWY5IHB5M2sKKzY2MzQwIGE5MGIyODU0NThhYjAxN2UxZmUyNzRmMzQ0OWI2OTMzMzA3ZGNiMWUgcHkzaworNjYzNDIgMTM5ZjZiYWVmNmMyMzA4MzEzYTE0MmY3NWE2M2ExZDI0YzgzZTZjZSBweTNrCis2NjM0NCA0MjQ5ZTU4Mzk3ZWYwMWMxZjJlMmE3YzI4MGQyYTFmZWM2ZTE5YWEwIHB5M2sKKzY2MzQ3IDZmMDgyNzhiZjhiMWY1ZWE5ODdhZTU1OTFhOThiYmRjMmVhZjY5YTQgbGVnYWN5LXRydW5rCis2NjM0OCBkYzBjYWUxZTZhZGIxNTYxOTQwZGQwYjY4Nzk2ODM5MTMzYTVkMDJjIHB5M2sKKzY2MzQ5IDQ5YTkzYzAyYTZkMjEzMTdmYTUyNjFmNWQzNDViNzlkNjdlMjg0ZmQgcHkzaworNjYzNTAgNzUzYTc2YjNlZWE5MWRkMTljYTg5YjYyMWNiYmU2ZGM0Njk1MWRhMSBsZWdhY3ktdHJ1bmsKKzY2MzUxIDVjMDM4ODFjMjA3NTUxNTI1NTJmNmEyOGJhNTUyZmRlZDM1MjRiYzMgcHkzaworNjYzNTIgNzNjYzdiNjM1NWI4MTc2YTk1YjU1OTE4NTg5YmU0ZWZkNmJlM2ZjMSBsZWdhY3ktdHJ1bmsKKzY2MzU3IGRjMTlhMWI3YzVhNjM0NDgwNTM1N2M3NjhiZjVkNWJhZmZjMzk3YTEgcHkzaworNjYzNTggMmMyZTNhNTZjN2JjYzg2NzIzYzE0ZGE4YTk0MThhZDNlNDZiZjRjMSBsZWdhY3ktdHJ1bmsKKzY2MzU5IGU5MGEzZjBhOTkyOGFkM2ViNGVlN2VhYzk2MjBlNTY3N2Q3Nzk0Y2EgcHkzaworNjYzNjIgYzM3YzdkYmQ3ODgwZGIwMzQ1Y2E3ZTk3YTIyNmIxMWNiZjRjODVjZCBsZWdhY3ktdHJ1bmsKKzY2MzYzIGRjNjAyOTNiMjlkNTExOWJmNjc3Mjk5NmFlNzU0ZDEwZGIyYzlhOWUgcHkzaworNjYzNjQgOTVhYzY5ODM1OGFiYjM0ZDgwMzRlNGRmN2JlYzRmMDdlNGI1ZDg5MiBsZWdhY3ktdHJ1bmsKKzY2MzY1IDc3NTY1YmUxYjk1NzcwZDFmMjY0NDc3N2U4OGRhNGIzODY5YWY0ZGYgcHkzaworNjYzNjYgNTEzMjY2YTc1ZWMzMWUxMWUzMzc1ZGUzNjM3YzI4ZmU1MDczNjI3NSBweTNrCis2NjM2NyBmMTAwZWZjYTE0ODcxYmI4MjFhMzFhZWM4ZGQ5ZDFiMDI1YmRkZmZkIGxlZ2FjeS10cnVuaworNjYzNjggMjVmMTQxMjhhOTdjMThlNDRiZmRmNDE4NGJkOTcxOGE4NTc5NjJjYiBweTNrCis2NjM2OSAyYWI4NWMzOTJhOGRhZTAwYTVlMTcxZDhjNmJhMDk2OWUyNDdhNTBhIGxlZ2FjeS10cnVuaworNjYzNzAgZGQ5NjE0NGU2ZTgxZmE0ZTZjYzU4YWFlMDcwMzVhODk0Y2NiMWQzNCBweTNrCis2NjM3MSBmOTc3NzkyNjJiYWMxYjM1ZWRhMzAwYjZlN2ZlMjcwYWMwNzJlMTZmIHB5M2sKKzY2MzcyIGFmNDAyMzhhNjhiOTVjYTA4M2E3YmJjNTdkNDc4OTA0NjIxZjk3ZmUgcHkzaworNjYzNzMgNTg5MDczY2VlMGFlNDdhNjZhMTBiOWM1YWQwMTFlMjFlN2EyMDNmYiBweTNrCis2NjM3NCAzNDhhMzMwNDhlYmY0OGZiNTA3MjU2M2Y4NmJlNzQ0MmY2M2M3NDI3IHB5M2sKKzY2Mzc2IDE3NDc1ZWI1NTA2N2FjMWQxOTU2MDgxZGYyY2VkZjYxNTAxNDQxZmYgcHkzaworNjYzNzcgMTQ1NDQ5MTA5YTMxY2ExNmIzNGI3OWUyOTg1MDhiYWJiNDM2MWUwYiBsZWdhY3ktdHJ1bmsKKzY2Mzc4IDZhZTJkNGI1MDdhMjUyZjYxZDQzMjQwODJkY2MyMDlkZGI2Y2QyNjkgcHkzaworNjYzNzkgYTRkZjQ5MDNiMzU1NTY0ZjJhNDdlNTIxOWM0NTg3ZTNkNzU0NTg4NyBsZWdhY3ktdHJ1bmsKKzY2MzgwIGQyN2RmMDgzZDRlNjc0ZDk3MmU5NTRjNDRkNzhmNjNkNzZjZTI1YjUgcHkzaworNjYzODEgNTFmZjkzNDU2MmMyM2VjYTZkY2YyMWVjZWFmYjk3YjViYjNkYjgxOSBweTNrCis2NjM4MiA4NzUzMTMwMWJhNDhjODdlMjhjZGJkZWIxMDViYmYxZmVlNDdkYzkzIHB5M2sKKzY2MzgzIDNkYzMxODA5NjMxZmUxNzkxNWM1NjZiNDEyMjZlODJkYzZiYzNjOWIgbGVnYWN5LXRydW5rCis2NjM4NCA5NmQ2Mjc2ZDgwZTIzMjQ2YmEwMTI0MzFkMDcwMzA2MDU0ODJiNWFkIHB5M2sKKzY2Mzg2IGYyOGI5OTlhNjlmODNiNjUwMzcxZjU3Y2U0MzE5ZmIzNzRlZTc3OGEgbGVnYWN5LXRydW5rCis2NjM4NyA4OWMyYTY5N2Y3NzJmMGZiNjVmZWZlYzQwMzFjMWRlMDNhNGI2ZWU2IHB5M2sKKzY2MzkwIDBlZjdjYjM1YjIxNjcyNDY3NjY0ZmNiYzMyMzRlYTFkZTJkZTQ2NmEgbGVnYWN5LXRydW5rCis2NjM5MSA0Y2Q5N2Y4ZGU2OWUyMGE5ZTY0NWZjZThiMzZlNDI5OWEzZGM5MjdjIHB5M2sKKzY2MzkyIGMwNWY1YWJlZjc4YWQ1MjUyZTJiZWRhOGUwZDEzZTk3ZWQ5MGI3ZTggcHkzaworNjYzOTMgMjgwMzQ3ZDJmNzY1MDFlMjM5NDQ1ZGU2ZjE1Y2NiYWI1N2ZiNDQzZSBweTNrCis2NjM5NCAwZmNkNGRiMjNkZmZlYjM5YzU0YzZhMmMxNjUyMTczNzk3Y2IyMDFhIGxlZ2FjeS10cnVuaworNjY0MDQgZmYxNWU2MmEzNDliNzhiZDc4OWVhZTViMTdiZTU5NzcwMTRjNTlhYiBsZWdhY3ktdHJ1bmsKKzY2NDEyIDRjNzdkMTAxNmY2MGFmNDUyNmMzM2NiZGQzOTNhZWQ3ZWFkZTU0M2QgbGVnYWN5LXRydW5rCis2NjQxNCA3NmJjNzU3NzI3MzZmMzJlOWQzNDE4YTVmMWYzMTU3NWRhODBmM2FhIGxlZ2FjeS10cnVuaworNjY0MTUgMzgxZWNmNDZkZmFlNDRiODNlM2I4ZGI0ZjEwY2RiNGEwZmZmNDFmYSBsZWdhY3ktdHJ1bmsKKzY2NDE2IDFlYmIyYThjYzA2Yzk0NDcxZDcyYjU0NzZjMjA1MGM0ZDExNWExYWEgbGVnYWN5LXRydW5rCis2NjQxOSA0ZjdkZTFjYTkyZmY4MDY3MWVhMjJhNTgzYjBiOWE5Y2UyNjE0ODM1IGxlZ2FjeS10cnVuaworNjY0MjIgNzM4YmE4MzE5ZjQ5MjA0ZTQ5NjE5Y2I1ZWM5YTU3M2Y3YjYxNWY1MSBsZWdhY3ktdHJ1bmsKKzY2NDI0IGM4ZDQ0NmVhOTZkYWJkM2JiNGRkNzY2NTdlNmQ5MmFlMTAyOWNlYjYgbGVnYWN5LXRydW5rCis2NjQyNSAwOTMyYjliYWE3YTQ1OGYzNWNkNzFmZjdlZjcwYWY5Y2Y5ODFjMTczIGxlZ2FjeS10cnVuaworNjY0MjYgYmIzZDFiZDFlMjkzM2U3ZTExZWJkZGI5YzliMWZiYjIwM2Y5NzBhNCBsZWdhY3ktdHJ1bmsKKzY2NDI3IGU3YzI4MDBiMjNiZjgyYjU2OTM5YzNjYmRkOWY3M2ExMGFlMjEzMDQgbGVnYWN5LXRydW5rCis2NjQyOCA0MTUyNGY5ZTJhMmY5ZmI4NTljOTdhM2MxZGQxM2E1NTkyODBmNmQyIGxlZ2FjeS10cnVuaworNjY0MjkgNWNlMDE0MzhiYWFhNTk1Y2Y5MTUyMTkyYmVkZGQ2MDU1NzBmMDZhMCBsZWdhY3ktdHJ1bmsKKzY2NDMwIDU5NmExYWQ4ZmViNjFiMjUyMzdjOWY3ZDIyNmI3ODYxY2EyZTkwM2EgbGVnYWN5LXRydW5rCis2NjQzMSA3NDI2NzFjNWQ3Yzk1YzY1YWJkM2EwZTNjZDIyYjdhN2NjNGUyMDhkIGxlZ2FjeS10cnVuaworNjY0MzIgYzBkYTdmMjM2MWVjZGMzODVmOWZiMmQyMWQ5NTk1MzdkNDc3MTcwZCBsZWdhY3ktdHJ1bmsKKzY2NDMzIDA1MTM2MjkzZjBjOGJmZDVjZDI4MzU0NjI5ZGU1YzJjZjdlYTIyMWMgbGVnYWN5LXRydW5rCis2NjQzNCBjM2YwZjk3ODM5ZTM4Mjc3ZWY1Yzk1MTJiYjlmY2IwZjFhZDU2YjA5IGxlZ2FjeS10cnVuaworNjY0MzUgNTJlZjk1YmRkODAxZTQ0YmU0ZmZiYTJiNTUwN2FhZWM3ZWE0N2MyNSBsZWdhY3ktdHJ1bmsKKzY2NDM2IDA2ZjMyM2FhNzJjNDk1MDc4MGJlMTY0Y2M4ZGM4NWM5ZWI1MDhhNDQgbGVnYWN5LXRydW5rCis2NjQzNyA2NzA5ZmY4Mjg3ZDk4Nzg0YWE0MWJkOTY2NmJiYmYxZDg1ZTAxNjgwIHB5M2sKKzY2NDM5IDY2NjVlYmZmNjRmMWYyYzIwNjYxMmMwODg2MWY1N2RmMmRjODdiMzggbGVnYWN5LXRydW5rCis2NjQ0MCAxZWFkZGQyMzg4Y2MyNzQ3MWZiNDAyM2RiMDdmMThjMzc0MDNjZjM5IHB5M2sKKzY2NDQxIDFhZjE2OTcwZGFjM2ZkNDU2NWRlZmEyMzI4OTExYzgyYjc2YTU0YmMgbGVnYWN5LXRydW5rCis2NjQ0MiBkNDA2OTgzZWQ5Mjc5Y2NjNjU5Yzg2ZmIyY2ExZDBiMGY0Nzg2NjBhIHB5M2sKKzY2NDQ2IDhmODg2YWNhYTE0MmNjYWE5ZDliNjIyODg2MjBjYjFmYmI0NTlkODcgcHkzaworNjY0NDcgZmViN2JkZTFhNGQ5MzAxMTcwODZhMjg1NmJmYzBmYTk2NjJkZjdmOSBsZWdhY3ktdHJ1bmsKKzY2NDQ4IGM4N2I4NGRiMjQ0Y2Y2MzBlMzAzNzA5NzM2Y2Q4ZGZmMTdhMmE1MjEgcHkzaworNjY0NDkgMDk1ZGU1YjkyOWRkYmI1NjRkZjk1NTQ5NzVlMTAyZjk5YmEwZTljNiBweTNrCis2NjQ1MCA3NWIwZGNiYzNjYzcxODE1ODg5MDMzMmVhZTRjZTczNDU0ZGVmMjE3IGxlZ2FjeS10cnVuaworNjY0NTEgM2IwNDhlMzFkZDllNzdhYmRmNmJkNTk4OTJkZDExODdkMjVjNjc1MSBweTNrCis2NjQ1MiA1OWRiNGIzYTA2YjAxYjUyZjc4YzRlNzQ5YmY4MjM3YWM0N2RlZDRkIGxlZ2FjeS10cnVuaworNjY0NTMgNTZkNWMwM2I5MmI2Y2VmMTU5ZWFmN2ZlM2U0MDgyZWE0OTJhYTY4ZiBsZWdhY3ktdHJ1bmsKKzY2NDU0IDQ3ZGI2MmJmNmFhNzBkOGU4ZjVhYmY5ZTBkYTVhYTlkNmU5OTk3YmMgcHkzaworNjY0NTYgNjI3MDBiYjdmN2I1OTA5ZWE3OGNiMDcyOWY1OTY2NGEyOTI1NTIyMSBweTNrCis2NjQ1NyAyYzViYjQ2MzRkMmQ5ZWM2YTc3NzY1MjZlMWQ1ZjU5YTQwYjUwY2MyIGxlZ2FjeS10cnVuaworNjY0NTggZjk5ODAwMTY2YzJiNzNlMzNiNzIyYmZkMzVhZmQ3ODVlMDAzMzUxZCBsZWdhY3ktdHJ1bmsKKzY2NDU5IGNkZGY1ZDY0NzZjZjEyN2I4OTZmNDIzNjU0NjY4YWJmYTkzZTA3ODEgbGVnYWN5LXRydW5rCis2NjQ2MCBlOTY5MjMyMDU0YTJjMzhiNzI1ZmZjYmFiMmI0OGZjMDQyZmNlZTkzIGxlZ2FjeS10cnVuaworNjY0NjEgNjkyOWI3NDI3MmM0MGVmNTMyM2NiNTY4MTMwZTJiZmVjMjNjYWEwZSBsZWdhY3ktdHJ1bmsKKzY2NDYyIDYyZTVmNzNkMDViNDlmNDI3ZDZiYmY1YTg1MThiZmE0NTY5MzJkMDQgcHkzaworNjY0NjMgNjRiZTlmOTA4NjRlMTRiMzM1YjY0ZmQxZTBkNWM1MzM5NTE0NDM5MSBsZWdhY3ktdHJ1bmsKKzY2NDY0IDI2MDU0NjViYmEzYzE4YTFhYjMwZTZiYmE2YWZlZmMzZTMxNDcwNzYgcHkzaworNjY0NjUgYTNmMGQ2NjdlMmNlNTU3Yjc4M2UwNzgwODE3ZGI5NzZmYTA1YjEzMSBsZWdhY3ktdHJ1bmsKKzY2NDY2IDNhODJlNTAyNDc0MzI4MDA1YTRkYjY2NGVjYTk4ZWExZjExYWQ1YTYgbGVnYWN5LXRydW5rCis2NjQ2NyBhYWViZGM0YzQ2OTAzYjMwZjI1ODU3ODZmMzc5YzY4MDZkMzBmYzQ1IGxlZ2FjeS10cnVuaworNjY0NjggMDJhNmNjNWQ3YTIyNzZlMTkyMzkwMDUyODJjNGJkODY5ZTE5NmQ1YiBsZWdhY3ktdHJ1bmsKKzY2NDY5IGJkYjY2MGRjYTc0ZDZhZjRjMjZmNjI3OTdmMzQyNWQyZDYwMjIxM2EgcHkzaworNjY0NzIgZjk3NGUwZmE1NGNhYTc3ZDM2MTI5ZTVhNGZiYTdiYTkyZTFkOGQzOCBweTNrCis2NjQ3MyAxMTY3YWU2NDVlOGMwMjc1NDNhYTE5YjRkZDg2Njk1ZjVlNmI2NGIwIGxlZ2FjeS10cnVuaworNjY0NzQgMjBkZjA2ZTFiMjY2OWY1OTI4ZWQ2ZjViNzBlMjhmODhhMTU1MDg5NiBweTNrCis2NjQ3NSA2NzA0M2ZiOGFlYTVjMGU4MTA1MDVmYWNmMjMzYWI0ZjZjOWU4NTQ4IHB5M2sKKzY2NDc2IDMzMDIwNDViYWU5Nzg5NjExYmUwNDVhMDc3N2JmNjgxNDU3ZDY5YjggcHkzaworNjY0ODAgYmIyYTBhMzdmYWE5N2JkYmVjYmRlZjkyMTIyY2QxNGM1MDI5YTE2YiBweTNrCis2NjQ4MyBkMTdjYzRkMTc2NmNhMTNhZjU0ZTJhNjg0M2M0OGYwYWE1ZjQyNzBkIGxlZ2FjeS10cnVuaworNjY0ODQgNDQ1M2UyYzZhYTdmZDJlNTRhOTY2ZDhiODU4NzgyMWMxOWQyM2I1MyBsZWdhY3ktdHJ1bmsKKzY2NDg1IDk3ZjI4ZGZhMTU0OWIzYzFkMDk2YTNlMDA2MDNlMmY4YmM2NzJlYmQgbGVnYWN5LXRydW5rCis2NjQ4NyBhMWMxOWYyNjNmNzk1NWZmMWY3YTBkZTIxOGRlZDU2NTJiNDRlOTJkIGxlZ2FjeS10cnVuaworNjY0ODggNWQyZjE2MTE5NDU5NGIxYWE4NTczMTAzZTQxNTM3NjZmYmU5OGI1NyBsZWdhY3ktdHJ1bmsKKzY2NDg5IDJmOWIwNmY5NWM5YTZhN2QxZmUwOTU2OTU3NDAzMGQ5NmRhMTcxMDUgbGVnYWN5LXRydW5rCis2NjQ5MCA3YjE2ODYwMmY0NGRiMmFmYzRiZGNiOGQxMmJkNmVlMGVkZWZjYmJkIGxlZ2FjeS10cnVuaworNjY0OTEgZTI0MjllMjMyNTc2YTY2NmZkMmY1NDNkOTU2ZmRkMjk5OWMwOTY3MyBsZWdhY3ktdHJ1bmsKKzY2NDkzIDMwZWYyMmE4MDI2N2MzZDY5ODI1MzBhYjZmZTg4MjFjYzEyMDRjNWIgcHkzaworNjY0OTQgYWY0YzRjZjNlMDFlMDkzMmU2NDQwYTI5NWZjZDBlNWE5YzdhM2JjYyBweTNrCis2NjQ5NiAyNjA2ZDlhMDBjN2I2MjIwMGY0NDA2NWFlZDQwOWNjMGEyYjc2ZjNmIGxlZ2FjeS10cnVuaworNjY0OTcgNTg4MTg4NDYzNjNiYjVlMGM4MWFkNjJkNmFmNDY5ZTU1ZGFjNWEzMSByZWxlYXNlMjUtbWFpbnQKKzY2NDk4IGZlMzU1YmQwNWM0NzQzODI1NDZjZjg0N2FiNTc4NjhlYzVlOWM3YmEgbGVnYWN5LXRydW5rCis2NjQ5OSA1MDdlZGU5YzdmN2Y0NzVkZmFmYmQ0YTUyYzIyZDc2N2QxMGEyYmMwIHB5M2sKKzY2NTAwIDVkNjFjNjU0ODQ5Nzk1MDE3ZGNhNGMwOTY1Y2Y5MDg3YTY4OTRjMTAgcHkzaworNjY1MDEgNDI4YjA1M2JiMDk4MzkzOTMzMDE4YjcyMTU5NDEzZDBmYjBhZTM4YyBweTNrCis2NjUwMiBjNjcwM2Y0OTg5YjM3MzBmNDM5NWZhODBiNzI1MTAwNDdlMGFhYzM4IGxlZ2FjeS10cnVuaworNjY1MDMgMGFkOGNlYTYwYmZhMGI2MDQzODI1YTZiZTMzOTc2ZjRmODU0Y2RhYSBweTNrCis2NjUwNCA1MjU3OTIwOTdjNjMwOGE3OGE3NmI3YjVmNTZiYmQ4YTI0YzI2YWNmIGxlZ2FjeS10cnVuaworNjY1MDUgNTU0OWI1ZGY4YmNiZGVhNzIxZWQxZTljZTcxOTU0YzI2MDNmNjZjYyBsZWdhY3ktdHJ1bmsKKzY2NTA2IDBlZWMzNDc1NTA0MTRlZWZhM2I1ZjUyYTBlMWI1MzdkZjlmYzM3NDkgbGVnYWN5LXRydW5rCis2NjUwMyA0OWI5Yjk5NjVmMzEyYmExNWZhN2E5MmJkNGRmNWMyYzdjMzgzODdkIHB5M2sKKzY2NTA4IDc2M2U0Yjg0ODgxY2MxYjkyMDc4YmI4MDIyYjgyZWExYzY1MGQ3MzEgbGVnYWN5LXRydW5rCis2NjUwOSA2NzAwZmQ4MTI1YmE1ZTBkMWM5NjgxNDFiNTEyYmE1ZDRlYmJiNTUwIHB5M2sKKzY2NTEwIDlmZTQ2N2ZmMGMwODYzNGIzY2RmMjFjOWE5NjYyNGNhOTQ3NmVhMjUgbGVnYWN5LXRydW5rCis2NjUxMiA1YTcxYTYwNjhlMzAzNTg0NjI3Yjc2NWNhZmUyZTQyYmFjYmZiY2Q3IGxlZ2FjeS10cnVuaworNjY1MTMgYzQ1YTY5NjViYzQ2Nzc3ZTQwMTdiOTc1MjJjZGU3Y2RiMTRlOWIzYyBsZWdhY3ktdHJ1bmsKKzY2NTE0IDYyNjAzMjU5NzcxMjAzMTAxMjUwZmVhYmUzYWJiOWY1YmE4MTNjZmEgbGVnYWN5LXRydW5rCis2NjUxNSAxNWFjNDk2MDJhMDY0OGIxYjU2ZjkxMjIxYzVmMjZkZWM3YWNmNzJhIHB5M2sKKzY2NTE2IDU3OGFkNDkxZDRhNDg2YmQwMDE3ZDU4NmQxZjA1YzM4NjUwOTkyMmUgbGVnYWN5LXRydW5rCis2NjUxNyBjMTM3MjkzMmFlODdjYzk1NTU3MGUyNDk3MDgyY2Y2NmMxMWEwNmI2IHB5M2sKKzY2NTE4IGYzZTVhODUzNDIwNjI5MzYzMDk5ZTczNmI1Y2IyMTA1MzRjNzU3Y2MgcHkzaworNjY1MjAgYjZhODAzMTg4NDU0ZDc2MzJlYzIzYTI0YjdmNzAzZWJhODQyYWE1YiBweTNrCis2NjUyMSBjYzlkOWQ5NjZiMWE0ZmY1MDJlZjRmNjhhZTBmODBkZmVlNTAxMzUyIHRsZWUtYXN0LW9wdGltaXplCis2NjUyMiBkNmI4ZDQ2YTM0MzFiYWM0YmE0NjBjMzRiOGRmZDc2YTZmYjE5Njk0IHB5M2sKKzY2NTIzIDUwYjFlNTU3NTZhNTA3YzUxYWRlMGU4YWJiMzZhZjc4N2RlNjcwZWQgbGVnYWN5LXRydW5rCis2NjUyNCA0ZjlhOTcxNDBmMGVmYjlhZWM4YTM0M2Y5N2I1ZWI0NDc2YTUwMDg2IGxlZ2FjeS10cnVuaworNjY1MjUgNjFjNjhlMmM1NzFiMDdkY2U1YTY2MDQzNjViNzNkM2ZmMDhiM2U4NyBsZWdhY3ktdHJ1bmsKKzY2NTI2IDg1YjQ4MGVmMjYzNWM2N2E5MjQyNDA5NzIzNjVlMTE1MjBhZDZhMjggbGVnYWN5LXRydW5rCis2NjUyNyA4YjE3ZjkyYmJjNGRiNjY0MzU2MjRjZDBkNWNlZDUxYzdmNzVhNGY2IHB5M2sKKzY2NTI4IDZiOWYyY2U1ZmU5MjJlODZjMDIwNjQ2YTU2ODRkMzE4ZmYxYmVkODUgcHkzaworNjY1MjkgNzAxZGI1ZTk2N2I1ZGIxMmYyMDgzMzQ2MmIzMmRlZGYzMzNhZDY2ZCBsZWdhY3ktdHJ1bmsKKzY2NTMwIGI4NDE1NTJhOWE3M2I5NDFlNDFhMDBmMzEyYTQwYTJjMzkwN2Y4ZmEgbGVnYWN5LXRydW5rCis2NjUzMSBmNzFmNjRhZTY1MTk2NmU1MDRlMmJmNWQwMzY4N2E3OGJmMjNmNWE2IHB5M2sKKzY2NTMyIGU1MmEzNTk1ZGZkYmM1MDZlN2JkYTM3NDhkM2U3MDIyYWYwMmEwZTkgbGVnYWN5LXRydW5rCis2NjUzMyAxNzc3NmRmNmZkYTJjYzMwNDE2MjMzZjNkM2ZlMzkzYmE3YjMxMjk0IHB5M2sKKzY2NTM0IGMyZTJlOTI2MmI5OWIyMDhjZmI2ZTljOWI1NDI3YTFmNjE0N2VmNTkgcHkzaworNjY1MzUgOTIzZmI0NThiZDBjNjllZjliMTE3ODY5YWQ2ZTRlYjUyZTA1YTBhMCBsZWdhY3ktdHJ1bmsKKzY2NTM4IDM4NmEwM2VjMWZmMDE0ZGY3YjNlZGNjY2ZlZDM0ZjQ4ZmYzYjM4ODIgbGVnYWN5LXRydW5rCis2NjUzOSA1NWNiM2UxMWJkZjc0ZTY2MjdmYzhlY2I4OWI5NzZhOTgyNzZjZTUxIGxlZ2FjeS10cnVuaworNjY1NDAgYzIwMDVjMWNmNmNkZThhNTVmNTZhMTRiZTlkMjUyZjU0YmZhY2Q4ZiBweTNrCis2NjU0MSA0OTkyZmQ0OWE5ODVkNjc4Y2M0ZTBiODFhOTkwNTNlZWZjNjg5ODQ0IHB5M2sKKzY2NTQyIDI1ZjgwOTEyM2RmNjA2M2Y2NjVjNTYxYmJjNjY1NGM1MjUwYmFlOWYgbGVnYWN5LXRydW5rCis2NjU0MyBkMWFiODNhZDVlMmI5MzRmMzQwNDU0NDc3ZWQ4NzVlNmMyNmUxOWQyIHB5M2sKKzY2NTQ0IDZiNjc5Y2EyNDM2OWZhMWQyMzRkMjFhMTJjNzYxOTk3MmMxMmNiM2EgbGVnYWN5LXRydW5rCis2NjU0NSBmMGMyNWU2YmJhZDU4MGI3Y2FmNjA1ZTkzOWM3OWUwODhiNWE3ZWNmIHB5M2sKKzY2NTQ2IDM5YTk0NzE5NTQ1NGRjMjA4YmMxMmE5MzJlODI0YTdmZTQzYjVjNzcgbGVnYWN5LXRydW5rCis2NjU0NyBjMTc3NzAwNzRhNGJlOTU0OTE3OWFlYzI2MzBlOGMxYjRmNGQ0ZTA5IHJlbGVhc2UyNS1tYWludAorNjY1NTAgNTQ2MTNiYTFkY2FkZjUwMzdhNzYzNDdlYzAzNDAzYTM4OTBlZjcwYiBweTNrCis2NjU1MSA2YWUyOGE1MDNjOWQxNmE3ZGIyZGNiOTllZTQzMGY3ZTQ0ZmMyNGZiIHB5M2sKKzY2NTUyIGYzZGE1NmUzZmNlNGIxNDJmMjM2MWE4YWZiOTdiMWM0YmJjMmQzMGUgbGVnYWN5LXRydW5rCis2NjU1MyA5MjJiOWUwM2IyNjBlYzU5MmYxNjRmOTAwNzZmZjczODZkZjFhNDAxIGxlZ2FjeS10cnVuaworNjY1NTQgZmU2NjBlOGM2M2JhNjkwY2Q1OGI5MTUzNzFkMzAzNWJhM2RlOGUyMiBsZWdhY3ktdHJ1bmsKKzY2NTU1IDA2Y2YzNWU2ZTMwOGVhYmZhZWE4M2NhMTMwNWU0YTI3YzkzMmE2ZTUgcHkzaworNjY1NTYgZTg2ZWQxMTM1MzVjZWYwYThiODhiNDg3YmNiMTFhMDc0MzY4MGRlZiBweTNrCis2NjU1NyBlZjc1ZWIzZGM0OGU4MjAyZGU5MzkyMzZjNWJlNWYyMTIzZmI4NzdiIGxlZ2FjeS10cnVuaworNjY1NTggMjdjMWJhNzE4NmQ4ZjcyOWM0N2ZjNmE2YzA0YzhhYWM3MjM0MTIwZSBweTNrCis2NjU1OSBkZTkwYTcyZTNlMjM0MzhhOWFlZTNiNjZkZjFmZTQ3ODlmNmJlNjIzIHB5M2sKKzY2NTYwIDFkNWMzYmNmMzVhZDM5ODZjMDhiYmNmNWJmOWNkZWIxNGVlMWQ0NmYgcHkzaworNjY1NjEgMDE4YmNkNjRjMzNlNGY2OGM3MDJjNGI1NzljZDdlZWZmZWU5N2E1YSBsZWdhY3ktdHJ1bmsKKzY2NTYyIDBkZTVhMzg4YTI2MTgwNGU3N2ZhMDY3ZDU4ZmEzYWQ5MzE4ZjI3OWYgcHkzaworNjY1NjMgNjQ2MTZlNWQ4MGI0YjI2NGI5YTljZjkwODM1ZDI4ZjE4YjI5OTVkYSBweTNrCis2NjU2NCBmNmRmNTY3Y2NkNjI4OWE0ZDYwNWVjOTJkZmExM2M4NGUyN2ZmN2RkIGxlZ2FjeS10cnVuaworNjY1NjUgYmU4OWQyYTM0YjJmODlhMzE3YmFmY2UwNGY2YjQ4NDUzODA3NmIxZiBweTNrCis2NjU2NiBhNWYyNmIzYTI2ZmQ5ZWU4ZTU0Y2FjMTUzYjM3MjhhNTA1MTNkMGFiIGxlZ2FjeS10cnVuaworNjY1NjcgZWRmOGE2YzY5MDI4Yjc3NTg5NWExYWVhOGU3YTc3ZmEzZDg4OWE2NyBweTNrCis2NjU2OCBmM2ViMDAwNDg3YjkzNjJjMmZjZjU0M2UzOTk5NjdkNDdhODVjNDgzIGxlZ2FjeS10cnVuaworNjY1NjkgZjg0MzBiNjg3NmZiMzZjZmE5MGNhZTZiYWJjNDI0NzY3ZWZlMmUyZCBsZWdhY3ktdHJ1bmsKKzY2NTcwIGJiZTJlMzU4NTJjZDRkOGEwMmM3Y2E3MjJmZjViZDkzODUyN2VlZTMgcHkzaworNjY1NzcgYjNjMjlkYTkzNGY1ZWRmODhmNmRlMGFkZmQzOTBmNjYzNzNhMTBiNSBweTNrCis2NjU4MCAyNWRhMDdmZTM2MzBjMDFiODk5MThmMTBjNzM3OTNlODkwYTc5ODQwIGxlZ2FjeS10cnVuaworNjY2MTAgZGI5OTllYjJiYmRjNzU5ZDJiNDk3MjdjYjc1MWIwMzI0Mzg1MTk5ZiBsZWdhY3ktdHJ1bmsKKzY2NjExIDYwNmFiMjVkZGVmMWIwYmUyZmRlZTMxZDU4YzY5MGUzZWMyOThmZGEgbGVnYWN5LXRydW5rCis2NjYxMiAwMWZjMDgzZTFkZGQzNTEwMWMyZTIzNjA1NjM0NmRiNmVhMjdmNWU1IHJlbGVhc2UyNS1tYWludAorNjY2MTMgYTg3MGMzYzZhOWFkMjQxMzU4OTJjNzdlOWZhNTgwNzNlZjZjNzU5NCBweTNrCis2NjYxNCAxMjBiNGJjZjA5ZmY3MjBlNjMyZjRlZGU1ZDc5MWU5NGY5ZWU1OGJjIGxlZ2FjeS10cnVuaworNjY2MTUgYTAwNjI2ZjJkNzA1NzkyMzVhZDAxMDQyZjEzODEwOTE0OTJiMTM4YSBweTNrCis2NjYxNiA5ZDFjNTMxMTY4Y2FkN2ExZTg5NWY2NzBiODgyYTkyMWM4YzYyNjg0IGxlZ2FjeS10cnVuaworNjY2MTcgMDkxYTZjNTIyN2E5NDc1YmEzYWU2YTNmMjExMzNkNDhmMDZiM2Y1OSBweTNrCis2NjYxOCBhOTFlNzhhYjRkN2QyMDMxMzZmODZlOGYwYzlhZWMzM2Y4ZTAwZDBiIGxlZ2FjeS10cnVuaworNjY2MTkgM2ZlYmNiZmQzNjAxYzQyM2EzMWIyNzA3NDVhZmUyYWUyZGNiNjE5OSByZWxlYXNlMjUtbWFpbnQKKzY2NjIwIDVlNWIxNWI2OTJlMTQxN2Y2YTk4Y2ZiMjkwMGMxZWY4NTBmNjEzOTQgbGVnYWN5LXRydW5rCis2NjYyMSBhY2M0NGI3ZmFkZTA5YTZmZTcyYzA5NDE0ZjU4MWU0NDEwN2EwOGJkIHB5M2sKKzY2NjIyIGRiYWVjMjQ5ZDU2ZjEyYjVmODk2OWE0ZTM0YmNiNWY4M2RiMWZkNTMgcHkzaworNjY2MjMgNzhhMjFiMjc4ZTFiOWI3NGE4MmRlZjQxYmY1YTUzYzQ0MDZkYzJlMCBweTNrCis2NjYyNCBmMzIzZmE0ZTQ4ZDc5YTI4NzE0MTI2ZmY3NDM4ZDI4Nzg4MDJlOTAwIGxlZ2FjeS10cnVuaworNjY2MjUgYjU1MGRlNDI4NTFhODVjMTA2NmMwZGM3ZjdmZmE0MTVhMjQyMzQ1ZSBsZWdhY3ktdHJ1bmsKKzY2NjI2IGIyMzJlMmU5ZTc5MzdlMzQ1NzMyMjkzNmY5MTllMWQwZmE2M2RjNjIgcmVsZWFzZTI1LW1haW50Cis2NjYyNyAwNmViZjEyYmZhNjJjYTViOWVjYTJlN2FkNzBkNjU4MjhhOWMzZTJkIHJlbGVhc2UyNS1tYWludAorNjY2MjggNGVlZGU1ZTQ4YWU2ODVhYzdiZDk1OTEyZDI3YjY3YTRhMTMwYTVjZiBsZWdhY3ktdHJ1bmsKKzY2NjI5IGUxM2MwM2UwY2UwYmI0YzkyM2QyNmZkNzNmNTY2NzI1MDBmZDIxYjcgbGVnYWN5LXRydW5rCis2NjYzMCBiYmFkYjk2MGZkNWMxYTk3NjhmMDlkOWJiNzFlNzAyN2IxNmMyNTUwIHB5M2sKKzY2NjMxIDMwNGJlYTg3MzFkMjFhNGUwOGViZGNjZjYwNWFlZmZjYmI1MjMxMWMgbGVnYWN5LXRydW5rCis2NjYzMiBlMGMwNmNhZWZiZmYzM2ZhNDcwNmNjZTU1ZTM4MGYxNTAyYWY2YzBhIHJlbGVhc2UyNS1tYWludAorNjY2MzMgNjQwM2YxZWRlY2MxOWQyNGM0ZWJhZWI2MTc1YzQ5ZTEyMWE5MmQzZSBweTNrCis2NjYzNCBlYjM1ZmNiYTY1OGVlMjViMzEwYmE0YWQ5MjQ0M2VjNjY5MGIzN2I5IGxlZ2FjeS10cnVuaworNjY2NDMgMDc1MDQyYzc3MjRjNzRhNDliNmIzZTA0ZmQxNDQ1YWM4NzRkZGZjMyBsZWdhY3ktdHJ1bmsKKzY2NjQ1IGRlNzVmYjRlODAwY2VmOTNiOTIzNDUzMzZlMDA2OGFlZjUxZDBjMWMgbGVnYWN5LXRydW5rCis2NjY1MyBjZGM3ZjYzNjc3OGI2OTIzZDBmZjcxZTk1ZjMyNjAwNmVmZTFkNmI1IGxlZ2FjeS10cnVuaworNjY2NTQgOGExZGJlNWMyYjc0NWMxODU1YmE0MDE2MzhkOGRiZmI1ZjI0ZjkxNCBsZWdhY3ktdHJ1bmsKKzY2NjU1IDUyODQ3NjhjMjY0YzU5ZDU1MDM0YWM1MTFhNmQwYmM4NjczZDdmN2EgcHkzaworNjY2NTYgZDcwYmNmM2I2MjhkN2EyZWQ2MTliZjkzZjRlYjkzOTA1YzBiYjAxZSBweTNrCis2NjY1NyAwNjk5YTcxMmEzZGJkZDhjNTJmMThkYWQzMDY5MTI2MTMyMTJhMDBmIGxlZ2FjeS10cnVuaworNjY2NTggNzY1MWI5NDEzYzg1NGNiNjBkMGMxMDNlMzFkNzM0YTkxMjFhMWJjMiBweTNrCis2NjY1OSA3YTNmNzUyYWRmMWNmODk0NTJiODgzOWM2NDMxZGQ5MjUxN2IwYWJjIHB5M2sKKzY2NjYwIDUzMGM4MTQxOGMyODM4Y2M4MjJhOTkwYTJhM2UzZWFiYzMzZjljNzMgbGVnYWN5LXRydW5rCis2NjY2MSAyY2E0MTU5YmJlNjU0MDY2MTczYTkyNTAxZjllMjVkNDZjOTNiNzQwIGxlZ2FjeS10cnVuaworNjY2NjIgY2UyZmNhNDhhY2U0MzI2NjgxODU0NjMxM2M5YTFkNTNmYTg2ZjM0MSBsZWdhY3ktdHJ1bmsKKzY2NjYzIDc1NWYzNGFiNDM4YjE5MTY3YzM3MTBkNWIyNDhhNmUzNGMyNTU5YzIgbGVnYWN5LXRydW5rCis2NjY2NCAyMzFmM2EyNWNjZjViMmRlODhlZGE5MGYyNGU2MDlkYjkwNDMwMmRiIGxlZ2FjeS10cnVuaworNjY2NjUgZGEwNzM0ODRmNWFjMzA2YzU4YmNjODE5NWQ0ZDA2N2ZmNGI0N2UzYSBsZWdhY3ktdHJ1bmsKKzY2NjY2IDQ4NDRjYWMwODY1MjVkMmE5ODVmOTY5MDJhN2I4MmE2YWU5OGY3YzEgcHkzaworNjY2NjcgNmNjNWFjZTlmNTEzZTAwODAwZTEwMWE3ODI1NmU3ZGU5MjViMDFlYyBsZWdhY3ktdHJ1bmsKKzY2NjY4IGVjNDJmNzk4ZjU5NzM2NDQwYTAzMWZlNjJmMmQzMzcyZDU4MmJlNjcgcHkzaworNjY2NjkgNTZhM2ZhNDQ5YzZjNmMxMzU2OWY4YzRhZDNiOTlkMzA2N2QwMTdhNyBweTNrCis2NjY3MCA1M2FjZTM5N2I5YzViYjViZjUyM2MyOGQ5MmIzMTBlYWQ3ODZkOTMwIGxlZ2FjeS10cnVuaworNjY2NzEgZGJjNmVkYmE3MGE3Yjc2NGFhNzQ2OWMyMjIzNmM4NTZkYWRkYjFlZCBmaXgtdGVzdC1mdHBsaWIKKzY2NjcyIGNjNjliOTMxYTYwODJkOWQyNDI3NDkyOWJlZTI0MTkwMDAxYTk3MzYgZml4LXRlc3QtZnRwbGliCis2NjY3MyA1YTlhODNjYWU4ZjFiMmFiOWZmNzM1MjRjNTc2N2NlYTFjNmE5NDZlIGxlZ2FjeS10cnVuaworNjY2NzUgYzVmNWQ2YTMxM2U5OTczZGQ0ZjA5NGNmY2U5MTQ3MDkwM2RjZTc3NCBweTNrCis2NjY3NiA2NGJhNTI0MGFmMzFhOTJiZDgwYTk0MWYwMzJjZjc5NjBiZDRlY2JkIGxlZ2FjeS10cnVuaworNjY2NzcgNzRlN2Y5N2RhZDdkZWRkMTA1YTE3YTJmYzhhYjBkODAzY2EwYTM3MCBsZWdhY3ktdHJ1bmsKKzY2Njc4IGE5NTAzMGY5MzllZDA4ZGViOTM0MzdkMDZiMjYyZGE4NWVlMTM3MGQgcmVsZWFzZTI1LW1haW50Cis2NjY3OSAwMjQxN2I1NmU0YjIxYTk4Y2Q5ZDg2ZmFkNmMxOTM4MGM5NWRkNGU1IHB5M2sKKzY2NjgwIGQ1ODYxODVhN2E1MTY3YWVlMmJkZThkYjk5NzVjODk3YzkwMmY0NWEgcHkzaworNjY2ODEgY2FkMWQyYThhOWQzYjliMGUwNjZkODQ4YTg2Y2EzNjFjYTkyNDRlOCBsZWdhY3ktdHJ1bmsKKzY2NjgyIDQwNTM2ZGRjMjZhMTliOGZlZTI1MGY0MzczMDVjZjI1NjYzODM3YTQgbGVnYWN5LXRydW5rCis2NjY4MyA1YjM1Mjk0ODU0MjE4YThjYWYxNjE2YjFmN2ViZDJmYTYxZDhiZjQyIGxlZ2FjeS10cnVuaworNjY2ODQgNjllMTg0Yjk5MGRjNzdiMmU1OGMyMmZmZjNhZThiZjNmMDQ3ZDc3ZSBweTNrCis2NjY4NSBlZGI1ZWVjZjNiYjhiZGViNjg1ODk2ZjcyOTg3OTJjODU4YjUwODcxIHJlbGVhc2UyNS1tYWludAorNjY2ODYgZDg4ZjFmMmYwMjEzNWY2ZTQ1N2Y0N2IzODkwNjE5NzkzOTMyMGIzMyBsZWdhY3ktdHJ1bmsKKzY2Njg3IGFiMzRhNjQ3ZTIyZmNlYjUwNDUxNGZmYmJlMWYwNWVhM2U5MmI4ZjggcHkzaworNjY2ODggYjQ5NjRkZjY0Mzg0MGU0M2IxYmFkMzZiNDNiNmExMTAwOGE4YTViOCBsZWdhY3ktdHJ1bmsKKzY2Njg5IGY0YWViMTEzYzllZmFkY2U2OTViNmRkN2QxODY4M2M2MmZhNGZhMDMgbGVnYWN5LXRydW5rCis2NjY5MCA0MTU2NTU1ZjM5MTE4MWJjMGQ4ZmNhY2U3MzUzZTcwNjI3M2ZhYzg2IHJlbGVhc2UyNS1tYWludAorNjY2OTEgMzc2MzI3Y2I2ODIxM2M0ZDE0MDIxNDFkNTJlMDA1NmU0YTAwZGQwYiBweTNrCis2NjY5MiA3YzU2NjI0NTQ4ZmQ0ODJmNWJhZmZkY2QwN2U2YTUxOWY1NGFjNmJlIHB5M2sKKzY2NjkzIDZhNzMxMzRmOTYwMzJlZjExNjJlNWZmMjc1OWIwMmVjZWM4ZDg2NTYgbGVnYWN5LXRydW5rCis2NjY5NCBiMjgwMWFjYTlkNmI1ZmJlMWExYTBlOGU4NGQzNDMyMWJiMmJjMTMzIHB5M2sKKzY2Njk1IDU5OGQxOTkzNjE4NmEzODA0NDhlZTM5MWZlNDBlNTg1YTNmZTU4NmIgcHkzaworNjY2OTYgYWY2ZmU5YWRiMzljM2YzYWQ1MzhiOTYzMjg2NzQ5YTU3OTc4YjhhOSBsZWdhY3ktdHJ1bmsKKzY2Njk3IDZjZWFjZDAxNWQ2NzhhNTNjMzFlYWNhZTljNjhlNDNlM2M5ZDkxNTEgbGVnYWN5LXRydW5rCis2NjY5OCBhNGVkNTRkNTc2NGM5MDYzMWMwYjdiNTUwMzVmMWMwYjRhMWYyNjM3IGxlZ2FjeS10cnVuaworNjY2OTkgNjc2NTk0NmUxYWM0OWZmYjM1NGJhYmE4NWZmYzM4MjBiZjMwOTEwMSBsZWdhY3ktdHJ1bmsKKzY2NzAwIDdmMWY5ZTE4Y2RmYTMyNWFlOTU2NTI1NDcwZTIyMDU3NTk1NmQwNzcgbGVnYWN5LXRydW5rCis2NjcwMSA4NjA0NWUxZWU1OTUwYzRhMDAwNjMxZmQ2YWU2NGQ2YWEyNzRmYjFkIHJlbGVhc2UyNS1tYWludAorNjY3MDIgMWY0ZWEwMjI5ZWM2NjhjYzA1OTBiYjk1ZTYyMTk2MmZhMDlhMjkyMSBweTNrCis2NjcwMyBlZWQ0ZDUzMzMzMmYwZmQ5MDFhYjMwZDI5MmQ1ZmFmNmFhZThiOTM2IGxlZ2FjeS10cnVuaworNjY3MDYgZDMxODIzNGEwMGQ3NTg2Yjk1ZmRkMzY5MzQ0ZDFmNmEyMDI3MTVhNCB0bGVlLWFzdC1vcHRpbWl6ZQorNjY3MDggZWE1MzE2M2IwNmRlMzJhNmZiYjM5MGNiYmIxNDkwMTMwMTFhYjE3YyBsZWdhY3ktdHJ1bmsKKzY2NzEwIGI1ZmI5YjAwMmVjMzE3M2NhOWEyM2Q1NjBmMjQ2YmFjODA5NGFhOGYgbGVnYWN5LXRydW5rCis2NjcxMSBhZGE2ZDdmNzFiNWRmMDc2ZDllMGIzNmVmN2YwZWQyM2Y2Nzg4NjZkIHB5M2sKKzY2NzE0IDU4YTk4ODRkMmJjM2QzM2Y5ZGY4NTUyODU3NzA5ZGZlOTlkMTgzODQgbGVnYWN5LXRydW5rCis2NjcxNSA5NWZmZjVhNmEyNzY1MjBiMmU3ZTBmNzVmZTMwM2Y0OTM3NjU2N2E1IGxlZ2FjeS10cnVuaworNjY3MTYgYmM0Y2E4MGJiNWZkNGM5MWE4YjdlNzA3M2U3YzRkMWNjMWI0NzcwZCBsZWdhY3ktdHJ1bmsKKzY2NzE3IDU0Y2QxY2M3MGE0NzhkODUzZWY4YzM2NGEyZTAyN2I2ZmE2MDI0ODIgcmVsZWFzZTI2LW1haW50Cis2NjcxOCA3MjkyODkzZmMyYzVmOGI4NTA4MjdjZjI0ODIzMjk2MDE5ZGJmZTVmIHJlbGVhc2UyNi1tYWludAorNjY3MjEgNzQ4ZWM5YjJhZWYxMDI3YmQ5MzNkZTZmNzg5YmFiOGJjYTg4MGU2MSBsZWdhY3ktdHJ1bmsKKzY2NzIyIDlkMmYyODE4MjgzZDVlODljNDEyZGQ2ZjkyOWQ1NmRjMGRlYTA1MTUgbGVnYWN5LXRydW5rCis2NjcyMyBhNWYzMGQwNjQ5M2NiZDRjOTVkOWE4ZDZlNDZkODIxNTM2ZDY2ZmFlIHB5M2sKKzY2NzI0IDg4ZTYxODNjZGIzOGM2YmNhZmNjNjQ4MWU3NTA3YjY4OTNkOTA1ZGQgcmVsZWFzZTI2LW1haW50Cis2NjcyNSAwMzNiYjVjYWNkMGEzNDE3YmU2ZjRkNDVjMjI3NjBiZDFmMzE1MjA0IGVtcHR5Cis2NjcyOCA2ZGQ4N2RlODUwM2Q1NjUyNmNjZjhlMTVkN2JmMzE5ZDYyMTYyZjJmIGVtcHR5Cis2NjczNiA1NmQxNzg4NzQ4MjEzM2Q5YjdlNWRkMjg3YWIyMmZkMWNlYWE0ZmI4IHJlbGVhc2UyNi1tYWludAorNjY3MzcgZWViNWZhM2VmODg5YTIyMTkwYzY1NThjMmFkY2U4ZmMzNDAwODlkNiBweTNrCis2NjczOSA5Yzk3MWQ1MmEzYzM1ZmFiMmFhNjdlMzM5N2E1M2U2NzE0NjBlYmQ0IGxlZ2FjeS10cnVuaworNjY3NDAgODczZDFlMzY5NzlkYWU2N2Q5NGU0NTViNTllMjgyNTRlMjgxN2I1MiByZWxlYXNlMjYtbWFpbnQKKzY2NzQxIGY5ZjAxNDg0ZTQ4YjAyYzFkMWM4ODYxYzk0ZmFjODhiYTJjN2MwNGUgcHkzaworNjY3NDIgMDY4ZDliNjE0ZTdiZmZhYjY4ZGQyODExMmJiMGZmMTM4ZThmNDIwMyByZWxlYXNlMjYtbWFpbnQKKzY2NzQzIDhhN2M5MzBhYmFiNmEyYzI2ZWFiNjk4OTFmNDlkOGJlNDlhZmU1ZGUgcHkzaworNjY3NDQgYjlhZmE3YzljYzM1ZTE1ZmI2OGE5ZDQwMWE2YzEyZjNmNjEwMWQxYyBsZWdhY3ktdHJ1bmsKKzY2NzQ1IDc0MjZkOGQ3Y2UxYjRhNWRhZGY1OWRmN2E2NmNjZjhlZDU0NzlmYmEgbGVnYWN5LXRydW5rCis2Njc0NiAyODFiMjFjYTAzZjYzNjMwNGY5N2U5MzhmNmJkNjM4MTcwM2RiNzhiIHB5M2sKKzY2NzQ3IDAxMzg5NTI2YmEyNTU3OWUzODU1NmEyYzI4MDEwNGMxZWUyN2UwNjUgcmVsZWFzZTI2LW1haW50Cis2Njc0OCAyN2Q3ZWZhM2UxYWMwMDU1MTkyYThiZDc0MTBkNDJhZDMzNjg5Y2Y2IGxlZ2FjeS10cnVuaworNjY3NDkgNjQyZjIwYjIyNTc3OTU2MjhlNjM4YTcyNGJiMGYxMWZjNTExOTc0MCByZWxlYXNlMjYtbWFpbnQKKzY2NzUxIDg2ODkzYTM5N2RkMDUxZDRiMTUyMzVhOThlY2UyZDhiMjhhMzRjMTYgcHkzaworNjY3NTIgZjgxMmJjMmI2YTdiZmRmODcyYmUxNzg1NDJlNGIyMThkMDMyZmM5YiBsZWdhY3ktdHJ1bmsKKzY2NzUzIDk4MTMwNmY0YjQwNTAxMWUyZWMyMDVhZmRjMGUwYzViMjYxMWUxZmEgcHkzaworNjY3NTQgM2FlYWM0YTZhMmNmY2I1YWU3N2JiYTc1MjBiOTgyOWM4OTFiZTFmNSBweTNrCis2Njc1NSA0MTllNzIxYjNjYTllMjAzMDUyNjkyMzg0YWU2OWJlOWMxZDBhNmIzIHB5M2sKKzY2NzU2IDIwMGRkMWQ4MjBmY2Y0ODU5M2ZlODNiNGIyNjYwOTY5MzBlMGJkYjIgbGVnYWN5LXRydW5rCis2Njc1NyA1N2IyZDlhMjI1OTRhMTVkNTc5MDJlYmNiYzlmODFkODhjOTFkMjExIHB5M2sKKzY2NzU4IDRmNzcyMDA0YTg1ZGNhYzUyNjNmZTllZGJjNTQyNjY3ZTU2OTM2NzcgcHkzaworNjY3NjEgNTVmOTE0YWU5MGVkNjRjYTAzMDUyZWM0ODJhY2QwZDRlMTVlZmY5YyByZWxlYXNlMjYtbWFpbnQKKzY2NzYyIDAzOTEwYjg5MjY3OTFjZDY2ZGNlNDVmZjI5NWQxMGU3MGUyMTBiNTMgcmVsZWFzZTI2LW1haW50Cis2Njc2MyAyMjIzNjU2ODJjMWJlMjA2MjMzYTE4OTcyY2FjNGVkN2E1OGYzOGY5IGxlZ2FjeS10cnVuaworNjY3NjQgMTA5MTAwOGYyY2JkMDdkNGE2NzQ4MzQ1NDgzMTdmMDMzNGVjM2ZiNCBsZWdhY3ktdHJ1bmsKKzY2NzY1IDI4M2U1NDI2NGMwZDY3ZmU0ZGZiYWQyNjE4MDhmMDAwYjRmNzI4OWUgbGVnYWN5LXRydW5rCis2Njc2NiBmYTA0MGQzMGNmY2FhOGE2MzI3NjU5OGVlZWFiN2UyZmIyZmYwN2Y3IGxlZ2FjeS10cnVuaworNjY3NjcgZThlMTk2Mzk3ZjQ1NzFiNGIxZDYxZjFhZmQ2MTYxMmIxOTk5ZjI3MCBsZWdhY3ktdHJ1bmsKKzY2NzY4IDc0OTgxZGM4MzlmZDIyZmZmYTY5MDZlOGY4N2E5Zjk4MzA2NjRlYmUgbGVnYWN5LXRydW5rCis2Njc2OSBlODIyOTkyY2Y2Y2VjY2NmZGY4YTI0YjgxMjI1MDAyODE5YTJmYzRjIHB5M2sKKzY2NzcwIDhlYzg0OTc2MDRjNzdlN2Y1NTQxZDk4ZjQ2ZmQxNzlmMjA5YWQyMGQgcHkzaworNjY3NzEgYThmOTU5NWI5ZjU1MzZkZDk3OGEwOTk3ZDU2ODJiN2Q4OWVkNTM4ZCBsZWdhY3ktdHJ1bmsKKzY2NzcyIDA4YzQ4ZWEwNTA0NWJiMDNmYWQwNjVlNDU5MDYzNGI2YWVmNmUxMWUgbGVnYWN5LXRydW5rCis2Njc3MyBiZjgxY2I4ODkyZjUxY2U3MzYzZTk4OTM0Mjc0NzNkMDJlOWFiNTY4IHB5M2sKKzY2Nzc0IGI1ZjM5YzhhNDQyMzllNGNjMGZjMzc0NGQ3ZTVjMDQzZDgxYmFhNDkgbGVnYWN5LXRydW5rCis2Njc3NiBmNWI5YzZmNGM1OWM3OTA1ZDAwNWMxMGZjMTc3NTE1OWRhOWJmZjBjIGxlZ2FjeS10cnVuaworNjY3NzcgZWY0YmI0ZDVkZmRlOTdhNjVjYThjNDcyZmFkODgyNjc2NTJjZmE1NCBweTNrCis2Njc3OCAwYjFkYjI0MmQyMzJlNDdmN2U5NWVjNTE5NGM2OTk4NjYxMGMzOGEwIHB5M2sKKzY2Nzc5IDg0Y2NmOTFhMDZjYzU0NTJhNWY4YzczNzRjYTU5MWY5NGM1YzIwMjggcHkzaworNjY3ODAgOGE4OTJjZjI1ZTdhYTZiMzVmNWEzMjUyMWNjMmIzMGVjOGU3YTk0MSBweTNrCis2Njc4MSAxNmExOTRkYTc3ZGU5NmU1NzdjMjdmNzE0NmNlMWUxMGNiZTc2OTMzIHB5M2sKKzY2NzgzIDg0NDJmMTM3MjBhNGRjMGU2OTY1YmQxNGU0ZTcwNzQwYjY2MmNlMjMgbGVnYWN5LXRydW5rCis2Njc4NCBiZTJmODViZTU2NmU1MTYzMjNmYjRjN2UyNjEzZDJlNTY2MGQ3MjYzIGxlZ2FjeS10cnVuaworNjY3ODUgYzU2ZmJiN2MxNjg5Y2E4YjBkOWE0N2ZkYWFiN2JjZTI4OGE2ZmQ2NSBsZWdhY3ktdHJ1bmsKKzY2Nzg2IDg4NWZkZjU5NzBjYzU2M2E1YzBhYWE2ODQzOWRiODBjNTJjMTE3MmEgbGVnYWN5LXRydW5rCis2Njc4NyBiMjFkZTA0MjEzOTVkNTA4MzI0NzI2ZjkwMjlkYzg3YWU4OTUyYjE1IGxlZ2FjeS10cnVuaworNjY3ODggNTgwOGE3YWUwM2FjZDkwN2YwOTAwYmRkMjIxNWI1OGFjYjBiZWM4ZCByZWxlYXNlMjYtbWFpbnQKKzY2Nzg5IDM1NmU4OGQ0YWYzMDIzYzdiZWIxNmI5N2Y0YzI0NmNkNjcyMjUwZjkgcmVsZWFzZTI2LW1haW50Cis2Njc5MCBlNTkxZTc1ZTgzYTJmMWYwMjcwMmM2YWIzNjliYWUyOWJmNjUzYTNjIGxlZ2FjeS10cnVuaworNjY3OTEgZjIxYTNkODU4NWM2NTU0NDlmZGRjY2EyMTJkMWFlNDQ0NTkzOGI5NSBsZWdhY3ktdHJ1bmsKKzY2NzkyIGFmN2EzOTlmYzI3MjIyYzIwNjczYTE2MmIwNzJjZGM1MjdmNjMwYWUgbGVnYWN5LXRydW5rCis2Njc5MyA5ODRhOGJjNmQ5NTZmMzU1MTQ0NjA3OTJkODM1YjI3M2M0NjdiOTdmIGxlZ2FjeS10cnVuaworNjY3OTQgZjczMWYwOWVhODM5NGM0ZTQ4YzM1OWE2ZDk5MWJkOThiMjc4ZjJkMSBweTNrCis2Njc5NSBhYzMxNmYyNTIyOWM5MjA0ZTI2N2NmYTIyYjk2ZjhkYWZmODc2NzlkIHB5M2sKKzY2Nzk3IDczY2UzYTExMDQ2ZmJkYzAwOGJjYjM0ZWU4MWM0OTM4OGRkMmM1NzEgbGVnYWN5LXRydW5rCis2Njc5OCBmZjVjM2RkNjhkMDdjMzg4YWFkMmYwOWJhZDBiYzY2NTMyZmUyNDUzIHB5M2sKKzY2Nzk5IDA1NjA0NTU1YjhkNDAwZGJiYjE3MmY4NGYwZjJjNTg0OTRiZmY3MWYgcmVsZWFzZTI2LW1haW50Cis2NjgwMCAyZTc5NDc1N2JkYzg0YWI3OGFkMzY0NjdmNjkxMGYyMzI3MTk1NWJkIHJlbGVhc2UyNi1tYWludAorNjY4MDEgZTA5NmM1MmNkNWNhOWExM2U1MTk0ZmNkMWUyY2ZkMjVkN2UyMDA0MSBsZWdhY3ktdHJ1bmsKKzY2ODAyIDhmNWE4ZWE1YmE3NmVhYTNmNWZiNjkyMWYzNzhjMjhiMTFiMjA0OTYgcHkzaworNjY4MDMgZGE5NTVjMzM5NjViNDkyMDMyNTBkZjNhNWQ2YmEzM2JhNTNiYmNmMSBsZWdhY3ktdHJ1bmsKKzY2ODA0IDM1NmExZjZlZjM0ZmQyODc3YWVkOGM3YWY3ODJjOTg1ZTljYWQ5YzQgbGVnYWN5LXRydW5rCis2NjgwNiBjNWIyN2RmNzlkN2Q2ZDliZjZiMjU3NjIwMTBiYmE0MzBlNmMyY2NhIHB5M2sKKzY2ODA3IGMwNDc4NjUxNDYwZmNhZmQ3YThlMTliM2U0MDFlMjZhNThhYzM3ZTIgcHkzaworNjY4MDggOWU0MWM1ZTdlMzYwMTk5NjliMGIyZWQyM2Q0ZDVhNjZiOTRiOTI5ZiBweTNrCis2NjgwOSA1MjRhYzc0NGFlMDQzOTY2NjQwMDkzMDlmMTBhZmEyNjhiYzBlNDU0IGxlZ2FjeS10cnVuaworNjY4MTAgZGM5NWU0NmYxZjNlODlhOWJkNjIwZDM0MjdlNjI4NTAzMzIwOTI1NCBsZWdhY3ktdHJ1bmsKKzY2ODExIGMyZDAxOTZlYTU4YmQ0NmJlZTM5MDg0NzJjZjI5OGU2YTE5OWQ3NTAgcHkzaworNjY4MTIgMDJkZDVkYjYyOTBmNDViZTJlZWExZWJkNTczYWU5ZmNiODkxZTQ1NSBweTNrCis2NjgxMyBjOTMzYzg0NjdiZGRhYWVlYmY0YWZjMmYyM2I5ZmE2NDhlNTcyM2VkIGxlZ2FjeS10cnVuaworNjY4MTQgYzljNzhlMDBkZjY3M2U2NDM1NzNlNWJjNWIwMzRmYjQ1MjNmMzgyNiBsZWdhY3ktdHJ1bmsKKzY2ODE1IGM1YWU5MzJmNjNjOWRhMzQ4YjZhZDUyOWY5NTk2YzljZjk4NjEyZGEgcmVsZWFzZTI2LW1haW50Cis2NjgxNiBmNTExNWMxMzJkNGFhNmI0ZDkxNzA1MGQ4MDUyNGMzYzZlNTQ3Zjc4IHB5M2sKKzY2ODE3IGRmZTMxMGE0MDI0NThkMTE2NmI2YjBiMTRmOGJiZjkxYzk0MTRhMWUgcHkzaworNjY4MTggN2FlYzAwMDE1YTllMTU4OTRkYmRlNDljZmQyMmE4M2I1NmUzNzc5MiBweTNrCis2NjgxOSBkOGI0YTYxYWJmMjVmNzE1YWUzYTY2OTYwMzE0ODU2ZWExZDYxNDZlIGxlZ2FjeS10cnVuaworNjY4MjAgZGJkMmIxODE3YTc1ZDQyOGYwNDIxZjY4ZmQzYzYyMjM5MzJiNmJmMSByZWxlYXNlMjYtbWFpbnQKKzY2ODIxIDEyNTk4NGI3MWE3NjhlMjAwNTU1ZTg0YTIzNWRlNmJkYjIzYjdmOWUgcHkzaworNjY4MjIgZTk5MTUzOGI5YTg3NmM3NzRlNjA5MDg4NzFiZGM4MDg2ODZhODA5OSBsZWdhY3ktdHJ1bmsKKzY2ODIzIDljN2VkNzBhYTJjM2ZlNGY4Y2Y0Yjk0MGJlMDE0MTIyNjMyMzc4ZGEgbGVnYWN5LXRydW5rCis2NjgyNCA3ZWZkZGFlNTBkMjU1MDM5MTUyMWVjMzYzMjk5MDMyYWIwZThlNTQ2IHJlbGVhc2UyNi1tYWludAorNjY4MjUgNjY3OWMzMjUyZjliMGViMjVkZDgzMmNiMzhkMTA2NTc0ZjE2NzliYiByZWxlYXNlMjYtbWFpbnQKKzY2ODI2IGRkOTdkYzc5YWUwYTA1ZjE0YjdkZGMxODM4MGU0YzU5ZGU0ZWRkZTAgcHkzaworNjY4MjcgOTE1ODc4MThhZGI4MzgwNGEwZGVhZGFkOGM2NTdiMTgzNDMwZmIwZSBweTNrCis2NjgyOCBkMjE0MGRlNzY0Nzk0ZTdlNGYyYWIwNDU4ODgyNWEzOTRmMjI2OGE3IHB5M2sKKzY2ODI5IDFjOTgwNTU0YjU0YjJjMTBkNGJiN2VhODA1YmQ0Zjk1ODkyZDNmYjQgcHkzaworNjY4MzAgMGIyZjc2NWJhNGY3NzVjZjU5Y2Q1ZTQ4YTVjNTdlOTJjM2M4NjQ1MyBweTNrCis2NjgzMSA4MjA5MWRmNjUxYmU3YTkxNzY3NzcxOTMxOTM3MWZjNWZmMTMxMWY4IHB5M2sKKzY2ODMyIGNiNzg4ZTA4NDRlN2Y5ZDA4Mjg1NGEyM2ZkNTQzMzMwNzM0M2ZhMDQgbGVnYWN5LXRydW5rCis2NjgzMyBjZTdiOGMzMTdkYTIwZjhhNzQ1YTUyZjkzNjQxNTAyNzdlZGNlNzBlIHJlbGVhc2UyNi1tYWludAorNjY4MzUgZGVlZjI4NDgyMmY3NWQwN2E5MjhjMWE1MjVlODYzNzY1NjE2OGIxNCBsZWdhY3ktdHJ1bmsKKzY2ODM2IDIxMDYwYTU2ZGVmYzg4MWU2NzdhMTFkMTEzOTNhMWQwOGI0MjE3NWQgbGVnYWN5LXRydW5rCis2NjgzNyA2ZTdiODUzZTg2MTYwOTMzNDI3Mjc4ZGIyNzNhNTVmZDBmZTA4ZDdmIHJlbGVhc2UyNi1tYWludAorNjY4MzggMWU1YjIwNTBlYzZhY2Q0ODJmODk5M2E2MTUyNGRjNDRmMmVmNjhmNyBweTNrCis2NjgzOSA1OWRhYTdjZjhjYTA5Nzk1MmQwOWRiODUzM2E4YmQ4MzdiMzA1OGJmIHB5M2sKKzY2ODQzIDY5ZWExMmRiOWIyOGI1OTgzMjJkMWM2NTdhZjY2NWI5ZjI3M2RlNjIgcmVsZWFzZTI1LW1haW50Cis2Njg0NCA4NjBmNjI4NDhhZjAyZmJkODM4NTU3ZDI4MDVlMmMzNmVmMzIxMTk3IHRsZWUtYXN0LW9wdGltaXplCis2Njg1MSAwMjA1Y2YwYjFhZGI5ZmJlM2NiN2RlZmFkZTMyOGRlNWUxMjFiZTY0IHJlbGVhc2UyNi1tYWludAorNjY4NTIgOTRkMTdjZjNkOGJiYmUwMjQyZDIyZTQ4NDkzMDI1MGU5ZmJlZjgzZiBsZWdhY3ktdHJ1bmsKKzY2ODUzIGI0ZmNiMmY0NzEwMWNiYmRlMTMzY2Y1MGFiMTRiN2I2ODZkMjRjODQgcHkzaworNjY4NTQgNDg0NTgxMGY1ODhlYTI4ZjA0NzAzMDMzZDA4NGM5ZWUzYTc1YjM5MiBsZWdhY3ktdHJ1bmsKKzY2ODU1IDU3NWY2NWYwMGM2YzA5MjNjMGIyNmVhOTNmMGMzMWMxNDhlNGFmMGEgbGVnYWN5LXRydW5rCis2Njg1NiBkNGI2MTNkYTM4ZGNjZjY4OWI1MTg1NjAyNDc1YWExOWJiYmYxNmI0IGxlZ2FjeS10cnVuaworNjY4NTcgMmJmMWMxYmQ4ZDk2ZWIwZWFmMjhjNjVmYjY4Y2MxMWViOTkzY2VjZSBsZWdhY3ktdHJ1bmsKKzY2ODU4IDljMGVkNGFlY2ZiZDkxZDNiYzgyOGY0YWJiYWU0ZTYxOWExZmMzMWYgcmVsZWFzZTI2LW1haW50Cis2Njg1OSA1MTg3NmE0MDNjMGRmOWJjNTY5NzA1YzdiOWIyZWU3Yzg2N2FjNzBlIHJlbGVhc2UyNi1tYWludAorNjY4NjEgY2U2NGNiYTUxYzJiN2Q5ZTNjMDZjNTU5MmI1ZjA0ZGE1YzE4OGZhZiBsZWdhY3ktdHJ1bmsKKzY2ODYyIDBkYTNjMzBmZTliNTIzYWFmMTdjNDMwYjE4YjYwZWI3MDlhOTc4YTcgbGVnYWN5LXRydW5rCis2Njg2MyA1NTBkNzUxNjBjYzRmNzM4MWI5YjUxZjI1ZGZlMDU1NmJkNDMxNDMwIGxlZ2FjeS10cnVuaworNjY4NjUgYTAyNThiYWVkMDA1N2MwNjUzNTQ0MTcxZjliN2U2MTUxMTlkMGQ3NyByZWxlYXNlMjYtbWFpbnQKKzY2ODY2IDBlMzU5YWZjMDY0NjgxMjUzZDAxZDA0Y2E0ZjBkNjczMjE4MDczNjUgbGVnYWN5LXRydW5rCis2Njg2NyAwYjdlMDIzODAzZmIzNzJlMDQ1MjUxZDNiZjE4NTZjMDQ0NWFlNjA3IHB5M2sKKzY2ODY4IDJhMmNkYjI4NTY1NmRlMmYzZjY5MzNmNTk4MzYzYjI1ZWRjMThhOTUgbGVnYWN5LXRydW5rCis2Njg2OSA2NjVmYTA1NjMyZjdhYjY4M2NjNGZjNTQ3YmQ2Nzk3YWFhODczODhmIHJlbGVhc2UyNi1tYWludAorNjY4NzAgMDhkNmRkNjg0YTZiMzEwZjNkNGUxYjgzOTc5ZmNiM2E3NjZkY2Q3MSBsZWdhY3ktdHJ1bmsKKzY2ODcxIDNkZDE2NTFhZjM1ZGQ0YmNiMjU4ZWYyOGJkZDM0ZmZjMDQwNmI1ZGQgbGVnYWN5LXRydW5rCis2Njg3MiAzNDJmNzAxODllYTllNWI1OGZjOTc4NTA5ZmUzMTk1YmMyYWIzZTNiIGxlZ2FjeS10cnVuaworNjY4NzMgYzBhYzQ3OTg0YjExMDRkZGJjMGEwNzQwZmVkNDcyNzJiYzY5ZmY0NyBweTNrCis2Njg3NCA3OTZiMWJiOTU1NGNiN2VhNjI1MjU2MTEwYmQ0YzVhMWZkYzU4OWU5IGxlZ2FjeS10cnVuaworNjY4NzUgNWEwOTIxMDFmMDY5NjNlMjUwZTViZjE0Yjg4OWQ5NTY1YWU3OWFjYiBweTNrCis2Njg3NiBiZGY0ZGE1ZDA0YWQ5YmU1MzU4YzBmNGEyYWQ1NWVkYmM3YjFjNDE5IHB5M2sKKzY2ODc3IGQzZGUwODJjYTAzMTRhOWVhNGIxOWM5NGRiZWEyMzNmZWNiZGQ0ZTYgcHkzaworNjY4NzggZTY3MDJjMWEwN2Q3NTJiM2VlNTk0N2I4MWYzMDcwNjQzMzZmNjgzNSBsZWdhY3ktdHJ1bmsKKzY2ODc5IDE4NzAwNGRmNTc5Y2IwMjEwZDc3MTg4YTNmMDVmMjlmMGU1NmVlZTIgdGxlZS1hc3Qtb3B0aW1pemUKKzY2ODgwIDk5Yzc4ZDYwYmUxMjVlM2UzOGUwNDA4NTk1ODU2MTMyMjBjMjVjM2YgcHkzaworNjY4ODEgMmYwZDczODRjYzFjMGE4MzNkMWJlMWU4YWY3YTJjNjJmZGI3ZmNmYiBsZWdhY3ktdHJ1bmsKKzY2ODgyIDA4YTNlNjhmMWZjYmIxMWNiNWEwNDY4OTQxY2Q2YzJjYjBiMDZkY2QgcmVsZWFzZTI2LW1haW50Cis2Njg4MyA3MWZhN2QzY2M0YzU5ZGJlZjc2NzM0ZTk4NmIxNjg2MWU5NGJhMmZhIHB5M2sKKzY2ODg3IDlmZGY4ZDhkZTI4NzVhN2Q1NTZjOTU0MGZjYjM3YjI5OTZjM2ZhMmQgbGVnYWN5LXRydW5rCis2Njg5MSA2MmMyNGQ0YTFmOGY2MjA5YTAyY2JkZGFmMWEwMDA1N2M3MzM3OGU2IGxlZ2FjeS10cnVuaworNjY4OTIgZTFhODhlOGI5NjQ5YmZhZTdlZmJmNzkwZmFmZjk2NzZhMGFjNTYyNSByZWxlYXNlMjYtbWFpbnQKKzY2ODk0IGIwOWU3MDUzYjQ3MmMzOTVlMDVhNGFiOWI0ZWY1YzljODM5OWFhZWQgbGVnYWN5LXRydW5rCis2Njg5NSA1ZTY2NjMyODZhYmM1N2M5YjhjYTI1NTUwYjEyYzU2MGNhNTQ2OTI5IHB5M2sKKzY2ODk2IGFjODZlOTUzNTU4ZjQ0NmNkNGZmNjZiNDEyODJmMzNmYmM2Mzg5ZTYgdGxlZS1hc3Qtb3B0aW1pemUKKzY2ODk3IDBmMGMyMjgzNTgzZWViODcxMDJjMTcwMWNiNjdlMzIxMjc5ZTIxN2YgcHkzaworNjY4OTggMjMyYTIyY2ZkZWE4ZmE5OTNmYmE0NTdmODg2MWJlZDYxOTIwNWU0OSB0bGVlLWFzdC1vcHRpbWl6ZQorNjY4OTkgODRmMDE3NDIwYjliOGUxYjZhOTE0MTkwMTA5Zjc1ZGY5MTY1NTdiMCB0bGVlLWFzdC1vcHRpbWl6ZQorNjY5MDAgYmI1MTE1OWU3MWRmYzMxNTJlMDNhMmIwMDI2MmE2MTAzZTg0YTJjYSB0bGVlLWFzdC1vcHRpbWl6ZQorNjY5MDEgZDE3Y2ZlZTRmMjNkZWZiZWE1MzZlNjA1MGFmMDQ5NDM5NzBjZWU4MyBweTNrCis2NjkwMiBmZGNjOGEzMTM1Mzc0NDhmNDYwYzI0YmVjNTljYWJkOTM3Yjg5Y2Y5IGxlZ2FjeS10cnVuaworNjY5MDMgNDA5ZGFiOGIxZDM0NDk2OTkxZjU5MmFlYTA4ZjJkMDJjMjgzYmI0NSBsZWdhY3ktdHJ1bmsKKzY2OTA0IDQ4MTk0ZDdhZjMyZjAyNjgxYTc3NmYwZWNlNzY3MjdkNTdiMmU3ODcgcHkzaworNjY5MDUgMGFkZjZiZGIxNzBmOTczY2E1N2FlODA3ZmRjMzkxODY2ZDY4MThmNCBsZWdhY3ktdHJ1bmsKKzY2OTA2IDQ3MzdlNWRmNTBmNGQ3ZmU5ZWE4MmI2MzA3MGYxY2FlNzYzOWQ2MTEgbGVnYWN5LXRydW5rCis2NjkwOCAyYTEwOTZiNDgxN2EyZjZmZTJjNGQwZjAzZTdlNzFkZGY2ZDU3NDNmIHJlbGVhc2UyNi1tYWludAorNjY5MDkgNWFmYzlmZmE4MGJiNzllZjZiMmJjMTNjMGIwNDJjNjM4YTJkOGRhNiBweTNrCis2NjkxMSAwMTExMWM0MDYxNmY1OTBiOTFmMjliMjliYTAyY2FkODhlN2RkMzEzIGxlZ2FjeS10cnVuaworNjY5MTIgOTJkMDg5MDMzNWMyNDk0OGNhMzBjZTFjYjM1YWU2YmYxZWE4NWZiZiBsZWdhY3ktdHJ1bmsKKzY2OTEzIGI4ZmM3OTBhMjdhZWM4YjY4YjM4YjgwMjBhYjRmYmZiNDM3YjNiNmEgbGVnYWN5LXRydW5rCis2NjkxNCA4ZDJhNjk3MTFhOTdjZWQ1YmIwNDNhYmU0OTljMTdjOTNjMzFiODVkIHJlbGVhc2UyNS1tYWludAorNjY5MjAgZDA2MTllMjEwYWM0MmZlMDk3Y2MwMjUwYzhiY2NkMGI0ZWVhM2MzNyBweTNrCis2NjkyMiA2OTM4MjE5ZGM1YTY0NjQ4N2JmZWM4Mjk2MDlmM2IxNzU3ZWNmMGM0IGxlZ2FjeS10cnVuaworNjY5MjQgZDdhNzI4NDIwYjAzYTdiMzdlODE1YjNkOGU0NWQ3N2EzMWNjNjkwOCByZWxlYXNlMjYtbWFpbnQKKzY2OTI3IDE5OTI4ZTQ1ZDE4YjIxN2JlYWQ5NDM1YTU0NzA5ZGVmZTcxNGFjYjMgbGVnYWN5LXRydW5rCis2NjkyOCA5ZGVkZmI4ZTU2NWM0NDVkNTM0ZTE3MmMwYTk0OGZhMmM4MmI1ZGFjIGxlZ2FjeS10cnVuaworNjY5MzIgM2MzYWJkNWZjODMzOTIzNzI0NzJkM2QyZGNhMDM1YmFjZjA4Mjc1MSBsZWdhY3ktdHJ1bmsKKzY2OTM0IDAwZTQ2N2RiNjE4MjU0MzZiZDBjMDU4NTk5OTlhMGJhOTIzMTIwNDggcHkzaworNjY5MzYgYTU3ODE0N2JiNWMxMzA1NTk0ZjJlY2IwZjRjOTg1ZmQ1NDk3MzA1MCBsZWdhY3ktdHJ1bmsKKzY2OTM4IDQ2MjI1MjExZTUwM2ExOTU0YmM4MDYxYmFjMTJlZjQzMTcyNzE0NjkgbGVnYWN5LXRydW5rCis2NjkzOSAyNDFlMDMzNzFjN2U0MjYzMmUyN2VmMzIyMjFjZTU3ZDE4N2IwMmRiIGxlZ2FjeS10cnVuaworNjY5NDAgNjAyNGUwY2FiYTY0ODAyYWQ5MzJiZmNjZjFlOTU3ZmEwZjRmZTk2NSBsZWdhY3ktdHJ1bmsKKzY2OTQxIDRlMmU2ODg0ZmQyODg3NjIyYWFlYmY5NTliNjEyZjI0N2RjZDVhMjIgcmVsZWFzZTI2LW1haW50Cis2Njk0MiA4YTg5MTMyYjg1OWYxZWI0YzI1ZDJkODQ3YjVlMzJiMTIzMjE2Yzg4IGxlZ2FjeS10cnVuaworNjY5NDMgYTUzYmI4MzMwYTY0YzUxYmNjMGE0OGQ2OGEyNDZjZGU0MDYzNTNlYSBweTNrCis2Njk0NCA1MGM4ODZkYWVkZjBkODE1ZDY0OTk1ODI2NWZjMmZhYjI2OWQyM2RjIHB5M2sKKzY2OTQ1IGNhNzIyNzFjNjI0YzJkZmJlYmMwYjYwMzJmMDFiOTI0MTNjMTRjMDQgcHkzaworNjY5NDYgMmEzOTEwYThkYzM3N2FmYWRjMjFiMWVjNDFiYWM1ZjE2MjhmZTkzYyBweTNrCis2Njk0NyA0OTFlZDgwYThjYzE1MTAzMTBmYzMxMmUyNmIzMmZlODNmNzg5NDZjIHB5M2sKKzY2OTQ4IGNiYzNhZmMxZTQwYTIwOWQ4ZDQ3MDJmZmQ0ZmVkMGEyNDQ3ZDA1N2UgcHkzaworNjY5NDkgMmMzYTZjOWRmZjYyZDVjOTYwMDY3OTI3NGM5Njc4ODBhMTViYjM3ZSBweTNrCis2Njk1MCA2NDVmZTU2YzExN2FhNjNmOTFmMGMzNDkxOTc3YTA1ZDgxZDkzMDcwIHB5M2sKKzY2OTUxIDQ4MWFkM2Q5ZmZkMWI2OGRmOGRhODU3OGUyNTc5ODE5NjIzYjZmMGUgcHkzaworNjY5NTcgZjY3ZGU2MWMyY2ZhOTIzODgzZWM0MmUxNzNjZDE3Zjc3MThkY2MzZSBweTNrCis2Njk1OCBiNTU1ZDRkOTU3NWM0NThlOTdjMDVlOTViOGNjMzZhMjc2M2Y4NTg3IGxlZ2FjeS10cnVuaworNjY5NTkgNjZjNTQ1Zjc5NjI2OTMyYzFhYmEzYmJmY2UyYmEzZjgxMTExMzYwNiByZWxlYXNlMjYtbWFpbnQKKzY2OTYwIGRmY2U2MmFiMDdiYTBhMWY2Y2U0NzI5ZDA2MjA3Y2FhZDBlZDM0NGQgcHkzaworNjY5NjEgODNkMDk0NWVlYTQyMjg0MDkyNjc3NWI4NWVkZGYzM2U2MTRlNzYyOCBweTNrCis2Njk2MiAwMTIxZGYzY2Y1YTAxMmMyYjgwNjBkZWVhYzdmODMzNGZjZTE1ZWVhIGxlZ2FjeS10cnVuaworNjY5NjMgYmMxZjQzMjUyYzkyMjBmOTJhNjAyZWU1ZDcxMzY1MDk0MDFmYzIzNiBweTNrCis2Njk2NCA5NmU3ODU0ZDdjNmUxYTEyYjJhZWM1ZWI0OGQzYzZjZTM3MGM3NDkwIGxlZ2FjeS10cnVuaworNjY5NzAgNjg0YmY3OTkwMDk0YmNmZjFkMzg1NGQyM2Q1ZmU0MDhkYWNjYzg5NiBweTNrCis2Njk3MSBlODg0MWMzNDY2NTE5NDcwZDQ1MGEzZjQ4YWNkMDBkZWQzNjQ0YWI2IHB5M2sKKzY2OTcyIDU3ZTJiNWM0NTc5NWE4MDUwZTc0NTAzMzUzMDQwN2MxZDM5YTQwOTMgcmVsZWFzZTI1LW1haW50Cis2Njk3MyBkYmQ1NGJhYzBiNmY3Y2ViNWE5YTFlMTRkMzlmZGYzMmE3MTVmYWFiIGxlZ2FjeS10cnVuaworNjY5NzQgMmUzOGNhNzA5YjFkMjk2YzdmZmE4MjFmYjAyZWJlNzMyMjZhNjljYyBsZWdhY3ktdHJ1bmsKKzY2OTc1IDNmZjdiYjgzMDUxOWMyN2RlMTVmMGQ3YWExODUxODAxMmY5ZWNmYWIgcHkzaworNjY5NzYgMjZiYzBjZDAxMDhiNDViNmRlZjA5NGM5MTM2OTNkNWRmOTQ2NDUyZCBweTNrCis2Njk3NyA2Y2RlMmEwNTFiMjc5ZDIxMGM1NjYwYmJlMGNkMjZhODNiODhiZTc2IGxlZ2FjeS10cnVuaworNjY5NzggODliYTAxYjYxNGVlZDMxODA2OTgwYmQyMjkwMWJlN2E0MDdmMjZiMiBweTNrCis2Njk4MyA4N2VmODk2MDgyM2ExODQ4MTZjZWY2NWU1MTUyNTUyYmE1NjM1OTYyIHB5M2sKKzY2OTg0IDg0OTZmNTQwM2E4MjI1MTA3MDY2YjE3ZDI1OTc2YzE3ODY2NzkzMTYgbGVnYWN5LXRydW5rCis2Njk4NiA0MTUxMzdkMGUyMGE1MjdmZTMxYmNmYjRjY2MyM2JmYjdjMjEzZGVkIHJlbGVhc2UyNi1tYWludAorNjY5ODkgYzIwOGY1YzFlNGZlN2I3MzJiMjQ1NmUwMjllYjgzN2U3YWIzMmU2YyBsZWdhY3ktdHJ1bmsKKzY2OTkwIGMxZGNmZjc1OTc2ZTA1NDZiZjc2NGQ4MTE5MzMwNWRhNTk0YmMxZTAgcmVsZWFzZTI2LW1haW50Cis2Njk5MSAxZWIxNzEyMmI0Y2NiN2RmYzViMTZkYzFmMmM2NDhmMGIzOWVjMmIxIHJlbGVhc2UyNi1tYWludAorNjY5OTIgODBkMmQ0NjdmMjM4ODZkN2Q0Zjc1ZmVlODQwZTM3OTc4OTA4NDY4ZCBsZWdhY3ktdHJ1bmsKKzY2OTkzIGRkZDBmOGNjZTU1Y2QyMDgyYTU1YjliNjJiYWM3OGYwMzg3ODcxNjAgcHkzaworNjY5OTQgMGFmYTczZDRiZjk5NDc4MTMzOTFkMTUzN2EyMzc2YzY0MmFkZDk3YyBsZWdhY3ktdHJ1bmsKKzY2OTk1IDEyNDk4NDBhNDJiMmRhZWEyYTVkNzY5MDU3ZDc2ZTFiNzRiZjI5YjUgbGVnYWN5LXRydW5rCis2Njk5NiAxOTY4NzgzMDMzOGZiYjBkYTY5N2UxNjdkNjE1NzU3MGY5Zjk0Y2EwIGxlZ2FjeS10cnVuaworNjY5OTcgZGY3NDIyNDYwNjYwNjg5MWI2MTJiMTZjMTliMGQxNzNkODVmNjgxYiByZWxlYXNlMjYtbWFpbnQKKzY2OTk4IDU0NzlhODc3YmEyODI2YTBkMDBiOTVjMDFhOWZiOWUwZGMyZGIwY2UgbGVnYWN5LXRydW5rCis2Njk5OSBkODQ3YzRmYjdiMzk5M2I2YmM0OTZiNjY5ZWI0M2FhM2UwM2NhMzU2IGxlZ2FjeS10cnVuaworNjcwMDAgNzEyODRlOTE1NzA2M2JhN2U5NDFjOWRjMDc3YjNmMDhhOGVjMDE2MyBsZWdhY3ktdHJ1bmsKKzY3MDAxIGM2YzMyODQyZTcxZGM0Nzk0MjViNDgzNjdlMzQ1YjQyN2ZlYjUxZjAgcmVsZWFzZTI2LW1haW50Cis2NzAwMiA3MTRkM2MxNDQzYTc0NmQ4ZmFlMzE4NDFiZTJkYzY3OTQ4YTA4MDBlIGxlZ2FjeS10cnVuaworNjcwMDMgYmJhYjExY2RiMTc1NjEwMDY5ZDFmMzEwOThkZTIyYzNjOTcwODkwNSBweTNrCis2NzAwNCAwNTcxNWYwY2Q3ZTc3OTQzNGMzN2U0MmZkOTI2NDM4ZDQ4NTI3ZDhmIHB5M2sKKzY3MDA1IDg5YWU5ZDdkMThkN2JjZGVmNjJhOWYxODhjZmFhZDEyNjAzM2U3NzMgbGVnYWN5LXRydW5rCis2NzAwNiAyYTg1ZTVjOWUxZTJhNzdmNzhiNzNlN2NmY2ZiNGJmNzRmNjVkMGIxIHB5M2sKKzY3MDA3IDYzZjNmMDQ1ZmU0OGEwYzY0YTEyODI5YWVjN2I0ZTE3YzJmN2U3NzggbGVnYWN5LXRydW5rCis2NzAwOCAwYmMyY2QyZDk1OTgyYjMyNTlhYjE3MDRlOGIzNDBlMzJkZTlmNjBhIHB5M2sKKzY3MDA5IDhiNjVkMTNjMTc3YzZiZGE4YzA0Y2U0NmEyNGVkYjM4OTNjMTZkNDQgcmVsZWFzZTI2LW1haW50Cis2NzAxMCAzMWE2OWVkMDlmYmI0MGUxNGYxMmE1M2YxMThkOWQxZDA5NWU1YjQ2IHB5M2sKKzY3MDExIDg0MjBhZjZjMzNlZGQ5MzNkYWE5OWNhZmY5YjhhZGM1YzA0YWI5ODIgcHkzaworNjcwMTIgMmEzODc3MWNlY2RkNWFkMzc0MjE1ZDY4NmUwYjFkNDdhYzY0OGVhNiBweTNrCis2NzAxMyA2NjM0NTMwYTA0ZTAzNDUyMWEyZmQwMDEwNjU5YjY5NTc4M2FiN2RkIGxlZ2FjeS10cnVuaworNjcwMTQgMWE0ODdhYjBkNjViNzQyOWY1ZjE3MDExNzk5MWRjMjA1OTNhOWIzMCBweTNrCis2NzAxNSBiYmUzNzMyMjEyZDY0ZTZmM2IwMDA2NWM0MTFjMDRjMjI3MzNiN2QyIGxlZ2FjeS10cnVuaworNjcwMTggZjY2Njg4ZTY5ZjY2YmY1ZWIyNWRjMzZhM2E3MzMyY2EzOThlNTVhYyBweTNrCis2NzAyNiA0YTc0NTkwZjM4ZGE1YjIwZDRkNTdiYjAxMTliM2MyODYzZWMwNWYxIHB5M2sKKzY3MDI3IGRmMmJiZGU5Njg4MDJkOWNiYWI2M2YxMzdhZThhNWFkYzQ3YzMzYWMgcHkzaworNjcwMjggMTk1Y2Q3ZWJmNjJjZGJjMTU1NmY5ZWE4ZjU3ZTBjZDE2NmE5MGY5MiBsZWdhY3ktdHJ1bmsKKzY3MDI5IDg2MDczN2M5NmU5NzgyYTIxZGM0MGRjOTM1MDE0ZDdmNWEwYWIzOTQgcHkzaworNjcwMzAgYTU3NjhiZDYyOTM4YjlkZjljODVhMmEwYjBmMjNjYjQ2N2YxZTRhNyBsZWdhY3ktdHJ1bmsKKzY3MDMxIDBhMTg4YTJkNTA0ODgyYWEyOWJkZTA0OWMzNGIyNTc4YTQ3ZWEzNDQgbGVnYWN5LXRydW5rCis2NzAzMiAzMGMwYjI2NmFmMDYyYzE3YzY4MTA2NzI3MjY1YmMzNWZmZTZkOTFiIHB5M2sKKzY3MDMzIGU4MGQ5ZTZlMjZiYmQxZjYxNzFhN2UxN2VmZWE2N2YzNTc3NmQ5N2EgcmVsZWFzZTI2LW1haW50Cis2NzA0MCA0MGZkNmVmMGVhYThmMzNiY2VjZTMyMDMyZDIwOTBjY2M2MjYzNTliIGxlZ2FjeS10cnVuaworNjcwNDEgOGJkZThmNTFhZGUxNGRlNDljYWNhMzJiOTA4ZWM5ZDI2ZGQ2MjgzNiBsZWdhY3ktdHJ1bmsKKzY3MDQyIDQwZDhmYjEyOTMwNmFkNGYzOGM4MWIzYmE3MTQzOTNjYjM1OWVmM2EgcHkzaworNjcwNDMgNGI3MjY1MDBhOTY5OWNmZDE5NTM5MzZkMWYzZjFiMjI1MDgzYmU5NSBweTNrCis2NzA0NCA4MDRlNjM2NTgxN2M0YjEyY2MxYWY0YmY3N2RhYTA2ZTk4ZTMwMDZlIGxlZ2FjeS10cnVuaworNjcwNDUgMmFhNjliOWQxMjczOGRmMjBmMDhiYzQwZGRkMDY5ZmUxMGM4MDMyNSBweTNrCis2NzA0NiAwMjFiYzlmODgxMDM0OWRjOGJmZTY2YTg0MmY4ZjIzMjkwM2NlNjUxIGxlZ2FjeS10cnVuaworNjcwNDcgMzQ4NWQ5NTk1N2MxZDJjNTgxZTAxZjEzYjJkNDliYmU2NTJhMmY0YSByZWxlYXNlMjYtbWFpbnQKKzY3MDQ4IDcxMTM5MGQ0YWMyMTM5MGIwYzZkMWRlMjk4MzcyZWYwMzQzNDlkMjYgcHkzaworNjcwNDkgMjRmNjVlMzA5MGU4MGEyMmFmZGU2YTg5MTc0OTE5ODQxZTM1YjkxMiBsZWdhY3ktdHJ1bmsKKzY3MDUwIGJiMTA5YzRiZWQyNzZhMzNlYWFjYzZjMDk0MDE2Y2FlZjFmZTlhYzIgcHkzaworNjcwNTEgYzBhZmM0ZWViYTdkNmE4NDMzNTc1NzljNTJiNzU5NDEyMjVjOGU5YiBweTNrCis2NzA1MiA2YTIwZThjMTc0NWE5ODg4ZmY4YTgwMDcyMGIxZWUxZDk3OGFmMDFkIGxlZ2FjeS10cnVuaworNjcwNTMgYjNkZjU4Zjc2ZTQ5ZDg3ZTBjZjNkOTczNDdjOGQyNzY3MmE5OGRiNiByZWxlYXNlMjYtbWFpbnQKKzY3MDU0IGQyZWM2ZDViMmRiOTcwMWJhMDYyOTUzMjVlODY1OTM5YTY5ZDA3MGIgcHkzaworNjcwNTUgOWZjNTczZmJhZjVlMzRiZGFjZGYyNGU0MzA5YWY4YWEyZmM3NWZjYSBweTNrCis2NzA1NiBlOGMwYTVhNjQ2Y2E2Y2NkYTAzMWViZmFkMDkxNTEzYTI4YmVlOWUxIHJlbGVhc2UyNS1tYWludAorNjcwNTcgZWZlZjVmYzQ1YTlhNDc3MjUwYmVmY2Q3ZGVmZWI0ZWUwNTJiZjhmNiBweTNrCis2NzA1OCBjMzIzMTAyNzM3YmMyM2NiOGZmZTQ5MWZhOWFlM2E3OTY3ZWVhMjRlIHJlbGVhc2UyNi1tYWludAorNjcwNTkgYTVjYTg5NTFiZWYxNzI5YjdmNWQ0ZGI3NjMyMmZmYWE5ZTQwMGFhMiBweTNrCis2NzA2MCBiMGNjY2I1NTk0MWM0MTcwZTE5NWMyZDA4ZjY1MjQwYTNjYmQ1ZmFhIGxlZ2FjeS10cnVuaworNjcwNjEgODA0NWQ1NTk2YjFjOGI5MzM0MDU3MDc0ZTE5YzgyNDY5MGZjNzM1NSBsZWdhY3ktdHJ1bmsKKzY3MDYyIDljOTdiYzg2MTIyYTBmN2M3ODMyMjU4NGFhN2E2YmU4ZTUxOGRjNWIgcHkzaworNjcwNjMgMDZjZjJjZWEzODdiN2U0NTAzZmFiYzk2ZDVkZjhkNTE2MGI4NDYwMSByZWxlYXNlMjYtbWFpbnQKKzY3MDY0IDNlMmRlNDg0Y2UzNDIxN2M2ZGE0N2ViYWMxNDhjYjEwZGFkMmUwMDMgcHkzaworNjcwNjUgOTY0MThmODEyZjA2ODAwZTA3Nzk2Yzc5MzM2ZTZiMmEzOTVkNDQxOSBsZWdhY3ktdHJ1bmsKKzY3MDY2IDdlNDAyNjNkYmZkMzQ1NDk5Mjg1ZmJjOTJmODI0ZjJmNjRiNmYxYzAgbGVnYWN5LXRydW5rCis2NzA2NyA2Y2FjMmUzMDc3YTM0ZDcyYTNlMTgxOWZiNGJiYWI1MDQyY2Y2OGYxIHJlbGVhc2UyNi1tYWludAorNjcwNjggZjMyMzRlNDNlMWZlODBhMjk0YTg1MTU4ODFiYTY5ODAxOGNmNDI5MyBweTNrCis2NzA2OSA5OTA2ZjY5NmI5NDE5NWFmYWYwNTY4ZDFhOGRmOWI5NTYwMjlmNTQ1IHB5M2sKKzY3MDcwIDBkZmRiNTJhYmRmOWY5NTg3YjEwN2ZhMjM4ZmE5ODhhNzI2MjlkZGIgbGVnYWN5LXRydW5rCis2NzA3NiA1NzhhYTQzZGM0MDA0MzA3NTAxOGU3N2Y5MmI2YzMyMWJjZmIzMTNlIHRsZWUtYXN0LW9wdGltaXplCis2NzA3NyA5MWFiNDM1NDQ0MGVmYzgxNDRjNTI0YTMyY2Q2YzIzMzBkNGQwYzM1IGxlZ2FjeS10cnVuaworNjcwNzggMmVkM2Y4OTI2YmI4OTFjOTlhODRkMWMxMGM5MDc0YjBiMTFkMTVkMyByZWxlYXNlMjYtbWFpbnQKKzY3MDc5IDQ1YWM1MTk2ZmE2NzlkZmFlMTk5NGUwODdkMTY5ZjE1NzM1YTI1YTggcmVsZWFzZTI1LW1haW50Cis2NzA4MiAxMTg0YWJjNWY5NmM5NmQ2MTJmM2U5NmQxMDQxYWNmMjUwNTZkOTc4IGxlZ2FjeS10cnVuaworNjcwODMgMDBlNzFjZDg5MTI4NGE1N2NlZjBhOTY1ODU3ZDJlNjM5NDc5NWRkYyByZWxlYXNlMjYtbWFpbnQKKzY3MDg0IDQ1MDQ2ZjA3MjI3YWQzYWYyNzFkNTE3YWYyOGFiZTViMTk2NjhjNDggcmVsZWFzZTI1LW1haW50Cis2NzA4OCBiZDBlOWE5Y2QyODNhNTU0MGFlY2Y5ZjFhMGI4NzViODYxMTllNTZkIHB5M2sKKzY3MDg5IDBkZWM1NGFhNTNlZTc1ZTM3YWY2YTE4MmI1OWJlMDIxMmE5ZjZkYTYgbGVnYWN5LXRydW5rCis2NzA5MCBmODQ5YzU5YmJmZDc2NGYwMjUzZjQ5NTljZDEzNmEwODk0ZDFlZDEyIHB5M2sKKzY3MDkxIDBjOGZhZjZjOGViMjk2MGQ0YWI3MzgwMWJiMWE4MzJkNjc4ZGMzYmYgbGVnYWN5LXRydW5rCis2NzA5MiA1ZjgwMWFkZDIwZmJiYzMyYzY5OWU0NWY5ZWY0YTExYjY4YzEzNDRiIHB5M2sKKzY3MDkzIGYyYmIxMzNlZjUxN2Q0NTBkMDJmYTZjZmZiYmY1ZWVhYTNmZWVkYzEgcHkzaworNjcwOTUgZjY3YjJjOGZhOTNhZDIzMjJkZDI2OWU3YzFhOWQ0NmE2MzNmZTdmOCBweTNrCis2NzA5OCBlNjhlNDJiMTdlNWUzNDE0NDkwM2U5M2E0YzU5MDVhNDZiZGQwNWViIGxlZ2FjeS10cnVuaworNjcwOTkgYTUyOWUzZGM2OTVhOGI2ZWRkZTQ4YmMxZGY4OGZhMDIxMjkzNDNiOCByZWxlYXNlMjYtbWFpbnQKKzY3MTAwIGMwODllYjY0ZWU1NzZlNTdiZGFmMzJlYzMwZThiNmUzMDIwZDkwNDUgcHkzaworNjcxMDEgOTcyYjQwNTQ2ZDc5NTU0ZjNhODk3MWYwZjE2ZWYyOTM4MDA3ZmMyNiBsZWdhY3ktdHJ1bmsKKzY3MTAyIDUwZTc4MjJjOTU4NWZlZjU2ZWQ2NjYxMWZhYzRiODU0MmFkZTNlOTMgcmVsZWFzZTI2LW1haW50Cis2NzEwNiAyM2Q5Y2I3NzdkOWE4MTZhMjU2MmRlOGI3N2ZhZWM0NWMzZDQ4MTA1IHB5M2sKKzY3MTA3IDk4ZjMxNzU2NDYyMDNlZjRlYTM5MGQ0MzQ1NGJiZGU3ZWFiZjM2ZmMgcHkzaworNjcxMDggNDAwZmJjODA1MmFkZWNjMTc2OTI2ODVkYjM1MzM4YjNjYjkxNTE5YSBweTNrCis2NzEwOSAxYmMzZDFiMzlhNGI3OTVlMjY2NTNmN2M2NjllZDAyYWM2MTgzYjJmIHB5M2sKKzY3MTEwIGUyYTQ3MmYzYjc3ZjZjMTBlYTQ1NTE3ZjM5MThjOGVjMTkxOTA4ZmQgcHkzaworNjcxMTEgNWI0Y2I4Y2Q1MDUxZjdhMDEzOTc5YjQ2NDdhYjFhOGI0OGMwMmY1ZCBweTNrCis2NzExMiBhYTZlNjQ5NTk5YWQwOTBkZjkxMmRhNjcxNGQ2ODhkYzMyYmNjNzQ3IHB5M2sKKzY3MTEzIDNhOTQ3NjhhMmE4YmU1ZDA5MjgwNmRjNjhhNWFiMWFlY2IxNzJhMGQgcHkzaworNjcxMTQgZDcxOTZmYjk0ZjI1ZmM4ZGE1Yzk5MzQ4MGQ1ZTA1NTE0MTQ3M2JlNCBweTNrCis2NzExNSA2ZTBhMzYxMDc4ZTUyMTY4YWE1ZWM5MmE3N2MzODliNjRiMjFjYTkzIHB5M2sKKzY3MTE3IDFjMjNlNzAwMTUwNjc0MDQ0YTA2ZWM3MDdjMmFkMWYyOTFjZjYyNjQgbGVnYWN5LXRydW5rCis2NzExOCA3OWM5YWI2NDk4ZmRmYjlkZmZhMzMyNDY0ZmU0ODc1YTc0MTRkZmFiIGxlZ2FjeS10cnVuaworNjcxMTkgOWEzZTkyNDNjNTE4OWJlNjQ1NjAyOTNmYjMwMjc2M2U1NTVjZjE3ZSBsZWdhY3ktdHJ1bmsKKzY3MTIwIDI2ZjAxZWVhZjU0ZTgwZTljZGJiZWMwYjg5YzhmM2VhYjhhYTg3M2YgbGVnYWN5LXRydW5rCis2NzEyMSBmM2Y2NTBjN2QzYWFjNjNjYmJmNjZiZjA1ZjU2YWRlZTdkNzIyODNlIHJlbGVhc2UyNi1tYWludAorNjcxMjIgZjc4NjdiNzdkYzU1NzgxODFkMTk2YjJmZjRkYTNmYjVmMDJlNjVkNyBweTNrCis2NzEyMyA4MzcwZTllZjdmMGZkYzk2N2Q5OWE2YjkyYjZiN2EyZTM3MWUwZjZlIGxlZ2FjeS10cnVuaworNjcxMjQgN2U2M2ZlYjMwZWE1ZGRjNjkwNTk5MzAxOWJlZDA5NWJkMzMzZjA2ZSBsZWdhY3ktdHJ1bmsKKzY3MTI1IDIxMGM1ODVmOTViZWU2ZjQ1OWQxMTM0NjRjZmJiMmM4NzY0ODlmNWQgbGVnYWN5LXRydW5rCis2NzEyNiAxMDQ1MzdhNTQxOTY1MGQzNzk4ZjVhZmQ5MDc3ZThhZTg4M2IzYzI5IHJlbGVhc2UyNi1tYWludAorNjcxMjcgMzI1NjE4NzkyNWQxZTkxZWYxZTMxOGIxOWQyYjNlZGVmOWZlZDc4ZSBweTNrCis2NzEzMiAxNGQ0NDEyZDJiZjg0ODEzMGViOWQ2YjUxYWUwMmFhOGQ5MGUwY2VhIHB5M2sKKzY3MTMzIDgyODA5NDg1OTJiYjJjZGRkOGEwNTQ1NTg5Njk2ZDkwY2ZjMDk0NDMgcHkzaworNjcxMzQgOTc0Y2FmMTY3ZmYwNDUyOTYyYzBiNTMyYTYwYmNkZGE4NTU3NzdmNiBweTNrCis2NzEzNiA1MzRiZTgwNjZjMzZhNmFmYzI2MWI1YmZjN2M3NjIwMGQ1NGRhMWI4IHB5M2sKKzY3MTM3IDhmYWU0NjVhMzk2MjdiNTkwMzg1NDYyZTYwOTVlYjYzYWY0NTI0MGEgcHkzaworNjcxMzggYWM0MmRjOWEwMjAzZWZiMzdlNjVmNzc3MzdmZDE5NDRhOTE4MDMwOSBweTNrCis2NzEzOSA5MmJhMTJmOTMyODIzODRhMjM4YzBmYjA1NjllN2NmNDkxZjAzMmRlIHB5M2sKKzY3MTQxIGQyZjczMjNmYjcwOTY1YmU2MjJhZmQ0Y2M3YTU0MjE4NTA1NzljNGMgcHkzaworNjcxNDMgYzk4M2ZhNjhkNmZmMjU1Y2ZjN2IyYTU5MDUxODljM2E1NTczYzNlNSBsZWdhY3ktdHJ1bmsKKzY3MTQ0IDYyMzhiNmNmNzdmMTA1N2NlYWM1MWE0ZDY2MTdmNTliNDE4MGRmYmQgcmVsZWFzZTI2LW1haW50Cis2NzE0NSBlYTg3ZTg4MTQzNTliMzhlNzcxOGJiMDA4YzUwOTljZTFhODhjZDdjIHJlbGVhc2UyNi1tYWludAorNjcxNDYgODJjY2M3ZTc3ZWM1NTczZDU2OGQyZjUxNTZkNWZkNWM5MGQzZmYxMCByZWxlYXNlMjYtbWFpbnQKKzY3MTQ3IDQ3OWRhZDlkYzk2YzFlOGRjZjYwNDZkY2M1Y2JlOWUxNzgyOGY2NGIgcmVsZWFzZTI2LW1haW50Cis2NzE0OCAxZjdmNDFmMjBhYzU5NjY2ZDg3N2RmZGM5MjZiYzJkMTUxMzBiMTBlIHB5M2sKKzY3MTQ5IDlkYTUyOWEzZmQ1YWU3NDJkMjhhZWU1ZWYzZjgxNzE4Mjg3OTljYjMgbGVnYWN5LXRydW5rCis2NzE1MCBmYWNjYjk4ZDk0NzRlM2MzNTA0MDgzZjM0N2M5MWEwNzJjYjgyZDY3IHJlbGVhc2UyNi1tYWludAorNjcxNTEgYWNiNzhlY2U1NmE5ZTEwMmZjOWU2NzYyNWIyZTc0ZDljYWM1NTFjZSBweTNrCis2NzE1NCAzMTczNzE3YTg5ZjMxN2NhNzEzODgyOTExMTIzODI4MjhkMDIyNmUwIGxlZ2FjeS10cnVuaworNjcxNTcgNTcxOTM4MDU0NzIxZGIzZmZmM2U5YjA5M2E5ZTUzYjFhOTcwZDRhYSBsZWdhY3ktdHJ1bmsKKzY3MTU4IDAwOGFjYjBjYmJmYzI5ZWU4Yzk0ZTJkMDBlYzVlYzJkMDA4OWIyOGUgbGVnYWN5LXRydW5rCis2NzE1OSA1ODIzNWI5ZGMzYWUyNGM4OTdkYjFmN2RmOTc5YTQ4NTU2ZTAzMmVlIGxlZ2FjeS10cnVuaworNjcxNjAgNmYwNjU3MWE4YWVmYWZlOTY3MDkyNTdiN2YxNzlhNDFiZjhiZmY2OSBweTNrCis2NzE2MSBkMGFhMTBmZjI4YzY1NzAwNjU3MGIzNWM4Mjk1ZDVhNTQwZWE1OGZiIHB5M2sKKzY3MTYyIDIwYTQwODk0NTM5YTQ4YTFhN2ExZmU2YWI0MmM1ZWRiNWYwNzRkZWMgbGVnYWN5LXRydW5rCis2NzE2MyBkMzRjY2IwMzQxZWE1M2FhODZiYzM3MGRhZDE2NDRkMGYxMDk2MGVkIGxlZ2FjeS10cnVuaworNjcxNjQgZWY4ODBlMmNjNTY4Y2NjZjk4YjhjOTQ1MzJlMDM2YzU3ZTJjYjc2YyBweTNrCis2NzE2NSA3MWY1M2QzZDE1NTEyMWNmMDNhOGViNzcwODkwYzNmMjFjMDU5MjI0IHB5M2sKKzY3MTY2IGJjNGY3NDJlMmMxZDUzODQ0NTFjYzVkY2VkNWIyOTUyZmNlMjUxMWQgbGVnYWN5LXRydW5rCis2NzE2NyBmMDdiODJhMzIxZmUxOTA1NTM3OTg0N2Q1NTdlN2I4ZTVkYTk5OTMwIHB5M2sKKzY3MTY4IDc2ODMyYzA5ZDJmZGMxYjA2OWViZjBmNjFhMjZjNzVhNDVmZDIzNmUgcHkzaworNjcxNzEgMmUwODU3YjBmYzY3NTc4NDRhOWUwZGRiNTY3YmE0NWNkZjcwOWUyNiBsZWdhY3ktdHJ1bmsKKzY3MTcyIGNkZGQ5MTgwYjhjODgwNjIyNzA2YWQ3YjQ4ODlhYmVhZDU1ZDg1OTEgcHkzaworNjcxNzQgMjExMTUxZmRjOTI0NDQyY2NjM2NhY2U1ZWMwZmNhOGJkNDFhMzBlNyBweTNrCis2NzE3NSAyYmIxMmNhMmZmNDRlMTFiOGMzZGNiYTg0MjQ2NTdhZjllYjM5NjdjIGxlZ2FjeS10cnVuaworNjcxNzYgYzJhNzViYTQ2ZjE0ZDlmYzI2ZDRhZWM3ZTZjOTRlNTU3YmQ2YzA0OCBsZWdhY3ktdHJ1bmsKKzY3MTgwIGFlODNkNGFhM2UwZWQ5NzQzY2MwM2ZiM2FjOGE5NjQ1YmE4NjA2YjggbGVnYWN5LXRydW5rCis2NzE4MSAyYjMzNDBiNWNhMzg2YjUyNDY3YTViZWViM2ZhZjU3OTAwY2I5MDlmIHJlbGVhc2UyNi1tYWludAorNjcxODIgYjI0ODFhMTUzNzYzNDhmZjgxYmNmMWNkMDA1MTdmMzlmNDdiZTlkZCBweTNrCis2NzE4NCBhY2Y2OWUwNzliODQ2YjVjM2Q4NGU0MGU3OWE5NGVjMWJhOGZhZTM5IHRsZWUtYXN0LW9wdGltaXplCis2NzE4NSA1NGNiNTAxZjYyMTVhYmRjY2Y5ZTQxMTU1MmEwYWZlMzM2NGJhMjczIHB5M2sKKzY3MTg3IDIxOGE5ODk4MTE4M2QyYTNjN2YzZDE1ODc5ZTBmYTExYzA5Mjg0ODggcHkzaworNjcxODggNjNlYTIyYjU4ZDU0MjU5MjE5NjZkZjA1OWNmMjJiM2VmZjhjMTllNCBweTNrCis2NzE4OSA3NDQwYTMwYTJmMTM0MDNhNDI3ZTEyMGNjNmYxZjc4ODBiYWUyZDVkIGxlZ2FjeS10cnVuaworNjcxOTAgZmI3MjUzNjZmOWFjOGJlZDRlMzJkNjZkN2ViOTIzYTU1NWM2ODI4YSBweTNrCis2NzE5MiBiMDcxM2ZiYzUwNjFiYWEyNTJhNDQwYjI4ODY1NzRlOTJjZTA5ODdjIHB5M2sKKzY3MTkzIDgxMTkwY2IxY2FlMjkzMDZhMjI4MmQyZTE2YWM0NTBkNjVhZDYyZTQgcHkzaworNjcxOTQgZjJiNDNkMjgyNTFkY2RjMDIwYjhmZWY2MzgzZWQyY2E5YzZkODY2YyBweTNrCis2NzE5NSAwM2U3NGRkOWNjODNmNTkwZjg1ZDkwMjVhMjk2OTM2NmQ2YzU3NzM3IHJlbGVhc2UyNC1tYWludAorNjcxOTYgOGQ2ZTI0OTk3MjZhNTI4MTNhMTMwMTlhMDZiMjc4OTg5NzFhNTBjOSByZWxlYXNlMjQtbWFpbnQKKzY3MTk3IDYxYTMzMDUwNDQzZDIwZjBkMjRhZjkyMjc5MTI4MDU2ZjllOWE4YjYgcmVsZWFzZTI0LW1haW50Cis2NzE5OCA5NzgxZWVmMzE5MmM2YWIyY2NiMjVjZjhiZjExODU2ZTA5ZTBmZTIzIHJlbGVhc2UyNC1tYWludAorNjcxOTkgMjAwYzhhYWIxOTE3NmZiZjcxODYwZDQ3MDI2YmRiZGE2NGE3ODYxMiByZWxlYXNlMjQtbWFpbnQKKzY3MjAwIGNlNzIyNGNmODdiYTIwZjQ4YzBmZTBjOGY5ODczMWE5NWVjOTY1ZmMgcmVsZWFzZTI0LW1haW50Cis2NzIwMSAyMzI4NWZmMTBjMDRkNzkxYjRlNzAxYTRkYTcyMTE1OGQyZDBkNGQ0IHB5M2sKKzY3MjAyIDlhMTNlOTY2ODg5Y2I0NGM4N2Y2ZjgxNDhmNmQxZTIxNzAwYTE5NjEgcHkzaworNjcyMDMgY2QwOGIwMGFjZDZhMWNhNTM5YjAyNzAwYzE0NTY3NTg4OWI5MGM4NiBweTNrCis2NzIwNCA5ODYyOGRjNzMwZGFlNzcwZjQxODEwNGY4N2I0YjMxYzlhNDBkNzBmIHB5M2sKKzY3MjE2IDQ5NGJiOTY3MTM5MTc5MDVlY2NlZDRkNDM5NmJkOWJiMTM0NDZmYzcgcmVsZWFzZTI1LW1haW50Cis2NzIxNyAwNTlmMTE2YTI4MTk0Zjg4MzZiZDE5ZDljYjc3Y2MyMjRlNmJkMmE3IHJlbGVhc2UyNS1tYWludAorNjcyMjQgYzI3NzJjYmZlMTgxZTFmM2E5YjYyYWJiZTRhN2MzMjcyNDQ3NDZiNSBsZWdhY3ktdHJ1bmsKKzY3MjI1IDE2NjAwY2FjZTMxNWRjMmMxZDcyZjM0MGI4NzQ5MWIxMGUwNjM0ZjQgbGVnYWN5LXRydW5rCis2NzIyNiAwYWQwNzA3ODQzM2EzODc5YzUwMDYzMDZhMjVlZDc2NTk2YWJiZmM3IGxlZ2FjeS10cnVuaworNjcyMjcgNGM0NjMyM2FmYWI2Zjk5Y2JlOWYzOTI4NmQ4Yzk1YTkzNjU3MDdiZCBsZWdhY3ktdHJ1bmsKKzY3MjI4IGRiZTRiMTZmODA0YmE3YmQxMTE1M2E5MWE0YjU2ZWIwNzE1NTE1OWMgcmVsZWFzZTI1LW1haW50Cis2NzIyOSA0MjBhNWU4M2UwMmU3YjRjMTc1ZWE3NjY4ZDYyM2Q0OWZhY2U5ZTQzIHJlbGVhc2UyNi1tYWludAorNjcyMzIgYzcwN2RhMzQzNTU3OGNkYmE1MDI2YjUzMDFjZDM1Y2E0YTNlODhiOCBweTNrCis2NzIzNCBlNzRkZDU0MThhMzNmYjAwMGI5MzM4YTlhMzVjNGRkNmUwMDJkYjM0IGxlZ2FjeS10cnVuaworNjcyMzUgYjQyOGU4ZjZiMTQzNDYyM2Y2ZTFkZmZlODQzNDQ0YWQ0MDIyNTBlMSByZWxlYXNlMjYtbWFpbnQKKzY3MjM2IDdkZTFiMmFkMzgwNDg1ZDBlOTcyOThjNmNiNDljMjJjYTgyYTQ3OGQgcmVsZWFzZTI1LW1haW50Cis2NzIzNyBiMGZjYjE3ZjdlZmE4MTUyNmQ2ODcwMGQ0YTc0ZGNhYTg5ZWQ5NDFkIHB5M2sKKzY3MjQxIDFlNDRlYTUxNmUwZTcwYzVjYTUyZDNjM2I1MThjNTAyOGZiNmY4M2UgcHkzaworNjcyNDIgNjIwYTM0ZGMxMGY5MDY2MzdjZWM1MDZjZmNhOTBiODVkNWZmMTVjYSBweTNrCis2NzI0MyA3NTU5YTMyY2MzMGVmOTYwNTRlMGFjZGQ4OTgyMmIwNjlkNzk1Mjc3IGxlZ2FjeS10cnVuaworNjcyNDQgNjc0ZWY0YTdjZDczMDE3NWY1ODNiN2MzNzA0ODZjMTFlMGVmZWQyZCBweTNrCis2NzI0NSA0YjMyMTk5YThhZmVjNTc4NWRkNmM5ZWI3Yjk2MGQyYzM4MGRlN2UzIGxlZ2FjeS10cnVuaworNjcyNDYgMDgxMzVhMWYzZjVkODg1MGRjNTVkODNlMzZmNzk3OWRjY2IyZGE2NiBsZWdhY3ktdHJ1bmsKKzY3MjQ3IDczYjlmZTFjNTM5NzNkM2VmZjM3YTY4OGRiOTIxYTQwNDU0NjBkOTggcmVsZWFzZTI2LW1haW50Cis2NzI0OCAzNTZjM2UxOGRhNWU4NDhhOWY5OTIyYjY3MDdkNzNkZjdkNjNkZDRiIHB5M2sKKzY3MjQ5IGE1ZTQxYTc5NDk1NDQzNzlhZmU3YjEzMmU1MTljOWIxOGNlOWM2MTcgcHkzaworNjcyNTAgZmM0NmFiZjE3MGZkZDhkNzVjZDljNmI5OTYzNDFiMWJkNWYzYjBkZSByZWxlYXNlMjQtbWFpbnQKKzY3MjUxIDkzNmE2ZTYwZjNlYjdhM2JlNDdmYmFjMjY5NWJhNDZmYzBkNTBlNTEgcmVsZWFzZTI1LW1haW50Cis2NzI1MiBmMzlhY2ViY2U2MjhiZTFmOThjOTEwOGIzNjJhN2UxNmYxMzc0Y2U5IHJlbGVhc2UyNC1tYWludAorNjcyNTMgZWQwZGFjMjZiMzk2ZGEzZmI3NzY0NDlhMGU1NmVjY2M0M2U0OTg3MSBweTNrCis2NzI1NiBlMmQyYTdhNmU4MzE1ZGM4MjY3YjM2YzQ4ZWY3MWMwZGU0MmViYTVmIHB5M2sKKzY3MjY2IGVhNmVlMjgyMDc1M2JjZWZlZTUyZGI3OTA2MDFmMDhlNmYzOTVjYmIgbGVnYWN5LXRydW5rCis2NzI2NyBkNmU2Nzk4OWZmNTE0OTczNjJmZTNmZGI3ZGU4ZGFmOWIwZjdiYjBjIHJlbGVhc2UyNi1tYWludAorNjcyNjggYzZkMTZiMmE4ZWZhNGQ1NjI2YWRhZThlMTYxNDkxNjJlNzkyZWEwZiByZWxlYXNlMjUtbWFpbnQKKzY3MjY5IGNlNjkyMzU0NWU1ZWMzYTYzOTBkNjYyNGFkZDg0YTYwNDBhOTdhZjYgcHkzaworNjcyNzAgNmQ2ZTM4Y2ZmMjQ0MGUyZjlmZmQ0NmUxZWUyNTUwMWQ2MDkyODYwMiByZWxlYXNlMjQtbWFpbnQKKzY3MjcxIDBjMGJiMTA0ZWM0YjdhN2Y2YmRiOTk5MmM1Nzg2M2JiZThkNmEwZmUgcHkzaworNjcyNzcgMmQ5YjE3M2RjM2EyZWI3YTgwNmU1MWIzM2M5Y2E5NWNmYWU4MzdiMiBsZWdhY3ktdHJ1bmsKKzY3Mjc4IDE1M2ZlZDdjN2I2MGI5MGQ1ZTk0NjYzODkyYzllZmVmY2M4MTA0MTAgbGVnYWN5LXRydW5rCis2NzI3OSA3MWE1MGU2NzVmYTFlNDQ4YWVmOGI2ZGYyZTViNDM1NDBhMWU3OWMwIGxlZ2FjeS10cnVuaworNjcyODAgN2JiMjA0NjEyZmM2NzZiYmM3ZWZlMGVhNjM0YWE0OTg1OWFiMDVhNiByZWxlYXNlMjYtbWFpbnQKKzY3MjgxIDhiOWJkYTViOGQ0YTlkMWJhM2E3YTI5YmEzZWZmN2JiZDUwNDhkZWIgcHkzaworNjcyODIgNzIzODk1MGQ1YzYwNDAwNzdkYTcxNWQ4MWQ1Yjc0MWM2M2MyYzczOCByZWxlYXNlMjYtbWFpbnQKKzY3MjgzIGJmNmE1YmU4MjdiNGMyZTZkMGNhOWNiNjcwOWU3MDgwNTgyZTQ4NmEgbGVnYWN5LXRydW5rCis2NzI4NCAxZjdiNmM0MGM5OTA4OWE2NjViMTlmMTc5MzZkMzdiY2NiMDk5OGMyIHJlbGVhc2UyNi1tYWludAorNjcyODUgYTkzNzZhZGMyODRjZTc5MGMxMDMyOGIzNmE3MDRlZDZjYWM5NjkyMiBweTNrCis2NzI4NiAwNzIyZDcxYWZhMmYyODZlZTQ1MWY0MjkxMzc5ZDIxMDM5M2QyYTk0IHB5M2sKKzY3Mjg3IGE0NGNlNTU1NmE3ZmM2MzAyNzkzNDkxYWExYWRmZmFlOTMzYjRlYTYgbGVnYWN5LXRydW5rCis2NzI4OCBmMDRkZjEwZTIwNTAxMWU4YmNiNGNiNjEyNWVhOGQ0NTYyOTA4MDczIHJlbGVhc2UyNi1tYWludAorNjcyODkgZmZhZTU4Mzc4NTFjYjRhYWIyYmM0YzdkMjhkMDQyOTMwMWRmZTI0ZCBsZWdhY3ktdHJ1bmsKKzY3MjkwIDFlN2QzMjIyNzRjODNlYzc3YzlmNDM4MTZlZTJkMDhjZTFmNTg1NDEgcHkzaworNjcyOTEgN2IxODc5OWU5NTE5NDU4Mjk0Yjk3YTRlYjE2Y2Y4MWRlNThiNzJkOSBsZWdhY3ktdHJ1bmsKKzY3MjkyIGZkYzkzMzk1MTk2NDZmNWNiM2FhYjkwMGFhYjMyN2Q4NDNmYWJlMzEgcHkzaworNjcyOTMgY2FjYzAxOGZhMzQxYWI1YzU3OTZkNWVmZjYyYmZkZDkyYWQwMGI2ZiByZWxlYXNlMjYtbWFpbnQKKzY3Mjk0IDA4OGZkYWRmOTYwOWQxOTNlYjEwZjhhNDBmMDliNTBkZjkwMWZmOWMgcHkzaworNjcyOTUgYTI5MGE1MWZmOGUyN2Q3MmI4ZDFmMWZiMzBiOWFlYzc2MjYzOWIyZiBsZWdhY3ktdHJ1bmsKKzY3Mjk4IDJkYTNmY2Q0OTM1ZjE1NGY5NDE4NmIzNWMxZTkxODAyM2UxM2JmZTAgcHkzaworNjcyOTkgMmNhOTY0ZDcyNGQ1ZmY5YTE2NzQ2NzQ1MTliMzQzNmQzODAxYzFmYiBweTNrCis2NzMwMCA4NDEzNjlmMzczMzQ4NjFlOTAzZmZmMzdhY2U5ZjFiYzE3YjgxNTlmIHB5M2sKKzY3MzAxIGNiODAzOWQ4MmFmM2YxNDBmOTZjYTEzMjE5YzBhNmYxY2YyYWI4ZmEgbGVnYWN5LXRydW5rCis2NzMwMiAyNDY0NTg3MDc3OWFiOGNjYTM3ZWFiOTY4YWQ0MTEyNDVlNzJjM2ViIGxlZ2FjeS10cnVuaworNjczMDMgZjQxY2IyMDZkMDYxZWQxMzU4Njc4ZTQwMGMxOThmYzY5OWYyMGZkMSBsZWdhY3ktdHJ1bmsKKzY3MzA0IDg4ZmY0NWU1OGU5NGI2YmE2NTUyZDg4ZGYyNzYxY2M2NmUyNGVhZjcgcHkzaworNjczMDUgZGMxZGI0NmQwYTQ0YjliOWEzZjY4YjQ2MDBkYzAxZjdjYWI1Mzc5ZiBweTNrCis2NzMwNiA1ZmZkNjdkZjhjOWYwODE5ODYwY2EwYjVmMjM4ZWZkNWU2OTBkYjQ2IHB5M2sKKzY3MzA3IGVhZGU0N2RmYzFlNDcwNDc4NjVkNWNhZTFjNGI1Zjg4NDM3NzFkNzAgbGVnYWN5LXRydW5rCis2NzMwOCBmOTVmZjk2ZmQ3OTJmMmYxZGUzMWU4YjQ5ZDc3MTg2NWM4MDdhODY2IHB5M2sKKzY3MzA5IGJhYzA0MGI1ZWYyMmE0MjQ0NWU2NDhkOGU5NjYxNGNkZjJhZTM2MDIgcHkzaworNjczMTAgNTRlNWQ4NTNiMGRlYzdlNzRlZjMxMjY4M2FmYzFmMDUwNzU2NGY2YiBweTNrCis2NzMxMSAxNTlhMTFiMWQyNDQ1MGE0YTUxYTQxZTg3ODkzNjQ2OTI2NTVkMjM3IHB5M2sKKzY3MzEyIGU4M2E2MGM2OWQ1M2Y1NTUxYTMwNmU3N2E2ZDM4ZTliMTE0ODU0OTYgcHkzaworNjczMTMgMzRmYjY2NmZmNTJmNDEzNGYzMmVlYTY4NTk1YWU2ZDZiYzM4YjAwYyBweTNrCis2NzMxNCA3YWFhM2FmZmVjYzE1MzJlMTEwNGJjMTdmMWQ4NTliOTUxNTczYWJiIHB5M2sKKzY3MzE2IDM0YmMyMjc5ZGM1NmRmZGFiMWRhMzI3NmE1M2MyNjFmOThhNWEyMDQgcHkzaworNjczMTcgZWRhNDY3ZDY1YjY1ZWZiMjExYzNlNDQ3NTM4YzExODI2MWIxZTU5NiBweTNrCis2NzMxOCAyMzI3ZGQ2ODQyMWNjZmZjMDA1MzhiN2RmN2YwN2Q4N2RjNzZmODgyIGxlZ2FjeS10cnVuaworNjczMTkgMzI1MGZiNzFhOWUwOGMwNmE4NmVhYmYyYjE1MGFhYjlkM2JkYTUyOSByZWxlYXNlMjYtbWFpbnQKKzY3MzIwIGI2NGQwNTNhZmQ4NGRhOTE0MDI5M2NhODU2NzlkMDFjODI2ZDhhYzQgbGVnYWN5LXRydW5rCis2NzMyMSAwYmNhZmE2NGVjY2I0NDM1N2RhY2FiMzU3ZTU1NGFhYzdhOWI3OGQwIHJlbGVhc2UyNi1tYWludAorNjczMjIgZjQwM2Q5NDE1N2IyMTBkY2Q5MzhkMmM2MzNlYTQ0YzExZGY2YjYwNiBweTNrCis2NzMyMyA3ODQ2ZmU0OTUyMTI5MDBkNjEzNGE4N2VhNDRiYjhjMWQxZmQ2MTdjIHB5M2sKKzY3MzI0IDBlYjVhZGQzMTYwYTI0OTA5MDEzN2VjYjIxY2FjY2Q4YWYxMzBhYzEgcHkzaworNjczMjUgNmFlZjI4ZWJiZDZjMTE3NGI4NmZkODUwYTdlMmQ2MmI3N2M2OWZkOSBweTNrCis2NzMyNiBkYzRhY2Y3NTMyOTYyZDNjOWI4OWVjNDA5ZWVkZjljMjI2N2Y2M2Y5IGxlZ2FjeS10cnVuaworNjczMjcgYjE4MGIyNzFhN2IyYjQ0ZmQ3NmY0MmRjMGVlMWE2NGVkZmExZmI1MCBweTNrCis2NzMyOCAzMWQ4OGZmZmI5OGExMDRhNDgzNDk4MjM2MzliYzFjM2JmMjgzMTJmIHB5M2sKKzY3MzI5IDhmMGExNzVmMDRiZWFhZDVkNDA5OTAyNjY3NTNmZDYzOWNmMDcwNTUgcHkzaworNjczMzAgM2YyZGRiM2RkMTQ3YTViMzI3MjY2NjA5ZjhhOGEyYzg0NGZkMDhkZCBsZWdhY3ktdHJ1bmsKKzY3MzMxIDJkOGMxZWE3ZjhiN2VjNDVkOGI5MjgxMjJjYjEwYTMwODFlMDFhZGUgcHkzaworNjczMzIgNWUyMDA3ZmEzY2Y4MmM2YzRjNGQwZDQ5NGZhMmIyMjYzZjlkMGIzMiBsZWdhY3ktdHJ1bmsKKzY3MzMzIGEwZjRkNDVmZDQ0Y2Y2ZjE4NzljOTUyMjE4OGI5MjU4N2EyZDM4NDEgcHkzaworNjczMzQgYTQyMjBjOTJmN2NjZjQzMzAxNjZjZTZhZTA1MzdlYzAwODMyMDE5NyBweTNrCis2NzMzNSAyZDk3MDY5MDEyNDE3MTc1YTMwODE1YjUxZWYwMDdjNzc5ZmI2OGRiIHB5M2sKKzY3MzM2IDc4OWEzYWIwYWU5ZWE3Zjk3OTRhZDgxMGU3ODQxNTMzNTM5MmY0ZjQgbGVnYWN5LXRydW5rCis2NzMzNyBjMDA5ZjAwYTQ1MGZkYTc3NGIxOTgyYjVkMjc2ZDEwMzM1ZDYyMzkxIHB5M2sKKzY3MzM4IGI2YTgyNDU5OTIwY2VmMGEyMDI5MjdjMzE1ZDVlMmVjYzZhNjU5ZTYgcHkzaworNjczNDAgMTMzMjFjYjJkNzUyMDMxMmY4ZDUyMjM4MWUwOTdhNzBhMTIwODI2OSBweTNrCis2NzM0MSAwMzBhMTUzNjllYWM3N2NiM2JjMjY4YzhiYWUxYWQzYzBlNjM3NjZkIHB5M2sKKzY3MzQyIDVmNzA3MDZhOGU2NzE4ZjFjMjIyZTBiMjRkMTA5NzJmMzliNjMyMmIgbGVnYWN5LXRydW5rCis2NzM0MyA1ZmVjZDFlOTUzMjQ5NzkwZDNiYzk2MzJlNjhmMDEyZjcyNjU4OWUxIGxlZ2FjeS10cnVuaworNjczNDQgNWQ5YmU2NWU3ODkxZjcyMDQ1MzlkNDUwNjY2YTUzYmNiNTY2M2QwYSByZWxlYXNlMjYtbWFpbnQKKzY3MzQ1IDYzMGMxNzRiNDY1ZTk4MTY5YzQyOGU5ZmUzNTllNjU4N2I3MDU0ZTQgcHkzaworNjczNDYgN2MyYjFiNTJmMTM0MjhmOTU2MWNkMWUxNTY2MTA2YWRhZmRhZmJkNyBweTNrCis2NzM0NyA5M2QyZGQ2NDFiNzAxOTQzNGM5Y2IxZjJjMTA4ZTRhYmNiNzlhNGEwIHB5M2sKKzY3MzQ4IDhhM2VhYzdmOWNkNjQ5N2ViMzVkZTc3YjM0ZjY5NGJhMTYwZDVmZTYgbGVnYWN5LXRydW5rCis2NzM0OSA1M2ExMjdhZWE1NmU5MzU5NzMxNmVkZGFjZjc2ZmE4MzNjNWUzMTMzIGxlZ2FjeS10cnVuaworNjczNTAgYzlkMGQ0ZGE5YWM5N2RjNjk3ZWNkNWYwM2ZmYjgyMzFjZWYyNmNkMCBweTNrCis2NzM1MSA3YmJjYTI3ZDM1NTllMjdlZDg2ZDU4MGViODU5YTVkMDRmMmZjZjc3IHJlbGVhc2UyNi1tYWludAorNjczNTIgNzVlOTkyMDM1MWYyNWUxM2QxYTI1NjgwMjZjN2U1ZDk2M2UyMTEyZiByZWxlYXNlMjYtbWFpbnQKKzY3MzUzIGU3MDRlZWRkNzdkY2RlN2EzMzE0YzVkZjVlYmZiY2E4ZmRjYjI0OWYgbGVnYWN5LXRydW5rCis2NzM1NCBkNzMwM2FiY2YwNjkyODJiZjI0ZWVmNzQxN2M0Mjc5YjM2MGVmMjg2IHB5M2sKKzY3MzU1IGNhNjczYmJkZTFhM2Q4MWE1YjQ0YTJkMGY5N2UwNWMzY2VjMWVjNGMgbGVnYWN5LXRydW5rCis2NzM1OSAyNDE2NTAzYTMwNzhiNWRmMWNmZTgxNjAyZWE3MDg1YTE2NTE2ZTE5IGxlZ2FjeS10cnVuaworNjczNjEgZjFiYjI0MWJhZDI0YmJmMDYyNjI4Nzg2ZjUyYWRkYWRiMzY3MjdmMiBweTNrCis2NzM2MiA0ZWFiMzQwMTYwZTBhMjJjZmZhZjM5MTI1NGJkZWFhYjhjMjc4NTlkIGxlZ2FjeS10cnVuaworNjczNjMgMWU5MTlkMzRjOTgyNTE2MWI4NDkxMDJiNDczZDhjMDA3NmVjMjQ0MCByZWxlYXNlMjYtbWFpbnQKKzY3MzY0IDlmZWFhNmExYmYyYzIyYmFlMzFhNzRlZjg2ZjYyZDMxNjhkYTRlYzEgbGVnYWN5LXRydW5rCis2NzM2NSA3NTFhOGVmYzVkNDY2MmFhOTJmNzMzMTgyOTYxMzZkNDM3ZGE5MDdhIGxlZ2FjeS10cnVuaworNjczNjYgOTk1OThhNjFjYzM1ZmQ3YWYyMmU4MjQxNWU5ZGFlNWY0ZmI4NjdlNiByZWxlYXNlMjYtbWFpbnQKKzY3MzY3IGMzZjQ5YWRhYzJmZTY3ZTE2YjBjZmU2ZjQxOTJhZTAwNGYzOWZhYjMgbGVnYWN5LXRydW5rCis2NzM2OCAwNmZiNjQzZjY1NTNjNGY0YjM2ZjM4ZDhmMzczMTFkNDg1NmVkOGNjIGxlZ2FjeS10cnVuaworNjczNjkgZTQ5NzYwOTA5ZDJiYTUwNmJkOTMwYjc0MDYxOTc3N2FlZDc5YWM2OSBweTNrCis2NzM3MCBiNzFjYzAwM2VmOWY4YTUxNTBiZTg2YjhjYzNiODZkMzY3ZDFiN2Y5IGxlZ2FjeS10cnVuaworNjczNzIgZDY2Njg2ZWIxMWY2MzFhN2Y0ZDQ1MTZlMmRiODU0NDI1MTJlZjFlNiBweTNrCis2NzM3MyBmZmFkNmMwZjI1MmViMjA4MGIyYWY2NjE0MWE4MDQ4NTFkMTgzMDFjIGxlZ2FjeS10cnVuaworNjczNzQgOTZmMzhlMzU3MTk0ZWM2ODdmYTQ0ZjBjMmU4NTEwNjAxZDlkZDMwMSByZWxlYXNlMjYtbWFpbnQKKzY3Mzc1IDQwYjcyNzdlNjY1ZjAxNDUyZTliY2U5Njk2NzZjNDA3MmQ0ZWQ2OGUgcHkzaworNjczNzYgMGQxMGQ1YWIyODQ0MGE5NGI0MThkNTIzNzkwZWNmN2ExZGUzZDAwOCBsZWdhY3ktdHJ1bmsKKzY3Mzc3IGYzN2JmNTVkYjQxNmNhM2NjMGRlODEzOWQ5NmJkZTJmOGMxNzQ5MTQgcHkzaworNjczNzggNmMwODcxZjBjN2E2OWQ1NDJmZjUxMTAyZGQxOTFjZWY1Y2M3NjI1YSBweTNrCis2NzM4MCBkZmVkYTBkM2Q2MzZkNDAxNzNhNzFjZGEzYzAyMzMwNTU4NDYwMDY3IHB5M2sKKzY3MzgxIDRjZjAzZTE0MjAwYzg5ZDA1NGQyODViY2U5NThmZWFmMjY4NTVhMTMgcHkzaworNjczODIgZWZiNDlkZjBkODk5ZGY5ZDJhMjlmNjYwNTFjYWJjN2NlNTA2YzgzOSBweTNrCis2NzM4MyAzNTI4YjVjMTY5Mzg3OTliODk1YzMzN2IyMzZkYTg3YmU4NThiY2YyIHB5M2sKKzY3Mzg1IDMwZDAxYTVmNTE3ZWQ3YmU1MTI5Mzc3YzIyZTYzOWVmOGUwZmU5OWQgcHkzaworNjczODggMmQzZjFkMGMyYTEwZWNkNTdhYTg4MzgxM2U1N2UyNDM5NDFjM2JiOSByZWxlYXNlMjUtbWFpbnQKKzY3MzkxIGQzN2I0ZmU1MTMyODc1NDFkZTViODk3NWNhODk3NjdhOTQxODVlOWYgcHkzaworNjczOTMgOWZkOWNkODUyNjMxYWQ2ZjMxMzc3NzNhYzEyN2E2NjlmYjJkNWQyOSBweTNrCis2NzM5NCA2OGYzYmViN2VlYWRmMWIwMDE5NTkxZjQyMWU4NGUzZDMxZjc4ZWE3IHB5M2sKKzY3Mzk1IDczODk1ZWFkYThiZDFiMjIzMjZmN2E5MjA3NTNlOTRkYjZjMDEwYzcgcHkzaworNjczOTYgYTBjYmU0MGRhYzhmM2Y0NzVjYjdjZWE5MGY2OTQ0MjM4YTMyNzM5NSBsZWdhY3ktdHJ1bmsKKzY3Mzk3IDU2ODRjZTk2ZTYzOWY3ZWUwOThmMzNjMGVkNGZmZWY0NmJkYzJkYTkgcmVsZWFzZTI2LW1haW50Cis2NzM5OCA4NWIxZGU4NTVhMTNmYTRhZmYyMDU2MmFkODYwMTk5NWFjYTY5NDIxIGxlZ2FjeS10cnVuaworNjc0MDEgZGViMzA2NjljMzU1YzI4YTFhNWI4YWE1NjY3YmU3ODg5YjgyNGEzZSBweTNrCis2NzQwMiA3OTdiZDMzM2VmNmJhMjJlOWYzYWU4ZjA5ZWZjYjFlODMyMTY5NGQ4IHB5M2sKKzY3NDA2IGEzYTVmNjQwNGFkNWJhM2NlMTNjZjZmM2RjZmE1MjQ5NDRkOTQ4NjkgcHkzaworNjc0MDcgNWNiYzNkZDQ0OTE2MTA4NTNkMzE4OTE5M2MyNjkzNjViNTc1OWE1NSBsZWdhY3ktdHJ1bmsKKzY3NDA4IDBhOTk0YjMyZGU5ZmU1MTYyMGI0NzFhZDQ3ZmQ4NjU3YmJhYzRmMWYgcmVsZWFzZTI2LW1haW50Cis2NzQwOSBmODA0NGI4ZmY2ZWVlYmJhZmJjZWQwNTc5NTg5OGY1NTYxYzExYWJlIHB5M2sKKzY3NDEwIDhiMTRmYzVlNWYzZjVkMzljMzQ3MmZkMWIyYTliNDg4YTM2YzJmOWYgcHkzaworNjc0MTEgMzk3ZmJkNmMzNDcxYTMxMDAyY2UxMDIyMDhhMWE3ODZjMzBkNDlkOSBsZWdhY3ktdHJ1bmsKKzY3NDEyIGM1NDY0OTdiNDIxYTFhMmM1NjM0ZTExNWZmODZmYmQ4ZWJlNTMwMDcgcmVsZWFzZTI2LW1haW50Cis2NzQxMyBiNThhNDM1MDAyYzExMWQ5MzgxZTg0OGZiMmJkMDQxOGY1ZjZiZGMzIHJlbGVhc2UyNi1tYWludAorNjc0MTQgZmNhZTE0YmNlYTczMjM3ODViZWMzMTA3NjBiMDM0YjFjOWZmODc1MCBsZWdhY3ktdHJ1bmsKKzY3NDE1IDM4MWM2MjgxOWYyZWM4Mjk3OGFjYzkxMmIwMzU2OTA3ODZmNjFiN2QgcmVsZWFzZTI2LW1haW50Cis2NzQxNiBjNTEyNjJhZDU2MDNkZTk3MmFkZDc5ZDViZWI5MzVlMWEwMTQ1OTk0IHB5M2sKKzY3NDE3IDM4MDNiNmM0ZmY4ZjMyMDEwNTA2N2QyNTRmODkzOGYwOTM0OTdiMjAgcHkzaworNjc0MTggMDZlNmMzOWFkODAyNGY4N2Y5YThhNjQ0MmJmOGQ2MzJjMzNkZDBkNSBweTNrCis2NzQxOSBjYzllZmI5ZjhlNTdkODRkMDcwOWViNTQxOTM4YzgzYWYwYzQxYzYzIGxlZ2FjeS10cnVuaworNjc0MjAgYmYyZDE5MjkzZGI3N2NhM2EwYWFhMGZjMmMxMTdhNWIwZDdlMjY3YiByZWxlYXNlMjYtbWFpbnQKKzY3NDIxIGE5MDM1MmU1OWNlNjFkMzJmNDMyZDRlOWM4NDQ4MzJjNDZmMzVmOTQgcHkzaworNjc0MjIgMThhYTcyOGU5NTJkNTExZjkyYjExNjdhOTc5ZWQyMjMwMGU0YTQwNSBweTNrCis2NzQyMyAwYjNiNDRiOGM3ODI2MjU3YTI3ODFmYmI5NTY4ZWRiZGJlOGY3M2M1IGxlZ2FjeS10cnVuaworNjc0MjQgNDZiNWNmM2NhZGU0YWY3NWM2NWVjZmUxMjFjMDdlNGViN2Q4YTg3MyBsZWdhY3ktdHJ1bmsKKzY3NDI1IDBmY2ZlMThmZjhmNmQ1NzA2OGFhNGI3M2VkODliYmUxZTE3MTliODggcHkzaworNjc0MjggYzhhZWQ5YTM2ZWNiN2Y5OGM0ODA3ODlkMzhmMzc1ZTNhZGRlNGIwMCBsZWdhY3ktdHJ1bmsKKzY3NDI5IDhkMzI5ZDJhMzY0YWI1MjVjYjljZjJjOTExMjBjNjAxNDIyOTYwZDkgcHkzaworNjc0MzAgMDYwN2M5N2E4MTI0YjRlMzg1MWY4ZjRhNDkxMjE2NGQ3NzI2MmNjNCByZWxlYXNlMjYtbWFpbnQKKzY3NDMyIDIzYjQzNDhmZGY1MmZmNmVjZTA1OWVjN2QxYjBkMGY1OGNkZGI1ODMgbGVnYWN5LXRydW5rCis2NzQzNiA1NjBiMmY1Mjk1MmM4N2M0YzgyZDdjMTkyZmMyYmYzNTgzODYyMjJiIHB5M2sKKzY3NDQwIDA1YzEyZjZkMTQwNDA5YzEwOTk4MWQ3N2Q5OGRlODgyZGVkNWRjYzAgbGVnYWN5LXRydW5rCis2NzQ0MSBjYzI5NGZjOTBmNmM0ZGNlZDkxOWJkYTRkY2JlMjI2NGI1NzM4MWRkIGxlZ2FjeS10cnVuaworNjc0NDIgZWYwYzVjYTQ1NDQxMjM0NGM5NmE2YzIwMjhiMDc1YjJjM2U1MDAxMiBsZWdhY3ktdHJ1bmsKKzY3NDQzIDgwMzdmYTdhY2U5ZWVjM2M5MGI4MjhjMTUwNmRkMWU4NThkYTZlYjQgcHkzaworNjc0NDQgZTI5ZjY2ZmRiNDJjMjBmOWE3ZTNkMzI2NDYxZTY4YTNiZDUyOTk1YSBsZWdhY3ktdHJ1bmsKKzY3NDQ1IGY5YWE4N2ViMzM0YzFlZGM0NjNhOWVjYjdhMTUzMTIzYThiNzcwZDggbGVnYWN5LXRydW5rCis2NzQ0NiAzNTY5ZjdiMDkwMjU2ZTBhYTBlY2Y3ZTNhMTQ4OTk2NzRkMThhMjlhIHB5M2sKKzY3NDQ3IDI3N2E4ZjI5NDRiNDIzNWFlZWNkNGQ3MTVmYzMyNGI5YTA4MDlhYzkgdGxlZS1hc3Qtb3B0aW1pemUKKzY3NDQ4IGJlZjNjODVhOTA4ZDRjZGRkMGIxYWZkNjEwNjU1NmI4MjI2ODViNzcgcHkzaworNjc0NDkgYTFkZTkxYWQ5Mjg4MmRkYjdiMjlkZTRiYzhlYjNkYTlmZGE0ZWNkZSBsZWdhY3ktdHJ1bmsKKzY3NDUwIDdmZGY5MzZiMzBiZjZmMmNhZGNiZTNjNWY0MjE1ODIyNmQzMTIyZTkgcmVsZWFzZTI2LW1haW50Cis2NzQ1MSAzYmYxOGJlN2NlNWE1YjQ4NDI3YWU2NGUxYjk4ZTk0NDI4MmQyNDFjIHB5M2sKKzY3NDUyIGYxZWJiYzE4NmMxMTI3NjNkZWVhMTYxMjdkZjdjZWQ3MDk5MjRlOWUgcmVsZWFzZTI1LW1haW50Cis2NzQ1MyA5NDJiNGEyYzJjMTNiZTlhZjU5NjY5Zjg4ZjdiYTQ1ZWY0MTQwMWZkIHJlbGVhc2UyNC1tYWludAorNjc0NTQgMzlhNTZkMzU1Mzc2YWFmZjQ5MmU1ZjE5ZmY2MzVjZjQxNTY1YzcwYSBsZWdhY3ktdHJ1bmsKKzY3NDU1IDM3MTJkMWY2YmZkNTViNWE1OTk4YmMwNDllZTYwZDMyMjcwYjdiYTggbGVnYWN5LXRydW5rCis2NzQ1NiBiOTYyZDA0YmI3ZjAzMzRhZWQxZGY4YTZjY2UxY2I2YzRiNzRlOWZkIHJlbGVhc2UyNi1tYWludAorNjc0NTcgN2VkMzhhYTEwZGU2YTUyZTY4NjQ2ODFiMzM0ZWRhMzNiNzA0ZjZjOSBsZWdhY3ktdHJ1bmsKKzY3NDU4IDE4OWRlZjA2MjUzYzZhN2E5NzI4NWJkNDdlOTU3NDdiNWE3NGFkMmQgbGVnYWN5LXRydW5rCis2NzQ1OSAwMWY2ZWE3ZjdhNzU4MWY0YTQ5NGZjOWY2YWU4OGRhODQ1MmIwM2ZjIHJlbGVhc2UyNi1tYWludAorNjc0NjAgNzVhOGNhYTI0MTg2NTk1OWU1YjY1ZmYzN2UyZDVhOTZmMzkxZWEyOCBweTNrCis2NzQ2MSBlZDhhZGZlZjI2YzY1YjNhODg2YzgzYjBiZDM0YTYyNjc4ODgxZjY3IHB5M2sKKzY3NDYyIDZlODkxMzUzY2U5NjU4ZWJlYmQzZjY3ZTc5MGMyOWFjNDMyZmFiMGYgcHkzaworNjc0NjMgNjgxNzMzYjQ5ZmEyMzk4YWY4ZmI4MWY5OGNiM2UxNjFlYjZiNTRjMSBsZWdhY3ktdHJ1bmsKKzY3NDY0IDYwZTc3NWVhYWFlZWU4YThlZWM2ZjFjNWM2OTcyMzFjYmUwZjkxMmIgcHkzaworNjc0NjUgM2U1OTk1ZjZhYjhmNmE2YzQ0ZWU4ZWI0YmE4NzI5MDExNjY2OWRmMyBweTNrCis2NzQ2NiBhYjEyZDcxNmE3YTgxZWQ0YTA0YmE2NzAzMDM5M2M3NzM3NDAwYzViIHJlbGVhc2UyNi1tYWludAorNjc0NjcgN2Y4ZjcxZGM4NmM3NDA5NWM2YTkxYTQxZTNmNzYyM2YzZjE4ZTg3NyBsZWdhY3ktdHJ1bmsKKzY3NDY4IDA3MzJkMTNlZDA2NzhhZDg1NjViOGU5MDQwMDI5NDJkYjgwMzQxYjggcHkzaworNjc0NjkgMGY3NzI1ZTE5YmMzYjkzZjMyODE4NjQyNTBmYmY1NjI4MDgxMDE5MCBweTNrCis2NzQ3MCA0NDYxZjE4ZjI2NDNjOGZjOTlmMTAyYjQxZTE3OTA3MThkOTUxMThlIHB5M2sKKzY3NDcxIGIxZDJhZjUyZDgwMTUzNGE4YmQ4MmJlOTc0NGJkZGFlMzQ0ZmRmZmQgcHkzaworNjc0NzIgZWQ4NDc2ZDdmNjRhNWQ2MTY1MTgxMDY0MmQ3YTRiMzQ0ZWNhMzZjZCBweTNrCis2NzQ3MyAwOWMyZDE1ZTRkMWRiNjJjOTlmYTEzNTUxZmQ1N2U3MGJjNDE3ZmZhIHJlbGVhc2UyNi1tYWludAorNjc0NzQgYzE4MmUzYjllOWZjM2FiZGZkNTBkYTViNmZjNWJhN2Y3ZGRjZDY4YSBweTNrCis2NzQ3NSA0MGVjNmQyODk1NTJlN2YzMzljZGYwNzdmNTk3MzM1ZTcyNzBkNzA2IHB5M2sKKzY3NDc2IDZhMTIxZjA0YmM3ZGY2YTI0OWZhOTk5MzYwMzhiMWU3YmYwYTUxMmYgcHkzaworNjc0NzcgZDE3MmRkOGQ5ZTA5ZWJkODhmNTE0ODFlYzdkODU5MDNhYjc3OWVmNyBweTNrCis2NzQ3OCA4NmVlMmUwZDRkNDE1NDk1NTA3MDNmYjRjN2YwMmFiNjdlNDExZTUzIHB5M2sKKzY3NDc5IDc4YjBjOGRlM2E5ODgzODIxMzM4MWUwNjU0NmIwNGNhMTQ5YzM4ODQgcHkzaworNjc0ODAgOWM4MWMzYjcxMTE5NTJmMTRlYTI4ZWIzMjEwNjFlMmE0MjRkOTlmNSBweTNrCis2NzQ4MSBjZGRhMjA5M2Y2ZjUzMDhiNjJiZDI5NjM0OTVkMTJiNjk5MTUzNTI0IHB5M2sKKzY3NDgyIGNjNWE5NWYwZjU2YTUzNGY1ZmI0MzBlOTA4MGI3MjdmZDczNDI1ZDUgcHkzaworNjc0ODMgYzgyNmU0NjJmYTUxZjUzZjIxNWRmYmY2NjE1YTJlZWI3ZGI4MGEzZiByZWxlYXNlMjYtbWFpbnQKKzY3NDg0IDVkNGRmZWVkZDUxMmIzMTk0NDMwOGRjYzY5ZmZmNDE0MTIzMDA1ZTEgbGVnYWN5LXRydW5rCis2NzQ4NSAwNDUyNmEyMjJjYWYyNDNiMzU0YTU1MGQxM2QxMDhmNjk4ZTUzODk5IHB5M2sKKzY3NDg3IGNmNDdmN2M3ZGRiMzI2ZTA2OGE5NDY4YmM0YTcxODdhMDZjZmI4NTcgcHkzaworNjc0ODggZDFkZTMwMmU2ZWZjNTM4NjE2ODExNjcyMWY1ZWNiM2QxZWNkYTI5OCBweTNrCis2NzQ4OSA4MWNhN2JiODgwNGYwMmM1OGNiOTllM2M2MTkyMTQzYzM5YWEwOGZjIHB5M2sKKzY3NDkwIDEzN2I1MGVlOTZkNWMxYWQxODBhZTY0MDY5N2E5Y2Q0YTNkNGJhZmIgcHkzaworNjc0OTEgNTRmZWFjM2QxMTY5MDY0OTc0MzZjNTdjN2I4ODc4MjM0NTY2N2U5OCBweTNrCis2NzQ5MiBmNDQ3YTFkZTJmYWU5YjAzMzJmOTcwMzU1NGQyZGIzMDQ3MzI5NDJlIHB5M2sKKzY3NDkzIDg0NTMwNWEzZGEzNjNlYmJkOGZmYzMzYTIyNDk3Y2VhMTZlNmEzMWYgcHkzaworNjc0OTQgMzM0NDgwNGYzMjdkNmU1YjVlMWUyZWZhM2VlMDc5NjFhOGEwNmI2YiBsZWdhY3ktdHJ1bmsKKzY3NDk1IDZhNGNjNmJhMWMxNmFlY2JiMmU5ZmVlMTNmZDFmOGEzYTg5NDFmYzIgcHkzaworNjc0OTYgYTNkMDI5OWI0YjFkYWZiYWE4OWY3NThmY2QzNGM1NDg1ZWI0N2U1ZiBweTNrCis2NzQ5NyBjNmE0YTJjYzU2MTI2YTM5NzQ1ZWU3ZGY4MDcyYWUwOTEyN2Y0YTRmIHB5M2sKKzY3NDk4IDU4OGE5NWVmNzk3MTc2YTU1NzhjYzM0MTMyOWRhYmQ3YWI0MWNlNGUgbGVnYWN5LXRydW5rCis2NzQ5OSAxMDdkNDUzMTc5YmUyZWRlN2U3OGY3YWE4Njc4YzIyYzYyMDViZDQzIHJlbGVhc2UzMC1tYWludAorNjc1MDAgNTIzNWRjZGE5MDc2ZjI1YTljZGNjNzI2YTliM2FjMzk0NzkxYWJkYiBweTNrCis2NzUwMSAyYTVlYzA2MGJiOTk4MTliNmQ1ZDVlNTFiNjBkOGRiYTk3YjRhNjFjIHJlbGVhc2UzMC1tYWludAorNjc1MDIgNTlhZGZlNDM2OThkYzg0OGQ4MzExNTI3YzBkZTM0NDRiZTZmZGE5MCByZWxlYXNlMzAtbWFpbnQKKzY3NTAzIGE2NTMyMTQ2MDI3MDdiZGUwZTUxMDY0ZDdjNzc4OWNlMjk1ZTQ0MzIgcmVsZWFzZTMwLW1haW50Cis2NzUwNCA5ODA3Yjc5YTE2MmU2ZmZiMGJhNDJlMmM2OTU4NDg0N2E2YTdlM2MyIHJlbGVhc2UzMC1tYWludAorNjc1MDUgNTg5Yzg4YjIwYjViN2UwMDc3OTEwMWMxN2QxNDkxYTMzYThmYjljNSByZWxlYXNlMzAtbWFpbnQKKzY3NTA2IDY4YTZlM2FjNDFjMThjOGExOTBhZGEzYWExNzY0NGI2MTBkZTJjNTcgcmVsZWFzZTMwLW1haW50Cis2NzUwNyA5YTJiMDYzODcwYTMwOTFmMjMwMTlmN2JjY2M5ZDQ1YTY0MTNkYjQ2IHB5M2sKKzY3NTA4IDc1YjhlZTA2MmIwZDRmYzkxN2IxMzczOTNhMjg5YTBmNTQ4YzFjZDYgcHkzaworNjc1MTEgODc4ZDQwNDY4YzRlN2QyZDEyOTNmYWI2YTY5NjVhZjIxYjE0ZjkyOSBsZWdhY3ktdHJ1bmsKKzY3NTEyIGUwN2EzMjJlZjU5MzRjZTM1YjQ5Njk5ZTM5MzhlMjFmZDMxMjYzMTMgcmVsZWFzZTMwLW1haW50Cis2NzUxNSBjYWJmMzAzZTc4N2FhNWNkNzIwOWI0MGUzYjJjYWJhM2VlNzVjNWE1IHJlbGVhc2UyNi1tYWludAorNjc1MTYgYzlkYTg1YzE5NzE5Yjk1NDZkYTdiZjZlNjNjYWYxYzA1Y2Q2NDkxZSByZWxlYXNlMjYtbWFpbnQKKzY3NTE3IDUzMTQ1N2NmYTNlMjQzZTFmZDMwODU0OTU2ZTU1NjRhNTgxNTU2YmIgcHkzaworNjc1MTggNzFhY2E4NTNiMjQ0MjEwNjZmZDQ5NDcwMzdhMGJmMzUxODBjYTNhZiByZWxlYXNlMzAtbWFpbnQKKzY3NTE5IGU3OTNmYzNjOGFiZTk1ZTMxOThmODQ5MWM1NDljYmViZmU1MTRlYzkgcHkzaworNjc1MjEgZjNjNDg1ZTJiNDUxMzY2NTc4M2RiOTE5Yjk5NGIxOGVhM2MwYmQzZCBsZWdhY3ktdHJ1bmsKKzY3NTIyIDQ4ZjI5ZDg5NGIzY2M3YWZiYWViNGFmNTExMzA4MWE3NjRiZTIzMjkgcHkzaworNjc1MjMgNDI1NjAzNzRhYjI1MWFiYWQzNDczZTNkMGQyODUyMTgzZTM3NzM0OCBweTNrCis2NzUyNCAwN2VmY2UxMDdhYWVmMmU5ZDRlY2I5MWVkMjIwNmMxODY5NDhiNThjIHJlbGVhc2UzMC1tYWludAorNjc1MjUgODU2ZmMzZWEyZGRiODczOTdiY2M0YTM4ODZmYzIwMTM4Yzg1OWYwMyBweTNrCis2NzUyNiA3NTIwN2EwYTllMTU4NDUwZTA1OTk3NWIwMTJiYjdmZDJmNjMxYjFmIHB5M2sKKzY3NTI3IDQ1OGQ3YmMxMjk1MDkxOTc5YWRiNjgyODRlYTExYWY2MTU4NTllMWIgcHkzaworNjc1MjggZThhYjI3NTgyYjE4NDNmMTgyYTA0N2E0NTZlMmUxYzk5Y2Y2NDNjMSBsZWdhY3ktdHJ1bmsKKzY3NTI5IDNlNjUwMDMyYTVkMWNiYjEyMjE0NDJiOWNmZDEyYTcyOGQ0OWMwYWMgcHkzaworNjc1MzAgYzExNWFkNThlYWRmZTlhMGZiZDhiNjk2MzhjMmUxMzJjOTAxMDJmZSBweTNrCis2NzUzMSBmNmU1M2MzMGFlOTZjNWJjMWQzNGEwOTQwNWYwNGZjOTBhMzk2MjYwIGxlZ2FjeS10cnVuaworNjc1MzIgMjMxNjgwMjQ0YzE3YjMyMzBjNWMwYTkzOGNkN2U3YzYzZWJhM2UxMiBsZWdhY3ktdHJ1bmsKKzY3NTMzIDc0YmZlYjM2NGEyM2IzN2ZkYjM5ZDYxMGIxYTA2NWFjOTk4NmZhMDIgcmVsZWFzZTI2LW1haW50Cis2NzUzNCAxMDNjNjhjYzI5ZTVlMmY2NGJiMjlmNTU0OTlhODdjYWNiZTQ0MWFkIHB5M2sKKzY3NTM1IDg5ZTczOGM3OTJjMGJjOGRjMTYxZWZkY2M5NmQ4Y2I2NTNkZjE2YWMgcmVsZWFzZTMwLW1haW50Cis2NzUzNiA0NzkwYjMxZDkyNTc3N2YyZjFjNjY4M2Y1NjRiM2IxYTk1NDFiNzYyIGxlZ2FjeS10cnVuaworNjc1MzcgOWY4ZTUxZmRjZWEwZmJjNjZiY2I4ZDgxZGJkMTg1MWIwZDk4Mjc2NSBsZWdhY3ktdHJ1bmsKKzY3NTM4IGNkNWY1NmE4MWNjZTFkMTY1ZTNkZmJjNWI4YTYwYzgwOTBkMGE5NjQgbGVnYWN5LXRydW5rCis2NzUzOSAzZWNhNWE3MzY1MTYxMGFhOTMxZTNhZGU4YjdhNzNkZjc3ZWIwYjI1IHB5M2sKKzY3NTQwIDI3YmEwOTk1Nzc1MTQzZWJhOTE0NWFkODU3N2IyZjE5MTQyZTBmYzcgcmVsZWFzZTMwLW1haW50Cis2NzU0MSA2OTI5NTYzZGFkMDAzZDY1MWY2MGUzZWExYzk2ODI3NGM0ZDZjYTNmIHB5M2sKKzY3NTQyIDY3ODYwN2NlMTIyZmE4Nzc3YzA0Y2QyNWYwODc3ODVlMzkxMDcyYmQgcmVsZWFzZTMwLW1haW50Cis2NzU0MyA1ODljZGU2MTRiNWJmZTRiYzYxZDZiMDU1YzZjNTIxNGM3ZWJjNjYxIGxlZ2FjeS10cnVuaworNjc1NDQgZGVkOTllNGY2YjNkYmMxMDUyNWU4NjAzMTdiZjhlMDA0YzBkMjU4MCBweTNrCis2NzU0NSBhOWQwMDY3Y2JlYTQ2Mzc1Y2YyMzJmYmI2YmM2MGVlZjk5Y2ViNDMxIHB5M2sKKzY3NTQ3IDU0YzE5YTFiYmFiZDllNWVjOTk1ZTA4MzcwN2QyYzVkM2NhOTI5NDEgcmVsZWFzZTI2LW1haW50Cis2NzU0OCA0ZTEzYjM3YjM3MjNiOTIxNzNkODA4OGM0ODMzOGU3NzFjZDdhNzMyIHB5M2sKKzY3NTQ5IDliYjg2ZjdmYjk0NDc5NWFmOWY5M2ZjMTEwNWI4YjhiOGVjNzk3N2IgcHkzaworNjc1NTAgOGRkMzU2YjE0YjBkN2Q1NmUxMjgzMzc3MTc0MDEzNzliYzliOWQ5OSBweTNrCis2NzU1MSA3MjlkYjk0NjRlZjY4OGFhMzNiYTJjNzljZDZiMTkyOGVhNTcyOGNhIHB5M2sKKzY3NTUyIGJkYjAyZWFkNzU5Yjk3ODNjNmFmMmRiY2UwZTY1Mjg4OWZjNjZmZTQgcHkzaworNjc1NTMgODUxOTBmZjIyNGUwYzQ3MWE2YTE2MmJhZGM5M2M3NTYxZDAwZGJhZCBsZWdhY3ktdHJ1bmsKKzY3NTU0IGMzMTlkMjQ3NGY1N2UwZmNjOGZlNThiYWYwMjEyZjQzZTNjMzExNzAgbGVnYWN5LXRydW5rCis2NzU1NSAyNzk0NmYxZWI4ZmE1NzdlYmUyOGY0NzZkNGNiZTAxOTQ2ZmE1YjYwIHB5M2sKKzY3NTU2IGEwY2VhMDFlY2U1M2NlNmVhZmY2M2E5MTczNTVlMDU2MmU0MDQ4YjkgbGVnYWN5LXRydW5rCis2NzU1NyA3NjU5ODQxZDI3MTRkZWQwZGNmZmY5MmE1MzkyNjdlNGM0NzI0MDIyIGxlZ2FjeS10cnVuaworNjc1NTkgODZkOGE1MjJmNDQwNzNkMTIxMTM2NDIyYTQ2NGU4ZDY0ZThkZGQzZSBweTNrCis2NzU2MCBiNDdiN2Q5YzU5MzYwNmE3YTBhMWNlNjA4NTA3MzdlNzE2MWMwZjEyIHJlbGVhc2UzMC1tYWludAorNjc1NjEgODliYzMxZTA2NDg5MGJmOGE1YzllYTU4NWIyODU1YzZjMWI0ZjA0MiByZWxlYXNlMjYtbWFpbnQKKzY3NTYyIDAxMzcxODk3Y2IxOTAwMzVkNTZiYmY0ZTYzZDIxYjdiY2U1MGM3NGMgcmVsZWFzZTI2LW1haW50Cis2NzU2MyA1ZWY4YjVhNzRlZmEyMWNkYjlkYTU4N2E1YTA0NzUwY2ExMmU5NDNkIHJlbGVhc2UyNi1tYWludAorNjc1NjQgODU5ZjU1MGI0MDAzYWNhMWQyNmZkNGU3Yjg3YmE0MDhjMGRlNGZjNiByZWxlYXNlMjYtbWFpbnQKKzY3NTY1IDNjN2VlZjE4N2JlYTM0ZGFhZDFmZmEzM2QxZWMzOGI0MTU4MmJhMWEgcmVsZWFzZTI2LW1haW50Cis2NzU2NiBmMDhkMTQ0OGI5MGZmNWQ2YzA4NTMwZmU5MGU5OGM4ZmI2M2VhODZmIHJlbGVhc2UyNi1tYWludAorNjc1NjcgNmU1MWZlMWI3ZWQ5ZWE1NDJmYTJjZTZhZTZiMzkxMDRiYzM4ODZlYyByZWxlYXNlMjYtbWFpbnQKKzY3NTY4IGExNzJlYWE0ZDVlYzEwNDk1M2QwYzFkM2RiYTBhZGNlMzc2MjI1MWEgcmVsZWFzZTI2LW1haW50Cis2NzU2OSAxMWJmNTlmZTEwYjkyNDEwN2I3ZGE1MmVjZjUyNjI4MzBhNDNlMTk5IHJlbGVhc2UyNi1tYWludAorNjc1NzAgMmUyNmU4MjE5YWE0MjBjNTRlYjViMDQwZjExMDNhZjVkN2Q3NmZjMyByZWxlYXNlMjYtbWFpbnQKKzY3NTcxIDM2MzZmZTk1NzMyYzEzN2EzMTRiOTdmZmYxYTZlMmZiYzk5ZTIwNTkgbGVnYWN5LXRydW5rCis2NzU3MiAyMGFiMjI2MGRjOTNiYzA3MmRiNDdkYWE5NDI2OTcwNTEzOTFhZTMyIGxlZ2FjeS10cnVuaworNjc1NzMgYzQzNGI3NzE0NzdiZmExYjY0NzhmMWIzOTRjYzQ1MzhiNTQxMzRmMyByZWxlYXNlMjYtbWFpbnQKKzY3NTc0IGIzOGVhYjhjOTkwNGRhN2YyYmRmNzE2YmNiMDE0YjUyZjc4NGNmN2YgbGVnYWN5LXRydW5rCis2NzU3NSAyMGNkOGNmNjEzNzNkOTM1N2QzZWVmOWQzNjRkOGU3NzNmNTBlYzg0IGxlZ2FjeS10cnVuaworNjc1NzYgYzQ5ZDZkN2MxODFlMWYyZjRiOWNkNmVlYmI5ZDRkN2Y3M2I1NTg5YyBsZWdhY3ktdHJ1bmsKKzY3NTc4IDEwMGU0MTYwYWRmYmEyOWYzYmMwMjkyYjQwNjBmY2UwMWNiY2Q3ZDkgcHkzaworNjc1NzkgOTRiNGY4OGU1ZjZiZTQ0NDViNWU0Y2RkMDg0MTBjNzY2NTA0YzFlNCBsZWdhY3ktdHJ1bmsKKzY3NTgwIDAwNzk2NDgwOTgwM2ZmM2NkN2VmMGZhNWU5MjhkMTY3YjAzMjE5ZjEgbGVnYWN5LXRydW5rCis2NzU4MSA5MmNiNmU1ZWI0M2NlNjFmMjU4YTBlMDNjOTgyNjcwNzlkZmMzZGUwIGxlZ2FjeS10cnVuaworNjc1ODMgYTNhYjk1MzQ1YjUyYjI0YzJhOTc1ZWRkMzBiNTgyNDYxNTY4NzI5YiBsZWdhY3ktdHJ1bmsKKzY3NTg0IDA1NTA0NTgyY2VkNjdlZDNmMjgwMjRkOWI2NmM2OWJiZjI1NGNmY2YgbGVnYWN5LXRydW5rCis2NzU4NSBjMDYxODNiMmQwNmY0OTA0MzRkZWVkZDk3MjUxN2FlNGJhMzNjNmY2IHB5M2sKKzY3NTg2IDA5OGRiZDk3MzE0NzdjNWM2NDZiMWY5MmU1YzZkN2I4M2U3MGQ5MDUgcHkzaworNjc1ODcgZmYyMjYzZGUwZDZmNGFiNWJiYzk1NmFjYWE4MWQ2YWU2YTUxZTMwOCBsZWdhY3ktdHJ1bmsKKzY3NTg4IDdhOTJhMTY0ZmMxMmYzYzRkZDAwMDc3NzQyNTJiNmVhYzZmNDI1OWQgcHkzaworNjc1ODkgZGUzMDk0YmIxNDIxZDdkNjdiN2YxZTA0Y2JjMGY0OTdmZjgwZTA0NCByZWxlYXNlMzAtbWFpbnQKKzY3NTkwIDU3YjVjNDYzOWE1ZDIzZjRlY2Y1ZWMxNDNmNDdkYjg2ZWM3ZjYxYWQgbGVnYWN5LXRydW5rCis2NzU5MSBjMDMwMWI1NDMwZDUyNGIzM2MzNDQ0MzI4Zjc1ZjgzMGU2MzMxYWUzIGxlZ2FjeS10cnVuaworNjc1OTIgMjBhMWNjYWRkY2FlZWU3NzYwOGFmNmJhNTBmMDI4YWM3ZmNkMTE0ZiByZWxlYXNlMjYtbWFpbnQKKzY3NTkzIGJiYjEwMWE1ZjhjY2RlNWRlYzU3ZDUzOTAyYjliZmM4NDllMTliZDkgcHkzaworNjc1OTQgNjUxZGZiMzQwNWQyMThmNGJjMTYwNDBiMmQwNmQ5ZjEzZGNhMGZmNSBweTNrCis2NzU5NSA2MjRiOWVhZWRiODBmMDlhYWNiYmZhYTg3Mzg5MDY0MmQxNTZiZDlmIHB5M2sKKzY3NTk2IDI1ZjIyMmJlZmVjNGJkYWVlYjNhNWJjOTVmNTBhODlmYzRhYmNkNTggcHkzaworNjc1OTcgN2YwODIwZDczMjk5MzdhNTA0Mzk3MzE2M2Q1YWVlNzYyMjQ5OGZlOCBsZWdhY3ktdHJ1bmsKKzY3NjAwIDRjOTg0NGNmMmEzZjc4NGUwM2JhMjFhNTYyMTUyM2RlYzMzYzU3MzkgcmVsZWFzZTMwLW1haW50Cis2NzYwMSAxZjJhM2IxM2U4NmQ3YzRiYTg3MDczZTAxOGU2MGNmZDQ3NTNmYjJlIGxlZ2FjeS10cnVuaworNjc2MDIgYWJhMmNlMTYzYjcxOGQxMWFhM2NjNzhiMDc2MmMwODY1MzU0MmM5MiByZWxlYXNlMzAtbWFpbnQKKzY3NjAzIGIwMWRhMjZjNGJmOTQwMGQ3ZTExMDE0NGVmMTc4YmY5NjhmYTY2NTggcHkzaworNjc2MDUgODMyM2YyZGY1NjE3NDc0NmRhNGE1NGNjNmFjNjUzM2JiZTMxOGE3NyBweTNrCis2NzYwNiAyYzc4ZjgxNWUxOTJhYmZmNmUxNDIzNTdmMDQzM2E4N2IxNjA2YTRjIHB5M2sKKzY3NjA3IGFjNDJhOGY3NWY5MjViNzZiOTdmOWJlMGI1YWI3NzRiYmJmODBlNzIgcHkzaworNjc2MDggYTkwNjgyMDNhZmQ1YzAwM2E0MGU1NTQ4MTg2MmM4MDI4MDg2ZjA3ZSBsZWdhY3ktdHJ1bmsKKzY3NjA5IDdjM2FmMzIwMGUzNGI3MjU3NzFiYWM3NTA1MzQ2MzU0NGI2NTk0YzMgcHkzaworNjc2MTAgNjdjZTc0NWE3NDdhODg0NDE2NDRkNjYzY2E5NmY4ODg4OWUzZTQ0YyBweTNrCis2NzYxMSBiYThmZTNhNDBhNWJmNzNkNDUzMjQ2NDJiZDNmNTU2YzY4YWY3MTAwIHB5M2sKKzY3NjEyIDYxOTYzNTQxY2JmNWJkOWZiZjc1MmEyNjYxODk1ZjgxZmM0MTcwYjEgcHkzaworNjc2MTMgZTAwNzNiNzY1MGNjM2NhZTliNzExY2NhMWMwNTVhM2Y0Y2M1NmVlZCByZWxlYXNlMjYtbWFpbnQKKzY3NjE0IGRkNWUxYTA0MmRiYTRmYmEzYzk0MGY3NTVhYTJmN2FmOTM2NmJhOTYgbGVnYWN5LXRydW5rCis2NzYxNSAwYmUxMDM5MTM0N2I5Y2RkMGVmZWM1NzJhZGFmNjZkOTQxOTZjNmQyIHJlbGVhc2UzMC1tYWludAorNjc2MTYgYjEyZDZmNjA2NjE4YWJmZWZkYTQ1N2JjY2NkZjllZjdjNjliOTQ1OSBweTNrCis2NzYxNyBjZTM2Mzg4NzI3YTc4Yjc0NGUyM2RjNzM1NWUzMTNlN2VlOWMzZGRjIHB5M2sKKzY3NjE4IDUyYWQ4YTcyNDcyZTg0NjZjYzM2ZTU3MTc1Y2IxNWVkZDdkNmQ0MjYgcHkzaworNjc2MTkgMTM0OGRjMjQ0Y2EzNGI3YjY1MWI3OTEyZmQ2NmRhMzI1MTA4NjM1OCBsZWdhY3ktdHJ1bmsKKzY3NjIwIDNkZTcyMGNkMTc2NmE1MmUzYWNjYjBiYWVmYTJkYjMxYzAwYjZhZjAgcHkzaworNjc2MjIgNmRhYjI1ODc1MmMxOGIwNGE4N2M2MmI1Yjg4YzllZDlmZjE3MThiYyByZWxlYXNlMjYtbWFpbnQKKzY3NjIzIDE2OTNmZDk0ZDgyOWQxZjEwNzc3MWMzNGQ4OTNiMTExZjhiODVmNjEgcmVsZWFzZTMwLW1haW50Cis2NzYyNCA0YjlhZDNlNzQ4M2UzNWQwMThiNmMzNTFhYjNjMzQ3NTczNWFmMjUwIHJlbGVhc2UzMC1tYWludAorNjc2MjUgZWZmNGFhYjk1ODQ3OTVhMTEwYjIyZDkyMjBjODc3NDI0YmNkNzdiNyByZWxlYXNlMzAtbWFpbnQKKzY3NjI2IGU5ZjkzZTJmOGZiY2E4ZmY5ODU0ZjIwNjc3Y2MxNzk0NzNjYjc4ZmQgcmVsZWFzZTMwLW1haW50Cis2NzYyNyBiMTRmNTg3ZjUxMGU2OTgyMDFhZDAwMDE1MzIyMzliYzgzMmVkYWJlIHJlbGVhc2UzMC1tYWludAorNjc2MjggMGZlNDlhZWMyNTdjYmE0ZWI1NGJkMDM2MTc4ZmEyMDU5MTBjMjU2ZiBsZWdhY3ktdHJ1bmsKKzY3NjI5IDZhYTA5ODVhYmJhOGM2ODRlYzYwOTUxMTM5Yzg1OTgzY2IzNGRhMTIgcmVsZWFzZTI2LW1haW50Cis2NzYzMSA3ODc0Mzc3MTQyZjY0YzFhZDNiNGYwNzU0NDkwMjdjYjU5NDBiYWVlIGxlZ2FjeS10cnVuaworNjc2MzIgNWQwZTkzZjAzOThhM2NmNGMwZmFkNGY5MzJkZDMyN2VkNDlmNGJjZCBweTNrCis2NzYzMyBhZTk4NjgxMDU4YjI0N2NhMzBiNWI0YTQ1ZDU0M2ZmNjhlMTc1NmZmIHJlbGVhc2UyNi1tYWludAorNjc2MzQgZWVjOTI1MmIzZDQ1NDgwMThiYWJkMTkyNzMyMGE2Njk1NDJiMGRiNCByZWxlYXNlMjYtbWFpbnQKKzY3NjM1IGRhYmVkNjlkOGEyYWIyY2QyOGE3MjhhOGRhZDQxNzZhYWFiZjk1ZmUgcHkzaworNjc2MzYgMTcwYTk3NjhlN2FlZWY5NGZlODM4ZGJhNWRiODliOGVkNTI3MjlhZCBweTNrCis2NzYzNyAxNTgwN2UyNjJlYmYwZmE1OGQzOWExMDAxNDdlNjZjZWEyN2YwY2ZlIHB5M2sKKzY3NjM4IGI4YmU5ZDFmMGQ0NTVkMzhhNjhiNzJmNjlkOTVmNTgyOGUxYzE4ZjcgcHkzaworNjc2MzkgMjFhN2U4YzExNzA3MjYyZDExMmM4NWZjYjA4YjFmNjE4NGZkZWMxYSBweTNrCis2NzY0MCAwZDNkZWJjYjhkNDQ5MTQ3MDRkMzNjZGQ0ZTdhOGVlMmZmMGQ4YTAzIHB5M2sKKzY3NjQxIDYwZWU5MDFiNzM1Mjk4ZTgyYWFiODMyZDNkMjgwZGQxNmUwMjliNGQgcHkzaworNjc2NDIgMDI0YTk4OTdjNjUxMGFjZDY2ZjAzYmVhODNkNWFiNmU2OTA3ZmIyMyBweTNrCis2NzY0MyA5MmM3MzQ4M2MxZjdhNWMyMDhmNjJjM2I1YjRiNWYwYjNkZWIzMjM3IHJlbGVhc2UzMC1tYWludAorNjc2NDQgYzdhYmZhYjRkY2RiOTg5ZWM1MjVlY2QzY2E4ZmUyZmViZGE2YjkwOCByZWxlYXNlMzAtbWFpbnQKKzY3NjQ1IDkxNzAwZDIxMjFjODJkM2E4NTUyMTBkNzNlYmU5NGRiNzkxYzU4MjYgcmVsZWFzZTMwLW1haW50Cis2NzY0NiA2M2VlNmEwZjczNTg5OTU0YzcwZWM5MWIwNmViZjlhNDM1ZjhiN2M0IHJlbGVhc2UzMC1tYWludAorNjc2NDcgYTg2Y2RmNDliODIxNDQ2MjNkM2M0ZWRjMDUyOThmZDc4NWZmMzk0OSByZWxlYXNlMzAtbWFpbnQKKzY3NjQ4IDAwOWI0NjZjYzZjYTk0NTJhOGU0ZjZmNzI1MTRkYjcwNzk5YTdkNWYgcmVsZWFzZTMwLW1haW50Cis2NzY0OSBlMDdiYzM3OTg5ODEyNWVmMGE1MjNiYWFlMDRhNDY0MDVlZGNjMmEwIHJlbGVhc2UzMC1tYWludAorNjc2NTAgODIwYzExMmNjMmE4NjVmN2ZiY2M2OTM1OWIyYzExZjhjMGY0N2NkZSBweTNrCis2NzY1MSA3MjUxOTJjNjRjMjg0OTI5NzA4YTQ4OGU1OTI3YTFiZTUxZGM0ODVmIHJlbGVhc2UzMC1tYWludAorNjc2NTMgYzhhYTMxNTRkYjBlMzYyYzg0M2ViOGU2MjhhNTRjMTZmMzRiZWUwMCBweTNrCis2NzY1NCBhOWUzMDI1MGVkMjA2N2ZmZTlhMmI3MzY0ZTIzNThlZTM1N2FjODU5IGxlZ2FjeS10cnVuaworNjc2NTUgOWUxMWM5MmRhNDc2Y2VkNWM4NzM5ZjNhMjEwOGMzYWMzMTVhNzkzYiBweTNrCis2NzY1OCBmNGIxNmMwMmQxZjU5ZTYzZGU1ODZjZTBmZThiOTkzYTBhOThlOGRjIGxlZ2FjeS10cnVuaworNjc2NTkgZGNhNTdjYjBjMjAwMWIwZTNlOTMwNWNmZTE3OGRlYmZmYWJhMGU0OSBsZWdhY3ktdHJ1bmsKKzY3NjYwIDk5ZGQwZDAwNzI1YTU5NWY5ZGRlNWQyYzk2MzFmNmZjNzRjZjk4NzYgcmVsZWFzZTI2LW1haW50Cis2NzY2MSBkY2FjODg1ZDAwZjFkYTlhZjgyYjBjN2I2ODkwNjUzY2FhNmI4ZDM4IHB5M2sKKzY3NjYyIDQ2M2JmYTA3MzA4MTAwYTE5ODY2MTFkZjk0MzQwOWU0MjY5MGZiNGYgcHkzaworNjc2NjMgOGI5ZDA4ZGM4NTAwNDhiMzE2NzQ1MmVkNWQ4MmY0YTAzMDQwYzRmNSBweTNrLWlzc3VlMTcxNworNjc2NjQgMjZhMDlkMzg2NjRhMDFjZjU3NjVhZWQyY2Y0MDI5NTg4OTJiNTIwMSBweTNrLWlzc3VlMTcxNworNjc2NjUgZDA0MGM0MzVhZGU4Yzk4ZGRmNGM1ZjQyZGMyZDhlOTgwOTRmNWIzMSBweTNrLWlzc3VlMTcxNworNjc2NjYgZGM2OTZkZWIyY2YyNmRhMjQwOThkOTY0MGVjN2U5Y2Q3OWRhZmM1NyBsZWdhY3ktdHJ1bmsKKzY3NjY3IDgzZDY0MmEzNDM5YjNlOTlkN2ZkMjg5MjUzNGY3MDMyODU5MWY0MGQgcmVsZWFzZTMwLW1haW50Cis2NzY2OCAzZGFjOTkyODE5NGI3YWI0MmQxMzFmMTU0NWIyMzQ1NmI1ZmZkZTZhIHB5M2staXNzdWUxNzE3Cis2NzY2OSAwOTNlNGZhNTBkODRiNjRkNzJiMjhiZDc2MWU0OTgwODdiY2JhZWJkIHB5M2staXNzdWUxNzE3Cis2NzY3MCAwNWNhZjQ0MGNlOGYwMGIxOTdmOTAzYWNhYzA5ZGEyOGY4N2MxZDY1IHB5M2staXNzdWUxNzE3Cis2NzY3MSAzOGU2MTE2ODQ1NGIyNTZhZmFlOGZmZjFmOTdhZjk3ZWUzMmQwMzY3IHB5M2staXNzdWUxNzE3Cis2NzY3MiBiNzlkMWQ3NmYxOTVhNzFkYmYzNjNhMzY0ZGQ1ODdiMjE4YjU1NzJkIHB5M2staXNzdWUxNzE3Cis2NzY3NiA2MWNiNmM0YWIyMGRiNzQ2ZDM3MTQ3MWQ0ODkzZWIyYmZkZTg4MWJkIGxlZ2FjeS10cnVuaworNjc2NzcgYWQ2NDc3MTY2OTZjNDg4ZGU0YjlmMjFhMzU0N2U0OTE4NjU0NTllNiBsZWdhY3ktdHJ1bmsKKzY3NjgwIGQ0NzBiOWE3ZTllMTg5NmRjMTlkNDZiZjBjMTBkNGUzMmE3YThkNzAgcHkzay1pc3N1ZTE3MTcKKzY3NjgxIDlmYTBhNjVlY2UyM2EyOTFlY2UwOTAxOTdmNTA2NWFmZTMyMDk4ZjQgbGVnYWN5LXRydW5rCis2NzY4MiA0MGY3NTY2MTU1NGRiODA3NDA2NWU5MWM5YzRlZGMxYWNiZDZiYTE0IHB5M2sKKzY3NjgzIGQ5ZTgyOGU4M2QxMjVkZWY3NjIzNWMzZDk4ZDVmNzNhYmVmOGRmNjYgcHkzaworNjc2ODQgNjk0ZDA0ZWQyYjQzZGFjNjU3YWJmNWNjZTgxN2ZmMzVmMDM4N2E5ZiByZWxlYXNlMjUtbWFpbnQKKzY3Njg1IDYyYzg5Y2JmYjUxMWI4NzI1MTY5YjM1ZTQxZjRhYzBjZmQ5YjM3NWUgbGVnYWN5LXRydW5rCis2NzY4NiA5OGFiZTljZGU3Y2U3NzcxYjU2ZjE5NWEyZTRkNzlkMWRlOGE2MWY1IHJlbGVhc2UyNS1tYWludAorNjc2ODcgYTZkZGQ5NDk4M2VhM2QzOGExYzE2NDNiYjEyOWQwN2E1OTY3ZGJkMiByZWxlYXNlMjUtbWFpbnQKKzY3Njg4IDlhMTBkNDQwNGJkMDAyY2Y1MzRhYTFmOTRjYjcyOTc5NWVmMmVkYjEgbGVnYWN5LXRydW5rCis2NzY4OSA0ODIzOWY2MjA5YjA2NGRiZTllMDBiZmI5OTBiMzBiZDc1ODA3NTU4IHB5M2sKKzY3NjkwIDI2NTE4ZDQxYTE4NjhjNDk1YzQ3M2JhNTExMWQ0NTYwMzZkNDk4ZGQgcmVsZWFzZTMwLW1haW50Cis2NzY5MSA1OTY3MGI3Yjc3YTZiNTMwNzc1ZGRjN2Q0MzBjOGU5YTZjNGI0NjBhIHJlbGVhc2UyNi1tYWludAorNjc2OTIgNGFmNWUyYTYwOWFiMzU4ZmM5MDA4ODViZTIxNDk0Y2M5MGEwNWQ1ZSBsZWdhY3ktdHJ1bmsKKzY3NjkzIGIwODlhNTc3N2Q4MDZlNzE3MzkyOGQyNWEzZWMyODFlYWZkNWZiYTMgcmVsZWFzZTI1LW1haW50Cis2NzY5NCBhZTgxOTc1MTAzYjA4OWMyYTAxZWM4MDYwZjhkNGQyYWRiNmRjYTZiIGxlZ2FjeS10cnVuaworNjc2OTUgMjJhYTdkZDBlYTgxYjkxOGE2ZGY2N2U3NGQ2YmYwZTU1YzhhMGZkOCBweTNrCis2NzY5NiAyZjhjMzE3ZGZmMTdlN2Y2YTkyYTgxMzJiZWI0MTcwNWFlZmM2MTdhIHJlbGVhc2UyNi1tYWludAorNjc2OTcgYWJmODE1YjgwYjVkNTU3YTA1MzM2MGIwMzJlNDNkZDEwYWZmYjRlNyBweTNrCis2NzY5OCBmYjI0NTZhMzZhODNhODg1M2UyZTI3NGE4ZjVkNzNlYmJlNjgwOWUyIHJlbGVhc2UzMC1tYWludAorNjc2OTkgZTM1NDY4YmM0ZGY0MTFkZGQzYjhkN2YyZTM3NWJhOGYzMGIyZjllMSByZWxlYXNlMjUtbWFpbnQKKzY3NzAwIDIxZGU3YTkxNDZmNzRhMGM3OGEzM2VjZTBhOGNjOWMwNTBiNGQxMGEgcmVsZWFzZTMwLW1haW50Cis2NzcwMSAwMWMwMjNkOTIxOGViZDk5MzZkYzI2YTQ5YjU3NGQ0NWZkMGI1MWUxIHJlbGVhc2UyNi1tYWludAorNjc3MDIgNzE2Nzk3NTY0NjllOTAxOWQyZWE1MTZkNjcyNGZkOWEyOTkxMzg0MCBweTNrCis2NzcwMyA5YzMxYTk4NzQ0Nzg4YmY2ZmVhM2E2MzU4MTdkODc4N2YyMTUxMzg3IHB5M2sKKzY3NzA0IGU0ZTBmZjdkZGM4NWVjMWUxNTYxOTc2Yjk3ODhlYjVjMTVhMWZmZWEgcmVsZWFzZTMwLW1haW50Cis2NzcwNyAwZGYwZmRmYzhlMWIyYzAzYjEwZTBlMWM4M2ZiOTljNjBmYmM5MDgyIGxlZ2FjeS10cnVuaworNjc3MDggYTI1MjUxNTRlNDRmMjQwZTkwMzU2YWIyYTMxM2ZiNmJmYTFkMTY4NSBweTNrCis2NzcwOSA3NzZhNmNhZmMyMWEzNDgxOTU5MzEzMThlNTc3Y2NjMjZmOTUxOTQyIHJlbGVhc2UyNi1tYWludAorNjc3MTAgMjBhODRlMDYzMDUyNTcyMzJmZjc4NmVmOTI0YmIwM2UwMWZhZTMwOCByZWxlYXNlMzAtbWFpbnQKKzY3NzExIGQ5MWU2Mjg2Mjc2NDUxYmQ3YjJiYzRjOWJhZmZiOGU2YTU2MzcxMzQgcHkzaworNjc3MTIgMjZlNzg5NDIxNjVlMTBmYTY2NjI5MDAzYWI3Y2QwZWFhMGI4YmRlOSByZWxlYXNlMzAtbWFpbnQKKzY3NzEzIDNlMWM0NDlkMTFlMGVhZTAwMmEyZTFlYTRjYjMwYTNiMTg5MTdmMGYgcHkzaworNjc3MTQgZGY2NjQ5OTUxNDEwZWM4M2Q4ZWNkMjY5OTBhYzE4YTJlNDMzZjQzOSByZWxlYXNlMzAtbWFpbnQKKzY3NzE1IDMwMGI5NWZhN2I0ZDNmOWIxZDQ3MTc0MGI0NzNlMThjNjE0YWY4YzEgcHkzaworNjc3MTcgYjQ1NTJlMmZmZDVhNDE4NDUyZDJjMTBjMjU4OGQ4NjY3ZGY0ZjE0ZiBsZWdhY3ktdHJ1bmsKKzY3NzE4IGY5Yjk1Mjk0YWM4NTc3YTg0NjFhOWRlMWE2MjU2MWVlZGU1ODI5YjQgcmVsZWFzZTI2LW1haW50Cis2NzcxOSA1ODU1ZTNlMGU4NWIxNDljNmE4MTFmZjVhM2Y2OTg5Y2RjZGI4MDhmIHB5M2sKKzY3NzIwIGZkZWM1NzY2MTFiZGZhNjM3NWMyNTJjMjNlMDdkOTc5OWRiYjEzZjQgcmVsZWFzZTMwLW1haW50Cis2NzcyMSAzM2ExZTEwMDhlNTQwZmJlNjY1OTgwODllYjk4MThjZTc3MTgyZDJlIHJlbGVhc2UzMC1tYWludAorNjc3MjIgZWVlZjcxZGQzY2NlMDJmOGM2Njk1ODlmMWZkNDk5MDNmMzQ2ZjlhNyByZWxlYXNlMjYtbWFpbnQKKzY3NzI0IDQ2NDZjMzM1MzFkYjMwM2Y5YmJhMTEzOTBhY2RlNjQ2NGJmMGY2YzcgcHkzaworNjc3MjUgMjQ1ZTc4N2I5MGZjMTBlYThmZWQ4MGUzODk1MjkzMDZkZjMxZWMwZiBsZWdhY3ktdHJ1bmsKKzY3NzI2IDYxZDA2NDA5YTY2MDY5M2I0NzhhNjUxNjM0ODhhYWUwYzJiMTE4MDQgcmVsZWFzZTI0LW1haW50Cis2NzcyNyAzM2NkMDY0OTE4NTg1M2VlZjdjMGFhZjFlYzE4N2U4ZGE5OGMwMDViIHJlbGVhc2UyNC1tYWludAorNjc3MjggYTZjM2M3MTVlMmI3MDc0MGM0YjZiNGY3ZGM2ZjQ3YjE2YTdlNTkwNSByZWxlYXNlMjQtbWFpbnQKKzY3NzI5IGZiNWY4YWZmMjNmZDFjY2MxZTYxMmZmYTYzMThhNTg0ZGMzMzZmYjYgcmVsZWFzZTI0LW1haW50Cis2NzczMSAwYjdkY2RiNWNhM2FhYzg5ZTA1M2I2NzkyYTQxYmE5NTI2MzlkNjBiIHJlbGVhc2UyNS1tYWludAorNjc3MzIgMmUyMWNlYTQzNjcwNzFjMjY0OTI1MDM3YzZhMTM3OTJmOGJiNWI4YiByZWxlYXNlMjUtbWFpbnQKKzY3NzMzIDRkMjQyMjk4OTk4MWFlYmNmYzYwMTVhNjcxMjFjMDNhNzYzNjU0MzUgcmVsZWFzZTI1LW1haW50Cis2NzczNCA5Y2FhMWU1ZGQ4MmJkZDAyZTU5NTZjZTJlMzUwOTVkMThjMjE0NDNhIHJlbGVhc2UyNS1tYWludAorNjc3MzUgMWYxYTExNzc2Nzc0MDMzMWU4YjE4MGU1MzAzMWU0M2U4ZTMzZTZiNCByZWxlYXNlMjUtbWFpbnQKKzY3NzM2IDhkOTAyYzUxM2JhMGY4NTlmNTc0MmEyZWU0YWFlZGJjZWIzMjBlYzggcmVsZWFzZTI1LW1haW50Cis2NzczNyA3NmYxODllYTU1MDlmMWIyNDk3YTVkNWQ4Njc3MWU4NTBlMDExNzVkIHJlbGVhc2UyNS1tYWludAorNjc3MzggM2EzMzJiZjA2ZGEwNjllZmE3ODdkZTQ3YmE4Y2VmYWRkMDI1ZmEwNCByZWxlYXNlMjUtbWFpbnQKKzY3NzM5IGU2ZGJhZGFiMDFkOGE4NTAxZjg1YjAzMmNhZjM2M2QzMGI0MmMzNGYgcmVsZWFzZTI1LW1haW50Cis2Nzc0MCA1ZjRmNmI3ZGE4Y2JjYTU3NGZlYmFkOTNkNDM1OGZkZGJhMWVjYWIzIHJlbGVhc2UyNS1tYWludAorNjc3NDEgMTJkZDJjZjVlMGM4MDAyNjUwNWE4M2Q4MTY3MzAxNTU3NDE0NzM0MCByZWxlYXNlMjUtbWFpbnQKKzY3NzQyIDk1MzBkMzM0ZDI2MjQyMTllN2VlMWFlY2FmMzM1MzJlOTEwMjY2YmMgcmVsZWFzZTI1LW1haW50Cis2Nzc0MyA1ODQ2OGZjZGUwNmU5YmY1M2JhNThkNWM0ZjQyZTg5ZTc5YjlhMzUxIHJlbGVhc2UyNS1tYWludAorNjc3NDQgODhjMDhhNjNjYjc0MTU3MGNjMjUwOTZjZWU5MTQ0MWY5YWI2M2YwMyByZWxlYXNlMjQtbWFpbnQKKzY3NzQ1IDZlODBlYzQxMzA5NzNkZTU1ZjUwODczOGEwOWFjOWZjYjMwZDAwNGMgcmVsZWFzZTI1LW1haW50Cis2Nzc0NiBiYjFkOWFlODAyYzMxNTJkMGUzMGIwZGYzZjgzMDk1MDc1OGYxZjBjIGxlZ2FjeS10cnVuaworNjc3NDcgNzQwY2U5YTUyM2ZmYzRhY2M5MTEyMDAyYmM5OTIzNGQ4NmNkNDNlMyBweTNrCis2Nzc0OCBhMDkwYWFiNTc1YzZlZjZjMzIyZDQ5NDc2NzA0ZTI4ZGQ0NWVmOGViIGxlZ2FjeS10cnVuaworNjc3NDkgOWM0MjhkYzNkNmZiNzc4MmUxODA1NzRhYmIzYjM2NTdmMjI4M2FjNCBweTNrCis2Nzc1MCBiNWVmY2EzMDRkMmFmOTFlMWNkMGU2ZTZmYTllMTEwYjBlMDcwMDBkIGxlZ2FjeS10cnVuaworNjc3NTEgZjIwZWI4MDk1MzVlOTFjMGIxNDQxNmNjNTQ0NzM1N2NmY2JiZTk1YyBsZWdhY3ktdHJ1bmsKKzY3NzUyIDQyNjRjZjAwYTc1YzBmZTIwNjJlZDg0NjI3ZjA0ZTQ2ZjM4NzgxOGYgcmVsZWFzZTI2LW1haW50Cis2Nzc1MyBkZDFiOGRhMDFkMDJkMThiZDNkZjdjM2NlZTIyNzU2Mjg4N2M4ODNiIHB5M2sKKzY3NzU0IDI1MjkyN2EyZjMyZDZmZTBmZDBjY2YzOWM1YzczOTJhNzgxN2I1MjMgcmVsZWFzZTMwLW1haW50Cis2Nzc1NSBjYzcyNzIzOWU1MWIxNjQ3MjBmZWU2MjQzZDMxNjU2ZjZkYmYxZWU0IHB5M2sKKzY3NzU5IGViMDcwMDljODY2MDU4MTFlNjkzNWFiYmZlOTgxODkwODYwYTc0ZDMgcHkzaworNjc3NjAgMThmOTZmNjg4M2FmNWQ1MDkyN2U2Yjk3ZDQ2MzMyN2VmMDAyODU4YSByZWxlYXNlMzAtbWFpbnQKKzY3NzYxIDcwMzNiMjg2ODVhMTNiZjQ1NTQ0NWE0MThjOWIwYzViOTY0MDA1YWMgbGVnYWN5LXRydW5rCis2Nzc2MiBiMDk1MTc4YzA0OTI4YTM0NmMwMmI4YTQ3NDA0NzA0Yjc4MmJiNjcxIGxlZ2FjeS10cnVuaworNjc3NjMgMThiY2UyZjJhN2M1NmJhZDRjYjM2NGY2ZjFiMGRjNjdjYzc2MWRhOSBweTNrCis2Nzc2NCBkMTU3NDZhYmY2Yzc4M2M2MjJhZmU0YmQyMzk5MDAyZGM1Mzg3YzI0IHJlbGVhc2UyNi1tYWludAorNjc3NzcgNTc1Zjk3M2ZmMjQ0MzNlMTUyZTg4YTQzNGM0YzhhNjc0NTI0ZDI1MCBsZWdhY3ktdHJ1bmsKKzY3Nzc5IDcyYTdhYzIxOGVhMzI4M2NkMWQ0YjEzYjhlZmQzMmY5YmFmYWIyZDcgbGVnYWN5LXRydW5rCis2Nzc4MCA5NmFiMDhlZDk1YTQwMmFkN2Y5ZmJkNmFkYTFjNDIxN2IwOTgxNjFkIHB5M2sKKzY3NzgxIDRkYjY2YzIwY2E2OGU1YTE4YTI2NjZkNWRmYTZkNjlkODc1MGJhNmIgcHkzaworNjc3ODIgZWE5YzYwMjZhZTdlYTI0NjJjZjNhZmNlZWJiNTU4NTc2OTFiODAwMSBweTNrCis2Nzc4MyBhZDk4MmMyNmMzZGQ1ZjRkNzc5YTY1OTFhOWU3NDZiN2M1Y2U4NjQ3IHB5M2sKKzY3Nzg0IGUzNmJlMWVjNzI5NjVjMDBlNmIwYTZmYTA3ZDMwOGM3YWEzZmZlNGYgbGVnYWN5LXRydW5rCis2Nzc4NSA5ZTlmY2E5NGQyODYyMTY4ZjE0MDY5OGZhN2NiNzI0MTA3ZDY3NmFkIGxlZ2FjeS10cnVuaworNjc3ODYgMzMzNmU0Yjc3YTA0MTJlYWU4N2FhMzJmYTNmMGZjNDIwZmVhZjU4YSBweTNrCis2Nzc4NyBkYzZmOTc0ZmI3ZDRmODMyNDM1ZDA2MTljMzU3NzRmODdmMjc1NWUwIGxlZ2FjeS10cnVuaworNjc3ODggMWFmMmI4YjBhZDg4Y2I5NDc5Y2I0N2RhYmNhZGI1ZjUyNmM3MjhiNiBsZWdhY3ktdHJ1bmsKKzY3Nzg5IGRhY2FhMWY0NDE5ZDcwM2M2ODY1ODZjMmFkOWU3NjdlOGUyZTc2NTMgcHkzaworNjc3OTAgYWI1MWMxNTA5YmMwNGE0NmJmOWE1NDMyOWNhMWNiZGFhMjk4YmNmMSBsZWdhY3ktdHJ1bmsKKzY3NzkxIGVkZDcyNDM3Y2VjM2YzNTdiMjBlYmEwZjQwMDEzZjdlN2U5MTZkMmIgcmVsZWFzZTI2LW1haW50Cis2Nzc5MiA3ZGFiODgwNzBiYzdkZmFkMDg5NTA3MDRlMjkyZDdkMjE1YTc1ODViIHB5M2sKKzY3NzkzIGViMjg3NmFlMDQ3Njk2MGZlNDc2NTRlMmU5MGYzMmIyMzIxN2I1OTMgcmVsZWFzZTMwLW1haW50Cis2Nzc5NCAyMGYxNWMwZjIxZjg4YTlhZjg4NWI3YzA1YzJmMDgwYmU3MzA5NGI3IHB5M2sKKzY3Nzk1IDQ4MDU3NDVkNTU5OTM3N2JmOGI5YzM1YjYzNDVjMGNiY2M1NGE4YmMgcmVsZWFzZTMwLW1haW50Cis2Nzc5NiAyOTk2ODM5NWY5MjA1MzY4OTU4MGRiYTY5YmRkYWVjYWJmZDc1YzdhIHJlbGVhc2UyNi1tYWludAorNjc3OTcgMTRjZDU4ODU0NGZhMWIxYzlhMzU5NWIzMmI4MWExOGUzZmFhNjFkZSBsZWdhY3ktdHJ1bmsKKzY3Nzk4IGQ1MGRhZDJiMjc1MDQyYWRlYWYzMDlhOTU2YjNhZThiMjQ3MDAxMjQgcHkzaworNjc4MDEgOTU0MWEyZWNjNGZiYmNlZTRmYzhlNjI4NjdlNGY4ZTgwYWZhZDA2ZiByZWxlYXNlMjYtbWFpbnQKKzY3ODAyIGI3ZDlhZGM0YzM0Mzc5NmJhZTNjODc4MGFhYjgyOGVjODM3NGIxZTcgbGVnYWN5LXRydW5rCis2NzgwMyAyMmZmOWE0NjI5ODc1NWRlNTg3YjU5NmE5YTRjN2NlMzM0MWJhOTk2IHB5M2sKKzY3ODA0IGExNzViMTliNGJmMmNlOTg0MTBlNjFmMjc5OWYyZGVhYTdmNDdmNjkgcmVsZWFzZTMwLW1haW50Cis2NzgwNiA4YzQyNGYxMTZmYjhkMGVkNzVkN2E5YjJlNGMyNmViN2ZiYzc4Yzg5IGxlZ2FjeS10cnVuaworNjc4MDcgMjFkMzM1N2RjYmVjNDFmYzZmZTAwYzA0OTg1MTE4YWM4OTBmYjEzNiByZWxlYXNlMjYtbWFpbnQKKzY3ODEwIGE0M2E2ZGYxOGJhNGJjNjg5YzIyMThkZDA0NjAwMTcxYTJjOGM3NmMgcHkzaworNjc4MTEgYWVmMDczMGRmOWJhMzI3YThlMTVkMzcyYWU3MzdkZmI2ZWM0MmU2ZiByZWxlYXNlMzAtbWFpbnQKKzY3ODEzIDY4OTg3ZTkzMTE5M2ZhZjY5ZDJiYWJkMTA0MDU3MDY4NzU0MjhiM2YgcmVsZWFzZTI0LW1haW50Cis2NzgxNCAwNzQwN2RlMTgzOTQ4ODNlNGZkZDQ2Y2M5Y2Y0ZDlkMTZkY2FmNDUxIHB5M2sKKzY3ODE1IGQwNmIwNGM1N2I1MzYxODAxOGY3MWJiZWFkOTUwOWNiZTBjMzU1MDggcmVsZWFzZTMwLW1haW50Cis2NzgxOCA5NGU3OWQ3OGRmZjBkZmI1YzUzZjQ5ODQyYzdkZjY1YWQ1Yjc5ZTY2IGxlZ2FjeS10cnVuaworNjc4MjIgZjBkYjA2ZjQ5YTRlMzBlNDk2NjYyNTFmNjQ4Y2U5NWU3MDllMTU2OSBsZWdhY3ktdHJ1bmsKKzY3ODIzIDMzNjY4NjQ4MTQ0NjYwMDBmNzhhZDk3NWI4YzdkZWJiOGEyMzhlNjcgcHkzaworNjc4MjQgOTJlMjE2NTJmMmY0ZDMyZGJiY2Y2YzVhYjM5ZGQ0YmMwMTI2ZGMyNyBweTNrCis2NzgyNSBjYmJlMjU4ODY2NDg3YTQwNjBlZGZhNTJjOGQzOTYwYTFhYzY1NDJkIHJlbGVhc2UyNS1tYWludAorNjc4MzIgZmM5NzI5YzgwYjc5MWE3Y2JjZTdhNmI5YzQ2OWFhY2E1MjI4YTg4NCBsZWdhY3ktdHJ1bmsKKzY3ODM0IDE4OWI0NjJlZTlkNGYyNWJmYzJkMDMwYjY5MTg0YTA5MDhkNzcyMjQgcHkzaworNjc4MzkgMmVlNDY1MzkyN2Y3MmY5YmIzZmYxNGIzMDgzZDRhMjAzZDY4NGRmYyBweTNrCis2Nzg0MCBkYWY2ZDNhZjQwYzRiOTM5ZGQxZGNmMTVhNzc3OTVmY2Y2NzM2ZjdjIHB5M2sKKzY3ODQxIDAwMWEyNTE1ZDU3YjAxODhhNGFjNDViZTlhOGM2ZjRjN2VhZjI0ZmUgcHkzaworNjc4NDIgYWViZjcxMjRkZDMyMmE4ZmI1NTk0ZDQ2ZTlhNjUxZGJlNWI2YTkxZiByZWxlYXNlMzAtbWFpbnQKKzY3ODQzIDgyZTZmZTM3MDc4MjlmNjZmNGQ0ZmQwYzhhMzVhMDNkYzUzMGRjYmEgcHkzaworNjc4NDQgMjRiODBiNzk3OGVjMjE5NGM0ZmM3ZTExMDBhYTQwYjFhZmUxMWY3MyBsZWdhY3ktdHJ1bmsKKzY3ODQ1IDU2YjdlYmYxMmVhM2FkZmQ5MDMyNDYwNmUwZGIxN2NjZjY5NDgzNTggcmVsZWFzZTI2LW1haW50Cis2Nzg0NiA0N2VjYmUyZDNlZWZiYzUzYzc1YmJjMWE2ZWRlNzNkY2UzNDk0ZDk2IHB5M2sKKzY3ODQ3IGJmMjBjMzg0YmU1NjM5YWVhMDUwZTgwMmFjZTg0MTNjMGM4Y2JiM2UgcmVsZWFzZTMwLW1haW50Cis2Nzg0OCA2ZmE1Zjk2OWVmZTY0N2EyM2Y4ZjJhMWI0NjIyZmQ1NWMzMmViOGZjIGxlZ2FjeS10cnVuaworNjc4NDkgNWU4MzkyOWY3ZWViNjFkNmUwMDliYjFmNDY3OTYyMzgxZWVkNWVmYSBsZWdhY3ktdHJ1bmsKKzY3ODUwIDlhMTg5MDk4MjQ4OWU1NDY5OTcyNDAwYzYzNzlmNGIyOTE5OTE5ZjQgbGVnYWN5LXRydW5rCis2Nzg1MSAwZGI5MDdhNzA3MjM2MDlhYjFhODcwNWRhN2YwYjczOWY2MTZkZTA3IHB5M2sKKzY3ODUyIGYzZjFmMTQ2MmM4MjUzNmJiMjM3OTZlNzBjODU1MjIxNDRlZTI0ZGIgcmVsZWFzZTI0LW1haW50Cis2Nzg1MyA0OGYyNzM3MzM3OTU2ZWUxNWUzOTEwZDc4M2YyZWY3NDI0OWIwNjM5IHJlbGVhc2UyNC1tYWludAorNjc4NTQgNjA4ODU2YTdlNTY4Yjg2ZTUxNjNlYTZhODdlYjAxNjcyODhiYzY2OCByZWxlYXNlMjUtbWFpbnQKKzY3ODU1IDNjYzA1NmQyMWMyZjQ0MzVhNTM0ZDIzMzQ1YmFkOWMwYTlkOWIzY2IgcmVsZWFzZTI1LW1haW50Cis2Nzg1NiBiNTYyMzEyMjQ3MjhhYmYyY2IzZWFhM2I0N2FmZDc4MDlmODVkYjkzIHJlbGVhc2UyNS1tYWludAorNjc4NTcgNDk2ZGZmNDdiYzdlZjZmYzFhNmUxNzQyMjQ3NTk5ZjJjOWQ4ZGJiMyBsZWdhY3ktdHJ1bmsKKzY3ODU4IDliZGViMGJlMWRhZDRkYzhiMGYxOWQ2MWM2NmRmODk5ZTYzZTlkZmQgcHkzaworNjc4NTkgMWM5NGU3OThjODViMWE2MTM5NDg4MjdhMDA5YzZhYmJjMzBjZjRmOCBsZWdhY3ktdHJ1bmsKKzY3ODYwIDQyOGY2YzRlODQ0NjIxMGRjMTM5NWE2ZjAxYWNjZTVkOGI2NTY4ZTcgcHkzaworNjc4NjEgZDAyODJhMjkyYjBhYThjMjUyNTFjY2U0MGM5ZDc4N2QyOGY2MGNiMyByZWxlYXNlMzAtbWFpbnQKKzY3ODYyIDlmYjJhMjNlYWM0MzVhMmJkMGQ2ZjI5NGE1YmYwNWI5ZDQ4YTYzZDcgbGVnYWN5LXRydW5rCis2Nzg2MyAwNjQ3OTQ4YmU4NDBlZmQzYmU4OWFlMDg4ZGFhMjVhNTVlNDlhMWJiIGxlZ2FjeS10cnVuaworNjc4NjQgNjcwMjA0Y2YyM2UyMjU2ZDJiZGNkNDIyMjFmN2EwYWM0ZmNiNTZiZiBsZWdhY3ktdHJ1bmsKKzY3ODY1IGE3NjU2MThjN2U5NDRmM2UwNzBhNjUyNGRmZmFjOGVlNmE0M2EyZTMgcHkzaworNjc4NjYgNDYyNzljZWJlYTljZjE0M2NjYjkwYzQ5MzczMzY1Y2VhZTBhNzcxZiByZWxlYXNlMjQtbWFpbnQKKzY3ODY3IDc3M2FmMTg2MDhlM2E2MmE0MDllOTMzZGI0ODA4ZjAzYmFlMGQxZWUgcmVsZWFzZTI1LW1haW50Cis2Nzg2OCBlZGIyZWVmYjY4NTZmNmZiMGYzMTE5ZDU4YmQ5MjQ0ODllMDExNDE0IHJlbGVhc2UyNi1tYWludAorNjc4NjkgNzhmYzA5NmU1MDg1Mjk4ZmQwMTFhNTMxZDY1MmRlNDk3YjlmMjMyNSBweTNrLWlzc3VlMTcxNworNjc4NzAgN2ZlNzJhZTE5YWIyOTBhMzRjNDgzMTNkYjBlMTBlYWZhMWVlNjM4NiBweTNrLWlzc3VlMTcxNworNjc4NzEgNDViZWE1ODQ2OTRlMzUwY2YyYjkxMjQxNWJkYzY4MWE1YWQyMjE2MiBweTNrCis2Nzg3MiBlZTljOWNjMDI4Y2UxNTkxOTU3ZTdjOGQ3MTAxNmUzZDJiZmZlZWY1IHB5M2staXNzdWUxNzE3Cis2Nzg3MyBhZDI0NmNiNGY2NjJlMjExYzQ3MDFmZTNiOWZkY2I2MzljOTk0MDgwIHJlbGVhc2UzMC1tYWludAorNjc4NzQgNmUzZTU4MmZlM2YzODhlZDhiMDI3Y2FiNWU2Y2NiNGQ2ZTU3MmFhNyBweTNrLWlzc3VlMTcxNworNjc4NzUgMGMwYjlhYmI1ODQyNmRkOGE2N2Q4MGQ0NmM1OTdmYmQ0ZmY3MWJjOCBweTNrLWlzc3VlMTcxNworNjc4NzYgOGJiOWE4NTQ2MzliNjkwNWUwMzlkZWY4M2EzYmE1YTcyZGFkMTExYiBweTNrLWlzc3VlMTcxNworNjc4NzcgZmI5OTNmMDkzY2JmNDNiZGQxYzJiYmM0ZDYxNzUzNDM4YWJjZmJjNyBweTNrLWlzc3VlMTcxNworNjc4NzggYTY1NGYxZTFiZTIzMWZkMzNiODkwOTE1ZWE1MzY4ODViZDdjN2NhMCBweTNrLWlzc3VlMTcxNworNjc4NzkgMGRjYTJiNDU3Nzc1ZDQ3MjVkZDQ4MjAyZjVmNWY2N2RhODhmNzA5ZCBweTNrLWlzc3VlMTcxNworNjc4ODAgNTg5ZWRmNjE1YWRiNzI2MmRmOWNhM2JhNzNmYWU1ZDMxNzMxOGE2NiBsZWdhY3ktdHJ1bmsKKzY3ODgxIGE3YjM1N2Y5ZThhNDhlYWQ2MmVkNjFhZjlhOGM1OGM2Y2Y5ZTcyOTcgcHkzaworNjc4ODIgYzRmZmZhMDk3MmUzNjhlMGQ3Mzk5NWJmYzg2OThjZjZhOWNiMzNkOCBsZWdhY3ktdHJ1bmsKKzY3ODg0IDFkOTYxZmU1NGE2ZjlkM2MxOTQxMDY3YTEzMjcyNmJmZjU1ZTFkYzMgcHkzaworNjc4ODUgZjMzZGNmN2U2ZTFjM2VkOTQ1ZWJiOWI5YmIyYzgzZjgxNzcyNjhhMiBsZWdhY3ktdHJ1bmsKKzY3ODg2IDAxYjgwNzUzNzkxNTY1MWJjMTQzYmQxMDMyMzcxNTQwMWMwOGE4ZTggcHkzaworNjc4ODcgZTg3YTI1NjExODhiNTMzNTIzMWZkNmViYWJjN2IzMmExYmZmOWIxMCBweTNrCis2Nzg4OCAxYWRmYWJjYmUwNzMxN2ZhZDVkZmZkYWRlZWI1NjBiMGFkNmJiODE0IHJlbGVhc2UzMC1tYWludAorNjc4ODkgM2FiMTAyZDljZjU2MDZhNzQ5NjgzMzZjMTkzYjExMWIyNjdhYjBjMyBsZWdhY3ktdHJ1bmsKKzY3ODkwIGFmNTZlM2YxNGViNzRiMzBkMzk3M2Q1YmRjZTEyMjA3ZWIxNDg3YTEgbGVnYWN5LXRydW5rCis2Nzg5MSA1Mjk0YjIxNGUxYmU5OGU3OTc5YmJkZjk4MTM1MzQ2MGM2ZjY5YmRmIGxlZ2FjeS10cnVuaworNjc4OTIgNGZkYTRmNTQ1Zjc5MDY5MDEzMzI1MTM1NmFkOTJkODJiODUzNGJiYyBsZWdhY3ktdHJ1bmsKKzY3ODkzIDExNjY3NjEwZTlmNTZhNzNlOGI2ODdmMDk5ZGVlMTY3YTY3MWY5OTggcmVsZWFzZTI2LW1haW50Cis2Nzg5NCA1MDJmNjFkMWZiYWY0YjUxZWMwM2RlZWI3OTg1YzVmOGYxNTNlOTI4IHB5M2staXNzdWUxNzE3Cis2Nzg5NSAxYmY3MjdlMmIwOGZkZTRlMGNhYjg2NTM4MDE2NjM0ODE5YjIwYmYzIGxlZ2FjeS10cnVuaworNjc4OTYgZTQ2NzUxMTNkMTBlZmE3MzljNWQ4YWMzMmUzMmI0ZWRiYTUzZTAzZiByZWxlYXNlMjYtbWFpbnQKKzY3ODk4IGRlN2JiYzRkMGIxZDE3MjVmMjI5MjEyMGU0Mzc5N2U0NGU2OTMyNjAgbGVnYWN5LXRydW5rCis2NzkwMiBkNzlmZGQ4NDIwZjM2ZWM4NWRiZjY0MmZhYjcwZDlhYTBkMjM5Y2ExIGxlZ2FjeS10cnVuaworNjc5MDMgYzNiOTc1OTlkN2ExOTc0ZDFmMjg4NWU5N2Q2MTQ4MTVkYTAzN2IxOCBweTNrCis2NzkwNCAwMzc5OWJiNDQ3NzIyODNkODEwZTYyMWUzOWVlZWViOWUzOGMwN2EyIGxlZ2FjeS10cnVuaworNjc5MDUgYmQzYzVkZTRjYzU0MWJmMDlkYjUxMzlhNjdlNDc3NTdiNTBlMmMyYiBsZWdhY3ktdHJ1bmsKKzY3OTA2IDI0MTAyN2IyNGI0NWQ5NDMwYWMxZTgxOTE0MTMxNTQ0NDNiOWQ5ZjUgbGVnYWN5LXRydW5rCis2NzkwNyA5NGMwNTQ2NjMwNmUyMWYzMjA2MjNiMDFkMGJmMjlmMjNhZTk1YWU3IGxlZ2FjeS10cnVuaworNjc5MDggNGJkZWNhYTRlY2FiMmI2YzQ1NjFkYzRlNjY1NjM2NTk3NmQ3NDNjMSBsZWdhY3ktdHJ1bmsKKzY3OTA5IDNhMjU5YTFlMWQ5YzVlMDkxOTg3YTFlZjk0NjNlOWQ2Y2U1MDU4M2YgcmVsZWFzZTI2LW1haW50Cis2NzkxMCBhYzg4YjM0MzIwNjYwYjBkOTVlMDg4Mjc3MDdhNzI4MDFlNTkxNWZlIHB5M2sKKzY3OTExIDM5NjUzMTRiYjkyMmMyNzY1YzU3YmM1MTAxMDAwOWRlOTdhMmI2M2QgcmVsZWFzZTMwLW1haW50Cis2NzkxMiAzMTMyZWQxMmVjMTAwNmMzN2JiYzIzZWRjZjUyYmJmNzg0YzVjNWUzIGxlZ2FjeS10cnVuaworNjc5MTMgMDVlMDEwNTE1YzRiYzU3MTAyMzBkYzQ2NDI3NTk1NDgzYTZjYjUyZSByZWxlYXNlMjUtbWFpbnQKKzY3OTE0IDBmOWE3ZWRiOGU1OGM4ODFlM2Q1NjUwMjI0NTAzOTk0ZTY4ZDI5MWMgcmVsZWFzZTI1LW1haW50Cis2NzkxNSBhYTQ1YTE3NzNmNmUwY2U0YTQ3ODdkZjVlMmU1Zjg0NmZkYjE0NGVlIHJlbGVhc2UyNS1tYWludAorNjc5MTYgYTBhNmQ5OTA5MzEyYWQ5YzFkODQ0YWY2NmU5YzkxOTMxYjkzODUyYSByZWxlYXNlMjUtbWFpbnQKKzY3OTE3IGM3NGZkNzUxODdkOTA0ODkxZTIwNDdmNzdiNTQzMjllY2VjZjM1MWEgcmVsZWFzZTI1LW1haW50Cis2NzkxOCA3OTI5NTY0MWZjZjBiZTVkN2M1MjZmMmZmZmMyMzhmNmFmZDFlNDVkIGxlZ2FjeS10cnVuaworNjc5MjAgODc1MTI4OGRkZDk2MWM2Mzg4YWJmYjE0NTE5ZTNiYmI0YzRjNzc0OSBsZWdhY3ktdHJ1bmsKKzY3OTIxIDEwMDk3YmQ2NTU2NGYwZGJkY2QwZmQxNjhlNmRlZWUyZDY5NzMzZTMgbGVnYWN5LXRydW5rCis2NzkyMyAwNjlkOTVkZWVhOTE1NGUyYTMyMDUxMGU5NGJiN2Y3MTRjNjYyNDY4IGxlZ2FjeS10cnVuaworNjc5MjQgZWZkNDAwM2VlOGVhNWFhMzQ1MDI3NjBhN2VhMjk2MDQ3MTAyOTQ5OCBsZWdhY3ktdHJ1bmsKKzY3OTI1IDUwMjc5MjYzODAxYjVjZmQyNGRlOGI5ZWE4NDI5NDcwZTM4YWVmNTggcHkzaworNjc5MjYgZjZjZDFhN2EzMWJiODY0Nzc1YmE0ODNlOTY0ZGZkNGMzN2UwODc0MCBsZWdhY3ktdHJ1bmsKKzY3OTI3IDExMmJhM2RmODUxZDJmZjYzOTBlYTJlNGE4MWMxODE1ODhlZWE0ZTIgbGVnYWN5LXRydW5rCis2NzkyOSAwYzg1MmMxMTZlMjM1ZGYwNWUxYmRjYmRhZTI1MDViNTg0OGJjMjRlIHB5M2sKKzY3OTMwIDkyYmMxNGU4YjM3ZTZhYzNkNDVlMDhhNGIwYzlhNTZiYjQ3ZWRhYmQgbGVnYWN5LXRydW5rCis2NzkzMSBjM2I0M2NiNjcwM2M2MmY2NjcwY2ZiZTU2ZThjMTY5NzQ5NGNmMWRkIHB5M2sKKzY3OTMyIGY4NTlkODI0MzY5ZWE5ZmIwNWVmZWRiMjg3OTJjMjIzMDhhNzhmMWEgbGVnYWN5LXRydW5rCis2NzkzMyBhZGI5YjU0N2M3ZmU4M2E1OGY1NzZhZTQ1NzMyMTg0NjA4Yzg5ZTdmIHB5M2sKKzY3OTM0IGY2YWU3Y2M5ZTJlODVkNzc2YTE0NDc1ZWIxMGE4Yjc1YTQ0ZDkwNzIgbGVnYWN5LXRydW5rCis2NzkzNSA2OTlmZGQ4MjE3ZjNiYTgyZDI5MmFkYTAyMWRiMjFkZGVkNjI4ZGQwIGxlZ2FjeS10cnVuaworNjc5MzYgZDI3MDI0NzU1NTkzYjhmNzkyMTBjM2I5YmMzMTY1ZWE4NmVmNmY5NSByZWxlYXNlMjYtbWFpbnQKKzY3OTM3IDMwM2FkNDVhOTY3ZmM1MWVlNzY1MTQwOWVkNGExNjc2YmRkNmUzNzIgcHkzaworNjc5MzggNjY1YzRhYzQ3MDczZTczZjg5ZGQ4MzIwMWZkOWQ2OGJiYWMzYzNjOCBweTNrCis2NzkzOSBkYjUwZGMwMDYxZWRlYjNiNWMwNjJkMDFjZTE3MzljNzRhOWUyYzJmIHB5M2sKKzY3OTQwIDJlNTMyNjJjNTVlYTY3ZWNhZWEyZGUzYWJkMjdhNjczOGQ3ZTc1ZjggcHkzaworNjc5NDEgMTEzNzUxYTg5OTBjOTQ4NzJkOWI3ZGE3NWIxZmE0NzhmMTQ5OWNjNCBweTNrCis2Nzk0MiA0MDhhOWZmNGY4YjJjODFlMzZiNmUzOTMzNTEyYmQ4ZmQ3YzllYzQ4IHB5M2sKKzY3OTQzIDdiMWQwY2VhOTg3MDY0ODI1MDdkZDAzMDdhNmI4MmUxOTVlZjNiZWUgbGVnYWN5LXRydW5rCis2Nzk0NCBmYjE1MGZjZjE2NWQwZmE2M2EyZjM0ZTE3ZmM2MWY4YTRiNmI2NWE4IHJlbGVhc2UyNi1tYWludAorNjc5NDUgNGJkZjllMzQyMjkxYTY0ZTVkZjllNzhmM2QzOTM5NDA1YWM2MjVjYSBweTNrCis2Nzk0NiA5NGY5OTZiYzY0YjNiZjg0ODZmMmI1NjcxM2EyNDlmODdiYWIwZWZjIGxlZ2FjeS10cnVuaworNjc5NDcgZmVjNzJjOWIyNzFkODk2NDUyNTRjYjZiMDVlNTI5MTBkZTk0MWE3OSBweTNrCis2Nzk0OCBhZDc0NDdhMTY1YmJmYWI1YzAyNjJmYWZkMTNiNzk1MDY1OTIzMGEwIHB5M2sKKzY3OTQ5IDFlMTIxNDQxMDM3NWFhZGVlMWNlNjMwZDRhOWI5NmNmZjVlMDljYjMgcHkzaworNjc5NTAgZDI4MWViZjhlYTMwZjQ2OTU0YzEyYThjOGJjNmE0ZWE3Nzc5NzY3MCBweTNrCis2Nzk1MSBlNjczNjMyZTE4ODU2NTNjMGZlNmE0ZTExY2U1NjFlY2QzN2U4ZTlkIHJlbGVhc2UyNi1tYWludAorNjc5NTIgNDFkN2Q4ZjA4NTJiMjg0NzljZDViZWE0ZGRkZDE0ODg5OGU4N2YyYyBsZWdhY3ktdHJ1bmsKKzY3OTUzIGUyYmJiYzA2ZDkyYzgyNjFmZjNhYzdiYTVhOWY1NTBhZTY2MjQ3YmMgbGVnYWN5LXRydW5rCis2Nzk1NCA5M2RhOWYxNGU1YjU4YmRhNWYyMjkzMzMzMjc0MzQwYzVkZTY1Y2FiIGxlZ2FjeS10cnVuaworNjc5NTUgYWZmNmU5ZGRkZDlmODI5ZDY1ZTRlYmYzYmFjOTYzZDEwMjFlNzFiYSBsZWdhY3ktdHJ1bmsKKzY3OTU2IDM5OTFmMzdlYmNhMzFjY2M3NzEzZDYyMDZlYjhlZDFjMDk4NTg0ZTEgcHkzaworNjc5NTcgNzViNGUzMjM0MGE4YWIxMGIxYmNiNjA1ZjU1NDdjNDkyZmRlY2UwZSBsZWdhY3ktdHJ1bmsKKzY3OTU4IDFiODg5MzJkZWZkYjI4YjRkNzk5YjJlNzhiN2M5ZjFlNGQzMWViZjEgbGVnYWN5LXRydW5rCis2Nzk1OSBiY2RmZGMzNjk1NzA4NTBhMjNhN2ZiMTE0ZmE1YzQxYzc4NjQ1NWYzIHB5M2sKKzY3OTYwIGEyOGY5ZTc1MGI2NDgzM2VmYzkzZWJmNjk5ZGY2MmUxNjI4ZDM1ZmEgbGVnYWN5LXRydW5rCis2Nzk2MSBlOWEwZGU0OGI3NDc4NGQwNTAzNzE0ODExNTg2NjEwZDkwOWNiOTM1IGxlZ2FjeS10cnVuaworNjc5NjIgMDI0MzBlNDRkNTBlY2RlZWJkMWZhZTA5ZGFhZWQ5MDE1OTE5ODdmYiBweTNrCis2Nzk2MyBmYmZhMWQ2NzI0ZGU4YzIxYTAyMDBkNmUwY2YzNmI4MDllY2YzNWE2IGxlZ2FjeS10cnVuaworNjc5NjQgMWVmYTEzMDRkZmIzMjUwOTVhZjI1MTQ1NGRhZTNiM2I2M2U3MzRiNiBweTNrCis2Nzk2NSBhOWU1YWM0ZjA5MWNkNWRjM2Y2N2E4YWUwYTA0ZDJjZDkwNWIxODA3IGxlZ2FjeS10cnVuaworNjc5NjYgYTY0OTg4NGM3OWE4MTQ2OGE2YmIzYmNjNTQyNDMwYTBhYmEyNDA2ZiBweTNrCis2Nzk2NyBjYjM1MjRiNjQwN2Y2ZTM4Y2VmNTk1NzI1OGRhZDcwYjhlNzkyYzQyIGxlZ2FjeS10cnVuaworNjc5NjggZWE4N2NjMDY4YzU2ZjQ4YTA5NTk1OWNmODQ1ZGY1YjliMTRkYzUyMSBweTNrCis2Nzk2OSA4YmZiNDY2NDE0YWM5YjU3NDY3NzQwMWVjNWYyODExNDEyM2E5ODAzIHB5M2sKKzY3OTcwIDAyN2E2ZjNhYzg3NDc3YzVlYzk0MzY2NDIxNDE5NzQxY2RmMDYzYWYgbGVnYWN5LXRydW5rCis2Nzk3MSA1ZWMzZTNkNTRhYTY1YWYyNjM4MDRmZTUyMTU1NzgyNzU0OTUwOGEyIGxlZ2FjeS10cnVuaworNjc5NzIgYTRhODlkM2U0MWFmNTljNGI1NGNlYTE4N2E3OGIyOTZjYzcyZTAzOSBweTNrCis2Nzk3MyBkYjBkZGNlMjhkMGY4MjczNGZhNmQ2ODk0MGZkZWI3ZmVkMzU5YWMzIGxlZ2FjeS10cnVuaworNjc5NzQgN2EwMTE2ODBlMTUxYmEyZTIzZTIxN2YxYzAzMTI4OTQ3ZTJhMTNkNSBweTNrCis2Nzk3NSA0NDIwNzhmMDc5YWEwMjUxMWE3YzI0YTg4Y2UxNmU5YzViM2RmYmExIHJlbGVhc2UzMC1tYWludAorNjc5NzYgOWRiM2QzZDM5Y2MzZTc1NzVhOTJiYWMxNDE1ZGU5NTg4MjAyNGQ1MCBsZWdhY3ktdHJ1bmsKKzY3OTc3IDFlMGQyMDVmZThkNzBlNWY5ZjFkNjEzMGVjNjMwYWJhZmE3OTUyNzEgcmVsZWFzZTI2LW1haW50Cis2Nzk3OCA2YTA1NjZhNTEyMTg0YmQ1NTc5ZmM0M2NlMGRmZDAxODcwYmJkMzkxIGxlZ2FjeS10cnVuaworNjc5NzkgMzQxYmY3NmViNmViNzJiNTI4NjVkNDM0YWZjYzZmMjAyNWUyZDI2YiBsZWdhY3ktdHJ1bmsKKzY3OTgwIDBlYTRiZDU5YTQwZDY2YzcxMzUxNjliNGUwYjA2NjhmZjc3NzFjNWMgbGVnYWN5LXRydW5rCis2Nzk4MSBlNzcyMDYxMmE3OTY5ODU5MDkyZjMzNWM1YzQ3NDdmNDU4MzMzNjhiIHB5M2sKKzY3OTgyIDY0MWQyNzkwM2JjNTc0OWFlMGY3YjI3MWZiOTU3YmZmOTQ5ZjQ5ZTggbGVnYWN5LXRydW5rCis2Nzk4MyBiZGVkNWJkNjBlOTU0ZGE2NTM1Y2IyYTI2NTQ0Yzk1YjE0ZTYyNTk4IHB5M2sKKzY3OTg1IDdjNzYyNGEzM2Y4YjMyMzM0NGI5MTA0YWFiYTkzOTI3OGE0MDZlMjggbGVnYWN5LXRydW5rCis2Nzk4NiAzNzU1NDNiOTgyNDQ2MDI5ZWQzYzc0ZDlkZjk5YTNmMjU2NjBmMzA1IHB5M2staXNzdWUxNzE3Cis2Nzk4NyA3M2RjYjhiNDIxZjgwZDE5NWM2YTI3ODMzMDBhY2U5Y2Q1MWVjZTQzIHJlbGVhc2UyNi1tYWludAorNjc5ODggMmYxNWQ1OWRmYjgwNDg4MDE4YWJlOWIzZGUzMTIzN2NjZDcwODA5MiBsZWdhY3ktdHJ1bmsKKzY3OTg5IDQ1N2VjODg0YWYwNDVjMzVlOWQ2OWU5MWM0MDc2ZWZjODk3MzA5OGIgcmVsZWFzZTI2LW1haW50Cis2Nzk5MCBlMmViYWMwNjI0MzIyMTNjZTQyZjg1MTJjYjc1YzliMzdmNDEyZmU1IGxlZ2FjeS10cnVuaworNjc5OTUgNmZiN2Q4ZjQyNzNmMmIwNzUwMjExYTI3ZGIyYTBmYzU0YmJjMGM3ZiBsZWdhY3ktdHJ1bmsKKzY4MDA2IDJhZDY4ZGQwYWM5MGY3YTQyOTc0YjZkMjQ1ZTk4MWNkNWJiZDUxZGEgbGVnYWN5LXRydW5rCis2ODAwNyA4N2Y1NDMyYjllZGM4ZDlhNTFlNzIwMGVlNmE3ZGRmMWEzOTFjYzZkIHJlbGVhc2UyNi1tYWludAorNjgwMDggYjk1ZGRlOTU5OTZhOWIzYTE0N2RiYmRjYWMyNGI0NWVlZmNiMGI1NCBweTNrCis2ODAwOSA4N2Y4NmNjZTQzYjE1MzViZmJhZGFhMTkyYmNjZWIzMjUzODZkZmY1IHJlbGVhc2UzMC1tYWludAorNjgwMTAgMzgzNTdlMWQyMWU2YWI5ODI5ZWExMTQxZTU4MWM4Y2RhMmMxNjIyZiBsZWdhY3ktdHJ1bmsKKzY4MDExIGI5ZWZkZDhmOGIzMDkxZWZjODc0MjM3ZDRlYzU3MzM2OGJjNzg0MmYgcmVsZWFzZTI2LW1haW50Cis2ODAxMiA5ZjgzNjMwODg1MzZhNzI3ODE1NmYwNTk3OTgyODEwMzY3MTJmMzM4IHB5M2sKKzY4MDEzIGExYWJmZTAyNzA3NGM5OTRlNmU0YzY2MjEzOGY2Yzc4ZjI4NjMyMDAgcmVsZWFzZTMwLW1haW50Cis2ODAxNCA4OWEzZjVjOWI1MDMyMjRjZWE3MTA1MDhjYzJlOTE1NDU1ZmQ5MTUxIGxlZ2FjeS10cnVuaworNjgwMTUgNzFlNzMyYzkzMjM0NDVhMjBkMzMzMzRjZjA2MWI0YWE3Y2M4NmIxMSBweTNrCis2ODAxNiA3MGRlMmUwOTFlNTgyNmMwZGY5YjFiNmJiYmQyYzg1ZTk0ODYyZmNlIGxlZ2FjeS10cnVuaworNjgwMTcgMThkODE3YTdhMzlmYTlmOGFkZTNkNDAyNDllMjMxMTdkMzBkNTVmMCBweTNrCis2ODAxOCAzNGM3M2E0NjNiMzU1YThiMTIxNjFjYWJlYTM0NzJjYzRhMDIwYzAxIGxlZ2FjeS10cnVuaworNjgwMTkgMjkzMmIzN2YxZjA0NDIwNWNlZGFjZjNmNGY3YTk5OGI3MjFiZGRhOSByZWxlYXNlMjYtbWFpbnQKKzY4MDIwIDQ0ZWE5ZWFjOGM1YjUyNTIyYzRiMGRlODA0NGE3Y2Y3ZTYwMTJhMmIgcHkzaworNjgwMjEgN2Y1YWE3ZTU0YWQ1YTEyNDI3M2FmY2E4NjA3NjcyNTljYmMyZDY0OSByZWxlYXNlMzAtbWFpbnQKKzY4MDIyIGY3YTNmMTQxNjFlMTc1NzdjZmU1MjE2N2RhOTE0NzFhMzFmOWZjNWUgcHkzaworNjgwMjMgYWUxZTExNDIzNzI5NWQ5ZmYxYzE1MjdiNDBmMjVjNzZlMmEwZWNkNCByZWxlYXNlMzAtbWFpbnQKKzY4MDI3IDFhZWE4M2UwYWU5ZjAyZWJjOTM3NWVmYTBkNzY5MGRhYmQyYjg0MWMgcHkzaworNjgwMzAgYmMxYjM3NDM5NWY0MDAwMWE5MmQ4YWFkNDE0ODYxM2JiOTQwNDFmYSBsZWdhY3ktdHJ1bmsKKzY4MDMxIDNkNDQ3YjdiMTM2MzRmZjM0YzBiOWM3ZGUzNDFjYTllODVhZTNjZGIgcmVsZWFzZTMwLW1haW50Cis2ODAzMyBmMTQ2MmQ5MjRhOWMyMWVlOTgwNGRhNmIwYTI5NzgxYzAzNjQ4NTQwIGxlZ2FjeS10cnVuaworNjgwMzUgYWQyMGI2OWIxOGI3MGIxODI3MTU2NmE4ZWJiNTM0NTEzMzljODM5YiByZWxlYXNlMjYtbWFpbnQKKzY4MDM2IDljMDZmYjdkMTI2MDJlYzdkNmNkZWI2ODAxYTY2MGJiNGU4ZGU2ZjcgcHkzaworNjgwMzcgOGZhNjExYmJiMDc3ZmY3MTA5Mjc1OWJkNThjNjNmMTgxOTk4MTRhZCByZWxlYXNlMzAtbWFpbnQKKzY4MDUxIDdhYWVmNGQ1Zjg4MGU3ODYzZmQ2MDYyZTJlMzFmZWRjZDRlMWU0ZjQgbGVnYWN5LXRydW5rCis2ODA1MiBlNzgyZjk3MTE2ZGMxY2YxMjgyMTQ1ZWFiZGJlMmViNWQ0NTk0NGYxIHJlbGVhc2UyNi1tYWludAorNjgwNTcgZjczZmM0NDE3NDRmMDY1N2Q4MDczMzhkYjExZTllZTg2M2I0NjhkYSBsZWdhY3ktdHJ1bmsKKzY4MDU4IDYxOGQzMzk3Zjg4OGNlNTQzMjUxZjgyOGNmMmI2NGJlNGE2NDFjZTUgcHkzaworNjgwNTkgMjhhZWNiZjFlODMyYjA1ZjY3OTRkYWM3ZTFjNWU5YTZjNDNmYTJlMSBweTNrCis2ODA2MCA0M2FhY2JlNjQ3Y2IzZjQ5YTU3ZTA1MjFlZjY0N2FiZDE3NjEwYTE3IHJlbGVhc2UzMC1tYWludAorNjgwNjEgNzI5OTk5OTI5ZWY0YjViZDZhYjFkMTUzMDRjYTE0ZjM1NTczYmUyNyBsZWdhY3ktdHJ1bmsKKzY4MDYyIDExNTRkMDI0NWI2NjEzOGI0ZDNkMzc1ZDUxZmNkYTdkZjI0OWU1NzMgcHkzaworNjgwNjQgYWZhYjMxOTI1MmU3OTIzZGY0MThkMGI5ZjNhY2ExYWRhYzQwY2FjYSBweTNrCis2ODA3NCBmYTZmYzU1MjZmNzFmMTIzNDE2NDY5NjA2M2RjMzQ1OGNkNTkwMmFjIHB5M2sKKzY4MDc1IDJjODQ0Y2ZjMzc1YTMxYzIyODZlMzgyMjllOWFiM2FkNjhjYmNmMjUgcHkzaworNjgwNzYgYzMzOGJlZTIxMTczOTcwNTY3MDZlMGViNzhjOWRiNGM1NmEwNDEyZiByZWxlYXNlMzAtbWFpbnQKKzY4MDgwIDc0MzE2MzhlN2RkOGZhY2M0NWY5YjNjZGNmYjVjZDU2NmM2OGExMjQgcmVsZWFzZTMwLW1haW50Cis2ODA4MSA4YTQ4MzQzOWNiNTVmZWIzZmU5M2NmM2YwNTcyNTkzYzUyYzliMTI1IGxlZ2FjeS10cnVuaworNjgwODIgZDg5NzVmMjRhZjhiNThkZjljZWRlZjdkZjQzZjZiYjg5Y2RjNzlhNSByZWxlYXNlMjYtbWFpbnQKKzY4MDgzIDdkNTUwY2I1MzY5ZTA1YWU2YzdhMTc0NjdiOGEwZDhlMjhjOGUxZTIgcHkzaworNjgwODQgM2UxOGI0NTlkNGM4ODQxZGU3OTAzODk3NTExOTA0N2RlNmMwODY1YyByZWxlYXNlMzAtbWFpbnQKKzY4MDg5IGI3NWQ3NjkxNTFiYWE4ZjBhMTE0OWRhYThjNDMxYzc0NzYzZDJlZTIgbGVnYWN5LXRydW5rCis2ODA5MCAwMmZjZDljNWZlZmJmOTgwZmMwMTY4YmJlYTZjNjgxNGFiMTQ1N2JlIHB5M2sKKzY4MDkxIGVmNjQ5Y2U5Yjc4MzlhMDc0N2M0MTA4Nzc2MzllNTdjYTkyNjcwNTUgcHkzaworNjgwOTIgMDZmNGMzN2Q2NWY5Njg5YWE1YzIzODBmOTBlMmZlNjU0Y2MyYmViZCBsZWdhY3ktdHJ1bmsKKzY4MDkzIDE1YTY2MjYwODVmNGE1MTNlZTQyNGM3OGU1YzgyYWVhM2M1MTJjYjMgcHkzaworNjgwOTQgNmQxNjNjMmFlZjU2YjhkYWFhMjRlZDQ4ZGFlYjZmN2JhNWYwM2Q1OSBweTNrCis2ODA5NSAzODUzYzE1NTMyYzRlZGUzM2RkNjlhNzU3ZjIxYzVmMjBjOGNkMzA3IHJlbGVhc2UyNi1tYWludAorNjgwOTYgMDIyZDk5OWM0ZDFhOTRiMTdiNGFjODFmMGVkZjc3Yjk2ZWUzMGY0YiByZWxlYXNlMzAtbWFpbnQKKzY4MDk3IDljMmFjNzg2NjZkNDU3ODMyNTBmZjYzYmNmYzAwMGNiYzc4NTczNjggbGVnYWN5LXRydW5rCis2ODA5OCBkY2JlOTliMGNlODMyMjc3MTM2Y2E1MjUyNDY4OTAyODA0MzE4YWRkIHJlbGVhc2UyNi1tYWludAorNjgwOTkgMWM1ZDk0MjEyOGI2ODgwNTdmZjk1ZjUzNGY4YWU3OThiZDczMDY1MSBsZWdhY3ktdHJ1bmsKKzY4MTAwIGM0MzIyNjg3NWJkNDEwNzliMjU5ODBiNjRkNmEzY2YzY2ZhM2ExYjYgcmVsZWFzZTI2LW1haW50Cis2ODEwMSA3ZTFhOTViMjZhNWNhNmNiZDQyOTdiNjVmYTQ5OTAyM2Q2NDljYjg0IHB5M2sKKzY4MTAyIDVjYzA3M2Q2NjFmN2I2ZDMzYjJjM2VjNTQwNmQ2ODhhMjUxZmRmZWEgcmVsZWFzZTMwLW1haW50Cis2ODEwMyA1MDc0ODMwZTliOTk0NjQxZjE1NWZhODk1YmVmOWFjY2FiMWQxYzNlIHB5M2sKKzY4MTA0IDcyMzlmYmNkY2Q0ZmJhNjViMWNhMzRjYTM5ZTY5NzMxMWQyZWU1Y2UgcmVsZWFzZTMwLW1haW50Cis2ODExMiAxM2RhZjk5ZGIwMzU3NzBhNDI5ODcxYzQzMzY3MGY5NGRmZWMyNjZkIGxlZ2FjeS10cnVuaworNjgxMTMgYmY2ZjJkZmMzMTBiYTE0ZDk5MzU2YTEwYWM3MTk0YjIyODUxYzgxZiBweTNrCis2ODExNCBkMzJhNjY5Zjk2ZGE5OTNlMDkzZTU4OGQyZGUzYmEwZTU1MDBlMTYyIHJlbGVhc2UzMC1tYWludAorNjgxMTUgOTJhZDk2NTQ0MjUyNTgwNGE3ZGM2Nzc3YzUwMDU2ZDExMWU4Nzk3NCBsZWdhY3ktdHJ1bmsKKzY4MTE2IDU5ZjNiZjJhMzI4ZDQ0ODQyYzZjMjk5M2YwNjg5NzFlNzUxYzYzZTkgbGVnYWN5LXRydW5rCis2ODExNyA5MjdmNWQ5MDg3ZjVhMTVlNWE0OTRhYzlkYWYzODZjZmM2OTVmZTllIGxlZ2FjeS10cnVuaworNjgxMTggMzk0ZTM4OWU4OWYwOWE2ZWYzOGEwYjRhNTg2MjMwNjRjYjQyYTExNSBsZWdhY3ktdHJ1bmsKKzY4MTE5IDIwZWRiN2U1MTU5ZjRkYzJmOTM1MWRhZmQwYzBiZDkwZDczMzAxOTEgbGVnYWN5LXRydW5rCis2ODEyMCBkMWU1MzZjNmZhMmNiMjA1ZjRhZGUzYTcwODAxYTMxZmYyZjM1NjAxIGxlZ2FjeS10cnVuaworNjgxMjEgNjgzYjNmOGIxMmI0NGEyMzc4OWYyYzRiNzE4NDliYjk1NDdiODhjNSBsZWdhY3ktdHJ1bmsKKzY4MTIzIGYzNTQwM2EwMTFiOTRjNThhOWNiNjU4YzAxYTNlNjc2ZGExOGU3NDEgbGVnYWN5LXRydW5rCis2ODEyNCAxYzRlNjc4YTFkM2IxZWRmYjEzNzJiMWNjYTlkMWVjOTVjY2E4MWExIGxlZ2FjeS10cnVuaworNjgxMjUgMWI4MmYyYjgyZmQ5MjExYWQ1MjZmM2Y4ZThmYTkzNzU0NGIyODljMiBsZWdhY3ktdHJ1bmsKKzY4MTI2IGU1ZGJmMzhiMWRhYzFhNzFjODllZGZhNDExZDRhNDFjOTQ0NzAyYWQgbGVnYWN5LXRydW5rCis2ODEyNyAzNmU5NzkzZWJiNWQ0ODNjNDgwZTIzM2M5NThkOTc4ODk5YTNkOTkxIGxlZ2FjeS10cnVuaworNjgxMjggMDk5YjQ4ZmU5MjJhMGRmMjY3ZDM5ODQ0OGZjOGNmNGM2ZmNkYzZmYiBsZWdhY3ktdHJ1bmsKKzY4MTI5IGNhYjg1MDFmOGFlNmIzM2IyOTVkMmZjMGI5ZDRlMGNlOTE2NWM2OTcgcHkzaworNjgxMzAgODQ2M2ZmODYxYTI2ZDg0ZDcyOTljZmRhMDYwMjJjM2U1MzQ5MWI4MiByZWxlYXNlMzAtbWFpbnQKKzY4MTMxIDQzNmU2MzE3YzdiNGI5MTM0MDMzZDFjMjUwNTA5M2Y3MDk4MjQwZmMgcmVsZWFzZTI2LW1haW50Cis2ODEzMiA0ZmJmNTJjOTliNmVkNDM0ZGIyNDBjN2EwOTU0ODA1N2MyMzk4NDM1IHB5M2sKKzY4MTMzIGM3YTQ1Y2JhMDc4NWQ2Y2E1NmIzMzIxMjM2OTBhZjMxNmVhMjY2MGEgbGVnYWN5LXRydW5rCis2ODEzNCAwZTViMjRhZGU0YTIxNzZjZTBjNTE1YzRiZWM1ODYwNDM2MmZjM2RlIGxlZ2FjeS10cnVuaworNjgxMzUgZGYzOTIzYzM2ZWM1OWY3ZDIzOGY3YWM4ODRlMDhlOWQyYmEwOGZlMCByZWxlYXNlMjYtbWFpbnQKKzY4MTM2IDA2ZTFmN2Q5ZGE4M2RlNTQyYWQ5NGE0NjZiZGQ4Njg3MzI3NzhhYzggcHkzaworNjgxMzcgOWRkMmUyNTdhYzdjMjJlNWY0YjQ3MzI3ODM4YjJlMDA5NThmMDA4YSBweTNrCis2ODEzOCBiYjMxMjIzYWJmYWE4YzVhZDYyZDI5NTg0YmE4YWU5ZDBmOTJkN2NlIHB5M2sKKzY4MTM5IDlmNjA0ZDMzYTQyZjcwYmU4ZTA0YTQxNmU0MmUwOWNiNGE0NzExNWEgcHkzaworNjgxNDAgMmIxM2QyMDJhNDdkNzM4NmFjYTQ0MDI0NDQzODhjNzAwNjllMmUxMyBweTNrCis2ODE0MSBhZDRlNTJkMTU0ZjRhMjk4ODM2ZDc1N2VmNDIwMGY3MTY3YWQyYjg3IGxlZ2FjeS10cnVuaworNjgxNDIgNWM2ZmVkNzNiNmE5MTgyYTk4NThhMWE4OTdjYmQ3ZDVhMTgxNGU5MCBsZWdhY3ktdHJ1bmsKKzY4MTQzIDJkZWJiZTY0NDVlMGZkOTFiY2EyMmZlNDYzMGU4Mzc0MWYxOTA0NzIgcHkzaworNjgxNDQgNDgwMTk2OWRhZGVlM2NmZDdmMmRlNjRhY2UzMWFkZGUxYzU1Yzk4NyByZWxlYXNlMzAtbWFpbnQKKzY4MTQ1IDYwOTdmOTdiMGQyMjA3M2JhMGUzMjA5ZTY4M2M4ZDUwNGE0MWI3MjMgbGVnYWN5LXRydW5rCis2ODE0NiA0MGZhODY4OTgxY2NkOGY3ZTZmMGJlMzk4N2UxMzU1YzZiMmQxMDU4IGxlZ2FjeS10cnVuaworNjgxNDcgY2IzNDc5Y2E4MWFjY2FlYTg0OGY0ZGRmNzNmYmIxOTViNTZiNjNiNiByZWxlYXNlMjYtbWFpbnQKKzY4MTQ4IGJmMTczNGM2YjZlZDIyM2NmMWQxYzkyMTJmZDVkM2UzYWUxNDkzMjIgbGVnYWN5LXRydW5rCis2ODE0OSA4NGNiMDFjNTY0OGIxNzRkMDdkYjM1NmI1YmQwMDRkODMyOTgyMDEzIGxlZ2FjeS10cnVuaworNjgxNTAgMjUzZTFjNzNmZGU2OWNhZWI3ODQyMGEyMTk3OGQ0MjU1MGM0ZGEyYSBsZWdhY3ktdHJ1bmsKKzY4MTUxIDVjNGY2MzljOTIwMDg5ODYyYzJmMWYwYzY1NTIwYjhhZjQ3MTU1MGEgcmVsZWFzZTI2LW1haW50Cis2ODE1MiAwOGRiYTdmOTcwMzAxOWE4OTAyZTdlY2ExOGZkNTE1ZWQxZmJkNzEyIHB5M2sKKzY4MTUzIDJmMDFmOTk1ZjcwNDEyYjcwMjNkNWIxOTEzZDBiMjg4NTkzODgzODkgbGVnYWN5LXRydW5rCis2ODE1NCAzNGQ1MWMzMGE0ZjRiZjFjOTIzNGRlZWFjMmZjNGY3NTAzZjM4MjYyIHJlbGVhc2UyNi1tYWludAorNjgxNTUgOTRjZmJmOTNkNzFiNGM2MTI1YTYxOGY2OGIxM2RlZjEyNGJmZWY5OCBweTNrCis2ODE1NiAxZGNiMTkyMTZiNjRkNjIwYTgwYWM0ZWMwYjNiODA1ZTI3MjlkNGUxIGxlZ2FjeS10cnVuaworNjgxNTcgZTdhZWU3Yzk5ZDNiNzdjMGE3YjE4ZTRjN2E4MTFlZDcyMjBmMDA4NSBweTNrLWlzc3VlMTcxNworNjgxNTggNzUzOTU0ZDE2ZWQyMTYwMTJjNDlkMzA3YjNhOWMwZjc2NmExMjM4OCBsZWdhY3ktdHJ1bmsKKzY4MTU5IDI2OTZhMzliY2YwYjA1Nzk4YzJkMjY1ZjU3MjE3YTU1YWY0ZmY5ZTcgbGVnYWN5LXRydW5rCis2ODE2MCBjNTBiMTE4ZWFmMzQ3Nzk0YjRmMjRmOWU5NDIwNWQ1ZDYwNTIyMzQ2IGxlZ2FjeS10cnVuaworNjgxNjEgMzU1YmMxMjJjMTQ1NjVjZTIwY2RjOTg5NWRkMDQwMzYyNjY2ZDBiMSBsZWdhY3ktdHJ1bmsKKzY4MTYyIGRlN2QxNjdiOWZmMTBkYWYyYmVmMzBhNzc0NTZmN2Y3M2E5OGU2NDcgbGVnYWN5LXRydW5rCis2ODE2MyA2OWEyNDBlNWYwMWRjZmY2ZjM4NGI1M2RiMmMwYzk5YTI1YjhlZmFmIGxlZ2FjeS10cnVuaworNjgxNjQgZTBjNjZiYmI0OGRhODNlYzc1MTQ3ODFiZmMyYjFmZGQ2YTdjMWIxZCByZWxlYXNlMzAtbWFpbnQKKzY4MTY1IDQwMGNmY2FhOGQ0NmVlODVjMTFjYjYxYjA4YTVjZWIwNjZjOThlNGYgcHkzaworNjgxNjYgY2E4NmFiZTE1OTI2MzlhNzZlMGJhNWU5YjQ3M2Q1ZTJhYzgwNjFjNiBsZWdhY3ktdHJ1bmsKKzY4MTY3IGZmMTA2NDUzMjU0YTFkZDlmZTkwNWI1ODU0MGIzNmFmMjMyZTAyZDcgbGVnYWN5LXRydW5rCis2ODE2OCBhNTQ5YzkyNzA3NzY3M2VhZGU5NTRlNzkxODJlZGI3YTdjOWYyYTZjIHB5M2sKKzY4MTY5IGFiYmNlNDhiOWFlNDBhNjlhY2M2ZTQyNDFiYzk0ZDBhMjI0NDM2M2YgcHkzaworNjgxNzAgYmNmNDZmMzNiZDkwNTE2ZDczYWE3YTQ5YjAwMTRkODJlOGQ1MDc2MyBweTNrCis2ODE3MSA4ZWRkZDY2NWU5YjlmYjZhZmVkZGM0YmIxMWJlNmE4M2IyY2Y4OTIwIGxlZ2FjeS10cnVuaworNjgxNzIgNjM2YTBhYzk2MDdiN2EzYTQwY2EwZmNiZjMwNDQxYmMxMGU2MDI4MCBsZWdhY3ktdHJ1bmsKKzY4MTczIDEyOTdiYjcxZGM2NGIxNmMyMDgyZTZiN2NhZTAwYTNhOWRhOTE3YmEgbGVnYWN5LXRydW5rCis2ODE3NCA2OGM5ZjhiNjU4NGQ0YjFlZTFlMmZmMDFhMGY4YTdlMTRjMjBmZmE1IGxlZ2FjeS10cnVuaworNjgxNzUgMjAzODRlYmZjNzE2ZjJlMGE5ZjRhOTBiNmM3ZmVmZDMzZGNlNDRmYyBweTNrCis2ODE3NiAwNTg4YTk4NzkzY2QwODc1ZjBlNDVkMWY4ZTMwYWY4NmJlYTNhZTY0IGxlZ2FjeS10cnVuaworNjgxNzcgZWIzNThkYWUwY2NhZDhhNWE1N2VjN2RlMzZjOGJmMTNlOTRkOGRjZiByZWxlYXNlMjYtbWFpbnQKKzY4MTc4IDBjOTcyODM3MmQwOThhZjRjZTRmODk5MThiMTM5MjI5NjY5M2MzYjUgcHkzaworNjgxNzkgMDA1MmQyM2QzOWY2MTVjNzYzZTczNWM0ZTYyYTgyODM0NTY3ZGZiNSBsZWdhY3ktdHJ1bmsKKzY4MTgwIDBlMzhjNzBiOTc3NmVhN2FjMWRiYWRjNTY5NTU4MzE0Zjc3YjU2NWUgcmVsZWFzZTMwLW1haW50Cis2ODE4MSA5MzAxMzM5NzlkN2EyOTFhZDAxYzUyM2U0OGZlNDEzZWUwMDA2NWQ0IHB5M2sKKzY4MTgyIGFkOTIxMDRkNTA2MDdlN2E3MzNjOTVjZmU1NjRlZGUyMmMwMTk0Y2YgbGVnYWN5LXRydW5rCis2ODE4MyA5NGZmM2RlMWUxYTQ1YmViZmZiNWM1NzhkZDcwZWQ1ODE0NDkyZTA4IHJlbGVhc2UyNi1tYWludAorNjgxODQgNWUxNjQ5ODhiZDUxYWVhZWVkMzgwMTdhNzUwNjkxMmE0NTNmYzMxYSBweTNrCis2ODE4NSBkMzY3YmU1NDNmNmNlOGFmNDA3NjRiMTlkZTc1NmJjODdhNjFjZDA0IHJlbGVhc2UzMC1tYWludAorNjgxODYgNDQwYWRkNTE2Y2YxZTFiNzEzZmU4MDY5OGJmZWRlMjg3ZGNjYzE1MSByZWxlYXNlMjYtbWFpbnQKKzY4MTg3IDM2ZDAyNzAzNzgxMjMzMzI3ODhmYmIyMjNkNmQ1OGFjM2FlOTA0NjUgcmVsZWFzZTI2LW1haW50Cis2ODE4OCBjNDVmZWQwM2Y3NDc1YzJkMmJhYzVjZTQ2NmExZWIzMThmZGNkNDIzIHJlbGVhc2UyNi1tYWludAorNjgxODkgZmM5NGM5YzQyYzZjODAwMDYzNWE1NWZjNDZhYTcyMGQ4YTQ1YTFmYiByZWxlYXNlMzAtbWFpbnQKKzY4MTkwIGZhNTVmYTQ1NTZmMDk5MTRjZGE0MWVjNDY3MzdiMGRlZDFiMTNmMjkgcmVsZWFzZTI2LW1haW50Cis2ODE5MSBjMjcyZmNhYzI0YTRhMjViNWNhNzU0ZDhmZjc0MjcyMDE1YjA3NWI2IGxlZ2FjeS10cnVuaworNjgxOTIgZjJhNWQ3ODI4YjgzZTcyMDBiNjQ2ODIyYTQ2MzY4ZTk2YTU5MGY3NSByZWxlYXNlMjYtbWFpbnQKKzY4MTkzIDczODg2NjA5MjZhYTE0OWViYWIxYmFlMmM3YzljYmY0YzU3MGNlNjggcHkzaworNjgxOTQgMTM0ZDE3M2I5MzUwYjJmZTQ1M2QxODNiYWYyZjc1ZjRmNjc0MGI2OCByZWxlYXNlMzAtbWFpbnQKKzY4MTk1IDQyN2Q4Yjc2NWE2YTAwYjAwNjc2Nzc4MDkwNzk1N2E0YzIyZDUxZGIgbGVnYWN5LXRydW5rCis2ODE5NiBhNzg4ZDRmMTBiOTc4M2NlOTNiYWZiMmY1ZWEzOWJhNDYyYWZlODE2IGxlZ2FjeS10cnVuaworNjgxOTcgYjk5MWZlNWY2MzdhODVmZWFiOGFhMDA3ZTQxOWUwOGQ1MDk5ZWMwMyBsZWdhY3ktdHJ1bmsKKzY4MTk4IDhlNzcyODY3NmY3ZTg1YWFlYmIxZDg0ODIzYTA0NWJkYjg4MjRhMDIgcHkzaworNjgxOTkgYTkyZjcxZDQ2ZGM0YzFjMzI5MDZjM2IxMDQ5MjllNGY5MWI2MDJmZCByZWxlYXNlMjYtbWFpbnQKKzY4MjAwIDI5ZjY0MDc3YzQyZjg4ZDFiMGQ1NDVkYTk0OTU5Nzg5YWMxOTc4YTQgcHkzaworNjgyMDEgNzkzNDcyM2Y3ZGM0ZmJkYTE1MjU1MzhiZjk2ODY4OWI4ZTg2YTE2ZSByZWxlYXNlMzAtbWFpbnQKKzY4MjAyIDI2MDQ1ZWQwYzI2ZTJjY2UxZDZmNWIxYzVmZGIyOTI3MDhmNjkxY2UgcmVsZWFzZTMwLW1haW50Cis2ODIwMyBlY2YxYmI3YmFlYjFlYzc2Zjg5ODgwNTUwNTY0OGZjMDMzODg0NWExIGxlZ2FjeS10cnVuaworNjgyMDQgNGQxYTY4YmQ4MDc2YzBjNmUzNDY1ZjYyN2UzMjlmMWY5NjllZThkMSBweTNrCis2ODIwNSAyNTNmOWU2ZTllMDc5OTc1NDRhOTU0MTUwYTAyZGFkNGNjZTA3NDgzIHB5M2sKKzY4MjA2IDEwY2M1M2U3MWIyMTIzZDU0NzlkOGYwY2QzNmZjNzY0Y2UwYmVlNWIgcHkzaworNjgyMDcgOWE0MjVlYjBmN2VhNTRhYjRlNDgwY2RkM2MyMzdmOTNiMDYxNGY1ZiByZWxlYXNlMzAtbWFpbnQKKzY4MjA4IDdhNmUzYmM2MGJhNmRlMTI3YmNlZTk0NGIxMzE2M2Y4Mzk0MDY2MzggbGVnYWN5LXRydW5rCis2ODIwOSBlNzhkY2Q4N2Q3MzNmNmY3YjI0YWIxYTY1OWU2NTA5NDRlYmNlZmRmIGxlZ2FjeS10cnVuaworNjgyMTAgYWE0Njc4N2I5M2NjNjUxYThkZjIzNzI3YWIxMGM0ZTFjN2EzNGM0ZiBsZWdhY3ktdHJ1bmsKKzY4MjExIDEwNDAwNWQwN2VhNTE5MGUzZDIyMDZlMjY3NmUwZDc1MmFhMmU3NTEgcHkzaworNjgyMTIgODQ1ZmE3ZDM2NjQyMDkwYzI0MTkwZDQ0MmViODdlOTJhMWVkMzA4NSBweTNrCis2ODIxMyBkZTI3NzEwNzBkODUyYjJjODNjMzZmZDhlNzlkNmRmNTNmMGE4NjY1IHJlbGVhc2UzMC1tYWludAorNjgyMTQgNmU0ZDZkMzkwNWE3OWRmMWFlNzNmNzJkYmQ1MjEzNWIxMGZmYmQ5ZiBsZWdhY3ktdHJ1bmsKKzY4MjE1IDYwODU0YmRiY2YxZTVhZjc5MGM4OGEzMWIzNmM5NTM1OWYxM2Y1NTUgbGVnYWN5LXRydW5rCis2ODIxNiBiMDY2ZmJiNmE4YmMyOWZhYmQxZWY4Yjc2NjlmNzc1Y2RmOTU5OGNiIHB5M2sKKzY4MjE3IGM3NTcyMGMzZTE2ZWUwMjgzZWIxZDU4MmE0MzFkMjIzMGFjYzYyYTAgbGVnYWN5LXRydW5rCis2ODIxOCA2ZWZjMWRlMzQ1ZjVjOTE3N2U0MDVkYWM3ZjY3NWIxZWI3OWUxZDIzIGxlZ2FjeS10cnVuaworNjgyMTkgZmIwOTgyYzMyMTdlNDU4MDQ3NzJhYzZiZGYzM2ZhZjA1ZjgzZmIzZCBsZWdhY3ktdHJ1bmsKKzY4MjIwIGM1MjE3N2YzNjg1Mjc2NDBlN2YyMjk5YmNjZDU5ODQxMGRmMjYxOWMgbGVnYWN5LXRydW5rCis2ODIyMSA3ZmI0MzFmYTQ5NDYwMTg1Yjk0N2I1ZDg1ZmZjMDA3NDc2NzA3MGMyIGxlZ2FjeS10cnVuaworNjgyMjIgOTg5MzE0ZDdjYzVlZmIyZGZjZWZiNTZjMmNlYzI0YmI5NGNhYjUzOSBsZWdhY3ktdHJ1bmsKKzY4MjIzIGM5MTg0ZjUwNzM0ZmJiOTc0YmUzODJmMTJjOTJhZGI4MTQ1ODFjZTEgcHkzaworNjgyMjQgNWFiMzA2M2NhZjRjMDg4Nzg4NDQ3NmY4N2FkY2UyZjQyMzMxMTkyNiBweTNrCis2ODIyNSA1ZjI0NzVmZTUyMzk5NTMzY2UwZGU0YmMyMzlmM2VlZTZjMjIzNDQ2IHB5M2sKKzY4MjI2IGMzZDNiNzYwZDhiZmIwZWY1MzFhMzY0YWNkNjcxN2RkMjg4YjNlMWIgcHkzaworNjgyMjcgMGUwNWI2Y2E2YWZkM2JhN2M1OTFmYTQ0NDgwZjg0NDU2NzE3ZmRjZCBweTNrCis2ODIyOCBlNDc5Yjg2ZGExMWRlNjRhZWQ4ZWM4OTRkMWZkODkwMzYzMmVmMzM4IHB5M2sKKzY4MjI5IDgzZWZjMjQ2N2ZhZjM0N2I3NjZiMzkzYzFmMTQ4OTI2MzJlYmU5OGEgcHkzaworNjgyMzAgMDcyZGVkZWU3N2ZhNmRkNDg0NTY5NjdhZjU3MGY2OWFhOThjOWIyOSByZWxlYXNlMzAtbWFpbnQKKzY4MjMxIGNkZDVmYTA1YzE0ZDAwOTUzNjcwZWZkOGI2MjRlNDBiZGU4OTk5YWYgbGVnYWN5LXRydW5rCis2ODIzMiAyNGEwOTM3ZDc2MjQzNGJiM2NlZGIwODQxYmYxOTFiMGQzYjg5NTc3IGxlZ2FjeS10cnVuaworNjgyMzMgYWVlNTVjYTA0YzhmYTMwMWY4MmU1Y2ZhNWYyNDE0Mjk3ZWE5NWFjZiBweTNrCis2ODIzNCBlZTljZWQ5Mjg0M2E3YTU5OTIyN2RkOGU2YjAxM2EzMGFjM2ExMTY5IHJlbGVhc2UyNi1tYWludAorNjgyMzUgNzEzYTNhMzhmOTc1Y2ExYzQzOWQ3MmE5NWI1MTg2NWVkYjAyNzBiNSByZWxlYXNlMjYtbWFpbnQKKzY4MjM2IGY4ODVjNzZmMWU5NTUxMjI2ZDgyZWQ5MjM1NDk3NjliNzcyZGMyZDUgcmVsZWFzZTI2LW1haW50Cis2ODIzNyBkZGI3M2E0ZGZjMjA0ZDUzOWI0MGRkOGI2YjlkY2QxOTFmNTljOGZmIHB5M2sKKzY4MjM4IDZkZjNkMDhiODllNDUwZGFkMTRhOWEyMDg5OTdiZWVmYmZmZmNiNjEgbGVnYWN5LXRydW5rCis2ODIzOSAyMWQ3ZTllODc1OTFjNzI5NTM1ZmI3MTVkMjA2OTZmYWRmMWQxNzhmIHJlbGVhc2UzMC1tYWludAorNjgyNDAgYjU2MzlkMjQ1YWQ1MzU0NzlkNzE1YTIzM2JiMDNkNjBhOWUwNDRlZiBsZWdhY3ktdHJ1bmsKKzY4MjQxIDczZGVkOTRmYjhiZWFiMzk4ODE4N2RkODFhMzEzNmM2N2NjOWM3NTQgcHkzaworNjgyNDIgOTFjZjllZDQ2YjcyMzJlMzU1ZTBjZDk5NWI4ZTM5NDcwNWNmODc4OSBweTNrCis2ODI0MyBkM2M3ZTlkOWFkYTdjMDcyM2IzYjAwYzgyNjUzNTY2N2U0MzJkMWQ3IGxlZ2FjeS10cnVuaworNjgyNDQgNmM4ZWQ2Njc0MzI4OTJmMjczYzc4ZTg2NTVlM2Y2N2FiMWFmODEzZCByZWxlYXNlMzAtbWFpbnQKKzY4MjQ1IGFmMjBkZDE5Y2MwZDk5ODA3ZjNiYWYwZWIzNDVmOWFlYjk1MmFhMGUgcHkzaworNjgyNDYgOTFhOTIzMzk3MzQ3ODM4ZTlmMmEwMGQxYjkwY2U3MTU4YThhMGY2ZiBweTNrCis2ODI0NyBkMDkxNDMwMGUxMmViYzVhOGVlMGY0ZGQ0YTc1Y2RiYzVhNmFmMmY5IHB5M2sKKzY4MjQ4IDhhYTE5NTMwZjlmMjI4ZjllODNkYjI1NjMzOTJkYmNjYTI4ZDgyNzQgcHkzaworNjgyNDkgNDUwZWNiYjU2YzdiNTBlYjkyYThjZTZmOWM2MjUxZTcyN2I2ODMwNCBweTNrCis2ODI1MCAyODMyMWRiZGZkYzBjMDZiZDM4ZTNhMWIzOGEwZDY0NDYwMjM0MGY5IHJlbGVhc2UzMC1tYWludAorNjgyNTEgOTYxODgwMzFiMWI1OTc2YmI3ZWEwZTY4OWU2NGMwM2Y5NGJmNzJmMSByZWxlYXNlMzAtbWFpbnQKKzY4MjUyIDQyMjlhNGIxNGYxZDg5M2MzNGI3YTFkMTk2NzQyNDRjNjI4YzM5MDggcmVsZWFzZTMwLW1haW50Cis2ODI1MyA3ODI1NzhjOTJlMWQzYWJjMTIxMGNmNmU3ZGYwM2UwOTVmNjZhMzkyIHJlbGVhc2UzMC1tYWludAorNjgyNTQgNWViZjgyNjg5ZDM2YjRlNWU5MzQ4OWU4YTY2NTcxODNmNjliYzk3YyByZWxlYXNlMzAtbWFpbnQKKzY4MjU1IGZkNGRhODU1ZDYwM2Y1ZjdmNTg1NDMzZTFkNTQzMWEyOTJlODUyZjAgcmVsZWFzZTMwLW1haW50Cis2ODI1NiBjOWU1YzFmYTI4NWU4M2FkNWM5NWRlNmIwY2JiNjU4Mjg3MzRmNDA2IHJlbGVhc2UzMC1tYWludAorNjgyNTcgZTgwYzgwNmNlMDJiNDY0NDBmYjMyY2MwMTMyOTQ4MzliMTg1ZTAzMyByZWxlYXNlMzAtbWFpbnQKKzY4MjU4IDQ0Mzg3ZjFhMjhhMjBiNDY2OWUwNWYyMGZmMzc4OGVkZDc0Yjc1Y2MgcmVsZWFzZTMwLW1haW50Cis2ODI1OSA5MWYyZmJhMDJhNTAyMjI4OWY3ZGU5NmIyYTYyZTFkMjI4NDgwZmQxIHJlbGVhc2UzMC1tYWludAorNjgyNjAgODFjNDliYTdiY2NmNzc3OTY2MjJkMTkzNTk3NDIyY2VlMjJjNGU1NCByZWxlYXNlMzAtbWFpbnQKKzY4MjYxIGZhZGY3OGY1ZjhhZDM2ZWRlNjM1ZTZiYTU0ZmM0ODllOTEzNWUyODkgcmVsZWFzZTMwLW1haW50Cis2ODI2MiBkYjQ2NDQyNmEzNjUzNzIxNzlmYmQ3OGJkMGNjOWVjZDdiOGQyNmUzIHJlbGVhc2UzMC1tYWludAorNjgyNjMgMjRiMThlODdkNjY0ODkxOTA4NTI0MTVhMTc3MzAzYTI1MTQ1NjE4ZCByZWxlYXNlMzAtbWFpbnQKKzY4MjY0IDE1NDgzNjFiZmQyZjNiYjZmODVlZWY1Yzc2NDM3ZmQxZDhjZjA1M2UgcmVsZWFzZTMwLW1haW50Cis2ODI2NSBiYWRiNDcxZGJhZWJlMDFhODVjYzQwMGQ3YzNkNDA0OTI0ZTFkZjMwIHJlbGVhc2UzMC1tYWludAorNjgyNjYgMjc5YTUxMDA2ODg1MDBlZGI3MmRlYjk3ZTI3Mjg4NjE3MTczMTU5YyByZWxlYXNlMzAtbWFpbnQKKzY4MjY3IDA0N2RmMGE1ZjE3NDM2MDRjNjY1ZjI0YTI1MTkzNjBhNWFmY2JhOTcgcmVsZWFzZTMwLW1haW50Cis2ODI2OCA1YTViMGIyZDAxYjkzZWM5ZmJhNTUxZTBmMDc1YmMxNTIxOTY2NjQ2IHJlbGVhc2UzMC1tYWludAorNjgyNjkgYmQwZTM2MWJkNjQyMTUxYjdiMjEyMmE1Y2NjMzM4Mzk1ZDk3NmEzMiByZWxlYXNlMzAtbWFpbnQKKzY4MjcwIGZiZjdmNTNmNDg4OGQyOTJmOGIxZWU0MTExMmNiN2NlYzcxYWE4NTEgcmVsZWFzZTMwLW1haW50Cis2ODI3MSA2ZjMwYjk3MTQ4YjY1OWMwNmRlMzQxYTQ2MDRlOGQxNzcyNDEzZTNlIHJlbGVhc2UzMC1tYWludAorNjgyNzIgODUxYzJmMDRmOTVkNWFlYmE0OTBmNzBkY2EzOWMwYzdhZmZhYmFmYSByZWxlYXNlMzAtbWFpbnQKKzY4MjczIGI5NmQ2MTY4OGI4N2NmMDNlNDA0ZjAzZWE1NDEyZWI1ZThkN2RhZjUgcmVsZWFzZTMwLW1haW50Cis2ODI3NCBhNmVlMmZmNGRlNGQ4NzNmZjI1ZjgxNTcxYTI2YzJkZjcwOGJmMGVmIHJlbGVhc2UzMC1tYWludAorNjgyNzUgOTNjZjNhNmVhZDYzOThjZWFjZDQ1NTNkOTc1MjY5NzRlZTJhZTFkNSByZWxlYXNlMzAtbWFpbnQKKzY4Mjc2IDA1YmY3MDAyZWM5NDI2NTEyMDczYTU4MzQxYWM4ZTcxNmViMjVlZjkgbGVnYWN5LXRydW5rCis2ODI3NyBhZmFjMGNhYmMzYWQyMDcyMzUwNmIxYmMxNjE2ZjliNTgxZDkzZmIzIHJlbGVhc2UzMC1tYWludAorNjgyNzggZWE3ZTMwN2RkZDUxYWYzNTRmMTg1M2NiYjJhNDE4YzcxMGRkMzNkMiByZWxlYXNlMzAtbWFpbnQKKzY4Mjc5IDdhYzFmNmJlOGFkNTU1MmIzNTc3NjM1ZTY4YTU3ODlkMWE1ZTM2ZDcgcmVsZWFzZTI2LW1haW50Cis2ODI4MCBmYjkwNTg5MGQwNDlhYTMzYTQ1ZWVkY2M0NjY5MzM0NTgzZGYyN2VkIHJlbGVhc2UzMC1tYWludAorNjgyODEgOGIyYzFhMGE5YTJiODEzOGU0MDVlMTZkZTU5YTViYWY4ODc3Zjk3NSByZWxlYXNlMzAtbWFpbnQKKzY4MjgyIDIyYjExYzIyY2VmODQ1OTc5OWRkMmI2NmExMWYwNTNmM2M3NDdkZGQgcmVsZWFzZTMwLW1haW50Cis2ODI4MyAzYjA4Njc0YjliNDgzZjc3YzI3MDY5MjRlNmZmN2Y5ZTI5OWRlNGY4IHJlbGVhc2UzMC1tYWludAorNjgyODQgMWVhNTAxM2Q5ZGFlMGYxMjE1NDM5MmM1MzdlZDgxYzcwMzNhNzE0MSByZWxlYXNlMzAtbWFpbnQKKzY4Mjg1IDllYzk5ZmRmODA0ZjE4MzQ3ODE1YmRjZDgwNmIwMjRjZjZkZjQ2OTcgcHkzaworNjgyODYgOTQwM2RlZmI2OWZiMTliZjliZGI0MjUxZjU1ZjExZTNhZmY0ZmZjZCByZWxlYXNlMzAtbWFpbnQKKzY4Mjg3IDFjYThjNjg1OWEwNzg1NDgzNWQ5YWI3Y2NlNDZjYjE1NzQ1YTU0MWEgcmVsZWFzZTMwLW1haW50Cis2ODI4OCBiYWVkYjA2OWU0MjU2YmFiMzQ5NjNiOWQ3ZDQ3NDY0MmVkMGI0YWVjIGxlZ2FjeS10cnVuaworNjgyODkgNTM2Nzk4NTk4YWYwODhkM2E0MDkwMzA0OWZlOWYyNWUxZWRjOGQ5ZCBsZWdhY3ktdHJ1bmsKKzY4MjkwIGQ0MWE4Njg3NTMzMmE3NmE0MGEzY2UwYjUwZmQ3YjYyMGNkOGM3NTcgbGVnYWN5LXRydW5rCis2ODI5MSA1NGE1YWZmYjZhZjAxODU4Njg0NWViNzYzZTVlZjM1NGVhM2NjNThiIGxlZ2FjeS10cnVuaworNjgyOTIgZjRlZTAwMDZlZTM5MmY0ZWU2NTBjY2UzOGQzYjI3NTc1NzNmNzRmMCBsZWdhY3ktdHJ1bmsKKzY4MjkzIGRhMzRmMDI2NjRlZGM5ZDUyMTgyMGM3Zjg1ZDc3NjA5YWMwZTkyYTUgbGVnYWN5LXRydW5rCis2ODI5NCAwNTdjYjQ2ZGRhYWQ3YTllNzIzOTY4OTQ5NTkzNWI3NGQ3Njg5MGY0IHJlbGVhc2UyNi1tYWludAorNjgyOTYgZjg1NDM3M2E2NmU1NWJmZDNhMjI1YTM0OTA3ZWE3NzQyOTc2MmU5YiBsZWdhY3ktdHJ1bmsKKzY4Mjk5IDNhNTQwZWQ3OTVkM2IwNjhmODQ2MmYwNTcwYTkwY2E5MjVjNGUxMDkgbGVnYWN5LXRydW5rCis2ODMwMCBmYWM5MzUwYjQzN2RjOWRkMWM4ZmU3NTllMTNjM2Y0NmVlZWUxYTg2IHB5M2sKKzY4MzAxIDExNDZiN2IwZDUxOGIzYzc5ZTU2MzFjYzZmMTVmMmNiZTJmNmVhYTAgcHkzaworNjgzMDIgNTg0YjI2M2I5OGRhNjRhNGI3N2JiOTYzZDU2ODY5ZjU0ZDQ4M2E0MyBsZWdhY3ktdHJ1bmsKKzY4MzAzIDlkNTA2M2I0MTFlODc5NTZiNDNmNzNlNjMwMTM4ZDBlOWU1MGNjZmMgcHkzaworNjgzMDQgZTE4ZjMyMmI5MzFlNzkwNjQyMTUxYmI0NGU0YWMzMDk2OGMxZjkzYyBsZWdhY3ktdHJ1bmsKKzY4MzA1IDZlNGRkZTJlOTVmN2QzYzQwZDE5N2Y5ZTBlZmYxNDFlYzhiNGVmZTMgcHkzaworNjgzMDkgMTNmMTg1N2RkOWJmNWRhOGU0ZWZlZmJhOGExZmM0ZjgzNTI4ZGE1NCBweTNrCis2ODMxMCBjMjVlNWI2MjBhNGNmMjQ4MTc3M2Y4ZTI3NjVhMTA3MWE1OGY0ZjliIHJlbGVhc2UzMC1tYWludAorNjgzMTEgOTJjZDM1NTFmYTEzMWI3OTljN2ExZjRmODU2MjM3YzQ1N2NiM2IwZCBsZWdhY3ktdHJ1bmsKKzY4MzEyIGJjOWY4MGRkYmJlMjVmNTJmOGE3OGNkMGZhNzA3NWI3NzllNDVlMTMgbGVnYWN5LXRydW5rCis2ODMxNCAyY2FmZTk4OTExN2EzM2RlNzkyZDkzNjIwNmMxODcxNGU4NjI2YjVkIGxlZ2FjeS10cnVuaworNjgzMTUgNDc0NzQ1YjdhMTJhNmNhOWVlNjUyZTc5YTAyMGMzZmNlZTI4ZjM4OCBweTNrCis2ODMxNiA0MGJhMmExMjUzZmE0YmQ0ZTE0NmIwNTBkZmE0ZmQwMDMxYzBkZTkzIHB5M2sKKzY4MzE3IDA5YTQ5OGViMTgyMDU1ZGVjNmI0Zjg2ZjQzZWJiYTVkYjViMzViOTcgbGVnYWN5LXRydW5rCis2ODMxOCBmZDBiYjY4YWQ1YzhiYzFjZjg1MjM4OGYzM2MzODg0OTE3YmMzZDk4IGxlZ2FjeS10cnVuaworNjgzMTkgOWRlMjFlNjE1NTc3ZThmYzRiMGZiOGIwNjQyYzhhZjUzMzkxNDhkMyBsZWdhY3ktdHJ1bmsKKzY4MzIwIDJiZTQ5MGFiZjMzMzNjMjAxMzk1M2U0MzRlNDU2NzFhNTdlNTQ3YmYgcmVsZWFzZTI2LW1haW50Cis2ODMyMSA1NDM2ZTUzNGRhNmU0YTM3OGY5YzhhNzNhZGZkMjM5ZDYyMTIwZDczIHB5M2sKKzY4MzIyIGRkYWVjNDdlNmRkOTlhNmUxYjVmZTM0MmEwNGVmNWYxMGM4ZTk5Y2UgcmVsZWFzZTMwLW1haW50Cis2ODMyMyA2YTZmMTM4ZDQxNjJjZjAwYmQ0NzJlNTIyMDU5MzhmZDc3NmJhYmY1IHB5M2sKKzY4MzI1IDE1YzRjOWUzMzBlOTIwZmI2YjI1MDEzMDA0YTgwOTNkMzdjYzllZTkgbGVnYWN5LXRydW5rCis2ODMyNiA4Njg1ZTU4NTVhNDc5NzM5ODg2NjAzNTcwOTAyMTVjNzk5N2RmNzg3IGxlZ2FjeS10cnVuaworNjgzMjcgZTE3MWNkNTNhYzRiNmVkNzU3ODc3N2Q0NmUxYjk5YmRlMGUzYzcxMSBweTNrCis2ODMzOCA3NThkOGZiN2JkOTkwODk3NTI4OTQzNTkxZjk1M2NjMmM2ZmEzZjEwIGxlZ2FjeS10cnVuaworNjgzMzkgOTE3NDg5NTk3MmNiMDkxYzEzMDhkZTU0NWFiZGY4NmMwMTY1MjJmNCByZWxlYXNlMjYtbWFpbnQKKzY4MzQxIDZkOWIwMzMxZDA3M2EzZWVmNTZlYjUxNWIxOTZjMDg0NjIwMDBkZTkgcHkzaworNjgzNDIgMjU1ZTY0YTEzNzU1MWRiNWFiNjg2MDZlYWZiNWEzMmI0YTVkNmU1ZCBweTNrCis2ODM0MyA2NGY5MWZmMjRmZTZjMjQ4MDFjOTFkZjEzNWY5ZmI2OWNjZDBjMTQwIHJlbGVhc2UyNi1tYWludAorNjgzNDQgNzI3ZWUxNjY1MjE5ZGRjN2RmMjZmZTNkYTk5MWEwNGExMmM4ZmZmZCBsZWdhY3ktdHJ1bmsKKzY4MzQ1IGU0YWNmMDc5YjUwOGRjMDEyNTFmNGRjNDQ5ZDliOGZjMjY2YWVjYWIgcmVsZWFzZTMwLW1haW50Cis2ODM1OSA0NWFlZjUzZjVjNzFhYzRiM2NiODkwZDQxYzFiOTc0NzBjYTg5MjgwIHB5M2sKKzY4MzYwIGZjMDAwMDY4MmJmZTdjMGVkNGRmYzMwMzdlODAwYjIwYzFlNWIwMmEgbGVnYWN5LXRydW5rCis2ODM2MSBiZTliMTViZjY4MjgzMWNhZmMzOTVhYjM4MjZiYjZkNDEwOTFjNmY3IGxlZ2FjeS10cnVuaworNjgzNjIgNjE3MTk5NzY5YmQzODRiNTE4NGJjNDZhMjg2NGU3MThmOThhMjNmNiByZWxlYXNlMjYtbWFpbnQKKzY4MzYzIDJmZjk5MTBmMTUyNmM4OTM0NzIwNGRiZDk3MjM5YmFlMGU2MWNkMmQgcHkzaworNjgzNjQgZTk4N2UwZGY4ZjQ4ZjQxMDA1OTJhNjY3YTQyMzIyZWViNmZlNjQ1NSByZWxlYXNlMzAtbWFpbnQKKzY4MzczIDg5MzNkZWJiOTMwOGViNzA0OGQ3NTc1Y2Y0YzM0MDYwMmJjZThkNmQgbGVnYWN5LXRydW5rCis2ODM3NCBhNGFmNWU2ZjZiMTdjMzkyNDZhNzllNmQ0ZmU0MGVlMTNlNzhmZTY5IHJlbGVhc2UyNi1tYWludAorNjgzNzUgODFkMjM2ODRmNjk0ZGUxMTE0M2FjZjJhZmI5MTIyNzgxMzlmZWU1NCBweTNrCis2ODM3NiAwMjc2YjhmZGRkYTdkNWQ1OTRmYjIwYzY3YWM4M2NkYTVhNDkwYjg2IHJlbGVhc2UzMC1tYWludAorNjgzNzggOGE1YTk1OTExMDBkZTcxNzRmYWE3OGYzNDM3MTZlNTc4NWNmNDI1YyBsZWdhY3ktdHJ1bmsKKzY4Mzc5IGZlZDJhZTFlNTBjMmZkNTVmOTczMzE0OWY1ZjkxOWJhYTY4MTU5NDIgcHkzaworNjgzODEgZjBlMGMzNTM2ZTIyNzI1MmEwNDNlOTE5ZDkzM2QyZjU2NzAyMzExYSBsZWdhY3ktdHJ1bmsKKzY4Mzg4IDQ0ZjE0ZmQ0ZDljMjczMTM5MmZiOGQyZTUyY2FjZTJiNTZlODBkNDggbGVnYWN5LXRydW5rCis2ODM5MyA1YWM4ZjBiNWE1OWJmY2M1N2RlOWQzZWE5NDZhYzk3ZTNhZjBjYWUwIGxlZ2FjeS10cnVuaworNjgzOTQgMGI4ZDJjZjNmNTViNDJiM2I4ODY2NDk4ZWQ0OWIzOTQ4Y2QyZmFkZiByZWxlYXNlMjYtbWFpbnQKKzY4Mzk1IDc2ZmExZGUyNzQyYTk4YTEyN2YxMjYzOGZhNzNmMTkyNmFjOWJhODYgbGVnYWN5LXRydW5rCis2ODQwMSBhMjI5Y2EzYTEyYWUyYzQ2ZGE4ZGFkMTc5NGViN2U1YzgzMWJlZjkzIHB5M2sKKzY4NDAyIGU2YTI5NzkwZDc1YWUwYmE3Y2VmZTM3ZGUzNjc4NGFmM2E1ZGRkYzIgcmVsZWFzZTMwLW1haW50Cis2ODQwOSBhZGM0MzBjMTZiNTdiNmE3NmI3ZGNjYzk3NzUxOWRkNWY5NmE1YWFkIHB5M2sKKzY4NDEwIGZmZmQxMGMxMmExYjc3MjM5ZmI2YmUyZTc2ZTJmZDcxZDFkYzJlMTMgcmVsZWFzZTMwLW1haW50Cis2ODQxMSBmOWY1ZDkwNDdhMDU0MWZhMTZmZmI1ZWMzNjQwNWYwYWRhNTc4YWM3IHB5M2sKKzY4NDE1IGEzZjMyOWYyM2IyMzZlMzMxNTMxODY0ZDU5MWFkMzI2YmZjNzk4NjQgbGVnYWN5LXRydW5rCis2ODQxNiBlYTQzMTk0M2E4ZGU1MjYxN2JjNWE1NWE1NzYyZWQ3YTA5ZjgzZDQ1IHJlbGVhc2UyNi1tYWludAorNjg0MTcgNTg5ZjY4NDRkOGUwZWMzYWFlZjE5ZDJjOWI2MjY5ZDIyYjEyNjQ0MyBweTNrCis2ODQxOCAzNjhkZjAwNjA3NDBjNzI2MDE3MjMyOGNiMzIyNjAwOGNjMjZmOTlkIHJlbGVhc2UzMC1tYWludAorNjg0MjMgZWQzZmRiZjEwNzc1NTZmMmQwMmVkZmZjNWZhNTUxNWYxNGNhZDgwNyBsZWdhY3ktdHJ1bmsKKzY4NDI0IGVkZWI5MDM4YzQwNWIxMTQ3MDRjMzVhNDgxMTQ5OTNkMTZmZjM0MWIgbGVnYWN5LXRydW5rCis2ODQyNSBkOTdhYTk0M2JlYmI1NWQzNThjYjJhYzA2MjlhZTljOTI4MzJmMmUzIGxlZ2FjeS10cnVuaworNjg0MjYgZDhiNjRjNjc2YmNiMWRlNWY2MjU0ZmQzYzFhMzY1MzhiYzcwMmVkYiBsZWdhY3ktdHJ1bmsKKzY4NDI3IDVmMjkyZGViZDI0YzM1NGQyNWI4NjNlODc5N2ExMTcxMDE0NTk1ZGIgcHkzaworNjg0MjggZTQ5NmZkYjkyN2ZhNjJkMDQ4M2EzMzk1ZGUxZWU1NzhmN2MwNzViNSByZWxlYXNlMjYtbWFpbnQKKzY4NDI5IDVjNjI0NGQyMTdmZjExYjk3M2RjOGQ1YjRkMGJiMDhlN2Q5Y2VkNDggbGVnYWN5LXRydW5rCis2ODQzMCA2OWEyYTRkYmQ5YjRmNGRhNGY0MDZkNWFhZGM0NjY2ZGJjMjJhZmRlIGxlZ2FjeS10cnVuaworNjg0MzEgNzJmZTUxZDZmODAwYmNlNzdjYzZjNDRjODkxZjM3MDEwYmIzYzFiYSByZWxlYXNlMzAtbWFpbnQKKzY4NDMyIGVmM2ExZWNkNDY2M2ZlNjU0ZTI5MmVhMDMxZTFmNzZmOGE1ODhlYWMgbGVnYWN5LXRydW5rCis2ODQzMyBlM2MyMTI3OTk3MDZlNjZmYWM3M2M3OWJhMGY0YTNlZDMwMTYwY2Y5IHB5M2sKKzY4NDM0IDQ4MGZjZGQ4MjAxNjIwOWRkNzI5OWFmNTMwZTRjM2RmZWI0ZmFhYzMgcHkzaworNjg0MzUgMzY2ODZkNGQ3ZTcyNzViYzI0NjFmMTAxOWY1NjIxMjA2MmFiM2QzMiBsZWdhY3ktdHJ1bmsKKzY4NDM2IDNiOTMzNTg1NTQ3MTk2YWVjMDQwMTA2NjEwYThkNTgxNjZjMTMwMmYgcHkzaworNjg0MzcgMGE2NmUxZGMzMGYyMjM1Njk4MzdhN2QxZWU5YTI4YTc0MmZkNTI2OCByZWxlYXNlMjYtbWFpbnQKKzY4NDM4IGM3YzM0NGI2M2VjY2ViZjYzMjczZmM4ZTJhYTdiNWE4MWQ5MWVlZDkgcHkzaworNjg0MzkgN2I4NmQ2Y2FjMmIxODVlMWM1NjAxZTc3ZGFlMWUwODE2YjA3NDE0YSBsZWdhY3ktdHJ1bmsKKzY4NDQwIGYxMjdiY2IwYWE3MTIyNWZmYjRjNWFiZDc2YTgzZmY4Y2RmMjQ1ZjcgcHkzaworNjg0NDEgOWYwNDFiYTNlNGM5MWZjMzNmM2NhMzkyZjdmMTI3MmEwODhkYzU2MiByZWxlYXNlMjYtbWFpbnQKKzY4NDQyIDlkMDkzZWY4OWM1NjA3NWJlZjBkYzBiZDUyZjBjNmI4ODdlOGQzNWIgcmVsZWFzZTMwLW1haW50Cis2ODQ0MyBjZTM3MzMxMzlmYWM4MDNlZmE4NGE0NGRiZWIzM2IyMzNiNjE0YTljIHB5M2sKKzY4NDQ0IGM5NGYwMjc5ZmVkZTk3N2IyNDc5NTYzZGNkNzA5NjY3NzE1NDUxYTQgcmVsZWFzZTMwLW1haW50Cis2ODQ0NSBjY2Q5NWIxYWFkZTlkNGM5OGRhYzkwNWM3MzNhNThmMmU0ZWJhYzA5IHB5M2sKKzY4NDUwIGI3M2JkNWE3NGEyNzg4MzdiYzJhMDIyOTdjZjg0MjNlZjEzNDNhMzkgbGVnYWN5LXRydW5rCis2ODQ1MSBiYzMwZTM5NWFhMTRhZGVmMDAyM2QxMDIwM2UxNTM2ZDMyMGNlY2RlIHB5M2sKKzY4NDUyIGI5OGZlOGRjOGFjZDZhMTA0NTBiZDlkM2FmODY0MWQzZWFjZjA0MjEgcmVsZWFzZTMwLW1haW50Cis2ODQ1MyAzODg2ZTRjODhmYTU5NmQ5MGUyNDgwYjNlMTI4NWUzMmEwMDViZWUwIHB5M2sKKzY4NDU0IDhjNDlmZjBjZTE3YWYzNmVlOGQwYjg5NGEwMjIyZDI4NDgyNDNmMTEgcHkzaworNjg0NTUgZmRjY2E4NzkzZWI5ZjdlMjUxMTgxMGZiMmUxMDBjZWU2MDQxNzk4NSBsZWdhY3ktdHJ1bmsKKzY4NDU2IDliMjc2Y2UzNTY5N2IyNTZhOWNiZTNhZjlmOTE1MGE4YTRlYzUxYTYgcmVsZWFzZTMwLW1haW50Cis2ODQ1NyBjYTA5OGZjMThlYzYwOTgwMzRiZTJlNGYxNGU0ZjI3ODc4ZDliZTZhIGxlZ2FjeS10cnVuaworNjg0NTggMDdiYmMyZTIwYWE0YjUwMmZhMWQ3NjY0NWEyZWUzZmUyZDg5MzJhNSBsZWdhY3ktdHJ1bmsKKzY4NDU5IGYxY2E1ZGQ1OWFjYTgyNjRlYjhiYzZiOTVlMjA5OTcxODFjMzliNjAgbGVnYWN5LXRydW5rCis2ODQ2MCBjOGY3OTNlMTU5YmJiYmU5NzVlN2QwZGE0NmQ5Yjg4OGEwMDQ5YmU0IGxlZ2FjeS10cnVuaworNjg0NjEgZTZmNTVjOWVjM2QwMTRhZmU5NGMwOGI3Nzc4MTYzZDZkZjI0ZWQ3ZSBsZWdhY3ktdHJ1bmsKKzY4NDYyIDc5Mjc2MzE2Yjk0YjM4ZjNkZWVhYThiMDM3MDEzYjkzY2I2MGE1ZWIgbGVnYWN5LXRydW5rCis2ODQ2MyA2MmNhMmNjY2RiNmZjMjBlYTMzM2FmNTg3NGRiZmZjOGM4NTA2OTBlIHB5M2sKKzY4NDY0IDljMmJkNjQ3YjY0NjRlYjY2NWRkYzAyMjhlNTcwMTExYTY1NTdiNTggcmVsZWFzZTMwLW1haW50Cis2ODQ2NSA1ZDBlYWMwMWEyODVkOThlYTM4MmRhOTcwMjViNjY1YWFmM2MzMDNkIHB5M2sKKzY4NDY2IGJjNjcwYThkZjQ0YmIyYTM4YTI0MWE0MjNlOWYyYjE3MjM2ZGQ5NmIgcmVsZWFzZTMwLW1haW50Cis2ODQ2NyA5MWUzODUxYzhjYzdjYTIyNDNhOTQ1ODUxZGM1ZTU2YWIzNjZhMGExIHB5M2sKKzY4NDY4IGUwMGIzMjQ3NDliMDRlMjk2MzVjYmIxY2FmNmYwMjQ5MTIyZjBjNDQgbGVnYWN5LXRydW5rCis2ODQ2OSA4YWY1MWNmZGQ1ZTkwYzEwNTExMzFjNTBhMTJkZDU1N2M3ZGYyYTQ1IGxlZ2FjeS10cnVuaworNjg0NzAgMWUwNzBiODNjZmE5NGI3MGE1M2U0YzJiMDFiOTc5MDY3OTFkOWU1OSBsZWdhY3ktdHJ1bmsKKzY4NDcxIDkzN2Y1MDBlMGYwNmQwODA3ZmU0ZTA1ZTFkMGI3ZTNmMmE3Y2RhYmUgcmVsZWFzZTI2LW1haW50Cis2ODQ3MiBkNDQ4M2ZlY2Q2ODczYzBlY2M0MDc0ZDQzMGRmMzZlZDhmNGFmZmFiIHJlbGVhc2UyNi1tYWludAorNjg0NzMgYzM0ZDcyMWMyZGM3MjQ2MjliMmFiNTFiZjEwNTUyMzNkNjUwMjQ1NiByZWxlYXNlMjYtbWFpbnQKKzY4NDc0IDYzOGUzMDllY2M5OGFlODFhMGFkYjdkNTc2NTBiZDAzOTBlODVjNmUgcHkzaworNjg0NzUgYTBmZjkwMDdjMmFhM2U3ODhiYzkzNDAyZDU1NDg4ZWVlMDZiZmM1OSBweTNrCis2ODQ3NiA1MzAyZjgwNjUzN2E3YmJjMWY2ZGZiYmQxNTFjMTZmMzAwNzc0M2UxIGxlZ2FjeS10cnVuaworNjg0NzcgZDMyNmE2NzNjYjY2MDVkZjRlYWZjMWQxZjQ4OGVjMzRhZmVhZDBhMSBweTNrCis2ODQ3OCA1YzZjYmI3YTYyYjA3NmJlYjUxZmQ1MjU4MzJmMTVhOTdiOWJiOWRhIHJlbGVhc2UzMC1tYWludAorNjg0NzkgZmE5MjI5ODVhZjczMjE3ZWI4YWQ4MWZkZDkwNjRhMmFmMzdlMTNjZiBweTNrCis2ODQ4MCBkYmUzOWViZDMwMjU0ZmVmMzUxMjJkMzhmOTBiNGM2YWFlNTJlOGRlIGxlZ2FjeS10cnVuaworNjg0ODEgY2RjMmZlMWJlOGE1ZTIwZDg5M2Q2ZWUwNjZmZTIzNWZiMmIxMzE4NiBsZWdhY3ktdHJ1bmsKKzY4NDgyIDJkNDcxZmQ4OGFmZmIyOTQ4OTI4ZGRkYWEyMWQxN2EwYTUxNzQzNzkgcHkzaworNjg0ODMgOGU2MjNiNzhhY2JmNmMwZDY2MWU0NjMwYTVmYjg3MDI1MGNiMTI4YyBweTNrCis2ODQ4NCA1ZDVkOTA3NGY0Y2FkNDU3MDJmNGE2ZmJkNTBiYWVjNDViY2U2Mjg4IGxlZ2FjeS10cnVuaworNjg0ODUgOTljNDQxNjQwZjcwYzcxMDRmNzg0NDBmNzllZjJmOTQ0MjRmZDhkNSBsZWdhY3ktdHJ1bmsKKzY4NDg2IDE1YTA1NmUwZjg5ZmVmMjY0YWIyMDlhYTFiMGU3ZTViYjBjMmQ1MDEgcHkzaworNjg0ODcgNzQ0NGY1NjRlMjdkMWU5ZjY1OWIzZjhhNDRmMDU3YzdmNDY2MTdjMiBsZWdhY3ktdHJ1bmsKKzY4NDg4IDhkY2FiMjQzOTdhOGQyZjAwNzA3ZTBmNGNlZTc3MmVmZWI4NjJlZDIgcHkzaworNjg0ODkgMjkzYWM0NGQ3ZmYwZGY2NmU0YTQwMWQxMTYzNzBiMjA5MDBjMjBhOCBweTNrCis2ODQ5MCAzYjViZTBlZTMyZWFjOTc5OTFiNjdhYzU2ODc5YjQ1YmFmZWI0OThmIHJlbGVhc2UyNi1tYWludAorNjg0OTEgZTk1YzNhZWI0Yzg1ODM4ZGEyYWEyMDlmNmRjNzAyNTE4NDNhNWMxZiBweTNrCis2ODQ5MiBlZjRiZDc3MDhhZDdiM2RjMjg5YzczM2UyM2E1ZmE2M2U2NjcxNDgwIHJlbGVhc2UzMC1tYWludAorNjg0OTMgNDBjYThiMjEyMjA4MWRlNTNmNTIzNWI2ZjUxMjE0NWNmYjM2ZWQwYiBsZWdhY3ktdHJ1bmsKKzY4NDk1IDEyOGUyMGRhODllYjQxZmNmNGI2ZTYxMmM5MDg5MjRiZWVjMGViZTUgbGVnYWN5LXRydW5rCis2ODQ5NiA1ODYxZjZlMTA4NjA3NTNkMGU3OTlhMjQ1Nzc3ZjgxMzhlMGYyMjAwIGxlZ2FjeS10cnVuaworNjg0OTcgOTU1NzZkOGFmNzk4OWUzNDM1YmY5NTAzMDdkODJjYjg5ZjI5NDMwMyBweTNrCis2ODQ5OCAwMjQ0OGNjZjQxZTAxYTU5MDM4NjBkMDRiYTVlNzc4ODk3NTMxMTQ2IGxlZ2FjeS10cnVuaworNjg0OTkgOGUwM2RhYWFmYzc0MWRiODk4ODZiODE5NDEwNDc0YTg0NmQzN2JhMiBsZWdhY3ktdHJ1bmsKKzY4NTAwIGQ4N2NiZmM2YzVjNjc3MTQzMTVkYzk3MGQzZjc4ZWQ5M2YwNzA0M2YgcHkzaworNjg1MDEgYmJmNDY0MjEwOTg0MDQ1YmExNTE5YTIyYWU2ZTA3NThjYjk2NWRmMCBsZWdhY3ktdHJ1bmsKKzY4NTAyIGVhZjdjZWI4YWI0NTRhM2YwM2JmNTEzNjdlOGRhNGU0M2NkMDk4MmUgcHkzaworNjg1MDggOWUxODFlZWRjOTVjYTJiYjlhNTA0NGExNTc2ODYwMDc3MjIwZTIxMyBweTNrCis2ODUwOSAwNDk2OTYzZmNmZTlmYjY0Yzk0NThjMjFkMzU2MzU5MzIyMzYxZDExIHJlbGVhc2UzMC1tYWludAorNjg1MTEgNGQzNTBmMmIxZjJlODM4MGNjNWU4NWRkN2FiNjcyNWY0YTNhZDAzOCBweTNrCis2ODUxMiAxOWRmZmRlYzU1NDdhYjk0MmQ0Y2NkY2MwOWQxNWI2YWVkNmQ2ODRkIGxlZ2FjeS10cnVuaworNjg1MTMgMGYxZTRhYjk1NjU1MTcxZmY2MTBhZmIzYzg2ZDJlZjVlY2ZjMzQxOCByZWxlYXNlMzAtbWFpbnQKKzY4NTE0IDQ0ZTBjNjlhNTMwNDgxZDdjNzgyYzZhMGYyNTc4MTNkNTI4NGQwMGYgbGVnYWN5LXRydW5rCis2ODUxNSA0M2VkYzY1ODFlNDRkZmM0ODJjYWI0MThlM2FkZGNlNGFlOWY5OGMxIGxlZ2FjeS10cnVuaworNjg1MTYgOTNiMmE5MTNkOGFjZmQwNzNiZTZhNWY4ZDY5NDAxNzdkMjZjMjJiZCBweTNrCis2ODUyMSBhYjA4NmFmZGNmMGNmN2UwZjQ0NWY2ZjI0ODhkYjhkM2Y4NjQ0ZmJiIGxlZ2FjeS10cnVuaworNjg1MjIgMmQ4OTc3MmNjMjU2ODhhNmZmY2Q0MjI1OGExNmJiMDZiMjExNDk2NSByZWxlYXNlMjYtbWFpbnQKKzY4NTIzIDI5MzVjZWRlNTk0ZTM3N2ZlYzFiZmFkZjY4NzE0MjgwNTdmODY5MTggbGVnYWN5LXRydW5rCis2ODUyNCA3NTY2MWJmOGNiMmM2NzNjMzY3MTM5NzBjODgyYjlmMDFkOGQxNzYyIHJlbGVhc2UyNi1tYWludAorNjg1MjUgOTVhNGY1MzA4YmUyNGNkZWFhMThiOTY4MzRkNzNhNmY0Mjc3OWViOCBweTNrCis2ODUyNiBkYzQyYWRmODg3YjU3NWYwNDIyZTNlMGU1YzFmZmZlYTIxZWY3NGE0IHJlbGVhc2UzMC1tYWludAorNjg1MjcgZDg0MWZmNjdjYzYxYjhhMjU1OGZhNzVhM2UwY2UwNDI4NDFiMzY4MyBsZWdhY3ktdHJ1bmsKKzY4NTI4IDcwNDQzYWU3NmIxMDVjODE5YzA1NzRhODVkOWZlODM5NTU1MTAxZWIgcHkzaworNjg1MjkgOTJiZDAxNDE1OTA2OTdiNTkzMjFjMzdiNmI0MTA1N2YyODQwNTY2NCBweTNrCis2ODUzMCAyZmZkZjhkZDNlOGI1MDY0YTI5NWU0MjU5ZjI1OTQ4ZDIyNGYwMWRlIHJlbGVhc2UzMC1tYWludAorNjg1MzIgZDA5ZDZmZTMxYjYxOTk4N2Y3OWZhOTQyNDNjOTAzMzRlZjJkMWU1ZSBsZWdhY3ktdHJ1bmsKKzY4NTMzIDI3ZGI4MmE1Y2RhOTE5ZGNjYTIxZjRjZmM2ZDQ3OTZhOWE1ZTYyODcgcHkzaworNjg1MzQgYjdmYmUzN2ViODkwNGRmOWNiZjk5ODVhNWRjZGIzZTJiMjgyNGViZSBsZWdhY3ktdHJ1bmsKKzY4NTM1IDQ5MWVjNDExZTVjOGZmMzZmZDE4MTQwYjJlM2ZhMGRmNDYzMDgxMmYgbGVnYWN5LXRydW5rCis2ODUzNiA3NTQzZjEyODIwNzM2OTRhNDY0NGQxNTc0YmJmOTA1NDljMzgxMDA3IGxlZ2FjeS10cnVuaworNjg1MzcgMGYxYjNmMzExYWUwMTAyZDJmOTQ4NmJiNTJkOWRlMzI4NTlmZWI4NiBweTNrCis2ODUzOCA2ZWVhODBiZGNiZjVlOGY2MTY4ODA0ZjJiMGQyZjBhYjJiMGIxNzA3IHB5M2sKKzY4NTM5IDVmNGMyZGU5NTA5MWI1MmMwNmNjZWZkOTI1ZGQxMzhiYzNjYmEzMzUgcHkzaworNjg1NDAgYWQ5NjkxMzUwYzkzMWRmNjE0Nzk1ZTAxMjA1ZTg0OWIyZjc4NDkyZSBsZWdhY3ktdHJ1bmsKKzY4NTQxIGU4MTU0YmQzMjJjYjU2NjEyYzI0MWY4MmM2NDdlNTE5OWViN2JkZGMgcHkzaworNjg1NDIgODU0MDI2ODA0MGZmMDQzZjAwODJmNDcyYTZiMmVlMGZlM2MwYjMyNCBsZWdhY3ktdHJ1bmsKKzY4NTQzIDJiMjcwN2ZmOGJiN2E5ZjI1YzVjYzBmZjg0MDVjNmU5ZDU1MzhmYzggcHkzaworNjg1NDQgZTQwY2U4ZmZlNjMyZDE2YzZmNjNiNzRiYTYyNTI4YzI3NzVhZWUzNCBsZWdhY3ktdHJ1bmsKKzY4NTQ1IDM4ZTE4YTg4NGYzZmVlNjVkMTIwOWNjN2IwZmU5ODY1N2Q5ZTI5ZjYgbGVnYWN5LXRydW5rCis2ODU0NiA4N2FkY2NlNDhkZWZlNjRmNTRmOGViNDBlMWE0Y2UwMTg2N2Y1NmI5IGxlZ2FjeS10cnVuaworNjg1NDcgYmJjZDQ2MzRhZTczM2IyZDg0MWQxN2FhOGVmNDc0MjJkNzAxMjcxNSBsZWdhY3ktdHJ1bmsKKzY4NTUyIGJjOTJiYjIwODE5ZmM5Y2I1NTZjYWJiNzU3ZjdlYmFmMDg4YzgwMDMgbGVnYWN5LXRydW5rCis2ODU1MyBmNTViODU1MzIzOTI3YmQ1ZTUwMjllZjk2ZGEyMGY3NmFlNjA2MDllIHB5M2sKKzY4NTU2IDg3MWExZmY0NmZhNjljM2RkNmVhNTQ4MzMyMTUyODNlYTQ0NjdkOGIgcmVsZWFzZTMwLW1haW50Cis2ODU1OSA1OTM0NjEyZDUwNzA1YjA0OWE4YjliMzc5NzAxYTYzNzU4ZjVlYWZhIGxlZ2FjeS10cnVuaworNjg1NjAgZTk3NDhkYjQ3NjM1N2NjNjE0MmZiOWMxZDAyNjMxYmUyODNkOWFmZCBsZWdhY3ktdHJ1bmsKKzY4NTYxIGM5OWNlMDE2NDY5OWMzZDRmNmI1OGRkMGFhMmE3YTU1MWMxODJkZDkgcHkzaworNjg1NjIgZjQ1OTk3ZDlhYzU1NTYxOGFkZDFjMGM2NmNhOWU3OTE5MWE3YzM0OSBsZWdhY3ktdHJ1bmsKKzY4NTYzIDEyYTc4N2I0NGRiNTQ0OWYwMGYwMTM1NTFjNjMzNzZmOGI3YzMzM2UgbGVnYWN5LXRydW5rCis2ODU2NCAyYzAzYzc1ODBhYTM4YmQzNmYzMjZjMDQ4MDgwYWQ2YjQ3M2Y4YzY5IHB5M2sKKzY4NTY1IGJhMTUyMWYyNDc0OTA0MzQ2MjU1YzUzODJjZTZmY2JlMjExMTU0NDggbGVnYWN5LXRydW5rCis2ODU2NiBlMzAxMTQxZTkxYjEwNDY3ZWQxZTA3ZGM0YjM0MzA2MjE0ZDFlNjI3IGxlZ2FjeS10cnVuaworNjg1NjcgZTVmOTk2Y2RhMzIxNmU0YjAxMWRiNWUwMjNkMmVjMWE3YmIxODMzMiBsZWdhY3ktdHJ1bmsKKzY4NTY4IGExOWQ1OTZkMzUwMGNmYTYwNTUzNGM0MWFiMWFjYzU2MzRlOTM0ODUgbGVnYWN5LXRydW5rCis2ODU2OSAyYTgyYmQyOWVjMTg4ODU4ZDllOGY2YWE5NWVkMmJhY2E0ZDUyNGRiIGxlZ2FjeS10cnVuaworNjg1NzAgNDU0YjY5NmMxZDczMGUyYzY2ZTI1N2RjYzdkNGZiMjBjMTFlZTQxZSBsZWdhY3ktdHJ1bmsKKzY4NTcxIGM3NzZiNmQ4MTRjMjNlOGJhYmM3YTJlZjI2MTIxMmU5MWJkZWMxNGIgbGVnYWN5LXRydW5rCis2ODU3MiA1OWIxMjEyYTRkYmYzZmUwMTMyMmYyZWM4NjlhY2YwN2FmZDJmNjAzIGxlZ2FjeS10cnVuaworNjg1NzUgYmU4ZTk1OGRlZTk0Y2VkNGFlNmM1NDcwMDY5NGU0OWY0NzY3ZThkNiBsZWdhY3ktdHJ1bmsKKzY4NTc5IDA4YWM0NDA0MDhjOWQzMmE2ZWY0M2QzYjBhZjAyZDJjYWNjZGFhMDYgbGVnYWN5LXRydW5rCis2ODU4MCA5YTVkMTQ1ZjE5YTUxMmI2YjU4M2VkZWM4OTYwZTQyY2MwNWY1ODk0IGxlZ2FjeS10cnVuaworNjg1ODEgNDM5OWUzZjEwYjE5YjBhMTcwYThjYjJjMTNhYzRjNjUyY2EyNmIzNiBweTNrCis2ODU4MiA2ZTMzYWVhZWU3N2RkMzk2ODA1N2E4ODg1MDgwNzk5M2M1ZGRkNjRmIGxlZ2FjeS10cnVuaworNjg1ODMgZjU3MTg0NGJlZjVjOWE4ZTgwNzcwZGIzNGFhNjYyNjZkNDg1MzkzYiByZWxlYXNlMzAtbWFpbnQKKzY4NTg0IGEzNDk0YTViMDQ5NTY0NmNlYzk3YjUxNjk1Y2VkYzFlM2NmMmM0YWIgbGVnYWN5LXRydW5rCis2ODU4NSAwMmFiMTYxNDIzYTU4NmQyNGQwZjBkNjM2ZGIzOGZmY2MxMmNkOTAyIHB5M2sKKzY4NTg2IDQxM2NjYTNlYmU4MmUwMjE3ZWIyOTViOGJmYmNkNTM3MzU2MjdkYjAgcHkzaworNjg1ODcgMDIyOTA1NWM4YmUwNmYxMDFkM2RkYTczYTA4ZTdiZGIwZjlhYmU2NSBweTNrCis2ODU4OCAwOTQzMzQ0YTUyNjFiYzc2MDgzN2JmYjg2ZTJiYTZlYmYxNThmNWEzIHJlbGVhc2UzMC1tYWludAorNjg1ODkgMDhmM2ZlNjkxNTFhYzZkMDQ0OTM2ODEyYzdiNTcwZDQ4ZGU5OWU0ZSBsZWdhY3ktdHJ1bmsKKzY4NTkwIGZhYjUwMTI3N2JjMmMzYzMyOWMwYzY0ZjMyYzg3NWIwNmEyNTg0OGYgcHkzaworNjg1OTEgZGRhMzEwN2Y2YmM3YTdiYjYwMDAxNDYzODBiMjBhMTQyZDNiMjM0MyBweTNrCis2ODU5MiBhODU4YjYxZGIzMjRkN2VkM2M2ZWY0OWI3MThkN2RjMzc5MjhkYTgwIGxlZ2FjeS10cnVuaworNjg1OTMgZTQ2YTA2YTI2NGIzMmRkYjRhNmViMTI2ODkyMjUyMWVjMmMzNDBhMyBweTNrCis2ODU5NCAwZmRjZTM5OWRjZGUwYTIzYzgxNzkxY2U2N2EzODFkYTFiMzM0YTAyIHJlbGVhc2UyNi1tYWludAorNjg1OTYgNjVjMTkzOGZiOWZmZjI3OGFjYzRjZTY1MmExZDU0OGFiNTE2Zjk5OCBsZWdhY3ktdHJ1bmsKKzY4NTk3IGJjZjY2NjNjNWMwNDhiYTlhMTdhYzRlYjdiM2VkMjY3MWYxMDBjNDcgbGVnYWN5LXRydW5rCis2ODU5OSAyZDQ1M2IyMjFiZWNkN2U0ZWFhZDBlZTNjMmZiYjE3ODc1ODc3ODFhIHJlbGVhc2UyNi1tYWludAorNjg2MDAgMGVmMWU2NjRhNGE0NWEyOTBkYWEyOWZiOGQ4ZWM2MTcyNTkyYjlhOSByZWxlYXNlMjYtbWFpbnQKKzY4NjAxIGUxMWM5OWUxZTZlN2VjODAxNjJjYzg4MTBmZDc4MDNmZTczOGZjNTEgcmVsZWFzZTI2LW1haW50Cis2ODYwMiAyZDVhOWM3ZTliNGUzMGI5ZGIxOTFhNjM0Yzk3OWJiZGY2NWRlMWE3IHJlbGVhc2UyNi1tYWludAorNjg2MDMgNDgzMmEwYjEyODdiN2M2Yjc5YzQ2NjM5MDViMTYzNzUxNWE5OTdjMyBsZWdhY3ktdHJ1bmsKKzY4NjA0IGQyY2MyNmJkYTZhOTM1ZTg4YTczMWYyNDY0OWYyOTZkOWZmMDQzZWMgbGVnYWN5LXRydW5rCis2ODYwNSAwNDEzMWM3MDJkMTcyNjA2NmQ0NjExYzJmNDdiN2I3YTVhMzJmZDY2IGxlZ2FjeS10cnVuaworNjg2MDYgMGUwNWUwNzhiY2VkMzMyNmFjYTk3NzA4OGRkOTM5YWRiMGIxMjc4ZSBweTNrCis2ODYwNyA4ZGY4MTk0MWRlMDVjZDU5Yjk2ODczOTAxZWY4ZGZhMmIwYjExMzBhIGxlZ2FjeS10cnVuaworNjg2MDkgY2ZmNGZjNTJjNzA4ZmQzYzAxMzAyNThmNmE0NWUxMTNiZjQxZGFkMSB0bGVlLWFzdC1vcHRpbWl6ZQorNjg2MTAgNjZiODFhY2FjYmMwNTI4M2YyZmU2MTIxYzBlZTRmOGUyNjhiNzBiOCBsZWdhY3ktdHJ1bmsKKzY4NjExIDMzNzhlYWZkMjdkZjU5YTU3MGZhYTVlYWYzMmMxNGYyMDFjNjQyZWUgbGVnYWN5LXRydW5rCis2ODYxMiBhZTVlZDE1Nzc0YjRmNTdhZDlhNzJhMmExZjFiYzc0YWM3MzA2MDU4IGxlZ2FjeS10cnVuaworNjg2MTMgZWJmZTkxN2QwZWVhMmQ3NWZiZDZkNDM4NWUzYzEyY2I5MzgwMzU5OSBsZWdhY3ktdHJ1bmsKKzY4NjE0IGQwMDg2YzE3NmU4MjRlMWQzZWIzOThhYmI4NjllZDgwMTIyNGZjNmEgcmVsZWFzZTI2LW1haW50Cis2ODYxNSBiMTdlYzRjNGE3YzM4NTAwYWViZGE5MzA3YmQ2OTZjMGIxZjIzODkzIHB5M2sKKzY4NjE2IGJiODZmMmVkMThhYWIwZTJjMjQwYjMxNWI1NGYzODI4NjZhNDIzMjkgcmVsZWFzZTMwLW1haW50Cis2ODYxOCBiZTU5YTIzYjdjMDQxNWFlYzFkODQwMzRmNmVmZDI0MmIxNTY1MWI4IGxlZ2FjeS10cnVuaworNjg2MTkgZTgzYWI5NWU5Yzg3YmRiOTM4ODI4ZTI1OTlmNzgyM2YxNzg1N2UwZCBweTNrCis2ODYyMCA0MjdlNDNkMGUwMzFjZjVjMGJjYzVlNjQzOWU0NGQwMDU4MzUxZmUyIHJlbGVhc2UzMC1tYWludAorNjg2MjEgNmRkZTBkZjNiYjRlY2I3Y2MyYWM5NWM1MGFkMmVlZWRmMTI2ZTgxZCBsZWdhY3ktdHJ1bmsKKzY4NjIyIDY1YmViZTRhMWFhM2Y5MWY1MTNlYzdjNWZiYjlkNjZmMjQ3MWJkYmQgbGVnYWN5LXRydW5rCis2ODYyMyA4ODRjZDNmMTliMjBlYzZmOTUzZjUyOTM2MjQ0YzE3MTA2ZmZkYTRkIGxlZ2FjeS10cnVuaworNjg2MjQgMjY4MGE0YmVhZWExODY5YTA0Njk3ZWEyMDFiNTBiYzJjMjM3ZjA5MSBsZWdhY3ktdHJ1bmsKKzY4NjI4IGFkYjIzNjllYjdiYmQwNjJmNDE5ZTkzMjFjMDVkYjE3MDRlNTk1YTkgbGVnYWN5LXRydW5rCis2ODYyOSAxMmE1YjY3ZDU2N2QyMjFlOWQ0NTEzODM1ZjlmYTY4ZjdiYmM5MGUxIHB5M2sKKzY4NjMwIGM2OTk1ZGFlOThhNjljODNmM2Y0ODFmNDk2MDZmYmExNzNjZDJhODUgcHkzaworNjg2MzEgYTA0YjFjNzE2N2JhZGRkZmE4MmU5Mjc2ZjIxZWI3MjczM2ZjZjY0NCByZWxlYXNlMzAtbWFpbnQKKzY4NjMzIDhiZTE1OWQ2ZmQ0MDQzY2M2ZjYxY2FkZmM2YTM0ZDFkYjExYmM5ZWIgbGVnYWN5LXRydW5rCis2ODYzOCAyY2M0MmVmZGQzZmVkZTUxY2JkZjcxOTYxNDdiMzI3ZDRiZjc2NTM4IHB5M2sKKzY4NjM5IGMxMGY2ZjExNmFmMGMxYThmZDEzNjY0NmFiMDUwM2IwNThkNTI0YWUgcmVsZWFzZTMwLW1haW50Cis2ODY0MyA3NDlhNmI4NTMzNzZiNjk1ZDY2ZGFmMjUxOWEyMzExNDk1MTdlNmQ2IHB5M2sKKzY4NjQ3IDBiMWE4ZjU2MTE3YWM3OWY4MTE5ZDEyMDgyZWQ0ZmZkMDJlMTAyZjMgcHkzaworNjg2NDggY2IyOTA0ODJhMWE3Zjk4OWQ0ZDllM2QyMmY5ODRkNGVjZGYwN2M2YiBsZWdhY3ktdHJ1bmsKKzY4NjQ5IDFlMmQ3ZjA3NTMyNmE4YWJmMzM3MGRiZWY5NDc2NzY1MDY1NjA3NjIgbGVnYWN5LXRydW5rCis2ODY1MCAxYjgxNzcyY2Q1OWQ3ODk5NzMzMTQyMzBlOGZmZTBkNWNjMTUzMTc5IHB5M2sKKzY4NjUxIGRmM2ZhNDBmZGJlZGEzYTk3OWVmMDAyZWVjYzNjNzE1MGJlYzE5NTkgcHkzaworNjg2NTIgN2JjOGUyZWVkNjkwYmMwNDcxZGExOGUwNmIwNzY5ZTNjMjA0Zjg2OSBweTNrCis2ODY1MyA1N2VkZjgzNWRlYTM2NjEzMzZiNGI0NzlkOTdkNDhmZWYyZGFjYzg2IHB5M2sKKzY4NjYxIGRjMzFiZTUwYzQwNTM0YzQ4YTAyNzdmMzIzZDhjOTcyMmRiOTE3ZDUgbGVnYWN5LXRydW5rCis2ODY2MiAxYWFkN2QyZTg5NDU5NDg1ODM5NWViOTZmOWY3MTI3Y2U1OWVkMWVjIHB5M2sKKzY4NjYzIDQ4NmUyNTc5Yzk3OGI5ZDI4MDk0YjY3Nzk5ZWJmMzNjZjE0OGJiNzYgcmVsZWFzZTI2LW1haW50Cis2ODY2NCA4ZGZlM2M0YWJkNWIxMTY2MGUwNTZmOTBiNjdjMjdmY2JhMjg1ZDczIHJlbGVhc2UzMC1tYWludAorNjg2NjUgMjdiYTgwM2JkZWE5MDU3MWJlZjFiN2IzYTBiOGM0NzJkZjhjZGJjNyBsZWdhY3ktdHJ1bmsKKzY4NjY2IGFmMDJiNmU0MjE0MmIzNDZhMjA2OTYyMTFjOTFiNWU4NjJjZTY4N2UgcmVsZWFzZTMwLW1haW50Cis2ODY2NyBlMTU4YzcwNTExZmVhZGI5ZmU1NTM3YTdmZGY3YTQzM2UyMDk3NWYzIGxlZ2FjeS10cnVuaworNjg2NjkgZTU2YzVmM2I2ZTE4ZmE2OTYxOGIzMTEyMjczYThlYzI0MjNlZDg5ZiBweTNrCis2ODY3MiA0M2UwYjFlZTFjMWI5MjdkZmZkNzAyNzg4NzRmOTEyZmFlZTk3YmNjIHJlbGVhc2UzMC1tYWludAorNjg2NzUgYTYwYjg2YTczZTIwNDI2YmQyODBmZmJkYWU3MmIwOTdhYjU3MDY3ZSBweTNrCis2ODY3NiAzNWJmOGY3YThlZGNjMmQ0OTFjZWVlNThkYjgxYmVkNDgyMGRhZDlkIGxlZ2FjeS10cnVuaworNjg2NzcgZGIyMWQxMjFiYTUzZjVkMzMyYjg2MzVjMzY2MDc3ODBkNmRhNzE2MSBweTNrCis2ODY3OCBiYjljNjUyNGZkY2E0NTkxOTE1YjFkOTdjYTgzZjZjNDU4MTBjMDk2IGxlZ2FjeS10cnVuaworNjg2NzkgNTYyMDUyYTAzNDc2Zjk3N2IyNzYwODU1NDg0OWRkNDJhZTU5M2M2MiBpby1jCis2ODY4MCBhMDI5YzU3OTBlNDFmYzJjN2MwYjExMDQ3MmVhYzU3ZDNhNDY5ZDBkIGlvLWMKKzY4NjgxIGQ3MjIwZmViN2QwYjg4MGI1NDFiNDRlY2Y4YWM2MjQ5ZjU5Y2Q1ZGEgcmVsZWFzZTMwLW1haW50Cis2ODY4MiBmMzk2OWY0ZjQ5ZTM2N2E3NGZiZTJkODZmMTAzZjUyMzE2MDc5YzY1IGlvLWMKKzY4NjgzIGIzYzE5YjY3NmY1ODY4M2JmNDQyMjhkYmFhODBlOTQyOGY1ZWU1OWQgaW8tYworNjg2ODQgNjI2ODI0ODcyMGQ2NjRjYTFkNjQ0Nzg5ZGY2ZmY0ZDQ1ZDE5MTU5ZSBpby1jCis2ODY4NSAzYzU1NTFhOTRjN2M5OTg4YTkyYjUzNGM4NTc2NzViYWQ3M2VlN2ZlIGlvLWMKKzY4Njg2IGQ5NmY1M2Y2NzdkYmVkMGM3ZTBmYTE0ZTlkZDY3NDlmYTVhZDEwMzkgcHkzaworNjg2ODcgOGFiNzBlYzJhZjViYzMwOGFkNzZkY2Y5YjVhZDA0YTNlM2U4MTNhYSBpby1jCis2ODY4OCAwZGRjMjFkZjk3OTliOWM2M2FhZDNkNGM1ZTQ3ZGE1YThkZDNiZjVmIGlvLWMKKzY4Njg5IGFlZDBjNzk4MDllNDlmMGZiYzdlZmQ5Y2YzMWEwZDNlODk1YTgyYjYgaW8tYworNjg2OTAgNzUwMDlkNDg2M2M5ZDM0MzQ1YzcxNzQxOTIxNzY1MWNjZmFhMWEwOCBweTNrCis2ODY5MSAyOWVkZjI2YjljMjNlZmRkZjBkM2YwYTdhZTEwZmI0M2Q3MjllNWFjIHB5M2sKKzY4NjkyIDk5ZjNjMzRkNzMyOGUyYzFhYTJkM2U0ZTJjN2VjOGRiOWRkZWEwMmMgcmVsZWFzZTMwLW1haW50Cis2ODY5MyA4ZWExN2YyN2RhNjdkMjQxYzBkYTRmYjJkYWQ0ZGEwOGE1NzEwM2UxIGlvLWMKKzY4Njk1IDUwNzg3NGY2NTVhY2JhNDI3ZjE0YWM5MWMyMDVhYzA4MWYyYTg1YjAgcHkzaworNjg2OTYgMzNjNGY0MjNhZWJmMjEyNzdjNzM3YTYxMmQyYmUwOGMzNzlmMmIyNyBweTNrCis2ODY5NyBmYTY1MWExYzM0Y2M2OGE4NjE4NmY5MTJiNDgyZDc1M2NjZmJlNTQxIHJlbGVhc2UzMC1tYWludAorNjg2OTggYWFjNTFiNzBjNzRjYjJiMGYwOGQ1NDhmNDExYjEyMzY2ZTc0OGRmNyBweTNrCis2ODY5OSBlMzUwNDMzNWY0ODBhNzFjM2I4YWMzZWM1NTJkNzFhNGUzMGExODY4IHJlbGVhc2UzMC1tYWludAorNjg3MDAgNDI4ODU0NmE0MjM4YzJlNDhkZGJkYjRkZjM1ZWYzMzJiYjZlMTFiZSBweTNrCis2ODcwMSA2ZTk3ZDcxZDYxYzI1Y2IxYjM5OGU1YmJmNTVjZDNiMWE3NDgyNDRkIHB5M2sKKzY4NzAyIDFjZTFiZmJlNzA1MWRlMTdjZGNjNzI2MjAwOTJjNmI1NTZmZWE1NTcgcHkzaworNjg3MDMgOWM3ZjE5OGY5YjI1MjBmOTA1NDRlZmJmZjI0YjY2MzZiN2FjNWRjMyByZWxlYXNlMzAtbWFpbnQKKzY4NzA0IDIwYmQxMTc4ZmM2NDJkNjk1NjBiNDU3YWMwMjk2YjdjZTZiNzFhMWYgaW8tYworNjg3MDUgYjljYjM2NDY1ZGQyYTA3ZDFmMDk3ZDdjMzc3MzRiZjI3YTNiNjE4MSBsZWdhY3ktdHJ1bmsKKzY4NzA2IDEwYzM4YmM2NzM3ZGViNGUyZGI4NDRjOTNmODg5MTY1ZmQwN2Q2ZDMgbGVnYWN5LXRydW5rCis2ODcwNyBlNTU0YjhiYmRlZWFhOTIyZDAwNGQzNDExNWNmM2VkN2JlZjU3YTg4IHB5M2sKKzY4NzA4IGI0YmFhNzI1Mjg0YTZkMjhiOWU0YzAwZTBkMjA3YTViMGY0YmRlZDkgbGVnYWN5LXRydW5rCis2ODcwOSAwOTk2MjcxZTIxZDhjNGM5M2UyMDg0MDM4OWMzOGIxZWVmNzYzYzRkIHB5M2sKKzY4NzEwIDllMmFkNDQwMTk2YmYyNDQwYTA0N2NkM2RlYWY5MWI4YjkyNDQ4Y2YgcmVsZWFzZTMwLW1haW50Cis2ODcxMSBlOTFmNjRmNWQ5NTU4MjFhOGYxOTVmMWE1MGM1NDcwMWVkZTdlY2Q1IHJlbGVhc2UyNi1tYWludAorNjg3MTIgYzg2MzQ3YWM2NjYzNTIyMWJjNTgyNmYxYmNlMjg5NmQ1MjMxNzE5OSBweTNrCis2ODcxNiA0MDhjOGRjZjAyNDhhMTY5MTdlZDg1YmY2NjEwNWM4MjBiN2MxNjAyIHB5M2sKKzY4NzE3IDQ0NDI0OTU3ZWFkZjY3MDUzNzQyYmRjZGY2ODJmN2Q3YTEzZmY1ZDkgcHkzaworNjg3MTggMTg5ZDUwODMwMjk3MDU1MjViYjRmOWI4ZWZlYzIzMDczMDMwOGExZiBsZWdhY3ktdHJ1bmsKKzY4NzE5IDhmMzJiYTUyYjIwZDg5MzU5OGJiZGNiODQwOTBlOGNkMDg3YzgzNmMgcHkzaworNjg3MjAgZDJkYzZkMDQzYzIxZGE5NzA4YTA5NzdlY2IzY2U3MzgwMWU0YmM4ZiBsZWdhY3ktdHJ1bmsKKzY4NzIxIGJiZGEzMWRkOTc5NzViZGQzNWMzMTRjODFjYjQzOGEyMzdjYmZmMDMgbGVnYWN5LXRydW5rCis2ODcyMiA5YmJiOWFjMDYxYzBkNDhmZDQ4OWExM2IzYzc4Y2E2NjY1YTM3MWY1IGxlZ2FjeS10cnVuaworNjg3MjMgODMyNWViMDQxOTIxMGMyYjY3N2UwN2M2ZDk5ZDVmMWRjOWQ3MzMzZSByZWxlYXNlMzAtbWFpbnQKKzY4NzI0IGY2YWVmYmJkNzA0NWU5ZGNiYjg1NDQ2OTJkYmZhMTQ3ODg1MjU1ZWYgbGVnYWN5LXRydW5rCis2ODcyNSAxMWNiZjM5YzMxNmY3Zjc0NWIyNmEwMGI2ZWM5MzAwZjYzZGJhYzVlIGxlZ2FjeS10cnVuaworNjg3MjYgZDcxNTgzODYwNjM0NjcwYjgzYzMzMzM4ZjY1MmUyY2FjYTBjNzBhZCBsZWdhY3ktdHJ1bmsKKzY4NzI3IGU3ZDZlNWY1MTllZjI1ODExYjlhMDg2ZTJjMWE3YzExMTU3ODQ4Y2UgbGVnYWN5LXRydW5rCis2ODcyOCA4ZGM0NzliNjNlMDM2NzNiMjg0MjY1ZDA2YzI3NzMzMzQ1YTcxNTlhIHB5M2sKKzY4NzI5IGE4MTk5MjdjMmExMzk4YzhkZjEwMDM3ZjkzNWRlNjk3ZDYxYTk1MjkgcHkzaworNjg3MzAgZjNiYTVmOTlkYTUwZDBiMzYzZDc5YTBiN2ZlMjUxYWY5ODRmNzBkNSBweTNrCis2ODczMSBiOTJlNjk1ZDU2MWU1YTgxMDc4MzhhMWZjY2YyMmI5ODEzOTEwMjczIHJlbGVhc2UzMC1tYWludAorNjg3MzIgNzU4Nzc5OWNhZTFjYjBkMzE4NTEwYTk4OGU5Mzk5ZTcxYTliNzYzYiBweTNrCis2ODczMyA3ZTVjZmJhNTRlMzQ4MDFjZmZmMWZjZDY2N2JlY2RmNjJjODA0ZDAyIHJlbGVhc2UzMC1tYWludAorNjg3MzQgNmE3NmFiZDYxNmRlZGIxNjQxOTkwMGU5NmNjNTFjZTk2OTQzNDU2NyByZWxlYXNlMjYtbWFpbnQKKzY4NzM1IGFlM2ExMDYzMDZhODA4YjM4NGViYzYyNjIzOTgyMjBjOTcwZjYxM2MgcmVsZWFzZTMwLW1haW50Cis2ODczNiA1MGY1YzI5ZmNlMjZkMzFjYjg0ZDZiNDdhYWE2YTRmNWNmNGExN2IzIHB5M2sKKzY4NzM3IGMxYzQ0YTBhYjQzOGU2YWIyNzg3Nzk0ZTc4YmE0ZjFlOTk4Yzk3OWEgbGVnYWN5LXRydW5rCis2ODczOCBjNTEzYzY5MTE4ZGNhNjE0NDIxZjE5M2JjY2ExMWE3OWE4MDhmODA5IHJlbGVhc2UzMC1tYWludAorNjg3MzkgNWI0OGQ2MDAwOTE2NzYyNjgxNmU5NTk0ZDRjNTYzMTVkYjUxN2ZjZCBsZWdhY3ktdHJ1bmsKKzY4NzQwIDllY2JkOWExMDFkODM3ZDE1NzMxNDI2ZmM4YjExZDg4OTdkYjljMDggcHkzaworNjg3NDEgNDlkOTcwOGQ3ZWEzOWFlYTE2Njc3MGU2ZGMzM2RhMWUzYWViYTg0MyBpby1jCis2ODc0MiBjOWU1YzJjYTYyYzNlMmMzZTljZjg0MTA1NGE0MDQzNDgyNDc3Y2I5IGlvLWMKKzY4NzQzIDlmNjI3NGZkN2E5ZGY3YzM3YTgyMGJiZjI2YjRlMjUwYWVkMTUyYjMgaW8tYworNjg3NDQgZTE0ZWM2ZDE4YWI4MWY1MjNlYWYzZDM1YWZmOThlNjI4YzAzMmFiYyBweTNrCis2ODc0NSAxZWMzNWJlZWQyZDAxNGRjZjYxMWFjYzAwNjJjNzQ4NWU1ODdhMTRjIGlvLWMKKzY4NzQ2IDlmNDVmYTI3YjgzOGFlMGI2OWY3MDI1ODI0MjUyNWFhNzQ5NGQ5MmYgcHkzaworNjg3NDcgYmFkMzZmNDkyMDgxZTdkZDFiMzkzZGRlYmJlM2M2YWRiMDczZmNkYiBpby1jCis2ODc0OCA1ODFkODYwMmYzZjc0MmY0MDMxMjgzNjA1ODcwYWU4MjJiZTk3M2EyIHJlbGVhc2UzMC1tYWludAorNjg3NDkgMWIyMjllN2Q4MThiZDUyNzQ3OTQwMTU3Y2YwNzFjMzZkZThiOTg3MSBweTNrCis2ODc1MCAwNzg4ZDQ1YmY3YTQ3ZTk0NzBkMjdiYTFjNTAzZWJjOWViYjc2MGQ1IGxlZ2FjeS10cnVuaworNjg3NTEgZmI3ZjIzMWNjZDNlYzc3NzFjZWYxMWVkZGRjZGQzZDRmMmE0YzQ5YSBweTNrCis2ODc1MiA1OWRlMDY1NDcyMzJhNDkyOGMzYmRiZjU2ODE1NzBkMGIxNzFlMDc3IGlvLWMKKzY4NzUzIDU5ZWYzMTViZjAwZWZjZmE1MjRkNDI1ZTA4YjAwZjNkNzA0OGFmNDEgaW8tYworNjg3NTQgNjU4MThjZmQ0ODI2NWZkMjIxM2QxMWVjOTc3Mzc3NDJiZWQ0MWRjZSBpby1jCis2ODc1NSBhOTkxYmU2YTExMWQ4Njg0ZmZlY2Q5YmM0ZjUyNjdiMDg4YzFmZDM3IGxlZ2FjeS10cnVuaworNjg3NTYgMWMxNmVkYTMxMDllNTQ1NGY0M2MwNDRiNGUzOTUzZjE4M2I1M2MwZiBpby1jCis2ODc1NyAxZmFlZDdjZWQyNDI0NThlN2Y2ZDVhYWI3N2I3YzFkOWJlMzk2NzNjIGlvLWMKKzY4NzU4IDY1ZWY0NjI5MjFmNzM5MjZkYjczOWZmY2ZlMWVkNTBlNDM3OWY1NWIgaW8tYworNjg3NTkgZTEwOGM5ODA2Y2MzZjIxMDJlZjM4OGE1ZjRlNmJmNThmMzhiY2E4OSByZWxlYXNlMzAtbWFpbnQKKzY4NzYwIGE2NjExNjE1Yzc2YmFmZjVjOTEwYWJiMGViYzdhZDM2MTlkNTgyMmIgbGVnYWN5LXRydW5rCis2ODc2MSA2MTE0NjFhOGM3ODUxYmQwNTUwYjI4OGNlOWFiMDgzNWY3NDgzOTVkIHB5M2sKKzY4NzYyIDFjMTdkNWNiMTVkZDU5OGFjNmNhNDlhOWM0ZDNmY2FhZjMxZTAxYWEgcHkzaworNjg3NjMgMzkxODdiM2UxMmUwNTEyOWIzNzhmNTEyYjQyMjQwZTg1NDQyYjQxZCBsZWdhY3ktdHJ1bmsKKzY4NzY0IDA2MWM1MTI5NWQzMjZkZGE0NWVkOTA3YjI0Y2FkZTA2Y2U1Y2IwNDMgbGVnYWN5LXRydW5rCis2ODc2NSAxODQ0MWI4ZjcwMDBjMDUxZDkzYzAzOWYyNGM3NWRhNzIxMTA3MTcxIHJlbGVhc2UyNi1tYWludAorNjg3NjYgZTdjMTAwYWY4MWVjMjhiZWZhNTMyNDQ3ODBiYWNkZGI3N2U3NjE3NSBsZWdhY3ktdHJ1bmsKKzY4NzY3IDM1MmYyOWRiNWViZjYwYjg3ODA2OGQ2ZDg5MWJmY2MyM2I4YjFhZDYgcHkzaworNjg3NjggOTVlOGQ4NTU5NGJjOTJkMGY0ODZjYWQ2MDJkMDQxMmM3YjE0NTQ3ZSBsZWdhY3ktdHJ1bmsKKzY4NzY5IGZhZTk2YmM5MTk2ODQ3OTVlOWExMGMxZWNiMDVhNzk1M2Q4NzExMjAgcHkzaworNjg3NzAgYmEzNGRlYTVkMThjM2YzYTBjZTYyOWM3ZmRiYmRlZDFkNWI1ODhkMCBweTNrCis2ODc3MSA0ODhlOGU2ZjFjZGM2MzNkMjExYmFmMGNiYjM5MWY2NzA3MDg1NTY1IHJlbGVhc2UzMC1tYWludAorNjg3NzIgNmVkZDI5YTM0MzU0OGYyMmQxNmY5MjhiZDdkMDY5NWEyMzM4ZGFmZCBsZWdhY3ktdHJ1bmsKKzY4NzczIDdjZmI1OWUzOTc4MjYwOTA0MmE1Mjg1Nzc0N2I3YzY4OTEwZTA0MmMgbGVnYWN5LXRydW5rCis2ODc3NCBhZWIyYmRlMjAzYWFjZDlmMDM5ZWNiNzNmMzM4NGFmYTJmMWY3NjM3IHJlbGVhc2UyNi1tYWludAorNjg3NzYgYWFmOTZlZmM2MWU1NDJkYjMyNmEyZjY2YmQ2YmRjODIwZmNkYjliZCBsZWdhY3ktdHJ1bmsKKzY4Nzc3IDAxNWVhN2IyMTk1MGEzODNjOWEzNjA3YTE4ZTE1MTM0NzE1MDZmZGMgbGVnYWN5LXRydW5rCis2ODc3OCBhMmY1ODIwNGU2ODBiODdhZTM0ZjkyOGIxYTQwZTMwMzAyMDQ5YTVjIHB5M2sKKzY4Nzc5IGZhMTJjOGU1YWU4YWNiYTg2NmVlNzY1OGQxMmJmN2U2NWYwOTQ4ZjQgbGVnYWN5LXRydW5rCis2ODc4MCA3NWJjZWMwMTFlZWY2ZDJkYTVhNjZiNjk1NDI0YmIzYjI3YzQxOWMyIHB5M2sKKzY4NzgxIDYxMWQ5NTcwYjRjYWIyNGY2ZTFkOTk1YjJlNjAwNTMyMmNiMGEzYjIgcmVsZWFzZTMwLW1haW50Cis2ODc4MiAxOWZhNmY5YWI1YjUwMDczYWIzMmRmNmYzNTJiNmFkNjEyYWE2ZDE1IHB5M2sKKzY4NzgzIGNhYTc5ZDIzODkxNzJhZWFmNDg5MDM0YmYwNzY0ODEyYTBkNDBjMTUgcmVsZWFzZTI2LW1haW50Cis2ODc4NCBhZjM2YmExMjNjMWQyYWNmYTI0NzQ4YjUxOTk0NjdiYmMwNmU0ZDhhIHJlbGVhc2UzMC1tYWludAorNjg3ODUgYzNhMGVlNTFkODY3ODEzMGM1MDkwNjRjZGZlZTdjMzAxMGM4M2YxMCBsZWdhY3ktdHJ1bmsKKzY4Nzg2IDJmNTRlZWZkMDA3M2ExN2EzNmQ5YzQ3ODE3MTMzNDBmNThkZDc5NDEgcHkzaworNjg3ODcgNjA2N2ExZTYyODlhMTM1N2M3Zjk5MTNiZGViY2ExZTNmOGVkY2ZkZSBsZWdhY3ktdHJ1bmsKKzY4Nzg4IDUzN2U4ZDcyODQyNDY5NDljNTlkOGEwMTc0OGU3NjU1OTA4MGZjMDMgcHkzaworNjg3ODkgMTkxYjdiM2RkZjRmYTRjZGJhNWEzMzFiN2NkM2E1MWE2MDA4ZGNjMCBsZWdhY3ktdHJ1bmsKKzY4NzkwIDM4MDIxYjhlMTRhYWIxMjc2ZjA3MmMxMGVkOWMyMjcwN2FjOTFiODkgcHkzaworNjg3OTEgYTYzZjdjZjM3OTNhYmZlMGFjNjdhMzMwYjc1ZjYwYjM4OTcwN2NkNyBweTNrCis2ODc5MiAzOTA2NjhlMjA2MjhlNDBjODMyZDRjMjVmYWZiMzYwNmE0NTkyYWE2IGxlZ2FjeS10cnVuaworNjg3OTMgOGQ2NmI4MmExMGEzMDg4YzYwYWRmODQ2NDA5ZmE3YWY2MzU2NWVlZSBsZWdhY3ktdHJ1bmsKKzY4Nzk0IDZhNmI1OTA5MTJmZTZmMzIyNzY3MzlhMTU4MjRjMTcwY2IyMDViYzYgcHkzaworNjg3OTUgNWRkODc5ODY3Y2RlMjAyNjBmMzkwYmJlOTgzMmUzMWRjNjIzOGJmZiBweTNrCis2ODc5NiA1YzNiZjMxZDA0ZmQ2YThkNzE5NjkzZjFmODJmZjc1YjI2NWJhNmJjIHJlbGVhc2UzMC1tYWludAorNjg3OTcgZmUyODcxYWFiOWQ5ODg0OGQzZTIwNjk5OTRkMzFhYjBhODIxZDJhNiBsZWdhY3ktdHJ1bmsKKzY4Nzk4IDIzNDRjZWY3ZmY0NDQ3NDU0ZDk2MWE4NTQ4YmMxN2I2ODVkY2FlMDIgcHkzaworNjg3OTkgNWEwNDFkOWE1MWNkNjZmYmVjNTIzNDUzNWJjOTQ1MWRkMWFhZDgyOCBweTNrCis2ODgwMCBjYzlkZTE5N2RmN2UxMTkxZDE2ZjYxZDM5YTk4ODA5MTY2NGM1YjIyIHJlbGVhc2UzMC1tYWludAorNjg4MDEgY2MwNzhhNTc1ZWVkMzA3Y2Q4OTAzM2M3MzExOWI2ZDczMmJjMWQzYyBsZWdhY3ktdHJ1bmsKKzY4ODAyIDFhNjRkMmY1NmI3OThmZjYwMzk2YTYxMjNkYWEyODAyODUyMjkzNTAgcHkzaworNjg4MDMgYTgzMjY3YWQyZmQyNzIwNTRjMWFmZDRmOWYwYzJjZmRiY2UxMGFjMyBsZWdhY3ktdHJ1bmsKKzY4ODA0IGZiNzFjMTU2MjBlZTZmOTk5ZDk1YjMyYzA4ZDY4MzQ5ODY1NjgwOTMgcHkzaworNjg4MDUgZGJjMTRhY2RkZTM3ZjE4ODk3YWIxMzJiODcxYzljNjRlODRjMGU0ZiBsZWdhY3ktdHJ1bmsKKzY4ODA2IDFmMTQ4NDI0ODhmMDhmYWI4ZmNiODQ1YTI0ZGQ3YTFmMTY3N2M0OWQgcHkzaworNjg4MDcgNjFmMWNiMTZlN2I0MmU3OTZlZmEzMGNjMzA5NjY3YzI0YmM1NmNkOCBsZWdhY3ktdHJ1bmsKKzY4ODA4IDM2ZTI2NmIyZTQ2MDk4ZWJjMzFkMGM4NDkyOGI2MDYxMWQ2MGZmZDggcHkzaworNjg4MDkgYzdiYjMzMjA3NDk1YThjYjFjNzJiZmM3YmJhYjEwMDQwNWEzY2NkNiBweTNrCis2ODgxMCBkZDU2MjQ0MzliZTUwOGZkNDQyZWE0NDU2NGU3NmU4YzBjMTRjZjZlIHB5M2sKKzY4ODExIDczMzM4OGFjZjBiNjVjYjc5YmZjYTY0MmM5M2FjMjZiNzJkYzdjYjIgbGVnYWN5LXRydW5rCis2ODgxMiBmMTM1Mjc0ODRiYTNhYjQ0ZjZhMWMzNDUyMGUyNmYxZGMxZTM4M2MzIGlvLWMKKzY4ODEzIDQyNGE1MDliZWJmZWEyMDMwZjhlNTZiMGMzOTJkNjA4OTJhMzVkMTIgbGVnYWN5LXRydW5rCis2ODgxNCBkMWRlMDc3NDQ3YWE0ZjM0YTMxY2RjZjAwMTkzNDE3NjkyOTNiYTJmIHB5M2sKKzY4ODE1IDMyYTIyZmExM2I5OWM3OTYwMzBlNTgyMTBlZmExNDNkNDQzMDY5ZWQgcHkzaworNjg4MTYgYjIwZTIxOGQ2ZjAwZjc4OGJjYTRkNWE4NTRiNmY0MzlkZjY1MDYwMiBpby1jCis2ODgxNyA1YTg4MGJkYTZhNmI3ODVmNDU1MjRkYTdiMDY3ZjM0MWE1ZjgyZDFjIGlvLWMKKzY4ODE4IGE1N2QxMGQ2YmM4OTMxZjAwMDIwNjE3NmQ1MDVhYTBmMmNhMTllYTUgcmVsZWFzZTMwLW1haW50Cis2ODgxOSBhYjBiMzg1YWVmYzNlOWI2MDQxMjJjM2M1ZDk4MTg2ODNjMWJiZjA1IHB5M2sKKzY4ODIwIDlmMjk0ZWIzODE5MGU2NDM0ZDU1MzU1MTI5NDRlYzRhZDJkNjUwMzYgaW8tYworNjg4MjEgYzc3NTIwN2NlZGFkNzk0MDU2MDk1NjQ5YTZmMGI3MjAwNGMxYzRlNiBpby1jCis2ODgyMiA1MzkwMWU2NjkxYzM4MjQ4ZjExZDRjYjVjZTk5MmE1ZGQ0ZTMyZWFkIGlvLWMKKzY4ODIzIDBlNzlkNWEzNzIzMzgyMDM2M2Y2YWI5MzNmNzc0MWM3ZThjNGUxNTMgaW8tYworNjg4MjQgYzk0Zjk4YzU3NTNmOTcwYjVmMTEyNmU4NjNjODhiMjQwMzY0ZTFjYyBpby1jCis2ODgyNSA3ZWQ5YmVlZDg3MTU1MzMxOTI1Y2EwOWFmNzZmMzM1YWMwOTJlYzM3IGlvLWMKKzY4ODI2IDc2NmRlNDk2YTQyZDdmMGQxYTc0MmE4Yjg4NDYwOWY3ZTRhMTRkNGQgbGVnYWN5LXRydW5rCis2ODgyNyA3YzMwYWIwMTM0YTFmZTYzNDZmYWJmYTFjNzBmN2NkMzc4M2YxYmFkIHJlbGVhc2UyNi1tYWludAorNjg4MjggMmIzZWNkZTE3NmZlNTAxNzkzYzU1MDUwMjgwNWFkNzQzNjk1OGVlYSBpby1jCis2ODgyOSAyNTJmODI0YmI4MGIzYWMyMTcwOWZjOWQ3NWU5NTlmZGIwY2Q2NTExIGxlZ2FjeS10cnVuaworNjg4MzAgY2M1YjQ2MGZmMWFiMTI0ZjIyYzNlMmQ4YWU2OGIzMTUxNDJlNDlmMiByZWxlYXNlMjYtbWFpbnQKKzY4ODMxIDEyZTljNWY3MjY1OTA0OWViZjAzMjYwMmUzMDQ4Yzk5YTIyYjFkMTUgbGVnYWN5LXRydW5rCis2ODgzMiAzNWZiNGEyNjBhMjUzZDhmNzUwOGZhNjA2YjMzODJiN2QzOTNiNTI1IHB5M2sKKzY4ODMzIDY2OTI4ZGFkODFjYTE0OWI1MTBmMTNmNGNjYzU4NjBiMmYwMWQ1ZWYgcHkzaworNjg4MzQgNzEwNmZmNTZlOWQ4YmRmNjk2ZDZhMThkZDg4OGNmODE3MzhjMTM2ZCByZWxlYXNlMzAtbWFpbnQKKzY4ODM1IGI4OGNjN2UyYmZiNGMzMTNkNTBiYmFiZTI5NDBhMDhiNzRlNjA4N2QgbGVnYWN5LXRydW5rCis2ODgzNiAwYWQ4YzU2YTdhNzBkMGNiMDkxNDA1ZmJkMmYzNTg2YWE0YTdhYjI0IHB5M2sKKzY4ODM3IDc2MmY5ZjE4OWUyZTg2Mjc4ODQ1YjUxMmYyYTNlYTJkNGMxODIwNWMgcmVsZWFzZTI2LW1haW50Cis2ODgzOCBmMGM5NTUzNzhjYTNjNTFlZmZjYWFlNTMxMDc3NTUyOTgzZDM3MjIzIHJlbGVhc2UzMC1tYWludAorNjg4MzkgZDI3NDA2MjgxNmZmNjU4YzhkMmEzNDc2MzBkZjJjNGU3M2VmNGYxOCBsZWdhY3ktdHJ1bmsKKzY4ODQwIDBlYzM1NDcwM2QwMWNhYTRiZmQ4MTJmY2Y0NDgzMTQ0NGFmMWRhYzcgbGVnYWN5LXRydW5rCis2ODg0MSBhOTlkZWNlZGY3MmQyMjBhNTYwZjJkODI3NDFiZTA1NWNhYWFlNDdhIHB5M2sKKzY4ODQyIDg3NjNjZjJmN2UwYzU1ZmZkODAxNTMyMmY4YzIyMjE1MzI2NTQ2YzAgbGVnYWN5LXRydW5rCis2ODg0MyA4YmYyMDRhZjk2OTEwZTY0Yjg3ZTllMThjZmU2NTZiZDgxMTFmZTlkIGxlZ2FjeS10cnVuaworNjg4NDQgNzMwMGQ2ZmJkOTE0ZGJkNzRkYWRkNTgwZTY2ZjMwMTY0MTczZGM0MyBweTNrCis2ODg0NSBjYmU1NDY1MWUzYjk4NTM3ODRlOWVhMzRmNGNkNDY0MDJmZTBlNThlIGxlZ2FjeS10cnVuaworNjg4NDYgM2Y2MWY4MGU5MTMwZDE3NTM4YTZmMmE3Y2EyMzBiNjY4YWNjNDgxZCBweTNrCis2ODg0NyA0MDkyYTQwMmVkM2U3NTVhMjA0OTk3MmNiNDcyZTRmODk4YzZjMThlIHB5M2sKKzY4ODQ4IGVjNzBiMzkzZTE3M2Y4NGRkMGU5ZTE0ODY3YmViN2Q3OWI2MzIzZTQgcHkzaworNjg4NTAgM2M1YThhMzQ3OTkwN2YwZDM4MzAwNDdhOGZmZmUyM2EwNTk4ZWExZiBsZWdhY3ktdHJ1bmsKKzY4ODUxIDA1M2YzZTgyNjYwMTZlYzlhMGY0MmY3MzJlYTJkMmJiOTk2NzVjNzcgcHkzaworNjg4NTMgM2YxM2M2NWFlYzA1NmIzZmU1NDY2MTA0MGQ0NDM2NDEzNTBkZWM3YiBsZWdhY3ktdHJ1bmsKKzY4ODU0IGY1ZDdkMDYwOTExYWUxOTM4MzM0MmM2NThiZTc1MDQ5NTJkN2UyOGUgcHkzaworNjg4NTUgYjQwZTRiNTI5ZjY5YmFkODk5ZGZiZjQ5MDEwYTdiYjU5NTI4MjI5ZSBweTNrCis2ODg1NiBlYzZmMjk2MDhiZjA5ZmQ0NDlkZTZlYmUxNDQ3MzM4YjFkMDFhODVmIHJlbGVhc2UzMC1tYWludAorNjg4NTcgOGFlZDc4OGJmY2M4M2M3NTFkYmFmY2Q2NDI3MTBlOGFiMzZmM2JhYyBweTNrCis2ODg1OCAxZjBhM2FjOGJmODVkZTQ0MDRmZjRkYmI4MDc4MjE4MDhjYzYzZjcxIHJlbGVhc2UzMC1tYWludAorNjg4NTkgZGUyZGMwOWUxZjdlNjYxMWRmNDJhODYzZmU1ODQ5YzM0MmFkY2E2YyBsZWdhY3ktdHJ1bmsKKzY4ODYwIDI3MzVmYWM2YjBkNGQzZmYyZTAwZjJlMmZjZTIxN2EyZjE5YWZkYmQgcHkzaworNjg4NjEgZTRjODZkYzE4MWU5YTIwNDRlMDQ1MGY2MjQwNzNlODM2OTM4ZTk0MyBweTNrCis2ODg2MiBiMGI2MjFmMmFmNWRkZmM1MmZhZDM5ZWIwMGI4YjQyMDk3Y2VhN2I5IGxlZ2FjeS10cnVuaworNjg4NjMgNzJiY2YwYTBjYjMxZDQxYTM3YjNhOTc0ZTQwZWUzZjhkNTA0ZGQ4OSBweTNrCis2ODg2NCAwOTQwYTRmMjUwNmU3NzgyNDYwNjBjYjgzZGZiYzk0MDQ3YWQ0OWY5IHB5M2sKKzY4ODY1IGRkNjM4YjdlNzQ3ZTNmYTU1ZTZhNWE2YmVhNWE3YWU4OGU0YWU3MTYgcHkzaworNjg4NjYgMDljMTcxMjdhNGM5OTIwMWZjNTdiYmZkZWNmYmE0ODM2Yzc4ZjE1OSBweTNrCis2ODg2NyBjOTU0NDUwZjdhYmZjYzI1MWNkOTAyYjJhNGY0NDQzYzIzOWFmOGMwIHB5M2sKKzY4ODY4IDA0Yzk1ZmMzNzY1ZmVkN2M1OGE4ZjQzMjk3NTU1OTY3M2NjYjE3YzYgcHkzaworNjg4NjkgYWNlNzViMDZhNmY3NGRjNTk2Y2E4ZjRhZTQ2M2EyZGU5MzlmYzBmYyBweTNrCis2ODg3MCBhZWFhMjM3ZWJhZDdmNzk1YjcyY2IwYzg4OWZmOWY3ZTkyZmE1MGE5IHB5M2sKKzY4ODcyIDNiZjc3ZWExZGIzZTIzZGViOTQzMDMwNzE0YzY5NGVjNTkxZjU2ZGMgcHkzaworNjg4NzMgYTgyM2M5ZjNhNDUyYmMyMTkxODRmZDZiOWI1MGFiM2Y0ZTUyYmY4ZCBweTNrCis2ODg3NCBiMGQ1OTNkNDEyMTIwYzdhZjE1ODk1NWJmZTIwZGJiNzJmMDBlNmM1IGxlZ2FjeS10cnVuaworNjg4NzUgODU3ZDY2MzQxZmY5NDA4MjkzOGYxZDk4YmYyZDgzZmQzMmMxZjMwNyBweTNrCis2ODg3NiAwOGU5YmVkNmExZjg1ZjllNTY0NjVkZDg2NmEzYjE2MmYyMzcwOTZiIGlvLWMKKzY4ODc3IDFhZjRmYTE4YmNjMjA2NWFlNDFjOGYzZDcwNWM3MjE1ODZkYzcxY2EgaW8tYworNjg4NzggNTJmZjA1NzlhNDFmMTlhZjQ4YWE0NDJiMzdmZjQwYjk3ZmY2NjNhZiBweTNrCis2ODg4MSBhNGYyNWMzODBmOTZiN2YzZmYyMDY5NTI4ZGQ4ZTg0ZmUyY2MxOGQ2IGxlZ2FjeS10cnVuaworNjg4ODIgNWM3MzEyY2U1ZGJkMDYyZTg4MjA2MjUyNTEyNGFhMDM5ODI3MjE0NCBweTNrCis2ODg4MyAwNDhlYjVhODM0M2JlMDljYTc0M2FiZmM0ZmMyNTdiYzk3ZDU0OTJmIHB5M2sKKzY4ODg0IGJkNzRlODY2ZjljYWY4MTdjN2VkYTA5OTlhYTZjNDExNGMyMGMzYzggbGVnYWN5LXRydW5rCis2ODg4NSBmYzM4ZjJlY2QyYWMyNzczZGY4ZjY2ZWEwNzMwMzQzMWY0Nzg1N2E3IGxlZ2FjeS10cnVuaworNjg4ODYgNmY3NjFlNTcxNGUwOTE5ZDRhMjc2N2FkOTA2YzU5MTQyYjQxNmVhNiByZWxlYXNlMjYtbWFpbnQKKzY4ODg3IGNlZjBmY2M5MTU1OWViYjVkMTYwZWM5MTkxZGNiOWU5MDI2YzFiNWQgcHkzaworNjg4ODggYzliOWE1MDQxZWY1MjFmNTZiMWRkNGQ3YzM4OTczYTQ2ZmU2NGUxYiByZWxlYXNlMzAtbWFpbnQKKzY4ODg5IDU0MDYxMWFlNjFiODZmYWRhYTMzOTQ0YmZhODJkNzcxMzMwYzhmZWIgcHkzaworNjg4OTAgNGVhYzk5NDE1MzhjNWJkZWM4ZDI5ODg1NjgyMGRmMTRiZTIzZmMyYSBsZWdhY3ktdHJ1bmsKKzY4ODkxIGRiMGZmZWVlNmU1MDcwMzY5ODVjNjJiZmQwODkyM2YyOGNhOTI0OWQgcmVsZWFzZTI2LW1haW50Cis2ODg5MiAyNTAzNGM4MzI4YzdjZjdhZDUxYTRlODEyNTExNjIwYWNiYTQxN2VmIGxlZ2FjeS10cnVuaworNjg4OTMgZjFhZjQwODA0YWRlOTNiOWIzYjVhMmQxNWMwMGIzNzEwZDAyODgzZiBsZWdhY3ktdHJ1bmsKKzY4ODk0IDUxMzJhMTNmMTY5YTM0MTRiZWY3NWNmNDUwYWVhMzNiMjkyNzJiMjQgcmVsZWFzZTI2LW1haW50Cis2ODg5NSAyN2QyZmExOTA4NGE1ODJlNDY4NjNlNjdmMGUyNzFkY2EyYzNlNTJhIHB5M2sKKzY4ODk2IDdlZTZmYTA2MDJiZTkyNzEyYjA0ZGUyZGYzZjJhYzMyZGRjM2VkN2QgcmVsZWFzZTMwLW1haW50Cis2ODg5NyBhMWE1Mjg3M2Y5ZmNmMDY1Y2I4MzhiNGVjMThmMjJkNTZmOTE1Y2QzIGxlZ2FjeS10cnVuaworNjg4OTggZmViNGEwOTJiODcxYzY3ZWNkZjRjM2ZkMDY4ODIwZDU5OWYxYzZhMyBweTNrCis2ODg5OSBhNmE2MzY5Y2ZiY2NkYWRmOGE2ZTU5NGY1ZTNkNWFhODc0ZmZkNzZkIHJlbGVhc2UyNi1tYWludAorNjg5MDAgOTlmMGIwMjY1NTE2YjI0Mzk2ZDMzNjQ2ZmQ5NWEyMTFiM2Y0MDM2ZCBweTNrCis2ODkwMSA1OWQ1ZTcwZjM0OTQyMzBkYmQwMTcxYzc1YTM2MDgzOWU2OTc3OTUzIHJlbGVhc2UzMC1tYWludAorNjg5MDIgNTc4ZGQ3OGZiNTU3MzUyZGE4OTg0MjgyNGNmOWFhMTZmMzI0NWFhNCByZWxlYXNlMzAtbWFpbnQKKzY4OTAzIDZkNTUxNzk3NWZkMjQ1NzM0YWU1ZjJmZjk5NWUzOTczOWVhMzk5OGEgbGVnYWN5LXRydW5rCis2ODkwNCA4NDNjMTc4NjhiNTJiNGY0OGVhZmU0ODU2YjhhM2E3ZTA0MjVmYWU3IHJlbGVhc2UzMC1tYWludAorNjg5MDYgODYzY2U2YzAzNjE3OWY0Yzc0ZmE5ZjcwYmNiOGU3MTg1NjViOTBhMiBsZWdhY3ktdHJ1bmsKKzY4OTA3IDAxMzk2NDg1MjZkOWE4ZmNmN2MxMzgzMDhjN2IwZTI0MzAwYmVmNDUgcmVsZWFzZTI2LW1haW50Cis2ODkwOCA5YTQ1ZTJjYWQ2YTFmM2YxYjRmZTMyMGJkNTg5ZGJiM2E4ZjJlMzc3IHB5M2sKKzY4OTA5IGY3ZjNkODQxZGEyYzZjMWZhNmUwMDE3ZDU5MjU3MjA2Y2JmNTA5NjQgcmVsZWFzZTMwLW1haW50Cis2ODkxNSBmNWJlNmNhZWFkMDNkODkwY2I1MWJkZGY5ZDIyYWFjMjQzZTZkZTBkIGxlZ2FjeS10cnVuaworNjg5MTYgNGU4ZjI4YjNlYTBhOGVmYTAzNTczMDczZTA3NGRjNTg1YTUzODEwNiBweTNrCis2ODkxOCBlYTU3NjdlYmQ5MDMyYWQ4YThiYjQ4YWU5MTU4ZDk4MDA1N2VlYjA2IHB5M2sKKzY4OTE5IGMyNmYxYWYyNmJmYzIyYWY5YTA5NTMzYjllOTFjYjkzM2VmZGY3MWYgcHkzaworNjg5MjAgYzRjNGU0YjFkYzFhZTYzMWVmOTg1OTFhOGYyMTUyYzA1NTBiNWNmMCBsZWdhY3ktdHJ1bmsKKzY4OTIxIDk5YzEwZDY0N2YzMjZmNjM2MThiMmQ4YzkxZTE5Y2ZiYTdjOTExNjAgcmVsZWFzZTI2LW1haW50Cis2ODkyMiBmZDhhZjQ2ZDM2MTU0M2M3NGY1Njc1OGVmNmQwMTJkZWEzMmM2NDUzIHB5M2sKKzY4OTIzIDJjN2QzNTY5ODgyZGUzNWNlZWEzNWRhYTk2ZWIwODRhOWEzMjVhMTIgcmVsZWFzZTMwLW1haW50Cis2ODkyNCBkODZlMjMzMThiNDE1ZGZhZGQzYjIxM2NjODk2OTUyODc3ODlhZWU4IHB5M2sKKzY4OTI1IDU1MTI1N2M4MDU4YWYwM2E3NDZiMGMwNTFmNzQ5YjMxODM1NTM2YjMgbGVnYWN5LXRydW5rCis2ODkyNiBlM2NlZWI3ZWI5MDEwZWU3ZmRkZTRhMTM1OTRhYmU5ZDJlZTg5MDAxIHB5M2sKKzY4OTI3IDIxY2Y5NmNjMjIxNjNhOTU2OTM4YzYxMDZjYjg1ZWJiZDQzNjNhNjMgbGVnYWN5LXRydW5rCis2ODkyOCAyODE5YTQ3MDZjODExMmY0YmE2YzYyYTdlMzczMTMxZmE5MmRhYThiIHB5M2sKKzY4OTI5IDdkNWZhNTIzNDFlMjMyMzAwY2I3YjkzMDg1N2IwOTk3MmUyNWY5MGEgbGVnYWN5LXRydW5rCis2ODkzMCA3NWQwZjYxOGUxZGVjNWFmOGRkODgyZDk3ZmFiNzc5M2EyYWE4NDhjIHJlbGVhc2UyNi1tYWludAorNjg5MzEgNTBmNDBmMmMzN2RkYTU3ZjRjMzg0YTFiOGJkZTA5NmE5YWJlMDhkNSBweTNrCis2ODkzMiBjYzgxMzBhZmIwMzkxMjJiOTQxMzUxMTM0ZDQ0Yzg3ZDYxYTMyNWYzIHJlbGVhc2UzMC1tYWludAorNjg5MzMgN2E1NzU5ZTg1NjM5NGZkNDczYmRmOWM1YTg0MGY1YzczMTgyMjgzOCBsZWdhY3ktdHJ1bmsKKzY4OTM0IDQ3MWJlMmM2NDU3ZWVhMzUyNTI4MDhiOTEyODU2MWExZDJkYzQ2MTkgcmVsZWFzZTI2LW1haW50Cis2ODkzNSAwMTEzMjE5NWY1NjI1MTU4ZTc4ZjI2YTFjNzdhZmI5MWRiMWIzOGJmIHB5M2sKKzY4OTM2IDMzNjlhNWFjYWY3OTgzNjVhZjRjNzgxMTg1NzYxYTQ1NTE5NWVmYTIgcmVsZWFzZTMwLW1haW50Cis2ODkzNyBjOWZlYTM1Yjg3M2VhMWE3ODM2MjNjMWVjNjM5Y2E4YTFkYjYwMzBlIHB5M2sKKzY4OTM4IDEwZjRhMTYwNDM4ODkxY2ZkMGU1M2ZkNWNhZTM2NTk3NzcxODI5Y2UgcHkzay1pc3N1ZTE3MTcKKzY4OTQwIGUwZDljNjU5ZjdhNmMwZTI3ODkxMzY0YjlkMGYzNzE0ZTkzZDJiNTUgcHkzay1pc3N1ZTE3MTcKKzY4OTQxIDE0YWNlMjA1NDQ3YmJlMjM4ZWFkNjQ1OGEzMzAxOGFmZWY4NGVjYjIgbGVnYWN5LXRydW5rCis2ODk0MiBlNDcwNWZmNjI2ZjA4YjQ5NGRkODJjMGY3MTRlZjg4NThiNWNhODA0IGxlZ2FjeS10cnVuaworNjg5NDMgYTUyMjkyMzdlYjUwY2JmMzY4ZjkwMDYyZjkwN2Y2N2U1OGVjZmY0ZCBsZWdhY3ktdHJ1bmsKKzY4OTQ1IDRlODJmYjFhZWIwMjIyYTBmOGM0ODBjNTJmODg4OTg3OTIyNzQ4MTMgbGVnYWN5LXRydW5rCis2ODk0NiA2YTkxYjNhZGNhZDZlNjA3MmE0MTdhYTAwZTcyYzk0Nzc4NDYwN2IyIHJlbGVhc2UyNi1tYWludAorNjg5NDcgYzg1MWVkMGNmNjVmYmM2ZWIzOGVkYTIwOTVkYzhjZjg3MzljMDQxZSBsZWdhY3ktdHJ1bmsKKzY4OTQ4IDA5NmI0ODg0MzhlOTI0ZWM4OWU3YzI4NDc1YzQ1ZTMwMjAyZmZlNWQgcmVsZWFzZTI2LW1haW50Cis2ODk0OSBjMTU1Y2IzOGY3NmQwZTY4MDU1OGY4Y2QwMTA4Y2Y3ZjU4OGQ2NWJiIHB5M2sKKzY4OTUwIDQ1YTUyNzZlNWRjYzY1ZWJlMmQ3ZDZkMzQ4Y2MyZWY4OTllZjQ1NjAgcmVsZWFzZTMwLW1haW50Cis2ODk1MSAyMWZiMTAxNDI5NGNjNjdlMjY3M2NhZGFkYzZiNmNiZjZiMDkyMzg1IGxlZ2FjeS10cnVuaworNjg5NTMgYjRhY2UyYjZjMjhmMGY0MjE1MTI4Yzc2ZjVhYjk3MTQ1Y2ExMGQzYiBsZWdhY3ktdHJ1bmsKKzY4OTU0IGZiOWQyZDJhNDM1OTU2NzIwYjY3ODBkZDRhOWRlMjczMWMzN2NhOTIgcHkzaworNjg5NTUgZGZhY2VjOGJhNmRiNGU5NjEyMjQ4ZWQ4ZWZlZjc4NzY5NWRjYWU2NSByZWxlYXNlMjYtbWFpbnQKKzY4OTU2IGI5NGU5ZWQzNTU5YzI3MzQxMzNkZDhjMGYxNDhkMjM1YWJjMTZhYzIgcHkzaworNjg5NTcgYzRkMzFmOTc5OTBlOTVjMjkwMDhkNTU4YjY1YjBlNTQ2MDQ3OWMwOSBweTNrCis2ODk1OCAwNGEzM2M0N2FiYjVmMTE3NzNiMGI5MGU5MzgyMmViMTVlNzY5MjJmIHJlbGVhc2UyNi1tYWludAorNjg5NTkgNTIwMzc5NGM3ZWEyMTQ3MmRmNmNkZjExNmQ5MTE4ZDU1YjU4MDRhZSByZWxlYXNlMzAtbWFpbnQKKzY4OTYwIDM1YzY5MzdjMDEyNzVjMWUwMjI2YWY2ZjhhYzZjZWZmMGI3YzQxZmEgcHkzaworNjg5NjEgYWQxZGIwYWU5OGM2YTg3OWE5ZWI4YWEzYWViNTA2ODM3MTMxYTE3YSBweTNrCis2ODk2MiAxYzUwYTE3YzBmMjFjOTYyNzkxNWIxNjU5M2QyMjQ3MmE5OWRiMWE2IHJlbGVhc2UzMC1tYWludAorNjg5NjMgNjk2MDUyM2ZhZGMxZTRiZmI0NGE2Njc3YWQzZDBlYmFhMWE4ZjEzZSBweTNrCis2ODk2NCBkNTEzMDI0ZjUxNzc1YmFhNWU4MDI4NzhhOTNjMDM2NTA4OGYyODdkIGxlZ2FjeS10cnVuaworNjg5NjUgYjg4NTA2MDZkOTIxYTBhZTgzODlkZDc2MWEwYWVmNjMzODAzMDcyMSBweTNrCis2ODk2NiAwMmUxYzVjZTZhNjlmOTZlYzE4MTNkZjAyY2IwY2Q1MTJhZGE1Y2NhIHJlbGVhc2UzMC1tYWludAorNjg5NjcgMzZmYmFmNzUzOGNlYzI1YmRhODBjMzhlMDcxNmEzODJmMjZmYTAwMiByZWxlYXNlMjYtbWFpbnQKKzY4OTY4IGQ0MjM3NGQwYWE1ODRiYTlmYTk0MDY4YzU0ZWZkNDIyMjczOGNiOGUgcmVsZWFzZTI2LW1haW50Cis2ODk2OSBkMzYyZGE5OGQwZGU4NTZhNjRhMDZiZmNjMWJmNzBhZjZjMTcyYWMwIHB5M2sKKzY4OTcwIGIwNDg5NmNhYTI5YmU5YmJlZWI4NzQwM2EyMDA5NmNjOTE5MzU0ZTEgcmVsZWFzZTMwLW1haW50Cis2ODk3MyBjOTRhMjM3YmY0OTcwMDBjNzlmMzFjODkwMWFmMTM0NDc5MDAwOTdkIGxlZ2FjeS10cnVuaworNjg5NzQgMjAwODI5MjU1YTZhN2ZhN2FiNTJkMDM3ZTI0NzE4YjZkY2RjNzFhYiBsZWdhY3ktdHJ1bmsKKzY4OTc1IDJlYTc1ZjYwZDllNWQxZGE0ZWE5N2MwNzU3YWQyNGViZDFjMmNkMjYgbGVnYWN5LXRydW5rCis2ODk3NiBjYThlYTUyYjQ1YzMzOGFmZTc4OWRlMDUyMjg5MTQxMWU4N2I0MzY0IHJlbGVhc2UyNi1tYWludAorNjg5NzcgOThmMjIzZWNlOGYyNzI5NzBmNTk5YWY1NThiMTYzNjhhOWU1YTU5ZCBweTNrCis2ODk3OCAwNjg3ZDQ0N2RlNjFmZjhkYWM5NmI5NjVmNmI0YzZjNzFmYjM0MGY0IGxlZ2FjeS10cnVuaworNjg5NzkgZTE5ODgwN2M1NTg2N2IyNzQ0ZGNiNmNlMzFhOGY2M2ZkMzRhOGEzMSByZWxlYXNlMjYtbWFpbnQKKzY4OTgwIDg1N2RmNmMwOWUxMmY5Y2MxNTU4YThmMzdiM2JjZDY5NDIwZTZhMzAgcHkzaworNjg5ODEgOTRjMmRjNWY0NDZkNjc2YWNlZTU0ZjlmMzE4ZWQ3YmRkNmJmNWE5YyBweTNrCis2ODk4MiAxNGMzYWI5YmQ3MDYxZjYxMGMyMGJiOGQ0ZGMxMjkzMDU3YTFkMTgyIHJlbGVhc2UzMC1tYWludAorNjg5ODMgYzIzZTQwZDFhYmJjOGQ5MWVjNDZhMWE0YjhmOWM0N2YyOTY5ODM0ZiByZWxlYXNlMzAtbWFpbnQKKzY4OTg0IDgwMjUwNjY0NTY2NjRkZGM0OTljOGQ2OGRiYTlkMmY0MzEwZWFiYzcgcmVsZWFzZTI2LW1haW50Cis2ODk4NSAyY2IwYzUyZDc3OWZjMjNiZTBmYzJiYWRmNDI5YzY3ZmQ1M2M5YTA5IGxlZ2FjeS10cnVuaworNjg5ODYgZjU3MjkxNzE4M2ZhMmVjYzJhZjRlNzc3YTI2ZTkxY2ZlNTk1ZmMyYSBweTNrCis2ODk4NyBmMTM4ZmJlMjk0NWU1NTg5YjBhMmQ0MmRmODI1MDc1MTVmZGUyMzIxIHJlbGVhc2UzMC1tYWludAorNjg5OTEgZjA4NWFhYTQ2ZDg3NDhmZDU4ZGVlZDA3NmNiZDkzMDcwNWUxZTE2MyBweTNrCis2ODk5MiBmZmU3MzJkYWRiMGQ4ZDk4NDFkODk3YjljNzJhMWUwN2EzZTI1OWJiIHB5M2sKKzY4OTkzIDI1OWZhOGY2NGE5N2U2MjQ0N2Q2ZTgxODM0ZTlmNTFjYWMyYjMwOWUgcHkzaworNjg5OTUgNDQ1MTIzMTFmMmJjODIwMDcwYjgwNWQ2MmQ0NGI4MDllMTJkOGE3YSBweTNrCis2ODk5NiA5NmQyOTZjNzhmYmE4NjZhYTlmNjhlNzc3ZWY2OGQyZDc4YTZiMzdkIHB5M2sKKzY4OTk3IDU2NzliYjliNTE5MGM5MWFjMWFiMTI4MWQxYjU0NDBjMTkxMTZmZTYgcHkzaworNjg5OTggNmMwYmI1NDhhOTQ2YzdiN2U5NWViYjc4YzFkNWE4MjZmNzUwYjQ0NyBsZWdhY3ktdHJ1bmsKKzY4OTk5IDc3MjBlMzYzYzFjOGNlZDc3OGYwM2Y2ZDM2MjBmNzNjMzYxZjAzOTQgcHkzaworNjkwMDAgODRkNjQ4Y2RkYzMzNDYwYWQ3ZTJiNjIyMDMyOTE3YWMwYjRjZDIwMSBweTNrCis2OTAwMSBiN2NlNjc1ZmViYjkwM2NhYWEwYTA1NzhkOTllMjQzMTdkMWNhZjQzIGxlZ2FjeS10cnVuaworNjkwMDIgZjExYTQxMDk1NzI2Zjk5MzVhZGU0Nzc5YzlhOTQwN2ZmZThlMGI2ZSBweTNrCis2OTAwMyAzMzI5MWUxZTg3ZWM3NDNmODViYjdhMWY1NmFlMTQyNGYxOGYyNjlkIGxlZ2FjeS10cnVuaworNjkwMDQgNDAwNTAxMWQzYTA5ZWNhOTllMTEyODUxOTExMjJlY2M1NWYxMjVhYiBweTNrCis2OTAwNSA3ZTgzM2NkZWIyNDE3NDU4NmE1MWQwOWQxNzMwMGQ4NjQ4YTI0YTgyIHB5M2sKKzY5MDA2IDRiODdmMzE5NzhiN2UyMTc2YzY4ZGI2OGQ5NWVjMDVjZTQ3YTA5MjkgcmVsZWFzZTMwLW1haW50Cis2OTAwNyA0OGI3MDM3ZmYyMGU4NWI2ODhlMGJiNzQ1YTdlMGI5MGRkZDRlNDI5IHB5M2sKKzY5MDA4IDdmMGU0ZTQyN2VhM2Q3MGFlOGRhZDRjZmQ3ODY1NWY3Y2I1MjM1MTAgcmVsZWFzZTMwLW1haW50Cis2OTAwOSA5OGE4NTVjOTdmZjIxNGZhYWJhMGNjYzMwMjg5NDg2YTM4NDI3MDdiIHJlbGVhc2UyNi1tYWludAorNjkwMTAgZDE3MGZkZjRiZGZiNDUyMmE2NDQzM2QzOGY5OWU0ODQ2NTRiMTJlMiBsZWdhY3ktdHJ1bmsKKzY5MDExIDE0NjMxYzYyN2UwMzc0MmQ4ZTlkODFlNjIxNzYwOGJlZjE3ODIyYzggcHkzaworNjkwMTIgM2U0Yzg3MmQwMjQ2N2E1NzE2YTVmYjRkMmJkOWI5NzZkYmU5MDExZSBsZWdhY3ktdHJ1bmsKKzY5MDEzIDM0MDI3ZThkMDQ0ZjAzYzg4OWFjZDk4ZDkzNTljODhmMjRkMzNhNzcgcHkzaworNjkwMTQgYTI4NzY1ZmQzMmYwMGE1ODdmODJhNmJiYzVkYmE1MGFiMGE3OTc5NSBsZWdhY3ktdHJ1bmsKKzY5MDE1IDdlZDljY2MwYjUxOTdlNzMxYjg5ODMwZDU0ZTIwMGE3MzIyYWQxMzUgcHkzaworNjkwMTYgOGNkM2NlZDFlZDI5OTlkZTYwYzljOTY3M2E4ZDFkMDljN2MyNzc1NCByZWxlYXNlMzAtbWFpbnQKKzY5MDE3IGU3MThkMjk4NzRkNzVjN2Y2NTdhNjg2YzlmN2Y5MmM5Mzc4YmVhYmUgcmVsZWFzZTI2LW1haW50Cis2OTAxOCAyMjU0Y2QzMjAwZjA2MDJkYTFmNjc2YWE0NmQ0OTg5Y2JjM2M5YjNlIGxlZ2FjeS10cnVuaworNjkwMTkgNTMyNDRjNGVlZjIyM2UxZWU5MTJkNTBmY2I2ZjQzNjkxOWQzOGM4MSBweTNrCis2OTAyMCA1NDdiN2ExN2MzNzk5ZTc3MjA1ZTExMzljMjBjNDAyZDA2NTI3ODdkIHB5M2sKKzY5MDIxIGE2YjAyNTIzYjkwMzVmNWNjMTQ5MDZkY2Y1ZDRlZDQ0YmExNTlhMGMgcmVsZWFzZTMwLW1haW50Cis2OTAyMiAxYjMyMGZmYzBkYjhjYWU4MzA4OGI5OTU0ZjNmNzY0NjJiOWM3ODY1IHB5M2sKKzY5MDIzIDlhNGZkYmNmMmQ5ZjJhYzc1YmJhOGQ0ZDk5MzA3ZDNkM2YzODg2OWQgbGVnYWN5LXRydW5rCis2OTAyNCBmYzUxMDI2YWJkZTZjNmQ2NWFlYzA1YTdmOGRhOGU3OWUwNzZjZDM1IHB5M2sKKzY5MDI1IDc0YWE0M2RkODc1ZGQ5ZTVkNzk4YzQ2MGQ0YjRhNDhjMGY1NTExOTUgcHkzaworNjkwMjYgYWRiZDc3YTkwYmRlYjVhYzFkY2EzZDAwN2M4ZGZkNTQ4NmU5NzY5NyByZWxlYXNlMzAtbWFpbnQKKzY5MDMxIGM1YTUyYWVjMmRkZjkxZTEzZTBlN2YzMDkxMDJmMjllMWQwYjMwZjUgcHkzay1pc3N1ZTE3MTcKKzY5MDMyIGI2ZGU2OTEyZmUxNDZiYTZiZWQyMDU4ZGY1NmVjNTU4ZjkwZWFjNmEgcHkzaworNjkwMzMgZDJjMDY3ZjlmOThiOTVkMjE5Y2Y0NDgwZmNlNTMzYTcwNWNjNTBhZCByZWxlYXNlMzAtbWFpbnQKKzY5MDM0IDVmZWI5NzZiMThhYWM4Y2U5MWY2ZWJhYTkwMTQzOTY0Zjk0MDE5MGMgcHkzay1pc3N1ZTE3MTcKKzY5MDM1IGJlYTZiN2EwYjlhMjJmODk1MTk0ZDI2Mzg0YTQ2NzZjZDI5Zjk0ODkgcHkzaworNjkwMzYgMmE2ZTBiYzRiYzAzMTlhZmE0ZTY4NzFhNTE5NGJkY2JlNTNkZjM3ZiBpby1jCis2OTAzNyAyMzFjNGU0OTBiMWY1OWY3NGRhNWU5Mzg0YThjMGFmNGUxZTRiMjZiIGlvLWMKKzY5MDM4IDYyY2E4MWRkMmFlODg3Mjk2ZGVjNTcxM2FkM2UwYzUwMWYzN2I0NTUgbGVnYWN5LXRydW5rCis2OTAzOSBiNjc0NzA2ZjNiMTBlZGUyYzZlNTQyZDQ0MjkyYWQ4Y2VkOTg4MGE1IGxlZ2FjeS10cnVuaworNjkwNDAgMTQzNGQxYmM2NjdmNzI4Mjk2ZDY2Mzc1YTJlMTc1NmYxMDQxYjU3ZiByZWxlYXNlMjYtbWFpbnQKKzY5MDQxIGFiMTE0NjU1MTI1NTIzMWFhYTg3NmM4NDZhYWRmZWZlMzgyYjJlYzYgcHkzaworNjkwNDMgMDUyMmNmZWU4NzlhMTFkMzNkNGMxZDlmMGYwM2IyNzE0ODQ5MmVlZCByZWxlYXNlMzAtbWFpbnQKKzY5MDQ0IDg0MDAyODIyNmVkNTNlYjZmM2I1NGU0ZmQxYjUwZDgwOTBiNzVjNWUgaW8tYworNjkwNDUgMDRjYTU3YmI3MTA4MzkzOTM5NGQzMzBkMzM4YzY1MWIwZjJmYjA1OCBweTNrLWlzc3VlMTcxNworNjkwNDYgNGFiNTA4YTVjZDdlZDBhMzUyMTgzNTY5NmZmMmI1OTYzMDViNmIwMCBweTNrLWlzc3VlMTcxNworNjkwNTAgYzEwMWY3OGFlZDhiNTFiMzg1MjRhODhmNzQ5YzNlODgyMzdhYmIzZCBsZWdhY3ktdHJ1bmsKKzY5MDUxIGM5MDkzZDQxNTkwZWVhMjI0M2M5YjBlYzk0MzI1OGJkZjQ4ODlmNDggcHkzaworNjkwNTMgZjA2ZDkwMDI3Mjk5NDg2NGIyNWZhNTc3YjM3Njg3M2RjZGMxMjI0MyBsZWdhY3ktdHJ1bmsKKzY5MDU1IGQ2OTAxMjlkN2RhYzI1NTYyZTljZGVmOWQ1ZmE5MDgxNmVhMzVmMWIgcHkzaworNjkwNTYgZmQ0YmViZjlkZGRlZTdhYzk3Nzc3ZWFlNzgxZjgwZGFkOWJjY2Q4OCByZWxlYXNlMjYtbWFpbnQKKzY5MDU3IDM5NzU3MjVhODViNTE4NGFiNzI1NWZlZjdiM2QxY2ZhODJlN2RiM2EgcmVsZWFzZTMwLW1haW50Cis2OTA1OCA4ZDYwM2U0OTM4NDZmODdiMGFjMDI2NjFjNzIyZWY0YWI3Y2E4ZWEyIHB5M2staXNzdWUxNzE3Cis2OTA1OSBiZmY5OWE4MTgyNGE3MDk2NGQyZDFlZDI3NGE5MjVhYmRkODFjYWVkIHB5M2staXNzdWUxNzE3Cis2OTA2MCBjYTRkYmU0YWU2MjlmNDMxNDI1OWNlODhjNDE4YzA5YTg1MWQ3MmIzIGxlZ2FjeS10cnVuaworNjkwNjEgOTQ2MzQwZmIxMTRiNTMwZjM0ZTFlNGRmODQxYTEyOThhODMzODIxMSBsZWdhY3ktdHJ1bmsKKzY5MDYyIDE4ODRkMDg4ZTBhY2NlY2Y4YjEzYmEzODM3NWI5OTFlNmY0NDc5ZDIgbGVnYWN5LXRydW5rCis2OTA2MyAwYThhN2M0NTdmMWJiZjliZWM5NmI5OTg4ZGNjYjEwY2Q4MDUwYzI0IGxlZ2FjeS10cnVuaworNjkwNjQgNWZjNjA3YjZlNDJkN2I3OWE3NmYzN2UxNzljNjFmNDA5NjIyNzkwNyBweTNrCis2OTA2NSA3M2JhMGY0ZGIwZDU5MTBkY2YyMjg2MWRmYTAxMWI3N2NjYjRjNmNlIHJlbGVhc2UzMC1tYWludAorNjkwNjYgZDhjNTIyZDYwMGU0ZTNlNDk2MDZhNjE0NjJhODk1MjkwNTM3YjFjZSByZWxlYXNlMjYtbWFpbnQKKzY5MDY3IDQ0NDdiYzFmNWE1MTIxNGY2MGY2ODk2M2E5ZTlmODljZThhYzdlNWEgcmVsZWFzZTMwLW1haW50Cis2OTA2OCA5NzQyZThhNGRjYTFmMGNjMzliNjUwODMwMzlkMTVhNDIxNWEzOTBiIHB5M2sKKzY5MDY5IDljMWYwNmIyNzNmNzJjNTYyM2U5MWYwOTQxN2YxZTJjZTBkOWJkNTMgcmVsZWFzZTMwLW1haW50Cis2OTA3MCA5NDQwNDY4MDgzNTkzYzUyMmRiOTg0ZTk5YWQyZmYxMDk0ODRjMGYxIGxlZ2FjeS10cnVuaworNjkwNzEgOWM1YWVmOWYxZmE3MjdlNzlhMmJiMjI1NDRhNjRjZDAwMGM0NzYyNiByZWxlYXNlMjYtbWFpbnQKKzY5MDcyIGYwYTFiZjI0OTAxMDVlZGQ4ODY1YWIzYWVkMTQ1NTg4MDM3ZTlhN2IgcHkzaworNjkwNzMgMDFiOWM1ZDk5ZWJlMjM0NDIxZDZkYTAwNjgxZGZiZjA2ZTAxYjQ4NCByZWxlYXNlMzAtbWFpbnQKKzY5MDc0IDUxOWIyMWY4OTFlYmQ1YWE4Yjk5YmQyNmIwMWQxNjc2ODMzOGRjODkgbGVnYWN5LXRydW5rCis2OTA3NSBiYjYzOTE1ODI5NmU3NjU2MjZhMjgxYzVlYjM3OTA2NjQyMzM3NWU3IHB5M2sKKzY5MDc2IGQ4NzdkYmZkNGJmOTM5ZTEyOTU2ZWZjYzgwMDQyOTIwYzRkNWVkN2EgcmVsZWFzZTI2LW1haW50Cis2OTA3NyBiZWRjNjg0Njg0NGRiZjBmNTkxNGE0NDI4NWM5YmZhN2U2NTQ2M2NjIHJlbGVhc2UzMC1tYWludAorNjkwNzggMjM4NGMwNGVkYmI2MGJiNmNkZDI5ZTczNzQzMWFjOWYzMjZiYjBlOSBsZWdhY3ktdHJ1bmsKKzY5MDc5IGEzMzA0MTkwZDhhYWFhOTE1MDg3Y2M1YjRmY2E2OTFhMjU3MjZlNjggbGVnYWN5LXRydW5rCis2OTA4MCA5YTlkMjZlODQyYjMzMTVhNjdiMTc3MzYxMmI2MGQzOWMxNDQ5MDRiIGxlZ2FjeS10cnVuaworNjkwODEgMzIyODkyOWVjYjZkODQ4MzM3OWQyOWY2ZDBkMjI2OWU0N2M3YzAyNyBweTNrCis2OTA4MiBkNjZlMWFiYjNhOThjZmQ2YzdiYjg2MDU5NDY1OTdmYjIzYTdiZDhiIHB5M2sKKzY5MDgzIDdhZDk5NmVlMzMzNDFkZjA2ODFmMzQ5OTAzZWMwMTMzZTZhYmIwNWEgbGVnYWN5LXRydW5rCis2OTA4NCA3MjViMjA4NzMwYTU5MzQ5MTRmOTdhZDczOTcwMDBkNDM2NDE2MzQ4IHJlbGVhc2UyNi1tYWludAorNjkwODUgMDdmZjI4MWJlMDJjNTU3NmFhYzQwZDYwNDQxZjAyNWRhN2Y4MTIzZCBsZWdhY3ktdHJ1bmsKKzY5MDg2IDRmNjA3YzNhZThlMmQxNzNmMmFhODNhYjA4Mzk2MDA2NDAxYWI4YTQgcHkzaworNjkwODcgN2NiMzUxYzljZjQwMjQ3ZTI2OTM3MmU3YWE4OTQxMDU0ZjUwMWQ5MCBsZWdhY3ktdHJ1bmsKKzY5MDg4IDRiODk3NmVhNjk2NjBhOGIyNDQ0NWU3NzUwZDU0MGU3OTY3ZjgwODYgcHkzaworNjkwODkgOWViODRmYzQzNmZjMWIzYTVhNGM2YWJiYjQzZTBmNmNmMDM0ZjhiZCBweTNrCis2OTA5MCA0YWJjZjlkMWI5MzgwZmJhMDE2ZTg4YTQ5MDQ4ZDhhNzY0ZTZjZDBkIHJlbGVhc2UyNi1tYWludAorNjkwOTEgMTRlNWI2ZTgzNjgwMGY4MmE5OTc3ZTQxMWViMWYwNThkN2NlMGFhNCByZWxlYXNlMzAtbWFpbnQKKzY5MDkyIDBiNjY3ZTM5M2ViMzQ4NzAxZmJjMWFhZjYxMDc1NTcyNWY0Yjk2Y2EgcHkzaworNjkwOTMgOTY5MzQ2ZGJmMzFlMjA0YzYxNmRmNmNmMDc2MGRmNjIwYjY4YjVhNCByZWxlYXNlMzAtbWFpbnQKKzY5MDk0IGRhYWU4YzMyNGJlMWI5MTkxM2Y1NGNmZGNhZTY5N2M0NTNlZWUyNzIgbGVnYWN5LXRydW5rCis2OTA5NSBkMTYyOWE5NTljYjg1MDQ2OWY2YmNkMWNkYzNjOWJhMzNhNjVhNjZlIHJlbGVhc2UyNi1tYWludAorNjkwOTYgNDYzZjZjMTJmMWQ0YzI1MTEzZjYwZTNiNzA5YzlkZjM4MTgzNTI3NCBweTNrCis2OTA5NyBkODU3MTQ1NzRjOGE1MDM1YjBkOTQwYjRlYzY1ODk0YWU3NzVkYjJiIHJlbGVhc2UzMC1tYWludAorNjkwOTggYmNiNmFkMWNiNTVkZmEzMmE0MjQyZDZlMzhjOWFjNWNkZWMyZjFlYyBweTNrCis2OTA5OSBhZjk0ZWYzOGI1YzBmMjdiY2U5NWQwOTEwNDU0ODU4MDY2MDM4ZjVkIHJlbGVhc2UzMC1tYWludAorNjkxMDAgM2MyOTBiYzIxZDJjM2RhYjk1ZmNhNmE5OWNlNzlkY2QyZjA0MzQ3OCBsZWdhY3ktdHJ1bmsKKzY5MTAxIGU0OGM1OTE0ZGE4MThmYzkxMTc2N2FlN2JhNjRkYjgxYTk2YTM0MTYgcHkzaworNjkxMDIgZTJkY2FkNTZlNDBlMDMxNzQ5ZTdkMzgwMDhkN2JjN2NjNTI5NmEwMSByZWxlYXNlMjYtbWFpbnQKKzY5MTAzIDVkMGVhZWI0MTM0ZDdlYzlkMzc4N2JiYTNlOTI3ZDNkODhlYzY2YzMgcmVsZWFzZTMwLW1haW50Cis2OTEwNCA0YTRhNzQzN2M1ZTFjZjY2YWQ0ZmYyNTY2ZWU4NTg3MTNmN2MzMzk0IGlvLWMKKzY5MTA1IDkxZWQzZWNlMGM3NmEyYjI0NWIwNzRjZjYxZmJjNjVkNTg2YTc4YjkgcHkzaworNjkxMDYgZmM1ODZiMzgxOTg3M2U2M2Y5NzVmM2E2MjJiNTQzZGQ0MmJmMzE5NyBsZWdhY3ktdHJ1bmsKKzY5MTA3IGMyNjI4YmZlNmE2ODQ4ZjI4N2UxYzkyYzY0MmE2ODY3MTNmZjFhNmQgcmVsZWFzZTI2LW1haW50Cis2OTEwOCBjMzc4YzRmNGE3OTY5ZTFmZDA1NTk3N2FmOWNjM2I3ODdhNDE3ZDRiIHB5M2sKKzY5MTA5IDIwZjRhZmNkM2IyN2VlNjMwMGM4ZmY5MTkyMGMwZGUyYjYwZjFiMmMgcmVsZWFzZTMwLW1haW50Cis2OTExMCBiODhkMzc3MDExZjUwZGE5ZDM0Yjk4N2NmNDM2ZmQ3NDk5YjViZDRkIHB5M2sKKzY5MTExIGI0OGI1ZGRhZGE4OTQ4ZThjOTUzMjU5NmM4N2UwYmZjYjViYThjMjAgcHkzaworNjkxMTIgNmEyODk2ZDkyM2UzYTJjMjZiOTI2ZTkzYzgyNjA2NTY2M2Y5ZTkyYyBsZWdhY3ktdHJ1bmsKKzY5MTEzIDRhYjM4MWFlYTY1ODAyMGJmMmQ0NmM0NTRmMmE3Yjg1MzY2NzdlZGUgbGVnYWN5LXRydW5rCis2OTExNCBlMjI3MDU0ZDQ5NmRmZTg0ZWM3NDNiMWJlOWUyYWI4OTk2YTAyNzBkIHB5M2sKKzY5MTE1IGEwMzhlOGZiNjdjMjEwZWNlMThjYWJhNjcyM2I3ODdiMzE0MGYyOGMgaW8tYworNjkxMTYgN2I3OTY4ODYyNmU0ZWYwZGJjOTFkNjJjYWU0MjZkYTY1ZDU4Y2ZhNiBweTNrCis2OTExNyA5ODY3Yzg0OTUzMGJiYmYyNjdiYzgwOWZlYjMxNjNiMDU4YzAxMWU3IHB5M2sKKzY5MTE4IDhjMmM3MmNmMmEwY2ZiNjJmYjMwM2NhNjNmNWVlZmE1YzZmZjk3MWYgcHkzaworNjkxMTkgNjE3ODc1MzMzOTVjMGRhYWRhYWFkNTU3YmViNGYyMDc4ZmU4YWE2MSByZWxlYXNlMzAtbWFpbnQKKzY5MTIwIGU2N2RjNGRiOTY0Yzg5YTY3NjRkNDgzYmFhNDc0ZjVlZDQ0MzMzMWYgcHkzaworNjkxMjEgM2MyYjM1YTEwNTkzYmQ2OGNmOGZmNzlkZDZmMzFmNWE3MmE0M2YxZSByZWxlYXNlMzAtbWFpbnQKKzY5MTI0IDM1OTM5NGI2M2EyMzg4YWMyN2MwOThjZWVmMmY0OGJlYTIwNjE1MzIgcmVsZWFzZTMwLW1haW50Cis2OTEyNSA3ZmMwYWQxMWIwYWYwNzRiMDU0YTExYzA2YzM2Y2RhMWFhYzJjOTg4IHB5M2staXNzdWUxNzE3Cis2OTEyNiAzNzhiYzE4ZDIzNTA5YmJmMTljOGY3YTViNWFlODFjODUyNWFlM2E4IHB5M2staXNzdWUxNzE3Cis2OTEyNyAyMzk0NGYxZDUzZmRmYjljZDAwMGRiYThhYjcyNmMzYWM0MmZmODkyIHB5M2staXNzdWUxNzE3Cis2OTEyOSA0YzllYTY0N2VhZjQyMWRlNTc2OTJkMGVmMzYxN2QzZWUyMDkyZDY4IGxlZ2FjeS10cnVuaworNjkxMzAgYzVlMjgyODViNzRkMDEyMzIxYjU2YzdiN2EzZjllZmJkM2M2ZWM3YiBsZWdhY3ktdHJ1bmsKKzY5MTMxIDc1NDAzMTRmZjI2N2I0ZDVlZTAzY2Q1MzlmMmEwMmViZGRjMDY3YTUgbGVnYWN5LXRydW5rCis2OTEzMiAwMmE5MGRjMGMyOWE4YWY2NWIwYjJiOTExNmU2YzQwYjRiYTY0NjVhIHB5M2sKKzY5MTMzIGRmMDkwNTk3YWZhYWYwZjc3OGI1YzNiNjFhNzUxZmQyZjc5NTFmYzcgcHkzaworNjkxMzQgYmU1NzM1NGRkYjExNDQ2MjMwYWNiYjRiMTlhZmU1NzEyOTFhZTQxNSBsZWdhY3ktdHJ1bmsKKzY5MTM1IGRjZmQ0MzY1NjdjZWY5NDg3ZGQ5MGE1NDdhN2ViYTNmMWZkYTQ2OWQgcmVsZWFzZTI2LW1haW50Cis2OTEzNiA0MzE3MWY1NTdhZjgwZmVhMGM4ZTBhMmEzNjlkMWQ3ZDBiZDg1MTM3IHB5M2sKKzY5MTM3IGMwNmZhYTgxOTZiM2EwN2U2NmE3MGY3ZDhlMmJlMTA3MTgxYjE0ZWQgcmVsZWFzZTMwLW1haW50Cis2OTEzOCAxYzBhNWE5ODI3ZmE5N2Y2ZTFiOTUxZjYwNjA3NTlmOWM0YWFiOTY0IHB5M2sKKzY5MTM5IDVmNmQyMjVlM2MxZGFjMDlhYmI3M2VmNTg4ZTYzNDhhOGY0MTQyMjYgbGVnYWN5LXRydW5rCis2OTE0MCA5NDI2ZWViN2Y0ZTZhNTFjY2RjMGQwZDM2MGYyODI4ZWI3OGQ5NjUyIGxlZ2FjeS10cnVuaworNjkxNDEgOWQzYzJjZTg2ZjQyOGUyMWZjNGViMTgzYWEyMzhiZWUyNjcwOTM3NiBsZWdhY3ktdHJ1bmsKKzY5MTQzIDBjYWEwMDJmNWYzZDI1OGU0ZDVkNDJhMWQ4YjcxODQzZjllNDcwY2UgbGVnYWN5LXRydW5rCis2OTE0NiAxMGRhZWUzYTM2MDk3OGI5MzkzNjBjODEzMTVlNGI4Y2Q3NjVmNjYyIGxlZ2FjeS10cnVuaworNjkxNDkgY2Q1ZGI0M2RiYjY1YjkxNzAyMTIwMWIzNjk0YjFhN2ZjZjc0NjI0MyBsZWdhY3ktdHJ1bmsKKzY5MTUwIDE3ZDQwMWFkNmEyMTU5ZmY4YzBhNzRiOGY2OGFkNjc5ZmRiNWUyN2QgcHkzaworNjkxNTEgYmMyZDk0ZmQ5MTBjMGM4MzUwODkzMWY3ZTg0ZWE2NWQxMmRiNjlhNiBweTNrCis2OTE1MiAxZjI5MjJiYTVhMmExMDE4OTVmMjk1YTkzMzk0NGU1Mjc5ODczM2VlIHJlbGVhc2UyNi1tYWludAorNjkxNTMgNGMyMDU4MzUwODMzOGNmOTBhNDk1ZDRlYzkxZTM3ODJmNDM0YTg5NiByZWxlYXNlMzAtbWFpbnQKKzY5MTU0IGFhMDdhMTIzMTk0YTBiNzg5YzYzY2I0N2Y3ODg2NmJmYzJhYTE3ZTMgbGVnYWN5LXRydW5rCis2OTE1NSA3Mzk4MWJjZGE1YTJiYmNhYTU4YWY0YjRkYjcwMGVmNWRjODU2NTMxIGxlZ2FjeS10cnVuaworNjkxNTYgZWIyNjA3YTY1MTZlNjdiY2E0NTA4YTJkYWVkNjM4MWY3YjY3MTI1ZCBsZWdhY3ktdHJ1bmsKKzY5MTU3IGJjOTJkODNlNTUwODI4NzdkZmZlNTIwMjM4NjQyYTJkZTQ1YjJiYjAgbGVnYWN5LXRydW5rCis2OTE1OCA4NjcyYjBmNjU3NWQzYjFjYzZhZWNmMTAzOGI4OTk5YzczZTY2NDE2IGxlZ2FjeS10cnVuaworNjkxNTkgOWEyNDRhZmExYTlhMTgyZjRhODdkOTU3YjQwODNmZGQ3Mjc5NTE3OSBsZWdhY3ktdHJ1bmsKKzY5MTYwIGI0Nzc5NThkZjk3OGVkMWFjY2Q0MWVjMjEzYjYyZDYxMTk1ZTdhNDMgcmVsZWFzZTI2LW1haW50Cis2OTE2MSBmZWI5OTM0MzA3YjliNzg5NWViZjQxYTQyN2YwNjQ1ZGJmMmY3ODRkIGxlZ2FjeS10cnVuaworNjkxNjIgMTQ4NDIxNzJiMTUyMmY5YmEwYmZkNGRhNTFhMjkwYmEzNzc1MzdlZSByZWxlYXNlMjYtbWFpbnQKKzY5MTYzIGI4Y2U5NzljZGRjZTIwNmM3MWMwNjg3ZjQ3ZWQ3NzJhYzI1NzEwMzUgcmVsZWFzZTMwLW1haW50Cis2OTE2NCAzOTU0YzliOTBiNTI3YTExMDJlZGU3ZTZlODNjNWZhYzVlNjI1ODIzIHB5M2sKKzY5MTY1IDA2YmJjYjc5MmYwNGUwYTM0ZDcyNTQxYmE1MjdiMDIyMjJjM2ZlZDcgcHkzaworNjkxNjYgOGQzZjdkZDliNmNjZTA1M2RiZWEwMDZkY2EwODQ0M2Y3MTExMjRhNyBweTNrCis2OTE2NyA1MGJkMmMxOGVmZjA2NTI5NWMwOWI4ZDQ0OTlkYzU1ZWRhNjg3OGE0IHB5M2sKKzY5MTY4IDgxNTU4OWQ2MmE5YWUyMDFhOTA0NTRkYzY4YjEyOTE1NDY4MzAyOWYgcHkzaworNjkxNjkgZDI2ZDk3OGQwMDY2NDg2OGMwY2NiOGZlOTZlYzA1NDM4MWMwNDZkNCBsZWdhY3ktdHJ1bmsKKzY5MTcwIDRiMzI0NmM4M2UzZjJjY2FjNzQxNTYxY2JhNWE0N2RmMjJkOWRmNjAgcHkzaworNjkxNzEgNDI3ZjRhNzRmNTM4YWJmNDY3MzFjZDg1ZThhZGQ5ZmVmZDRkMjc0YiBweTNrCis2OTE3MiBkODVlZjI2ZWZkMTAzNzZiYjIxMzVlMWUxOGE3Y2YwNmJkZjBmNzJkIHB5M2sKKzY5MTczIDEzNGZiY2UxMTFlOWI5YzJkODFlZTA0OGQ4OGEzMTlmODI4NTlhMGQgcHkzaworNjkxNzQgZGVlZGRkYzdlMGI0ZDkxZTNlOWQ2MTE1OGJlMjkwOTQ4NDUyZTgzMCBweTNrCis2OTE3NiAzODZlYjRiNWNiYjNhYzYxZmI1ZThiNzA3YzNkZWZlNjFkZjc1ZWMzIHB5M2sKKzY5MTc3IGZiYjE3Y2FiNTcxNmUzOTM3ZDM1MGZkNDcyYjY3NDIxYjkzMGM0YWYgcHkzaworNjkxNzggNmJjZjg0ZDYzNzk3NTJiZTg2ZDFmOWIzNDk5MzhlN2Q3ZjVjMGQxNSBweTNrCis2OTE3OSA3NjY0MDVjMDRiZGMyOTQ0NTMzYzRkYTY4MjA4NmIxZjYwZjZjZGFmIHB5M2sKKzY5MTgxIDdjOTFmNDc5YmQwZDkxMGJmOWQ0YzM0NDkzZDBhNDFlMDhiODhmYzYgcHkzaworNjkxODIgZTk2NzVkNzJlM2UzYjk0MDNkZTQwYzJkMTExM2YxNTEwZGQyMTZmYyByZWxlYXNlMzAtbWFpbnQKKzY5MTgzIGU2NjMwNzVmZDFhZTRhOTk4MDBlNjc1MDc4Y2FmMmJhNmY3OTAzNzYgcHkzay1pc3N1ZTE3MTcKKzY5MTg0IDljYTM0YzE4ZTFiZDNhMWVmMWEzMTg1NDYzNTk5YjgxN2VjMjhlNzkgcHkzaworNjkxODUgMDE2MmNkNGY1NWJlMzFkMWJlZDJhZmY1YTdkYzY5M2RkOWY5YTA4OCByZWxlYXNlMzAtbWFpbnQKKzY5MTg2IGYwMDg5NDEzYzEyZmQ0M2U4MmM1NWU5YTk1MTJjMTZhYmMzOWI5ZWYgcHkzay1pc3N1ZTE3MTcKKzY5MTg4IGJhOTRkN2MwOTVlODBmODliZTI5YjIyMzNkYmYzM2FjODViOTc4NzggcHkzaworNjkxODkgNDEwZGZkNDIzZWYxMmIzYzM0N2Y0ZGU5Y2U3M2E1ZjU4YTZmODIwZSByZWxlYXNlMzAtbWFpbnQKKzY5MTkwIGUyZGIxNTE5NmE1NGI1MzkwMjk0NjI4MDYzMWQ5OWY1ZjNhNTY2MGUgcHkzaworNjkxOTEgMjM1ODI5OTU2NGVhODA0OWY4YmNhMWFhMTU2ZjFlMGQ0NmFhNWY2MyByZWxlYXNlMzAtbWFpbnQKKzY5MTkyIGU5NDU3ODI0Nzc3NDBjOGZjMTlhOWRmZDAwODVjZTMzY2IxZDkwYjggcHkzaworNjkxOTMgZmRhZTRlNzQ5ZDJiMzgwOWYwNTc5ODQxZmE1OTcwMzYxN2FiYzdkNyByZWxlYXNlMzAtbWFpbnQKKzY5MTk0IDU3ZDdkNmMyYjExYmNjNTQ5NWY3ZTg5YzlkYzU0ZmEzZTJkY2ZiMDkgaW8tYworNjkxOTUgNDdkNzQ3MTI0YTNlMGM0YmM3MDg5YmQ3MDZlYjJlNTFkNDdiZTJlZCBsZWdhY3ktdHJ1bmsKKzY5MTk2IGFlZjI5YTllZDQ5MTg0NzJjZjJiNDczZTBmOTNkMThmMjA2YmFhODcgcmVsZWFzZTI2LW1haW50Cis2OTE5NyA4YzQ0MTBkMDY3ZWU3YTE5YzdiNmM2N2Y4OGIzOGFlMWFiMzI5M2MzIHB5M2sKKzY5MTk4IGFlMDI2ZDI1OWQ0MTExMzhlNTBmMDcxNDc3MTljY2IxOWE5NmFlM2YgcHkzaworNjkyMDAgOTIzNjM1MWI1MjlhNGNiZGJhOGI4NTZiN2E2ZDUyOGQxZmFiNWFlZiBsZWdhY3ktdHJ1bmsKKzY5MjAxIGMwODNjMjc0ZjlhZmVjY2FkODJiOGI0N2IzMDY3MzAyYjk3YmJjNTIgcmVsZWFzZTI2LW1haW50Cis2OTIwMiAyYzE5MjcyZDhlNTY1ODZlMTk3YTJiMTQ0ZTcwYTk5YThiOTE1OTExIHB5M2sKKzY5MjAzIDZlNWNhOThhMzBhYzM4NTMxMDVkZDFlYjcwNTViMzk2MjY2OGM2NjAgcmVsZWFzZTMwLW1haW50Cis2OTIwNSAwMWIzYWNkMTA5ZGJiNTYyNDgyNzRmNzUxNGZjMjAwYWJhZTcwM2YwIGxlZ2FjeS10cnVuaworNjkyMDYgMmFkZjllZDZiYTdlODk3NGU3NzI4ZWExOTlhODI5YjkxNDE1N2NhZSByZWxlYXNlMjYtbWFpbnQKKzY5MjA3IGZmNjgzYTkyODQxOTM0MGQ1YTAzMTgzZTU2NzFiN2M1MzUxNDBiNjYgcHkzaworNjkyMDggODdhOTg1YTFiNWM5ZDBkYzI2YTE3ZmQyZGRiZjk4ZTZiZmUxMGE4NCByZWxlYXNlMzAtbWFpbnQKKzY5MjA5IDA1MDc0Yzg4MzczODQ3YTNiZWM0ZjNkZTA4ZTIzY2UwN2FjMzUxNjUgcHkzaworNjkyMTAgNjMzODZhZTc3Zjc5M2Y4MWY3MGE3NTg5OGViZDc2YTEyNjc3MTMyNSBweTNrCis2OTIxMSBmYTc5ZjEyMmExYjI1ZjNlNDMyMTM3Y2NlMWJmNDJlOGIxNzg4NDE5IGxlZ2FjeS10cnVuaworNjkyMTIgN2I3YTYzOWI5NjBmNWMyZDNjYjgzNzAyMTk4NWY1NjY0YzhkNjZlYiBsZWdhY3ktdHJ1bmsKKzY5MjEzIDBjMzIwZjhlN2UyMDM0NTg3MzIyZjhjOWJmZjZlM2QzMzVkZGFlMDIgcHkzaworNjkyMTQgZGViZDE0YzQ4OWI5MjE5YTU0OGZjMzIwMDJmNGE0ZWU4M2QyYTQxZCBweTNrCis2OTIxNSA4N2ZiYmYyMmFkZjM3YmE3OGNmOGNlYjEyNDM3MjcyN2ViMmYxMTRlIHJlbGVhc2UzMC1tYWludAorNjkyMTYgNWM3MDJhN2Q0YzQwOWFmY2MyMzFkOTNhZGU0OWZkZTc1MjE2MjA4YSBweTNrLWlzc3VlMTcxNworNjkyMTcgNDBmZjgzZTAyMzk1MzFlYzM4ZjZlYmQxOTRkOGQ3ZjYyNWQ2ZTlmNCBsZWdhY3ktdHJ1bmsKKzY5MjE4IDkwODIxYzdhZDg3NGY4OTMzNDc5ZDk5Mjk2YzQ4NDU0MTRmZDY4MTEgcHkzaworNjkyMTkgOTkxM2M0NzE1MjYxMDY3NDI2NTBjNjhiOTlmNGRhYWY0YWJiMGY0MiBsZWdhY3ktdHJ1bmsKKzY5MjIwIGZhZTE3NThhMjM0NjUxODcwMmUxZjk2NmM4ZDUzNjhhNmE1MDY5ZDQgcmVsZWFzZTI2LW1haW50Cis2OTIyMSA2MzBhNDM0NTFkMDRhYTBhNGRhMTQ1YTdlYmM4MTQyY2U2MjYxMzBhIHJlbGVhc2UzMC1tYWludAorNjkyMjIgYTk1MzQzOTFmZmY5ZjFjYmUwMTViYmVkZGQ5Nzg5NGIwMzYzYzg0YyBweTNrCis2OTIyMyAzNjJkOTZkYmU5MmM1NDEwMmYxMmYwNmQyOWQzZTFhMmE2YmNlMWM1IHJlbGVhc2UzMC1tYWludAorNjkyMjQgNzg2YzEyNzg1NzJjYzZmMzc4YjU4ZWUxMGRiMDEyYmZkOTU4ZjAxMCBweTNrCis2OTIyNSBjMjFkOGNkY2NhZTEwZTcyYzYxZTFlN2U1OTI5OWFmMDNhYmUzMmYzIHJlbGVhc2UzMC1tYWludAorNjkyMjYgMTQ3OWRiMmVmOWNkNTNiNWVmMTkwMTQ0YzRlNDcyZTE1ZDlhYWI1YiBweTNrLWlzc3VlMTcxNworNjkyMjcgNmM4ZWRkZjI0MDM1ZDM0Y2M5YzJkNmM5ZjJiMTdlMTRmYjI4OTI4YiBsZWdhY3ktdHJ1bmsKKzY5MjI4IGNhNzFhNDRkNTQzMjIyOWI4NzAzZmUyYzgyYzIxMzAxNzU2ZDI1Y2YgcmVsZWFzZTI2LW1haW50Cis2OTIyOSA2MjUxYjlkMzIxYWY4ZDk1ZmI0MjJhN2Y3ZDc0NWU2NWE3MmIwOTU3IHB5M2sKKzY5MjMwIDc0NDM4ZmMxMWQwNWRjZGE5N2EwOWMxMmY2MGEyZDk1OWY4MzY5MzcgcmVsZWFzZTMwLW1haW50Cis2OTIzMyBmNWQxNDM0ZjRkM2Y5N2UzYzM2ODJhNWM1NzEyZmQxNWExZTY2Y2Y2IHB5M2sKKzY5MjM0IDk4ZjRjOTA2ODc3NTA3MTBmYjRlMWE2Yzk2MmMwNDI1YTcxNDEwYmQgcHkzaworNjkyMzYgYzgyMDcyNTI2NWFiMTkwOTBiY2FkMTYxN2E5YmU4YWI2OGMyZWNkZiByZWxlYXNlMzAtbWFpbnQKKzY5MjM3IGQzZTZmMjYwMjMwMGNhZWE3NjVkNGEwNTEzMzc4ZjYyZDJkM2I2YWEgbGVnYWN5LXRydW5rCis2OTIzOCAzODgwYTE1OTIxMzdlNjhiODkxYzg0ODE3NmExOWUxNjY0ZjJlMmE2IHJlbGVhc2UyNi1tYWludAorNjkyMzkgNjc2NTQxMDZlZTc5NTc0YTZmNGE4OGQ4YzViNGU2YWZlM2JjZDhjYiBweTNrCis2OTI0MCA3MzU0ZjFhZmFlY2I0NWIxNDFhMDQwOTI5OGU3OTZmZjI2ZGIxMTBhIGxlZ2FjeS10cnVuaworNjkyNDEgN2JhNDFjMDkxN2ZmN2IxMDQwNmVmNGJjOThhNjRiMDk2MGU4MWI5NSByZWxlYXNlMjYtbWFpbnQKKzY5MjQyIDVjMjU0Nzk1YWEwN2E3MjcxOGNjMDZjODZmNjExNjhmYjE2ZDUxMzcgbGVnYWN5LXRydW5rCis2OTI0MyBhZWE5MGY1ZjM5OGJkZWMwYzNjYTM2ZTE3NjAxMjNjMmJiYTQyYjlkIHJlbGVhc2UyNi1tYWludAorNjkyNDQgYTFhNzFkNTE1ZGQyZmQ5ZjliNTBkOWEyZGZjZjQzMDVjODJkYzk5YyByZWxlYXNlMjYtbWFpbnQKKzY5MjQ1IDBmM2FhYmFlNGNjNjQ2NTk5MjI5Y2RhOWI1ZmRkNjE4NGYzYjAyNzcgcmVsZWFzZTMwLW1haW50Cis2OTI0NiA1YjcxMzA0NWVhOTA2ZTBmZTIxYmJmMWExNjRlMzE4OTM5YTA3MjFmIHB5M2sKKzY5MjQ3IGYzNzcyNzc0ODJhYjU4NjA4MDI3MjM1MDRjOTY0MWM4Y2M2NmJiYTUgcHkzaworNjkyNDggZjM1MWZiN2VhMTc5NmFjMDk0YWFlYWI0NmIwYzg3YTA1NmYwOTFkYyByZWxlYXNlMzAtbWFpbnQKKzY5MjQ5IDg1N2EzZjlkYTkxNTMxNTllNTIxNmZmZWJhNTNmZDdiMWJmMWQxMjcgcHkzaworNjkyNTEgYzUxM2U3MjhlMjRjYmY1NjY4ZDhkOGJhMDE2MWFkYzAzZTgyYzE3ZSBweTNrCis2OTI1MiBlMjBmNWE2ODRhZWZhNTg4YjQ1MGIzMzBhNGI2YTFhMmNiNjVlYmI5IGxlZ2FjeS10cnVuaworNjkyNTMgZWM2OWRiMjRkZTE5MGE3ZTkyMjQzZDA3NmQwMTgwMzViOGNmMmJhNCBsZWdhY3ktdHJ1bmsKKzY5MjU0IDhiMDg4MmM2N2I2Y2ZlMWYwODUyYzYyZTBhMWMyZGJhNGZhNDE4YzAgcHkzaworNjkyNTUgZTVhYmFmYWUzNjA0NWM1ZWJiY2Y0MjcxN2UzYTdhMDE2MjQwYTFlOSByZWxlYXNlMjYtbWFpbnQKKzY5MjU3IDc1NTIxYzEyMzYxM2FjYWJiN2VkZjJjYzRjNGY2MjkzNjUyNWZiYmYgbGVnYWN5LXRydW5rCis2OTI1OSA1ZjMzNTRjNTJlOGI4YWFhZTRhMTc0NDQ0MmViYjMwNTllYTI0NzA3IHB5M2sKKzY5MjYwIGU5NzA3Y2MzNjg5ZDM4ZGJhYWQwMGU0OTQ3ZTMxY2I1OTJkM2VhYWUgbGVnYWN5LXRydW5rCis2OTI2MSA4YzAxOTg3NzRlZDZkYWJlZjNmZTVhY2FjMzI5YTlkNWE0NTkzOThlIHB5M2sKKzY5MjYyIDFlN2EwNmE3ZjVlNzhiMDc1MWNkOTQ1NjM5MzVkNWQ3NTY4Yjc5NjMgbGVnYWN5LXRydW5rCis2OTI2OCBiNTg2Y2EzYTMwNjIyNTJhYTk4YTYyNDU3MWZiNzBlYTg4OTBmMDY4IGxlZ2FjeS10cnVuaworNjkyNzEgNDg0NWFiZjU3MmYxNDZiODRmYmE2MjEzYTE0MTFjZWRmOTc2NTMxMyBsZWdhY3ktdHJ1bmsKKzY5MjcyIGVjNjM0ZTU3YmM1ODYyMzY3YzBmOGJlODkyMTA0Yjc5Mjc0OTBiNTcgbGVnYWN5LXRydW5rCis2OTI3MyBmNzQ1Mjg3NzZjMTE1ZjQzZWExM2VmMDJkZjNhNGViMjM2YzJkZTE2IGxlZ2FjeS10cnVuaworNjkyNzQgMjQ1NjZlNDk5N2FlMmY2NzVlNmJjOGZhNTAwNDEyNjhhYTgxZDdlNiBweTNrCis2OTI3NSBjZTA0ZTM2ZjJhNTU5OTI5NmI0NzRjZGJhNzEyYjlmMjZkMmQ4OTg1IHJlbGVhc2UyNi1tYWludAorNjkyNzYgMmI2MDNmNzIzMjYwNWRmMzU3ZmYwMDU1YTdlNTMwMzU1NDBhNTI5YSBsZWdhY3ktdHJ1bmsKKzY5Mjc3IDQ3M2ViMzcwZGUyY2ZkNjZhYmZiZmY2MWZmNTc3Y2YwZmNjYzc2MTYgcmVsZWFzZTI2LW1haW50Cis2OTI3OCBjOTFiNzZkOGVjMGE5NzE2NWU1OGM5NjBkNmE3OWI5MWVlOTMzY2ZiIHJlbGVhc2UzMC1tYWludAorNjkyNzkgYWEyZWIwZjI0MmZmZDk1ODhiY2M0NzEyODI2MzIwOGM3ZWRlNjQzZiBweTNrCis2OTI4MCA4ZTE1ZGYzNzI2ZTEyMDlhMDFiMTNmMTJlZmU4YmIzOTU3ZTdiZTlkIHB5M2sKKzY5MjgxIDUzZDY0NDVjNmM1YThkOTg2MDNlN2MzZDMzMzg4OWU5YWFmNTRhOTEgcHkzaworNjkyODIgYjQ2MTg1ZDdlOTVhN2EwYzMzMWYyNzY4MzRmZjVjYjU2YzAyMDY1MCBweTNrCis2OTI4MyAzNzhhYmIyODFlMzE1Y2QwODQwMGRiZjI0ZjVmMjk2YzUxMmU0ZDdiIHB5M2sKKzY5Mjg0IDhiMThiMzg5MGUzMTYwOTRjZGQwMWJhYzcyMDIxOTU0Mjc0NWE0YzkgcHkzaworNjkyODUgZTIxNGJkZDU1MmZjMjZmNGY2YjJjMGNhYzYzNGY4ODJiNjg4ZDYxMCBsZWdhY3ktdHJ1bmsKKzY5Mjg2IDVhOTQyNDg5M2I1ZmQxZDZlYzU4OTQzZGQyMWY1YWM0NjhiNGQ4ZDMgcmVsZWFzZTI2LW1haW50Cis2OTI4NyAyMzMzYTU3ZmViOTg1MDJkZTBiMGFiZjIwYmJkMTNlM2UwMWQ5MDM1IHB5M2sKKzY5Mjg4IDFiMjMzYzgzZjJhOWI4MWFjZjBlZjJmZDQ4MjlmNjQzZjVlODM5ZTkgbGVnYWN5LXRydW5rCis2OTI4OSBjYTQyMzAwOGZhNGFlNjUwZmMyZGQwYjNhMzU1ZTg3Yzc2YmEzNjRhIGxlZ2FjeS10cnVuaworNjkyOTAgOTIxN2IzYTQ3NTI4NjI4MGYwNjFhN2FmMTlmNDY3ZDc0OWEyMGQ0NiBweTNrCis2OTI5MSA0NDUyZWIwNTdjYzRjZGFlZDRmOWU4MTU2Yjc0MWIxNzJmNTgwZmI3IHB5M2sKKzY5MjkyIDNmMjc3YjU2NWY3NmVjNjhkMjdmY2RlOGE3ODY3ZDY4ZjhkMzQwZGUgcHkzaworNjkyOTMgOGFhNzFjMTlkY2I4MDhjYTgxYzZjMmMzZDFiNGExNzU0OGZkOWJmNSBsZWdhY3ktdHJ1bmsKKzY5Mjk0IDE4ZDM3MjllMmJhYzAxMmMyN2ZiN2IzMWVhNzU3MDFjYTk2ZTgyMDMgcHkzaworNjkyOTUgYjEyNmNlNzA3YTM0NmU4MDNmNzM3ZGNiY2I4NDg3NDc4NTliOWRlZSBsZWdhY3ktdHJ1bmsKKzY5Mjk2IDUyZjc4YmIyNmJmNTBmMzRlNmMyYmJmMDA1ZWIzNDViZGUwZTc0NjkgcHkzaworNjkyOTcgZWVhYTI1OTA2OWEzM2JmOTIwNWJjYjBlMjNjZDA5YWE5ZTE4Y2ZiNSBsZWdhY3ktdHJ1bmsKKzY5Mjk4IDhmODkxMGYzYjY1MWMyODNlZGE0NzlmYWVmYTM5NmZkYmExNjNjZjUgbGVnYWN5LXRydW5rCis2OTI5OSA4Yzg4MGJiYmU2ODVjMjIwMTYzZDE2YmQxZDIwZGYzYjgyNDg5Mjk4IGxlZ2FjeS10cnVuaworNjkzMDAgMGM5ZDU5OTgzNGI4YjRjYzRjZWVhMWMwNTRlZmFkMTkxNjg2YWY4NyBsZWdhY3ktdHJ1bmsKKzY5MzAxIDQ1Nzk1N2E3ZDZiYTliYWY5YWNiMjA4Y2FhMGUyMjY3NGEzZGE1MWMgbGVnYWN5LXRydW5rCis2OTMwMiBmNDAxMmU3ODI2MGM1ZDkwNDRmMDE4NzljODc1ODk2ZDcxZWQ4YmIwIGxlZ2FjeS10cnVuaworNjkzMDMgYmYzYjhlMzAyMTNmNmFmZWU0MDA3NTk5YjYwMGE4ODRkZjVmOWE1OCBsZWdhY3ktdHJ1bmsKKzY5MzA0IGYwZTVmODU4OWEwYzNkNDY2M2NmMjUxOWI1MGJhZGU0Y2U4ZjdmNzUgbGVnYWN5LXRydW5rCis2OTMwNSA5MGE0YzY2NmY3N2E4NTczMjkxNTNlMDc4M2FiZTExNWViZDc0YjgwIGxlZ2FjeS10cnVuaworNjkzMDYgNDFjNzFhZDQ3Zjg5M2QzMmRmMDBmMjA2YjhkMmIxNTQxMDQ4NWYwYSBweTNrCis2OTMwNyAzMjFmMjdhNDE0ZTg1NGFkZWY1MGY0ZWQ4ZmMwNDRjY2Q2MGJmNTEyIHB5M2sKKzY5MzA4IDc2MjM5Nzk4YTYwODQ5ZDllYzM3YmI1ZTNlZTU2MjE1YTNhYjBiZmUgcHkzaworNjkzMTMgM2ZjMjVhZTE4OWU5NjhhNTA3NmZiOWFmMTIxYzgzNTZmNWZjNjgzYSBweTNrCis2OTMxNSBlMDVjNmJlNmFmMTAwYTg5N2I5M2I3NGEzNzNmMDcwY2U1YjY3N2RjIGxlZ2FjeS10cnVuaworNjkzMTYgNDY2ZWI5Nzg0ZThiYTkwOGFhNGI2MmU5ZDUwNDAxOTczODU5Zjk3YSBsZWdhY3ktdHJ1bmsKKzY5MzE3IGVmM2M2ZDliNGZlY2E2NzdiOTQ2ZDQ1MzgzZGYzMzRlY2NmYTMwN2QgcmVsZWFzZTI2LW1haW50Cis2OTMxOCA5OTdiMjYzMmM5Yjc1YTFjYjY4MjBkZTJhOGQxMjZjMTliOGEzYzVkIHB5M2sKKzY5MzE5IGZkZTAzZTc1YmMxMDBhZGRiYTNkOGU4OTI1NTExNWI2ZTQ0YzU2MDQgcmVsZWFzZTMwLW1haW50Cis2OTMyMCBkYzg1Y2E0MTIwNzlmNzgzYWRhYjIzMzVkODFkM2Q0ODBlYmE3MjYwIHB5M2sKKzY5MzIxIGU1NDI1YWY2MGYzMDQxNjE1MDcyMDMzYTkyZDM1MzBmZjIwMWI3MDIgcHkzaworNjkzMjIgYTE4OTNjNjkxODc5NGQwZjRiMjcxZWQ5ZTJiZmZjNzk2MTYwOWZhZCBsZWdhY3ktdHJ1bmsKKzY5MzIzIGU2YTE0Njg4NTgwZWY0ZGQ2MjdlY2JhNmI0MDc2NTI0MTk0ZDZhMzUgcHkzaworNjkzMjQgNTBkODk0MzZhZWFiNzNkZWViMGJhMzdmZGRmNjAwYjRjNjRiYjg2MyBsZWdhY3ktdHJ1bmsKKzY5MzI1IDE2NzEwMDQ4MzlmOGJmZmUyOWViMDdlYjhlMWYxMWNlMjFlYjk4ZTYgcmVsZWFzZTI2LW1haW50Cis2OTMyNiA3ZTFhMzg1ODQ3YTk4ZGI4ZjUzNWRlZjI4NjA2NDg5YmU1NjVlNjE2IHB5M2sKKzY5MzI4IDM3NDMxY2QxMmJmMjc0YWRjNjk4YmFlZTNmZTcwMWNiYTllYjRjNzQgcmVsZWFzZTMwLW1haW50Cis2OTMzMCAyMWMzZTM1MzE1MDQ2MzYxYTAwYzdjZTNmZDUzMjkyZmJhMGZhNTAxIGxlZ2FjeS10cnVuaworNjkzMzEgZTIzOWU5NzdiYjMyYTJkM2E2MTYyMGY2MDUyNDViZDVkMjdiOTljMSBsZWdhY3ktdHJ1bmsKKzY5MzMyIGEzZWE2NWJmZTM3MDZhNDZlODU4OWIzNTFiYTA0MzllOTFjZTVhMGYgbGVnYWN5LXRydW5rCis2OTMzMyBmNzhkN2ViYjk2ZGE4NGM2Mjg1MWM1Y2IyOGMxMGZhMzFkNjI2N2JlIHJlbGVhc2UyNi1tYWludAorNjkzMzQgYzUwMjJiMTA2NGVhNjZlZTM1MDdlZTBhNmFiMWEzMDk1ZmM5ZDg2NyByZWxlYXNlMjYtbWFpbnQKKzY5MzM1IGU0MzlmOTcyMmE3MzQ5ZGZmZTVjZmIwNzI4MmIxOGNhYzQ4OGUyMjkgcHkzaworNjkzMzYgNTQwZmJlNWM4MTYzZjQ5OGY2ODA5NDJlYTZkNmZlYTZlMmNkMDg3YiBweTNrCis2OTMzNyA3YjhmYTI2NTI4NjY5MTA3ZDFiZjM0MzEzY2M2YWI4NTk4NmQ5Mzg0IHJlbGVhc2UyNi1tYWludAorNjkzMzggZGI4ZWZjOTQwMTZmNGRkY2MzYzIwOTY3MmUyMGVlNTkxZWM2YWRhMyByZWxlYXNlMzAtbWFpbnQKKzY5MzM5IGQxODU1MDI5OGFmODc3MzAwZjM0NTExM2ZkNmZhMmEzNGNlNzQ5ODggcmVsZWFzZTMwLW1haW50Cis2OTM0MiBmZGVjYjkxODI2MDQwZGZhNzY5N2NjNjJlZmRhNzFlNjY4ZTAwYzJmIGxlZ2FjeS10cnVuaworNjkzNDMgMTNmMTM1MmEzZjg3NDNlMzljNjJhMGJkYjZkMTUwZDUwOGQ0ZDA4NyByZWxlYXNlMjYtbWFpbnQKKzY5MzQ0IDIwNzA5NzY5MTk3Mjc0YWIwMjJkYTU4MDcxOTc2N2U2OWNkZDE0YjUgcHkzaworNjkzNDUgOWM0NmQxMDkwMDdlNmM4ZjJkOTk3OTYyMWQ4OWRkNjUxMzc5NTJhNiByZWxlYXNlMzAtbWFpbnQKKzY5MzQ2IDRjYzQ5ZDk3OGVjMjNhYTU1ZmJhYTMwYWFmZjgzZWVlZjM0ZDc0NDAgcHkzaworNjkzNDcgYmJjMWM2ODE1M2FiZGViMmU5NzRjYzBkZjI3ODNkMGE5MDU4ZGFiMyByZWxlYXNlMzAtbWFpbnQKKzY5MzQ4IDBmNzUxMTUzMzA3ZjQ2OWUzZGMwYTgyMDlmNmZhNGNiNWMyZjMwOGYgbGVnYWN5LXRydW5rCis2OTM0OSBjNGM2MTJkOTVhOWI2ZDk2MzYwNDkyNjdlZDE1ZmM2Yzk2YWNlN2YyIHB5M2sKKzY5MzUwIDdlMjhhMmIwYzFiMWYxOWI1M2U4MzRmOGM3MjNiMTM4YzFiZTY2ZWQgcHkzaworNjkzNTIgYTAwZTVkY2VhMTZjOGUwNDg4NDVmOTFjMzkyOTc5MjAzN2NjMDcxOCBweTNrCis2OTM1MyA3YTA1MjU2MTM2NDQ3ZTBlNWVjMTI1ODE0M2Q2OTIzMWJkYmRjMjVkIHJlbGVhc2UzMC1tYWludAorNjkzNTQgZjk4MWUwNTU3YzM1MDdjYjQ2ZjVjOTk5YTg2NjhmM2RmZjBjOWE2MiBweTNrCis2OTM1NSAwNWQxY2IwNTNkNDdlNGZjYWQ4MTAyNTQ3MTFlOTllZjFmODEzMmVkIHJlbGVhc2UzMC1tYWludAorNjkzNTYgY2M4MjUzMTE2Mjc1ODBiMTAxNGEzMGJkYjg1ZjdjZTllYzZmN2YxNCBsZWdhY3ktdHJ1bmsKKzY5MzU3IGYzODc4MzRjZTVkY2QzNGU3MTMxNjI2ZDYzZTI1YWI0YTg2OTViZmQgcmVsZWFzZTI2LW1haW50Cis2OTM1OCA1NGU0MDljMmY0OGQ2YTEyNjBiMTQ4NWFkZDkwZWE4NzA5NWU4NTAzIHB5M2sKKzY5MzU5IGZiNDUxMTFmMjQ0ZWI1ZTlhYzYyMzhlMjA0NjRkODNlOGI3YTZkNzUgcmVsZWFzZTMwLW1haW50Cis2OTM2MCAxODNhNmMyOWJmOWMxOGRmNTliYjgxMmU4NzY2YmFlOWIyOGU2MDBlIGxlZ2FjeS10cnVuaworNjkzNjEgNmY0MDc2OGQwOTA5ZDY5YTQ2MmU1NGU0NjFlM2FhOGU0OWQ3ZDU1MiByZWxlYXNlMjYtbWFpbnQKKzY5MzYyIGI0ODIwZmNlZGEyNDFiMjVkN2Y5MTYwZjI5ZGZkZjI1NTBmMDgxMzMgcHkzaworNjkzNjMgZGI0NmY4MmQwYTFkMWRlNDM2ZDJmMWIwNGYyZjBiNmNlNDVkOWU3YiByZWxlYXNlMzAtbWFpbnQKKzY5MzY0IDQzMjdkZmE2ODExOGY5OWIxYjk3ODAzNzIwY2Q5NDkyYTUwNDdiYzAgbGVnYWN5LXRydW5rCis2OTM2NSAxODIxMGFmZDAwNWE3MTA4NDViYjQ2NTAzODIyODViZTc2MDI3NzIzIGxlZ2FjeS10cnVuaworNjkzNjYgYzlhZmZiYTA2OWVhZTU5NTQzNjVlZTQxOTY1NDVmZDgwOWJkOWQ2ZiBsZWdhY3ktdHJ1bmsKKzY5MzY3IDI4ZTQzMGYxNGMwZGNmNDMzNzYyMWJhYzdhMjhmZDNlNDEyZjFiNzEgcmVsZWFzZTI2LW1haW50Cis2OTM2OCAxOWRiMzc5YmFjZjgzMzc3MjgyYjIxNDdiMjdkODIzNzM2N2U0YjI1IHB5M2sKKzY5MzY5IGYyZGYxMGJhNjA1NDg1ZjNkMDYyOGQyNTQ0NDAyZmMzNGExN2IxOWEgcmVsZWFzZTMwLW1haW50Cis2OTM3MCA5NmZlNDVkZTdmMjZmZWZhNjVkNThlZGMxMjgyZGIzYzVhNGVmNTc5IHB5M2sKKzY5MzcxIDFjZTAzNmI4ODA5MzY0MDFlYTE1OWJhZWRmYzI5MjNiZTUxNjc2MzggcmVsZWFzZTMwLW1haW50Cis2OTM3MiBkMWU1NDA3ZDU1MDliYWQ4Y2YxNzY1NzNmOTU5ODEzOGMwOTk5Y2Q0IHB5M2sKKzY5MzczIDQyZmFhODA1NGMzZGNiYTJiMTY5OGQxYWE4YTY1YWI3MDMwZTY4MjUgbGVnYWN5LXRydW5rCis2OTM3NCBiYWE4OGU5ZTk3NjZjYThkOTI0NjVhMTMwODBkNDVkNWM1ZGJjYjc4IGxlZ2FjeS10cnVuaworNjkzNzUgMmE0MGQ5ODFjNjUyYTJjM2NlZmE3Yjg0YThiZTM3YzkwZmFkOTljMCBweTNrCis2OTM3NiBkNDYxM2U5NzA0OThhNGFiNWU2Y2E2YTQ4YjY1NjE1MzVhYjViMDY5IGxlZ2FjeS10cnVuaworNjkzNzcgOTg1NmM0ZmFhYzA0ODFiZDcwNGZlMzI2MTBkYWQ5ODA3MzI0ZjNlYSBsZWdhY3ktdHJ1bmsKKzY5Mzc4IGI0ZTE1NGM4YTM4YTU1YjdjOTIyNzc4Njg1ZDJmMGQ0YjU3NzU4Y2YgcmVsZWFzZTI2LW1haW50Cis2OTM3OSBkMmRlNWRhMGY1NjM0ZmI4M2ZkODY4MDg1YjhjNTMzOTMyMzU3ZGEwIHB5M2sKKzY5MzgwIDU4YjdkYzljOTU1N2I3YmQ5MmQ0OTdkZjEwMTY1ODVhZjgxZWQzOWIgcHkzaworNjkzODEgYzAyODk1YTNlZDZkNTdmM2Y4NmI0NGMwNmJlNzBiZTI3YzZmNDgyNiByZWxlYXNlMzAtbWFpbnQKKzY5MzgyIGUxN2IzN2MzNWM3YmIyNDA1MWRjOTViNWI0OWNjMmM2NjMwYzlkYjAgcmVsZWFzZTMwLW1haW50Cis2OTM4MyAwM2FkZGQxNGU2ZjJjMzFjZTdmOTVjODMyMzhiMmU0NGQ1ZGE3NDk0IHJlbGVhc2UzMC1tYWludAorNjkzODQgODE5NzE2NmFhMTliN2RjMzNlNDdjOTBjMzgwZTY2MmM5NjRmNGJlZSByZWxlYXNlMjYtbWFpbnQKKzY5Mzg1IGE3MTMyZGI2OTA5MjE4ZjAyMWUwM2YwMTQ1OTJiNmI2NzUzZTFhMzUgbGVnYWN5LXRydW5rCis2OTM4NiA3YWQxYWI5OTA2ZWU1YWFkOGRmZjg0OGVmZTliZTE3MjIyN2FlZDk0IHJlbGVhc2UyNi1tYWludAorNjkzODcgYjA5MWJmODM0MjI2YTM5YTAyOTJkZDBkNGVjYzVhZTkyYjQzZjk0NCBweTNrCis2OTM4OCA2ZTkzZGQ1NzhjYjg2NjBmZmUwYTE4YmMxM2IwODhkYTc5ZjBlZTcwIHJlbGVhc2UzMC1tYWludAorNjkzODkgMDE1MWM1MTRkZjU2OWVmMWIxODUyZDRmZGE3ZTEzYzczY2I0ODVhZCBsZWdhY3ktdHJ1bmsKKzY5MzkwIDIwN2QwZWE5NTNkZjE4NTUwY2ZkNzBkYTAwOGJhNTUxZTQ4ODI5ZmMgcmVsZWFzZTI2LW1haW50Cis2OTM5MSAwYjM4MWI0MjNjZGY3MjM5Y2MxYjE4NzcxMzQ1NDNiM2ZkYzMxYWY1IHJlbGVhc2UzMC1tYWludAorNjkzOTIgNjZlY2ExM2VkZTE4M2MyZTI4MGRkOGFhNmJiZWQzODgyNjM2ZjkyYSBweTNrCis2OTM5MyA4MTE1NDY3NzBkMjBmNjBjZDQ0ZjgyNzkxYjQ1Mzk4MjU2MGEzNDAwIHJlbGVhc2UzMC1tYWludAorNjkzOTQgNDgwOWFmYTg1YTliNmJlOWJhNjMwMjkyNGRlMDViOWU3YWRmZWZiZCBsZWdhY3ktdHJ1bmsKKzY5Mzk1IDdhMTM1NmQyYWVlZjMzYjg2MWJmYjY3MDJjYzExYTg4MmU1ZDBjNjIgcHkzaworNjkzOTYgYWI2MGJkYzcwNzEwNmI5OGUxYjU2Yjc1NThkOWUzN2IzZDhkYjE1ZSBweTNrCis2OTM5NyA2NmRhNTI4MzMzNGYwNjFiMWQzODA1YTZkZDdhMjIyMzM5NGVkMjNiIHB5M2sKKzY5Mzk4IDM4OTYxMzNjOTVjYmE4ZmNkMDBiNDgxMmQ5NDc1ODMzODdlYTQzYTYgcHkzaworNjkzOTkgNWNkYzVmMGMxMzRjOGU2NDU3ZjQ0ODAxOTA2YzQyNzFjYjk2NTBhOCBweTNrCis2OTQwMCAzMjk1NzkwYTY1YmU3ZmNhNzlhODk4ZGJiZDk2OTAwNTNjODExNThhIHB5M2sKKzY5NDAxIGJjNThhNjFmODE3YmY5MjhmYjg2N2FkYTEyNzZhMTljMzM2NThhYjUgcHkzaworNjk0MDIgNDNkM2E5NWVkNjYyMTk3MjAwMWZkYjAzYzVmN2U5NjRiODJiYjFhNSBweTNrCis2OTQwMyBlZWYzOWI0Mzk2ZmZlNDYxZjY1NmUzNGExNzgxZjgxZDk1MjljNDFmIHB5M2sKKzY5NDA0IDJmMWVmZmYwNjZiMzg4MmQ3MDMxYzA3ZTE2Yzk2NTY0YzliZjgyMWUgbGVnYWN5LXRydW5rCis2OTQwNSAwMjUwNzg4MjdiNTQwODZjNzE0ZThiNzJkYjNiY2RmMzJkYmU4ZTM1IHJlbGVhc2UyNi1tYWludAorNjk0MDYgOGNkOGUyMzY4ODIyMTFlNGJhODYzOTY5OGIxMTc5MGVkMTE0YjRhOSBweTNrCis2OTQwNyA5MmZhMzliOWFmMTNjODM2MWQ1MjQ3OWJlMjY5Zjk0NmZiZWI1NzRkIHB5M2sKKzY5NDA4IDg3MzE3YTg4OWRiMDQ0YTY0MTY2ZjhmNjRmYTIzOWZiNjZhYzE4NzcgcmVsZWFzZTMwLW1haW50Cis2OTQwOSA2OWIyNmU5OTBlYjg2MTBmZDBhZWY5MDViNGE4NjUxOGEwYmE2ZDljIGxlZ2FjeS10cnVuaworNjk0MTAgOTllMjY0ZmUyMzgzMGIzYzZhMjM1ZWNhZDZiNWM0ODZiOGRmZTg3MyBsZWdhY3ktdHJ1bmsKKzY5NDExIGMyMWZiNWVmYzYzOGRhMjVlZjQxODZlYTFkYmU0NTVhYTJhOTQxMzAgcHkzaworNjk0MTIgOTAxY2IyMDdiMWQzMTdlNjhlMTgxODUyNzdjM2U4MzMzZThhNTE3NSByZWxlYXNlMzAtbWFpbnQKKzY5NDEzIDQ5NGRhMmM3MTkwMmQzYjZhMjkyZjRlOTk1MzgwN2ZkZjVkNTI4NzAgbGVnYWN5LXRydW5rCis2OTQxNCA5ODk5YWZlMGZmOGMxOGNmZDkzZWNkZGZjMTIwYTg2ZjgwOWUxNWQwIGxlZ2FjeS10cnVuaworNjk0MTUgMGFiMzY3OTZkZDc5NTg5MGM4YmM2NDA2NzM4MmZiNTNmNDNjZDgzOSBsZWdhY3ktdHJ1bmsKKzY5NDE2IDMyMGNkNzFlMmM1NjJjYWQ3M2E3ZDljYzBkYmZlZmUwNDU0ZWI1MzEgcHkzaworNjk0MTcgMTAwYWU2YThiYzJkYjM5NjdjZTY4YzUzZGM5ZTlmMTg4MDRkMGNiMyBsZWdhY3ktdHJ1bmsKKzY5NDE4IGNjYzcxODhmZGQyOGZjM2QyMjA3N2NlMGIwNGE2NzVkOWQ5NDYxY2IgcHkzaworNjk0MTkgNWNjZTk5YWExZjU4YWM3YjkyMTNlM2Y1MjI1MmVkNmI4NDhkZGY0MiBsZWdhY3ktdHJ1bmsKKzY5NDIwIDU3MDhhMWUwMTY0NTkwZTYwOTQxYzQwM2JhYjIxMzYxMmNlN2IyNmMgbGVnYWN5LXRydW5rCis2OTQyMSAyZDM1NGY0ZDc3YmNiYzZjNzVhNzQwZDhmYjUwZjhjODdlNzRiNmY0IHB5M2sKKzY5NDIyIDE3NThkZWQ0NGI0ZTBmYmI0NzFlNjEzZjc2OTBhMmVjNmYzMThlNzUgcmVsZWFzZTI2LW1haW50Cis2OTQyMyBmODVlY2Q3NTY0MTE0YTIwMjAxNGE5ZjQ1YWE0ODI4MjQyNjdlYTNhIHJlbGVhc2UzMC1tYWludAorNjk0MjUgMTE3ZTE1MmU1MTNhNjUwY2RiMTg0MjQ5NWVkM2JkN2MyYmE2MjdhOCBsZWdhY3ktdHJ1bmsKKzY5NDI2IDc0ZDE5NmM1NDJmNzhhYjhhOTQ5Y2U2Zjg3NjJjMDE4MmZhMzc1Y2MgcHkzaworNjk0MjcgMWNjNjFjNzliOWNlYWZhZjJiMGUzZTczOWM0ZDY3MWYzMmYzZDhhMiByZWxlYXNlMjYtbWFpbnQKKzY5NDI4IGU4ZmExMGM2NmQxODNlMGU5YjdiN2I2M2RiNmI5NGM2MjY0NTEyNTIgcmVsZWFzZTMwLW1haW50Cis2OTQyOSA1MDFiMWYwMzVmMjk5MGI4MmM2ZmI2Zjg1ZjYyYTg3OTBlMmFjZjAyIHB5M2sKKzY5NDMxIDBlZDIyZjFhZWQwNDYzOTQwODBlOWVhYWViNTZlZDhlMWVhMzE2OGQgcHkzaworNjk0MzIgN2JmYTY0NDkyZDAwMTYwYTRlMGY3NzIyNzI2Njc1YmJjMTFjZWM4NCByZWxlYXNlMzAtbWFpbnQKKzY5NDMzIGM1OTM1Yzc0OTdmYjYzMWY0MWQ2NTY2ZDAzZGQ4MGY5YjJkYWU2NzAgbGVnYWN5LXRydW5rCis2OTQzNCA0YzdlZDQwZGI4MWVhYmFmYTkzMGQ0NmQ2M2RmNzcxYzQ4NTg2MmQ0IHB5M2sKKzY5NDM1IDBlYjQwNWQwMWUwODNkM2UwNjZlODgxZWZlMzMxZTljYzA4NzVmOTMgbGVnYWN5LXRydW5rCis2OTQzNiBiYmI4MzUwZGRiZDI1OWQxNmZjN2ViYTA2OWE3ZTQ4NTBhYTBkYTA3IGxlZ2FjeS10cnVuaworNjk0MzcgNTg0OWE0ZjkwNGEyYTAzMjU4ZmQ4Y2JmYzJlZDRiNGJkNDM0YjgxYyByZWxlYXNlMjYtbWFpbnQKKzY5NDM4IDk0NWNiOTViMzViZjU1Y2FiNWViYjA0YThmZTlmNmEyMzQ1OGVlMDQgcHkzaworNjk0MzkgNDMxM2I0ZDRiZGM3M2QxNmJmZTU5OTI4M2YyMTRiNGI3ZjMyZDk2NCByZWxlYXNlMzAtbWFpbnQKKzY5NDQwIDIyNGQwZWZjYmY2Yzk0OGQyNzEyYzljOTQwZjJlYjZhMzQwNGJiMjUgcHkzaworNjk0NDEgZmQ3NGIwYzA2OTI3YzkwNDkyMzIyMjFiN2U3OTc5YWM2NDBkM2Q2NyByZWxlYXNlMzAtbWFpbnQKKzY5NDQyIGMzMzJmN2I0NTY0NzIzY2EwMzFjOGM0ZTM0YTBlN2ZjYmI1MDY3MDcgbGVnYWN5LXRydW5rCis2OTQ0MyA5OTRmZTRkZjRhZjcwZjU3YTIwOGMxODE4NTAyMzI3NTQ0Mjg0NTk4IGxlZ2FjeS10cnVuaworNjk0NDQgNjU1MGRiNDkyZjI4OGE3NzJjYTZiMjU5NDZlMzIxN2FiYmRjZmMyMSBweTNrCis2OTQ0NyBlNDkwMTNmMWQ4MzE0M2IxYTJiMjE0MWFmNDZlZDE3ZWFmNTllNzM2IGxlZ2FjeS10cnVuaworNjk0NDggYzE3ZjkyODFhODU2YjFkYTk5NTFlNGFiNDg1ZmE4MjgxMjQ5NTQyNiByZWxlYXNlMjYtbWFpbnQKKzY5NDQ5IDRlYTEyMjk3MzkxNDNlODUyNjFkYzcxNTIwNzIxYWQ5MTEyZGIxNzggcmVsZWFzZTI2LW1haW50Cis2OTQ1MCAzNmJjOGQwZTAxYmY3MzUxMTQ2NjQyMzE1OTdmODZjNDY3ZDczOGM2IGlvLWMKKzY5NDUxIDhjZmExMDhlN2JkYzNiOWM1NDBhYzQ2OTBmOWNiYTBmMjgwODY0NWQgcHkzaworNjk0NTIgZGEwMDcwY2Y0NjU0NGYyZDhmZGVjYzZjNzQwOWYxNjYwOTJkNGE0MSByZWxlYXNlMzAtbWFpbnQKKzY5NDU5IGU0MjNkMDdmMDhhZjBhN2M1M2ExYTk3MmI4YTZlNDQzZDA2NGFmZTAgbGVnYWN5LXRydW5rCis2OTQ2MCBkY2ZmYzcyMzgxZTczNGYzZGE3ZTRmMTM5ZWM3OWUyODlkNzIyMmMyIGxlZ2FjeS10cnVuaworNjk0NjEgN2JiZGNlNWM5MjUwNTI2MTUzNmYxMWNjNzkxMDFiZTJlZTE2MzJkYyBsZWdhY3ktdHJ1bmsKKzY5NDYyIGU0NTUyNTE5NTMxN2QzOTk0ZWIyYjY2MTNjZDg2ZGNkYWRkY2I4NGEgcmVsZWFzZTI2LW1haW50Cis2OTQ2MyA0NzI0NWFlMzIxMWJhNjllZDRkZmRjOWU3YzE3MGZjMjc3N2Q1YTJiIHB5M2sKKzY5NDY0IDY2M2NlNzRkNTE3NTdkNDYzNWIxNDhlNjQ5ZWM0N2E3MWQ0YWQ3MjggcmVsZWFzZTMwLW1haW50Cis2OTQ2NSBmOWYyZWQ3OWIwMGZjMmJmMTU4MzAyZjZjYzI0OTUwODUwNDUyMTAxIHB5M2sKKzY5NDY2IDE1NGU3YzQ3NGFhZDA0N2M5YmRjNWFjYWY5ZTU1ZGRmZTc1ZDQxY2IgbGVnYWN5LXRydW5rCis2OTQ2NyA2NzQ1YmRhYTliNDliNTkzNmRkZDg0MzAxMDhhYTJkZDcwMTI4ZWY0IGxlZ2FjeS10cnVuaworNjk0NjkgYWM2MjQzMmZiMzQxZDdlY2ZkMDk3ZDJhZmU5ZWIxZDZkYjA0ODQ4ZCByZWxlYXNlMjYtbWFpbnQKKzY5NDcwIGJkZGU0NGFmOTc0NDA2ZjM0ZTZiMTUwZDJkMTEwOGE2NDEzYTcyZGEgbGVnYWN5LXRydW5rCis2OTQ3MSAxYTdkZDlkMmU3ZWMzZTEwOWQxNTQ1M2QzYTU0ZDY0MjRkOGVhOGM3IHB5M2sKKzY5NDcyIDYyYTFlZDZlNjM2YWMxZTU2YTA1M2NmMDI4Y2YwOWU1NWJmNjM3ODggcmVsZWFzZTMwLW1haW50Cis2OTQ3MyBmYmJiYzI1OWI1Y2U4OGRhMjkyMzBjMGVlYzk1MDM2OTU5N2M3ZTgwIGxlZ2FjeS10cnVuaworNjk0NzQgZDdjNGQwNzFkYWZhZjE5YWM1YzJiMzFmNWE2MzM0OWI2OWQ2MzY2MyBsZWdhY3ktdHJ1bmsKKzY5NDc1IDI5ODgwNmY2NGRmYTM2NDZkOTMxMDU2YmUwNWQyN2EyNzc0ODg5M2EgcHkzaworNjk0NzYgNGU3YmE2N2NmYTA1MzczOWY3YzZlMDJjOTE2ZTY1ZTA4YWIzNjczOSBweTNrCis2OTQ3NyA4NzIxYzIxM2I2ZjQ0ZDBlNDk3MzcwZTdkNGY3MmUyMjQyNWNiNDJiIHB5M2sKKzY5NDc4IDg3ODIwZmM2NWQ3Yzk4OTkwN2RkNWRiZDNlNDNmOTZkMGY5Nzc2MjcgcmVsZWFzZTMwLW1haW50Cis2OTQ3OSBhOTBjOTI5OGRiYjQ4OGM5Y2MwYWEzMmRjZGU4ODRiYTA1Mzg3YmZiIHJlbGVhc2UyNi1tYWludAorNjk0ODAgYmVlZjg4MThhNjZjMjFiZTU4MTI3OGFjNjEzYWYxMjE0ZjgxZWUyYiBsZWdhY3ktdHJ1bmsKKzY5NDgxIDU4NGM0N2Q4YzkzZjFhNzU0ZmFjZDI3NmIzOWExMDgwNzFkMmUwNGEgbGVnYWN5LXRydW5rCis2OTQ4MiA1ZTdkN2ZkMWRhNWE3ZmFlYjVlNGJlYWMyYWJhZWYxNjRmMjZhMDA4IHB5M2sKKzY5NDgzIGFjOWVmNzQzMWM4ZjEzNGMyMDcyYmQ1ZmZlNzQ1YzkxNzhlZDAyMjUgcHkzaworNjk0ODQgZTc1OWRhOTNkZjY0N2YyNTJmYzQ1YzIxMTQyNjU0OTdkYTYwMmZjOSBweTNrCis2OTQ4NSBjNjFmMjRmZjA1NWU0MGQxMzMzY2M5MzhiOGMwYWM3YjA0ZGU0ZDIwIGxlZ2FjeS10cnVuaworNjk0ODYgMTMwN2E2NmEzOGY4ZDQ4N2YxNjRjMmFhNzdmZjI2YjlhZDU5MDIyYSByZWxlYXNlMjYtbWFpbnQKKzY5NDg3IDhhMjhkOTlmNzg0ZDc3YWM0MWZjNzFlM2I4YTJhNGI5ZTM1NGM2YTEgcHkzaworNjk0ODggMzQyM2Y2NDdiNTRhNjVjMmNjMWNkYzg3ODAyOTU0M2U2YWFiN2U2MyByZWxlYXNlMzAtbWFpbnQKKzY5NDg5IGRhYjgwNjM1MDM2ZTg4MjI4Mjc3NTViN2EyYzFmZDYzMmUzMDhmMzYgbGVnYWN5LXRydW5rCis2OTQ5MCAyYWU3NzBlZTYyODQxNzAxOGM0NzA4Y2NhYzhjY2E2NDYyZDIzNjdkIGxlZ2FjeS10cnVuaworNjk0OTEgMzg2NDIzODViMWUwYWYxNDMwYTgwMWNlYzEwZjczNWVhODNhNGM5YSBweTNrCis2OTQ5MiA2MzE2ZjM3NmI4MTRiYjFkZTNlMTIyZTBlMWVhZDQxYzExMDNiY2Q2IHJlbGVhc2UzMC1tYWludAorNjk0OTMgYmRiMWNhOWFiY2UzNjJkODhmODliYjE1NGY4NGJmMjlhYmRlOWUxZCByZWxlYXNlMjYtbWFpbnQKKzY5NDk0IDFmZWMwYmI1MDlhMmI1ZTQ4MmJkODcxNDE4MmViNjVhZjgxZTgxYmIgbGVnYWN5LXRydW5rCis2OTQ5NSAwNDE1NDE3Y2ZkNDgzYjk5ZmRkNDBiZjE2OTY0NGI2NWYzODNiNmQ1IGxlZ2FjeS10cnVuaworNjk0OTYgZjBjNzQwMmNjMDAwNjkzYTdjZDIzNDk2MzkzYmY1ZjJlZjRhOThhZSByZWxlYXNlMjYtbWFpbnQKKzY5NDk3IDA4ZTBmMDNiYTgxNzI4YzFlOGM1ZTNkYTJlM2QyNDRjY2U2MjRlOTUgcHkzaworNjk0OTggMjA2MDlmYzEzYTEzNTc1NGJiYzgxMTQ5N2Q0YTNmMzdkZWZiMjY0NiBsZWdhY3ktdHJ1bmsKKzY5NDk5IGEwMDc0NTQ4MDEyMGRmOTA3NzcwMDFiNDc1ZDhkZDRhNmQwYzBkZDIgcHkzaworNjk1MDAgMDU4ZGNhNzNlZTMwMjk1MWZlMGZkMmExODg5YmFmZDg0MDZjMjk1MCBsZWdhY3ktdHJ1bmsKKzY5NTAxIDk0ZDlkNTI1NDAxYzE2M2VmZGUwODljNjVlYzRjZjcyODU4MjMxOTAgcHkzaworNjk1MDIgN2Q2Y2RmMzM1YTU3MDI5MGFiMDhjMzIwYzI0ZjE4OTU4ODc0YjhjMyByZWxlYXNlMjYtbWFpbnQKKzY5NTAzIGZmYjljZjk0YzlmMTM5OWZiNjgyYTIyYzNlZDdmZjA5MDY5YzhmZTEgcmVsZWFzZTMwLW1haW50Cis2OTUwNCBmMzU4YmEzZDFlNTM2MzcyN2RjZjVlMjU3NjEyMDhmNjJlMWUzOTg3IHJlbGVhc2UzMC1tYWludAorNjk1MDUgOTViYjc3MzllMzg2Y2JiODkyNTViM2MxNGE5ZmZjMzk2ODFmODdmMiBsZWdhY3ktdHJ1bmsKKzY5NTA2IGQzZTg4Zjc3OGNkYzE2NWFkZTc3ZGFjMDYxOTVkNWM2YmU4NzhkMmEgcmVsZWFzZTI2LW1haW50Cis2OTUwNyA2ZGJlM2Y5YTA0MGNiOGU0ZTRkNjAzNTA3OWEzZGY1ZGUwYmExOTMxIHB5M2sKKzY5NTA4IDk3MmU4NjE3ZGZkYTZkODVhODI3MjdhNzY0MWYwMTMyZDFlY2VjMmEgcmVsZWFzZTMwLW1haW50Cis2OTUwOSA4MzUxNWJkMjg2MjZkNDI5NWZjYTMzZmYyNDAzMGUwODhkZTQ3ODM0IGxlZ2FjeS10cnVuaworNjk1MTAgNzJlZTQyY2M5NTMwZjNmNmY2ZmRkY2MwYzFlNGUwM2VlYWFlZjE2MSByZWxlYXNlMjYtbWFpbnQKKzY5NTExIDUxOTZlYWZjYmQ3MmM2MmVmYjIxM2I0YmZiM2YxNjFjZmY0ODhlYzcgcmVsZWFzZTMwLW1haW50Cis2OTUxMiAyOGJmNDU3ZmIzNGQwYjljMjcyNWRkMzFmY2NkZTgzZDI3ZGZjNDA3IHB5M2sKKzY5NTEzIGFmNDY5ZGMxNWZhN2JiZDk0ZGMxNWY3N2M4NmVhYzNhNTU5MzdkMTYgcHkzaworNjk1MTQgN2JiM2Q1MTViNjc3ZWFmMmRmZDJiZjYyMTc1MDBjZTJhZjBkZTVkOCByZWxlYXNlMzAtbWFpbnQKKzY5NTE1IDljMGE0ZmJiNTZiOTBhZDM3NDM3NDEwNDBhZDAwY2Q4NTEwNDA4ZmYgcHkzaworNjk1MTYgZGJkZDk0Y2QwN2ZiNDZhYzA1MjUyYjY1MWFiYzE5ZGJlMzMyMmY0NCBsZWdhY3ktdHJ1bmsKKzY5NTE3IDdkODk3MDY0YTZlZmI2ZDY3MjNmOWU5NWIyNDUwYjYzZmNlNTFiNWIgcHkzaworNjk1MTggNGQ5YjUyZmNiNWRmOWQ5OWQxNDJkNDQ1MWM5OTljMjk0MGVmNjk0MCByZWxlYXNlMzAtbWFpbnQKKzY5NTE5IGVkY2Y5OTZmMDdlOThmZmExODY0NmJjOTEwMmRkMzQzZWU3MTNlMjggbGVnYWN5LXRydW5rCis2OTUyMCAyOWE5ZTg1ZjMwYmY3Zjg3MTg1OWNkODUzZGU3YjYwMzQ4MTM5OWRiIGxlZ2FjeS10cnVuaworNjk1MjEgZDY5NzY5YjRmZDIwYTQ1ODIyNDk3NzIzNTQ0ZTliODk2ZTI3MWJiMyBsZWdhY3ktdHJ1bmsKKzY5NTIyIGNiZDUzZmY0OTU1NzBiOGE2NWEzOGE1NzU4NmQwZTgzMjI3ZDRkOTggbGVnYWN5LXRydW5rCis2OTUyMyBiMGRiMTA5MDg5Yzk2OGVkYjY4N2I0NmI4M2U0NDVhOWRhYjhhYTc0IHB5M2sKKzY5NTI0IDJhYzAyZGFlZjJlZTM4ZTk4ZjFhODA5ODI5OGJmODM3NDA0N2QzOTUgcHkzaworNjk1MjUgNDM1ODVkYmY2MWQ1N2ExODllODczMGNjNGQxYjVlZDFjYTZmMGM1MyBsZWdhY3ktdHJ1bmsKKzY5NTI2IGNiODE5MGExYmZhYjljNTM5ZjhlZmM5MzIzOGYyOTYwZDBhYTZjMjggcHkzaworNjk1MjcgMmJmNWVkNjcxZDAyYzExNjJiNjhkNmZkYmM1OWNhNzNiZDE4NDU5ZiByZWxlYXNlMjYtbWFpbnQKKzY5NTI4IGRmNjliY2NkZDM2M2JmMjc0MjA0MWViNTk0ZTA3YTY1NDZmMjdiOTAgbGVnYWN5LXRydW5rCis2OTUyOSA3ZDI5YzZlOGJhMDU1ODA3NTEzOWRmOGE4ZGYyZGIwNWFjZDVkMjlkIHB5M2sKKzY5NTMwIDA5OWU5NjA2NzZiOWYwNjRkMTlmMDQ2MWE4NDE1M2IzOWYwZDJiYzMgbGVnYWN5LXRydW5rCis2OTUzMSAxYWUzNGE0OGI3MzkyMDA4Yzc3ZGVlYzQ4OWQ4MzMxMmUwMWE5NjA2IHB5M2sKKzY5NTMyIDk2NzdkZDBiMDllNmI2MjdmN2E0Njc4MDAyZjc5NjdjYTNlNTYwZWMgcHkzaworNjk1MzMgN2ZhOGI3YTJmNTBhMjE1ZTQ3NjE2ZjJkZDg1Y2Q3YTQxNjhjMmQ1ZSByZWxlYXNlMzAtbWFpbnQKKzY5NTM0IDIxNzQyNWVhMjc2OWMyODE1NWMwOGY1ZWYzMDBjMDJhYjQzZjc3YmYgcHkzaworNjk1MzUgOTJkZGJhNTc3OWY5NDk0OGFiMzQ0NGIxNGI4MjE4NTYxNmM1N2I4MCByZWxlYXNlMzAtbWFpbnQKKzY5NTM2IDg2MTAwOGRlZWQ5N2EzZmQ4NzhjMTNlYmI5NzFiNzA1ZTQ2ZGQ1ZGMgcHkzaworNjk1MzcgNWI1MDExOTZmYzM4M2ZjMzIzYWY0MGZmODA4NmVkOWM1NzJmOWJmNiByZWxlYXNlMzAtbWFpbnQKKzY5NTM4IDY1OWQ4ODkwNGY1ZmIzM2U3MDYzZTgxZTE3Zjk4Mzc3MGZiYTUwNWMgcHkzaworNjk1MzkgMDhjYzU3NGFmNGY2MDllYzIyNzQ5YzlkMmNiMjk2Mjc1ZTI1MjE5MiByZWxlYXNlMzAtbWFpbnQKKzY5NTQwIDE4OTY5NmM0NmMwZTdmNGZhMjUxMDFmNDY3MWU0N2NkMjM3NDMwMTAgcHkzaworNjk1NDEgY2FiNGUyZTQ4NGEyYmU2MDhhZTJhMzZjN2I5YTFkM2JiZWFhODNlZSByZWxlYXNlMzAtbWFpbnQKKzY5NTQyIDgzYmQyZDE3NGNjOGQwMmU3MjVmMDcxNmZiNTM0MWYxM2ZhMjNmMTggcHkzaworNjk1NDMgMjdjNTg5ZjA5YTIxNzRmZjkyYzZhYzU2NTdjYWM3NDI2Mzg4ZTJhNiByZWxlYXNlMzAtbWFpbnQKKzY5NTQ0IDk3MWJiNDdmZjcwYjYxMTIxOTIzMTBmYTViOGVlZTNhZjk0NDNlN2EgcHkzaworNjk1NDUgYWNkYjMyMzQxZDg3YTMxNzk3OWZjNjkzODI5ODA3ZTY5YTNjNjA3ZSByZWxlYXNlMzAtbWFpbnQKKzY5NTQ2IGEwZDhjNjE2ZjM0MDVjYjk0MTJhOTJmOTc3YzIzODJlMWY2NzM1YWIgbGVnYWN5LXRydW5rCis2OTU0NyBjMDliNTAxNTE2YmQwY2M3NjIwYWZjMjBjY2Y2NDhlNTcxMDdkNWQ5IHB5M2sKKzY5NTQ4IDVkMjg0MDUwODBlZGZmMzkyYzc1NDIzYTVmYmQ2M2UxODZkNDg0MzQgcmVsZWFzZTMwLW1haW50Cis2OTU0OSAzMTY0NWVhZDRjMzViYjQzYmVlMmMxYWQwYmE5NmNlMzA3MDEyOTRjIHJlbGVhc2UyNi1tYWludAorNjk1NTAgOWE5MzJmOTJmMzk0OTk3YWIzNWQ4YmY5MmZmYzkwMDRkNmY1N2YzNCByZWxlYXNlMzAtbWFpbnQKKzY5NTUxIDY2NDFkODI4ZDc2MmQ2NTFjNWY5Y2EyYmJhMTcyOGZkZGNlNWQ1NmYgbGVnYWN5LXRydW5rCis2OTU1MiAxMzMyOGYxMWFkMjk1NjYxYjg5NDk2ZjVhZGNkNTFiZWUzNTc4ZGNhIHJlbGVhc2UyNi1tYWludAorNjk1NTMgM2VmNWEwYzVlNmI1N2ZkOTU5M2NjNThiM2I2YTUwYWMwYWJjMDRmYSBweTNrCis2OTU1NCBlMzc1MDcxZjk1MGVjNzU3ZWM5OTlkZjdkYzk1NWMxZGMyNjkzNGE1IHJlbGVhc2UzMC1tYWludAorNjk1NTUgY2UyOWZhZWQ3ZjY5ZTIwZDNiYzFlMmE5ODQxN2U3NjcwNzVlYmNhNyByZWxlYXNlMzAtbWFpbnQKKzY5NTU2IGU1MDJlMmJmMzVlODZkYmZhM2I1ODhlZjI4ODhlYmVhYTAwMzdlNzAgcmVsZWFzZTMwLW1haW50Cis2OTU1NyBjZDQyZTg1Y2FmZTdlZDZjNWMyZGI2NTgyNjc2YzE1YTY4ZTljN2JmIHJlbGVhc2UzMC1tYWludAorNjk1NTggMDdmOWUwMDQ4YjBiZGRmMTI4NmE4ZjFhYzg4YzJiOTMyY2Y2YzUwZCByZWxlYXNlMzAtbWFpbnQKKzY5NTU5IGUyZWEwZjgzZjAzOTQyYmQ4ZDEzZjhkNGEyOWIzNTdjODRmNWM0YzUgcHkzaworNjk1NjAgNjQ4ZTA3ZGQwODI1OGY2MGYwYTU5MzU1NjZmYzFjNGJkZTQ5MTUwNiBweTNrCis2OTU2MSAxZTdhYzE0ZTQ5Mzg3ZWI2NDQyMTFjMDU3NzNmMWI3MzA4OGIwM2NhIGxlZ2FjeS10cnVuaworNjk1NjIgZTZhOGExNjQyMzNhNDNiNTlkNDU1OTUzN2IxYjllODA4MTRmODNkOCBsZWdhY3ktdHJ1bmsKKzY5NTYzIDhkMzZhYjA5M2Q0NTZjMjRkMThlZGEzYmNkMDMyZWM1M2YyZTlhM2UgcmVsZWFzZTI2LW1haW50Cis2OTU2NCA0N2E3OWQ3ZWVlZGM5MDZkZmYzMGE0MDcwOGJjNGQ5Y2ZmMWExZWZjIHJlbGVhc2UyNi1tYWludAorNjk1NjUgM2JkNGFlMjZiMzY0OTdlZjhhOWJhMDQzYmNjOTE5Y2I3MWUzNjMzMiBweTNrCis2OTU2NiBiZDJiNzc5ZjVmMzEyMzQyNzc2YzA4ZjAxOTEwNTA3Yjg0MzQ1ZTQxIGxlZ2FjeS10cnVuaworNjk1NjcgMjEwMjc3NGU3YTJkOTNhMDNiNzgxNTU4ZGFiYzQ4NTE2MDQ3MDNlOCByZWxlYXNlMjYtbWFpbnQKKzY5NTY4IGI4ZjEwYzZmYWQ1Mjg1NDE0OGYyYWY3NWNmNGJlY2M0YTI2NTZjNmMgcHkzaworNjk1NjkgNzJmNmYxNzAxZWUxYWE0YjAzOWZjYzEzZDE2N2Q4MTk5ZmY4MzE2MyByZWxlYXNlMzAtbWFpbnQKKzY5NTcwIDdmNGExMTVhYWU2ZDk1NGRhMGI0NThkNzRjYmI3NDUzZTViZTM1ZjAgbGVnYWN5LXRydW5rCis2OTU3MSBhNDFlOGZmNjUxOGMyMDM1OWRiZGEyZjQxMjJkNzlmZjA5OTUxMDEzIHB5M2sKKzY5NTcyIDUyODUxYjlkOTc1OTAxMWRlZjg1OTk1ZTQ2ODQ2OWExNDkwMDgxNzcgcHkzaworNjk1NzMgMDk0NmNmZDY4NTc5OTk5ODdhNmIzOGE3NWYwZjY1NGEyNmM2M2FjYyBsZWdhY3ktdHJ1bmsKKzY5NTc0IDY4YjhhZjQ5NGJlMjgwZmUwY2I0NTc2MGVkNzg4ZDA2MjY4Y2E1Y2EgcHkzaworNjk1NzUgY2ExZDk5ZDlkNjkxZWRkYjM0ZjZkZWU1NzFlYTkwNjU2YWVjZDc5NCBweTNrCis2OTU3NiBjMDE0YTNiMWFkMzE1NWIxMmUzYTFkZGY2ZWI1YWI3NTE3MTliY2RjIGxlZ2FjeS10cnVuaworNjk1NzcgYTgzZjEwZWRiNmZmMTU5MjhhZmY2M2ZjOTNjZDdhNTJkNWM0OWRjNCBweTNrCis2OTU3OCBiZjQxOWNmZDdiMGFiOTRiMDg5OGYxZDg5N2IzZWI5MWIzNjQyZjcwIGxlZ2FjeS10cnVuaworNjk1NzkgNTEyYzVhNWRlMDBiODBiMjg5NjAwMDQxMjY0NjIzZGViNWM4OTRiZiBsZWdhY3ktdHJ1bmsKKzY5NTgwIDY5ZmRmODg4ZjExM2E3NmNjYjM0ZDY3MmI1OWZkZTU1MzFmOWRiNjMgbGVnYWN5LXRydW5rCis2OTU4MSBlYzMwYjFmY2MxYjNkZmY4N2JjNzMzN2NkNTdmOTRlZDgzODliNmYxIHB5M2sKKzY5NTgyIDVhNzJlZWQxZWIxYTc5NWY5OWQzOWZlOTZkMzk5ZDQxYTZjYzE1MzQgbGVnYWN5LXRydW5rCis2OTU4MyAwOGRmNGY1NTgzZmY1MmMyODRhN2JjZGExZDE4NjJhMTNiMWZhYmI5IGxlZ2FjeS10cnVuaworNjk1ODQgZmYwOTZkNmE5MjIyYmNiOTIzZDBiZGRkMGJjNGYxOWFhZmIyMTNjZSBweTNrCis2OTU4NSBjNmZmNDdiM2ViOTlmYmQyYjI0MmIwNmNiZWI2NzRiY2IzNmNjOTgyIGxlZ2FjeS10cnVuaworNjk1ODYgYTkzYjE5YTJmOGQ5MzQ5MThhOWQ2NTgwZmNmNzQwYTYzYmFiZDQ2ZCByZWxlYXNlMjYtbWFpbnQKKzY5NTg3IDQyODM4YjRkNmFhMWI3NjQyYTUwMzI0Yzk1ZTUyOTgzYzA3YTA1YTggcHkzaworNjk1ODggYWUxNmUyYjg2ZmViNTIyM2NhNzA4YWQzZmNhNTcyNTE4ZmZkZjkyMCByZWxlYXNlMzAtbWFpbnQKKzY5NTg5IDAyYzNlYjFjYTBkNWYwZDRlY2YwNzJkMTdiMmYzNTdmNGMyYmE5NzEgbGVnYWN5LXRydW5rCis2OTU5MSAwNTkwYzBiNzZlNjQ2MWU1YmNhNjYzNjhjMmJmNzNhZjcxYTc3YmNjIGxlZ2FjeS10cnVuaworNjk1OTIgODdhYjZiYzIxMzQ1YmFkMDg1NjYwYThkMGNjYTE4YzRiZTI5NDU0NiBweTNrCis2OTU5MyBkZmNmNjkwYTY3YzhlOTA5OTU3NWI1OTk3NjA5YTc3OGIwNmYyYjg1IGxlZ2FjeS10cnVuaworNjk1OTQgZDM2NjNmMDlkNzY0NWEzYzM2MGVkYWRmNzA4MTc3MTI2M2E3N2ZhMSBsZWdhY3ktdHJ1bmsKKzY5NTk1IDUxMjA3MGRhNzQzM2RkMzc4YmUyMmZkY2JmOGNmY2QyZTk4OWVmNDkgcmVsZWFzZTI2LW1haW50Cis2OTU5NiA2MTM1ZmY3MjQzZGQ3OTZlMjNjYzM1NWE1YmNhODgxMjUxYjE0MzE3IHB5M2sKKzY5NTk3IDhjYjhlY2NkNjYzMzljOTYzZWE2NDZjZTZlZjFlODE2NTgxMDRhZmQgcmVsZWFzZTMwLW1haW50Cis2OTU5OCA4ZGMyOGExMjZiMmM4MDFlZWEwMGNmMzhjN2MwMWY4MzZmZTdiZTJlIGxlZ2FjeS10cnVuaworNjk1OTkgOWM3NTgwNmJlYzY0YWY5MWU2ZThhYjk2MmQzNzZiZWQ0ZDc5NmRmYyByZWxlYXNlMjYtbWFpbnQKKzY5NjAwIDQwZWQ1NzgzZTI0YTJkYTVmNTRhMDU0ODFmMmQ2ODEwMDI0MGYyYTIgcHkzaworNjk2MDEgNjE2MTM4ZWVmMjI0YmNkMDZjODMzNDhhMjliNWI2ODBjZWFhMjJhMiByZWxlYXNlMzAtbWFpbnQKKzY5NjAyIGU1Y2EwYmRiMzkwZmQ3ODE1MzJmMjE3ZTRjMjA3YmM1MWFkNDNhNTIgbGVnYWN5LXRydW5rCis2OTYwMyBlOTFiMDRkYjZkMTk2ODBiMmViZTY4NWU0MTBhNmZlNGJkMmMyOTIxIHB5M2sKKzY5NjA0IGM1NjA3Y2Y3NjgwMTI3NWQ1NGIwNDY4NDNkMDRjN2U0NmNjOWY0NmUgbGVnYWN5LXRydW5rCis2OTYwNiA5Y2M3Njc1OGVlMDljMDc1MTMzY2I0Y2I0OTg2NGJiMjYzNTM4NDAwIHJlbGVhc2UzMC1tYWludAorNjk2MDcgMmEyNjNkNjZkNjU5NzgwMDE1ZjFlMzUzYmQxNjAxMzdkOTc3MmVlOCBweTNrCis2OTYwOCBmNDNmODY3ZDVlYjYwYTRkMzIzZTNjMmVhY2QwZmYwN2FjMmI2ZjRiIHJlbGVhc2UzMC1tYWludAorNjk2MDkgZTU1MjI4NzViOThjMjZhNjI1Zjc1NTM5MGM2ZjcyM2Q2M2YzMDAxZiBsZWdhY3ktdHJ1bmsKKzY5NjEwIDk0OThlN2Q1YjI2NTk5ZmU2YWY2ZTJlZDcwNzFlNDkyOTBhZTJiMDQgbGVnYWN5LXRydW5rCis2OTYxMSA2YTdhMGUxZTI3YmMwNDQ4ZGUzODlhMThlMWE3NzMxMTA4ZGRhMmViIHJlbGVhc2UyNi1tYWludAorNjk2MTIgNzFhNjhkY2NhMDQ0ZTMyZWZlZGUwYzJhMGExOGNmZGZlZjVkNGFmMCByZWxlYXNlMjYtbWFpbnQKKzY5NjEzIGUxM2VkNDg0NDIyZTgxNTVmYjI2NWI5Y2M4ZmIwZjlkN2NmMGY3NmYgcHkzaworNjk2MTQgYmI5OWVkYTM4YzFiODJlZWJjN2EyY2MyNDZhOWY5MDBkMjU5MmZiZiBweTNrCis2OTYxNSAzY2VhNDA1MWRjZGI2YzBlNmNiNGUzZWU3YmRmMWE3YzhhODhmNTExIHJlbGVhc2UzMC1tYWludAorNjk2MTcgZDQwODM4YzVhNDIwNmZlOWIzZDU3OGI4YmRiYzQ2YTFiNTM1NjQ3ZSBsZWdhY3ktdHJ1bmsKKzY5NjE4IDk2OTM3OGVhNGM3NzcxYzdmNTExMzFkY2EyOGZmYjA1MTNiMzgxODEgcHkzaworNjk2MTkgOWQ3YTEzMWRjYjc4OTVhMDJmMGMzNzY5NzQ1OWZkYWJjN2M0M2EyOSBsZWdhY3ktdHJ1bmsKKzY5NjIwIDU1Njk5MGJiNGYwYWNhYzdkYzk5ZWZjOTg3OTRmZWFjMDMzZWYyNTMgbGVnYWN5LXRydW5rCis2OTYyMSAxNWQ4YjJkYjJiZTQ1N2E0NjZkNzE5ZDYxNWE3YWEyNjcyOGYwZTQ2IHJlbGVhc2UyNi1tYWludAorNjk2MjUgZjY3YjQ4YTE1MTNlYmJhYWY2YjdjNmExNTY2NjA5ZGQwNDk3NGFkNiBpby1jCis2OTYyNiA4YWU1YjBjNWMyNGQyYWU3ZTJhYTViODM1M2MwODU1N2M2NDZlNDFlIGlvLWMKKzY5NjI3IGMxN2NkOWJlYzNkODUwZTQwNzkzOWMzMjg2ZDAyYTQ5ZTg2MjI3MTkgaW8tYworNjk2MjggYWRlNDU1MTFiNTY1YjFlYmM5NTM2M2YzYzk2MDlkNDZlYzk2YTAwNCBpby1jCis2OTYyOSA3NzMwNmFkOTMwYTMzNGViYzNlN2VlNGU3ODRjNzdjMTQ2Mzk5YTVkIGlvLWMKKzY5NjMwIDVmZDNhZDU0OTkxN2NiNDM5MjZkOTdhMWE3NjMxNzI1MzI4NGIxMjMgcHkzaworNjk2MzEgZWYyY2JhODBjOTc1YmI1ZDk5MTFjOWI5YmJkNTgxOTg2ZDYxNDE3YyBweTNrCis2OTYzMyAzZjdlMDczZGFkN2I1ZjQ3ZDEzYTVjZTAxZWIwYTg2Y2JiNzRhNmQ0IGxlZ2FjeS10cnVuaworNjk2MzQgYjU1YTNiNWQ3MDA4ODI5OWRhMDljOWNjZWY0MmRmMWJhZjc5OGQxZSBsZWdhY3ktdHJ1bmsKKzY5NjM1IGI4YzQ2NjRhNjUzOTE2ZTIxNjQ5N2JjY2E2YWQ0OTBhNDFlN2YxMzEgcHkzaworNjk2MzYgNWYyMjU3Yjc3YWIwOTkxZGQ4MDdiMjlhNjdmZWI5NzRiYWE0NGYwZSBpby1jCis2OTYzNyA3OWMyMzExZjMzY2MxZTJmYTFkZWQ0OWVjYzIwOGU5N2EzZDU3MjNkIHB5M2sKKzY5NjM4IDNmNDc1NzQ1YTNjMzA1ODk4OWVkYmY2YTVjYTI1MjY5YmMxOGZhYjQgaW8tYworNjk2MzkgYWY3ZDc4MGY3YTBiZTRiYTA0YmM3ZjU1Mzg0YWQ2NTY1OTBhNjJhNCBsZWdhY3ktdHJ1bmsKKzY5NjQwIDY1ZTA3NTVlOWJiYzlkN2ZkNDAwMDk0MGZjYTRmMGVlYjFhNmZiMDkgcHkzaworNjk2NDEgYWFkZWYyMTg4Y2ViNmZiNmJhMDRlYjk1NzRhZDc3ZmQwODhmNzJkMyBpby1jCis2OTY0MiAyYzRhMzMxY2QzMmE4ZDc3YjNkNmEyYzY0MmYxNGMxNGRiMzBkMDQ5IGlvLWMKKzY5NjQzIDk0ODc5NGFjNWE1MmJlMjcwZmNhZDQ4YWQ0YmJlYjA2OGQyNDJiMmQgcHkzaworNjk2NDQgOGM2ZDY4OGU0ZjE2MTA5YmM1Y2JhNjk5N2M1MDk5OTAwMTUyNjEzNiBpby1jCis2OTY0NSA5NWQ3NzVkOWFiNDdjNzdlZGRiOGIxMDkxMzliNzU2ZTQxMWFiMTc3IGlvLWMKKzY5NjQ2IDRmZTI4ODVkMDY1NDkzYjUxYzUwZWI1ZWUwNWIwM2RkMTc2MTdjZDUgaW8tYworNjk2NDcgNDBjOTU0MWU2MWZjODk2NWZmMTkwMmZjYmNmYzE3ODg4ZGIzZDYyZCBpby1jCis2OTY0OCA5OGRkMjA1N2UwODhiYjRmMjIwZWI0Y2RkZTM1OGNkMDJhMTBjYzlkIGlvLWMKKzY5NjQ5IDkxYTNjY2U2OGU5YjQ2MTBlZWMwOWI1N2ZjZGEwYmQ2MmI0ZmQ2ZTIgaW8tYworNjk2NTAgZDljMWQ5YjEzMzc0ODMwZGE5YjE3OTE4MWI2MGRkYWUwM2I4MTMwMyBpby1jCis2OTY1MSBkYjNjYWUxMjhkOTFlYWU1ZTRmMThjMWNlYjFhM2ZiNWE1NmFlZTNlIGlvLWMKKzY5NjUyIDE5MjAxNDg3NzlkNDQ2YmI4ZTk2YWM0ODk2MjczZmVhYjgzYzI2ZTAgaW8tYworNjk2NTMgOWY1MzlkOGNkOTA0MmEzYzM5OTk2YWNhNTNhMGI3MzZkYTk5ZWYwNCBpby1jCis2OTY1NCAyOGNhMWRmNTQ1ZTIzNjY3M2U1ZmE1NjM3ZTZhMzc1ZmNjZTFlYTNiIGlvLWMKKzY5NjU2IDI0MDZjN2RkOTg4NDEwODY1ODJkOTRiMTk2NWM2YzBiMWUwMDUxYjQgaW8tYworNjk2NTcgYTI2ZGIzMTQ0YWU3MTMwNDUyMzgxODQ0MzNhNmVkZDViZjM5YzQ4ZCBpby1jCis2OTY1OCA0YjEyMWJiY2M5MmFmYTAxOGVkMDg0ZGU3YWIxNGQyMWI5YWUxMWRjIGlvLWMKKzY5NjU5IGYzYWY0OTkyYjgwYjgzZDlhMGQ5NGYxZGM2M2U0NGI1ZGUxNzIwYzUgaW8tYworNjk2NjAgNmRhMzBlM2FiYzBkZDAwZDljZWFkOTIzNmMxNWVlZmE5ZWYzYjllZiBpby1jCis2OTY2MSAyYzcxOTAyYjM3NzQ3ZDY5NzU4MzBkOTNkZWNiY2NjMzZmZjM3OGMwIGlvLWMKKzY5NjYyIGY0YzQ5Y2Y2MDFhMmNkYzZlMTQzY2Q1MGU3MGYzNDE5Y2Q4YTJiM2YgcHkzaworNjk2NjQgYTQ1MGM4NmZjMmJjMDQ2ODU1Yjg2MmE4OWQ0NjUxY2UzNmY2OTAyNyBweTNrCis2OTY2NSBjNTcyNTRhOWMxYTMyMzAyMzUxYzU0MTRkOTBlOWRjYzA5N2I1NmFmIHJlbGVhc2UzMC1tYWludAorNjk2NjYgMDc2YzQ3OTEzMTM0OWQ0NzVhZDdmOTU0ZmUwNTFjYjVjYWQzYzE3OCBsZWdhY3ktdHJ1bmsKKzY5NjY3IDk4NTc1ZjlhNGVkMzg1ODIwNmY4NjFhN2FkNWMwNDk0MDI5NjA0OWIgcHkzaworNjk2NjggYTVjNjIxNWE0NWFmMDllMTc4ODI2ZjE5Y2ExYmE1ZjM0NzMwMmU1ZiByZWxlYXNlMjYtbWFpbnQKKzY5NjY5IDBlNTVhY2QxYTQyNjY5ZDJkYWEyMGZjYjZjYjc0YjgzMGRmOTA5MDggcmVsZWFzZTMwLW1haW50Cis2OTY3MSBlODczZjgwODQ2NGEzMzYzNzY5YzcxM2E1ZjYwMGZkOTBhNjg2OTkyIGlvLWMKKzY5NjcyIDZhMTE4Y2M0ZjNiNzhlMTk5MzA1OGE2NjFiMTYyNGY1MDY0MjIwYjYgbGVnYWN5LXRydW5rCis2OTY3NCA1MWRiMTgwODRlY2JhYWQ1MDg0N2E2OWI2YjdiZWY4YzNhNTU5Njk5IHB5M2sKKzY5Njc1IGIzOWQ1NDA1OGEyYmJmNzk1MTdiOTg2NDBjNGNmYWYzZmFmNDQ2NTIgcHkzaworNjk2NzYgNjI3ZGI1OTAzMWJlYjAxMjYyZTcxMjViOTY2ZWZkNzlmYTgyMjhhNiBweTNrCis2OTY3NyA0ZDYxZmJiYjQ1ZDc0MTc0YWU2YjRlMWNkZGEyMDBiZmY5ZjAwOGQ5IGlvLWMKKzY5NjgyIGRmN2M2YmQxYjYwOTJiODU2NmIxZWMxZDExMDAzYjFmZWY4OTNiMjQgcHkzaworNjk2ODMgNWRjYWEyZTFiYzg2OWE2ZDY3OGI2ZTgyM2NlYzg2YjczNTllNGQ5ZSByZWxlYXNlMzAtbWFpbnQKKzY5Njg1IDBlYmJjZjU5ODhkYmMxODNlYmVhN2MwY2QzMjNkYjM3NDYxYTNlYjkgbGVnYWN5LXRydW5rCis2OTY4NiAwMDNlMDA3OTdlOTEwMGIxNTBkYWE2MDg0ZDRiZDI2MzQ0YzBjOTRmIHB5M2sKKzY5Njg3IDg2YjYwZDA1MDYyYmE4ZGJlMzA0MWRkMDc3MTlmZWU2OGUzMWFiZDIgcHkzaworNjk2ODggMjdkNDNkNjZiZDA5Y2VlYzFlY2JiMzFjNTY2NDhlYmVhNGVhMTZlZiBsZWdhY3ktdHJ1bmsKKzY5Njg5IDE1NDk0OGUyZmQxYzU3ZjE5NDI2NzVmNGEyYmI5ZWFjMmY5NGVlYmUgbGVnYWN5LXRydW5rCis2OTY5MCAwOTIzNTg4OWM1NGQxNGU2YTY2OGM2OWE3ZTY1NWZiMTE0NGNmOTQzIGxlZ2FjeS10cnVuaworNjk2OTEgZjMwODk1M2M3MDFmYzRmNjE4OTljZmVlOTg1MjdkYWRjZDBlMTg2YSBweTNrCis2OTY5MiA5ODJmOWUyOTI1YTQ1YzU0MDY0OGRkMWI4OWI1ZWI5MjQ2ODk5NGRiIGxlZ2FjeS10cnVuaworNjk2OTMgYWI0ZGEyZWRiMjg4ZGVhNTgwZGJlNzk5YzEzYTI4YWQ5ZmQ2YjljZSBsZWdhY3ktdHJ1bmsKKzY5Njk0IGU3OGJhODgwMGUyY2UwMWVhYzQwODRlOWFlZDQ2NTQ1ZjFhMjlmYzggcmVsZWFzZTI2LW1haW50Cis2OTY5NSA1MjI3ZjhjNDE4M2VmNTFlYjRmYzRkNTRkMWEwMTYxZjRhMTI5OGQwIHJlbGVhc2UyNi1tYWludAorNjk2OTYgNTRjZjY4ZmM3MzEyN2VlMTM3ZjAxYmRmMjE5YmNjNDAzM2YyNWFiOSBweTNrCis2OTY5NyAyOWIxNDliYzMxMzAxNjI5ZTg2OTE2YWE5NjcwMjc5NWNmMmYxYWIyIHB5M2sKKzY5Njk4IDI3MzI2ODUyMmU1ZWU5Mjg3MDgxNTliNjExMDM0MDUwOGM5ZWUxZDIgcmVsZWFzZTMwLW1haW50Cis2OTY5OSAwYzg3NDc5OWExOTBkNTA0ZDFkMDMzZmM2ODk2MmJkNDcxNmJmY2UzIHJlbGVhc2UzMC1tYWludAorNjk3MDAgNzEwMTc3MmVhZTgwNWZlZjkxMTIwOWNiN2UyOTAwMDQ1Yzc0YTRhNCBsZWdhY3ktdHJ1bmsKKzY5NzAxIGY1MDVlYmE3MjZjODY1M2M3Zjc1NDc2ZGM3NzZhYjVjMTlhZjk3ZmEgcmVsZWFzZTI2LW1haW50Cis2OTcwMiBkYmEyZmFmMDk5MDY0OTU1ZGQ3ZTVhOGVhYzNmOTYxN2M2ZTdiOTM4IHB5M2sKKzY5NzAzIDAxZDNiNjg2MzM4N2RiYjU5NmVhZjBmYWU0ZmE1NDdmODU3MWNiOWIgbGVnYWN5LXRydW5rCis2OTcwNCAwN2ZhZDMwMTAyNWYwMTllZTMyNjE3NDVkZmNiZDU2OTA4N2NlZWYzIGxlZ2FjeS10cnVuaworNjk3MDYgZGQyMjEwYjJkYzIyY2JlZDRhMDMyZjBlZWI0Y2U1ZjI4MmI2YjZlMSBweTNrCis2OTcwNyAxNDdmY2ViYWNiNWJiMGQxODkwYjYxOWZkYTFlZjdlM2E3ZTFjMzA5IHB5M2sKKzY5NzA4IDE5ZTc2ODVkOWI5NDZmMjU4NDdiMDhhOGNhOTE0N2FhNmIyOGMwYzkgcHkzaworNjk3MDkgNDRmZDJjYzllOWNjNzQ2NzliMmM2NWIzMTQyNjQzMjg0ZmY2NjU1NCBsZWdhY3ktdHJ1bmsKKzY5NzEwIDI3MjY4ZWYwNDcwOGQ4ZTNjMzBhNGQ2NmZjNzFhNjFlNWJmMDI0ZTUgbGVnYWN5LXRydW5rCis2OTcxMSBkNzcyNjc4MjUzNmQ5NTAxNmE2YTc1YjZlMTViODAwNGMwYzNmOGY4IHJlbGVhc2UyNi1tYWludAorNjk3MTIgMjU3Yzk4ZmE1NWQ3NmNlYTliYWFiMzE0OGIxOTU2ZGJjMjRkMmY4OCBweTNrCis2OTcxMyBlNTQ4ZGYzNjE4OGVmNzM1Mjg0OGMxZGNjYWY4YWYyNjQzYjg2ZmM3IHJlbGVhc2UzMC1tYWludAorNjk3MTQgMGM2YzA1NzJjMjQ3M2MwZDI2N2NmYjNkNDliZjU2ZGMwNWE4NTNiZiBsZWdhY3ktdHJ1bmsKKzY5NzE1IGQ5ODJiOTViZTNlMjE4MGQ1NTVmYThmOWJmYmJmNmExNmFmOTA4YmYgbGVnYWN5LXRydW5rCis2OTcxNiA3OThhMTZhYmY1NDYwODg2MTBmZTUwYjlkNGQzMGEyMWU5MDNhZGRjIGxlZ2FjeS10cnVuaworNjk3MTcgZDY3NDBhOTZhNzBhZGFjMTZhNzYzZTA3YTY3NTZiNGU4OWI2ZWRhOCBsZWdhY3ktdHJ1bmsKKzY5NzE4IDlhZDY2MmE0M2ViMzUwZTQ3YTdjYTZlZmE2NzVhYjc5MDA3ZGU5MzcgbGVnYWN5LXRydW5rCis2OTcyMSA4NTQwN2QwNDc3ODIwOTgyNjMwNWFkZjUyNjZlOWQ4NjJkOWRiZjNiIHJlbGVhc2UyNi1tYWludAorNjk3MjIgMDllNjMyMTRmMGJmODY1MDZmOWNiZjUyN2NiNjM2NDg2MDA4YTQxYSBweTNrCis2OTcyMyBmYjg2MDZlMDg2ZWE4NDQ1ZjY5ZmQ2NjIwN2Q4M2RlOGJhOTY4MGIxIHB5M2sKKzY5NzI0IDkyZTQyYjFiMGE2ZWVjMGYxMTc3Njg5YjNjMDE2YWUwOGJkMDNkMGEgbGVnYWN5LXRydW5rCis2OTcyNSBkNzg2MGJiMGIxNWEwYmZkMTM1MmFiNjZjOWVhM2Q4ZWMyMDllYmZkIHJlbGVhc2UyNi1tYWludAorNjk3MjYgNjA1ZmZjMDUyYjQxOTVlMzM0MDE5YzYwZmE1ZDU4NWFlMjMwNDI5MSBweTNrCis2OTcyNyAyMDVhMmI0YzFmYTU0NjU1ODQ0MWExODM4MzcwMDhkZTc3NGEyYmNkIHJlbGVhc2UzMC1tYWludAorNjk3MjggMWZmNGI0MWE1N2MxMjZkMGY5NDY2YzAwNDQzYWM0OGUyYzliNjVlYiBsZWdhY3ktdHJ1bmsKKzY5NzI5IGU3ZTU0NGNkMmMyYjk0NjJhOTI0ZDFhYTIxZDhlN2Q0OGRjZjM3YmIgbGVnYWN5LXRydW5rCis2OTczMCA2ZWE3ZDM3MTRiZGY3OGYyODQ1NDM5ZDVmZDVkYWU1Mjk3NDMyOGUzIGxlZ2FjeS10cnVuaworNjk3MzEgNTUxOWI5ZGNjOWI2YjY0NDdhZjAyMDNkYWYwMjNmNDk2ZDAwYzgzYSBsZWdhY3ktdHJ1bmsKKzY5NzM0IDM5ZjA5YzllZDVhNWIzZWQ2YzNmMTE5NTUzZjg5OGIyNzNhY2I2ZGYgcmVsZWFzZTI2LW1haW50Cis2OTczNiAyODc4YmY4MTVkYTFlOGJhYzhiY2Q3NDc0ZTUzODQ1YzU1Njk3NjNkIHB5M2sKKzY5NzM3IGNiMGFkZTMzNTU1MTU2MGMxNTY4OWUyODAyOGM4ODExY2QxNTAzOWUgcmVsZWFzZTMwLW1haW50Cis2OTczOSA3MmQxM2VjZjRmY2E3NWZiMjU2YWI3MjNkMjNkMjY0NzBmOTMzOTU4IGxlZ2FjeS10cnVuaworNjk3NDAgNzZkNzdhZTk3YjM4ZmY2MDczZWVjZWVhYWRkYTNlYzlhYjYzZWJiNCBweTNrCis2OTc0MSA3NTU5YTAzY2JkMzBhYjc1MWI3NGZkYzdlZDQ5ODhmZjc1MTE5NmU5IHJlbGVhc2UyNi1tYWludAorNjk3NDMgOWJmZjEzMGQ3OTJkZWE0NzFmMmVhOWNmMWU2MGFkNzI5ZWMxZTM5NSBsZWdhY3ktdHJ1bmsKKzY5NzQ0IGVlNzAxMTg2Mzk0MzI2N2RmYzUwZWQ1NTVhZjZiZjJlZjBiNGE5YzQgcmVsZWFzZTI2LW1haW50Cis2OTc0NSA4YTI5MjU0M2U4NzE5OTc0MTA2YjQxYjc5MDcyNDVhNmZmYWE3NTYwIHB5M2sKKzY5NzQ2IGIyZmYyMWJiYjljNTQwNDQ3NjZiM2Y4YzM4NGY4NGYyZjBkOTE4YzcgcmVsZWFzZTI2LW1haW50Cis2OTc0NyA3YzdiODA1ZDBkMGE4ZGFmN2ZmNGY2NThkZTBjN2EyMTVmOWZkYWJiIHB5M2sKKzY5NzQ4IDc0OGRmZTliYjg1N2ZjMWVmYTcwMjE1YTA4NTk0MzI4N2UyYjY1YzAgbGVnYWN5LXRydW5rCis2OTc0OSA4NWZlODg3NjE0Y2U0NDIwZTkwMWNmMTE2ZjY4OWQ4MTYzMTZjYzMyIHB5M2sKKzY5NzUwIGUyNjBkNmRhZjc4NDhkODQwMGQ3ZDM5NWVkNmYwNTE5MTUwZjE3ZTQgcHkzaworNjk3NTEgZDI1ZmMwMjA5Mjk1NTAzNmE3MDM2ZmIxNTdjOWVjOGM2MTk2ZTU5NiBsZWdhY3ktdHJ1bmsKKzY5NzUyIDNkYmRiYzVlNmQ4NWFkNWVhMTNhNTEwNGVlNWFhMmFjYTA0NDdiYjMgcHkzaworNjk3NTMgMDNmMDdkOGYwNmU0NmMwM2FiZjJkYjk4Y2Q4NzU4ZWIzNWNmZDA2ZSBweTNrCis2OTc1NCAzM2Q1ZDdkYWE4Yzc0NjlmMTNjYzkyZWUwZmRjNWQyN2M4Njg5NGE2IHB5M2sKKzY5NzU1IDQ5N2VhYjc5YjFiZThlOTE3MjVhM2UzMWNkNDdhNTkwMTg0ZjRiOWMgcHkzaworNjk3NTYgYTk3NzRiNjFlNTJkM2Q4ZDZhYzUzOTIxODU1ZTcxN2QxYTk0MDViZCByZWxlYXNlMzAtbWFpbnQKKzY5NzU3IDMwMjI2M2UzYzhmMWQyYzU1YzdkMWEyMWU0YzY4YWZlNDlkNTczMTIgbGVnYWN5LXRydW5rCis2OTc1OCBkNDdjMjU4YTFlMWNlZmJlYjVkNWMzOTlmZDk2ODY3YmQyYTdlNGNlIHJlbGVhc2UyNi1tYWludAorNjk3NTkgYWI0MGM3NjEzOWFiNGQ3N2M5MjBlZjk5ZTUxNmIwZTdiZTY3ZTBkMCBweTNrCis2OTc2MCAyZjUyNTc0OTRhMmUwZmViMjZhMjI0MmE1YjU3MWUzM2FmOGE5ZGMxIHJlbGVhc2UzMC1tYWludAorNjk3NjEgNTU5ZTRmYzMxYzhhNzNiNWY2NGYzMmQwODNmNWNkZjlhOWEzNWU1MCBsZWdhY3ktdHJ1bmsKKzY5NzYyIGVhNDdjZWY2NzgzN2IwZWVkNWM1OWI0NzliM2Q5NmE5YzYwMWM5ZmIgcmVsZWFzZTI2LW1haW50Cis2OTc2MyA5MDAxZDljOGY3MWUwNTE3YTNlZTNjMzIxMTIzNGVkOGZkOTdhMzkzIHB5M2sKKzY5NzY0IGQ2NzNkYTkxNTkxNGQ3YzU5MTM0NGM5MzM4YWQ5YmJkZDQ3MmEyMmYgcmVsZWFzZTMwLW1haW50Cis2OTc2NSA5ODAwYWIyMzZjMDlkNDU1Y2Q2MmFjYjcxYTAzODIwNGUzYWRkN2U1IGxlZ2FjeS10cnVuaworNjk3NjYgZjBlYWM0NTJhNmNhZmQxOGZhMDg5MTJiMjdjODFmMmQ1ODY1MzliNCByZWxlYXNlMjYtbWFpbnQKKzY5NzY3IGJkNDY3MTc5MmQ1MDE2ZTVlODE0NzY4YWZiNTczNTZhNmRmNzA0MzYgcmVsZWFzZTMwLW1haW50Cis2OTc2OCA0MzQyYzBhMmYyZGM5Y2FkNDQ4YjE2ZDVkOTI4NWZhYjBlMTczMjIyIHB5M2sKKzY5NzY5IDg0NjhiNTJmNWVlMmMzNzdjZGJlMjczMTViMWYwOTUxMWI2YWE3NTYgbGVnYWN5LXRydW5rCis2OTc3MCAwMGY3YmUwMmFlMWYxYzJkMDA5M2JkM2NmMzNjYmIwZTQ5YjU0M2Y1IGxlZ2FjeS10cnVuaworNjk3NzEgNzhlMzExZjI3N2E3MDI3ZTFkYjUwMmY5MjE2NmY0ZjVkNGFlMjEyMiBweTNrCis2OTc3MiA4YzEzZjQzMGUxNjA2YTA4NTRlNmMzZWY0YTFjNWQwMzBiZGNhYjU0IGxlZ2FjeS10cnVuaworNjk3NzMgODMzZGRmZWMwYmM0NTZiZTA0ODhhNWU5ZmMxYzY4MDU1ODZhMGY5NSBweTNrCis2OTc3NiBjMDJjMmE5MDhjYjA5OGYxZjhmZGQzZmM4MDMzZjViODBhNzIxZmJlIGxlZ2FjeS10cnVuaworNjk3NzcgNDM4NTkyODkwZTJiN2VmNTkyOWEwMWVlYTA5MGQ5MWVjM2VjYzQ2ZCBsZWdhY3ktdHJ1bmsKKzY5NzkzIDI3OTMzNzUzYTM4N2Y5MWE4MmM5NGVjZmZiMzQ4NWE5MTI5ZTQ4ZmMgcHkzaworNjk3OTQgNjdlZWQ4MWJhNzRmYTZhMzBhODA2ZTQ0NTZkN2Y3NWIyYzBmZWY2ZSBweTNrCis2OTc5NSA5ODE1ZGE0M2ExY2VmYTQ2ZDBhMWQ4MTE3MDk3YmI4Mzk4OTY2ZmFmIGxlZ2FjeS10cnVuaworNjk3OTYgYzFiZjAzN2ZlZWZlMDZiMWVjZTkwMDk4MTFjNWM0MDVjOWEyYzMxZSByZWxlYXNlMzAtbWFpbnQKKzY5Nzk3IDYyNGI1NWQwZDZiNzJkYjExM2Y0MDUwNmM3NjI3ZDIzNWRkMDY3YTIgcHkzaworNjk3OTggMmYzYWZhY2Y5ZjBiNzJjY2Q2MDg3YjgyODk4YjFmNWU3YTQyODkyYSBweTNrCis2OTc5OSAxNDA4ZmVlYzAwODQ5YWVlMDU4NmY5YWZkMmIxMGRkMjkxNjY0MTY0IHJlbGVhc2UzMC1tYWludAorNjk4MDAgZGI4ZGIzMWZkYjRjNDdjMDFmZTBmNGRkNzViNmEwOTRhZGZmMzhjNSBweTNrCis2OTgwMSAwYjk4ZTM3OTFiOWVjODcyMGNhNzgyYmQ1YWNjNDU1MDUwYzUyMTZkIHJlbGVhc2UzMC1tYWludAorNjk4MDMgNWExNzg4OGM1MTUxM2U5NWRhODExNmEwN2UyY2ZiZDcxZDcwYjdkMSBsZWdhY3ktdHJ1bmsKKzY5ODA0IGVmMTljYTAxM2UxNmVlMTUxZDgzOWE5MmY0YjgzMWYxMjlmNDU3NzQgbGVnYWN5LXRydW5rCis2OTgwNSAwODI0MDkzMTRiMDA3YTg4YjNlMDdhNmRkMTc2NDkyYjhlYzNmNDc0IGxlZ2FjeS10cnVuaworNjk4MDYgNjVhM2Y1NTVmYWI3M2RhNGU3NGViNDViZjYxMmIwYTdjNjQ1YmUyNSBsZWdhY3ktdHJ1bmsKKzY5ODA3IDE2NGJhN2ZmYTBlZWU1NDRiNGMzZTEzNDc2OGJjMjgxMDFjODZmYzMgcmVsZWFzZTI2LW1haW50Cis2OTgwOCA5MjUwYzhjNjFhOTEwOTVhOTVlZjU2ZDNjYzIxNjhmNWRlNmU0YTlkIHB5M2sKKzY5ODA5IDRkM2JhYWMyZTFhMjBkYjUyYjE3NzliYTVmMWNmMzhkNTYwOGFjNmQgcmVsZWFzZTMwLW1haW50Cis2OTgxMSAwODQ4ZWJiOGY5Yzg4YzkyNzBkZTY3MmZhMTU2YTQ2YjRlNmNkZGQ4IGxlZ2FjeS10cnVuaworNjk4MTIgYzZlZDViZmUzOTY5YTM4YjRjMDdmNzE4M2NhZjMwYWJkZmY3ZmI1NiBpby1jCis2OTgxMyBlMDhlNDA5OGE0ZTc5YjQxN2M1NWVlM2QxMzczY2RjYmJiNzUxMzUxIGlvLWMKKzY5ODE0IDQwODJlZGE4YjQ2NjNiMTQ1MTZjZTY5NjBjMDUyMzkyYzZhOTc5ZTcgaW8tYworNjk4MTUgN2Y4M2FmZjY4YzE2NmNkODRlMzJlZWMxNmY2MmRlOTViN2JlNTE3NyBpby1jCis2OTgxNiAxYWFjNzUyMDQzN2E2ZmQ0YTc1NzQ5OTA3ZTY3Zjc3ZjZiNjI5OTE2IGxlZ2FjeS10cnVuaworNjk4MTcgYzA1YzMwZmMxMThiZTEwMDllZWZhYmJmNDQ1NDI3ODQ2NmIyYTYyYSBpby1jCis2OTgxOCA2Y2U5NmNlNGQ5YWZlNDE1NmQ2MTAyMDQxODNkMjE4M2QyYmZkNmQ2IHJlbGVhc2UyNi1tYWludAorNjk4MTkgNWY1OTVhYzhhZWZjMzk2MmY5ZWMwMjVmMzA0ZTkwOGRiM2I3MTI4ZSBweTNrCis2OTgyMCBlMDgxNWZlZTI0ZjZlMzgwYjI2MjNlZjY1MWYxZDQ3NWZhYTc4ZTIwIHJlbGVhc2UzMC1tYWludAorNjk4MjEgNjdiY2ZmMjkzYTIxYWQ1ZmViNTc1MWMzODdhMDc4NTc0NDJhOWRmZSBweTNrCis2OTgyMiAzN2U0ZGY5ZmRhYTZkNDAwMDU3YmVlZmUwMmFhMzBiYjNmMjgwZWE0IHJlbGVhc2UzMC1tYWludAorNjk4MjcgYWRiMTEzM2Q4OTJhYjZmYzJmNDJjN2M5ZjZjMDk4ZmE0N2VhNjRjZCBpby1jCis2OTgyOCBjNjE4MmNjN2U2ZDcwZTAzMzFjNDExMTVhMmIwMWYzY2VkY2I1NGNmIGlvLWMKKzY5ODI5IDcwMmMzYjk4MDNlOGM3NTNkNzFmYjcyYzcwYzgwNDkyMTllMDBjNGIgaW8tYworNjk4MzAgNmZkODkwYjIwZDYzZmM3YWQ4YjBkNWM5MDM3MTVlZmMzNGM1OTcwYSBpby1jCis2OTgzMSBkY2MxNjFlMWFmN2VjZTI3YWQ1MzNjYzRjZWY2MmY5NGU5NmQyNDBmIHB5M2sKKzY5ODMyIDQxZTM4YTYxYmM0YjQ5MTY3ZjJkNTliZjFhNTY3ZWFkOGRmYjYwMDQgcHkzaworNjk4MzMgYTFmYWZmNzRmZjg5ZTJkYWFjMDQ4ODkwMTU0ZjE4ZGJiYWFlYzk4OSBweTNrCis2OTgzNCA3MTQ5YjdlZWYxNTNkN2IzN2UyZTQ1YWQ1MzAxMTAyZTUyZTBmMjE2IHB5M2sKKzY5ODM1IDc0YTJmZjQwNTE4YWU2NjUzYjE4ODZjYjczYTQ3MTlhYWRiNjE3NzkgcHkzaworNjk4MzYgZWU3MDI5NzEwYzA1MGRiMjI2ZDNiZjg0NDIwYTljMzljOTY5MzRkNiBweTNrCis2OTgzNyAzZTI3ZDYwNmQ2MjVmOGU5MTdmYzVlMWY1NjU5YjBiZGVjZTdlZTdiIGxlZ2FjeS10cnVuaworNjk4MzggMzI2ZjZmYWNjMWFhNGY0MzZiNzNkOGNjMGQzMWJjNjg4MGRhMjE4MCBsZWdhY3ktdHJ1bmsKKzY5ODM5IGE1YmE5YzE3ZjhiOWQ1MGUwOWMwZjE0YWQwNjYwYWRmYzRhNWY2ZTEgaW8tYworNjk4NDAgOWU2ZmJhNWFjY2U0NmJmODQ3MTFiZmRmYWVmYmI3N2ExYTVkNGU0MyBsZWdhY3ktdHJ1bmsKKzY5ODQxIGMyNzJlMzE1ZGQ4NzIwNmE5ZDk3NmMxMDRiZjE2MWQ3NmMxN2YyMmMgaW8tYworNjk4NDIgOTU1NzZiZjNhZDczNTg5NjkzODQ5OWE1ZjZhYTA2YjJjNjA2MDQwNyBpby1jCis2OTg0MyAzNzZkODA4ZTFjMDVmYWFhZDllNTAwMmVlNWFmMDI5ZTQzZmJhOTVjIGlvLWMKKzY5ODQ0IDUxNDQ1YjA0MDk4NjE3NjI2NGQ1MGZmYjY3ODJmZjdhZTM0MzA0MGEgaW8tYworNjk4NDUgM2YwMjNmYjgzZjJiOWI5YTFiNGE4NDg5ZTVkNmNlMDcwNGUxZTQyMCBpby1jCis2OTg0NiBhZjliNmM0MzgwNGUxZTljNDkzMzJjYTY2MzQzNjNkMDhhZTJmMmFjIGxlZ2FjeS10cnVuaworNjk4NDcgZDA2YTNlYmYzMDZmYTk0NWU0M2Y1OWRmMDYzNzA1YTNmNGMzZGNjZCBweTNrCis2OTg0OCA2YmE1NTg4ZWY2NDU4N2YyMmE0ZTQxYzhlNjNkOGMxOTBiMDQ4NmFkIGlvLWMKKzY5ODQ5IGVjNDkwOTMyZDkxY2I1MmRiMTJjZTM2MzNkNzM0NzE4OTg3MzIxMjYgcHkzaworNjk4NTAgYzI5NTJjMmI1YTRhZTY4ZTczMzI3OWM2YWZiODRmYzQyY2FlOTc5NCBpby1jCis2OTg1MSBhYTI5ZDA5NjcxMDU4OWU2NzZlYTgyMWUxMGNhYmYyZDZkNzk3NjA5IHB5M2sKKzY5ODUyIDk5ODhlOWYwMDQwOGY2NTkyMjc5YWU2ZDY3NDIxODgzMWM0MjhiZDkgaW8tYworNjk4NTMgOGE4MjVhMTdjYjI3MzU4MmJmZmY5NGMwNWNkYzVlZTkzODg3ZGU2MCBweTNrCis2OTg1NCA3YWU4YTg3Mjg0MjFmZTVmMzI0ODBjMTFlODRjY2VjOGI2MDUxODc5IGlvLWMKKzY5ODU1IDk2YWJiNDM5ZTJkMDdkMGNiYWE4N2FkN2I1YjZiMTVhY2MwMzdjNjcgbGVnYWN5LXRydW5rCis2OTg1NiA2YTViZWUxODkzYWQ4MzZjMTEyMDQwOGEyOWVhNWU3NDFiMDJkZDkxIHB5M2sKKzY5ODU3IDkxODI2NGZmMDJlMWMwOWVhYzQ5NDQ3YzM0Yzc1ZWZhMWRmNjJiNGMgcHkzaworNjk4NTggNWJlMjRhNTZmMDkxOGFkZGM2ZmU1MjIyMjg1ODI5ZmVmNzI4OTMzMiBweTNrCis2OTg1OSA3NjU3MTk4NmEyZjQyMDgyNjYzNzZiZjBlYjI0YTI5MWNhZmVjMDQ1IHJlbGVhc2UzMC1tYWludAorNjk4NjAgOGU3YTRhNzc0MTM4NDI2ZGQ3ZDA0ZDMyZDg3YTE1MWJhZGYyODZhNSBpby1jCis2OTg2MSBlY2Q4ZWY0ZTc5ZTZiNzFiMTFiY2IyMzRhM2EzNjZlY2U3Y2FkNjBiIGxlZ2FjeS10cnVuaworNjk4NjIgYzMzMDRhNGI2NGVhMWE3ZTU1OGMyMmVkMzFkY2VmZTVjNWVjOTM3OSByZWxlYXNlMjYtbWFpbnQKKzY5ODYzIDg0NjBlNWVlMDZjMzkxNWRlNzgyNTgxMjMxYWZlNzY1MzQ1ODFjN2IgcHkzaworNjk4NjQgM2NhMWZiNjIyZjVhNGI4YTc1N2YwODkxNTNjMDk4ZDE5NGE2NDY0MyByZWxlYXNlMzAtbWFpbnQKKzY5ODY1IDAwMmRhY2E2NmY5ZjZiZGZiOWQxOTcyZmNhN2VkOThjNGJjN2NkNmYgaW8tYworNjk4NjYgZWQ1Y2Q5MDRmMjAwN2M1Y2VlNTY5OTM2NjQzNWIxNWI1MjEzNWVmMSBpby1jCis2OTg2OCA1ZmZkOTMyODBhNzFiNDA3YWM4NTQ5ZTE3Mzc3NzQ0ZjFkMmQ0MWNjIGlvLWMKKzY5ODY5IGEwZWRhMWUyMjhiOGY4ZjM1NGE0MGRmZjc3NzgyMjUxOTc3NGE1Y2EgcHkzaworNjk4NzAgMGFiOGJlZjY3MWEzZGY1OThhMDA4OTU4NGNlY2ExMTQ4Y2U3ODhhYiBsZWdhY3ktdHJ1bmsKKzY5ODcxIGMyMDFjOGNmM2NiNDBjMjY2YjhjZDY2NGI0NzE1YmE0ZjhmMGJiYWMgbGVnYWN5LXRydW5rCis2OTg3MiA1YjVkY2NjNTBlMTJjNDY0YjE5MDRjMjk0NDM2ZWQ5ZDA0NDBlODFmIGlvLWMKKzY5ODczIDQ5OTE0YjNlM2FhODEwMGY1MTA1YTc1NjAwNDIxZmM0ZDFjYmE2ZTYgaW8tYworNjk4NzQgYjM1MTVlZDI4MTM1MDQxNjBjNmE3MzNkMDU4NjEwODUxNDhhN2M5NiBsZWdhY3ktdHJ1bmsKKzY5ODc1IGQzNjI5NjY3Mzk3NGEwMjJkYTc5NjE3NzM3Mjk4NmEyMjQ2NGQxODYgcmVsZWFzZTI2LW1haW50Cis2OTg3NiBlODljN2VkMWNmZmY0ODBmZTVkNDM0MTIxZDlkNTNkZWM3ZDY2MDQ3IHB5M2sKKzY5ODc3IGFhMzAyMTY5OWM1OWFiODBhOWE5ZGNkMDU3MjY1OTBjOGJjMDY3YmQgcmVsZWFzZTMwLW1haW50Cis2OTg3OCBjZDJlZTgxOTA5NTdjOTQ3MDBmOTM1N2ZlOGFlYjllNjVhYmExNjFkIGxlZ2FjeS10cnVuaworNjk4NzkgMzM5ZjVjMWVmMGVkZjQzMzJhYWQ5ZGIxMWJlZmY2MzU4NDNmZjc4MSByZWxlYXNlMjYtbWFpbnQKKzY5ODgwIDBhNWMyNmQwYmU1NDBkY2MwMmQzOTZlODc0NTE4Y2MzYmExMTg1ODcgcHkzaworNjk4ODEgNjIwZTc0MmNkZjY4YTc0NWIwNjAxODc1YmVlYWY3ZjZlYjEyMDI5MSBsZWdhY3ktdHJ1bmsKKzY5ODgyIDBlZmZkYTU0ODE5ZTJjNDY3YmQ5YjI2YmNkNjkwYWExZGJkNWVjZTggcmVsZWFzZTI2LW1haW50Cis2OTg4MyBlNWU1Y2EwNDkxYjg0MDgyNWEwMmZkNmVmY2QzMDgwMzZiOWRiMzYwIHB5M2sKKzY5ODg0IDEzYTFjYmYxMWEyMWVhZDE3ZmYyNGVhOGIxZTZhMzQ5MDA5ZjU5YWEgcmVsZWFzZTMwLW1haW50Cis2OTg4NSBkMjJkNmU5Zjc5MWMyY2Y3MzY2ODdjNTA5YTM4YjEwNzkxYjVmNTc2IGlvLWMKKzY5ODg4IGNlMGE5NWFmNmIxZDQxYmJjMjkwN2QzYTQ4ZDE3OTEwNWY3MWJjMTUgaW8tYworNjk4ODkgMjcyYWM2NTRmZDFhZjIwMDc0ZThjN2U4MDc0ZTgwOWM2ODVlNDVhZiBsZWdhY3ktdHJ1bmsKKzY5ODkwIGZiN2JlNDVhOTQ0MThlZjYxY2E3MDM2OGRjNWQwOTc3YTJkNDRjZWMgcHkzaworNjk4OTEgM2RmOGJlMDM2MzI0M2UwYThlZWVlOGZkOWEwMWIzMGQ1NGM2OWI5OCBpby1jCis2OTg5MiA5ZjZjYjA0MzdiZTgyMzQzZWZjYmY5ODY4NWM0YTdhNWYzMzg5MjcyIGlvLWMKKzY5ODkzIDQ0NDk2Y2QwYmM3ODAzZTQ4NTE4YzM1NmM5OWFhMWU3OGQ1NWQ2MzUgaW8tYworNjk4OTQgZGIxNGVjYTAxNjM1MDZkY2ZhZmFiMzFiZGE4NzUyMDRkYmMwOWI2YyBweTNrCis2OTg5NSBiNjFmMzNhZjM3NGJjYTcyYjhiNGZlZWYwYzUxMTgxZTVkNWJkZjZiIHB5M2sKKzY5ODk2IDhhNGRjMDA4OGU4NjI2YjU2Y2RmOWZkNzVkYTAyM2E2ZWZjODQxNmMgbGVnYWN5LXRydW5rCis2OTg5NyAzMjE5YjM0YTMzMjA2MTI4OTRmYWE0YzlmMjk1YzE2NzcyNjc4NjUxIHB5M2sKKzY5ODk4IGEzNjY2ODhhOGYwZDNjOWUyZGU0NzE2YjAwODBmMzIyNDcxYjcyNmQgcmVsZWFzZTI2LW1haW50Cis2OTg5OSBjOGQwNmRmZDRjMzlmNWM5NmUwZGE3ODk5MTY4OTA5YmU2MjM4OTVjIHJlbGVhc2UzMC1tYWludAorNjk5MDAgNWJkYjljNjQyY2NjZDE2MmU4ZjM5NzFkZTQyZjg3YmE2ZmVjMTY0NiByZWxlYXNlMjYtbWFpbnQKKzY5OTAxIDNlNzczM2NmMjc5ZTM0ZGE1ZmFjOTMwYjRhOGMwMDFlMmE0MzRlZGQgbGVnYWN5LXRydW5rCis2OTkwMiAyYmYxMzM3YzNhNjA1ZGNhMDQwZjkxNmVlM2Y0M2U2NTg3MmUyZTE0IGxlZ2FjeS10cnVuaworNjk5MDMgMWYxZTIyZWY1NTYwOWFlMTU4Nzk5NzY1ODg2NjVmN2QyODAxOGIxMCByZWxlYXNlMjYtbWFpbnQKKzY5OTA0IDVjODU5YWVhNDZiOWM3ZGNhNTVkNDFjYTE0ZWUwMDE3NTdhNTg3MTkgcHkzaworNjk5MDUgMGE1OThkYmVkNjc5MjY2ZjYzZjE5NmQ5MzBiYjk5MWYzMGIxNjZmOSBsZWdhY3ktdHJ1bmsKKzY5OTA2IDAxNzRiOTM2NjljZDQ4ODllNTc3YzFjMGFmOGI5MjM0NjBkY2IwOTggcmVsZWFzZTI2LW1haW50Cis2OTkwNyAxNmNjYTMwY2YzZWI4M2IxZTI2MDVmMzI5NGQxNmYyZTc3MjYwMzhkIGxlZ2FjeS10cnVuaworNjk5MDggYTBmZWNiZTczNjE2ZjYyODNlM2RlMGY2OTk5MmJiNzhjM2NiNDNjNiBsZWdhY3ktdHJ1bmsKKzY5OTA5IDA1MDQwODdhMjcyMzZiMzc4NTAyMDkwMjU3YzY2M2E2ZDAyMmI3ODYgcHkzaworNjk5MTAgYzFmMDI2ZTA4NzVlMDQ5YjA4YzI3NWRlOTU1ZGY2NjZmNjdhOGVjYiByZWxlYXNlMzAtbWFpbnQKKzY5OTExIDlmZTUzMTU2NTQzY2Y1MmY4MmIxNmZkMzc5YTI3MDc1OTRmNWYzNzMgaW8tYworNjk5MTIgZjllYWQyZTFhMDNjZmQ4YzIzYzg4ZWFjNGNjNWU0MTNiYzU4NjQwMyByZWxlYXNlMjYtbWFpbnQKKzY5OTEzIGJjM2IwNzNhZDE0NmQ1OTE1OWNkNDc3MzRmNjQxYjY4ZjYyMzY5NTcgaW8tYworNjk5MTQgYTUyZTE0NTQ1NTYxNGU3ZmNiNjczMTgxODk2ODlmYTkzZWU0Y2ViZiBpby1jCis2OTkxNSA2NmNlODBlOGU1Mzc5OGU4MTk5NjYwMjYzYzljNmM0OGUwZjc4ZGNlIGlvLWMKKzY5OTE2IGVmM2E2YzE2ODM3NGM0OGRjMDEzYThjNDEwZGNmZmU0OGQ2M2ZhMTIgaW8tYworNjk5MTcgODM2NjRlN2Y3MDhhYjM5N2NkZGJiOTZkNzVmZWFlMWUwNmU5OTM2ZiByZWxlYXNlMzAtbWFpbnQKKzY5OTE4IDk0OTQxYjA1OTgwMGUzNDZiMTU3MWJjYzE0OWE0OGVjZWRkMTMxZGQgcmVsZWFzZTI2LW1haW50Cis2OTkyNCBmYTc0NzY2MGQ0ZDQxNjhjZDViMjNiYmM3MDk4YjA1M2VkYjViMThlIGxlZ2FjeS10cnVuaworNjk5MjYgMDRmM2NmMzJhYTc3ZjgzNjA5MDZlMTIxNTZkYjdmNGYwZDZkODE4MyBweTNrCis2OTkyNyA1Yzc0ZTQwZDE5MjZlNWE2ZTg0ODM3OTA4MzM5ZTkzYTgzNDBjNjgxIGxlZ2FjeS10cnVuaworNjk5MjkgYjFlNjBiNDdlMTYwMTdhNmExZmMyYjBmNzg2ZDEzNzA5NjkxZmViNiByZWxlYXNlMzAtbWFpbnQKKzY5OTMwIDU2MTc0NzEwMzdiYzdhZjVjY2JhNmI2OThiNmY3MDQ3MGJlY2M3MDQgcHkzaworNjk5MzEgODNmYTI3NDgzZmRjOTM5MWJjNDBjN2QzYzZmNWU2NDc5ZGYyNDFmYSByZWxlYXNlMzAtbWFpbnQKKzY5OTMyIDU5NTJkNDExODlhZDFhZjExMTEzZmM4ODAwYWU3NjJkOTI1NjIzYmMgcmVsZWFzZTI2LW1haW50Cis2OTkzMyA5MDQxMmRmZGFiYTMwNmEyNDk0ZGJhMDQ0YzYzZTFiZjc0ZmVkYTg0IHJlbGVhc2UzMC1tYWludAorNjk5MzQgMTJjNjllZjQzZGRlODMyYWMwZDdmMjJiYzMxMzY4ODc4ODgwYmFkYiBweTNrCis2OTkzNSBjMGI5YmMyNWNlYmJlMzk5N2FiM2I4NTQ1YzU5ZTAwMTEyOWUyNmZhIHB5M2sKKzY5OTM2IGJjNzBlYzk3ZTM5ZmFmNTc2NjlmZDAxY2Y3YzkzYzcxYjc1OGVhZjcgcmVsZWFzZTMwLW1haW50Cis2OTkzNyA5YzI1YTA3OTAwMjJjMDYxNzViYTZmNWJkYjgwN2VjYTQ2YmUyOWQ2IGxlZ2FjeS10cnVuaworNjk5MzggZmFmOTY4MjEyZjMxZDZhMDdhYmZmN2ZkNzRkM2U3MDBjYzMxNzk4MSByZWxlYXNlMjYtbWFpbnQKKzY5OTM5IDU3NGZlZjUzYTdlM2RlNDllMjkxODk1NzcxMjU4ZDE3MTA4ZWNhZGUgcmVsZWFzZTMwLW1haW50Cis2OTk0NiA0NWI0NGJkMzJmNDE2NWQxNjljMzFiZTk2MjZiYzY5YmE4YzRmNDczIGxlZ2FjeS10cnVuaworNjk5NDcgYThiYjgyZjVmZDY0N2FkNzBjM2IwMjg2NTBmOWI2Yzg4Yzg4ZTBhZCBsZWdhY3ktdHJ1bmsKKzY5OTQ4IDJmNmIzNGY2N2VmMDIwMTY1OWVmZGFkNTdmNzkxYmYxM2IzMDAyODAgcHkzaworNjk5NDkgMmUyNTc3MWQ3MjAyMTYxZjI1NDBmOTMxYmYwNTgxMDhmZTg1NjUyMSBweTNrCis2OTk1MSA2MGQwOWE3MTY1NTY4MGJkNzZjMjE1MWM4YWExYzM4MGM2NTBhMzI2IHB5M2sKKzY5OTUyIDFkMjQ3Mzk1MTFjOWM5MjlmZWZiY2YwMjZhOWJhYjg4Y2M2NTdhODIgbGVnYWN5LXRydW5rCis2OTk1MyBiOGM0YTM3OTNkMGY1MTJhN2YwZDlhMjhjYzAxMmZlY2JhZWRiOTE5IGxlZ2FjeS10cnVuaworNjk5NTQgYTdmZGY2OWNhZTEzNWMwYWM0OWNmYmNhMTA3MDA3ZGZjMGFkMTg1YiByZWxlYXNlMjYtbWFpbnQKKzY5OTU1IDQ2Y2JlNjdiOTY2MWY3MTE5ZGM2ODliMGI0YTMxYjI3ZDMwOWIxYWUgbGVnYWN5LXRydW5rCis2OTk1NiBkYzMxNWRmN2U4MDg2MzI3OTVjODE4MmVkYzQ5YjI4OWQ0ODAzMzE0IHJlbGVhc2UyNi1tYWludAorNjk5NTcgNjU3NjJhMDZiODhmM2NmMzAzMTM1OGFiMWUwM2Q2ZDEzY2M3OGI2MiBweTNrCis2OTk1OCAzMzdiZDUwOTQ1NWExOTcxODcwMzc1YTU5NWU1MDMyMTY0NWFiZjZkIHJlbGVhc2UzMC1tYWludAorNjk5NTkgMTc3YmExMjJiYjFiMDJjM2EzMzJiMzE1ZDliNTliZTU1NTYxZDc5ZSBsZWdhY3ktdHJ1bmsKKzY5OTYwIDI5YjEyYTg5YjJhMDZjODA1YjE1NzI1NTgwODA4Mzk3OGYxNDkwMDcgcmVsZWFzZTI2LW1haW50Cis2OTk2MSA2NDNkOGQ0ZmM4ZWJjYzY5MTU1ZDM0MTYzNTdhYWRjYTljMDUzMzg4IHB5M2sKKzY5OTYyIDA4YTI5NmE4OGMzZTBiMzRiMTYxZTliOTUwODZhMTgxNzk1YWVmZmIgaW8tYworNjk5NjMgOGUwY2ViOWY1YzJhNzNmMzRmZDI1OTYzN2EyZjg3ZWI4MmM5MjY0YSBpby1jCis2OTk3NCA0MjFhMDM2OWYyMzk0YTRhNDc2M2FjMjViNTI0ZjdiYTBlYmU4NjVjIGxlZ2FjeS10cnVuaworNjk5NzUgYWMyNjc2NWZiMWJiOGIwNDYxZWY1YjU4YThlNDQwZGM4ZDUyMTIxYSBweTNrCis2OTk3NiA3MDJmMTg5OTE2MWUxOTQxZDM1MDQ1YTBjN2Y0MWFkM2JlZmRkMDdkIGxlZ2FjeS10cnVuaworNjk5NzcgNjkyYzhhOTg4MDI2NGIyZTZmY2YxMDIyYTdlZGFlMjIyMGUwNDcwNCBweTNrCis2OTk3OCAwMmVlY2RiMTczNTgwNzljZTA3MzZmMmVlZGU3MzRjMmRhZmVhYTVhIHJlbGVhc2UzMC1tYWludAorNjk5NzkgZjdiMDMwMTAxNjJjNDExN2Q3ZDdjY2FlZWZmNGU1ZDMxZmM0ZmNhMCByZWxlYXNlMjYtbWFpbnQKKzY5OTgxIDBlZTNiOWE3ZjIwOTdlOWRhNzc2N2Y5ZDc1ZTRiZWUzNzdhYTc0NDYgbGVnYWN5LXRydW5rCis2OTk4MiBkNzhiMjhhMzUyNGM1YWFlNmFhNWJlM2Q1YmU4YTg4MTMzOTBiMTc0IHB5M2sKKzY5OTgzIGMwN2Q3ZmQyNzQ2OTkwZTAyNzc5YmRiZTQ4NmU0YzA5OTY1NjhmZTcgbGVnYWN5LXRydW5rCis2OTk4NCA4ODczODU0YmI1ZjkwNzJlNWI3M2I2Mzc4NzQ0OGQ0MGNlNjcyOWRhIHJlbGVhc2UyNi1tYWludAorNjk5ODUgYzgwMDQ4MjE1ZGU1ODAwYjA2ZDM0ZmJmZjIzNmE5ZDlkMDkwMDA3OSByZWxlYXNlMzAtbWFpbnQKKzY5OTg2IDA1MmZiNTFmOGRjZjNiNzkyNTg5ZjlkODBjNjc1NmI5YzYxZDcwNWQgcHkzaworNjk5ODcgM2VjZDQ4NDc1NmIwMjNiM2ZhODAyNDc4NDBjN2IzODUzMzBhNjRhYiBsZWdhY3ktdHJ1bmsKKzY5OTg5IGU4NzJmNTg3ZjE5MDFhNzQyOGU5ZWFlYjliZjkyNTU3ZDhlNmUzM2UgcHkzaworNjk5OTAgZTk5YjU2ZGE0MzJhZjZkMWQ1NmIzMjE3Nzg0ZTkwYjdkMmE4YWZhZSBweTNrCis2OTk5MSAzMjNhNWE4ZDEwZmM4NjAwMmI5MzExZjVhZTc4ZTM4OTFlMGUzNGE1IHJlbGVhc2UzMC1tYWludAorNjk5OTQgNjk4MTc1ZmU4YjNkZTk5MGQzYjZiNzJjY2M1ZWEwMjQ5MjY2NjRjZCBsZWdhY3ktdHJ1bmsKKzY5OTk1IDNmNzNiN2FmMTMxYzE1ZDI5N2JkMjYzMWQwNDZlNTcyOTM2MzNmY2EgcHkzaworNjk5OTYgMzcyMmNlNDU4MzE4OTQ3YTlmMjViZDg4OTliZWIyMDZjZGRlNjU2YiBweTNrCis2OTk5NyBhMWIzZDAyMTY4MjBhOWQ2MjgxODcwNTA0NmM3ODJhODFiZmJmNjg4IHJlbGVhc2UzMC1tYWludAorNjk5OTggNjMyNjY2NjkxZDNkNDgwODMwNTNjNmQ4YzA3YTkxNTFlNDgyZWI5MSBsZWdhY3ktdHJ1bmsKKzY5OTk5IDU4YmJlYjMzZjU4MzMzMWM2NjA4YWZmYTYzMmE3MzFkMWE5YmYwODggbGVnYWN5LXRydW5rCis3MDAwMCA3MTJhYTViYjdiNDhkNWQ3Y2VjM2EwYzk0MDdmZTI3ZWQzZmVmZmVjIGxlZ2FjeS10cnVuaworNzAwMDEgODYyMjg5NDdiNjVkMWY5MDZmODhkMjMzZjNmMGI1OGRhMmY3ZTg0YSBweTNrCis3MDAwMiAxNDlkYzRiYzhlY2EwMzEyMzA4NzYwMWNlMGJmY2E4NThkZDk1MjFlIGxlZ2FjeS10cnVuaworNzAwMDMgOGI0ZGExZjQ5Mzg0NWNhMDc4MjMxMDIyYTkxY2JjOTFmNWNhOWM5MCBsZWdhY3ktdHJ1bmsKKzcwMDA0IGYxNzA3MjllMzAzODJkOWMwMjU5ZWZiNzExN2U1MWJmYzZlZjczN2YgcmVsZWFzZTI2LW1haW50Cis3MDAwNSBmMmU2YTVlYTEwZmUwYTA5NjhhYmIwODgyNTg5N2I0NzUyY2RjNWUzIHB5M2sKKzcwMDA2IDM2OTVjYWZlZjU4ZDkzNDRlYTI5Y2E1Njk3ZGFlZTBjMDkwNzVkYTEgcmVsZWFzZTMwLW1haW50Cis3MDAwNyBiN2IyMzg4N2ZiZGU2ODE1MGU3NTRkODdhNjI2NGM5NTRlNmNhMjBlIGxlZ2FjeS10cnVuaworNzAwMDggZWMxZjhlYjRkYTU5NGY1ZWQ5NDA3OTRiNDgxNjdlZDM2MDUyY2ZhNiByZWxlYXNlMjYtbWFpbnQKKzcwMDA5IGU5ZDAzZjZiMGQ1OTA1NmZhOTU0NmExZTI3NTVhMjEyMjU3ZmZhY2EgcHkzaworNzAwMTAgMjI4Zjg5YWU1NWIxMDA4MjdiYzA5MDU5YmZkMzY2NjA2NTQxMjRlYSByZWxlYXNlMzAtbWFpbnQKKzcwMDExIDJiNjBiNDY1MTNkMjYzZjkyMDVmYmY0Y2Y5ODg1NjdkN2U4ZTgyYzEgbGVnYWN5LXRydW5rCis3MDAxNSBjNGYyN2U1NDZjZjUxNzVlNTJkYzM2NTdiZmRjNWZmMmY3MTM5MjBjIHB5M2sKKzcwMDE2IDEwNWE1MzE3ZTY4ZTEyOTA5OWZmOWU5NDFlMjBkZTJmZjM5MmY2ZGUgbGVnYWN5LXRydW5rCis3MDAxNyA4YjY4OTY4ODc5YzcwZGYxMGEwMmUwMmUzYmE2NjkzY2NkMzM4NmQyIGxlZ2FjeS10cnVuaworNzAwMTggMTY3M2Q5NTczMTFhMGJiNGE5MzNkNmJhNGFjZmJiMWI5OTBlZGZhMiByZWxlYXNlMjYtbWFpbnQKKzcwMDE5IDRmZDgwZTY2YjEwNzIyZjNkNDBmMzc3NDUzYTJmMTY0ZDc2MWFjNGUgcHkzaworNzAwMjAgZGIxZGJmMDU3MTQ3YTRhOTk2NDk5YzdiMWIwNzNmOTE4MzFmZjlkOCByZWxlYXNlMzAtbWFpbnQKKzcwMDIyIDg2NmY3NDdjMTk2ZjEzNzRkOWRmZjA1NWVkOGRmZGIzMWUyOTNkMWEgbGVnYWN5LXRydW5rCis3MDAyMyA4MDAzYTJmYjYyNWJhMTAzODdkYzkxMWU1OWEwZjYzYTI5NzY3ZmNjIGxlZ2FjeS10cnVuaworNzAwMjQgNWRhYzA4MWU3MzBkMDgwNWNhNTQ4ZDk1ZDgwODg0OWY2M2M1ZDA4MCBweTNrCis3MDAyNSBlYjAzZTVhZTcxMDlhNjk3NGNjMjE4YWRkN2ZiNTdhMmEyZDdmYTg4IGxlZ2FjeS10cnVuaworNzAwMjYgODM5OTgzNTk1MzM4MjkyYTM0MGQ0NjAzNmI0NTg5ZWUwZjc5ZGVlYyBsZWdhY3ktdHJ1bmsKKzcwMDI3IDFmODQ3MDZlODE2YzJlNzBlY2Y2MDI2Yjg2ZDc1NGIxNmQ4MjkzMjcgcHkzaworNzAwMjggMWYwZGU0OTRiYzEzMTA3NmQ0NTRlMzFlM2NmNDdlYjI2M2I3MjIyOCBweTNrCis3MDAyOSA5YjYyY2I2NTM4OTIyNzY1YTgyNGM5Y2I0NWM3MTlhZmU1OTdiZjQ1IHB5M2sKKzcwMDMwIGE1ZjAzNzE4NTBmZjU0ZjQ1ZjJhMjc5ZTYyMDVkM2RiNWUyNWNmMTggcmVsZWFzZTMwLW1haW50Cis3MDAzMyBiMzA2YzcyZmZkNzAxMGVkMWE2Yzc2N2Y5ZjRkMWU4YjQ0Yzc0ZTAwIGlvLWMKKzcwMDM1IGQxNTU2YjgxOTVmMjhhZDQ1NzIzNmU5OTkzMDViODAyMzdmN2QyMGQgaW8tYworNzAwMzcgZTA5NDJjNjc1MzcyOGI3NGJmNmNjYWE5ZjFmZWQwZTkwYzMyMTk1MSBweTNrCis3MDAzOCBiNzFkZjQ0ZDViYmYwYTZhYmNhMTIwOGNiY2FiZmNlYjM4ODAxYTA1IGlvLWMKKzcwMDQxIGZjODNjYTFhYzExMDg4MTNlMWFmZWM0ZGIwMmRjMjMxMjljNmY5ODMgaW8tYworNzAwNDIgMzVjMWQ1MjYwN2M4NGY5ZjcyMTY2OWU2MzExZmE0Yzg4ZTZjOGYxMiBpby1jCis3MDA0MyBkMjQ1MzNmYjNmNDdhMTlmZDA0ZGNhYjM2ZjZiMjE5ZjAyZTAwNzNhIGlvLWMKKzcwMDQ0IGY3NWZiOWY0NzFkMDliMjVjZGRiMGM1ODVkNjVlMmVmM2VmMGNhNzYgaW8tYworNzAwNDUgMzE0N2IzYjc4ZGNmN2ViMzA1NjI2ODQ5ZmQzYjI1NTlmNTg1NTllOCBpby1jCis3MDA0NiBhMjY1ZjU5OTYxZjY2YTNkZWJjNDMzZDE0ZTUzMjlhYjEwNTNiZWQ5IGlvLWMKKzcwMDQ3IGM4NGRjYWM3ZTY5YTE4NTBlODVmZGM2ZjdkZmMwMTM5ZDc2MGJjMDAgaW8tYworNzAwNDggZjMzOWRhODM4NThkOTkxMDQ0NDRjMDA3YWM5Y2YzN2ZlN2NkMTFkZiBpby1jCis3MDA0OSA3ODlmZjhiZDE5MGE1YjgwMTVkNTE3MjI1OWI4NmUwYTExM2Q5YmRlIGxlZ2FjeS10cnVuaworNzAwNTAgYmU1YTljODRmNmJjY2E3ZWM0OWFkNmQzMjgwZWEyNTFkMDUxOThjMiByZWxlYXNlMjYtbWFpbnQKKzcwMDUxIDIwNjAzODEyMWFkZWM5NzU1MzU3YjM1MGZiZjgwMjNhYjNjYzhjOTcgcHkzaworNzAwNTIgOWRlNWQ2MmFkNDAyMjhlZjYyZTI3ZWNhZThhZTc0YTQyZDQzMWM2ZSBsZWdhY3ktdHJ1bmsKKzcwMDUzIGJhNmMzMDZjZjJjZWU3NzFmY2MxNDI5NTQxZWNmYjUwNzY0NmM4YWMgcHkzaworNzAwNTQgOTAwMzdmOTdkODcwN2JjZmRkZjgwODNlZTUxMmM1MGVjZWQwNmE4NSByZWxlYXNlMjYtbWFpbnQKKzcwMDU1IDc1OWRiYWNlNTFkMmVkMWJlZGI2NDA1NGFmZTJjYmE2YTFjY2MwMjQgcmVsZWFzZTMwLW1haW50Cis3MDA1NiAyOWQ2NTJlM2YyZDMyYWI5Y2Y4M2JiZTQ0ZTZhYmZiOTlmMjAyODZhIGxlZ2FjeS10cnVuaworNzAwNTcgMGU2ZmFmMjdiNTMxZjI3M2UxNzIyNmM3OGU4NDAzNmJhYmI1MjlmOCBweTNrCis3MDA1OCBjNjRkNGE4YWUyYjJlY2I4MDlhYzZkODVmNGU1YzM4NmExN2VhMzEyIHJlbGVhc2UzMC1tYWludAorNzAwNTkgMmEwZjg0YWM0OWYwOTAzYzMxZGQ1NTlhYWUwNDVmODQzYzYyZWYzYSByZWxlYXNlMjYtbWFpbnQKKzcwMDYxIDY3MjQyNWJlMzg4YTY5MjFkYzhhNzZhYmY4M2Q0MTkyY2ExZjY1ZDggbGVnYWN5LXRydW5rCis3MDA2MiA0ZTE1NTYwMTI1ODQ1ODNhMTg2ODliYzViNzg3MDZiMjY2N2MzZmNlIGxlZ2FjeS10cnVuaworNzAwNjMgNzllNjZjMTFkYzgwY2EyYTBhZDgwYjA1ZWE3NTQ5M2UxOTI2ZGRlMiBweTNrCis3MDA2NCBhZTIyNjMxYTc4N2M0OWI5ZjQ5ZTE1MmQ4OWVhZmJmNWFlZTA4ZTcxIHJlbGVhc2UzMC1tYWludAorNzAwNjUgNjc2NTY3ZTJhNzExOTIxMjZmMDM0MmRjYTVmY2E3YmI4NzA2MDY2NiByZWxlYXNlMjYtbWFpbnQKKzcwMDY3IGQxYTMxNGUwZWZmNzIwMDM1ZmJkNDUyMjBjZGY5YThlN2RhMzU3YWEgaW8tYworNzAwNjggNjAxMWMwOTJlMjEzNDZlZTdiMzViNjY0ZmM1MzM3YjYxOTc2Zjg1MSBpby1jCis3MDA2OSA3ZmFjYTY5NThkYWMwMmRhYjkwMzgzY2M3MGQ0NzY5YWY3N2Q0MzYwIGlvLWMKKzcwMDcwIDBhZDNkZTIxNmU4M2U0M2ZmZWE1ZmE3ZTYzMGZjNmNjNzI0NjVhYzggaW8tYworNzAwNzEgZWY4ZmU5MDg4Njk2OGIxZWI0NjhjYjkxZWJhZTEwM2Y3NzNmYTE3ZiBsZWdhY3ktdHJ1bmsKKzcwMDcyIDc1ZmY2NjliZjk5NmRlYTlmMGUzYmNiODZhNTQ0MzZkYmNmM2YyZGYgcHkzaworNzAwNzMgYjQyMTQ0MWVlNjc5YzVlOGMzYjEyNzRlNWYxMjExYzY4YzY1MTQ1NiByZWxlYXNlMzAtbWFpbnQKKzcwMDc0IGU0Mjg3ZDhjOTc0MTdhZTUyNjBiY2M5MjViYWFhNDcwM2JkN2E1NWIgaW8tYworNzAwNzUgOWYzMDAzNjEyNGY2NzhhMDM2ZTBhMDFjMDM4YTdkMThkYmQ3ZGVmYyBpby1jCis3MDA3NiBlMWNlNjY2ZDc0MDVhNjM3ZTQwODVhMTE3NGRiMTJmNzcxNjBjZjFjIHB5M2sKKzcwMDc3IGZjMmE2ZjZkMzZhY2E1MWU1YzI2MjVhY2U1MjkzODZmNDFlOTk4OGMgcHkzaworNzAwNzggZDcwNzczYzlhZGFkMmQxYTc5MGEyYjQ0MzA0ZDE1NWNiNTY0MDc3MCBsZWdhY3ktdHJ1bmsKKzcwMDc5IDVkZjY2ZGZhNmY2NGFjNjZiMjNhOTdiMmQxMmZjZTllZjdiMWFiMTcgcHkzaworNzAwODAgMmE0NTgxMDZhZmJmZTM1Yjk2ZjM4MGExMzAyZDAwZGUwMDUxYTA3MiByZWxlYXNlMjYtbWFpbnQKKzcwMDgxIDJjNTkwM2EwMmIzNjNhMzhlM2M4MDQ5OGU2Yjk4YzIwMjliYTE1NzkgbGVnYWN5LXRydW5rCis3MDA4MiA2MTJmYzZlZTY4Zjc0NTE4NTk5OWVmN2FjMDM3MzQzZThhZGU1ZTJkIHJlbGVhc2UyNi1tYWludAorNzAwODMgYjc2MzJkZjExMjFmYjcyMzVmZmIzM2Q0ZTBhMTg2ZDFhNjU0N2M2YiByZWxlYXNlMzAtbWFpbnQKKzcwMDg0IDZmZDIzMTkxN2VmN2MyMzFlMzhiNGIzNGFlNjRmYzRlNGJlM2VkZGEgcHkzaworNzAwODYgYTZjMjRhYWNlOGNiZDc0MTMyZTZkYzUzNThlZjY1NzI4ZjJmYmVjNiBsZWdhY3ktdHJ1bmsKKzcwMDg3IDJjZWIyYTc2ODgwZDVmZjMxNDBiOTVmYzExMjBjYTY5ODY1Nzc0ODYgcmVsZWFzZTI2LW1haW50Cis3MDA4OCBhZGM5YmI0NGVjNDcxMDFkZjE5OGRhYWM3ZTBiMzJkMTQ0YWJjZTk3IGxlZ2FjeS10cnVuaworNzAwODkgOTkxOWMxZjQ3OTVlZjg1MTljYjc0YmE5OGU1N2Q2M2EwMjE4ZjcxNyBweTNrCis3MDA5MCA4ZjVkOGYyN2M2ZmNkYzlkYjUwNTA5Mjc3NzcwMTZjZjVkNGVhMTJjIGxlZ2FjeS10cnVuaworNzAwOTEgZGNkM2JjMmUyMzc3M2MwMGQ4ZGNkYjQ3ZmM2NWI5ODgzM2U1YmFjNSBweTNrCis3MDA5MiA2MGZjZmQxMzdhNzI5MmNmMmZlYmRiNjY2NWZhNWQ0MzdlNWMzODJmIHJlbGVhc2UyNi1tYWludAorNzAwOTMgMDhhNGEzZjljNTBlOWMwMTU1ZDk4NmI0ZjVmMGQ3ZjljNGEzNGI4NyByZWxlYXNlMzAtbWFpbnQKKzcwMDk0IDBiOTdmZmI4MTFhMDEyMTJhNzU0ODQ0MGJlOWMzMjU5NDg0MWIwOTUgbGVnYWN5LXRydW5rCis3MDA5NSAxOWMxYTFjZWIxMjk1NTllYzM2NGE0ZjU4Njg4OTIwZDllZmE5ZjM4IHJlbGVhc2UyNi1tYWludAorNzAwOTYgYzJhOGE1MmI4MTFkYzhjNWQ5ODhiN2FjNjc2ZDkxYmJjNDIyNTFjNCBweTNrCis3MDA5NyBkZTExM2I2ZDI2ZDMyNzQwMWMzODc4MmNjY2M4YTUzZjhlYzhmNDFiIHJlbGVhc2UzMC1tYWludAorNzAwOTggZDVmMTM0YTNhODE2YzcwOTMxZjE1NmMyNzA3OWI3MGEzMmZhYjk2ZiBweTNrCis3MDA5OSA4ZTAzYmZlN2VmMzMxYTlhMzk0NDI4YzdmM2I4NDI4MzAzYTMwNzViIHB5M2sKKzcwMTAxIGM5MTBmNmUzYmIyODcxOTgxY2JhMzhiNDI1OTAyOTQ2NzFkODBjMjMgcHkzaworNzAxMDIgY2E4N2M0NzA3YmZkZGQ4NzM5MGVhMTgwZWMzYmQyMDc2MGJjOWFhNSBweTNrCis3MDEwNCA4NWFjYTQzZGFiYzQ5MzAzMmNjOTQyNDU1NjI0Y2Q0YjhiN2YyYTM5IHB5M2sKKzcwMTA1IGQ1MTNjZTI5MWZiZDIyZmE4NmJiMWE4YjFlODY5MTM1ZTUyNzhiYzggcHkzaworNzAxMDYgZGIyOWEzZmJjYmEwZmRmZmQ5NWFlYTk4NGZhY2IwMjQ5NjFlZTYyYyBweTNrCis3MDEwNyA4NzExNWM3MjcxMDJiNDIwNTYyY2RiZThhODc0YWRjMDRjNjE1NWJmIGxlZ2FjeS10cnVuaworNzAxMDggMmQ2OWQwZDNhOWNhNWUzZjA2NDkxNTg2NTA0YmIxODA3Mjk4MjExYSByZWxlYXNlMjYtbWFpbnQKKzcwMTA5IDljNTZlYjE3ZjMzNGZjZjk1OGY0NmYwYWQ2YzQ5NmUxM2UzM2U4YTEgcHkzaworNzAxMTAgNGRhNWYwZGVkMzYyMmUxMmUxNmI5YWI4ZmE2NGFjOTgwMGNjNjljNSByZWxlYXNlMzAtbWFpbnQKKzcwMTExIDExNmQ5MGVmMzE2NDk0OTQ5OTQyNWJiOGMzNTYwNzE0NWUyZjcyYTUgcHkzaworNzAxMTIgMzc0YTlhZTVkZDBmNDJhNGM0NDZjY2Y1ZDI5OWI4ODgzMmJmNjkzNiBpby1jCis3MDExMyA4ZmUyOTg4Y2Y1NTA5MmM4MzJhODBkZWJiZmNlZWQ4MGM5ZjM4YTY1IHB5M2sKKzcwMTE0IDdiMTc0MWQ2ODA5ZTg5NjNiNWE4ODg4YTcyOGNhMWJmZWY2OTljMzQgcHkzaworNzAxMTUgMDQ1ODczMGViMDM4Yjk3ZmY2MjhjYzY1ZGM2NDFhNWM3MjZiMDUwNCBpby1jCis3MDExNiAxN2VhMThkZmNhYTU1ZDJmYTZjZTQ1ODAwOTc2YWIxMzMzMTFkMDk3IHB5M2sKKzcwMTE3IGQzNDJhNzI1YjJkNTg5OGJlMzViNzU1NDhlZmM5MTAxYjdjNWVmZmYgcHkzaworNzAxMTggMDM4MzIzNTZjMDk2NzQ0OGUxODk4MTYyODk4MjY4ZTEwOTVmODc1MyBweTNrCis3MDExOSA2YzA4YmZlNzhmZmZlYjJiNjU0N2FmNDg1OTJhM2MwM2U4Y2FjYWYwIGxlZ2FjeS10cnVuaworNzAxMjAgNGE0ZGE5NjhkZTJhOThjODc1NmY5ZWEyYTk0OWZkMzVmMDMzZjdmZiBsZWdhY3ktdHJ1bmsKKzcwMTIxIDBjNjM1NTc0YjEzOWUwY2NkYTI4MzI5Mzg5MjkwN2Y1MWFmYjgxNjQgbGVnYWN5LXRydW5rCis3MDEyMiA2YjFiMmU3YTA2ZTk3ZDU5ZjRjZTNlYjZlZTI2ZDRmYWEyODg1ZmQ4IGxlZ2FjeS10cnVuaworNzAxMjMgYjM3M2I5OTYyYzM1YWMyZDQwNDUxYjM4ODRhYzJhMmE3YzNhNGE5NyBsZWdhY3ktdHJ1bmsKKzcwMTI0IDRkMDc4ZDUyMmYyNTk3NTJkN2E2MTcyN2FjOGNjYzgwYjlkODcyZGQgcHkzaworNzAxMjUgZmQwOGU5NDQ5YTQzODgzZDRkNGQwYzY1MDA3M2JjNjZiYWJkNDU4ZiBweTNrCis3MDEyNiA4ZjdiZTQ4NzdhNjA2ZjAwYTk1YTVmZDUzOTE1OWYzMWMyMzk3ZDM2IGxlZ2FjeS10cnVuaworNzAxMjcgZThhZjRlMjRmMDhmOGQ0ZDZmNWZjYWZhMjI3Y2JlNzdlYjUzZDU1OCBweTNrCis3MDEyOCAyNTk2ZGRkYmQwNTdiN2RmMDJmNWYwNzM5Mjg1ZTAyNjc0ODgxMTEwIHB5M2sKKzcwMTI5IDVhZDg4YjkxOTMxOGE1NDUzNTM4ZjdiZjliYjdlMmRmODYyM2RhNTkgcHkzaworNzAxMzAgMGE2MDliYTU0ZjVjNjU5NDVjNGY5OWY4NjRlN2JmZTkxMTE5M2ExYyBweTNrCis3MDEzMSA5ODI1MDI4MjZmNzg5ODc2NmUyOWRkZTYwNWNlMzQxYjM5MTA1Yjk1IGxlZ2FjeS10cnVuaworNzAxMzIgYWU3MWRmOTM5NGRhYzhiY2QwMjE1ZTA2MDRlNjYwYTdmYTU0ZWQzNiBsZWdhY3ktdHJ1bmsKKzcwMTMzIDExNzcyNTg2YmM0Mzk3ZWQ2ODVlZjRjZWFlYWJjZThlNmYyMjE4ZDAgaW8tYworNzAxMzQgNzM4ZmFkMzhhNGJmZTViNjJjYWM4MTg3OTEzOWMwYWY4OWEzOTliNiBweTNrCis3MDEzNSA1YjRlOGY0ZTljYmQ2MmU5OGQ1Y2RkNGRjZmQ2ZjgxOTRkNTcxZjFlIGlvLWMKKzcwMTM2IDYxZDIwZTkxOWE5ZTY2Zjk1MzM1MmI0YWYyZWI2ZjIyZTZjMjU1YzIgbGVnYWN5LXRydW5rCis3MDEzNyA4MDIzM2RmMjRmOGNhZDVhYjJlZWJlZDQyNGEyMWRlNTk0NjRhYWUyIGxlZ2FjeS10cnVuaworNzAxMzggOTIwYTQxZDU4MWI1OWVlZjM0Mzc2ZDBiYTc1YTdlZGJkYmY1OGY1YiBweTNrCis3MDEzOSBlNjczZjkzOTI0MDJkNzU1NDc3NjdiZTQyYmI2Yjc1NGU1OTdkNGI2IHB5M2sKKzcwMTQwIGM5NmUxYWI0ZGFiM2FhMDUzODdjNWI5OTg3N2VmYzc5ZGI4NTM5MzIgaW8tYworNzAxNDEgMzhhYTZmMzZjZTRmYzEwMWMxYzA5Yzc4NmJmY2VlMjAzODY0MGUzNiBweTNrCis3MDE0MiBkNzcxNzJlYjZmZTc4OWQzM2I5MTVjM2VhMmRmZGUzODgxMGE5YjhlIHB5M2sKKzcwMTQzIDNiODg1YjkyYWY2Y2RjZDQxODI0Zjk2NTkyYTA1NzlkODlmYmYzOTggcHkzaworNzAxNDQgNzdlZmJiM2MzMTEwYzAyOTc3NGY3ZmQ3Y2VjZWYzY2Y5OGQ3YTI3ZCBweTNrCis3MDE0NSAwMWY4M2JiNGExYzRkMmJmOTc2Y2UxMjY0ZTVmOGUzYzU1ZDU2ZGE1IGxlZ2FjeS10cnVuaworNzAxNDYgZjYzMmE0ZTZlZTMxNDJjZmRhYjcyMGFiNThlMzYyY2FmNDNkNGM1ZCByZWxlYXNlMzAtbWFpbnQKKzcwMTQ3IDcxMTE4NDVjMmY1ZTNhMjJlNTE5MGQyODRmNjA4ZmJjZTVkNTIzYjcgcmVsZWFzZTI2LW1haW50Cis3MDE0OCA3ZDY5MDcwYTNkNzgzZGViMGYxMjQwMWUwZTU4Y2I2MDJlYWY4ZTFmIHB5M2sKKzcwMTQ5IDc3ODU5OWNlODFhMTRjNjhhNmM3ZGJkOTViYjBlNzhmNmEzOGM3ODkgbGVnYWN5LXRydW5rCis3MDE1MCA4YTNkYWRjY2QyMDc1M2FhYTQ4NTdkZWYyMzYzMzgzZjIyZGRmOTEwIHB5M2sKKzcwMTUxIDcxZGFlMjJlMTgxZDk4M2UyOTRjYWNmOGIyOGM3OWJiNjBkYjkwNDMgcHkzaworNzAxNTIgMzA0OWFjMTdlMjU2YmIzMGI3OWYxMTM0YTM3YjY1N2UzMGQzYjc4YiBweTNrCis3MDE1MyA1OGRiNGRlYjdhYjE2ZDc3ZGEwOWIyMDU0NDI1YjFlZWI4NDFkZGE5IGxlZ2FjeS10cnVuaworNzAxNTQgZWJlMTA4MTBlYmVkZWNiZmZlYzc5NjhjZWVmOTFlZGZjOTY2ODUzMSBweTNrCis3MDE1NSAwMTU5YWMyYmM3ODdjNDk5ODM1ZGQ3ODQzMGQzNzYyNjAwNzcyYmM1IHB5M2sKKzcwMTU2IGUzN2JiMzAyNTVmMzExNzM2MDM5OWNjNDBiYWJjYTdmNzJhN2UzZWMgcHkzaworNzAxNTcgNDU2M2U2MTIwNTQ0YzA3ODFmOGVmNDliNmYwMTQ4YzI1YjU2ODUyMyBweTNrCis3MDE1OCAxOTRmZDQwMTkyMmU2MDdkYjkxMTc4Yzc2OTYzNjk3MGI5ZDI2ZmEzIHJlbGVhc2UzMC1tYWludAorNzAxNTkgZjg2NzBhN2RhMjI5NmIwMGJlOWE1ZDdhNzk2ODU5MTIxMmNkYThiZSBweTNrCis3MDE2MCA3NjhhZWVhMmJjMGZkYmEzNzNkMDUxZTNmNDk2OTNlMjBjZmJkY2YxIHB5M2sKKzcwMTYxIDU1ZjNiODgxY2VkMjYzNzFjNjk1ZmUwYzU1OTc2YmUyZGIwM2JlZDggcHkzaworNzAxNjIgMGE1MzNkYzFkZWIyMjc3MjQ5ZTFhY2I0YmM0MTM0YWE3ZjViODQ4NCBweTNrCis3MDE2MyA3NmE1NzliNmJhZGU5NWQxZWExOTRkNGY1OGE4MjgyMDdmZmJkZTk1IHB5M2sKKzcwMTY2IDBjMDI4Njg1YjQ0YzNiYjRhMTBiMTYxMmVjMGIwODkwNjA1ZmJjOWMgbGVnYWN5LXRydW5rCis3MDE2NyAyNDAyMzFhYzc5Y2ZkMDE3MWQwODc1ODI2ZjA2YzI3MmY3YzFjMGRkIGxlZ2FjeS10cnVuaworNzAxNjggZWIyYzM1ZGQyMjVhYjM0NDM5ODJkOTI2N2VjODA2Yjk0ODU3ZWJhMCByZWxlYXNlMjYtbWFpbnQKKzcwMTY5IGZhOWNjNGQ0MTg1ZjdmZDJjOWQxMjQ5ZGYwN2YzZGViYWEzNWMxYmQgbGVnYWN5LXRydW5rCis3MDE3MCBjZTJiNzU5ZGM3ZjM1ZjE2ZmI2ZDI0ZTgzNDdhMWE5YWZiYmMyNzZhIHJlbGVhc2UyNi1tYWludAorNzAxNzEgNGQwZDYxNWQzNzg0YzJkMTg0N2M0MzVkNDIyMTc4YzczYTA0Yzk2YSBsZWdhY3ktdHJ1bmsKKzcwMTcyIDI2MjljNDdmYTZiY2U0ZjQ4N2NjMzg3ODA3YWZhYWExMjhiMGIxZDkgbGVnYWN5LXRydW5rCis3MDE3MyBjOGE4ZWM4N2ZmMWYyZjNlMzI3MjJjMTAwZTQzNTczZGE0M2JhNzMxIHJlbGVhc2UyNi1tYWludAorNzAxNzQgNDFlNDA3Mjg2NjEwNWQ3OTQ5OTBmYjg1Mzk2M2U0NDUxMTkxOGMyNyBweTNrCis3MDE3NSAzMGVlYWRjNDY1MjBmYmU0NjZhZjY0ZmYzN2MxNTYyM2IzYmY1Y2IxIHJlbGVhc2UzMC1tYWludAorNzAxNzYgMzllOWEyMGI3ZDdmNTA1NGViZWQ5Y2IyNDQ5YTYxZjVhYmY2ZGVlZSBsZWdhY3ktdHJ1bmsKKzcwMTc3IGRjM2QyNDgyNGI2MDI3YTdjZjM3NTdhMmY2Yjg5OWYyZTRiNGJmMzMgcmVsZWFzZTI2LW1haW50Cis3MDE3OCAyNzYyNDRmZmNhZWVlMWNmYTQ2MmFhNTBmZWZkZGZmNWY2NmJlODhmIGxlZ2FjeS10cnVuaworNzAxNzkgNWYyNDVjNzAwYmJiMTUwYTVhYWI1MmNhNGJmZGJlMTZiNWNkNmFjZSBweTNrCis3MDE4MCA0YjU0MzFmYjJlOTIwMjFkYjhkNDI4NjRlMjEwOWIwNjI5YTMxNzk0IHJlbGVhc2UzMC1tYWludAorNzAxODEgZmJjNzc1OTc2M2IyYzhjMGJkNjczN2ExZDM0Y2ExYjEwOTcwZWMxZSBweTNrCis3MDE4MiBlZWFhODdmYzNiZmQwY2I3NWM3N2U5ZmUzMjYxNTA0ZmIxMjZmOTAwIHJlbGVhc2UzMC1tYWludAorNzAxODMgNzU3OTI5MjhmY2U4OWJjYTFlOGM1MDFkY2E3NzM3MGE0ZWY5YTFmMSBsZWdhY3ktdHJ1bmsKKzcwMTg0IDMzZTlhMTQ1ZmQzODM1N2VkNDJhNTJlYmY1MGNiMmU5OWE2M2Q4NjAgcHkzaworNzAxODUgOTliNjhkN2Q3YTg5MmYyOTlhMjA2NDFiZGM3MzQ3YjAyODczODQ5OCBweTNrCis3MDE4NiBmZGRlZTU0NTYwMTNhYzAxZTVmZjU5ZmI2ZWY1ZWY5MDkxZWFlOTk4IHB5M2sKKzcwMTg3IDFmYzFjNDFkMTM2ZjRiY2Q4OTZmYTBjYWM1YjIzMzc3NWVlYzZkNWQgcHkzaworNzAxODggZjQ4YWY3N2VlODRlMjA4MjhiZDUzYjY2YTJhYjBmNTdjZjRkMWZmMyBsZWdhY3ktdHJ1bmsKKzcwMTg5IDc5ZWEwNjY3NjA0YjM3MjJmMmQyY2QxNmEwZjA5OTYxZmY3ODAyZDggbGVnYWN5LXRydW5rCis3MDE5MCBjZGQzZjYwZDk5NzRmNDQ3NjljZjc5ZGM1OTc0YTk4YmFkMzE2ZGFjIHJlbGVhc2UyNi1tYWludAorNzAxOTEgMjc1YmJlZTE0NmFiMDViZjQ4N2YwOWI0YWNiMzQxOWM2YWYzMzc5MSBweTNrCis3MDE5MiBhOGI5YWEwMjg4OTliZTk1OTBiYTBiMGY4MzdlMjE0ZmJjNGE5MDYxIHJlbGVhc2UzMC1tYWludAorNzAxOTMgOWNkMzU1YTc5ODQ1NmY4MDgzN2JkODRiNDMzMjg4NGZlM2ZkNWY4MiBsZWdhY3ktdHJ1bmsKKzcwMTk0IGQwMWRjODQ3YjU4NjIxYzJlNTQ1ZDljYzc0NDMyMTlmOThkMTY4NjMgcmVsZWFzZTI2LW1haW50Cis3MDE5NSA3YjI3OTY3OGE2YTFkYjQ0YTA3OGE4M2I0NDVmOWRmMzE3MjA0NzU0IHB5M2sKKzcwMTk2IDI2OTg0NDUwYzdlOWE4MTg5YThiZWYwNzEwZTk3OTU0ZDAwYzA5YzQgcmVsZWFzZTMwLW1haW50Cis3MDE5NyBhZmVmYjc3MTY0YWQzYmYyZGMxNzRlMDdmNmQwYTllMTk0YjcwNzgyIGxlZ2FjeS10cnVuaworNzAxOTggNzc1ODI5Y2YwMGQyYWJlYzRiNGNkYjU2MTk1MjMxNDcyMGRjNGNhOCBweTNrCis3MDE5OSA4ZGJkMWI5NmZhNmI2OTBmZDdkYzM5MTVkMTBiZTJiNWY3OTE3NWQ5IHJlbGVhc2UyNS1tYWludAorNzAyMDAgYzc3MjM2MjZlNGUxMDY4MDgzN2E2M2NlMjRjMDgwZGYyZTNmNDRjNSByZWxlYXNlMjUtbWFpbnQKKzcwMjAxIDFmOWRlNTM5ODNjMTU1MTMxODBlMTM0Njc1NzJlNDY1YTFlM2JkNjggcHkzaworNzAyMDIgYmViYzRlZWY5ZTg5M2M0MDE5MmM4YWVhMmVkYzg5NjZhMTc5ZDFkNSBweTNrCis3MDIwMyA5ZmE3OTQ5NjQxZDMwMDliYjYxOTg1YWJlY2ZlOTJiM2FiNDdmMDY3IHB5M2sKKzcwMjA0IDRhM2I0NGMyMWI0ZjNkYTdjODJkNWI1MzIxZmE1NmEzMTg2ZmE4ZGYgcmVsZWFzZTMwLW1haW50Cis3MDIwNSAzYjlmNWZhOGJjY2Q5MWQyZDNkMjFhNGM3ZTE2M2JjMDNjYTU4MDQ5IHB5M2sKKzcwMjA3IGNhYmIwZGRjYjg4ZTRhN2UzMTBlZmE0NmU0N2RkMTIyMzUzMmFkNjcgcmVsZWFzZTMwLW1haW50Cis3MDIwOCAwZjZmNzg3ZjEwM2IyOGI0MzIzNTg2ZDE3MzQ0NjE0MzYyODMxMTM2IHB5M2sKKzcwMjA5IGFlZjVjZmU3MzM1OGQ0OGZmZGFkOTIyYjMxYjAwYzBhZjg3Mjg2ZTcgcHkzaworNzAyMTAgZjViODFiZTU5MTU5NDZlM2Y5MjI0ZDZkOWJiNmFiYWM5NWVkZjdhZSBweTNrCis3MDIxMSA5MGE2NjkxNWNhOTE5NzAwYTI0OTk1YTY2MGM2NjA5ZWY3NmYyZmVjIHB5M2sKKzcwMjEyIDQ2NTBlY2RmY2ZiNjQyMzdkMjljMjI5MjQzODMyZDRiZTgxMjlkZDMgbGVnYWN5LXRydW5rCis3MDIxMyAyYjJiNTFmMzA0MDc5OTc3ZmExODk1ZTcyMzBjOGI3ZGMwYjAyMTM2IHJlbGVhc2UyNi1tYWludAorNzAyMTQgZmNjNjIxMWUwZDcxMDVlM2Y3YmI5M2NhN2ExNmYxOTc3YWI0MTVhOCBweTNrCis3MDIxNSA2ZjBkMjExM2RkMjIyNjAwZWY5MGZlNDQ1OGVkYzJmZGY4YzAxZjk1IHJlbGVhc2UzMC1tYWludAorNzAyMTYgYTk5ZmE3NjcxM2ZjNjY4OWNlYzA2NTQ1NjkyMzJjZDVjMjk5ZGIzZiBweTNrCis3MDIxNyBiYmJjOTc0NmM3MGRjNDA2YjllMDhlZTNhNzA1NTJmOGNjZDFkOGMyIHJlbGVhc2UzMC1tYWludAorNzAyMTggNDMzZTExNmMzMzVkYmIyZWNjODYzMDUwNTlhOTY4Yzg5MjYyMDRkMSBsZWdhY3ktdHJ1bmsKKzcwMjE5IDExNDg1MGY3M2UzYTVlYmU3MTVlMjVmZjJlMWExNTdhOTU2NWRiNWYgbGVnYWN5LXRydW5rCis3MDIyMCA0ZTc0NDkzNDhjMWE0ZDVkZTExMzZkODRiZDE4YjVjNTI3ZWU5MjlkIHJlbGVhc2UyNi1tYWludAorNzAyMjEgMDNjODBlMDc0MmMzNDQwOGIwMWY1MTk1YzM0ZTkyNjc5NzhiNGJlMyBweTNrCis3MDIyMiAxMDY2Nzc2ZTI4MjAzNjI0Y2MxOTJkMTM3Mjk5NzliOGJlMjY1Y2E0IHJlbGVhc2UzMC1tYWludAorNzAyMjMgYzc5ZWM2M2U2YzA4ZWQzZTk0NmEzNDJkYmUxMjY5NDhkNTAzMDM2NCBsZWdhY3ktdHJ1bmsKKzcwMjI0IGI5Y2Q2OTM5MjY2NjdkMTg2NGQ5ZTJlNzdiY2JkMTAzOTdlZDZjMmEgcmVsZWFzZTI2LW1haW50Cis3MDIyNSA2ZGJiMmMxYzA5MDA5ZDY2MjIwZWU2ZDIwMzkyMGFjNjMwZDdkYjBlIHB5M2sKKzcwMjI2IGY1MTQ1YWJkNGJhMjZiMTBhOThjZDYyMTM4NjhmNGQzZWUzZmE1MjYgcmVsZWFzZTMwLW1haW50Cis3MDIyNyBlOWU0NmFkZTYxYzc4Njg0OTdkM2ZmMjg3ZjUwNGNhZTM3NmYwMWQyIHB5M2sKKzcwMjI4IGE1ZTMyYzA2ZTE0YjEyODdjOGVjNjkyNDZhNTk3ZDVhNmZhYWZhY2YgcmVsZWFzZTMwLW1haW50Cis3MDIyOSBhODlmZGJiMjNhNGE3ODU2YzdjNmQyMjNmODhiZmYwYWY5YTFhM2QwIHB5M2sKKzcwMjMwIGJjMWNlMzY4OTg2ZTQ1YjFmYWY5NmY5Mzk5NWRmNDZiY2Q3NWU3YjggcHkzaworNzAyMzEgMzZkN2ZhYTVmZjk2MTRlNjI3ZGYwYmRkNWM2N2M4ZGJmMTc1ODA0NSBweTNrCis3MDIzMiBhYmE0NDA0ZjVkOWZmNTE5ZWVkOWJmMzBhMGU3MTZmMTYxMDk1MmI1IHB5M2sKKzcwMjMzIGJmYzJmYTRjODQ0NDliNjFkOWRiMWEzN2ZiNmI3NzQzYmE1ODczMDQgcHkzaworNzAyMzQgZjdiMDZhOTY1OWI4NTMwNWE4MWFiMzA1OGJkZGZiZWRkNTRkOGZjOSBweTNrCis3MDIzNSA0MzcwNDRlNjJkM2QzYmQ0OTQ2NTI0MzBhNTBmNjk5N2FjMDg5YTFjIGxlZ2FjeS10cnVuaworNzAyNDQgOWYyZjg2ZGY1YjI2NDhjYTY5YTFiNzU5YWZkNzhmOWM5ZDYyODg2MiBsZWdhY3ktdHJ1bmsKKzcwMjQ1IDU2OTgzY2ZkZjVkNGUyZThkOThkYWUyYTA4Y2ExNWRjMzY4NzNkZDYgcHkzaworNzAyNDYgZGNlMjhjNmI5ZTg1YTI4ZDhkYTJjOWUwYThkNmE5NzAwYjA5MTAzOSBweTNrCis3MDI0NyAyMDMzZDQ1YTViOTk2ODFlMTQwZGZhM2M0MTRhNDk0MTA0MmFjYThlIHB5M2sKKzcwMjQ4IDg5NWY2OGVjYjA1NWMzZjE1NjY1NjAwYTUzMTk0NWMwN2M1NGNlZmQgcHkzaworNzAyNDkgODM2ZTRkYWRmNmQyY2M2NWI4ZDBmNDU2ZTk0MmIxMTUxMzQ5MmZiMSBweTNrCis3MDI1MSAxMDQ1ZmQ2M2ZhNzMzNWZmOTE1YzU2ZGI4NTQ1YTZjOGU0M2ViMjFkIHB5M2sKKzcwMjUyIGNmMDkzYTc2MzA1MzNjZmJkYTQ3OGNmZWU3NTJiMWVlNTM2MWUyNmIgcHkzaworNzAyNTMgNjUzNzFkZjQxYWNhNjI0MWVlODgxMzA1NGIwYjdlNmM0NTk4NzFmYyBweTNrCis3MDI1NCA1NTQwNzQ5YTI5YmI4NzMwNmFjNWY5M2Y4OGM5NjRhYWUzMjE1MDJlIHB5M2sKKzcwMjU1IDcwZGVjYjU4MGRkOTFmMGNhNzNkZjEyYTZlMDQ2OTZlYzRhNDI2NWYgcHkzaworNzAyNTYgYzA2ZjAyYTVlOTYyN2IxOTA4NWY2NjNlNTE4OTg4NGY1MDU3NTI0NiBweTNrCis3MDI1OSBiYzAyZGUyNzg3NDkwM2FiZDkzMGE0NDE2Y2VmMDA2ZTJjMzliMTFhIHB5M2sKKzcwMjYwIGI5YmQyZTNmNzliYThhNjU4NTI5OTY2MmE1NDdkMDU2ZmVlYTZiMGYgcHkzaworNzAyNjEgNTk4MjUzZGIxZjVkMTEyYzM4MjNlODRlMGJkZDMyNWJhYTVhYmQ2MiBsZWdhY3ktdHJ1bmsKKzcwMjYyIDRkN2Y2M2FjOWQyNDY1ODg4YWVkZWM0NjA5ZTY2OTA3ZmE1ZTIxYjIgcHkzaworNzAyNjMgYjFlY2ZmNWUyNzA0MDQyMmMzNmE2OTk4MjI1NzA0NjkyZTkxYmFkZiByZWxlYXNlMjYtbWFpbnQKKzcwMjY0IDUwMzk3NmNlMzM3M2U1ODliYzEwYmNhMDM4MjYwZTdjNDkxZDE0MjEgcmVsZWFzZTMwLW1haW50Cis3MDI2NSBmNDY3ZDQ3ZjZkZTUyYWRmNjNmZDRkMWQyMTVhYjJhYWJmNmVjNjRmIHB5M2sKKzcwMjY2IDdmY2I3ODVlYzBmNTI3ZDQ4YjIwZGNiMThkYTVlYTkxZDJjZWY1MGYgcmVsZWFzZTMwLW1haW50Cis3MDI2NyA5N2FjODNlNDUyNzA2MWI5MWNhMGM3ZGZkYTc2NTYwNDhkMzcyYTMwIGxlZ2FjeS10cnVuaworNzAyNjggNTQ1N2U0NmQ5ZGZkNDYyOWE2ODE1NTdkMDY5YzNhYWEzNjcxZDE4NSByZWxlYXNlMjYtbWFpbnQKKzcwMjY5IGMxNTQyM2Y5ZmFjMzUwZjM5MjhhMTY5YjhmMDA1ZTczNTBjNDE5MjAgcHkzaworNzAyNzAgM2U2NzZiZjI4MzEwM2VlMDE2ZjdjOTgxODM3ZTY5YjZkYWU0MjM1NyByZWxlYXNlMzAtbWFpbnQKKzcwMjcxIDYzNDU2ZDJiZjVhMDg5MTdjOTExYzM5NjFhNDYxNTZlNzI5YjYxMGQgbGVnYWN5LXRydW5rCis3MDI3MiA1YzkxYTZlMTg1NjRmMDRmMzM0ZDZiMTZlNzBkYWY3ZjM5NjI2MzI4IHJlbGVhc2UyNi1tYWludAorNzAyNzMgYmNmYjdkNjc5MTYxNTliY2ZhNDU3NTJhNDRmNmViY2EzYzEwN2YxNSBsZWdhY3ktdHJ1bmsKKzcwMjc0IDdmNzA3NDkyOGM2ODE0MmQ4MDUyNjc0NWI5YTU1ZjdiNTc5MGVkODMgcHkzaworNzAyNzUgMWE4MzkxY2M0YjQ0Y2Q2NmVhOTg0MjU1YTFiMGJhMWE1MzFkOTNhOCBsZWdhY3ktdHJ1bmsKKzcwMjgwIDc5ZmUwN2UxMzM4OGVjN2E4NDhjYTIyZTQzZjU1ZTUyNzllNmIzYWQgcHkzaworNzAyODEgNDI1NTNlMzVmOGU0YjQ5NjY1YjliMDRlMWVlODY4NGVlOTA3M2UwZSBsZWdhY3ktdHJ1bmsKKzcwMjgyIDNiNDM1NzdlMTk3MWM4YzEzODBhZjBjYjJhMTdiMzlhZGY5YzdhNDIgcHkzaworNzAyODMgN2NiZDQ0YzIwM2NmOTVjYWE3NjA0YmZmYzU0NWMyZWViOWI3MTA3YSBweTNrCis3MDI4NCA4ZWQzY2JhYzE2YmY1NjUzZmE0MmMzMjI4Yjc5YWE5YzRkN2RhOWZjIHJlbGVhc2UzMC1tYWludAorNzAyODUgZGFiNDU5NzFjNTY4ODQxZDIzODUwODc2YWY0MWY0MTBlODgyMGMwZSByZWxlYXNlMzAtbWFpbnQKKzcwMjg2IGY4MDRiOGEyNTExNWU3YjIxZWEzMTQwM2YzZmEwMzY5MGFmN2E0M2IgbGVnYWN5LXRydW5rCis3MDI4NyBhZTMwMDZjN2Q1YjAxOTljNTZmODBlNjRlNDZlNzFhYjdkNWRjYmZkIHB5M2sKKzcwMjg4IDg5ZDhhZjI1OTM1MzI3NGU3NzAxMDE5YmRhOTUxMDZjZjE5NjEwMzggcmVsZWFzZTMwLW1haW50Cis3MDI4OSA1NjNiNGY4ODNlZDg4YjE2NjI3ODdjYjkxMDVkMGM0MjM3YWVkYzlkIHJlbGVhc2UyNi1tYWludAorNzAyOTAgNTRjZmFjYWM2ZDBhMTU1ZDE4ZWQ4ZmM2M2FlODQ3YzQzZDc3NDEzZiBsZWdhY3ktdHJ1bmsKKzcwMjkxIDAzMDgwZmEwOGRmZTdjY2RmMTViY2UxNWI0YzcwYmRjMTQ2ZGZjMzAgcHkzaworNzAyOTIgNWJjOWY2Y2M1NjFlMDQxN2E0MzM4NDlmNDUwYWVhM2Q4Nzg1NzljMyBsZWdhY3ktdHJ1bmsKKzcwMjkzIDRmZGRjZDRlOGViNTE5ODYzY2EwYTY0YTMzNGQzNTExMmIyZWI1NjcgbGVnYWN5LXRydW5rCis3MDI5NCBhZmQ3MTE4YzhjY2ZiNDBjYTU2ZTdkM2YxMTViMGI0Y2FkYmM0NjFlIHB5M2sKKzcwMjk1IGRjYmZmZTkxOGE2ZjhlYzZlZDdmYTE1OGFkOWNiYzI0YWI1YWUwZjIgbGVnYWN5LXRydW5rCis3MDI5NiBhYjdhNzIxNWU0NjM2OTUwZjBhY2Q4OTk5YTNjNzU5NTNmYjE4MWZlIGxlZ2FjeS10cnVuaworNzAyOTcgYzVlMjNiOWNlZGNjOTk3NDAzNzY4MDQzZjRkYjZmNTQ5MGE0MTc1NiBweTNrCis3MDI5OCBiMDkxMWI1YTAwMmVkODQxYjZjZjI1Y2Q4MDRlOWU4NDJhMDU4YzBlIGxlZ2FjeS10cnVuaworNzAyOTkgMjE4NTBkNmQ1YjRkNDBhOTZlYzI4ODg2MDRhY2QzOTk4MWI4ZmVlOCBweTNrCis3MDMwMCAwMzgyOTAxYzZlYmQyNzk0NjExNzM2YWZlY2Y4YTdhMTM4Y2Y1OTFkIGxlZ2FjeS10cnVuaworNzAzMDEgM2MwNGQzNGMwNDk3MTdjZThiY2RlOWMzYjY3ZDkzNTU1ZGM0MzQzOSByZWxlYXNlMjYtbWFpbnQKKzcwMzAyIDQzMjJlNmRkMmE2YzllZDY0ODJlMTk5YzRhYzMzNjgwZTNkODM3MDYgcmVsZWFzZTI2LW1haW50Cis3MDMwMyAwYzdkYWM3ZTJmYjA4MTEyYzM3MDE3NWQxZjc5MzBhNWUyODJkZDYyIHB5M2sKKzcwMzA1IGE2MGZhY2M5ZjdjZjU1NWIyNTRjMGNmNzU4MmZjNTA4OWQzMDU3M2YgbGVnYWN5LXRydW5rCis3MDMwNiBmNTFhMjhiMTA0MjY1MTQ1MTBlMzNlNWJkZmM1MDJhYjBiZWYzNjlkIHB5M2sKKzcwMzA3IGNiY2IyMTQxYWVlNTllODRiOTdkZjlmYThlZGFmOTgzNTFjNzAzZDEgcHkzaworNzAzMDggM2VjZjZjM2NjODFlMGViN2ZkZjQ1ZjQ1NjU5N2EzZGZjM2QzYjM3ZSBsZWdhY3ktdHJ1bmsKKzcwMzA5IDhiMGI5ZWU1OGY2N2I4MWFhYmVkY2FlMzEyZGY2NTg5MTY5ODg1YTIgcmVsZWFzZTI2LW1haW50Cis3MDMxMCA0OGZlNjIzMTcxYTQwZDUzYzZmMjYxNjQ1ZDE1MWY3ZjU0NzkzNWUyIHB5M2sKKzcwMzExIDg3NTg4MWZmNjlhNGQ1NDhhY2M5NmNjZTcxZGRhYjNjODUwZjJmZTggcmVsZWFzZTMwLW1haW50Cis3MDMxNSBiZWI3ODgyOTFjN2ExNmE2ZjM3OWVkOGVhMjAwMGMwOGVlODYyZWI1IGxlZ2FjeS10cnVuaworNzAzMTYgNWRmYzQ1YmRhOTZkMDk1MGNlMjRkOWU2Y2E5ODYyMTU1MTEyYWVkZCBweTNrCis3MDMxNyAzNDAwY2IxMGQ5Y2Y3ZDQ2MWVlZjNkMWE4YWYwOGZhYmY2N2U3ZGUzIHB5M2sKKzcwMzE4IDFlYjU3YmRkZmIzOGJlOWQ2OTk4ZmVlMGM5OTVlNDcyMGRiZjk4M2MgcmVsZWFzZTMwLW1haW50Cis3MDMxOSAxZDhlNGJjZWNmMmFhYTk0MTNhNjMwYWQ1NzEwOTNhMGJiMzg0ZWI0IGxlZ2FjeS10cnVuaworNzAzMjAgYmY2N2U1YTg5M2Y4ZWMwYjU0NmRhMjcxMTUxMGE4NjAzMjU1ZmE2YyByZWxlYXNlMjYtbWFpbnQKKzcwMzMxIDZiMDI0ZmY1YjU4ZjZiMmQyZjQ3MGUxYmRiMmY3NTViYTBhNGNmZDcgcHkzaworNzAzMzIgMmU4ZTg5N2ExMjQ0N2YxYzJhZjQzYmZlNDZhOTJjMDA3ZTE4ZTZhOSBweTNrCis3MDMzMyAxYThiYmM1ZmIzZWZjMjVjY2JlYTc4NDA3MjkxNGZhMzZhZWE4ZDJjIHB5M2sKKzcwMzM1IGYxODhkZDY4NjIwZTZhNGFkYjE4NWFkNzFhZTFhMDMyYTY4Y2UyOTggcHkzaworNzAzMzYgMDRhNWI2NDM4NTI2NGU5NjM4YzNlM2I0NDNlOWMwYzhmYjcwYTk0NSBweTNrCis3MDM0MiAwZTg4NTgyYWEzY2U3MDRhMjA3ZDI2MzIzOGE3ZWU2N2M2NzlmOTM4IGxlZ2FjeS10cnVuaworNzAzNDMgZTVlNjRhMGM0YWEyYzMxZTUzN2ZkMTM5ZjllZmRhZmJhZWFhZThjOCBweTNrCis3MDM0NCBiMzYzZTI5NzU2ZmYyNTg2M2M5ODk3MWQ5YmJmNWEwYmU5NjI4OTllIHB5M2sKKzcwMzQ2IDQ4MDQ4M2MzZDkzZTMxMzhmNzFlMDdhNWFjZWE3OGI5ZGY4NDRlMjMgcmVsZWFzZTI2LW1haW50Cis3MDM0NyAyMjc0N2U4NzRmNDZiOTA1MDZjNmRiZDYzZjdkYzU2ZGVmNjMxMzFmIHJlbGVhc2UzMC1tYWludAorNzAzNDggNjMyYWE1Njg0NzRjOTg0ZjEyNmY5MGM5M2RlMDM5YWNlNGRkODhhOSByZWxlYXNlMjYtbWFpbnQKKzcwMzQ5IDhiMTI4ZTA1ZWM3NDU1OWQ4MjE1MGE2ODVkYWU3YTU4YjE0ODA4NTEgcHkzaworNzAzNTAgNzkwY2I5OGY4YjRmYmYwNWQ4ODJmNTM0ZGYyMDAyYzQ5ZWQ2ZTYyOSByZWxlYXNlMzAtbWFpbnQKKzcwMzUyIGE1OTk0NzViNjljMzAwODAxYmI5YTE4MmUxZjRjZWJkYmRjOGM4MTcgcHkzaworNzAzNTMgMWY4ZDExY2Q0Njg0MjAxOWE5MmI0ZWUxOTQyOWZhODJjYTY4YjFjOCByZWxlYXNlMzAtbWFpbnQKKzcwMzU2IDg2MWNkNDZlZWFlZTdmNTM2YTQyNzYzOWJkYWQyMDdkZmQ4NTJhZmMgbGVnYWN5LXRydW5rCis3MDM1NyBhNGM5YjBiMGE4ZTRiZDc0NzI4OGZmYTE2NjZjOGE3ZWNhNjJhZmE2IHB5M2sKKzcwMzU4IDMxNjU5ZjkzNzYxM2NmNjYzZWFmYzA3MjEwYTI2OGIwNDY1ZDgzYzMgcmVsZWFzZTI2LW1haW50Cis3MDM1OSBmMjdjYWFjYjc0MjY3OWU1MGRkOTA2NzliYTdmNzdmNjlkYzFmMDYwIHJlbGVhc2UzMC1tYWludAorNzAzNjQgM2YxOGQ2MDlhYzFiZDg3MjE5ZGVmYTQ4ZmViYmY4YWYxNTg1ZDcyNiBsZWdhY3ktdHJ1bmsKKzcwMzY1IGM1ZmViMDU4ZmZjNGE2MWQ1OTdiOGVlMDhmMzU5OWJhMjI0MTE0ZDcgcmVsZWFzZTI2LW1haW50Cis3MDM2NiAxYzBhMGY3YjRmNzZmOWQ1OGQxNjc0NWYyNGFlZmY2YjA5MmQzYjU0IHB5M2sKKzcwMzY3IDczNzdhNGQ5NWE0NGNhMTM4MGMzNzVlNGI5Y2ZkNDc1MTZjZjUxYzUgcmVsZWFzZTMwLW1haW50Cis3MDM2OCAxZjk2ZDczM2E3NDM5MGU2MTYyYzNkM2RiY2FhMGJiZjE5NzMyMGI1IGxlZ2FjeS10cnVuaworNzAzNjkgNGUxYTE1NzZmMWU1Y2Y1NjhjMGEzMDYyYTk0ODIyOWQ0ZTlhNDFjNSByZWxlYXNlMjYtbWFpbnQKKzcwMzcwIGMxZGM4N2JkODgzYzllN2ViOTc2ZTAyYTZmODI3NDFmMTk1MWU3ZTkgcHkzaworNzAzNzIgMGIxOWJhMzE4MDcxYjFkZTFkNWEyYWFmYmU3NGY2ODY3MjYzZjIyMiBweTNrCis3MDM3MyA2MmY5ZGFkNjI4ZGVmYzE5MzI0YjIwNzBiMzZkNTMyZGNkODNmMzhlIHB5M2sKKzcwMzc1IDY5Y2Q2MTViNzZmYmQ0NjZkNjc3NGZkZjY2MDdmNGE4Y2VhM2VjODAgcHkzaworNzAzNzYgZThmZDc5NzYzYmNjY2ViOGMyZjY3ZDY3YzE3ZGZjNWYyMDc3MWY3NiBweTNrCis3MDM3NyA3MGY1ZjkxMTNhZTExZWM4MGRjMzNkODg5MzQ3Y2M5NzcwYTA2M2M4IHB5M2sKKzcwMzc4IGJlYWYwMGM5OGI3MWU2MzEzYzZjNWNkMDMxMWY0YmRlNThlMDQ2MzggbGVnYWN5LXRydW5rCis3MDM3OSAzN2Q3NmI1YTgyN2JhM2EyNWNiNjI3MzU0MTY0MzVlNjM0ZWE0MzUxIHJlbGVhc2UyNi1tYWludAorNzAzODAgNGU5MjdmYWYzMGVhZWVjMWE0YmMyYWFiMGQwNjQ4ZDNkNTQyMGYzZiBweTNrCis3MDM4MSBlZjdlNDdlYjJiNjk3NWQ1YjVjMmZhYjdjN2MwMjM2OTVmYzczYjM4IHJlbGVhc2UzMC1tYWludAorNzAzODUgNDQyYmRmZTkzYjI5MjFhOWNhOWJhNTFjYjQ5YmU5NjVjMmMwYTdhYSBsZWdhY3ktdHJ1bmsKKzcwMzg2IDIzYTM5Njk3ZmQ2N2U4NTg0MTc3MmRhZGIxNmMyZWIyMjIyZjM4N2YgbGVnYWN5LXRydW5rCis3MDM4NyAxYmUwOWM1YzY4ZTk4YjRmN2M4Zjg5Yzg5OTJlOWU0YTAwNTQwYjY0IGxlZ2FjeS10cnVuaworNzAzODkgZGU3ZTQ3MTZkOWNiYTk3ZWJhYTU2MjdlZTdjYzRhYTMzNmI3NjgyNyBsZWdhY3ktdHJ1bmsKKzcwMzkwIDY4NTUxYjJhNWZhYTI4MDNlNDNmYzNjZGNiMTlkNmQyNmZkNGVkY2IgbGVnYWN5LXRydW5rCis3MDM5MiAyZmU1YmFmODk1Njk1ODFkODVkMjNhMDU2OGJiYjRlYTZhNTZlMTRjIGxlZ2FjeS10cnVuaworNzAzOTMgMGQxOWUxMTY4M2ZmZWI3NWU0ZWQ5NWEzOTRkMDgzODhjZDI5Y2Y5MSBsZWdhY3ktdHJ1bmsKKzcwMzk1IDRlOTRlYWI2YzdhMmQwZGVkMTA2MDFmY2E2NjY1MzM4OGFiYTJjNDEgbGVnYWN5LXRydW5rCis3MDM5NyAxMmViZGE4ZmI2YjMwMGFmMjdhNmI0ZThlNzEyY2Q3M2M4ZDI4MTllIGxlZ2FjeS10cnVuaworNzAzOTggMGJlMWMxZjEyN2UwNDA3NzljZjNiZTQ4YWU5ZDc3NmNlYTdiZGU0NyBweTNrCis3MDQwMCA2YmYwZjNhYjAyNzlhYzEzNzFlMDBkNjcwZDk5MGZmNzE1N2JkMDhhIGxlZ2FjeS10cnVuaworNzA0MDUgZTRkOTg0NGFiYTI1MDFhOWI3OGVlNDQ0YzE0ZjAwYzYwMDQ4MjlhOCBsZWdhY3ktdHJ1bmsKKzcwNDA2IGNiYTYwOTM4MzA3ODFjYjlhYmQxZWM2MGFlMmQzODNiZmQzZDRlZmEgbGVnYWN5LXRydW5rCis3MDQxOCBjY2VkZWYyOGZlMDQyMDIzNzJlOTQ2NTY5ZGJiMWFiNDZjODhiYWZhIGxlZ2FjeS10cnVuaworNzA0MjQgYTMxOTNjMDQxNDk2ZGVjZGZiNmQ5MjI5N2IzMjc1MGY4ODRkMDg2NyBweTNrCis3MDQzMCA2YjczOGI2ZjdmYzY3OGI1NDEyN2M4YzBiMmFlZWRhY2RkNWI1NGJmIGxlZ2FjeS10cnVuaworNzA0MzEgZmQ0YzgzOTI4MDgwOWFjYWE1ZDliOWY5Y2U0MjgxMGUyNTZiZTlhNCByZWxlYXNlMjYtbWFpbnQKKzcwNDMyIDM5ZjRmYTUxYWNmYjgwN2I4OWUzNDQyZWMxYmE5ODhkYjMyNzY3ODcgcHkzaworNzA0MzMgYzM1N2Q3OTI2NGY4Y2JmNGY1ZDcwMmIwOWVkOTNiNDQ4M2FhYzk5NyByZWxlYXNlMzAtbWFpbnQKKzcwNDM0IDdjM2ZlMWE0YTJjZTM0ODhiZWRhZjUwYTAwZTI1NjM4NDJiNTdkOWYgcHkzaworNzA0MzUgMTU3MjQ3ZWI3OTNkYmJlNjc1NmFmMDNhYjNiOTA3NTYxNzlmZTJmYSByZWxlYXNlMzAtbWFpbnQKKzcwNDM4IDE3MWVkNmZmYzg2YzY0Yzk2OTZlN2FjZjgwOTFlOTM2Njc5MDAxMTYgbGVnYWN5LXRydW5rCis3MDQzOSA1ZGVlOTNhOTc1NThlMTgxZTdlMjhhNmZiYTljZmFlZjI4Mjc3ZmQwIGxlZ2FjeS10cnVuaworNzA0NDAgMTJlMTRlNmYxZjJkYjFlZDc1YzVlMzQ4NGZiMWY2MmM5ODBiMmQzMiBweTNrCis3MDQ0MSBhZDRhNzJiMDhkM2U0MTBlN2U1M2JiZDVlYWJmZmIxNTM0N2NiOTE4IHJlbGVhc2UzMC1tYWludAorNzA0NDIgY2FjMjA3MzczYTM0Zjc0YzZkZDE2ZTgwOGUxZmIwMjU2NTYyODMwMiByZWxlYXNlMjYtbWFpbnQKKzcwNDQzIGQ5NWU1YWRkM2NhNGNjZTMyOTA4ZmI3MDFmZDhkZGMwY2EzYzg3YzYgbGVnYWN5LXRydW5rCis3MDQ0NCAyZDk0YzhmZWQzNzZmNzZiOGZlOTZlMjg3NDg2ZjAxMTA4ODM4MGJiIGxlZ2FjeS10cnVuaworNzA0NDUgZmNkZmZkODVhOGJkM2ViZTBlYThiOWJjMDgxNDBkNTMzNGRlMzRlOCBweTNrCis3MDQ0NiAyMDdhNGMyN2E5MTZhZDlkMGEyYjRhMjQyOGRlZmFmNmNiZWQ4ZDlkIHJlbGVhc2UyNi1tYWludAorNzA0NDcgYTUyNzQwNWE5YzEwNjEwODMyNDkyZjZhOWViODljNzM4MjAzNjAxMiByZWxlYXNlMzAtbWFpbnQKKzcwNDQ4IGMzNDBlM2Y0OWJmMzY0OWU3N2FjYTYyYmY2YmZlYTAyMWYyMDFkMTAgbGVnYWN5LXRydW5rCis3MDQ0OSA1OGIyODZlMTVlYmNlNGNkZjk5Y2Q0MDJkYzU3MTA4OGJjNzk4NTI3IHJlbGVhc2UyNi1tYWludAorNzA0NTAgNTkzODBiMzkwYzQwNjI0OWEwNDg2NDljYjJjNmYwYjRlNDAxYjEzOCBweTNrCis3MDQ1MSA2ZmU2NDAxZGE1MWY5Y2FjYmFmMDY2ZmIyNThhZjY2YTNiNTQ0OGU4IHJlbGVhc2UzMC1tYWludAorNzA0NTIgNzk2NDJiNTg4MWUwYTZiMjIyZDc5NmQxNjA0MmVmNGI4ZDk0NDkyZCBweTNrCis3MDQ1MyBkYTQ4NDBiMmJhMDYxMmY3NGMwMmUzZDI1MjZjNGM3MzQxYTRjMjllIHJlbGVhc2UzMC1tYWludAorNzA0NTQgYzczZGQyNWMwMWMxMjA0MTA3MGUxMTAyYmQ3MzBlOTc5MDQxYzdiYiBsZWdhY3ktdHJ1bmsKKzcwNDU1IDZiYTVlZTVhMjIwOTQzYTMwNzIzNzc2YjA2MmU2ZjdkNjJlNjk4NjggcmVsZWFzZTI2LW1haW50Cis3MDQ1NiA3ZDhmZDc5NTVkMTU1NzQwN2IxNGY0NmVmMTI0NTMzMWY1ODJmN2M0IHB5M2sKKzcwNDU3IDNlZTI1OTQ2OWJhODI4MDQ2OGQ3MzY3Nzk2NjJhNzQ0YWQ4MDE2Y2UgbGVnYWN5LXRydW5rCis3MDQ1OCA3YjUzNjBmYTNlMTlmMjkwNmJmNGVkMDM1ZmMyYThiMzYwZGJhZDE1IHJlbGVhc2UyNi1tYWludAorNzA0NTkgYmI1ZGUyNGEzNDNmNjk3MTViMjRmOTk0MWE4MGVlZDllODQyZTg4YyBweTNrCis3MDQ2MCA5ZjQ2MjhiNDY1NWIwYmU5ODIwMTVkNmZlZmRiYzA3ZDA5YTYwYjdiIHJlbGVhc2UzMC1tYWludAorNzA0NjEgZmZlNGI5YTEwMzVjZDM2ODkxNDZhNDkxMGMzYzJjYTJjMjVlNzcyZiBweTNrCis3MDQ2MiAzNzAzMTdmYjk1MTU1NjE4MzhkZTVkNjUwZDk0Nzc3NDMyZjczMzVmIHJlbGVhc2UzMC1tYWludAorNzA0NjMgZDJiNzg4N2Y4YzlhZWMxMDFjYjlmYWMxNzZjYmY2YjdkZDY2NGM2OSBsZWdhY3ktdHJ1bmsKKzcwNDY0IDkyZmVmY2RkYmZlODQwMTUxYTlkZTFhNTI5MmQ4MGY1MDYzODBhNTEgbGVnYWN5LXRydW5rCis3MDQ2NSBmYjgwYjI4MWUwNWFhMGFhZmViNGYwZjg0NDVhZDcwMjNmMTFkYTYzIHJlbGVhc2UyNi1tYWludAorNzA0NjYgN2NmYmJmMmQyOTRlNTEyYTM3Y2ExNzUxOTQ0ZjlkZWNhM2FmYTU3ZiBsZWdhY3ktdHJ1bmsKKzcwNDY4IGUyYzFjYmRhMmE5NTcyNWExMTJjYWE0MzliNDk2ODBmMWE1MzhiOGMgbGVnYWN5LXRydW5rCis3MDQ3MCAxZjczZTA5ODRkNTU5ZTdkYTcyOTVkYzMwYzI3NzYzYmVjODhjMWM0IGxlZ2FjeS10cnVuaworNzA0NzEgYTExYTY3NmZlNmMwNWFhYmUyOTU0MmMwMDIxOWJiYmVlZWFkOTBmYyBsZWdhY3ktdHJ1bmsKKzcwNDcyIGVhZDNkZTQ4YWFkZDc5NmZjYjVkM2ZmNmI3MDMzOTVkMzAzMmMxZTEgbGVnYWN5LXRydW5rCis3MDQ3MyA4ZmQxNzIxYzMyYzQ3NWMzNGIxOTZiMmMwMjgxOWNkYzgxZDZkMjU1IGxlZ2FjeS10cnVuaworNzA0NzQgMTEwMGE1MDZlZGNmMDUxMDY5MjY4ZmJhNzM4ZTBjNjgyZDJlZmQzNSBweTNrCis3MDQ3NSAyOTBjNzUxM2UxMjUzNzVhZTM5NjhmODk0NmVhY2JiMWUyZjI1YjFkIGxlZ2FjeS10cnVuaworNzA0NzYgNDIyZTJlNjc2M2U5YTE3ZWY2YTBjMjM4NjNmNDk4ODhmODhjODYwYyBweTNrCis3MDQ3NyA0ZmRiMTBkYmM3MzY3NmM2MGJiOGQyYTAyMTQxMzFjZjhhZDU0ZDU2IGxlZ2FjeS10cnVuaworNzA0NzggNjY0NjliNjVkNTQ4NDQ0Y2JmOGMxOWU1ZTRjZDQyNmE2MzZhNDk1YiBweTNrCis3MDQ3OSA5YjM1OGVhZTUzMmE2MjFmNTI0NTU2OGUyYmM5Y2ZiZmE2MjAzMTdlIGxlZ2FjeS10cnVuaworNzA0ODAgZDFjMGY1NTA0MGJhZDUyNGIxNmY2MTY4MGEyZTA2YTU3N2UwNmFhMCBweTNrCis3MDQ4MSBlN2NmNDY5ZDBlMTI4M2I3MmJmYzNmNzY2NmY3YTUzNTAyY2E1OTQwIHJlbGVhc2UyNi1tYWludAorNzA0ODIgNWEwMmYwY2YzYzM4MWVkNWNjZDE4YThkZDhjZWQ2YjhjOGY4MGI4OCBweTNrCis3MDQ4MyAzOTU5ZDUwNGI1NGMzNTM4OGRlOGVmMjUyYTk2ZjhlNWQ4YWEwY2E4IHJlbGVhc2UzMC1tYWludAorNzA0ODUgNzg3ZjI1YjEyN2VlNjFkMGE3YTdmNWRkZmE5ZmVlOGVjMWMwZWVlNSBsZWdhY3ktdHJ1bmsKKzcwNDg2IDczZmRjMDc2ODFlMzdmMGI5NDk4YWE3NTA5M2ViYjJiZDM0YmVjZjMgcmVsZWFzZTI2LW1haW50Cis3MDQ4NyA1MDU3N2FlMmMwYzBjNTM5MzMxY2Q1N2UzZDBhMWFjZDIwYzU1YWViIHJlbGVhc2UzMC1tYWludAorNzA0ODggMjI3MzdlOTVmNmY3NTU0NDJhNTAxOTY1YTMzMjdhOGMwNzA3ZjdhYSBweTNrCis3MDQ4OSA2YzBjMTVhMmVkMmQzZmU5NDhhNDY2ZGYxNDA2ODgwNjg1Yzk0MzU3IGxlZ2FjeS10cnVuaworNzA0OTAgYTQ3MGQwYTAyNTZlNzQyZjJjOWY3YTc1Mjk1OTAxMjdkZGVjZmZhMCByZWxlYXNlMjYtbWFpbnQKKzcwNDkxIGQ5MmE2ZGVjOGJmZWQ3NTIxOWU2NWVlZTYzYzdmMTllMzk4MDRjMGYgcHkzaworNzA0OTIgYmM2ODFlNTNmOTRlMDZhZGQwMmRhMGY0MjZhMjg2M2U2YTlkYTU0YSByZWxlYXNlMzAtbWFpbnQKKzcwNDkzIGM1Yjc5NThmNDI5MjA2ZTA5NWVlOGMxNjAzOGRmOWI3OTdhOGE2OGUgcmVsZWFzZTI2LW1haW50Cis3MDQ5NCAyYTNhZjIxMWYwZTExZmE3NDM3NWYyNDkxZDZkOWE3MDQzOGUxMTcyIHB5M2sKKzcwNDk1IGM3YjJjYzgzNThmNjY1NmUyYzdlYjUwMjhjODQ0NDVjM2FiMzI5MWYgcHkzaworNzA0OTcgNWNhY2U3NWJjYjA1NmNjNjI3MjZmMDFmNDY3NmJlZTQxZDc1MTAwNiBweTNrCis3MDQ5OCA1YWE2M2RkZDE1MTM0NTRhNzdmNDE0NjFlZWUwMDE0ODdkMmY4Y2Y5IHJlbGVhc2UzMC1tYWludAorNzA0OTkgYjg0NmQ3MDljYjc2MzI3MDFiMDE1MmQ1OGMxYTRiODY4ZWExNDY2MyBsZWdhY3ktdHJ1bmsKKzcwNTAwIDAyOTI4MTIxMzM4ZDkzMWU0MDIxNTk3M2FkY2Q2MzY4YmViZmU2ZTYgcHkzaworNzA1MDEgNWM1ODIzNjY3ZGRkNWNlZWRlOTQzNWYyMDk5ODFiOTUxNjIyZjA5MiByZWxlYXNlMzAtbWFpbnQKKzcwNTAyIGI4OTM0ZGQ5MjY3ZGUwM2JkNzZmOTkxODZiOGQ3NWExZDZmNjM4OTcgcmVsZWFzZTI2LW1haW50Cis3MDUwMyAyZDZmZjVjZDI2MDAxMjQ2YTE4ZjU2NzViZWE2MGZlNmU3ZjJlNmFkIHB5M2sKKzcwNTA0IGYyNzc3ZWE5NTRjYTI1YmVmMWMyZTkxNGY4ZmIxM2JiOWFkNDdjNjEgcmVsZWFzZTMwLW1haW50Cis3MDUwNiA1YjFmMDJkYzY5YTM5MTkwNWU3MGIwMzc3N2I4NWIzZjg4NTg1MjQyIHB5M2sKKzcwNTA3IDNhYjJlNTJkOGQxOTY5YzE0M2FmMDBmMTZiMWMwYzJiYzA0ZGQ2MTYgcHkzaworNzA1MDggZTQxZjVhODlmNWMwNmU5OWJmNjQ2ZjYyNzY3YmVhMDAxNmQ0NjI3OCBweTNrCis3MDUwOSBjNjY4OGU5MTU2YjU5MTdlZWQ4NjU1MzE2N2ZhYmQwZDIwMmJlNTVkIHJlbGVhc2UzMC1tYWludAorNzA1MTAgMThkNjU2NTEyMzVlNDg5MTMyZDFiODQ4NjJlNWZkMTUxNzViYWIwOSBweTNrCis3MDUxOCBmYjIxZWFiYTk0ZjY4OWVlZDI3Yzk5Y2RhYTkxYjkzMDA3YTkxOTk3IGxlZ2FjeS10cnVuaworNzA1MTkgZDFiMGJkNDhiYTE1NjM4MWI3OWY5ZjFlNDRjZDM4NmNkNDdiYWE4MCByZWxlYXNlMjYtbWFpbnQKKzcwNTIwIGM4N2U1ODI2MmQ1YmNiM2VkMjM1NDI5ZTEzNzJhMDYwNTEzNWNmMzEgcHkzaworNzA1MjEgZWZkMTdjYjU4MjNhOThmZWE2MDE2OTEyNjVkOTdhNDNjMTQxNDg1MSBsZWdhY3ktdHJ1bmsKKzcwNTIyIDc1MmYyZTNlNDc1NzdmYjAzMDNlZjAwODk2ZjU4NDdmMWUyMmY4YTQgcmVsZWFzZTI2LW1haW50Cis3MDUyMyA0NDVkNDA0MjcwZWFhYmYxOGJmNjMwZjliMTBkMzIxMTc1MTY1MzdkIGxlZ2FjeS10cnVuaworNzA1MjQgODU2ZWQ0MTg3NjhjMTkwNjhhYTcxYTIwNDAwMDlkMTJhOGYzNTQxZCByZWxlYXNlMjYtbWFpbnQKKzcwNTI1IDA5NWQ4NzRhMzA1NDlmYWJmZWRmZWEyZWQxMjY5YjQ1NTQ2ZmNkM2YgcHkzaworNzA1MjYgNDM1YjhiYTFhOTAyMzQ0YTUxZTRjMGUzOGJkMzM2NWFlYzliYWRkNSByZWxlYXNlMzAtbWFpbnQKKzcwNTI3IGRkOWZkZGIwNzIwZGFmOWIyY2I5NTc5MmJkN2Q3ZDY0NThkODMxN2YgcmVsZWFzZTI1LW1haW50Cis3MDUyOCA2Y2I4NDMwNzVlNjkxMWYyZGNiYTg2ZjEwMTJlODMxMDYzODFmYTUwIHJlbGVhc2UyNi1tYWludAorNzA1MjkgNWY4YzhjOTE4ZjliMDI5YjRlOTdjNzJhY2U2MzM0NDIyYzJkYmJmMyByZWxlYXNlMzAtbWFpbnQKKzcwNTMwIGFiMzg5ODc3ZjE1MmY0Yzg5YmUyMDViOGQ0MWZhN2QyNTRkZGFhMDggcmVsZWFzZTI1LW1haW50Cis3MDUzMSAxZjcyYWM5MDk0MDhkYzQxNDIwNjE3ZTE0ZDFlOWUyYTE3MTdmNjk3IGxlZ2FjeS10cnVuaworNzA1MzIgNDQyNmU0OTIyNjRmMDdhZGE1MTZlNTczODcwNzBkYWZmMGU2MWMxMyBweTNrCis3MDUzMyAxMTllM2ZjNmNkZjM1ODFkODk1ZjNiOGIyNWY0NjNhNWI4NjE2YjUzIGxlZ2FjeS10cnVuaworNzA1MzQgYjE2MjdlN2U2NzhkN2Q5NTk2ZDVjZGI1NGE1YTk5ZDlhN2EzNjMxMiBweTNrCis3MDUzNSA4ODk3NGNhNTAwM2ZmOWRhY2Y2MTBiYWY5YjQzMDc4ZjI4MmNiNTZkIHB5M2sKKzcwNTM2IDA1YWU5Y2NmZjUxNDRjNzU4NTA1YzA4MzYzZjEwNDY2MjE0OTFhYzQgcHkzaworNzA1MzcgODdjYjk1MDU5MWJlZTFiOGFjYzRmMmQ2ZDI2ZThjOGQxNWM1NTkwOCByZWxlYXNlMzAtbWFpbnQKKzcwNTM4IDY4N2U3NTFjMjg4ZTZmYTU0ZjhjZDAzM2E4NzIwMWNjZGI3NWVkNzAgbGVnYWN5LXRydW5rCis3MDUzOSAxM2Y4ODdlNWZhMGQ3NTAyNTVmZWZhNmM1MWY1YWIyZjNhNzNiNDg4IHB5M2sKKzcwNTQyIGE1NGVmMThhYjBkODlkY2QxZjg3MzRmNTRiZTQ0OTZiZDFlMmVkZmEgbGVnYWN5LXRydW5rCis3MDU0MyBlZGQ0MzAyY2NlYWZlZWU4YjNjMGUxYTEyM2FjMGNiZDE0ZmM3MzAwIHJlbGVhc2UyNi1tYWludAorNzA1NDQgYTFkZGI0ZGU4NWE1MzY4MTk1OGI3MDcyMmMyZDNhOTI2YjAxYTNkYyBsZWdhY3ktdHJ1bmsKKzcwNTQ1IDYwZDA2Yzk4YTYwNWIxMTAyNTlkMDU1NjI0ZGMyYjYyZDNlZTg2MTIgcHkzaworNzA1NDYgMGU0OThhOWZkZTNjMjI5M2Y4OGI5ZTFjZTk3M2Q2YjdmYTdmYTNkZiBsZWdhY3ktdHJ1bmsKKzcwNTQ3IGExZDE2ZDk4YWE0MGRhZjBlYWM0NDllZDEzOWQ1OWUwZjYwMzhjZDIgcHkzaworNzA1NDggYzcwOTEwYWM0OTJkNzk4NDYyYjY4M2FiOTY2NTc3OWI2OGRmMTEwZCByZWxlYXNlMzAtbWFpbnQKKzcwNTQ5IDk0YmQwNjY2ZmZhNzkzM2Y1MWY5YzIwZGUxYjg2YTgzNDUyNzE1NGEgcHkzaworNzA1NTAgYjM3OTEzMDllNjkwNGM3M2I5MGM1MDQyNDMwODI1MTY0YzE3MjcyYiBsZWdhY3ktdHJ1bmsKKzcwNTUxIDY3ZmI5MDMyZDQzYTQ3YmRhZjk5YzYzOGU5MTYyNjAwZDgyOGNkMzUgcHkzaworNzA1NTIgZjZlZGM2ODZiZGU3NTMzYTkwMDMxODNlMjdlNDkxYTQyZjhhYTVhYyBsZWdhY3ktdHJ1bmsKKzcwNTUzIDdlZGQxNDNjZDRlNDJmMzk4NTEzZmJlOWQyNzRiZWQ3MGI1ZjE2MTYgbGVnYWN5LXRydW5rCis3MDU1NCBkY2EzZDY3Mjc1OGUzY2RjNTNkNGVlYmIxYzkxNmE2NTg3MWRmYWNkIGxlZ2FjeS10cnVuaworNzA1NTUgZTRhYTUzMGU1NzYwYjhhY2ZiODQwYzcyZjg5NzM4M2VmNjgxOGJhOCBsZWdhY3ktdHJ1bmsKKzcwNTU2IDEwODQ1ZTE1ZWQ5YjFiNjAxODExZmJiYzZiNjdmNzFhOGIzMDI2M2QgcHkzaworNzA1NTcgZDc0NzYxMmY4YTJmZWU5OGEzNTU0MjY4NzJkMDEyYTI4MTBhMzZmMCBweTNrCis3MDU1OCA2OGFjMjU1MmY0NGUxOWY1ZjU4NjA1MGZlMDkwOTljY2ZiNDA5MDRkIGxlZ2FjeS10cnVuaworNzA1NTkgNmQ1YzhhNTA2OWIwZmZmYzlmMmMwOTFlODY0N2NmOTVjOTA2ODQ4OCBweTNrCis3MDU2MCBhZWRhOTJmMWFiOWI1NzAzYmJjMjc2ZTk3NGUzNDk4YjRiMDc0MGNkIHJlbGVhc2UzMC1tYWludAorNzA1NjEgNTVmMTUwOWM0NWI2N2YwY2M1Yzg1OGRjNTY1ZWMxMzNhMDIxNmRlZCBsZWdhY3ktdHJ1bmsKKzcwNTYyIDU4Njk0Yzc2ZDc2ZDgxNWY4YTRiNmY4YTZiMjA4ODUzZjAxZGE5NTggbGVnYWN5LXRydW5rCis3MDU2MyAwMDI3YzA4M2EwZDRiNDA0Y2VjNzU4ZWM4Y2ZiZjQyM2MwYjE4ZGFlIGxlZ2FjeS10cnVuaworNzA1NjQgZWMzZTI5ZjE2MGRmZDEwMTI2ZWExOGJkNGU5OWU3NGQ1MjNkYmFlMCBsZWdhY3ktdHJ1bmsKKzcwNTY1IDcwMWY2OGY4YjdjZjc1M2Y5NDYwMTQxMjNiMTc1Mzk2MGU0NWM3NWUgcmVsZWFzZTI2LW1haW50Cis3MDU2NiBhMmY2YjJiMzgyYjRjMTFjZDFhZjA4YTJmOGI4YTgxZmNlMWE1NjM3IHB5M2sKKzcwNTY3IDk4NmFjY2UyNjY0MTBiZGFiN2JhZTM2N2FmOWU1MmVhNGE1MGNlOTYgcmVsZWFzZTMwLW1haW50Cis3MDU2OCBmMGE1MDc0MTRlOGNjNzg2Nzc3YjZiYWNhNGZjMGVhMmRmY2I2ZWM2IGxlZ2FjeS10cnVuaworNzA1NjkgMjNjMTJhYzdmMzE3MzZjNjY3NGQyMWI4NGMxZDMzOGYxNDNhZjY5MCBsZWdhY3ktdHJ1bmsKKzcwNTcwIDZlZGI3NDIxNjM4YzBiMjFjYjBhYWQ1YzUwMzkyYzY3NDA0ZGMxZTYgbGVnYWN5LXRydW5rCis3MDU3MSAxMmFkYjgxOTc2NDc5YzQwMzE2NDc1MzI5MGVhYTFhOGUzYzU3YjIxIGxlZ2FjeS10cnVuaworNzA1NzIgYThhOGNmOWIyODE4M2Q0NGQ3MDM3MjhjOGFkNDM3NDA2NDk2ODZkMyBweTNrCis3MDU3MyA5YjU5OWI2MDEyZmE1NGRmNzJhOGYxODM0ZGQ1YjVhMjA3NTkxY2E4IHB5M2sKKzcwNTc0IGQyMTM0MTMzYmYwYzk5NTI0ODM2OTlkMGQyNzdhMTFmOTQ5Y2NmMzUgbGVnYWN5LXRydW5rCis3MDU3NSA4MjBmMzQ3NWIwOGQ3ZjJjNzQxMjI2MzY5ZWY3OTgyMThhNDE5N2VmIHB5M2sKKzcwNTc2IDExZDU0YzdlMDg5Yjg4NTEwOGFhMmI5ZWI5Yzk1OTM1OTgwMjgzYjggcmVsZWFzZTMwLW1haW50Cis3MDU3NyBhOGRhOGFjZGExMjg2N2Q0NzRhZTk0MzI5NDBkNTM0NDhlMDZjNjVlIHB5M2sKKzcwNTc4IGE5NTE1ZjI5YjM4Yzg3MzJmZDNiNTY2OWVhZjE2NmQ5Y2VkM2UxOTQgbGVnYWN5LXRydW5rCis3MDU3OSAyNDk0ZmZkNjBlYWU5OWQwZTU2YjYxMDk3ODJjNmIyNzAxN2M2YjUwIHB5M2sKKzcwNTgwIDYwYjk3ZmM4ZjA2ZGEzNmE0OTE2NzRjYTQ4YjM4Nzk1MjIzMjQyYzMgcHkzaworNzA1ODEgMDA2YzgxZjliMGU4MGVkNjBlMWQwOTI3YWU1Zjg0MWYzZTc5OTRhNyBweTNrCis3MDU4MiAyY2M5MDBiZDZiYjAxNjJjZDBmMmI5MzY3MGQ2N2ZjNWIwYmI5MzYzIHB5M2sKKzcwNTgzIGJhNDI0MDE2ZGI3NDY5NjAzZDU3ZmUxMzVjOTdjNzBiODhiOTFmYjcgbXVsdGlwcm9jZXNzaW5nLWF1dG9jb25mCis3MDU4NCA3OTJhN2Y5MzlmZGRlYWMxYTFjZWRjMTZlYWY4MTVhMzAwYmEzMjY3IG11bHRpcHJvY2Vzc2luZy1hdXRvY29uZgorNzA1ODUgM2FkYjM5NzRlNzc3YzA5MDcyNDQ5ZDFmMzZmMDllYTI2NGRiMGFmNiBtdWx0aXByb2Nlc3NpbmctYXV0b2NvbmYKKzcwNTg2IDhhZDI1MWRhNDc0Mjc0ZjE3YWIwOTNiZGY1NThhMmE5MzMzNDE3NmMgbXVsdGlwcm9jZXNzaW5nLWF1dG9jb25mCis3MDU4NyBmZGM4MDZjNzdjZDZlNDIxNWY1ZjZkMTBiZjVmZjVkM2JkYjlmMTFhIHB5M2sKKzcwNTg4IDNkZjdmMTE4ZTUwNDIyZjZhMzhkNDgxZWRjYjI1NGNhYmYwMmUxMWUgbGVnYWN5LXRydW5rCis3MDU4OSBlZmZmYzdlYWFkNmQzM2U3NGU1NzNkYzc3MTVhNjE4NDI2YWRkOTQyIGxlZ2FjeS10cnVuaworNzA1OTAgNWQ2YzBmYzg3YTcxOGViMzY0M2ZmZjE3M2JkZTczYjJkZWNmNjYzYiBsZWdhY3ktdHJ1bmsKKzcwNTkxIDA2MGVhOTc1ZDU5NzEyOTc2MTQwYjQ3MmViMDc1MTYzNzVhNGQ3MzYgcHkzaworNzA1OTIgNDFlMzQ0ZTU3MWExNjAyMzYxM2FmMTAzMzlhNGFjMjcyYjA0NTM3MSBtdWx0aXByb2Nlc3NpbmctYXV0b2NvbmYKKzcwNTkzIDczZjRlOGFkZmViZmQ4ZDI1ZGEwMWRkN2RmM2NiNDQxNDQ0MTAwZWEgbXVsdGlwcm9jZXNzaW5nLWF1dG9jb25mCis3MDU5NCA3ZDBlM2E4YzJlOWUxYjE2Y2QwM2I2ODgwYTM2YjUxYzU5YzliODJmIGxlZ2FjeS10cnVuaworNzA1OTUgOWY4OTc2NTY1ZjgyNmVlMGU5YTdlMjRkOGQ5NWY2ODE0ZDdiNDFlNiBsZWdhY3ktdHJ1bmsKKzcwNTk2IDhjZDYxN2MzZTc0YjAyOGVkMzcyMTcyMWU5MThlMjMwYjc4NTA4ZDEgcmVsZWFzZTI2LW1haW50Cis3MDU5OCBlZTBmNzUxYjgwMjAwM2M1M2FkNTdhMGFkNTY3Yjk1ZDhlMmNmOWExIGxlZ2FjeS10cnVuaworNzA1OTkgMWZiZWMyOWY4OWU4ZDAyYzUxNWZjNDVmMjdlOTAzZDgwZmM4MzQxNyBsZWdhY3ktdHJ1bmsKKzcwNjAwIGE2NzZkMzZjMDdkZDUzOTlkYjBhMWJjYWRlYTE3ODk3MDU2ZjA4OGYgcHkzaworNzA2MDEgZjVkNjcwZmNkYmU5NmJjN2Y0MjFiOGI0MjhhMjllN2Y5N2MyY2IzYSBsZWdhY3ktdHJ1bmsKKzcwNjAyIGYyNzcwNGY0NWQ0YWYzMzEzNDMzYzJmZDhkM2MxYmU5NGRlZGExYTAgcHkzaworNzA2MDMgOGI1YTgwZjUzMzE3Zjg5OWU3OTkxMmRkMTBkNDM3MWE2YTBmOTcyOSBweTNrCis3MDYwNCBiNmY4NjEzMjFiNDVjZjBmZGFhNGRhNWVhMGQwZDc0MDE0ZjdmOTBiIHB5M2sKKzcwNjA1IDNmZGM0YWEzNmQ3NjcwNzhhZDhkMmIzNmVjMDFjZWIzNjBhNjMwMzYgbGVnYWN5LXRydW5rCis3MDYwNiA2MWVmNjU5YWI3OTlkZjYyMzdkZTI3MDk4YzVmZmRjY2U2OGYzODY5IHB5M2sKKzcwNjA3IDMzODI5Yzc5MWJmNjIyNzBjNmU4MmJmMjNlNGRjM2Q0ZmM5MjgxZDUgcHkzaworNzA2MDggYTEwZDk5NTEzZjllOWVlM2EwNTdlZjI4Y2Y0Zjg4YjFkZDI0Nzg0NCBweTNrCis3MDYwOSBjYzEzY2MyMjRmZjU2OGJlMTFiNmNmNmE2YjNkYjFhYTU2ZTBlYmE3IHB5M2sKKzcwNjEwIDA3YjZmY2RmN2Y5NDk5NGU5ZWFlNmI0YWM4Yjg1ZjdkMDU2NjA5MzYgcHkzaworNzA2MTEgMWUyMzM1OTYyYmFkODU0NmExZTExZmY5ZGQ4ZmEwYzA2MTE0ZDRjMSBsZWdhY3ktdHJ1bmsKKzcwNjEyIDc4ZmVkYzM0MmE2YjEwN2RiYzFiNzIyMDgyY2Y3OWZhZDcwZjJlODkgbGVnYWN5LXRydW5rCis3MDYxMyAwYTA1MmEyODczYjI0MTlkZjY5ZDg4NzI4NDY5MDQ4NmYxODdkOTZhIGxlZ2FjeS10cnVuaworNzA2MTQgMDA3ZTljODZmYjU1YjVlMDg4NGI2Y2E1YTE4M2QyNzU4NTZjMWE1ZSBsZWdhY3ktdHJ1bmsKKzcwNjE1IDRmZTc2MjQ5YTkwOTA3MGVkZDFlOWY1ZDIzODJlNTA4MWFjMjAxNTYgbGVnYWN5LXRydW5rCis3MDYxNiA1NTcyOTBmZmE3ODQ3NjhlN2E5NDNlNzk1YTg0YTViYzZkNTIxYWNiIGxlZ2FjeS10cnVuaworNzA2MTcgOWNjZjgyZTY1MzMyOGYxZDgzOTQ0M2Y4Y2ZjZmY4ZjlkYjAwMmQwYyBsZWdhY3ktdHJ1bmsKKzcwNjE4IGU2MDA5YjljZDkwODRmZmNhZmUwYjI1MzhiNjkzMGUzNjk5ZmVhYTYgbGVnYWN5LXRydW5rCis3MDYxOSAxNGNjOTJhZTk0YzkwNGQwYWNlMzEzYTlkYzkzYjgwMDM3NWUwNTU5IGxlZ2FjeS10cnVuaworNzA2MjAgMjI4Y2ZiNmUyOTAwYzE0NDZjYTA2MmY1ODgyZjEwZTBjZjRhZWMwMSBsZWdhY3ktdHJ1bmsKKzcwNjIxIDc2YmYzNDFhYzIwMjM3YjI0ODllZDYyZmJmNzE3YWRkNTNiZDdhZDggbGVnYWN5LXRydW5rCis3MDYyMiA1MDIzODQ5NGYwZjA1ZGVkNTMyYjUzNTkyY2RkODZkZThmOTEzN2QzIHB5M2sKKzcwNjIzIDcwNTU0NWVjMzI0M2Q0MjcyNTRjZmUxN2NhYTcyMjhmYzZmNjhmY2YgbGVnYWN5LXRydW5rCis3MDYyNCBmMjZjMWNkNmM5ODUwMDVmZWQxNTlkN2UxNDYxZWIxM2UwYWMwODg5IGxlZ2FjeS10cnVuaworNzA2MjUgZWRmNjI3MjYxYzdiNTU4YjBmOWMxZjFkYzU1NmQ5ZDA4MmY1YzY2YiBweTNrCis3MDYyNiBkYWRiZTAxNGJkYTRlMjc1MGUyZWRmMjVkYjEwMjQxZGI4NWE0ZWU0IGxlZ2FjeS10cnVuaworNzA2MjcgZDIyNzU4NGMxYzdkOGU3MDY0N2I5Njg4YmQ0MzA3ZTcyZjQxZThiOCBsZWdhY3ktdHJ1bmsKKzcwNjI4IGRhZjY2MWQwNTQ0MmE3YWRkODhhMzM2ZWM1YjZhZjcwZDgwOTA3MDEgcHkzaworNzA2MjkgY2EwMmJkOGM5NmYyOThiZjlhMmE3MGM4NTMyYmQ0NjhkMDM3NWE4YiByZWxlYXNlMzAtbWFpbnQKKzcwNjMwIDQ3NTgwODY5OGVhZmFhYjYwZDc1OTBlMjgwOGI3ZTAzN2Y4OTNjY2EgcmVsZWFzZTMwLW1haW50Cis3MDYzMSA3NWUzZmUzYzA3MjY3MGQwNmI4YTFiODQ2ODQxN2Q4MjAyZmE2ZjhkIHB5M2sKKzcwNjMzIGVlNGEwMDZkMDE3MWVjMTQ0YWU4YTY5NDEwZWE4ODRiOGQ4ODA2ZjUgcHkzaworNzA2MzQgMTBhODRjNjM4ZWRhMTI5NTY4ZTYyNmNiYzVmZTBiZmUxN2I3ZDg2OCBweTNrCis3MDYzNSA4ZDY5MThhZjIzMmJhZjdlOGU4ZDIwMjE4NmFiM2ZiYzc1ZWI4MjU2IHB5M2sKKzcwNjM4IDhiNjkxNjkwYmFiZDcwODA3NjRlNGFmMzZkNmM2YTkxOTM2Zjk4MjYgcHkzaworNzA2MzkgOWFiNzU0MTEwNDMxNWZhZWFjOTk1ZDM0ODU0M2U0NzE5NTMxN2QwMiBweTNrCis3MDY0MCA0MjY1ZDZjN2MwNzQzY2QyOTkzZmI3YTk2MWRhNWYzODc5NDAwNzA5IHB5M2sKKzcwNjQxIGZiYWQ0MmM0NWM5Y2I2YzQxZjkwZDVlNWI1YmUzOWQ3ZGM2ZjU3ODggbGVnYWN5LXRydW5rCis3MDY0MiA3YWZmOGE3NjZlMjUwNmRhNzZhYTM2NzQ1ZmVmOWFmMGM0Y2I4MTg3IGxlZ2FjeS10cnVuaworNzA2NDMgYTcyNmY3OTI4NTYxODU0MmRiYTZkN2Q0NjBhOWEyZmExYmUxODk5YiBweTNrCis3MDY0NyA5ZGY1ZDA2OTQ5MjFhNjJkODBiMTgzNWIxMTMxY2Q1MTViMDNmNGM2IGxlZ2FjeS10cnVuaworNzA2NDggYjczY2RhYzZhMGMzOGM4NWE4NjQ2NGEyYWJlOTBmNzAwODI3YjlkZiBsZWdhY3ktdHJ1bmsKKzcwNjQ5IGJiOTBlYzY3ZjMxNDg1NzI2N2ZlNTQ2OTEyMDJkYjAwNWM0MTA1ZWMgcHkzaworNzA2NTAgZGE0NTZmNDJlYmU3ZTdhOGVhOTExMjRlNzk1ZThhZjVlYjljZWIwMCBsZWdhY3ktdHJ1bmsKKzcwNjUxIDNhZGQ0MDBlNDE5ZmYwMzIxZWU5ODVmODMzNGFmYmQ5MWM0ZDRkM2EgbGVnYWN5LXRydW5rCis3MDY1MiAxZjVkYjk0MzdkYjg4YzVlY2Q3ZmZmYzJkN2Q3NjJkY2JiZTU3YTAzIGxlZ2FjeS10cnVuaworNzA2NTMgNDk4M2ZkMTk1MDM2NmJjYTllYzkzNjViY2ZjNjJmNGI1YWUxYjM1NyBweTNrCis3MDY1NCBiZGZjNGIzYTkzNDcxOTUxYzgxMTMyODA1MzI4OGVkYjgzNjM0ZDdlIHJlbGVhc2UyNi1tYWludAorNzA2NTUgMzkxODcxZjZjMTY0MmJkNjhhZDQ4MWQ3ZjM4ZDQyYWYwYWQ0ZGRjYyBweTNrCis3MDY1NiA1ZWYxYzFkNzRjNTEyMjdhZDc2MGI5M2YxNmNhNWE2ZmIyMzc5ODc4IGxlZ2FjeS10cnVuaworNzA2NTggOTc2YjA3OTk5NTg5OWI3OWIwNTViZTRkMTg2ODhhMGFlNGM2NDQ4ZSBweTNrCis3MDY2MCAzNzQ5Yjg4ZGJiNjEyNzVmNWI0ZWIzODg1ZDQ0YzJkODNmZmJkNTNhIGxlZ2FjeS10cnVuaworNzA2NjEgNTVkNTQyM2JhOTg3Y2VjZTY0MjY0NjUzODUxMWZkMmViNjA5NDZlOCBsZWdhY3ktdHJ1bmsKKzcwNjYyIGQ0ZTc0NzBiZDY2MDQyYzJhYjk0Y2MxNWVhMzk0ZWYzZjQ2MzBiMDIgcHkzaworNzA2NjMgMTUwZjU2OGQxYmEyZDAwYjQ0NmJiMmM0YTNjYzc5Yjg3ZTJlMTA2YyBweTNrCis3MDY2NCAzYTZkMjdkODA4MjI5NWUyZTUwMTg2N2MzMTJlMzM2YWYwYzEzMTEyIHB5M2sKKzcwNjY1IDFiNzI3M2FlZDM2Y2VkMGJmN2E2YjA3OGM5MTE2Nzc4YWY2YzVkNTMgcmVsZWFzZTMwLW1haW50Cis3MDY2NiBkMDU5MzkyNjNhMGU1MTVhMDAyZWUzZGQ5NGZkYjlmMTMyNDA3NTljIHB5M2sKKzcwNjY3IGI3OTQzMTljMTI1ZWI0NWNhZDAzMGRlYWJjMjlhOTc2NTRhZjYwM2QgcmVsZWFzZTMwLW1haW50Cis3MDY2OCBkNTVlMDViMDZlNGEyYjBlN2ZkMGZlNjNiNzg5ZWFmNGIyNjY0OWJkIGxlZ2FjeS10cnVuaworNzA2NjkgN2FkZDQyM2FmOTcxMDk4ZjM5NmUzYTliODM0NjNjZjJhYzAyMGNlNCBsZWdhY3ktdHJ1bmsKKzcwNjcxIDM2YjM1OTJmMzAyM2I4NzQyMTVjMTBkNTZmZDNmZTFjYTQ0OGFiODMgbGVnYWN5LXRydW5rCis3MDY3MiA5MTM0YTIwOTEwMTNjNWZhMzk5NjM1YTQ2NmJjMzcwNjk0YTc3YzU5IGxlZ2FjeS10cnVuaworNzA2NzMgZTMxNGI5NmZiNWFkMzYyOTJmY2FkOWM2YTU3NjdjYTAwNzMzYzI2YSBweTNrCis3MDY3NCBlOTg5MTU5OGE0MzM0NjRjMjc0OTJiY2M3MDBhNDYxMzBiNmM2OTI3IGxlZ2FjeS10cnVuaworNzA2NzUgZWY2MTJiZTc3MWVkY2VmYjVlZjQ5ZGE4NDhjZWEyMWUwNGU3MGM4ZiBweTNrCis3MDY3NiAwMDEyODhhNjhlOGIwNzQ4NGJiNGY1ZTFhMzdhZTMwMWY0NmYxNmMzIHB5M2sKKzcwNjc3IDQ2YTQ1ZWNjYzlmNzAxZmFjYWI2MzBlMzc3NjYyZWU0ZDYxZWZkYzcgcmVsZWFzZTMwLW1haW50Cis3MDY3OCAwMTk4MTViYzM3ZWFmMTJkOWQ4YTQ3ODJjNDYxNTc3YjMyMGQwNTEyIGxlZ2FjeS10cnVuaworNzA2NzkgNDIzYzk0NzdkNmVmZTZlYzgwNzhjOTUyM2ZhMWI5OTA1ZjAzNTBkNyByZWxlYXNlMjYtbWFpbnQKKzcwNjgwIDAyZjI5NGEyODIwNmZiMGNmNzllNzE3YWZkNTJkMmZlMDA2YTIxMzEgcHkzaworNzA2ODEgZjQ5YTk3YTk3OWViMDkwOGUwM2E4MjM3OThjMTFlNjNmN2UwMjE2OSByZWxlYXNlMzAtbWFpbnQKKzcwNjgyIDFhZmIzNjVmMjQ0ODIyMjdlOWIzZmM4NTMwNjU4MjFjYzUyNWMwMWEgbGVnYWN5LXRydW5rCis3MDY4MyA2ZTU5MWQ0ZGM2Yzk2ZmI0ZjA1NDBjOTk4Yzc4Mzk5NjZmMzg1ODdhIHJlbGVhc2UyNi1tYWludAorNzA2ODQgZjA1YjZkOWFkYmU2NDc3NTc2NGFiODY0OTg4OGZmZDFmZjU0NjlkYSBsZWdhY3ktdHJ1bmsKKzcwNjg1IGJhZmFkNjFjZjMwMjYyZDc3MmRkNjUxMDM1MDQxODUxOWNiZjJhOWQgcmVsZWFzZTI2LW1haW50Cis3MDY4NiBlNTA4NGQ1MTQ4MDllZjAxYzYyZDQyOWY3NDdjMzgyMTNjYzliZDQwIHB5M2sKKzcwNjg3IGIwYzVkZjhjODRhMzQ0MDRkNTEzNDZkOTRiNTUzYmUxODkxYWE3MTUgcmVsZWFzZTMwLW1haW50Cis3MDY4OCBmMTcxYmFjOWY5NjFkMWQ3MTM3ZmQ0ZTBmZmNhNGQzMWFiNmMwMGM2IHB5M2sKKzcwNjg5IDk4MDdjMjZjYmM5OWZhMWUwMTU1ZGY5NTgyMDdmODY5M2VkNDIzODkgcmVsZWFzZTMwLW1haW50Cis3MDY5MCBhM2I4ZDE5MWVjNjgxMmVlYjViZDJmNjk2OTJjZjU4MmVmYTMxNmQ5IHB5M2sKKzcwNjkxIDA1MDdhYWI1ZmIxMTlmNTkwZTI5MDBhMzQ2M2YyNzY0OGMwMWVhZTUgbGVnYWN5LXRydW5rCis3MDY5MiBiYWVlOTA1MjExMTBkYTI1NWI4YWNlMDJlOGYzN2Y5ZDNmNTM5MDQwIHB5M2sKKzcwNjkzIGJlZjAwY2E0M2VmYWU2ZDliZGMyYmM4ZTNmMjQ1ZmI0NzMwOWYzYzMgcmVsZWFzZTMwLW1haW50Cis3MDY5NCA5MmJjMWRkYmM1NzI0ZjRlMWZlZGFiMGZjYTFjOTZlNGVhMDlmMTE0IHB5M2sKKzcwNjk1IDk3NWIyMDM5OWM4ZDAyOWNiZWRiYmUxN2IyZWJkOTViZjJlNGY5NTUgcHkzaworNzA2OTYgN2I1ZmJiZTdiMDA5YzRmMmJkZGZjOGIwZDg0NmEzNmFhNjdkZGFkMiBweTNrCis3MDY5NyA2ZTFjNGEyOTYzZTRjNDFkNjMyZjI2NDkzNzBlYTJhNjdiNTI2N2YxIGxlZ2FjeS10cnVuaworNzA2OTggOWMyM2M1NGU2YjE1OTY3NDZiYTM4YTU2ZTU3Zjc0ZTUyOTcxODlmOCBsZWdhY3ktdHJ1bmsKKzcwNzAwIDZhZDliMDFmOTVmOTk5MWE2ZTQwNDExYmY5ODRlNTU5Nzc2OWNlMjkgbGVnYWN5LXRydW5rCis3MDcwMSA3MWI2OWE4NzNkMjEzMTY3MDgyYzEzZDQ1ZTJkZjlhNmVmNWM0YzQ1IGxlZ2FjeS10cnVuaworNzA3MDIgNjg1ZjE3OTFmYmM1OWE5NzQxNTk3ODliM2VlOWUyOGMzOWYxMGEwNSBsZWdhY3ktdHJ1bmsKKzcwNzAzIGE3YWU3M2EzNzgwNTk0ZjMzN2ExNTIxOThkNDljMGZiZjlkYmYxYzEgbGVnYWN5LXRydW5rCis3MDcwNCAyZDgzNjQ5YTk0Yjc1YWM2NDU0ZjUyMWY0MDViMWUwZDk0YjBkNjA0IGxlZ2FjeS10cnVuaworNzA3MDYgZmNlOGYyMzg0NTJlMWNhZDlmNTgwYzRlOTdkYzE1MTE5OGEwMWI2MSBsZWdhY3ktdHJ1bmsKKzcwNzA3IDExYzMzNWE5NmY2MGYxZDljZGMyYWI4ZjI2MDFkMGI0MTNhZjg5MzQgcHkzaworNzA3MDggOWU0YmI5NDFhMWVhNTVjNTBhMGZkYjdmOTQ5YzgxODcwOTlhZGRmYiByZWxlYXNlMzAtbWFpbnQKKzcwNzA5IDAwNTcxMzk0MWExOTNhMDY5Mjg5MTZhMDQ2Zjc1ZDE1NWQ3OWY2MDUgcHkzaworNzA3MTAgY2MwMmM5YzI5MGE5NDg0YmI5MjY5YWVmYTk3MTQyOWU1MTI0NGE4YiByZWxlYXNlMjYtbWFpbnQKKzcwNzExIGI5ZDZmZGYwZmJiMzYxZjk4YTkzYTIwNzQ5OTE4OTUyMWU3ZjgzMTUgbGVnYWN5LXRydW5rCis3MDcxMiA4NGU5OWVmYzY3YjJiMWEwZmFjYmZjY2JiYjNmOWQwMzg2MmNmMDc3IGxlZ2FjeS10cnVuaworNzA3MTMgZjVjMmJjYjA5NDdiOGFhNTZmOTYzOTZmNmUxYzhiZjBhNDBjYjNiNCBsZWdhY3ktdHJ1bmsKKzcwNzE0IDE0Y2FlMTE2MDY5ZDNjZjVkYzc4N2I5YjBmMmQ2YTUyZTc4OTlkMmUgbGVnYWN5LXRydW5rCis3MDcxNSAxYjdjY2NhMzRmMmZhNjhmYzljNWVjODM1ZmY1MmY5MGI1NDA5ZjEzIHJlbGVhc2UyNi1tYWludAorNzA3MTYgYWFhZjMyNjk0ODc2YTc2OWIwOTA4MWU4YjQ1NzkwMzcwZDcxYTEyNyBsZWdhY3ktdHJ1bmsKKzcwNzE3IDk2NTIzMGIzMzc5ZjFiODI1YzJmMDA5YTYwNzgxNDA3OGJkYzg2M2EgbGVnYWN5LXRydW5rCis3MDcxOCBiOWM0OTllOWY3NGRhOTViOWQ4MzFlNDkxZDhhODA5YTViYTNhMmNmIHB5M2sKKzcwNzE5IGI0YTRmNGI2MDhhYmIxZDBkZjA1YWE3ODcwZjQzNzI1OGMwMjk5NDAgbGVnYWN5LXRydW5rCis3MDcyMCBhYzE2NGI1NGM4YThhM2MxNmM0MzU1Mjc1NTUwNmE0NGRlYjM1ODA0IHJlbGVhc2UyNi1tYWludAorNzA3MjEgYjRhZDU5NDhlMTk3YjI2YjQ5NjRhOGMxNTFlZmVlZGM1MmUyYjRhYiByZWxlYXNlMjYtbWFpbnQKKzcwNzIyIDEwMTRmMGFiZGI1NzIxMDNjZjc5N2UyMzE2ZTZiZDA1ZmNiODdlNzAgcmVsZWFzZTI2LW1haW50Cis3MDcyMyA0MmU4N2ZmOWY2NWRiZDI2NzRlOWY3MjliMDBiZWIxNTkzYjY0MTFlIGxlZ2FjeS10cnVuaworNzA3MjQgZWI1NTJhNTkwOWZiOGQyMTc2ZGM1OWRiMmViNGViNjdlNWE2ZTNhOSBweTNrCis3MDcyNSAzOWI2MmIyY2IyYzc2MDIzZTBkMzkwMGJhZTVlZjU2NGYzNzI1MGIwIHB5M2sKKzcwNzI3IDhkZjRlMGMwNmU5NDAyNjNhMjg0ZWY5Zjg4ZTRiZmQyYmQ5NWI4NWQgbGVnYWN5LXRydW5rCis3MDcyOCAyZDM4ZGUwMDJiYmViYmYwOTdiOTY1YmFjM2FmNjk4OWNlNWQxYzFhIHJlbGVhc2UyNi1tYWludAorNzA3MjkgMDhiZjMxODQ4YTQyMmFjMTkxNmM2MGU0MTI2NDliNTdiMTYzMTNkNyBweTNrCis3MDczMCAyYmZmOTEyMWJlMGY2NGM5ZTQ3OGM2M2JlODQ4ZmY1MzVlZmMxYmQ1IGxlZ2FjeS10cnVuaworNzA3MzEgMTc1YmE3NmU5YzJiNzRiMjhjZDBjMjkwNjhhMjM4ZTkzYzMzY2NlMSByZWxlYXNlMjYtbWFpbnQKKzcwNzMyIDk4NjU1OWRhNTRkZTE0MTA0YTRhZTBkMWMwNzg0Mzc0YzM4MTJlZmQgcHkzaworNzA3MzMgODFhYTQwYWIzNDZkOTYxNmIwMjgzNThmMmZkZTc4OTQwNmVmZWE0ZCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzM0IGYyYzkwZmQwNWQ2NmRjOWM3OGQxMWMwNjA5NGQyYTdkN2NjYzllNmUgbGVnYWN5LXRydW5rCis3MDczNSAxNGUyNzUwZTI1MDZlNTY2YjUzMjI5MzdjN2VlNTdjMmRiMmRjYmEzIGxlZ2FjeS10cnVuaworNzA3MzYgMzk1MjM0NjFlZjdlMjQ3MDM1ZThmM2ViMDM4OGUwNGM4YjRmNTEwMyBweTNrCis3MDczNyA5NzRjMmJlZjI4MDBmMGFkZTRhNThkMmVjYmE5MDU2YjY4ZWYwOGQ1IGxlZ2FjeS10cnVuaworNzA3MzggNTczMDg1MDE1YWE4OTM0Njc0OWQyNDU2ZjM5ODFiZTllMzIzNThiZCByZWxlYXNlMjYtbWFpbnQKKzcwNzM5IDg1N2JlNWQ5NTEyMDhjYWUwYTEwN2Q5YWQxYjBjMDY4Mjg5MzRlNDQgcHkzaworNzA3NDAgMzc2YjgyMWRiNDI4YjhmNzVkNWUyYzQxYWU5ZGE5NzA2ZjA5NTY3MyBweTNrCis3MDc0MSBkZDk3ZDNjM2ZjNjYxOGY0M2ZiYWE3OTI1MDc0YTlmNTM5Mzk4YmRmIGxlZ2FjeS10cnVuaworNzA3NDIgM2I1YmNiOTNiZDExOWRiODZkMzdmMWZkNGYyMGRlOTJjMjE1YjgyMCBweTNrCis3MDc0MyAwZTM4Yjk0MWQ5ZTQ5MGJlYjZhMzAyZjJkNjcyZmRlMmM1OGEyZDNkIHJlbGVhc2UyNi1tYWludAorNzA3NDQgNTRhMTA3NjM4Mzg5NTU4M2I5ZDFkMTkwMjk1ZGExY2ZjNGU3NDYyOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzQ1IDJlNWUwMDFkN2QzNmFkM2I0NTIxNGM5NTU0ZjNkYTQ1NjYxMzcxMTYgcHkzaworNzA3NDYgOTk4MjljOTA4MDU4MTI3ODNlZDNiODE4OGRlN2I0MjAxMGU0MGEwOCBsZWdhY3ktdHJ1bmsKKzcwNzQ3IDEwYTYzYjkzMGNiYWUxNGYwMDM0NDk0YjBkMWQzMjMxZTIyODNhNTIgbGVnYWN5LXRydW5rCis3MDc0OCAyNjhiOGViMzFmNDkzNmUyZWZhZGM0ODcxMGZlOTJlMGNjODJiMTljIHJlbGVhc2UyNi1tYWludAorNzA3NDkgNTJjMzZlNDUwYTQ4YWM1Y2E2NWI2Mzg3ZDVkOTI1Y2FhZjE3YmY2ZCBweTNrCis3MDc1MCA3NTcxYWFjM2UwYzIwYTM3M2EyNWZiZjU2YzU0ZjU3NTQxNjZlOGYxIHB5M2sKKzcwNzUxIGI4ZTg3ZWRmMmY2NjI4NzJmYjU2ZTMwNmEyNDE4NWFiNWUwNzk1OTAgcHkzaworNzA3NTIgZWNhOTM5MDIyYjgzMmUzN2I3ZDY4ZjBkNjM2MTQzMTkwMDQ4N2I3ZCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzUzIGMzNzFjMDkyNGYzNTNjOWE5MTY2NDQyZmViMzkwZjg4ODY1N2Q3YzkgcHkzaworNzA3NTQgZGU2M2NiYzU2MWI2OGU2YWM4YmE2ZmE5NTY0M2FhZjMwZDBiM2I2NCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzU1IDQ1YTcxNzQ1MDk2MWM2OGM5OGRhODE1N2EzOTljZjhkMGVkMTVlZTUgcHkzaworNzA3NTYgNzgwZDY0MDFlZWQ2ZDVmZmFhNTA5MGFjYWZmZWQ4ZjYxNDMzNjgwMSByZWxlYXNlMzAtbWFpbnQKKzcwNzU3IDJmZjg5ZjBmMWQxOTAyYjgxNzEyNjViZDYwZTRiMGE2YzUyMDA3Y2UgbGVnYWN5LXRydW5rCis3MDc1OCBmY2ZjMmM5OTRhNGFhMGU3NGQ5NDBkOGFhMDBlNTU4NTRjZGU1ZTE2IGxlZ2FjeS10cnVuaworNzA3NTkgODM0YTNhOTZkM2FiNDgzYmFhYWIxYTk1ZDBlMmM5ZWZlODYyYzk2ZiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzYwIGU5ZmYwZWZjZmZhOTA4YWQ4Y2YwN2NiMzVkN2I1OTg5OTNkYWMwYTAgcHkzaworNzA3NjEgMWU3OGIzZGNjYTQyYWYzY2ZkN2ZlMWRlM2QyNWExMjc4YTYyYjFjNSByZWxlYXNlMjYtbWFpbnQKKzcwNzYyIDgwMjcxY2UwOWE2NmZiZDk5YjgzM2Y3NThiMDFhNmJkNGM1NzM3ZDkgcHkzaworNzA3NjMgOTRiYTJmYWQ5Mzc4YTY0M2E0YWM2M2UwMTA3YjNhNDYxMjYzZmZlMCByZWxlYXNlMzAtbWFpbnQKKzcwNzY0IDgwZWM1MGQxMzg1N2YyODk0MjZlMzdjNmM5NTQ4YmYyOGMyZDBjN2UgbGVnYWN5LXRydW5rCis3MDc2NSA0MjM5ZmE1NjI3MzVhYjExNTRiODhiZWY3N2U5MDg3ODZmMjMwZjUxIGxlZ2FjeS10cnVuaworNzA3NjYgNTZhMDlkZDBlMGYzMzAxNDdlM2YxOWEzNGNjNmY1NThjOGQxM2I4OSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzY3IGY2YjA1MDVhMjJiMzlkOTY0NzIyZDM2MWY4ZmU3YzQ2ZjYxMDY1NGUgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDc2OCA0M2ViYTc4OTE1OGZkY2EzOWIxMWYzMjJlZDE3N2Q4ZTgzNWM1NmExIGxlZ2FjeS10cnVuaworNzA3NjkgMmYyMjI3MWNmOTI0OThiODJiZGZlNTJmOWMyMzE2M2IzZTE5ZDRiNyBsZWdhY3ktdHJ1bmsKKzcwNzcwIGEyODg3MTA5ZjM0MDY4ZWQwZmMwNmE1NGQ1ZTgwZTlkMWZiNWYzZGMgbGVnYWN5LXRydW5rCis3MDc3MSAwYWZiNWQ4OTQ2NjE2NGZkZDhlOWFiNjA3MzVmNmUwOTg4OWI4NDRhIGxlZ2FjeS10cnVuaworNzA3NzIgNWRlYjI3MDQyZTVhNzllMjQ3ZTNhZGM5MWNjNjBiNmIzNGViMDA3NiBsZWdhY3ktdHJ1bmsKKzcwNzczIDNmODFkOTk0NWU4MmEwZTk4MWJiYTEzOWJiZmJmMjNjZTNkYzkyYjIgbGVnYWN5LXRydW5rCis3MDc3NCA5ZDE3OGNiNTQ2NmEwZDc0MmNhOGE2NjE3NWVmZjE4YjJjM2NkNWE0IHB5M2sKKzcwNzc1IGY0YzVlM2E2NGJlMjNhNGVjYWZkYmNkOGY2Yzc4YTA3MzY5MjMzZjggbGVnYWN5LXRydW5rCis3MDc3NiA1ZWNlMDc4NWRmODEzZDU1Y2NhYWFkYTQ3ODg0NWI1ZjE1ZDRmYTkyIGxlZ2FjeS10cnVuaworNzA3NzcgZTAxMjRmNTQwZWU1NjQ4ZWE5MDMyM2NjNzE0NGFjYTkxMWYxODVhZSBsZWdhY3ktdHJ1bmsKKzcwNzc4IDg5NzZlYzJjZGZlNWRiN2U4NWI0NmUyMGE3NmZlODYyMTA2ZjliOTYgbGVnYWN5LXRydW5rCis3MDc3OSBlNGVmY2IyOTkwZTI1ZWI1ZWMwZTM5NzE3ZGNiNWU0NmFlZDUxOGY1IGxlZ2FjeS10cnVuaworNzA3ODAgOTcwNDk2ZGIxNGJjZGI5MTdiYzI5NjMxODgwZTI2NDUxMWFhOTYyYSBweTNrCis3MDc4MSBkY2FjMDQ1OTIzMDI4NDg0M2RhZjIzYmJlNWFkYjU4OWE1ZTUwZmM2IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA3ODIgMGQ2MmNjNWI0OGQ1Y2VjZTQ5NzQ2ZjYxN2E5Mjg4ZTZmNWZkNDcxZCBweTNrCis3MDc4MyBlYTRjNWMzYmM3YWJiOGMzMGM1MjQ5ZThmYzAxNGI0ZDcxMmY1NTM5IGxlZ2FjeS10cnVuaworNzA3ODQgMTFhNDU2NDc3ZTgyNTg3MzNmMzI1ODlmN2EyYjRmZWRjNmNmYjhjZiByZWxlYXNlMjYtbWFpbnQKKzcwNzg1IDgwM2QwMjczY2JmN2MwOTA1NjkwZTY1YjEyNjUzY2RjNWY0ZGIyZjIgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDc4NiA3NWVjMTJiMjQ0NDhlMmI0ZGMxY2Q1NWRmNGJiMDYxMTU2MjAyNjNmIHB5M2sKKzcwNzg3IDg5ZGVhM2RmNGNiNTc1MGJhZjdlZmE1MWQzZGY3NzY4YWMwYmVmMTYgcHkzaworNzA3ODggYzY5OTU0NzA1M2E5OGMxOTdiOWEzMTYwZDExM2IwYzE1ZWMzMTBjZiBsZWdhY3ktdHJ1bmsKKzcwNzg5IDEwNGNjZDA2NDYxYTg4OWEzNmU0YjQzMDlhYThjMzQ2NjA1NWUwZDcgbGVnYWN5LXRydW5rCis3MDc5MCBmMjhlNmY3ODIxYjMxYjc0NmUyZjZjYjNmZDk3Y2QyODJmNDI0ZGU4IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA3OTEgYzFhM2NlYzBhY2Q0MjdmMzE4YTFmZDMwMjUyM2M1MTBiNmM5MjhkZSBweTNrCis3MDc5MiA3MmJiYjBmOGIwOWE3MjE0YmZkMDExOWIxYzM5ZTQyZjViZDQyYzgwIGxlZ2FjeS10cnVuaworNzA3OTMgMjZiMWFkMDlkMWE3MjM3ZjJhMGRiNTJiMmFmYjlmYzhiMzU5NGY3MiByZWxlYXNlMjYtbWFpbnQKKzcwNzk0IGVlMjIyYzRkMTI5YTJmNjg1YjhiOTI2NGYyYTRmYTI5ZDMwNjBlYWIgcHkzaworNzA3OTUgNTIxOTVmY2FiMTkzZDY5NDdlM2JjZWQyMTlmM2ZmZTkxMzQ0MGUzOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwNzk2IDM4MDkzY2JlZDZhNmRjNjM3OGQ0YzZkNjY4MWQ1NGUyNzAwMjU5M2MgcHkzaworNzA3OTcgZDEyYjAyYWJlNmRjYjQ3YWIyYTE5NGMxNjdlZDIxNjVhOGViY2NhYiBweTNrCis3MDc5OCAyMzFkNjFjNDNlOWNkZmRkNzY0NWVhNDNmZTU1ZTAyZWJhZTYyMmUyIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA3OTkgM2RhOWRjMGM2NWM2YjFmMGFkNDJmMDZlYjgyNjc3MDFhZTQ2MjM0NyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwODAwIGE5MWNmMGRlZmJkNjc2NjhlNGMzN2Y2ZWMxODRiZjAxYmJlMjY0ZDkgbGVnYWN5LXRydW5rCis3MDgwMSBkNGY4NjY3MzliYjI0YzM0MTJlZDc0ZDM1MWFlMmE2YWIxYzE0MDMwIGxlZ2FjeS10cnVuaworNzA4MDIgOTYyZWJhNjIyOTlmYjg4ODg3ZWQwOGZhNzRhMTQ2ODk0ZTAwZTk1ZCBsZWdhY3ktdHJ1bmsKKzcwODAzIDIzNTYyMjYxNzQ5NzFlYjgxZjdhZTA2MzJlOGE5MDIyZmVmYmU2MmUgcmVsZWFzZTI2LW1haW50Cis3MDgwNCBlY2Y4NDI0ZDc0MjIwYjQwMDY5ZmI5NWJjZjk5N2JhYjdiZDdkMWQzIHJlbGVhc2UyNi1tYWludAorNzA4MDUgZDI0NzVkODA2OWFjZGM2Zjg3MjdjZTNmODU2MGE2Y2I3YjgwZGJmOCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwODA2IGU0Nzc4ZWE4ZTRiMjhkNTQ2YzkzN2NlMDIxMTYyMjk1MmNiZDQ3MmQgcHkzaworNzA4MDcgNmY0NjBiN2FjZjhmNGJjYTcxMGE5MDg1ODdhYzM3ZTIwODQ2YzI2NSBsZWdhY3ktdHJ1bmsKKzcwODA4IGM5OGE3MWU5OTE2MmFjYzg2YTJlNDBhMmIwMzhjODE0YmViYmNkNDAgcHkzaworNzA4MDkgMDdkNjUxNzFhODAwNjkxMWM3OTczNDVhMzUyMWQxNTc1MzllZTQ5YiBsZWdhY3ktdHJ1bmsKKzcwODEwIDRhZGFiNzI0MzMzOTk1YmExN2IzNTdiZDY1ZmZhZDg3NGM4ZTIxMDAgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDgxMSBlZWQ0YzdmYTNlMDU4NzQyZGIxODFjOWMxNjFkMDMxNjMzOGZhZDM3IHJlbGVhc2UzMC1tYWludAorNzA4MTIgODk5YWEyZDE4OTg0N2I3ZjVjOTU4YThhZTFjOTdiMmRkNGIyMzNhMyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwODEzIDY5MTA3OTJmY2Q0YjY0NTllM2ZjMjRlZjEzM2M2ZDMzOGU5ZTYxOWYgcmVsZWFzZTI2LW1haW50Cis3MDgxNCA0ZWViMTRhOWM1ZDJkNzFjNTEyZDNjN2ZkMmFmMGQ4MWRiOTNkMjA0IHJlbGVhc2UyNi1tYWludAorNzA4MTUgOWVjZWI2MTgyNzRhNTIxZmM1NWMwYjVkMWZjOGUxMTFiOTFiZjZkNiBweTNrCis3MDgxNiA5MzJhMWU1MTRjMTYyMzRmY2NiNDIzZGY3YWIzYzJmMWEwMzA4ZDA0IHB5M2sKKzcwODE3IDIxYzE1OTRhYzM2OWZhMDlhYjdlZjlkMzhjZjMyZjg3OTJhODBmOTUgcHkzaworNzA4MTggYzJiMDE0YjU1YmFjMjQxZTFmODI5MjYyNDYyZWIwNGQxZDBiNTcxOSBweTNrCis3MDgxOSAyMjQyYzJlNmM3M2FjNmQ2OTEwNDZjY2NlN2UwM2IwZTY4ZmZjNjMxIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA4MjAgMDVmOTBjZWNiMmEyOWUwZGUwNTRjZDljNjg0NGQ2ZjZjZTY4MTRjZSByZWxlYXNlMjYtbWFpbnQKKzcwODIxIDY2OTRmM2ExYjZlNzI3OWVlOGJjNjc0NGZjMDNhOTFkNzI0ZDg5N2EgbGVnYWN5LXRydW5rCis3MDgyMiAyMzQ1MWIwOWYxNWI5MjNhODFkYWI4ZDA4YThkNmE2YWI5YmIxZWY5IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA4MjMgMmI0MzYzMTBmYzhiYjA1ODk5YzZmNDRhNGZjZDljMmNmMDkyMTU0ZCBweTNrCis3MDgyNCA0NDM2MzkxZDJhOWYyNGJlODIxMDdlNzIxMjJkMDJiOGM4NDMxNDY4IGxlZ2FjeS10cnVuaworNzA4MjUgYWE3Y2YzMjgzZDZlMDYyNmQwZTlmMDhkZWFmMzk2ZGUwOWM4MmViZiBsZWdhY3ktdHJ1bmsKKzcwODI2IDQ4NTdjY2E0NWFhNTQzMDgwODA3NDZlMTdjMDM2MGY2ZDdmOTkwY2UgcHkzaworNzA4MjcgMzk4ZWM5NDAyNzdmNjQ3NmNkYmMyZTJhM2U2NjBjNzg0NDMwZDc2MCBweTNrCis3MDgyOCBlMTI5NDQ2ZGZiZjlhMWMyZDNhYzkyMjU3NzgxOTBhODIwZGYzYWI3IGxlZ2FjeS10cnVuaworNzA4MjkgNTE0MjlhMTk2Yzc1YWUyM2EzMjg4M2JkZWIxM2M5NmFjNzkxOWVhMiBweTNrCis3MDgzMCBhZTYwZTRjMjBhZTMzZjg0NjQ2MmVkNTJiYjNjNDllZjNlODRjMDIwIGxlZ2FjeS10cnVuaworNzA4MzEgZDhjZWIyNmM2NmM0OGMyZGZkZDUxODNmMDI5ZjNlNjk1ZmY3MjE3YyByZWxlYXNlMzAtbWFpbnQKKzcwODMyIGRhZmQ5ODJkZmNmNGEwZTIzYWQ1NzM2ZjNiNjAwYmY1OTcxYjI4OGMgbGVnYWN5LXRydW5rCis3MDgzMyA1MzRmYWY5MTg3ZTg0MDBhMGFhNTNlMGFjNmJhM2YxMDgwYTRlYTE3IHB5M2sKKzcwODM0IDM3NTI4NzMyN2NlOWVmYzcwMzMxM2EwNmVlY2M5ZjQ3MDEwNTUxNDggcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDgzNSBkMTg2ZDM1M2NjODE3MGZhZTFhZTcwMjM2MTVkY2I5NTM2NWRkYjczIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA4MzYgYjk4NTIzYmUwYTE1NzA5ZmFiOTMxMDcwZjViYzBlZDY0MTY1ZWY0YiBsZWdhY3ktdHJ1bmsKKzcwODM3IDExZDZlNTM4YTI3OWI0YTI4Nzg0ZGE4ZWQyYWNkNWUwYWVjNjI1YmMgbGVnYWN5LXRydW5rCis3MDgzOCBhM2IyYTk3MDZmYzM2ZTIyYzE4NTQyYTE4MjBmZGI1YmNkYmZjMGUzIGxlZ2FjeS10cnVuaworNzA4MzkgNmE2ZGQ4YWIzZjIyODdlZDY3MDE5YjYyYmNiYTBmM2IxMjUyMDdlNSBweTNrCis3MDg0MCBhMzk4YTJmNzVkNDQ0ZmY1ZDEzNGRjYWEyYjY4ZjhlNDliMjlkNWRmIHB5M2sKKzcwODQxIDFkMWViMTQ5YjMyMzcxYjExMmVjYzhkMmQyOTdkZWMzNGUwNWI0MDQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDg0MiA3MDcyOWU3MzUzZGIwMzU0ODRmMWZlOWQ1YjUwN2RjODI3NWU2MjVjIGxlZ2FjeS10cnVuaworNzA4NDMgMmQ4MGMyNzk3NTAxMmRmMjk5MGJkYmYxNzlhNTA2ZWJiNjU3ZGYyOSBweTNrCis3MDg0NCBkYjUwMTg3YjRjMGNiOTE1YjZlNTNmYjA0MzBmNWFiMDY2NjY0YTZmIGxlZ2FjeS10cnVuaworNzA4NDUgNjI1OWY4MGRjMjRkNjA4NDRiNjcyYTk4ZTVkMTIwOGU2YzAyZTQ5NiBweTNrCis3MDg0NiA4NDAwMzJkOWVmZDYyY2FiN2Y4ZjI1NTlhNTdlYzk0Mjk4MjdmNmI1IHB5M2sKKzcwODQ5IDg3MTcxMjgzZDAyZjhkZGYzMTY3NDRmMGRlOTNlMjdlNWY4NjE5ZDAgbGVnYWN5LXRydW5rCis3MDg1MCA2ZGRiZGZkYjdhODZkOWFkODBlOGZlNWY4NTg5MDE4MDc4MWE1NTUxIHJlbGVhc2UyNi1tYWludAorNzA4NTEgZDQ5NWExMWM3NmU5ODg1ZWFiNGQ4YjM4NzYxN2M1OWUxNDNlZTAyNyBsZWdhY3ktdHJ1bmsKKzcwODUyIDc2NjNjNDljOWJmNmRjYzdhZjM5OTc5ODM4ZTM5MTRiYmEwYmQ0NmIgbGVnYWN5LXRydW5rCis3MDg1MyAwOGM4NmY0NWFjOTE1NWM1Y2VkNzdlY2NlN2E2NjkwMzM0ZWNiNjMxIHB5M2sKKzcwODU0IGZlYTc0ZDliMmE1ZjMyNjE3Zjk5MDcyYTA3NDUxNTJjZDIwOGY2YzQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDg1NSA2MTU0OGIzZTRjYTgzZWYxN2M4M2JhMmEyM2E4Y2Y0ZDU0YTAxYjQwIGxlZ2FjeS10cnVuaworNzA4NTYgNzY0MWEzZjBiMmVjMzVlY2I4NzBiYmRhNjVkZWYyMmQ5ZjgzMjk1YyBsZWdhY3ktdHJ1bmsKKzcwODU3IGU1ZDhmMGMwZDYzNDA2MTMyNWQxNTRhYWY4ZTE3ZWYwZjJkM2M5ZWEgbGVnYWN5LXRydW5rCis3MDg1OCBhMDIwZTY5ODM4YmE3MmFlODg1NzEzZDMyYzA1MjczNjRhNTQzYjVhIGxlZ2FjeS10cnVuaworNzA4NTkgZDAyNzU1NzRjN2NmZTNhZTdkZGY5NTRiYzQzZDBkZmNhY2E3Yjc5YiByZWxlYXNlMjYtbWFpbnQKKzcwODYwIDNkNTk4MTc1MDY4Y2JiMmM4YTQwM2ViMDRhNjE2MzY3NjgzYjA2Y2MgcHkzaworNzA4NjEgZWYyODE2YzU2YWMyZWU2NzI5MTEyZmQ5YjVkNzc1MWJkYmM5NTc5NyBweTNrCis3MDg2MiA4ZjUxZGQwOWYzZjIzYzdmYWRlOThkMjZkZDJkOWFhNjlkYjAwYzk1IHB5M2sKKzcwODYzIDE1MTZmYTIyM2ZjMTRiNDI5MmYwNjFkODI0ODRmYjdlNTllYjE2NTYgcHkzaworNzA4NjQgNTEwZWQwNTdiOTVmYTg2YzYwNWY0OGE4NThiNjZhZjgzNTE4OWRmMiBsZWdhY3ktdHJ1bmsKKzcwODY1IDU0NmM1MDIxZjAyNzhlMzMwZGQ1NjNjNDg2ZTVlYTczYjEwYjIwOTYgcHkzaworNzA4NjYgZTE2MDdmNmQ5YmU4NzU3OThhMjU3YTAyYWQxNDEzYWM0NTA0MDZkYSBsZWdhY3ktdHJ1bmsKKzcwODY3IGU3MGE2YzQ2YjNhYjQwZjMzYmVlMzllYTcwOGJlNjJhMGM2ZWNkN2IgbGVnYWN5LXRydW5rCis3MDg2OCBmNGI5MDAxNWVmMDA5OTIyNjhhNjllNGM5YzE0NmIxZjBiYzM4ZWI1IGxlZ2FjeS10cnVuaworNzA4NjkgZDNlMzFiZDU0MzBhYjY5YWFlZDY1NDM4NmMxZDQxZWY0ZDU0YmU0NyBsZWdhY3ktdHJ1bmsKKzcwODcwIDAyZGIyZDM0MDEzMzRiMzVjZWI5NzI0OGMxYzFkYmFjZmExOTc4ZmMgbGVnYWN5LXRydW5rCis3MDg3MSA1M2MxYjVmNjY5NjUyZmZkMTUyODBkOTVmMDIyZjcwY2EwMGI3MjE2IGxlZ2FjeS10cnVuaworNzA4NzIgZTZiM2U2OTZkYmNlOGQ0NGMzZjU4ZjkxYTkyNTViYmI0MjEwMTY4NyBsZWdhY3ktdHJ1bmsKKzcwODczIDYwOTZlYTgxZGUwYjdhOTM4ZjQyNjBhMjE5YWUwYjQyYjkxOThlNjkgbGVnYWN5LXRydW5rCis3MDg3NCA2OGI3ZTgyMTdjN2U1MDQ2MTkzYTExZTc0NjUxZGU4NjUyYjhjMzU2IGxlZ2FjeS10cnVuaworNzA4NzUgNDViYTQ3NWQ0ZTk4YzcyNTY2NzBmMDFjNTdlNDZiOTNlZGQ3N2QzNyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcwODc2IGIyYWRiN2ViZGI1NGYyNzkwYjBkMDcyNDE0YjE4NmM5ODkzMjAxMjggbGVnYWN5LXRydW5rCis3MDg3NyAxMTI2NjlkZmYwNGFiYWYzNTFmMjUyMjViMGYyYzUxNzYzZjA0MTlmIGxlZ2FjeS10cnVuaworNzA4NzggYWI5YjdkNWRiOTM1OGZiM2RkYjdhNmRmYjJhNmQ0ZDBhY2YzNTU4MiBsZWdhY3ktdHJ1bmsKKzcwODc5IDNhZWE3NWEzNDMzNzNmZDk2OTAyZWU3NjczNGFlMzI2ZGUwZTYzNDggbGVnYWN5LXRydW5rCis3MDg4MCAwYzE3ZjdiZWUyYTA2OTBkZTY1ZDg5ZDk5NDllYTVhY2RhYzYyYjJiIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzA4ODEgZDljOGQxYTVkZGVlMjM1NTg5NTc1OWU3MjEyYTBlYjE3NWUzZGQ4MCByZWxlYXNlMjYtbWFpbnQKKzcwODgyIDlmOGQ2ZGU4OTAzNTIxYWI2OTJkMTRmYWQwNDEwYjU3ZGRkZjMxOGUgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MDg4MyBiNWFhOGFhNzhjMGYxYzExNDMwNjQ3MDY0MjhjMWJlYjUwZDVkNTlkIGxlZ2FjeS10cnVuaworNzA4ODQgYTUzMDFlZGFhNzA0Y2IzMGNiNjYyMzY2ZDZiZTM3NWVhZDA5YTg4NyBweTNrCis3MDg4NSAxZDdhNzcyYjNiMTgzN2JlOTBiZDA3M2QxMTFiYzIwMTNjOGYwNmQ1IGxlZ2FjeS10cnVuaworNzA4ODYgMmI5YzkxNjY4Nzc3NGY2YTMzZTc2ZWIyZWFmY2MxMTY1ZmNhOTUxOSBsZWdhY3ktdHJ1bmsKKzcwODg3IDA5YjcwZDU4ODhiZmI0YTIxNTBlMzZjOGJlNGRlOTA1NDVhZTExZmYgcmVsZWFzZTMwLW1haW50Cis3MDg4OCBlZmFhNjdiYjNmMDZmYThlNDE2YTYzY2Y1NTc3YjI5YTgzYzI3MGIzIGxlZ2FjeS10cnVuaworNzA4ODkgY2IwOTY5MDcxZjJhZDk0YzlmNTg0N2M3MDA5MDdjYWZmMjc1NmQ3MCBsZWdhY3ktdHJ1bmsKKzcwODkwIDk2MDllZDdkZWFmODkwNTMwNzE4YTBlYTdhYmRjMDE2ZmI2NzExZmUgbGVnYWN5LXRydW5rCis3MDg5MSAwN2M1YzBkOWU3MDAwYWNkMWZlNDE5ODg0Y2JlMjQxYzZhM2RhMzcyIGxlZ2FjeS10cnVuaworNzA4OTIgMjFiMjdlMTE1ZGQyNTAwYjYzNmM0YzhjZTQyNjIxYzk1YjZkN2Y4OSBsZWdhY3ktdHJ1bmsKKzcwODkzIGZiZDQwNTQ4MTMwZGU3Y2I2MGMyNjIwMjkzZTFhMWY5MWU0YjA3ZDQgbGVnYWN5LXRydW5rCis3MDg5NCA1NzQ0NDY4ZTYwOWJkYmY1OGRmMTY2NjJmMTRiOTQ2MDYyMzBkMmI2IGxlZ2FjeS10cnVuaworNzA4OTUgODBmZjg1ZDg3ZjY3NWJkY2E2Y2I4OTVlMzExMjE2YTUxMjU4OTFjZSByZWxlYXNlMjYtbWFpbnQKKzcwODk2IGY2ZDljMjA4OTE3MDc0MTcyMmFjYzliMzY3ZTkzNzFjYzRlMjc0YmMgbGVnYWN5LXRydW5rCis3MDg5NyA1ODdmY2ZiZTA4YjYzODk4N2E5YTBmYWY4ZTQwNzA5ZjFkMDAzNTJjIGxlZ2FjeS10cnVuaworNzA4OTggNjY0MDk5NmYwNGU3NDcxYmY0ZDY3ZjhlOWM3ZjJkYjA2Y2Q1ZTFkMyBweTNrCis3MDg5OSAzYmY5YWU0Mzc2MDZjNGEyYzZiMzJjYTZlOTkzZjM3MDQ3ZWViNjYzIHJlbGVhc2UzMC1tYWludAorNzA5MDAgMjFiYTBiM2ZlODE5ZmQ2YzM3ZTc4MjEyNjk4MGE0NDNjOGUzM2EwYSByZWxlYXNlMjYtbWFpbnQKKzcwOTAxIDBkMDgzZmIwNjY1ZGY5N2IwMzIxMWM0NDhhNjk5NmI5NDdkYTE1ZmEgbGVnYWN5LXRydW5rCis3MDkwMiBmYTkyNDNiZjUyNTY4NjYyMmIzZDYyOTYxMjFiZWJiZjFjNTAyY2IyIGxlZ2FjeS10cnVuaworNzA5MDMgZTUyODZiZTI0ZWQ1MTA2YWNjODRhMzVmNjZlZDY5ZTY0ZDg4MDZkZCBsZWdhY3ktdHJ1bmsKKzcwOTA0IDdkZjI0NDExMGRkNWZhMTc5NWU4YjNhYTY4N2ExMmQ3YTI1NWNmY2YgbGVnYWN5LXRydW5rCis3MDkwNSBiNjU3OTc4ZDU2YWQ2ZTIxM2M3OGM0NzM4NGM5OWVjNDFlMDJmZDFkIGxlZ2FjeS10cnVuaworNzA5MDYgNWYzZmUxZjI2YjM2ZDA5ZDhmMGQzODM2MWY3NmNlODk2ZDI0NDRkMyBsZWdhY3ktdHJ1bmsKKzcwOTA3IDE4MzliODU1M2EyZGJkY2FlOWVhZWI4MDljMTRlMDhlOWE1MDZhYzIgbGVnYWN5LXRydW5rCis3MDkwOCA1Y2Y3NDEzN2MwZjg2MDhjZGE5ODg0YjMxNDI0OTkwYWIwMjc0NTQ0IGxlZ2FjeS10cnVuaworNzA5MDkgZTI4MThiOWY5NjRiZTgyYThlNjU3NjZlY2UzNTgwZTM1NzA0NWE2ZiByZWxlYXNlMjYtbWFpbnQKKzcwOTEwIDU4NTZmYWUwMDllODZkNTYzY2EzNTEwYmY0NWFlZTYxZTk0MjEwZTQgbGVnYWN5LXRydW5rCis3MDkxMSAxZTA1MzQzMTlhM2VlN2U2NzUxNGY0ZGI4ZDc1Mzg1MGMwMWM3NzhhIHJlbGVhc2UyNi1tYWludAorNzA5MTIgOWI5NmJkMDkwOTA4YTY3OTM4YjE3NTdhYjJlZjU5YWVhYmUzNGVmYiBsZWdhY3ktdHJ1bmsKKzcwOTEzIDExMTM1MjExMmFmYThlZjJiOGI4MjJjYTc2M2MxYzYwMDg4YzZmY2IgcHkzaworNzA5MTQgZjdiMTFiZjAxYTEyNjRkMjIyMzY3MjE4OWJiZGE1MWI2OTMwMmZlMSBweTNrCis3MDkxNSA2OTY0NmY5Y2Q3MGI1MTE4NWY3NTJmNzNjYTVjYmFkODRmZWU2Mjk4IGxlZ2FjeS10cnVuaworNzA5MTYgZmEzYjJlZDIwZDg1NzI4ZjIzY2QwNzFjYzFjMmJmODlmN2ZlZGM2ZSByZWxlYXNlMzAtbWFpbnQKKzcwOTE3IDkxNGE1ZGVkMWJlM2M5ZjZmNjBlZmI2ODdlZmIwY2MwNWVmZWJkMjcgcHkzaworNzA5MTggZmZhMTNhZmYyOWRiMWRjMDA3NjNkOGM2MDI3ODlhNGQyOTI1ZjlkYSBsZWdhY3ktdHJ1bmsKKzcwOTE5IDg4NDNhODQyN2E4YzgyYWYxMTg2OWI3NWVhNWY3Y2Y4MTYwMDM3NDkgcmVsZWFzZTMwLW1haW50Cis3MDkyMCA4MmFkZWRmZDIzMjRmNGIzOTBkOTUzYjJlOTc0NGY5YThmNGVmZGQ1IGxlZ2FjeS10cnVuaworNzA5MjEgZjc1OGRkMmE4OTY4OWJjMjAwNjRhY2JhNjc3YzNhMDYwYTNkMDFlMyBweTNrCis3MDkyMiA5ODFhOWIzZDk3ZjNhZmUyZDcyYWY2ODlhOTBhNjNlZTZjNWM3ZTI5IGxlZ2FjeS10cnVuaworNzA5MjMgZDNmNWE5ZjA0MWQ4NDBjZmYxNDgxNGQ1ZTUyMWUzYzk1OWQ1YzFkNyByZWxlYXNlMjYtbWFpbnQKKzcwOTI0IDMwZDg3NGIxYzRhNzIzNDNlZjY0NzhlYmExMTZmYzE0ZDA5MjQ4ZDMgcHkzaworNzA5MjUgMDAyZmE5MjA1YWFlMWFiZDg0MzVkMTNmMmE0NzNmYjdhODI4MjExOSBweTNrCis3MDkyNiA3YTc3ZTRiZWFlNjY1ZDgwNzMzYmJhNzIzZGRlNTViODVhN2FiYTQyIHJlbGVhc2UzMC1tYWludAorNzA5MjcgNzY1NTE0MmY1MjI0MTRhYjkyOWU5MWQzOWMyNTA2ZGZkODE1ZDc0YyBsZWdhY3ktdHJ1bmsKKzcwOTI4IGI0MDI2YWM3ODExNDY1MzU3NTJhYThmNzk3M2M0MGIxNDdkOWEyNmEgcHkzaworNzA5MjkgZjg0MzQwODg2OTM2Y2IyZTg1Y2NmOWY0ZmU2YjJkNWE4ODBlZWU3MCBweTNrCis3MDkzMCA1NzA0NGEzNjUyZDhiNDJlMDgyZWE5YTBiZjUxNDMwZWEyNTljMmFlIGxlZ2FjeS10cnVuaworNzA5MzEgMTg0Y2E2MjkzMjE4Zjk2ZjQyYTY3MjkxNDk2NzAzMTRiYTAxOGE5MiBsZWdhY3ktdHJ1bmsKKzcwOTMyIDA0ZDQxODhmYjQxMTYwNWU5NWJhNDBlZmVhMTFjY2Q4NDU0ZGQ2MzUgcHkzaworNzA5MzMgMWFjMTE5M2E2MWQyZjVmN2QyODRhZTljMDA5OTgxYzQ4M2Q3NTA2ZSBsZWdhY3ktdHJ1bmsKKzcwOTM0IGU1NTVmZDhjNGI2ZWU3OWVmMDM0MmExNjY1NTU3Y2UwNDM3YmQ0Y2IgbGVnYWN5LXRydW5rCis3MDkzNSBkODUwOTBhNDgwYmE0YWIwYmE0YWZhNDVjYzVkZmJiYzNlMGM3YmRlIHB5M2sKKzcwOTM2IDUxM2Q5NmJmMGQ3MDM1MjZkMjFjNTI2MWI0ZjI0MjAwNTVhYzI2MjMgbGVnYWN5LXRydW5rCis3MDkzNyAxYmE2NWE5MWU1NmJlOWNiZmIxNjRmNDZjNzM5MzFmYTdjZDhkMzFiIHB5M2sKKzcwOTM4IDc5YTQyMDYxNzY0MTNjZGFmOGRjMWEzMWYyNTVmZjdjZmZjOWJkYzMgcHkzaworNzA5MzkgY2MyYzcxMzNkYTRmNWY0NzYyYjgyYjU2NWFiMzhiZDdjMjg2ZmQ0NCBsZWdhY3ktdHJ1bmsKKzcwOTQwIDc2MjM1NTgwYWEzZDQ3YzA0NGI3YzljMjNmZTdmNDc1ODM4NzQ4ZTEgbGVnYWN5LXRydW5rCis3MDk0MSBmZmE4MWJkMmVjNzJkNjdkYzYzMTM5NTU3ZDVjYzU5MDU3M2NjODA2IHB5M2sKKzcwOTQyIGFjZmMxOGNkY2RmYjc3MmJlNDZmZDdjNzY3YWVjNzJiODk0MmE0ZmUgcHkzaworNzA5NDMgMDgyYjI1MGQ1ZWU1MGZkYjkxNGU5OTE5NGQ3MTdkMzFiMGU5OTUxZSBweTNrCis3MDk0NCBmYTdjMzc2NWQxMGZmNGMzZWZjYTkxYWIyMWY3YjhkMGEwZmU5NDVhIGxlZ2FjeS10cnVuaworNzA5NDUgMDUzMGFhZGZmNjk2ZDFiNjZjNjY3Y2JkMTliMTBkMmNjMjU5MGVjNSBweTNrCis3MDk0OCA3MzQ3ZDkxNmYxM2FlNGNlMTkyMzQ2NDFjZjFjYzRkNTMzZDUxNDJiIHB5M2sKKzcwOTUwIGRhNzQ0OGViY2U4YjExODY1Nzc4MjhiMjE0NTlmYWNmNDRlNTlhMjUgcmVsZWFzZTI2LW1haW50Cis3MDk1MSBkYzUzZjM3MGNhOWQ3NDc1M2E5NTAwNTU3ZThkYzNiZTAyZjVlYmM1IGxlZ2FjeS10cnVuaworNzA5NTIgMTkxOTBlMDU4ZDU5NDMwNWYwOTE0NDBkY2Y0N2IxM2U1OWMxZmRlNiBweTNrCis3MDk1MyA5N2ZkMGQ3NmFlOWNlN2IxZjU0ZWJjOGVjNDg2Zjc3NjdlOGMyNTEzIGxlZ2FjeS10cnVuaworNzA5NTQgMDI3YTNhZGMwZDhmNTYyMDAwZjI0NmEwNzRiY2MxOGQ2YzEzOGIzZSBsZWdhY3ktdHJ1bmsKKzcwOTU1IGFiZjZkYWQ3ZDY0ZmUyODM4NTI3YTBmNDYyOGY4NzRmZTllODI3YWQgcHkzaworNzA5NTYgNzZkNjFjMTI2MjNjZjkxZTc4NTVkNmMwN2FjY2UxY2QxYzI3ODMwNyBsZWdhY3ktdHJ1bmsKKzcwOTU3IDQ2ZjFjZTc2MTk5ZWI0NTE5OWZkZTEzNDg5MTI2NTAyNWNhY2I3NjIgcHkzaworNzA5NTggZGY1Y2IzODM2YjI4MmFlYjJlMmFlMzYxMTFkYmY4ZTRjZGU5ZGI3MyBsZWdhY3ktdHJ1bmsKKzcwOTU5IGNlMGUyOGRjY2JjMjI4YWJiOWU4YTE3NDYyNjA2ZjNhNzdiZTYyMTcgcHkzaworNzA5NjAgOGI1MWQ5NjM2MGIwM2M1YzY1MjFiNTBiZTBkYzljYTQ5NGE3ZDVhOCBsZWdhY3ktdHJ1bmsKKzcwOTYxIGMzZjA3YjY3N2FmYTY3NDkzNmQxZWEzNDhhNjkxMTFiMWMwNmRkMTggcmVsZWFzZTI2LW1haW50Cis3MDk2MiBlOWZjNTIyYWFlOWE3MzljNTM3MzFjMjJiYjliZGRkM2UwM2JiM2ZiIGxlZ2FjeS10cnVuaworNzA5NjMgMzQ1NjY3MWE3MmJjMTY2YjUxMTgyMzNlNzAwNjQxNmU4YTBhOTNjMCBsZWdhY3ktdHJ1bmsKKzcwOTY0IDE4YmQzY2Y1Mjg3ZmYwMDg5ZGRjNzZhOThjZDQyODU3YTJlMDU0ODEgbGVnYWN5LXRydW5rCis3MDk2NSBiNWQyM2ZhOWI4YTQ4NDdmMjM5YjdhYjQ5Y2UxNjM0OWU3NDEwN2ZhIGxlZ2FjeS10cnVuaworNzA5NjYgMjg3ZGYzYTA5ZjM1MzBlMzU1YjdjNmU3MmQ1NDUxM2FkN2Q3ZGUzMSBweTNrCis3MDk2OCBlOGVmMTNjOTg1OTcwOWM1ZDViNjMyNzNiZTgyNjljM2EwZDdjM2ExIGxlZ2FjeS10cnVuaworNzA5NjkgMmU0ZGJiMzk1NDE3Y2I2ZDQwM2Q0NWViN2VlNDgwNDJmYTdiMWI3MyBsZWdhY3ktdHJ1bmsKKzcwOTcwIGMzMzdmMjAyOGQ4Yzc3ZTA3NmVlNzBmNTI1OWE0MWEwM2VjYzQ0NWEgcmVsZWFzZTI2LW1haW50Cis3MDk3MSAxNmMxNDQyNjIzNzQ2MjIyYjAzMGZhOGJhMDZhZGNkNmEzYjZlMWQ0IHJlbGVhc2UyNi1tYWludAorNzA5NzMgY2UzYjVjYWY0NTIyYzhhMTk4MDJhZjFlMWRmNTE2YmU3OGQ2ODliMCByZWxlYXNlMzAtbWFpbnQKKzcwOTc0IDhkZmY0MDY0MDNiZTJmZjdlNDBiYzYyY2U3Y2IyZTU1NmQ3NDVmMTIgcHkzaworNzA5NzUgYjgxNGIwYzM1MzQ3MWNmYjRiNzQ3MjA4MzJhNDVmZTU2YWYzMGI5YyBsZWdhY3ktdHJ1bmsKKzcwOTc2IDJkOTVjMDE0MTIxNGY4NGU0ODViMDJjOGVjZmM0ZWY5YTZmNzkwYjAgcHkzaworNzA5NzggY2VmOGI4MjU5YWM5OGViOTc5ZmYwY2JhMjE2MTU2NGNkNDkxMDE2NiBweTNrCis3MDk3OSA3ZTJiYmI0ZGJmODc1OWUxNTQxZDc1YzNiNDAzODhhODI1MTM4MzYzIGxlZ2FjeS10cnVuaworNzA5ODAgYTczMzczY2NjY2MyMWUwZGYyNTNhZWVkYzM1NDEzZDI4NzM1OWQxYiBsZWdhY3ktdHJ1bmsKKzcwOTgxIDQyZGE3MTU0YjI3MGJiZDk3OTI5YjMxZGFhOTc0Mzc0ZGQzYjdlMGQgbGVnYWN5LXRydW5rCis3MDk4MiA2NzU0MTVjNWI5MTI1NzkzOGRhZTBlZTJjYWM2OWM3OGIzYTRhMjBmIHB5M2sKKzcwOTgzIDZiNmFjNmFjNTU2NmE4NDU3NGM1ODI3NjM1MGQ5MmM1YWRmMWI0NzYgcHkzaworNzA5ODQgZDdmNDc4YzY4MWI5ZTMwNWU4ZmZhMzI4ZGY2OGE4NGQ2YWMwYzA5NCBweTNrCis3MDk4NSBmOGFhOGQzZDY2MDc4ZTliYTAwMGI5M2EzYWViYmE4OTc1OTM3ZjNmIHJlbGVhc2UyNi1tYWludAorNzA5ODYgZTllODdkMWEzODljNTNkMGJiNzUxOGFjOTc0MjM3YzhhMDlkZjBkZSBsZWdhY3ktdHJ1bmsKKzcwOTg3IGYxNWU3YTkzMTMzNGQ1MDBlNTdjZDUzNDgyZDFlMDFiMTA1NzAyZjcgcHkzaworNzA5ODggYWZmY2YwNzA1NDM5YTViNmQ2YmJiMzI0OTc5ZmE3NzYzOGFmYmNhMSBweTNrCis3MDk4OSBmOTQyODkzZmE0ZDhkOTJiNjRiNmUxZmE4NzY3MTU2YzQ0YjNkMzllIHJlbGVhc2UyNi1tYWludAorNzA5OTAgZGEyYzZkZDI2ZTg4ZGFkMDIyNDVjYWI2MjE3MDk0ZDk3NWVlNGQ0YiByZWxlYXNlMzAtbWFpbnQKKzcwOTkyIDllNTc5YmFiNzZmMWM1NzJhNTIwNjFhYWU3MGUyMDQ2YTc1MmNkYTIgbGVnYWN5LXRydW5rCis3MDk5MyA1MTAyYmJmNGFiNzQ5NWM1OTE4YjI3M2YxY2ZhMDFkYTRiNjZlYmYwIGxlZ2FjeS10cnVuaworNzA5OTQgOTg1NmI1YmUyNmM0Y2FiZDkxYzNhMTdlZmUzZWJjMjgwYzBhNjc1NCBsZWdhY3ktdHJ1bmsKKzcwOTk1IDNiMzRjOTM3NDk1NTJiMDMyMzMxMGY1ZTFkYTNhNzc1ZjRlOWFlMmEgbGVnYWN5LXRydW5rCis3MDk5NiA5ZWQ5ZDIwNDEzMDY2NTQ0MWM4ZmVlM2E3ZjRlMGFhYTBhNDAyNTk1IHB5M2sKKzcwOTk3IDgzZjllM2QxMGVkYzQ4OGZjNzhlMTFlZDYxMjIzNWVmODFlOWU3N2MgbGVnYWN5LXRydW5rCis3MDk5OCBlM2ExOTY5ZmRiZTVlMGFmZTk5MGJhODQxNDBhYzRmNjRhMzcwMzg2IGxlZ2FjeS10cnVuaworNzEwMDAgMWUxZGFkYmJkZDAxYjk3OTM5MjQ2MzdjNGQyYmIzOGZhOTY5ZTUzYSBweTNrCis3MTAwMSBjZjczZmI1Y2MzYWM5ZDgzYmVjZGE0Y2ZlMzliMmQzN2ViMmU3MzJkIGxlZ2FjeS10cnVuaworNzEwMDIgYjQzZjE0YzEwM2JiYzNhYWQxODMzMzM1ZDFhYWEyNzQ3NmM0YTFlMyBweTNrCis3MTAwNCAyZGZjMzM3MTc0OTM4Zjg1NWI1YjMwODU0NWMzNzYxZjNhY2E3NzFiIGxlZ2FjeS10cnVuaworNzEwMDUgNzU1YmIxZjliMGU1ODZmZmYxNDc1ODEwZjEzYWY3NTRmZDQ5ODc5NCBweTNrCis3MTAwNiAxYjhkNjhkYWU1NzIxMjU1MzMzOWQ1Zjk3OGUzZDRkMzhiZDkyYzQxIGxlZ2FjeS10cnVuaworNzEwMDcgZWI2MjIxN2JiYjUzNzM3YmU3NGM3MGFiNzMxM2IyM2MxOGQwYTdkNyBweTNrCis3MTAwOCA4NTAzYTNkMDI1NGQ4ZjY0NzBiZWEzNzIwNDBiZmZjODlkZTk4ZGVlIGxlZ2FjeS10cnVuaworNzEwMDkgZDM0M2U4MDJiMjc2MGFhNzAwY2YyZmY3ZjE3Y2FjMzZjZTU0MDQ3NyBsZWdhY3ktdHJ1bmsKKzcxMDEwIDA4MGZkZmM0M2Y5NDE4Njg2NDdkMzkyNzBkMDEwOTY1MGQ0YmJhNDggbGVnYWN5LXRydW5rCis3MTAxMSAzNmYyNWJmYjNhMWJjY2RkNDQzZDcyOGYzMmE1NzU3ZmE3N2JmMGUyIGxlZ2FjeS10cnVuaworNzEwMTIgYzVhN2ViZWM1OTg0N2FmZDU2ZDQ2OWI0NjcyZmU0Njc1NDYzNWQ5ZSBweTNrCis3MTAxMyBhNzNkNzMyNjMxMWRkOGM5NTA3MTU2NmJhYTEzNTYwNTg4MDg0ZTAzIHB5M2sKKzcxMDE0IGYzOTA0NjQ2MzlmYmU4NTgwMTFiMGM2NjBiM2I2MDc1NDBkMTM5NjYgbGVnYWN5LXRydW5rCis3MTAxNSA0NzViYTQzY2NjYjFlNTIyZDNiOTU1NjhmMTQxNTkwNzM3YzliNGRmIHB5M2sKKzcxMDE2IGMwMTM4YjJkNGVlZGM5OTA1MDBiYmJmZTFjZmU0ZDU0ZGNhODUxZTggcHkzaworNzEwMTcgOTI2ZmQyMTdlMmRjYTEyNTMxMDRhMDE2ZTA1MTg5YjU5NmI0ZWI1OSBweTNrCis3MTAxOCAzM2ViMTY5N2MzODJkZTg1ODNhOWJlZmY2MTBkM2NiNTUxYjhhOWYxIHB5M2sKKzcxMDE5IDM1YzNlMWQ3Y2ZkZjYxNDcxNzMxMThjNDQwYWY1YjgyZGM2YTllMmMgbGVnYWN5LXRydW5rCis3MTAyMCBiYzE1YjQ4M2QzODQ2ZGEwZDllYTMwNmI3NGI3YmMxZDhkOGU4OTdkIHB5M2sKKzcxMDIxIGEwZTIxMWIwNGIyZTBjODRkMDI1NDZjMWQ1OTQ1MWNjMWYyZGE0YWEgcHkzaworNzEwMjIgMTA4NmQ3ZWU4YjBiM2ZlZmQ3MDc4ZTI1ZDM1ZjliYWEyMTRjOWQ3OCBsZWdhY3ktdHJ1bmsKKzcxMDIzIGI5ODQ0NTYxOTZhZjI2OWQxM2Y1YTk0N2UzODI4YjRmMDI4NzVmZjIgbGVnYWN5LXRydW5rCis3MTAyNCA3ZTg2ZmEyNTVmYzIyNWNkNzIwYjE2ZjhhYjYyZWQyNGIyMjAyYmMyIGxlZ2FjeS10cnVuaworNzEwMjUgOTA2OTBlYjg1MzgwYmQzYjhjMjEzMDRmODBiYzM2MjQ5MzU1ZGUyOSByZWxlYXNlMzAtbWFpbnQKKzcxMDI2IGY2MzRjNTQ1NWI0ZjNhYjUwNTFiMjYzZDU2MzIyZWMwZTMyZTIwOWEgbGVnYWN5LXRydW5rCis3MTAyNyAzZTFhODA1MjVmMThhMDExMWVhODE2NGM1NjNkNDU3MmFjMzc2Y2ZjIHB5M2sKKzcxMDI4IDk1MzU1M2FlOGI4NGZmMGVmOTgzZDhjMjBmYmQwMmFjODkxZThhNmMgcmVsZWFzZTI2LW1haW50Cis3MTAyOSBjMzM5NTkzOTI5NTNiMDFhZmU2MjE5MzNjYjk5YWYxZWUwNGY5ZDBkIGxlZ2FjeS10cnVuaworNzEwMzAgMzdmZmVhYzNhMWE2OGQ2ZmY1N2I3NmQwMzE1YWE4MGE3OGM3NjU5OCBweTNrCis3MTAzMSAxZWYzZGE2YzQzNGNmYjIyOTdiMmQyYWEyNzMwYTU5NjhkZmU3OTM4IGxlZ2FjeS10cnVuaworNzEwMzIgMWI1MGY3OGNkZGNiYjg3MWE0MzI4Mjk5M2I0M2U2YjMyYmZhNDlkYSBsZWdhY3ktdHJ1bmsKKzcxMDMzIGZkNWVlM2QwZjU1MjhmNjU2ZDY4NmE2OTY1MTQ4YWY4OWJlOTcyMmEgbGVnYWN5LXRydW5rCis3MTAzNCA1NGUwOTNiZDg4N2VhNzRkMzAzYTViNzEyNjU2Y2ViNmVlODdlNmQ0IHB5M2sKKzcxMDM2IDIzYTJlMTU4NGMwMmFmMmVmNGY5MjMzZTk3YjQ1Mzk3YTE1MjAwOGYgbGVnYWN5LXRydW5rCis3MTAzNyA4ZDg0ZjIyMGZmMjc3MDhlMDc1N2M5NWQ5ZTk1MjQwNDA3Nzc0ODM0IGxlZ2FjeS10cnVuaworNzEwMzggNWYxNzlmNmYwN2UwZmY4MzQ4NTQ4MDg3YWFhMWIwZmU1NTA1ZmY3NSBweTNrCis3MTAzOSBmY2JlMWFkMjRkNDEwZWQ3ZDgzMWRlNDhkZDliZjIwZGVjNWY4ZjI3IHJlbGVhc2UyNi1tYWludAorNzEwNDAgMGJjNjJkN2RiZjU0OTJmNDIwNGQ2NjJlNjBjMGQwYzY2YTRkNjI0NiByZWxlYXNlMzAtbWFpbnQKKzcxMDQxIDcxZjYxMjlkZGFkNDY2Zjk2M2RhOGMwZDQyOWUzMDg2MGFlMjZhNDIgbGVnYWN5LXRydW5rCis3MTA0MiA1MzkxNmFhY2NmMmNjMjNjODY1NzQ5MjAxYjJiMDkxMzY1YTg1Y2JlIHB5M2sKKzcxMDQzIDFhYmY5ZTMwYzE5ZjlmMjJlZTI4ZmUyMWViNTM1YzUzYTRjMjNjNGUgbGVnYWN5LXRydW5rCis3MTA0NSBhY2RkMTFlMzlmMGIwMjI1NzQxYWUwMmZkMjQxYTRkOWI5ZDZmMDQ5IHB5M2sKKzcxMDQ2IGM1ODk0ODNhNzJhY2E1NTRjZGFlOWNmMjU0OTljYzIwMmI0ZTUwY2QgbGVnYWN5LXRydW5rCis3MTA0NyAzNTgwZDNjMDcyYWU1MDMyYjEzYWRhMzg0ZTY5YTlkYmFmZjM1MjMwIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEwNDggYTMzYmM4MTgzZTRjMTc2ODI2OWI1NGEyNWU1ZTY2MzkxNDk2Y2YyOSByZWxlYXNlMjYtbWFpbnQKKzcxMDQ5IDJlMjIzODY4ODMyYTgxZmZmOWY3M2IwZDMxZTQzZTFlODBlMjZlN2YgcmVsZWFzZTI2LW1haW50Cis3MTA1MyA3NTlmNDNjOTc4ODc4YWY5MTUwNzU2Yjg2ZTI0ZDNhYWIzZjg4Yjg4IHB5M2sKKzcxMDU0IDk0ODlhOWU3YWZkNDM4MzI2NDRiNjUxMTQwNTY4YWIwMzYzNjA2M2IgcHkzaworNzEwNTYgYzgwMWE2N2NlMjkyZTZjYmI4NGI4Njg4YThhY2U2YTlkZGQyYzMzZCBsZWdhY3ktdHJ1bmsKKzcxMDU3IGY4MTQyNDk3MmFkMTE4NzdjZDEyYzc0NzE1MGQ1Mzc4MmRkZTgzY2EgcHkzaworNzEwNTggNTRiMmNkMjFhYjQ2Y2U0ZWRiMWI2NzlhNTJmYmFmMmIzMzRmYmI0MyBsZWdhY3ktdHJ1bmsKKzcxMDU5IDdmYTBmODFkNjA3ZTcxYWU2ZmYyYjk5MGY4MDJlNmQ3YTM1Y2ZmMGYgbGVnYWN5LXRydW5rCis3MTA2MCBjZGQ1NDcxNDc1NjY3ZmMwOTg1Y2UzNTI5YzEwYzU4YTc0Y2EwYTYzIHJlbGVhc2UyNi1tYWludAorNzEwNjEgZDFjNTM2N2Q1N2Q2NTU2MThjMDEwMWUyY2RlZDUwZTliMzJjNTdiNCBweTNrCis3MTA2MiBlMDJjNWI0ZTRlOTJlZGM5MGEwMzYxZjkyODQwYjQxYmUyNjYzMWE2IHJlbGVhc2UzMC1tYWludAorNzEwNjMgOThjMzQ0OWRhMzY5M2JkMmZiZTIyY2JhZGVjYWVhOWE0YTcyOTZhNyBweTNrCis3MTA2NCAxYjQ4MzkxMWIyZTY2OGUwNDBjMzM0MTRjZjljMTNlODRhMzJhOWEzIHB5M2sKKzcxMDY1IGJlZDUyNGVjMDg1MGNlYjZkNDc3ZmM4MWIyN2Y3MTIzN2JmMThkYzggcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTA2NiA2NjQ2NGRiMzgyYjE0ZDViYzA0NmQxMGY4ZTM0N2Q0NGU3ZjcyZmExIHB5M2sKKzcxMDY3IDliNTM1Y2U5OWQyZGFhN2JkMjFhM2E5YjUzMDEyZGI0ZDMxMTdjOGQgcHkzaworNzEwNjggZDI4ZWEyZWU3MDcwZDM2MDUwNTA1ODAxMzE4Yzk5OWQ4ZWMxOTEyYiByZWxlYXNlMzAtbWFpbnQKKzcxMDY5IDY3MmZkN2E0MWQzNWYyYmQ4YThmMWExODJiYmVjOGUwNmI0M2ZhMTAgcmVsZWFzZTMwLW1haW50Cis3MTA3MCA3NWVmZDc1NzQzNGI4NWY4NWM1ZTdmMjI1ZmUwY2YxYWMzN2FiZjYzIGxlZ2FjeS10cnVuaworNzEwNzEgYjNkNWY2ODVkMjdhY2NhNWVhNjY5ODQyMjk5MjE3Njc5YTQ2MDYxMSBweTNrCis3MTA3MiBjYmUxOTEzMGIyZWI2MzExMzY2NmU4N2I2NTQ2NTU5ZTE0MzgxZGU1IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEwNzMgMjBlN2FhNDJkNmZlNGQ5ODE3M2MxOTczNWMyMjU0OTlhZDZjZDViMiBsZWdhY3ktdHJ1bmsKKzcxMDc0IGYxM2VlOGFjNmQ1NDUyNzc1MWQyODFiMzk4YTFiNTk4NWRjNDE3ZTggcHkzaworNzEwNzUgZjNjNGZmMjE0YjExZWM2ZjEyMzljZmI2ZDAxNTU0MGJjMDlkZjhjYyBsZWdhY3ktdHJ1bmsKKzcxMDc2IDVjMzdhYjA3YTdkYzM0MTk4ODI2ZWNmZjM1YTc0YWU5Mzg0MGRmMjMgcHkzaworNzEwNzcgOWJlMmUxNmE3MWRmNWI2NTU4NDM0NGZiMTFhMTJjNWMxODY4ZGQyNSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMDc4IDM5YmU5YWM4OWJlOThmZmNjMjlmOGUyYmViYzFkNGE1MTU0ZDZjZTYgbGVnYWN5LXRydW5rCis3MTA3OSBmNjIwMmIzZWY4ZWE5OGU0ZTBiZTJiYmFmZWJmMTQzZDgzOTA0ZDVkIHB5M2sKKzcxMDgwIDE4M2Q2MDcyZTFlNWRmOTNmOGNmZjM5MGIxZjg0N2IzZDY5YTA4YTYgcmVsZWFzZTI2LW1haW50Cis3MTA4MSAxYmY2NzEyMTdhYmYzY2Y3OWY3ZWViYTJjMTYyYmU0ZWM1OGM4MzY1IHJlbGVhc2UzMC1tYWludAorNzEwODIgZGNiMzY4ZmI2YWRiZmFlNWFlOGM5YzMzMThhMjZkZTVlNWNmMjliZCBsZWdhY3ktdHJ1bmsKKzcxMDgzIDk4Njg2ZjMwN2RlNDI2YzYwOWZjZGUwZDkxOGYzMzMxNTJkYjM2ZDIgcmVsZWFzZTI2LW1haW50Cis3MTA4NCBjYmZiZmYyMzNlZjVjMTdjZjZkZWE5ZTQ4YjE0YmRjYzY5ZjQ1NTgwIHB5M2sKKzcxMDg1IDJhMjdmOWFkYThlMzNlNDc5NDgxMWYxYzcyNzQzOTY2YTI4MjQwODggcmVsZWFzZTI2LW1haW50Cis3MTA4NiBjYWMyMDljZjVlNGNjNzM5MDIzMzllODcwMzE3YzU5Zjk1NTgyMDk1IHJlbGVhc2UzMC1tYWludAorNzEwODcgYWU0ODJlNTJhMTZiYzA4OWU5MTVlZWMwYjBiMzE5NGQ1ZmIzYzRjZiBweTNrCis3MTA4OCA0ZTVmZThiNmQxMDFjOGYzNjFkNjRiNzAxOGQxNWQ2ZDA3ZjcxZDFhIHB5M2sKKzcxMDg5IGI0MWMyOWRlYmRmNjlhNzkwOTI2Y2QyOTljMzA3NTYzZmE1MjMzZGQgcHkzaworNzEwOTAgNjk2NjJiYzNhOWY2YjZkMzIwODcxYmU5YzkwNmZmNjQzZTJiZjViOCBweTNrCis3MTA5MSA2NDNmNDRhZDM4N2ZiNDY0MzBiMDY1YWZhODY2NWU2OTYwZWUyNjAxIHB5M2sKKzcxMDkyIDhhMjZmOTYyMGIyMTE4ZDdiYjI0MmUwMGUxMDg3NTU3NzliZmM3YWIgcHkzaworNzEwOTMgNDc1N2RkYWE4OTdkZWM5M2YyZjVhM2QxYjg5OWRkMTdjMjA1NDEwZiBweTNrCis3MTA5NCA2ODk0MzQ0NTRjYjhlNTMxMjg4YzUyZTg4MzhhZTRkNGJlYWJlZTY1IGxlZ2FjeS10cnVuaworNzEwOTUgYTk4MDkxMDY2ZTAxYjIwNjM4ODE0N2ZjNWZjZTA2ZTQ1Y2I5YTAyZSBweTNrCis3MTA5NiAyODA5NmVkNzMxNTNlZDY5Njg3MGJhZGVjYjBkODI5ZTBkZDc0Yzg2IHB5M2sKKzcxMDk3IGMyZjllMTM1NDJhYjJhYzJmOTVkMGYwZGE2OWIzNTAxZmZiODdmMzMgcmVsZWFzZTMwLW1haW50Cis3MTEwMSAxNWM4ZTlkZDE5OTY3ZmQwMTExNzE3ZmNjYzY4ZmEyMjM1NWQzNzE3IGxlZ2FjeS10cnVuaworNzExMDIgNWY1NTg3ZjNjNGQ1NWFiYzIzZDFlZGM2YTJlNGY5ZDAyZWVhMGU5OSBsZWdhY3ktdHJ1bmsKKzcxMTAzIDQ0OTU0ZTZhMTM1MzIzYjQ0MDE3MDFmNGNhZjRhZGNhYTkyYTE1NDYgbGVnYWN5LXRydW5rCis3MTEwNCBmYWEzNDczZTQ1MzQ0ODRiYzIzZmRiZTAyMTYxOTkzOWIxN2NhNWE3IHJlbGVhc2UyNi1tYWludAorNzExMDUgYzNjNmI3Mzc0YmRhMmVkOGQ3MWNhOWNmMzMyYjg4NGU3OWRhZDViMiByZWxlYXNlMjYtbWFpbnQKKzcxMTA2IGQxOWQ4OTAxMzhmMWVjYjFmODQ5MmNmMzY5YzA1YTVhN2YxMzg3MjkgbGVnYWN5LXRydW5rCis3MTEwNyAyZGYxNTE3ZDg2OGM5YWYwNzBhODU1NTI5MmU4MjQ2NTUxOTBiYjY5IHB5M2sKKzcxMTA4IDdiZjYwZDdiMDllOWEyMDYyZDI1NTYwODc5YWRiNzViNWM4OGNiM2UgcHkzaworNzExMDkgYjRmMTU3ZjhlNGE3Yjk4YjUwMjk1ZGY1MGJmYjY5OWEyN2EwYmVlNCBweTNrCis3MTExMCAxZmRiNTY1OWVlMDg5NjgyYzFkZDVmZmQzODRjYjNkMmFhYzRjNjYyIHB5M2sKKzcxMTEyIDA1NWIzMDI3ZDU2OGI5NjM5NDEzMjE2YzcyNjYxODA0ZDdkYjZiMjQgcHkzaworNzExMTMgNmNmMTZlYThhMTZkZTZiNzM0N2UzZWI1ZDdiNjQxZGVlNWQzZjA4MCBweTNrCis3MTExNCBiNGRlZmRkN2Y0MzFiNTE2OWMwNjZkMzU5NzVkYjM1MGNlZDEzYWZlIHB5M2sKKzcxMTE1IGZhMmFhYzQzNGQwNjM2NTZjNzdlOWE1M2ExNjU3Mjk2MDc3MjBhZjkgcHkzaworNzExMTYgZmI3Yjc3MjdhNzMxYWM2MDlkODM0YmZkNDIyZjUxNTVmMmQ3YmEwYSBweTNrCis3MTExNyA1MTc0Y2NmYjAxYjgyMTM5NTI5NDg3YjA2YTA2ODQ5MDBkYzE5YzZlIHJlbGVhc2UzMC1tYWludAorNzExMTggNDkyNTE5NmEyZmQ4YmQ1MjJjMGQwOTViNDExZTU3ZTAzOTA2NWM0ZiBweTNrCis3MTExOSBmMTIxYmQ5NTZhZTA1MTA5ZjM1ZjdiZTMzYTM4ZmMyOTY2NmY2NWY5IGxlZ2FjeS10cnVuaworNzExMjAgOTA0MTllMWI0NjU2YjU4ZmJkNjljZDI0N2Y5NTgwNTdmZTBjY2EwNSByZWxlYXNlMzAtbWFpbnQKKzcxMTIxIDhiNTNiOTY5YjYyODFkODAxN2M0MDhkM2M2Mzk2MGVhYjE2ZDYwODIgcmVsZWFzZTI2LW1haW50Cis3MTEyMiA1NDdhMjM4YTJhYzQ5MjU4MWQzOTU3MDM2ZjMyM2RmZjk3OTkwYzI2IHB5M2sKKzcxMTIzIDE0NmE4ZmRkYmJhMjc3ODc3OTQwZjVhMzkzZDE4Njc2NmRkYWJjNDggbGVnYWN5LXRydW5rCis3MTEyNCBiMzg3Y2E3ZDBmZTYyY2ZlZGJhNTQ4YzM0Mzk1MThiMGVmNTc5YjIxIHJlbGVhc2UyNi1tYWludAorNzExMjUgYTFiZWIxNmNmMjM2OTRkOGUyZDBmNGMzZDBkZWY0OGNmN2YwMTI3YiBweTNrCis3MTEyNiBiYzA4NGE5NzMxOGI5MzM0MzcxZjNmY2M4ODg2OTU4ZTVhZTllMDZmIGxlZ2FjeS10cnVuaworNzExMjcgNWY2NmRlYWQxMTc1YTA4ZDg0YmNkY2M3NmFjNGMxM2Y3ZTlkMjU2MiBsZWdhY3ktdHJ1bmsKKzcxMTI4IGM0Y2FjYmM5YjNmZDI0NDIzZmU5YzY2OTk3M2I0YzIxOGU3NTljNDkgcHkzaworNzExMjkgYTgwZTJlYTM4OWUzMGIzZjA3NzMzMmIyYmM0ZDA3YmNkMWQ0ZTAxOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTMwIDU0NDdlMWY3ZGJmZjRjYjY4NjU5ZDBmOGUyOWYyMGE0MzRlNjc4OTEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTEzMSAyNDc0ZmE5YzM4NTU5MzIxNjJjYWYzMmY0M2UzZGYxZGMxNDFjMGUzIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExMzIgN2Q4N2U3YzA2YjU5ZDA0NDA5YWNhYTIwODdhZjllNDAyMWRhZGYwMSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTMzIDQ4YTAyZDVmNWQ0MjhkMmRiOWRiZTA4NWNmMWRhMTJmM2Y0NTE5NmQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTEzNCAyNGYxYTk4OTJkNDljYmU5NTkxN2U3NWMxNTQ5YTE3NTM1OTJlNzU4IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExMzUgNDIyMjQ4ZTZiNzNiOTBkM2Y3NWRiNjYzODRkMjlmMjllNzZiZTExYiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTM2IDgxNzViYzAzMTM0ZTMyYjhhYjAzZGY4NDc0NWY1ODlhNGVkMmFjNTEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTEzNyA2NjFiZDU1ODM2MzIxMGMxZGYzOGVkMGIwMzMxYWNhZmQ5MWU4ZGJkIHB5M2sKKzcxMTM4IGUyNTQyYTdkNGFjZmNmNzZmZDZkNWE5NDY0ZThkY2EwMzk0NTk2YmUgcHkzaworNzExMzkgYzllNDhlMDA4YmI1MzZhNDZhN2Y5NjQ2MTYwMGZmMjUwMTMyMjYyYyBweTNrCis3MTE0MCA2ODMwMGRhMTJkZmUwZGM4YmRhMTliMGRkYjA1NjZhZTdjZDlkMjkwIHB5M2sKKzcxMTQxIDk0MTUwMTc1MTk2OTEyZGE3ODE0ZGZhYTA2MTU0NmUwMTk1M2RlY2UgcHkzaworNzExNDIgNjAxOWZiMWRhOWUxMTM1MGI1YjhmNjhiNjVjNmViYzg3NGE5YTEwYyBweTNrCis3MTE0MyBjYThjZWJhNzM3MTQ3ZmNkZjMwYjAyNjU2NzVjOTllZTQzYTE0ZTFiIHB5M2sKKzcxMTQ0IGQ2MzhlY2RlMzU3MjU5NDRiZGU1NzkyMzk3YmI4MjE0ODkxZjY3NzggcHkzaworNzExNDUgNzRjZjIwYTYxYmVjYjY3MjYwYzNhMzlmYTBhZTM3ZWE1ZGMyMTBjNiByZWxlYXNlMjYtbWFpbnQKKzcxMTQ2IDcxNmFjY2Q0YjYwM2U5MjY0ODMzMGM2ZjljNDFlMDM0ZmYyYWU0ZWYgcHkzaworNzExNDcgOTNlOTI0MDljYjQ2OGU5NmQzOWU4OGM1YWJkYjUwMTliZjdhMWIwYiBweTNrCis3MTE0OCBkMzZhZmQwNThkOGJiNmNlNTBkNDI1N2ZjOGVmYjE3Mzk3NjNhYTU2IHB5M2sKKzcxMTQ5IGY2NWYwMTE4MzMxYzI5MTgwNTU3NzEwNjM1MmUzZjUzZDc4MTc2Y2YgbGVnYWN5LXRydW5rCis3MTE1MCBlNzQ1Y2VmOGY0MDc1YmM5MzcyMzc3ZmMxZjFhYzlmZWJiZTJkMjRhIGxlZ2FjeS10cnVuaworNzExNTEgNjFiNTExZDA1ZWU5NDcyMjQ3YzYyMzQ3NTVmOTI5OGYzZjZmMTZhYyBweTNrCis3MTE1MiA2MzQ1MDJiZThkY2NiZGU1NGE0NTdlOGM5MjZlNjZlMzQ0MTg3ZjAzIGxlZ2FjeS10cnVuaworNzExNTMgY2I1OGM5NzM5ODVjOWMyZWQxYjlhNTA0ZGE2MWY5ZjRkMDljYzU1YyByZWxlYXNlMjYtbWFpbnQKKzcxMTU0IDczYTdlNmFiYTdiMjEyZjBlOTEwMzVjZjFkZWIzYjU0ZjM3ZmY5NmQgcHkzaworNzExNTUgMzczNDZkZjJiODg0ZmRlZjM3Nzc0NGZlODU2NDRjMGU3YWNiZTY4MyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTU2IDhjN2M1YTM1OGRiOTVlNDFlZTFmMGJhNjZiYjE1OWIzZWNjOWUzY2UgcHkzaworNzExNTcgMTc3ODQxODVhZDkzNTI1MWZlZjYzZGM2Mjg2ZDA1MjdmNDVhNDA2NyBweTNrCis3MTE1OCBlNjU2OGIzYzJhZTc1YjY3NDQ1NTIxMDhmMjdjNDE0ODAwNTI4MDQ5IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExNTkgMmY1MmEzZDE4NWEzMGQ3ZmY5Y2YyYWFlMWVjNWY0MGIyYjQ3ZmRjNyBsZWdhY3ktdHJ1bmsKKzcxMTYwIDNlZjk3NTZmZmRhY2RhMjE1NGNmNDBlMTU2NjAyOTZkNjI1MTQ5M2IgcmVsZWFzZTI2LW1haW50Cis3MTE2MSBiZDc0YzRlZDAzYTQ2ZWUxMzZmNDVhNGU1OWFlNGI1OTI0M2Y2YTAyIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExNjIgMWRmMzdmMDk3NDdjNGE5Yzc3N2UxMzk5N2JlZDNkMzViN2UxY2ViZiBweTNrCis3MTE2MyA3MTM1NWRkZjM3M2VkOWQ3YzlmMzMyYWYzMzhlODgzZjU0ZTNmNTkwIGxlZ2FjeS10cnVuaworNzExNjQgYThmMTdjZDgyZDg5ZjAyMTI0OTkzNmY4MTY5OTBiMjI0ZmUyZDYyZSByZWxlYXNlMjYtbWFpbnQKKzcxMTY1IGFhODkzMDY3MmFhNGQ4MjNhMjVmZjc4MzI3MTE4Mzg1ODg0MjAxOTYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTE2NiAxZjgwNzllY2QzNzAwYzg2NWFiMjAxZTQ3MjFiM2RiYjJjM2QzMDYxIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExNjcgNzNiMDE2ZWM1YjhmYTc4YWM1ODYxMzkyYmEwM2RiMjE2YWJhYmViYyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTY4IDM0NzZhZDc1OTBiNzgwYzhjNWMxNjE0NDQ3NWMwODE0MzZhODAwYmEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTE2OSBjNTBjMDc5YjA5ZWI2NzE2NjE5MzUyMWQ5OTIwYzQ5MTA4Y2RjZTA1IHB5M2sKKzcxMTcwIDI4ZTMwYTVjNjM5ZDdmMGRjZTYxNjBhMmY3ZGFmYTVjY2U0YTYzOGIgcHkzaworNzExNzEgYWRiZGU1YzNiNWZlNGRmNDBjN2Y5ZmY2M2QxN2YxMTM4M2IzZWY2NiBweTNrCis3MTE3MiA0NThlYmU0ZjVhNTg4ZjY4NjFkMjQyOGZjMmRiOTNkNjgwYWQ4YWY0IHB5M2sKKzcxMTczIDdlZTFjZWZhNmQ2MmI5MjlhMWM1ZTRhYjM2ZGY5OWQ1ZWI5MTNjZDIgcHkzaworNzExNzQgNThhN2M1MDk0NTIzMDk3ZjYyNzA3YzJkZDg3NzcwZWNkZGMwYTkwNCBweTNrCis3MTE3NSBhM2JiZGQ5M2IzODlhNjY1MjQwYzUyYzBmODNjNzRmZDhmMDkzNTlkIGxlZ2FjeS10cnVuaworNzExNzYgZDdjOTc1NWI2MTc3MzMwMDQwYTI2NTEzYjBmZmIzNGI4ODM3YWIxYSBweTNrCis3MTE3NyBjYjQ3ODE1MjQ3MDQ5NmRlYmNiOTUzZGZkNzg4MWY1MzhlNzdjODU4IHB5M2sKKzcxMTc4IDJhYWRjMWFmYzlhMTk0ZDBhMGNmNzExNWQxMGQxMWI3ZDNkYWJjOTcgcHkzaworNzExNzkgNTM0Nzc0MGQ0ZDVkZDRlYjMxOThmZmYyNzYyN2QyNjZmYzMxZWFmOCBsZWdhY3ktdHJ1bmsKKzcxMTgwIGQyZTE1NjI5ZmMyOTdhMDA3MTdmYmY4NGMyNzNiZTIxMWIwOGZmMWIgcHkzaworNzExODEgN2MyYTA0ZTIxOGYyMWI5M2QwYzdkNTc2Y2U2ZTI2ZmU3NWJhNjRiMyByZWxlYXNlMjYtbWFpbnQKKzcxMTgyIDQ2YjZiODQxNWRlZTc2Y2ZhYWMxNTM2YjMzZGI3YjllNWM3ZGE5YjYgcmVsZWFzZTMwLW1haW50Cis3MTE4MyBiMTRlOWVjOWQ5OWY1ZWNjMWI2MWEzMmNjN2JjYzllYjY0NDlkNTQ4IHB5M2sKKzcxMTg0IDlhOTEyYTU3MTY0ZjY1YmI1MTNhYmU5ZTIzOGE1MzQ0NTRlOGVlMDYgcHkzaworNzExODUgNjhhOWU2ZTM4YWZhOGRkOTJhYTUxYmM0YzcwY2VjYzU3MDEwZGQ3ZSBweTNrCis3MTE4NiBjMTdlZjE0YmRmNDFjYWEzZWFkNDZjOTYyOTZiMDA3N2EyNzljNzVkIHB5M2sKKzcxMTg3IDM1NjMwYzNlZGQzM2M4MDkwYjU0NzdhNzljMjg4M2I5OWUyNzNmYTQgcHkzaworNzExODggZmY3OTMzZjQ0YzQxNjJmNTk0NGEwOGRlN2FlNzkyYzUxOWZlYTgzYSBweTNrCis3MTE4OSBhYWNmNTA5NGExYjU4MGZlY2VjZTRhNjE0ZTc0MzVjMDYxY2QzODk3IHB5M2sKKzcxMTkwIDFkNzkzZWUxNWI2ZjZlOGQ4ZDEzOTI0ZTkxYTg3YWUzODUxNWVkZWMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTE5MSA0OWFlZjQxNDFiOTNmMjg3NTNmN2NhYTU1ZThiNGVmODcyOWQ1NTcwIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzExOTIgNWJjOGNmM2Q5MGIzNTUzMTI4MzM1N2FiMDYyYWRhYjdmYWIwZGU1YSBweTNrCis3MTE5MyBhMDE0ZGM0N2I1NTJlYjdlMzcyYjc0MWZlOGRlYmVlZDU1MWE1YzliIHB5M2sKKzcxMTk0IGVlNDMwZTUwNzVkYjJhZGY4MTI0ZTZiOTQ5MTZhODljYTQxZDMxNzEgcHkzaworNzExOTUgOWVmN2JmNGQ4NTkwODYzOTkyOGJiMTVmODg3YTRiMTIzOGFhMzk3MSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMTk2IDZkZTg2MzZjZDgxNzMxZTk0MzUwOTM4ZGY2YTY2OWMwMTc0MDNjZjggcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTE5NyBiNGVmNTAyZmNjYTAyODdlY2M3OTQ1ZDIyOTU0Y2NkYzEyMjY2MDZmIHB5M2sKKzcxMTk5IGJkYzU3NDc4MjkxOWQ3OGMxMTUyMGQ0Mzc3NDQyNTYxYjAzYjU3ODMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIwMCBlMDJiZGQ2MDg1ZmZiZWI1YjZkMjk5MDZjZmE0NjY3ODZiOTI2YmNmIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMDEgNzYxMDQ4YTBhOGQ5OWI5NjcwZGViZDU4NjNiNGNmZjNlMmQxN2QzNiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjAyIDMyNzI2M2ZkMmU2NjYzYTExY2Y2YjM0ZWU0NmMxYWFiYzdkNGY0YjYgcHkzaworNzEyMDMgMTliMGRiMTM1NGY3MGU3NmI5YTU3YzkwYmMwNmU3NzE5YWU0NzA1MCBsZWdhY3ktdHJ1bmsKKzcxMjA0IGQ5MDAyNDYyMDU2ODdlOTFkMTQxNTMxN2JjZDlkMmQyM2QwNDYwNDggcmVsZWFzZTI2LW1haW50Cis3MTIwNSBmZGNmY2E3MTViZjNkYWQwZGU4YmI0NjQ0NjM5OTA5NDU5ZjcyOGZiIHB5M2sKKzcxMjA2IGU2ZTVhMGU0MzU0MzQ2YjUzZDk3YjdmYTg4Mzg1NzQyOGQ1YWU1NmYgbGVnYWN5LXRydW5rCis3MTIwNyAwZmUzOGJiZDk3M2NkZjFiM2NhNWIzZDBkMzViNzMzNjMyOWY5MDQ0IHB5M2sKKzcxMjA4IGRlNWYxODYzOWE2Y2UxZmMzOWYzNjZiMGZiNzU2NTU2N2JhYjQ3MDcgbGVnYWN5LXRydW5rCis3MTIwOSA3OGYzMTBiOTYxYzAyZmNiYzcyM2IwZGIwNjYzOGYxZDUyYTJmNTllIHB5M2sKKzcxMjEwIDkzODRiNDNkNDI2ZmVlNWZhNGQ1NWRlNTZlNTI1ZDM4ZmQ4YTk0NzAgbGVnYWN5LXRydW5rCis3MTIxMSBhZGRkNzUzYmE0ZDk2YjczNjZiZDM4YmE1OTc1ZGZiYjkzN2ZkYmZhIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMTIgMThmMWM1NmNhNmZkYmYwZDMwZThhNGI0OGFjMzQ0ZDljYzIwM2E1MSBsZWdhY3ktdHJ1bmsKKzcxMjEzIDBmNzcwOGIwMTI4YzA3YWVhNDQ1NTc3OTQzZDIzYzM3YTM1MjVkZmQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIxNCAxZWYwMmVmNDhjNDI0YmZjODlmMzU0Y2M4Zjg5NTkyMjkyZmUwMGE1IGxlZ2FjeS10cnVuaworNzEyMTUgNWU4ZGU2YzNlMDAyNzUyNjIzMjY2NWQzYjRiMTBkMWUyZDQxMTVkNCBsZWdhY3ktdHJ1bmsKKzcxMjE2IGU0MjFhOTJiMjUyMDc4ZGE3ZmE2MGFmNTBkNjk4M2NmYWFkZTkxODMgbGVnYWN5LXRydW5rCis3MTIxNyAwMDA2YjJhZGM3ZTQwNzgzOWI4NjZkY2Q4MmNhZmY4NjEzNDg3ZTk1IGxlZ2FjeS10cnVuaworNzEyMTggNTg3YTJhZWQzOWYyZWQzZGE0MTA0NmJkZjMzODY1YjdkYjczNmU5MiByZWxlYXNlMjYtbWFpbnQKKzcxMjE5IGViODQ1MzA1NzdhNTNhMjk5Y2VlNmE3NGE1MDljNjMyNmVjZmZhY2QgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIyMCBmNWNiM2IzM2I3OTQxYTcwNGEyOWYxZmM2MjU1MzE3ZjFmMTUyMzIyIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMjEgZjU1MGUyNDYzMDYyOTkzYWU5Y2JhYmQ1ZThmNTZjNTZjYzI4M2QyYiBsZWdhY3ktdHJ1bmsKKzcxMjIyIDJiYmI2MGMwMGViNzI1NzgyMjQwYzM4MGRkMmY2OTdjMTViMzMyMWEgbGVnYWN5LXRydW5rCis3MTIyMyAwMWY0ZTg4MDNlY2RlMDA2MTQwZjQ3NjgwNzY3NDZkMmRhODFhMDQzIHB5M2sKKzcxMjI0IDk4ZjQyMzkyODM1YjY5YWVkNWZiZjgwM2Y3YjlmMzUzMjgzMjI5MDIgcHkzaworNzEyMjUgYTdjNzRlMDlkZTNkZjBhZTAwMTZjNWQyZmNiN2MyNjE2ZTA3MGQwNyBsZWdhY3ktdHJ1bmsKKzcxMjI2IDE1MmUwOGRmYzFhZjVlNTdhNGUzMjJjNDhhNDk0OGM0ZTcwNTE5ODkgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIyNyA1OGQxNzE3ODBmZDg5NTQ1MzljYjU2MWY0MjBjYjE5MWE3ODVjZTlhIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMjggNWNiZGI1MTU3ZmE3NmM1MDA3YjRmNmU3MzVhYzdjZjZhNDA2ZTA2YyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjI5IGJmZmE3NzY5NjkyNmRjZjU5MWMxZmUzNzJlMDA5ZmJmMjg5MWRiYjIgbGVnYWN5LXRydW5rCis3MTIzMCBlYjMyYTE1MzdkZDdmOGI5ZWZkMzdkNjNkZWNlMzQyZmY5NDEyOTI2IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMzEgZjFjZWMzNzY5OGZlOGQwNDE5NDU1YWIxZDQxMDBjMTAwNDE4ODUyOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjMyIDY2MzU0YmRkZGNmNzZkZDRmMzE4OGIyNGUxMDQwNGY4ZTcyYjY1MDYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIzMyAxY2JlYWJmODg4YTE0NjQyYzFjMTBkNjgyOGEzMWM3OTk4Mzc2NWQ2IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyMzQgZWI5NDUxN2RmYmQ2ZDdhZmIwZWJiOTgyYmZjMTM0NDhhZDE3ZDA4YyBsZWdhY3ktdHJ1bmsKKzcxMjM1IDg1YzVjZTZkN2Y5YzdjYjA5YjYyMTRmNDA0OGQ5NjczNmFmZjEyNzQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTIzNiBlZDc4MzNkNDgyYzgxZjJlNzdmZjhjNGU5ZDVkOTJlYmIwMjQyZDk5IHJlbGVhc2UzMC1tYWludAorNzEyMzcgOTc2YjMwNWFhZGQyOWUwZTJmZjkwMmY5ZTM3ZWQ1NDgwNDUxN2M0YSBsZWdhY3ktdHJ1bmsKKzcxMjM4IDZlYWY5NzcyMWQzZDhhZDFmMTEwY2Y5YzVjMWVkMTE4MDJiODdmNWIgbGVnYWN5LXRydW5rCis3MTIzOSAzN2Q2YWY2Zjg1YWFjNGRkOGQ0NDdkOWVlMWUxNDJlODdhMGVkOTNmIHB5M2sKKzcxMjQwIDhjNjFlN2NhYTA2Y2Y3ODBhNDU4NzUyNjc4Mjk5ZWQzN2ZkYTUzYmEgbGVnYWN5LXRydW5rCis3MTI0MSBkYTFlNTQ4M2FjYTAxMzZhNWI1ZDhkZGViOTA5MTdhZTRmOGY5NDFlIGxlZ2FjeS10cnVuaworNzEyNDIgM2JiYzY4NDQ5Zjk0ZTdlYmMyYTExYmMwOGY0NmEzNDAxMjcwMWE4YyBweTNrCis3MTI0MyAxM2VmMTE5MGVkYTlkNjRlMTViZGU4MWIyOTdmMzc1MTI3OWNiN2Q3IGxlZ2FjeS10cnVuaworNzEyNDQgMjRlZDVkODUxNzIwY2VlMGUwMmFkNWEyYWQ3NjdhMzE0ZWNhN2JhMSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjQ1IDhjZTllZGM4ODk2OWI4ZDhlMWZkMzE4MzY3NzU1NDczNTFiOWI3ZDIgcmVsZWFzZTMwLW1haW50Cis3MTI0NiBiOTA4N2I2NDVjZWZiYzQzYmMzOWM3YzIwYTAzNzg2NmFjZmI1YWEwIHJlbGVhc2UzMC1tYWludAorNzEyNDcgNzYxMmFhODliZjA2MGVjZDJjYjVjN2NjNjRhYTdkMjdjOGJmNjZhMCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjQ4IGE3ZTViOWQ5MGIxMjVmY2U2ZWQ3ZDBjMGIzYjNkY2VkNGM3ZTA4YzEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTI0OSA4ZDIyODczZTliMjZkMWQ1OWNmMGQzNzU4MWZiNWIxNWI2ODIwZWUxIGxlZ2FjeS10cnVuaworNzEyNTAgNDNjODg5ZmVkYTQwYjExNzYyMzk5NzcxMWQ2M2ExZjJmZWNhOGJjNCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjUxIGJkMTMzNmEzYTY4NjNhZTI3NTFjYTI2NDc3Y2EzYWRmNjNkZDI4MjggbGVnYWN5LXRydW5rCis3MTI1MyBiMmM2OGRmOTQ0NjM5ZGQ0MzRhZDNiMzhjMzQ0Y2FiODExOGM5MjU2IGxlZ2FjeS10cnVuaworNzEyNTQgZTc0MDgzMzAxYTM2ZTA4NzU1YzQ5YWVjOGFmMTZmYmUwNTViODdlNSBweTNrCis3MTI1NSBhMTZhMDQ1Njk3OGY3ZWY3ZTk4YjMyY2E3NjcyZjY5N2UyOGM1YTFiIGxlZ2FjeS10cnVuaworNzEyNTYgY2ZkNzEzNjk0MWEwOTk5MjNmODkwYzJiMTg1ZmVmM2RhOTg4MDdkNSByZWxlYXNlMjYtbWFpbnQKKzcxMjU3IGVjYjIxMDNiYTAyNzlmZjU3Y2Y0MmFkMzQyNDdmMjc2MTgyMDVlOTMgcmVsZWFzZTMwLW1haW50Cis3MTI1OSA3YjRlZjBiODdkZGNmZjkzMTM1Y2MxMDM0NDE0NzUwOThkNTVlMTAwIHB5M2sKKzcxMjYxIDc5MmJiODg1MDI5ZmJmYjI4NWZjOWQzOTY1OWYzZDJlOWJhODk3MjkgcHkzaworNzEyNjIgNGQ5NzYxMWQxY2NhNDhhMTRmZmExYjY5Mzg5NTY2NDMyYzgzOWY5ZSBweTNrCis3MTI2MyA2NzJiMGMwNDFiYTYzODRhZDg0YjNiYzNjNjY5YmQzODlhMmRlNGUyIGxlZ2FjeS10cnVuaworNzEyNjQgYzllY2Q0NWE1ZWEyZjEwM2EzNGU0OGNkZWEwOTE4YzFlOWJhYjg4NyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjY1IDE0ZTAwZjBmNzhiNzRjZjQxMDRmNzVjOWZhMGMyMDFmZjc5NWQ2YjEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTI2NiAyZDAwZmYzZDJmNWEzYzVjY2E4MzU4ZmQ1MWJiM2I1MDFlZmU4ZmRkIGxlZ2FjeS10cnVuaworNzEyNjcgYTE0ZGViOTQ4MGY0ZDMyMGRhZDJjNjIzM2FjZmQ0NDc4NGRlYzY0ZSBweTNrCis3MTI2OCBmOGM1NzZmYWE5YWQxM2U5YWE2NjA2M2I4YjhkZjkwY2U1Yjg1MzljIGxlZ2FjeS10cnVuaworNzEyNjkgNTRkNWYyOTg2YWY0MmNkZDc4YmI3MjZhZjBmYzA3OTc4MTc2OWFkZiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjcwIGZiMmVhOGJiM2EzM2RjNzZmZDg1NDE0MmRmODgxNzQwNmI0NjNlNDIgcmVsZWFzZTI2LW1haW50Cis3MTI3MSBiMDQyOWM3ZmE3MWFhZWQ1Y2M5MzI2OTZlMDkzZDVhNTI0NmMxMjgxIGxlZ2FjeS10cnVuaworNzEyNzIgNGFjYmJiM2U2NWUyYjA1ODIxZDQzNjg5ZWUzYWY1YmE1NzMwNDM0MSByZWxlYXNlMjYtbWFpbnQKKzcxMjczIDI1MWJmZDJkOTk2YTJkZmY4Y2MxMzI2NGFhODViZmFlNThiMTg0NjIgcmVsZWFzZTI2LW1haW50Cis3MTI3NCBkMzg4N2RmZTY2MWY5MzYyYzNlMmNmYzEzNDMyNDIyZTYwZTE0NTk3IHB5M2sKKzcxMjc1IDM4ODlkOTUyODYwMWUzYmUxOGE2MmI4NDg2MzZhNjBiMmQ0NTBjNTggcmVsZWFzZTI2LW1haW50Cis3MTI3NiA5NjlhZDEwYThhNzI1NzBiODFjNTg0YTVhNGExM2JiYzRhOTBlMjJlIHJlbGVhc2UyNi1tYWludAorNzEyNzcgZDA4ODQzNmFjMzZiMTBhOWYzM2NlZTkxOGY4MThkMTdkMGNjNDliMSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMjc4IDgyMzdkZTYzMmQ2ZjY4MTVhMzY4ODJmOTY0NTNlNGE5YmUyZDgxYTAgcmVsZWFzZTI2LW1haW50Cis3MTI3OSA4YjUzMTUwMTM0ZjVkYjE0ZDIyM2RlMGEyM2I5ZmRmMDVhNzU2NTJmIHJlbGVhc2UyNi1tYWludAorNzEyODAgOWE0YjE5MzMwYWE5MzFhYmQzNTg2MWZjZmVlNjI0ZmY0ZTBjNDQxMiBsZWdhY3ktdHJ1bmsKKzcxMjgxIDdlNzgxM2FkYTJkMTgxYzQ3MjQ5Yjc5YTkzZmRlZjMzZjhmYTBkMGIgcmVsZWFzZTI2LW1haW50Cis3MTI4MiBmM2IyNmE3MjllODJmOGZmZmIxNzRkNDkzYzY5YzZlOTlhYjg5MDU4IHJlbGVhc2UyNi1tYWludAorNzEyODMgZjY3YTRmMWYyMzBkNzQwZmRlY2JhNTNiMzU5NGY4ZmRmOTMyNDA5ZiByZWxlYXNlMjYtbWFpbnQKKzcxMjg0IDkzNGQ5YzNjYmE0MTg0Yjc0MDI2OTM4ZTY3ZjRlNzg5N2M2NjI3YmMgcHkzaworNzEyODUgYjY5MzQ5ZDRiOWU4ODMxNmI3NWRjODI4NjQ3NTY0ZDQ5ZjQ2YjcwNSByZWxlYXNlMzAtbWFpbnQKKzcxMjg2IGQ2ZGU2ODQ0ZmQ3MTQxYjM2YzY0NmQwNjBiODk3NzU1NjY4Y2YyZjcgbGVnYWN5LXRydW5rCis3MTI4NyAyNGZhN2RkZDRkY2NlNDhiMWRlZGYxMGQ2N2VhZDMwYzVkOWMzZmNlIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEyODggMWQ4Y2I3NmU3MTliN2UwNTA4NDI5MWIyYzhkMmNjMjE1YzkxYmU0OSByZWxlYXNlMjYtbWFpbnQKKzcxMjg5IGIzNmIwMGFlMjlmZmJmNmU1NTNiYzY0NDI3MGUzYTcyZjZjODVjZWEgcHkzaworNzEyOTAgYjMzYmRkMjQxNDAyMzU4OWM2ZWZjYWRhNWVlMjI1NDA1M2MxZjUxYiByZWxlYXNlMjYtbWFpbnQKKzcxMjkxIDQzM2RlM2Q1OTYwNzhkMWFlNTVhZDI1OTc0ZjA4N2FiMDgyYjVhOTAgbGVnYWN5LXRydW5rCis3MTI5MiAwYzZiMTZhMmY5MWI3NWVmMjE3MGEzNmJkNTlmMmE3Zjg2MjVlNmRlIHJlbGVhc2UyNi1tYWludAorNzEyOTMgNTQ4Y2EzNDM1N2NkYWU1YzdmMTk1NTJiMWE2Y2YyYmM3YzlhZGRkNyBweTNrCis3MTI5NCBkYTBjMWY3NGNhMjAwYmM4YTFmYmFmMDFhMmVkNGIyNjBkYmMyOTk4IHJlbGVhc2UzMC1tYWludAorNzEyOTUgNGI4ODFiNGE5MGU5NWVlZDdmZDQ1MjZjOTlhZmIxZmIyMTUxMGU5MyBsZWdhY3ktdHJ1bmsKKzcxMjk2IDM2NGJkMDAyYjdmODY3OWZlYzEzYmI1MWYxMjgzMDJkYzBiMGIxZjUgcmVsZWFzZTI2LW1haW50Cis3MTI5NyA1YTdhMzNjOTRkMDAxYzhiZGM3Yzg4NjZmYmQyYTUzNTk2NDQ2NzJmIHB5M2sKKzcxMjk4IGVjMmU0YjVhMGU5MGRjNGQ2MGRjMDI0MWYwOTEyZWVkMjMxMTg0NTMgcmVsZWFzZTMwLW1haW50Cis3MTI5OSBkMzZhNGY5MjAzNzgzZmE5OWFkZjhlYzM5NzNhNWI2ZDBiYWE0YmIyIGxlZ2FjeS10cnVuaworNzEzMDAgNDE0YTMxMTgxZTlkYzM4MDFjYjczZmE3MGUxNzc2ZGRjMTAwMmYxMyBsZWdhY3ktdHJ1bmsKKzcxMzAxIDczNjAwNTE1OTk5YmNhMGYxZGUwNDk2NDM5MjUwNmQ2NTlhNTNiYTcgcmVsZWFzZTI2LW1haW50Cis3MTMwMiBlMzYzOTU4ZmNkNzBhNDNhZDA3YjM5ZGY5OTk1NTJkMGZhMWNlZmMxIGxlZ2FjeS10cnVuaworNzEzMDMgYzZjNDM5ODI5M2JkNjgyYjM1NWYxMDUwYmIxNmJiM2UxOGM4YjQwZiBsZWdhY3ktdHJ1bmsKKzcxMzA0IDk4NjIwMWFjYTY4YjQzNDRiZmJhMzlkZjhjZjk0MTQ3NDQ4ZmUzZTcgcmVsZWFzZTI2LW1haW50Cis3MTMwNSAyMDc5ZWRkNTI4NTg3NDJjYWQ5MWIxOTMxOWNjZjIxZDZiODc3NDk1IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMDYgZWZjN2UxM2E3NTQyMzI1YmIzZjczMDlmYmViYjI0ZWM1NDg3ZDc1NyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzA3IGI0ODgxZjhlYzcwNmY4MTIxM2JmYmNlYzFkOGZkNzFiM2IwNDQwNWMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTMwOCA4NTkyNjc3ZWIzNTJjZjg1YzYwNTViOWRiZmQ5MDU3ZTdlYjY3ZmIwIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMDkgMDY2ZmEwYmE4MjkwMGZiYzI0OTg3MmYyYWU3NGExOWRkYjk3ZmZkNCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzEwIDdjMGZmMGRlNjI5NTZmMTc3N2VjNzMxNjY1NjI4ZDQzNjE4NDI3ZjEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTMxMSA5OTY4N2Q1MWJlMGExNDI3MWZhNjJhOWNmNzJkZDc1ZjI5MTFmZGI4IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMTIgZTAxMjk4NmJlNGY0ZTUyZjlhYzE2OGRhZmVmNWQ4NDU0OWFlZGE0MSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzEzIDUyNmRiMjhmMTAwZDIxMjViYjgzNTU1MzRlNThiMjZhYmVhNzMyNWYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTMxNCAzMGI1MGNiZTVjNWU1ZmM4ZjllOWYwZWQwYTJhMTEwNmNjMWQwMjYzIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMTUgZjdmNzAxMzllZjU3MGRmYjNjNjQ5N2I2MTM2YTFmOWViOTVkOWIwNCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzE2IGNlZTFhODZjNjljMTVlNjQ5YzFkNzU1OWI5MzQwMjU5ZjY0MmY5YmMgcHkzaworNzEzMTcgMDI2MzU0NjAyNjFlOWFmMWE5MzdjOWY2MGNmMGQ1YmFlOGJiMWViYSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzE4IDk4NjQ1MmI1MjZhMWRmNmNlMGE4MzNmNDAzMTVjYjAxZTBkNmMzMDMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTMxOSAwNmZhODdmM2VjMzYyNzFmZDA0NzQwZjMxODlhMDA5ZWZkYTljODVhIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMjAgNTU2MGEwNjhjMDU3OTVmYTA1MDA1MjE3YmZiMzg5NWZlNzFhOGZjMyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzIxIGU0ZWViMGRhZjYyNTQ2Y2ZkMzc2NzM3N2ViNjJhYzcxZDBlZWYzMDYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTMyMiA0NWZkMjI3MGFlMWI4YzFkMDg5NDk5YTJhZDkyMTFjNTY3ZjI4ODFjIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMjMgYzVlMGM2ZjY1NmU2MzY4NWUxYTk4NjBjNmJlZTFlNmMwOTI2MzkyZiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzI0IDA3NmM3MjIxMTU2MTExOTY1OTY0MGEwMjY3ZTY2MTlkZTNmNmVjMDEgcmVsZWFzZTMwLW1haW50Cis3MTMyNSBiOTg0OWVmYjI3NTQ1YzY4M2Q0MjRkYmQ4NjQ2ZTA0MmZlYjhjYjg3IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMjYgOGQ2OTc2M2EyMzE3YjU0MDYxOGZjZmIwYWEwY2I3Y2I1ZmRlZjQ2OCBweTNrCis3MTMyNyBkMzQ3MGJjNmQxOTE4ZGE5Nzg1NzZmOWY1ZDhlZTE4N2Q0NzllOTUyIHJlbGVhc2UzMC1tYWludAorNzEzMjggNGE2N2Q2OTE0NzI1ODUxNTA3MzQ1ODBiOWI4NjVlNWQwYTcxN2U3YyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzI5IGQ4MTk4NTE4MmEzNmQ2MDg2MGFkNGVlNjQzMmQ0Yzc2M2I0MDQ4MzAgbGVnYWN5LXRydW5rCis3MTMzMCA5MjBiMDc5MDk2MDAzZDRmNzRkNmU3MzFlZDhlOWQzZTdhZTkxZmFmIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMzEgNWIwMWZlNTEzZjkyODY0ZmY1YmQ2OTE3ZThmMDgwNjM4ODAyN2Y0ZSByZWxlYXNlMjYtbWFpbnQKKzcxMzMyIDU1NDllOGZmMjhkMmNlYzdhM2IyN2JlMTY1NTIzYWNkM2U3MWNkMDQgcHkzaworNzEzMzMgZjY2NDA2ZjI2MDQ0MWYzMGY4NmFjNmEzZjJkMjRkYzJmMDBkYmFkZiBweTNrCis3MTMzNCBhMGVkZDkxZTljNmYzMTI2MmJiM2ZhMTI0MjRhMDU4ODYzNGQxODc1IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzMzUgZjgyNGRjNjAxMDZmMTA4ZjJjNjU5YjJkMGVkZGNhMDg1ZWRjOTA5NSBsZWdhY3ktdHJ1bmsKKzcxMzM2IDYwOTNmZGM1ZWU5NjJkZTBjZWU5ZmJiMjY2YjJkODY1ZjliYWI4YTkgcHkzaworNzEzMzcgN2EzOWY3ZTQyYmQ5N2NmZjI2YmM5MTMzNTM1OWE1NDcwYWU0ZTcyMCBweTNrCis3MTMzOSBmMzkxZGY5M2M5YWJkNDlmN2QwMjBkZDUyZDQxNzM1Y2I1MjI0NWVkIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzNDEgMzc0NGVmYTQ1NjY4MWVhODQ3ZDgzYzNlNzU2NjVjODdkYzk5OWM1MyBweTNrCis3MTM0MiA5NzY4ZGE4NmNmOGUzMmFmNjE3OTVmMmI3NDgyM2Q1MGYxOTdhYTU2IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzNDMgMjhiYWU1Y2E1MjE4ZDA0YjJhYzQ4NTJmOGIzODY2NGMzMzEwODNjMCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzQ1IDY5MTE0YTM1NmNmMGRhNzJlYmY0M2Q0NTVjMTU4MWQyNDliOGI2ZmMgcmVsZWFzZTI2LW1haW50Cis3MTM0NiA4ZmJiOTkzNmQ0ZGEyYjE3ODI5Mzk3ODAwODY2YjdkZjllYWNmYmY5IHJlbGVhc2UyNi1tYWludAorNzEzNDcgNmZjZDEwZWE5OThhOTI2ZDUzN2MwNjQ1NjBlYjBkNDRmNmU3OTM5NyBweTNrCis3MTM0OCBkYTczYzQzZTY5MWVkZjg3NWQxYTcyMjNmOTFhYWQ3ZTgxY2I0ZTI5IHB5M2sKKzcxMzQ5IDcxNmY1OTU4YjVmMGRhMGE2MWZkMjcxODAwMzJmZmNlZWI2OTg1ODAgcHkzaworNzEzNTAgNmY0YTA4OGQzNTlkNmNlNmY5Nzk4OWY4NDM2MDcxOTYwMWMwZWM3YyBweTNrCis3MTM1MSBjMzdiYjFiN2E0N2E4NDNlMjBkODBmY2U2ZTg2NzdhMzRhZGVlMzA4IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzEzNTIgNDliMjQ5MjJlYjJkZGY1N2Y5MzMyMWZhNTcxNDQ5ODBhMzI1ZGE3MiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzUzIDY3NGIyMDAwMjI0Y2M4OWU3Y2JjMWFlNGQxMGVkNTg5MjYzMmIzMjkgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTM1NCAzMTU4MjQ4NWZiZmNkMTUzNDcxZjBkODkyZDlmZmFkMmMzNTUwMzczIHB5M2sKKzcxMzU1IDE1MzkxN2MwMDFiZWZhZmQyNmFkMzdlYzI1MTE5YTcwN2UxMTk4YjAgcHkzaworNzEzNTYgZjkyNTMzOTI1ZWE2NjI3MDVhYmEwYjA3YmQ2NTMyYzA4MTdmNDMwYSBweTNrCis3MTM1NyA5NDgzMjQ1NWUzN2Q1OTBjY2FkNzg0MDE5ZGJlODFhNmMyNDQ0YjM4IHB5M2sKKzcxMzU4IDc1ZGVmN2VkOWQ1ZmM2M2Y5MDVhYmIyZGQ4MDM5YTdhYmM0YjU3ODcgcmVsZWFzZTI2LW1haW50Cis3MTM1OSBjMzljMWMyOTc4Zjk0ZjViNGY4NDJjOTZhYTQ1MzhlMTE0MjM1OWVlIHJlbGVhc2UzMC1tYWludAorNzEzNjAgMmIwODMxNDZhY2Y1YzI2Njg4NDZkNTZmN2E0YWJmZjMyZjAzOWIxNyByZWxlYXNlMzAtbWFpbnQKKzcxMzYxIGI1MGYxMWI4Y2FkN2Y0MWVhZWNkZTEzNDkxNDRhMDRkNDI0ODk0ODkgbGVnYWN5LXRydW5rCis3MTM2MiA5MGQzMjM4MWEzNDBmYmU0MjVjZTBkNzE5YmZjNGQyOTIyZWI5YmU0IHJlbGVhc2UyNi1tYWludAorNzEzNjMgMDFmMWFlODM2MzFhZTgyYmQ4NTk4YTExYzE3ZTNmOWIzZjU2YzM4YSByZWxlYXNlMjYtbWFpbnQKKzcxMzY0IDI3NWMwYmE3NDg1ODllOGE2N2YxZDZhMWEyYjI3NWEzNmJhMzNlM2YgcmVsZWFzZTI2LW1haW50Cis3MTM2NSA1ZThjM2U3NDUxZmZiNzljZTExOGZjMjk3ZDg2ZWMzZGMwMTBjZjk5IGxlZ2FjeS10cnVuaworNzEzNjYgOWFiNTI0MTcwZjY4MmYzMzJiYTBiYmE4MTU2NWE4MmExZTgwMWFkOCByZWxlYXNlMjYtbWFpbnQKKzcxMzY3IGZjZTNhZDRiMjNkNjBjMzVlZmZkNWJhYmU5ZmMyZDRhN2ZjZTc1OTAgbGVnYWN5LXRydW5rCis3MTM2OCA1Y2UyM2NmYjk4YzdmNWZiZGY2MjA3MDc2ZWRlNmIxYzEzZGU2N2QxIHB5M2sKKzcxMzY5IGM4NDIwMTE4OTM4NzNlYWYwYjg3Nzc4MmQ0NDg1MTkxZjc0MjUxNTYgcmVsZWFzZTMwLW1haW50Cis3MTM3MCBlMjMyNTJhOGZmNTkyNmZjZmMxZGVmODc5NDlkY2RlNmVhNDE1OGU0IGxlZ2FjeS10cnVuaworNzEzNzEgNWE0OTQ2MjNjZjNhODE0YjllMmUwYmI3NjY4MzViNGFlYjNkODQyNSByZWxlYXNlMjYtbWFpbnQKKzcxMzcyIDZjNDZkNmRiMmZkNmE5ZmIxYjU3ODBkMzQ3MzI3Y2U0MWZjMTdjYmEgcHkzaworNzEzNzMgZDE2Y2FkYTk2MzcwMTkwNzM4MDUxZmM1NzMyYmY5M2NhYTIxYmJlZiByZWxlYXNlMjYtbWFpbnQKKzcxMzc0IGJhM2E5ZWJjZTgxZTdjMmNhYWYyYWJmZTYxMWI3Yzk5ZjBkNDVjMzIgcHkzaworNzEzNzUgMzc5OTcwMzA5NDc1NTY0ZjlhNmQ4OTMxYWVlN2Y5MGU2YjUxNTcwNSByZWxlYXNlMzAtbWFpbnQKKzcxMzc2IGJjNzliZWY1NWFhODA2ZTgzMTU0ZDY0OWEyMmRmODFkMDBiMGU5ODAgcHkzaworNzEzNzcgNDFlNzIwMmU5ZjkzMDQ2ZGZkNTNmYjNjYmRhNzU3ZGE2YmQ2OTdkYyBsZWdhY3ktdHJ1bmsKKzcxMzc4IDI0OGFkZmNiYjcxNTQ0YzZhNTczNTBmZTc4YTZjYzFmZWE1N2QwYzYgcHkzaworNzEzNzkgZGIxOGU3OGI5MmQ4NmEwMzFmMGJiMGNmMTkwYjg4Zjk4NmFjODEyZSBweTNrCis3MTM4MCAwYTFjZGExZTdjMWM3OTY4NzMxY2NmYmQyMTg5ZjAzZDFlZjI4OGUyIGxlZ2FjeS10cnVuaworNzEzODEgZDA0NDkwYmVlMmVkNDhkMmI5ZGI2Nzk5Yzg0MjU4ZDAyYzAxZTFmYSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxMzgyIDA5MTcwNmUxNDA1NjA3YTc2MzNjODcxNzBmODgwMTllOTRmZTRmNTcgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTM4MyBhZTVmNTE1NmI4ODI2NmFkZTRhYTgzODg0ZDQ5MDRiZDJmYzBkNTE2IHB5M2sKKzcxMzg0IGY3MTA1NTUwNTNiZjJmOGY2MmUwMzYwNWNiZTA4MjBhYTgxMTlmYzYgcHkzaworNzEzODUgMTA5OTQxMDE1NzAzMzA3NGI3ZWJhYjllNWE4NDAwMjNhNzc3NzlkNyBsZWdhY3ktdHJ1bmsKKzcxMzg2IDI1MWVmOTlkZmI0YzQwMWE4NGU4OTBjOTkwY2QyMDFiZmRjM2E0ODkgcHkzaworNzEzODcgNzRkOWY3NWQ5ZGMxZmNmZDBmNDRmZGRkYzc1ODQ2MDc0YjZhYTJkYSBweTNrCis3MTM4OCAxOWY3ZDNhYmU3Y2RlMjdmZmExNDYyYjk4NTIyOTc3YWIyNDA4ODRkIHB5M2sKKzcxMzg5IGRmMGVkOWViNzljMzY1NDVmMWNmMTMyYjEyYzAxZGQyNTZiY2U0NzUgbGVnYWN5LXRydW5rCis3MTM5MCBmZDE4MGJmNDcyMjdmZDZhNmUzNDViNGZhYWNiYTQ1ZTEyZDdjMjRlIHB5M2sKKzcxMzkxIGE5OGM1MDkwODRlYjM1NjJjYzY2Y2ZiZDYzZmU4MjVhZWE0ODVhN2MgcHkzaworNzEzOTIgN2I4OTYyZjY1OTE4YjNlNDk1OTdjMjM3NmI0Y2JmMzE2MjI4ZjI3NCBsZWdhY3ktdHJ1bmsKKzcxMzkzIDYxZTM3ZWZmYWUzYWVhZjMwZTg3ODQ2MTU0ZDE4YzViNWZkMWM5OTYgcHkzaworNzEzOTQgZmQxNmU1NzkwOTZlM2EzOTBmZGZmYTAxZDYwNzYxODUzN2MzMDBiMiBweTNrCis3MTM5NSAwYmMwNTI0ZDE3Y2ViYzIyMWE5MDljNWYzNjc0MDA3YmZkZmJkMDJmIGxlZ2FjeS10cnVuaworNzEzOTYgMDIyMjRjYjIxZDdjYjk1ZWI0NTFjMzMyNWNkZWI2M2M4ZmRhNjRmNiBsZWdhY3ktdHJ1bmsKKzcxMzk3IGIxNDA0YTg2OGQ4ZjQ4ZWQ1N2ViYzU5NzgyYWE1YTQxYmQ1Zjk3NzQgbGVnYWN5LXRydW5rCis3MTM5OCA1YThlYmFiYTFhMDllZmRmZTY0MzJkZGM4ZmM3MjUxN2Q5MDgxYWJjIGxlZ2FjeS10cnVuaworNzEzOTkgYWZmMmIxNWNjYzY4NDlhZDFjNjM2ZGEwMTNmZmI4ODU1MTgzZTI5ZCBweTNrCis3MTQwMCA2N2Q5ZDYxNjBjMTM0Y2RkOGZkOGVkNzJjMWNmZmJlZTg0OWQ5ZTEwIHB5M2sKKzcxNDAxIGQzNWM2NDg2YWQ5NGE2ODU5NjAzNzc2ZmU2ZmMzNThjNDIxMTJjZWUgcHkzaworNzE0MDIgNjNiNTc1MTNiMWJkZDQwMTIwYTMzNDlhZjM3ZWJiNWY5YTJiYzcxMCBweTNrCis3MTQwMyBkOTA4OGVmZDU1OGJkMGIzNThkYjE3Y2Y1OWVhZDk3NWU0NzdiNzQ5IHB5M2sKKzcxNDA0IDE4MDUzY2Y2MTE1YTUyYTc3MDA0YjUxNThkNTExMDhkODkyZjNjNjkgcHkzaworNzE0MDUgYzIzMzY5NTdjNTM1NGRjMGIyMzg2MGZlNTFjMzViODI0MGIzMWQxMCBsZWdhY3ktdHJ1bmsKKzcxNDA2IDMwODY0MjdiMDcwOTIyZGM0YWZmOWFlYTA2ODdkYzVkY2JkNjM3ZjIgbGVnYWN5LXRydW5rCis3MTQwNyAxY2M5NDk5N2NmYTdlZGM1ZmE5OTE0NThmODFhNDgxMDBiMjc5YWYxIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE0MDggOWE3MzE3Y2U2ZGI5OTRhYWUyMGFiZWE4ZTZjYTg1YTkzZWI3Mjc1MSBsZWdhY3ktdHJ1bmsKKzcxNDA5IDUzNjc2MWMyYjZhNGEyMGQ1NDc5M2FlMTUwMzI2YzBmMmE3YTJhNTMgbGVnYWN5LXRydW5rCis3MTQxMyA0MGVmZjNiMTgyZTRkMmZmOTFiYzMwZmJkNDE5NWM4ODYwMjYyNWUwIGxlZ2FjeS10cnVuaworNzE0MTQgZGZhOTFkZmVkMGIwNTQ5NmMyMTZkMzgyMGMwZTJhZTMwYjQ0NmY4MSBsZWdhY3ktdHJ1bmsKKzcxNDE1IGE3ODhmYWNlZTZlZjRkNzgzN2QwMmQwYmFkNzdmNWRhYWU2NjkzZTIgcHkzaworNzE0MTYgNWFkMjA0MzEyYmNjMzA2YjQ4MTJkYTlmNTg3ZTM3NjgxZDIyYjA4NCBweTNrCis3MTQxNyAyYmEzM2MzNGRjMWE3OTY0NmE3MjZkNjNiMTEzODYwMjEyNTJlMTYzIHJlbGVhc2UzMC1tYWludAorNzE0MTggMDdjM2FjMzBkYTg3MDQ0MTliZDU2YTBmYTMwNWU1OGRkNzI1NmFkZSByZWxlYXNlMjYtbWFpbnQKKzcxNDE5IGFkZTVjMjcxOThkYmVmMGM5NjI5MmE3MDU3ZjZmYWI5NDc1OGE3YTcgbGVnYWN5LXRydW5rCis3MTQyMCBiYzk0YjgzMjNiMzliMjliZDM3NTM2NWViMjViNzg5Yjg2NGRhNGNiIHB5M2sKKzcxNDIxIGY3MGIzYjVmNTM4MGNlNTQ1ODQ5ZGU1YWZiMDQ3ZTEyMjRjNGJkMzYgcHkzaworNzE0MjIgNzllNTdjODY2YjVmNGUyZmMxZGU4MGM0NWE3ZmFhMGNmYzk4ZjJkNyByZWxlYXNlMjYtbWFpbnQKKzcxNDIzIGI0YjI1MTFlMDNjNzUzMGE5YTM0ZDUwNTU2NjUwZGZlNzIzZmU0MWUgcmVsZWFzZTMwLW1haW50Cis3MTQyNCBkMzYxMGUzMzkyY2Y0OWEzNWIyNDE3ZTdmNzhiZjBmNTBmYzJlYWI2IGxlZ2FjeS10cnVuaworNzE0MjUgMDk1MDNjZTY2ZmYxMjNhY2YwMmU3MzI5MzQ3NzBmN2JmNWRiNGY5NCBsZWdhY3ktdHJ1bmsKKzcxNDI4IDhhNDU2M2QzYjVlODg5NWI5OGNiMWQ3ODRkY2ViMmY1ZWVhNDUwNWUgbGVnYWN5LXRydW5rCis3MTQyOSBhMjFjODQ4YWQ2MWVjNDQ4Njk0ODc2NWZlODc3NmUwOWVhNmFlZmM2IGxlZ2FjeS10cnVuaworNzE0MzAgNDBlYjk5ZTg5MzVjNjRkZTRmN2Q1OTA3OWY1N2M4NDA1MTBhNjZhZCBsZWdhY3ktdHJ1bmsKKzcxNDMxIGE2ZmYxN2E0MmFkMzFjN2E5N2Y1N2YwMDRmM2MyNWI4MjljYzIyMDggcHkzaworNzE0MzIgMTA2MzQ4MWEzNmY4YTJhMmEyYTQ1ZDE0YTk0MTUxMjJiOGY1MGYyNSByZWxlYXNlMjYtbWFpbnQKKzcxNDMzIGE0YmM4MGY1ZDZhMGY2YmNjNTE5YmYyYmUwZGYwODExYzVhY2VhMjggcmVsZWFzZTMwLW1haW50Cis3MTQzNCBjYmFhMWJjMzUwYmEyMDU5OGJlZDNjOWFkYzM5MWJhMmUwYzIyZDJhIHB5M2sKKzcxNDM1IDVmMzVjNTNhM2FkN2I4ZTEwZWYxZDNhODFlN2MzODlhNDdiMzhjZjIgbGVnYWN5LXRydW5rCis3MTQzNiBmOTY4OWQxNTBiYjlmZDgyYzMzMjE2YjYzYjg0NjY1YzI5ODJkMGY3IHB5M2sKKzcxNDM3IDBiOWU2ODk3MWExZTJmOTIwYTA5NTc4OGI4NGRjNTgyYTYyYWRkOGUgcHkzaworNzE0MzggOWVhOTU3NGRhYTViZjY5NGNhNTc3MTQ2NTdhYmZjNDY5ZDExNDU4MiByZWxlYXNlMzAtbWFpbnQKKzcxNDM5IDRhN2RiNDEyZmRkMmFmOGUyZjAxOWFmNTBhNmMzY2IxOWZmZTkwMTkgcmVsZWFzZTI2LW1haW50Cis3MTQ0MCBhYTliMGE2ZDdhZGRkNmExMTA1NzllNTRmYWRmOTliNzVjMDZiNzczIHJlbGVhc2UyNi1tYWludAorNzE0NDEgMDg5YzcyMTA3ZDdiMWM2MTI1MmE4MzAxMmMzMDk0YjBmMGE4MTFkZSBsZWdhY3ktdHJ1bmsKKzcxNDQyIDkxNjk0M2NmNTI0MzZmNzc0M2NlMzkwMDQ4YmNiMGEyNGRjMTVlM2MgcHkzaworNzE0NDMgZGJiOWI3MTc2ZWVmMGM2ZTA2NTU1YWFmZWFmYmEzMGZiZGVhMTc0ZCBsZWdhY3ktdHJ1bmsKKzcxNDQ0IDlkOTJlZWJiN2MzMDUwM2RjMDA2Yjc5ODRlYmEyM2IwODY3NmU0ZDggcHkzaworNzE0NDUgYjYxNGE1MWY0NDIzNmE2ZjhhZGZmMDk3MDZmZDUxMDFmMzE2ZTIzYSBweTNrCis3MTQ0NiA2YmY0MjZlNTUxZDU3MmUwYzJjZTUxZmE5Y2YyYWI5OTQxOWZmMDg0IHB5M2sKKzcxNDQ3IDAzMjc1MDRhNGY2YTFhZTQ3NDEwMzE4YzQ4NjE5YmE0Yzc4NDUwN2QgcmVsZWFzZTI2LW1haW50Cis3MTQ0OCA0Y2RkZWYxNDQ0MjgyNDRjZjBmOGUwZTJjZTRjZjQ2ZmM2ODcwOWI0IGxlZ2FjeS10cnVuaworNzE0NDkgMzIzNjZiM2UwY2E5OTA3MjUyNjc5ZGE3Njk3NTE5NGMzZjhmMmJiOCByZWxlYXNlMjYtbWFpbnQKKzcxNDUwIDBjMTFjMzQxOGQ4OWQ0ODZkM2VkMTk4YzgwZTI5MDY3NjA2NDMzYjQgcmVsZWFzZTI2LW1haW50Cis3MTQ1MSA5YTg5OTk5NzczNjM5OTRlM2E5ODY4ZDM0YWIxMzI4NjFlZGVhYTUzIHB5M2sKKzcxNDUyIGI5MTI1MTVmZTljZTIyZWE3YWI5MGNmOWQ4N2I1ZjkwZDY3MmU3NjAgcmVsZWFzZTMwLW1haW50Cis3MTQ1MyAyNzk3ZTVlNjAwOGYwZmU0YmFjMjNhZGU3YjZjNGZlNmVlODE0MGQyIHJlbGVhc2UzMC1tYWludAorNzE0NTQgMTVkNjA3NWMwODViMWUwM2IyODNmMDc3ZDg3NTZkODUzMjMzYmI4MCBweTNrCis3MTQ1NSBjOTUwMjZjMmYyYmEwYzNlMWUwZDY1NmRiMDdjYTIyZDYwNzU5MmI0IHJlbGVhc2UzMC1tYWludAorNzE0NTYgZjBmNjA4OTJjYmExYzkzODAyYzcxNTA1ZjEwNGIwZTQyNTU0ODhjMyByZWxlYXNlMjYtbWFpbnQKKzcxNDU3IDA2YjY0MTc4YTMwZDBmY2IwODY0Y2FlNGRkZGY1ZmE2MjM0OTdmNzIgcHkzaworNzE0NTggMGJlNjNjNzUwNDFhZGY3YzQ2NDc1NDE5ZjU4MzAxYmQxZjYyNjAzZiByZWxlYXNlMzAtbWFpbnQKKzcxNDU5IDFhOGJkZTE4ZDM1MzUzOTkzZGY3YTJhNWNiNWNlZmQzNGQ4ZGVjNzUgcmVsZWFzZTI2LW1haW50Cis3MTQ2MCA3OGE5NzM5ZGFmYTQxM2ZjMjNjYjhlM2RmNTQyYjY0ZWUzOWFkYzdmIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE0NjEgZjcyNDk3NGI4ZDg5YjMzNWE5NGI0NmM4N2ZjZTgyM2RiMDMyM2ZkNyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNDYyIDdlMjI5Y2EwYjkyYTVlODYyYjQ2NzA3MjY1YmIxYWEyMWFlNTc3Y2MgbGVnYWN5LXRydW5rCis3MTQ2MyBkOTM5MjBhMjVkYTRjOGM2YzJlNTc1Y2M5ODFmOWYzNTAzNmIxYWI1IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE0NjQgOGYxM2E0MTRkODQzMjk1OGU1ZDcxNmIzMTI5MjRiN2FiYjc1Yjg4OSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNDY1IGZiNDFmZTY3ZTA2MWEyOWM0NDgwOWVlZTdlNjg3Y2NlNmRmODlkZmUgbGVnYWN5LXRydW5rCis3MTQ2NiAxYzUyYjE0NTRmMWUyMDJmYWExY2ZkY2E4MWVjMmZlN2UzZmY1M2M2IHJlbGVhc2UyNi1tYWludAorNzE0NjcgNDQxMTIyNGNiODA2ODhiNDFiZWY3ZjA1MjVjOGI2M2YzZjY1ZDY1YiBsZWdhY3ktdHJ1bmsKKzcxNDY4IDJhMDNjZDA0ZDhmNDA4NjFiMjBjNmNjNzJmYWI3Mjg5Y2Q0MjkxNjAgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTQ2OSBmNjUyZmUxNjQ5ZWQ4ZjM4NWJiNDY2Nzc1MjBjNmNiODMyOTU2ZWYyIHB5M2sKKzcxNDcwIGYzOWQzMzc1MjU4MjE1NWM2Y2E3MWFlMjNiMWUxNDQyOWRjY2YzZmQgcmVsZWFzZTI2LW1haW50Cis3MTQ3MSA4YjJjZGZkNWFhYjZmYzMzZTBhMGE0NjgyMjE1ZWQzMWQzNjUyMzQ3IHB5M2sKKzcxNDcyIGVmMzU5MmU5ZTAxZTVkNTlmZWU2MGUyYzNkOTg1OTk2M2FlMmNlOTkgcmVsZWFzZTMwLW1haW50Cis3MTQ3MyBlYzIzOWNmYTNlNjE3ODU4MDRlZTQ2NDU4NTkzYmYxZmUwZjg0NTQxIGxlZ2FjeS10cnVuaworNzE0NzQgYmYyZWVkODY1YThhNGMzNTkyMGI2Njc2MDI4NDU5ZTA5MjgyM2MxMSByZWxlYXNlMjYtbWFpbnQKKzcxNDc1IDRhMzVjOGE1YmU0NmZlOWNjYTU2MmYyMDE3NGZkZmI5NjEwY2Q1YmIgcHkzaworNzE0NzYgMDAwM2I1YjRmMGMwMzQ5YzQ1NTUwNWZlYjkwZmQ5ODIyNWIxMzZhZiByZWxlYXNlMzAtbWFpbnQKKzcxNDc3IDYzMjg5YjgyYzg0OTAzMDEwYTgzMDk1MTdmZDc4N2VhZDY3YTA0ZWUgcmVsZWFzZTMwLW1haW50Cis3MTQ3OCA5MDM1NjliMTMyYzI0Nzg4MDVhZjA0MTE2MzViY2NiYjI1ZGVlOWQ4IGxlZ2FjeS10cnVuaworNzE0NzkgMmUzOGM2MTdmZDNlY2NlYmMxZWIzNDcyNWM3ZmJhYzkyODhhN2RlNyByZWxlYXNlMjYtbWFpbnQKKzcxNDgwIDM0NTVmZDc4NDY3ZTY1ODM3YjczYThkOGE1MDA2MWJkYjAxNzE4ZGMgcHkzaworNzE0ODEgMzczMjdkMTkxMmE4MTQ2ODYzMTgwYjQ4NDQ5OTc5MDQ3M2YwNjMzNyByZWxlYXNlMzAtbWFpbnQKKzcxNDgyIDUyODJjNjZkODk3MjViZDQ3NjViMzVmYmFmZjJkMWIwOTM0YWJkMjIgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTQ4MyAyZjljN2I5MGE3OTU4MGE4ZTRiMTRlN2MxYTlmZDYwOTRhYWFlYzU2IHB5M2sKKzcxNDg0IGYzNzZhM2NhMTdkMzdmOWEzMmE1YTY4Y2IyZmZlZjQ3ZmQwOGZiOTUgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTQ4NSAyZDM3MjA5ODg1ZTI3ZWI5ZDQ5N2VkM2U5YzM0ZWNjZGVlM2E3OTdmIGxlZ2FjeS10cnVuaworNzE0ODYgODg2MTI5ODU4NmMxMGYxYzViZTU5NDYwOWJiZTdhOTEwOTk3N2Y5OCBsZWdhY3ktdHJ1bmsKKzcxNDg3IGQwYjc0NDMwM2I4NGUzMjU0YmIwNTllNDg5YjA3MjMzNzQ1OWZlMzQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTQ4OCBjOTQ5ZGRjNDk0ZWI4NjZhZWQ2ODI2Yzc0ODVkZGVmODFkMzA4YmU5IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE0ODkgMjk3MDUwYWI3YWNhNDc2OTY5NWEyZjNlZjJjZDQ2ZTdiMzVlNjU3NCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNDkwIGYzNDI4MWRiNDdlNjFhYmJhOWRhMzM5YzZkYjE1MmU3MDZkN2QzMzggbGVnYWN5LXRydW5rCis3MTQ5MSAzNjI5OTgyODY2MzVkMDRmYTdmM2ZmNWE5MTA5N2FlNWI2YmQ0M2JiIHB5M2sKKzcxNDkyIDRhZjMxMTQwZGUyOWRhYWZhNGU5MTFhOWQ0ODBjZTNiZmFkZmNiMDkgbGVnYWN5LXRydW5rCis3MTQ5MyAxOTg5MzQ5Mzc5YjVhYzVkN2MzNTlmNjkwN2Q4NWQwYmMxNmE4ZmFiIHB5M2sKKzcxNDk0IGQ1ZGRkMzQyMWM5YWU2OGM0YjIzMTQ5M2NmMTdmMzQyMjJlMmQwMzEgbGVnYWN5LXRydW5rCis3MTQ5NSA3ZTk3OGNhNDI5MzBhOTA2YjBjY2JmM2MyMzdkNzhkNmU2MzgxNGVlIHB5M2sKKzcxNDk2IDNiMWI2MTQyNjkwYWEzYjMzZDViMGUyMmY1NDU2OWIzYzdmMTRlNDEgcHkzaworNzE0OTcgMDM3ZjVmN2U3YWIxZTZkYTA2ZjMzYmUyZjgyMDlhZmMzMjY1ZTI3ZiBweTNrCis3MTQ5OCBmZTVkMDdiZWI1ZDM3Zjg3N2Q3NGJiMWU0N2QyMDczMzk5MzNjNWZiIGxlZ2FjeS10cnVuaworNzE0OTkgYmI4MTY0ZGIxYmRhNjdmNmM0YzRiYzM3YzIxZTNmODhhODllYTJlNiByZWxlYXNlMjYtbWFpbnQKKzcxNTAwIDQ4NDg1NjA0ZWQ0ODdiMWRkNDNhZDAzMDgyNTc2Y2U1YTM1MmE5N2UgcHkzaworNzE1MDEgY2FkZjk1NWJjMThiZDE1ZTI4NTk3Y2FmNzljNjA2NDJkY2M3YzY5MiBweTNrCis3MTUwMiBmMjIxZmNlM2Q2YmEzOGNmZDhjODhmMDQyNjhlOGE0NmJhZTFkN2NiIHB5M2sKKzcxNTAzIDAyMWQ4YzgyZjI4NDQ3ZmU0NzhkNDIxMDg1MWYzMDNiOTg2ZmUxYjIgbGVnYWN5LXRydW5rCis3MTUwNCA5M2Q0Zjk4MjYxNWYyNjRlMGRmOTYzMTRlNTU0YjE1MTFmNjBmMzFhIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE1MDUgZDIzZTg0ZTQxOGNlOGQ3M2ExMWExODNlZGJmOWQxMGNjZmNmYjMyMSBweTNrCis3MTUwNiA0ZTA4YjE4ZTM4ZmJlMTRmZDM0YjFkZjhlNTgwMWNmNGRiNTc5Mjc3IHB5M2sKKzcxNTA3IGFkM2YzZDMwNDk2M2NkZmIyMjhkMWRmYzcyMWE1YTBmZDQwNjZiYzYgbGVnYWN5LXRydW5rCis3MTUwOCAyMWVmNDc1OGNhY2Q0MzBmYWU4YTIwZTU0NWU5NjJmMWNmYmZlYzZkIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE1MDkgYTgyNDQzMTI1MmUwZjI2MWQ1MjM5MWE0ODAyMWIwMDc1YTMzNTEwYiBsZWdhY3ktdHJ1bmsKKzcxNTEwIDI5M2RjNWYwOGU5OTBlM2QzNjViOWUyNTE2OGVhM2Y3ZDg4YTA0OTUgcmVsZWFzZTI2LW1haW50Cis3MTUxMSBlMDcyM2NjZWU3NGRmMTFkYjc5NjdjOGVhNWJkMmU2NTFhODkyMWE4IHB5M2sKKzcxNTEyIGE0OGZjZWIwZjBiM2ZmZDBiZmI5ZWRhOGQ1ZjM3N2Y1N2MyMTAxYTggcmVsZWFzZTMwLW1haW50Cis3MTUxMyA3NTRhM2Y3M2ZmMDdmYTU2ZGVmMzBlOTVlZWJkZDk3YjljZmJkMmE5IGxlZ2FjeS10cnVuaworNzE1MTQgM2IyNTkxMWM2YTRlYTZhOGUwNmFlNmFmMzZlOTA3ZGNhMDAyMmNlZiByZWxlYXNlMjYtbWFpbnQKKzcxNTE1IDE2ODQ4MmVhZmI1NjFkYjg3OTc0NWVlOWI0ZTk5NzU1YzJlYmNmNjAgcHkzaworNzE1MTYgZTJiOWIyYmM3MGIwZWNmZjBiMjY5ZGIyOTBlYjNhNGNkODA1OTkzOSByZWxlYXNlMzAtbWFpbnQKKzcxNTE3IDcxM2VmNjhlN2ZmZDAwYTUyNmVlNzBmYjA0MGRlNjI2ZTY4MThhZWUgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTUxOCA0Y2ExNDcxYmQxY2QzNjg2MDk5NTMyZDUxMWM3ZjI1YjE2ZTVkNDYzIHB5M2sKKzcxNTE5IGY0ZDU1M2VjOWRkYzk3ZTcyMzM5ODI3YmQxODcyNmY3YzRkOGU4ODAgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTUyMCBkN2M1N2UxNmI3M2M1ZjNkZmZmNjNlYTg4NzQ5YzFkOGRhMTcyYmEyIHB5M2sKKzcxNTIxIDQ0MDdlNGQwNzA4NDIxZGU4M2E2ZjBiNDZhNTBjODdjMjcxYjU2Y2UgcHkzaworNzE1MjIgMWNiM2JjY2U4MzE2N2NkZDJlYTBiZDExYjY4NTE3MGMyZTcxZWIwYyByZWxlYXNlMzAtbWFpbnQKKzcxNTIzIDI2MDY5ZDNiNjg5MTlhZGQ5NTExOTQzZGM2M2E3YzRjYmNlN2IyNmUgbGVnYWN5LXRydW5rCis3MTUyNCA0NjE2N2FkM2FiOTNmYTg0NzA1MDVhZGYxMWMzMmIzMmI2YmExMjgyIHJlbGVhc2UyNi1tYWludAorNzE1MjUgYzkxNmY4NTRmYWViMmI4NWUzYmZmOGRiOTExZmMzZTNmYmE5OGM3ZCBweTNrCis3MTUyNiA4ODY3YTViNjBhOTEzMzQ2YTlhYjkwYWExNDRlMjk1ODU1OTJjMGMxIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE1MjcgNjUwNmNjMzNlYmFkYzE5NGJhODdmOWNkZTRmZmM0ZWUzYTExZWExNCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTI4IDUzNmYxODBmNjZhNzc2MWM1NWZlODU3Mjk1NGI5MDk3MThkNGExMGEgbGVnYWN5LXRydW5rCis3MTUyOSAxNDA5MjhjNmNmNTFmMDEzZjgwYTg2YjY5NmZmNzBhYmI4NDIwYzZkIHJlbGVhc2UyNi1tYWludAorNzE1MzAgOGM4MmI3YzUxYmRkZTMwYTVhZjRjNGQwMDVlMWRiOTJmY2EwMDkxYiBweTNrCis3MTUzMSA0MjcyOWVkZGJiNmMwYjAzMmU5ZmJkZWIxNjJhYWM2ZjczYjY1OGFlIHJlbGVhc2UzMC1tYWludAorNzE1MzIgZDBhNzNjZjQ2MTgwZDQxMmE3NTQ1NzZjMGJiMWZjZDFjMDM4OWRiMSByZWxlYXNlMzAtbWFpbnQKKzcxNTMzIDA5ODg4NWM2YjEwMWQwODU3OGFmZWVhZjI0MzA4YWJjMmM4MzdiNWUgbGVnYWN5LXRydW5rCis3MTUzNCBiYmI2M2M3MWE5ODMxOTE0MzQxNjA1NTZlZTcyZmY4MWYzOTUzZDgwIHJlbGVhc2UyNi1tYWludAorNzE1MzUgOTNhMmQ4MGNkMzRkMDM4MDE0ZDJhN2JmZTMwZmFkMzg0ODhhYzMwZCBweTNrCis3MTUzNiA2NmRhNTE0ZTNmYTM5NTI5MDBhOWZiODk2ZDY0YWQ2ZmFhNjQ0MTg1IHJlbGVhc2UzMC1tYWludAorNzE1MzcgYTI0OTJiNGU1MDVkZjNmYzMzN2FkMjVmZjY4YzkyODc4MzI3NmM1YyBsZWdhY3ktdHJ1bmsKKzcxNTM4IDgzMjI4YmJlNTkwNjc4ODE0ZTRlNDRmZjI0MTM1NGY5NjAyODc4N2YgcmVsZWFzZTI2LW1haW50Cis3MTUzOSA3ZTMxOWVlZmFiOGM4ZWY4NGU1NGQyNGU5MDc4NmJjYTFlMGExMWY5IGxlZ2FjeS10cnVuaworNzE1NDAgNDgwZjdlYzNiODY5NjA4ZmZkYjg4MjJjZGNjZWU1YTJiNWNhMzk1ZCBsZWdhY3ktdHJ1bmsKKzcxNTQxIDJlZWM1N2FiYzUyMzhmMzk3YjJlN2Y3M2ZhZTM4ZTM4ZDM5ZDE3YTggcHkzaworNzE1NDIgZTllMmFlM2JmYmMxNDA0MzMwYzFjNDUzMjk4NjZiZmYxNTkzNDdmOCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTQzIDhiYzRiYzg3Yzg4NTllNTg5MTdkMzc5OGIwNDY5NTU4Njc4YWRmMGMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTU0NCBhZTc0MTQyMDg5ZDJiYmZmMjY5M2U0YjBiZTVkZDBiMjE1MzY1Nzg1IGxlZ2FjeS10cnVuaworNzE1NDUgZGEwZjdmYzc4N2Q4MjZkOGNkZjdmYzIzZjc2MmQ0N2FlZDU2N2U0YiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTQ2IGJjNWM1ZDdhMmExNDc5YTA1NzZkMzc5ODg5OTI2Y2ZhZjRjYWMxMDEgbGVnYWN5LXRydW5rCis3MTU0NyA3ZDQ0OTk3MTFhN2Q1YWRiMmMzOTY3ZTA1M2ZiMmMyOTIzZmNiYmIwIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE1NDggNjIyYWJmNmFjOTdmYWIzOTBkMzJhMzE4OTkxYTJiMTllYjQ1MzgzZCBsZWdhY3ktdHJ1bmsKKzcxNTQ5IDEyYThkMTk0NzE2NzkxNGFkMDM5YjRlMWY0MDhlMTBhMjVkYzYxNWIgcmVsZWFzZTI2LW1haW50Cis3MTU1MCA1NDcyNzg5NjUxZTE2MTEwMjI4ZWU2MWRjY2Q5Y2QwZTk0MGQxYTVhIHB5M2sKKzcxNTUxIGM3NDBmZWZhZTFiYWIwZTkxZDFmMGJiZTU3MjMyNDRjNjdjY2RkN2EgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTU1MiA0NjA3ZjU0ZTc2OTM2Yjg3ZGFjNzg4YjRjN2JlZjhiMTkwOTMyYjZkIHJlbGVhc2UzMC1tYWludAorNzE1NTMgYWI3NWRhMjY2ZTU3YzU1ZTc3NzAyNGZiYjg0YTZhMzAwOGRjNDgzNSBsZWdhY3ktdHJ1bmsKKzcxNTU0IDM3NzA2NTJlYjBlNTA5OGJmMWM0MjYwNDExOTEwYzRjOTNlYjUzMjEgbGVnYWN5LXRydW5rCis3MTU1NSA5ZTNjOTc2ZGE1ZjQwNTI3ZDM5ZTcxNGQyMWNlY2I3ZWNlMmMyZGExIGxlZ2FjeS10cnVuaworNzE1NTYgNWVmMThmMGY0MzEwOTFkMDVjMmI0YjI2MWUwOWExODA1OWQ4NWZlMCBweTNrCis3MTU1NyA2ZjhmYzZiMTY3ZWE4YjAxMDgxNDg1OTQzMzhiNjc2NDliMDk0YWYyIHJlbGVhc2UzMC1tYWludAorNzE1NTggZTQ5Y2Q0ZjQ3Zjc2MjBiMDI3ZTk2YmMyODAyYTY2OGIwNjc1N2ZiMiByZWxlYXNlMjYtbWFpbnQKKzcxNTU5IDk1MTMyY2MyMmVlNWFiN2I4ZGFlYzYxNjJlYjMyZDgyNjMyZDMwODcgcHkzaworNzE1NjAgZmJjMzdmYmQ5NDE1ZmY1ZDQ0ZTcyYzVmMTFmNThjMTRkOGVkNTQxMyBsZWdhY3ktdHJ1bmsKKzcxNTYyIDBlNDY5ZGE2N2Q2M2E1ZjQ4YjVmZTFmNGMwYzk2YTY1NGMxZmU2YWUgcmVsZWFzZTI2LW1haW50Cis3MTU2MyA5OTBmMjU3OWVhZmVjOTUwNWViMDMzYWIzMWI5ZjhiMzQzMTJjZTM4IGxlZ2FjeS10cnVuaworNzE1NjQgMWRjNTNlMGExNDdhNzA0MzZiZDk2MzZmNjFhY2U4ZTg2NGM2MjhmZCBsZWdhY3ktdHJ1bmsKKzcxNTY1IDUzMDk4ZjI3MGJiZGEwM2Y3MmViYTA4ZTY1NjdlZTNmNTE3NzlmNmYgcHkzaworNzE1NjYgOTNkMmJlZmNhMGE1NGZlZTc2YTk5MDc3MzUxNjkwYWU3ZDE4NTdjZSByZWxlYXNlMjYtbWFpbnQKKzcxNTY3IGFhYzcwYTNiYTI1MGYzYTQ2YTJjOTEyZDkwOGNmZjljYzRlM2VjNjQgcmVsZWFzZTMwLW1haW50Cis3MTU2OCA3NGE0YTI3ZWEyOTFjYjFmZTY5Y2VhZWEwMDYzYjZiNzMwNGFlZmY3IHB5M2sKKzcxNTY5IDhhMTczMDU3ZDkwMzFjNTJmOGUxNmQ4MjU1Zjc4YjYyNTJjZjdhOGIgbGVnYWN5LXRydW5rCis3MTU3MCAzYmE2NWVlNDFmZTdlYThkZmRkMzkzODUzY2Q5MzkyNDk4MWMyNzIwIHJlbGVhc2UyNi1tYWludAorNzE1NzEgOGVlZTk0Yzc0ZTljOTg3YzkyZTI3OGMwZjJiMGVlZGFmNmUwYTRlOSBweTNrCis3MTU3MiA1NmFjM2Q1MDk1MmM4NzdkMDFhMDVmMzc0NDFjYWZjZjk1MjA5YjgwIGxlZ2FjeS10cnVuaworNzE1NzMgNzc0ZjdiY2FkMjJjNjlmNjdkMzFlNTMwNTE5NTMzMTExOWIxYTI5ZSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTc1IDlmZDY2YTIxYWJkMTk2N2QzZjA4NDE0ZDE5OWE2ODVjOWFhMDQwNGQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTU3NiAyOGVhNTRhNmJiNjQ2MjU5ZWE2M2RmYWNlMzVmOTEyMWVjZGVmODU4IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE1NzcgYzY2ZDRlMzA2ZmI2ODUyMTI0Mjk3MTUyYTJjZGE3ZTMzZmJiMDRmMiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTc4IGE0Y2M0NmNhYjZhNzQzMTJiYWNhNzIwOGQ3ZjQ4ZGNiNjU0OTg1MjYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTU3OSBjOGZiMzk4ZWNhMjM3MzM2NDdkZGZjZTQwZTZhZjQ4ODRhYzJiYzhiIGxlZ2FjeS10cnVuaworNzE1ODAgNTdiOGRjNGE4ODg4ZmY5MTMzNmEzMzc2YWU5YWRjYzkzYTE5NWM4ZCBweTNrCis3MTU4MSBjY2YwZTY0MDk1MzZkOGMyYzg2YjZkMDUxMDgzMzFjNTA2OTJhOTdjIHB5M2sKKzcxNTgyIDU4Yjc0OTY3YTU0MjVjYjcxZDExZTQ2NjIxOGQxYjQxMGQ5YmM4NjggcmVsZWFzZTMwLW1haW50Cis3MTU4MyBjOTdlNDVlOTA1OTllNjVhODVlMDhmYjM0ODQ5OWQ4NDQ4MzYyMzgwIHJlbGVhc2UzMC1tYWludAorNzE1ODQgMTc3ZTEwNzMwNTJjODU5YmVlMTdlZDI1ZDQ0NTYzMDcwNzExOTgzOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTg1IDQ3MDM5NjVkYTJjZWE5ZmY4NDNjMjBmMTc1MWUzM2RjN2ZiYzRhZGUgbGVnYWN5LXRydW5rCis3MTU4NiBlMDlhNjcxYTU5MGI3YmE1ZTI3NjQ2NDA3OWYyYmZiYTNmNDE5YzQ2IHJlbGVhc2UyNi1tYWludAorNzE1ODcgZTAzYmE1ZjZmNDk0MDYwM2UwNzU5YWYzNmZlMTJkMTk4YTRmMzM1MiBweTNrCis3MTU4OCA4NWJjMjUzN2U4M2UzZDk2MjQ1Zjk2ZGJlNmJkNzFhN2Q3N2QzZTQzIHJlbGVhc2UzMC1tYWludAorNzE1ODkgN2JhYTY4ZDY2YzhmYzc5OTg0MzM1MGZkMDA4NGI1MzNlZWQzNjQwMCBsZWdhY3ktdHJ1bmsKKzcxNTkwIDcxZjQ4YWRhZDg5MjNlN2Q5ZTc5MWQ2YjM2ZGYxYzM1ZDZiMzdlM2UgcHkzaworNzE1OTEgNjA1MTM4MDg1NzdmMzIzOTRmMjk3ZThjYzJlYTNjN2NjNmQzNTkwYSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTk1IDA5Njc2N2IxODQ1MDE4NjU4ZjRhM2ZkZDNlZjM0NjI2NTc3NTIzOTEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTU5NiBlN2RiZmQwMjNmZjUyMWVlZjkzY2QzM2U2MTM0ZGI2OWYwNjM2MTQ2IHJlbGVhc2UzMC1tYWludAorNzE1OTcgNzk0NTI1ZWQ2NGZkNDIzYmM1Y2ExMzFlNzBiYTE0Y2E5MTBhYmE4NSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNTk4IGRhZDNkMmI5YTg3NTNmNDVmMTk2YjcwMDY0NGNmOWVmYzI2YmNkOGUgcHkzaworNzE1OTkgYzE3YzViYTliYjZjYzdiZjc2YTI1MzM0MGNkYWVkZmRhNGRiMDMzYSBweTNrCis3MTYwMCA0ZmViYTA5YTgyNmJhOTllNWI0ODI3MDdiM2Q5NjQzZWJhMzQxNTZmIHJlbGVhc2UyNi1tYWludAorNzE2MDEgNjk4ZmEwMjRlN2QyMzlmM2FkYjdhMDNmNzdlMzU3ODdlNmYwNDk5MyByZWxlYXNlMjYtbWFpbnQKKzcxNjAyIDZkOTVkOTc5M2ZjZjUwMDAyMDczOTQ1ZTRhZWIwZDNlZjE1MGZhNWUgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYwMyAyZmQwODgzMGE5M2YxMzI4MTkwNTA1ZGQ4YzE5NjczNTMyZDUwYjdhIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2MDQgNTQyODNiNGExNjU3ZmNmYjZmZDQ3YWQ0M2VkNzNkMDVmZDNkN2RiOSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjA1IGFkM2FjY2RlMGVlN2E3YmM1ZTA4OTI3N2RkZTk3MThkODExZTY4NTQgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYwNiAwYjdlNDE0MTgzNDMzMjY2YmU3ZTY5YmQzNjQ3MjlmNDUzMmFmOGFmIHB5M2sKKzcxNjA3IGZkN2YzNmVhZDBjODE3MGJmZWE2M2Q5ZjU3MDFlZmJjMWZmMmVkMTAgbGVnYWN5LXRydW5rCis3MTYwOCA5ZGY1ZGRjMTk4YTgwMGJlYTI0YTIwNmE5NmY3NDFlYTA0ZDIwMDZlIHB5M2sKKzcxNjExIDE2NzA0YjE1ZGYzZWJlN2Q1M2Q1ZGEwNjJlZDFiNDNlZTAwMjFhMDEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYxMiBjMjQzYjEwYWI3MzA1NTI1ZTUwZjg1MzFhMmM5YThkMWZiMWFmYTkyIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2MTMgMjk3MjliOTA4YTgyMGRjYWMzMGY4YzBmMDY0NDI5OTVmYzU1MzBjZiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjE0IGI4ZjQxZGI4ZjZhZGEwOGE1N2UxZjM3NzIyZGY4ODJhY2QwMTNlOTggcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYxNSBhYmVmY2EyZmQ5MmUyMWQzYzM3NjVhNmQ3YTJhYThiOTY5OWIxNWVjIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2MTYgYTc0ZTEwMTkxODU0ZDIxYTA2MTU4ZjM0NjY0MTRmMzYxYzJkZjIwYiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjE4IDQwODc2MWNhM2Q5NjYzYjZlYWQ1OGQ3N2I5NGY5N2NkMDBkZWI5OTkgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYxOSA2MTlkY2FjOGQzODkwOTY1YjQ0NzcyZGNmNzdhN2M1MjNjYjRkMThlIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2MjAgMmNhMjA5ZjNhYWEyOTQxNTFiYjM3Y2U3ZmZjODUwNzgwZjVjOTk5NCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjIxIDEyYmRiMzk3MmUyYTdhYTVjZmMyY2FkMzYyN2MyNjhiYjc0NzI2NTIgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYyMiBkODgxYjA2ZGNhMzg4YWZiZWVkOTE4MTdmOWExNTU1Mzg4YWY4Y2I0IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2MjMgNjczNDBmZDZhYzhhM2JhODg4NDFlZjM5ZWVkMDkzNTE0MDc1MzY2MiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjI0IDJkNjExNmVlZjJiMzY3YjNmOTJiODc4ODkxODlkNzhiNmVhOGI3NWYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYyNSBjZTY3ZTc4M2E2ZWQyM2Q4NjM2MmY1OGQ0Njc5NDYzMzM1ZTQ0ZDkzIHJlbGVhc2UyNi1tYWludAorNzE2MjYgMDdkMjM5ZWVhYTYyZWY5MWI1OTRiYTU0Y2E5YWY0Zjc5MGM4NWNlMyBweTNrCis3MTYyNyA1YjEwOGViYmZjMDgzZTdmZDMxZjczMTYzNTk0Mjc4MTlkOGQ4YmQ5IGxlZ2FjeS10cnVuaworNzE2MjggNDQxOWUwNjIxOWNhYjg5MmNkNTY5MTAzNDNjMGYyZTY5MjQwYzM1NCBweTNrCis3MTYyOSBkZjI2MzhiOWJlZTJlZGMwZjYzNmY0ZTMxZTA1MzY5MDAxOTI0MzRhIHJlbGVhc2UzMC1tYWludAorNzE2MzAgNmJjZGMxMzFmNTNjYmUzMTA4NzYxMDhmOTk4NmM1NjU0ZDkxOGUwYSByZWxlYXNlMjYtbWFpbnQKKzcxNjMxIDQ2MjgyMTdiMDEzYzQwNGZmZjBmNmZiMjRkZWJiYzAxZDk2ZWVjNDIgbGVnYWN5LXRydW5rCis3MTYzMiA3YTY5ZmZjNGY0YWUzNjZjNWUyNTMwNjY5YWRlZjYyZjM1N2E4MjJkIHJlbGVhc2UyNi1tYWludAorNzE2MzMgMjBjZjdmOGE1NDA1MmZhMDJhMmM3ZWE5YmNkYmUxMDQxYTIyNzEzZCBweTNrCis3MTYzNCBmMzI1ZWRmZTBjM2FjYmMwYmI5ZmQzNDBhYTUwMGMwYmQxYjA3ZmZiIHJlbGVhc2UzMC1tYWludAorNzE2MzUgYzU0Yjc4NGE1NmQ1NWFkZGI5NGVjMmRmZjUwMmQ1NzE5NGEyMTFlNCByZWxlYXNlMjYtbWFpbnQKKzcxNjM2IDVmZjkwMzMyZjkxMGUzYjdkNmIyODA2OTYxMDgyMGU3YjE3MTRjN2UgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTYzNyBlZWJlNWY3ZGFmMWU3OGIwNDlmMzZhY2FjNzBlNTIzMDQzMjZjZWIxIHJlbGVhc2UyNi1tYWludAorNzE2MzggNDNlZjc0YmZjNTY5NjE5YTkyZTgxYzAwZTkxYTNkYmFiNDU3ZjEyZCBweTNrCis3MTYzOSBhYzkzYzNkOGUxOTIwNWI4N2Q4Yzc3YTY4NmUyMjQ2NzkwZGFhZmRjIHJlbGVhc2UyNi1tYWludAorNzE2NDAgNDhiNWZhZDljZTFiMjg0YmE3NWYyZTFkNjViODBkYzczMDY0ZmUyMyBsZWdhY3ktdHJ1bmsKKzcxNjQxIDc3ZjkwOWFjM2UxMDIyOTY4ZDYwNTFhZGZhNzRhM2Q4YWQzOTAyZjQgbGVnYWN5LXRydW5rCis3MTY0MiBkM2YwMjA0MDBmZjI3ZWZhMzNhZWM2ODJhOTk3NmY3ZGQwNTdhYjI1IHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2NDMgYzUyNGJmZWU3MDNhZTUyYzhhNzQzMjA1ZTJiNjc0ZmRlNjI3ZGMyNSBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjQ0IDNhMTFhMmFkOGY3YjgwOGU2MGM4NjhhM2M2ZDZiYjJlMmJlNWY0NGMgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTY0NSBhNjc5MGEzYjgwYzNhMjQwYjNjYTljYWUzMmRiYmE1MDZlZGQxZTRkIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2NDYgY2U0ZjdmNDg5YmQzNjFhYzg5NjY0ZTlmNTk5NzFhOGI2N2M0YWRlMiBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjQ3IDQ1MDBhZGMzMWJlM2I4YWVjMDVkM2ExMDUwYzFjMTkxNzZlMTRlYjYgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTY0OCBlZGViYzg5M2IwMmNlMGZiMjcxNDNiMTAxZGI0YzFlNGZmZDdlNzgzIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2NDkgZGI3MzA0YmZiZjdkYzNjZjcwNjJkNjVkMjI2NWYyOTkxOTliMWVkNyBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjUwIGEyOGFmNTVjNmU1OGYwMmE4ZGQxZGZkZmM3MzE2MmVhZmI1M2NhY2EgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTY1MSA1ZDQ3MjljNDcwMzM1OGQ0ZmRhNzY4MWI0NDIyZmYyMTk4YjQ4MmJmIGxlZ2FjeS10cnVuaworNzE2NTIgNzNiYjQ5NDUxOGRkNmQzOTA1YzgzNTY4YmExYjliZjNmYTg3NzE5NCBweTNrCis3MTY1MyAxZjVmOTkyODAxZjlmNjljMmFmOTA2YTljMmI5MmJhM2Y2NmMxNzU0IGxlZ2FjeS10cnVuaworNzE2NTQgOGY2NTM1NjcyOTFmMGJiYmEzZmIzN2UyNGE0ZGZlMGFjYzljYmU5NyByZWxlYXNlMzAtbWFpbnQKKzcxNjU1IGYwYTE2ZTFkZWVhMTNkODhiYmFlMThhZmY0ODM3Y2MxY2U3Y2YxZjkgcmVsZWFzZTI2LW1haW50Cis3MTY1NiA5NzViZTFlYjNlYmYzN2RiNWMxYzBhYTQzZDE5MTBhMjgyNjY0Zjg2IHB5M2sKKzcxNjU3IDczYmZjYjM5ODg4NjJhYjgzYmY1MDdkMTVmNzUyZjg5MjlmYTdkMGUgbGVnYWN5LXRydW5rCis3MTY1OCBjZjE5MGZmMmE3MmM0YzQ3NjJmZjc4MzYwNmIxNzRiODVlOWIwN2QxIHJlbGVhc2UyNi1tYWludAorNzE2NTkgYTYzYjQ2YWRlMmI3YjYxYzdkMDYxNTFjNzM3ZDRlODdjYTFmNDkxYSByZWxlYXNlMzAtbWFpbnQKKzcxNjYwIDkyZjdhNDYwZmY4MjhkZGFiZWU3ODAzMzlkNDE2YWQ5M2M3YTQ0NjcgcmVsZWFzZTI2LW1haW50Cis3MTY2MSBmMDIyMjhkMWY5MDgwYzJiZWY5ZmNkNWE3YmRlNzRlMTQyZDQ0M2FlIHJlbGVhc2UyNi1tYWludAorNzE2NjIgODlkZWI2YmM4MmU0YmY4NTA0YTliYzEzZjllNmQ3NjUxN2JmZjdjMiBsZWdhY3ktdHJ1bmsKKzcxNjYzIDk3YWU3YTcwOWMxZDQxMWE1MTI3NmZjNzhhN2YxOWYyYWU5OTJlNGYgcHkzaworNzE2NjQgODY2YThiZWVjMDY1NTA5ZTE2NmI0YjBjZDYxNGM0ZDAyMzMwNjlhNiByZWxlYXNlMzAtbWFpbnQKKzcxNjY1IGI2NTNlYWIxM2I3MzI4NmU5NzVkYWQ5MmE5YmU3NjhiMWE0M2VhNzUgcHkzaworNzE2NjYgMDdjNmIwODg5NjhiMjA1OWRjMmRjOGQ2ZTgzY2M4YjYzZWRjZjcxZiByZWxlYXNlMzAtbWFpbnQKKzcxNjY3IDA3YzExMTQ2OTVlOTlmMmY1YjFiMWVlNTkyNDY3NjNmMTkyNzQyNGMgcHkzaworNzE2NjggZDg0YWQ5NzNjZGUyNWY2NjVjM2YyNmI2YTY2ZjdjNTUyZDIyZWRmNyBweTNrCis3MTY2OSBjYzU1NjU0MTVhZGE0MTdkY2EzNzcyNDcyYTRjOTYyMDQ5ZjBkZDNlIHB5M2sKKzcxNjcwIDk3M2Y0ZDdhYTg3Y2ZmZGFhNjhhMjhjY2Y2YzExMDZmNzUyM2RmNzMgcHkzaworNzE2NzEgMGNmNzc5OWZhMTkwMmE3YzAyMDE2NWI5NjEyMjYxOWU1YWI4MGE1YSBweTNrCis3MTY3MiAwMGUwNTcxMzZmYzY3N2Q1NDNmZWMwNjk5MTYzNGYyMjhjOWFhYjFmIHB5M2sKKzcxNjczIDBlZjVjZWRkYjFjM2RiYTQxYmQzMmI1NjRkODBjZWYyZWI2MmNmZmYgcHkzaworNzE2NzQgYzYwYzFkMzlhOTUxNjUxYzBiYTBjMmE1MGU0MmVhNjc4ZjVlNWYyOCBsZWdhY3ktdHJ1bmsKKzcxNjc1IDk4YTUwYTQ5ZGM4NjUwYmM5NTdkZjIyMDI4NzkwY2MzMjI3Y2Q3YjkgcmVsZWFzZTI2LW1haW50Cis3MTY3NiAyMTI0OTViMDQxMGMzM2VmZTRlMTAzNjJhNzBhMzY5ZDkxMjlmNmVjIHJlbGVhc2UyNi1tYWludAorNzE2NzcgOWVhYjA1NzNkODQ1NDgxN2I2ZTMyMjYyYWYzZTZhYzEyN2VkNTgxOSBweTNrCis3MTY3OCA4ZTUxZmFlOWJiNzU0MjlkNGQ0MzI1NjJiNTk3ZDJlMzkyYTBjYjBkIHJlbGVhc2UzMC1tYWludAorNzE2NzkgODJhMmVmNTk2M2UwZjA5NWNmY2MzYjY5ODAzODMxZDE4NmE2OGE0MiByZWxlYXNlMzAtbWFpbnQKKzcxNjgwIGRiMjkyZWJhN2VjMWFhYjE2ZjU0YzQ1ZjEwMGY3NDUyYWNmNmFmMmEgcHkzay1zaG9ydC1mbG9hdC1yZXByCis3MTY4MSBjNzQyOTIwYzQ1Zjc3MWM0Yjc2YTJjN2UzNDlhOTI2MDQ5ZjQ4M2VlIHB5M2stc2hvcnQtZmxvYXQtcmVwcgorNzE2ODIgNjg3NGQ3MDU0NjA0MzI1N2JiY2YxMzI2NTgxNjNhOTI3ZDdlZGFlNCBweTNrLXNob3J0LWZsb2F0LXJlcHIKKzcxNjgzIDkwOGM2Mzk4MGVlY2UwNmNiM2I2NDMxOWU0OTYxODE0ZWYxZGNlMGIgcmVsZWFzZTMwLW1haW50Cis3MTY4NCBhYjA2YTM4YjU5MGNjNDk3OGQ3ZDEyMzk3MWM0MTU0NjI4MWRkMTlhIHB5M2sKKzcxNjg1IGE3MDliYjVkZmFmNTExNjU1MDBlZWVmNmIxNWJjYzcxMjI1MDgwMTIgcmVsZWFzZTMwLW1haW50Cis3MTY4NyA5ODYyZDUyNzJkODU3YWE3ODQ0MDEyYjI4OGUxZGZkMjlhMGYwMjNmIHB5M2sKKzcxNjg4IDY2ZmRjZmE5NDAwYjAxZWNkZDQzNzNmZDk2N2UzZWQzMDM1OGM0Y2YgcHkzaworNzE2ODkgZmU5OWE1NjJiNzA4NWIyODQzNmI4NTlhYzkxOWI1NGUyMGE0MmQ0MSBweTNrCis3MTY5MCAyNjk1MWU1OTU4OTMxYjhkMjkzMmUwOGU2ZDc1ZTk5ODJiMmFhOTFlIHB5M2sKKzcxNjkxIDhkOGYyZjk4YTc1MmE3NjVkZGIwNWE1N2U0NDM4ZTQ3Y2Q0YWY5NDkgcHkzaworNzE2OTIgMTM5MTZiYjJlZmYwN2NjNDM3ZTdkYzcwNTQwNTEwZjhkOWJlZmNkMCBweTNrCis3MTY5MyAzZTMxOGM0YWY5NjFjM2EwOTY5M2Q3ZDk3N2ZjMzE2NDdjYjkzNDkxIHB5M2sKKzcxNjk0IDI0OWQ1MDBhNzc5YTg3Yzg4YTNjZjc5MmQ3ZGM2NTMwNWI5ODk3NTUgcmVsZWFzZTMwLW1haW50Cis3MTY5NiAwMmNiNDIwZDg2MmU2OWFlMjBkODYwZDMyZmQ2OWEzMjM1NmJhOTgwIGxlZ2FjeS10cnVuaworNzE2OTcgODU4YjlkMDhlMzRiNGVkZWU0YThlMzY5ZjI4MDY2MzBmYzg5YTA1YyBweTNrCis3MTY5OCBjODRjNzU1MjViYjM1YWVmMmYwZGVmMmU4Yjc5ZDBjMDI3NmUwOTBlIHB5M2sKKzcxNjk5IGQ4OTVhNDJkZmM5ODkyZGE2YjA0OGYwY2YyNDhkMjZiOGIzZDIxNmUgcmVsZWFzZTMwLW1haW50Cis3MTcwMCBkNmRhNjQ2MzU0ZDIxZTcxZGQ2NWE0OWUwZmJjZTc2MDhhZDBkZWFiIHJlbGVhc2UzMC1tYWludAorNzE3MDEgZDQzZDY0MjUyZDM2MTFkOTY3YmE3OWM3MDgzYmYwNjQ0Mjk0N2VhZiBweTNrCis3MTcwMiAyZWQwZDdlMWQxNzczNTc4OGI0NDZjYTE5NWU3MThjNTgzZjg2NzRhIHJlbGVhc2UzMC1tYWludAorNzE3MDMgZmUxNTUyNmViZThiZjY4Nzk4NWRlYjMyMGYzYjI5ZjlhY2Q1MGE4MiBweTNrCis3MTcwNCBjNWM4NjgwZWUwYjFjMWZhNGNmZTc0YTVlYTRkMDFlY2UxZjgxNDg2IHB5M2sKKzcxNzA1IGFkNWM3ZWFjY2VhMTEyNTJlZjg0MmU3OTA3NWZkNDg1ZDExNDBmMjUgbGVnYWN5LXRydW5rCis3MTcwNiA4MjA5YjZjMzJlNjEyYmM0NTdkZDYyZmY1NWIxOGIyNjJlNjBiYmFiIHB5M2sKKzcxNzA3IDhhOGRjN2Y4NTQzZTg3Y2Y2NjFmODcwNTgyOGJmZGNiZjYwMjYzMzggcmVsZWFzZTI2LW1haW50Cis3MTcwOCAzNDEyMTU2ZmI4ZWY2YTcxZmM0M2E4MmFmMWMwZTFkNjU2ZWY0MGNiIHJlbGVhc2UzMC1tYWludAorNzE3MDkgNzlhNmM2M2FjNWIwZDIwZWNlOWFiOWVjMDhkOWJjYmY3N2MyZjRhMiByZWxlYXNlMzAtbWFpbnQKKzcxNzEwIDk2ZDgyZmFjZDg5MGU5ZjZkOGU4MjI5NzNhOWUzMzdkY2ZhYzg3NGYgbGVnYWN5LXRydW5rCis3MTcxMSA2YTdmYTA0ZDgxMTFlNDgxM2IzNDc1YjkxNzE0ZThiMGY1YzU4NzcxIHB5M2sKKzcxNzEyIDU2ODg3YTJhOTBhZWY2MzkzMDE1ZmEzMzJjZDgxZDQ5YWRkMzdiMDggcmVsZWFzZTI2LW1haW50Cis3MTcxMyBmYjA4ZjYwYWI1MTExN2M4ZDQ2YjljYjdhOTJiZWMyNDRhNGUyOGE2IHB5M2sKKzcxNzE0IDRmYTQ3Njg2YzBkNzBmZGVjMzAxMjc0MDk0NDg1ODk4MTZlNTJiZGIgcHkzaworNzE3MTUgOTMyMjM2MDNjOTkyMjA2YjhmZDk4MjU3YTI3NTVmMGFmZmQzNWZhOSBsZWdhY3ktdHJ1bmsKKzcxNzE2IDRkOTk4MjA3Y2ZjM2U5Y2MzMjgxZTBhMWVmOTkyZWI0OTk2MmJhMDQgcmVsZWFzZTI2LW1haW50Cis3MTcxNyA3MmE3MDAwYTg2MDk0MmM1MDk2Y2ZhOGU1ZGRkMWYzZDA3YzBjZTA1IHB5M2sKKzcxNzE4IGE0ZjExN2U5MjBmZGE2MGUwZmVjNmY4YjM3MjNkZjY4YjBmZTBhMGYgcHkzaworNzE3MTkgYzRlOWE4NzVjOWE1NGZiNzJjY2I5YTYzMGZlMzdjMTQ1Y2E2NzdlNyBsZWdhY3ktdHJ1bmsKKzcxNzIwIGRkYTE0YWZhMTJiODViMGQ3YTBjNTZkMDljOTQ0ZWUyODNiMmY2MGUgcHkzaworNzE3MjEgOTc1NWQ4ZGQzMzY2YWNjZDI0NjIxZjQ5NDczZDdhMzYxYTBiYmZhNyBsZWdhY3ktdHJ1bmsKKzcxNzIyIDc3OTBiODVlNzAwOWJlN2FkMjFhMTVjZjlmOGU0N2U0ODVmYzdjOGMgbGVnYWN5LXRydW5rCis3MTcyMyAyODY0NWE5NjEwMDQyNDA2YTY1ZTk1OWM5ZjUwMDkxNGVlOGY2ZTc3IHB5M2sKKzcxNzI0IGMyNzdjZjQxOTNkMTFjNzY5OTk0ZmQyZmQ2ODVhY2VlMDhkZDYwZTUgcHkzaworNzE3MjUgM2U4ZGM1OWQ2NGRlNDQ0MDM2NDVjMmVkYzQ0ZDY2ZTc5NjI5NmZmNiBsZWdhY3ktdHJ1bmsKKzcxNzI2IDMyOWNiMDJmMThlNmYyMmU0ZTdlZDUwM2ZjZjg0YzdiYjQ2MDc0MmIgcmVsZWFzZTI2LW1haW50Cis3MTcyNyA2ZWMzZGYzNzVmNWE4MjY2NzYzZjQ3OTYyYTgzMDAxMzMzZDFiNzNlIHB5M2sKKzcxNzI4IGNmMjFlOWQyOTA2MmYxNmE3NTgyZjAxMWE5NzRmMmZlNWJiM2JhMzIgcmVsZWFzZTMwLW1haW50Cis3MTcyOSA3MmZmNDRjMDUyOTViOTU1YzQ2M2NlYTJlMmE0ZTJhNTgzZGNiMzhjIGxlZ2FjeS10cnVuaworNzE3MzAgYTZkMzI0MTM2ZTAxNDViMjk1OGY5YWFjZTIxNTU4NjdiYTJkMTc3ZiByZWxlYXNlMzAtbWFpbnQKKzcxNzMxIGE4MmI1M2RiYzY1NjU1ZGFhZTE1ZDUyYzRkZWI3YzVjOTA2NzgyOTAgcHkzaworNzE3MzIgMWJjZDU1ZGIzNWRlZDYxODlmZWI4YzVhNTg3YjlhOTkwNzlmMWI1ZiByZWxlYXNlMzAtbWFpbnQKKzcxNzMzIGNmNjIyMmNhMGJjYzA2ZDYzYzU1NjlmY2YyMjMxYWUwNDNiZDc3OTQgcHkzaworNzE3MzQgNTg5MTVmYzU3NmFhY2UzZWNhM2YwMzFhZWM4NTk4NDE2MjZmOGYwYSBsZWdhY3ktdHJ1bmsKKzcxNzM1IGFkYzc3YTVkNmE5NjI2ZTY5NDI5MGU3ZjhhMGZlNDA1YTg1ZTcyMTMgcmVsZWFzZTI2LW1haW50Cis3MTczNiBkNzRiOWE4ZTY2ZjYwMzZjMTZiNDRkM2NmMzczNmQ5YTQzYzAyZmI1IHB5M2sKKzcxNzM3IGQ5OTUwM2I2ZjIzOGFlYzI2MjgzOTZlZmFlNWM0OTZhMzM0ZjQzY2YgcHkzaworNzE3MzggNzU1NzcxNmI2YjFjYjk0YmU5NzQ5YjBhYWM3YTRlMGUyMDNlMWI5ZSBsZWdhY3ktdHJ1bmsKKzcxNzM5IDQ4YmY0MmMyZmY3YTgwMzhhYjkwMzRkNGYxZGUzYmQzNWI4YjBiMTcgbGVnYWN5LXRydW5rCis3MTc0MCA3ZDJjODIyMjY5Yzc0Y2Y0NDg0ZTAxYjY2MTE5M2YxNWFhOGE3Y2ZlIGxlZ2FjeS10cnVuaworNzE3NDEgNDFhNzVkZDlkZjc4ZjQ1N2RlYThmZmQ0MjAyMWZhYzc3ZTExMDYwMCBweTNrCis3MTc0MiBiN2I4ZmJkMDEwY2E5YjAyNTA2ZTY1MjE4M2Y2NzhiM2JlMzgzNmU0IHB5M2sKKzcxNzQzIGQ1MGQ0ZjA5Y2RmN2Q3NTJkNzRmMGI4NmZmYTFiMzJhYmQ1NzVmMzIgbGVnYWN5LXRydW5rCis3MTc0NCBiN2M0MTJkMWE1Y2M0NmI4ZTY5MzdlMTdlM2EyZjA1YzE5NDkwYTllIHJlbGVhc2UyNi1tYWludAorNzE3NDUgNjA3MjllZTg0ODIyNTg0NjI3ZWRjZjNlZjhiMWE2NDdjMDAyMmVmMSBweTNrCis3MTc0NiBlMmM3ODVmZjBhNTBmZjA1NWFmMmVkZWQwODFlMjk3NzljNzE2OGQ4IHJlbGVhc2UzMC1tYWludAorNzE3NDcgNDRlZjhhNzNhOGI3YmNjYzI5MjgyMjdjZTIzY2M2NTJkNjJhMzdmZiBweTNrCis3MTc0OCAxNzM3YWExNTEzMTA4Njc4M2Y3ODM0ZWI5ZmIwZWIyZDEwZWE3N2MwIHJlbGVhc2UzMC1tYWludAorNzE3NDkgM2YyOTIwYWE5MTBjYjM5NDMwZTgzZmVlNDYxZTJhZDUzMTM0MGQ2NSByZWxlYXNlMzAtbWFpbnQKKzcxNzUwIDEzODA3NzAzYWZkMGY1ODM0OWUzODIzOGM4MjQyZjA4NGI3Y2QzYWQgbGVnYWN5LXRydW5rCis3MTc1MSAwMzk3NmExMDg3MDA4M2RjOTVjOTc5ZTdjNjE1YWFiZGE0NDYyYjJmIHJlbGVhc2UyNi1tYWludAorNzE3NTIgMGIzYjhlZDM2MjI0NjQwOTVlNWNjNDdlMjI1NTExYzc2ZDM0NWRkNyBweTNrCis3MTc1MyAyYjE3Yzk5Njg5ODFiMjFjZmRmNjEwNGU0NTUyZDE0MGQ1ZjdlNDg4IHJlbGVhc2UzMC1tYWludAorNzE3NTQgNDUyN2MxNTJkYWE5MzljMmVlNWU0YTZiMWU1MDVkNTAwZmNmOTc1YiBweTNrCis3MTc1NSAyMjc5NjdmZTQ0YTQyNmM5NDQ0MjE1NThjOTFiMDdkZjM1ODVkM2U0IHJlbGVhc2UzMC1tYWludAorNzE3NTYgNDJiZjU2ZTM0ODI1OTZiYTUwNzJiMWU1YjY1NmMwODg5NzdiYTZmNiByZWxlYXNlMjYtbWFpbnQKKzcxNzU3IDg1MzNjZmMyNDIwYWRjMTM2NmE5NDA0MjBjMTdmZGRhNzc0NzM2MzEgcHkzaworNzE3NTggMDRmZmU2YjYxNzA5MTA2NzJmMDVmZGEyYzEzZWZkYTVkNjI0YzBlMCBsZWdhY3ktdHJ1bmsKKzcxNzU5IGNkYjYwMTQ0MWQwNDU1MjFkOGVkMGEyMjk2YjcyNzEzZjc5NWFkZGIgbGVnYWN5LXRydW5rCis3MTc2MCBhMmQ0MjMxMDE0MmJlODEzOGVhNjIyZGRhZmYzNGU4MGQyNWY5NWJlIHJlbGVhc2UyNi1tYWludAorNzE3NjEgZTQyMDIwYTUyMjBhZTk5YjRhZmZlMGVlYjU2ZjYzNTU5YzExMGE3YSBweTNrCis3MTc2MiAwNTM3NWMyZTA3NDI0MDA2YTU1ZjE5YzUzZmFhMGRlMGY1YTdiMTg2IHB5M2sKKzcxNzYzIDgwOTFlMDU2NmZlMzIwZjJjNWY4MTM0MTY1YzIwYzU4Y2RjODNiYWIgcmVsZWFzZTMwLW1haW50Cis3MTc2NCAzNzA5M2U5NGFmYzc3OGM5MGI0YmE3NTAzYjhiMGNhN2VmZmNhNmY2IHJlbGVhc2UzMC1tYWludAorNzE3NjUgOTZlZWQ3Mzg3Y2VhMzg5MGViNTliNmM1MTFjZDE3NmQ2NTg3ZTM0ZSByZWxlYXNlMjYtbWFpbnQKKzcxNzY2IDg3ZmI3MjEzMmQ2YmRmYTExNTcxOTY3YWJiNGI3Mjg5ZDM2MDAzZTEgbGVnYWN5LXRydW5rCis3MTc2NyAxMzc4MWIwZjc0NWE2MTg5MGU0ZDA5ZTZiMjRlYTJmOTdiODdkNTdkIHJlbGVhc2UyNi1tYWludAorNzE3NjggYWE1NDRhNTQ3NTNiYThmNjgyMGU3NzIxMzQ4YTY2NmQ3ZDM5MTU4MyBweTNrCis3MTc2OSBiZDE4OGZmMzQyYTRjNjg5MWUyYzBlNzI5N2UyZTNmNDcyMWVkMzgyIHJlbGVhc2UzMC1tYWludAorNzE3NzAgNzNhYTM3NTZjMGIyNmIwMTEzOTI2NTgyNDRiNzRmNWMxMzQxZmU4ZSByZWxlYXNlMjYtbWFpbnQKKzcxNzcxIDQ1NWY0MGQxNzM4ZThjMDY5MjZhOWI3YWU0OTc2MmNhNTAwNWY5M2MgbGVnYWN5LXRydW5rCis3MTc3MiA4ZjI4Y2U3YjhlNjlhMTQxNTE5NWI0YzA1YmVmMzlmNGNmOGQ1ZjA5IGxlZ2FjeS10cnVuaworNzE3NzMgNDEyOTNmYTZmMGRkNDNhNjhmODk4NjU2OWRhYTQ1ZmNkOTNlMTVhZiBweTNrCis3MTc3NCBkMGIxMzM2M2FhMjE0NTZhZTAwYTc3ODBkZTM1YmQ0ZmRkYWExZmE1IHJlbGVhc2UyNi1tYWludAorNzE3NzUgMjdhYzhjODc0MWNkNTkyYjkwZGVmZWI4YTA5NzEwY2U2ZmQ0YTg1NyByZWxlYXNlMzAtbWFpbnQKKzcxNzc2IGNlZTFmYzA3NjM0NDNiNGU4N2JmMWE3M2EzNDhhODJjNzZiZjgzZjYgbGVnYWN5LXRydW5rCis3MTc3NyA5Y2VhZTI4YWIyNzA0MDExYTFlOTBiODM4NjU0NjdjOWJiNjE3NTcxIHJlbGVhc2UyNi1tYWludAorNzE3NzggZGVkNDY3MzUyNTUzNzlhZDhhNDRmYTRjOGNiZmY5ZTNlZjBkMDE5NCBweTNrCis3MTc3OSA5M2M5MjlhMmZhYzdkNzIyOWVmYzJhZTc0N2FkMGI3NTE3MTkyZThiIHB5M2sKKzcxNzgwIGM4YTc1NzEwYWIyNTAxNzMwZGNhMzAzZTdhMjRmNGY4ODMwZGZmNzEgbGVnYWN5LXRydW5rCis3MTc4MSA3MmM5OGI0YmYwYjU2ODE5MmMzN2I1MGY1ZjQ5ZDgyYjc3M2M5NzY2IHB5M2sKKzcxNzgyIDY5NmRkMjI4MTg0MTU2MWVmZjRlYzA3MmQ3YTE3ZmNjZDNjZjZjZDcgcHkzaworNzE3ODMgZWQzZjUxZjJhYmZiYjcyOWNhYzYxMTJiNGFjMDUzYjEwMDZkYWNhYyBweTNrCis3MTc4NCBhNjhlMmRjNWY1MTQ0ZDIyZDg4OWRhYjczYjQwOTYzODU0Zjk2YTlkIHJlbGVhc2UzMC1tYWludAorNzE3ODUgZGU2M2I3ZTg1MDBkYzJmOTA4NTRjZDM1OTMzNDY4MDE1YzgxYjlmMSBsZWdhY3ktdHJ1bmsKKzcxNzg2IGY0NGQ0MmExMWI5YjQzYTNjZDg5MDRjMjk3MmQ5OTFiMDJhOGFmZjcgbGVnYWN5LXRydW5rCis3MTc4NyA3NzMzNmQ4MmFiOTUwYjY4YjllNWMyYThmODU5YzExMDA3NDZhZjIyIGxlZ2FjeS10cnVuaworNzE3ODggYzMwNjgxYzY2YjNmZWYyNjU0YjUyNGRjMjc2NjNmNDI1Mzk4YzgwYSBsZWdhY3ktdHJ1bmsKKzcxNzg5IGMyZTRhN2FkMDVmMmI0NzU5Njg1ZDdiZmZmZjA2ZjQyZTQyZTdhNTYgcmVsZWFzZTI2LW1haW50Cis3MTc5MCA0MTRiYThlZmM4MDQ2YWU0YWVlZTUxNjA2N2JhODc5ODhmNTI0NDIyIHB5M2sKKzcxNzkxIDJiMDU3ZDJiOThlYjA3NGYyYzExZjJjMWUzN2U4NmQ5NTBkNTBjNWEgcmVsZWFzZTMwLW1haW50Cis3MTc5MiBiMGZlYTNhZTNiNmVmNTYyMGQ5NjgzMjQ3OTgwZmM0ZTliMzZjZDRkIHB5M2sKKzcxNzk0IGY5ZjIzZjM2YzM2Y2E4ZjQxZDBlYzVlNzdhOWQ5ZDQ1ZmIxY2E2ZTUgbGVnYWN5LXRydW5rCis3MTc5NSA3OGJmZDQ0ODE3NjMzMWM4YjIzZjNmN2Y5OWZhMDFkMjk1MTJjMjYzIHJlbGVhc2UyNi1tYWludAorNzE3OTYgYzVlMGQ5YmVlYmY5MjMwODUzMDY3MDE1YWM5MTcxNTcyMWM4MTlhOSBsZWdhY3ktdHJ1bmsKKzcxNzk3IDYxOGQyZTNhY2E2MmViZGExZmU4MjZjMzkyNDVjOWY2ZmMxNDg4ZTYgcmVsZWFzZTI2LW1haW50Cis3MTc5OCA2MTE1MThkNjgwZGVjMjRhYmQyYmRmZWQ2YWY0MDQ3MmJiNDI3YWY5IHB5M2sKKzcxNzk5IGU5NTk1Y2I1Yzc4NjBiYWViYTAzYjU1MjBkYmI2ODE5NzA4MTE2NWUgbGVnYWN5LXRydW5rCis3MTgwMCAzMzBkYjk1NGU1OTM0ZTA5YjJiYjY0OTI3NmQ2NTc3ZmE1ZTU2ZDIwIHJlbGVhc2UyNi1tYWludAorNzE4MDEgYjVkZjA5NGQ4OTQxZDJkYTQ4OTZlYzllODA4NmY0YTk5YjYwMzRhOSBweTNrCis3MTgwMiA0NGE4YTUyNWVjZWI4MDY3Zjg0MjExZWMwOGY0ZTczNDg2NTk4ZWFiIGxlZ2FjeS10cnVuaworNzE4MDMgNmY0MmRlNzJjMmRjZTg4Y2ExMGQ2M2E1ODQwNjk2NmJkZDFlY2MyYyByZWxlYXNlMzAtbWFpbnQKKzcxODA0IDUxM2RjNmZhNjFjMGI3MGE2YjVkZjFmYzY1MGFjNWU4NzIzZmFlMjIgcHkzaworNzE4MDUgYzZlOGM2NTcxNTg4NzZmN2YyMTM5OGIyY2I0NTNhNTdkMjUxZGUwNCByZWxlYXNlMzAtbWFpbnQKKzcxODA2IDliZjRiM2ViMDQ0NzI2OTkxMzUzOGU2N2Q0Y2UxMzEwM2ZkNDNkNjggcHkzaworNzE4MDcgMjRkODFmY2IwZTMzMzVmMmUyYTRlMmVhNDJkNTg5NDBlMWQ1MTc2MSByZWxlYXNlMzAtbWFpbnQKKzcxODA4IDg1NTk3ZTU1NjY4Y2QwYzkzOGIyZTZiZjQ5MWEzMTMxNDNlOGM4OTUgbGVnYWN5LXRydW5rCis3MTgwOSAxZjFlY2E2ODE2NzVhMzllNWExMzIyMGJlZjNmYzAzNWMyM2M3MDk0IHJlbGVhc2UyNi1tYWludAorNzE4MTAgMWExMjkxMzg0OTI4OTMyZGY1M2I3MjJkZTA2YTBiMDU0MzIzNmJkMiBweTNrCis3MTgxMiAyZDA5YmNmNzAzOTU1NTg0NWU0NDJhNWM1ODgxNWMzYmJiN2YyZGEzIGxlZ2FjeS10cnVuaworNzE4MTQgMTcwMDU1ZDdiNDk0MmIyM2I2OWJiMmY4MzZhN2U5NmYyOTNmNWVkNiBsZWdhY3ktdHJ1bmsKKzcxODE1IGZmOWVkY2IzNjg3OGVlODYxZTkzY2FkN2JhY2U5ZmY2YWUyY2E1M2UgbGVnYWN5LXRydW5rCis3MTgxNiA2MjkyYmQyNjMyZTJiZGQ3ZDU4ZGVmMDdhZjliN2MyNGUxNTYxOWEwIGxlZ2FjeS10cnVuaworNzE4MTcgNDFiYzMzZWUxNzMwNGZhNmIxZWJiNjNhNDJiMTVjOGM2NTFmN2RlZSBsZWdhY3ktdHJ1bmsKKzcxODE4IDMzMDExNTEzNzQxNDc1Y2RkNzIwNmRkM2I1YmY4OTlkZWMxOTY0NzIgcHkzaworNzE4MTkgZDI5NTI1NGQ4NGI3ZjY1ZmU3ZjYxYTdhN2Q1YmJhNWUxMDdhOWQ1ZiByZWxlYXNlMzAtbWFpbnQKKzcxODIwIDViYmQyZTZkNjEyNjIwZTRmZWVlMzEyMGUxZDA3ZTU5MDVjNjM3MzkgcHkzaworNzE4MjEgYTdjNGEzN2M5ZGYwNzcxNjhkNzNlYWNhZTY4ZGNiMWE4NTBiNTA0MSByZWxlYXNlMzAtbWFpbnQKKzcxODIyIDgyOTViN2IyOTRiZDYyZGJiZWRkM2ZjMWQyZGEzMzM5ZGNmY2UzODkgcHkzaworNzE4MjMgODMwMGIyNzRmZGQzY2NmOGQyMTgxMTU3YzJhODgwNzlhYzE0OWVkOSBweTNrCis3MTgyNCAzMzMxMmI5MTA3NzM0MDFkZDUzNTRiZDljZGU3NjhiNTI3ODIwOGI1IGxlZ2FjeS10cnVuaworNzE4MjUgZmRlMDE1YTJjOGIzZWJlMjQ5NmI0NTZhMWRiZjE5OGNmNWUwNTkwOCByZWxlYXNlMjYtbWFpbnQKKzcxODI2IDMyYjI0NzMwMGZmOWQzMjM5MTkxYzE4YzNlNTQ5MGQ5ZDFiYTQ2ZjcgcHkzaworNzE4MjcgMDc2MWVlMjhiNmVkNjI0MDJhZjBlYmY1NmI1ZjU2NmIzMWI1YTUwZiBsZWdhY3ktdHJ1bmsKKzcxODI4IGQ1NTczMjBkZTg1NmNiYjIxMzk0ZDdlY2E1MTNiYWNlNWYzMjZkZDUgcmVsZWFzZTI2LW1haW50Cis3MTgyOSAwNmRiMWQ5ZDI1NWZmN2M3ZDQ1ZDQ2M2E1YjYzNmYwN2JiOGE2YTIyIHB5M2sKKzcxODMwIDFmYzliNjUwODcyMzIyOTI1MzY0NDAzZDkyYzY0OGYwOTJhZWUwYTYgcHkzaworNzE4MzEgZWM4NDJjYzYxMGU2ZjE0ZjNlMTJhMjVkMmYwZDQ5M2NlYzRmN2UyOCByZWxlYXNlMzAtbWFpbnQKKzcxODMyIDExNDA1OWMyNjc5NGYxYWQ3YzQyZTFjMTU5NjZlOTg1OTdhNDY2ZjggbGVnYWN5LXRydW5rCis3MTgzMyBhMWE2ZjVkMmIzZGNiNWU1MjM5YThlNDRlYTRjYTFiNzM0MmQwNjMyIHJlbGVhc2UyNi1tYWludAorNzE4MzQgNTlhMWZiOTM5NTc3NGNlYjNiNzhhM2YwYWE1ZTU5NjllODM3OTczYiBweTNrCis3MTgzNSA0NmEzMmQ0NDYzYzgzYTZmYmQwMjdlYjU0MzJlYjJjZWJmNzQ0ODU4IHJlbGVhc2UzMC1tYWludAorNzE4MzcgMTMzYzY2MDI3ZjMzZTRjMmY2MzExMzg5NWRjYjg5ZjFkOWYzODBkZCBsZWdhY3ktdHJ1bmsKKzcxODM4IDMyMjI2Nzc2Zjg2NjEzNDY4Mjg5MjI4Y2QwMjAxMmYxMWM1MDExZWIgbGVnYWN5LXRydW5rCis3MTgzOSA1NGI0NDg5ZjFjMjg0ZDYxMjc1NzBjZDdjNmMyNzc3MjkzZDljYmQ0IHB5M2sKKzcxODQwIGZhNGYxOGVkZTI2MGJhNzkyMzlmZmRmY2YzNWRiMDQzOGQ3ZGE4NmEgcmVsZWFzZTI2LW1haW50Cis3MTg0MSBhNjVlM2MwNzI2MGU5ZWIwNzgxZDU1YWRkZDE0ODcwMjhjOWNiMTE5IHJlbGVhc2UzMC1tYWludAorNzE4NDIgMTE2Nzg3ZjliOWZjZGJmODEyMTczOThjMTFhNTRhNTgyNTA2ZTJhNyBsZWdhY3ktdHJ1bmsKKzcxODQzIDYzY2I1YzkxY2UyMTQ4YzVkMDVmY2RhMmE3Mjc2OGFlM2RiODZhOTAgcHkzaworNzE4NDQgZmY3YjRlNTgyYzQ5MDgzZjcxYjQyYjlkNzE0NmRiYTIyNTJjYjAxMSBweTNrCis3MTg0NSBkODgwMmIwNTU0NzQzMDI5ZTE1NDg2NjFhY2NjMzkyZDBhMzcyZGQ5IHJlbGVhc2UzMC1tYWludAorNzE4NDYgNDNlNDZlNGUwMmYwMzYwYjMzZDczZjBhODYwMTkwNGUzOGE1NWFlYiBweTNrCis3MTg0NyBmYmIxZGYyNTQxYzM2YTA5Y2U5YmU1NzdjYWI2MDkzNDJhZDMzNmYwIGxlZ2FjeS10cnVuaworNzE4NDggOTY5MWU3MzQ1OTY0ZGExOWRmNTJmYTg4OTI3NjJmMGZjM2FjYTNkNiBweTNrCis3MTg0OSAwOTY4OTIxMmIzZWIyODE5NGFhODExODY5Yzc4NjAwMGJmMjA0NWZjIHJlbGVhc2UzMC1tYWludAorNzE4NTAgMmVmNTRlOGE0NGRkNDg5OWVkOTFkYTVlZTZkYmUzZDA5NDNlMDk3NSBweTNrCis3MTg1MSAwMGE5Mjc4MTVkY2Q2MmQ0Njk0OGJjNDhjM2ZkYTIzZjVhMGE0MTk4IHJlbGVhc2UyNi1tYWludAorNzE4NTMgZDUxZTRmNjJiYzhjMDQ1NThkMjA4YWY5Y2Q0MzA0NTE5M2UyOGRiYSBsZWdhY3ktdHJ1bmsKKzcxODU0IDAyZjNmODVlMzkzNmI4YzAwMDhlYWRlMzMzNmM3MTBiYzRlNjE2ZWYgcHkzaworNzE4NTUgYzYyY2MyYTU3NjRiNjM0MjJlYjVkMjZiMzQ1ZWY5MTAxOTZlMWQzNCBweTNrCis3MTg1NiBiNWUyYmNiYmZhNzQwMmMyNjk0ODRkZTc4NjdkOTA5YzFkZDlhYzczIHJlbGVhc2UzMC1tYWludAorNzE4NTcgMGY1NWUwOWMxNmI1NjgwNjBhYzFiMmJhMDM2NWNmZTU1ZmZjZWZkMyBweTNrCis3MTg1OCAyOThmMjhhZmYxOGQyMzk0MGI5OWNmYjgwODI2YTIzMWQyNDAxN2RjIHB5M2sKKzcxODU5IGIyZmNiM2YyMjRkZTJmZTNhZjA3YjJjNDdhNTk2YWQwM2JjZWZiMzQgcmVsZWFzZTMwLW1haW50Cis3MTg2MCAzMTg5NTE4OTBhYmI1N2MzOTUzMDQ2MjliZDUxYjIxNTE2MjZiYmZlIGxlZ2FjeS10cnVuaworNzE4NjEgNjQyOTEwYTAxZDdmMzkwMGYwMGQ0YzNkNGMyMmZiM2ZmZmZlNzE0OSByZWxlYXNlMjYtbWFpbnQKKzcxODYyIDJlMzcxOTBmOGVhN2Q0OWNhY2I4OTZhODdkMjc3ZWI3YTdjM2JlOGIgcHkzaworNzE4NjMgZmRiMmJlNDcxYTNmZGJkMDM2OGQwYzAwNjRlMjRkYzM4OTVhYTUwYSByZWxlYXNlMzAtbWFpbnQKKzcxODY5IDVmZDBkYTJhOTc3OGUxNjhmZjVjNzRjYjQ5ZjVlNTdjZWVhOTRjNjcgbGVnYWN5LXRydW5rCis3MTg3MCBhMzRkOTQ1YzA3ZWRiM2VjYmU4ZjdmMDA1MGM4YTRlM2RlNDAzN2JkIHB5M2sKKzcxODcxIDgwZGE1MjQ2NmZlODdkZTViNjMzMzU5NTE1MGM0NTA1OWYzMzhjMmMgcmVsZWFzZTI2LW1haW50Cis3MTg3MiBhNWVjNTdlODVmNjVjMThjYzMwMzY1YmUyMzBmNjQzNTYyMzJhNGExIHJlbGVhc2UzMC1tYWludAorNzE4NzMgOWY5NDEyMTkyNDAyZDlmNTkxNzczZDY4NDdhNWY1OTkwODNkZGMwZCBsZWdhY3ktdHJ1bmsKKzcxODc0IDk1NTZlOTNmMmFiYjQ5OWI2ZjM4MzllZmVmYWYxZWU4NzM4NmNhYTYgbGVnYWN5LXRydW5rCis3MTg3NSA1YTQ2YTgyMjA2ZTdiYmYzOTg0NWFmNTI5ZWUzNWMwZGUxOTY4MGM3IGxlZ2FjeS10cnVuaworNzE4NzYgYjM2NmE0OTZkNDk5ZWIxOTE3NzBiYmVkNmNjZDAxOTM3ODViMGI3YSByZWxlYXNlMjYtbWFpbnQKKzcxODc4IDg4YTc4ODdkN2ZkNGFmOTZjMzg4YjMyMzE3M2FkYzkzOGI5N2E4MDAgbGVnYWN5LXRydW5rCis3MTg3OSBjZTQ3ZGVlMWI1NDQyM2NhY2EyYjg0NTA1OTAwMDAyZmE3Mzk5YWVjIHB5M2sKKzcxODgwIGM1NzEwOGRlZjNlM2JlOTk3YjQ2NGQ1NTA3NGUyYzJiNjRjOGMxMTIgcmVsZWFzZTI2LW1haW50Cis3MTg4MSBkMzUzMzdmNjUwMTU5OTljY2MzMzE5MGIzOWJiNTVmNjQ1NWUxODJlIHB5M2sKKzcxODgyIGFkMGMyNjk3MmIyMjIxNzU5ZDI3YzE1MjNkMzA5ZGRiYjA2OWU2ZmUgbGVnYWN5LXRydW5rCis3MTg4NCBhZDAzYmI1ZDBmN2RiYmM1Y2ZjNTU0ODNhMTA3YjI0N2I1MjZmNmJhIGxlZ2FjeS10cnVuaworNzE4ODUgNmRjOTgwNWNiMGZhOTc3OWFkYTliZjZmZmU1NWFmZTBkMGRmYzA4MyByZWxlYXNlMzAtbWFpbnQKKzcxODg2IDNjYzVmYzMzMzJmNmFiY2NiOTkzMTFiNTE5NzMzNWZlOGU3M2ZkMmYgcHkzaworNzE4ODcgODA2YmM0NjUxYjlkZTM1ZWU2MGZlNjZjNDM0MWJhM2JkMWY2NmJjYiByZWxlYXNlMjYtbWFpbnQKKzcxODg4IGNhZGI2OWUxZGM5YTYyZmNiNDc0YzMxNTZmMzhmYTg3MTQ3NTM5MmEgcmVsZWFzZTMwLW1haW50Cis3MTg4OSAxODM3ZThlMjI5Mjc3NzExMTUzYzRhZTAyZTBhZDRkMzM3YWJiMDgyIHJlbGVhc2UzMC1tYWludAorNzE4OTAgMDVkZTg2NDA3N2JhOWI4M2U4OWNmOTU4NzNlZGU3NTE3NTQ5NjdlMCBsZWdhY3ktdHJ1bmsKKzcxODkxIDU4N2M4ZTM5MTdjNmE4MjVmMjkwOGY1OWY4NTg2NTMwNzY3MmEyYWYgcmVsZWFzZTI2LW1haW50Cis3MTg5MiBkM2ZlNmU5NjQ4NGM5N2NkNGUwMDc0MWEzNzdmMjVjNDJiNmQ1NTZjIHJlbGVhc2UzMC1tYWludAorNzE4OTMgZWFiZTZjZjk3MzRjODMyYjI5NmFmOGQzM2E5NjJlN2RhN2I0NjE2NiBsZWdhY3ktdHJ1bmsKKzcxODk0IGEyZWY0ZGQ1NWNmMjU2MTk0YmY4Y2RmNGNmNTk5YWFlMzQ2MmZkNmYgbGVnYWN5LXRydW5rCis3MTg5NSBmMDhmNzc2MDgyZWNjYjNhN2UzYzEzOGQwZGZhMDFmYzViZmMzNjI3IHJlbGVhc2UyNi1tYWludAorNzE4OTYgZmYyOWU5NjZhYmI2NWE5MjA2MmI4OWUyNjhmNDc1Njg2NDA4MmYwYyBweTNrCis3MTg5NyAyZjhlNTM1ZjlhOWJmYTQ0MWE3MzFiMzhjYTYwNDUzM2M1OTI3MGRhIHJlbGVhc2UzMC1tYWludAorNzE4OTggYmI4NzZhMTMzYmRmM2E3YTlkZDU4YzI3ZjhkNzcyNjAzODgxZmFhNCBsZWdhY3ktdHJ1bmsKKzcxODk5IDY3NmRhYTFlZjIyMzcxMjllMzY4MGUwNDI2MjJiYWZmZTIwZDJjMzEgbGVnYWN5LXRydW5rCis3MTkwMCAzMDVmZmFkZjgzMTViM2I1OGQzMzYwMWE1OGNkM2JhN2QzNmE3ZTRlIGxlZ2FjeS10cnVuaworNzE5MDEgZGRjYzJhNmZkZTNhZTNiOTczNjEzNDRlMjUwYjk5ZTVlOGFmYmUwNCBsZWdhY3ktdHJ1bmsKKzcxOTAyIGM3NTZmMzBiYzQyYTdlNjRjMDRjNTZmODdiNzgwNTFkZTQ3MDllNGQgbGVnYWN5LXRydW5rCis3MTkwMyA4NTI0NmU0ZTE0MjgzZTZlMTlmMzQyYzA1ZDA4YWNlMDgyYmEzMDM3IGxlZ2FjeS10cnVuaworNzE5MDQgMTQ2N2NiYzIyM2U2MDA3OTkyNGU3MjFhY2VkODYzNzlhMmViOTJiMiBsZWdhY3ktdHJ1bmsKKzcxOTA2IDI0ODBlYTc1MDY4ZmEyMWU0ZDExYTNiM2IxZWY5YzZlMTZiMjRkYjYgbGVnYWN5LXRydW5rCis3MTkwNyA3MWI3YjQ5MjE1MTIxZjU4ZDA5MWNlZTZlNTcwZmUwMTUwNWE2NGFlIHB5M2sKKzcxOTA4IDRhZjA2YjJiYzNjYzI1ZWE2ZDNmYmIyZjdhZWJkYjA1YTBiZGQ4YzMgcmVsZWFzZTI2LW1haW50Cis3MTkwOSBjNmJmNTJlMTUzYjRhM2QyM2ExMmU1MTYwOTI2Mjc1MjBmNGQ2YzgxIHJlbGVhc2UyNi1tYWludAorNzE5MTAgODVjYzk1MTJiNjBjNTM3ODE2OWExMzIzZGQ1OTFkOTUxODM1ODQ2MSBsZWdhY3ktdHJ1bmsKKzcxOTExIDdjZDIzYjJlYWE5M2JlZGUyNThlNjRhYmU3N2M4OGYyMjY4MTlmOWEgcmVsZWFzZTI2LW1haW50Cis3MTkxMiAwODNjZWEwZjI3YTJjMjEzYTc0NTEzZTM5ZGMyMWY5ZTM1YWU0OGFmIHB5M2sKKzcxOTEzIDAwNmE0MGI1ZTBjM2I1ZjllZjJlYWY0ZGI5ODE3M2MxNDAxM2IwYTQgcmVsZWFzZTMwLW1haW50Cis3MTkxNCAxNzlmNDU5M2JkM2VkMDgxZmIzZTc3MGMzMzI3YTQxYjQzOGVjYjI1IGxlZ2FjeS10cnVuaworNzE5MTUgM2QwN2M5YjIzOTUxNDJiMDJhNTQyNDc5MTM5MGZjYzQ4MDhkYzJmNSBsZWdhY3ktdHJ1bmsKKzcxOTE2IGY4ODMwNmM4MjY1ZTNkZGMwYjI5OGViYTI1YTU1NDgxNTM3NmRhZGEgbGVnYWN5LXRydW5rCis3MTkxNyA2MmIzMTg1MzU5ZTM2NWEzNzhjZmJkNjlhOGM2N2U4Y2VhZTFhNGQ1IGxlZ2FjeS10cnVuaworNzE5MTggM2I0OWQzMGNhNTQxM2JjMDljNzM4YWE3Y2Y2ODQzMDEzZjZkYzA3NyBsZWdhY3ktdHJ1bmsKKzcxOTE5IDJlMjk3YjFlYzkzNTYwZjEzMjBhY2RkZTk3ZmEyMGI4MzdkYmZiMjEgbGVnYWN5LXRydW5rCis3MTkyMCA2OTRkYWY4Y2RmOTkzOGJmMmJlYThjMGIzNzg3NmQyYWMyMzIxMWJmIGxlZ2FjeS10cnVuaworNzE5MjEgNjI1NWE3MmE0YzFlOWVhYmI5YjBlNGVhMzBiOTc5ZDA1NTRhYWI3NSBsZWdhY3ktdHJ1bmsKKzcxOTIyIDhmYmEyNTg0ZjM4YmVhMjMzNWZkYTA4ZGRmMTQ2MmMyMmUyYmZmYjYgbGVnYWN5LXRydW5rCis3MTkyMyA2MzI4NjI0MmRkOWRiMTQ0NWU0ZjkyMzA1Mjk5YWI0NzAyMWU2NmViIGxlZ2FjeS10cnVuaworNzE5MjQgY2EyZjFlMzRmNTYyZDFiMjkxNmNhNWIwYmFhN2MxYmZhYTU5NGYyNCBweTNrCis3MTkyNSA3YmIxYTRjZDVlZTViODZjNmNmZDJmZGUxNWM5NzdiNmM0YjM4OTkxIGxlZ2FjeS10cnVuaworNzE5MjYgZWRkOGYwZDUyYjM4ZTJlNTBjZDYwMjMwMTlhMWQ1ZDVjNjdmYjZiZSBsZWdhY3ktdHJ1bmsKKzcxOTI3IDQ1NmIyYTA2ZDAxNzAwZjcwNjVkYmExODU1MDQ5ZDhmNmMwYzZlMmEgbGVnYWN5LXRydW5rCis3MTkyOCBjN2VhODI2ZmFkNzczNDdlZTg1MmVlOTRmMzJhNzA4ZWRjYzgyNmY1IGxlZ2FjeS10cnVuaworNzE5MjkgMjVjMjBhNzdmMzczM2Q5NDAwZDkxYjM1YzA3OGQwZjA5ODhiYTM3YSBsZWdhY3ktdHJ1bmsKKzcxOTMwIDBhZDQxNTA5NGEwNTA2MThkODU4Mzc5ZDI2M2VkZDZkMzgzNTc2MWQgcHkzaworNzE5MzEgMTI3OTE4MTI3ODhkZmU5ZWE1YzUzZjRiMDIxODM1MmM0OGEyMzcyYyBsZWdhY3ktdHJ1bmsKKzcxOTMyIGVjYWNhNzE3N2Y2Njk2MWM2OTQxMmU1MGZhOTMwOGFlNmJiNGNlNDIgbGVnYWN5LXRydW5rCis3MTkzMyA0ZTVhZDU2NmJmYmI1YTkzOWIyNGViMzI0MGJjNDAwZGEzMjM5N2Y2IGxlZ2FjeS10cnVuaworNzE5MzQgYTA3YTliNzU5ZjI3YzI1NmZmM2MzNWM1YzNiMDhiYzk0ZjRjZGQzOSBsZWdhY3ktdHJ1bmsKKzcxOTM1IDljOTg2MDUwNzI2NTA0ODNlODI0YmZjNjgwZjM4NTMyNGNjZWZjOTYgcHkzaworNzE5MzYgZjExNDJkZTQzZTdkZWE4ZmRmMzcyZWZiYzBlYjE3OTAzMTc3YWViMyBweTNrCis3MTkzNyA4MWFlYjhiYzY1OWQ1NzBmNjM2MTdkMWI4MGFhMjdlZTI5YWVlMjA4IGxlZ2FjeS10cnVuaworNzE5MzggNjk0N2JjM2RkNDMzMjE2NDJmYzI4YTU1Y2NlNzFkNGY4ZTYzMmM5NiBsZWdhY3ktdHJ1bmsKKzcxOTM5IDMwYjAzZTFkZWE4YmI3MTIwODc4MWMyMGMyYWU0NjFhMWY0NTIyNzQgcmVsZWFzZTI2LW1haW50Cis3MTk0MCAyY2RkYWY4ZDNjM2UwYzk5MzEwN2UzOTQ1NjcwYWI5M2U1NTRmYzAxIHB5M2sKKzcxOTQxIGEzZDQ4YjJlOTU3ZGU5NzFjMDk1NWY5ZWIzMTE4NDI1MjUxZjgwYjEgcmVsZWFzZTMwLW1haW50Cis3MTk0MiBlZjBhYzQyNjk5MzQwYjVkODg3MTViZWY2OTE1NmU0NWYzNDRhYWMxIHJlbGVhc2UzMC1tYWludAorNzE5NDMgOTMzMjk3ZWJhYzdiYWMyMGY5YWE2MmY5YTIzY2JjMDIwYjhiNzA5MyBweTNrCis3MTk0NCA3NTAxMGNhZTA0NzkwMDc2ODgyYWYyNzliOGI0NDVmYjkzYzMzNzgwIHJlbGVhc2UzMC1tYWludAorNzE5NDcgNzJiZDQ1MGQ1MzlmMTU3ZTY3ZWI2ZTFiN2RkZTFlZjYzZTNiNDhhOCBsZWdhY3ktdHJ1bmsKKzcxOTQ4IGM5MmU5M2E1NDI5OGE4MzA0ZjFlY2UxNTRmNGQxNTlhNmFjMmM1Y2EgcmVsZWFzZTI2LW1haW50Cis3MTk0OSA4ZmRjZGYwYjUwODBlYTkyZTVhZWQ5NWQ4M2ZiYTFkMjA5ZGJjM2YyIHB5M2sKKzcxOTUwIDkxMjQzODY1NWY5MzA0MDQ4YmY4Y2I4Y2VkOTMzYWY1ZDIzYzc2Y2EgcmVsZWFzZTMwLW1haW50Cis3MTk1MiBhM2EyNDZkYTE0NGI3ZDM2YmIyYmI3ZWNmY2FhNjQyMDJlODEzMDM4IHB5M2sKKzcxOTUzIDlkYTFjZmNkMmFjZjdmNjdkMjkxMDI5NDY3ZDgxODU1M2UyYjIyODggcmVsZWFzZTMwLW1haW50Cis3MTk1NCAxMzM4MTlhZTgwZmE4YWNlMTgxNTYzYTlhMmZjMTNiNzhjMTJiYWM0IHB5M2sKKzcxOTU1IDFjMmQxMWE3ZWIyM2Y0MTIzNGVmMTQyMzJhNzVkNTBiZWYzNGFiNzIgbGVnYWN5LXRydW5rCis3MTk1NiAxNzI5MTNlMTcwMTllZDI5NjAxNTc4NGZiNjdmZmNkNzg2M2NkNDI3IGxlZ2FjeS10cnVuaworNzE5NTcgNzNiNTAyZjU3NjkwNTljMDk0NWRlMzhlMDIwNDg4MmIyMjhkM2VkOCBsZWdhY3ktdHJ1bmsKKzcxOTU4IDAwNjk0ZTBjMmU2YjJlYjMxY2JmYjE1Y2ViNDU3NDFkMjJlMzRlNTMgbGVnYWN5LXRydW5rCis3MTk1OSA1OWM0MTE0Mzc5YjM0YTdiOWNlY2ZhY2Q2MDg5MzhhYTgyNjdlNzBkIGxlZ2FjeS10cnVuaworNzE5NjAgNjQxMTBjMGFkNTMwNWU3YjcyNWZiOWI3YWYzMDJmOWRhZWRhN2VmNyBsZWdhY3ktdHJ1bmsKKzcxOTYxIGRiMDMwMTZiZjY1MzlmNDZkZDA0NjU0YjY3ZjZlOWQ0YTMxODEzMzAgbGVnYWN5LXRydW5rCis3MTk2MiBhMTVjMjhiZmJiMzhjODZiYmI2N2FmMzNkZTYzZTY1NjU2NDIxYTg3IGxlZ2FjeS10cnVuaworNzE5NjMgNzU5NjMzNzJiNzE0OWQ5NjYxNGFlZjA5NDY2OWZmYTQwY2FjNmNhMSBsZWdhY3ktdHJ1bmsKKzcxOTY0IDU5YTFiMDJkZTkwNjcxMjBmMmQ0NDA0YWI5MTQxNmY5YWFkMTA4ZTcgcmVsZWFzZTI2LW1haW50Cis3MTk2NSA3ODM1YWRhM2NkYTJjNmFiZDZiOGY1MGJlYjVkMTE0ZjAzNTg3ZDM4IHB5M2sKKzcxOTY2IDFhNWQxZDFjOTQ3OGE5NGQzOTg4NzQ4OWQ3YzhjYmUyMWI4YTc1Y2UgcmVsZWFzZTMwLW1haW50Cis3MTk2NyBmNzY1NzIxMDhkZDdhNDUyODA2ZWM1MWJmYjE3N2NlNGNiYzY5M2JiIHB5M2sKKzcxOTY4IGI0NWEzMjM1NWQzNzhjY2M4ODQxNGVmNzYzYmMwZWYxYWZkZWE1OWQgcmVsZWFzZTMwLW1haW50Cis3MTk2OSAwMWMzMzYzYTM1N2Y5ZmY3MTY4YjFkYzYyM2RjYzI3NmQ5YjE0ZTBlIGxlZ2FjeS10cnVuaworNzE5NzAgNDYzM2Y4NTM3YmI3N2M3ZjUxYzRlM2RkNjQ1ZDIxODY3YjJmYmZlZCByZWxlYXNlMjYtbWFpbnQKKzcxOTcxIDM5MTIwY2M3ZTMyMWVlODA4NjA5ZDUxODQyNTdmZmU2ZGQwOGJhMTcgcHkzaworNzE5NzIgZmI0YmIwYTM4NTZlMWIwNDkyMjA2YWQ5MTQwOTkyNDQ4N2QxMmZiYSBsZWdhY3ktdHJ1bmsKKzcxOTczIDM1NWJlYjBiZDAyYmVhMzg3ZGNiMzk3MmEwNzg2ZGVkNTZhNDc1NmEgcmVsZWFzZTI2LW1haW50Cis3MTk3NCA3MjM3NzMwNDI1ZmIzNzNmZDJiZGVhYzU0NzkxYWNmMGNkM2ExMTU1IHB5M2sKKzcxOTc1IDk1MWE2MmI4NmRlOGI5OWNlNDZkZWZiNjc5MDc3MWE0NWNhMTRhMmIgcmVsZWFzZTMwLW1haW50Cis3MTk3NiBiZmI0N2JjMWQwNTExNDQxOGFkN2FkOGE2MDZhZWFiNzhkZjNhOGYxIGxlZ2FjeS10cnVuaworNzE5NzcgZjdlY2NmNzY5YzFhZTJkZjlmNThmMGVlZTI4ODMyYWM2ODNhOTU2MSByZWxlYXNlMjYtbWFpbnQKKzcxOTc4IDc4NWVhMjk5ZmUyMzZkYjYxMzNmNDk4NzM1Y2MzODI0ODhkMmZiZTQgcHkzaworNzE5NzkgMzE2MmViMDljMmMzZGRhN2RlMmUyNDE2ZjAyOWNmMzJmMWM2M2UxNyBweTNrCis3MTk4MCAwMjFjMzlhMzdlZGY3NjE1ZGFjZjRkYTQwMjI0MWEzZTQyYTg1ZGNmIHJlbGVhc2UzMC1tYWludAorNzE5ODEgNTRlZTZmZDE4MWYyY2E3MzM1NTUyM2E1ZmU2NTQ4ZmFmYWM4YzQ1MSBweTNrCis3MTk4MyA5ZjYwZWRiYTVhZWFiZmZiNzAzNWY5MWUyOGUzYWFiMjQyMWI0OGRiIHB5M2sKKzcxOTg0IGFiZGMxNzY0ZDhlNWExYWQwMWM3ZWM4MzJlN2RhODAzNDUyNWJjMGMgbGVnYWN5LXRydW5rCis3MTk4NSAwNjg4ZThiMjQ2MzI2YTA2ODA2MWUyMTYzNWE2ZDk2ZDJmOTBlZDUzIHJlbGVhc2UyNi1tYWludAorNzE5ODYgMGIxNjc0ZjI3YjcwZmEwNGM4NTEzYzY4MmFlNDc0NzZjZDg2OWIxOCBweTNrCis3MTk4NyA1ZDRmYzE2NmEzZDQ2MTQwNjgzMDBiZWExNGE0NGVlNzAyOWIxOGM3IHB5M2sKKzcxOTg4IDQ1NmU1ODQzMDIwMjA2YzdkN2Y1M2E3Njg3MjI1ODNjYzI3NWZiZGQgcmVsZWFzZTMwLW1haW50Cis3MTk4OSBkZTFkMGY3MWUyMDliNTJiMGQyNjUyNGVhOGYyN2I4NDQxOWY0NThkIHB5M2sKKzcxOTkwIGVjYzNlYjE1NjQ4ODhjODRhNmUyNTE0ODY3ZGFlNDU1ZjY0NTYyNDIgcmVsZWFzZTMwLW1haW50Cis3MTk5MSAzODNlMzJhYjYwN2M0YWMxYmUzNzZmOWNjMzAzNGJiNTM4OGEzZTc5IHB5M2sKKzcxOTkyIGUwZDQ1ZDMyZmI4MjQ0MjY4OGY3Mzg5ZjQ2N2Y0MGJhMzRhZjcyYTAgcHkzaworNzE5OTMgMzVkNzNhOTg4MDM5ZmQxMzM2ZWYwNzk2ZWZkZDhiODc3YWRlZWMxMCByZWxlYXNlMzAtbWFpbnQKKzcxOTk0IGNhZjJiOTFlZjA2YTU5Y2Y4NDRhOWRmMjVmYTRlMTBjZDMzY2U2YjYgcHkzaworNzE5OTUgZDJjZmQzZDNiYzU0OGY0Zjk1YWY3OWVkMzEyOTE2ZjkwY2ZmNzQwMSBsZWdhY3ktdHJ1bmsKKzcxOTk2IGM0MmI3ZGQxNTUwNWNlOTgxNjFjOWVkM2RmY2JkZjA1ZDBhOWE4YzggcHkzaworNzE5OTggZDMxYmU4YzljOGEyOWJmOTFjZTc0M2I2MzIxYTUyNDQ3ZDhlMjZmZCBweTNrCis3MTk5OSAxZmNhMWM5MzI2OTYyNTE3M2VmMzk2MjZmY2IxOGM1MmI1OGNmMGE4IHB5M2sKKzcyMDAwIGZiODk5ODMzNTNhZDNjM2NmOGZkYTFhYzIwNGI0YzllZjlmNzQ0ZGUgcHkzaworNzIwMDEgZDA1OTRlN2E0NWQ2MzY5MzcyZDllNWJiOGE1YmIzYTk0YTdhNzNjMCBweTNrCis3MjAwMiA5OGFhNjMxZGFjMmJjZDAxZGM2ZDIyZmZjZTA3ZTEzNmU3YTdjNzViIHB5M2sKKzcyMDAzIDU1M2NhZjZiYWU0N2UxMGFkYTk0NWY1NDg1NzhkY2MwODIyZmVmMDAgcHkzaworNzIwMDQgOTczZDI0ZjQ0YjA3ZjYwODg2MWZhNjU0NTMzNWRlNDQzYTEwNzcyOCBsZWdhY3ktdHJ1bmsKKzcyMDA1IDI5M2FkYTFkYmZkYWRlMjQ1M2RhYWYyMDYxN2JlNzFmNWEwN2I0NmEgcmVsZWFzZTI2LW1haW50Cis3MjAwNiAxNzU0MGExNjQ3OTc5OTU2NTg2MDVkMGUwNDQwMWJkZGViYmNkNjAyIHB5M2sKKzcyMDA3IGQwNTEzNGE0ZjAyY2U1OTI4OGU5NjYxYjQzOGQ3NjZlZTE4YTI3ZDQgbGVnYWN5LXRydW5rCis3MjAwOCBmNTIxNTlmODczMzJiYmJmMjE4ZjFhNGM3ZmIwMWYwNzQ4OWUzMjk0IGxlZ2FjeS10cnVuaworNzIwMDkgNTc4MTI5NDRjOTYxYjc4OTQ0NWE2ZGVmNTJmMzJhODM5Yjc0YmQ0NSBsZWdhY3ktdHJ1bmsKKzcyMDEwIGNjMGRmZjJiZjFjMmU2ZDUzZmM0NmU2MDE2ZmYyMTM0OWQ4MWE1MDggbGVnYWN5LXRydW5rCis3MjAxMSBiZjdmMzQwNzM0MThiZWRhMzZmN2NmNWIxMjYyN2RhYmEzZWVkODNiIHB5M2sKKzcyMDEyIDExYTU0NTJlMzMwNWU2MDc0YzVkZjJiY2MyZmM3MjgzMGViYWM4ZDEgcHkzaworNzIwMTMgOWI0NTFmYTU4NTAzYTUzNDBiOTdhOTQ4MWI1ZWI4MmI1OWUzMWUzMiBweTNrCis3MjAxNCBkMzdhNGM1ZDZkMmI1MzhiMWYxMzQ2ZDY4MThmNzI0YzY1MmMzYWRhIHB5M2sKKzcyMDE1IDM2MmI0YWUyMTI5YTRmMjJiMGMxOWE3Y2JlYjY4ZTRkNzczMjk3YjkgcHkzaworNzIwMTYgODA2OGFiNTE2MzJkNjEzMWU2MzNkZTViZmM0YjZlN2M0MzJiNjliOSBweTNrCis3MjAxNyA3NDMyMTFiNjBjOTQ2N2YxOGE0NGJkMGM5NWJhMTk1NjdmYWQzNzVhIHB5M2sKKzcyMDE4IGNlN2MzNTNhMWU5NmJkYTA4YzBhOTE0MTNhNmYwYjc4ZjYyZGExMTcgcHkzaworNzIwMTkgN2ZhYThhN2Y4NjNlMWNmZGUxYjkwZTcxMTczZmUyN2QzMWJiZmViNSBweTNrCis3MjAyMCA5ODg4OWVmMTU3OTU4ODRmNDJkNjhiNGIwZmEwYjViNGNhN2JiZjQwIHB5M2sKKzcyMDIxIGU0OGY4NjBhNWNhYzIwYjU4ZTk4MThhNGZjOGE1ZjI4YzFiZDkxNWQgcHkzaworNzIwMjIgNmJiZGExODUxNzMyZTE1NTBjZTYyZDcxYTE3MTAyZmZiMTUxODY0OSBweTNrCis3MjAyMyAyMTgwMDA4ZDAyZWVhMmMzYTc0NWYwZWY0MGFjYmE0OTk2MTgyNmNmIHB5M2sKKzcyMDI0IGVhNGUxOTJkOTQxNDdiNDhhNTE3ZjU0NjMwZWFkODUxYTgwMDczOTYgcHkzaworNzIwMjUgNGFiYzRjYTQ0NjFmZGJlZDAxNDExYTljY2ZlNmNmZWNmNzE4N2U3MiBweTNrCis3MjAyNiBkNTgwMTc1OTk3Y2Q1MDljYTgyMDE4ZDljYTFkZDBmODlmZjEwMzU3IHB5M2sKKzcyMDI3IGY5NDNkODI0YzhjMzVkZDc2MmRjM2EzMDkwYjEyZWM2NzMwZmFhNGIgcHkzaworNzIwMjggZjJkNzEwZTQ3OWUyZWRhNzIxZjMxNjg3NGIzMGZmNjA3M2FkODA4OSBweTNrCis3MjAyOSA3MWEyYWFkNWJhZDY1NWZlNGUxNmJiZjk3MzY1MzY3Yzg4NTMxY2ZmIHB5M2sKKzcyMDMwIDI5MzU0YzQ5NTBlNDk0NjgzYzdhODQ3NzgzNTY3MDBhODJmNDJkODMgcHkzaworNzIwMzEgMDFkMGJkOTUwY2NkMTM0NDUzZGUxZDE4YWNmZjljYTY0ODhmNTUyOCBweTNrCis3MjAzMiA0MWZhMWExMDYzNzNhZGIyNWQzODhkODE5ZTViMThiYzhhOTBhMTY4IHB5M2sKKzcyMDMzIGMyNWU1YTk1NTRmNTMwOTA2NmFhZmViYjVlZjQ4ZmUyN2MzZWIzNjIgcHkzaworNzIwMzQgOTc1MDY2NzJhZmUzZmI1MjQyYzU4ODNhODg0NjYxMDZiYjRkYmE5MiBweTNrCis3MjAzNSAyY2UyNmM0Njc5Y2I5NzU4M2IyM2ZlMzJjMmIyOTJlNmVkODYwY2EzIHB5M2sKKzcyMDM2IGM2YzRjMDYzZDg3NDBlZjI1MjAxZmE5M2E4NTIyZTgyM2NlOTkxNDEgbGVnYWN5LXRydW5rCis3MjAzNyA5ZTA5NzgzY2UyMjg4ZGVmYWQxMDJmZDQyMjIyYWNkM2Y4OGQ1Y2ZiIGxlZ2FjeS10cnVuaworNzIwMzggNWQ3NTIwM2M4NzEzOTJjZWZiNmEzM2ZhMDA1MjI2OTE5Y2ExZmY4MyBsZWdhY3ktdHJ1bmsKKzcyMDM5IGI0ZWJiMzAwZTYxMTljMGZiZmM3MWNjNjY3YjFlZGUzODdmNjU4YjAgcHkzaworNzIwNDAgNGJkZDg0N2I1N2MyN2EyNWEyZWRkNjdkZjRkYTY0YzQyZTRiMGRkYSBsZWdhY3ktdHJ1bmsKKzcyMDQxIDFmOTViYTRkMWVjYjE4NTk4NjIxNWMxOGZiZmZkOGNhYzE4ZDVjZTYgcmVsZWFzZTI2LW1haW50Cis3MjA0MiAxYTQ1MWZmNjU4M2M1NDhmOGIwNjY0NzEzNTJlNDQ1MTY2N2I0NWRlIHB5M2sKKzcyMDQzIDc4ZGZiYWY2M2IxN2M5Mzk4YTE0MjJjMjFjMjk4ZDNhODQyNDVlMGMgcmVsZWFzZTMwLW1haW50Cis3MjA0NCA0YjRiNTlmMjc4YmYzMzhjYjI1MzIyNmRkNGJkODBlMmVkNGIyYjcyIHB5M2sKKzcyMDQ1IGIwY2NmMmFjZmExZTY5MDgwODllZmRiOWNiMDYyMTZiMjk1NDdhNWYgbGVnYWN5LXRydW5rCis3MjA0NiA1NDI3OTE2MzM4OWQ0NWY0N2VjNWI5MjdhYTY5ZWM3ODk2M2M0ZDhhIHB5M2sKKzcyMDQ3IDg0NTM3ZGVmNDU1MDUwMTk2MTFkZjkzZDVhNTk3ZThmZmI0YzY3MWIgcmVsZWFzZTMwLW1haW50Cis3MjA0OCA3YzM5NTc0YWQwMzc1NDE2YTJhYWFhYTQyNjRhZTUwZDg0ZTBhZWYwIHJlbGVhc2UyNi1tYWludAorNzIwNDkgNzhmZDE1ZTA1MjU4NDA3MGNhMmNlMmQyZDFiOWUwOTk0MGY1NzlmMSBweTNrCis3MjA1MCBlNTZmZGJhNjFlOTc1ZjExODQ5MzE2ODBiNzhmMjJjYTlkNzE2Y2ZmIHB5M2sKKzcyMDUxIDM4NTIyZWEyYWRkMGE4NzYyNmUzMTdkOWNjMmNkMzY4NGRhNWJiN2EgcmVsZWFzZTMwLW1haW50Cis3MjA1MiAxYzA2MGQ1YzQ3Y2YwYWVkYWM3YzdlNGYyYWE1MGQ3ZGVhNDU4OGE1IGxlZ2FjeS10cnVuaworNzIwNTMgMmIzOTQ1ZDc1NWE3ZmU2MWI3OGY1ZGUyZTA5M2I2MjllN2VkMDUzYyBsZWdhY3ktdHJ1bmsKKzcyMDU0IDAxOTI0NGY0YjBkMGQwZTVkOTMyZjZlNTQwMWIxMWU0ZGM4MTNjNmQgbGVnYWN5LXRydW5rCis3MjA1NSA0MjNmOGY5YjA3YjE0YTg1NDRjNWZmMzMwOWE2ZDI4OWRjZGEyODRhIHB5M2sKKzcyMDU2IGQ5Yjk0MjJiNDA5Yzg5ODQwMWY5ODBmZGM4ZjM0YmM5MThiMWE4ZjggbGVnYWN5LXRydW5rCis3MjA1NyA5N2NmZjU5M2EyNTdlOWQ1YmE1ODFmNTlkZTRhMTZmZDdiMmZhOTM5IHJlbGVhc2UyNi1tYWludAorNzIwNTggNmYxNTg4ZmI3NTk1ZTFiMjBmZTZkNmY1Yzc4NTZlNTQ4MTBiMzg1MiBweTNrCis3MjA1OSBiMGFlOWZmYzc3NzlmZDc1MDNkYzRmYmQ0MjExNWU4YzMwNjkzZjVlIHJlbGVhc2UzMC1tYWludAorNzIwNjAgMzI0NjBiMDRlN2I2ZTBkNTA3NzI5MmE3NjVjZWE1Yjg5NTEzYWQxZCBsZWdhY3ktdHJ1bmsKKzcyMDYyIDdiMjA2ZTJjMDA5MmM0YjJiYjgxZmYzOTg0MTNkNDQ4OTA5YjhmZDMgcHkzaworNzIwNjMgNGFmMmJkYzliMWI3MzU1Nzk1ZjY5NzcyZGE0Y2I4MzBjZmJkZTIyYyByZWxlYXNlMjYtbWFpbnQKKzcyMDY0IGNhYmNlZjdlNmYyNTZjZDE4MjU4YTUxYjU1MDZmMjQ5OWE4NjE5NjggcmVsZWFzZTMwLW1haW50Cis3MjA2NSAxZWM0YmYzZGRkYTZmNWVkMjkzYTliOWJkZGQ5M2Y1NzY5Y2Y0ZWVkIHJlbGVhc2UyNi1tYWludAorNzIwNjYgZGNiYzIyMDNiZGYzNjI3NmIyYzhkMDcxNjk1MjlkZWVmZDcwNzgyMyByZWxlYXNlMjYtbWFpbnQKKzcyMDY3IGQ2NWRiMTY5ZTNhZDcxNTE2ZTA0YThlZWM3YmJmZTNjZTZiYjdmMmYgcmVsZWFzZTI2LW1haW50Cis3MjA2OCAzZjE1YTA2ZDAwNDczYWM5NDYzMmEzOGYxMjQ0ZWI0YmY5ZmI0ZGZkIHJlbGVhc2UyNi1tYWludAorNzIwNjkgYmYwNTIyMmMwNzQwMGUyMWI2MmRlOTEwZWM2YWE4YWRlYjZjZmRlOCByZWxlYXNlMjYtbWFpbnQKKzcyMDcwIGY3YTM5ZTYxOWUwYTFmNjJmODU1MGM1MzA0NDZmMjZiYjU1NjUwMjIgcmVsZWFzZTI2LW1haW50Cis3MjA3MSAwMmQ2ZjNhNjk3N2Y3OGI1ODg1ZTFlMmQ0NDk4MTEwMWMwNzVmZmNkIHJlbGVhc2UyNi1tYWludAorNzIwNzIgZjI0NjcxNTI4OTgwZTdjMzQzMjcwOGUxNTI4MWMyM2I5M2JkZmM3ZSByZWxlYXNlMjYtbWFpbnQKKzcyMDczIDcxNGY5NWVhNmI4ZjZjOGM3OGVlNGI4OTdiZDkwZTIwZTBiNjNmN2IgcmVsZWFzZTI2LW1haW50Cis3MjA3NCAzNmViNTM3YWJiMTc5MzYyZjRhZmUzYjRlMTY4Y2VhYjcwYzU3NzgzIHJlbGVhc2UyNi1tYWludAorNzIwNzUgNTAzZjBmNDFmMzVmOTFhZjQyNTRhMGE0YTg4OThiZGVhMGViZGJmYyByZWxlYXNlMjYtbWFpbnQKKzcyMDc2IGIyOGRkZWJiZDgzNTU3NTk4OWNlNDUzNTMyMWY0MTFiMjAyYzRiYTEgcmVsZWFzZTI2LW1haW50Cis3MjA3NyA2ZjEwZDUyNWUzYjg0YjUzMDJhNDdiNWFhYjc0MDY5NjczYzdiY2I4IHJlbGVhc2UyNi1tYWludAorNzIwNzggMzE2NmRlZDZiYzRhMjZjMmQxOWEwODk0Njg5MTExYzI3NTNhODgzNiByZWxlYXNlMjYtbWFpbnQKKzcyMDc5IDlkYzM0ZWYyMjczNTM4MjdhNDM3YWIxNDRhOWNhZTk5N2FhZTkyZDUgbGVnYWN5LXRydW5rCis3MjA4MCA5MDAwZjk2NmNjYmJiZjAzNTg1ZmJkNGU0MzJiYzljZGIwMDAzMjZiIHJlbGVhc2UyNi1tYWludAorNzIwODEgZTI4NDNiNjQxNzVlY2Q2OTRmMGRlNzhmMWUxOGQyNDNlMWNhZWY4NSBsZWdhY3ktdHJ1bmsKKzcyMDgyIGM4Zjk0MDA3YjFjNDZlMGUxOWUzZTAzYTIzNzVjY2RhMTU2ZmUzNGYgcHkzaworNzIwODMgMjMyZDIyNTBkNzAzNTVkZmQzMDMxZGU1MDhkMThjODdmYjcxOTAyYiByZWxlYXNlMjYtbWFpbnQKKzcyMDg0IDAyNWJhMTJjN2RhNTQxODgwOGYwNGY3ZmY3ZDRjYjc0MzBiMGMzMWQgcmVsZWFzZTMwLW1haW50Cis3MjA4NSA3NDU5MDIzZmY4NjFhZTVmYWNmYTU2MjFjNjkwZDVkNDBhMTgwMWYwIGxlZ2FjeS10cnVuaworNzIwODYgN2ZkYTVhZjJhZjdkMTBjNjZkZDY2NGQ4NjlhNmJhMzJhZjMyZjJkNiBweTNrCis3MjA4NyBhMzhkNmNkOWFhNjM2OWNmZmUzMmYwZjMyYzI2NzdhMWQ1YWE2MTUxIHB5M2sKKzcyMDg5IDE0NjlmYjFhZWE5MjRkZGNmYzhmNmQ3MjliMDQzYTNjY2ZmZjZiYzkgcHkzaworNzIwOTEgM2I0Y2VhNDNmOWU2Mzk5MmMyMWRkOTFmZjhhOTIwMDFiMzYyYTc2YSByZWxlYXNlMzAtbWFpbnQKKzcyMDkzIDgxN2Q4YjI4Y2Q2YjNlMjYzMzY2ZDZmNTJjYzZhYjQ0YTYxOTMyNjMgcmVsZWFzZTI2LW1haW50Cis3MjA5NCA5YzJhYzFlZjNhNmZlNGQ3ZjM3YTMyNTE2YzZmZjJlODBhOWZhMTc1IGxlZ2FjeS10cnVuaworNzIwOTUgYjQwODk0MmZiNDM1Mzk4ZTlhMjFiMjY4MmQxMzM0NzQwYTkwZGQ1MCByZWxlYXNlMjYtbWFpbnQKKzcyMDk2IDY5YmVhMjZlYzg3Yjk5MzdlNTY1ODdmNDUxNmRhYTVkNTExODEwYjEgcHkzaworNzIwOTcgY2VhNjQxZmY0NTM0YzM5MGRiYTQzMjkwMmJjYTNiNGM0NmZjMmQ2ZSByZWxlYXNlMzAtbWFpbnQKKzcyMDk4IDNkZmJhYzc5OWNmNTFjOTFiYTA5ZDYyYTBiODczNzRlNDgxMjFiN2IgcHkzaworNzIwOTkgMDIwNjg4NzdjMTkwYjNkNzc5YWFjNmYzYjRkMDUyMGQ2NjQ1M2UyNSByZWxlYXNlMzAtbWFpbnQKKzcyMTAwIDRlZjdmOTNkNjFhMWE4ZDcwNWY2ZTg4YmI1ZWU1ZGMzY2RhMDcxOTUgbGVnYWN5LXRydW5rCis3MjEwMSA4NjE3ZTgxMDE2YjZiMGMxYzg5ZGM5NDNjYmM3ZjA0NjczODg3NmIxIGxlZ2FjeS10cnVuaworNzIxMDIgNWY4MWM0NWJkZjZkMTAxODA4MDZhNDNiNjFjOTUzODQ2NjU4ZjI1NCBweTNrCis3MjEwMyBiYTYzOGQzYTQ5ZDE1ZjVkZjY5OGE1ZGNmZTRhODExMWFiMTY3MzM2IHJlbGVhc2UyNi1tYWludAorNzIxMDQgZTk1Yzg3OGFjNzlhZTdkNzk5OTYzNTdkNDdlMTdhMDRmZWE4NWNjYSBweTNrCis3MjEwNSA3MzcwMmFiZTFjYjk3MTg0ODNiNTAzM2M0YTM3ZmY1YWYxZDg3ZjE2IHJlbGVhc2UzMC1tYWludAorNzIxMDYgYjg2MzNjNzg5M2ZlZjQwMmVkNDY2OWJlMzU3YzQ4NDMyYjAxM2Q4NSByZWxlYXNlMzAtbWFpbnQKKzcyMTA3IDJlZjJjYjU3NzNmZTJlNGVhZWFkY2RiNDE4YmVkZDg2NTY5OWU1MjAgbGVnYWN5LXRydW5rCis3MjEwOSAzNzU5ODM5YjlmYTU0OGJjZTBkNDAwYmNlYTJlZjkxZmFiODEwMGRlIHB5M2sKKzcyMTEwIDIxODAzMDc1YjQxMTE1NzgwNmQ3NTdmZjQ5ZWQ5MzhjMGQxYjgzMjQgcmVsZWFzZTMwLW1haW50Cis3MjExMSBhZTdmODJiYmYxNmM4ZTZkZjNhZDMwMzJmODA0N2ViZDE4ZGJhNTA2IGxlZ2FjeS10cnVuaworNzIxMTQgYTM4MTRkYzk5YjgwZDFjMjNkOWNkZWM4Y2Q1ZjA5N2M2MWYzODQ4OSBsZWdhY3ktdHJ1bmsKKzcyMTE1IDNkNmJjNDI2NDZiNTFlMGMyZjNiZDMyMjAwOGYwNjgwNTVjYzI0ZTcgbGVnYWN5LXRydW5rCis3MjExNiBjODU1ZGY3YzZiYjU5MTA1MGJjOGEwMjMxODNlNTc1YTUzNWFkNDU5IHJlbGVhc2UyNi1tYWludAorNzIxMTcgY2NmNzg1M2IwNzkzMjQ0YmZmYzU0MmY4ZDRlYTI3NjZjMzUzMmNjMyBsZWdhY3ktdHJ1bmsKKzcyMTE4IDY0N2EwNDBkZjRkMTFjZDQ3MTk5OTkwZDNhMmIyYzJhMzFjZjZkNmYgcHkzaworNzIxMTkgYTNmY2NjZWU4OTU3YTBlNmExYTRkNTdiYmFiMzc3NGM1MzkxMzI3ZCBsZWdhY3ktdHJ1bmsKKzcyMTIwIDQyZWY3NmY1NDRmYmYyMWI2ZTYzNDAzMDU5ZTYzMjAwNTQzZjNkZjkgcmVsZWFzZTI2LW1haW50Cis3MjEyMSBmZTA2MjE4NzYyNGNiZTczYzMxNzdkNmQwMzFkNjgyN2UwMGZlMjk4IHB5M2sKKzcyMTIyIDc2MTdmYTcxNjRkZTZkYzcxNDBhYjllOWFkOGIwYzE4NmMxNjMxYjAgcmVsZWFzZTMwLW1haW50Cis3MjEyMyBjY2ViYmFkNWY4ZGZmZTlmZDhkYmYxYzY5NTllMjI4YWM2YWZjYzMxIHB5M2sKKzcyMTI0IDkzZmU2MTFjYmQzYWExMmYxZmRmZTBlMjEzYzUyNTMyODJjZjUwNDEgcmVsZWFzZTMwLW1haW50Cis3MjEyNSBiMzljYjI5MjE5NDU3M2QxYmI0MGEzOGYxY2ZmNjcyZjFkNGY4MTU2IHB5M2sKKzcyMTI2IDQ3NjIzOTRmYzI2YzUyYzE5YjkzMDBmODA0ODhkMjM2YjE1ZWZlYWEgbGVnYWN5LXRydW5rCis3MjEyNyA1ZDk3NzFkN2NjNDZjN2YyOGI0NjBjMTZjZWQwMWVjNDgyZGJkN2IxIGxlZ2FjeS10cnVuaworNzIxMjggOGE4NTlhYzdlNWI4MWUxOWJlY2NhZTA2ZGQ0ZmM5NWYzNDU1OWQyMiByZWxlYXNlMjYtbWFpbnQKKzcyMTI5IGUyNzQ0OWRlNjFkYjY0OGM1NDc3MGE2Yzg4MGMwMzI2NGFjMGFjNzIgcHkzaworNzIxMzAgZTg5NDQzM2M2NDY0MGYxOTc4N2MwNmRjYTVhN2E5NjE2NDAxZDIyZCBweTNrCis3MjEzMSAyN2M2YjYzZDFkYjM1NWY2ODc3MTc1ZDNkYzE3NmM5MGE3ZGY0MDFmIGxlZ2FjeS10cnVuaworNzIxMzIgNDExMzc0YzVhYTQyMjc4ZDMwZjE2YTA3MjExYmFkYWViNWY1ZjIyNSBsZWdhY3ktdHJ1bmsKKzcyMTMzIDk0Y2RmZDA3ZDRmNDhkNzI4NTI0OGM3YzAzYmUwZTQ4ZDVmNGJhNzMgbGVnYWN5LXRydW5rCis3MjEzNCA3OWRjOGQ1ODhlYjMwNjZjMjk4YmY0NzllOTA3YTg1N2FhZWM1OTY2IGxlZ2FjeS10cnVuaworNzIxMzUgZDY4MmM5MzQ2ODQ4MDg4MzI4MjU4NDI0NjM2NDRjMmM5MmI2ZjBhMiBsZWdhY3ktdHJ1bmsKKzcyMTM2IDBmMmIzMzU2NjhlZWJjOGZkYTlhM2IxMjA4NjBiYTAzMTU4ZTg4MzIgcHkzaworNzIxMzcgMzRlN2MxYjE0NDk1MDFhMTgzZTFkOGIxYTE4ZGRlODViYjk4Zjg1OSBsZWdhY3ktdHJ1bmsKKzcyMTM4IGExZWZhZjAxNTEwMDE3NDcwYmZjZGFlYTgxNDFjYzE0Y2VmNThmYmEgcmVsZWFzZTI2LW1haW50Cis3MjEzOSA0MGQzNDMxZGIyNDA4NTVjNDNmYjVhYmRhOGUxZjI4Nzc2YjExYmI0IHB5M2sKKzcyMTQwIDJjZGUwZDAwM2ZmYzAzZTgwMTBhMWE2ZGExZmVmZDcxNDBjZmQ4ZGUgcHkzaworNzIxNDEgZDY2ODhlZDA0MGNmMzZiNGNjMjE2ZjY0YzM1ODE3NzVhY2JjNjg4YSByZWxlYXNlMzAtbWFpbnQKKzcyMTQ0IGM0YTFjNDg4NDA1NmQ0OWI4ZDgxZWFhZWE4NWRlZjc5ODRkM2FlMmYgcHkzaworNzIxNDkgYWJjODBmOGIwZGZkYzFmZmRkNWM4ZDFmZjAwZDI3NGZkMzc1YWI0MSBsZWdhY3ktdHJ1bmsKKzcyMTUzIGVkOGMxMzk1ZDAzMzBjZGY3NDZhMmI1ZWVmMjYxYzQ3YTViN2MwZjQgcGVwLTAzODMKKzcyMTU1IDI5NjU2YTAzY2NlMmZhNGMxMDRkODA4MjlmMWRjYmRhODRmMDI5NDQgbGVnYWN5LXRydW5rCis3MjE1NiBiYzYwZGUyMzIyMDMxY2VkNWI0Nzg5OTFmN2IyYTA1NzMzZTI3M2UzIHB5M2sKKzcyMTU3IDRiODZlNTNmOTAwNmY2MTcyYTliOWNkMjZkMjQ0NmM3OTM0ODFjZjYgcGVwLTAzODMKKzcyMTU4IGJkYWI3Y2NkYzdiNDg2NDExY2Q0ODQ2OGIyZmVhZWI5YTE5ZjEzODggcGVwLTAzODMKKzcyMTU5IGU3YTllMmZkNzEzZjAyNDE3MGE4NDUxNmQzNmE5NTUyNWNkZDZkNjQgbGVnYWN5LXRydW5rCis3MjE2MCAwOTM1ZTI0YzgxYzA4ZDVkZGI3NjI3MzQwMzMzMmQ5MDYxYjNkMjYwIHB5M2sKKzcyMTYxIGUwOGU4MGU3NjhjMTFmMDk0ZjFiNDA3MDczOTUzNDIxYmY2YTE4NzMgcHkzaworNzIxNjIgYTgwYjNiYjRkMWIwZGIyNjU2ODc2YjFlM2YwMzRjZTExMDM0MjFmMyByZWxlYXNlMzAtbWFpbnQKKzcyMTY0IDU0YzdiYTNkZGZjNjU2ZWYxZGQzOWJlZmE0NzNiYjM0NzgxNjFkZTYgcGVwLTAzODMKKzcyMTY1IDYwZDBmMzczYTg5NDZhMjBhMGQwMjhiODA0ZGJjZTRkNWQyNWJmZjkgcHkzaworNzIxNjYgYWViOTE0MTkzYjQ1YTYwYTFkN2RkNGYxYWEzMTdkMTgyODk0MmU1OSByZWxlYXNlMzAtbWFpbnQKKzcyMTY3IDg1NTQyNzE1YTI0OTBiZDYxYjRlNWQ2MDMxOGM0ZjYxNDQ1ZTQ2YzcgbGVnYWN5LXRydW5rCis3MjE2OCA2MzQ4MGI5MmE1ZTEyNWY4ZDliZjAzMTY3ZDkzYTVhMjg4YzEwNmIyIHJlbGVhc2UyNi1tYWludAorNzIxNzAgOTZjMDRlNmE2ZDg4MmQzNmM1MjA3NTRhMTdhZmQxYmRmODliNGMxNiBwZXAtMDM4MworNzIxNzEgY2M2OWQzZGZmODdhMjIyYWE3NWVhNDQ5ZjRjZGMyZTRiZWQ1Mzg2YSBwZXAtMDM4MworNzIxNzIgNWM1NWI5YzgwODQ2YTRkMWZhMzE0NmVlZDI2ZTkxMmIyNGQyYWQ1MSBweTNrCis3MjE3MyA5NjNmMGY1MTk3MDk1NWVjNzQ0MjMwMWY5YTBjOTljMDc5OTg5MjY3IGxlZ2FjeS10cnVuaworNzIxNzQgOTg2NTFlNGY2NWZlNTlhYTA3NTljZDU5YTA4MDZiNTQ3OTY2OTY1YiByZWxlYXNlMzAtbWFpbnQKKzcyMTc1IGJjMDRjZWJjYTdlNmI0Mjk4M2NlN2Y4ZDAxZTg4NzZkOTJhY2IxMWIgcHkzaworNzIxNzYgODlkNWVmODJjMDA2NzcwY2YzYmY2OGFmMjRjZGQ0NTJmZWYxNzhhYiBweTNrCis3MjE3NyAwMWFlZDQ4MTk2YjAyOGViOTFhOGQ3ODc4ODA1MGU4Y2FhYmEyN2RmIHB5M2sKKzcyMTc4IDQwOTQ0OGQ0NTVlM2U0MjYwZWFmYzljNzExMWM2Y2U1YzFlZTg0NjYgbGVnYWN5LXRydW5rCis3MjE3OSA5NjBlZjAwZDUyMTQxNzc5ZDgyNDlkZmFkYmIzNjdlMmY5OGFjYTlkIHB5M2sKKzcyMTgwIGIxOGJkMWE0OTRjNzFmMDU1OTYyNTQ0MWQ2OWIwNDYzOWU4MjFiYTUgbGVnYWN5LXRydW5rCis3MjE4MSAyMjgwMzY1ZWFhNzJjMTA3NDZkNzQzYmY3MWQwYjg0NjRlMTU2ZTg1IHB5M2sKKzcyMTgyIDk1MDYxZGEwNmNiODQ1Yjc5MDNmNGJiNTk0YzZhZGQ4ZjAwNWZiNDMgcmVsZWFzZTI2LW1haW50Cis3MjE4MyA4OTYzY2Q4NThhZDYxMDZhNjNjNTMwN2ZlZTAzOWVhNDNiMTNkOWQ5IGxlZ2FjeS10cnVuaworNzIxODQgOGZiMTljYTYyZTcwZGZjNWY5Njc5ZWVjN2I3NTNlZDY5MTc5MTlhYiBsZWdhY3ktdHJ1bmsKKzcyMTg1IDEzNTVkYWMyMzhmZWNhZWI4MjczMWMxNmYyNzFhMmEwMzEzMDM2OGUgcHkzaworNzIxODYgMGQ4MTdlOGVkM2ViZjlkZjdhYmFmZmEwOTJhYmFiNTU0MjE0YmY4NyBweTNrCis3MjE4NyA0MmQyOGU1ZGM3Y2IxNGM5NDUwYzJmNjJhMWRiNmI1ZjQxMTA3NzVjIHB5M2sKKzcyMTg4IGViODExNWFiZmY1ZTU1MjE1NGZkZjBmYTEwNjYxYjg1MzUwNTFmY2UgcGVwLTAzODMKKzcyMTg5IDIzYmM0YjM5MWMxMDIyOWI2OTQxOGExNDBjNmY0M2YxODk0MTU2ZjYgbGVnYWN5LXRydW5rCis3MjE5MCAwYzhiZmRkYmZjYTI2NjY3NWYzYmUxY2Q0MzdjMDFjMmJiZWFkZjE5IHJlbGVhc2UyNi1tYWludAorNzIxOTEgOWQ4NDBhNThhMGQ1ZDFiNmFiYzhmZTJjNWE2MjBiODdiM2MzMWZjNiBsZWdhY3ktdHJ1bmsKKzcyMTkyIDUxMWEzN2VmMWE0MTBmZjRkMjVmNzQ4MTk0ZGRiM2JjNjIzZWJlMGQgcHkzaworNzIxOTMgMDUxMDE5ZjBkZDlmZTM5YTVhZDhjMzQxZjhmMTMzNDhhZDE4MTA0NSByZWxlYXNlMzAtbWFpbnQKKzcyMTk0IGY2ODZhY2VkMDJhM2U0ZDQzYzM0OGM2M2FkNmQyNzgzMmNiYzVkZjcgcHkzaworNzIxOTUgZTE5Y2MzZWJiNThhMGJlNjI0NGE0MzdhZDQwODRjY2RmYzI0NjFkNiBweTNrCis3MjE5NiAyMDZjY2Y5YWEwMjVmMDE2NDVmYzFiZjkxZDdhY2I3MmVjNzc3MGM4IHB5M2sKKzcyMTk3IGU2MmJjNTdhNjJlYWJhMGFhYmU4NjQyYzczYThlZmJkMDJkNTk1ZDYgbGVnYWN5LXRydW5rCis3MjE5OCAwMmI2MTUzODlkM2VmNTA2YWNkNTAzOWUwYjc3Mjg2YWVhYjA3OTU3IGxlZ2FjeS10cnVuaworNzIxOTkgZDdiNTFlYmY2ZGU0MjQzNjlmZjVkNTYzNmExNWI0OWNlOTE2NjBhYSBsZWdhY3ktdHJ1bmsKKzcyMjAwIDFiNzFhNTcwZjU0ZWFjZmQ4NjAyYjQxNjk0MWRiNDlkMDE2NzYyNjIgbGVnYWN5LXRydW5rCis3MjIwMSAxYTg0OWVlNWYwOGNjODY0MTY4MjFiOGNiYTE3MjkzMGFlNTg0Yjg4IHB5M2sKKzcyMjAyIDVhYWYyNGVjNDNkYzEwYWZhNGFlNzU2YzU2OTkwNmEwNTdjNWQyMWUgbGVnYWN5LXRydW5rCis3MjIwMyA5MDNlODBmM2U4MTE4ZWYyN2M4MWFjYjRlODk1NmIwNjE0NDg0YTg5IHB5M2sKKzcyMjA0IDExYjFmYzk5MjFiZDBlMDNkMTE0N2Y2ZWU4YmRjNzBiM2UyODQ2MGUgcHkzaworNzIyMDUgZjI3N2E4NDA3MWYxNGVlMjg1N2I0ZmExYTQxZjhmNGUxYWMxMjE5OCByZWxlYXNlMjYtbWFpbnQKKzcyMjA2IDIxYmRhNjExZjBlNDAwZDc1MGU1OWZkODZmNmQzMmEwYmIzNDg4N2EgcmVsZWFzZTMwLW1haW50Cis3MjIwNyBlYzNmYzY0NjMxZDk5ZWVmYTFlZjAxOTRkZWYxOGU4NTQ2OTRjNzQ2IHB5M2sKKzcyMjA4IDUyYTc3ZWYwNjljZGJhM2ExMmZlNzc2M2UzNzk0MDdlMzhlOWRiMzMgcHkzaworNzIyMDkgNjYyMDBhNzZkZTI2NjJiNDcxNTY1YzgzNWY5Njk2MWNlZTM4N2MzMCByZWxlYXNlMzAtbWFpbnQKKzcyMjEwIDliNTVlOWI5OWE0MzZiZGEzNTdkY2M5MjJmOTg1YjRkNDZjNWFjNmYgbGVnYWN5LXRydW5rCis3MjIxMSA1ZmU5MDRmZmM2YjgyM2M0ZjliMjE2YjhhOGYwNzUzN2UzMTE1OTUwIHB5M2sKKzcyMjEyIGJlM2MwN2FkZGU5NWRhNDM1ZWZiZDZiNDEyN2I0OGI0OTkzNjVhNDUgcHkzaworNzIyMTMgZTBjZWRlN2Y1MjFiNDM5ZmU5ODEwODViNmJjMjA4MjAzYzg4MTc4YyBsZWdhY3ktdHJ1bmsKKzcyMjE0IGE4OTMxOTQxNTVhMjI1MjNmYjc0Yzg2OTg0YjI2NWY2YWVjMTZhZDEgcGVwLTAzODMKKzcyMjE1IDRmNjVlZTFmNDg0OGY2OWJmNGU3YzkyNjQ2NGMzZDMxMzEzNDkzODggcGVwLTAzODMKKzcyMjE2IDU4NzA1MDgyZTdjODVjYjc1ZjY0ZDZhZWMxZWE5MmY5OGRkZDQxMGUgcGVwLTAzODMKKzcyMjE3IDUyYTg5ZDcyM2I2YmMxMmQ4MzczZmYxN2YyNWNlNTI5YjFlNjM1MWYgcHkzaworNzIyMTggMGVjYzViOTA2NDc3OTUyMzVkNmRmOWU3NGYzOGE5MDNjZDEzZTIxNSBweTNrCis3MjIxOSA3YmNlMDUyZjBlN2I3MWU0ZWY2M2MyYmQ0OGFkZTc2NjMzMWU3ZjY0IGxlZ2FjeS10cnVuaworNzIyMjAgYzVmMTRkYmVhNDNmYmNjY2ZhYjdjZGI3OTE5OTRkMTIwNDIyMDUxMSBweTNrCis3MjIyMSBiMDZmMTFmM2I2NWIwZDg4NTllZGU4Y2VjYTA0ZmYyNmRjZWZhMDEyIGxlZ2FjeS10cnVuaworNzIyMjIgYmE0NWUxMjY1NzRkYTFkNmJmNjFkNGJlNzEwOWM5YWY0MzkzN2I4YyBweTNrCis3MjIyMyBlNTQxNDFkNjNlMDE4NzRiYTJiODkwMDI1ZDgyMGRhYmUwYjdmMjcxIGxlZ2FjeS10cnVuaworNzIyMjQgNjRkOWE5ZTdmNjhlY2Q0MjBhMjk0YTkyZjlmZmUyNTFhNmRhMTRmZiBweTNrCis3MjIyNSAzMDNiN2VlOGU3ZmVmMmJhZjNlYWMxYmZjNGM4MmIyNDc0NTQxMWVlIGxlZ2FjeS10cnVuaworNzIyMjYgMDAxYWM1OWMxZTY3MmNlM2RhNjRiYzFjODRlM2NhZDM0YmJlMmZjYSBsZWdhY3ktdHJ1bmsKKzcyMjI3IDlmZWYxZjE2NTdjOGE3NTUxNGMzZDI4Y2QzNjFhZjQwNWVkNDFmODYgbGVnYWN5LXRydW5rCis3MjIyOCAzNThhYjFmZmFhODA4NGVhNzczYjFhYTkxYzNhOGQ3Mzg5MGU3ODY5IHB5M2sKKzcyMjI5IGFlZTJiMTBkYmFiOTM4ZWMyYWE1NGQxODA3MWJkYzZhZDA4ZGJlNDYgcHkzaworNzIyMzAgN2ZmZDk2MjVjOTFjZmQ3OTg0MzY1MWQ1YTJiMDk5MzQwZWVhZjM3NSBwZXAtMDM4MworNzIyMzEgMDAwNjNhZGYwNTU4NDU2NThiN2RiMjAxZTQ2YmFlMzIyOWMyYzllMiBwZXAtMDM4MworNzIyMzIgMDcwOWM2ZDM2OWRlNjcwN2NjNjlhODdiNTNkZDM5OWFhYzRmMzk1MSBwZXAtMDM4MworNzIyMzUgNzY0ZWFlNTIwODgwOGY1ZjA0YTMyNmFlMGIwNzYxMDIwYjNiZmVmNCBwZXAtMDM4MworNzIyMzYgOWIxMDdhNzk3ZGY4OWUwODYzZDdkM2Y3N2RkMTlkNjBmNmRlNjUwMyBwZXAtMDM4MworNzIyMzcgZDZiM2I3NGJkYTBlNWFlY2JmM2Y2NDU4ZTQ5NThjMjNhMzJmM2YwOCBsZWdhY3ktdHJ1bmsKKzcyMjM4IDUyNmIwZGMwOTEzODIxY2Q3MDc4MTRkMGU3NjRjOWZlNmYzMGEwMzkgcHkzaworNzIyMzkgZjc4MDE2OTk4MTVjMTI0M2ZmOTllYTgxN2Q2M2VhNDI2ZDVjMDZhYyBweTNrCis3MjI0MCA2ODc3YTFmNGEwOTI3ZmVjNjVlMWJhM2VkOGU2MzE1ODY1Yjg2YjYyIHBlcC0wMzgzCis3MjI0MSBhZTI0ZGU0OGFkYzQxZDExOTZlOGJhMWI0YjI0MmYzMWUyZWFmMjE2IGxlZ2FjeS10cnVuaworNzIyNDIgYmQ2ZDI1N2E5MTMwZjc4NmNjNWM2ZjJmNzJiNWEyNzI4NTJkOTdhNSBweTNrCis3MjI0MyA4N2ZjMTE2MmQ5ZjRiNjk0MDljOWIyYzk1MTQ3NjgzYTM4NmY5YzNhIHBlcC0wMzgzCis3MjI0NCBhYmY1NzRlOWYxZDNkNTlkNzk3NWUxZWY1ZjVmNGI5NDZhZjM0MDAzIHBlcC0wMzgzCis3MjI0NSAzOTQ0NjJlYWI2NWRiMDUyNzRhNmY2NjQ0NWFjODE4Mjg2YWY5YTk5IHJlbGVhc2UzMC1tYWludAorNzIyNDYgYTY3NzgzZDgxMmY2ZTZjZDM3NzRmYjE0YmMxYjFmNmU3MGU0NDdjNiBsZWdhY3ktdHJ1bmsKKzcyMjQ3IDMzMjcwYWQ2YWRlZjgyZjYwNTNiYzNiYzhlODk5ZjU5NWY2NzVmZGEgcGVwLTAzODMKKzcyMjQ4IDEzYTgyYTcxMGYxOWI0Mzk4MDBhOGM5ZTQ5OWY5NDFhN2ZkZjU4YmMgcHkzaworNzIyNDkgZjcwZTkxZjVmYzljZmYyNDhiNmMyZTE2YWJmOWI5NGU0NGY3ZmMxOCByZWxlYXNlMzAtbWFpbnQKKzcyMjUwIDYzZGRjZTlmYWY0YTk4N2ViNGE4Zjg5MjgxZTJkMGU3Zjk1YjcxYzcgbGVnYWN5LXRydW5rCis3MjI1MSA0YTc2ZDZkMjk3Y2ViZTVlM2IwOWExMjlhNWEzOTg3OWYwODRkNzIyIHJlbGVhc2UyNi1tYWludAorNzIyNTIgZmI1MjFmOTk2ZGUxM2JkYTc1MWRkOGE5ZTcxMmM3NmI1YzI2NDE0MiBweTNrCis3MjI1MyAxZjAwYmMxZDExNWEwYmY0MGZhMDJkOWI1MDYwODgzMDA3MzExYTY1IGxlZ2FjeS10cnVuaworNzIyNTQgNWIyOGRlYmExY2Q2YjdhMDEzYjY1ZWFhYThhM2I5ZWQ3M2M3NWU0MSByZWxlYXNlMjYtbWFpbnQKKzcyMjU1IGUyYjU1M2Q3MjA1ZjM5YmViMTA1ZGRmZDg3ZjBkMmQzZjg0YjNjMTQgcHkzaworNzIyNTYgYThiNWE1YjlhNDlhYWQyMTgzOTFiYTJhYzM4YmFhYzFmYTMxNDgwZSByZWxlYXNlMzAtbWFpbnQKKzcyMjU3IDRmODY3ZjE0OTRkNTVlOWMxZjAwOTE4MDM1MDc0ZDdhNTY3YjRjMmEgbGVnYWN5LXRydW5rCis3MjI1OCBjNmY5OWQ0YzgxMjJlMTJjYjRjYjdjODZlNjZlZWY4OTVkNGZiYTY0IHJlbGVhc2UyNi1tYWludAorNzIyNTkgMGI3ZWVmZTdiNmQxN2Q4ZjRjYTJhODFlMWYyZjA5OGRhYWNjN2Q1MSBweTNrCis3MjI2MCAxYzI3ZWNiZWQ4YzQxYTcxMjllYjRhM2E4ODI5NTczOTQ4NTg2ZjdjIGxlZ2FjeS10cnVuaworNzIyNjEgY2U5NDcyMDBiNzY4OGE5Mzg0ZDNmZTljNDcxNTRhMGU3YzI0MDRiOCByZWxlYXNlMzAtbWFpbnQKKzcyMjYyIDE4YTVhZTk2YWU1YzlhM2ZkZTFkZmJmNjgwYjNiNTE5MzMxODIxNzkgcmVsZWFzZTI2LW1haW50Cis3MjI2MyBlNGFmOTcxYjkxODQ1NjA5ODEyZjkxMTYzZjhkNDBiZjA3YTJhYjQ5IGxlZ2FjeS10cnVuaworNzIyNjQgNWFkZTBkZTc0YjVhOTEzYTBhNzE4ZDRiMWIyYjQ1MjZiYjlhZTc1OCByZWxlYXNlMjYtbWFpbnQKKzcyMjY1IGQ3YmJkZTkzNmQ2MjkwNWFkYTcyOTU2YTlkOTZlNzAwYWM0ZjViZjUgcHkzaworNzIyNjYgODM0NmQzYzdjNGUyM2I4OWU4Y2E3ODMyMGI1YzRhYzFiZWFhOGIxYiByZWxlYXNlMzAtbWFpbnQKKzcyMjY3IGU0ZmY0MjczNDkzYmQwNDhiZTBkYzlmNzliODk2MzgzYjhkOGE4NTYgbGVnYWN5LXRydW5rCis3MjI2OCA0Y2Q0MzdkZmFjZTg5ODMyYmU4YTIxMmJlODY1M2NkMTAwZTJjZTViIHB5M2sKKzcyMjY5IDY2Zjc1MDA4YzNhODcyNTAyOTM2ODJkOGViMjJmOWQxZTllOTJlNTUgbGVnYWN5LXRydW5rCis3MjI3MCBkOGQ2N2FhNzU1MjUyMDFkOGM4OWFjOTYwMGZiYTViODQzNTNmNjI4IHB5M2sKKzcyMjcxIGU2ODY4NWNmMzY1MWQ5OTg3NjZjYzQxYTFmZjA2ZWJmNTdhMjE2ZmEgcGVwLTAzODMKKzcyMjcyIGRiMjgzOTBjYTYxNzI2MDY1MWY5NmQ4MzQyYTI3YjBkMDM5YzMyZWIgcGVwLTAzODMKKzcyMjczIGQ2Y2JhZWE5NzU2OThlYmY3OTU4NGU2ZDZhOGI1OWUwYWI1ODE2YWQgbGVnYWN5LXRydW5rCis3MjI3NCAyY2Q5YWVlNmY2MjQ2MDMyODg1ZjU1NDYxMjM3NGI2OWYwMjI2NjhmIHB5M2sKKzcyMjc1IGJjMWQxOTY4MzZhNGZiYThiYzExNmVkZTNlMTBhOTEyNzQ4NjZiZjcgcmVsZWFzZTI2LW1haW50Cis3MjI3NiAzY2I1YjdkNTYzMDk4MWNmMjQ2NzkxYjMxZmQwNWY0ZTY4ZmIwMzA5IHJlbGVhc2UzMC1tYWludAorNzIyNzcgNjkyMzFjZWZkODBkM2ZhZmViMmQ1NGI4NTJmZDIzYjk3YzZhZTY2YSByZWxlYXNlMzAtbWFpbnQKKzcyMjc4IGFkMTJkOGY0MTRjNzM2MWE5ODVlMmYxODA0MDFjZTlmMWViNTQ3NmQgbGVnYWN5LXRydW5rCis3MjI3OSAzMDg4ZDJlYmY3YmU1ZWEzZDEzMGQ4YWY4MTIzNDdkNmU0Mzc2YzViIHJlbGVhc2UyNi1tYWludAorNzIyODAgZmU1NGYzOTQ1OTljMjUzNTg4MTkwZDk2MTg2MTA3M2NjYWI1ZDg2MiBweTNrCis3MjI4MSA3M2FmOTAyMDZjYmUzMjRiOTk2M2FlNTY4ODhjY2RmZGEyOTFiNzgwIHJlbGVhc2UzMC1tYWludAorNzIyODIgNWNiODVlZmY4YzAzNWFlYWEwNDA5ZjNjNTkxMzc3ODJmZTJmYjhkMCBweTNrCis3MjI4MyAxMmQ4ZmQ0OTk3MjJjMmRjZTRiYmIxYjc5NDY5OWMwMWMxNzA3NTE3IGxlZ2FjeS10cnVuaworNzIyODQgNTM4YTdkNTgzMDY0NWQwYTc2MTRiNGYwYzZkNGM3MDlmNjk0ODUzMiBsZWdhY3ktdHJ1bmsKKzcyMjg1IDliOTU5MDAwN2U4MjQ5ODFiNWRhNDhhOTBjNTg4NzI2NWJlZjRiMWQgcHkzaworNzIyODYgMTAwMzgxYzVlNzNhYmI3ZjBjYjg3NjlhYzQyZDcxYTNkMGM4MWFmZiBweTNrCis3MjI4NyA0NzkxMjE2YmZjMWViZGI5ZTg2OTUzYzk3MTU0NzVlYTRjNWYyZDM3IHB5M2sKKzcyMjg4IDc1ZDQxZjQ2MDg1MjEwOTE3YmMzYTRlZjA4OGJiM2EzNjYyYzU0MDkgbGVnYWN5LXRydW5rCis3MjI4OSA4MmZmZGZiYzQyZTU2OTY0OWRjZDRjYTljODcyYmY3MjY1MWI4Y2Q3IHB5M2sKKzcyMjkwIGY3MjI4OTJiNjBhZTNiZWFmZGM3ZjYxMDRhODJlZTRlYjdkYzBiODcgbGVnYWN5LXRydW5rCis3MjI5MSBiZDQ5MWI1YTg4MDg2OThiNjU4NWVmMWYyNzU0MGE3YTYxNmRkYzEzIHB5M2sKKzcyMjkyIDVjY2VjNGIzNjY0NmQxMTdhZmI3YmU2ZTM4OTc1MjgyNjQ1ODIzODMgbGVnYWN5LXRydW5rCis3MjI5MyAzMTBkYWE5OWQ2MDczZDMzZmNmMDdiMTRjZDIxNzcxZTk4YmMzMjcyIHB5M2sKKzcyMjk0IGMyZDEwN2UwNzgzOTc0NTJjZTg2ZTVlMTQwMTRlNDJmODM5ZWFjMzEgcHkzaworNzIyOTUgNTM5OWJlN2EzOWJhMzcxN2JkODAxZDVjNmE0OTc4MmQ1OGM5Nzk1YSBsZWdhY3ktdHJ1bmsKKzcyMjk2IDc1NzQzYWFlZTUwNDBjMGIzYmJkMjE2ZWJmZTg3NzhjMjU4MjQzMzAgcHkzaworNzIyOTcgZDM3NDdiMGEyZjM2MWFhNGQ3MGM0MGY4ZGI4MThiMGFmZTU2YWM2ZSByZWxlYXNlMjYtbWFpbnQKKzcyMjk4IDNiMDlmMzMyZjFmYTNiNDIxYjFmM2UyMTdiYzc4M2UxZTZjNDVhMmMgcHkzaworNzIyOTkgYjMzMTljMDg0ZDI1NzFjMzAzODMxMDE3NWVkMzljYzVjY2U5NzVhYSBsZWdhY3ktdHJ1bmsKKzcyMzAwIGRkOTM4YTJjYzJmMGM3NGE3MDdiZmY1OTNlZmJiYWIzM2MzNWIzYTIgcHkzaworNzIzMDEgNWJlY2M4NjU0ODEyMjA4MmMxYzkxOTNlMmE4NmVmODUwMmZjNTAzYiBweTNrCis3MjMwMiBiYmE3ZWU5ZGFlZTA2NDU4OWM5NzMxNTY4Mzc3YzQxYWRjN2FiZDU2IHJlbGVhc2UyNi1tYWludAorNzIzMDMgNjM5YTc5ZmE2YTIzOGE2NTJjOTQ4ZjE0MDA2NzMyOTA3OTExNzE0YyBsZWdhY3ktdHJ1bmsKKzcyMzA0IGFlYjQwNTBjZDQzMTg1MjYyZmM4OWViN2NjZjY5ZTJhYjk2MWFhOWMgcmVsZWFzZTMwLW1haW50Cis3MjMwNSA0ZmNmYzUzZmNjNzRiZDZjZTk5NWZjZGVjNTM5MDVkMDgxODZjMmVmIHJlbGVhc2UyNi1tYWludAorNzIzMDYgMjQxNmYxNjZkZTRiMDBlMmFiN2IwMGJiZWY2NTExNDk3ZjZlOTM0ZiBsZWdhY3ktdHJ1bmsKKzcyMzA3IGIxZWE1ZjczMTNmZGU1NGQzMWY1Mzg1ZjFlYTY3MWQxMWVmYjk5MDggcHkzaworNzIzMDggMGJmNWJiMmYzYzA4OTg2ZGMwNjBkMGFhNGZiNzA4MzNiMWJlYTk2MSByZWxlYXNlMzAtbWFpbnQKKzcyMzA5IDY2NjgyZmMxNzJlOTBlOThlOGExNDc0YWUxNWYwZjFlZGZlZTc1NWEgcHkzaworNzIzMTAgNzMyMWQ0NTEwYjQxYmFiY2UzZjljMmE0NzQ4ODY4YmQyYmU0ZDQwMiBwZXAtMDM4MworNzIzMTEgNGRkNWE2YTkzZTcwODhjMDNiMmFjMTYwN2RiOWIzNTZiYjk0NTE2NyBwZXAtMDM4MworNzIzMTIgNmUxMGI3MGE0MTEwMzc2MDI5NGQxMzAwYzllYmJlMjgxMDY4NTZkNCBwZXAtMDM4MworNzIzMTMgYWMyMDlmMTMyYjE3YjI4NDAxNGQ0YTEwY2Y5N2JhNzdkZThiN2NiNyBweTNrCis3MjMxNCA0ZTU4MzRiMzIyYzEwYTJjZjAxMGYzZDQ0ZTRiZWQ4NmM0ZTU5MGIzIGxlZ2FjeS10cnVuaworNzIzMTUgMmUwNDRjOWY0YjQwNWY3OTYyODA4YmUwOTMzMTE1NWViY2U3OWUyMCBweTNrCis3MjMxNiBiMDBjZTZmMGZhM2E5Y2ZiOTM3YzZhZGExZGJhNjhlMmI0NmZmMTdhIHB5M2sKKzcyMzE3IDFlODJiZWY2OGY0ZGZlODdkNmVkMjg5MGM3ZTExMmRhNWVjMDVhYTYgcHkzaworNzIzMTggNWRmZDIyOTA2MzQxMWZmNjFjMzcxZDY2YTNjZGI4YmYzZWZmMWI2NCBweTNrCis3MjMxOSBkZDQ4OWY0NzU3YmU4MjY5YmU5NmViYWNhMzZlYjAzMTQ1ZmI3ZTBlIGxlZ2FjeS10cnVuaworNzIzMjAgYWY4Zjg0MzI1Nzk3M2YxOGI5ODgwNDQyMTVlNDc0NmZlZDFmN2RhZiBsZWdhY3ktdHJ1bmsKKzcyMzIxIGIxMmE0NGVlZjQwYjZjNTkyNzA2ZWMzZjViNjYzNzA5MmU3NmM5MzUgcHkzaworNzIzMjIgYzQ5YmMzMzAzMjdjZjI5ZWNlNWExMGRlYWFjMjUyYmZjMTZjNTYxNiBsZWdhY3ktdHJ1bmsKKzcyMzIzIDU4NTc0Mjg4YTViZmVhOWRlYWM2MTA3ZTMzYjI3ZDcyYTY2MmRjY2MgcHkzaworNzIzMjQgNGM2MzY3MDYzOWVjNzBiNWFhNmI2NGU1ZGJiZmJlOWJhZWNmNDNhMyBsZWdhY3ktdHJ1bmsKKzcyMzI1IDU4YWEwYWQ3NzI1M2Q3NzU0YzY4ZTlhOTYxMDBmM2I3N2IxZmVlNWUgcHkzaworNzIzMjYgNTg3OGNhNzg0YTg0OTZlNGQ1ZjRjZDViZmZjMDg4MjhhMDhmODU0YyBsZWdhY3ktdHJ1bmsKKzcyMzI3IDMzYmJkZDNlZWE0M2Q5ZmNlY2U1ZWY0YzdkZjdlMzljZjdlOTA0ZWMgcHkzaworNzIzMjggOWY4NTMyYTBmMWFiY2M0NjFiNjAwMDlmYjE1NTFmZDdkMjgyZWY4MSBsZWdhY3ktdHJ1bmsKKzcyMzI5IGVjNWYwM2QxZTgxOTg5MzEzZjBhYzE3N2MyZmJjYWQxMjQ0ZmI1YjggcHkzaworNzIzMzAgZjZiZmZiOWU4MzRmOTllNjA4MDY2OGQxOWU3MDE1OThlMDQ5MWEyZCBweTNrCis3MjMzMSAxNjdjZDM3OGI1YmQ4YjM3ZTY3NjZiM2RhNWRjMGQ4MjlhYzM4NjNhIHB5M2sKKzcyMzMyIDJjYzExNjkzYTE4MGVkNzQxNzg0MzA5ZGRlYTc2NGE0OTQ0YzllMzUgcmVsZWFzZTMwLW1haW50Cis3MjMzMyBjNjM3NmQzZmE5Njg3ODE3YjJhNDFiZjU2OWVkYzA1NDljZTZiYTkyIHB5M2sKKzcyMzM0IGQxN2NjNzJmZmU4MDc2NzFkNDk2MGQ1MWJhZTA1MjFmY2RhMGM4ZDMgcmVsZWFzZTMwLW1haW50Cis3MjMzNSA5ZjZiOGNlMjAyM2YwYzI0NGZiMWExMjFmZGQ1NzQzZjdhMTBjNGY4IGxlZ2FjeS10cnVuaworNzIzMzYgMjE1YjdiNjZlNjJkZjI4NWUxNWQ5MTdhYjJkZjI5OGM0YmQzNzdkNiBweTNrCis3MjMzNyA0ZjNlZGI2YWY4YzFiYmQzYjM4NTUyNWM2ZDAwY2Q1Mzg0NzVkNGNhIHJlbGVhc2UyNi1tYWludAorNzIzMzggOTc2MDM1MzY2MDY1N2FhYTIxZDJjZDM3Y2M5YjFmMDUwMGExYjY4MiByZWxlYXNlMzAtbWFpbnQKKzcyMzM5IGNhNDUwYjI4MjdlZjM4MDliMzQ5N2ZlYWMxOGMwMmZhZDQ4YmY0M2UgcHkzaworNzIzNDAgZDg2MDFlOGIzYWJlOTFlYmEwN2QzMjVmMTczNDc3NDdjZDI5OWQ5NSBweTNrCis3MjM0MSBhN2M5OWUzNGUyMzllMjE3MmE2N2M4MDc1Mjc3MWZiZDcwYzk2ZmVhIHB5M2sKKzcyMzQyIDhlOGI5NTkwOTE3YWQ5NGM1YjgyYzYzOTU3MzhhMTQ3MDdhMTMyZWYgcmVsZWFzZTMwLW1haW50Cis3MjM0MyA3ZWE3ODcwZGQ5NjZkMjIxNmQ1MTQ0ZDczYmFkNTE1ZGMwM2Y0MDliIGxlZ2FjeS10cnVuaworNzIzNDQgZWEyYTkwMDgyYzgzNzUyODM5MjUxMTBkZDliOWZjZjE0NTYzZmY1MSBsZWdhY3ktdHJ1bmsKKzcyMzQ1IDZkNjRjZDY5ZjM4NDRhNTVlZGI3MzRiM2JhYzViZWUwY2ZhY2NmN2YgcmVsZWFzZTI2LW1haW50Cis3MjM0NiA5ODc0MjFkM2Y4YWU0MGI2ZDkwNWZjY2IyZjc3ZmM1ZmU1NWQ5Njc0IHB5M2sKKzcyMzQ3IGIwMzc1NTY3ZmFlODBhNDZjYWM4YzEyNWZkNTg5NmMzNDIyODdmNDUgcmVsZWFzZTMwLW1haW50Cis3MjM0OCAxZDhmMjRkNDBjMmM2OGZiOWIzZWM0NDFjYjE3NTA0NmM5YzgwMjFhIGxlZ2FjeS10cnVuaworNzIzNDkgNGQ1ZjA2NjU3NWVkNTBkOTAxOTYxYTMzMTNhMzhiMGY5ZDdhYjAwOSByZWxlYXNlMjYtbWFpbnQKKzcyMzUwIGI5NzdhZjE5YzZmMDEzN2ZlNDdhNzU2MWEzYmMyMTFjYWM4ZjhkZTcgcHkzaworNzIzNTEgYmJlMmFhNDMxNjkyMzIzNjA1ZmRlMWFiZTRjMjM0OTc1ZWQzY2NlNyBweTNrCis3MjM1MiA1ODFiNTY0ZDhmYzNiMmZlNjdjY2QzYWUwYzI1NTIyMDQwODFlYzgwIGxlZ2FjeS10cnVuaworNzIzNTMgYTg1ZTY3NTZkZWQyY2ZlN2UyYjE4Y2RkY2Q0OThjOWMxNmQ2ZWU2OCByZWxlYXNlMjYtbWFpbnQKKzcyMzU0IGUwMTc5ZjA4ZDM0ZjIyMDMxNDNlOTQyOWU2ZmJhYzUyYzY2YjY3OGQgcHkzaworNzIzNTUgZDNmZmIzNzAyYzNhZjYzZmE1MGVhMDZmYTUzMjY0MjJhM2VjNmJjZCByZWxlYXNlMzAtbWFpbnQKKzcyMzU3IDhmN2NmNWNiMjFiYjU4M2FiNGU1YWVkYjJmNDIzMDRiMGViNGZjNDIgbGVnYWN5LXRydW5rCis3MjM1OCAwMjZkMzkwZWVjYzE5NmFkMDUxNGNjMTg3MTBmNTg3NTJkMDJlOWI5IHB5M2sKKzcyMzU5IDE1ZDNiZGU3MGQ4N2IwMDBlY2NlOTQ5N2MzNTg5ZDRlY2U3MzdlNDcgcHkzaworNzIzNjAgZjBmYjRkZGZmMWFiZGFhYTMzNTZmZDZkMzNhY2EzOTAwNzNlOWRlYSByZWxlYXNlMzAtbWFpbnQKKzcyMzYxIGFlNjg1MDg2OWQ1MmY0ZjZlYzc4MmFiMzRjYzgwOGY1ZTY4MjI2ZWEgbGVnYWN5LXRydW5rCis3MjM2MiAyNTkyYzZhOWRkZDZjNDRlY2Q5NTllZmQ2YzI3OTUyZWVlOTNkNjU2IHB5M2sKKzcyMzYzIDkxMWRmODJiYzI1ZGZiNjJmYWVmNmVhMWI5ZDBjZjcwNDE3YmI5N2MgcHkzaworNzIzNjQgNWI5MDIxYzE5NTEyYmIyZTNhM2JkMDEzMjUyZDI4ZjkyOGY4MzUzMyBweTNrCis3MjM2NSA1NGRjNTc3N2JkZmJmZTYzNjlkODNmNzI3OGIyODQ2YzM4YTg4NmI5IHB5M2sKKzcyMzY2IDdiYWY0Y2MxM2JjZmY2OGJiNWI0ZmI5ODgyZDJkZmJlZGY3NWRkNzkgcHkzaworNzIzNjcgM2I1YzQwMGM5ZGNkNDUxMDM1ZDg3YzQyMzA2ODZiYmJmZGU1ZGQ2NSBsZWdhY3ktdHJ1bmsKKzcyMzY4IGZiMTBiODhhZmQ0MDFlODEyMTJhNWNhY2U0YjE2OGUxODY3MTNiNzMgbGVnYWN5LXRydW5rCis3MjM2OSA1YjRiMDllOGYzMmJhOWNiZTVlMWFiNzdiNzc0NTgxODY3NjI3NDQ0IHB5M2sKKzcyMzcwIGEyMzAzYTc0YTc2MTBjOGUyYzZhNjNkZDIxOWVlYmI4NmJmMmEyZmQgcHkzaworNzIzNzEgYjY2NmU3MmY2MDJmYTg1MjhkODMwMGFkYjRhMDgxNTk2N2QzOWFmZCBweTNrCis3MjM3MiA5ODk1NDgzZTk2MDEzYTUyY2ZmMmQ4MTk3ZmM1NGU4ODY5N2E5YWQ4IHB5M2sKKzcyMzczIDljNGQ5MjlmNDA1OTk0MTcxOTFjM2Y0NWM1YzMzYmJiZTZjOGQ3ZTAgcHkzaworNzIzNzQgNGIxYTlhZmZlMzRjZDRmOTIxMmRlN2I1MjNhZDdhMGE5Mzg4MjJiZSBweTNrCis3MjM3NSBlYjNhZmJkNmFhYTk2ZWY2NzYwMmJiYzAwZTk2MTZlZWRlNDgwMDA4IGxlZ2FjeS10cnVuaworNzIzNzYgNGYxNzM4NGFlOGNiZmU0NjhjMDExMmVkN2U4MjRhOWY2Zjg5YWM1MSBweTNrCis3MjM3NyAwZjZhNzg1Y2YyODZlM2QxZDgzYTVlN2M0MjRmMjc5YWZiMWU2ODgyIGxlZ2FjeS10cnVuaworNzIzNzggNTU2ZDExMzE0YWQ1Y2Y5MTM4MmM0ZmY5MmFiMWRiZDVjZGJhNjAwZiByZWxlYXNlMjYtbWFpbnQKKzcyMzc5IDU3ZTliMWIwODM4ZTUyZGU5NDBjZDA0NzEzNGVhODQ0NzBjNWJkMmQgcHkzaworNzIzODAgYTgxNWFjY2Q4OWU0MGIzNDFhNWQ2MGY1ZDAyMDE5M2FhODFiNGM4NCByZWxlYXNlMzAtbWFpbnQKKzcyMzgxIDg1Nzc1ZDEwMGEzMmM1OWYyY2JkMmExMmNlZjM2YzBiNDEwZTRmZTcgcmVsZWFzZTI2LW1haW50Cis3MjM4MiBlNjIwNzAxYTNlYzg2NDBhZmM2YTQzMjMwYTU1ODFlYjEzYzI0NDM3IGxlZ2FjeS10cnVuaworNzIzODMgYWVjNjJlOWNjNmU4ZWVmYTZhMWUxYmNjZGIzMzQ2YzdmYTVhYzBkMiByZWxlYXNlMjYtbWFpbnQKKzcyMzg1IGJjYmI5NGQ2OTJlZmQ3MTI5NjJkNGVhOWJjMjI0NWEyZWQyY2M3MDggcHkzaworNzIzODcgMjkwMjViNTMwMDQ2Njg1MDBkMDg5YmRhNTlmODg5MmM2NDQ0NmIwOCBweTNrCis3MjM4OCBjYWMyYTVmNGI5ZmFlMTI4NGI5OWNmZGU0MDllYTg3Y2Q3OWZmM2RmIGxlZ2FjeS10cnVuaworNzIzODkgYzZlZmU1OGVlZjY2NTdlZTRiOWYyODk5NDllZmUxYzY2Y2JkOGJkOCByZWxlYXNlMjYtbWFpbnQKKzcyMzkwIGYxYTNkZTlkZjQyNWRiNGMzZjFiNjc5MTMxMDQ4NDdjYTliOGQ3YzMgcHkzaworNzIzOTEgZmI3ZDEyMTk2YzM1YzJiNWY1ZGFhYmNjZDQyOWNlZWNlOTUxYzY3MiByZWxlYXNlMzAtbWFpbnQKKzcyMzkyIDM1NTk3ZDNkYmQwODIwMmNjODg3MWQxZWMxM2QxODA0N2JhZTQ1ODAgbGVnYWN5LXRydW5rCis3MjM5MyAwMzg4YTQyNzI1OThlMzg2NGU5NTU5ZTkxMWI2YWFmMDA3MDMwMWRhIHJlbGVhc2UyNi1tYWludAorNzIzOTQgMGM1MjZkMTg5NTI3MmI5YTUyNTdmODJhMWMxNGI4NzM3MjExZjUzYyBweTNrCis3MjM5NSBhZGM4ZWM3ZjdkMjMwMTlmMDI5YTc3NWYyMTQyNmI1M2JlMGVlZWJkIHJlbGVhc2UzMC1tYWludAorNzIzOTYgZGYzZjVkYjUyOGYwMGIzNzFmNzE2MWE1YmRjMGQ2ZmFjODE5M2Y4ZCBweTNrCis3MjM5NyA3Y2I2ZGYwMDY5OWY0YjM0ZDcxOWJmNmM4ZmNiNDIzZmQ3ODg0NDI5IHB5M2sKKzcyMzk4IDA0YmRjOTQ0NzE4YWY5ZWVmZjE3OThiZGQ1ZDE2NzRlY2M5YTE0M2MgcHkzaworNzIzOTkgOWM2NTQwNDA0MDBkZWZhNGMyOWJiZTYzZTA0NzBmNTM3Y2UxZGM0YyBsZWdhY3ktdHJ1bmsKKzcyNDAwIDBiOWQ3Y2NlZDkzNzFkN2ZiNGM4NTNmNWRhMzMyZjY0YjgxMTBhMjUgcHkzaworNzI0MDEgMDM0ZTBmY2Q2OTRlODgxYTU4YWU0ZjFjYWM5OWVkZmE3NDAxMWI2OCByZWxlYXNlMjYtbWFpbnQKKzcyNDAyIGVjZTdlN2E4MDA0M2MxNTgyNTExNGI0M2E4ODM2NDNmN2MwZmE3MTQgcmVsZWFzZTMwLW1haW50Cis3MjQwMyBjNTJlNTU1YzkxOGQ5YmJjNGZhNjAyYWY5NTczN2EzMGIxOTYwOTc2IHJlbGVhc2UzMC1tYWludAorNzI0MDQgN2RjYTI1MDM0M2VhNDFjOTYzOThlYjY4YWVlNGZjYmQ1YWQ4ZjdmNiBsZWdhY3ktdHJ1bmsKKzcyNDA1IDRhODQ3MDA2NjRkOTI2MjFhZmU4YjQxZDhhMzFmZjhlMDU2YTJmMzkgcmVsZWFzZTI2LW1haW50Cis3MjQwNiA0NjM0MmZmYTI5NjM1M2YzNTA3ZWU3OTQwMWY3YzEwNzg5MjY0ZTJmIGxlZ2FjeS10cnVuaworNzI0MDcgYzBhZDIzYWUyYTNlMWNjZTQ1OTIwMDZkOWEwYjY2YTg2YzlhZTM3NyByZWxlYXNlMjYtbWFpbnQKKzcyNDA4IDYzYjIzYmQzOTA0ZGU3MTY5YzYyY2YwZWJhMzc3OTM1NzVlODhmNjkgcHkzaworNzI0MDkgY2E1NTdmODUwZWVlNjRjZDNmMmZiMTEwYTA4YjU4NGM4NjRhMjhmYyByZWxlYXNlMzAtbWFpbnQKKzcyNDEwIDdhNjdiNjQ3YjllNzc3NzllY2ViMjBhMzQ4MTkyMmU5ZTA5ODNhZGMgcHkzaworNzI0MTIgYjYzMDIwNzk3Zjk2NzhhZGFmNGQyYzNlMjY1NzRhOWVlZjJlZjAyOCBweTNrCis3MjQxNCBhNjI5OTI0MWZiZDliY2M2MDU5N2Q1NDZjMDZkNDQzZmM2NjI3MmU2IHB5M2sKKzcyNDE1IDNhYWFiYjMxMDJlOGU3NTlhODk5NzE5ODEzZWRhNTk5MzY5ODE2OTUgbGVnYWN5LXRydW5rCis3MjQxNiAzNzZmZTE1ODYyNzYwMDA3YjA3NGNkNGVjM2NmNmU3ZTU1ZDE0MzhkIHJlbGVhc2UyNi1tYWludAorNzI0MTcgMjA1ODY5MGE1M2UxMmNlMmUyYzcxMDMwNWMzYmI0MGVhYWJiMzE4OSBweTNrCis3MjQxOCA2NWQ4ZGI1YmViMjAxMjIxOWNiZmYxNzM5ZTQ0NzE3ZGVjOTE0NGI2IGxlZ2FjeS10cnVuaworNzI0MTkgMmEwZmFjYTNkZWVlNTk4M2E1MGRlMTQxMTI2ZmQzMzNjMTliYWUxMiBsZWdhY3ktdHJ1bmsKKzcyNDIxIDc3MTQyOTg1YzY0MTBhNTM1MDRkZjc3NDIxYjY1Y2FkMWY2MDExZTAgcHkzaworNzI0MjIgYTdjYWYyOWQxNDA2MzNjNDUzY2E3ODI3ODJjZjk4MzA3MmE1NDVmZiBsZWdhY3ktdHJ1bmsKKzcyNDIzIGZhYzUxYTAyMmJmNTA5MzA0MDNlZjlhNmYxZmFjYjJjOTg0YjA4NDAgcHkzaworNzI0MjUgODViOWRmNTI1ZTEwNzBmNjM4YWU1NDBkODljODE1ZTA1ZDJhMGU5NyBsZWdhY3ktdHJ1bmsKKzcyNDI2IDIzOGNhZmNjMjUxNWY1ZGIwM2QwYTUxNjhlYmUwZTc2ZmFmNDFhNjcgbGVnYWN5LXRydW5rCis3MjQyNyA2MmJlNWFjOTg5ZjRmODZjMDRiMjQ4OWZiOTRhNzliZmM2NTNmODU2IHB5M2sKKzcyNDI4IGE4MTkwZTg4MWZkZmYyYWY2M2NlMjNjYzkwOTUwNDAxMjc1NjA1NTQgcmVsZWFzZTMwLW1haW50Cis3MjQyOSA3YTNiZDE3OWIxODBkY2MxODk1ZDI4OTdlMmFlMTNiOWYxNDQ1MjQxIHJlbGVhc2UyNi1tYWludAorNzI0MzQgNmM4YjM4MGRiNzI3ZmMyMjFjMjI2ODdlM2JiZDFkZjM0OGE3NjRjYyBsZWdhY3ktdHJ1bmsKKzcyNDM1IGU3ZmUyMTdjZTAxNTdkZDgxNDRlYWFmN2Y2MzMyZWQwNzAyNTE1NzUgcHkzaworNzI0MzYgZjg3NTgzNTNjNmMyMDJiNmM1NmI2ZWU3YzA0ZDM1ZDgyM2E0MGZhYiByZWxlYXNlMjYtbWFpbnQKKzcyNDM3IDU3MGQzZTU4ZWVhOTU4YjIxYTAzZjM4ODRjMjdlNzQyYTBhYWEwMjkgcmVsZWFzZTMwLW1haW50Cis3MjQzOCAwZWYyNDJmMjdkNzY5OTc3YTI2Y2YxMjdmODkxZjEzZTgxZWIyNDZkIHB5M2sKKzcyNDM5IGQ3ODAzN2MxNjIyNTAwNzI4ZjE0YzRjOWY0NjQ0YmMxMDY4YjkzODkgbGVnYWN5LXRydW5rCis3MjQ0MCA1NTAyZmYyZmJkZDYzZDI3ZmVhNjkyYWRiMDAyZDEyNmVkOTVmZjNmIHJlbGVhc2UyNi1tYWludAorNzI0NDEgYzY5MzAwM2IxNWUyMWQwNDUwZjc2ZTMzMTMzMGVlMmMwNDdkYTYxZiBweTNrCis3MjQ0MiBhYWM0MDU1ZDA2NmEwM2UzOTRmZDMxNTI3NGZjMjJiMTc4ZDQ4ZmY0IHJlbGVhc2UzMC1tYWludAorNzI0NDMgNGMzYTg0ZTU0ZDA4MjY4MTZhOTAzZWIzMzdjYjMwMDc5M2QxZDhkOCBsZWdhY3ktdHJ1bmsKKzcyNDQ0IDBkNWUyYTkyODZhMmE0Yjg1M2VjZTM1MTMzYjJjMzNiMzc0NTE1YTYgcHkzaworNzI0NDUgOTE0M2QyMGQ4YjI2MzlkMzg2YzFmZjY4ODY4YTEyNjYzNTkwNTYyNCBsZWdhY3ktdHJ1bmsKKzcyNDQ2IDE5OGI2OGFlMmMyZGY1MzczYTA3N2RmMmVhMDZhYTcwMWIyMzhiNmQgcHkzaworNzI0NDcgZjVmNTA3YjU1ZDQ2NTc5NTE1ZTRlNTA1Y2NkY2M1MzIyYWZkNjczZCByZWxlYXNlMzAtbWFpbnQKKzcyNDQ4IDhmM2RhNzEzNGNhNWYwN2EzNjVjYjAyZTY1Zjg3MzNiNjE2ZGJkOWIgcmVsZWFzZTI2LW1haW50Cis3MjQ0OSBlNTY3MTJlMTg2ZjlkZjhjNWI2MWVkYjA0YzZjMDQ3YTFhZGZjMTg4IHJlbGVhc2UyNi1tYWludAorNzI0NTAgMmRmMmQxZjA5ZDU4NWQ3MmY0MmRjZmIxNmRhODM4NTlmYTE1ZjNjMyBweTNrCis3MjQ1MSA2YTcxNTcyN2YxOWY3NTVjM2I0NTM4ODYwMDg4YzlhYzdmYWIwYzBlIGxlZ2FjeS10cnVuaworNzI0NTIgNDdiM2ZlZWE0ZTFhNTFjMjAxOWQ5NmY5YTJiMjU1MjEwNzFhZDUyNyByZWxlYXNlMjYtbWFpbnQKKzcyNDUzIGMxNDJlNDUzODk0MWU2M2RkMGIyNDdiYzhmYzM3YWE2MGY5NzhmNzkgcmVsZWFzZTMwLW1haW50Cis3MjQ1NCAxMWFkNjU0NTgwOWFjN2JmYzUxOTFhZmM3Yzk1NDUxN2FkNDRlZjY2IGxlZ2FjeS10cnVuaworNzI0NTUgYjNiMTU1NTgzZTA1NWQzOTgxN2RkYjg4ZmQ3OTUzMDUyNTg4NDdkZiBweTNrCis3MjQ1NiAxN2Y3Nzc0Zjc0ZGRlYjZiNDQwYmUxNDM5OTViMDViY2UwZGM4OWJmIHJlbGVhc2UyNi1tYWludAorNzI0NTcgMWNkMWIyMTQ1MmQzOTUyNjY4NTlmNmM1ZWRlYzdkNjZhOGQyMjYxYiByZWxlYXNlMzAtbWFpbnQKKzcyNDU4IGEwMTVhMjk4NTQzZGRlYjE4YzI3ZTg3MzU2ZDQzN2JmMGEyZWU2YjAgbGVnYWN5LXRydW5rCis3MjQ1OSAwNDZiZDJhNDEzMjJmYWVhZGE3ZDhmYzdjYzlkZmRkM2JmYmIzOGQzIHB5M2sKKzcyNDYwIGEzNmZhMmNlNjFiMWYzY2I2ODQ2ZjU3MmY1NDc5ZTNmNWE5ZjA5NDAgcmVsZWFzZTI2LW1haW50Cis3MjQ2MSAxZWNkY2ExMWViOWVjMjg2NDAzNjM0NGM4NWE5YjU2NmZiOGZlYzM5IGxlZ2FjeS10cnVuaworNzI0NjIgMjk5M2YwNDllMmM5NTMzM2U2ZDcyOTIyMjQ2MzYwZTc0MjcyMDdmMiBweTNrCis3MjQ2MyA1NDIwZGFlMzU1ZjczYzYzNTAxY2Y5YTcyNjVjZWE3NmRiODFkMWJlIHB5M2sKKzcyNDY0IDM3NDk3YTc3OTNiMmZmNzNiMDgxYWM2MDZjOWZkYjEzNTIwOTFkZjYgbGVnYWN5LXRydW5rCis3MjQ2NSBmMWZmODdiOWI0MzczYjJiNGM4Y2Q0MGE4MjIwZjNkMjc0ZmViYmI3IHB5M2sKKzcyNDY2IDIzODUwMjQ2MDc5NWJjNjBmZTc5NzM0YzAxYTUxMzMyOGQwYTI2OWQgcHkzaworNzI0NjcgNjZlY2M4OTZiN2U3M2EwNTRiMTY2M2E4YWYxOTJhZDZmMzAyYzllNCBsZWdhY3ktdHJ1bmsKKzcyNDY4IDljN2JjYjdlNzQ4YzE2MjQ3ZGU0OTRlNzIxYmE0MmUxZTc5M2U3MmYgbGVnYWN5LXRydW5rCis3MjQ2OSBhNmU2YTU3Y2NjYzI5YTRlNTVlOTM5MjRkZmY4NDQzODBlOWFjMmM5IGxlZ2FjeS10cnVuaworNzI0NzAgNTI4MGY3NTViNDhhMTRiNDFhMjg0YTY3M2ExYjdmZDcwODZjZTM2YiBweTNrCis3MjQ3MSA2OTRlZTIwYzhjNzQzYmViNjlhYTE3MTRlNWJmNjMxZDhkZjhiZGMxIHB5M2sKKzcyNDcyIGJhNGU2YTNhZjU2NGVkNzBmZWJlODdjOWY3NjUzYjVlYzkxNmNjY2QgcmVsZWFzZTMwLW1haW50Cis3MjQ3MyA1ZWE1NDYzNTcyMjZkZGFkZjQxNWRlMzVhY2QyN2ZkNjNjNDVlOTJhIHJlbGVhc2UzMC1tYWludAorNzI0NzQgMTcxMjUyM2Y5MzZjNTBjZTUwY2E3YmQ3Mjc4ZWMzYzdiZDY1YWZiMCBsZWdhY3ktdHJ1bmsKKzcyNDc1IDVmMjE1NzQ3OTc0OTVkNTYwNmJhNTg5MGYzMDMyZDIzNzJkNDA1YmQgcHkzaworNzI0NzYgZDRlZmM3MzM4NzA2YmM0YmFlOTc1NDY3YzVkYjIyOTY0MTA3MjMwMyBsZWdhY3ktdHJ1bmsKKzcyNDc3IDdhOWUwODFlY2U0YzNkYTFjNDYwYTQ3ODhmMmNlODk5NjhkODdhZDkgcHkzaworNzI0NzggY2I3YmU2M2I5MWQ4NWVhOGFlZmVlMTY1ZTk3ZmRmZTRlODczYzZhOCBweTNrCis3MjQ3OSAwZGFlN2ZlZmVkNDQwNWM4NDJlNGQxZDMyZWRmNDJjMTUzYjc0NjI1IGxlZ2FjeS10cnVuaworNzI0ODAgOGI5ODk3ZDE1Y2ZjODBjZWU2ZTgwMTYwZmQ1NGEyZDNlZGE1ODdhMSBweTNrCis3MjQ4MSAyMDg2OWQ5NzhiOGI0MzA5YTkyYjI3YmE3OWI2NzNmOGQ4NmIxMWU0IHJlbGVhc2UyNi1tYWludAorNzI0ODIgYjg2N2NlMzc1ZTk4Y2QwZDIzM2Q2NzQ1ZDY4MWZmMjkyZGFkZDVmOCBweTNrCis3MjQ4MyBmNDk1MDA5NmU3ZDdiNDc3ODg5NjQwYmJmYWJiMGQ0NGJjOWUwNjNkIHJlbGVhc2UzMC1tYWludAorNzI0ODQgMDY3YTYzOWQ1Zjc2NTkyMmIzYzRhZjhkNDI3OGYxZjMwMDIxZTdhMCBweTNrCis3MjQ4NSAwNzIyZjIwNGQyNmUwNDViZWVmZWRiOTYwZGUwYjllNTU3NzQ1ZjVmIHB5M2sKKzcyNDg2IGY5MTdhYWU3NDFkNWU2MWZmZmRlMWU5NmRiMjI5YWE0YWIxYjkyN2QgcmVsZWFzZTMwLW1haW50Cis3MjQ4NyBhMTcxMDQ4ZGFmNzZmNDI1Nzc3MDgwYTNiNjllMjJmZmQwYjA2NTY1IGxlZ2FjeS10cnVuaworNzI0ODggOWVmNjgzZDQxYzliMjIyOTdiY2M0YjA1Yzk2NWQ2ZmFiYzNlNzMyYiBsZWdhY3ktdHJ1bmsKKzcyNDg5IDUxMGZmYzVkYjIzMjU4OWM3NjkzYTRlYWM4ODIxZDM1ZmNmZGJjY2YgbGVnYWN5LXRydW5rCis3MjQ5MCA0NDZhMTVhMWJlZThmZDA2OTQ0MDhjZmM0NDZjMTBhNjdkNTBkMDFmIHB5M2sKKzcyNDk0IDExOWU0MzIzNDAwZDAxYzgyMmViMWUwYzc1ZmE1ZWYwZTZiY2I2MTUgbGVnYWN5LXRydW5rCis3MjQ5NSA3Mzk4NmE5Y2ExZDYzZGZiNTk1NGY2OTg5ZThmY2U2NmM1YjBlMzhmIGxlZ2FjeS10cnVuaworNzI0OTYgMWQ3OTQ4Y2I1NDMwMDBhZjNkMWZmMTQ2MDYzN2FhNjM2YjU0M2E4OCBweTNrCis3MjQ5NyBjY2ZkYTE0ZDE1NTQ4MWY0ZTQ4NzBlZWIyYWU3NWZmNDc2NjIzMGQ4IGxlZ2FjeS10cnVuaworNzI0OTggZDY2NjAzZGQzYjJkNzE4YWJlMWY3NjY3NzM3Y2UwYjY1Yjg2YTMyMSByZWxlYXNlMjYtbWFpbnQKKzcyNTAwIGY5ZDllZWM2YmU2NzAxNzg0N2ZkN2Q3YzI3N2ZjNGQzOGJhZjcyMGQgbGVnYWN5LXRydW5rCis3MjUwMSA5ZjcxM2Y2MDVmNjBlZmQ1ZjQ0YjViYzVmMWQzNzA5OGM2MjA5NmNlIHJlbGVhc2UyNi1tYWludAorNzI1MDIgMzZmYzA3OTg0MTdmMTRlNmQ2YzNjNDM1NDU3MTdhOTg1ZDQ5OTM1YiBweTNrCis3MjUwMyA5OWRkMjllMjRiZGUzZDRlZTVkMDY5ZjBkYzk2NjRjYWM3NDdjM2M1IHJlbGVhc2UzMC1tYWludAorNzI1MDQgOTYyYjRmZjc2Y2NhMjEzNDU3NTMzYzhhZDc2MTU0YmJhYzA1NmI0ZCBweTNrCis3MjUwNSA5MjA3ZDQyOTIwM2ExYzVhOTY1MmQ4Mzk5ODlhNTQ0MGZiNmU4YzZlIHJlbGVhc2UzMC1tYWludAorNzI1MDYgMDcyYThhN2NlOTczY2RkZTQ2NGU4OTUwZjQxNGRiNTMyMDVkODI1MyBsZWdhY3ktdHJ1bmsKKzcyNTA3IGViNmViNDlkYmFlOWVjN2RjZjIyMWU0NmI3ZTgyN2UwZDZkOGMyYzUgcmVsZWFzZTI2LW1haW50Cis3MjUwOCBmOTBiM2VlYzdjMzI3OGM1ZjkwZGFhZjM4ODYzMmMxNTJiMGJjMWM2IGxlZ2FjeS10cnVuaworNzI1MDkgNWRkM2IzOGEwOTc3OGE2NjczY2JmYzZlMDhmN2I4NmU1MTRiMmMxYiBsZWdhY3ktdHJ1bmsKKzcyNTEwIGI3OTIwZTE4MzQyMjhmNWVmNzg0YmJiMmE2ZmNkMzI0MmEyZTFiOTUgbGVnYWN5LXRydW5rCis3MjUxMSBhZmQ2MmViMTY5MmVmMWFjYmFiZWIxYzlhMDU5ZjFjZDYzMGM5MThhIHB5M2sKKzcyNTEyIDMwZWRkN2Y2MTAxYmQ5YTdmNmRhOTNmMmJhZDA4NzIzOThmM2E3OTcgbGVnYWN5LXRydW5rCis3MjUxMyAzMjdlMjNhNmE2MTAyMGFlMGUxYWY2ODVjZTg3NzM1N2JiZDdjNjQxIHB5M2sKKzcyNTE0IDI2MWY1OTQwMTRjNjIyNWEzZTk1YzY1MTU3MGM2NmViNjhmYTE2NGEgcHkzaworNzI1MTUgMWIxNWE1N2UxZjAyZjRiYmUwMTM1YTI1YThiZGUyMTE1ZmE5MWUyMiBweTNrCis3MjUxNiBkMmIxNzYxNjFhYmYwYjM2NmNlZmM2ZTM3NmY1ZjQyMjQyZDg4YzRhIGxlZ2FjeS10cnVuaworNzI1MTcgNzJhNTAzOTRjMmRkZTgzOWI3MzZjYzA5NGYwZGVkNTI0MWZiYzk2YSBsZWdhY3ktdHJ1bmsKKzcyNTE4IGFhNDFjOGM5NjA1NTAwNmYwNzNmYmZiNzk1MTlhZTk4MDllYWQ0YTQgbGVnYWN5LXRydW5rCis3MjUxOSAyYjQwNjUzODg2NmQ5MDkxNzZkZjJlOTk2MDZhZmY0OTgwZDA4MWUzIHB5M2sKKzcyNTIwIDI5YjUxOGYyOTZkZTAzZThlNDcyNzhjOTQ2NDI1NDIyOWY4NGExYTggcHkzaworNzI1MjEgMDU2YWE3NjlkYTg5MWExMGYyZTc2NDVkZmQzMDAyNjY5MjdiNjYzMCBweTNrCis3MjUyMiA1NzAyZDJkYWQwZjllYzhlZTBlNzViZTBkMjQ3NGEyMzg0ZDZhYjBiIHB5M2sKKzcyNTI0IDEzMTE3NzI4ZDA4NmRhNDI1OWQ0NWYzOTE2NGQ5ODM1NDZhY2RiY2QgcHkzaworNzI1MjUgYTdjNTNmYWQxM2JjMzZkMjIwMmNiNjExMmMwMGJmM2NiODkzOGNlYyBsZWdhY3ktdHJ1bmsKKzcyNTI2IDNlODRkNjAxMjZiN2UwMjljMDgyZDA5MWQ4Y2M0OTc3NGM4ZDc5OTcgbGVnYWN5LXRydW5rCis3MjUyOCBmYmNkYWUzZTBjYTFiZWMxMGY0ZGVkZDk5YjM1MmM0YjNiY2JlZmY4IHB5M2sKKzcyNTI5IDdjMjliZmJmZDM1MjQ0ZDA0YzQzOTQ1ODUxNTFjMDE5NzgzNzQ4YzEgcHkzaworNzI1MzAgNDFjMDllMTQyYmQwMDZlMjA5ZmZmMTQ0OTBiNTEzYTE3N2VmZjkwYiBweTNrCis3MjUzMSBlOTFhNzdhNDgyZWJlNGUxZGE5NWU1ZGQ1NGQ5ZGU5ODRjNzkyMGFkIGxlZ2FjeS10cnVuaworNzI1MzIgMzVlOTgwM2EyZjRlNDVlNDRkZTk4YTVmMzk3MDJiN2VjZWIzNDAyMiByZWxlYXNlMjYtbWFpbnQKKzcyNTMzIDA1MDc0MmJiNjBkNWIxNzM3NGExOWQ1YWFkZDJjYWMwMTJkMzFhMDcgcHkzaworNzI1MzQgOWU2N2MyZjk5OWM5Y2NjNjNkNzcxNGU2NzIwZmI1YmU3MTUzYjM3YyByZWxlYXNlMzAtbWFpbnQKKzcyNTM1IGM2MGNkYTM0MThiNTRmNjUwOGNhZjIxN2NiYTM2YTU4NTU1NjZlOGUgbGVnYWN5LXRydW5rCis3MjUzNiA4YTA0Nzc3YjU5Y2JkMGFlODUzYjFmNmQwNjJjZjM2OWJiZDdlMjBjIHJlbGVhc2UyNi1tYWludAorNzI1MzcgNTIyNGEyNThkNWJiMDRlMjA3OWIzMzAzYjFkNTJkNGZjM2VlZjQ2MyBweTNrCis3MjUzOCA5YTZmNWUwNTMxYTYzMTg2MzA0ZDJhMmZjNjkxYjM3NWYzM2U5ZmI3IHJlbGVhc2UzMC1tYWludAorNzI1MzkgMWJlYzY0YjhkZDE3NmFhOTUzNmZjZjUxY2EzZmE2NTViZjJhYTllYSBsZWdhY3ktdHJ1bmsKKzcyNTQwIGFjNDg5NDY5MzQxMWQ0MTdlZWEyZTUzNmRjY2I2Yzc4NTFiYzBmMzEgcmVsZWFzZTI2LW1haW50Cis3MjU0MSA4ODhkYWEwMDNmYzNjZTM1OGJmZjdkMmY2ZThlNTYxNzc4NTU1OTU0IHB5M2sKKzcyNTQyIDg2YTNjOWE5YzZkZTQxYWFiN2I4MWRkYWY4NDZkNjlkMzQ4NzA3OTggcmVsZWFzZTMwLW1haW50Cis3MjU0MyAxN2M1M2ZhMzc4OTAxNjcxMGRjYTFkYzIyMzcyY2QyY2UwMDg5MGMyIGxlZ2FjeS10cnVuaworNzI1NDQgODgwM2FlMGRmM2YzYTU1NmU0Mjk3ZjUxNjZjMWE2NzZkNzQyNDg0MiByZWxlYXNlMjYtbWFpbnQKKzcyNTQ1IDI0MWRhYTI1OWFmOTZjM2U5MjE3NzY2ZDEyZjdkMjhkNTdiMmIzNWUgcHkzaworNzI1NDYgMjgxZDJlMjNiZGIyZDNmYzI1OTcxZmY5MDc1NDhmMDRmN2M0ZWFkZiByZWxlYXNlMzAtbWFpbnQKKzcyNTQ3IDE5MjdlOGQ3OTE0Nzc5NTdkMTk5NzlhNTIwZTU0OWUxMmUzMTY5MDQgbGVnYWN5LXRydW5rCis3MjU0OCA0YWUwMWEyNDE2NTBkNTY0OGY4M2RlOGYxNDcwZTNmNzVkYmI5YzcwIHJlbGVhc2UyNi1tYWludAorNzI1NDkgZjk4MjI4OWY5M2NmYjhlMzQ4MGI3NTJhZTI2OTliYWViOThkZTc5ZSBweTNrCis3MjU1MCBiZGNkMDVhODFhY2JhMGVlMzg4YmU4MGUzNTI2YTdkNDc3MmQ5ZTljIHJlbGVhc2UzMC1tYWludAorNzI1NTEgNjMwZTY4MTEwMGUwOGU0OTJhODUwMjljY2E4N2FkY2JiMGQ5YTZjMiBsZWdhY3ktdHJ1bmsKKzcyNTUyIGQ2NWQ3MTg5ZGUzMmNkM2VhNTYzZTQ2MzU1YmUxNGIyODc1ZDFlZWYgbGVnYWN5LXRydW5rCis3MjU1MyBjNzQ3MWM5MTFhZDI0ZWUzZGFmMWU2OTlhMzI3NDI5NmFkMjFiNDQ3IHB5M2sKKzcyNTU0IGVhMmU0MjVkMWY2MDBjYjFiZmE3ZWI1MzY2NDAzMTg0MzYxMDcyYTkgcmVsZWFzZTI2LW1haW50Cis3MjU1NSBkMDJiMGU3MDczNzdkM2VjNjYxYTY5Mzc0M2NjNGE0ZDgyY2QwOWY1IHJlbGVhc2UzMC1tYWludAorNzI1NTYgNmU3YzdmNDI0NDM2YjY3ODgyYjc0YjkzOWM4Y2IwZmU5ZWRmMjE0MyBweTNrCis3MjU1NyAzNDE2NzIxNDgwYjIxYzVmOTYyYTM2YmM5OTIyMTFhNzJlZGIxYjZmIHB5M2sKKzcyNTU4IDRlYmNkMDE0ZjNkMDZhMDcxZGY2MTQ0NDhlNzc1OWZiZmE0NTMxNjQgbGVnYWN5LXRydW5rCis3MjU1OSAwNDk1YmM0N2NkMDg2YTk3YmNkYzg4NDM1ZTYzNjA2Mjk4MmVlNjhlIHB5M2sKKzcyNTYwIDRiNDE3NDNmNjUyN2NiYzhmMzE0NGZiODU1M2EzODMyOTM5M2I1NDkgbGVnYWN5LXRydW5rCis3MjU2MSA2MWM1YmRiMjk0Zjk1MTg1YTlkZWZjZTVhNWQwZjNiNjg4NTY2Mjk4IHJlbGVhc2UyNi1tYWludAorNzI1NjIgZjIwMDkzNzE5YzBlZmYxMDU2Yzg2NTJiYzIwNjllNTdiZjRlZWQ5NyBweTNrCis3MjU2NCAxMTlmNDIzMmFmNDYxODBhNjQ4Njk3M2M2OWJjYWI2ZWQ0MzJkMTQwIGxlZ2FjeS10cnVuaworNzI1NjUgOTQxNGMyYjE5MjNlZGVhOGQzNWNjNzk1MGM0MzVlNGRmNDYzMmFlNiBweTNrCis3MjU2NiAzNWM2ZDQwN2QzYzllZDQwYjAyM2RlMGE0M2E4YjhmM2U1YjUyYTNhIHJlbGVhc2UyNi1tYWludAorNzI1NjcgZTllZGNhZjQyNTQ3M2Q5ZjFhYTYzZDg0M2Y1NWQ4MjcxZDA4NWUyMCByZWxlYXNlMzAtbWFpbnQKKzcyNTY4IGMyZTJiNDdhODdjMTQ3YjQ0YmI3YzVjY2MwMjVkOTZiMjc1NWI3ODcgcHkzaworNzI1NjkgOGE3ZTg0YWU0NmM1ZGQ4NTZmMzkxOWE3ZTQ3MWZkYzYzYWM4MjYxYiByZWxlYXNlMzAtbWFpbnQKKzcyNTcwIGNjZmNhMjU4Nzg4NTNlOTE3Y2YzMTczZDVkM2MxYTA1MDQ5NmYyYTEgbGVnYWN5LXRydW5rCis3MjU3MSAyMjI3N2RmZmM1NzFjYWU3ZmJkODFhNTM1ODU0M2I0MWMwZGNiOTQxIGxlZ2FjeS10cnVuaworNzI1NzIgODkzMDU0OGFmNzM0ZTAyNmYyNmJkNGMwYTEyOGE0ZGJmOGY4NjhjNiBsZWdhY3ktdHJ1bmsKKzcyNTczIDg0NjE2ZWJmMmI0ZmMwODdiODg3NmQwOGY1NGZkOGRhODRhMTgzYTQgcmVsZWFzZTI2LW1haW50Cis3MjU3NCA1ZDBmNWM1NzEzNTc5N2U5Nzg1YmFiZGQ0MGIxZmM4M2VjZDVmNDIzIHB5M2sKKzcyNTc1IGEyNmFmODVhYjg5NTBiNWYyYzcxMDg0ZTZmY2UxY2VkNDEyYzlkMGEgcmVsZWFzZTMwLW1haW50Cis3MjU3NiA1OWNiOWMwNzRlMDk3YWM3YzJiN2ViNDRjMjJmMjcxZTNiMmE4NTQ2IHB5M2sKKzcyNTc3IDk0MmYyZDZkNWM1Y2MzYzZkMmQyZWM1YzA3MWI1YjE4NDljYzMzOTMgbGVnYWN5LXRydW5rCis3MjU3OCBiZDgwZmI4MzZiOWU5ZmQ4NThhZDViYmQ1MGE0ZWU3Mzk5YjVkNGJiIHJlbGVhc2UyNi1tYWludAorNzI1NzkgNTQ2MDQ2ODhiM2U5N2JkMzBmMzA2ZTdkM2E3MjljYjA5NDk0MjVlMSBweTNrCis3MjU4MCAxMzU3MzAzNDExNDg3YzU5ZGM0NjViYWRlZGI2YWQ3YmZjNWMxYjdhIHJlbGVhc2UzMC1tYWludAorNzI1ODEgMjU4MjE5NjQ2ZTNhZGI5ZGVjMjAwYjRhNzgzZDM3YzI3OGE4ZmQ4MSByZWxlYXNlMzAtbWFpbnQKKzcyNTgyIGRmZTU4NjVlNWY5ODA5Y2M1ZTRiYWY3MTM3NTA1ZTY0MWE5NjM5NWMgbGVnYWN5LXRydW5rCis3MjU4MyBiZWFjMGI0MWNmYjE0ZmVjMTAyNjQ4MTNiZGZlYTRhNjBhNWQyOTkyIGxlZ2FjeS10cnVuaworNzI1ODQgZWZlMTJhYThlZjE5Y2QxNTFhNjAwZDFiNDNiNjE0M2ViNTMwOTQxOSBweTNrCis3MjU4NSBlODIwOWFiNDk2OTE0ZTI4MzgwNDUyNDZiMDA5YjQ5ZmMwZDc5YmIyIGxlZ2FjeS10cnVuaworNzI1ODYgMTVhOGY0ZjJiYzg0ODQ1ZTIzOWUzMGU1ZjExYjZhZTc4NDJkZjdlMSByZWxlYXNlMjYtbWFpbnQKKzcyNTg3IDkyNGRiYjdmYzZjNTdmYjA2MWI4YWE2NDc1MjFiNTU5NTU3ZGEyYTggcHkzaworNzI1ODggYjYzODU3MDM3MDNlMWNjNzgxZDM1Y2RlZTQ4OTc4YzFlNGFiMDliZiByZWxlYXNlMzAtbWFpbnQKKzcyNTg5IDVmY2UxNGUxZDcwMzJjMmNlZTMzMDNlOTViMThiNzk5YzBlOWQyZTkgcHkzaworNzI1OTAgNzhmYjdmOGNkMzQ5MjJkZjE1NzFlMmFlOTA1YzY0YWE3YWI2NWUyZSBweTNrCis3MjU5MSBjMmM4ZDBkZGYxODc3YTliYWU0ZTcyNWIxZTc1NWYyYzM5ZTU5Y2FmIHJlbGVhc2UzMC1tYWludAorNzI1OTIgZDg1YmQ0OTlmM2Y0ZWNlN2EwZDJjMDcwM2NiOWE2ZGE3NTg4OWVmNSBweTNrCis3MjU5MyBkMjIxMjRjNjQ0ZmZhNGI4NDUwM2M4NjZhYzA0NDRmZTdjYWU4MGJhIGxlZ2FjeS10cnVuaworNzI1OTQgNzM1ZWQxNzhkZmFlNTI1YmVjMTk0OTIxOGVkMjg0YThkZTcxMmZjOCByZWxlYXNlMjYtbWFpbnQKKzcyNTk1IDJjMWQ4ZjJkMzgzOThmZjI5NWE2ODJiN2ZmZDY1OThkNmM1MDhmZGYgcHkzaworNzI1OTYgMDU0NjgwNWIzMDIyYTA2NWY4MjUxNzBlMzM4N2ZmOTcyOWVlNDZlOCByZWxlYXNlMzAtbWFpbnQKKzcyNTk3IDY0MTk4MjhlZjY1YWM0ODEzY2MxMDU5MDc5NzJlZDg0MDdhYzQzODAgbGVnYWN5LXRydW5rCis3MjU5OCA0ZWJlNmIyNjBjNTViYmMwMzQyNGY2NzRkZjNhZmIzNWQ2MWFjNDllIHJlbGVhc2UyNi1tYWludAorNzI1OTkgMTllOTU5NjI2MTA5ZjMyNDU4M2E3YjJmYzU3YTk4NWJhZWQyNDdkOCBweTNrCis3MjYwMCAyZDZmZjRhOTQ5NTNjZjk0MzVjY2NkZDY2ZDU3ZGU4MTk4ZDBjYmUwIHJlbGVhc2UzMC1tYWludAorNzI2MDEgYmJiOTExZjdjMGMyOWYzY2FjMjdmYjIzZjMwZGQyZGQ1MDc5NDViMiBsZWdhY3ktdHJ1bmsKKzcyNjAyIGY1MGVkZDRiYjQ4ZjgzYjg4MjhmOGVkZTdjODYwYTg4OGE0YWU5YjMgcmVsZWFzZTI2LW1haW50Cis3MjYwMyA2ODhkOTRlODZjYTI4OGRkNDViYWQzNDk2NDU1ZjI4N2RiOGQ4MzYxIHB5M2sKKzcyNjA0IDM1YmE2NWYxY2M4MTc5NjM1ZGYwNjAwNTdlMjQ1MzQyZTdjMjAwYjMgcmVsZWFzZTMwLW1haW50Cis3MjYwNSAzNDdlNTllYTFhNzFkYTY4MWRiZmU2YjQzODllMjE3NTQ2NzIzNmY1IGxlZ2FjeS10cnVuaworNzI2MDYgMzE5NTI0NTI0ODViZmEyYjQ2MGE0NWNkZDI3YTRlOWJiNmRjMzIxOCByZWxlYXNlMjYtbWFpbnQKKzcyNjA3IGU5YTdhZWU4ZTgwMDQxZTEwZDI0NjEzODUwZGYwZDYxZmM4YWVkNjggcHkzaworNzI2MDggYmQyZjdlMTNmZDczZWRmZDA0ZWQ3ZjVjZjVlMzA2MjMxMDRhNTM1MiByZWxlYXNlMzAtbWFpbnQKKzcyNjA5IDAyMzE4NzZmMzEwNDNkMTg4NjEzODAyYWI2NTZmZmVmYjQyYmE1MjEgcHkzaworNzI2MTAgYzUxODA4MjY5MjE0ZDIyMzA4MGRiNjRkNWJlYWRlYTYxZTQ1YTExOSBsZWdhY3ktdHJ1bmsKKzcyNjExIDkxMzc3ZGE1NGVkZTk1ODRhZWMwNGMxOTU1OWJmNmRjYjEzMmJhYzEgcmVsZWFzZTI2LW1haW50Cis3MjYxMiA4ODJkOTc5NTQ1MjYwYWI1NjA4NGY3YTA3N2FhNWJiZGVmZmRiZjA3IGxlZ2FjeS10cnVuaworNzI2MTMgOGY2ZTkxMjM3MDI3NDIyODAzYWRiN2Q1ZDlkYjg5MGZmNTkzOTRkNyByZWxlYXNlMjYtbWFpbnQKKzcyNjE0IDMyM2UxZDg0OGI1ZmZmYWY3MjE3Yzc1NTUwNjgxOGNhYzVkMDhjYmIgcHkzaworNzI2MTUgOGM3Y2MxNmRjNzljNDhlZDc1Y2I3ZmJmMjRhMzlmZTBjNTgzYjMxNyByZWxlYXNlMzAtbWFpbnQKKzcyNjE2IGE2YzRjZGZkYTlkNmQ1MDc5NTZkNzJjMTI1ZWYwZDI3ZDQ2Y2IxYmEgbGVnYWN5LXRydW5rCis3MjYxOCBiZjY5OTAyNjQ1OGU0OTAyNGE5OGEwNmYyMGM4NjIwY2U1NWFiMzkwIGxlZ2FjeS10cnVuaworNzI2MTkgZGRlZTRkMDVmYTE3ZWExZGE3MWNjMTY4NmNhMzYxYTZjNDkxYzdlYyByZWxlYXNlMjYtbWFpbnQKKzcyNjIwIDc4MTRiZTY5NjdiOGJhMDg4NTgxZmRjYTA5ZThlOGExYzA5NjYzNTEgcHkzaworNzI2MjEgYmVjYTZkN2NjYzkwNzcxZWNkZTk5NjE3NTc1Yzg4MzA2NjNhODg4YiByZWxlYXNlMzAtbWFpbnQKKzcyNjIyIDNhNWY2YjYzMzQ5OTM0OTQ2OTYwMjdiNzc0ZWU5OGE4MzYwMGJlM2EgcHkzaworNzI2MjMgYTY5ZTdjYzA0OWJiNWVjOTllNzg0ZTkzOTk2ZGVmMTRlMjgzMTlmNCByZWxlYXNlMzAtbWFpbnQKKzcyNjI0IDY3YmFmMmMxNzM2OWY4NGY2ZTZjMzg1OWQ5NDM5MTAyNzgyOTI4ZWQgbGVnYWN5LXRydW5rCis3MjYyNSBiMDVkNDc5ZDFjYjBhZGZhYmE4OWU4NTExOGFmZTE2MzBhZWE5NTY5IHJlbGVhc2UyNi1tYWludAorNzI2MjYgMzkxZGI4MGQxYWY0Y2YyNmNiYmIzYTljOGI0MzA2MDFiNzVmNTgwMCBweTNrCis3MjYyNyAzN2Y5MGYyZjQwMzQ5YThjZjBlZmZiNmFlODBkMTI0Y2EyZmQ4NGIxIHJlbGVhc2UzMC1tYWludAorNzI2MjggMWQwNDhjOWY0M2RjNjZhMDJiNjJjODdjNzIyYzk4ZDg1MGI4Zjk1MiBweTNrCis3MjYyOSBhYTc3ZmQ4NjI2YmE5Nzc3MTBjNzIzNjY4NjcyNWRmOTQ1Nzc2NTUyIHB5M2sKKzcyNjMwIGU5NjIxMjk2NjVkODA0NDc1YjJiZjExNjU2OWEzOWU1M2YzZjhkM2IgbGVnYWN5LXRydW5rCis3MjYzMSA5MGE4MTAyZDdlZmJkNjkwMGRkMTNhYjgwNmY2OTZiNWNjN2ZhZTA3IHB5M2sKKzcyNjMyIGM3MmQ0ZmNlMzAwMDU5N2RjMTI1OTEyMzA1ZGZhYTYxMzgwMWRkZjIgcmVsZWFzZTI2LW1haW50Cis3MjYzMyA2ZDY5MTQxNzdmNjAyNjZiNWRhMDQ0NzMzOThkNmMwNzU0YWRiOWNhIHB5M2sKKzcyNjM0IDkxMDMwOTI3NjM3Njc0ZGY1YjEzMjE5N2M4NmVjMGFhNmY0ZmY0ZWEgcmVsZWFzZTMwLW1haW50Cis3MjYzNSAwN2I1ZjIwZDAyNWE4N2Y3OTNiNmEzMTJmOTQ3MDdkZmFkNzFhOGFiIHB5M2sKKzcyNjM2IDM4ZTM1NDYwOWNmMmQ1NjYyZmZjODhjMDU5MjVjYmI3NTEyZDIwNDYgbGVnYWN5LXRydW5rCis3MjYzNyAyYTdjZTEzY2VhMjUwODNmOTk2MmVhZTFiYTc1MDlkZmQ3NTBiZWVlIHJlbGVhc2UyNi1tYWludAorNzI2MzggZTY5MTIwYmU2NWM0NTI3OTA5ZDlhMWYwMjkxMDQ5N2YxZDE0MDdjMiBweTNrCis3MjYzOSAwZmNmMmFjZGU0NzM2ZDJhZGUwOGY2N2YyZGUzNDNmNjlhYTlhNzI4IHJlbGVhc2UzMC1tYWludAorNzI2NDAgZTRkOTM3Zjc4OWExMTMxNGZlMWJkMmU4YjBlYWRmYzMxNGIwM2I3ZCBsZWdhY3ktdHJ1bmsKKzcyNjQxIDczZDliOTczNTQyNDhhOTBhODgyZjU0MWZmNzIxMTY1YzA4MTFhNDQgcmVsZWFzZTI2LW1haW50Cis3MjY0MiAzYzRiMWI0NTAxYzFiNGQ4NzIzMmI0YjRhODdiNDVhNTExNzVkNTFiIHJlbGVhc2UyNi1tYWludAorNzI2NDMgNmJlNTg1NGU1ZGY3YWFiYWQ2MjQ4NWE3MzE3YTc5MTA5MGMyOTE0NyBweTNrCis3MjY0NCA3ZTNkN2I1MjI0YjFlYWI2YWVhZDIyM2UwMjQxOTg5MjNhM2M0ZTk1IHB5M2sKKzcyNjQ1IDkxZWE4ZmNkNDU3ZTVjMTQyMzRiOTY4OGQ4OTZjNDQxZGMxMTAxMGYgbGVnYWN5LXRydW5rCis3MjY0NiBhYjMwYjIzN2I2MDAwOWI3MjdmOGNhYmM4Y2IyM2I1NGY5MmYwOGNjIHJlbGVhc2UzMC1tYWludAorNzI2NDggMTdkMTk0NjU0MGQ0Nzg3MTk2MDJlYTU0YmI2ODhmYWYwMTU0YzI4ZSBweTNrCis3MjY0OSBlZTIxNTY0OWZhZTA2MDhjYzRlOTI1ZjMzYTQ5MjhmZGVmMWMyYjQwIHB5M2sKKzcyNjU0IGZiMDE5NzE5NDlhNTU0NTUwMjBkNGVhMDM3MGYyNDYwOWQ3OGRmMTMgbGVnYWN5LXRydW5rCis3MjY1NSBlNDUxODZlZGFjOTE5YWRiYWE3NjQ5OTg3Y2YzM2VhMDExY2IzMWE4IGxlZ2FjeS10cnVuaworNzI2NTYgZjc2ZjIzYWYyMjk1YWU1MzY4NThmY2I1YTQzNWY0NTA2NzMyMzE5NiBweTNrCis3MjY1NyA5ZDUwMzcwNzQ0NGU0MTg3OGI1ZjZiODMzY2U2MzY0Mjc4NTc1NzZjIHB5M2sKKzcyNjU4IGI2MDBlNTEwM2M2M2UyM2ViZDZiODY5YjY5ODU1OGY0ZTA1YjAzZTQgbGVnYWN5LXRydW5rCis3MjY1OSBiMzNiNDI0OWIxODU4NTIyMDhjZDg1YTExZjk2MTU4ODVmOGQ2ZTYzIHB5M2sKKzcyNjYwIGUzZGZjZDFmZTIxMGQ2NTVlNjk2ZWM4MWYzYTQ4ZDQ2ZTBjZmE1NTkgcHkzaworNzI2NjEgYTdjMzRmNzI4ZjBlOGFkMTM5YWFmNTM1YTUyNmQ5ZjAxZjBmYzA2NyBsZWdhY3ktdHJ1bmsKKzcyNjYyIDkzZWQ2OGI5OTllNzU3Y2VlOTgyODI1NTMzNmFlNGQ1ZGQyY2VlZjEgbGVnYWN5LXRydW5rCis3MjY2MyA4OGQ5NjViZTg2MTcyNWRmZjIxNTM2MmIwYjAwMjhhMGJkYWU5OTBjIHJlbGVhc2UyNi1tYWludAorNzI2NjQgZDkwMmYzNDk0NDk5NjA4YzJlYzA0MzQ2ZGM0NjZmNzIxMGU0NjFlYyBweTNrCis3MjY2NSBkZDkxNThmYjA4Njc4M2Y0OGY5MWRjOTE2OWI0MmFjODE5ZTU3NDNkIHB5M2sKKzcyNjY2IDliYjJhMTM3MWRkYzQwMDUxOGYyMGRhNjcxZTU3ODY3NzUyMzQzMWIgcHkzaworNzI2NjcgZTVmMjg4NzZhZTZjOTNiYWU5ZTg3MGViNGQ2ODEzYjQ0N2I1YWU4ZCBweTNrCis3MjY2OCAwZDhkYjgxYTc4NmM2OGFjZjFhZmUzN2ExZWQ4ZGE3N2NkODc3NzczIHB5M2sKKzcyNjY5IGM0MGYxODdhZjZkZGJjZjc5OGExNzRhMmMzOGNiNjRkYzYwNzE4ZmUgbGVnYWN5LXRydW5rCis3MjY3MCA4NWZiNGMyMjlhOWNlYzIxYzgxMzU0NmUyOTg2NjYyZDY5OTBlNGUyIHB5M2sKKzcyNjcxIGI0MjYxZGE0ZWE1MGMzNzZmNDA4NDZmZTVlZTk2MjYxMDhiOThmMGEgbGVnYWN5LXRydW5rCis3MjY3MiBjZDRhNzgyN2VkYjY4YTU2OWQwZGM2YTVlNjI2MzRmZjZhZTg1ZjViIHB5M2sKKzcyNjczIDE4YjJmMmNkMDc0MWY0YTIzZDNkMGU5MjNhZmQ5YTQ2NjM1NGI2M2IgcHkzaworNzI2NzQgOTYxMDk0NzA1MzcwMjkwY2M1ZmQ3ODM4OWY4MjU2MDEwZDlhMWMzMSBweTNrCis3MjY3NSA5MGUyYmZlNGY2MGU3YTI1MjQyZDJiNWIyODE3YTg4YjkyNzU5ODY1IGxlZ2FjeS10cnVuaworNzI2NzYgMzRiNjBiNzM2YWQzM2Q1NDgzNjY1ZTlkMDM5ZDdiMTU2YzIxMjI4MyBsZWdhY3ktdHJ1bmsKKzcyNjc3IDJjYTExOGNhYWU3MTZhN2M3NmQ5ZjBiOGRhZWY4YTY1ZTAxNzNmZGEgbGVnYWN5LXRydW5rCis3MjY3OCA3OTA5OTJiZWRkNjFkMWU3YWZjMTJmZGNlYzg1YjY0YmZlMGQ1YjlkIGxlZ2FjeS10cnVuaworNzI2NzkgOGU4ZTg3YzFlY2I3ZWM1N2RlMTUwM2MxZDRlMDgxMTk5N2Q3MmZjNiBsZWdhY3ktdHJ1bmsKKzcyNjgxIGQ1MTRhOGI3YWU3OGFlMmFiYWM1MGQ3ZTIzMzdlZjdmYTZhMmQyZGQgbGVnYWN5LXRydW5rCis3MjY4MiA0M2ZjNDVkM2NiMjE2YjVlNTQ4NjU4MTNlOTk1ZWFhYTE5YzE3YTliIHJlbGVhc2UyNi1tYWludAorNzI2ODMgYWM2NjBlYTM1ZjUyNWRhMzYyYzFiYjYwZmYyYzUwYzU1MWE5YzRkMiBweTNrCis3MjY4NCBjM2Q0ZDkzYzg5ZTI1N2VlNmNhMDM5NmFiMTdlOGRmMzk4NWQ4YTQ5IHJlbGVhc2UzMC1tYWludAorNzI2ODYgZjFiZjUzODc4NmI3YzllYmI1YzIxYTUxN2UwZGNkZWJjODljZDlmYiBsZWdhY3ktdHJ1bmsKKzcyNjg3IDk4OGNhOThkOTE5NjJiZmIwMmZlYmE2NGFhNjFiMDQzY2I5MWM3ODggcmVsZWFzZTI2LW1haW50Cis3MjY4OCBjYTc4NDdkM2M0NTE5NGYwYjg5NGNmNDQ1NGIzZmYzZWJjNGI1OTlmIHB5M2sKKzcyNjg5IDFmOGFjY2QxZjQyYWQwMDRlZmJjMmQyNWNhODVmNDhlNzgyYmE3MGYgbGVnYWN5LXRydW5rCis3MjY5MCBhZTAwNjM4NmVjMzkzYjI2MzRmM2E2NmZmNjM0ZTAyZGI3NjljNTMyIGxlZ2FjeS10cnVuaworNzI2OTEgZjlmOTk3YzFmZDgxM2M3NTMwYTU1NmFmNjYwYzE2NzdmN2U3ZGZmNyBweTNrCis3MjY5MiA2OTU2N2EwNWQ1ZTY1NzM2ZGMzMDRiYjc5NTdkOTkzODRkY2EzOWZiIGxlZ2FjeS10cnVuaworNzI2OTMgM2FhNmE4NjNmZjA2OTFlNThjZGIyNTkyYjJjNDA1MjJlOTlkZWI4NyBsZWdhY3ktdHJ1bmsKKzcyNjk0IDFjYjgwNGEyZTAzODc5Njk3YTJkNGFhODk5MmIwZGY0MmVkYmRlNjggbGVnYWN5LXRydW5rCis3MjY5NSBhMTk4ZThkMzZlYzNiNTc4MDFjZjI5MzIyZTM2MzUwNDdkNWU1ZmY5IHB5M2sKKzcyNjk2IGE1MzU5NjA5NDQ0NDEzODZlNDQ0N2Q4MGU4N2UxZTY0OTI0ZTAzMjEgbGVnYWN5LXRydW5rCis3MjY5NyA4M2RkMmIyNTJhMjc2NDZjOGFhMTU2Yzk0OGIxMTZiOTRmMzI4Mjk2IHB5M2sKKzcyNjk4IGQ2NGQ0N2VlNTRhMTgxNjhmZDkyZjJlYjQxMzM4ZWMyYzAwYmU2YWMgbGVnYWN5LXRydW5rCis3MjY5OSBkY2RhNDQ4Y2E2NmU4NzI2YjY2OGY2ZWU0MDZjYjRlN2NjZjIxYmQzIGxlZ2FjeS10cnVuaworNzI3MDAgMGUzYWNlOWY3NTE2ZGI0ZmY1ZGY5M2I5MDNmNjFkZDI4MzExZjU4YyByZWxlYXNlMjYtbWFpbnQKKzcyNzAxIDc3Y2ZlZjU5NmQzMzUwYjU5NzAyZGYxZDQ1MzJlM2JkNzEwMmM1OTMgcHkzaworNzI3MDIgOTAxYjRmZmZlYTFmODBkZWNhYjcyNGUzNDMyNjg5ZmM3NTI2N2YxMCByZWxlYXNlMzAtbWFpbnQKKzcyNzAzIDliOTJkMmI4NmJhYWVmMjExNGUwOGY4ODBlNWRlOTQ3YTkyNzgwMjEgbGVnYWN5LXRydW5rCis3MjcwNCBkMjczMmVhOTliYTA4ODgzZjU4Y2MyYjRjY2I1YjY5YWM3NjNjNTIwIHB5M2sKKzcyNzA1IGU4ZjFhMDA3NzcxYWE5MGI4ZjA5MmM5NTEyMDMyYzRlZjAyMTUwNTAgcHkzaworNzI3MDYgYjIyYjJkYWFlYjQ0ZjM5ZTliMzI3NGNjZjA5YTExZTlkZTNkYjAwNCBweTNrCis3MjcwNyBkODQxZjk3MjQzYjU3NGFkODUzM2U2OTQwODc5MDk4OGUyYjZhZmMwIHB5M2sKKzcyNzA4IGI1MmI5MmYzMWZhODg5YzFhNTQ4YWVlZTFiY2YwYzc2YWQ4YWVhM2QgbGVnYWN5LXRydW5rCis3MjcwOSBmNDNmYzExOTNjMmFiMzg4NDc1NjlkZWE1OWQ2NzAwOTBlOTE0ZDU5IHB5M2sKKzcyNzEwIGU5YzA4ZmZhOTg5NTEzNWE4ZTFkOTMyMTAzN2E2MTUzYTY5NTAyZTEgbGVnYWN5LXRydW5rCis3MjcxMSAxMGNhMTFlNTk4ZTY5M2NmMzcyNjgyNGNjNzA4MjNjYjBiMDY4MmM2IHB5M2sKKzcyNzEyIGM1Yjk4MmFmMjA5ZDdiYzM4YjM2YzkwMmQ3OGFiM2NjOTBiMjJiMGUgbGVnYWN5LXRydW5rCis3MjcxMyBmZThkM2ZkNjZkMjY0ZWMyMDkyM2FmOWRiZDg4Y2Y2ZmQ5YmFjNzA4IGxlZ2FjeS10cnVuaworNzI3MTQgYjZiNDU0YjA2YTdiMzVjYTExYTBhMjY1MTY3ODZiNmI1MzlkZjcxZSByZWxlYXNlMjYtbWFpbnQKKzcyNzE1IGZjNzkzNWRlOGU4YWRhOGM2Yzk0ZDM1Mzk2OGU1YTc1YWJkNjE1MTUgcHkzaworNzI3MTYgZDQwNzI5NzU1ZWRmY2MyNzJlZWNhZDNmMDE5MDAyMzQ4OGZhMzhkOCByZWxlYXNlMzAtbWFpbnQKKzcyNzE3IDM1YmNlODBhMjVmODk5ODZhZWJjYTE0NzgyZjI0ZjM1NWI5NTQ3NTcgcmVsZWFzZTMwLW1haW50Cis3MjcxOCA5OWI0MDA4NjE1NDNlYTQ0MjE2N2NmOTZmOTJlMmM4ZmMyZWE5YTQyIGxlZ2FjeS10cnVuaworNzI3MTkgYWRiYzY2MmZmNGMxZDI4YWJiZDA1MjFkYjU3MmEwZmMxYmExN2Y1ZSBweTNrCis3MjcyMCAwZThjOGIwZDg2NjllNDlkNTgxYjU4NDIwYjNlMjhjYWJjZDcwM2M0IHJlbGVhc2UzMC1tYWludAorNzI3MjEgZjI1MzgxODNkMjYyMWZhMDA5YWUyY2RkNzJkMjgxMWIzMzNlOTFkNSBsZWdhY3ktdHJ1bmsKKzcyNzIyIDlkODFlMmM0MzhkYjk3MWI1Y2IwOWE5MDVlZWIxYWYzYTE2YThmZTggcmVsZWFzZTI2LW1haW50Cis3MjcyMyBlMjIxNzM2MWViMzdhN2JjODRmMTcxMjZlZGM4ZjZlZmFkODJjMGVkIHB5M2sKKzcyNzI0IDEwOGU5MGI4OTIzZWEyZWE5NWNlMGNiMTg4OGNiZWM5ZDEzMjZlNWUgcmVsZWFzZTI2LW1haW50Cis3MjcyNSA4MDZlZjNhMWY4NThkMTQyNmJkYzMwYjQ5M2QyNDlkZDlhNmI0YzI5IHB5M2sKKzcyNzI2IDM2NzhiMmQzNjBjNjk4NTQ4OWQ1MDYxMTk2OWIzYmM4MTU2MTEwODggcmVsZWFzZTMwLW1haW50Cis3MjcyNyBkZjM4MjY0NzJlM2JmOTFjZGVkN2I5NDBlZDJjNWI4ZTg2ZGIyOWFiIGxlZ2FjeS10cnVuaworNzI3MjggZjBiMDlkMDUzOWMwOTk1NzRmODU0MjU5NWJkMTkxOTBjZGFlYjA5YSByZWxlYXNlMjYtbWFpbnQKKzcyNzI5IDU2YWRmODY0ZjM4MDhkZDIyOGJjYTg0YTlhOTg5ZGY5NmU2MWRmNjEgcHkzaworNzI3MzAgOGZmZWFmNjQ5OTcwOGVkNmY3NmNiMDM0Y2RhMzhjMjIzZjQwMjk1NSBsZWdhY3ktdHJ1bmsKKzcyNzMxIGMwMDliMmIzNDgxZjljZmM1ZWQ2MjE5OWE1OWUwMDQ0NGJjM2NmMmQgcmVsZWFzZTI2LW1haW50Cis3MjczMiA4NzgzMDQ2MWFiNDI5NzJjODFmMzZlMjZlOTBhZGI2YWRlZTkyZDRlIHB5M2sKKzcyNzMzIDc2YTlmOWNiNDM4ZjUwOTNmM2ViMDYxYWQ2YmNkM2JkY2FmMDljNjMgcmVsZWFzZTMwLW1haW50Cis3MjczNCA3MTE2ZGUzZGJlOTgzYTZkZjM5NTI3YzBlYjIyYjUwMWM2NGMzMGU3IHJlbGVhc2UzMC1tYWludAorNzI3MzUgZjY1ZGUzNmYxODVjNWNkNTAzZmQ2MDI0ZDMxNDc1Y2ZhODc3OWYyOCBweTNrCis3MjczNiAxNzhmNzBmYzQ3OGQ3OTZiNmE5YTllZTI3YzhjY2NhMzMyMTMxY2U5IGxlZ2FjeS10cnVuaworNzI3MzcgM2JmZGI4ZDcyNTYwZmNmYjJkYzdhMGEyMzk1OTM0NGEwNDE2ZThhOSByZWxlYXNlMjYtbWFpbnQKKzcyNzM4IGZiNTlhNTI2NGFlMjVjOTUwODhiNTViMzQ3Njg4YWZlYmJhMzg3ZDAgcHkzaworNzI3MzkgODFjNTc5MDBhMTgyNWE4MDNhOGZkOGJhMDUzZjA2YjhlZTM4YmQyOCByZWxlYXNlMzAtbWFpbnQKKzcyNzQwIGZiYjMzMzkwYjI1NDliMmY0ZTA1MDk1YzY2ZThiMWU4ODdmMTdiZmMgcHkzaworNzI3NDEgOTA0YTFiZDM1ZTAwODkyYjU0Yzg3MGY0NGVlMjJhOWU1ZmYwMjU0MCBweTNrCis3Mjc0MiBkMTQzZWI2MjRjZjVlMmZiZmI5YzJkM2ZiZTJmZjAyMTRjYTMxYzE0IHB5M2sKKzcyNzQzIDc0YjY3NDhiNjNmNWZjYWIxZjMwZGI3N2ZjNmZkMDQ1NjNhOWZiMjIgcHkzaworNzI3NDQgZDA5OTRhNDJiNTk3NWIyNjBlNzViODAxMzA0ODdhOGE3YzFhNjUxMCBweTNrCis3Mjc0NSA0MWE2OTI2MjdlZWIzYzUzMzgwNDdmMTQ3YTE5Y2Y3Njk3YWFmZGVmIGxlZ2FjeS10cnVuaworNzI3NDYgN2NiMGE0NTQ3ZjBhMGY4MzJiZjY2ZTczNmMzZThlYjZhMzJjN2UzZSBsZWdhY3ktdHJ1bmsKKzcyNzQ3IDBmZmM5NTU4N2Q3YzQ1NjAzNDA1YWJiYzg5NzA0NTFjOWYxNWJjNDggcmVsZWFzZTI2LW1haW50Cis3Mjc0OCAxN2QwNzhjNWQ2NWI1MjI5OWYxMWJjYzg2ZjU0MDZhOTU0YTRlYjk1IHB5M2sKKzcyNzUwIDU4ZDNjNDU0YmMzNzI0MzhiN2EyODE2NTZiNzM2N2ZiYWExNjhkNjMgbGVnYWN5LXRydW5rCis3Mjc1MSBmOTM1Yjk1OTgwMzk4ZDBkMWFmNDI1ZjEyMWZlYmUxMWZjZGJhYWVhIHB5M2sKKzcyNzU1IGE3YWQxNjk2ODY2YjRkZDk2OTJmMWQ0NTExYjhkMDY3OWNiY2MwN2YgcmVsZWFzZTMwLW1haW50Cis3Mjc1NyAyYjdjYjQyZGRlMTE2N2YwNTc3NTcwNTg4NDU5OGM0ZjA2OTZiZjBmIHB5M2sKKzcyNzU4IGUzYmI2YjYyYmQwZjUwNzVkNTdjOWUzMWMxNGUyYmY0YmY2MWI2MzUgbGVnYWN5LXRydW5rCis3Mjc1OSBkNDczZmJhNGVjNjc1N2IwODU0MDM4MjRhZjFkMGM2ZjkwNDc2MTczIHJlbGVhc2UyNi1tYWludAorNzI3NjAgOTRkMjgzZDNkMDBiZjc0YjcxNzUwNzQwYTI5ZDVmYzM0NDYxMDkxMiBweTNrCis3Mjc2MSA2YTM1OWZkMjQ2NjkzZjQ5YWY2NDBiMGMzYTIzZDY2NTFhYzc1MTVlIHJlbGVhc2UyNi1tYWludAorNzI3NjIgMTcwZGRmOTYwZmRkZDhkOTM5MjA1Nzk0MTg5OTc5NWY1Njg3NDcyOSByZWxlYXNlMzAtbWFpbnQKKzcyNzYzIDcxZWM0ZmM2ODNhZjkyNjM0YmMzMDk3MDgzOTBiYTkxOGNkNjA5MzggcmVsZWFzZTMwLW1haW50Cis3Mjc2NCAxNDNhZWNjODBiNmI2ZDViMDM0MzU2YzlkN2FkNmYwMGYyNWZjMjNkIGxlZ2FjeS10cnVuaworNzI3NjUgMmQwNmEzMmExMmUzNzA2ZmUwYjVkMzFjMDY1Y2ExNDEyNDkwZTMzOCByZWxlYXNlMjYtbWFpbnQKKzcyNzY2IDczN2IzZDRhY2JiOWZiNzAxN2FlNDJmZThjMDYzZjdhMmRmZDllZjQgcHkzaworNzI3NjcgNjhkY2U2NTUwNmQ5ZmFhYjAyNmQzZDRkNmRmOTU1ODhiM2U4OTJkMSByZWxlYXNlMzAtbWFpbnQKKzcyNzY4IDhkMjYxYjc2ZGE0NmJmOTRiNjBlZjFmMzBlMTIzMGVlYWYxMzE4YTIgbGVnYWN5LXRydW5rCis3Mjc2OSBjZWU4MGQwNmY3Y2U5YzQ2MzhhZGZiMWFlZjViOGNlMWMwOTZiOGRmIHJlbGVhc2UyNi1tYWludAorNzI3NzAgOWEwN2U5ZDYwOTNhZGE0MmUxMWQ0OGQwMjdjNjA5NjlkZWNiNzFjZSBweTNrCis3Mjc3MSA3ZmY3YmVmMzI5MTE2OTQ0MzFjMTc3MGI1ZmI3ZDY1OTc0YTViNWY1IHJlbGVhc2UzMC1tYWludAorNzI3NzIgMDBlYmJmMWNlOTM2MDI2ODAyOWEyYWYyNzk5ZjZiYTEzZWVlNmYyZSBweTNrCis3Mjc3MyBhZTIwZjFlYmVjMjFjY2VhMzg5MzhhNmJmNjgxNWUwMGIwYjJjZTUzIHJlbGVhc2UzMC1tYWludAorNzI3NzQgZGFjYWQ0MjgzNmRkNjAwYzc4OTRjMGY0OGFhNTBkMDJjZjI1Nzk4MSBsZWdhY3ktdHJ1bmsKKzcyNzc1IGMxMzY4ODdkYjdlZmY0Y2IwMWZjM2UxZTM0ZGM1ZTk5ZDg2NWI3YzkgcmVsZWFzZTI2LW1haW50Cis3Mjc3NiBkODM1MGQwNDRjZjIyOGNkNmY5ZjdjZGI3NjcyMzFkMzEyMzMxNDExIGxlZ2FjeS10cnVuaworNzI3NzcgNjM5NTM0N2MwMjc2MjZhZDNmZDdiNWQzNTA3NzllOTU4NzI1MTJlOCBsZWdhY3ktdHJ1bmsKKzcyNzc4IDk0NWM2NTc0NDdkMjFlNjY3OGQ4NDU2NTBjMDllMWNlZmRkMWMyMjQgcHkzaworNzI3NzkgOGYxNzM2M2I5M2U2ZWQxYzRhN2NiMjZmMWI2NjNkMjJkYTI5MWY5ZiBweTNrCis3Mjc4MSA4ODNhY2U3ZWE0NDY2NjQwZWExZTdmNmU2MzQxZWI2YWRlZTk1NjMyIGxlZ2FjeS10cnVuaworNzI3ODIgMjkwMWIxM2ZiZDdlNjJlNGY2YjIyOGJmOGNhMmEyYjgzODQyYzVkOSByZWxlYXNlMjYtbWFpbnQKKzcyNzgzIDkzOTRhODJkOGRlMTY5NWYyZTE5OGI0Y2EwMzM2MjMwOTdkOGM0ZjUgcHkzaworNzI3ODQgNjllOTQzNGU0NTBhZGViZGNhMmE3OTE2MmVmNDM1MTMyMjk3NDcyNSByZWxlYXNlMzAtbWFpbnQKKzcyNzg1IGY3NjUwYTBlOTBhZGI1ZjZjODRmZjQyYTEwYzRhMjFkYmM0YTE4YjcgcHkzaworNzI3ODYgNzRiZGIwZTUyMTJiZGYyMjE2ZDUxNGEzNzdlYjY0Njg1OTExZWY5YSBsZWdhY3ktdHJ1bmsKKzcyNzg3IDc2YzQ0MTRkMTBhNmMxYzE2MmU0NTQ1YTNjMGU1YzRjNTIxODExNjMgbGVnYWN5LXRydW5rCis3Mjc4OCA2ZmQwMDllYzIyNGE3MzlmOGZkMWRkY2MxNTU5YWMxMGZhZjUwYzQxIHB5M2sKKzcyNzg5IGFiMjNmZjIwNDdhYTBkOGE5YTk1ZDY0NzQ0ZDY4NmUyMDFkYjExN2EgbGVnYWN5LXRydW5rCis3Mjc5MCBjN2ZkNzQxYzcyZWJlYmRmNGMyYTQ3YzljN2VkMWYwYTM2MmU1NTc5IHB5M2sKKzcyNzkxIDA1NjI4M2E1YzVkYTAwMmVkZGExZmI2ZmY2ZGIwZTA2YWM3M2U1ZmUgbGVnYWN5LXRydW5rCis3Mjc5MiBmMjc1ZDZhMGExZDE3Nzk3M2U0MTQwYWJhMDMxMTk0MDZjOGYxMWU5IGxlZ2FjeS10cnVuaworNzI3OTMgNmZhYjhiZDE1ZDcxMGQ4NTE3N2ZmN2YxYmUyYTgzZjViYzAyOGNmMyBweTNrCis3Mjc5NCBhNTJjZWNhYmZmZDRjMzI4MDAxMDQzZTU5NGI4MzFjMzRiYTQ0NGNlIGxlZ2FjeS10cnVuaworNzI3OTUgYmRkZjExZTYyMjAwMDJhOTJmNjU2MDA3MGI5Nzg1N2RlZGI2ODM0YyBweTNrCis3Mjc5NiA0Y2VlZWZiODU1NWU2MzlhYTlmODg3ZTQxYzE0ZWMwZjIxYzJjNmJmIGxlZ2FjeS10cnVuaworNzI3OTcgYWQ3NzIyNjExMWIyNjMwYWRiMzY1NWIzZDVlMTYzMTQwYjE3MjYyYiByZWxlYXNlMjYtbWFpbnQKKzcyNzk4IDA4M2JhMjQ5MDVhZDkxOTc4MjhmMjRhNTYxZmRkZjYzMWNjZDBmYjUgcmVsZWFzZTMwLW1haW50Cis3Mjc5OSA0ZmE0Y2E0NTAzYzhkZjYxZTc5YmUwNGQzNTBiYWQzOTY5Mjg2ZjZmIGxlZ2FjeS10cnVuaworNzI4MDAgN2UyYTZjMWRjOWQyMjM2M2Y5MWI5MmNhZWE0ZjNkZDU4YmRjZTk2MCBweTNrCis3MjgwMSA2ZTQwYWRkM2VlMDJhN2FlY2MzMDc2MWVhODU3NjQ5ZWU5NzgzN2QwIGxlZ2FjeS10cnVuaworNzI4MDIgMDIzYTM0MjhmMWFlZjY4ZDQ3ZmFjNzIxZDJhOTg1NDBiOTg3OWU4MiBsZWdhY3ktdHJ1bmsKKzcyODAzIDY3MGZhMGMwZmY5YWYyZTY3MTFmZmRmN2RlM2M4MDcyNjFhZGU4NDQgcHkzaworNzI4MDQgODkyMTMwNGI1ZjkyMmE0MTViZGI3YTBkZDI0YjBiOTcwMmE4NmRjMSByZWxlYXNlMzAtbWFpbnQKKzcyODA1IGQyY2NkODllOGU2Yjk1MTNkMmU4YzY0OWVkNjZlOTJhOGI4MDI2OWIgbGVnYWN5LXRydW5rCis3MjgwNiAzNzllNjNiY2JkMDQ0OGY2YTIwNjcxZWM2OWUzODI0ZGQ0ZWY4YWViIHB5M2sKKzcyODA3IDkzZjRhOWFkMjZmNjhkMzNiZjgxYjgyYTA5MzRmNjQxMThmYzE0YmYgcmVsZWFzZTI2LW1haW50Cis3MjgwOCBiMzMyNmZlNjMyZTVhNzkzZTE5NmQ5MTRlZDM4MGMyYTZiNTQ2MDYwIHJlbGVhc2UyNi1tYWludAorNzI4MDkgMmQ2ZmZmOWZlOGFiNzM2ZmYyMWE1OGFhZjllNmZlNTliZTBhOGQ0YyBweTNrCis3MjgxMCA0NTAxYjYzOGZjM2YyOTQwZDMyYmViNmFmNjYxNWZiMWI3Nzc4ZmE3IHB5M2sKKzcyODExIDlkNjQ1N2YzYTNlZGY0NWEwZTJjOTQ5ZWZiMGZkNDhkZjUzNjVlZGMgcmVsZWFzZTMwLW1haW50Cis3MjgxMiBlYjliMWFjM2Q5ZDg3MDQ2ZmVmY2U1NjY4Y2YzMGExOWFlMjNlMWQ4IGxlZ2FjeS10cnVuaworNzI4MTMgY2MwNTU3MzU2MDE0YmQ1ZWJkN2YyYTc1MWQ3M2U5ZjY5YzEyNTRlYiBsZWdhY3ktdHJ1bmsKKzcyODE0IGQ2MWFiMDQ0ZmRmNGQxODBiNTRlNDE4ZDc0OTk3MWI4NDFlMDEwZWEgcHkzaworNzI4MTUgNjA0NDQ0NTAyZWEwMjc3ZjM4ODAzNTg0MjA1ZTVkOThmNTI3ZGMxZCByZWxlYXNlMzAtbWFpbnQKKzcyODE2IDJjMzViODE2YWMwZGFhZGFiOWMwYzA4MjBhZWI2MWRhNDFkOTUwNzUgcmVsZWFzZTI2LW1haW50Cis3MjgxNyAxYjYyYmZmZDJlZjJlMGQ1ZmUyYmZhNDI4Y2NlOGJkNjg2ODNlOWMyIGxlZ2FjeS10cnVuaworNzI4MTggNDJkYmJlZTY2YzMyMmFjNjQ1OTBmNTFjMjRkNmNmOGQ5OWIyYzQ0NiByZWxlYXNlMjYtbWFpbnQKKzcyODE5IDRmYmNlNmQzZmU4NjFkZTdjZDVhNzYwYzk1MDc0YjE5YzhiN2JiZmMgcHkzaworNzI4MjAgZmFlM2E3N2QyMDMyMTkxOTdjMGM2ZTkyYzk1OTY0ZWM4YjRmZDBhZCBsZWdhY3ktdHJ1bmsKKzcyODIxIGI2NmRhZmI0MDY0OTQzMzVlOGIzM2VlNWIxMjRjNTIwMDY5YjNmZGUgcHkzaworNzI4MjIgNjA3NGZiNDExNjIxNmQxMjNlN2FlZTk2Nzg2ODY2ODUzYzBiMWU2OCBsZWdhY3ktdHJ1bmsKKzcyODIzIGM4M2ExNzJlZTkzMWU1NzljMzcyYzhiOTY5MGEyZjBmNzA3ZjJhMjIgbGVnYWN5LXRydW5rCis3MjgyNCBkZmU4OGQyMDIxODBlZGQ5ZmY1OWI0NTNmNWJmZWUxM2RmNjI0N2ZlIGxlZ2FjeS10cnVuaworNzI4MjUgYWFiMTE3ZTZiYjE2YzI3YTJiMTAxYTU4YTBmMmVlNzFiM2MyN2FhMCByZWxlYXNlMjYtbWFpbnQKKzcyODI2IGM0MDgwNzQ3M2EzNzlkNDFiM2IzNWZiM2E5OTA2OTY0ODY2MGFiYmYgbGVnYWN5LXRydW5rCis3MjgyNyA4NDBhMDlkZTY4YzNkMTQ1OGRkZmU1NDkyNDE2ZmU1ZTViMTVhNzMyIGxlZ2FjeS10cnVuaworNzI4MjggZjIyN2ZmMzRlMzNkNDhmMjM0MWU1M2RkMTUzOTliOWM3N2NhOTkyZSBsZWdhY3ktdHJ1bmsKKzcyODI5IDM1NDA0NWJiNzMyNjE1ODliZGUzNTNkMTczZjAyY2I5NDM0ODI2MGUgcHkzaworNzI4MzAgNzNkYzcyODQ5ODUzZDE0YTE1NjA3YTRiYmRjM2YxOWNhY2Q0OGI2ZCBsZWdhY3ktdHJ1bmsKKzcyODMxIGRjNDdmN2M2NWQzMDhhZDk0YTA3OGU4NTY2ZjMxYjEzNDkwMDgwNTIgcHkzaworNzI4MzIgNjM2NGU5MTFlNGNiMzYxZmVkNTQ0OWJhNDI5Y2NhYjhiZjczNTg2NSBweTNrCis3MjgzMyAyNTljODY1NWM1OTIzMDNhNTRlMDI3YjAxMjhkNjViMzU2MWQ3Nzk3IGxlZ2FjeS10cnVuaworNzI4MzUgOTg3YmI3MzRlMzc2YzE4N2Q4MWI1MTBmNDk3MmM1NjMzZDk5NWFiYyBsZWdhY3ktdHJ1bmsKKzcyODM2IGU1ZGQyNDI5YWNiMzNlYWEwZGJmNmMxOWFhYmYzYWI2ODQ3ODVmM2UgcHkzaworNzI4MzcgOGJlZDZlNmJiOTg0MmIxZDM2MmQ0ZWZhZjAyNmIyMTQ3NWU4ZWU5YiByZWxlYXNlMjYtbWFpbnQKKzcyODM4IGQwZWE3OGU5MjRhNjkxYWE0ODhkMTg1ZWZmNDcwODNmMjEwMTg0MGYgbGVnYWN5LXRydW5rCis3MjgzOSAwNGE0YjdkZjJkNGQzMGY2OTE2ZTNmMGY2ZjMwODMxYzMxZDUyZGRiIGxlZ2FjeS10cnVuaworNzI4NDAgYzhlMWQ3ZjIyNTJjNGYwYzQ4ODRhMjQ1NzA5OWQ1OTI2ZjNjNDBkMiByZWxlYXNlMjYtbWFpbnQKKzcyODQxIGYyNDU0ZDcxMjk4YWNkNTlmM2NhMjQ5YjA1NGVmYzZlNWQwYWFlODQgcHkzaworNzI4NDIgYWIxYjVhYzM0NGQ3OThjODE0MjM2YjQ0MDY5OWUzMDk1Yjc1NDI4YyByZWxlYXNlMzAtbWFpbnQKKzcyODQzIGViMjBjOTUwMDZjNzYzYzNmYTJlYzljNzdhNWNhOWYyMjc3ZGZhN2YgcmVsZWFzZTMwLW1haW50Cis3Mjg0NCAyNTNlY2FlNjQ3OGE0YzU3OTVhYmRlNWY4Yjk1MjE5MWEzYWQ4NzE3IHB5M2sKKzcyODQ1IDQzNWJjYTA3ODFlM2RiYjgwNjU2NDMzNjY5YWY5ODQzYzE1NGZjNGEgcmVsZWFzZTMwLW1haW50Cis3Mjg0OCA3M2Y2MjczMWIxZTZlNGU5ZDQ1Y2M3MzczYjBiYzY0ZGE4N2FiZmQxIGxlZ2FjeS10cnVuaworNzI4NDkgZDJkMDI4ZjY1YzdjNjIxNGY0YjNlZDVmZGFlMjdjNDAyMzAxNzFjYiByZWxlYXNlMjYtbWFpbnQKKzcyODUwIDJiY2FjMDhjZmM2ZGJkOTY2ZDY2OTljNzQ0ZTAyOGZkNWViODk0OGYgcHkzaworNzI4NTEgZTk2NTczZTdjNTE4N2RlOGE3ZjgzNDFkMDY5NWYzMmMwYTViNGY1MSByZWxlYXNlMzAtbWFpbnQKKzcyODUyIGMwOGJiYjg0MDYyZTAxNTVkNDUyYzhkNzBiZjMzNzc1NTc5MWM4Y2MgbGVnYWN5LXRydW5rCis3Mjg1MyAzZTdiYzc0OTM0YTFjNzA3NjY2MjQ4NzcyODM0ZDgxZTNiNjgyOGE2IHJlbGVhc2UyNi1tYWludAorNzI4NTQgZDVjNTgyZjQ2YmM5NGM4YzQ3MDI1MDEyYTBlMTM5ZmUxNmIwOTA2MCBweTNrCis3Mjg1NSA3Y2MwZmIwNzY4NDcxYTg0YzY5NTg0NTVmN2EwOGY1NmMzNGU0ODdjIGxlZ2FjeS10cnVuaworNzI4NTYgMWI2ODlkNTc4ODhkNTVlNTExNGJmNGI0NjMwMjZmMDFkYjYzZjFjYiBweTNrCis3Mjg1NyBlMDY0NTRjMmNjMGJmZmFlY2I0MjFlODMyZmMxYmE4ODM1YjA1MDdiIHB5M2sKKzcyODU4IGIxZTM1MWNjNTliNzQ3NWEyNmQwYTllMTE3MTllYTQ0ZDAwOWRjOWMgcmVsZWFzZTI2LW1haW50Cis3Mjg1OSA1NGJiZmQ0MWJlNjY4ZGZjMjNjMDgzNTEwMjExYWNjZGE3ZTU0MTMzIGxlZ2FjeS10cnVuaworNzI4NjAgOWZkMWQ1NGY2MTdjZjBmN2RjMDQ1MDgzNjk2YjM3YjUxMWM5MjA1NyByZWxlYXNlMjYtbWFpbnQKKzcyODYxIGRkYzlhMTZmYmVhOGRiOWFmZGE1MmQ4NWY1N2FmMGFmZDM1M2RlNGUgcHkzaworNzI4NjIgZTc4ZTBiZGJiYWM0ODE3NjhkYTAyNThhY2MxOGU3MzRiYzRkMmExZSBweTNrCis3Mjg2MyAwYTc4ZWZmYjVlMGI1MjA0M2YyYjQ3OGI1MmNiOTU4ZTkzODQxMDA4IHB5M2sKKzcyODY0IGJmMjg0MzA4ODU2NzE3ZGIwNGQ5ZGU1ZGZhNDQyYzFmYjQwZjlkYmUgcHkzaworNzI4NjUgZjlkMjYwOGUyNGU4YTM3YjRiN2ZjZmI3ZTY4MmU0NjBkZjFlNjdiYyBweTNrCis3Mjg2NiA5OTdlZjY4YmZhMTUxNzkwZDdlMTgzZmJjZTdmNDFhOTE5MDI5NmQ0IHB5M2sKKzcyODY4IDMzYTdjYjIwZjU1OGNhNTNjNTA4MTBmNTQxMGFiOWNkOTlmYzQ1Y2EgcHkzaworNzI4NjkgMjUyZDgxYTRmNjlkMmVjYjY0YWFmOWUyY2NhMzJmODE2MTU3ZDIyNiBweTNrCis3Mjg3MCA4NDYyNzdhNDIyNDkxMDQ1NTgzZDE3NWM0ZWZkODkwZTRlNTJiNDcxIHB5M2sKKzcyODcxIDE1MDk4NmFiM2RiMjg0Y2ZkMzhkNjdhMWFjZTJmMDRjMjc4MGJhZTQgbGVnYWN5LXRydW5rCis3Mjg3MiBiMjc4YjRiZGZmMWUyMjM5NWM1MGVkYTRmM2U0Nzg2NzU1OTUwNzY5IGxlZ2FjeS10cnVuaworNzI4NzMgZTE3YzE4YTZjYWVjNDc1ZGM2MzhlOTE0NjUzOGUxYzc0ZWU4MDRmMiByZWxlYXNlMjYtbWFpbnQKKzcyODc0IDg5NjMxZjYyNzgxMGU4ZDYyMjFlNzdiZmNjZDUzNTA1NTZlZWZkOTkgcHkzaworNzI4NzUgYmQyZmIxYmUxMzBlZjRmYmYzNmI4N2U4YjQ5MDZmODRlMDUxNjAzMSByZWxlYXNlMzAtbWFpbnQKKzcyODc2IGRiYTc2N2JjMzE1NWZkMmJhNDM2ODdmZmNkNzQ2ZTllOTZkYmJjZmMgbGVnYWN5LXRydW5rCis3Mjg3NyBmOTlmM2Q4YzUxZDU4ZmJmMGY0YzBkMzExOGUzNTZkYWVlYjNlMWViIHJlbGVhc2UzMC1tYWludAorNzI4NzggZDljZTNlNzQwNjc2NTU2OThiYTA2Nzc5NWU2YWE3OWJjZDdhNjU1MSBsZWdhY3ktdHJ1bmsKKzcyODc5IGRkZGY0MjRiZDY2OTY4YzA1OTVkNDJlZjQ0NGZjNWY2NGQ1YmUxM2QgbGVnYWN5LXRydW5rCis3Mjg4MCBlN2I0YTQ0M2Y3NjRhZWZiZGUxZjFhYmYzNGFmYWRkZWZjNjJjZGYzIGxlZ2FjeS10cnVuaworNzI4ODEgNjFiYmU1YzkwNTFiZmVmMmMzOWFjODIzOWI3NDE1MDEyNWUyNzcwYyBweTNrCis3Mjg4MiBhNTgwYTJlZTMxMjg0Mzg2N2U0NmQyNDkwNGQzZjJmZGI5OTA5MzE4IGxlZ2FjeS10cnVuaworNzI4ODMgNjI1YTAwNmEyNTNiOGYxNjQxZGU4ODA2NzE0NTZkOTI2YTg0MzFmNyByZWxlYXNlMjYtbWFpbnQKKzcyODg0IDk4OTc4ZTRmZDYwZmExY2M3NjIxNDk1ODgxMjdjMzlmYTZmOTQ0ZTggcHkzaworNzI4ODUgODMzZTQ2YzE0OTliZDc4MTJhMTNhMzY2MzY2ZDU5YzFlNzQ5YzgxMSBweTNrCis3Mjg4NiA0OGI3NWViMDI0MzRjYTYzMTQ2OGUxMTM3ZmJhYWRjNDkxNmQxOTBjIHJlbGVhc2UyNi1tYWludAorNzI4ODcgMzQyOGFjZDMxZTQ1NjQyNTcwNmNlZDhjYmRlZGM3YTE0ODEwOTU4NCBsZWdhY3ktdHJ1bmsKKzcyODg4IDFlMmMzZTdmZTYzY2Y0N2I0MmRhOGQ5NGM3MzI5MWM4MzI3YWY3MTQgcmVsZWFzZTI2LW1haW50Cis3Mjg4OSAzZDMwNWRlY2U1Njc0ZGM2ZGQzNDI5NTE4ZDNiNTkzMGRjMjE5ZWUwIHB5M2sKKzcyODkwIDVkYzMzZjQ2N2ZmNDZmMmY2MzA3ZGE1ZTNhMjYxMGM0Y2NiN2ZiNzYgbGVnYWN5LXRydW5rCis3Mjg5MSA5Yzc0NGRmY2Y0ZGU3NjVlNzcyM2I3NTViZjkyYjUzN2IwZDBkMWU3IGxlZ2FjeS10cnVuaworNzI4OTIgYjVlMDAwZDAzYjJjNGY5MjZmYzgyYmJkMWEwNGVmYzlhZTQwM2FkYiBweTNrCis3Mjg5MyAzYmUzN2VjNDNjMWJiMzg1ZmE1YmZkNjAyODc1MTRjZWM2MTcxYjQzIGxlZ2FjeS10cnVuaworNzI4OTQgZTY3YjFkMDcxZWQ2MWY1ZmRmYjgwMzZjZjcwYTNiYTM0OWQwZTJhMCByZWxlYXNlMjYtbWFpbnQKKzcyODk1IDUzOGY0ZTc3NGMxOGUyN2Y2NWVjMjIxMWE0NjYyZDNjZTE0ZjRkOWQgcHkzaworNzI4OTYgMWY0Mzc1NjE5YzljM2Q5YzIyNDc1NDczMjdjNWM3NDc5Nzg4MWIxNyByZWxlYXNlMzAtbWFpbnQKKzcyODk3IGIwNWY4NGFkOGVjYjBjM2UwZDllZmYxZTNiMDdhMTA1OTMwNjhlMWMgcmVsZWFzZTI2LW1haW50Cis3Mjg5OCBmOGNhZGZiNGExYTIzNzM4M2UyNjQxYzY1NjE4ODJhYTNlNzBiZGIxIGxlZ2FjeS10cnVuaworNzI4OTkgODAyNDE3NWUzY2M2OTk5YjFhYjZhYTlmYTJiMDYyMzEyZmMwZDkyZiBweTNrCis3MjkwMCBiZmU0MDI4NTkzZTExMThlMTVkN2FjZTVjYzMwZjhiYTE1NjdhZTAwIGxlZ2FjeS10cnVuaworNzI5MDEgMDQ2ODhhYTU2NGM4NWVmMmJiNjUwZWNiNDVkOTJlN2E2NjA3NTAzZSBweTNrCis3MjkwMiA1NjU0MTNlZTljMWIzNmQ2N2ZmNjNiNmZmNmQ4ZjExNWY2ZmU0OGJhIHB5M2sKKzcyOTAzIGQ3NTA3OWRlMmU0NmU0MDBiMjI4ZWU5OThmZTM5YjhmM2NjYTEzZWEgbGVnYWN5LXRydW5rCis3MjkwNCA3MzkxZDg4YjNkODJjZDE4MjdhODQ1NDgxMTY1MDQzNWM3MjY1OTFiIHB5M2sKKzcyOTA1IGI5Yzc4ZmI2ZDcxZGJkMTY2MmIxMmRjMTVlNDYxMmQxZDA2ZWVmYTAgbGVnYWN5LXRydW5rCis3MjkwNiBlYjBjZDgzYzg0YWJmZjM0NzQ0N2I2YWRjYmYxNTM1MzBlOTYxMTIxIHB5M2sKKzcyOTA3IDBjNjE3YjdhNzI3YWUwYWFhYWM5ZWRlNmIyOTJiNjFmMWVhNTM1NDUgbGVnYWN5LXRydW5rCis3MjkwOCBkYjIxMjg2OWQ4MTQ2Y2RhYjkwYWNlYTAwZTlmZWI0OGVjMjAzMTZlIHB5M2sKKzcyOTA5IGM3NDk2N2ZlYjAyMWFhN2E5OGY5MmFhNmZhZjI0ZjBkM2I1MzFkMjEgbGVnYWN5LXRydW5rCis3MjkxMCA1YWIyZjZjYTY1YWFmYTAwOGI3NjVlYzE0NmY3ZTQ1YmI3ZDI4ZDA5IHB5M2sKKzcyOTEyIDE0NTM3NmRmM2FkNzI4ZjcwNTJmZGQ4YjZlYmE2MDBhODMxN2ZlY2UgbGVnYWN5LXRydW5rCis3MjkxMyBmMjliZTcxMGMxNzRkMWMzNDM3NzcxZDE2OTg2NTE5MTg3MDI5Y2NlIHB5M2sKKzcyOTE4IDM5ZDNhNzVmYTgyMTg0MTAyZjM0Njg1ZDViNjM5YzhkZjdhMTRlMWUgcHkzaworNzI5MTkgNWFlYTYwM2IyMzA4OTNlMmNhODc4NzE2M2Q0MzU3ZDEwOTNiYzJhYyBweTNrCis3MjkyMCAwZDc0NjFjMDYzZTc5ZWRiYmJiYzM4MWFiYjJkYzcxODY0ODc3ZjI4IGxlZ2FjeS10cnVuaworNzI5MjEgMTQ4MGZhM2ZjYWI0MDExNDUxZTU5OWVkNjJmNzEyNTM2NTZiMjAwZCBsZWdhY3ktdHJ1bmsKKzcyOTIyIDVkZDFmNmIxNDkzOTFmYTdmYzNhMWZhZmQzM2JlMDkyZmY2MmU1NGMgcHkzaworNzI5MjMgZGFkZDg5NzBiMzAzNzU2YmM3Mzc2ZjYzNTE2M2NiNDQ0OTQ3NmU3NSBsZWdhY3ktdHJ1bmsKKzcyOTI0IDE2NzU5ZjYyZWIyMjZjZDcwMWUwMWNhMWQ3NWE1MGY0NmI1N2I3YjcgbGVnYWN5LXRydW5rCis3MjkyNSAyODdjZTMwZDA4YjU0NDA4NDZlNjEzNjkwZWVhNWZlZDk0Mjk1ZDRjIHB5M2sKKzcyOTI2IDY5OWRhNmM0NjdkYzM4Yzc3YjMyNWFjMTIwZGJkZjA1NDNmMmQyZDYgcHkzaworNzI5MjcgMzU1NDA0ZWExMTQzZmVhNzkzY2Y1Mjk4YmRhNTY5ZmQ0MWNiMWI0ZiBweTNrCis3MjkyOCA0ZDY3NDUyOTIyZjkzZmU3YmU0ZGVhOTExOTBiODVlOGI3YjY1MjgyIHB5M2sKKzcyOTI5IDg0YTYwZTcxMDU1MzA4M2NiNDRhNmQ4OTExMTE0ZDE1OTBhOTRlOTkgcHkzaworNzI5MzAgYWFjMjZkZThiNWQwZTRkNmUxZjJhNjE1NGZjMmU5ODcxOTAwZGJkMiBsZWdhY3ktdHJ1bmsKKzcyOTMxIGQzZGFhZDBlN2Y2ZjU3ODdjZjdmZWM4NGE2Y2QwMjYwYjFlMjM5YzMgcmVsZWFzZTI2LW1haW50Cis3MjkzMiBjZGZkMDE3Y2VlOTA4YzhmYzM1MzkxZmRmYWU2ODYxNjdkOThmZWUxIGxlZ2FjeS10cnVuaworNzI5MzMgM2I2MTI1NjlkNTM2MWY3MTdjMTgzOTFlODBmMmU2YTBlOTc5YmJmNyByZWxlYXNlMjYtbWFpbnQKKzcyOTM0IDk4M2QyNTY5MWI2OGQ4MGY4ODVjOTE3YTRkZWFhZTlhYTQyNDdkMjYgcHkzaworNzI5MzUgYTI3YTczOWNlZjdmODc5YWJlOGFkMTI2M2Y5OTJiODNhNWFjOWQ5NiByZWxlYXNlMjYtbWFpbnQKKzcyOTM2IDAyNTgzNTFkZmE2MDQ0OTJmNDVhMTc3ODU3MmY0N2RiMGE0M2MyNmQgcmVsZWFzZTI2LW1haW50Cis3MjkzNyBhY2MwNzg2NmIyMzMwM2ZkZWU2NWU4ZGYwY2I0ZGVhMzc1NDU3MWNlIHJlbGVhc2UyNi1tYWludAorNzI5MzggMzQyNTdhNzczZWMwZGNkMzY5ZGJiMzNhMmQ2ZjEzNjdlNDMzNzIxZCByZWxlYXNlMjYtbWFpbnQKKzcyOTM5IDY1NjQ2MzgyZTRlMDNkZTllZjE1YmU4YzhhMDU3NTg2MzNiN2E5MGQgcmVsZWFzZTI2LW1haW50Cis3Mjk0MCBiYTMwNWZlOGU4MzEyMDM0NzQ0OWZiMzU5NDQ0NTEwMmViZWJlOTI1IGxlZ2FjeS10cnVuaworNzI5NDEgMWNjYjZkNjI1NzE3MzA1M2MzMWY4NjFiODNmYmIyMzgyOWJjMjY3MCBweTNrCis3Mjk0MiA5MDEyZmY3ZDc1YTIxNjVkMWJlODFmMTYyMWZlOTZhMmMxZmI4NmZjIHB5M2sKKzcyOTQzIDI3MjFiZTdiZTM2NTdhNDI3ZTE4ZmFmOGI4MDUwZjc2NTE5YzcyNTMgcHkzaworNzI5NDUgMjllNWMwMTY1ZTEzNTE2YWEyOTczM2NhZjkwNjNhZDAwNWNmMjA0OCBweTNrCis3Mjk0NiA4ODMwNWQ3MzlhZTUyNmUzYzc5YTg1YjI4YmEyYTllZGNlYjI2MGFlIGxlZ2FjeS10cnVuaworNzI5NDcgZDcxZmE2YzQ2OGNjOGIxZDg3YzEyNmM0YjRjNmRhMTE0YzQwMDllZSBweTNrCis3Mjk0OCBmZGYzZWI3ODIyZTQ1NmJkNTIxNDVkOTVlZmZjMzU2Mzk3Njk4YTEwIHB5M2sKKzcyOTQ5IGE0ZGQ5MjE3ZWExMzFjZjFmMzc2NWI0MGU0NDNiYThkNjNjNWMyMTUgcHkzaworNzI5NTIgNDdkZDI5MGQyZDc0NWI0NDM2NDY2ZDVjOWRkNGE5MjNiNGZjNmU4YyBweTNrCis3Mjk1MyAwZTc2MTAyZjQ3OGI1Nzc1ZDQ0ZGY5YTY1MGU4YTFlOTZkN2M0YzM3IHB5M2sKKzcyOTU0IGYxM2JjZDkyMmY3NjAyOWNkNTYyN2U4N2VjNzMxYzkyZjk4MzE5ZmUgcmVsZWFzZTMwLW1haW50Cis3Mjk1NSAzZjc5ZWNhYjVlNTI5NzQyNDkwNDllNGFjYzcwMDRmOWZkNTUyZTNhIHJlbGVhc2UyNi1tYWludAorNzI5NTYgMjNhMzczYzhlYzFiMzg4YjcwMzc2MWZmNDkyY2Q0Y2VlNzYxNDgyYiBsZWdhY3ktdHJ1bmsKKzcyOTU3IGJhNjM3NmRmZjZjNGY4MTE1YjI5YmM0NzMzZGE5MTMyNmNiY2JhNWMgbGVnYWN5LXRydW5rCis3Mjk1OCA3YjRiOTIxZjMzMzU2NzczNjQxMzUxMzBkOWRlNTBkZWY0ZjE3YmRjIGxlZ2FjeS10cnVuaworNzI5NTkgNmFiOTM0NzAwMTFiYjk0ZmRkNWVmMGU3NDFhNTY3MDhlZTRjMGYwYiBweTNrCis3Mjk2MCA0ODYwZjc0OTNiOTE0NzlmNjQzZTVhNzg2NTM3YmY1Nzk3ODA4NmM4IHB5M2sKKzcyOTYxIDFjMDc4YmJjYTIzM2Q3NjEwNjQ4MmIzNzRmMGJlYzI0MDY2NjRjODIgcHkzaworNzI5NjIgMWQwOTZkMWI5OGZkMTNlMDI3ZWRiNWY5YmJiMGM2Nzc3YzIxZjc0MSBweTNrCis3Mjk2MyAyMmZkOTY3NTE4ZWVjMDMxZjNiYzdjNzdiNzRhNDI3OGVjN2VjOWY0IHB5M2sKKzcyOTY0IGI2MWU2YWQ1YWU3MGU5ZjUyYzQ2NGU3OTcwOGNlNDEyNDE5NjA2NTYgcHkzaworNzI5NjUgOGNiMzQ5ODczY2RhZTJiZDc4ZGJhM2M3OTM4MjIzOGNkNGI5NTI2YyBweTNrCis3Mjk2NiAxNTRjYTM3N2Y1M2M3YjUwZTVjNjc5MjFjNDQyNWM4OGE2ZTQzMzM5IGxlZ2FjeS10cnVuaworNzI5NjcgOWI4YjYwYmMwZjViNzMxODJmM2M2NjYwYmZhZjkyYWQzNzNlYmQ2NyByZWxlYXNlMjYtbWFpbnQKKzcyOTY4IGFmNGZkMjM2NTRjZWIzZjQxOWVjZTZmMDNhOWZiOWQ1NmRkMDRlNzYgcHkzaworNzI5NjkgNGM3N2Y5ZTFhMTlkY2U4MTk2ZmQ4MTAzYzJhYzBkNWI1ZWJmZTljYiBweTNrCis3Mjk3MCA4MzdhZGI3NmEwZTFhYzBiYzIxNDdkMjA3ZGE1MzdkZDE5ZDc1YzI3IHJlbGVhc2UzMC1tYWludAorNzI5NzEgMTM5MjFmNTI2ODQ4MzBhM2I4MTRhNjlmOTk4MTFiMDU5ZGM4Y2EwOSBsZWdhY3ktdHJ1bmsKKzcyOTcyIGU2ZTNhMGU5MWJlYWMzZDEyN2I1ZWYyMWYxNGYwMDRiNGJlNzUxMzIgbGVnYWN5LXRydW5rCis3Mjk3MyA4MjFmN2Q0MmJmNzQyMmEwZmRlNjgzYmU3YmVhYmJmNzg2N2IyYzYwIGxlZ2FjeS10cnVuaworNzI5NzQgZmM0ZTI0NDNmNTA5NjRlOTY0NjI2Yzc2OWNhZDMwOGMzZmUzNzZjNCByZWxlYXNlMjYtbWFpbnQKKzcyOTc1IDYwMzg3MDIyOGRhYzU0ZTFhOTZjNDlkZTNkNWJjMDc1ZTgyMDk5NDUgcHkzaworNzI5NzYgNjBkNDliM2ZkM2JmZDJiNzYzNDQzMDZhMTBiNzE5MDUyZmMyYTA1OCByZWxlYXNlMjYtbWFpbnQKKzcyOTc3IDEwMjlkOWFhZDQ5MWM4ZjgyNmM5NjY3NzgxZDEyNjJlYTNjZjVmMmQgcHkzaworNzI5NzggMWQzYjFiZTZhOGIyNmJmMjQ5OWQyY2U2NDQ3ZDI0NmMxZDQzN2VkZSByZWxlYXNlMzAtbWFpbnQKKzcyOTc5IDcwZmI4NDg4NzBhY2Q0MTRhY2M1N2MxOGY0YTg1ZWY0OWRjMzdkYmUgbGVnYWN5LXRydW5rCis3Mjk4MCBhNmI3M2Q4MGZiZTI3NWE5ZjYzYTdkN2ZjZTdjMDA3NzBmMzk2ZWM4IHB5M2sKKzcyOTgxIDExYTU0ZGFiZmIxY2Q1ZDMzNzhjNDNmYzc5ODRkYjVhMDA2ZGVhNTIgbGVnYWN5LXRydW5rCis3Mjk4MiA4YjI5OTY1MmIxZTg1ZjdkMTJlODRlYTFmMzBiODI5YmYwYTIxNTkzIHJlbGVhc2UyNi1tYWludAorNzI5ODMgOWRkZmE2ZTA1ZmIwZGExMTk5NDM0MjFhMTJiOWRjMjg5MGE4NTM5MCBweTNrCis3Mjk4NCBhYzBiODVmNjgyOTdiZDMwZjFlNTBlMjllN2FiZWJiZDM1NmFkN2Y2IHB5M2sKKzcyOTg1IDViMjEwMGU0NmQzYjQ4YTAyZjA0YzBkZGIxYWY3NDg1MmQzZTI0YTQgcmVsZWFzZTMwLW1haW50Cis3Mjk4NiA2MDU2Yzk2YzJkMzI3NTU4NzBhNjg1ZGU5YjcxMWYxNzRhYzI4MTQxIGxlZ2FjeS10cnVuaworNzI5ODcgZWQwYTlkNjg0MDIyNjlhODkyYzA0MTc3MTIzNmI0ZmY2YzQyNzY4OSByZWxlYXNlMjYtbWFpbnQKKzcyOTg4IDk5NjczNzkyNzBhMDk0MTNhMzViOGViMmZiOWZiMjRiZDFlODQ4NzMgcHkzaworNzI5ODkgY2U5OWU4ZTIyYjFlYWMwOTYwNzNmZDM3MTc1OTUyNzU3ZTZjMDUzOSByZWxlYXNlMzAtbWFpbnQKKzcyOTkwIGIwMDQwNDk0YjRhNjlhYWM5NmNhOTE2OWQyYzBmZTc1YzgyNGIxNjggcHkzaworNzI5OTEgZjU1ZDhkZWQyZDA1ZTVhY2VjYmY2MWFjNDNkMjM5NDk5YWFiODc4MyByZWxlYXNlMzAtbWFpbnQKKzcyOTkyIGI3MjZmZmQ0OTUyNDUwZDIyYmY5OGI5NGY1ZDVmMTIyYzU3NWU1NzggbGVnYWN5LXRydW5rCis3Mjk5MyBlOTBiMDY3ZDgzZjI1MTY0YWI2NGU5NTY1ZjkyZTQ3M2ExZGFlYWE0IHJlbGVhc2UyNi1tYWludAorNzI5OTUgM2ViNTIyZGMzMzM3ZGVhMjFmMjc0ZWQzZDlmYjNmODJjMzE4NGVhZiBweTNrCis3Mjk5NiA0MDM1MzgzMzk0ZWNmYWE2YTcyNTBjZmU4NmQ2YjJiNWQ0MTgyM2NiIHB5M2sKKzcyOTk3IGJjMjUxNjgxMGNjNDExM2MxMGQ4MmYyODM3Y2EzY2M1NmQ3MTVmMDAgcHkzaworNzI5OTggYTBhMjVkZWVjZGIyMzZlMzU1MWE3Yjk3NjZjY2NhY2VhYTIxOTA0MyBweTNrCis3Mjk5OSA2MThlNDZhNjlmMjc4ZjA0MjAzNjlkYWRkOGI3YzQ5NWFhMTE1MWM4IHB5M2sKKzczMDAwIDJkM2MyY2YxYjUxZTM0Y2M4NzcyZDcxYmQ3MTk2MjMwNzgzMjFjYzEgcHkzaworNzMwMDEgODhiZDg3NjBiMzQyZWM4N2I3YWJmMDg1MDQ4MzEzNzQyMzk2NWJhYyBsZWdhY3ktdHJ1bmsKKzczMDAyIDI2MGM4ZWQzZjVkZjk3YTY1MzVmNzQ1ZmQxNmU0OGQ2ZjZhOTIwYmYgbGVnYWN5LXRydW5rCis3MzAwNCAxZDhmMjRiZjQzOTk2MzM2MGZjYzEzNjg5MzJlZmI5YzE3OWYwNGU4IGxlZ2FjeS10cnVuaworNzMwMDUgZjNjODcxYmRlYTU3MWQ2ZDY5Y2Q4ZDQzNzVjMTg2NTZmYzc0NGZjMCBweTNrCis3MzAwNiBkNzVhYjE2NDEzZGE0MmMxNDdiZWE4YTI0NzVlYzQzNzVjYjRmNWFhIGxlZ2FjeS10cnVuaworNzMwMDggMWZhMTM3OTQyMDg1ZGZkMWYyMTNjYWY1ZGMwMDA5ODNlNzhiNGY2YyBsZWdhY3ktdHJ1bmsKKzczMDA5IDc3YjkxMjRmMWM4YzE0ZDhlNzZjMjhiOWFkYmExZGE3YWVkN2QyYzggcmVsZWFzZTI2LW1haW50Cis3MzAxMCBkMzljMTkwMzE2ZTc2OWQ5Y2ZkNjA1MDVmMDY0Y2QwODJiNTZiZmU2IHB5M2sKKzczMDExIDQ5YzBiMGNhNTExM2I5MzM4MzE4NjEzZjY4MTIyMTY2MDllYmU0Y2IgcmVsZWFzZTMwLW1haW50Cis3MzAxMiBjNWQzNDk1ODJlOWNhZTdiMDNmNTQxNjk2N2ViOGZlNzYxZDM1NDdjIHJlbGVhc2UyNi1tYWludAorNzMwMTMgYjY3YWJkNTFiMjcwNGMwYWNiYjBmNzI4NDJlOWQ5NTMyMmU2ZTAxYSByZWxlYXNlMzAtbWFpbnQKKzczMDE0IDExZGUzNWRhMjgxYzE3NTVlZTk3MzlhMWY4YWE5YzdmZDQ4ZWM3MGMgcHkzaworNzMwMTUgMjhkNjQxOTJhYjVhMmNmNzJhOWJkNmJkOTEzOTAwNzUxOGNkYzI0NyBweTNrCis3MzAxNiA5YzE3ZTM2NjkzMzZhY2E3MGVlNWI5Zjg5NWNkYzZhZTZlMjZhODgxIGxlZ2FjeS10cnVuaworNzMwMTcgNzZmMWJlOWQyODE4MmJmNDliMzFlMjg0NmVkYTJkMWU1MjE2MTUyZSByZWxlYXNlMjYtbWFpbnQKKzczMDE4IDEzNGQxMmMyZTc0NTAwZThmYTJiZGJiNGJmNTAwOGQ1NjBiZjViYzEgcHkzaworNzMwMTkgMjM1NmU5ODVlY2U4MzVmMWJkZTNmYzg3ZTQyZDA5ODJjMzZkNmVkYyByZWxlYXNlMzAtbWFpbnQKKzczMDIwIGVjNWQyMjhhODNlZmNhMjFmNTdhZDc1NWUxZjA0M2ZkYjA0ZDczZmEgcHkzaworNzMwMjEgYTVhODljNjBkMzJlNGVlZmY0NjY5MDY4ZTQ0M2FiYTUwNmRhMmNiZSBweTNrCis3MzAyMiA2NDc1MDA2NWVjZDRkMWMyOTNiZTEyMmEyZWUxNTA0NjExNDg1NGM1IGxlZ2FjeS10cnVuaworNzMwMjMgMjVhMzE1NWRhYzc2YzUxNjM5NzRjOWVhZjljNmI3NjFiY2NkNTY1YiByZWxlYXNlMjYtbWFpbnQKKzczMDI0IDlhNGNlMWU3MWFkODE2NTE2MjEwOWZiZDFiMjc2ODk5NTY4ODkzYjIgcHkzaworNzMwMjUgNGVkMmVlMGIyMjkwYTA2NDZhZDgxOWZkOGNiOGU4MTMzY2YyOGU1NiByZWxlYXNlMzAtbWFpbnQKKzczMDI2IGU0NzQ1ODM4ZjY1NWI1Zjk1MWIzNTRlYTEzYjQ3MDkwYjlmNGRiYTYgbGVnYWN5LXRydW5rCis3MzAyNyA3YTEzNDcxZjRlOWJkMWRjZTUyY2FmODU1NTYyZmQ3OGRiMDdhNmNkIGxlZ2FjeS10cnVuaworNzMwMjggMTQ2YTM5YjI1ODQ1ODVmN2I5MjRhYWVlOTBmZmYxZGE0Yjc5ODljOSBweTNrCis3MzAyOSBjOGZlMzAzY2VkYTQ1MTU4YzcxZmU3OWRjNGU5M2E3YWRlNjEyNTY1IGxlZ2FjeS10cnVuaworNzMwMzAgNmUyYThiZGFhNTQwMjA4Y2QzOTA2YmU4OGRkM2I3ODUzMjQ0MDM3YSByZWxlYXNlMzAtbWFpbnQKKzczMDMxIGIyZWNkMmJkZjE5NTJiOTE0MTg1ZDgzZjhjZGIzMDE3YWRkMTRhM2MgbGVnYWN5LXRydW5rCis3MzAzMiA2ZDRjNDdmZWM0NDlkYWJkNWZmMjMxMDdiZWY4ZTIzY2FjN2Q2MmRmIHB5M2sKKzczMDM1IDFhNTIxYzA2YTcwZGI1MTZhMjVkNjJiZmRjZWQyNzcxNjFlMTYzMDkgcHkzaworNzMwNDIgNmQ2YjRkMzc4MWYyNzU4NGM1MDUyMjZjMDhiYmFmYTJjMjJkNDVlNiBsZWdhY3ktdHJ1bmsKKzczMDQzIDY5Y2Q4MGY4ZTEzM2EyNDAyMjAzZmY2M2Q2MmFiZDViMWIzYTFmYTAgcHkzaworNzMwNDQgZjVkM2ZmMDNkZDViY2RkNTUwZjFhMmY1ZGE3MjIwNTIyZDI1MTY5MiBweTNrCis3MzA0NSA1YmI1ZTkzNDM1YjA0ZTExODExMDgwMGU4N2RmNjUwNTc3NjVmNThjIGxlZ2FjeS10cnVuaworNzMwNDYgNDMxY2E1Mzk5YTI0NDg2YzBmZjhjOGQ0NTY5ODQwM2Y0YjdkN2E3YiBsZWdhY3ktdHJ1bmsKKzczMDQ3IGM2MmI2NTIyNTFkODk5YzEzODdkNTU0Njg1ZTY3ZmQ3YWJhNmI4MWUgbGVnYWN5LXRydW5rCis3MzA0OCA4ZDJmMzljMjFlOWU1MmYyYzUwM2M0ZGZkMDg1ZGYxYTJiNjRjYjEwIGxlZ2FjeS10cnVuaworNzMwNDkgYjAxYWVmZjcyYjY1MmE3ZjE5OTg3MTYxOWJkNGMwM2IxNTY1YjM4MSBsZWdhY3ktdHJ1bmsKKzczMDUzIDU1M2M4MTUxYzljNmUwMjVhNjcyZDUzZmJjNDE0NjRmMGEzNmNiZWUgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMDU0IDQ5NWNmM2MyNWViMTQzYjAyMmY2ZjI5OTM4OTUyMDM5ZTk5OWI2NTAgcHkzaworNzMwNTUgMjM0NjJiMzgxNzFkNjllY2ZhMDljYjA1MWVhNjU1M2I1ZDI0NTRmZCB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwNTYgNDM1M2ZkMDg0M2NiMzFiMzU2YWRjNTBmOTNkMjIwZTJlNzI1NWVmMiBweTNrCis3MzA1NyAzZmZiYTZhZDMxOWMyZWFlZjUyZWE5NDIyMDQwZjU4MDY3ZmQxZjQ3IHB5M2sKKzczMDU4IGNhOWJlOGZjMDI1ZGMyNzczY2RjNDNjNWZlMjQ1OGJjMjY0M2NjOTUgcHkzaworNzMwNjAgZTQ3NWNjNzFmMTg4YTRhNTlmYjQxMGJiNWYyOTRhYTM5MDhlZDMzNCBsZWdhY3ktdHJ1bmsKKzczMDYxIDkxNjJjZGYzNGRmYmY0NTYyYmNhZWI1OWRiMzg4MTU0NjY3MWI0MWYgcHkzaworNzMwNjIgYjQwNDMwNzkyMmM2ZThjNTA4ZGQwNzQ2OTE5MGI4ZjVhMTUwMWQ1ZiBweTNrCis3MzA2MyA0OTQ4NWY5OGEzMDgzYmMxYzE4MjQ2ZDI2MmFlNTU3NDc0ZGJiMmQ0IHB5M2sKKzczMDY0IGEyNTNmZWE4NWFmMTVjYTk5ZTAzM2EwMDU0YTNkMTllNjlkOTI0OWEgbGVnYWN5LXRydW5rCis3MzA2NSBmYTJmOTE3OTA2ZTczYjdkMWRkNjc4NGRjYTZmZmQ5NWExYjgyZmY5IGxlZ2FjeS10cnVuaworNzMwNjYgNGU5NmQ3ZGFmNzlmNGM1YjQ0NjJlZjdiZjRkNGY2ZWU3Mjc4M2VhYiBweTNrCis3MzA2NyAxMTQzNTRiMWUwZTU3ZDhkYzY0Mjk3ZTcwMDA3NmI3NjIwNjY5MTgwIHJlbGVhc2UyNi1tYWludAorNzMwNjggNzU2NjIxODE5ZjVhNTFmNDE0NmFjN2M1ZjhlMDA0ZDhmZGQzYmFkOCBsZWdhY3ktdHJ1bmsKKzczMDY5IDVkZWM3MjQ3YjI0OTZlYjg1YzhhZTA5YmJhOTk5MmU5MDhmODI2MDkgbGVnYWN5LXRydW5rCis3MzA3MCBiZjBiZDZlYTFjNzJlNTUwZTgwOTRiYjk1MzBkMWEyZjYxZTA2YTg3IHB5M2sKKzczMDcxIDFiNDNlNmYyZDMyOGE5NzFmODA5NGRiMzJjZTk4OTViNGZiZWI3NDEgbGVnYWN5LXRydW5rCis3MzA3MiBkNzRiOGVkZDdhOGNmMDQwNjA0N2Y4ZmZmMGExNTI5MzQxNTM1Yjg5IGxlZ2FjeS10cnVuaworNzMwNzMgZWYwNzg1Y2ZhNmFmNTFiNjJjNDc2ZjJiOTdhYWI3MWY1M2EzYTExNiBsZWdhY3ktdHJ1bmsKKzczMDc0IGJiYjBiNGY4YjVlMTFhZjUxNjc2N2E4ZjkwMjUwZTc0MjEyOWIxM2YgbGVnYWN5LXRydW5rCis3MzA3NSA4MWJhZjc2ZDA3OTc3M2Q2NzQ3Y2U1MDgzYmJkZjcyZTc0NDA0YWZmIHB5M2sKKzczMDc2IDUxOWY4MGIxZjVlM2E2NDNkNDNlZWMxNTE3ZWZkMGIyNmMwNWEyZTcgbGVnYWN5LXRydW5rCis3MzA3NyAwNzA1MzBlOWYxOGYyOTg0MjI0ZjUzNzQyZDU0NDhkOGI0YmQxYTkwIGxlZ2FjeS10cnVuaworNzMwNzggYzNhMjY1NTZkZDE0YWQyYjU5NDgxN2FjNDliZDY5ZmZlMTlkMjQwMSByZWxlYXNlMjYtbWFpbnQKKzczMDc5IGYxNGI1MDVkMzlmNGFlOGE5YjU1MDkyM2UwMTc4MmYyZDk1NjcwYTcgcHkzaworNzMwODAgZjUxZWFhZWQ2YzcxYTYwZDYxM2ZmYmNjN2ExZjM1ZTEwYjdhOGM5OSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwODEgMmFmZjcwMGUwY2E5MThjMGQzYjRhYmU2NzZmYjE4OGY5Y2FkMTZlYiByZWxlYXNlMzAtbWFpbnQKKzczMDgyIGE2YTc0YjlhN2NkMzcyYjAzMjM4MTZhMzYxMjU3N2JiNDA3NjhkZWYgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMDgzIDVkYjA1NTZlZDEyMjM1YmJmZTFkZWEzNGZlNGZjZDE0NmJlNTE4OGMgbGVnYWN5LXRydW5rCis3MzA4NCA3Yjc3MmVkNTM2Yzc2OWNlOWNlMDIxMjY2YjU1YzYwNzkyNmRlYmU2IHB5M2sKKzczMDg1IDc1ZTEyYzVlNGVhZmJhMWEzNGIyNGYwN2U3ZTAzYjY0ZDY0MzFjNzMgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMDg2IDUyZDI1OGViMDE3NmZhZjQxZGY2NjczYmRlNTI2NTlmY2EyYWM1YmUgcHkzaworNzMwODcgYjRkZDQyODNmZjgyMGRkYTIzZGZkMTRjNzdlNjNlMDVkM2M2OTM4MiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwODggMWUyYzAzNzFjZTU3MzdkYTQ2ZGIwYjQ3YjFlYmZmOThiYWMzMTIxMSBweTNrCis3MzA4OSBmNTE3ZjJlNGZiM2JiNTZjYjY3NDk5N2Q5Y2Q0Y2E4OGUxZWFkNzMwIGxlZ2FjeS10cnVuaworNzMwOTAgNTBmMzEzMDhiNTBhZWQ2NTE0ZjY1MGRmMjRhZDQyMTcyOWFhOWQ2MyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwOTQgNDIxMTgxMGRjNzljZTdhZDdlMTk0ZTcwYTg5MDczNWJlZjNkMWQ4NSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwOTUgNTdhMmQyNzEzZjE5NTNhMGNhNTQyODkyN2UxYmM0N2NkMjY2YzY0YyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwOTcgNTI4YzA5M2FiOTg2ZDIwN2Y4NGVmNjkwYTc1N2M0OGE1ZjQ3MDM0YyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMwOTggNzU3YTdjMGY2NzllM2JhZjM5NWUwNjk1YTk4NTZhMmUyNzlhNTA4YiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMxMDEgNjAwMTY5YWU1NjgxZDNhOTU4YTk5MDZlYjYxYWFhN2NjZGZhYmUyZCBsZWdhY3ktdHJ1bmsKKzczMTAyIGZiNzllZTQ1Nzc1NDI4MDlhMDc4MThlNDIwNThmYmFlN2JmMmZjMzcgcHkzaworNzMxMDMgN2M0NDQwNTM4YWJiMjQyZjk1YjA0NDM2NDM4ZDkwZWU4MzI3ZDI1YyBweTNrCis3MzEwNCA4NTY3ZGYzYTQzYjYxMjMwZjBlODBmOGMwZjBlMDk3NGY3OTVlNWMwIHJlbGVhc2UyNi1tYWludAorNzMxMDUgYzA1MWJhNjE3ZjA0NjE5OTBhY2FlMjJkMDE2YjYzN2QyMDdmZjRmNCByZWxlYXNlMzAtbWFpbnQKKzczMTA2IDY4NDZmOTVmOGUwNzdhOWFkNDU4NzVlM2FmZjk0NzgxMmZjYmE5YzAgcHkzaworNzMxMDcgMThiM2Q1YjM3ZDgzZmJlNjI2YTE1ZmEzMjMyNTU4MzJjMjliNTUwZCBweTNrCis3MzEwOCBjNjc4NTRmMWNmNzkzMTVlNzI0ODg0MDFiMTIyNGE1ZGQ4MTc2YTc4IHB5M2sKKzczMTA5IDQ0Mjc4NTlkODE3YTcyYzMzMmM0ZTA4MDg3ODg2NGFiN2Y1ZDZmNDkgbGVnYWN5LXRydW5rCis3MzExMCA4YzEzMDY3MWM4NDI1MzI3ZmJlYmNhZjM2MGUwMjkxOTg3YjNlYjExIHB5M2sKKzczMTExIDkzOGNjMTZlN2Y4ZGViZDllNzkzNDlmMWNhNjU1ZTY2OTUyZmUwYzkgcHkzaworNzMxMTIgMzUyMmMyYjBkNTFkNDdkZTNjZjZkNjVkOWE1MWY2MGQ3MDk0ZmJjYSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMxMTMgYmJmOGYyNWViMzc3YjIwMTUyMTJiMjAzMjhjNWEyZDljNTk3MzNjNSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMxMTQgYzM3YWU1NjJlZjgyMmRkNTU2MGFmZjE0MzMxZDI4YjA5NWNiZDAxMyBsZWdhY3ktdHJ1bmsKKzczMTE1IDFkZmNjNTNlODM2YTBlNjAyOTA0MmIxY2QxYzE0YTNlOGU5NjU0ODYgcHkzaworNzMxMTYgZDBlOTYwNzliNmFjYTlhOWI1YmE1OWI0OGNmMGZhNzJmZWVlMDQzNyBweTNrCis3MzExNyBhOGQ5Y2M5MzI2NzU2MTdhNTQwNWM1ZDBhYWFhOWEzNDU1NjE4NTIyIHB5M2sKKzczMTE4IDUyMjk1ZWJjY2EzMTI0NGQwMWQ0NWY2MGYyN2U2NDc3NjdiY2UwZDIgcmVsZWFzZTI2LW1haW50Cis3MzExOSBhNTYzYmNmMWE2MmQyZjY5YzQ4ZDI5YjM5NDdmNDVlNTU1YmM1MzE2IHJlbGVhc2UyNi1tYWludAorNzMxMjAgZTI1ZmMzNzc2NzA0NzAyMjNkNjYwN2RjYWFiMjMzNDliYmQ3ZDFjMCByZWxlYXNlMzAtbWFpbnQKKzczMTIxIGQ1MDcxZDlmNzQwOGJkYjg4ZDU3YmM1ZWM3MmQ3NmIyMTA0ZjM2MjggbGVnYWN5LXRydW5rCis3MzEyMiA1ZjhkZWM4NDZmNDZkZTliODE0N2I5OTEzZjA5ZjdhZDJmYjNhNmVlIHJlbGVhc2UyNi1tYWludAorNzMxMjMgNTQyOTUyN2UzYTI4OGZkMjFhNWQ2MWVjNGVhNGU2YWY1NTc2Njk3YiBweTNrCis3MzEyNCA0OTkzZTExMGZkNzc4NTg0OGI4YTM2YWI0NTFmZDE3OTdkMDZhMjE3IHJlbGVhc2UzMC1tYWludAorNzMxMjUgY2VkMzgwYjQwMDA0MzYyYTdhOWFjNTM4MGJmNDkwMGNkMDNhYTZjMyBweTNrCis3MzEyNiBiZjRjZmU1MWI0YjUyMTc0NTI1MWY2ZGVlNzFiNzdkNjdlMDRlMDJkIHB5M2sKKzczMTI3IDYyNTQyYmI4ODczYTFiMzdmN2E4YjBmNDhjMDQ1NzExZDkyNjE1NmIgcHkzaworNzMxMjggMmMwMGJkYWFkN2E5ZmZmZTFhN2Y5NTczYmVhZGVkZDNlMTZjM2JlNSBweTNrCis3MzEyOSA4Yzg1MDQ3MTViOGEzODc5ZDU0YjAzZDQ0YmY3OTYyYjc3NDA0MThlIGxlZ2FjeS10cnVuaworNzMxMzAgZGI4OGE2N2UzOGVlYTFhMzFmYjNlMDg5ZWQ4ZGVkMGU1YzBmMzgyYyByZWxlYXNlMjYtbWFpbnQKKzczMTMxIDI5OTA0NDBhMjBmNDJhMTA3ZDA0Y2IzMjE5MTk0NmM0MTc5ZGM4NWYgcHkzaworNzMxMzIgN2ZhODMyOTI3YjkxYzg2NDE0NDYxZDg5NGM0OWZhYmJiMjgzOTg1ZSByZWxlYXNlMzAtbWFpbnQKKzczMTMzIDdkNDc3NTU2ODBkNzg0MzNiNzI3MTg3OTE2YjY5NDBjMDVhNjliOWQgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMTM0IGUxM2E0ZjYyYjZjYWNjZGFkYWJhNjk5ZmRmYjYzYjVmOTg0YWI1M2UgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMTM1IDEyODE0N2RjYmMxZDUxMTM3OTUzYjY0NTgzYmY3MzE2YzgxNmI4NTcgbGVnYWN5LXRydW5rCis3MzEzNiAzZDEyZmI5Y2VkOTI2Y2FlNzVkYTY0YWNlYmUzZWM5NTM1OTE1NGMwIHB5M2sKKzczMTM3IGY4YjVhMTUzMmJlYzU2MDQ0YzllZTE1OGRiMDg2MzFiZDdmYmQzNWUgcHkzaworNzMxMzggZjBmODRhZjE1OTU3YmM4M2M2ZTNlNWI4MTI3NTMxOTZiMDQyMmFlMiBsZWdhY3ktdHJ1bmsKKzczMTM5IGJhODIyMjgzOTkzOGRiMDY5NDJmMDQxOWIwZmJkNjc0Y2ZmMTQwOWMgcmVsZWFzZTI2LW1haW50Cis3MzE0MCA3MjM0YTgzYThiMTlmZDhmMTU1MGVkMDVhMDdjMWQyMDg0MTA5MjY4IHB5M2sKKzczMTQxIDA0NDljYmU5YWM5ZDZiNTk1NTAxYzNhZTdjMWI1ZTkzMWYyM2Q3NDkgcmVsZWFzZTMwLW1haW50Cis3MzE0MiAxZTcyYTU0MGMxYWE2Nzg3MzY1ZDBhZGI2M2NhOWYwZDkxNmFkNTRhIHB5M2sKKzczMTQzIDYyMWE1OWJiMzQwNDViYWJiMmRmMjkzMzAwODMyN2FlNWFmYTcwYjIgcHkzaworNzMxNDQgODg1YjBhOTJiNTA2MjYyZmM3ZDk4Yjk2M2MwZDgwNzAzMjdiZDVhMCByZWxlYXNlMzAtbWFpbnQKKzczMTQ1IGU4MGUyNWU2YTE4N2I0YzVkNWM0NWFlNGYwMzNiNzJlY2EzNGE0NWQgbGVnYWN5LXRydW5rCis3MzE0NiA5MDQ4OWYyNjdiMzAwZGE0ZDk1ZGY0YjVhNzFlZTk0YmY5MjI4MmVjIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzE0NyA0MjgzYmM4YzkzMDY1MWNhMzEyODAxODMxNGJlZmVmNTZiMzYyOTk3IGxlZ2FjeS10cnVuaworNzMxNDggYjJmOTYyMzg1OTY5YTIwOGMyYzFjY2NmMGI1Zjg0ZWQ3OTJmZmY3YyByZWxlYXNlMjYtbWFpbnQKKzczMTQ5IDVlNGQwNzA1NjVlNzI4YzkzMjRlNjM4ZTI5Yzc2NWM2N2EwZWUxYjggcHkzaworNzMxNTAgZjYzMmUwMmMyNjQyZThhMTdmZmIxYjViOTk4NjAwMGE1ZTA0OTdmOCByZWxlYXNlMzAtbWFpbnQKKzczMTUxIGI3YjczNTI5OTRjODg0MDUwZWI1NzE3NjFhZDNjNmRmZWEyNmJiMmIgbGVnYWN5LXRydW5rCis3MzE1MiBjZmU1NzdhYTE1NmFjYzRlZDA0OTZhZjExMzJiZDA4OTc0YjExYWJiIHJlbGVhc2UyNi1tYWludAorNzMxNTcgMmY3ZDlhYmQ2NTViYWI5ZDIyYjRhZmZmMWEwMzlhZWFlNDYwNDE4YiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMxNTkgMzJhNDlkMTA4MDFlZDFlY2JkNTBhMzUzMTdjOTY1M2Q3ZDM0MDY0NSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMxNjAgY2YxOWNjMDZiMDkzMDhkZDA2ZjZiMzAxMGE0Mjk1ZmVlOTlhZTZhOCBweTNrCis3MzE2MSAzM2E4YmE5MjVjOTIwOWY4NWMwMDBhNjBmOTQxNTRhODE4NWZhNmIzIHB5M2sKKzczMTYyIDUxZmVjYmI3ZmM4NzI2NWZlMGMyYzdkNzI1NDAzNTkzOWFkNjNkZjQgcHkzaworNzMxNjMgNGEyNzcxZjZiOWRkNzg1MDQ2M2ZkZDEyZTViODIzZWUyNjQ1ZTRjNSBsZWdhY3ktdHJ1bmsKKzczMTY0IDJmYmM3MDM5MzgyZDFjNThmMjgwNjZjZjhiZTZjZjMzYjI3NDE2MmIgcHkzaworNzMxNjUgMmQ1MDBkN2IyMGJlNjg2YzYyYmRjOGFmMWVjMDliMDRlNzJiM2M4NyBweTNrCis3MzE2NiA5OGQ4YjhiNzQ5ZjQ3NDY1ZTBkYzMyYjFkYTFlZTFiOTMxNjM5MjQwIGxlZ2FjeS10cnVuaworNzMxNjcgMTZlNDVkOGI3OTU3ZTdlZTAwMzM0NTRmMzBlMmQxYzU4MjM4YTczNyByZWxlYXNlMjYtbWFpbnQKKzczMTY4IGZjYjI1ODBjMWFiM2U4YjMyOWFhOTRkNmE0YzgxOTYxY2VmZjk2Y2UgcHkzaworNzMxNjkgZTFhNDY2MDJiOWQ3MmFiMDY2NTI1OGQyMjM2M2M1YjY1NWIwMWIyNyByZWxlYXNlMzAtbWFpbnQKKzczMTcwIDFhMDI5YjdjOTc3MDUyNzdkNzg5ZjdjZTM4Yjc4NjRlZjQzOTIyYzEgbGVnYWN5LXRydW5rCis3MzE3MSA2NWY1NjFhM2UyOTFiODBlN2FkMzE4MTg0YzMyNzBlZDA1OTJmNDAzIHJlbGVhc2UyNi1tYWludAorNzMxNzIgYWU1ODVjZDVjYTU0YjNmYjQ3YTg1NmJiMTYyM2QzMTlkMmVlMTU2YiBweTNrCis3MzE3MyA2MjU0NGM5NDZlZGEyYWYxZDQzODRhNTBmNDI3MDMxZDQ2MjhiZmQ0IHJlbGVhc2UzMC1tYWludAorNzMxNzQgYjhiMzJmZGNjMjhkNDFlMzgzNGVlYjNhMmQ0MDJiNGQ3M2M2NzFiOCBsZWdhY3ktdHJ1bmsKKzczMTc1IDljMmUwN2E4ZDIzMDJkM2Y2OWVlMDM2NDY2Y2E0ODkwN2U0OGY3YjYgcmVsZWFzZTI2LW1haW50Cis3MzE3NiA3YzBlNzllNzFjY2RjNWIzZGI3YTAxY2U2Yzk0NmRiMzIwZDA5NzI4IHB5M2sKKzczMTc3IDAzMGEzZmU0YjYwNDUyMWUwZWEwMTAxZmZkOTY1MzFjOTEyM2NmNzEgcHkzaworNzMxNzggYjAxY2NhYzMwNDczNTA5ZTBjMDJhZTQwYTEwYmE2Yzc0YmM5MjM2NSBweTNrCis3MzE4MiBlODZiY2NlYmMwNzU4NmU4NGY4Yzk2ODBjMzEyM2IwOWM0MmQ1MTZjIGxlZ2FjeS10cnVuaworNzMxODMgYmZhYWYyZjRiMmU1YmQ1YjA3MTk5MWM4MTI0M2YxZWY3ZDcxYjQ2NyBweTNrCis3MzE4NCBiYzc0YjJmNjExNTk1ODkwYzFjNGQwMjgyZTZiZDdjMDhhYmYzMzQwIGxlZ2FjeS10cnVuaworNzMxODUgYTI5ODQyZTVlMTM4YzM3NTFiN2I1Y2FjYWZkOTEwOTYyODFiNTNkMyBweTNrCis3MzE4NiA1YTMyZjNkMDYxNThjM2U0ZTAyMzhhNzZlNTE2Y2FkYjNmNTg5M2E2IGxlZ2FjeS10cnVuaworNzMxODcgMTRhNGI2ZmIwMGZlYmE4MTg5OThhOWEyOWMzYjdjMzFmNjIzMDEyMSBweTNrCis3MzE4OCBhYmQxM2FjZmY1ZGJlMmJhOTRmYzAzZGI5YTg5YWI2YWU0Mzk1NDQ1IHJlbGVhc2UzMC1tYWludAorNzMxOTAgNDQzOWIyMmNmNmVhZmRlNzkzYzEzY2Y5ODhkMWI4NjA5ZjhlYjYyOCBsZWdhY3ktdHJ1bmsKKzczMTkxIDI4Nzg4NzE5OGUyZmE3MjRmZjQ2YzhhMmI2NjU2MmMzODlhNTJkYjkgcHkzaworNzMxOTQgMGM5NGM1Y2E1NWQ1N2Y1MzE3MjVmYWZkMzMwZTFhMWRkZjY0ODA0MiBweTNrCis3MzE5NSBmNDhhMDUyMTQyODFjMDgzMzE5YjAwYzc5ZWZjNTI0NzMzN2ViODljIHB5M2sKKzczMTk2IGQwNDM3OGY5ZmRiNDU2YjcxMDQyYjZkNjlmNWJjODE0NDQzZTRiNDYgbGVnYWN5LXRydW5rCis3MzE5NyA3ZGYyOTI5YTNkMDZmYzQ4NTJhNTUyNDc3MGFlMTM3MTExYmZjZWQxIGxlZ2FjeS10cnVuaworNzMxOTggYjc4MmZkMDVhODA2NDI1MmU1ZTYwOGFiMDcxNzhhODA1N2EyMjI0NSByZWxlYXNlMjYtbWFpbnQKKzczMTk5IDBkOGVkOWU1NThmMjhlMzJiODU4ZGM0NmU4MTFlYTJlMWQzMmIyYTEgcHkzaworNzMyMDAgYWZmOTdlNTBhMjA2MGE3N2I0ZWViMDg5NjYzODEzMGY1MzMxOWVlZiByZWxlYXNlMzAtbWFpbnQKKzczMjAxIDk3YTBhODU4OTAxNGQ3ZWQyYTYyMDFmYjAwYTk1N2QzODk4ZDI1YjcgbGVnYWN5LXRydW5rCis3MzIwMiAwMGQ1NzcyYzg2ODY2MjUyNDZjMmEzOWZhNDYzZjBmN2Q5YTc0ODM0IHB5M2sKKzczMjAzIDVlY2RiODI5NDM0Zjk4NjNiOWFkYjNjMzk4NmUwZTBiMTRhNGNlZGUgcHkzaworNzMyMDQgMThkODIzZThiNjAyY2VkZTY3ZTI4NjJmNDNiMWZkOWRkOGQzYjFhMSBweTNrCis3MzIwNiBkNWJmMDhjODYxYTY0MjVlOGYwZGFiYzAyNjE0MjQyMjlmN2ZlMzhmIGxlZ2FjeS10cnVuaworNzMyMDggM2Y2MjExNDBlZmM0YTJlMjNlOWFiNTBhNWYwYTBhZmJkOTI4MjI3ZiBweTNrCis3MzIxMCA4ZmE0Y2NhOWEyMmNlNDkzMDYzZGZiMTc0MTA3MTQ2OWJjN2JjZmMwIHB5M2sKKzczMjExIDAzMWI5NjNmMmJjMjc2ZDVmZTAwNTI0ZGY5ZDQ0OGViODdmMjQzOGIgcHkzaworNzMyMTIgODQzMTc4Y2YwODk5ZDdjOWZlNmU4NGNmOTg4YTA4NjAyODk3NGU3MyBsZWdhY3ktdHJ1bmsKKzczMjEzIDBlMDU0YzY1NzA2MjQwMmQzNzhhYjQ1ZGQwZDk1NTRlZjIyNzZiNDcgbGVnYWN5LXRydW5rCis3MzIxNCBlOWIwZGI1NTNkMDFmYTgwZjM5NDRmODM2MzA1YTU1Njk2NWYwY2ExIHB5M2sKKzczMjE1IDNjNDE1NzM0OTBjYjg1Yzc3YTJlOWQ4OWE2OTFhZDhiYjMyNWI1NzkgbGVnYWN5LXRydW5rCis3MzIxNiA1MGJlYTUzMzlmMTgyMmM5ZGY5ZThhMWYzZjc3ZWUzNzkwNDlkYTViIHB5M2sKKzczMjE3IDc0MjQ2MTI5YmQyMjMzYWNhYWRlOTIzZDkxZDY1NWZjNGEwMDNlZWUgbGVnYWN5LXRydW5rCis3MzIxOCBkZGI1MGMzYjg2ZjJlM2QxYmVjM2Q1NTJiMjRjMjI3ZDRhZjRlNTZlIHB5M2sKKzczMjIzIDBiMDc1MzE2NzNhY2QyYjQ1YWQ1ZDFhNzA5YTRhMzE1ZTYwNmMxOTAgcHkzaworNzMyMjQgYTA3ZWE4MmE1YmIwY2M4MTkzOGVkODU4NDIxOGYyYmY4NTA2OTRkYSBsZWdhY3ktdHJ1bmsKKzczMjI3IDM5Y2IwMWIwZmM2NDhmMzFmYWUxMTUzYmNjYWI2NDJkMDk0NTlhYWUgcmVsZWFzZTI2LW1haW50Cis3MzIyOCA2ODZjMTViODY3NDg5OGNjZTk5MjUwZjc3NWMyMGZmOWYxMmJkZWExIHB5M2sKKzczMjI5IGVlZjVkMWNlNmY0YjcwZDliY2YyMzQzOGZmY2Q5Yzk2OWY3MTk4M2IgcmVsZWFzZTMwLW1haW50Cis3MzIzMCBkNDUyNjk5NTZlZmZlMjJkYWNkNWVjZGYxZDQ2YTA1ZTUxMGRjNzY1IHB5M2sKKzczMjMyIGVkNmVkM2M4MzlmNWJjOTNhYWFkM2VjMDQ3ZDBmNGJkMTRkNzQ5YzMgbGVnYWN5LXRydW5rCis3MzIzMyAzYTc4NGIyMTcyMjA5ZjNjOTI0NDA2YjFhY2Q5NDFlN2MzMTRlMjNmIHB5M2sKKzczMjM2IDA4MDVlYTIxMTEyMjBlNDBiZTQxZDk2MjY4OGEyYzI2MDliZjZmODIgcHkzaworNzMyMzcgZDk5MjI4MjljMjA0MzQ4MjZjOWIwMjMyOTVhNWQxMDA0NWU1MTMxNyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMyMzggMDNiZWFkNzI5NDdlZjliNWFmZGM1NGYxODNhZmIxNmRlMWM0NmVlNiBsZWdhY3ktdHJ1bmsKKzczMjQwIDgxMGMyNWYxOWNkOTRiMmI5MDMwMzQ1M2RkY2ZjZTRmYzU4Y2I2YzkgbGVnYWN5LXRydW5rCis3MzI0MSBlYmViNGQ2N2RiYWU5NjY5NzA3ZGIzMjhmYzg3ZTAyMzExYjhkYzQxIHB5M2sKKzczMjQyIGMyY2VjNTZkMGI4YTExNWFjMjNkNDU2ODgyMTY4YmYyMTZhMzk2NTggcmVsZWFzZTI2LW1haW50Cis3MzI0MyBjZWVmMGE3OGJmODc5ZjMwMTc0NGViNWJmMjQ0N2UzYzM1OTRiZDQxIGxlZ2FjeS10cnVuaworNzMyNDUgMDk0ZmQzMzVhNDcxMDIwNDViMGQ3N2RjYTAyOTlmNjcyYTIwY2I3NiByZWxlYXNlMjYtbWFpbnQKKzczMjQ2IGVmNzQzMTJkNzIxNTVmNzE4MGQyOGViMDEzMzYwMTg4MzJkYzQ5ZWMgcHkzaworNzMyNDcgZTRhN2M0OGRlNjAzYmRkMGUwMGMxMDI4MzA3YmU0ZDNjMjBhNWM4ZCBsZWdhY3ktdHJ1bmsKKzczMjQ4IGFlOWI1ZDRmMTIyOWFkNmMyZTQyZjA3NjU0ZWY1OGIwYThkOTZhNzEgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzczMjUwIDYwMjU1OWZhNTI5N2Q1MTkxYzI0NjI3ZjAxMWNiMzY3ODAxY2FkZjEgbGVnYWN5LXRydW5rCis3MzI1MSBkYTMzYmVkNWQ4YzQ4NjI5ZDIwZTcwMGNjNzcyMjFkNWUyY2YzNGYyIHB5M2sKKzczMjUyIDExMmUxYmI1N2U3YjJkZmE1N2YwMTY1NzMyNjQxM2VlMTMwOWZmYmQgbGVnYWN5LXRydW5rCis3MzI1MyA5YzA5MTU0NGUxZGYyNzhlZWE3NGRlZThmMTQ5ODZkNjQ1NTJlMjE0IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI1NCA1NzhiYWY3ZDMxMTQ3MzIwMWI5MjRjY2I2MDMyNjFkNzM3ODA5MmY2IHB5M2sKKzczMjU3IDgxYTViMWVjOTEwNWFhYjdiY2MzY2EwNjBiNmExMTA1YTgxMjFjMzEgbGVnYWN5LXRydW5rCis3MzI1OCAxMjg1M2RiM2VlYTM3Y2VkNTYyMDFiOGRmMGFiNmRlMjlhMTYxZTcyIGxlZ2FjeS10cnVuaworNzMyNTkgMWY4ZDk4NzIwYWNjYzk5OWQwMTlkN2EzZDcwMTYxYjQ5OWIwMmVmMiBweTNrCis3MzI2MCA4ODg4YTZmZTlkZDdmMjkwZDkzZjZlODc4YTkwZmI0ODJkNGUyODgwIGxlZ2FjeS10cnVuaworNzMyNjEgOTU0N2Y0YmJkNWE0NWY4NTk4MTBjOWU5MDEyNjNmYzliMzk1OGI5MiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMyNjIgMzJlMzQ0ODNlNmRiNzIzM2VlNGU0MTgzNzRjZTQ0NTg0ZGM0YmRjMiBweTNrCis3MzI2MyBjZTg5NTkyYTkzYTQzNmUyYTFhNWU4N2FlZGYxOTdmZjg4NGNlNzllIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI2NCAzMTdhMTc1ODQwNTgwMzdjOGJmNTYzYTA3Y2RjNmYyM2NiOGYxZjc2IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI2NSA3ODdmMjdlZDcyYzI4ZDNjN2I1MTU4ODRjMWYzYzRmNDU1MGQ5OGQ3IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI2NiAxOWQ4YTNhNGUxNDk2MDJlNWQ5ZmY2MjE3ZTE0YTIzMGFkYWVhZDE3IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI2NyA3ZWU1Nzk5YTdiNTE5NTYxMmUyZTYzZTQ3ZDUxNDA2ZjNmZWZiN2JkIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzI2OCAzZDgzNTdjY2Y1ODMxZWZkOWY2MzU5NGRhOWQ0MGY4ZjUzM2FhMmI1IHB5M2sKKzczMjY5IGZhZmI5OTFiZWE2YjFiMDc5N2U1ODNlMmFhYmQ1YjJiNjFkZmEwNjcgcHkzaworNzMyNzAgNzgzZDQwNDRkYzJkZjkyOWE1OGNkODQwNjFlMTY0MzE1MmM0OGNhYyBsZWdhY3ktdHJ1bmsKKzczMjcxIDBlYmU4ODlmMTA2ZmU5ZGZlMDcyMTU5NjQzNDRlNmU1Mjc1YTRiOTAgcHkzaworNzMyNzIgZGE2ODcxYjlkODg0YzRlODdhMjg3MDViNmJlNDdkZmFhNTVlNjA2OCBsZWdhY3ktdHJ1bmsKKzczMjczIDY2YTViYjNkOGE4ZDgyZDhmOTFkYzA0YTBjMWY2NzI2NGU5N2EzMTkgcHkzaworNzMyNzQgZDY3OWI2MDkwN2Y3Njk4YjBjMGE5YzEzYzM4OWI5ZGFhYzI1MGNhMSBweTNrCis3MzI3NSAzZTJiOGRlNGIxNmNjODJkYWE3MDljMjExZTQ0YjI3ZWViYTAzZGIzIGxlZ2FjeS10cnVuaworNzMyNzYgMDZmNWY0MjZiODQ5MTE4NmQ1ZTg0MmY4MWRmNjg3NTY1ZWEyOGRkZCB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMyNzcgODg5YjVmZDhkYTMwOWE1NWNkYWQyNjU2YWY0NzFiZmE2OGM1ZmQ4MSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzMyNzggODUxNjM2YjYyYWQ5NWFiN2NjZWRiZjQ1NjQxOGVjZjc0OWNhNGFiNCBsZWdhY3ktdHJ1bmsKKzczMjc5IGQ5NDVlNmRlNTIyN2I2YmJiMmJmN2FlNDcwMTAxMDdiOGJlNjRlYjYgbGVnYWN5LXRydW5rCis3MzI4MCBkNzlmZGUxMDQxYmRjMGFmNzRmOTA4YTc0ODY4MWZhOTEwNjkyZTgyIGxlZ2FjeS10cnVuaworNzMyODEgMDU0ZWE0N2Q2Y2M3MzgzNmQzN2VlOTc0NTdkNWFmMDcxYjg5MzU2OSBsZWdhY3ktdHJ1bmsKKzczMjgyIDBhYmY1NjJiMWU2Y2Y2ZTg4ZWZlZThkYTgxNzFjYmNhMzQxYzE2YTggbGVnYWN5LXRydW5rCis3MzI4MyBmN2M5ZTczNDIwODQwMDgyZDI3NmYzN2VmNjA0MGE4ZDAzMDVhOWIxIHB5M2sKKzczMjg0IDZiZmI1OTUyMTEzNjQ3ZDM2NTNkOGQzMmYyMDFhZmMwYzUwMTllODcgcHkzaworNzMyODUgZjAwMTlmZjZiM2U1YjMzNGJlZDBkMDE3OGI5NzliMjZjODUwZTgxMiBweTNrCis3MzI4NiAxZWYxNDIxYTYxMjI1NTMwYjQyN2VkNTE2N2ExYWFjNWE2M2Q3Yzc4IGxlZ2FjeS10cnVuaworNzMyODcgZWY2NWNjNDAyYzkyMzE2MmFiNTQyZjdhMzA4MTI0MjkyNWIwY2VlNiBweTNrCis3MzI4OCBjZjhmZmFiNDkwMDMzNWE3N2VhZDUyOWQ2YWY2NjFlZGU0NWYxNWU0IHB5M2sKKzczMjg5IDk4NTUyMTMxZjY0MWJjM2IzMTQ0ZWZjODc5YTQ3OTI4ZGE4NGNlNjcgcHkzaworNzMyOTAgNTVkZDllZDIzZWVhZWNmMjgwYWFiNWY5NWQwYWMzMmJmMDZmNmY4MCBweTNrCis3MzI5MSA4ZjkyODc5MjU0N2NhZjRlNjAzYmI4ZmE5MTgzNzI1NmY1ZjgyMDdmIHB5M2sKKzczMjkzIDI3ZTA4OWNhYjcyOWExZGZmNDkxNzRlMmE4OTdiOGUxN2UyOTAwMmYgcHkzaworNzMyOTQgYjUwNGQ2ZDM0ZmNkNzA4MGYxNjdkOTM4NGU0MjBhMmNlOTdkNTNlYSBsZWdhY3ktdHJ1bmsKKzczMjk1IDdhZDJmMjJmMTNlNmEwMGM0OGRiNzBmNWM3YzU5NTk3MjQ2MDA5MjYgcHkzaworNzMyOTYgNjk4NTU3Y2M1ZGM1MDdmOGIyMjU4MjczYmY1NjNmN2EzZmZjZjkyYSBsZWdhY3ktdHJ1bmsKKzczMjk3IGMwMTdkMTkxNjczMTQxNzM2YjVjNzA3YjRkY2JhZDYxN2U3ZDNjNmMgcHkzaworNzMyOTkgY2E1MTk5NjA5OWZkZDI0NzQ0OGY2M2I3NWEzYmM5NjRkZDgzMzM2MyBsZWdhY3ktdHJ1bmsKKzczMzAwIDI3OTVkNmZiMjFlMjYyZDljNzAyZjQzMjI0OWY5MmJhMDg1NmU2YWYgcHkzaworNzMzMDEgNTQxODlkNWE2Njc0Nzk3NDQ1ZDdjYzU5MTcyMGIxYzg5NmQyZTkyNiBweTNrCis3MzMwMiAyNTVkYjcwYmIzMTZhYzBlMmZlYWQzOTEzY2MxNDAwYWNmMWUxMTZlIHB5M2sKKzczMzAzIGNlYjI2MmQ0NGQ3NDY0MTQ2ZDYzYjg0YmU0NDRhYzJlMjY1OTM1MWEgbGVnYWN5LXRydW5rCis3MzMwNCA3MWNiNjAyOWU4OTI3OTUwZTc1ZDRmYWMwNzBhYTg4MGY1OTdmNjRhIHB5M2sKKzczMzA1IDFjN2ViNWI2MjI5ZGRmNTI5MTJkNzFjYzQ5MmE3NjVhMjZmNDJhYTEgbGVnYWN5LXRydW5rCis3MzMwNiAzNWM1YzFlMDdhNDRjZjMwNzVkMzYyMjY5ZmI5MDY1ODA1NzUyOWEwIHJlbGVhc2UyNi1tYWludAorNzMzMDcgZmQwYWQxMTVlMjM4MjlhYjk2YzhjMmU2ZjE5YTU2YzU5OTc2MzdiYSBweTNrCis3MzMwOCA4NmIzMmUxZmQ5OWYwYzdmODFlOTU1MzYyMzk5ZjkxNjMyNzQwMGQ1IGxlZ2FjeS10cnVuaworNzMzMTIgMWI4NjAyYzM4ZmQwYzdhYWE3ODY5NGI3OGJkMWJiOWFkOTUyM2Q4YSBsZWdhY3ktdHJ1bmsKKzczMzEzIGM0YTgxY2UzYzg5MzI3MDIwYzc2YjNhZDUxN2U4ZmZhZmVjYTlhZjUgbGVnYWN5LXRydW5rCis3MzMxNCBlYTMwYWFjYjMxODE2MzdlOGY5ZTAwOWNjYWQyNTQ0ZTBhNGY0OWQxIGxlZ2FjeS10cnVuaworNzMzMTUgODc1MzRiZmQxYmU4YjdiZGQyMGM5MGM4MjFmYWNhYTZiODkwN2VhZiByZWxlYXNlMjYtbWFpbnQKKzczMzE2IGQyZDU0ZGM4ZTQwMGZhYTYxNDBiYmQwZTE2NTYzZjVhN2E0ZDNiZjUgcHkzaworNzMzMTcgNTE3N2I2NzgwY2I3NDJmMDIzMWQ1MGFiYWY4Y2MxYmY5MDFlYTYwYiBsZWdhY3ktdHJ1bmsKKzczMzE4IGI5NmM5ZDhkNWY5ODVkYjZlMzhiYjY5ZWFjYjU2YWY2ZmZiOGI3N2MgbGVnYWN5LXRydW5rCis3MzMxOSA3NjBhODg2NmFlZmZhMjQxMGE3MzRmMjMwNTk2NmQyMWNkODdlZGUxIHB5M2sKKzczMzIwIGFiM2EyMTMzNmE4NGQ2Yjc4OGQ1NGQ1MWRlNGIwMWJiNzg2OTRiMWUgcHkzaworNzMzMjEgNDQ2MDMwZjMxMGE5NTE1YzdhMTZkODlmNjIyYzJkOGIzZjc2YTE1MyBsZWdhY3ktdHJ1bmsKKzczMzIyIDkxZDRjNTE0ZTc4YzAyOTkxZTVjZmViNmRlOGI1Mzk0MTZhZTI2NDYgcHkzaworNzMzMjMgZjU4Mjg3NDJiNDZmZWQyNDc4ZDFiYzRjODRiMDQxM2VhNzYzNjRjMCByZWxlYXNlMzAtbWFpbnQKKzczMzI0IGQ0OWQ0OGYzMzVjOTAwOWJhYmQwY2M2ZDc3OWMxZWU4ZTExNDhkMDMgbGVnYWN5LXRydW5rCis3MzMyNSA5MTQ1ZjU4Zjc0OTk5YTczMzBiMWIwNTljN2NiMzQxMDY2ODYxZGU2IGxlZ2FjeS10cnVuaworNzMzMjYgZmE2N2JmNjc0YWYzNjNlNDQ2NDU1ZjhkYTRkYjQyYTY1ZWM1YmNjMiBsZWdhY3ktdHJ1bmsKKzczMzI3IGVjODQ1YzRlM2Q3MzZiNmE5MGRjNjVjZGZkMjc3N2E5YzRmM2RkMWUgcHkzaworNzMzMjggYjhkMTYwYWQxYzkyNTYzNjU0ODBmNDM5NmE1MGM1ODFkNmVlMWViNyBsZWdhY3ktdHJ1bmsKKzczMzI5IDY2Mjk3YTA3NGQ4YmU5YzA0NTE3NzkyYjlkZWYxZGMwMTZmZmQ0OGUgcmVsZWFzZTMwLW1haW50Cis3MzMzMCAwNDgwNzAwNTUzYWIyM2ZjZWU4NWY2Mzc5ZjUwNWIwZjBjOWQ3MTJhIHB5M2sKKzczMzMxIDc0NGU5ODRmMTg0MWFhMDVmNTA5NGNmZjAyNjE3ODI2YWFlYTJmYjkgbGVnYWN5LXRydW5rCis3MzMzMiA0ZmQzYTRhZWVlNDczZTcxMDczODI3YjRiYjRlNGE4ZTM0YjAwNGM5IHB5M2sKKzczMzMzIDEzYTk4NzRkOGY0NzZhNDJkYjNmNTVmMDBiNzNmMjdiNmU3ZDlkYjggcHkzaworNzMzMzQgYjYwOTVkYzhmMzVjMDcwYzQ3ZTgyMjE4YjFkM2FmNzNkMzBjMjU2NSBsZWdhY3ktdHJ1bmsKKzczMzM1IDRhY2Q5MzZjZjZiNmY5NzI3MjYwYmE1YjQ1MmIxNzM3ZGY3MDU3YWEgbGVnYWN5LXRydW5rCis3MzMzNiBlZGYzZGRhYTM0NmJmZDEyYjA1NjZmOGJmYjg0N2UwNzkyMjgyYmU5IGxlZ2FjeS10cnVuaworNzMzMzcgMDNkMzhhMmFiYzQ2YTk4YmIyZWMzNDZiOTVmZGI5OTY1NzY4NWRlMSByZWxlYXNlMjYtbWFpbnQKKzczMzM4IDY1N2E4YWUwYmJjOTQ2Nzg4NGU0OTA2NWFiNDcxMjMyMzkyYzk4NDMgcHkzaworNzMzMzkgZjQxYjI4NWYyYjU5YWNmZThjNmVhNjEwM2NkNTAyNjcyNGJmYzE1OSByZWxlYXNlMzAtbWFpbnQKKzczMzQwIDI3MTlhODhjMjI5NGY0MDRkMWRjMmIyMDZmNGFhMjBiMWE3MTgyMGEgbGVnYWN5LXRydW5rCis3MzM0MSA2NTc5M2FjYzAwOTUwMDJmYTBmNjIyYWMxZDkyMmI1Y2NhZmQ2MWRkIGxlZ2FjeS10cnVuaworNzMzNDIgMGFkZjBmYTc5OTNiY2VhNDBiMWM0ZGY1ZjU2NjAwOTgyZmZkMDBhZiByZWxlYXNlMjYtbWFpbnQKKzczMzQzIDhiM2FlM2EzODI1MDc2MTQ4N2U5ZDZiOTFlOTE2YmFlODRlMDQwMGUgcHkzaworNzMzNDQgZjYzMTQ3NWEyNjQyYjNiMzhiNDc1ZGRjNWIzMTU1YmUxMzZmYzgzYiByZWxlYXNlMzAtbWFpbnQKKzczMzQ1IGI0NjM1ZGEzMTA5OTkyMjg4OTM3NDY0MGE2ZDUxYWYzZjFjOGI3YTEgbGVnYWN5LXRydW5rCis3MzM0NiA4MGVmM2I3YTRlMGRmNDVhMWRlMjBjNDg2NWFmNWYyNWQ2Y2JhYWFhIHJlbGVhc2UyNi1tYWludAorNzMzNDcgNDc1NWY4OThiOWZlMGQ0OWMxZDY1NjVjZDZmNTQwNmZiMTFhZjliNSBweTNrCis3MzM0OCAwZGU2NmZjZWYwZmE4OTcyZTk0M2YxZDcwZWQxNGUzOGYxZDI5MTlmIGxlZ2FjeS10cnVuaworNzMzNDkgZWM1OTE3Zjc3YWMwZTY4OGZmMjYzOTk2OWZmOGEyMjI0NTgwZjE2YyByZWxlYXNlMjYtbWFpbnQKKzczMzUwIGEyZjIzNzZlMWQyMDFhMjg4ZDY1MTk3NjRjOTI2ZDY1MDRiMDhhMmYgbGVnYWN5LXRydW5rCis3MzM1MSA2MDAzNmU1MGNkMTg2NzU1NDdkOTVhODMwMmU3NzJkODM1ZmE1NjMwIHB5M2sKKzczMzUyIDAwMzFiYTIxMzkwYTFiM2FlZjhjOTk5NDJiOGRiNGJmOTkwM2I1MzEgcmVsZWFzZTMwLW1haW50Cis3MzM1MyAxMTI4ODIzOTc5ZGRlOTQzMjViYzMyYTI1Y2I2MWI3NzhhM2JhODYwIGxlZ2FjeS10cnVuaworNzMzNTQgMGQ5YmQ5MWViODVjYjVjNGU0NGExOGYyOWMyZjJiNjVmMzhmN2JhZCBsZWdhY3ktdHJ1bmsKKzczMzU1IDIwOWE1MzllYmZmODA2YzI5YzYzMjc5ZTA2YmNhYzA4YWZmMDE3YzkgcmVsZWFzZTI2LW1haW50Cis3MzM1NiAzMjQ0ZmM0NzczZjU3NzI1ZWYzZGFlZjBkZGJkNzkwOTIwYjY0NzY1IHB5M2sKKzczMzU3IGJiNjNmZDk3OWZjZDBhODE0NDdhNjcwZWYxZWQ1MjA5MTllODAyYjAgcmVsZWFzZTI2LW1haW50Cis3MzM1OCA1YTM5ODVlNWRhZTNiNTczMDM2ZTllYTVlYTNlMzc1MmIyZDkxMTIzIHJlbGVhc2UzMC1tYWludAorNzMzNTkgMTQwMTgyYWNjZDFmNTgxN2VhMTk2ZGU5NDI3MDBlYjIwZDFlYjkyNyBweTNrCis3MzM2MCA0MTc5YTNlNjYxMjMxZjkzY2M1NTAyNzZlNTFkOWU5MDg1NDRhMGQ4IHB5M2sKKzczMzYxIDk2YTBjM2Y2ZWY4YmVhMjcyODk1NWM5ZTVmMGE3YjUzNjc4OGYwYmMgbGVnYWN5LXRydW5rCis3MzM2MiAwMjc0NDQ4MTBlM2YzOWNiMzU4ZTYxMTQ0ODE0YzUwOTVmNTQwMzEyIGxlZ2FjeS10cnVuaworNzMzNjMgYTFlMDY4MWFjYjM2ZjFiN2E3ODczYTQzNDA4ZTYyOWM4N2M3ZmM5NiBsZWdhY3ktdHJ1bmsKKzczMzY0IDQxZTZjZjY4NWVkMTZiMjlkZTc4OWE4NjFiZGVjYzg4NTgzNzFjOTUgcHkzaworNzMzNjYgMjAxNzBiZDBhZjI1NGRlZDk3YTFmZDczM2VhY2UxZTA1MmI1ZDhmMiByZWxlYXNlMzAtbWFpbnQKKzczMzY3IDcyODg5YTBiOGYzMjJhNzM4ZjE2ZGVmODg1NmM1ZmRjNjVjYjdkZjUgbGVnYWN5LXRydW5rCis3MzM2OCA5ZWU5ZTdhYThhYmMyNDQyNTg1ZDlkN2E5ZmEyOThiZDIwNzZlMTc2IHJlbGVhc2UyNi1tYWludAorNzMzNjkgZTIwNDFjNWM2MDA2M2Y5M2RlZDBjMTc3YjMwMTk0NjliYTczMTQ1YyBweTNrCis3MzM3MCA3NzAwNDA4ZjY1ZmM0MWZmZjYzNTYxNjE4MGQ3NTQyYjE3NGE4OTc5IGxlZ2FjeS10cnVuaworNzMzNzEgZDY2Y2FmZDZiYzIxYjA5OGQ4ZjcyMGRlZmY0NzE1YmQ2NTQzODU1ZiByZWxlYXNlMzAtbWFpbnQKKzczMzcyIDVlYTg1MDdkOWJlMTJhMGY2NTY3NGFmNmJiMGMxODgyMjA5NGQ2ZWQgbGVnYWN5LXRydW5rCis3MzM3MyA2MGEwYWYzMmE2NjNlMmFkMjY1ODc2NjBkYjQyOGEyNTc3OTUyNzE5IHJlbGVhc2UyNi1tYWludAorNzMzNzQgMTJiZjg3Y2QyNzQzMGUwYWRmNzM2OGZmYjk2NTY3Mjk1ZGI2NGVkNSBweTNrCis3MzM3NSA0ZjhhNDRiNTFkMGMxZWFkNGRjNTNmZTg1MGE4YjkyNTEwOWQ3OGVmIHB5M2sKKzczMzc2IDUzMDZiODRkNGZjZWVjNjlmYTc2ODE4MDNlNTMwMGRiZGU4OGY3NTAgbGVnYWN5LXRydW5rCis3MzM3NyA2MzcwZDcxZTNjYTMyNzE4NjJhNTkyNjMwODdmY2RjZWFiY2M3YmU1IHB5M2sKKzczMzc4IDU1ZDIyYjAyNDQ2NGRiMjVhNWNjNTBkNjRkMTE1ZmQyNjhjNzVjMTYgcHkzaworNzMzODAgMGUxYjNjMjRkM2UyN2E2NmYyZThkNzhlZTc1NDUxNWMzNWYxMzQ1YyBweTNrCis3MzM4MSA5ZjNhMjU3NDNmMDNmYjUwYTlmMTBiNGRmNmYyZTE3MmZlYWUyMzI2IHJlbGVhc2UzMC1tYWludAorNzMzODIgYmExMDI1NDBlYTM3Mzg4YWMwOTU1ZTlkOGE1MmQ4ZmVlMDhmZmE3ZiBsZWdhY3ktdHJ1bmsKKzczMzgzIDdjZjg5ZWQ5MGY5ZDA2NGFlNGExZDJjODk4NGQyMDk4MGQ0ZjgzYTkgcmVsZWFzZTI2LW1haW50Cis3MzM4NCBkYWU5YmU2Mzc5YjNlNTg0MTg3ZGE4NmRlZTI2NzkwM2JhNWM0ZTEzIHB5M2sKKzczMzg1IGZjYmNkOTMxMzM4Yjg5MzllOTI1ZDYxZjJkZWU1OWY4YmQwYTFkNDkgcHkzaworNzMzODcgYzk0OTRjODg3ODhmNWI4NTJiZDJlZjlmNzE4ZWNhYzZhYWMyODJmNSBweTNrCis3MzM4OSBmNTc2ODA3NDhlY2JkNjk1NWM3Njk1MTBkN2Q3NDhhZTdiODQzZDZiIHB5M2sKKzczMzkwIDY1MjU1MWFlNDc2NzAyZjM2YWYyNWQ2OWYzZGY2OGFmMTYyNjA0YTYgbGVnYWN5LXRydW5rCis3MzM5MSAwN2UyZWUyZmQzNmQzMmZiYzRmNWRiZWY0MGMzNzNjZDVlYzI5NDNjIHB5M2sKKzczMzkyIDY0OTJiNmVjZTU5ODdhYmU0YzFmNDA2NmZiYTc3NGQ2YTMwMmJmODEgcHkzaworNzMzOTMgZjM0NzU0YTc0NWFlMmEyYTg0NTc4OTMwNzU3MzZlMGUxNzk2YjRlNSBsZWdhY3ktdHJ1bmsKKzczMzk0IDc2MGE3MTBlYjZjMTU2NTRhOTlhNTI4MmNhOThhYjlhNzNiYzdiYTkgbGVnYWN5LXRydW5rCis3MzM5NSAwMTdiNGI2NDRmYWYyNDUzMTNhNGE1Nzc4Yzg1NGUxYTdmMmI4OWE2IGxlZ2FjeS10cnVuaworNzMzOTYgY2RmMjUyYzg3NDMzNmIwNWMxYWE0NTlmNDg3OTViMjQ2ZThkNDVlMyBsZWdhY3ktdHJ1bmsKKzczMzk3IDI0YzhkMWFhYmFkZTMxOTkzNWJkM2I3ZjA1ZDY0NWNiODkwZmU4MDEgbGVnYWN5LXRydW5rCis3MzM5OCA5MjFlNTY5ZDEyMTU3N2Y1YjAzNzQ2N2M5MjQ0NGY0ODVmZjk2Y2E0IGxlZ2FjeS10cnVuaworNzMzOTkgZDgzMzhhOWExZTNhODgxMDBkZTQzMzM2ZjhmYzZkNDU5M2EyNjFkMiByZWxlYXNlMjYtbWFpbnQKKzczNDAwIGViNjFjY2E1ZjU0ZGUzYWFhZGM0ODI2NWZmMmQ0OTk4OGM2NmI2MTUgbGVnYWN5LXRydW5rCis3MzQwMSBiZWU0NmZmMGU1NzgzNWFmMzQ4ZjEzMWY2MjY5ZjZiYjIzMDFkOWI1IGxlZ2FjeS10cnVuaworNzM0MDIgNDUzZmU0ODg0MmQwYjEwODQ1YWNiMzVmZTU5MDNlZDc1Yzk1OGUxNCBsZWdhY3ktdHJ1bmsKKzczNDAzIDc1YzRkM2JjNmNjODg0MDM3N2Y5OGQxMzBjNjFmMGQ0OGY4NTFhYWQgcmVsZWFzZTMwLW1haW50Cis3MzQwNCAwYzM1N2UzZmMzZDAxN2M2NmE5NDAxN2NkYTc1ZGUzNjg2Y2M0MzljIGxlZ2FjeS10cnVuaworNzM0MDUgNzg4ZTEzOTdjZTc3NzQ1OGZiMGRjOGYzYTBlOTZiNThiZTRhOGNmMCBsZWdhY3ktdHJ1bmsKKzczNDA2IGI0MzM5OGVhNTQ5ZGU0NDBlNjI4NTNjNThlMGI4ODNlNjNlZDkzYmQgcmVsZWFzZTI2LW1haW50Cis3MzQwNyA0N2UzMzY1ZTIxNzdlODhhMGE5OWRlMTJhMzJmNDQ1OTVhYmM1YzNjIHJlbGVhc2UzMC1tYWludAorNzM0MDggMDMyYzJlNWUwNjE0ZjM3MGU4MGY5NmE1MzA0NDY5YjQ2NWQxNDkyZSBweTNrCis3MzQwOSAwNGNjZWMwNDQxYjJhNjM5NGFiOTRkNmE2NDA1MjRkMDE0MWVjOTZiIGxlZ2FjeS10cnVuaworNzM0MTAgMDNhODQ4ZDFjYjY4Mjc2YTg4YTA2ZmI3NjczYmMxYWRkNGE1M2IwOSBweTNrCis3MzQxMSAyNWVkYzVmNzJhNzJlYTNjOTNkNjYzY2VmNzVmYjk4NTA0NGVmZTljIHB5M2sKKzczNDEyIDBiODdlNDM4ZTFiNTNlM2Y4MTJjYWQ5NjNhN2ZkYjY1ZDE5OGJhMmYgcHkzaworNzM0MTMgMTllNWRmY2UwZmJiMDI5NWJkOTA1ZGM1NzQ0YmNhYzUwZjZlZWQ4NCBweTNrCis3MzQxNSAyNmY4YWU2ZjAzN2Q2YjVlMjNjMjBlNDVlYjc2NmE5MWFkZDFmZTg2IGxlZ2FjeS10cnVuaworNzM0MTYgYTc2NGRiNjQwMjg0MmJjNzYxODRhMWZlY2EzMjc4MjY4YWYwNTJkOSBweTNrCis3MzQxNyA5MTI0MjMxMzU0ODM4MTYwNmVjYmQ3N2M2ZWI4ZDU0MTZmNTgwY2Y0IGxlZ2FjeS10cnVuaworNzM0MTggMjIxMjc0MGY0NTQ0NjliZTgxMTg3NWI5NTI3MTVlZGEyZjI4NDM4MSBsZWdhY3ktdHJ1bmsKKzczNDE5IGNiNjY0NzNjYmJmODhkOWYwMTg1NzFhYmFlYjE3YmE5ZTY0ODBlYTAgbGVnYWN5LXRydW5rCis3MzQyMCAzZWI4NTEwODA4YzlkMGU0MzMwYjQ0ZTQ3YWE5YjFiNTM0Zjc4ZWEwIGxlZ2FjeS10cnVuaworNzM0MjEgNDBjOGMzNTQ5MmYxNGEyODk3NjU0ZmVhZDc0MTRkM2NjMTczODkzNSBsZWdhY3ktdHJ1bmsKKzczNDIyIDI0N2Y4ZDI2OGQ1OGM0MWEyNDQ2MmIzZGQ3NzNhNjY0MjQ4Y2I1YzUgbGVnYWN5LXRydW5rCis3MzQyMyBmMTE4YWFiNjUwZGQzZTljMjRmYWZjYzMyMzIzMjAwZTdlMTViMDY1IGxlZ2FjeS10cnVuaworNzM0MjQgMGJlMzc3ZTYwODAxYjZhZmViMzI5ZjJmNDcwMDliZWYwYTYzZDBjYiBweTNrCis3MzQyNSAwMTUxMDI5ZGUxZDkxNzQwYzRlMTVmZTcxNzQ3ZGEyYzBmZmQzMDNmIGxlZ2FjeS10cnVuaworNzM0MjYgM2M4ZjRmN2U0YTYyZWIxZDBlMGEzYTkxODE2MTE4MWViY2MwOTA5OCByZWxlYXNlMjYtbWFpbnQKKzczNDI3IGU0MTE5YzkwYmYyOTUzOGQwMDJiYWY5ZGU5ZmRhZDU3M2Q4MWQ0N2IgcHkzaworNzM0MjggOTAzZWZiZjUxMWI0ZmVlMTc5NDlhYjI0ZmRmNGViOTgxZTk4ZmZkMiByZWxlYXNlMzAtbWFpbnQKKzczNDI5IDkwMDBhMDgxMTU5OTQxYmZlN2FmZWYyNWYyYTRlZGE1ZmUxMmFjMDEgcHkzaworNzM0MzAgNDY1OGZjYWFmYzczMjg4M2ZhOTczNzA4MjQxMDUyOGY3OWZjZWY1ZCBweTNrCis3MzQzMSBiNjM0ZDBlYzhkMzUxNTgzMDdlODBiNzEzZTc1ZWQwYmRkODlmMmJmIHB5M2sKKzczNDMyIDMxMTEwNzQ0M2NjMTM2YjBjM2I1MGU1N2ZiMTdlMTUyYzZkMjViZTMgbGVnYWN5LXRydW5rCis3MzQzMyBkOGFhNDg1NDg1YTZjZjhhYTBjNDczZDUxMDAwYjZmZTVjYzZhNzNiIGxlZ2FjeS10cnVuaworNzM0MzQgZTE4MzE4Zjk4NWVkMmUxY2VkNjZmMGE2MjBlNzlmN2QyMzAzNGQwZiBweTNrCis3MzQzNSAxYjNhMTkwMzdmNzY0MTM1ZDE0YjgyMWNhZTE3OGYwYTQ1NDNiZTcyIGxlZ2FjeS10cnVuaworNzM0MzYgNDM3M2YwZTRlYjIxMzJiOTFkZTk3OWE1ZDAxYzc5NjFkZDY5NTk0YiBsZWdhY3ktdHJ1bmsKKzczNDM3IGM3YWM3MGE5NDRiNTAxZDkxZjA3ZjdkNDg5MmRmMDIzZDBjZDMyMTcgcmVsZWFzZTI2LW1haW50Cis3MzQzOSA0YTUwZjBiZGM4MDYzYTdhNjk5NmE1MDYyYjk0MWM0ZjYxNDEyZWEwIGxlZ2FjeS10cnVuaworNzM0NDEgMjAzNDNhYTJhM2ViNzkzZDE0ZmQxNGI4ZjgwMGI5Y2YzYzgwY2ZiNyBsZWdhY3ktdHJ1bmsKKzczNDQyIGNiNWFlNDQwMWViZmRjNjkzMjkyMWM3OWE3NzdiYjllMzJhMzg4ODkgcmVsZWFzZTI2LW1haW50Cis3MzQ0MyA5ODE0ZDdmNjU5YTAwZWRmYTc3MWI5MjdiOWI5YjFjNjYyMTU0ZGEwIHB5M2sKKzczNDQ0IDI3N2ZkMDY0YjUzMDFhNjBhNmUwOGJjMjRiNTc1Mzc4NzA1Nzc0NGEgcmVsZWFzZTMwLW1haW50Cis3MzQ0NSAwNzZkYjRkZTAzN2FiMTAxZWQwZTdiZjFmZjdkMjhlZjFkYmNiM2MxIGxlZ2FjeS10cnVuaworNzM0NDYgYWQyYTU5NjAxMjZkYTIxZWQ2N2QxODVkNDZlOWQwZWEwYWViYWNlZCByZWxlYXNlMjYtbWFpbnQKKzczNDQ3IDQ1YzA1ZmRkOWIzMmE4ZjY1ZDg4ZjdlNTZhMDg2YWZhZTMyM2JmYTggbGVnYWN5LXRydW5rCis3MzQ0OCAzM2ZlZmRlNzkzYjBjYzRlZmFiMjI2NmJiZGI3MzZjZGM4NjhmMTk1IGxlZ2FjeS10cnVuaworNzM0NDkgZWVhNGQyMzdjMTZkNzUxMTEzOWNiMTJhZWVkNjVhNzVlYjFlMmEwNCBweTNrCis3MzQ1MCA4NjU1MDZmMzZlNTg4ZGRlNTMwMjU1MjBjNjhlYTU2Zjk1ZTM1ODk2IHB5M2sKKzczNDUxIDk4MmY3YmEwZTE0YTI3ZjZhMGZmY2JiYWVmMGNkYzA5ZjdlZGFhYzEgbGVnYWN5LXRydW5rCis3MzQ1MiAzOTAyZTRmNzRlZTI4MTdhMjFiNmQwM2U5OTc4NzBlNGI3M2ZlNTVlIHJlbGVhc2UyNi1tYWludAorNzM0NTMgZjAxOTVkYWFkZmZiYjI1OGY2OTRhZDg3YjNlNTU5ZDdiNmE1YWY5YyBweTNrCis3MzQ1NCAwOWU1Zjg4YzliZGJlZDQ2YWVjNGU5NGMwM2ZlNDRkY2FjZWVkMGZhIHB5M2sKKzczNDU1IGM1NjgyY2UyMzQ2NzU5YjhjYTAzYTNjMDE1ZGVhMmM0ZDI1MTIyNzIgcmVsZWFzZTMwLW1haW50Cis3MzQ1NiA2YjY3MDFiYTEyMTFlYTVmODgyZjc2Y2UxMWExMzAyZGEwOGFlMGUyIHB5M2sKKzczNDU3IDRjNmNkYmExYjBiYjNjYTAzNGM3NTc4MDMwYmUwYWI5ZDAxOTk5ZjEgbGVnYWN5LXRydW5rCis3MzQ1OCBjMzg3ZGE4MzdjNGEyM2ZmYmU3N2FhNWFjYzEyZGJkODdlNTc5YTZmIHB5M2sKKzczNDU5IGMxOTg2YmI0MzAwYjcyMmJmYWJhYWJmODBiNTM1ZDlmMWUwNDg5NmUgbGVnYWN5LXRydW5rCis3MzQ2MCA2ZjMwNTRhZmExYTBkOGFiMTBmOWI2MGU0YzFiNjk3NjEyZTYxMjg4IGxlZ2FjeS10cnVuaworNzM0NjEgYTVmMzFiMzBjN2MzY2NkMjljYmViNTAwMGNkODlkMmQyODA5NGJkYyBsZWdhY3ktdHJ1bmsKKzczNDYyIGIwY2IzY2JkZmM0N2FiOWI0YWE4MjA4NmI2M2MxYmY0ZTRlNjM3ZDcgbGVnYWN5LXRydW5rCis3MzQ2MyAyMmM3OTM0MWU1ODBjYTJjM2M1YjBjNDZlZDI3NmJkMWU5ODAwN2U2IGxlZ2FjeS10cnVuaworNzM0NjQgZDExZGJjZjg0M2RmOGMwNGNkZGU4NGMyZTk4YTQ1ZGMxNDhkZTdkYSBweTNrCis3MzQ2NSAzMzQ4OTExN2RhOWM1NjA5YzZkODUwNjgwNTY5OTk3MmM2Mjg2Nzk2IGxlZ2FjeS10cnVuaworNzM0NjYgZDRjNjZmZjEyOWMyYzgzMzA1ODcyNWIwYWJiNjI2MmI1NDM0ODM5ZSBweTNrCis3MzQ2NyBhZDZmNmMyNjE4N2Y5NDRhODkzYWUwMGViZjFkMDhiMTUxZTZjMTk1IHJlbGVhc2UyNi1tYWludAorNzM0NjggN2VkYzM3ODgzZThhMWQ2ZDNlMTVjOTZjNjkzNThhYzUxNjY5NTc1ZiByZWxlYXNlMzAtbWFpbnQKKzczNDY5IDMxNWQ3YWU0MmVhNzAyNTM1Mjc1NjJjMTlhZDIzM2VjYzUxMmY0YTEgcHkzaworNzM0NzAgYTc1ZTE4ZDgxNjZhYzJhZmZhMTFmM2Q1NmQxNDM0MGFhNGUyODI1MSBweTNrCis3MzQ3MSBhMjMwZjhkOWI0MTkyOGM1MmNmOGIyM2VmNmUwYmJhMjQ3ODY1NGVhIGxlZ2FjeS10cnVuaworNzM0NzIgMzcyMjNlZjRkNDcwZDQ3MTdkMDQ0MGY5NDcxZGY3YzVmM2RiNDYzNiBsZWdhY3ktdHJ1bmsKKzczNDczIDk4YTY2ZmEwMWUwYTRkMGE4NjA1MWI1MjBhNGU3NWM4YTY5ZDAxMjYgcHkzaworNzM0NzQgYjgxODkzZDM3ZTdhOWU5NTkwMGM4MjRjOWRlN2JiMGIzOTY2NWI5MCBweTNrCis3MzQ4MCBkY2M5NjJiNGQ4ZmY5MzBkZTBhMzU0ODlkMzRiY2RkYTRkZDYyNGQyIGxlZ2FjeS10cnVuaworNzM0ODEgZTI1YTRkMjdjMzhiNjA2NjA2ZjdjZmYxMjAxZDQ1MzM0NDJiZWEwYyByZWxlYXNlMjYtbWFpbnQKKzczNDgyIDVmYWZjYjMyZjA2MjI3Y2Q5ZjU3ODNhZTg2ZTY1OWIyYTc5ZDQ0YjcgcHkzaworNzM0ODUgZTdkMzhjNDA4MzYxOWIzY2RlM2UwYjZiN2MxZTAzOTUzMjA5ZmYyYyBsZWdhY3ktdHJ1bmsKKzczNDg2IDZkZDUwN2I5NTJjZjkwNDVlNWUwNGJmZWUzODc0NDc0MGU0ZmYyNTkgbGVnYWN5LXRydW5rCis3MzQ4NyAwNzI0OTg4OWE3NzNmMTg0NGUzNzBkYzEyODcwMDNmOGYwNzhkYTM1IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3MzQ4OCBlMWMyMzBmMDJmZWI5ZmRlY2U3OGMwZDkwMzgyZDA3ZGY3MTFiNTU2IGxlZ2FjeS10cnVuaworNzM0ODkgOTEzYzliZjk4ZDYwOTAxNmEwMWVjNjcwN2VkNzNkNDdlOGRiNjNjOCBsZWdhY3ktdHJ1bmsKKzczNDkwIDdkMjQ1YTQyM2U5NmM2N2M2Y2I0MGE5OTI0ODY5Mzg0NTkxOGE4YjEgbGVnYWN5LXRydW5rCis3MzQ5MSAwMWQxMDcwNWE3MWIxYTIxNGYzMmNmN2QwNGE1YjJhNDY4MWMxNGY1IHJlbGVhc2UyNi1tYWludAorNzM0OTIgM2U0NTQwYjdmZWM5ZjFhZTRmMGE1ODIyZTc1MWE2NjYxNjZmZTgxYiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzM0OTMgZjMyM2MyODBkZjU4NmE0OTJkYzUzNzUyNjdkNjM1MjZhNDdkYmExNSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzM0OTUgZDY2MjI3ODlhZDI3NTYyMGZhZGNlMDM2NWViOTgxZjVhNjE3ZWRiMiBsZWdhY3ktdHJ1bmsKKzczNDk2IDQwYWZiNjU1MzZkYTI2YjE3Y2M5ZTg2ZjA3ZjFmZmQwYjJiYTQ3YmQgbGVnYWN5LXRydW5rCis3MzQ5NyBhOTUwYTQ0MzRmOGJiZmE3NTgwNTVkMDBiZTQ4NDc2ZTE1MDQyYWQ2IHB5M2sKKzczNDk4IGQzYjQ0Y2U1NDNhZTQ0NTE1ZWI0ZjFkOTVlZTg5ZjBlZTM1NjUxMjcgcHkzaworNzM0OTkgMTFjMTZiZTRkMjFjMjEzY2UyMmNiNTYyOTU5ZTNjZmQ5NWJiZDI1NyBsZWdhY3ktdHJ1bmsKKzczNTAwIGU0OGJhOWNlODgzNjI0NWViNjViZDdmNjkxZjJlODJlM2E3MzBhMzggcHkzaworNzM1MDEgODcwMDA4OWVjY2Q0ZDNlMmM4MTE3NGM1NzUzNjEwYTYxNTAzMzJlMyBsZWdhY3ktdHJ1bmsKKzczNTAyIDkxNzQ5N2UyNTA5Y2Q2NmZiYjZkYTE4Y2JiNDM4NzRiMTBjNjZhNmMgbGVnYWN5LXRydW5rCis3MzUwMyBjNGZiMDcxMjE0N2ZkMmU1YWQ5NzgxOWM0YjJmN2RhZDFhOTg4NTE0IHB5M2sKKzczNTA1IGFjYzU4YjU5M2JiYzFiYmJlYmMyOTgwZGY5NzQ2ODQyZjkzMmRmNWQgcHkzaworNzM1MDYgYmM2MWQyMzFhNjUyNmJjOTY3YzVmZjNiN2UzOWQ1MmMxMzAwM2VlZiBweTNrCis3MzUwOSBlMzNiNjU2MjcxODhiZmMwYjMyNzM0MTE5NTJlZWRjMTE1NzM1N2NmIGxlZ2FjeS10cnVuaworNzM1MTAgNWNiNGU1MWE0NDA4NTEyN2NhYWJiMTk0YzFhNDQ0YjVjMTc0ZTQ4NiBweTNrCis3MzUxMSA4YWQ3ZmM4MDlmNjg0ZjliN2YxYzU0NTRmYmUzNWVhNmE4ZDlkNjVjIGxlZ2FjeS10cnVuaworNzM1MTMgMzg2OTIyYjYyOWMzOTA1NGUwOTJkZTJmMTU3YTJmMGUxY2M0OGM4ZSBsZWdhY3ktdHJ1bmsKKzczNTE0IDUxNGZjOTM2NmYyZGJiZjI0MmU4OWYxYjVkYTc2ODFiMDc4NWViOWQgbGVnYWN5LXRydW5rCis3MzUxNSAxNzMyYTU0YTAyNzI1ODgyYjJlZWYwZDI2YjJhN2RiOWI1OGQ5OTg1IHB5M2sKKzczNTE4IGRjMzgxN2E4ZjU1MmViNjhmNGFkNjBiMjZhM2E5Nzk3NGE0Y2YwNzUgbGVnYWN5LXRydW5rCis3MzUxOSA4MGQwZjIwMmI5ZWYyYTYzZjFiNDRjMTE0NzZkYWJhMjM5OWNiNGYwIGxlZ2FjeS10cnVuaworNzM1MjAgNDU1MDZiZTQ0NTE0NjYyMTlmMWM4MjE2MjU0OTI5MGI2ZmQ1MjRjNyBweTNrCis3MzUyNCBkZmQ5YjllNzFiMmViMmI2ZDg0MWFjODIzMTg2Y2MwOTlhM2MzMzQzIHJlbGVhc2UyNi1tYWludAorNzM1MjYgZGJmZTBhYmNkODkzYTI2M2ExMjdmM2UyOTYyNTgwNDNmZjg4ZWY4MiByZWxlYXNlMzAtbWFpbnQKKzczNTI5IGM5NDU5NGU2ZWRiNzMyODM5ZjFlNTJiZTg3OTJiNjcwMjc3NmI1ZmIgbGVnYWN5LXRydW5rCis3MzUzMCBlNzM3MTM1M2EzMDIwZWQxN2M0NWQzMzFlZDM5YjFiYmExM2M2MDMyIHJlbGVhc2UyNi1tYWludAorNzM1MzEgYjRkMGMwMjBlMzU3NzBmZTk0MTA3NjYzMDE3ZTA1YjhkY2ZhYmZiNCBweTNrCis3MzUzMiBmNjVhZGFkMzk4OGQ0YWE3MzA3Y2I0MjQ5NzBmODliMTBhNTU5NzI5IGxlZ2FjeS10cnVuaworNzM1MzMgYTZhMWE2MWY3MmJmODNlOWU0NDk2OGVhMDBlYjFjZWUwNjBlYjJmNCBweTNrCis3MzUzNCAwN2Y3MTFkODdmZmRiYWJjMWViZjc4MDkyZDRmNzZlMDI1MTM4MGUxIGxlZ2FjeS10cnVuaworNzM1MzUgZDE2Mjk0Njk3NjU4ZWNjYThhMTRjYTdiODdmYmViZGM3ZDhiYmYwZCBweTNrCis3MzUzNiBhZDYwNzM3OGE0ZWZkZDMyODU5OWM1OWY0YjgxYjJmMmE4ZWMyMGY4IGxlZ2FjeS10cnVuaworNzM1MzcgOTVlNTc5MWZjM2M5MmQ3ZGI3NTRkNGZmMzEzNTdjOTI4OTU3NDI4ZSBsZWdhY3ktdHJ1bmsKKzczNTM4IDdhMTMxNWE5OTJmMGI2ZWMwYTJhZDQ1Y2E3NjA3OThhN2ZmZGM5ZjcgcHkzaworNzM1MzkgY2IzZDMyMzQzOGQ5MjI1ZTM3MzgwMDBjY2E0ZjdmNjI0NWE5MjY4YiBweTNrCis3MzU0MCBiZGM5NzU5NGU1MDk4YThmNmQ5MWI5ZjU0MzQxNDVlZjE4ZjJlZDkzIGxlZ2FjeS10cnVuaworNzM1NDEgYjkyYjg5MmM0MzYwMzc1MjRkOTM5YWY4MWRjYTZmYTBkZjdiM2EyNSBweTNrCis3MzU0MiA2YTMxYzRlMGRmYzEyYTlhYWE4ODM5ZDViNTc1NzE2Y2M4NDhjN2ZjIHB5M2sKKzczNTQ0IDJhZWVkNGVjYWQ1Yjg3ZDg1NGU1MTQxZTcwZjkxZTQ1Njc3Njk4MDIgbGVnYWN5LXRydW5rCis3MzU0NSBmNmNiMjkzMjAyMmNhZjRkY2Q2OWQ1ZDIwZGEyMDllODI4NDFlMWU5IHB5M2sKKzczNTQ2IGEyMGEzNzdjYzMyN2E4MmRlNzkzMDBmOGMwNDM3OWQzYmE5MTBjNWUgbGVnYWN5LXRydW5rCis3MzU0NyA4YTk3NmNkNTdjYTY1MTE0MmMyYjUzN2ZiOWNiNWM3Y2NjOTAyNGIxIHB5M2sKKzczNTQ4IGYzMThhZGZlMjI2NGFlNmFhMmY2YWFmNmVmNDA3MzM5NzhhYTFiYTAgcHkzaworNzM1NDkgZjRkODRjNGYyODliZGE5ZGM1ZWY0MmQzYzZiZTViMWExOTU0ZDA3MiByZWxlYXNlMzAtbWFpbnQKKzczNTUxIDc5YTYzMGRhOGYwMGUwNjU5OWY2YTFiMWI4YzM3Y2NiYTA2NjIyYTYgcHkzaworNzM1NTIgNTViMzAzZDVkZDU1MTVlMThjOTJmNmZkMzdmYWQwOGJmYTBhYTdjYyBweTNrCis3MzU1NCAzZmUyZDFkMzdjZjFmMDYzNDIzZTgzNmQyYmRlMjBmZjFhNDliOTg5IGxlZ2FjeS10cnVuaworNzM1NTUgNDQ4Njk5MTU2ZGZlYTM1Yzk2N2VjODM5YWVlNDA0YTk2ZWQxOTUyMSBweTNrCis3MzU1NiBhMWE2ZTZkYmRkNmE3MmYwNjZhNzIwZThmZjI4Mjk5ZGNmYWE2NzJjIHB5M2sKKzczNTU3IDI3MzU4OTNjMzg3NDc0NDM0NzZkMzk5M2M5NDI1MDllZjJhN2RmNmEgbGVnYWN5LXRydW5rCis3MzU1OCBhOTM3ZjA0MDk1OTI4MWViYWFiMzQzNzU4ZjVjZThiNDVhNmIyYmY4IHB5M2sKKzczNTU5IDUyYzg2ODczNjgzZWFlOWNlOTliNGVhYWI3NmVjOGQxYTdkZWNjZDggcmVsZWFzZTI2LW1haW50Cis3MzU2MCBlNjkwYjczNmFmNDc4MTM3NmM5OWU1ZTFiYzVhZmI3NDUxYWVlYzkzIHB5M2sKKzczNTYxIGE1Nzk5MmE2M2NhYTA3ZTg4MWNjMmM3ZmFmNzFkMWI5OGI2NjViYTggcmVsZWFzZTI2LW1haW50Cis3MzU2MiBjZjljZWI2ZjVhM2E3YWY2NWJkNDdhNDI4ZDRhYmU1N2ExNmM1YjMwIHB5M2sKKzczNTYzIDg4ODJmOGZlODIzYzY0YjM1NzQ0OGMyMjlhMmJmMDRiOTJkOTI5ZjkgbGVnYWN5LXRydW5rCis3MzU2NCBhNjY2MTM0ZTZjMGMyMzRiMDk2ZjI5YzRjY2ZjMGZmNzk0Y2NiNTEyIGxlZ2FjeS10cnVuaworNzM1NjUgMGZmMGEzOTZmZGE4MzdiMzFhMjA1NGFhODMwNDJiYjAxZWJlMDRmYiBsZWdhY3ktdHJ1bmsKKzczNTY2IDAxNzBjOTYxZjI5MDU0YWY1M2I4N2U4OTI2MTlmMjQyN2E3ZDNlMDAgcHkzaworNzM1NjcgMjUzZGM3YmU1ZDFhYmI0YzE3OTVjZWM4NDVhMTZjMjgyNzgxODQzYyByZWxlYXNlMzAtbWFpbnQKKzczNTY4IGQwNDg3NzM5MWU4MDdjZmY2NjhmZTllNmY0OGI0YzkxMTA4YzIzZWMgcmVsZWFzZTI2LW1haW50Cis3MzU3MSAxNTBlM2ZlYmRmMTc4NWU0OGRkZTQxMGZkNjdlMDNhMWRiZWVkM2ZhIHB5M2sKKzczNTcyIDEyZTk2MGNjMzdkNjFlZDZkMDc3MTRiNWZiYTBjZDhmYWU1MzM1ZjMgcHkzaworNzM1NzMgYTY5YTAzMWFjMTQwMmRlZGU4YjFlZjgwMDk2NDM2YmNhNmQzNzFmMyBweTNrCis3MzU3NCA3YzllMWM5ZWM1ZGZmODIwYTNlMjYxY2Y5MmM0Yjk1ZTU2ODdkZDI0IHB5M2sKKzczNTc1IDRhY2NjOGEzZjlhZmU4NmZjZDQ2NmMyNjlkMGYyZWMxMDUxNjU1NjQgbGVnYWN5LXRydW5rCis3MzU3NiA4MzFiZWVlMjJhOWZjYWNhMTllMzg5YWQxMDU5NzM2ZWMzOWQyMjE2IGxlZ2FjeS10cnVuaworNzM1NzcgOWQwMGZkMDA4N2ZmOTE2NWRkOWZmOWZkZDZmOWQxNjlhNmI3YjExNiBsZWdhY3ktdHJ1bmsKKzczNTc4IGMzZDVkM2M4ZTQ5YmE4YjJkOTkzNDdlMWVmYjNkODdkYjE1MjYwNDMgcmVsZWFzZTI2LW1haW50Cis3MzU3OSAyNWQ4NWU0NDg2YWNmMTAzMzFkNDM2NWRmYzQ4NDJjOTNjZjUxODM0IHJlbGVhc2UzMS1tYWludAorNzM1ODAgYTI0ZjA5NjA2YjgzMjY5OGUyNmFmYjMzZDY0Mzk3NTUxZmQxNzY5MyBweTNrCis3MzU4MSA3N2ZiN2QzYzZkZGU3YTRmNTdjNzA0YmRmZjJiMTBhNTUxOTM2YWI5IHB5M2sKKzczNTgyIDk2MDMzNDQzNTg1NThjYzY1ZjczODZiODY4NGIwZjNhZjk5NWM4YWUgcHkzaworNzM1ODMgNWY0OWVhOGY1OTA4Y2ZkY2U0OGIxYjM0MWNmNGY4MTI2ZGQyZjU3NiByZWxlYXNlMzEtbWFpbnQKKzczNTg0IGI2NzYxNTk0NTY4MTU0NzZlNzliYTkyNzNiMjRkZWM5MDc5NWEyZjYgcmVsZWFzZTMxLW1haW50Cis3MzU4NSA0ZDQ3NmY2ZjFiZTNiMjE1ZGIxZDFkMjA4NzQzOGZkOGExMjY4MTE3IHB5M2sKKzczNTg2IDZkYzg4NGIyZGVhN2FhYzIzODYwODQyNWNjYzU3OTcwNTVmM2ExOTkgcmVsZWFzZTMxLW1haW50Cis3MzU4NyA0NmNmMmU1YTU3ZDRmN2IwOTBiNmU4N2FiZDRiY2E3ZTZjMTQ4OTgwIHJlbGVhc2UzMS1tYWludAorNzM1ODggZGM3NDU2Mzk3OGRmNDk1NGMzYTZlNjk1ZTMwYmU3MjI1MTgwNzkyMCByZWxlYXNlMzEtbWFpbnQKKzczNTg5IDE2NTFlMmYzNmFmMTJhZWFlZGYyMjhlMzNmM2Q5ZGEzYjI2YjI3NzEgcmVsZWFzZTMxLW1haW50Cis3MzU5MCAwNzBlMWUxNWM1MTYxZWI4ODNiNmYzMWRkOGJmNGZhMTE4ODUxZDhlIHB5M2sKKzczNTkxIDJkYTA1ZjgwZDM2NWFlOWY1NWY3NTMxN2VmZjNjZTU4ZDQ5NTIxMmYgcmVsZWFzZTMxLW1haW50Cis3MzU5MiAxZDNiZGRmYTg1MDkwY2M1NjBjNGY5ODdhMjM4NjVhMzg2ZjFiNTRlIHB5M2sKKzczNTkzIDU4ZjJiMjdjOTFhMTRjYjk3NWM5MDA3MjEzYTdjM2Q1ZDJlNzNlYWYgcHkzaworNzM1OTQgZTI1MjJlNGQyZGM4YmYyZjgyNDUyYTg1ZTgyZjMyODJiZTJjYTY2NyBweTNrCis3MzU5NSA1YjNkMGJmYzhkMjg5MWJjNDEwZGQyYTE2OWYyNGRhY2Q5MzI2ZTkxIGxlZ2FjeS10cnVuaworNzM1OTYgMWY2MDU4M2I2Mjg3Y2YxY2FjZTIwZGE0OThlZTFhNTc5NzRhYmIwOSBsZWdhY3ktdHJ1bmsKKzczNTk3IDNhYWYyZTA2NWRiMDU0MDE4MDM3MDVlZDRiZmEzZmQyZjkwMzBkZjggcHkzaworNzM1OTggZjRlZWEwZDIxNjVkYWRjZjFlOGExMTRlMzJhMmE3NzI3MWMyNTMzOCBsZWdhY3ktdHJ1bmsKKzczNTk5IDFmNGY0ZDllYzc5MzA3YWRhMWFlZDNmMTRlMGNjY2ZhODBkYjdiODYgcmVsZWFzZTI2LW1haW50Cis3MzYwMCBjNTM1NzgzNmMwNzlkNzZmZWY4YjgyMDdiNTE1MGQ0MzQyZDFiMjU4IHB5M2sKKzczNjAxIGFjNzhlZWViNDZjMjk1ZjBiNjViOWNiODc2M2U4Y2Q0ZjYwYjU0NGMgcmVsZWFzZTMwLW1haW50Cis3MzYwMiAxMGEyMjljOGJlYWRiOTc2ZWYxYzFiNzE4N2U5MGNmMDIwZTlkNzEzIHJlbGVhc2UzMS1tYWludAorNzM2MDMgNTU4ZWQ3MmQ0ZDMzYmJjMzg2MDE2NTlhYjYzMGJhNTNiNGJlYWUyNiBsZWdhY3ktdHJ1bmsKKzczNjA0IGM0MWZlMTMzZDg4NzMzMDUyZWFlNjliNzE5YjlmNjExM2JlY2Y4YjYgcHkzaworNzM2MDUgMDhkMDU4NTYyMTRhMzU4MWNiN2FlNmUxMzI2NTVlMWRmZDE5YWU2YSBsZWdhY3ktdHJ1bmsKKzczNjA2IDExN2U4NWNiZjE2OWI0YjgwNGIxYzA0YjVkODAwNDlkMDlkMThkODkgbGVnYWN5LXRydW5rCis3MzYwNyA1NGVkMjc5MWJiMTViOGM3MmUwNTMxOTllMTVlMDAxZDA4Y2MwZDc4IHB5M2sKKzczNjA4IGVlMjUzZWI2ZjA4YzA0OTIwZmIyMjVjNmZiOTJkNjdiN2IyM2I3MzEgcmVsZWFzZTMxLW1haW50Cis3MzYwOSA2ZThkNjMzNDRkM2UzMGQ5N2M4MTBhNmFkMzNjZTkyYjBkZTE5NmIyIHB5M2sKKzczNjEwIDRhMjI1ZGU4OTIzMzYyN2M4NTFlMjMyMjMzYjA3MjM3NzdhNmU0MGYgcmVsZWFzZTMxLW1haW50Cis3MzYxMSA1NDRjNWJhZDE2MDc3ZmFkZGUwOWZiZTVjMDUzYTcwZGI2NTI2OWUxIHB5M2sKKzczNjEyIDI2MDJiNTZhZDAyZGM2ODIwNzI5MTU3ODk0ODI1NDk5ZTA5MjhkYzkgcHkzaworNzM2MTMgYjU1YTc4YjM5YmQ1ZWQ2ZmJjOWUyMzQ2YzZhZTBmZjY2Yjc0MTAwMCBweTNrCis3MzYxNCBkZTg2NmY0N2QzOGE4NTdkNzg0MmRiYTBlYWFiNmUxY2NiZjg5NmZhIGxlZ2FjeS10cnVuaworNzM2MTUgMzY4NDc4ODU5ZmUzYWFmOWMyNjMzM2RmMzM5OGUzOGVhYmNmZmI1MyBsZWdhY3ktdHJ1bmsKKzczNjE2IGFhOTUwZjc5NjJmZGM2YTUzNmZlMzJkNzE4MTJiNGIzODIyZDE4ZGUgcHkzaworNzM2MTcgMGMzMTllMDNkOWExMGE5ZWVjYWQyYTNjNjhkYzFlMDNlNjBhYzE1NSBweTNrCis3MzYxOCBjOWU2NWU0OTM2NWRjMzhiZDY3ODkwNDRlNTE1NjUwYTJmNTY5N2JlIHB5M2sKKzczNjE5IGNiNjAwZTAzNDM3ZDY0MGUxZTE4ODUzZDRmZjJkNzY2MDJjYmY1OTkgcmVsZWFzZTMxLW1haW50Cis3MzYyMCA2NTQ0MDc3NDZiZTBhOGYzN2E3OGZiMDkxNzYxOGFkYTk2MWY5NDE3IHB5M2sKKzczNjIxIDkxMDliNDIyYzEzOGZjNGJlYzIyMjBmZDMzZTJmYjJmYTZhMmJiY2EgcHkzaworNzM2MjIgMjIyODkxNmFiNDc4OGY5YWU5ZWJiZDI5NzUwNjM1MmQxZjI5NmQ3YyBweTNrCis3MzYyMyAxZTU1ODlhMTdjZjA3ZWQ5NWU5NDNkYjk0N2QzNGYzMzU1ZTZkNzM4IHB5M2sKKzczNjI0IDdjMjg3ZDMwMDIzYzM1NTkwMGEyMmM3ODAwYTNhOTY5NGJkZGExMTIgcHkzaworNzM2MjUgZjk0YzA5YWE0NDQ0M2JhZmRlYTE5OTYwM2VhYzIwOTQ2NzE5MzA5YiByZWxlYXNlMzEtbWFpbnQKKzczNjI2IDA3MDRmMTViNDY4MjcxYjYwOWNhNGE0YTAwMWMyNDM3NTc1MDI5MTQgcHkzaworNzM2MjcgNDExODg0ZDAxZjhiMGY5NmFkNGQ4MTExODlhNGZiYTNhZWY0MmFkZiBsZWdhY3ktdHJ1bmsKKzczNjI4IDRkYjRhZjBjZjgyYzViOGEwNmNmYjU2MmNmZjBkMDk4NmE3MzllMjQgcHkzaworNzM2MjkgNWM3MDJhNGQ3NWU0NDVkNTJmNmQ3Y2YzMDhmNmNjZjA2MjhkYjM5MSBweTNrCis3MzYzMiA2NzZlNzRjMjBjNmVhM2Q2NTg2YjQ3YjRlMWRmNGQ2Y2ExYmQzNzkzIHB5M2sKKzczNjMzIDBjYzIxYzk3NTFmMTQ3NWQ1NGUwOGU3ZTkxNjAzNDhjNjA1Yjg0MTIgcmVsZWFzZTMxLW1haW50Cis3MzYzNCBkYjkxYTA0NTMwNTBjMjhkMTU0ZDQ2ZGQ1NmUyNjVkMWJkZTI2YzgzIHJlbGVhc2UzMC1tYWludAorNzM2MzUgYjMyZDEzNmYzZTIwMDRlNzllNGQ2ZGFiYmEyMWZmZWRkMDVlYzBmMyBweTNrCis3MzYzNiAxYTk4NDcyMzQwZmEwZDg4YWUzMTE4YzBiMWNjYWI3YjJjZWE5NGE4IHB5M2sKKzczNjM3IGUzMDI1YTRjMGFkNzg1MzNmYTUyNTk4Y2JjZGRmYjYzNGVhNzEwOGUgcmVsZWFzZTMxLW1haW50Cis3MzYzOCBmZmQ3Y2Y1YzcyODVmODlkM2EwZjJmZmRkYjBhNmFmY2ZiYjcwMzcwIGxlZ2FjeS10cnVuaworNzM2MzkgNTJjNDhkZWRlNWY3N2Y1YjYwNTg4OGZkODhjMzQ1OTQ2YjI0YzZmOCBweTNrCis3MzY0MCBhYjkxZmE1ZDBjNWNjMjIyNTU5ZTU1MmI2NzM4ZWEzMjRiMWM4ZTZlIHB5M2sKKzczNjQxIGQ5NGIzZWQ1ZDUzNjVjNDc0MzE4OTZmODM3OTQ2NDYxZTRjOWMzMzcgcmVsZWFzZTMxLW1haW50Cis3MzY0MiBhNTExZmU1MTY2ZmQ3NzhkYWI2NjcwMDIwOTQ3OWM0ZWI5ZTM5ZDdiIHB5M2sKKzczNjQzIGQ3NDk2Y2MxMGRmZWVlYTA3MTlkMDYxOWU0MDk1NWM4YmYyMTc4NmMgcmVsZWFzZTMxLW1haW50Cis3MzY0NCAwZjdkYzU3MDRjNTkwNjU5NGVhNmVkYjg5MTVkY2I1MTdhYmQ4MGUzIHJlbGVhc2UzMC1tYWludAorNzM2NDUgZjQ3Y2UxMWUwNzJiNjE1NTc4NWZhMjc4ODEyNzBiMDlmZjc4ZTMyYSBweTNrCis3MzY0NiA2NmNjNTA4OTA4OTRjMTNlYjE5NjllNzY1MDhmNDE1ZjQxNTRiNTQwIHB5M2sKKzczNjQ3IDU2M2NjNGRjYzcwMzI5MGI3MGE5MmFkMGU0ZjQ4NDBkMmM0YjE3ZmQgcHkzaworNzM2NDggNTI4NDBiZTQyNTMwZjc2MzA3ZGM0MjhjZDliNWIzOTJmNjc5ZmM4MCBweTNrCis3MzY0OSBhMzdiYjU5ZDRiNTNhOTI4NmVjN2Y0NjNhZTNjMmYwZmJkN2QxZmFiIHB5M2sKKzczNjUwIDA5YzQ0YzkzMzk0MmI0NDg4YTYwOTM0MGJkYTdkMTNjMjgyYjVlYmYgcHkzaworNzM2NTEgNDM2OTgyMjQxNGMzYWJiYzA3MzA0NGRkYWM0NDc5YWI3NjdiYjI4ZiBweTNrCis3MzY1MiAwMDgwMDI4ZjVjYTAwMTIzZWYxMjQwMjE5MDc1ZDMyYjIxYzI1NGRiIHJlbGVhc2UzMC1tYWludAorNzM2NTMgYTkyNTJiODg0N2YwN2Q3NjYzMWQxNTQ2MTdhMDBhYjIyYTIyMjY4NCBsZWdhY3ktdHJ1bmsKKzczNjU0IGRjZjcxMjFlZGIyZTg1ZDAwZGUwMTYyODk0ZDJjYWJlNWZhYjNlODQgcmVsZWFzZTI2LW1haW50Cis3MzY1NSBmZGMyMTBhOGEzMjhlMjVjZWExNDEzZjhkNTEwMTQyNWMzMmU4NTcyIHB5M2sKKzczNjU2IDNmNDY2OGI0OWYxMWUzOWJkY2E5YjM3ZWY1YTY4M2ZmMmFkNTFkYjYgcHkzaworNzM2NTcgNTIwZjEzMTBhZTYxMzkwMjQ4ZDNlY2ZkYjYwMWQ2ODdmMmZhNzc1ZSBweTNrCis3MzY1OCA1MjdiYWRlMzA0M2IyM2E3N2I3ZDYxMDUzZDExZmVkODM1MmUyOTA1IHB5M2sKKzczNjU5IGQ1MTAxN2RjYmEyNDdmODk1MWZhYmEzNjkwODBkNDVkNDhiZDI3N2UgcmVsZWFzZTMxLW1haW50Cis3MzY2MCBmM2RhZmZkNGNiMjhjNjI4ZTJmOWY1ODVmYzdlMTc0MWFiMzRiNmQxIGxlZ2FjeS10cnVuaworNzM2NjEgOTgyOWI0MjM5OWU1NmQ5YjJhZDQwNGMzYTdlZDU0ZjI4OWJmMzdlZSBweTNrCis3MzY2MiA1MDg4MDY0ZDYxNzA2NTg2ZjY4YWM1MWNmYzA5OTJkNmNjNDVhZDMzIHJlbGVhc2UzMS1tYWludAorNzM2NjMgNzA0ODk0ODY0NmIwODdlZjAzYmE0NTFlYWRhZTI5YTg5ODZlMzlmMSBweTNrCis3MzY2NCBjNDVlMzMxMjM4YWU3OTZhZWIwYWY4ZjM3MGRjNmJkYjAzMjc1YzUwIHB5M2sKKzczNjY1IDE2NGQ2NGIzOWFjMDZjMDE4N2JmOTZiN2MzMWM5MDg2NDI1MGE5ODUgbGVnYWN5LXRydW5rCis3MzY2NiA3ZWNjMDc1ZDE3MWY3YTIxYzVkNDIwNjM1YjIwMTY0OWFhNmMyMTY5IHB5M2sKKzczNjY3IDM4MGFmOWU4MGMyZThlZmQ4YmY2Yjk5YjhjNmJkYWZlZmZhOWFiM2YgcmVsZWFzZTMxLW1haW50Cis3MzY2OSBhNjY0YTQ0NDNhMzk0ODQ1MGFkYjRlZDRmNjA1NjEzYjE5NjJhMzc2IGxlZ2FjeS10cnVuaworNzM2NzAgNjVhZGJhOTVkN2UwZTczZjJjN2VlN2YzOTY1ZGU2OGFiY2M0OTU2ZCByZWxlYXNlMjYtbWFpbnQKKzczNjcxIDBkMDU1YTA2MmNjZTFlMDIxODM3Mzc1ZmY1ZDU2OGQxOGE0MjYzYzQgcHkzaworNzM2NzIgMjk3ZmRlYWY1ODIyMjUwMDkzMDI5MzA2NDA4MWU3Y2Y1M2RhYjgzNSByZWxlYXNlMzEtbWFpbnQKKzczNjczIGRiNmQyY2UzODMwYWY2ZDZhNDVjYjY0MDQzMTlmODAyMzk2NmY0NTIgcHkzaworNzM2NzQgOTQ2M2ExMDI1MTVmM2QzOTkyYzNkZmZkOTA0OTJmNjRhNTU3MzE1YiByZWxlYXNlMzEtbWFpbnQKKzczNjc1IDRlMzU1NjQ1M2ZiY2NiNjhkZjA5ODk4MDdiOWE5MzE5NmU3OTQ3MmQgbGVnYWN5LXRydW5rCis3MzY3NiBhNzlmNzRkNmY1YjM5NTA4NmNhMzIzOWM2ZTg1MTUyMzAzZWU4ZWE3IHB5M2sKKzczNjc3IDZlN2ExNmE2NDQyZjZjODQzYjZlYTk5ZjA0NDhlMWMxNzkzZTZkZjggbGVnYWN5LXRydW5rCis3MzY3OCA4ZjIzYmQxMDkyZmMyNGYwMzZiOTE4MmMyZjU5YjY3YTVhODc5Njg5IHB5M2sKKzczNjc5IDFiOGEwMWRjN2Y0NWE0YzhkMjQwNTJlMTVlMDg0YTliMmU5NTcxNzYgbGVnYWN5LXRydW5rCis3MzY4MCA2Mjk2NzQ0NDhkODRmYmJmMmQ5YzI0MjAxNTAxYTg0YzVhMmY5YTk5IHB5M2sKKzczNjgxIDIxMGE1MWVmZGM4MjY3MGQ5MGRlNGM2ODVjYTZmZTg1NjVmNjU1MzMgbGVnYWN5LXRydW5rCis3MzY4MiBhMjc1ODNjODM2YjIyOGYzMzJkNDM0YTQ2ZTcxZTkzMWNlNGUxODNjIHJlbGVhc2UyNi1tYWludAorNzM2ODMgZTBkMjdiNzZhMmU4ZDE0NGUzMTgzYWM0OTA0NzVkNTQzMzAwOWY2NSBsZWdhY3ktdHJ1bmsKKzczNjg0IDc5YzJlZDYxYTAyNTNkMzk5NGQxODk2MmE2MDc5NDhkNzEyODZjN2IgcHkzaworNzM2ODUgNTEzOWU4YjBmMjFjNzMyMzgxZDg4OTlhZWRlNmNiMTkwYmJmZmZiMCByZWxlYXNlMzEtbWFpbnQKKzczNjg2IDcwZWRhMDJjN2E5OGUzMWJkODM0YzQ3ZWQ4YzQ1N2VhY2I0NjMwOGUgbGVnYWN5LXRydW5rCis3MzY4NyBlNzhiOTliMDQ4YmFhODdjNzhjY2YyZmQ2Mjg2MzY0OTA1NDFiZTRlIHB5M2sKKzczNjg4IDNkY2M4ZmM0MzU0ZWZiZTkyNTY5MjZiZjY4NGI3OGE4YWY3MjY4ZGQgbGVnYWN5LXRydW5rCis3MzY4OSAzOTE1ZGVkMmQ2MGYxZmE2Zjc5ZjE1ODA3NGE4NmRlMWZlNjc0MzdiIHB5M2sKKzczNjkwIDY4MTAyZTdlMWViN2QzMzY3YmQ4ZDlkMTcyNTYxNzdlYzY2NjRlNDMgcmVsZWFzZTI2LW1haW50Cis3MzY5MSA0ODdkNmYwMTg0MmE5M2ZkYzMxYmRhZTcwY2JhOWNkMTUwOWE0ZmI0IHJlbGVhc2UzMC1tYWludAorNzM2OTIgNTE0Y2FlNjJjY2RhNWYwNzM2ZTQ1NDk1MWE5MGZlODdjNDYzMGZjZSByZWxlYXNlMzEtbWFpbnQKKzczNjkzIDU5MTc4NWNlZGNjOGE1ZTdjZDJmZTMxZWE1OTFiMjc1MzEyNzk1NmYgbGVnYWN5LXRydW5rCis3MzY5NCAzZDU0Y2JmZDM4MDk5ZWQ0OGZjYzZkNTBiNGZjOWEzOGM5ZDcyMTY4IGxlZ2FjeS10cnVuaworNzM2OTUgN2UzOTIwMjhhMDllZGEwMmZjYTg2OTllNTQzZGM5YmFhZDRlNjQ2NyBweTNrCis3MzY5NiA5MzIwMzNjMzA0ZWY3MjA1NDk3NzkyMDg3ZWEzNjljMzFhZGJlM2EyIHJlbGVhc2UzMS1tYWludAorNzM2OTcgZDJiMWY1ZWYyYWUzZDJkZWEwM2JhNjg2Mjk1ZDQzM2M4OTNmNmYxNCBsZWdhY3ktdHJ1bmsKKzczNjk4IDAxZTEyNWQzMTlkNDgxODAzZDA2Yzc3MDMxOTQ0ODZkZWZkMTQ2MTcgcHkzaworNzM2OTkgMjlmYWM4ODQ4NDg5ZmQ2NmJiZDc3ZDAyOTQxYjNlNGYzODBjZDZhMyByZWxlYXNlMzEtbWFpbnQKKzczNzAwIGQzZDZjY2M5YWJiNDEzNzg0ZWU0YTQzZTdkZGFkODVlZTQwOGNhMzMgcHkzaworNzM3MDEgYzA2NWYzM2Q5YzljZjliNmFhMDcwMTQ0ZjExMTJmYzk1YjZlYjY4NiBsZWdhY3ktdHJ1bmsKKzczNzAyIDViNjYzOTA3NWM0NzljZThmYzBjNWM0YTViZmNlMmExZmU5MmIyMTAgcHkzaworNzM3MDMgMzJmNzExMjBlYTU1MDQ0ZjgzMjFlZmYwYjM3ODUyZjcxYTI1ODI2NyByZWxlYXNlMzEtbWFpbnQKKzczNzA0IDBhZTEyMDJlNTM2MjBlNTk0Yzg0N2Y2OTUzNDcyOGM1ZWFiOWJiN2YgbGVnYWN5LXRydW5rCis3MzcwNSA0M2ZlY2MzOTQzN2IzMmNlMzFjMmNiNGM1MGU0NmU5MjcwOTdlNTgzIGxlZ2FjeS10cnVuaworNzM3MDYgMDhiNzYyOTM0NDg4YTI1ODVjZjFhODhhOTY2YjE5M2MxNWU4YmQ5ZSBsZWdhY3ktdHJ1bmsKKzczNzA3IDg0OGM4NmY0YmVkNjA2MGJlZWUxYWJkMjRiMGI3MmFlZWY0MGRlZjQgbGVnYWN5LXRydW5rCis3MzcwOCA3MGFkZjBmNjhmYmNhMWNlNzc4ZjNkYzAxMDFkOWRlM2RkNjNjOGQ3IGxlZ2FjeS10cnVuaworNzM3MTAgMmZhZjJmYTJhNDIzNTU3M2E1YTI2OWFmMmVlZDk1ZTkwNTM0NDY4OSBsZWdhY3ktdHJ1bmsKKzczNzExIDk5ZDUyZDhhZDAyNjZlZjZhNDBjYTEzMDUzMTI1ZWNhMjcyY2Y4MmYgcHkzaworNzM3MTIgNGY5MGRkYzZjM2I2NGFjODE4ODA3YjNiOGJkNjUzODBkMzQ3ZDM3MSBsZWdhY3ktdHJ1bmsKKzczNzEzIDM4MzY5OTg0NWM5OWIxYjkzNzE3MDYzMjE2ZmM5MjdmNGNkMWM5ZjUgbGVnYWN5LXRydW5rCis3MzcxNCA2NzY4YjIzNTBjNTc2YTY2ZDIyZDM3YmEyOGE5ZGYyMjZmZTczYTk0IGxlZ2FjeS10cnVuaworNzM3MTUgYWRmNjZiNTIwMjJkYWQ1ODVhNTRiZDZmNDFmNWMwNjFjMDg2MWRjMiBweTNrCis3MzcxNiAzZTAwMWVlYjgzODFiOTM2MWEzNDU2MGUyMGNmNjQ1NGQzMzUxNGMxIHB5M2sKKzczNzE3IGU4OGNkNDJmZjI4MmRiYzZjZWIyZTJhOGUxNTNhYzUyZTIyNmVhOGEgbGVnYWN5LXRydW5rCis3MzcxOCBjNDBkNmZlZDZiNmJhNTVlMmNmZmM5YTU5MmI1OWY5Mjg4ZWQzMTZjIHB5M2sKKzczNzE5IGRkNDcwYjcxMjkwMTQ3MzU2ZTYwYTJhOTMzNzNmODkyYjA2NTQxOTMgcHkzaworNzM3MjAgNmQ1MDc1ZWNjMTRjMGEzMzk2NWY2Nzc1Mzk0NjFiZDFhZTUzZTU1ZCBsZWdhY3ktdHJ1bmsKKzczNzIxIDFjNzY5MmQyNTA5ZmEwMTBkNWUxNGQwN2QzZjBiZDczZWU2MmY4ZmYgcHkzaworNzM3MjMgZjJiNjViZDY3ZGYyNWRhOTdhMmEzNGM0MGYyMGQ2OTVhNzcxN2E3NyBweTNrCis3MzcyNCBlZDJhMzM2MjA0ZDZhYzNhYTE3ZmU5MDZlOGJmYjg1MDJmYTg4ZGFmIHB5M2sKKzczNzI1IDU1MDJmMjU1YzI3Y2VhNTQxMzM2MTBhOWE4ZjY5MjMyNjAwZTI2M2QgbGVnYWN5LXRydW5rCis3MzcyNiA3NjU0ZmE4NTdiMDNjMmFiNjdiOWQ0OTk2YzQ0ODAyMDI0OGQ0YmY5IHJlbGVhc2UzMS1tYWludAorNzM3MjcgOTIzMGMzYTgwZGNhZDM4ZTViMmNjNjVlN2YwN2FmNjdkODUzMDQ2NSBweTNrCis3MzcyOCA3MmFkMTE5N2YwZmY5N2E4M2ZjNDc1ZTYzNzdmNmVmMDE2MjZiM2JmIHJlbGVhc2UzMS1tYWludAorNzM3MjkgNGI2Mjc5NjFiNDQ3MzYzOWY5NGZmYTJiMzZjYjBhZThkZmZlN2YyOSBweTNrCis3MzczMCBhMDdmZDQ3ZGY3NmIzMjY1ZWFlY2M5OGNiOTRmYjAzYjBlZjc0ODBmIHB5M2sKKzczNzMxIGUzZmEyZGRiYjNhMzE1MDkwMTBjZjM1NjliY2E1MzVmOGYyYTg3NzQgcHkzaworNzM3MzIgN2U0MjgzMzYyZDI3N2ZhYWMzZTA2ZWQ1ZWEwOTk5ZTI3ZGYwYzUwNyBweTNrCis3MzczMyBlODA4NTk0NjFkZThjZDBjNGFiOTRlZmZkZjZjY2YzYzE4MjIzZDM5IHB5M2sKKzczNzM0IGIxNjhkY2NlZTYwMjY0NGFhMjc2NjcwODhmNzA5ZWIwZjc0YmQ1ZGQgcHkzaworNzM3MzUgYzI0MjcwZjU0NWI4ZmE2ZmI2ZWE3MGU2MTg0ZTYwYTM2MmIzNDE4ZCBweTNrCis3MzczNiA0M2YyMjVjN2I3N2VjNDczNTg1MGZhOTE3YmRhZGMyMzE1YzY4MTIzIHB5M2sKKzczNzM3IDljZDc5ZGVlNWJjZTRiZWZlOTEzYWM5ZjgwOGM1Y2IxOGMwN2M3ZmUgcHkzaworNzM3MzggZTBlZDYyN2VhNjc5NDg1NDYzMzUyYTBmMDY5OGFjNjk1MDMxMTcxOSBsZWdhY3ktdHJ1bmsKKzczNzM5IGYwZWVhZGRhZjgzYTRhOGZhMGFkNTViOGE0N2JiOGU0MzE4OTE5MTQgcHkzaworNzM3NDAgMTUxYjdkNTM2YjVjNDViYjIzNDVmZDc5ZmZlNzhkMmFkODc3NTM0MSBweTNrCis3Mzc0MiAzNjZjOGE0ZTVhNDZhMGExYzcxYjJkZTk0ZjIwOTI0Mzk1MzVlMWRiIHB5M2sKKzczNzQ0IDc0ZmM0NzZmZTcyODMzZDBmMTU0OGY5YzZhZGVmN2U5NWRiODJiZmYgbGVnYWN5LXRydW5rCis3Mzc0NiBmMmE1MjZjYzNmMmFmMjY3NTA3NDExMThmZTU4N2VlOTc5NGE3NzNhIHB5M2sKKzczNzQ3IDY1MTgxMTRmYjA2MzgxZjk1NzJiMGNjOGU3MjYwYTI0ZWMwZGUwOGUgcHkzaworNzM3NDggMGM2ZmQ1NTYxNDlkYjJmNjc2Nzg2ZDQ2MzA5ODEwYTc2NTQzMDdlMCByZWxlYXNlMzEtbWFpbnQKKzczNzQ5IGNjNDNlOTIzZWY5NjE3ZGVjNWExMGM3Y2JkMGUzMWU3ZmJjYjY2MTggcHkzaworNzM3NTAgNjIxMGRlZGQyY2Y3OTU0OTNhYzJlMjI4OTk2NWFmNmI4ZGQ3MzBlOSBsZWdhY3ktdHJ1bmsKKzczNzU2IDliZGRiYTZlNzY0ZTZkNDU1YzE1NTdiYzdjM2UzMzRiNTZjOTM0ZTYgbGVnYWN5LXRydW5rCis3Mzc1NyA0NjYzMTYzZTY0NDk0MmUyYjk0NjlmZWE1MDgzYjIxNmExMzY0OTFmIGxlZ2FjeS10cnVuaworNzM3NTggNWM4OWI5MjczZTYxMTJmZTdmY2ZiNzZjNDgxNmZlMjM1MTQyNDQ3ZSByZWxlYXNlMjYtbWFpbnQKKzczNzU5IGNhNTNmODZmZTY3ZGIyYzhlMjFkMTA5ODBlYWEzN2MzMjYzNzljYmQgcHkzaworNzM3NjAgNmNjMTg1ZjQyYmY2NmFiNTdjZjQxYmMzODc2ZmY2Nzk0NDdhYzM4ZSByZWxlYXNlMzAtbWFpbnQKKzczNzYxIDNiZGU4MWU3YzlmNDAzY2U4NjFhMGFjMWI1NDUxMDEyMTk1NzkyZTEgcmVsZWFzZTMxLW1haW50Cis3Mzc2MiA1ZDc0OWJkZGE5NzljYWQzYTcwNzEzNzkwN2EwOWZhNGZlMTlmNmJjIGxlZ2FjeS10cnVuaworNzM3NjMgMmE4ZGFmYzg0NTI4Yzc4ZTcwZTIyNTM5YWE3ZTNmNTVlOGUwYzIwNyByZWxlYXNlMjYtbWFpbnQKKzczNzY0IDdkNTE0OTE1NTE1ZTVjNmQwM2VlMjJjMDAwNzc2NTRjMWM2MmQyMjQgcHkzaworNzM3NjUgZGE2OTgwNzk5NjM5OTA4ZjRhZGUxMjBkYTg1OTk3NzRlOWFkNDdkZSByZWxlYXNlMzAtbWFpbnQKKzczNzY2IDFkNDhjNzAxZjA3YzYxNDZmZmNlNzE4NzNiOWNlNmNiZDZjOTM1MDYgcmVsZWFzZTMxLW1haW50Cis3Mzc2NyBlZGNmZTNiOGY3MzYxNjcxOTQ1Mzc2NzNjMjI3ZmE0NDc5NmM5M2I5IGxlZ2FjeS10cnVuaworNzM3NjggZjE0OWY1N2Y3N2Q2ZmU4MDA3ODIzMTkwMGYzMWIyNTA3NjcxNDRhOCBweTNrCis3Mzc2OSBlNWM4MjkwYzc5NDliZDYwMGJmZjYyNjExODY2YmM0OGE0Zjg3ZTI0IHJlbGVhc2UzMS1tYWludAorNzM3NzAgNzRjMGE3ODExNGFlNGUyMzBkYTJlOGI0ZjJhM2UxNzA4YWFjZDEzOCByZWxlYXNlMjYtbWFpbnQKKzczNzczIDU2YzY2NGI5MTU0NWI4MTgxM2ZiYjVjODUwNWE5Y2Q0Zjk4ZjI3MzMgbGVnYWN5LXRydW5rCis3Mzc3NCBmZWE1NzE2NGJkNzkxY2VkNDUyZTVmMzI3NGIwNWQ3MTEwYjZkMDhiIGxlZ2FjeS10cnVuaworNzM3NzUgN2RjMGQyYzRiNTIwMjMwNmIyZWIxY2FiYWNkOTI4ZGVhOGU0NTEwZCByZWxlYXNlMjYtbWFpbnQKKzczNzc2IDA2NTNjMWEwY2IxZTEyNjRkNWUzOGY5NWMxZjA3MzI4MDEzNjhkODMgbGVnYWN5LXRydW5rCis3Mzc3NyAxNzgzODgzZTc2ZDc3OTkzMmFmZjdmMDQ5MWNkMzZlMWQ0NzI2MDk3IHB5M2sKKzczNzc4IGVhNDRhMTY1YjljZTU0NmQyMWE5ZGNlYzk2M2VlNjZiMmM3OTdjZWYgbGVnYWN5LXRydW5rCis3Mzc3OSBmNjVkNjI0NzM0NjViMTU0YzU3MDEzNmI0NjhhYTNmYzEyZmI2ZjBlIHJlbGVhc2UyNi1tYWludAorNzM3ODAgNDY2YTcxZmM2MjVjMWU2ZDMxODJlNDEyMzdiODIwM2M5NGQ3ZTA3NyBweTNrCis3Mzc4MSBmYjU0MmVkOTFlN2Y1NWI4MDdmYWU2MWUzNjZmZWZjZDFlNGI0MDM5IGxlZ2FjeS10cnVuaworNzM3ODIgMjYyNTVmMjlhN2U0OWQzNzcyOWQ3OWUxYWVjYzEyOGI2NmQyNWQ0ZiBweTNrCis3Mzc4MyBjYzZiOTFjM2Q3MTliNjljYjc3YjBmNDA0OTA2Y2M0Y2NlNmNhNDAyIHB5M2sKKzczNzg0IGVhOTMzYzI0YWQxMDMzZDg2MTM0NzMwYzc5YzkzMDI4YThhN2YyODYgcHkzaworNzM3ODUgNjVlNDFiY2JjMjVkNGQwNmM0MDBmMzQzZmUxZGEzMTMwMmM3OTdmNiByZWxlYXNlMzEtbWFpbnQKKzczNzg2IDdiNzU4ZjgwODMzMDViMzMwMjc4NjJiNGEwYTExNzNiOWY4MDMyMWIgbGVnYWN5LXRydW5rCis3Mzc4OCA1MjJhZDllZWQ1NThlNzhhYmYwZWNjMjgxYzRiYWEwNDQ1YWM0OGI0IHB5M2sKKzczNzg5IDU2YTI3NjM5NmUxNWY5Yzc5NTNhMzNjY2EzMTM4ZjBhNTcwMDUxMmYgcmVsZWFzZTMxLW1haW50Cis3Mzc5MCA4NTY3N2EyYzc4NTVkMjIxNDM0ZDRiMGE1MzAxYmJjZTg3NTJiYTQzIGxlZ2FjeS10cnVuaworNzM3OTEgZWVlYjM1ZjI4ODEyY2U1ZTg0YzBiOTg2YjhiYTgyZGVkZDJkY2I0NCByZWxlYXNlMjYtbWFpbnQKKzczNzkyIDg5Njg2NzczYTYxOWE3NzBjZDhmMWUwNDAxODY3ZDBkZjM4N2IwYTQgcHkzaworNzM3OTMgZDhjODNjYzBkM2ZkOGM1NGM3YzU3MjdhZGM4MmEwNjI4NzczMGY2NSByZWxlYXNlMzEtbWFpbnQKKzczODAxIGE1MDE1NzNjMjNmMmE1Nzg2NjE4N2NiNzFhZjYxMTY5NDkwYzc3NTMgbGVnYWN5LXRydW5rCis3MzgwMiA0MjdmYjYzM2M0Y2NlYWY2NjYzMTk3ZjQ1ZmYxNzg0NzA0ZTE4NmNiIHJlbGVhc2UyNi1tYWludAorNzM4MDMgNDZhOWIxOGExYTE3NmUxMTMyMTNlYWM0YjE0MWRhODQxOTZiMTg5ZiBweTNrCis3MzgwNCA4Nzc2M2M5N2Y2OGVhM2YwNGEwOTA4OTcwYTRhNDZmNjRjMDUxYmQ2IHJlbGVhc2UzMS1tYWludAorNzM4MDUgODU0YzA5NDhiMDhkMDQxOGQ2ZTFlNjc2OGVkNDgxZjUwZmRmMzdmYSBweTNrCis3MzgwNyA1OWM2NmFkZTNjMjY4MjJhYTg4ZjlmMDJkMTVkZDBmZTU4MDk4NTNhIHB5M2sKKzczODA4IGZjNmFkZmZmOWE5ZWZkNTI3MTEzYWVmOTlhMDJjNjU0NDUwMzMwYjEgcmVsZWFzZTMxLW1haW50Cis3MzgwOSAxYzUyOTIxOGJhOTY0NDQwMDIzOGY5NjNmMWEwODQ0N2NmOGFiYmEyIHB5M2sKKzczODEwIDNhMjE0NjIyYzk0M2NhNGE4ZDAwZDA0NzM4YjE5Mjk1Nzk4OTE3ZjQgcmVsZWFzZTMxLW1haW50Cis3MzgxMiBmNmZhNWZiMDEwYmY3ZmNhZDY5YjE2MjRmNTJhODc3ZjI1Yjc4MmIzIGxlZ2FjeS10cnVuaworNzM4MTMgMGE0NmUwZTNmYzA3NDg1M2Q4MmM1ZTUwNjRhNDI3ZGFiOWI0NGQ5YSByZWxlYXNlMjYtbWFpbnQKKzczODE0IDdiMGU3OTdmNmIyYzg2ZWMzMGQzZTZiNjE3MTgxNDUwZjdjODZjMmQgbGVnYWN5LXRydW5rCis3MzgxNSBiMmM3NzY4NTdkYzRjODczZmY1OWVmYzdmYzg5ZTUzOTkyZDJiZDUzIGxlZ2FjeS10cnVuaworNzM4MTYgODg0MmY0ZTJmYjFiNzRkYjA2OGRmMDdmZTU5ODRmNzdjYWY2NGVjYiByZWxlYXNlMjYtbWFpbnQKKzczODE3IGRmYjk4NWE4ZGU2ZjY1Yzk2M2VlNGM1N2ExYzBlOWZmNzA2ZThiYWYgcHkzaworNzM4MTggOWM5ZmU5YWFmYmE2ZDZkMDhkZGZmZDA0ZTc3ZTdkNGNjYzlkZGEzNiBsZWdhY3ktdHJ1bmsKKzczODE5IDAxYWY3YjUyZTBkYjU5ZTM1MmYxYzhlMGQ1ZDdlZWRiY2QzMTQ1ODMgbGVnYWN5LXRydW5rCis3MzgyMCBjN2RhMGRjNmViMGM2YzQ0MGIyYTIxYTVkMTlkMjU5NzBiNzQzZmUyIHB5M2sKKzczODIxIDhhN2MyMDY2YTliMmU2MTRkNTIzMzk0NjNhNDA1OGVlZTk4NDk4OWUgbGVnYWN5LXRydW5rCis3MzgyMiA0NjE3ODgzYWMxZjMzZmNlYzQwZmI3YThkYjcyZjViOWU2Y2U2MDM2IGxlZ2FjeS10cnVuaworNzM4MjMgYzJmNDI3MGJlMzYyOTJkNTRmN2U1MzlkNmM5NWI1MWM3OTQzMjJkYiBweTNrCis3MzgyNCAwZTM5MWJmM2ViOWRmOWNhYjhhODY2MjU1YTkxMTBlNGRhMGJiYTkxIGxlZ2FjeS10cnVuaworNzM4MjUgOTgwOGUzOGZkZTcyYjZiMzJiYmJlNjFhZjQ2ZDU0MDU3YzY0NWIyNyBsZWdhY3ktdHJ1bmsKKzczODI2IDU0MGZkNDYxNjNkMWM5YmU0YzViMDFiYzA0NzNkYWI1YTUzYmU5ZTEgbGVnYWN5LXRydW5rCis3MzgyNyA1MmFhYTc3YTVkYmZjN2ZjYTQ5MWZhYmQ4OTFlMGFmOWQxOTNkYzM5IGxlZ2FjeS10cnVuaworNzM4MjggMDhiNThjYmVjZTc5ZWVkZjk2OGIzZDBiNTMwMGZkMTQ2NmI1Y2FiYyBweTNrCis3MzgyOSAwNDkxMjI3ZTU0MGVjZTU5ZjZmYmNlODA3MjEzMDc4Y2I1N2M1OTE4IHJlbGVhc2UzMS1tYWludAorNzM4MzAgODNjZTMzMmEyODM0ZjliZjg0N2RkNzQzZTZjYzg4YTRiMWU1ZThmYyByZWxlYXNlMzEtbWFpbnQKKzczODMxIGY4ODI2OTZmZDEzNGY3NzE3NzRiYjMzYmIzMzg3YWZmZDRhYjZmOTkgcmVsZWFzZTI2LW1haW50Cis3MzgzMiAwNmIzNjBhMzNkNTcxMWUzMTBmMTkyNmQ0YTY1YjE1MGJhNGQyMmM5IHB5M2sKKzczODMzIDdiOWFkOWFhYTkwMjRjMTRmNmY1YjQ0MzQ1OWNiMTFhMjcyMWRhZmMgcHkzaworNzM4MzQgZDExZDg5OWFhYjFkODBlNGFiMjc1OGZlZmQ1YWI5MzYwYTgzNjZlNSBsZWdhY3ktdHJ1bmsKKzczODM1IDdkZDhkYmQyNzAzMzM4M2VhMWI3MjRiMTgwYzg5NDQxNTNkNGVhNzEgcHkzaworNzM4MzYgODY4ZmYzN2Y1YTgwMTI0NzY3ODFlOWI1MDRhZjhkY2ZlNzEwMmI3ZSByZWxlYXNlMzEtbWFpbnQKKzczODM3IDFkZWE3ZWQ2ODY3ZDdjN2QwODUwMmNhMjA5Y2ZlMTY0ZjRlYTIwNzggcmVsZWFzZTI2LW1haW50Cis3MzgzOCA3ODk4N2JjZjFhYmZiMDgzNTRjMjQyODhhYmYxYzM4MDFhNjA5NmY2IHB5M2sKKzczODM5IDdmZjE0MDVjY2I2NGJiNTFjNGUxOWMxOTgyMzcyNTUyMmE4NDFlZTQgbGVnYWN5LXRydW5rCis3Mzg0MSA0NGZjZGJiNjIwMzhiMTE1ZjNlOTcxZmZlOWY2NGNlZWUwMDRjMTJmIGxlZ2FjeS10cnVuaworNzM4NDMgZjc0MmMwODc1Mjg4N2QzODhkMDAzMDU0NDQ0OTQ0YmU0ZWY3MDM2OCBweTNrCis3Mzg0NCA0ZmY0YWE4ZDY1ODMyOTkyMDc2ODMwODNkZDYxNjJkNDBlODJmYjRlIHB5M2sKKzczODQ1IGMyMzM2MTViMzRhYWI4ZTUwNTdhMmU4OGNkZGNiNDAwMTdiYjUzNjIgcHkzaworNzM4NDYgNDY2Y2E5NmJlMTgyNDAwOWEwZDRiN2EzM2EwZmFkYTdhOGJmZDExMCBsZWdhY3ktdHJ1bmsKKzczODQ3IDc3ZWJlYWNjMTA3YTgwNjBlOWYxMjJiNTJlYWU5YzAzOWE4MTQ2YWUgbGVnYWN5LXRydW5rCis3Mzg1MCA4ZTgxNTc0NDVhNTU2NTcyNGYyNzY2MWUxZTRlZDJiMzUxOTcyZGM2IHB5M2sKKzczODUxIGFiNDM0ZjBkY2IxNWQ5ODRlOWU2MzMzZTM2OTk5OGQ4MWZkOTM1M2UgcHkzaworNzM4NTIgYTc2YjM0Y2ZjODk3YzEwMjZmN2JmMDBjZjkyNDNiMTE3NWE0ZGEzMCBweTNrCis3Mzg1MyBhNDBhMjI2NjFlNTA0ODdkMmE3Mzg3OTkzNTQwZWJhYzA4NGE2MGQ3IHB5M2sKKzczODU0IGM2ZjEzOTM0ZjRjNjY5YjQwM2U0ODJkM2MzYWJjMzU3MGE0OTAzMjMgbGVnYWN5LXRydW5rCis3Mzg1NSAxMGE2Y2EyYzBjY2IyNzI3YTI1ODZmYThmNDcxZTNhZDYzNzkxODQ5IHB5M2sKKzczODU2IDI2ZjYwZmQ0N2FkM2ZhNGQ0MjQ4MjdhMjNkMDIzZmEwYTMxNGU2ZmQgcHkzaworNzM4NTcgODVkYjZhNTQzYjNlNDRiYWYwZTYxNjhjMjNjZjE2YThlNTM5NmY3MyBweTNrCis3Mzg1OCAxZmMzN2ZlY2FmOGYzM2Y3NzczMGViODhhMzkyMjIwZjIxZjQyN2FiIGxlZ2FjeS10cnVuaworNzM4NTkgMjQ0NDZkYzg3ZjczZTdkZjA3ZTJmZGI2NTdhMWUxMzA1MWFhNjg4ZSByZWxlYXNlMjYtbWFpbnQKKzczODYwIDA1MjJlNTcxY2U3NDk0ZmE3Zjc1YjBiNmQ2YWJiNzM0MzM2NGVjOWUgcHkzaworNzM4NjIgN2JiNzc1OGU2ZDY0YjhmOTBmZjI1N2NiNzY4ZjczZTNjNWE1NzJjYSBweTNrCis3Mzg2MyA0MjYzOTRkYmJjZWUyMmY4NzExZGU2OWJkYjNlNmQzYmQzOWNhZWZiIGxlZ2FjeS10cnVuaworNzM4NjQgYjQ2YWJjMmYyYTFmYmFjYWVjMDNlOTI5OTljNmZjMTA2YTA2OWM0NSBsZWdhY3ktdHJ1bmsKKzczODY1IGQxZWRhNzBiMzgzZTllZWJkMzlhMGUyMThiZTBhMTQyNGE3MWRhM2YgcmVsZWFzZTI2LW1haW50Cis3Mzg2NiBjMjNhOGYxY2ZhYjhmYWNhMWJjMTA2M2U4YjQ4MTAxOWFjMGE5MDA2IHB5M2sKKzczODY3IDQ5ZmYyMzQyMDkxOWI0MWVjMGI4Nzk0MDI0NmZiMDllODM5ODQyMjUgcmVsZWFzZTMxLW1haW50Cis3Mzg2OCA3NDljZjA2Y2QwNzA5OWE2MGUzZmI1MDAyOGQwY2QxOGMzNWEwNGE1IHB5M2sKKzczODY5IDU5Y2Y1ZjgwOGMyNGE5OTllMzc1MGM4ZGNhYjY4OTQzMWFiMTdkYmUgcmVsZWFzZTMxLW1haW50Cis3Mzg3MCBlOWZjODk0N2M0OWE1NTYzOGE5ZWE0YzNlMzI2YzljZGQ0YWZkMGVjIGxlZ2FjeS10cnVuaworNzM4NzEgMzhkNmU0ZTUxYWYwODk1MWIwZTk2Zjg5NjA3OWU1MGRjZDZiYWQ2OCBsZWdhY3ktdHJ1bmsKKzczODcyIDFjZWY3ZTcxNjI0NzhiOGY4NmZkZmVmOWFjZGRjNGEwNzVmYWZlNzEgcHkzaworNzM4NzMgMzA2MzcxNGZmOWYzMWMwZmFiNmExODE3YTJmODYwZGE2ZDA4ZmMwMCBsZWdhY3ktdHJ1bmsKKzczODc0IDYzOGVhMTM0YWE4MmQ3MmEyYWMyMGJhZjIxOGUwZjRmOWU4MjBiZmUgcHkzaworNzM4NzUgZGU1OGY2MTM4NmMzYjQ5ZTU1ZmMzZGM5YWE0ZThiMjI3NjI1MDUzZiByZWxlYXNlMjYtbWFpbnQKKzczODc2IDQxNjgxMzhjMzcxZTVkMzUxMDRmN2I3NTYwNTc1MjRmMGQ5NGYwYmQgcmVsZWFzZTMxLW1haW50Cis3Mzg3NyA0ZWE4MTMwZWUwOWU4NGI0NDQxNjkxN2RhMTJjMWQ2YzE1MDI4NTk1IGxlZ2FjeS10cnVuaworNzM4NzggODEwMDJjNzYwMGJkNWQzMjAxOWVjODYxMjk5MDhiNTNjODFmMzk4NyBweTNrCis3Mzg3OSBhZGZkNmI3M2QzNjQ3NDFiNGQ4OTc5YTEwNjRmNDM4YTNmNDFkZWJkIGxlZ2FjeS10cnVuaworNzM4ODAgODgwYjUwYmNhMWIxOTIyZjdkMmI0ZTFlYjQ1MzA5Yjg2ZGIzYjlmNCBsZWdhY3ktdHJ1bmsKKzczODgxIDk5ZTMwYWY0MTE2OWYwNWE3NTYxNTJiZjkzMGFmZjhkNmNiNjVlOGYgcmVsZWFzZTI2LW1haW50Cis3Mzg4MiBlZTE1NmVjNWVmYmY5NmQwMGQ1NDYwZWZhOTdjYTAwMDlhYmY0ZWU1IHB5M2sKKzczODgzIDFmNDhjYmQ0MzIyNmQyNmVkNTYxZjc0ODE1YjE4MWFiODU1OWJkZWQgcmVsZWFzZTMxLW1haW50Cis3Mzg4NCA3ZmEyMWJkYzM0OGI0ZjZhMWI3YTgyMmY1N2I1MTQ3ODMzYTU5Yjk0IGxlZ2FjeS10cnVuaworNzM4ODUgMWZkODM5YjgzMzBhMWI2NDUyYTA3Yzg0ZjAxNmYzYTUwNjFkMmFhNSByZWxlYXNlMjYtbWFpbnQKKzczODg2IGRlNmM0OGQ3M2I3MTZlZWFmM2JjYTdjYzBhNTMyMTlhM2I3ZDUxZjUgcHkzaworNzM4ODcgZmEwODBjNGY1MzlhOWVhOThiOWVhNDA2NGY3OTk3OTZiOWQyN2Q5NSByZWxlYXNlMjYtbWFpbnQKKzczODg4IDg5N2JkZWQ4MDAyMDZhNmY1NTIzZDIxOTBjNWFjMWJmMDAwYTNkODAgbGVnYWN5LXRydW5rCis3Mzg4OSA4YTg0NGE1YjE2ZGJiZjk5MzIzNDQwYmM4MzMzNmJlM2RmMTRjOTMyIHJlbGVhc2UyNi1tYWludAorNzM4OTAgODYwYTA2OWQxMjZjOWJhZjYwYWExMDVmMWM1OTVlNGZjMGFkMWY5MyBweTNrCis3Mzg5MSBiM2ZiNWU2YjdlODJkNjNmYmM2N2E3ZTFjMjg5ZGYyYzA2NmQzNDZkIGxlZ2FjeS10cnVuaworNzM4OTIgZjAyZTQ3MTIxOGI3NzkxZDQwOWQ1M2Q3MWJhYzMwZWY1NGY1N2M1NCByZWxlYXNlMjYtbWFpbnQKKzczODkzIDhiZWYzYTI2N2UxZWU4NGYzZjdhNmUzYzdlNGI4YTZlZTJkYzdhYmYgcHkzaworNzM4OTQgZDliMTliMzdmODFhZWNiODMxYWYwZjk4MzE1NGFjNDllODc4NTliMSBweTNrCis3Mzg5NSAyN2I1MTYyNjMyNjkxNmU3NDc2YTE0MmFjZjgwYzA3YzZhOWFkM2JiIGxlZ2FjeS10cnVuaworNzM4OTYgZDYxYzRkY2Y2MTg5OGRiYjcyNWQ5MTI2MDVhMDEwMDljN2VhOWEzNyBweTNrCis3Mzg5NyBkNTk5MjU0YzIwM2JjNjk3YjZiYWJjYjAyY2VkZTdkYzUwZWRlOTRiIHJlbGVhc2UzMS1tYWludAorNzM4OTggYmEwNDU5ZjJjMGNiNDAwNWNkZGIwNDA2ZDgyNDA0OWRkZTJlNWY5YyByZWxlYXNlMjYtbWFpbnQKKzczODk5IGJlNzM2YjQ5MGFiMmM4YmNkNTkyYWFjYjMyZjJjYzI3YjlkZTU3N2YgbGVnYWN5LXRydW5rCis3MzkwMCA0NjhhNDBhZGY1NmY1ZTNmNDU1MDcxZGYyY2IxZTdlM2E3OWFhMDQzIGxlZ2FjeS10cnVuaworNzM5MDEgYzkyYjkzNzc1NTY5MGI5NDRlODY5YTE2MjEwN2FiMmU2YjQzMWY3NiBsZWdhY3ktdHJ1bmsKKzczOTAyIDlhZmVhZTBiYWJmOWM0ZjY1OGZiM2UzYjcyMmQ1NGYyNDk0MWIxNzAgcmVsZWFzZTI2LW1haW50Cis3MzkwMyAxM2M1Y2Y0ODk3OTdjNDViNmJhZDg4YjZhNGQzNTA1MmQyYzJkODVhIHB5M2sKKzczOTA0IDgyOTA1MTkxOTllYzJmYjdhMDllYzdkOGE4NmMxODAyNGQxMDMxOGMgcmVsZWFzZTMxLW1haW50Cis3MzkwNSA0ZjFiMmE0NTdlODNjZTEzNGEzNjBlZTZjYzYwOTI4MmJhZjhkODY1IGxlZ2FjeS10cnVuaworNzM5MDYgMGYwNjViNDhhY2Y5NTEyOWQyNzc3ZTJkMmE3YWMxNzcyNzMzNDA5YyBsZWdhY3ktdHJ1bmsKKzczOTA3IDVmNDUzNTIyNTgxOWJlZTE0OTUzMzc5OTAzZWY1NTUwOGUyNzYzZjYgbGVnYWN5LXRydW5rCis3MzkwOCA1ZDliMzIzMDE4MTU0MjM4OGYwYzYwNTY3ZWUyODQ5NmJiZjJiMzc4IGxlZ2FjeS10cnVuaworNzM5MDkgZGEyYzE0N2U5MjlkMGExZDBiMWIwNjgxMzgwMTgzMjllMjZmOWM4NyBweTNrCis3MzkxMCA1YTI4YTk1ZGVjMTkzMDVlN2ViMGZmNjE0YmNkOTkwMGQ2Zjc3YWFlIHJlbGVhc2UyNi1tYWludAorNzM5MTEgOGE3N2VkZTRlMTc1YThjNjRkMmY3ZTA1YzFlNGY4MWYwMzJlNzI5NCBweTNrCis3MzkxMiA0YWUxZTk2ZTkzNzc0YzA3ZWU0NDFlYTU0Y2FhMmJmM2I3OTk3MjNkIHJlbGVhc2UyNi1tYWludAorNzM5MTMgYzQ3ZWY0ZTEwN2RmOTA4YzcxOGU5YjUxNGZiZDFhZGEzMDZmNjg5NyBweTNrCis3MzkxNCBiNTNlNDJlNTBjNDE1MzJjOGM5MDQzMGFhODc5NmRkODk0MWI0MWQ3IHJlbGVhc2UyNi1tYWludAorNzM5MTUgMzg5OGQ1MjBmMTA3ZmY0MDFkN2QwYmJkZTM0NDY5ODM2NGU3MDMzMyByZWxlYXNlMzEtbWFpbnQKKzczOTE2IDU2MDkzNTJmZWExMjBlNTlkMjE4ZTUwZjY1NGI0ZjVhMmUzYWZkYjggbGVnYWN5LXRydW5rCis3MzkxNyBlODlmYWFhZmEzZWVhMjQ5OWUyYzdkMDIxZDNhYWZlOGM0ZmRmMDU5IHB5M2sKKzczOTE4IDBiMmFiYTdhYzFmYWY2MDA0ZDhhOTViN2RjMjFiMWU5MzA2NWE0MDMgcHkzaworNzM5MTkgYWVkYzIyMGNjOWJmODkxMTIyOWJmZWFkNDcyYTE0MTNjY2M4ZDVmZSBweTNrCis3MzkyMCAwMTEzN2UzYjllYmU4ZjhkNWFjZDA1OWEyMTcwZWM4YWFhYmMzNjJjIHJlbGVhc2UzMS1tYWludAorNzM5MjEgODc3YmQ3ZDUwZDg5N2Y0ZTZmZmE4MmIwZjliODNiYmJhNzczY2ZmNCBsZWdhY3ktdHJ1bmsKKzczOTIyIDZmMGU1OWZhYjYyY2ZmMjU3ZWE3N2FmNTIyNjU3NTMxNTgxNDY5MmQgcmVsZWFzZTI2LW1haW50Cis3MzkyMyA2MjY0MTMyNzI0NjQ5YmE0NjU2NDMyNjg4ZTVkN2MyMmFhYWJkNzNlIHB5M2sKKzczOTI0IGQwYjNhZjU2NWVhYTVhOTBlYWQ0Yjk1ZDRhNTM0ZmViNTY4NmRmMmMgcmVsZWFzZTMxLW1haW50Cis3MzkyNSBlNTNkMDMxZTU0ZDQ3NWM0MDY3MGUwNDE3ODdmOGEzMzIzMThjMzI1IGxlZ2FjeS10cnVuaworNzM5MjYgMDNiODY2MDZjZTBhMmE3OGJjNWU1OTFlMDllMzFmMzYzOWZhZWFmMiBsZWdhY3ktdHJ1bmsKKzczOTI3IDliNWQyODE4ZTJkMGU3MDI3NzljODQxZjg0NWJhYzVlNjJhYTEwODIgcmVsZWFzZTI2LW1haW50Cis3MzkyOCAxMzkzNDdiMDBjMThmNzljMDE2OTY5ZWQxY2Y4MzY4ZmM3NGNlZGEyIHB5M2sKKzczOTI5IDJmZDc0YzUwMjYwMDM2OTExMWRmZTAyYjFhMzY5ZmEyZGQ3OGNlOGQgcmVsZWFzZTMxLW1haW50Cis3MzkzMCAxNGNkMTlmZWFmMjBkODU5MGU1ZDZkN2NiZTJhZGRhOTdhYTMwMzFkIGxlZ2FjeS10cnVuaworNzM5MzEgY2RkZDUxNjRkYjAzY2E3NGUwYjNhZGEwNDJjNjI3NTM2ZmY0YTNhYiBsZWdhY3ktdHJ1bmsKKzczOTMyIGIxYzYzNzJhODA5MmMzZWI4NzFjNzk1YWEyNmEwZTIzNTE3NzRmODEgbGVnYWN5LXRydW5rCis3MzkzMyAyMjE3MThlNzU3YmFmYWQwNWJmZWU1MmJkMzlmMzc5ZDhlNjA5MjE4IGxlZ2FjeS10cnVuaworNzM5MzQgZmVhYWE3Y2MwMmQxMjJjZjAwYmUxOWI5Yzk0YTcyN2U3OTk1YTY1NSBweTNrCis3MzkzNSBlNTM2YTNiM2E4ZDBlNWIwYTczMTI1ZjJhZjM2NjExYzRkMTJkYmU3IHJlbGVhc2UzMS1tYWludAorNzM5MzYgZTIwMGVlOWNjYzRiZWQ2MTI2YmYyZGQ2Y2U2M2EzYTVkYjhjNTkyZCBweTNrCis3MzkzNyBhY2FhMGM4N2Q0MDFmMzU5M2MzYzdkMTAzOTkwMTRhYzczODljYWE5IGxlZ2FjeS10cnVuaworNzM5MzggN2IyNDY5NDVmYzhjYjBkYjU2ZjYyZDBlNmY0ZjQ4NzJjMmRhZjU0OSBsZWdhY3ktdHJ1bmsKKzczOTM5IGIyOGRhZGQyMGQ5YjdiNDllZDA2YzY5ODBkOWFjNjBhYTI0ZDJmNWIgbGVnYWN5LXRydW5rCis3Mzk0MCA1OWMzNGE5MWM1NGQ5ZmQwYzQ5ODdiYjUxM2VlMzQ2ZDFlMmI1ZDQ3IGxlZ2FjeS10cnVuaworNzM5NDEgODQxYTFlNjhiNGVkY2NjYjIxODRmYmNiMjFjNWYzZmMzOThlMDk3MSBweTNrCis3Mzk0MiA2N2Y1ZTAxZDVhNmE3MWUyNTc4NzZkZmUwNWM1YjE2ODVjNjdlZDg0IHB5M2sKKzczOTQzIDgwNjYxNjA4ZDRlMjA1N2NjZGM0NzQ3ZDEyMThiZDEzNWU1MDFkOWMgcHkzaworNzM5NDQgNGM1ZTA3NWY1NDczZGE1NjNjZDllYTQ2NTY3MjJhZjdkYmI5OTJlNSBsZWdhY3ktdHJ1bmsKKzczOTQ1IGYzYmYwODMyOWYwNzk2NmI1Y2UwOWY0MmZmMjA1NjAyZGY2YmZhNzcgbGVnYWN5LXRydW5rCis3Mzk0NiA4MjJhMDJiNzFiYmViMmMzN2I3YjljOGI0NjE0MDg1YTdmYjIzOGQxIGxlZ2FjeS10cnVuaworNzM5NDcgYzY0ZjlkYzNjNmE0OTg1YjM5NDVkNDc5NzQwMjNkMzRhNDM3YjQ3NCByZWxlYXNlMjYtbWFpbnQKKzczOTQ4IDU3YjM1OTFmMGNiMjMyYTQ3ZjI1ODdhOTcwZjMxNzE1ZGY2ZWRkOWUgcHkzaworNzM5NDkgNTZjY2VmMzQyMGU3ODEzMzM2MDliOTE1NjMwZjg3M2E4YjcxOGU0NCByZWxlYXNlMzEtbWFpbnQKKzczOTUwIGQyN2ZkYzcwMzc5YzI2YTEwOWFjNjZlZWZmZWI2MzFmNjk0ZjBiZGUgcHkzaworNzM5NTEgMGI1MGU2ODQxYTgxYmRiZThlODk2YTVjNDliYTA3NWQ5MDAxMDVjNCBsZWdhY3ktdHJ1bmsKKzczOTUyIDg2ODIwMjI1YTRkNWFmYjc2MmRlOWFmZDAzNjI5OWQ4MDA4NTAyNjYgbGVnYWN5LXRydW5rCis3Mzk1MyBhMWI3OTc3OGYyMmUzZTI0Y2EzMmM1NTljOGYxYTAyZjVhNzIwMTdhIHJlbGVhc2UyNi1tYWludAorNzM5NTQgM2RhZGYzNDUzZDA1NTA5ZDY4YzRlMzU4NDA2MjZkMTRkYTc3MGRiOCBsZWdhY3ktdHJ1bmsKKzczOTU1IDkzYjQ4YWI5MGVhZDBlNWM1ZjZhYTZiYzc2MmYzMWMyZmNmOGIyZWQgcmVsZWFzZTI2LW1haW50Cis3Mzk1NiAxMDI4YTk5MWI2OGVjM2U2YzZjZGFmMzgyMDk3ZTA0NWYxYmE0OTU5IHB5M2sKKzczOTYxIDBjODEyODcwYTk3NWVjMGI4Njk2N2YxZTlkNGRlNDVhOTFkNzRjMDEgcHkzaworNzM5NjIgMjYzMGMwNzViNTdjYjM1N2NhYTM5MjRjMDA4OGU0MGI2MjE4OTRlOSBsZWdhY3ktdHJ1bmsKKzczOTYzIDQ5M2M3Zjk1MGEyYjliNWJhODE1ZGQ1OTVmYzM1Y2EzOTJjZmUwMTUgbGVnYWN5LXRydW5rCis3Mzk3MCA4NDhhNWFjOTI0YjliNTAwOGIwMDVmNDg4YzUxMzUyYmNlODZhYmM5IGxlZ2FjeS10cnVuaworNzM5NzEgMmEzOThlZGViMDhkOTUzYzQzNjI0Njc2ZjkwMzI3YjBlYTE1ZTBlZSByZWxlYXNlMjYtbWFpbnQKKzczOTc1IGQwZjIyNTg2NWJlNjU2M2NiODMwYjBkMmEwNDRkNGRhNjcyNTA2MjMgcHkzaworNzM5NzYgMzE4NzYzZWNjNGIzMDQzYTYxMTk2ZTE4MjdiN2U5N2VjZWM3MzYxNSByZWxlYXNlMzEtbWFpbnQKKzczOTc4IDU3ZTlmMmQzNjdhODFkMzViZDdiMmQwYTYwYTI2MWFmYWU5MzI0MGYgcHkzaworNzM5NzkgYWNkYTY5MmE4NDdmY2U5ZTk1Mjc3NjViNjEwM2FiYzU5ZDQ1NDE0YyBsZWdhY3ktdHJ1bmsKKzczOTgwIGYzYjljNTBhN2FhZDVjMDBmMGQ1YjMyNDc0OGIxYzA0NWMwOTkyZjUgcHkzaworNzM5ODIgODhhY2MxMGNhYTZlMTFmYmNlOWFmN2Y0OTVjMTQ1ZmVmOGYyYWI2MyByZWxlYXNlMzEtbWFpbnQKKzczOTgzIDViZTA0ZTIzMTdlOGQxMmE4YmUyODI1NzJlZTc3ZDIwYWEwZGVhMGYgcHkzaworNzM5ODUgMDEwYTQ4ZTk0MjIzNzIyN2YwNzMzMzE1ZTIxMTMxNjdkYmE1NzEyYSBsZWdhY3ktdHJ1bmsKKzczOTg2IGQwNzZlNjVhOTBkNmMxOTM4NWE5NWZlNzljZWQ4NWIzZTU0ZTg5MmEgbGVnYWN5LXRydW5rCis3Mzk4NyAyYjY3Y2I5MjViYjE5ZTg2OTlmNDk2ZTQwOGZhY2Q0MTI4YmNhNTFkIHB5M2sKKzczOTg4IDk1MDdlNGI5Yjk4ODU4ODUyOWQ3NTM5NmI5MjBjYTYwYWNkM2EzNzUgbGVnYWN5LXRydW5rCis3Mzk4OSBiNzRlMzkyNjI4MTUxM2EyMDkyMDE2ZGQ0ZWY2NmE2ZjM2NDkwZjkwIGxlZ2FjeS10cnVuaworNzM5OTAgYjFkMzRkZmZmZTJkZTAxZWM4MGQ1MTQzNWY1MDU4MzU5OGVkNDdhOSBsZWdhY3ktdHJ1bmsKKzczOTkxIGUxNzJhODg2NTBjZjlhZTU3MTZkZGJkMWU3ZmViNjRmYmU1Mzk1YmIgbGVnYWN5LXRydW5rCis3Mzk5MiBiZDc0ZTJjOTczNDg5YTg2ZjFkZDg3YzQzNzRlMDQyMjA4MTEwOTdkIHB5M2sKKzczOTkzIDRkMmI1MzI1ZWU0OGU4NWRjMjJiOTI4ZGM0NWRhZjgzMzczZTcxOWMgcHkzaworNzM5OTQgZGFhYmNiZjI0MTVkZDBhMzg5MzllMTJmNGMxZWIxZjhkN2UyZWM1NCBsZWdhY3ktdHJ1bmsKKzczOTk1IDMyZDQ4NjYyYWE1ZjM2MzA1Mjg2ZTM0YmI1YzM0ZDYyN2U4YTU1MDMgbGVnYWN5LXRydW5rCis3Mzk5NiA4ZWJiOTBkYzNiMDQ1MGIzOWJkOGE5YmQwYjI4NWVmYjBhZTA5OTFhIHB5M2sKKzczOTk3IDdiZWM2YjQwNzRmNTg0NzFlMzQxN2VhZGU1NTJjZDk1OTQzZTE1YTMgcmVsZWFzZTI2LW1haW50Cis3Mzk5OCA3MzdhNmIzMzc1MDU2M2MwMmY3NTA2MTMwZTJlMDVhNDZkMTNlOWFmIGxlZ2FjeS10cnVuaworNzM5OTkgNmQ5NjI1ZGQ5MmU3ZWJjNWFjZjU5NDE0OTJjZjUxZjFjMGI4NTdiNCBweTNrCis3NDAwMCA0MWViMTEyOTAxNDJlNzYzNTYyZjI4NTM0YzM0OWIxOWU1NWM3NTE0IGxlZ2FjeS10cnVuaworNzQwMDEgYWEyMmU3ZjMyNTE3ODJhN2NlNmY2MGY0NTQ2MDlhODg3N2ZmNTdiZiBsZWdhY3ktdHJ1bmsKKzc0MDAyIDcyYzVlMTczYWFjNWE2ODFjOTU3NzBjZmY4NzkyMzAyYzNiYzM1YzQgbGVnYWN5LXRydW5rCis3NDAwMyBlZjFiMTE5ODMzOGJmYWQ3MDQ4NzhmMDVlOTQyN2NmYzc1ZTdkMzFhIHB5M2sKKzc0MDA0IDEyNDM5YTAzMzk4OGE0ZWUyMTgxMWI0NjRjNzczOGQxY2ZmOTA3ODQgcHkzaworNzQwMDUgMjllN2E0ZGQ0MTdjYTI1NWZmZDg5Nzc3NDAxMjhhMGZlNTgzZTU3YSBsZWdhY3ktdHJ1bmsKKzc0MDA2IDBlZDQwNWMwNWNjMzA0YmZmNTdkODRmZTdhNWY0MmI4M2ZkMjJmOTggbGVnYWN5LXRydW5rCis3NDAwNyA5OGJiYjk2MzQ2NzJhNTgxZGZjOTkwZjdjY2QxMmNjMDdhOWVmMWM1IGxlZ2FjeS10cnVuaworNzQwMDggMjA3M2E5ODljMDE5MjZiMTMzZmYyMjI2YTgwZGVmMTc0ZTQyZTk1ZiBsZWdhY3ktdHJ1bmsKKzc0MDA5IDhjNjYwNmIzMmNiMWM5MGYzNTBlNjViMzgxMDM0NjBhZDFkNWJkODQgcHkzaworNzQwMTAgODdiMzEyMWNlNTgwZWYyMTNkY2FhMmJjMmNlYzk0MTk5ODA4OGZhZSBweTNrCis3NDAxMSA5MzkwNmIzOWZmZWNjNGIxNTA2ZmZjNzhmZWQ2MzhkMGFkNWQ4Nzc2IGxlZ2FjeS10cnVuaworNzQwMTIgYTUwZWI1OTZhNmQzZDFjMmU3NDAzNmZjNGNhYmQ1OGY0NzFiNmY2NCBweTNrCis3NDAxMyBlZGM3MTRmZmU2Y2NjM2EzM2I4OTRlY2ZiNWRjOTQ1NDcwMGZjYzFiIHB5M2sKKzc0MDE0IDNhMzE2MjQzYmQ2YzZmNWY2MzUxMTRhZjA5MWE1NzJhZDhkOGRkYjYgbGVnYWN5LXRydW5rCis3NDAxNSBhODkyMjcyM2E5MmQwMDFmMjQzYzQ2YTljYWI4OGRlNzE1NzYzMGQxIHB5M2sKKzc0MDE2IDczZGNkMTgzZmFlMmQ2ZDY4OGE0NTkzNjcxNTJhMjZiMDExYmJjNzAgcHkzaworNzQwMTcgZDEzNDBhNTBhMWIzMDc2YTVkNWE5MjA1YTZmNjA3Y2MwM2JlZmM3YiBweTNrCis3NDAxOCBiZDQzMWEwZTY4Mjc0OWY0MmQ4ZTk5YWU0NWMwZTQ2ODlmNDIwMGVkIHB5M2sKKzc0MDE5IDFmZDBmNTY5N2I0MGRiYzFiZmUyZTQxMTY1ZjMzYjViNDMyNDVlZGQgbGVnYWN5LXRydW5rCis3NDAyMCA2OWEwNGRiZDVmMGEyN2Q5NTA2OGQxY2Q2ZWNiODI3MzExNWU1NTQ5IGxlZ2FjeS10cnVuaworNzQwMjEgZGMwODRmNDAwM2JiYmY2ODBiYzdmODQwODg3MzFhNzg0YzEzNjIxOSBsZWdhY3ktdHJ1bmsKKzc0MDIyIDk4MjcxNDY4YWIwN2ExODlmNjc4Mzk0YmQzOWJiOGRmZjI0ZTQ1MDAgbGVnYWN5LXRydW5rCis3NDAyMyAzMzcwZDYwOGU1YWE0ODU2MzhjZTljMjBiOGI4MWE5ZGM3NTg4Y2I5IGxlZ2FjeS10cnVuaworNzQwMjQgMzg2NDUyYjJkOWQ1NzMzNzg0NjQ5YTk3ODM2Y2YwNDEzNjVkMzkxOSBsZWdhY3ktdHJ1bmsKKzc0MDI1IDA3NzUwYzU1ZmQ1NWZiODA1MTQ2MTM4N2IyNmJlMzUzMDAwY2E2NzAgcmVsZWFzZTI2LW1haW50Cis3NDAyNiA5YjE3ZDU0Njk4MjFiM2Y4ZTFlMWQzMmVlYjY2YjhiMWRjMTY5Y2JlIHB5M2sKKzc0MDI3IGY5NzhkZGRiOWI3MWZkODhiZGNjZTBkZTY4ZjljYWQ2Nzk0MGU4ZWMgcmVsZWFzZTMxLW1haW50Cis3NDAyOCBhYjYzYTI2MmExMTNiOTU0ZWIxOWM3Y2UyOTI1OTM0N2RkMTgyNjU3IGxlZ2FjeS10cnVuaworNzQwMjkgN2YxNTQ3ZjY2Y2NmMzBjMWUxYmYwMGU3N2VhODhkNDAyMGRkY2RkMCBsZWdhY3ktdHJ1bmsKKzc0MDMwIGZjOGZiOGVmZjIwZWM4NjM4MDhlN2M2NmU2ZDYzNDMyMGRhMzFmZDkgcHkzaworNzQwMzEgZTgzMGU4M2YwZjVhZTRiYjg2OTk4OGM0MmY4YjljYjVlNGMxMDNlNCBsZWdhY3ktdHJ1bmsKKzc0MDMyIDBjYTgwYTJjNzdmZmRlODg1NDM2NzIyODk4NzFiM2U4NDA3NGEwNWYgbGVnYWN5LXRydW5rCis3NDAzMyBjZmEwMDRjMWZkOTVkNzYyYTAzMThiNTE0YzRiMjI5MzY3YWQ0MTUxIGxlZ2FjeS10cnVuaworNzQwMzQgYjE2YWU2OWQ2NDg0YTcwNTIzYjYxOWJiYmQyNGU2NjMyMGYxYzYwYSBweTNrCis3NDAzNSBlNjIxZTNlMzE5NmVhNDFmZGMzMWIzYjIwYjE4Y2M4YTcyMWY3MTkwIHB5M2sKKzc0MDM2IGNiM2FhOGJjZDdiMDJkOGEwMWU3NmJkNjlhNWY0ZDI0ZTFiNGI3ZmEgcHkzaworNzQwMzcgZGNlNDdjMTBkM2ZhZTFmZWYyZmMyZmY1MDgwNDgyNzU1MzYxYjU4MCBweTNrCis3NDAzOCBkMjA3OWQ1YWRjZmFhNDRhMWVmNTFkYjVkNjcyZmUzMDZkMWY2YjczIGxlZ2FjeS10cnVuaworNzQwMzkgN2Y2ZDAzYjU5ODY1YzMxNzBiMzEwOGZmM2IzYTRmMjZkOWNlMjdkYiBsZWdhY3ktdHJ1bmsKKzc0MDQwIDJkYWI4ZDYzZWI1NTU2ODNlYmQ0OWMxODBhMmNjM2FmYjc4OWIxODUgbGVnYWN5LXRydW5rCis3NDA0MSA5ZTc1MjllZjQ0ZDQzNWQxOThkZGMyNjI3OTg2ZDUzNTMwZWZkOWU0IHB5M2sKKzc0MDQyIDEyYTEzZTUzOGExMWQ5OTRmOGZkNTZkY2YyZDE3YmM0NmZiMmYzMjEgbGVnYWN5LXRydW5rCis3NDA0MyAxMzBmMTkxMWQxNDY1YjQ2MDQ0ZTliOTAxNjYxYmMzMmRkZTU3ZWQzIHJlbGVhc2UyNi1tYWludAorNzQwNDQgMjdlNzBkODFhZDU3NWViZTIzMWE3NjRiZGJlMWQ0YmYzYzg5YzFmMSBsZWdhY3ktdHJ1bmsKKzc0MDQ1IGI3YjgyNmY2NWU3NWRiZWNmNWE0NDdjOGQ5NjJjZTVlYTEzODMzNGIgcHkzaworNzQwNDYgOTA2ZWQxMTljYjE5YjQyY2FkMjQ3ZTQ1NzI0ODk0YTVlYzZkZDg2YiBweTNrCis3NDA0NyA4NTExYzdjMGQzZWZmYmNiZmViM2Y2Y2QwOWNlY2NjOGFlNjljNWZiIHJlbGVhc2UzMS1tYWludAorNzQwNDggMDFhYmNkMzczMDE0NWY5M2RmM2IyZmQxOGRkZTEzNDdlNDg5ODQ5YiBsZWdhY3ktdHJ1bmsKKzc0MDQ5IDEwN2U0ZmI5MzYwNWZkODkwMTUxNzZmZWY1N2YwY2U1MWNiZDc0ZjEgcHkzaworNzQwNTAgMWVjNWMyNjZkMzkwZGY2MWZhODkyMDFjYTQxYWNlZWE2YmMwYjZhMiBweTNrCis3NDA1MSBhMjliYWJiNTQ4ODRiNTE2ZGFlNjE2MThhYzRjNGM1YTM2ZDI3ZDU4IGxlZ2FjeS10cnVuaworNzQwNTIgNWQ3ZDg1MjQwNDI2MzJkM2Q5MTZhYjM1ZWU0M2Q2MTEwM2Y5ZmMyYiBsZWdhY3ktdHJ1bmsKKzc0MDUzIDU5MzkyMTgwYmY0NDVlY2UxYjhlM2FiYWVlNzRlNGJiMDFkODc2MWUgcHkzaworNzQwNTQgYjQyODdmZjE2NGU1YmM5MzkxNDk5NjQ4Mzc1YTM1NGViZDcyOTM0MiBweTNrCis3NDA1NSA3MjRkZmVhYjNlOWI5MTU5MGFhZGUxOGNlODc5YjM4MDM3ZDc0MTdlIHB5M2sKKzc0MDU2IDJmY2RmOTY3Nzk3ZGU2NTQ2OWU5YWJmYjhjMjQ3ZGI1OTcyODJiMzggcHkzaworNzQwNTcgMWM1N2RlYmY5N2JjMjc0ZDE2ZmEyMmVlOWZmOTgzZmJkOTJhMDAyMyBweTNrCis3NDA1OCBjMDc1Yjk3NGMzNWNhNGQxMmZjOTE4ZjRiZDJmZGNhNDA3NjdlODAwIHB5M2sKKzc0MDU5IGEwNjE2OWE4NzJiMzQ4OWNiYzRiNWRhYTAxMGU1NDNmZTVlM2Y0OWIgcHkzaworNzQwNjAgMWRiOTdjZTRhODUwYTBjZTFjMmRkNDU3M2Q4ZGRlNWVjZTdlOGRkYSBweTNrCis3NDA2MSAyMGNjMGVhYTg5MjY0NjdlYmFiZjdkZDdlM2JkNGRmYzE1NTJjZjc3IHB5M2sKKzc0MDYyIDc2M2U1MTI5NjVmYTc4MDI0YWNiOTFjOTdjYzhiYTc3MzkwZDY0YjAgcHkzaworNzQwNjMgZWE4ZmY4ZDYyOTI4YTNjYmM0NDZkMGUyNDJmZmNhZTgzNTlkOWVmNSBweTNrCis3NDA2NCA4YWE4MGI3MTVjNTFjNzZlNzRmOTMzZjRhYTkwMzViNjJjYjc3NmI5IHB5M2sKKzc0MDY2IDM2YTdlOTZlOTBmYjNhMjY1MjA1YTUzN2U2NzZkNmMwNWI5MmY1OGUgcHkzaworNzQwNjcgZGI1YjNkMzE4NjQ5MzNiOWFjM2M1ZGYyMzNlMGM4NjdkODMzNTBhMyBsZWdhY3ktdHJ1bmsKKzc0MDY4IGZlMmIwMjZkZGYyMWNkMWU1ZTdkNmZhODRlMmUxMjNhYTk5ZjgxMTIgcHkzaworNzQwNjkgZTIzOTFkMzYwYWMyNDc5MTljNDU3NTNiOTFmMzljNTgxMzc4YmM0YiBsZWdhY3ktdHJ1bmsKKzc0MDcwIGJjZGI3YjE4N2ZhYTA1NDNjYzRkYTE2ZTc5ODg0NWRmMzU3NmZhYWYgcHkzaworNzQwNzEgYWIyNGZmNjQ2ZGE4OGY1NWM0M2JlNWM0NTNkZWQ4ZDdlNzhiMzRhNCBweTNrCis3NDA3MiA2ZTA3NWVlNDhkNGJhZWEyMmZlYmYxY2EyNzQ3MjBlMmE0Yzg4MWFkIGxlZ2FjeS10cnVuaworNzQwNzMgYmE3MzhhZjE0ZGZjZDQxYjMyZDU3YzUyNjYzZGM1MjY3MDA4YmFhNyBweTNrCis3NDA3NCA1OGI1MTJlZGZkYmI0MWFkMGZhYmY3ZWVmOGM2ZWE4MDhiYWEwNzNkIGxlZ2FjeS10cnVuaworNzQwNzUgMjU5MTM4YTk4OGE1MjcwYTFkODcxOGRjOTIxZjhhNWZmNGE2ZTRjZSBsZWdhY3ktdHJ1bmsKKzc0MDc2IDVlZTJlOTY1ZGE2ZWRlMTMzYzIxMDExNTUyMDllYzAzMWZjMDdhMjkgcHkzaworNzQwNzcgMGFhNTMyMTE3YTRiYjY5ZjA3YzYzYWU0N2M1ZWE0MzAzY2EzYjc4MSBsZWdhY3ktdHJ1bmsKKzc0MDc4IGIwNTEwNTViNTlmMTk0MmNjYTNiNjE1NjQ3MmQ4MTA3ZDc3OTMyMzIgcHkzaworNzQwNzkgYTE5ZWI5NjM3ZmY3ZWRmZmExNWE2ZGQ2OTA2YThiNDZkM2ZmZmEyNCByZWxlYXNlMzEtbWFpbnQKKzc0MDgwIDlkYzVhYTYyYmU3MmZmODdiZjhmOTk5MzU2ZTIyZTVlMWI5MTkwZjAgbGVnYWN5LXRydW5rCis3NDA4MSA2NmJhYmU2MzEwMzdmNzQ2Nzc3MWFlOTRmYjQ3YjE0MDYyMmY3NjBiIHJlbGVhc2UyNi1tYWludAorNzQwODIgZGUxZDUyMDY5ZDJkZmNiNzI2Yzk4NTJkYTc3NGFhNjU3MTBkZGM2OSBweTNrCis3NDA4MyAzNzU1NjNjNmQzMjQ0YTE5ZDc4OWNjMDZiOTVlNTM4Y2VkMjc1YjdjIGxlZ2FjeS10cnVuaworNzQwODQgNTRiMWY4MDI0YmM4M2MzNjM0ODA0ZGRmNWE4OTBkOTI1NmU1OTJkZCBweTNrCis3NDA4NSBmMjA3MDU4NzVlODA2NTA5NzUyYTZlNTMyYzRkNzFhNDc1YzQyZGE1IHJlbGVhc2UyNi1tYWludAorNzQwODYgYzcwNDIxMjcxOTZhNTE1ZmFlZjI5ZTJlMDRjY2VkMjc1MjlkYzZjOCByZWxlYXNlMzEtbWFpbnQKKzc0MDg3IDRmMTc4ZTU5NTgxMzEyZTc4ZGUxN2U0NzYxMGYyODRjOWYyZjZiYjYgcHkzaworNzQwODggZWUwYjlhOTMxYzk0YTQ5NjQ0N2E3ZTM3OGIwOWRhOGViZjlkNGEwOCByZWxlYXNlMzEtbWFpbnQKKzc0MDg5IGMzMzZiMzAzOGQwNTQ2NDJhZTQ3N2EyNjM3MTNlNDFlMzMzYjhjYjAgbGVnYWN5LXRydW5rCis3NDA5MCA0NjEyYTJhY2RmMmY2MDdkNzQzMmIzZGVlYzI5MzdkYjU1MDBkZjczIHB5M2sKKzc0MDkxIDYyMzZhZGIzNjYxODFkNjI1YmEzZGM2YjY1NmY0OTBhMzA5MTk4NDEgcmVsZWFzZTI2LW1haW50Cis3NDA5MiBkNjBiNTU5ZWVhZDlmMjk3NDg3OWRmNTk0ZGMxODljN2I1OGQ2Y2M2IHJlbGVhc2UzMS1tYWludAorNzQwOTMgMzY2MzZmYTU0ZjMzMzM5YWNiNzY1YmE2ODBlNjM1YjAxZDY0YmQ2NiByZWxlYXNlMjYtbWFpbnQKKzc0MDk0IDZhZDI1NjEyNDA4MDQzYTBkYWJlOWNmZDdjOTY4MGU3M2I3ZDBkMzkgcHkzaworNzQwOTUgZjMxMTM5NTQ4N2M5NzBmMmVhODUyYWE5YWU3MDUxYmEwMDg2MDM5MiBsZWdhY3ktdHJ1bmsKKzc0MDk2IGVjMWYzMmI3MmFiZTgxMzI2Nzk0ODUzMDM0N2JmNzcyOTEzN2VmYmEgcHkzaworNzQwOTcgYWY5NzdlOTRlMmZkZDRlM2M3NGVlNTNmMmVkZTY0YzI5OTZmYWVkNyBweTNrCis3NDA5OCAzYTYxM2UwMGY2NmQzNDhiYzNjYWUyMmFiMmI2NTgxYjE5Zjg0OTI4IGxlZ2FjeS10cnVuaworNzQwOTkgZTYyOTU3YTBlZTE0MjM3ZDAzOWZjYTYyMjgwMTE2NzRjZmNlMjY1YiBweTNrCis3NDEwMCBlZWFkNzgwN2RmN2NjMDc4ZmNlYTk5YzVmYmU5YzFlNmExODRlY2VmIGxlZ2FjeS10cnVuaworNzQxMDEgYzBhY2FlMTliNDg3Njc2YTc2MTc3MDg4MGI3YTM5NmJkY2RkYWMzZiBweTNrCis3NDEwMiBlYWY0YTAwNDg0YmRiZDgzZWQwMjEyZDBlNGE0N2NmZmU3YTRhZmEyIHB5M2sKKzc0MTAzIGFlMmMwNTZjNDZkMzQ0NzAzZTJkOWJkNTNiZWYyNTBhMWQ4Yjg0ZTUgcHkzaworNzQxMDQgODFjOGIzMDQxNjNlM2FkYWQ4ZjVjZDI4ZThhZDYyODdkOGRiYWRhNCByZWxlYXNlMzEtbWFpbnQKKzc0MTA1IDBhZjk0MDdjODhkMmU2ZWYxYjQxMTUwN2NmMzI0NzdlZDg5ZjhiZDMgcmVsZWFzZTMxLW1haW50Cis3NDEwNiA1Y2Y2OGQzYjY1MzI0ODk5ZjVmYzQwZDBmZjQ5M2E0OTIwZGQ1NDdiIHB5M2sKKzc0MTA3IGE2NDBiYjNiOWMyYmI2YmQyYjcwYWRkNzY4ZWQzZGUyZjIxYzMzMTMgcHkzaworNzQxMDggZjUwMjkwNzk3ZmI1MGE1MzBkODdiY2RkZDcyNzk2OGVmNjcxMDQ3ZSByZWxlYXNlMzEtbWFpbnQKKzc0MTA5IGZlNzk4OGE1NzBkZmYyMTNlMDA3ZDUyNjgzNDMxZGJkNTk5OTFhZGEgcmVsZWFzZTMxLW1haW50Cis3NDExMCBkZmFmNmRlMmM4Y2U3YTM0NGVhODdmODhlZjcxYTJkYjkwY2VlNjVlIHB5M2sKKzc0MTExIGQ4MjZhMGNjMmMwZTBlNjFmNzlhYjMyZTE2NjFlMTIzZGZiY2YyZWEgbGVnYWN5LXRydW5rCis3NDExMiBkMWQ4MjU0YzRlZDVjNmY4ODljY2Q0OTRlZmU1NTRjMmE3MzBhYzI0IHJlbGVhc2UyNi1tYWludAorNzQxMTQgNzMyZjcyY2JhZjdkODRjY2NmNjEzZDVhZTkwOGVlYjExZGNlZjMzMyBsZWdhY3ktdHJ1bmsKKzc0MTE1IDBhY2YyNDkwMTVjYTRjYjNkMDk1ODEzM2Y5MmNiZDU5ZDdjOTUwZGQgcHkzaworNzQxMTcgMDFiNzYzY2ViNDA4NzNlODkzNGY3N2Q4MzlkZjVlMzllNjU0MTRiYyBsZWdhY3ktdHJ1bmsKKzc0MTE4IGFhY2RjNzM1ZjE5YjE4NWMyZmQyMTE3MDFjMWE0NjNkNjdlN2NmYjEgcHkzaworNzQxMTkgN2JmOGZjMjAwMzdhMWNiMjFiMDNkMWRmMDg4NjM1MmE4OWViMjFiOSBsZWdhY3ktdHJ1bmsKKzc0MTIwIDg2MGU3MTJlMzJlMGRmZjhiZjMwZGZlZDJkYTNmYWJiNjY5YWJiOTQgcHkzaworNzQxMjMgMDFlMmU5YWRkMDcwZmI0MjIzNWJhOGZmYmFmZDI4MTQyZTUxY2E1ZCBsZWdhY3ktdHJ1bmsKKzc0MTI0IDM4MzJjZjAzNjg3YmIzOTUwYTVjMjVhZjkxZTNhOTA2MzBlODJlNDcgcHkzaworNzQxMjUgY2M5ZmVmY2RkNTMzYzRiNzNhN2YzNDJhODBiYWU2MjNmNWY0NWYyZCBweTNrCis3NDEyNiBjZmFiMTFkZDNlNzNlNTg2ZjAxNDM5MzRiMjIwNDM0OTllN2Y0MmZlIHB5M2sKKzc0MTI4IDYzZmQxN2JhOTg3NTMwNjI5NzhiYTExYzU5YWVlOWMxMjJiNzA2OTUgcHkzaworNzQxMjkgMmNmOWQxOGQzZGY1NGM5ZmM3YjE4ODcyOGRiZDFkMzE4Yzg5NTQxZiBweTNrCis3NDEzMCAwYjFmMWQ3YjJlNmRmZDA1OTZjZTQ0MjlhODFmNzYyYzZjN2UyNTY5IHB5M2sKKzc0MTMxIDNjNDQ5MGFkMDFjZjA3NmRhMDQ5NjJmMjkyNjgxY2I0NDNjYjBmODMgcHkzaworNzQxMzIgNzk3MThlZTAzOTg2MjlhYzQxYzAzMmQ3YzA5ZDgwM2Q3OGUxNjRlMSBweTNrCis3NDEzMyBlYmM5ODU2YTliZGIyNjAxZjQzMWQ2M2FhOTg4ZTJjNjk3YmNjMWI3IHB5M2sKKzc0MTM0IDU2MTM2NGEzNGIwYzQ2ZDEzNDRmZTI5ZjgwYWQyYmNlZmJmMDZiMDIgbGVnYWN5LXRydW5rCis3NDEzNSAwYTIwZWRmM2Y3ZGI4OWViOGRlZjY3NjhmYTk1MzM4ODY2MjAxYjE2IHB5M2sKKzc0MTM2IDZmODczNjczNzk5NGRjMTE5YTk4MzQ1ZTk2ZDZlMmVmMGFlYmUwNDAgcmVsZWFzZTMxLW1haW50Cis3NDEzNyA5ZmY1YmQxNjAxNmI0MDdjNjc5NzRiYTI2ZWEwMGUwODVkMzkwYWUwIHJlbGVhc2UzMS1tYWludAorNzQxMzggMjFlNTgzMWNiYWU4YWJiYzMzOWFlMjhkMTU2YmFhOWNiNDRjYzdlZiByZWxlYXNlMzEtbWFpbnQKKzc0MTM5IDM4MTVhYmVkOTI3OWI4ZDgxMWM4NGJjNGY1ZThhYjE5OWE2YjY1ZTQgbGVnYWN5LXRydW5rCis3NDE0MCBjMjhlNjFjNWJkZjgyOWZjMGZkNDdhNGNkYmE4ZWU5N2I2OTg2ZWE3IHB5M2sKKzc0MTQxIDk0OTljMjMyZWRiNzNmYjcwMjY5Zjk1NzIxMDZiNDRiOWY0NWY1ODcgcmVsZWFzZTMxLW1haW50Cis3NDE0MiA0ZGY3MDUwMGRiZTM0ZDU3OGI4MGNjMTU2MDg0ZjMxMTQ1ZmY1ZGRiIHJlbGVhc2UyNi1tYWludAorNzQxNDMgMDNmNWM2N2RmMThlMmI2YzU0ZDgyNTIxYjhmYzY1ZjYyZmMzYzMwNiByZWxlYXNlMzEtbWFpbnQKKzc0MTQ0IDhkNmVhZDJhY2NhMDA0ZjU3MDU3YTAxNTIwNjcxNzEyNTU4YTYzMWUgcmVsZWFzZTI2LW1haW50Cis3NDE0NSBmZGE5MDYyZWJmYTRjODcxZTljYTdjNzhmNTBjMDE1ZTQyMjFlOWRmIHJlbGVhc2UyNi1tYWludAorNzQxNDYgY2RjNzQ5ZDljMDIxYjk3ZWM2N2VjNzQxOTBmZDFlMGY1ZWU3NjI4ZCByZWxlYXNlMjYtbWFpbnQKKzc0MTQ3IDdkY2U0MDRmYzhlYjViMzNjMzA2YjU4NTk3MzFhYzk1NjRjZjI4NTMgbGVnYWN5LXRydW5rCis3NDE0OCAzNjEyYTRlY2E1ZDUxY2NhYjFlZmM3OGYyZjZiMGIzNzgyZGZmZWJhIGxlZ2FjeS10cnVuaworNzQxNDkgYjQwZWViOGY2OWNhN2JiNjQ1OTJjNjlmYWZmZGViMTJiZTA3YzZjMCBweTNrCis3NDE1MCBjMzBmYThjNWUzMjQ2Zjk2YzA5YWM5ZTgwZWQzZTNhMTExMjc3MjZiIGxlZ2FjeS10cnVuaworNzQxNTEgZTQwNTA2ZWRjYjNlMTU3YTA5ZWU3MjBkMDI3NDcxNTMxMDc0ODM3ZSBweTNrCis3NDE1MiA2YmIwMTg4N2Y0NzU2NzY3NjExZjI4MTM5ZTVmNjgyNDRlOTMzNzFlIGxlZ2FjeS10cnVuaworNzQxNTMgMjRhMmFjZjEyOTFjOTQxMzcyMmYzMWEzYTU2NTE3ZGIwMDFmN2JkMyBweTNrCis3NDE1NCBhYmZkNWY3OGY0NjZhZTE3MDMwMDg1OGQ2ZDM3ZDliNmFkOWQwNWM5IHB5M2sKKzc0MTU1IGQ3NDdkNTJmOWE2NjkwNmU1MmMxN2NlMzM0OTUxZDE4ZWUxNjE5NWMgcHkzaworNzQxNTYgZjc5MDQzMzY5NjI1ZmY5ZjZmMjhiMjRkMzE2MDViYmZhNDhkNGUxZCBweTNrCis3NDE1NyBkNjgyY2E4ODhlMjc5NGIxN2E1NmYxOWFlYTJlZjNjZTQwNzY5YzQ2IHB5M2sKKzc0MTU4IDUzODg1MGIzODkzMTA5MDcxYzUxNDgwYTg0ODhjNTIyOTAxYzI3YjQgcHkzaworNzQxNTkgYjdhYWJiYTg0ZWUxYTBhOTlhZGIwMjgzZGQ2Yzc5ZTAyMWI3ZjRlOSBweTNrCis3NDE2MCA1OWU1ZjI5OWRhYTAyMGM1Y2JlZWUyNDU4NDI3ZWM0NjNhOTJkYzAwIHB5M2sKKzc0MTYxIGVjODVhNTFkZTljZjQ4ZTkwMjhlOTUyMTc5ZTRlODAzOTY1Mjg5NDQgcHkzaworNzQxNjIgZGY1YTcwODYwNzgxMGJmMDk2Mzg1MzcxOTk4Y2I5NGY4NWVlOTJkYyBweTNrCis3NDE2MyBjYzlhMWEzZTNmYjgxZTQzMjg2YzRjM2NiODBiYzhmZDkzZDY1YWNjIGxlZ2FjeS10cnVuaworNzQxNjQgMWVjYjA3ZTExYTJkY2M2MWZlM2U1MjMxYzQyMzNjZmM5ZjgyY2FhMSBweTNrCis3NDE2NSA5YzIxMTFjZmQ5NzQzNmRiMmEyMjRmZjMxZGI4MDBhM2JiOWM2ZTY0IHJlbGVhc2UzMS1tYWludAorNzQxNjYgMDc2MzQ2MGIwYjM4MWRmZWQ2MWRmMmMwNzgwZDU4NjhlN2Y0MWU0MCByZWxlYXNlMjYtbWFpbnQKKzc0MTY3IDE0ODBmYWUzYjcwM2ZjZDdkMDA0ZDZlOTgyYmFjM2IwODBkMDEwMDcgbGVnYWN5LXRydW5rCis3NDE2OCA3NGFhZWI5YzM1ZmJkMTE0ZWEyMWIzYWJkYmU5OWFmY2YzNjFhYTZjIHJlbGVhc2UyNi1tYWludAorNzQxNjkgY2I0NmEwZDc4OWM2NzBmNTRhOGQ5MGY0MDFjMjgxYTQxNDg2M2JlMSBweTNrCis3NDE3MCAyNWNmNzc1YTcxNTE5ZmZmNjA2MGI5NTdlNTliMjFiZDU5ODhhNWE2IHJlbGVhc2UzMS1tYWludAorNzQxNzEgMDNjZjRjYjRhMTUwMWQ1YTM2OWJjZmIyZGM0NDkyOGRlNDRmZjFlYSBweTNrCis3NDE3MiA5MDhiMzk3NjRjNzM4ZDcxNWM5YWJjZmFmMGJmNjhlNDNmOGI3Zjg5IHJlbGVhc2UzMS1tYWludAorNzQxNzMgMTMyN2FmNTZlYTQ5YWI4NWIxYjIzNTI5NTBhODYzMThjNWVmY2ZjMSBsZWdhY3ktdHJ1bmsKKzc0MTc0IGU2NTBhOWQ2NGFiNWM2ZTI4YmRmOGU0NjliOGVmZTRlMGEwMDlmZjIgcHkzaworNzQxNzUgOTRmYzQzM2M0MzczNDZhYjYyODA0MjFmZGZiM2VjOGI1ZWE1MDRmMiBsZWdhY3ktdHJ1bmsKKzc0MTc2IGEwZWFjYjVmOWQ4YWEzNTJhNmU2MmViYTI2NzhlZWU0MmI4MzQwZTIgcmVsZWFzZTI2LW1haW50Cis3NDE3NyBkZjE3NDQzMTk0NjZjOGNiZjg3NGU4ZWM5YmQ3YmUzYzY1M2Q1MDFjIHB5M2sKKzc0MTc4IDI2MGZiNDIxYWMwN2ExNDA4OTUwODBlMzYyMGI1ZGY4YzhmZmYzZDYgcmVsZWFzZTMxLW1haW50Cis3NDE3OSA5ZGRhMDJhZmE4ZWQwMDdjN2ExMzg3MjY0MGY0Mjg3N2M1YzRmODExIGxlZ2FjeS10cnVuaworNzQxODAgMDI1YTY0MjhhNzY0ZjVlNDUwOTE5MmI3ODI3YzJlMWI4NTIzOTEyYiBweTNrCis3NDE4MSBiOTY0MDY1NTEyYjE1NTdhZGRhZmEyYjVmNGI5OTliYmU4OGY3ZDBkIHB5M2sKKzc0MTgyIGIxMWE3NTI0ZTU1OGYxY2EzZjIyZDgwZGY5YTNjNTRmZGU1M2Y0NDMgcHkzaworNzQxODMgMjA3NTQxYzk4NzQ0MmQ2YmJiZjlmNmRmNGY4ZDA1NjQ5ODFmMDNhNSBweTNrCis3NDE4NCA3NDIyZDc4OWZkY2E5YjJlOTFiYzBjNTg5ZmNiY2E4MWFiOGMwNDA0IGxlZ2FjeS10cnVuaworNzQxODUgOTc3NjAyYjNlMTQwZGNiZGEzOTE5MTk2YjdjYTFlMWUxNjUzZTM3YiBsZWdhY3ktdHJ1bmsKKzc0MTg2IGVjYTAyMDdiYjc3ZjA5MWE5OTQ1ODQ2Yzg5NmFiNDI2MjdiNGI2YTUgcHkzaworNzQxODcgMmU5NDcyNDU5NThiMDFjOWUzMmJiZTJiZjRjOWYxMTljNjk5ODI5MCBsZWdhY3ktdHJ1bmsKKzc0MTg4IDYwNTIzNDE4ZjhjOGU5NTUxNzkyZjNlZTFjNDc0NTZlZTE0YTM0ZjAgbGVnYWN5LXRydW5rCis3NDE4OSAyZmIxMDU3N2M2MjFlMjlmZmI5NWU0NTJiYzViMjU4MjE0MmU5NzUyIGxlZ2FjeS10cnVuaworNzQxOTAgODY4YjRlNjM5YjVhYjFiOGU3MWE2YWQ4MmMzMmMwZjVjNmE4NzllNSByZWxlYXNlMjYtbWFpbnQKKzc0MTkxIGI3N2JiNTMyMTEwODg5MWVmMjY0Nzc0ODMxYzg4NDZiMjE2YzI0NTggcHkzaworNzQxOTIgYzAwYjA4ODQyZDdmZDRiZDMxMzhiNDk3ZTY5MjAxMmQ5Nzg1MjI0MiBsZWdhY3ktdHJ1bmsKKzc0MTkzIGU5OTAxM2E5ZDJmOWNhNGUwYzM2M2RjMGFkZjQwNmFlNTZhYzQyYjEgbGVnYWN5LXRydW5rCis3NDE5NCBkOThiOGE2ZWMyYjg0YzViNzgwMTE3MzQ2MDRlYTU2YzRkZDRmMTY4IGxlZ2FjeS10cnVuaworNzQxOTUgNjFhMDY1YjMwMDFkODdkNTZiMzliYzA3YWVkYzJkMTc5YmMxOWIzOSBweTNrCis3NDE5NiA3NTk2MjJkMGFlMjg0NzU2YTRhZGZlOGEyM2M0OWVmYjhlYTA1MDNlIHB5M2sKKzc0MTk3IGNmZmIxZTk2M2RkOGEwNzcyMjExYzA3NTRkYmFkZjc3MjAxZjZmMmUgbGVnYWN5LXRydW5rCis3NDE5OCBkMWVjOTVhZTBhYzI4NDZiZDhjOTZlMmM1OGM2Y2YzYzU4NThkZTk1IHB5M2sKKzc0MTk5IGExNGMwOGY4ZTc3YjVmOGQ5ZmQxM2VkOGFlNjVlNzQzNGJkMzg5MDQgcHkzaworNzQyMDAgN2Q0NjA4MDA2Y2ZhYzM3Y2M5MDg0OWExMmFlNWU4NDlmZTI0YjYxZSBsZWdhY3ktdHJ1bmsKKzc0MjAxIDZjN2I0YjQ3MDgyNzc1YWI3YmQ3NmU0OWMxNDEzZjRjNzBjMzk4NTcgbGVnYWN5LXRydW5rCis3NDIwMiA0YjEyMTZmNGZjYjViMGMyMjExMDYwNzg4YmFlOWUxYTk0ZDcwMWExIHB5M2sKKzc0MjAzIDBmNTdiMzBhMTUyZjQ2MTkxZGE2YzI4ZjllYjY2MzFkZWY3N2Y4MGQgcmVsZWFzZTI2LW1haW50Cis3NDIwNCA1MTEyYTU2ZGY5NzdhMWMxZjlmOTg0NDBiMzI1OTU4ZGJjYjRkY2MzIHJlbGVhc2UzMS1tYWludAorNzQyMDUgNzI0YTEwMTFlODk3YTdiOWYzMmFlMjdkNDEwMWE4OTc4ZTVkMzE2MiBsZWdhY3ktdHJ1bmsKKzc0MjA2IDBiODkzYzZlYWQ0YzczNmZlOWQ4YzI4NzJiYzYzOWJmMDEyY2RiMDMgcmVsZWFzZTMxLW1haW50Cis3NDIwNyAxYmRlODQ1NTIyMmMzNDg5YTZmM2IyOGE0YWQ5N2ZhOGNmMDM1ZjQyIGxlZ2FjeS10cnVuaworNzQyMDggYTU1NjM0Y2U4MTE4MzhkZTgwY2VmNDExYWMwODY4YmU5NGU4MTMwMiByZWxlYXNlMzAtbWFpbnQKKzc0MjA5IGJiZDFkOTBkMTU4YWJkZGQ1NTE5MDNhZTc0NzhhNTdjOWY3YTg0YjIgbGVnYWN5LXRydW5rCis3NDIxMCA0MmRiMWNmMzlhZmRiYWM1MGMyODUxYzUyNTNiYTIyN2MyM2QyMzQ3IGxlZ2FjeS10cnVuaworNzQyMTEgNjc4OWQ4NDA2MjFmNGQwZGNjNmU1NTRkOTk2Y2VlOWQxZDc1OGJkOSBweTNrCis3NDIxMiAyZjhhMzYyZTM3M2Q5NTBjYzliODBlZjA0NWY1MGFkYzFlMWYxZjUwIHB5M2sKKzc0MjEzIDE1YjYxZjMyN2Q1MDk1ZGJhOGI1Y2IyZGJlMGMxNWNmOTJmM2U0OGQgcHkzaworNzQyMTQgOWJmMjA2ODU3ZDdlNzljZTJkOWY1MGIxMjEwZDIzNTUyNzgxMjQzMCBweTNrCis3NDIxNSBjMTA3NzNiYmFmYTAzNTkzZTZiNjAyZDU1ZTFiNTFlYzRjYzA2OTA5IHJlbGVhc2UyNi1tYWludAorNzQyMTYgYjcxZWViOTA3MDkzN2I1NjJmMjcyMzNlZWQ1M2U4MDY1NjI0ODk5ZSBsZWdhY3ktdHJ1bmsKKzc0MjE3IDBmMDE2M2Y4YzViNTZjZmQyZmZmNWE5ZjliYzgzNzRlMmUzNjViOTkgcHkzaworNzQyMTggODllYmU0MzI0NGFlYmY2YmMzY2JmMWU3NzMxNTc1MmFmYzBiN2FmYiByZWxlYXNlMjYtbWFpbnQKKzc0MjE5IDBkMjAzY2EzYWM3OGVkZjA0NTllY2I0Y2I1NTIyOTBiZmI3ODk1OTkgbGVnYWN5LXRydW5rCis3NDIyMCBhOWI1MDdlY2RhNGM5ZDI3MmIzMzM4NzE4Y2YzNjIxZGNlNGZhNGQwIHJlbGVhc2UyNi1tYWludAorNzQyMjEgOGMyMWZmZmIwNmM0NjE0YWNhYmI3OTExZTdhNjBkNGQ5NzllYWQ3OSBweTNrCis3NDIyMiBmYzQ2OWFmNmViNzAyNmJlOGRhYzhjN2EyY2MxOTI1NDM2Y2NmYzIyIHB5M2sKKzc0MjIzIDA2Yjg2YTZlMjhmMWExNDM1N2VkNDc1OGE3MWNkZTQxYWQzYmU5MDkgcmVsZWFzZTMxLW1haW50Cis3NDIyNCA3NGRjN2JiNGY0NjQzYjNkNmZlODAyMjdhNTlhZjJmNjliMjJkY2JjIHB5M2sKKzc0MjI1IDYwN2NkMTE5ZmU0Yjk3OGEzZDlmNTFmNTI4N2UzMjAxNDUyOGJjYTcgbGVnYWN5LXRydW5rCis3NDIyNiAxMzI2ZWY4NmYzZTQwZDMyNmY2Y2NmNWUyZjI3N2NjNWFmZDliNGY5IHB5M2sKKzc0MjI3IGIzNGNhZTc4NmNiMDNlNDY3MjQyYmY1NDhjZWJmZGM0NjBlYjc1YzEgcmVsZWFzZTMxLW1haW50Cis3NDIyOCBjODUzYTNkMmExOWQzNTkyZGYyMjkxMDIzYzk5MTlmY2FhOGZlODBjIGxlZ2FjeS10cnVuaworNzQyMjkgNzIxMmUzZTBjZDE3NTA3MDc1MjI0ZmYwMDViNjkyNzNiMzVmYjliYSByZWxlYXNlMjYtbWFpbnQKKzc0MjMwIDBmOGI1NmVmMGY3ZjRkZTE5NzBlYjRkMDg3ODhhMWEyM2RkZGE4ZjEgbGVnYWN5LXRydW5rCis3NDIzMSA3ZmQ5YWRjODEyODAwYzEzNWRmMGQyNmI0NTMzY2E4ODdhNDc1MTM2IHJlbGVhc2UyNi1tYWludAorNzQyMzIgNDQzMTgyMTBiMDNjNzBhYmVkMmVkNzY1MTE2NzhmMzg5NGI2NTI1YSBweTNrCis3NDIzMyAwMWY4NDhlYTExMGFlM2Q1OTBjNGIyZjMwZmFmZmQzMWY5MzVlMGViIHJlbGVhc2UzMS1tYWludAorNzQyMzQgZGE5OGNiZWJkYWNiYTI5ZDA2NjQ4ZTliM2E3YWY0M2Y1YjViNTE4NSBsZWdhY3ktdHJ1bmsKKzc0MjM1IGJiMGI3ZDBlNTUwZDgwYTg3OTgyNzZkZGNkZjA5ZTFiNDE1NWUzYWUgcmVsZWFzZTI2LW1haW50Cis3NDIzNiAwN2RiZGYwM2U4ZjUwMzA3Mjk4YTJmMTUxMGNhMmM3NzFkZWMwYjllIHB5M2sKKzc0MjM3IDNkNDUzNjdjYzYyYWE3ZmZiOTkyMmE0NjkwYjUyYWRhMzY2OGFhMTMgcHkzaworNzQyMzggYWRmNDg0ZGY2Nzk0OGU0OGIxNjI1NmJlMWVkN2U3ZDQxOGYwYWU1NyByZWxlYXNlMzEtbWFpbnQKKzc0MjM5IGFhOWZmNDdiZDFjOGVlNTY1NDliMTVlN2FlYjhmNTBhOWZiOWZkMTIgbGVnYWN5LXRydW5rCis3NDI0MCA1NmIyZGE5M2FkOWM4MjMyZGU1YWEwYjk1ZWIzMmYyNzFlMzkwNTg1IGxlZ2FjeS10cnVuaworNzQyNDEgODlhZDIwYTMyYTI2MDMxMDc4NjM1ZWI2N2RmMGE0NzNkMWY0M2Q0NSByZWxlYXNlMjYtbWFpbnQKKzc0MjQyIGJjZDM5ZWZmZDMxZTM3ODZmZGI2YjM2NTg3ZWEyMWZhMjAyYjk2YzEgcHkzaworNzQyNDMgODg5OGYyOGU2ZDJjMWE5NTRhNjVhNmIwZjA0NDRhNzZhMWM5NTVmNCBsZWdhY3ktdHJ1bmsKKzc0MjQ0IDU3MmMxODdkZjYxMmUyNzZhMjczZjY3Yzk1Zjg4MDNmZGEzMGQyOWIgcHkzaworNzQyNDUgMWRmZDZmNDA3MzM2Y2EwMjczM2FlNDUyOTIyOGI5M2FkYWZiMGM4ZCBsZWdhY3ktdHJ1bmsKKzc0MjQ2IDVlMDU4ODkwOTZjZDA4MGU3MTIyMDIzNmZmMzU3MDg4YTFjMGNhZTUgcHkzaworNzQyNDcgOGEwMTdkM2NiOTI4YWU3MmVhMDEwYjkzYTY0MjkwOGE0MTlmMzdlMCBweTNrCis3NDI0OCA5ZmZmZDNlZGI2Njg5ZmRhZDI1NTQ0Mjc5MmJmYjBjOGZiZDI1MDE0IHJlbGVhc2UyNi1tYWludAorNzQyNDkgYTVkMDI1YWQyMWM4ZWExNGZhZDM4MGFkMDJiOTMyZTMyMjlhZThlNCBweTNrCis3NDI1MCBmMzU3ZTI2MDNkOTNiZWIxNWZhY2M1N2EzZjdmY2JmYjQ0NGQzY2I4IHJlbGVhc2UzMS1tYWludAorNzQyNTEgNjBiMzFmMGRiMDE2Mzg0NmFlMmEyYTZmNjc5ZTU2YWIyOTJlZTRiNiByZWxlYXNlMzEtbWFpbnQKKzc0MjUyIGVlMjU0NTllOWI5MWZhY2FjNDc2ZDQ3ZDFiNmNiMjY1YzEyZDQyYmYgbGVnYWN5LXRydW5rCis3NDI1MyAzZWQxNTkzZGQxNzQ3MjAyNzZiYTcxMjU4YzEwM2JjYzU1ZDZkMTJmIGxlZ2FjeS10cnVuaworNzQyNTQgMTU2ODNjMGVhZjI4NjMyZDYyN2VhMGE1MjBiZmY2MWVhOGI3ODI4YSBweTNrCis3NDI1NSA2NGFmNDE2MGNmMWViOWY5M2RkYWM4NzY3M2NhMDA0NWVlYmU4MTE2IHJlbGVhc2UzMC1tYWludAorNzQyNTYgZmExNGY4MTMyMmNlMDcxODc4ZjNkNmNkMjViNjAwNDMzZjBjN2U1NiBsZWdhY3ktdHJ1bmsKKzc0MjU3IDFkZjI4MWM5ZTE4MjFmYzljNTBkZWM4N2Y4ZjFjNzM5YTc3ODVlZGYgcHkzaworNzQyNTggMTM3NTk5YWNiOGJhYTMxODAwNzYyYzdmZDUxZmM3YzQwYmNjNDNmMyBsZWdhY3ktdHJ1bmsKKzc0MjU5IDkzODgzZjM3ODdiNTc5Yjk3ODExNDIxODIwYjgzOWJjOTI4YjVmZWIgbGVnYWN5LXRydW5rCis3NDI2MCA0ZmU1ODAxYmY3MTIxN2JhNDc2ODg0MTZlMjFmODg4ZGNiNzFhM2EzIGxlZ2FjeS10cnVuaworNzQyNjEgNWJlNGMwOWU0YTY2NjI4ZTQ5OGNhM2E1MzhkZDZlYTE3N2E2OTA1MyBsZWdhY3ktdHJ1bmsKKzc0MjYyIDdhYTBkNmZhNjM1OWYxNzhhMzRmNjEzZjdkMzQyNTU3ZjdhNzc2ZDMgcHkzaworNzQyNjMgZDI5ZDFkOGUyY2Q2MzY5ZjEyMTRjYjYwNmYxZjYyZmYzZGFhNjE5ZSBweTNrCis3NDI2NCAzZTBjZTk0YzJlMWUwZjEwNDE3OTQwZGZlM2M4YTEyM2Q1Yjc1ODM3IHB5M2sKKzc0MjY1IGJkMDNkNmQyZWZiMDk1MGRjMzc3NzlhYzM3NmE5ZGQzNDMxYTc3MTcgbGVnYWN5LXRydW5rCis3NDI2NiA0ZDQ0ZjJhMzhlNTFlZjIwODIxNDg3ZmY4MTc5NzE0NTZmYzdkOWRjIHJlbGVhc2UyNi1tYWludAorNzQyNjcgMDUzNTc0MWI1N2JiMjBiNmQ2NDc1YjNkZGQ1Y2UyOGZmYTM4OGRkYiBweTNrCis3NDI2OCA2NTA1MGU4MjZhOTZkYjU2MDVlZDdkYjMyYjM0MDYwN2IxOGMyZjVlIHJlbGVhc2UzMS1tYWludAorNzQyNjkgMTZmYTU3MDYyOWUzZjQ0Y2NjYjc5MGQyZjA3M2NiZGNjNGVhNDk4YSBsZWdhY3ktdHJ1bmsKKzc0MjcwIDE5NjExYTI5YzhkZTdlODExMjEwMjc0NGMxNGYzN2JkYjFjYTYzMmQgcmVsZWFzZTI2LW1haW50Cis3NDI3MSA1NWUwMmZhN2ExMWMwZWE5OWEwNGRkNjAzYTM3NDYxNTY3MjFkZWRiIHB5M2sKKzc0MjcyIDA0MTIxNjE1OTU1YTI4YzA1MzZkZThjZDQ3MGIyZTdlZDdlOTQxYmUgcmVsZWFzZTMxLW1haW50Cis3NDI3MyAyYzdlMDc2YjRjYTlkODI4ZTNhMzE1N2U1YWZjYzVmYTNkMTY0YzQ5IHJlbGVhc2UyNi1tYWludAorNzQyNzcgM2FmM2ZiMTY4NjM4M2FmMWVhZjE0YjRmMTYwMWYwOTZkZTY4YTE2MCBsZWdhY3ktdHJ1bmsKKzc0Mjc4IDgzYjQ2YTU5ODhiMGViNTEwZGU0MjM4ODk3ZDQ5OGU3NzFlMTY4MTMgcHkzaworNzQyNzkgNzQ2YTgxOGJkZDM1MmI2YTk0ODU5MzMyNTc1YTEwZTJiNDE2YjRhMSBweTNrCis3NDI4MCA4ODI1NWNiNDUzNGRhZDVlNGU2NWJlMjk4OTgwOGRlMDQwMTlmNDcyIHJlbGVhc2UzMS1tYWludAorNzQyODEgN2MyM2YwYmNjYTg1Y2VjNTgzMDE2MTQyOWZkZmJjNWEzNWJhZDNjNSBsZWdhY3ktdHJ1bmsKKzc0MjgyIDhiNDhiMjgyZWJhOTM5NjBjMDRjYmM0YTVlZGY2MDI0ZWExZTc5YTYgcmVsZWFzZTI2LW1haW50Cis3NDI4MyA0YWUwNGUwZjY4NTAzOGU0ZDY5ZGQ5NmMyZjYxOTczODkxYWUzMWZjIHB5M2sKKzc0Mjg0IDc5Nzg5ZTg5ZmY3ODQ4NWEzZmQ3YzVmOGE2MGFjNjYzZmExOWRlZjggcmVsZWFzZTMxLW1haW50Cis3NDI4NSBkMjUzNzMyNjY3Mjk3NjM3NjhjMjUyZGE5OTE3YzNhZjJkOTA1NjM3IGxlZ2FjeS10cnVuaworNzQyODYgZjQyZTA3YWIzMjZlYzVhZDg5NjliZjU0N2M5ODc5NTRmN2Y5NWJlNSByZWxlYXNlMjYtbWFpbnQKKzc0Mjg3IDQ2ZjliZTI1MDkxMmY2MTM1ZDBlMDc0OGIwOTk4N2UzMGY2MTMxODEgcHkzaworNzQyODggY2ZiZWZkY2MyNmRiMmY1MmYyOTg3MGQwNmM5YTMwMGYyZGYwYTJjNiByZWxlYXNlMzEtbWFpbnQKKzc0Mjg5IGUxYWM1NGJiMDhlZDI5YzI5MzM1MWVlNTY1ZGUwZmUzZTA5ODQxZDcgcHkzaworNzQyOTAgMDhlY2E2ZThiMGJlZmJiMWM4ZGQzOTAwMzRjNDBmYmRmMjU2M2M0NSByZWxlYXNlMzEtbWFpbnQKKzc0MjkxIDQ2ZTQ2YTBlNjIyZTYwMmYwZTI5NGNlNWY1NmE1NWI0MmJhNGM3YjEgbGVnYWN5LXRydW5rCis3NDI5MiAwMDI5NDZiNTJmYzNlN2U3NjMyNDA2NmQ2NTUwZmRlYjQwNGJkMmYxIHJlbGVhc2UyNi1tYWludAorNzQyOTMgZDk5Y2FkZjBlNWYwYzk2MTQ3MjkxMjAzZjkwZWE0NDdjODZiM2JkNyBweTNrCis3NDI5NCBjZmE3ZTk0M2ZmYzNmZjAxOTRmNDc5ZGUzMGUwYTcxNjE3ZGFkYTYzIHJlbGVhc2UzMS1tYWludAorNzQyOTcgNTAyY2UyOGZlYmFhYjc0Y2QyNjQ1NWE5ZGEyNTVjNmUxYjQ0MjUwMiBweTNrCis3NDI5OCBmYTZmZDFlZDczNzg4M2E5N2MyYjg2ZTVmNGMwYWUzNDY2MWI1YTM5IHJlbGVhc2UzMS1tYWludAorNzQyOTkgZGQ0ZGE3NWViYzk3MTVkYjkzMzkyM2NmNTg3OTRmY2U1ZWZiZWU5MCByZWxlYXNlMjYtbWFpbnQKKzc0MzAwIDI3MWQzODJkY2FiZGZmYzJlZWYyNGMzYjVmYzlmZTVhOTgwYTU1ZDcgbGVnYWN5LXRydW5rCis3NDMwMSA2NThkZTg0MzgxZDdmMzdjNGYyZTdkYTU2ZTFjZDAyYzQzYzdmZDZkIHJlbGVhc2UzMS1tYWludAorNzQzMDIgNTM0NWUzYmM5ZTQxNjJiZmY1ZGQ4YTUyMDg1ZDNjZTExYTQwN2ZhNiBweTNrCis3NDMwMyBhMGUxZDYyN2I3MTgzNTU1MGRiNDIyODUzOWY5NjIwYzAxODJmMGU5IGxlZ2FjeS10cnVuaworNzQzMDQgMzQyNzdkYTM4ZTM4OGI3OWQ4ODQxN2IxYjg5N2MxZjVmYmRkZjU5MSByZWxlYXNlMjYtbWFpbnQKKzc0MzA1IGNkOWZhODFlYTQ4MDEzODk5MTgwYzlkZGFiMWNiNmM4YWFhNGMzMjYgcHkzaworNzQzMDYgODg0OGM0OWVkNWY1Nzc0NzQ4OWE0MGU0M2YzZTAxMjQ3ZTRjMmUyNiByZWxlYXNlMzEtbWFpbnQKKzc0MzA3IDJmYWU4MDk0NTBjZDExZjcxMGE2ZjdhNWUxZGQ5NjJhNWVmMjVkNGEgbGVnYWN5LXRydW5rCis3NDMwOCA2YTA1ZWM0OTNjZTllM2YxOGM2OWVkYzIzMDRjNzM1MjViOTY1YjVhIHJlbGVhc2UyNi1tYWludAorNzQzMDkgZTgwMjViODVhYjE4MjdjNjUwMzRjOWZjZjU4YTRiNzRmYmY2OThlNSBweTNrCis3NDMxMCAzZmYxNzI1ZjgzN2VhZTE2NmUwZDljNDdjMzQyNWEyNmRiZTMzMDU4IHJlbGVhc2UzMS1tYWludAorNzQzMTEgNWRlMTljNTAxMWNhOTM2NzQxMDkzNjY1ODlmNzhiYTc5ZWFkMjQxMCBweTNrCis3NDMxMiA1ZDg3NWZhZGY2M2Y1MzU4YzczYzY5YTljNTNkNmViODkyNjMxMzFkIGxlZ2FjeS10cnVuaworNzQzMTMgYjE3NzUxODdhYTMwZTczNzJlMTgzNzQ2NzljYTQwYjhhOTE2Y2FkMyBweTNrCis3NDMxNCAwODM4NmM3OWUzNGYwZmNkYzI3NDM5Y2JlMzE5ZDBjMzM4YjRjNzg0IHJlbGVhc2UyNi1tYWludAorNzQzMTUgZWIyMjQ0MjE5NDE5OTkyNWVlN2Y2MDZlMzk5NGM4M2RlOThiNTZhMSByZWxlYXNlMzEtbWFpbnQKKzc0MzE2IDlhNDNmYWM4NzYwYzJmOTNmOTcyYzAzNGM0ZTEwZDk0MTg2ZTJkYTMgcHkzaworNzQzMTcgYzhmNGMxMzJkNmRiMDRlOWE0M2U4MTc0Yzk1YzM3N2RlODkxOWY1NyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQzMTggNjQyNDg1ZGJmZmJhYTEwMzBmM2IxOTk4YmM4YzYwZjdjMDY3MWZiZiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQzMTkgYmQxYmNjZDhlMzQ0YjlmZGQ0M2NlMTM2NmE1NjJkMDgyNjNiZGE3MyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQzMjAgYmE4MDJjMGI1MzhhNzk2OTIzNzY2YjNlYWE4OTNhNmRjMTI4ODY0YyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQzMjEgZmNlYTdiYTRiMDM0ZGNiMjQ0MDgxNGVmYjliOGQwYmY4Y2I4MWJlMyBsZWdhY3ktdHJ1bmsKKzc0MzIyIDc1OTQyYmM3NGY3MTIzMTMzMmZjZTZiNmYyMzJlNTI0NGVmNTcwMDAgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzc0MzIzIDBjNGVlNjJkZjBlMTkwYmU2ZTBmMjhlYzE4NTMwYTkxZDkzNzE1OWYgbGVnYWN5LXRydW5rCis3NDMyNCAxOTJlMzQ0NGI4ODhmYTQ1MzFmNGYwODllOTMxYTE4NDNlN2NkOTlhIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDMyNSBlNTczM2Q1OGZkYjE1YTc4MDRhYzY5YTRlMTE5YTlhMWU0Mzc1NmE5IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDMyNiA1YTEzMGI3NTg1YjFjZTVjNTE1MjUxZDM4NmJlZmU1MDcwMTQ3NWJjIGxlZ2FjeS10cnVuaworNzQzMjcgNjVkMTY4MmRjZDVlMGU1OGIwZGFiMmMxNTFmMzlhNGJhNGQzNDNkNyByZWxlYXNlMjYtbWFpbnQKKzc0MzI4IDFiZTNkNDI3YWNhMjQ0NjZhMGJiMTBhYmNmNTJjNTllZGFjMmVkNDUgbGVnYWN5LXRydW5rCis3NDMyOSAwNmNlOWQ4NDY4YzJmMDY2OWU5ZTZiMGIxODRmODUxYWM2NWRlMzVjIHJlbGVhc2UyNi1tYWludAorNzQzMzAgN2YzZjZiNTVlNDdhMjhjN2ZjZTRkZjE1OWY5ODU2Y2IyMGU0YThhMiBweTNrCis3NDMzMSA5ZmRmMTgyZjE5YTkxM2QxMzkzNThiN2IyYmZjYmYxNzRlOWJiNmRiIHJlbGVhc2UzMS1tYWludAorNzQzMzIgOTNhOTZkNmRmZmI1ZTkzMmRhZTBjNTUwNmIwOWQ4ODcwOTNjNTY0ZiBsZWdhY3ktdHJ1bmsKKzc0MzMzIDdiNjZjZDAyZDYwYmE4MDFhNTA5ODc4YmZkYzI0YjY1N2U0NjE2NGUgbGVnYWN5LXRydW5rCis3NDMzNCAzMTU5NzI2ZDBlNjU5Y2M2ODViY2Y4ZmVhZjkyZGY0ZWIyYjkyOGYzIHB5M2sKKzc0MzM1IDRmMjA0ZWI3NmUwN2EyNmE2NjdmOTMwMmNkNDNmNGJlMDMzMDQwYTUgcHkzaworNzQzMzYgMmY2NDFlMzM3YzlmOTZhOTI5ZDQzYjg1NTk0NDJmZWYxZDRlOGEyMyBsZWdhY3ktdHJ1bmsKKzc0MzM3IDAwZmQ2Mjk3ZWJlN2IwZGY4ZTFhMDhiNmZiOTA4YjY3MmY1MmZjOTAgcmVsZWFzZTI2LW1haW50Cis3NDMzOCBmMTM2MDJhODRkYWFhZmQ2ZjJjMjE4MDY0MDc1OGUzZDUxZTU1NWI0IHB5M2sKKzc0MzM5IDMwODg3OWVjOTAyMzRkZTM1YzVjYmYwMTA4NGEwMDg0OTg1ODUxMDEgcmVsZWFzZTMxLW1haW50Cis3NDM0MCAxOWU3Yzk5NmU2N2FlYmU0ODNmYzQyMTZlNTQ1OThmYTk0YTQ3MjM3IHB5M2sKKzc0MzQxIGVmYTg4MTFiMjUwYTNjNjU5ZjVhYTU2MGQ5M2M0YTU3M2EyZjQ4MjAgcmVsZWFzZTMxLW1haW50Cis3NDM0OCA4NWMwZDhkODNjYmZmYjYyYWI4Mzg2MjUyMDI5YjZlOTkwMzQ1MmY5IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM0OSBiMDAyZTkyYTM2Zjc3NDY4ZjhmNjY4YmUxMGNmMDNlNTRhMDBlZWU4IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1MCA0MTJhODVjZTU4NDRhZDhkNmU5MDJiN2MwYTIyYjE2MTgwZTZjNTBlIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1MSA5NGQ4YzM0MWZiNDJmMjI0MGVjOTEyNjBjZWE4NWE4NzNhOThkNDYyIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1MiBjZDIwYTllZDg0ZTVhM2JmMTBkZmI0NjgyMjEyYzQzMDg3NTM1ZmU3IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1MyAxMTI4NmI0NTNmY2ZmYjM5NTU3MzQyMTNjYTQxOGE2YjNkOWIwMjE3IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1NCBlNGE2NzQ0Y2U0YTlkN2FmOTU3MzY2MDcwNTcxODUxMDU4MDYwYjI3IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM1NSBjYTZlOTA0NzBkOTZmZDNhY2MyNmYyNWVkMTg1ZDBhYzEzMzRkMWFhIGxlZ2FjeS10cnVuaworNzQzNTYgMzYxYTAzYWQzYzM3M2JjNWM3NTdmNmZlYzIxZjkyZjFlYTVkMjU1NSBweTNrCis3NDM1NyBiYmVhOTgxNDhlMTI2NjEwNDUxZTEzYjU0NGE2NGJiOTQ0M2Y0M2IzIHB5M2sKKzc0MzU4IDVjOGIyMjM4YTJmNTI0YzhkNzQ0NzE1MTVlMWUyZGIzOGMwMDY3ZDMgcmVsZWFzZTMxLW1haW50Cis3NDM2MCBlNWFlYmQwMzhmMGMyYWQyNWU1ZDZkMTU5MGQ2ZGE4Mzg2MGMzMzJiIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM2MSAyYzY0ZTliZmIxYjY2NjVlNmJlYmY0YWI0MjZmNDE4NDVlMjVjZGQyIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM2MiBiMDEzYjNjOGM5YzdmNWQ5ZWUzMGY1YjdhZDFmYjcyZjE4YWRmNzNiIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM2MyBjMTllNzkwZDk0MmY3OTA5ZDY2YWNiYThlMjk2MDY3YzMyY2UwMDkwIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM2NCAwMDI1ZTA3MmZlOTdhZDc5MmI3ZTVkYzFkNzFjYTZlM2QwYmY3ZDAxIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDM2NSAxMjNjOTVmZTA0YjYwODMwNTNkNjE4NmI0YTM1ODliM2U1NGU3MGJhIGxlZ2FjeS10cnVuaworNzQzNjYgZWY1NjUzNWY1MzU2MTgwOGU1MzE4MWU0M2Q3OWM3MDBkZTE5MmZjMiBweTNrCis3NDM2NyA0YTFhYjJkNzAzODU5YTRiOGM5ODA4MjVkNDUxMjIzOTBhNWJkMDkxIHJlbGVhc2UzMS1tYWludAorNzQzNjggOTg0OTg1ZWEyNGM0ZGNlMjk0OTZkNDQ5Mzg4MDE4NWU4NjhhYjU5MiBweTNrCis3NDM2OSA0YTliODU5MTY0OWZiZDZlNDQ0MWVlZGNiMGI2OGMyYjRhYzQ2MTc1IHJlbGVhc2UzMS1tYWludAorNzQzNzAgZTAwYjUwYTNkNDk5ZDVlMWQ0YTA0ZDAzYjBjNTIzOTA4M2RmZmEyZiByZWxlYXNlMzEtbWFpbnQKKzc0MzcxIDdiNDk1YzhmMmEyNDBlYTgwNzUwNGM1OGRjZGUxNzI4ODM0MTgxZTUgcmVsZWFzZTMxLW1haW50Cis3NDM3MiAxYWNkMDI3N2QyMjUzMGU1YzEyYjk5OTI1ZWZkMDlhNGNkN2YyOGI2IHJlbGVhc2UzMS1tYWludAorNzQzNzMgYTQ5MmIyYmM5NTFiNDM0ZTU3NTk5MTg5MzFlOGVjNjc4NzI1ODA4MCByZWxlYXNlMzEtbWFpbnQKKzc0Mzc0IDUwOTVhNTI3NmQ4YzI2NjcwY2IxMGUzNjU3YTg0ZWZlMjAyNGFhMzcgcmVsZWFzZTMxLW1haW50Cis3NDM3NSA1ZmJhYzA5YzBlOTFkYjJmYWI2NDRjOWUwZWI4NTdhYWRiODNmNWMzIHJlbGVhc2UzMS1tYWludAorNzQzNzYgNThjMTBjZjA0NjE2N2UxMDAxYWE1ZThlMDNjZDA4MTk3ZDkzMmViYyByZWxlYXNlMzEtbWFpbnQKKzc0Mzc3IGRhZDBhNTRmNWE1ODNlYjkzZDkzNGEzZDg2M2NlMGZkOWNiNGU0MGYgcmVsZWFzZTMxLW1haW50Cis3NDM3OCA1OWI2Yjg1NTdhMzMyOWYwYzYyMjBiNWZlOWUyZmZjMmJlMzBhZGYxIHJlbGVhc2UzMS1tYWludAorNzQzNzkgMTdlNzE0ODUyODdmNzFmMTZiMGU1MjQ1YTY1MDE5YWVhY2Q0NDVmOSByZWxlYXNlMzEtbWFpbnQKKzc0MzgwIDU0NmFhMTM0ZDc3MzdhMzA3MWVjNGFhYjU2ZmI1MTM5YjI2YjUyM2QgcmVsZWFzZTMxLW1haW50Cis3NDM4MSA3NzBhOTNjN2FiZmY3N2E3NzQwNDczZDhiYjQyZTUwZmViM2JiZDMwIHJlbGVhc2UzMS1tYWludAorNzQzODIgYzRkNmI3N2MzNDY4MTU0ZjZjZjE0NjkwMTU5OGNmMzdmMTczYzI4MiByZWxlYXNlMzEtbWFpbnQKKzc0MzgzIDEwOTQwYmNlZGM5OWU0Nzg1NWYzY2IzZTU5M2U2OTQxZDllYjVhNmEgcmVsZWFzZTMxLW1haW50Cis3NDM4NCAwYmIyMzIwNzhiOGNiODE1ZjA5ODM5MGMxYzExNzQ1OWQ3ODI2NzYxIHJlbGVhc2UzMS1tYWludAorNzQzODUgZDdmM2NkZjJiMDdmNzg5YTFhY2E2N2RiNjUzYmE5Y2NmODU0NmMwMCByZWxlYXNlMzEtbWFpbnQKKzc0Mzg2IDBmN2E2ZWIxODIyMzE3NGQ2NDY2NDNiNTZiOGIxNjY4MjlkOTE5NTIgcmVsZWFzZTMxLW1haW50Cis3NDM4NyA3ZWU3ZmRjZWEwZDcxNmZhOWFiZjNkMTg5NTVjNTFjYTgxNGJlMDE1IHJlbGVhc2UzMS1tYWludAorNzQzODggZWZlODA4YTVmNTllODg5N2I1NTYzOWI4ODVlZGFlODlmOTk4MzNhZSByZWxlYXNlMzEtbWFpbnQKKzc0Mzg5IDc0M2ZhMjgyZDc0ODEzODQ5OTAwNDQ4ZmFmMDZjZTdkM2Y3YTI0NWIgcmVsZWFzZTMxLW1haW50Cis3NDM5MCBjZTY2NDIyMThmZmVjMWE4Y2M2OTE0YzMwM2U2N2Q0NzQ5YTc5NjM1IHJlbGVhc2UzMS1tYWludAorNzQzOTEgMzRlYTU4OGFjM2M1ODgzY2E2MTNmNDYzZmY5NWViZjFmZTg4Y2YxYSByZWxlYXNlMzEtbWFpbnQKKzc0MzkyIDk0YzI4YmE2NTZiZTA3ZDQzZTNhMDZkM2M0MzhlNTAzOGQ1YjZhNzQgcmVsZWFzZTMxLW1haW50Cis3NDM5MyA2ODBhZDhlZWQzM2IyN2Q5MGExNjM0MjJlYzc0MzMwNjU4ZDYyMTM4IHJlbGVhc2UzMS1tYWludAorNzQzOTQgMTJmZWM3M2NiOGU1M2Q5NjA5MWEzYzM0YmRmYjEyMWFmYjQ4ZjE3MSByZWxlYXNlMzEtbWFpbnQKKzc0Mzk1IDZlMmJhMjM3NjgzM2I2YmYxYzg1YmZhNmQ0N2NiYWVkZDQzODQ4MzIgcmVsZWFzZTMxLW1haW50Cis3NDM5NiA3ZTUxNDE3MDQ2YWI4NzEwYjgwMGYyYzFiN2M5ZjMyMDZlZDkzZmY1IHJlbGVhc2UzMS1tYWludAorNzQzOTcgZmY2ZWVhMDE3YTdmNDY0MTg0MmIxZmYyODllNWVlOTMyNjY1NWFjMCByZWxlYXNlMzEtbWFpbnQKKzc0Mzk4IDU0MTRmZjczODllZTk4MWVkNzJlODA0ODMxNjViYjRlMGMzZmQ1Y2MgcHkzaworNzQzOTkgODdmZGYyNzk1YTdjZDQ0MzY4NDNhZTFkZDQwNzMyNjRjMDNhYjI1MSByZWxlYXNlMzEtbWFpbnQKKzc0NDAwIDlkNDA1ODZhNmFmY2RlMDFlZmNmYjZmYTk1NjM0Y2MwMGRhY2NlZjUgcmVsZWFzZTMxLW1haW50Cis3NDQwMSBmNzI0MzE5OWQwYjFjY2IxMmRlYWY2NThkNWRlMWIxNWNmMzc5MjIyIHJlbGVhc2UzMS1tYWludAorNzQ0MDIgNGQzOGU1MWU3Y2RjOWE5Nzk0M2Y2Nzg1M2ZjMjllMTEwZDE5M2I3ZCByZWxlYXNlMzEtbWFpbnQKKzc0NDAzIDAwNTBiNTcxMWZhYTZiN2I4ZWJhZWVlYzdkNzYxZGY1ZDNjYTQ4MmQgcHkzaworNzQ0MDQgZTA1MzIyZWZjYTg1N2E5ZjUxYzBhNGM1ODFlNmEwYzI4ZmRiNjMzOCBsZWdhY3ktdHJ1bmsKKzc0NDA1IGJlMzQ1MzFjNmQwYjc0OWY4NTk5Zjg1ZWQwMzRkZThlY2QwYTMyOTQgcHkzaworNzQ0MDYgNTZlOGMyMmRmNzFmMzE2Njk3NjVkMjJjNDM5MmQwZWRlYzY4ZTY2NiByZWxlYXNlMzEtbWFpbnQKKzc0NDA3IDkxZTQwZWI0MTk1NmEwNDVkMTAyMTI3MWZlNWNmMjRmNTIxN2QxN2YgcmVsZWFzZTMxLW1haW50Cis3NDQwOCBhMjY3YzYwNDQ2NWYzNzRkNjM4OTRiOTU3ODUxOTM2NGI0MjJjNThlIHJlbGVhc2UzMS1tYWludAorNzQ0MDkgMDE0ODQxN2UxMzAxZDg5M2Q4ZDQ1MTNlNTE3MGMyZTMyOTRkOWRiZCByZWxlYXNlMzEtbWFpbnQKKzc0NDEwIGJlMzQzYWY0OTA5OTk1MzU1MjI1MDZlYzNkNDNlNDJmOWJkZTk2MTMgcmVsZWFzZTMxLW1haW50Cis3NDQxMSBhZjExMGE0OGQxNTQ3ZmFhNmU0ZGUyNTBlNWE2ODE5ZGE2ODcwNGJlIGxlZ2FjeS10cnVuaworNzQ0MTIgNzg1ZWMzNDQ3NmJhZmE1ODU2NmU3NzY3NDNlOGE5OWZmMTQ3ODdhYyBweTNrCis3NDQxMyBlM2Q1MTMxOWI5ZDBlYzgzN2NjMTM3NmRjNTcxOTgwZmNkNzRhNjgwIHJlbGVhc2UzMS1tYWludAorNzQ0MTQgMTIyNGFhM2ZiNmEwZDQ2NzY4MWFjYjBhYjdkZDcwZGY3M2NkMjNiNiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MTUgN2M4ZjQ4MTE2MGMyMmUwNzEyYjVlY2EzMWZlOGYxOTgwZGM1YjU1ZCB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MTcgZjJhMTJmNTI1OWU3ZWRkMjIzYzc1MGUwNWVmNTYxNjJkNmE1MzQ1ZSByZWxlYXNlMzEtbWFpbnQKKzc0NDE4IGY4ZGI0OTNkZDg0ZmI4MzBkOWFjYjQwY2IzNDRhZTYwZmYyOWUzYjkgcmVsZWFzZTMxLW1haW50Cis3NDQyMCBmYWY4YTEwMDk5MGQ2NmNkNTEwMWQ0ODdiYmY5YWU4MDdkMDJlMjNiIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQyMSAzYTM1ZTMzYjA3MWJkNGVkMjc2YTFhMGQ5ZDAwNTYwMmYzYTJiNDFkIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQyMiA5YmM5NTg4ZWI2NGMxOTEwNjgyM2FmYTVmN2YyNjY5YWJjYWM1YjhiIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQyMyAzODFjNmY5Yjc0YWVhZTZjYzNmYTVkZmFhOWI2OGMwOTNjZWU0NWYwIHJlbGVhc2UzMS1tYWludAorNzQ0MjQgNDk2MjkxMDM3NTgyMDk2NjJlYjM5NjM3ODRjMWNjMDQ1NWVmODE4NCB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MjUgZmI1ODU3ZjkwM2ZlOTM3NWFiZGEzM2FjMDU0Nzc5ZDFjYTgzZWU0YyByZWxlYXNlMzEtbWFpbnQKKzc0NDI2IGZiZjhiNzkxY2U4MTFiNDkwM2M0MjBiNTVmODhjZDUwOTQyNjJmODIgbGVnYWN5LXRydW5rCis3NDQyNyAzNWVmYjEwNTRlYzZjZWNhNzIwMTdhNTg3MjYzY2I2YTkyNTczNDBiIHJlbGVhc2UzMS1tYWludAorNzQ0MjggYTFhZDE5MmY4ZGY1NjQzNzM5MGMyYWQ4OGNkMTMyZDk2MGIwNjIwZCByZWxlYXNlMzEtbWFpbnQKKzc0NDI5IDk3NTIyZTI3YjA1ZDBjODIzOGRkNzRmNTU3Zjk0YzM1YTZiMjZjZDUgbGVnYWN5LXRydW5rCis3NDQzMCA5YTZiZWIxYTkzOTc1NzNkZGY5ZDhkOThiZDE2NGFjNWNjMjQ4ODYxIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQzMSBlZWFmZDg3MTY0MTBhNmM0ZGMzYjc5OGEzM2UzZDU3NGEzNjdlMDQ1IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQzMiA2YWMxNDc4ZDliMGU2NjE5OGY5ZmM2Nzk3NTIwYjlhZjk1NTkyZmRiIHJlbGVhc2UyNi1tYWludAorNzQ0MzMgNTE1MmI1MzY2MTJlNDg3OGZkMDBkNTc2N2E1YTcyMWE0Nzc4YzMxNyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MzQgMDFkYjQxMGYyZjIwN2ZmMDA1ZTU5YTdiOTNkM2JiMTAyMzhkMWE3ZiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MzUgODk5MjdmNWU4M2Q2Zjc5NDUxMjY5MjU2YTM1YzVkMTljMjk3OGNhOSBweTNrCis3NDQzNiBkNWE2MmRkOTA3ODk4ODc4MDNiOTUwMTcwY2RkMzY3ODQ2ODY1YzJmIHJlbGVhc2UzMS1tYWludAorNzQ0MzcgYTVlNmYzZmYyZTJmNjQ3OTlmOGMwNmMwZGI4ZjE3ZTI3ZmI0OWQwMCB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MzggNDlhNDI4NjY5Nzg4ZDY3OGQ1MjZjNjY3ZjZmZjM5YTY2NjE2YjY2MiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0MzkgNDI3NTlhNmVlOThhYzVkMzZhYzIwNmQxMDhjNTEwMzI5M2QzOGFmNyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0NDAgMWZjODkwMTRiZDgzZGIwOGI1ZTVhOWJlOGQ3MDg1Y2JiMWIwMDFjOSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0NDEgZmUyODY0NWE2MTIyNmY4MDU1MjE4MzdmNTgyNGI4Y2YyZDc0NmU2NyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0NDIgYmViMTJiYjc3OTFiZjc3OTMzYTI3N2YyNzRkZTc0Nzg5M2Q5NmU1OSByZWxlYXNlMjYtbWFpbnQKKzc0NDQzIDFmYjdlMmY3ZjBiYjRlMjRjYmVhOGEzZDYzNzUzMDdiZTk2Njg1YWQgcHkzaworNzQ0NDQgNWVhM2Q0Njc1NjRhNTJhMWU5MTgzYjZlY2RiMjhiNmM1MDJiZDAwNiByZWxlYXNlMzEtbWFpbnQKKzc0NDQ1IDUxZTVhNDE0YjNjMjQ3ZjJmNzVhNTM4MGRhMWZiYzg5MDJhMTVjYzUgbGVnYWN5LXRydW5rCis3NDQ0NiBhMGY4MGRjMDlkZmUyMjg5ZjhjNDUyMTYzZDY3YWYyOGEyZDc5MTdlIGxlZ2FjeS10cnVuaworNzQ0NDcgYzZkMzI3NjZlOTRjODBiNDZhMmM2ODNkNjZmMjY2NGRmN2YxNmM4OSBsZWdhY3ktdHJ1bmsKKzc0NDQ4IGI3YTU3MWQ0YWFhN2UxZjRhNGJiNmY3YTUwNzgyOGRhZmE3OTkzZjEgbGVnYWN5LXRydW5rCis3NDQ0OSBhZTgxN2ZhNGU2MDU2NmVhY2I0Mjg2N2Y5NDJmOWJiY2UyNzEzYTFlIGxlZ2FjeS10cnVuaworNzQ0NTAgZTRhODNlOTE1MjFhMzY5ZGM4ZDgyNzYzYjM1YjQ4ODhjMTM4MDAxNyBweTNrCis3NDQ1MSBkNzI0Y2E4YzU4MjM0N2IzYTEwNDA3ZmQ0NmM1MmVmMmI3ZGRiMzE0IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQ1MiA0MWIwMWJiOTA2ZTM5NjljZGZhYWM2NTIwZWE1OGE0YWVkNGJkZWY4IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQ1MyBkNzE0MGJiYzY0NzNiZTQ5YjdiNjI5ODE2ZTZmOTlhNjc4MjNhNTQ5IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQ1NCBkNDRlM2FhNDJhNWJjNzgxNzI2MzdmYWM2ODU2MGI0NjgzMDg5NWUwIHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQ1NSAwMDIwODcxODdiMmZmNjcwZmMwNzEzNjc2MGFiMGQ5MzdhNGQ0ODM0IHRrX2FuZF9pZGxlX21haW50ZW5hbmNlCis3NDQ1NiBmOTFjMWQyODgzNDM0ODk1NjZkYWE3ZDdhZGU1ZDJkMjZjZWU2ODJiIHJlbGVhc2UyNi1tYWludAorNzQ0NTcgMTEzYzBiODZmZDc0OWE3ZmNiZjg2YWM5OWM2MDYxOGM2NGZlOWY0ZSBsZWdhY3ktdHJ1bmsKKzc0NDU4IGJjMWM0MDMwNTRlMWM3N2ZhNzIwZWE3ODk2Y2Q5N2EzNzg0NTcyZjkgcmVsZWFzZTI2LW1haW50Cis3NDQ1OSAzMDk2M2NmYjY5ZmQ4MjBiYjgwZDZkM2U1ZjhiNDQ0ZDI3ODUyZWU5IHB5M2sKKzc0NDYwIDRjNTFjNGJmZmIyMWE3MGY5MWU3ZjkxMGUzMTlkYjBiNzM2OGFmYTAgcmVsZWFzZTMxLW1haW50Cis3NDQ2MSA2NDNjNmM3Njg0YjE2NWM4ZjI2ODk4YTBiMjI0MTFkYTM4ZGMxMzI2IHB5M2sKKzc0NDYyIDIyNzdlYmNlZGE0M2E2YzE4NWEzZWRhOTgxMDE3ZmI4ZmU3MDU0NDkgcmVsZWFzZTI2LW1haW50Cis3NDQ2MyAxMzc3YThjMjY3OTIyNTc2NDExZTNlYjllYTMzZDk2OTNkNDk1MTFlIGxlZ2FjeS10cnVuaworNzQ0NjQgMWUyODc3MDI2NDM1ZWJkYjNhZWMyZGNiYWZjZmQ5YzdmNmVmMDI0MyBsZWdhY3ktdHJ1bmsKKzc0NDY1IDAwNTMwMjg3YmRiNTExMzFlOTU2NmU2ZTYwZDlkZWFjYTJiNWJkNzggbGVnYWN5LXRydW5rCis3NDQ2NiAzODQzMzRkOGI5ODc1YmU2MjgxMjkwYzk0YjI1ZmQzYjAxOWUxMGYyIHB5M2sKKzc0NDY3IDBmY2Y0MGExNDBlNWVkYmMwOTc2NTU2ZDMyMGI4NGY2YzU5NzI2YmMgbGVnYWN5LXRydW5rCis3NDQ2OCAxOWZjMGQwNWZhN2E0OWJkNWQzZGVlOTg3YzQwZmMyYWRhN2FlMmRmIHB5M2sKKzc0NDY5IGZiN2Q1ZWU5MDhhNTAyYTk2NTBiYmZkN2U0ZWZjZWRkOTMxNmQzMzYgcHkzaworNzQ0NzAgNmFjMmE2NGU4MjZiZTQ1NDQ4NjJmMjM5MWJmMzE5NGRlYzZlZTBhMCByZWxlYXNlMzEtbWFpbnQKKzc0NDcxIDEyMjdlN2NjMWQ5YjE4Y2RlODgyMmI0MjU1ZmUyNTc4MWZjNDVhMDggbGVnYWN5LXRydW5rCis3NDQ3MiBjNjMwYmYwNWNlMzhkZmUyZTcyMDkwNTY0YTRiNjUzMzQ0MjhjNjljIGxlZ2FjeS10cnVuaworNzQ0NzMgYmVjMzQwNWUwNzNmMzQyZjk4ODEyYmYwNzYzZDgwNTE3ZTdkZmNhNSBweTNrCis3NDQ3NCA2YWZhNWJiZGMzNzU0YjY0NjVmODQ4MjdlOGYzOWY0ZDAxOGI1Y2Q0IHB5M2sKKzc0NDc1IGQ3ZTFkMzk3OGRkNjAwNTNiZThmMDc1MzI1MDY5NTBiZmVmMjlkOWUgbGVnYWN5LXRydW5rCis3NDQ3NiBlNTIwMDllMjIwMTdkNTFhNDBjZGU4ZWI4MDE4NTYwN2MzN2E3ODM4IHB5M2sKKzc0NDc3IDZkYTZlZGZhNjI5NmMyYmQwYTlmY2UyMzc1ZjIwNDRhYmY1ZWNiZjkgbGVnYWN5LXRydW5rCis3NDQ3OCA0OTVlZWZmM2I5ZmYwZGJiZjljNGY0MDljMThhNTM5Y2MzZjE4N2Y5IHB5M2sKKzc0NDc5IDc0NmYxMGUwNjI0ZTlmM2U0NzkyOTg5MWViZDg2NTljNDgzNDg1M2UgbGVnYWN5LXRydW5rCis3NDQ4MCA4YjljMGY1NzNhYjI5YzQxYzZjNWZkY2NhODJhMWZlMGZmNTM1NWFmIHJlbGVhc2UzMS1tYWludAorNzQ0ODEgNWVmNmJjMDA1MjBhYjAxOGQ4N2FhOTdiM2U3MDM3MDEzNDJiZjgxOSByZWxlYXNlMzEtbWFpbnQKKzc0NDgyIGRhMjFiNDgwZmYwNTIzNTU2YmM3OGU5OWVmNzkyMTMxZGU1NzUxNjEgcHkzaworNzQ0ODMgZGVmZmU2YWE0M2QxMTRlOGJmNWVlMTM5MGY4ZDhlOTIxZDM0YzgyMiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0ODQgMzRjNmY2ZDI2OTc2ZDNhNjlmZTQ2ZmJhOWNlMWU3NGQzNDA0NWNkMyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0ODUgNDI4NjMyYTU5MGFkYWNlM2I4N2E0NzBhZWI1ZTMzNjFiODZjZWE2YiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0ODYgNzg3NWRlYWM0MTBjOWMzYmY0MDQxZGU3ZDlkZmNiYWY4N2VkMDRhNiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0ODcgZjZlMTdhZWI5MmFiYzg4ZTBkNTRiY2UzOGQxNmM4NjUwYjlkOTMwNSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ0ODggNDJiMjU2Nzk0ZTZjNTEyMTliZmZkZjFmMTA0YjIwZGRhZGJjZTU5ZCBsZWdhY3ktdHJ1bmsKKzc0NDg5IDRkMDg4MThiNmM0YTFkODg3M2IwZDgzYWQ2YmNiM2YyNGExNTFlNTkgcHkzaworNzQ0OTAgMjE3YmNiODYwM2FhZDE1YzkzNzU0OGY1Zjc4ZDQxY2I2MTVlMjcxYiBsZWdhY3ktdHJ1bmsKKzc0NDkxIDBiMDdjMDNhNWYzYzM2ODQ0MDE1MDc1MDQxZjBhMGI0ZDEwYTFhZGMgdGtfYW5kX2lkbGVfbWFpbnRlbmFuY2UKKzc0NDkyIDRlYWMxMzJmYWM5NGI4NGYyYmI0MTMzN2FiYTJmYjliZWY0N2I0ZTUgbGVnYWN5LXRydW5rCis3NDQ5MyAzODRmOTY1ZTEyY2RmMWQ4ODlhYWYwZTk4MjQyMDdiNTA5YTMzOGE4IGxlZ2FjeS10cnVuaworNzQ0OTQgNmIwODhkY2YyNWY4Yzg5YmFhODhkOTAxNmI4ZGU4ZWZkNTE5NTQzOSBweTNrCis3NDQ5NSAyYWFmN2QxNDFiZDBmZWQ5NmY5YTI3YmQ5Nzg0YjY5ODcwODY0NjMxIGxlZ2FjeS10cnVuaworNzQ0OTYgMjgyMWU1ZTc2ZTgyOTFjMjc4ZmE4ZDlkMDVmOWNkNmRlMThmYWU5MCBweTNrCis3NDQ5NyBiNTYzYWIwMTcxZDkyMzhiMWRjOGU1YmQ5NTM4YWEwMzI1YmNjOTJlIHJlbGVhc2UyNi1tYWludAorNzQ0OTggZTNhMGQ0YjBkN2FhMDIwOTJjMzdjMjk0NDM3NTRlZGI5OTlhNzVlNyByZWxlYXNlMjYtbWFpbnQKKzc0NDk5IGM4N2FhY2NjNzBiNjE4MDAwMjdmMjlmYWVmM2FiOGI5MDU0MzM5MDIgcmVsZWFzZTMxLW1haW50Cis3NDUwMCBkNDI4YmMxODRlMWZiZGMwOWFjODQ4YWMwMjc5YzBmZDc3NDJlMDE0IHJlbGVhc2UzMS1tYWludAorNzQ1MDEgZWIxMDA5OTM2NmVhNTIyNjA0MGE2NDBhZDlhNGFlY2JhYjRlZTIyNiBsZWdhY3ktdHJ1bmsKKzc0NTAyIDI0Yzk1M2YzZjhkYWYyYzk1OTQ3YmI4MDM3ZGJiYjA0NGFjMzBjMjMgcmVsZWFzZTI2LW1haW50Cis3NDUwMyBhZTJmNzVhYTNmYWE5NDQ0MWFmOTJhNjhmOWMzNjJjNmFkYzA2Y2Q4IGxlZ2FjeS10cnVuaworNzQ1MDQgOTUxNjYzYzAzMGI0OGM4Y2FiZTI3NWNiZmYwOTE5YjYzNThhMTgzMSBweTNrCis3NDUwNSAzYmYwM2FkNGE2YTA2Zjg1ZjQ2Njc1MjM5NmQ3MGZkYzZhMWFlZTlhIHJlbGVhc2UyNi1tYWludAorNzQ1MDYgZDg3NDA2NDZhMDMxY2NjZGFjNmIzNGRjMzc5MDMzNjJmODIwNzIyNiByZWxlYXNlMzEtbWFpbnQKKzc0NTA3IDczZjQzMmNkODJkZThjNzBlOGU5NzgzNjQzYTM4NzM0MmExY2Q3ZDYgbGVnYWN5LXRydW5rCis3NDUwOCBhZDkzMDA2N2MxMjRmYmNjY2M5MmY0M2M0NTVhYzEzY2ZlOGFiNzYwIGxlZ2FjeS10cnVuaworNzQ1MDkgMzdmMmYzNjdhZDhiYmM1NzVjNTU2NjcwZmIyNzFkMzI4ZTQzNGU4MCBsZWdhY3ktdHJ1bmsKKzc0NTEwIGNkMTgxYTZmNGRkNzM3NTExYTI4MDgxOTZkY2FjZjRhZTQzNjFiMDkgbGVnYWN5LXRydW5rCis3NDUxMSBmODAxMmZkZGE2ZDNkZTBlNTExMzI5OWNkOWFmZGRmMjRkZWNjZDY5IGxlZ2FjeS10cnVuaworNzQ1MTIgZjc0NjZhYzFkZDcyNWY3Zjg1YjNmYjQ4M2JlM2MxMTBhMTk0Mzc2YiBweTNrCis3NDUxMyAyY2ZiZGU4Y2JmODg2MTg3MzUwNzFhNTQ3ZWQ2YmZjNWJkMDRjZTFlIGxlZ2FjeS10cnVuaworNzQ1MTQgMDMxZTQzMTY0Yjc2OGQxOWU3NTY4NGY0ZTI4Y2U5YmM5Y2IzNThmYSByZWxlYXNlMjYtbWFpbnQKKzc0NTE1IGUwMWExOTkwNzE3MTExODc1YzQ2MzE5MDM2MDc3OTAzMzE4ZmJkNDggcmVsZWFzZTMwLW1haW50Cis3NDUxNiBmNWU3MDExZmJmZjEyMDVmOWI0NWViODc1NTY4NzE3MTNlODFlNjUwIHJlbGVhc2UzMS1tYWludAorNzQ1MTcgNjUwZGYwZWMwYzEyZjZmMThiNWEyMGI5ZjNhOWI5NmIxYzk4NzQ5ZSBsZWdhY3ktdHJ1bmsKKzc0NTE4IDNhYmJkNzIwOWJlODUwMDVkYmMzY2VhNDcyMTI1Y2U4MDRkNWVlOWUgcHkzaworNzQ1MTkgY2QwYzhhYzljYjQ5NDMxN2Y2MjBiYzE3ZWM2YTRlOWQzZmYwZDZjOSBsZWdhY3ktdHJ1bmsKKzc0NTIxIGZlZmQ5ZWI3YTgyMmRjZmUyOGJjNjE2NWRiYjlhMGE4ZWVmNDhlYmUgcHkzaworNzQ1MjIgYzdjZDI3ZjY2NWQxZGRjNzcyZGMwZDQzYjE4YWNlYjhmMGExODQxNyBsZWdhY3ktdHJ1bmsKKzc0NTIzIGU0NzFkNmQzMjcyNGFhNmUyMzA1MWZmOTU2MTYzMGNiMjhjYTRhYTQgbGVnYWN5LXRydW5rCis3NDUyNCBlMjFjNGM1MjdlNjYxZWExYTk0YjAzMGVlODNiMmYwNTZjNzA5NWRlIGxlZ2FjeS10cnVuaworNzQ1MjYgOTc0NTUzZmI1OWRjYjMzY2I1MjgwZjY0ZmM4YWY2MjIwZjU2OTI5OCBsZWdhY3ktdHJ1bmsKKzc0NTI3IDAyZDQwODlmMzFkZGNjYzc3ZTFiOWUyNTA0MGJlNDQ4MmJiNmRhODAgcmVsZWFzZTI2LW1haW50Cis3NDUyOCAzOGI5N2MzZTk4YmRhYTU2YWE4N2JkNTBkMTc1ZWNjOGY0NTEyNjA1IHB5M2sKKzc0NTI5IDg2ZWY3NGM0YWQ5NzdiMzMwNTIyNjczZmJiM2E4OTRiNWU0MTQ2ZGYgcHkzaworNzQ1MzAgMGU1NWZjY2IxOWVjNTVkMzAzZGY0MmRmNGY0NmZiYjAxYWI4NjMzNiByZWxlYXNlMzEtbWFpbnQKKzc0NTMxIDQ4NzFmODFkNzEzMjAwNGMzZjhkMzM4YTFjYTBiZTNkMGM4NTgxNTYgbGVnYWN5LXRydW5rCis3NDUzMiA1OTRlMTk3ZWQ2M2Q1MmVmYzk5YWQ2N2NjYmM4YThkZTZjNGU3YjhkIHB5M2sKKzc0NTMzIGYzNDA4NzYwZDQ2ZTVjNWFhNjkyZThjZmQ5M2VhMGY5NDYzNzNjMWQgbGVnYWN5LXRydW5rCis3NDUzNCBiYzE2NzA5MmM5OGNiOGVjMTE1OTg4ZWMwYWFiN2IwOGIxMmYzZjZjIHJlbGVhc2UyNi1tYWludAorNzQ1MzUgMTNmMTlmYjkzZjhlY2Q3YWJjZTIyNjBjMDFmYTU2NTM3YmQyODMwZCBweTNrCis3NDUzNiBhODg5NDFlMmJmMjczZDI5Y2Y4NDRhMGQyOTYyY2RhYmYxZjliOGM2IHJlbGVhc2UzMS1tYWludAorNzQ1MzcgMTU0NWNmNzM3MmFmOTY4MTc1MzkyMGQxYWM1MmRmZTc4Zjc5ZmRmYyBsZWdhY3ktdHJ1bmsKKzc0NTM4IDVkN2Y2MGJmZmU4ZmM1YzY0N2IwNGVlNTRlYmRjZmVkNGFkMzkwMmIgcmVsZWFzZTI2LW1haW50Cis3NDUzOSBjNGQ1ODFlNzA5Y2E1NGFmMzUxMjZiYTBhM2U3ZWExMWQ5MzM0ZDc5IHJlbGVhc2UyNi1tYWludAorNzQ1NDAgY2ZhN2FlNzE3YTkwYjZjOWYxZjVlYWE5YjJiNTY3Y2UzNWMzNjc1ZSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ1NDEgYzQwM2I2NmQ5MmIwZmEyM2JhOTI5MzljNjQxOTlhNzcyNGNiYjgyMiB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ1NDIgOWEwOTY5YjZmOGU1ZTYzMjZkMmI1ZGQzNDNjYjY1ZDVkYzZkMjczYSBsZWdhY3ktdHJ1bmsKKzc0NTQzIGM0ZDhjYmFmZDhjODkwNjFmYjkyNGNmOGNhYzc5OWUxYTUwN2RiZTYgbGVnYWN5LXRydW5rCis3NDU0NCA2NzVhM2MxODI0ZjQwNTkxMDhhMTA0ZTk1ZmZjNjAxZTJkMTZkNmNkIGxlZ2FjeS10cnVuaworNzQ1NDUgMDkxODMxMmEyZDdiOWFiMTgyYTFiNDQ1Yjk5NTNlOGM0OTMwNTJiOCBsZWdhY3ktdHJ1bmsKKzc0NTQ2IGZmY2ZjOTkwZTRjYTE5Y2E3ODdkNGU0NjQ0MmFiNmRjNTNiYzZmOWMgbGVnYWN5LXRydW5rCis3NDU0NyA5MmUzODU4Y2NhNzBhZTZjYTRhNjU3YTA0MmVhY2M1YTRlNjViNGQyIGxlZ2FjeS10cnVuaworNzQ1NDggZWM4ZDI1ZTA1MDBhODhjNzgyZDZlMDA0YTIwZmY2MWQwNWE4ZDVhMCBsZWdhY3ktdHJ1bmsKKzc0NTQ5IGRiODZkM2NjMWU2YjkxNWYyOGQ3YTE1MTkwNjE2MmI0OWQ5MWYwYzMgbGVnYWN5LXRydW5rCis3NDU1MCBiNjAxMzRlZTVlYjQ1YzNmYmU2NTEyM2E0MmEyZDZlMGYzZWQwMjAwIGxlZ2FjeS10cnVuaworNzQ1NTEgZjc1ZjI3OWJjZDM0MDQ5ZDQyYzUxMTQzMjI1MWFkOTM0NDg1MTgwYyBweTNrCis3NDU1MiBkOTFhZmYyMDZkZmRlMDMwYmU5NmE1Y2FkNzQ3NWZkMTVkMDU5MjFkIHJlbGVhc2UzMS1tYWludAorNzQ1NTMgZDAzZTUyOGVmOTQ2YWE3YzRlOTM0N2EyZmEzNmNkMDljYjFjMWM0NSBsZWdhY3ktdHJ1bmsKKzc0NTU0IDQ4ZGY0MDdiNjA2ODI3NzA1ZGIyYzg2ZTE3MGEwNzIwMTRiNjlmNjIgbGVnYWN5LXRydW5rCis3NDU1NSAxNGM1ZmFiM2VjYmY0NjZjNGU2NGMxZDhlOTZjMzAzZjJkOTBlMjA1IGxlZ2FjeS10cnVuaworNzQ1NTYgODAwNThkZmU0NjlkOWM3N2ViYjJhMDNhYTU1ZTVkMGQxNjdjMmI0MiBsZWdhY3ktdHJ1bmsKKzc0NTU4IGFlMDBhM2E4MDQ3MzkzMzg4Njk1MjFjY2IxNGU5Yzk0YTBkN2Q5OGMgbGVnYWN5LXRydW5rCis3NDU1OSAwZDliNTU2YTQzNzgwNjliODI0YzRmZDg0YTQ1YjAxZDczMzZlYjI0IHB5M2sKKzc0NTYwIDczNTMyMmFhNzFkMWFlNmUyNTFhMDlhY2JjNjE5MjEzOGIwYWI2ZDYgcHkzaworNzQ1NjEgYjY1ZWJlZDA2ZWIwNDU5ZGExNzRkNTcyZjMxMGQ3NGJhZWFkYTcxMSBweTNrCis3NDU2MiBiODlmNTgyZWU3OGE4YjgwYTQ1NjVkNTJmMjNlZmExNjdjOTkxYmFmIHB5M2sKKzc0NTYzIGUyMTMwM2NhYzEyMDVjNDU5M2QyNjllODIwNTI5OTVmZjdkZDQ4YjAgcHkzaworNzQ1NjQgZjI5YjU5YTQ5MjQ2MWUzMWUxYzczNDAyZjY4NTE0MzEyMzIxYWEzMCBsZWdhY3ktdHJ1bmsKKzc0NTY1IDFmMWI0YzAzZTg5MmFhMDQ1ODhkYjVhYjkwNWYzYjkyYjY3NTI0NmUgcmVsZWFzZTI2LW1haW50Cis3NDU2NiBkMjEwNzdlNjM5ZmRkMWJkNGVhZjA1YmEwM2E1Mzk5YTcxOGNjYmEyIHB5M2sKKzc0NTY3IDA5NGE2ZjE1ODY0MTc0MjAxYWFhNzM3ODQ0YzE5YmI4ZmFmMjk3ZDIgcmVsZWFzZTMxLW1haW50Cis3NDU2OSBiNmJmMmE1ZjQ5ZGRkZDBiNzdlZjlkM2QwMzEwMjZkMjNjZmU3YTVhIGxlZ2FjeS10cnVuaworNzQ1NzAgMDI5NTBkNTgwODA4YmExZWVjNTU2ZTUwMzQxMDI2OWQ0ZDA5MzFlNCBsZWdhY3ktdHJ1bmsKKzc0NTcxIDVmOWUxMzA2NmQzNjY3NGEyMzYyNjI4NjE4YjMwMTMwNzcyOTYxZGYgbGVnYWN5LXRydW5rCis3NDU3MiAzM2NlNGM1YmMyZTU2MGNjYmE0NDZlMmY1YTFhZTg0YWYyNTczMTIxIHJlbGVhc2UyNi1tYWludAorNzQ1NzMgOWE3OGUzZDkwNjE3MWM3MjE4YTFhMTZkZjk3MmEzMDUzNmI4M2ZiMyBweTNrCis3NDU3NCA0NzRhOGUwNmU5NjYxYTAyYTUyZDliNzgwNDg0NGM3MTBkYzBlMzQ3IHJlbGVhc2UzMS1tYWludAorNzQ1NzUgNjA2ZTk3Y2FlYjc3MzZmNWJhYWVkY2Y1ZGYxZmFjZTEyNzMyZDk4NSBsZWdhY3ktdHJ1bmsKKzc0NTc2IGJmYjIzMzc0NTFlOWFjNWJlZDFkNzZiYjY3OGY5NjM2MTFhNTI5NDUgcmVsZWFzZTI2LW1haW50Cis3NDU3NyA2ZGVjYTczYmQ1MTJkZmNjMzhjMTQ1YjQ2MWE2MzljZGIzYTkzMTZlIHB5M2sKKzc0NTc4IDA0OGE5MTM4MWJkODBhZTFjMGM5YTFkZmZkMTMyMzk5MWNlNzIzMmYgbGVnYWN5LXRydW5rCis3NDU3OSA3ZGUyMDdkZDQ3Mzk5MjY0OTE0NjI1Nzc0NjgxMWIxN2M3MjI3ZjgxIHJlbGVhc2UyNi1tYWludAorNzQ1ODAgYTRlYmFiODQ1ZjcyNDFlZjQyM2M3NDM0NTI2NDU1NzIxYTA5YTVlOCBweTNrCis3NDU4MSBkNDAzN2ZiODU2ZDIxMDhhYWU4OWY5ZjQwMmY4NjFlNDNkY2E4ZmVkIGxlZ2FjeS10cnVuaworNzQ1ODIgMWI5MTI3ODcxNzIzMjA1ODk1MGE3ZmFhYTFiMTg2NzA0MTBkNzhmOCBweTNrCis3NDU4MyBlOWJhYTJkZThiYjRlY2RiYjAwNTVjM2U1MDNkOWQxYjhiZTIxN2ZlIHJlbGVhc2UzMS1tYWludAorNzQ1ODQgZTRjMmNiZDNiZjkzODMzY2YwN2NiZTExOWVjMjI2ZDNkZjZkNzQ5MyBweTNrCis3NDU4NSA2OGM5MmVkOGQ5NjA0ZDMwYTUzMjA3MWNhZjE3OGYyZjg2ZGUzN2M5IHB5M2sKKzc0NTg2IGQ4MjgwMzY0YzU4MTRmODQxNWU1YTM0YTVkYWM3YmI3MGUwZTczOGUgcmVsZWFzZTMxLW1haW50Cis3NDU4NyAxZjc3MmY4ZmVjOTIyYmY1NDdjNmI5ZGY1ZjllMzY0OWQzMDkwNzU2IHB5M2sKKzc0NTg4IDZmYThhODExOGRmMGMzZmRiY2RkN2Y0YjZiMWMwMjAwOTE5ZTU5N2YgbGVnYWN5LXRydW5rCis3NDU4OSBhZWRjNGVjMmZlMjQwMDc3NzcxYjExYTFmY2E3YTMyMGNjYmNmZmIwIHB5M2sKKzc0NTkwIGI0ZmM4Y2JmZTFlZTkxZjBjNGVmODg1NzI2YjdhMWI4NjQ5OTBkYWUgbGVnYWN5LXRydW5rCis3NDU5MSAwODA5MGI1ZTk2YzJmY2U3NzIwZTc2M2RlNjI0MzhhNWFiYjFlMWQ2IHB5M2sKKzc0NTkyIDY5NjE2ZTIyODcyOGUzZDljYTVlYTcyODY3Y2I1NzMxZWZmNmNmMzggcHkzaworNzQ1OTMgNThlNjMxOTdkNGVhYjMxMThkZmI4OWQzZDUxNjhjYjUwMjc4NDIyOSBweTNrCis3NDU5NCAzNjhiZmMxOGE3YTEzOWFiOTVkNjZhZTJmZDA1YzVmYmE1NTRhZThjIHB5M2sKKzc0NTk1IGJmNTAwZDg4NTc5NjZhYWY1ODdiM2EyYzUzZDY3YmNjYTc4NDZiZTkgcHkzaworNzQ1OTYgNTYwMDA4ZDA5OGRkYzcxOWUyMDMzMWM0ZWQ2M2EyOTQxNDIxYjcyNyBweTNrCis3NDU5NyA4NmZhNDNjNmQ1N2M2NjFmYjhjNDBlYTU2NDlmY2FiNjdjNDM3NzgxIHB5M2sKKzc0NTk4IDgwMWFhNTJiMTIxNzA1OThmNzg4ZmM0ZWMzMDA4MjRmYWI1MTFjYjMgcHkzaworNzQ1OTkgOTlkYzIyZWYxZGYwNDg4MGI4YmZmM2FhNTY5MTQwNTdiN2YzMDY1YiBweTNrCis3NDYwMCAzOWJjYmYzMTZkYmE2N2I3OTAwN2YzZDQyNzFkYTE0N2M2OGYzYTc0IHJlbGVhc2UyNi1tYWludAorNzQ2MDEgOTQyNDlkMTQyNWEzZmRiNjc0Y2ExZGMzZWRjMjU2MzcwZjljMjIyNCBweTNrCis3NDYwMiAwMjcwMDdiNDNmMTY1NjBkZjJiODQzMTFkYTc5M2IwYzc3NDU5YTQ1IHB5M2sKKzc0NjAzIDc4Yjg2ZjhiZjVjNDU5YzE3NWRlYWY4NWZjNGU2M2QzZmZhMmE5MDAgbGVnYWN5LXRydW5rCis3NDYwNCA0M2E2NjY3NjhmNDc0YjU2MWZjNjRiZmFmNzJlYmNlZjMzNjg1OWIwIGxlZ2FjeS10cnVuaworNzQ2MDUgMzVhMTYyM2MxMDIzOTA4OGIwMjZjOTUxNjE5OWEwNGJkMjAyNjMwNSBweTNrCis3NDYwNiBlODE0NTNiYjA3ODkzZjdlNjRhNjQ5NjRmMTg1MjUwM2JmM2EwOWYzIHJlbGVhc2UzMS1tYWludAorNzQ2MDcgMDVhZDllYzYzMDg3NzQ5MzYzOTk2ODhkZmExMjIzZDE2MTg3NWQ2MyByZWxlYXNlMjYtbWFpbnQKKzc0NjA4IGFjZjIxNWJiZTcwMmUwNTU3MGQ0Y2MyY2MzZDQ4NzhkZTNmNzcyMDkgbGVnYWN5LXRydW5rCis3NDYwOSAxMWI0NTUzNWExYjNlNjE5Y2U2ZGI3ZmFhZjI2OThkOWYyM2I4NWQyIHB5M2sKKzc0NjExIDg0OTkyOGQ3NWQ2ZTM5ODhlMWM4NWM5YWI2YjQ2Nzc0OWNlNGRkMzYgcHkzaworNzQ2MTMgMDdjMjM4MDZjY2M2YzJlZGJlMDZjYjQyOTNmN2YxZTk1NTZjODdhZSBweTNrCis3NDYxNCBiYTViMjY4M2MwNjQwYzYwMTMyYjU4OWY0ZTE1MGRkODc0MDlhYzNmIGxlZ2FjeS10cnVuaworNzQ2MTUgZTViNDYzYTYxZWUyNjllYThjZjA5NDM2NDcyMjBkOTM2YTk3NjEwZiBweTNrCis3NDYxNiBlZDdkYmM5MjJkMDVjOWY0NWUxN2Y3MDk3ODc4MzFhNjczODM3Yjc5IGxlZ2FjeS10cnVuaworNzQ2MTcgZTE1N2NlYjU0YTQzOGIxMTY1OThlOTRmZGE0MTRhY2JjZDI4YTQzYiBsZWdhY3ktdHJ1bmsKKzc0NjE4IGI3NGE3YTNlNDFjNTcyZGYzOTgwNzJmNWZmNDllNTgxYzYxMjc4MTEgbGVnYWN5LXRydW5rCis3NDYxOSBkNTEyY2JiODVhZTAwMWQzOTZjOGQ5ZGQ0NjUxYmFjNzY2MzcyOGVjIHB5M2sKKzc0NjIwIDgxOGJhODk4NTI4MTA0MzVlMTY4MzU5MjQxZDIxZmJjZTMzMWUwMjUgcHkzaworNzQ2MjEgNjZmNDhiYzk0ODE0ODc1MWJhYTc4MzU1ZmE3NjIwMDM4ZTJhMTgzOCBsZWdhY3ktdHJ1bmsKKzc0NjIyIGFjNzU1YzU2NjEzNmQ1MTMwNzYxMzJmY2IzMDhhZGU1YTY5OGM1NmIgcHkzaworNzQ2MjMgMDA4ODg0NGQwMTA5YTRmN2I3M2Y3ZTcyOWJhYzk0YjdiZGVmY2NjYSBweTNrCis3NDYyNCBhZmJiMmIyZmY2Zjc4MTBkOTVlYTc0NDhhZGYxMmQ3OGE1OTkxNThhIHJlbGVhc2UzMS1tYWludAorNzQ2MjUgNWQyYjY2ZTAxOTY4YTNmYWFlM2YxYTI0NWI3NDM3ZjIwZmMxOGM3YSBsZWdhY3ktdHJ1bmsKKzc0NjI3IGZkOGE1ODkwMDhhYzIwZTQ1MTg3NWUxNThlOTk4ODczMzU4NDY0ZDUgcHkzaworNzQ2MjggYTQ3YWExMTBmY2FjZjg0YWVkNDRkMjg5ZmYyMjY1YTM3OTk2YzQzNyBweTNrCis3NDYyOSA2YjgyYmEzMDRhN2VkZTg3NmEwYjc3ZWE3ZmVjM2UyMGRhMWIzYWM1IHB5M2sKKzc0NjMwIDEwNmVlNGViNTk3MDVkY2VmZjNmYjRiYzRlMjJlOTVhYmVhYTg5OTIgcHkzaworNzQ2MzEgOWZmYThmODg3NzUwOTQ4N2VlMjU4YTJkY2NkZTJlZjk0YmY0ZDk3YSBsZWdhY3ktdHJ1bmsKKzc0NjMyIGUwY2VmMDIzMzAyMDNlNDZiMjE4MTk2MDVmZDYxYjQ2M2FiZGIwZjIgbGVnYWN5LXRydW5rCis3NDYzMyBiYjkwMDUxYjQzNGMwM2VlNzMzYmZiYmI5NmRmMDhmNjg1YTVhOWVhIGxlZ2FjeS10cnVuaworNzQ2MzQgNjM3MWUyZDBkZWEwMDkxNmY4YWY4NWRhMWQ2NzRlYjgyOWYyMDhjZSBweTNrCis3NDYzNSBkNTVjOWEwNjMyNThhZTc5M2I2NDY3ODM3MWQyNDQ0NWVlMmEzMWRmIGxlZ2FjeS10cnVuaworNzQ2MzYgZWI2NzNhNDAxYjlkNTUwODYxYjUwMmFmNDJhOTFjNjA0NTZmZmI1MiBsZWdhY3ktdHJ1bmsKKzc0NjM3IDk1ZTU3MzhjYjMwOTgxODE4YTViYzgzZmJkZTdjNTQ4YThjMDQ3ZDYgbGVnYWN5LXRydW5rCis3NDYzOCA3NmFlYmM1ZWE0NWNiYWQzNjE1ZGY1ZmQwMGExZmRkNDQzZWFjN2YzIHB5M2sKKzc0NjM5IDNiOWU3NTMxMWU0MzBhMzY2Zjk5YjgwZjdiOWY5YmQyZDk2YmQ0MzggcHkzaworNzQ2NDAgY2U3ZTAwMzg5OTZmNGI0ZjgzOWQ5YzViNDkwODBmNmI5ZDg1NWNiZiBsZWdhY3ktdHJ1bmsKKzc0NjQxIDFmMDNmMjkyMGM2MTcxZTg3NTU4OTE1NWU0YzExYTJhZTliNzlhNGYgcHkzaworNzQ2NDIgNzdhYjkzY2EwNjVlMzY3YWYxZjE0OTE5NWU3Yzk2ODA2OTQxZGE4ZiByZWxlYXNlMzEtbWFpbnQKKzc0NjQzIDdkMzllMjEzYjc1NjM2N2Y4YTFjODJhZDI3NzBjMzcwZjdlNTYzYjMgbGVnYWN5LXRydW5rCis3NDY0NCA2MWRiYzFkMWI4MDRkNjI4NGY2ZmI0MjNlMTFjMjU3ZjAzMTcwZDA1IGxlZ2FjeS10cnVuaworNzQ2NDUgYTA3ZjMwZDdkMGYxY2VmMDg1NTEzYWE0YzIxODYyZDlmMzg3ZDAyMiBweTNrCis3NDY0NiAyNWIxM2Y3ODJmZmU4NDhhMWQzZTAyMTM1OTRmMzk3YzEyMjM3NDk5IHB5M2sKKzc0NjQ3IGM1MTcyMWQ2NDQ1MWE0OTJiMmZiOGNkODk0ZDY1NzFmZmI4YWJkMWEgbGVnYWN5LXRydW5rCis3NDY0OCA2M2I2YTkxYWQ5ZDk3ZGM4ODhlZDkwZGFlNjRmNjUwYTM5NDlkNWQ1IHB5M2sKKzc0NjQ5IDE3ZTgzZjAxNjllODFmZjFkYWUzMDg5YWMxY2VlZWY5YjA5YWRjMzEgcHkzaworNzQ2NTAgNjc1OGJmMjAwMmRhYjdjMTY3YjRhNzc5MmI4YjBkOTkxN2NjMzkwZCBsZWdhY3ktdHJ1bmsKKzc0NjUxIDhhOGUzYzE2NjhhMDk5NzQ0MWUzMWFkYzcxY2M3ZmQzODg3M2Q5ODEgcHkzaworNzQ2NTIgMTUwMWExMzYwY2U0ZTQ4NTc1YmU0N2M0ZjA1ZjdmYWRmZTFiZTAwOCBsZWdhY3ktdHJ1bmsKKzc0NjUzIDIwYmZjMWQzNTk4OWMwNDUwOTc1NjY5ZDZmMThjMzAwZjE5NDZjMTcgbGVnYWN5LXRydW5rCis3NDY1NCBjMjE2NWJlMDAxNzFhNjgzOTQzYjVhNGVhZmZmNTMwN2MxZThhZjY4IHB5M2sKKzc0NjU1IDc3ZGIyNWM3NTI2YTEyOWU0YzJjZTA0OTcwZDllNmFlNmJjNTU4YTggbGVnYWN5LXRydW5rCis3NDY1NiBlODQ0MTg1MDc5MGY4NmRkODEyZjRhMzIwZDc0Y2E2MWRiOWM1YjhkIGxlZ2FjeS10cnVuaworNzQ2NTcgNzU4MzdjZmU5ZmZiZjlhZmFkY2U2OTY1Mzk0MDQzZjZlMzE1MjdlYSByZWxlYXNlMjYtbWFpbnQKKzc0NjU4IGQ1NjdkOTYzY2IzNzA0YThjMzhkNzg5ZjE1MzAzMzY1ZDc3YTAyYTAgcHkzaworNzQ2NTkgMGY2ZGMyZTZmMDkxZTQxMjI3MWQ1OTQwNTJlMjcwNjQyMGVkMzJiNSBweTNrCis3NDY2MCAzYjBiMzcwMTRhYWViMTc5YzcxYjZlN2JjYmZlMWIxMzU2ODZiMzNjIHJlbGVhc2UyNi1tYWludAorNzQ2NjEgNGRkYzA1OThkZjc5ZjYzMDVhNzI1YTMwM2E5OGE0MmU0ZjNjNGQ3OSBweTNrCis3NDY2MiAyNjZkN2RjM2Q2NTUxMDNjYTRhNmI2ZjA0MDc1YmE4YWQ5NDE2ZmUxIHJlbGVhc2UzMS1tYWludAorNzQ2NjMgZmZiYjhmZmYzNTIwZWY4YTBiMWYxMzgxM2U0NTBiMTMyN2NhNzE2MSByZWxlYXNlMzEtbWFpbnQKKzc0NjY0IDZmN2U3MTkyZmViYjBmZDE5YTgxNjIxZTM4ZDRlMDE3YWU4YzhjNGEgcHkzaworNzQ2NjUgNzgzNzA1YjA0MjU4MGUzMTAwNTg4ZGY1ZTNiZWJiMTk2ZDFhM2M2OSByZWxlYXNlMzEtbWFpbnQKKzc0NjY2IGQxOTExNDQ5MjI4NjAwYmE2ZjlkYzM4YjBjMjgyNWFhYTExN2I1MDIgbGVnYWN5LXRydW5rCis3NDY2NyAxZDQzODEyYWFkYjYxODg3MTcwMTIwYzBlYjY4NTljOGY2YzJiNGRlIGxlZ2FjeS10cnVuaworNzQ2NjggM2M3YzliODFlMzYxNDQ0NTFkYWU0NzQyY2Y3YTdiN2Q0YmIxNzM3YyByZWxlYXNlMjYtbWFpbnQKKzc0NjY5IDYyMzE0N2EyYjViMWFiNDM3N2NjMTdjZTNiMTg0ZGNiYzFkMmMwYjcgcHkzaworNzQ2NzAgZGM2MmRkMzMyNmVkMGJlMjNmMjA2NzkwYTY0Y2RjMzIzZjlkNTI5NyByZWxlYXNlMzEtbWFpbnQKKzc0NjcxIDkwNjQ5MGFiNmFmZmI0ZWVkZGMzOWM5NTJkNTMzZjczZjdkODg0ZWUgbGVnYWN5LXRydW5rCis3NDY3MiAzNDQ5NmJlZDkzNjVmNWRkNWJiOTc5OWVjZDA5MDcyZDkzMzU1ZWI1IGxlZ2FjeS10cnVuaworNzQ2NzMgNWQ5NzYxZTQ0NTU1ODdmNWE3MzE4MTFhMjZmODhhOGZkMzdlODFiNiBsZWdhY3ktdHJ1bmsKKzc0Njc0IGQ2MjdiMGZmMWQxN2U1ZWU0Yjg2N2FhNjY3MzRiOTI5OTZlNTM5NjIgcmVsZWFzZTI2LW1haW50Cis3NDY3NSAxOTdjMmFlNTFjYzYxMmE5NTZkM2E0Y2VkN2ZlZDU0NTBjYzIyNzY4IHB5M2sKKzc0Njc2IDFmNGYzNDJiZmUyZTgxZGU3OGE5MzlkMzM0N2Y5ODBlZTQ3OGFiMmMgcmVsZWFzZTMxLW1haW50Cis3NDY3NyAyMGI5YWYxZjAwYzg3NTNjYTg4ZWJiNzJiMDMyYjRjMjhjZTlkYWQxIGxlZ2FjeS10cnVuaworNzQ2NzggOTU5MDBkYmQ1ZGQzM2Y1MjEyNjFhNTVkYTZlYzVjN2RhMTk3MjFiNyByZWxlYXNlMjYtbWFpbnQKKzc0Njc5IGExNTJjY2NhNTM4OTYyZWVlNDgyNTVmNTc3YmJjMmY0OTEzNmFmMTQgcHkzaworNzQ2ODAgNGYwOTg4MGJlYmJiYTZjYjNkMjMxMmEzNzFlOGFjNTE4OGFlOGQxZCByZWxlYXNlMzEtbWFpbnQKKzc0NjgxIDg5OWJiY2JhZjlhNmVhODUxNWM4YmZiMTJhMDFkNjA4OWNkZjk5MzAgcmVsZWFzZTI2LW1haW50Cis3NDY4MiBkYjE1YzdhZjAxNGZhMDg3MjU1NjM2MzlmZmYyYTE4MTRmN2FiMTFlIHB5M2sKKzc0NjgzIDBjNDk0ZTU3ODdkZjZiZDBkMDk3MTUzNWQ2YjJmNGRmY2NlYzVjZDEgcmVsZWFzZTMxLW1haW50Cis3NDY4NCAzNGE3YTkxNTgzNzIzYjU4ZjkzOTIyMzBhZDZmYzE2OTU3NGJlYjQ2IGxlZ2FjeS10cnVuaworNzQ2ODUgN2U3NjlmZGRlNDM5ZmZjODA1ZDQxM2NlY2JhNTllOGJlYmRmMmNlNiByZWxlYXNlMjYtbWFpbnQKKzc0Njg2IDllN2I3ODMyZmQ0NTEyNzhhN2VmYzk3MjI4OGIxZWM1MTIxYWIzMDIgcmVsZWFzZTI2LW1haW50Cis3NDY4NyA5MmYxNmM4Nzg4OWRhMGY0MmRlM2VhYmE2NmZiZjNkMGZlMjFjYzc5IHB5M2sKKzc0Njg4IDY1NzJkMmVmYzhiMjlhYWFmMjgwZDg0Y2QzNWFjMjdkZTQ0MGE2MDQgcmVsZWFzZTMxLW1haW50Cis3NDY4OSBjNjY0NTVhNDE2ZWM3YmZkOTM0MDEwMmM4MTcxZmYxN2ZmYmJlOGZkIGxlZ2FjeS10cnVuaworNzQ2OTAgNTNjNGVmZDE3MGMwNTE3ZjE2MWE1YjA3ODM4NmY3OTMwMzEyNmJlZiByZWxlYXNlMjYtbWFpbnQKKzc0NjkxIDc1MDAwOTZiZjFhMDdlYjA2NGM1ODhkODdjMjRjZmIwZmY1Njk4NDQgcHkzaworNzQ2OTIgODY5MDFjYWU2YjY0ODNmOWEyZDU2ZWEzZWUzNDA2YTc1YjMyNzk0NSByZWxlYXNlMzEtbWFpbnQKKzc0NjkzIGQzMGEzZDU3NzE2NGViY2RhODJhZDJiYWY4NjkzMDUwMDg4YTVmNmQgbGVnYWN5LXRydW5rCis3NDY5NCBhNzBlNzJlZmMyYWQ2OWNkYjk4YTM2ZmRjZTIzMzgwMzcxMDExMzZhIHJlbGVhc2UyNi1tYWludAorNzQ2OTUgNWUxMTA4NTQ1ZTc4NzRhNDljMTc3NDNkZTNkYTQ3NGJkMmM1Zjg4YyB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ2OTYgZWQyYzVlMDA3NDExZDA5NmQ5MzgzNGExZWFlZGM2MTE2YmIyYWUyNSBweTNrCis3NDY5NyA0ODAzZTc2ZjIwYzU2ZmU5ZTk5YzliNWJiNDI5ODhhZTU1MjcwYmZmIHJlbGVhc2UzMS1tYWludAorNzQ2OTggNzkwYzAxOWY2NDAzODg3MzAzMDkwODJiZmY1NWRjNzczNWQyYWY0OSB0a19hbmRfaWRsZV9tYWludGVuYW5jZQorNzQ2OTkgZGM3MjE3Y2I3M2I3YjNiZjI3MGNmZjNhODBjYzQ0YmZmN2Y3YjdiYSBsZWdhY3ktdHJ1bmsKKzc0NzAxIGY2NDU3MGQwZjcxZDlkYmQ3MDA1MDY0YTM0NjQ0Nzg1NjRlMGM2NWYgbGVnYWN5LXRydW5rCis3NDcwMiAzN2Y1ZDE3ODViYjNmZThjMjczOTY1ZWZiMzAzYzhiNzYyNmJjZmM5IGxlZ2FjeS10cnVuaworNzQ3MDMgMzAwZGEzY2NmOWZjM2Y3MTRmMWQ1OTgxNWFmYjY0MWIxODY0MzI5YSBweTNrCis3NDcwNCAwZjczMzNhY2E0NTUzMjMxMGM2ZjU3ODM0MjMwZDA0M2VkYTJjZWQ3IGxlZ2FjeS10cnVuaworNzQ3MDUgZTg5NWVmODJjMDg2Y2NiODNiZDE2NTQzNGJkY2U0YzkwNjAyNTA4MCByZWxlYXNlMjYtbWFpbnQKKzc0NzA2IDhhOGQ0NjdjODljY2VhMDRiMTdkODI3ZWQ4OGRhMjY4ZDkzOGI0ZjEgcHkzaworNzQ3MDcgMGRkMGIwZGU1ZTMxZjAxYjY0N2M5NzI0MmE5OTI5OWJmM2YyZTE3YSByZWxlYXNlMzEtbWFpbnQKKzc0NzA4IGQ0MTAyNDU5MzkzMWY2OWFhNzY3MzQ4Y2JiNTRlOWFjNWU0NWI3YWMgbGVnYWN5LXRydW5rCis3NDcwOSA1ZjVlYTc0N2UzMWExYWZkOWRlZWI1ZjNkNGE2YmNkYTZjMjRmNmRkIHB5M2sKKzc0NzEwIGNlYjc1ODE5NTM3NzE2YzVhYTdlNTNlYzk3YTQ4ZDA0ZDdlZjNhYzMgcmVsZWFzZTMxLW1haW50Cis3NDcxMSA2NmEyZGUwZDQyOGU2NWRiNGU2NTc4ZDA4NDRmMDE0OWFhNGI4ZThmIHJlbGVhc2UyNi1tYWludAorNzQ3MTIgNmZlOWRmYjEzOWMzMWM3NTQyODBhMTMwMTEwZmM0ZmM2M2MxM2ZkNSByZWxlYXNlMjYtbWFpbnQKKzc0NzEzIDFkMWQyZGI0NTZkODZlMjY3YzA1NDBlMmRkOGY2ZDUyYWEwOGFhMmIgcHkzaworNzQ3MTQgZGU2MjdjZmVlZDE0NjZjN2M5MjFlYjI0YzI2NDdkOTc4Yzk2YTllMyByZWxlYXNlMzEtbWFpbnQKKzc0NzE1IGZkMzRmZmM4ZjgwNDJmM2U3NmI4ZDI5MTgwNDMwOGRmZjUyYjgyN2MgbGVnYWN5LXRydW5rCis3NDcxNyA5MWRjNjMyMjcyMmRmOGIyYWM4Y2MyZDU0ODE1YzkwZjlkOGE3OTllIHJlbGVhc2UyNi1tYWludAorNzQ3MTggZmM5YTAwNzk5Nzk1YzRkMDQzYmFmZGQ4MzAwMzUxMjgxZmIzMGQ0NiByZWxlYXNlMjYtbWFpbnQKKzc0NzE5IGUyZmEwNjA1MDhkYTA1M2M1NzQzZTJkNTE3NzJjMzlmYTU2OTAyMjcgcmVsZWFzZTMxLW1haW50Cis3NDcyMCBkZDZhOWJjMzk5NDYzZjA2MmVkYzgwNzExOWVmMDA0ZGQ0ZGUzNDQxIHJlbGVhc2UzMS1tYWludAorNzQ3MjEgZTA0MDlmMDM4MjJmYjMwZjdkZmE4NTk4MzQ5OTRhMTkyODEwN2RiMCBsZWdhY3ktdHJ1bmsKKzc0NzIzIDQwZmQ4ZmQ5NmQ5NmNkYTFjZTdjODI2NWQwNzU5NmZmMzA4ODY0NjUgbGVnYWN5LXRydW5rCis3NDcyNCAzMmU4NWQ1MGM1MmRiY2I0M2E5NzFiZmRkODdiYTNjZjU5MzU1MzZiIHJlbGVhc2UyNi1tYWludAorNzQ3MjUgMGJjNzU5ZjZkZWQ1YzhmYmVhYTRlOTAwOWExZWIyMTNmZmI4ZDhiNSBweTNrCis3NDcyNiBlMDE3OGI4YWVhZjA3OThmYjZjNDM2NGJhYmY1ZjMzYzM0YjhhYTE2IHJlbGVhc2UzMS1tYWludAorNzQ3MjcgOTMxYWY2NjExYWU5Y2U0NTRlNzFjNWZlMmJmNWFjNmQzMDE1ZTQxMCBsZWdhY3ktdHJ1bmsKKzc0NzI4IDY3ZGU0MmNhMGEyNmE3MDQxYmY0MjZmYWRhNzY2ZDY3MTlmYjlkZjkgbGVnYWN5LXRydW5rCis3NDcyOSA0YjYzOWY1YjdkM2ViZWUwYTBhZWU0MWFjODJkZGY0NWMwZDYwNzRhIHJlbGVhc2UyNi1tYWludAorNzQ3MzAgNmZhOTQ2ZDA3NWY0YWMzNDcwOTg3YmQwMTE4YjI3YmM2YTMwMjgyYyBweTNrCis3NDczMSBkNWZjNTE4OTE5OTdkYWVmOThjMzA1MGFkNjVlNWYzMzUxMmI1ZWQyIHJlbGVhc2UzMS1tYWludAorNzQ3MzIgZTFlZmNhNjFlZTRlZDlmOTM1NjkyMTU2ZGFlMzRkM2JkNTdhZjc0NiByZWxlYXNlMjYtbWFpbnQKKzc0NzMzIDVkZWM4YTEyZTQ1NWFlOThlNzAyYTFkOTEzOWQzNzJmN2ExMzI2NmYgbGVnYWN5LXRydW5rCis3NDczNCA4ZjZjZjM5Yzk2ZGQ2MjM2MDMwMTBkMzg1ZGMzNjM1Njg4NDdkMTM4IGxlZ2FjeS10cnVuaworNzQ3MzUgMDBkNmNiNjI1NjY3ZjM3MTRiNGFkYjc0YWE4YmZlMmI5MTJjMDg1OCByZWxlYXNlMjYtbWFpbnQKKzc0NzM3IGFiN2ZkNGJjMzgyOGY4Y2UwNzY5NTg3MTM5ODJhYWVjOGI2NmQ3ZTUgbGVnYWN5LXRydW5rCis3NDczOCAyNWE2MTdjYTgzZTIzOTI1NDc0MDc0OTQzNjM5MTRiMTY0ZDg0MjBlIHB5M2sKKzc0NzM5IDVkMTUyOTZhMmE0ZTFjNzViZDVlYzdjOWNmZDU0NjhhYzA2YjFlOGMgbGVnYWN5LXRydW5rCis3NDc0MCA4MzVmYzg1NzdkYzc5MGUyZWU0NWVjNTI5OGEzM2YyZThjMTk0ZWIyIHB5M2sKKzc0NzQxIDdmMmE4Nzk0Mzk5YTFlNjBjNDA5ZjM3NDVlNDVjNWJjMmYzYTM5OTQgcHkzaworNzQ3NDIgMGY2ZGIwMDJiM2ExZmVjOTk4OTMyZDA2ZWRhNTc2ZjE0ZTZjN2QyZCByZWxlYXNlMzEtbWFpbnQKKzc0NzQzIDk1ODBiYmJiNTUyZTEzYTAxMTBkMmM4YjZkMWI1MmU1MWRiNjFmYTcgcHkzaworNzQ3NDQgNmFmZmQ2ZGRhMjI5ZDE0NmM4NjIzODcxYWQ0ZjQ5OGNjOTJkNDU2OSBweTNrCis3NDc0NSA3ZTZmNjE0YTZhZDE4YzJjZjJhY2ExYmQ5NWE3NGNhMTY3NzJlNmIzIHB5M2sKKzc0NzQ2IGQ0ZTNhZjM0M2UzMjBhOTI5OTk5ZjEzNmRmZWUzNjk4MTkxYWI5NTkgcHkzaworNzQ3NDcgM2ZiMWMxZmJlMjZjYWVmNGQ0ZDU0NGQ0MjNhYzk2MzM3MDNhYWQ1NCByZWxlYXNlMzEtbWFpbnQKKzc0NzQ4IDYyMjUwMjFiZGMzNmIxODA5YzRhOGU0MmYwNTEzZDM3M2E5MjE3ODcgcHkzaworNzQ3NDkgOTJkYWE5YzQxZDU2MWRkMDFkZGU2NDY2YzAyNWRjZmRhODVkYjhhYSBweTNrCis3NDc1MCBlY2QyMjg1MGQyMDFjYTRiZjI3NzQxMmQ2N2QxMTU5Y2M5MmEwMTE3IGxlZ2FjeS10cnVuaworNzQ3NTEgNTFiYWFkMjhmZTdhMTQxZWQ0ZDgwMTRmYWIxMmEzOTFkOWNjY2QzNSBweTNrCis3NDc1MiA2YmYyNTM5ZDNiYWE0MjFlMTliNjg0MDFlNmRjNjYyYjQ3MGQyZDQyIHJlbGVhc2UyNi1tYWludAorNzQ3NTMgZDlhNjY5MDVmMDNlOTVjMjA4ODJiN2VjNGY4YTIxMTU1NGQ0ZWExMCByZWxlYXNlMzEtbWFpbnQKKzc0NzU0IDM5YmUzZWY4MmQyMzM2ZTMyNzNmMGQ1MmQwNjNjMzBmMWQ3NzU4NDcgbGVnYWN5LXRydW5rCis3NDc1NSA1MTExZDMyOTk3NDE2MGM5ZGMzNWRiNWFkYmEyZGUwNmI0NDE5ODc5IHB5M2sKKzc0NzU2IDNkZjk5MTRlZmM4NGUzOTM4YzI4NGMxYWFhYzhkYzkzNTA4MmFjNTYgcmVsZWFzZTMxLW1haW50Cis3NDc1NyAyYzllYzRlN2Q4YzIxMGI3NzI3NmE1OGE2YThmYjgzNjM0ZjBjMmVhIGxlZ2FjeS10cnVuaworNzQ3NTggZmFkMDI1MTMyNGQ3YWExNDczMDhkZTRmNDgxMzg1ZGMwNWUzM2U0YyByZWxlYXNlMjYtbWFpbnQKKzc0NzU5IGZmZjU5YjBhZGQ5OGE1NjE1NzRlNzY0MGYzMzEwN2Q4MWVmMzMxZGQgcHkzaworNzQ3NjAgMDc4MWFjZmRjOTQ1ZDkxZWJjZDNhMDkyN2Q3Yzg0ODM2MzY0OTU0ZiBweTNrCis3NDc2MSA4YmM0YzhjYWM3ZDcyMmZiYjZkZDFkOTllZTVjMzM5ZTQyMzU0OTc0IHJlbGVhc2UzMS1tYWludAorNzQ3NjIgN2Q5Y2M0YmNkNzc2MGU1NDFmZTRiY2M4NDA5YjkxZmE2ODJhZDkxZiBweTNrCis3NDc2MyBkMGJkYjE5MzBkNDllNGUyYTkzODM5NTA5M2VhODA0ZjgwYjAyYzcyIHB5M2sKKzc0NzY0IGRkMDI3OTE2NjZlMDViODA0ZDQ3ZmNhNDE3YTA2OGQxNDg1NjhlODggcHkzaworNzQ3NjUgMjI5MzBhZjRkZGY3MzRmYzliYTViZWY4MTNhNjQ1N2FjYjVhZWNkMSBweTNrCis3NDc2NiA5MTE5NDY3YWE4NGU4MjhlMzQ5NzZiYWE3MWNkZGU1NTQ3MzkwZjRmIHJlbGVhc2UzMS1tYWludAorNzQ3NjcgZjNhMzAwODNmZDk2NGZjMjUyN2FkNGMwZWQ1MTU5M2MyY2NhNWM2ZiByZWxlYXNlMzEtbWFpbnQKKzc0NzY4IDNjNTdkMjZiNDBjNDY3YmE2NmRhZTYyMDcwMTE5MjBhY2UyYjc4NGIgcmVsZWFzZTMxLW1haW50Cis3NDc2OSA2NTk0MDY2ZTUwNDE2OTQxODM3NWRkOTA4MjExN2M0NTlkNmM4NDcyIGxlZ2FjeS10cnVuaworNzQ3NzAgZjQ0ZjQ2ZmU4ZGE1MmUzODBjYjEwOWE4M2ZjNWNkZWNjNTdhNzA4MSByZWxlYXNlMjYtbWFpbnQKKzc0NzcxIGQ3YWU4YjA3MzllNDdhZTY0ZDg3NTIxNzMzOGIxZDhkM2FhMGFlZjUgcHkzaworNzQ3NzIgMzE2OTIxY2M5MDRhNWRiMmU1NTlhNzM2NGQ3ZDMwZDU0MzY2ODMyOSByZWxlYXNlMzEtbWFpbnQKKzc0NzczIDBjMGE2Y2ZkNGJlMjIwYzg1MDhhZDE5YzllYzRjYjZlYzhkYjBiODMgbGVnYWN5LXRydW5rCis3NDc3NCBhYWE2YjcyNGE0ZmNlNDYxMmVjODI4YjNkNGQwNTk5ZTYyN2VlMjNiIHJlbGVhc2UyNi1tYWludAorNzQ3NzUgNDNkYTUzZTUwMmUxNWRjNDRhZGEzZTNkZjg3Yjg2NGEzZDQzNTNjOCBweTNrCis3NDc3NiA4MzkzYTkwMjE2YjM4NmM0M2RmNDIyMTBjZTViNzFjZGFkOTA5NGQ3IHJlbGVhc2UzMS1tYWludAorNzQ3NzcgYmI1ZmMxNWIwMzRjZTNhOTQxYmE5YzhmNjVkNzI4NjhhMjA3YWQwMyByZWxlYXNlMzEtbWFpbnQKKzc0Nzc4IDFhMzlhNGRkMjc3YzQ5NzQ3YjAwMDRjZGI0MTAyZmRmNTBkZGU3MTMgcmVsZWFzZTI2LW1haW50Cis3NDc3OSA5YWNlODYyOTliYjhiZjRiZTE1OTcyYjQ1ZjQxZDkzZWFiYWY5MjM5IGxlZ2FjeS10cnVuaworNzQ3ODAgZThkNjgxYzQ0OGQ3MmRkYTY0YTJmNzk4ZDIyZWZlNGQ4MWE0YmVhZiBsZWdhY3ktdHJ1bmsKKzc0NzgxIGFlZmYzMzE5YzQxOGI0MDdiZDZjOTc0ZDJhMzA2YWFmYzk0MTI3MWUgbGVnYWN5LXRydW5rCis3NDc4MiA3MTVlNjk3MjUzZjI0YWM1YmI2ZTU4OWI4Y2VmNjQ4NmU3NjI3NWVkIGxlZ2FjeS10cnVuaworNzQ3ODMgOWYxZDZkMWRiYjAwODBjNmU1NWM3MzRkOGE4NDBjYmVmOWNkY2NjYiBsZWdhY3ktdHJ1bmsKKzc0Nzg0IDFhMWFmOWZiZDgzMTc5OWIxNjM2N2FlMGU0ZTBiMTY3NzIwNDFhZjYgbGVnYWN5LXRydW5rCis3NDc4NSAyNTEzYWZmNDQ1YzJjOWVjMTU2MzQ4MGZkMWRiNzFhNDgxOGU2YWE0IGxlZ2FjeS10cnVuaworNzQ3ODYgNzY0M2UyNzMwNDM3NjRlNmUwNjQ1MDQzYTFmYTZkZTk2NTljOTc3ZCBsZWdhY3ktdHJ1bmsKKzc0Nzg3IDk1ODRiOGUyMmY3NmZiYTgyY2YxZWY4MzEwNDBhNjI1NGM2NWNjZTcgbGVnYWN5LXRydW5rCis3NDc4OCA2ZDQ1ZmJjODViZGYzZmRiNDIwZGU1NWEwMTNkNThiYTc1YzA0MGZiIHB5M2sKKzc0Nzg5IDliMmE0MmZiZDA0YjQyZGFlYTVhYmRiYzA5ZmEwNGQyOGE1YjYyNWUgcmVsZWFzZTMxLW1haW50Cis3NDc5MCBjMDRhN2MzNjU1ZmMwZGI3Y2U0ODlhNmJjN2EzMjc1MTY5MGJhZDhjIHJlbGVhc2UyNi1tYWludAorNzQ3OTEgNjg1NTk1MWFmZjE5OWUyOGQ4NTAwNWE2YmI4MGZmMDcyNzQ5ZjNhYiBsZWdhY3ktdHJ1bmsKKzc0NzkyIGNmNGUwODE1ODQ2YzU4NGM5MDlhNjRmZmZmMDdmNDZmNzQ1Y2EzN2EgcHkzaworNzQ3OTMgM2FmZjU5NzkxMGM0MWI5ZjJhZjBiZWE1ODIwZjAxYTg0ZTQxNjA1OSBsZWdhY3ktdHJ1bmsKKzc0Nzk0IDhjNzc3MWRjZTA0NzRhODdmMmU2YjdhNDUyMTUyY2E1MjJjMmQ1NzggcHkzaworNzQ3OTUgZDliNWI3ZGQ4MmEyMjI0YmRiNTJjYWFhNGMzOGE5MTcwYzkxMDU2OSBsZWdhY3ktdHJ1bmsKKzc0Nzk2IDFmMWY2YmZkNGRmYjA0NDQ3YmZhOWU0YzU1MTJkMzQ0ZGRiYjdiMmUgcmVsZWFzZTMxLW1haW50Cis3NDc5NyA0YWIzYjVlYWU4OTc5ODIyODRlZWI4ZjI3NjRhYTliZmQ3MzcxMGU3IHJlbGVhc2UyNi1tYWludAorNzQ3OTggOWFkNmQ3MmJjZGE1YjU0N2JmYjUyYjVmZTExYzg3NWFjZjFlOGU0ZSBsZWdhY3ktdHJ1bmsKKzc0Nzk5IDIxZTkwN2EzODM2ZjNjOWUzNzRlMWMzYWIxNGYyYWFmYTc1NTIyMWEgbGVnYWN5LXRydW5rCis3NDgwMCA3ODQ3YjQwOWI3OWMxY2I3NDVjMmJjMzdhNDg0NDI2ZTdjYzg2YjEyIHJlbGVhc2UyNi1tYWludAorNzQ4MDEgNGNjY2YzY2UxNWEwOWM2MjdkYTZkNDNhNTA3OTFiNWVmNDkyZDM5MCByZWxlYXNlMjYtbWFpbnQKKzc0ODAyIGRhODUzZTk4M2YwODI0ZjNmYjVjN2M5NmYxZTNiMDEzYTNiOTkyM2UgcHkzaworNzQ4MDMgMmQ1NzVmMTZiY2VjZDlmNmUwODM3ODRiMzM3YmMyM2FkMmRlMzcxNSByZWxlYXNlMzEtbWFpbnQKKzc0ODA0IDg1MGRhZmQ0YTI0NTNkNTI0NjEwMTgzMTc3ZTk2YmZiZDdlYjQzYmIgcHkzaworNzQ4MDUgNGU3ZjZiYzgxMGIzNjBkOWU4NTc0ODNlODQzY2MyZGEzNGJjOGU4NyByZWxlYXNlMzEtbWFpbnQKKzc0ODA2IGJkNDIwMzg4ZTZiMWRhMTg5ODVhODc0MzYwNjhmMzhiMmRkYTZiNzAgbGVnYWN5LXRydW5rCis3NDgwNyBhNmRmMDc0ZDJlMDkzZmJiMGIyYTViMjNiOGI1NmNmYTI2YmJlZTg1IHJlbGVhc2UyNi1tYWludAorNzQ4MDggOTQ2MjQwNGRmNGUxMGNmZGExZWJmZGZjNmFmYWM2ODA0ZTQzNzc3OSBweTNrCis3NDgwOSBhYjRhODdmZWYxYWU2ZTRhODRlN2Q4MDRjY2Y5MWQyY2NjM2RjYmE5IHJlbGVhc2UzMS1tYWludAorNzQ4MTAgYTMzZjk2YjQzZjI0YWNiMjE2M2M2YzVjZjYzNWE1Yjc0Mjk1ZDQyNyBweTNrCis3NDgxMSA0MTAyYjVmMmEyZjFlM2NlNjRmZDBiYzY1N2Y4MDdiYmZiYzBhYmZlIGxlZ2FjeS10cnVuaworNzQ4MTIgODUxOWUyOGIyODRmNzk0YWI2ZjYyMDZkYjdhYWMxMWQ3ZDM2YzQxMCBsZWdhY3ktdHJ1bmsKKzc0ODEzIGEyYmFiMmQyMzc0NmI1NTJjOWY4ZjhiYzJjZTc1MDhhMjU3MmExNTEgcHkzaworNzQ4MTQgNTYwYzA1NGEwMWFhMmZmZTEyZmZjZmJiN2EzM2RkMDczZjQ3NDgxMyByZWxlYXNlMzEtbWFpbnQKKzc0ODE1IDdkNGMzYzA4M2YzNjE5N2YyZjM4ZGUzNDYxZWRhNThiYWVjYTAwNjIgcHkzaworNzQ4MTYgODg1ZGExNDZmZWE1YTNkZmEzNWQ5Yjg1MmViNDY5NzY5NWZiN2MzMCByZWxlYXNlMzEtbWFpbnQKKzc0ODE3IDUwN2JhOTdhMmVlZWYzMzk0NTVjYmVjNjk3YzgwNmI5NmI3YjhlNzIgbGVnYWN5LXRydW5rCis3NDgxOCBiYjZhZGU1MWEwYjYyMzhkMTM1YzRhNjBiYjYyYmIyNGIxNTEyYWQ1IGxlZ2FjeS10cnVuaworNzQ4MTkgMmViZThjODFhZmYwNjkyOGM3YmVhMzg0N2EzYTc0ZDNjMGY5OTJlZSBsZWdhY3ktdHJ1bmsKKzc0ODIwIGMyZGUzMjg2NmQwZTNkNjQwYWJlOTJiMzQ3Y2E4NTQxMTM5MWQ0N2MgbGVnYWN5LXRydW5rCis3NDgyMSBjMDE3YTQ1MGY0YTU3NjhmYjUwNjMxYTUxOTQxMDMzYzI0NDJmMTVkIHB5M2sKKzc0ODIyIGQ0YzI3ZGE0NmRjYTBmNzk5YmE0NWU0YzBlOGZiNGY1NjE2Y2ZmMWMgbGVnYWN5LXRydW5rCis3NDgyMyA3NDJjZTU4YTMxNzFiYzEyZWU0NjAzNTA2YWU5ZWRjMTZlOWQ0NzM5IGxlZ2FjeS10cnVuaworNzQ4MjQgM2UxOTNkMGIxYWJhODlkNGJkYWFkNGMzNjIwZjg3MjQ1NmY4Nzk3MyBsZWdhY3ktdHJ1bmsKKzc0ODI1IDMzODVlNjE4MjExMjk0OWE3MmQ0YjQ5NWFiYjA3YjcwZmJhNGQwNGUgbGVnYWN5LXRydW5rCis3NDgyNiA0ZTYxZDdiZDFiMzY0NmJhM2ZhMjkwOWU0YzE2MmUxOTMzOWRkYzZmIHB5M2sKKzc0ODI3IDk2YjY0NTc1MmMzMzQ3NWIzOTY2ZGM1MjUxMmJlZGY4MzJiNmE2MGUgcmVsZWFzZTI2LW1haW50Cis3NDgyOCAyNmRmMGI4NTZiY2JjNDgwM2Y2YTA1N2QzMThkMjRhZjQ1MDczN2M2IHB5M2sKKzc0ODI5IDRjYmRhYjYwMWI4N2ZmMzhiNGVmZDJiYzM4ZTYwMjQ0MGQ0ZWQ4NDMgcHkzaworNzQ4MzAgNGI2NGRiMzZmMDliOGZkZGMyNjI2NmYwN2E3NTQ4OTc2NzQ5YzhjMCBweTNrCis3NDgzMSAzMWMyMzZjNTNiMDI0NTdlNGY5Y2ExN2ZiOGRlZGQ0ZDViYjM5Yjc1IHB5M2sKKzc0ODMyIGYxMzkxNDQyYmQwYjVkODgzMzdhMGQ1ZmQwMTY1MGIyZmQwN2JkYjAgbGVnYWN5LXRydW5rCis3NDgzMyA5YjAwM2JiY2E1ZGJmNWM4MmM1NTVhZDViMmU5OWMyMDZmNTJjOTFhIHB5M2sKKzc0ODM0IGQ4MDcyMjA2ZmRjNjFlYTY5MjliNjUzMGY5OTFlMzVlMzAxZWJlMDYgcHkzaworNzQ4MzUgYjZlMzllZWExYmJmNmVmM2ZiMzE1NWNmMGE0ZDUxM2NkN2M3ZTlhMCBweTNrCis3NDgzNiBmYTkxMjcwYjYwODdiMGZkZjM5M2NjMDg1YmU4ZGM4ZTYwOTliNzBmIHJlbGVhc2UzMS1tYWludAorNzQ4MzcgYmU0ZDQyMDA5ZjdlNWJjYjdiZWVlYjM0MDIzZTY2YzAzMzA1NDg4MCByZWxlYXNlMzEtbWFpbnQKKzc0ODM4IDMyNDQ4ZjhhNmM2MzZmMzlhNjE3OTg1ZDEzN2E1NmFkYjlhYzM0NzggbGVnYWN5LXRydW5rCis3NDgzOSA3YTNlZDFiNDM0MTA5NzUzYTU3ZGU4MmQ3YTljMzNiMjdlNjk0ZDc4IGxlZ2FjeS10cnVuaworNzQ4NDAgMzM0YzYwZjUxMjU5NGM4Mzc2ZmMzMGY1MjllMDM5N2ExODgwZTZkMiBweTNrCis3NDg0MSBiMGQwM2ZhMDczZWM1ZDE2N2EwMTY0N2ZmZjM2MjUzOTYyZDE3ODRmIGxlZ2FjeS10cnVuaworNzQ4NDIgMWFkOWYyYmRhMjBhMjZjNzQzMjYxZTNhYTAyZWVlYWIwNzU4M2I3NSByZWxlYXNlMjYtbWFpbnQKKzc0ODQzIDNhY2QzMWVhZGJiODgwNzA0NWNkYTA5NmI3ZjQxNDE2NGM2YTNkMTEgbGVnYWN5LXRydW5rCis3NDg0NCA2NjFjOGE5Mzg5MmZmN2MxMGRkZTAxZjBkOGE1ZWI2MWVjY2ZlYzQwIHJlbGVhc2UyNi1tYWludAorNzQ4NDUgMGYwOWQzOGY4NTJlODQ3YTg2YTU3YmQxYzJlYmY4NDI5OTg0MjYzMyBsZWdhY3ktdHJ1bmsKKzc0ODQ2IDc4ZmY5YTc0Y2I0ZTliN2RhYTE2MTE2ZWQwNjYwNjYxYmMzMDhhYzAgcHkzaworNzQ4NDcgMWIxODk2N2ZiZDQwODEwNjkxZWE1ODI4YzhlMDE3ZDE5NDQyYmEwNCByZWxlYXNlMzEtbWFpbnQKKzc0ODQ4IDhhYjMwNDAzNDAyMWE1NzcwZjczMGYxMTdlOGY2ZTg1NzVmYTBmZjUgcmVsZWFzZTI2LW1haW50Cis3NDg0OSBmYWI5OWU4ZDI4YzMyNzViZWQyNTMwMGQ2YmJmOWQzZDhiNGRjMzhkIGxlZ2FjeS10cnVuaworNzQ4NTAgYWUxYjFjZjQ3YzBjYTFmMzM1ZWM3YWMzODYzZWQwZjA5ODEyZmY2OSByZWxlYXNlMjYtbWFpbnQKKzc0ODUxIDFlMDlkYzY4YzhmMzYzOGJmNmNiZDgzMTU2NWZmMjBiYWQ0ZDRlYmMgcHkzaworNzQ4NTIgMmU5ODU4YzBkMzY0ZDFjZTRiZGYwMDI4YmE0ZWE2ODYxZGM5NGZlMSByZWxlYXNlMzEtbWFpbnQKKzc0ODUzIGEyY2JiOTQyMWExMTQzYWM1YWYwMzI3ODUyNWQ3ZDE2M2E4N2NkNTIgbGVnYWN5LXRydW5rCis3NDg1NCA5MDY5ZTUyYzBiZWRjMjUzMzJmMDIyOTk1M2M4NWM1MGFkMzYzZDEyIHJlbGVhc2UyNi1tYWludAorNzQ4NTUgYzhjYjllZjBjZDBhMDRkOWJkMDBkMDEwYzZhOTRiZjg5NjI4MTUxNyBweTNrCis3NDg1NiA0NjYyNWJjYTBjZmI1NmY0OWVmZWNiZGI4OWU5MzYxYTQ0MTNjODVmIHB5M2sKKzc0ODU3IDc2ZTA4YjkxZDk4ZTBhZGI3NDA4N2M2ZjdlNWRhOTBlMmZmZjE4YjQgcmVsZWFzZTMxLW1haW50Cis3NDg1OCBjZGFlYjI1MWQ0ODhiZTM2NDUxNDNkNDc2ZmU5MzBhMDAzMzY5MWUwIHB5M2sKKzc0ODU5IDE3M2JlZDBlMDRjNDg5NjUyZTU3MmZhOWUwM2VjZGJlZDRiODI2NDcgcmVsZWFzZTMxLW1haW50Cis3NDg2MCA3N2I5NmE1NDI0YTJjNjUyZjc1ZGZhM2UzN2I2NzQ3M2I4ODJkMzE4IGxlZ2FjeS10cnVuaworNzQ4NjEgN2M0ZDUyODYwMTMxYjZkYTljYmU0OWUxYjFkYjk4ZmY3MWFjMGJjZSBsZWdhY3ktdHJ1bmsKKzc0ODYyIDlhMTA5NzE0MDNhNWFkMGQ0OWMxN2ZjNzExM2YyNDk1ZmM4YzdjZjggbGVnYWN5LXRydW5rCis3NDg2MyA3ZjcyNjExNWJhMjlhMGU2MDQ2MTQ4MzAyOGEyNTVmMTJhMDY4ZTA4IGxlZ2FjeS10cnVuaworNzQ4NjQgMTcyYjJkMzZkYTc3Y2QyODMxMzY4MmU2ZjJmZDlkMWNlODRkZmNkYSBweTNrCis3NDg2NSA0MmY4ODA4M2RkYmRmM2UxOGY1MWIzMDRmMDFiZTkzNjhmMzg4ZjY5IGxlZ2FjeS10cnVuaworNzQ4NjggNWZlZDVlOGVhOWNjMzMzMjY3ZmM3ZDY4ODJiYjQ3NWVkOTQ5ZjJhOCBsZWdhY3ktdHJ1bmsKKzc0ODY5IDM4YTUyYjY3MjQyOTI2MDMwZDBiZDQ5MTQzODc5MDRkNzUwNzU1YzIgbGVnYWN5LXRydW5rCis3NDg3MCAwZmYzN2UyMDAyOTJjOTM2YmY2OTQ0YTRhYzliY2QwNWQ5NGYzZDU4IHJlbGVhc2UyNi1tYWludAorNzQ4NzEgMTJmMTQ1ZDc1NTEzZWI5ODZhYTc4ZjA0OTM2MTM3YmU3NjY5ZDgzNyBweTNrCis3NDg3MiBhOTgwOWYzYjE2NGZmYTZmMGQ4ZWYzMGZjYTYxOGQyMDI4M2MyNWIxIHJlbGVhc2UzMS1tYWludAorNzQ4NzMgOGMzYjJkZGE0NzAzNjBlNTIyNTFkMzY1ZmUxNzRiNjMwZThiOWJmNCBsZWdhY3ktdHJ1bmsKKzc0ODc0IGRjOTIyYTg5Y2NmMTBjMzhmZDZkYTVhMGRiYWQ3YjQwMDI5NGViM2UgcmVsZWFzZTI2LW1haW50Cis3NDg3NSAwYTU4MGRjN2FmMTM3NjQwNDU1M2ZmNzUzZjE2MGE1YTc3NjUxNTVlIHB5M2sKKzc0ODc2IDZmNGI4NTJiODJmMTc1MDdjNTlhZWFhZGQyOTk3YjU2Y2U0NzlmODUgbGVnYWN5LXRydW5rCis3NDg3NyA5YWNiOGViNzJhOTJmYTVmNTMxODdiNjJmOWEzMjk5YWRlYjFlMGIyIGxlZ2FjeS10cnVuaworNzQ4NzggY2E5MjBjMTZiMjA1N2U4ZTQ1NTIxMTEwMjM5NmIyOTNkZGFkMjJlMCBsZWdhY3ktdHJ1bmsKKzc0ODc5IGUwZDVjMGMzODA4Y2UxOGQwZjkxMmRhMTNlZDA3ZjcyMTRmZGU3MzAgcHkzaworNzQ4ODAgYTI3YWJkMzUzZWQxY2ExMzRjODk3M2NjNmU0ZDRhYzBkYTk1YjBjZSByZWxlYXNlMzEtbWFpbnQKKzc0ODgxIGIxYjYxNWE5MTFmMDMxZjBiYTRkM2NkOTk5OGIzNjhmZjYxOGJkNTYgcHkzaworNzQ4ODIgZTQ5NzRlOTVmYTY0OWVlZjY4NWZlMjgwMjVjZGFmZTc4ZjkxODNhNyBweTNrCis3NDg4MyBiMzk4YWZlZmQzNjk2N2EyYmZiMWY4Y2U5MWI5YmU4MDFkNjY3YzdkIHB5M2sKKzc0ODg0IGJhMjI4ZTVjM2RhZjc5NmM4Njc4ODA5ZDYxZmJlMWMzNjZlNmY2YmUgcHkzaworNzQ4ODUgOWNlZWI2MDJkZGEzYjliNmUyNjQ2OTk2YWQ2YzcxMjFkZWEwMWExMiBweTNrCis3NDg4NiAwZTQ0ZGNjMGIyMGQzOWQ3MTkzYzY1M2FmMjA4NDE1Y2UxMzdkZjZjIGxlZ2FjeS10cnVuaworNzQ4ODcgMmVhMWZjMjY4NTQyNTJjN2NkMjIzYTk3YTM4YTMxZDY2NDBhOWVlZCByZWxlYXNlMjYtbWFpbnQKKzc0ODg4IGQzZWU3MzhmZGNkYjE3Y2ZjMzZkNGIyOTRlYzljYmQxMDg1ZjgwZGIgcHkzaworNzQ4ODkgMDcyZTNlMzBiNTBjYzIxZGIyMmNmMzU5Mjc3ZTczZjE4MjcyOWUyNSBweTNrCis3NDg5MCA1NDdkNDFiMWRlOTczODFiZTUzMTJmZjJjYzYyYjZhZWJmZGM5YzkyIHJlbGVhc2UzMS1tYWludAorNzQ4OTEgMWM1NDZjZjNlYjEwZDZkNmVjYzQzMjEzZDZhNGQ4MjQ2YTcyMTIyMyBweTNrCis3NDg5MiBkNjAxZmUzN2ZjNTRjZTAxOGYzNzZiNDNiYzg3YTJmNjBiNDA4ZjJjIHB5M2sKKzc0ODkzIGZkMmY0YWU5M2QwMTI3ZWRmYzU5MzY5OTg4MDE3ZjFkZDc1NzMyMWYgcHkzaworNzQ4OTQgYjYzYzcxODA2MThlMzQ4YTQyN2NkYzUyMmVhOTlhOTQ2YWU3M2VjZCBweTNrCis3NDg5NSA5OTNlZTM5ZThiY2ZlZmE5ZGE1ZTA5NWM3ZGJkYzZiNTg0YWQyNGVhIHB5M2sKKzc0ODk2IGJhZTlmNDgyM2I4ZTExYjU0NjQ4NDc3MmU3NWViZTNkZjUzYzllZjkgbGVnYWN5LXRydW5rCis3NDg5NyA1YTFlODc5ODMyZmUzM2M3NzE2NTZhYjYxMDI5ZmIwMGZlMDA0MzBmIHB5M2sKKzc0ODk4IDk4MTc5MTVlYmRlYmM1MWE4MTljOTRiNTcwMGRjNDE1NzQyYjk2Y2EgcmVsZWFzZTMxLW1haW50Cis3NDg5OSBkZTMzNTdjMjYwYjYwN2NhY2YzNmU3OTU1ZTUxZjAzNWFhZWI0ZDRmIHJlbGVhc2UzMS1tYWludAorNzQ5MDAgZGEwNGIxNTJhNmZlM2Y2NmZiOTQ1MzhjZjhmNTQ0YWI5YjdjYmY2ZiBweTNrCis3NDkwMSBiMzI2ZTdkNjY0MTM0YTgzZWRmYWUwZDdjNmQ0NGU0MDIyZGU1YTU4IGxlZ2FjeS10cnVuaworNzQ5MDIgN2E1YzExOWI4NjY5MDJmNjIwNjJjZmEzMjMwNmY2YzlmZmRlMjdkNyByZWxlYXNlMjYtbWFpbnQKKzc0OTAzIDg0ZjFjOTViNGU5NzQ4ZjlhNTQ5OTNjYTY2OWVmMmVlNTdkODhhMjMgbGVnYWN5LXRydW5rCis3NDkwNCA2ZmNhMzUzNTJmN2I3ODE2NGJmMmIzMzhjMjE2MWQ1ZjU2YzhlNjljIHJlbGVhc2UyNi1tYWludAorNzQ5MDUgNGYxNWExMzFhYjA3MTk1Y2NjYzgzNTM4NzNjZDY5N2M2MmMwYTAwMCBweTNrCis3NDkwNiBjNzZmODQzODM4YTVmYTA1NzVkZGZiNDgxNzljOGI0MmQzYjNhNjI4IHB5M2sKKzc0OTA3IDMyODlmZmMwNWNjNzg0NDk0NTEzZTJlZTdlNjBhZmEwNTIxNTkzYTMgcHkzaworNzQ5MDggYjM1ZGQxYjYyNDhlMzkzOTY4NTliOTA0MDk5NGFiMmQyNTRlYmIwYSBsZWdhY3ktdHJ1bmsKKzc0OTA5IGE0NDJjMjUwNGE1N2UxYjViNzE3Yjc4ODU2MWYwYjI2OWYzOWVmYWEgcmVsZWFzZTMxLW1haW50Cis3NDkxMCAzN2U5NjI0NmJkYTFjNjQ5MjY5MjFiZTIzMjUyMjUwNmYyYjZjNDg3IHB5M2sKKzc0OTExIGRhODE4NjE2ODRlODkzYTY0NGY3M2M3MTUwOTJkODA4MDc4ZjkyYzMgcmVsZWFzZTMxLW1haW50Cis3NDkxMiAxZDJlNmM0NDFhNTNmMDE1Zjg2OTEyYjNkMjA0ZDQ5NjBiYThmNWExIGxlZ2FjeS10cnVuaworNzQ5MTMgNzdlMDdhZjZmODdhM2M4NDU1ODE0Mjg0MDA0YjU1Y2IyYmMzODdmNSBsZWdhY3ktdHJ1bmsKKzc0OTE0IGQ0ZTAzNmM2YzYwZDRhNDAwZGY2ODYyYmUwYjFmZmUyZTRlMzMxYzYgcHkzaworNzQ5MTUgODVlZjFjMDRkOGRkZjVjZWE4YWE5NmY3NzBjMTIwZDUzZjdlZDc1YyByZWxlYXNlMjYtbWFpbnQKKzc0OTE2IDUxNzQ4ZGZjYjQ0NGM3MDA0NGU1NGI5MTBmOWNiMzE1OGI0NzI2ZDMgcmVsZWFzZTMxLW1haW50Cis3NDkxNyA5OTMxZTE3N2RhODEzOGViMDliODI4YmI5YjRkYThkYTUwMWJlNTg0IGxlZ2FjeS10cnVuaworNzQ5MTggMzc1MzhiNTUwZjY4NWFmMzgxYzM0YWUzNjk1ZjBhYmIwYTZjNDA2NCBweTNrCis3NDkxOSBmZDE4Nzc0NTMwNjA2MjUyNzM3ZDM5NGJjNTdiMjUwZmJhMWRjMTZjIHJlbGVhc2UyNi1tYWludAorNzQ5MjAgZDFkM2EwN2EwZWQ3ZjQ5ZjBmNjExM2UwMmU2ZmYzZDA4YzQyMDgxMSByZWxlYXNlMzEtbWFpbnQKKzc0OTIxIDNjODNhM2NhY2Q3Nzk4NWJlODM1NWQzY2JlZWFmZGRkYzAwMDE1YWUgbGVnYWN5LXRydW5rCis3NDkyMiAwNDNmZGRhNzA2YTM3NmZjZmMzMjUzODU5MjgzMjkyMDlkOGQ0MjIyIHB5M2sKKzc0OTIzIDgyMmEyOWY3NjYwYjUxN2ZlZDY3ZGMwNGI1YTBkODdiZTY4NDM2N2QgcmVsZWFzZTMxLW1haW50Cis3NDkyNCBiNGNhNTk0ODQ5MTQzZDY1NjNlYzcxNWIzZDk5YzU0YjE2NGZlY2E1IHJlbGVhc2UyNi1tYWludAorNzQ5MjUgZjI1NTVhZDVmZTA5ZWEwMDBjNjBhYWMyOWRiNWI0MzIyYzZhYWUyZSBsZWdhY3ktdHJ1bmsKKzc0OTI2IDIyMTFhZDNlN2JiZWQ0YjkzODY4Yjg1ZDdiYWZhZjg0NTdlN2Q3MmMgcmVsZWFzZTI2LW1haW50Cis3NDkyNyBiMGU1MTA1ZmY5N2JiOWNjNGYyYWI5YTI5ZjZmZjUxNDRlYWE5ZDg2IHB5M2sKKzc0OTI4IDdiMmJkMzliMjFjZDFjNmJhZDU5ZDIwNGIxNjlmYmRiMmE5MmI2NGEgcmVsZWFzZTMxLW1haW50Cis3NDkyOSBmNjRjMGViOGNjNjIwOWY0YzI0YmZmNWMzM2ZiYWQyMGQ3ODM2OTQyIGxlZ2FjeS10cnVuaworNzQ5MzAgZmRhMjkyZjMxNjMyNDIyYzY1ZGRjMWVlNzI1NDIzMzRmNjQzYmY0MyBsZWdhY3ktdHJ1bmsKKzc0OTMxIGYxMmNlN2FkYmQzMDAwOTBkNDJiOGEzMjEzZmM2NGVmMDQ4NTY3YWIgcHkzaworNzQ5MzIgNjE2YTY2OWM5MDIzZmU3NDczYTc1YjA5NzkzYzI3NTllNmE5ZDRiOSBweTNrCis3NDkzMyBiNGJiNGJiODY4OTI4OTk2NTNjOWMxNjI3NTAyMjFkOGM5ODdhOWY4IGxlZ2FjeS10cnVuaworNzQ5MzQgZGU2NTkwODk3M2QwMjQzOTFlZDljMWVkY2VmZjlkNDM3MzJiNmI3MSBweTNrCis3NDkzNSAxYjdiZGFlMDIxNzk0NzBlZWIyMmIxODc0MWVmNjUzN2YyYWQzMzdkIHB5M2sKKzc0OTM2IGNjMzI5YmIxOWRhNWYxYTlmYzM4NTM2MjhjZmNhMWU0NjNlYWVhMTUgbGVnYWN5LXRydW5rCis3NDkzNyAyNDNmYWYwZjVmNWU0MzEwMzVlYjQzMjRkNGViNmQyMGJjODJjYzY1IGxlZ2FjeS10cnVuaworNzQ5MzggYTJiMmNjMGZhN2FkNGQwZjQ5NGE0MDBlZmQxZjFiZTY4NzQ0YTIwNCBweTNrCis3NDkzOSBjZjc1YzBkMmUzYzc2YjEyZDg5M2M2OTRmOWJmMWExNTA5YWJhY2QxIHB5M2sKKzc0OTQwIGM1YjE1MDAxNzJmODljZjc1NWEyMTMzYTIyMzgwNjQwMDUxM2YwMWMgcHkzaworNzQ5NDEgODMxNTI1ZjE1YzU3MDI5MTIyYTEyYWEzY2Q2NGNiMWQyNGJmZDk1YSBweTNrCis3NDk0MiAwNzUyMTM5ZjNkYTFkM2FjZTcyN2YxMGM5MTlkZjRmMWQ3MDA0MDJiIHB5M2sKKzc0OTQzIDZhMjc4ZTRkOWY2MThkYjJkMmJiNTc0OGVkNTY1MTMzMjcwNDFjYWYgbGVnYWN5LXRydW5rCis3NDk0NCAzMGNjNGYwNzMyOTJlZWEyNmQxZjEzMTVmYjExNDM2MTQxZWRiNWJjIHB5M2sKKzc0OTQ1IDU4YmE4NWMwZDRiMGIwZmU5YTBmODJhODBjOWY1ODZkYzdiYjliNTAgcmVsZWFzZTI2LW1haW50Cis3NDk0NiA0NTE0NWFlYjYzMzEwYjIzMjIzZjNkYzIyNDRlNWJjZWFiNWVmNjI5IGxlZ2FjeS10cnVuaworNzQ5NDcgMDAwNzAyNGU5ZTIzNDhlNzgzNTdmOWY4ZTU2NzhlNDZlNTZjMWEzZSByZWxlYXNlMjYtbWFpbnQKKzc0OTQ4IDRjNzM0OWI5ZDE1OWE3YWRhMzUwMWViYzE5MWE4ODFkNmRjNGEzZWUgbGVnYWN5LXRydW5rCis3NDk0OSAxZWI0MjQyNTczNDVjZGI3NmJlYmMxNDkzNmQzNDE3N2QxZDk1ZjZjIHB5M2sKKzc0OTUwIDFiMTgzNmNmY2YyNjJhOTA4MTg5YWQ0YzUyOWVhNmE0NjcxN2JjOTYgcmVsZWFzZTI2LW1haW50Cis3NDk1MSA4MGEzOGY4OTNiN2YzZjA4ZTY0OTI3Mzk4ZGY1ZTJkZWQ0OWE3ZmJiIHJlbGVhc2UzMS1tYWludAorNzQ5NTIgYTA5ZGE1NmU0Nzk2OWVmYWUxM2JhZGU5ODNlZDA1OTg0MWJmNGUzOSBsZWdhY3ktdHJ1bmsKKzc0OTUzIDM5YjQ2MzA3OTdmYWNlN2Y0YzA0YWFhNzhkNzBkYmFjMjNjYWFmYjUgbGVnYWN5LXRydW5rCis3NDk1NCA2NzkxYzJiMWE3ZGM5ODhkZjE2MGEwODI2ZjhjYjNjNjA0NmQ0M2QzIGxlZ2FjeS10cnVuaworNzQ5NTUgNDE2YjY0NTUwN2QwYTg0Mzk4OWRmYTY1MmJiYWQ4ZGJhMWRkMTYyNyBsZWdhY3ktdHJ1bmsKKzc0OTU2IDhjY2MyM2FmZWEzZDE4OTY5OThmMmMyM2Q5MmE1ODA2MmQxYjRkMGEgcHkzaworNzQ5NTcgZWE2OTdjZGU2ODgyMzRmN2IyYmM1ZTBmZDUyMGQ3MDJhNzJlZTAzZCByZWxlYXNlMzEtbWFpbnQKKzc0OTU4IGY1NGQzMWU1ZmQ0ZDZmMDBiZDk1OWMxYTRkY2I3YmY2NGVmMjQyNjQgbGVnYWN5LXRydW5rCis3NDk1OSAyYzVhNzc1MGI3MWQ4MjFkMDkwMTRlMzljZmYyMmFlYzA2MTFlN2ZmIHJlbGVhc2UyNi1tYWludAorNzQ5NjAgYmQ4NGY0MmMzNjMzOTU4YjlkNTJjYTEzYTMyZjUzY2VhZjhhMTVlZSBweTNrCis3NDk2MSA1MjJiZTM2YjI5Y2QyMTQ4MWI4ZGIyNTY1YzYwNGM5ZjViOTQ1ZGUzIHJlbGVhc2UzMS1tYWludAorNzQ5NjIgMmRkZGRjNjQxYTk4NzNmMDJmYTlmODNmMWU2ZmEyMmY3ZWQyZTBjYiBsZWdhY3ktdHJ1bmsKKzc0OTYzIDI3MTdkODVhYmEyZTZiYzNlNzMwOTE1NmVhMzMzMTBjNmEwZDE1ODMgcmVsZWFzZTI2LW1haW50Cis3NDk2NCBlNTYxZjEwYzdiMzExOTI4YmU3NjA5MWJhZTI2ZTAzY2JjZTVjMjU3IGxlZ2FjeS10cnVuaworNzQ5NjUgZDEzMTk1NjUzM2JmMWNkOWNhODgzN2UxNmYxZmU1NDFiNGUxMzJlNSByZWxlYXNlMjYtbWFpbnQKKzc0OTY2IDY5ZWUxNTAxYjEwMjY5YzNmN2VkMzFhMDM5MmNiMTgzOWE3YWZmODUgbGVnYWN5LXRydW5rCis3NDk2NyA0MzZjYTc3NWYyNmNhYTg4NDllNGY5YmRmN2I5MjAzM2E3MWFmZDhiIHJlbGVhc2UyNi1tYWludAorNzQ5NjggMjI1NDhjN2VhZjM3NWJkNzZlM2M3MDVmMTBhMGQzZTE0YzllZDk4MCBweTNrCis3NDk2OSBiM2QyNWU2ZjY2ZjEyZGU1NjQ5NzQ1NmM1Y2EyM2JhZDQzMTljOWJmIHJlbGVhc2UzMS1tYWludAorNzQ5NzAgYjBhMmZiYTAwNDU4NjExOTA4YThkYmJjNmE4MmQzMWYwZGI3MjEyYSBsZWdhY3ktdHJ1bmsKKzc0OTcxIDFjNTBkYzIxMzMxMmRjNjQ1NzMzNzkzNWQyNzk1ZDlmZGYzYjZhZGMgcHkzaworNzQ5NzIgZDhjMjQ4YTU5MzEwNTBhMWY5NzVjM2ZmOWI3NjQ5ODJmNzQzMDg5ZCBsZWdhY3ktdHJ1bmsKKzc0OTczIDk4MTA0YWI4NTlmYTk2N2I1YWI0YjVhYzlkZTRkOTBiODFhOThiNWQgcmVsZWFzZTI2LW1haW50Cis3NDk3NCA4MDZjNjM2Mzg1ZmNjZGJhYmI1ODY4ODE0ZDFhZDIyODRiYzNlMTc0IHB5M2sKKzc0OTc1IDdlMzk4NWZhZjlhOGFjZmUwMjdiMGQ4Yjg5M2VhYTc4MGEzOTFiN2YgcmVsZWFzZTMxLW1haW50Cis3NDk3NiA3YTNmZGQ5M2I1NjY0ZGEyNTE0ZmZiM2E0OTVjNWQxMDFkOWQyMmIzIHJlbGVhc2UyNi1tYWludAorNzQ5NzcgMWRiNmVlOWQ3YmU3YTFkNmM1MzNhYTA3YmEyNWIwOTg1YzZlN2Y1YyByZWxlYXNlMjYtbWFpbnQKKzc0OTc4IGRiOTdjMDQyY2MxZWQ1Yjk1ZGE4ODQ0YTM5NTA3ZTRjY2UxMzI4ZGIgbGVnYWN5LXRydW5rCis3NDk3OSBjYjM0MjhiMWY0YWYyOWIyNWI0OGQyOTc2NTVhZTJlYTg0MGJjYjdhIHB5M2sKKzc0OTgwIDMzOTNmZmMwZGU0NGU2YTNjYmNiYmQyY2E3M2Q3OTRiNWZhM2Y1YzYgcmVsZWFzZTMxLW1haW50Cis3NDk4MSA5MjM0MzA1ZDM3NDAzODdhNzMyNmQzNDlhNDdlMzU2MTA4OTA3MjI5IGxlZ2FjeS10cnVuaworNzQ5ODIgNmQ4YjU0YjIxYjg3N2VmZmNjYjJiMTU1NDI5NDg0YjFjMzkyZDdlNSByZWxlYXNlMjYtbWFpbnQKKzc0OTgzIDI3M2MyMzQ4MDBjMTg0MWQzMGJiZTdiNjQ4NTFiN2QwYjdiOGMxMGEgcmVsZWFzZTI2LW1haW50Cis3NDk4NCBjYzNkOGFmZjQ1OTU2MGNhNDRmODg1NTMxZTNlNzVhMjM3ZGUwYTYzIGxlZ2FjeS10cnVuaworNzQ5ODUgYzU5NDllMTJjNjkyOWVkOGRiNjFiNGY1MGFlZGQ2ZWM0N2UyYzhkNCByZWxlYXNlMjYtbWFpbnQKKzc0OTg2IDljOTE2NWJkMjkzYWUyNDk4NjYxYmM3MDU2OWZjYTBhMjU2MTk5N2QgcHkzaworNzQ5ODcgYzYzZjg5MjNlMjRmNjhiNmVmM2JlYTJkNWU1ODAyMTE3ZjRiZjk5MiByZWxlYXNlMzEtbWFpbnQKKzc0OTg4IDJkZjhiZWRlYzZkMzMzOGMzN2RmNzYzMGM1NWI5ODdmZTNlZjNkOWMgbGVnYWN5LXRydW5rCis3NDk4OSBhOWNlMTU4OWQ2OTRkMjk4NjU1OWI1YmRkZTk3NTc1MDg5Y2Y2YjRiIHJlbGVhc2UyNi1tYWludAorNzQ5OTAgN2M0MzQ2ODdiNDI5Mzk2ZTE3YWE1ZTIxMWRjMmJiOTM3NmQxNjJiMyBweTNrCis3NDk5MSA0MDA4YTAxMzdkZTdiMGQ2ODAyMWFhZTg4NDY3YmU4MWU3MjVlYTA5IHJlbGVhc2UzMS1tYWludAorNzQ5OTIgZDYyN2M1ODkyZmQ1NDhlZjQ2M2JmNTEwMzFhM2M3NWUxMjUzMGNhZiBsZWdhY3ktdHJ1bmsKKzc0OTkzIDVjODcwMGNjOWQxNmVkMjZiOTRjNGZhZTViZjEzZDk3MDBlNDYyYTQgcmVsZWFzZTI2LW1haW50Cis3NDk5NCA3YTc2NDJhYjExYjM5MjdjZDIyYTQ3ZWY5ZTMyMmY5M2FjYzlmNzRhIGxlZ2FjeS10cnVuaworNzQ5OTUgNjI3YjM0OWRmMGU4ZTI3OTE3ZWM0ZmU3ZTEzNDUwOTdjMDYyNDFmMyByZWxlYXNlMjYtbWFpbnQKKzc0OTk2IDAxOGYyZWFlMjUyNmZlMjRkZGQ0OWQzZDQwZjFiNmY4N2I2MWViMTQgcHkzaworNzQ5OTcgZjhlNjk2ZTRjZmYxZDgwNGI0Y2U2YTA2NTI3OTdjYzMwZGVkYmI3NSBsZWdhY3ktdHJ1bmsKKzc0OTk4IGFmN2ExMjAwZmIzZjM1ZjAxZDQyMGZhZjc1YjNmNWIzNmU1MDIxM2QgcmVsZWFzZTI2LW1haW50Cis3NDk5OSA0YjgzZWE2ZmM1YmRlMjE2MjczM2UxNTk3NTdkMDQ0Y2NkYTcyZTFiIHB5M2sKKzc1MDAwIDNhM2UxNDVkNTUyYzVjOWIwMjkzYTJhN2YxZWEzODMwN2RkZjMwNTUgcmVsZWFzZTMxLW1haW50Cis3NTAwMSAxZmZlNmZiMTlhMThkZDA5ODliYWNhODU1NzVhMjU5YzU0NWFmYzMwIHJlbGVhc2UzMS1tYWludAorNzUwMDIgNzQzNWQ1OTFhMzI1ODNhZTEyNjFhYjlkZWRlMWE0NGQ1MjNmODFmMiByZWxlYXNlMzEtbWFpbnQKKzc1MDAzIGI3NzdlMGYwYjU3Y2EyMTE5MDhkMzQzNjMwODJlN2U0NTMxZDU4MjQgbGVnYWN5LXRydW5rCis3NTAwNCA1ZjYzYjUxNDI3MjUyMGZiOTcwMGM2MmZlNWIyODYxOThmYzI1MDZlIHJlbGVhc2UyNi1tYWludAorNzUwMDUgYjczNGQ2YjUxODUyOTRjNWM4NDMwZTJiZTI5YWRlM2I1ZDVkOTk1MyBweTNrCis3NTAwNiAzNTdjNzVkNTljZTk5NGJkNjY0NDgwZjAzMTQ3YzY2NTU4MjExNzY2IHJlbGVhc2UzMS1tYWludAorNzUwMDcgZjczY2RhZTE5N2M0ZDFlMmEwOGE0YjMzMzViYWNlYWE2NDQyMzZiMyBsZWdhY3ktdHJ1bmsKKzc1MDA4IDc4ZTAwZWI0NWRiYjQwZDhhZjRlYThlZWQ5MGQzMzZkZDgzNWU5ZDkgcmVsZWFzZTI2LW1haW50Cis3NTAwOSAxZjVmNzg4MThjNTFlODM0ZDI4YmUwNDg3YzlhYWYzMGYwMjQxMTYzIHB5M2sKKzc1MDEwIDgyZDc5N2ZmOWFhM2MzOGJmN2YyOTY4YTM5YjYxY2Y1YTEyZjBhYjUgcmVsZWFzZTMxLW1haW50Cis3NTAxMSA0Y2U0ZGE4NDdkOTNmMDUwM2QyOTA0ZDIzNzY5NTVkMTdmNDM2YTdkIGxlZ2FjeS10cnVuaworNzUwMTIgYzIzOTJhNzk3MTVkNjFkNmEyMTBhYzYyYTk0Y2RmOWM5MWFjMzBlNyBweTNrCis3NTAxMyA1NzRhNTMyZmI0MGIxODZlOGU3YmEzZmE1NzY2ZmJmNTliODFiMmJiIHB5M2sKKzc1MDE0IGFmZGEwODc3NjNhZjFlZGVkOWUxMjc4NDBjMTc0NDU4Mjk0ODUyMTAgcmVsZWFzZTMxLW1haW50Cis3NTAxNSA3NzE5MWYzYTFkMjdkZGM3MDE0OTU5YjdjMmMxNzdjMGE3MTdiYTVkIGxlZ2FjeS10cnVuaworNzUwMTYgNWI4YjE4YjAwZDRjZmYwNWVjZjNlMDg0MjFjNGYzMzg1MDZhNWZjOCBweTNrCis3NTAxNyA1NTU3YmM4Y2JmNjVmOTk0Y2U2MTUyMzhjOTBkNTRhYzdlNmYzNmM1IGxlZ2FjeS10cnVuaworNzUwMTggMDZjZTI3YTgyZTk5ZTdmZTNlZDg0YzQ1NjEzMTJkNGU2YzUxYjE5MyByZWxlYXNlMjYtbWFpbnQKKzc1MDE5IGNhZGJmYzczYTNiMGQ2NjJmMWE2NDBkZDEyOWM4MjNhYmJjYjIzNzYgbGVnYWN5LXRydW5rCis3NTAyMCA5YzZhOTgzY2Y2YTkzZTVjZTdmZmU5YTUzZmYxZTQ1YThlYzMyY2ZiIGxlZ2FjeS10cnVuaworNzUwMjEgMmFlOTNlYWM0MjBlMmFiOWE5YzZjZjk0Y2M5YzZiNWZjOGM2N2JlMiBweTNrCis3NTAyMiA0Y2ExMTVmMzNiNmI4Zjk2ODMzYWRjMzk5YTE0YjllMGNkNDMyMjcyIGxlZ2FjeS10cnVuaworNzUwMjMgNGFhN2RlNjYxMzdmY2MzZjM2ZGIxZDA1ZTg3N2ZlNDg1MGZmMDJmYSByZWxlYXNlMjYtbWFpbnQKKzc1MDI0IDMyMjhiYWZiZTZjOTM4NjU4YjllODRiMzU0NDYwMGFkZGU3MmFhMzkgbGVnYWN5LXRydW5rCis3NTAyNSAyZDM0YTc0ZjAwMTcyMDZmZThkNzBjYTcwN2UzZjM1MTIzMmU4YTMzIHJlbGVhc2UyNi1tYWludAorNzUwMjYgY2FlMDUzYzlmOWNhY2U0YmZlYThlYzUyZDkyZGM4OGM0MjcxNTYyMSBweTNrCis3NTAyNyBiMTlhOGFkZDExMmY4ODJkNWNmMDkzMjkzM2RkMTVmMDNmNDU3YWUwIHJlbGVhc2UzMS1tYWludAorNzUwMjggZDU5OWEzZjJlNzJkNmUwYzQzZTU3YTNhOGRiZDM2Mjc3YWIxNzA4NiBweTNrCis3NTAyOSAxZDBkNmY3NDM3OGM2YjUyYzdiYTc0NTM3NzgyMDExZmQ2NmQzMjJlIHJlbGVhc2UzMS1tYWludAorNzUwMzAgNjAwZWQyZGQ3NjcyODkxOTc3ZGQ4NGI5OTQyMDVhMWFlNDUxNDg3YSBweTNrCis3NTAzMSA5Y2FjOGJhNmY0YTlkYzU5ZWNlOGYyYWUyYmYxZjMwM2UyMmY3NGYyIHJlbGVhc2UzMS1tYWludAorNzUwMzIgYzI0ZjAwMDE4MmY0NTU1Y2Q1OWViODZhODAxNTlmNmZmZmNmNDNkNCBsZWdhY3ktdHJ1bmsKKzc1MDMzIDY4ODk5ZGMxMTdlYjM1ZmQzOTZiZmI0YjBkMDdiM2RiNmU2MGI2NjMgcmVsZWFzZTI2LW1haW50Cis3NTAzOCA1ODRkYjAzZTUyNDgwN2E0ZTc5ZTUwM2I5YjMzZWYzNmFjOTYwYjM5IHJlbGVhc2UyNi1tYWludAorNzUwMzkgYjRhYjQ5ZTI4MzA1MTAzYzkyNTFkZjQzYzMyNjY5NjlhM2QxMjVhMyBsZWdhY3ktdHJ1bmsKKzc1MDQwIDlkYWY4ODQwYTQ3M2UwOGU1NDcwNDUyYTc4MDRhZGE3NWE0M2JhMGQgcmVsZWFzZTI2LW1haW50Cis3NTA0MSA1M2E2YjM5ZWU0YjY2ZDk0M2MzNzVkYzI1ODIyZGI3NTEzMjY0YTU3IHB5M2sKKzc1MDQyIDNmZDdmMTIyNTU2YTk2MWE1YTlkZjVjN2UxNzFiY2JiNjc5ZjgyYWMgcmVsZWFzZTMxLW1haW50Cis3NTA0MyA3ZjdjZmFhMzgzMmUzZTI1YTNkYWZkOGUwNmMwN2RjYzY1Nzk3OGJkIHJlbGVhc2UzMS1tYWludAorNzUwNDUgMWQwZjQxNmQ0YmE2NDJmMzVlOGIwMTIwNzEyNmI0MGZjYmU4MjQxMSBweTNrCis3NTA0NiA4OTY2NzBkNDFjOWY3NGIzMWE4MjI3NDIxOTMwNzExYmQ0OWVlMTBmIHJlbGVhc2UzMS1tYWludAorNzUwNDcgZjlhNzBmMjI1NjI1MGU3MWFhMzBiYTMzM2RmNzZmOGMzMDEwYzE5YiBsZWdhY3ktdHJ1bmsKKzc1MDQ4IDc4NWVjY2MwMjVhYzZlOWZkZDA3MzdkMTM3MGYzYzJhMDZmNzA0NzYgcmVsZWFzZTI2LW1haW50Cis3NTA0OSA2NTZkMWQ0MGZlY2JmYzU1OWM1ZjdkYTgxMGQ4ZDhlMzRkMDkxMjcxIHB5M2sKKzc1MDUwIDU5MmJiODI1OWM1NDI3ODA0NWEzYWMxNThlNzJkNTliNTdiZDkzZWEgcmVsZWFzZTMxLW1haW50Cis3NTA1MSAwZjRlOTVmZjg1OWQyY2FjNjAwODRkMzU1ZDczMGQ2YjFiNmU2NTc5IHB5M2sKKzc1MDUyIDI4ZTJjZTAwZjU0NWJmNGU1N2E3YWVhYWM0NGQzY2RjODk1OWI0ZmMgcmVsZWFzZTMxLW1haW50Cis3NTA1NCAzZGVmOTUyYjUxNWMyYjQ1OGQ5NGQyMDRmZjhhZWNmNTE4MmU2MDU3IGxlZ2FjeS10cnVuaworNzUwNTUgMzU2N2U4NzE1N2Q4MzYzMWExNjNhOTFhYjM0ODNjNzc0ZjgzYTFhMSBsZWdhY3ktdHJ1bmsKKzc1MDU2IGUwNzNmYzg4ZGM4OTQ3ZjIxMDE2ZWQwZDU4MTljNjExNTA3Y2VjMzggcmVsZWFzZTI2LW1haW50Cis3NTA1NyA4ZWE5MjFjN2QxMGZhMTIzNzBmNTk5NzE3NTRmNTJjOWE4MjIzNmJkIHB5M2sKKzc1MDU4IGEwNzU2OGM3YTgyYWNhNTI3YWYwYWI5NjNhYTE2OWQwMTFiMzhlMmEgcmVsZWFzZTMxLW1haW50Cis3NTA1OSA1MGIxOGFlOGNlYzQ0OTI3ZTRhZWE5OTNkZGQ2NGIwYTExMGM2MTI3IHB5M2sKKzc1MDYwIDE0OWJlZDIxNzM1ZTA3NGFlMzFjZmFjZjdlZGE5ZmJjMzQxNTlkZmEgcmVsZWFzZTMxLW1haW50Cis3NTA2MSAxYjlmMTRlNWU5ZTUwN2Q3OGU2YjVkODA4YjVlNWExNDYwNTYzZjMwIHB5M2sKKzc1MDYyIDhjYzgyZGM2YmJiMDIzZjFlYzc4NGIyYzAxNDcyMmFlZjVhZmE4OTggcHkzaworNzUwNjMgMjY0NGY1NGUzNjc2M2UzODY2NWQxOTRhMjNmN2MzMWNkOTA2NDMzYiByZWxlYXNlMzEtbWFpbnQKKzc1MDY0IGJhODQxYmEwMGQwNjIyMmQwOWJlZGVjYTE3NmM4YzMzOWUyNmRmODQgcHkzaworNzUwNjUgNzgxZWY5NWNiNzgxODc2Y2ZlMTRiZWQ1ZjdhOTU2NTZmYmJhN2NhMCByZWxlYXNlMzEtbWFpbnQKKzc1MDY2IDJiZmFkZGIxOWMzYTFjNjViYmFmZGQ2MGRlZTFmZjdjYTUyOTg2YWIgbGVnYWN5LXRydW5rCis3NTA2NyAwMGE1Y2YzNzQzMTQ2MjQwMWExZDc2MjdkYjRjM2U2ZTVjYjMxNGVmIHB5M2sKKzc1MDY4IDg1ZTFkZGRlNTY5ZTI2M2FjNDg1YzAxYmNiN2ZkMmU5NTg1NWNiNGYgbGVnYWN5LXRydW5rCis3NTA2OSBlOTkwMjRlZGRmYjQ1YzYzM2I5YjlhOTU3OGVlYTNmOWY3OWYyYTA3IHJlbGVhc2UyNi1tYWludAorNzUwNzAgODlmYTI2NDE3MTVkMzQ5YTk0Mjk1YzI2YmExYTc5NzA0NmIyYmI0MSBsZWdhY3ktdHJ1bmsKKzc1MDcxIGFjYmZjNjliNTVmM2UwZDY0ODA3Y2VkOWM2NmRmYjQ5MGQzOTZkZGQgcmVsZWFzZTI2LW1haW50Cis3NTA3MiAwNzZiMjMzMzUyNjM3ZTIyYzk1MWE4YWJlMGNlMjBiNzY3NzQxZDNjIHB5M2sKKzc1MDczIGJmOWJlZjcwZjdlOGFjNjI5MWQ2ODViMTA3MDA2YjUwYTQ2Y2IwNDUgcmVsZWFzZTMxLW1haW50Cis3NTA3NCAyMDA2YTJmNDgxMmQ3NjdmNjllZjdjZmMwZjk2ODU5MGVjMTMxOWNhIHB5M2sKKzc1MDc1IGYzYzU5NTIxNGFiYzQwMDYxZDgyN2MxMmQ2M2RiNWVmODliOTdhZWIgcmVsZWFzZTMxLW1haW50Cis3NTA3NiA3MzkxNDM2ZDhhNzQ4OWQ0NjFiMjc4YWM5NWVlZmQ0Mzk1YzcyMjdjIGxlZ2FjeS10cnVuaworNzUwNzggZGQ0NTY0OTY5MDljZDRjY2FlZjNkN2Y2NjYzYzAzZTU5NTcyNWFkMSBweTNrCis3NTA3OSBiMDUwZWE3YmFmNDBkZWJjOTRhYzFkNjMzM2JiYWMxMTQxYTE4OGUwIHB5M2sKKzc1MDgwIDdlZTE0MGI3ZWY5M2JhZmRhY2E4ZGZiNTM0MjY2NjUxNDE2MTFhYzkgcHkzaworNzUwODIgMDQ1M2QxOGM2M2E0ZTg1ODE3NmU5MzM5MjNkZDRmNTI4YzRhZGI0MiBweTNrCis3NTA4MyBkNjg4OWRhMDY1MmM3Zjg2YmIzODM3YWU0MzQzOTQ1NTc2YzQ1NGFiIHJlbGVhc2UyNi1tYWludAorNzUwODQgNTQ2MTAxYTY2NzdjODRlMzM5N2ZiNmJhNDJhZjVlYzU4NGFjZjAxMCBsZWdhY3ktdHJ1bmsKKzc1MDg1IGIwZTk2MTliMzFkOGQwYTFkODcyNzI2MWI0ZDUzNmEzZDkwOGQ0M2EgcmVsZWFzZTI2LW1haW50Cis3NTA4NiBmY2IzMWJlMjEzNmQ2NGQwNDZhNTQ4OTE3M2I5MmY3YmFjNjFhZWU3IHB5M2sKKzc1MDg3IGMwZDk1NjI1ZjE3ZGU3OGZkZDc0NjU4Y2M2MmQ5YTAzYTQ4YjVlYWIgcmVsZWFzZTI2LW1haW50Cis3NTA4OSAxYTY1ZGRkN2Q5ZTE1MWRmMTNlN2YyN2I3ZDExNGM5MzRlNTkzMTZmIHJlbGVhc2UyNi1tYWludAorNzUwOTAgZjNmYTM5NjdmNDQ2NDFmNTg5YTBkYjYxOWNkMzg5NzQ0ZWUwOTUwYSBweTNrCis3NTA5MSAzZGVjM2I3N2I3ODc1YmMzNzFhZWFmNGQwMTA5ZGY4Zjk5ZWFjODI1IGxlZ2FjeS10cnVuaworNzUwOTIgYTA0MTA4NGMxZmRkNjYyNzBkODYwYmUxZTMyMzg0M2M1MGMzMzg1OCByZWxlYXNlMjYtbWFpbnQKKzc1MDkzIDkxMGRhNTQ1ZTE3YmM1ZjFhNDQxMGJjMjllYTc4OTJmYzNhYTc5ZjcgcHkzaworNzUwOTQgN2QwMjZmNzA2NDUwZDk4MDNkNGZiYWRjMDEwZGY1ODE2MmIyYWIwYyByZWxlYXNlMzEtbWFpbnQKKzc1MDk1IGJiOGI3NzBjZTg5MGU5MWJkZmYzZTU2Mjg3Mjc4ZWRhYWY2ZDViZWEgbGVnYWN5LXRydW5rCis3NTA5OCBmMDRhMWYyMDIzZWNiNjg4MWJmMTVkNjkxMzY3MGI2ZWRhMTg3MGEyIGxlZ2FjeS10cnVuaworNzUxMDAgZGViYjI0NWViYjQwMThkMThiODNjZDA3MTAyNGI0NDRkYTA0OTk4YyBweTNrCis3NTEwMiBjNzY2NzRjMmQ3NGQwMzlmOTE2ZmQ1N2I3MDNkZGViZDQ1ZjJkOGEyIGxlZ2FjeS10cnVuaworNzUxMDMgZTk1MjE4NjA1MzAwZWQwNjRkYzhlNTlkNzRkZGJiYzFkM2Y4ZGE5NiBsZWdhY3ktdHJ1bmsKKzc1MTA0IGFiNDllMGFjOGM4ZjEzMWUyYzNkNWNiN2FkN2Q1OWRiNDA3MjYxYmIgbGVnYWN5LXRydW5rCis3NTEwNSBiNmFmZjdhNTk4MDMwMDlkOGZmYzlmYjBhY2I1NmQ5ODZkYWY5ZTE3IHB5M2sKKzc1MTA2IDk0NTcyOTQ5YzFjYTRiZGUxMzM4MTc4YTg5Yjc4NWMyYzhlMTVhOWUgbGVnYWN5LXRydW5rCis3NTEwNyBkMTA4ZmU3N2MwNmMyNTZjZWVhZTg5MmNhZDMyZjIyZjE5ZWY2MGZlIHB5M2sKKzc1MTA4IDcwMTNlMzY1MTFhOGNlZGVmYjgxZWI5ZTViMjE3ODEwZWRkYTE4NTggcHkzaworNzUxMDkgODkyNzcxOGMxOThmZjdiN2E5ZjY1Y2E2NzY5NTE3NTQ2ZWE3Mzk0NyBweTNrCis3NTExMCAzYWI0NjRmZDVlMDFhNWRkZGE2ZWJhNjg3Yjg4ZGI1MmE4OTU4NjEwIGxlZ2FjeS10cnVuaworNzUxMTEgNTIzMWVjNTEyYzdhZmQwNGExZTU2Njg4ODMxODllMzYxOTkxOWRhOCBsZWdhY3ktdHJ1bmsKKzc1MTEyIGNmOTBhYTU3YjIwYmMzNjc1MjE2OTU4YTExYWQzZTRiNGQ5NDEyODMgcmVsZWFzZTI2LW1haW50Cis3NTExMyA5OWUzNmY0N2NhMGY3NjZmNDExMDFiM2MwYmIyYmJhY2Y2NjMyYWIyIHB5M2sKKzc1MTE0IDRlYzkxNWE1YmI0ZTBjZmM4MDhmZmZjYWZlYTAxZDE1ZjczNjVhMWMgcmVsZWFzZTMxLW1haW50Cis3NTExNSA3ZjY5NWRkNjRmOTAxZDMyZjJlZDVlNTY1YjgxMjI5YWViMDFmOTQzIGxlZ2FjeS10cnVuaworNzUxMTYgNTZiNTMwMDI5YmFjZjZhYjI4ZTg1YTAwZDIwMDRjZmMzNmE0MmJhOSByZWxlYXNlMjYtbWFpbnQKKzc1MTE3IGI1MGRkMTdkZmUyNjJhNDcyNWY0YWUzZTZlNDcwYTFmZDQwMGQzNWUgbGVnYWN5LXRydW5rCis3NTExOCA1MGMzMGE4Mjg0ZmJiNGNlNGNhYjIwYjk0NDI0MjEzODdlYTIxNzdlIHB5M2sKKzc1MTE5IDQ3YjgyZmJkYzJiYjFlMDBmMDM2OTY3ZTUxMjRiMGE0YmRkNzk0ZDkgcHkzaworNzUxMjAgMjAxMjRlYjg4MTFiYmZjODU2YzJhOGNhNjJmMmE5M2U2ZjIzMzc4NyByZWxlYXNlMjYtbWFpbnQKKzc1MTIxIGI5ODViY2RiOGI5MTRiM2NhZDRlNzRmYjQwMDk1MzA5ZDBhYmViYjggcmVsZWFzZTMxLW1haW50Cis3NTEyMiA4MjUwMjE4MjU0NjM5MGVhYWFiY2U5MjY3ZjNhMDcyYzdhMzk0MTYzIHJlbGVhc2UyNi1tYWludAorNzUxMjMgZWViZjNkNTFkM2E0NmYzNTgyZWQ0N2IzMmFmNWQwZWNkYmNkMDc1MSBsZWdhY3ktdHJ1bmsKKzc1MTI0IGVlOWE1NTFhODc1ZWQ0ZmU2ZDVjZTRiYjliNGNiZGY1YjRmNjRiYTQgcmVsZWFzZTI2LW1haW50Cis3NTEyNSBjNjNlMDYzODdiOGZjZGY2YTFlMjhlYjY0MjY0YTZjNjZlMzg2ZjRjIHB5M2sKKzc1MTI2IDc0YjE4YTI2N2NkNzUyYWRhM2IzZGI0ZWZkZmUyZDUyY2U3ZTUxZTYgcmVsZWFzZTMxLW1haW50Cis3NTEyNyBlZGQ5YTVlM2NhZmI2ZjA5NmUxYTI2NjAzYmY3MjcwYmEyNzQ4NjdmIHJlbGVhc2UyNS1tYWludAorNzUxMjggMzU3N2FmNTEyZGY1NzMwMzNmNWI4ZTE4ZmU4MzQ3YWQyNjM2ZGYxOSBweTNrCis3NTEyOSBmMjZiODAyYzAwM2U1YzAwMzU0MDc0NmU4NDFiN2ZiMjdkMDg4ZDc4IGxlZ2FjeS10cnVuaworNzUxMzAgYThkMGU3NjRlMzRiMWNhMmVkY2I0NWZlMWM3YWFhYzM0Yzc3MzBmNSByZWxlYXNlMjYtbWFpbnQKKzc1MTMxIGU1YjgxMjEyZmRmZDcxNzY5ZjQxMmZhZmQ1NGJhYTg4M2IzOGJlODQgbGVnYWN5LXRydW5rCis3NTEzMiA5ODY3MDljMjQ1MzE4OTQwNzAxZDFiZmExNzYzMThmNWZkOThiNmJkIHJlbGVhc2UyNi1tYWludAorNzUxMzMgNGQ3NDczNDQ5NWNmZDY2ODdkMTE5MzViOTEyMzZkODllNzU5YjI4MSBweTNrCis3NTEzNCBlMGYyMzQxMTZhYjE0OTgzNTY5Mjk0ZWZjYWYzZDEzYTBkYjI1MjgxIGxlZ2FjeS10cnVuaworNzUxMzUgMmUyYzE0MmJiZWFhOTlhYzE3M2M4ZDg0Y2Q2MWJiNTFmYjFkZDZjNiByZWxlYXNlMjYtbWFpbnQKKzc1MTM2IDE4NDM4ODZiMmIxZDg2MGIwOGNmOTZiZjhlMzQ2MmI4ODY1NjFkYTYgcmVsZWFzZTI2LW1haW50Cis3NTEzNyAxZjczNjFjNzQyMzRjNWNjYzI0NGJiMDE1MjY3Mjk2MDAxY2VjOWIxIHB5M2sKKzc1MTM4IGU3MmE3M2FkN2UyOTRjYmVmZmExZjVjNWI5MGE4ODY3OWVlZjYyZDMgcmVsZWFzZTI2LW1haW50Cis3NTEzOSA4ZTliZGM2YTEwMGZhMDg2YmQ0NjZmYmE2ZjJhYzYyYzMwYmIyOTJkIGxlZ2FjeS10cnVuaworNzUxNDAgMTlhNGE2MjNkOGI3MDQ0YzJiMWI5ZTI1MWIyYzhiMDhhNDI0MjRmYyByZWxlYXNlMzEtbWFpbnQKKzc1MTQxIDkxZjlkZjUzNjdjMWE1ZjFjNjE0NmNmODRlOTZkYjM5MTcxZjVhNzAgbGVnYWN5LXRydW5rCis3NTE0MiBhMTdjZDlmY2RkNDY5ZWQxZjM4NTA5MmNkODA4MTQ2YmYxZjIwNjBiIHJlbGVhc2UzMS1tYWludAorNzUxNDMgMWVhMDNmODZlMDgxM2RkODBlNTlmMGE2NzU1MmIyZjVhOGQxMTU1NyBsZWdhY3ktdHJ1bmsKKzc1MTQ0IDdlMTg1NjE2N2M0YTgyZWMxNzU0MDI5OGNjODI1ODNlNThlNzQwMDIgcmVsZWFzZTI2LW1haW50Cis3NTE0NSBiYTE5NjYyZWIyMjFiODNlNjM4MThlZTRiMTNhMTQyZjMzMTRkMjgzIHB5M2sKKzc1MTQ2IDA4ZTU5MDc2ZDg2YjJjYWUwZGZlMjdjZjU1OTBmYjkzZTgxNjBhNTAgcmVsZWFzZTMxLW1haW50Cis3NTE0NyBmOTliY2E2YWIwZGNjODVlNzhhNGZjMDk1OTNjN2NiMzI0MTFiM2FmIGxlZ2FjeS10cnVuaworNzUxNDggZGFkNzQ1M2QwZDA4NjJiYjczMDI1NTM3ODhmODViNGUxYzMxMzYzNyByZWxlYXNlMjYtbWFpbnQKKzc1MTQ5IGRmNThmZjJkZTA5YmEyMTg1YzIxMTlmMjY0YjYzOGU5NzljN2QyNTMgbGVnYWN5LXRydW5rCis3NTE1MCA2NzE2YzVmOGM2MGQ1Y2U1NDYwMzRhNTRhODM0MzI4NTM1ODUzOTA1IHJlbGVhc2UyNi1tYWludAorNzUxNTEgMTg3MzU0MmMwMDAwMGM0YjdjZTJjNzk5MmQxZjJkODdmODY2MjMyYSByZWxlYXNlMjYtbWFpbnQKKzc1MTUyIDBlZmZkYjM5YzQ3YjdhMDdiMTk5N2E1ZGJiNWJlZTY2NzY2MTNlM2YgcmVsZWFzZTI2LW1haW50Cis3NTE1NCA3YmNhZjA2NGUyNDA1Njc0ZDhiNTZlMGI0ZWNiZjE4NjUwMjI1OTk5IHJlbGVhc2UyNi1tYWludAorNzUxNTUgNWFjYWU0NmFmODQzZmE4YzNhZDkxMjcxYTQxYjBkMGJkZTMyZGRjNyByZWxlYXNlMjYtbWFpbnQKKzc1MTU2IGQ5MTIwOWQ4MjUxZGU2MDUzMGMwNjZhNTZmNDQ5NzQxMmViNDU0ZjggcmVsZWFzZTI2LW1haW50Cis3NTE1NyA1ZjI0NWRhNzJhZWJiNGQyNzdmZWE0NGIzYmUwYmM0MzU1ZTA1MjYzIGxlZ2FjeS10cnVuaworNzUxNTggMWMwMTZmMGU5NGJhYzFmNjQyOTBmOWIyY2Q4NjkxZGRmMWUyZWVmNCBweTNrCis3NTE2MCAxNmM5ODVkYWFlYjA5ZDY1M2I2NGNmZWI3NmQ0ODRmODk5NDdjZjUyIHJlbGVhc2UzMS1tYWludAorNzUxNjEgZTdlNDUyNDQ5YTVlYWM5YThhY2NiYmZjYTc1NTAxODNkMWIzMzkzZiBweTNrCis3NTE2MiA3MDNkZTU1ZTAwYjg1ZDY3ZWUwNGQ3MzhhZDE0Mzk1MzE5MDRmMjEyIHJlbGVhc2UzMS1tYWludAorNzUxNjMgMDg0NTgwYTM0OWI3MTEzNzg2NTc2MjE1ZmJmZjRiNWNiOTFkNzY4NSBweTNrCis3NTE2NCAzMzliODIzMjFmOGVmNjM5YTFjYjQ4ZjQwM2I2NTBjYjIxZTVjZWZkIGxlZ2FjeS10cnVuaworNzUxNjUgM2UyODgxNmFhMGEyMzI1YTcyN2VmNjFiYmExNWNiNTg5YjUzODJjYyBsZWdhY3ktdHJ1bmsKKzc1MTY2IDgwN2IwZDU5NzMxNGIyZjQ0YjU1ZjcxMDlmMjA0YmVlMDBkNzQ1MTcgbGVnYWN5LXRydW5rCis3NTE2NyA5MjE3YmQwY2MzZmNkNTAzODAzNDJjMzMxM2EyMjEwMzRlOWE4YTg1IHB5M2sKKzc1MTY4IDEwNjQ1NTUyMzdlMjE4Y2ZkMzlmMDk2ZTAzMTgxM2MwMTdjYmQ1MjcgcHkzaworNzUxNjkgZTFkNjk1MWJmMzlkN2RmY2RhNjBhYWZjZmZmZWFlZWI4YjA1NjlmYiByZWxlYXNlMzEtbWFpbnQKKzc1MTcwIDVlYzE1ZGExZmM0MjIwNWExZTEzZTE5YzBmMzdiNDViOTBlMzA3YTIgcmVsZWFzZTMxLW1haW50Cis3NTE3MSAxMTdiMzA4YmUzMjE0MzZiNmJhOTE5YTkwMTFjODMzOGM4NDc3NDUwIGxlZ2FjeS10cnVuaworNzUxNzIgY2UyMTRlZTQxMTY0OTI4YTMwYjY2ZGRlZmI0ZTFhMDhhOWU4YmI0YSByZWxlYXNlMjYtbWFpbnQKKzc1MTczIDE3MDBhNzg5NzNjZDgxNDZiMGI4MmVjZTE5MWZkMWYzNTZmZDM5NDEgcHkzaworNzUxNzQgMmM3YjFkNWM4YjY1YjFjZWMxZTI5ZWJjMzI1Nzk0YzMzMzQyNTcwZiBweTNrCis3NTE3NSBkYzM1MDBkMzllZjE0ODk5MTgxYjMwMGY2ZmI1ZTQ2MGI3MmJhODM2IGxlZ2FjeS10cnVuaworNzUxNzYgZmU4YjliNzNkOWFmMGQ0ZDZmNGNkMjk2M2QzODljZGUwYzZhNzc0MSByZWxlYXNlMzEtbWFpbnQKKzc1MTc3IGUzMDRkOWYzNGQxNTI4NzA1MzBiMmQ4MTA5ODRiNzM4YmE3MGFjOGQgcHkzaworNzUxNzggZmU5NjRiM2M5NjYyYzc3MmVlNDBjMzc4NzRlYzZkNTY1ZDI2NTYxYyByZWxlYXNlMzEtbWFpbnQKKzc1MTc5IDlmMTk4YjBmMzY3ZmJhMDRkYWMzNjFiYTBhM2E1ZTRiYzMxYzI2YzMgcmVsZWFzZTMxLW1haW50Cis3NTE4MCBlNmE1ZWJlNWFlZGQ4ZWUzMDJiZDQyM2NkNGNkYjJhOTI2ZTg2ZjM0IGxlZ2FjeS10cnVuaworNzUxODEgNzgzZTZjYzJhYjYyMzUxOTZiOTI3MDUwYjZhYTliNWNjOTIxMmRjOSBsZWdhY3ktdHJ1bmsKKzc1MTgzIDAwYzMzOTZkN2E4YzRhYjRjMmM4NDFkNjEwMTNhMDczYWU5MjFkMGYgcmVsZWFzZTI2LW1haW50Cis3NTE4NCA4ZTdhNjkyNzg3OTgxNTg4NzMyZjY1MGFjMmZjYWE1MDM3MmEwYzJhIHJlbGVhc2UyNi1tYWludAorNzUxODcgYzg1MGNlOTc3YmI5ODJkNzI1MWQzZjdmYTQ3MzBiZTRjZmI1ZjZhMiByZWxlYXNlMjYtbWFpbnQKKzc1MTkxIDRjNTk5ODNiYjA1Nzk2NjU3MDYxNmMyYzNmZDIwOTU0YzI2ZjljNmIgcmVsZWFzZTI2LW1haW50Cis3NTE5MiBjMmM5MGQxZjNjMzNlYzY5NzI0ZTY5ZjgzMmQ0YzM0YTVjZjZmMTA1IGxlZ2FjeS10cnVuaworNzUxOTMgNzI5MDE0MGNkMzMwMjcwNDQ0NDBhNjNiMWQ1NmI4MjBhOWQwNjAwOSByZWxlYXNlMjYtbWFpbnQKKzc1MTk0IGM0MTE5Mjg2ZmFhNzVkN2RlOWUyMWQxMDc3YzZjM2E3ZWM2YmRiZTUgcHkzaworNzUxOTUgOWIxZWI1ZTc1ZTE1OWU3ZTdlZDNlM2Y5ODUzNjY5OTQ4M2YwNjhkNCByZWxlYXNlMzEtbWFpbnQKKzc1MTk2IDdkN2Y5NzgzYzg2ZGIxNDkzZjM1NjA0Mzg5NWQ4OGRhOTgzYzdlMmYgbGVnYWN5LXRydW5rCis3NTE5NyA2NzQwOWJjOTlmYTJiY2YwMDAxNDBjYTAzZmE5ZjVkNGVhYTUyMTMzIHJlbGVhc2UyNi1tYWludAorNzUxOTggNzdlZTIyMDY4NmNjNTAyYmIwMjk1OWI5MTQ2Y2EwYzgzOTU3OGIzMCBweTNrCis3NTE5OSAyNzVkNjBmOTNkM2M1ZjYxOTA4ZThkN2QzNWZlYTkyMDEyNzQzMWEwIHJlbGVhc2UyNi1tYWludAorNzUyMDIgNDMxMzUwZjIxZDg3ZTlkOGVjNzBjNmY1YWM2NWMzMjNmYmFlNzBhZiByZWxlYXNlMjYtbWFpbnQKKzc1MjAzIDkxMzBmZTljNThiZjk3ZGY4ZDQzZmQyMzM2NGFmMDU2YmYyYTcwYjEgcmVsZWFzZTI2LW1haW50Cis3NTIwNCBmYzc0ZDUxYTY3OTc0MWE5ZDUzNmMwYWE1ZDQ4OGU3YTM0ZmY5NDdhIHJlbGVhc2UyNi1tYWludAorNzUyMDUgZDQxMzYwOTBhYzM0ZjkxZWRhMTFlN2UzNGQ5MzNjZjYwNGFmNTcwNCBsZWdhY3ktdHJ1bmsKKzc1MjA2IDI1Y2ZiNzBiY2Q1ZTlkZDA4Y2YwZTU5MGRmNDU3NjU1ZjEzZjkzNGEgcmVsZWFzZTI2LW1haW50Cis3NTIwNyAzZWUwNGVhOWNjNmUyZjczMWY3NTEzZjJhNWRlNzI3ODg4YTBiZTkyIHB5M2sKKzc1MjA4IDk0NmNlY2FmNjRjMWYxZDA3N2Y2NmMwMjBmNjUzN2Y4NzNjNzk5MzMgcmVsZWFzZTMxLW1haW50Cis3NTIwOSA1Mzg0YzhlZTRhMjZjZTAxZTc3MDRhZjM5ZGI4YWYzZmU3ZjJmYmQ3IGxlZ2FjeS10cnVuaworNzUyMTAgMzliOTk5NGU4NjY5M2IzNTFkMmMzZWY5YWMyYWY1ZjJiYzZmY2EwMyBweTNrCis3NTIxMSAyOGZiY2M3OWMyMGE5M2M2YTY1Mjk5MGMxZmUzNDQwZGIzOTJlMzU4IHJlbGVhc2UyNi1tYWludAorNzUyMTIgNmQwZGZlM2ExM2NhMThhYjM0YjUzZGQ2M2Y0MmQ1MjkwMmRhOTBhMyBweTNrCis3NTIxNCA4NDlmYjI3YzU1OTQ2NjI0NGJlMmMzODNmYThhZWQxNmQ2NWNmNDRhIHB5M2sKKzc1MjE1IDUyMjdlYWJkYmI2NDc1ODYwOGI1MWI4ZTQxOGUwNTkzOGQzMWNmNDUgcmVsZWFzZTMxLW1haW50Cis3NTIxNiA1M2YxN2NjN2JmZjY3YzZjMGM4ZWUzNjA5YjFkMzgwNzExNmI5MzQ2IHB5M2sKKzc1MjE3IGQ1NDkzNjZkZDIxOGIzMjQwYzNhYmFmM2Q4ZWQ0OTc2YzE5MWFkMmMgcmVsZWFzZTMxLW1haW50Cis3NTIxOCAxNTBjZGFlYTU4ZWM2OTE2YWM1MTlkMDkzMzdiM2QzZTZkYmNiMjQ3IHJlbGVhc2UzMS1tYWludAorNzUyMjAgNmNmZjY4MmEzMDk4MWZlMjAzMzUzODE2NDQ2ZDA2Nzk4YThiNWUxOCBweTNrCis3NTIyMSA1YzBhNzgwMDIxNWE2NzQzYmYxN2JmY2M0Yjc5MmUxOTYwNzNkZWJlIHJlbGVhc2UzMS1tYWludAorNzUyMjMgY2NlYjYyZWIxY2YxODMyYjI3NjJiZGZlYWY3YzlmMWVjNWFjODYyNCBsZWdhY3ktdHJ1bmsKKzc1MjI0IDQ1ZmNlMzEwZDQ3OTJjYzNmOWFkMzM2MTE4NjUyZTg2NjUwZjQxNjcgcHkzaworNzUyMjYgNGY0OWJkMmU3YzU4ZDI5ODQ5ZDIzN2ZhZTY4MGZkODY0ZDA0M2JjYSByZWxlYXNlMzEtbWFpbnQKKzc1MjI4IDIxOGNkZDZjNjg0Mjg1ZDgyYjhiMDgzYTQ4MDI4NTc0YWJhMTM4MTYgcmVsZWFzZTI2LW1haW50Cis3NTIyOSBkNWQ4Y2I5OGViMmFlZWEwOWQ5ODUzMGFhY2Q1OTU0ODUwNjUyZmNlIHJlbGVhc2UyNi1tYWludAorNzUyMzAgZjQwNTZmOGZlZWMyNmJkMjkyNTM2ZGY2MThlZmFhZDgwOTUzNTJlZSBsZWdhY3ktdHJ1bmsKKzc1MjMxIDQxYmI1ZTJkYzk0N2FjM2Y3YzRhZjk0NmMwMWExNGUwYjBhZDA2N2IgcHkzaworNzUyMzIgYzliZDYyZWZlNmNlNTUyNGUxNzRkMTA2M2QxNjViOGM5YmUwYjM2MyByZWxlYXNlMzEtbWFpbnQKKzc1MjMzIGJlYzJlNDQ1ZTIyNGI2NWEwZGYxMjFkNjFmOTk5ZTgwZDRiMzEyMGMgcHkzaworNzUyMzQgNWJjZTNhNTliZmQyYzVlZmM3YmE4ZmM3MWJmNzllY2VmZDE0YzlhYiByZWxlYXNlMzEtbWFpbnQKKzc1MjM2IGJiMmExMjNjZGQ3YmIyYWY1ODAxOTIxZDgzNTMzYjBjNDhiMWUwNDkgbGVnYWN5LXRydW5rCis3NTIzNyAzMjFjMjIwN2Q1ZjhmYTk0NWI1MjkxN2Q0YTg0NTliYmUxMDc3NDJkIHJlbGVhc2UyNi1tYWludAorNzUyMzggOTE5YTI3ZGRiNGEzMjExODZiMTMzNDVhMzU4OTIyMzJlOWIxYjZjMSBweTNrCis3NTIzOSAwNTM4OTAxNGJmNDQ0OWNkYTA2MjVjZTJhNGIyNjRlYjBhOTcwZWZmIHJlbGVhc2UzMS1tYWludAorNzUyNDAgYTJjYWJiMzYyNTdmM2JjMDEzMDVmOTVkOGMwMzJkMzUzYjYzYzYwMSByZWxlYXNlMjYtbWFpbnQKKzc1MjQxIGMyMTlmNzI2MWQ5ODYzNTYzMTE2ZDU0NDdkYzY3NzZmM2ZlOGFhY2UgcHkzaworNzUyNDIgOTIyYzExMjJjOTI1YjZhZTU2MmYxOGZlNzIwYTk5MDdhMWRkNGM4NCBweTNrCis3NTI0MyA4ZGJiMGZjMzk5OGFkMDg5MDQyNDE1NTI0YjdlY2VjMjlmNWYwZDgzIHB5M2sKKzc1MjQ0IGM4Mjc3MTBiY2RmZGIyZjYxYzQxOGVjNzQ0YmMzYmM5ZWNiYjU0ODYgcHkzaworNzUyNDUgMTM4YzdmYzE5YjVkNmVlYzRmYzM0MGNiNjRkZjk2OGYwMDBjOWUzNyBweTNrCis3NTI0NiAyYjdlMGVhYWM2NGVkZDQwMDBhM2Y2YzQ0ZDM5YTY0NTVkOThlYzdhIHB5M2sKKzc1MjQ3IDJlNGQ3YTQwYzJkZDdlMTMzYjcxYTk4Nzk3NDc5OTZhN2I5ZGUyM2QgcmVsZWFzZTMxLW1haW50Cis3NTI0OCBiMGI5ZTU5MjhkYTk5ZGRkYTJiNzVjNzRjNGM2NmNkZTgyZDIwOTY3IHB5M2sKKzc1MjQ5IDZiMjNiMGViYTQwNTE2NWEwYjFhMmRjOWI2N2RkNzhmNmM1ZDAzMWMgcmVsZWFzZTMxLW1haW50Cis3NTI1MCA3YWE0YTQyMTE1MmY5MjRlMTFmMTA3MjFjYTMxMDFiYjI4ZTVmNDg2IHJlbGVhc2UyNi1tYWludAorNzUyNTEgMzhiZTI2MzkwMzU1MDA0YjYxYTVjMDIwZDY3MzQzOTA2Mzg5MjRhNyByZWxlYXNlMjYtbWFpbnQKKzc1MjUyIDQ5MDE5MGNiNGE1NzcyMjg2NzMzNDZkZDY1ZTE5NzVlNjk2ODk1OTEgcmVsZWFzZTI2LW1haW50Cis3NTI1MyAyNzhjZjVjOGYxZmE5N2MyNjY4YzkzOTEyZjMzNjg0ZWRjODQ0MGRlIHJlbGVhc2UyNi1tYWludAorNzUyNTQgZDUyNTBkYTAwNWNhNzM5ZjJlYTg2OGYzY2QyODkwMDM5NmZiMDRiMCByZWxlYXNlMjYtbWFpbnQKKzc1MjU1IDk3NGMwM2M5ODg4NDgwNmNmZDM4NGMyNmRiNjA3ZmU1YmEyYmNkYjEgbGVnYWN5LXRydW5rCis3NTI1NiAyOWMwMTk2YjFiZGQ3YjUxNzYwYzEyNmZiM2E3MDg3MGE3MjU4YzI4IHJlbGVhc2UyNi1tYWludAorNzUyNTcgYTAxZjQxM2VhMDhiNmQ5MTdiNTdmN2EwYzBmMDJkNDc4ZGNjMmI5NiBwZXAzNzAKKzc1MjU4IGI0ZDFiZTcxMDJiMzFiMDExMzdjZjE3MjdiODU4YjQyNjE2Y2JmYWMgbGVnYWN5LXRydW5rCis3NTI1OSBmN2VlYTYyYjA4YjA1YTNiOTJhOWRmN2FlY2QxZGFkN2YyNDg3YTg3IHB5M2sKKzc1MjYwIGVlOTAyMDE2MjQzYTI5ZTc3ZGQyZTZkYWFkNTFmZDNiYzEyYTJmNTggbGVnYWN5LXRydW5rCis3NTI2MSA5ODdlNTk2Y2Y1NzM3M2U5ZmMzMTE2YWYxMzRhNzJhNzFkOGNmYmEzIGxlZ2FjeS10cnVuaworNzUyNjIgMWM3ZjJiOWExNjc4MmMwNmM1MTA1NGQ3NTdiOGE3NTAwNjgzODMzMiBsZWdhY3ktdHJ1bmsKKzc1MjYzIDJmYTlmZmU2ZDE0NTFkN2ZlZGVkZmQzOGIxMjQwYjVkMWYwMGY5ZWUgbGVnYWN5LXRydW5rCis3NTI2NCBkMmY5NTkxMTU0Mjg2ZTU0ZjIxMjQzY2QzMmI3YzAzZDlmZTQ2YzgzIGxlZ2FjeS10cnVuaworNzUyNjUgYTEyZTcwMWQ5N2NhYzc4N2YxNWU1ZjQ5MzNiMWE4ZjU2ZDRiOWZkNyBsZWdhY3ktdHJ1bmsKKzc1MjY2IGE0NTk1MDcyNmJkZmJhZGJlZTE1NWVkYjgwNWQ3MzNlMjAzY2ZiMWYgbGVnYWN5LXRydW5rCis3NTI2NyBhNmU3ZWQ1MmRmOWIzMTdlNmFjODgwYTJiNmExYjZmMTlhZDM2MjQ2IGxlZ2FjeS10cnVuaworNzUyNjggYzlkOWI3ZDA5NDIyZjdhNmE5MjAyMTA4MWY4MDAzYTliZmVjZTI4YyBsZWdhY3ktdHJ1bmsKKzc1MjY5IGE0YTMyNGMyYTAwYzc4MDg0ZWFkZGQwMDNiNjU2ZTM2NmM2ODA0NjcgcmVsZWFzZTI2LW1haW50Cis3NTI3MCAyNWFhOTBhNjg2NWI2MzEzMzk2MmRkNjQ2MjZjNTNjN2I2ZmQ0N2Q1IHJlbGVhc2UyNi1tYWludAorNzUyNzEgNDMzZjcyN2U1ZTgyM2YwMGQxMDIzYjQzOTAyZWJiMzhmYzJmOTIyZCByZWxlYXNlMjYtbWFpbnQKKzc1MjcyIGE5ODY0NDE3Mjg2YjkzZDVjYjU2OTQ3MWEyOTgxNjE1MTdkNWQ0MWMgbGVnYWN5LXRydW5rCis3NTI3MyA1ZTNmNmU4ZDZhZTU5NTU5N2M2NGQ1Y2FlYTA3OTQyNTRmYzRiMzViIGxlZ2FjeS10cnVuaworNzUyNzQgNmM5MWQxODAzMTgyNjgxNmE5OTExOWEzOWZjYzRmNGY0ZTY5ZTdkYSBweTNrCis3NTI3NSBjNWEzZDQzMTQ2NzY5ZGEzNjc3MDhjMTFiYzRjNDczOGM5OWUxZGM5IGxlZ2FjeS10cnVuaworNzUyNzYgMzI5NjkzNTI5OWNlNjI3ZDc5MjEwYzYxZjU2OTZiZTZlMDY4OTk3NyBweTNrCis3NTI3NyBkYzA0N2Q5YWJmN2I2Y2Y5MGZkYzEyYmRlODYxN2I5YTAwYmU4ZjBiIHJlbGVhc2UzMS1tYWludAorNzUyNzkgNjE1NWI5NTlmZjcyYmRmNWVmM2NhMGYwZjE5Y2U0NjY2MmE5OTk0YSBweTNrCis3NTI4MCBmOTliM2ZjMDFmYzA2ODk2YzM5MjkyYjQ5NWIwYmJkZmJhMDYxMDFiIHJlbGVhc2UzMS1tYWludAorNzUyODEgYzQ1Y2UyODVmNTUyYjk2M2U0Mjg2MTUyNWZkMTJiYzBjY2YwYTlkOCBsZWdhY3ktdHJ1bmsKKzc1MjgyIGI3ODUyMWFlN2E2MjQ1ZTQ4YmQ1Yzg4MmRiZTU5ZjM3ZjU1OGIwODcgcmVsZWFzZTI2LW1haW50Cis3NTI4MyBlNzU5Y2EyNTcwMWQ5YTY2N2RkYjg3MmJiYTViNTc3N2U3NjZlZjdkIGxlZ2FjeS10cnVuaworNzUyODQgMjQ5YjBiZTc5N2E4MmUyZWRmNjNjNzgzMGU1ZmEzNjcwYmM1NzJmYiBweTNrCis3NTI4NSBkZDk0ZjFkOGM5YTVjYTQ0Njk2MzQ5MDY3MDE3ZmJiZjIzYjFkODM3IHJlbGVhc2UzMS1tYWludAorNzUyODYgNDhhYjJlNjJkZThiYzZiZDM2NWFjMWEwMTQzMTE5YTY1YWIwNjE3OCBsZWdhY3ktdHJ1bmsKKzc1Mjg3IGVmNzM0NjQ0OGI2MDBkZmNlZWI1NGFmMTAwM2QwZjdlMDI1NGQxZjggcHkzaworNzUyODggMzA3MmY5NDBmMzVhMzZiNmQ0OWY1ZTI0ZWYxZmRkNTViODg5YTFiYiByZWxlYXNlMzEtbWFpbnQKKzc1Mjg5IDk2YWZmMmMyYTlhMWQ1YjcyZTBmNGYxZDBjMWVkNzk1OGQwNzhjNWYgbGVnYWN5LXRydW5rCis3NTI5MCBjYjQ5ZjJlYjA0NTc5Zjg3YWZiZWNhNzA5ZDA2ZTc2YmNmMmEwNjM1IHB5M2sKKzc1MjkxIDlmNjMxYTNiYjU0OTNmYWQ5OTgxNzkyOWQ4OTk4MTNmODBiMGViZDAgcmVsZWFzZTMxLW1haW50Cis3NTI5MiBkNzkwMjAyYzE1MWRiMGM2ZmI0MzUyOTg4ZmQ4MTdjZmVmZjU0YmE4IGxlZ2FjeS10cnVuaworNzUyOTMgYWJiYzc5NzU3NWM0MjM3MGE5ZWNlMWJjZGI0NTA2MWM4ZWQxNTVkMiBsZWdhY3ktdHJ1bmsKKzc1Mjk0IGViMGMzOWY2MmRlMTljYzdjMjQ3ZDY0NDkwOThjYzlmZTBiNTQ4NTAgcmVsZWFzZTMxLW1haW50Cis3NTI5NiA1NDU4YzIwYWEwY2Y4Mzk1YmY0ZGI0OWIxYzE5Njg1N2RmZTM1MDk3IHB5M2sKKzc1Mjk3IDk0NmUzYWYwMGIwYjhmMTNiNjhmOTdkODdhZjViMmUzZWI3NmQ1MWQgcHkzaworNzUyOTggMmM2MGU5NDYwNjJlYzBhZmFhMjFkM2JlYTdiNzI0M2Y2MzU5NmJiYiBweTNrCis3NTI5OSAyNWU1MWM1YjA2OTZlODVjNDkwMWI2OTZlZDdhMjQ1ZGM2NmFhOTZiIHB5M2sKKzc1MzAwIDg5NmE0ZmIxM2YzNWM5MWRmZmIwNTRkZjg1ZWVhODJkZTNlOWRlNzUgbGVnYWN5LXRydW5rCis3NTMwMSAxZWM4YzdmYjg4MDdiNWFmY2Y2YzUzNjU0MGE2OGE1ODE1NTg4OThiIGxlZ2FjeS10cnVuaworNzUzMDIgMTJjZDk0ZDM5ODc0NjQ4ZWIwZjNjZmI1MzdjZWRmYzBkZDAwZjIzMSByZWxlYXNlMzEtbWFpbnQKKzc1MzA0IDU3ZWUwNzkzZTQ2MjdiODBjZTEyYjZmZjQwMzRmZWE3YWRjNDVkNzUgbGVnYWN5LXRydW5rCis3NTMwNSA2ODQ5NjBmYjFjYmY2NGU4NTc5NzljYzJhOTY4NWYwNjcxNmJjMTE5IGxlZ2FjeS10cnVuaworNzUzMDYgYWI0MjAzM2ZkZmRiZTVhYjRlMTI2ZWU1ZTFhODA4MWVjMWNlMDIzMSBweTNrCis3NTMwNyA5MWFhMDQ0MTAxMzkwY2VkMzk4YWFkNjFlNzEwMDFhMDY3MGQxNTlhIHB5M2sKKzc1MzA4IDI4MzY5MzllN2M1NDdmZmVkNDA2NDZlMTIyZmYzYWJkMGViMjM2MmIgcmVsZWFzZTMxLW1haW50Cis3NTMwOSAyOTkwOGYyYmM5M2ZkOGNkZWMzNTc0Y2U0NzBhNWFkMDFlZjA1N2JiIHB5M2sKKzc1MzEwIDZkMDkyYTUxZTE4N2U0NTIyZDZiZGU4MzU4NDljYzI2MTUwZjZmMGUgbGVnYWN5LXRydW5rCis3NTMxMCA0ZjkxMzEyZDZlYzJhYjM1ZTdhYjgyMmE4M2RhMDA5MjMwZjEyNGFhIHB5M2sKKzc1MzExIGI1ZWE0NzczYWZmMTAyMWEzNTYxMWJlYTIxZDBlNGJhOTY3NGUzNTUgcHkzaworNzUzMTIgYTJmMDJhMTI1ZmViMGI5NjlkODM4NjRhMGU5NDdmNzlhOTgxNDNhOCBsZWdhY3ktdHJ1bmsKKzc1MzEzIDMyYzM1ZjliMjQ1Yzg3YzBjMDc5Zjg0MWI5ZDdjNWQ1YzZmY2E4YzMgbGVnYWN5LXRydW5rCis3NTMxNCBkNzNmMjIxNWVmYzE5ZjkyMzcyNjhmOGI0NzMzOGQ1OGEzOWM4MGUwIHB5M2sKKzc1MzE1IDMzYjA0MTM1MDAzNDJhZjcwYzI4YjljZDM1NDkwYzFhNTRiZDU3YzMgbGVnYWN5LXRydW5rCis3NTMxNiBlZjMxYjA0ZGU1MDU2MmZmYzQ1MGE2YTFkNDBlMGFlZWY4OGQ3NmFhIHB5M2sKKzc1MzE3IDM5MzFjNzhhZjExNzViM2M3NDI0ZjMzMTNkZjAwY2I5ZjA1ZWRjZWQgcHkzaworNzUzMTggZmY4Yzg2YTI0YjE1OGZiYWUxY2Y0NTQ4NTVmZjU4Yzg2ZjAzNDE0YSBsZWdhY3ktdHJ1bmsKKzc1MzE5IDM1NjE5Y2ZjZDBiNWJmNWE0MzAwMWY2MjEzZmIyZDJmMzM4ZDg0NTggcHkzaworNzUzMjAgMjIwZjdkZWZmYmFmYjU3NjAyYmE3MzVmNDMzYjJlZDA3MDEzM2ZiZCBweTNrCis3NTMyMSA0MmE2YTIyNDk0NzRjYTZiMjBjMTEwNGFhZTg2YmEwNzhkNWYyNTdmIGxlZ2FjeS10cnVuaworNzUzMjIgMzQ5OTlhMWFlYTliMjYxNzYxM2ZjMGViYzE1OWJmMjExZDYwZjdmYiBsZWdhY3ktdHJ1bmsKKzc1MzIzIGJmYTYwZGY3NjkyOTBhMTIzZTM2YmNlZTQyZDBiZjA1YTM1NDE0MWQgcHkzaworNzUzMjQgNDQzMTQ5ZmIzNTc0OGY1Y2RjZmJhODk5YTk3MjZkZjI5MWRmNWQwZSBweTNrCis3NTMyNSA2NTg3ZWE2ZDNlNzg0NWRlZjlhMjNjNTJhMjEyNWI0ODJhYjc1MDhmIGxlZ2FjeS10cnVuaworNzUzMjYgZjMyZmVkYTY1Yzg1NmFlNGFkMjU4NGRkOGMwNzc3NGZkZWUwODJjZCBweTNrCis3NTMyNyA0NTgxNTNkNWQ4MmQ2ZjcxYzdmZThkYjQyMTZlYThlNDhmNjllYjI2IGxlZ2FjeS10cnVuaworNzUzMjggMjE2OGI5ZDQ5ZTNiMTkwOGIyYzEyZmFkYTg1ZGQ1NDZmYWNjM2MyNiBweTNrCis3NTMyOSA1NTk3YmE3MGEzMzZjODY1ZjA2YThhMTkwMmQzMjE2OTczNzlkODA0IGxlZ2FjeS10cnVuaworNzUzMzAgZjc2ZTJlNjM3NzMwMTg5YTRjZjE2MDhlZjRmNDdmMWEyNWY5N2Q3NyBweTNrCis3NTMzMyAyNGU5MmNlZjI2NjQ2MzU5ZmUwMjYxM2M2MDMxY2I5YzFhYzU3Y2JkIGxlZ2FjeS10cnVuaworNzUzMzQgYjk0MmM3MDZlMzM4MTIyOGMyYWY3OWNkYjlhOGIyNTUwMDEyNWY0NCBweTNrCis3NTMzNSA2OTZhY2ViNzYzNWI5OTk2NTU3OGNhNTdhOThmZjRmM2I4ZDNmZjhjIHJlbGVhc2UyNi1tYWludAorNzUzMzYgODY3NjMzMzMwYTkzOGU3NDYzOTk3Zjk1NDI4MDM3ZTMwZDdiYTNjNiByZWxlYXNlMzEtbWFpbnQKKzc1MzM3IDYxOTRmZDc1NDMyMzk4ZjhlNWViZTg5MjFhMDI2YjkwMmViYWYyZjIgbGVnYWN5LXRydW5rCis3NTMzOCA4NmI2ODRjOTY5NDI0YjJlYWU2ZjlkNjUxYTRkMGEzNTE3ZmMzZThlIHB5M2sKKzc1MzM5IDMxMzBiN2U4MTJiMDRlYWYzOTg4NDA2M2Q1Y2Y1ZjUzZTNjMTgzMzUgbGVnYWN5LXRydW5rCis3NTM0MCA4OWI0YmIwYWE1YWNmODM4NjI5ZTYxMDkzZjNlMzYzNGIzY2ExZWFkIHB5M2sKKzc1MzQxIDRkZDA5MDEwMGVjYWZiNWI2OTI4OTQxZDBjMTZlZTNiMTZmZjAwMGMgcHkzaworNzUzNDIgM2VkNjU3MTZkN2FkMjQyYzk5OTZjYjZhMDFmNDg2MGI3MDI3YmVmMiBsZWdhY3ktdHJ1bmsKKzc1MzQzIDVjMzY1YWFiMTBkMWNlMzBmZTc0NTA2NzBlYmQ1NmFlOTgwZWI0ZGMgcHkzaworNzUzNDQgYzEwNWI5OGU2NDlkZTlhNDU4NDNlODM2MzM1ZTIwNjkzMzAxZDg4YyBsZWdhY3ktdHJ1bmsKKzc1MzQ1IDBhZDdmOWM5NTJiMDhjYTEyODkwYjRhZDRiMDM0MzhhYTg3MTlkYjcgcHkzaworNzUzNDYgNGJhMjdkMThkZDkyZGFhZmI3M2IxN2Y5ZmY1OTU1NDc4NTY0NDdjYiBsZWdhY3ktdHJ1bmsKKzc1MzQ3IGJkZThhMzk2MjI4YzJhYWMyMWU0MzljYjJjYjEwNzk4ZThhNDJmNTkgcHkzaworNzUzNDggYTE1YzdkNTBiM2NiNjRlMDE2ZWQyM2UzOGI3ZjEzMmZhY2Q5MzQ5NSBsZWdhY3ktdHJ1bmsKKzc1MzQ5IDM5N2UwMmUwYmU5MzE0YjU0MjEwM2ZkNTZkNDk4YTJhMDRlMzZiMTMgcHkzaworNzUzNTAgY2EwMThlMmJiODY1NGI5YjU5NGY2YTdhNGE0NzFhMjA0MmY2MzNiYiBsZWdhY3ktdHJ1bmsKKzc1MzUxIDUyZDY5NzNjYmQ5NGViMzM0NGIwMzczYzJkNmJhMzEzZWIxYmRhZWIgbGVnYWN5LXRydW5rCis3NTM1MiA1M2M4M2ExMzJlMWVhMjFiYjZjNjZhZTk0YmY0NDI3NDc5ODAyYTMzIHB5M2sKKzc1MzUzIDY5OGUwZTY5Yzc2NTdiMjY5YzBlNGYxMjg2MDdkZWFiYzk0MzU4YTUgcHkzaworNzUzNTQgNmE1ZTBjOTEzYzdjZWJhYWM4ZmE0MTdmMzU2ODc0MDM4NTllODA2NCBsZWdhY3ktdHJ1bmsKKzc1MzU1IDkyMDQwOGU2MDMwMzIxMzM3YjkxM2ExYzM5ZmIxYmVjZGEzMmZkNzAgcHkzaworNzUzNTYgZTQ2MTljZjllNjJjYmUxMjhmOWVhYWIyYzFjZDRjOTkyNWY2YzVkMyBsZWdhY3ktdHJ1bmsKKzc1MzU3IDhlZTQ1MTc5YzUwMzk4N2IwM2IwN2YxYTUxYjdjZjk3MGE5YzU3ZDcgcHkzaworNzUzNTggYTVkN2I1Mjc3OTUxOTNjYzZhYWM2YzFkOTFlYjcwOGVmYmY2NDNjNCBsZWdhY3ktdHJ1bmsKKzc1MzU5IDE1MjFhNjU3YTg1YWQ5YjU2MDE4OTc3YzU1OWIwMDQ4YWM0MTI1YTcgcHkzaworNzUzNjIgMjA1Yjk2ZWZiNzkwMGExMjhlNzMwYzNjNmM4OTJmZTljYjE3ODQyNiBweTNrCis3NTM2MyAzMjAwOGQyM2Y2Y2I0OGExZWRhMGIyN2YxYjFhZjY4OGIwZWE3N2ZkIGxlZ2FjeS10cnVuaworNzUzNjUgOWY3NjUxMThkOWI5NzEzOWQ2ZTY4M2Y4YmY2NjM1N2I4NTg5ZGEyZCBsZWdhY3ktdHJ1bmsKKzc1MzY3IDIyMDA4ZDkzNGU2Mzc1OTJjNDcyN2NiYTkyZjE2NmExOTMyZDg3YTEgbGVnYWN5LXRydW5rCis3NTM2OSA0M2FkNTU0NjE1YjZkMjAwYzYyZmVkNzU2NGVmNjgzNTE0Nzk3M2UwIHB5M2sKKzc1MzcwIDA1MDc0OGNlNWFkOWVhZTI0MjgyZWFhYjY3YzY4YmRhZDgzZGRlMzYgbGVnYWN5LXRydW5rCis3NTM3MSA0YjVkMzk4ZWI4NjY2NDMzZGVmZGY4ZDdhMjM3YzI2YzgyZjhlODM0IGxlZ2FjeS10cnVuaworNzUzNzIgOWEyYzM3YzMyYjdlNzE4MGE3MzE1ZGFhOGNjNDhiZjU5MzcyMGQyZiBsZWdhY3ktdHJ1bmsKKzc1MzczIGNkZGI2MjBmMGNkYTBhZTE0YjMxMWI4MzQ3OGRmZDU1NWY1MGJlYTAgcHkzaworNzUzNzQgMTY4ODQ3OTU1MzI0OTRiZDZlZTAxNzgxNmFkNmQ0OGM2ZTdmNDk4OSBweTNrCis3NTM3NiAzOTIyZTczNGM5YmI3MzJmOWY0ZTRkZjk4Y2U3OWJjNTJmMTgwYjg5IGxlZ2FjeS10cnVuaworNzUzOTAgZjU5ZGE5YzkzNDI1YTlmOWNmNjE3Yzg3Y2FjMDQ4NThhYTVhZWU5ZSByZWxlYXNlMjYtbWFpbnQKKzc1MzkxIDk1YTY5NjQwZWJkM2JkMTc5N2ZhOGJhMmFhMmY3MDFhNzI3NTE3ZDEgbGVnYWN5LXRydW5rCis3NTM5MiA5ZDE3YmI0ZjExNzBmYWIyMTBmNzg3ODgyMzNiMjIxOGY1Njg0MmRhIGxlZ2FjeS10cnVuaworNzUzOTMgMjA5ZTM4MjU0YWU4Yjg3OGQzNDUzNTRmZWYwZGUyOWU5ZTIxMjU3OCBweTNrCis3NTM5NCA5YmQ2YTdhZWUxM2NhODBlODU2OTc5ZWUzOTc5ZmFkMjNjNWU2MTYwIGxlZ2FjeS10cnVuaworNzUzOTUgMmE3NTgzNzE4ZDI1M2ZkNWEwZGEyNmNmOTgwNTgwZjM2NTg5ZDJlZiByZWxlYXNlMjYtbWFpbnQKKzc1Mzk2IDdmZThhODMxM2E1YjJlN2UyMzQyMmVmYWNmOTY3NmZiMzVlYmQ2NGQgbGVnYWN5LXRydW5rCis3NTM5NyBlOGUxMDM0ODhmYjM3ZTMwYjlkZmY4ZjRhODFmNjA3NmMxMjQ2Y2E0IHB5M2sKKzc1NDAwIGJkYmRhN2E5NGMzMzNlMDM2NWRmNjE5MmMzOTQwYTczOTA3ZDg0Y2UgbGVnYWN5LXRydW5rCis3NTQwMSA3NzU2MWNkMzlmZDM5N2JkM2ZhY2UzMmVlZTVhOTZjYmI5NDM2ZTY2IHJlbGVhc2UzMS1tYWludAorNzU0MDIgMDM4NTQ3MzJhNmMyOGU3MzlkNTU0NmYyNGI5YWE3MmUxZTAwNWJkZSBsZWdhY3ktdHJ1bmsKKzc1NDAzIDE4MzQ3NGJiMDIxMzhkYTg4YzNiNDk2YzUyYTdiMWIwYTA1ZGE0Y2EgbGVnYWN5LXRydW5rCis3NTQwNCA2MzUwOGVjNzY4NDBhYTY0ODIwOTg3NTcxYTc4OTVlYWRkMTBjZjBiIHB5M2sKKzc1NDA1IGRjNzVkMTdkZDMwNGE1MDZiZDE1N2U1YzJhNGVhZWZmMzE3Y2FjZTAgbGVnYWN5LXRydW5rCis3NTQwNiA2N2JiMTdjMmU4Njg1MjE5ZmFiM2M3YmZiMjAwYzA2ZTRkZDg1MGMyIHJlbGVhc2UzMS1tYWludAorNzU0MDcgMjQ3ZDVhNWVhZmE1MzQzOTc1Yjk5ZjNlZTk4ZmE0YzFkOTQ1ODE2OCBsZWdhY3ktdHJ1bmsKKzc1NDA4IDU4ZTU3NjMxYmU4Y2I2MzhlZDMxZTRiNDIyOWEwMzZlNDc3YTkyOGQgbGVnYWN5LXRydW5rCis3NTQwOSAzODZhNGQ3YzNjOTljZmE0OTI0M2MzOGM4NWZhNDQ0OWJmZjc4ZDY4IGxlZ2FjeS10cnVuaworNzU0MTAgY2RjZDgwNWVlZTg1ZDY1MDU3MzAyMTEyMmUwNjI1ZmI2ZmY3MjJhMiBsZWdhY3ktdHJ1bmsKKzc1NDExIGU4NTMyY2M4YTE0ZTQ5NzRmOGEzZjI3NGMyYzNlYzdjM2IwNGI5ODkgbGVnYWN5LXRydW5rCis3NTQxMiA5ZTcxOGQ4ZjcxZThmMDE0YTY3NzZiYTJjMWNhYjU3NmQ4ZTcwYjY2IGxlZ2FjeS10cnVuaworNzU0MTMgNGVlMzQzYzRiYzQ5ZDA3ZTNlZTY2NWIxMmM2MDIzNTk5N2M1ZjYwMiBsZWdhY3ktdHJ1bmsKKzc1NDE1IDZkNTBjNGMxYThiMzQ2ZmUwMzY0ZjIzN2ZjMjgwY2FiMWFhYTI3OGQgbGVnYWN5LXRydW5rCis3NTQxNiA1ZGZjNThmMzliOWY1NDIxOTBlNjlkNzBjYTIyN2NkZmVjYzM4YjQ1IHB5M2sKKzc1NDE3IGJmOGM5YmY3MTE1YzkzYTIzMGY5ZmI5ZjMzOGY0OTliMmE1ZGNjMWMgbGVnYWN5LXRydW5rCis3NTQxOCBkMjQyOThkZjJhNjYyMDZiZDAzODU4ZDkzZTczNGMwNmE1MTUwNWFiIGxlZ2FjeS10cnVuaworNzU0MTkgOTMzNTBhY2I1NDI1YmE0ZjAwYjVjZDgwOGM3YzYwNGVlN2E1MDI4MSBsZWdhY3ktdHJ1bmsKKzc1NDIwIDY0ZTE5YTY4OTg4NjE3ZWY1NDVmZDQ1MTgwZDBmODg3MmVhZTE0ZTEgbGVnYWN5LXRydW5rCis3NTQyMSBmZTM4ZDNjMTc4ODhjOGMwZWJlYTEzYjhhYWUxZjFmY2RlMmQyMDdiIGxlZ2FjeS10cnVuaworNzU0MjIgMTZkYjJhOTMyMjQ4OWMzOWViZjJiMDVkN2I2MDZmMzk0ZmIwYWE2NyBweTNrCis3NTQyMyA1MGI3ZjU2ODE0ZjllM2VhM2M2MTBiMWZlYjI2YTU3ZWQxMDNkOTFiIGxlZ2FjeS10cnVuaworNzU0MjQgZDBmMDA1ZTZmYWRkMDY0ZDc1MDMwYTlhZGJhZmIxMmU3YTI2Y2E3ZCBsZWdhY3ktdHJ1bmsKKzc1NDI1IDkwNDRmNjRiMTBhZTA2YjhjMDFhZjNjZDQ3ODZmMmVlMjc0MTQ2NDggcmVsZWFzZTI2LW1haW50Cis3NTQyOSBmYTYxODhjNDdiNjNmYzUyNWQ4MzljODc5NWIyNWQyZjM1NzZhZDAwIGxlZ2FjeS10cnVuaworNzU0MzAgNDViNjI3MjUzNzdhNjEyODU5N2RiY2ZkYzZkOWZmNWU3NGNkZTE2MSBsZWdhY3ktdHJ1bmsKKzc1NDMxIGE0YjE5MjJhMzA3NDkyMTg0YWE0NDY5NGQ5MjhjYjUxYzEyNGQ5MGUgbGVnYWN5LXRydW5rCis3NTQzMiBlMDBjNzg4NjliM2NkMzU2OGQxNzdlYWQyNzEwOWJmMTE4NTJkNmNlIGxlZ2FjeS10cnVuaworNzU0MzMgOTgzZWVmYmY2NjQ5MzQwZTc3ZGIyNTIwMGVjMTk3MjM0MzZiNzM5YyBsZWdhY3ktdHJ1bmsKKzc1NDM0IGU0YTBiODczOWU1YjhhYjdiZjllNGZhNmViZmZmZGE3M2Y0NjdhM2MgbGVnYWN5LXRydW5rCis3NTQzNSAzYjM3YjhkZDc2ZDc1MDI1ZjE0MTI0N2VmNGQ5NTNmY2I2MjE5ZmIxIHB5M2sKKzc1NDM2IGVjNTA4Yzg5YWQzNjgyMDc4Y2U0M2MwN2RkNjVkZDJkZGRkNGM0NzIgbGVnYWN5LXRydW5rCis3NTQzNyAyMGQwOTU0OWI4MmMwYjk5Yjc3MGMxMTQ4MDJkN2Q4Yjg5ZDI1YTkzIGxlZ2FjeS10cnVuaworNzU0MzggMTYxN2MxMTU1NmFmYTI4YzFiY2FiNTQ4MjQ5MGE1ZjNmMWRmYjBkYiBsZWdhY3ktdHJ1bmsKKzc1NDM5IDdlNTg0OTQyMDRjOGY2ZTQzZGRlYjA5YTk2NzQ4YWVjNDc4NDNjMzYgcHkzaworNzU0NDAgMjc1NGQ2NDE4MGQxZGM1NTdkYWIyOTc5YTc5MjU4YTg3MGQ0ZDYwMiBsZWdhY3ktdHJ1bmsKKzc1NDQxIDNiYzZmYjNjMGNjZDA5YTA1MDc0ZmJhMmZhNGU3YjMzNDIxZmQ4NzkgcHkzaworNzU0NDUgZDllNDhhYjYyNTYyYzE0ZjAzYjI1MmJiMTE5Y2YzYjhkODI2YWYzNSBsZWdhY3ktdHJ1bmsKKzc1NDQ1IGQ5NjMwNTE3YzcwYzE5NTA0MjJhYzdlMTIyZmUxMzg5ZmYxYzFmMTUgcHkzaworNzU0NDYgN2ZhMTRiZThhZDczY2IzNTc1NzY2NWQ4MTM4MWUxNzMwZDRkMWM1NiBsZWdhY3ktdHJ1bmsKKzc1NDQ3IDhkZmE4NDNjODM1MDFhMGU1ZGI5ZGFmM2M3NDEyYmY2OGUwOGY0ZWIgcmVsZWFzZTI2LW1haW50Cis3NTQ0OCAyNGQzMjFmZDNkMWEyMGIxNDc0NjQ4ZWIxYjNkNGJkZjIyNDVhMjVkIHB5M2sKKzc1NDUwIDllNDJjYzE5MmE0NDY1OWY0ODJiODc3MGFhYmYzZDJkN2VmNDhiODcgbGVnYWN5LXRydW5rCis3NTQ1MSA3NjAwNDM2ZGIyYTliODY5YjlmMDMwZjRiNjhlMGY3YzhlOTFkNGZjIHB5M2sKKzc1NDUyIDI2YjExZTZmZTVlMzFjNjdlYmZmODhjZmU2OWM0ZGUwYWU4M2M4Y2UgcmVsZWFzZTMxLW1haW50Cis3NTQ1MyAzNjU4YzBhOTU4OTIyYWY5MjZmMzk5NzY3NGZiMWZjN2M3NTdkODFkIGxlZ2FjeS10cnVuaworNzU0NTQgNjI0ZjgxYjVlYzI0Zjc3M2JiMDFmMDc5NDY1ZDhkYzdhYmU1YmNkNyBsZWdhY3ktdHJ1bmsKKzc1NDU1IDdkNzFjNTFmYzMwOGMxYjI2NTNiOWYyM2QzN2M0MWU0NTlhMTc1NDQgcHkzaworNzU0NTYgNWVhNmNkMjgzOWNjN2MxMDI3NmU5YTI3NWMxNmY1MDJkOTlhNzUzNCBsZWdhY3ktdHJ1bmsKKzc1NDU3IDljMDZjNzMwOTc2NTY2YzRlZDlhOTExMWI5ZWFkZmI3YTkwOGIwZjEgbGVnYWN5LXRydW5rCis3NTQ1OCA1Mjk5NTc5ZjU3OWE4NTRhZmI4ZTA3MTczMzIzMDRkY2E3ZTI2YzY5IGxlZ2FjeS10cnVuaworNzU0NTkgNGMxZmY3YjI0ODJlZTE4YTRlOThmMDAzYmNmNTllODY5MjU3NDg5NiBsZWdhY3ktdHJ1bmsKKzc1NDYxIGExMDg4YmI0ZmNmOGE2ZDIxMzQ2N2VmODE4NDA4ZGIwYmQ4MTk3OGYgbGVnYWN5LXRydW5rCis3NTQ2MiAyMDQ4ZDA0ZGVhYjQyYzU1NWI4MzViYTdiNDE5ZDRhMjhkOWMxOTJjIGxlZ2FjeS10cnVuaworNzU0NjMgODE0MzNhNjc2YThiYWZlMWZlMzY1ZjlkYzM4MGIyMmFmZDViOWIwYyBsZWdhY3ktdHJ1bmsKKzc1NDY1IGI4MThhN2E3MGE0Nzc4MTFhMWYxMGE0M2JiY2ZmZTQ0ZWQ1NWM3NGIgbGVnYWN5LXRydW5rCis3NTQ2NiA5ZjA1M2U1NTBjOTc3NjhiMGZhZGY4Mjk1YjAyNDZkM2Q0MzE2NjI2IGxlZ2FjeS10cnVuaworNzU0NjcgOTkzMjA3ZGNlMzk1NWI0MDhmNmE2YTI1MTU4NTE5ZDYwOTg5NDViYiBsZWdhY3ktdHJ1bmsKKzc1NDY4IDAwNzUwNWNjMWUyYzczNTZmNjRhZDVlZmY0ZGFlNmI1NGQ5ZDI4OTUgbGVnYWN5LXRydW5rCis3NTQ3MCBhYzNjNjMyZTFjMTNjMzFjNjYwYjc5MjIzZmY3M2U5OTNjNTBmMDgzIGxlZ2FjeS10cnVuaworNzU0NzEgZTZkZWIxNWM1YWU2YTA2ZmMxZDQ2YTkxYjMyNzQ3ZjdkZjY2MWJlZiBweTNrCis3NTQ3MiAzNTRmYTU2MWFhZGY2Y2RhMTA1NjhjYTU5OGUzYTQxMDdjZTNjYjcyIHB5M2sKKzc1NDczIDQ5ZTNkNGFjNjljNmY5ODBjMzUzNTViMDA1YzgxNzQ4ZjIzOWRlZWMgcmVsZWFzZTMxLW1haW50Cis3NTQ3NCA4YTZiNjE0ODRhOTg0YjhhOGZkMTg5NzA3YWFiZmFiNTdkNjlkMDRlIGxlZ2FjeS10cnVuaworNzU0NzUgYzM3Y2E5YWNkMWY5YWFjYjllZWIzODBmMTc5MmM0NjNkZmE5NmEzMSByZWxlYXNlMjYtbWFpbnQKKzc1NDc2IDMwYmI0YzM1NTU5ZDYxNjUxZTc1MWU3MTgyNTc0NGNmY2NiNzVkNTEgcHkzaworNzU0NzcgZDA3OTg3N2RhMzM1ZTYzODI4Zjk3Nzk0NjUzZTgxMTNhY2I1MzkyYiByZWxlYXNlMzEtbWFpbnQKKzc1NDc4IDg0YzE2ODA4YmEyYzgxZGEyZWViY2MwYmNkYWUyN2RjNTgwMzcwZDggbGVnYWN5LXRydW5rCis3NTQ3OSBkOTQ0NDAwMTE0ZTUwMGQ1YzYyOWE1ZmVlZWYzM2JiNTgyYzU4NTc5IHJlbGVhc2UyNi1tYWludAorNzU0ODAgYWE1M2EyZDRlZjJmY2JlOWIzOGEwNTFiNmI3OGFlN2E2Nzg5NGY2MSByZWxlYXNlMjYtbWFpbnQKKzc1NDgxIDVlN2M1Yzk0YzU3MjFhMTZiOTdjMjNjY2RhMzAxNDc4MjBmMDE4NTUgbGVnYWN5LXRydW5rCis3NTQ4MiAzNDljMDMzNzg5NmEyNzJmNjA2ZjkwZWU2NmUwNmE4NjAyNjE3NzdmIGxlZ2FjeS10cnVuaworNzU0ODMgZWQ3ZGVjMTM2NDMwZmU1NWI2NWI5YmZiNzM4YjczZjdhMTg0NzEyZSByZWxlYXNlMjYtbWFpbnQKKzc1NDg0IDc3N2JkNWRkMWQ5YWM1NDFhMmEzYTkzN2ZiYTkyNjhjOWJmMmUzYTUgbGVnYWN5LXRydW5rCis3NTQ4NSBlNjdlYjk2NjAwNDE3OWZlYmRiZjk4NzQxYWFmM2U4ZGYyMTAyYWFjIGxlZ2FjeS10cnVuaworNzU0ODYgNzdlY2M1ZTRmNjY0YzcxNDI0ZTRkNTFhYTVmMTM2M2ExNjA5MmNiMSBsZWdhY3ktdHJ1bmsKKzc1NDg3IDI5MjhmMWU4YjM4NTgxNTQyM2FkMmU4OWI1ZDhjOTAxNzEwNTIwNjAgcHkzaworNzU0ODggY2I1M2IxZmE3MjA2ZjJmNTIwNTA1Mjc5ZDVkODU1NDRlYjZiZmMzZCBweTNrCis3NTQ4OSAzZGJjNjIwN2NiZjZkZTRmZmE1MWNhMGI5Yzk3ZGIxMmRlMDM4NjM1IGxlZ2FjeS10cnVuaworNzU0OTAgODkzYzJhNGM5NTQ0NDU1Zjc5ODcxODgwMWU5Zjg3YTIxZGVmMDQ5NiByZWxlYXNlMjYtbWFpbnQKKzc1NDkxIGRlMmQ5OWFhNDZlYWZmNDgzYTlmNWNhYjI5MDI3MWExZGU0ZTU2NjYgcHkzaworNzU0OTIgMmI2MzU5NzA5MTg4YjExYjY5ZjMxN2ViMGVkZDNjZGQ0YjAxZTk2MiByZWxlYXNlMzEtbWFpbnQKKzc1NDkzIDA5OGJhM2E2MzczMGNhNmQ3NjRiYmFkZjU5ZjBjZmE3NGJjNjEwMDEgcHkzaworNzU0OTQgNTM5NzAwMmY3ZTVlOGZiOTE4MTIxZDBkMGY2MDM3NDcyNWNmN2M4ZiByZWxlYXNlMzEtbWFpbnQKKzc1NDk1IDBmOWU4ZDNlY2FjMzhjNTc2MDcwZjU1NTUyOWE3OWY2OTIyYzFkNTggcHkzaworNzU0OTYgMmM2MGFjNGVkNjVmNjkwMGI4NGFiYWFjYzlhOTI0M2JlNDM0YmFlMiBweTNrCis3NTQ5NyBlYTFmZGFmYmU0ZmUyNDU4YWMxNzI4N2UwZDZjNzA5ZWQwMGZjZTVjIHJlbGVhc2UyNi1tYWludAorNzU0OTggYmZlNzU2ZWIwOWZhYWQwNWU3YWQwYTlhNWEwOGRjNjdiZTEzZmJhZiByZWxlYXNlMjYtbWFpbnQKKzc1NDk5IGEwZTQxZGZiOTcyYjUxODc4MzM5Y2ZhYjFmMTc0OWQ5MDViZjVlZDcgbGVnYWN5LXRydW5rCis3NTUwMCAzODY0MTRiODQ2ZWJjY2RjYzc4NGVkNWQ3NzAxMzBjY2U2NTIzZGRlIHB5M2sKKzc1NTAxIDI1ZWY2ZjQ4MThhMDU3ODk0YmQ5ZDc3MGZmOTc0ODk3YzA4NTY0MTcgbGVnYWN5LXRydW5rCis3NTUwMyAwNjk5OTI1Mzk4N2JiNTM4NWU3MTk3MmU1MGFkYTY1MTAzNDNmOTE1IGxlZ2FjeS10cnVuaworNzU1MDQgMmE2ODUzYTEzYTJmNzk3ZDliODQyZmMyNjA5ODE3MmRlNzA4YTQ0YyBweTNrCis3NTUwNSAzY2NkMWQ2ZjA1YTZiNWM3MGM1YTVkOThmNGYzYzRhMTE4NjYwYjE0IHJlbGVhc2UzMS1tYWludAorNzU1MDYgZDE2NjZjYzdiYzc0ZjNhZDlmZTRmY2YxZjBiOGU0OTFlOWRiYTUyYSBsZWdhY3ktdHJ1bmsKKzc1NTA3IGQ4OWU0YTRlMGIyMDdmZGI0MGM2Zjk5Mjc1ODNjYWRiOTU0MDZmMTEgcmVsZWFzZTI2LW1haW50Cis3NTUwOCBlZDk5MDI2ZTA3ZmNkZGU4ODZjN2ExYzQwN2FmYTk5ZTMwODVkN2Q3IHB5M2sKKzc1NTEwIDc5Y2IwN2ZhMzZlYzEwZTAwM2M2YTA1NjNhOTFjZWVkY2MxOGFjMmYgbGVnYWN5LXRydW5rCis3NTUxMSA2NzQ5YzhhZGM0OTg1N2NkZGMyMWVlZDZjN2RlZjA2ZWI4YzZhNzYyIHJlbGVhc2UyNi1tYWludAorNzU1MTIgZTY0NGVlNGU3NmM3YmNmN2FjMWY0ZTU1NTdjMTY1NGZjMDAzZTNkYSBweTNrCis3NTUxMyBmNDI2M2E5YmQ4YWRkYTczYWQ0YTU0NWIyMWFkNTZiMzE5MzhjMDBhIHB5M2sKKzc1NTE0IDk4MjVlYzIyOGVmYjEyY2IyYmY2NzgxM2I2OTc4Y2YyNjE0YjUxZWYgcmVsZWFzZTMxLW1haW50Cis3NTUxNSAzNzE5MzdiYTZmYTYyY2IwYmM4ZjU3NzZjZTY5ZDg2YzE0ZjY4NzhiIHJlbGVhc2UyNi1tYWludAorNzU1MTYgZDhhN2IzMTRmYzUwNTAxMjUzOWZiZGU1ZDFkNWNhMzhkNTI4Y2UyOSByZWxlYXNlMjYtbWFpbnQKKzc1NTE3IDcxODgwMDI5ZmU3NTYyYTQzODBlMjBjYTlkZTFiYTMyMzg5ZjFkMTkgcmVsZWFzZTI2LW1haW50Cis3NTUxOCBmMzA2NjdjZDQwNDNjNDNiODllMDM0ODkwZThiMDQ2NjhjZTQwZjc4IGxlZ2FjeS10cnVuaworNzU1MTkgMTYwZjE2YTkxZWU3Mzg1YTUwYjM2YTEzZjFhYmQyNTgzYjM4MjVjNiBweTNrCis3NTUyMCBiZDZkZWU2YTc4YzM5NWVjNjE3ZWI0MWYyNmJiYWQxMGE2ZTg3ZmFkIHJlbGVhc2UyNi1tYWludAorNzU1MjEgNDIzMDNjOGNhYjMxNWViZTcwYTliYzRjOGIxMTFjNzFlNDcyNmJmZCByZWxlYXNlMzEtbWFpbnQKKzc1NTIyIDRhOTU0MmFjY2QxMzM0NWU3NWUwYmZmZDk3ZGY1NWNmZTE4NWE2NTAgcHkzaworNzU1MjMgNjcwZTIyMmFmZDQ4MTdkMzhhZTFiYjhlOTY0OTZkNzRkMjQ5NDU2NCByZWxlYXNlMzEtbWFpbnQKKzc1NTI0IDNkYWFjZDk4OTI1ZDc4Njc3NzgwOTUyMTdkZmE3YTcxNzU2ZGEzYjUgbGVnYWN5LXRydW5rCis3NTUyNSA3MzI3MmJkOTRkN2IwM2ExOTk3OGFkZTg0ZmJmMDA4OTcxYmM2ODE5IHB5M2sKKzc1NTI2IDM0MTgyZjk4NTg5YjhjOWEyMzkwYjkwNmEzNmY3MzZiNzAwNGE3OTMgcHkzaworNzU1MjcgZjc0MDMwYmE2NjEwODhmNmUyOTIwNzlhMDc5OGNhOWQ5NmIyNGIyYSByZWxlYXNlMzEtbWFpbnQKKzc1NTI4IDkwYzEwZGNiMjkxMzM5MjIyMThhN2UxZDZkMjllMjQ4OTYxODcwNzYgbGVnYWN5LXRydW5rCis3NTUyOSA0M2QwYjQ3MTA2ZGY4YjhlZWRlZDg1NzlmMWY2NDdjZDhkMTAzZjk3IGxlZ2FjeS10cnVuaworNzU1MzAgNTU0MWU0MmUxYzgxMWQxZGJlNDZlMzkzZTM3MjNhMGE2NGM0ZDlmYSBweTNrCis3NTUzMSA4NTY4NWU3ZDcyYzcxODRiYzZiNzM5YTU4MmQwZWE4Y2ZlMWIxYmU5IGxlZ2FjeS10cnVuaworNzU1MzIgNTQwMzFlY2U0M2EzM2FjYTE2ZGMwOWYzMmExMjQ3N2UzZWE2YjU2YiBsZWdhY3ktdHJ1bmsKKzc1NTMzIGNhZjNjOTNkMDE5MzZhNGIyZTQ3YWU2MmU4NWU3OGNmNTlhYTU1ZjIgcHkzaworNzU1MzQgZTZjNGRiYjVkYjAyZTUwOGE0OWU3OTdmYWY5MzQ2MzYwNTAzMTkwYyByZWxlYXNlMzEtbWFpbnQKKzc1NTM1IDdhZDZlNzhhOWM3ZGNkYjE1NmRlZGEyY2M0NTVhMjY4YzgyNWY2ZTMgcHkzaworNzU1MzYgY2VjN2Y0YzU4NTQ0MTQyOTBmNzU2ZTU2MDQzNzc5OWFmNzc2YjkwZiByZWxlYXNlMzEtbWFpbnQKKzc1NTM3IGVkZjIyNjM3YmQ5MDhkMzdjOTc0MDg1OTE2ZDZiNzk2NjRlNzFlMWYgcHkzaworNzU1MzggMmYxNGIwZjQ1NTFhZjJhMjkwMDczN2VjMWI0OWVkMTY0YTVkYmQ0OCBweTNrCis3NTUzOSA5MWVlODFmMWE1MjQyYjY2ZTViYzlmNWU1MjYwMDBmNjIzYmVmOWM2IHB5M2sKKzc1NTQxIDdhZTZkNWU0Zjc5ODM1ZTdiNDA3ZjhhNzJkMDhhZjMyN2MyM2QyNjggcmVsZWFzZTMxLW1haW50Cis3NTU0MiA5NWJkNzBkNWQ3MTVjZjA4ZGI1MzFkNWU3YzcyMGE5NWNkZmQ3ZGQ5IHB5M2sKKzc1NTUxIGJkYzM5MDcyMWY5NzVjOGQ5ZjYxMGUzYWY4NTQwOTQwNjliN2VhYmMgbGVnYWN5LXRydW5rCis3NTU1NiBhMjE5OTg4OTNiMWRlNDY2M2RiZWYxYjhkOWQwN2UyOTU3ZTQ4MDMwIHB5M2sKKzc1NTU3IDk0MWYxYmU0MjNhYTE4ODcxZWJkOWY1MWFkYTFlMzZlZjFkZDAwOTIgcmVsZWFzZTMxLW1haW50Cis3NTU2MSAxYjYwMmEyZDgxZWY1MThiN2UyODcyNDJhMTY3MmI1NmUxZGM4MGNmIGxlZ2FjeS10cnVuaworNzU1NjIgNmU0YTQ5MGU3MTQ3MTNlYzA0YTdlNDU4MTNjNTBjMDY4NWQ4ZGY0ZCBweTNrCis3NTU2MyAyNjAwNzM5NTYwN2U4OWRjM2Y5OTYxMTA5ODQ4YzBjMzBiM2RmMWFhIHJlbGVhc2UzMS1tYWludAorNzU1NzAgMTIwNzljM2Q0Yjc3OWNjY2ZiZjJlM2FkMzA1YjE5M2NlMzdlZWE5NSBsZWdhY3ktdHJ1bmsKKzc1NTcxIGJmNzYyNDEyMGVjN2ZlMWFhZTA4NmJkYTBiZTIzODk2MGVlM2VkOGEgcHkzaworNzU1NzIgMDI5OTk1MTM5MWUzNmFkMjMxNWRkNDBmNWY0ZjU4NDNhZjczZjQxOSBsZWdhY3ktdHJ1bmsKKzc1NTczIGIzYmVmZTBmMmI4ZGRjMmRlNDdiZjMzZmEzOTU4ZGQ2Y2MzOTBmMmQgcHkzaworNzU1NzQgM2NmZDIwY2Q2NDU5ZjVjYzQyZmNiYTFmMDYyYzg0YjdmMzIwNzZlNSBsZWdhY3ktdHJ1bmsKKzc1NTc2IDE3Y2U5NGFlZTcwNDZhYjkwZjI4MTRiZjM2NzQ5YzQ3YTljYzNkMTIgcHkzaworNzU1NzcgMWU3MDM1ZmE2MTU0YzZmNjVmMDYwZjZkOWE1MmMzYjEyOTQ1ODhlOSBweTNrCis3NTU3OCAyOWIzZTEyNmMwYzI0NjcyZjdmNDM4YTE0OGVjNWMzODY4MTMzMGViIHJlbGVhc2UzMS1tYWludAorNzU1ODAgMWI5NDQ0OTdlODFlMWRiZmRmMjU4MjBkNWU1YzcwODkxOTk1MDU1ZiBsZWdhY3ktdHJ1bmsKKzc1NTgxIDhjMWI2MWU3NDYzYTQxZjdmMWQ3ZTZjNjg5MDQwYmFjMjc1YzI1NTAgcHkzaworNzU1ODQgNWQ4YjJkNmRjZDYyMjlkZWEyYzRiNTdmMThkYzRiOTUyNzYwNzM3NSByZWxlYXNlMjYtbWFpbnQKKzc1NTg2IDcxNmVjM2VkM2ZjZjhmYWY1ZTNkYjhiYTVhZjE5MzkxMjAxNGFjMTMgbGVnYWN5LXRydW5rCis3NTU4NiA0MTRlMDNjMTQ4MTU5ZjQ5YmQ2ZGViZmU1Y2E4YmJjZDhmZGUwNzk3IHB5M2sKKzc1NTg5IGViZTE5YzRjNzFmNTcwNmM5N2UyYmE3YjgzYWE4M2U3ODcyZTZhOTYgbGVnYWN5LXRydW5rCis3NTU5MCBhOWJhNjM3ZDRkY2QzNzU2NTRjNGJjMjAxNGMzOTA0ZTIyMTlkYTY5IGxlZ2FjeS10cnVuaworNzU1OTEgOTc4MzQ5YzA3NGNlMDgyOGJmNTVjMDFhMmFhMWU2MDQzMzYwMjA1NyBsZWdhY3ktdHJ1bmsKKzc1NTkyIGZlODVlZjI3ZGM0NzkxZTY2ZGY1NGM5ZDE3MDk1NDU3NTY0YjZiYjAgbGVnYWN5LXRydW5rCis3NTU5MyA1ZGUxYWMyNDJiZmI1NjNmNDQ1ZjczNmI1NjQ4ZDc1ZjhhYTE3Y2VjIGxlZ2FjeS10cnVuaworNzU1OTQgNThiZGExMjA1YWNkOWQ4OTFjMzRlMzg5ODU3YzRmYjJiYWM3MDA3YSBsZWdhY3ktdHJ1bmsKKzc1NTk1IDBiYTliMjE3MTgxZWQ4YzU2MDU4M2M5OGY5MGU5YzZhZTJlZDJkNDMgbGVnYWN5LXRydW5rCis3NTU5NiAzYzI2YzZiNGRiNTAwYjdjY2FmNDBmMTFiZTUwZjhmYjRkODNiMzc4IGxlZ2FjeS10cnVuaworNzU2MDAgMDdlZjU5NzY2YjAyNmUwMzIxNDk4ZTYzMjRhMDE4MTU0ZjJiYWZlMSBsZWdhY3ktdHJ1bmsKKzc1NjAxIDI3ZWFhYzA3YzVkNmE4OWExYTYxYTA3Njc2NTQzZWU4MGRkYTZlZGQgcHkzaworNzU2MDIgZjU1NTY4YjM5OTI1NmMyNzMxODM3OGExZGVjZDcyOTRmNzIzNThiMCBsZWdhY3ktdHJ1bmsKKzc1NjAzIDA2NTM0ODY5MzViNjQxNjhkZTM0NGQwYTUyMDY4NmEwMWJkODA5Y2IgbGVnYWN5LXRydW5rCis3NTYwNCBiYWNkNGQ0MjI1NmI2Njc4Zjg1ODEwOWQ0ZmI3MTFiYzQzMzAwZTdmIGxlZ2FjeS10cnVuaworNzU2MDUgNzJhNWZjNzkwZDAxZmMyMzIyODZiZWM3Nzg2YzdmZGE4NzZkZGQ3NCBsZWdhY3ktdHJ1bmsKKzc1NjA2IDhhNThhN2VjOTJkYzU2ZDY5ZmQ4OWI1YTVhNGEyNzhkYjUzNTIxM2YgbGVnYWN5LXRydW5rCis3NTYwNyA0Y2ZhZjZhZWM1ZWJjNTU5OTA1ZjI5YzY0ZThmN2I1M2ZiM2QzYTE1IGxlZ2FjeS10cnVuaworNzU2MDkgYzQzODhlN2U3N2U5ZjY2ZjY0MTIwNjAxY2Y2MGU3Nzg0MWNiMmE0MiBweTNrCis3NTYxMCA1NjlhMGQxNzBmYWM3MjAzNDUyMmRiNjhlNDk1NGFlOWQ1Yzg0ZDczIGxlZ2FjeS10cnVuaworNzU2MTEgMWI4ODgzNDMwMTM5MTFmZGZiNmUzNTU3OWYwYTEyYzQ5ZTdjN2FkMSBsZWdhY3ktdHJ1bmsKKzc1NjEyIGExN2I1OGE0ODZmNDBiNTg1MWM2NDk2ZTMwMjUyY2Y5M2M1MzE1Y2QgbGVnYWN5LXRydW5rCis3NTYxMyA5ZmZhMTUxMzA5ODQ2NTMxNWU3Yzk3NTVmNjYxZmM1ZDdmZmU5NWZlIGxlZ2FjeS10cnVuaworNzU2MTUgNjgyNzljMTMzZmQ5OTIyZDQ2MTc2MDY2MWZmMDI5ZDI5Mjc5NzA2OCBweTNrCis3NTYxNiAzMjFlNjM1YzlhYjgyNmE4YWZhNWYzZjQ2OGQwNTY0NTY1MzkyMjVjIGxlZ2FjeS10cnVuaworNzU2MTcgZjNiN2JkNmU3YWRkOWZhNzE3ZjExMWM4ZTM2OTI0OTFmMmFkYTRlNCBsZWdhY3ktdHJ1bmsKKzc1NjIwIGRiMjFjM2MwMDlkYjM5M2NlMjdkOTczN2ExMTgxYTI2MDg5YjZkMjkgbGVnYWN5LXRydW5rCis3NTYyMSAzYzA2NjQ0ODBmN2ExNjBiZTNhNDAzZDdjYTE3NDRmNDQxOWFlNTI3IHJlbGVhc2UyNi1tYWludAorNzU2MjIgODgxOTU4ZGEyMTlhN2EzNGQ4MDE3ZGYxMTMxYzQyZDJjMTY1ZGQxNyBweTNrCis3NTYyMyA2ZDI3MmZkMWNkZDFlN2I0NWNkYmQyODQ3OGQxOWY5ZGU1ZTA3MGUyIGxlZ2FjeS10cnVuaworNzU2MjQgOTJkZGUyODIxNTNkZWY1NGI0NjQ5ZDBkNDc4MjM5YmM3NGY4OTEyMyBsZWdhY3ktdHJ1bmsKKzc1NjI1IDllYjc5ZTk0MjA0ZDI2NWM4OWY0NzkzOGY5MWZlNTgzNzQwNGFmYjggcHkzaworNzU2MjYgNjIwMDg1YWI0OTViNDE2NDg0MWEzMWUzNzkxYmVmZjEyMDVkODM3YiByZWxlYXNlMzEtbWFpbnQKKzc1NjI3IGIxMWYwMmNiMTEyNDRmN2QyZjU1ZWVhMTVjZGE1YTZmNjNlNjk5YmMgbGVnYWN5LXRydW5rCis3NTYzMyA5ZGYzMzkzNzE3MWY2NTE2Y2I1MDcxMWMzNDUzYmI5NDdmZTNjYmVmIGxlZ2FjeS10cnVuaworNzU2MzQgZjA5MTQ0NGRlZWEwMTA0MGZmMmY4M2I4ZTBiZjAxNmViZDk1NmIyZSBweTNrCis3NTYzNSA5NmQ2YzE0NmNmYTkxNzYxYTg1YmYzNjQyMzU2Y2QzMWIxYTg2NWIxIHJlbGVhc2UzMS1tYWludAorNzU2NDAgZjM4ZGFiZjI0MGNiYWVjNDE1M2Y0YzQ3ZGE1ZTg5YmZlMjI5N2M2ZSBsZWdhY3ktdHJ1bmsKKzc1NjQxIDM1YmI0MzM4NjczNDRmZTMyN2JlNzEzZmFkODBmYTcwNGQwYmUzOWEgcHkzaworNzU2NDIgMTYxZDMzMmFmYzg4NGQ3YTc0NzI0YmNiNGQ5MDQ0MGIxMzY3MzE4OSByZWxlYXNlMzEtbWFpbnQKKzc1NjQ3IDgwZjIyOTNmZDY2YWM4NTFiNmE0ODVlNzgwMTQ4N2E2ZGRiYzY2N2QgbGVnYWN5LXRydW5rCis3NTY0OCAxMGU3MjkzOWQyY2Y5MTY2ZGI1ZDhhMzA3YWY5OGYxZDJjM2RkNWI5IGxlZ2FjeS10cnVuaworNzU2NDkgOWE5MWQ0NTJhMGY4OGY3ZTg2NWZhNjJhMjdhYmVkMmVhNjQ3NDVlZiBweTNrCis3NTY1MCAyZjMwN2M3YWRiOGZjNWIxMDc3NTI3MjFmZmVjNDIyMTQxNThmMDAzIGxlZ2FjeS10cnVuaworNzU2NTEgMjE0NmJiZGY0ZWQ3ZGEzOGI5ZDJkMGUwMmI2MTVkMDZhYzEzM2FhNCBsZWdhY3ktdHJ1bmsKKzc1NjUyIDBjOWNmYzdmMWU5NWI3N2Y1YzhjODc1Y2JiZjM2YWNlYjg0NDg5NWQgcHkzaworNzU2NTMgZWI5MjVhZGJhOGY5MDE0YzRjMjFlM2I0ZjRjNTkyYzkwZDVmOGQ0YiBsZWdhY3ktdHJ1bmsKKzc1NjU0IDI2NDYwOWZiZGE0ODE1NjM3YjU4YWM0NWI5YjQ0ZWQ0MDFjMTRlNzQgbGVnYWN5LXRydW5rCis3NTY1NSBhZTAyYjE2ODE2MmNlOGY0ZGRlYTIxNDBhMTYyNDk4YzIzYjEwZDQ0IGxlZ2FjeS10cnVuaworNzU2NTYgYzcwNDc1MGU2ZjNlNWIwNTA2ZTE3NGNkMmZhNGE2YzlmYjQ5N2EyNCBweTNrCis3NTY1NyA2ZDI5Y2U5ZGNhOTAyZGEzZjIxZWNiMDc1MWYyMTQ2MTZkNWZiYjFjIGxlZ2FjeS10cnVuaworNzU2NTggMmFiMDhjOTE5NjQ4MjRjZjA1YWM5NWM4NWJhZGQzOWNhZTdmY2M3MiBsZWdhY3ktdHJ1bmsKKzc1NjU5IDI0ZDQzYTkxNDJkMjVhZjBlYjIwMjNkNDAwMjlmOTFiOTNmNTdkZTQgbGVnYWN5LXRydW5rCis3NTY2MCBkYWJlMWY5MmNhMjc0Mzc3NzlhMTgzNzgzN2NmM2ViNzQwY2RlMmI0IGxlZ2FjeS10cnVuaworNzU2NjEgNzIwNjZlNWI5NDIxN2UxMzg2YTk4NTY1OGYzNzg0ZTkwYWM0MWMyZSBweTNrCis3NTY2MiBjYmUzOTNmYTQ0Zjk2Mjg4NzdiMzMwZTcyZTdjMjQ5MzhjMTI0ZWE5IHB5M2sKKzc1NjYzIDU2N2IwZjM0YjFlYjEzZTMyMzJmNzEzZWFhMmU5NmU4ZmZiZjdjYjIgcmVsZWFzZTMxLW1haW50Cis3NTY2NCAwNmU2NjM2NjE4ZDcyMWI4M2Q0NDFkY2ZhNjljZmQ3YzI5NTE1MjdlIGxlZ2FjeS10cnVuaworNzU2NjUgY2M4OGE3MDM0MjhkMDExZjJiYTg0ZmUzZTM5YzU2ZmE1Y2ZjMDk1NyBweTNrCis3NTY2NiBhYWNlZTk3NDlkMTU0MzVhOTcxYzc5NDZiZmQwYzA3ZTgzYmU1MDJiIGxlZ2FjeS10cnVuaworNzU2NjcgOTJmMGExY2E0ZTk4Njg0M2QzY2IxNjcyZjZiNTUxMjIxMzY4OTkxNyBweTNrCis3NTY2OCAwYzM4NDA4YWQ4MTllMGU0YjI0NzFiMzNkYWM2ZTYyNjZlYzA0NGYzIHB5M2sKKzc1NjY5IGIyYzhiOTg0MjUwYWFmOTE3OWMzMTExOTYyMmZkYmM3YmQzOTdkZGUgbGVnYWN5LXRydW5rCis3NTY3MCA0ZDY1ZjEyMmIyYjNiN2Y0ZmFkYWU0ZTBlNTE4MzNiMDExODE5MzNhIGxlZ2FjeS10cnVuaworNzU2NzEgZGFkMjJhMWVkMjhiMmY2ZjViNTcxYzg3ZDZkNzlmY2M3YWViYjRhNCBsZWdhY3ktdHJ1bmsKKzc1NjcyIDVjZjMyNDMzMTViNWJiOGE4YjdlMDNhNzRlMzk4NWJkYzIwODE2YTUgbGVnYWN5LXRydW5rCis3NTY3MyBmMDIxOTkxZWNmOGQ2YjMxZTBmZmQ5ZjA2NTI5ZTE3M2EzMjIyNmJkIHB5M2sKKzc1Njc1IGVkZjM1YzNhNDhhYjhiMjRhMmI1NzYwYTE2Yzc3ZWEwNGVkNzJiOTggbGVnYWN5LXRydW5rCis3NTY3NiA0M2Q0N2NiNjY4OGNmZGUwOTk1MDk2Yzk2ZDQzM2U0YzgzMmY1YzkzIHB5M2sKKzc1Njc3IGNiNzIxYzMxOTVmYzc0ZGY3MzJkMjkyYzQ5NTdiYmRjN2RhY2IyOWMgcmVsZWFzZTI2LW1haW50Cis3NTY3OCAxNGI1NWE0ZTg3MjVhYzhjMzM0NDNlNjY2MjBiZDNkYTgyNGE2OTY0IHB5M2sKKzc1NjgwIGI1NGRhNWNhYWIzNjUwNTAxMTY2YTEzOTZkNzcwMWJmMmY4YjY2NzUgcHkzaworNzU2ODIgMGMxMjM4Y2FiZTkyMTVlYmNkZGE1ZTFlOTdlMjVhYTAwNjg2ZjA5MCBweTNrCis3NTY4NCBmNWM1NjNhN2RlNzVkMzkyY2IyNGU5MmIxNTE3NjM4NDllZTYwM2YwIHB5M2sKKzc1Njg2IDZjYTY0MmQ0ZjQyZmQ1Zjg3MDU0NjY4ZTFjMTBjN2FiMDgwNWEzNDcgcHkzaworNzU2ODcgYzcxYmE1ZDFmMTdkMjJmMTY4NzVjZmVmMTkyN2IzZTZmYWUzZGQ4ZSBweTNrCis3NTY5NiBkM2Y2ZmJlYmVhYzkwM2Q1Mzk3ZTA5MTE5NDM3NGViMTFiMTEyMTE5IGxlZ2FjeS10cnVuaworNzU2OTcgZmJlNmIyNjViZDFhMDk1M2I2ODdmMjcyOWU4NGQxNDEzNTFiODEwMyBsZWdhY3ktdHJ1bmsKKzc1Njk4IDQ4MzRhNDI4NTQxMWI5MTIzOTc3NDcyZmQ2MDRmYjUwNTFlZWZhNjcgcHkzaworNzU2OTkgYTM1M2UxMDhjN2U0MjM5ZDRhMzk2NDhmNWQ4Mjc1MTFkYzU0Mjk2NCByZWxlYXNlMjYtbWFpbnQKKzc1NzAwIDk3NzM2Yzc4OTBhNmI1MzZhY2JhNDgwMmVkNjkwMjcwYTU4YzRjOWYgcmVsZWFzZTMxLW1haW50Cis3NTcwMSBkZDQ2NmFjMTkyYmU5ZGVmZDkwZWJmMzZlOGYxYjFiNGE4NjllNWU0IHJlbGVhc2UzMS1tYWludAorNzU3MDIgOGFjOTA3MDE1NjA1OTU1ZTNjOTA2NDIxODgzNzhlMzkzMWU2ODQ0MSByZWxlYXNlMzEtbWFpbnQKKzc1NzAzIGY4ZTY1Y2EzZmQzOWNkMGIzZTE5ZDk2MTBmNDk1ZTVmNTYyN2FkMjggcHkzaworNzU3MDQgY2I5YzU3ZTJlYmQzNDc5MzBmMDIwOWY0YzI5YjQzMDEyMTEyODE2NCBweTNrCis3NTcwNSBhM2NiODEyZDgwZjkwNzZjNWIzYTAzNGEyODhmOTMxYWEwMzZmYTBmIHJlbGVhc2UzMS1tYWludAorNzU3MDYgODgwM2MzZDYxZGEyNzVjNzFjYWJlOWU5ZDAyNzRkYWM5OTAyZTJjMCByZWxlYXNlMjYtbWFpbnQKKzc1NzA3IGVjNGExYjRlY2IzMTQwODg0NGFmODRjNjcyMjRmZDUwMWI1M2I0ODEgcmVsZWFzZTI2LW1haW50Cis3NTcwOCBiNTE5NjA4YTk3MDFmMDEwOGU3YTE2MTgzY2RkZDVlZjMxZDM1YmNlIHJlbGVhc2UzMS1tYWludAorNzU3MDkgN2I2MDM2ODBiZjI5NWEyMDAyNDRkMGE0ZDYzZTU4NGU3MmYzMjFlMCBweTNrCis3NTcxMCBkM2NmOGViODcyNzRhNmM2NGYxNjJjNzk0ZjRkNWJlMWFjZGYxNWM2IHB5M2sKKzc1NzExIDc2YzY2NjkwZDFlZWE1Mzc2ZTkyODg5MTkwM2ZiNWFjZmEyNjhiN2IgbGVnYWN5LXRydW5rCis3NTcxMiA4ZWZmNzU5ZDA4MGY5ZGIxZDdiZDdiZjM4YTY4YTVhYTg4M2Y2MzE1IHB5M2sKKzc1NzEzIDk3MTM5M2Y2MGJkODc0ZGM0ODE2NWJiZDdhZDQ4NjI0NzAwNTAyMGQgcmVsZWFzZTMxLW1haW50Cis3NTcxNCA2ZTRkODk2OGUyNDY5NmJkYTkyOGY5NDVmMzA0ZDU1Y2UxYTUwZWVlIGxlZ2FjeS10cnVuaworNzU3MTUgN2RjNTdiOTkxZDgzYmRkZDJjNWY1MmFkNmQ2MDhlNzVmYWM4ZjVjYSBweTNrCis3NTcxNiBmNTk4ODQzZjM2OTViY2NjMWY4YzMwOWM5ZWNkNjMxZWZhMDg4YWEzIHB5M2sKKzc1NzE3IDA5NWFmOTllNmI2NDBmNTI3Nzg0NTg3YWI2YjlkZTJhOWY5ODFlZDAgbGVnYWN5LXRydW5rCis3NTcxOCAzOGE1NzU0YjMwMzc3MWQ4MTVkNDNmNTBiM2UyNzhhODc1MjBmNTA2IGxlZ2FjeS10cnVuaworNzU3MTkgZjRjN2ZkODVmMjMyNDA5NjRhNDEzNDJlOWM2ODE1ZjkwMTA2YzA3NyBweTNrCis3NTcyMCAzOGZkYTNhNDJjMGIzZjU4ZjZhNzZjYzEyMTRiN2VmOTBlNTA5ZWM5IGxlZ2FjeS10cnVuaworNzU3MjEgZGE5NmIzZmVhZjUyNWI3NjFmY2E2NGYyOWYxZGE0OWQ0YWJjM2VmYiBweTNrCis3NTcyMiA3NDQ3MmRhMDlmNmNkZGViODUxOWY3NmU2N2NkOGE1YjQxMTU3MzdlIGxlZ2FjeS10cnVuaworNzU3MjMgYjU1YzJlZWUzNDhiNTYzNjYxZDYxMGM5Y2JkYjc2NGYyZDY0NzRmZSBweTNrCis3NTcyNSBmM2JmOTJjZDExOTE3NGMzOWMwYTY4N2U3ZmNmNTQyMWZhYzI4YWQwIGxlZ2FjeS10cnVuaworNzU3MjYgNDUwMTA1ZGQ5Y2E3NDUzZGMzYzBhN2QyMjA2OTJiODc4YzI3YWMzNiBweTNrCis3NTcyNyA2ZGEwYWU2ODBmYjYwMmRjZmE2OWM0YjYwMzY3OWFlNjkyZmY2YmE4IHJlbGVhc2UzMS1tYWludAorNzU3MjggMDNlMWRiZTJmNGQ1OWM4Mzg5ZWE0NTI0ODVkY2Y4MGE2YWViZTU0MyBsZWdhY3ktdHJ1bmsKKzc1NzI5IGI1MDQxNzU2ZmQ5MTQzYzgwNWJkNWJiNWU5NWQxYWFhMzI0NTQ1NTggcHkzaworNzU3MzAgNDFiZTJjNjk2MTliMmM2YzY3MTAyZWM3YmE4YWZmZTU4M2IxOGYxZCBsZWdhY3ktdHJ1bmsKKzc1NzMxIGM1NjQxOWNiZGQ0ODY0MzcxOWNkMzM5OTEwYjdlMDhjOGQyNGVhYjEgbGVnYWN5LXRydW5rCis3NTczMiA2ZDIzOTZlYTdiMDNiNDRiNzQ3ZmIxYzQyNWZkOTAzMTk4OWNhMmUzIHB5M2sKKzc1NzMzIGU1NWZmYjg3Y2I3MDJjYzVmMzU2OWIwODg3NTZjNjA2MGEwNjUwYTggcHkzaworNzU3MzcgNGNiZWE5ZTc4MzU2ODE4MTMxYWZhODc0YmMyYWNmOTYwMDBjMWQwOCBweTNrCis3NTczOCA1YThlODE1OTRmMGYxNjFlMzgzYjgzNzIwMjlhMThiOTUzYjEzNjQzIHB5M2sKKzc1NzM5IDBiMWEwODgwMTJjNzRhMjE3YzZkOTcyNmVkYzM1ZTBiMjk2OTc4YzMgbGVnYWN5LXRydW5rCis3NTc0MCA4NzU1MDA2ZWRmOTczZGNhYjU2YTI0ZThhOGUzYjIwYmYyMmYxMjYwIHB5M2sKKzc1NzQxIDg5NmY5NDU0MWY3MmVmMzViYWUxNTFkMzAxZjE3NWZmN2MzM2ZmZDggcHkzaworNzU3NDIgNDIyNTJkNmQxMDMwYTJjMmYyNGI3ZTg3NTQ1ZDY3Y2I0M2EwODA4MSBsZWdhY3ktdHJ1bmsKKzc1NzQzIGE3NzgxNzFjOTNkZTVlYzY5YjFjMzhmNTgwZDg3MjA4ZjgzNGY1MGYgbGVnYWN5LXRydW5rCis3NTc0NCBiZTU0YjQwNDg3OWU2NWFlOTUxNmY5YmM4MDY4MDc3ZTMzMzA3NjRhIHB5M2sKKzc1NzQ1IDkxYTBjM2M2MDIwOTRlNTFhYWZiOTM5MjAxNDIzNzc5Y2FlYmNiNWUgbGVnYWN5LXRydW5rCis3NTc0NiA1NWQ4YTkxMTdkZTc4MGZmOWI5YWVjMmI5ZjhlYmJlNzczYTFjZmYwIHB5M2sKKzc1NzQ3IDE5YTgzMmI4NDY0YTJlZjkwMTNmODkwN2NjMzQxNmJkYmJhMGM0MDMgcmVsZWFzZTI2LW1haW50Cis3NTc0OCA0MTY5ZDNjZWNiOWRjZDI3Mjk2OWM0NzUwMjUyOTJiYTQ2MDkxMDA4IHJlbGVhc2UyNi1tYWludAorNzU3NDkgMmFiYzNiNGJjZTdjZjU2YTVlYTRlYjlmZjhkNDIzMjdjYTY5MzE4MyByZWxlYXNlMjYtbWFpbnQKKzc1NzUwIDE3YWNkZDY1OWVlOWU1MGYwZGM5YTI4ZmY5NGExOWEwZDc4MGNlMjkgcmVsZWFzZTI2LW1haW50Cis3NTc1MSBhMGVmNGVmNWZjODg3NWFiZjc1MzQ0MjY3YzI2MzY3YzM4MjVjYjM5IHJlbGVhc2UyNi1tYWludAorNzU3NTIgZjljZmVhMjAxNWIyMGE2MTQ5N2ZlZjBmNTBjYjk0YjkyMWUyYzc2OCByZWxlYXNlMzEtbWFpbnQKKzc1NzUzIDgxNzgxZDFlMmZiOWNkMjgxNGU5Zjg4MWUxYWVkNmIwODQ1YTA1YTIgcmVsZWFzZTI2LW1haW50Cis3NTc1NCBjMWMwYTBjN2Y3YmMzMDI0ZjU4OTVmYzg2MzZkODM4NmQzMjM3ZDY1IHJlbGVhc2UyNi1tYWludAorNzU3NTUgNTI0NTI2NzQ1ZjJlOTk0N2U1MGM1ZTQzMmQyZDRlY2NjZDY0YmQ4YiByZWxlYXNlMjYtbWFpbnQKKzc1NzU2IGZhYzRlM2ZkNzQ3YWNmMmM5MTcwOGJhYzlhMmQwYjQ3YWY3MzAxYmEgcmVsZWFzZTI2LW1haW50Cis3NTc1NyAyNTBiYzgyNDJlN2VhYmZlNDVmZGQ4MGI2MzI3NjdkODIzOTFkNzMwIHJlbGVhc2UyNi1tYWludAorNzU3NTggM2Q1NDA0Njk1ODViZTgzYjhjMDFiMDQ2YTQ3OGUxYTM3NTBiODk5NiByZWxlYXNlMjYtbWFpbnQKKzc1NzU5IDgzMDlhZDZhZTRjMGU3ODhhMjQzY2M0NDI5MTQ0YmU2OTUzZmVhNzUgcmVsZWFzZTI2LW1haW50Cis3NTc2MCBjN2RjYzIyM2Y5MjVkMzk0NjFiMWU4NzljZDc2NDczODZhNDljMDk3IHJlbGVhc2UyNi1tYWludAorNzU3NjEgMzU1Mzk1NDM4N2ZhNWIyNjY1ZGMxZjg3YWQ0NmI5MzJjODBjYTk1MCByZWxlYXNlMjYtbWFpbnQKKzc1NzYyIDI2ZWM4ZGJkNmY2OTdlZWYzZGQ4N2YxODczODU0Mzg2YTkyMmRjMzggcmVsZWFzZTI2LW1haW50Cis3NTc2MyBiNzE4ZjMxODhjNzZmZGMzOWIyMzlmMjI0YzRkYWE1OWE0MDQ1ODM5IHJlbGVhc2UyNi1tYWludAorNzU3NjQgNDdlMmMxNGIxNTAzMzUwM2QxMzc4OTgyMDhkZDgyNWEzYjZkY2FlYSByZWxlYXNlMjYtbWFpbnQKKzc1NzY1IGNjYmY3ZWJlZjQ3NTEyNzJmYzFiZGNmNTQwYjdmMzc1NjMzN2M0NGYgcmVsZWFzZTI2LW1haW50Cis3NTc2NiBjNzYzN2I2NmIzNGJiZTM3YTJmZGU3NmU0NmM3OTU0ZDkyNzMyYjk2IHJlbGVhc2UyNi1tYWludAorNzU3NjcgMGRkNWQzNjcyMTM0ZDhlNWEyYjExNjE3ZTVlZmJiNGE1N2I2MjEyOCByZWxlYXNlMjYtbWFpbnQKKzc1NzY4IGYwMGNjZjhlMTM1ZTEwYTNhMjVjYmQ4Yjc2NjU3NTFmZDdjNzZmYWYgcmVsZWFzZTI2LW1haW50Cis3NTc2OSBlM2U1M2I4OWMxNzg0Mjk1MzMxMWU5ZjI3YTY0YmY0YTI0MzZhNTFjIHJlbGVhc2UyNi1tYWludAorNzU3NzAgNmQ0MmYxZWVmNDVkOWRiZTc2NTE1NjMxMGI3OTI2NDFmOGQxYTgwMiByZWxlYXNlMjYtbWFpbnQKKzc1NzcxIGJiODE4ODczNmEyOWI0YTY0MTQwZjExNTc0M2ZhNzI3NWNkM2Y1YjEgcmVsZWFzZTI2LW1haW50Cis3NTc3MiA3ODZhYmFiYTQ2MmQxZTc0ZDY4M2I1ZjM2ZjgxMjZkYjYzZjRiNjBiIHJlbGVhc2UyNi1tYWludAorNzU3NzMgYzg2MzBmNzMwOTA3MThlYjI2ZDFlNjdhOGEyMDdhMTM3NGRhYTI0NiByZWxlYXNlMjYtbWFpbnQKKzc1Nzc0IDEzMTQ3MjdjMDlhZTdhNjkzNTRjOTc1YTk0ZTk2NzBmMzA4YzdmN2MgcmVsZWFzZTI2LW1haW50Cis3NTc3NSAwOTZiNDJjY2IyNThmNWM2M2QwZGZmZjA5NjU1OWM1ZDkyYWVlMDA3IHJlbGVhc2UyNi1tYWludAorNzU3NzYgOGFkZjhlZjdhNGRiYWFjOGEwYzgwYmUzYzA1YjRlMWM1MzRiNjkyZCByZWxlYXNlMjYtbWFpbnQKKzc1Nzc3IDA3ZTNjMGI0MWQ1MDAzY2M1YTg1NmE3OTI3NDNiMDlmYzA2NjhiZGQgcmVsZWFzZTI2LW1haW50Cis3NTc3OCA2OGY3Mjg4ZDE1NWNlM2MxN2ZlMjNmZjdmYTAxYmNmODA5NjVhZGZhIHJlbGVhc2UyNi1tYWludAorNzU3NzkgMGQ1MWE1ZDU2YjVhMjIxNTlkYzZkMGJmYjVmOWQ4MzI5ZmY3ZjkzNCByZWxlYXNlMjYtbWFpbnQKKzc1NzgwIGExYjA5MzZiMDI3Y2YzZjA2YTllNGU1OTA2ODljNGRhNmNjNjkyY2EgcmVsZWFzZTI2LW1haW50Cis3NTc4MSA1ZDkzYzc1NDA1N2NmMjY2NzVjMGY0YzY0MzEyMjQzZjgwMDgxNmI4IHJlbGVhc2UyNi1tYWludAorNzU3ODIgMTI3ZDYyMzM5NmFiOTNhYzk3YTA1YjFkZTQxMDkwYzkzY2M2MGQyYyByZWxlYXNlMjYtbWFpbnQKKzc1NzgzIGZhYjY2MGMyZWY4ODg3YmNjOGIzOWZiMDgwZGVmNDhhZmM1ZDIyMTIgcmVsZWFzZTI2LW1haW50Cis3NTc4NCA2NmRlNzExMTIzMGFiNDVkNDkzNmZiMzI4NTRiOTlkNTRjZjkzNjgxIHJlbGVhc2UyNi1tYWludAorNzU3ODUgNmIwNWQ0OGNjYTI4NzIwNjMyMDMzNjkxMmJmNjQ0Njg1NTEwNjc5NiByZWxlYXNlMjYtbWFpbnQKKzc1Nzg2IDNlMTVhMDdhMzJmYWY5ZDQwNGNmMjJlNmM0NjgwZTE2MzU4OGRhYjAgcmVsZWFzZTI2LW1haW50Cis3NTc4NyA5YjI0ZDAxMDEzM2YwYTYxMmYyOWMzYzM2MjE0ZGZmZGE1MmYxNmJhIHJlbGVhc2UyNi1tYWludAorNzU3ODggODVhYTcwNmY3MTI2ZDIxMTQwNjk5OTEwZjg3N2YwOTM5MTcxMjUxMSByZWxlYXNlMjYtbWFpbnQKKzc1Nzg5IDQ4NTIxMjMzYmQ2ZThkNGQ5ZTI0NzA2NmUxZmZiNGQyOGM1Zjk4NGQgcmVsZWFzZTI2LW1haW50Cis3NTc5MCBjNGM0MjliMDhhNTc1OTkyMmIxMmM1ODc5ODRlZWU0Y2JjMzBkZDBmIHJlbGVhc2UyNi1tYWludAorNzU3OTEgZWYzMTk0NzQ5Mzc3MDAwMzhmNGExNGY4NjgxMTQ2NDBkZTE3MGI4ZCByZWxlYXNlMjYtbWFpbnQKKzc1NzkyIGI3Yjg5NzBjZDVhNTc2NDA0ZDRlODIwMzA0MDYwNTU3OGEzOThmNTAgcmVsZWFzZTI2LW1haW50Cis3NTc5MyAyODg1MjUwYmE1ZjQ5ZjU1ZGZhZTdjOTA5ODk3NGE5ODBmMWFjYmJhIHJlbGVhc2UyNi1tYWludAorNzU3OTQgNDAyZGFkYzdiNGE4NjI0MjNlZWUxMWI0NTliMjYxZTczOTM1MTRiNyByZWxlYXNlMjYtbWFpbnQKKzc1Nzk1IDFkNjhiMWRjNDEwOTM2ZmI4NzIxZTg4ZTg0NjcxMzZkNzI1MzMyMDAgbGVnYWN5LXRydW5rCis3NTc5NiA4ZDllZjVhNzliYzdhNTkzMThkNTJhZmE0NGI1N2E5ZTUzOGQ2ZDk1IHJlbGVhc2UyNi1tYWludAorNzU3OTcgMzAzNTljMzNiNmY2NzdmMGM0YzU0ODY1NzMyNzM5ODc3NDM0M2M1ZSBweTNrCis3NTc5OCA5N2Q3Y2QzNjVkZDUzNDRmNTFhNTkwZDlmMjUyMjlmYjFkNjkyYTVkIHJlbGVhc2UyNi1tYWludAorNzU3OTkgNTk4YjliZWU3NGVjODgyYzJmYjIxMDI1ZGViNzIzY2UwMThlYjcwMSByZWxlYXNlMjYtbWFpbnQKKzc1ODAwIDcyODQ1MDdiYWRiMmEwOTc1ZjE4ZDc4YTFmODRmOGQ4MmNlZGM1MzkgcmVsZWFzZTI2LW1haW50Cis3NTgwMSA4MWI2M2FiNmQ0NWZiNGIzZjA3ZDYzMDU4ZDY2YjA2ZDNjMDdmYmM4IHJlbGVhc2UyNi1tYWludAorNzU4MDIgNWIyOTUzMzA4MzBhMDk2ODY0Zjk3ZGFjZjFkNTNkYjQ4NDg0NTIzZCByZWxlYXNlMjYtbWFpbnQKKzc1ODAzIGU5NDA4Y2IzZTI3NGUxNTAyNTMwZWMzNWI3NzA0NTZjMWFmNWZhYWQgcmVsZWFzZTI2LW1haW50Cis3NTgwNCBiZDc3NmUwMTk5M2FjYjkxYTAwODlkZmE4NGRkMDcwMWFhNmNkOTQ0IHJlbGVhc2UyNi1tYWludAorNzU4MDUgOWVkODk5MWE5MTQxYzY0MDkwZGMyNWM5NjE5Yjc4MDUwMzM5Yjc2MiByZWxlYXNlMjYtbWFpbnQKKzc1ODA2IDY3MGNhYTk3NzVmNjBhYjNkZTU2NjIyZmZmY2U5MDlmNWQyMjk5ZDIgcmVsZWFzZTI2LW1haW50Cis3NTgwNyA3NjRhZTJlYzRhNzA2MzFiMjM0MDYwYWViNTQzYzBjYzFlNWI4NmU5IHJlbGVhc2UzMS1tYWludAorNzU4MDggYTA1ZTFhNTczNjNkNzVhMTE3ZTJlMDY1OGM1MGI3YmE1YTA3MTY2ZiByZWxlYXNlMzEtbWFpbnQKKzc1ODA5IGJlNTM0OGIwNTRiNGY1YzBhMWQ4MjZjMDdlZWM1OTdlNzU4NmQzYTggcmVsZWFzZTI2LW1haW50Cis3NTgxMCAwMGU0NWQyMWYyNWJmODVhNDdiYmM0YjIyMTBmY2Q3ZGI2MWNjNjc5IHJlbGVhc2UyNi1tYWludAorNzU4MTEgMWMzMmI5NWZlNTc4ZTcwYmY1NDUyYjA3MWRjYjliYWE2YTI0ZTI3YyByZWxlYXNlMjYtbWFpbnQKKzc1ODEyIGI5N2U4Y2ViZThlZGE1ZDFiYzI0YzI4ZWRhYzFlYzRiMjQwMWU0MTUgcmVsZWFzZTMxLW1haW50Cis3NTgxMyBlNTBiYTJhODE5NzM2NzI5MTI3ZmY5N2M2MzgzNmU2YTQ1MGQxMGY4IHJlbGVhc2UyNi1tYWludAorNzU4MTQgZTRiY2ZlMmU2ZDU3NmMwZTdiMjEwZWY2ZDNlOTNlOTMyYjIyY2YzNiByZWxlYXNlMzEtbWFpbnQKKzc1ODE1IDA5N2MzNjBiNGJhNTlhMWM5YzE0MDg3YTFiNjhlYmM4ZWE4ZTYxOTYgcmVsZWFzZTI2LW1haW50Cis3NTgxNiA2MDRkYjlhODNkMTg3N2UzYzZhYWEwMTk2NGZhNWJhOTkyYzc1MzM4IHJlbGVhc2UzMS1tYWludAorNzU4MTcgZWYwODI1M2YyOTBiYWJmMTFiMTRjODBhODE4M2ViMWE5OGQzMzdiNSByZWxlYXNlMzEtbWFpbnQKKzc1ODE4IDNhOTkyMjkyY2NkODVmMTZmNGM2NzkwNjc5NzhhNmZkYzZlNDczMDkgbGVnYWN5LXRydW5rCis3NTgxOSAyNWJjM2Q2OWU4YWZlMzAxNTZkYzVkZGEzNDY5M2JiZTNjYmY3YWYxIHJlbGVhc2UyNi1tYWludAorNzU4MjAgMTlmNzZmYWJhOTY1NGRkZmRkM2M1NjI4NWE5YjdlN2FjMjBjZTM1YyBweTNrCis3NTgyMSA4NjUzMWRlNzU4OTRmMWZhMjI0ZTczNGJhMGU5NTRkZTZlMjljNzQxIHJlbGVhc2UzMS1tYWludAorNzU4MjIgNTk1MDVlN2U3MDczMmExZWIyOWNkMTc5YmJiNzJiMzUyMDI1NWI4NCByZWxlYXNlMjYtbWFpbnQKKzc1ODIzIGU0NzMxZmQyN2Q5MTY4MDUxNDgyMzJjZTU2ODljZDkxZDRiOTYyZTkgcmVsZWFzZTI2LW1haW50Cis3NTgyNCBlOTlhZGZjOTJkYzJlZjU3MzExNTIzZTQ0Yzg3YjZiMTI1MTliY2Q5IGxlZ2FjeS10cnVuaworNzU4MjUgMzU5NjJiNTQxNTk1N2VkZDMwNmY4NmZjOTA5ZmM4ZDc1YzY0MmEzNSByZWxlYXNlMzEtbWFpbnQKKzc1ODI2IDQyZmQ3ODU1MzQ3ZTg1OTFhNDFkYTNmNDkxZTBiMDBhMDM0ZGUzODYgbGVnYWN5LXRydW5rCis3NTgyNyA2MzJkZGIyNzUzMjFkZTI1YWY3YmZhYzBiNzM4YTlkZTA5OWQ5Y2IyIHJlbGVhc2UzMS1tYWludAorNzU4MjggZjhmYTM2ODBjNWQzNTU4MjI1MmRlYzE5MjY5NjhjODhiZjBmNmIwYiByZWxlYXNlMjYtbWFpbnQKKzc1ODI5IDYyOWQ0NWJhNDZkNzljZjMwZjQwNTYxYjQ4ZmNhNGE0N2JjNTUzMDEgcmVsZWFzZTI2LW1haW50Cis3NTgzMCBlMWJiYzYyMzJmMjlkMGEzODkxMjM5NTE1NTMxNjFkM2ZlNzg1ZmVkIHJlbGVhc2UzMS1tYWludAorNzU4MzEgZjhlZDg0NDBjZGI0NWZhMWIzZjRkM2ZiZTZiNTA2OTcwM2FiNmEzMiByZWxlYXNlMzEtbWFpbnQKKzc1ODMyIDEwNzUxNzk0NTFiNTYzYjc1OTExMWZkOGQyNDMzNmNiNWMzN2FlNWUgcmVsZWFzZTI2LW1haW50Cis3NTgzMyBhZTk0ZjY4NTUzMTAwYzA4NmM3NzJiNDRiMDMyYTRhZjA4NDc3NzlkIHJlbGVhc2UzMS1tYWludAorNzU4MzQgYjQwZmE4MjZlMWNmMGQ4YzNhN2U3ZTdiYmM1ZjM0NzBiZDFkZTg1OCBweTNrCis3NTgzNSA1ODBhYzE1MTE2NTIzYzFkZGFiMTI1ZDkyZTliN2ZmNDBkNzAzNDEzIHJlbGVhc2UzMS1tYWludAorNzU4MzYgOGE3NzRhZmU5OTAwOTBiOTlhOTE1MTQ1YmIzZjQ3OWNmODY0MDY0NCBweTNrCis3NTgzNyBjN2ZmMmZjZDJiNmJmMGU3ZTk2ZjY1Yjc3NDYxMjA1MTBlZmNlODkzIHJlbGVhc2UyNi1tYWludAorNzU4MzggMjY5ZjFkOWM4NmNkMjI2YTI4OGZkMjc5MWE0YmU2NTFhMGU4YmViNiBsZWdhY3ktdHJ1bmsKKzc1ODM5IDhmYjhmZDNiNjdjZjY0Mzg4NzE2ZDc2ZDNmMmI4YTcwZTM2MWJkNDMgcHkzaworNzU4NDAgOTM2YWFhMTI0OTJjNzA2YjMxZjBjYTExNDcwM2Q1YzZkY2I5NWZjOSByZWxlYXNlMjYtbWFpbnQKKzc1ODQyIGIzMWZjYmFiMDUyMGM0ODNjNTBhNTZkMTVlNTVlYjYzOWY1Y2I3MmIgbGVnYWN5LXRydW5rCis3NTg0MyA5NTVkOGZhMTJhZDU0YjVhY2I4NjAwYWYzMDIyMzhhNDg5ZTc4YTllIHB5M2sKKzc1ODQ0IDVjNTQxNGE4YzdjMjQ3MTY5YmJlNTY3NGMwMjViNjc2OGI2ZDllMjIgbGVnYWN5LXRydW5rCis3NTg0NSBlMWQ0MTI0ODkxMDdiNTMwYTY3NTdhNjRiNTcyYjU1OGIwMzkxNmM5IHB5M2sKKzc1ODQ2IDE0MGQ4OGQxYjE3OThmYjJmN2M4NWMyNGZhMzgwODY4Y2EzMTY2MWIgbGVnYWN5LXRydW5rCis3NTg0NyBlMjU5YjM0YTBiODgxNDQyNzkzNzc3NDA2MDFlNmFlYzk4N2M0NDEzIHB5M2sKKzc1ODQ4IDExZmMxNjBkNTNjNGRjYTUxZjViN2E1NTJjYzkxZWRmMWU5MjU4NjUgcmVsZWFzZTI2LW1haW50Cis3NTg0OSA0M2JmZjY5MDNhYTVhMzU0YmMwNzg1YjgyYzc1MmU2NTEyNzVjYzZhIGxlZ2FjeS10cnVuaworNzU4NTAgZDdjYzBlYjNmMjM0Zjg0MGM2ZjA5ZjkwNGNhODA5ZGRlNDgyNjRmNiBweTNrCis3NTg1MSA1ZjYxYmQzYWE0MjdiMjJkYzg5MDczNmU1MzcwMjkyMjYwMDlhZTRmIGxlZ2FjeS10cnVuaworNzU4NTIgZTRiZmJlOWI3NGM4OTI5MmU0ODllZDM0MmVlMDUyMWVlMmM1MTI1NyBweTNrCis3NTg1MyBkOWQ2OTA2MGY1ZTRiZGMzYzExZGVmYzBhNjZkZGU2Y2EwZGQ4M2VkIHJlbGVhc2UzMS1tYWludAorNzU4NTQgMWJkYTQ2MDJmOTM5YTJmM2QxMjE3Yzk2N2M3OWQ2YjEwNDQ2ZTJlNyByZWxlYXNlMjYtbWFpbnQKKzc1ODU1IDVjODg3Nzk0NzNiOTI5NjM4NGQ0OWQxZWMzMjA5Y2FmZDBlYTM1MTggbGVnYWN5LXRydW5rCis3NTg1NiBhZjc4ZmRhNTdhZjg2NGY5ZThlNWQxNmQwMjU5ODkzMDM3OWYzNzJlIHB5M2sKKzc1ODU3IDAyMWQzYTM4YmQzNmE0YTA3ODQyYTdhYTgwNGJkMDdjMjg3NzJiMTYgcmVsZWFzZTMxLW1haW50Cis3NTg1OCAwMjlkNjk2NTliNWY5OTU0OGZmNGU4YzcyZTA5YmEyNThiYzliNzdhIHJlbGVhc2UzMS1tYWludAorNzU4NTkgY2VmNWNiMjcwZmRmN2M5NjZjNjJhNTEyODUyZjczNGYwNzk3NmE0ZCByZWxlYXNlMzEtbWFpbnQKKzc1ODYwIDBkZjQ3YjFiMzBiOGEwNzk4MTk5NWNiYjNkNmNiNGQ3YzdlY2I2ZmMgbGVnYWN5LXRydW5rCis3NTg2MSA4MTQxZWM4MWFkMmQzODg4ZjIzOTliYmM2ZThjMDdiY2NjOGI1YTcwIHB5M2sKKzc1ODYyIDcwZWI2YTEzYWJjZDY4NTY2MDVjZmJjYjI2NGE2ZmFjYjM0MDVlNmMgcmVsZWFzZTMxLW1haW50Cis3NTg2MyBiMDg1ZmQwNjExZGUwZTgxZjFlN2RlMTFjYzc0NGY1MzRiNGRlYWJhIHJlbGVhc2UzMS1tYWludAorNzU4NjQgMmYxYzUyZDlmZWVjYWRhMjRiNzI1ZjMyYWI0M2YxODRiNTgzNmIzNyByZWxlYXNlMzEtbWFpbnQKKzc1ODY2IDk4OTllY2E5Yzg1N2Q5MWQ1MmViNzAzZDQ3ZDJiNWM0ODg2ZTViMmQgbGVnYWN5LXRydW5rCis3NTg2NyAxODUyMDRkNTQxZmU1NmUzMTY4ZTUxYzEyYWFjMDg2YWEwNjk1OTgzIGxlZ2FjeS10cnVuaworNzU4NjggNDExYjZhY2JjZjEyZTc2MjcyODk1M2EwNGQ1YWEzNTE3OTAxY2FjNiBsZWdhY3ktdHJ1bmsKKzc1ODY5IGI0YmFlYzFlNmEwYzMzOGFmZTFkYTRjOTAzMzRmYzIzODc0NjY3MGUgcHkzaworNzU4NzAgZjVjNzJhY2E2YjYwYTNiMDU2ZDIxMWEyMGNlMTg2OWYyOWI4YzU5ZiBweTNrCis3NTg3MSAzYWU0ZDM2Njc5MjBmYzM0YWFmMzk1NmExMTJlZGUzOTY5ZTY3OTRlIGxlZ2FjeS10cnVuaworNzU4NzIgZmIxYmZhOWNhYmYzM2JjNmU0ODRjZDY1M2MxYTA3ZWRmNDM5MWE4MCByZWxlYXNlMjYtbWFpbnQKKzc1ODczIDQ1YTI3Zjk2MWFhMWRmNGU5N2U3NmMzYmM2MDA0MWY0MGQyNDc4OTUgcHkzaworNzU4NzQgMjA0ZjMzZDQyNzYyYjI0MTM1OGIyMTZlNjlmM2RhNTRkZmRiYTgzMyBsZWdhY3ktdHJ1bmsKKzc1ODc1IDM5NTlmYTEwOTcxOGVjMzdmMGYxMDM0M2UzYTgxZjczZmQ4ZjMxZTQgcmVsZWFzZTMxLW1haW50Cis3NTg3NiBjOTI2OGZlYTgxMDQ5MTI3ZWM1MzYxNDNkOWYxNjc2MGFmNmIzYjM4IHB5M2sKKzc1ODc3IGJlYzI2NmY2ZDUwODFlMjU5NWNjYWVmOWEwYTVjZWFiOWI2MzZiYjUgcHkzaworNzU4NzggYjZjYzAxMzRhZjMxNDBlMTE2ZGIxNTA0MzZjM2IzYzIzMDNmNTM1NyByZWxlYXNlMzEtbWFpbnQKKzc1ODc5IDIxYTNmODNkOTlhYmY3ZDdhOWVhNjFlMTI3ZTBiZGRjZWRkMDJhNWEgbGVnYWN5LXRydW5rCis3NTg4MCAxMjhkYWY2Njk5Y2NhMjhkMzMzN2VmYjRkODVjNTZlMzY0OTY0ODVlIHJlbGVhc2UyNi1tYWludAorNzU4ODEgMzkyN2UwZTEzODI0MTI2ZTczMTI0M2VkZjc3ZGNjM2VjM2FmZjdiYSBweTNrCis3NTg4MiAxNThiMjExZTZmYThjMWM4OGI2ZjEyNjQyNjQ4MWM4MmYxZmU5NDA3IHJlbGVhc2UzMS1tYWludAorNzU4ODMgZjEwMTA0MDUxMzM5YjhhYjY3NzE1YzRmNTFiZmY4NjQxMDNmYTlhOCBsZWdhY3ktdHJ1bmsKKzc1ODg0IDQ0ZjY0NDcyZTkyMjFiN2VjMzk2YTM5OWJlNmY1MTU4Y2UwYTEyMDQgcmVsZWFzZTI2LW1haW50Cis3NTg4NSAxMjQzODlmNGViYWRjMzljNThjNDAxZTI4ZTU2MThjNGMwZTI2ODRkIHB5M2sKKzc1ODg2IDY5MGM1NjVjMTVhOWUxZmYyMmNmMWY4NzJhMjc5ZWQ5YTJlNjdlNDAgcmVsZWFzZTMxLW1haW50Cis3NTg4NyA2OTQ5Y2U3OGMwNjU1ODFlODNjYzBhNzI1NjlhOWQ2MmVhN2U1ZDRiIGxlZ2FjeS10cnVuaworNzU4ODggN2U2NmZmZGJjYmVmZmJmNmE0MmZlODk5YTVkZGZiZjY5NTg5YTZiMCByZWxlYXNlMjYtbWFpbnQKKzc1ODg5IGQwZDdlMTViNDk1MzVhMDA5MGNkZmRlNjY2YTMwNjBhZWVmZDJjNmQgcHkzaworNzU4OTAgNWU0ZDFiNGY2MmZhMWQwODc4NWZiYjhkMWI1ODA4NGRlNzlmZjk3OSBweTNrCis3NTg5MSBhZDYxMTI5YzQ0MjIyNTY5MmRjMjUwYjRkYmE2NmQ5ZGY2MzAzYWQxIHJlbGVhc2UzMS1tYWludAorNzU4OTIgZTFkY2E5NzJmYTM1ZDMxYTU0NmNiNzA4ZjY2N2E4ZGFmN2E2YzIzYyByZWxlYXNlMzEtbWFpbnQKKzc1ODkzIGZjNWE3NzE4NDMzYTg1NDRmMWVlNTMzMDY5MzUwODQ1YWQ3OWM1MmQgbGVnYWN5LXRydW5rCis3NTg5NCA2NGFkMzY1MDc5NDQ2NmU4NGNjYzUyMmIzZGM5MDE2ODJiZGUzZWVjIHJlbGVhc2UyNi1tYWludAorNzU4OTUgMTc3NzlhOTRlODI1MDg2YjY2MzFjZmViN2YzMDNkZmE5N2NmZjZhMyBweTNrCis3NTg5NiAwZjI5YWEyZDQ4NDRmNzE3NDc5ZmI5ODJiMDQxZTliNWI1MmMyMzQ2IHJlbGVhc2UzMS1tYWludAorNzU4OTcgNzE1NzRmZTQ5NTc2N2IxMTg3NDE3ZjcwNmM2NmM3ZjI3MTE0OWQyMiByZWxlYXNlMjYtbWFpbnQKKzc1ODk4IDAzZDc2YmRmOTM2MmFhNTQyZjM5ZDAwNTg2YmRhMTNkNzA3NzgxNjMgcmVsZWFzZTI2LW1haW50Cis3NTg5OSA5ZTI0ZmQ2YTU1ZjA4ZWE1NzI3MWIzYTA1YjY0NmViNWI4MzQ0NGNlIHJlbGVhc2UyNi1tYWludAorNzU5MDAgMDQ0YTY4YmMwZDJlZmI5NjIzZTI2YjM2MGI3Y2ZlZGMxMmU5ZTE4YyByZWxlYXNlMjYtbWFpbnQKKzc1OTAxIGMxODIyNDk4OGJiMWM4NmY4NDQ1ZjdjMDdiMjg2YzJmZGRmMTU2ZjUgbGVnYWN5LXRydW5rCis3NTkwMiBjZDlmNzJmYmE1M2IwMzE1MDM1NzQyNzkwNjgxZmFiZmE2MzJmZThkIHJlbGVhc2UyNi1tYWludAorNzU5MDMgZWY2YWI1ZDBhMDA2YTliYzFkY2QwMzI0ZmE3OTllNzM4YzhhMGRmYiBweTNrCis3NTkwNCA1MmIyN2MwODE2ODY4YTgwNTVmNjI1MmRmMzVkMTYzNTY1ZDc1OWQzIHJlbGVhc2UzMS1tYWludAorNzU5MDUgYWFmYTY2YzU3NDQ0ZTNiMjVjYWZlZDAxYmIwZjdhYTljOWI4M2I3ZSBsZWdhY3ktdHJ1bmsKKzc1OTA2IDFlOWVlYzczNDQ3ZjI4YTBkMGViNmUxYTMxNDA2NDNmZTRiMTJhOGEgcmVsZWFzZTI2LW1haW50Cis3NTkwNyA5MGM3MTQ2ZGRmNDIxOWY5NDMzNDNkMTEyMDEyMGM4MWYxYWUyMGU3IHB5M2sKKzc1OTA4IDc2ZDA0MjE0MzhhYzM2ZjRhNWMzOWFmZDJlNjhkM2NhOTIxNWFmN2QgcmVsZWFzZTMxLW1haW50Cis3NTkwOSBlN2NlMjUxYjNiZmI2ZDRkMTY1YjI2MGVhMTZkYzBmZTMyMDFhNGQ1IGxlZ2FjeS10cnVuaworNzU5MTAgZTc1MGI5MGJkOTgyYjMzNTJhYzg4N2M3NDg3MjBkOTZhYzczMWFiZCByZWxlYXNlMjYtbWFpbnQKKzc1OTExIDQ0ZGUzYTQwMjQwMTQ1OThlNGY0YTBiZDViYjkyNjRhMTcyZGE0MjMgcHkzaworNzU5MTIgYTFkZWM1N2JlYTVkYzI2MDUxN2Y2M2I3ZTliNWQ3N2YyYzYwYTdiOSByZWxlYXNlMzEtbWFpbnQKKzc1OTEzIDJhOTYxZDdmMjAyOGJiMzUxODNmZDY2YjQ1MjRhMmQ0NDViNWI3ZDEgbGVnYWN5LXRydW5rCis3NTkxNCA4NGI4YTJiOGU5YWU1MWUwMDk2MmVjZmNkMzI5NWMzNWEwMDUwNWFiIHB5M2sKKzc1OTE1IGI2YmUzMDAyZDNjYTJlYzdkNGYyMTY0NzZmYjdmNzUyZGY1YTEyYWMgcmVsZWFzZTI2LW1haW50Cis3NTkyMCAyMTQ3YzJlYmNlZDg1OTNkNjZiZThkZGNkNTdjYmNkYzlkYTk5NmJlIGxlZ2FjeS10cnVuaworNzU5MjEgMjBlMjFjMTU1YzA1NjJmNjRmYTczYWQzMjM3MzcwYjk3ZjBjMGQyMSByZWxlYXNlMjYtbWFpbnQKKzc1OTIyIDA2NjY4NWY2OTgzYWQ0MGVkYjJhYWE1MWUzMzZkMzQxNjRkYmI5NzAgcHkzaworNzU5MjMgYTc5NTUyOWIwOWM5NjZhMjdlZmE0MWYyNzYxODJhNDlkMzQxZTMzZiByZWxlYXNlMzEtbWFpbnQKKzc1OTI3IDllODJmMTdiMmM4ZGEyMzAzZjlkY2MxNGQzNWRmM2I2YzVlN2FkYmUgcmVsZWFzZTMxLW1haW50Cis3NTkyOCBkYjRkZmRjNzQwMjlhZDk4NDY1MmMxMzUyMDYxZjFkMDIwZTdkZWQ2IHB5M2sKKzc1OTI5IDg0MDJlNDc3ZWI0ODdkZDRkMDI5MTM5Yzk5MjJjNmYxZTBlMjFiNDAgbGVnYWN5LXRydW5rCis3NTkyOSBlMzU4YWYyNTY5Yjk4YzEzYTQ3ODg2NjBkY2JlN2FmNTdiMmE1MTg2IHJlbGVhc2UyNi1tYWludAorNzU5MjkgNDQ4OTA5YTk0MGMwNGRhMDNiMzlmNThkM2VhZjc0OTIzMzZmY2I4MyBweTNrCis3NTkzMCBmMzJkYzg0YTg3NmNjNTk5MWI2N2Y5YjhlNzhkZjZjYTk0MDE5MTFmIHJlbGVhc2UzMS1tYWludAorNzU5MzEgODQ0MTgwYjdlNmZmMGUwZmE4NzI1MmI0M2YyNDMzN2Y4OTQwZmRjMiBsZWdhY3ktdHJ1bmsKKzc1OTMyIGM3MTVmODI1NTVhNGM5MzQ5NmVhODJiOTRjMWI3ZmM4MWRiMTdlODggcHkzaworNzU5MzMgZTgwOTk4MjYyOWM0ZDgzZGY3MjA3YjY2Y2E2Njk5MGM3OGMyNzVjNSByZWxlYXNlMjYtbWFpbnQKKzc1OTM0IDAzMmQ5NzQ5MDQ3ZDdlMTNkZTYzNTJhYzYwOTQ0ZTZjYjVkZWVjODkgcmVsZWFzZTI2LW1haW50Cis3NTkzNSBiNTcxYzY2ODUyMjlmM2MwODE4MzQ5YWVmYjY0OGNhMDgwNjQyZGVkIGxlZ2FjeS10cnVuaworNzU5MzYgM2NmZWNiYzdhZTk1YTdmNjI5ODA5MmNkMjg3MGQyN2ZmMjQ5OTFjYyByZWxlYXNlMjYtbWFpbnQKKzc1OTM3IDhjZmY5NDkzMjNjOWU2NmJjMThkY2U5MjRlNDljNGJkYTc3MWY5OTMgcHkzaworNzU5MzggYjAwOWEzODc2OTliMzJkMWM0NGFjYTJjYjkyZGVmYWExZGU0Yzg0ZCByZWxlYXNlMzEtbWFpbnQKKzc1OTM5IDU1ZTUwOGUyNTM1YzlhMzM0ODI4ZjIwNDU0NmFmZTkzZjE3NTMwYjIgbGVnYWN5LXRydW5rCis3NTk0MCBmZmM3ZDllYTI0ZDkwMjJmZjZlNzZkYmFjYzcwYzIyNjM3ZDcyZWU0IHJlbGVhc2UyNi1tYWludAorNzU5NDEgYWFhMmIwN2MyYzQyNThiNDE0NzBkNTNmYzg2ODUzNDRlY2I5NmQxZSBweTNrCis3NTk0MiAwNWZkNDhkYzJhZGE5YmYwYmYxOTUxNjM5M2UxMjQxZjk2MGFiMDAyIHJlbGVhc2UzMS1tYWludAorNzU5NDMgMTVmMTg3MjQwN2JlMjY0NmExMDFmZGI0ZDRjMTRiOTc0NmY2MmM0MiBsZWdhY3ktdHJ1bmsKKzc1OTQ0IDYzZWIyODgzOTI2YjJkNWI4MDI0YjUyMDQ2MTJkYTNmMGRmYzU2ZWEgbGVnYWN5LXRydW5rCis3NTk0NSBkNWEzNGVmMmZjYTdjMzIxMTc0Y2MwYTM0Yjk0ZDY5MjhjNjAxYjJmIGxlZ2FjeS10cnVuaworNzU5NDYgNTNlMzgwMDVkNTA3YzRiYTdlYjZjY2ZmMzlmYmRmZDExNDhiYTJlMyByZWxlYXNlMjYtbWFpbnQKKzc1OTQ3IGViZGRjZWQyYzljNGQ0ODQ1ZDA5MDA2MTY1ZWJkZWI4NTk2ZDY2OTMgcHkzaworNzU5NDggMGVkNGJmNDMwZDRlNWVlMGE3YjhhYmIxYmM1MThlZmY4MWIwYjlkNyByZWxlYXNlMzEtbWFpbnQKKzc1OTUyIGM2ZDYyMzQwYWViZjBjMzE5MGY1OTYzMjNkNGQwMjMzZTJkZWZiYjUgbGVnYWN5LXRydW5rCis3NTk1MyBlNjY1ZDIxNzBlODUyYjE5ZDYwOWIyMmZlYTk0MzAyZTYzZmRhNjJhIGxlZ2FjeS10cnVuaworNzU5NTQgNWY1ZTNjN2RhOGNiNDVmZTc0YTFjYzEzN2Q0ZDE3OWY0NzZiNDM3ZiBsZWdhY3ktdHJ1bmsKKzc1OTU1IDdlMDIzNzFhYTUwNjAyZjA5ODE1NGNhNTk4MzVjMDY3OWI5ODY1OTUgbGVnYWN5LXRydW5rCis3NTk1NiA0MTFmMjUyYTI5NGE0ZmUyMTg2NjE2YzdiMjQ3ZjdjMzNjODAwM2I0IGxlZ2FjeS10cnVuaworNzU5NTcgOWRkYmQ2OTgxNWNhN2EwOTZjNzQxZjg2NWRjNzQ0NDlmZDcxYzI4MSBsZWdhY3ktdHJ1bmsKKzc1OTU4IDI5ZmU1ZTdiZDZlZTE5MDBhODUzMTAxYmZjMmEyZTEwZTUxZjIzM2QgbGVnYWN5LXRydW5rCis3NTk1OSA2Y2Y4NGU1YTZkZDdlNTU1ODhmNTNkN2M2NzI4YTRjNTE2ZTMyNDNkIHB5M2sKKzc1OTYwIGUxMWQyNDY3ZDEyNjc5N2I5ZjNkZWE3OGUyNDE4MGZiOTIwMTBhNTQgbGVnYWN5LXRydW5rCis3NTk2MSA3MTNlMjFhNTQ3MWVkNzYzNjQyYzg1NjBmYmRhMzk4ZDUwY2M0MGQ2IHB5M2sKKzc1OTYyIGFjYWZhNTE0MmJmOTE4ZjQ2MGY3MWE3N2I4NjlhZDAyZGVhMWJlYzAgbGVnYWN5LXRydW5rCis3NTk2MyBjMTQ2OTI1MjM0ZjAzYWMwOWM0ZjBlYjUxMzM1YmY2YTA3YjQwMTQ4IGxlZ2FjeS10cnVuaworNzU5NjQgYTE4M2M4MmI2Mjg5NDdjZmUzOTg3ZmRjNTk0NTllNmMwMzAwNDY4ZSBweTNrCis3NTk2NSBlODdhNjY5OGEzMDVhNjQ1MDEyNzY3MDlhNmNmOWU0MjRkMmE4YTA2IHB5M2sKKzc1OTY2IGZkMjE4YWIwZTIyZWZlNTNiODMxNGRjYmE5YThjM2EyYmY5ZGQ3YzcgcHkzaworNzU5NjcgMzM4NjFjYTFmYjJiMTE4MTYwMjNjZDNkNzNhOTlhM2U1MzdmNWE0MyBsZWdhY3ktdHJ1bmsKKzc1OTY4IDA1NjQ3MDQ2OGZlMjllMThlZjFlMmE0NzNmNGEyMjQ5ZTBiZTk1ZjMgcHkzaworNzU5NjkgZDU2YjEwMzQ5MGE1NWIwMDNiY2FkNjYyZjQ4N2Q3OTQwMTc4YmQ5OSBsZWdhY3ktdHJ1bmsKKzc1OTcwIGJmOTNlNGRmN2JmYjFlNjMyNDkyNTgzNjRmYTI4MGFlNzFhYmVlZGUgcHkzaworNzU5NzEgOGQzNmRlYjM1NmYxOWY0YjhjODAzZWY5MDNhOWU5NzFlOWU0MmQxZCBsZWdhY3ktdHJ1bmsKKzc1OTc0IDdjODY5OTNiMTNjOWZkNzRkNDIxYTc0Y2I4MzM0ODNmZjI1NjE4OGQgbGVnYWN5LXRydW5rCis3NTk3NSBiNGU5MzM5YjQ5OWQ1NTI1YWM1ZWQ1NDA5OWZmZjllMjQwN2FkZDg3IHJlbGVhc2UyNi1tYWludAorNzU5NzYgZmNmOGE0ODY3OTIwNjNkZTY1YjAyYTE0N2MzOWM1MDY1ZGRlYjNmMyBweTNrCis3NTk3NyA2Y2I1MzI0OGU1YmU0YjA2YjM1YmZkMWQzM2RlYTlmNTQyOTI0ZGFiIHB5M2sKKzc1OTc4IDZhNmYzMmIwZmFiZDBkOGVkMzNmY2MxNTM3ZjY1ZjRhMGM0NmMyNWMgcmVsZWFzZTMxLW1haW50Cis3NTk3OSBiYWIzZTNjZDc2ZjFkNTI0NTExNmUyN2NjMDc5MWU3NWYyZGM5MjFkIGxlZ2FjeS10cnVuaworNzU5ODAgMTdkYzBiNTNiNDhlZGIxYWUxYzA4OThlNTFkZGI0MWJhYTFhYWE2ZCByZWxlYXNlMjYtbWFpbnQKKzc1OTgxIDE4MmZlMGFmNjA0ZTM1YWY2YjFiNjIzM2Q3NzYzYmZhZDYwYWYxM2YgcHkzaworNzU5ODIgZjU5NDMxM2I5MzY0NWFiMjRmODEyZjA3Nzk3ZTk0ZGEzYjllYTkzMyBsZWdhY3ktdHJ1bmsKKzc1OTgzIGZiNDk4YTBkZTBiOTVhYjYxYWYzZGMxMjE5MGMxNGY3ZjljNjBhMzQgcmVsZWFzZTI2LW1haW50Cis3NTk4NCA1YTk5MDAzYzliODNkODQyZjFiOTk1OWYzMzI2OGJmYzZlYTgwYTY4IHB5M2sKKzc1OTg1IDI2NGE3MzVhOGFmNzc2Nzk3ZGNiZDFiMDdmYTcyNGNmZDU1OWM5OGEgcmVsZWFzZTMxLW1haW50Cis3NTk4NiBlOWI4Nzc1NmFkM2IzYzI5ZTg5YjJjOTI5M2QyOTZiNGMwNmQ0ZjMwIGxlZ2FjeS10cnVuaworNzU5ODcgN2VjZDNlM2M5NTY0MjcxMGQ5MDFmMjU4NmU3MDhkMzExZWE1OTFhZiByZWxlYXNlMjYtbWFpbnQKKzc1OTg4IDhkNjc3MjVjYmI0ZTM1ZDhkODUwYTM0YTQ1NThiOTVjODU5NjQ1YzEgcHkzaworNzU5ODkgNzA0OWIyYzg2ZjA2MTBkMTE0OWFlMzM5YjIxNjVjOWI3ZDY1ZWY5NiByZWxlYXNlMzEtbWFpbnQKKzc1OTkxIDRjYmMzZmU5MzY3MWQ5MTViMDY5OWM1ZGU3MzFiNzRmNzIxMDkxNzkgbGVnYWN5LXRydW5rCis3NTk5MiA4OWU5ZDA1ODQ4OTAzZTU2YjNjMTUzOTE5NjBjNTg5MDBlYzJlZjI1IHB5M2sKKzc1OTkzIGFiMzg2OTBmZTAxY2Y5MzViYWZiZDIxMzE4ZDRiNGY0YWYyMmJmOGUgcmVsZWFzZTI2LW1haW50Cis3NTk5NSA3MWIzYWE4YTczMjBmZTQwY2MyMGQ4Yjc0MDcwYTNlYWNlZDJiYjg0IGxlZ2FjeS10cnVuaworNzU5OTYgMzcyNDZiNGMzY2NlMzllZTU4MjFkYWY3MDFhZTRmZjJiNjVkYzA5MCByZWxlYXNlMjYtbWFpbnQKKzc1OTk3IDE4MmNkMDRlMjlkYjExODdkOTY2Nzk5MmE1OGQ3NzgxMDZjNTNlZGIgcHkzaworNzU5OTggNDcxNzgwNGJiNTdkYzc1MGJkNTcwY2UzNjFjNTVmMjlkZDA5N2Q4ZSByZWxlYXNlMzEtbWFpbnQKKzc1OTk5IDlmM2Y4M2RmNjk3NWJlNmYwY2NiMDlhNzU0Y2I5MDgwMmRjYTlhYzggbGVnYWN5LXRydW5rCis3NjAwMCA4NDZmMjZhZDU4MDAwMjNiNmRlYTc2NmJjN2JjYWVmYzhiNmJlMzRmIGxlZ2FjeS10cnVuaworNzYwMDEgMjkxMzg2NGRkYmU5NTg5ZWEyOTZjZDNhMGQ5YTI0M2UzMTg3ZTE3YSBsZWdhY3ktdHJ1bmsKKzc2MDAyIDQyYmIzZTM2MTNmNmM5MGExYjU3NjVjYWVlYjBjMWQ5ZjYyYmVjYmIgcHkzaworNzYwMDMgZjgzYjQ4OTYyNzM5OTNhYjdmMTE0YWYwOGZjZTdlZWQ1MDljZTFkYSBsZWdhY3ktdHJ1bmsKKzc2MDA0IDAyZjVjNjAwODMyN2FmZTU1NTY1NjgzMDFhOWI1OGU3ZjlkODU4YmQgcmVsZWFzZTI2LW1haW50Cis3NjAwNyAyMTFlN2I1Yjk5OWMxYTNkOTFkNjM5YTA1N2I1YmMzOTg3NjdlYjZlIGxlZ2FjeS10cnVuaworNzYwMDggNzAwMDJmMjdkMjgxZWY2YmVkZTgxZDZiMDQ1ZjY3ZGU4ZjhjZTQ2MiBweTNrCis3NjAxMCA0MDI2OTZhYzRmOTgyY2ZiMjdlYmI4ZmZkNDVmNTAyOTNhYTY3ZTYwIHB5M2sKKzc2MDExIGIwZTRlZmI4M2Q2MGM3N2YyOTk4NDAxOGI4NjNhN2ZhZTIyYzc4OWUgcmVsZWFzZTMxLW1haW50Cis3NjAxMiBmZjhlMzU5ZTI4MDg0MzI1OGQzYjJlYWNhYWQyOTQ2YmVkNGM3NzgzIGxlZ2FjeS10cnVuaworNzYwMTMgNmI0YzczMjBiYTNhMTdmMjQyMmJkZGM0MzY2MjQwOWVlMzkwZjY1MCBweTNrCis3NjAxNCBiNjkwMTc3NjIyMDhhYWE2ZjJlODkzY2NkODk1MDE4MTY1ZTk1MTA5IHJlbGVhc2UyNi1tYWludAorNzYwMTUgNTkyNTkwMGVkZjE2ZjBjOTRiNWJjMTg5YWQxYWFjOGMzZTcwOGM4MSByZWxlYXNlMjYtbWFpbnQKKzc2MDE2IDc1N2I5N2M2MTY5MWUyOTIzMDk2NWY1N2I5Y2EyYzM4YTlmZjQ5OTkgbGVnYWN5LXRydW5rCis3NjAxNyA1Yjk1ZTRlYWM3YThiOThhOWE2OGIxM2FmZTk2ZWNjZTY5ZDk4YzUwIHB5M2sKKzc2MDE4IGVkMTY2ZmY3ZDk1MjM4MWM0NWRmMjFkMGMzNTE5MWMzMzBiMzg1ZWIgcmVsZWFzZTI2LW1haW50Cis3NjAxOSAxMGZlMjBmZDZmYjNkOGM4YWRhN2ZmZjYyZjIwNjY5YjgwZGYyM2MyIHJlbGVhc2UzMS1tYWludAorNzYwMjAgNGRiODQwNDVhN2YwMDcxYTBhODJhMGYxZjQ4MDgzOTQ3MzRiNWNkZiBweTNrCis3NjAyMSBkYTZhZDk4ZDVkYWVmMzA4YTNlNDBhZWNiNWQ5NTRhZTE5ZTE4NzI1IHJlbGVhc2UyNi1tYWludAorNzYwMjIgYzc4YTAwYTFkNmRiMTgzMGExODU3NGNmMTg3YjFmOGI4MjhiNTE1YyByZWxlYXNlMjYtbWFpbnQKKzc2MDIzIDkzYzdmNjUwOTM3ZjdlOTU3OGE2MTRjN2FhY2Y3Y2E1NGI1OGE1ZmYgcmVsZWFzZTI2LW1haW50Cis3NjAyNCA5MDEyNTliYzBiNjJlYTAxOWZmYTZhNTA5MGI2NDZkMDdiY2RiMzNlIHJlbGVhc2UzMS1tYWludAorNzYwMjUgYjdlNzYyNzdmNTQ1MjY3YWY4MGRiMGQ5ZjU3ZDlhYjNhZTNiYTIxNyBsZWdhY3ktdHJ1bmsKKzc2MDI2IDFhYTZiNjhlODUyMzA0MTdjM2E3OWMyZjAzYTQ0Y2RmMTUzOTA0OWQgcHkzaworNzYwMjcgNjU4ZWI1OGQyZTY4Yjc1NDA4MzU0MzJmNjYzNDY2ODlkOTFlNTBhZCByZWxlYXNlMzEtbWFpbnQKKzc2MDI4IGM3ODVhZmE2Zjk1YzU2NDlkMGY2NTNhNWQ4ZTQ3OGJjZDU4MmQ5ZjkgbGVnYWN5LXRydW5rCis3NjAyOSAzMDM5YTRhZDdlMzlhMTFhY2I3NmRmOGNhMTVmZmEwODM0ODlmZDZkIGxlZ2FjeS10cnVuaworNzYwMzAgZGRjMTQxZDllZjFiMWJmMzFiODUyMWViY2MyZmU0M2Q5MGYwN2I3MyBweTNrCis3NjAzMSAzODcxOWI4ZTBjOWY3MGUyZjI5MTJlZmU0Y2Y3NDIyYTg3ZWYyMGQ2IHB5M2sKKzc2MDMyIDM4ZWI2YThhZGMyNDJiMDI0NGIwYTIxZmZiYTk0YTRmZjI4NzczNDQgcHkzaworNzYwMzMgOGNhNGQ3NzY4MGM2ZDI0MjE0Njk5NTdmZmMyMTlkNGMwMWIxNTY0YyBsZWdhY3ktdHJ1bmsKKzc2MDM0IDUxYjk5NzNmNzYxZWM0MDBjNzQ2ZGVhMzNmNmY1YjkyZTUzNzhkMzcgbGVnYWN5LXRydW5rCis3NjAzNSA1NzU0MmI1MDJkMzIyM2E2YjUxZTI4MzkzMWEzODljYmY3MzFhNjllIHJlbGVhc2UyNi1tYWludAorNzYwMzYgM2JmNzYxZGY4MDJhYWRkYWI5MGIyZWIwMTcwY2QzMDhlZTIyYjFiZiBweTNrCis3NjAzNyBhMDFlNmNlZjEyNTZjOTEzOWM5NjMxNzZmMDEyYTA4ZTIzODczZTgzIGxlZ2FjeS10cnVuaworNzYwMzggMzQ0YzQ3ZGYzNjNmOGI5YzI4YTA2MDI5MjU1OTYzMzJhMzZiZDY0ZCByZWxlYXNlMjYtbWFpbnQKKzc2MDM5IDQ1ODBmZTA3MTllNzAyZDIxNjEzZTQxNmY0ZDZhNWI1MDUxN2I0ZjEgcmVsZWFzZTMxLW1haW50Cis3NjA0MCBmZDA1NDI3MTZhODA1NTFmYTJkODkwNWYzNDIzOWIyOWJmY2YwZTk4IHB5M2sKKzc2MDQxIGI1OTFmYzg3MjFmMmZkYzUwNTg2NjFjOTlmMzY2ZTUzOTQ1MzI1OTMgcmVsZWFzZTMxLW1haW50Cis3NjA0MiA2ZGM0ZmFhNDVjYmQwODkwMTBkZjVhOWNjMzBjOTE2YjA3ZjgzZDY1IGxlZ2FjeS10cnVuaworNzYwNDMgMjhmZWY3MjY0NGI3YzY0NDRjZTViMjlkYjhhMGIzNWMwZWZjZGI2NiBweTNrCis3NjA0NCA0YTg0NTllMzI5MTkyMzJiZWVjZjUzMDNiZjJjMzYyNWFjN2Q3MjQwIHJlbGVhc2UyNi1tYWludAorNzYwNDUgNmU0ODlkM2Q3M2I4ODA0OTE1MzdhZWFmNGFlZmFlZmE2MmU4MTYwMyByZWxlYXNlMzEtbWFpbnQKKzc2MDQ2IDFlMWJlMWEzOWE3OTJlZjc2MGQ2OTI0YmMwMWU2M2M3Y2NiMDljZjEgcmVsZWFzZTI2LW1haW50Cis3NjA0NyBmMDEzMDJlNmFjZDU0NDYxMzU1NjliNzUzNDI5NWNkMzQ4NDE3ZDk4IGxlZ2FjeS10cnVuaworNzYwNDggNWQ2ZWQwODgzYmY1NzljM2Y4NTNmMTI0YTY0MTQ4YmYzM2U2Mzg3MyBweTNrCis3NjA0OSBhNWU0NzNlOTViY2VhZDVjNWRiM2Q3NmZmZGUxYzUyYTI0NTQ0YmJhIHJlbGVhc2UyNi1tYWludAorNzYwNTAgNDUzZjU0NzhhNjkxZGQxZGY5ZDViNGYwZjBlYWUxODlkZTZlMzExMyBsZWdhY3ktdHJ1bmsKKzc2MDUxIGI5MTkzNzBmMTgyMGZkYmExNTU4YjlhNzM5ZWNjY2I3NmMyZWI2ZWEgbGVnYWN5LXRydW5rCis3NjA1MiA2OThkZTUwMTc5OWQ5OTM1YWMyZDY4NmI2MzA4MDk3N2M4NmQwYzBiIGxlZ2FjeS10cnVuaworNzYwNTMgZDJkOGNhYmI5ZTNhOTIzYWIxMDM3YjBkZThjY2Y2YjllZDQ3YzYzMCBsZWdhY3ktdHJ1bmsKKzc2MDU0IDk2YTg1M2ZhZTgzYjIzNzRjODBiOWUwNDQyYWUzMTU5MjNmNzA5ZGUgbGVnYWN5LXRydW5rCis3NjA1NSAxNDAyYzc1Mjc1NjU1ZmRhM2ExOGY5NjI2NjM0ZTY0MmVkYzVlYjBjIHB5M2sKKzc2MDU2IDhhMGQzYzY5YWUyMWFkYmRhNGMwODZiYzg1NDU2NjJiOTU0YzU1ODkgcmVsZWFzZTMxLW1haW50Cis3NjA1NyA4OGEzNjQ2ZWYzMmMyYTc4MmJiNDE5YmMxZmM0NmE4Zjg2ODQ3ODVjIGxlZ2FjeS10cnVuaworNzYwNTggZTYwOGY1OGQ1ZDE4YjYxZDQyZDQwNTU0MjZiNmUzMTYzYjI3YjY5NSBsZWdhY3ktdHJ1bmsKKzc2MDYyIDk0ZTFiMTRlYzgwNGI4YWM5MjkwYjIwNTI4NjU4Mzc0ZGZmY2M1MzAgbGVnYWN5LXRydW5rCis3NjA2MyA5NTljNjhkMWQyOGEwYTBjNzJlZmEwZWRiZDc3NWJiZWEwMmY3NmUyIHB5M2sKKzc2MDY0IDNjZmQ2OTU2NGU4ZjA3NmZkNmJkODU5NGE3YjFlZDA4MDJiMmI5NDUgbGVnYWN5LXRydW5rCis3NjA2NiBmMjk2MGYxMTZlNzdhMmViYWQ1MTAzN2UyMmEwOWI3YTdhMzBjMmEwIGxlZ2FjeS10cnVuaworNzYwNjcgYmVlODk5NGIxM2RlZGI4MTcwMzk5YmNiMjRhMDY4NjAwNTQ5Yjg2OCBsZWdhY3ktdHJ1bmsKKzc2MDY4IGEzZjIxY2VlNjRkMWYxMjhhNjM1YmQxYzJjNGQ2MjdiMzBlNTAxZTggcHkzaworNzYwNjkgYTgwODZiMzE0Y2QwN2U2YzNlYjkyMDliMmQzNWYxZjNjNGU0NzgzZiByZWxlYXNlMzEtbWFpbnQKKzc2MDcxIDIwMWE0MTllOWUwNjYwYmU0NDhiZjEyNjdjOWJjOGQxZTE3YTc1MTAgbGVnYWN5LXRydW5rCis3NjA3MiA2NWIxMTIxYTI0NzNmZDIxZTYyZTliNGJjOWIxM2MxNjI2NGNjYTBhIHB5M2sKKzc2MDczIDZjMTNiZjM1ZDE2NjExNzRhYmVlZThlZjBjYWIwMTViMTg2OTIwYzkgcmVsZWFzZTI2LW1haW50Cis3NjA3NCAzMjAxZmFiMzUyMjBmNzg1Mjk5ZGQ4MjhlNTYxNDg4YjQ2NzI5Y2M3IHJlbGVhc2UyNi1tYWludAorNzYwNzUgYzkwMDhhM2U3ZjdmZDIzNDhiOTVhNDhhNDJhNjVjOTViMGJmNzUzMSBsZWdhY3ktdHJ1bmsKKzc2MDc2IDY4NWEyNGE2Zjk4Njg0N2YyNDIwY2ExNTY2MjI0MGYyNzIzMzRiMzEgcHkzaworNzYwNzcgMzJjN2Q5ODEwM2JhZWMxYTM3MWNmY2UyMTk4NmY3NDdiNDAzYWJkOCByZWxlYXNlMjYtbWFpbnQKKzc2MDc4IGI0MTFjZTU4NGI3ZmYwNDFhOWEzZGZhNmUzNTkxODE1MzBlMTZmYzEgcmVsZWFzZTMxLW1haW50Cis3NjA4MCA2MmRjZDlmZGQ3YjM0ZWU2NzJhNzIxODY0YmM2MDZlMjQ2OTM5MDNjIHJlbGVhc2UyNi1tYWludAorNzYwODEgYmIzN2M3YzI2ZmE0ODY1MTUyNzBmYzA0YWQ1ZGMwNWNmMzMwM2U2YSByZWxlYXNlMjYtbWFpbnQKKzc2MDgyIDE5YTU3M2M0NGFlMTFjMmJjMmRhNTEzYjMwNGMyN2I4MWQ5YzNjYjcgbGVnYWN5LXRydW5rCis3NjA4MyA5MmNjN2VkODNlOWMwMWExODNlODRiZjM1M2FhNjViMjc2MGI5YzcyIHJlbGVhc2UyNi1tYWludAorNzYwODQgN2ZkOTBlNWEwYWQ1ZjliMzMyMDQ1ZDMwZGI1MWJmZWNhNmViNDFmOSBweTNrCis3NjA4NSBmZTgwOGQ2NjQ4M2Q3YjVlOWRkY2IwNjZlOGMxZWFkODNmNDkwODVlIHJlbGVhc2UzMS1tYWludAorNzYwODYgOGM4MDdiM2E5MDUyMzIyNzA1NzJjNWIxZjliZTMzOWVkZmE5ZDEyZCBsZWdhY3ktdHJ1bmsKKzc2MDg3IDU5ZTlhZGNhNzcxYjM0YWFmNDQ3OTNhNDA3YjllYmNjYmNlYTIxMWMgcmVsZWFzZTI2LW1haW50Cis3NjA4OCAxZGY5MGUyMmJiNzA2MWU0ZTc3MjZhZGVmOWFlOGMxM2M2OGU1NWYwIHB5M2sKKzc2MDg5IDlhZjJlOTQ0MzlkMWI0NDZmMTA2NTc4YzdhNWZmMzIyMTI3MWY3ZDggcmVsZWFzZTMxLW1haW50Cis3NjA5MCAxZThhMzNmNjE4ZmIwNjNmNzRjYTZiNmM3YTk0Y2NhNzY0YjExNzJiIHB5M2sKKzc2MDkxIGZmYWY2NjVkMmQzZTVkNTZhZWRlMGJjOTkzMDdlMGRmYzE3OTA2MjUgcmVsZWFzZTMxLW1haW50Cis3NjA5MyA0MmZhM2UwOWI2ZTc5ZDMxZjhmZTFmMzk0N2U5MmI3ZDEzM2I2ZGYxIHJlbGVhc2UyNi1tYWludAorNzYwOTQgMzM2NGFjYmFhMTUzY2VjZmUzY2JiMzFmNjFjZmU0ZDcxNDlhZTcwNiBweTNrCis3NjA5NSBlZGE5NzljOThhN2ZiZTAzZDY3ZDBjNmRkYjcyZTMwMjQzNDJmZWM0IGxlZ2FjeS10cnVuaworNzYwOTYgYzk0ZTNiZjgzOTJiYTAzNTNiYTUxZTk5YmVmYWY2MTk2MjYwNDQ0OCByZWxlYXNlMjYtbWFpbnQKKzc2MDk3IDFmMTc1ODg0OGM2Y2IzODBkYzQxYzQyMGEzN2RmMzI2MDg4ZmVhNGYgcHkzaworNzYxMDAgZjk1YjVmYWExM2NmNWY0ZjZmOTk0ZjdhN2Q0YjU1OTk1OGU4ZDhjNyByZWxlYXNlMjYtbWFpbnQKKzc2MTAxIDUxODY5ODE0YmE5YThmOWRkYjc0M2Q3MGU2OTE0MmViMmZiMjcwZTYgbGVnYWN5LXRydW5rCis3NjEwMiBlYTczOGZmMTgwMTY2M2JhMzJlMzM0NTBiOTI0MTAyMmFhYjQxYjdkIHJlbGVhc2UyNi1tYWludAorNzYxMDMgNjA1ZDJmNGM3NTM5NDlkMmI5YTM4ZmQ1NzQwZTY5ZDMzZjlhMDg4MiBweTNrCis3NjEwNCBjOGJmYzRkYWZmM2Q4ZjQ4ZjM0YzYxNDhjYWU2OWFjMDU5M2NhOTIxIHJlbGVhc2UzMS1tYWludAorNzYxMDUgZjVkNjg2MDRjNmI5NTJhOGUxNmMwYjlhYTIyOWRjOTBiZDc5MjUyNyBsZWdhY3ktdHJ1bmsKKzc2MTA2IGQxNjE0NDI2OWQ1NThkNjcxZjI1YWNlNzE0YjkwNDhmZTk0NGEyMmMgdGFyZWtfc3lzY29uZmlnCis3NjEwNyAyOThmNmIzNDEyNWQzNThlM2Q4NTZlMmExNTdmYmNjZGNiMDk2NTYxIHRhcmVrX3N5c2NvbmZpZworNzYxMDggMDY4Zjk0MzBjYzI0MGIwOTVlMjUyOTNlMjJlMjE5Y2E3MDc3OWEyYyBsZWdhY3ktdHJ1bmsKKzc2MTExIGY4OWE5M2E3NzhhODFkMDY4ZGM4OTI2MWQ0ZTdmYTIyYzliZDU4MTEgcHkzaworNzYxMTMgZDNhODEwNTE2NjNiNmI1NmI4Y2RjNzRlYzQyMjAyMGIwMmQ5YjRkZCBweTNrCis3NjExNCA0NDQ5ODljZTVmNzcxNDhjYmVhNDI4YjM0OThlZjFkYTZjNjA4ZmNiIHB5M2sKKzc2MTE1IDkzYzc1Mjg3NTAzM2NjNWRkZWIzMWZhNTIxNjlhODA0ZjVlZGY0ZDAgcmVsZWFzZTMxLW1haW50Cis3NjExNiA2M2M5ZTYzZTBkZTNmMDJhYjZmMWQwMzI2YjRkODlkMDYyNmNkMDlkIGxlZ2FjeS10cnVuaworNzYxMTcgZmQ3ODI4MDUxODY1NTFhOThlMTA1MTI4YzUxNWVhZmRmMGQ2ZjUyOCBsZWdhY3ktdHJ1bmsKKzc2MTE4IDJlYmFkM2RmY2RlMzc2MjdlZTEyOTU1MmRiY2I1YTQzZjI4YzBjZjggcmVsZWFzZTI2LW1haW50Cis3NjExOSAwY2I5NDM5MDBlNTMxZTRmYTJlMjI0ZjQwMWQ1NGMwYmU0YmUwYWJiIHB5M2sKKzc2MTIwIDRlYTBhODBlZDc2YTYzOTJjMWM1NWZlMmY5MDM0ZjYyYTUxYjI5YzYgcmVsZWFzZTMxLW1haW50Cis3NjEyMSBhMWM5NGYwNzYxZDQxM2JhZDZmMTA4ZTA2NWQ3YmM4MjlmMjI5NDIyIHJlbGVhc2UyNi1tYWludAorNzYxMjQgMzVkZGZiNDQ3MTY4ZDA2ZjQ0NjJhMzlkYWE5OTVjOTdkYzg0MGRhZCBweTNrCis3NjEyNiBkM2E3NjM2MzkyYWY1NTRkMWVlZjYyNWU0NmJmZmM2MWU5ZTMzNzkxIGxlZ2FjeS10cnVuaworNzYxMjkgZTNmZjM5NzZiYmFjZWY3NTIzYTU4MzNiMTI5NDgxYjVjOTY3YmRmMiBsZWdhY3ktdHJ1bmsKKzc2MTMyIDg1NTJhMjY3NzJlNmZjMWJkODFiNjYwNmZjNjI4NjQyNDAwMTk0NmQgbGVnYWN5LXRydW5rCis3NjEzMyA2ZGIyMjBhZjhjYTNmZWM5MDQ2NzljZTc1ZTljMWYyMDRiNzFiOGVjIHB5M2sKKzc2MTM2IGQzNDZmZmI4Y2ZkNzQzMzE5Y2RhODVmY2NlMzU2N2IwNzdiOTUxY2IgcmVsZWFzZTMxLW1haW50Cis3NjEzNyBjZDM2MGFjNThjZDJlYTA2YzZhOTBiMjMzYTYxNzdjMmY2ZTE5OTNjIGxlZ2FjeS10cnVuaworNzYxMzggZTBkZGVkYTBkOWMzM2Y4NDI1MTAyNGEwNTY5N2Q4MmI4ZWFmMDgxMyBweTNrCis3NjEzOSA5MzA5ZGFhZjMyZDE4MDcwMjZlYzM2NmU1YzBkZDMyNzdiZTM0Njk4IGxlZ2FjeS10cnVuaworNzYxNDAgODE4YjBiMjg3YWE0MjQ0YjdjYTdjN2Y1YjY4M2JiOTg3MzI2YjBkOCBsZWdhY3ktdHJ1bmsKKzc2MTQxIDQyZDRjZjgyN2I5ZTg5YzgzZmNhZTNhYjRlNzYxYmUyYzAzZWRhNDUgbGVnYWN5LXRydW5rCis3NjE0MiA5MmJkYzNjN2Q1YTQzZWYzZDlhZjhjMTI4YjJjNWY2OTY3ODNmZmUyIHB5M2sKKzc2MTQzIDFhMzA4NjBiY2EwMzdmODQxMDk0YjIyOWMzMjVmYzllMzJjYjhkYTIgbGVnYWN5LXRydW5rCis3NjE0NiAyN2UxMjBmOTIwOGIzYWE4YzBjODkxYTVkYTNmMWY5ZGZhMjg0NTg5IHB5M2sKKzc2MTQ3IGUyNTI4OGJiNmZhZjE3YWU4MjQwZTViOTRkODViYTFkNjgyNGUwOTMgcmVsZWFzZTMxLW1haW50Cis3NjE0OCA2ZjVmNDgxZDYxOWMyY2RiYmViYzM1ZTliOWQ4YWEzYTgxZmQzNDgxIGxlZ2FjeS10cnVuaworNzYxNDkgMDRjZjk1Y2Y5NDk2ZmZmNTBiMWYyZWYzNjY4Y2E3OTIyZmE4MjU1ZCBweTNrCis3NjE1MCAzYTBlNjkwMDEyMTU0M2E0YmY1MTY0OGQ3YmQzYmQxNWZjOTFkN2ZjIHJlbGVhc2UyNi1tYWludAorNzYxNTEgMzgxYTYyZjFlNjM1ZjJjMDIxNDRkZDkxZDRmOTNhNDk5MDVkNDI5MiByZWxlYXNlMzEtbWFpbnQKKzc2MTU0IDYzNzcwYTVhMGM3OWRmMmI0ZDIzZjc0ZDkwN2JkZWQ4NTU2NzkyODYgbGVnYWN5LXRydW5rCis3NjE1NSAyZTRlNDc3MjE5YzU3M2Y1Y2FiMGYzNDlkOWFlN2QzM2FlZTRlNmU0IHB5M2sKKzc2MTU2IGRjZDY4ODdiOGEyNzc0N2RhOGI0MjczNmUzY2ExYWQ1ZjRhNzQxZTQgcHkzaworNzYxNTcgOTc5ZWIxYmJmNmU2ZTQ2ZGEyNzA5NTZlOTQzMWUyODc5ODE2ZGUzZiByZWxlYXNlMzEtbWFpbnQKKzc2MTU4IGQ2MWIyNGM4NzY3NDQ3NTY5NTRmZmQwMDllMTliMmM0MmMzMWRiZGUgcHkzaworNzYxNTkgNDg5ODllY2ZmODA0N2JiZTQ0MGU3YTE0NzMxMWI0MzkxNzE5YmVlOCByZWxlYXNlMzEtbWFpbnQKKzc2MTYyIDY5ZDYxYWY1YTk1ODkzNjQ2ZWQyNTY2MmY3NGFmMGExMWYwYjMwZTUgbGVnYWN5LXRydW5rCis3NjE2MyBkOTcwNTllOWU4NTJlYWMyYjg1NjNhY2RkM2JmYTE4NGVlOGNjYjk3IGxlZ2FjeS10cnVuaworNzYxNjQgZjE5MDMxNWYxODVlYTdhYmU0ZmMzYzE1ZWIyNGUxN2UwNjA0ZWI3NiByZWxlYXNlMjYtbWFpbnQKKzc2MTY1IGVkMTFiMzE1ZDM2YTM4ODdmMTY0MDA1MDcyMzdkYTNlMjBjMTYzZTggcHkzaworNzYxNjYgMTQ0N2Q3NWRlZjhiMjU3ODEwZjIwOGE2MDg1MjVhNDUyZWFkMjY3MyByZWxlYXNlMzEtbWFpbnQKKzc2MTY4IGM3NmQ1ZmJlYjY5MTkzMzljZDJiZDU5YTIyM2UyOTdkZGUxZjBkNzggbGVnYWN5LXRydW5rCis3NjE2OSAyNjdhNDE4ZWJiYzliNjRhMGIzNWY4N2JhZWM5OGU3MTVhOTc0MmQ1IHJlbGVhc2UyNi1tYWludAorNzYxNzAgYTdhYzRkYmRlNWRiNjIwYmEyMDBmZGM4Y2NkY2RiNzVmZDkyNDk5MiBweTNrCis3NjE3MSA2NjdkOTc3OWNhZDZhZmY2NjA0NzlhM2YxMjU3MDA4ZDI1YTIyZjBhIHJlbGVhc2UzMS1tYWludAorNzYxNzIgZmJmNDFiMTEyNGQ4ZWNhZjFlN2Q4ZDdlZDA1Y2I0NDNjZWZkMjhkYiBsZWdhY3ktdHJ1bmsKKzc2MTczIGVkOGIyOTY5MTE5ZTI2YWU2ODI2OTY0NmRiYjQxYzkzZmI2NGE5Y2QgcHkzaworNzYxNzQgMGViNTZhOGU2MjYyZjNiOWQyMGFlMzk1MDM1MzUyNDU3ZDIyYzdhNCByZWxlYXNlMjYtbWFpbnQKKzc2MTc1IGZlMzM1NjJkMWY5NWEwZmRjYjk4MDEwMmI5ODQ5ODU4ZDI0Y2I1NDcgcmVsZWFzZTMxLW1haW50Cis3NjE3NiAyZDM5NGQyZDJkMzdkN2RhYTFjNmI4MTM2MzM5YmNkMDQ0MTNiNzc1IGxlZ2FjeS10cnVuaworNzYxNzcgMDUwYTY1YTNkZjUzOGIyODc5YTNlOGY4YzBkMWUyZGRhMDE4NmE1OCBweTNrCis3NjE3OCBiZmNhYjFiYTBmNTFjYjNjZTUxODk4NWIzMTUxNTQ4YzBkMzNlOTdkIHJlbGVhc2UzMS1tYWludAorNzYxNzkgYmNhMDI3YjZkZjUzM2Q2ZGMzYWIzMTNhNmFjZWY0ZjA5MGI1MTliZCByZWxlYXNlMjYtbWFpbnQKKzc2MTgyIGZiZmNjZTExMjRhZTI3MGE0NmM0YThiM2JiYTUzZjIwNWY4OTEyMzUgbGVnYWN5LXRydW5rCis3NjE4MyA1MjE0MDczOGQ2YzNiNWVlZDZhNDJkNjFhMDNlNDQzNDU3N2Y1ZTFmIHJlbGVhc2UyNi1tYWludAorNzYxODQgOGJmYjMyYjVmZTZkNGQyZjk2NGRkOWRmZmU3MmY1ZjY0MmY3NzM0ZiByZWxlYXNlMjYtbWFpbnQKKzc2MTg1IGRkOWY4NWE1ZjEzNDdjZmIxNjIyNjg0ZjBlYTYyNDYzZWM4OWMxNDkgcHkzaworNzYxODYgOTIxOWE5NjJhZDFjMzA3YWUxYzc4ZWZlOTJjZDM3ZGIwNmQyNjE0OSByZWxlYXNlMzEtbWFpbnQKKzc2MTg3IGZmZjU1ODI4NmFhZTNmZTM2YWQyYzY5Mzc0N2ZmM2MyYjg0M2Q5NDkgcmVsZWFzZTMxLW1haW50Cis3NjE4OCAyM2NjNzU5Y2ZhZTM1ODI1MjdmM2I1MmVkODJmMjVjYzE2NTZhZmRiIHB5M2sKKzc2MTg5IDZkOTFhYWFkZGRkMDgxZGU3M2U0ZjI5YjZlNzM0MzdhYzRkYjdiYjMgcHkzaworNzYxOTAgODY3ZDJmMjczNWI4OTA1NTc2MDFiOTQyNTc4NDY1ZDgzNjYzZGVhZCBsZWdhY3ktdHJ1bmsKKzc2MTk0IGNhMDIxN2M1MmE4YmYzODRiMzQzZGFiMmYzODMwYzVkYzc5ODBhNTkgbGVnYWN5LXRydW5rCis3NjE5NSBmZGQ2NDg0ZjEyMTBkNjBjMTY4ZTIzNzY2YmQzNDJkZThhNjZmMjE3IHB5M2sKKzc2MTk2IGNiNTkwNTgwNmRlOGRjODc3Mjg4MmY5MjRjNWVjOTExYjYzZTI2YWYgbGVnYWN5LXRydW5rCis3NjE5NyA5N2MzMTg3MTQwNzBmNmYxN2RmN2U2ODVlNmY3ZWFiNmNiMmE0M2UzIHB5M2sKKzc2MTk4IGZlNmI5YmFiZTRiZTkxNmY0ODQ5MDVlNTNmMWYyNWEwNWNhYzBmZGUgcHkzaworNzYxOTkgOTc2Y2M1MDRkOTlmMjgzODViNWQyYWZkODFiYjNkMjg1NWM5Mzc1ZSBsZWdhY3ktdHJ1bmsKKzc2MjAwIDEwNzY0ZmZlNzU0M2NlOWJjMTJmNjNhYzQxZDQ1ZTk2NjEzOTI5ZWEgcHkzaworNzYyMDEgYjFhNzc1YWEwNzEwZDQ5NjFlYWVkMTM4NTA0ZTc0YjBlODdjN2IwZCBweTNrCis3NjIwMiA0ZWJkZDJlMGFhYWRlNzUzZGMzNGUwZTcxMjc2NTY3Y2NhZjU4OTUxIHB5M2sKKzc2MjA4IDU0YjhkNzgwYzliOTllMGJiNTcyZDQ5YzZmN2RhZDdmNmYxMDY1MDAgbGVnYWN5LXRydW5rCis3NjIwOSAyOTUwZDk3NzEzOTU5ZTcwY2Y1ZTk1Yzg5NjAxYjBiNmNlOGYxODc5IHJlbGVhc2UyNi1tYWludAorNzYyMTAgMTJlMGM5ZWEzMDRlZWViNTY4MWI3ODU0ODc5MjlmNTY0Y2VlMWE1ZSBweTNrCis3NjIxMSBjODVlYjU5NDY2MTQ1NjViZDNmOWYyOGZmZTBlNWUzZmEzZjk0OWM3IHJlbGVhc2UzMS1tYWludAorNzYyMTIgNzk1ZWY0NjM0OWU1MDFjYmM5MzRmOTE1MDQ2OWYxZjYxYmExYzBiZiBsZWdhY3ktdHJ1bmsKKzc2MjEzIDIxNDg4NTFmMDgyYTE5MDBhNjBjNzNmYjU3MmMyYzE3MmVlZDhjMTcgcmVsZWFzZTI2LW1haW50Cis3NjIxNCAyNTdjYjYxYmY0MWI1NjdiYzI5MzAwMTBiMzkzY2EwODRhYTUxMzU3IGxlZ2FjeS10cnVuaworNzYyMTUgY2U5ZjU1YWQ1NDZlMTRhNTQ3OGQzMjBiNTY3OGU0YjcyYjE2ZDhhNCByZWxlYXNlMjYtbWFpbnQKKzc2MjE2IGM3MTdmZTk5MzA4NWNkYWExZmJjOTRlY2E5YTZjZWI4MjJlYmVkMDAgcHkzaworNzYyMTcgMzNiZTgyZmEyNzdhYzlhMWVhNTAwZTljYzViM2E2YTE0NjlkMzg0OSBsZWdhY3ktdHJ1bmsKKzc2MjE4IDQzZjMyZGIxYmY0NmZiNmUwNGM2ZGFkM2U1ZDA0MDYxYzU5MGE1YjggcmVsZWFzZTI2LW1haW50Cis3NjIxOSA4MTE2NmQ3YjQxNGM4YWYyNzhkNzlhMTBiZjI4OGYzOWMwODE0YWVhIHB5M2sKKzc2MjIwIDEzOGMxZjc0ODA0ZDY4YzZmNTYxYWExMmIwY2Q5ZGU0NWM2OTNhNDIgcmVsZWFzZTMxLW1haW50Cis3NjIyMSAxYzI3ODg4YTk1NWZlOWM2ZDkxZTExMWU1ZjQ4YTI0ZmM3ZThmYmZlIHB5M2sKKzc2MjIzIGQ0NGZlYTIzZmQ1N2ZkNWI3MmYyMjU0YTEzMjJjNGEyMzQ0ZGZlYWMgbGVnYWN5LXRydW5rCis3NjIyNCA5NGNkMTg1ZjUzYjQ3NjEzNmUxNDIzNTBkNzdjMGNlZGU2ZWMwZTliIGxlZ2FjeS10cnVuaworNzYyMjUgNTcwNzdkZjAyZjlhY2JjNzkzMGYzYzIxZDZmM2Q5MzZiYzI2MzAyNyByZWxlYXNlMjYtbWFpbnQKKzc2MjI2IDVjMGQ0YjNlY2Q2NWQxOGYyMWE4MDIwYTkwNzQ1ZWRjNTNjMzdhNzAgcHkzaworNzYyMjcgNGYxYzdiN2JmY2JkYTQwM2FhZGMzNzE0Y2YyMTY4NzFmNzg0MjU3ZCByZWxlYXNlMzEtbWFpbnQKKzc2MjI4IGNkMDQzNmMzNGVmNDZkZTBmNDRmMDU5M2RiNDBiMThhZTE1ZjllMzkgcmVsZWFzZTMxLW1haW50Cis3NjIyOSBmOWE1MGNlZGU2YTkyMmIwNjdkNmQ2Y2U5NjgwMjYyZjQyNTJhMWQ4IHB5M2sKKzc2MjMwIDg5ZjQyOTM4ZDVjY2I3MzNjMzM2YTRkNTE0MTYzZjQxZmZlNDI4YzIgbGVnYWN5LXRydW5rCis3NjIzMSAxMjhkZDZkZTEzNGNhODljMmM3OThjZmJkMzFjZjJkNGI2YTY5ZWYyIGxlZ2FjeS10cnVuaworNzYyMzIgYjJkOTBjMWM2MzdkYzU3Zjk3NTgyMTg4ZDRmMmQ1NWVhNzJkODZjZSBweTNrCis3NjIzMyA3NjNkMmZmNzhhZTdlOGM0NTI5YTYxZjNlNGNiNjU1YzExYjQ1MTQ1IHB5M2sKKzc2MjM0IDdjZWI1ZWI0NjJjNTAzZjk2ZjBmYjllMTEyMTJjYWNlMjM2NTkzYzQgcHkzaworNzYyMzUgYjM1NGMxYjZiNDc2N2MzN2I0YzM4MzYyNTViN2FmYzAyZGE3ZjUzNCBweTNrCis3NjIzNiBhMDk1MWYxMWJlM2Q3NmU2ZGE5OTk1NDM1YWZjZTU0OTVmMTAxNTMxIHJlbGVhc2UzMS1tYWludAorNzYyMzcgYjdmNzNiMDJkNmQyNDhjZWQ4MmI2ZTExN2I1YTcwMTQ2MjIxMWIyMSBweTNrCis3NjIzOCBiMjE4ODM2NTczZmFjZTg3ZjRmN2M3NDM2YzlkNmU1NzI2ZjQ3ODZkIHB5M2sKKzc2MjM5IDk4NTc5ZTk1MmI1NGFmOTdkMGE4YzZkMzMxMDgwMDhiNTEyMzk1NDEgcHkzaworNzYyNDAgNjg1NTI3YWU0MzdkZjkyYThmNGNhNDMwZTFlYzMxODc4MjNiNjgxOSBweTNrCis3NjI0MSAzNTdlMzk3MDA0ODk3ODNlN2EwZGNmNDY4N2FkMTVhMTQ5Yjg2OWFkIHJlbGVhc2UzMS1tYWludAorNzYyNDIgOGU2YjQ3OGE3MDUzZWViM2ZmZmIzNDMzMzhlMDgyOGVhMzZiZWY3MyBweTNrCis3NjI0MyA2NWUyMzA4NWUzY2FkZGRiY2QwNWMwNDI1NmUwMTQ0ZjJhNTM0MWM1IGxlZ2FjeS10cnVuaworNzYyNDQgMzIzMzViYTNhYTBiYjE2MjYxYzAxNzVlZDZkMzA3YWZhYWFiOWVhOCBweTNrCis3NjI0NSAxOTZmMmFiOTc3MThjYmRiNmI5ZTFlYjM2NWFmMWZmZmViYTdjNjE0IGxlZ2FjeS10cnVuaworNzYyNDYgYjgxNDVkNmRiN2Q0M2Q3MDFkNTUxMDZmY2VmODRjZTA5ZGJiOGU3ZiByZWxlYXNlMjYtbWFpbnQKKzc2MjQ3IGM2MTNjNzI0ZTMxNTlhZjg2MTE5M2NmNDNjYmRjMTcyZDliOWU3ODggcHkzaworNzYyNDggOTBmMWY1NzMyMTg1OWQwYzY1ZmFkNDY1NzkwNjQyYTEzOTVjODRlMCByZWxlYXNlMzEtbWFpbnQKKzc2MjQ5IDVjOTA1MDQ4MTMwOWQ4YjY4MTM0ZWMyYWI0YWI3YmU1YWYyMDgyZGMgbGVnYWN5LXRydW5rCis3NjI1MSAyNzdiODlkNWIzMjA5NzQ4MDIwNTJmYTFkY2NkYWE3MGMxZTg2YWZmIHB5M2sKKzc2MjUzIGExZGY1MjRmY2JjNjIyYjA3OWNmOWE4ZjIxOWIzOGFjMmNiZWYwZTAgcHkzaworNzYyNTUgZjAwMTNhZGU5YzFhZDM2ZmMxMDRkMDk5YzM0ODU0OGIzZDdkNTM1YSBsZWdhY3ktdHJ1bmsKKzc2MjU2IGFhNjRhNTBhZDQ5MDVlNzkzY2Y1YjY3ZjU4YmRlZmI2MWYyMWExNzUgcHkzaworNzYyNTcgYTJjYjdkMjcyMWEzZTRlNGU4YTJkZDlkYTVhZDJhM2YwNjdlMWE5ZCByZWxlYXNlMjYtbWFpbnQKKzc2MjU4IDIwN2E0NjI2MTNmM2YzZTI3NTE2ODYxMGFlNGRjNjk3YjljN2NkOTkgcmVsZWFzZTMxLW1haW50Cis3NjI1OSAzZjJhNzZmYTI0OTZiMmExNWMyZGU2MTEzNGEyNjU5ZDY5MDk5YmZkIGxlZ2FjeS10cnVuaworNzYyNjAgYzFjMWYyOGFjYjA1MzI3OTE5OWJlM2I1OWI2M2QwMzBkZDNlMGY5MCBsZWdhY3ktdHJ1bmsKKzc2MjYxIGIyYWIwOGM5M2EwMjgyOWY2NGRiOGM0Y2Y1MmQ2ZTcwZTM2YjEzYzEgcHkzaworNzYyNjIgOTJmOTE3MDQzOTE5OTlmZDMwNzJkN2Q3MjE3ZDU5YTU2YjM0OGFlMyByZWxlYXNlMjYtbWFpbnQKKzc2MjYzIGJlYzU4OWI0NGFhZTdhNmMzMThkNjRmNjM5NWZlYmQ3OWViYjkxMzIgcmVsZWFzZTMxLW1haW50Cis3NjI2NCA1NTUwNDU1NDE3OTRlODNmZTU3NjBjNWM0NzhiYmExODI2NjM5MjdmIHB5M2sKKzc2MjY1IDNkYjFmYzNjZWZkMGY4NjNmN2JlNTU5NjZlOWQxM2QxYzM2YzNjM2MgbGVnYWN5LXRydW5rCis3NjI2NiA5NGYyNzA1ZGVmNWNmNjU2NjgzZWIzODZjMTAzNWVlYzU2OWU1OGMyIHB5M2sKKzc2MjY3IDdkNGFiOGNkMDAyMzk1NTQzMjg2Mjg0ZTA0NWY1Njc2MWJkNWQ0ZTcgcmVsZWFzZTI2LW1haW50Cis3NjI2OCA1NmU3MDFmODI0NWU1NjM2YTBmZmY5ZDlkZjlkYWM4ZTU0ZjdlNzJkIHB5M2sKKzc2MjY5IGZhNjAyNzBhYjc5YWU1YzhkZGRjODUyYTkzNDg2ZGU5ZjRkMTg4ZTQgcmVsZWFzZTI2LW1haW50Cis3NjI3MCAxMjU3YTU5N2M4ZmFkYTA1N2Q2MTQ2ZGIyNjkxYWVjY2NiZjE2MDkxIHB5M2sKKzc2MjcxIDNkOTAyZDY3YWY5Y2EwOTJiMmQ3NDNjN2FhZDM1YTU4MzFiNjZkNWIgcmVsZWFzZTMxLW1haW50Cis3NjI3MiA3OWVhNGIxZWYwNGYyN2RlNTdhNzU0OTViYjIxOTkzOWFhYjM0MTQ3IHB5M2sKKzc2MjczIDdkNmJhZDVjMmQ2NGUwNmIyZTI3ZWU4N2RkZWI2YzMwMDUwNDVlZTYgcmVsZWFzZTMxLW1haW50Cis3NjI3NiAxYTNkMzk2ZDFiNmZjYmY1NDJiZTU5Mjc0NGU0OGEzODljOGE4MWJlIGxlZ2FjeS10cnVuaworNzYyNzcgNTNlZThlY2MxOGE1MjJhODIyM2NhY2RmNTE1YjhjYWJlOWQyOGIzMiBsZWdhY3ktdHJ1bmsKKzc2Mjc4IGJiNGZkYTIyZTY1NzgwOGJlMDRmZjY1OTQxOGY0ZTJmZWI1NjdjZTUgcmVsZWFzZTI2LW1haW50Cis3NjI3OSBjNzc3ZTRiNDU1MDA0ZTI4MjZkMDI5ZTAyYmJjYmIwYjgzMDdlYThkIHB5M2sKKzc2MjgwIDg3Njg4ZmY2YWNjYzRkZDZjZTQ1MGQ3MmQ2MmQ1YmY2ZTExNDY2ZjcgcHkzaworNzYyODEgMDVhODljODY2M2NjNzJlODQ1ZmVjZDQ2OGRhY2JiOTEwZDJhOGY0OSByZWxlYXNlMzEtbWFpbnQKKzc2MjgyIDA1YzRlYjAwODljNWYxZTUxMmJjMDA0MWE4NDRiMWU1NTM1ZjYwZTkgbGVnYWN5LXRydW5rCis3NjI4MyAzYjBiMTliNTNkMzJiZjU1OTg1NTc2YjdlN2Y2ZjYyNGZmOTM4NWVlIHJlbGVhc2UyNi1tYWludAorNzYyODQgNTk1ZWMxZDkwYjJmZWZjNjQxMDBjODE3MzQ5ZmJiMzg4ZjBmYTE3NSBweTNrCis3NjI4NSBmYjdmYzgzMDI3MjFkMDA4ZDA3NWFkZDczNWZjMGFmYzhjMTMyNDNiIHJlbGVhc2UzMS1tYWludAorNzYyODYgNDA4ODFkYjMxNjg5MzM5MmRjMmU3ZWQxOGE0YTFjNTEwNTliMzJlOCBsZWdhY3ktdHJ1bmsKKzc2Mjg3IDZhN2ZjMmU4NTY1ZjczYTdmNDZjOTM2MmMzOGVmYTMzOWE3ODZmZGYgcmVsZWFzZTI2LW1haW50Cis3NjI4OCA1OTA0YWJiN2VlZjdiM2M4ZWNjOTJiNjlkNWIwYTIzM2VhOGFjNzcyIGxlZ2FjeS10cnVuaworNzYyODkgNDlhNWYxY2IxYjI1NDcwYWQxYTkyNGViYzI3NjFhZDVjYWQ1MTQyMCByZWxlYXNlMjYtbWFpbnQKKzc2MjkwIGY2NDBmNTVlODg3Mzg1Nzg5ZjQ5ZDJlMjc2ZGYwMWYzYjY3MjRhNmIgcHkzaworNzYyOTEgNWIwNWI1ZTlhOGU5Yjc0MmE4Y2M4ZGQ2ZmMwNWEyYTk2Y2RkNDk0MyByZWxlYXNlMzEtbWFpbnQKKzc2MjkyIDM3MGQyMThhMDFiYzMyZDlmYjc5NjQ5OTYyZDI3M2Y3YTZhOTE0MzQgcHkzaworNzYyOTMgMmFhNjJmY2UwYmY4NjUzNjFlYWE4ZWRmMWRjMTI5OWIxZjMxODM1YyBweTNrCis3NjI5NCBiMmEzOTBjNWRlNWY4OTMxZDFjOGUzZGE0ZjNkYzUwMzYyZjYzODljIHJlbGVhc2UzMS1tYWludAorNzYyOTUgNjJiOGRlOTgzYjI2NDJiODc5NDI5ZGVlOWUyNDhhMzIxNjZjZDYwZCBsZWdhY3ktdHJ1bmsKKzc2Mjk2IGMyMTdlMDMzMWQ0YjJlM2E4ZDU0ZjI2MzdmYWNkMGQxMDBmNjljOTkgcmVsZWFzZTI2LW1haW50Cis3NjI5NyBjNDU4ZjgxM2E3MDk0YmZmMDU4MGMzOGFiOWFlOWEwYmJiOGQ3MmQ2IHB5M2sKKzc2Mjk4IDNlYmY5MDdkYjAyOGUxMmJhN2MxNzNmZTIyN2JmOWFiOWU2MDYxMGQgcHkzaworNzYyOTkgOTUwNWFmZTg4MjNmOTRjMDc5MWI0ZTdhMjMwODZiYWFkMDU3NDEwOSByZWxlYXNlMzEtbWFpbnQKKzc2MzAwIDA2OWI2NmNmYWQzZmQ5ZjY1ZGU3MDg0MjdmZDIxODc2ZjVlYWMwY2QgbGVnYWN5LXRydW5rCis3NjMwMSA3ODUyMzFjMWM1NWE5MTkxNTY3YmI3MzM4NGQwYWZlZmE1OWE0MDJiIHB5M2sKKzc2MzAyIDJlY2M1OTM2YjFmMjMzM2Y4M2QzMzJkZWY4MzE3MjlkMjExZjM0MzAgcmVsZWFzZTI2LW1haW50Cis3NjMwMyBmMTM1ZmRiNzNkODg1NDM3YjdjYjU5ZDRjODU3NWMzZjg3YjM3OTFkIHJlbGVhc2UzMS1tYWludAorNzYzMDQgYzUwOTk4MThlMGQ0ZTU5MGNkZTM3YTY3ZmM5NTMyZDEyYWQ2ZTBlMSBweTNrCis3NjMwNSBhYmFmMzcyNGJlNzExNzg2ZTIxNjBiYWZhYzY4OGI0NTdlZGNhOWRkIHJlbGVhc2UzMS1tYWludAorNzYzMDYgYWZiMzM0OGIzNzE1NjIzMmYyMDE1OWI5Yjc0NmZlOGYwMTRiNzdlYyBsZWdhY3ktdHJ1bmsKKzc2MzA3IDE1MDYxMGNhZTgwNDkyOWRjOGQ1MzBkNDc5YzAyZGRiOTBlMDFkODMgcHkzaworNzYzMDggNTEwMjg3MDlhYmMzMjdjZjc3NTZmZmM0MGFmMGU0NDM2MDI1MDA0OSBsZWdhY3ktdHJ1bmsKKzc2MzA5IDgzNjY0MjI0MDQ2NGFiZDRhOGUwMWZiMGVjYzM2ZGYxNTQ0YjEwZjYgbGVnYWN5LXRydW5rCis3NjMxMCAyM2MxMzhjNGVjMDVlYzEyMmY4YTUxY2IwYTYyNjU1ZTY2YmI2ZDZjIHB5M2sKKzc2MzExIDE1NGZiMjcwYTgyMGYzY2QwMDI5ZWJjNDFhNmE2NDNhNjUxOGI5ZjEgcmVsZWFzZTMxLW1haW50Cis3NjMxMiBlYjFjMDNhMzdhMDI5NWQ1YWE2ZGUzZTE5NmY0NWJhYTUwMjVkYWU2IGxlZ2FjeS10cnVuaworNzYzMTMgYzA4NDIzZDcwYjlmMjFhNzExNjM5NzNiMDlkNTQ1MGI5MWFlN2EzYiByZWxlYXNlMjYtbWFpbnQKKzc2MzE0IGRmNTM2NGZjMGU1YzlkNDkwMGI3NjBlN2E0YjBjZWNkYzBjNWNkODEgcHkzaworNzYzMTUgMjViNjQwZDIzNGY5NTU1YzNiZDE1MWUyOGU0OTdiNGI4MmFhMGRhNiByZWxlYXNlMzEtbWFpbnQKKzc2MzE2IDI1MGUxZjQ3NTU2OGFhMmU2Y2UyNjYxMjRhZjhhYTJlNTE2NGU1ZmUgdGFyZWtfc3lzY29uZmlnCis3NjMxNyA2NjRmNjMwMTk0MGY4MzJlNjNmNWFmNjIzYjEzNzA2Njc0NWQ2NTk4IHRhcmVrX3N5c2NvbmZpZworNzYzMTggNjE1NDUyOTBjYjUxNDQ5NjU3NmIyZjU1ZjE3ODI0MDFmYzM3YmEyYSBweTNrCis3NjMxOSBlYjIzNWViNDVkMzI5YmQzNjM0MGRjMmM0Nzc0NTRhNmYzZDViNjk1IHB5M2sKKzc2MzIwIGYxMTEyYzI3MDBiMWU2NTExMmE5ZmM1YjU4OTI5ZjczYjIzOWJjOTUgcmVsZWFzZTMxLW1haW50Cis3NjMyMSA0MDFkMjIzNzA1Yjc3ODFmYzg5ZDgxNmYzNzc3MmQxMjc0N2QxMWJkIGxlZ2FjeS10cnVuaworNzYzMjIgMWUwM2ZlNWExMWI0MmYyZDBjNWI2ODdhODk2ZTgzNDU2NTRjZTlmYSBsZWdhY3ktdHJ1bmsKKzc2MzIzIDk2NzBmZTZlNmQxNGRjYWFhM2YwMDk3NDU4MmU4MjhmMjk3MzkzNDggcmVsZWFzZTI2LW1haW50Cis3NjMyNCBmZDQxN2NkNjQzNDE4NWFiNjBkNzA5NTQ5MTQzOWEwZGQyNjNjYTJlIHB5M2sKKzc2MzI1IGY2MjkzMGQwZmE3MmQyNTU0MDQ1ZDc1NmE4MzY3MjgwZjZmZDk3MWUgcmVsZWFzZTMxLW1haW50Cis3NjMyNiBjODQ3YzY4NGMyYzVlYTA5MmI2NjAyYzA2ZjU2YjdkYjFkYmJhZDQzIGxlZ2FjeS10cnVuaworNzYzMjcgZDNiM2E4YTgwOTBmYTE5ZGFiODUzNTVmNWNmNTdjZWNjMTEyYWIxYyByZWxlYXNlMjYtbWFpbnQKKzc2MzI4IGFjNzY4YzhlMTNhY2E4OGFkNmI1NzdlOGEyZjA4ZmQxMTQ2NzRmM2YgcHkzaworNzYzMjkgMmQzY2RhNmI4Yzk1MjIxM2YzN2YwY2Y5YTU5ODdkNzljN2Q3MDc4MyByZWxlYXNlMzEtbWFpbnQKKzc2MzMwIGY2ODBjMWZiNzgwNGY4MzIyNWZkZDBiYjY1NzQyYWJmMmVhOWNkNGYgbGVnYWN5LXRydW5rCis3NjMzMSBkMTI3Njc5ZWNmYWE2ZGU0OTU0NThjZjNlODYzMzhkMmFhZDFkMTlmIHJlbGVhc2UyNi1tYWludAorNzYzMzIgOWQ5MzQyY2JmOTM1M2U0ZTU5MjE5NjNiNGZlMGNlNmNiODAwNDAwMiBweTNrCis3NjMzMyBjZWIzYjM2ZGQ2ODFlY2MwODI0ZWI2ODAxNzNkYjA1MzhjN2M1OGZkIGxlZ2FjeS10cnVuaworNzYzMzQgYzVhMTIyY2IxMjg4YTZjNDdhOTY2ZmUxZGFkZjM5YTNkY2M4NWE0MSByZWxlYXNlMjYtbWFpbnQKKzc2MzM1IDQzOTFhMjJhYjFmMDRhOTM4NjhjZWM1ZDcyNmMxMGY1OGFlZjU0M2YgcHkzaworNzYzMzcgNGFhNGMxOWRmYWVkZWNmN2Q0MWIzYzRkMDBlOWNhNjUxZDA4NjdjNyBsZWdhY3ktdHJ1bmsKKzc2MzM4IGFkZjkyNzRkM2VkYzQxM2ZjMjZkZjA3ZDNlZjI4YTUzNmZmMzQ5ZWEgcHkzaworNzYzNDEgZjkzYjJhNjhkZmI0MjA3NGZmNmQzNzllNmY2MzhkNDhhMWE4MDFmYyBweTNrCis3NjM1MCAzNDliOTdmZjRjMmI3ODMyNGZhZjNkNDczOGU2ZWFmZmIzN2UwOTY2IGxlZ2FjeS10cnVuaworNzYzNTEgNzE4M2Q2YjkzMGJhOTEyNGFjZjhiNDEwY2UxMGQyZDFjOGM0ZTBiMCBweTNrCis3NjM1MyAyNjI4MjE2YmM2NmQ0NzZmNzc2OTNkODJjNzIxNDYwMGYyMGE5ODgyIHJlbGVhc2UyNi1tYWludAorNzYzNTggYTc3YTJkN2NlZDdkZDdjMmUzY2VjODAwNzdlZWExMDI4NmQxYjkwZiBsZWdhY3ktdHJ1bmsKKzc2MzU5IDE4NGViOTBiMmUzZDc1ZmI5MWM0MGY5MjE0ZWU2NzAzNzI5YTE5ZjggcmVsZWFzZTI2LW1haW50Cis3NjM2MCBkNmMyMTA2Nzc5YjkwY2UyY2IwOTQ2NzZkMmIxMjVjOTJjNzFjZTRiIHB5M2sKKzc2MzYxIDNjNjIwMzFiMjUwNmRlY2Q1N2U3NWMzNTFlY2U5NzIyNjViMDkxMjMgcmVsZWFzZTMxLW1haW50Cis3NjM2MiAzZDJiMDZhYTdiMzZmYTBjNjRiNjNjNzRjM2Q5ZDAwMDYyM2NiMzI4IGxlZ2FjeS10cnVuaworNzYzNjMgZjAxNDhkOTJkYjdmZjUwNjMzMzczYzM4MGYwYjAxNmI2YTFmODdiMSByZWxlYXNlMjYtbWFpbnQKKzc2MzY0IGVkYTU2ZDA3NzViYWNkN2RiMmZjNjYxOTU5OTI3NmFjNmFjMDYwMmYgcHkzaworNzYzNjUgMjRhYjkxZmIyNWFiZjA3ZWRhYWE0MzUxZDk5ZDUwMGY0N2JkNjRlMiByZWxlYXNlMzEtbWFpbnQKKzc2MzY2IDNkMThjZDFkMDRhNDQ2OGYxODFmMjA4NzZmNGI3NTQ2ODZhYjMwZmYgbGVnYWN5LXRydW5rCis3NjM2NyA0ZWQxMzJkNmJiNzAwMTIzOGYyYzEzMDcxNTkyYmFjMzcxMDA3ZTJiIGxlZ2FjeS10cnVuaworNzYzNjggNmUzY2MzYWRmMWRjNDQwYTNiMmRjMThiMjYzNjNiYWM3NTMwYjg0MSBweTNrCis3NjM2OSBhN2Y2MTk0Yjc4Y2M5MmQyODA4OGM3YTRjMTliM2IwZTc2Y2ExNzBjIHB5M2sKKzc2MzcwIGVkNTRhMWE5MTRiNGM2NjA1MzAwZTJiZTBhMjZjNTVkZjVhZjdkZjEgcmVsZWFzZTI2LW1haW50Cis3NjM3MSA1ZWYzNGIyOTc2NmNmMWEyNzYzMTdmODljYmQyNGQyMmJhN2JkZWVmIHJlbGVhc2UyNi1tYWludAorNzYzNzIgMmM1YzY2ODdmMWM4ZWI1NDBmMGYwYTc5NmUzY2ZjZGYwMGYxYWE3ZiByZWxlYXNlMzAtbWFpbnQKKzc2MzczIDkyZTA2Y2RiZWFiOWI2ODQyNWVjMmY5YzUyMjU3N2E2MDRlZDc0ZDEgbGVnYWN5LXRydW5rCis3NjM3NCA1MGQzNTUzMjRjNTA2MzI3ZGRhZGM3MzYyZWMwMTFlZmNjMjBlYzA3IHJlbGVhc2UyNi1tYWludAorNzYzNzUgYjk2Zjc4Y2U4MzgzMzkzYmMxZGJmNDQxMGM0YWQ0YmU4ZjA3ODBlMSBweTNrCis3NjM3NiAzMzNkZGEzMWJkNzMzMWVlNjExN2MyMTkyNGY3YWNmNmI3ZTBkZTMxIGxlZ2FjeS10cnVuaworNzYzNzcgNDFkMjljMTdmZDQwNWQ2YWUxMzJkMGJlM2I5ZTJiYjQxOTRmYjMyZCBsZWdhY3ktdHJ1bmsKKzc2Mzc4IDQ2MzNlZDIzNzk3MGQ3NDZmODRiOTFmYzAwZGUyNTY0N2E5ZDM2NmUgcmVsZWFzZTI2LW1haW50Cis3NjM3OSAxZTUzNGQ3OTUwZjgwZTg5MzM3MTY4N2VhNWViYWFjMDFjMTdiYjMxIGxlZ2FjeS10cnVuaworNzYzODAgOWVkMDJkZjcyYmQ2MmYzZTcxMmZkZWI0MzcwZjdiZWVkZTM2NDE2NiBsZWdhY3ktdHJ1bmsKKzc2MzgxIGQ4YmNjOWRlMTYwNTRjNzllODQwZjNmNjhlYjdhYWIzNjcxYjU4MGEgbGVnYWN5LXRydW5rCis3NjM4MiAwYmNjMTJjNDYwMTVhNDg4ODU1N2NkYWM5ZTFkMjBlMjQ1ZjdjNGFhIGxlZ2FjeS10cnVuaworNzYzODMgMDVhZjA0OTAwYjZiOTFlMmVkMDBkYzQzNTlmNTBmYWNkYTAzN2E5ZCBweTNrCis3NjM4NCA3MTVjMGJhYThiMmM4Yzc4YWNkNWFkYmIyN2YzMjUzYzE3NGM4YzRlIHJlbGVhc2UyNi1tYWludAorNzYzODUgNWU1Yzk3YjljODI3OWY2MmM4MzgwODM2MmI3ZGQzMTFkOTU0ZTIyYyBweTNrCis3NjM4NiBhMzQ1YmI1MGVjMGY4OGM1ZGE4ZDMxYjAxMjgyOTQ3OGZjOWZmMjk5IHJlbGVhc2UyNi1tYWludAorNzYzODcgZDgwMTlkMWQ1NmYzMzRmNTJlOTZiNzgxYmJjNGFiYzQ3MjE0YjE5NyByZWxlYXNlMzEtbWFpbnQKKzc2Mzg4IGVkNTkwNzc4MzhhZGU5OTI3YWY2ZDQ5MjA3NTNjMTA2ZDkwYmYwODUgcmVsZWFzZTMxLW1haW50Cis3NjM4OSBiMzFhMzNjMzZmMDg3NGNhMTcxNjhhMTRlYTY3ZDVlNzRhYTZkMDRhIHJlbGVhc2UzMS1tYWludAorNzYzOTAgYjhhMGIzMzNlNDY5ZTFhODk4ZjMxNDNhMDc4ZTE3MWE4OTA3ZmYzMSBweTNrCis3NjM5MSA4ZDA2ZTQ1MGJjOThjYjZhNGY3M2JhOWNmYWYyZGE5NzhjNmY3M2MzIHB5M2sKKzc2MzkyIGYxNTI2NjcyMDBhZTkwNDI0Y2YyZmRjYjVkYTBiODY2MDRjOGM1NTEgbGVnYWN5LXRydW5rCis3NjM5MyBhNzkwZjg0ZmJhZmEyODE4ZWU2ZDk4YTE2YTFjNTA2NTBiNmU4MmMwIHJlbGVhc2UzMS1tYWludAorNzYzOTQgZjczZDEzN2NmYmQwNDZmN2E0YWRhNjEwZWM1ODUyMjRiNzQ5M2JiNyByZWxlYXNlMjYtbWFpbnQKKzc2Mzk1IDg3OTNmZjhmNDgyNjFkOTE0NmQ0ODgwY2M0ZjVlZDc2MWQxYmYyMzMgbGVnYWN5LXRydW5rCis3NjM5NiAxNjZmN2EzYjczZmM2MGM2MzZkNjYyYWFiYTAyZWY5ZjNkYTc0YjNhIHB5M2sKKzc2Mzk3IDQyYWFlZGFlZmJjYjY1ZTBiOTU2OWU3NzVmNmM1MmJkYzBmNjBlMDUgcmVsZWFzZTMxLW1haW50Cis3NjM5OCBkNTc3OWUxNTlkZGIxYThkYTIxYzdjYjc2YzdhNThmZmRkNmMwYmJjIHJlbGVhc2UyNi1tYWludAorNzYzOTkgYzBkZmE5YmQ1YzdmODIzM2I4MjY1ZDkyZTQ4ZDM0YjFjZjE2Y2NhZSBsZWdhY3ktdHJ1bmsKKzc2NDAwIDRiNmI0OTQzZDY5YTQwYjBiNDlhOTJjM2VkYjNkYWUxNDExNzNlMmEgcmVsZWFzZTI2LW1haW50Cis3NjQwMSBmNTdmMGM2YWFlOWQ4MmQ4M2JjY2ZkOTE0YzU0MDY2M2Q0MWZhNDE3IHB5M2sKKzc2NDAyIGFiNWI3ZTBhOTEzMWFkYmMzZmFhZmZiOGRiN2Q4OGIwMDI1ZTA1YWYgcmVsZWFzZTMxLW1haW50Cis3NjQwMyBjMDc5ZmNiZmM3NjE3YjZiOTgxZWM2Y2ZlZGZmNDllOGNlNmViZTMzIGxlZ2FjeS10cnVuaworNzY0MDQgNWI1NDMyNWVmNmY1NzYzMTM4YWNlZGE5NTExMmYxYjMyZmQ0MmUwNiByZWxlYXNlMjYtbWFpbnQKKzc2NDA1IDM5OTg5YzY2ZGIxNzhhMjE4YjU5MTNmODU3MzM4ZWMyNzlmZTI5NzUgcHkzaworNzY0MDYgYTkyZWYxMzZkOWQwY2ZmOTE2YjgzYWE1MWNkZTI1OTM4NDI4YmM3NyByZWxlYXNlMzEtbWFpbnQKKzc2NDA3IDRmYWU4MTY4YzQzYjEzMTg4ZTMwYzQxMTA4ZDA1MzdiMjg0YTdlYmUgbGVnYWN5LXRydW5rCis3NjQwOCBiOTZhZTNkOGFkZmQxMDhhYjM3ZThiMDIxMjcwODNkODYwZTFiOTM1IHJlbGVhc2UyNi1tYWludAorNzY0MDkgMmRkNzk0MmRjZmQ1MzkwYTY2ZjkzMTU0OGFmOGI3MDM1NWIyNGMzYSBweTNrCis3NjQxMCAyNGQxZTA2YzYyOWMxYTg2MGY5ZGM1ZjVlMjIzYjE4YjFkZjhmODMzIHJlbGVhc2UzMS1tYWludAorNzY0MTEgNjdjMGY5MmNlNTVjNzdiYTJlNmNmN2VhZGE0NGZhYjVmNThiZGZlYiBsZWdhY3ktdHJ1bmsKKzc2NDEyIGE0ZDlhM2RiYzUzM2ZiMmVmMmUxZmQ3MGM1YTJlNjQzNmYzMjRhMDggcmVsZWFzZTI2LW1haW50Cis3NjQxMyA5OGFiM2FkYjA0NWNlMjZlYTZkZjY5ZDQxNmY5NWIwNDQwMDBjODkzIHB5M2sKKzc2NDE0IDIyNTRjN2RhOTc3ODgwNDYzMzBlZDkxZDQ0YzkwZGFlZTg3YjNmOTcgcHkzaworNzY0MTUgODIzODA4MTZlN2RiM2IyNjQ3MWMwNjgwNjUxYmFhOWM4Mzk4NmQ1NCByZWxlYXNlMzEtbWFpbnQKKzc2NDE2IGVkMzBiY2ZmYTE0NjcyZjBlMzM0OWZjMDc3Y2U1OWRlNzdiMDk2MGEgbGVnYWN5LXRydW5rCis3NjQxNyA2YWE1MjhjNTAxMjg0YzVmN2MyZDE1YjJhMzk2NDIxMjE3YjczNDdlIGxlZ2FjeS10cnVuaworNzY0MTggNDc1YmY4YjU4NGE5MjNiMDQ4ZjIzODcyZjNjZTlkYmI2ZGNmMjE4NCBweTNrCis3NjQxOSBmOWYzOTUwYjVlYzc1NjUyMDcxZTUxNzk5MjM0ODBiYzFkMWM5MTAwIHJlbGVhc2UyNi1tYWludAorNzY0MjAgMWMzNTI3NTBlYmYyM2Y5NTE2Njg2MzZmODE1Mzc4ZGUzODNkYTQ2NyBsZWdhY3ktdHJ1bmsKKzc2NDIxIGYyZGE0ODhiNGI3YjM5MzU2ZTM0MDY3YmQyZWZkYjU0NzU3ZTJhNDcgcHkzaworNzY0MjIgY2Q1YjE1YzI5YTM5NmVlOTljZDBiYmY4NDRiYTM1MzRiMzNmZWI4NSByZWxlYXNlMjYtbWFpbnQKKzc2NDIzIDZlMzcwMDEzZjNhMGE1OWE3OTk0OGI2MzNiMmVlNWJmMjhjYWUzYjUgbGVnYWN5LXRydW5rCis3NjQyNCAxMzcxMTVlMzk1ZDhkZGZiNTdlZmQ0MjA0YWY0ZTExNmFkYmQ2ZjgwIGxlZ2FjeS10cnVuaworNzY0MjUgMThhZjBjZTBhNThiZDhiNmJiYzcyYTI4MGExY2RjYjk4OWVhMGYwYyBweTNrCis3NjQyNiBlYWViZTI0NjAzNzdjNTViYWMyMDc4OTVhZTU5YmQyNmFhMDA1NjY0IHJlbGVhc2UyNi1tYWludAorNzY0MjcgZmQ2ZTJhYmFlMTRlNDJmNTJmZjY4NWZiMmQ2NTA0NDM1YzEyNGYzMSByZWxlYXNlMzEtbWFpbnQKKzc2NDI4IGUyYjJjZWVmYTgyYWNmZGI1YTk4Yjk0MGEzZDA0MDAzMDljYmFmZWIgbGVnYWN5LXRydW5rCis3NjQyOSBlODNlM2RiNjJmYzc4ZDRlM2ZkYWE4ZjM2NWRlN2MzMzI3YzRkNzJlIGxlZ2FjeS10cnVuaworNzY0MzAgZTNjOTk0YzI5YTIyOTI3YTI5ODY5Y2I0MDViYWE2NWMwMmM1YTFmYiBsZWdhY3ktdHJ1bmsKKzc2NDMxIGI4MWQ2MDExMGY4NmY3NzgxMjI5ZTVkMDNiZDAxMDIzMWEwNmJlMjYgbGVnYWN5LXRydW5rCis3NjQzMiAyZTNlYzNiYjRiZTdjYmZkMmE2ZGViZTEwMjZhZjJmYTUzMjczNTZlIGxlZ2FjeS10cnVuaworNzY0MzMgMWQ5MjNlYmI0NzYwMGY4YTMxYzY4OGIxZWZiNjNmZGVhM2MyZmUzZSBsZWdhY3ktdHJ1bmsKKzc2NDM0IDdhNWNiNGRlY2Y2ZjI4ZThhNWYwOWQ5MTRhY2JlMWQyODdhNWNjYTggbGVnYWN5LXRydW5rCis3NjQzNSBiOGJkNTM2MDg0MWJhYTVkZTViOWZjMTE4ZGNkMzIzMGM1ZjhlNjY1IHB5M2sKKzc2NDM2IDVhZWVlZTBlYWU1ZmNmNTM2YmUzM2Q4NjcwZmFiMjQ2Yzk4MjgxNjUgcmVsZWFzZTI2LW1haW50Cis3NjQzNyA2MzliYTAzNmMyMDk0OGM0ODhlYjdmOTQzN2EyM2Y2YzdmMTJiY2M0IHJlbGVhc2UzMS1tYWludAorNzY0MzggYWY4OGIxZDI1YmYyOGViYzk1NTFlOTUxODAxOWM2YWUxMDBkZTQ2MCBsZWdhY3ktdHJ1bmsKKzc2NDM5IDUxM2M0YjE1NzVmMjY3MDJiYzMxZmVmZTcwNDFmZjQ1YWQ5MTg2MTEgcHkzaworNzY0NDAgNGM4NzA4YTc5MWU2MDMyZTAyOGNkOTU0YjQ0MDQ5NDdmNjg5NmM0MSBweTNrCis3NjQ0MSA0ZDU1NmMyNzkyNmE2MWM3MzI3NjdhZWYyMDIzMmIyZTI5YWYxNzAzIHJlbGVhc2UzMS1tYWludAorNzY0NDIgZGNiY2M4YzE0MTc5MzUwMDc3NzU0ZDczMmUwNmNlZDRjMTY0MmY1YSB0YXJla19zeXNjb25maWcKKzc2NDQzIDRlMjcwZWFiNDUyZGYzMDgxNDBhOWI1ZDc2YzA1NjkzZjUwMTY3NGEgbGVnYWN5LXRydW5rCis3NjQ0NCBkNmY4NTUyZmNlNzlmYWZkNGFhMWUzYzg2ZTg1NmNjZDAyYjMwMWYxIHB5M2sKKzc2NDQ1IGJjNzY0M2E3YTVlN2IyODdmZjNjOTg3NjM3MmNiNmRiODA2ZDI4YjYgcmVsZWFzZTI2LW1haW50Cis3NjQ0NiAwZWViM2EzZTc5ZWY4ODhmNzJhOGJhN2EzMTBjODk3ZDdlMmRlZjExIHJlbGVhc2UzMS1tYWludAorNzY0NDggZWM1MmM0MTliODI0ZTFjNWUwOGYzYTliZDQ3ODJjZTA2OTM5ZWQyYiBweTNrCis3NjQ0OSAzNzNkNDJmMjZlOTY2YTdkYTgwNDkxOTZlMzRkMzVhMzYyODY4YzkxIHJlbGVhc2UzMS1tYWludAorNzY0NTIgZGUwNzg4MGE1M2ZmYTc5MDRiMzNlMzNkYTA2NWYzNWVmMjEwMWIyNyBsZWdhY3ktdHJ1bmsKKzc2NDUzIGQ2Y2UxOGFkODQ2NzE2OWUxODJlYTdlMjE1ZDkwOWI0MGU4ZjM2MmQgcHkzaworNzY0NTQgNTZmMTkwODFkN2JjZTk3ZWNkMmFjMGE1ZjgyZTMxNzRmZWY0OTU3ZSByZWxlYXNlMjYtbWFpbnQKKzc2NDU1IGUxZDczMjUyN2M3ZTM0NDU3Yjc5ZGYwNzA2MDRjYjhjYTc5ZTRlM2EgcmVsZWFzZTMxLW1haW50Cis3NjQ1NiAyNDhjNGZhNWZlMGM5ODc5NWE4MzYxY2JiMzg1M2ZhZjJjZGM4ZjQ0IGxlZ2FjeS10cnVuaworNzY0NTcgMDg2OWUxYWI1NzJlMzdjMzM1NDlhMmJkNzcyMTNmNjQ3YmI0MzNmOCByZWxlYXNlMjYtbWFpbnQKKzc2NDU4IGM0OGZkNjNjMmY2MWEwOGIwMjJkMjdhMzNmZDEyODQwNjFjNTBmYWYgcHkzaworNzY0NTkgMDk4NDA5OWE5NDMxM2IyZWZlYmQ1MTBhYmE1MTBhMTZiNTA2NDI3NiByZWxlYXNlMzEtbWFpbnQKKzc2NDYwIDcwNDIxNGI5Y2I3NmM3NzNkMTA5NWU3NTAxYzk2ZjU2NjE5NzQ4ZDUgbGVnYWN5LXRydW5rCis3NjQ2MSAyNjM5ZWE3YjkyZWQwNGM2OTZlNGQ3NTBkMjEzMWZlOWI5MWRhZWZlIHJlbGVhc2UyNi1tYWludAorNzY0NjIgYWRhNWY2ZWVlMWNiMTIxZDQzNzJiYTJkMzliZGNiN2M4YjRhMWU2MyBweTNrCis3NjQ2MyBjMmVjY2E1ZmY2NTkzY2RiMDliNDBjNDE1MjQ1OTI3YjE0ZTk1MjVmIHJlbGVhc2UzMS1tYWludAorNzY0NjQgZjU1NGRmZmY3NDUwNTc2NTZmNWNhNzMyMGQ4N2Y2ZGUzNmI1MjU1YiBsZWdhY3ktdHJ1bmsKKzc2NDY1IDgwOGY5YzBkNGFjNDAwY2JmNWIyMDM5YzAzN2IxY2E0Y2E0ZjVmY2QgbGVnYWN5LXRydW5rCis3NjQ2NiA1Y2Q5NWU1Nzc3MmM4MGM3ZmJiNzVlYWU1YmVmNzhiYzc0NjE4ZGMwIHJlbGVhc2UyNi1tYWludAorNzY0NjcgYzhkNjlhMDZiMzNiYmY2MTY0OWE5MGQzNjc3MjFiNWNlNzQ2MmNmZCBweTNrCis3NjQ2OCA4MThjZDQwZGY4NjVmMjY3ODMxMzBkNTAzYTJiNjUwNTUyMTU3Njc5IHJlbGVhc2UyNi1tYWludAorNzY0NjkgYWE5NjI3YzQxMjIyY2FhMmE0YTJmYjZjMWQwODgwNzIxZTYzMzM3ZiBweTNrCis3NjQ3MCAzYTJiMTQ5YWU2NmU4MTVmMDgzZjIzNmMwMzJjYjk5NDM1MDE5MDg5IHJlbGVhc2UzMS1tYWludAorNzY0NzEgZjAxN2EzNDg2NGUyYmE1MzcwMjk4NjlkN2E4OWY0N2Q2YjRhYTlhOCBsZWdhY3ktdHJ1bmsKKzc2NDcyIGE3ZWIxYWU0ZTkxOTA0YmJlNDlmYzNjNGVhZjRlMWUwZmY1NTI2ZDUgbGVnYWN5LXRydW5rCis3NjQ3MyAzMDE3ZDgyZjA3NWFjZGIxMTRhNmM5ZWIwZTUxNjM4MmFlMjQ1NTY3IHJlbGVhc2UyNi1tYWludAorNzY0NzQgMDhhMGM5NTg4ZjEzZjBmNTg1Yzc5ZDExZjIwNjZlMTY1YmE0MmY5ZiBweTNrCis3NjQ4MyBiOWI2ODNlZWRlZTExNjc5MGMwMWQ3NWI1NTYxYmZmMDEwMmU4MGM2IGxlZ2FjeS10cnVuaworNzY0ODQgNTExNmVmNzc5YTgwMWYxY2RiMTJhYjJlNzhlZjZlMjc0OTk1MGUxMyByZWxlYXNlMjYtbWFpbnQKKzc2NDg1IDM1N2FkOTBiODExNGNmNDBmNzJiYzg4OGNlZWM3YTY0ZmE4NjdjZWIgcHkzaworNzY0ODYgYjdmYmVmMDc3ZWFlMTNjYjUwYmZhZTg4YWJjOTQ2ZmNhZjk5NDdmNCByZWxlYXNlMzEtbWFpbnQKKzc2NDg3IDM5NDhiNGM3MjlkN2FlOTRhZDc1ZjY0MWZjNDNmYzc0YjY2OWViZTAgbGVnYWN5LXRydW5rCis3NjQ4OCA1MTZjNjIyYTRmOWUxMzgyYzI2ZDM3NjdiMTcwOWY4ZWYzODMwMWUxIHB5M2sKKzc2NDg5IDMzN2ViYjgyOWI4Y2EyZTM3NzIxNDFhODRhM2U3ODRjOTI1ZjNiNjggbGVnYWN5LXRydW5rCis3NjQ5MCA5ZGNhMzg0NzQ4NTQ5Yzg2ZDg0NmQxZTVlZDMzMGE2MDlhZTU2ZWU4IHJlbGVhc2UyNi1tYWludAorNzY0OTEgNTM1ZTA4Y2U0M2Y1NzljYzZlOTY0ZTdiZWU4MGJhNGZmNzFkNTRkNyBweTNrCis3NjQ5MiA1OGIxMTkxZTQ1MWZhMDAzZmUzMzlhZTM5NDU1MjNjMGVkYWJlZDI2IHJlbGVhc2UzMS1tYWludAorNzY0OTMgNmYwNDhiMWU1MjgwNjIzMjNmOWU1MWI5MGY2OGY2NDk3OTI3YTBiOCByZWxlYXNlMzEtbWFpbnQKKzc2NDk0IDc2NTkwOWZjN2RlYzk2ZTNlZTRlMTE4Mzk5ODE2NjA1Zjc4NTdhOTggcmVsZWFzZTMxLW1haW50Cis3NjQ5NSBmYmVmNWZjY2IwYzg4ZjljZmJkMDc1NzY1MTA1ZTI0MzU5MzVjMDJiIGxlZ2FjeS10cnVuaworNzY0OTYgODNkOTRlNzJmMDFjZmZhMGIyNjFkZDU1Y2Y5YWE0NDRlZDhmYTgxYSByZWxlYXNlMjYtbWFpbnQKKzc2NDk3IGZiNzk5NGIyOTEwMTczYTRjN2FlMTQyMTFiMDdiMDlhZGNhYTliZjIgcHkzaworNzY0OTggMTdlNTkwYmU0YzVhYTJhNjY4ZWU0OTFhMzdhYjE5ODRmNGFlY2NlNCBsZWdhY3ktdHJ1bmsKKzc2NDk5IGNiM2VhYzQyMWNmOTZlZjhlMTgzNzRhMWUyMmYyMThjYTJhMjI5ZmMgbGVnYWN5LXRydW5rCis3NjUwMCBiNTFmZGE3NTRmNWE1ZTMxNzA0YjNmZTMxM2M5YWZhNzdmODIyZmRjIHJlbGVhc2UyNi1tYWludAorNzY1MDEgOWU3OWE2YWZhM2Y1MzEwMGI2YWE0MWE4YWQ2ODFlM2ZmMDFjYzM2OSBweTNrCis3NjUwMiAyY2QxZmIxMDQyMzM0ODFhMTBlNTcwZjc2OTdjYWI4NDM4OTg3OWY0IGxlZ2FjeS10cnVuaworNzY1MDMgOTAyODI4MDRjZDUwMTY3ZWEwYzI4YjQ5YmZiYzkxNDA2OTNkOGM5OSBweTNrCis3NjUwNCBhZDUxNjllMDVkYzNiMzhhNjk4ZmQ2Mzk0ZWFjYWZjMDE1MDc3NGZjIHJlbGVhc2UyNi1tYWludAorNzY1MDUgMDE4YjIwYjAzOWE4NTRiNWExNmVjZjgwZmI3MzVjN2YxODlmYmMxYiByZWxlYXNlMzEtbWFpbnQKKzc2NTA3IDVlYTIyNmQzMmY2ZDc3ZTU4MTk3ZTU2YjNlM2E1ZDZjNmQ5OGM5ZGUgbGVnYWN5LXRydW5rCis3NjUwOCAxZDE1N2UyY2U5NDkzZjQ4MzQ4NmZhZDI5MTMxZTY3ODk0OGYwY2JhIGxlZ2FjeS10cnVuaworNzY1MDkgODVjZDkzNTI1NTY4N2QzYjgwM2Y0OTg2NTg0NDM0NTM2MmM1NzIzNCBsZWdhY3ktdHJ1bmsKKzc2NTEzIGM3NzMyZjg4OWM0NTQ4YWU3MGNmOWJkMTg4ZTMzYWJiOGZkZDNiNzggcHkzaworNzY1MTQgMDIyY2QwZjNjNTU4ZWRkZTE2OWY2YmE1NjJjN2QxNDE1MzU2Y2I0MyBweTNrCis3NjUxNSAwZGI2NzE1M2QyNWYxNGMzZTk3YzdkOGJmMTA5NmI4OTFiZTA2ODk3IHB5M2sKKzc2NTE2IDEzODZkMGU5ZTBmYzdhNGQ2MTdkODBiMGJkYWIxYjQwZGU2M2Q0NzYgcHkzaworNzY1MTcgNDFiZDMxMjM4NjRkODlkMzUxMWJiYjc3NWU1ZmU0MmZmYTNlZWU2ZSBsZWdhY3ktdHJ1bmsKKzc2NTE4IGU1YmMzODJjY2Y3NWIxZWQ4YTMwY2E3ZmI1ZDI0ODhkMjMxNjMzNjEgcHkzaworNzY1MTkgNTA4NjU0Y2VlMTM3YThlZDE1ODE1YWU3MzBlZGY4MGExOGNhMDQxMCByZWxlYXNlMzEtbWFpbnQKKzc2NTIwIGU2MTMzZDE1NGY5ODE5YzY0OWQ4ZWFkYmNiZmU0MmU0OGNmMjFlMDUgcHkzaworNzY1MjEgZmVhNTMyNThhYjdlYmVlZDEwOGRjOTcxZWE5MzYyYWFlNGZmYWVlOCByZWxlYXNlMjYtbWFpbnQKKzc2NTIyIGRmODZjNDIwZTk3YTBjYzE1N2M2ODdlOGYzYjgyYWMyYzA1ZWQ3ZGUgbGVnYWN5LXRydW5rCis3NjUyMyA4NWUxZTEzYjQ5OGE3MmMwMzJkODBkOTJmNmE5ZmU1NGVjNjhmOGJhIHJlbGVhc2UzMS1tYWludAorNzY1MjQgMmQzODhkMWE4M2Y0MmUyNDQ2YWVmOGU4Y2MxZmU0ZjI0NDY5YWQ5NyBweTNrCis3NjUyNSBhMWQxNjZhYjE4YzQ0YmE2MzYzYWNjYjllZjJmZmE0ZjA0NGYzOGMwIHB5M2sKKzc2NTI5IGE2OTgxZjRhNzRhMWQ4NjZjMDliNTllZTdjYTA2MDNjOTRlYzBhZmYgbGVnYWN5LXRydW5rCis3NjUzMCBhODU0NzFjNDc1MTQ4ZGYwNjc3YTkxMjE5ZjE2NmM4YjhkMjE1ZDc3IHB5M2sKKzc2NTMxIDYxZTZjZTcxODUwMDg5YzBkNDgyOTY4ZDFhYTE3YjI4ODI0YTIxMjMgbGVnYWN5LXRydW5rCis3NjUzMiAzZjcxZWJlOTFmOTA1NTA1YzllNTBlNjU2YjY5MDU4ODVmMDhhM2M2IHB5M2sKKzc2NTM0IGM1NDU4YmEzODlkNzY1OWY4ZTkxMjE0NWY4YzQ0Y2UwN2Y1NjU1Y2EgbGVnYWN5LXRydW5rCis3NjUzNSA3Yjc0YWJiODAzNTY4ZGJlN2Y1MzA4ZjkzM2FiMmM5NDM5ZDVkNWE3IGxlZ2FjeS10cnVuaworNzY1MzYgNzQyMzBlNWFiMzczOTA1NTljOWE0MmYyMmUzMTU3ZmY3MmY4OGZiMyBweTNrCis3NjUzOCA0NTIxZjU5OThlN2M2MmU5NDEzNjAzOTk4MzlmZTgzZTlmY2NhZDEyIGxlZ2FjeS10cnVuaworNzY1NDYgYThhYjYzZmQzMDk4OTdjMDAzNWQyYzM3M2MzNmYwMTg3YjEwODMzOCBsZWdhY3ktdHJ1bmsKKzc2NTQ3IGM5MzY5MDkyZmVmY2Q0NDViOWM1NjNkZWZmYTJjMWRmMGE2MGU0MjcgcHkzaworNzY1NDggMTM3NDhmM2RkYzdiNTQ5YjRlYjZkNjZhNjU5OTUyMWQ2NjQ0ZjE5YiBsZWdhY3ktdHJ1bmsKKzc2NTQ5IGM3ZDdkNWNhODQ0NjRmMmFjZDdjMDRkYWQxZmY1NDg5YTVmZjkxMzUgcHkzaworNzY1NTAgOTg4ZGIwYmJlZTNhM2UwYTk0NjY2ZWNkOTA0MTBkNWM5NDk2Yzc3ZSBsZWdhY3ktdHJ1bmsKKzc2NTUxIDY3MjFkMzNmM2NkMWYzYWM2ZGQxNmJmMjQ4Y2JhZTcyN2ZiNzdiZDEgbGVnYWN5LXRydW5rCis3NjU1MSA1MzY2OWNiZjBlZDJhOWIyNDk3MzNlZjA2OWRlMTRiMzdiNzE1ZWI4IHJlbGVhc2UyNi1tYWludAorNzY1NTEgNzI2ZDEyZGJhMWY2MGUzZGIxNGZmMjQ0MDRmMzE2Y2I4MGE1OGQ3ZiBweTNrCis3NjU1MiA0ZWY3YjNlMmQ2YThiMGIwYTliN2M4YzJlOThmMzQ0OWU2ZTAzZDJmIHB5M2sKKzc2NTU0IDUyN2I3YzA3NTg0OWZiZjY0NTg3YTU0NmMzNDI3MmQ5OWI2ZTRjMDYgcmVsZWFzZTI1LW1haW50Cis3NjU1NSA1NzRkZDhhY2E5MTRlNDQzYjY2NzVlZTdiNWI2ZGU5MDg4NWYxOTM0IHJlbGVhc2UyNC1tYWludAorNzY1NTYgNmU3NDAzYWQ1MzM1ZWE0ZDEyZDI2ZTFhZWMwMjc1M2FiZTY1YmNlMSBsZWdhY3ktdHJ1bmsKKzc2NTU3IGZkZTUxMzBiZjZjZGJkMzJjOWY0YWE4ZjUzZTIwYWJiYWIyMGYzODMgcHkzaworNzY1NTggMzM5ODY2NDg2MzBiYzRjMDlmMDFmZGExNzRkMWJjMDI0NjFkNjgyYiBsZWdhY3ktdHJ1bmsKKzc2NTU5IDE4MDI0ZDI5ODY5Y2IxZjVkNWUwOTAxZWMyMGFiYmI0N2JlZDZmOGQgbGVnYWN5LXRydW5rCis3NjU2MCBjNGMzZmQ1OTNiMGFjMjk2ZDM4NTJhYTZjNGUwYTVkMjg3ZmE0YmQ1IHB5M2sKKzc2NTYxIDI5N2RmNzdiYTM5NjQ3MDY5NmZhNWViMjdmN2ZhYjE4M2MxODc3OTEgbGVnYWN5LXRydW5rCis3NjU2MiA2OTZkOTYxNWEyMzgzYjk1M2JhYTY3NmQyMjQxMTRkYmE4YjM3ZWY1IHJlbGVhc2UyNi1tYWludAorNzY1NjMgNWI2MDdjZDhjNzFiYjU4ZGEzZmM4Nzk2ZTc3YjEwM2MyMGNmYjgzZCBweTNrCis3NjU2NCAzZDExNTc4MmZlMWJiMDRmMTFhODNlMzRkMGFlNDczNDNlMjdhN2QwIHJlbGVhc2UzMS1tYWludAorNzY1NjUgMGMxOWJlNDUwZTY3YTAxZWM0YTJkNmYxMjNmN2E0YzdiMGU1OGVmOSByZWxlYXNlMjYtbWFpbnQKKzc2NTY2IGNiODM2MzAxZGI2MDU3ZWRkY2U0MjliMzIwYTBkNDQ0NzBjOTczYmEgcHkzaworNzY1NjcgM2Q3N2Q3YzE2YzkwOTc5NmM3ZjJhZjM3ZWIxZWZiZGY4ODY5NzUyMCByZWxlYXNlMzEtbWFpbnQKKzc2NTY4IDE0ZWU3NWI4NmE1ZjA0MWQ1MzFiY2I0MWU2Mjk0N2JkZWVjZmM3ZDEgbGVnYWN5LXRydW5rCis3NjU2OSA5MzZiNmYwNjU1OTM4YmVjMDQyN2MzOWEyZjI4NjczOTYzM2Q4ODA3IHJlbGVhc2UyNi1tYWludAorNzY1NzAgOWZkOGU5NWI0ZmNlMTdkYjM1NWVmZmMxMTlkMjcxOGNjMjE4MDQzYiBweTNrCis3NjU3MSA4M2M3MDJjMTdlMDIxOGRmOTY1OTJlYjI3YTk3YThiYTYzYzc0N2UwIGxlZ2FjeS10cnVuaworNzY1NzIgOTE2YTNkMzUwNzQxYzdmNmNmZTg4NjA4ODJiNDA5MjliZGFkMWIwYSBweTNrCis3NjU3MyAxNDljMWE3ZTcyYzE1NDcyZjI5YjkyODBkY2Y3OGZjOTU1MzI0YmExIHB5M2sKKzc2NTc0IDRiZWQ3OTZlZTBkNzg2OWFkMmZmMDAxMTdlZWQxY2Q5OGIzYTE3ZGUgcmVsZWFzZTMxLW1haW50Cis3NjU3NSBlMDZjM2Y2MmZjYzk4YzAxMjZhMjJhMGZkZjFiYjY2ZTJhMTVkOTVjIGxlZ2FjeS10cnVuaworNzY1NzYgODMzNTJlZDkyMjlhM2Y2MzBhMjM4MTIzMDdjOGE5NDdlNWZkYTlmNSByZWxlYXNlMjYtbWFpbnQKKzc2NTc3IGIwZmM1NGM1ZDIzNGY3YTQ5MGY5NTUwNDlhZjg3NTA1ZTI3YjI5MjcgcHkzaworNzY1NzggZjJlMWFjNzUwZjExODUzNGVkMDI4NTkxM2VmMzVkMGMxNTU4OTY0OCByZWxlYXNlMzEtbWFpbnQKKzc2NTgzIDkzMGFlZGVkOTAwZGM5ZDdhNzM5OWEzZGQ2ZjIxMzg3ZmM5YWFmNTIgbGVnYWN5LXRydW5rCis3NjU4NCA5ZmI2ZDU0MTRkZDg4MmU4Mzk5NjU0ZWUwZTAwM2Q3YTExYWNjOTY4IHJlbGVhc2UyNi1tYWludAorNzY1ODUgMGVhZjVjOWVkZDcyOGYyN2M5ODgyMzljYmMyMmM5MjM5OTIzZDhhYiBweTNrCis3NjU4NiA5MTVhMDQ0YmU4MzRjYWQyZGQ0YzQ1YjEyZmNkYzg1YTUzOGQ3ZDE3IHB5M2sKKzc2NTg3IGU4ZDU1MGE4OWYwYmExMWE2NTM1ZGI3MWE4ZjMzNGRjZGI0NWEwZGYgcmVsZWFzZTMxLW1haW50Cis3NjU4OCBhOTQ5MjU1ZDQ1MGZiYTE2NmRkMGVhY2FhNGE4ZTA1ZTlkYzc2ZTQ3IGxlZ2FjeS10cnVuaworNzY1ODkgNmNkNDVmNWNhYjU4YTczYzk0MzZiMTY3Mjk0ODFjNGQ1NTA5ZjFiMyByZWxlYXNlMjYtbWFpbnQKKzc2NTkwIGU5NjA2OWExMzI3ZjkzNmI1ZTc4MWY0OTQyMWY0MGYxNTk0ZjY2MTkgcHkzaworNzY1OTEgMjE4YTdlYjQwZDI2ZTM4MzRhMDI1OWE4MTljMThhOGUyNjNjOGZkMyBsZWdhY3ktdHJ1bmsKKzc2NTkyIGQ1MTAxMmZlMDliMzQyNjIwNmQwMjNhZTM4NzU0YzU0YTY1NzU1MWUgcmVsZWFzZTMxLW1haW50Cis3NjU5MyA2YmRlZGUxOGZjODBkZjZkNmI2ZjhiN2E5MGU3NWUwNjViMjljZGRiIHB5M2sKKzc2NTk0IDllNTFhMTQ5OThhMmE2MDFiYmNhMzUzNTkyODc4Mjk1MTdhNjI5OTQgcmVsZWFzZTMxLW1haW50Cis3NjU5NSBmMzdmNmI5YjIyNGIwNzkwNWVkOGUyOGU1ZGJmNGNmNjgwMjIxOWUyIHB5M2sKKzc2NTk2IDc0YWM4YzEyN2E2ZmYxNmVhMDFhZTExZWVhMDg5ZDdmODM1NmFkMDcgcmVsZWFzZTMxLW1haW50Cis3NjU5OSAxZmYyYzNlZGMxM2NlODcyZmIxYmNmNmY2MGQ1ZDIzNzE2ZTU2OGYwIHJlbGVhc2UyNi1tYWludAorNzY2MDAgMjgxNjY1MGQ3Njg4YzMwMzg0ZjczZTk4MTUzZTg3OTZmODgwNGNhYSBsZWdhY3ktdHJ1bmsKKzc2NjAxIDg0ZTNkMzZkYTRjMjcwYzZlZjM2ZDM5OGQyODQ4OWM0N2M4NWQ4MmEgdGFyZWtfc3lzY29uZmlnCis3NjYwMiAwY2Y5OTE1OGZhNjM2MDAxNzI3ZmY4NWRiYzAzZmRhMWMwMzUyOWIzIGxlZ2FjeS10cnVuaworNzY2MDMgMzE1ZTZhZTY0YmVmN2FjZDg1MzllMDg0ZTdmNjg1ZTRkY2M2YjUwMCBsZWdhY3ktdHJ1bmsKKzc2NjA0IGZmMmFlZmM5Nzg4MWYyNTg0NDM1ZmExMTVmYjhjNjM1ODQ2YzFjMzggcmVsZWFzZTI2LW1haW50Cis3NjYwNSBlMzIwZjg4YTY1YzlhY2IzODlmNmI4NGRiOTk5MDkzOGUxY2VkMDVjIGxlZ2FjeS10cnVuaworNzY2MDYgZGRhYjNkYTk0NzNkYjU4NzYyNTNjMGIxN2Y4MmQ1NjAyYzVkYjA2NyByZWxlYXNlMjYtbWFpbnQKKzc2NjA3IDg4OTZjNDg0NzQyM2Q1OGJkYzFiZGQzM2MxYjQyZTFiZGVjNmZhYTYgcHkzaworNzY2MDggMGE2MTM3OTQ0ZTYxYTA3NjdkYzZhNWRmZGZjYmVjNzRmY2E4YTdhNCByZWxlYXNlMzEtbWFpbnQKKzc2NjA5IDY1MzZhMWNkNDdjZDNlZTgxZjU3NWUzOTc0Zjc4NjgzNWE2M2NmN2MgcHkzaworNzY2MjMgZDk5ZWY0NjRlZjMzZmVmNjMwY2E4NzJmZjdmODdmNDUzOTcyZTgyZSBsZWdhY3ktdHJ1bmsKKzc2NjI0IDRkN2NkZjdhNmM3NWRiNWY3N2FmOGJlZmEwMTRlMmZiNTRlZjBlNzggcHkzaworNzY2MjUgMWIyYWZjYzNjY2YzOGE4M2I3MTUzYWJhOGFlZTNjZmYwMGNmOTFiZCBsZWdhY3ktdHJ1bmsKKzc2NjI2IDVkMmM5ZDg4NzdkZGI5YTNhZWIxNTEzZGU2YTUxZGQ0ZjY4NWEwNWIgcHkzaworNzY2MjcgMjgwMzY5Njc3NjAyYzZiZTY5MzZmMDhjNDQ0ZjEyNTg3ZTZiYzg0ZSByZWxlYXNlMzEtbWFpbnQKKzc2NjI4IGNmOWM2NDlkY2M0ZjRmMjE5MTRhYTUwNDA5NDJiODhkODBkZDUxOWIgbGVnYWN5LXRydW5rCis3NjYyOSA4ZjZlZWU0MmY4MTBkY2Q2MzBjYzRjY2JmNjM5MWI0ZGM1ZmNjNWMwIGxlZ2FjeS10cnVuaworNzY2MzAgY2JiNmU5MmMxYTBkZDI1NDE5YjQzNTM5ZjA4MTMxYWQwM2VmNmU3MyByZWxlYXNlMjYtbWFpbnQKKzc2NjMxIGQ5Mzk4YmRkNDEzYTAzMjUzMmE1ZjQzNGJhYmY1Nzk5MDg4M2E5ZDggcHkzaworNzY2MzIgMGZmNDcwMzRjNjkxY2FiM2MyN2I4YjY1NTk4ZmUyODQzZGE0YmE5NSBsZWdhY3ktdHJ1bmsKKzc2NjMzIGQ2OGE2MDA1MmM2NjUwNjVkNzU2MDJlN2MxMTcxZGIzYWViNDI1MzYgcmVsZWFzZTI2LW1haW50Cis3NjYzNCBiNDA1MTJjZWMyZDZjOWYwMzdkMzdlY2JlYjc2N2UzYWViMzNmYjNiIHB5M2sKKzc2NjM1IGFjZmQ1NjE1YjUyYzE0YzgyY2ExNDhjOGUxMDZkYzI0OGY5ZTU4ZDUgcmVsZWFzZTMxLW1haW50Cis3NjYzNiBhNTRjMTk4MDJhY2NjYWZhOThkMWY1Njg0YTg1M2JkOGM2ZmQyNGFlIGxlZ2FjeS10cnVuaworNzY2MzcgZTlkYWMzZWZmMzE3NDNiNTE1MmQ4NzRlMDllODU0YWFkY2E3YTFlNyBweTNrCis3NjY0MCBkN2NjOTAxN2FjNGM2NjAxOTVlMTU0MzMyMjdiZGExNDFlZTAwMTZkIGxlZ2FjeS10cnVuaworNzY2NDEgMGFmODE4MWRhNWNlNTE1MTYxOGNhOWY1ODM3MWIyMzBkZGNiOWViNiBweTNrCis3NjY0MiAyNjJhMmNlYWYwNWYxY2RkNmVlODc2ZDUyZTg4YmEyYjUwNWUyYTdlIGxlZ2FjeS10cnVuaworNzY2NDMgMTVhYzMxOTFmOWJlMDVhNDViZmUwN2U3YmQ2MjVjYTBjNmZlNDI4MyBweTNrCis3NjY0NCA4MTgwOTI1Yzc1YmE1MTljYjQ1NTE5NWNkNDk5Zjc5Yjk0MDRiNDJkIGxlZ2FjeS10cnVuaworNzY2NDUgYjc5ZDA0MjBjMjA0MGQ4MmQ3ZTg2NjdhOTc2NTgyMzcxNjU0ZWJmNSBweTNrCis3NjY0NiA1YzY4MWVjYzk5NjdjNDFkZjllNzdlY2M1NDQ5NzUyMDU3ZjdkMWM1IHB5M2sKKzc2NjQ3IGI2MGYyYjJiOWMwNDU0ZDM0MWVhYmUzNTE2MzJiZTRhYWU0MGE3ZDAgcmVsZWFzZTMxLW1haW50Cis3NjY0OCA3NWUxYjhjMDVmNDNkNGFlNDJkNGFlMGY0OTFmNjU0NWNhY2ExYzQzIGxlZ2FjeS10cnVuaworNzY2NDkgOTE3MDU4ZWVhNDQwMjQ5OWNmZjI2NDgxN2Q1M2RhN2ZlMjEyMGU0MiByZWxlYXNlMjYtbWFpbnQKKzc2NjUwIGZkZjdkMGVjOWQwNDFiNDUxYzViMTYwMWQwOGNiMGVhMmYwNTdlZGUgcHkzaworNzY2NTEgYjVjZDNkMmVjMDI3NmQyNDkwMzgyNjViMGI0ZDY4MTY5MGQ2NTY0MSBsZWdhY3ktdHJ1bmsKKzc2NjUyIDk2OTU0ZTdkZDliNmUyMWM2OGU1NTUwOGY4M2FkMDNmOTY2NGIyNjYgcmVsZWFzZTI2LW1haW50Cis3NjY1MyAxMTQzNGI2MmQ4Y2Q4MDYyZmVkYTE1OGNmZjM0ODBiODRiOTNlYzg5IHB5M2sKKzc2NjQ3IGVmOWY0MzJlNGQzOWRjZDk0MjJjYWFiMzkxOWE2ZWZjNDEzZGUyYWIgcmVsZWFzZTMxLW1haW50Cis3NjY1NSAxZmExODU0MDMxYWEyYTQ2Mjk2NjYzODE1OTQ2NDc1ODZiODc4OWNkIGxlZ2FjeS10cnVuaworNzY2NTYgZjA0MmRiNDM0NjM4MzkyYzkzOTc2NTQ0ZGE4YjdmMzVlYzdkZWE2ZSBweTNrCis3NjY0NyBkMDBlYzI2MGQ2MmFhOWM5YjFjNDA0MWIwM2UzNzZjNWMwMjQzNjgwIHJlbGVhc2UzMS1tYWludAorNzY2NTggYjhlMjkyMzY5ZWE4YjgyY2YxOWU1YzI2NTJlMzg5ZWM2NGFjYmRiYSByZWxlYXNlMzEtbWFpbnQKKzc2NjU5IGQzMWIzMzUwYWFkYmU2MzBlMGEyNjI3YzEyYjNjMGViZDM2ZjViN2UgbGVnYWN5LXRydW5rCis3NjY2MCAxZWUxZmE3YmVjZjJhZDIzZWUyOWIyMWI0MTU3M2JjNDgzZjA3MjQzIHJlbGVhc2UyNi1tYWludAorNzY2NjEgNTk4ZGU4ZTZjNDhiMzQ2YzJlNmZlODM1NjVmYjQ0NzIwMzNmZDMwNSBweTNrCis3NjY2MiA5ZGY0ZDViNTI2MDljZmU0ZGI1YTBjZDc0YmEyM2VlYjQ3ODMwMzRiIHJlbGVhc2UzMS1tYWludAorNzY2NjMgNzMzMTM4ODU4MTU3NGU3ZWJiMzUwYjRjYjI2ZjU3MTMxMjFkNzQ5ZSBweTNrCis3NjY2NCAzZWM2YjUxY2RiZGRiYjcxNjNmM2E5ZDZmZTM2NDE4MjY5YTNlODUxIHJlbGVhc2UzMS1tYWludAorNzY2NjUgMDQwYzM4ZWQyMjUxNWY5NzM0Mjg3MTVhNWYxNDQzZDc1YTg3NmNmYyBsZWdhY3ktdHJ1bmsKKzc2NjY2IGQ1ODdhNGU1YmE1YTU5NDkxZTI1MDA5ZmIzOTFlYzJhOTYzMDczN2MgcmVsZWFzZTI2LW1haW50Cis3NjY2NyA3M2E5MTI1NzAzYzMyYWMyNDYxM2ZjOGY4ZDYxOGJiMWFjMGM3ZGE0IHB5M2sKKzc2NjY4IDU1YzgzMmJkMzIzMzNhMWFmMDAxNzk2ZTljNDU0MDgxZGRkMGIzZmYgbGVnYWN5LXRydW5rCis3NjY2OSBkMzA4MDI5ZTlhZDIyYjViOGZhNDg5MTE0NDY0NzMxMDA0Nzc2M2JjIHJlbGVhc2UyNi1tYWludAorNzY2NzAgMGZlODk4NzVlZGVmMzQ3NmRjMjRhZmUyOWViNTNiMDYwZmIxMDAxMyBweTNrCis3NjY3MSAwMTQ4Zjc2ZDZmY2RmZDlmMjUxOTZhYWEwMzE0YWE4YTczZDFkZmE1IHJlbGVhc2UzMS1tYWludAorNzY2NzIgNmJiNjNiZTcyOTljYjYzY2JlNDIwZDMwOWNiNGNmYmUzMWI0NDIyMyBsZWdhY3ktdHJ1bmsKKzc2NjczIDRkNzQ0NWNhMzA1MTRlZmY5NWNhOTI2NGJjYzZjMzVmN2VjZTU5YWYgbGVnYWN5LXRydW5rCis3NjY3NCBiNDEwN2ViMDBiNDI3MWZiNzNhOWUxYjczNmQ0ZjIzNDYwOTUwNzc4IGxlZ2FjeS10cnVuaworNzY2NzUgYjllOWQ1NDBjOTBkMzEyOTZiNDViMmJmZDFiNTc5MTQ2ODBhYjZiNiBsZWdhY3ktdHJ1bmsKKzc2Njc2IDM2YTBkZDIxYzViNDNkOWFlODY5Y2MzYTU2ZDQwNzdhMDJkYTliOGUgbGVnYWN5LXRydW5rCis3NjY3NyBlMTlkZTk0MzNhNGJmZThjZmEzODZjMWJiODVlMDc0ZWI5ZDA0YzUzIHB5M2sKKzc2Njc5IDI1NTMyYzk5MzJkZmZhN2Q5MmU0Mzc3YjUxZDc1YjZmOWI3ZmU1MzIgbGVnYWN5LXRydW5rCis3NjY4MCBlYWIxMjNkYzEwN2Y2NGRjMmZlMTFmMjczZGVmNzhiMTg0NDRkNDU0IHB5M2sKKzc2NjgxIDFjOTJmYmIzYmFmMjZhYzVmYmVhNWY0NzU0M2FiODc1OWEyZGQyMjUgcHkzaworNzY2ODIgYWQxNDU1NTgyMjZiODdhZWM3MDJmMDk0OGFlNjExOGEzMmZmZDQzNiByZWxlYXNlMzEtbWFpbnQKKzc2NjgzIDY4NTY1ODE3YzE3Zjk1YmU0NDFhYzdjOTA2MmZjNTViMTIyODEyMGMgcmVsZWFzZTMxLW1haW50Cis3NjY4NCA2YTQ4YTA5MWMwZDM4NmM5NDZhYTk0ZjA2ZDZiZGRkOGI5ZDdmNmFiIGxlZ2FjeS10cnVuaworNzY2ODUgMWMyZWNkNTlkNjVhZjk5ZDc1MDQ1MzZlNmJmODE1OTdjZWExMmUzNiByZWxlYXNlMjYtbWFpbnQKKzc2Njg2IDllNzUxNjAxZjUzODI3ZTBlYTdlMzEzMDNmNWY2YWZjNjM5NDBmMGMgcHkzaworNzY2ODcgNTY4NjE4YjVmNmZkNWQ0NTVjZDA4ZGY0YTJiNGRkYTA3ZjI3ZGRmNiByZWxlYXNlMzEtbWFpbnQKKzc2Njg4IGE2YjFlNjk1OTM4MmUzNWY0MGMxOTE1OTdlZDNkYmM4MjgxNDA2YWEgcHkzaworNzY2ODkgZWVhODAzZDIzNWQzNDFjYzViYWFiMGE4N2RmYzdmNzAxMzg4ZTVkMyBsZWdhY3ktdHJ1bmsKKzc2NjkwIGJlMWNiYzE1ZDlmNTFjY2NmYWNjZmE3MDE2NDI2YTc3NjZhYzFlODggbGVnYWN5LXRydW5rCis3NjY5MCBmOWJkYmNjOGQxZThlNmVjOGM0NTgwOWYyYmQ0MDM4ZGJhNDYyYmEyIHB5M2sKKzc2NjkxIDYwN2Y1MThiZDNjZmI4MGIwZmQ2YWM3NDc2YmU1YTE1ODM5ZDA2OTUgbGVnYWN5LXRydW5rCis3NjY5MSBiYWM4ZWEyYjZkYTM1ODg0ZWFlOWFmYzEyOWI3ZWEyYzE5NmViZGY5IHB5M2sKKzc2NjkyIDg5ZjZhNzU0NjJiMjdlZGIxNTEyMGE4ODBmYjZhMDA5NTMwZjdjYzIgbGVnYWN5LXRydW5rCis3NjY5MyA2ZWY0YmNjNGE0NTAyMTY2YjZjODM0YjJiNmIyOWExZWUzMTE1Yzc2IHB5M2sKKzc2Njk0IDU2ZmNlMTg4YzZiZTA3ZWZmOTQ4YmE1NjVjMTMzNmY1Y2IwM2VlYjAgcGVwLTAzODMKKzc2Njk1IGMwZjhlNGEyM2RkZjRiOTQ5NTI0YTg1NWQzYmEzMjJiOGIzNjIwZGEgcGVwLTAzODMKKzc2Njk2IDY4NTUyMmM2ZjMwZmJlMWIxNjUzZmEzYzQyZDdjZGJkNWQxOGVhMjUgcGVwLTAzODQKKzc2Njk3IDljNTk3YjBhNmE5YjcxZjg4MDNmNjRlMzc4YmRhZjRkNDc3MGZjYWYgbGVnYWN5LXRydW5rCis3NjY5OCAzNWYzYTE5YzQyNjVhNzZjODJhOWJmZmYwYzlmZTdmYmE1YjQ4MjY2IHB5M2sKKzc2Njk5IGY1YTQ0N2IzZjI2ZWJmNDk1YmQ1NzFjZjdlOGY1OWE3OTkwNTk2ODEgcmVsZWFzZTMxLW1haW50Cis3NjcwMSA0NTA4MTg2MWVmNzRhZmY4NjhmMDFlNjliYTZhOGJhZmM3NDU3YTFlIGxlZ2FjeS10cnVuaworNzY3MDIgMjVhZWRlNjJmYzE3MmE2Njk4ZWMwMzY2MmQ0MjhjODJjODFmMmRkMiBsZWdhY3ktdHJ1bmsKKzc2NzAzIDI3NTA5NzNlMzg5M2M0M2JhOGIxY2I0YTA1ZGUwZTNiYzNlMDRiM2QgcmVsZWFzZTI2LW1haW50Cis3NjcwNCA5ODg3OWM4ZDUzZjE2NWRjOGM4MDBkOGQ4NGNkZmUxNjAzZjlkYjVmIGxlZ2FjeS10cnVuaworNzY3MDUgNTFjNWM5MTJlYzNlYjQyZTE2OWIwNThmZDU0MmFmYzgxZjg1ODM1NiByZWxlYXNlMjYtbWFpbnQKKzc2NzA2IGQ5YjRmNmVhM2UzOTc1YjNiNDlkODVlZmU2NDY4Y2JmNGZhNjhkMTggcHkzaworNzY3MDcgNzY0N2IxNGVmZTcxZmE5MzY1ZmI0MmUwOTFjZWFlYTlhODM0MmE0NyByZWxlYXNlMzEtbWFpbnQKKzc2NzA4IGRiMjhhZWIyZmI3YTdiYmEyMmM2YjZjNmUxODkyOTMwNjIyOTNlYzUgbGVnYWN5LXRydW5rCis3NjcwOSA0MDc0Njk1NmIzNzkyYjM1Nzg1M2MyMzQ4MjIyZjJiNzEyZmFkOWE5IHJlbGVhc2UyNi1tYWludAorNzY3MTAgNjgzZDVjOTdlNDc2ZGU0OTlmZWNmODZmOTA0YjQ4NjVjNDkyZmFlYiBweTNrCis3NjcxMSA2ZWZiNDZjMmIzYzNhZGRhZTJhNWIzNGI5MDhiYmJlYmFkOGI4OGZlIHJlbGVhc2UzMS1tYWludAorNzY3MTIgMjRmZmIwYTNhZTRiYTkzNDY4N2RmY2M3MGUwMDM0NzQ0MWNmNzdiZSBsZWdhY3ktdHJ1bmsKKzc2NzEzIDQwYzM2MmE1OGU3ZjBhYTEwNDc1YWQxNmZiZTM4ZWNmNjUyNWUwMWUgcHkzaworNzY3MTQgY2YwYzY5YmUwMTFhNTg3Y2MxY2E3N2RjNTQwNzcwMzkyNzNiZjFlZSByZWxlYXNlMzEtbWFpbnQKKzc2NzE1IDgzYTc2MTkzOTk3NTMzYTI3NGQzYjkzMGI3NTg2ODBmMzEyNzdkODIgcmVsZWFzZTI2LW1haW50Cis3NjcxNiA4M2MyYmYzMTkxZDg1YTQ4YTAxYTg0ZTg2MTg0MjllYTZmN2NlMjRjIGxlZ2FjeS10cnVuaworNzY3MTcgNWI4NjgzYTk1ZWFlYzY1ZjAzOWU3OGNkMTY1MzJkZTlkMDUzZDYzZCBweTNrCis3NjcxOCBlNzI4YWU4OWFlNjlkODhjODVkMzA5Njk0YmQwNTZmYzJiZDNmNjZhIGxlZ2FjeS10cnVuaworNzY3MTkgNWU4Yjc0NDlmOTYxNWMzMDdkNWZiMjFjYjZmMWYxMmQ2MGIyYWZiNCBweTNrCis3NjcyMCA2YzY0MjU1NjM5MTgyODI4YjY2MGZhYTEzZWIwMjE3YzQwZmQ4NzE2IGxlZ2FjeS10cnVuaworNzY3MjEgMmM1MmQ0ZDNlNTRhZWQ1YzQ3NmJhMTlmZTQ3MDJiOWJhYjkzNjg5ZCBweTNrCis3NjcyMyBlNjM0NzAzOGRmOTc2ZmNjNDNhMDhkNzBlN2E4YWNmMmVmNWUzZWEwIHB5M2sKKzc2NzI0IGNjYzU0MDZjYjM4MWRmYjk1NWY2YmZkZTJiN2JmMDgwNWY2NTY1MmMgcmVsZWFzZTMxLW1haW50Cis3NjcyNSA3MzhiMzliMTJkYzhmMDUwNTVkYmFjNDNjOWU3MDQ1MjMzZWI5YTY1IHB5M2sKKzc2NzI2IGVmZWFiZWU2ZTA2MWFjNDk5M2E0MWNiNzdhMDVhZTY1MzZkMzdmMDIgbGVnYWN5LXRydW5rCis3NjcyNyA3NTBlNzVkOTMwMjE1NTUwZGRmY2E3YTI2NTFjNTg4OTczYWZkZTBlIGxlZ2FjeS10cnVuaworNzY3MjggMGE3NmFiM2E2NzNjNmZkNmUyMGM5MzQ1YjEzMTAwYTc3YzA4MzM0MCBweTNrCis3NjcyOSA4MTYzMDNhMDc3NjI3NzhmZDEyZTVkMDkwZmRkZjliNDYxZDY1OGMxIHB5M2sKKzc2NzMwIDI3M2VmMDlmZTgwNDhlMGQ0Mjk5MTJjMWQwZDE3MzBhMzMyMTdmMmIgcHkzaworNzY3MzEgOGI4YWVlMjFkODVlNmE5MmRlMWYwZDMzZWNmZTE5ZDE5ZjI4YTg1ZSBweTNrCis3NjczMiA4OTc0YWI2ODViYWUwNjQwZTBjZDU2MWZkZWJjZmM1NDAzZDVlNjI0IHB5M2sKKzc2NzMzIDE2NjkxYmM4YjE4OTRjNDg0ZDcyYjhmYTQ4MGNjODZkN2IxODllNTggbGVnYWN5LXRydW5rCis3NjczNCBiYzcxNmQ4ZjQzNDVkNmE0MzlmMjY2ZjY4M2M1YTI0ODRlOTgzOTYxIHJlbGVhc2UzMS1tYWludAorNzY3MzUgYjVhNGFjYmVhYWExNjFhZWYyNTAyNTA3ZTZlOWI1MzNlYzZkMzFjNCByZWxlYXNlMjYtbWFpbnQKKzc2NzM2IDU3YWU1ZDQ0ZTczMWZiYzI0NGE0ZDVlODVjZmQwZGIwODNhOWFlODIgbGVnYWN5LXRydW5rCis3NjczNyA4Mjc2ZDAwZDMxMDBmNWFmNjYxNWM1MjFjMTlkMjZmMTZjNjdjMzE4IGxlZ2FjeS10cnVuaworNzY3MzggOGI2Njg5YzBlNWE2ZTZjNThiOWZmNTNkZDgzZWE2ZWQxNWNkYmQxMCBsZWdhY3ktdHJ1bmsKKzc2NzM5IGIyN2Q5NDYzODllNzY3ZTY0NjcxZTVhNTA2ZWUwMmJkMzBhZjM1ODggcmVsZWFzZTI2LW1haW50Cis3Njc0MCA2MzE2OWNiOWU0OWEwMWYxMWM2NGE4NTM2NTg1ZmY2YTk2MDg0MTVhIGxlZ2FjeS10cnVuaworNzY3NDEgOTJmN2M0ZWU2YWFkZmM4Y2YxMzA0NzEwNjEyYzc3MGI0ZTI2YTRhMCBweTNrCis3Njc0MiA3NTJlODYwOGUxMzFiNzFkYTJmZDFmYWI5Zjc0ZGNjMmZkNjBlMWU1IHJlbGVhc2UyNi1tYWludAorNzY3NDMgYTQ0MDljZjZiNTU2NGE2YmUzZGI0ZjQ5ZTBmZDIyYTQxYWMyN2JlMiByZWxlYXNlMzEtbWFpbnQKKzc2NzQ2IDkyMTFhNWQ3ZDBiNDI0Njg2MTVlNzI3MjRlMzQ3OGQ5ZjY0ZGVjNDQgbGVnYWN5LXRydW5rCis3Njc0NyAzNzRkNGU5YWFiMDUyYjVmZjljNTc4NjAwZjk2Y2Y0ZGU2ODhjOWNkIHJlbGVhc2UyNi1tYWludAorNzY3NDggNmY5YWQwNDE4ZjcwZjE5Njc5OWFhMDMyMGI0OTE1ZTM1MmM1ZGU2NyBweTNrCis3Njc0OSA0ZWUyMjY4OTBiNTk5MDlkNzhjMDk3MDlkYzI5MjcxOWMxYjczZTI4IHJlbGVhc2UzMS1tYWludAorNzY3NTAgZDI4ZmJhYzM3ZTIwMmY1N2ZjMTgyNzRkZTZjMzgxNzQ3ODlhZDAyMSBsZWdhY3ktdHJ1bmsKKzc2NzUxIGUyOWE0NTMzMWRlYThiNTQ4YjNlZDM2MmVlNzhlYTE4NzAzMGExMmMgcmVsZWFzZTI2LW1haW50Cis3Njc1MiA2NmZiMWUyNzYyZDM0MjNkN2YzYTk2YTdiYjhkNTFhNzg2OGQ2YmU1IHB5M2sKKzc2NzUzIDc1NjJlMzc2ZDliNTUxZTdhM2Q1MGY4MzcwNjc5ZTcwMGRlZWRjMTYgcmVsZWFzZTMxLW1haW50Cis3Njc1NCBhZTkzOTYyNjA4MzU5ZWRiYzI5MzFkOGNiMWRjNDc3OTk4ZmM0OGU4IGxlZ2FjeS10cnVuaworNzY3NTQgYTZiZjA3ZmZmNmZjYmZlOGQ0OTA1MTg2NzZkOGJiZjcyYWJiMjJmNiByZWxlYXNlMjQtbWFpbnQKKzc2NzU0IDBjZDdhYzhjNmJiM2JiY2RlMDJkZDcwYmE5ZTJjOTU5ZGVkNmU3MjkgcmVsZWFzZTI2LW1haW50Cis3Njc1NCAxOWI0ZTFmNjQ0M2UxOTk5MzMwYmJhMzBiZmZlMDU5NGVjZGIxMzViIHJlbGVhc2UyNS1tYWludAorNzY3NTQgOWI2YjFjMWMxYjMzMGYxMjE5MTQ0YmM1NGI5YzNjNjczODI4ZmU0MCBweTNrCis3Njc1NSBjYjIyZWFlZTg2YzkwYzBmYTMyMjlmZGRiZTBiNTE2MGQ0ZGU5Mjg1IGxlZ2FjeS10cnVuaworNzY3NTYgOWI4M2JmZWZjNWU3ZjZmYWVlNDg1M2FmOWNmNGEyOWZhZTMxNmRlNiByZWxlYXNlMjQtbWFpbnQKKzc2NzU2IGJiYWI2MDJkYTExNDlhNjk3MmI3NTY2N2Y5MTUwYzQxMzkzNWMzYzAgcmVsZWFzZTI2LW1haW50Cis3Njc1NiBlNzAwNGRhMjlmNTEyZGRiNDYzYmQ0NzFlN2RhZTE3ODdhN2Q5NTQxIHJlbGVhc2UyNS1tYWludAorNzY3NTYgMzc4YmI3MDViZTkwNGJiMmRkOGRjYTRiN2Y0MjRmZGY1MmVhNjU5MSBweTNrCis3Njc1NyA3Y2I3M2U3YzE3NmQzMGNkN2I3MzlkOWNhOWJlMmU0NjU5YzAxMDBkIHB5M2sKKzc2NzU4IDE2Y2QyMWJhMjY4YTQ5NjlkZmFjYzY3MjA0MmE0ZTkxNjkyZDRmNzEgcmVsZWFzZTMxLW1haW50Cis3Njc1OSBhZWU4ZWI3ZjVmMDIxZTYyOGEyMGI1N2NjNTFmYzdkN2JlNGVjZDk1IHJlbGVhc2UyNi1tYWludAorNzY3NjEgMjU2ZTlmMDBkMDYxZWY4ZDU0NjRlNzBjYTkxZThlNjRjM2Q4M2VlYyByZWxlYXNlMjYtbWFpbnQKKzc2NzYyIDRkNTFhYTU3MmU4YzlhYmU5ZjllNmI5NjVmYjZmNDMyYTk3ZWMyNDYgcmVsZWFzZTMxLW1haW50Cis3Njc2MyAyZmZkMTlhMjI0ZDQxZmE0NjMwZTQ0M2VhZGI1NGE4NGFmN2ViZWFiIGxlZ2FjeS10cnVuaworNzY3NjQgZDk3ODU5MDljM2E3MmI3NTZkZWYyNjk2ZDgxZjE2MGQ0YmMxM2MwOCBweTNrCis3Njc2NSA3OWUwZGJiNmM0Yjg4Yzg2NDE3ZmU2OTlkZGZmY2I3N2Q3YThkN2EyIHJlbGVhc2UzMS1tYWludAorNzY3NjYgODY5MGE3ZWZmODJhMWUzZDhhZDU3ZDBkMGQ3YzFiODViODYzOWQ4MCByZWxlYXNlMjYtbWFpbnQKKzc2NzcwIGFkOTE3YjhmZDY0Y2Y2MDE0NzIxM2NkODc4ZWU1ZWUzZTE4OGI4ZGYgcHkzaworNzY3NzEgYjdlYzRhZmNmYzNmMGJkZjg4MGIzNWIxYmYzNTNlOWQyMjg0ZjYzNyBweTNrCis3Njc3MiA3M2E2YjliMDU0M2Y0YzgwMTMxNTI1MmYwZTIwOTE3ZTAxMzE0M2ViIHJlbGVhc2UzMS1tYWludAorNzY3NzMgODA0ODU2OWViNTNmNWY3MWUxMjVlODI3YThjY2IxNDQ1NDEzYzhhZiBweTNrCis3Njc3NCAyMGI3ZGViNTNkNGU1OGIyOTRkNjhmOWU2ZDhlNWY1ZTZlYWU5YzMwIGxlZ2FjeS10cnVuaworNzY3NzUgMmI5MzRkNDY2OTkzZGQxYjcxYzhjYWEzMDk0MTJmODc5M2RhZWU3NSByZWxlYXNlMjYtbWFpbnQKKzc2Nzc2IDA4N2ZlNWZhMTEzYzFmZDEwZDliNTQ3NzliYjNhYThhYTkwYzY0NzMgcHkzaworNzY3NzcgZDhjNWUzODUxNWI2Y2RjNTIzMDk1NWNiMTkwMDI5MjA1Y2ZiY2ExNSBweTNrCis3Njc3OCAxNTU4ZGM2OWFhY2YyNmQ4NjBlYjdlZmM2Y2Y2MzM2NmM5ZTU3YjU4IHJlbGVhc2UzMS1tYWludAorNzY3NzkgYTc2OWE5YjM0ZmJjMmM1YWNhMmFjNzlkYzZjZWZjMDBjNWRjMmQ4YSBweTNrCis3Njc4MCA0OTM3ODBlYTM1Y2Y4MjFhYTdhODM0ZDI1MDYxYzExNWJkOGQ1YTY0IGxlZ2FjeS10cnVuaworNzY3ODEgZWQyYjY4ODNmYzk2NzM0YjFiYzE1MzdmMzMyZWNmMGNjZjFjNjM5OSByZWxlYXNlMjYtbWFpbnQKKzc2NzgyIDQ2YzIyOTc0MmM2NDIxM2ZmMGQ4YjRkNzRkMGEyOTRmZDlkNDdhNTggcHkzaworNzY3ODMgOGM0N2Q3ZDJhMDIzYjUxOTEyY2U5ZjJkZGQ0YzgzY2FjNzNkZDk4MiByZWxlYXNlMzEtbWFpbnQKKzc2Nzg1IDExNDIzNzE5YmFiYjQwNDVlOGUwY2U0YWRjZjQ2MmNjYTNhY2NkNWMgbGVnYWN5LXRydW5rCis3Njc4NiA0NjQ4NTFiZjIyZmRlYjUwMDc3ZTE0YTBhZTI4ZjNmZWMzNTJkZDEwIHJlbGVhc2UyNi1tYWludAorNzY3ODcgMmZkY2Q3M2MzMmFhYmI5MjZlNTA5ZmYzMjEyMDgzYWMwN2VlZjdjYSBweTNrCis3Njc4OCA1NDgzMzVjYjAwN2IxZmU4NzRmZWVlMGYyNGRjMzE0ZjE2OWU4Njg4IHB5M2sKKzc2Nzg5IDRhOWU0M2EzYjk4NTMzYWE3MDUwYzEyNGQzOTg3MGIwYTgxYWNkNWEgcHkzaworNzY3OTAgYzkxNWZmNTkxYTJmMzM0MWQ4YzgyYmFhYmJkYTBjZTZjZDQyNGNkYyByZWxlYXNlMzEtbWFpbnQKKzc2NzkxIDE2Y2VkZGU5YWYwMDkwNGM0NTBlMmQwYjlhYmIzYjFhYTgyYjE1MDMgbGVnYWN5LXRydW5rCis3Njc5MiBjNzA4N2VhMWMyMWRkZDNhM2VkNjExZTFiOTQ1Yzg5MzI5MGFmNzA5IHJlbGVhc2UyNi1tYWludAorNzY3OTMgZTdjOTRjYjcyNjc4OTkxYmFiN2JhNTI1YzBiOGRiYjAzNTkxMzY1OSBweTNrCis3Njc5NCBjYjI2Mjk5ZTBlNTI3Yjg4ZDVkM2Q0OTY5NWVjNDM4ODZiNjUwZWJhIGxlZ2FjeS10cnVuaworNzY3OTUgYzJlOTRlZjBkN2U1ODU3NzJmZWI2Zjg1ZGIzMmNkNmEzOWM3MTQwNCBweTNrCis3Njc5NiAwZGJlY2NkN2UwZTZmYWVkZDFmZDJiNjY3ZTcxZWVlMGRiNjJjM2IwIHJlbGVhc2UyNi1tYWludAorNzY3OTcgNDJlMzExYTQ3NmU4MGIxMDRiZjE2NTE0MTY1ZWFlNTAzMmYwMjdjYyBweTNrCis3Njc5OCAyMTVkZGZmMTk5YzFiNjdjZTc4MmVjNzQ2ZTE5MTY0NmY4OWQxNTRkIGxlZ2FjeS10cnVuaworNzY3OTkgMjdjNjNkNjUyNjIwOWE3YjgyYjgwMzUwZTNkZjk1YWI4NGVjNjczNiBsZWdhY3ktdHJ1bmsKKzc2ODAwIDEzOTJlMzZhZjFiMjZhMjNiMDdlMGMxY2Q5YWZiNjJjYjdiMmU2ZGMgcHkzaworNzY4MDEgNjA1Mjc1MWEwNGM4MjMyNzJhZWEzZWYxOWJkYWE4M2E2ZDFkYzAxMiByZWxlYXNlMjYtbWFpbnQKKzc2ODAyIGE3NGUwNGZjOTNlYjlkY2ZjZDMzMDI1OTkzMGQwY2M2ODU3YzQ1NzUgcmVsZWFzZTMxLW1haW50Cis3NjgwMyA2NTRjNjg1MzY5NzUxNDY1MjRhYmE0YzVlYWU5NWQxYjQyZGM2Y2UxIHJlbGVhc2UyNi1tYWludAorNzY4MDQgN2NjZDIyOGI4OTVjYzlmMDhkYjU1YzJlMGRjNGI5Zjc4YWI3NTBiMSBsZWdhY3ktdHJ1bmsKKzc2ODA1IDU0Zjg0NTU4YWQyYjJmNjcxMTA3NzQ2NDMxZmVkMmNmMGEwZDZkMDkgbGVnYWN5LXRydW5rCis3NjgwNiAyNGE4YTI5YzhhNGEwNDZlNjQ0ZjNmYTNmYjA2YzNhMjJjMTRkOWE1IHB5M2sKKzc2ODA3IDNhN2Q1NDA0M2FiYThlZjk4MDQ2OWRmMjkzMTQ4MWI0OWU2NmU5MWYgbGVnYWN5LXRydW5rCis3NjgwOCAxMjA2M2E3YjZhMmEyOWVkYmJkODhlNjgzMTUwMDM2OWM2YjQ4ZDFmIHB5M2sKKzc2ODA5IDM1ZGY2Nzc5ODljYjk1NTEwNGEyYjEwYmJmMTg4ZTM5Njk1YjI4ODggcmVsZWFzZTMxLW1haW50Cis3NjgxMCBmYzcwYzhkNzQzZGI3MmU2YTlkMmI4ZjQ4NWZmZTgxY2M4MDMyZGI1IHB5M2sKKzc2ODExIDYyMTA2YjZmNTU5NmM4OTNjNzZhNDg3N2M5YzRhZTRlOWEyNGI3MjggcmVsZWFzZTMxLW1haW50Cis3NjgxMiA3YzQyMTI0NGU2ZWE4ZjBkMzIzYmQwMzU1ZjRmNWQ5NTkyYWQ1ZDVhIHB5M2sKKzc2ODEzIDUzNmU0NmVkMTBhY2Y0MzYyMDA3YWYwY2YyMDhmNmYxZGJmODNjNjYgbGVnYWN5LXRydW5rCis3NjgxNCBiM2EzNjQxOTJjMGFkOTdjOGMzMDA2NDI4OGVjMDFlMzA3N2U2YWE0IHJlbGVhc2UzMS1tYWludAorNzY4MTUgYmM5MzQwOThjYWExMDFlMTgxOTk5NWUzNzFlMjU3YTMyYTczY2EyYiBweTNrCis3NjgxNiAwNTZmZmI4ZTE3YjNmNTRmMDk2MDZhM2ZmMDM3NjJhNzNjNWQyMjYxIHJlbGVhc2UyNi1tYWludAorNzY4MTcgZGQ1MzkxZDRiYjY4MGQ0Zjg0NDljODBkMmNkOWRhOTk4MDI2ZmU2MSByZWxlYXNlMzEtbWFpbnQKKzc2ODE4IDZiMjg1MjIxOTdkYjEwZTQ0ZDhjZTk2M2Q5OGUzODA4N2MxOTczMDggcmVsZWFzZTMxLW1haW50Cis3NjgxOSA5ZjM1N2M5NmYyNDZlODg0MDU0Mjc4NmRjZjBlNGZjYTBhNjVlNDFmIGxlZ2FjeS10cnVuaworNzY4MjAgNzJlZjNkYjVjNmIzN2IyODE0N2MxNjBkMDRkNTgxNGEzNzZmZGE2YSBweTNrCis3NjgyMSBlNWYyMDEzYjI5YTE5N2UxY2Y4YjNhZGYzZjEwNjllYjIzNWE1ZjI4IHJlbGVhc2UzMS1tYWludAorNzY4MjIgNmUxMzFlMDcxMzEwNWQwOWJhZDM0NGI4YzE1ZmVjYTcwOTA0NjhkYSBsZWdhY3ktdHJ1bmsKKzc2ODIzIGRhMWZjZTU0MDg4NWUxZDc1YWQ2YWNjYTQ3NTYyMjRlMjRkZDE4ZmMgcHkzaworNzY4MjQgNDBmM2I4YjgzY2M2YTNlOWNiYTVlYjRkZDM2YmI1ODI3M2U0MDY3NSBsZWdhY3ktdHJ1bmsKKzc2ODI1IDc3MDVhYzIxOGM4NzBiNTE1ZjNhNDBjYWI5NDg3OGNhNWVmM2QzOGIgcHkzaworNzY4MjYgYzBjODYxZDM4YzRmZGFlZjZiYWQ4ZWM0YTEwNDg0NTk0NTIxMWQ0MSBsZWdhY3ktdHJ1bmsKKzc2ODI3IDM1NDY3NzliMjFjNzA4M2U1Mjg0ZDQ5N2FhNWQ5OWYzYWNkZWI2YjIgcmVsZWFzZTI2LW1haW50Cis3NjgyOCA2ODI0OWVkODgwOWU4MTMzYzgzYTQ2Y2JlOTdkZGExMmFiNGE0YTcwIHB5M2sKKzc2ODI5IGJjNTVmNWQ1MGRlYzg3MGE5NDY1NzBkODIzYzY2YTAxM2M2NTk0MDMgcmVsZWFzZTMxLW1haW50Cis3NjgzMCA1MTAzZjY4Y2NhNjkwOTVlNzBjZDczNjQyYjAyZDhkNDFiNzMxZGMyIGxlZ2FjeS10cnVuaworNzY4MzEgMmI4ZjQ4NWIwZDAzOTdlMTI1MDJhM2M5MzA2MzIzNzBiYTdjZmY2NiBsZWdhY3ktdHJ1bmsKKzc2ODMyIDc2YmQ1YmRjZWNjZGZkOTY2ZWMyYjhiMGMzNjc2ZjFiMTA1YmY2MWEgcHkzaworNzY4MzMgZDJlMTQ2NTNhNDNjOTk1YzdmNjIyYzQxNTg1ZGVlZmVjODI5M2VlMiByZWxlYXNlMjYtbWFpbnQKKzc2ODM0IGQ4OTlmMjhkYmI4ZTk3YzIxMDk2MmY4MDBmOTM5NjQwNjI1YzM1OTIgcHkzaworNzY4MzUgMGVlZWE3NjU2YzIyZjAzMGVkMDFkNWYwM2NkZWE5NjIwZjI4ZDY1ZSByZWxlYXNlMzEtbWFpbnQKKzc2ODM2IDQ5YzY4YTJiMDU4NTJjNTQ5MTVjYWJjOTI3ZWE4M2M0NzRkZWEzZGYgcHkzaworNzY4MzcgYmMwYTZlNGNlMWIwYmJmMWUzOGQ2NmQzOTAyYTE1YjdiY2IyYWViYSByZWxlYXNlMjYtbWFpbnQKKzc2ODM4IDkxOWUyMTQyNzI2ZWZlMmJhMGJkMTU1NDQwNDc4ODBkMmE3YjdhMDAgcmVsZWFzZTMxLW1haW50Cis3Njg0MCBmYTRmMjNiMTgyZGU2NzkxYWJmZjg3YTU2MzQzN2IzNjYwMDI2ZTJmIGxlZ2FjeS10cnVuaworNzY4NDIgMTU5MmU4OTUxYjJiZDM1NDQ0NGI5ODgwZTIzNmM3MjA0YmRlYzhmMiByZWxlYXNlMjYtbWFpbnQKKzc2ODQzIDMyOWVmMjk0Y2MyZGI1NmQ0MmQ4MmQ4MjA5YzcxNmIyMDY2NGY3OGIgcHkzaworNzY4NDQgZTljZWJiZTlkZTVjMzFhZjkzMGMwYzFmOGNiNjhkYTYyYTRkMTk3MSByZWxlYXNlMzEtbWFpbnQKKzc2ODQ1IDk2MGU5ZTg0Y2E1OTc1NWM2YjVkZGFkMmU2OWRlMzcwMjE0Njc0YzEgcHkzaworNzY4NDYgN2MzYzAwZTc2YzI0ODhiNjZlOWRjMjE1M2RlNzQ4MTJhYTczNmQzZSByZWxlYXNlMzEtbWFpbnQKKzc2ODQ3IDY2NjQwZmM2MDdjYTA2MzU1ODhkNjA1MmY5YmNhNjUwOWNiYjcyMTIgbGVnYWN5LXRydW5rCis3Njg0OCBkODYyMDAwZjFiMDE1NTNmOTdlMjY3NmRjNjA0MzA4MzhlMGFhZjcwIHJlbGVhc2UyNi1tYWludAorNzY4NDkgMjRiNjg1MzE4NjMzYjNhM2UyOTM0ZWIxMGVkMmE4YTM4ZGEzYWI5OCBsZWdhY3ktdHJ1bmsKKzc2ODUwIGU1MGU0OWQ2MWZlYTVmMzQzOTBiMmI5OTdmODQ5YmZhY2NiMjJjOWIgcHkzaworNzY4NTEgYTliNmYyN2QxZTI5MGVjOTdjYzE1ZDU5ZTFmNTRiYzZjZWNhYzNkMSBsZWdhY3ktdHJ1bmsKKzc2ODUyIGMyZTRjZmJiMzk4Y2I4NWYxMWIzM2ZjZWY0ODVjODUzYjE4NTgxNmIgbGVnYWN5LXRydW5rCis3Njg1MyA5NDI4MjNkZGQ4MThmYzM4OTJiMTg4MGNhMzczYTBlNDM2ZmQ5MGQyIHJlbGVhc2UyNi1tYWludAorNzY4NTQgOTdhYmQ3YWFiYWRjMjhlMjg4MzRkYjYzZWY0OGUzMWZhNWFiMGEyZiByZWxlYXNlMjYtbWFpbnQKKzc2ODU1IDdlYjA1MGMwZTY1NDY3YzBkMWVmYTA5MTM5OTM4ZWRmOWIwMGFiNDkgcHkzaworNzY4NTYgMmJkMGYzOTE1OTM4NDBjNzYxYWJhYjk5Zjk2MDE5OGY3ZjRkZDI2NiBsZWdhY3ktdHJ1bmsKKzc2ODU3IDlmZTE1YzFmOTljYzliMGM5ZjJlY2FiMGYxNzIzNjBjNjk3ZDNhODggcHkzaworNzY4NTggNGZjYmUwZWE5YjMxNzgxMzg1YzU3NjU0NzQ4NzlkNWIyZjMxYTU4MyByZWxlYXNlMjYtbWFpbnQKKzc2ODU5IGJmNjljM2YyYjc3OGU0MDNjNDVlNTQ4M2FmNmI0YjlmZDU2YWU4M2YgcmVsZWFzZTMxLW1haW50Cis3Njg2MSBiMjA2YWQ4Y2Y1YmYyZTQ0NzVlNTZmMWZjODlmNzczZTZiYTQ5OTljIGxlZ2FjeS10cnVuaworNzY4NjIgMjJhMWVhOTBmYWE2MTc3Mzc2Njk5YTQ0NDYzOGRmZGM3NmIxODhjNyByZWxlYXNlMjYtbWFpbnQKKzc2ODYzIGI0NWNhMTFiOWEzZWM3NDhlYTRkYzBiNzU0ZmI1ZjkyNDA5NDRkMjEgcHkzaworNzY4NjQgNTRhNTAyZGIzYjhjZTBkOTNkY2ZhNmYzNjg5N2JjMWI0NzY3OTI4YSByZWxlYXNlMzEtbWFpbnQKKzc2ODY1IGIzNTZlZDk1NjRlNjhjMmMyMjBkOGUyMGFhN2QxYzY0YjZhNzE1MmQgbGVnYWN5LXRydW5rCis3Njg2NiAwYTFjMzljNWYxYjljOWU0MzEwMGJlMmNlYmIyNDZhYzJmMzBhMjczIHJlbGVhc2UyNi1tYWludAorNzY4NjcgYjE4OTY2MjBjMjk2ZDJiZjJjYWY4Yzc3MzRlZWE3ZmE0YmY0ZTJhNSBweTNrCis3Njg2OCBiMTNmNzE1MzlhYWMwMGE2ZGNhNGI4MWQ5YzZkYmVhMmMxN2VjM2NkIHJlbGVhc2UzMS1tYWludAorNzY4NjkgNjJhZmNmYTNmZTE4OGI3YjdhNDhmMzU4NTZjYWY2MWQ3NTVjMDg1OCBsZWdhY3ktdHJ1bmsKKzc2ODcwIGJiNjY0ZDIxOTM5YjY4OGRmYWZkNDBiNDk5NmM1NmEyYmEwYWMzNDkgdGFyZWtfc3lzY29uZmlnCis3Njg3NCBlMjZlZThkZGQyOWQxM2M3MDlhMTdiYWRlOTBjOTY5NDU4NTRkNDY4IHJlbGVhc2UyNi1tYWludAorNzY4NzUgNTFkMzdlZjQzZTFlOWRlNTgxM2M0ZjM4YjYyNGQzNTBmMGFhMGE1OSBweTNrCis3Njg3NiAwZDM5ZGFiMDU2MjJlN2IxZTMxYWNmM2I1YjcwODlmYTQ3ZGFlMGMyIHJlbGVhc2UzMS1tYWludAorNzY4NzcgMDE5NDkxYjI2YjM2Y2ZlNzAxOGJmNGQyMTNhNTIxZDkwY2NhODU4NiByZWxlYXNlMjYtbWFpbnQKKzc2ODc4IGQzNTBhZmMzMzdkYzY0YzQ3Y2ZhYzc4OTQ1ZmQ4OTI4Y2FlMjljYTYgbGVnYWN5LXRydW5rCis3Njg3OSAxZTgxNjRiNWYzNmRiYWYyYTU5ZTljMGYyYjFjYzFhZjhhYjM3MjIwIHB5M2sKKzc2ODgwIGU1ZGY5YTFkYWI2YTA4M2I1NWU2MGFiMTY4MzFjNGRiODE4ZDI0ZWIgcmVsZWFzZTI2LW1haW50Cis3Njg4MSA2NGY1ZjM3NWQwNzNlYzYyOWE4M2UzZDlhNDg4ZTRhMmRiMDJmYWY0IHJlbGVhc2UzMS1tYWludAorNzY4ODIgNzY1MjMzNDZlMjBkNzZkNWE5ZjM0NDA0Y2I3OWUzNmU3ZWIxMDg2ZCBsZWdhY3ktdHJ1bmsKKzc2ODgzIGQxMDZiYTYxMjZhMThlYzBiOTEwZGIzZmYwZTUzMDY2ZjVjNDk5YzAgbGVnYWN5LXRydW5rCis3Njg4NCA3MjM0NjBiOTBhZGQxNGFjMDA0YjQ1NTQzZWViNTIxOTEwMzdmZDYyIHB5M2sKKzc2ODg1IDBlZWM2MzNlZjBlMzIwZTI3NzkzZDhjYjQ2NGQ4M2RjNjVmMWJjOWIgcHkzaworNzY4ODYgOTYxM2VjNDFhZWFhYTA1NjYyMmZkOTVhZmIxNjFlZjc0MTllMjk3ZSBsZWdhY3ktdHJ1bmsKKzc2ODg3IGEzNDlkYmVhYmFlZTVhMmZkNjFmZDYwYWI4NjY3ZjQ0OTdkMTIzOTMgcHkzaworNzY4ODggNWIzNzU4ZWU0MzU2NmY5OTNiYjhlYjA3NGI3ZTA1ZmJjMmZjMjI2NyBweTNrCis3Njg4OSAzNjIxOGI2ODFkOWVkYjE2N2UzMTg3ZjI3YTExODRjOTExYzE4MjVjIHB5M2sKKzc2ODkwIGRkZDFkYjVkMmZlMDBlNjg5YmMxNTZmYzczYjBjZDg3OGE1MWJkYTYgcHkzaworNzY4OTEgMjYyMTMwZDcwMzA2Y2JjYmMxMjhhNDA0MjQyYmY4YTBkOWM2OTNiNiBsZWdhY3ktdHJ1bmsKKzc2ODkyIGI4Y2E2MWQ2ZTI2MjNhNWNmMDJlMDgzNWIyMTlmOTc5NzFjODM0ZjIgbGVnYWN5LXRydW5rCis3Njg5MyAyZDc1ZGE2NWQyOTBlNWRlNWQ5NDA2OWI1MDE4ZjE4ZWM3NDczZTdmIHB5M2sKKzc2ODk0IGFlZWYyZjI3ZjlmMGNmNmM5YTU0MWVlMjk3YzBiYTQyNDdlYjE3NDcgcmVsZWFzZTMxLW1haW50Cis3Njg5NSA3YmFhNTViNmU4YzkxODhkMDI4OTQzYjk4NjFmZmM4ZjJjNWI0ZDhhIHB5M2sKKzc2ODk2IDEwMTMyMDg5OTA0MTdmNGVlMGJhMGExN2VmMTJiNzA1YTM1MmIyYzcgbGVnYWN5LXRydW5rCis3Njg5NyA2ZDQ3YjI0OTQ3MTM3ZDFlMWJhMTg2OTI3ZTA0MWI3YWUzZmFiMzA1IHJlbGVhc2UyNi1tYWludAorNzY4OTggNzdlMjMxMzEzNWRkOWJhMDE4YmE2OWU2OGFiZGE5M2M2MDNiZWY2NyBsZWdhY3ktdHJ1bmsKKzc2ODk5IDliODQ3MDk4Y2JmOTMwNmYzNGNiMGJmZWYwZTkxZGViZGM2MzU0MDkgcmVsZWFzZTI2LW1haW50Cis3NjkwMCAxOGViMDA5MTRhZWU1YmFjYTk4Y2QyODQ1ZWVjYjU1ODFkODY4ODFlIHB5M2sKKzc2OTAxIDZmOWMwNzQ2ZjFlMjA1MDY4YTgzNmE5NGFiMDNiMmU1NjE5OWY1ZmIgcmVsZWFzZTMxLW1haW50Cis3NjkwMiBhMDg4NDBjZTg4ZDM0YzFmMDM3OWRmYTlhMmY4NTkxM2E5YTA4YTlkIHB5M2sKKzc2OTAzIGVkNGQ1Y2Q0N2VlOTYxMDIwN2M0YzBkNWU5MTY3MzQyMTRhYjU0NjQgcmVsZWFzZTMxLW1haW50Cis3NjkwNCBmN2Y1ZTFkMjdlMDYzMDJlNTUzMmZlMWRiYzFiOWFjMWE0OGYwNGNlIGxlZ2FjeS10cnVuaworNzY5MDUgODk5OTY3NTVjZjM5ZTcwYmM0NmU3NGM4NTM4OTYzZWI5NzBjMzNmOCByZWxlYXNlMjYtbWFpbnQKKzc2OTA2IGE0NmRkOGRhM2MzMDgyN2MxMTAxOGZlMGE2MTBkOTg2ODFiMDliZjAgcHkzaworNzY5MDcgZTIzZjVlYzkzMzE1ODU3ZDcyMjliN2JkMmQ2YjFiNDk3MDI4NjVmMiByZWxlYXNlMzEtbWFpbnQKKzc2OTA4IDEwOTcwZjY0YmEzMzFiMTg5YmQ4ZTk1NDJmOTU5MTMyM2RkMDZjZjMgbGVnYWN5LXRydW5rCis3NjkwOSA3MGNjMjg4ZjkxOWUxN2VhNjAyMzYzOWE5NTMyMmU3NDY2M2JhZDZkIHJlbGVhc2UyNi1tYWludAorNzY5MTAgNzI0YTBkYTg1YzQyY2FlNzkwODZiZDc4NDlkNmU4OWZmZDkxODAyMiBweTNrCis3NjkxMSBkYzFhYWRmOWZhNGEzYzZjZTI0NjAwZTdkZDZiZGQ2Mjc1MzliNGI5IHJlbGVhc2UzMS1tYWludAorNzY5MTIgOWM5NTc1MmVkZTEyNTNhOTMyMGZkY2RjNzdlMTRlZWQzZWFmOTU3NSBsZWdhY3ktdHJ1bmsKKzc2OTEzIDUzMWIxMWE2YTEyNTVjZGVhZjRkYTA0YjRjNmVhZGRiOTc1NWZjZDIgcHkzaworNzY5MTQgZWJlYjJlNzc2M2Y1YTNhNTgzYmU1ZTc4YjUwYjA4YzE3NWU0Y2UyMyBweTNrCis3NjkxNSBlZDEzMTJjZGI5YjIwYTk5ZjA0MzE3ZTVjMWQ5MTBmNzcxNjc5ODE5IHJlbGVhc2UzMS1tYWludAorNzY5MTYgNWNjYzVkNDA2OGMxYWVlMjYyODY2NGE0MzQ4NDc5NGUyMDRlZTQ4YiBsZWdhY3ktdHJ1bmsKKzc2OTE3IDUzZjIxZjA4YWYwZDQ0Yzc3NGQ0Y2Y4MjFjZTIxNjNlMDJlOGQzYTUgcHkzaworNzY5MTggZDUxNTBiMjkzNGZhNjBkMzc0MWJmNTM2MWNhNTI5MjA2ODcyN2ExOCByZWxlYXNlMjYtbWFpbnQKKzc2OTE5IDZmNjAwZTkyYTBmNTI3ZGE2ZTVmN2IyYTc5NzhiM2FkOGQxMmZlNDMgcmVsZWFzZTMxLW1haW50Cis3NjkyMCA4OTZiZjQ5NjI4YWJmZDNiMGZkODg1YzQ3YjgxZDYwMjk1YmZkOGNkIGxlZ2FjeS10cnVuaworNzY5MjEgY2NhMDk3ZWEyN2I5YzFkODY4M2ZlNDJiYjdhMjNiNTJkMTRlMjljOSBweTNrCis3NjkyMiBlOWRhODEyZjRmZmY0MzE0NDIyOWUxNDRmZWQ4MTlkZWU2NjU2N2JhIHB5M2sKKzc2OTIzIDIwODlkOWMxYWUxM2UxYjNiYTBkNzQ4MzZjOWZlZTkzOTVhNjk3OTcgcHkzaworNzY5MjQgOWU0YzkwMWYwMDkzY2ZmMDRjN2M2OGVkZmYzZjE1ZjUyNWRiMjFlNSBsZWdhY3ktdHJ1bmsKKzc2OTI1IGQ4OTBjOGZmYWQwMmY3YzAzZjIyODA4ZTU5OGZiMWZkYmZjNTc0NjUgbGVnYWN5LXRydW5rCis3NjkyNiBjOWE1YjNhNDYwZmY2M2ZkNzUwZTI2NGM1OTY4Y2RiNjdlZGYyYjA2IHB5M2sKKzc2OTI3IDY1MGIzMjY0MDNjZDI2YmY1ZjJlNzk1MzA4OTE5ZjA4MDhmNjZjOTkgbGVnYWN5LXRydW5rCis3NjkyOCAxZjhiMzYzMjAyMThiODQ0NTJlNDQzMDAwZDg3YTcyMjk4Y2M1OGJlIHB5M2sKKzc2OTI5IDc4NGJkYzdiMTlhYWYzYTFjY2ZlYmU5M2MyZDcwNzc1YTNjMmM2MDMgcmVsZWFzZTI2LW1haW50Cis3NjkzMCA3OTQxYTlmODY1YzIyODNjM2MzYzEyZTczMDIxMzA5MWFlY2M3ZGMxIGxlZ2FjeS10cnVuaworNzY5MzEgNmQ3NDY0ZGJiNzE0YjE0ZWE3YzJlMTNiYzI4YTU3YTM4ZGFiODBkMiBweTNrCis3NjkzMiAzOTE0OWQyMjVlYzdhMTUyM2NlMmE4NTUwMjkwYzM4MGU5ZmU1N2VlIHJlbGVhc2UyNi1tYWludAorNzY5MzMgMDIwNTRhZmEzNjJmMWIzNjRhODk1NmZkMWI1NmFiMWM1NzY2YWEwOCByZWxlYXNlMzEtbWFpbnQKKzc2OTM0IDA0NTg4ZWZmMjVhMTkwOTU4YTM1NzMxNGE4NzNhNjBiZDVjZTE0ODkgbGVnYWN5LXRydW5rCis3NjkzNSAxYzJiM2Y3OTVkMWIyM2UyMTliMDRkYTRhYzgyZjc4YjNhZGQ4YmVhIGxlZ2FjeS10cnVuaworNzY5MzYgMWRhYWMyY2VlZGJmMjVjMjZjYThkMDY3MzljMzM1ZjY4OTk1ODA0NCByZWxlYXNlMjYtbWFpbnQKKzc2OTM3IGNiMDVjY2Q3NTk5NmJjYzAxNjVlMDBlODQyMjFiMmVlOWIxZDM3ZWQgcHkzaworNzY5MzggNTgxMzM3MTQxODljYWE4NTg0M2JmZWU1NGUzMDA4NDg3Y2Q1MTdmZSByZWxlYXNlMzEtbWFpbnQKKzc2OTM5IDY2MzBlMzZhZjljMzliMDYyNGNhYzE1NGRjYTIzYTU2ZjljZTMyYmUgbGVnYWN5LXRydW5rCis3Njk0MCA1NTAwNTNiYWFmZmE3OWQ0YzQ1ZTcyNzg3YmVmNWM1ODhhNjQ4ZTE4IHJlbGVhc2UyNi1tYWludAorNzY5NDEgNGFjZTA4YWFjMzc2MzljMzY1NTA4M2YxZmUzZmZiNTRiZmM4NzI2NCBsZWdhY3ktdHJ1bmsKKzc2OTQyIGQ4NTYyMDAyZjhlNWMxYjZiY2RhNjFiYjkzODk0YjM0NDFmYjQ1NWIgcmVsZWFzZTI2LW1haW50Cis3Njk0MyA0NjU4MDk0MTZhODJmMGJmMWU5MDhiOGUwZDBmYWVjZjEzMzFlZWFhIHB5M2sKKzc2OTQ0IDRkNDMwZTU1YWQ3YzU4YWRlYTQ5ZmQzYzRmYTZmM2NhYzBiMGY4ZWEgcmVsZWFzZTMxLW1haW50Cis3Njk0NSA2YzFiMjA2NWQzNWNiM2JjZmUxY2VjZDBiMTJmN2EwN2NjOWQxOWVlIGxlZ2FjeS10cnVuaworNzY5NDYgYmYyZWZmNjBlYWUyYmFhMTc3ZDkxZTdjOGFmY2JkNDZkNWRkZGRlYSByZWxlYXNlMjYtbWFpbnQKKzc2OTQ3IDk5YzBhYjNjZDFmOTU2OTgwN2U3N2ExODIxMTczZWIxZDQyMzE1NmUgcHkzaworNzY5NDggNzk3MTdiN2QzNzlkYmZmZWJiNjc2NjhjYjk5MDIxODk5YTg3MTExMCBsZWdhY3ktdHJ1bmsKKzc2OTQ5IGIxZDcyZDg5NDYyMTdiMTEzMTgyOThkNTU0MzQwZWFkMTNkMjAwNTUgcmVsZWFzZTI2LW1haW50Cis3Njk1MCAwOGRmMWM5ZWE2NDNiNTVjY2FjNjQxMDRiYjg0YTIyM2JkYTMyM2JlIHB5M2sKKzc2OTUxIGQwMjVmNDk4NzMxOTFhMDM0MjU4YTAyNmZhOTc5ZWUwZDdjZGI2MmMgcmVsZWFzZTMxLW1haW50Cis3Njk1MiAwOTZiMWQ5OTc4NTM4YmIyYzg4NjBhNDM3YjA2N2ZmYzc4ZTJiMjExIGxlZ2FjeS10cnVuaworNzY5NTMgMTc3MjE5NTQwNWU3ZWE3NTdlNDllMGZmNTY0NjBiM2U5MjdlOGVmMyByZWxlYXNlMjYtbWFpbnQKKzc2OTU0IGVhNWU1NGJkNjI3NGMzMzQ4NjlmYzUxYTE1Y2NmZGUwNTQ4ZjJlMmQgcHkzaworNzY5NTUgODZiNWRmMDQ2MzRjMDY2ZTMzNmQxZjczZTM3M2NiMGViY2YwYjhkNyByZWxlYXNlMzEtbWFpbnQKKzc2OTU2IDNlMmI3OTY1YWRhOTk3YmVhZTQwMmFjMGY1NWRlMWI0MjNlZjk3NDAgbGVnYWN5LXRydW5rCis3Njk1NyAwZWUyYWU3NWNlOGY0OGI3OWJiYjNmNzhiOWE0NDkzMDk2ZjQ0ODBmIHJlbGVhc2UyNi1tYWludAorNzY5NTggMzlhYjFhMzZiMjA5ODY2YTI1MWQwZGVjMjgzYjhiZDFlMTk2OWQ3NSBweTNrCis3Njk1OSAwOWMxNzFmYTU5MzVhMWUwOGZkMjJjMTJhMDAxZGFiYTZkMjE1NjI4IHJlbGVhc2UzMS1tYWludAorNzY5NjMgMjhkZTgzZjE3ZDA4OWU0NTQ3ZGE2MzYxMzhlMjg1NDQ1YjZkZTZhYSBsZWdhY3ktdHJ1bmsKKzc2OTY0IGE3YzRjNzE3YTljNzg4MWFjYjMwMjUyM2UwMDAwNTkzNTA3NTQyZjIgcmVsZWFzZTI2LW1haW50Cis3Njk2NSA0OGE5OWNmODE4YzkyZGVmNjA4M2M4YWFiOThhYWI2ZGIxYzhjYzRmIHB5M2sKKzc2OTY3IDdiMmVhYTM0Yjg2YjM2NzA3OGY3ODY4NmU2MDQ1NWNhM2QxMDAwOGEgbGVnYWN5LXRydW5rCis3Njk2OCA2ZDA5ZTNmZGY4NDBjYmQ4MWI4ODk3NjhiZGRkM2YwNTMyYzE1MDUxIGxlZ2FjeS10cnVuaworNzY5NjkgNzYxM2RlZjA5OWQwYmMwYWY0MmI2Y2RiNzg4MDZjYmM5YzdiM2Q5MiByZWxlYXNlMjYtbWFpbnQKKzc2OTcwIDgwNzE5NTliYzMwNmM1MWU0NjU2NjZjMjZhMmU2NWMwOThjMDI5NDMgcHkzaworNzY5NzEgNTBmMzA0NmQ0ZmEwMDI1OGZmMjZkNWU0ZmEyMzJjODJhMzg4Y2M1ZSBweTNrCis3Njk3MiA4Yzg2Y2Q4MGFlMjYxYTBiNzliNTQyY2MyYjY2MTk2ODM4NzkxZDZkIHJlbGVhc2UzMS1tYWludAorNzY5NzMgMTNlNjJjZjAyYmMzYTEwODIyMjhjODA3ODMzZDBkNThmODk1Yjc5NyBsZWdhY3ktdHJ1bmsKKzc2OTc0IDA5YzRmMWI5NDM5YzlkZTdlNWRkOTUyOWE3YjhiNGNiMjdkNDZhYjggcmVsZWFzZTI2LW1haW50Cis3Njk3NSBkNzYxMGVjOTViY2UyOGNkZjgxN2FjMGNhOGFmZjUxODUwMTY5OTkwIHB5M2sKKzc2OTc2IDc1NTliNzBmOTg5OTM4ZDFmYjFjYzEwMWVjMDYwYzQ0YjNhMWNjYTkgcmVsZWFzZTMxLW1haW50Cis3Njk3OCA3ZjVjYmMyOGY0MzMzYzliNDNhMzY4ZWNlZmU1Y2I1NzUyNjRhNDI5IGxlZ2FjeS10cnVuaworNzY5NzkgZTczMDAxYWZjNTZmMDZkY2Y1YTY1MWVkMGFhYjFkOThhOTVmYzg3YiByZWxlYXNlMjYtbWFpbnQKKzc2OTgwIDk3NTFkZGNjMTg4MjgzYWI4MmY4NWE5NTk1NjVhYTQ2OTYzOThlNzcgcHkzaworNzY5ODEgMzdhMDU5OGQzMzJmNzUzOGIwZDNiNDY5OTM1NTE0ZjFjMDFlNjFhYiByZWxlYXNlMzEtbWFpbnQKKzc2OTgyIDJlNDg0MTkwY2ViNWExOTk0ODAzM2FiNmZmMDFmMWM2NzdmNzljMjkgbGVnYWN5LXRydW5rCis3Njk4MyAxYTI1YjQyMGVjMDBjYzRmOTZkZmNiZWFiNjExYWY2MmNiZmQ3OWM5IHB5M2sKKzc2OTg0IDYwNmE0NWRiZDEwY2U1ZTNlNWM2YzdkYTJiYTJhZDg0ZjVhMmJkOTMgbGVnYWN5LXRydW5rCis3Njk4NSAzNTI0OWU5NTYzYWFmMTkwZDMwYzU1ZmRhYTNiM2VjZTY1YjQ0YzdlIHJlbGVhc2UyNi1tYWludAorNzY5ODYgZGIxOTdiMjhlMDQ1NDQzYjVhZmM2OTg3NmUwNGYzODkzYjM2NGZiZSBweTNrCis3Njk4NyAyMGZjZWJkMGNiNWRkODZmZTU1YmFkMjkwNjIzMTRlZmNkYTNhODM5IHJlbGVhc2UzMS1tYWludAorNzY5ODggYWVkMzIxODc2NDkwOWVlM2ExZjdjNzRlNWZhMmUzZjEwOGNmNWMxNSByZWxlYXNlMjYtbWFpbnQKKzc2OTg5IDRkM2I5YjRjYWZmMDZiMzVlNWUyMGYxNzNlODZkMjY4Yzg5ZDhlYmYgbGVnYWN5LXRydW5rCis3Njk5MCA0NDJkMmI5ZDgxZTA5OGYxODE3Mzg4MDBkZTdkNGM2YTVkYjMyMzk0IGxlZ2FjeS10cnVuaworNzY5OTEgZjMxMTUwZDg0N2MzZmU0M2I0MTg2YTQ3MjY3MjEyYTY0N2QyMjllMyBsZWdhY3ktdHJ1bmsKKzc2OTkyIGJlNzg4NjYwYTkzOTMzOGY2MTAxNGYxNmM0MjIxNDExZjEzNjQ3NTkgcmVsZWFzZTI2LW1haW50Cis3Njk5MyAwN2EyODMwOGNlYmIwNjk0MTNjYmVmMGIwZDI2NmQ1Y2YxZmZhYzJjIHB5M2sKKzc2OTk0IDY1ZGUwYmVlMGZmMmVjYmFlNjVhODZhZjcyNGI2YWJhOWJiMjIzN2YgcHkzaworNzY5OTUgYjk5MjdlZWUyYTY5ZmE4MjI1YzdiOWYyN2UzMWZkMDhhNzg5YTQ3NiByZWxlYXNlMzEtbWFpbnQKKzc2OTk2IDMwYmVkYmMyOTc2MzUyMzI1NTFhYmYxODI2ODBjMWIwZDRiZWU2N2YgbGVnYWN5LXRydW5rCis3Njk5NyA2YzgxMzAxNTJlODhhMjAxZTUwNjVjY2JmZWY0OGFhOTI2NWFhNjBiIHJlbGVhc2UyNi1tYWludAorNzY5OTggY2Y3NGQ5YWY4OTVhNjk0YmYwY2ZlYzJlODg1ZDJmN2U0MDdhY2MzYiBsZWdhY3ktdHJ1bmsKKzc2OTk5IDE1MjA2OTc5MjAyMDFiMDI4OWQ4MWRmYmJiYTFjODQ4MmM0NjJiN2EgcHkzaworNzcwMDAgOWRjNTczYjZmOGY1ZmE3ZjRjN2M2YzY2ZGVlY2UzNDM0MGRkZmQzYiByZWxlYXNlMjYtbWFpbnQKKzc3MDAxIDUzZTMyMTI1OTU1NmU1YzBhNWNlOWI3ZWNmZDhiZWE2ZmZjOTFmNGEgbGVnYWN5LXRydW5rCis3NzAwMiAwNzJjM2QwZjA1MWU5YjhiYzA1NmY4Mjg0MGM4OWYyNzZhZmQxNGZkIHB5M2sKKzc3MDAzIGRmMjYxMDkzYjMxY2Y0ZGRkYzgxMDZhNWZlOGM5ZjA5NzYyYTJlN2IgcHkzaworNzcwMDQgYmQyODc0NWM2ZmU3MGQ3Mjc4ODYyZWE3ZGY4NGJiMThjYzhmOTM2NyByZWxlYXNlMzEtbWFpbnQKKzc3MDA3IGJhNzRkNTg3NzRiNzBmNmE2Yzg3NjY2NjYxMjdjZjE3OWIzMDU1OGQgbGVnYWN5LXRydW5rCis3NzAwOCAxOGE4YjJiZmM5YzJlYmM4YWI0ZDRiZDAyMTZhZTg4YTZiYjYyZjFkIHJlbGVhc2UyNi1tYWludAorNzcwMDkgNDI5YTNlMzhlNDZiZjVkNzg1NzNmN2EzYzM4ZWUzZTY2N2QwNzRlOSBweTNrCis3NzAxMiA5M2Q1Y2RmMWM0NTczZTg2YTQ5MzJkZjdjNGViYTI5ZDc2NWJmNzU2IHB5M2sKKzc3MDEzIDNhNzM2YWQ2NjFmYjY0M2MzODNhYWY3YmE1NDE4YmNlMDNkM2Q5NGMgcmVsZWFzZTI2LW1haW50Cis3NzAxNCAyNTE4NjBkYjM0OTNmMzhjYjgwN2Y5N2ZmYWZlZTBhODMxYjJlMzNhIGxlZ2FjeS10cnVuaworNzcwMTUgMjQwMDZjYTU2MmQ1YWI5NWNmZWQ1ODU3Njg0OTQ0YzJlNzY0OWE4YiByZWxlYXNlMjYtbWFpbnQKKzc3MDE2IDRhYTBkODE2ZWU1YmEwNWQzNWMzMmQxODI4N2Q5ZTNhODVjZmMxMzggcHkzaworNzcwMTcgODAyMWI5MGI1NmVkYmI3ZjQ4Y2FlNDJlMzQ2NzAzNDUyNzM0YmQzZCByZWxlYXNlMzEtbWFpbnQKKzc3MDE4IDFjNGU4OTUyMTg0N2UwMDM4MjIzOWIyYWZjOTNjMjk4ODhjZjliYTEgbGVnYWN5LXRydW5rCis3NzAxOSAxM2UyZjhhNzQ5YzQ2NDIwYTliMGEwZTU5Yzk1ODg1ZTA5NTdhNDkzIHJlbGVhc2UyNi1tYWludAorNzcwMjAgODg2Mjc1ZmZhZmQ2YjNjNjU2MzhmNmRiZTljMDZhNjc0YjI5ODUyNyBweTNrCis3NzAyMSBlNzU3ZmE3Nzk2MDFmNTA1M2U0MDJiOWJhYjMyYTU4OTYwYWYxN2FmIHJlbGVhc2UzMS1tYWludAorNzcwMjIgZGYyY2ZjZjlhMDczOGUxZWE4NDE3NTJlNTAwYTQ3OTQ5ZGI2ODFjNiBsZWdhY3ktdHJ1bmsKKzc3MDIzIDFmODZlMGU0Njk2OWZhNDIyMzEzZGM1M2ZjMTIxOGQ5OGNmNzExNWMgcmVsZWFzZTI2LW1haW50Cis3NzAyNCA1NTk0MjUzMzMxNzg3ZTEyMDQyMDlkNGNiNTQyNjMwODZlYmVkN2M5IHB5M2sKKzc3MDI1IGQxZjFhMDU5MTU0YmE5ZjEyMzA4MTRiYTdjMTdjYTNmMTI5NDRkMDUgcmVsZWFzZTMxLW1haW50Cis3NzAyNiBjYTI0ZWExYTJhZTJlZDg3MjYyNWFhYzQ0OTkzYjQ0MTg1ZDY5MTVlIGxlZ2FjeS10cnVuaworNzcwMjcgMWRmNzNiZjM4YzU1Yjg1N2RiODAyMTFiYTQxZmE4YjRlMzcxMjc0NiByZWxlYXNlMjYtbWFpbnQKKzc3MDI4IDM1ZGU1N2Y1MTU5OTU3MzQ5NGNmN2EyZDhlNzI3NWI2NmE3NmJmZDkgcHkzaworNzcwMjkgNzFlNmEwZGZhZmM4NDcxNmY0NjdlOWUzMzIxOTRjNzUzMzllOWVmZCByZWxlYXNlMzEtbWFpbnQKKzc3MDMwIDlkYTBjZjJkZmZjYzllYTU4YzUyMDE5NzE0MTA5Y2FkZTE2NmQ1OWIgbGVnYWN5LXRydW5rCis3NzAzMSBhYWViNjViYWIzYzA1MWZiNWJiOGQ0OGUzYmVlMjQzN2M5YWFjNjVkIGxlZ2FjeS10cnVuaworNzcwMzIgOTRlOTU3Y2ZkYTM4M2FmOThmOGQxODg1MmExNmNjMGY1YzBlMjBjOSBweTNrCis3NzAzMyA0NjM3MWIyOGZkZDExODUxY2U1MDE1MDE0NDA3YTUzNGY4NjJhNzkxIGxlZ2FjeS10cnVuaworNzcwMzQgYmM1ZWM1MGM1MGY5ZWFiMzMzNDU3NDAxY2Q1M2YzNmU2MTEyNDA4NyByZWxlYXNlMjYtbWFpbnQKKzc3MDM1IDNjNDEyNDQ3ZWZiMjAzMGI0NjY1ODViNjNiNDU5YzU2YjkzMmUyNDYgcHkzaworNzcwMzYgZTdkY2M3NDg1ZDBiZDgxYzU4ZjgxMDdhMDRmZDdjYzRkNDAxYTExYyByZWxlYXNlMzEtbWFpbnQKKzc3MDM3IDA4NTU4MTg4NGU2ZjYzMjJlYWNkMTRiNzVjYjkwMDZmODUzNmI5NDMgbGVnYWN5LXRydW5rCis3NzAzOCA4NzBhNDZjOGE2NzA1ZGIyOGNkOWM4ZmE2MDc1YjgyOGI3YWRjZDE0IGxlZ2FjeS10cnVuaworNzcwMzkgMGVmOTRkYTc1YmZkYTZkNzNlODgyNzc5YmMxMzVkODU1ODczY2EyZCBweTNrCis3NzA0MCA0MjdjMjE0M2UyYzliYTFmODdjOTYyMTc3NTE0NzliN2Y3ZWM0OWJkIHJlbGVhc2UyNi1tYWludAorNzcwNDEgODQyNjM0Mjc2ZDAxMWRjYjFmNDJmMGNhM2I0NjNiZjFhZjE5NWIyZCBsZWdhY3ktdHJ1bmsKKzc3MDQyIDNiODZiMjNjNThmZTQ0MGJiMGQ4OGMyN2UyNDMzNjMyOGQzODk2NTcgcmVsZWFzZTI2LW1haW50Cis3NzA0MyA3MjYzMjNmZDg3Y2E1MGM2MDg5NGU4NTc3NTJhYmYxZTZiZTEyMGU4IHB5M2sKKzc3MDQ0IDM0MzRlNmIxMWE5MjE4ZWU4ZWFlZWM3YjViYTRkNTIxNWIzNWMzY2EgcmVsZWFzZTMxLW1haW50Cis3NzA0NSA4NjM4N2I4YjlhZjhiOWQ1ZmY2M2FiMzhhMzk4ZjNlZmZkMDc1MzA5IGxlZ2FjeS10cnVuaworNzcwNDYgOTQyNGI4NGEyZWM5NTJhMzBiOTQzMDJmZThjNzdhNDkyYjQ2ZGMyMiByZWxlYXNlMjYtbWFpbnQKKzc3MDQ3IGY1NjBlMWE3NzQ0ZWZhZDYyYjk4MmI5Njk3MzVjODcxNjM5YzVmYjUgcHkzaworNzcwNDggOTYyOGViN2U5OGRmYjc4MDEwYTY3MDNhMDk0NmUwMWRkMDFiNGMxMyByZWxlYXNlMzEtbWFpbnQKKzc3MDQ5IGRiNzk2NTY3MTA5Y2I0ZWNlZmUyOTY0ODc2YjJmZjI2Yjg0OTVmN2IgcHkzaworNzcwNTAgNmNhMWI5Yjc4YzNmZDc5YmI3MWY3MWY2OTA4YTFjYTlkYTYxOWE1YiBsZWdhY3ktdHJ1bmsKKzc3MDUxIGU1YzRjOTcxMjY2MWFmM2UyZTgwNTI4MmRkZDlmNjU1YzkwMGRlYjEgcmVsZWFzZTI2LW1haW50Cis3NzA1MiA0OWRmM2NmOTE5ZjdkYmNlZmZkMjViOGMxODk4NzQyZjM4MjEzZThlIHB5M2sKKzc3MDUzIDIxMDYxMTJmNWIwNzYzOGVjYjRiOGY5ZWE1YTBjZTRkY2I1YzI4OTEgcmVsZWFzZTMxLW1haW50Cis3NzA1NyA1ZGM1ZDZjNmY2NDE3ODk4MzZjZTU5ZDRmNTNjZTdmMzYwYjFlNGYzIHB5M2sKKzc3MDU4IDY0Njc2NDk5NDEyMDA5M2QwMDZhNjJlYjUwZDlhODMwMjZiMDdhYzAgbGVnYWN5LXRydW5rCis3NzA1OSAxNTEyOWM4MGIyZmVkN2M1MDA0MjRjNjAxNDRkNWM3YTFmN2QwNjkxIHJlbGVhc2UyNi1tYWludAorNzcwNjAgNjg4MTFkZmU3MDZjZTk0ZDMxZTQxZWEwNTRjMTY5Y2RkZWU0ODgyNSBweTNrCis3NzA2MSBlMzcyYTgwNTZjOWQ1MzdkNmZkNDk0MWFmNTEwNjU0MjAxODdjMmUxIHJlbGVhc2UzMS1tYWludAorNzcwNjIgYzRlNjA5ODg4MzRkZjBmZDQzN2FlMzQyMmRhMGNhYjRhY2Q2ZmNlMCBsZWdhY3ktdHJ1bmsKKzc3MDYzIGFhYTVhYjdiOTQyYThlNDQ1M2YxMzEwZGNhZGQ5YzVlNTdiMDA2YmYgcHkzaworNzcwNjQgNTYwYjg3NjY5MTlkNWQxNWM0NDJhMTJjOTk5NzlkZmI1MWEyZjgyYSByZWxlYXNlMjYtbWFpbnQKKzc3MDY1IDIyOTA3OGU0NzAxMGM4YzhhN2JjZDA3OWM4ZDA0ZjdlOGEwMzkxNmEgcmVsZWFzZTMxLW1haW50Cis3NzA2NiBlYjBiYmFiYTAzNjFiNzQ2ZmJhOTcwZWRiNTg5OTU3MmM5YjBmN2YxIGxlZ2FjeS10cnVuaworNzcwNjcgZGQ2NzI2Yzk3OGM2NjY5OGY0ZDY5MDUzOGQ4Mjk2MmQ2NmUyYWVjYiBweTNrCis3NzA2OCA5NTcyODkwMjljMDUzNGU1ZGUyNGZjYTkyNzJjYWY4MGZjMjYyNDg4IHJlbGVhc2UyNi1tYWludAorNzcwNjkgODVlNzgxZjU5OWJjOGE5NGY1NjdiMWEzNjQwNGZjZGFkZmIyNzExYSByZWxlYXNlMzEtbWFpbnQKKzc3MDcwIDhlODJmYjA0M2FlODc4NTllOWRjYjVmZTAwYTcwMGRjODUxMWQxOTEgbGVnYWN5LXRydW5rCis3NzA3MSBhZDdlNDE0MWEzZWI4M2Y4NmM2YzU2OTA0MGRlMzUzYjE3NTQ0NGQ1IGxlZ2FjeS10cnVuaworNzcwNzIgNzMzNjViYjI2ZmQ2NTBjYzA0NjBjZjM1ZDcxZmQwYjZiMTg4ZWZjNCBweTNrCis3NzA3MyAxZTM3MTgwZWVjYWVhNDQzZjE0OGY0YjM3OTBiYjYxNGJkNWNjM2ZhIHJlbGVhc2UyNi1tYWludAorNzcwNzQgNWE5MzcxMDE3ZWRmOWExYTUwMTNmZjhhMDFkMGE5YWVmM2VkZWEwZSByZWxlYXNlMzEtbWFpbnQKKzc3MDgxIDUyNWY2N2JlZWI4OWM3ZmEyMGNhZmM5ZTg3MTg2ZWUwMDExMjY3YWEgbGVnYWN5LXRydW5rCis3NzA4MiAzMDc0MWVmNjU2MTczOGRmNzBjYmUyNzU5ODc1MGRlNDA0ZWNlMGJhIHB5M2sKKzc3MDgzIDU3NDMzYjgzM2IyYThkZjM0MTE0NWVkMGUzMjlkOTljNjNjNTFmZjEgcHkzaworNzcwODQgY2JlMWJiZTU0NGM5ZTQ2YmRhMTU3OGYzNjBiMTczMTVhY2M5NDMwNiBsZWdhY3ktdHJ1bmsKKzc3MDg1IGExMWE4ZTUzYzQ5NWNlOGJjNzcxMjM1NWRiZGY1NmQ4ZjVjYzQ2N2MgcHkzaworNzcwODYgZmUwNDU5ZGM5ODg5ZjkzNzZlNmRlMWE1MTQxMzNjOTA1MjkzOGUzMCBsZWdhY3ktdHJ1bmsKKzc3MDg3IGZmZDgwMGVmNDZlYTA1NGU5MmVmYjQ5MDZjZDI3ZjE0MzE2M2U4ZjYgcHkzaworNzcwODggY2YzOWM1ZTQ2MmY5NGJjZTU4MTViMmQ2OGIwYmFiNTNhZGY1YmFlMiBsZWdhY3ktdHJ1bmsKKzc3MDg5IGMxOTcyZWVmMzU3OTVjZTJkNGExMzEwNDIxNzNmMjg3YTExZTNlMGQgcHkzaworNzcwOTAgYzE0YTAxNGFmOTU0ZWJhY2YwNDBjNjljNjRhNzA1MWMxNjNlYmVjYSByZWxlYXNlMzEtbWFpbnQKKzc3MDkxIDVlODRhYmZkZmVhYmQ3NWE1MTVjNDY4YTE4YzNlMjE2ODgxZTFiMGMgcmVsZWFzZTI2LW1haW50Cis3NzA5MiA5YjRiNDNhOGM5MTMwNTk1NTBmY2Y4NmU1Yzg3YjhlYmQwODBkNGMyIGxlZ2FjeS10cnVuaworNzcwOTYgMzc0MTkxZTEwYTQ1YmU2ZDU2ODIzYWNhMTc2ODljZGIyZmFmYWRhMyBsZWdhY3ktdHJ1bmsKKzc3MTAyIDVjOGM0ZDJmOGI3MTIwZDFkZWE4Yjk1MWM5Y2EwZGI5MDg0YzM3NjEgbGVnYWN5LXRydW5rCis3NzEwMyBmNzY0ZTQxMjZhMjMxYmEwYjdjYzY4YjViZTQ4ZDEwNTdhZWY3ZGRmIHB5M2sKKzc3MTA0IDNiNDZmMmQzYjc1ZDAyZjM1NmMxYWZiZWNhM2ZiNWNhZmQ2N2E3ZDIgbGVnYWN5LXRydW5rCis3NzEwNSBlYzhiYjE1MTRkNjcxYTYzYmQ3YzczY2IzNWRlYmRjOTYwMGVmM2ZhIHB5M2sKKzc3MTA2IDE1ZWFjNzY1Y2MzNWQ5NGQxY2E5ODc0NjA0MjEyYjUwZTZkODVlYWQgcHkzaworNzcxMDcgMDQ5ODAyNzcxMmJmNDJjMzBkNzJiOWM2OGVkOTM1YmVkZWE1MmY3MSByZWxlYXNlMzEtbWFpbnQKKzc3MTA4IDNhZWE1N2RjMjFhOWIxZDNiODYxNDhhZjUwZGNkZWI4NzgwMWRjZTYgbGVnYWN5LXRydW5rCis3NzEwOSAzOGY1OTNhODNjZmM4NDIzZjQ4MGQ4ZDZiOWExMzZkOGRlOWZhNzcxIGxlZ2FjeS10cnVuaworNzcxMTAgOGFkMzM5OTIyMDJhZWEzYTZhMDE3ODJlMDIxMzEzNTI1OTNlMzBhMiBweTNrCis3NzExMSBhYmU1MDA4YjkzZTlhNGM3MzJlYzUzMTRkYWRkNjU4NjIzNGI0MTI3IGxlZ2FjeS10cnVuaworNzcxMTIgNjFhNzcwZjdiOTUxYjNmOTIwN2U3ZDY2Yzk4ZTRjOTAwY2JhOWUyZiByZWxlYXNlMzEtbWFpbnQKKzc3MTEzIDU3NDU2ZjE2OTQyZDk5MDBlOTQ1MzY2MDZkYTgyZGViYWRkYzU5NGIgcHkzaworNzcxMTQgNzBkNzQ3M2FmY2ZlZjY3Yjk2NjJkYTJjMWNjNTRjMWNhNDJlN2ZmMCByZWxlYXNlMjYtbWFpbnQKKzc3MTE1IDcyMzNiYzM0ZmQ0NGUyODhmYmU2ZTE1ZmRkNzM3ZjllNTI5MjFjN2YgbGVnYWN5LXRydW5rCis3NzExNiBlNDg0ZmRhNDYyYTYwYjcwMDYxMGRhYjg1OTgwYjgyNmU3YWVlYWE4IGxlZ2FjeS10cnVuaworNzcxMTcgYmQ2YjAzZmI3MWEwNjQ2NjliMGE4ZDIyZTA2ODU2ZjhiOGMzNzJmMCBweTNrCis3NzExOCAyNTllZDVjYjkzZWFjZGZjNDkxMGJhMTNhMjQxZTMyYWY1NzY2MTI2IHJlbGVhc2UyNi1tYWludAorNzcxMTkgZWFmYTA1M2FmMDU3MGRiMDdhYjc0NTVkNTlmMmFlNGRhNzc1NTNkZSByZWxlYXNlMzEtbWFpbnQKKzc3MTIwIGViZDA2MTgzOGZiMTc0NTVmOTg1ZmJjNTZkMzMwZTZlNTgxOTBmMzMgbGVnYWN5LXRydW5rCis3NzEyMSA1ZTBhOTQ3MTYwMWY2MzQ5M2JiZmRhZTk4NGJjNDc3NWViNTU4MjdmIHB5M2sKKzc3MTIyIDhjNjBhOTU1ZDAyYzBhMmQyNDk4NmI3Y2M1MjhkN2RkODVjZjU1ZGYgbGVnYWN5LXRydW5rCis3NzEyNCBlM2Y1OTE0ZDliYjNmZWE3Zjg5YzU1YzVmZDMxYTZkYTcwNThkNjZlIHB5M2sKKzc3MTI1IDIzZjQ2NzE1MTc1NmE3YzgzZTg3MzVmMTEzMTM3YWYxMmRhZjBlYTYgcmVsZWFzZTI2LW1haW50Cis3NzEyNiBjNTAyZWMyNDM0NTg4YjhiY2U4MDk5NmM1YmIxYzAyNzNlNjk5MWU5IGxlZ2FjeS10cnVuaworNzcxMjcgNzkwZThmY2Y1MTc5NWYzMmFhNThkZjllMmY1ZjkxNzY5ZDZhZWI1NSBsZWdhY3ktdHJ1bmsKKzc3MTI4IDZmZGUxMWY0ZDg0MjY2NmYzMTllYjg4NzNlZDQ1YzA3OTVlY2RlMWYgbGVnYWN5LXRydW5rCis3NzEyOSBmYjY3MWRmMGY1Y2M5NjZhODE3MzUzZWY5MzdjYWI2NTFjZTk1YjI2IHB5M2sKKzc3MTMwIGU1M2U1NTI1MmJhODRiY2UwZTliZjEzM2UwYmJlZDA2MTFkNTRkZmUgbGVnYWN5LXRydW5rCis3NzEzMSA5MmE1OGI4MDEyMjA2NzMzNDk3N2E1OTBjZjgxZDMwY2EzMWJiMDQ2IHJlbGVhc2UyNi1tYWludAorNzcxMzIgMTlmMjM1OTk0NGViNDM1ZDFiNmU1Mjc2NDU5NjI1ODViMTUwMjUzOCBweTNrCis3NzEzMyAyNDRiOTc5ZDU0NGMxMjQ4NDY0MDE4NmU5YTc0MzUwNzkxNDBlMDA1IHJlbGVhc2UyNi1tYWludAorNzcxMzQgZDRhYzNhODAwMGM3NTE4OGQwMjlkNzUxMzljN2I1MjBlN2U5NGIzYyByZWxlYXNlMzEtbWFpbnQKKzc3MTM1IGE3ZjZhNTNkYWExMmQxYjVjNjU2ZmJlMzdiOWQyNWRkYjUxOTNjZjAgcmVsZWFzZTMxLW1haW50Cis3NzEzNiA0ZjA5ODhlOGZjYjE1NmRkZWJjNDQ5ZWQ0MTFhNTMyMDk1ZTgxNzYxIGxlZ2FjeS10cnVuaworNzcxMzkgYWM1ZmQ4OTA5OTk4ZmVkOWY2MjhmNWM1Y2NhMjlhZDZjYjAzMzE3ZCBsZWdhY3ktdHJ1bmsKKzc3MTQwIDM4NTdjZDRkNWIzNTk3M2I1YjkzMzIyM2I5ZTI2YWMyZThjNDdjNTYgbGVnYWN5LXRydW5rCis3NzE0MSAyYWEwZDlmMDFkNDc1M2I1NjUwOWNmNWUwOWIwYmQ1OTZlYzczOWFkIHJlbGVhc2UyNi1tYWludAorNzcxNDIgNjI0OGI3ZmRlYzBkYmI1OWY5ZDdhNDQzNzE2NDczNzA1ZTViMDRkYSBweTNrCis3NzE0NSBhZDYwOWQwZjUxNTA5NzQyYTE0MmZlZWFhYWFlMGFlOTMzYWU1MzMyIGxlZ2FjeS10cnVuaworNzcxNDYgNzQwZGJhZTJlMzBjZmZkMDEyMDRkODNiMjQzYzdjZWI5ZmM2ZGI5NyBweTNrCis3NzE0NyAxNzRhMjhjOWZiNDA3MDI1MGYxZGUxMTRhNjkwMTlkNWFmNDYwZDkzIHJlbGVhc2UzMS1tYWludAorNzcxNDggNWFkNWExZDYxMmU1ZDE0OGM3ZWY1Njk3ZTEyNjJiNDQzYjA2MzdjMiByZWxlYXNlMjYtbWFpbnQKKzc3MTQ5IDljYjI3NWRiNGQ2ZDU4NGMxOTJlZWRjZTI2MTVhMWU1Zjg4ZDUwZjYgcHkzaworNzcxNTAgMDBmZTY4OWYyYjc4ZDU1YzUzNjIwZjkwYTVjZTJkODY4NWYzMjkyOCByZWxlYXNlMzEtbWFpbnQKKzc3MTUxIDhkOWM5MzQwYjEyZTE2YzhjMzU1NTBhYTM1Yzk0N2I4ZmUzZjIzNGEgbGVnYWN5LXRydW5rCis3NzE1MiA3MzYxZWUyZGRmZGI3YTQ0MGViNTNhYzI0YTUzYmY2MTRjODNlOTg3IGxlZ2FjeS10cnVuaworNzcxNTUgZGI2Mjk3N2M1NzEzZjkwYTdjZTdjODA5Y2MwN2RkODA3MWY1M2E0MiBsZWdhY3ktdHJ1bmsKKzc3MTU3IGFlMTljMjg3ZTljMGY4NTU2YTFlYTRhMmU3MjQxYjQxM2I1NjQ5NTUgbGVnYWN5LXRydW5rCis3NzE1OSA5NmEyMzcxYjExNGI5ZGNhY2VjMmIxMTRjYTM3NDMyNWJkMmRhN2FmIHJlbGVhc2UyNi1tYWludAorNzcxNjAgODFjZjI0ZTVjZTkyOGU5YzkwM2E5ZTYzYWI2NDNhYzI4MDU5YmE3ZiBsZWdhY3ktdHJ1bmsKKzc3MTYxIDZjMTlhNmE2OTdhNjExZDRjYTZkMTMxYjUwMmFhZTA5ZTYwZGZlMDMgcHkzaworNzcxNjIgNDZmNGI3YjViNGRkZTQ3ZWE5YjVhYmRlYjNhNjA5OTE2YTQ0MzY1YiByZWxlYXNlMzEtbWFpbnQKKzc3MTYzIDhkYzZkZmE0MWZkNTY1Y2VhYzc2MWZlZjFjMGI3ODViNWViZGQ1ZTIgcHkzaworNzcxNjQgMjUyODU4MmQ2OGY2YmY2OTY2NDJiYjVjZTdkYmNiNjU5ZjcwMGYzMiByZWxlYXNlMzEtbWFpbnQKKzc3MTY1IDM2YWVkOWUzNjQyZGM0ZDMzNjc4ZTdhZjU2ZTJkYjQxMjA2ODgzYzMgcmVsZWFzZTI2LW1haW50Cis3NzE2NyBlZmE1OTc2MzMwMTBlZmUzYzhiMzZhMDQxNWNmODkxODk4NzdhNDljIHB5M2sKKzc3MTY4IDk4MGM3OWZiZDRjNWRmNDVjYzJmMTNmYzkyYjIxNWZiZTg2NTM4OWIgcHkzaworNzcxNjkgOGZlZTJhYjUzZTcxNmFjZWM5ZmQ5NzZmODg4YTZiYmI3MGFhOTAzZSBsZWdhY3ktdHJ1bmsKKzc3MTcwIDIyOGJiYTJkMWYzZjc1MDg2ZjcxMmFkZTcxZTMwODQzZjQ3OTEyYzEgcHkzaworNzcxNzEgZTA3ODU3OTk4NGE0ZTRmYzEzODI5YTc1ZTM2MjUwYjUwY2YwMmNmZCByZWxlYXNlMzEtbWFpbnQKKzc3MTcyIGIzZDM3ZWI5NjMyMjM1NDYzMjYzMzI5ZjU0YzFkOWVhMjNlOTdlMmUgcHkzaworNzcxNzMgNGQ2ZDk1MmZlMjg4MTE4MzM0NzIwZTExOGM0Mzk0MGI0NTI2NzM2NCBweTNrCis3NzE3NCBkNTJhNzE3OWVlY2VlMmVkNWM4NmY1OWU2MDlkNGIyZDU1NjUzZDIzIHB5M2sKKzc3MTc2IDQ0M2Y3MWRkNWNmMDJhYmQ5NTE0NzM0YjUzNzIzNzc3MWUxMjU1ZTggcHkzaworNzcxNzcgYTkyZjBhMGFmZTU2NzQ5OWQ4YWMyZGUyYWJiMGVlMGExZmM0ZDVmMCByZWxlYXNlMzEtbWFpbnQKKzc3MTc4IDM4NGE3YTM3MDlkYzhmOWUwZWQ4YTY4MmZlNmQxZjI3MmUwM2VmNzggbGVnYWN5LXRydW5rCis3NzE3OSBiZjk3YWNmOGVjYjE4NzBjMWRmOGMwOWRkZjlmNmMyOThiMGQ5NTY0IHB5M2sKKzc3MTgwIDdjNjMwOTMxY2M4MzFjN2U2Yjc0NDQ5YmUwZTVkNjFiYTk0YjZlZGEgbGVnYWN5LXRydW5rCis3NzE4MSAyMzZkY2YxNzFiNzQ2ZjIyM2QyZWQwNGU0ZGQ4N2I5MTc5NjYyNTM1IGxlZ2FjeS10cnVuaworNzcxODIgMWU5MmZlNTkzOTE2ZGMwY2UzNjMzMGViMDQ1YjY5ZDViMDI1NzA0ZCByZWxlYXNlMjYtbWFpbnQKKzc3MTgzIGRiYWE0ZWVlYWViOGQyNmZhOWQxZDA2NzIzMGI1YWFmZDY4YTBkYWQgcHkzaworNzcxODQgNWFmYTE2OTE0Mjk1ZTVmN2Q2ZDQ4NWFmMTllYjkzMDg0Mzk2ZjJhMiBweTNrCis3NzE4NSAyNWFhNDNlNDMwMmJmNWRiM2MzOTJlZWFjZWI3MmUzMmFmNjkzOThjIGxlZ2FjeS10cnVuaworNzcxODYgN2Q2YmZmNzIyMTk1MGZlOGQyMmQwYmMyMmY2YTkyYWIzMzAxYjBkMSBsZWdhY3ktdHJ1bmsKKzc3MTg3IDg1NmE0NWMwYjZjNDFjNjU4ODZiNzBjNzJlMzEyNGZjOWRkMDY5NWYgbGVnYWN5LXRydW5rCis3NzE4OCA1YjQ3MTg0N2Y2ZWE2ZWM3MzdlM2JjYjkxZGYyMDBiNTAyODNkNjA3IGxlZ2FjeS10cnVuaworNzcxODkgYWI0MGI5MzZiZDFjMTQzMTc4NjQ4OTk5NzgwZGFlYWEyZWUyMzRkYiBsZWdhY3ktdHJ1bmsKKzc3MTkwIGU2MmJlMDg0NzhiY2RhYjY4NDhlYzk3YTBjMWZkNWUxYjFlNjI5MjQgcHkzaworNzcxOTEgMTY2NmVlOGRhZjliMTI0OTMwMWFmZWNmMDY4YWI1ZGQxM2NiODVjNiByZWxlYXNlMjYtbWFpbnQKKzc3MTkyIDUzMTAwZGIzNTEyODRmN2I1MGViNzZkMWQwOTM4YjUzMjgxZDZiNGUgcmVsZWFzZTMxLW1haW50Cis3NzE5MyA4NGIwMGU2YmQ2OWIyMWZlM2Y0YjRmMjIwMTYzZDhiZmQ3NDZhMWYyIGxlZ2FjeS10cnVuaworNzcxOTQgNjIxMmVkYzIyY2JkZjhjZTlhZGRiMjU0ZmU2YjczYjFmMDdlODAxMiByZWxlYXNlMjYtbWFpbnQKKzc3MTk1IGJhYmZjMDYxMjEyYzE3NDNmMzExNWFmZGEzMTc3MWFlYTFjODA5ZTggcmVsZWFzZTI2LW1haW50Cis3NzE5NiBkOGU2NGE4NDQ3M2NkZDU0YTljMTMxZDI2N2MwYmIzMjU1N2MzMTJmIHB5M2sKKzc3MTk3IDNlMjJjN2U5ZjMwN2NiMWM5M2Y1MzhkYWUxOTg1YmY2ZmMyNjg5N2IgcmVsZWFzZTMxLW1haW50Cis3NzE5OCBlNDU1M2I2MDdiNDNkZmMxN2NiMzRjMzgyNDQ2MTIwNzcwMzg5NGFmIGxlZ2FjeS10cnVuaworNzcxOTkgNDJjZmI3MjdmZjQ4NWE3OGZiNTM5MjFhYjA4ZGZjOWE0NmE5YWFlYSByZWxlYXNlMjYtbWFpbnQKKzc3MjAwIGUyMjYxYjYxZGYwNjYwNWIyYmQ1YjQ5MmZkZDUxNjZlZDEyNDE3MjEgcHkzaworNzcyMDEgNzFiYjg0MmI3OWFiMmUzMGE2MGVjNDhiYjc1NmE3M2Q2ZmQ3NDlmZiBweTNrCis3NzIwMiAyMTJhNzIyODY0YTFhZTg3NzRmNTJhOTI2ZmQ5MTFjNTZhMTgwN2FjIHJlbGVhc2UzMS1tYWludAorNzcyMDMgMGJlNDViNWNmMGQ2M2RjMzI0YmY3NTQ5YzViM2FlMTI0NmE5ODA3ZSBsZWdhY3ktdHJ1bmsKKzc3MjA0IGZjZTY2MTEyNDFkMTA5MmNhMWI3ZDZlMzM1NGE2Zjg4MDIyNWRiNjggbGVnYWN5LXRydW5rCis3NzIwNSAxZDBmZGU1OWRkZWE4ZmE0ZjFkMGI2ZmYzYTJmMDE0NmY1OGZhMGI5IHJlbGVhc2UyNi1tYWludAorNzcyMDYgNjhhNzU0YWJjZmI2OGIzYjAzMWNhNjlhZDRiOGI4ODI2NzJlYTZhYiBweTNrCis3NzIwNyBjMDI2YjkxMGE1ZTQ4NjVlZTJmMmE4Yzk1NzIwYjY0NDQ3MmU5YTE5IHB5M2sKKzc3MjA4IGZjNzVhOTk4YWRiZmVhNzQ3NTM5OTQzNzkxOTZjMmIyZjgyZTRhM2MgcmVsZWFzZTMxLW1haW50Cis3NzIwOSBhZGI5MjFmMDRiODc3NTc0MDNmYWI4YmIyOWIzMmRiYTUyYzg4ZWYzIGxlZ2FjeS10cnVuaworNzcyMTAgZmYyYWJiOTRjNjhlYmY1MmUyYTU5YmZlNzQ0M2FkM2NlMzExODNiZSB0YXJla19zeXNjb25maWcKKzc3MjExIDlhNTViMTE3M2QyMDA2YzQ2ODRiZTE5MjZlMWZmNDJkMDc4NDNmMDUgdGFyZWtfc3lzY29uZmlnCis3NzIxMiBmMDI4ODEzMzIzNDJhMWE3NmYwMzcxYjAwMTU0MWEyMjI5OWVhMDFiIGxlZ2FjeS10cnVuaworNzcyMTMgYmFhNzBkNDFjOWJkYjViZWQwZDc0ZGMwOTlkNjEwMzg3MWRmMjM5NCBsZWdhY3ktdHJ1bmsKKzc3MjE0IDk0MThmNGIwMTA0NTFmN2I0ZDFmZDAyYjVlYjAwZmI3ZjkzNDJjNzAgbGVnYWN5LXRydW5rCis3NzIxNSBjMzUwNzVmMmE4ZjMwZTVhZmRjM2JlZWY5ZWZmZDYwYWE3MWVhZGM5IGxlZ2FjeS10cnVuaworNzcyMTYgYjBkZDZjMjFkY2JmNDQ4M2IxYjA1ZWI1YWIwNGE5YTU0ZGMwM2IyMSBweTNrCis3NzIxNyA0ZmZiOTMzODkyNTY4Nzg3YWYxMzUxODY5NjZlNGRiZTNlOGQyNzY3IHJlbGVhc2UzMS1tYWludAorNzcyMTggMmRlMjRiYjMzY2M1N2M1MGNmYTY0YzA1NDIwOTdhNTNhZWUyZDcxZSBsZWdhY3ktdHJ1bmsKKzc3MjE5IDEzOTRhNDAzZGM4OWU1YjQyYWI0NDJmNjI3NjE2MWM5ZGFlZWMxODMgcmVsZWFzZTI2LW1haW50Cis3NzIyMCA3OGNhNjljZmM4OTc4YjczOTk5ZjNjMTQ0NTY0YTg5MmExNjg0NzA5IHB5M2sKKzc3MjIxIGYwOWViOTJlZDBhYjJhZjU1MWE2N2IxZWZiMjEyZjFlZjEyMzMyMTggcmVsZWFzZTMxLW1haW50Cis3NzIyMiBhYzUyOGE4YTM2Y2Y1YzUzNDJjODNjNzY5NGU2ZjNiNDQ4NDQ4ZGMzIGxlZ2FjeS10cnVuaworNzcyMjMgNzQ3YjAxYTA1MzAwNjg3NmMzOTg5YWEwMjU4NWJiMTdmODFjMzAyYSByZWxlYXNlMjYtbWFpbnQKKzc3MjI0IGE3MjhmYTQ4MWFkNDM4ODc0YWU2M2UxYTZkN2NhZWFjYjU5Y2JkNzUgcHkzaworNzcyMjYgYjVjMWNmZGM2OGI5MjlmNDQ5YTVlNWVhNjZjYjBmYzg2OTYzZThiMyBsZWdhY3ktdHJ1bmsKKzc3MjI3IDZjOGMwNDBjMTQ0M2I3NTJhMmM2NDgzYzUyY2YwOTMyYzYyODEzNDEgbGVnYWN5LXRydW5rCis3NzIyOCAxOGJkMWM2N2Y1ZTJkNGJmODExNjE1NWU2NTVlODdiN2E4ODdjMDIzIHB5M2sKKzc3MjI5IGI4ZTM4ZDBhNTJkN2UxMjc4OGIwOTJkYmIzNTk0ODQxZjhjOTJmNTYgbGVnYWN5LXRydW5rCis3NzIzMCA2ZDE3MDI1Yzg0YzE0ZTRhOGYzMWViNDNjY2FkN2UxZmMzNTA2YzA3IGxlZ2FjeS10cnVuaworNzcyMzEgZmM4N2EyZmM0N2E1OTVlYWJiNTZmNWQxMTlkNTgwMDgyNDZmYjAyMiByZWxlYXNlMjYtbWFpbnQKKzc3MjMyIGJkMjRlMWU5MGY3Y2MyNjZmZjhiMzM5ZTk1MmNmNjkyMDliODVlZTggcHkzaworNzcyMzMgYWRjOWNkYzAyZGYxMDA5Yzg4NzM0NmUyN2RhZTQ0MTU0OTRhZTE1OSByZWxlYXNlMzEtbWFpbnQKKzc3MjM0IDI3Yzk0NmZmNzZhM2E5MmM5OTA5YmE4YzM5NGY1YjI0M2M2OGQyZTIgbGVnYWN5LXRydW5rCis3NzIzNSA1OGE1YmI5NzFlOTUyYjdhNWU2OTI0ODE1NzdiOWFjZjI2ZGI1NDM2IHJlbGVhc2UyNi1tYWludAorNzcyMzYgYzJmYjA3NzQyNDQ1Y2Y4OGZmZWFkMWY0MjQ5NGE2MDY2YTEyMWU5ZCBweTNrCis3NzIzNyA0NmQ2MGU1ZmYxMDNlOTVjNDUxYTE0NDU0ZWUwOTM3YmM1YTAyZjQzIHB5M2sKKzc3MjM4IDM5MGQ2NzRlZDRjNzMyNDc4NjM4OTljMzBjZjcyODcyMWQwNGMxYzAgcmVsZWFzZTMxLW1haW50Cis3NzI0MSBkZGY2MWNkNzc1ZTAxOWQ0YmYzY2E5NzM4MTRkMmI1ZjFjNWMzYTBmIGxlZ2FjeS10cnVuaworNzcyNDIgNjI2M2E2ZmJmN2Q5MzQzZjg1Y2YyNTRlMGNlM2UyMDRjOWVmMzVjMSBsZWdhY3ktdHJ1bmsKKzc3MjQzIDJkNWFiNGQwOGM4ODUwYjRmYTdmYmQzMWE5MDhjMTYwZDEzN2FmODMgcHkzaworNzcyNDQgYTMyNjYxYjMzNGY2NzY4MzgzOWEzZWYzN2RmNjk0ODM0YTgyYWQ4YSByZWxlYXNlMjYtbWFpbnQKKzc3MjQ1IDMxMzI2NWQ0ZTAzMjgxMmVmYzc4MDNlYmI1YjM3NmE2ODFhMzdhNTkgcmVsZWFzZTMxLW1haW50Cis3NzI0NiBhMTAzNWNiNGE5MjVmYzgyMTc5ZTQ2ZDQxN2VhYmU5ZjkwZWNjNTQyIHB5M2sKKzc3MjQ3IGY1ZTQ5NmE4NDE3ZjMxNWM0YTNiZTQxOGY2NTU3YTdlOGMxNjQyYWEgbGVnYWN5LXRydW5rCis3NzI0OCBhNmFjZTMwY2I5MTIyNGE5NWEyODE4NWVlZmZlYTEzMjNkN2RmNDI4IHB5M2sKKzc3MjQ5IDRhY2Q4ZmFlYTJkOTMzYjQ5NzcwMzkxNGMyYWFiYjVkMDhmMDg1NTAgbGVnYWN5LXRydW5rCis3NzI1MCBjYzk3YTk2ZTRhMDkwODI2NzU2NzVmMjA4YjQ2ZGIwMWJjMzQ3ZDgwIHB5M2sKKzc3MjUxIDkyNjExODQxNzk3OTJhODgwMWU1NGI1ZmMyMTI4NGY4YTRkN2JlYmUgbGVnYWN5LXRydW5rCis3NzI1MiBmZjViYzJmYTM4ZDY2ZWVjOWVkZGI4MDIxZmRjYzA0Nzg4N2NkZjVkIGxlZ2FjeS10cnVuaworNzcyNTMgYmUyN2VhMmIzNjc5ZjA0YTc0YzZjMGU2YjZmN2JkNDZhNDM2YzQ0MiBweTNrCis3NzI1NCBlYjk1ZmQ5NWU2NWVkZWJiOThhYjgwYTA2Njk1MDliZGJlMjAyNTdlIGxlZ2FjeS10cnVuaworNzcyNTUgNTdiOTk2YzNkOGZmYjM4ZGM5YjJmNzkwODc4MzljY2QwNTFmOWNkZCBweTNrCis3NzI1NiBlOTgxMmI4MTZmZmRiMTc5NWMzMGZlNWIyZWE4MWE4NTQzNjZlOTllIGxlZ2FjeS10cnVuaworNzcyNTcgOTFhNTdjYzAwMjBlNGFhYzZmZjkzZDMyZDIxNjJmOWEyYjA4MjM5OCBsZWdhY3ktdHJ1bmsKKzc3MjU4IDJhMjM5OTUzNDU5MTdjYTcyNmQyZjE2MjkxYjFjNzkwYmNkMzQzNGIgcHkzaworNzcyNTkgMzg1NmM3NjRlMWY1MmMyMDRlZDgxMzU3MmUxYmZiNzgzMDU1NmRkZCBweTNrCis3NzI2MCBmZTExN2U1ZDEzYTFmY2FlZTZhMGI3ZWE4YWE2NDdiOWE1OWZhMzdmIGxlZ2FjeS10cnVuaworNzcyNjEgYWJiZGMzMWVhNzkwN2IwNTRkMDFjNjdmMDZhNTMxNmQwMzRlOGU2NyBweTNrCis3NzI2MiBmZDkxNzQ0YjFjYWFiNDlkMGZiN2I0YjAzOGQ4OGVlOTk2MzQyODU0IGxlZ2FjeS10cnVuaworNzcyNjMgNzJlM2U4NWJhYzhiMGRjMDI5YzVjNTQ1NmE2YmMyNDZhNGJhYzY2YiBsZWdhY3ktdHJ1bmsKKzc3MjY0IGExOWFkMjk5MDk1ZjI3ZGIwMmE1YWZmNDg4ZDNkZDY4YTc1MzhhMWYgbGVnYWN5LXRydW5rCis3NzI2NSBiMDM4NmZlNjUwYzc1OTYwZmQzOTY5YzA4MzZlMzZhOWU1MThmNDBhIHB5M2sKKzc3MjY2IDhjNGE3MDdjMGJkOGVlYzY5OWEwZTAyNGNiZjZkMGNkYTM0Y2Y5MWMgbGVnYWN5LXRydW5rCis3NzI2NyBjM2FkY2ZhYzA3NzIyODYyYjYyMmExZWQ5MzgxNDUyMmE5MmU1ZDM3IGxlZ2FjeS10cnVuaworNzcyNjggYTBmY2U5NjY1ZjQ0YWQ5ZjEzYmNmZjNmODE1NjNkMWIxNjk5NjNlZCByZWxlYXNlMjYtbWFpbnQKKzc3MjY5IDI0MDJmMjkxZTgwMTliYWViOWJhOTA4YTk2ZGI1MTU2NDFjNDUzMjIgcHkzaworNzcyNzAgZTU0NDM0ZDJlMmE3ZDM3ZTI0YjI0NDU3OTU3NWNiNWRmM2M4ZmIwMyByZWxlYXNlMzEtbWFpbnQKKzc3MjcxIGY2ZTM0MDAxNGY5Njk2OWRmNmZkZjU5NzM5M2ViNTU3Nzg1OGU0ODUgbGVnYWN5LXRydW5rCis3NzI3MiBlYjkyNGZhZDkyNzIwNjIwZDk0ODYyYTZjYmNlNTc1OTQ0ZTVlNGY4IHJlbGVhc2UyNi1tYWludAorNzcyNzMgMDNiZmUzMmVmODQ5Y2E4NjNkNjg0MDM4MTBkZjZkNjY0NTljOTk2MiBweTNrCis3NzI3NCAzNTFmYzQyNTBjMWIwYzdhNjU5OWQ4MjVlYWQ3ZmY2NWEyZGU0OTdkIHJlbGVhc2UzMS1tYWludAorNzcyNzUgMGY4YTU4NzkyNTYzYzMzNTRiYTFlYjM4ZGE5OTU2NTNmY2U5YTA2OCBsZWdhY3ktdHJ1bmsKKzc3Mjc2IDliOWFkYzQyYzczYTJhZWJiMTQ4Y2U0ZmNjNGFmNmY5N2NiOGZkOWIgcHkzaworNzcyNzcgOWMxZjMwNmZiMGRmYTU4NDhiNTMwMzdkYWIzZjQ0NDBkNWQ5NTZkNyByZWxlYXNlMjYtbWFpbnQKKzc3Mjc4IDc0NGUzOTFlNDJmZGYxNjAwZTVkNTA3ZjQ1NTRkYzExOTg2NWFmM2IgcmVsZWFzZTMxLW1haW50Cis3NzI3OSA1MTc0OWI2ZDYyZDNlYjJhNDAwZjhjMzM1YjY2N2RlOWY2ZjJlYjk2IGxlZ2FjeS10cnVuaworNzcyODAgOTBmMWU5MmRiNmYyMjU1OGUzZWM0YzMyOTFhMjFmOWNjNjU3Y2YyZCByZWxlYXNlMjYtbWFpbnQKKzc3MjgxIGI1NTg1MDA3MGE1NTE4ZTM3MTJhMWZjYTc5YjY4NWI3YmZmYjIzOTEgcHkzaworNzcyODIgMjM0YmVhYWZkMGM2ZGQyYTA0ZjMyNjE4ZDYzYWFiZDQxMzdkMjhhMCByZWxlYXNlMzEtbWFpbnQKKzc3MjgzIDA2Yzk2OGViNGI0MDNjMjg1NTMyNTBkMjQxMmMxZDZjNDI3MGZmZGUgcHkzaworNzcyODQgN2JjZTcyNmVjNDQwYjE2ZGMxZTk4ZTA5NTJlZjk0N2U0ODQ4YzMxMSBsZWdhY3ktdHJ1bmsKKzc3Mjg1IDM5MTE1MjRhZmMyZDZmMWZlODIyNmY0ZmZmMDIzNjVjZDM1YTYxNDcgcHkzaworNzcyODYgYzcyNjUyMTQ1YjIzNWQ3MzcyYzg4Y2NlMzBhNzNhMTM3OGI5YmMxOSBsZWdhY3ktdHJ1bmsKKzc3Mjg3IGVjYzhhNDU4OTRjOTQxZmEyYWYxYzZiNjI0YTgwNjk1M2ZhOGYzOWMgcHkzaworNzcyODggYzg1N2I1NjY5OWI1NzJkNmFiNjhiZDhkNWI0MjYwYzdkNTg4YTU0ZSBsZWdhY3ktdHJ1bmsKKzc3Mjg5IGM1ODAyYWI5ZTM0ZTcxNTRmNGNkNTBiNjc1NGJkMGE3YmYxZmNhYmYgcHkzaworNzcyOTAgZmM4MzNlZGJhNzY5OWZiYmNjZWFkOGZiODQ1NWY1NTM0ZjRjZDVlZSBsZWdhY3ktdHJ1bmsKKzc3MjkxIDJjYmRhYjI0OTg1ODk3MGQ4NDIzYjhiNzkyNDdmMWM1OTYyYjMxMWUgcHkzaworNzcyOTIgNGJjMjZhODBlNzM3ZWEzZDNkNTU2YmU5MzY2NDQ5OGZmNWI2NTY2YyBsZWdhY3ktdHJ1bmsKKzc3MjkzIGY3ZTA5YmEwY2I1NWEzZjNiOTYyMjljYmIzMTJjYjJmZTE1NWNiZjUgbGVnYWN5LXRydW5rCis3NzI5NCA2MDQ5ZmU0MDIyZmZhNDY3YzBmMDU0NjgxYTdmNjMxYWIzNWNjZTAzIHB5M2sKKzc3Mjk1IGQzOTlmNmRjOWVlNDgzOWYzZWQzNzM0ZmQ4NjAwMzZmMTMxMjdlZGIgcHkzaworNzcyOTYgMGZmMmRhYTgzZDBkN2Q1M2ViMzlkN2VlZDJjYjdiNDY1ZWRlYmI5NyBweTNrCis3NzI5NyBlZmJhYzdkM2EzNjg1MDQ0ZmI1YzJkODczOTk5NjI5ZTI3NTU5NTFmIHB5M2sKKzc3Mjk4IDBmY2VmOWQzOTU5NDAxYjE4NGFkYzJhOTEyYTIxYjZmOTY4MThjYjUgbGVnYWN5LXRydW5rCis3NzI5OSA1OWM0NzE0MTg3MTg1ZjA5MWQ4MDgxNTcwODM2NjdmNzEzYzBlY2Q1IHB5M2sKKzc3MzAwIDJmNjc2MjU4ODZmNjAwMzU1N2ViN2Y5YThkNDgxOTZlNDc5NjdiZmYgcHkzaworNzczMDEgZDU3MjkxZjVlNjY4MTFjMWIxOTk1NDA2MTJjY2ZmOTMyOTg2Njc4OCByZWxlYXNlMzEtbWFpbnQKKzc3MzAyIDhjYTM3Nzg1MzMyMWUzZWQ2YTcxNDFjYmJmNTc3M2QyZWY3YWRiZWQgbGVnYWN5LXRydW5rCis3NzMwMyA0ZmI4ZWFmMTRmMDljYjE5ZjdmNzk0NTMyNDVmYWVkY2Y4OTlhNTk2IHJlbGVhc2UyNi1tYWludAorNzczMDQgZTFmMTMxM2NlNmRhMThmNzJmOTA0MGU1ZTY5NjZmMjg1OGY0MTkwOSBweTNrCis3NzMwNSA3MGY2ZmEzMDg0ZTY3ZGQ4ODI4ODY3YzA2NjQyMTBjYmUxNDc0NDUyIHJlbGVhc2UzMS1tYWludAorNzczMDYgYWZmNWRlNWNjNDQxMGZkOGQxMmVmYWJhNjc5MTVhMjYxOTZiYTQ3MiBsZWdhY3ktdHJ1bmsKKzc3MzA3IDBmZTI1ZTA3Yjc3YjNjY2FkMWIzNzliZGJmOGQ1M2VkZDZjMTM1MzYgcmVsZWFzZTI2LW1haW50Cis3NzMwOCAzMTc1MmNhMDA3Y2YyZjNlNDBiNTNjMmYwN2NmZmMwMjExYjAxYjAwIHB5M2sKKzc3MzA5IGZhMmIyN2ZhNTQxOWU4MWY5ZmM1NGRkOGQ0MGVkY2U5ZDVmMWMyMmIgcmVsZWFzZTMxLW1haW50Cis3NzMxMCA0NDJlMTcwYjU2YzNmN2Y0OWZkYWVmMzBhMTE5YWRjOTU2YTM0MDcyIGxlZ2FjeS10cnVuaworNzczMTEgZTYyMmIyY2ZlZjEyZDZmZjE5Mzg2NWRhNGI5YmQzZmJkNGVjYmUwMiBsZWdhY3ktdHJ1bmsKKzc3MzEyIDc3NjY0N2UzZmIwN2RkMjRjNGI4Y2Y5YmQzOTNkMjkxM2ZlNDQzZjYgcHkzaworNzczMTMgYjA1NzQzY2U1ZTk0MzJmZjU2NzU5MzBhM2FlZmM3YmI5YzI2Zjk3YyBsZWdhY3ktdHJ1bmsKKzc3MzE0IDRhYWIwMjk1NGRlMWQ5ZGNkZDQyMTQxMDI2NmUyN2Y4NTNhNTRkNzcgcHkzaworNzczMTUgMjJlMGZjMjBlOTExMzNkODczY2U4NWQ4ZWFkMjZmZjM4MmMyM2IyMSByZWxlYXNlMzEtbWFpbnQKKzc3MzE2IDJjZGJhNTE2N2RmMWExNTU4ODQ1NDg2NTUyYjVkYjM3YjgxYjNiYzggcHkzaworNzczMTcgYTJkNmQzNDU0NzBlOTRhMzgwNjg1YWIwNTdjZTJhZGUxNTkwOGI3OCBsZWdhY3ktdHJ1bmsKKzc3MzE5IDNlY2VlZjM3ODA2NWE1NWE5N2Q2YjJkMjJkNWM2NzVjYjgwYTNiMTAgcmVsZWFzZTI2LW1haW50Cis3NzMyMiBmOWQyYzM0MjZlMTQ4YzUxMTVhMzMyODZmZmEzYTAxNmE1ZGY3MzNjIHB5M2stY2RlY2ltYWwKKzc3MzIzIGQ2YmEzN2UzMjc3NjM3MDY3ZGQ4MmE1OGNkNTcxZmE0MWRkNTI1ODUgcHkzay1jZGVjaW1hbAorNzczMjQgODgyYzllNzExYTJkMDU5M2Y0Y2JkNWZkM2MwOTY1MDg0MTE2Y2VmNCBsZWdhY3ktdHJ1bmsKKzc3MzI1IDg2YmY0NDBiZjliZjM1N2FjZGNiNDMwNzYzZDFkY2U3ZWY3YmQzNzAgcmVsZWFzZTI2LW1haW50Cis3NzMyNiA2MTNiOThkMGQ4OGJlMDJmN2Q1NDdlMjA4MjNkZTM4NDUyYWU4MDE0IHB5M2sKKzc3MzI3IDA3YTc0OWYwNjZhMTE3MWYzNWIzNjRlODIyZmQyOGM5M2U0NGYxMTMgcmVsZWFzZTMxLW1haW50Cis3NzMyOCBhMTkwMTcxMWIyMjViNDAzOWJjYThlZjE1OTdhZTJiZGVhODdhOTNjIHB5M2stY2RlY2ltYWwKKzc3MzI5IDMwNzA2NmYwMmFjNTJhNDIzM2Q3Yjc5OGJlNTI1MWUwMTdiZmE1OWMgcHkzay1jZGVjaW1hbAorNzczMzEgZjU2MGE4MTdiZmNiNTEyNTIwNDYyODU5NjYzNzA4ZWJhYzQ2ZjQzZCBsZWdhY3ktdHJ1bmsKKzc3MzMyIDhlODJkZDU1MjJmMDM5Yzc4Zjg2YzAxNjFkZmYzMzkzZjlmODY4NmIgbGVnYWN5LXRydW5rCis3NzMzMyBhOGZiZjI5NGQyMmU1YzVmZDk4NGY1ZDFjYzY4MjNhNmM0YmQ2MDk2IGxlZ2FjeS10cnVuaworNzczMzQgOTllN2MxYjhiMWUxZWUxOTgzOTdiMjNlNGNjMDExNjIyMzcxNjZlMyByZWxlYXNlMjYtbWFpbnQKKzc3MzM1IGIzYmI4YjNlNWU0ZWJhNWU2OGFhMjI5Y2Y5ZTM1ZDIzZWE3NmFjNDIgcmVsZWFzZTMxLW1haW50Cis3NzMzNiAwZmE5ZWU0ZWFiODg3NDNmNTgwMjBlMzkyNjY4Mjk0ZDRjZTNhODBjIHJlbGVhc2UyNi1tYWludAorNzczMzcgNmFkNTNmNjcwNTZhODQyMDc0N2JjMWE5YTJmOWQyZDFjOWM0NTk3NSBsZWdhY3ktdHJ1bmsKKzc3MzM4IDI1YzFlNTdjYTFiM2UxODk3ZDhmYzNhMmZiNzg2YzdmY2JhOTRiYzkgbGVnYWN5LXRydW5rCis3NzMzOSA2MTQ0Y2Q0ZDQyMWJhMzI2ZGNhYWE4NGZhNmNiMjVjMTRjNWFjZjI5IGxlZ2FjeS10cnVuaworNzczNDAgYzYxODEzN2YzZmQzYjdkNDk1YjE5ZDk5ZjE0MjExYzJiN2RlOGQ5NSByZWxlYXNlMjYtbWFpbnQKKzc3MzQxIDdiMTI1NDU3MzY1NjRiYzk5NzA3NTYzODI5YWMwNWJmOGEwODljZjEgcHkzaworNzczNDIgODcxNjEwNjllZWYyM2ZjZWUyN2E1YWUzYzRmNjcxODBkZTE3MTRjNyBweTNrLWNkZWNpbWFsCis3NzM0NCAzMTViNThjYjEzYTYzN2M5ZGY1MTBhNjdhNGI5Y2Y3YTk2MzJkYWEzIHB5M2stY2RlY2ltYWwKKzc3MzQ1IGQ4OGUzZjU5OGFhNDEyY2YzYzNkN2I3NzgzNTBkYjhhNzJkZDA5ZjYgcHkzay1jZGVjaW1hbAorNzczNDYgZGU3M2I4NThkZTExZDIxMzljYzRmNjRmZGRjYTQ4NmFkMjE2ZmJiNCBweTNrLWNkZWNpbWFsCis3NzM0NyBmZTVlYzk4ZGU5ZGExZTczMDlkZjU0MDdiNzEyMDJkNWIxZjk4MDZkIHB5M2stY2RlY2ltYWwKKzc3MzQ4IGI4MjY5NDEwNzE1MWMyOGE1ZTFjYzQwNmQ4MTcwZTA4NDg4NWJjYzUgcHkzay1jZGVjaW1hbAorNzczNDkgMjI0NTg4NGM4NmU2MTU3MWJkMjdkYjcwODNjMGY1OGM5ODYyMDk5ZCBweTNrLWNkZWNpbWFsCis3NzM1MCBlMTNkMDcyNDNjNzNhMGM4MmMwOGFkYjAxZDRkODZmOTY1YTU5OTg0IHB5M2stY2RlY2ltYWwKKzc3MzUxIDc0MGE3ODdkYzU5YTBiMjNmNGNjZDZmNmZjYjYxZWM2YzlmNzFiZDMgcHkzay1jZGVjaW1hbAorNzczNTIgMTU5MDRkNWI5OGRiNDc2MDBhNWI4OTkzZGVmYTk3ZDAxYWYyNDE1MiBsZWdhY3ktdHJ1bmsKKzc3MzUzIDIyYTMyOTJjZjY3MjJjN2QwZWRmNDRlYWZkNWFiODM0ZjJlMzY2MTAgbGVnYWN5LXRydW5rCis3NzM1NCBlMGI3ZTgxYWNmNmYzMzI1Yzk3MTk2ODkyYjk0Njk3MDhiNjU4Mjk5IGxlZ2FjeS10cnVuaworNzczNTUgODkwM2VhNmE5ZTY0NzkxNTY3NDU1YTRmYWFhZjRlYWIzMGM5MWUyZiBweTNrCis3NzM1NiBkMzk0MjBhMjdlNjQ2MDhjNjA3NzY5NWYxNDJiMWQ2YTJkYTA1ZGE5IHJlbGVhc2UzMS1tYWludAorNzczNTcgYWZlNmRkZTgwYWJiMzlkNjE4NjRiYWEwNzRmNTA4NWNkMjA0YzdhMyByZWxlYXNlMjYtbWFpbnQKKzc3MzU4IDUxOGFjYjEyZjM1N2ViYTAwZGRhYzFlODlhNjFjZjg0Y2VmZWY3OTUgcHkzay1jZGVjaW1hbAorNzczNTkgYTY0Y2ZlZjFkYTA3NTM3ZjM2NzE0ZmUzMWQwZGZiNDIxMTE1YThlNCBsZWdhY3ktdHJ1bmsKKzc3MzYwIGYyMWYyYzkzMzI5ZWIwODc4ODhkNThlZmViZjRjOWQ2MmI5Y2JmYTcgbGVnYWN5LXRydW5rCis3NzM2MiAxMGI2Njc4ZjVjMDRiM2I2MDViNTQ4ZmViYmY2OGFhNjY3ZGNmYTQxIGxlZ2FjeS10cnVuaworNzczNjMgMzVmZTIwNjlhYjFkOWVhODRmZGE4YzdkNTIwNTNiZjZkNzkzNmFmYSBweTNrCis3NzM2NCA1OWUxYjAzMDZjMGU4NmI0Y2RmNGM3ODU5NGViYTIwYTViNTk4NzM0IHJlbGVhc2UyNi1tYWludAorNzczNjUgODRjYWFjNzFkNzliZDNlOWVlN2U3NGU1Y2NiYjhhM2M4ZDUxMmRiMiBweTNrCis3NzM2NiBiMGVkMzVjOTlkYzZkOWEwM2YyZDFiMjM5M2MwMmUxNzFlMGUyNjE3IHJlbGVhc2UzMS1tYWludAorNzczNjcgN2E2NzUxNWJmOGUzMDhiNjg0ZjA4YmVmODA3NTU2YzM5NzcxMzUzZSByZWxlYXNlMjYtbWFpbnQKKzc3MzY4IDdjYWY1NGNlNTI5ZTdkMjFiM2NjNGY0ZWIwMTJmZDQ5YmZmMzM2Y2YgbGVnYWN5LXRydW5rCis3NzM2OSAwZGQxYWEzMzI2NWYzOGMyNDY2ZGM3NWY5YjIwNzFhMmZkZmI3ZDU2IGxlZ2FjeS10cnVuaworNzczNzAgOWU4ZDc3NTBlNDcwYjhlMDI5N2E4MDk2Yzc3ZTUxMWZhZWU0OTFjOCBsZWdhY3ktdHJ1bmsKKzc3MzcxIGJiNzI3MDMwMDA0N2Y0NDM4NjUxOGVjM2E1YzE2M2I2ZWIwM2RkZTAgbGVnYWN5LXRydW5rCis3NzM3MiAwYzdlYWQwMzRhMDNhOTJlZDVkNWQ3NzliMjY4ZjUzMmQ0ZmY5ZWUyIHJlbGVhc2UyNi1tYWludAorNzczNzMgZGEzZmQ3YTc3OWFjZDI3ODA3ZGZiNDk0YzVlY2YyZjgyOGE0NjhlZiBweTNrCis3NzM3NCBmM2ZlNTc5ZThmMTQ3YWYxNTkzYjI5NjA0MzEzYTBmYWEyMTE4YjdjIGxlZ2FjeS10cnVuaworNzczNzUgZjVjZWJmMTFkNWUwODk1MTgyODA3ZjhkODA5N2I4ZWNkNTI5MzllMCBweTNrCis3NzM3NiBhYzQ5MzFhYjAzNjllNjNkZGUwYmZmZWQyZTE1ZWQ3MzAxYzQ3NzkyIHJlbGVhc2UyNi1tYWludAorNzczNzcgNjE1MDI3MTBmY2U5ZjM2OTM0ZTk3MTAxN2M1Y2EwMzUzZTE5MGI5ZiBsZWdhY3ktdHJ1bmsKKzc3Mzc4IDFiZGExZjZiODVkNGFlMGFjOTc5ZDRiMDcwOWU1M2RjZmVjNjIyZGMgcmVsZWFzZTI2LW1haW50Cis3NzM3OSBkODQ2ODIwOGU4ODI0NjA5ZTRkNDg4MGQ2MzZhMWFjYTY0MTU4MjI0IHJlbGVhc2UyNi1tYWludAorNzczODAgYTFmYjU3NTUzMWIxMDM0Yjg4NjUyMjVlODgzYjExMjc4Nzg1NDU4YSBweTNrCis3NzM4MSBiNzc0OTVjNzdhZTQwN2EyZTE0NGU2MjljMzlmNTU0ZGQ0MTM1ODZiIHJlbGVhc2UzMS1tYWludAorNzczODIgYWVlNWExZjMyYjAwYmY2MDFmNWM2MmJlNmNhNjRlN2I3YzViNGQ4OCBsZWdhY3ktdHJ1bmsKKzc3MzgzIDQ0MWJmY2Q1NWYyZDliN2EzNGI5ZGI3N2Q1NWUzMzY5NGViNzVkMDEgcHkzaworNzczODQgYWRjODVlYmM3MjcxY2MyMmUyNGU4MTY3ODJiYjJiOGQ3ZmEzYTZiMyBsZWdhY3ktdHJ1bmsKKzc3Mzg1IGIzODZlNTNkZjkwNjkyYzZhMjZhOWUzYjU3MGM0MmNlZmE5ZWYxMzEgbGVnYWN5LXRydW5rCis3NzM4NiBlNTdjZmM1MjY2NTZmNjZkM2ZjM2VhMGJhN2M5MjI3NmM0ZGY5YmM1IGxlZ2FjeS10cnVuaworNzczODcgNWFiMmJjMmY2ZGI4MTVlZTUxNDRmODg4ODRkZjlmNDA1ZDVhMWFiMiBweTNrCis3NzM4OCBhZjFlZDE5NzE3ZWYzOWM5MzIyNzBiMmZiZDQ4MzQwZDA0MjU2YjQ1IHB5M2sKKzc3Mzg5IDg5YTlkZDhjNjI4ZDRjMDU0MWMxOTg4MWIwNWQyMzY0Mjg0ZTZhMzMgcHkzaworNzczOTAgYWFkZmMzMWIzZjE0MWYzODlmZWU0YzVlZmFjZTM1ZWYwYTc0OTBmMiByZWxlYXNlMzEtbWFpbnQKKzc3MzkxIDQ2NzVmMTFmYjEyNWQ2OWU5MGJiZjhiNDE0ODU2NjM3NjJmYjM1YjggbGVnYWN5LXRydW5rCis3NzM5MiBiNDA3ZThiZWNhNGE0N2U0MGJhNGFhNmZhNDIwMWJkMmRmZDZkY2Q5IHJlbGVhc2UyNi1tYWludAorNzczOTMgZjJkNTQwOTZkYzhjMjgzOTM5MDgxYzZhYTgwZGRlNmZiNGY4ZDgzYiBweTNrCis3NzM5NCBmOWMwYzQxMWY4MGNjZDE2NjI4YmU0MGQxNzljYzllOTY1NTUyODU2IHB5M2sKKzc3Mzk1IGFiODhkYWE0ZDJjZTJjMWYzZGQ2NGZkMGM0MDk3ZWNlZjAxY2E3MzYgcHkzaworNzczOTYgYTdhYjFhYmRlYjkyMGE1NGM3Mzk5OGM3NzZkODFkOWVmMmU2MjZkYSBweTNrCis3NzM5NyBjMWJlYzJkYjFmY2Q3MzVlNzAyYWZjZDNmNTVmYmYwYjBlZjc5ZTFjIHJlbGVhc2UzMS1tYWludAorNzczOTggN2UyYWY0ZTU3MDM5ZmJiNjcxYjRiNmY5NzE0MjBiYmMxM2M0ZmI0NCBweTNrCis3NzM5OSA2N2Y3YTBlOWUyMzMyNDM5YzcwMzJhYzRmOWY0NzVkNjhlZTYyY2YzIHB5M2sKKzc3NDAwIGMyZmRmMjUzMjlmZjMwY2Y4ZDY4YzBjMGU3Y2Y0NzlkN2IyMDM3NDUgbGVnYWN5LXRydW5rCis3NzQwMSAyY2ZmM2JjZTQwOTY3MjgzNzhiMDFhNzczODkyNGQ5NmQzZmVhNTYwIGxlZ2FjeS10cnVuaworNzc0MDIgMWYxNzc4MThmMWQwYTczNGZjNjE0MjJjM2JmMjI4OWEyNDg2NjUxMyBsZWdhY3ktdHJ1bmsKKzc3NDAzIDc1NTBiNGI5MDVjNzA3Y2ZkYmY0N2ZiNjVkNTMwODZhN2QwNDg5MmEgbGVnYWN5LXRydW5rCis3NzQwNCAzZmE2NzA3ZGY5OGNjMDRjOTI0NjJmOTI5NjIzNTQxNDdjZDVmODRmIHJlbGVhc2UyNi1tYWludAorNzc0MDUgNzhjM2ViNWMwNWZiMjg2MzM1NWI5ODAxNTM5NWZiNjY5NDFiZjA2YiBweTNrCis3NzQwNiBlN2ZhMzk1OTkzNTU0MWE5Y2IxYzUyZTJiYmZhZWIzMTkxZjRmYmJiIHJlbGVhc2UzMS1tYWludAorNzc0MDcgMzM5OGE4Yjc0MzNkMDYyNmU3NjBmOWZlYThhMWFiNzdjMDdhYzQwMyBweTNrCis3NzQwOCA0MDVjOWI2MzllMDU1MTc4Mzk3ZjRhMmM2NjRjZGI1Nzc3ZGIzZWQxIHB5M2sKKzc3NDA5IGZiZjQ5ODdlNTE0YTI3MjgzZjE5MmNmNzU2NTQ5ZDYwYzQ3YWQ5NzMgcmVsZWFzZTMxLW1haW50Cis3NzQxMCAzZTE3MTIyMjFmYTY4NjdmNWRiZTMxMzEzMGQ4ZWI0YzA5MTE0ZWVlIGxlZ2FjeS10cnVuaworNzc0MTEgYTY2NjY3NzA0YWIwZTZlODFmYzY5Yzk0YjAyNGIyY2E4OGUxMGIyYSBsZWdhY3ktdHJ1bmsKKzc3NDEyIDk3YTQwNDE3OWU1OWQ0OGU4MGQxMmI5MTFmOTYzNjdhYmRjZjk3MmEgbGVnYWN5LXRydW5rCis3NzQxMyAyNTQyNTU3YTEyYmQ3MGNkMjdjZWJmMjY0MmVkODAwMmI1MmQ1YTM2IHJlbGVhc2UyNi1tYWludAorNzc0MTQgNzFmMjQ5MWQ4ZjJmNGE1N2E4MzA1MTZiZmNjNGFhZTgyNzcxZTE4ZiBweTNrCis3NzQxNSA2OGZhOTUzYjVlNzZiMTQxZmQ3NTc1ZmYyZmEzZTVkNWJiZTJmMGVkIHJlbGVhc2UzMS1tYWludAorNzc0MTYgY2MzMmQ1N2UwNmIwNDE3NjFiYWJjNTljOTIwYWVlMzM2Nzk2NTliOSByZWxlYXNlMjYtbWFpbnQKKzc3NDE3IGYwMDEwOWUxNmVhYjkwODMwMGZlOGZlOTAzZjIwYzlkNDM4ZmQzYzYgcHkzaworNzc0MTggZGQzMWIxYzAzM2IyYjBhYWIwMjcwZWE5Y2Y0ZTkxZDg2NWY3OWNjNSByZWxlYXNlMzEtbWFpbnQKKzc3NDIwIGRjZTc0YTg3MzBmNTdjZWJjMDczZTQ0NWFiZGUyMjNlYzBiN2NjYjcgbGVnYWN5LXRydW5rCis3NzQyMSAzM2U0MDI5MDljZjI5YmEwZWYzZDE4MzE1OTM5N2JlYTE2ZDNmOTBhIGxlZ2FjeS10cnVuaworNzc0MjIgZWRmZWQwZTMyY2VkZjNiODRjNmU5OTkwNTI0ODZhNzUwYTNmNWJlZSBsZWdhY3ktdHJ1bmsKKzc3NDIzIDhhNWFjOWZmNTA1N2YwZTY2ZjY1Njg1YzRlZTUzNjI3NWRiOTUxYzMgbGVnYWN5LXRydW5rCis3NzQyNCAyZjkzNmI3ODMxYjY3Y2ZlN2NmZDcwNDg4NWMzY2Q1ZjNiNTM5Mjk1IGxlZ2FjeS10cnVuaworNzc0MjUgOGEzMjA2OTRlNTNiNWZjNzk1NjY1ZTYzMjYwYzJjMTA3Y2NmZmYyOCByZWxlYXNlMjYtbWFpbnQKKzc3NDI2IDA1ZmI3MWYwMjUzZDhkYTIyYTUzZGI0YmY5MDcwNmY3MmYwMjdiMTYgbGVnYWN5LXRydW5rCis3NzQyNyA4ZjVjZDNlYjdjNzM0Y2Y2NmVmYzVlNmY4MGUwZTQ2ODY3MGQ3ZTkzIHB5M2sKKzc3NDI4IGQ5ODA1YTk2MzUxYzA2MDFhYWRmMDMzOGUwMDI2OTUwYjQyZWVkMTkgbGVnYWN5LXRydW5rCis3NzQyOSBiNGNlMGM4YjBiY2ZmZTg5ZTRlMjI4MzczY2NjMzY2MTk0YWZjZTRiIHB5M2sKKzc3NDMwIDljODUyYTMxZTg3Y2UwMWY2ZmMwMmE5ZTBjYTVlODY3ZmUzY2MyYzUgcmVsZWFzZTMxLW1haW50Cis3NzQzMSAzZWVjMmU5ZDY0OTNmNTVhMGQyZjkyMmFkMzY3ZTIyOTE2ZDg2MTYxIGxlZ2FjeS10cnVuaworNzc0MzIgMjM1YzgyNjQzNDc0Yzg5NzMwMGQzNDg1ODBhZTNmMjQ5OTkwZmFjNSByZWxlYXNlMjYtbWFpbnQKKzc3NDMzIDMyZWFiNDQzYTk2YjEzNTFkMGY0YjE5YjUyN2E2MmFkNjBlMjU3MmQgcHkzaworNzc0MzQgM2ViMjlhYzdiMjBhNjRjOTFjYzc0NTI3ZTAzOWJkYWU1YWNmODk0ZiByZWxlYXNlMzEtbWFpbnQKKzc3NDM2IGYyMzU4ZDMzZjEwOWRkZGQ1ZGY4MzM5OTJhZTIzMGVjMWYyNTI2MWIgcmVsZWFzZTI2LW1haW50Cis3NzQzNyBlZmE1ODY3ZDhhMTRkMTljYjkzZDdmMzU0MTY5YzM3Y2ZjMWU4ZGU0IHB5M2sKKzc3NDM4IGUzMGZjYjk1NmI1ZmNmMjJiMWRiNjBjZGZmY2M3MTY3MGU5MmUyYWUgbGVnYWN5LXRydW5rCis3NzQzOSA0MWNlYTY2YTI0MjZhNTQ2MGUxNTFlMjEwNzU5ZWQwNjc0Y2FlMzBjIHJlbGVhc2UyNi1tYWludAorNzc0NDAgOWY5MGRiMjc2MGQ5YjgxZWJhMTdjMjIzOGI4NjYzZjI3Y2RiNmQ5MSBweTNrCis3NzQ0MSBkMDhkODZlYWQzNzVhMjJkYmI4MzAyMDExNmIwZDBkMDRmY2FjZGI2IHB5M2sKKzc3NDQyIDhmZDEyZWE2M2M2YWM2ZTJkNWQ2Mzk3NDAxYThjZTNhNzc4NDVkNzggbGVnYWN5LXRydW5rCis3NzQ0MyAyZjU0ZjdlOWMyYjE5YjYyYjU5NTQ0YzQ0MTRlN2JhOWZmMjk4NmZjIHJlbGVhc2UyNi1tYWludAorNzc0NDQgN2NlMjI1OGRlZThhNTg5YzY0NjI4YzY2YTAyMTUyNzE2NTUwZmRjYyBweTNrCis3NzQ0NSA3ZDdiNTc2NWI0NmY3YzRlMTIyMTI2MGQwZGY0OTk0MTZkMzU0YjhhIGxlZ2FjeS10cnVuaworNzc0NDYgMWNjYThkOGY5ZWU1MGU2YmM2NjZiZjZhNDAwNzNkZWU1YmVmZjYxZiByZWxlYXNlMjYtbWFpbnQKKzc3NDQ3IGM1ZGJlZmJjOTMyMTJjYjc1ZTJlODlhYTQ4MDE1ZjMxZjZhNDFiZTEgcHkzaworNzc0NDggMjNmMjFmNDgyMjk0ODU1ZWFiOWFiZDdjNmYwYWUxMTUzM2FjYWQ3NyBsZWdhY3ktdHJ1bmsKKzc3NDQ5IGI3NjQ5NzMzYTM1NDVlNDFhYzgxYmZkNzQwMmQ1MzQ2ZDZkMjU4YTggcHkzaworNzc0NTAgMmE5ZjY2ZGY0ZGM0Njc5MzYzZjVkMzM1OWEzNTk1ZmFiODA3ZWYxNCBsZWdhY3ktdHJ1bmsKKzc3NDUxIGI0ZjMwMWNlYTExNTZhNGNiZjllOGM2MDY4ZTExMjFiMzdiNTQ5MjggbGVnYWN5LXRydW5rCis3NzQ1MiBjMzJkM2IwOGZjZGMxNTU5ODc2YjZiYmIzMDA0MzM2NzY2NTA4MzljIHB5M2sKKzc3NDUzIGJlMzJmNjExMTgzYjkwM2Y0NjUzN2Q2NTQxMmRhOTE0ZTljZDU0YmYgcmVsZWFzZTMxLW1haW50Cis3NzQ1NCBmNWZkMDFiYTQ3YmUwYjdlODgyMjk0NTQ0MmQxNmJkYzI2NzI4NTVjIHJlbGVhc2UyNi1tYWludAorNzc0NTUgYjgwZDI5NjI5NzhjOGNmMTlkMmU1YmQ2YzU5ZmViMGYzZWRhYjViYSBsZWdhY3ktdHJ1bmsKKzc3NDU2IDJhOWNmZTJjZTU5YjQwYmM5OTk3NjNjMGY1ZmJlMGU5NWZhNGFlMjEgcmVsZWFzZTI2LW1haW50Cis3NzQ1NyA2NjJkZmZjMWIzNGQzZjYwZDVmNjE2MDc5N2RlZTA1NDNjMTg0ODhlIHB5M2sKKzc3NDU4IDdiNWY1YWY0ZjVhY2IyZGVmY2E4ZWUzNzEwNzZiODVmM2ZlYjA1MDAgcmVsZWFzZTMxLW1haW50Cis3NzQ1OSBhNmJmNjhlNmU4MjRjNzkwMTg2YTI4NjQ1YjU3NGE0M2YwMGM0OGJmIHB5M2sKKzc3NDYwIDNjMGE0MzNiMjZlMWZjYTFmNDg1ZDYwNjlhNGE3NDA2NGM4NTA2ZGUgcmVsZWFzZTMxLW1haW50Cis3NzQ2MSA2NmYxZDRhNGM3OTk0ZjkzYjJiNDEyYjU3Nzk3YmQ1MDg3OTljYWExIGxlZ2FjeS10cnVuaworNzc0NjIgNWNhMTk0OGE4ZmQ2OTMyMjJlNDc1ZDBiZTlkYmI0NTk2NGVlOWYzZSBweTNrCis3NzQ2MyBkNTEzNTg2NDVlNjA2Mzc1OTkzMTYxODAxNGYwMzZmZjNjZDFmY2U2IGxlZ2FjeS10cnVuaworNzc0NjQgODUzN2MzNzM2ZTk5Njc3ZWM1YjI0NzVmZjIxOTVlMmFkMmU0MjQ0ZCBweTNrCis3NzQ2NSBkMWZkMGEzNGJiMzY4MjkwMDA1ZmU2NTYzNGU1Yzg5N2JmMmNiNjZlIHB5M2sKKzc3NDY2IGJhZDFhZTNmZDA2MDczYTI5ZmQyYzRmY2VjNzg5NWVlODJkZmE2MzYgbGVnYWN5LXRydW5rCis3NzQ2NyAzMTI1MGMzNDgzM2E0NDIyZmFhN2EwNzkyZjk0YmEyYzM3MTgyNmEyIGxlZ2FjeS10cnVuaworNzc0NjggMTViMDY2OGYwZGM1OTdmZTY0ZDFhMmU0YTkwMjc0MTk5OTAwYzVhMSBweTNrCis3NzQ2OSA2MjJmNzliYmE1MjMxYTgzYzZlOGMwYmY4OTAwODRiM2QyMWJiZjgxIGxlZ2FjeS10cnVuaworNzc0NzAgOTIyNWVhNjc3YzRiMjcxMzc5MDAxYzQ5N2MwMTc5MjcxNTA2ZDNiZSBsZWdhY3ktdHJ1bmsKKzc3NDcxIGU1ZTU1ZmZlOWY3MzhiMDhkM2U4MTk2YjIyZjRjZmVhYjI1YmExZjkgcHkzaworNzc0NzIgYjIxZWZjMGNmZThiYmU1NTIwOTc4MjgwNzQ4M2E1Mjg3ODE5NGIwNyBsZWdhY3ktdHJ1bmsKKzc3NDczIDhlMjdkM2I4ZDJlYzQ1OTY4ZjBhZDZjMDdiNmNhMzQ1N2RhMmQxN2MgbGVnYWN5LXRydW5rCis3NzQ3NCBhYjkwNWY3NGJmMTE3YTFhNjhkMDdlODViNjIwMGI3YmFhMTA1NDE3IHB5M2sKKzc3NDc1IGM1YjZhNWI4M2FiNWRjNjcyNzA3M2YxYTIwODY3ODBiZTQ0Y2JlOTYgbGVnYWN5LXRydW5rCis3NzQ3NiA5ZmM3ZjI5N2QxMzJiOWE1YTEyOTMxZTFhYjc1MTFmMmMxZTQ2OWZjIHB5M2sKKzc3NDc3IDU3MTAyMjgzYWI1ZWNmNTUzMzlkMGY4YTkyNjhkZmNiNjgwNWNkZjcgbGVnYWN5LXRydW5rCis3NzQ3OCBjNWEwYTVkNmFjYjA3YmE5YzIzODYwNGIyMzhhY2FjOGYzNWU0MGYwIGxlZ2FjeS10cnVuaworNzc0NzkgNGY0ZjAwMWM4MWY1NTllMzRmYWVjZDAxOTU3YzljYjg4YjJkYmQwMiBweTNrCis3NzQ4MCA0NzhhYmM3YmNhYWFkY2EzMzYzMzM2ZjM4ZjJiZjY4MDc0OGI1OWQ0IHJlbGVhc2UzMS1tYWludAorNzc0ODEgMGY5NzRiYjIzOGVkYWEzZjFjMmQxZWJmZmM0ZGU0MDVhNGJkZmNhZCBsZWdhY3ktdHJ1bmsKKzc3NDgyIGM3ZjMzZDUyMTZmOWM0MGMyMmEwMTk3Y2RkODg5OTVkMDg3NTIyODYgbGVnYWN5LXRydW5rCis3NzQ4MyBiMzlhMDIxOWY3MjdlOTNiNGQ2OTFjMTcyODNkZTI1ZmJkNGM0YTdlIGxlZ2FjeS10cnVuaworNzc0ODQgMTAzMDY3ODBlNWMwY2Y1ZGRmNzM0NWNmY2I3MmMzMTZjYjhmZTQ4OCBsZWdhY3ktdHJ1bmsKKzc3NDg1IDIwMWI0NjFhMTJiZGZiMWM4MmRjNzAwMTA0NGQwZGY1MGEyNjUwODIgcHkzaworNzc0ODYgZThmODQ2MWQ2ZDFkZjUxZjE2OGY5YWJhZDRkMjI4YzdkMzk5NDNlOCBsZWdhY3ktdHJ1bmsKKzc3NDg3IGM0MzBlNjY0ZTYwNWJmZTBkNjJlMjQwNGRkMjcxZmJhYWEwZTFjZTcgbGVnYWN5LXRydW5rCis3NzQ4OCAwM2ZhNjFhMzdlMmQ1MmQwMDFiZTkwNzI2NmI2YThhMzgyNjlkZGVlIHJlbGVhc2UyNi1tYWludAorNzc0OTAgYWYxODA5ODEzZGU5NmQ2NDMxZjFhYTllNDllYTdmYzQ1ZmYyMzU1YyBsZWdhY3ktdHJ1bmsKKzc3NDkxIDc2ZmI3ZGJkNzM4ODQyMzJlMzBhZTFjYTAwOWExNmM0Yjg2MjViZTkgbGVnYWN5LXRydW5rCis3NzQ5MiA5MjM4NGQ3ZjQyNWE1OThlZGZmMjkyODIxYTk0ZTUxYjZhNjRmNWRiIGxlZ2FjeS10cnVuaworNzc0OTMgMTY4MmI5NjJlOGRlZTFjOGY1OWViOTUxZGFkMjhkZTY3ZDdlZTQxZSBsZWdhY3ktdHJ1bmsKKzc3NDk0IGNlMTFjMTI3MGI2OTA2Zjk0MjhhNjVmOTNjMzE1YTdmZTA4Yzc0YmMgcHkzaworNzc0OTUgZDc1OGViMmM4MjhlODZhNjIxOGVjYjFmYzE0ZWZjNmE5MWU4YmRlMCByZWxlYXNlMjYtbWFpbnQKKzc3NDk2IDliYWIzZDdhYjRmNTFiNzNlOTY0NjY1MWQ1MTEwNTRmMzA3YTY1MTMgcmVsZWFzZTMxLW1haW50Cis3NzQ5NyBiM2Y1MGQ2Y2I2NDA2YmEyYmMzMjk2NDIyZGE0ODYxMzIwNWY5OWNhIGxlZ2FjeS10cnVuaworNzc0OTggZDE0MGY0OTAxYTQyMzgwNmU5ZmFiZWU3NmZjZDA4NzdjYjViZTFhNyBweTNrCis3NzQ5OSA5ZTczYmU1ZmE4MGY4NmNjNWMwMjk5NmEyMDAyMTBiMTVhM2NjYWUzIGxlZ2FjeS10cnVuaworNzc1MDAgMzU0NjllNzlmZjgwNDZmZTJhMTNjODJmNjE5OTFkNmNmZTgwNGRmNiByZWxlYXNlMjYtbWFpbnQKKzc3NTAxIGViODRmNzIxN2M2NWQ5Mjc4ZTRjZjBjNjYwMWZjYjg1ODkwODBlNmEgcHkzaworNzc1MDIgODA0MTNjMTgyYTI4YjY4MDBlNzM5NzEyMjViMTJhNTdhNDMwY2YzMSByZWxlYXNlMzEtbWFpbnQKKzc3NTAzIDY1N2YxNjU4Mjk0MzczOWI5MDZmNjZmN2VmYWQ0MDE0NDkyYzhiMWMgcmVsZWFzZTI1LW1haW50Cis3NzUwNCBjNzZkNDFlNzQ0YzIzMTkwMzAwODk1MzZjYmJmNWU1NWJhM2IxNjYzIHJlbGVhc2UyNS1tYWludAorNzc1MDUgZDNiZWExNjY5ZjJkODkzZjI4ZDc1MTdjYzRkZDJkNDU3NTQzN2ExMCBsZWdhY3ktdHJ1bmsKKzc3NTA2IGVlZjJlYmMwODFkZWUwMDZmNmUzNzFiYzk4MDI1YzA3NzQ1MmUzZGUgbGVnYWN5LXRydW5rCis3NzUwNyBiZTBiZjBiYmQ5NGFmZmVjNTQxNjRmMDY1Y2U0MmMzZTZlZTI4ZTMxIHJlbGVhc2UyNi1tYWludAorNzc1MDggYjMwNDhhNTJlM2M4NWFjODMyMzViN2I5ZDUxNWYxNTQyZWIyMjIwYSBweTNrCis3NzUwOSAzYWFlZjJlZGZkYjM1NWRlNThiZGQyZTExZTg0ODIxZmJjYjJiYmUyIHJlbGVhc2UzMS1tYWludAorNzc1MTAgMWY4NGRkYWZiNmEzOTJjNGIwMDExMzU1NmZlMDdkNjkyYTc3MjE4MCBsZWdhY3ktdHJ1bmsKKzc3NTExIDc4NjEwYjQ4YzM5NmMxNjRmMzVhNzM1ZjA0ZDU2N2QxM2ZiOTVmMjggbGVnYWN5LXRydW5rCis3NzUxMiBlZjBkMDRkZTRhNDNmOWUwYzg0MGQ1MDIxYzZjNmVkY2JmMjM2YWJiIHJlbGVhc2UyNi1tYWludAorNzc1MTMgMDgyZDBlYWY4ZGRhZGM5Yzc5NThkOGVmMDlhNzc1YmIzMjc1NjA3MiBsZWdhY3ktdHJ1bmsKKzc3NTE0IDc2MDc2NjU5YjIyNDllMDQ0MTdmYjhlOTQyYWUzOTJmZTc2MmExNzQgcmVsZWFzZTI2LW1haW50Cis3NzUxNSBmNDdkMTk5ZWU2Njk3ZjBmNjA0NjNiYmIwYmQ3ZmZkMjY3MzI1MWE0IGxlZ2FjeS10cnVuaworNzc1MTYgMjAwNmZkODE2ZDIyNTIwMmMwNDZiYmZhNjI4NGFiZGFmYjUzYjYwMyBweTNrCis3NzUxNyA5MDA2MjQ1YjE5YWZmOWNmZmMwMDAxYTYwZjlmOWEwZTJhOWRiZTRlIGxlZ2FjeS10cnVuaworNzc1MTggNDI4OGM0MGM4NDQwNzViM2NkZTE3ZDg0ZWE3MGRmYmNiYzNjMzM5MiByZWxlYXNlMjYtbWFpbnQKKzc3NTE5IDU2NzNkYzNiNjQzMmU0YzkwYzk4NWI1MWU0Y2FiMzg0YmIwNTUxYTUgbGVnYWN5LXRydW5rCis3NzUyMCBlYWZhYmFkNWU2MDFlZWQ1NTUxMjA3ZTk3YWYxYWIwZmFiNjA1M2VmIHB5M2sKKzc3NTIxIDE4OWE1YWJiMjMyM2UxY2YzNWY5OGI5MTU0YmIyNjhiMTA0YmIxN2EgcHkzaworNzc1MjIgMzJkNmE5NGNkMGZhMzlmZTU4OGNiYzdjZTE5ZTljOTk5NTJmZGE1MCByZWxlYXNlMzEtbWFpbnQKKzc3NTIzIGExNmIyNGIyNWFjMzFhN2JmODk1YmE3YmI4NGJjYzk2YTk5NTU3N2QgcHkzaworNzc1MjQgMGZhYjNjMmRkMzE0Y2ZhZjgzMWI2ZWMxMGI5Zjg4OWY3Yzg0MWYxMyByZWxlYXNlMzEtbWFpbnQKKzc3NTI1IDI2OWMwOTkyMWJiMmZhNDdiYWVkNDFmMTBhZmQ0Nzk1N2VkN2U5MjkgbGVnYWN5LXRydW5rCis3NzUyNiAwODk1MDQwYWRlZmY1MjYyYjRhMGUxYmI1NDkyNGYzMzc1ODA1ZDI4IHJlbGVhc2UyNi1tYWludAorNzc1MjcgZjIyMTgzZTY4ODVjOTk0YzdjNjk5MmJkZWY5ZTU3NjlkMDVmMzk1MSByZWxlYXNlMjYtbWFpbnQKKzc3NTI4IDExYWQ0MmE3ODZhMjEzOTY0ZmEzNmI5ZDUxMjVlMjM0ZDE2NDc0NTYgbGVnYWN5LXRydW5rCis3NzUyOSBkMTQ5M2NkOTEzMDA2ZDUzYWQwNjY0ZTlmZjhlYmMyOGVhMGUwN2RhIHB5M2sKKzc3NTMwIDhlMTc5YTBmY2I1ZWI4YjU0NDE5YjBlNjRiZGQ1YWFlM2MwMGZjMzMgbGVnYWN5LXRydW5rCis3NzUzMiBjYTAwYWNjOWMzMDRlYjdhOWZmYTQ4NWY2MTg5ZTBhODc4YjEwYzE4IHJlbGVhc2UyNi1tYWludAorNzc1MzMgNWMzMmYzYjY1ZDIxNmZiMzRkZDc5NGEzYjAxNTcwYzRmYTUzZDQ4YyBsZWdhY3ktdHJ1bmsKKzc3NTM0IDE3NGJkYWIwMjRlYjgzNTAwMzk1MTQxN2RiMjAxNWQxZjU2NWYzNTggcmVsZWFzZTMxLW1haW50Cis3NzUzNSA2MzUxZDNkNTNkZWQzNzgwZGRiZjNlYjQ2YWU5MWUwMjNjYjM2OTBmIHB5M2sKKzc3NTM3IGQ4MWU0ODg0NmI0ZWJmOGEyZjhmMjE1YjI2NDJkYjU2NzE2Mjk0MjAgcmVsZWFzZTMxLW1haW50Cis3NzUzOCAyOWExNDEwY2Q3ZGM4MmM1MTAwN2JhNTkyOGIxZGJmNTA3ODQzOTJiIHJlbGVhc2UyNi1tYWludAorNzc1MzkgMWVhN2ZiZDk5Mjk0NTQzODk1NTNjYzMxNDE4ZmMwMTdhYTZlNjhmNiBweTNrCis3NzU0MiBiNWVlNDc4MjFmNGJkODdjY2MxYmQ5NzNjN2ZjOGJmMmRiMjZmNjg1IHB5M2sKKzc3NTQzIGVkOGIwZWUxYzUzMTFjZWZhZGQxMmI2ZTM1N2ZjY2UyMDNkNDEyNzcgcHkzaworNzc1NDQgYTZjYzQyMTJjZDU3ZTMwZDM1YTFkZWUwNTllYjgyYmRhOTlkMWQ3YSBsZWdhY3ktdHJ1bmsKKzc3NTQ2IGE0YTNlNjg4NDQ2ZTRlZTI1MWI4ZWEyZmE2OTk5NjNkMGYwODY1ZDIgcmVsZWFzZTMxLW1haW50Cis3NzU0NyBlMzUzZjVkNzlmNGNjOTM0ZjJmNjgxNzcxOGVmZDIwM2QxYTA0YjI5IHJlbGVhc2UyNi1tYWludAorNzc1NDggODFiMzE0NTA2MWQ5OGNlYzRjMmZmZjI0Zjg0Mjk4YzFkMzc1ODUyMiBsZWdhY3ktdHJ1bmsKKzc3NTQ5IGZiNzNhYTI0NTAxNGFiOTY1ZWUxNjlkMTY1YzNlZTM1ZDhiZDQ5MTkgcHkzaworNzc1NTAgNTM2NmQ1NzVlMmNkMWQyNGJhYWYzZDlkZjNiYmVhOGQ4OGE4MTM5OSBsZWdhY3ktdHJ1bmsKKzc3NTUxIDYwZTA2OWM1OGEzNWRjMjJjZThlYjJhNTNiZjk0NjMzMWQzZDE5OTAgcHkzaworNzc1NTIgN2FlY2ZhNDQzMmRmM2E4ZGVhZTk2NTE4NzJjMDNjOGFlZjEwYTk1ZSByZWxlYXNlMzEtbWFpbnQKKzc3NTU1IDcwN2Q4Y2E1ZWEwYjAyM2IwYjNlNTFlY2E0OTkzZGRmYWQ5NDk5YzEgcmVsZWFzZTI2LW1haW50Cis3NzU1NyA5M2ZhMTBiZWYxZTIyZmY5NTliZjcwOGRhNzk4ZDdkNGM2MTNlNGUzIHJlbGVhc2UzMS1tYWludAorNzc1NTkgOTJhNjJkZmZhNDA0OWNjNzg0MDExNDJkYTEzYjE5OGNiZmE3ZjZjNSByZWxlYXNlMjYtbWFpbnQKKzc3NTYxIDM1ZjdlMjMwOTdkODMwYTZkY2VkN2E0MGFmMmE4OGE0ODNlMWUxZjkgbGVnYWN5LXRydW5rCis3NzU2NiA5MzA0NjRmMzIyMDQ2NTNhZmNiNDQwNzlkMGIwYjg3OTQ5ZmNhZDkzIGxlZ2FjeS10cnVuaworNzc1NjcgMjNmMTJjYmYxMjJjMTMxNDdhMDQ4OWY4NzllYzE4MTRhYzc5YjgxNiByZWxlYXNlMjYtbWFpbnQKKzc3NTY4IDFhZTMzNzljMDIwOGY2ZWM4ZjRjYTI0ZTk1ZjhjM2RmZGY4MTM5ZjggcHkzaworNzc1NjkgYTMwNjgwYmNiNzU4OWNiZWZkNmFjYmFhYmUyNjU1MjA1OGJhMzA1MiByZWxlYXNlMzEtbWFpbnQKKzc3NTcwIDQ1NDdhOWJmZjdjNzdlNzczNzBkYmNjYmIxYTg2MGI2NjEwODE2ZmQgbGVnYWN5LXRydW5rCis3NzU3MSA2NmU1N2ViNTk5NTEwODE4Mjc2NGFjNGQ0NTZjOTM0YTY4MDUwZTcxIHB5M2sKKzc3NTcyIGE5ZmIyMDM3MDhjNDExOTc2MDQ5YjQ2MTBhODc5YzcxMDk4MjRiNjYgcmVsZWFzZTMxLW1haW50Cis3NzU3MyAxY2VmZmIzYzhjYjJlNTVjOWM4NDEyOGEwY2NhYmY4ODljNzZmMDI5IGxlZ2FjeS10cnVuaworNzc1NzQgM2JkNmRmMTFkMWQ2YzI2YTI0ZGRhZTE3NDA3NWQwZjBjMGQyYTdmOSByZWxlYXNlMjYtbWFpbnQKKzc3NTc1IGRmMDIwMDc5ZTI4ODlkNDBhZTIyYzg1NTg0ZjE4NDllYjMwYTlkYzkgbGVnYWN5LXRydW5rCis3NzU3NiA4Zjc5NzFiODIwYTQzNWIxMDVlMWU0NzFmMDFhZjBkNjRmYzU3ZjFiIHB5M2sKKzc3NTc3IGZiMzM3Y2I0NmI5ZGU4NWZmZDUyYTZiYjBkZDdiYTU0OTkxMjAzMmYgcmVsZWFzZTMxLW1haW50Cis3NzU3OCA3MzIyYzU2OTEyOTRkNGRjMjU3NjVkOGFlYmJjMzAxOGYyNjY2ZjI3IGxlZ2FjeS10cnVuaworNzc1NzkgYjk4ODhjMTMzOWRmNTIwYmFlY2M5YjhjOGE0MWJmZjA2NjIwYjk2OSBweTNrCis3NzU4MCA2ZWMxNGJjNmFiMGM5YjU2NWQ0OTgxMTY0MDAzNzkxMDlmNzgzMzdhIHJlbGVhc2UzMS1tYWludAorNzc1ODEgODAwNTU5YzlkNTA0YmZlYTFiNDk2ZmE0MTQ1ZDRlMGVmNWE0YWEzZSBsZWdhY3ktdHJ1bmsKKzc3NTgyIGQ2MGI3YjJjNGExZjUxNzRkODlmYmNhODZlNmNlMDFiNDkxYmQzYTUgcmVsZWFzZTI2LW1haW50Cis3NzU4MyBhMTE3Y2I5MjZkMjA3ZTA5YWUyOTMxMTFmMGM1OWVhMTUxNjcyM2E3IHB5M2sKKzc3NTg0IDhlOTY3NzAwN2ExZThjM2MzNGMxN2FiODUyYThmN2I4NjllNzdkOGQgcmVsZWFzZTMxLW1haW50Cis3NzU4NSAwYzhjYmRiYWZhYWRkYTdhZTdlZTE5YmI1ZWNjNTRkOWIxZDRlMjkxIGxlZ2FjeS10cnVuaworNzc1ODYgYzI0NzUyNmQ1YTViMDM0MmNkYjgzYmNiYmJiYzViOGU4NzkyMGQ2YiByZWxlYXNlMzEtbWFpbnQKKzc3NTg3IGE0ODVmY2RmZTg1OTYwMzg5Y2E5NTVhN2U1NjY3N2NhNmNjN2RmYTUgbGVnYWN5LXRydW5rCis3NzU4OCAzYjQ5ZWY2YjA5ZmZhMGE5NThhMjgxZDM2MmYyNzVmZjFlOWU1ZWZmIGxlZ2FjeS10cnVuaworNzc1ODkgNWM5YzUzYTcyMWE1NTRiZmIwMjVmMTRiMGRkNjUyMjNjYWJmNGZiMiBsZWdhY3ktdHJ1bmsKKzc3NTkwIDNlNjI5NDcxODUwYWZlODM5OWY3YTc0YTgyZTUzNjFlOWYzYTkzZTIgcHkzaworNzc1OTEgNjAzNmQ3ODY5YmQxZjg0MTE2ZGRlMTM1Y2MyMjM0NGVjY2VlOTVhYiByZWxlYXNlMzEtbWFpbnQKKzc3NTkyIGJiMTBmM2ZmYWUwMjgxZDM2OWFjMmI3NDgyMDdiMjk2YTM2NDY4MmUgcmVsZWFzZTI2LW1haW50Cis3NzU5MyAzYWFkY2UzOWQzNDUyZDliOTZlYTM5ZjNmZDRkNWRhZjhlYmM5MmVhIGxlZ2FjeS10cnVuaworNzc1OTUgZmVhY2FhNmU0MGI4NGI3MDQ4MThmZTYxMmY4ZTRlODhjMWIxZGZiYyBsZWdhY3ktdHJ1bmsKKzc3NTk2IGE5ZDUxOGZhZGE1OTk1NjVlY2M4MWQ1ZmZlZTU1ZTExNTVhZjA4OWQgcmVsZWFzZTI2LW1haW50Cis3NzU5NyAxMjFkZWVkNTk2OGVlNjhlNDFlOGQ0ZjI5ZWUxODEzZTZiYjA2YmE1IHB5M2sKKzc3NTk4IGQ1OWY3NmQ2Yjc5NTc3ZGMxYTNkYzFjMjhmMGY4MTAwZWJhNDUxZTEgcmVsZWFzZTMxLW1haW50Cis3NzU5OSBlYzE5MjY0M2FkY2JhMjlhNmViZGFlNGRjMzdiMzE4NzdiNDViZDhlIGxlZ2FjeS10cnVuaworNzc2MDAgODZhMzVlNTliNmIxOTU4NWU0YzRhMmEwN2YwNTU1ZjVmMGQ3YjZlZCBsZWdhY3ktdHJ1bmsKKzc3NjAxIDllNTliZTFkMGMzNzEwYmIxZWFmMjM0YTg4MTg2ODU2ZWM0M2JiMjEgbGVnYWN5LXRydW5rCis3NzYwMiAyZGVmMWRmZGYxZjYzOThiZDBkOTVmMTIzNTE3MTFkMzkyZjU5Y2QxIHB5M2sKKzc3NjAzIDE2Y2RjMTVlNWQ3NWJiMWIzMDY4NDFiOGI5ZWMyNzBjMjBmODA0ZmIgbGVnYWN5LXRydW5rCis3NzYwNCBmNmE2MjZmMzQ4NDBmYTBjM2Y1ZWJhZDhiODYwMjg4MGI2YmRjNzcwIHB5M2sKKzc3NjA3IGRmNGQyMTU4ZmEwNDg2MWQ1ZjFmNDMxMTVkY2NiZTg0Njk0YWEwMTAgbGVnYWN5LXRydW5rCis3NzYwOCA3NWJmYTVkYTFiZWI1MjUyN2Q3NGJlMGM5MWNlMDMwMjYyNjY3NzU5IGxlZ2FjeS10cnVuaworNzc2MDkgZjgwZTZiZDRmZDRlNmE3Y2M0YTYxNWVjMTYzYTlhNzAyMDc2YTMzMSBsZWdhY3ktdHJ1bmsKKzc3NjE0IGJhYzgyMWRmZmVhODA0ZjFlZjkxNmYzMGRkYzVmNTZkZGM2ZTI3YzAgbGVnYWN5LXRydW5rCis3NzYxNSA1ZGJiYzQzYzU5MWI5MmQ3MjViN2Q5MTAxNjFmNTY3MDM4MTgzYWQ5IGxlZ2FjeS10cnVuaworNzc2MTYgODg2MzIwZjFiYTgyYTA1YTJkN2RiMDFmMmQ5MDE2ZjA3MDkwZmI3YiBsZWdhY3ktdHJ1bmsKKzc3NjIyIDczZmVjZDRlN2ZlYzM0ZTkzODgzMjA0MDQxNjFlYzZiN2Q4NDRmNjkgcHkzay1jZGVjaW1hbAorNzc2MjMgMjY1ZWIyNTBlNGE1ODE3NTg4MmViYTI1ZWI5Mjc1MjI0MTc2ZjYzYSBweTNrLWNkZWNpbWFsCis3NzYyNCA5YzU2M2E0ZjNmOWEyNDRiNGFjZmExYTg5YzZhMjU4OTVmMmU4M2M0IHB5M2stY2RlY2ltYWwKKzc3NjI1IDQ2NGEyMzY3NjU0MDk4MmFmMDA5ZTBmODFjMTI3ZWM3ZDQwYTA2YTAgcHkzay1jZGVjaW1hbAorNzc2MjYgODc1MjViZDQ5YTlkNjE1NDNkMDViMWZiZTk0MGEzZTBjOGFiYzk3ZiBweTNrLWNkZWNpbWFsCis3NzYyNyBkNjZjNmViYmM2MTc0MGYwZGI1NmViYWRiMzBlMDA4YzJkNDNhMGU0IHB5M2stY2RlY2ltYWwKKzc3NjI4IDgwYjA3OGQwNTU3NzM2NjE5YTkxZWJmNTNhMzdiZDVlOWFkNDYyMzkgcHkzay1jZGVjaW1hbAorNzc2MjkgZDgyOGNjOTFjMDliNTA4MDcxMWQyZGM1NDMwYTQyNmE0ZGYyMWQxYiBweTNrLWNkZWNpbWFsCis3NzYzMCAxM2JiOWE5N2UxYzUwMjRiNTg0YjBiMTQzMTExNDA1MmY3YTYzN2VlIHB5M2stY2RlY2ltYWwKKzc3NjMxIDUxNzEyYzQyYzVmYjFmNzZiYzFhMjg5NzhhYmFjMzY2OWRhZThkMzMgcHkzay1jZGVjaW1hbAorNzc2MzIgY2VjMTQwZjcyZDAzZmJlZmQyYTQzYWRkMDVkNTM0YTM5MWRmMDM0YiBweTNrLWNkZWNpbWFsCis3NzYzMyBjMWRjZTk1OTZlNzcxYjliNDIxOTdmZGJiMjU5N2FlYjQwYWM5MTI4IHB5M2stY2RlY2ltYWwKKzc3NjM0IDA0ZGVhMDA2MDI1N2JmYTI3ZTJkMWJkMjQ3MzAwNmI4MDRjNzhhNGMgcHkzay1jZGVjaW1hbAorNzc2MzUgNDBhM2JlNzhiYzk5YmQwOTdhOWIxNTkzMzZhZmRiZDM3YzI2MmZiZiBweTNrLWNkZWNpbWFsCis3NzYzNiA3M2UzZWU0NjNjOTQ4NzcwZDhlMTZlMzk3NDBmNGEzMTRhYWIzY2E5IHB5M2stY2RlY2ltYWwKKzc3NjM3IDAwMmY3YWIzNWUxN2QwNmVlNTlkZTI4NDdkMzhjMGRkYjU1MTcyYTEgcHkzay1jZGVjaW1hbAorNzc2MzggM2RmOWI0MGZmNGZjZTk2YjgxYWQyMjE0MjVjZTM4M2FhNGVkMWU4MyBweTNrLWNkZWNpbWFsCis3NzYzOSBmNjQ2YWFhOTFiMGU3Y2QyODRjODY4ZjY5NTdkODFjNTAzYTliZDY1IHB5M2stY2RlY2ltYWwKKzc3NjQwIGZmMzU2M2JiYmI4MDM5YmFlYjU2MzU3OGIzM2YyMDAzZWZkMTRjMTEgcHkzay1jZGVjaW1hbAorNzc2NDEgOWNmMjBiZDE1MTZiOWM5NWZkZTM0ZjNiYmQwYWM2MzllMTkxYjgwNSBweTNrLWNkZWNpbWFsCis3NzY0MiBlZWY3NmM4MTJiY2JkY2FmODlkMzIzNDM4MDUyODZkMjQzOTg0ZDBiIHB5M2stY2RlY2ltYWwKKzc3NjQzIGMxNGM5NDUzMTI3MzdiY2JmYzZmNzU3OGZiYjRjNTk4OTc4NWI4ZmUgcHkzay1jZGVjaW1hbAorNzc2NDQgYjQ3MWUwN2EyMzc1YzZhMjg3MmNiY2UzMTg5MzU2MWVmYjExN2RkMSBweTNrLWNkZWNpbWFsCis3NzY0NSBiNGFmMjE0NTY3OGI4ZTkyY2UyNjYxMDNmMThmYmU1NjFhMThiODk0IHB5M2stY2RlY2ltYWwKKzc3NjQ2IDY5NGFmZjE2Nzc3ZjgwNGZiYzBhZjdjZDkxYjgxZDQxM2Y5MTg0MzYgcHkzay1jZGVjaW1hbAorNzc2NDcgN2QxOTk2NzI3ZDA4NGQ4N2I2MmMxZmVkYjhjZjAyOGE3NmRiNjc5OCBweTNrLWNkZWNpbWFsCis3NzY0OCBkYmMwMGZlMzc3NzE5ZDQ0YWRmMzZiMDJhMTZjY2Y2NDE1YmE4Y2RlIHB5M2stY2RlY2ltYWwKKzc3NjQ5IDFjYWJkZjI4OTM4ZWU0ZWYwZGY5MWMwZDExNDFjNzEzZmM4Nzg3YmUgcHkzay1jZGVjaW1hbAorNzc2NTAgMGJkMmIwNzIwODMyOTg1YzhjMTQ0ODEwMTgwNDFjYmQ5MzBiNGU0ZCBweTNrLWNkZWNpbWFsCis3NzY1MSA5MzFlYzU1ODkyNzE2NGIwNzVkNDgxMWIzODY1NjEzYWYzNmMwYmY0IHB5M2stY2RlY2ltYWwKKzc3NjUyIDBiYWMzZGI0ZDVlMjhjNzhhYzNjNjM2ZWQxOGVhZTcyNjllMTgwN2UgcHkzay1jZGVjaW1hbAorNzc2NTMgNjMyNjNjY2RiMDgxYWEyYWJlNmU0MDA3ZDYyNGRlYTU2ZDE4MTczZiBweTNrLWNkZWNpbWFsCis3NzY1NCA2ZDg5NmU0MjRhM2RhNDM2ZTgzOTUwOWY4NmM2MjBkMGJkM2FmZTFkIHB5M2stY2RlY2ltYWwKKzc3NjU1IGIyMjE0ZWUyNzk4Nzk0ODFmYzZjM2I4NGNjNzU4Mjk3NDVjYjc3NDYgcHkzay1jZGVjaW1hbAorNzc2NTYgMDgxM2U4OWQwMTkzZjY3OTkzZjg2NTdmNWJmMjJkMTg1ZWMxOTkwNCBweTNrLWNkZWNpbWFsCis3NzY1NyA0YWQwM2Y3MWQxZTEzY2Q1MzBkZWM5ZjRlODhjZGUxNDdmMGM1NmU3IHB5M2stY2RlY2ltYWwKKzc3NjU4IDU3N2MwOTlhZGE4ODE3MDE5Nzc4MzdkZTU5MGFjNmYzY2UwZjEyYTQgcHkzay1jZGVjaW1hbAorNzc2NTkgZjA0MDg2MzdiZTc3ZjI5OTc5ZTg3NzFiN2MwMjMzODAxZmI0MTQxMyBweTNrLWNkZWNpbWFsCis3NzY2MCBiMTk4YjBlMjFkNjJjYzY4ZDZlYWNhOGMzNTVlOTgwNzZmZTBmNmQwIHB5M2stY2RlY2ltYWwKKzc3NjYxIGQ0MmE4NTQ2M2Y5Y2Y0MjhlMjRkZDQ1ZjEzMzA4MGYzZDc3ODgyZTcgcHkzay1jZGVjaW1hbAorNzc2NjIgNWVlYzNiMTFlNDFlMTkzN2RhMDkwODQ0M2Q5ZjI3NjAwMzAwM2RlMyBweTNrLWNkZWNpbWFsCis3NzY2MyBlMDNiOWJkY2Q0MDVlOGQ5NGJjMWEzN2VlMDk5NjdiNTJlNWIzNTg0IGxlZ2FjeS10cnVuaworNzc2NjQgYWU2ZmIwNWI0YzE5ZGU2MzM3Zjg3Yzk0ODYxODVkMjMyYmFkYTY2MCBweTNrLWNkZWNpbWFsCis3NzY2NSA3ODJhNDBmZjNmMGRjMjJjYjY2NTRkODNjZTFiOWFkOTEwZjQ3NTgyIHJlbGVhc2UyNS1tYWludAorNzc2NjYgZjM0ZjhhZTc2NDZlNzA2MzlhZTQyOWE1MTcyYzVhNmFmZjlkZWNlYSByZWxlYXNlMjUtbWFpbnQKKzc3NjY3IDRmOTViNDM1MjE3OWM4MmQ4Mzk3ZTUzOWU0YmUwZGJhZDJmODMzYzUgbGVnYWN5LXRydW5rCis3NzY2OCAwNTllMWZkNzg2NWNmZTdiNWVhMTc5ZWYyN2U5NGMxMGZlNTllYmNjIHB5M2stY2RlY2ltYWwKKzc3NjY5IGZlZTdhODhiMDZkMWZlYzk1OWQ3M2RiM2VkOGRjZmExNWIyMTgxZjIgcmVsZWFzZTI2LW1haW50Cis3NzY3MCBmMzhjMTE5NmQ5ZmYxN2U0ZjM4ZDJkMTVhNDBmYTZiYzgxNzRkY2Q2IHB5M2sKKzc3NjcxIGYxYWNkMDE3MjVlMDE4NjUxZDBiYTgyZWQ3NWMxNWViODA1ZWJlMDEgcmVsZWFzZTMxLW1haW50Cis3NzY3MiBmYmU2ZWNiOTFjNGJlNTk1OTg0YzE3NDY0YjY5NDhhNTRlM2JiNjIyIGxlZ2FjeS10cnVuaworNzc2NzMgMjJjZGVjN2Y0NGM1MmYyYmM2YThiMmIzM2MzMjJkNWRhMzIwYjk0NCByZWxlYXNlMjYtbWFpbnQKKzc3Njc0IGNhYTY0ZGM0NGQxNmVmYzJhOGJlNjExM2E2YzMwZjY0MWMzMTAzZDcgcHkzaworNzc2NzUgZjU2ODM4M2FjYzlmODAyOTBkMGJjM2UwZDc0M2IxMDczMTJmYzZkOSBsZWdhY3ktdHJ1bmsKKzc3Njc2IGE5OTZkNjZmYWVkMGNhMmRkZGI2YjZlNjQwNzZiNzQ1N2I1ZWM0ZjYgcmVsZWFzZTI2LW1haW50Cis3NzY3NyA1YzIzNjcwNGRhZjE1YTkwODNhNWQ2ZGIzODRlMDQ0MGNiNjIyZDlkIHB5M2sKKzc3Njc4IGI2MzZjYzcyZDJkZTczYjNmMTlmMTlmNzFlYTM3ODk5ZDQwNTBiNTggcmVsZWFzZTMxLW1haW50Cis3NzY3OSBmODUzOWI0OTdkNGFhMTMyYTY1MTVhMjNkMDhmMzE4YTZmY2QyNjcwIGxlZ2FjeS10cnVuaworNzc2ODAgOWUxMjRlNjQwMmJjNzIxZDdhYzBjOGFjZmU0NTBiNmI5YjlmNDJkYiBsZWdhY3ktdHJ1bmsKKzc3NjgxIGVkNDAyN2U2NjYwMDZlNzM4NjgyMDVhYTU5MjkxNTAwOGUyNzEyMjcgcmVsZWFzZTI2LW1haW50Cis3NzY4MiAxZjcxNWEzNzdlZDA5ZDI1ZTVhZGM3Mzk2Nzg3YWZiNTNjZDcwZTU2IHB5M2sKKzc3NjgzIDRjZmRjOGI3ZmIzYWYyNmY3NThkNTg5NDAwOTJiYWM3NTc4NTEwN2IgcmVsZWFzZTMxLW1haW50Cis3NzY4NCBmNmZjZWMyOGFmOWU0NTk2NDZkZTMxZTVhM2FjMWU1MmJjZTc2ZTA2IHJlbGVhc2UyNi1tYWludAorNzc2ODUgZmU0ODg0YjA0MWI5M2Q4Mjc1MWI4NTMzYzMyMjU4ZTBmNmFlZGY1ZCBweTNrLWNkZWNpbWFsCis3NzY4NiBkMGQwNTc5ZGQxZDEzY2YzMjdmZGQ0MGZiYzA3ZmEyZTFmZWEwZjlhIHB5M2stY2RlY2ltYWwKKzc3Njg3IDRlNjk5ZDdjMzJlY2Y4YmEwMjRjOTNiZjVkMDZmZTZlNDc3NDc0N2EgcHkzay1jZGVjaW1hbAorNzc2ODggMmNmNDFkOGY3ODdhYTEwOTk1OTA4YTUwOWNjZGRlOWVmODUzMTQxNyBweTNrLWNkZWNpbWFsCis3NzY4OSBhZGM5OGJmMTUzZWMwNGJhYjdkZDBlYWNhOTYzZjg3MzhmZjBjOGI3IHB5M2stY2RlY2ltYWwKKzc3NjkwIDAxY2U3YTg1OGRhZGIyM2E1MjM4NDhkYjkzMDNmZWVhNWI5OGQ3N2UgcHkzay1jZGVjaW1hbAorNzc2OTEgNmI3NjE4MTdiNzE3NDFhYTJmMDQ1NjgxZTQ3ODQ3Yjc0YmY4YzU3NiBsZWdhY3ktdHJ1bmsKKzc3NjkyIDMxY2RlNmU2M2MwM2Q4YjM5Y2M2Mzg2ZGE1YThiNDUzYTQyODg0YzYgcHkzay1jZGVjaW1hbAorNzc2OTMgNjA3ZTI1MjVjMDUwN2Q1MzI5MTc2MWI5YTA5MzY5NTlkZDJjZmYyZCBweTNrLWNkZWNpbWFsCis3NzY5NCAwZWM2MDM1MzY1NmUwNDEzMzg2ZWY4ZjEwNWZjN2EzN2Q2Y2E2ZTBlIHB5M2stY2RlY2ltYWwKKzc3Njk1IGNlYzJmMjgxMTE4MjM3ZjUxNzA5ZTlhZTMzM2RhNDdiMjc4NzhlYWMgcHkzay1jZGVjaW1hbAorNzc2OTYgZDBlNGJkNzZjNjkyNzQzNmU2ODYyYjMxNGJjMWU1OGEwNTI4Y2I4MCBweTNrLWNkZWNpbWFsCis3NzY5NyBkM2I4M2ZkYmM4MWE0NDE4N2FlNzY5MGQyYjVhNzUzZjU5MTY3ZTg4IGxlZ2FjeS10cnVuaworNzc2OTggN2E5ZjM2Y2M2ZGYxMWFlZDI3NGNjOTllZTEwMzdmZWVlM2Y0MWI1ZCBsZWdhY3ktdHJ1bmsKKzc3Njk5IGE2NzhmZTFjOWM4YmU5MzYxNDFkMjE5MDE4NWNjNzAwN2ViM2EyZjQgcmVsZWFzZTI2LW1haW50Cis3NzcwMCA2ODAwNjY2M2E4NTIzMmI5NmVhZjViOWE5MWFmNWIzNDI1NTI0ZTU1IHB5M2sKKzc3NzAxIDc4N2M2ODBmMWZlODhjZjg1Njg0N2E1ZmI1NTQwMjQyM2M1YzM3NmYgcmVsZWFzZTMxLW1haW50Cis3NzcwMiBmNjY5Y2YxMDBlYmJlZDNmZWM4NTM3M2JiNjlmY2FhNGU3NTVjYzhjIGxlZ2FjeS10cnVuaworNzc3MDMgOTcwNWVmM2ZkYjIyNzgxN2U1ZTgwNWVjNjkyYTY4N2U5YWNkOTkwMCBsZWdhY3ktdHJ1bmsKKzc3NzA0IGZhNjllODkxZWRmNGU3Y2RmZGJkM2QzODc2NTk2NTU1YzU4MzYzNWQgbGVnYWN5LXRydW5rCis3NzcwNSBhYzZlOTYwYTAxNGQ4MmFlMmQ2OWZiYTBmN2MxZDQ5MDk5MDEwMzEzIHJlbGVhc2UyNi1tYWludAorNzc3MDYgMmRkNjRjMjQ4NTRjOTEwZDEyNzY0YzhiNmVlMGE5ODc2MTMxODZkYSBsZWdhY3ktdHJ1bmsKKzc3NzA3IGJiMWMzM2VmZmY5MzI5M2ZlYTE5YzQwZDFhNDVhM2M2MWI1MTVmZWMgcmVsZWFzZTI2LW1haW50Cis3NzcwOCAzMDFlZDY5ZWRkYzRlYWNjYzFhYjgyMTYwM2Y3YWE4ODU3ZTQ4NzE5IHB5M2sKKzc3NzA5IDkwMjIzZTM0NThlYjMzOWRmMDIzNmU0NDU2NDJjMDNjYWNjZjkyZDQgcmVsZWFzZTMxLW1haW50Cis3NzcxMCAxZWE2Y2ViYmQ4MThmN2Q1NzEyZjJlMWMzNWY1OWIwM2U1OTMzMjJiIHB5M2stY2RlY2ltYWwKKzc3NzExIGYwZjIyMWUxYTdjMDMwZjdmN2RkOTViYzc5ZTgzZTc5YmQwNGVkN2MgcHkzaworNzc3MTIgYmFkNWUwM2UyNDQ1ZTNlNTQ2NjI3NjAxYjI5YTYyNTY2MjE0OWQ3MyBsZWdhY3ktdHJ1bmsKKzc3NzEzIGQ3N2M5NDdmZjdkYjVhZWVmMjE0M2NhOWFlYzM1OTZhYjY1YTQwODcgbGVnYWN5LXRydW5rCis3NzcxNCBiNDBhNWE1NjhlNzZlNDRiMGQ2NjUxMTlhYmI1MzUyY2RiMzBhZGEyIGxlZ2FjeS10cnVuaworNzc3MTUgMTc4OTE1NjZhNDc4YzQyNDk0YTA0ZDgwOGQ2NGE0NTE0OGFjYWY4NyBsZWdhY3ktdHJ1bmsKKzc3NzE2IDVhYjMwMTJmOTBiNzRjODA1NDYwZDA4M2QwZTEzMDE3ZDM1YTk5NDIgcHkzaworNzc3MTcgODA3ZDgzZjU3YmM4ODM5ZDU3NWE0ZjJmNWYxNWUwYzljMTNhOWIzMiBsZWdhY3ktdHJ1bmsKKzc3NzE4IDVkYjgyYTU3ZGRkMDY2YmU2ZTQ1Y2ZiNjI3ZGJkMDZlNWE3NWY2NTggcmVsZWFzZTI2LW1haW50Cis3NzcxOSAzOTQ3ZmRjYTJmNDBkZmZjMWUwM2E4OWQzYjg0ODk5MDQyY2RlNzQxIHJlbGVhc2UyNi1tYWludAorNzc3MjAgZmZjNGE0NGJmZGI5OGYzZjlkNzBlMzIxZmU2YWUwZDM3YjlhZDUyOSBweTNrCis3NzcyMSA4NzY1NmU4M2RjMTk2ODMyMTZiNDU2YzRmNWI1ZDgxOTgxNWZlNjliIHJlbGVhc2UyNi1tYWludAorNzc3MjIgYmUxMmQzNjIxNTE5NTUzZTIwOTQ3MmU0NDBhMjYyY2JjM2M3MDlhZiBweTNrCis3NzcyMyA4YzNkMmE3MWVkMDE1ZWVjMTFlODhmMmQ0YTFhMjEyYWJmYTFlNWNkIHJlbGVhc2UzMS1tYWludAorNzc3MjQgMmQ3MjM5Y2FkNzEzMmJlNWJkYjNkYjJiYzY4YWE3NThkYzUxMzdkYiByZWxlYXNlMjYtbWFpbnQKKzc3NzI1IDFkYzkxZTlkZDVjMTNhNGJjMmQzYmI3ZDRiNTg5NmFiMjY0ZjIzMjUgcmVsZWFzZTI1LW1haW50Cis3NzcyNiAyMzI1MzNmNzFhYmQ2ZjZkYTk5Y2RlMzEyZjI5ZjRiODAzNDZjZGFjIHJlbGVhc2UyNS1tYWludAorNzc3MjcgNmZmY2RhZmEwMTE4OTk0NDg1YTE3NGNlNDEyODMxNDFiODM0MTIxYiBsZWdhY3ktdHJ1bmsKKzc3NzI4IDcxYWNkNDQ4MmU2NTViN2QxYTEzNzY0MzcxYjdlNTkwZWE0NDc3YzIgcHkzaworNzc3MjkgZGFiMzRiNjBhNzJlMWFhMjM0NDBkNmNjMmQ0MjMwNDFiYTAzMGZkNSBsZWdhY3ktdHJ1bmsKKzc3NzMwIGU5OGVlOTQ1ZTI2MjczMDQ3OTgzYjM2NjBhZTBiOTIyNzExODZmZDEgcmVsZWFzZTI2LW1haW50Cis3NzczMSBjMTBhY2U1Yjc2Y2U5NTRkMGM0MjViZWIxYTZkYzJiMmJmMjZlMzU3IHB5M2sKKzc3NzMyIGZmYjk0OTIwZWZmM2FiOTdiMmUwZWI0NjQ4N2MyMjU1YzZkZGZjZTEgcmVsZWFzZTMxLW1haW50Cis3NzczMyA2OGQxYzgxZmZmMmVhNDM4MjYzYWNiMWE0NDIyZjhjODVmZDBmYzYzIGxlZ2FjeS10cnVuaworNzc3MzQgZWFiNmNkZTJhMzFjODQ1YWY5NWEzODI2Y2E1ODVmNTdkMDhlMTQ4NSByZWxlYXNlMjYtbWFpbnQKKzc3NzM1IDVjMWQ3YTNiYTI5YzE2ZWVjNzg3NTQyMWEwZGRkYjJlN2U2YjMwMTkgbGVnYWN5LXRydW5rCis3NzczNiBhMjU2NzkxYWExOWQwZjhmZTFhZTNkNGYyN2ViODFhNTE5MWMwMjU3IHJlbGVhc2UyNi1tYWludAorNzc3MzcgMGNjZTYwYjY4ZTQ2NWMwOTE0NGI0MGQ0NzkxZTJmYTkyOWM5NTlkMiBweTNrCis3NzczOCA2YTA1NzBlZTIzNjZlZDZkZTY1MWQ4NTExN2Y1ZGM3MTcwYjMxYTc5IHJlbGVhc2UzMS1tYWludAorNzc3MzkgNjdmZjA0MDc0MjcwMzIxMTk4MWZjNmUzNzkxZTJhMWI2YmVjMGI2MSBsZWdhY3ktdHJ1bmsKKzc3NzQwIGZiZmU1ZTQyMzQ5ZjZhM2UwMmQ2OWJlZDhmZmY5NWM5NmY3NDA4ZjQgbGVnYWN5LXRydW5rCis3Nzc0MSAyNDE4YTBhOWE5YTkyNWM3ZGI5OTQxMmZhYjVjY2UyM2FlN2NkOTEwIGxlZ2FjeS10cnVuaworNzc3NDMgNWU4OTMwZjM3MGQ1NDU3ZTMwNDk5OWRiNzg5MTNlMGNhNTZjZTdiMiBsZWdhY3ktdHJ1bmsKKzc3NzQ0IGZmNjYzMjRmNTJhMTI0MjJkM2RmYjliOGM0OWI2YjkxMjEzOWU1MDEgcmVsZWFzZTI2LW1haW50Cis3Nzc0NSAwODM1N2Q5ODc4MmI5ZDNlOWFhZTZkNzcwOTI2MmM1YjUzZTIyNjUxIHB5M2sKKzc3NzQ2IDIzNTkzM2Q0ZGE4ZWRlMDkzYzNkYzdkMTg4NGY4YTEyNTMzMjU3NjkgcmVsZWFzZTMxLW1haW50Cis3Nzc0NyA2OTg1YzBlODViNGJjOGFjZDU1MjY2MzcxZTJlZmJjMjZjZjU2ZTA5IHJlbGVhc2UyNi1tYWludAorNzc3NDggNzhjMGFjMDdhYTllYjI3NmU2NTkyY2ZjZTU1Yzg1MWQ2YTYxMzdhNiByZWxlYXNlMzEtbWFpbnQKKzc3NzQ5IDhkZDQ5YTg2YWRhYTU0ODMxZmE5OWYxNjViYTU5NjFhMGFjNjJiYTQgbGVnYWN5LXRydW5rCis3Nzc1MCA3NzIzODk1MGM2ZGQ0MDVmNzI2YjEyMzdlZmI3NWUzYjk0MWZkNWEyIHB5M2sKKzc3NzUxIDFmMTY1YzQ0MDMwNjRiNDFlZTY3ZTlhYjdmMzY1NmQ3M2VjODdjMjcgcmVsZWFzZTI2LW1haW50Cis3Nzc1MiA2MjA4ODM2ZmVkZjk5YTU0NjI4NDZiODM1ODg3NmJhYmY5YjkzNjA3IGxlZ2FjeS10cnVuaworNzc3NTMgM2UwZmVkMjVjMGFlNTljN2QwNzA2ZDM0YzBmN2FkZjAyYjMyMDI2MCByZWxlYXNlMjYtbWFpbnQKKzc3NzU1IDIyYWVhMTMxYjZhZmMxOTE5Y2Q3NzUwMWY1YWVjNzY5NmJhZTc4NGEgbGVnYWN5LXRydW5rCis3Nzc1NiAyYmRlNmQ0YTEwZWRlZGZhNWY2ZTBmN2RhNzFmNjYzNTk5ZTNhYTFkIGxlZ2FjeS10cnVuaworNzc3NTcgNzQxMTg3YmZjNjEwMmVlNTEyNDcwY2JkZGVjNGRjMTk1YTQ4M2JjOSByZWxlYXNlMjYtbWFpbnQKKzc3NzU5IDU4MjY2ZjFhMmU3ZjNlMzYxNmUxMTNiMDc2ZDk5Mjc2ZTZmNzAyYzcgbGVnYWN5LXRydW5rCis3Nzc2MCBiMjViNzhjZTc5OGRjODdlY2M3Y2MwMThlYzkyMDhmY2Q2NWRiNzBlIHJlbGVhc2UyNi1tYWludAorNzc3NjEgZjlmZDE3OTVmY2Y3NGUxM2Q5MDkyYjZhNzljMDM0NGY2ODgwOTYxZiBsZWdhY3ktdHJ1bmsKKzc3NzYyIDEwYWQ3ZDhlNWQxNzE1YTU0NWNlMTlkYjM1ZjYxOThmMjg5MTBkY2YgcmVsZWFzZTI2LW1haW50Cis3Nzc2MyBiYzJiODhiZWFlNDVkYThkOTdlZDU4NWNmZTFlNjM5NDZhNzE5OWQ1IGxlZ2FjeS10cnVuaworNzc3NjQgOTA3ZmYxM2JkNGUyZTE0NTYzNjMwNmRjMDY0MTJmMjZjNDgwMDM1MCByZWxlYXNlMjYtbWFpbnQKKzc3NzY1IDczNzljZjcwZmQ2MDNhZjVmOGVjYzc3OTUwZDEyNzJjNGM0YmE0N2QgcHkzaworNzc3NjYgODIzMmIxMGUzNGUxMzg4YmRhZWEzMjhjYTNjMTdkNDRhZjI0OTJiNyByZWxlYXNlMzEtbWFpbnQKKzc3NzY3IDkyZTZlOGQ5MDRhMjllZGVjMzBiMDliODlkNGM5NWIyYzAyNDJjZjkgbGVnYWN5LXRydW5rCis3Nzc2OCAzYzBjZDdhN2RiOGVlMzAxNzFjYzRiZDA0Zjc3MzMyOWMzZDk1OGZjIHJlbGVhc2UyNi1tYWludAorNzc3NjkgODA1NjIwNTFiYjcwYWI1NzEwNjUyMTE4OWQ1ODNjMWVmMmRkOGFjYiBweTNrCis3Nzc3MCBkODE1ZGQyZmI1YmY5MTg2MjczNGRhNTU1ZDRiNTUxNjY0YTcxNWY2IHJlbGVhc2UzMS1tYWludAorNzc3NzEgMjc0NmMyMTdkZDllMGE4NGNkYTU3YzkzMWU0ZDNhMTUyY2E1ZmMxMiBsZWdhY3ktdHJ1bmsKKzc3NzcyIGZkZTk3MTllMjA1NmY0M2FlYTU2MzYyYjFjMDE0MjI3YjAxMGRkMTQgcmVsZWFzZTI2LW1haW50Cis3Nzc3MyBkZjMzNTk5MTg1MTdkMjE2MmEzYjk2YmQ3Mzc2NjE4N2NjY2NiNzQ2IHB5M2sKKzc3Nzc0IDBkZGY4ZDk2OTBlNWFlN2QxZDI0YmRlZGNhODZhMGY5YTZjMzBlY2YgcmVsZWFzZTMxLW1haW50Cis3Nzc3NSA2NzI2YWViODY3YjkwMDIwY2FkYmNiOTA4ZjQ5ODQxOGYyNjA1YzVjIGxlZ2FjeS10cnVuaworNzc3NzYgNDk4MzExZmQ4ODIyY2U3OWFjZGU0OTg0MDA1NTVhNzJhYWU3ZjNhZCByZWxlYXNlMjYtbWFpbnQKKzc3Nzc3IDM0ZTJkNTE2MmNlOTNjMjEyMzIxZjg3YmJhNWM4NTAzYzk1ODNiNWMgcHkzaworNzc3NzggYWZkMjBkM2Q4NWRjODhmNDZjYmNiNDdjYjI0MmY0YTMxNGExYTEwOSByZWxlYXNlMzEtbWFpbnQKKzc3Nzc5IDc1ZDI0YjI0NTJhNTliMzU2ZjRjZGY0ZGMwMDMyNmY4ZThiYWUxZGMgcHkzaworNzc3ODAgMTIwNTQ2MzQ2ZjkzOTc5NDYwNDg5MTRjZDNhYmYyNTEzZWUyMTI4OSByZWxlYXNlMzEtbWFpbnQKKzc3NzgxIDc0OGUyODJlMDkxY2U0M2Y2YTI3NTRmN2RiOGRkMzA5OGRkMTI2M2QgcHkzaworNzc3ODIgMWRkODIzMmQ0ZWNiOTgxYzQ1NDZkOGFkNmNiMTI1NTBkYjY4MTgwNyBweTNrCis3Nzc4MyBkNGUyMmZkNTI4ZTJhMmUyNjUxNzlhMTQxZDY3OTM1ZjZhZGJkZWZjIHJlbGVhc2UzMS1tYWludAorNzc3ODQgZjZmOWVlODNlY2JmM2M0NzVmYTQ1NzkxMzJhODBlMWM1NDA1ZjM5YiBsZWdhY3ktdHJ1bmsKKzc3Nzg1IGRjNzE0N2QxYjdkOTRkYmYyOTkzYTBjOGFjMmUxYTE2NGY1ZDNmNWMgcmVsZWFzZTI2LW1haW50Cis3Nzc4NiA5NmQ1YzcwMzE0NDA1MjkzNTE4Njk4NTE5ZjkwMDI5NzczOGQ3ZDI0IHB5M2sKKzc3Nzg3IGUyMGUwMmZjMTQ0N2ZjNzMyZWU1NzdkMWE1YjNmZDUyYjY4YWFlNTggcmVsZWFzZTMxLW1haW50Cis3Nzc4OCBhZDdhNjE1NzRiZDY4OWU2MDY4MzczZWVkOTUxODdhODVjODE2N2U1IGxlZ2FjeS10cnVuaworNzc3ODkgOTU3NWNlMGRiMjA0N2MxYzU2NmFhNmU5ODlkOTYxMjZhMmJlOWIxNSBsZWdhY3ktdHJ1bmsKKzc3NzkwIGE4YTRiYzY5YmVhMTIyNTBkZmY1MmZmZGEwZDk5YzE2YjJiZmNiZmUgcmVsZWFzZTI2LW1haW50Cis3Nzc5MSBlNjYwY2I1MmJmMDA2MGRjYzcxYjBhNTlmN2E4ODBmM2VhMTAxZWI4IHB5M2sKKzc3NzkyIDJiZmVlZjYyOTkzNjI4MDQ0MWIyYmU2MzM5NDVmZWRlMTU5OTFiOWMgcHkzaworNzc3OTMgMjAwNzA4ODBlYTQ4MzM0YjFmY2UxNDc5MDYwMmQ0Nzk5M2UwOTU5NiByZWxlYXNlMzEtbWFpbnQKKzc3Nzk0IGRlYmU2MTY3M2E4YjEwNWJlYmIyMThiMDc1MWI3OGZjZDdiZDY4YzQgbGVnYWN5LXRydW5rCis3Nzc5NSA3YTM2Y2EwNDc0MmRhOWIyOGM2NGMxZjIzZmU1OTQ0OWEyYmY1OWZiIHB5M2sKKzc3Nzk2IGY5ODlmNGYzMDI0NTIyN2Q5YTE5NDE1ZmY1MDgwMTc3NmU5OWFhNDggbGVnYWN5LXRydW5rCis3Nzc5NyA0ZjhiMmExNzNjOGRjNWMzYTRlZGRkMDYwZDQ1NGUzYTZlNzhmNWIwIHB5M2sKKzc3Nzk4IDFhMDA4MWI4NWMwNDg5NWRhZTI3ZTJmZjc5Mzk3YWZlNTE0ZDIyYWQgbGVnYWN5LXRydW5rCis3Nzc5OSAwMTFkOTY3YzFhMDQ5NjZiMGRlZjJkM2I3ZjQ5MDA1OGExYzlhYjg3IHJlbGVhc2UyNi1tYWludAorNzc4MDAgZjQxZDM1M2ViNjYwMjY2ZGZmNWFjNmNlNzc0NTc4MWNiNWZmMGM5MCBweTNrCis3NzgwMSA2YTQ3OTJjYmY0YzlmMzY5YTVlNGFjOGJlNWZkZTg3YWY5YzFlZjRlIHJlbGVhc2UzMS1tYWludAorNzc4MDIgMGJkNjE2ZGZjOTc3ODVhMzExNmQ4N2E3ZjU4YzAxNTQ4YTZmOWVjYyByZWxlYXNlMjYtbWFpbnQKKzc3ODAzIDdmYjc2NDRhMGJjNjhhNzU4OTg1NWY1OWEzNzVhYjVjOWY1ZTAyYTAgcHkzaworNzc4MDQgM2YzNmM5ZTZhNWFmN2YyNDQ1NjUwYTk3ODczZTUyNzgwM2MzMzg2NSByZWxlYXNlMzEtbWFpbnQKKzc3ODA1IDFhYmMyMTkxYmVhZjQ5NGM5M2E2YmFmZjMyNTRkOWQxYmQxM2NmMjIgcmVsZWFzZTI0LW1haW50Cis3NzgwNiBhNWU2OGFiNzg5NWJkODFjNjdmZDAwMTRkZjc1MjEyZTdmMjM1NWRjIGxlZ2FjeS10cnVuaworNzc4MDcgNjcxMGE0M2YxOTNmMGY4NDgwZDgzMWM5ZGU1ZmU3YzY4NGE2MmIxZSByZWxlYXNlMjYtbWFpbnQKKzc3ODA4IDRjZjVhZTcwY2IxMTllYjJiNGFiZWMyZWRkMjhjMDkwMDI3YWU0NTUgcHkzaworNzc4MDkgZjYwNjQ3NGEyMTBkMWNlOGFjM2M5MWU0YjhmZGY1OGZhYmM5ZWI2MCBsZWdhY3ktdHJ1bmsKKzc3ODEwIDI0NWYzNjI4MjExMzZjNzkwZjYwZGFjNzNiY2I2YzJmOWM5M2MyMzYgcHkzaworNzc4MTEgNjU4ZWI1YWU0NjE1ODEyNjAyNmRkY2E5ZGJhZTZmMWE0NTA4YmFiNSBsZWdhY3ktdHJ1bmsKKzc3ODEyIDgyYWQ3ODcxMWVkYjUyOWQzZWE1YjM4Y2JjNDYxNjQ4ZDRhY2NmYmEgbGVnYWN5LXRydW5rCis3NzgxMyAzMjE4NzBiNWQwMzBhZDA2NWM1ZDIwY2UxOWI4ZGFkNDY1ZjhjNTE0IHB5M2sKKzc3ODE0IGYyZjU5ZDdiNDYxNDYwY2EwNWU2MGI0MDE4OGFiZTBjNTBjYTJhZjcgcmVsZWFzZTI2LW1haW50Cis3NzgxNSA1NDcyNWUyZThhZGQwZTkxNDFlNmQ2MzE5MGJjNDZjNGYwNGMwYWY3IGxlZ2FjeS10cnVuaworNzc4MTggNWFhOTAyNDhhOTlmOGZhZWM3OWNlMTlkODkzNTQ5NDY3Yzg0MjZhYSBweTNrCis3NzgxOSAzOGI5MGZlMzQ2MjM3ZTlhOTNjMGJlZGQ3YjQ2MTEyMTE2NzY2ZDMyIHB5M2sKKzc3ODIwIDBkNGIwNTg5ZmJjNzIzMzI1ODAwZTZjYzQ0NTg3MzI3ZGZlNGM0ZTUgcmVsZWFzZTMxLW1haW50Cis3NzgyMSBjNTc5OThlM2JlMzNhZjkyZDFhMWI4ZDJhZGEzY2E5NGQ0N2UyNDM3IGxlZ2FjeS10cnVuaworNzc4MjIgM2NlODYwYjllNzMyMzdhNDJmOWQ4NTJmMTkxZGNmZWFlNzExZDJkYiByZWxlYXNlMjYtbWFpbnQKKzc3ODIzIDJiMDhkZTlhMWZhMDEyMDBmOTA5Y2U0MGYzYjMyMGM1MmJhZmM2Y2QgcHkzaworNzc4MjQgNmRlNjQ4OTZjNmY4ODE4MWUyMzkzMTdmYzRiYjIzNGFhZDU5MmJkOCByZWxlYXNlMzEtbWFpbnQKKzc3ODI1IDJkYWI0NzYwNmFiNjNjZGE4MmVmOWQzZjIyMWFjZjAxNWUxY2M2NGMgcHkzaworNzc4MjYgM2I2NTA2ODA4N2M2MmY1MDgyZjIzNjE0ZWZhNzg2ZDYwZWQ2ZmY4OCByZWxlYXNlMjYtbWFpbnQKKzc3ODI3IDIwZjBkYTMxZmEyY2Q3OWIzZDAxODkzMjBlYjc2YTVmYmI1MDJlMzQgcmVsZWFzZTMxLW1haW50Cis3NzgyOCA4NzkxMDFhMGI1Nzk3MDI1MWU5ZmQzNTE3OWRkM2MxNzY4NTJlODIxIGxlZ2FjeS10cnVuaworNzc4MzAgMjc1Y2Q5ZmUwNGYxYmY5NmQ1MWU4ODdhNDMwZWU5ZWMwMTczNTg5MCByZWxlYXNlMjYtbWFpbnQKKzc3ODMxIGRkZTIwYWU2N2Y5ZjMzYWIwOTBiOWY0NWIyMmNiN2I3OGRlODUzODYgcHkzaworNzc4MzIgOGVmMjUyM2MzYTVjNTcyMTAyM2MyOGEyYzdlYWFjYjI4MWFmNjIwMSByZWxlYXNlMzEtbWFpbnQKKzc3ODMzIGEyYzkxNzM3ODQxMWUyM2VhOTkxMGJiOGRmYjZmZTQzNmVmNjk4NTAgcmVsZWFzZTMxLW1haW50Cis3NzgzNCA2MDg1M2MxYWM1NjJkMjU5ODkwZGRmNDcyNThiNTVmZDRkYzFiZjgxIGxlZ2FjeS10cnVuaworNzc4MzUgZWJmNGYyMjZhZWVmOWRlYmZlNmJkNTQ4OGIzYWQ4ZjJhMjE3MTc3OSBweTNrCis3NzgzNiBkMDE0NjIzZWNmNzIwYzJkZjQ1MDhlYzFhYzI1Yzc1ZWUwYjgxNDYzIGxlZ2FjeS10cnVuaworNzc4MzcgZjIwZjhmYzZjZmFlMzQ0MWQwMTllOGJiZjQ2MTNiMDkxNDcyMTA3NCByZWxlYXNlMjYtbWFpbnQKKzc3ODM4IGQ2ZmIzNzhkNzY1YWY5MTVlM2ZiMGYyMTdmZTlkYmQyMTBiM2E5MjAgcHkzaworNzc4MzkgMTA5ZWMwNmJiY2YxYjgwNTExZjQ0NzE3OGE3YmE5NGFmNDUyODk2ZiByZWxlYXNlMzEtbWFpbnQKKzc3ODQwIGUwYWQxZjNjOTFhZjIyY2NhZTlkZDM2MDJhODlkZGRiNTE4YWMzOGQgcHkzaworNzc4NDEgYmZjMTNjZTYyZmFiMGRiNDJkMmU1OThjYzg3YzBmOTAyMjVhOGZhOCBsZWdhY3ktdHJ1bmsKKzc3ODQyIDYyOTVlMTYzMDNhNzE4M2Q2YzUzZWQxYmJlNjM3ZmFjNzgwMmVmMGUgbGVnYWN5LXRydW5rCis3Nzg0MyA1ODkzZWY5YTliODRiZjg4YjBhMWRmODk0OTZjZDMxODc2ZGU0MGMzIHB5M2sKKzc3ODQ0IGVmYzIwMzBjZTZiMTZkODhlYzM4YTEyMzFmMGExYjc0NGY4ODdjNzcgcmVsZWFzZTI2LW1haW50Cis3Nzg0NSA3NDUwZTAzYTUwMWRiYjliZjdjMWMyOGRhOGE5YTcyZmRmMDM3MmUyIHJlbGVhc2UzMS1tYWludAorNzc4NDYgODZiOGY0Y2I5MjNhYzMzOGQ4NDhiZWUwNzUyMWNlYWI1MzZkNDZjNiBsZWdhY3ktdHJ1bmsKKzc3ODQ3IGMwYzc2ZDQ4Y2QyYjhlYzE5ODJmYzk0MmY5ODQ5MDkwZDI3ZjFmZWMgcmVsZWFzZTI2LW1haW50Cis3Nzg0OCA1YzQ3Y2QxNzM2YzE2MmEwZDVhYjFjMzFkMjA1MzE4ODFhZjExMjdiIHB5M2sKKzc3ODQ5IGQzNGQzYjhmOWRlZTRlMTdhYjM5ZGVmZTU1NDhiZWU2NzBkZGZjOGQgcmVsZWFzZTMxLW1haW50Cis3Nzg1MCAzOTMzMmMwYWY4NTY1ZWE5NGJiMzk5MGNjZjVjNjU0YWUyMDI0NWMzIGxlZ2FjeS10cnVuaworNzc4NTEgODI0ZTVlY2Y5MDIyNWI1OWYzNjJkNjc5MWQ5ZWM0MmFlMjhjNWUxMSBsZWdhY3ktdHJ1bmsKKzc3ODUyIDkzNGQ0OTU4YTQxNTFhZmU1OTg2MzZhMGFjYjkyMDdhODcxNTdkYWMgcHkzaworNzc4NTMgZDc5YWE1YjY2OTcxYzlmMWMyOTBhZGUxNDMwZjUwMTVlYTM5YmM4ZSByZWxlYXNlMjYtbWFpbnQKKzc3ODU0IDAxOWY1MmFlMGZlOGNjYjlmYmNiZDRkM2E0OWM4OTM1ZTA4NWM4N2YgcmVsZWFzZTMxLW1haW50Cis3Nzg1NyAyYmY3MzU3ZDEyMmMyNmMxMzE5OGVkYjk4OGUxYTRmNTIyZjUzNGUxIHB5M2sKKzc3ODU4IGQyMWIwNWZmOTIwYWZhZjAyM2RhNjUyZWNmYTlkNGNkNmJlMDFlMWIgbGVnYWN5LXRydW5rCis3Nzg1OSA1YTdkN2VlYjg4YzExMzI1YTVkZDUzYzQ4MWU3NzI4Nzk5M2FlODc5IHB5M2sKKzc3ODYwIDA5MGZjMzljZTVlYzM1ZGQ1YTQyZjM2MWIwN2ZlZWU2MDcxODQ3OGEgcmVsZWFzZTMxLW1haW50Cis3Nzg2MSA5NzZlYzQ1ZDkwOTBhZjg0ZDkwZDQ4MmZhYTU0MTc1YTRlYWMwOGFmIHB5M2sKKzc3ODYyIDY5MDhiYTQ0NWQyYjM1YzM5MGQ4MTdmMjNlNzY5NDhjZDQ1MWM1ZWMgcHkzaworNzc4NjMgZjU2MjA3YjkzNmNjMzU5NDg1YjRhOGRlNmFlYTUxYzQ0MDBkNjQzMiByZWxlYXNlMzEtbWFpbnQKKzc3ODY0IGU5NTY1NzBiYzNiOWYwNGQ5Zjk1NDViYTdjZDM3ODk2ZmU3Y2MwMTggcmVsZWFzZTI2LW1haW50Cis3Nzg2NSBmYzVlYzdlMDQxNzczY2ZiNTJmMjM4MGI5YTRiMTU5NWJjMjdkN2RhIHJlbGVhc2UyNi1tYWludAorNzc4NjYgZmUwODZhYmI0YWViZTllNjA5MDhhNTVjZjUyMGVhMGRhNzJmNDBjMiBsZWdhY3ktdHJ1bmsKKzc3ODY3IDY4YzU2YzRiODYzMWNiZDljODc3MjczNDQ5YTVmNmVlMmQ2MWU5MTcgbGVnYWN5LXRydW5rCis3Nzg3MSBmMGJjNmQ4YWEyMWUwMjUzYzJkMmRkZWNmMDFlYjA4YWM3OTQxZmNhIGxlZ2FjeS10cnVuaworNzc4NzIgNzA5OGE0NmYwYjc1ZTVhYWNmYWY4MWQ2NWQ3MmUzNjEzYjAyMzUzMiByZWxlYXNlMjUtbWFpbnQKKzc3ODczIDM4YzljY2NiYmU1YTRhY2Q0MDA1MTU3YWNhMWY2Y2U4NTk0MjFmMGUgcmVsZWFzZTI1LW1haW50Cis3Nzg3NCBhMjA0Nzc0ZDljNzBiZGRjMmNmYjgwNzU3NWFkNWM0NmJiOGFhODc0IHJlbGVhc2UyNS1tYWludAorNzc4NzUgMmRkYmU2MmE2ODIwZmE1ZDdiNzIzNjU1ODI0OGM0NmIwOGU0NzA0MCBsZWdhY3ktdHJ1bmsKKzc3ODc2IDZlNmI1OTQxM2ExMzg5OWI3NWRmYjFiMGM5YTk3YjI4ZWM3NjIwZDcgcmVsZWFzZTI2LW1haW50Cis3Nzg3NyA1NjZkNWM5NTdjMTk3NTk3MjM1MzdhMzc5OTg3MDExYTFmNjk4ZDQ3IHB5M2sKKzc3ODc4IGNlMGQ0ZGM0ODhkMjkwNWRjYTE5MWZkM2VjNzQwZDUzNmMyMTdkYWYgcmVsZWFzZTMxLW1haW50Cis3Nzg3OSBmNjI4NDJjMjViZDgzM2ZkNjYxNzI4NmQwZjNjYjRhZGUxOTZmYzQyIGxlZ2FjeS10cnVuaworNzc4ODAgNmIzM2VhOTQ4ODk2NjE4MTFlMDlmNjI4MmY5OGZjYzRjZmZhMzcxMiByZWxlYXNlMjYtbWFpbnQKKzc3ODgxIGZkNTgwMWI4Mzg4ZDE1NzIyYTA0N2ZjZWQ0OGViN2UwNzBlNWU5MWEgcHkzaworNzc4ODIgOTgxYTM5ZjM1OTE0ZDQwYzJiNjRlNGMyMzBjYzU2YjcyY2FjMWM1NyByZWxlYXNlMzEtbWFpbnQKKzc3ODgzIDY5YmZmYTNjNzgyZTMyNTg5NGVmNTVmY2VhNjhmNTVlYTgwNThjMDggcHkzaworNzc4ODQgMWU0N2JkNmJiZWQ1NGY4NDRkZGQyYWMyY2Y5ZjBjMTJlZWEyZjUzOSBweTNrCis3Nzg4NSBhNzNiOTJkMWU5ZmQ1ODJlNzVhYTA2YjVmMzg0Zjg4OWFmYzE4NWM1IGxlZ2FjeS10cnVuaworNzc4ODYgMDUwOGVhZDE4ZDZmNWEwOTJlOWQ5NTBjNzJjMTQ2NzA1NTA5ZWVmMyBsZWdhY3ktdHJ1bmsKKzc3ODg3IDU2YTIyMDgyNzIwOWNiYjMzZDIwZDQ0NTEzNzk4YmMyOTgzY2EwYzUgbGVnYWN5LXRydW5rCis3Nzg4OCAxNTlkYTlhNDJmZWYxYzZhYjAyYjkyZmJjYzA2MzViZTAyNTQzNDRjIHB5M2sKKzc3ODg5IGJjYmI5MDQ4ZjQ4MDM3M2FmOWM4YjdiMzRjMWUzZmRlOTgxZTZjYTQgbGVnYWN5LXRydW5rCis3Nzg5MCA3NzEzMGYyZmU5NDRlNGFjZDEwZjAzNWI2Nzk0YTQyZDEyYjFlYTkxIGxlZ2FjeS10cnVuaworNzc4OTEgZWY1NjM5YzcxOTY0MzVjZTBiZTdlNGUzMTFmZDE1M2M1YmQ1YjMzZSByZWxlYXNlMjYtbWFpbnQKKzc3ODkyIDI0NjY1YTlkODgxYWRlMjU2OTdhNzRjNGQxOThkYTdlZGY0Nzg3NDQgbGVnYWN5LXRydW5rCis3Nzg5MyA3NWJiMmYxNjkxYzBlYTk4YjE3NmU2MzJmYjkwMTE0YjNiZmEzYzRmIHJlbGVhc2UyNi1tYWludAorNzc4OTQgMzhlMzA3ZmI4Mzk4NTZhYzk3MGVmYmMyYzcwY2ZmYTY3Yjg0ZDYxNyBweTNrCis3Nzg5NSAzMTFkYjdhNjhhODI5MzZkMTM0YWRkNzQ3NzY4MmRhZjdkZDMxYzcyIHB5M2sKKzc3ODk2IGM3ZTMyYjRlMzg3NGJiYmNlMDQ4Mzg4ZDVlZjM5YWRmY2IxMjI0NzUgcHkzaworNzc4OTcgZDg4N2RiNTAxYTIyMTFhYTM0ZDcxZTFiZjcwYTFmZjNlYTkzYTM1MSByZWxlYXNlMzEtbWFpbnQKKzc3ODk4IGZkMjRkZWRiYTU5ZWE1ZjBlMDEzY2QwOWM1ZTEwYTQ3MGI5NjZkMDUgbGVnYWN5LXRydW5rCis3Nzg5OSBiMmRiZjExZTJhYzRjZWYwNDVkMDNlYWM0NGU5YWIzMDU2OTQ5NWQ4IHJlbGVhc2UyNi1tYWludAorNzc5MDAgODYwNGU5YTI1N2NjOGZjYTg1MGRkYjYyZGI2NjYzNTk2M2FiYzllMiBweTNrCis3NzkwMSBjN2RjYmQ2NWMyMTM1MjNlMzQzNmQ1NmQ5ODdkZjA4Nzg1YWM0YzNhIHJlbGVhc2UzMS1tYWludAorNzc5MDIgYzk3OTU3ZjVjZGY5MjQ1YTJlOTQ4ODRhN2ZlMzYzMGYwOWU2ZjIwYSBsZWdhY3ktdHJ1bmsKKzc3OTEwIGFmNDk4YWIyYWZiNGE1ZDE2YWQ1ODZhOGE4YzI5NWQzNjk3Y2YwMjYgbGVnYWN5LXRydW5rCis3NzkxMSA2NTJlMGI3NDg4NWFjNzc4MTgyMGIwNzVkZGJmZTI4YjRkMmFjNDUwIGxlZ2FjeS10cnVuaworNzc5MTIgZDA1MTc3OWM1YmJkNmRhZDhmNDRlOWNmZTkzMGU4ZGY1MmVjNTRhYiBsZWdhY3ktdHJ1bmsKKzc3OTEzIDViYWRlYmRiNDM4Y2VmNzU1YmMwZDQ0NGI1NmE1ZDMyNjliZjg2N2UgbGVnYWN5LXRydW5rCis3NzkxNCA0Y2JmZjAxMzlmNWI4MDg5ZjhhMGE4Y2Q3MjFlNTNhOGQ3OGNmMTliIGxlZ2FjeS10cnVuaworNzc5MTUgNTI1YjZjNWQ1YjEyY2NmYTY2ZWY0MWZkZTY1MjBlY2IzZWQ4MjVhNyByZWxlYXNlMjYtbWFpbnQKKzc3OTE2IGMzN2Y5OWI1NGQ3Y2Y0NTNlOTJmNjM5NzljZWVhNDRiMGE4YWNhMTkgbGVnYWN5LXRydW5rCis3NzkxNyBjNzcwM2I2NDk1MTZiNzMwMzYwYmFiNGMxNjQzZDczZDVhMzNjOTNjIHJlbGVhc2UyNi1tYWludAorNzc5MTggY2QwMGE5NDE4NmM5MzQ5NzdhNTNhZmM0M2EyMTZmOTNhMjg2NzQ4MCBweTNrCis3NzkxOSBmM2YwOGVlODNjNTU4NjM4YWRkNGFjMjM1MzkyNDg1YjcyMTIwNzc2IGxlZ2FjeS10cnVuaworNzc5MjAgZGYyYjlhNmQyOGFlZjg1YjlhMmU1NjI2NGE4MzgwNmEzNjBhYTA2MiByZWxlYXNlMzEtbWFpbnQKKzc3OTIxIDk5MmNhZTI0NmEwYzdmYTdkYWRiMzFjOTY5NjlmMzk1ZmIxNmRlODMgbGVnYWN5LXRydW5rCis3NzkyMiA3Y2IxNGI1MjJmODFjYmM2YjBlOTk3OTMxY2YwZDdkZjk2MDVhZTRkIGxlZ2FjeS10cnVuaworNzc5MjMgNmZkMmI4MTQ3ZjJhMzdlNWFhY2FhNDA1OGRmNjQ0NjU2MGFiZDEyNCBweTNrCis3NzkyNCAwMGQ3ODM4ZWFmM2FkMzZlNzk5ZWY2MzMzNDNhMmMyMWQxMTlkYTRmIHJlbGVhc2UzMS1tYWludAorNzc5MjUgZDMxMjdmNmRlMTZjMDg3ZDkxZmZkZGFjZjFlNGZiN2E3MWFlZjNlMyBweTNrCis3NzkyNiA3Y2QxODJiZWU2MzBjMzM1MDMyZDljNDk2MTI4MDVjYmQyZGFkNTZmIHB5M2sKKzc3OTI3IDA4Y2Y0YjM1MzFjOTQ2NDhlMGVkODE2OWYwOGIzNmI3Yjc1MzAwMTIgcmVsZWFzZTMxLW1haW50Cis3NzkyOCAzODA5NDI4OTJkYzBlMGViYTM5ZWY0M2U5M2ZkMjU5ZGUzMmExM2E3IHB5M2sKKzc3OTI5IGI3ZmVjZTE1YmE1ZmI5ODc0ODU0ZGZmMzhkN2MwNTBhMzg5NTA5MTYgcmVsZWFzZTMxLW1haW50Cis3NzkzMCBiODg4ZGI3NjQ1YWE4Y2ZmMjdlZTY3ODcwMTNjMzcwOTBiNzRiNjVhIGxlZ2FjeS10cnVuaworNzc5MzEgZWI5ODdjOWRmMzc4ZmM0NmI5ODczYWEzMzk1Y2VkMzA5Y2Q1NTQ5NCByZWxlYXNlMjYtbWFpbnQKKzc3OTMyIGE4N2ZjZTAzYTM0ZGQyMDQ0OTc4YWFhMDZkOTE0YzcwMjY3MzIwZDggcHkzaworNzc5MzMgOTY3YmZkMzY5NzM2Njk3MzExM2UwNzAyYjBiZWM2NTg5MjFkMmVkMyByZWxlYXNlMzEtbWFpbnQKKzc3OTM0IDliMzUxY2I5ZWY5ODMzOTU0ZWQ0MGZkOTcxZDdkOTE3Nzk2ZDVmMWEgcHkzaworNzc5MzUgZWY4MTc4NDc3NTY3ZjdjMDRhOWNiMjdjZjdjNmFiMDRlN2I0NjIxMyBweTNrCis3NzkzNiBjY2M2ZTVkNWEzYjM4NzkwZDUyNzdmNzRhNTNjNGI5MmNmZWZmNmE3IGxlZ2FjeS10cnVuaworNzc5MzcgOTkzZjcwM2E2MWJhZTA4ZTkxMGNhN2E3Yjg2YTUyMDE4OGQwOGQ0NCBweTNrCis3NzkzOCAyYjFkNjY1ZTY2Mjg0Njg2YzA1Mjk5ZTAyYTcwZWUxMDI3OWFjOTg0IHJlbGVhc2UzMS1tYWludAorNzc5MzkgZGFiYjc3MzQ4NTAxYWExNmQyNmE2YzBiMDk5NmFjODA0MTlhY2U2YyBweTNrCis3Nzk0MCA1NGQwMjViMmY0NWE5ZjNlMTdlMDM2YzQ4NjY2ZWMwZGQzZTRkZTYzIHB5M2sKKzc3OTQxIDcyZWNmZmZlOWYwMjU2NmFjNzZiOWUwY2E0NjZlMTVhZmFhYzk0MTAgcHkzaworNzc5NDIgZmYwNDA4ODBkMWJlOTg0OTJhZGViZjc1OGFmOTdhZjk3YTJkMGZhNyBsZWdhY3ktdHJ1bmsKKzc3OTQzIDQ1ODdiMDYyYjhkMDY1Y2I3OTA2ZGQ0M2Q1MGQ4ODE5ODVkZGI3YTQgbGVnYWN5LXRydW5rCis3Nzk0NCBjZTRiODRjMDJlNWE3NTU2Yzg0ZmY5YzZlOGY4YjVmMWEzNDFkZTVkIGxlZ2FjeS10cnVuaworNzc5NDUgMzIzNDRjNWNmOTMyZWEzMjY4ODJhY2MxMWNmYmRjZGU1YzE2MzBjMSByZWxlYXNlMjYtbWFpbnQKKzc3OTQ2IDc0NDJkYjU0NzY0NWUyMGUzNGEwY2FjZWUzMmY3NDkzOGRjMzcxYzQgcHkzaworNzc5NDcgMGQ3ZTVlZGM0NTI2ODA4NzE5MjNjZWY3ODU1YjY5MTMxODEyMjk3MCByZWxlYXNlMzEtbWFpbnQKKzc3OTQ4IDhkODA1YzZjMmRiMzdiZTY3OWM1ZmMxMmNjYjQzZjI3NzIwNjQ3N2YgcHkzaworNzc5NDkgMzljOGI0NzgyNGM1MDkxNTQ2ODliYzYzOWE1ZGEzZGJmZTViODQzYSBsZWdhY3ktdHJ1bmsKKzc3OTUwIDFjN2ZlYWMwZDZkNjM4OGJjNmI2ZGEyZTFlY2I3NTU0ZTkwMWNjZjMgcHkzaworNzc5NTEgOGEyZWI3NzYxMjMwOTcwYWRhYWNkMTA5M2MyZDhhOTgzNzIxY2QxYiByZWxlYXNlMzEtbWFpbnQKKzc3OTUyIDRhZThiOWNhNDBmZmU3YWNhNzIwOWY2YWI0MDJkMjBmNGU3MmIxMzYgbGVnYWN5LXRydW5rCis3Nzk1NCBkNzVmODg3ZGE3NzJmODFlY2Q0NjJjYTZkNjcyNzYyZjEwZjFkMTBmIHJlbGVhc2UyNi1tYWludAorNzc5NTUgYTY0YTAxMzRlNjZjZTA4OWM1ZTE0MjI1MDk0ZDc3YTBhNTUzZDgzNSByZWxlYXNlMjYtbWFpbnQKKzc3OTU2IGE3YTc3MGJjZTkzZDI1ZjE0MGNlNjFlMjgzNjVkZmJlYmZjOWQ5N2UgbGVnYWN5LXRydW5rCis3Nzk1NyAzMGU0MjQ2ZWU4MDMyODUwOTE0ZDMxMmVhMjAwN2IwN2JjM2YyMjg1IGxlZ2FjeS10cnVuaworNzc5NTggZmJhMWM3OGYxMDRlOWMzOTc5Mzc5OWQ2ODViNGZmYmVkMjFhODU2YiBweTNrCis3Nzk1OSAzYzE4OGVkOGU1MjFlZTM3YzQxNGUxMzVmMGVjZmQyZDY5MDJjMmRhIGxlZ2FjeS10cnVuaworNzc5NjAgNzAzYTA0ZTI5Y2U2MzQyM2UxNmRhMWFmNDZmZTI1ZmVlMDJiZjBlOCBsZWdhY3ktdHJ1bmsKKzc3OTYxIGM3MjU0ZThiYzFkYmQxZmQ0MTc4MTUyYWM1YWU4MTUxN2ZiMGJjN2MgcmVsZWFzZTI2LW1haW50Cis3Nzk2MiAwYzJiMDg5ODY0M2UyOTZkMWVmZmY2MjNjYjU2NzY0MzUyZGVlZDFhIHB5M2sKKzc3OTYzIDUxNGI1NmVmZDg5YTI0MzlkODQ4ZGYyYTIzZGY0YzJhMmE2MTk1NzAgcmVsZWFzZTMxLW1haW50Cis3Nzk2NSBlZWI4YTk5Y2EwYzVhMmY4ZjE5M2U0NzcwZGFmMzZjM2UxY2ViNTkyIHB5M2sKKzc3OTY2IDJmODI5Mzk2YTU0ZTM3YmVkY2E5MjRiZGQwMDFhMGViNTViYzIxYjkgcmVsZWFzZTMxLW1haW50Cis3Nzk2NyBmNDQxNDIyZjZmNTU3NGM5NWNjNjA5ZjNlNmQ4M2U1YmRjZGQ4YWQ2IGxlZ2FjeS10cnVuaworNzc5NjggM2MwMjAzNDk5YWU1MzVjNWU1NTdkY2YxYzE0MDQ0NjA1OTgyMWM5NCBsZWdhY3ktdHJ1bmsKKzc3OTY5IGJiNmY4M2I5YmE0OWUwMmYyMGNjOWUwNWJmZWNiM2RkZDQxNjNkMTcgbGVnYWN5LXRydW5rCis3Nzk3MCA1NGU5NzU1ODJjNjU0YTg4NDY1NmU5ZTYwM2MyMWU4YTA3NGJiYzNkIGxlZ2FjeS10cnVuaworNzc5NzEgNDUxZWQzMmNmYzUwNjI0MjMzYjg5NTNlOGMxZTkwNTMyMWU2NThlMyByZWxlYXNlMjYtbWFpbnQKKzc3OTcyIDM3ZjYyNjRkMWFhMzM5ODkxYjM2ZDY4MTY0YjY2MWJiNWEzNDNiM2MgcHkzaworNzc5NzMgNGFhYjE0YWY1ZTJkZjcyMDVlMGI4M2NlMTg1MDYyMTE4NzgxNGM0NCBsZWdhY3ktdHJ1bmsKKzc3OTc0IDMyZTBmMWFhMzRiY2Y3MzEyMGNlYTVjNDFiNGQ2N2Y2NWUyMjczYWMgcmVsZWFzZTMxLW1haW50Cis3Nzk3NSA3ODEzYzQwOTQyZTk5NGE5NGEzYmI2NTYwY2U1YjBlZTc1MWNhMzM2IHJlbGVhc2UyNi1tYWludAorNzc5NzYgZWUwOGZiODM1YmYxMmFhODUzMDA5YTdiNzhiNTU0YmZhZmQ1ZTcxYiBweTNrCis3Nzk3NyAxNTE1MGNkOGZkMzY1MzQ5ZmM0YTRhODU1NTc1N2M4ZmJiNzI2ZDJkIHJlbGVhc2UzMS1tYWludAorNzc5NzkgMzA0Y2U4ZmNjMzJhMWY4MzA4MmZiZGY0NWQ2NTg3N2FlZTNlNjk0NSBsZWdhY3ktdHJ1bmsKKzc3OTgwIGRlNWZhOTI1ZGZlYTYxNTEzMjg3YjA2OTkzM2ViYTZmNTI3ZDM2ODQgbGVnYWN5LXRydW5rCis3Nzk4MSA4MWYyZWNkM2IxM2U4ZmRmMmM4MTczNzlkMDcxMDZiZjg3MGZlNzBjIHB5M2sKKzc3OTgyIGMxYTdjOTQ5YzExMDBkOGZhZGRlNTA1Y2RiNDY2ZmY5ZWRmMzk1MGQgcHkzaworNzc5ODMgNzZjZjYwZTJkMDA1Nzk2ZjYwMDJiNTgwN2Q0YjgxMDljOTRlOTIzMyBsZWdhY3ktdHJ1bmsKKzc3OTg0IGNmYTg3ZDQ2NmMwNDQ4MDNlMjA5MWI3ODZiZjQxMWZhN2E2YTk2M2QgcHkzaworNzc5ODUgYjVhZDIxOTBkY2U4YzBmNmVkZTliZmZmMGJjOGE2OTc2OTQ2YjVmYSBsZWdhY3ktdHJ1bmsKKzc3OTg2IGUxYmRlYmQxMzY4NTllZWRhMWFiOTM4YTBlYTBhYTZjZmQwNzQ0OGEgbGVnYWN5LXRydW5rCis3Nzk4NyA0MjZjYzVmMmFkMjQyMGEwYmI0OTYzMTAxNGQxZGZlMjgzNjBhNTBlIHB5M2sKKzc3OTg4IDU1NTA1ODQyZTk3MzllYTBlM2VlYjgyNjk4ZjAxMTdhYzVmMjczMjIgcmVsZWFzZTMxLW1haW50Cis3Nzk4OSA3YzkzMzY4MzAxMGRjYjI5YThlM2Y3ODIxMWIyNDczZWJkN2EyNDdiIGxlZ2FjeS10cnVuaworNzc5OTAgZWI1NTBlODM5NDYwOTc4ZjAwNjdlZmQ3Y2IxNmUyNDQ3NmZjZmUwMiByZWxlYXNlMjYtbWFpbnQKKzc3OTkxIDUxM2M0YTI2MDBhOGJlMDc2MzZkOGM5NDVjNTFhY2NiNDg1YTk4MzIgcHkzaworNzc5OTIgNWU1MTgzNWY4NTk1MTJlZDJjMjQ4YmMxMTM3MmYyZjEwMzExOTg5ZiBsZWdhY3ktdHJ1bmsKKzc3OTkzIDFjZjE2Y2U0MTVlYWUwNmU0NjE2OTkwYTZmNmIwNDNhZTRjZDI4OTcgcmVsZWFzZTI2LW1haW50Cis3Nzk5NCBiMTFiODAzMDI2OGRkYzNhMGVjMDQ3MDllNGRhMzJjM2JhNmZkZTExIHB5M2sKKzc3OTk1IDk3OWMzYjYyNTA4Mzk3YWM5ODc1ZTQ4MzdhYzM2NDc4ZTIyMTdjMDMgcHkzaworNzc5OTYgMTFiN2M4MTA4MTZiZWY0ODkyODdkYmYyNTM4YzEyNzBlZmJjN2I1ZSByZWxlYXNlMzEtbWFpbnQKKzc3OTk3IDMyYTM2MGIxM2ZhMzIwNmFlYjQ0NGZiNzk4OTIzNTc1Y2U0ZmQ3ZmEgbGVnYWN5LXRydW5rCis3Nzk5OCBjZDMxYTlkNjdlYjEzOWY1MzA2MWM0ODYwZjBiNWZkYTEyMjFjNzk4IHB5M2sKKzc3OTk5IDI3NDE2Y2U2MmFjNmIxMTQwYmZjMTUyZjA5OTg5YTg3ZDlkOGQ4NTYgbGVnYWN5LXRydW5rCis3ODAwMCBjMDNjOTNhYzgxNTFjMzMyMTdlMWZmZTAxYzViZWU0YmFiMGNlZDFlIHB5M2sKKzc4MDAxIDJhNzBjNzJiODdjN2YxMmY5ZDA5ZWFiODMyMTc4M2JkOTI2NjE0MjIgbGVnYWN5LXRydW5rCis3ODAwMiBlZGVhNDhiMTIwZTMzOWJlYjVkYmEyZjRhZWI5NTE5ZmY2N2IyY2RkIHB5M2sKKzc4MDAzIDNkZDkyMWExOTBiOGUxYzYwZjVjYjY2NjFiZjY4OTE0ZTdkMzQyYmMgbGVnYWN5LXRydW5rCis3ODAwNCA0MmFjOGNiMTNlZDBkZjgwM2VmMzdjYjNmYzcyNDg1MDNhMTBjN2I1IHB5M2sKKzc4MDA1IGExM2U4ZDFkMzc5OGM1MDE4MzNmZTZhNjYxNWJiNGU3M2I2YjgyOTkgbGVnYWN5LXRydW5rCis3ODAwNiBmZjBmY2Q1MTU0ZDMzMTY2N2Q1YTg1NjNkNGY5NWU5ODc3MmQzNjZhIHB5M2sKKzc4MDA3IGU5ZGJiY2Q0YWQ0MGFhN2Y4NjhjM2Y2YjExNWI3NjI1ZmU3OGFjZDYgbGVnYWN5LXRydW5rCis3ODAwOCA5NGQxNDgwYmM1NjMwNDFjMjJkMTVkNTQ4ODEwNmJjNWExNzhmMjEyIHB5M2sKKzc4MDA5IDc4ZTc5OTJmMjg1NzlmYTVkMzI1YzhjZWI3N2Y5MjVjODBlYjkxYTQgbGVnYWN5LXRydW5rCis3ODAxMCAwZDhmMjBlNDZjMWZhMTk0NzQ2YTJhMzMzNzBjNGU3ZmY0NTQ4YTJhIGxlZ2FjeS10cnVuaworNzgwMTEgNzhjODhiMDc3ODQzMWE3MGEyYzJiNjljZGMxYjM1MTJmYTY2NWVjYiBweTNrCis3ODAxMiA4ZTU5ZjlmNzg4ZjViMDRlNjA1NjUxZWViNzFhZGRlMTUyNTE2ZmZlIHJlbGVhc2UyNi1tYWludAorNzgwMTMgZmFiMzgwNjc0OTU5NmYzMTFhZjk0NTcyNjFmOTUzZTJkMzY1OWE4MyByZWxlYXNlMjYtbWFpbnQKKzc4MDE0IDJiOGY0NThiYmNmNThlOGQ3MWFmNmZiNGNjYWQ0YjQ2NWNlMTIxN2IgbGVnYWN5LXRydW5rCis3ODAxNSAxM2Y2OTVhYjkxMTFjYzY5ZGYxMDEzMTEyZTJiYWEzZDRiMjAwMjQ4IHJlbGVhc2UyNi1tYWludAorNzgwMTYgMGViNDIyNjI0ZGI1ZWZhM2JmODJhODgzYmQ1OGM3NzQwMzA4NmM4ZiBweTNrCis3ODAxNyA5Y2VlMDg3OTE1YWExZGIyZDg0MzdhMzY4Zjg5M2YwNTQ3Mjg2ZTFjIHJlbGVhc2UzMS1tYWludAorNzgwMTggNTBiZDljZDJlZDQ4MTQzYjdiODlkNDQzODczNjcyNjRkOTJjNTYwMCBsZWdhY3ktdHJ1bmsKKzc4MDE5IDcxZTA4OTI2NWIyODUzY2NiYjNmNTI0MDk5YjM3YmU4NzQwMzYzOWMgbGVnYWN5LXRydW5rCis3ODAyMCA0MTgwNTU3YjdhOWJiOWRkNTM0MWExOGFmMTk5Zjg0M2YxOTllNDZlIGxlZ2FjeS10cnVuaworNzgwMjEgZmU4MzJjNWQzMDY2YjE2MzI3ZDNkMmQyNTM2ODUzZWU1ZDE1ZGE1YiBsZWdhY3ktdHJ1bmsKKzc4MDIyIDVlOWFiNGMyNWI5MTRhOGI2Njg5MDgwOTY4MGY4OWVlY2YzZWU3NjggbGVnYWN5LXRydW5rCis3ODAyMyA4MmNlM2EwODU3MWM5NTI3YWZiNTg5OTMwZDA4N2UyYTQ0YmFiMTk2IHB5M2sKKzc4MDI0IDQwMDJmMWM0NmI4NjljZTM3ZDMwZGM2OWVlOGM1MGM5OGI5ZjYyN2EgbGVnYWN5LXRydW5rCis3ODAyNSA2M2IzYTY1YWZmNTJhOGUyZWZmODlkMjNlYTdmOTMzNTBiNmFhYzNmIHB5M2sKKzc4MDI2IGFkNjgzY2VkZmJiM2E5YzI5MjZhNmYyNmQ0MGQ0ZmYzYWE1YTIzOTAgcmVsZWFzZTI2LW1haW50Cis3ODAyNyAyMjJiNmQ4MGU3NjkyNDAwMWYyZjM4ZGZhMDM3MGZmOThhN2MxZjljIHJlbGVhc2UyNi1tYWludAorNzgwMjggZGQyMjMwYThjNDFkYTExN2UxNTZhYWMwOTU4Y2JkNDFjYThkOGRkOCBsZWdhY3ktdHJ1bmsKKzc4MDI5IGNhY2YyMDdmYmRlZDQzYzRiNDA2YzQyMGIyMWExYjliMTk0NTVjMGMgbGVnYWN5LXRydW5rCis3ODAzMCBlOWNiM2ZkMzQxZTk4MmU1MzMyNTI3YmQ5MTk5ODQ3MzU3N2Q3Y2ZhIGxlZ2FjeS10cnVuaworNzgwMzEgODdkOGI5NWY1Njc1NjA2MTUwY2UyZTZmZWMzNTk1OWEyMDZhMWM0ZSBsZWdhY3ktdHJ1bmsKKzc4MDMyIGQ3ZDQ4YTMwYWRmMzAzNGI4Yjg2Nzg2MjM1MTAwMzY2Y2YwN2M2MzAgbGVnYWN5LXRydW5rCis3ODAzMyA2MDlmYTE4YjI0YmZjYzZhYjg0YjllZTEzYjUwNDkyZTRkMmJhMTZkIGxlZ2FjeS10cnVuaworNzgwMzQgODFiMjMwNmU2YmYzMWJlM2RmNDFmZGRkYzA1YjdlZDYyYjUxZWE2OCBweTNrCis3ODAzNSBmMmM5MWJmNWI3Yjk2NjFlNjYwZjI4OTIzM2U4NGNiM2M4Y2JiZTY5IGxlZ2FjeS10cnVuaworNzgwMzYgNmNhOWQ5NmYxNDBlOTA0Mjk1MTRiYWNlMGE5NDk1NzAxYjA3NzFmZCBsZWdhY3ktdHJ1bmsKKzc4MDM3IGNjMzY3YzA3NzI0NThkM2VkYzA4MTY5NTA1MjUyM2ZlMjg5OGQxMWIgbGVnYWN5LXRydW5rCis3ODAzOCBlZjhmMWMyY2I1MWY5MGI1YmE2YWQ2OTdkNjY3ZDBkMWM1NGU0ODBhIGxlZ2FjeS10cnVuaworNzgwMzkgZTRhZTc5ZDUzZTIzN2EzNWU5NTdkMmU1NWQ1OWNiZjVkZWY3OGY4MyBsZWdhY3ktdHJ1bmsKKzc4MDQwIDg3Mzg3NTY1N2FkMGYzZjIyYmUyODQ5MTQxNjA2MGQwMjYzNTRiYjYgbGVnYWN5LXRydW5rCis3ODA0MSAyYmE3Njc3YmZhOTUxNDhiYzQ2ZTZkOGE0NGNjZmM2MGI0YWQ5YWQ3IGxlZ2FjeS10cnVuaworNzgwNDIgNzM0NjU3YjRiM2U1Y2Y4MDVhNmZhYTRjNDliZmYzYmI0MTI5Yzg5MiBsZWdhY3ktdHJ1bmsKKzc4MDQzIDAzYmFmNmRmMzJkMjY4ZTMxOWQwYmMxYzk4YWI5YzdmNGVkYWM0MzQgbGVnYWN5LXRydW5rCis3ODA0NCA1NTE0NGNhZTAyYmFiMWQ1MTM3ODczZjg5N2E1ZTg4ZWJlMjJmMzM5IHJlbGVhc2UyNi1tYWludAorNzgwNDUgMGI0MmUxYWE0YThiYmIzMGY1MDgxNDg0ZmY5MmQwYmQ5NDU0MDlkYiBweTNrCis3ODA0NiAyMjM1ODcwMGE0ZDBiYmI0NzcwNjU0ZmI1MTQzY2U1NWJiOWUzNzk3IGxlZ2FjeS10cnVuaworNzgwNDcgYTJhYjI2YzVmMDhiNWE0OGI3Mzc2ZWEyODBlN2YyYWE4YThkMTJlNyByZWxlYXNlMzEtbWFpbnQKKzc4MDQ4IDIxYTQ3MWMzNDRlM2EwNTlmYWRiYzlkZGYwZTFkYjA2YzAyNzQ0NDYgbGVnYWN5LXRydW5rCis3ODA0OSBiN2E1ZGYxNDA4NjllN2FkNjZhNjRhZTcyZmQ4MzI5NTFkY2UxYTIxIGxlZ2FjeS10cnVuaworNzgwNTAgYzU4ZWQyNTU0ZjVjODczNmJkMDEyMWExZGJlMDhlNTE0YjYwMzZiZCBsZWdhY3ktdHJ1bmsKKzc4MDUxIGVkZTBmMDVkYzZjMDgxNmYzNTc0NDIyZGMyZDNkODhlZWQ0OGVhMGUgbGVnYWN5LXRydW5rCis3ODA1MiBhNjZlYjhhNjNkNWI2YTg1OWNlYmRlZTQwYTA2ODAzNTI3Yjg5ZjFkIGxlZ2FjeS10cnVuaworNzgwNTMgMTAxMDFjZjg5ZDIwNGE4ZTdmNzQzODdhZjE3YzY0N2MwM2EwMTY5MCBsZWdhY3ktdHJ1bmsKKzc4MDU0IDdjMjRmZWZjMmNkNGIxYzM1YmUzNzVkNDQ5MGI1YTVkZDZiYTAxMzkgbGVnYWN5LXRydW5rCis3ODA1NSA2YjgyYTIzMjM1MDEyYTc0YTM3ZjA4Zjg0YjY2MjQxZTk4M2Y4NDBlIGxlZ2FjeS10cnVuaworNzgwNTYgZjRjNTFhZTE2N2M1NTJkNTM2MGNlNDFlODk4NGY0NWM0NjBlM2YwMiBsZWdhY3ktdHJ1bmsKKzc4MDU3IDgyMTRkNGZjMzIzNDM2NWI3NmQ2ZDNjNmNiNTc4ZDgzODNhMzk3YzAgcmVsZWFzZTI2LW1haW50Cis3ODA1OCBmZGVjMzBhZWI5M2YzYWYzN2JjZWNhZGJhNDIxYjgzN2UxZTA4YzIwIHB5M2sKKzc4MDU5IDUyYmI0MDMyODYzZTE2MjE3ZGEyNmEzMmQ5Nzc3Y2Y5NzViOTAzOGEgbGVnYWN5LXRydW5rCis3ODA2MCA5MzdlYjBmZTFmOWMxYzMzZTMyNjJhODJkYTIwZDM0MDJjNTk0ZWY4IHJlbGVhc2UzMS1tYWludAorNzgwNjEgM2QzNzUzMDExMTVkYjNjMDFiMTFiNDY1MWYyZWFkOGFjYTM2ZmUyYiBsZWdhY3ktdHJ1bmsKKzc4MDYyIDZhNmZjMGMwOTFjZGVmYzY1ZTk3NzM3ZGQ5NWZjMTkyZWQxYjUyNTcgcmVsZWFzZTI2LW1haW50Cis3ODA2MyA0YWNiYmI1YTQ4ZmNkMDFjY2MzYzgzOGQwYTU5Njg3ZDI0YTM3NmI3IHB5M2sKKzc4MDY0IGI0N2JjY2EwMDE1YWM2MGQ1MjI0OWE3OTBmM2EwYWU3NmM2NDk5MzQgcmVsZWFzZTMxLW1haW50Cis3ODA2NSBkZTUzYmFhNWFjN2RlOGIzMWI0YjZkNDI1MTQ5YWJhNjQ4ZDhiNDQ4IHJlbGVhc2UyNi1tYWludAorNzgwNjYgMzc3NmMzMWMwZTgyMDhiYTcwNTNjZDAzZWRhOTAyOWRhMjg5YmZmNCBweTNrCis3ODA2NyBjOTY0NTdkZjQwZTBkOWNhYmEzMDk3ZmE5NzU3OGY0NGZmYjdlNTU5IHJlbGVhc2UyNi1tYWludAorNzgwNjggNGU0MGEyOTExNzUwOTMxYWUwMzNmNzI3MzVlY2Y3MTkyYTViZTJhYyByZWxlYXNlMzEtbWFpbnQKKzc4MDY5IDEwZjE5ZDFjM2I3NzE4YmY5ZjU4NzMyYWFhMTQ3YThlM2E0NjdjNjYgcmVsZWFzZTI2LW1haW50Cis3ODA3MCA3OWMwMjJkNzcyMTNjMjRhMjJjZDBjZGUxM2YzZDVjMDBmMWEwMTM3IHJlbGVhc2UyNi1tYWludAorNzgwNzEgY2E2N2MzN2NkMjZkYzAwYjg4ZTBmYzJhYTlmOTE5N2U1ZTZkZDQ4NSByZWxlYXNlMjYtbWFpbnQKKzc4MDcyIDE5N2YyNDNkZGFiNTNlODg4OTBhNWJmYjQxZjI5NmQ5MjdkODI1MGYgcmVsZWFzZTI2LW1haW50Cis3ODA3MyBiMGM3NDNjN2Q3ZWVhZjBiNGM0YjFhMDUzMjY3NTljNzI1OGY2OTIxIHB5M2sKKzc4MDc0IDdkMDdkYTJiN2RjYWI3M2YwYmUzNjY0ODYxMzAyNDFhZjg3MzZiY2UgcmVsZWFzZTMxLW1haW50Cis3ODA3NSBiNmRmNzVjMTdlMDJkYzA5MDYxYmM1Yjk2Njk3ODRjODdmMGUzMjM1IGxlZ2FjeS10cnVuaworNzgwNzYgNTY5NDQ0NGZkNWQyZTlmZTdlNmNmMWUzNWU3NDY0NGE5YTc3YmFkMSBsZWdhY3ktdHJ1bmsKKzc4MDc3IDUzZjgzZjIwMmE2ZDY4NDY5OGQxNGRkM2I3NGM4OTQwMWY5NmNkZTMgbGVnYWN5LXRydW5rCis3ODA3OCA5MTg5ODAzZjgzNDA3ODYzZDQ2OWE2OWRmMDM5NzNhYjMzNzM4OTViIGxlZ2FjeS10cnVuaworNzgwNzkgYjExNmZmYmNkMWIwNzExOWExNjQxNjdlNThjNTI5YTZhNWZkMGQ5NCBsZWdhY3ktdHJ1bmsKKzc4MDgwIGQ1MzBhNzJiNDZmYzgyYjljODhhMDYyNGI4ZjljMjNhZjNhMWYzZjMgbGVnYWN5LXRydW5rCis3ODA4MSA4N2NkODkzY2I4YmEyNmQyNTM5OWFlM2EyYmY5M2M5ODA0YWU3MGY3IGxlZ2FjeS10cnVuaworNzgwODIgMjE4MDRkYzdhZmY0YjQxOWIwZWVkZWIzZmQwMDY1YjA2Yjg3Y2ZlMCBsZWdhY3ktdHJ1bmsKKzc4MDgzIGRmZDQ2YTVkYjg3MmJlYmZkZjVjMTVhNjU4NWY0NmI2MzMzZjcwNjcgcmVsZWFzZTI2LW1haW50Cis3ODA4NCAwY2ZlODM2YzRhOGQwNjEwNGIyMGUzYzc0ZGNiOTEyOGE5YzI5YWJkIHJlbGVhc2UyNi1tYWludAorNzgwODUgNmE4OTJjZWRmM2E0M2FmMjUwM2UwOGViN2UyMWI1MzUwODZjNDc2YiBsZWdhY3ktdHJ1bmsKKzc4MDg2IDg2YTg0YmUzM2U2YWE4NmMzYzdkZTJlMTZmYmVlZmMzMzg2NjA0ZDAgbGVnYWN5LXRydW5rCis3ODA4NyAxYmU3MTE0NDczZWI1YTlmZTcxOGRkNGQ5ZWM0ZDdlMDExYmQyOWE2IHB5M2sKKzc4MDg4IGJkNWVlMTNmZGRhMWVjZDgwNTk1NGM2MWM0ZmY3M2IwNmRiNDNlYTYgbGVnYWN5LXRydW5rCis3ODA4OSA1N2ZmNzcwMmVjNzRlN2I4ZmJiMzA1Y2RmMDE3YzRkM2I2NjYwYTM5IHJlbGVhc2UyNi1tYWludAorNzgwOTAgMGNmOTdhZDJmZDFmNjFhOGRmNWI1YWEyNmNiOWEyMWE5N2E5OTBhMyBweTNrCis3ODA5MSA2NDAwNGE5ODYyZTQ3MjFkNTg2ODQxYjYwMjM3ZTAzODkwNGUxZjlmIGxlZ2FjeS10cnVuaworNzgwOTIgODBlMDIxZmUzNGVkN2IzYjkwNDlmMmQ0OTk3NDUwYzU3ODJhNjFmNyByZWxlYXNlMzEtbWFpbnQKKzc4MDkzIDcwZTExNWMzNGY5NzA4YTQyMWYxYzhjZjQxNmRmMjYwY2EyNTc0ZjQgbGVnYWN5LXRydW5rCis3ODA5NCAzZDk0YjFlNzc5YzU4MjkyYjU2M2ZmNmExMTQ4NWZmYjQ5Y2YzOWIyIGxlZ2FjeS10cnVuaworNzgwOTUgYjgzNGM4ZWU4ZTdjOTJkZGI0NDBhZWRjYmM4NmQ5ZmRiNDIxOTA0OSBweTNrCis3ODA5NiBmMTA4ZjYyNzU4NTU1Njc0NzQ3YmZiOWUyMTU0NjRkNjg0YmM4NmJjIHJlbGVhc2UyNi1tYWludAorNzgwOTcgYTI4MDg0NGI2OGY0ODU1NGNmODYwYzY0ODdkOWIwNTUzNjI3ODFjNCBsZWdhY3ktdHJ1bmsKKzc4MDk4IGZhY2E5N2M1ZjAzODA0NjExNjQ2M2I2MzFiNjZkYTBjNzg0MTA2Y2YgcHkzaworNzgwOTkgMTNmY2FhNzkzMjRiYjg1MTRlMmMzYmE4Y2IxYTEyYWI1NWM0NGQ5YyBsZWdhY3ktdHJ1bmsKKzc4MTAwIDNmMzkwZjQ4YjExMzE0ZWRhNDZlY2Y0ZjRkNDZhZGY4MDljYWM2MjEgcHkzaworNzgxMDEgYzhjMGFhMWZkNGE2ZDUyOWUwMzA3NzU2YmQ3ZDI0MTQ2OGQyMGJkOSBsZWdhY3ktdHJ1bmsKKzc4MTAyIGM4NmQ5M2FlY2Q3YTI1MDJkOWI3NTYzNzViZDVmMDdlMTY5Yjc1ZTUgbGVnYWN5LXRydW5rCis3ODEwMyBkODRkYWNkYjJkMTI1MjQ5ODBhNjkxZTU0ODIyMmM3MmI4Y2IzYmY2IGxlZ2FjeS10cnVuaworNzgxMDQgNjAwYWI5Y2VlNDAzNTBlNjNmYzA0MmNlMmNjNmQ2MWQ1Y2U3MmU4YiBsZWdhY3ktdHJ1bmsKKzc4MTA1IDRiY2Y5NjgyOWQxYTNkODk3ZjQxZTdkYTVlNTZlMTFjNDgxMTM2MGUgbGVnYWN5LXRydW5rCis3ODEwNiA5MzY3NmFlOTdjNjhiNTNlNmEwOTY4YzM0MTU5OWEwYWZlMzVjZmZhIGxlZ2FjeS10cnVuaworNzgxMDcgNDg0ZGExM2YxMjUzNTNjN2M4NDllNmQwZjMxMmMxZThiZmY0ZWQ0NSBsZWdhY3ktdHJ1bmsKKzc4MTA4IGRiZjAzZWI3YzEyZWQ0MjBjZTY4ZDQ3YTljMTdlMTdmZTRjODRjYjggbGVnYWN5LXRydW5rCis3ODEwOSBhOThiMTM2MDhkMjNhNDVkYjA2MjZlYTI5OTdiYmI4Njk4MzNhYTU1IGxlZ2FjeS10cnVuaworNzgxMTAgZTdlODliNDU4MzQxOGI5NDFkNTI5OWNmODg5ZDkyN2UxYWMxOTA4ZiBweTNrCis3ODExMSAzN2U4OWRlYmVmNmEzZGU0OTcwZmE0YjM5NmRmMzgwNjNmZGZkYzg4IHJlbGVhc2UzMS1tYWludAorNzgxMTIgNzU4OTYwNWRhZWQxMDQyYWY5OTMyNTE0Y2NkOGRmYjk3YzlkYWEyZiBsZWdhY3ktdHJ1bmsKKzc4MTEzIGE5MWZmYzk2NDRlYjllNmYyNjg3MjE0YTc1YTQwN2FhNjhjOTlhYTAgbGVnYWN5LXRydW5rCis3ODExNCA0N2ZhNTRkYWIzOGNhNzBiZDYzYTQ1YWQ5ZGIwOTM4YzczNWM1NjBmIGxlZ2FjeS10cnVuaworNzgxMTUgNGUwZGI0NDU2NGIxNzNkMDlmOGE3YTVjMDEyOGE0NDFjYmNhZWI0MCBsZWdhY3ktdHJ1bmsKKzc4MTE2IGY0OGM0NzFhYzhjOWUwZTk4YmJhMTY4ZjEzYTMxNzY0ZjY2NzgyMWIgbGVnYWN5LXRydW5rCis3ODExNyA5NmMyNjcwM2I0OTBhNGI1Nzk3YzIzMjUzNDg0MzE2NzBmZWY0OGExIGxlZ2FjeS10cnVuaworNzgxMTggOGJlOGQ1ZGI5NmEyNWNhZDhlOWMyNjRhNjNkZWNkNmY5ZjNjN2Q4NCBweTNrCis3ODExOSA1OWUxNjJiOWYyMjU0M2Y3NDhiNTgyZTFlMjI2ZjQ2YTlkNzViYzMxIGxlZ2FjeS10cnVuaworNzgxMjAgM2VlZjM5ZTdiNzRmMzIyOTRjODFlNjFkZWM4YWQxNzM2OGQ4MTA4NyBweTNrCis3ODEyMSBlNWM1NjQ2NTkyMDM3MzZiMTM0Mzg4OWU1YzJkYTAxMjRkZTAzODgwIHB5M2sKKzc4MTIzIGVhOGNjMTM5NTFiMGJiYTVjNDgyMGNjZDNhYmZjMTNlYjliNTNkZmQgcHkzaworNzgxMjQgNmE2ZWRkYjQ1OTk2N2IxMDAwZTY0NzA5ZDBkMmYyYzdhZTQ1YWE5ZSByZWxlYXNlMzEtbWFpbnQKKzc4MTI1IDI2NTI4NTkxMjE3Y2YzNzNlMzU2ZDU4MGZmYjE3ZjQxZWRkMDE0MzIgbGVnYWN5LXRydW5rCis3ODEyNiBiZGJlMTM3OWYzZWFmN2YyZmRjOTZjNjFmMTA4YjJmMzFhNTk5MWU0IHB5M2sKKzc4MTMwIDBiZWI3YzgyOTRjN2Y0MzljMjQzOGQyMGQ1OGM1MzMxOWYxY2VmODUgbGVnYWN5LXRydW5rCis3ODEzMSAwYWY2OTlmMDllZTNlMmNkMDViNDhiZDhkYzNkZGVmNzRkN2M1ZTEwIGxlZ2FjeS10cnVuaworNzgxMzIgNjFkMTcwMWQ5YzY2MmVjYjM5NDQyODQzMjQxM2YxYTkxODc4NWM5NiBsZWdhY3ktdHJ1bmsKKzc4MTMzIDExNjU5NTk0Zjk4MjI1ZWVlMzUxMDQ0ZjE3MjE1OTYxYjBkYTA3NmIgcHkzaworNzgxMzQgYzUyOWU1MWY4Mzc3NThkYmQ1YTE5ZmFkODczNjVhNDFlNzIwYzAwNCBweTNrCis3ODEzNSA1ZGNlY2FjMWM4ZDY3NWVjMDE4MzRmMzg0OWY3NDQ0YjdkNGNiYzk3IHB5M2sKKzc4MTM2IGQxZTJmNzk0ZDAyMDY0MjVmZDlmNzdhYzVlZTBiMjQ2MDBiMjJjOTQgbGVnYWN5LXRydW5rCis3ODEzNyAxNzJmZGIxZDczMzdhZGI0YmM4YzEwZjQ3OTUyNWU4YTFkNjNkZDAzIGxlZ2FjeS10cnVuaworNzgxMzggYzJiZGJkOTM1YjVlNTBjYjY3YjBjN2JiYjJhNDgxYjM5NmJlNTE1ZSByZWxlYXNlMjYtbWFpbnQKKzc4MTM5IGE3MWRlYTg5ODc3ZDg5NmY2NjA5MGY3ZDFmYmY4MjY0ZmU0N2QzMWMgcHkzaworNzgxNDAgNjg3Y2E0YjM3NGY0Yzc1NjhiNDA5NjIxOTIyYzllMmY2ZTNkNjYyOCByZWxlYXNlMzEtbWFpbnQKKzc4MTQxIGM0NWRjYmRjYWI4NzM2MmRhYzZiNGQ3Y2MyNjA5ODhiZGE4YjRlNmEgbGVnYWN5LXRydW5rCis3ODE0MiBiZmQ0Nzk4YjFmNzdlMDBkYjZhNzlkODEzYzZiNzYzMzk1NjZjNzRiIGxlZ2FjeS10cnVuaworNzgxNDMgMTRlZTNkNGM3YmQ1Yzg1NGUzYjY2M2M0ZGJiMDNmNDE0NzRjNjA5NSByZWxlYXNlMjYtbWFpbnQKKzc4MTQ0IDgzYzhkZmI1NDQyMTIwZWJlMWQ5OGNiOGZhMTI4MTIzOTM0ZWE1ZDEgcHkzaworNzgxNDUgZmIwOTgwZTFhNGNlNDJmNmMzNDM0NGVkNWMyNGQxOTg0M2UzYzNiMiBweTNrCis3ODE0NiA1ZWZmYmQ1NTIxZTNmNmVmNTdhNTEyNmQzMzJkNzQwN2VkMGRiNTY2IHJlbGVhc2UzMS1tYWludAorNzgxNDcgMjM2YWI0OGVkZDBjZWE0OTg4OGQzOTgwODY5YjllNDI1ZGU1YmM1MiByZWxlYXNlMjYtbWFpbnQKKzc4MTQ4IDJiOWIyMWI4MzBkOTI0NjAzNWRkOGQ2Mzc0ODRjMDVjZThiYTg2ZTQgbGVnYWN5LXRydW5rCis3ODE0OSA0NzEyMzkxNWVhMjBkOTBkZmZhMzc3ZmJhZjQ2ZjBlODMwY2E3ZDY4IHB5M2sKKzc4MTUwIDNiZDY1YjM0NmJmY2ExNjc3OGViNjE4MDk0YTMxM2Y4OTI4ZGU2OTggbGVnYWN5LXRydW5rCis3ODE1MSA2YWU1MGMyYzBhYjlmM2I4MTQ4ODUwNDNlNTI0NGRjNTI3OGU5YjRlIHJlbGVhc2UyNi1tYWludAorNzgxNTIgZjE1NmI1ZTczYjBkMWExMzM5MzVmMTVmNzllYmM5MTRhZmE2MDQ4MCBweTNrCis3ODE1MyA4Y2YwN2E2NWQ2Zjg1NThmOWNiNDc1MWI2YzU0MTU1ZDY1NDc2MzExIHJlbGVhc2UzMS1tYWludAorNzgxNTQgODJhYTk2OGE5NTA0YTZiMzUyMzU3ZjgzOTcxMWRiMmU0MmYwMGIyNSBsZWdhY3ktdHJ1bmsKKzc4MTU1IDMzNDUyZDk1MzAxZjE2MDczNzVlZTNlMzY4YWM0YzcxZWJiZWUwNzUgcmVsZWFzZTI2LW1haW50Cis3ODE1NiA1OTAyOTQ0OTVlNWYyZDMwNjE2MDhjMTU0NzA1YzRiNTU5N2VkZGU4IHB5M2sKKzc4MTU3IDM3ODhhYjI4Y2NhZDcwZTZlNDg4OTM1YjhjMTQzNmU4MGE0ZjZlMGMgcmVsZWFzZTMxLW1haW50Cis3ODE1OCA1NmZlMTY2OThlZTgyODhhYTEwNDFlM2ExNzVkMDJkZjlhM2UzOTAyIGxlZ2FjeS10cnVuaworNzgxNTkgN2IxNjJjNmE5MzQ0ZmMwMmRkOTY1MjRlNjVlNWU5ZTllMTk3YWNlOSBweTNrCis3ODE2MCA2ZjY5YjhmYzJiYTNlZjY4YTcwZDViNWMyYmU5ODZlOWQxMmU3NDY4IHB5M2sKKzc4MTYxIDEyMThhMmEyMjUzY2NhMzQzYWE3YzAxMmVlMGE5MDY1MTk3NzVlNDQgcmVsZWFzZTMxLW1haW50Cis3ODE2MiA2OTRjOTdhMmNkZGMxNmRiMzFlZTMyY2MyZWNkNTRjYWI0ZDc5ZTVmIGxlZ2FjeS10cnVuaworNzgxNjMgMjI5NmM1ZTZhZDBkZTY2YmM2NDM1ZTc3NGZmMWU5MGJlMGNiN2QxYSByZWxlYXNlMjYtbWFpbnQKKzc4MTY0IDgxMjk0NjJjYWEzMDdhNTg5MWM2OGY3MGJmMjRkOGFhMzI0ZGU5M2IgcHkzaworNzgxNjUgNTM3YjY2N2FkNDUwMDNjOGQ2NjdkNmYwYzgwNzgyZTJmNmE1MWE4YSByZWxlYXNlMzEtbWFpbnQKKzc4MTY2IGIxYzlkNmJjZjNkNGM4NDJjMDY5NzBjYjgxOWEwNzI2YTViM2I2NmQgbGVnYWN5LXRydW5rCis3ODE2NyA2YWNiOWFmYzc1Y2RlNGFjZDg2MDhmM2EzN2MyMTk0ZWZkM2Q1MGY5IHB5M2sKKzc4MTY4IDMzNDdiNGVlYWI0MDRlN2Q5MzMwN2QzOThmZmNkZjg2NjZjZTFiZWYgcmVsZWFzZTI2LW1haW50Cis3ODE2OSAyNjNhOGY5MDU3OGQwNmZkZjc1MWI3M2ExOGZhZDM3YzU5YjJhZDQyIHJlbGVhc2UzMS1tYWludAorNzgxNzIgZDQzNzQwMjQ3NTAzMzJiZDA5YTE3ZjE0YWY3YTkzNTQ5MjQ4ZGFhMiBweTNrCis3ODE3MyAzMmE0ZWUyNDgwNjk0MzRlMDhmODVmYTMwOTJmZGVjYTA2NThhOGIyIHB5M2sKKzc4MTc0IDQxNTc5MjAwN2ZmOWVlYjM3ZTY4MzA1NjhiN2JkZTQ5NjhhNDExNjEgcmVsZWFzZTMxLW1haW50Cis3ODE3NiA4YzRjMzkxY2FhZWJmNTc2MTczNDRmOWNmZDI1YTM0N2I1YjM5OThiIGxlZ2FjeS10cnVuaworNzgxNzcgYTMzNzVhMGZmZTJlNDU5MDQzZWUyMTUxNjM0OTkxMDk3MmZlOGUxOCByZWxlYXNlMjYtbWFpbnQKKzc4MTc4IDcwZjQ1NmJmNzYzODdkNDk5MDJkMzlhZmZmMjI5YTA0NDhkMDQ0MTggcHkzaworNzgxNzkgZTBlYjk3NzNhZjgxODM0ZDNkNTk4YTM2MTM0MjU4MjlkMWE1NzQyNiByZWxlYXNlMzEtbWFpbnQKKzc4MTgwIGE3OTZmMjhhY2VlMmU3NWRiMTk3YzAyNGIzMDMwYjc0YzVlYjgzYTIgcHkzaworNzgxODEgNjhiZTQ0NDI4OTA5ZWQzNGM3ZmY2MjBmOTJiZWM4NDU1NTkwOTAxMSByZWxlYXNlMzEtbWFpbnQKKzc4MTgyIGRjMTMwNGYwNDVhNjBlNTI0NjQ5NjA3MGE3Zjc2MGI1NTIxMzBiOTEgbGVnYWN5LXRydW5rCis3ODE4MyBhMGVmY2Y5YjZlZGQ1NDJlNmU1ZTY3YWZjYTFkYmQ0ZGZlZjc4NTRiIGxlZ2FjeS10cnVuaworNzgxODQgMjAyMmVkZThjYTBjNjFmNDRmZGY0NGMwMTZlYjAyNzg1ZjMxNDJmYSBsZWdhY3ktdHJ1bmsKKzc4MTg1IDkwMWZjYWFlNTI3NWNkODQ0ZWM1Yjc4N2RjYzk2MTAxN2M3OTkxOTcgcHkzaworNzgxODYgODc1NmMzZGU2ZDI0YjhlMjI5ZTQ5M2UwYzE2ZTVlNDNiMmEwYTZjNSByZWxlYXNlMjYtbWFpbnQKKzc4MTg3IGQyOTFiODMwNDJmYjZjOThlMWE0YzQwYmQyYjU1ZDgyOThjYmRiOWMgcmVsZWFzZTMxLW1haW50Cis3ODE4OCAzMWY1OGQ5YzcwMTZlYzhmOTZkMDY1MTlmZjc4ZDdkNDhmNGZlYmJiIGxlZ2FjeS10cnVuaworNzgxODkgNWU2ZWRiNGU3NmY1ODM3MDExMGM2MDBhMDAzOTFkMTJmNGE1ODU4OCBsZWdhY3ktdHJ1bmsKKzc4MTkwIDZiMjliOWY5NjgwNTk5Y2I2NTYxZTBmNzkwOTMxMTM0YTY0ZmZlZWIgcmVsZWFzZTI2LW1haW50Cis3ODE5MSBlZjc0NzY0YTYzMjA5ODM2MTA0MzFiMzE2MTRiNWEzZTY0NTNlOGRmIHJlbGVhc2UyNi1tYWludAorNzgxOTIgM2JhYWJkMWQ2OGEyODZmNDMzYWRkYjQyMmQ1ZmYzMGQwYTZiMGVhNyBweTNrCis3ODE5MyAwMjkzMTgyNDY5YTc3MzRkZDMyZTQ4ZDhhYmYzZTRjYjRkODU5YTI0IHJlbGVhc2UzMS1tYWludAorNzgxOTQgNDExYjMyOTkzOGRjNGNhZDc4MTQxMzgwZjI0MzhhYzUxNDdiMWZiNSBsZWdhY3ktdHJ1bmsKKzc4MTk1IDE3MjVmYmFiZTczYmQ0MDVhMDg1MjBhYzc3ODM5OGY2Nzk0NDM0NzEgcmVsZWFzZTI2LW1haW50Cis3ODE5NiA3YWU0M2MwNTExNmQzZjkzNmEzYzIyZWY4YTQ0M2Y5NGYyOTFhMGQ3IHB5M2sKKzc4MTk3IDYzNzRlMTg1OTM0NjQxN2Q1MjUwOTg2Nzc4YWQ2ZTQ1NGUyYzI5YTQgcmVsZWFzZTMxLW1haW50Cis3ODE5OCBiNjQxYzFhYTY0M2UxOTI4Y2E5MDRiZDA3ZjMxNDA0MTY2YTE2Y2YyIGxlZ2FjeS10cnVuaworNzgxOTkgNDY1YzA0N2VmMzExYzBjYzQwZjBlN2QzYmFhNTJlYTAzNzczOWM4ZSByZWxlYXNlMjYtbWFpbnQKKzc4MjAwIDc3ZDg1OTAyNjkxOWNlNGFiZThlMjM2ZGEzZWZkODhjYjk4Y2JhOGEgcHkzaworNzgyMDEgNGY2YzFiODI3N2ViNDM2ZWNiYmRhNTA4MDY0OGY3ZTIyNjA5YmI4YyByZWxlYXNlMzEtbWFpbnQKKzc4MjAyIDdhNTZmMmNhZTNlY2Q3ZGEyNzYyZmQ4ODk2MjgyZDViN2E5NjlkNjAgbGVnYWN5LXRydW5rCis3ODIwMyAxNWIwNDlmYWMxOTFhNDA2NWNiMDg2YzhjNzc5NTc3ZjkxOTU1ZmI2IHJlbGVhc2UyNi1tYWludAorNzgyMDQgZDRmYmI3ZTUzYzkyOTJiOTRkZmE4MmY1ZTRkMjM1ZDllN2E5OWQzMSBweTNrCis3ODIwNSBiNzMyNmY5YjU5OWI3MGYzNTFlNzlhYzEzNGIwMjFiNGY4ODBhYjI4IHJlbGVhc2UzMS1tYWludAorNzgyMDYgZWJmZDBlYWViZTI3MTE4ZjI5YTRmN2FiZTc4ODhjNDIwZTJlNDU5MSBsZWdhY3ktdHJ1bmsKKzc4MjA3IGJmYjNlODRmODVmZmY1OWVmMzRjODk1ZTJiZDkyMTgyNWM0NWExNjIgbGVnYWN5LXRydW5rCis3ODIwOCBlZWNmMWJlZjA1MmQzZGE1MTEyM2QyODViODNkMThiNGM0MWE1ZTE3IHJlbGVhc2UyNi1tYWludAorNzgyMDkgNThiMzBkYmNmOTljNDhkNmI4NWU3NTMzYmUwYmQwYTA2NzIzYTc0NCBweTNrCis3ODIxMCBhNjcxZWUzYmJjYjQ5OGU3NDk0NjNlZjRkODkzN2I3NzQ2OGNkODE5IHJlbGVhc2UzMS1tYWludAorNzgyMTEgMGRiZTI5MzBlZTNmMGRkMjU5MGQ1MGIzMzRiZDMxMDhhMDU1OWYzZCBsZWdhY3ktdHJ1bmsKKzc4MjEyIGEyNzI0NDRmMGVmMGM5MDIyZjM3ZWM4NmZkNDU3ZWZmNWM2MmRkOGIgcHkzaworNzgyMTMgMjI1MzU1N2Q2ZmEyZmU2MTEyZTgzYzIzNWQ0OTA5NWM3OTAyYjk1MiBsZWdhY3ktdHJ1bmsKKzc4MjE0IDRjMGJlMzdiNDZiMDM2OGMwM2I0ZDdiZWJlYmM4Y2I2NzZjMGFlOTEgcHkzaworNzgyMTUgZGZjNjdhZDRkY2VlNTdiNjY2MjdjYjBmOGQ4ZGQ0MTFhNjQyZGRiNSBsZWdhY3ktdHJ1bmsKKzc4MjE2IDhmMDJjNTRhYzJhYzhhNzBmZTcxMmQ5MGNiZTMwYmZjNzU0NzBiMmEgbGVnYWN5LXRydW5rCis3ODIxNyBlM2QwNzEyMzNiZWZjMGFlMTUzNjJiNzUzN2QzYzEwZjlmYzhmNDljIGxlZ2FjeS10cnVuaworNzgyMTggZWExYWRjNjgzNWNjZDE5MmZkMzg5YWM5NDZlOWNiMTVhYzcxNjM3NSBsZWdhY3ktdHJ1bmsKKzc4MjE5IGYyMjVkNWU2ZTBlNTBiMGNmY2ZlMjA4NDhlNWY2YWFhMDVkZjIzY2EgcHkzaworNzgyMjAgOTNlM2U2YzUxNTEzNzU3ZWI4MTUzMzg4MTdlYWQ1NWM0MTAyMDc4ZiBweTNrCis3ODIyMSA5YTU4MWMwMjEwZjJlZjc3NzdiYWUyOGZlZjM2NzlhMjEwY2JlNjM2IHJlbGVhc2UyNi1tYWludAorNzgyMjIgNDFjNWU4ZWZlYWEzYzU4YzkyNTlhMWRiM2E3OWYwZTdhNjkyNTgyYSByZWxlYXNlMzEtbWFpbnQKKzc4MjIzIGZiOGMwMzg4ZTM4NWU0ZWQ5Yzg0MzBlMzJiYzA5YThjZTJiZjA1NzEgcmVsZWFzZTMxLW1haW50Cis3ODIyNCA5OTJmZDA1NDdmZjhkNTdkODRmMzhlYTVhNjQwZTgyNmFiNWU5NjA4IHJlbGVhc2UyNi1tYWludAorNzgyMjUgMjg2YWYzMDhjMWJiYWFhODhhMTE1ZTA4Mzg5NDRhYzY3NzVkZDBjZiBweTNrCis3ODIyNiA4YTllZjJjZjc5NGZlNmU2Y2I3MGJmYjgyYTZmNzQ2ZjZlYjkzNmZjIHJlbGVhc2UzMS1tYWludAorNzgyMjcgNTk3ZDZkMzYyZGRlNDBkODBmYjcxN2RiMzM4Nzk5NTIzODUwNTcwOSBsZWdhY3ktdHJ1bmsKKzc4MjI5IDVhYTlmODNkZDAwZDlmZTJkNGMyNDRkMjlhZWIwZTkwMDc5MDE5NzkgbGVnYWN5LXRydW5rCis3ODIzMCA3MmY0NmNiZmE1N2FhZDIyMzdiNmYyOGZiOGVjYTViN2Q4MmVkZjI2IHB5M2sKKzc4MjMxIDVlNjE0ZWFhYTUwNTFhYjk0ZWIyYTEzMWIzN2Q2ZWEwZjliYzg3NjMgcHkzaworNzgyMzIgNmU3NGQzZTUxZDMzZTlmNzkxYTYxZmRkNGU1ZWYwMzc5MzJmMzI1NCBsZWdhY3ktdHJ1bmsKKzc4MjMzIDRmYzhiNmZlNGFmODY3YTJiYWZkYzRjODc0MGJkZmMyM2IzMGJhZjMgcHkzaworNzgyMzQgN2RhN2Y5YmZkYWFjMDE3ODlkN2QzNDVhN2VhMzA0ODY5ZDZhMDBjMiBsZWdhY3ktdHJ1bmsKKzc4MjM1IGM0ODVlNTVhYWY5NjVmNTQ2NTk2OWE2MDdkY2YwZGFkMTY3OGEzMWUgcmVsZWFzZTI2LW1haW50Cis3ODIzNiA4YjE2ZjE0MDgyNDllOWFlMmY5OWE2NTE4ODBlYjhiMWNhNjRlZjI0IHB5M2sKKzc4MjM3IGY3MjVjZjEyMzM0Yjk3YzAxMTI5YmI5OGY5NWFlZTkzMmQ2M2M5OTkgcmVsZWFzZTMxLW1haW50Cis3ODIzOCAwOTA2YzZmNjQ4NDc0NDlhN2EzYTUwMzBmZjlkYTA3NTk3YzE3ZDM5IHB5M2sKKzc4MjM5IDQ3NGVjNTY4NWEyZGYwZWVjZjczYjcwOThjNWEyN2JjZTM4YzcyYmIgcHkzaworNzgyNDAgM2M3MDQ0NjFlYWRhMDljYjllMzdmOGI0OWI5NjYwN2VkMTA1NzdlMSByZWxlYXNlMzEtbWFpbnQKKzc4MjQxIGY5ODE3ZWM4YjU0YzA0YjM2M2Y0Mjk1ZWVjZjhkNDg4YmQxZTAwNDUgcHkzaworNzgyNDIgNjc0YzI3ZDg3ZWE5OTIxYjViZDBmZjUzYTk3YWUxMjUzMTQxZjJlNCBweTNrCis3ODI0MyAxYmYwNDNlZGI4ZDU3NGZhZWU1OTZiMzAzOTdmOWFkODc1MjljYzQ1IHB5M2sKKzc4MjQ0IDUyODIzODIwZGNlMTNlOGQxZjI5OWNmNTA4MWIzNDgzNTdjMTkzMDEgcmVsZWFzZTMxLW1haW50Cis3ODI0NSBlNzQyM2JlZDBlYzQzZTJhNDRmZmFjMDkyNTE2MWY2MjJkYzMxNTQ1IGxlZ2FjeS10cnVuaworNzgyNDYgOGQ4NzFlMGZhNzAxODYyMjBiNDQ4YTE1NjRmYTIzMmRmYTZjNGFiZSBsZWdhY3ktdHJ1bmsKKzc4MjQ3IGVhZjhhOTNjZGJmZjRjYTg2M2U2Mjc0Y2ZlMjgyNmNiYmI0YWEzMDIgbGVnYWN5LXRydW5rCis3ODI0OCA3YWI2Mzg4NGQ2OGI2ZjU3ZjY3MzU0NTNiMDc2NGNiZGNlZjA3NDNjIHJlbGVhc2UyNi1tYWludAorNzgyNDkgM2E3MTMyZjY1NjIzMTM2ODEwODRiODkyMzVhODdiYTk5ODM5MjBhYSBsZWdhY3ktdHJ1bmsKKzc4MjUwIGFjYjI3Yjk3OTIzYTNhN2VhNDI5M2ZmOWI5MDMzYzgxYmNmNWM1N2IgcHkzaworNzgyNTMgZGU0Y2E4ODE0ZTBkODgzMTdmNGM3YTNmMDI4MjAyMzgwYzMyZGY2NyBweTNrLWNkZWNpbWFsCis3ODI1NCA1NTdlNDU3OTk3YTgxNjRjZTI3NjE3MGI3ZjJmZDdhMWFkYTg3N2I1IHB5M2stY2RlY2ltYWwKKzc4MjU1IGJhNDA3YzNkODIwY2Q4NTZkYzNhY2U3NmM5MDdmNjA0OGJjMjQ0OTUgcHkzay1jZGVjaW1hbAorNzgyNTYgODY3MjcwZDNjYTg5ODkwNGMyNTM5M2VmOWQwN2FkNDhjMjRiZWM0NiBweTNrLWNkZWNpbWFsCis3ODI1NyBhYzVjMmNmZWE0MmY2ZDA2N2MwMTFiNGUxZTgwYTJiOTdhNTVhOTMwIHB5M2stY2RlY2ltYWwKKzc4MjU4IDlmY2MwMzBhOGU3MDFiODExNWFmODQxYmFiOWZlOGZlNjc3OWIzMWYgcHkzay1jZGVjaW1hbAorNzgyNTkgM2U3ZGQyMDY4NWQ4ODVhOGE3YTY0ODhhMDE1ZjhhMmYzNGRjMmMxNSBweTNrLWNkZWNpbWFsCis3ODI2MCBmNjdiY2Q0ZWNiZWVmZDU2YTVhNDEzMWFiZWFlOGI4MDA1ODA4MGNmIHB5M2stY2RlY2ltYWwKKzc4MjYxIDY2Zjk3NTBiYzZmZjM2MWRjZWQ2ZGM3N2NhNDlhYzc1MGQyYWJmNzMgcHkzay1jZGVjaW1hbAorNzgyNjIgZmJjMTU5NTMxYmUxY2M1YzA2YzNlYTlmNjhjMjkwZDg1YTcyM2ZhNSBweTNrLWNkZWNpbWFsCis3ODI2MyAxMjliYmM2NjM5YmQ4N2YwOTY5Y2NmNTc4NTNhYmQwYTljNDZhM2E4IHB5M2stY2RlY2ltYWwKKzc4MjY0IGJhZGQ0ZTcwNTczM2FiZjQzNTQ5YWVjMzY1MzRmOWJiZjA4ZmM4YzkgcHkzay1jZGVjaW1hbAorNzgyNjUgNDIwOWMzOThjOTI5N2FhNTViOWIwZWFhOTBhOTg4ZjVkMDcwN2U5YiBweTNrLWNkZWNpbWFsCis3ODI2NiBlMGUzZjYzNDE1NzA0NmY5MDFjYjI5MjFlMDNhZDgzODUzZmM4MGFmIHB5M2stY2RlY2ltYWwKKzc4MjY4IDNjMTJiZGY2Y2M2ZDE3ZjNiMDg3ZTk2NDQwMmJhOGE4ZWQzNjRhOTggbGVnYWN5LXRydW5rCis3ODI2OSBhYjIxYTA0ODFkNzI2NGU2MTUxNDk5MDY2YmI1NmRkMDM5YzY4MmJlIHJlbGVhc2UyNi1tYWludAorNzgyNzAgZDMyZDAzZDQxOTQ3Njg3YjBkMjZmOGU1N2I5MzhmODYyZTU0MjdhYSBweTNrCis3ODI3MSBiOTgzNzc5ZjIxMjFiODU0NTExYTk1MGYyNzQ3NmIyZWRhNDljYWZlIHJlbGVhc2UzMS1tYWludAorNzgyNzIgZGNkYTk4NWM2NDAzNDI4MDhjZTdkYjA3NmFjYWIyYmUxOTVjNmYyMiBsZWdhY3ktdHJ1bmsKKzc4MjczIGFmMDBmNzBhMWZmMTA0NGMyN2NlZDFmOWUxZDBhZDRhMmY3Y2E2NWMgcmVsZWFzZTI2LW1haW50Cis3ODI3NCBkYjg2YmYzOWNjYWE2OGYzYmYzZjllNzFjMTc2MjhjMmZmYzMwZDIzIGxlZ2FjeS10cnVuaworNzgyNzUgZDNhZTA0MWU3YjhjMjZlZDk1ZDRhNzcyZWY5Y2M4N2NlNzhiNjE1MyByZWxlYXNlMjYtbWFpbnQKKzc4Mjc2IDM3OTBmM2VkYTFjNTZiOGFjNmZiZWNlNDc3OTMxMTMyMTllMDk1ZGEgcHkzaworNzgyNzcgMzkwYjBlNzA3ZjU0YjVkYzA5YWMxNzE0NzQzYjZjMGQzMzAwN2IwNCByZWxlYXNlMzEtbWFpbnQKKzc4Mjc5IDFiMjQyZmIzM2JlNzEyM2NhYTY1MDBlM2Y4Y2I4M2UyMTkxNmQzZDQgcmVsZWFzZTI2LW1haW50Cis3ODI4MCBjOGVhNzU1OThmZDZkMmU0MGMyMzQ5Y2EwODYyMjY0NDc1MTgwODk1IGxlZ2FjeS10cnVuaworNzgyODEgYjkyMmUxZWJlMzgwMjI2OTE5ZjQxNDU1Mzg3OTU3M2Y5ZDZmMDZkZSBsZWdhY3ktdHJ1bmsKKzc4MjgyIDBlZDE5Mzc2OWE1ZjFlZGJmNTU3MTkwMDUwZWUyMzZlMDFmMGQzZDggcmVsZWFzZTI2LW1haW50Cis3ODI4MyAwMzQwODA0YWQ3MTNlMDQ4NjRiYjlhYzE1ZGJjMmQ3NjgwMGNlNmRhIHB5M2sKKzc4Mjg0IDRmMzA0NDUyYmJmNjlhYWZlMDZhOWI2ZmI5OWIyYmQ0YjAzYTRhMDQgcmVsZWFzZTMxLW1haW50Cis3ODI4NSA4MGI2MTJjZDk0YTRlN2RlMWRlMjk5MGEwYmYyZjE0Mzc4MDQ4YTBjIHJlbGVhc2UyNi1tYWludAorNzgyODYgNTAzM2E0Mjk1Yzk2YWViNzJhMDNjMzg1NzI0OTMwNTU2MmUwMmY0MyBweTNrCis3ODI4NyBlMTQ0YzYzZTFmYTYxMTI0ZTM3NzFmMmY1NTU5NzgzMGU5YjEyOGIzIGxlZ2FjeS10cnVuaworNzgyODggMGQzYzk3MWViMjA2OTc1OWJiNzI2Nzk5ZmNlOGI2ZjM0NWEyMGUyNSBsZWdhY3ktdHJ1bmsKKzc4Mjg5IDIwYjg1N2JiMTBiODA4NWQ5MmNmNTE5MzJlODA2ZDViZWQ5NDYzYTEgcHkzaworNzgyOTAgYjc0OWE3OWE1MWNjYjRjYmE3MmQ0NzYxZTUzODVmNTRlMTNiZDhhNCBweTNrCis3ODI5MSAwZDJkNjYwNjEzMDNiZDViNWQwOWI2MjgyNGVjODhiNjVhOWM0NmQwIHJlbGVhc2UzMS1tYWludAorNzgyOTIgMTcyMGVlMDgzZWVlZjY0ZmMwOWFkM2VkYjk3MDlmMjM1MWMzZmQ5NyByZWxlYXNlMjYtbWFpbnQKKzc4MjkzIDZkNmJlNjVkMzg4MWZiNjIxYzYwODQwZWFkNGFlNTE0MGE3NDU1ZjkgcHkzay1jZGVjaW1hbAorNzgyOTYgOTZhNGFhMWYzMWMxMzY5MTAzNGYxNDZjMzQ5NGI5MDhlNWNkZjExMCBsZWdhY3ktdHJ1bmsKKzc4Mjk3IGFiNmZkOWU0NTQzNjIwNDIxY2Q5MzVkODhlNDYyYmVmYWJiYWZmYTcgbGVnYWN5LXRydW5rCis3ODI5OSA1ODFlMjFkN2ExOTI4NTdhNTVlODBiNGEyYzUzOGViNmU0MTc4NDgzIGxlZ2FjeS10cnVuaworNzgzMDAgY2MwZTY5YzhmMGMyMzcyOWY0NDM4ZjJlNDQwYTgyYTc2YjcwMmM5YSByZWxlYXNlMjYtbWFpbnQKKzc4MzAxIGY4ZGRmY2VkMmEzNDdhN2M3ODlhNmM4Y2M3MWI0OGUwYTFmZDZiYTUgcHkzaworNzgzMDIgMDM2OWJiYWE1ZDJkZmJmOWFhMWY3NWRlNTc0NjRmODAxMDA5MjQ4OCByZWxlYXNlMzEtbWFpbnQKKzc4MzAzIDNkZTliYWNhZDk1YmMyYmE0YzJkMTFhNTg2ZmE0NTdjZDJiNDUxNjAgbGVnYWN5LXRydW5rCis3ODMwNCA4Yjc0NTVlMDFhMTExNTBkN2M3MWJiNmE5MTVmOTc3NGU3NTNhNWQ1IHJlbGVhc2UyNi1tYWludAorNzgzMDUgZjg2MTJkNDEwZTJjNDE4YjI4ZWExOGRkZTdkZmE3NjgyY2JiNDU5NyBweTNrCis3ODMwNiBmMGFjZjIxMzhhOTY2YTdlM2VlN2Q5NmJjMDI1YTE5ZmMwODMyYzIwIHB5M2sKKzc4MzA3IDIwNDU0ZmIwYmU2ZWY3NzQ0ZGJlMWRhODEwOTg2OGVkOGM1Y2Y0MTUgcmVsZWFzZTMxLW1haW50Cis3ODMwOCBjMjU0ZTU0YWM4NTY0NmZkZGY5OTlkYTg5NTU3OTRlYWYzODY5YmY3IGxlZ2FjeS10cnVuaworNzgzMDkgYzFhNGYyN2FlOGZlODM2Njg4ZDdhZWU5MzA3OWUzMDcxZTU0MTQ0MiBweTNrCis3ODMxMCAxNWQ4ZWQ5NDhmYjU2MTFiNGFmNmVkMGQ1OWYxYzU3MTkyYmVjMWRhIHJlbGVhc2UzMS1tYWludAorNzgzMTEgOWVjZTNkZDFlOTAxMGQzMjZmYjkwNzI4ZGQ0MWYyMjM4Mjc1Nzg4ZSBweTNrCis3ODMxMiA1MGY4YmY2MTcwNmE0NjBhYmI2N2M1YTQwZDdkYmZiZjk4YjdjYjZmIGxlZ2FjeS10cnVuaworNzgzMTMgYzQ1ZWMzYjExYmJhOWVkODI0YWU3ZWI4YjM5ZWU3Y2FkYTU5NDcwYyByZWxlYXNlMjYtbWFpbnQKKzc4MzE0IDUyMjdhNTVlZDcxNDJiZDk5NTMxY2ZlZDZiMGQ4YWEzMGU4MmEyZDggcHkzaworNzgzMTUgYWU2NWM3ZDM1ZjI3YWEyYjhiODE3MDA2YTc3NGFlNjIyNWEyOGNiZCByZWxlYXNlMzEtbWFpbnQKKzc4MzE2IDM4ZjczMjgyZjAzODMwYjAyYjU0M2NmNzllMmZhMDI1Nzg2MGQ2ODYgcHkzaworNzgzMTcgNWQ3NzQxZTFlNjcyODZlMTM4ODFkNjhlODMyMDAzMGNkMmU0ZTQ2MSByZWxlYXNlMzEtbWFpbnQKKzc4MzE4IDIzMTE1MDE1ZTViOTZlNzQxYTg2MWJhNTJkODAwNDgxNmE4MTQ1ZGIgbGVnYWN5LXRydW5rCis3ODMxOSAzMWM3ZGVmOWJmNTFlNzhiY2FlYjBlMzUzMDE1NDc1ODc0YTc5MjUxIGxlZ2FjeS10cnVuaworNzgzMjAgMTMyZDQyMzQ4MjE2YzczZWRjZjY0NzRlMWFhOTFhOWFmYTM3OGYxOSBweTNrCis3ODMyMSAyZWIxMzY1OGY1NzNhOWJiNmVlZDA0NzQwMTQ5MjQxNjhkZTExMTZlIHJlbGVhc2UyNi1tYWludAorNzgzMjIgOGYyZDEwMDE0YzA4NDY0ZjkwNmEyZDkxNTQ1MTcyOWIyOWM1ZGExMyBweTNrCis3ODMyMyA3YTBjMzBlN2U0Y2FmMDQ2OWRlNWZjNTZmZTRhZGUyY2U1OTM4Yjk4IHJlbGVhc2UzMS1tYWludAorNzgzMjQgZDdjMzM3N2Y4YTdiNjc0MmY3NjAwZTMyNGY4NGZiYzE4NDlkMTRkYSByZWxlYXNlMjYtbWFpbnQKKzc4MzI1IGM4OGI2NjAyZjgyZDc1ZjZmMGRjMjI4YTQyNjRlNGFkZjlkOTg1ZWUgcHkzaworNzgzMjYgYTYwOGZjMzc4ZDkyMjFkNDQyMGExNWRlZDg3ZDNiNjAyNWM5ZTZjNiByZWxlYXNlMzEtbWFpbnQKKzc4MzI3IDQ5MDJlYTAyNTYzMDc5OTViYzk5ZDU0ZDEwNGNmMjIwMjUxYzhiYjQgbGVnYWN5LXRydW5rCis3ODMyOCA1MzJkYTg2OTczY2Q0YTFkOTZkMWVlZjUxN2YxZWQzOTNiZDdmYmQzIGxlZ2FjeS10cnVuaworNzgzMjkgZmY4NGUwODkzY2IxYWI2ZjdmNmQ0NDczNTViYjI4ZDdhZTI0OWE0ZSBsZWdhY3ktdHJ1bmsKKzc4MzMwIDk3OWFjMTdlYzgyM2QwNmY2NTRlZGNmMTJhZGJkYzUwNDk1OTFmZDIgcmVsZWFzZTI2LW1haW50Cis3ODMzMSA0MGNiMjIzM2Y3MjZmMWM2MGZjMjNlMTI3MzBlMGNkZjNiODVkOTEwIGxlZ2FjeS10cnVuaworNzgzMzIgZmQ5NDg4ODU0MDg4NzczY2M0NDI3ZTkzMjA5NDM3ZTIxNDFjMDcwNSBsZWdhY3ktdHJ1bmsKKzc4MzMzIDVjNDQ2NmIxNmQ2ZDU3NmUzMTUzZjNjZDQzZjRiNDA0OGQxNDAyMGYgcHkzaworNzgzMzQgNzNjZDgzNzA2YmM0NTQyZDM3ODhjMDJlNWY1OGJjNWI1ZmY5NGI5ZSByZWxlYXNlMzEtbWFpbnQKKzc4MzM1IDMzNTdiOGViYjI1OTVjMzM1MjRjNTRmOThlOTBkNmNiNzg2OWRkYTMgcHkzaworNzgzMzYgZWEwMmVjZTMyM2ZlMGU4NDQ0MTYzOTY3ZjkwMjI0ZTBkZTA4Yzc5NiBsZWdhY3ktdHJ1bmsKKzc4MzM3IGVmNzMyYzNkYjYzZGM1OWY4NDZjNWQ0ZjY1ODM0YWI0Y2Q5MzIyNDYgcHkzaworNzgzMzggYmQxM2VlZWRjM2IwM2NjMDM1YzM5NjUzYTE3ZWI4NGExNzMxZmQ1ZCBsZWdhY3ktdHJ1bmsKKzc4MzM5IDA0N2YxOTk3N2M0Mjg0MzZjMmFkY2VlOTJlODhlOTc3YzM3YzcxMjUgbGVnYWN5LXRydW5rCis3ODM0MCBiODNmOTcxNmYxMzViODY3Zjg5NzI0NTRlMDcxNmU1MjQxZmM5OTZjIHB5M2sKKzc4MzQxIGQyODhlNTQ5MWJjYWFiYzAxNmNkZjVjYjRhY2NmMTZiMTk4NjEzMDQgcmVsZWFzZTMxLW1haW50Cis3ODM0MiA3ZmIwMTNmZjAxNGYxOTVlODUxZGI1ODk3OTBkNTYzZmE1OWU1YjU5IHJlbGVhc2UyNi1tYWludAorNzgzNDMgNWZjYjBlMGJlODllOWIxMDEyMTMxZTdiNWQwOThlM2FmMjY5YjE0OCBsZWdhY3ktdHJ1bmsKKzc4MzQ0IDg3ZjFiOGZmYzI4ZDc1ZGUxNjUzNjA4MmVkOTNlYjViNjRhNjQ3YTMgcmVsZWFzZTI2LW1haW50Cis3ODM0NSA3N2Q4NzdkMGJmMDZkOTNlZDQzNTNiMzkyOTk0NDNlMDU1YWYxMDFmIGxlZ2FjeS10cnVuaworNzgzNDYgMzFjYjYxZTBmMmJjMDA4NjZlY2Q2MTgyMDE3NDBiNTg5NzljYTk3MCBsZWdhY3ktdHJ1bmsKKzc4MzQ3IDliNTgwNmEwMDhlNzE0ZWMyZWVkNjNjZGNiNjg3ZjdmZmExYzY2ZjQgcHkzaworNzgzNDggOWQ1NWIxN2EzYzY0N2FmMjUxNmRhYjg3NTI2M2E1NGEyY2JlMmEwZiBsZWdhY3ktdHJ1bmsKKzc4MzQ5IDE1Mjg2ZDlmMWE4ZTM4MDMyNWM3MDlhZmJlYjUyZDE0NWYyNzhiZmUgbGVnYWN5LXRydW5rCis3ODM1MCA4YzBlNDg5NmRiZmM1MjQ1NjI1OTBhMDMxM2NlZjM1N2MyODcyNDNmIHB5M2sKKzc4MzUxIGE0YzQ1ZjhlNzBhYWUxZjM5OTMzMDQwMzgwMzAxNDJiY2Q2MjQwOGYgbGVnYWN5LXRydW5rCis3ODM1MiA4ZThjNDVhYjQ0ZGNmN2Y3ZWE3MjgyZmE5NjIxNmYwMDZlMWJhNWY3IHJlbGVhc2UzMS1tYWludAorNzgzNTMgNTc2N2Q5MjQ5ZjU4OTIzZTMzMzM1Njc1ODUxZDdkZjkxYTg3MzU0OCByZWxlYXNlMzEtbWFpbnQKKzc4MzU0IDBiZDE3MzZlMzI5NzNkNjYxODA2NmQ1MmQwYTAzNDJiNzY3ZDlmMGEgbGVnYWN5LXRydW5rCis3ODM1NSBmYzRiMDA1Y2JkMjhmNDIzMDlmMDU1YWZhYWUyM2UzYzc2MDBhZDgzIHJlbGVhc2UyNi1tYWludAorNzgzNTYgZmMyODZmZTQ2NjEyMzMwY2IyYTRhYWZkODJkNzJjNjQ0MzRmMzRkNiByZWxlYXNlMjYtbWFpbnQKKzc4MzU3IGE1ZmFhYWI5OTVjNDJjOWE2MzMxNDYzNTM0ZGQ0MTk1NzFlZTdjZTQgcHkzaworNzgzNTggYjRjNmI3Njk0ZjBjMmVjODMxOTlmYTQ5OWE1M2ZlYTk4MzJlYzM2MyByZWxlYXNlMzEtbWFpbnQKKzc4MzU5IGFjMzZlYzhiYWU2YzY1MDY4ODYwNmI5MmRmNDQxMWQ3MmMwNTIyOTUgbGVnYWN5LXRydW5rCis3ODM2MCA0NjBjZTllODQ4MzgzZTVmNGZmZTY4MmUyYzE0YjJkMWUwNWFjNjM1IGxlZ2FjeS10cnVuaworNzgzNjEgNGExMTgxZWM0MDM2NGZmYTU0YTc5Njc2NTQzZWY4ZTlhZWU1ODUzMSByZWxlYXNlMjYtbWFpbnQKKzc4MzYyIGExZDA3OGI4ODI0NzJhNDI0OTE2NDBjYTUzYmY0ZDlkNmI5YWIyY2EgcHkzaworNzgzNjMgMTM5YzEwNDhmMzFiZDUwMGE4ODYxZjgzNDhiNDE4Y2JjMjIyZjM2OSByZWxlYXNlMzEtbWFpbnQKKzc4MzY0IGI1MmUzZmYwYTRjOGIyM2ViNjhjYjc0ZTUwNGJhYzI5OTRlMWU1OGUgbGVnYWN5LXRydW5rCis3ODM2NSA4YzkzMGU0ZDUxYmQyOTBlMjAxN2M0OTJiYWQxNmZmN2E5OWYxNTg2IHJlbGVhc2UyNi1tYWludAorNzgzNjYgZGY1NmJhMWNiMGFmMjgyNThhOGI4ODlhNzVlZGE3MGQ4NzM1ZTMzZiBweTNrCis3ODM2NyA5MjY3MGNjMWE2YmM0MDJkZDExYWQ1MTAyYWNkMTgyOGZjMTg2YTgyIGxlZ2FjeS10cnVuaworNzgzNjggZmVjNTVmNTI3NzVjZTc3NTE4NTNlMjQ2ZDIxZTM0MDQ5NWY5YjEwOCByZWxlYXNlMjYtbWFpbnQKKzc4MzY5IGJmOGQ5ZjAzNTljMTIyNjAzZWI2NzkzZmI1NjM4YWQyOTg3NmZmZWEgcHkzaworNzgzNzAgMjQzY2M4MGQ0YTA2N2I0OTM0OTFmYTlmMzEyN2I3OTkyOWEwNjMzMiByZWxlYXNlMzEtbWFpbnQKKzc4MzcxIDc2YWM3YTFkNzFiNzVlYWU2ZWE3NTE1ZWI4NzY5MTI1ZGE0OWEzODcgcmVsZWFzZTMxLW1haW50Cis3ODM3MiA4YTU2YjgyYzEyODQ1MjkxMWQ1YmRiMDNiYWVlZTcxMTE0OWZmOTU5IGxlZ2FjeS10cnVuaworNzgzNzMgZGEzNzNkYWMyNDE1ZTMyYmMyNWZlM2M5ZmMzZWYxYTIzNDljMjU3YiBsZWdhY3ktdHJ1bmsKKzc4Mzc0IDg5YmMyOGYyMDAyMWZiNDYwMmE0ZGVjNzM0NTBmMzlhNWUwNjc5ZjkgcmVsZWFzZTI2LW1haW50Cis3ODM3NSA4NjkwZDA4ZDk1M2Y5N2U1NThjZjE3YWZiZTk0MzQ3MmE2MGNlNGIwIHB5M2sKKzc4Mzc2IDBmNTRkNDMyNzM0Yzc2NjU4ODM4Yzg1YWUwMmM4MjM1MWFiOGUyMDMgcmVsZWFzZTMxLW1haW50Cis3ODM3NyAxZGQxZWFkYTQ2YzJkNzBkZWFkNGVmZjIzNDIzMGFjNzE5YmQ1ODllIGxlZ2FjeS10cnVuaworNzgzNzggYmQ0YzkxNmYwZWZhNWQxZWY2N2QzNzJlODI0OTNmYjQ1NjlhZTFmZCBsZWdhY3ktdHJ1bmsKKzc4Mzc5IDllMWNhMWMxMTkwMjFjNDgxMmJlNDE4NzE2Yjc3YmNlMmVkYmM5ZGYgbGVnYWN5LXRydW5rCis3ODM4MCBiMTc4MTRiZTA1ZjFjMWY1YTY3MjU4ZDFmM2Y4NTMzNjJkMDg1NDA0IGxlZ2FjeS10cnVuaworNzgzODEgZTJhNDQ0NWIwZTdjMzAwZDBhNzIwMmVhOTYxNGIzNTk5NGEzNGRmYyByZWxlYXNlMjYtbWFpbnQKKzc4MzgyIDlmZDgwM2FiZTE0MWM5NDY4YjhmYTY3ZWMzYjkzYTg0ZDc4MjVjYjYgcHkzaworNzgzODMgYjkwOGE0MGYwMDIwNTA5MTMyYzFkNGJhZjE0YjJkNzA2YjM3Mzc1MSByZWxlYXNlMzEtbWFpbnQKKzc4Mzg0IGRkYTUxNjVhMjM3NGU3ZDg2NjE4Y2Q3NzE0NDg4MjE4YTlkOGRkYjYgbGVnYWN5LXRydW5rCis3ODM4NSAyODc0NTBiMmQ3YTc4ZDVkMGQzMzIzNzI5NDY5NDBmZDk2YzFiYjQwIGxlZ2FjeS10cnVuaworNzgzODYgZWE2OGQ3NTUyOWIxMWNmY2RjMTdlNzNiMGFlYTg5MDRmZjBkYWM0YiBsZWdhY3ktdHJ1bmsKKzc4Mzg4IDc3ZGU3YjFiY2Q1OWRhN2U2NzY4ZGQ4MDRiNDlmYmEzNGMwZGVkOTIgcHkzaworNzgzODkgYWIxMDc5M2E0NmE3MDFjMmU4M2IzYzAzNGJmZjk4NTQ5NjQ4MjU0OCBweTNrCis3ODM5MCAxMjQ5NzA3MmY5ZGFjZTIwY2U3YjJiYjVjY2YwODk0NzNmNjM5YTMwIHJlbGVhc2UzMS1tYWludAorNzgzOTEgZmNmMjEyYTkzZGQ0MmYwNGYzZTBmZDdjMmM5NTBhZDdhNjRjZjViNyByZWxlYXNlMjYtbWFpbnQKKzc4MzkyIDMyYjIxMDYxZWU5ZmZmMjU0YzMyMjI0Y2I2ZjJjNTlkNWRjZmU3MzQgbGVnYWN5LXRydW5rCis3ODM5MyBkZjU3MTljMjk4ZGIyZDhmYmJiOTE5MzYwZWJlN2RhYjI3NGM5ZGZlIGxlZ2FjeS10cnVuaworNzgzOTQgNzc4MDQ4MmE2NGRhNjlmNjE2NmY5YmNkN2I5NDg3YTAyY2ExMTcxYyByZWxlYXNlMjYtbWFpbnQKKzc4Mzk1IDQ0ZWU0ZjI3MWQ3YWViZjhhZjIwZjBiZDg5ZjQ3MTk2NzU2Mzg5MWIgcHkzaworNzgzOTcgNzk4ZTBkMGM3MjQ2ZGRiMjA3YzI3NWQyZGE5YTVkM2U1ODhhMWEzYSBweTNrCis3ODM5OSA0MTBjMWM4MGQ2NjNhYjNiOWRlOTkzZmM2MjJmMjRjMmM2Yzg2NTA2IGxlZ2FjeS10cnVuaworNzg0MDAgOGQzZmYyZmJiZTRiNGE0OWExYjNlZWQxOWViNWI1NDBmYTcwM2Q3NCBweTNrCis3ODQwMSA2OTZmNzY3ZTc3ZmY4Yjk5YzI2MjY1Mzk3Zjg3MTczM2JjZmYwNGRhIHJlbGVhc2UzMS1tYWludAorNzg0MDIgNjc4MjU2ZTgwZmM2MDFkM2IzNmVjNjMxMjZjMjFmNzZjMzQxOWNkMiByZWxlYXNlMjYtbWFpbnQKKzc4NDAzIGU4NTQxMmY1NDRjODNlMjMzZjJhYmE5MDlkNDdkNTRiYWRkOTg1YTkgbGVnYWN5LXRydW5rCis3ODQwNCA5NTRiOGUyNzY2NzQ2MzIxZWY3NGM2YjMxMTBlNWYzNTZlZGI2NmE1IHJlbGVhc2UyNi1tYWludAorNzg0MDUgZTgwMzI3Y2I2ODQ2ODFkNGY1YzQ2NjAwYWZhMzg0OTZmODEzNGM3ZSBweTNrCis3ODQwNiAxMDdjNGM2ZWM2NDk1MWZhODg3MGU1OTAxYjA2NDJlOGJkMTFmMTcyIHJlbGVhc2UzMS1tYWludAorNzg0MDggYTVmNmRkMTg5MjgyZjAxZGE2NDlmZDdhOWZjOTIyMjFiNGE2ZGFhMCBsZWdhY3ktdHJ1bmsKKzc4NDA5IGE5YTQzODEwMGY4ZDRiMmNhYjgwNWUzNzNhNDQzNTcyMjQxZDIzMjggcmVsZWFzZTI2LW1haW50Cis3ODQxMCBhOTk0NWFmY2M0ZWQ0ZDcyYmNiZGU2YmQ5YzFlZWEwZDhlNjRjM2NmIHB5M2sKKzc4NDExIDE3NzE5ZDM5NWYxZTZkZTQ3ZjBmODdhODlmMWUwNmE0MmY3NDMxNjAgcmVsZWFzZTMxLW1haW50Cis3ODQxMiBjNDY1ZDIxNDM4NzRkY2FmNWZjOWU1YjcyOGIwYzVjMDc3YzQ5N2M0IGxlZ2FjeS10cnVuaworNzg0MTMgMDc5NWRkN2IyYzlkMWIyNDAxMmM5YmNkN2UzNjI4ODU0Mzg0NTk1ZSByZWxlYXNlMjYtbWFpbnQKKzc4NDE0IDgyMGVhZjkzODgwNDViY2QzMjM5ZWNmNGI5NDA1NDMyYjc0ZjdlMTUgcHkzaworNzg0MTUgNGY3NTAzYWVlYTg1ZmM4NWMwNTNiNTgyYWYxOGI0OGNlODA5NDIzNiBsZWdhY3ktdHJ1bmsKKzc4NDE2IDllYmJjYjdhMzk4OTcwY2M5ZGRhNWJkOWNlOGEwOTlhYTBkMjJiMWMgbGVnYWN5LXRydW5rCis3ODQxNyA0NTIxMmEyNDdlZDRkNWQ0YWM0OTAwMDYzYzY4MjViZTVlMmM0YjY0IGxlZ2FjeS10cnVuaworNzg0MTggMmI4MmIxNmE2Mzc1NmM0Njk1YWM5YzY2ZTg3YzNlM2IyMjI1ZTBhNiBsZWdhY3ktdHJ1bmsKKzc4NDE5IDVhYzM0OWMzMjJmZDNmZmM3NTdmYzY0YTRhYjY4YzNjYzg1MTk4OWQgcmVsZWFzZTI2LW1haW50Cis3ODQyMCA1OWVjZWExMzc2OWIzOTg4MDNiMmViOGExN2Q2Y2ZmOTc4MDRmMWU0IHB5M2sKKzc4NDIxIGM4ZWY5MDZiMTFiODgzMjAxN2E1NWEyMzcyODBhNzM2MDhhOGUyOTkgcmVsZWFzZTMxLW1haW50Cis3ODQyMiA1NmY0ZDZjNTE0NTAxNmU1YTVmZjJkYzlhMGY3N2E5NzA1OWI4YjZjIGxlZ2FjeS10cnVuaworNzg0MjMgOTIyNWI0ZjhjYjFlNzNjODExNWFjNWRkYmNmN2I1MzA2ZmFmYjNkNSByZWxlYXNlMjYtbWFpbnQKKzc4NDI0IGFmNTg3YjRiNTkwOTE5NGYzM2UxMmU2MzI5ZTI4MjczYmU3OWY2NmQgbGVnYWN5LXRydW5rCis3ODQyNSBjMGZhMTQ1MzcwZTQxZjQxMDI4NDk1MTExODk5ZGIzNDVjNzFlMmIzIHJlbGVhc2UyNi1tYWludAorNzg0MjYgM2Q0ZGIxZjViM2IxNTVkNWJmNzQ3ZjFkZDJmNTg4MDQxY2U4NDViMCBweTNrCis3ODQyNyBlNzA5ZjZmNmY0NWNhOWNkOWZkZTJmYjlmZTU4YmI3MzYxNGQ3MWJjIHB5M2sKKzc4NDI4IDVmOTkzOWFmMmY3MWFjZmRjZWZlNTZjNmI0MjBkZTNhMDI2MGZlZWUgcmVsZWFzZTMxLW1haW50Cis3ODQyOSBhZjllNmVkYmIwZmY3OTZhYmZhNTU2MjhiZDg3YWMwNzFmYTcyNTg4IHJlbGVhc2UzMS1tYWludAorNzg0MzAgZTQ3YTY0ZjljYzc3YmZlYWNlZjAwNjNkNjFhNDU2ZjRlNmI4OTc0MCBsZWdhY3ktdHJ1bmsKKzc4NDMxIDMxODEyNTVlMjhjOTlmOTZkODMzM2Q1NzA2ZDZlZGI2Y2Q3N2NkMTggbGVnYWN5LXRydW5rCis3ODQzMiBjOTUwZmFjNzQxMWJhNjQwYzkzYTFkNGIwYzZiMjQzN2RiOTEzYjU0IHJlbGVhc2UyNi1tYWludAorNzg0MzMgMjg3ODhmNzJkOGMwZmU1ZGE1Yzk2NTU3ZmM5NWFmNjBlOTE2MjA5ZiBweTNrCis3ODQzNCA5NGUyYjY5MDI5Njk2ZDBhMGEwMjA5OWQ4ODI5MDRmNjA1ZjkwOGE5IHJlbGVhc2UzMS1tYWludAorNzg0MzUgYjdkZTdjNWFmYTA0MjkzYzcxOTNhNTAzYTFlNzRkMmExMmIyMWE4MiBweTNrCis3ODQzNiAxOWNmNTI2YmVmYTQ2OWI1OWNiZmNmOWFmMWEwMGMxZTYxMzFmOTA4IHJlbGVhc2UzMS1tYWludAorNzg0MzcgMTIyMjFiNmNjOGNkYzdkMDg4YWNlZjRmY2Q4NWRjMTM2MzRlY2FkNyBweTNrCis3ODQzOCBmNWVhMTI2NGI3YWUxNzg3ZjNhMGE5MjAxMGUyYTFlMGJlMGY5YjVhIHJlbGVhc2UzMS1tYWludAorNzg0NDAgMzgzZjQwOTc1Yzc1YzNjMzFjZWU5YjQxYzMzYTg2ZTBjZDE1YzA2NiBsZWdhY3ktdHJ1bmsKKzc4NDQxIGJkODM1N2E5MWQzZTYzOTI2MWJhMWQxMWQyMmI4NDA4MmEwODBmMDggcmVsZWFzZTI2LW1haW50Cis3ODQ0MiA4NWJmODQ0NjlhMzJjOWRlNDZlNDlmYzlmZDM4NGRmMGI4YjNlMDE0IHB5M2sKKzc4NDQzIDIxODMyNzdjYmFiMTg3NjZkN2FiMTMzOGYyNjQyODkyYWM3ZDNlMTggcmVsZWFzZTMxLW1haW50Cis3ODQ0NCBhY2NhYjRiYWI2MzRjZDYxYzZjMzA4NjY1Mzg5ZWY1ZDVjMGI1YzVkIGxlZ2FjeS10cnVuaworNzg0NDUgZWNmZTljZmFhMzM0NzMxMTM0YTk1N2FlNTczNTA3MDJiZmRiYzE3OCByZWxlYXNlMjYtbWFpbnQKKzc4NDQ2IDg5YTUwYTExODIwMTkxMmRlN2U2ODdkNzkyNzQwZDFjYjk4ODUzNjggcHkzaworNzg0NDcgNWYwNGUwY2Q4MTcxNzkwM2I2MzAyNjNkMDY2N2JkZDEzMWJjNmU1YSByZWxlYXNlMzEtbWFpbnQKKzc4NDQ5IDZjMTRjMjc5MjViOWU1ODNkNzdlOWI0NDFkNDAyYTFlMTQ1Y2E4ODQgbGVnYWN5LXRydW5rCis3ODQ1MCBhYWNjMGQ0OGQ0NGQ3ZTEwNWI2Y2Y4ODYzNmMyZGZiMDcwOWMwZDE3IHJlbGVhc2UyNi1tYWludAorNzg0NTEgODU1M2Q0MmM5NGIxYTlmY2FlY2Q3NWYwYTRiMzc5OGUxNDE0YWI1NSBweTNrCis3ODQ1NCAxYTYyZjQ4OWE2OGEwYTkzNjYyOThkY2RkNzI1NTY4YTE5NmIwNTc4IGxlZ2FjeS10cnVuaworNzg0NTUgNDc4MGUwMzc3ZTEwZjY4ZDFiMzhmZDUyNTBhNDkyOGIyMzg4NTA2ZCBweTNrCis3ODQ1NiBlMWJjMDAyMmIyM2IyZDkxMGEyM2I4NWYzZjY2YmNhMmZkNjg0ZTEwIHB5M2sKKzc4NDU3IDk1YjNiYjZiOWZhYWI5YzQ4Zjc3ZTU5OGQxNjBlNDM1YzU0YjdjM2MgbGVnYWN5LXRydW5rCis3ODQ1OCAzYWI3NDA5NDA1ZmEzYTNiOTJiZGRiN2ViMTcxMmJiMjM1MmJhZjMyIHJlbGVhc2UyNi1tYWludAorNzg0NTkgYzEyYjk1NTM1MDk0ODgzOWU2NzIwZWNkMDk5ZDgwZWRlZjVhMTIyOCBweTNrCis3ODQ2MCAwODNjOGU1MzU0YWRiMzNiNzk2M2JkMDM5NDZmNDY3YzIzZTZjYTc4IHJlbGVhc2UzMS1tYWludAorNzg0NjEgN2UzYzQ3MzU0ZGEzNDI2ZTdiY2ZmMjNmMGJkYzJhZmVmNWQxZDJkYiBsZWdhY3ktdHJ1bmsKKzc4NDYyIDdkMzQzZDViZmIzZjFjZGZjODM5NjczY2JmMjUzMDEwNTAzMWFlZjIgcHkzaworNzg0NjMgYWQyZjVlYWNkMmEwMzZkNGU4NGFiNDA5ZDI5ODRjYTUzOTNlOWI5YSBsZWdhY3ktdHJ1bmsKKzc4NDY0IDlhYzM1MjE1YWY0YThjOTdjMmJlMmQ5NzQzMWM3OGJhOTIxYjcxMTggcHkzaworNzg0NjUgM2RjZGNhMDA3MDk1NTY2ZTQyNjYxNzYzNzc3MWQ4MmM3OWM0MzliZCBsZWdhY3ktdHJ1bmsKKzc4NDY2IDI1MmYxZTIzZTk4NjAzMTY4NGRjODI2YzBiMzQyZTM2YzMyZTU0M2UgcmVsZWFzZTI2LW1haW50Cis3ODQ2NyA4YjIwNDhiY2EzM2MxZDQzZTE5YWI0YzdmMTYzN2UwZGU3NjZiNzY2IGxlZ2FjeS10cnVuaworNzg0NjggNTM1ZTIxNTVhZjFhODJlMTAzNGFjODE1MDliMDI1MWQ0ZjNiOWQxNCBsZWdhY3ktdHJ1bmsKKzc4NDY5IGRjMWNkOGVkZmE0NjU3MmUxZTY5MTA0Y2MxODE2MDMxMzIxZmRmYTYgcHkzaworNzg0NzAgNjA0M2QwYmQ4YmY3MGE1NzRkODI3ZTY1NGVjNjQ1ZWQ1ZGI1NDk5NSBweTNrCis3ODQ3MSA2MmJhYmY0NTYwMDViNjdjZGRlZDYyMDgyZGU3NWE3MWU3MTQ3NWQwIHJlbGVhc2UyNi1tYWludAorNzg0NzIgOTQ4NmZmNDAyYWNjMzg4MTk0ZDI4NzVkNGZhZjBkZjI2ZTVmM2FhYyByZWxlYXNlMjYtbWFpbnQKKzc4NDczIDMzM2ZlOGQ3OTMyOThiYzE2ZGNiYzE2YjA4ZjVjMTRjY2JiYmE0MDEgcHkzaworNzg0NzQgNzg3NGQxM2M5YWE3NjdhNzg4MTBiNDBkYTUzYmZmMjI1ZDY0NTA5YiByZWxlYXNlMzEtbWFpbnQKKzc4NDc1IDhlNjQ2MTVhNGM4NjM1ZmFlZDRjNzRjNWRiY2M0YWU3YjEyZTIxNjcgcmVsZWFzZTMxLW1haW50Cis3ODQ3NiAyZjJkMjI1Nzc3NDI4MDZiZTYxNmY5NmE2NzQwNTU4ZWM5MTdlOTRkIHB5M2sKKzc4NDc3IDVlMmE1ODQzMDdiYTk4N2M4YzExMTI0MmQ2OWM3ZmM2YjU0ZDk3MzYgcmVsZWFzZTMxLW1haW50Cis3ODQ3OCAyMzFjODhlZTg4ODVjMTAzMGU5NjA2ZjI3NjE4OGFhZDI2NTVhZDE3IHB5M2sKKzc4NDc5IDMyNzBiYTFiZWM3NmEzODliMDczYzMxMTllZjg0NDgwYWI1OTVhYzAgcmVsZWFzZTI2LW1haW50Cis3ODQ4MCAyYjY4ZTMxNDJkMTdlODMzZjYxNmYxNTE3OTljNTNlYzk1ZTI2MWQ0IHB5M2sKKzc4NDgxIDU2ZjUzN2JlZGFmZWQ5ZmY3ZGE4NWE3YTkzYTQ4OGQ1MzY4OGI4NzAgcHkzaworNzg0ODIgNDA3MGY0Y2Y4Yzc3MmNkNTM5ZTJiNjdlMWY2NDEyYzQyMmYyNzY1ZSBsZWdhY3ktdHJ1bmsKKzc4NDgzIDQwNjZiNDVkMjhhYjI4YmQ2ZTI1ZGY2OTNjNWEzY2ZhMmM5MTgzNDkgcmVsZWFzZTI2LW1haW50Cis3ODQ4NCBlNTQwMzIzZDg3YThiMjAyMmEzZTVkYzZlNzdkODE4MDc4NTExZjcyIHB5M2sKKzc4NDg1IDBkNTkwZTVlODQwYzYzNWIyYjVmZTcwMWZiYTI5ZDE2NDAyZmFmZjkgcmVsZWFzZTMxLW1haW50Cis3ODQ4NiBhYmE5ZjY1NDFhZDY5ODNiNTA0OWM3Mzk1OGYwOGM1MDAzZDEyMGRhIGxlZ2FjeS10cnVuaworNzg0ODcgMmEwYWM5YmRlOTlhZmQwMjdjM2Q3YzJhZGM4Njk4YzY0NzEyNTEyYyBweTNrCis3ODQ4OCBkMGMyYjljMmJhYmIwZWQ5NjY4OTdkYmMxMDU4ZGMzYzA1MGMyYWQ1IGxlZ2FjeS10cnVuaworNzg0ODkgMGI0ODQ2NDg5MDU1YWNlNGZiNjczNzgyYTg5ZjJkZDQyNTM1MTViZSBsZWdhY3ktdHJ1bmsKKzc4NDkwIGYxMzljYTAzNGMzYjc1MDM4MDRlYTU2YTA1Y2U5NzgzZmFmMzFjYjcgcmVsZWFzZTI2LW1haW50Cis3ODQ5MSBiZjE0NmYxMDNlZTY3M2YyYzI3ODdhNDdiYTMwNWM2NDcyZjRlMDdmIHB5M2sKKzc4NDkyIDAxOTRkOGE2YjFlZmZjNDIwNjY2NDc3ZWJlNzA1YzQ1ZTlhZGE1MzIgcmVsZWFzZTMxLW1haW50Cis3ODQ5MyBhZTA5YWIyNjg2ZWQwNDk0NjEyZDQ4YmU4YjA1YTgyZDAwYWRiYzI2IHB5M2sKKzc4NDk0IDg5MWU3OWQ3NzBkODhlNjdiMDRiNzZiNWE0OGMwNDk0MTE0NjI4YTkgcmVsZWFzZTI2LW1haW50Cis3ODQ5NSA4MTUwOTJhNWU1YzEyOTgzYTgzNmE2NzYxNGNhYTBmYjUwOWQ0Nzg2IHJlbGVhc2UzMS1tYWludAorNzg0OTYgZDYyYmRkODRkZjBhM2JkYTVlZTIzYTk5MjE4YmU1ZTYwNTFjNTU3YSBsZWdhY3ktdHJ1bmsKKzc4NDk3IDc3NTkzN2EzNGY5NjYyYjM4ODU0N2YxN2ExMzY3YzlkOWJkYjgxN2YgbGVnYWN5LXRydW5rCis3ODQ5OCA4NjQwMmZhMGM1Yjg4ZWNmOWVjMDUzNDgzMmEyZjE4NjVhNWY3YmZiIHJlbGVhc2UyNi1tYWludAorNzg0OTkgNTYwZjNmNGVlOWE3ZDgxOWU3YTYzY2RkY2YzOTk4ZWY5N2ExOTc1MSBweTNrCis3ODUwMCA1NjIwNWY1NDdiNzQ2MDU5YzU3ODdiMDM1NDk3MzliMzAyNzQxYWZjIHB5M2sKKzc4NTAyIDg4NzEzYzBlZDAxMDI1YTgwNDU0NGZhZTEyMDJlOGQ5ZjY3MWIxNDcgcmVsZWFzZTMxLW1haW50Cis3ODUwNSA4MWQ2ODMzYzYyNzhiZWZkMDEyMzBmNWY4ZjUyNDJmODE1MWZhYjQzIHB5M2sKKzc4NTA2IDg4ZjE0N2QyNjM3MjYxZjYzMzc1M2RiMDhmNjJlYzIxYzM3Y2RkNzIgcHkzaworNzg1MDcgYTllMWYxZDM0Yzk2NzFiYmVlMTVhY2U0YzkxMmIwM2M1MjI1ODQyOSByZWxlYXNlMzEtbWFpbnQKKzc4NTA4IDY3OWY1MmI4YWVmNGM2ZDJmNjlkMjliMGQ0YTA0ZmZhNGE2ZDllMzMgbGVnYWN5LXRydW5rCis3ODUwOSA4MWRjYzBjODQ1ZGZiNjY4ZWFjMDE4OGM1YzFmNjk3NzIzMTYwMjFjIGxlZ2FjeS10cnVuaworNzg1MTAgMDFjNThjZWY4MmQ0OGE5YThhYjE2MjdlY2Y3MjE2NDMwN2UxOTdjOCBweTNrCis3ODUxMSA1ZDlmM2FmYmM0ZTRiYzBjNTEzZWU2YTE1MTY3MzhmNTNlNGExM2IzIGxlZ2FjeS10cnVuaworNzg1MTIgMTNmZjlmZGI4NDMxYjcyOTNmMzFiZGE0YjgxN2M2YjM3M2U2ZDc5MyByZWxlYXNlMjYtbWFpbnQKKzc4NTEzIGYzNzg2M2E3ZWQ2NzdhODcxMzJlNzliOGQwNjAwMDgxZDBiMTM0ZmEgcHkzaworNzg1MTQgMjA4MGFiODgwYTgwZWQwYmFmZWNmMDEyNzk4YjVmMDE2Y2U1MWI5MSByZWxlYXNlMzEtbWFpbnQKKzc4NTE1IDc5OWJjNDk2NGExZDkzMDJkNmNhNzQxYTUxMjE4NTZjMzFkZDM1ZGMgbGVnYWN5LXRydW5rCis3ODUxNiA3NTA4MDI3NTkyMWI4ZTg2YjU0NTk3NzY1MTkyM2I2OWRhOTg0YTQ2IGxlZ2FjeS10cnVuaworNzg1MTcgZWFiZmE3NzhiMDc2YjYwZTg1NWEyMDZlMTExZGVlNDM0NTYwODJkOSBsZWdhY3ktdHJ1bmsKKzc4NTE4IDJjZGVjODQ4Yjc0YzYxNDAxMjZkMTQ3YWVhY2RhY2YyY2IwYzhhM2MgcmVsZWFzZTI2LW1haW50Cis3ODUxOSA5OGU5YzRmZmQzNDNhZjFjZWM1MDQ2ZGQwZTg1ZGNkMTdlYzg5ZTkyIHB5M2sKKzc4NTIwIDllODExM2U3NmFkYmYwMTQ1NGNkYWYwYmMzNTQzNjU0YWI4YjdlOTMgcmVsZWFzZTMxLW1haW50Cis3ODUyMSA4ZTNkMDNiODA5MGJjYjIxZGFjZWNkMWQ5ZmZiM2U1MjA4MGI0M2YzIHJlbGVhc2UzMS1tYWludAorNzg1MjIgMWM2ZmM3MGY0OWQxYWJlZWY5MTY0OGQ0MjlhZTQ4NTYzZWEyYzBkNCBsZWdhY3ktdHJ1bmsKKzc4NTIzIDZlNjY0YmNjOTU4ZDYwZjIxZTc4ZGNmMTBmODQwZmQzNWM3MzEwMTggbGVnYWN5LXRydW5rCis3ODUyNCA1NTc3ODg1NWNkMjVhOWFlOGZiNjY3NWU5ZjhjMjkyN2RiOTg5ZjVkIHB5M2sKKzc4NTI1IDEyNDY5ZjIwNjU2YmVlMDU3OTUxMGU4N2NmZWI5ZWU0ODM3ZjY5M2QgcmVsZWFzZTI2LW1haW50Cis3ODUyNiAxZjE1ODIzOGZhNzY0ZDcwMGFjOWZjZGU3NDhiMGVhNGE3YjM0ZjMwIHJlbGVhc2UzMS1tYWludAorNzg1MjcgNGFmYzUwZDE1NTQ0NWQwMWQyYzkzZDZjYTg2Y2VmYzYzOWI3MDJmMyBsZWdhY3ktdHJ1bmsKKzc4NTI4IGUxYjcwYzZkZjllNzczZGZkNzAyOTFiOGRkNWVjMWMxMGNjZjQzMWEgbGVnYWN5LXRydW5rCis3ODUyOSA5YjRlMGNkNzgxN2FkYTFlMmYzMTMzNDk3ZTdkMjAxZDZkOGRjZTFlIHB5M2sKKzc4NTMwIDM3MGUxYTFjMjM4NjlkZjgxOWQzMWI0NGFhOWYzMmRmMjI4NDhmOTggcHkzaworNzg1MzEgMDc3ZjJiOGIzZTU3MjkwOTMzZGQ5MmJjZTRiNTBmMDMyMDI3NjI0NyBsZWdhY3ktdHJ1bmsKKzc4NTMyIDg1NGIzNGEwNjg5NmZkNmU0N2ExNmU4ZGUzZTRjMjhmMGMzMzQ0OWEgbGVnYWN5LXRydW5rCis3ODUzMyA5MjRjYTI5NWIxNDYwMDAyNjMwYjBhMzdkMWYwMmU4M2EwMjc5YmI2IHB5M2sKKzc4NTM0IGQxYzYyODgyYzczYmQwZGM0ZmYyYTE1NjQxZGNkMzAzMDI3ZDllODggcmVsZWFzZTMxLW1haW50Cis3ODUzNSBmNTNmZTMzZTAzZWExYjQ5YmY3Njk2YmEyNGM5ZTMzYWRiY2U2YjA1IHJlbGVhc2UyNi1tYWludAorNzg1MzYgYzQ1ODA1YmEzMjNmN2ZhYTlhYTE3MDIzODdiMGUxZTQyM2Q4MTJlNCBsZWdhY3ktdHJ1bmsKKzc4NTM3IDk0MWUxYmYwNGY1NTMyZTEyZjBmZmM5MDI3ZGJmMGYzYjUyNmU2YzcgcmVsZWFzZTI2LW1haW50Cis3ODUzOCBmMDI4M2JiNjIzNjE0YWQ5NTJhZmFhN2NlY2QzYzlmNmIyM2EzMDc0IHB5M2sKKzc4NTM5IDc4M2YwOWIwODcwNmVhMzBlMjBjNWYwZTQ2MzY2YTJiMjM4ODE3MmYgcmVsZWFzZTMxLW1haW50Cis3ODU0MCAwMjY1Y2RjOGQ1YmIwY2ViYjRkOTFjYzQ5MzI2NzQ4NGUxYTc0NGMyIHJlbGVhc2UyNi1tYWludAorNzg1NDEgOGQ0OGY5YjU5Njg5YmE0Njk4MjY1NTdhOGRkZDk4NmJkNGNkZTNmNSBweTNrCis3ODU0MiA5YjcyMjc3ZDZiMzBhN2MwOGM5ZDZkMGI2YmQyZjljMTQyNTEzODBlIHJlbGVhc2UzMS1tYWludAorNzg1NDMgZDVmNTBhZTRmMWY3OGUxOTlmMTM3MzkxYWRmNDhjN2VmMmJiODM4YiByZWxlYXNlMjYtbWFpbnQKKzc4NTQ0IGY1YmFjNDczNzA2OWE0MTNlODkyZDdhNTEwNzg5NWRjMWQ2YjFkYjIgbGVnYWN5LXRydW5rCis3ODU0NSA2ZmFmYjY0ZWMzMjgwOGQyMzlkZDVkMGM1MGY1NmU2ZDQ3NzcyMzkxIHB5M2sKKzc4NTQ2IDU4OTAwNGIyMmY1NGMxMzQ3ZTdmZWMzNTZhN2RmMzEwZjQ1YWE0ZWMgbGVnYWN5LXRydW5rCis3ODU0NyBhZmY2OTJiZGI2ZGIxMDc5NzgzMzE5MWYzNmFmMzJmODMyNTgxY2MxIHJlbGVhc2UyNi1tYWludAorNzg1NDggODg3ZGU1ZGZkOTYwMTVhZDQ0MDI5Y2ExZWJmYjQ0NGViMDVlNTJhOSBweTNrCis3ODU0OSBkYzg0NmEyMTFjNjU4YWFhZTBmMDkwOGUzYzI4YTc0MTBhZjAxY2M3IHJlbGVhc2UzMS1tYWludAorNzg1NTAgNDZhZTE2NGIxNWJhOTFkYzY0OTFlOTFhODY4YjJkMjcxYzMzMTdjNiBsZWdhY3ktdHJ1bmsKKzc4NTUxIDRlMzA0MzEwOTc0OWYyOTU3NDY2OGU0NDY1ZTQ5YmNjYmI5N2JmN2IgcmVsZWFzZTI2LW1haW50Cis3ODU1MiA1OGMzNTQ5NWE5MzQzODdkMDY0ZWRmNTk2MzRhZDczY2I4ZmUyOGU0IHB5M2sKKzc4NTU0IDRiYzViMDQxZDNhYTZiYmUwOTAxZGYyMjY3ZTU4Yjg4ODg3NzdjOTUgcmVsZWFzZTI2LW1haW50Cis3ODU1NSA0MGE0MDZlZWRjYWM5MmUxMWE5MjM1OWRkNjc0ZGZjYWM1NzkyYWU5IHJlbGVhc2UzMS1tYWludAorNzg1NTYgZDU2MTVlZWU1NjNlNTY0MDUzN2RlOThkMmJiYmExYzc0MGFlODZmMCBweTNrCis3ODU1NyBjZGY1OTYwNGExNzQ0ZDZiNTNiYjcyOWU5OTQ2NzYyZmVjOWM5ZTM1IHJlbGVhc2UzMS1tYWludAorNzg1NTggOGI3YjVjOWU2N2Y0ZDY3MDNhNzg3MTRlNTQ0OThmODhhYjMzMWY4NCBsZWdhY3ktdHJ1bmsKKzc4NTU5IDkxMjdkNzA3MzBjNWIwZDYxZjAzN2ExMDFmM2FjMDZmNzAyM2Q4ODIgbGVnYWN5LXRydW5rCis3ODU2MCAwNDU5MGVjNmYzN2RkZjY1NzUwMjk1MDg5NzY2ZDkyOWIzMTc1Yzg3IHJlbGVhc2UyNi1tYWludAorNzg1NjEgNDM4NjgwYmU1NDcyYjdhYzIyZTY3NjY0Nzg4NTMyZmFhNzM1Mzc0ZiBsZWdhY3ktdHJ1bmsKKzc4NTYyIDM5YTUwM2M4ODAwMmE4ZjYxZWM3MDJmY2U1NmI2NTNkODhmM2U1OTUgbGVnYWN5LXRydW5rCis3ODU2MyBmYmRlMTFkMWMxZjViM2I3OWZkNTNjNzBiM2Y5Njk3MmE3ZTkzODQwIGxlZ2FjeS10cnVuaworNzg1NjQgOTM0MjM5YjI2OGFkYzM1N2JjMDk1NDU1MzRlZjM4MGZhZmJmODQ2YyByZWxlYXNlMjYtbWFpbnQKKzc4NTY1IGM4YjI2Mjc2YzU4Nzc5ODViNGIyNDUwYThjNTRhN2UyODgxMmY1ZjkgcmVsZWFzZTI2LW1haW50Cis3ODU2NiA4OWY0MmI2ODFjZTU1NzczMjdmODA0MTAzMmY2MTQ2OGEzM2MxNmU1IGxlZ2FjeS10cnVuaworNzg1NjcgNjlhMTAzZWZhZThkNGViNjk0MjE5YjhiNTJhNzI4MTQyMGY4ODFmYiByZWxlYXNlMjYtbWFpbnQKKzc4NTY4IGY5OWU3YWU3MTJiMGIyNGYzZWVjZDRjYzUxMjFmYjIyOGUzYmRiNGMgcHkzaworNzg1NjkgODQ5OGYwZDlmMDI2MzYyZTlhZTExNTQ1MTZjZWE3MjhhOTFlYjlmZSByZWxlYXNlMzEtbWFpbnQKKzc4NTcwIGFjYTE4ODk3MGM0N2QwNmViMzA2NzcyNjFkOWI0MWQxMDAyM2M5MWEgcmVsZWFzZTI2LW1haW50Cis3ODU3MSAyYzliZjIxOGNlMjk4NzhmNDcxODQ1ODk5YmVjM2M3ZGNmNzBjYTRiIHJlbGVhc2UyNi1tYWludAorNzg1NzIgYzlmNjhlNDJhYjc5NmEzYmFiNGY4Y2YzY2M2OWNlMTA1MDNjYjk5MCByZWxlYXNlMjYtbWFpbnQKKzc4NTczIDExMTAxM2RkNWE4YWEwZWUwZTI1MTdjZmI2MmVhYjliODA4NzRkNDggcmVsZWFzZTI2LW1haW50Cis3ODU3NCA0ZjE4OTQ1ZmI4YjE3ZmRiYzQ0YmZjODI3ODc2NGM4NmVjZjU5ZWYzIGxlZ2FjeS10cnVuaworNzg1NzYgODNlZjY3NTI2MDExYWZmNGZkOTRiMTAzOGUwMzYxZjQ3Yjg4MjgwYSBsZWdhY3ktdHJ1bmsKKzc4NTc3IGY5MjNmZTU1YTQwYzNiNzVlOTUwYmE0MjRjZDJhMmY3MjVkM2EyNmIgcHkzaworNzg1NzggNzU1ZDdhM2E2YmI3NTZlM2E2MjNjMjk1YWM5MjczMmMzNTU3NTYzOSByZWxlYXNlMjYtbWFpbnQKKzc4NTc5IDM4YjAyZGQyZDQ1OWJhYzY2MTA4YjNiMTdmODBjY2U0NDM0Y2YwYWMgcmVsZWFzZTMxLW1haW50Cis3ODU4MCA0NzI4YWEyYzhhMTI4NDVhMjhkMzc4ZGVlOThkYmFhYTllMjIxNTdiIGxlZ2FjeS10cnVuaworNzg1ODEgN2E4OWUxZWM0ZjAwNWNlMGUxMzllMjNjMWQ1N2YyMjE1OTM5MDk5NiBsZWdhY3ktdHJ1bmsKKzc4NTgyIDZkNWMzMWYyNGEyMWIyZDg0ZjZhOGM2MWRiNGY3MmEyMjg2NzRjM2MgbGVnYWN5LXRydW5rCis3ODU4MyA2Yjk2OGUyZjA1ZGRiMGQ5MDMxYWI1ZGI1NDA1NTNiYzJhOTAxZDc3IHB5M2sKKzc4NTg1IDFhY2I2NDNiMmNmNDQ1YTAwOWNkYjdhNTVhZDEzZmM1Mjk1ZGVhZTkgbGVnYWN5LXRydW5rCis3ODU4NiBlNjRjNGI0M2ViM2MyNzY4OTI0MjI1MjgzYzNkNjkyNDNiZmU2YzAxIGxlZ2FjeS10cnVuaworNzg1ODcgNGNhODNjNWI4NTUxYmZlY2JiOGMwNzBjZDRlYTc1OWI4Yzg2Zjg1ZSBsZWdhY3ktdHJ1bmsKKzc4NTg4IDg0MDFkZTY1ZTEyYTIxOGMwNGI0NjM4MDA1MTZlODQ5OTE4NmYzOTEgbGVnYWN5LXRydW5rCis3ODU4OSBkYWJkZWVjNGY5YzFkMzMxOTU0Njc4ZjJmZWRmNjU5ZmU0YjFlYTNiIGxlZ2FjeS10cnVuaworNzg1OTAgODJlZGEzNDVhNWY2ZTEzZDljZWI2MDhlODJkYTQyM2Q5NjE0MGIxMSBsZWdhY3ktdHJ1bmsKKzc4NTkxIDRiN2I2OTUzY2QwNjQ5NzBmNTA2N2NmY2NmOTNjM2E0OGIxMDA2MWYgbGVnYWN5LXRydW5rCis3ODU5MiAxMzdhMjFmY2QzODUwYWI5NTk4NjM0YzhlZjBjYzBhNWZlZTYxNGJmIGxlZ2FjeS10cnVuaworNzg1OTMgODNlN2VlMTg1MTYyM2NjYWUzNmMyNDI5Y2E5OTBkYjQwYmE0NzgyMCBsZWdhY3ktdHJ1bmsKKzc4NTk0IDk3MGZiNGE4ZTY1NGFjOWJmNzlkNDkzYzBlNmVkYzFiNjAyOWM1NTkgbGVnYWN5LXRydW5rCis3ODU5NSAxMmJjYjY5OTM4YjNjMDEyNzc3YzI0NTA1NTVkYmJiY2E0YjE3OGI1IHB5M2sKKzc4NTk2IGMzMWE3YzBjNjM5OTg1NWU5Zjg0YTg2MTdhOGQ5OWIzMGJmYjdiMDcgbGVnYWN5LXRydW5rCis3ODU5NyA1YzY3YzFlZjhhZDNmNDRmNmQ2NmEyNGI3MWYxM2Q2ZGExMWNiZTYwIHJlbGVhc2UyNi1tYWludAorNzg1OTggMDFkNmExNGFiYTY1MTc2ZmIwOTY4ZmYyYjMzOGYxYzFhN2Q2MDRmOSBweTNrCis3ODU5OSA5NTFjOTdlMjg3OGQ3MWQ4MjQyNWMxOWMwNDMzOWQ0ZjhlMGQ5ZTJhIHJlbGVhc2UzMS1tYWludAorNzg2MDAgOGQ3MjE0N2Y0NDJjZjlkNWEyZjc3NDZhYmE5YzQyYjA3NDdiNzE2ZSBsZWdhY3ktdHJ1bmsKKzc4NjAxIGViYTk0MmU3Nzg5NTdhMTE2MTRhNDM2NmU0MjMxZGYwMDkzNTk3OTAgbGVnYWN5LXRydW5rCis3ODYwMiBiMzBmOGNlODIxNjc3ZDkzMGY3MDRkZTUxMWE5ZDZiYzdiYTE0ZWViIHB5M2sKKzc4NjAzIGIwNDQ0MDVkNjJlNTVjMWU1NTAyYmNlMzFhNmZhY2E1ZjgzY2ZjMjIgbGVnYWN5LXRydW5rCis3ODYwNCBmNTQxMTEyNTI0NWVlMjczZjczMTY1OWNlNTM1ZDRkNTAwNWMxNGJkIGxlZ2FjeS10cnVuaworNzg2MDUgMmQyNDE3NjVlNjMxNzRmNzk5MzRjM2E1ZjFlMWQzOTBjZjRkYjY2ZCBweTNrCis3ODYwNiBhYWI1Yjc2YWEwNTk3ZDgxNDk5N2Y4ZmI5ZmRiYjZmNWRmMWIxN2E0IGxlZ2FjeS10cnVuaworNzg2MDcgNjgxNTk3ZDBjNThkZjEwNzBlYWQyMjhlZWUwMTY5NWQwMTBlNDdlOCBweTNrCis3ODYwOCBkNGExODhkYWMyMjI4NTY5MGY5ZWM1OTc1Mjk2ZjRhYzUxZmUyMDc0IHB5M2sKKzc4NjA5IDY1Mzc3NjFjMzEwMTgzZjA0MzljY2VjODYwMzY5MGE5ZWZjOWI0MzkgcmVsZWFzZTMxLW1haW50Cis3ODYxMCA3ZWVjNjIzOGUxNWFjNGU3ZmEyMjNhYjFmYjRjYzBiZmFjYzJkYTk0IGxlZ2FjeS10cnVuaworNzg2MTEgMDg2ODQ2MzgxZThmM2Q2ZmIwZTBlMTljNjY3ODJhOGU4ZDQ3YWEzNCBweTNrCis3ODYxMiAxZTRjNGIyMzVhODlkZDc1NGYwNTM0MTg1N2I3YzVlOGE5YzAwYzUyIHJlbGVhc2UzMS1tYWludAorNzg2MTMgMjVjMGY0ZDdhZTU2OWU0M2ZiNGIzYTYyMGViOWU4NzUyZmRhMjJjOSBsZWdhY3ktdHJ1bmsKKzc4NjE0IDM4Y2VmOGRlYWUyMmVmMDE3MzNlYjcxZGRmYWZhNjYwOGI5NWMyNWEgbGVnYWN5LXRydW5rCis3ODYxNSA1ODRlYzdhNzI1NWIyNDBlOWY1N2ZjNDA1NmYwZTczMzYyY2ViMDQ2IHB5M2sKKzc4NjE2IGJkOWM3OTkzZWU3NWUzNjU5ZDljNjNmNDA4YjFmNDNhNzc5NmYxNjQgcHkzaworNzg2MTkgYmZmMDUwNDUwMjgzZWM3NWM2Y2UwYWIwOTU2MjA0YmM2MGE0YzYwZSByZWxlYXNlMjYtbWFpbnQKKzc4NjIwIGI4NzUwYzcyYjliYzQ3ZmNiNmJhZTExYTBjNjM2ZWUyNGUzZWY3ZjMgbGVnYWN5LXRydW5rCis3ODYyMSA2ODdkODUxN2EwYzM4Y2ZhMmU2NjYwNmZjYjI0OGU1ZTU2Y2ZkZmUyIHJlbGVhc2UyNi1tYWludAorNzg2MjIgMjlmYWM0YjFhNTFlNzYzZDNmMDcyOTQzOTIxY2YwYWMzZjI4ZTUyYSBweTNrCis3ODYyMyA4YWNlMmVhZDU1MjM3YjFlNzJjNmYzNGQ4ODQzZjk4ZTA2MDk3ZjA4IGxlZ2FjeS10cnVuaworNzg2MjQgNGI0MTNkZmEyN2Y5OTJhN2JlMjMyMTgzNGM2OWNkZWUwYTFkNjk5MyByZWxlYXNlMzEtbWFpbnQKKzc4NjI1IGM1M2NjNmJkNmI2MTMwODA2MDcxMDk1MDk0NDY3YmMzNmU2YzNmMmYgcmVsZWFzZTI2LW1haW50Cis3ODYyNiBjNGZjYTc3OGI1NzNhNTI2NjJkNmEwMzY3NDFjNTcyNTI1MTQ1MzFkIHB5M2sKKzc4NjI3IGI5OTk5ODQ1M2Q1MjNhZTEwZWJiYTNkZmIxZDRhOWRmNzUwMGQ0NmMgcmVsZWFzZTI2LW1haW50Cis3ODYyOCBkZTA2YjU5YWE0M2M3ZjlhYTU4ZDFhY2VkOGQ2ZDZhY2VkNDg5NmI4IHJlbGVhc2UzMS1tYWludAorNzg2MjkgNWJiMjk1YTk0YjBmN2QwNGQ0YTI3ODM0YmJjYWUyMGNiMTg1Mzc5YyByZWxlYXNlMjYtbWFpbnQKKzc4NjMwIGMzNTlkNWFjZGM0YjViNDA3YzgwZDU4ZDFjMmIwMmQwZjI0NTU5ZGUgcmVsZWFzZTI2LW1haW50Cis3ODYzMiA2ZjFlMmZmZDdiZGU4OWUwYWJmM2Y5ZGJjOTI3ZDYwNWNkMzhmOWUxIHB5M2sKKzc4NjMzIGRmYTc0OTExNDBkOTRjNmUxZTJlMzQwMzQ5ZDUyY2IwYzcwOTI3NjIgcmVsZWFzZTMxLW1haW50Cis3ODYzNCBkZjAyNzBiZWY5NzE4ZjRiMjA0MzZkM2Q0MjdjODQ2ZmE2ZDNmMGZkIGxlZ2FjeS10cnVuaworNzg2MzUgODY3ODUzNDI0MmEwOTM4ZGExN2E2ZGEyMjRkZGY4MmU4NzVmYTA2MyBsZWdhY3ktdHJ1bmsKKzc4NjM2IGJmZWE2YzIwMmVkZTU3Njc3YWNiNTNkNTRjZTc4MWIwMTlkOTVjYjMgcHkzaworNzg2MzcgNjBlN2U2ZDNlNDVhODkwN2JlOTFhODA3MDVlYTFhYzQ5OTJjY2M4NSByZWxlYXNlMzEtbWFpbnQKKzc4NjM4IDdmNTAwNjQxYzA2YTFkOTRjNzM1MGJiOTkyOWQ1NTU1OTM3ODc2ZGYgbGVnYWN5LXRydW5rCis3ODYzOSBkZDg1MjczOTk1ODIzYWE2MmI4Y2RhMGU4MzI0OTE3YThhYjQyMDYzIHB5M2sKKzc4NjQwIGQ3YTYyYzE2NTA1YjEyY2NjMjY3ODQ2MGQ0OWI2ZWI3ZTQ3MDgzNzQgcmVsZWFzZTMxLW1haW50Cis3ODY0MSBkNWZiZGEwM2M2MDMzY2UxYWVhMDQ1YzE1ZWQyMDYwZmYzOWVlZjNkIGxlZ2FjeS10cnVuaworNzg2NDIgOTk0NGU1MTA0YTU1OTcwMzk5MDNmMzhmOGQ1NDkzZGZjNWRhYjc1YiBweTNrCis3ODY0MyA3NTk1OTIxYTE0NzQ4MmYyMTA2MGFjMWI1MTk1NjAyOTU4Yzk4MzIyIHJlbGVhc2UzMS1tYWludAorNzg2NDQgNDYxZDljZDE5NWI3M2IzMDY2NzI2ODhmMjMwMmFiMTJiYTBhZjcwYSBsZWdhY3ktdHJ1bmsKKzc4NjQ1IDc3OTAwZTdkZWFhNTg3MDA1ZGYxMmYyZWZlNDg0YjA2YWY3ZWU1ZDAgcHkzaworNzg2NDYgMjYyNjlkZmMyMmFiNDdlNDExNGVkN2RkZjQxMjBhMzM4NWYxN2YzOCBsZWdhY3ktdHJ1bmsKKzc4NjQ3IDBiMjdjM2YxOGNiMzg2ZjU2MjQ3N2YzNGZmYjZmOGZlNDAxMDg5ZjAgcHkzaworNzg2NDggZmQ4ZmRkMzg4OTYzYTk2MjFkOGRiNWZkMDY4ZmQwNmE1MjI4ZTFhZiByZWxlYXNlMzEtbWFpbnQKKzc4NjQ5IDMwMmRiYzZjNDgwNzFlZGQ0NGQ3ZTVmYWQzNmEwMzUzNmRhMjZiNDkgcHkzaworNzg2NTAgYjZjYWIyMWQ4MGI5NWI2N2EwNWYzMDllMWM1YmRiZmViYTlkMjlkZiByZWxlYXNlMzEtbWFpbnQKKzc4NjUxIGEzYzAwNTY2YzJkNTljMmRmOTFlN2NkNDc3ZDA0ZDBmNDUwMTZjYjUgcmVsZWFzZTI2LW1haW50Cis3ODY1MiA4NDEzMGMyMjY1ZGNhNmY5MjA3MmM4YTYxMzI4MjlkYWIyZmVjZTZlIGxlZ2FjeS10cnVuaworNzg2NTMgMjk1ZDU5ZmE2ZTYyZTFkMmM1MTkxOGFmM2Q5N2Q3OGU3Mjc5M2Y5YSBsZWdhY3ktdHJ1bmsKKzc4NjU0IGRiNGRhMWVkZjM0ZjVhMjUxZjVkMDQxNGJjNGIwNDllMGQxOWMwMTkgcHkzaworNzg2NTUgNmZhY2JjMTgzYTRhMWZmN2NjNmNhYTViZWZhNTE0ZmRlMjU5YmYwNyBweTNrCis3ODY1NiA5ODdiYTM3YTU0OTQzYWQ0Mzk1MzgzMGM2OWIwNjFhYzZiOTEzZDQxIGxlZ2FjeS10cnVuaworNzg2NTcgZWVhMTVmYjAyNDRlMmViNTYxM2I5OTIxZTE0NGQ3ZWJlNDk4OTA5YSBweTNrCis3ODY1OCA5NTFmZWMxOTZlZGM3MGE5ZGFkYzQ2NGIzOGRkZTYzM2RjZTdiZTk2IHJlbGVhc2UzMS1tYWludAorNzg2NTkgZjgzNWUyODI3ZDFhYTYzMDNiNzA0Yzc4ZmRhYTkwMGE5ZmU5NGNkMSByZWxlYXNlMjYtbWFpbnQKKzc4NjYwIDAyYWVmYzQyNTdkZTc2ZjYzZWUwYjZjMzE2OTdlYTBkNjhiMDJkZTYgbGVnYWN5LXRydW5rCis3ODY2MSBjZThiZTY0YjM0YThhNmQxM2Y0NGM1ZWIyNjUyMTQ2NTRmZmMzMjU0IGxlZ2FjeS10cnVuaworNzg2NjIgZDhiMmZhODg3ODhiMWY2YjNkNzNkZWNiMmI2MzA1YWM2NTFkYzc1YSBsZWdhY3ktdHJ1bmsKKzc4NjYzIDA0OTU1ZTdlYjU5NzA2ZmI4NjIzMDI1ZjYwNDBkMTUwNTBmZDFlYWUgcHkzaworNzg2NjQgMzE5ZTYyMTVjNTZjYjk5NWViZjhhYzViOTk5OWJjZTJlYmQ1ZTkyOCBweTNrCis3ODY2NSA0ZGYzM2U4M2YyNmYxMGI1N2I1NzQxMjlmYzdiMjMzOWZmZDA5YTg5IHJlbGVhc2UzMS1tYWludAorNzg2NjYgYWQyMmJjMjJkZGRjYmVmMzYxOTE2OTZhMDA0MjljN2E2MDhkNTAxYSBsZWdhY3ktdHJ1bmsKKzc4NjY3IDM1NzRjNWZlMjA3YzQ2NjEzMzc2ODljZTUwNGRkOTFhOTYzNGFiYmUgbGVnYWN5LXRydW5rCis3ODY2OCA2OWIyYWJiOTUzNDg3N2RkZDY1MjYyZmFhYzBmZTVmMjY4NDBmMDU0IHJlbGVhc2UyNi1tYWludAorNzg2NjkgODFkYzE3MmJmZGFiZGNmMzQ1NjFiODhmY2UyNWM5OTRhZTIwNzYwNyByZWxlYXNlMjYtbWFpbnQKKzc4NjcwIDc1NTcxNWIzY2YyM2EzZTkwNzI5MGNiZTcwYjE3OTFhZmNlMTAzY2MgcHkzaworNzg2NzEgNDVjNGI2ZDZlMmE1MzRjZTdiYzYyZmE1Y2JkYmEyNjNiODFiZjkzMyBsZWdhY3ktdHJ1bmsKKzc4NjcyIDAyMWNiNGY0NTU5YTVmYWFjNGJmMWE2ZTliYjRlYjhiODRkN2M0MmIgcHkzaworNzg2NzMgNWI4MTllYzRlMjA1ZmMwZmQ5ZDEyZDQ2ZGYwNDljMDU0OTdhYjFlZCBsZWdhY3ktdHJ1bmsKKzc4Njc0IDQzMmY4YmE2NzM4MTgxMmI0N2JkOGEwYWZmNjVhMDZkYjA3Y2QwNDAgcHkzaworNzg2NzUgZmVmNGUyNTNlODhhZjM1YzEyYjdiZDI0ODczZTYwM2JjZmRkN2I2NiBsZWdhY3ktdHJ1bmsKKzc4Njc2IDBmY2EzOTdkNTBmN2ZlNjQ0NzQ2Mjc2NDc0YTc2NDFkNzAyYjkzYzUgcHkzaworNzg2NzggN2I0OGViYWFkYjYwMDBjZmI1NDZmNmFhNzI4ZTk0NDU1NzRlOGRmMCBsZWdhY3ktdHJ1bmsKKzc4NjgwIDdlOTZiMGJjYmEyN2VkNzlkOTk0NjMzZTAzOTU5ZWNmNWEwZjI3ZGQgbGVnYWN5LXRydW5rCis3ODY4MiAwMTk3NTk5MTZhOWJhN2EyNGM5MWQwYWI3MDNkODQ2NmUzMmIyODdlIGxlZ2FjeS10cnVuaworNzg2ODMgZTUwMzAzM2UzMTQzNmI5NDljYWRlNDc4OWQyZGEzNmRjZTFhYTJhZSBsZWdhY3ktdHJ1bmsKKzc4Njg0IDgyNDQ2M2M0NDg5ODQ0MDU4ZDdiY2NkMWU3ZjFiNjExZWE2NTlmYmYgcHkzaworNzg2ODUgN2NkN2ZmNmIwYWRiMjg5MTI1ODJjZTA5ZmVlYWVjMmZhOGFhOGRhMyByZWxlYXNlMjYtbWFpbnQKKzc4Njg2IDhiODY0YWE3OGU5MjUxN2EzZGY0MDlmNmVkNmRkZTRkNGU1ZmJkZjMgcmVsZWFzZTMxLW1haW50Cis3ODY4NyBhZTdmMjZkMjRlMWRjZjc0OTdmZTI5YjdkZjhiZDU3MWVkMjlhYzdlIHB5M2sKKzc4Njg4IDA0ZDNhZTUyZmY3MzAyYTM4NzliYmJiM2I2ZjQyMWQ5NDA1NWNjNWIgbGVnYWN5LXRydW5rCis3ODY4OSAzMjYxOTk5NmEwMTQ4YzRkNzk2MzE2ODgxYzNiOTkwZjdmMTk0NzM3IHB5M2sKKzc4NjkwIGMyZDlkNTBmMzdjNTliNjMzYjRjYjhhOTU5MDRhYjc5NGNlNTJjNjIgbGVnYWN5LXRydW5rCis3ODY5MSA5MWZiMzk0YzA0ZDYzZDk5ZmVlMmFjZGY4YzcyNmZmYjIzNzRjNWFjIHB5M2sKKzc4NjkyIDgxNDc3MTkyY2Y3YTk5YTIyOWY5NjM4N2I5NmI3ZmEwYjU5ZWVmOTEgcHkzaworNzg2OTMgY2VkNWYxZjQxNGIwMGM2NTQ3ZDMzN2QyZGY0NjBiMDAwZTEyNjc3MCByZWxlYXNlMzEtbWFpbnQKKzc4Njk0IGZkMTU1YTM2OGY1YmQ0NjVkNjUzMTMxNzcyMDVjMDJmNjZhMWQwOWQgbGVnYWN5LXRydW5rCis3ODY5NSA4MTc1MjJlMzUyZDY2ZjZkNTQ4YjhiMjBlMDEzNjZhYTI4MDllZDg1IHB5M2sKKzc4Njk2IDE5ZjMwYjQyMmNhM2ZkMTdiYTk0NDgyNzk3NzViMGViMWZjZTlmODYgcHkzaworNzg2OTcgNTA0ODA4M2U5OWZmY2U0MzA5M2E3ZWRmMmY1NzhiM2Y2MmVhZTBhNSBweTNrCis3ODY5OCAzMDAzYzE2NTZlMmFkZWViNWZhZjViYjIwMjBjYTY1MmMzMzNiZDNiIHB5M2sKKzc4Njk5IGJmNTg2YjI3NzZmNjdjYzhlY2QzZjllZGM2MTRhNTg5ZmIwNWVkY2YgcmVsZWFzZTI2LW1haW50Cis3ODcwMCBlY2NhNzAzYmMwZGY0ZGI0NWViYzk1NmM4ZDczMjE4NjZhODUzYWNmIHJlbGVhc2UzMS1tYWludAorNzg3MDEgMzE5N2VjYzA5NDRhMTdmNTU5NDMwYmQzYTQxY2E0OGM5OTdiNzI1MyBsZWdhY3ktdHJ1bmsKKzc4NzAyIGQ5ZTZmMzE4NTY4ZmM5MzYzYTM0NmY3NjBhMDM3MDk3MDVkOWI0YTUgcHkzaworNzg3MDMgY2M3MGY2OGU5YzExMTNjOTdmYTRiMDY3MjFiM2M0NzdlMzBlNmNmYyBsZWdhY3ktdHJ1bmsKKzc4NzA0IDQ1NGVmZjg0MGJkNDIyYWYwOWYwZWIyNTA5N2M1MDEwYjUwODM1ZTQgbGVnYWN5LXRydW5rCis3ODcwNSA4ZGM0MGM2Mzc2MWM4ZmRjYjU1OTRlNTM1ZGY0MWUxNDU0ODdkMWZhIHB5M2sKKzc4NzA2IDI1ZTlkZGJjZTEwYWJlNGZiZWUzODk3NzRmMzQyNzA0M2ZmODdlNDEgbGVnYWN5LXRydW5rCis3ODcwNyAyYjUwOGFhMmE0MzZiYzU1YjI0NzU0NTdlNDI4M2Y2NGVmM2ZlNmFlIGxlZ2FjeS10cnVuaworNzg3MDggMmQ1Y2EyODA1ZWE1ZjFiY2Q3NzQ4ZTZhOTc0M2M0NmM0YjcyM2M3MSBweTNrCis3ODcwOSAzMmFjNDI4Y2QxOGIzNDJlNGQ5YjZiYjk3ODllY2I3OGFkY2UxOWNmIGxlZ2FjeS10cnVuaworNzg3MTAgMjE1NjM4ZmNmMDliYTA4NjMyMGQ4MWNjNjVmNzUwYmI3YjE2NmMwZiBsZWdhY3ktdHJ1bmsKKzc4NzExIDVkNWJjYTZlY2IxNTE4NDI5M2Y1MzQ0MGYwZDk1YjgyMmEyY2I2ZjIgcHkzaworNzg3MTIgNWMzMTc2Nzc1ZTg3MzBjYjNkN2MzMDQyOThlYTM4NWI2ZGMzYzdmOSBsZWdhY3ktdHJ1bmsKKzc4NzEzIDRhMTE5ZDg0ZDBiNTc1NzQzYjAxNzdiY2Y5ODZlYTFiMDg1YzZjOTggbGVnYWN5LXRydW5rCis3ODcxNCBiNjhhOWE4YzJjMWY0OWYyYzAxOGMxNjExZTk1YjI3ZGQyZjg4OTMxIHJlbGVhc2UyNi1tYWludAorNzg3MTUgNjc0MzA4NzVjMWEwMzYzMWFlZWMxNDA4ZGE5NzA3ODVkZTBhZjdmOCBweTNrCis3ODcxNiBhYTQ4NTI2NDUxZDE3MDU2ZTEwM2YxMTU0MjhhNWRkMTdkMGIxMGE4IHJlbGVhc2UzMS1tYWludAorNzg3MTcgNWFhM2JmYzQ4Y2JkZWJiOGVlNWJlOTgzMGJlZjhmMjcxYmExNTZkNSBsZWdhY3ktdHJ1bmsKKzc4NzE4IGJiMDhhM2VjMTU0ZGE3Mzc2NWUxMTQ2NjU4NzAxYWMyMTU3ZWJhZmMgbGVnYWN5LXRydW5rCis3ODcxOSA1YjE3NjQzNzQ1NDVhM2YyZGYxNzM1ZjE5YTE4YTdiMGVkNGNlNDdmIGxlZ2FjeS10cnVuaworNzg3MjAgOTY2ZWIxYjllOWRiYzNkYmY4ZGNlMDM0NWIzOThkMWRmNjQ3Njg0MiBsZWdhY3ktdHJ1bmsKKzc4NzIxIDc0NDRkMzQ4ZDc3MWYwZjk4MWMzODAzNmFjYWUyZDZkYzg4MWE2NzUgbGVnYWN5LXRydW5rCis3ODcyMiA0OGE2YzI2MjEyMjY1YzUzYjZkZmZiN2JhYzU0ZTA5NGM1ZmZiMDYyIGxlZ2FjeS10cnVuaworNzg3MjMgNDg2YzFjOWVlMDA2YzA2N2FlZjRmYjRkMDdhOGVmYmVmOTRlN2UxNiBweTNrCis3ODcyNCBlZmU1MjhlZTk1OGE2YjIxZDVkNTg1NjQ3NDFiYTNlNTFjYWIwY2NiIHB5M2sKKzc4NzI1IDI0YzZhNTgzYTg2NmFjOGQyMDVkYTNkMTA1Y2M3YmMyOTEyNzM0YzcgcHkzaworNzg3MjYgNGM1YzViNDY2OGI0YTZhZDQ4YjY4YjcwMDM5ZTcxMTliNzBhNjQ1YyBsZWdhY3ktdHJ1bmsKKzc4NzI3IGYzNjJjZDRiZDJjNTFjNmNjMDU0OTI1MjY2NjkyN2U1YzIxZDQ4Y2QgcHkzaworNzg3MjggMTIwZDZjY2YyNmIwNGU5OTQ2OGMxNjRhMTg0YTA4ZTAyZjJjNmZhNCBsZWdhY3ktdHJ1bmsKKzc4NzI5IDkyNThmNDA1YTdhYzQ2NmI0ODU3MmFkYTAyM2Q4ZGM5ZTRkYjg3NjMgcHkzaworNzg3MzAgOTdjYTliMTRhNjYwN2JlYzdiZmJjNjllMGI1Nzk4NTYxNTY2YjY0MiByZWxlYXNlMzEtbWFpbnQKKzc4NzMxIGQwYmJiZjNjNTVmNWUwMTVjMzlhMTA1MWQwYmM0NWFlM2NjOWVjNWIgbGVnYWN5LXRydW5rCis3ODczMiBiZGY2ZDc2OGE4Y2M1ZjhmYWQwNzVjOGQzODNkMmVkMDA1OTdkZmI0IGxlZ2FjeS10cnVuaworNzg3MzMgYzJjZjZjNzE3MGM1MTUyYjA1MjgyYjhiMzY1OWNkOTUyNjkzNDE0ZCBweTNrCis3ODczNCBlYmRjMmFhNzMwYzBiZDFjMjczNzFjMzJlNzRlNWNhMDM4ODIzODVlIGxlZ2FjeS10cnVuaworNzg3MzUgYTA3ZjcwZmM4MmExMTAyZjFiYjVkYWQyZTMxODNmZGU0NjMzZjNiMSBsZWdhY3ktdHJ1bmsKKzc4NzM2IGU4YzExODkxNTc2MmU3NzE5ZjU2OTM4YWJlZTRmZTBlYzA1NmY2MzkgbGVnYWN5LXRydW5rCis3ODczNyA1YTk2MzFiOWRkMjI3NjE3YjYzYjJmNzZjMDcwMDNhYTJjMDhhNTg1IHJlbGVhc2UzMS1tYWludAorNzg3MzggZDJlMTAyN2VkZGU4NGEwMjg1M2ZjZjk3OTBmMzExZjEwZjQ2Y2YwYSBsZWdhY3ktdHJ1bmsKKzc4NzM5IGRjZmJjMzRiMmUzYzZhYjc5OWU2ZjZhOTVkNTIyYzhmMTNmOTJiYTIgcHkzaworNzg3NDAgZjllYTkxN2FmZjEzZjJhYWVlMzI1ZDgzODdiY2I3YTViY2NiZjIyZCBsZWdhY3ktdHJ1bmsKKzc4NzQxIDE0OWI4Yjg3NTE0ZDEwNDE2YjU5ODg4NGRiNWY3NDY1MWY2MjViMzggcmVsZWFzZTMxLW1haW50Cis3ODc0MiAyMTI0Nzg2NDBiMWMyNjM1MzVmZDBjYmZhNmQ3ZDVkZmE4ODRmN2M1IHJlbGVhc2UzMS1tYWludAorNzg3NDMgMTZhMjZkNDM3NGU0NmJmYzk3N2VlZTQxZTA4MDRlYjVmODBkNjBiYiBsZWdhY3ktdHJ1bmsKKzc4NzQ0IDRmYTk2YTkxMzgwODcxYjY4ZTFiODRlN2E4NzU3OGU3YTExOGJlNzMgcmVsZWFzZTMxLW1haW50Cis3ODc0NSBhZDI1NmE2YzY1OTkwYzhhMzUzODdiMGQzYzkyYWMwZmY5YzIxMDhmIHB5M2sKKzc4NzQ2IDMxN2QwYzQzYWIyYjZiYzg2NDQzNWI0NWZmNjUwYzVlMzc1ZGYwMmIgbGVnYWN5LXRydW5rCis3ODc0NyBmNzM1NjExMjdmNTdlM2UyMzg3M2U5YTVlMDQxYTJiY2RiMTU1ZDE4IHB5M2sKKzc4NzQ4IGU2ZDE0MTU4NzU4ZTE4YjYzYWY1MmJkMGI1OTE2NzJiMjUyNDJlMjQgcmVsZWFzZTI2LW1haW50Cis3ODc0OSAwODAyYmM5NzNiMzI0ZGEyNTFiY2ZmYzEzYWQzYTliZjUwZmZhNjA5IGxlZ2FjeS10cnVuaworNzg3NTAgY2U5NzNiNWM3NzlmMDMwNGFkM2FhMjBlNWU2MzIyMzQ1YWJmZTVkMSBweTNrCis3ODc1MSBjMTZiMzdiMTg5MWIwMGMwNjU3OTE0MjFlMWQwMzU3ZTBhMjBkNjYwIGxlZ2FjeS10cnVuaworNzg3NTIgZWU4ODAyODE1YmFkMmI3ZmY5ZjU2MGY5MGFmY2VjM2U1ZGY3M2E5MCBweTNrCis3ODc1MyBjZGUyNjg3ZTM3YzE2NTA5MjY3ZjgzNTM2OTcxODkyYjE0Yzc0ZmMyIHJlbGVhc2UzMS1tYWludAorNzg3NTQgNGYwMjE3OTQ5M2MyNWQxZmNiZDE5NTVjMGIwN2E0ZWIwZTdhODlmMSByZWxlYXNlMjYtbWFpbnQKKzc4NzU1IDI5OTBiZDNhZTg4MzhhNzZlZmYxOWRmOTFkMGZmN2M0MGNkZTgyZGMgbGVnYWN5LXRydW5rCis3ODc1NiA0OWEwYTk1MGQyMTliMjJiOWY1ZjlkY2EwMjc1Zjk0NGNmYWNjNzMzIHB5M2sKKzc4NzU3IGUyZDQxMDc5ZDA1OTY3ZTViYjZhNmY4N2NiOTczMDU4ODliYTVmYTkgbGVnYWN5LXRydW5rCis3ODc1OCBlMjNjYmEwM2NjNGIzM2Q5ZTEzZjU4ZDAyMWJjYmNmODAxOGFiMmJmIGxlZ2FjeS10cnVuaworNzg3NTkgMjc0MjJkMTczMWU5ZTQ2OTY0OGY2OTY2MTI3MzAzMTEyOGVjYTczNiBsZWdhY3ktdHJ1bmsKKzc4NzYwIDE3NGIwODc5YjdkMGVjYWNiMjZiNzUzZmI2YTlhNWY5NTk5OWQ2MTEgbGVnYWN5LXRydW5rCis3ODc2MSA3MWU0YWIyMTM0NmQ0MWU1MDQxMTI4NTgyNDk3YTcyNzhjYjM0ZmZiIGxlZ2FjeS10cnVuaworNzg3NjIgY2ZiNDQyZDcwMmNkNDcxYTY1MDJhOWQyZmI2NmU4YWExZWY2NzY0NSBsZWdhY3ktdHJ1bmsKKzc4NzYzIDBhMjczY2ExMGZhNWU0ZGZlNjU2MTg0OWRkODE5OTM2ODc5MmM1MmEgcHkzaworNzg3NjQgNGE2YmU4NjRjNmI4OWIxN2M2MzY4ZDk4MzU3MGFjOTJkNDExMzg2YSBsZWdhY3ktdHJ1bmsKKzc4NzY1IDg1Yzk1ZmQ1ZDdlM2EwNDRhMjA0MGNkMTU1ODUxYWFhZjY4NGZjZGQgcHkzaworNzg3NjYgZWRhYWZjYTg3NDMxYzdjZGZjMTU5OTAyYzg0YTM4Y2ZhMTY0M2I2ZCBweTNrCis3ODc2NyBhYjdjODdlZDVjYWRkMDRiYTkzZTc4ZTI1Y2M3YzEyODU3YjAxZWUzIGxlZ2FjeS10cnVuaworNzg3NjggZGExOTg5NDk0NmUxZjYxMmMxZWM0MDQ1NjgwNDIxNmQwOTY3NWU1MiByZWxlYXNlMzEtbWFpbnQKKzc4NzY5IGU0NWZmMDI3NDgyZmU0ODc5M2RkN2ZlMmIxNTdlNDZkMjc1ODg2NmEgbGVnYWN5LXRydW5rCis3ODc3MCA4ZjJjMzYwZDAyMTRiNTA0NTA4Mjc2N2Y2Mzg0YTk1OGViYTMwZjEzIGxlZ2FjeS10cnVuaworNzg3NzEgNWIxZGEzMmM5ZDRlMmQ0YjBkODdkOTc3MzdiYjA0MGM4ZTBkMjIyOCBsZWdhY3ktdHJ1bmsKKzc4NzcyIGM3NTIwNjRmYzI2MjcyMTQ5ZTJiZWEwNzU4N2M1ZjQzYjRmMTBjNWUgbGVnYWN5LXRydW5rCis3ODc3MyAzN2E4NDI0OWFhMDQ3NzdiMTYwNGFlZGIxNDdkOThlYjYyZTExOThjIGxlZ2FjeS10cnVuaworNzg3NzQgODVlYTQ1NGExM2RjZGExMzYzZGZhNjE2YTk1YWUzZGJiMWQ3MjNmNiBsZWdhY3ktdHJ1bmsKKzc4Nzc1IDEzMWMyMTA4ZDJiMWFmOTg3ZWQ4N2IyY2U0N2ExN2EyOTk2OGFjMGIgbGVnYWN5LXRydW5rCis3ODc3NiA0NjYwMzg3YjliMzUyMzMxNjhiOGY3ZGQwOGRlZTY3MTE5MGIwMzJiIGxlZ2FjeS10cnVuaworNzg3NzcgNDFhZWYwNjJkNTI5MzFmNWM2ZTQzMzg5YWQwYmUyYzczMzVkMmZlYyBsZWdhY3ktdHJ1bmsKKzc4Nzc4IGRhNzE0NjRkMmNmZjIxOGU1MGY2MDFiNDcyMGZiOTU3NzM3ODI1MmMgbGVnYWN5LXRydW5rCis3ODc3OSA1NzViMTJiMTk4YTE2NDRhOTkxYWUzYmU3MzczMDFkMmE1N2E1ZmJiIGxlZ2FjeS10cnVuaworNzg3ODAgMGY0NjhlMmQ5M2QwYWQxZDA2MjI3YmQxMTZhYWFmNmM3YTIwNzdlMCBweTNrCis3ODc4MSBjNjc2ZmYwZDg0OTVmNTc4NzdjNGI0NjZiYTYyZDAzZDQ4OGFhNTgxIHJlbGVhc2UyNi1tYWludAorNzg3ODIgYzZlZDMzMDM1ZDY5MmFmMDU2MmNhZDliMDViZWFmMjk0NWE0MmQ0NCBweTNrCis3ODc4MyBkYTNjNWVmZTQyNTJkZDIzMzAwNTUwZjA5OTY0NTk4MTgzMzAxYWYyIHJlbGVhc2UzMS1tYWludAorNzg3ODQgYjBiODBlYzJlM2EwZmUwYjc1ZGQ0OTBkY2Y0M2JiMzM5ZDEzNmIzZCBsZWdhY3ktdHJ1bmsKKzc4Nzg1IDM5ZDcwNDc4MDdkNTI5NWE2ZDQ4YWQ5NDM0ODM4ZjBkYjM3ZGZkNzcgcmVsZWFzZTI2LW1haW50Cis3ODc4NiA0NDVmODAxY2EyZDBiNDI5MWM1MmFjZDc5Mjc0Yzk4YThhMzYyNWExIHB5M2sKKzc4Nzg3IDU1ZjZhM2Q1YzE3Nzk1NzM3YWQ2OTRiNjQwMjg5MTI3MDNlYzFjZGQgbGVnYWN5LXRydW5rCis3ODc4OCA2NjcxOTMyYmQ4YjhiZmQyMDgxNDY1ZGRiNjdhNjhlYTc1ZjMxN2VlIGxlZ2FjeS10cnVuaworNzg3ODkgYTNmNjE3ODM1NGY1ZGMxYzA3NTQzNjhiMWI3NDk4MGZiNTRjN2E4OSBsZWdhY3ktdHJ1bmsKKzc4NzkwIDk2ZTAwMTFlYTBhNDRjYTZhOTc0YmFkYjQzMTViMDc5MjJkYzQ2N2IgbGVnYWN5LXRydW5rCis3ODc5MSAyYWM0ZjRmN2UzOTExNjFjYTAyMTM3NjZjM2VlOTM2ZjRiYzNmMWVmIGxlZ2FjeS10cnVuaworNzg3OTIgYTJmMWMxNWNhZTZjNDA1ZTIxZTg0MTVmZmI4MzU2MzkzNjJhNjkzZCBweTNrCis3ODc5MyA3MzNjY2MzZjNhNjgwNWIxMWJmNWQ2MzhiZGNlMGQ4ZTIxMzkwYzhiIHB5M2sKKzc4Nzk0IDE0NjE2ZGY5MjQwNzlkMTE1MmRhZWJlYmY0ODMxNGQyNDc4YjQxZDYgbGVnYWN5LXRydW5rCis3ODc5NSBjZGZkZWZlYzk5YWJjZGExNGRjZGFhN2Y0MTUxZTgwNWY4MDE2M2MyIHB5M2sKKzc4Nzk2IDY4ZTA1MDc2MzJhOTFmNzkwMDZiYjY4YzQzY2Y4ODc3ZWY3NDQ5ZGMgcHkzaworNzg3OTcgYWM4MDg4NGRkY2MzMjY2OTQ4MzM5NzQ2YWI2NWFjMDU0YzMwMTI1YSBweTNrCis3ODc5OCAwMjRjNTNhODY1MjFmOTBjMDA0MjEyY2Y3NzQ5MDE3MDFhYjY2ZGZmIHB5M2sKKzc4Nzk5IGIzZTY2NzNiNmFlNGQxZTA4ODJlYWRmZjcyNTZjZTY1NDNkY2Y1OTUgcHkzaworNzg4MDAgZDkyODc4YmJhN2JiZjcwZmVjYjNiYWUzNzRmNzJhYWE5MDRmY2YwMSBsZWdhY3ktdHJ1bmsKKzc4ODAxIDg5NWNmZWJkZTE3MjdiYTdkNTc5OGNjZWFiMmViMGZjOThiNmYxZGUgcHkzaworNzg4MDIgYzU1N2E1NGFkNmQxZjg3ZmFlZTA0NWUwOGI5YmU5NGVmZGIzNGM3NiBsZWdhY3ktdHJ1bmsKKzc4ODAzIDFjZGEzZDc3NzdhZTdlM2Q1NWFhMGY1NjFkNDIyZDJkMmM0NThjYzMgcHkzaworNzg4MDQgYzg3MDM5NmI2YWUxYTExYTk1YTQ1NzlkNGM5NTdlN2EwOTE3N2Q0YSBweTNrCis3ODgwNSA1OWExNTczYjgzYWM0NmIxOGUxODRjN2NiNjk2ODNhYmU1ZjE2OGEyIHJlbGVhc2UyNi1tYWludAorNzg4MDYgZjEyNjgyYWY1NTdiNjFhYTdlMDM5NGYxMzQyNjU1YjVmYjE0YmFiYiBsZWdhY3ktdHJ1bmsKKzc4ODA3IDJhNGU5MmVmZjMwYTc0MmE3ZWE0NTlmODg0MWZiNWMzMjBiMmM0OGQgcHkzaworNzg4MDggZTQyMTU1YzQ3NDk0YWZmZGM2NWI3YzMwMTllODU1ZTAyYmE0N2EwMyBweTNrCis3ODgwOSA4OGQyNjVkZTdkYWUyMDZkMGNkYmJiMjM2OWNjZDZkOTJjZGU2M2E5IHJlbGVhc2UzMS1tYWludAorNzg4MTAgMmVlZjliMGViZDVjZGY5NTg0ZmQ3MWQ3NmNmMThjMDc4NGZiYzYyMyBsZWdhY3ktdHJ1bmsKKzc4ODExIDU2Njc5YWZhZjA3ZGIyYWQ4NjBhODcwMDY1YmVmYjNhN2VkMGU4ZDYgbGVnYWN5LXRydW5rCis3ODgxMiAxZjVkYTU1ZWU3ZDdmMDAyNjY4MzkwMzMzN2FlZmUzZTE0MjNkMGY2IGxlZ2FjeS10cnVuaworNzg4MTMgZTI3NjJmNDk1MzkzNWU1MWEwN2VjOWQ2NWRkNWZkMjg3YmFlNGQ2ZCByZWxlYXNlMjYtbWFpbnQKKzc4ODE0IGJiZjJlZGQ3NTJiNjMyZjA4OTY5NzM5NzNkNDA1NTUxNmY1ZTMzNDcgbGVnYWN5LXRydW5rCis3ODgxNSAyNjlhMTJhNTAxMjNmM2JkOTRjYTRhOWUyZTIzYTAwMzA2MTRmOGRkIGxlZ2FjeS10cnVuaworNzg4MTYgM2M4ZTIwMDA0M2Q2OWU4OWU5YmE2ZWI5ZWFjNTI0MmJlMTM1MjkwMCByZWxlYXNlMjYtbWFpbnQKKzc4ODE3IDU1ZjRkZTVlMzc4YTg5ZWI5Mjg4Yzc4NjlhYWY3OWMxYjZmMjk3MTQgbGVnYWN5LXRydW5rCis3ODgxOCA2NTMzNDMwM2ZkZDNmYTI2NmNkNmIwZDc5NTMyYmVhNzFlZjJjNmI5IHB5M2sKKzc4ODE5IDZkOWJlMWE5N2MxNzIyZTZhOTFkNmIyMTUwMmYxZWE1MGY5ZjUyMTIgbGVnYWN5LXRydW5rCis3ODgyMCBkZmIyMzljNTAwODkyZmVjOTU3N2Q0M2JjODEyNGM1M2U4NGM0ZjQ4IHJlbGVhc2UyNi1tYWludAorNzg4MjEgOWRkMWVjYjVhMjRjMWI0NDIyNzUzMzlhMDJkNTdmYmZiY2M2YThiMiBweTNrCis3ODgyMiBmYTQ2MzA5MTY2OTkwNDYzNTdhNWFjMTY4ODRmM2ZjNDdiZDBlYWE2IHJlbGVhc2UyNi1tYWludAorNzg4MjMgMDE3YWFmZTgzMjZmYWM2ZWExOGRjNzI1ZDM4MTI4ZTlkZTg2NTc4OSByZWxlYXNlMjYtbWFpbnQKKzc4ODI0IDUzMGI3MWNkM2IyOTYxMmU5OGQ2YmUxMDgxZmY2ODNlNTMwYzFiMWYgcHkzay1qaXQKKzc4ODI1IGJjMGNjNjc3MWNhYTc4OTI0MDI5NmQ3NjNlZmYyMTA1Mzc0N2FmNGIgcmVsZWFzZTMxLW1haW50Cis3ODgyNiA0NDY4NjY2ZDAxYzRiYTUxYTY3MjkwMWZjOTcxMGVmY2RlNjJmMmNjIGxlZ2FjeS10cnVuaworNzg4MjcgNTU1MWZlNjY2NzBjMjQ0ZDBkNDUwYWY5ZjBjZmNhYmQ2YjZmY2FhZCBsZWdhY3ktdHJ1bmsKKzc4ODI4IGFkYmIzN2QzZDBlNTAzZDFiMDdiZjY2M2I5MGY3OGU5MmM4ZmUxNmQgbGVnYWN5LXRydW5rCis3ODgyOSAxMzVjZDgwNjRkNmZiODVlODQ5ZjdiYTNjMzlkYTUxODNkZWEzYmE1IHB5M2sKKzc4ODMwIDViNGE2NmQ2MDFjM2E0NDYzMDIzNGVkZDg0M2Q2ZjE5Zjg4Nzg4YzIgbGVnYWN5LXRydW5rCis3ODgzMSAwNTNlZjZlODNjZWQ3YzVkMzg4ZTQwZDViMDVjNmQ4NjMyYzkzMDkyIHB5M2sKKzc4ODMyIGFkOGY2M2Q5ZGNkODAzNDhkMWJlNzhiNmJjZmU2OTVhNTE3ZmE2MjAgbGVnYWN5LXRydW5rCis3ODgzMyA2ZTM3ZTEyNzU4MWI0YzEwMzBjOWMwODc0ODk1MzYzNmFiMDM1NzhiIGxlZ2FjeS10cnVuaworNzg4MzQgYTExMTAyNGEwYmNiNmM3MmQ0MzAxMzZhMjMxMDc3NTNmY2E4NDBhYyBweTNrCis3ODgzNSA4YjI0NmU4NTYwZGI1ZDAxYWU4MWY5OWZlOWRjZWFhMWYzNmQ5NGQzIGxlZ2FjeS10cnVuaworNzg4MzYgZTUzNjdkNjdhN2Y4YWJiNzg2ZjI5NTBlODU4YWRhMDg5MTEwZTU5ZiBsZWdhY3ktdHJ1bmsKKzc4ODM3IGI4ZWRlMGZlZTYxYTEzOWZiZmY3OTE3YTI4NzRiMDY5ODg3ZGQ4OWUgbGVnYWN5LXRydW5rCis3ODgzOCA4MzFlMzBjMGZkNzMwNjg1YWNlMjUzNGFiYjFlYTZmY2JjYmFlNjdmIGxlZ2FjeS10cnVuaworNzg4MzkgOTAzZDNlNjMzYTkyNTdjOTNkODMxZmNkOTBmMjZlYTQ0ZDM3M2NhYyBsZWdhY3ktdHJ1bmsKKzc4ODQxIDA2YWQzMmMwMzQ4NjRiNmFkODk0Y2RlMDExZjliMzIyOWZmYWE0YjkgbGVnYWN5LXRydW5rCis3ODg0MiA5MzQ3Mzc5YmQ1ZmI5N2QzZTYzZTdlNDM5ZjNkOGQxNDAzZjk2NjBkIGxlZ2FjeS10cnVuaworNzg4NDMgYjYyZjc2YWQ0MzBlMjgwMjJlYjc2OWY3NTQyODg0NTMzN2M2YzM2MyBweTNrCis3ODg0NCA0ZGQwOGE1Y2NhOGFkOWM0YTY2NTQ2ZjIxMjJkODBhMmMxYmUzNmJlIGxlZ2FjeS10cnVuaworNzg4NDUgMjAxNjBiNDYxY2QzYWViMzA0NmZhZjk5ZThmZDRhYWEzNTU2NTVlYyBweTNrCis3ODg0NiBlZjQ4ZTQ4ZjA2NmU5OTkxNTczNTY4MmIyOWE1YjEyM2IzNGNmZDIzIGxlZ2FjeS10cnVuaworNzg4NDcgM2VkOTU0OTBiYTlkM2RjNzI4YzBhOWJlZjU1ZjM1Yjc3NjRhMzc4MCBsZWdhY3ktdHJ1bmsKKzc4ODQ4IDZlYTBhNThlZDgzNzY5MDRkYjk5MWJlODU4NmNmZWEwOTU4ODEwMTcgcHkzaworNzg4NDkgNDkxMmNmM2IwMTkwYjM2ZGFlNWI0YWNhNzcwNjI3NzcwNjVkZTE2OSBweTNrCis3ODg1MCBmY2ZlMzI0NjYzYTYxNzE3YTQ5YjU4MmQ0NWU0MTcyMmU1YmM3MzQ5IHB5M2sKKzc4ODUxIDVjNWRlOGFjYjMzYzFhNTExNjkzMGVhODYzOWRmOGMwMjdkNjQzYzkgcHkzaworNzg4NTIgOWMyZDkxOTAxNGQwN2FhZGJlNjE0YjEzODg3MjhhMDc1ZjQ3MzYxZSBweTNrCis3ODg1MyBhNTY2ZTUzZjEwNmQ2MGZlYWJhY2E5MDQ1MjlhZTZiN2Q1ZDBhNzg5IGxlZ2FjeS10cnVuaworNzg4NTUgMTM1YWE3ZWRmNzkyYjgzNzQ5YWZhMzk0NWYzMmE3NGM4NzQ1ODc0NyBsZWdhY3ktdHJ1bmsKKzc4ODU5IDUzOTRkODFjNDUxM2JhYjg3YzJhMzJkODFkNGJlMzZjYTQ3Yjg5ODQgbGVnYWN5LXRydW5rCis3ODg2MCA2MmQ3ZjA0OTcwM2I0ODMwNTc4YmExMGQ3ZGQ1MDRmYjUzZTk4N2ZiIGxlZ2FjeS10cnVuaworNzg4NjEgOTAyN2IxNWY5YmI3NjJhNTc0ZWJmMWQ4YWRmYTQwOTU3ZTYzNzMxMCBweTNrCis3ODg2MiA5OTQ4NzE0NTMyZjkyMTE1YTAwNTQwMjk5ZGU5YjE0ZWNlNGUzNGYxIHB5M2sKKzc4ODYzIGRkNDhlM2YzMmRlNTU0ZjNlYTYzMzM1NGI5ZDZkNmRiZGYwZWJhNGEgcHkzaworNzg4NjggMjM2ZmIwYWY0NDA0OTcwOTY4M2FiYjUxZGYyMDVkOTYwNzUxZDFiZCBweTNrCis3ODg2OSBiMDU2YmM3NjdhZTFlYjE4ZjkyODVhY2IyZDE1YWU5NjEwZjc4ZDIwIHB5M2sKKzc4ODcwIDI2YjE5ODA5ZDgyZThmMzdhNjI1YjE5NDk0OGRlNWVlYzJkMGY0MjcgbGVnYWN5LXRydW5rCis3ODg3MSA2OWI3MWMzMzg5OTI1YjEzNjU4OGIwMDkxMjIxM2QyOTA3N2RjNTM1IHB5M2sKKzc4ODcyIDQyMjYxYzZjYTU2NDMwMWYyZGVmY2JmODEwODU3ZWRhY2IzZmI0YmUgcHkzaworNzg4NzMgMWJjYjQ2NTQ3MmJlNTlhODM2Y2EzNjQ0YzJmYjY3NjVlM2Y2ZjA2YyBweTNrCis3ODg3NSBmNDlkMjRiNDQ1NmVjOWU5NDFhMjg1M2M0MDIzZjEwMmQzZmZjNTQ0IHB5M2sKKzc4ODc2IDA2ZmRjNWUwYzJjMjQzYzgzYzViZTlhNDZmY2RjYjg5MjJkYmFhNTcgcHkzaworNzg4NzcgYzlkZDgyM2MxNDZkMWI2ZjIyZmZjODMxZGU4ZTBkNjY0MzExYjE4ZiByZWxlYXNlMjYtbWFpbnQKKzc4ODgwIGFjNzU0ZmFlYjYzZTg4ZjVlMTFkZDJlZDAxNWUwNGJkNWYyYmY0NzYgbGVnYWN5LXRydW5rCis3ODg4MSA4MmEyMzA0NzE5NGJmZDA1ODZjM2JkNjYwZGU5MWE1MTllY2Y0NjJmIHJlbGVhc2UyNi1tYWludAorNzg4ODIgMDdhZGIwOTQ0MGVmODk2NjUyNDhlNTY1OGE5NDJhOWUxMTFmOGY4YyBweTNrCis3ODg4MyA2YWUwOTBmZDk5ZmUzYjEzMzIwNzI0YjMzNTlkNzdhNTY0OTFiZDBjIHJlbGVhc2UzMS1tYWludAorNzg4ODQgMjczZWI1YzFiOWI5NzM1YWU2M2Y1ZjhhMGIwMzZkOGEzYWFlYTEwZiBweTNrCis3ODg4NSA5MDBmY2FjYzY0MDM0YTE3NGNhOTRjNzEyNmVjNDVkMGM1MzQ1OTQzIHJlbGVhc2UzMS1tYWludAorNzg4ODYgMWUwMWVmOTc1ODk5OWY2ZmNmZmYwMTQ0N2ZhMGRiNzNhNzcxNGJkYSBsZWdhY3ktdHJ1bmsKKzc4ODg3IDc2ZjA3Y2NkN2RiNWM3NWVlYzJmYTZiYmM5M2RlNTVhYmM1NjFmYjEgbGVnYWN5LXRydW5rCis3ODg4OCA2NzI2NDYzNjQ2ZmI0MDg4ZWYzMjMzNzZjZmNmNDQzMjFmOWY3NTIzIHB5M2sKKzc4ODg5IDk4MDgwOGRlMzBjOTFlZjM1OTUyOGY1NzI0NDMyYmQ3YWI5NmYwNDIgcmVsZWFzZTI2LW1haW50Cis3ODg5MCBlNDc0Mzg2ZmY5NmU4ODU5YTk5MmUzOTJjYTMwMjBlZGQ5NDhhM2MwIHJlbGVhc2UzMS1tYWludAorNzg4OTEgZjgwOGIxNmNjZmQ2YWRlMzFhZDUzNGNmN2E1MDdmOGYwMjBjZWZlOSBweTNrCis3ODg5MiBkNmYyMDRkNDA2OTVlYmVmNjEzYWQ0ZmRlZDdmMWQzNGQ2YWEzMWU1IHJlbGVhc2UzMS1tYWludAorNzg4OTMgYzFmYjA3YTU3YzhkNjc5YTMyN2I4N2JlNzE0Mjk4NmMyN2M2MmRkMiBweTNrCis3ODg5NCBjMjFiM2UzMmVkN2I4ZTJlNmE1NDE0NmViNjEzNDVjYzFhOTBhMjdkIHB5M2sKKzc4ODk1IDVkY2MzNjE5ZDZkMWRhODNhMDhkZDQwM2JjNWQzNzY0OTRjOGJlNTEgbGVnYWN5LXRydW5rCis3ODg5NiA2NzM1M2ZiNDA1ZWM5MmJlMTA4ZDU5YjI1MmY3ZGM0YzAxMTA3YjgzIHB5M2sKKzc4ODk3IDIyYzg3NzBmOTkyMzk2YjNjZGExYmVlY2I0MWRkOWZlZDg0NmU4ZjQgcmVsZWFzZTMxLW1haW50Cis3ODg5OCAxZWUyNDUyY2U5NDI2NjE2ZTUyMjYwMTMzMjUwZTQxYjlmNzA4OWUyIGxlZ2FjeS10cnVuaworNzg4OTkgZjQwYTgwODUyNDgwMzViMTcxYjNkNmM3MzM4MGUyYzM3YzhiYzNjMCBweTNrCis3ODkwMCBlMTBkNjFjYTM2OGVkZmFkZmM2ZGI1MDMzZjRjN2ZkZGRhMWFhZWQwIGxlZ2FjeS10cnVuaworNzg5MDEgNzdjNWM5MGJlZWYwMjhkOGM5OGQ0MzA5ZmYwMmI2YzAzNmUxNzA0ZSBweTNrCis3ODkwMiBmNjU5NzdkY2YyMWFjYWQwM2UxZTY0YjQ1NDZjZWY0MjhmODllMmU0IHB5M2sKKzc4OTAzIDRmYmYzZTcwOGZjNDAxYjcxNWY4OTBlMWViOWJiZjdjOWNiM2I3ZDcgcmVsZWFzZTMxLW1haW50Cis3ODkwNCBiM2VlNWZlZDhkYTQ4MTA0ZmQ3OWVhMGNmOTg0ZjJmYTgwYjA3MDhhIHJlbGVhc2UzMS1tYWludAorNzg5MDUgODAyODM3MDk3MTkxNzY5MjZlODQyZmIxMmEyMmQ0NjM1Nzk3MWNiNSByZWxlYXNlMjYtbWFpbnQKKzc4OTA2IDkwZGFhMDdhNDNiZmU5NDdiZDVjMjQxNzM1ZTkzYzdhODQ1ZTEyOWYgcmVsZWFzZTMxLW1haW50Cis3ODkwNyA1YTE2YmY2ZGE5ODkyZjg1ZGFjYjEzNjViNjIzYjhmMDhiNjdkYzVkIHJlbGVhc2UyNi1tYWludAorNzg5MDggZjI1NWE0NmIzMTVhZjYyOTVkOTUxNzQ3ZDA1NzIzNTc1NDZjNjc5OCBsZWdhY3ktdHJ1bmsKKzc4OTEwIGRhOTRmMTY2NmRhMThkMTdjMmE4YzU3YjU2ZTA0Mjg1OTc3NjFmYWQgbGVnYWN5LXRydW5rCis3ODkxMSA1NWVjZGI3OWM2NjAyZGQ2ZTRmZWZiZmMwNGJiZDliNjE5YWRiNGU1IHB5M2sKKzc4OTEyIGIxYjIyYzYwMjIyYjQwMDJlYTcwZTNmN2MwY2NlOTUyODYxNmRlNWUgcmVsZWFzZTMxLW1haW50Cis3ODkxMyA0NjA4MjNjNjc1Zjg5MzhiYjFmNTRhZTllNzVjMzU4M2Q1MTdjNWEwIHJlbGVhc2UyNi1tYWludAorNzg5MTQgNDNjYTY3YmQ3MDBhNjk4MTAzYTY1MmJhMjE1MGMzZmNkZWQzYTM4MCByZWxlYXNlMjYtbWFpbnQKKzc4OTE1IGFkMDE3ZDFiODA3MmUwZmE4OGQ2N2I2M2VhZGE0MzA2M2NlMGY4MGIgcHkzaworNzg5MTYgNWE2ZTg5NzA2NGQ2YmIxOTIwODU5MWQ4ZDUwMzRhM2UwZTJjNjFkYiByZWxlYXNlMzEtbWFpbnQKKzc4OTE3IDZkNWFiZmY3ZmMzMTM5OGIxZGZjNmViZGMxMWNiZmYxN2UzZWY2MTAgbGVnYWN5LXRydW5rCis3ODkxOCBkMWVkZjI4MjQwMDgyNWYxZDE0YjFjOGZlNzJhZWVkY2NlM2Q0YjUwIHB5M2sKKzc4OTE5IDI3YWE0NmQwMjE0YWJjMDA2NDQxMDBhMzk4ZjFmNWI3MWQwMzZlYzAgbGVnYWN5LXRydW5rCis3ODkyMCBhN2I1OGYxZThhZjA4NWQ4NzQ1ZGI4N2M2ZDFjYjRjYTYxOTRkYTY0IHB5M2sKKzc4OTIxIGI4NzhhMGFkNGQ4YzZiNGNiNjVkYTgyYzY1ZDc1YTkyOTBjMWI2ZTcgbGVnYWN5LXRydW5rCis3ODkyMiA1MWQyNmYzMWJjZTk1NTJiNjIyY2NmNWUwZGVmZjU4MjJlNWM3MWQ2IGxlZ2FjeS10cnVuaworNzg5MjMgZTFkNTFjZDMxNWQwODUzNDE2YjZhMmRjZGRiYTVmMjVlYzI0OTdmZCByZWxlYXNlMjYtbWFpbnQKKzc4OTI0IDMyYzVhZDI5NjYzY2RlMzc0MmNhZDEwOWJmMGUwYTJlZDM0N2I5OGUgcHkzaworNzg5MjUgMTllOTY2MGQ5YWE1MTJmZTM0NmJhNDI0ZjUzNTU3ZjkxNjgzZWM5ZCByZWxlYXNlMzEtbWFpbnQKKzc4OTI2IGU4MDhmYzU0OGNkNjY1YzlhNjE0MmU1MDgyODdiNmFhYzQyNDE3MjkgbGVnYWN5LXRydW5rCis3ODkyNyAwMDI2ZTQ0MzYyZTU3ZDA0ZTU0ODViNGJhM2RhMWM0NmNmZmZiNzI1IHB5M2sKKzc4OTI5IDY3NzRlOGM2YzM5ZjM4NGNlNTdiOGY4NTBkZGI2NWRlMjc3MTE2YzUgcHkzaworNzg5MzAgODU5Mjk2YTcwOTJmMGNiYjZmMWMxMmJlMTJkY2MzZWZhY2NhZDRmZSBweTNrCis3ODkzMSBlMGExNzcwZGY1Mjc4NjEyZWRlYzQzM2I0MTE1ZWI4OGFlMTE2NDgxIHJlbGVhc2UyNi1tYWludAorNzg5MzIgNzI4ZWYwMDcyZGFmMjJkODlmM2M4MzE4ZmZiOGQ4NGJmYzJkODNjZCBsZWdhY3ktdHJ1bmsKKzc4OTMzIDI5MDlhNGNiMWJhNzJmMTNjZDUwMzk4NDM3NGUxYTcwOTQxMDI1ODAgcHkzaworNzg5MzQgYWRjMzkwZTY2ODkwNDAxZDc2MWYxNzc0ZmMwOGI1Njc3ZGVhYjk1YyBsZWdhY3ktdHJ1bmsKKzc4OTM1IGNjMTMyMTIxMmU3MzQ2MGNiYjFlNWU5ZDkwNzAwZjlmOTYxYTM5ODAgcmVsZWFzZTI2LW1haW50Cis3ODkzNiBkNmUyN2ZhMjJmNDJhMjY2YzY2ZWViNjM4ZDA1NmNjMDJlYTFmODFiIHJlbGVhc2UyNi1tYWludAorNzg5MzcgNWZlNWEyNmUzMTY5ZTg5Y2RhOTU4MGJiZjg5ZjM3ZmY5OWFkNjc1OCBsZWdhY3ktdHJ1bmsKKzc4OTM4IGQzOTA1YTlmNDBmNDA1OWQyZDViOTdiMjU3N2Q1MTJjN2ZmZWJjMzcgcHkzaworNzg5MzkgMGI0NTdmMTQ5NzYxZGI2YWFmNzBjMjhkZTI1MDViMGVmMjRlNTMwZiBsZWdhY3ktdHJ1bmsKKzc4OTQwIDFhODEwY2UxM2RiZDdjNDNiYzdiNzMyMzM3OWNjNDVlMWI3NTIzZjkgcHkzaworNzg5NDEgOTY5NjkzMmFkODI3NWU3M2ZhOTdjNTA4MGE2ZWFiMTFlNmNhZTNhOCBweTNrCis3ODk0MiA3YTE4YzI3NjI4ODYxNjU0MzA5YWRkYTQ0M2FhYzhiMjc2Mzg3YmU1IHB5M2sKKzc4OTQzIGQzMGViNDIyYzU2NGJmNjFhMGMzZDgwZDA4MjIxZjlhYTIwNDIxNjAgcHkzaworNzg5NDQgNDYxYjg5Yjk1NTVkMGNhOTMyYzU5ZjQyMTNkMWUyODUzOThiMjIzOSBsZWdhY3ktdHJ1bmsKKzc4OTQ1IGYwOTdmMmJhMjMyOTM3MjczMzNhNmZiOThlNWFjNWMzY2MxNGU2MGMgcHkzaworNzg5NDYgNzY4NzIyYjJhZTBhNTk4NDA3OTBkZTE1MDI1ZGQ1NzdiYTIzM2JjNyBweTNrCis3ODk0NyAzNzJkMWRlODZkZTlmODYzMGRlNjg4NmM5NzkyZTYwMzhiYzU1OThjIHB5M2sKKzc4OTQ4IDNkNjgwOTQ5Zjc1NWQ4NmJhOWFlNzEyMzRiNTMxODUwMjQwYjdhYTYgcHkzaworNzg5NDkgZjEyNzBlMDBmNTg3ODc2YzNjYWYxYWVhNTY5N2YwYzQ0MzA0MjgxYiBsZWdhY3ktdHJ1bmsKKzc4OTUwIGRmOGY4MWRmODU5NWNlNWY5NGQ0YjUzYjRkOTFmNjgxMjlmNjQ1NDYgcHkzaworNzg5NTEgMzA4Y2ZmN2RmNjRmMTc0ZWRlODY5YTM2YWJiOTBlMGYyNDM1Nzk3OSByZWxlYXNlMzEtbWFpbnQKKzc4OTUyIDQwM2QwYTI3YmQ1NmVlNTUzNjRjN2NmZmM0YWI4MGYwYjQwOTM5ZWEgbGVnYWN5LXRydW5rCis3ODk1NCBlN2YxMWY0NGQ1MTQ1NWY0MmNmMmU4NzhkZGMxNGQ4ZDUzOTY5Y2I0IGxlZ2FjeS10cnVuaworNzg5NTUgNzdjNzFmMjU4ZGY3Y2E3NWY4NWI0OTg3YjUzNTk3NzI2Mzg0YTVmZiBweTNrCis3ODk1NiA1Yjc1NGU4ODI4NTdjZmQxYjMzNDVmNDMxMmRkODgyNTlhM2NhOGUyIHB5M2sKKzc4OTU3IGI5M2NmYWZjZGNhZDdjMzNjYjk1MzY4OGQwZTExMTU2YWQzMGViYjEgcHkzaworNzg5NTggOWNmNzAyYzkxYTllOGFlZjg0OTNmM2E1ZjUwZjc0NWI2ODVmYjBiYyBweTNrCis3ODk1OSBlN2I1ZmM4NjQ2YWJmYTkwMWU3MmEzM2FjMzk4YWY5ZWQ1MmVkNzY5IHB5M2sKKzc4OTYwIGM4Y2NiNGUwYzZmZWE3ZDNkMDMzZDJlN2JkNDY1OTg4ZjJlNWRmNDYgcHkzaworNzg5NjEgYzQ1ZjIxNzA1ZWNiNzllMzQxYmZiNGMzOTNmMWM1NzUyM2I1MzZiMiBweTNrCis3ODk2MiA4YTkwOWU2ZDJjYWZhNzkzZWZlNDdiYjQxNjIzNTUwMDM3YTNhYTY3IGxlZ2FjeS10cnVuaworNzg5NjMgYzE2ZTA3NTVmY2Q3ZDA3OGQ0NjUxNDk0NjU2NmIwYjk0MmUxYzk2MSBweTNrCis3ODk2NCBiNTcwYzViOWIyZWYzNTQ4NDM2N2U1NjE0NTMwMTkwOTlkYjRiYWMzIGxlZ2FjeS10cnVuaworNzg5NjUgNTllMjIzYTA1NjgwZmEyOTFiZmQzM2UzMTMxYzY3NDE5NzVhMDIxMyBweTNrCis3ODk2NiBkMzYwZjM3YTRiNTk1ZmI5YTM0NTMwNTc1ZDFmZTQ1ZTk2ZDc2Mjg4IGxlZ2FjeS10cnVuaworNzg5NjcgOGYxOTkzYjg2NmY3OTAyMTQ4MDFjMGNjMTgxZDRiMzBhYjdiOGMyOCBweTNrCis3ODk2OCBlZWZkNTIxZjE5Y2UwNWYzOWY3NGIwMmM3MTkyYjZiZjJhODBjYjBjIGxlZ2FjeS10cnVuaworNzg5NjkgYmIwNmFhOTE4MzgyMWQ0NTIyN2IzODJmOTcyODBhZTBhOTZiMDJkMyBsZWdhY3ktdHJ1bmsKKzc4OTcwIDA4YzU0NzNiZWRjYzM5M2VmZTU0ZjJlY2E1MWUxMWE4YWMxMTE5OGYgbGVnYWN5LXRydW5rCis3ODk3MSBlMWRlMDgwYzQ1NTZkMzk1MDAwNGI2NDM0NThiYWE0YzA5ODlhZWExIGxlZ2FjeS10cnVuaworNzg5NzIgYjc0ZjFiYjg4ZTYwOTRmMzMzYjgyYzc4YzZkNWE2YmRhMjJiMWQ0MyBsZWdhY3ktdHJ1bmsKKzc4OTczIGFkYjVlOTI4YmRlMjBmNzJlNjU2MWUwZTBmZmUwYmNkMmZlOTc1NWEgcHkzaworNzg5NzQgMzhmMmY1MjYyYjIwM2FkNTZmMTA5ODBkNmE3NWI0YWIwODUwYWU2NCBsZWdhY3ktdHJ1bmsKKzc4OTc1IDM3YWQ0MGEyOGQzYmY0MGI5YzcwMjBiZTRkZTk0OTYxYmFhYThlMjIgcHkzaworNzg5NzYgOTVmMjFiMmMyMTZjMDhmZGQ5NmIxZmI2NTA5YjBkY2IxZDg2NDBlZSBsZWdhY3ktdHJ1bmsKKzc4OTc3IDhlMzhiN2JlZjcwMDA0MmZmNmNlM2ZhMGFmOTU4YjUyZTAxOGVjNDEgcHkzaworNzg5NzggZGIzNzlhOTBiNDZlNDA0MDJkNDUwYjA0ZmIwZGFjYjZmYzY5MDU2MSBweTNrCis3ODk3OSA3M2U0MmMwZjVjOTllNTIxZmRiZjFlODA5OWM3MGZjM2ZjYjkwMjE4IGxlZ2FjeS10cnVuaworNzg5ODAgYjg5MDBhMWQ5ODM1MzA4OGM1MTBhYjE2MTI2NWRhZjQ0ZjU3NGY5MyBweTNrCis3ODk4MSBhMmRiYTZmZTNmYmU1YTg4Y2FhMjI0NjRhZjUzNjc3YzJiMzEwMDY4IHJlbGVhc2UzMS1tYWludAorNzg5ODIgOGFhNTUzMGU4NDA3M2Q4OGZiYWViZDMxNzdlODIxYWVjYzc4Mzk3MiBsZWdhY3ktdHJ1bmsKKzc4OTgzIGVlYjliZjE1MjViYWM4YWFkZGMzNTAwY2NlNDQ3Yzg4YTE4ODI5NmEgbGVnYWN5LXRydW5rCis3ODk4NSBjMTliNGJmYjgwNmFhOGMxNTE1ZDgzN2YxZDljNDgxZDE4NTFjYzEyIGxlZ2FjeS10cnVuaworNzg5ODYgYzRkZDMwYjVkMDdlYWNmYjNlYWVkNDQ3ZTg1YTllMTE1YzY3N2RjZiBsZWdhY3ktdHJ1bmsKKzc4OTg3IDU5OTMxMTc5YzVlMmM1ODIzZDE2MmQyNzYwYjdiYzI4NThhN2Q0YTcgcHkzaworNzg5ODggNzk4NDVlM2Q1Y2FjMjFlNWVhMzY2ZDhkYzZhMTE0OGJjY2ZkM2UyYiBsZWdhY3ktdHJ1bmsKKzc4OTg5IDlmZmM4ZjA1MTVjZGVjNjA4NGZlNWVlMmE4MWQzNzVmMDY4ZGE2ODEgcHkzaworNzg5OTAgOTIzYzg3MzljYTg2MTc0ZmVmOTI0OGQ2NTBlODQwMTczMjJhN2I2MiByZWxlYXNlMzEtbWFpbnQKKzc4OTkxIDg1Mjc5OWJiM2ZiMTNjYzFiYTc1YjQ4MTUxMzc1ZjcxMzYzMTUwYjUgcHkzaworNzg5OTIgNDI1NzJlMzQ3MTA4YTJkMWRkNzUzOTVhNjcwNjM2MjhiNDdmNmNkOSBweTNrCis3ODk5MyBiNDUzM2I1ODBmYzllYzFhM2RhNTU1ZjVhZDgzOGQ2NDhmMTNmNzFlIHB5M2sKKzc4OTk0IDc0NTE0MDAwZjgzNzVkNjQ3OTk5ZTU2ZDYzMDIzZmZlMjhmOWVlNTEgcHkzaworNzg5OTUgNjYxY2EwYjA1YTMxZTc1NWJjMzFlYjBiYTIyNzU0MTY5MjRmYWY1MyBweTNrLWppdAorNzg5OTYgYmY0YTRhY2VmYjJmODcwOGIzODkyNjc2OTRkNzlmYjQxYzBmNWUzZCBsZWdhY3ktdHJ1bmsKKzc4OTk3IGM5NjZlNmZkNjE3OGIxM2RkNDM3ZTZjNThkYmViNmM1OGVjOThlNDQgcHkzaworNzg5OTggOTViMjY5Yzg2OGRhYzk0NWIxYWNkZGVhNmI0NDNlZWU3MjRhZmQyNCBweTNrLWppdAorNzkwMDkgYWE2MzI5NDNiOGJkZGFkMTEyZWE3MGEwZTVlYjQ5NmE1Njk0YmUyNSBweTNrCis3OTAxMCA5N2I2NjJiMTBmZjgzOTBlNDE5MTc0Y2NhYWJhZTY0NmUxOWJlNzhlIHB5M2staml0Cis3OTAxMSAyZTE2Yzk2MzQwMWRlMDNiMDY5ZWM3OTNjZTAyYTIxYTcyNjY3YjRiIHB5M2staml0Cis3OTAxMiBiYzY1Yjg2ZmFlOTQ2MmU3ZDhhNmJlOGY5M2QxMWJkNmVkYzdmMGQ1IHB5M2staml0Cis3OTAxMyAxOTBlYWRhZWFiYzUyYWQ3ZGZkMjUzMGQ3NTY2ZDFlOWE2MzdiNTJlIGxlZ2FjeS10cnVuaworNzkwMTQgMGYwODA5NjFlY2VmMTMxYjA0ZjIzODJmNDlhNjhhMDBiYjZiOGY3MiBweTNrCis3OTAxNSAzYmUzYWMwMTliZGIwNGU0MzkwZDE5NjE3OGI3ODhkMWFkNWQzNzJlIHB5M2staml0Cis3OTAxNiAyMDY0YmY2MmEzOWY3ODY4YjNjMzc0MGE5NGQwNTIzYWYxMjk1ZjIzIGxlZ2FjeS10cnVuaworNzkwMTcgYmFjNzJmMTFhOThjNTZjMzYwNzhlMmVkZTMyYjA1MWE1ODA4N2U1MyBweTNrCis3OTAxOCAzMGYyODMwMzllMGU5OWE3NTdkMDgwMzAzZTAyODhiMWFjNDVhMTVjIGxlZ2FjeS10cnVuaworNzkwMTkgNDQwN2FjNGM2MzYwYmU0MWYwYmVhZTc5MDNjYjQ5NmYyYmU5NTEwYyBweTNrCis3OTAyMCA1OGUzYmMyMWMyZGQ3MDFlYjQyYTU3NWM3ZTBhYjA1NjFmZDM5MzBmIHB5M2sKKzc5MDIxIDcwNjU1OWQzYWM1OTA4ZWNhYTdkNDcwZDg1NjE2NjVkZTFjZDliYWYgcHkzay1qaXQKKzc5MDIyIDY5YzBkNWVhMmUxZTNjM2I0NzBlOGU0NmUzZDc4ZjAzZjgyM2E2YzMgcHkzaworNzkwMjMgNWI4ODhmNTkwZmUyNGNiMjM0ZTEyNmZjNGNmYmRjYTEyN2NjN2JmMSBsZWdhY3ktdHJ1bmsKKzc5MDI0IDU4Mjc4MGVkZDBlODhhM2JjNjUzMzY2OWUwNTBlNTcwNDZlMzJkN2MgbGVnYWN5LXRydW5rCis3OTAyNSA4MDM4YWYxZTIwNjU1ZWI2MzNjZTY4YjQxOTBjYWFjNmY0MTQ4ZGNlIHB5M2sKKzc5MDI2IDhhNDY5M2Q1MTdmZWNmMWEzYzg0OTE1NzA3NzI0MDYzNjkwYmU5OWQgbGVnYWN5LXRydW5rCis3OTAyNyA3ZjE2MmEzMDk0OTc4NWQ4YmUxMDE5M2Q4NjM4NGQ3ZDNlNmQwZDliIGxlZ2FjeS10cnVuaworNzkwMjggMzQ2NTgyZjg1ZmFmODg0N2Y1YjJmNWIxZDkxYTgyZTVmZDY4MzU0ZSBweTNrLWppdAorNzkwMjkgMTBiNzYwNmE5M2VkMDM5MWEyMzM1NWVjMzQwM2Y4ZWRmYzNkMWRlYSBweTNrLWppdAorNzkwMzAgOWI0NjI1NzAwMjUxYjc0MDA2Y2YyNDVhYmNkZjZkMDJkODhjZWIxZiBsZWdhY3ktdHJ1bmsKKzc5MDMxIDdkZjNlMTNkM2U1MDllMGYyYjA5OThjYzdhYzk5YmQ2NzE2N2NjYTcgbGVnYWN5LXRydW5rCis3OTAzMiA3NDA5YjVhN2M4MWE2ZjA2MmZlNzM2NzQ4MWQwZjU2MTgzMGE3ZGVhIGxlZ2FjeS10cnVuaworNzkwMzMgODBkYzRkMTMxZDg1ZGQzMzEyMGY5ZWFhZWQ4MzlmNTFhYjY4ZDI4MyBweTNrCis3OTAzNCBiODc5MjA5YzIwMmZkMzMzODgxMDJhNGUzNDk4NmE1MjVkZjZkNGExIGxlZ2FjeS10cnVuaworNzkwMzUgNTI0NzllMDQ1NGU5MGNmY2VjOTNlMzMyYTI5NDRiMDY2ZWIzZjE5OCBweTNrCis3OTAzNiAwYWMxOTE5MGE3MTBmYTc3MzRjZGZjNmY0YzNkNjNiNGYzN2ZiMTQ2IHB5M2sKKzc5MDM3IGUzYmUxZjFhZDYxZWUxMTUyZWUyM2ViOWZjZjY0MTJmODkzZjNhOGEgcHkzay1qaXQKKzc5MDM4IDUzMWQzMDIzYjQ4YjdjZWQwMzQ4ZmQxMDYzYmU4MjAyZDg5MjBhZWMgbGVnYWN5LXRydW5rCis3OTAzOSA0MzVmYTIxNWQzM2YwOGE2OGI2OWQ4NWQzMDFmMjcxMDJkMDNmMmI2IGxlZ2FjeS10cnVuaworNzkwNDAgZDYyY2ExZWFjY2I5ZGFiZjdjZDE1NGM1N2QzNjlhNzYxNjZlODgxNiBweTNrCis3OTA0MSBlYTI3OGQ5YzBiMmFhMzNmMzQ4ODBhYzgyZGYxYjIyYmI0OWMxYzZkIHB5M2sKKzc5MDQyIGIxYWU0ZjgzNzdmYjZlMzFlNTBkYTU0YWYyZWM0YzE5NDYzY2Q5NWUgcHkzay1qaXQKKzc5MDQzIGY3MjIwY2ExMTM2M2M5YzdjYTMwMzhhNTg2Yjc3MjE0NWIxN2RiM2IgcHkzay1qaXQKKzc5MDQ0IDg1NTVhNGNiN2M0Y2I2MzY4NGY0NDk0ZGJkZGQ2ZThkOWIzNjE2MzggbGVnYWN5LXRydW5rCis3OTA0NSAxNWJkYjk0YzgwNTVjZGU5YTAxZmI3NzAyYTI2MzU2YTdmNjRkODBlIHB5M2sKKzc5MDQ2IGJmZTllZTAyZjRjMDdlMWNiNzE2ZTAyZDc4YTMwMDdmMmJhNWFjNDkgcHkzay1qaXQKKzc5MDQ3IGExYjZhNTRlMmI2YTUxYzUzNTdkNDMwMjFmOWNiYWUzYTFiY2U0NzcgbGVnYWN5LXRydW5rCis3OTA0OCBkOWVjNGM4Y2U2OTU0MmM1ZmE2M2VlZDAwYWE3NTdhOWVkMzhmMGZjIHB5M2sKKzc5MDQ5IDc2ZjllM2I2YzU4NGU0OGMxZDhjOWY0MjEwOWFhNjM0YWIzNzU1NGYgbGVnYWN5LXRydW5rCis3OTA1MCA0ODVmZTIwZGFiMTIxY2I0NjkxNGRmM2FmYTVhNTMwM2I0OTYxNzRiIHB5M2sKKzc5MDUxIDQyOTQ2MmQ0Y2EwYzIwMGM1ZDIyM2JhYjE3NjZlMjkwNGQ5N2NmNzkgbGVnYWN5LXRydW5rCis3OTA1MiA0NjE4M2JmNGYxNDM2OTA1YTk1YjkxYTg4ZjBmOWI5ODNiMzgyNDdjIHB5M2sKKzc5MDUzIDQ2NTY4NDZhODliMjY3NWEyNzUzY2RlNzFkYjMxNDBjNTg2N2FjZjggcmVsZWFzZTMxLW1haW50Cis3OTA1NCAyY2ZhNDQ5NzE4OGZlZjQ1NTBiNGQ1YWMwY2NlN2JhM2U2NWFjNzRmIHJlbGVhc2UzMS1tYWludAorNzkwNTUgZDFkYmU1ZGYxNzkxZjI5MTg2Yzc1ODE3OGZhNzBjZTNiOGNkZTRkNSBsZWdhY3ktdHJ1bmsKKzc5MDU2IDg3MTI1ZDc2NDdkNjg1YjEzYWY3NjY4NWIzYzdkNGFjYzIxZTZmMWYgbGVnYWN5LXRydW5rCis3OTA1NyBkN2I5ZTI5NDFlMTQ1ZDdkZGRiYTEzNDhiZWJjNzAzMTYwMjIwNjJiIHB5M2sKKzc5MDU4IDI1ZGU3MTY3YTA1NThmOWEzNjAwMjM4NzY0MDM5ODM2MDQxZjYwNDEgcmVsZWFzZTMxLW1haW50Cis3OTA1OSAzNDRjYjZhNGVmN2RhZDdiZTQ3MTM4NWM1ZDlmMzE1YjMxZTczMDFlIGxlZ2FjeS10cnVuaworNzkwNjAgMjJmNTg5YThlM2FiOThlNmFhYWQ2NjNmNTEwZmU2YjA0ZDE4MWU3ZiBsZWdhY3ktdHJ1bmsKKzc5MDYxIDNmNGM3YzRlZWY2MmFmODIzYjIyY2I2YTNhOWNlNWNiYzBmNzc0NTEgcHkzaworNzkwNjIgMDM4NTJlYjA4ZGIxNjE0Njg4Y2E2YjcxNTBhNjE1OGEyOGU2MmQ4ZSBweTNrCis3OTA2MyA5OWFmNGI0NGU3ZTQ5MDM5MDgxN2E1OTdhNTQyNTQ2ZDc0OWU2OThlIHJlbGVhc2UyNi1tYWludAorNzkwNjQgMTZhYWIwMmVkOTljNjdlYzI2MmI5N2EyOThmMzI3YTIyMmM1OTJmMyByZWxlYXNlMjYtbWFpbnQKKzc5MDY1IGE1ZGIwZGYzMjM4MjA5NDNkNjk0YTYwZDkyMzVmYjE5ZDU2ZDQxZWUgcHkzaworNzkwNjYgNzJhODA5ZDE2NWY0MzZjYzkwOGRiMTdkOTlmOWZmYTBhMzZkZWVhMCBweTNrCis3OTA2NyAxNWI4N2VhMTQxM2Q2ZTgwMjBkM2NjNWQ2MDc2ZDM0YjJlNmIzYTUxIHB5M2sKKzc5MDY4IGUxNWE4YTQ3NjQ5NGJiOTQyYWQ4ZDQyYTMxZjUxYjExMzc4NjMwNDMgcHkzaworNzkwNjkgNGYwOWQ1YjE0NzVmZmFjMzU2NjAzMWYwNjdkNzg3ZGZjYTZhMmFiOCBweTNrCis3OTA3MCAzN2IxYjkwZGU1YzE1NWQ5M2IzYTAyODVlMjNmZjExNDdiZTljNGMwIGxlZ2FjeS10cnVuaworNzkwNzEgZWVhNzJiODFhMjNjNjVjY2JmNjA1Yjg2ZGE5ZGRjMDJmNDFlYTQxNSBweTNrCis3OTA3MiA5NmVmZWJkYTRlYTJjOTZkMzFlYjY2ODVhOWRlY2Q2YTFiYTY3YzMxIHB5M2staml0Cis3OTA3MyBmYmMzZjE2OTFhZDg5ZDVjNDgzOGEyNjUzZmRjYTkxNmY2YWYyZmUwIGxlZ2FjeS10cnVuaworNzkwNzQgMGIxZTUyMjgwN2YyYzdiMWRkMTcxYTcwOGZmMTNhYzMyMTEwOWI0ZiBweTNrCis3OTA3NSA5MTAzODU1YjgyNmJkNDc3NzI0NDkwNjY2NDA3M2Q5ODk5ZTI0NWFmIHB5M2sKKzc5MDc2IGI4YjQ5YzgyM2ZlNDQ1YmU4ZDhiZTIyYTM1YWYxNzMyMDk4Y2NiNWYgcmVsZWFzZTMxLW1haW50Cis3OTA3OCBhMGE2N2MyZmI3ZmY2ZTQwMzk5MGUwYTliMjFhMWU0ZGEwODg3NWEyIGxlZ2FjeS10cnVuaworNzkwNzkgOGZhMTI4NGNlMDBlNTkwMDI3YTQ0ZTVlMmY0NjA4MWRhNDEyZGI3NSBweTNrLWppdAorNzkwODAgZGQxMmY3ODhhNTQ0ZGY2NmYwOTE5MDg3ZjcxZTVkMzY3OTlkOWZlNSBweTNrCis3OTA4MSA0NzFkMDdkMmEyM2Y1ZWY3ZWQyOGJhYTkyNDk2ZTM1ZmY4MGMzODg0IHB5M2staml0Cis3OTA4MiBhMjQxZTQxNTg4ODIzZTcxMWJmMWQzOTc5ZmEyZjQ2YmZmZDVjMDc5IGxlZ2FjeS10cnVuaworNzkwODMgZDk0NDExNDAzMDkzYmIwYmM3ZDgyOWU2OWU3Mzc1NDE4N2QyNDZjZCBweTNrCis3OTA4NCA3N2Y4NTNmZTNjZjI2MTQzZGVhNTk4MjNlOGZmZmE1MDVkMTQ2ZWU1IGxlZ2FjeS10cnVuaworNzkwODYgNTBlMDZiNmFiOTU2NWRmNjdhMmVlYjBmMmE3MzVlYWNkNzUxNjkzYSBsZWdhY3ktdHJ1bmsKKzc5MDg3IGQxYzNhYmM4ZTBjMjljNjBjNzZlNjc0OWI4MmQ0MTlmOTZiZTg1NzQgcHkzaworNzkwODggNzkxYmEyMDFiYWE5Nzc2YmZjMjhjMDAyNDIzMTAyZTU3NjUwYTUzOCBweTNrCis3OTA5MiA0Mjg1ZWEzM2E1ZGZlNTIxZmJjMDFmNmFhMTcxNDdhMDExMDBiMDVhIHB5M2sKKzc5MDkzIGI5ZmZhOWZkMTAxYjViOWM0OWMwMzgyYzY1MjQxNGJiOWUzYWE4ZjIgcHkzaworNzkwOTQgOGEyOGJlNDVjMjQyM2NiYzEwNTAxNGUxYjM4Y2E5YzU4ZDYyZjY2MiBweTNrCis3OTA5NSA1ZmJkOWM2Mzg5Yzc1M2FlMmMxMzAzOTU5ZjA5MmI2YWM1NzhiMGQ5IHB5M2sKKzc5MDk2IDRiMzU2YzFiMjVmNjZkOTA5YmFjMzJjMGQxNzAzYzgxY2I5ZTZlNjMgbGVnYWN5LXRydW5rCis3OTA5NyAwMGRhYThiNzM2Y2M3ZmM1YjgzMWFjZmJlOGZjYWU5ZmU0NGU2ZTU1IHB5M2sKKzc5MDk4IGI2Mzg3ZjQzY2RkYmQ5YzNjZGRhYjhhMGZlNDc5YjRjY2YwMDE0OWYgbGVnYWN5LXRydW5rCis3OTA5OSA5MTQzMWIwNTg0NzhlYzE4NTg2N2M3NWM4ODA2ZDFlNzA1YWFjMjE4IHB5M2sKKzc5MTAwIDA3Yzc2NjRmMjFhMTg5OTE5NjUxNGM4NTEzYzAzN2MwZDYyNWNmNzcgbGVnYWN5LXRydW5rCis3OTEwMSAyNTEyYzJhZDVkZTcwNWJiNjE0YWRkMmZlNjAyMjgwNjA1NmFiZDQyIGxlZ2FjeS10cnVuaworNzkxMDIgNDU4N2UxZjc0ZWQ4NWQxMjhlNTI4ZTc3ZDMxYzYzYTQ4MGI1ZDM3NiBweTNrCis3OTEwMyAyYjFiMDM3OTcxOGI0OWQ3NzJhYWQxNjM1YzdhNjRiOTQ4YjFkNzBkIHB5M2sKKzc5MTA0IDYzMGNlNjJjOTQ2ZWY0N2FjNDQyZmVmY2JkMGE2NzNmMGU1MTExZjYgYnJhbmNoX2xpYmZmaS0zXzBfMTAtd2luCis3OTEwNSA4M2E3Njg5ZjFiYjVkMzMyYWRhOTU0M2JkYWY1NTBjZmU1NDAyNjhkIGxlZ2FjeS10cnVuaworNzkxMDYgOTk2YTMxOTIwZDQ4YzA5MDc4MWE1NzJlMGU5NDFlMDY5M2ViOTg3MSBsZWdhY3ktdHJ1bmsKKzc5MTA3IDE4Zjk0ZTIzY2E4MGE2NzQ3ZTU5YWZkMzMwNWU5NWI2ZGM0NjI3MTEgcHkzaworNzkxMDggM2Y5MDUzNTk4Y2EwZDU3YjczZmU5MWNmZDQwMzRmYzM4YTIxMDFlYSBweTNrCis3OTEwOSBhOGUzOTc3OWZlZGYyNGU3YjYwNjE0OGY1OTA4ZjZmMzYwNzUzNzJkIHB5M2sKKzc5MTEwIDJkNjgzYjhlM2Y1MDJmODYwZDE5MDlmM2M2NGEwYjFjOTM0NjlmY2QgcHkzaworNzkxMTEgNDc0MWY2ZGQ3YzY5YTBiMjk0MTEwM2JkYzU3NjY2YTE0OThiMjc2OSBweTNrCis3OTExMiAyMjQ1OTFiYTZhMTg0Zjk0ZGMyMWRlYWI1ZmY3NDU1YmEyMTA2NWYzIHB5M2sKKzc5MTEzIDFlMGQxOGU5ZjhjMWJjODliMjY4N2M0YTljZDgyMmNiOWJiNzdmMmMgcHkzaworNzkxMTQgMGYwMGRhNjkwNGE2NTc4MTUxYWVlMjAyYWU5YWZiZGVkYmE3ZDVjZSBweTNrLWppdAorNzkxMTUgOWFiMDdhYmUyMzBkYjk4YjE4ZDQ2ZmUyYWUwYWUyOGQ3Zjk0YjZhNCBicmFuY2hfbGliZmZpLTNfMF8xMC13aW4KKzc5MTE2IGU0MzIzM2Q4MDA2NGY1ODNkY2JhODFmNWU5NzZmMTIxMjRjMjlmN2IgcHkzaworNzkxMTcgMDJlMjE1NzZkYTAzNzczOTBiNGJhOWQwZWM1MmU4MWEyNWQwYmQ3ZSByZWxlYXNlMzEtbWFpbnQKKzc5MTE4IGMzYzdhM2JlNDBiMzU2NmUzMWIxMjk1YWRiNGIzZjAyZjAxNTVlZTcgcHkzay1qaXQKKzc5MTE5IGFjYzNlMzU4M2ZhYzk4OGEyNDJmOTg1ZDU1NDVkODYxYTNkMmUwYmMgcHkzaworNzkxMjAgOWZmMTAzNWY2MjM2NWViZjBkOGVjNTY0NzMzMmVmZjM1ODY4ZGI0NSByZWxlYXNlMzEtbWFpbnQKKzc5MTIxIDNkMzhjMDAzMmNlYWE5NWZiZGZhYTkzOWZhODMwMTE1MzRjZjJkMjcgcmVsZWFzZTMxLW1haW50Cis3OTEyMiBmMGVmYWFiMDQzODE5YWI1ZmY3ZDAxZjZmYmQ0MDM2NjdlYzVmOGMyIHJlbGVhc2UyNi1tYWludAorNzkxMjMgZmU0MTE1NjkyZjc2YzEwNmM4OWI2YTIzM2NhNzQ3ZWNlZTFmMmRmMyBsZWdhY3ktdHJ1bmsKKzc5MTI0IDlhY2I3YzE1NjA3NTgxOTdlZjUyZThkMWZiNTllYzA4ZmU4ZDFmZDYgcHkzaworNzkxMjUgYTVmNzk2ZmI2MWExMDI2NGRhYzJmYjIyZGU2YzZkOGRjNTA5NDAwMCBsZWdhY3ktdHJ1bmsKKzc5MTI2IDcwNjk1N2Q2ZWNkZmY1MGE3ODliMzBlOGIyOTgwYTdlMGI0YWM4MjUgcHkzaworNzkxMjcgMTNmZjg1YjEwZGIwZTU3MzQwZTc3Yzk5NGVhYTk5YWU3YzU4M2ZlMyBsZWdhY3ktdHJ1bmsKKzc5MTI4IDc0YmIwZjYyYjMyZTdjNzJlNmIwZmNhMDg4ZTUzMmExZmI0ODY3N2YgcHkzaworNzkxMjkgMTA5YzRlNjJlYzIzNTc3MmYzZGFmYTRmYzI0MjdjMjQ1N2I2ZDcxYyByZWxlYXNlMjYtbWFpbnQKKzc5MTMwIDVhNTVhMzI2MTE2NDRkYTljY2FkNDNhYTYzMzgxOWZkNTBiMzYyNTIgcmVsZWFzZTI2LW1haW50Cis3OTEzMSAwZTNjMTBiY2RiYTQxZDI3YjIzZGZjOTlhMWE5OTZiN2IxNzEyYTU4IHJlbGVhc2UyNi1tYWludAorNzkxMzIgYTY4MmI3MDg3YWNiYjNmOWZlNTM4ZWQ4OTViN2RhZmJmODZhYTY2OCBsZWdhY3ktdHJ1bmsKKzc5MTM2IDE4MDM3NGJmMmQ1MjlkZjM0NTQ0OGZiYjkwNmUwZDZmOWFhMDAwYjggcHkzaworNzkxMzggMzdjOWFiN2Q0OGYxZjQ3NGZiYTliZmYxZTNjZDY5MTBlODA0N2Y0MiBsZWdhY3ktdHJ1bmsKKzc5MTM5IDY2NTFlZmI3NWQ5ZWEyYTliNmZmNTdmM2FjZGM4YWViZDg3ZTJkOWQgbGVnYWN5LXRydW5rCis3OTE0MCBlMDc2ZTU1ODM0ZDlmMjExMzJhYWZlNjk2ZTUxNzVmYTNhMjhjOTViIHB5M2sKKzc5MTQxIGU1MjNiYzFjMzAzNDQ0NWZjOGJmNTdmOWMyOTUwYzEyMWQyNTg1YmMgcHkzaworNzkxNDIgZTg2NzIwMDNhZTg0ZmYxMmE1ODg0ZmIxMmZjZmFmZTk1OWE3MTU3NyByZWxlYXNlMjYtbWFpbnQKKzc5MTQzIDg1Y2JlNDRiMzkyNWY4MzJhZGEwNzAzOTZhOTE2NmY2MDcwMjExOTggcHkzaworNzkxNDQgNjM1ODY1OTJhM2EwNjk1NGUwOTYwOGU1NzdmN2RhY2I3ZjkxODUzNSBweTNrCis3OTE0NSBhNjEyYzhiNjFiNGFhODRhN2Y4ZWYzNDBiYThhNTNjYzU4NTUyMjM0IHB5M2sKKzc5MTQ2IGY3N2Y4NTAxZGE3ZmFiOTQ0NDk3NGExZGY1MTlmZDY4Nzk3YmEwYWMgcmVsZWFzZTMxLW1haW50Cis3OTE0NyA5NjBlZmEzMjdjNWQ5YzE4ZGY5OTU0MzdiMGFjNTUwY2I4OWM5Zjg1IHJlbGVhc2UzMS1tYWludAorNzkxNDggN2M5MjY4MTQ2OWY3YmI0NTUzMWEzMWQ1NTg5NmRkMTMxY2JjN2M3YiByZWxlYXNlMzEtbWFpbnQKKzc5MTQ5IDM1MmQ2MWE2OWY1OTViYTQ4OWU5ZTdlMGI0ZWE4ZDY0MjdhYTIzOTcgcHkzaworNzkxNTAgZWRhZDk0OGI0ZDY2ZmFiMzFiMDIzNGE0MTgxMmMzOTQ0ZTA2YjBmOSBweTNrCis3OTE1MSA1NTRlMGY0MzVkMDhhYmI3MDQxNWZhYmU3NWUxODI2OGU5YTYxZmRjIHB5M2sKKzc5MTUyIDYyMjNjM2ZkNjFmMDlkNzMwZmI4MGIwNmQzNTZmN2U4MTQzMDlmNGMgcHkzaworNzkxNTMgOGE5MjBhODkwOWEwOGJlMzkwYzQyODI3MDU4OWMyYWVlNTI2NGJhZSBweTNrCis3OTE1NCBhZTllMTM3NDExZjFmMzhmMjcyNDU1NGUxOWY1YWJiODI3MjYyN2VlIHB5M2sKKzc5MTU1IGQ4NzAwYjRmMWI5ZjUxNTI1MDZjNmRhZTdhMzUxNTViZjk0YWZiZTggcHkzaworNzkxNTYgNGY3MTliZTdjODc1ODVmNWIxNTc4MDNmZGIwMDA0ZDBlZjBkZWM1NSBsZWdhY3ktdHJ1bmsKKzc5MTU3IGU2MTkwNDdhMmYzNjYwOGVhOTZmZTk0MzI1ZWUyMmUxZjgyYjJjZGYgcHkzaworNzkxNTggYTlhODA3YjdjZDQzOWZjOTdlNDQwNjBlMmY0N2Y4MTAzNDMxMTJmOSBweTNrCis3OTE1OSAwZTA2MzJjNTQzZTQxNDRmMjJmMzFkNWI5MDhmY2RiYWU5NGVjZjMzIGxlZ2FjeS10cnVuaworNzkxNjAgNzExZDUxNzM3ZWU2YmU5ZjZlY2FmNGFmYjZiMDU5MmU1ZjVjNzQwMSBsZWdhY3ktdHJ1bmsKKzc5MTYxIGRiYzU4MDRlODI4NTg1YzQyMTAzNDM0ODllYmY4MjFmMjhkMWE5NzIgcHkzaworNzkxNjIgNmI2ZmZkNTI2ZTNiZTRlZDk5OTIxY2NiOTRkNmUzYzA4Y2E4N2I2MCByZWxlYXNlMjYtbWFpbnQKKzc5MTYzIGE3Yjg5ZjJhYzFkYTZhNWUyNDVlNzkzZTBhY2I3YWU5OGE4ODg2YjAgbGVnYWN5LXRydW5rCis3OTE2NCBkY2I5ZjQyNzA0NDFhZjdlZGIwYmFkZGY2ZDc1OTFiMDhkNThmNzljIGxlZ2FjeS10cnVuaworNzkxNjUgYzhjODQwMTYyODA0OWY5N2Q4YTZkZGZmNDZiZDMwMDNmODJmODA2YSBsZWdhY3ktdHJ1bmsKKzc5MTY2IDdkZGNmN2QyODM2YWFjMzJhNTMzZjEwNjMxYWU4MWEyZjc4Y2U5YTkgcHkzaworNzkxNjcgMzU2NjM2NmI4OWNmMTU5OTQzMDVlOWQxNzY3OTcwMzYyYjU5ZGQ5MSByZWxlYXNlMzEtbWFpbnQKKzc5MTY4IDRiZDFhYzExMzJjZGZkNTA1OWY3OGVmZmQ0NTM5ZDc1NGE4MmIzZWEgbGVnYWN5LXRydW5rCis3OTE2OSBmMDc2NmNmZjdmNTk2OGVhYjM4Yjg5ODA0MmVlODk3ODJiMmQ5YTBmIGxlZ2FjeS10cnVuaworNzkxNzAgZjg1N2Q0ZWQwNzc0NzU5MzY4N2RjMzY1Y2Q5OWU4ZjdlOWJiYTFjZSBweTNrCis3OTE3MSAxMGJkMWQwZjYyZGUyZGM4ODU5NjYzMWFjYzljNGZmNmJmMjM2ZjY5IHB5M2sKKzc5MTcyIGVhNGU2ODkyOGZmNTZiNmY1NDM5MmNiYTBlM2M0NTY0Y2FmZDQxN2MgbGVnYWN5LXRydW5rCis3OTE3MyAxYWU0NzRjOWMzNGU2YmM4MTVmYjc3NjVhYWEzNmY1YzY2MDNmNThiIGxlZ2FjeS10cnVuaworNzkxNzQgMmM5ZTBhYjNmMGM3ZWZkOTFmY2ZjMzdjMjA5ZTc5NDNiNDM0MDYxMSByZWxlYXNlMjYtbWFpbnQKKzc5MTc1IDZhMTI1NGUyMGM4OTY3YmU5MzhlOWVhOGI5MzhlMmI5MzI5NDJhOTYgcHkzaworNzkxNzYgY2IwZTM3MjZkOTFkYWIwNWY0NWQxMzAzMjc2ZjU0OWI1NGFjODcwZCBsZWdhY3ktdHJ1bmsKKzc5MTc3IDMxZjBkOWZjZGI0NWMxN2U3ZDBiYTY5NzE2ZmM3YzcxYzY4ODhjZjAgcHkzaworNzkxNzggYWM5NjJiYzQxZTg1ZmM5MzNiZjc2YmE3NjE2N2NlOTIwZmI1MDU5ZCBsZWdhY3ktdHJ1bmsKKzc5MTc5IGJjNWUwZDJlMTc5ZDAwODZlYjFjMTY5ZDI0MTQ0MTgzZjI5YTYxMTMgbGVnYWN5LXRydW5rCis3OTE4MCA0NTVlZjcwMTViYTgwMmRhMDhlZTc5NjE3YjU2ZDEwOWEwMmRkNDUzIHB5M2sKKzc5MTgxIDk1MGMxMDMwZjgxNjQwN2YxYjRiMDMxNDMwOGNkNzQwMzU5MTgxYmIgbGVnYWN5LXRydW5rCis3OTE4MiA1NzVlYzc3M2RkYTQwY2Y4ODNiNmYyZWZmMWFjN2VlNzM5ZjEwMTkwIHB5M2sKKzc5MTgzIDI4ODZmNmFhNWVmNjE5YTRiZDE2NWU3YTMzODU3YjY5NDhiMDc4MmIgcHkzaworNzkxODQgNDE0MDQ0ZGJmMzQzOTQzMTZhNDMwOGYwZTBjNTU1NGYyZGM1ZTFhOCBsZWdhY3ktdHJ1bmsKKzc5MTg1IGQ0ZmEyZWFhYjVmYThhNTZjMDNiM2YwMmU0Y2QyMTc1Zjg5ZTUxOWEgbGVnYWN5LXRydW5rCis3OTE4NiBjMTFmMWNlY2JlYjM1YTE4NmUyNmU2ZWJiYjVhM2ZjZTYzMDE0NmQ5IHB5M2sKKzc5MTg3IGMzYjljMzMzMzAxYzdiN2Y2ZjUzMDNjNjhjOTk1M2UyMGM5MWVlZTEgbGVnYWN5LXRydW5rCis3OTE4OCBlODIzZTI3YzIyNWVhYTA2MTczOWE2MjA3YjExMzljYjMxOTk4Mjg2IGxlZ2FjeS10cnVuaworNzkxODkgZGQ2OGUwNGVlMmU4NjIzNDk2ODY2NzA0OWFhMTUwNzBkZjIzNzg0MyBsZWdhY3ktdHJ1bmsKKzc5MTkwIDYyMDkxMmY4MzA4MjZlOTVlYzAwMDhiZDQ4NjhlMzhhMjY4ZTk0OTcgcmVsZWFzZTI2LW1haW50Cis3OTE5MSA5OGU0MTY2MDU3NGMzZGVkM2FmNjBhOGQ3ZWJjMzlhMDczMDNjZmY2IGxlZ2FjeS10cnVuaworNzkxOTIgZGVmYWFkMjAxN2I1Y2MwODllNzRmYjhmNGI5MTExOGNlMWE5NTk0YiBsZWdhY3ktdHJ1bmsKKzc5MTkzIGZjZWY0ZGEzMWUyNDViZDAzMDUyMDNmYzAxNjBhZDA2ZmZhMzk3ZmYgcHkzaworNzkxOTQgMjJjNmEyNzY0Y2FiNWZmODBhMjc5ZjQ2ZWNjNjgwODhmOWMzNzM4OCBsZWdhY3ktdHJ1bmsKKzc5MTk1IDYzZjNhOTRmNWU5ZDUwNTg1ZjQwOTkwNmI0NDJjMjY3Zjk5MjY4NmEgbGVnYWN5LXRydW5rCis3OTE5NiA0NGZmYjgwOTJlZDYyOTAzMzBjNTQwZWMxODIzMTA3YTI4ZWY2NDRjIHB5M2sKKzc5MTk3IGIyNWQxMDI0ZjM5NDY4ZTQzOWI5NGM2Zjc4ODcwN2VlNDgwYWJiYzAgcmVsZWFzZTI2LW1haW50Cis3OTE5OCBjNmY2YmU1MzE3YWQzNjE5NmJhMGYxMGQ4ZTIyZWFmOWQ2N2VlNTViIHJlbGVhc2UyNi1tYWludAorNzkxOTkgOGU0MWYxNzk0ZDQ0OTViOGNiMjI0NmU1OGY4MDNjYjBlNGFiMGViOSByZWxlYXNlMjYtbWFpbnQKKzc5MjAwIDBmYjZkMzQyMDE2ZGQ1YzhhMjZiZGYyOGRiODdjZjU0M2M1ODZlYmUgcmVsZWFzZTI2LW1haW50Cis3OTIwMSA4ZjEyMDJjYTg4OGU5NWJiMjVmOWRmNzRiMTViZGMyYmJiZDU3MmY5IHJlbGVhc2UyNi1tYWludAorNzkyMDIgMTJlMjA3NWRiYmUwZTFmMzVjMDA3OGVhZDczZjU5Y2M4OThiYzY0ZSByZWxlYXNlMjYtbWFpbnQKKzc5MjAzIDU4MTI2M2FmNTgyMGZkMWQ2NGFiN2UyYjQ1MTc0NTE2NTgzNzA3NDIgcmVsZWFzZTI2LW1haW50Cis3OTIwNCA4ZDhjOWJmMmEwNGUyN2Y1NmM2YTNhZTY5YTE5ZTRkNDQ5ODliYzlmIHJlbGVhc2UyNi1tYWludAorNzkyMDUgNjQzYmY5ZmYyMjhmZTQ4MGQ4MGNiMjJhMjkyMGY1YmExNGEyNzI2YSBsZWdhY3ktdHJ1bmsKKzc5MjA2IGI5ZTI3ZGU4NWU0YmM4NjgyODk5ZDA4ZjNiNGYyMTNhNjcxZDUyYTcgcmVsZWFzZTI2LW1haW50Cis3OTIwNyBlMDYyZGQzNTcxNDE5MmEzMThlOWM1MjEwZTM5NTdhY2MzNThmMmZlIGxlZ2FjeS10cnVuaworNzkyMDggMDlhYTg3MmY3OWZjNWYzZjllNzhiODZlMmE3YTZjMGE1MWZmYTdlZCBsZWdhY3ktdHJ1bmsKKzc5MjA5IGVjODRmYmNkZjdjYmI1MTk0MTRjNDMzNDNkMDY0MWMxNWYzODI5MjMgcHkzaworNzkyMTAgOTNmNzIwZTk1MThhZGJkZGE2ODBmYjNlNWRmOTk1Nzc5NzYxNGRkOSByZWxlYXNlMjYtbWFpbnQKKzc5MjExIGVkYzkyYmNlNGQ2ZTJkOTNhYmY0NTFiYjk0NTZjZTlmM2JlYjQ4ZmYgcmVsZWFzZTI2LW1haW50Cis3OTIxMiBjZjU4YjczMzIyZjhjNGIwYmM0MjY1MWE1MDkwNjlhZmEwN2NmYWQzIGxlZ2FjeS10cnVuaworNzkyMTMgMzhlOWI5ZGEwMTY0MmViYjQ2OGJiY2UwMjNjYjI0ZmQ4YTRmMmNlNyByZWxlYXNlMjYtbWFpbnQKKzc5MjE0IDc1OTg1MTdiMTIxODA3ZmFiMDUwMDQ1NzU5ZTVmZTcwYzA4OTQyNzYgcmVsZWFzZTI2LW1haW50Cis3OTIxNSA2NGEwMmIxMzNlNzIzYTk0NjY5ODQwODM3NTQyZTI2NjkyNTM0NjZiIHJlbGVhc2UzMS1tYWludAorNzkyMTYgOWVhYmJhNmRlZDA5NjJiMWE4ZTFlOTUzMjQyMWQ0MzZhNWJmMjA1ZSByZWxlYXNlMjYtbWFpbnQKKzc5MjE3IDQ1ZDIyODRjYzA2M2RlNWM5M2RkNDMzYmQ1YzI3NTkyZTM3MTg3ZmYgcmVsZWFzZTI2LW1haW50Cis3OTIxOCA3Njc4MTEzODVmYTZmZGY3ODZkNmVmZGZhZmE3NWZiMmRkNzY0MTAyIGxlZ2FjeS10cnVuaworNzkyMTkgZGI5NjFiYTM3Y2ZlNDQ0NjljNjhlNTIyZmZmYmU5NTFlZmE2YjIzYyBsZWdhY3ktdHJ1bmsKKzc5MjIwIGVmMWYzODhmNDgzZmI4NTAwMTZhNjAwM2RjZjEwYWFiN2ZjOWUwN2MgcmVsZWFzZTI2LW1haW50Cis3OTIyMSBjNjk0NjE4ZGFiNTQzYzJmODcwYzFhMjYwMTYxZTFkMTcwMjBlMGEwIHB5M2sKKzc5MjIyIGM5MmNhOGJhMWQ5NzUwZjY1OTcwNzJhOGY1OWQxYWJlNmI3Y2Q2NzIgcmVsZWFzZTMxLW1haW50Cis3OTIyMyBkMTM5OGZmMDFhMDc0YjRjMDE5NDc4NzZhNjZkYzA5OGYyODQzZmZlIHJlbGVhc2UyNi1tYWludAorNzkyMjQgYWMyMzE0YjVmOTYyODgyNTU2OTI2ZjVlOTE3OWQ3MWIxNmU2MDUxNCByZWxlYXNlMjYtbWFpbnQKKzc5MjI1IDUzZGJkODk2YzZjNjkyZjQyNGMxNjUyMmYwYWI5OTg0MjQ1MzM0MjcgcmVsZWFzZTI2LW1haW50Cis3OTIyNiAxYmY0OGE1ZGRlYWQ1MzYzMzU0MTlhZTE1ZmJjZDJmZDhmMTZiZTlmIGxlZ2FjeS10cnVuaworNzkyMjcgZjk2YzgyOTNkZDdmODhkODdiZTgyM2YwNDM5NmUzMjZmM2I1NzlhZiByZWxlYXNlMjYtbWFpbnQKKzc5MjI4IGRiOTRhZWRlYjBlMDRhYTExYmU0ZjFkNTYxN2QxNjExZjhiZmU1NzYgbGVnYWN5LXRydW5rCis3OTIyOSA5ZjYxODc1MDA2NGVlY2RhZWQ4NmE1OGQ5ZGZlMWUzYThhYTc1ZDk1IHJlbGVhc2UyNi1tYWludAorNzkyMzAgMGQxY2RkMTRjOWZhMTk2MThiZWE1ZjZjZGFkMjc5OWFhOTc5OGZiMyBsZWdhY3ktdHJ1bmsKKzc5MjMxIGEwYjZmMjg3MTFlNWVlODNlNGFhM2EzYTU2ZGU1ZTY3NTU5NGFjNmQgcmVsZWFzZTI2LW1haW50Cis3OTIzMiAwYzM0NDgyN2UwNDhmMjY5MzcyZmU2MjNiMGQ0NWU5YmQ5NjUxMjU2IGxlZ2FjeS10cnVuaworNzkyMzMgYzdhNjE1NDQ2MGZiZGE5ZWRiN2U5YTc3MDgzYzA4NTlmNjFhMjljZSBsZWdhY3ktdHJ1bmsKKzc5MjM0IDkyZjI1NjE3NDE1NDFhNDE4MWIwY2QwY2JhM2M0YWY4MmE3MjExYjAgcmVsZWFzZTMxLW1haW50Cis3OTIzNSA2NTFhOGU1YzQ2MGZhOWQyMGI4M2RlYTMwZTQxYThkM2ViMzYzMTExIGxlZ2FjeS10cnVuaworNzkyMzYgYzA3M2YzYzMyNzZlZjNkZjRmYWFiOGJjOTNjZmI4OTFmZmE5YmMwMiByZWxlYXNlMzEtbWFpbnQKKzc5MjM3IGRiYWQxYzA2NjhjOWY4Y2ZkODM0YzhmMzkxYjJiNjYyZjJkOTM5NDkgbGVnYWN5LXRydW5rCis3OTIzOCA3ZTNiNDkwODc3Y2VjZGJhNjg3ODQ1OGI2YmU0MDcyYWFkNmFlZGUwIHJlbGVhc2UzMS1tYWludAorNzkyMzkgZWM2YTk5NWVjZmJmODI0YjcyYmY2MWExZWQxZWNlOTQ0YzUwNjE1YSBweTNrCis3OTI0MCA5NzE0ZjhhNzdiMTYwZmI2MWVhMzY5ZGQ1MGYyNDNjN2UzZDZhN2Q5IHJlbGVhc2UzMS1tYWludAorNzkyNDEgYmFjOGEwNDI3MGZjZjE2M2FhYjIwNGM5MjRkZTg0MzY4Mjc3YzhiNyByZWxlYXNlMzEtbWFpbnQKKzc5MjQyIDQ4ZjQwYTE3ODVjYWFmMmYzYWVhNDdlODVkYTU0N2MxZmJkYjg5NTYgcHkzaworNzkyNDMgNDFiMjI1MDY3ZjRkMTI4NzY1MzAyMGNkZmNhM2FiNWZiMmE1NGEwNyBweTNrCis3OTI0NCBkMGJkZDA5ODU2Mzc0ODY2YWRlNTUwZDhlOTQ5NDg1YzU2YzEzMWNmIHB5M2sKKzc5MjQ1IDM4MzNjZjMzY2E2MTc0OTcxMjVlYTllZjJmNjE2YzljYTU2OGQyMDggcHkzaworNzkyNDYgNDI5M2MzMzY2OGRmN2Q2MjZlMzRmNmIwODg2MGMzOGZkY2ZiNTAxYiByZWxlYXNlMzEtbWFpbnQKKzc5MjQ3IGMyZDJlMjZiY2Y3ZmQyNWZlOTFhNDNmMWNiODc4MzQyNWJmMDAwMmEgcmVsZWFzZTMxLW1haW50Cis3OTI0OCA2N2YzZjdlNTM2NmJjN2UzYjljMTU2YjFmYTdkMzlhNDcwMTQwYjg2IHJlbGVhc2UyNi1tYWludAorNzkyNDkgYTM2NmQ2MzFhNjI5YTRhY2E2MDdmZjQzYTFhOTU0ZDZmM2FjY2JjMiByZWxlYXNlMzEtbWFpbnQKKzc5MjUwIGUxNmEyN2I1NTJhNmUzNDRlNWM0MDM0ZDMxODk2YmQ3YmRjZWUwNzMgcmVsZWFzZTMxLW1haW50Cis3OTI1MSBmYmFjZjk3MmZhNDRlNjk1NmE5NGVmYTVjYTJlMjMyZTU3ZjQxMGJhIHB5M2sKKzc5MjUyIDdlNmQ3MTUxZmRlODc0Y2E2ZDFiM2MwMzEyZWY4OWNlNTBlNjM0ZjkgcHkzaworNzkyNTMgMmQyZjIzODcyZDkwYTEwMDMwY2NiZGU1ZmQwZWJkMGZkY2MxNzFiZiBweTNrCis3OTI1NSBjNTNmNmEzZDJkM2IwYmU0MTdjM2E1NWU5ZTczOTExNGFhYjNjODY3IHB5M2sKKzc5MjU2IDEzYTQ0ODAxMmE4NGU3ZDMxZTI4MWFkZTBmOTUwYzVjY2UxMmY5ZGUgcHkzaworNzkyNTcgODI2ZDA1NDY5MGNiOGRhNmE1ODNjOGJhZDU1NWViNzdhNDlhNzQwOSBweTNrCis3OTI1OCBkOWI4ZjI3M2FiOGRhNmQxNjBjODI5ZjhhODNhMGQwMjA2YTEyZWVjIHB5M2sKKzc5MjU5IDkwMjE3YTg2NjQyZDA3YmFlMDI2NTlhYjNkMjE3YWJlOTk2YzMyM2UgcHkzaworNzkyNjAgN2Y4MTZmNmI1ZDBiMDk0MDc0MTcxMGM2YTBlZGJmM2U0YTE4OTU0MSBweTNrCis3OTI2MSA1YzA5MmQ0YjQ5OWNmMjc4Y2ZlZDM1NjZjYWY0OTU4ZmZjNTY2MGQ1IHJlbGVhc2UzMS1tYWludAorNzkyNjIgODFkYzAyMjk4NjE0YmExNmQ1MjFlYmZmMWI1MmVlZjQ1OTg3ZmYyZSBweTNrCis3OTI2MyAyODU4Y2FlNTQwZTQxMWI4MjAxNzRiOTk0ODk4ZmRhMTVlMTI1NzkwIGxlZ2FjeS10cnVuaworNzkyNjQgZjkwOTczOTYyZWFmMWM0MWM0NGVjNGE3N2VmZjRkZDVjMDU1MjM5OSBweTNrCis3OTI2NSA4NGNjMTNhMTQ0ZmZiZDUyMjhhNTA2MDY2MWQyYTFhZmFkOWY5ODU1IGxlZ2FjeS10cnVuaworNzkyNjYgYjRkOGZhNGQwMDQ5YzNhZDYwM2M3ZjYxNDg4ODgzNjdhODM5OGYyZCBsZWdhY3ktdHJ1bmsKKzc5MjY3IDY1N2QwMmE1MDNmYTVkNTYzZjA2YTFhODY0YWM5MWFhZjA4ZDc3MzcgcHkzaworNzkyNjggZWIwZmY3MTNhNWU5YzE0ZWM4OTdlMGI2ZGFlMjcxYzE2YjQzN2JkNyBsZWdhY3ktdHJ1bmsKKzc5MjY5IDM3YzBlMjhkMWFkNGVmZTMxMDAwNGQzZTljM2QwYWJkMTQyZDM0ZmIgcHkzaworNzkyNzAgMDE2MTk2NDY0OWMzOGE2NGRhNjA3OTI3ZWYzOGUzMDBlMmZmYWE0MiBsZWdhY3ktdHJ1bmsKKzc5MjcxIDIyOWYyNTJiY2U3NzM2ZTY2NDdjMzg2NTYyM2U1NjA5ODgxNjM0Y2UgcHkzaworNzkyNzIgMTA2YmVlM2YxZmU1MTYzNmUxMWE2YzYwOTNlODVmMmQyZTdmYzdmYSByZWxlYXNlMzEtbWFpbnQKKzc5MjczIDhjM2IxMjBmMjU5NjJkZWMwYTZkNmU5M2ExMTQ2YzE2MTI5ZjE5OTQgcHkzaworNzkyNzQgM2RjNjg4MmE3MjdkNzNhNjZkOWU0ZDYyZWJhNmJiODc3MGQyYjY3OCBsZWdhY3ktdHJ1bmsKKzc5Mjc1IDc2OTgxZWU1MGI0ODJmZWIzN2RjODNmOTY5ODUzMDcwMjIxYjE1MzEgcHkzaworNzkyNzYgMmQ2MTc4NDgwY2M3MTI2YTdlY2M0YTI2N2I3YzYyYTNlNGQzMTU5ZiBweTNrCis3OTI3NyAzNmU5ZjM4ZThhM2MyZWVmMmVmMjZhY2MzZTQ1N2IyMGNlODVhODBlIHJlbGVhc2UzMS1tYWludAorNzkyNzggNTJjZjdlNjVkYWQxNGJhYjI2MWM4MDA4MzkzZTllMWU0ODAyZGRiMiBsZWdhY3ktdHJ1bmsKKzc5Mjc5IDViM2E2MDFlZDIwNWI1YjQwM2ZjMzUyMTgwOTlhMzgxZGRjYWYyZTAgbGVnYWN5LXRydW5rCis3OTI4MCAyYjYxZWVkMjhmYWU0ZTkxZDBiOWE3OTY1ZTYxODE2Mjc0MWI0M2RkIGxlZ2FjeS10cnVuaworNzkyODEgN2FkNTYyM2Y0MTMyMWRiNDViNTUzN2Q1MDJmYmEyNDIyMzZkYjY4YiBweTNrCis3OTI4MiA4NDQwNWMyMmU0YzdmZmQ5ODkxNTVkOGY2OGZiMDMxZWViYjUzY2EzIHJlbGVhc2UzMS1tYWludAorNzkyODMgNjE1MWQwOWNlMDM5NDkzMTEzZGNmOWVkMWVjMDkxMGY5N2NlOGRkYiByZWxlYXNlMjYtbWFpbnQKKzc5Mjg0IDE1ZGU1MzkwNzA3ZGE0NDY5NDAxMzE2NTc5NGJmOTNkZmFhYjc1NDIgbGVnYWN5LXRydW5rCis3OTI4NSA5NmEyNDFkNGEwYWIxNzEyNjE5NTFmNDA3MzhlZjE1Mzg1ZmZjMDhkIGxlZ2FjeS10cnVuaworNzkyODYgZTJhOTY5M2I1NTVlZDY4NTEyYzU3NDVmM2ZiZGQ2YWVmMTg5ZDI3YiBsZWdhY3ktdHJ1bmsKKzc5Mjg3IDVmNWQ0NzM2ZGU3NGFkNmRmZTIxZTZhMTI0NjUwZTJkOTBkODJiZmIgcHkzaworNzkyODggMjI0YjcwZDNkMWQ0NGU1NjAwYTgwNTJlODYwMzBlNDUwMTA2MjBmYSBsZWdhY3ktdHJ1bmsKKzc5Mjg5IGM5Mzc1MjFlZDcwOTJhODFmNzJkZjJlOGVmY2UyYjRmNDQwMzc0MjggcHkzaworNzkyOTAgOWZiZTIzNzBkYzAyMTdhOGQzOGMwOTk3MmY2OWI3N2U3NGY5ODQ2NyByZWxlYXNlMzEtbWFpbnQKKzc5MjkxIDdmNDM1YzM4NWRhMjVjNGY1Y2M4OWMzM2IxNzQ4ZmIzYjViZGVmYmQgcmVsZWFzZTI2LW1haW50Cis3OTI5MiAwMWI1NzUxNWYxOTU2ODQwN2JhNDJlZDgyMTJiZWRjOWVhNTNhMjY5IGxlZ2FjeS10cnVuaworNzkyOTMgODA2YThjYWZjOTk3N2FmN2Y1YjY3NjNjNWVlYzMyOGE0MTFjOGUzOCBsZWdhY3ktdHJ1bmsKKzc5Mjk0IDZkZjc5OWEyYzI0ZTRhMjQ2ZTJmODczNmVhM2QyMmE0NWJkODFjOGMgbGVnYWN5LXRydW5rCis3OTI5NSBjZmM1NzcwMmFmN2ZkOTViOWEyNTljNjNjNzQ1MTVlMTNiNTIzYWYxIGxlZ2FjeS10cnVuaworNzkyOTYgNzY3YjA4MzE2NTllMDI3YTY5YzY2NDVhNTE1MGIwMzg1YmYxMWIxZiBsZWdhY3ktdHJ1bmsKKzc5Mjk3IGYwMDE0NTU0MTY2ZjkzYzNiZDc2OTc3MzBhZmQyZDU4OWRkNjg2ZTYgbGVnYWN5LXRydW5rCis3OTI5OCBiNzg3MmIwZThhYjI0MWUzNzlkZDQ5NTc3NjY4ZmUxNjAzMThhZWY2IHB5M2sKKzc5Mjk5IDczY2FhMzYxZjljZGUxNGJjMmE4MTE1MzhjOTY2NjU3M2IzY2M0MjQgbGVnYWN5LXRydW5rCis3OTMwMCBlM2ZkZmRiMWE4ZmY4ZmM2YWQ2MjhmMGU5ODQyYzg4OWE5NjY5ZGJjIHJlbGVhc2UyNi1tYWludAorNzkzMDEgMmUwZDU4YWRhZGJlMGViNDM4YTZkNWIxYmYxMTBmMGZkN2NmMDQwZSBweTNrCis3OTMwMiAxZGMxODQxMmE3ZWU1ZjAzN2RkMWIwYmVmZTU1NGE0YmExN2NhOWRlIHJlbGVhc2UzMS1tYWludAorNzkzMDMgM2M0ZGZlODZlYzJiNjQ4MjRhZWJiMTVkZDcyNGNmNzNmZmEwZDIwYiBweTNrLWppdAorNzkzMDYgMGExMjNjZGVkMmM5NzNiN2IxZmE5YTFmZjhmNTJiYWQzMWU2YTI3NyBsZWdhY3ktdHJ1bmsKKzc5MzA3IDgwYmVlYzhmYjc0MDNmMjA2OWIyMGNhMjA5YjYzNDY5NmU0YjU0ZDQgbGVnYWN5LXRydW5rCis3OTMwOCA1YjY3OWMyNDllM2MxY2Q2NzBlYmQ1NTBlNzcxMWE1ODY5MTc3YTgxIHJlbGVhc2UyNi1tYWludAorNzkzMTAgNDc3ZDM2ZTVkOTEzOTVlMTNkNDMwYjY4ZDgzZTg1NDc4MDdhMGZmMSBsZWdhY3ktdHJ1bmsKKzc5MzExIDhmMDE2YTgwMTY0MmY5ZjkzZTgyY2NhZTcwN2UzYmJjY2E2MzVlYzYgbGVnYWN5LXRydW5rCis3OTMxMiBlMDBkZDA3MDU2YWFmMzk3MmRhYzdjZjJiZGYyODZkMDJlN2U3ZWMxIHJlbGVhc2UyNi1tYWludAorNzkzMTQgMGY0MmYzNGMxNmU4MmIxMGMzMzNjZGRiMmU4MDY3Nzk4NWZjNjM3MCBsZWdhY3ktdHJ1bmsKKzc5MzE1IDY1ZmY1MjZlMDVlYmJkNTUyNGZkYTY5YWQ0MmJhMDI3NmU0YjBjY2IgcHkzaworNzkzMTYgY2Q5ODQ4Y2YxODQ3YWRiMWNjYjk4NTEyYzU2MjA4ZmY5MGY4NDNjNyBsZWdhY3ktdHJ1bmsKKzc5MzE3IDMyNDRlZmI2ZDg4Zjg4YWFmMWJkZjZkMTZlZThjYjI0ZWVkN2M5MTEgcHkzaworNzkzMTggNTQzNTg4MDcxM2E3ODNmYTVhNjZhM2YxMmU0YWQ4ODdlNGViZjE2NyByZWxlYXNlMzEtbWFpbnQKKzc5MzE5IDE3ODE2OTU4ODZkY2U4ODdhYTcwZDc0MmU3NGNhMTk0YzMzYTNmNWIgcHkzaworNzkzMjAgNjg0Y2Q3MzgxNTM1YTVhMjA5MWE4YzQ2OTVkZDIwN2IyYzViZDcwYiBsZWdhY3ktdHJ1bmsKKzc5MzIxIDhlOTliNjAwMGYwZGZlMzNkMWQ5ZTUyMzJiOGFiZDlhOWYyMjdhMjYgcHkzaworNzkzMjIgYTlkYjUxY2YxZmJjNGRlZGQzNmZhZGY5NjU3MmRkMzFkNmE4ODg2NCByZWxlYXNlMjYtbWFpbnQKKzc5MzIzIGY0MjhmNjZmN2U5YmI2NmQwOTA4M2NjZWNiNzFmMDc3OThhOTkxMDAgcmVsZWFzZTMxLW1haW50Cis3OTMyNSAxMmVlNDY0MzVkMDE3MWZhMDkwYjg3NTFmMDk3M2EyZDJmN2QzZTNmIGxlZ2FjeS10cnVuaworNzkzMjYgZmIzZGE1NmQ1NDhmMGQyODgyYTMwN2Q0NDNmOGUxNDdiZmQ3MGExYyByZWxlYXNlMjYtbWFpbnQKKzc5MzI3IDkyYzkzMjQ2MjViNmE1YTAwMWMwYzg2M2U2YTgyOWYzNzgyZGYyMjIgcHkzaworNzkzMjggOGU3NmU0NmMxOTk0NzU3ODkwNmQ3ZjQ0ZjY3NDExYTdmOTRkODkzOSByZWxlYXNlMzEtbWFpbnQKKzc5MzI5IGIwMWVmZjRlZmZkN2VmYTQyNTgzZDRlMDAzZTMzZjgyYTllZmU4ZTIgbGVnYWN5LXRydW5rCis3OTMzMCBmYTVlMjk5Y2UwOTFjNjc2ZjBjZDJhYTc2YTQ5NDRhZmY2MGU3MDMzIHJlbGVhc2UyNi1tYWludAorNzkzMzEgYTcwMjY0OGM4ZjQxMDQ5M2MyYWY0MDZkMDExMzliMmUyZGMxYmRmOCByZWxlYXNlMjYtbWFpbnQKKzc5MzMyIDNiYTIzN2EzMjZjMjdiOWNiZWNjMzA0ZGZmYzU0NzU4MzMwZWJkNjEgcmVsZWFzZTMxLW1haW50Cis3OTMzMyA1NmRkNWQ1MDcwYTVhNDU0MWM3ZTU5ZWFkZDJmYTVhZGIzODk4MWFjIHB5M2sKKzc5MzM0IGIwZWI5ZjZmMmQxMGIxZjMyOTViNjhlMzQ0MWVhNmJjMzIwNDJhN2QgbGVnYWN5LXRydW5rCis3OTMzNSBmMjBlOGI5MWY2ZThkYTk5MmIxZjFhNzdjZjU3NDNlNzQ3NGU3M2I5IHJlbGVhc2UzMS1tYWludAorNzkzMzYgMTAyNjIzZDY4NDNmYzQ5MWQxZGZlZTE2ZjI3ZjE5OTFmN2U4OTE5MiByZWxlYXNlMjYtbWFpbnQKKzc5MzM3IDZlMWRhZDg1MzAwN2EyYTM0ZWJiZjJlZjUwZTIzZjg3NmFkMWQyNDIgcmVsZWFzZTI2LW1haW50Cis3OTMzOCA2NjU5NWQ0ODRlYThkNWZjNzc2NDA2MWQ4MjgzZjA1YTEwMDM3ZmI4IHJlbGVhc2UyNi1tYWludAorNzkzMzkgNDk4NmNmMGE5MWI4ZTljYmNmNGZlZTZiNDk1MjcxY2RkZDAzYWM1YSByZWxlYXNlMjYtbWFpbnQKKzc5MzQwIGU5Yjk1OGU4MzkxYmQyZTM0ODRhOGFjYjE3MWE5YjZiMjQ1MDEzNDQgcmVsZWFzZTI2LW1haW50Cis3OTM0MSAxNTU2ZTY5N2IyZDcwYjFhMzYwNGUyNjJiMTM4MWQ5YjJmOTkzOGQ0IHJlbGVhc2UyNi1tYWludAorNzkzNDIgZjg0ZjgzOTYzYTc4YWQ2NDM0Mzg2YjE2OTViYzQ0YjUxMzQ5OTk5OSByZWxlYXNlMjYtbWFpbnQKKzc5MzQzIDI3Zjk3MjQ0Njk4ZWRhMDYwOTI1Mzk0Y2VlZTEzYzU1ZDNkYTU3YWUgcmVsZWFzZTI2LW1haW50Cis3OTM0NCBiMjE0Y2E4ZWI2YmQwYWJlNWYxMWUwM2U1ZjVmNWUxNTRlODYyYjY5IGxlZ2FjeS10cnVuaworNzkzNDUgNTJkODQ1ODMxYWU4NjRlMDBkNTJkMmI5MDVlZTI1MzdiMGZmMTcyOCByZWxlYXNlMjYtbWFpbnQKKzc5MzQ2IDI4OTAwNmRjNDZlZTI0YjQ2NjJiYTE0YWY5ZjE4OWU3MjNjMDBlYjcgbGVnYWN5LXRydW5rCis3OTM0NyA4MWI3NTA5MjQwOTE2ZWRjNjI3ZTcxMjNkMWQ2ZjU1MzgxMDI3MTBiIHJlbGVhc2UzMS1tYWludAorNzkzNDggOTg4ZTA0NTdlMzEzMzk2Y2Q1MTQ1OGEwYmM0ZGZkYTViMjk2NTVlNSByZWxlYXNlMjYtbWFpbnQKKzc5MzQ5IDcyMDExODEzNjBmZGYyN2QwZDE1YzQzNTRiNzU1MjRhMjRjZmI3NmMgbGVnYWN5LXRydW5rCis3OTM1MCAzN2RhOWJjNDYxNzQyZmM0ZTQwNjhkODY3M2FjZjljZmI2Mjk1NTljIGxlZ2FjeS10cnVuaworNzkzNTEgY2M4ZTM2OTYyYmFjZTZjNTM5ZjIyNWMxMTA4NWU4MzE5NjU0MDNiNiBsZWdhY3ktdHJ1bmsKKzc5MzUyIDk3NjI4NDg0OWU5ZDgxNDEwY2UwNjRiMTllZTFmZDViZmNiZDZlNDcgcHkzaworNzkzNTMgZDYwYmZiMWI5YzA1MmU3M2U4NDAzN2UxYThiZmJkOWExODFkMjM2MyByZWxlYXNlMjYtbWFpbnQKKzc5MzU0IGU5MWEwODZiNDE3ODNlNzM3NGNkNTg1OWJiOTg2ZDlkODQ5YmI3YTQgcmVsZWFzZTMxLW1haW50Cis3OTM1NSA1YWFjYzc2ODBkM2Y3MmJmZjJjNjI1NWU3ZTVjOWJkMTIxZDg2OWQ3IHB5M2staml0Cis3OTM1NiA0NDY5NjQ4MmFjNDJhYmNlNmI4ZThhNDk0NWE5ZTZkODcwZmViODQ0IHB5M2staml0Cis3OTM1OCAxZTc0MWViMzBiMTcwNGEzNTM2ZDg2NzE4YTRjMTY2ZmQ0ZjQ2NmMyIGxlZ2FjeS10cnVuaworNzkzNTkgNjU3ZTdkMjEzMDUyODljYzQwMWJkZTJlOWJjZDc0NGFlY2ZhYzMyYiByZWxlYXNlMjYtbWFpbnQKKzc5MzYwIDUwNWNmZjEyNWEwM2M2OTk3YTg1ODcyMDhmZWY5YjAwNzVkMTZmMzQgcHkzaworNzkzNjEgMDMxNmU2YTI4YTU1MzU4NzFiM2FiN2M1MzU5ZmM2YmU3YWQzMGZkYiByZWxlYXNlMzEtbWFpbnQKKzc5MzYyIGRlODRhNmQwZTY5NzBjMGU4OTBjY2Q1NzlhYjZlYjFmNzQ4ZjEyYTIgbGVnYWN5LXRydW5rCis3OTM2MyA0YmM4Zjk2NTNlOGUyYmQ3M2E3MGQxOWFhZjkyMmU5MDVhNDAyOTBjIHJlbGVhc2UyNi1tYWludAorNzkzNjQgNTk5M2RhNmQyNDA5NTE1MWEzMTYxMjRmY2E3NzRkNWI1ZTcyNTY1MSBweTNrCis3OTM2NSAxOTU3YzI4OTQyOTI1YmI4ZGVmZmJhZWJhMDQyNzY1NmJkNjY0OWVmIHJlbGVhc2UzMS1tYWludAorNzkzNjYgMDNlYWI5OThiMDdhMTVhMjY3OGRhNGQwODdhODY2MWZlMTI1MzBhZCBweTNrLWppdAorNzkzNjcgNjJmYjA4NmEzOTc1ODJhMjA2ZmZlMDcwNWE1OGJkYWIwYzcwN2IyNiBweTNrLWppdAorNzkzNjggY2QwY2E1NmI3ODgwZThjNDVmYTQ5NjY3MDUxZGQ2ZGM3OWM5NTU4ZSBweTNrCis3OTM2OSAyM2RhNTY2MDdiMzNmYWVmOTAyZTJhOTQyMzNjM2RiZjRiMDcyZGZjIHJlbGVhc2UzMS1tYWludAorNzkzNzMgZDhmODU1MzMzZmI0OGI5ODY1MjMxMTliZGVkNDdiNDk0M2M2ZTcxNiBsZWdhY3ktdHJ1bmsKKzc5Mzc0IGQyZGVhYTcwZmFkYjQ1Y2M0MDE3NDljZGY2OTRiMTMyYWQyMWNiNmYgbGVnYWN5LXRydW5rCis3OTM3NSAwYWJmYTI2MDdmNTRlYjg2NTdlMzJkZjUzMjk0MTVmZDhlMmQ2ZmMzIHB5M2sKKzc5Mzc2IDkzNGNiZTczNjgwMzcyY2UyODU1YTI5OGY3MjRlMTgyMjQ3OGVjZWUgbGVnYWN5LXRydW5rCis3OTM3OCA1MzJkNzE0MjBmNDYxNTU4NTI0NGFlZGJkOTNiYzU1N2IwOTBjNWZmIGxlZ2FjeS10cnVuaworNzkzNzkgMjI5ZWE4Y2NjNTUzMDc1YzY0NDdmYWMyNjlkZGIzNjZlMTcwNjRiZCBsZWdhY3ktdHJ1bmsKKzc5MzgwIDgzZmE0Zjg5OTU2ODgyZjVlYjA3Y2E2NTI2ODk3MGRmNGI4MjAxYTYgcHkzaworNzkzODEgMTc5YzY0NzM4NjMzMGIxOGJkMjM2Njc1YTllZDIwYmZhMTM5NzZiNSBsZWdhY3ktdHJ1bmsKKzc5MzgyIDYyMzg1ZDliN2RhMDQzOGM4MjY2ZmEyNWUwOTA0NDcxYmMxMjc3ZjQgbGVnYWN5LXRydW5rCis3OTM4NCA3NDMwZmE3ZWVhOGNiOWY5MDA0MTNlOTU0NjVkMDFiNTI1ZmFkMWQxIGxlZ2FjeS10cnVuaworNzkzODUgNGNlYjVkYzM1Y2M2NWE2NGZhOTRiY2ExYzczZTY0NWY0YTU5NThhMyBsZWdhY3ktdHJ1bmsKKzc5Mzg2IGNhYzY2MWRiNzc5NWYxOWM2YmYwYjdmMWZlZTc3ZTk1OGQ2ZThjOTkgcHkzaworNzkzODcgNDk2ZDc2MzYwNzYzOTQ1YjZlMTJjOTgxYjljNTQwNGQzMWY1NGFlNiBsZWdhY3ktdHJ1bmsKKzc5Mzg4IDJlMDgxM2Q2NzM4ZGJmNGNhZTZhYjlkYzNlYTYzNjVkMjU1YmI3YTMgbGVnYWN5LXRydW5rCis3OTM4OSA3MjUxZTczN2E1ZDhjYWJkNmRiZjcyNGExNGI5ZjM3YTFjNzM4ODVlIHB5M2sKKzc5MzkwIDljYWFhZmQ1OTlkNjUzNDNiMTRmMDNlYjNmZTE1YjA0YzEzOTg4ZGQgcmVsZWFzZTI2LW1haW50Cis3OTM5MSBjM2MzNGY4NDc5OThhMDA2NjU3NzYwZDA3NmZjOGJlODI2ODhlN2U3IHJlbGVhc2UzMS1tYWludAorNzkzOTIgNGI4ZGVjYjQ1NzJjZDcwMmU4Yjc4MDI1ODI5MzM5OTE4MTIxNzNjNCBsZWdhY3ktdHJ1bmsKKzc5MzkzIGU4YjA4ZDc3M2U3ODVmODcyZDI1Y2NjMDg2ZDRkMWE0ODBjZDE1ZDEgcHkzaworNzkzOTQgMDMwOTYyMDkyMzczZTk1NDI5NWU5MGMxOWFkZGI3ODU1YzBlOTY3OCByZWxlYXNlMzEtbWFpbnQKKzc5Mzk1IDI0OGE3YWRlNDQ0ZmJlZjU0ZjE1YjhjNDU4NjVjNjcxMzAwNWIwMWMgbGVnYWN5LXRydW5rCis3OTM5NiBlZDlhM2RiYzMxMmU5YjBhNTJiNmY4MmU3MjBjZGFkNTMxMDBjZjc5IHJlbGVhc2UyNi1tYWludAorNzkzOTcgZDExZmJjNzk2NDk5YTMzOGQwNDAyYjg4OWE5MDRkYTk1NDEzOGMzOSBsZWdhY3ktdHJ1bmsKKzc5Mzk4IGQ2ODkzYzcwZGY2YTQ3ZDE4MWFjNTdjM2I2ODZlNTU4NGRkNWJjMDAgcHkzaworNzkzOTkgZWIxYjY0NjhlOTc3NDZmNjMwOTdmMmY4MDZhM2M5ZTk5YmUzY2Q2YyByZWxlYXNlMzEtbWFpbnQKKzc5NDAwIDVkNTQ2OTJiNmRjM2UzZTNlOWQ0YzA5NjhjZjIyZjUwODM3MTE2M2YgcHkzaworNzk0MDEgMDlhN2ExOWU3Y2I5YjA5MzhmMDJlMDk3ZWY1N2M0MTczNTA3ZTgxYiBweTNrCis3OTQwMiAzYjRlOWZhOWMxZThkYzFhMzFhNDRjODllNzU2ODZjYzcyMzcxMTlkIGxlZ2FjeS10cnVuaworNzk0MDMgNWY5YTcwNjRkNjJhYTAwNTkzNjAzMDE0NTNkODkxMjM1ODY1MGFiMCBsZWdhY3ktdHJ1bmsKKzc5NDA0IDRlZjY1ZTIzOTZhZTlhNWVlYWM0NGVkNzQyNTVlZGI5NzY3ZGEwOWYgcmVsZWFzZTMxLW1haW50Cis3OTQwNSA0Zjg0MWRmOGM5NzY2ZjkzNWU5OTM3NGMzYjRiODBlNzA2N2UxNmQ0IHJlbGVhc2UyNi1tYWludAorNzk0MDYgZTVkZDlmOTg2NDQwYzg4MmZiZjRjMGU5OWU3MTdhNThlZjJkOGZjZiBsZWdhY3ktdHJ1bmsKKzc5NDA3IDBkZmQ2MjA3NmRlZDQxZTIwOWY1ODM0MWE2NDA3NmY1NWUxNDdlMjkgcHkzaworNzk0MDggZTFhODRmMjIxNTM3ZDNiMzY3NTM4MmY5N2NlMWRhZWI0MjU1YzliMiBsZWdhY3ktdHJ1bmsKKzc5NDA5IDFhYTY4NDY3MmNlNmZhNjZiNDQzOTk1MDQzODFmOWUzMjY1MjE1MGYgcHkzaworNzk0MTAgZTE4ZDM4MjAxMjgwNTc3ZTE0MmY0ODEzNzAyM2U5OWQzNzdlZjJiYyBsZWdhY3ktdHJ1bmsKKzc5NDExIGM5OWMzNzljZWQyZmMwNWYyOTcyN2JhMjZmOGEwMjhmY2RmZTJhMWEgcHkzaworNzk0MTIgZDZjYTljZDFiNDExZTY1MTEwMTFhNWQ5MWU3MzgyYmI3ZTFhOTBjOCBsZWdhY3ktdHJ1bmsKKzc5NDEzIDczMjkzMTJmY2JkN2E1MjRkYWIwM2JiYWJiYjU2ZmRiOTcwZTc4YTggbGVnYWN5LXRydW5rCis3OTQxNCBmY2MxMDgzM2ExYzliNWE1ZjBlZGE5M2NhOTllYzdjZmQ4NTE4NjE0IHB5M2sKKzc5NDIwIGUyNzcwYmYzMmRjZjY4Mzk3ZDJjNWNiZmQ2YTU2OWMxNzk5MDZhNmYgcHkzaworNzk0MjEgOTM4Mjg0Y2RhMTViZjU4MTIyMjAzZWVkZjdkOTAxN2Q0N2UyNDIzMyByZWxlYXNlMzEtbWFpbnQKKzc5NDI0IDE0NDMyNzI0ZDBmZTdmYWFiYTA5OTIzYzdjZTIyYWY5MzFlMDRhMGMgYnJhbmNoX2xpYmZmaS0zXzBfMTAtd2luCis3OTQyNSBlNmI5ZWY0OWUzM2Y5ZjNiMTFmNjQ3NzlkN2U2OGQ0ODkzODk1NzE5IGxlZ2FjeS10cnVuaworNzk0MjYgZTBiOGVjYTIyNTI5MzU5NjllMmRiNDdlZjEwY2YzOTEwY2Q5ZGViZSBsZWdhY3ktdHJ1bmsKKzc5NDI3IDM4ZTQxMDA1MGRjN2MxNWQ1ZTA0YjBmZjI4ZGY3MWQ1NDNjZWYyNjMgbGVnYWN5LXRydW5rCis3OTQyOCAxNmE3ZDMyNjA1YmI4MzJkYTBiMTA1MjQ4ZDRlN2IzMjkyZDRlNWI1IGxlZ2FjeS10cnVuaworNzk0MjkgMWEwZTIxNzA2M2I3NTQyOGM3YWQyMGQwMTg4Njk4ZGIwNWYxNDAwMSBweTNrCis3OTQzMCA4NzAxNTgxZmI0NTUwNjM3MzdjOWIxMGVhYTYzNWM0NDMxNDc3YTlhIGxlZ2FjeS10cnVuaworNzk0MzEgMTg4Zjg2MDc1OWMxNDA0ODgzOTYwZDNjN2ZmOWEzYWExMWFjYzQ5ZiByZWxlYXNlMjYtbWFpbnQKKzc5NDMyIGQ4MTg3ZWQ5NDMyNTYwZTM3M2M0YWM5MjUyZDcwMGVmMDMzYTJjNjEgbGVnYWN5LXRydW5rCis3OTQzMyBiOTA3MjJkM2FlZmEwYmViZWQ2NmZkNmI3ZTVjNGRkNGJkOTc3MjgwIGxlZ2FjeS10cnVuaworNzk0MzQgODI2MzdlNjY4Y2ExY2NiNmI0MWMwYTAyZTFkNDA0NDZmNjM2NTY3ZCBweTNrCis3OTQzNSAwMzBkNmJmMWQ5OTU2Zjc3MGY5ODFjZDJmYmM2ZDc2NTJjNzYxYzRiIHJlbGVhc2UzMS1tYWludAorNzk0MzYgOTVhNzhhMmQ3MDBkODBjYjgwNzM5NDM2OGEzN2E4ZWQ5YWQ1NGQyZiBsZWdhY3ktdHJ1bmsKKzc5NDM3IDk0MjFmNjdiNmMyYTE0NjBiNWFhYjNhMDQwM2U2OTQ0ZDVmMmQ1NzIgbGVnYWN5LXRydW5rCis3OTQ0MiAyMGJhZjYzYjA5NGNkMGJkNjcyOWU0MTYwNmJlM2MxYmE3OWJlOGM1IGxlZ2FjeS10cnVuaworNzk0NDMgMmVjYjhlOTk2MGZjM2E4NzFiNzU0MjI2NjA4YzAzMmY3NjQyMDMyOSBsZWdhY3ktdHJ1bmsKKzc5NDQ4IGM4ZWNhYmJlODAxNjk5OTA0YjExNTAyNzc2YTI0MTQ5NDkxODViYjMgbGVnYWN5LXRydW5rCis3OTQ0OSBlNDA3ZWJhOGUzOGQ0NDlmODE4MzI5M2JlMjk1MmFkMmJkZmY2M2ZkIHB5M2sKKzc5NDUwIGFjYjFkYzY2OGE5N2JiOGU0MzA5ZjZiMTljM2Y1ZTkxZGVkMDYyOTIgbGVnYWN5LXRydW5rCis3OTQ1MSA0YmJhZmRmNGQ1YzFiZWJiMmEyMDYzYzEwYzEzZmRjODA0NDgwZTg4IHJlbGVhc2UyNi1tYWludAorNzk0NTIgNjYwYjlmMjRlZGFjOGUzNzE1OTQ5ZTc2NDY5ZThkNTZjMzcwZTMyZSBweTNrCis3OTQ1MyA1MjZiYjA4MmMwNTUyNWM5M2ZmZjExYjEyOTk4ZGVkNDUzYjJiMGFkIHJlbGVhc2UzMS1tYWludAorNzk0NTQgNTY0MTY5MTUxNTEwY2ZlOTFmYmUwYjg3ZGIyMTcyZDM3MTQxOTdiMSBweTNrCis3OTQ1NSBlNWZlMmY2MjU5ODNjYzZmM2YzMWJkYzk4ZjMxYmFjYjE2MjY0N2I0IGxlZ2FjeS10cnVuaworNzk0NTYgMGY2YTBiMWRiNGUyYjFlYzBiN2M5NDk1YWYxZWVhMTYzMmNmYzkzMiBweTNrCis3OTQ1NyBiMjI3ZGI5YTAwMjk3NDRiYmNmYjEyMjA4ZWIwNzg2NzBmOTExMTAwIGxlZ2FjeS10cnVuaworNzk0NTggOGM1YzVlODZmYjIyN2E2MjdiNjhlMGMwNzc4MzllZTExNjlkYTgwNCBweTNrCis3OTQ1OSAwZTdhZTUzYjRlNzkwMjRjY2FlNmEzM2RhYWM5N2IyNjkxNTdiNzk1IHJlbGVhc2UyNi1tYWludAorNzk0NjAgZTgxMWFhMDk0ZjE5NDI5NTdlNDhkYjY4OWYyNzE4YjIyM2E5Zjk3NiByZWxlYXNlMzEtbWFpbnQKKzc5NDYxIDkxNzBhYTk0NGYyOTMzNDViZDZmOGRhNzZjN2FhMDE5Y2E0ZGViNWUgcHkzaworNzk0NjIgZTExODNhMTM3ZDhjYThmNGQ3YjE1YTc1MWQ1ZDY4MWE0MWY0Y2RlNCBweTNrCis3OTQ2MyBhYjMwN2Y3ZGVmYTFlYzc5ZDNiNmE2ZDk5N2E1NjU4M2UyMDM4MTJiIHB5M2sKKzc5NDY0IDIyOTQ2ZDAwZWVjY2VmN2U0NmM3NGRlZWMzZTY1ODhhYTY0MjkwODcgbGVnYWN5LXRydW5rCis3OTQ2NSBmOTZhZDgwMDcxMmVlNjFmNGFhMTI5MGM1OTYzODEyY2I2ZTkxZGM0IHB5M2sKKzc5NDY2IDg2YjcxZjQwZThhYWUyNzA0ZDA4ZjVlNmU3Y2I3MmNhYjBmNGQ5YmMgcHkzaworNzk0NjcgNzFhNDVlY2M0ZGM5MTFlZDAzYmEyNzZiMzIwZjNkZDdhM2YwZTJiMSBweTNrCis3OTQ2OCAzMDllMmQzZThkY2MyMWFlNzBkMzQ4ZjViMDUwZmU4ZjZkOWI2YWMyIGxlZ2FjeS10cnVuaworNzk0NjkgOGU2YTE2MTU3ZmFmMWJkZjU0NGI0NTY3NTQ4ZTJlZGEzZDllZmE5ZCBweTNrCis3OTQ3MSBhMmFhNmRkZmU4ZTI5NThhY2E2ZTYyMzA0ZjU4MDE0YTNhOTIyZjMzIGxlZ2FjeS10cnVuaworNzk0NzIgZGI1YTNhMjc3YzBiNTgwZWJmNTFmYzRhMzE5MjAxZDA2ZDBjNTlhMSBweTNrCis3OTQ3MyBiYjJjYTFiNjMzMjFhNzhiNDEzMzQ3YWQ4ZjRjYWJlMGU0Y2U5NGEwIHB5M2sKKzc5NDc0IDQwZjc4N2IxNTFhYzZjMDUzNWE3MzU2ZTFmZDI2NDUxZTYzMjI2MzYgcHkzaworNzk0NzUgMmI2MzIxOTE1ZTkyYjYxYTZjODY5ZTc5NzQwOGQ1NmVhZDlkNjNhMiByZWxlYXNlMjYtbWFpbnQKKzc5NDc2IDBiYzA0NTI1YWY2MzhiZDAwNGIxMTA0NTVjZmQ1MzJkNjMzYmQxNDQgcmVsZWFzZTI2LW1haW50Cis3OTQ3NyA2MDAwOTYzMmVkMTE5ZjdiZGYzOTk4NWU2NzJiZDVjYTU5ZDZlYzgwIHJlbGVhc2UzMS1tYWludAorNzk0NzggOGVlMmJmODIxZjYyNjcxM2Y5OGJiNDlkN2JiNWQxMDQ0MzkxZThhZCByZWxlYXNlMzEtbWFpbnQKKzc5NDc5IGU2M2Q0Njc4ZmNhNzNmMjRkNDJlMTQ3MmZiYjZlYWE1NjkxOGVkOTcgcmVsZWFzZTMxLW1haW50Cis3OTQ4MCBiYjhiZDMzNThiY2EwMmNlNWE3MDFiYmI2YTdiNjQ4MWNhMDJlODJhIGxlZ2FjeS10cnVuaworNzk0ODEgYmVhNzVmZjY1MTE0NmRhYWQwMDJkNDFkODc4OTc2NzU2ZTUyYmRiYyBsZWdhY3ktdHJ1bmsKKzc5NDgyIGQ0OTM1MjQyNmRlNTEzMzNkMzdlNjY1MTQxOGNkZmIzMDAwOWVhNmMgcmVsZWFzZTI2LW1haW50Cis3OTQ4MyAyMTNhMGFlMmRiNjViMmUyNTE5OWUwMTA1YjQyZTA4MDgxOWJjNzYxIGxlZ2FjeS10cnVuaworNzk0ODQgMmEzMTBhNDQ4YTBhN2UyMDE0NWMyYmNkODkxZGI4Njg3YjMwYWEyYyBweTNrCis3OTQ4NSA1MWIyYWY5YzQ2OWViNGE5NTM2Y2QwOWRiMGIyODFkMTU5NGFiYTA5IHJlbGVhc2UzMS1tYWludAorNzk0ODYgMmQwNmM2YzdlNzMyN2RlYmRjZjZmYWNlMWZkZDA5NWNlZWQ4OGZkZSByZWxlYXNlMzAtbWFpbnQKKzc5NDkwIGJiYjM0MDUwMWYyOWZjMGYzMzY2MDQxMzdmMTUzOWEzZjAxNmQzMmYgcmVsZWFzZTMxLW1haW50Cis3OTQ5MSA5YjlmZDI5OTA3MmQ4ZmNjMzg0Njc1ZDg5YmY4NTRiYTVhMmE2NmE3IGJyYW5jaF9saWJmZmktM18wXzEwLXdpbgorNzk0OTIgYzNjODJkODA0MGQ2ZjRlZjY2M2JiZDkwYTVlNjVlODhkYTExZWZjZSByZWxlYXNlMjYtbWFpbnQKKzc5NDkzIDA0Y2MwNzViZGRmNWJiOTk2M2VmNTIwNTQyYWY3Nzk3YzJmYjUxN2MgbGVnYWN5LXRydW5rCis3OTQ5NCA2NmU3NTdkOGVhOTM0Y2VlYzFkNmI3MDc5NTk0ZTYwZjM0MWRlZGE1IGxlZ2FjeS10cnVuaworNzk0OTUgNzczOWFlZWZkYmMwMTQ0YzY5ZGI5NzZmOTJhOTNlMTAzOWE3OTZhMiByZWxlYXNlMjYtbWFpbnQKKzc5NDk2IGM5NmQyNzg2NzdhZjNjZDA4ZDhiZGMwYzQ4ZDY2MmNmY2RjODAzZTMgbGVnYWN5LXRydW5rCis3OTQ5NyAzMzI5YzA1ZTZlMzE5Mzc5Yjg4YWM0OTA5MWU0MDVkNzdjMTU3MjBjIGxlZ2FjeS10cnVuaworNzk0OTggZTRlNGJiZDM5YTIxM2NjZThjYmVkNzlhNzRhOWIyZTMwNzRhY2MzMCBsZWdhY3ktdHJ1bmsKKzc5NDk5IDQwYTJlN2FjOGE0N2UyMmEwMTU2Mzc1ZTlhNmI2MjU4Yjk3OGJlYzcgcHkzaworNzk1MDAgYTE0YTIwNWFiMWZiODQ5MDFkNWJlNmUxZmNkNjUxMWE0Y2Q4ZGM2MiBsZWdhY3ktdHJ1bmsKKzc5NTAxIGJjNjgxNGMzNGQ1ZjIwZTNlOTVhNDkwZTVkYTRhNmYzY2FlN2Q1ZjUgcHkzaworNzk1MDIgZjY5NzY5YWIwZWI4MTY2NzM1ZTU1ZDYzNmQ2OTE4OWM0N2Y5MzJmMiBsZWdhY3ktdHJ1bmsKKzc5NTAzIDVlMGZmNjUyODRmYTIwODliMDRlMzZjNjFiMjFhMjIzNzM2YzIxZTkgcHkzaworNzk1MDQgMWQwMDI3ZDM0YTUxZTIxYzk5MjI4NGViMzE1NDZiNzVkOTFiZmZjOSBsZWdhY3ktdHJ1bmsKKzc5NTA1IDEzNjE4Nzc1ODVmMmM0OTFlYmIwZTA3ZTZhMDU0MGM5MmMxNjVhNjMgcHkzaworNzk1MDYgYmYzYzQ4ZjI0MTdjNDQ3MTNkNDM0ODA5OGMwYWUxYTc4ODYxYTY5OCBweTNrCis3OTUwNyBkZGQ1NTA5NTFiODNmYjE3MGIwMWRlN2Y4OGYxYjczM2QxYTg1YTYyIHB5M2sKKzc5NTA4IDRkZDZlYjZiZTgyZmQ1MmYwYmU3NjhmZDM2ZTc4NTIxZTg0YzFhOGIgcHkzaworNzk1MDkgNjMyNjljNDE4NWM1MmU2OWQ2NTdmMmNiMGFjNDVjZjFjNDAxMzMwZiBsZWdhY3ktdHJ1bmsKKzc5NTEwIDBjMDI1ODRjNGU1MzRmZTdmMzg1YzE4MWY0NjMwMGYyZDA5NjM1Y2YgcmVsZWFzZTMxLW1haW50Cis3OTUxMSBhNjA5NTRlYjUxOGI5ODQ5YTkyNzMyNDQ4MDJkYjIxZTEyMzM1YzUyIGxlZ2FjeS10cnVuaworNzk1MTIgOTY1MWM4NGM1MjBkOWU4YmE1ZGM5MzM0NWU1ZWZlYTRlNmM5ZTU4MSByZWxlYXNlMzEtbWFpbnQKKzc5NTE0IDYwZjkxMjRmZGVhYzA1MTA4OWRlZDgwZTFlODE4NGUyOWJhMmVmOTUgcmVsZWFzZTI2LW1haW50Cis3OTUxNSA0MTlmZjcwMjQ0NzgzODllMGZmNTA4NmViZTRmNWE0NmFjMWVjOTU5IGxlZ2FjeS10cnVuaworNzk1MTggMzRkODIyMTk2ZDhiZDBkNmFiZDA4NjE4Yjk1ZDIxMjU3ZDIwNjA1NiBsZWdhY3ktdHJ1bmsKKzc5NTE5IGVmNmViYzA2YTc4NmRjMDBhMzg5MWY3OTQxZmVkZjA3OGQyMzkyNTYgcmVsZWFzZTI2LW1haW50Cis3OTUyMCBmZmU3Yzc5MWI1Yjk0ODc4ZjRhYWUzZTBkNzcxNzliNGUxNzIwNmM5IHB5M2sKKzc5NTIxIDEzMjMyMTJkYTE1NDAwNGFmZTcyODczY2E2ZjA0NmZhNWE1YWU5NGMgcmVsZWFzZTMxLW1haW50Cis3OTUyMiA1ZTllYWRjNzZlODdlZjdiZTZkMmFhYzQxZWFjYzU2ZmZjNDVmYzA3IGxlZ2FjeS10cnVuaworNzk1MjMgY2FkMTI2NDI4ZjQ4ZDc4Yjk3ZGE3NzFmYWI1ZDRiNzYyZDg5Yzg4YSByZWxlYXNlMjYtbWFpbnQKKzc5NTI0IDU3ZDhkN2YzMTdmNTAxYjQxNTVhOTk0NTIxMjFhMzI4Y2RlYTk1NmEgcmVsZWFzZTI2LW1haW50Cis3OTUyNSBmZDVjMGVhMjg3MGJhYzRiMGQxYzkyOTlmMDJjYmU3NWM0YWQwN2Q3IHB5M2sKKzc5NTI2IGU0Zjk2OTAxMmU2ODNjYWUyZWQ4OTE4MmM2ZTUxM2I4MWY0YjgyYjkgcmVsZWFzZTMxLW1haW50Cis3OTUyNyBkNTdjZjFhYTJkZDRkMDBjM2MzNzBhZTNkYzU5N2E4ZDAwNjMyNGM1IHJlbGVhc2UzMS1tYWludAorNzk1MjggOTllNTIzMTMyYWVhNDNkNzhhNzY0ZTEwNGM5MWM2MDc3OTQxYjQ1MCBsZWdhY3ktdHJ1bmsKKzc5NTI5IDg3YmMwZjEwODcwMjEzOTEwNzI5ZTUxYjMzMDk0YjJhYTA5YjAyOTQgbGVnYWN5LXRydW5rCis3OTUzMCBhMmU2Mjc4MjdiZjM1MDlhYjRhNjc4MWJmZmI2ZTNlODUyNzMwMTEwIHJlbGVhc2UyNi1tYWludAorNzk1MzEgMDFlOGIxM2ZhOTlhNTY1ZGM1YTllZTI1OWYwMTIzOGNlNjQ2MTY3MiBweTNrCis3OTUzMiBlY2I5YTY2MDliYjFjNTQ1MDliYjhjOGYxZjc3YTM4NjIyZjE3OGY1IHJlbGVhc2UzMS1tYWludAorNzk1MzMgNTkyMGY5YTVlMjJkOGQzM2MxMTI0NGI4MTVmZTIyMjhiNTMwZjkyNiBsZWdhY3ktdHJ1bmsKKzc5NTM0IDgzMjAyMmY2M2JjYmQ2NzU1NDA4ODE4ZDhhNjFiNmZhODY0YjMzYTIgbGVnYWN5LXRydW5rCis3OTUzNSA3YjhiYTAxOWNkMTViNTIwOTg3YTM4MTU5ZTNkYmVhZGE0Y2U4YzAyIGxlZ2FjeS10cnVuaworNzk1MzYgNGZjYWFkM2Y2NjliMjNmNmJlM2E3MDYxOTg1OGNhN2U4ZmJlNWNkNyBweTNrCis3OTUzNyA1NzBlYWUxNDgxZWI2MDExZmMwOWZjMmJjMzdlYzQ0ZWNhYzJhOGEzIGxlZ2FjeS10cnVuaworNzk1MzggYzM2ZjIzZGE4OGMxYWE1NDNmZDZjNDZhY2U2YTk2MjliZTNlNWIyZCBweTNrCis3OTUzOSAzNzQ4YmNhNGQ4Njk4YWIwN2M3NjA4NDEyNDFjYjE3ZDBkMDJiNzhjIGxlZ2FjeS10cnVuaworNzk1NDAgMjVhN2NlMDIzMDZjZGYxZDNjMTJiOWZmMjg3OTk1Yjk2ZWRiZWE0ZCBsZWdhY3ktdHJ1bmsKKzc5NTQxIGQwMGYyZWEyNWQyMGE0MWYyNDZkNjY4MGY1ZjMxYzdjN2QzMjNiZWYgbGVnYWN5LXRydW5rCis3OTU0MiA3YjY3YzM0MjkxN2NjZTY5MTA0N2E3YTUwMGJjMDFjYjg3YmVkZjQyIGxlZ2FjeS10cnVuaworNzk1NDMgMTNhODExMmVjYTUyZmMzY2Y0YzhkZTZiOWMzMTljZTllODEyMTNhYSBsZWdhY3ktdHJ1bmsKKzc5NTQ0IGE0ZGFkMjE4YzZlMzQ1Njg1ZDc1YTcyYTQxYTk3YzNiMjU1Y2I0N2IgcmVsZWFzZTI2LW1haW50Cis3OTU0NSAxZTJjOWZlYTdjYmUwMTBhNmRkYmViZjljMzE2M2RmMWNlNGFjMzg2IHB5M2sKKzc5NTQ2IDVjYzgyY2NlNDUyMTVmYzdlN2Y4YTMxZGZjOTJmM2EwZDA0ZWFiNjcgcmVsZWFzZTMxLW1haW50Cis3OTU0NyBjNzk2NWJkNWQyMDA0ZTJjN2YzMzI5ZGMyODRiNmM1NDgwMTMyMzY0IHJlbGVhc2UyNi1tYWludAorNzk1NDggNmRlM2RlM2FiNzFmNzUzNmE4YTEwOGZkNjVhYTQxOWQwN2M1MmJlNCBsZWdhY3ktdHJ1bmsKKzc5NTQ5IDg4MmQ2ODFkNTBhMDA0ZWVjNDQ2YTgyNzQwNzM3ODI0MTFkMzFhNTcgbGVnYWN5LXRydW5rCis3OTU1MCA1NGIwYTZmNzVlZDU3OTUwNmQ2YmEwYzg1MWM5ZDgwNmEzOTFhMzRjIHB5M2stY2RlY2ltYWwKKzc5NTUxIDc4ZTIwOTc3OTJiZWVhZDFjODJjOTQ5OWUxMzkwOWVhOTI1MWIyZmQgcHkzay1jZGVjaW1hbAorNzk1NTIgZmQ4ZmVmNmFmZWZkOGNkYmZkNGFjMjU1MjJjODg1YTcwMDg1ODkxMSBweTNrLWNkZWNpbWFsCis3OTU1MyBlOTVmODc1NWZmMWUzZjY2MzRmMmJlN2MyYTU1YzE5ZTNiMmU3YWQwIHB5M2sKKzc5NTU0IGI0ZGVhZWFiOTZlNzhkM2RjZTIzNTYzOTNkNTc5N2ViOTFiNmQ1ZGYgcmVsZWFzZTMxLW1haW50Cis3OTU1NSA2ZGY2YzE5ZmJhZTM1OGM0NTgxOGYzM2U4MzBhNjJlYjMzMjEzZjIzIGxlZ2FjeS10cnVuaworNzk1NTYgMDRlNzc1YjMzZTllMmEzN2VjNWIyMzU1NGE1ZDMxNDk4OGE3YjcxMyBweTNrCis3OTU1NyA5NjIwMWY0ODhjYzNjZTI4NGZlMDBiZjlhYjJmMGQzNzNkZWQyZjUxIGxlZ2FjeS10cnVuaworNzk1NTggYTQwNGUzNzAyZjc5ZjI4YzAyYzM5NmVjNTZhZTYxM2ZiYjhmOWYwNCBsZWdhY3ktdHJ1bmsKKzc5NTYwIGM4YTYwMWU3NDRjZjY4ODMwZGQ2NDMwZjYyMzdiY2FhNmU1NzFkMTYgcmVsZWFzZTI2LW1haW50Cis3OTU2MyBmMTcxNzEyODgwYzhlYmQyZjQ1MDYzODE2NTNlYTk2ODViZTYyOTI1IHB5M2staml0Cis3OTU2NCA2ZDM0MTVjMTViOGJmOTIwOGJjNDgwODRlMzc0MTljOWEwZTdhZjAwIHJlbGVhc2UzMS1tYWludAorNzk1NjUgMWJlYTU0MDRlMDg3YzBlNWZiNTM4MDcwMWJhOTRiOWNhOGZiZGJmMSBweTNrCis3OTU2OCA1MTJiODAyNTA3ODliNzcyOGMxNWViMDE4M2ZmMjdlYTViNzE0OTA4IHJlbGVhc2UyNi1tYWludAorNzk1NjkgMjQ3OGMzOGZlZmY3NDlmOGU2YWY1ODM2ZDZhN2I0N2E2NzVmMzdhNCBsZWdhY3ktdHJ1bmsKKzc5NTcwIDViYWQ4MThkMTRmMjg3M2YzOTM5ZmE3YjM2ZmY2OGFmMTVkM2JkMjUgcmVsZWFzZTMxLW1haW50Cis3OTU3MSAzZjQ0ODI1MjZmNTVhMjY4Nzg3YTAxZDI3OGIzNWY0ODY5Y2RjYzdmIHB5M2sKKzc5NTcyIDM4ODA2ZGYwNWQwOWQ2ZGVmOGM2NDc3ODRiOGE5MzQ5Mzg0ODliMTQgcmVsZWFzZTMxLW1haW50Cis3OTU3MyA0ZDlkOTc2MGM4OGJlZjZkNzAyMzM3N2U0YzI0ZGQwY2Q2NzQ4ODZlIHB5M2sKKzc5NTc0IDQxNWM0YmI0NWZlNjg3NzRmNGIwOGQ1ODZlODc4NzE1ZjQzOTRkZjUgcmVsZWFzZTI2LW1haW50Cis3OTU3NSBiNjQ3MzE1NGE3MGJjMzMxNWVlNWE3M2JhNzZlMGU0YWY0MjQxOGQyIGxlZ2FjeS10cnVuaworNzk1NzYgZWFiMzYxNjE3ZjZhN2QwNDE5ZGE0OGM5MTMxNjJjYzMyMjAxZjU0YiBsZWdhY3ktdHJ1bmsKKzc5NTc3IGJhYzRiMjg5Zjc5YWFkNTMwNmM4NDY2NjgxM2U2NzYyM2Y4MDYyNzcgbGVnYWN5LXRydW5rCis3OTU3OCBlYjlmZGE5MGRhNmVkODRkNTQ3Y2I5YzU5YzYzMWQ2N2UzMjcyNGIxIGxlZ2FjeS10cnVuaworNzk1NzkgZjM4OTE5YmIyNmNjNzExOWZkNWE4OWRjMjdjM2Q2NWY2ODk4ZGZjZiBsZWdhY3ktdHJ1bmsKKzc5NTgwIDdhNGEwYzY5ZTNhNWYyM2ZmMjdiZmQ3MjNjYjc4YTExYmYzMzcxODcgbGVnYWN5LXRydW5rCis3OTU4MSBiNTdkYTRhNGEzZWQ5NWViZDFlYWE2Njg2ZWQ0ZTNhOTJlMzMyZDA5IHB5M2sKKzc5NTgyIGU4MWNhODhkNDc4Y2M1NTgzMjE5ZTNmYTYzYjI5MzUzZDNlNmIzYjUgbGVnYWN5LXRydW5rCis3OTU4MyAxMzA2MDMzZDhhZDJhYjcxOWFjODM5YzE0YzgyMmY2OTM1MDY1YWM3IGxlZ2FjeS10cnVuaworNzk1ODUgZTM1ZmViOTk1YmQ5NmM0NTBiMmEwZDNjY2MyYzQwYzU0ZWVmYjIyOSBsZWdhY3ktdHJ1bmsKKzc5NTg2IGM1YjIwNjQ1ZTkzMzUwYzc0MmI4ODc1ZWVmZGRiZTBjMjdmYWYxY2EgbGVnYWN5LXRydW5rCis3OTU4NyBmNzc1NTZmZWJlYzgyMGNmMjAzNTYxY2ViZjNkOTNhN2VkMjA5OWQ3IGxlZ2FjeS10cnVuaworNzk1ODggYWU3Y2Y1NzhkZTVhZGRlMDAzOTZmNWQ1Y2IzOTY5MDU3YWVjMTgyYyBsZWdhY3ktdHJ1bmsKKzc5NTg5IDE3ZjA4ZDY1Y2MwZDgxZGQ0NzQyZDViZjlkNmJmN2U1NWZiNGQ3MDAgbGVnYWN5LXRydW5rCis3OTU5MCA1N2Y0Yzk5MDgyZGY1NjA5NzE2M2RkZmIwN2E3YzBlYjlhNzQ4MDVjIGxlZ2FjeS10cnVuaworNzk1OTEgNDhmZDY5YzJhMmI0OTRmMmIxMGIwOWQ4NWMzYzY3YjYxZTAzMTUwMCBweTNrCis3OTU5MiAxZGYzNGZhNDkxYmRhMDRiMDIyYjU2YzJmYWNhNWQ2MjY2MjViMTUzIGxlZ2FjeS10cnVuaworNzk1OTMgZDc3ZTM4NDYwZTNjYTdkNmIyYzhkZWI5MGUyYmQ4OWY5NDcyMzQ3ZCBweTNrCis3OTU5NCA0YjU1Y2VhNTUwNjc3NmZhZDg4Y2VkMzgwMTUzMDA3NWMzYmMxMmIwIHB5M2sKKzc5NTk1IDUxNDlkNDg0ZDU2YWM4MWRiNzVkZDFmMzU4ZWE1NDk1NTg4ZmI4ZTUgcHkzay1jZGVjaW1hbAorNzk1OTYgMjA0OTdkODVlMDExMmVjM2U0YzgxZmViMTU0ZjNiMzI5MDFmZTcxZSBsZWdhY3ktdHJ1bmsKKzc5NTk3IDNmMWQ2ZWQ0ODBkZDgxYjA0MzNiNDcxYmQ0YTcwYTE0NGZiOTQ1YTMgcHkzay1jZGVjaW1hbAorNzk1OTggZTgwNTJhNjBiYmI3YjZlZjMyZjBiNzA0ZWE3ZDQyNjQ3ZDVmOTBiNSByZWxlYXNlMjYtbWFpbnQKKzc5NTk5IGNmYmE1OWMzODM0MTVjMjkyYTU2NDEwMzQxY2I1NzE0NmRlZWFiMWYgcHkzay1jZGVjaW1hbAorNzk2MDAgODcwZmY2MjIwYTBiOTliMDQyMGMzY2UxYjY2ZmUzMjk5N2QzOGIzMCBweTNrCis3OTYwMSAyNzc4NTgzYmUyMWQ2MmNlZWE4NGYzZTA4ODViNWQ3NTBkN2MyMWFhIHJlbGVhc2UyNi1tYWludAorNzk2MDIgZDExMDFhYTk4NGMwNzViYzdkYzZlZTI5ZGM3MDdhZWFiOTIxYjA3MiBweTNrCis3OTYwMyA0YWMwNWQxZjYwYzE4MDY4YjY0ODQ2MTkzNGVhMDEzOTY0N2JlODkyIGxlZ2FjeS10cnVuaworNzk2MDQgNjZkYjAzYTcwNzY3OWM2OWE3ZTcwMDZjYzQyMzVmN2JiMmQ4ODk5ZCBweTNrCis3OTYwNSA2OTkyNDY3YmI4YjU5YzYzMTBkNGI1MTg4OWE1YWQ2MDkwMzg0MThjIHB5M2sKKzc5NjA2IDQzYTgzN2QyNzI4YTEzNDFmMDQ2ZjAxOTFmYWY3OGU0NzJkN2I1ODQgbGVnYWN5LXRydW5rCis3OTYwNyAxZmY4ZGQ2N2JlODIyN2E3NzAwZjg4MmQxYzE1YmIyNWExMTdjNTY1IGxlZ2FjeS10cnVuaworNzk2MDggMmY1ZGMyZmEwZTU2YTI1MTAxYjMwYWZkZmNmNGMwNTM4MzY4YjNkYSBsZWdhY3ktdHJ1bmsKKzc5NjA5IGNjYTRiNzJmNDUwYjY0Nzg2NzJhODhkZWQ5OWVhMzIxNDhiOGY2ZjYgbGVnYWN5LXRydW5rCis3OTYxMCAyNTVhNDAxYzE5YjA1YWFlNmE2MmZhNTAyOTIxMjkyM2UyZTc3N2ViIHB5M2sKKzc5NjExIGVmZWJiN2JjYWU4YjE2NGIwMjUxMDUzYzkyOWIyMGQ3YmI1NTQ1YWEgcHkzaworNzk2MTIgYjQ3OTZlZmNhNzE2NGZmZmNjMmNhMjE4NDA4MTM3NWIwM2I3YmQ5MiByZWxlYXNlMjYtbWFpbnQKKzc5NjEzIGExZGFiZjRlODg2NjU2MWJiNTc1N2YzYWJjNjRmZjA4Yzg4NmViNTYgcHkzaworNzk2MTQgN2RjOGI4OGJiMTVhNDFlNGI2NmViOGU5ZTIzZjM4NmE3NWIwNDYyOCByZWxlYXNlMjYtbWFpbnQKKzc5NjE1IDhkNzMxN2M5MjRjZWY4MjQyNjllZWRkMjFlNTY4MzgzNDExNTgwOWUgcHkzaworNzk2MTYgZWVlYTM0MDE0YzgwMjY4NmQ1NmJlMTgyNDkwMWIwYjg0ZTZkMjk1MyBsZWdhY3ktdHJ1bmsKKzc5NjE3IDI3OGU3ZWNjMGY3N2VmMGRlNjIzYTEzYjMzM2U0NjZkMDY2NDI2NDIgbGVnYWN5LXRydW5rCis3OTYxOCA5ZDUwYmNkM2YwYzljYTg1Yjc4MmUzNDhlNGQ3Yzk2ODVlZWM2NmYwIGxlZ2FjeS10cnVuaworNzk2MTkgN2M5MjM4MDg1YTVjZTBhMjZlMjEwYTM1NTIzOTZiMGQ1MWRlMDllZiByZWxlYXNlMjYtbWFpbnQKKzc5NjIwIDM3N2IyNmQ4NzZlMGRmZTdhZTU5MWVjNmVkNmRlM2YwZWZlNGFjZDIgbGVnYWN5LXRydW5rCis3OTYyMSA1M2FmY2RjOWFlMGFiYzY5MTBjMzVjMjUxMDJmOGJjMTc1Y2U4ZjM3IHB5M2sKKzc5NjIyIGY3NmMzZGVjODU4YjdiOWM4NTEwMzdmZWQ4N2FhMWQzYmI5OWY1YWUgbGVnYWN5LXRydW5rCis3OTYyMyA3MGI3ZTRhN2Y3Y2UyMGIyZTc3MTEzMzYzYjc5ZTljYWE3NTM1MGY3IGxlZ2FjeS10cnVuaworNzk2MjQgYWFiNjQyODNkMDBhMWZlNmU0NDM5OTRiMmMzOTEwNDdiOWY0MWQ5MiBsZWdhY3ktdHJ1bmsKKzc5NjI1IDg0ZWNiMzVhMDZiZGRmNmNhMTg2YzY5MmE1NTg3OGUzNjdhZTNlZmIgbGVnYWN5LXRydW5rCis3OTYyNiAxYjVkNWU3NGY3MzhmNDFhNDc0OGRiY2Q3MTc2M2E2MzcxNmYwMDA3IGxlZ2FjeS10cnVuaworNzk2MjcgZjBiYjEwY2UwNWM3NzI2NjcwYzUxM2VjZTQ0MDE1ZjBhMjQzMTg5NyByZWxlYXNlMjYtbWFpbnQKKzc5NjI4IGFlYTMxOWVhMjZhOGU5MDMyM2UzYzUxNzgzMmVhZGU2MTNhNGY3N2UgcHkzaworNzk2MjkgZmZhMGFhNzBjNzQ2ODNmNDUwYjhmYzY5ZGRlNGYzYjFjYjNhMWVhOSBsZWdhY3ktdHJ1bmsKKzc5NjMwIDc2NTk0M2MxMTE1Yjk1YmZkYTNjODI4ZDViMGRlMWQ2OThhMGYwNTEgbGVnYWN5LXRydW5rCis3OTYzMSBjMzRkZGNhMzY3ODZjMWM0ZDcxODVlZTMxYjllYzc1OWE5NjkwNTQ5IHB5M2sKKzc5NjMyIDU0NjJjNWE5MWY4ZGNiOWRjOGY0M2Y1MWUyODhiNGJkM2IxNjcwZGIgbGVnYWN5LXRydW5rCis3OTYzMyAwYWI4OWU4YmRlZGM1NzY2ZGUyMTdjYTI0N2U4NjMwZTIwMGE2NTJhIGxlZ2FjeS10cnVuaworNzk2MzQgYTdlOWY4ZTM1NTNmN2NhNTY5NzMxYzBhNDc2MmNkNmE1ZDBkYzFmMyBsZWdhY3ktdHJ1bmsKKzc5NjM1IGQ0Nzk5ZWU2NGMyM2IxYzU4NGIyMjQyNzlkZGUxZjM3ZDBmNzdlMGQgbGVnYWN5LXRydW5rCis3OTYzNiA0ODc3YzExNTkxNTNmNWVmZDk5ZGNjYzVhYjhkMmY3N2IzZTRhNDhkIGxlZ2FjeS10cnVuaworNzk2MzcgNGVkMDRhMzljMGE5MWI5M2Q1NmFmNmViZjUxMWYzNGUwZDc1OTA2MiBsZWdhY3ktdHJ1bmsKKzc5NjM4IDU0OTY1MDNiOGIxYWJkNzJmMDNkNDg2NThmMDYyMmM5ZDI0YjZjOGEgcmVsZWFzZTMxLW1haW50Cis3OTYzOSA4NmY2OTk3NjYwMTYyY2JkZGEwMTkyYzNlYzA5NzkwODcyNGE2OWYxIGxlZ2FjeS10cnVuaworNzk2NDAgZDM4NTg5NThkZmY1M2U2MjQzNTIyMWFiMTk1ODdkNTMwZTk4MmUzMSBsZWdhY3ktdHJ1bmsKKzc5NjQxIGI1MjlhMTQyY2M0OWU2ZjMxMGFiNzQ2MmZkMmZmMjI2MWI1YjRjNDAgcHkzaworNzk2NDIgZDMzNGE3YTU2ODQ0OThjZTdlZTk1OWE0ODAwYjYwMzAxOTgxMjYzZiBsZWdhY3ktdHJ1bmsKKzc5NjQzIGViY2ViNzc5NjdkZTg2MzQ4YTEyZmFlMDAzOTQ2ZGUyOTkwYzkxNjUgbGVnYWN5LXRydW5rCis3OTY0NCA2ZDQ4MzVhODFiNjMyYWQwMjBmNmIwYjhkNDhiNjFhZGRiZmQwM2FlIGxlZ2FjeS10cnVuaworNzk2NDUgZmE2NDFkNjA1NDY4ODRmZDljMDYyMTE5ZmFiN2RhZWI3NGMwMGQ3MiBweTNrCis3OTY0NiA2NmI2MGE2ZTgxOTg0NmY2YmUwZWE2NzkxNTlmYTBiZDZjNWQ3NmQyIHJlbGVhc2UyNi1tYWludAorNzk2NDcgYTg4ZTBmNmFiOTQ1YTE2NjkzMTNhNGEyMGFiODVhMTNjNmU5OTVlYyByZWxlYXNlMzEtbWFpbnQKKzc5NjQ4IDg5ZTg3YmE4YWI0ZTBiMGY1MzE2NGRkYjIxYjNkZjFkNGQ4MTFjZmIgbGVnYWN5LXRydW5rCis3OTY0OSA2ZmU1ZGMxNzVjMjY0ZGYyYWIxMjI1Mzg3YWJkOTBlZmU1YTliODkyIGxlZ2FjeS10cnVuaworNzk2NTAgZmRkMDEzNzQzMmY4NTM3MzlmNDE1Zjc4NTBkYmNiOWM1ZjgyOTZlOSBsZWdhY3ktdHJ1bmsKKzc5NjUxIDVlYmNhNjIyODkwMzZiMzdiY2I3ZmQ0ZTA4YjQ4OTdkYTEyMTU0NjcgbGVnYWN5LXRydW5rCis3OTY1MiA1MGIyYzBmZTVlMjdiMzljMjM0YzE5ZjJlMzNmOWUyYTM4NzAyNjI3IGxlZ2FjeS10cnVuaworNzk2NTMgMTU0ZGNmYTMyYjIwMWFlY2RhYjc2ZjVmY2VjM2M4ZDhlYTYyY2IzYyByZWxlYXNlMjYtbWFpbnQKKzc5NjU0IGE3MDdjYTI2MDM0MWI1ZjZmMjgwYTcyNTRlYTZhODg0MThkNmZlNWMgbGVnYWN5LXRydW5rCis3OTY1NSA2MjllN2IzYzhiMmQ5NzZkYzcwZjY0ZTNjN2FlMWI5NzU0MjQyNTFhIHJlbGVhc2UyNi1tYWludAorNzk2NTYgZWE0YzZjMDY4OTUwMDlkMGUwM2Y5NzNhMDI3MDYyNmY4M2JjZWNhZSBweTNrCis3OTY1NyA2NThiMzllNjZkZWZlZDZmNmRlZjdjNmUzMzIxZTIyZTIyMWNjMTJkIHB5M2sKKzc5NjU4IGQ1ZjJjNzQyNWI0YTk0N2VlODUxYmZkNTRjMjkyYmY5YzhlYzZkZDIgcmVsZWFzZTMxLW1haW50Cis3OTY1OSA0NGQzMmE2YzllMzU3YTMzYWM2MjYzOWE3OTkzMDE3OTM0NTBkMDQ1IHJlbGVhc2UzMS1tYWludAorNzk2NjAgZGE3YjAwMDZhNzk5N2U3N2I1ZDc4ZmYzYzgzZWM4ZTU2NjhlOWJlZCBsZWdhY3ktdHJ1bmsKKzc5NjYxIGFkOTRhZjkxMjljY2EzZGRkZTYyNjg4MjU4NDQzMzk3ZGEyMmUxMmIgbGVnYWN5LXRydW5rCis3OTY2MiA3Y2E2YTM0MzFmOWUyN2NhMTE0ZmY3YzQzYjMwYzRlYzE4ZjNmODU5IHB5M2sKKzc5NjYzIGU0N2E2ZmY1YjUyMGYwZDFlNTNkODBjNGQzZWVhMDk1ZTBiNzM4MmIgcmVsZWFzZTI2LW1haW50Cis3OTY2NCAyODExYmU5NWM4Yzg0NDhhZWVjOTliNmU4NmNkMjZmZWM1MDc4ZGJjIHJlbGVhc2UyNi1tYWludAorNzk2NjUgYzU0ZGQzZWVlZDU2YjNmMmNlZTBlZGE0MjZmM2JkZGYxNzg3MTFiNCBweTNrCis3OTY2NiA4YzhiZGMxMWU5Yjk5MjljNTUxMTdjYjg4OTFjZDVkZGExZWUxOGI3IHJlbGVhc2UzMS1tYWludAorNzk2NjcgMWQ0ODRjNGRiZjYwNGNkYmQ3MWQ4ZDdjZjRkMDYxOWU3ZmZiNDM3YSByZWxlYXNlMjYtbWFpbnQKKzc5NjY4IDUwNzgyMjBiZDFlYTYzMjBiYzI3OWZlMTU5N2U5NzFkZjM4MjljOTAgcHkzaworNzk2NjkgMzM0ZDQ1NjJjODc1YTkwMjE1NzlkNGVjYWU1NjdiMzkwNjFmNmQxNiByZWxlYXNlMzEtbWFpbnQKKzc5NjcwIGNmODAzNzcxODRmZmFhNjg2NDQzMWUzNTQwYzljZWI2YjFlYWEwMzEgcHkzaworNzk2NzEgYzJiMjE3ZmU0ZWQ0NTQ4MWViNjkyZWNlYmE4OTIyYmZkZGU4YjUwNiByZWxlYXNlMzEtbWFpbnQKKzc5NjcyIGMwYjYyOTliOTNlZWJlODY2YmRkYmE4Nzc0ZDJiY2Y4ZWJlZmNiNzIgcmVsZWFzZTI2LW1haW50Cis3OTY3MyBiMWMwMGM3ZDNjODU1ZDUxNzI2NDc2ZGZhNTZmMDRiMjg2OGE2ZjFkIGxlZ2FjeS10cnVuaworNzk2NzQgMDU0MGE5NjI4Njk4OGE0ZGFhNzM0MTJiOWQzNzc3MDE2ODdiYWZkMSBsZWdhY3ktdHJ1bmsKKzc5Njc1IGNmMzRmYzFlODQxM2UxN2M5N2ZiZTlkMzAzZDQ1YjM5ZjM0OGFjYzMgcmVsZWFzZTI2LW1haW50Cis3OTY3NiBiMTk0MWNmZmZhNWM4NTE2MWZhMjIwMzBiOWUwMTJkM2RmNTA0M2FmIHB5M2sKKzc5Njc3IGQzMWUyNjlhYWNkZWJkMDgyNDkzNzA1ODVlOGJiZGNmODNlYjI1ZTAgcmVsZWFzZTMxLW1haW50Cis3OTY3OCBhNjY1NDVkYjNiMDY5OGE5OTE3NzU0YjZhM2ZhNWZmYTU0MDAxYzAxIGxlZ2FjeS10cnVuaworNzk2NzkgZWIwNDljM2MwODNmYzgyMTQzNjQzYTAyYmYyNDEyMmViNzc4N2RkNCBsZWdhY3ktdHJ1bmsKKzc5NjgwIDI3NDUxYTk2NzY1MDBkMDc0NjdmODdiOWNiMmE4YThmZDlkODczMTIgcmVsZWFzZTI2LW1haW50Cis3OTY4MSA1M2VlMzhlNjM4YmY5MGU5ODNlOGFmOTMzNmNhN2I2YjU1NGYwN2VlIHB5M2sKKzc5NjgyIDNiMWQwYTNhZGZmZmFlNzQ5ZGNlMjg4YTE3OTJlZDk3ZWVmOGNjOGUgcmVsZWFzZTMxLW1haW50Cis3OTY4MyBiZDUxMjFiZjY5OTZkMGMzZTllMTViNzdlMTQxMmY3MTQxMDQ4MzA1IHB5M2sKKzc5Njg0IGJhNDgyZjQ4ODdmN2Q2ODAyYzJlODE2NzE3ZjE5YjM1MDRlOTBmMjYgcmVsZWFzZTMxLW1haW50Cis3OTY4NSBhNTg0ZjI0MzE4MGQ1MmE2ZDZjMjJjMTAzZTcyZGQ3NzMzZGE3Njc5IGxlZ2FjeS10cnVuaworNzk2ODYgN2QyNzI0ODhiNjNjOWE0MmYyMzhlYjc3MWRkMmY5MjYzNWI3NTIwYyByZWxlYXNlMjYtbWFpbnQKKzc5Njg3IDU4MGYyZjViYTg1ZjM2NTE4MTY4MTNlYzc3MzY5OGIyYjViN2JiNjggcmVsZWFzZTMxLW1haW50Cis3OTY4OCA5YjI0YWEzNmMwNmY4M2UzYmI0MWZkN2Y1NTNkZWQ2YzNmNzQzYWIxIHB5M2sKKzc5Njg5IGQxNTIzNWQyMTM3YzE0ODU4MWQyOTY0OWYyZjI3OTJkOTRkOTVjMDcgcHkzaworNzk2OTAgZWExMGNiNjEzOTBhZWEyMGZiZDk2OGMwMzVkYzUyZjE1MDhlNGRlMiByZWxlYXNlMzEtbWFpbnQKKzc5NjkxIDRhNmUyMDEzNTQ3MDY4ZjA3NzBiN2JjMjY4MmJiZDA2NGI4MGI3YzQgcmVsZWFzZTMxLW1haW50Cis3OTY5MiBjNjY5OTViZWZlNDI0MjFiNTZlOTBhZjM0N2E0ZWQ0MTU5Yzc0OWIwIHJlbGVhc2UyNi1tYWludAorNzk2OTMgYjYyYTY4MjExN2UwMGYzODUyOTBhNWU0ZGFjYjg1ZWRmZWVhNDk1OCBsZWdhY3ktdHJ1bmsKKzc5Njk0IDM1MjdkNjU3OWVjMjkwZmQ5MGQ5YjRmYzQ3ZTZhNzI3NTFmZTQ1YjIgcHkzaworNzk2OTUgZDVhYmQ4ZGZkNGY0YmFhMGFiZmJjOGU2MmRlOTUzMTRkNWFmOTcxMiBsZWdhY3ktdHJ1bmsKKzc5Njk2IDA2YTQ2Zjk1MTk0ZWYxNDE1MWNlY2M2NTYxYmQ5YTY5NDkzY2JjZjUgcHkzaworNzk2OTcgOGFiOTYwYjYxMWE2ZjFiOTFiZWM4OGFiMzFiOTBmZmYyODYxMjQzMiBsZWdhY3ktdHJ1bmsKKzc5Njk4IDM5ZWZkM2ZjNTllZmE3ZjA4YzA4OWRkMjA0MTg0ZmI0MjQwNTJiZjYgbGVnYWN5LXRydW5rCis3OTY5OSA4NzY2NjM3NmQ4YjA1MDQyNmFlZjk1MzU0MzU4OGM3YThmNDNkNGRhIGxlZ2FjeS10cnVuaworNzk3MDAgNDBiYzhiMWNhOTMyOTg5ZjdhMWY3N2IyYTJiMWY3YjU3NmJkYWY4OSByZWxlYXNlMjYtbWFpbnQKKzc5NzAxIDNhMGY1MjViNTliNTk3NDhjMTQwMmY0NDNhMTA4MjkxZmMwZjBmOTggcHkzaworNzk3MDIgODZiZjM4ZWEzMTIzNmUzYmVhZTA5MDY5YTg3NWNiODAyMDk5OWM3NiByZWxlYXNlMzEtbWFpbnQKKzc5NzAzIGFhMTIxYTM5YTk1NjcwZTQ4NjI2YTBhNzdiZDg2ZGNhYTQ3YTQzMTEgcHkzaworNzk3MDQgZGEzNGQxZjQzY2IwMDA1ZmZmOWQ4ZWQ3NmExZDE3YTRmNTU3MTYwMyBsZWdhY3ktdHJ1bmsKKzc5NzA1IDdlYjkwN2M4NTRiNDJhZDlkYmJiMTgyNTZiOGY0YTQ4ODlmYjRmZDQgcHkzaworNzk3MDYgYzIxYmM4MGM4M2Y2MmZkZDE2MTllMDExN2M1Y2MxYjUyNmY2ZGZmMyBsZWdhY3ktdHJ1bmsKKzc5NzA3IGIyNjI1YWNjMjQ4NGU1MGViNjAyMzViZGE0NWZlOWE4NzU0ZGEwMmIgbGVnYWN5LXRydW5rCis3OTcwOCAyZTU1OWMwYWQ4YzM0MjhmZjI2YzJmZjJlZWQ3MjgzNTI3MWE1ODZmIHB5M2sKKzc5NzA5IDYxOTkwZjc2MzQ4NTkzMGU3OTNlYjljZmM5ZDk4NzI2ODkyM2Q1OWUgcmVsZWFzZTI2LW1haW50Cis3OTcxMCBlMTQ2MTMxMjRjYzE0Mjg4ODQwN2U3MDlmNmIyMzIzNGRmMDFjZDdkIGxlZ2FjeS10cnVuaworNzk3MTEgNjYxNThlNGZkMDIyN2U0MDVlNmEyYjlmYjVkOGNmZDA2OTQwY2FkYyBsZWdhY3ktdHJ1bmsKKzc5NzEyIGExODQyMjdjZmI5NDNhMGMwZDAyNTIwYWFhMDlhODk1YmNmN2UzMzcgbGVnYWN5LXRydW5rCis3OTcxMyBjNzNhNjU4ZGE2ZmFjMzQ0MDMyZGM0MjgyYjQ5OTgzOWM0NDY3OTRjIGxlZ2FjeS10cnVuaworNzk3MTQgZTI5YTJlMDNlNzM5ZTY2NjllZGM2YWE5ZGM2OTUxYjRkN2VjZmFjMSBsZWdhY3ktdHJ1bmsKKzc5NzE1IDNmNzg2NGMxY2YzZjYxNTQzZDRkMTdhNzg1YzI1OGZjM2NkZGUyMTYgcHkzaworNzk3MTYgMzQ1YjZhYjMyZDY1NGY0NjY0ZTgwMjZhZDA2NGYwMzg4ODgxOTkwMyBsZWdhY3ktdHJ1bmsKKzc5NzE3IDgyYzIwMzRiODA5NWY4NDQwMzQ5MWY5ZWZjYTJmYmUzNjFiMDMwNzIgbGVnYWN5LXRydW5rCis3OTcxOCBlZTM0MjVkMWM2ODhjZmQ4MTVjYzU1YzY0M2Y4ZjYwM2ExZmEwMmU0IGxlZ2FjeS10cnVuaworNzk3MTkgNGQ4NGUzZmEzMzNhMjFmODlkZjc0NzYxMWFlNDEzODEzNGE5ZjZlOCBsZWdhY3ktdHJ1bmsKKzc5NzIwIDliNTAwYTJjODU5ZDA2ZmI2NzE0M2RhYjEyYmU4ZjQ5ZTI0NDNhNTEgcHkzaworNzk3MjEgYzhmOTU1MDAzYjJjMWM1YTM3NmIzY2U3MTkzZWNlNWUzMTIxZTYwNSBweTNrCis3OTcyMiA2YTI0ZGVmY2MwMGIyY2I5ODA1YTgyZjdkNzUzZDE1OGRhMmFlMGMyIGxlZ2FjeS10cnVuaworNzk3MjMgOTY1ZWM2MzU2ZDVkODQ0NDIwZGYwNDZiNmY2NWZhY2NhMTdjMzUyYiBsZWdhY3ktdHJ1bmsKKzc5NzI0IDgxYzJmNTkyZTgwODEwYTg0NjYxYmYyYjg2MTlmMzAzMjYyMmEzOTAgcHkzaworNzk3MjUgM2M0YzBhNzE2YTE4YTQ4ZmQ1M2YwZDQyYTkwMzk4ZWI0OTM4YjMxOCBsZWdhY3ktdHJ1bmsKKzc5NzI2IDBjZmFiZWQ0NjY2OWNlOWQwYTg0YTYxYWQ0YjFjOTc5MWI4NTI3NjAgcHkzaworNzk3MjggZGE5MzlhYjJiZmUyNzc3YTgwOTQxZjMwNmNhN2M1OThjMjc3MWVjNCBweTNrCis3OTcyOSAzOTkyMTAyNjNlNzEwYzA3YThmMWMwMThmNzQ1YTk3NTdiMWVlOTAyIHB5M2sKKzc5NzMwIGViNDE2NzY3MjE2M2M4ZTMxZTA0MTNkMjM4OTY5ZTBkOWE3ZTNkOTAgbGVnYWN5LXRydW5rCis3OTczMSAwZDU2N2NlNWVjZTRhNDMxZGZkMWI1YjRmYjgyNWFiNmEyN2NlNmM4IHB5M2sKKzc5NzMyIDM5NWEyN2E0NGE5ZTQyNDZkOGZjYmU0NzU1NTRkNTQxODE3OWIxNTUgcmVsZWFzZTMxLW1haW50Cis3OTczMyBkNTg2MmQxMmQ5MmFiNGQ0NGVhOWMzMGI2MDg4OGZiZmMxMTY1Y2JmIGxlZ2FjeS10cnVuaworNzk3MzQgZjljMzY4ZmUxYWNmMzA4ZTMyNGFiZDcwYjdjODc4MTI0YmM3N2YxNCByZWxlYXNlMjYtbWFpbnQKKzc5NzM1IDY3NzdjZmFiNTE1MmUyY2RmZmVjYmZjNjliYTkyZmZlNmRkZDkwNGEgbGVnYWN5LXRydW5rCis3OTczNiA5ZWU5N2E0YWIxNWMwYzliN2NjOTUxNDU3ZjU0ZjA0NWY4YTNkZWE3IHJlbGVhc2UyNi1tYWludAorNzk3MzcgMmRhNTEzYjQ3MmNiZTUwZGU0ZjY0OGIzNDM2MWY4MTkyYjgzMjBjNSBweTNrCis3OTczOCBhOGRkZTAyNWE2Zjk5ZjAxZjBiNzhhMWRlZmFkMWZlNTc4YjI0Y2RkIHJlbGVhc2UzMS1tYWludAorNzk3MzkgMGRlZjI4ZGI3Nzk5N2VlYzM0MDQ3OGU5YTg5ZjQ2NWFkNDFjMTAzZCBweTNrCis3OTc0MCA0NjBmNDFiZDBlMzRhY2VlNjQ1YzQ0MWJiN2I1NTgwYmVhZWFhZWM3IGxlZ2FjeS10cnVuaworNzk3NDEgNTcxNWRlMmE0MDUxMDUxZTJhZTE4NzIyODE3MzFiYTdiNmQ4YzE5MSByZWxlYXNlMjYtbWFpbnQKKzc5NzQyIDU4ZGM0ZjMxNmZmNjQ2Y2RjMzE4NmY3NmJjMDg0NWQzMzA0YmQ5OTYgcHkzaworNzk3NDMgODFmZTFkNDVhZTc3ZmE0MmM5MzEwNDU0ZGVlZDk0MmZlOWNkMmVhMSByZWxlYXNlMzEtbWFpbnQKKzc5NzQ0IDVjYThlNDE1MDRiNmY5Mjc5YTZkNWU2NGIwZDFiZjIwY2Q1OTAyMGUgbGVnYWN5LXRydW5rCis3OTc0NSBjMzk5ZTkzYmYwZTQ1ZGMyYjcxYWIxZjQ5MzQ3MGEwYTM1ODQ3NWZjIGxlZ2FjeS10cnVuaworNzk3NDYgNzI0MDliMjMxOTY3MzNhMzQzZjdmNjY2MzJmYjc4YzMwOGM2MGI3MCBweTNrCis3OTc0NyBjMWI4N2UxM2U5ZDNmZjE1YzRlMWZiNTIyZjE1MDE3ZmNiNTI5ZTI5IHB5M2stY2RlY2ltYWwKKzc5NzUwIDFlNmYyNjgwMTZlNDczOTRhZTFhYjVhYjE3OTcyNDAwNjY0ZDU0N2IgbGVnYWN5LXRydW5rCis3OTc1MSBlYzFhNTQxMmZmOTBkZWFlM2VkZmViNDE0ZmU4MWYxMmYxZDkzNmM2IGxlZ2FjeS10cnVuaworNzk3NTIgN2FjM2Q4OGUzNWMyMTBmZjJlMjFhZDNkNDNiZDBiZDIxNjRkODhlYiBweTNrCis3OTc1MyA4ZTA2NDE3ODU1MDc0NTNmMTY0ZDEyOTFkNjkxMTVkNTExNzZmZDJhIHJlbGVhc2UyNi1tYWludAorNzk3NTQgZGM2MzQxMWEwMTA0ZWJhNDJiZjZmMjljNGVjY2UyNjVmZWE1OGVjZiByZWxlYXNlMzEtbWFpbnQKKzc5NzU1IDVkZGEzZjMyYTJjZTJkZDAxZmI2YzM2ODE5OTExNjViZjAwOTllZTAgbGVnYWN5LXRydW5rCis3OTc1NiA4YWEyOTZmYTZkNmM1M2EwNzRhM2IzMDBiZGUyZDUwYmY2YzAwMWExIGxlZ2FjeS10cnVuaworNzk3NTcgNDVkZDliZjM2MWVjMDMxNWYxODk3YjczNWQ0Zjc3YzU1NDRlNjQ4YyBweTNrCis3OTc1OCA5MzA3ZGVlZWU0MTJhMjIzZjE0ZjU4MzEyODI0MGZmYzUzODA3NWIyIHJlbGVhc2UyNi1tYWludAorNzk3NTkgZjQxNmYyYzJjMDk5ZTg0NzUzN2Y1ODkzZDhhYjcyNDA1ZDBhZGFhMSByZWxlYXNlMzEtbWFpbnQKKzc5NzYwIGI2YzZmNDJjZGRkZTVkZjRkZWRhZjViZGZjMGY2MGJmMjVlZGQ0YmQgbGVnYWN5LXRydW5rCis3OTc2MSAwMjI1ZDI5ZjBiZDk4ZTMzNTAxM2UxNmMxNDU2OWQzZDc5ZWE2ZjkxIGxlZ2FjeS10cnVuaworNzk3NjIgYWNjOTAwZGMxODRiYTliMGM2MmY1ODJmOGY3Y2VkY2E3NmUyMmVjZSBsZWdhY3ktdHJ1bmsKKzc5NzYzIDBlY2U5OGI4NTNkNTEwNDFkNTliZjBmYTEyYzNmMWNiYTgzOGFmZjQgbGVnYWN5LXRydW5rCis3OTc2NCBhNjYxYzk2YjhkMTBlY2Y3YjhiOTlkNWQ3YzllNjhmODg2ZDZmZjVlIHB5M2sKKzc5NzY1IGZiMmQ2NGE0ZDg3MmMzMmM1MzdlNzZjNTY4OTI1ZWMxNzZkMzQzYjEgcHkzaworNzk3NjYgYjY5ZGNmNjM1MDJjNGRmMjQyZjk5MTMyZmU2ZGRlNDU3ODEyZTQzZSByZWxlYXNlMjYtbWFpbnQKKzc5NzY3IGMwNGE2MjIyY2M3ZGQ1OWRmMjc1YjJjOTI0YjRiOTdmN2Y4ZGZlM2UgcmVsZWFzZTMxLW1haW50Cis3OTc2OCBhOTAzYmIzNWVmNGY1MzU3NTBlMDcyYjc5MGI5ZWFmNGRmOGRjNjk5IGxlZ2FjeS10cnVuaworNzk3NjkgYzU0Y2ZlODI4Yjg0YTNjZDBhMTA1ZTFhZTA3OTM5MmI0NmJhZjRhZCBsZWdhY3ktdHJ1bmsKKzc5NzcwIDgwMDQzNTdkNWJjYzAzNzJlNTIxODZmYmEyZWNjNGEyOWNlMzJiYzYgcHkzaworNzk3NzEgNzE3NzlmNGEyMDc4Mjk0YjU4ZGYyNzYzNzYxOGFlMmU3MjZhNDk2ZCBweTNrCis3OTc3MiAzM2EwMmU0YWM0YzJmMWU3ZTk3YmRlNDUxMDk1YTc0ZTJiMGEzMmI2IHJlbGVhc2UyNi1tYWludAorNzk3NzMgODkzYzc0ZDU0N2VlNzM4MDYyYjY2ZDVlM2JmMzIzN2RlYWFlZGU3NiBweTNrCis3OTc3NCAxYWJmMzdkYjI1N2Q5ODhkYmY2MDM2MTA3YjE3YzA1MTM0ODg1YmJjIGxlZ2FjeS10cnVuaworNzk3NzUgMjNkYmM4YTNiOTdhOTk5OTZhN2ZiMDY4M2Q4Nzk2NWM4ZDRmMGZjNiByZWxlYXNlMjYtbWFpbnQKKzc5Nzc2IDYwY2E4OTgzZGQzYjFlMjVmZjM0MzA3OGMzNmIxYjJhOWJhYTNhMmIgcmVsZWFzZTMxLW1haW50Cis3OTc3NyA1MzUyMjA0YzhlODhjNWJkMWZlN2E5YWUwMTc1YWE2NWVhYmNmZDJiIGxlZ2FjeS10cnVuaworNzk3NzggZTY4MTVlMWI3NTAyYzY0MDllNGZkN2QwZWFlMDIzNzAxMWU3NDdhOSBsZWdhY3ktdHJ1bmsKKzc5Nzc5IDFjYzRkMmRiNWNkNmJkYjNiNDZjZmI0YzA4NDFkMDAyMTExMGZkYTYgbGVnYWN5LXRydW5rCis3OTc4MCBjZmU1ZmEzNGRiNDY2NjRjNGZlOTgzMGIxNDVkYmQzMTFhZGJhNzI0IHB5M2sKKzc5NzgxIGM0MGZiZmZmNmQ3YWJjODhkMjBhMDE2ZWIyY2IwM2ExNTk0YzgxMDEgbGVnYWN5LXRydW5rCis3OTc4MiA3ZjY5MTgxYjY1MmMwYTliZmI1N2Y2ZDk0ZjJkZjYzMjE1YTY4ZWVmIHJlbGVhc2UyNi1tYWludAorNzk3ODMgMDJiZDJmNjBiYTVkOGQ1MmYzNjgyMjA2ZmUyMjVjNGQ3NGQ2ZWNiMiBweTNrCis3OTc4NCAyNzNjZGEyYjAwNTM4MTJiYWVmZDIyMzViMmZlODZhNWZkZjM4MjMwIHJlbGVhc2UzMS1tYWludAorNzk3ODUgZmRjYmViOWYzNzRjNzE1ZTZmZmYxYzgzYmFjNGNkYWIwNTQ1Njk2OSByZWxlYXNlMzEtbWFpbnQKKzc5Nzg2IDk3ZTk1YzlkMjZkYWJmMjE0ZjhiYzRkNDc4MzIxOWZlZjlhNWQ2ZmIgbGVnYWN5LXRydW5rCis3OTc4NyBlNGJkYzI5NmZjOGU0MjdiMDU3MjYzYzZhN2Q5ZWJiMWYzZmM5OGVhIHJlbGVhc2UyNi1tYWludAorNzk3ODggZTk0ZDQ0NmM2ZDBlZjkzOWM5OWUyYTRjOGIzOWRmYThhNDNiOWE3NSBsZWdhY3ktdHJ1bmsKKzc5Nzg5IDcyYzBlMTVjMDNiMjRhMjMzYWFmNGY3YWQwZGFkOWUxNWQ4MTZhMTIgcmVsZWFzZTI2LW1haW50Cis3OTc5MCAyNGNiNDExMmI3MzExMzA5YTIwNmVlOWNiZGU1ZDBmYzA0OTkzZWJhIHB5M2sKKzc5NzkxIDMyYThiNTIwZDc2N2Q3YzljNDc0MWI5OWRkNWJmNjNmYzZmYTUyOWUgcmVsZWFzZTMxLW1haW50Cis3OTc5MiAyOGI4MjM5ODNmY2U5ZDczOWIwZDE3ZGJhOTRmODVkZWE0ZmQwMjAxIGxlZ2FjeS10cnVuaworNzk3OTMgNmJlZTQzZWE3YzAwZTNhYWMzMzFjNjNmMTlhZTYwNWI2NTI5MTBhZSBsZWdhY3ktdHJ1bmsKKzc5Nzk0IGY4N2QyYjFiYTQyOTBjMzAzODIyOTY2MjZjMGNmZDE5YzAxZTk5YTUgbGVnYWN5LXRydW5rCis3OTc5NSBjMmIwOTNkNjgwY2YzMjMxMzRiNDlhMmRhZmUxNWMzMDYwYWExMTcxIGxlZ2FjeS10cnVuaworNzk3OTYgMmQwY2UzMDc4MDliNGQwNjNjY2Q0OWE5NDI3MTUzYTYxYzE4OGU1NyByZWxlYXNlMjYtbWFpbnQKKzc5Nzk3IDExZGUyYzI4ZDFhMDkxMDY1Nzc2ZGNlYzFlZmVkY2FkYTZhNDYwODYgbGVnYWN5LXRydW5rCis3OTc5OCA3MDg4ZDE4MzQ3Nzg0ZjI5MDg2MWYyYTlmZTFlNjBlYjY4OGVkYzNkIHJlbGVhc2UyNi1tYWludAorNzk3OTkgOWVjNTk4YjQ3ZGE0ZGJjNzBlOWM4MWI3MmZmNTA4YTY2MWYxYzU3NSBweTNrCis3OTgwMCBhN2I1M2FkN2FkOTcyNmNlMjU2NTkzN2VlMjFmNDFhZGE5Y2EwZGU4IHJlbGVhc2UzMS1tYWludAorNzk4MDEgMGE1M2MyNTRhMTkzN2RjMDdhMmRmYjdlNjUwZTc1YmUxZGEzMWZmOCBsZWdhY3ktdHJ1bmsKKzc5ODAyIGU3N2IyZmYyNGRkYjE0Zjk1ODZhZjdiNjY2OTkxZTIzMjczOGRkYTIgcmVsZWFzZTI2LW1haW50Cis3OTgwMyA3ZjJkN2JmYjA1NjcwNmNmMzc4MTJmOTkxOGFjMjRjY2Y2ZTkxMmQzIGxlZ2FjeS10cnVuaworNzk4MDQgYWNlNzExNTUwYjU5N2VjYWZhZjI3MWE5M2UyNDk4M2M3MDQ5MzUzMCBsZWdhY3ktdHJ1bmsKKzc5ODA1IDlkZTU2MzBmYzYxYmEwMDljODFiNTFiMWZiNWE5ODk4MmMzODdlMTUgcHkzaworNzk4MDYgOGY0NWQzN2M1NWExNDJiZjYzZjNlMWNiNWMyMmZmNDM1N2Q5NjUxMCByZWxlYXNlMjYtbWFpbnQKKzc5ODA3IDU4NmUxY2U5ZjI0M2M4NGE1ZjViMzcxZGM3ODI4YjZkZTEwNjJkODIgcmVsZWFzZTMxLW1haW50Cis3OTgwOCAzYzlmMDg4N2VlM2Y5YWVhOWZiNTIyMDViZjlmMDc0OGU1MjQ2OWM3IGxlZ2FjeS10cnVuaworNzk4MDkgNWRhYTc0YmNmNmExNTkwOTJhZGExMDRkNjA1MTJmOWY1YTU3ZTUyZiBsZWdhY3ktdHJ1bmsKKzc5ODEwIDNjZTY2YzY5MjJhYmFkYmEzZDg5ZWM0MTE1ODZjM2VjZWMwZDRlZWIgcHkzaworNzk4MTEgOWZkODg1MmVjZGQ0YzIwMmU5MTE5MDllYzFlZTFmY2FkNGUzOGM5MiBsZWdhY3ktdHJ1bmsKKzc5ODEyIDY2NDE3Mzk4NGYyZDNhMjFmYWE0Yzk3NjhiZTA2MzI3NDY1MWUxN2UgbGVnYWN5LXRydW5rCis3OTgxMyA5ZTVlOWQ4ZmE4NDc0ZmQxYjVmYjliYTAwMWQwNjE2Y2MwNzc4YThiIHB5M2sKKzc5ODE0IDI1YzI4NTJiZmQxNWI1NDI5MTJlMTc1OTJlZWEyMDIwZmJmYzE2ZjkgcHkzaworNzk4MTUgMWFkY2Y0YTQ2ODU2MDZlNWJmYjVhMjZjZTM4YzU0ZDUwYTZhOWI2NyBweTNrLWppdAorNzk4MTYgYzViZTUzN2I1YmE5MDlkOTk1YmY0MDFlMTM1NDFmNjllMjhkNTM5YyBweTNrLWppdAorNzk4MTcgOTIyMDc5ZjcyNGE2MjBjMjNhOTA0MmYzNGU3ZGZkMmFkZjJjMzJlNyBsZWdhY3ktdHJ1bmsKKzc5ODE4IDk0MjYyZDBlMDY0YTVlYTg4ZjMzN2Y1MGUwY2Y5MmVkMmZjOTAzZDkgbGVnYWN5LXRydW5rCis3OTgxOSBlZWVhNzhkZjhhM2M3MmY0NzM2N2E5NDA2ZjUxYzA5NmQ2MDEwMDA5IHB5M2sKKzc5ODIwIDk2MDA2MjVjMTVhZmE5YzBhNDIwYjg4MTE0NzIxYjRiYTI5YTFlOWUgbGVnYWN5LXRydW5rCis3OTgyMSBjMTAwMjRhYmQxMThmZmNhZmNjN2RkZmUyNjhmMTc3YmQxODIwNzVjIHJlbGVhc2UzMS1tYWludAorNzk4MjIgMmZmYjIyNGM2MWY2YzdkMGJiMmI4NmNmNDUyMGZmMmJiNWIxMTBmYyBsZWdhY3ktdHJ1bmsKKzc5ODIzIDI2YzZkZTE4Y2QzMGI1ZGIwYzQ3OTU2MjhmMmIzM2QwNzNlZWE5MDEgcHkzaworNzk4MjQgMzY3YWM0OGJmMDg1YTVhM2IzYmExYjNjYzE2YTkzYjdhM2VjYWU0NSByZWxlYXNlMjYtbWFpbnQKKzc5ODI1IGEwYzA4M2UxZDMxZmRkMmY5M2QzYTQ2YmZhNDc1OGU0NWJmMWQzOTYgcmVsZWFzZTMxLW1haW50Cis3OTgyNiA5NWJmOTdkY2M1OTE5MjYwMjM4NGZmOWQ5ZmQzMmJiOWFkYTU1Mzk0IGxlZ2FjeS10cnVuaworNzk4MjcgNzI3NDYxZDY2ZDEwMjI0ZGM3OTBmMzAzOTEyMTNmNmQzNDk5NjE5ZSByZWxlYXNlMjYtbWFpbnQKKzc5ODI4IDdkODlkMGRhZTk4ZTU1NzE4ZWJiNGE0NjExMzBkMDRhNmVlYzJjYzcgbGVnYWN5LXRydW5rCis3OTgyOSBhNjVhOTRiMDA5MDJlYzIyY2JlZjhhY2M4YTIxNDdiNWNhMGU2N2U2IHB5M2sKKzc5ODMwIDM3NzVhNGZkMTFjMmE3M2NmYTE5YzA2ZjUxYTkzNGJiMjE2ZjZiMTkgcmVsZWFzZTI2LW1haW50Cis3OTgzMSBkNDg4MDFiODYzODAxZjcwZmY1NWQwYThkZWQ5ZTA3ZDI4ZTE5MTMzIHB5M2sKKzc5ODMyIDJiOTNlMzE2NTk2MWUxYTkyMzBkYzNhZGQ5NGExYTUxMmMzOTliZjQgcmVsZWFzZTMxLW1haW50Cis3OTgzMyA1NzZiMGU4NzM2YzdmZWE3NGE3ZmNjMzZiZGMzMTZiOTMzOWFkOWQwIGxlZ2FjeS10cnVuaworNzk4MzQgZjFlYTAzZTM3ZmY2ZWNiN2YxMjQwMTFkNDdjODQ2N2ZmNjk1MGVmNSByZWxlYXNlMjYtbWFpbnQKKzc5ODM1IDdjNzZhN2I0MTE2MDM1Yzk2YzljY2ViM2M1ZGUyNDE2MGY2ODY4NDQgcHkzaworNzk4MzYgNmZlYjVhZGQ3NjJhYzZlMTk1MTRhMWI0YjYxOGFiYTEwNmJjNDQwOSByZWxlYXNlMzEtbWFpbnQKKzc5ODM3IGI2NmZjODhmYTk2ZDFiYjc2NjIzODNhMjRjOWZjNjY0ODk4ZThiM2MgbGVnYWN5LXRydW5rCis3OTgzOCA2NGZkZjY2ZjY5YjBiNzhiNTRjMmFiMmRmZGMzMzNiMzE2YjcwYjY5IHJlbGVhc2UzMS1tYWludAorNzk4MzkgNzc3NGQ2MGE4OWE5MjhlNWM2MTFjOTdkMGYxNzA4Y2RlNWY1MWNhMyBweTNrCis3OTg0MCA2OTZjYjU0OTZhMGI4NmQyZGM5MDJmYTcxMDRkYWQ5N2I4M2VjNmUyIHJlbGVhc2UzMS1tYWludAorNzk4NDEgYzY3MzM5ZTM3MWE5YjI1ZDFkMzkzYjM1MWJkZjQ0ZjE0OGEwNTEyNyBweTNrCis3OTg0MyBjOGNmYjFkMDc0MjljYTExMWEyOTNiZjUyMmM1NGRlZmJjOTQ1NjZiIGxlZ2FjeS10cnVuaworNzk4NDQgYjg4ODQyZjY1MzRkZTQ4ZTE2YzEzZWExY2IwMTY2OWZmODE0NTlkYiBsZWdhY3ktdHJ1bmsKKzc5ODQ1IGI2MTA4ZjcyMGY2OTgzM2EzNGNiNjg5YmZhYmYxMmMxOGIwYTdjYTcgcHkzaworNzk4NDYgZjE5NGEzY2VlZmFhYzAwZDFkMjFlNzE5MTA0NWI4ZWEwNjI3Y2U2NiByZWxlYXNlMjYtbWFpbnQKKzc5ODQ3IDJmMjg4MzJkYzM2YzNiMDFhODdjZTIyNmE4NjYxNjM2YzhmMjRiNDEgcmVsZWFzZTMxLW1haW50Cis3OTg0OCBhNzNkNjA0NTFiNDkwYzZhMWE3MmZmYjFiZTc0ZmViMmY5YWEyYTU4IGxlZ2FjeS10cnVuaworNzk4NDkgMjBhNTliYWRhZmExYzIyMTRjYTZjYjliZWFhYThhZTAyMGRiNGVkOCBweTNrCis3OTg1MCAzY2U0YWFjMjA5MzU3NzYwMzVmMDdhMzIyYWM1ZTg0ZDg3MDY0ODA4IHJlbGVhc2UyNi1tYWludAorNzk4NTEgZDUxYTJjN2NjODExYTEyYTg1MjRlMzE0NjUwYTRiMThkOTYwY2NjNiByZWxlYXNlMzEtbWFpbnQKKzc5ODUyIDViMGYxZDViZDU1YTk3YzAwNmJlZDEzMDE1NDc3ZGVjYjI1OTBiMzYgbGVnYWN5LXRydW5rCis3OTg1MyBiYmNjNTRhY2JkOGEyZDkwNTRhN2NiNzcxOTBjZWE1YzM1YTEwNTJlIHB5M2sKKzc5ODU0IDMzMjdkZjMyYzExN2NhYzJiMWYyNTU1MTRiNWY1ODViMDMzNDY3OTYgcmVsZWFzZTI2LW1haW50Cis3OTg1NSA2M2FmNDk2YjE0OTM5NDczZmU2NjcwZDFhMzJkZGVlODA0NjVkOWJhIHJlbGVhc2UzMS1tYWludAorNzk4NTYgZjRlYzQwNzNiZDJlNTk2ODBkMWU1NTk2NmYwYzMwNGE3NGRkNTE5ZiBsZWdhY3ktdHJ1bmsKKzc5ODU3IGNlOTc5YjY0YjIzYTc5MGJhNDE2ZTI2NDUyMmFhMzk2NWRkMjBlYzggcHkzaworNzk4NTggYTMxZjgwZDVkMWExNmViZjRkNzcxODU0MjFjYTAzM2M3NzFlMzYzMCBsZWdhY3ktdHJ1bmsKKzc5ODU5IDAxYzFhYTNhNDlhN2NkMWY1NWY0MmM3ZTYwYTVmNzJiNmFlZGM1YzEgcmVsZWFzZTI2LW1haW50Cis3OTg2MCA1NjliODU5YWRlMjA3NzMwMmU2ZDU5YmZlYjAxYmU4ZTBjZmFiNDY2IHB5M2sKKzc5ODYxIDgyNzNmODk5NGE4ODgwYWYzYTg3MWI0ZjMyZGYzN2E4ZmE1YjhhY2QgcmVsZWFzZTMxLW1haW50Cis3OTg2MiA5YzQ4YWI3MjhjZTBkNGYzMTU3YjhkYTlhZDEyODc2YWYyMTEwZTU4IGxlZ2FjeS10cnVuaworNzk4NjMgMmI0ZmNmYzM1ZjEyMjNlMGE1NjM0YTA1MjIxZWMwOGUxZjI1NjUyZiBweTNrLWppdAorNzk4NjQgNzEyOTcwYjAxOWY3MGNiMjExYzcwMzk5ZGQxMGY1ZTA3NzEzMDBhNCBweTNrCis3OTg2NSA2YzFhZGU5ZWExZTQ0NTRkNmYzYTE2MjNhZDk0Nzk2ODNiOGVhNjg0IHB5M2staml0Cis3OTg2NiA5YmE4YzZlNTJmYTBkZGZiN2Y0M2FiMmY4MDAzZGMyMzkxMTAzZjQ2IGxlZ2FjeS10cnVuaworNzk4NjcgYmUwNDRiOGMzNDNhMzVmNTkzNTYxODM2NTkzMjgyYjhkMWEzOTdhOSBsZWdhY3ktdHJ1bmsKKzc5ODY4IGJhNWVjNzU2MDkzMzM3ZTMxMTQ0YmIyMWMxYWNmNmMwNmVmMTUzZTEgcHkzaworNzk4NjkgZWVjMmRiMDlhNmMxMjM5MWYzYjI1ZTI5OTU0NGE0N2M1MDc0ZGM2MCByZWxlYXNlMjYtbWFpbnQKKzc5ODcwIDgxZDkwY2VlZTNiZGZhN2ZkNWM2ZDIxNTk4YjdlZTg1OWMzMTg3NGYgcmVsZWFzZTMxLW1haW50Cis3OTg3MSA4OTJkYjE4Yzc4MTU0ODIwYjQxZjAwZGIwY2Q0MDU1NDY2OWJlZjQ2IGxlZ2FjeS10cnVuaworNzk4NzIgMWE2ZjNkMzZiYmQ5NjFiMDQ2NDk2NzEzZjdlNTY5MGFhODg4YTU0NiByZWxlYXNlMjYtbWFpbnQKKzc5ODczIDgyYWYxMTNlMDIwYjk3YWY3NzQ1MGQ4MWI5ODU0YTY3NzQ2NTU3NzEgcHkzaworNzk4NzQgZTNjZjk3N2UyZTY0NjdlNTlkZWUyMTdjNzU5ZTBiNzlhMjVhNzczMiByZWxlYXNlMzEtbWFpbnQKKzc5ODc1IDhkOGY3ZTA4MmVmNmE4NGNlMTIwNDA4NzA3YThjNjc2NGU0ZDA4OWIgbGVnYWN5LXRydW5rCis3OTg3NiA5Y2U1MzE2MWMzYTlkZGRhZjIzMjBiZjRhNWM3Y2E5M2RhOTFhODk1IGxlZ2FjeS10cnVuaworNzk4NzcgZmI2Y2Q4YWQ4ZjY5ZTZiMGEwMWY2ZTEzZTc1OTg0ZmE2YmI2ZTQ3ZSBsZWdhY3ktdHJ1bmsKKzc5ODc4IGMwOTU3ZGFkYTVjMjdkZjYyZjQzZmJlOGEwNzQ5ZDdhN2YyZWU0ZDAgbGVnYWN5LXRydW5rCis3OTg3OSBkNzk1OTliMjFlODExNWNmOTY3YTMyZTkzNjFlMGZiZDZkMGNkMmVmIGxlZ2FjeS10cnVuaworNzk4ODAgYzllNGUxMmU5Y2I2ZTA2ZDU3M2Q5ZTc2ZTQ4OTUyMmE2ZDA2ODgwNCBsZWdhY3ktdHJ1bmsKKzc5ODgxIGYzNjlkYjBkNTg0NTY1OTQyNTdjMzMwMzgwMTI0NjdhYmU3YTBhODAgcHkzaworNzk4ODIgMTBmMWU2M2IyYjM3NDgzODEwYzU0MTk2OWM5MWE5NzBmNTUyNTU0YyBweTNrCis3OTg4MyBiNjE5YWJjZTAyNjk3NzZiMWEzMmQwNmY2Y2U5N2I1NGYwNzZiOTJiIHJlbGVhc2UyNi1tYWludAorNzk4ODQgODVlZDc0MGJlMzIzZDcxZmJjOTBmMWVlZThjMzEzMmViNzk2OTQ0YyBweTNrCis3OTg4NSBkMGE3NGI2NTA1ZDNjN2RlNTA5OWE2OTUyNTU0OGViM2IwYjE3MThhIGxlZ2FjeS10cnVuaworNzk4ODYgMWM5YmVmZGU4Mzg1ZTgzNzgxZDc1N2UyMzVkMmE1YTUyY2QzOTQ0ZiBweTNrCis3OTg4NyA3ZTU1YjIxYzY2NThiNWUzYTA4NDQxNjFhNmVjMGNiYTNlYzJlZWM4IHJlbGVhc2UyNi1tYWludAorNzk4ODggZGRiNzMyNDM5NjdiYjJhYzQ4YzhmODdlMmYxMDdmMDA0ZTU4MzAyZSBsZWdhY3ktdHJ1bmsKKzc5ODg5IGU4YWE5YTdkYWYwMzI4NWEyNjgzYzliYzk2OTI2MTI4YzE3NjdkZWYgcmVsZWFzZTMxLW1haW50Cis3OTg5MCAyMGRhZDIwMDU4ZTQyOTc4NTkwYWI3YWU1ODNjZTBkNTBkOWVlM2FjIGxlZ2FjeS10cnVuaworNzk4OTEgYThlOTBjZWNjNjllMTU4MjdhOWM1Mzg2NTZjZjk2ZDc2MWMwNjk0MSByZWxlYXNlMzEtbWFpbnQKKzc5ODkyIGMzMWM0M2Q2YWQ3OTI5ODllMWQzYzkzYTMxODVjMDNhZmY3N2ZiNjUgbGVnYWN5LXRydW5rCis3OTg5NCA3YjAwNDU0YmJmZTBhNjE2MGI5NmE4MGVlMDQyOTRmY2JiMzBkOWQwIGxlZ2FjeS10cnVuaworNzk4OTUgMjVjM2IzYWJmM2U3YzhiNTNkOTU4MGEzOGM5Nzc1OWI3MmRhZjBkNyBsZWdhY3ktdHJ1bmsKKzc5ODk2IGNiMGI4NDAwZTdjNGY5Y2M1OTYzZGVkZjY3ZWE2MDQ0NTUzYmQ3ZjAgbGVnYWN5LXRydW5rCis3OTg5NyAzOGIyNDI0Zjg1ZThhYzBkODNkMzA5MWRjZmJjNjlkNWRlZTJlODA1IHJlbGVhc2UyNi1tYWludAorNzk4OTggYTM5YmYzOGYyZTBjMTc3NTg2OTM2ZjJhZWJiNTM3NzViZmE4NmFjZCBsZWdhY3ktdHJ1bmsKKzc5ODk5IDJlOGQyZDdjNDNjMGI1OGVjZmI4NjhkYzM3NDM1YmM3ZWQyNTE5M2UgbGVnYWN5LXRydW5rCis3OTkwMCA3M2U1ZTNlYWRkODkzZTAwOTg1ZmY4Y2IwNzkxOGI5N2Y2NTBhNzE2IGxlZ2FjeS10cnVuaworNzk5MDEgYWMwNzhhOGMzZTFhZjA5ZDNlZWFkY2M5MWY0MDA4Y2NjZTM0NDYxMiBweTNrCis3OTkwMiA3NjYwYzUzZDU3MTlmZTczNGVlM2Y5ZTMxNTk1MTdiM2MxNTFkMDIyIGxlZ2FjeS10cnVuaworNzk5MDMgODIyN2I2NGU4ZDc4OGUyMmQ4Y2FiMThhMTg4ZjQxZDRmMjZkMmE5YSBsZWdhY3ktdHJ1bmsKKzc5OTA0IGI4OTk4MTI4ZGUwOGI1NGYxNmM1OTcxNmIwOWU0Yzk3NzZjNjI4MWUgcHkzay1jZGVjaW1hbAorNzk5MDUgZTI0NDRmMjg3OWI0MzViNzg3YjMwNDg0NjBlNzQ0MmYyZmU3N2I0ZCBweTNrLWNkZWNpbWFsCis3OTkwNiA4ZTVjNzFjNzZlOGZhMTJmMjkyZWFiYThjNDliZDg2ZGVhOGNlOTdmIHB5M2sKKzc5OTA3IDZmMTk1OWY2NmQ2OTBhMzczMWMxYTg3YmNjOGE2MzE0MDE5NThhYWMgbGVnYWN5LXRydW5rCis3OTkwOCAyNGNlNGEwMDg5YmUzMjljMWNmOTlmNTNiYjVjZDMwY2FjMzcwMjcyIGxlZ2FjeS10cnVuaworNzk5MDkgN2NiZmYwYjFlYjVkMTg3YTYyYjIyMjVkYjM0OGNiNmJkNDliNzM0MSBweTNrLWNkZWNpbWFsCis3OTkxMCBhMTYyOGJkOTdiYjY4NTRmOTM1YTQyYmY4MmQyZjkzNjI0MWZhNzM0IGxlZ2FjeS10cnVuaworNzk5MTIgYTc5MmI5Y2IwZDdhYWJhMWRkZTAwMTQ3M2RlNjlhYmM5ZDFlNDI3OSBweTNrCis3OTkxMyAyNGQ3ZjU1NDAwZDNhMWFiOTQ4MDhmZjg1NGZhNTllMWU5ZWM5YTdhIHJlbGVhc2UyNi1tYWludAorNzk5MTQgODM3ZjNiYjE1NzVmYjg4ZmNkMTk4ZTQ3YTU2MGVlMTU3MzdkYTE0ZCByZWxlYXNlMzEtbWFpbnQKKzc5OTE1IDQ5OTE5YjMxZmYyMDA3NjZjZjI5NmEwNThlODc4MTEyMjg3ODY3ZjcgbGVnYWN5LXRydW5rCis3OTkxOCAzNWE5ZGEwMzk2NjMwMzFlMGVlMjU3Y2ExMWM5Zjc5YWQ4NzRmMmM2IGxlZ2FjeS10cnVuaworNzk5MTkgYTVlZDAzNzczZTRkZWI3NWNlYzdhZDVkOWM3N2UyOTZlNzA1M2M3OCByZWxlYXNlMjYtbWFpbnQKKzc5OTIwIGE1YjdkY2I5YWY4ZmEyODU3ZDI5ZDc3ZTY5YWFkZDIzNmM5ZGNiOGYgbGVnYWN5LXRydW5rCis3OTkyMSAzZWMxOTMxZmQyNTY0YjU5ODg0Y2I3ZWY1YmI5NjRkMTU3NGZjOThhIHJlbGVhc2UzMS1tYWludAorNzk5MjIgNDY0ZjY2OTYyMGZhZDY1MTc1MjgzNGUzYWU1YWQzYjczMWU0MmY4NiBweTNrCis3OTkyMyA1ZTAzOGZkMmMxNDMyODVmYjQ4ZjhiZGZiN2FkODU5ZmNlMDZhYmQxIGxlZ2FjeS10cnVuaworNzk5MjQgYzAwYjA3MThmZDUzM2E3MjBlOTFiNjBiNTE3NjA2MGViYzY3Y2E0NyBsZWdhY3ktdHJ1bmsKKzc5OTI1IDdhNGQwMjZiNjM5MDAyNDM0ZjViZjk5NTU2YzY3ZDgzMjkwM2E0YTYgbGVnYWN5LXRydW5rCis3OTkyNiBlZDI2MTYzMDcwZjU4YzFlZTg3YzQzNDFmYzdiYTVkN2RlYmVlMDhlIGxlZ2FjeS10cnVuaworNzk5MjcgM2FlNzA3OGQ0Mjc4YjJlN2U1ZGI4N2NmZDQ5MGNiZGE2ZDg4MTIzMSBsZWdhY3ktdHJ1bmsKKzc5OTI4IDYxNTUwYTEzMDJiMDdhNzMxNDM2YTg0YjJkODZlYjJiYWIzYjJmYjAgbGVnYWN5LXRydW5rCis3OTkyOSA0Y2MxNzU4ZGNkZjc4YzI3MmY2OTlkMWVlNDkyNmVhZjUyMzY4ZjZmIGxlZ2FjeS10cnVuaworNzk5MzAgMmJhZjFjZWU3MWYyYjY3MDg0YWJjZTE3NWQ2NmYwNWQ5NWY5ZGEwNSBsZWdhY3ktdHJ1bmsKKzc5OTMxIDgwNTUxMjMyOWM3NTM0YzQzNGZhZTAzYTA4Nzc2ZGE1ZjRlMDY4MzggcHkzaworNzk5MzIgNTVmZDRlOTg3YjIwZTA3MGIyYTIyOWRmOWIwMmYwNTgxYWFiZWJiOSBsZWdhY3ktdHJ1bmsKKzc5OTMzIDhjNmU0YjdhZDE1OGJlYTI5ODc3MjdkZWJiOWRhMWVlMmI3ODdmNjkgcHkzaworNzk5MzQgMDU5MmU3ODQxNzc3NzRmOTk5ZmJkYWFjZjFiNDFmNGQ2OGQxM2MxMyBsZWdhY3ktdHJ1bmsKKzc5OTM1IDk3YjU4OGVlNjJmMGZiNDYzZDY1ZmJlZGQxNTdmZjJkOTU2ZTc5NzAgbGVnYWN5LXRydW5rCis3OTkzNiBmMzRjYjUwMWY4ZjdlMzI2MzRjNzkzMTQxZmFkYWM0YTgwYTU3YWM3IGxlZ2FjeS10cnVuaworNzk5MzcgNTcwZDlhYzg0ZDc3N2E5OTRkZmUxZGZlZTA4Y2I5MTVkOTliNjc3YyBsZWdhY3ktdHJ1bmsKKzc5OTM4IDczMDFkYTQ5MWQ1YmI1YjQ2YmM4NTA4ZDlhM2FjZjFhZmExYTE0NzUgbGVnYWN5LXRydW5rCis3OTkzOSAzNDgwOWNmZDg2MDE2ODUyZWI5OWVjNjc4MzMwNWExN2EwODVlZjlmIGxlZ2FjeS10cnVuaworNzk5NDAgNWY4NzgyYWEwZjhjMjhhMzRiYzdiMDA5OGFkNmFlYjkwMzI0ZjM0NiByZWxlYXNlMjYtbWFpbnQKKzc5OTQxIDQ0MTY4MjI0YWM2MTA4MDdhYWUyODgzNmU4NGNkNGJlZmUxZmFlNGUgbGVnYWN5LXRydW5rCis3OTk0MiA4Zjg5ZWY5MDkwMDliNTFhNTQ2ODUzMDFkZGE1N2NhNDZiMDEzZTViIGxlZ2FjeS10cnVuaworNzk5NDMgZDAwN2Y1ZTVlMWYwMTlhMjgwMWMxNTYyMWYzNmZkMDk3ZGM2N2UxYSBsZWdhY3ktdHJ1bmsKKzc5OTQ0IGNmN2M5YmEyZGU2ZTk0MzRiZDVjNjk0YmFiNDdmMDM3MjczYzAxNDQgbGVnYWN5LXRydW5rCis3OTk0NSA0ZmVjMmU1ZTMzOThhY2JkOTQ0ODdjOWMxMzdjZDcwNDJmZThkOTViIGxlZ2FjeS10cnVuaworNzk5NDYgZTBlMzU1YWU5OWIyNjI2ZWM2MDM5Mjg1ZmEyYWQ0ZmE0N2I4NmQwYSBweTNrCis3OTk0NyAwMDYxZTllMzI5YzA1NmEwMDM0N2RlZDliZjM0MmM2ZTg3ODgxYTU3IGxlZ2FjeS10cnVuaworNzk5NDggNzkxMjM2NmI0OGQ4YjA2ZDE3ZjhjNDVjNDkzYjgwN2M3NGI2NjVkMyBweTNrCis3OTk0OSA5OTI2ZTEyYmY0ODUwNjRkMWViYWM4NDVmOWI2NzM3NzM3ZTU0YmMzIGxlZ2FjeS10cnVuaworNzk5NTAgZTE1OTNlMWU2NTJlZWM4N2I1NTQ1NDNhNjE2YzNiYTdjZTU1ZjFlOSByZWxlYXNlMjYtbWFpbnQKKzc5OTUxIDY5YzM3MjAzZmZjMWQ3OTA2MTc1OGM4MWNmMmJiNDAxOGFhNTJkNTYgbGVnYWN5LXRydW5rCis3OTk1MiBmMjQ0ZmVlOTg5YTk4MWNlYmQwYWRkZGEyMWMzNTBiMTdlZmI5NzZhIGxlZ2FjeS10cnVuaworNzk5NTMgODRhYWQ2NzA0NjBlNTA3NzlkZTIxMDk3NGQyODYzZWI2NDk2MTY3OCBweTNrCis3OTk1NCA5MDI4MDMzZTZmY2MzZDQ4MjcxMGMzMTUwMjFhMGMxNzM0N2E2ZTkzIGxlZ2FjeS10cnVuaworNzk5NTUgZjQ3MDU3NjM3ODdiNTg5ZDBjZWJmNjkwYWIzYTM1YThmMWRmNjgzMiBweTNrCis3OTk1NiBhNjVmOTFiYmMyZmIyOTViOWFmMDlkZWUwNDc5ODdkYmQ0OWI3YjE3IHB5M2sKKzc5OTU3IDMwYzgwMDIyODc0ZTdjOTA1NGU0MzAxMDFmMWFkYjdjYmUxMzgzNjIgcHkzaworNzk5NTggNjZhZDI2N2E3M2JmNjJhMGM5MWE0NzY3MzEwOTU4YWI1NTEzNjk4ZCBweTNrCis3OTk1OSBkMzk5NTUyMTZjMDdhMmNmZDllZjQyYWNlNzRlYzkxMzg1YzNhZDRhIHJlbGVhc2UyNi1tYWludAorNzk5NjAgYzJlMWRlM2YxMWZjMWIyNzZhYmQyMjU3NTQ5MTgzNTMzYWE3ODMwYyBweTNrCis3OTk2MSAwMjdkNTc1YzY4OWMxMDIwOWI0MmZhYTBiYjdhMjFhMmViMjUyMDkzIHJlbGVhc2UzMS1tYWludAorNzk5NjIgYjRhMTU1ZTRkMzEyOTJkYzBhMjhlZjE4ZGE4NDIxMzlkY2I1Yjk2MiBsZWdhY3ktdHJ1bmsKKzc5OTYzIDhlZDk5NmRjMGU1MjA5YmFhNmNlNTZkYjE4MzkwODZkMDBhZWE1ZWUgbGVnYWN5LXRydW5rCis3OTk2NCA5ZjljYjFjNTdmMmE3ZGNkMzcxYmE4NzMyYjdiZDNlYWRmMDhjNTVkIHB5M2sKKzc5OTY1IGM0MTQ3ODQ3M2VhZWFlNTJmZDhlOTQ2NGE3NDE0YTJkMmRmZTRiMWQgcHkzaworNzk5NjYgYTg0ZGRkOGRlOWQxZGJhMDJiM2IxYzkzNDVjNzcyMTk2ZTQ5OGUwNiBweTNrCis3OTk2NyBkZDQzZTBjOTMxNzVjYTY0YjFlYmIwZGFkNzAwMTA2OTJjODk2ZTExIHB5M2sKKzc5OTY4IDRhZDk1MmE2YWY5NTcxZDE0N2QwYWRjMGU2ZjMxNjg2YWY1ODZjYjUgcHkzaworNzk5NjkgYjRmNjBkZjMxYjE0MTJlZWYzNjE0OWVlNGRjNTZiZjc2ZjhkMTI5YiBweTNrCis3OTk3MCBlMzUxNTc5MTM3ZjNlNDI0YzBiNzBhODEzZjVkNGVhMmQ4MTNkYjNlIHB5M2sKKzc5OTcxIGZkM2NhZWE5MmNkOWY5MWVjOGRiYTQ3YTRmNzAxN2FjODVjOTIwNjAgcHkzaworNzk5NzIgY2I2ZjJjODlmNDM3MmNjMzY2ZDM2ZDc2ODE2OTJlMmFlNzg4ZTc2NyBweTNrCis3OTk3MyAwOTNlMmI3MTU2NDU3NDkxOTE3N2RkYThkOThmNWUxZjlhNTJmOTExIHB5M2sKKzc5OTc0IGQ2NTQzNzQ5MjQyNjE5NzA4MjI0OTg0NWZmOGYxMzkxMGJkODg4MzAgcHkzaworNzk5NzUgZjVjNGZjMGQzMzczMzZkYzM2YTU0MmRmZTExNDc3NzY4YTFlNGUwMCBweTNrCis3OTk3NiAxYTYyYmVlZDhkMTVlZjhkYWVmNDU5ZmY4NzE1ZTEyNmQ3ZGIwZTIyIHB5M2sKKzc5OTc3IDNiNjg4ZGExOGY1M2UzOTUxYTFjNmRlZTllMGFlZmYzNDQ4NjY4OGYgbGVnYWN5LXRydW5rCis3OTk3OCA3NWY5MjA5ZjNmYjk5MGY5OTA3OTkyZjg0YmIzM2U5OGQ0NGYxMmUzIHB5M2sKKzc5OTc5IGFjMDYxZWYxNDg3ZTQ3YjY5N2IzYmEyMjM5NDM5ODZmZDdmYzQ0YTcgbGVnYWN5LXRydW5rCis3OTk4MCA5ZGUyNjFjZjViYzI5OTZjNjk1MmQ2ZmE4MzhmNjJmZDY4Yjg3YmIxIHB5M2sKKzc5OTgxIGFmYmJjOTgzZTBiZDA0MTI5NTRhNWM1YmMzYjI5MDZiYjE5MWNjZDEgcHkzaworNzk5ODIgZDAzZjVhY2I0Yjg3ZWY2ZTVmMTgzZGY1ODRlNjE1MzlhZjYyYmE3ZSBsZWdhY3ktdHJ1bmsKKzc5OTgzIDYxMGI2ODVlMDUyNWJkNmM0MTc0MGZkMDg5NjdmYTkxYjFlNGJjZWMgcHkzaworNzk5ODQgYTI5MjkxY2U0ZmNlM2MxZDg0MmRmMzJkODlkMDFmNjUzMjI3MzBhNSByZWxlYXNlMjYtbWFpbnQKKzc5OTg1IGVkZWIwN2M0MTFhZjI5NDc1YzBmNDUyMjIwM2ViYTg1ZmEzM2Y5OTggcmVsZWFzZTMxLW1haW50Cis3OTk4NiBlNDc1Yjc3MWRkNGMwZjk4ZDE0ZmMzMTY4MGU2ZjZjMmYyYTdjZGRhIGxlZ2FjeS10cnVuaworNzk5ODcgMmFlNWY2MGUyN2M5OTU2ZGFlZGM2MDExMDJlNDQ0YTRlMWRiNjM4OCBsZWdhY3ktdHJ1bmsKKzc5OTg4IDU2ODBiYTJkYzljMjZlZWNlYjY0NzAzZTRjZjlhMDhhODIwYzMyZjggbGVnYWN5LXRydW5rCis3OTk4OSBiYWUzNzkwM2Y3OTc1ZDY3NzhjYTNjNTI0ZWFiMWZkYjY0OTk5MzUzIHJlbGVhc2UyNi1tYWludAorNzk5OTAgYWQyZmYxYzM2YjFhYzE2Y2U4Zjg0YWE5MjY1MGZiNGNhNWI1OWFhNyBweTNrCis3OTk5MSBkZTUxNTE0MGI1ZmJlNGM0YjBjYmVhOWIzMDg2NDM5YmI3Y2Q1NmY4IHJlbGVhc2UzMS1tYWludAorNzk5OTIgZmVkYjFmOTMyMmRmM2MzZmExMTBhZDc5YzNkNGUzYWEyNmIyNjE1MCBweTNrCis3OTk5MyA4MWQwZWE2ZDJkYTM3YTMzOTFlODE5ZTZmNjdiYzRhOGE4YzJhZjYyIHJlbGVhc2UzMS1tYWludAorNzk5OTQgZTY5NzJmMWM5ZDZkMDE2NzE1YzljNDFiZjhjZTBkZmU5OWY4YzQ1MSBsZWdhY3ktdHJ1bmsKKzc5OTk1IDYzMTQ0ZjE0NTRkMjAwZjkxN2IxMTBmMWVmNGQ4YTBkY2JiM2NkYTUgbGVnYWN5LXRydW5rCis3OTk5NiA0MmU2MDU3Y2YyOGZkN2M5M2UzMTg4ZWYwODQxMzFkZGRhNWRhNGQ4IHB5M2sKKzc5OTk3IDg2MGZjZWRhMmQ4OTQwYjU0MDc3NjE4OGRlZWM0ZWU3OWJhM2M0ODAgcHkzaworNzk5OTggNGYxMmRjYjljZTZmMTE3N2Q5N2ZkMmQyN2YyODMxMjM4YjZlN2YwNyByZWxlYXNlMzEtbWFpbnQKKzc5OTk5IDgxMDU5MzkwODUyNzc3NDA0NzAwZDUyNTU4MzM0YjAzNjZhMDg3NWUgcHkzaworODAwMDAgOThhMTVmYzM4YjhiZjMxZTdmNzhmN2Q3ZmEzN2NlYTllOTdjZjBjYSBsZWdhY3ktdHJ1bmsKKzgwMDAxIDExNjNjZDhjMzk1NmRiMzIzMWU5YTEzNGUwOTE2MmUzYzQ5YjM4YTIgcmVsZWFzZTI2LW1haW50Cis4MDAwMiA5MWViY2ZmNWJiMjRjMGM4YjQ0NzkzODVkZjYxM2ZjMDVmOWZlMmZlIHB5M2sKKzgwMDAzIDU1NzY2NTRlNGI5MWE1NWM5Y2Y5MDMwMDg1ODBkNmE5ZDFiZmJiOGQgcmVsZWFzZTMxLW1haW50Cis4MDAwNCA3MTNmMWY2YmYzMzliZWY3ZmYzNDRkMWExYWE2NTIyYTc3Yjc5YTE3IGxlZ2FjeS10cnVuaworODAwMDUgOWQxMDM5MDQ4NDk4YTg4ZWJlMTU1NzYwMmQwNTYyYWExMzc2ZjJiZiByZWxlYXNlMjYtbWFpbnQKKzgwMDA2IGI4MWQ4M2E4OTlmMzY3OWZkYWQ3ODU1Y2UxNjA3NmIwYjU1ZDkxMzggcHkzaworODAwMDcgNTdiYmZjZThiMjc4ODhmNzY1NzI4NDliYWJlZGU5NjJlYjlkNTg3OSByZWxlYXNlMzEtbWFpbnQKKzgwMDA4IGEyZjViM2IxOWViMjdlZTkxZjYwNTMwYmIwNzM1MzBjOWE2M2M4NDkgcHkzaworODAwMDkgMTk1MDcwZTg1Y2UxNTIwN2U3NjEyMGU4NTNhMDBkZjE3ODA2NDJlNSBsZWdhY3ktdHJ1bmsKKzgwMDEwIGYxYzAzNmRlMTliN2QxNjU1MzE4Zjk2YTI2ZTE3MGI0NmUxYjIxNzUgcHkzaworODAwMTEgODk3NTJjMDNmMzQyY2U2NDcxZGI2MTM1OGNlOWI5NWQxNzhkZGE0ZSByZWxlYXNlMjYtbWFpbnQKKzgwMDEyIDc3YzQ5ZTczNTI0OTc5YWFkNDBjZTAzMTAyOTc0MTVjNDliMjNkNDIgcmVsZWFzZTMxLW1haW50Cis4MDAxMyBkNDUwN2Y2MTUzMWRjYTRhODY1M2Q4MmViZGU0ZGI0NWJmYTNmZGY3IGxlZ2FjeS10cnVuaworODAwMTQgYjUzNmE4YTk2ZmE5YTJkNzcyMWQ1MWMyZDVjMWRlNjQwZDU4OGQ0OCBsZWdhY3ktdHJ1bmsKKzgwMDE1IDA5MTU4ODk0YTNiMDVmMmIzZWVlZTMwMjQ5YWZjODMwMGE2YTMyODIgbGVnYWN5LXRydW5rCis4MDAxNiBkNDg2NzA1ODkyYWI2ZTFiNjJiYzBlY2YwOTIzNTA2NDIwMWI0NWViIHB5M2sKKzgwMDE3IDBhMWNhMGQ3NDRhNDI2OWM1MzZlYzg2MzAzZWRmOGQzNmJiYmM1ZjggbGVnYWN5LXRydW5rCis4MDAxOSAxYTkwZmUzN2I1OWQ3MzZjMzRjOTkyZjk0OWJhZjIzZjk1ZDJlOWYzIHB5M2sKKzgwMDIwIDYwYTdlNThhMTBkYWRiZjRlNjViOTdlYjQzMThhNzg0YzY1OTk5NzQgcHkzaworODAwMjEgNTIzNzcyMzVkMDU1MjExMGNmZDMwNDJhMTQ2NGM2MDJhNzY2MTVjYiByZWxlYXNlMzEtbWFpbnQKKzgwMDIyIDYzYjU4MTI0YTU1NGEzNmYxYTdjM2MwM2ZkNTZkNDA0N2E1MWRhYTggbGVnYWN5LXRydW5rCis4MDAyMyA3YTM5MGViNTBkZjEzNDMyMzJiNjc1ZjBiMDdiNzY5MjlkMjZkMGI0IHB5M2sKKzgwMDI0IDY1MWVkZmQyZGIzODg4MmY4NWQ4ODkwZDU4Y2I5MDRkZTVhN2JmOWYgbGVnYWN5LXRydW5rCis4MDAyNiA1ZThlNmU3ZWVkYjIxNGM1MTIxZjc5OWE3MGYwOTU0YWI3MWMwOTI1IGxlZ2FjeS10cnVuaworODAwMjcgYThiZWI2MTQ5MjJmOTAyYzk2NDkzODhlZTYwNDQ2NmYwZWFiMjM4ZiBweTNrCis4MDAyOCAyNTE3MzIwOTI2MDEzNTRmMmZjOWUyYWExMTQ0N2JiZDllYjViNzk3IHJlbGVhc2UzMS1tYWludAorODAwMjkgMDE1ZThmN2Y1MjY0ZjRkMTExNDJkMjZkNTdhMDYyZmIyZDBlZjQzZiByZWxlYXNlMjYtbWFpbnQKKzgwMDMwIDQ3YTU3ZGY2OTg5NmZjZjBmNTc3OGQ0MzRlY2ZhOGUyZWQxYWQ0MTYgbGVnYWN5LXRydW5rCis4MDAzMSA3OTk0MjY5YWQzYTFmYTc4ZGE0OWM2MDA1M2Q1NzcxNTdiOGIyNGU2IHB5M2sKKzgwMDMyIGI4ZjI5N2NkZmFkZWYxZmRlNGU2YzgwOTFlY2I5ZGVhOGY3MjI2ZGMgcmVsZWFzZTMxLW1haW50Cis4MDAzMyBkZjJlOWU4ZDQyOGVjZmRiMzlkZTNiYWVhZmU2NjAzYzM0MzJkNjRmIHB5M2staXNzdWU0OTcwCis4MDAzNCBiOTJiNTdmZmIzMWUxNjhlZjUyMTdhZTE5ZmFkMjQyNTY1OGFkOTA3IHB5M2staXNzdWU0OTcwCis4MDAzNSA3Njk4ZDFhMTBiMDFjMDIzY2RlNjQ0ZjI5NzcyY2RiZTNmMzA2ZDA2IGxlZ2FjeS10cnVuaworODAwMzYgN2JjZWU3MTcwZDdiYzM3MjBkOTM3OTQyY2EwMzdjMDFkZmM4MGE1MSBweTNrCis4MDAzNyA2ZmZlNmY4Y2EwOTE2NDYzODQyOWFiM2ZlMmUxNDQwNzM5ZWFmMzc3IHB5M2staXNzdWU0OTcwCis4MDAzOCBhNWM4ODZlYTRmNmYzMTljYzM4M2Q4ZDlkNzA2MTkyZGJmYTVmMWI2IHJlbGVhc2UyNi1tYWludAorODAwMzkgZDZkZWUzYWQyNTliNTZiZWRjN2U4MjNkYTAwM2ZlMjk2Y2MyMTZiMSByZWxlYXNlMzEtbWFpbnQKKzgwMDQwIGQ0ZTIxMDMyM2Y3MTM3NDAyNjZjODY1ZmJlYzc2YTM3MzAxYjczNjkgcHkzaworODAwNDEgMzQxYTZiZGNjZDJlNzJhMzg4Y2U3NmI1ZjRkMmFlY2VmOTdjYjMxMiByZWxlYXNlMzEtbWFpbnQKKzgwMDQyIGE5MjEzZjkxYWIxNjk4MThiN2Y5NWQxYTg5MzE4MjMxOGMxZDQzMzEgcHkzay1pc3N1ZTQ5NzAKKzgwMDQzIDA4MjRmMjY4NjFiYWJjM2YyMTJhOWQzNmIyNzEzMDYxZTU4OWYyZGYgcHkzay1pc3N1ZTQ5NzAKKzgwMDQ0IDcwMmI2Yzk5ZTc1N2M3MTA2NDFkNDg4MDUwM2UzZDIxZTYxYzg3NTAgcHkzaworODAwNDUgN2UwY2U1ZjYzYTNiY2E0OWFkMzExZmU4MTExMDM1YWNlNmM4NzljNyBweTNrLWlzc3VlNDk3MAorODAwNDYgYjRjNjUzNDMyY2I2NzRjNjY5MjI2ZjczNWFkMDk0ZDUxYzQ3NDRhNSByZWxlYXNlMzEtbWFpbnQKKzgwMDQ3IDFkZDRlZmRlZmZmMTU4NzYzYjU3NmE3NTRjMmNiZGQzZmM3MTk3ZGQgcHkzay1pc3N1ZTQ5NzAKKzgwMDQ4IGI5NWJhMGNjMWI3ZTUxMTkzZThhZWUyODRhNWEzN2FkMGRiNmI2NzQgcHkzay1pc3N1ZTQ5NzAKKzgwMDQ5IDVjOTlmZGI3ZGE3Mzc1ZDMwNjA5MjNmYjFlNGJlYTAxNWQ0MGRkNTMgcHkzay1pc3N1ZTQ5NzAKKzgwMDUwIGNiODc0NWZhNjU4ODQyOTFkMjBlNTU4ZmYwZDJhNzMzNDdmMTdlOTkgcHkzay1pc3N1ZTQ5NzAKKzgwMDUxIDM2YjAwNWJjMDg4ZmY1MmFhYWFjZmU2YzE5N2JjMTYxOGU4NjRmYWEgcHkzay1pc3N1ZTQ5NzAKKzgwMDUyIGYxYTJmM2I2YmZjNjQ4NTNmNzFiYmM4MjNlYTNmY2ZmMDgyNzZmMzMgcHkzay1pc3N1ZTQ5NzAKKzgwMDU0IDViNmZlN2QzNTk4YmNlMjJhYzUxMmM4NDMzZjRlZGNjNGJkNThkNmQgcHkzay1pc3N1ZTQ5NzAKKzgwMDU1IGU5ODRmOWUxNTY2NmNlNmQzMmVlYTEzYzExMDNmMGU5MjVkNTIxZjYgcHkzay1pc3N1ZTQ5NzAKKzgwMDU2IDUxN2NjNGQ1OWUxMmUyNDE4NThiOTE5NmVmYjZiZjQyZmE1NTY0NjYgcHkzay1pc3N1ZTQ5NzAKKzgwMDU3IDk5ZTljOGQ2OTBhYjk0ODA3MTNjYTc1ZGIwOWQ0MmZkNjg4NTFjOTUgcHkzay1pc3N1ZTQ5NzAKKzgwMDU4IDI4NTUzNTY0ZjFjNjZhNDYwNzJiZTdmMDdlNzRkYjUxNjdlZTkwYTUgcHkzay1pc3N1ZTQ5NzAKKzgwMDU5IGZkN2ExM2YwZWJiZGRjNDBhODZiODMwYThmZTQzMjVmNjNlZmM0NjMgcHkzay1pc3N1ZTQ5NzAKKzgwMDYwIDg2OTNmYzA2YWM4ZWM4ZTFkY2ZiMjg1NmI3YzBjNWJkNjI1OTQzNDggbGVnYWN5LXRydW5rCis4MDA2MSA3MzViZWQ2YzhlMzYxZDg0NzE4ZjFiNmU5NjViYWYzMzI2MWU2Nzg3IHB5M2sKKzgwMDYyIDY0OTNhZTcyNzkxZDM3YmNmMTdjMDJhMzllNDU4MDkyODM1M2NjZGEgbGVnYWN5LXRydW5rCis4MDA2MyA0NTBjNjkyMTA1ODFlOTRjZWQ4OGExYWJhZjlhMmEzZTc3MjM0Y2Q1IHJlbGVhc2UyNi1tYWludAorODAwNjQgNmJiZjA3YTNlMDFiNWMwODI1YThkMTg4YzMyNmVlOTc0NzY5OGZjMiBsZWdhY3ktdHJ1bmsKKzgwMDY1IGJhZTc5NzY1MTYwZDIyMGQ2MTI5NmZlMTY5Mzk3NzMyNDc2MzcyMWMgbGVnYWN5LXRydW5rCis4MDA2NiA2MmQxMTc4NTIwNGY0MDg1NmYyYzNlY2ZmMjhhNWVlNWE3ZDkwZTkyIHB5M2sKKzgwMDY3IDM2NGYxYWMzMjI2NGVmN2Q0NGRhYTUxOTllMDAwMDg1ZDZlMjNjNjkgbGVnYWN5LXRydW5rCis4MDA2OCAyMTI2N2JmMDcyMGUwMTY2MWI3M2UxMGI4MTc0MDlhNmI3ZTZmZWJlIGxlZ2FjeS10cnVuaworODAwNjkgZmE5MzAwZmNiMDA0MDg3ZTI4ZTA3NTM1NGM2YzA1N2RjNGM1ZjcyYiBsZWdhY3ktdHJ1bmsKKzgwMDcwIDYxMDJkODY4NmFhZWRhNzlmNjBkN2EwNjRhMTQ5ZWMzOTY2MDNkZmQgbGVnYWN5LXRydW5rCis4MDA3MSAwMWQxZmQ3NzVkMTZiNTY5ZjJjZmJmMGIxOTY0Yjc2ZDVkZDY1YjJkIHB5M2sKKzgwMDcyIDIyMTYzZDhjYWYzZTMzY2JlNWRhOWNmZjY3ZGQyYmIzNmQyMjJhZDIgcHkzay1pc3N1ZTQ5NzAKKzgwMDczIDkwNjljYTUxZTYxNDgyODM2YTUzNjc4NTMyYzYxM2VjZTE2MDRhMzkgcHkzay1pc3N1ZTQ5NzAKKzgwMDc0IGQ0NDNkODVmNjJjMTc3ZDY1MTE4ZGQ4ODJmNDA5MTQ2NmRmZDJlOWQgcHkzay1pc3N1ZTQ5NzAKKzgwMDc1IGNhMTFjODMwZjVjYzlkYWNkZmQ1OTNhMDBmMTQ0NmZhOGZmNWFlNmMgcHkzaworODAwNzYgYjEyNzZmY2RjM2JkNzUwMjBiMDI0MDUxYjhiMGY2NjU1Y2Y5NmFjZSBweTNrLWlzc3VlNDk3MAorODAwNzggY2RiY2E3YzM0MzFkMjZmMTg1NjhiOGQ3MjJkZDJlZmIxYTE3ZmNlNSBweTNrCis4MDA3OSBkMzUxZTE1ZmVlMjhmMDlkZGQ5NjY4MTA2ZmU5YWVhYmJjZDMwZTdiIHJlbGVhc2UzMS1tYWludAorODAwODAgYjQwNDM2YmNmNGIyYjQ2ZDUzNjNjMTQ5M2RkMTU4ODJhZDlkYmZlMSBsZWdhY3ktdHJ1bmsKKzgwMDgxIGM1YTRkOWQ3MmY5ODIxOTIzNmUyNTkxZTI4NTMxM2UxN2YxMjdkY2EgbGVnYWN5LXRydW5rCis4MDA4MiA3ZTg2ZjQ0MjEyZDY1NWE1NGIyNTRkNzA4ZWU0MjBhNjBjYTFjMDczIGxlZ2FjeS10cnVuaworODAwODMgMTRmMzEwYTZlNDkyODZjN2FlZjk1NzQxYjJjZDlkYzg2YzU3MmYyNSBweTNrCis4MDA4NCA0ODVlMzRlYzFhMWE4Yjk2MzZlYzhlZTRlMjZkOTg4NDQzNGNhODQ0IGxlZ2FjeS10cnVuaworODAwODUgNzY0OTQ2Mzk5MzUyZGYwY2NiNzlhZDdjODJmZjkzYzAyNGZmM2E1ZSBsZWdhY3ktdHJ1bmsKKzgwMDg2IDQyMjk2NjJlZGU4NzJkYmVjMDI3ZDViYzI1NDI5ZGI5YWY3MmI1ZjMgbGVnYWN5LXRydW5rCis4MDA4OCAzYTQ0NzNiZWVhZjUyMzk1ZWRkNTUyYzY3ZGQ5ODMzMjAyYzg5MjBiIGxlZ2FjeS10cnVuaworODAwODkgZjRiZDNiMmNiMDAwZWIzMjU3OWFiMDE0NzQwM2MzNWFkZTdmMjU2ZiBzaWduYWxmZC1pc3N1ZTg0MDcKKzgwMDkwIDVlODUxYjI5ZWQ5NWIxODdkMjQxZjJhMGU4MDQyYWZmNDU2NjEyMzAgc2lnbmFsZmQtaXNzdWU4NDA3Cis4MDA5MSBjMWQxZjAwMGI0MDRlNjUxZGVmZGFiZGI2ZTZkOTc4YzAyZTlhOTU5IHNpZ25hbGZkLWlzc3VlODQwNworODAwOTIgNzNkNzhmZWY5MWQ3MGZhMmZlMjZlYzc5MTMwODY3MmUzZDZhYjA5ZCBweTNrCis4MDA5MyA1ZmE0MDJhNDZmNWE3ZjdlMzYwNjhiNTMyNmNmZjBiZjc2MTk5NjZjIHJlbGVhc2UzMS1tYWludAorODAwOTggMzI0MDE2NzE4NjIxODA4N2Y1MDAzZmQ1MDc3YjE1ZWFhYmQ0MzMyMiBsZWdhY3ktdHJ1bmsKKzgwMTAwIGY5OGJkODVhZWJiMGY1MzcxODc1OGQ1MWU5M2NjY2Y3MmJiZTM5MGYgcHkzay1qaXQKKzgwMTAxIDdiOWUzMjhmNzUzMzIxZDBiOTdmZTc0YmNlYTNlNGE3NjdlMTg5OTIgbGVnYWN5LXRydW5rCis4MDEwMiA1MWI4NTUxNmQ3ZjkzYTgzZDIzYTRiMDg0NGM5MjA4NzA4ZTViMjNkIHB5M2sKKzgwMTAzIDM1YWI1Y2JkN2U3OTBjMDIzZTU4OTI1OTAzYmY1NTY1ZjVmMjEyYjYgcmVsZWFzZTMxLW1haW50Cis4MDEwNCA4MjBiN2UwYTZmMzhiMWI1NDE0Y2UwYjkyZWYxODRmZDQyZDc0NTU5IHJlbGVhc2UzMS1tYWludAorODAxMDUgMTM3YjQyNGUyZjc4NGJkOWRiODQ1NjU1YTcyZDU0MDUwMWMzMDEyMCBweTNrCis4MDEwNiA4MTI5Nzk3NWQyNTNlOWNmMzdiZTRmZmJkMGRiNGRjYWIzZDA2YjU1IHB5M2sKKzgwMTA3IGFmYjI1YzJkMDU2MTk0Y2RmY2VkOGU0ZjBlNDkxMTk0ZWZmY2JhY2QgcmVsZWFzZTMxLW1haW50Cis4MDEwOCAwMDU1MTBhYzA5OTViNmZmYWMyMDgwMDE5NzIxNDAyYWJiNzBkYjZlIHB5M2sKKzgwMTA5IDg3ZDEyMGI5ZWZmMmFlMzZmYjQyYmY2ZWE3NjYxNDEyMjE0ZTc2NmEgcHkzaworODAxMTAgNTQ3ZjMwYTBkNGIxZWQ2NTY4ZTI1ZGVjOTYzZjM2MmVmMzNmYzk3MyByZWxlYXNlMzEtbWFpbnQKKzgwMTExIDRjYmIwZmRlYmY3MzdjYWRiNDBhY2VmOTJlYmIwMmQ3NjcwNTM1NDAgcHkzaworODAxMTIgOTUxNzhlMTdlOTYxMGNkODA0MTM4NmJhMGNjZTgwMjhiYjdmMTRiZiBweTNrCis4MDExMyBiZGFhMjg5ZDlmMTk5ZDhlMWU2Zjk0ZTNmNjM1NzdjODJiMzQ3ZmMxIHJlbGVhc2UzMS1tYWludAorODAxMTQgMDQ0MmU3YTQxOGNlYmZjMzk0N2Q3ZDNmNTk3Y2UxMzhjZDNkMWNmMiBweTNrCis4MDExNSAxMTY0MGMxYTQ2Mjg4YTg2ZTBlNDgwNDMwZDA0NWE2NThjMGY2OGEzIHB5M2sKKzgwMTE2IDE1YjA5Y2NmYWM3Y2ZkZWVmNmM0NWM0YzljNDQ4NGEwYjM0Y2I3NWQgcHkzaworODAxMTcgNjMzNWNmMzQ1YWZhZTgxM2IyYzViMGY1MDQwMjA1NmRiODFjZTIzMiByZWxlYXNlMzEtbWFpbnQKKzgwMTE4IDQ0YTc1MDdmNmRiNTQyN2Y1N2RiOTU1ZWRhMGExNzFhMmI3NjI1ZGIgcmVsZWFzZTMxLW1haW50Cis4MDExOSBjYzEwYTE1Mjc1MjFkMTA2YjhlYTNhOTc5ZDRmYTIzOTcyZWYwZjUwIHJlbGVhc2UzMS1tYWludAorODAxMjAgNDVhZWRjYWU5YzQ3OWMyMDY2NjA0YWRhNjljZTg2NmQ4MzY0NGFlMCBsZWdhY3ktdHJ1bmsKKzgwMTIxIDhhYjViYmFlNWVmZTllODQ5ZjA4ODVjYzE0MzQxZjNkNjFiMzI3NDUgbGVnYWN5LXRydW5rCis4MDEyMiA4MWJiZDU2NzBlYzM5ZWM3MjcyMWNlZjUzMGJiZGQ2ZmE1ZDllMTc5IHB5M2sKKzgwMTIzIDYzYjgxNWNjNmY0YjFmZDliMDE4ZTJiOTIyYWVlMDNiZGQ1NWY1ZDYgbGVnYWN5LXRydW5rCis4MDEyNCAzNjk2ZDE3YTEwYjNhNDUyODFlZDBhZDkyMDJjNzc5ZTY2MWY0MTJmIGxlZ2FjeS10cnVuaworODAxMjUgYTc0OTFkNDdkNDU0NmZkYzJiZjhlMDZlZjQzYmRmMDk4OWNhMjE4MiBweTNrCis4MDEyNiBjZTYyNGNjYTIwMmFlOTE0ZjI4ODlmNzkzOWJiNGNmODJkYWVhM2NiIGxlZ2FjeS10cnVuaworODAxMjcgNDYwYTk4NGE5ZWQ1NzA3ZDJmYTM0N2E3YmI2NGQ1NDk0NjI3ODdhYSByZWxlYXNlMjYtbWFpbnQKKzgwMTI4IDc3MzQwOGNhNWVlNjMzZmZkYWMwYzlmZGYwMDFiYjRlYjdlZGFhNGUgcHkzaworODAxMjkgNzg0YTAyMjY2NGUzYTJjMTliMjUzNjc5ZDQzNjIxOWQ3NDdiZDJiNiBsZWdhY3ktdHJ1bmsKKzgwMTMwIDBhMDFhM2VhMTQwYTk3ZTA0ODJkYTNmOGJmNGY4Mzg3NWZmYWNiODMgcHkzaworODAxMzEgNjhmZDcwYTllNzdhZmRjZTdlZTljNjczMjA2ZjI0MWE2ZTQyMjllNyByZWxlYXNlMjYtbWFpbnQKKzgwMTMzIDVlMWRiYzNhZTc2Nzk3Yjc3NzYwODcwNTFiNzNjMzhmNTM3MjgxM2YgcmVsZWFzZTMxLW1haW50Cis4MDEzNCAxYTMzMDRjZTlhMmU3YWZhNmFkZTNkY2UwYTBkMTlhYjM3ZTAyNGQxIHJlbGVhc2UzMS1tYWludAorODAxMzUgZGM3NjViY2EyNGFkZDg0ZmI1ZGU1OTUwMTFlY2Y5Y2U4N2NhOWFjNiBweTNrCis4MDEzNiBlNTM5MGZlZGNiNmIxNjJjM2RkY2FlMjE5ZjVjNzUwMzIxNjRhNGMyIHJlbGVhc2UzMS1tYWludAorODAxMzcgN2I2OWU2MzBkMjM3NzkwYjU2ODVmOWYyMDgzMDRmOGY0Nzk3NDI2MyBweTNrCis4MDEzOCBjNTMyYWZiMGZhODkyODAyZTEzZmZjZmZlOWI1NDNkNGU0ODE2OWUxIHB5M2sKKzgwMTQwIDA0NmY5N2VkNTY3OTRlZmRlNzUyZDhkYjgzYTI3NTg0YWU0NmIzOGEgcHkzaworODAxNDEgMGUzNmNjMGQ2YWIwMjAzMzY5OTIxMzk1YWExMTYyZTIyZDZlZWRmYiBweTNrCis4MDE0MiA3MzRkZDJlZGExY2M0Y2E0YmE2MDEzYWY1ZjY5NjRhNzVhYzgzZGQ3IHB5M2staml0Cis4MDE0MyA3MzIxYzdkNjQyYWRkYTk5NTgzMzI3Yzc2YjBlNDZmNzljZDJkMWMwIHB5M2sKKzgwMTQ0IDI1ZTM1ZTM4MzhjNzc1OWZkN2Y3YzY4YjI3Y2RiMWVhNGUwZTg5YzUgbGVnYWN5LXRydW5rCis4MDE0NiA3YjA2NTY5MjljZGI5MjQ1MjUwYmI0Y2QzMDU0MWQ4MDczZjIxZDYwIGxlZ2FjeS10cnVuaworODAxNDcgMjkzOGJmODk5ODYzODk1YTRkMmEyYzg5YzRiYmJkN2U3NzI4ZTc3MSByZWxlYXNlMjYtbWFpbnQKKzgwMTQ4IDRmMTIyMGYzZTJjN2RiOGEyNjc1MWE0NGJhMGFiMWM0MDkxNmMxMzIgcHkzaworODAxNDkgNGQwMjA4NjYxYjFmNzM4N2E0YzlkNGQ1YzJlMTc4ZmY1MDFiNThmOSByZWxlYXNlMzEtbWFpbnQKKzgwMTUwIDM4NGRkNDQ5YTRlZTg4MmViOTAwYWNlOGNkZWQzMzdlYzYwYWI4ZjkgbGVnYWN5LXRydW5rCis4MDE1MSA3NDYyZTc1MmYwZmEyOGJhYmRjOTA5OTUxODhmOTgwNjA0NDBhMDEwIGxlZ2FjeS10cnVuaworODAxNTIgMzNkNDc5YTM4NjY2YWM1OTVmM2RkYmIxZDEyM2MyMzE5MDE5MDAxMyBsZWdhY3ktdHJ1bmsKKzgwMTUzIGYyZTJiMTk2ZGI5MjJjMjc4ZDc1MDEwMjVkMmU3MzRkZmJiNzQzZDEgcHkzaworODAxNTQgZTVmNmRlMThiNzE1NmU1YzE0MjhjMDA2ZDUyMGI3Mzg5OGFiNmUzMSBweTNrCis4MDE1NSBjYzM4MmYzOWIzOThjZjk5ODFmMTgwODJkZTNjZmRlZDNjNzkyN2YyIGxlZ2FjeS10cnVuaworODAxNTYgZDdkNWM3NjU0NWZiMzdmNWMwNWVkNDBkY2NiOTdmNGJmNTcxOGFmYSBsZWdhY3ktdHJ1bmsKKzgwMTU3IGJhYzk5MjI5ZGEyZGNhOTRiNjNjZmViYWJkNmZlOTFlNGE5MmRlN2YgcHkzaworODAxNTggOWFjZTU1YjI5ZjdlOWNlMGJiNmQyM2IzNDUyNmEwZTVkNTdiMjU3NSBweTNrCis4MDE1OSBlYjMwZTY2MmZkNmFjMTI3NzNiYTMzZWViYzI5YmExMDkwNzU4NmZmIHB5M2sKKzgwMTYwIGY3MzA3MTJkOTdiOGRkYzJiNjJlNjM2MWQ4ZDFlZTNmMjRlYWE3MTQgcmVsZWFzZTMxLW1haW50Cis4MDE2MSBkNDE5ZTczNzMzNzAyMTY1YmM1MzZmZWFlMDMxN2RiN2IxZjZlOTkyIHB5M2sKKzgwMTYyIDMxNmJlYzNmMThlYzkxNTEwZGNlMzc3MDEzNzBkYmE0YzI2YTMzYjEgcmVsZWFzZTMxLW1haW50Cis4MDE2MyAwZjM3YWZiOGE5ZjJjMGU5ZjU1MDZhM2RkOTlhYzUwNGQxYTdlM2JhIHB5M2sKKzgwMTY0IGQzZWFiNDU5NzM5NTFiOGMwNmVmMDJiOWU4MmUwMGUxNDU2YmQ3NWIgcmVsZWFzZTMxLW1haW50Cis4MDE2NiA3YzkwYWMxOTRlNDA4MmQ2MDMzMjhjMWRjZTk2ZDdhYTgwMDhiMmI0IGxlZ2FjeS10cnVuaworODAxNjcgZTA4N2I1ZDNkMTkxYzIxMDU4N2M3MzBjOTkyNTA1ZDk5OTQzMjZjMSBweTNrCis4MDE2OCBlYTQyYWY5NjhkOWQwNTVhMmM5ODQ5NWUyY2U1ODBkZmRkMmE4ZmIxIHJlbGVhc2UyNi1tYWludAorODAxNjkgOGVmYmNjZTA3NTdkZjYwNDdjMTg5NmZiYTE0NDM3ZmU1M2Q4N2Q0MSByZWxlYXNlMjYtbWFpbnQKKzgwMTcwIDdlMjcwZGNmNGJkNTkwYmI5ZjUwNDk4YjJmZWUyMDM1M2Y2NDgyODIgcHkzaworODAxNzEgMGMwZDgxOWVkYjlkY2Y2OTdjY2YyMzA4YTFiZWU1YmM1YTgxNDg1NiBsZWdhY3ktdHJ1bmsKKzgwMTcyIGEwN2Y2MDgyNWUxYWI5YTFiZjEwMjg5MWRmOGQwZDhkYjcwYjkzZDIgbGVnYWN5LXRydW5rCis4MDE3MyBhN2U2OWE1ZjIzMzc4NDYxMGUwNzg3OWM1NTRiMDliNWQxMTZmN2Q2IHJlbGVhc2UyNi1tYWludAorODAxNzQgNmNiZTg2NDU3MTdkM2U5OWRkMmE1NjgzMWI0ZGI5N2FjNzZjMWM3YSByZWxlYXNlMjYtbWFpbnQKKzgwMTc1IDY1NGUxY2M5YjRmZjU2YThmNWU1YTQ5YjJiN2JlYzc4YWM1Y2ZhZTAgcmVsZWFzZTMxLW1haW50Cis4MDE3NiBmYThhMDNkZmMyZDFjYjZjNjM2ZWI2MTJmYzcwMjU1YmRhYzlhYzhjIHB5M2sKKzgwMTc3IDEzZDg2ZmM2OTk0MDgxYmVhOTExNmMwYjgzOTZiZWRmMDhmNjAyMjMgcmVsZWFzZTMxLW1haW50Cis4MDE3OCAyZjU0NzU2YWViMTE2NmM3ZjBiMTg1MDA5YzRlMTNjYjBhNzQ5YmFhIGxlZ2FjeS10cnVuaworODAxNzkgMjI3MzdhOTliZjhjNDQ0YmM0YWZmM2ZiYjk0NjkyMmE4ZmQ3NThkNiBsZWdhY3ktdHJ1bmsKKzgwMTgwIDZjYjFjNDgwNGY5YzhiMWVjZjcyOTU1YzU0NWU2ZTRkOGNjNjFmN2UgcmVsZWFzZTI2LW1haW50Cis4MDE4MSBmZTZiNmMxODliYjQxNTNkNWNhYmEwZDE1ZGM3NTI2YmM1NGQ3Zjg5IHB5M2sKKzgwMTgyIDFmM2QyZTYxMmI0NGFiNzdlMTgxYjQxMzAxOTI5OTlkMzgwYjc1NmUgcHkzaworODAxODMgZmIzZTQwMGMyY2RhNDA4NTkyNDk1YjkyYWQ2MzBmMjdmYTI4NDNhOCByZWxlYXNlMzEtbWFpbnQKKzgwMTg0IDQ1MDVlYjU3YjRjYTdkZjgwMTk0MGRkMGNlOTcyZGZkYzFiYTkxNjQgcmVsZWFzZTI2LW1haW50Cis4MDE4NSBiZWRkNmVlMDNlNjA0ZTc1NjljNmY4MGQ2ODZjMjQ0YjI2MjM2ZTYxIHB5M2sKKzgwMTg2IGY3NjJjNmE1NGJmY2M3NmM2YzUyZTk2OWE3MGZlYzU1MjIyY2E0YjUgcmVsZWFzZTMxLW1haW50Cis4MDE4NyBhOTZmZDBlODc0YjQ5OGE0ZTY0ODI3ZTBhMWRlNjJlMmIwNTdhMmIzIGxlZ2FjeS10cnVuaworODAxODggYmNhNTc0Mzc2MTI3MmRkMWVhYjMyNTg2MWJkZGMwZWFkYjNiOTQyNSByZWxlYXNlMjYtbWFpbnQKKzgwMTg5IDcyNjdlMGFjZTMzYzE3NDI1MGE3ZmM1NmZjNjk1NGZmYTVlMWFhYWIgbGVnYWN5LXRydW5rCis4MDE5MCAwNDNmMTQzMDRkZWQwNDczNTcwMmMxZTQ5MjMyZDlhMjM2OGRmNDhhIHB5M2sKKzgwMTkxIDJjZmIxMGE2YzJiNWQ3MGI1M2ZkNzVkNmFmMDQxNDU2Y2U3MzViMzkgcHkzaworODAxOTIgOWQzNWFmZDg4MjFmMDA3NWE4YjQzN2Y5NjQzYjMzOGZkZGUwZGE2YyByZWxlYXNlMzEtbWFpbnQKKzgwMTkzIGE1MmNiOTkxZjU0YzFiMjc1Y2I5ODIyY2I2MDg5MjI3ZTU1ZGVhMjggcmVsZWFzZTI2LW1haW50Cis4MDE5NCA3NjY0OWVkNDVjNjM3YmFmOTRlNDkxNDExNDlkNzZmODdhZDU5ODEyIGxlZ2FjeS10cnVuaworODAxOTUgMDY0NGNhM2ZlMzBhMDRlZjY2YzMwYmQ0Nzc1Mjg2OWZlOTlhYjE3OSBweTNrCis4MDE5NiA0Nzc0ZDU5ZWVmN2IzNzYyMTNjOGVmOTE5ZjE0MWYwZmIxMWUzY2JmIHB5M2sKKzgwMTk3IDI4ZmMzMTY4OGI3YzEwMzFmMjU2YTE3NGRhNzBjZjBhMTI3ZGE3ZTEgcmVsZWFzZTMxLW1haW50Cis4MDE5OCA5YWFjMWQzZDg3M2QxODBlYjQ0ZGQ5YWU2MDU4ZTcwODg4MjkyZjVkIHB5M2sKKzgwMTk5IDQ4NWMzZjA5YTA5YjQ4ZjhhM2U5OTkyMjYwNjg3ZWYwNmE1YzI3ZjMgcmVsZWFzZTMxLW1haW50Cis4MDIwMCA5Mzg2ZTNkZDU3MDBjNzA4MWMxYzcwMzFhMDBjMjY0ZjYxOWVjYmI3IHB5M2sKKzgwMjAxIDE4YTE5NTYzM2I1OTllZGMxZjEwYzY2MWRjZGU3NDQ3MzgyZDQ0ZjIgcmVsZWFzZTMxLW1haW50Cis4MDIwMiA4ZjVjNDgwZjZkNmY1OTUxNWY4ZjgwYWRiNmRmMWJkZGMyYzNkNzg2IGxlZ2FjeS10cnVuaworODAyMDMgY2Y1NzU2ZWM2ZWQ3ZDdmNDJiNGY1OGNhYzI0OTEwNzQ3ZmJhODFjNSByZWxlYXNlMjYtbWFpbnQKKzgwMjA0IGFhNzA3ZjEzYzQwMjhhMjc0MTAxYWRmZTU0MmM4NDQ3ZTM0MDJhN2YgcmVsZWFzZTMxLW1haW50Cis4MDIwNSBhNzI3Nzk2NzJmMTU5ZjMxYzAxOWIyMjU5NmJlMDAyODMyNDk1Y2FhIHB5M2sKKzgwMjA2IGNmODA2OThmMjc1NjgyOGFhYTRkYTM5YzM5MjE5ZWVlYmYyZmQ3ZDUgcHkzaworODAyMDcgYjg3NTAyMWNkOTkzNzAyMTAwZDRkOWY2ZTJmYTQ1MWY0MTQ5Mzk5OSBweTNrCis4MDIwOCAyZGViNzhiYzVkMzg1OTIxMzI3M2ZkYTg3YWVlNzgxY2NjNDUxOTAxIHJlbGVhc2UyNi1tYWludAorODAyMDkgNmUyZTJiNjI2ODVlZDdhOWMwNzBjYzZmMzUyOTUxNzY2MTRhYzkxMCByZWxlYXNlMjYtbWFpbnQKKzgwMjEwIDQxZTJmMDU0ZDUzOTAxY2E4MjM5MzA5ZTVlNjFmN2UyYTMzMGZhZDYgcmVsZWFzZTI2LW1haW50Cis4MDIxMSA3YTU2NGQ3NGZkNGE4YTM3ODkxOWRlNWI1YWNmZDk5MWM2YTQwZmE2IHB5M2sKKzgwMjEyIDc4OTYxMmNkMDk3MDVmZDI3MWQ1NzJhYTU0MjQ3OWYzNGU3OTg2NDEgcHkzaworODAyMTMgODM2ODJlN2Q1OWE2NDQzOTFlNjBiODM0Zjg5MjJhYjQ1NThiN2U1MSByZWxlYXNlMjYtbWFpbnQKKzgwMjE0IGNlNjA1ZTk1MDAwODA2Y2UyNzU0NDQyYjIwM2I4NzkwNWMxNTFmNTAgcmVsZWFzZTI2LW1haW50Cis4MDIxNSA0MDkyZTQ1NjZkYjNmZjI2MTljMjAyMjY3NDJmMmU5MzgyMmNlMjgyIGxlZ2FjeS10cnVuaworODAyMTYgN2Y5MjYzMmY5MTJkNmM3YTM0NjFiNjUxNTYzY2MwNDY4NWE1MWY0ZSByZWxlYXNlMjYtbWFpbnQKKzgwMjE3IGI1MTRmODMxMWYyODU1ZDVkNWU1NmI4ZTA0YzNmOWQ4ZWRjYTZjNGYgcHkzaworODAyMTggYmNmYjZiYWRmZjg4NDFiYzBlNGNjMDBkMmE2MTk5YmRlZmU5MjcyYyBsZWdhY3ktdHJ1bmsKKzgwMjE5IDcxODYwY2RiNDg4NjkxZTYwMTQ3ZDM5N2YxMDY5NDczZDU1MWM3NGUgcHkzaworODAyMjAgMWYwMmI0M2UwOTA4OTI0N2NiZGFiZDAzNjUwNDZkMjI2ZWQxNDU4YiByZWxlYXNlMzEtbWFpbnQKKzgwMjIxIDJmMzExZGFiMDY5NzM1ODBiMzU1ODJlMTRhMjc1YTViY2U3NGE4MmIgbGVnYWN5LXRydW5rCis4MDIyMiA5OGIyY2QxMGFiMDVmMDFkMmE2Y2VlMmE3N2VmZTY3NzExMDM4ZjQzIHJlbGVhc2UyNi1tYWludAorODAyMjMgZjc3ZTM3YWZjODcwYTQzOGNkYzcwMzI3YzA0MTA0YjFhNmJlNWNlYiByZWxlYXNlMjYtbWFpbnQKKzgwMjI0IDdhZDZlYTk3ZDQ0MDIzMTU4NjcwMWEwNWE4MTEwYTY0NTViYTk3M2MgcHkzaworODAyMjUgMzAxZmJlOGJmYWQxODU5ZTE3NWNmMDFlMDdlYzg5ZjY0YWMwYTAxNSByZWxlYXNlMzEtbWFpbnQKKzgwMjI2IDMyMjg1MzEzODk2Yzg0MDEwMmY5ZTMxY2VlNGYxMzFjMWQzYjU5YmIgbGVnYWN5LXRydW5rCis4MDIyNyA3ZmVmODc5NmY3NzcwNDJkN2I4MmI1ZDgzZDU3ZWI5NmM5M2ExMzA0IHJlbGVhc2UyNi1tYWludAorODAyMjggMzliNTYxYzUzZTlhZDdiYmY2MWMwYThhY2IwOGM5YTUzZDM2ZGM2ZSBweTNrCis4MDIyOSBjMTNmODI1ZmRlYWI3NmIyNDkwZDc0MjQ1MDk0N2ViMGZhNjk4YzZmIHJlbGVhc2UzMS1tYWludAorODAyMzAgYmUxN2JkYTVhNjU4ZTJhYjFiOTk1YTM2Y2QyZmIwZTljMTBkMWFmYSBweTNrCis4MDIzMSAzNTk5NTRjZjBjY2RhOWQwZTJmYzA2MDg1ZWQ4MGY2NjU5YTAwZTIxIHJlbGVhc2UzMS1tYWludAorODAyMzIgNTkyN2ZkZjVkNDhjNWFlZWUxN2EyODJkMGM1Y2JiMjMxYTMyZDJkMiBsZWdhY3ktdHJ1bmsKKzgwMjMzIDhjOTgyOGMxNTA0MDlmMjdmMTFlYTNmMjBiNjU5NzNjYzY1NzFjNGIgcHkzaworODAyMzQgYmY4ZDU0MDJhYmZmMjlmNTQ2Y2QyMzUyZjJmZDg5NjI4MTk5YjFlMSByZWxlYXNlMjYtbWFpbnQKKzgwMjM1IDFmYjYwODE0MjA0MDRmNWRhZWI3NTlkNmVjZGM2ZmYxOGRkYzU4MTAgcmVsZWFzZTMxLW1haW50Cis4MDIzNiA1ZjVlZTk0ZjE5MjYzZGY3ZTU2MDk4YmM3M2MyYjUzMDA2ZGUzYjdjIGxlZ2FjeS10cnVuaworODAyMzcgYzIzN2JmM2QwNDNjYWFkMGJiYzUwMDkxMzc0YmU5NDVhZDI4YTUzNyByZWxlYXNlMjYtbWFpbnQKKzgwMjM4IGVmNzNhYzcxZTI5NTAyZjZkY2VmZjNhMzY5NDE3Yjk0ZGJlNWVhYTQgbGVnYWN5LXRydW5rCis4MDIzOSBlMGZjYTNlN2NlYjk0YmRjNTc0MTFmNjcxMzllNzU5YTM5MWVhNmIxIHJlbGVhc2UyNi1tYWludAorODAyNDAgNjIwM2Y0NzE2NTg1ZjJlZTU4Y2ZjZjU1N2NiOGM2ZTkzOThjNzE2NyBweTNrCis4MDI0MSA4ZDA4ZmRjOTdhYTRjNTMzY2VmYThiMDg0ZGQ2OGM2M2Q4ZWMxNWU1IHJlbGVhc2UzMS1tYWludAorODAyNDIgZGM3M2VlMmE4YjllYzZiMGJiNTc4YTBlMDY4ZDFiZTlmZDE3ZDMyMyBsZWdhY3ktdHJ1bmsKKzgwMjQzIDcyNWJlOGY5NDE4YjgzZTQyNGUzY2M0NTNjZmNlYjk4MGViNWRiMDggbGVnYWN5LXRydW5rCis4MDI0NCA4MmRlMGI0ODhmMmRkNzMxY2Q2MDA1NTkwMmI3ZTVjYWQ2ZDZkZTg1IHB5M2sKKzgwMjQ1IGIwMTgzMTlhNjE1YjM1MjMwYzZlYzUwNGI5ZTk0Mjg0MjllNDcyMzYgcmVsZWFzZTMxLW1haW50Cis4MDI0NiBmMjczMmNjYzEyYjQ3MGQ0OTRmMmE4ZWQ5MTU3NDdmZjI2YmRiMmExIHB5M2sKKzgwMjQ3IDM5NzM4OTgwNTZiNjBmY2I2YTgwMjIxY2UyNGFmZjcwZjQ1ZTNhMDAgcmVsZWFzZTMxLW1haW50Cis4MDI0OCA3NjM4MjIzZjJlMDJlOTUxMjM3OGFmODgwYTY2ZDA1MDQ1OWFkY2M5IHB5M2sKKzgwMjQ5IDhkZTI4NWNhZGIyNDAzMzA1ZDJhYWFjYjAxYWE2MzgxZjExMTQyMWIgcmVsZWFzZTMxLW1haW50Cis4MDI1MCBhZTI3ODE5MjJhNmRlNTcxNWY5NTI0ZTc4YmMwZmJmMDJmY2U3NmQzIHJlbGVhc2UzMS1tYWludAorODAyNTEgY2VhMzhlZjYwNzAwZWYxYjhhZjdkMmJjZGI2MGE5ZWUzZjY4MjA3NSBweTNrCis4MDI1MiA4Mjc2M2IyMDBhNzkzNzk1NjA4Zjg3MDc4NzkxNWI0ZDQ3ZjgxZjJmIHJlbGVhc2UzMS1tYWludAorODAyNTMgZGE4NzA0OTkzMDAxNmZiNTIwNzU0NDY2MzBiMzk4OTdjMTM4MGQ5ZiBweTNrCis4MDI1NCBiYjhmZTc5ZGM1Y2IzNTJmYTRhYTMwYTg0N2MzZWM1MmIzYjM1MTA2IHJlbGVhc2UyNi1tYWludAorODAyNTUgN2QzNDMyYjA3ZWExYTYyZGZhODI3YzMzNTA4NDM0OTllZTBkMmYxOCByZWxlYXNlMzEtbWFpbnQKKzgwMjU2IGJlMTBmNGZhYWYxMmNhMTQwYjZmMWY4OTNiMjlkYjNiZjhjZDRiNjYgcHkzaworODAyNTcgYzJmZGRkYjJiNGE1NWFmZmY1YTIzNWRkYTEyMjAwNmVjYzE0YjczMCByZWxlYXNlMzEtbWFpbnQKKzgwMjU4IDQwYTNhNjMzYzU2NDg0ZmQ2OGYxNTBkYzdhMGQxMWMzODRjZmRiZDMgcmVsZWFzZTI2LW1haW50Cis4MDI1OSAzODc0MjhmYTY5ZmNkYjBlNTJkMDExZWIzMmY5NThmYTEyMWVjYzUyIHB5M2sKKzgwMjYwIGU3NzNlMjRiMTRlNmJmZTc1NWYzMWY1MzM4YTNlYmZlZmY1ZGVmYjAgcmVsZWFzZTMxLW1haW50Cis4MDI2MSA3Y2ZhNzk3NWFiMGUxOWUwMjM2M2NlMDU5YmYxYmE0NzA1MmVmZGE0IHB5M2sKKzgwMjYyIDdjYTEyNzJmNDNhMzRhZTNhYWMzODI5NmE5NmFhMjA3Mzg4ZDQxYzYgcmVsZWFzZTMxLW1haW50Cis4MDI2MyA3M2E2MTY1ZDAwMmJkNDY0NGU2OTM1MmJlNzQyZDVmZDRkM2IzNDg3IHB5M2sKKzgwMjY0IGQwNzEyMDFmMjYxMmQ2N2VmMzA3MjgwY2MyMzY3NmQzZDI0OGUwODIgcmVsZWFzZTMxLW1haW50Cis4MDI2NSA2ZWNhN2ZiZDUzOWVkZjEwZmJiMDkzY2Y3MjRjYjQ1MDE4Y2JkNTFkIGxlZ2FjeS10cnVuaworODAyNjYgYWUyNzJkMjEyYTlkYWNhZmQ2ZDkxNGQ0OTNmZTBmMDZkZWNkOGMzMCBweTNrCis4MDI2NyA0ZTVjNmIyOWQ5Mjk1ZmU3MTk3ZjAxOWNiY2U3YzMyNTYxMzVkZWU5IHJlbGVhc2UyNi1tYWludAorODAyNjkgMWZkMjcwOWVkM2ZkYjllMDEzMTc0Mjc0OThjZjU2NDUyMmMwYWZmNSByZWxlYXNlMzEtbWFpbnQKKzgwMjcwIGY4OGVhMWI0ZmRiZTdjOTY5OThhYjJmNzg3OWEzMjYxMDViZjY4YjMgbGVnYWN5LXRydW5rCis4MDI3MSBlMzE3ZTg0ZThhMWFhMWE5ZGI5OGQ0MjM0MWEwYTIyM2FhNGUzMDMxIHJlbGVhc2UyNi1tYWludAorODAyNzIgMDcwMzVkZTA1ZDRiZDRmY2IwMjgyNTJjMTJiMjBlNDMxYjE3NTRjMCBweTNrCis4MDI3MyAwZjAxYmQ2MjA4NGVmYTZhNWVlMWE4YTQxNTUwZWU2YzY3MzlmNzY1IHB5M2sKKzgwMjc0IDZkYTcxN2JmZTQyNTc4NGVlZjE0ZjZiNTNmNWNlMTg5OGE3NjUxZDAgbGVnYWN5LXRydW5rCis4MDI3NSA1MDZmYWRkYzhhOWU3MmY4OTNiZjVjZGJiY2Y0MmU4Nzg1N2Q0ODMyIHB5M2sKKzgwMjc2IDU3ZDA5Nzk1MDk2ODczNmI0NDk0ZmMyNGNhNWFkNzIzYzcxNzNiMzIgcHkzaworODAyNzcgN2M4ZWIyYmE5MTI5OGI5ZWY2ODA0MjkzOWY3NGRhNTUzZTQ5MTA3ZCBsZWdhY3ktdHJ1bmsKKzgwMjc4IGQxZDIwOWYyYzgwMzlkODdjMDZkZTBlNTkxODEwMTFlODc2MmFmZmYgcHkzaworODAyNzkgZDdmZWZmYTc4ZmEwMTY3NDk1ZmRiNWY0ODAyMDZlNmY4ZjYxMTUwMCBsZWdhY3ktdHJ1bmsKKzgwMjgwIGQwOWY4NDI1OGU1MjJkZGY3YzI3MWVjNDhkNTNkZWZlNGM1MzkyYmUgcHkzaworODAyODEgYTIyZjJhZTg1NjQ1MjUxODVlNDhmZmRlMjMwM2IyOTNjNDZiNjAwOSByZWxlYXNlMjYtbWFpbnQKKzgwMjgyIDRkZGNhN2ZkMzYzOTE5MDA4ZWU1NmJkZjg1ZDY5ZmEyZTM4MjdjMmUgbGVnYWN5LXRydW5rCis4MDI4NiBiZDQ1ZTAxMTA5OTAxNGVhZWJhNmEzN2JkY2M0OGRjNjdhNmY0ZjZlIHB5M2sKKzgwMjg3IDI1OWVmZTViOTYxYjFkY2ZmZDQzNDFkYWQxYThiZjA0ZmM4OTdjYzkgcmVsZWFzZTMxLW1haW50Cis4MDI4OCA4NmQwOGNiNmJhNWMxYTRkZjM3MTQxMzUyMjVlMmQ2M2M0ODk5YWZmIGxlZ2FjeS10cnVuaworODAyODkgMTlhOWE0NTdhNDdhYzYwMzE1OWQxNjNhNDQzY2MyZjAzNDk4MWVmOSBweTNrCis4MDI5MCA4YjM2ZjcxNzUyMzg2YjlkNjc1ZmQ1MWRjMjg4ZDhmMTBlMmRjYjkyIHB5M2sKKzgwMjkxIGFmMjdjNWE5ZmViODE0ODZjZTUxMGMxMWMyYjZhZDA4MDVkZDllZjggcHkzaworODAyOTIgOGIzNDQ1ZGZhNzE4ZWNmMTdlOTg2MzhiOGM5MDViMDFiMzU1ZjcxMiByZWxlYXNlMzEtbWFpbnQKKzgwMjkzIGYzNGZiMTUxMGNiYzUwNTU2YmY5YzNiOTliN2M5NTBkZTE5ZmVkZDggcHkzaworODAyOTQgY2NlMGE1YjIwMTVlMjQ5ZTE3MjkxYmIxYmRiZTRlNWUxNGJkNTBhNyByZWxlYXNlMzEtbWFpbnQKKzgwMjk1IGY0MDQ3YjVhMGY1NGJkNTNmNTU4ZGFiY2YxZjgwYzI4OGFkZjU5NGEgcmVsZWFzZTI2LW1haW50Cis4MDI5NiA0NzNhMGY2Nzg4MDYxMjYyYTNjMTk4OGE1NzllMWE4NzkyMjRlZjE4IHB5M2sKKzgwMjk3IGQ5NWFjZTUyOGQ2NTcyNmUyNjIxZTE0NTI1ODRhMTQ4ZDg2ODg5NGMgcmVsZWFzZTMxLW1haW50Cis4MDI5OCBmNWFmYWRiNzQ1ZGExYTMxZDMwZmM5NzlmNDljYWNjMzEzNjI4N2ZjIGxlZ2FjeS10cnVuaworODAyOTkgMWI0M2VlMWVlM2Q4ODUyNWQxYWI4YmJjNzBiOTg1M2E3YWE3YmQ5ZiBweTNrCis4MDMwMCBhMmE0ZDlkYzc4ODRmNGVmNDlhOTY2YWQwZTg3ZDZlYWNiZDQxYjBlIHB5M2sKKzgwMzAxIDcwMzljNjA0NGFiNjUzNGZhYjE3NWZkZGFmNGM5NmZmOTg5ZTM0MmMgbGVnYWN5LXRydW5rCis4MDMwMiA5YjkyZTc2NzExMzU4NTcxOGJkYmQ3MDQ1YmU3NWMwNTNiMWE1YjZkIHB5M2sKKzgwMzAzIDhlMmE3ODg0OTI5ZGEyZDFmNzk2MjU2N2RkOTE3YTgxNzIwMWE4N2IgcHkzaworODAzMDQgOTVjY2FmYzE0NDc1ODE2MTVjN2E3ZjYyZmI3OWY0NWU2OWJmNWI1ZCBweTNrLWNkZWNpbWFsCis4MDMwNSA4YTkxY2IzNmUwOTRjY2M4OTdhMzg4NzViYTMzNDA3YWM3OGUyZGQ0IHB5M2stY2RlY2ltYWwKKzgwMzA2IDJkYjA2ZmFlOGMyZWFkNjU0ZmI5ZjY2ZDZlMGExMDA5ZTBmMjgxYTYgbGVnYWN5LXRydW5rCis4MDMwNyA5NDI1NDIzMWFhNmFmOTk0N2Y1ODFmZWFhMzIzMDMzMDMyZTUxZTgxIHJlbGVhc2UyNi1tYWludAorODAzMDggODE5ZDgxMzQ3NTIyOGU3MmMwNzQyZGM1ZmFiNzc5MDBhNWRmYWZiYSByZWxlYXNlMjYtbWFpbnQKKzgwMzA5IGMyOTA1YjBlZjFkMjRkNGNkOWU3ZTM3MWMwODNlYjlhYzViNzRiYzkgcHkzaworODAzMTAgMGE3YTI1YmJiMzRmNzJiNGViNmNiMDM2NTc0NGFmMzVkYmY0YzhiNiByZWxlYXNlMzEtbWFpbnQKKzgwMzExIDZkODM2YjEwZTM3MDk4NmU5MDE4MDhmMzdlNTdhNzI3M2EwNTg2MGUgcHkzaworODAzMTIgYTU1ODI3YjBlYzNiYjk1MzQ1MzczYmU2MzZiZGE0OTQ0YjRlZmJmMyBweTNrCis4MDMxNCBjOTFmYjUwNmYwOGRmMDk0NWNiZjk4Yzk1YWVjMjk5MTA1OGUxYjVjIGxlZ2FjeS10cnVuaworODAzMTUgYzFkOGEwMDU1ZmRhNmU0MGEzZjZmNzIzZTBkNzYwZWJlNDAxNTU1YyBsZWdhY3ktdHJ1bmsKKzgwMzE2IDlkODZmMDcwMWQ5Yzk4ODdmNjY3OGM5YWUwMGE2OWQ3MjRiZTg5NWQgcmVsZWFzZTI2LW1haW50Cis4MDMxNyBmMzZhMGViZWIxNjM5MTU3ZmQ3OWZmNzZiYmI4NDdlOTVhOGEwY2YwIHB5M2sKKzgwMzE4IGEwYjhhZjFiZTU2MGJkYWQ2MDc1ZWM0ZWEwM2NlM2YyMDE3OTE2Y2QgcmVsZWFzZTMxLW1haW50Cis4MDMyMCA5YmEwMzc4M2VjZTNjYjQ1ZGFkZmM0ZWMyN2JiOGMzNzhkYWRkMDhkIGxlZ2FjeS10cnVuaworODAzMjEgOGU0MjQ3NDExNzU0MjQyYzM2NDFmZWZhMTI3OTU0ZTVkNzY1NjQ1NSBweTNrCis4MDMyMiA4YTViMmQwNjI5OGQ3ZjcwZWI0M2JlOGI4MjI3OTM1NjliY2JlNGFjIGxlZ2FjeS10cnVuaworODAzMjMgYTNjZTI3NWJmMDk1NzNiNjIxNTRlZDExNmJmZWNiNzgyZTQxNmU1NyBweTNrCis4MDMyNCA4ODhjNzVhMWJlNTUyMTliZjM3MDM4YzUxMmU2MmZhZDY5ZjdiNTIwIHB5M2sKKzgwMzI1IDc2OGNlMTA3OTlmMmQ4NTNjNGU0ZjAxNjE2NzFiYzdmNzgwY2RmNmEgbGVnYWN5LXRydW5rCis4MDMyNiA5MmE2MzNhMzBhY2I2Y2ExMjUyNjdjMjg3ZmNlMmUzY2NkNGJkNWZlIHB5M2sKKzgwMzI3IDY3YjgxYzMyODRmOWIwODVmMmY2NmEyMmM4ZDEwYzhiN2I1MjQwNDkgcHkzaworODAzMjggMWMxMDViMzcwNzQ2MDUzMDUyZTAyNDkxNWNiMDA0YzFkYWVjOTMyMyBweTNrCis4MDMyOSBlMDkxZDk3ZDUwZDU4MzA0ZGJlNDUwMjQ5YzM3N2Q2OWVjMDBhOThiIHB5M2sKKzgwMzMwIDA3Mzc5ZmU3NWM1NzA3ZmRmMDZkNjVlZjNlNDg1NTQ2NjJjMmNlMDAgcmVsZWFzZTI2LW1haW50Cis4MDMzMSA1N2FhMzEwMTJjYTUxY2MzZGE4MzVjYjg5ZWY2M2Q0MTNmNzFmYmEwIHB5M2sKKzgwMzMyIDkyNjY5OTY1Yzk5NzE5NGMyY2Q5OWQxMWI1YzYzY2QwZTkzNGFiYjAgcmVsZWFzZTMxLW1haW50Cis4MDMzMyBiMTljNjE2ZDViNGFkOGVmMTA4MzI4ODM0MmNlOWI3Y2U1YmE4ZDkyIHB5M2sKKzgwMzM0IDdkNDlmMDIxYzg0MjA5M2IwY2Q4MmYxZDQ1OTZhOGU4MGNhMWQ3N2EgcHkzaworODAzMzUgOWY0ZjY3MGIxNDhjYmE2MTY0Y2I1MGFjMDQ0MDMyZWY2ZmRhZWRmYSBweTNrCis4MDMzNiAyYjA5ZDgyMWJjZTFlODk3YjlmNjA5NzY3Mzk0MzEzNjA4M2E0NzIzIGxlZ2FjeS10cnVuaworODAzMzcgY2FkNGUwOWYwMmExMzMwN2RiMDNkODk5MTYwODc1YjE5MmI4Yjk1NSBweTNrCis4MDMzOCA0YjAxZTgwZDZjMWZmNjhmZmQ2MWNkZDU0ODQ3M2M0NmFmNDc2MWE5IHJlbGVhc2UyNi1tYWludAorODAzMzkgYjM4NzVkMWIzODQ3MzkzM2U4MGIwMjQ4N2E4MzViYThiYzY4MzEyMCByZWxlYXNlMzEtbWFpbnQKKzgwMzQwIDE4NmJjM2I4MGY1NzEyMjlhZDUzZWVmMDk5MDQyNDI1YjZlN2QzZjIgcmVsZWFzZTI2LW1haW50Cis4MDM0MSA5NGI2NDk0MGRhYzQ2NGM3YzNjNjMxOTg0ZTJhMWViNGUwMWI2ZTg0IHJlbGVhc2UzMS1tYWludAorODAzNDIgNTRmMTUwMjAyODhhNDZjNmZlNjMwODZjMzM5MDQ3NzU0ZmYyMDZkNCBweTNrCis4MDM0MyAyMzQwOTU5NTEzNzA3MWNhZDNlNzFkYjMzYmNlODc3OWYwN2JiZWMzIHB5M2sKKzgwMzQ0IDVjNjI1YTA0OGY5YTU2YmIzYjI5NmM0NmMxZjViMDA4ZjFhNzk5ZWEgcHkzay1jZGVjaW1hbAorODAzNDYgMTA0ZThjODAxZTVkMzgxOWM0ZTFjODc4ZGZhMmU5YWZmNTUyYmY2MSBweTNrCis4MDM0NyBjNDQ5ODE3ZjRiNTRkZDQ5NGRkM2M0YTM1NTNmYzlhYjFhYjA2ZTUxIHJlbGVhc2UzMS1tYWludAorODAzNDggNmI3ZTIwMDAwZjk3NjY3N2E2NzViOTBkMzM2ZmIxMThkY2U2YTEyMSBweTNrLWNkZWNpbWFsCis4MDM0OSAzZjI3NzNhZTg0NDhhZDIyOTE3NGUzOWFkMzNmM2Y3YzlkNTlkOWFkIHB5M2sKKzgwMzUwIDU0NzgwMDQyZDFlN2Q3NDM1NjdlNzdiNmJkYzI4MzUyZjBiY2U3NmEgbGVnYWN5LXRydW5rCis4MDM1MSA4YzA1MTdmNTBjNGU5NDkyMDM1MGU4ZGFjOGY1YTUyYzZiMjVkZjhhIHJlbGVhc2UzMS1tYWludAorODAzNTIgZGUzOTQ1MTAxYTZlMDBiNjFjNTE5MTgxZjRhMDdhMDc5ZDQzYjkyNCByZWxlYXNlMjYtbWFpbnQKKzgwMzUzIDdmYzI0YjRlNWZlZGM4ZTRiODA0NjMyYzIyMmIxMjNhYmVlODkwM2YgcHkzaworODAzNTQgODg5OWY0MDgwNDNjNDc3NTUwMTJjYjJhMmU2Yzk2NGNhYWI0MzJlMCByZWxlYXNlMzEtbWFpbnQKKzgwMzU1IDNkNzM3ZjJhYjkwMTQwZDAwODM5Y2Y0MTA5Y2VhMThjYjliY2Y0MDUgbGVnYWN5LXRydW5rCis4MDM1NiAyYzNkN2JkNzE2MzY0OGEwOTMwYjhiMTk1NjQ4Zjc1MGE3ZWQ5YzQ3IHB5M2stY2RlY2ltYWwKKzgwMzU3IDczNmNmNzUxZmY0ZjVhNTczZTJjMTEzZGMyZTM1ZDEzYThiNDA2ZDEgbGVnYWN5LXRydW5rCis4MDM1OCAwZTY0YmEzMjI5MmJhNTdmMmIyYWU4Y2VmNTRmZTc2ZjNkMzIwOWE2IHJlbGVhc2UyNi1tYWludAorODAzNTkgYjNkMjBkNDQ2NjM4OTgyZTVmNjgzZTEwZGRmMDM0NmY5MjBkOGM2OCBweTNrCis4MDM2MCBkYjcxNmE3NGI1MTdmYzVkOTJmMjVjMzA0ZjIxMWY5MGU3MjdmODE5IHJlbGVhc2UzMS1tYWludAorODAzNjEgZGQxOGNjY2I1NWIwOGQ5ZTk5Y2IzYjBmODNkMWM3ODcyMjA4NmU5MiBweTNrCis4MDM2MiA5ZGM4NjRlZjY0MjVkNWVlODJmODQyNjliOGM3OWM0NjJkMWJhYzY2IGxlZ2FjeS10cnVuaworODAzNjMgOTE3ZDZhNzRmZDRmM2E0ODRiNDE5YjI5NjIxZDUxODdmMzZmOWQxNSByZWxlYXNlMzEtbWFpbnQKKzgwMzY0IDg3Yzk4ZmI3NzhiNGZkMDJjZmNkZWFhMDJiMWM1ZjNiOThlNTUyZjQgcHkzaworODAzNjUgNWI3MjZjNjAxZTIyMTYxYTZhMGNiNjNkNzg1NGVjMmQ1MzhkYzkyZSByZWxlYXNlMjYtbWFpbnQKKzgwMzY2IDNhOGE2MTg0ZjQwYTU0ZWQ3ZWQ5OGQ5MGE4Y2M4ZmE0ZTNjMzE4OTcgcHkzaworODAzNjcgMjY5MDJkOWJlMDMzYzZjMDJhODk1NzRkMDc3YmE0NzFkZjljNGQ3YyByZWxlYXNlMzEtbWFpbnQKKzgwMzY4IGMwMTNhNzE4MjliZjIzZmM3NzEzZWI4OWFmMTY5YmNjMWFjN2ZmNTYgcHkzaworODAzNjkgNGFkOTA0NjAyNDYxYmEwY2M5MTQ0N2ExZTNkYTcxYTIwODdlN2I3YSBweTNrCis4MDM3MCA1OWFkMjQ0ZmUyOTQyOTAwNTI3OTA1ZTIxZTM2Yzk2NTU0NDA5MTcxIHB5M2sKKzgwMzcxIDg3ZDk4ODIzNWM1MThlNzJmZWMxZmE4YWEwNjFjMzFjYmJmNmFiMDMgcmVsZWFzZTMxLW1haW50Cis4MDM3MiAzMWQyOGYwNGI4MjM1NTk2YmRiMjc0YzdjYmNiMTc3NjE1ZWNkNTRjIHJlbGVhc2UzMS1tYWludAorODAzNzMgODhjN2RkM2Q3NTc5YjZjYjhiOGZiYTYyNTIxY2M1NmUzNzA1MzUxYiBweTNrLWNkZWNpbWFsCis4MDM3NCA2NmM5YTk1OWMwN2VmZTE2MDRhZGYxYmFhNjUzOTgwYmViNzQyMjE3IGxlZ2FjeS10cnVuaworODAzNzUgYjY2ZmE3NzcwYmJkZmNmY2RjYjE3MzE4ODkxN2IxNTgzODg4OThhOCBsZWdhY3ktdHJ1bmsKKzgwMzc2IDk2MTkwYjViM2Y2ZGI4OGVlMzRjNDFmNzRhMDg1NTM3NTI3MjhkMDkgcHkzay1jZGVjaW1hbAorODAzNzcgNTg5NjNhNzY1NDcxZDdmMThmYTNjNjMwYjY1Njk4NmQyZTlmYzY2ZiBhc3luY29yZS10ZXN0cy1pc3N1ZTg0OTAKKzgwMzc4IGY2MzJhMzg2MWQxMjU1YjZhNDAzM2JiNzI5NDdiZmM3NTQ4N2IwNzYgcmVsZWFzZTI2LW1haW50Cis4MDM3OSBiNDVkZGEwYjUzOGZhYWJlMWY1NTRmOGI3MmY2MjQwYzUzOTA4ZWFjIHB5M2sKKzgwMzgwIDRiN2YzYWUyMmM4ZmRmOGY5MzIzMGZlMDgxMzI3ZDcyNWIyYTRkNDMgcmVsZWFzZTMxLW1haW50Cis4MDM4MSBjNGI1MzQzMzczNWEyZjg4NWY3Y2RiM2U4MWJkZjVlMjU2ZjRjZTA0IHJlbGVhc2UzMS1tYWludAorODAzODIgZDJmYWQ0MjEwZGQ1ZmI1YjQyODg4ZDRjYjdlYmM2YWY4OTBiZmFmYiBweTNrCis4MDM4MyAxNDliYWRmNzNiY2FkMTYzMjhlMTE2N2MxOWUxMDk1ZWEzOGQxYzAwIHJlbGVhc2UzMS1tYWludAorODAzODQgMmZlNDczOGVlYjIzNjE5ZTk4Y2U4ZjAwMDE0ZTI0YjllZGRlMjdhYiBweTNrCis4MDM4NSBiMDVkMDI1YmMwZGY2YWMwYmM3NWEyZTBiZWQ4MTEzZTM1ZGFiYzYyIHJlbGVhc2UzMS1tYWludAorODAzODYgYmExMmY5MjEzNGJhNDkxOTVlMDFlNTQ2ZjlhN2VjNjFiZTIyYWI2NSBhc3luY29yZS10ZXN0cy1pc3N1ZTg0OTAKKzgwMzg4IGE4ZTA5M2EyNDA5NDkyNDliMTRkMGMxMzkzYTMwNjJiZjk5MDNiYWQgbGVnYWN5LXRydW5rCis4MDM4OSBlZGM3ZjMzMDUxMDUwZTRmMzc2YTg4YjFmMWQxMjdiYmM3MWIzNzU0IHJlbGVhc2UyNi1tYWludAorODAzOTAgNDczODAxYWU5ZThlZDc4OTMwNTNhYTFkNDMxNWUyNWRiYjA1ODRmMyBweTNrCis4MDM5MSA1NDUyNmVlYzhiYzZlNjQ3MDY2MWU4YmNkOGIyNTZkODkyZGIyZjJlIHJlbGVhc2UzMS1tYWludAorODAzOTIgYzlhMzJlZGQyYmE3Yzg5NDI2MTU2YWU1ODI2NTQ2YzFhY2QyNDgwNCBsZWdhY3ktdHJ1bmsKKzgwMzkzIDhkZDEyNDEyMzgwMTBjODUwNmRkNzFkMDI5Mjg5NTg1NmYyMWU0ZDggcHkzay1qaXQKKzgwMzk0IDFkMThkNzNmMjliNTNkMTc5YTY1MDllOWRmMTY5MTMxNmQzMDU1NjEgcHkzaworODAzOTUgOTIyOGM2YWM2Y2M2NzhlM2I4NmU2Mjk3Mzc5OTlhYzQ0YzkwZWFiZSBweTNrLWNkZWNpbWFsCis4MDM5NiA1YTUyNGM2ZDRlODM1MjM0Njk5NDE1OTg2NDkxODllZmI0NDZhMWY5IGxlZ2FjeS10cnVuaworODAzOTcgM2RkNjA2MzUzYWI0M2I5NjAzYzE1MGZlYjFlZWRiZmZjNjI4Y2E2ZCBsZWdhY3ktdHJ1bmsKKzgwMzk4IDA1MmQ0ODUxNWM3NjJmZTc3YzMzN2Q0ODg3MjM3MTNkNDI1NWJiZmIgcHkzay1jZGVjaW1hbAorODAzOTkgYjRlZDE3MjdkZjc0Y2MwY2MzYzBhMWMyNjU4ODk3N2E5MGY2ZjNjZSBweTNrLWNkZWNpbWFsCis4MDQwMSA1NjI5Njc4ODFkYzUyNWRlYmMyYTAxYmZhNDdkM2NlM2NmMGRiZWIzIHB5M2sKKzgwNDAyIGU2NTY0ZGEwMTcxOGE1YjI1ZmQ0OTcxOWVmYzhmNzI4NjJiZmMyMDMgcHkzaworODA0MDMgZDJjNTEyZDBlY2I2MmEzNDhjMmU5YjIzNjczM2RjY2FlMjNjZTgyZiByZWxlYXNlMzEtbWFpbnQKKzgwNDA0IDg2ZmFkYWViY2Y2NmQzYTAxMDc3MDI2OWYzZDJhYThkYWJkYjFmZjYgcHkzaworODA0MDUgYzZiNGY0ZjJiOWE4YjcwNDA2YjdlMDkzNDg1YzU3NTVmMWRlZTc0ZSByZWxlYXNlMzEtbWFpbnQKKzgwNDA4IDIyNTgyNTBjMWZiYjNlN2MxNWYyYjM1NTc5NTI3Y2ZkMmFhOTgzMmUgcHkzaworODA0MDkgZDQyNmJiZmQ1YmQ3OTJlYjkxODNmNTNiNzM4NzQ0N2RhN2U2MzM2NiBweTNrCis4MDQxMCBmZmY4MWQ3MjYyOGUzZmZhMTBiNWY4NDAyZTViMDAxYzJmYzNiOWIxIHJlbGVhc2UzMS1tYWludAorODA0MTEgZTc2MDZjMTU0MWY4YjQ5ZjIwYmEwOTU4ZWVjMDNiN2UwNjMyNDRlOSBsZWdhY3ktdHJ1bmsKKzgwNDEyIGEwNTllYTk2NmI4Y2ZkMTU3OGYyZTM0ZTExMDM1MGI4MTNiNjNiNzMgbGVnYWN5LXRydW5rCis4MDQxMyA4NDI4ZWFhMmQzYWQxMDFjYTNiMjRmYzVlNGZmNmIxYjIyMGRlNDFmIHB5M2sKKzgwNDE0IDgxZWYxZTg0NTJmYjA1OWQ5MTVhYjc1MWFkNTA1M2E5ZWUzMzkzZWEgcmVsZWFzZTMxLW1haW50Cis4MDQxNSA2MTJlODZhYjA1ZjEzMWI2YTAwMjk3ODhhNzNkNjk1Zjk4MTA1MGNhIGFzeW5jb3JlLXRlc3RzLWlzc3VlODQ5MAorODA0MTYgNTJjZDdlMDQwZmVmMGQxNjJiODc3MDdiNGFmYjdiZTk0ZGU3ZTM1NiBweTNrCis4MDQxNyA2MTBhOGVmYTg4ZGI2NTYxYjM3OGI3MjFmM2Q3ZGY5Yzc4ZDdlZjc5IHJlbGVhc2UzMS1tYWludAorODA0MTkgMGVjMTZkODMxOTkwNTg0ZmIzMjdlMGE4ODU5YzgyNDZjMDM3NDcyZSByZWxlYXNlMjYtbWFpbnQKKzgwNDIwIGZjOTc3ODRlNWNjMjFmMjllNTY2YjYxY2IxMzBjNzg3Y2IxNTBlNzIgcmVsZWFzZTMxLW1haW50Cis4MDQyMSBkYzhjOGQ1NDUwNGUxODQzNTczODBhY2YxNWVjNTg3YTMxYWIyY2MwIHB5M2sKKzgwNDIyIDY3YTYwNDgyOWM5NzBjN2JiNjFhYTQ5ODQyMTJhNDE2NWZiZGQ0OGIgcmVsZWFzZTMxLW1haW50Cis4MDQyMyAyYzMxZGFjNjk0ZmYwNDNjOGE3YzhjZTUxMzcwNDUxMWUwMmY3ODlmIGxlZ2FjeS10cnVuaworODA0MjQgZTc5YTZjODAyOTM0MTg5ZjY5YTc3M2ZiYjQzNWQyY2RhZjVlMjUzZiBweTNrCis4MDQyNSA3NGU0OWZiNWJhMTJiMmUzYWMzOWI4ZWI0Njg5YzQyMzFmZGNjNTdmIHJlbGVhc2UyNi1tYWludAorODA0MjYgODFhYTAwMjg0YmQyMTE5MDBjZWYwYzkwNjlmNjUxZjcyNWY1YjRiYSBweTNrCis4MDQyNyA1NGU1YWIyOWIzMGJmZjQzNjBmMmJmOTc1YjkxMDc0ZmYzZTU2MGFkIHJlbGVhc2UzMS1tYWludAorODA0MjggZDdjNzgzZWY0NTQ4NmZlYjg0Nzg5MGI0NzY3YTQ1NGE2MmM4NGM1YiBsZWdhY3ktdHJ1bmsKKzgwNDI5IDc2OTE4OTllMTg1ZjI3NzEzNjBlNmY2N2RiYzZlOThjNzkwMDMwOGIgcHkzaworODA0MzAgOTVjNWUwOTRiMzgwNjRkNTRlM2NlZTYyNDQ5MTYwZDdiMGI5ZTEwZiByZWxlYXNlMzEtbWFpbnQKKzgwNDMxIDA2OGEyZTcxNTdhY2VjYmQ2YzMxOTJiMjA4YWQ0Y2IwZmMxN2FjOWIgcmVsZWFzZTI2LW1haW50Cis4MDQzMiBjYTBjYmFjN2I4OTgxY2RmMGFhMzExYWM2ZTk4OGRkNWUzYjdmZDA4IGxlZ2FjeS10cnVuaworODA0MzMgNTg3ZGYwZDc0Nzg1MzNhOGQwOWZkOGJjZDA1NTMzYjlkYWYzMDRhNSBsZWdhY3ktdHJ1bmsKKzgwNDM0IDY3MmFkZmM1ZGI0Nzk5YmJjNzQ4MzY1YmQ4MjQ1Y2YwZjFkNDM2MGUgbGVnYWN5LXRydW5rCis4MDQzNSA2NWQ2YzdiYzVkNWE0NjQ3YjdiNmMwYzQ0NmEzZDA2Mjg0MzNhYzA3IHJlbGVhc2UyNi1tYWludAorODA0MzYgODA4MTBkODIzMThmZDA3M2E0OWYyMDQ2MDgxYThmZjg5YzA2NGI2ZSBweTNrCis4MDQzNyBkODFlZmYxMThkODE4ZWY2MWY4MjNkOWFjOTY1YWNhODMzMDI4ODA5IHJlbGVhc2UzMS1tYWludAorODA0MzggNWU2OTUxOWM0ZTM3ZGIyZTE4YjYwNDQ0Njc2NjY2M2E5NTg1MGU1NSByZWxlYXNlMjYtbWFpbnQKKzgwNDM5IDNiODM0MWQwNTIxNmVjODhmOTU4YTZkNmNiODc3NTlkYWYwZTViYzcgbGVnYWN5LXRydW5rCis4MDQ0MCAyYTc2OGVhMDYwMjMwZTVjODRhODE0ZThiMTk2Yjc4OWFlMjQ5NzAwIHJlbGVhc2UyNi1tYWludAorODA0NDEgNjQ0NjFmNjhhMTBlMDFhYmZhYjFmNTJkNzMzYzkyNzVlYmJjZjg2MSBweTNrCis4MDQ0MiA5MWY5MTY4YWFkZDBlMzNmNDgyYmM5NTNiNjFiNTNmMzkxYzI0YWEzIHJlbGVhc2UzMS1tYWludAorODA0NDMgZjRmZTUzZjg2NjI3NTY1MmVjMTg2NjFhOWMzYmNjZDEyMjg5OGFlZCBsZWdhY3ktdHJ1bmsKKzgwNDQ0IGU5ZDg4OGMwOGJmOGExNmE2N2NkNDFmNWZjODNkMGI4ZTBlNjc3MTUgcHkzaworODA0NDUgYzM5YWNiYjYzZWMzZjUxYzlkY2YzYWUwMTljYTE3MzJiN2M2MzVkMCBsZWdhY3ktdHJ1bmsKKzgwNDQ2IDI0ZmY4NzQwZTQ4MTBiYzc2MjVlYThmNjk3MTJhNDhlMDExNzE1NjQgcmVsZWFzZTI2LW1haW50Cis4MDQ0NyAzYTlhMjJkN2IyMmU4MTI2ZWMzY2JlOTUxNDI4Y2YwNTI5OTAwNTE5IHB5M2sKKzgwNDQ4IDdiZDM4NDcyZWEyMTIyNTEwM2VmNGYxMTg3YzIwNDk2YzI5MDdmY2UgcmVsZWFzZTMxLW1haW50Cis4MDQ0OSBlNGMxZWJjYjQ2MDQ4ZTE3ZmNmMzdhOWE2ZGFiOGFiZTJiMDIwMjUwIHB5M2sKKzgwNDUwIDc5MTI4ZWZlOGE5OTNhMWM2N2E1NTcxMDc0MmJjMGQ2YWIzNzI4MzIgcHkzaworODA0NTEgYTA5ZDdmNDE0Y2QxNWMxNjI3ZDYxMTI2MzlhZWEyMmYzZTY1ZTA2MSBsZWdhY3ktdHJ1bmsKKzgwNDUyIDc2YTA1MmVlZGVlNjdmNDE5NWMxYmVkMjNmOGFlODllNzg5ZWNlYzggbGVnYWN5LXRydW5rCis4MDQ1MyBjZTQ5MTZjYTA2ZGQwMzdjYTEyMjAxZTU4YjkzNmZkZGZkNDE3YTcyIHJlbGVhc2UyNi1tYWludAorODA0NTQgYTUxYWQ4ZjA5YjZmN2YxNmYxNDkxMzQ0NTNjNDM2YTY4NTZjNGNmZSBweTNrCis4MDQ1NSA1ZWQzNGYzZjZjMzU1MWMyNTI1YmE5MTI2NzllMzI1OGM2OTg5ODU1IHJlbGVhc2UzMS1tYWludAorODA0NTYgYTkxOTYxMTlkMzM1YjJlMGMyMWNmMzE2NWEwMDhlMGFiZWU2MDc3OSBweTNrCis4MDQ1NyAwZmY4YWRkZTYwOWNmOWUxNzdlOGQ1MGFiYmYwMjFlNmE0ZjFjNTE1IHJlbGVhc2UzMS1tYWludAorODA0NTggNmFmZjliMGEyODhkNWY0NTUwNDQyMDZhMjU2ODIxYWU5MjQ0MGM0NiBsZWdhY3ktdHJ1bmsKKzgwNDU5IDdlMjIyOTg3NzQ1OWZlMzUyMjU4M2NlMjhmOTIyZmQ5ZDc2Nzk1MjkgcHkzaworODA0NjAgZDVlY2U0OGUxNjA2ZGZlZTYyYjA2OThlNzJmMjI3MDYwMDQ4OTI5ZiBsZWdhY3ktdHJ1bmsKKzgwNDYxIDkyMGYzNDEwNmMzNDRjNmY5MmUwN2U4MzU1OWQ0NWI1NzdlYmY2MDMgbGVnYWN5LXRydW5rCis4MDQ2MiA0Njk4OWNjYzY1Mjk1OWNkZmZmN2MxY2U2N2Y5M2JiY2NmYmYwMDZmIHJlbGVhc2UyNi1tYWludAorODA0NjMgMGY4N2JlNjMzM2RhMzcwMDhmZTExMmI2NzZhYTdlYzY2ODFjYzJmZiBweTNrCis4MDQ2NCBkMDUzYmIzZDc4NDJjYmExZmM0NTIzMDJjOTMzNjBhYWQ3ZjM5OWZlIHJlbGVhc2UzMS1tYWludAorODA0NjUgZWFmNTYyZjU4MDdkZTE5MWQ0MTE3M2E4YTUxYjc1MzY1MWFlMTZmMyBsZWdhY3ktdHJ1bmsKKzgwNDY2IDA2MzIyYWJhODRmYWY1NzdiMjI1ZTZlYzc0ZGYzNjExNzU4Nzg3NDQgbGVnYWN5LXRydW5rCis4MDQ2NyA5ODA4ZGI5Nzk4NTQxMTQ5MGE1MTU2MDA2NmFhNWE2YzBmZDllNjE5IGxlZ2FjeS10cnVuaworODA0NjggYmViY2MyMjRjN2MyYzNiZTcyOTc3ODhjZjM0NDVmZWYyM2Y1ZDgwYiBsZWdhY3ktdHJ1bmsKKzgwNDY5IDVlMmQ2MTc1MWQ5ODA5ZjMyNTVhYmQ1MDYxYTM1Y2ZmZjBhNDgxZmEgbGVnYWN5LXRydW5rCis4MDQ3MCAwMzYzYzY5N2UwZGEzMDgwOGM4MDkxYWFlYTRmMzFmZDMyYWUxZjU3IGxlZ2FjeS10cnVuaworODA0NzEgYzJmZmQyMGQ2Y2Y4OTZlOWZjMGE2NGNjYzIwY2U5ZGQ5N2RmODk0YSByZWxlYXNlMjYtbWFpbnQKKzgwNDcyIGVkZTE2YTI3OTJiNGM4NTk3MzNmZTM3YTk0ZDg5OWY3MGYyYzBkZTEgcHkzaworODA0NzMgMDNmMzFmN2U3NjI3NmFkYjkzMjQ0NzhhNTAzZDUxMDRiNGU2YzEyYSByZWxlYXNlMzEtbWFpbnQKKzgwNDc0IGQyM2Y2MjZhNzM3OTkxYWEyNDhiYjE1MDBjZTRiZTdmYzg5Yzg4ZWEgcHkzaworODA0NzUgZmUwYzQ3ZGQ1Zjg0ZjE0MGE2NzdiN2FmMGE5OTY4NDQ2ZTBiMTVmZSBweTNrCis4MDQ3NiA2ZmIzODQ3ZDM5ZWYzOWEwNTc4NTJmYzFjYzFhMmI1MmQ5ZmM0OTEwIGxlZ2FjeS10cnVuaworODA0NzcgYzM2YzgzNmZmNDY1MTI2NWNlMzRhZWJjZWQ3YzYzOTAxYmM4ZTZiZSBweTNrCis4MDQ3OCBiOWYyMTAyYWQ1ZjAyNjg1ZjZjZTZmM2Q0YTdmNGQ0NDhiMmYzMTM3IHB5M2sKKzgwNDc5IGVkZmQwZTFiOTc1NGQ3ZTVkNTkyMTdjNzRlMDJmNjVlNDQ1ODMwNWYgcHkzaworODA0ODAgNWFjMGFhZTI4ZjRjMDIyZGUyYTdiYmZlOWVkZDUxOTNmMTc4NTgyZSBsZWdhY3ktdHJ1bmsKKzgwNDgxIDk2Y2E1MGNiMjYxMzU5M2FmYjIzZDdlYTgxYjFkNTlhMTU2YmYwODggcHkzaworODA0ODIgZDgwNGRkOTU3MzdjM2FmM2UxZThkZTZiYzU3YWYwMjcxZTMyODU2MSByZWxlYXNlMjYtbWFpbnQKKzgwNDgzIGMxZmI3ZDVlZTQzNzNiOTRhOTExY2QzZGIwODRkMjRmZDBhZDg4OWMgcHkzaworODA0ODQgNWYxOTYyMjIwNzkyODgwOWNiYjY0NzI3NzM2NTFhMDNkMDJhOTU2NiBsZWdhY3ktdHJ1bmsKKzgwNDg1IGU5ODI2NmM1MWEwZTA4ZTFhZWRjMTFkZThkNWU4NGQyNTJiNDc4ZWYgcHkzaworODA0ODYgZWE0M2Y3ZjZlODRjZjk1ZjdjOTQ1N2JjYmExMWU4MzNiYWJkYTRjNCByZWxlYXNlMjYtbWFpbnQKKzgwNDg3IGY1MjNlNDBkZjljNTY4ZjdiZDc0MWNiZmM2ZDk3ZjFlZWRmMDljNjQgcHkzaworODA0ODggYzAyMTQ0YjFjOThjYTBhMWYyNTc2YmQ0ZGU4ZWZiNjY3OGM2NjdjOCByZWxlYXNlMjYtbWFpbnQKKzgwNDg5IDY1NDhjMjM2NzZhNjg3YWEyZGVjYTNmZjFmZWRlM2EyODU1OTk1ZTQgcHkzaworODA0OTAgZWYwYTg5ODFjMzcwMzFjMGQ1ZjQwODU3YTk5YzJlZjk1YmRlNWYwMiByZWxlYXNlMzEtbWFpbnQKKzgwNDkxIDkxNjUyMzJlNmQxYWU0NGM3MDNjNmM3MWM1ODYwMDFlMjMwMmNiMDIgcmVsZWFzZTMxLW1haW50Cis4MDQ5MiA4YzcxNzkxMjU4MDMyNGU3ZmQxMTM1YTliNjI3M2U0MzYwMDQ5ZjRiIGxlZ2FjeS10cnVuaworODA0OTMgMmEwMzBjMWNlOTcyZDU4NzAzNzAzYTk2ZjY0ZDg2MzViYWY2Y2JlMSBweTNrCis4MDQ5NCBiNzE4MjYyNDlmYmUxM2M3YTM0ZGZjMWRhNGU1ZjBlZmFmNzNiYzk0IHJlbGVhc2UzMS1tYWludAorODA0OTUgYWE2ODU0YTZmNmQxZDA4NGFlMGI1ZjdmNjE0NWI4NGJkZWM1YTJmNCByZWxlYXNlMzEtbWFpbnQKKzgwNDk2IGQyYTRlOTZiNTRhNmNmZTU3OWNkNDI1MTM2MGMxMjNhMThmODk0ZTMgbGVnYWN5LXRydW5rCis4MDQ5NyBhYjhmZTk0NzczMjM0M2QyZTQ3N2JhNTY2NWU0ZGRmNGIzYmQyNWNlIHB5M2sKKzgwNTAxIGVmZDcwNTUzYTA5ODkyMzJmZjFmNmI0N2JkZjNiNTNjMDBmNTdjNmYgcHkzaworODA1MDIgYzAzYTNjNmE0NTYyNjBiNmY4YzA1NWQ5ZjQxZDE0YTk1Y2Q4ODg5YyBweTNrCis4MDUwMyBkNjNiYjM1ZGUyZjAwYWEzODNiMGUzYTRiNGM5OWMyMzE4NDk4MjAxIGxlZ2FjeS10cnVuaworODA1MDQgMDQ4ZjZhOTJiZGUzYTZiOGQ3NTNiMGMxYTFjODQ1ZTk0YTg3MzM1MSByZWxlYXNlMjYtbWFpbnQKKzgwNTA1IDEwZGFmNjM0ZTI0ZjQ4MjY5OGFjZjc5NGU3NDZlZGVkMzM5NjY0NWMgcHkzaworODA1MDYgY2YyMDRhNzM3ODNkODVkYmMwNGRiNGJjOGU1OWIxZWFlNDU2N2IzNyByZWxlYXNlMzEtbWFpbnQKKzgwNTA3IDdmYzIxMWRmM2Q1YjIwNTA0YTRkYWIyMmRmOWYxZTY4NWUyMjhhY2IgbGVnYWN5LXRydW5rCis4MDUwOCA4NjAwNzM1MDVhY2EzMjlkNDBiYzlmYTBlYmUxMTQzMGRhYjAzYjlkIHJlbGVhc2UyNi1tYWludAorODA1MDkgM2ZlOGNmNzg3MzUzMDM3NDg0ZjNkNmNkMTBkNmIwYTk1NmZhYTU2ZCBweTNrCis4MDUxMCBiODc3ZDJkMDRjMTQ2NzViMTIwZTg0ZmRiNDcxN2JiYjAwNmQ2MjU5IHJlbGVhc2UzMS1tYWludAorODA1MTIgMzA5MDM1YzIyZGNkY2NmYjZiY2RlYzZiMDYyNWFkNWYzZmIwZjQ4MSBsZWdhY3ktdHJ1bmsKKzgwNTE1IDNiMjQ0ZWIyMGZhMTNiMThmMTUxM2E0YTcwMWJjZmUzZmRmMDk4ODIgcHkzaworODA1MTYgZDU1OTBhOTg3Y2IwNmUwYzIxNDEzNDczNWM5NTg0MjNhNjQ0YzlmYSByZWxlYXNlMzEtbWFpbnQKKzgwNTE3IGRkNDY2NDk0NTQ2ZGRlMzcyNmFjNWQ4NGZjMmQ2ZGQ0ZDRkZWEwMjkgcHkzaworODA1MTggMTFjOWFkYWVmOTZiMGJjMzYxYWQ5NWFjNmM4YmQwNzhjNjM5NTBiNCByZWxlYXNlMzEtbWFpbnQKKzgwNTE5IDE1NzFmMDlmNGEyNzc1ZGQzODZhNjRlMDQ0NjYyMWVlMjFkZjczZTcgbGVnYWN5LXRydW5rCis4MDUyMCA3ODRjZmJhYTIyOWYxNjBjZGI2YTBmZmFlOTkzNmY2ZmQ2NDM1YmU4IHB5M2sKKzgwNTIxIDgzYjkzMDM2ZWMzZDdjNjViZGEzOTY3YzM0NDdjNzc2MTM1MTVlN2EgcHkzaworODA1MjIgMThiMmRiYmJjNWIyNTIzNzI1YzAyYThiMWUwMGRkMmUyZmRlYmU3YyBsZWdhY3ktdHJ1bmsKKzgwNTIzIGMwN2QyZTVhY2Y2NWMxZjM2YWVkNjgwNGJlYjUxNzE1MDllNGMwMjggcmVsZWFzZTI2LW1haW50Cis4MDUyNCAyMmRlNmM3MWNkYjQxNTIxNmVkZjdmM2YzMzQ4YjFkYzFjMTZiNTU0IHB5M2sKKzgwNTI1IDQ2YWFlNDA2NzQyZDlmMTYzZmJjYjRiNGMzZGZjMjdkNTEwOGEzNTMgcmVsZWFzZTMxLW1haW50Cis4MDUyNiA3MTIzMDE1MDY3MzBkNzQyMTNmMGQ0ZDQyZDBjODUzODUzMzZlZDAxIGxlZ2FjeS10cnVuaworODA1MjcgNmRhOWVhZmIxZGFhZGJlZGJjMDMwZDE3NWNjZTBhNmIwNDE0NjFhZSByZWxlYXNlMjYtbWFpbnQKKzgwNTI4IGUyNWM3OGE4MmEwODNiOGZiOTk2ZTFlNTE4ZWNiMjU5NmUyNWVmM2MgcHkzaworODA1MjkgZDQ0N2M2MGZiNGQ4ODZjNGNkNzczZThhYzUwMzM4ZjI0NWExNTEwNyBsZWdhY3ktdHJ1bmsKKzgwNTMwIDFlMWIyMzUxY2YxMmZiNDU4MmM5MzdlYTJjN2ZlOTk4YzRlZTljMzYgcmVsZWFzZTMxLW1haW50Cis4MDUzMSBmZmU5OWY1MjJkODYzYmNhOWE0MWJhZDk3NjJmYzJhZTVjNDA0MWM3IHJlbGVhc2UyNi1tYWludAorODA1MzIgZDYyNzA4YWUyNmE1NTM2YzBhMDU3Nzc1MzNlZDIzMzJhYjAyMmZiNCBweTNrCis4MDUzMyBjODY5NDA4ZDRkM2VkZGMxODQwOTY0ZjE3YTIwMzdiZDViYjRjYzY0IHJlbGVhc2UzMS1tYWludAorODA1MzQgNjFhZTY2NGRlNTZiYTA1YTE3NDk2MjU2MDc2YmY5YThlMDAyMjczOCBsZWdhY3ktdHJ1bmsKKzgwNTM1IDk2OWVmNWViODBjNDM1MzI3MzcwNzY0YmE4ZDkwMmQwNTgwZTY5NmEgcmVsZWFzZTI2LW1haW50Cis4MDUzNiBmMTBhMzc4NzhkODQyZDI3MjE5YWVmNmYxYTE1ZTQyNDIxMWJhNmMwIHB5M2sKKzgwNTM3IDcxMTUyY2U3MDFlYTVkNDJmODY3NzViOGZhODVhNDlhMmIwMWFjMTYgcmVsZWFzZTMxLW1haW50Cis4MDUzOCA1YzM4MmJmYzAxNWE2NjRkYjk4ZThmZDE3Njc2MjYwNWZkODJmNDViIHJlbGVhc2UyNi1tYWludAorODA1MzkgNmE5MGRjOTY3ZmVkMDBjMTM3NmI4MDFiZDFkYmVkODJkNjNhYmIzZSByZWxlYXNlMzEtbWFpbnQKKzgwNTQwIDQ0OGVmOTAwMDgxY2UyYzg4NmMzODZmODdjOWY5M2FjYjg1MDRhN2YgbGVnYWN5LXRydW5rCis4MDU0MSBlZWY0Yjk1NGQ2NDQzOTBlNDdmYTliMmMyNWQzY2FjOGRiN2M0ZTNhIHJlbGVhc2UyNi1tYWludAorODA1NDIgY2FmZWY3NDU0ZGY5ZWNhZTY5Y2IxZTM5ZjUzYWMzY2YyZDZhYmZjYyBweTNrCis4MDU0MyAxNjRiM2FjYWQ5ZGFjYTEzZTAwZjlkMDllMmIyOGE3ZWUzZDJkNWRjIHJlbGVhc2UzMS1tYWludAorODA1NDQgYWRjMDc5N2JhOTIxMmYzMWVkZDcxNzJmOTg4Y2FiZDNlMzk0NTc3YSBsZWdhY3ktdHJ1bmsKKzgwNTQ1IDM2OTFkNzViMDYyNjM4NDE2NGVkODMzMjEyNjg3NTQwMjdiNWNlMzAgcHkzaworODA1NDYgNmVjYjNjODNmZTgxYmYwNTYyMWQxZWRlMzQ0NDllNzQyZDM4MzljOCBsZWdhY3ktdHJ1bmsKKzgwNTQ3IDE3Y2MyZjUzMjU2MzEzYWI5ZDUzNDhlMDAyYjg4YjE3ZGQwMTMxZmQgbGVnYWN5LXRydW5rCis4MDU0OCBjY2IxZDVlZjA0ZDZhOTIyY2RmM2M1ODc5YzE1NzQ2MzIzMWE3Zjg5IGxlZ2FjeS10cnVuaworODA1NDkgYWU2ZjU4NjViMzg2MDQxZDFkOGIwZjRhMzQ4YTdkM2I2MGY0ZjEzNiBsZWdhY3ktdHJ1bmsKKzgwNTUwIDFhYjI0OTQxYzk5NmFmZTk3MDllZTQ3NGNiMjFkMTFmOGVhZDY4ZGEgcHkzaworODA1NTEgM2I2OTc5MDU1ZjVhZTE4OTQ3NTNiNTE5NTc0OThhZjNjYThhMzVmMSBweTNrCis4MDU1MiA2ZDlkODU0NTg2MWVlYTRiNGY5M2U2MTIzOGVhYmE5NDljMmE4NjVhIGxlZ2FjeS10cnVuaworODA1NTMgMTM3OTE2NTQzZWZhZTc4ODI2YTUzZjBkNDMyOTkyMTc5NzRhNWNiYiBsZWdhY3ktdHJ1bmsKKzgwNTU0IGM3YTU4MjJiZjI5NDg3MzYzOGUyNzkxZmQ1NDMzMTg2MWQzMTAxYTkgbGVnYWN5LXRydW5rCis4MDU1NSAwN2NlNWFmMzE3ZWUyYjNiZTI5NmM4MWY0MTM2NGRiOWZkNzExOGQzIGxlZ2FjeS10cnVuaworODA1NTYgZmIxMGVmMGVmYTIzNTUyYmU3ZWZkYjkzMjc5NjBjNmU2MGVlNWQ3NyBsZWdhY3ktdHJ1bmsKKzgwNTU3IGZkM2FiZjgyYWM5NjA1Y2EyOGFjYzhhMDUxZmQzMzIzZmUyZDJlODMgbGVnYWN5LXRydW5rCis4MDU1OCAzMTZiNTcwMTdkMGYyNTc0YzIwMGI5ZmQwNDcxOGJjZWFhYjJmZmY2IHJlbGVhc2UyNi1tYWludAorODA1NTkgOGM2NDY5NjdiYTZiN2YzOTQ4NDFlNjMwNmY2NzQ1OGNmZjMyYjk3ZSBweTNrCis4MDU2MCA4Mjc5MjBjNTQ2YWY1ODA0ZjY1N2NiMmQzMmNkZjlhMGQ0YzhhOWM5IHJlbGVhc2UzMS1tYWludAorODA1NjEgNGE2OWQzMmExN2I5MDc2ZTcyNjA4N2M3MmQzOTE2YzU0MmQxMzM1MiBsZWdhY3ktdHJ1bmsKKzgwNTYyIDQ1NzIxYjljYTIyMDQxNDQ1NDVlNzkwNTBjNmVlMGE5ZTBhZDBkMTMgcHkzaworODA1NjMgODFkNzAzM2Q5NWEzNWU0M2E4MDExYmU4NzEzN2M2MjRkNGE5YWEyMSByZWxlYXNlMjYtbWFpbnQKKzgwNTY0IGI4OGFhMTNjZWFmMjU0MWE0NmFkMTQ4NzQ5ODc0NWZlOGUzZjYzMzYgbGVnYWN5LXRydW5rCis4MDU2NSA5NjdmN2JjMmRjYzg2MzU0MWYxMmQ3NmEzYWUzYjkwNGJjZDcyYTEwIGxlZ2FjeS10cnVuaworODA1NjYgODJkNDg3MjQxMzA2N2I5NjA0NDkzMWY1NGQ2MjBlNTIyYjdkNTA0MCBsZWdhY3ktdHJ1bmsKKzgwNTY3IGIwZjM0MmFiNTA5NTE4YTZjMDI1NmFiMWQ1NjA4M2ViODZjMjRlZTMgcmVsZWFzZTMxLW1haW50Cis4MDU2OCBmMDkwYmQ3MmFjZDgyYTYxMDQxMTlhZjYwZWEwOGY0ODk3MDczZmEwIGxlZ2FjeS10cnVuaworODA1NjkgMGRjMjExNWY2YmJlYWRmMDg3MjIyZDNiNTkyZGMzZTdhZDJlZTlkMiBsZWdhY3ktdHJ1bmsKKzgwNTcwIGJhZWZkN2I0MjVmMTc4MWNiNTE5ZWMzOTU5NzUyOGIyMGI2OGM2ZWEgbGVnYWN5LXRydW5rCis4MDU3MSAzYTA0ODQyMDAwMzQzOGY1NzZkMjA4NzhiMjIwOTZlYjIyZDQxNjUxIGxlZ2FjeS10cnVuaworODA1NzQgZTg0YTRjZGU3OWM3Y2EwYjYxM2IyYjQ3MzQ2ODhiOWY1MWQwYjcwNCBsZWdhY3ktdHJ1bmsKKzgwNTc1IGVjNzcxNWVhMmM3NTEyYmVkYzIyMzQ1NTI2OGMwMjc3NmYyYmI0ZDAgcmVsZWFzZTI2LW1haW50Cis4MDU3NiA2NWJlMWU2NzhlNjNlMjY4YzdmNmQwMzQxMjkwNzhjZmI2YjU3YTk1IHB5M2sKKzgwNTc3IGQ3NGVkN2UyMWU2MjkxYTlmZmVjOWEwYWQxOThhMjFiMDhkZWU0MDggcmVsZWFzZTMxLW1haW50Cis4MDU3OCA1MWUzMGI5MTZmYzQ5N2NmZWJhZWNlYTVkNjllYTdjZDdiODE5YmM4IGxlZ2FjeS10cnVuaworODA1NzkgMjIwZDQ3NjdmYTk3ODFiYmQ1Njk3OWVhZDE3ODMyM2RlZGRhMjE4OSBsZWdhY3ktdHJ1bmsKKzgwNTgwIDBiNWM0OGM3NjIyNDNlN2ZhYzU5NTdhMWJlYWQ3ZmJjYzU3NGE5YjUgbGVnYWN5LXRydW5rCis4MDU4MSBjOWU0MGNlZGM4YmMyNWZlZmNkOTZmMWJhZDhiYzc5ODc3MWY2NzM1IGxlZ2FjeS10cnVuaworODA1ODIgZmYxYTU5M2Y4ZDIzYzFmNzc4ODJjZGRhM2NlZWNkNDQxNTUyMTdmMyBweTNrCis4MDU4MyA1NzU0OGNjZTFlYTA1YWI2MTQ0NGE2N2Q0ZTNjNDg4ODdiZjhkZTQ2IGxlZ2FjeS10cnVuaworODA1ODQgMWUxY2M2NzJlYmRkMjc2NWYzYThmZDlmODFhYWU4ZDc5MGEyNTNlYSByZWxlYXNlMjYtbWFpbnQKKzgwNTg1IDA0YTE4ZTU5Y2MyYzQwNGQwMmQ0M2YwMzAyOTM0NGQyNTgzNDFmODMgcHkzaworODA1ODYgY2Q4OGY1ZmUyZDA2NTIzMDBkOTM4M2JlODZlMjg4NGM4ZGZkYTQ2MyByZWxlYXNlMzEtbWFpbnQKKzgwNTg3IGZkN2VjNjA3ZTEwMWE1OTQzYzJkNDlhMTcxOThlZjRhMzlmYzhlNzAgcHkzaworODA1ODggNjk1MGVhYjUxZmZlNjE3ZGEwMTM0Mjg3YzNhOGM1ZDA1MzBkOTMxYyByZWxlYXNlMzEtbWFpbnQKKzgwNTg5IGE0Mzc3NjU1M2FiNTMwNzgzY2I0Y2RjMTY3NzllZmNkNWU4ZjRiY2UgcHkzaworODA1OTAgMDVmZTEzN2I3ZWZmMDM1Njg2OGM1OTAwYzNhZDEwMzg0ODNlNDhmYSByZWxlYXNlMzEtbWFpbnQKKzgwNTkxIDcyMTY5MmVkNGE3Y2E5OWU5ZDk5ZGRlN2ExMWQ3Mzk3NmM5ODdiZTEgbGVnYWN5LXRydW5rCis4MDU5MiA5N2NlNmNlNmEyODk0OGJjNmY0NTVjODgzYmI2ZjZhMzU3MTFmNWY4IGxlZ2FjeS10cnVuaworODA1OTMgMGY2NWZiZTY2ZTNhM2JmOWE2OGFjNDg5MzY4YzYxOTYwODdhYzc0NCByZWxlYXNlMjYtbWFpbnQKKzgwNTk0IDU5YjJhZGI1MmIxNmIxODkzMjM0NjRkMjBmMjdkM2JmYzc1MzRjOTAgcHkzaworODA1OTUgZTdmMDVkYjVmM2IwMzI3NDQ2OGM4ZmVhZmJjNjYyMjJjMjNiYmIzNCByZWxlYXNlMzEtbWFpbnQKKzgwNTk2IDgwN2ZjYWM0ZjE3YjUzYTQ2YTYzYTFiMjNjMDUyMWEyZmRkZGM4OTUgbGVnYWN5LXRydW5rCis4MDU5NyBlYTgzYTYxZjY0MzBlMWE1ZTNiN2E2MGZlMzdmZTg4ZjVmMDIzOGQxIHJlbGVhc2UyNi1tYWludAorODA1OTggMGYzZjhiOWViNmZmOGRiMWRhOTc2MGM4OGVhZjM5ZDIyN2E4YzdiOSBweTNrCis4MDU5OSAxZDJiMzIyYzQ2YmUzNDVkMGZmYTdiMWI4ZTJjNzg0ODBmZTkzNmIwIHJlbGVhc2UzMS1tYWludAorODA2MDAgNDkzYmI0NTg1ZTM4MGYwOTkwYTVhMDUxNDczMmU4ZTg0OWM1YjZmNSBweTNrCis4MDYwMSBkOWFmYTVkMTIxZWE3YjY4OTU3OWIzMjZmOWNiYWEyYmE3YTViMDhmIHJlbGVhc2UzMS1tYWludAorODA2MDIgOTRlM2U5ODlhZTIzZjdkYzRiNzcyN2ExNzExN2I3OGViOTFkZGM1MiByZWxlYXNlMjYtbWFpbnQKKzgwNjAzIDE4NWRlMzFjOGE2YzlhOTQ2ZWIyOThkNDkyYjk1MTEwMmVjZmQ3NzYgcHkzaworODA2MDQgMDA3MzE5YTljODg4Y2ZkNjUwMGQzOTcxNWU0MmVmYjI5Y2UwZWQ2YSByZWxlYXNlMzEtbWFpbnQKKzgwNjA1IDVmODgzMDkzNWQ3NDQ0OTQyNmM4ZTQzM2EwMDk0M2JhN2JiODU2Y2QgbGVnYWN5LXRydW5rCis4MDYwNiA1OTNhMjI1NTAyNzU3ZDM5ZjU1ODNhNTE3YjdmYjAzNTlmNzE2ODViIGxlZ2FjeS10cnVuaworODA2MDcgMmQ1YzM0NWYzNGI5OWNjODczYWI4ZDliZDVmYjVjZDE3YzQwNjI4MSBsZWdhY3ktdHJ1bmsKKzgwNjA4IDAxYmRkNTNmNzQ4OTllZDhhNDE3MzY5NWExN2IzOThlNGUxMDg4ZjIgbGVnYWN5LXRydW5rCis4MDYwOSA4NDAwOTEzZmNjNTU1ZDY2NGEyZGYxNzE4NWRlZGEzYTcyM2I5YzdjIGxlZ2FjeS10cnVuaworODA2MTAgMzQzMWUxMzM5MTNjOWNmODRlOWM3NmYwN2Y2N2ZlNThiNWRkMWEwZCBsZWdhY3ktdHJ1bmsKKzgwNjExIDQ4NmZlODJiYWZiODRmNzg1ZmY4NTJiZDBjMTVmZTVkNjIxZjgwNjQgcmVsZWFzZTI2LW1haW50Cis4MDYxMiA3NzgxMjFiMjM4OGIzZDE1ZmQ3OTgyMjk4MDM5ZWYyOGJjZmFjMTYxIHB5M2sKKzgwNjEzIGU5MThiODRlZjk2OGNjODkwNTVmZjIyYWNjMDFiZjdmOTgyYzY1MjggcmVsZWFzZTMxLW1haW50Cis4MDYxNCA0YjU3MDE5MTUwYThiM2RjZWZjZWE3YzI2YjI1NTQ0ZTlhYjAyOTNhIHB5M2sKKzgwNjE1IDc3ZGRiOGQzYzQzMzU0ZDVlM2E5MDNjMDZmMDhjNTZlZTdlMTJkYmIgcmVsZWFzZTMxLW1haW50Cis4MDYxNiA0ZDk2MzRiODQ0OWJiOGQ0ODQzYTExMTgyNDIwMjM1YmRkYTJhZDU2IGxlZ2FjeS10cnVuaworODA2MTcgNmNkYTYwMWY0YzU4NTZmYTYyMjVhYmMxOWM3YWI3OTgwOGVhMDM1NCByZWxlYXNlMjYtbWFpbnQKKzgwNjE4IDllNTA1NzIwMTVhZDViMTkxNTU3NjhjYTc4ZWYwNTFkNDY4MTk1Y2UgcHkzaworODA2MTkgNDA1MjM3YjExMTA0MjUzODQxMDg1Yzc1M2M1YTM1ODY2NTVmYTQ2ZCByZWxlYXNlMzEtbWFpbnQKKzgwNjIwIGVjNmU5ZTBlMzE2ZDI4OWNkNTlkMjQwYjQ4MmY1YTczODRjYWI5OWUgbGVnYWN5LXRydW5rCis4MDYyMyA0N2ZjNmZlNWU0NTRmY2QxOGQ5NjM3YWMzZGM3OGFlODg3OTY1MTgwIHJlbGVhc2UyNi1tYWludAorODA2MjQgZmM4MjJhZjExYmJjNjhiNjgxYWFhYWM5ZDRmMDU0MGRkOGM0NDM3NyBweTNrCis4MDYyNSBkNjZkYjFiMjJkMTA5ODk0OTZhOTFiYzdjYjIwYTAxOTczZjBiNDY3IHJlbGVhc2UzMS1tYWludAorODA2MjYgNGRkZmI1ZGQ0YmI3OTRiYTYwZTg1NmVlYmMwYzg0ZTQ1YzQxOTZjYyBweTNrCis4MDYyNyBjNDgyYjQxYWU4NTU0ZmE0YzM3YzExMzM1YjNlMDhkMjIxYzY2MTlkIGxlZ2FjeS10cnVuaworODA2MjggMDZlMDExMGIwODIwOGI5MWNkYjRhM2ViMTIyMGE1ZTYwNmI5MjRlYSByZWxlYXNlMjYtbWFpbnQKKzgwNjI5IGY2MjcwMDI3ZTQ5OWYxOTZiMDBkNWM5ODM2ZThiZmJkZWM0YjNmYzYgcHkzaworODA2MzAgYWNlMzQ1Mzc3ODAwMGNjMDNkYjU2NWNmMjU0YTI4NTM0MGRhZjNmOCByZWxlYXNlMzEtbWFpbnQKKzgwNjMxIGM5MDg4MTkyN2JhZGE2ZDkwOWFjNWQ0ZmQyNWY1YWFkNzE3ODZlYjIgbGVnYWN5LXRydW5rCis4MDYzMiBiNmIzZTRmNzc3Yzk2ZTZiMzVhNzcyMjk0ZWM1OGFhMTQzZWQ5YzgwIHJlbGVhc2UyNi1tYWludAorODA2MzMgOWNjNjkzZjlhNWRlMDNkN2E2YWZkNGJlYTYzMWNjY2Q0M2Q4NmQyYSBweTNrCis4MDYzNCBmMzJiOGEzYWU5ZDYwMjk0ZTMxMGViZGQyODg0NGFkZjc2ZmY0NTkzIHJlbGVhc2UzMS1tYWludAorODA2NDAgMzZhNDE3OTgxMGYwYjY3MGZlNDc4MGM4OTE5ZDQ5MTQwZjIyMGNmYSBweTNrCis4MDY0MSA2OTkwNDliM2M3ZDcxM2YzODlmOGZiZDgzN2E5YzJmOGJkNWEyZGIxIHJlbGVhc2UzMS1tYWludAorODA2NDIgMmQyYTg1OGZlM2UxOTRjZjlkMDkzZmMzN2NiNTVjMTUwNGM5N2JmOSBsZWdhY3ktdHJ1bmsKKzgwNjQzIDdlMzYxYTZhMmFjODIyZTc1MTM5NjE4YjUyZjA3MWUzN2RhY2Q4YmIgbGVnYWN5LXRydW5rCis4MDY0NCBmZTVhMDA2YWY1MmJkZTcyY2YyODQwMWRmMjMxMjI1ZWU3ZmZjMWFjIGxlZ2FjeS10cnVuaworODA2NDUgOWZjZWNlNDA1ZTI5NTExZGI0OGNmNGY2ZDdmNDc3NWFmNDBiMjA5ZSBsZWdhY3ktdHJ1bmsKKzgwNjQ2IDVhNDg4NjViYmMxZTZiMDNjZDY5NTM0ZWZlNmE5NGQwZTFiYzcxOGUgbGVnYWN5LXRydW5rCis4MDY0NyBjMmUwYjkzZjg2OWY0MWNjNWE0NTU2Y2ZmMWYwYTVkOTk4NWJjZGM2IGxlZ2FjeS10cnVuaworODA2NDggYmZkMjU0MWQ4ZWM1YTM1MDk4MDIyOWExNDk2OGU2OTg0ZGYwNmEyNCBweTNrCis4MDY0OSAxMDIwNmNiMjNjODAyMWJmYjkzMzEzNmNhNzU5NjlkODRmNDcyODgwIGxlZ2FjeS10cnVuaworODA2NTAgNjIxZDJlOTg0ZDE4NzZkMDhkZGU2YmIwYjE4ODM3M2JkMmNlNmE2OSByZWxlYXNlMjYtbWFpbnQKKzgwNjUxIDJkM2FiYThjZjZhMzQ4YzY3YTI4OGJhNWIwZDE1NTYxMWIyMjNlYzcgbGVnYWN5LXRydW5rCis4MDY1MiAyYmRiOGViZmM0YTk1MjNkNTk1MWNkYzFiZTc1MDU3NTE5NWNkZjFiIGxlZ2FjeS10cnVuaworODA2NTMgMWI4OTQ1OTQ0OTBmYmUzOWYwZjJlNmQ2ZmQ1Zjg3MDllY2JiNjU4YiBsZWdhY3ktdHJ1bmsKKzgwNjU0IDdhMzVlMGI4YWUwOGM1YjUyNzQ0OGMxNTVhMDM2ZDY2YmQ1NTM2YmQgcmVsZWFzZTI2LW1haW50Cis4MDY1NSBlNDdhZWE4NmY3MTQzMzRlZmFhMTIwNGVkMTE1ZWEyYmYzZWVkZDNjIHB5M2sKKzgwNjU2IDA5MWQ5NzdjNGQzNzQzY2Q5NDdjMjExMDFkN2EyMGI0ZjI3MTVmZWEgcmVsZWFzZTMxLW1haW50Cis4MDY1NyBiYzYyMzBjNjZjMTQxZTBhYmJlMjExMzAwYzcwOTY3ZmQ0YzJmYzJmIGxlZ2FjeS10cnVuaworODA2NTggMDBhYzQ2ODhjZGNkMGYzZDMzZTI2OGYyMTIzNGNkNTA0N2MzYzk0OSByZWxlYXNlMjYtbWFpbnQKKzgwNjU5IDdhOWQxNzJhMTVlOTA5ZTFkNDNmNGIwNmM5NTg1NThlZGE1MGIxMjYgcHkzaworODA2NjAgYWY4MTA0MzFiZGFjOWYzMmE1ZDVjNWY1NTI2YWQzNGU1YjI2MDlhMSByZWxlYXNlMzEtbWFpbnQKKzgwNjYxIDU5MWRlNmM5ZmZlOTQ3NDhmNTRiZjE3NTNmYjE0OWZjZTk2YjExMGIgcHkzaworODA2NjIgNTFjZDUzZDNmNjAwYmZjNTU0NTQwOWMzNjcxNGU4Y2VmZDg1ZGUyOSByZWxlYXNlMzEtbWFpbnQKKzgwNjYzIDc3NDIzMDA3ODkyNmVmN2Y2ZTQzZDExOTFjMzI1MTg4NzNlOWI0Y2UgcHkzaworODA2NjQgYjI1ZTRiYTRhZjYxNmU5MzNhOTBlZjk3Njk1OTE0N2Y0YjE4MDI2MiByZWxlYXNlMzEtbWFpbnQKKzgwNjY1IDhmYzk4N2NhYzkxM2YyY2RhZDQ4MjRmYWE0NmRkMTk4Y2E1YWE0MzggbGVnYWN5LXRydW5rCis4MDY2NiAzZTQ1MTM5NDdjNTdiZjNiZGUxNzEzZTY3NjJkZTMzZGZhZjlhYjljIHB5M2sKKzgwNjY5IDNjNGNkN2RkZjFkMDE3NDY2NGIwZTg2MDU4MzdhMDU1NTU3YTE3MzMgbGVnYWN5LXRydW5rCis4MDY3MCAzZWI2ZWFkOTlhNjFhZDEyODBlMjg1ODQ0NDUyZjJhNTg1NDE1MWIyIHJlbGVhc2UyNi1tYWludAorODA2NzEgYzkwNjBjMWMxZjkwNTQyNjhkYmM4MjBkMjQ1OGIyMjk5NmMxOGI5ZCBweTNrCis4MDY3MiA4ZTM0ZDU5YmFkZjk4ZjdkNjJmYmM5Yjk0MmE4YjVkMjNhYWIxZWFlIHJlbGVhc2UzMS1tYWludAorODA2NzQgYWI2NDIzNzlkZGMwMjk0NTZhMmFjODAxZTBhNGVlMWYzOTY2MWRmMiBsZWdhY3ktdHJ1bmsKKzgwNjc1IGFiZmM3ZWQzNTVlNGUxMTJlZmJmMzE1YTQxZGI5Y2RjOTcwMDk1NDUgbGVnYWN5LXRydW5rCis4MDY3NiA1YjZhN2YyYTA1YzZkMTZkMjU5MTQ5Y2UzOWI0ZTMwMDI1MmQ2YTFjIHJlbGVhc2UyNi1tYWludAorODA2NzcgNTVlMGVjY2M3ZjQ2ZjM0N2RmNDAwZjNhNDgyMjFlNjcyN2E0ZTcwMiBweTNrCis4MDY3OCA1MmEzYWI1ZThlOGNmNjU5ZDcwMDliMWFkZTYxMmM2YmM2ZWYzNjZjIHJlbGVhc2UzMS1tYWludAorODA2ODEgM2ViYWMwZTQ2MGUwMzllMzk4NGM2OTQwODM3ZGY1N2Q2ZmMxNGJmZSBsZWdhY3ktdHJ1bmsKKzgwNjgyIDI0NWU0MzNkNjBlYjVkYzUzZTExZDNmMWJmNWY4YTg0ZjQ0NWIxNWQgcmVsZWFzZTI2LW1haW50Cis4MDY4MyAxOTMwNGQ4MjNjODc0N2MwOTdhNDVhMTA3MDBiYzAwNTdiNzg5NjNkIHB5M2sKKzgwNjg0IDgyZGEyOTBmZjcyMjNlNmJiYWQxNjNjNTY5ODJjNmVkZGU2MjE4MmQgbGVnYWN5LXRydW5rCis4MDY4NSAyZGI0YjMwMGE0MjA4NTY0MmM1NWQ4NzVmYjliZTI2MGRjMWM4ZmFkIGxlZ2FjeS10cnVuaworODA2ODYgNThiZTNhZjEzMGUyNmE5ZWI5NGUzNDg3YmY1NTVhMDA3N2U2NGFhNCBsZWdhY3ktdHJ1bmsKKzgwNjg3IGY4OWJhMTBmOTczNDk1OTllNzBiYjkwYzJhNzFmZjljYTk5YzJmOWYgc2lnbmFsZmQtaXNzdWU4NDA3Cis4MDY4OCBlMjhmZWRmMzYzNTk2OTRkMzA5ODc2NGQzMDc5ZDcyODk4MTIzNmZhIHB5M2sKKzgwNjg5IDIxMzU1ZGFhZjIzYTQ2ZGI5NzZjMjkxNDI4NmZiNjgzNzFhMDhmMTkgcmVsZWFzZTMxLW1haW50Cis4MDY5MCA3YjMwN2EzMDI3NDQ3NThkMjBlMjAyMjEwMmZiMDM0NjVhMjczYzgwIGxlZ2FjeS10cnVuaworODA2OTEgZjBlMjFhYzc5NWY0NzVjMzg5NjhkMzU2ZTA3ODJjMGI0OGFmZDE1NyByZWxlYXNlMjYtbWFpbnQKKzgwNjkyIGZkYTFkZGFlMDQ5YzY3NmVhMTQ0NmVlNWNiZDhkYjg4ZDQwZjA0ZDkgcHkzaworODA2OTMgNDY4NTcwOWZhYjNlMTM3NzA2NTExNzBhZWJkMWYwZWRhNTM0ZmY5MiByZWxlYXNlMzEtbWFpbnQKKzgwNjk0IDlmNGNhMDA2MTBlMzM4YjEwYzRjYWQ0OThlZjY3YjIwOTE3MWE0YWUgcHkzaworODA2OTUgZmQyNmViOWZiMGY5MmE0YTM5YTk0MmExYjQ3YjM0M2Y4ZjY2NDFiZCBsZWdhY3ktdHJ1bmsKKzgwNjk2IDk0YjUyZTVjYmUyOTQzYmViNGRhNTYxMzI4NmNlOWQwZDgwYjA5YWQgcmVsZWFzZTI2LW1haW50Cis4MDY5NyBhYmYyMjAxZGMzN2NiZWYxYzA0MThhZjk2MDcxZjRmYTAzZTNlZTZhIHB5M2sKKzgwNjk4IDIxMzY5ZDE4OWQ5ZTQ3OWY0MzBmMzYyODk1M2MyOGVjMDYzMDNmNGUgbGVnYWN5LXRydW5rCis4MDY5OSA3ZDk4ZTBlYTlkYjM1NGUzMDkzY2U1ZTc3MzU1NTY5OTc4YjE1MmY3IHB5M2sKKzgwNzAwIGQ5NWRmMjYyMmY5ZjViNzc0Nzk3ODhmOGRhYmI2MDIzNTk0MDRjNzggbGVnYWN5LXRydW5rCis4MDcwMSBiMWRkNzcxNTQ1ZTIxMjdlM2Q5ZmQ3MDQxOGRmNDhhY2UxM2MzN2U0IHJlbGVhc2UyNi1tYWludAorODA3MDIgNDMxMjY3NjI2YTAzNWNlNGU5Mjg5OGE2YjQ0YzM2MmRjNWRlMWY1ZiByZWxlYXNlMzEtbWFpbnQKKzgwNzAzIGNmMDM2MWMwMjU1MWQwOWUyYTBmYzY1NmJmMjVhNTgyZDczZmM5MWEgcHkzaworODA3MDQgYjNjM2IxMjQ2MGQ0ODExMDkxZWYwY2QxNGE4MTJlOGNmYzhkYmYyYSBsZWdhY3ktdHJ1bmsKKzgwNzA1IDhiNzUzMjk5MjQ2NDJlYjk5ZTA1NjA0MTdkYmQyMjE3ZmZiZTZkZDQgcHkzaworODA3MDYgYzYyYjFkMDI1NTFhZTI4NjQxNmE2M2E5NGE1NjNlN2Q2ZjdmNjMzZCByZWxlYXNlMjYtbWFpbnQKKzgwNzA3IGE3NzQ2N2JjYWRlMGI3ODNhOTgxNTBiYTA2MTVjOTNlYTE5MTZlMTggcmVsZWFzZTMxLW1haW50Cis4MDcwOCAwM2MzMjA5MmQyNjY4MjgxYzJiYWNiZGIwODQwMjViMzI3ZjM0NWMwIGxlZ2FjeS10cnVuaworODA3MDkgNjJiOWE3NDMxMDQ3ZjZlOTlkMDcyOTY0YjQ0YWMzYjExMGJhOTM4MyBweTNrCis4MDcxMCBkMDYyYjhlNzkwNTIxZTEzZjdmOTNhOTZmMjczZjdmYjc2NWI1YzhiIGxlZ2FjeS10cnVuaworODA3MTEgYjdmY2IyYWY4Y2I0MDhkZTY3YWJlODUxZTAwMDhkMzk2Njk2NDA3ZCByZWxlYXNlMzEtbWFpbnQKKzgwNzEyIDU2ZDgzMWU2ZjUwODgxYWRkZGU4NTI0YzdiYmEwMDI2MmI2MDA5OTkgbGVnYWN5LXRydW5rCis4MDcxMyA0NzY3YzY2NmIyNWIwOGIzYmY1OWI0ZGExZmU3Njc0MWE1NzM2MjdmIHJlbGVhc2UyNi1tYWludAorODA3MTQgNWQ0YTU2NTU1NzVmMmM0YzZkYTRlZTZhY2FmMDNiOTJhMzFmMTliYiBweTNrCis4MDcxNSAzZWQyOGYyODQ2NmY2MDZhMTZhZDI0Zjg4ODFmNjU5NzQwZGZlMGM3IHJlbGVhc2UzMS1tYWludAorODA3MTYgZjk5MmNlZDMyYzIwNTc4YTI5MzAxY2ZmZTIzMjY4MzVjZDgzMGViMiBsZWdhY3ktdHJ1bmsKKzgwNzE3IGQ5MmZmNzA4MWIyMDM5ZDZjYzg1NTljMWIyMzNiMGJlZTE1Yzc0OWQgcmVsZWFzZTI2LW1haW50Cis4MDcxOCBmMDI1NWVmNGRiZWJkMWYyMzhlZDU5MWJmMDc2ZGMzYTk0OWE3YmMzIHB5M2sKKzgwNzE5IDdhYWY1OWQ4ZWYwYmZiYjRhZGJkOWE0ZmMzNGMzMzI1ZmNjNjI0OWIgcmVsZWFzZTMxLW1haW50Cis4MDcyMCA5YjQzOGJiMDZkNGQ2MjNlMmUyMzU4YzU2Nzc2YmIyOTBhZjYyZjExIGxlZ2FjeS10cnVuaworODA3MjEgZmUzYmYzOTlhMTljMTI2NzM3ZWI0NTgyNGE5MjQ1N2EyYWY4YzllOCByZWxlYXNlMjYtbWFpbnQKKzgwNzIyIDgxY2VmNWI3NGYxYTdhZTU5ODM3ZTJiOWM3OGUwZTAzNDE1NzkxNTkgcHkzaworODA3MjMgY2EwMWFiZDhhZDg3MTZmYzM3MTYyYzQwYTI4YThhOGI4NDU1ZGM3ZSByZWxlYXNlMzEtbWFpbnQKKzgwNzI0IDRmZDNhYjVmYTcxZDYwNmFlN2UyODAzMTI5Mjk4ZGU3YmVhZjMyZjAgcHkzaworODA3MjYgNjg1MGFhNzg2YzE4NzY3ZTdhM2QyNGQzZTkyZDM2ZDljNTViOGU5MyBweTNrCis4MDcyNyA1MTJkNjFhNjkyZTRlYjM3ZWQ1NzNmYjdjMDkxMDdiMTU4NGE0NzE5IHB5M2sKKzgwNzI4IDEzOGJiNWM5MzA3NDdmYWViNjRlNDgzZTM3ZjIwNWQ0YTRkYzQ2NWQgcHkzaworODA3MjkgMThjYzA1ZTgyNzUyMjcxZTY2NGI1M2ZiZTYwNDUxNmQ1NDViZGE5YyByZWxlYXNlMzEtbWFpbnQKKzgwNzMwIGU5OTEwZDE5MzIxNDZlMGE1MzkyMTM0ZGYwNjQwYjI4NmVjOTEzNTIgcHkzay1qaXQKKzgwNzMxIDE4MWNkMTQ5MmNiMGM3NWJhOTdkYjMyMDE5ZmJiODEzNzMxMzhhMjEgbGVnYWN5LXRydW5rCis4MDczMiBhMTE4OTA1MjcyMjk5ZmI1ZTZhMjAwNzM0OWEwYWFmNzA0NjY0ZDFkIGxlZ2FjeS10cnVuaworODA3MzMgMDJlMTg3YmFhZjUxNGQ3Yjk2MmMzYTA0ZTRhYzMxOWE5NzdlY2Q1MSBsZWdhY3ktdHJ1bmsKKzgwNzM0IDBjZjgwYjcwZjgzOGEwMzgxYTMyY2Y3YjU1ZjM2NDg0NWQwMzRkYzcgbGVnYWN5LXRydW5rCis4MDczNSA5ODJlZWM5YThjMjg4NTNhZmQ1ZTRkOGY5ODk0MDcwZThkNThmZWM3IGxlZ2FjeS10cnVuaworODA3MzYgZWI0NzBiODVlNjdhZmE2NWZhM2JkMzAwMjM3OWYxNDFkM2RlZGFjNiBsZWdhY3ktdHJ1bmsKKzgwNzM3IDdlZTU2MmNjZWE4MDJjMTM2OTg3ZjFiMmY5MGE5OWQyZDk5NDQ5N2EgbGVnYWN5LXRydW5rCis4MDczOCA2MzY1OTFmNGMyMTYyYTkxMDAwMzJmZjAwYWZmNDg5ZGRjMWMyNmQ4IGxlZ2FjeS10cnVuaworODA3MzkgODE0MjQ1M2RiODBjYTAwMWI1MTc4ZGZkNjNjZDNjZWQ2MzVjMWQ4MiBsZWdhY3ktdHJ1bmsKKzgwNzQwIDdjNjJlNzJkODU2YjI5MjMyN2ViZDI4OWEwMmFlZmUwZjc5YzcwYmEgcHkzaworODA3NDEgZjY1NjllMzRiZDI4MWFhMWUyMWViMTE3OTM4MjVjZDEyMzRlNDA5YiBsZWdhY3ktdHJ1bmsKKzgwNzQyIDc2OTVmNmE3ZTNhM2I2NDI2MmY3MmY5OWU1MzM4Mzc0ZjdiNjMxM2MgbGVnYWN5LXRydW5rCis4MDc0MyA2NmZiY2EyODdhMDExODQyYzEwMWI2NjJmMjQ5MjQyYTZiZGYxNTQwIGxlZ2FjeS10cnVuaworODA3NDQgM2M3NjgzZDZhM2M0NzEzNjRlMjk4MzY1NmUyZTg1NTJlNTg3YjIzZiBsZWdhY3ktdHJ1bmsKKzgwNzQ1IDg1ZDY5M2U1ZjIyOTNiYjQxYTE1MmYxMjQxZTE1MjViMzMyNWFmZGYgbGVnYWN5LXRydW5rCis4MDc0NiA1NWE1OTNjYzMyODAzYmM3NGRiYmZhZjNjNjlhNDE1MWFkNjYwODg4IGxlZ2FjeS10cnVuaworODA3NDcgY2QzM2Q2Y2QyMTAxOTU2NDMzOTUyYWZkMzJjMjZkNWI3YmIzZDg4MSBsZWdhY3ktdHJ1bmsKKzgwNzQ4IGUwZWUwOTUxZTk1M2YxNTFjZjNmYzA4YzdhMDlmNzUyNDVkNTUzOTIgbGVnYWN5LXRydW5rCis4MDc0OSA1ZWMxNTVlYzdkYjI3MGE0ZTUwZWZiYTg5YjA1Y2Q4MWQyYzI1NDlkIGxlZ2FjeS10cnVuaworODA3NTAgZDE3NmFhNDczMjg3NTY3OGY0ZGVlZDQ4YzhkMDVhMGY1NzExOGViZCBweTNrCis4MDc1MSBhNTE1MzdlNzA0YTliNDQ0ZTZjZTU5ODRjODAyY2M4OTViYzZlZTE2IHB5M2sKKzgwNzUyIGI3NjBmNmZmODllYWIyN2EyNGNiNTBlNWJmZWM1ZTRlYjRjOTllYzkgbGVnYWN5LXRydW5rCis4MDc1MyBjMGVhMDc5MjU0MDAyODRmZjQ5YzFlZTcxNGU5ZGMyNTNhZjU2YTllIGxlZ2FjeS10cnVuaworODA3NTQgZWNjMzJlMmY0NjU2NmU1ZGVjOWY2OWI0ODIyNTMyZjUxOTQwMGIxYyByZWxlYXNlMjYtbWFpbnQKKzgwNzU1IDE4MzM0ZjIzZjY4NmZjMjU4OTY0MDI0ZDcwYjljMTQ2NjdlN2U2NTAgcHkzaworODA3NTYgMTE0Mzk3MmYwNGJiZDU3Nzg4MGYxYzNiYjIwMmMwMTQ0MTIzMWM2ZSByZWxlYXNlMzEtbWFpbnQKKzgwNzU3IDFiNGI1MDZhYTA0Mjc2OWY5MGFmYTExYTFmMzQ2NmYwNDU0MzZkZmEgcHkzaworODA3NTggZjU1MGVkODkzOThmNThlNTFhZDk1ZTJlNTI0ZTc5MmZjN2RhYzRjZSBsZWdhY3ktdHJ1bmsKKzgwNzU5IDZmNDY2OGI5N2Q2ODQwMzU0MzliZGYzOGY1OTE5NDM3NGJjMWUxNjIgbGVnYWN5LXRydW5rCis4MDc2MCBjNzQyOTlkZTgwMWFiYTM1YjM2MjA5NDk1MjA3Y2RkODUzOTg4NjEzIHB5M2sKKzgwNzYxIGYzODRlMTFjMWJiNWY2OGE4NzdkOGE5NTNkN2VkN2IzZGU5ZmUzNDMgbGVnYWN5LXRydW5rCis4MDc2MiAzOTA3ZDUyNjQ4YTBmMjU2MTMzNWU3MGViODEwOGU4N2Q4MDgxMWIyIGxlZ2FjeS10cnVuaworODA3NjMgYWRjMmViZGE3NjM2YWFmYmRjNzUwMWNiMDc2Yzc3Njk1ODgzN2EzYiByZWxlYXNlMjYtbWFpbnQKKzgwNzY0IDBhNGNhODkyYTU5ZTVlOTI5ODE5MTNmNzY4MDU5ZTgwNWFlOTA2MTYgcHkzaworODA3NjUgOWJhNmZjZWM0ZjE0OWUxN2EyMjEyNzU0ZTVjOTM5NGI2MTRlMDcyYSByZWxlYXNlMzEtbWFpbnQKKzgwNzY2IGQ5MjI4MDUxNzMwNTM3MWMwNTJiZjEyZTRkYjY3Y2FkZDdlMGQyN2MgbGVnYWN5LXRydW5rCis4MDc2NyA4YzliNzg1YjE4NDlkMDZiM2Q3YWRkZGM0NTAxODhkNmQyZjZhNjNiIHB5M2sKKzgwNzcxIGQ0OWYxMzEwZTIzZjkwMmFkOGFlMzdlOGQ1NzUwNDdlNGQ2MDdjM2UgcHkzaworODA3NzIgNmU0YmZjZjIwODBjNzE2MTY2YWNlNDdhYmIyZGRmOTQ0ZGM5OTU2YiBweTNrCis4MDc3MyBjZjQ4NTM1MTMyZTBkYzA3ZWQwZTNiN2IwMmIyNTI3NDlhN2UyYzcyIHB5M2sKKzgwNzc0IGUwMTA1ZmQ1MjAzMjkxN2UzMDA1OTVmMzYwNWU1YWZkNWQzMmY2OTYgcmVsZWFzZTMxLW1haW50Cis4MDc3NSBkNzRhYzdjY2E2MDc3MGExMTJkYWEzZDJlNzg2NWIzMzA2YWM2NzhiIHB5M2sKKzgwNzc2IDEzNGE2M2FmMjJhOWE1OGE4NjU2YzI4MWU3M2VhN2Y5MWEyYTU5NmYgcmVsZWFzZTMxLW1haW50Cis4MDc3NyBiYjUxZTRiYmZmOGMyOGIyMjNjZGUwMTE4ZTI5NTAwYTQwZjJhNjQ0IGxlZ2FjeS10cnVuaworODA3NzggZGQ2MGRlMmZhZTNjZjZkM2FkYTJjNmQ4NTEyOTQ0NDYwY2E4OTgxNyBweTNrCis4MDc3OSA0MzgwZTA0MzQzZWU5ODVhN2E5OWEwNjk3ZjI2ODYwZDQ4YTdiNTg0IHJlbGVhc2UyNi1tYWludAorODA3ODEgYjdhZTNhNmIxZDg0YjI3NDBhNzI2NDNhN2ZkNmIzYTVhYjdkYzllZSBweTNrCis4MDc4MiBmNDQxMWEzY2RmMTM5YmFjNzc5ZTJiZWRkMWQ3NjcwMTlmODEyZjc4IGxlZ2FjeS10cnVuaworODA3ODMgMzFhMzJlNGUwMjU2ZmY5YjEzYjE1NGM4YjVhYWZhNGZiMDFkODMwYyBweTNrCis4MDc4NCBkYzY4NTIwOTg4YTdmOWI5NmEyNTAwNDNiN2VkZjY4OWJjMGQyY2I3IGxlZ2FjeS10cnVuaworODA3ODUgODEzZGFlZTk0ZjczODNmMWVhMTM0YTFmZDFlZTU3ZmQ1ODFlOThmYiByZWxlYXNlMjYtbWFpbnQKKzgwNzg2IGZiYjVjZDM0NWI0MmU5MWRjMjNmZDM5NjcxZjM4YjFlZWEyNmI2Y2EgcHkzaworODA3ODcgN2IyOTk0MDRlNzgxMGNkNmI5NjY5OTI4ZGYyNDk0Y2ZiN2Q5N2U1YSBsZWdhY3ktdHJ1bmsKKzgwNzg4IGYwNWEyOTg5Mzc5ZWM5YTZiMzM1M2MyNmU4Mzg3MGQ4NzI0YjljODcgcmVsZWFzZTMxLW1haW50Cis4MDc4OSA2ZGI5YmE0MmU0Njg3MjM4MGUwOWJmNzU0YTBhNWU2ODYxYzkwYjQ0IGxlZ2FjeS10cnVuaworODA3OTAgMzUyMjFjMDE1OGI1YTcyZmQxNGYyM2M2ZTU5MGE1MmU5OTRkMjIxMSBweTNrCis4MDc5MSBjY2FkZTU3NzI2NzQ2NDM3NTc3ODhkZTQzZGFkMjk1YTVkNWUwMWRkIHJlbGVhc2UyNi1tYWludAorODA3OTIgNTBhNGVjMzczNjFkMDBkZTQwYjE4OGZkN2Q4N2JjODliMjcwOTVmZSByZWxlYXNlMzEtbWFpbnQKKzgwNzkzIGI2MDhlMmVkOWY3NTg5MWJiZmRmNDc1MmFkMDNjOGM0ZTYzZjY5MTEgbGVnYWN5LXRydW5rCis4MDc5NCA0YjY4ZDZjOGNkNTJjNGUwNmY3YTdkNThlNWNiNTc0YzJlNjllN2E1IGxlZ2FjeS10cnVuaworODA3OTUgMzU5MzJhMjRiZTg1MDljZDliNjI3YjdlZDhlNmUwYTUzZDExMTA5YSBweTNrCis4MDc5NiBkNGFhMzU5MDc4MDg3NjJkZWQwOThmOGUxZTQ4NWVmYmRjZGZlMTU5IGxlZ2FjeS10cnVuaworODA3OTcgNjI3ZjExNDQwYjg5ZTYyMjViYjQ4Nzk4ZTkwZjJlODkzMGMwMGI1MiByZWxlYXNlMjYtbWFpbnQKKzgwNzk4IDc0ODNlY2I2MjFlMGY2MGJkODgxYzdlMDM1MTg0NTk5YTQ5YWQ3ZWIgcHkzaworODA3OTkgOGVlODBjMmY5OTI2NzljN2JlZWJkMmIyMDE1NDFhMWFiNGI3NmFlYiByZWxlYXNlMzEtbWFpbnQKKzgwODAwIDU3NWU5MzhhOGNhNTI1YjIzZTgwY2ZkODM4MGJiNWRjNTU4NDY1NmQgbGVnYWN5LXRydW5rCis4MDgwMSAxODlhMmRlM2UwMzQ1ZjA0NGU1ODA0MDI3ODhiYWYyOGQzYjlhODgwIHJlbGVhc2UyNi1tYWludAorODA4MDIgMzNhYzEwOWRlMGNjMmQyMDA0YTRiMDlhNGY0YjZkNmQ0NWI5ZjM2NSBsZWdhY3ktdHJ1bmsKKzgwODAzIDgwZDA1NjMwMjYzYWRkMjU4ZWUzYTc1ZTJmYTM4MDJjNTc4OWRhMTcgcHkzaworODA4MDQgZjY3ODViY2U1NGI1MzMyZGU1ZTU2Zjc5MTYzMmM1NjkzMDllNzg2YiBsZWdhY3ktdHJ1bmsKKzgwODA1IDFmNzUwNmYyMzc3MTZmYTA4NWEyYTRhYmViYzBjNGFhM2YwNDU5ZGQgcHkzaworODA4MDYgOTBmNGI2MmQ0NzU5ZDA0OGE1Mzg3NjQyNjcyYzU1MWI3NTNjMTBlZiBweTNrCis4MDgwNyA2ODk5MTM5MzAxYzllODdjMzkwYzBlZWMyNzMwM2ZmMDQzOGJjZjE5IGxlZ2FjeS10cnVuaworODA4MDggM2I1OGYyNDQxY2M4N2ZkZDZiNmNhNmI1ZjMyNDVlN2IyNDRkZjg1NyBsZWdhY3ktdHJ1bmsKKzgwODA5IDk0NTM4YjA0NGNiZWZhYjBlOTQ2N2UyYmQ3MTkzYTU2YTc3ZDkzZmIgbGVnYWN5LXRydW5rCis4MDgxMCBmOTVjMjU5YjgwYjNjZTVhZDU1OWY5Zjg0NmUxNzYyYmM2NTM4MDMxIGxlZ2FjeS10cnVuaworODA4MTEgN2JlODEyOWVlMGZkMjFkZDE4OTkwNTBhNDk5NTE4OTVkOTllZTA0NCBsZWdhY3ktdHJ1bmsKKzgwODEyIDQ3YTI3MDBjMDBiNDlkODY1ZDFjZDI5NGQ5NmM5MjIzM2Y5MDBjZjEgbGVnYWN5LXRydW5rCis4MDgxMyA1Y2VhMjcyNzVhZjEyNTgyYjA3OGMzMzk2YjMyM2U2YzhhN2RjMmM2IGxlZ2FjeS10cnVuaworODA4MTQgMmQ4ZmE3NGY5MjYzZTQwMDEyOWRiNTNjNDE0MjRlMDk1ODVjYWU5NiBsZWdhY3ktdHJ1bmsKKzgwODE1IGZmZjQzOWYwODlmZTU1YWI1NGI4YzczOTRmZTIxYjk0MDU5ZjQ2MzIgbGVnYWN5LXRydW5rCis4MDgxNiA2ZmI2ZmE4MDIyMjFlN2Y1ODRhM2RiZjZiOWQyNGNkODE4NThlMTBiIGxlZ2FjeS10cnVuaworODA4MTcgODQ1YzZkODAwMzAyNDQ2Y2E4M2I4NGYwYjBjYjUwNzgwZTcxNjYwNSBsZWdhY3ktdHJ1bmsKKzgwODE4IDc3Yjc4NjA3NjAwZTUyNGQyZTg2N2RkNTRkOGI2NDU1MGY0YmExMmEgbGVnYWN5LXRydW5rCis4MDgxOSAzZmU0YzM0Zjc4YzAyOWY3OGU4ZTMzMzlkY2YxY2M4OTA5MjUyM2ZmIGxlZ2FjeS10cnVuaworODA4MjAgOTVjNDAwYjlkNzRjYTM3YTZmYzcyN2M5MDhmYTAwYjMyYTgwN2NiZiBsZWdhY3ktdHJ1bmsKKzgwODIxIDBkMTQ4MjdiY2MwZGZhOWVlMjBkMzJkODhjNDUxZDg5Yzg5Y2VkOTMgbGVnYWN5LXRydW5rCis4MDgyMiA4ZTNiNWZiYzFlNDFiZjFiM2Y3MDZhNDM5YWNhNjY1MzVmYjQ3OTk3IGxlZ2FjeS10cnVuaworODA4MjMgMDM3OGY2ZTM0NmYwMzI1OTg3MDY3NzUwNmE3ZWRhYTJiYmE0OWRmMiBsZWdhY3ktdHJ1bmsKKzgwODI0IDg4NDY2ZWYxZjBjZGU2ODE4MDhiZDMyMzc2NGI0NDliYmFhOWNlYWQgcHkzaworODA4MjUgOGJmMzQ1OTRiNjZmMzE1M2I5ODBlODZiODQ5MDk4MTE4MDBiOWQ5MSByZWxlYXNlMzEtbWFpbnQKKzgwODI2IGYzMzA5MDQyYTBiMzFiZWUxNmMyM2Q5OTMzNTI5N2I5YjZlZGJjZWIgbGVnYWN5LXRydW5rCis4MDgyNyAwM2JhNjBkMWU0OTJhMzk4NDU1NzAxMDZlMjkyYjNmNWNiNGU3ZTU0IHJlbGVhc2UyNi1tYWludAorODA4MjggOTQ0OTM4YWJiMjZjZTA2MDlmMDQzMGQ4NDM2NmUzM2Q5M2QxMmNjZSBweTNrCis4MDgyOSBmNGNlYjRhZTAyNDdkYmEzMjYyMjgxMWY3MzViYmFlNzczMGExMDQyIHJlbGVhc2UzMS1tYWludAorODA4MzAgMjZiODFjNGU1ZmJhNDdlNGM2NjgwM2MzYTg5NjU5NTU2NDllNDI1MSBsZWdhY3ktdHJ1bmsKKzgwODMxIGYwZmE5NDRiMTVjMGNmMWY4NzA2MGRhZjNmOTI3N2IyMDJlNThlYjYgcmVsZWFzZTI2LW1haW50Cis4MDgzMiA5YmVhMzdhODUwODg0Y2RkMjI3OTFjOTRhMDQwZjJmZGMzZDJkYmEwIGxlZ2FjeS10cnVuaworODA4MzMgYzQyNDI5OWIzODg0YjQwYzc2YTkwZmI3YjU3N2YwN2Y2YTIzMGNjMSBweTNrCis4MDgzNCA4YjVkZGUyYzMxZmIzZjY2NjA1ZjNjOTU2YzkxYmY0NDBmNmFhYmEzIHB5M2sKKzgwODM1IDc4ZTdmYzAxYzUxYWM1ODM1ZjRkNTNiM2YxZTExNmMyYzI5ZDgyNDAgcmVsZWFzZTMxLW1haW50Cis4MDgzNiA1ZGNhMGEzZmI5OTNjNDA1ZWUzYTVhZGEyZmJmMzk3MmQwMGUyZTUyIHB5M2sKKzgwODM3IGUzZTQ2NmY1M2Y5ZWYwYTE0MjJkZTY2NzlkZGE0ZTI3NzIwMzEzNzEgbGVnYWN5LXRydW5rCis4MDgzOCA5OTVlYjk2Y2FlNjg2YmVmMzU3NzhmMGU0Yjk1YWFmMjk3ODVhMjVmIHJlbGVhc2UyNi1tYWludAorODA4MzkgYjMwM2MzNTI1NGRlNDEzMTdkOWM4NzA0NDgxY2IzODc3YTFhNzZjMiBsZWdhY3ktdHJ1bmsKKzgwODQwIDY1NThkOTZhZGUwM2FkMzM4NmI5NWYyNDRiMmRlYjhjNWRkNWRhNjAgcHkzaworODA4NDEgMmYzMTMwMDhhNDFkNDVmMmE2ZWNmZjY0YWM2MzJiZDVlNWEyZGU4NCByZWxlYXNlMzEtbWFpbnQKKzgwODQyIDYzZDViOWQzOGIxNzZmYTRiMTM1N2EwMTFkZDYzY2Y5NmIyNDAxZjcgcHkzaworODA4NDMgOGFmZDZmMjhhY2E5ZDIyYWU5YmVlNjJhNTI5MDczYTZiNWIyZTI5OCBsZWdhY3ktdHJ1bmsKKzgwODQ0IGYxMWQ0ZDJiNDRiNjdkNGExYTcyNDA5MTZkZjM5MjM1OGEwZTA2MzUgbGVnYWN5LXRydW5rCis4MDg0NSBlMTE0NmIyNWY3NzMyMjQ4NjQzM2M4NzY3ZGRlMjNhYmVmMGExZmUwIGxlZ2FjeS10cnVuaworODA4NDYgMWNmYjIyOTg0NGE3OGM1NDIyMjYyN2YxNzlkNmRlMzE0MzE3NTEwOCBweTNrCis4MDg0NyBlNTAzYmI4YjNmNjE1YjM2ZjM3MjcyYWQ3M2UwOTg4MWIzNTM5MzU1IHJlbGVhc2UyNi1tYWludAorODA4NDggZGMyYWFjNjI0ZmY4ZjliNjM2YmVlZmQzNDEwYmMwYzI3MzFiM2RlNSByZWxlYXNlMzEtbWFpbnQKKzgwODQ5IDAxNmRiYWIzNTFmMmUxM2U2ZDBjNmY2MzJlZTIyYWM3OTM3NDlmMTAgbGVnYWN5LXRydW5rCis4MDg1MCA4NWNjM2VkYzdkNDZlNDI2NDRiY2U4YmI1NzQxZGEyNmRhMzU2MTI2IHJlbGVhc2UyNi1tYWludAorODA4NTEgYWE3ZTZiOWNhYjZkNDkyZGM2ZjcwZjhhMTQyNWZlODYxNmJiMWE4NSBweTNrCis4MDg1MiBlMjE4MDNjNGYxZWVmNWY4OTI2YmVmNmU2NWU0OWVjZjE4M2I2NTcyIGxlZ2FjeS10cnVuaworODA4NTMgZDJhNDQwMDU3OGE1YzczZWQ2ZTdlNmYzYWYyMjMyZmQ2MGU5N2EzNSByZWxlYXNlMzEtbWFpbnQKKzgwODU0IDg5NDJlOTYyODZkYzY0MTc3ZWViMmVjZDIzM2VmMTc1NWZiY2RhMGMgbGVnYWN5LXRydW5rCis4MDg1NSA4YjY0MTU5NzkyYmJiMWY3MTY4YjE2YmEwZWRjNjUwY2Y0ZDBhMzU0IHB5M2sKKzgwODU2IDViNTVkYzk1NTRmY2JkNzdlMDdkMWJlYjYzZmZkMTkxZTEyZjZlNDAgcmVsZWFzZTMxLW1haW50Cis4MDg1NyAwZWQxZWJlNWJjMmZjOTNjZjBmMDIxMzIwMmUxNDM2YjFmNjYzNjJiIGxlZ2FjeS10cnVuaworODA4NTggZTRhMGJhMjUxYzRhNGZkZDA1ODVlZDQ2YmE3ZjgyZGE4ZTRkMWQwNiByZWxlYXNlMjYtbWFpbnQKKzgwODU5IGI5MmVmOGViY2NiOTc2MGI0YWU0OTZmZTU5N2VmOGNhMDEwOGY1YWYgcHkzaworODA4NjAgMzlhMmJlNDEyN2RkNDQyMjVjYWUyNTg4ZDc0ODIwZWUxYjY3ZGIxZSByZWxlYXNlMzEtbWFpbnQKKzgwODYxIDNjYmNjMjc0NTk3MjkyZDFjNDRjNzdhNGQwMTMyOGI4Mjg2MjA4ZDMgc2lnbmFsZmQtaXNzdWU4NDA3Cis4MDg2MiA5OTY1ZWY4MjVjN2Y3YjJkODU5MGRjYTMyNmQ2YjQ5ZWIyODU2ZDBiIHNpZ25hbGZkLWlzc3VlODQwNworODA4NjMgMmQ4YTNiYjhmYjYwOGE3M2EyNzBiZTU1YjFjOGRhMzQ2Zjc3ZGU3MCBzaWduYWxmZC1pc3N1ZTg0MDcKKzgwODY0IDNkYTY3Mzg4Yjk2YTM3ZDE2MWU1YTU1YTc5MDdiOTRmNjQ2M2QyYjUgc2lnbmFsZmQtaXNzdWU4NDA3Cis4MDg2NiA2MjU0YzAyOGM2M2QyNDAwZWZkMWE5MzM2M2FmNjZiYWI3NTA1NGQzIGxlZ2FjeS10cnVuaworODA4NjcgZWE3MDAxYzNmMDAwZmY2OTEzNzk0MzRiNWNlMDA1NGU5Y2FlY2EwZCByZWxlYXNlMjYtbWFpbnQKKzgwODY4IDIxNjZiNjNiNmZkZjg2ZjZiOWZkMThmODMyMjFhYzYxZTA3YTA1ZjggcmVsZWFzZTMxLW1haW50Cis4MDg2OSBiNGIzMjJiMmU5OGI5OTAxNjk0YmJlZDllNjJjZDY1NWYzNGUyY2JjIGxlZ2FjeS10cnVuaworODA4NzAgMzQ2YzRjMmUzODZlNzQzNWM1ZGFkZGU2MTIyYTUzYTJjNjU2MTBiMSBsZWdhY3ktdHJ1bmsKKzgwODcxIGNlYmUyODU3MDAwNjkwZWYyMWIyNWU0MmMyMGE0NTdhMDIzMzE4NTIgcHkzaworODA4NzIgNGNkY2ZmMGU5YTM2ZWQ4ZGVhYTI3NjUzZGFjMGM5YzBjMmU5ZjEzNiBsZWdhY3ktdHJ1bmsKKzgwODczIDZiMjdhOTVjMmM1MjI4MTRhNmU5MWYzYTNiMmNhZTQwZmYyNzNjMTUgbGVnYWN5LXRydW5rCis4MDg3NCBlNGU1NDg2ZWNjYmUwZTYzNzJiNDhkMzE0MDk4ZTdhYjI3ZjI4YTM0IGxlZ2FjeS10cnVuaworODA4NzUgY2M5MjUwMmRlNGM5NTExNDRiMmNlN2JmZjQ0OTJkOTY5MjQ1MzI4ZCBsZWdhY3ktdHJ1bmsKKzgwODc2IDNiNDkwOTYzZjkyYzg3NDg2M2NjMTcxMmZmYzEzMTE4N2JmZjE4MWQgcHkzaworODA4NzcgMjk3ZTIzMzI4YzZjNjk1ODBiYTgxOGI3ODViMDZkMDFkYzdjZjgzZCBzaWduYWxmZC1pc3N1ZTg0MDcKKzgwODc4IDU0ZWZhZjZkMmY4OTJhOTVhNjc4MjE2ZTIxODRiNzBjNDRiOWUxYzggcmVsZWFzZTI2LW1haW50Cis4MDg3OSAwYTgzOTY5YjZmMzVkYjE2ZWIyYjZjODkyOWU0NGFhZWM2N2RkMzQ1IHJlbGVhc2UzMS1tYWludAorODA4ODAgOWFmOTYwZmJhY2NjNWU0ZTUxYTc2YjhlMzU0ZTNhMGNjYzljZGM1MCBsZWdhY3ktdHJ1bmsKKzgwODgxIDUzZjliODQ4ODJhMDU2OTU0MDdkNWFiZWU0Mjc2YTlmNjdlNWVjYWUgcHkzaworODA4ODIgYWIwYjI4NTVjOWU0MjkxM2EyZDVlMTZiYzY3YWMzOWUwMDVkYTU2OCBsZWdhY3ktdHJ1bmsKKzgwODgzIGFkZTgyOTNiYTQ4N2ExOTRiNDY4MTVhNGM3ZGFlZjU3MDc3MjBkNzAgcHkzaworODA4ODQgMmQzYWUxMmFkMDkzNjhkYzcwNTk5YmQzMjBjOTMzNWVlNDEyODJlNiBweTNrLWppdAorODA4ODUgN2U1YmRmNTlhNDg3MTM2MGU1YzA0ZGIxYTE2MGNjN2EwOTk3OTliOCBweTNrCis4MDg4NiA2OTNmNzRjNDJlNWVmOWRiM2E2YzI5N2QyOWU0OGY0MzBkYjMxMjFiIHJlbGVhc2UzMS1tYWludAorODA4ODcgOWQ3NmFmOTVjMTY2ZGE5MjdjZDhiMjM5ZmEwZGZkYjkwNjIyOWY1ZiBweTNrCis4MDg4OCA4YWQxYzc0ZDU5MDk3MzE1NTQwMWE2YTE0NmQ3ZjdjNzIxYWJmZDg5IHB5M2sKKzgwODg5IDJhYTYwNTE2OGYxMTJlMTAzNjk5NjFkNmNkODNkY2M3MGFiMWQyOWEgcHkzaworODA4OTAgZjE4MmUwOTIyZGM3NDc2ZjM2NWQ3ZGJkMWQ1NDEwYjUzMTg5NDQ2YyBweTNrCis4MDg5MSBmNDIzMDc2NWRkYmIxNzhkZjU4MDQ0MjQyYWQ3ZjAwYjE5MDE2NWVhIHB5M2sKKzgwODkyIDU0OGZhOGVkYjdmMGZiNzk4MzkyMjAwNWI4ODliZjYyYjQ0YzI0MTUgcHkzaworODA4OTMgNWFiNGI0ZWZjZjYxZjM3ZDUyZTE2M2IzYmUyMjg1OGVlZGI5ZDQ3NSBweTNrCis4MDg5NCBhMWM5YTkxMjYwZDkxYTNhZjVkODAwYzY2N2VjZTAzMjE3M2NiMTExIGxlZ2FjeS10cnVuaworODA4OTUgYTQ5MjU2YjIyNjk1N2EzMDkzZjE3ZWJkZTc2OTczNjcxYjMxNTU0NCBhc3luY29yZS10ZXN0cy1pc3N1ZTg0OTAKKzgwODk2IGIwYjdiYTI2YmU2YzE5MTc4MTIxMGEwMzI0OWUxZjQ4MzQ0OGM1MjQgbGVnYWN5LXRydW5rCis4MDg5NyA1ZmIzOTc3ZmIzNDFlMzdiYzk5NDc0YzUxOWNlNzJkZjQzMDVmNDE3IHB5M2sKKzgwODk4IDgzYzVmMjdhZjU3YzkyY2UwNDM3ZDY5MDRkMDY3ZDk4ZTNmZWRmZGQgcmVsZWFzZTI2LW1haW50Cis4MDg5OSBjYTc3ZWQ3Mzk4MjcwMTlmMjJlMTNkMDQ5Mzc0YzlhYzAzNzIwZjk1IHJlbGVhc2UzMS1tYWludAorODA5MDAgMGIwOTcxZGFmNThjMDA3MDcyNDkwNWQ4MzUzOTlhN2Y1MDE3OGZhNCBweTNrCis4MDkwMSBkNjE1MTQ4ODcyNmY4YWU3NjQ2NTAzMzBhZmY0NmZlNmU0YWViZmYxIHJlbGVhc2UzMS1tYWludAorODA5MDIgNTI2MDEwNGRiOTlkNzQzNDA2YjE1NTY1YTJjZTViYjQ4ZTA2MDYzYyBweTNrCis4MDkwMyAwNjllN2VmYTY0NWI1MTA3NjVlZTUwYjc2Zjc3M2RmYjc3YTQzODdlIHJlbGVhc2UzMS1tYWludAorODA5MDQgNTk4MWIyZGExMzFhMTI3MzQwNGRhZDJlYTdjZGQxODU5MDEwMjVmZiBweTNrCis4MDkwNSA0MjdjNzUwMGIyYjcwYzlmYzlmNTI0NjVlY2NjZTRiYTI5NGM1YWJlIHB5M2sKKzgwOTA2IDI0NTllZTZhYzdjN2FhZTAyZTA4ZTYwOTEwYWVjY2U2MTRjNGE5MzUgcmVsZWFzZTMxLW1haW50Cis4MDkwNyAxNjMyMTgzNDE1NmEwNDBlODI3MDY4YTExZDI4NmUyMDhhNDg3ZjU4IGxlZ2FjeS10cnVuaworODA5MDggNWM5MDk0NzkyZDFhY2NmNDA5ZWFlNDg3NmRiOTlhNzZjOGYzYzE3MCBsZWdhY3ktdHJ1bmsKKzgwOTA5IDQ5MGQxYzIwMzZlOTYzNTYxZTY4YzU1ODQ5OTExYjg5MGQxZmE0NjYgcmVsZWFzZTI2LW1haW50Cis4MDkxMCBmZTdlNTZmOTg2Y2Q0NTBmZTI0YzUzNGZkZTE4ZDE0NTA0MTJkY2YzIHB5M2sKKzgwOTExIGUzYTNlZDYxNGM3ZTA5ZTMzMjZhN2IyMDY4NDhmZWQ2YzA5NzA0NGIgcmVsZWFzZTMxLW1haW50Cis4MDkxMiA2MWM0Y2E5NGEzNjY4MjhkMmRkYjY1YWM1NDZjODFjNDAyODliMjlhIHNpZ2ludGVycnVwdC1yZXNldC1pc3N1ZTgzNTQKKzgwOTEzIGUwNDZhZGIxMDQ3OTdmNDNkNDY1NzgzMmY1YzdlNWM5NjdhNGRiNDggc2lnaW50ZXJydXB0LXJlc2V0LWlzc3VlODM1NAorODA5MTQgZTI5OTQyZWEyZmRmODQxZjE0ZTlhN2ExNzMxNzM0MzRmOTliOTQ0YiBzaWduYWxmZC1pc3N1ZTg0MDcKKzgwOTE1IDE5YmVlOGVhNDhkOGFiNTdiNTI5NzM0NDMxYWI4MTAzZGVkZjZkYjUgbGVnYWN5LXRydW5rCis4MDkxNiBkMDJiMzE3M2MzYzViOTIxMGMyYzEyZTg2MTdhODhhYzQ2MTc4NmU4IGxlZ2FjeS10cnVuaworODA5MTcgMzUzMjhmMDY5MjFjZTljZjU5MDA2YTM0N2ZhYzUzZjlkMWEyM2Y2MSByZWxlYXNlMjYtbWFpbnQKKzgwOTE4IDVhMzhlN2UxNmJmOGNiOTE4ODRkM2UyOGJjYmRlZjBkMzJkNjExNTIgbGVnYWN5LXRydW5rCis4MDkxOSBmYWNjNjkxNzU5YTFjMzE5NjliNWJiNDMzNWFmZGMwMWJkZDJiMmZmIHB5M2sKKzgwOTIwIDc5NjdiYzdiMDE4ZDRhZTYxODVjYmE4YWUyMTUwY2I4YTBhMjM1YWUgbGVnYWN5LXRydW5rCis4MDkyMSA5ZGFiZmMxOWQxYWM0ZmY4ZjRlYzljZTE0ZmE5ZDBlYWEyOGI2Mjg3IHB5M2sKKzgwOTIzIGY3MzdkNmNiYjA0NTYxZmEzOTI3ZGQ1MmU5NzE4OGNjMjI4MjNhNmIgcHkzaworODA5MjQgZjUwZDVjYTQ2OTBjYjY3OTkyNDJhY2Q0MjQyZGZlYmY3ZjM5NGZjOSByZWxlYXNlMzEtbWFpbnQKKzgwOTI1IDcxYWEwOThhMDgyZTI2MjM5ZTlmYzFkNzk1NmE4NTExNWRkZDM0MGYgcHkzaworODA5MjYgYjYwMjY3NmNhZGNkODViNWE5ODI3NDIzNmM0MGI2YzQ4M2E5MGYxMiBsZWdhY3ktdHJ1bmsKKzgwOTI3IGYxODk4MTkwNDUwNzlmOGFjMjBmMmU4NmQ5MjFlZjVlMzc4Y2NlMmYgcmVsZWFzZTI2LW1haW50Cis4MDkyOCBiY2IwY2Y5MjQ2OTNiZjA1YmVkMjQzYTZmNThlNjMyYzcwOWYyOGRlIHB5M2sKKzgwOTI5IDM2ODM3MWZhN2Y1YzM2N2Q0NDU4ZTJhMTRiNjdiZTJhZjIyYWQ4OTkgcmVsZWFzZTMxLW1haW50Cis4MDkzMCA4Mzk5NTM1ODBiNmRmY2M1ZTIyOWRkOTc1NWZmODZhNDE0MmE5YTBjIGFzeW5jb3JlLXRlc3RzLWlzc3VlODQ5MAorODA5MzEgNjU0NjFhNzA1NDk2N2Q4OTJhNTRlYmMyYTA4MDFjOTg4ZTBhZTdlZSByZWxlYXNlMzEtbWFpbnQKKzgwOTMyIDI2ZWRhYjk4OWQyZjg4NTU0ZmI4NjI0ZTZiOWY2YWE2ZDI1ODEzYmYgbGVnYWN5LXRydW5rCis4MDkzMyBmNThiOWRlY2UyNWViOGJkZTk5NDIxYjRmZTMxMThiNWJiMmYwOTg5IHB5M2sKKzgwOTM0IDlmZTU2MmEyZjBlMzE0NWQ4M2EyYjUwNDJmOGU5YjQ0YWYzYmJjOTUgbGVnYWN5LXRydW5rCis4MDkzNSBlOTJmYjk1ZjIzMTc4MmUwNzFiODQxY2Q1YzQ2ODRkZGJjZmI4ZGI4IHJlbGVhc2UyNi1tYWludAorODA5MzYgYjRmYWY5OWM2NDJmNzUxMDY0ZGYxNjA5YmJjYzRhNzk2ZDU3YmUwOCBweTNrCis4MDkzOCA4MjU4OTM3ZTEzOWMyMjYzZDc3YThhZTkxYmU5YTVjOThlOGM0OWQ3IHB5M2sKKzgwOTM5IDQ4ZDc5NTkxNjdkZWY3ZGJlOWE5ZjU2MTNlMzBmMGE1OTQ2MjRkMWMgbGVnYWN5LXRydW5rCis4MDk0MCAyM2JkNjFjN2RiYmNkNTU2OTg2YjMzYTQ0YjQwOTJkOTk1NzRhYjE3IHB5M2sKKzgwOTQxIGM3ZDA2Nzg5NTJkM2RiOGM3OTFmNjcyZmI2ODM1NTg3ZTI1MGVkMmEgc2lnaW50ZXJydXB0LXJlc2V0LWlzc3VlODM1NAorODA5NDIgMGUzOTgyYWUyODFkODIzNzVkNzJhYTIzOGRhOTdmYWYyMzM4MTVjNiBzaWdpbnRlcnJ1cHQtcmVzZXQtaXNzdWU4MzU0Cis4MDk0MyBjODY3ZDk5MWU5MWYwZDIyNDUxY2RkMzNhMjZjYzY1YmMzOTM1OWZhIHNpZ2ludGVycnVwdC1yZXNldC1pc3N1ZTgzNTQKKzgwOTQ0IGQ2ZGEzODE5NzdjZTUxNmU0YjQxNjdkNGM2YjJjMDcxZjhlZjE3NGEgc2lnaW50ZXJydXB0LXJlc2V0LWlzc3VlODM1NAorODA5NDUgYTkwMzcyMjQ5ZmQzNWRmNjY2NDM3MmFkMzBkMDA3Y2M1YWRiMzIxNiBzaWdpbnRlcnJ1cHQtcmVzZXQtaXNzdWU4MzU0Cis4MDk0NiBjYmRkMDEzZGFmNmQ2MTRkYzIyZjQ5YmM0Mzc3NWYzYzkyZjgwNDFlIGxlZ2FjeS10cnVuaworODA5NDcgZTJiY2NkMzcyY2Q2M2JiYzZlNGNkMzk0YzJiMjk5Mjk1OTM1NTkzYiBweTNrCis4MDk0OCA4NWFjMjdmYTkxM2ZiYWFlMmU3YTAwMDYxY2EwZmIyMDYzODE3MjQ0IHB5M2sKKzgwOTQ5IDA3YTQ3YTUxNDU0ODdhYjc3ODRiYTkxMzg3YmM5YmY5MmQ1MDQwNmIgcHkzaworODA5NTAgYTc3NDM3YmRlMzFhZjMxYzdlNGI5Yjc5MmM0ZmVhZWFkYjM4MGYxMyBweTNrCis4MDk1MSAxYWJiM2QzZTNlOGRmNTJmNmZkYWVlOGE0NWQxNzc3MmM1ODMwMmUxIGxlZ2FjeS10cnVuaworODA5NTIgY2JhMWQyMWVhYjNkMmNkZTgyZGI5MTY2NDkzNGYwNTQwOTlhNGQwYyBsZWdhY3ktdHJ1bmsKKzgwOTUzIDc0YWUwZWI5MzJkZWFkYWYzZTJlM2U1NTQyZDYwZWE3NGFiZmU1NWQgbGVnYWN5LXRydW5rCis4MDk1NCA1M2Q3NjIzMGZhMTg2ZjU2YmQ3YThmY2YxNWY4YWU3NTRhZmJiNTU0IHJlbGVhc2UyNi1tYWludAorODA5NTUgN2U2ZjFlODBiM2M2NTY3ZTcwYTBkNjdkOGVjZDJhYWU3ZDY5YjVjNSBweTNrCis4MDk1NiA0NjQ0Y2ZmMjUyNWJlMGRlN2UxM2IzOWI0MDI5ODc3NzUxZDI0NGFlIHJlbGVhc2UzMS1tYWludAorODA5NTcgZjg1MWU3YjZlMGQ1YzVkMGE5MTk2YzFmNTRiOWYzOTFmMjJkNzA3YSBsZWdhY3ktdHJ1bmsKKzgwOTU4IGJlZGU4NTA3ZjBhY2Q0YzhhY2ZmYWFkYzQyMGNmMGM1ZjNhNWE5NTggcmVsZWFzZTI2LW1haW50Cis4MDk1OSBkYjEzMzZjYzg1MWMyYTg1ZGIwY2YxYjYyNDNkYTk3MTcxZWU3Y2VlIHB5M2sKKzgwOTYwIDMyNGY4OTg4NmExY2I2ZGEzMmJlMjE5MWQxZDEyYmRjZGVkNWZlZDcgcmVsZWFzZTMxLW1haW50Cis4MDk2MSBkMDZlZjMwYTQ0MWVkYjViYWQ1N2QyYWNmOTBkNGViYWQyYmY0ZDQwIGxlZ2FjeS10cnVuaworODA5NjIgYjdhMGYwMjFmZjdkOTczNTg3ODhmZDQ2OTJhNzVkMzIwMjdjN2ZhYyBweTNrCis4MDk2MyBjMTQyM2IwYTkzMjkzNjc2NDUzNDhkZDliMzg1MzY5MWM4MTdjYmY4IGxlZ2FjeS10cnVuaworODA5NjQgNGY3ZTUwODlmYzk3YWU3YWY4M2ZlZTkyZWRmODAzYTVkZDk5YWMyMyBsZWdhY3ktdHJ1bmsKKzgwOTY1IGFmZTI1OTIzNTRkOTdiYzUxYWU0ZDk3MTcxNDNkYjE1MzRlODEyNGMgbGVnYWN5LXRydW5rCis4MDk2NiA0YTk0MGQ5OWVjODRiMWIyYWJiYWFhMGM5MjQ0MjdhMzJiMDNkZjVjIGxlZ2FjeS10cnVuaworODA5NjcgOTMwMzk1YjJkZTkwMzZiMGU3MjdkODI0MDEwZWY1ZjVhMmY3ZmU3MyBsZWdhY3ktdHJ1bmsKKzgwOTY4IDNmYWU3Y2I0OTIwOTViMTI5MWU2MTI5MDA1MTg0YmJmZmU1MWE1MzggcHkzaworODA5NjkgYzVmZGU0YTQyY2IwYTVlMTU3YTZjMWNmZmZiNzUwNDdmNWQ5Mjg2YSBsZWdhY3ktdHJ1bmsKKzgwOTcwIGY2MTRkYmVjMmY0Zjc5MmQ3ZDI3ZDc4Y2M1NzJmZGQ5MzFkMTBlMGMgbGVnYWN5LXRydW5rCis4MDk3MSAyMjdmYTdkYjUwZGVkMDNhODU0NjdiMDE1M2RiMTFlMjMyMzVmNjExIHB5M2sKKzgwOTcyIDBkOTczMmY2MDc3NjkyOTM0ZGNkNDg5MDgwNTVkMWM5OTM3MDMxNmQgcmVsZWFzZTMxLW1haW50Cis4MDk3MyBiMTBjM2EyNGQyZjlkYjhmZDQxZDhjY2Q1NDQzNGRjYTMzODU0NDU2IHB5M2sKKzgwOTc0IDYzZDZmNWZlZGJmMzE0NTY1YjI5Yzc4YjQwYzhhZDMyM2EwYjA5N2YgbGVnYWN5LXRydW5rCis4MDk3NSAxN2QyMWU5ZTYzMjAxMzNmYzJlOTIyNjA1ODMwYmE0OGU4OGJkMWNmIHB5M2sKKzgwOTc2IGI5NGMxMzNkYjQ1MTY2MmJhZDI5MzBlMTZlNTM0MzVlMTc0YjQyNzEgbGVnYWN5LXRydW5rCis4MDk3NyAwMjcwMTUxMWI3NTk2YzAwMThlZDQ1ZDcxNmUyNWIzMTAxZDlmNGU4IGxlZ2FjeS10cnVuaworODA5NzggMzNjYjViOTkyZDM5MmVhZjA0M2VlYmM4NmQ5NjA1NjVjZjZkOTQyNyBzaWdpbnRlcnJ1cHQtcmVzZXQtaXNzdWU4MzU0Cis4MDk3OSBiN2YwMmM2NzBiZDdjNGY4NmIyNzllMDUxM2EyMmNkN2E0ZjNmMjI5IHB5M2sKKzgwOTgwIDcwM2Y4YjExYjI1MGJkZjM3NDRjZjdmOTkyNjUwM2RkMjAyOTVhYWEgbGVnYWN5LXRydW5rCis4MDk4MSA5ZjQ2N2M2MmQ5NTQwOGU0MTJjOThjMmIwMjJlYzdjMmQyMzcyODIzIHB5M2sKKzgwOTgyIDI4NTIyMGYyNGNjOGYzYTNlZTUyNjFkNzMwZTQ0MGZiM2NiOTg0MjAgbGVnYWN5LXRydW5rCis4MDk4MyA0Nzg0NzFjY2Y3ZmQxOWVjNjNhOTAzMWYyNWU2YWNkZTU5ZTZmZjE0IHB5M2sKKzgwOTg0IGJlMWFkZjNjOGEzMzJjNWFmMmIzODRhNDc5YmZiMjNkNzRmM2ZhZWIgcmVsZWFzZTMxLW1haW50Cis4MDk4NSBlMjYzYWMyYmU0ZmQ0MjA2ODI4NGQwODg0ZmI2M2NkNDQ4ZDVjZThjIGxlZ2FjeS10cnVuaworODA5ODYgMmY3YWI5MjIxMjFhNDBiNzFjYWQ2ZGE4YzZiNTRlYTI2YWIzY2M0OCBsZWdhY3ktdHJ1bmsKKzgwOTg3IDMyOTNkYTgzZGYxZTMwODZiODJlMDdhZTM1MDVhNjI3ZWEzZTBiZjAgbGVnYWN5LXRydW5rCis4MDk4OCBlNDM1ODg4Yjg4MjVlNTdmMjY2NzFlNGY2NDdmYWM1NTQwZjc0NGE2IHJlbGVhc2UzMS1tYWludAorODA5ODkgY2FmYjYyMjVkZWQ4NmU2ZDIxZWUzOThiYTg5NmJjZjZmZjRlYjEzMCBweTNrCis4MDk5MCA3NDMzNTVlM2VmNGFiMTFiYzJkMzUxYzA2YzgxMDVlMTc5MDYwZjA3IGxlZ2FjeS10cnVuaworODA5OTEgOGZmOGYwYTUyNmRkMDdiNzQyOWNlZmE1NjIzNDY2ZjEwNThkMGIzNSBsZWdhY3ktdHJ1bmsKKzgwOTkyIGYyY2IzYWY1NTYyZmJkOTA0YmI2MTUyYjY5ZjE0MWMzNjgwMWExOTIgcHkzaworODA5OTMgZGNjZGZiZTU3N2JhNTcyZDY2NDYwNzlmYzY3NzQ1ZTRkNjMzMzk1NCBweTNrCis4MDk5NCAyNGVjNzI1OTQxOTY1YTkxZmUzMTIxZDQzNTc2ZWVlNTA0NTM2MjMxIHJlbGVhc2UyNi1tYWludAorODA5OTUgMzFiOTQxMmNhZDAxYmQwM2ZjNWYyNzc1ZjFhMTAyM2NlYTIxMzk2OCByZWxlYXNlMzEtbWFpbnQKKzgwOTk2IGYyMTk0ZTY4ODgxZWJmNDM3NjE5YWMwYmY5NTA5ZjQ3OGZhZDdhMGUgbGVnYWN5LXRydW5rCis4MDk5NyBkNmRmNzQ5NzgwYzU0NzkzYzc1ZjQ0MzcxNDkxYzZiMGJiNDVmZDAzIGxlZ2FjeS10cnVuaworODA5OTggNmJiOTg5MWQ0Mjc1YmQ0MmE2OWIzZDkwM2QxM2I2ODc1NDNjOTE1ZCBsZWdhY3ktdHJ1bmsKKzgwOTk5IDg4Y2Y1NzZmOWNlZWEyNWYxZjc5ZmJiMjlkODBiYmZhY2ZmZDJlNmUgcHkzaworODEwMDAgZjBmNDExOGM3NmU5OTBmNmZhYTNhM2E2YzNkZGUxNTE2NTdiZGI1NyBsZWdhY3ktdHJ1bmsKKzgxMDAxIGYxOTFkNWY4MGViMDQxYmFkZTU1NDI2MTdmZTU3NWJkOWRjZjU0M2IgcHkzaworODEwMDIgYmVkMDQ0OTIzOThkZWQ2MDYzNmY1YTIxYTg2ODk4NTlhY2ZmYmIyYyBsZWdhY3ktdHJ1bmsKKzgxMDAzIDY2M2IzOWQ0YTdlZjdkNjc4N2IyZWJiZWE4MDBiMTlkZjJhMTcxM2IgcHkzaworODEwMDQgNGRhN2ZiYTMzNzBmY2EwZTg5OTQxODlmMTI4YzVmYjRlZTY4Y2RlOSBsZWdhY3ktdHJ1bmsKKzgxMDA1IGZjYjIxZDJjZWI3M2IyOTMzOTE0NTA3NWZmNDhjY2M0MWExYjZmY2UgcHkzaworODEwMDYgYWI5YWU1Njc2YWRhZTcyNTFmNWRhMTJkYjk2ZTRkNzQ0ZTE5MDA2OSBweTNrCis4MTAwNyA0MzVhODM1NWRhYjZiZWZjNDcxNDFkYzIxNmMxMGRiMGYyYjFlY2E2IGxlZ2FjeS10cnVuaworODEwMDggNmZhOGUxMzgxYjQ5OTNiMTUzNjBmMWQ4ZThkMjVmOWU4NDk2MDRlOSBsZWdhY3ktdHJ1bmsKKzgxMDA5IDExN2I0YjgxYjg2NDAyZmYyOTlkNzg4ZjYzMmJlOWZjNGEwNjRiYjEgcHkzaworODEwMTAgMmU5YmM2MWMxYzFlYzcxODhjZmRlNmE4MTc5MjE2OGNlMWMwNGIyMSBweTNrCis4MTAxMSBmYjcxOTA0OTA0NGZjYzhhZDc5MTNkMmZmMzQ2NzBmNTgwNDNlZDhjIHJlbGVhc2UyNi1tYWludAorODEwMTIgMmM5ZTA5NWQ1MmYwMGRkNjNiM2E5ZDc3MTcyNDNlOWQ0OGVmNGQ4MSBsZWdhY3ktdHJ1bmsKKzgxMDEzIDUwZmEzZjRjODI5YjM0MWI2YWFiMDAyOTQ1ZmE5ZDRiMmM1OTk3MTMgbGVnYWN5LXRydW5rCis4MTAxNCBkZDFjOGZmMmU5OTAzMDgxNzQwMDljYzVlZGNjMGNlOTJjNzU5YjhiIHB5M2sKKzgxMDE1IDExMzliNWQ5OTZiMDA0MTQ5MmIwYzA0Zjc4ZmY2MGU4NDE5ZDZmODUgcmVsZWFzZTMxLW1haW50Cis4MTAxNiBiOTY2ZDU4MzVkM2IxMTBhZTM1MWVlYWE5ZDFiMzUyM2Y2MjNlZDU4IHB5M2sKKzgxMDE3IGQzMTVhNzlmMWVjY2VlNTQ1MmNiYjE1YTQ3OTJkMjY4NmIyNThmYmMgcHkzaworODEwMTggNjc3NTExZWRmMDVjNzgzYTllYzkzZTNjMWYwZmVkYjhhMDQxM2RhNSByZWxlYXNlMzEtbWFpbnQKKzgxMDE5IDAzNzUzMzE2ZjgxZjdiMTM3ZmQ1ODlmYjZjYTE1MDEyMzI2OWMyMTQgcHkzaworODEwMjAgNmEyZDBjYzdkNjA0OWNhNGUwMWZkNWZiZmVkMDEyYWRmZWQwM2M1ZiBsZWdhY3ktdHJ1bmsKKzgxMDIxIDMwM2RiMjI2MTE1ZGQ2Y2RmMDkxYjAyYmEyNzIyOWU3MjA2ODQ4M2YgcHkzaworODEwMjIgNzI0ZTg3NWIxOTQxYzU3ZjFiMjFkNzQ2OWMwZjlhNTY1OGFiZDUyYSBsZWdhY3ktdHJ1bmsKKzgxMDIzIDIyOTRiY2Y0MGU1MTk1N2QxODBkYTFmNTRkNjNjNmNlMmM5ZTllNjQgcHkzaworODEwMjQgM2RjMjVkMDI0YTUxYzM0YjVmZmM0NjQyMDk0YzBhNTljMWM4MjFlZiBweTNrCis4MTAyNSBmOGMxOWM1ZjVkZDI0ODNhMDE0NWQ2OTEyYjlhYzI4ZTMzZjNmNmJlIHJlbGVhc2UzMS1tYWludAorODEwMjYgZDY5OGZiMDU2YTQ1OWM5YTJlNDBjYzI2NDRhNDQxN2M5NjFhNGY3OCBsZWdhY3ktdHJ1bmsKKzgxMDI3IGI2ZTAzY2E4YTIwNmRlZjMzMTYyOTkwOGQ4NTE5OTkyNDA5YTk4ZGEgcmVsZWFzZTI2LW1haW50Cis4MTAyOCAxOWFhYzg0YWMxZGFkZWJhZjhiN2Q2YTExMGI4Yjg1ZGFlOGZhOWI3IHB5M2sKKzgxMDI5IGZkMjUwMzAyMjNiMDcwMjcwMDJlN2Q2NTk1NmU0ODAzY2M3MDZiN2EgbGVnYWN5LXRydW5rCis4MTAzMCA4NGJhZjYyNThjM2JmMzg1Mzk3NTJiYjNjOTBlMWUwZWQ3ZGJlMTUxIGxlZ2FjeS10cnVuaworODEwMzEgZTM4MzM1ZDRkZjkxZGU2NDI3YzlhMjFiNTQxZmNlNGY4MmQ5NTY1YyByZWxlYXNlMjYtbWFpbnQKKzgxMDMyIGNhYjE0YmUwYWRhMTU5ZGE5ZjdkOTRjNWVlN2M1NmU2MWUxNTdiYzYgcHkzaworODEwMzMgZjE5NzQwN2JkYmEyZjdkNjQ0OTIyZWY3OTM4OGQ1YzhiNGFjODU4YSByZWxlYXNlMzEtbWFpbnQKKzgxMDM1IDVlYTBmNTg1OGI3MjJhMTJhN2U5YTkxNTkyOGIxNTNmZjQ4MWFiNjcgbGVnYWN5LXRydW5rCis4MTAzNiBiYzBjZWE1ODQ0Nzg0N2YyM2QxYjQyNjA0ZmRiYzUwMzQyMDY3N2ZjIGxlZ2FjeS10cnVuaworODEwMzcgNWNhZDEwYjI3N2E0NzgzMTM3ZTgyODZiYjMxNDNiYTk5MGU1ZGQzNiBsZWdhY3ktdHJ1bmsKKzgxMDM4IDY5Y2U2YzkzN2Q2ZWM5ZWU0Zjg3YTg2OGQ2ODUwYWYxNWQ4NzY4NzkgbGVnYWN5LXRydW5rCis4MTAzOSA0M2QwMTY5ZGY5NDNmYTAzMzVlN2NmZmYxMjBmNzVlZmFkNTMwMGQ5IGxlZ2FjeS10cnVuaworODEwNDAgMzEzZjg1NTg2ZWY4ZWI4MzU0YTAxZDE1NDQ5OWUwNDM3MjcxMWZkMiBsZWdhY3ktdHJ1bmsKKzgxMDQxIDY3ZGMwYTk4YjhmNmZjOTI1ZGQ3M2U3N2MwMDE5ZDFkYTc1NzVjY2IgcHkzaworODEwNDIgZmM0NmU0MzcyMjdkNjI5MWQxMWY4OWZkNTAxMjk0MWQzOGE1MzE1MCBsZWdhY3ktdHJ1bmsKKzgxMDQzIDVlYjBlNTQ1MTYxMjQ3Y2ZlNmZlZDIwN2JjY2UxZTNkN2U0M2YyODIgbGVnYWN5LXRydW5rCis4MTA0NCBmYjE5ZWM1Nzg4NTMzMzljNjAwMGE0ZWY4YTYyZWY4Y2FjY2RjYWMyIHB5M2sKKzgxMDQ1IDQ4OGRiZTI2MmY2ODFkNGExOGU5MTgyMTZiZWQzNzY1MTE1ZjI4ODMgbGVnYWN5LXRydW5rCis4MTA0NiA3ZjVhNTcxYjFlY2I4YTI4ODA3MmQ4ZWRlN2I5MGFlNDFhNTQwNmJlIHJlbGVhc2UyNi1tYWludAorODEwNDcgMjBhZTgzODIxZWYwNTM3MjkyZGYxZjBhYjlkY2EwMTQ0ZjkwZGE1ZiBweTNrCis4MTA0OCA4YzQ5OWNiMzcyM2E0YjA5ZTUzYzJmM2JkYTIzOGFkNWZkN2U2NmRlIHJlbGVhc2UzMS1tYWludAorODEwNDkgNzM2ZDZjZTliNjBiYWE5MzRkZDRiYWQ4Y2Q0ZjRkNTM3ZWUyMDU0YSBsZWdhY3ktdHJ1bmsKKzgxMDUzIDk0NTczOGUxODcyNjM5MTRmZWI0MzlmMjJhZDAwNWJiNGZmOTdmNWEgbGVnYWN5LXRydW5rCis4MTA1NSA2YThkZmZmNmQyNDFiNTAwMTJiOTA3NTM4MDY1OWRiNTMzYWZkOTRmIGxlZ2FjeS10cnVuaworODEwNTYgZTY0Nzk4YjM2ZWE0ZGVmMDZhNjcyYWY3NzE0YWI5NDVhOGEyZDRhMSBweTNrCis4MTA1NyBkYTZjZjhmM2Q4YzJlYzg2ZDI1OTgyOGYzYjI3NjY5NTJjYTg3YWJlIHB5M2sKKzgxMDU4IGYwMjViNmIwZmUwZjZmOWJkYWRiM2ZmZGJhZTRhNzVmMDcxY2E3MGQgcmVsZWFzZTMxLW1haW50Cis4MTA1OSAzMTQ4ZDcwNTI4YjYwNjcxNjVjNzA2NzRlYWU5NzNjMzdjOWFmMzg1IGxlZ2FjeS10cnVuaworODEwNjAgZTc2MjllZmM1NWQwMDdlNTI0N2Y2OWQwNDczYThlYWU5YTQyNjQ2NSByZWxlYXNlMjYtbWFpbnQKKzgxMDYxIDBmODUwN2Y1NDk0MjllMGMyYTQ3MmM5NzdlMjU3OTM2NDMyMDI5MDQgcHkzaworODEwNjIgYmJlOWY5OGEwYzAyMGNlZGU2NjdmZWEzZDkxODZmZThmN2NlZDg3ZSBweTNrLWppdAorODEwNjMgODI5YTg2ZTExYmQ3ZTE0ZTkwZGJkNjRiNGI3YzMxODQ4MzNmZmUzYSBweTNrCis4MTA2NCBmMTM1OGFhMzNhNmUyMzRmZDE3NWQ0YzY3NzkwYTdlOWYwNmFkODdkIHB5M2sKKzgxMDY1IGNiZmQyN2RiOGRjMjc4MDdmNjk5N2JjY2Q4NWJhMjg3ZjM0NWFiZWYgbGVnYWN5LXRydW5rCis4MTA2NiBmYzllMjE1OTY5ZDgzNmEyYWYzMGUxOTYxZThhNjM3MDBiOGFjY2UyIGxlZ2FjeS10cnVuaworODEwNjcgNWFiMDQ0Mzg1NmNhYjhhMmU1MzQ0NzA0NjY1ZGJmZjgxZGI0Njc3YiBsZWdhY3ktdHJ1bmsKKzgxMDY4IGQ2MDRmYWI3NDlkZDc0MDNiZDhkNDIzYWYzMjNjZTYzODBlNzRiMmIgcHkzay1qaXQKKzgxMDY5IGM3NTUxMmE4NWZkMWFlYzNiYTMzZWU3ZTYxNjNjYWI0N2EyMjZhZjMgcHkzay1qaXQKKzgxMDcwIGI2NmViYjc3NzU2OGIwZTllMjBhYTU3OWJjMWQ3MmVmNmYwYTM0MjUgbGVnYWN5LXRydW5rCis4MTA3MSBiYTBmZTAyNGU4OWZkNGNhNTU1NmUzMTVkOWQ5NTVkZTQ4NGFhNjc4IHB5M2sKKzgxMDcyIDQ1NDA4Y2I0YjcyMzJiOWYyNGQ5Y2NjYjIzNDEwNDFkNDM5YjEzNTggbGVnYWN5LXRydW5rCis4MTA3MyA2NDlkNjcxMGE4MWZmNzU2ODUzMDY0ZGMzOWFjZmFkOGFiMzM3MzliIGxlZ2FjeS10cnVuaworODEwNzQgZjgwZTkzNTgyYjdmZTZkZTgzM2VlM2M0ZmJjZDRkZWYxODc1NmE2ZSBweTNrCis4MTA3NSAwMDIyMGViZWVkMGE4ZjI0YjRjZDdkMDM1NjM1YWJhZDRmMGFiZjY2IHB5M2sKKzgxMDc2IDhhYzBmMGRiNWY1OTc1ZmVjYTdlZTQ3YmNlMTE4YWE4ZDMzMTllOWYgcHkzaworODEwNzcgZjE1ZDZmMWEyZmEzMGVkODNkN2MyMzVlNmQ3NjNjMzc0YWY0NGNmYyBsZWdhY3ktdHJ1bmsKKzgxMDc4IDFmNjlmMjgxOWQzMTM1N2Q0ZWRlYmIyNjdlZTNlZmI0NDllZjM5NDIgcHkzaworODEwNzkgYzBkZDMzYTVhZGJlNmM1YTJhMDgyNjQzMjFkMzliODA4MmNiZjBhOSBsZWdhY3ktdHJ1bmsKKzgxMDgwIDBhYzExZGI1ZmM5NmU0NzA1MzlkMmVjYzVlMmNmZWQ1OWNlYzI4NDggcmVsZWFzZTI2LW1haW50Cis4MTA4MSAwMTE5NDBiYWVmYjBiZTkxMzU4MjAxMjA2Y2Y0NjI2NDgyZjkyMTE1IHB5M2sKKzgxMDgyIGZiNjJlM2E5ZDg4NmZmYmFhMWM0NzNmYjg4MTUwMjlhMDg4NTMzNzAgcmVsZWFzZTMxLW1haW50Cis4MTA4MyA5YzMyMWFhZWVmMTI2MDg2YTM4MjdjMjNlMzQ2ZjVlYzMwZmYyNjU2IHB5M2sKKzgxMDg0IDgxYTNhMzIyNmNmNWRkNDViNGQ3MmIxOWE4ZGYzMWFlYTI2M2QxNDMgcHkzaworODEwODUgOWRmZWQ4ZGQxYzZkOTg5NTQzYTQyNGM0MDhiYjk5NmJhN2VjOGM4MSBweTNrCis4MTA4NiAzNTNmNDBlZWQxYmM2ZDRlY2Q3ZmYwZTI1Nzg1YWU2ZmRmMTQ5YmUwIHB5M2staml0Cis4MTA4NyA0ZmQ3ZmVhNTllNWIyYmNmMzcwYTY1Mjk5YzE0YjZiYjQyY2Q5N2Q2IGxlZ2FjeS10cnVuaworODEwODggM2U2Y2E0YjAzYzc5YTRkNGY1NmVhZjY5MGFkYmZhMjhhMTk0OTMyMCBsZWdhY3ktdHJ1bmsKKzgxMDg5IDgxMWZjNjMxOTBhN2NkMWE3MmQ3ZmY1ZTdiODE2YWRiZDRkZjgyMGYgcmVsZWFzZTI2LW1haW50Cis4MTA5MCBkZmY2ZmMzODg4YzYyZTk4ZTljNGNlMDFlNTc1OTkwN2UwNDdlNmZiIHB5M2sKKzgxMDkxIDg2ODAxZDFkOTAzODZiYWIwNmFlZWE5NzJiZGZjOGEyZDEzN2Y1YTcgcmVsZWFzZTMxLW1haW50Cis4MTA5MiAzMGY0YmJiYWRlMGI3MTE3YjUzNzkxYzg1MDVjYmIxZGQ1ZjIzMGUyIHB5M2staml0Cis4MTA5MyA0OTU5YjZmNWJjODZjZGM1MDdkOGRhNjQxMDk4NjNhZjliZWMyYzg2IHB5M2staml0Cis4MTA5NCA1ZTM5MzRhMzFjOGRjMDI4ODViYmQ4YTI5OGY0YjFiZGMxOGY0Y2Q4IGxlZ2FjeS10cnVuaworODEwOTUgYWYyZjg0ZTY2MjUzN2MzOWY1MGI4YmFiODRjZmQwN2JkNzhhOWY1ZiByZWxlYXNlMjYtbWFpbnQKKzgxMDk2IDU0ZGMxMDk4OGYxNTRjMGRlZmU2YWFmNjYzMzFlNjliNzhjYTc4ZTEgcHkzaworODEwOTcgZWY0ZGUwNTNkNTc3Zjg1ZmU4YWZmOThjNzNmOGM0NjZlMzhlZDAwYSByZWxlYXNlMzEtbWFpbnQKKzgxMDk4IDNhOGNhNjdhZTQzMTFiMDQ5ZDFmOTk4YzU2OTAwODE0MWJlZThjZTUgbGVnYWN5LXRydW5rCis4MTA5OSAyYTcwYzgwMzQ5YjBlZDBhMDJlYjAwYjc3NTYxMjliMTAxYzJiZjQzIHJlbGVhc2UyNi1tYWludAorODExMDAgNDhkOTY2NGM0N2EzZjU4NzMxMzE2OGYxNTc4YjRmMjliOTkxOWY5MiBweTNrCis4MTEwMSA0YjEwZWY4YTAyNGNlZmEzMzA3N2UxYzM0ODRjMmU1OWEzZjA1Y2QyIHJlbGVhc2UzMS1tYWludAorODExMDIgMjFhODFjN2FhNGJjNTBmNzhhMzAwNzgxMzFlYmE4YThlZWUxMzgyMCBsZWdhY3ktdHJ1bmsKKzgxMTAzIGI5ZDRhZGY4YjE3ZTlmZjBhYmJkNTcxZDc5MzI1MjVmZmQxNWI4ZTQgcHkzaworODExMDQgNGI4OTYzY2Y4MGIyODZkNjhlNTE4ZWE2NDYwYjdmYzQyZWIzNjU1NSBsZWdhY3ktdHJ1bmsKKzgxMTA1IGI3NjA0ZWEyZjQ3ZTdmNWUwN2FlOWYxNzA2MGFhMTBmN2NiZjQ3YTQgbGVnYWN5LXRydW5rCis4MTEwNiA3M2YzYjg4NTE3NWRiMzdlMDFhMDk2MTU3NDcyZGFhMmRkNjA2ZmY2IGxlZ2FjeS10cnVuaworODExMDcgNzczNzE0ZTVlYWFlYzk2MzAxZDFjZDliZWIyNmExZjM5ZDBjYTIwYiBweTNrCis4MTEwOCAyZGRjZDMwNTMzZjcyZmQ2MDc2Nzg0ZjY5YWEwOGExODg1OWZkZWEwIGxlZ2FjeS10cnVuaworODExMDkgNmY0Nzk2MGI1NjQ3ODlkY2Y4ZTgxODNhNTI1NjI2ZTg2NWFiYThjYyBweTNrCis4MTExMCBlZmFmNjJjMmNmNzU5OWI0OGNmM2RhZWYyODc3NGIzNjQyMzZjODdkIHB5M2staml0Cis4MTExMiA1ZGViZWNiNDgyODJkYWEwNDg4Y2I3MTAwZWFiMjU3ODNmZGFjODNjIHB5M2stY2RlY2ltYWwKKzgxMTE0IGI2NDY0MDE0Y2FhMDc2NzZiY2Y5Y2MzYmMwODNlMTJkODViYjc3YjcgbGVnYWN5LXRydW5rCis4MTExNSBlMTgzNmE3YjZiNmU3NjljOTY4MzIxMTM1NmI5YWY1NzRjZjIzNmY4IGxlZ2FjeS10cnVuaworODExMTYgMWIzZWJlZDhiNmM2NTJhNWU2YmFkODRlY2Q4ODllM2MyNWFkMjM5MiBweTNrCis4MTExNyAwMTNkNzZhYTg5NTFjMmM0ODYyZTdkMWE0YzRlMmYxOWY1Mjc3MTgyIHJlbGVhc2UyNi1tYWludAorODExMTggMzMwMjczZWM2MDI4MzlhYmViNzgyNDMxMGY0YjI1ZDA2NDFhNjQzNiByZWxlYXNlMzEtbWFpbnQKKzgxMTIyIGMxYmE4ODE2YjE4N2U5MzU2NWY3MjhjYzQ1ODZiMzljYTgyZjljYWIgcHkzay1qaXQKKzgxMTI1IDllYzdhY2YwYTAwNTg3MGZlODg5NmUwM2Q5MmI4ODk1ZDc2YzBjOGUgbGVnYWN5LXRydW5rCis4MTEyNiBiNTU0ZWVhMjYxMGNjOGQ3MDJlNjMzMjM3NDQxMDZmNGQ1MzMxNzdhIGxlZ2FjeS10cnVuaworODExMjcgOTFmNDYyYjkwNGIxZmQyODY4ZGUxMjZkMzc4OGVhNjViOTM0NTU4YSBweTNrCis4MTEyOCAzNGE2ODZmYmZmZWI5ZTVhNjViMzNhOTEwMmU1Mzg0Zjc5MWNiMjFiIHJlbGVhc2UyNi1tYWludAorODExMjkgMTAzNWE4ZmQ3ZGZiOTU3MTFjNzU0NThmMzAwZDAyMDYzZmQ0M2RjMyByZWxlYXNlMzEtbWFpbnQKKzgxMTMwIDA2YzZkM2E2N2MxN2IxZjg3OWJmYzE2YTRlOGZhZGU1ODQ0ZTY2NDAgbGVnYWN5LXRydW5rCis4MTEzMSAyYzI5Y2Q1NjY4Yzc3Mjg1MmU2M2ZiYWQxNmQyNTFhZjdiYjQ3Y2RlIHJlbGVhc2UyNi1tYWludAorODExMzIgZTU1NjMyYWE2OGU5NzQyZWQ0ZWVkOWZkZGQyNWQ5MWYwODVlZjNiNiBweTNrCis4MTEzMyA5MGE5YTM0ZTVlYjUyM2MzZWFlMmZjNjBlMTRkNjA3ODNmMzlmZjMyIHJlbGVhc2UzMS1tYWludAorODExMzQgODQxMGY4M2ZkMTU5ZjZlZTUwODcwYmU5ZjI0MjQxZDg3ZDkyOTVjMyBweTNrCis4MTEzNSA2OGJjMzU3NzVkMzEzNDAxNzU4MTIzMTE2MGVjMGQxYmJlMzhmYzA2IGxlZ2FjeS10cnVuaworODExMzYgYzgwNmVkZjhkNzM0MGVmZjFiMmZiNjc1NDM4ZmRiZDFmMWJhZjM0NCBweTNrCis4MTEzNyBlYmE0OTQ3OGFhZDk2NTE3NmFhMGZhMzE1NDY2MzgxZThiNTFlNTkwIGxlZ2FjeS10cnVuaworODExMzggNDMxYTE1MWUxMDJkNTI2Y2U4MmNlZDUzNGZiY2IyZTg1NTBhODFmOSBweTNrCis4MTEzOSA1MzYxZjZkZDEzOTk2MzljN2ZmYTEwYjM4YjU2MzViZmRkYjZmYmZmIHJlbGVhc2UyNi1tYWludAorODExNDAgZWU1OTZkYTg2MmY4MjdlNmU5OWM4NWYzYjlhYzRkZjQyMjJjMGFiOCBsZWdhY3ktdHJ1bmsKKzgxMTQxIDZjYmQ0YmNhMDk3YTBhZmQzOWM4YjVkMGY3ODRkZjVkNDY5NDNjODggbGVnYWN5LXRydW5rCis4MTE0MiAxNjk4YzU1YjJhZjk0YmNlNTQwODU0YjA4NzUzZTVjYjNjMzFkNWNkIHB5M2sKKzgxMTQ0IDkzNzkwODQ3MTc0YTc0N2FkNGMzZmUzZTdmZWQzNTdmODYwMWUyMTkgcHkzay1qaXQKKzgxMTQ1IDA2MzY0ZGFkOGRkZDE1YTRmMDQxZTdhNmU3ZWNlMWQwZDJmNTA1ZGIgbGVnYWN5LXRydW5rCis4MTE0NiBlNGYyNjk2MTVhMjVjY2UzMTIwMjYzMDUzZjEwNjZhODFlMjBmMTZmIHB5M2sKKzgxMTQ3IGIzODZlYjgzNDc1ZjQ5ZjY3YWYzZGM3Y2VjZDhkZjQyZjg5MTMzYjYgcmVsZWFzZTI2LW1haW50Cis4MTE0OCBkYTNmYTg4MWE4MDAzOTA1MjBiZmZlNjk5ZGIxNDRhM2Q2YWM4ZTYxIHB5M2staml0Cis4MTE0OSBlMDk2YWFlNTM1YjliNWJhOTNhN2NiNzMxYzI4M2NiZjFiZmI0YjVmIGxlZ2FjeS10cnVuaworODExNTAgMmZhNzNiMjliMzA1OTc1MDdiNmZkMDY4ZGYzMmZhYzI4YTMzOGI1NCBsZWdhY3ktdHJ1bmsKKzgxMTUxIGNiOWUwOWYzZmE4ZWVjM2M5YTQ1YmE0NmVmYmQzZDhkNzIwNDJkZDAgbGVnYWN5LXRydW5rCis4MTE1MiAzMWNmMWIxMjUzMGE5ZDBhZWUzYzI1ZGM4MzI5OWRjOTgwZjc0MmViIGxlZ2FjeS10cnVuaworODExNTMgYWU0YmI2NzAxMDc4ZTBlM2JjNDU3ODRiOTA0YTRlMDZlNTY0NGI2MyBweTNrCis4MTE1NCBjYTQ5NmJmYWNkMWJlNWI3ZTA1NDNhMGFmOGE0ZWYxOWYwNzZlNzFkIGxlZ2FjeS10cnVuaworODExNTUgY2NmMWNhNzNjMGU5Nzg5ZTVlNjg0ODM5YzY0ZjRkMTU4YjNkMGE1MyBweTNrCis4MTE1NiA5ZTViNzNlYTZhN2NlMWZhMWM3NjQ1NzRiZDg0MjFlZjNlMWZiMTViIHB5M2sKKzgxMTU3IDlmNjJmNTg2NWI0NDFlYjgwOTkwYTcyMTI5ODNhOTMyYTQzYzFmOTEgcmVsZWFzZTMxLW1haW50Cis4MTE1OCAyNjIyNzk2YWVjYTk0ZWEyZmI2NGVmM2UxMTg0NTVlMDU3N2M4OGYxIHJlbGVhc2UyNi1tYWludAorODExNTkgNThhNTZhYmEwZWIyYzJlMjRiNTNlYTlhNTFkNmZmNWU0YTM4MzJhZiByZWxlYXNlMzEtbWFpbnQKKzgxMTYwIGE2YTY3YjczNGQ4YjM2MDNiYzYyNTU5MzcxZThjNGUxN2ZmNWUyY2EgcmVsZWFzZTMxLW1haW50Cis4MTE2MyA3NDJmMTliNDcwMjA0Yjg1YmZkYjM0ZjhmOGMwMWJlMDNlNzk2NDEyIGxlZ2FjeS10cnVuaworODExNjQgMGNiMGZhZDUxNGYzNzUyMWM2NmEzYTc5YTVjN2YwMDg1NzhmYjU3ZCByZWxlYXNlMjYtbWFpbnQKKzgxMTY1IDNiMjQ3YWY2Y2VlNzkyZGNjYzQ0NmVjNmM1NGI1YjIwZTEwZDk5ZDIgcHkzaworODExNjYgMjUyZmU1YzRjZDUzZjg2ZGQ2OWFiNGIyMTE5YTUxN2RmZWI5OWE5YyBsZWdhY3ktdHJ1bmsKKzgxMTY3IGVhZjgxYTEzMGFkNmM0NDk5Y2UyZDA4Y2Q0MWYzMWVlYTBkZTU2NTYgcmVsZWFzZTI2LW1haW50Cis4MTE2OCA5ZWUyMjhkMDg5ZWRkMjhmODZhY2VmYzhjMDljNTUwZmVmMTFjYzMwIHB5M2sKKzgxMTY5IDJiMGFmNjlhZWY5N2QyMjhlY2Y3MmMyYThkMzE3N2IxNGYwYTU4ZDggcmVsZWFzZTMxLW1haW50Cis4MTE3MCBhYjMxYjAwOWExZWUyOTM0YjBiNmU4ZjE1Y2I3YjZkODgxNGE1NzU3IHB5M2sKKzgxMTcxIDljMWEyYmQ1MTUyOGMzYTdkNTUyYzAwNTIzZTM1ZGIyYzg4MGI4MDMgcmVsZWFzZTMxLW1haW50Cis4MTE3MyAzMDlkOWNmODQ4MDg1MGU0ZjhlYWIzOWVmOTlhMjkzODdmY2Y1OGJjIHJlbGVhc2UzMS1tYWludAorODExNzQgNTlmZjdkODEyYWUzNDJmNjUxNGUwM2QxN2Q0NTFhY2FjNDgzOWQzMCBweTNrLWppdAorODExNzUgMjM2OWQ0ZjE4OWU0MmM2Nzc0NDE1NTAzOWJmMDk3NDM5MDViMzRmMiByZWxlYXNlMzEtbWFpbnQKKzgxMTc2IDExNGM0YTQyZmMxZDAzMDczYTNkZmVhMWUzMzQ5YWE5YzgyMDkyN2MgcHkzay1qaXQKKzgxMTc3IGE4MTRlN2U3MjkwMGZhZjQ4ZmQ4OGYxMDcxYTJkYTU1YjRiNmVkZTUgcHkzay1qaXQKKzgxMTc4IGZkZTliNDM1NDVmYmFmODNjMTE2YTk2MWU1NDI5YTZhNjAwMDk3MmQgcHkzay1qaXQKKzgxMTc5IGU2YmZlOTNiNjViYmRhMjQzZjUzMzJkMGZkOWMyY2JmNzQzNDQ2NTggbGVnYWN5LXRydW5rCis4MTE4MCAwZDAyOGQzNTkwZGEwM2Q4OTU3ZjhhNTNjYmJlYjg4M2VlZThmYmU5IHJlbGVhc2UyNi1tYWludAorODExODEgZmE5MDJmOGUwZGIwZWRmODBhNjZiZjM3YWY0NmExYjc4YjUzODM0YiBweTNrCis4MTE4MiAwZTM3YTk1Y2RjZmI1YzczZjc3NmRmMDhkNzVmZTUyM2IzYjkxZmZjIHJlbGVhc2UzMS1tYWludAorODExODMgNzcyMDM2YTZmN2VmMDI4NzljM2M1ZWYyN2ZjZTZkNDcwZGM1YjQxNSBweTNrCis4MTE4NCAzNjNlZmZiNWY3MjdmODg2NGQ0MGQxN2U5NDQ0MTIxYzBhYWZhMzRjIHJlbGVhc2UzMS1tYWludAorODExODUgZWRlZjg4ZjZmMWFiNjExMjc1NzE2ODZlY2ZkMzkwYzAwNzM0NzM1NSBsZWdhY3ktdHJ1bmsKKzgxMTg2IDA1YTJhYjI3MWI2NWY0ODM2ZDk2MzI0YzIyYWRmMDY3M2QzZGM4N2UgcmVsZWFzZTI2LW1haW50Cis4MTE4NyA5OGMxNjEwNDAwMDJjNTI5MzhiYWFhOGFmNjBmNzhhYmU4MmU4ZDk5IHJlbGVhc2UyNi1tYWludAorODExODggZDk3MmQwNTJlZTIyMTdhYjM4ZGYwODUxNTUyZTBlYTM2YjI1M2RiOCBweTNrCis4MTE4OSBjNGUxMWIwYzdlZTUxODNiZGRjMjJjMmFjYTRmYTdmNzc2Y2NjMzIyIHJlbGVhc2UzMS1tYWludAorODExOTAgNDdiNGRhODZiOWI5ZjVkMGYyODhkMGM0MjgzMDJlMGFjZjUxNDE5MCBweTNrCis4MTE5MSBlYTU2ODVkOTk0MGEzYjk5NThiM2UwNDc1MmEwODE1NTgxNGZhMzIzIHJlbGVhc2UzMS1tYWludAorODExOTIgYmI5YWUxMjYzM2E5OWE4NGFiMGRjY2ViMTVlNjVhNTk3MDExMzYzOCBweTNrCis4MTE5MyBmM2VhN2NkNzM1ZWNlNzQxNjIyYTg5MTI3M2EzYzBhOTg4MmJlODNlIHJlbGVhc2UzMS1tYWludAorODExOTQgYjViYTdlYTQyNDZiMmNlNmYxMmY4MzdiOWQxNTkxNzE5NTk1M2UyNyBweTNrCis4MTE5NSBlOTA5NjAxZTAyMTk5ZDI0MDU4NzZiOWUxNWZjNWY4MGU3YTI3Mjk3IHJlbGVhc2UzMS1tYWludAorODExOTYgMWUxNDliNTBhY2E2MThiMzdjYzk5Yjc4N2RkZTMzYTQwNTU2NDI0YSBweTNrCis4MTE5NyA5MzExOTE4YzA2NDlkYzk4NjkzMDMzMzg1MTdmYjM3YmM5ZTY3MjVmIHB5M2sKKzgxMTk4IDA0MmU2YTM5NmE4NjQ0NzJlMmVjMDJhYTVhOThhNGM5NGRjNzA4ODYgcHkzaworODExOTkgZGNmNDcxMTcxNThmMDEyODE5OTg4MmY1MzRmNTljMTg2ZDViN2Q3OCBweTNrCis4MTIwMCBkMmU2NzU0Y2JiZDVlNzQ0NzY3N2RiYWVkYTQ4MGZmNTUwNmUzZmU5IGxlZ2FjeS10cnVuaworODEyMDEgZTRkZWRmNTRjNDFlMjQxMjg5OWJhN2IwMTcwY2RmYmYzYzM5NWQ5NSBweTNrCis4MTIwMiA5YWRlM2U2MjM3MTBmMDQ4ZGU5ZWJjZWZkNzVkMDY5ZmU1OGQ5YTZjIHJlbGVhc2UzMS1tYWludAorODEyMDMgZWYwZjYzNGFkNWZhZmQ3YjU2ODlmOWZkYTNkMzcwNDk0YmY5MDgzMyByZWxlYXNlMjYtbWFpbnQKKzgxMjA0IDk5MzgzZjFiYzE3YzhmNTE1NWE2MDhhZjE0ODcxZWZhNzcwZjYxMGYgcHkzaworODEyMDUgYTBhNTM1OWY4ZDEzNjlmMmY1YWQzZDNhM2U2ODg1OGI4ZDdmMDBlMCBsZWdhY3ktdHJ1bmsKKzgxMjA2IDE4Njg5MGQ3ZmU3MjQzNjFhYThhMzViODAyY2FiMDFlZTk3YWNmZTkgcmVsZWFzZTI2LW1haW50Cis4MTIwNyBjYzliODI4MGUzZjVmZDBhZmQ4YjM4OWY3OTE5MmE3NTIzODIxMGMzIHB5M2sKKzgxMjA4IDc5NzBjNDk5MDE0NDI3YzQ2MmNkNTQyZDQzODQ4YTg2ZjNmMDA0N2MgcmVsZWFzZTMxLW1haW50Cis4MTIwOSA1NDY4ZjNhZWU0YWUxYjExMjBjMWNkZjRhMzIwOTliYjE5OGI1Y2Q2IHB5M2sKKzgxMjEwIGY1OWYzYzczNzM0ZGIzNjU2MDAyY2Q3OGVlOTc0MDcyZjdjMmU1NWQgbGVnYWN5LXRydW5rCis4MTIxMSA3NzlkYmM1MGYxZjg4ZGVmNzI5MzNlM2JjMDk1MWVmYjIyNjc2NjRmIHB5M2sKKzgxMjEyIDkyZDFjODgxOTA3MWZjMmIxYTgyOTAwZTQ4Njk2OGIyYmNiMTc3N2YgcHkzay1jZGVjaW1hbAorODEyMTMgNDY1MmZlMGMzYjg5NzRhZmQwODY5MDE1ZTljZGEzMjAwYWNiZjJjNSBsZWdhY3ktdHJ1bmsKKzgxMjE0IGVjMTk5MTllMjdjZmU2OTA0ZDdjNjk0ODBjYmVkYTNhZDcyMjE5ZjEgcHkzaworODEyMTUgN2YwNTNlMjViMzM1MmQ0YTZjOGQ1ZjNlZTMzOWZjYzVkYjRjYTNlMSBweTNrCis4MTIxNiAzNzhiMWNkODQ3MmVlZmIxZGQwYTA2NjhhMWFlOTI5NzYzMWRkMTQxIHJlbGVhc2UyNi1tYWludAorODEyMTcgOWU0Mzg1ZGIzNzBlZDg3YmJhYjI4MGRiNmQ3ODQxODkzODZiZmYyMiByZWxlYXNlMzEtbWFpbnQKKzgxMjE4IDY5OTBjNmRiN2MzOTk0Yzg4NDRkNDZlNjYyNDA0MGY4MDc4ZWVjNjggcHkzaworODEyMTkgNGM5NThlNDg5M2JhNjlmODE5YTZiZWU3MmYxMzE2YzAwYWE3ZmU0MSBweTNrCis4MTIyMCAxZDRkYmZhOGVkNGYyYWY1YmRkZTBlNGE2NDQyNDdjMmE1MzdkYzZhIGxlZ2FjeS10cnVuaworODEyMjEgY2YyNmYwMTE0OTZlZDJiZTNkOGJmMmIzMDQ3MmE0NGIwZmViMTQ0ZiByZWxlYXNlMjYtbWFpbnQKKzgxMjIyIDgwMDIxNDhjMWExYjdkYTBmOTBjOWM3YjU3ZWE0YTEzMjhmZjA1M2QgcHkzaworODEyMjMgY2E5ZDJmMGE4YjhhY2FhMTFiNWM5ZDQ2OTcyMDY2YzJiNGZjMjI0NiByZWxlYXNlMzEtbWFpbnQKKzgxMjI0IGYzNmUwZTJkYWY0MzJlNmZjMzk0YTIyZWFiM2Q4MGQ4ZTM5YmI0MjAgbGVnYWN5LXRydW5rCis4MTIyNSBmMzUwYWNiY2U3OTBmMWU0YzJjN2JhZDFiYmYxYWZlNDU4YWFlZTc4IHJlbGVhc2UyNi1tYWludAorODEyMjYgZjVjNjQ1NWMxNDNjNjc1NDczYTlhN2U3NTcwMmI0ODQyYzE1ZmZjNCBweTNrCis4MTIyNyA2ODg2ZWU5Y2I3MmM5MDhkYWQ5YmM3YjM2MmMwZDZkMTI0NWIyM2I2IHJlbGVhc2UzMS1tYWludAorODEyMjggZDA4ZGE0NTQ0ZTMxMjE0OGRjMWMzMWJhODNiMDY1Yjc4NDA4NDM1NSByZWxlYXNlMzEtbWFpbnQKKzgxMjI5IGVmMjJkYzA2NWUwZTExYjQzYjlhZmVmMTk5OGI0YzMzM2IxMzBkMTUgbGVnYWN5LXRydW5rCis4MTIzMCBlNTc2NTBhNGNhODFhNjQ3MGUzZGZhZTA0MWZkY2MzZDI3YmM2ODkyIHJlbGVhc2UyNi1tYWludAorODEyMzEgOTY3ODI2ZGQ1ZmM2YzEzMTg0YTg2YmMyMmJjYTM4YThkY2Q2MmVmMSBweTNrCis4MTIzMiA4NDRiZDdiODQyMWI3M2MzYWJjMWI5ZDYxMDI0ODMyNWZhYWI0YmExIHJlbGVhc2UzMS1tYWludAorODEyMzMgNGJiMDNjYzFkNDIxZjZjZTU4ODM2NWFmOTc5OTg1NDIxZWYyZmRiOCBweTNrCis4MTIzNCBiMjlhYjRlNzY3MzYyZWI0ZGNhNzYxNzJkMGE3MmJhMDJmODgzYmFiIHB5M2sKKzgxMjM1IDJjYTQ2MjZkOWM5MzAzNDhlNjUyMmU3MjM1NDYyYmJiY2RhMTMxOGMgcHkzaworODEyMzYgZTIwYTY3N2FmMDAwNDgxOWNmMDg0YzI0M2ExNzk5MDIwNmEyMGFiOSBweTNrCis4MTIzNyAwOGFiYmRjOTliZTY4ZGU3NDJjOWRkNjUwMmQxMjVjYjNhN2Y0ZjkzIHB5M2sKKzgxMjM4IGI0Y2ZjYTVjNDI4ZTUyMTQ3YWViMDA2NDVjMDRjMjg0MThiZGI1ZWUgcmVsZWFzZTMxLW1haW50Cis4MTIzOSBhMDllYjNkNTlmZjdmNjFlZjBjYTY0MWRiMmYzZWE4ODQ2ZDEzMGM3IHB5M2sKKzgxMjQwIGY4Mzc2MTIwMDdkYzlhYjc3NzcwNzkxODUzNzAzN2EzY2RkMTRlYjMgcmVsZWFzZTMxLW1haW50Cis4MTI0MSA4YTAwNzlkOGQxY2VmNDM5M2RjY2JmNzA5NDE5NDhjOWRkN2Q3Y2RkIGxlZ2FjeS10cnVuaworODEyNDIgN2E3YWU0NzZkZjRmZTA0MjUwNWJlOWQ4YTY1NzE0YmFiNjI5YjMwNiBweTNrCis4MTI0MyBjMTc3ODNhZWRjYjg4YWJhZjlkM2EzM2MxMWYzZjBlN2FiYmNiNTRjIHJlbGVhc2UyNi1tYWludAorODEyNDQgOGI2NDAxYWUxMjYyNzgxMjRkNjBhNzcyMTE5NTVmMjlhMDhmYmYyNCByZWxlYXNlMzEtbWFpbnQKKzgxMjQ1IDNmMWE2YjBiNzkwYzdkYzU4NWU0M2RhYjYyODUwZTE5YzIwYjJlMGEgbGVnYWN5LXRydW5rCis4MTI0NiA0ZDI3ZTg4MDcyNGFiZDFlMThiYjQ2NTYxMTA3ZDcyMTBiNmQ1MzNmIHB5M2sKKzgxMjQ3IGJjMDBlNDYzYTk1YmY1ZWRkYTI2MGI1YWU1Njc2YTcxM2M4MWM2MDMgcHkzaworODEyNDggYTMzYmVlMTRhYmM1MWIyMDkzMjdjMGE5NTdkZmQ2YjhiZDJiMDIzOSByZWxlYXNlMzEtbWFpbnQKKzgxMjQ5IGRkZGQxYmM3ZTgzOTE3MGUyNjdiOGJmNDY5NjIzZWQxM2E1NDQ4Y2IgcHkzaworODEyNTAgODk0YzhlNDIwNzRhOTNiMWVlMDVjNmRlZmY5OTM3MzlhYmU5OTgyYiBweTNrCis4MTI1MSA1NTY5NjFmNGYxNmRhNzEyYzgzZDM4OTJiMGYxZmE2OGVjMmJhOTRjIHB5M2sKKzgxMjUyIGYzZjk1ZWQ4Mjc0NGRiMDJlNWExMjQyOWU3MWU3Zjk3NzgyZGMyZGYgcHkzaworODEyNTMgMzFjZWUyY2Y3YzM3NmFhMzNlYzEyOTA1OTAxODg2NTkyZWJlYzkwOCBweTNrCis4MTI1NCBjYTgxNjQ2ZGQyOWNiZTcyYzYyZDRiNTEyNmEwNjg3NjQ2OThhNzIxIHJlbGVhc2UzMS1tYWludAorODEyNTUgZDI5Mzk5MTAwOTczODIwMjM5NzA3NTQ2N2ZlOTRlMDhhMGYwZTgyNiBsZWdhY3ktdHJ1bmsKKzgxMjU2IGQxMmI2NWE3OTgyNGYwMGM4ZWY1NTUwZGFjOGI2MWYzMjNkZmUwNGEgcmVsZWFzZTI2LW1haW50Cis4MTI1NyBjODZlZWI3MzMzMTZiYTM0ZWZmYjgwYTdkMmUzMTVlNGU1YmFlYmMwIHB5M2sKKzgxMjU4IDkzYTI1MTY5ODdlMDAyMjExODdhOGExOWUwOTk0NmMxZWIzYzc2ZDEgcHkzaworODEyNTkgMGIwNGM1Y2E1NzdkMTZkNDc3MzQxMWIzZWVjODJkNTZkMDhjNjU1YiBsZWdhY3ktdHJ1bmsKKzgxMjYwIDc2NjQzYzI4NmI5ZjA1MTk2ZGIwM2Q4ODUxNzk2ZmFkYjcyMTEzNjAgcmVsZWFzZTMxLW1haW50Cis4MTI2MSBiNWYyYzQ0MjFhMzE4NmJlZWU0NTYxMDc2NjIzOTNiNjk1Y2NjMTc5IGxlZ2FjeS10cnVuaworODEyNjIgMDk5MzI2NTM1NjFiOWRlNDdkZmYyNGJmNDk2MzkyYTc0MzA1NzIyZCByZWxlYXNlMjYtbWFpbnQKKzgxMjYzIGVjNTk1ZmYyNTdlMDY0MDFhNTIzYjA0MmE3MDk5ZDIwZDM5NzZkNmMgcHkzaworODEyNjQgZmY0YTk2OGNhN2JiZTc2ZTcyOTYyOWUzNWQ5MGM4YTM5ODQ2ZGJlZSByZWxlYXNlMzEtbWFpbnQKKzgxMjY1IGM5ODFmMGM4Njc4YjQ5ODc1Zjk2Zjc1MmE3ZGZlNTk5Mjc2MDRjOWYgbGVnYWN5LXRydW5rCis4MTI2NiAzOWViOTFhNWY5ZGNhODM2YmYyYWViYTEzZjlkODEyYmE2MTlhZDQ0IHB5M2sKKzgxMjY3IGQ2Y2IyZjEwZTY1ZWY4NzM0OTI4ZmM2YWNhNjBlYTc4MTk0NGI2NTkgcHkzaworODEyNjggYjlhMGYyNmZhMmM5NjMzN2QxMTk3YmQwNjg1ZTE5NGE3MzE0MDFkNCByZWxlYXNlMzEtbWFpbnQKKzgxMjY5IDdmNjRmYWQxNzdkZDZjNmNiOWMxNGU0M2FhOGIyZGEyNmU5MmM2OWQgcHkzaworODEyNzAgZjAxYWIxYjEzZDBhZTc3YTMyNDA3ZTE4ZTAzOGE1NGEyMjRiYTYwMCBweTNrCis4MTI3MSA4NDAzZjUwNmQ5ZTU0YTQ3NzhiZWFkYmQ4NDM4YmJlZWE5NjM5ZmU4IHB5M2sKKzgxMjcyIGRlN2M4NTgwZjllYmU2NjAzMjA5Njg0OWU3MjYwMjRhZDQ2NGViMDEgcHkzaworODEyNzMgYmYxNGI5NjM4YzczYTVlOWE4ZTAyMzJhYjQxN2U4MWRjN2Y4YWM1MCBweTNrCis4MTI3NCA1ZGJkMmMyOWIwZTk2ZWJlMDNkNmI4ZTE4MjJkYTUyYTVhMTFiNzM4IHJlbGVhc2UzMS1tYWludAorODEyNzUgZjBmY2Q2OTE4N2NkMjZkMDc3NmM5NDQ5Y2JiZTJjZjIyYjljNGFlYyBsZWdhY3ktdHJ1bmsKKzgxMjc2IGRlYzg4NzAyYzliYzczNmQzMzQ1YThhNzE0MGE5YTYzNGViYTRjYjcgcHkzaworODEyNzcgMTc1N2JiZWJmNzVhZGIxNjFmMGRjYWI5Mjk4Y2MwYzYwYzkzNDM4ZiByZWxlYXNlMjYtbWFpbnQKKzgxMjc4IDgyZGJmOTNmNzYwZjRlODgwMWViNjVmYmFkMjMzZTA5MTkzNzI5NTIgcmVsZWFzZTMxLW1haW50Cis4MTI3OSBlNzQ2Njg1NDQ1ZGVlYjEwMzViOWI1NThjZWVjMDU3OWY2YWQ5MzU4IGxlZ2FjeS10cnVuaworODEyODAgNjY2NjA3Y2U0YWRhOWRiY2I5NGY1ZGNkMmI3MWZlMDM1ZjZjMWQ1YyByZWxlYXNlMjYtbWFpbnQKKzgxMjgxIDQ1NWQzZmJiMTRlY2I3NWFjYzI2ZGUwNGMzODgwZTg1NmE0NDA5MTkgcHkzaworODEyODIgODcxYmZhMWZkYTU5MGQxMmI3M2M1ZmY3ZmMzZWI5MjhmNzBhYmU1NSByZWxlYXNlMzEtbWFpbnQKKzgxMjgzIGYxZTM3YThmYjJkMTJiODk5YTZhMDE2NDBiNTZhMTVmZWNlOWYzMjMgcHkzaworODEyODQgMWU1MmJlZDg3N2MxNzdmNjQ1ODgzYjA2YjFmMjNjMDlmYzFlZmJjZCByZWxlYXNlMzEtbWFpbnQKKzgxMjg1IDhkYTA4OGQ2YTk1YjJmMWVkNzhlM2M5MzVlYjcxNDU2MGJmNjEyYWMgbGVnYWN5LXRydW5rCis4MTI4NiA2YjM4OTI2YTVmY2RjNGViN2FhNzM3ZTBmYmVmOTJkOTc2MGU0YWY5IGxlZ2FjeS10cnVuaworODEyODcgODBkYzU3MDE3N2M2NjhhNjJiMTI2MjU2OTE3NjMxNWVhZGZkOGYzZSByZWxlYXNlMjYtbWFpbnQKKzgxMjg4IDE5NzUxMWM0Yjc1YTk3YTNjMDRhNjdiMWFlOTQzZjc3NjY4MjIxYzIgcHkzaworODEyODkgZWQwYTY5ZDY2YzExMzUwOGI3NmZmZjBiNWEzMjQ4OWZjNWZiOTliOCByZWxlYXNlMzEtbWFpbnQKKzgxMjkwIGJlYzgxOGE3NjkwMmEyZjRlYmZlYzg1NTJlOTNiY2JjOTNhODMzYWYgcHkzaworODEyOTEgY2Y3NGVjM2UxZjgyNjgyODMyY2VlNmYyMTQ1ZjJmMTE5MmZmNDk1MCBweTNrCis4MTI5MiA2MTNiNjNmNThiZWJmMjk4NGNmZWUyZDQ5MWUzZDRjMzE4ZjNhOGZjIHB5M2sKKzgxMjkzIDg1OWI4MzhlY2YzZGI2NWVmY2I3ZGQ5MWU3NzY3Y2JlMTg0YWE0OTAgcHkzay1qaXQKKzgxMjk0IGQ3ZDgwNDZmN2E1MmZmNjQ0OWM0YjhiZTQ3NTYxZmVkY2Y2Y2ZiZWYgbGVnYWN5LXRydW5rCis4MTI5NSBlOGVkYWJkNTQxOWIzZTM0NmI3OTU3NDhhYWI3MjdkNWY2N2RhYzViIHNzbG9wdHMtNDg3MAorODEyOTYgYjc1ZTYyZmNhZTgxYTcyNzNiMWQ3MmVlNjAzMmI3ZmQ5YTk1YWZkOSBzc2xvcHRzLTQ4NzAKKzgxMjk3IDI4NTkwZDViNmI4YjA4NjdlODU4NjY4M2RjYTAyMDYzMzhiN2IwMzMgc3Nsb3B0cy00ODcwCis4MTI5OCBmMjQ3MTQ2ZjhhOTU5ZWZjNzIyOWM3MGMxNGViNDdjN2Y3NWY1Y2U0IHJlbGVhc2UyNi1tYWludAorODEyOTkgMjZkNzYwNTIwM2RjYzIwNzMwOWM4NjUzMGNjNzk0NmNiZmU4YWI1ZiBweTNrCis4MTMwMCAxNWZhNTlmYzE0OWRiY2NhOTllNDYwNGNmYzViZjljNTI1NWQ0NTc5IHJlbGVhc2UzMS1tYWludAorODEzMDEgNWYzMTM1MGFmYjYwOThhZDdiNWM2YjNlN2I1ZjM4MzIyNTQwNWExNiBzc2xvcHRzLTQ4NzAKKzgxMzAyIDYzOTEwNTVlZmNhMGRiOTYwY2UwNmMwNmQ4YzRiZmM1NDI1MzNjMGQgcmVsZWFzZTI2LW1haW50Cis4MTMwMyAxMDY1ZDFjNTMzMDlhZWM0Y2VhZDU2ZjI5NWZkNWNiOGY0YWRhZTUwIHJlbGVhc2UyNi1tYWludAorODEzMDQgZjE0ZjQyZjMyOTIyZTNlYzk5Zjg3MzY5MTgzMDA2ODhmZjA2MDYwZCByZWxlYXNlMjYtbWFpbnQKKzgxMzA1IGM5ZWQwYzNmNmRjZGQ3YjFkZjY0ZWY2NTllNjlkNjc4ZjI4YjhjYTggcmVsZWFzZTI2LW1haW50Cis4MTMwNiBjOTlmY2EwM2ZhMzc4ZTI3ZWQ4NzQ3NGI1OTA5MzA5OTkyYmMwYmVmIHJlbGVhc2UyNi1tYWludAorODEzMDcgMThmNjJhN2E3ZGJhODIzN2I2YmViNWQ0MDllYTIzODQyZTUwYzViMCByZWxlYXNlMjYtbWFpbnQKKzgxMzA4IGY3NmY4MTA0NGQ0MDgzZDUzYThmOWZhYzY5YzgyNGMwODAwZGQ0NjEgcmVsZWFzZTI2LW1haW50Cis4MTMwOSBlZjcyZjE1ODY0YTk5OGY1MjdjYWY0N2ViOTdmY2JjYWE4NzNiZTA2IHJlbGVhc2UyNi1tYWludAorODEzMTAgMDUyNjk1NzNkMjE3MmYwYzQ0NTVmNjc3Y2FkYjRmNTI5OGIwNjQ0MCByZWxlYXNlMjYtbWFpbnQKKzgxMzExIGMxYzFlOGM4ZGM5Y2QxYWQ3NDcyZjlmOWU3ZjRmMDE2ZjEzNjc5ZWUgcmVsZWFzZTI2LW1haW50Cis4MTMxMiA2ODQxYjJhMTZhNTFkNWE1OTUyMzFkOWEwMGZkMzVmMDEyMmY0MDQxIHJlbGVhc2UyNi1tYWludAorODEzMTMgY2UzODA5YjgzNDczNjgwOWM1YjhmZTliYjYwNmEwZThkZGEyMGFkMiByZWxlYXNlMjYtbWFpbnQKKzgxMzE0IDdmYzQ4YWQxNjA4N2VmM2NjMjYwNTgxNTgxODk1MmNkNzA4NjE4OTQgcHkzaworODEzMTUgN2YxNWE2MDA2MTYyN2RmOWJjNTcxNGMwMjk5Y2Q1NDkzNGQ2MzQ0ZCByZWxlYXNlMjYtbWFpbnQKKzgxMzE2IGFhNzc3ZDQzZjIyZjVlOTQ2MmI1ZWI5ZDMzNjUzMDhlY2E5NmU2YjUgcmVsZWFzZTI2LW1haW50Cis4MTMxNyBjOGQxNjZlYzU0MzAxZGYzNzQyZWU4ZDM4NTg3YmIwYjYwYTM0NzQ4IHJlbGVhc2UyNi1tYWludAorODEzMTggNzVkNzM5NjU1NmZkZTgzMzAxN2ExMDYyYWVlMjhmZWNlZWIzODFkMyBsZWdhY3ktdHJ1bmsKKzgxMzE5IDk0MmIzYzE2OGYxNWRhZjU4YjY0NmI0ODllMTUxODBkMGNlMDBjMjUgcHkzaworODEzMjAgMTUwNGNjNWExNWExYzRlMzNmN2MzYmMwMDM4ZWI4MTg1M2NlYTY3NiBweTNrCis4MTMyMSA4NDY4NjZhYTBlYjY2ZmY3YWY5Y2Q4NmQ2OWI0ZjVhNWJkZTFlN2U5IHB5M2sKKzgxMzIyIDk5OTk5NzRmZjUwNjk1YmQ1ZjAzZmU4NWI5NjNjYzc3MjIxNDYwMGUgcHkzaworODEzMjMgN2JhODUxZDFiNDZlYzRmNDBkMDBlMWM3Yzg1N2Y3YTc5YzUyMjYwNCBweTNrCis4MTMyNCA4OWNlMmY2ZDRiMjQxNzRiZmEyY2RhNjIzNTljYmMwZGIzNTk3ZTE2IHB5M2sKKzgxMzI1IDdkY2QxYTI2OTc5N2JiMGRhM2YwZWRjZjM3ZTMyMjVmYTlhMDg4YzEgcHkzaworODEzMjYgODFkNzhkZDI3M2IwOWYwZDY4Mzc4ODg2OWM2NmVjYjdlMjkyMTJkZCByZWxlYXNlMzEtbWFpbnQKKzgxMzI3IDhiNzY2ZWM2OTY4NWQ0ZjZjZmEzOWQ5M2ZhNzVjZWEyNmJhMjk3ZDggcmVsZWFzZTI2LW1haW50Cis4MTMyOCA5YTIzMzA5ZGZhYTMxOTk0MTVjZjZmNzBkNTQzNGY2YmVlZWM0ZWUwIHJlbGVhc2UyNi1tYWludAorODEzMjkgYjZkMmEyN2MzZTNiNDQyZTQ4MjcyNWI4NTU5Y2YzMzA1Y2Q4ZmIzOCByZWxlYXNlMjYtbWFpbnQKKzgxMzMwIDA4M2Y2ODZhYWYxNWE0ZDk5NTZlYjdlZWZiZWNkODQ0ODJjOTFmN2EgcmVsZWFzZTI2LW1haW50Cis4MTMzMSBmMzdlY2Y0YThmZjEwYWU4ZTAzY2RmZWExYmI1ZGE0NmM5ZTg5MjRlIHJlbGVhc2UyNi1tYWludAorODEzMzIgNzdlYjFmYjU5Yzc4MDdlYThkZWZlYzBhOWRmYzcwZDY3MzBmOGM4NCByZWxlYXNlMjYtbWFpbnQKKzgxMzMzIDNkMGFlOGVmMDA0NDYyOGNlMzlmZTU3YThlYmI2NDlmYWE5ZDBiZWUgcmVsZWFzZTI2LW1haW50Cis4MTMzNCAyOGJiZDMxY2JjYWI2ZDY5NjE5MDIyM2MzM2QzOTM3MTU5NzQyMDNhIHJlbGVhc2UyNi1tYWludAorODEzMzUgZjVhYWU4NWI2ODY0ZTY5NGY1YTA1NWNlZTMwY2M4YzUxMTBiNGQ1ZiByZWxlYXNlMjYtbWFpbnQKKzgxMzM2IDdmMTBhZWNiMDYzMjJiMzNiYjI1ZTBmNTAxOGQ0YmY2YThiZGZhNzcgcmVsZWFzZTI2LW1haW50Cis4MTMzNyBhZTRjOTMxYTcxZjA2OTY5NTc3MjYyYThhNTU4ZmU5MTJhMTVkNTY2IHJlbGVhc2UyNi1tYWludAorODEzMzggMWEzNGRlMDQyOTcyODcwN2JmYjBlODBiZWMyNWVjMDQ0MDc3Zjg2OSByZWxlYXNlMjYtbWFpbnQKKzgxMzM5IGQxZjI2NWNlYTcwYjc0MzZhOWMwNThjZmFlMGEzMjhlMzNlZGUzYzggcmVsZWFzZTI2LW1haW50Cis4MTM0MCBhNzJiYzU0ZWM3MWRmODYxYmFjYzEzODk1MDBiZWNlMGJjNzNkMmM0IHJlbGVhc2UyNi1tYWludAorODEzNDEgNmFlMDczMzI2ZTdmYjgyNDVmODE0NDk4ZGUxZDBjMTA5ZjYxNDU0OSByZWxlYXNlMjYtbWFpbnQKKzgxMzQyIGY0OTBkMTU4MTk4YWRlZWUxNTJiZjhkMjliNGFjODY4YTJmOThiYTUgcmVsZWFzZTI2LW1haW50Cis4MTM0MyBiZjRlODNkZTRlYTUyOThhOGVlODE4NDU5ZTZkY2NlMzkxNGYzOTMzIHJlbGVhc2UyNi1tYWludAorODEzNDQgMDc0MTBhZWU3ZmMwZWFmOGM1YjU5NzlmODU2NzE4OTMxMWRkMjQxMCByZWxlYXNlMjYtbWFpbnQKKzgxMzQ1IDM0ZThiZmViMGI5ODc5ZDExYjdmMzBmZTZmMTExYTlkNTFjZWE5YTcgcmVsZWFzZTI2LW1haW50Cis4MTM0NiA1OTA2YTBmY2M4MjZiNTFmMjhkYzMzZWU3MmZhOThmZjJlYWNlNjFlIHB5M2stY2RlY2ltYWwKKzgxMzQ3IDhmNmU2N2Y2OTNmZjVlMzZjN2U4NDgxNTc2NTE2Njc1NTAzM2QxZTUgcHkzay1jZGVjaW1hbAorODEzNDggNjViNTYxZjM5Njc5M2M0ZDA5YTExNmQ2MTcxNjE0OTI4YTU2YTY3NyBweTNrLWNkZWNpbWFsCis4MTM0OSBlMDIzYWQzZTJjYWNjYjI1Mjc5YTQ0YzFmOTMxYTAxOWMwNzY4ZTY3IHB5M2stY2RlY2ltYWwKKzgxMzUwIDhjNmY5ODE2OTllODI1YWMwZWE1Y2JkYTA3MWVlZGM4ZGJjYjNmNTggbGVnYWN5LXRydW5rCis4MTM1MSA2ODUyNWVmMzZiNjY4YzM1N2UwNWY4ZjZhYTJkMDgxZjQ5ZTNiNmM0IHJlbGVhc2UyNi1tYWludAorODEzNTIgNGJmYjAwY2UxMmI4NTllOTVkMTQyNWQ0NmQ1ZTFkMDM1NGZhZTNlNiBweTNrCis4MTM1MyA0OWQ3ZGU5ZDdiMWFhMDE4MjVjMjAwM2MyNjk3MzY2NjIyODViODUyIHJlbGVhc2UzMS1tYWludAorODEzNTQgMjBhMzU2ZWViMGY3MDEwM2RlYjE1MWI0ZDMzZDI1YTRhYjNlYjBkNyBsZWdhY3ktdHJ1bmsKKzgxMzU1IDIxYmI5M2UwOTg4YzQxYjgxYjAzNThiZDA3N2IwYzU3YWJhNWE3MmMgcmVsZWFzZTI2LW1haW50Cis4MTM1NiA1YmY0YTg2MzNjNThiODU1YjBmOGM3M2UzN2RlNzY2ZTUwYTQ3NzczIHB5M2sKKzgxMzU3IGVhZWE4MDhiN2ZiODY3MWE4ODRkMWZlMmRkMTdhMmNmY2ZmOGM0MmMgcmVsZWFzZTMxLW1haW50Cis4MTM1OCBiN2Y3MWY2MDQzN2I1OTZjNTVhZGFkMDBjMjhhM2E0YjJjNjAwOTgxIHB5M2sKKzgxMzU5IDBjYWZjMjBlNTYzNzYzNDY1Y2MwNmRmMWEwZTRkN2UzZDYyZjZlOTkgcHkzaworODEzNjAgZTY4ZTAyOGQwOTFlODM1NDBkMTk0MGU5NDAxNTQ1YmU1MTllYTg5MSBweTNrCis4MTM2MSBlNWZkZTdhZDFiN2NjNjk0MDIzODMwNjZiNjk0ZmM1MDJhODZjZTBmIHB5M2sKKzgxMzYyIGNjZGIwOWY3OWEwMzg1NTVjYWU0ZTE5MTQyZDc2MWZkMDgyNjNjMTcgcmVsZWFzZTMxLW1haW50Cis4MTM2MyBiYTUwODg4Y2MwMzkxNGZkMDAxNDAxMjg1ZDhkZDA4OGM1YTE3MjY5IHJlbGVhc2UzMS1tYWludAorODEzNjQgZGVlZDVmY2U4MmQ2MDY5ZjA1MWFkMTczNWYyYzZhYmQzOGM3MzJhZSBweTNrCis4MTM2NSBjMWM3NzY3NGRiYzhjMjlkMTdkZGE4OWQ5MTNmNWViMWJiOGNhMjc3IHB5M2sKKzgxMzY2IDI0OGE5MTVlMzVlZjAxNjFkYjdlMmJjMWM4ZWIzYzVkNGVjMDY0YjYgcHkzaworODEzNjcgMjNlZThhYTg1N2VlMzZiOTk3ZDBhZmM3Y2FhMmE4NmI0ZjJhZGQ5ZSBweTNrCis4MTM2OCA4MmE0NDgzZDljNGE5NDI3YTJmNDI0NWQ2MDgxZGYyMjgxYTViNDNlIHB5M2sKKzgxMzY5IDFmM2U3ODEyNjEyYjhiYTEyNmFlMmE4ZWJjZTFiZjdjMjU0MTdiMzAgcmVsZWFzZTMxLW1haW50Cis4MTM3MCA3NDNjMjA3ZGMyYjQyMDU2OTY5YjhmNWRjZWJhOWJjMWExYTI0NDdhIHB5M2sKKzgxMzcxIDAyMWY1ZWM1ZDJkNGZlMzdkMTBmZGYyNTFhM2IxNWE5YjEwZWYzNzMgbGVnYWN5LXRydW5rCis4MTM3MiAxOGRjZDkwM2M1NWUxNWIyNDUzZGE4NGMzNTNkOGEwNjZiYjgwMDM0IHB5M2sKKzgxMzczIGRhOTQxNTA3ZWQ5M2M0NGM0MDNjNjExZjA4MGNkNjc3NTMzMTk5NWQgcmVsZWFzZTMxLW1haW50Cis4MTM3NCBiODRmOGQxYTA1MjJjNmY5Mjk0ZmYyNzkwMjhmN2Q4YmYyMTdmYTA3IHJlbGVhc2UyNi1tYWludAorODEzNzUgNTAzYWZjNjJkNjMyZTE3OGY4NmZjYjYxMTQxNDA0ZTE4MGNiNTliZiBweTNrCis4MTM3NiBmZDcyYWYwMDYwYzg1NDBhZWNkOTU0MGM0OTQ2ZjMyN2U3NjQwOWU3IHJlbGVhc2UzMS1tYWludAorODEzNzcgNWQ2Yjc2ODkwZjE3Zjg4MGZlZGVlMGEwMDRlODJjNjUwN2MyYTNkZCBsZWdhY3ktdHJ1bmsKKzgxMzc4IDEyOTQyN2I1ZTkxNDFhZThkYzYyOGMyZDFmNWYwMjMxNzk2YjkwMjIgcHkzaworODEzNzkgNGQ4M2JhNWQwYWY1YjQ1ODE4MDhmMDgxMDVjOWNmOGIwMWQ2MTQwZCByZWxlYXNlMjYtbWFpbnQKKzgxMzgwIDYyYzBlNWYxNDEzOGY2OTYxMGYyMWFiZTgwZjU5NGUwZGE1YzRiNDAgbGVnYWN5LXRydW5rCis4MTM4MSA1NWUyMzY4ZjcyZjI3NGU2ZTkzMGFhZTUyNGEyYjVmY2ZmMGM3Y2I1IHJlbGVhc2UyNi1tYWludAorODEzODIgZDkzYmQ1MjU0NzNjNWY2ODc4MWJhZTI0N2JiOTU2YzIxNzUxN2E0NiByZWxlYXNlMjYtbWFpbnQKKzgxMzgzIDMyNzFhZjAzNWQwMTc4Y2RjNTVmOWE5YjNkN2U5ZDk5ZDYyY2M4MzQgcmVsZWFzZTMxLW1haW50Cis4MTM4NCBmMmQzYmY5ZGE5YTgxNTRhNmJkZDJjYzk0ODk4MDNlMmRiN2E0NWRhIHJlbGVhc2UzMS1tYWludAorODEzODUgNmZlMjYwYmMwOTg3ZGMyYzNjZGVmNWYwODBiZTBhNzFiOTQ5YThjYiBsZWdhY3ktdHJ1bmsKKzgxMzg2IGIzYjI2NWZiYWFiZGY5ZWFiNDJjNGRhNjA0NDE4YzEwN2M5YTJkODUgcmVsZWFzZTI2LW1haW50Cis4MTM4NyAxZTZiNDM1ZThlYjZhNTI4MWJlYWQ3NjBhMTQ2NjU5MDYxY2E5NTBhIHB5M2sKKzgxMzg4IDlkZDUyMmY3YzBkZTIxY2NjYmQxNjRlZWQ3ZDAyNmVlYTkzMTc5MGIgcmVsZWFzZTMxLW1haW50Cis4MTM5MCA3ZDRlZTBkYzg3NjQ0MDE3ZWZkNTMwNzQ3OWVhOTIwY2QyZGQwMWZmIHB5M2stY2RlY2ltYWwKKzgxMzkxIDRmOWRiMzVhNDA4NjFkYjdmNzc1NTM4NTZkMTExOWI3YTE2Y2U2YmQgcHkzay1jZGVjaW1hbAorODEzOTIgNWVlNDdmMGIyNmIwMmEwN2MzN2RiNTYwMDQ1MDBkY2M0Y2U1ODQ3OSBweTNrCis4MTM5MyAyMjI4YzI1Y2NlM2U3MmZlYjM4NjY4YWMyOGY1YzBjMzJiZTU1Y2I3IHB5M2sKKzgxMzk0IDM3MDMyYjJhNTkyZGIwMjM0YWYxNjYwNGIwMDBkMTY0MzgyMjEwNjkgcmVsZWFzZTMxLW1haW50Cis4MTM5NSAzODcxOWYxMTYxOWJjZDg5MTVmNWQyMmFkNDlhZTFlMGVhNGViMmVjIHJlbGVhc2UyNi1tYWludAorODEzOTYgZTNkYWFjMDY2YjkyZTc4ZTJiZjE4Y2VmZjk0YmZmOGNmYmJhMGFmMyByZWxlYXNlMzEtbWFpbnQKKzgxMzk3IGQ2MDE2ZmE1OGRmNmI1Y2UxZjM3YTU5ZjYxM2Q5NTc2OWY0MzdjMGUgcHkzaworODEzOTggYzI5MTdhYzVkNTI2ZGM0ZDNmNjJiZDYxZDNhYTgwODU4OTQzOTA4MCBsZWdhY3ktdHJ1bmsKKzgxMzk5IDNmMDhkOThjOGZhNWYwNzE2MzM1YzE2ZDQwYmRiM2YzMjk0ZmQyY2MgcmVsZWFzZTI2LW1haW50Cis4MTQwMCA3OTU3NjJiNWUwZDZlNmIzN2VkZThlMWJhN2ZiZjkyM2EwZjZkNDE1IHB5M2sKKzgxNDAxIDlkYjhjNDE0OTIxZjcwMjZkZDM0YmU2MDk4OGQyZTliMzhkODQ4ODUgcmVsZWFzZTMxLW1haW50Cis4MTQwMiBlMTk0MGRkYjNmNTY1YTYzOTRmYTVkNmE3YzYxYTEwNDE1ZTQwYTAwIGxlZ2FjeS10cnVuaworODE0MDMgNDQxNDkxNTcyZmNlM2FkOGRjOTBlMmI1NDhlYzU4ODhkMmM1YzU1ZiBweTNrCis4MTQwNCBiMDcyYjlmYjBmZDJkZWNiZTA0ZjEzYmI0YWFjYjQyYWQwYjhjYjlmIGxlZ2FjeS10cnVuaworODE0MDUgZjEzOGQxYmFjZmM0Mjg4MDY2NDIwMDE0OTliYzcxNmQzM2RiNDA2YiByZWxlYXNlMjYtbWFpbnQKKzgxNDA2IGRlNjFhNjk3MTJkYWQ3YzQ1YWZjYTNmMjcyZDFkZWU0ZmJjMmZjOTkgcHkzaworODE0MDcgNmNhMmU2YjNiZjMxNzc5ZTZlMDU3NjcwNjY4MzhlZmZkYjY1NTM0MyByZWxlYXNlMzEtbWFpbnQKKzgxNDA4IDczNDE2YjFiYmNkNWJjYWFmZjIyN2I1NjY1NDE2YjZmYjMyMjc4NmYgcmVsZWFzZTMxLW1haW50Cis4MTQwOSAzZDY0ZDFhZmU2Nzc5YTczMDRiMGRiZGNlNTJhMWJjMjM4MjQ4NjNhIHJlbGVhc2UyNi1tYWludAorODE0MTAgZTFmNGZjNjNkMmIzZDJiZTRhZjE3ZGY1NTU2YmZhZmI5YTYxN2M3OSBweTNrCis4MTQxMSA1MDZlOWJlODYxMzkzODRlNWVkYjA3YjA4NGY2ZWVhZWEwZDBmZmM0IHJlbGVhc2UyNi1tYWludAorODE0MTIgZTlhMDQyYTI1MTk3MTM4ZjZlMjMwOGY3ZjRiYWY2YTY2YzIyMGI0MCByZWxlYXNlMzEtbWFpbnQKKzgxNDEzIDk0NmNjNWVlMjk1MTEwZjM0NWQ1M2ZmNjJmN2NmOWZlY2Y2NzZkMjggcmVsZWFzZTI2LW1haW50Cis4MTQxNCAwZjA5NjgyOWZjOTBiOGIzNWQ5MzM1ODc3YzBmNTAwYWQxODI4MTQzIGxlZ2FjeS10cnVuaworODE0MTUgZmYzYzY3NjYxM2FkYjE3MGFmODBhMWEzMjU1NjMxMWU4YzFhZDlhMCBsZWdhY3ktdHJ1bmsKKzgxNDE2IDg1NDJiNzdhMjhlYTk2NTg2YzAwODFkNjVhM2M0YzUyYzgwZGJlN2UgcmVsZWFzZTI2LW1haW50Cis4MTQxNyBiMDI1MGZmYTIyNjc3NWRlZmIzNWVkYmUzOTBjODg3YTcwMmJmZTA2IHB5M2sKKzgxNDE4IGZmZjI5ZDNlN2EzOTIxNWIxN2RiODk3MzBhNjEwY2VmMGI2NDEyMGYgcHkzaworODE0MTkgMWIwNDY3NjYxZWY1YTkwZjQxZjg2ZjUyMDBhMjhiNGVjNmIxMzQyZiBsZWdhY3ktdHJ1bmsKKzgxNDIwIGZiZmMzNTM2NDdlM2MxYjM1ZjhmYTI5MWM1MTM0NTdlMGY2MDVkMzMgcmVsZWFzZTI2LW1haW50Cis4MTQyMSAyOWI1NmMzOGEwMzNkY2RhMTBjNzYxZWU0Y2IxMzFkMzNkODkxOWFlIHB5M2sKKzgxNDIyIGFiYzNmNWExY2M1ZThjYWNhZDM1ZDE1YmE1Y2UzY2VjNzNhNWM2Y2EgcmVsZWFzZTMxLW1haW50Cis4MTQyMyAwNmIwOTM3NmNjNWIwNDJjZTBkMTYxYjMwMzQ0YTVkOGNjMzRlNTUzIHJlbGVhc2UzMS1tYWludAorODE0MjQgZWNhOThiZGM4YTE0ZjQwYjIzMmEzODRlMmUxOWJiOWQ5NTJhNzZlMCBweTNrCis4MTQyNSAyM2UzODE5MmFmOTY0ODgzZmRkNmUxYjQ2Yzk2MjQzNGE2ZWQ2NTg4IHJlbGVhc2UyNi1tYWludAorODE0MjYgMzE2M2RhMjJkNTg1MDJhY2M3ZGNiMzJjMDg1ZGUzODAzMDM2Mzk0YiByZWxlYXNlMzEtbWFpbnQKKzgxNDI3IDhiMmQ5ZDEwMWM4NWE0OTY2ZmIyOTM1YTRlNzFhOTllMDkyNDY4NGUgcHkzaworODE0MjggNjk4NWM2YjlkOTc4ZTU3MTNhMzUwMTkwMDkwMTRkYWExNmYxNjNiZCBsZWdhY3ktdHJ1bmsKKzgxNDI5IGIxNGYzOWQwZjIwYTJkYWU1NGY0OTM3YTMzNmEyYTYyNzQ2ODRlZGEgbGVnYWN5LXRydW5rCis4MTQzMCA2YTA4ZWViNGIzMjIzOTI5NzU0YWU3ZWY1MDcxZDZiY2YyYzFmY2Y2IHJlbGVhc2UzMS1tYWludAorODE0MzEgZmViZDljMjg4ZTc2ZjgwYmM5M2FmODIxOTdkOGQ0MTNjYzU3MWMzYyBsZWdhY3ktdHJ1bmsKKzgxNDMyIGYwNWQyOTk2Nzc2ZTBlZjRmMzY4M2ZlMjFmZmE1NGJjY2JjNTE3MzMgbGVnYWN5LXRydW5rCis4MTQzMyAxMWQ1ODUxNjAzM2Y3ZDU0MzI5ZTBhNmU2MTI4ZDFiMmUyZjU0Y2Y0IGxlZ2FjeS10cnVuaworODE0MzQgNWQ2NzQ5NzBhY2Q5YTA2OGNiNzFjNTJiN2I0YTIwZWY4YmJlM2NmYSByZWxlYXNlMjYtbWFpbnQKKzgxNDM1IDQ5NWViZTA0ZDQ3OThjYmMwZjY4NmFkYzg0NzgyNWQ5MjBjY2NjNTMgcHkzaworODE0MzYgNmVmN2NmYjFmOGY0ODMxYzBiMDA1ZWMzMmQ1MmI2ZGU0NGM4Yzg4MCByZWxlYXNlMzEtbWFpbnQKKzgxNDM3IDhjOGQ0MGNlNWNhMTVhNDQ0Y2ZmOWM2ZTEzMTVkNjBmOGJjNjdlMDMgbGVnYWN5LXRydW5rCis4MTQzOCBmMzg5NTYzZmYzNzIzZTYyNjVjYmYwNWQ3ODM3ZDNlYTkxNTQxODQ5IHB5M2sKKzgxNDM5IGUyMGVhZTNiNWZlNDU0MGE3NmEzMDRjYWU5ZDUxZWE0NWM5OTdhOGMgcmVsZWFzZTI2LW1haW50Cis4MTQ0MCBjMGRiZmI2YTdkNTY3MzAzYzdiYmUzOGE0N2Q5ZmUxYjU0MjVhMTFiIGxlZ2FjeS10cnVuaworODE0NDEgM2E2ZTk2MzdjMzNkZDliZTMwNzU5OTFkNWZlM2Y3NjdjYTlhZGNjYiByZWxlYXNlMjYtbWFpbnQKKzgxNDQyIGE5Y2FkNWFlNDA1ZDhkMmE5NWY4Y2FhMWNhYzM5Zjk1YjFmMjk1MGQgcHkzaworODE0NDMgNzJmYTAwYWMzOGJlM2UwZGQ4NmFlNzg2MDgzNzZhOTJjZDhkYTFhNiBsZWdhY3ktdHJ1bmsKKzgxNDQ0IDUyNDk1Y2NmNjFjYzg4ZGVlNzM1ZjJiYzE1ZDY3NDFmZjBjYzNhN2IgcmVsZWFzZTMxLW1haW50Cis4MTQ0NSA5NTQxM2ViZDQwODEzNjM4ODNlMjViMjQxZGY4NDQ5NWIwNzBhOWIyIHJlbGVhc2UyNi1tYWludAorODE0NDYgMmQwYjA5OGY2Y2I3Zjk4NzA0MjdhY2U5MzM0ODM1MzE3NmQ1MTdmNCBweTNrCis4MTQ0NyAxOTRmNDg4YjhhZDFhNzdiNDVlYjg5Y2M0ZThhYzgxNGIwZGNiNWUyIHJlbGVhc2UzMS1tYWludAorODE0NDggMWFjY2E5YzQ1NTYyYjhlZjQ3YWY4Y2FmNjA2NGVlYzY3YzEzNjljMSByZWxlYXNlMzEtbWFpbnQKKzgxNDUwIDBlMjZjYjk3NmM0ZDkwYmJkZDM4YTc5MjI5NzQ2NDc5MGI2ZGRiNDMgbGVnYWN5LXRydW5rCis4MTQ1MSAwZjUyOGVlMTVlZjcyMDYwYjcxMzYxMWNhNDY2MzFkNzQ4ODkxM2FjIHJlbGVhc2UyNi1tYWludAorODE0NTIgMDIyYzkzZWQxYjhlOGY0YmQ2OGE0NGY2N2RhODIzNzkxMjM5NDhmZSBweTNrCis4MTQ1MyA1NWU4MTljYjUzNjEwMzU5MjVjODJkNjRmMzY3NDRhYTk0NDdhNzQ0IHJlbGVhc2UzMS1tYWludAorODE0NTQgYzZkZmMzZGQyZDVkZjRhMWZiMzFkNGE5OWY0ZjFhYjA2MWQ0MzE2NyBsZWdhY3ktdHJ1bmsKKzgxNDU1IDJlYTkwOTIwY2MxMGQzYTE5ODFkM2NiNDFlNjQ0YmE3MzA4YTM5YjUgcHkzaworODE0NTYgMTRkMjNiZGRmNzkzMzM0YWU2OWZmOTMxMzM1OTBlYjdkNDBlOTQ0YiByZWxlYXNlMjYtbWFpbnQKKzgxNDU3IDgxNWJhMzg3MmY4NTA0Nzg2ODgwZjUyMGUyMDBkMTkwYjJmMzA4YzQgcHkzaworODE0NTggODBiZTcyMTg3NjdiNzEyYjc2MDZjNjJiZmFlZTBjYWFlOGZmNzVhNyBweTNrLWppdAorODE0NTkgOTllOWVkMjE0YWFkZTZkYzAzYWI0MzI5Y2NhMzNhMjBmOTdjZjY1MyBsZWdhY3ktdHJ1bmsKKzgxNDYwIDJhMzg5NzM0ZDU3MDIwYjkyNjBmZWE3NjVhN2RlOWNiM2ZmNGExYWEgcmVsZWFzZTI2LW1haW50Cis4MTQ2MSAxYWYyNzM1MGY0MWJjNmZjYTdlNWE0NmYwNDY5MDAzMzU1ZTE5NWQ5IHB5M2sKKzgxNDYyIDg0NmRiY2Y5NzBhYmVhNWM4NWUzMzc0OTM4MTY2ZmY5MDUwNjkxZGQgcmVsZWFzZTMxLW1haW50Cis4MTQ2MyBiNzM5ZDMwMzRlYzc1MTI1ODY2NTE0OWE4MTZkNmNlZjE1MzI5ODJkIGxlZ2FjeS10cnVuaworODE0NjQgOWEwMjM5YzBlYTNiNDFjZGRiOWQwYzkyZWU0MDJiYzdjZmJlY2QxYyByZWxlYXNlMjYtbWFpbnQKKzgxNDY1IDBhNjQ3ZDA4ZTY4NWZhZjBiOTc3ODYwYzczZDZlMmZlOWRhMzVhMDkgbGVnYWN5LXRydW5rCis4MTQ2NiBmMjA1ZDY2MDU2Zjg5ZGQ5Y2ZmNjUyOTIzOTQyZjMxMTY5MTIzNTZjIGxlZ2FjeS10cnVuaworODE0NjcgNzU1YTFiYzU2MzI2ZWUwNWE3YjNkNTBlYjRjMjgzZWY0MTU2ODc5OCByZWxlYXNlMjYtbWFpbnQKKzgxNDY4IGQ2YTg4OTY5NzE3ZjU1YmM4ZGZmNzBjOTBiZWJkN2I4ZDkzMzNlNzMgbGVnYWN5LXRydW5rCis4MTQ2OSA2M2I1NzhkODMzZWU3YWQ5M2UyOGEzZjdjNTc4YTk2ZGIxOGZjNzNjIHJlbGVhc2UyNi1tYWludAorODE0NzAgMzU2YTZmYzllNTc4NWMzZjY3NjU0NjJiMTk5NGY2NzMwMzMxYjU5OCBweTNrCis4MTQ3MSBiZjgyYzFkMDRlMDZjZGFiZmNkYjkyMjgxNWIxNGJkNDEyYmViZDE5IGxlZ2FjeS10cnVuaworODE0NzIgOTcyNmMyMTczODg1ODJlMWFiYmVlNjE2YjEzYWQzMDBjMzMzM2I3ZiBsZWdhY3ktdHJ1bmsKKzgxNDczIGFiMDgyZTM4N2RkNWNlMjk1ODNlY2YxNjc1ZjJjOTUwY2IzN2FlYzggcmVsZWFzZTI2LW1haW50Cis4MTQ3NCA4MzBjZDg5YjAxZThmMDRmNWUxMjNlZmViNjczOTJjNjQ0NDFmNzQ1IHB5M2sKKzgxNDc1IGNkNDkzNjY5MTE2M2ZkYzI5YTQ0NGVhZjI0NDViYTNkNTRlN2YyOWYgcmVsZWFzZTMxLW1haW50Cis4MTQ3NiA2ZmVlMjZjODlmNmU0YjJhNzYyOTA2NmUzMDQ5Mzc0Yzg2YWVkZTUyIHB5M2sKKzgxNDc3IDZkYzllYzg4NTQ2MzkxYzczMTgxOGFiYzY3ZTcxZTdkNjExMDAxOTAgcmVsZWFzZTI2LW1haW50Cis4MTQ3OSBlZTc2ZjBhMDY1YzI0YzlmY2MyOWQ0ZWEzZDJlNzkxNWJkOWI3ODQ3IGxlZ2FjeS10cnVuaworODE0ODAgMWUwNmE2YzMxMjM0MWEzMWZlZGY4NmE3MDJiZjRmMzg4OTE0MmZjNSByZWxlYXNlMzEtbWFpbnQKKzgxNDgxIDY5MjA3ZjgwMWIzMTY2NDU0M2JhNDkxYjZhY2ZiZjAxMmJiNzlhMzMgcHkzaworODE0ODIgNGU0OTUyNjM2MTEzNDViNzg0MGYxZWFiOWUyYmM0N2IzNGY1YjdjYyByZWxlYXNlMjYtbWFpbnQKKzgxNDgzIDU0YjUxYWJiNjk1MTI0ZGNlNzEyNjQwZjA3OWJkMDk3Mjc3ZDhiMWIgcmVsZWFzZTMxLW1haW50Cis4MTQ4NCAxZThjOTIzMTY0NjM0NzRlNmFiYTVmNTY2NzNkMTgyMzUzNWEzYmM0IGxlZ2FjeS10cnVuaworODE0ODUgYjBkZWUzMmExYzZiMDk1ZGZhYTkzN2E5NzNkMzhiNjM3NGEwNDhkMiBweTNrCis4MTQ4NiAwYmM4ZmZlNmJhOWFjODVkZmY4NWUxMjJlMjhkNDc1ZDRiMTQzZTRlIHB5M2sKKzgxNDg3IGEwYTZlOGJmYWFmNzJhMDkzOTFhNTE4YzJiZGQwN2RjYThlNTZjNWUgcmVsZWFzZTI2LW1haW50Cis4MTQ4OCBkY2EzY2IxOWRiZGQ0NzEyNWE3YWE5YTA2MjJhN2Q1MzQ1NjdlMjA2IHJlbGVhc2UyNi1tYWludAorODE0ODkgMjFmYTA5ZjI1MGUzMDA2Y2RjMGJjNTI4NTlkZDUzM2IwMTVlNTc1OSBsZWdhY3ktdHJ1bmsKKzgxNDkwIDQwY2FkNzU5YTM1NTQ3NTVjZGU3OTg4ZmRlMDE1MTYzYjk1MDlmMWEgbGVnYWN5LXRydW5rCis4MTQ5MSA3NzUwNTc5YzM3NWRhMWQ5Mjg4OTQ2OGMwNzBlYmFmMjBjYTIzMzE4IHB5M2sKKzgxNDkyIGU2NGVhMTYxOTgyMGMwYjlhM2ZkNTUwZTQ5MTU5MWMxYzQ4NmUzMjYgbGVnYWN5LXRydW5rCis4MTQ5MyAwMzYwMTdmMmU3NGM2YTQ2ZTQ5ZTI2Yjc2ZTEzODAzZTQ4NGQxMWM5IHB5M2sKKzgxNDk0IDJmMjRhMmVmNzMzMWM2MmVkZjE2MDkyNTIyMWQzNDEzYzc1Y2IzMjYgcmVsZWFzZTI2LW1haW50Cis4MTQ5NSA4YWQ2MTc4MDUzNWVmYjRhZGY4NDBmNzc3ZGY5MDY4ODdkM2IyMmViIHB5M2sKKzgxNDk4IGIwMzhmZGE1OTNmNmQ1OGUxZTk1MzY1ZjFlOWRkMGMzZDM1YTI2YzAgcHkzaworODE0OTkgYzU2ZmI2M2M2NDhmNDk4MzI2OTRjNDExNDk3ZGNjZTJmNmJiYzQxZCBsZWdhY3ktdHJ1bmsKKzgxNTAwIGViZGE2ODAzZjhkNWMzZTFhNzY3ZWNjZTExMWNmNTBmMzM4ZjU2ZDIgbGVnYWN5LXRydW5rCis4MTUwMSA5MGQ2MzE0Njg0ZDQzYmU0NWU1OWIyYjNlOGI2MDc0MWY5MjY5YTVlIGxlZ2FjeS10cnVuaworODE1MDIgZTNiNTMzOGJlMDU4ODkxYmQ5NTJmZmRmNjc5MjE2NmM1Mjg0MjIyNCBsZWdhY3ktdHJ1bmsKKzgxNTAzIDRiZTIxYTA4ZGQ3MDcxNmU2OGNjNjQzNjVjZmYzZWU1ZDNhODM2YzggcmVsZWFzZTI2LW1haW50Cis4MTUwNCBiZjA0ZWFmMWFmNzQ4YTgzYmQ3NDJlZmIwNDkzNDJiYWRmOTJhOTk4IHB5M2sKKzgxNTA1IDYxNDQ3NjBlODM1MGQ0YzNiMDg3ZDlmMTYzOGU1MzMzMDYxNDgzZWQgcmVsZWFzZTMxLW1haW50Cis4MTUwNiA1ODQ5MTkxMTE4MmNlMTNjMjEwN2E5ODk3ZjU3YzAzYjMzOTNhODEwIGxlZ2FjeS10cnVuaworODE1MDggZjkwMzY4Yzg3YjMzZTY4NTI5ZWExMGJmYzcxN2M0ZjRhNGQwZjJiNSBweTNrLWppdAorODE1MDkgYThlYWI2NzAzMjY2NjRjYmFhOGNkYjE4MzQ0N2E4ZjFkZmVmZWNiMyBsZWdhY3ktdHJ1bmsKKzgxNTEwIDY5M2UyYmVmNGVlM2JjODIwNGIzNWQ3NzM3ZWU3NGJmNzJmM2MxYzMgcmVsZWFzZTI2LW1haW50Cis4MTUxMSA3ZjQxZDc1YWQ0MzVkMmQ4MzZkZmM3YzhkYTBkMWMxZDdlMzQ2M2FjIHB5M2sKKzgxNTEyIGI3M2JlYmRmZTUyNTljMmFiN2MzOWE4ZDc3MzUzYjNhMTBjN2YxNmIgbGVnYWN5LXRydW5rCis4MTUxMyA3MDMyODdhOTk5MzkxNzBmYzAzMTJjMzI3ZmI3MjZjM2M2MThlY2I1IHB5M2sKKzgxNTE0IDRlMDA5MTRlYzQ0N2JiYmZmNTc1ODQxYjAxZjUwZTViZWRiZWU5YTIgcHkzaworODE1MTUgNWJjNGZjZjA0MTQzZDZjNWQyOTkyNGIzZGFiNDRlODQwOTQ4NmZlMiByZWxlYXNlMzEtbWFpbnQKKzgxNTE2IGNlMjYxNzIzYjM1NjJiYWJhOGQyODJiNDVhYWRlOGU5ZmM1MWZiZGUgbGVnYWN5LXRydW5rCis4MTUxNyA3ODE5YmE3N2U0NWMwMDA2M2M2YWUzMDk4ZDI3MTEzYzRjMjM1NGQyIGxlZ2FjeS10cnVuaworODE1MTggMjI5N2NkNTdkOTQ1ZjJmYTljNGI2ODc5YjM4YzFjNzYwNGMzOWU5OCBsZWdhY3ktdHJ1bmsKKzgxNTE5IDIyY2FkZjI2NGFlNTIxN2YyMzllNGViMzk2ZDMzY2FlNjg2YmFjYzggcHkzaworODE1MjAgMTMyMTJkNzRjZTAwOGU5MDg0ZTljZjE5ZjMwNDYyOWU5YWZhYzcxNSByZWxlYXNlMjYtbWFpbnQKKzgxNTIxIDU0YjQ4OGNiZDM3ZTM5MTQxYTZmYTE2ODMwYzM1YTY0OWJhNWNiNGYgbGVnYWN5LXRydW5rCis4MTUyMiA3NjFhYzk3MDNhOTZjMTQxZjE3MzMwYTEyNDg4ODg1ZTM0YTJlMmM2IHB5M2sKKzgxNTIzIGU4YTkzOTNhMDc0OGQ1ZDUwNDI5MGUwZDY5OTI0NGEyMDY1OGQ0NjUgcmVsZWFzZTI2LW1haW50Cis4MTUyNCBkMDljOWE5MzdlMTBiZjZhNzEyZmE5Y2E4ZjJhMGRhOWU0NzI5MmJjIHJlbGVhc2UzMS1tYWludAorODE1MjUgOGFjM2Q1Mjc3NDVjNGUzYWE3ZDg5NmY5MTE2MGExOWVjZGYxODkxMCBsZWdhY3ktdHJ1bmsKKzgxNTI2IDQ3MDgwMDgwYWI2MTliNTcxMjQ5ODAyODUxYWFkMmFiM2EzNThjZDAgcHkzaworODE1MjcgNDRmNDIyMmQ5MWJkNzBmMWQwODkxZDcxM2FmNWNjOTUwMmExODY3YSBsZWdhY3ktdHJ1bmsKKzgxNTI4IDZkZmYzZDkyMTJhODY1YzIxMjgzYTE5ZTdiY2QxYTA3YWY4ZmEzMWYgcHkzaworODE1MjkgNTVkYzllZjE1YWIxYTI0NWY0NDMwZDBkMjdhYjUzNmYzZTk5NzdkNyByZWxlYXNlMjYtbWFpbnQKKzgxNTMwIDgyYzI0MjZmN2YzZTlhMDdhZjkyMTQzNGFjM2UzM2Q4NGZmYWZlODQgcmVsZWFzZTMxLW1haW50Cis4MTUzMSBmMTMzN2ZlNmI3Yjc3OWVjMjMwNTExMzRlZjM1NDI5MjdmYWM4ZTQ0IGxlZ2FjeS10cnVuaworODE1MzIgZTRhZjcwMmQ2MWI3ZDNjYWQ3N2IxNTUwNzczYTJmZDI2MjNiOTJjNCBweTNrCis4MTUzMyA0YzJkNmUxYjg5MGVkNmNjNDM2YWM5OTlhYWM1MjZmYjFjZGUyN2RjIHB5M2sKKzgxNTM0IDkzYzVlNjI0MTMwOTY2ODA5MjQ5OGM5MjlkM2E0OTk0NmNmYTliNmEgcmVsZWFzZTMxLW1haW50Cis4MTUzNSAwODBlNTUwOTE2ZWRjZDlhODRhNmNkNWUwMWJkZjE1Y2QyZmE4OWNjIHB5M2sKKzgxNTM2IGY3ODhhZmY1NzJkMTFjOTU5ODI0NWM5N2MyNjRiZjE4YzZlOGQ1OTAgcmVsZWFzZTMxLW1haW50Cis4MTUzNyBiZDVmNWRmN2VkNzg5NGM3YWFiZTlhM2Y0YTZkY2U0ZDQ4NDNkM2QzIGxlZ2FjeS10cnVuaworODE1MzggNmEzYzJmMDk0YmJhZDdjN2JhMjg2MzMwYTFlY2Q0MWYwMTlhM2UwZCBweTNrCis4MTUzOSA4ZGJiZDkwZWVkYTg2ZTdjNmExMjVhZWFkYjg2ZDRlOTFlNzhkYmZhIHJlbGVhc2UyNi1tYWludAorODE1NDAgOWY3OWNiOThkNTVmNDRlZGFhOTkxMzY2NzM4MmY5MjBjNGNjNmM3YyByZWxlYXNlMjYtbWFpbnQKKzgxNTQxIDgxYTU4MGQ5NDdlZjRlOGFjODhmOTZiZTIwMDc3NDg0M2MzYzg5NjggcHkzaworODE1NDIgMTliM2U0ODUzYzc0MzIyYzBkN2E5OGRmYTc4OGQ0ZGRmMGI5YWE2NCByZWxlYXNlMzEtbWFpbnQKKzgxNTQzIDQ5ZDQ5Nzc5MDYwN2Y5MmVhZmE0ZmM3OGI3NWQyZmJjOWY0YWQ4YzggbGVnYWN5LXRydW5rCis4MTU0NCA3MDJkMjYxZjNhMjlhYmRlMWI4NzU1YzJlMzA0ZWY0NmY4MDUzMmE5IHJlbGVhc2UyNi1tYWludAorODE1NDUgOWFlYzZhZDUzYTFiOTc0YWJmMTA0ZjM0ZmExOWZjODQ4ZmQ4ZDZkZiBweTNrCis4MTU0NiA5YjhiMTQwM2Y4ZGRhODU0MDg2MDY0NWM4ZmQxNWQ5NzQ1YTIwMzY4IHJlbGVhc2UzMS1tYWludAorODE1NDcgNGY5ODJlOTRhZTE2YWFiZjIwNGQ1ZGIyMzZhN2RhY2FkZjFhZWUwNiBweTNrCis4MTU0OCA4MzI4YzVjMzI3MmMzNTEwNDIwOWVlMjRhZDQ0YjA5NTQ4MzE1OWRhIHB5M2sKKzgxNTQ5IDYwMjcwM2QwNTYwYWY1M2EwZGZjZWVjZTM5NGE4ZjAwYmNhZTZiMDAgcmVsZWFzZTMxLW1haW50Cis4MTU1MCBmZDk5NDY3YWI0ZDU5NjUwMmVkM2Q2NjdmNTk1YmZkMzMzMzI4MTRkIHB5M2sKKzgxNTUxIDU2YTU0OTM2ZGExZGJkNDkyZTFiNjI2NmU2NzI3ODY1NjUyOTFhZDUgbGVnYWN5LXRydW5rCis4MTU1MiBjNGY3Mzk3NWE0NDBhOTJkZTE4MDg1N2QxZWYwNGVkZjdlZDdhNGNiIHJlbGVhc2UyNi1tYWludAorODE1NTMgZTNhZDFiOGM0NTIxMjhmZDZiZTQwODk5ZTY3NzU5ZTk2MzYyNWUzMyBweTNrCis4MTU1NCA4MTgwYWJiZDA3Y2IyZTYwYWZhYzI1YTM4ZDk2ZWM0N2JiYWU0MThmIHJlbGVhc2UzMS1tYWludAorODE1NTUgNDc0NWUxM2FhOWU0MzY0MjlhNzljYjQ1YTkzN2FhMzc3ZGRiZmM2ZCBsZWdhY3ktdHJ1bmsKKzgxNTU2IDdjZmJmZmE2YTMwYjI4MmJhNGVkNjRlNTc2MWY2OWUzYTU2MDQ2ZjkgcHkzaworODE1NTcgYzQyZmZiM2Q2M2FmYzc4YTE1ZDRlNzBkMmJiMzI2NGUwNmJhYzFhMCBweTNrCis4MTU1OCAzZjRkMmE4MTgxMGM1Y2M3Y2IxM2U1NjFkNzI1YjYzNDljNWUxNjNjIHJlbGVhc2UzMS1tYWludAorODE1NTkgMTMwN2Q5Nzg3ODlmZWZjM2RhYjExMTA2MGI4NGFhM2JkZGU0MWMyZSBsZWdhY3ktdHJ1bmsKKzgxNTYwIDdmMzEyZjYwZmRiMDUxOGQ1NTVkOWM4ZTBlMzliZTY4ZDRiYzA5YTIgcHkzaworODE1NjEgMDE0ODI3MDA0MzRkOGEwOWEzZTM2MjMzYzc3ODkyYjdjZTM2Y2UyMiBsZWdhY3ktdHJ1bmsKKzgxNTYyIDU1NWZmNThjYjdjYjhhN2FlMzQxMjhmNDU2YjJlZjM1M2EwZjQzZTcgbGVnYWN5LXRydW5rCis4MTU2MyBkZGEwZTFhZGQ4YjMxMjZiMTNmNjFjY2FhYzRiMDYzZTBlOTYzYzg0IGxlZ2FjeS10cnVuaworODE1NjQgYzI3ZWFkNTFjN2RjNjMyMzE5YWIzNWEzYzQ5NmYyMTFmNWQxZDYzNiBweTNrCis4MTU2NSBjZmQyMTVkOTQ5OWMzZWExZmU1MzIxOWIyNDliOTUzZTA2YWY2ODNkIHB5M2sKKzgxNTY2IDMxMWEyNTNiNThiNzVkMTBiZDA0ZjMwYzAxZGRhMjMwMGIwNjRiZTIgbGVnYWN5LXRydW5rCis4MTU2NyA5NmE3YTNjYzU4OTdlYjQwOGNjZDQ5NDMzNmMyOTIyODgwZDFhNzFhIGxlZ2FjeS10cnVuaworODE1NjggNmI4OWRlMzZhNzRmYzI5MGZhYWEwYWI4YmQ1MGM0YzU5N2JhYjM5MCBweTNrCis4MTU2OSAwY2NmMGZkYzU5NjY1MmUxMzFiODY4MzVlOGZkYzUzMTM3OGM3NDY3IHJlbGVhc2UyNi1tYWludAorODE1NzAgNGIxNDJmN2IzODEyZDA5OWNiODY0MzA1Y2VhMzYxZWJhOWRkZGZhMSByZWxlYXNlMzEtbWFpbnQKKzgxNTcxIDVjY2M3MWRjYjVkZWE0NDE3ZGI4NWI5NDk4NmQxYjkwMDcwZGIwNWQgbGVnYWN5LXRydW5rCis4MTU3MiBjOWJlY2NiNjNlYTkwOWE0M2MwMzdkZjIyYTMwZjRiZGFhOGMxMmZhIHB5M2sKKzgxNTczIGY1MDFiZTYzODg3OGExNWIyZmNiYzUxMzU5MWY5OWZkNzM4OTJhNjMgcmVsZWFzZTI2LW1haW50Cis4MTU3NCAyNWYyYTBmMGU5ZGViZDMwOGEyMjFiOWJhYWE5NzIyNzVhZTliYWM4IHJlbGVhc2UzMS1tYWludAorODE1NzUgNWNjM2EwYzE0ODAyZWJiYTA1MDYwYWEyNzQ1NDFlMzIzOTEwNmE3OSBweTNrCis4MTU3NiA3ZmU5Yjc5MDA1NGJhZGI4NjU0ZTE4OWE3M2RkMmZkYzBiODU1ODhkIHJlbGVhc2UzMS1tYWludAorODE1NzggOTUyNmE5MDhhMjU4ZGI4NjZiYTY1ZTcyOGNhZjkwMDQyY2JjMDAwZSBsZWdhY3ktdHJ1bmsKKzgxNTc5IDFhNTkyOGIyNTkzYzkwZjc2OGNjMzEzMzRlN2I4YTk3M2M3YjRmY2EgbGVnYWN5LXRydW5rCis4MTU4MCBiZDljYjI0YmE2OGI0MmQ1MzBmYjljNzE5ZjQ2OWViOGQ0YTM1YWMxIHJlbGVhc2UyNi1tYWludAorODE1ODEgNjIxOTQxNTU3ODk4MzZlYzkyNTYxNTU4YjBjMWFlNjQ1ZmUwNDQ1NiBweTNrCis4MTU4MiA3Yzk0Nzc2OGI0MzVkOTM4OTk5NmRkNWFjZjNmOGY4ZTMyZDcyZDY0IGxlZ2FjeS10cnVuaworODE1ODMgZjEyYjAxZTY4ZjY0NGZjMjBkZDk4YjliNDQ5ZGFiMjg2ODEyNDZiNyBweTNrCis4MTU4NCBiNjk3ZTIxZDFlNzg2N2Y5MjJhMjk1ZGM2ZDNmY2JlMzJjYzk3OWZjIGxlZ2FjeS10cnVuaworODE1ODUgZjAwMDc1NGM4OTQzZTE4MDY5MDM0ODgxOWYwNWYwYmJlZWM4ZTE0MiBweTNrCis4MTU4NiA0NDE1NTk5YjcwMTE2ZmU0OTE0OWVjZjY0NGExNmVjMjBjZDc1ZDc4IGxlZ2FjeS10cnVuaworODE1ODcgMmNmYjE4ZjFjMjkzM2NkNTA5YTVhNGE0MGYwYjczNmIwZTJiZjU3MiBsZWdhY3ktdHJ1bmsKKzgxNTg4IDMwOGVkZjExYzdjZmY2ODUyYTYxNDE3YzIwNTQ1MTkxZjMzMzQyNzAgcHkzaworODE1ODkgOWEwNGJkYzQ4MDg5ODNmMmYxN2FhOTU5NmMxNDViOTExYTFiOWQ2MSByZWxlYXNlMzEtbWFpbnQKKzgxNTkwIDg1MmQ1ZWE2MjVlNzQ5NTIzMjU0YWQ4NjBkYTYyNmUyMWM1Zjg5NzQgcHkzaworODE1OTEgNDlhYjVkYmM0ZmFjOWM0M2I0YjQzNDM0MjY4MjFmOGUyYTUyYmFjZSByZWxlYXNlMzEtbWFpbnQKKzgxNTkzIGQ1Yzc5ZDg5YjM5M2FmZTZmNmNmNmZmNmFlZTlhNDgxNzBlMGJhN2QgbGVnYWN5LXRydW5rCis4MTU5NCAyYjU4N2U3ZjAyOTliOWY4ZDYxMTkwYTE5NGEwODc4NTRkYzczMjI3IGxlZ2FjeS10cnVuaworODE1OTUgYjc5OWY4NjJmYjIxOGI0MmJjN2M3NGMyNTJiOTQyMTllYTQ1NTY3MSBweTNrCis4MTU5NiAzMjJiZjRmZjRkM2Q2ZWZhNTQ0OGMyYmE5OWEzOTQyOWNlZmJkNmVjIHJlbGVhc2UyNi1tYWludAorODE1OTcgYTkxNzQ3MzM2ZWFlNjAyNGY2NjM4NjE4MGM3NGMzZTk0ZThkMzdiYiByZWxlYXNlMzEtbWFpbnQKKzgxNTk4IDAzNzJiNGM3YjlmNGY2YTI3ZjNkYWU4NzIxZGQ0ZWQ0MjYzMTkzNjcgbGVnYWN5LXRydW5rCis4MTU5OSAxNjQxOTNhZGU0YmFmMGU3NDY1MzFmZWU2YmFmZTNmZmY2YzRhYTBlIHJlbGVhc2UyNi1tYWludAorODE2MDAgNjNlNzhmY2Y3Zjk0YWNlNjYxYzA3NDdlODk1M2ZjZjIyYjcyNzAyNyBweTNrCis4MTYwMSBhN2E5YjU4ZDFjMTg2NzUyODA3YWNiM2E4M2JhNGJlZjNhNjc5ZjA5IHJlbGVhc2UzMS1tYWludAorODE2MDIgNmU3MWVjYTYyNzhjYjU3NTgzMTkyYjg4YTkwYTdjOWI2OWQxYzhlOSBsZWdhY3ktdHJ1bmsKKzgxNjAzIDVkNDNiOTY2MzZjODg4N2ZjY2NiYTIyOWFmZjRiZjU3OTczYmRiMzAgcmVsZWFzZTI2LW1haW50Cis4MTYwNCAwNDcwZGM2M2QxMmE5ODAzYmVjYjA2MjBiNzg3ZmEzMTk2OTJiZmM3IHB5M2sKKzgxNjA1IDlmYTVlZDRjYTBiYjViNDhjYTBlM2E3Y2ViNWZjZGU5MWE3ZjQ1Y2QgcmVsZWFzZTMxLW1haW50Cis4MTYwNiBlZDc5ZGEzYTU5MWM0YTgwOWI4NjI0ODMwZWNiYWU4ZDZlMzEyOTc0IGxlZ2FjeS10cnVuaworODE2MDcgNmI3YWY1YTI1ZDJlOGQyYTNjMDQ4YzVlZmM2OGY3YjUzOWZmMjZkOSBweTNrCis4MTYwOCAwNWQ2YjI1ZGQxOTcxNWFiODU4N2U4ZTdiN2I4OTY3NTc5NmZiNDliIGxlZ2FjeS10cnVuaworODE2MDkgOWE0YjAyYmFhN2M0MzEzMGU4ZTJiMGJmYWM1NzM1ZGE1ZmVkMzQ3ZCBweTNrCis4MTYxMCAzZWRmYWQyNTQ5YzYxNzhkYTEzNDc0OGM4OTNkN2ZiZTNkZDgxNGM3IGxlZ2FjeS10cnVuaworODE2MTEgNTgzMzc5NTA2MWM1ZDk3MDg1ZTk1OGM3MzQ2ZjFhYzQ3NzU4MGI0ZiBweTNrCis4MTYxMiBlNzY2YzBkODZjZmY5ZDFlNWJhNmUzYTU3Y2NkZDE4MWQwZmJhNTAzIHB5M2sKKzgxNjEzIDY2YjNlZGE2MjgzZmVhYzZhOWE0MDMxZjNlMDNjZDU5NzJlOGI0M2EgcHkzaworODE2MTggMzI0MmEwZDIyZGU2MzhhYjcyZGQ0MTlmOWE0YTJkMmM5ZWQ3NDRmYiByZWxlYXNlMjYtbWFpbnQKKzgxNjE5IGNhYzAwY2JiZTc3MDk0MzM5YmExYWJjMTkzZWRmMWJkMmUyYzkzMGUgcmVsZWFzZTMxLW1haW50Cis4MTYyMCBiMWIzMTc3NTg2NzY1MzJjNjUyZTNmYmMwYmI3MGRlNjE2MzVhOTAxIHJlbGVhc2UzMS1tYWludAorODE2MjEgNzk0NTA0NWMzYTc1OTIwNWUyNWUxNTdhYjYwNzliZTk1MWM3YWI3MCBsZWdhY3ktdHJ1bmsKKzgxNjIyIGM5NjM0NzhiOTA5MmRlY2VmNDEzY2Y2MGE5OTI5MGQ2YTlkMWEzNjMgcmVsZWFzZTI2LW1haW50Cis4MTYyMyA4ZTIxYzY4MzFjN2ZhNmIzZjlkYmRjYmVmNTEzNjE5MTFmMGJkN2E1IHB5M2sKKzgxNjI0IDhhMTNmNzczYTk3NjM5ZTk4ZmM3ZGVhMTdkODU3NjIyZDE2Yjc0YWIgcmVsZWFzZTMxLW1haW50Cis4MTYyNSAzZTY0MjVjMjIxZWNmYzVhNWUwNjAwOGZhM2QzZWEyZTU4YjgyMzgwIHB5M2sKKzgxNjI2IGViYjkxMzBhYjBjNDU4ZmFhMDZlZjUzMTQ5NDlkNjE2N2NmNzViOWIgcmVsZWFzZTI2LW1haW50Cis4MTYyNyA1N2I5MDM1MDM3MmY4YzAyNmY2YzZlNTgwYWVhMGFkYjQ5Mzk4YWM0IHJlbGVhc2UyNi1tYWludAorODE2MjggNzE0NjUzZGQ0YWFkYWQ0NTNjY2FiOWJhY2RlYzExZWUwODNjMzdlMiBweTNrCis4MTYyOSBkYzI3NjhjOTk4ZGUxMjUwYWViZWFmY2ZkY2MyYzM0MzcwYTVkMjJiIHJlbGVhc2UzMS1tYWludAorODE2MzAgNjYxMDlkMGU0ZTZkZjFkZWE0YjdmOThjMGExMWIzYWVhMmYxYTU4NSBweTNrCis4MTYzMSBlYmQ2NWVjNTRkN2U5YmVmNWQ2ZDVhMjhjZDdhMGFjNTIyNjUwMjllIHJlbGVhc2UzMS1tYWludAorODE2MzIgNjJjYTU0MGQ4YjZlNjE1MWFkMTJlOTU5ODIwOWI3MDA0ZjdlOWVkOCBweTNrCis4MTYzMyA5ZjkyY2JhYTUzOWQ2YTQzYzU4MjI5NTgzY2NmYmNhYjNmZWIyZjcxIHJlbGVhc2UzMS1tYWludAorODE2MzQgZjgxMjcxYzE4ZWIwMWFkYzY1OTliOTE2NDhmODFlZmE2MWI0NzhlMCBsZWdhY3ktdHJ1bmsKKzgxNjM1IDUzZWU0NzMyMmRkMmEyYzJhMzQ4MjZiMWM0MzUwNDk2MTc2NzRiYzIgbGVnYWN5LXRydW5rCis4MTYzNiBkNjliMWEyZDliZjBlZjEwNDgxZTM0N2Y4ZjMxZmJmMDk0NmFhN2U0IGxlZ2FjeS10cnVuaworODE2MzcgZDQyNjBkY2FmYzdmYjYyYjUzNzAzYmM0NDgwYWIwYjJiMTRmMmZhZSByZWxlYXNlMjYtbWFpbnQKKzgxNjM4IDljMGMyN2E5YjcxYzc5Y2YyMTE2ZmU2Yzk3MzRmMzhjMmMxYmJhNjAgcHkzaworODE2MzkgMTA5Nzc3MDhkYjJlYWFiM2VjOTU0ZDlmMGMwNzFiYTYzODc0MjRkOSByZWxlYXNlMzEtbWFpbnQKKzgxNjQwIDg5OGViYjI5OTBkZmE1OWYxOWE3ZmM3OWEyMGU2OWJlYmY3YjRiNzkgbGVnYWN5LXRydW5rCis4MTY0MSAyZGU3MTIzM2I2OWIwZDIwMTZlYzZhYjZjYzg1NzE1NjQ1YWVlOTk5IHJlbGVhc2UyNi1tYWludAorODE2NDIgZTRjYmJiYjc4NjNiOTJkYjliYTY3M2Q5ZWNjMWJmNzI5ZTcwMmI0ZCBweTNrCis4MTY0MyBjZmUxMzg2MDBmNjRjNGM3YjE1ZTFlMWFjODBiMjdlY2Y0N2YzNjhiIHJlbGVhc2UzMS1tYWludAorODE2NDQgYTAzYjk1NjgzNTljNTVkZGVjMjk3YTNkZmVjNGVlZTQ5ODFlNDkwMSByZWxlYXNlMjYtbWFpbnQKKzgxNjQ1IDhlMjk0ZGYwZTM4MmE0NmIxYWUwNjJlMWU4MjFjOGI0ZGJjNmYzN2QgbGVnYWN5LXRydW5rCis4MTY0NiA3YjExMjZiNWJlMmQ2ZjBkMTQ1MzAzOTBkMDczYTNlNzFiN2EwMzFlIHJlbGVhc2UyNi1tYWludAorODE2NDcgMzc5ZWUyMTIxNTNlMDNmOGFmMGY2MGNjNmZiNjdkYmM3YWNmNTI2YyBweTNrCis4MTY0OCBkMjBkYjNlZTg0NTc1NWY1ZTY3YjUwY2E2OWViNjY1YzI5N2RmYWVlIHJlbGVhc2UzMS1tYWludAorODE2NDkgYmQ0N2NkMWY5YmMyZThiY2MyNjMwOTgwOWFkZWE1MGIxY2JjMmFiMiBsZWdhY3ktdHJ1bmsKKzgxNjUwIDM0YTYzN2JmZDRiZTc4YjllNDYxZDRmMzMzYzQwY2NlODdlODFmNmUgcHkzaworODE2NTEgZWE0M2I0MDY0NTBmOTRmYzI2YmVlZTU3ZThmMjNjMWY3NjRkYmFmMCBsZWdhY3ktdHJ1bmsKKzgxNjUyIDNiODA3MDkxMzE2OTQ5NmY4YWIzY2UwNTQ5MGE0OTcyNTQyYzc1Y2YgbGVnYWN5LXRydW5rCis4MTY1MyBiNDdjNGNmMjVmMDIyZDc1OTA2MDQxZTMzODZhODgyNjdjOGU3ZTg5IHJlbGVhc2UyNi1tYWludAorODE2NTQgYzNhZGI5MWNhNTg5NDcwOTllYmZkOGYxMTVkMjM1MzkwNDZkNDJhYyBweTNrCis4MTY1NSBkZmY1ZjA5YjVhODYwMTgyZGNmNmNhNzMyZjQxYTU1NTA0NjVlNDUyIHJlbGVhc2UzMS1tYWludAorODE2NTYgOTdlZGYwZWEwM2Y5YjE0ZTJhNDlkNDhhNmFhMTVjYTgwY2YzMzJlNiBweTNrCis4MTY1NyBkZmJkMzQ1ZjUzZjAzYTU4NWU3YzA0MjI2NWQ3MGJkM2M1ZjAyMzQ3IHJlbGVhc2UzMS1tYWludAorODE2NTggNmIwNzI5NGIxMzUyMGUyZGY1NjU2ZDNkMGJkMTI1YzU2N2VkYjJjYiBsZWdhY3ktdHJ1bmsKKzgxNjU5IGRkMzc4Yjg4NWI5NDAzNjU0MGYyYzk1OTUwMWFhZTc0MmU5Zjk1YjQgcmVsZWFzZTI2LW1haW50Cis4MTY2MCBiYjYzZWFlZmM1YTY4ZDc4ZmRkNWFhODIyYjJlNjJjOTRjOGI0YjcyIHB5M2sKKzgxNjYxIDgzM2RlNzk4ODVlNGZjOTJjNjg0MGY4YTEyZjdiZmQ2ZjE5MjUyNWYgcmVsZWFzZTMxLW1haW50Cis4MTY2MiBmNmU5MDE4MjY4NmJjNjE1ZDQ3ZWU4NDk2YzhkOTA5ODExMTNkODc5IGxlZ2FjeS10cnVuaworODE2NjMgMjkxYjBiYjYzZmI3NmJhZDg0MDAzMTFhYzU3NTcyMTg3OGY4ODU5ZSBsZWdhY3ktdHJ1bmsKKzgxNjY0IGVkOTgzYjExNmE3ZGUwMGFkNzFiMmY1NzBjNGNjNzk3NTQ5MGQxMjEgcmVsZWFzZTI2LW1haW50Cis4MTY2NSA4YmJkNGViNGVmYzQxZTNjMzc3N2MzNWIyM2RlYWQxYTM4MzRmZDM3IHB5M2sKKzgxNjY2IGNlYTVlZjY4MmJkZDRjNjgzNTUwYTBiOTJhOWRmZDcwZDdiNWNiNGMgcmVsZWFzZTMxLW1haW50Cis4MTY2NyA5YWY2MDBhNjYxMTU3MDEwODlmYzc1Y2Q2Y2NmMDQ4NWNjNWY4Zjc3IGxlZ2FjeS10cnVuaworODE2NjggYWUxMWY1NmFkNWQ3NDdkYWYyMDcxYjdiZjczMGZiNmQ3NGU5NDk3YiByZWxlYXNlMjYtbWFpbnQKKzgxNjY5IDFiNGMzMDc0MmEyNGEzYzY3OWU4MGI1MjhkOTBlM2UyODJiYjI5Y2IgbGVnYWN5LXRydW5rCis4MTY3MCBiZmJmMmQ2NTBmMjY5MzRkNzI4OTlkZGVkZmM4ZTFmZDMyYTNhMjEzIHB5M2sKKzgxNjcxIDA1MzRjZTAxYmE1MDI5YjNmNTQ2MWJhNTNmYTRlMjI0NmIzNjNmY2MgcmVsZWFzZTMxLW1haW50Cis4MTY3MiA4ODI1YTdlNmE1ZjAxZTY5N2QzNjFlZmE1NDU5ZWIyMWJjNzU5NTZkIGxlZ2FjeS10cnVuaworODE2NzMgMzc5N2VlNTdkM2Q2ZTM4NWJlYTc0MTQ2M2VkNzI2ZjgzYjJiOGY2MSBweTNrCis4MTY3NCAxNmZiZGYxMGQxMDAxOGZjY2RjODNmMTMwNTNkZTY5MTIxYzM0NWZhIHJlbGVhc2UyNi1tYWludAorODE2NzUgM2QxMWJhNzk4OWRmMGI1MDhlYzkwZjZhZDg1MzkwMGI2MzdlMDMxMyBsZWdhY3ktdHJ1bmsKKzgxNjc2IDVlMjhhM2RmZGVlZjNmNGYxYzY3NDI1YWZkNjQ0OGFkYzA5ZWNiZjQgcmVsZWFzZTI2LW1haW50Cis4MTY3NyAyNWI0MTYzZmZlM2ZkMmU2OWQ3NWJlZTgwMjdjNGE0MzBiZTZjMDE1IHJlbGVhc2UzMS1tYWludAorODE2NzggMzhkZGVjY2YwMmE5NDIyN2M1MmVmNGZkN2M5NzkwMGZlNDJjNTMyMCBsZWdhY3ktdHJ1bmsKKzgxNjc5IDExYWNjNTdmNTgwNGNhYmMwYzA4NGRjZmY2NWQwMTA1ZGFlNTM5MjkgbGVnYWN5LXRydW5rCis4MTY4MCA2ZTEyMGQ5MzExMmVjYTQyZjdmNDc5NjUwYmQ4OTBiMzU4NTVlNzNhIGxlZ2FjeS10cnVuaworODE2ODEgNTMyZTllNmFjODI1ZjFjZmIzNmFmNzQ2M2ZkOGI3ZmI4ZDdiNWYxNCBsZWdhY3ktdHJ1bmsKKzgxNjgyIDI2ODAzMTY4Y2U4YTc0NzJkZjVhZGFjOTNhODkwMzhhZWQ4YTkwODIgcHkzaworODE2ODMgY2I0ZmEzZTRiOGQ1NzY4MDE5YTY5NTRmNzM1ZmFiNDViOWQxZGFmNCBsZWdhY3ktdHJ1bmsKKzgxNjg0IGRkNjYzNjgyMTdjMTYyNmUzMWY0YmViZDg0M2JjOWFlZDgzZGExMDggbGVnYWN5LXRydW5rCis4MTY4NSAyMmMwZTIyOGQ1YTdjMTJmNjM0MzYzMWEzMDRhYmQ4YjY5NGJiYjFmIHB5M2sKKzgxNjg2IGJmMjEwM2EyMmUwMDc4ZTZhM2Q0YTVkMmIzYTkxNGJkMzBmOWUzNGUgcmVsZWFzZTMxLW1haW50Cis4MTY4NyAzYjY3ZmEzNTg1ZjA3YzU1MDdlOTE1YjYwMzgxNzVkYmNjNjllZjQ2IGxlZ2FjeS10cnVuaworODE2ODggOWZhNTU5MDI1OWY0NjRiMGQ1NGFkYWE0OTU0ZmE1ODQ5ZDQ4NGYzMiByZWxlYXNlMjYtbWFpbnQKKzgxNjg5IDA3N2QyOTM4NDM5OTE4ZDYzYWNkMDFmNDIxZDNjOTk1ODliYjZkMDYgcHkzaworODE2OTAgN2I1OWIxZjYzM2NiNGUyNjhhMmZkMDhiNjkyNzM3YTNmMTQ4OGJhNSByZWxlYXNlMzEtbWFpbnQKKzgxNjkxIGVhY2JlNzc0ZjAyOWU0ZDg5ZTdmYTQ3N2FjOWI0M2U1MThjNDYwYTIgbGVnYWN5LXRydW5rCis4MTY5MiA0MTk5MDFlNjVkZDIxOWRhNjhlZWYwYmFmYTQ5NjY2N2JmODIzM2NkIGxlZ2FjeS10cnVuaworODE2OTMgODI0NTY4M2U2ZWM2MTBjYmU5MGY3M2E5YTQ4OWEwM2QzNTM4ZTA5NSByZWxlYXNlMjYtbWFpbnQKKzgxNjk0IDEwOWE5OGY5ZmNkZGQzNGJiYTk2ZWRjZjUwNWUyYmM5YWFhODhjY2MgcHkzaworODE2OTUgY2QxOTJkMWZjZDY3NjNiMWMzYzVkMWJhMDdjNzNiODI0NmM2NjA0YyBweTNrCis4MTY5NiA4NDk4OGJiOTFmYmY2Mzk5YjhhYzYyZjJjYmQ4NjBhNDYyNDRlNzdmIHJlbGVhc2UzMS1tYWludAorODE2OTcgYzE2MGFmMDljNWIwMTY1ZWYzZDEyZGQ3NTEzMTlmMDdhMzkxNzg1OSBsZWdhY3ktdHJ1bmsKKzgxNjk4IDJiMjViNTBlYWVhZGQ1NTg5YzU5OTdhYzRiNzI4MjgzYTUzMjIzN2QgcHkzaworODE2OTkgMGM3NzY0YWE2OTRhMTg2YTQxMDVkNDliYTRkOTBkYWY1MDg2MzA5MSBweTNrCis4MTcwMCA0YzBiMmJiZGQ4MmQxNzA0N2E4YzFmNTkyODEwYTZhOGZhYzQ0M2UxIGxlZ2FjeS10cnVuaworODE3MDEgYTgwYzFiOTY0YTZmZTk2ZmI5ZmJiODZkN2RkMDBhZDdlZjU1ZjM2NyBsZWdhY3ktdHJ1bmsKKzgxNzAyIGJiYWY2MDYyZjI0MTQzNmM5YzA4ODAzODE5YTA1NDg1NmY0NzYzYTkgcmVsZWFzZTI2LW1haW50Cis4MTcwMyBmMjE0ZTFiZjAzMWQyOTc3NTlkMjcxZmRmMThjMjZlZjhhMDMzZTczIHB5M2sKKzgxNzA0IDUyZTkyZTc3YjMxMTRkNDdmOTMxNzI3MzMwNDAyZjA4OGNmODAzYmYgcmVsZWFzZTMxLW1haW50Cis4MTcwNSA3MzQ0NDhlODU2YWE3YzZjZWEwMTBiYzE1MWE4YmRlNzViZTM0YWM2IGxlZ2FjeS10cnVuaworODE3MDYgMDkxNzZkMGJkZTM4NDllMGQxZTllMzk5ZjhiMjM5MzNmYWZmODYzNSBsZWdhY3ktdHJ1bmsKKzgxNzA3IGQ3NTQxYTQ5MGNiZDg0MjM1ZGVlN2RlMjFhYmI3NDk2NWIxYzM1ZTIgbGVnYWN5LXRydW5rCis4MTcwOCA5YmI1YzIyZWYxMzQyM2M1ZjIyYzQyNmUxODU5YjFlZjdhOWZkMjVkIHB5M2sKKzgxNzA5IDVjZGYyNjU3NmU4ZWExZmQ0MDQxNzRhOWUzYjc5YTM0NjQyYjVjMmIgbGVnYWN5LXRydW5rCis4MTcxMCAxNDJjYjZmNjBmZDdlOTUxYzUyYzc1MzdkNmRlZTYyMDQ0NWY0ZmZjIGxlZ2FjeS10cnVuaworODE3MTEgMjNlZDgzNzYxNWFhYjQ5ZTEwNWUwOTM2MTAxNjI4M2I2MjYyZmRkMiBweTNrCis4MTcxMiBkZGE5YmVlNWM4NGEwMDBkMDhjMTljOWJhNjBkNzZlZDAxODQ1MTIxIGxlZ2FjeS10cnVuaworODE3MTMgNjA2MTNlODFmYjFlODUyZDEzYmM3ZWE3MjlmZTA3ZTU2NGFiZDY5NiBweTNrCis4MTcxNCA1OTA5ZTFmNzZiZTc0MGQ2MmMyYTA4NDRlMDdhNzBlN2M5MGI4ODJlIHB5M2stY2RlY2ltYWwKKzgxNzE1IDJiNTcwMmQ4OGYyNzVlOGZhMDc5YmY3ZWUyOGZhYjdhZDg0MGEzZjUgcHkzay1jZGVjaW1hbAorODE3MTYgYzg4NjQ4Mjc3MTM4ZjFiYzViNmMwYmM1MGYyOWQ0MDEzNjY5YTJhMSBweTNrLWNkZWNpbWFsCis4MTcxNyA2YjUwMTNmZWE4MWJiZjBlZjU0Nzg4MWJmMDNjMDExZGFiYjE0ZDliIHB5M2stY2RlY2ltYWwKKzgxNzE4IDYxZjU0NmU4NjFjMTJmNzYxN2I5OGZjZmU1OGU1MzZiYzkwMWY0ZjYgcHkzay1jZGVjaW1hbAorODE3MTkgMDgyOWY2MDIwODBiOWRiNzcyZTlmNGMyZDY3MWNmMzhlMmZlM2ZkOSBweTNrLWNkZWNpbWFsCis4MTcyMCA2ZjFmMDVjNzI1YjdjMGY1NzdhMWQ2YmVhM2ZhYmZkMDUyYjk1ZTgyIHB5M2stY2RlY2ltYWwKKzgxNzIxIDFmZDM2NWQzNjk1OTYyZjMxYzlhMmU0NjhlOTNkYTBmMTExMDhhMTAgcHkzay1jZGVjaW1hbAorODE3MjIgYTQwOWE1YWI4M2JiY2IyYzc4ZTVjM2Q5NTdiZTVhYjczODYxNWZkMSBweTNrLWNkZWNpbWFsCis4MTcyMyBhNTYxMDU0MDFkNTI2ZDQyMzdkZDFiZjNmZWE4YmJhZDk0ODllYTA3IHB5M2stY2RlY2ltYWwKKzgxNzI0IDA5YzA1YWQ0NWI1ZjBiZGY3MTg5MWMwYjgwYzk5Y2ZmNzFlNjhlOTcgbGVnYWN5LXRydW5rCis4MTcyNSAwOWMwNmNhMjdmN2Y4NDZjZWQzODM2MGE5YzZiNWVhY2ZhNTJkOTE2IHB5M2sKKzgxNzI2IDQzZTlhM2U2MTc5NmU2ZDhkMDAyZDYxMmMyMzdlMzZkMmY1ODYxY2IgcHkzay1jZGVjaW1hbAorODE3MjcgY2I1MGRiOTQxMmM3MDRjOGU3N2E0NDAxNWQxNGJkYTViYTNlY2M5OCBweTNrLWNkZWNpbWFsCis4MTcyOCBiZTU4ODE0ZTI1ZDc4NTE1MmQ4ZGNiMjhmOWIxNjQyMTgyYmVkMTFlIGxlZ2FjeS10cnVuaworODE3MjkgM2E1NzFmZDhjM2JlYTBiMWEwYWQzMTY5ZTU2YTU3YThmMDY3OTA3ZiBweTNrLWNkZWNpbWFsCis4MTczMCBlYzE3NGY0MmYxNWJkOTBkZGYyZDE1NmFkMTdhZGUwZjNhYzEwZWM1IHB5M2sKKzgxNzMxIDBlM2VjNDE4ODQ1YWRjNzU1NzhjZjlkMWJiN2Q4MmZhMWI1NWNiNTUgcHkzaworODE3MzIgYWE1Y2U4NjE1YzRmYzcwNTI2ZWNkNDkxZGFlZjg1NWFjZWI5MWUyYSBweTNrLWNkZWNpbWFsCis4MTczMyAyZjI4MmY4ZjkzODg0OGQzMjEwZmMzYmIyNTBiNWIxMTZlNmE0YTBjIHB5M2stY2RlY2ltYWwKKzgxNzM0IDc2Y2Y0YWNmN2I0M2YyZDYyNjIzYzU1OTIwMGMxZjg2ZDdlMjhlYjMgcHkzay1jZGVjaW1hbAorODE3MzUgOTg2YmEwZWMyYzU1ZjM1MDU1ZTBjOWFmYTE1OGNlMWZjNjUzMTU4ZCBsZWdhY3ktdHJ1bmsKKzgxNzM2IDhmYTRhNWU1YWY1NTJkZjc4ZDhlNDNlZDgzMGViZTAwYjE5NTZlMWYgbGVnYWN5LXRydW5rCis4MTczNyAwNmJkNGE0NDgzOWQ5NmQ1NDYwYWEyMzQ0MmI2NTg3YjY3MTViMGY0IHB5M2sKKzgxNzM4IDcyZGMwZWYzOTRhY2JiNDY0ZWJmYWNiMGQ1YjE4OGEyNjAwMjRhMTMgcmVsZWFzZTI2LW1haW50Cis4MTczOSBmODZjNmE2ZTE3NDQxNDgyMjM2OGQxZTMyYzViNTBhNjRhYzJjNTIxIGxlZ2FjeS10cnVuaworODE3NDAgNjdjMzNjYjk2MjJkYThlYzQyNjU0NmYwY2Y1NDY5MzQ1NGM4MGMzOCBsZWdhY3ktdHJ1bmsKKzgxNzQxIGUxMmQ4N2M0NTU5MTk4ZTE2ZWM2ZDEyMDAzYTI2OTMxZWJiMTRkYjAgcmVsZWFzZTI2LW1haW50Cis4MTc0MiAxYzMwZjllYjQwYjgyNjA3MmJkOTY2NDc2Zjg4YzU5YTEzZjk2ZGNmIHB5M2sKKzgxNzQzIDkxMjUxN2NjZGIzZmQ2ZmI4NjY0NmVhYjBlNTIwODBlNDgwNjVhNGEgcHkzaworODE3NDQgMzcyMWQ0ZTViMmVlZDM3NDhkZDBkYzI0OWU4OTk0OWEzMGI5Mjg0MyBsZWdhY3ktdHJ1bmsKKzgxNzQ1IDM2NjJkMmI1YWZhYWVkZGI1ZGRkYzZjODg4OTc5MGZmNGY1YWQ3NGQgcmVsZWFzZTI2LW1haW50Cis4MTc0NiBkMGQwNTdiNWQzNjEzMjg1YTgyYjc4ZWU4NzQzODNlYzhjNGVjOTRlIHB5M2sKKzgxNzQ3IDhiODcwMTU1MTI1MzlhMDViZDBjNzg3ZjU5ODY5M2RjYWYzZDAxOWYgbGVnYWN5LXRydW5rCis4MTc0OCBjZTkyMDk4MTFjMGFhY2ZhMTUwM2M4MGVhM2JkZjRiOWZjMjFhYjE1IHB5M2sKKzgxNzQ5IDRhMTE1MjI5ODBiN2I4ZTUzNjgwZWI5Y2Y1ZDkwZDhhNzgyMTdiYjUgbGVnYWN5LXRydW5rCis4MTc1MCBhZjJiZGU3MmNlNjFhMmMzMjczMDg0NjQwMTIzYTQ3ODU3Y2IwNmE2IHJlbGVhc2UyNi1tYWludAorODE3NTEgNWUxYjNiNjM0ZDUzNDY0OTJiN2U3ZGYwZDVmNDhjYjFkYWNiZjJjNCBweTNrCis4MTc1MiA2MTBiYTk5YjhkMGRhM2QwMmJlZjFhYTZmMjcyN2QyMzcyMTk2ZTY5IGxlZ2FjeS10cnVuaworODE3NTMgMmQyYjM4MjRlMzlhNTEwNDMxZDYwZmQwYzdiNDc4YTYyODQ5ZGZmMyBsZWdhY3ktdHJ1bmsKKzgxNzU0IDNkNGYxYzI1OWQyZDBhYjA0MWQ4NTU4M2I3OGFjOGU5M2IxYTk1MmMgcHkzaworODE3NTUgOWMzMDkxMDI0YmM4NDg2ZDYzNDJiMWNlYzA2OGEwMGFhMjQzOThhMSBweTNrCis4MTc1NiBjYTI2M2QyMDA1ZTc2MTFlNWM2NDRhMDg0ODY5Y2FlYjgxYTE0ZWU5IGxlZ2FjeS10cnVuaworODE3NTcgMGE0YjMzZTRlZTIzNjM2NTIyNzQ2ZmEzZDIyOTQwMTdjYTM4YmM2YiBweTNrCis4MTc1OCA1MDMyZjFkNWExZTE1YzE4MzU5MWM0NTE3YzdlNDQ2OGZjOTA0MGI4IGxlZ2FjeS10cnVuaworODE3NTkgYzFjYWVlMzI1NDRmYjc5Zjc0ZmM4ZjBjODYyZGE0ZWRhMTZiNDU0NSBsZWdhY3ktdHJ1bmsKKzgxNzYwIDFkOWI3ZDA1MmJjYzVmNTcyMjEwNGI3MzY4NDhjZjQyYjQ0ZGIzMzIgbGVnYWN5LXRydW5rCis4MTc2MSA3NDJkMzI5ZGZkZmQ5NWNmMDA1M2I1MjQ2MzQzNWFiMjEwYThmNmMwIGxlZ2FjeS10cnVuaworODE3NjIgZGE3YThmZjc2NDk5NzZjYWU0ZjljMWYwZWU3Yjc0OTBkOGQyYjc4MSBweTNrCis4MTc2MyBkNzg3MmRkYjRiOTgwODA4YWY1OGIwMzZkMzNmMTM1NzJkNzhlOTU5IGxlZ2FjeS10cnVuaworODE3NjQgY2RjN2NhOGRiOGQ2YWI0NDk2MGRlY2UyMzRmOTZlZThiMjUxZTc3ZSBsZWdhY3ktdHJ1bmsKKzgxNzY1IGUwZGUzMzc2N2MyOThjZGM5ZjAxNTZjNjk3YzkzYzVmNTI2OWI4NWQgcHkzaworODE3NjYgMTQxMGFjNjBhNzU0MTIxZjkwMGIzZTA2YTk4ZTcxZDc5YjYwMGRjYyBweTNrCis4MTc2NyAzZTBiYzBlMTdmNTYwZWQ0ZDcyZmRmYTliYmY4NDA5ZTRiZjNhZWQ3IGxlZ2FjeS10cnVuaworODE3NjggMjZiYjUzOGVmNmVhNTgzMzMxMzUxMzAwNTFiZDJjMmI3ODdlNzg0NyBweTNrCis4MTc2OSBlMWNhZWQ2OTU0NDgxZmNlNjFkMmNmY2Q2MmQ4ZGNjNWExNjQ3MTE5IGxlZ2FjeS10cnVuaworODE3NzAgNGRmZDkxNzQyZWI5YmJlMjFiMzNhMWQxYmU4Mjc0MThjYmQzMzBlMCBsZWdhY3ktdHJ1bmsKKzgxNzcxIGQxM2RlYzE0NjhiODc0ODljMDZiNDQ1NjRhZjUyZDI4NWE3NDBiYmMgcHkzaworODE3NzIgY2Q4ZWUwMTk5ODlkMTc1NTdmNjZlOGFhNTBiODRhMWE5ZWEyYjIzMCBsZWdhY3ktdHJ1bmsKKzgxNzczIGZkZGEzZjQ2MTQyZTRmOTdiMTQ2NGExYWI1OGU5MDc0NzI1ZDA2ZGEgbGVnYWN5LXRydW5rCis4MTc3NCAwZTdjN2YxOGNkMjRiMDNlY2QyZmNjOGRjMTkwM2EwZDUyNDA1MGYyIGxlZ2FjeS10cnVuaworODE3NzUgMzgxYzVlZWI1MTEwMzhkMDkxZDhlMDgwOGM0Yjg1MDg3ZWQyZjY4NCBsZWdhY3ktdHJ1bmsKKzgxNzc2IDZhMjhlZjI5YjExMDM5NDQzNTFlMmRkYzEzMGFkMGJlMjlmNzcxZmEgbGVnYWN5LXRydW5rCis4MTc3NyA1ODliNjExZDdiNGZhMjhjNzIyN2I0NjQ4MTc0NTI4ZTFmYjJhNTFiIGxlZ2FjeS10cnVuaworODE3NzggMzAxYjc4Y2M5OTliMjliZjFhNGM0YTZkNTk2MTg1NWNjN2VjYWUzNyBweTNrCis4MTc3OSA2OGZkMjI1OTVkYjU3NzYwOTIzOThlZWM0MTUzNTAyZmE0MTQ3NjIzIHB5M2sKKzgxNzgwIGM0ZDRkZGFjZjlhNTk2ODZhMDdiNWFiOGI4OTM4MmViOTA4Y2JiNTUgcHkzaworODE3ODEgODQ5NjUwNTA3MDUyZTZmNDZlNDdkY2UxYmQ3MTMzN2M0NzM1NWIxNSBweTNrCis4MTc4MiA0NzVjYmRlMWVkMTlhN2Y0MGUyNDAyOTRmNDJkYTVhNjcyOWU4MTU4IHB5M2sKKzgxNzgzIDZhMWQ2ZDhjYmM1MjEzYTY0OTQyOTdjMjVhNGI2YjAzNjkyZjY5YjEgcmVsZWFzZTMxLW1haW50Cis4MTc4NCAzMTQzMzk2YTk0ZjFlZTM1ZWI2ZjYyMmVlMmI3YzgwNzM2NDJiMzA3IHB5M2stY2RlY2ltYWwKKzgxNzg1IDQ5NWJiNzNiMWNmMWYzYTU2NjYyZmZlMmZkZTgzZTNmNjNmN2I1NWQgcHkzay1jZGVjaW1hbAorODE3ODYgNDNhM2YyYWNjOTRlYzJlMTYwZTAwOGY1MTlmYWNlOTY2NGFkZDQ0OSBweTNrLWNkZWNpbWFsCis4MTc4NyAzMDM4ZWFjNDJmN2RjN2U0ZGQwODliNTBhN2Q4MTBkMWU0NmZlZGIxIHB5M2stY2RlY2ltYWwKKzgxNzg4IGY2ZGFmNTMwZjg5ZWE2M2RjNmU2MTQwNzI5OGFhNzM3YWU2M2RlYmYgbGVnYWN5LXRydW5rCis4MTc4OSBlZDBjYTM4OTIxYzc2NzUzMTUzNjg5Y2FjNGVmNTQyMzFlNGQ4ODdlIHJlbGVhc2UyNi1tYWludAorODE3OTAgZGY4ZGM4ZDFkNTcxYzZkMDA1MWMxNmU2YTEwZjllYjVlYjY2YTExOSBweTNrCis4MTc5MSA3MzRmZWQ1NjEzYWVmYTk0Y2YzNGI5MGFlOWU1OWE5MGRjZDUwZmM1IHJlbGVhc2UzMS1tYWludAorODE3OTIgOWQ0OWI3NDQwNzhjNjVkZjdhMTY5MmRjMGRlOGU1NGI3ZjYwMmE3YyBweTNrCis4MTc5MyBjZWYzNzRiMTRmNWJlZTUzNTA3MjAyMGE5NDFkNDBmY2JhOWYwN2QzIHJlbGVhc2UzMS1tYWludAorODE3OTQgYzNmMmVkNGQ4ZTY1ZWNlYTQxZGVkYjJhYTUyZDYzZmM1NzQ3NmU1MSBweTNrCis4MTc5NSBjMzJiMDM4ZTAwMjJlNmUzNDNlMzVjYjY3NzI3NmY3YTIyZmJmMGQ4IHJlbGVhc2UzMS1tYWludAorODE3OTYgZWQyNmVhNzg1MzZiYTNiOWI3OWU0NDYyNjNmMTdjZGYxMGMzZDc4OSBweTNrLWNkZWNpbWFsCis4MTc5NyBmZjhlYzk0YmVhZWFkOGU3MjMxNzUzNjAwNjliNmUzMTFmMjFjYzQzIHB5M2stY2RlY2ltYWwKKzgxNzk4IGIxYjdhZjUxODNlMzViY2QzNzlmNmEyYTYzZGY1NWE0YzJlM2Q4MDUgcHkzay1jZGVjaW1hbAorODE3OTkgNzM2ZmEzNmVhODFlMjAyZGI5OTE5ZDIxOWVhMmQ2ZjhmYTFhYWE0NCBweTNrLWNkZWNpbWFsCis4MTgwMCBhMjJkODk4ODg5OTUwMWI2Mzk3NTg3ZWIyZWU5MmZiZTUyOTAyOTYxIHB5M2stY2RlY2ltYWwKKzgxODAxIDZlOGRjYjhlOWU2YmZiOTg1MTMwM2IxZjExNmE1MWQ5ZmQ3MzJiMTggbGVnYWN5LXRydW5rCis4MTgwMiAyZDc0MzBkZWRlYzM4MzYzZWFmMDAzMDg0Y2FlMWRhNjA3YmEwMTA1IHB5M2stY2RlY2ltYWwKKzgxODAzIGZlMmEwZTFlYzk1ZGNmOTAxZjlkNGViZGVmNTJhYmMwNTEwNzE1YjkgcHkzay1jZGVjaW1hbAorODE4MDQgMGVmYTFhZDhiYjc1MDZhYjE1NzIyOTA0MWVkZjNhY2RkMmZjMTZiNyBweTNrLWNkZWNpbWFsCis4MTgwNSBiMTFjYzFmMWE2OThjNTA5YTE1ODg4NjljNmFiYjZjNjEzZTEwNDAwIHB5M2stY2RlY2ltYWwKKzgxODA2IDBkOTM0NzkzNGNjNWI0YTkyYWEyNjU0ZTYwNTYwNDQ3NTVhMDQ5ZWEgcHkzaworODE4MDcgNjAwYzIzMTI3MjA3ZDgyMDY1NzY4ODliNWVhMmI1ZTEwYmM4NmQzYSBweTNrCis4MTgwOCBmZDhmY2NiMmVlOTA4Y2Q0ZmQ3MGJiN2IxYzAwZTAwNzNlYzJhM2I1IHJlbGVhc2UzMS1tYWludAorODE4MDkgMWExMDE2ZmEwNzIzMDBmYTY5NzlmY2MwZmNkMDc4ZGZjZGFiNjJkNSBweTNrCis4MTgxMCBlOTMyZGM4ODg1MTdiMWY4N2YzNmM5MWYzNGI5MzRiYTU3MTQyZDJiIHJlbGVhc2UzMS1tYWludAorODE4MTEgOWNlNTU2M2VlY2ZiNzk0MGRlZTk2OTgyMjBmMDA1NzI1NDNjYmNjZiBweTNrCis4MTgxMiA2MzQyZDE0NjdhNGQ0NDhkMjhmYTczNGFkOGUzMGZhMWMxM2VmYTdhIHJlbGVhc2UzMS1tYWludAorODE4MTMgYTIxNDVhMDZhNzI2OGYyMDMwOTA5YjQxNjdmZGEyYWUzZGI3YWYwNSBsZWdhY3ktdHJ1bmsKKzgxODE0IDk1Y2MxZTZkMDI0Njk0YWE1ZmJiZWY4NzFiNzQ0OWZjMzk1ZjliNmMgcHkzaworODE4MTUgNTM4MTk2Y2Y5MWZmNzgyOTEzNmRlYjMzNDUwNDczYTMyYzBkMjRlYyByZWxlYXNlMjYtbWFpbnQKKzgxODE2IDJmNjFlM2ExNDZiMWNkY2U0MTFiOTU2NzQ0NTA3Yzk0ZmQ1OGJkZjIgcHkzaworODE4MTcgZjVjZTVlMWJiMjNhMjEzNmNkOGZkMDMyOWI4ZmE3NTk5MzExY2UxMSBsZWdhY3ktdHJ1bmsKKzgxODE4IGYyYzRkZDIyY2E2MWEyMTA3NWRhZjgzMjQyNGE2ZWMxMjczMmY0YzEgcHkzaworODE4MTkgODIyMjgwY2VlMDRiNTI3ZjhjMjhhZTdlODVjMjM1YjU1YTcwYmNjZSByZWxlYXNlMjYtbWFpbnQKKzgxODIwIDI2ZmFjNzRlYmFiMzI5ZTFkMWM3YTRkZWJmNjgzMjFhYmFkZjRhYTIgbGVnYWN5LXRydW5rCis4MTgyMSBmZWNkOGZiN2JiZWY1ZGIwNzdlZDc5OTgzYjY3ZDc0NDNkZWY3ZTRlIHB5M2sKKzgxODIyIGI0NGEyZmU1MzFlZjUxZmE3ODUwNjNkMTMwY2Y4NWU5OTliZjEwMmMgcmVsZWFzZTI2LW1haW50Cis4MTgyMyBkMzc5N2U5ZGZkMmMxOTc1ODdjMGQyNjgxNjc3NDlkOTQyYzk1MDNhIHB5M2sKKzgxODI0IGRkZGI5OGVmM2JlNWVmOTA2NmQ1NjEzZTZlMjc2MzA1OGVlZGI3ZWMgbGVnYWN5LXRydW5rCis4MTgyNSBlNWYwYjI3YmMxNzgzNzk4YzY1ZThmYjRlNTcxZjg1ZWYyMTI4NTcxIGxlZ2FjeS10cnVuaworODE4MjYgODI1ZjY1NDQ1YTBhMDFlZjFhNzUwYWVkZmNhNTI1ZTZmNmFkOTZhMyBweTNrCis4MTgyNyA1YzZlNzVhOGQ2MWQ1NWU2M2ZjNzkzMzdlZmRjN2JkODY2ZTU3ZmM5IHB5M2sKKzgxODI4IDNlODYyNTQwMzliOTA5NmZhNDg4NjRlZjEwMWQ5MTU3NTdiMjQ2YzcgcmVsZWFzZTI2LW1haW50Cis4MTgyOSAyNzE4MTU4YzU4ZDAwZmZjNzhiYjRjYWZlOTA2MzkxNmQwMWU4NGE4IHB5M2sKKzgxODMwIGEzNjBlMTE0ODY2YjU1NGQ4ZmYxYjFhZGM1YWM0YzgzOWQzYmNiNDAgcHkzaworODE4MzEgNGY2MTMzMmFmMzVlNjlmYmIxNGVjYjhjNzA1OGEyZGRiMjg0OWU0NSBweTNrCis4MTgzMiBiOTUxODYwNmNkZGNlOTFkMWFlOTcwMzNiYzYxNDVkNTczMzU3ZmZmIHB5M2sKKzgxODMzIGQyMjY0ZjlhYzYxZWNmZDZjZjA4MzMzZjJkYjNmMjczNWYwMDQ0ZmMgcmVsZWFzZTMxLW1haW50Cis4MTgzNCAzNWI0YzM1NmYyNGE2MjgxMmJmODkwZWJlYzZlZWExMzk4OThmMGViIGxlZ2FjeS10cnVuaworODE4MzUgMTE2NmZiN2VmYjA3YTZlNTU0ZTk1YzMzNjY0MTlmZTNkNzZmNWU5ZCBweTNrCis4MTgzNiBkNWVjMjQzY2FhMTIyNGFmYjc2NGMyNDRiZjRjMDQ5Njk5MTE1OWM5IHJlbGVhc2UyNi1tYWludAorODE4MzcgYjVhZjVjOTMxMzViMjRmMzQxNDVkNjZhNzk3NGEwNmYwNDk1Y2ZhOCByZWxlYXNlMzEtbWFpbnQKKzgxODM4IDY1MDlmOWEzY2RlNWFlMjdlMDQ1N2VhMjc3YmY3OTU4Zjg1Y2E3YTQgcHkzaworODE4MzkgOWY3YjhiMzJiMDc0YWE5MWQzMTM1MjEyMGE0NjkxOTgxYTcwOTkwZCByZWxlYXNlMzEtbWFpbnQKKzgxODQwIGEwNmFkNzM4MzU1MjNmMjQ4NmYwMzZiNTAxNjM1YWViNGFiYWE1NjQgcHkzaworODE4NDEgZDI4MWVkNTlmZjBiZTRmMjQwMmY0ZjE2OTUyMTRmNjdjMTA1OTgwNyBweTNrCis4MTg0MiA3Y2NjNTU4MTE0MTMxZjA5YjE2ZWNkZDFlNmRhYmZhZGVkYjU5ZDEyIHJlbGVhc2UzMS1tYWludAorODE4NDMgZDkyNzA4Y2YxYzFmYTMzNjRiNTY0MTA5MzYyNWU3ZWU1NGNmYTJhNiBweTNrCis4MTg0NCBhMjVhZDljNGFjZTAwMThmODUyYmI0Mzc0ZWMxNTVlODgzM2E4OWVhIHB5M2sKKzgxODQ1IGQ0N2ZlNDEzNGU3ZDExYmY0MDM2MTA3YzgyZTY1YjdmMzE2NTI0NzMgcmVsZWFzZTMxLW1haW50Cis4MTg0NiBmODNmMjAxYjEyNzYwODRkYTczY2FlNWVmN2U5ODI4YzRiNDI2OTJjIHJlbGVhc2UzMS1tYWludAorODE4NDcgMTk2NmMxYmM5MDQ4ZTRlZWQxYTIwMTBhNWQwZTIyZjkyNjY5OTNhNCBsZWdhY3ktdHJ1bmsKKzgxODQ4IDI3ZDliY2M3ZTY2MWVjYmQ3ZmE3ZWI5ODVjY2NlZWNiODc4ZDk4NDAgcmVsZWFzZTI2LW1haW50Cis4MTg0OSAyY2ZlMTViM2NkZjU1MmMwNzZjNWI2MTJhYjUxMzk1YTgzMjM1MGQ4IHB5M2sKKzgxODUwIGIyYzE5OTU2MzNiZGM4NWViYzBlZGNjZmE3MGNiM2M5ZGUzYmM5MDAgcmVsZWFzZTMxLW1haW50Cis4MTg1MSBkMzJiMGU4MGZhYWNkMWQwNzcyNTM1NjYzOGU0YTc4MmIzNDk5NWQ2IHB5M2sKKzgxODUyIDZmMzg1NTAzODkxOWI2MjJiOTk0Yjg3MWIyOTU0ZWI4MGVjNzcwZGYgcmVsZWFzZTMxLW1haW50Cis4MTg1MyA4NjRhYzdiM2MzZDZjZWYzY2Y1YTJhNjI4MDZhZjU1NDFjY2Y5NjQwIGxlZ2FjeS10cnVuaworODE4NTQgZDcxMTNjYWNkNDI4YjYxYjVkOGEzZDU5N2Q0NmQ3NTI0NmYwYTI0YyBweTNrCis4MTg1NSA2ZTY4NjZjZWMzN2VhMmMwMDdjYzkyNzYwMzk2ODllNmM5YWJmMjFjIHJlbGVhc2UzMS1tYWludAorODE4NTYgOTZhNTEzMzgyNWQyMzY2ODgxODE3ZDc4YWQ3ZTdkY2MzNjQ2Mzk5MCBweTNrCis4MTg1NyBjNjA0MDJmYzA2NmYxMGMwM2E2NWVjMDg2OGU2MTdlNTAyNGJiOWJiIHB5M2sKKzgxODU4IGI2ZWUyMDViOTQ5OGJkMGZlNzNmYTE5ZjM4MjFlZTNkNjM1M2UxYTAgcmVsZWFzZTMxLW1haW50Cis4MTg1OSBmMWFhZGJlYmM1NzcyOTEyMzEyMjhmZGY2MmU4MzkyMTI3NmZlZDc3IGxlZ2FjeS10cnVuaworODE4NjAgYmEyZjJkMDg1MDRiMDUwMDZmMTc1YjQ1ODE0NjZkMzQ1MDgzMTExMyBsZWdhY3ktdHJ1bmsKKzgxODYxIGMxMTQ1ZTY2OGQ3MjA4NjQ0ODhkZGNlMDAxOTViZGFjNTU5NTczOGEgcmVsZWFzZTI2LW1haW50Cis4MTg2MiA4NjVlMzRjZDdlNWI3NjkyOTdjYWRhZTA3MGMwZjFlMjBkODM5Y2Y4IHB5M2sKKzgxODYzIDMzNzUyMzlkNDM3MGUyZTY2ZDg3ZGI0Njg4M2Q2MjEyYTcyZTYxMTEgcmVsZWFzZTMxLW1haW50Cis4MTg2NCAzMjljMTI5ZTA3YjY4YWYyNjI3OWQ0OGU5Y2NmZDhjOGM4ZWU4ODk4IGxlZ2FjeS10cnVuaworODE4NjUgOGY1OGI5ZTU5NjY4OGQ0MmU2NjdhY2U2NGVjZDNjMGFmODMzZGEzNCBweTNrCis4MTg2NiBhMmVhMWEyMzE4NmIwODc2NzAxNjgwODEzOTYxNWZlNmFlNDkxN2FkIHJlbGVhc2UyNi1tYWludAorODE4NjcgZjMzZTQ2NGE5YTYwYWE5ZjA0OTc4YzZjZjBmNTU3ZmVjMDhkNjBlNyByZWxlYXNlMzEtbWFpbnQKKzgxODY4IDViZjczMzZlYTBhYWQ4OWJkMjQ4MjIwYzI5ODRkOTFkNzUxN2UyZWQgbGVnYWN5LXRydW5rCis4MTg2OSA3N2MwY2E2OWQ1MTg0ZDg5MjJjNWUxN2JjNzU1NTYzYWU2Y2JmNzEwIHB5M2sKKzgxODcwIDE0MjlhYzZiZWJjM2Y4ZDlhN2FkMTcwZDkxMjI3NTI0NTRiZjg2MzcgcmVsZWFzZTMxLW1haW50Cis4MTg3MSBkZGI0N2ZkNjEyYTY3MDFiMzdkNWNmMzU2NGUwZWFiMDBkMzU4NGNhIHB5M2sKKzgxODcyIGUwODcxNjI1NzNhY2M2NzY5MjZmMmU4ZmJkYmIxN2I0ZGQyYmI3NzggcmVsZWFzZTMxLW1haW50Cis4MTg3MyBmZTVlZDcwMjgzZWZlNjA5NDFhN2VhYzM1NDg0MTRlMzM5MWQyMDU4IHB5M2sKKzgxODc0IDhjZmEwZGMzOGFhNzQyYjk4MDM5MTg0YTI2YzUwZmJmYzFlZWJjYmMgcHkzaworODE4NzUgZmY1MGQ0NWUwNjE4MTM1MzJkM2Y2MDc2NDg5N2M2Nzk5ZDhjZmMyYSBweTNrCis4MTg3NiBjZDEwMjQyODFiNzMyYmI4NDhlMDliMWVmMDRlNmU0ZmRiNmIwNjE0IGxlZ2FjeS10cnVuaworODE4NzcgZjI5NDQ3M2Q4NzkzMTVmYjMyNmI3NjhlN2RlNDY4ODEzNTJmM2QxZSBweTNrCis4MTg3OCA3ZjU0MGZlNzc1ZmNjZTM1ZGI3ZDM2ZWI4NjVmNTk2ODRjYmRiNGJkIGxlZ2FjeS10cnVuaworODE4NzkgNWZlNGFkNWI1YWI5ZWI3MmEyZmQ4MzA0YWRmZGE3MmY5ZDJmMmEyZSBweTNrCis4MTg4MCBkYmU3YWU2NjZjZTIyOWQ2OTRlOGE5NjcwOTE3MTg0NjczYjhiMDI4IGxlZ2FjeS10cnVuaworODE4ODEgMGQxNjZlNTc4ODRkZjQxN2RhODE4ZjE3YWYwOThjYjc2NTJlNDc0YSBsZWdhY3ktdHJ1bmsKKzgxODgyIGE4ODcyYjY1MDU3NzZhNjRkMGYyNjhkMDQ3ZmY2ZGVjNGY3NjM3MTMgbGVnYWN5LXRydW5rCis4MTg4MyA3MmY3NzQ5MDM3NzIwMTZjZmM3NDM2ZjE3NGIzYmZjYjQ4YTNlZjZmIHB5M2sKKzgxODg0IDllMTJjNjQ5ZDMxMjc1ZjJjMWM3OTRjMWZhM2I0Yjc5NGJjZDc4ODQgcmVsZWFzZTMxLW1haW50Cis4MTg4NSBhZWI0N2QzMGZiYTRlMzhkYTFlOGYxMjIxZTRkMDYyMDQyMzcxZTFlIHB5M2sKKzgxODg2IDA3Njc2M2M2NjdmOTU2NWI4ZTI4MjkxZWVmYTdjNDdjZTRmYjNjNTQgcmVsZWFzZTMxLW1haW50Cis4MTg4NyA4YzNhMjIyZmE2ZDE1OGY1ZmJhZWJhM2M2M2Y1MzQ5MWQ3MWE2ZWVmIHJlbGVhc2UyNi1tYWludAorODE4ODggNGM5OWRhOGMxZTgwZTdmZWNiM2M4NTczZTY3YjIwZDdjOThlZTg3MCBsZWdhY3ktdHJ1bmsKKzgxODg5IDdlZjQ2YTYxZGM5N2ViNzUyZjQ4MDg2OWRlOGQ3MzE1ZmJhYjNkOTUgbGVnYWN5LXRydW5rCis4MTg5MCAzNDIwZGZjNTU5YmJiODNmNDRmNmJhYjcyYzk5MTRhMTFlODY1NmRlIHJlbGVhc2UyNi1tYWludAorODE4OTEgODMxOWNhMGQ1NDM0OTMxMGM1ZWQ3NjYyZDBkN2JlYzVjZjRmODQ2NiBweTNrCis4MTg5MiA0NDY3YzRjMWQzOGVjZmZmYWVjMGYyMjY1MWM1ODM5ZDk1NzAxZTI1IHJlbGVhc2UzMS1tYWludAorODE4OTMgMjY2ODUzMTFkMzEzMjQxMGE0NzcxZDNiNTNjYzlmMTIwZjFlZDg2ZiBweTNrCis4MTg5NCA0YzNiZTc0Y2E1MDEyN2YwNjM4YjY4ZmRlMThjMDU4NGM0ZTc0ZjUxIHB5M2sKKzgxODk1IDNiYTFiNWI0YzEwODg1MDA4NGMxYmRlNDFjOTc0NGFiZWMzMjcxMWEgcHkzaworODE4OTYgZWJjNGU4OTY5MjRlMmE4YzRlMDA3MzZmMDAyYmI0MDdmZjZmNWM1ZCBweTNrCis4MTg5NyA2YWRjODNkOTk5ZDBlNDUyZDAzNjZiOWE0ZDEwYjc4NmQ2ZGQyYzQyIHB5M2sKKzgxODk4IDZmZjg4ZGNhODEzMzk4N2MxNzgxMWRiMTdmZjA4MDYxN2Y5ZWQyMjggcHkzaworODE4OTkgY2Q1OTZhOGY5MWYzNzg2MThjY2I1MTlhMjgwMWI1OThkNzFlYThhYSBsZWdhY3ktdHJ1bmsKKzgxOTAwIGIwOTFhN2U0Mjg1ZjkzY2I1ZmEzZGYzMDE0YWY2MGQ4MzljODZlMTYgcmVsZWFzZTI2LW1haW50Cis4MTkwMSAyYThlZTExZTNlMThhM2Q0NDcxMmE0OTE1NDZjMjA0ZDhiNzBlZDc5IHB5M2sKKzgxOTAyIDczZDgyYjBiNmRlZTRkYTVjZTlkZDVhODg0ZGNkMmQ2YjVhMmU3MDcgcHkzaworODE5MDMgNTBjMjM5MTc0OTc2MTkzOWVmMmExZTM2YzVhOWEyOTFkMjNiZjFmNyByZWxlYXNlMzEtbWFpbnQKKzgxOTA0IDdkYjdmODQ0MjQxNGZjNGI4N2FlMjlmNmIwMTY3NDJkZTc4NDg4NmQgbGVnYWN5LXRydW5rCis4MTkwNSA5ZGFjNTgxNjNiNzk5OWFjNTMwOTdhNzdmNzlhMjhiYzMyNzE1OWI0IHB5M2sKKzgxOTA2IDY2MTUxOWZlYzNiODY4OGZjNzUwODVhN2IxOWFiMDM0Y2I2ZjM1ODEgbGVnYWN5LXRydW5rCis4MTkwNyA5ODI0NTQ2NGI2NjU0YTA1ZGE4NTQyMjNhYTkxYzJhMmI1NDBhNGZlIGxlZ2FjeS10cnVuaworODE5MDggNzU3NjI2MGQxYjY1NDE1MDA1ODJmMmU5ZDIzYzA3Mjg0YTA3MTAzMiBweTNrCis4MTkwOSAyMmMwNDVkMWJjOGNjZjkzY2YyYTQzMDFiNDBhMTI3MjI0OWQ3NGVmIHJlbGVhc2UyNi1tYWludAorODE5MTAgOGQ1ZGQyMjc2NjgwNTY0ZjczNjUwZTE2NGY3OWY4YWJhMGYzMWQ0YiByZWxlYXNlMzEtbWFpbnQKKzgxOTExIDg4YWVjNTEyNDE4NWRmZTQxODIxZWY4MTU1OTBhN2IyMzMzYjU4Y2IgcHkzaworODE5MTIgNDRkYzk4NTAyYWMzMjNhNWNkYzkxNTdhZGE5NmNiMTk5YTg2Mzg2MyBweTNrCis4MTkxMyBhNjUzZTMwNjEwOGY1MzQzYWNiZTZiODY2NGU2MTAzZmMzYjYyNmM3IHJlbGVhc2UzMS1tYWludAorODE5MTQgYmQ4YTFmZDRjMzE2ZjIwZGVjNTNmZjkxODVhMTZjZDNhYmM5YmFlYiBweTNrCis4MTkxNSBjOGJjMmQ4ZTlhZTFjZmM2YjkwNDFmZWY3MGE3YjcxMDEwMjdmOWUxIHJlbGVhc2UzMS1tYWludAorODE5MTYgZjUyYWVmZGFiMTgyMGU2OGEyZTY1MjNmYzZkZWQwNDgzZDE4ZWQzYyBweTNrCis4MTkxNyAyYjJmNTUzZjFjZTYxMTA1ODQwNGYxYzYzYTIxNWJmYzMwYWY4YWJlIHJlbGVhc2UzMS1tYWludAorODE5MTggZjYwYWFmOTliODM2YmY2ZWVlMTgxNjk5N2M0MDg2NmExZTc2NWQ1NiBweTNrCis4MTkxOSBhMjU1MWIzMGYwNDk2NDk4NTNkNDE4MTg0ZDI5NzZjMmJjMzIwODcwIGxlZ2FjeS10cnVuaworODE5MTkgZmU2YmUwNDI2ZTBkMzUzZGI4NGVjODY5YTViMDJkYmJhNmMzZDRhNSByZWxlYXNlMjYtbWFpbnQKKzgxOTIwIDAxNjdmOTE3MjFhODRjNjE4ZmUyM2E5Y2M1NjRmMDU4YWQyOWIwNDUgcHkzaworODE5MjEgODYyNDU4MjgwOWY5YzcyZDRlMzQ3ZGM1YTVjZjljODMwMmEwYjg4ZSByZWxlYXNlMzEtbWFpbnQKKzgxOTIyIGQ5MjgyMDY1ZjVjOWViYzI0ZmRlYzcwMzM1ZGNlYjA2YjhjZTJhMzcgcmVsZWFzZTMxLW1haW50Cis4MTkyMyAxMzdkYTdjZTVlOGVkMWJiN2FmNGY3NDY2ZjU1OGNjOGExNDU2OTM1IHB5M2sKKzgxOTI0IDcyMTY5ZmZlMzJhMDJjZTFkZWY3NGRmN2EzMDMwYWE2NDQ1ZmE2YzUgcmVsZWFzZTMxLW1haW50Cis4MTkyNSA2ZWFhNzliZTA0NDlmZDA0ZjZkZGE3YjAwYWEyMTg1NzlkOTM0ZWNjIHB5M2sKKzgxOTI2IDEwMzE5MjE3YWY0NDMwZGY0ZmVlZDVjMWU3ZTFlYjYyNmNhNTM2NDIgcmVsZWFzZTMxLW1haW50Cis4MTkyNyAzMDIyOTA0Zjk5NzExYmI5N2UyNzFjOWYwMDAyMWY1Y2ZlY2YyMjg4IHB5M2sKKzgxOTI4IDgxNjlmMzNmMjI2ODhmMjRhMmE0NmI2ZGYzZTljYTQ4YmEwMGM0YjEgcmVsZWFzZTMxLW1haW50Cis4MTkyOSA0NDRjMDI1ZTI5OGRhMzY5NmVmMDkwYjhhNWI0MmFhOGIzNDhhN2ZjIHB5M2sKKzgxOTMwIGU4MGRhYjNlOTA5ZjdiMzNiOTEzY2JiYmRkZDI2NzJlZjE2NTBkODYgcHkzaworODE5MzEgYTEwYTdjZTk3ZjQ1YTdiNDg1YTY0N2Y5MTEwNzE4Mjk4YTdiZWViZiBsZWdhY3ktdHJ1bmsKKzgxOTMyIDg0ZGFiMjliZGVhNzBhMzkyMzE4NDM4YzkxNzY2ZWJlOTQ5YTY5ZGQgbGVnYWN5LXRydW5rCis4MTkzMyBjMmI5MjM4MzRkZWE3NWRlYWU1YTM2OWNjNjNkZThiYWI2MzBmOWNiIGxlZ2FjeS10cnVuaworODE5MzQgNjFkNGNjNjc4MTY1NWRlOTk5YzZiOGU4MTc1NzkzOGRlZDlkYmM5OCByZWxlYXNlMjYtbWFpbnQKKzgxOTM1IDgwMTEwZmQ0MzE5MTE5MjkxOTg2OTU4NjRlOWQ1MzE0ZDMyMjk5MWIgcmVsZWFzZTI2LW1haW50Cis4MTkzNiA2Y2U3ZWJjZjkzNThkZTVmOTU2MzI1MWFlM2JiOWNkOWExNTdjOTYxIHB5M2sKKzgxOTM3IDUyZWIwYzA5M2I2ODg3YjlkZTg2NWFiYzY4YWU1NzVhMDg5ZGZjYTYgcHkzaworODE5MzggYTQ5MGFhMzAzZDhhZGRmYjgzMDIwOTVjN2MwODYwNDcxMTAzNTQ0ZSBweTNrCis4MTkzOSA0ZTlkZDZkODAwNjM4MGRkYmY1ZDllOThiNTU1MzFhZmFiNTQ4YmYzIGxlZ2FjeS10cnVuaworODE5NDAgMzFmMDFjODgxYzQ2MGYzNmMwNjlhYjMzZmI1N2FlZjAyODEwYmNhYSBsZWdhY3ktdHJ1bmsKKzgxOTQxIGFjYTEzYTVkNjE0NGQzOGI2ODYyNmE4ODk5YjZlYTJhNmFiZWI1MTggbGVnYWN5LXRydW5rCis4MTk0MiA0MWVkNThlZDVjOTNiYWMxZDY4ZTU5NjNhNGNjZmE5NjVlOWQyY2FhIGxlZ2FjeS10cnVuaworODE5NDMgOGYyN2I2MWE0MGZhOTkwNTMzMWE3MzAzOWM4ODA1NzBiZmMzNWE3ZiByZWxlYXNlMjYtbWFpbnQKKzgxOTQ0IDYwNmJhZDU4NDM0NDY0ZDMxY2EwMGI5YWU5MzE3OTBhZDAwZjJiNzMgcHkzaworODE5NDUgZGI1NTE2N2ZhNWU3OTg4OGU3N2RiNDc3NGM5NTdlODc5YWQ1ZTI5ZiBsZWdhY3ktdHJ1bmsKKzgxOTQ2IDUxNjAwNDhkNTM2MTcxMTBjMTgzYjNmOGU5MDZiNDExOGVjN2M2NzIgcHkzaworODE5NDcgYmQ4NmJiYTVlZDMzYTAxZWIzMzU5NWJhOWI2YTEzMzk1M2I3Y2Y2MSBweTNrCis4MTk0OCBlNTVmYWQzZDVhZTQ4NGM0MWNkMTcyZThhYTlhODNjMjQ0ZDI3ZDM3IHB5M2sKKzgxOTQ5IDk1NTBlZGExYzA5NjRlNjRjYjZkNzYxZTgzMWY1Y2M0ZmViNTU2YmIgcHkzaworODE5NTAgOWIzMzNiZjA4ZDQ1Zjc1YzBiNjkxYzAwYTgzNWI3ZTgzZmJkZDVlYSBweTNrCis4MTk1MSA0NGNhYzVjNTY1YjdmMDk5OTMzNjc1ZWU5YWM2ODQ0NTA5ZmNjMjMzIHB5M2sKKzgxOTUyIGQwNjU3N2RiNzI3ODUyYzUwYmJhNDI5NmQ5ZDM4MmMwYmQ3MzdkNjQgcHkzaworODE5NTMgNzNlNTM1NGY5MmU3MTQyOGFjYzEzMThiOGU4ZDQ0NzU3OTI0MmU5ZSBsZWdhY3ktdHJ1bmsKKzgxOTU0IGUwYzRkYWRkZmM1NDY5Y2VkMDc3OTBkMWI3NzkwNzU2OWQzZGYwZTYgcHkzaworODE5NTUgYjkwZTMzNWE2MDlhOTc5MWM1ZDk2MDI2Yzg0ZGU1ZjUwNDlmOTkyOSBweTNrCis4MTk1NiA4YmMwYmYyMjAxNGQ4MzFhODQ0YjUwZDI4NWQ5Zjg3YmY2M2RiZDFjIHB5M2sKKzgxOTU3IDBhNTVhZGU2ZDg1NzgxYzM4YzgyMGJmNzZiMjI2NjAzNTk3NjgxZDQgbGVnYWN5LXRydW5rCis4MTk1OCAwYjJlMGI2ODM5YTI3MzViYzhmMjFjOWFmZjkzZDBmZjNmMTEyZDY4IHB5M2sKKzgxOTU5IGIwMGM3MzY1NTVkZTcwZTNjZDJlYWE0N2MwMmFjNDdiMjU2N2M5MGIgcmVsZWFzZTI2LW1haW50Cis4MTk2MCAwZjVkMTE0ZWZmMDE0NDJhM2IyMTBjZGZmZWNjOGNjZTg3MjNmYzBhIHJlbGVhc2UzMS1tYWludAorODE5NjEgZTU4NWIyNDMxYzRhNTQ2OWQ1YjQ5OGI2MmE4MGNlYThkNTdhYjNmNSBweTNrCis4MTk2MiA1Mjk1YjRkYmYzNTVhODRkNjkxMDg0ODdlMTU3NzU3NTU3ZTEwOTcwIHJlbGVhc2UzMS1tYWludAorODE5NjMgYjllY2RjZWMwZmYwZDhiZGMxZjg4ZTQzZGQyNTBkY2JiMjZmMzE2YSBsZWdhY3ktdHJ1bmsKKzgxOTY0IDhmMTM3YTVjNDEzY2EzMTYyN2U5Zjc5ZmRlZTc5ZTMwNTI2NDZhOGQgbGVnYWN5LXRydW5rCis4MTk2NSA3YWM2MTQ4ZTZhN2Y4NGE2YmRlZTRhZTY5NWE3MjJjMzQwMDIwZjM5IHB5M2sKKzgxOTY2IDRlYWMxMzVhMzNhZmQ2OTRkMzcwMzg1MmU0M2RkZWJjZjhhOTZiYTMgcmVsZWFzZTMxLW1haW50Cis4MTk2NyBjZmYwYTkyMzE0MGJlOGVjOGI3ODhmYjhhZmU2ZTZjMTE3Y2EwYTNjIGxlZ2FjeS10cnVuaworODE5NjggZDA2NGU4OTM0ZjRkMGNjZTA0Yzk1Y2E1YTgwZjkwZTU4MWZhNWE0OCBweTNrCis4MTk2OSAyZTUyZmJjYWFhNzNiZGRjMjMxMTgxNTI1MjlkNTEwZTFhYjNjNTQwIGxlZ2FjeS10cnVuaworODE5NzAgMTM4M2I4NGIxN2FjZjc2Y2U1MWY1NzMwMGExNzExOTkyNGI5MzQ1YSBweTNrCis4MTk3MSBmODJkOTZiOWYwM2VkYWFhZGVjYjQ1ZWI0YWUxNTMyN2RkZmMxMjM3IGxlZ2FjeS10cnVuaworODE5NzIgYjA4NGMwYTkzNGE3ZTk2MzgxNzQ5ZDhmNWY3Y2FjYjA2ZTVkYWJmZSBweTNrCis4MTk3MyBiMzJhMjgxNmY2ZTljNzg0NDM5M2JkZjUxMmQ5ODc0Y2UyYmRlYzUzIHB5M2sKKzgxOTc0IDA4NDBhMjgzYWY1ZjlhYjYyZWRhZWNiNzE5ZDhlZmQ4Mzk5MmQ0ZjggcHkzaworODE5NzUgOWNiOTAxNjliMjVhODYzZGY3MmRmOGY1ZjU4ZTc1MjFiYTZlNTAxMiByZWxlYXNlMzEtbWFpbnQKKzgxOTc2IDk5YjgwYzI4OGZhYzQ1ZWVkMGY4MjNlNjcyZWU2Yjc1YzVkNWUyMjUgcHkzay1jZGVjaW1hbAorODE5NzcgOTJiOGI2Nzg0NGUxMDE3ZDY2ZTY5ZjgzZTY3OGE4NmIzYTQ4MDA4OCBweTNrLWNkZWNpbWFsCis4MTk3OCA4NjdiOTc2ZTM0OWRhZDIzOTk3YTg3ODE1NTAwYjEzZGFmZTdlYzFiIHB5M2stY2RlY2ltYWwKKzgxOTc5IDA3MjNlZTE5NTQ3Yjk1NjE1YzA2ZGMxMTU0NTdjNzJjM2IwNWFhNTIgcHkzay1jZGVjaW1hbAorODE5ODAgZDc4YjE1ODA4NzEwYTdkNjc1ZDhiYWY5NDEyMjM4ZTAxZmFjZjEzOSBweTNrLWNkZWNpbWFsCis4MTk4MSBiNzhhOTE4YjdhMGVjNjRiZTg5YzJjOGRhY2RmMGZhOTVhYWMxNmQ1IHB5M2sKKzgxOTg0IDliZTYwYzE4NTAzMmE2NWUyMmE1OTYxODk0ODJiNDc3MjdjN2QwMWUgbGVnYWN5LXRydW5rCis4MTk4OCBlZjVkZTU2ZjI0YzY0Y2RlMDYwNGIzZjcxMTQ1ZjMzN2IyMjI1ZjAxIHB5M2sKKzgxOTg5IDYyM2I3MzgxMTZkMjQyZjBiYmNiZmJkYzVkNTkxNmU3YTMyMGYzM2MgcHkzaworODE5OTAgOTViNWNhMjQ2OGNjNjBhMmNkMjQ2NGIzZTMzNzk5NWQyMWY0NzFjNiBweTNrCis4MTk5MSBhNTdkNTljY2NiOGZhNWNlYjJhM2EyM2QzMTU3OTgxM2UwMWE2MzMxIGxlZ2FjeS10cnVuaworODE5OTIgNmY5YjBjMjQwMTkxZGY3M2MyZjEwNTdiMTk2MjE2YjYwZTkyZGQwZiBsZWdhY3ktdHJ1bmsKKzgxOTkzIDhmM2ZjYzIzOTc4MWI3NjRjMzUxM2IxYWZmYWEwZGY4YjA4ZTMxY2IgcmVsZWFzZTI2LW1haW50Cis4MTk5NCAwZWJjNzJlMzY2YTFkOTZmYjhlOGNjNjk1NWY3Mjg4YTllODRjY2FkIHB5M2sKKzgxOTk1IDdhYzBmNjdlYmJiYTg5NGJjZDliMGI2NWZhOTNhNjM2N2I2ZmI1ODYgcmVsZWFzZTMxLW1haW50Cis4MTk5NiA5MWJiNTcyYjc1NmUwNmQ0NzZkNmJkYTAwYjA0ZmM4ZTk4MDYzMzU2IHJlbGVhc2UzMS1tYWludAorODE5OTcgM2VhNjZlM2ExMjlhNGY5N2IzYjdjNmM0ODVlNzI3ZGQ0NWNjMDQ4OCBweTNrLWNkZWNpbWFsCis4MTk5OSBlNDNhYjUyYjU3YjIzNDM5ZTk4OGVjZjM0YjRkNzVlOGE1MGM1MjNiIHB5M2sKKzgyMDAwIDMyYzRmZmY0NDVhZDJjZmZmMDk3YWM4ZmU0ZjMzOWE1MzI1MGYxODMgcHkzaworODIwMDEgNDlkZDU5OTE1MGNhNzE1YzIxZTBhNzlhYWNhZDY5YzZmZTkxNjQ1YSBweTNrCis4MjAwMiBmYTg5NzczMjRlZDg2NzBhYjBhZTE3ZjU5YzJmMTkzMjU0YWMzNzhhIHJlbGVhc2UzMS1tYWludAorODIwMDMgZjE5YWU1Y2VjOGNlNzlmMTYwNWY5M2JiMWI1ZjU2M2Q4YWI4MGIzYiBweTNrCis4MjAwNCAzNTRiNzUxZTQ2ZDYxY2I3MWY1OTQwYjAwODg2MjQ4YWFlYTc1ZGQ2IHB5M2sKKzgyMDA1IDM1NmQwZWE4ZWEzNDdmMGQ3ZDBhZGFhNzY1MTZhMjVlNmM2Yzk5ZjAgcHkzaworODIwMDYgMjQ2NmFmZWQ2ZjVlY2U2OWUxNTNiYTYzZDcyZWFkN2U4YzBlMzUxMSBweTNrLWNkZWNpbWFsCis4MjAwNyBiODQ4ODczOTg3OWVjOThhNTAxMzNlMTc4ZGU3NGI0MGRmOGUyYzJmIHJlbGVhc2UyNi1tYWludAorODIwMDggODE4NTVjZWRjMTU2ZjU5OGNiNjkzOGQ3ZDhhZTU4NWI1MWUwNzc2OCBweTNrCis4MjAwOSA0OGY1ODU5NzYwZWY0YTNiYjI4NWY2YjdlNmY4M2U3OTE1NDMzNTU2IHJlbGVhc2UzMS1tYWludAorODIwMTAgOGE4N2M1YWZhZGRhYmUzMTU4NjYxMGNkNjk1ZmE0ODFiZTExMDc0ZSByZWxlYXNlMjYtbWFpbnQKKzgyMDExIDU4NDEzNjc2YmVmYjY0YmMzMDk0N2E3ZTkyNGJmYjVlY2EyZDNjNTIgcHkzaworODIwMTIgMjJlYTY5NmFhNzdhYzYzZTUzZDIyYjZjZGQ0NDM0OTFjMzAxNGVlYyByZWxlYXNlMzEtbWFpbnQKKzgyMDEzIDdiYzgxZjg1MzVlYTQxNjA0YjRmZDlhOTc4OTUwODZkY2IzNDczYzcgcmVsZWFzZTI2LW1haW50Cis4MjAxNCBhZGI4YzgxY2MzOWE0NGYxMzAyZjQ4OTI1NmI0NjNiYWNiOWZmNTI3IHB5M2sKKzgyMDE1IDlkYzg0YzQyNGU0MTM2NTdhZjg3ZjM4NzkxNmNkNDc1YjQ2ZWVmMGQgcHkzaworODIwMTYgNDIyYTE4M2UwYmJkY2M3MmE4MDY1ZDM4MWU5NjRiNTc4ZDc4MGMzMyByZWxlYXNlMzEtbWFpbnQKKzgyMDE3IDAwMzBhNzQ3MDY2NjAxMTZiZGIyZDNjYzA1NGU5N2YwZGRlNGJiMmUgcmVsZWFzZTI2LW1haW50Cis4MjAxOCA4NGZlZmJmMWQ2YzA4MGIyYjE1MTMxYzJmODRlYjk0OTYyNTBlNmUzIGxlZ2FjeS10cnVuaworODIwMTkgZTc1MzU2MmNjMDIzYzAzZjFhYWEzNTA4MjRiMDU1Y2NlZTExNGJjOCByZWxlYXNlMzEtbWFpbnQKKzgyMDIwIGM0MWNiNDg0ZjA5MDZjZTBmNmMzNzY1MzlkYTczNmU0MzVlMGMxMmEgcmVsZWFzZTI2LW1haW50Cis4MjAyMSBkMzBmNmM1OWY4MTA3NTc2OTFmNTNhZTBkOWFkOTA3YjU3Mjc5MTcxIHB5M2staml0Cis4MjAyMiBkMzM3N2ViZDNlZTU0ZmZkNzdmYWFiZjI1MTBhNmEyMWMwYTYwMzg2IHB5M2sKKzgyMDIzIGI0MjM3NzAzYTBjYzUxNDExZmVlYWYwNzljYzQ5ZmQzMWRiNjhlNDEgcmVsZWFzZTMxLW1haW50Cis4MjAyNCA4MTEzNWNjZjVmNTVlM2UyMGRmNmZhOWQ1MGUzNzVlNzI3MzlhNWFhIHB5M2stZHRvYQorODIwMjUgNTVlMjRjMjQzZTJmMWE4N2NiOWMwNGFhZjMwNmNhYjM5YjcyNzQ2NiBweTNrLWR0b2EKKzgyMDI2IGM2ODQ1ZTgzMDg2ZjVmODMxNTg5Nzg0ZmQyZDQ5MDljMTljNmFlZjEgbGVnYWN5LXRydW5rCis4MjAyNyBkYTNjNDc5NGQ2ZGQ2YzUxOTk3NmY5ODRlY2ZhNmM5NzZmMmExODZiIHJlbGVhc2UyNi1tYWludAorODIwMjggMzQ2Y2UyNTVhNTJmZWYxZGVlMWM2YWYxYmM0MmQ3ODVkMmNiMDVjNCBweTNrCis4MjAyOSBlNGQ1MDY0MGYwNzc3YzQ3ODZmNjE0M2JiY2Q0N2JjYTAxMDM5NmM4IHJlbGVhc2UzMS1tYWludAorODIwMzAgNzM1NzgyYTI3NWY1MGE4NTRjN2I1MThiNmRjNTkxMmUzNjdkYmZiZSBweTNrLWppdAorODIwMzEgZjM0MTM1NTNmOGY1ZWExYTI2OTJiZGQ3Njg3NTcyOTY2MmY0NGJhNyBweTNrLWR0b2EKKzgyMDMyIDg1NjI3Njk1MmUwODYzOTdhNTA1N2QyNjdkNGI1MjI0ZDNjYTUxOWMgcHkzay1kdG9hCis4MjAzMyBiY2MwYTk5N2YzMjFmY2FlMWQ0ZTE0MTE3NWNlZGY2NTZmYjEzNjcwIHJlbGVhc2UzMS1tYWludAorODIwMzQgNmQzYjA1YTQyOWI1YWNhNWUyZjUwZmM0NDE5YWU2ODBjY2E3N2JlNSBweTNrCis4MjAzNSAyZGQxZmU3MDQ3ZmZkOWZkNzY2YWZiZjVhZmIyMTY4ODYyNGZhOTIwIHB5M2sKKzgyMDM2IDFiMDhhNTQxNTUxYWFkODY3ZWM1OWY4YjRjYWFiMzJlNGZkYWQ5MDEgcmVsZWFzZTMxLW1haW50Cis4MjAzNyAyODNkOTQ3MmRmNGVkM2I3YTViZjgwMDRmNGYxZDZlMWI4MzAwOTVmIHB5M2sKKzgyMDM4IDgwN2NkZWE0NzgxN2JiZTc4MmU3ODY3MTRhMTJkODlmOGQxYWM5MjggcHkzaworODIwMzkgMDE3ZTYwYWU2MDVmNGJlMWUyMTM2NTJhZTAxNTM5MDk1YjVmMmU0NSBsZWdhY3ktdHJ1bmsKKzgyMDQwIGY1ODg5ZjJhYzM5YmIzOGUyMjY5MDUxZDMyNTYwOWQzYmY5OGYzNDUgcmVsZWFzZTI2LW1haW50Cis4MjA0MSAyYmIwYTI3YTNlMzVjNDI3Y2EwZmZiMzcyNTg5MzhhNzFkYjhlNGY4IHB5M2sKKzgyMDQyIDhjYzBlMWM5YmE2ZDYwOWZiOGE1MzViNzNkMDdhMzgyNWNjMWFiZTggcmVsZWFzZTMxLW1haW50Cis4MjA0MyBjYjQ5OTdiNmFhOGJlNjk4YjlmYTg5MzlkMTVhYWUyZjdjYTU2YjNmIHB5M2sKKzgyMDQ0IDJjYzA5ZjA2OTUwYjA0ODI1ZTIzNzZlM2UxMGFmODM1NDU1NTI3N2EgcmVsZWFzZTMxLW1haW50Cis4MjA0NSA0ZDI1NjM5YTNiMTRiZDZiY2UyZDhmYzQ4MGUwMGE2YTFlZGQ5M2VjIHB5M2sKKzgyMDQ2IGIxZDZjY2FkOGVhZDY2NjY0ZjA2YjBiOTc4OWI0ODBkMDdhYWI0ZTIgcmVsZWFzZTMxLW1haW50Cis4MjA0NyA4NGVkMzQ0NmEyOWExYjgzMGY2YmFlN2QwYWYzNjBkNTdhMTljNTIwIGxlZ2FjeS10cnVuaworODIwNDggMTc2NGUwYmU0ODRjNmM4MmY0MDBjOWEyNmIzNWE4MjUzN2Q1ZGE5ZCByZWxlYXNlMjYtbWFpbnQKKzgyMDQ5IDJmZTA4MDJjNDJjNzQ1ZGNlNzJjNWZlMDc4MDVmMWYzMGI2MjMwN2IgcHkzaworODIwNTAgYzJlNzNkODQ0ZDgyMmJkMzJlODRkZGJhYTkzMGQ5YjU4YmI2NmVjOCByZWxlYXNlMzEtbWFpbnQKKzgyMDUxIGM0OGRkYzk2ZjQ1NGFlMjhiNDJmYjg2NTdiYmU1YzU3MTVmZTVkOGMgcHkzaworODIwNTIgNmJmZGNkMjVlZWE3MGRmMDNlM2NiMTMyNmRlOGMzMDBhYTE0ODY1MiByZWxlYXNlMzEtbWFpbnQKKzgyMDUzIDVjMGQ4YzI4NGMzMmRjOGU3YTAyNjkzZjI5MmQ4YmUwZTYxODc1ZDcgcHkzaworODIwNTQgNmE5OTkwZWY0YTZmNWU5NzMyYTM5OGIxZGFiMjdkODMzOTFjMzBjYSByZWxlYXNlMzEtbWFpbnQKKzgyMDU1IDQ2YWI1ZTRkYmE2YmFjN2QxZTdiYjIwZGJjZmUwMDA1ZTI4YTY2M2IgcHkzaworODIwNTYgMWRhNzczM2U4ZjI0NzMxYTBiODhkYmQ2OTA3ODA0Y2EwMmExMWRjMyBsZWdhY3ktdHJ1bmsKKzgyMDU3IGYzZGQ5MzA2NjViZDE3OTM2MzA4ODEzMzA0YTJjNDA4NGM1YmIwOTEgcHkzaworODIwNTggZGExYWFmYTU1YWUwMjM5ZWU1MjZmZWM4NGE0YzQwNDI2NmExMzFjZCByZWxlYXNlMzEtbWFpbnQKKzgyMDU5IDkwN2Y1NjQ0NzZiZTY2OWViZWFlZDQxOGVmZWFkMmViZTYwYmZjYWMgcHkzaworODIwNjAgNTljNjBhNTliMjdhNTdlN2M0ZTE2MmI2YmVkMjY0ZGYwMmM2ZmRiNiByZWxlYXNlMzEtbWFpbnQKKzgyMDYxIDlkNGQ0YWMwYTdiZmU4MTE3NGFmNGQwMTE1ZWNmZDBkNGE2YWMxOTAgcHkzaworODIwNjIgMDc0NDliMzY3OTM1N2RiMmVlYTk2YTgzMDJkZjg3YzAzY2JhNWI1YyByZWxlYXNlMzEtbWFpbnQKKzgyMDYzIGZhODMwMzcxYzcyNDE3NGZiYTFiNTNhMDk5MWYwYTNkNTE4ZDIxMDYgcmVsZWFzZTMxLW1haW50Cis4MjA2OCA0ZDY5YmRiNzFjOWFkNTFjZGM2ODY5NjQ1MjZjMjU2ZGJmMjc4ZDNkIHB5M2sKKzgyMDY5IDQ2MzU2MjY3Y2U4ZmJiNTlkOWIwNjc1Mjg4NTdkYTgxMDJmYWQ1YTYgcmVsZWFzZTMxLW1haW50Cis4MjA3MCBlNWY1MDA4ZmQ1NmQ1MGY0OTgwM2I1ZTVkYjJmODliYjcwYjkyODM3IHB5M2sKKzgyMDcxIGJmOTRlYjhmYWY2MjUzN2ZkNzQ0NmJlNDNkODljOWIyMmIzNTM1ZTYgcHkzaworODIwNzIgZWEyNTEyOWI5NGZlZWM1MDA5ODQ4MmM0ZWZhODI1ZWQ3MWQ1MzY1NiByZWxlYXNlMzEtbWFpbnQKKzgyMDczIDkwY2MyNjY3OThhMjRmYzUwYzE1Yjc2MjFjMWIzNDg0ODkyMDExNjQgcHkzaworODIwNzQgYzU0ZGQ1NzZkZDA1NTQ4MmYxY2MxNzMwNDRjZTdlZDBkNThkNjM2MSByZWxlYXNlMzEtbWFpbnQKKzgyMDc1IGRhNTU4NDYxZDlhOTRiYjdlZTllNzlmY2MyYmMwZTI0ZmU4YWU3MDggbGVnYWN5LXRydW5rCis4MjA3NiBlZjhhMmFiMjZlOWZlZmVmYjM5ZjU3ZjlmYzMyMGFmOGZiOTRjOTgxIHB5M2sKKzgyMDc3IDFmMGUwNzgxZjczZTQ2MWIxYTU5OTBiMTViMWViNTlmODlmMzk4MTkgcmVsZWFzZTI2LW1haW50Cis4MjA3OCA1ZGU1MmViMjUyZGE3MDZkYTNmNjk1NGQ1MGUxZTg0YTdjMTNjMGY5IHJlbGVhc2UzMS1tYWludAorODIwNzkgZGQ3MDA1MTQ1ZjZlNjVmMjM2ZWFiNWYyMDg1ODc5OTNiMmIzZDNjYiBweTNrLWR0b2EKKzgyMDgwIDE4YmNmNmMyZDFlMzdiMjgxODE0ZjQ0NDA1OTRkOGJiN2ViZDM1YTggcHkzay1kdG9hCis4MjA4MSBmNjc2N2RkZTliMjk4OWI4N2ZmMDYzMTY2MGM3YTc5Njg2YTRlMjVjIHB5M2stZHRvYQorODIwODIgYjRhNWE4NjllMWM1OWQ4YWYzNTk5OWEyNjZlOGVkYmM4OGE2NzdmYyBweTNrLWR0b2EKKzgyMDg0IDNhZmM3ZDhhNDQ1YWE1YWM5NWYyMTdjNTM4N2M2Mzc5YjVjNTc1NWQgcHkzaworODIwODUgMGRhNGM3ZDFmM2VmMjMzZTVhMzQzZTY0ZmQ1YzI5NDlkZGQ1NzczZSByZWxlYXNlMzEtbWFpbnQKKzgyMDg2IGI5MDE5ZjBkZDg5ZDNlMTc2OTEyNTJkMTI4ZjEwYTgzNWYxMGJkYWUgcHkzay1kdG9hCis4MjA4NyA0MjliMzI5YTAzZjgzMzRhNjI4Y2FkY2YyZTNhNjMzZDEwMGYyYTQ5IHB5M2stZHRvYQorODIwODggMzQzMDA1YzRhNGUzZjVlMWUxZGEwNjk5OTYyNjcyYWM2ZjcyMjE0NCBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIwODkgNDQ2YTk2Njg1OGYxNDgxZTcwNDdiZjAyN2VjMjc2ZTQ1YjcyMmVmYSBweTNrCis4MjA5MCBjNGY1YzczNGRhNmU0YzEzN2FkMDYyNjkzM2EwMDg3NmM1OTg0OGMyIHB5M2sKKzgyMDkxIDVhMjhjNmNiNDc1MjdiOWQ0Nzc5M2ZlYmQ4ZmFlMDhkNzM0OTM1MzUgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDkyIDA2OTUzNWU1MGE5ZTRmZGQ0ZGYwZGI2YmRlNmZmOTEyNTVmNTljYzUgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDkzIDQ2NmMxNjJjNzMwYzIwY2Q0ZGM3NmQzNGRkYWFiZTRmMmY5YTY3MzMgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk0IDg5YTQyZTA3MTNkZGI5ZWViMDlkZjUwMTMwYjNhYmJjYjk4NDlmZTIgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk1IGVkMDc3NDBjNzY2N2FmZjllOWE3MGZhNTUxYzA1MzExZTc5OWM5ZGUgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk2IDg4MGJkZTVhYjdjNTQzNDUzMWNkNGQzMjY3OGJjN2U3ZmI0NjAyMGQgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk3IGFjNWY1NTM3YzczYjZkZTQ3NTRjZTkxNGUwY2I3ZDE4ZDI5NDBmNWUgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk4IDgwZDQ4MDA3NzQzMzllZWI1MmJmNjlhZDZjNzYzYWZlOGY2YmU3NjYgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMDk5IGY3M2ZhMzVmNmYwNWRlNDViNWRhNjgxZGYwOTM1MzNlNGM5NDA2NTQgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTAwIDM1ZjgwMTUyNjI3OGQ0YTRkMjY4YTI2ZGY3YzY4Y2NiMDFmYjQ4ZTkgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTAxIDVjZmUwNWYyYTRlOWM1NmFjMGNhMzYyMDM4NTU1ZDUwMzJjZjlmMmQgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTAyIGNlYzFiNTU4NDUxN2IwOTc1MjdlMzRjODI1OTVkNjk3NDkzMmY1ZDcgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTAzIDgwNjEzZGNmODA5MTBkNmQwYmFlMzk3Mjk1M2UwMDUzNzFjYjE4MDcgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA0IDQ4M2YzNjJiOGVjMzA0MzgzMmE2MTE3ZjQ0NWE1MDNlODY1YTk3MDAgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA1IDMwNjMzNmExY2UyOTExNzBhZTM4MDQzNjRlNGZmZTE2ZmZiYmM3YTYgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA2IGE1NmZhYTZiOGZhMDJmZDY2NDljMTE5ZTY1ZTViZjlmNjdlMThiNmIgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA3IDE5OTFhOWFhZmY1ZTM5ODUxNTIyN2UyMzU0NTZjNjJlMjA3M2U2M2EgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA4IGI2MTQ2NDdhMzQwMDUyYjcxNzNlMDEzNDVlMjZkYmE1YWI1NmE4YTkgcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTA5IGViYWMyZWI3MjU1YjY1NTNiMWU3M2Q3ZGQ4YmE1OTlhNjA4NDg4YjggcHkzay1zaWduYWxmZC1pc3N1ZTg0MDcKKzgyMTEyIDkzODk2YTA5NDZjMmVmNTg0YTk3YzUzZGYwNTk0ODg2M2E3MjJiMDcgbGVnYWN5LXRydW5rCis4MjExMyA1Yzg0ZmNjMWQ5MDZlYWVjOWI1ZmQ0MDAzNWQ3YjUxOTIzMTlmMGNjIHB5M2sKKzgyMTE0IDZkOTc0NmNkOTM1YzYwZDdmNTk3NzRmNTJlMjRkODAwOGY4YmVhZTUgcHkzaworODIxMTUgNjU0ZTUzZTc1Y2QyYjAyY2FjMzgwMDcxMTcyMWU3NzFkMGI5ZTU1MyBweTNrCis4MjExNyBlZTM1ZjcxNTY3NjEyYjFlNTk3OGQ1Y2FmMmJlNDA5MjNmYzRlNTdmIGxlZ2FjeS10cnVuaworODIxMTggYzkxNTM4YzFhN2U2YzA3Nzg4MDhkOTk4NThjNTc3MzAyMTE5NDc3MSBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIxMTkgNmFjZGRiNWZlOGUyMWJlNmRhYzA4OTU4ZDczMDI1OWJmODg3YTA0MiBweTNrCis4MjEyMCBiZGVmNDU0ZjcyMTJhOGJhYmUwMGRmNmM5ZDkxYzU3NzM5ZWU1M2M4IGxlZ2FjeS10cnVuaworODIxMjEgOTIzNzM1MTM3MDMwZjJjNGM5MDcxMjliMTM3ZDE3ODEzMWJlODQ5NiBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIxMjIgM2YwOWNjMzhlOTdlMzBjZTMzNDFkYTM1YTJhMjc5MDg1ZTFhM2Y5YiBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIxMjMgOTY1YTQ0YzJiMjk3YjliNmNlMmM4NzQwZWIxODEwM2ZkYTk2ZGRhNCBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIxMjQgNTNkM2QwNjhiZjRjNGI5ZTcyMGRlYThlNWYxYTc4YThhMjE4NWNjYSBweTNrLXNpZ25hbGZkLWlzc3VlODQwNworODIxMjUgOTg2M2JjODYzMGEzOWRkNzNhYTZlN2Q2OGJmNWRlZjI2ODM2YmI3NyBweTNrCis4MjEyNiBjZTIxZWI1YzE3YTVmMzAzY2MyNzliMDU0YzQwNGY3ZjcwMjg1YWRhIGxlZ2FjeS10cnVuaworODIxMjcgZDAxNGQxZjY1ODIzMTk1YzExYWZjMzFhMmVhNjdkYjJlYzVmZGU5YSBsZWdhY3ktdHJ1bmsKKzgyMTI4IGRkODgwNTdiMjdiMWNkOWY1YmU5YmRmMWFhNDI1YmFkZGExYjM5ODkgcHkzaworODIxMjkgZjNkNDVjNDQzYjEzNzllMThiZjdkOGI2ODcyZmQyMGE3Mjc2ODcxNyByZWxlYXNlMzEtbWFpbnQKKzgyMTMwIDFhODZkODQ1ZmJjNmYzOTRhZGQ2YTQyMGMyN2Y5OGE4MjUwYmNiNWQgbGVnYWN5LXRydW5rCis4MjEzMSA3M2Y4ZmFjYTI5MGJmZWI2NDBjY2ZiZTQxZWI2ODZjMDI1MjU5ZWY3IHB5M2sKKzgyMTMyIGExMDFkMDczYTVjZDFmYmM0NTRmY2I1YzJmMDU1NWQ1NjY1ZTljZDUgcmVsZWFzZTI2LW1haW50Cis4MjEzMyAxYWY5NTY3NDU4OGQxZDNhZTJjYTg4NWVkMDMyMTYwZjg5NWUyYjgzIHJlbGVhc2UzMS1tYWludAorODIxMzYgNTgxNzM5NWEwNDhlNWZmMTRmYzg1MTQ3NzA2ZWZiZjYwNWY1MDdmYSBsZWdhY3ktdHJ1bmsKKzgyMTM3IDEzZTViMGIyMDcxYTJhNDIwNjdmYjAzZmFjYzkzMTQwOWZhNmJhNTAgbGVnYWN5LXRydW5rCis4MjEzOCA3ZTRjZDcwM2ExOGI3MzMzZTg4N2I1NWM5NTcxMDQwOTIxYzcyOWQ5IHB5M2sKKzgyMTM5IDFmMTBjOTEyYzEyN2ZjMzBkZjlmZTYzMjIxNmNkZmYwNThmOTFkZmMgbGVnYWN5LXRydW5rCis4MjE0MCBkYWE5MTg4OGRhNTJhMzk2NjM1OTRkNDFiMGJmMzc4MTlhMjkyMGI3IHJlbGVhc2UzMS1tYWludAorODIxNDEgZjI2OGMyYWUwODM1ZjQyNGIzYjA3ZGRlOWM5NGNjNTQxN2MzZTAyMiByZWxlYXNlMzEtbWFpbnQKKzgyMTQyIGFmNzUxYTFkNmY0NDk0N2EyNDE0M2FlYzU1YTRhNzA3NzkyMzhhZTggbGVnYWN5LXRydW5rCis4MjE0NiAwY2Q5OWY4YzMwZTEzOTAwMDhhOTVlMTQwYzY0YzI5NjQ4OTA0YjhmIHB5M2sKKzgyMTQ3IDBhZmQ3NjBlN2M3NjUzMWIwZGZkNDFhYjMwMDU1YTE0NDhmMjBkYzQgcmVsZWFzZTMxLW1haW50Cis4MjE0OCAwYjdhY2RiZDAyZWIzNDM4NDI5NjhjNzg1OWMzYjJmMzdjNWFmYTg5IHB5M2sKKzgyMTQ5IDVhMzI1ZTBmMWZkMDEzNTdmODRiNThiNWVlZTE1MzY0YzQzNjdhYjIgbGVnYWN5LXRydW5rCis4MjE1MCA2ZTVkMjFlMjIzZDIyNDg0MTZmNjhlZWQwZDRkYWU5Y2JlYjNlODNhIGxlZ2FjeS10cnVuaworODIxNTIgNTZlZDY4YzIxNWE3MWZmOTdhNDJmZjU5NjhmNTY5NTIyYWIzYzAxMSBweTNrCis4MjE1MyA1ZDMyYjZhZmI1MmVlZWQ5MjY0ZDUyNjA1MjM3ZDYzMTE1NDM3ZWZkIHJlbGVhc2UzMS1tYWludAorODIxNTUgMTA4Zjk0ZDUzZWRiZTJhMWQwYWI4MzBiMDkyYjRiMTc0YzNhYjg5OCBsZWdhY3ktdHJ1bmsKKzgyMTU2IGQ5ZmNiYTRjYzE0NTQ1YTlhODRlNGZkZjc5ZjgwYjAzMzJhNGVhN2IgcHkzaworODIxNTcgZjkxOGQzNWVjNTZiODUyODkwMzk0OWU2MGZiMDMwMTk5N2EwMWE0OCBsZWdhY3ktdHJ1bmsKKzgyMTU4IDM3NmU4MWY5ZWJiMWQzOTFmN2M5YmEwYzZkMTU1NzZkOTc0ZGI5NjEgcmVsZWFzZTI2LW1haW50Cis4MjE1OSA5MDYwNjNjZTcxMTk2NTk1OWM5OWRiNDViZjg1MTBhZDkzZjY3NDg3IHB5M2sKKzgyMTYwIDE4NjM1Y2JkNjZlMGEzM2FkNDI5ZTU1NDFhN2ZmNzA5N2EyZmY0NjggbGVnYWN5LXRydW5rCis4MjE2MSBmNzhmY2IxYjIzZjViOGUwMDEwM2RjMTZlMDgwMmI1MWFlMDA3ZjNjIGxlZ2FjeS10cnVuaworODIxNjIgMWM2OTVjMGFhZmZiNDhjMmQyMjZjNWFhN2YyZTA0NjBmYmM2NTFhYSBweTNrCis4MjE2MyA0ZTI0ZGZlZGY4MGM1MWU1MDA5YWFiOTY0MmFlYTY4ODYxYTY2NDcwIHB5M2sKKzgyMTY0IGExMjA2YTY5ZTc3YTUzYjkwY2JkNjZjYTA0ZDQ5MmFmMmQxZTBhM2QgcmVsZWFzZTMxLW1haW50Cis4MjE2NSA1M2ExNTJiNDAwYTdlNWJjNjNjM2U3MjhkOTgyNDJlYTEyYjFhNmIwIGxlZ2FjeS10cnVuaworODIxNjYgZjE3YTJjMWUyOTE5MjhjNDYzNzE2ZTAwNDcxN2M4ZDY5YjllYjJjMiBweTNrCis4MjE2NyA0ZGQ4Y2ZmNmI3YmViMWY2ZjEwM2M0Y2NlNmUwOGQwNDZiODgwYzE2IGxlZ2FjeS10cnVuaworODIxNjggZDE1YmU4YjVjN2NhZDk2ZDRmYmYzZDA2YmQxYWE5MGQ1MGQ2YWEwZiBweTNrCis4MjE2OSBlOWZiMDQyZTQ2ZmI1MDAwNWY3N2VhMTY0MzNlNGY0MTg1ZWY0MmRjIGxlZ2FjeS10cnVuaworODIxNzAgODgzNmQyNzE2NzBiNmJiODY0ZjFhYjNjNDRkNjUyYTk5MjI2ODM3OSByZWxlYXNlMjYtbWFpbnQKKzgyMTcxIGViOTVhZjBhOTljYmIxYmEwYWJmNWRhNWE0MTk2Zjk1NTZiM2QzNmUgcHkzaworODIxNzIgMjkwN2NlOGJmYmI2MDI3NjE3YjlmYTQwOWZiNjIwNGRiYjhjNjY2ZCByZWxlYXNlMzEtbWFpbnQKKzgyMTc3IGNhNGYyZTk4NjliNjc1MmZjZDljYmFiMTEyYjExZDkyNmQ3N2M2YzkgbGVnYWN5LXRydW5rCis4MjE3OCA0MjZlZjljMzc5MTZmYWZkM2I4YjVkYTQ2Njk3MjEwZTliMjlmNmUyIHJlbGVhc2UyNi1tYWludAorODIxNzkgMDc0ODU5ZWNkYzE4NzMyMmRhOTYyMzY3ZWYwZDdhZWVkYjUxMjcwYSByZWxlYXNlMjYtbWFpbnQKKzgyMTgwIDc2YmM2YjU3NzM3M2NmNTRkZmVkZDFiMTBiMmY3NGQ0OTM1ODNjN2YgcHkzaworODIxODEgYzhkNWQxMjA1ZmU4MzBhNWIxZDZhNDIwNjAxYjYxYmFiZWQwY2ExNiBweTNrCis4MjE4MiAwZTQ2MzdlYTIwZDAwMTNhNTcwZGM5MTIwNjhkYzc0Mzg1MWMzODgwIHJlbGVhc2UzMS1tYWludAorODIxODMgNjZlZjlhNzdjOGFmZDVjYzE4NTJhNjc2MjJhYWUzMmU4MWFlYWMwNSBsZWdhY3ktdHJ1bmsKKzgyMTg0IDNjZjM1MjMxZjdkM2VkMzc1YTFhOTlkZmQ4NWI2ZmYwYmM2NjZhZjYgcHkzaworODIxODUgM2FmZTM2MWVmY2YzOGJmODg2NjVlYTcxMjMxNzQwYWY3YzE3N2Y1YSBweTNrCis4MjE4NiBjZjc5NzQxZjdhMjNmYzU1ZmU1MDM3YTc1YmFjZjNhNGVjMWMyNzdjIHB5M2sKKzgyMTg3IDk1ZDIwMzVhMTY0YjliMDVlMDU0MGQ2NmE4MzY1N2MxNGM1MTE0ZGMgcmVsZWFzZTMxLW1haW50Cis4MjE4OCA1ZjQ1NjkyNDg5ZGExZmQzNTYxZDA2MzljNjgwNGYzZDEwZGE3ZWRmIGxlZ2FjeS10cnVuaworODIxODkgY2IxYWI4ZTkxNTgxMDcwODdlMDFjM2Y5ZWEyZmU4ODVlNTNjM2U3OSBsZWdhY3ktdHJ1bmsKKzgyMTkwIDYxZmM4NGJjNGIxNDYyNjVkMGNjOWJkOTQ0NzM2OTNhZTFkY2UxMjcgcHkzaworODIxOTEgYjE3ZmNkZDM4YTViNDAyYTBhMDExOWJjYjYwYzEyMzcwOTExODI1MyBsZWdhY3ktdHJ1bmsKKzgyMTkyIDBkNDI0NTQxMmQwYjUzM2I1NTk5NWVkYTJhODM0NmYwM2QyODQxMzggcmVsZWFzZTI2LW1haW50Cis4MjE5MyBjNTUxNTdlMDNhYjk0M2Y5OGJiMmE0ZjQ2OTg2ODI1ZWY2YmFmZjgwIHB5M2sKKzgyMTk0IDQ1YmFhNDI5ZmM0OWNjZDk5MTViNmQzMjA0NTUzMTZlYWM5NWEyN2QgcHkzaworODIxOTUgM2Q2ZjBhMjA1MGUyOTI2ZjcwOTNkYTJiMWNlOTUxMjZiZGZjNTU4ZCByZWxlYXNlMzEtbWFpbnQKKzgyMjAwIDVkNTM4ZDFlNzA5OGQ5NmFhMWIxOWFjNTUxMDM2NzdkYTFiYWUwNjYgcHkzaworODIyMDEgYTM5YjUyZWUwYjFkNGQ5MmVhYjYyYWE5OWRmYWVjOTAzYmQ4Zjg0NyByZWxlYXNlMzEtbWFpbnQKKzgyMjAyIDg5Mzk3MDE0MTYwODJhMjliZTUxOTRmMGY1NWQwZjUxNWU2ZjYzNDMgcHkzaworODIyMDMgMzQ3NDRhNzYxNDNhOGU2NTZlMWI2MWE3Yzk0ZjNkM2Q2ODIzM2MxMCByZWxlYXNlMzEtbWFpbnQKKzgyMjA0IDIxZTg2ZGQzMjhmMTU3ZWM1ZmM3MzExZjc1MTlkNWQzYjNkOTcyODEgcHkzaworODIyMDUgYjhiMGExNWY4YTdjYTRlODQzMWJhOWEwYTUzZWIzODRmMmZkMzAyMCByZWxlYXNlMzEtbWFpbnQKKzgyMjA2IGJiNjIyMmE0ZWQyNDI2ZTljN2JlY2M5ODc1ZjFjMDk1YjBlMWZiYjIgcHkzaworODIyMDcgMTNiMmE1OTJjMTg2ODNlMmZkZmUwNDc2YTA4MTNiNWFkMGFiYTAwMCByZWxlYXNlMzEtbWFpbnQKKzgyMjA4IGJjYzBlODI1ZmFhMGNhODBlOTMzYTczODRkZWE4ZmM5NDkyOWMwZTEgcHkzaworODIyMDkgYzRkZDVhODg5ZWNkZmI2ODNmZDk2NTg2ZWVjNmMyZGE1MGIzOTk3NiByZWxlYXNlMzEtbWFpbnQKKzgyMjEwIDQ2YjQ4N2U0YTc1YjhjMzlmMDg4MGZkM2M5Yzg2ODNhNGM2M2U5MjIgbGVnYWN5LXRydW5rCis4MjIxMSA1NzExNWFiMDZiMjc4MDA2MTM2ZGEzOWVmNGRiNzdiNGE5MjViZjM2IHB5M2sKKzgyMjEyIDU5OGU4ZGMxOGI4M2U4OWQ2YjcwMmM5NDI1YTFmZDBhYmI5Y2I5NjIgcmVsZWFzZTI2LW1haW50Cis4MjIxMyBlZjY0MmUyNDA0N2FiNjgxNTY0OGYzYzllMmRjNzliMTExZTdiYTM1IHJlbGVhc2UzMS1tYWludAorODIyMTQgNGUwOTllNTAwNGExZTgyNWNjMjQ0ZjExMzcxMTZhNmE1NzhkNmE1NyBweTNrCis4MjIxNSBkOTZhY2M0MWM1OWYyZjQ3N2Q0YWRhNTFiNGVkYzIyOGQ0ZGRhM2Y4IHJlbGVhc2UzMS1tYWludAorODIyMjAgNjlmZGY2OGUwYjViNDYwNDExNTJiMjFiMGMwOGViOTQ3YTVlMDcxNSBweTNrCis4MjIyMSBiYTU1ODQ0YmY1YzAzMTRiNjk1NTNmMWJiNzM3YjI2ZWI5NDc2YzhjIGxlZ2FjeS10cnVuaworODIyMjIgODNjYTBlYTllZjFmYjIxNmNhZmNmNTBlNWU2YWJiZTBkZjZhNjRkMCByZWxlYXNlMjYtbWFpbnQKKzgyMjIzIDFjNWMxNDZkZTY0MjVkMDBlMDlkMGFjODM1YjlmMGQ5ZDVlNWY4MjMgcHkzaworODIyMjQgMGM4NzQ5MDc2N2JmMWM1MTY3OTI2MzZjYzdhZTIxNzRmODA2YzkwMSByZWxlYXNlMzEtbWFpbnQKKzgyMjI1IGI2NjNjZjZiYmU4YjM3MWNiYzRiMTA2ZDhmYWU5NjE3NDkyNmQ5NTMgbGVnYWN5LXRydW5rCis4MjIyNiAwOWViMzYyNmQyYWFlODExZDZlNDNiMzBlY2VlMzkzM2QzN2E1NzhiIHB5M2sKKzgyMjI3IDNkMzEwOGFjMjJiMmM2ZTU2ODU1MTk3MDZhNjhkYTUwOTIxYjljZjcgbGVnYWN5LXRydW5rCis4MjIyOCAyY2QyMjI1N2E4NmQ3YjgwNjlhNjMwZTRhNjA0ZDA2ZTllNWRjZTlkIHB5M2sKKzgyMjI5IGEzNGZkNmY4MTY1MTc5YmZhMzUyZmRmMWUxYThiYmU4MDA0N2I5ZjAgbGVnYWN5LXRydW5rCis4MjIzMCBlMjQ5OTBkMDU0NGZmZmY5ZjI0YTY3NmFjYTUwYWM1YTlhMTFmMTQxIHB5M2sKKzgyMjMxIGYyMzJjNTY5ZDIyNWQ3YzE0NzBkMjZjNmMwMWE1YWQ3YTVjOGNlYTEgcHkzaworODIyMzIgYzUxYmYzMTUzZjJjYTg5YjQwYTg4YjYwNGIyOGMwYWYxMzRmMzJiYyBweTNrCis4MjIzMyAxYmEwYWIwMmUzYjg1NzA3MzQxYWFmZjEyMjM3ZGVmZDMyN2NiMmY5IGxlZ2FjeS10cnVuaworODIyMzQgY2I2ZDliZDU1OWVmZDNhZDMzNmU1OTQ4NTVjZWExYTlmNDRlZWE4ZCBweTNrCis4MjIzNSBhNDU2YjAwYzNiNzUzYmRkOTY1ZWU3ODU4MTdiYzAwYTU3NWI0NzcwIHJlbGVhc2UzMS1tYWludAorODIyMzYgN2RjY2U2YTI4MWNlMmJmNmE1ZDQ3ZTg5OTlmMGU5MzQyMGNkNzJkZiBsZWdhY3ktdHJ1bmsKKzgyMjM3IDE1MmI0NDY0MmIyYzQxN2ViNmFlMmFiMDI0ZDNmZTZmZmNmZTQzMTggcmVsZWFzZTI2LW1haW50Cis4MjIzOCA0YWZlZjJlNDBiNjMzMjQ5YmQ2MGMzNjU2YjRlZTUzZjY2YWVhMWRlIHB5M2sKKzgyMjM5IDIxNTUyYTQ4ZWJkMTk2OGRiOTE1OGM0OTVmZTQ5YmU1NzcwYTUzMjQgcmVsZWFzZTMxLW1haW50Cis4MjI0MiAyZjZmZWQ2MDYxM2UxMmM4ZTkyMTEzMzQwZWM2YWM1YzFiMGY0N2NhIGxlZ2FjeS10cnVuaworODIyNDMgN2IwNGQ5YTY5OGFlZTY3NmMyYjA1OGRiZTliYTI1NDc2M2YxM2Y1NiByZWxlYXNlMjYtbWFpbnQKKzgyMjQ0IGQxNzEyNzZlZDc2ZGE3MjMzNGI3ODAwNjJmZDJhZmRkMTVlM2QyMjAgcHkzaworODIyNDUgMWRjYWU1MmM0OTVjODQ2YzFjZmNkNmQ4ZGI5ZDExMzJiNDQ1NDk3NCByZWxlYXNlMzEtbWFpbnQKKzgyMjQ2IDI5ZTUwOTc5M2QzYzQ4MThhOGYwYzU3MGJmNjk1ZDkwNTM1NWE0OGIgbGVnYWN5LXRydW5rCis4MjI0NyBhZGFmZWU5NTg5ZTQ0MjlhZGFiMDdmZjJjY2E1MWZmMGJkMzBjYzEyIHB5M2sKKzgyMjQ4IGVkODliMWFhZGM5M2QyZDFkYTc5MDg5MzU1ODkzODNhNDBkNDcyOWYgbGVnYWN5LXRydW5rCis4MjI0OSBjOTEyYjViMjRjOGYyZDFiMjRhNzA3NDVmMzI2YTE4NGM3MDljMzliIHJlbGVhc2UyNi1tYWludAorODIyNTAgMDE0ZTdjMDBkYzI4MDU4MzFmMmVmMjRmMTQ2OTlhZDI1YmUxYzdlNSByZWxlYXNlMjYtbWFpbnQKKzgyMjUxIDM5NmViNjYwZWU5YjQwYmQ5ZWYyNTg1MmY1MDIzMDdlZmU2ZjNiZTAgbGVnYWN5LXRydW5rCis4MjI1MiAzNTJkZGEwNzcwN2JmOTI4ZDNkYjllOWNlNGM4ZDhmMWNiZDhmZDIxIHB5M2sKKzgyMjUzIGEzOWNlYjZjZWRlMzE1ZDgzMzU4MjMzNzdkMmFiMzI1YTIwNDk2YzYgcmVsZWFzZTMxLW1haW50Cis4MjI1NCA0NTZkNmM1ZDI2ZGM2ZTZlNWVmNjU5Njc1MDFhMjBkNjU4YWYzNGNkIHJlbGVhc2UyNi1tYWludAorODIyNTUgN2ZkM2Y2ZWFmNjQ5NWMzMDdkZWI0NTk2ODMzMDg3YzFlYWJjZGMyMyBweTNrCis4MjI1NiA3MDY2ODhmZTQ1OTM1NjczZjk1MzQ0OGI3OGE3YjIyY2ZjYzMxNWY3IHJlbGVhc2UzMS1tYWludAorODIyNTcgNWZiM2YxYTc0NzI2YTZiODNkOWFhYjRkYzA3M2Y4MWZlMTIxNWI3MyByZWxlYXNlMjYtbWFpbnQKKzgyMjU4IGY2ZDVlYTc2OTI3Mjc5NjM0MzE4MzAyOWU0MmY5NjQyNjdmYzAzODAgcmVsZWFzZTMxLW1haW50Cis4MjI1OSBlNDc1Mzg1NWVjMDFiYmU1MTYxNDcyMjdiNTE3ZjdmODY1MWE1OTM1IHB5M2sKKzgyMjYyIDZlYTZkODUxNTBiMTJiODFiNzkzNDhhOTEzOGU0NmE4YTk5ZjhhNDQgcHkzaworODIyNjMgNTQ3ZTY1ZGI0ZDM4ODJlZmViOTkzMzdkY2MyNGZkOWU1ZDJmOTg0OCBweTNrCis4MjI2NCA2YjQ1NDM3N2FmZmVkNThmNzc3ZDUwNjBjZGJkOGFhNTNhYzgzNTI2IGxlZ2FjeS10cnVuaworODIyNjUgODE1Mjg0YzlkNzE5MTU0ZGEzNzkzMjBhMTFhZGE5ZGYwMTE5M2M0YiBsZWdhY3ktdHJ1bmsKKzgyMjY2IDY3NmE0ODBlZmMwOGNiZGE0Y2U4NTdiOTUxNzhlYjg5MjdhYzJmNDMgbGVnYWN5LXRydW5rCis4MjI2NyBmNzliZTc5ODEzMGYyYjFjZmM4NWIyZmJmODkxYWU2ODNkYTZkOGE2IGxlZ2FjeS10cnVuaworODIyNjggZWUxZWQ4MGQ3OTYzMzkxNzk1Y2MyNTE1N2I0ZTMyODYwZGY4MDA2YiByZWxlYXNlMzEtbWFpbnQKKzgyMjY5IDFhM2Q4ZWMwYzVmYThhYjY1ZGVlMTU1NGI0M2Q5ODcwMDY2NTY2YTggcHkzaworODIyNzAgNWIzOGI1MjM0ZGVkYjcyYWRjNzQ2ZDUyNjg0NGFkNzUxZDM2YzAwZiBweTNrCis4MjI3MSAwMjg0MmVjZDhlNWI5NGFkYThiYWMzYmQ2MjI5M2FmYzU3ZWQ3ZjdlIGxlZ2FjeS10cnVuaworODIyNzIgYTNkZDM5ZTM2YzlkZjE5YzYwMGZmNWY4MWE5ZmNkM2QyZDQzZDdiOCBsZWdhY3ktdHJ1bmsKKzgyMjczIGYxMTc0ZTc5ZjdmNDNlNzU5N2Y2YjczYzUxMzNmYTAzMTE0NDlhMDAgcHkzaworODIyNzQgZDNjNzVjMmY0NmJlMjZiYmM2OWVmMDlmYzJmNjgxYWIxYjM0ZjY5MSByZWxlYXNlMjYtbWFpbnQKKzgyMjc1IDAyMDQ0NTczZWVlYzFlYWEzM2MzYWE0NjczMGI4ZjU5ZjQzY2EwNzQgcmVsZWFzZTMxLW1haW50Cis4MjI3NiA2YjAzMTI0OTM3NTU5ZTcwOWI0ZDgyZWExYTdkYThjYjFkOTY3M2RiIGxlZ2FjeS10cnVuaworODIyNzcgYzUwNTYzODI0MDk0NDQ5YTc4MDI5NTRkOTY1NzJhNzk0YWE3YTRiZiByZWxlYXNlMjYtbWFpbnQKKzgyMjc4IGM4OGY3NjAwYmIxN2JhZTcwODU4MTZlMDQ0ZWI0MWMzZDZjN2FkOWIgcHkzaworODIyNzkgZjUwNWRmMDNhN2Q3Y2JmNzM5NjEyZDcyNDdkYWQxOWFhNDE1YTdhNyByZWxlYXNlMzEtbWFpbnQKKzgyMjgwIGIwNGNlZjU1ZmRmNDNjYzZjMjI4YzNhNjE1OWIwMWZjOGRjNjg4YjUgcmVsZWFzZTI2LW1haW50Cis4MjI4MSA3ZDkyODAyOWJjMGU5ZjM2MDY3ZTdjMGQ3ZmI1YjllMzM3N2EzYTg2IHB5M2sKKzgyMjgyIGVlZTI1NzkyODMwMDFhOTgwNDk1NjhmMmVkNGI3N2NkZjFkNDMyYzUgcmVsZWFzZTMxLW1haW50Cis4MjI4MyBkY2Y5YmNkOWExZTA4MTA0N2RkZjNmMDNiMmY5ZTIwZjhiOWYzZmY3IHB5M2sKKzgyMjg0IGExODMyM2ZiYWY5NThmYTQ3YTE1MzAwNDNlMTEwMTJkYzdlMjFmNWIgbGVnYWN5LXRydW5rCis4MjI4NSBkZWVkMTU2ZDMzZDgwNmYwZGRjMzY4YmQ3NDBkOTgxMjBjNTI0Mjc1IHJlbGVhc2UyNi1tYWludAorODIyODYgMGJlMjQzOWJiY2Q4MDE4NWZlY2UyMWZhMzBkM2ViZTk1MWYzMDBiYSBweTNrCis4MjI4NyBlNjQ3NDZlMDJlNDEwMTAwZjI2ZTJiOGExMmUxN2NmMDc1NDhhYjllIHJlbGVhc2UzMS1tYWludAorODIyODggMjgxODI4M2MxNDlhMmY0N2JlMzgwYmQyZDk4OGY2Y2Y0ZDM1MDFiNCBweTNrCis4MjI4OSA5MzNhMzU1NmY1NjMzNTg4ZmIxMmIzNjg4ZDlmMWM3ZjNlZDAyOGM5IHB5M2sKKzgyMjkwIGVjMGZkNWE2YmI0NTZmNzg3ZTA0MjdlYjBiNTFjZWZhYmM3OTE2MjcgcHkzaworODIyOTEgY2I2ZjNhNDQxYWMyZGUxNmUxZWRmZDZkYWNjNjgxZWE0ZjljZjA1NCBweTNrCis4MjI5MiAyZjM1MDFmOGQ0NTZmZGZkNDBjZGEwYmMyOTA3MjlhZGE0M2E2NjkxIHB5M2sKKzgyMjkzIDM1OGQ4NmE1NzJmYjE4OWEyNDM1MDllODY1OTVmZWE0MTc2NmI4YzcgcHkzaworODIyOTQgY2JkNTEzOWU4ZmU0ODk3NWNkYmE5ZDMyNTJjOWQ3M2I2YTg2NGZlNCBweTNrCis4MjI5NSAwODk3M2U2MDhhMmE0NDBmNWU3NWFkNmJkYWQ5NGIzNmU4YmExYzBlIHB5M2sKKzgyMjk2IDA1NTU4ODRlOTg2MjM0YjgzMjA5M2E3MzllZWI3MDYxNDdjMWNiYzIgcHkzaworODIyOTcgODIwZjNiNmNiNTUxMTg3NDk3NzFmZDNjYTlkYjI0NGIyZmNlMmVlOCBweTNrCis4MjI5OCA1MDRjNDk5ZThjOTU4MmQ1YjE3ZGI2NmE3MzFiMjY2MDgyNWUzMjEyIHB5M2sKKzgyMjk5IDlmMjI5NDg3NDkxMGNlZGRiYjFmZTVmYWE2MTczZTUwYWI5ZDEzNTggcHkzaworODIzMDAgOGE3Y2NiOTYxODE0NTkxZjliYjg3ODY0N2Q5NGMxZjU2MDBhMmVkZCBweTNrCis4MjMwMSA4ZGY2MTkyNTkwNTY0ZTY1ZTY3YTY0ZmMwNjFhMmQyM2ZhMjk2OTIyIHB5M2sKKzgyMzAyIDMyNjUxZWU3NzllZDAwY2YxNzIwNzVlMWFlM2ExNTAwOTc3YWEzNGIgcHkzaworODIzMDMgMzY3MGM2NmVlMTQ5YTVjMzgzOTk2YjkyNzMxZDkwNDhjZWJkNWQ1NCBsZWdhY3ktdHJ1bmsKKzgyMzA0IDFkMTc5N2FmNDYyMjBiNTcyMDUyZDEwYTFlYmExNjM0NGY5MGY1MDQgcHkzaworODIzMDUgYWEyNjJjNWIxOGI1MzI2ZGJhMTJjZjJiZTg5MzM4ZDhiYjlkNjhjNCBweTNrCis4MjMwNiA5MzUwNzVkMzM1ZmU4YmU3YmJiOGVlMzc1ZDg2Y2Y1YTI0ZjMzOTlkIHB5M2sKKzgyMzA3IDQ2ZmVjNzdmOTVlOGQxNWVkMDI0NzY5MjZmY2FjYmQ1NjhkNTRhMmUgcHkzaworODIzMDggNmVjODI1YzliM2I1MDFmMmFjMTI4ODMyZGI3M2YyZjRkODRlN2I2ZSBweTNrCis4MjMwOSAyZTM3NjAzY2EwNGRhMjZiNDEzNzE1YmQ4OWRjMmU4NTJiMGY1MmMwIHB5M2sKKzgyMzEwIDRhYTViOTU4OWM0MjEyMDkyMzgyYzFhM2Q5NjdmNGIyMTU1NTE4NDEgcHkzaworODIzMTEgYTg1N2RkNDA3OTY0ODJmYWY0MmI4MTZhYTM5ZGIyODVhZTExZTgxYyBweTNrCis4MjMxMiAyYmMwODAwMGE4NTcyN2UxMGVhOTQ4MzQxZDA0M2E1YWRjYTM5MmVhIHB5M2sKKzgyMzEzIGRkMzBiYzVkMTg0ZTkxNDZhYThlNDViNGZiMjc0Zjg5YTcxZTM5ZjcgcHkzaworODIzMTQgNDg5M2U0MDA5ZjU2NzEyNDhiODZiMGQxOWY3NGM5ODkxYzM4ZGI3YyBweTNrCis4MjMxNSA5ZjY5OWU1MTRhNjJjMjdlNTI4NjgzZmVjZDEwNDliYjMxY2JkNDkwIHB5M2sKKzgyMzE2IGE5Y2VkNDIzZGFjZTc1YTI3MzJhNTgxMDNjYTBmODFkOTBjODI3MGYgcHkzaworODIzMTcgNDdlMjlhNWMzZGRmZmYyNTBkZTM2M2M1MzE5ZGM1OTRhZjk2NGRmYSBsZWdhY3ktdHJ1bmsKKzgyMzE4IDNiZGNkZWNlYTU2MTBlMjZmNzUzNGZhOTYyMTY2ZmE5ZDg5YzcyOTEgcHkzaworODIzMjAgYjA3YjJjOTU0YTgwNzdmNGM5YWQzZmM0ODkzMTRlZDg1NzRmMmNhMSBweTNrCis4MjMyMSBkN2UzNDIzYzlkYTgyMDFiYjRiMmFkM2UyM2U5MjQ0MzBhZDAzYWUzIHB5M2sKKzgyMzIyIGU0MmJlNmU2YWMyZDczNjQyZDNmMDJhOWYzYTFmZWZkZDljMTczMjAgbGVnYWN5LXRydW5rCis4MjMyMyBmZDFhMTEyOTNlNjJlMWNiNGJjMjAxNzliODQ2NDk5ZDk0MGQ1YWNlIHJlbGVhc2UyNi1tYWludAorODIzMjQgOWYwMTg4ZTRmODFhODg2MjcwOTRmZTFiYTNlNjNiOGU0OThmYTIzMCBsZWdhY3ktdHJ1bmsKKzgyMzI1IDIwMDNiNzBhOWJhZGRiNjUxMGU4ZmU5OTE0YjRhOWRkMTE1MjAyMDEgcmVsZWFzZTI2LW1haW50Cis4MjMyNiBlYWM2NGE0NjEwZjEyMjYyYjZiNTViMTQzYjQ4ZGFmNDdlMzA4ZjE2IHB5M2sKKzgyMzI3IGI4ZDM2NWRhMTc5ODk0MWI3NTMxMjVlZDJiYjU4Zjk1MWMzYTJlNGIgcmVsZWFzZTMxLW1haW50Cis4MjMyOCAyOGY5YTAwMGEzNzlkNGM1ZTEwOGFmNTk4ZjExMDNlOGZiZGYwNTE1IHB5M2sKKzgyMzI5IDNjZDE2YWM1MTg3NzE1M2ViMmZkODY1MWNlZDUxMzZmMTBiZmI2MDQgcmVsZWFzZTMxLW1haW50Cis4MjMzMCBjMGE0OWI2YTZmYjExZDg4MDY4MDk2YTg5ZGU5ZDg4MDk1YmNkODU5IGxlZ2FjeS10cnVuaworODIzMzEgZjgxNmI5OTFlNWIzMWNhNzcyMWU4YzI3MTBlOTQ1ZDM3ZGUzOWFmMiBweTNrCis4MjMzMiA4ODI3NjE3YTA3ZGM5MWY2ZTJkNjQzNjg1ZDcyMmM5NDU2YjZkYjI0IGxlZ2FjeS10cnVuaworODIzMzMgZDcxNDExYTBhNDczMTZhZWIzOGMxZWM5YThkMTQwMzY3Y2Y2ZjAxOCBweTNrCis4MjMzNCAyZGNmNDdiNTk0M2Y0ZWU0ZjVkOTMxNjliNjExMGUxZWM1NGE2YTQzIGxlZ2FjeS10cnVuaworODIzMzUgMzdjZTVhZGFlOGI5Yjg4ZTk3NGE1ZDlhOTg2YzljYjBkOTVjZGNmMCByZWxlYXNlMjYtbWFpbnQKKzgyMzM2IDc0NjU3OWE5ZWFkNzA1Y2U3ZmNkZGFkNTg4YzUzYTFhZDczYTA2ZDAgcHkzaworODIzMzcgMjViNzIyMWRkYTY5MWJjNWFiMzRlNWFhZTk1NWU3MTRmOWVkZjFlMCByZWxlYXNlMzEtbWFpbnQKKzgyMzM4IDNjYjNjZTdkY2FiODUwZjhmMTVjZGI3ZGZmYmUyNTdhYzVjMDdjMDAgbGVnYWN5LXRydW5rCis4MjM0MCAwMjkwNGM2ZWU1MDI5NzYxMTNkMmE2YTk0NTEzNGU4N2E2YzM5ZjQ0IGxlZ2FjeS10cnVuaworODIzNDEgMjUyMGI4MThkYTA1MjE5M2Q4ZmEwZjczNTBhODZjYTQzMDM1Nzc3ZCBsZWdhY3ktdHJ1bmsKKzgyMzQyIGM4YmRiMzJiMDRhYWFjYWFiMmM5OTlkZDI1YjcxODQ2NzYxNjM3ODEgcHkzaworODIzNDMgNjhiNjcwZjM2MTRlOTBiNDFkZGZiYmE3ZGMxMjhkNTk1NTgwMjQ5NSBweTNrCis4MjM0NCBjZTAzMjUyNzZkMmFmYWYyNDAzODFiMjJkNDI3OTYxMmRjOTBlYjM5IHJlbGVhc2UzMS1tYWludAorODIzNDUgOWNhOTUyNGQzZTU3OGE0MWFkNTg0MmIyZDUyYzk2N2UwNDM4Mzc1OCBsZWdhY3ktdHJ1bmsKKzgyMzQ2IDY5ZjZkMjEzMDI4MTI0YzczMDk5NWY3ZWI5YzU3NTE0MzkzNmZjYjIgcHkzaworODIzNDcgYjgxN2U3MTY1MTZlZGYwM2JmODYzNWQ3NjQ2MTUyNzlkYjgwYWFkOCBweTNrCis4MjM0OSA5NWY4YjI1ZTUzY2UwOWU0ZWU4MTMxZGIzYjU4NTEzZjU3NDQ1OGI4IHB5M2sKKzgyMzUxIDJjZjRjYTFlZDZkNmNkNmYzYWVkZDA2ZGE3ODVmNzczZTkwZmMwNmIgcHkzaworODIzNTIgYWNkODY0ODg2NWFhYzVlMWYzY2U3Njg3Y2RiNjVhZjM5Njg3NDBhMiByZWxlYXNlMzEtbWFpbnQKKzgyMzU0IGRmYmRiOThjOTJlN2YxYjdmM2Y2ZDc3M2M2YmU1YTdlZDE2MmJiZGIgcHkzaworODIzNTUgMGUxNmRkZDQ0MTU3OGViZGZjY2Q3OTEwMWY1ZWE1ZDIwMTI0ODVhYSByZWxlYXNlMzEtbWFpbnQKKzgyMzU2IDJhOGM2OGJhMDAwYmE0ZjIwNzVkOWY2OTNkYzg5NzEwODE1NjY0NjkgbGVnYWN5LXRydW5rCis4MjM1NyBlYmZiNmJjMDgyZDkyZWQ5YTQ5OTRjMDE0NzkzZGE3NTk4MzU3MThjIHB5M2sKKzgyMzU4IGE0ZTFjNTZiZTUzMmNlNThmNTUwYWZjZGQ0YjBkYWNmYWZhYjUxYzggcHkzaworODIzNTkgMmY5MDUxZmU2YWQ5YzY1MTUyMGY0YTFhNmUzMmZkNDNhZDNjOTFlMyBweTNrCis4MjM2MCBmZTQ0ODI4ZWE3ZWRkZTFkZWI1NzY5MTQ5ZjU0MTllZGQ2ZTI5N2YzIHB5M2sKKzgyMzYxIGM1MTkyOTIzM2UxOTU0OWYxMDQwMjEzZTFlZDU3NjkyNDJhZTY5ODcgcmVsZWFzZTI2LW1haW50Cis4MjM2MyAxNGY5NGMwMWEwMDJhNTgxMTk3ZDNlODg5NGNjMThmY2M1ZGUwMDlmIGxlZ2FjeS10cnVuaworODIzNjQgZjdiNTQzNTI3NzFkMmNmYmI3YzIwODQ5NmRmZjE1ZWM1NTk3ZTNmZiByZWxlYXNlMjYtbWFpbnQKKzgyMzY1IGI3MmMzM2Y0OTZhYzhlMWQ3NTc3MzA2OTVlOTI5ODYyMjA4ZmQ2MzggcHkzaworODIzNjcgNzE5OWZmMzg2ZjllYzdjZjJjOWFiYmNhYTg2MDJiN2MxMDgyN2VmNiBsZWdhY3ktdHJ1bmsKKzgyMzY4IDJmOGQxNzYyNmNkZmY0NGQ1Y2NhMDFlODNhNmJiMzA1YzhhNTc4OGYgbGVnYWN5LXRydW5rCis4MjM2OSAxN2YxN2RjNmQ0OGJjNGViOWY4MGFhMDQ1MTZhNjQ0NzJlZjgyMjAzIHJlbGVhc2UyNi1tYWludAorODIzNzAgMDcxMzFmMDhjM2RlMTk1YzAzODM1OTFjMzQ1YjRhYTMyM2VlMWMwYiBweTNrCis4MjM3MSAyOTY0MjQzNzQ4MzYxNjU2ZDkwMTA2ODY3MDM1ODZiYzk0YTZmMGJmIHB5M2sKKzgyMzczIDllMjkxYWMwN2M1YmNmNTcyNTBmNTNlZDQ1YzZmYTkwZTM2ZmM0NWYgcHkzaworODIzNzQgMGZlOTc5MzI2NDJlNzdiYTdlNDJkNDM1OWRhNzMxZTc3MzkwMjNiMCByZWxlYXNlMzEtbWFpbnQKKzgyMzc1IDUwNzI1OTBiNGRmZGM0ZjAzZTcwMmUwNTNlM2QxYzY3OWRkYzdhOGEgcHkzaworODIzNzYgMjkwYmQwYzE1MGE2NDU4ZDgxNzJhMTQwOTE5N2VmMTQ5OGJmNTY4ZSBweTNrCis4MjM3NyAxNTgxNjZlZjZmMDZkMDE0ZmRlMDg5OTVkZmFlN2M3Zjg1NTYyMmU3IHB5M2sKKzgyMzc4IGE5MmFjNzU3MDExODNhYTE1ZmUyOTQ2NjhhMjRhYzI4ZTE1MDFiYjEgcmVsZWFzZTMxLW1haW50Cis4MjM3OSBiNWRmYTMzOTQ5OWMyODQ0MTRjNjA0NzU2YWY1MWI1OWRkN2M3YTZkIGxlZ2FjeS10cnVuaworODIzODAgYjg4ZGE0Zjc3ZjY4NmM3NWQzNDExMTA3MDRmZjJhNGQzNjRjMTQwZCByZWxlYXNlMjYtbWFpbnQKKzgyMzgxIGZjYWU5NTlhMmZhYjUyZjQwNmU3ZTcyMWI1Y2RhNmY0NmViZTNiOTUgcHkzaworODIzODIgMzIxZWRiYTVmNzk1YmY2YTAwZmVkNmE2YjYxNWJmYzhlMjc1ZTQ1ZCByZWxlYXNlMzEtbWFpbnQKKzgyMzgzIDI1ZmJmMDIzMTAyZDliOTBjNjdlNDhhNDJjNGU0NmYxNmIwMTE2NzYgcHkzaworODIzODQgZTZiYjk5MGFjOWY2ODcwMjA0YmNjNjAyMTAyOGJmYTc2YTZiYzJkOCBweTNrCis4MjM4NiA0ZmNlMjVhYmZkZDgyZmJkMDUxYmIxMjRjNjA3OWQ4YjM4NjNhNjA2IHB5M2sKKzgyMzg3IDE2ZDg4ZWNhM2MzM2ExOWRmMjVkZDY1ZjMyMmRiMjBhMjE4ZjYxYmEgcHkzaworODIzODkgZDM0Y2UwZGU5NDFjYTg5YTRjMzNkNTkzYzU1MWZiZTg2YzllZjBkMiByZWxlYXNlMzEtbWFpbnQKKzgyMzkwIGU2ZjFiM2QxMDQwYTQ3NWEwNDc2NTIxYmFiZjE1ZWU0Mjg5YjMzNDggcmVsZWFzZTMxLW1haW50Cis4MjM5MSAyYmM1NGRhNGI4MmMxYWI0YzI5ZTQ3MGQ3MmE2ZmY2ODliYmZiZTZhIHB5M2sKKzgyMzkyIDMwODQzYmUyZTExYTI2YzM0NTFlMTYwMTRjM2E3NTQxYjg5NTZmOGQgcHkzaworODIzOTMgMDQzZWYwNGY2NGQyMmM3YjY5OTg4MzRkYmE2MDEzZWYyYzY0M2EzOSBweTNrCis4MjM5NCAzMGUxZDhkMDgxMDU3ODBmMzNmMmFjNGZiZjFiYTczYWRjYWE5OWMwIHB5M2sKKzgyMzk5IDlkY2M5M2ZlNzUyODJlZGY4ZDJkODJmN2E0ODExOWI1NzFjZDVhYWUgbGVnYWN5LXRydW5rCis4MjQwMCBjNWFmZTk1NTI3NzkzYzgyODg0NmIzODZhZTQwODNmMGU5MmE5ZWIwIGxlZ2FjeS10cnVuaworODI0MDEgOWY1NDMwZTQ3NzcwMDdlM2U3M2NiNTA1ZTcyYzU0NjU0ZGMzYjhhOCByZWxlYXNlMjYtbWFpbnQKKzgyNDAyIDAxYzk1ODFjN2UzZjQ5NGRjMGYwMzIzY2MxMDU3ZWI4YmMwOWQxYmIgcHkzaworODI0MDMgZTljOGE5NjU4NGQ0MzRlMTA2MjNjZjRlMzBjMWI5ZjBiZmU4NGIwNyBsZWdhY3ktdHJ1bmsKKzgyNDA0IDc2YmMyNTVkMjlmZGY0ZTNiZTcwZTA2ODc3ZmQwNWUzODI3NWJiMWQgbGVnYWN5LXRydW5rCis4MjQwNSBkYjZmZDQwNWU1OTRmZDZjMzI5ODI2MzQ1MDM3MWYxNTlhOGZhODYxIHB5M2sKKzgyNDA2IDgxNmNkODU4ZDMzMWE4ZDUwNjY0MzljYzZlZTg3MzlhZTk3MDFmM2QgcmVsZWFzZTI2LW1haW50Cis4MjQwNyAzZTg3OGUyNjliMDllZTViMWQwNDYxYWVkNGY0ZjdjYzQ4YTczOGIwIHB5M2sKKzgyNDA4IDNhOTNhMDZlNWUzMGNkZmE4OTRiNzU3ZWZlZmIzN2Q3NzI3YWNhYjYgcmVsZWFzZTMxLW1haW50Cis4MjQwOSBiMDQ2MTZiZTdmMTRkNzA2MDQ0N2YwMzNkNDg2NjM0ZDI0NGQ5OTUwIGxlZ2FjeS10cnVuaworODI0MTAgY2U4MTQyMmVlMzViMzEwNThlODgwNGZjY2VkYTg1OTVkZWE5Nzc3MyBweTNrCis4MjQxMyBlMGQ1YTRhNDkxMTJhMjhlMTFkMDc5OTc4OTdhMDc0MTYxODUyMmI4IHB5M2sKKzgyNDE1IDhiOGYzNjk5NDFjMWVkYjQyODkwNmQ1Mjc5YmZlMzM0NmNjM2YwZjggbGVnYWN5LXRydW5rCis4MjQxNiAzMTg1YjA1NWY5Mzc2NmQyYWNmNGZiODNlYTg3MWIwNTRlOWM2ZjhhIHB5M2sKKzgyNDE3IGE4OWEzZDkyZjhhZWFkZmI4MjVjNTQzNjZkYzkyZjNhOTU0OTJlNzQgcHkzaworODI0MTggYTlhMjY3YTgxZGFjNDIzYWQ1OGJkNjQ1YTBlMGRhZDNiZWVkMjZkNyByZWxlYXNlMjYtbWFpbnQKKzgyNDIwIGM1M2UxMzVhMDhiNjkwYTkwNDU3MjdlYzM5NzdiNWQwMGRhMjA5NTUgbGVnYWN5LXRydW5rCis4MjQyMSBhOTI3MTliNDllNWViYWU4NWYwM2JiN2EzYTlhYTdjNzVmZjA4NDAxIHJlbGVhc2UyNi1tYWludAorODI0MjIgZmExMWQyYjRmOThhMmVlYjExNjFlNjdmMzhiZGVlN2E5MDcwYjQ2MyBweTNrCis4MjQyMyAxM2MwNmE2ZjQ2NzY3NmU2ZGQ5MzBlMzVhYzg4Mjg5ZTRiNGRiODMwIHJlbGVhc2UzMS1tYWludAorODI0MjkgNDNmMDZjYTM2YWIzMGQxNjhhMGNmMDdkYmFlYjQzNmRlZWEwOTNmMSBsZWdhY3ktdHJ1bmsKKzgyNDMwIGZlOTU1M2E2Zjc5OGQ3MTE5Mzg2YmU2NmU5MmQ1ZmI0NDBmOGQyY2QgcHkzaworODI0MzEgNmQwZGVkYjNhMjRlYzA3Njc0NDdlMWI5OTliYmUxZmJiNDMyNjZjMSByZWxlYXNlMjYtbWFpbnQKKzgyNDMzIGJhOWNmMGRmMjFiMDA5OTA3MmYxYTNhYzgwNzQzZmU5YmU2YmQwZWQgbGVnYWN5LXRydW5rCis4MjQzNCBmZWY2MzQ4YzJkZDZjZjIxYjUxMzdmMThhOTc1ZTI2MzFmN2U3NzhjIHB5M2sKKzgyNDM3IDRiMGM4ODI3NWYzYjY0MjU4NTM5NDQxMTg0ZTljMzY2OWFmOTg5ZjQgcHkzaworODI0MzggMzUzNzBkNzIzNmM5YzZhZTYyYjY0MjA1MDU4OGQ4MmEwOThjNzZjZiBweTNrCis4MjQzOSAxNzg2NjI4ZWE2ZmY2NDEwZGI5MDNlZjI0ZWYxMjRlZDU4NjZlNzlhIGxlZ2FjeS10cnVuaworODI0NDAgZTE3YjFjYjFiNjFjOWNjNjNmNjBmYzFlYzljMDljNGE3MDA3YjI4NSBweTNrCis4MjQ0MSBmNDMwYTg5MTk2YzlhZmVmM2RlZjc4YTI5NzVkM2E5MmUyNDFlOTU4IGxlZ2FjeS10cnVuaworODI0NDIgMzMwNGRjNTZkZGE0NDA3ZjhjYzY1Mjg4NzA4ZDg4OWFmYjY3YTQ3NSBweTNrCis4MjQ0MyBiM2JmYWJjMDQ0N2M1MThhN2Y4YjZiNTNlZTgwM2U5MWFiMDJhZDIzIHB5M2sKKzgyNDQ0IDM2YWJkNzU1NGJhZDhjY2EyNzY3MzZkZGY0ZjRjM2I2MWQ1ZTI0MmQgcmVsZWFzZTI2LW1haW50Cis4MjQ0NSA4YTY4OWYyOTc5NzBjOTVjNDA2OWNhOWY5MTA2YWY2ZTI2OTk3OTM4IHJlbGVhc2UzMS1tYWludAorODI0NDYgZWY2Nzk4YTk5ZWFkMmViNjcwMzNhOTc4N2I4M2YyOThmMzQ0NGI1NiBsZWdhY3ktdHJ1bmsKKzgyNDQ3IGI1NDBhNjEyZjYwMTcwMTVlYmM1OTVlNjBlMzQ0YWZlYTljNzBiYTcgbGVnYWN5LXRydW5rCis4MjQ0OCA3ZjE0OTZlNDExMjQ3MzhkZWY0YTY3OGZmYmY2ZWFjMWFiNmQ2ZDM1IHB5M2sKKzgyNDQ5IGU4MzRjNWQzYTlhMzNlMzA0NTg2ZjA5MWIxMTlhMTkwNThiYjVkYjcgcmVsZWFzZTI2LW1haW50Cis4MjQ1MCBhZWM0MjIxMTFjZGVhMzU3MzdmMDliOWNmMDNmMzAxYjA3YTZmOGEwIHJlbGVhc2UzMS1tYWludAorODI0NTEgZjFiYTRlNmQ2YzEyMzE3MzQyMWRmYzMwYThhOWE3MDBiMzY5OWE4OSByZWxlYXNlMjYtbWFpbnQKKzgyNDUyIDYxYWQ2ODk0ZWQ2YWE3NmMwYTM5OTdjODVlOWRhOGE5NzcxNWY1YjAgcHkzaworODI0NTMgY2I3ODAwYzY0OTEyM2NjNzQzMGFlMzEyYWE2NjJmYjVhNTlmYWY2ZCByZWxlYXNlMzEtbWFpbnQKKzgyNDU1IGRlMTZhOTE1YmQyYWM3ZDU4N2QyMGMzMzcwNmExNjY1OGMzNTAyMDQgbGVnYWN5LXRydW5rCis4MjQ1NiA1MjliMjE3NTMzOWJmMDYxNTc3OWZmMmNiODRlN2MzOTcwN2EzODhjIHB5M2sKKzgyNDU3IDQzYzA0NzExYWFjYmNiYWI1MjRhZGVjZmVhODRkY2RjNTU5MzI5MDMgbGVnYWN5LXRydW5rCis4MjQ1OCAzMTQ0M2NmNGRlZjJmMmMxYjU2NGM0YjdlODE2ZDRlYjQ4OTZlZTg4IHJlbGVhc2UyNi1tYWludAorODI0NTkgZmExNmFjYjJmZmRkNjE4NWE2M2FkYmRkOWJjZjEzN2FjNjcyZTZkZSBsZWdhY3ktdHJ1bmsKKzgyNDYwIGM3MmZkOGEyYWUwMWQwNjZiMGZhOGU4Y2RjY2JmYWZjYTcxYTM0YjYgcmVsZWFzZTI2LW1haW50Cis4MjQ2MSAxZWIzNmYxNjljOTcyOGZmYzcwMzczOWY0MGJhNGI0YzZmNmJmNmM4IGxlZ2FjeS10cnVuaworODI0NjIgZDNmYTE5OWI0YTE3NDY2ZDlkMzU2ZWFhNmU1MmViZDRlYzM4ZjM5OCBweTNrCis4MjQ2MyA4YmY2ZDhiZWFmZTFkNTRlOGM3MDEzZjY2M2U4Yzg3NjZlYzU5NjIxIHJlbGVhc2UzMS1tYWludAorODI0NjQgZjI3MWUxZDBlOWM0NDI0OTU0YjFjOGY3NmE0YjdiZDdjMmE0ZjZhZSBweTNrCis4MjQ2NSBkODMxZmMwYzI2MzQyYzMzY2Q3NTNiNDAyNGMxNWE3NzY0OThmMzUwIHB5M2sKKzgyNDY2IGI4YjExZDQzNDk0MDYxZDQyZjRmNmExOTEwYmJiNmI4NjM5ZjhjZGMgbGVnYWN5LXRydW5rCis4MjQ2NyBiMGJlODlmNzBmZjliNzZlZGMwZGI0MWNhMjA4ZDkxY2Y2ZjcwYjM2IHB5M2sKKzgyNDY4IDk5MDBhOTk4YjQ2MGNlZDAwYzVmMjQyZDI4ZDJhOGUzZGU5YTY3MWMgcHkzaworODI0NjkgOWRjNWYzODVmNDk0MmM0Nzk1ZGNkNGVjMDZhZTdjM2MxNjIxMTllYiByZWxlYXNlMzEtbWFpbnQKKzgyNDcwIDRkZTEzZmVhZWEwMTgwNWUxNDgxYzgxNTA2ZGFiNzNiNTIzZmExYmEgcmVsZWFzZTI2LW1haW50Cis4MjQ3MSBlYmUxYjNmZjhkMzAyMTgxODVhNDU3ZWIwMTIzOTc1Mzc1YWJhNDY0IHB5M2sKKzgyNDcyIDYxY2I5NDEwYTg0MjRiNTA4NTEzNzE5YTQyZmMyYWU0Y2QwMjFiOGUgcHkzaworODI0NzMgNGQzYjRmMzQxOTJiMjM5ZTg3ZDhiYTA3NzM2NjIwMTU2ODI5Y2M0MSBsZWdhY3ktdHJ1bmsKKzgyNDc0IDMyMzk2ZTgwMDQ4ZjlhODcwNmIxNmFlNjFiZDgyOWQ4OWQzMTlmMDYgbGVnYWN5LXRydW5rCis4MjQ3NSA2OTc1NmNkZjUzN2I0ZmEzN2RjYTlkN2M4ZjBmMzk5MzhhMjQ4ZTBiIGxlZ2FjeS10cnVuaworODI0NzYgOGUyMGZmYzYxOTg2NzNjYWFmZGM3MjAxYWI5YmZmNjgwOTU2ZmE5NyBsZWdhY3ktdHJ1bmsKKzgyNDc3IGNjNGJkNzY2ZmUxMDlhNTcyMWQ2NTFhYWUzNjU2NzA3YjM5MjIwZWIgcmVsZWFzZTI2LW1haW50Cis4MjQ3OCBjNTg1NWRkZGYwZTFmYWJhZTk4MWE3NWVkNGE5MzQ2NTA5MmI4OTljIHB5M2sKKzgyNDc5IDU2MTNkMmUxZDc3OTUyN2VhYjhjNGU4ZWQ3YTI2OGQyZTA4NGIwY2UgcmVsZWFzZTMxLW1haW50Cis4MjQ4MCBhYWU3MzgxYWMwYjJkMGE1YzQ5OGViNTJlMzNkN2M5NzQzNDI3MWM2IHB5M2sKKzgyNDgxIGQ5N2MyNDUyMzMyMTBjNzliYjY0OTk3YmRlOTFhYjQ3OGM5ODY2ODMgcHkzaworODI0ODIgMmFhYjk1N2JmNjFmZWM2NWFhY2JhZGU1YTVlN2ZmNmUyMDlkYjBlOCBsZWdhY3ktdHJ1bmsKKzgyNDgzIDZjZmU3YjkwNDY0OWEwNzNjMjBjODM2NDZjMDQ0ZmRmZGI1NjE3N2IgbGVnYWN5LXRydW5rCis4MjQ4NCA1ZDgzNGZjZGY5ODBjZGZhMWZhZDA0YmJlYzEzYmUzNDg5MzVmOGRmIHB5M2sKKzgyNDg1IDIzM2M4ZGFiOGZmYTlmNzEwNTI5YjA2NzFmYTUwZWZlZmQ1NjQzMGQgcHkzaworODI0ODYgYWM4MjNlNzE2ZDU3MTdlOGNjYzBlMTAyZjE2N2EzZGI4Njc0Y2YxNyByZWxlYXNlMjYtbWFpbnQKKzgyNDg3IGJiMjExYTJkZGFiZDVmMGI4NjJjYjhjZTJiZjc1ODRkNWEwZmY0MDUgcHkzaworODI0ODggNTVlZGY3OWFkODI3N2YzOTljNDdkMDllMzE0NTNlNjJlNDdmNjMyNyBweTNrCis4MjQ4OSBkMzVmOGU1YjQxOTdhOGQ3YTE1MDRmZjQ3NGRmMmY5ZThkMTUxMzAxIGxlZ2FjeS10cnVuaworODI0OTAgNDBmMTliMGJmYTYxYTU2YjQxNDBkMWNmNjVhYzAyZWI2Y2M3ZDEwNSBsZWdhY3ktdHJ1bmsKKzgyNDkxIDZhY2IyNTM1NmQyZjFhNjlkZjE0NDgxZDRmNGQ4NTVhMTk5NDkyN2UgbGVnYWN5LXRydW5rCis4MjQ5MiBiZThlMWE2ZWJmN2FiZTc1YTM4MTRjNDJkMzI5MDNiODliZWNmODg2IGxlZ2FjeS10cnVuaworODI0OTMgNGNhNWQwYWVhNDFkMzYwOWNmNDY2YmZlODM1OTExMmZmZjI1YTc2MyBsZWdhY3ktdHJ1bmsKKzgyNDk0IDhiYjkzMjg4ZGI2ZDY4ZTljMThhODVjYWI5NWVkYjJlMDNkMTUyYjUgcmVsZWFzZTI2LW1haW50Cis4MjQ5NSAyOTExNmIyZmNmZmU5MjgxMzcxNjRlMjc1ODU4ZmIzYzY5MDZkZGQ3IHB5M2sKKzgyNDk2IDcxODQ0MjFmODNiNTY0ZmFiNTlmZTJmYjMwYjQyMjc2NmFhMDJjNDAgcmVsZWFzZTMxLW1haW50Cis4MjQ5NyBiM2I5MTJkNDUzYTU4MmU0MWRmZmZlNzFhOTE0ZTFjZmRlN2JiNGY3IGxlZ2FjeS10cnVuaworODI0OTggOTljODRhNTFmNTc2NWJiZWJiZmY3NTA4ZmFmYzVmNGUwMWE1NDBhZSBsZWdhY3ktdHJ1bmsKKzgyNDk5IDJkNWY1MTUwZGNlMjRkYTdjYjY4NmJlY2NlZTAyYjI5NzU1ODNhMDcgbGVnYWN5LXRydW5rCis4MjUwMCA4MGM4YjQzNDEzMTJhMzM5YTAwZjM3NjMxYzM4NTUwMDc4NzhkN2NkIGxlZ2FjeS10cnVuaworODI1MDEgNTRmZGNjMGY0YmFjZjM3NDg0ZGJiY2NmMmQ3YWVlYzJiYzgyYTcxOCBsZWdhY3ktdHJ1bmsKKzgyNTAyIDIxNDU1OTNkMTA4ZGU2MmViZjc3MDk4N2E0YWMyYTU3ZDI2OGM5ZDEgbGVnYWN5LXRydW5rCis4MjUwMyA3ZjdkODIzNDAyYzY5YWU2MjMyYWUyNjA5M2NkNDgyYTRmMzU3ZjNiIHJlbGVhc2UyNy1tYWludAorODI1MDQgM2Y0NmY4YTlkYjU0OTUxOTMzOWZiOWQ1OThiNGJiMGZjZmRhYmQyMyBsZWdhY3ktdHJ1bmsKKzgyNTA2IDc2ZDkwODQzZGJhNjEzYzUwMTM4MWY1NjM1YjVhZWQ2YWY0NDFkZjYgcmVsZWFzZTI3LW1haW50Cis4MjUwNyAzNmQwMWMwMTdiOWJlZWY5MTdmNWJiZTQ4MDc4NTEyZTBlN2Y0OGQwIHB5M2sKKzgyNTA4IDE5NGI2ZTYyYmU5NTBkMGNjOThlYTVjYmE1ZWMyMzY1NmQwNTBiMzEgcmVsZWFzZTI3LW1haW50Cis4MjUxMCAyNjI1MjlkMWMzMTVjZDE5ZTlkNjVkMTA0MWRiZTdlNDJkYzlmOThhIHB5M2sKKzgyNTExIDJhZWU4MjllZGZlMjgwMjI4YmNmOThhOWJkZmUzYTJkZTFiOWI5ZDYgcmVsZWFzZTMxLW1haW50Cis4MjUxMiBkNzZkMGVlYjIzY2FiODQzYWJjNjM3YWE5NDIzYWYwZjRmZjIxYzY2IHJlbGVhc2UzMS1tYWludAorODI1MTMgOTc2YWE0YThiY2YzMDdhYmI1MmVjMDBlMzMxMmM5YTJiMTJiZTg4ZCByZWxlYXNlMjctbWFpbnQKKzgyNTE0IGU0MmJhZjY3OGQxNDQwMDYyMDIyYWFlOThlODZkNzYzZjJlOWFhNGUgcHkzaworODI1MTUgZmU0NmE4ZGJhZjY4Y2E3NDRkZjZhYWQ5MTY2YzkzZTU4YTY2ZjMxOSBweTNrCis4MjUxNiAxNzg0NTVhMmYxYWE1YmJkOTYwMGEwYWYxZjY1YjI5ZWNkMDJmZDhmIHB5M2sKKzgyNTE3IDMxYTY4NTRmNzgxMzk5MTlmOTIxZTRiYzg2NmE4OTM4NGVlYTcyNGQgcHkzaworODI1MTggMzRkODI3MjQ5Y2UwYmMyOThmYjllM2QyYzBjODJjZjdhNWJhZGMxNyBweTNrCis4MjUxOSBmYTcxNTEyYTc0ZjkxNGQ2OTc2MGU5MDM3YjgwZmIxYWRmYmMzNDZmIHB5M2sKKzgyNTIwIDZjM2M1NDNlZGU4YzQ5N2VlZWY0ZjcyYzBlN2MwMGIyYTkzZGY5NDcgcHkzaworODI1MjEgMjY3NGQzYmRkYjE4MWU4ZTMzYzY3YzBjNzVhYmE3NjVmNWNkMmY4OCBweTNrCis4MjUyMiAzNGYwMTViY2E1NGVkYjMzMzkxNjRmNzYzNzY3YzZhMGE0OGZiZDE5IHB5M2sKKzgyNTIzIDMyNjgyYjI1M2ZmYzgxN2UxNmRhOWE2ZTEyMTVhZjNhZmVjODAxY2IgcHkzaworODI1MjQgNGMzMGE2ZjQwZTY4NGU2Mzg1MzgzZDk3ZmU3Y2I1ZGZkZmQ0ZjEyZSBweTNrCis4MjUyNiA0YjkzNDgwM2NkMzQxNDI0MzE0ZGFkODcwYzJmOGZjMGQ4NmY2MjM1IHB5M2sKKzgyNTI3IDEzNTU3NTk0ZTIwYjdhZDA4NjQ3NDkxMDFiY2NmOGMzNzUyYWU0ODYgcHkzaworODI1MjggYjY3ZjcyMDk5OGE4ODAxYThhZDhiNzRjYmFhODNlMmFmYjA3ODFkNSByZWxlYXNlMzEtbWFpbnQKKzgyNTI5IDBmNjU0OGE4Njc2OGIzMjgxMDYzMjFiODg0ODkzY2VkMzY4NDBhMmYgcmVsZWFzZTI3LW1haW50Cis4MjUzMiBlY2Q3MWI2MTI3ZTQyNjc4ZGMxYTJiMWY1NzFmNjQxY2VkMGEyOGMzIHJlbGVhc2UyNy1tYWludAorODI1MzMgMzQzOTAzMTE4Y2I1YmI2NzFlMTY5YzQ1MWJlYzQ5OWM2ZmE1MGU3NSBweTNrCis4MjUzNCAxMjRhNzZhZTdhNzBlNzU3MGQ5NDIzZWQ3YTY1ZjZkNDk0OWI5YzRmIHJlbGVhc2UyNi1tYWludAorODI1MzUgZjA2OTFiNGEzODNiODJhZWU4NTNhMTNhZjczOTk2NGZhZTg1ZGMzOCBweTNrCis4MjUzNiAzZmNlNmNkYjQ3MzM3NzExNjk1MzgzMTkzYjQ3NGRmOTRlYzdhOGM1IHJlbGVhc2UzMS1tYWludAorODI1MzcgMWVhZjRiYmU0YjFjMWMxOGI5MWNlY2U5ZDk5YzQ2NjhiYTRmM2Q4YiBweTNrCis4MjUzOCA2MWNhY2VjY2Y4MDU4MTM1M2I4NGQ3M2MwZGFhMTA5OTE2YTFhYmUxIHB5M2sKKzgyNTM5IDE4MjgyMDM5YzVjOWMwMDZkYzVmZDVmM2YwNjIxZmExMTBiMzFkOTYgcmVsZWFzZTMxLW1haW50Cis4MjU0MCA5MzkzMjYxOTk2Y2VlMjMwYzY1Mjg1YWRkN2UzMGZhNWY3YTkwNmM2IHB5M2sKKzgyNTQxIDllMzU0ZWEzODJjY2U3Y2IwMGNlZjViZTJiZWRlMGNmOTljMzlmMzEgcHkzaworODI1NDIgNzY3YjRjNTdhZWE0ZDliZDdhNDBmNmZmM2E5YzU2YThjMDk2ZDZkOCBweTNrCis4MjU0MyAzODMwMzllZjI2YTBlMDllNTE2MGY2YTk0ODRjMjdlZDE5MDM0MmI1IHJlbGVhc2UyNy1tYWludAorODI1NDQgM2FlOTEzYTljZGE5MGVhM2UyNWQ5NzlkMjc1NDRmOTI0MTY2MWYwNiByZWxlYXNlMzEtbWFpbnQKKzgyNTQ1IGE2M2Y2YmFiYTZiNTRkZTk4Nzg4OTM0Y2QzOGZkMWQxMTBlZjI5MWMgcmVsZWFzZTI3LW1haW50Cis4MjU0NiBiZTY2MmQxMjQzODU5ZWQ0MzdjMDg2OWI2NmQzYjc5NzlhYmY4MWM5IHJlbGVhc2UyNi1tYWludAorODI1NDcgMzYxNDMxYzRkMzQ0YzQ0YWNmNmU2ZWRjZTA3ZTIwMDQ3NjBiZjU1OCBweTNrCis4MjU0OCA3Y2U2ZTM2NGUxMTgzMDY3ZTdjYTgzNzlmYWQyNjgxZjQ2M2E5MmNhIHJlbGVhc2UyNy1tYWludAorODI1NDkgM2IxNTQ4NjYwOGYwNWJlY2QxNGM3NjA1NGM1ZDk5YmE0NTQ4MjY4YSByZWxlYXNlMzEtbWFpbnQKKzgyNTUwIGIwNzQzZDUyYjZhMzE3YjI5MWY3NTNkNWViYjczNTdhYzFkODUyZjYgcHkzaworODI1NTEgMzQzY2Y1YTA4ZmYwMGYwNzIzN2MxOTA5NWYzNGIxOTRlNzZjNDJjMiBweTNrCis4MjU1MiBjNmYxNmI4Y2I4NThkYjk1OGIxODRiZDZkNDUyMjIxMGE3ZmEwNTZiIHB5M2sKKzgyNTUzIGQyODMwMDkxMjM3Y2VhM2NjMjM1YTZkMDUxZmUwMzJjMzEwMTQwZWMgcHkzaworODI1NTQgNjkyYjc5ODljZDkyMDM2OTA1MGU3NWJiNmFkMGI1NWIzY2JlY2VjZCByZWxlYXNlMzEtbWFpbnQKKzgyNTU1IGZiMzYwYzA3OTA1OTc2YjFkMGU3NzZmY2M2ZDY5YTYyOTE3NDgyYjQgcHkzaworODI1NTYgM2FhMjI0Mjg1ODJhMzhhMjcxYjllYWVlNmMzNGExYzMyN2UxZmYwMCByZWxlYXNlMzEtbWFpbnQKKzgyNTU3IDgzN2UzY2QzZDA4MzQ2MzNkZWIxOWZmM2VkYTllNjE2MWJmNWYxZTkgcHkzaworODI1NTggZDg4MGMxMTQzMTc1NjdiYzg5OWNlZTY4NGU4YjM1N2FmYjNmZGUxOSBweTNrCis4MjU1OSBjMWEyM2E1NDBhMjlkZjYyNmM4ZDU0N2Y4YTgxMGM5NDhkMTZhNTFmIHB5M2sKKzgyNTYwIGZlNTIxN2E4YWZmYmRjMGY0YWM3NjgwNzRkOWFhZjJjYjY2ZTkxMjggcHkzaworODI1NjEgNDZhYmRlMDcxZmZmY2UwMTMyY2QzYzg3NzljYjA5ZjZlYzBkMmE1ZSBweTNrCis4MjU2MyBhMWM0NTYzMTdiN2MzYTIzNjhlNmU4MmIzYTFkNzdlZDBlYzMxZjAyIHJlbGVhc2UyNy1tYWludAorODI1NjcgN2ZmZDJhNDQ5NDJjZjY1NjI3OGQwNGZkOWQyNjdiMWVmNzQ5YWU2NyBweTNrCis4MjU3MCBkY2MyZThiZjY0Y2ZmNjFmZGJjOTg3NzY1OTI2YTRhNTY2YTUzZjM3IHB5M2sKKzgyNTcxIDAxNDUwMTIwYzBkZDE4ZDQ4N2IxZDNiNGQ1ZDhkNDIzMDhmYTY1MzkgcmVsZWFzZTI3LW1haW50Cis4MjU3MiBlMWY0OGViMDE0YzcwNDZhZWUxNmZmOWNlMGNkNTZmNzA2ODE0MjgyIHJlbGVhc2UzMS1tYWludAorODI1NzMgY2Y0ZjdmOThmMTllNzJiYzFjYjZmMWVjYjg0MTRhMTE3N2Q5ZDhmNyBweTNrCis4MjU3NCBlODRkNTE2NDQxNDQ2MGEzNmZmZjc4MGMyN2Y3MzI0ODU5NjEyYjY3IHJlbGVhc2UyNy1tYWludAorODI1NzUgYzgxZmMxZmZlOTQ2NzAzYzc5MWVmYmZjMGZkMWVjMGNjM2M5NmYwMCByZWxlYXNlMzEtbWFpbnQKKzgyNTc2IDcyNjQ4M2Q5N2I1YzA5MzZmODBmZWZjZDg2NzIwM2Y5NWQyN2NmNjcgcHkzaworODI1NzcgYTdjOGI0YTY2NzhiZjEwMjEzMDBlYTcwNmQzZjg5MTA0MmNiMTc3NyBweTNrCis4MjU3OCAzNmQ1ZTJmNWQ2MDA0Mzk1NGExNTVkMDQ2ZTMxOTcyYWU1NWY5YWRjIHB5M2sKKzgyNTc5IDhlZDdkMTExYjJjOTdmZWQ2MGU2YWM0Mjg0MWZlMDUyM2RkMjU0NzYgcmVsZWFzZTMxLW1haW50Cis4MjU4MSA3MDU4NjlkMWJkZjBmZGEyMTFmMDk5YzFkNDI1OTY1MmY0YWQzZjUwIHJlbGVhc2UyNy1tYWludAorODI1ODUgNDAwMWQ0NThmMGIyMGNjN2YzYTE0ZGJkOGNlYWM5YzM3ZTA4Yjc4MyBweTNrCis4MjU4NiBlZTllZTJmOWZlYjljY2ZjMGI2N2JiMTZmMTBmMWMyN2MwMjg5ODA4IHJlbGVhc2UyNy1tYWludAorODI1ODcgOWQ1ZmU5MzYxZGUyMWRlNjhjYmZmMzdiOTYzYzJhYjkyM2M4ZTZlMyBweTNrCis4MjU4OCA2ODBiZjZiOGFiODI0MGE5NmVlZTliNDNjNGYxZTBmMzU1N2I4YjE3IHJlbGVhc2UyNy1tYWludAorODI1ODkgNmVjNTcyMmEwN2E1ZjJhYmU4YTc2Y2ZkNzc5MDM2ZThlYzE2YThiOSBweTNrCis4MjU5MSBiNmZlZTU1ZmFhMWJiYmM4MDg2YjZiOTJmOWY3OGQwN2E5ZTRjNjY5IHB5M2sKKzgyNTkyIDNiNzNmYjgwODA3YWExYmMyZmUwZjk4ZDgxOGJlYTM0MjZkZWFjNGYgcmVsZWFzZTI3LW1haW50Cis4MjU5MyA4N2NkYWZlM2JkNmM3MGEzNjJjYmRmMjllZWU5NGJkMTBmNDEyYmFkIHB5M2sKKzgyNTk0IDhiYmYyNGU1MWNjZmFhZGEzZDcyZjkwYTRmYmNhNDZkNGZmZTJiZjQgcHkzaworODI1OTUgNTA5N2IxYjQ5NjAxMmUxZTM0MGY5ZGI2NjBmZDVlMGZkZjkzODExZCBweTNrCis4MjU5NiBhMDdlZjVlYWI5MGJiMjViMTA0ZTY1ODVkYWEwZjFiNzZmMzMzOTQzIHJlbGVhc2UyNy1tYWludAorODI1OTcgNGQyOTFhZDA3ODkxNDlmYzExZDAxNjI1NWFmYWViOTgwNTc5MGIxZSBweTNrCis4MjU5OCAzZGMyMTkwNzM4NzU3NGU3MzhhYzdmMjNlNDNjYTVjOGUxZDQ5YTFkIHJlbGVhc2UzMS1tYWludAorODI1OTkgOTE0NTdiMjAxNGU0MGI2MTkxNjIwZTllNzUxZWNiMjRhY2NiYzU2OSBweTNrCis4MjYwMCA4NzBiNmI0NTVlZjA1ZDFiNTNhMzMwOTM4ZjgwYmM3NjY1NTkzY2U1IHB5M2sKKzgyNjAxIDFmMjgxNGViNGQxZGQxYjFhNjcxNDMzOGQ4M2ZlMTFhNmU3MzRlYTMgcHkzaworODI2MDIgODY4OTA0NDZhNDdiY2Y1Mjg0YmRmZjNhMmRhMTkxYmUyNjEwNTA1ZCByZWxlYXNlMzEtbWFpbnQKKzgyNjAzIDM5YzdkNTRmMjg0OGMwZDFmYTJlMzAwOGY3NGJlOWY1MDg2ZDllMjYgcmVsZWFzZTI3LW1haW50Cis4MjYwNCAxZjM3ZDA4MmE5YWFmODAzN2UwM2Y2YjMwNWRjNzhlZDEwOWNiZWJiIHB5M2sKKzgyNjA3IGYxYTQxNDdiM2MwMjNjY2VhN2M2ZGY4ZmNjNjEzMGE5ZDM5MDcxNDUgcHkzaworODI2MDggMjM5OWUwNDUxZDBkZWM4NjYwMWYzNGMxZmJiY2UzMWVlMjhhMGFiNyByZWxlYXNlMjctbWFpbnQKKzgyNjA5IGQzNmRjMzdjNjdmODg3MDYzZWRlZmEzNzE0YzA4MGZjZmE5NjQwMGQgcmVsZWFzZTI2LW1haW50Cis4MjYwOSA3NGIwZWI3NjVhNTA0OWIyNTNlMWNjMzUxZGE4ZmYzOWUzMDgyYzY2IHJlbGVhc2UyNy1tYWludAorODI2MDkgMDcyOGIyOTVmNTNiZDZhM2Q3MGY1ZjVjNzI1YTg1NWI4ZjNhZjIyOSBweTNrCis4MjYxMCAyMDJmMzFkNDAzODljZTNmNjU5ZmIxNTYzMDhlODJjZWUwMDM4MDdkIHB5M2sKKzgyNjExIDA2MThjNjIzMWExZjE5MjcxNjU5OWNkNjAyZmY0YmEwMDIyMmZlOWYgcHkzay1kdG9hCis4MjYxMiBlMTJhZWNkYzMzMmM3ODc3OTZkZjI5MzAzY2ZmNjFjZjExZDc1Yjg1IHB5M2stZHRvYQorODI2MTMgNGZlNDkzZDk5ZGNjMWMyMTdiY2M1MjdiMGYzNjNmYmMwMGRlZGRjYyByZWxlYXNlMzEtbWFpbnQKKzgyNjE0IDcwYjAzODhmOWQzZjUyNTY1YTg1ODkwY2FhYzNmYjk0NGUzMGUyYTQgcHkzay1kdG9hCis4MjYxNSAzZWE2ZjY5ZGIyNDI2MTk4MjRiMDhiYTgyMmI3ZmRlZTIwY2QyZjkxIHB5M2sKKzgyNjE3IDU4MTJkZDQ0ODA3YWY5NjUxN2VmMmYzYWY4MTFjMWFkNGQ3YzgzYTMgcHkzaworODI2MTggZDJiMTY4OWEzMzgxZWM2NTJkN2M0ZWM4NTIzYzkyNzZhYjQ4ZGZhZiByZWxlYXNlMzEtbWFpbnQKKzgyNjIwIDA1NjJmMmUwNTI4ZDEyZGJkMmUyNTRhZjA0ZDQyMGJmZDA5OTg2NGQgcmVsZWFzZTI3LW1haW50Cis4MjYyMSA0M2FiYTA5ZTg5NDY5MzZlZDUzZTJiYWI4MmFiNjhkZWI5OGEyMWI4IHJlbGVhc2UzMS1tYWludAorODI2MjMgOTEyYWIyZmI0M2Y1OGIwMTI5ODgzOTM0YWJkYmY0NjdkMDc3MGExYyByZWxlYXNlMjctbWFpbnQKKzgyNjI0IGY2NDFiZDU0NmRlNDEyOGNkNzljZTc5MzIwN2QyMzAwYjRlZjg3MDAgcHkzaworODI2MjUgZTY1NTg0OWU3OWM2YzgyYTlkNDk3Yjc4YzA2YjA0MzFhYjM5MjUxZiBweTNrCis4MjYyNiA4NzU1NWY0NWNkNmJlNTg2N2Q4MmQ5ODI2Njk0ZTJhNGViYmRjN2RhIHB5M2sKKzgyNjI4IDc0YjJjYmRhOWJkYTQ0N2Y5OTc4MzgxMjM1NTkzOTkxNTgxMzcwZDkgcHkzaworODI2MjkgY2NmOGU2MDIwY2YzNGI1ZjVlYzg4ZGQ1ZjI2OGIxMzM3NDZhZjEwZCBweTNrCis4MjYzMCBmNjI2NmM0NTkxNTYzMDZjOWJhYmQ1ZmQ4ZjMyZDc3NmMzZDEwYzBhIHB5M2sKKzgyNjMxIGU3ZGE5NjhlM2U1YTBkYTY0YmFkOWRlZDlmNGFmNWEyMDQ2ODgzNDEgcmVsZWFzZTI3LW1haW50Cis4MjYzMiA1ZjNlMTg2YmVmMGYwODM1M2I3MmFkMzk0MDk5YTFjYjJjNGY2NjVlIHB5M2sKKzgyNjMzIDM0ZTNkYmQ0N2U0ZmEzZWQwYjZmNjU0YTJjZWQ0MTM5Y2Q3YTUzMWMgcHkzaworODI2MzQgOTQ2NDY0ZmQ2OTIxMGQ3MGI0YWM1ZGRmNjc5ZTI3OWZhYWZiNWVlMiByZWxlYXNlMjctbWFpbnQKKzgyNjM1IDU1M2YxMGIwMzdkOWVlMjMzYmQ1MWFjMGM4MzkxOWNjN2E1ZjhjNWIgcmVsZWFzZTI3LW1haW50Cis4MjYzNiAzODRmNzNhMTA0ZTk0ZTEwZDc5ZTljMTkzZTdmZDBlMmYyYzg0ODg0IHB5M2sKKzgyNjM3IDM4MmRjYjBjNjA3M2ExNDY4YmY0NzBiMjJmNzJjZmUwNzRlZTY0OTQgcHkzaworODI2MzggNTVhMDI0ZjUxNTI0YmZkMDM3MTg4ZDYxZjhhZWViYmYyMzIxZjVhNCByZWxlYXNlMzEtbWFpbnQKKzgyNjM5IDhjNmIzZGM2NTJmYjkyMzIyYThkMzRmNmE2MzU0MWIzZTNkMzI2NDkgcmVsZWFzZTMxLW1haW50Cis4MjY0MCBhMDA4MmE3NGQxMjVhMmU4NWY4Y2QwNWE1M2IxNjEwNjZiYWRiNTU2IHJlbGVhc2UyNy1tYWludAorODI2NDIgMDQwNjc5MDg3ZDAzNTJiNTY1MTNjZTUyOTQyM2MyOTIwYzIyNjYxOSBweTNrCis4MjY0NCBjYTA1MzcxY2ZmMTBhMmY5ZDBmMmEwM2I1MTM4NDQ4NDg4Njg3MWEwIHB5M2sKKzgyNjQ1IGY4NDVlZDFkODlkNWJiOGMwMzBhOGExNzEwY2Q4MGI1MWEyYjU4MWIgcmVsZWFzZTMxLW1haW50Cis4MjY0NiBjYTBhMzMwMWE3ZWExYmFhYmFmNWMwMmRjNjUzYjI3ZmI4OWZiMzRhIHB5M2sKKzgyNjQ3IDEwZTZhNTQzMGI3OTQ0YjZiZWJmMTUzZTFkNmZhYTNhNDA1YjgwOTAgcHkzaworODI2NDggYzczMDViYTg0NjE5N2I5MzViZmVkYTA1ZDk0OGVjODVmNjJhMTE5NiByZWxlYXNlMjctbWFpbnQKKzgyNjQ5IGQxNTZmN2IzOWMzYzM0MzIzZmFmOTQ3YjlmYmYyMDM2ZjgxODY1NzEgcHkzaworODI2NTAgNWJjN2RiZDMxZDFiNDk0NmMzOTVkYzYzMjBjZDRlYTFlNjMwZWJjNCBweTNrCis4MjY1MSBiMDQ0NjI1MzIyZTMxNmM2NDg0YTUzMjYxZGZkYjNlYjRhZmUwYWYyIHJlbGVhc2UzMS1tYWludAorODI2NTIgYTYzMThkYWZiOGViNWMyZDgxOWZkNzA4MjJkYmViNWU1ZmY3MGZlZiByZWxlYXNlMjctbWFpbnQKKzgyNjUzIDNkOGE3ZjcwMWNiMWMyNTM3ZjU4MWExNzgwYTEyNmVmZjY1NTJkNjkgcmVsZWFzZTI2LW1haW50Cis4MjY1NCAwOWY1ZmQwMTNjMGJlMmZlN2JiMGY0OTQ2NGFlMzFlNzI2NjM0YTk3IHB5M2sKKzgyNjU1IDk3NTJiODVjMDExOTJmZTgzOGRhZWQwZWZhYmE1MjcwNmQwMjZjNTEgcmVsZWFzZTMxLW1haW50Cis4MjY1NiA2ZWRjM2UyYTdkYTRhYWRhZmFjZTQ1NjliMGZjN2JiYjM1NTQ0M2IyIHJlbGVhc2UyNy1tYWludAorODI2NTcgOTc0ZjhkOGJjMGQ0NGQxNWQ4YjhkZjUzODUyZWJiYThjZTdkODYwYyByZWxlYXNlMjYtbWFpbnQKKzgyNjU4IGM4YmVjZjYwNmEwYWFjMDk2YmY4NWY0OTZkNjhiOTYzODI4Njc0Y2EgcmVsZWFzZTI3LW1haW50Cis4MjY1OSA3MzBiNzI4ZTVhZWZiNTZjY2ZjNGU5YzJjYzkzNGMyYWQ4NjM4MDU5IHB5M2sKKzgyNjYxIDdhMjE2YmMyYmVkNjUwYjk3MDViNjg4YThjMGI2OGUyNzQzY2Q2ZDkgcHkzaworODI2NjIgMzUyOGM0ZTc4MGJmMDdiOGY5MDJhY2U3NTM3MGQ3Njc4NTdjMGZiZiBweTNrCis4MjY2MyBlNGJkYTRhNTIwY2E3NTI5MmExNzE2MGI1NTQ5ZDNkNjM0MDMwY2ViIHB5M2sKKzgyNjY0IGZmMmQxYjJjZGM2OTEzOWYzMmRlNzg0NzEzZDFiZGYwNWQyOGUyMzEgaW1wb3J0X3VuaWNvZGUKKzgyNjY1IGM2N2Y5OGFkYjhmMzYxY2IxOTM2NzZjOGY1MWM5MTU2ZTkyN2FiMGMgaW1wb3J0X3VuaWNvZGUKKzgyNjY2IDViNjMxODUzNzJkMWYzN2FhNzFkNmYxMmJjYjM0NjczNzdjYzk3YzMgaW1wb3J0X3VuaWNvZGUKKzgyNjY3IDE2ZTM0OGYxNjVmODVkMzRkNmViOGI5NzQ5NTQyZjRkY2UxZWZmYjggaW1wb3J0X3VuaWNvZGUKKzgyNjY4IDQ0YmQ0YWQxZjZkNDJmYWIyMDQ0NTA2NDQ4NTAwZDIzNzAzN2VkM2YgaW1wb3J0X3VuaWNvZGUKKzgyNjY5IDViNmYwM2YzOTFkYWZlMjQ2MGEwYTM5OTg1ODNiNTYyOTdkZTczMTEgaW1wb3J0X3VuaWNvZGUKKzgyNjcwIGU5NjI3OWFjNmQxNDY4YTM0ZDFhN2Y0MzI3MDc1MzhlMGI0MjgxNjAgaW1wb3J0X3VuaWNvZGUKKzgyNjcxIGE5N2Y3NTAzZTUwYzQwNTZmZTMwYmE1ZjQzNDkyNTIwY2RkYzIxYzggaW1wb3J0X3VuaWNvZGUKKzgyNjcyIDYwZmM5NDQ2YWEyZTAzNTM3NmRmYTA3MTEzY2VhNmZmZDZjOTMxY2QgaW1wb3J0X3VuaWNvZGUKKzgyNjczIGMzMGQ4NDgwN2M2MmQwOTVlODRkZGE1ZmQzMjc1MGJkYWEzZWIzNzkgaW1wb3J0X3VuaWNvZGUKKzgyNjc0IGRmZTI2MDIzMWM0OWMxNDI5OGFlMTNiNTE0ZGFlMzA1OGY0NjBhYWYgaW1wb3J0X3VuaWNvZGUKKzgyNjc1IDBjZDk0MTZhMWMxZTY3YjdmNDA5ZTZmMzMzYTdkYjYxMjI1ZGIxNTkgaW1wb3J0X3VuaWNvZGUKKzgyNjc2IGY3MzViYjJiMDZkZTE4NTk4ZGMzMDhhMTk0NDgyMTIzYjMyNjUxYWYgaW1wb3J0X3VuaWNvZGUKKzgyNjc3IGJlYmNiNmFiMDlhNTY1YjEzNzZkZTFhNzBiZDg1OWE1NTFhZjZkMmQgaW1wb3J0X3VuaWNvZGUKKzgyNjc4IGM4NzJlNGZhYTFlNzQyMzkxZWJlMDcyNWZjODMzMzZlZGNiODE5NzAgaW1wb3J0X3VuaWNvZGUKKzgyNjc5IDE0ZGE3YzNlOTIyMzJiMTRjMzhkN2YwMGY1MWE3YzcwYzhhMmUwZGIgaW1wb3J0X3VuaWNvZGUKKzgyNjgwIDA5NTJlMmRmM2M0ZDFiOTg0Y2MwZWRkYjc2NWQ5OGIyMmZiMjgyMjQgaW1wb3J0X3VuaWNvZGUKKzgyNjgxIDc2ZjM2Y2ExMDYxZjQ0ZmE1YTdiOTEzYjY5MjQyNGYzNzk0MWFlZTMgaW1wb3J0X3VuaWNvZGUKKzgyNjgyIDIyYjkzODhkN2MwZWY5MGE3ZTY2MTRjZWU0MDRiZjA1ZDU5ZmVhYzAgaW1wb3J0X3VuaWNvZGUKKzgyNjgzIGU0MjMzZTljODQ2MTIyNjUxZGFjODE1YmU4NDIxNzY0MGM3OTJjNzUgaW1wb3J0X3VuaWNvZGUKKzgyNjg0IGU3NjZmN2JjYjJkNTVjMzQ3NzRkYTMyYmU1Y2Y5YjhlY2EzZGEzNjEgaW1wb3J0X3VuaWNvZGUKKzgyNjg1IDVjYTQxZGVlYmQwZmZhMmVlZjg2MzBkZGE3YjhmY2RkMGY0ZTRmNzUgaW1wb3J0X3VuaWNvZGUKKzgyNjg2IDJlOWZjNTMyZDFkMWJkOWJjODFiMDViOTQ5OTBhMDQxMzlkZTJjNWYgaW1wb3J0X3VuaWNvZGUKKzgyNjg3IGUxZDg2Y2YyY2ZlNDRiZTA5NDUzZjFlYTE5OGJlMGI5MTgyYzRlZmEgaW1wb3J0X3VuaWNvZGUKKzgyNjg4IGUwZmI0OWVjOTQ1Y2NhNTcyNDI5NDY3YTA2ODk1MzYzMzU4YmUyMDcgaW1wb3J0X3VuaWNvZGUKKzgyNjg5IGEyYzdmMjA2MGU1YmRiZDg3Y2ZiYWZkNTQ3NzlmYzU5ZjRiNjNjODUgaW1wb3J0X3VuaWNvZGUKKzgyNjkwIDFjMWZkOTVlMTNiNDJlYmVmYmMyNjgxZjAzMTg3NmUyNDQyNTU4ZTEgaW1wb3J0X3VuaWNvZGUKKzgyNjkxIDBhMzBiNTZjYTNhYzlkZTFiMTVjOGEzNjZmZDBkYzE2ZWViMjA5YWQgaW1wb3J0X3VuaWNvZGUKKzgyNjkyIDM2MGUxYTA4ZTUzYjk0ODBhYTVkY2IzOGUwOTllZGRiYzI5NjNmZjIgaW1wb3J0X3VuaWNvZGUKKzgyNjkzIDYwZmJmYWE3ZDkzZGZkYjE5ZDRkYjEzZjkzMmEyYzFkMDUzZWMzNGUgaW1wb3J0X3VuaWNvZGUKKzgyNjk0IDk1MGI0NzU0YmJlMmFiZmMwYzUwMWJiZjFmNjBiOTI1M2E1ODExOTQgaW1wb3J0X3VuaWNvZGUKKzgyNjk1IGZmZWI4NTEyOGM3ZTg0ODMzMTY5NmI2ZTE0YjIzYTRlYTdmOThlYTkgaW1wb3J0X3VuaWNvZGUKKzgyNjk2IDAxZTRlM2QzNzc0ZDYwNDVjMjk5MjM1ODRjMDhmN2U4NDUyMjg0YzUgaW1wb3J0X3VuaWNvZGUKKzgyNjk3IGU4MWVkM2FkMDY5ZDlhYzJlNWVhOWNjZjg5M2E1ODBhZmQ5MDNjODAgaW1wb3J0X3VuaWNvZGUKKzgyNjk4IDFhZGMyM2RjZTk3MTdjNDg0MDEwMGFkMmUzMzkyZTRjNjM2M2JhMzMgaW1wb3J0X3VuaWNvZGUKKzgyNjk5IDE3N2E4MmVjZmY2NzEwNmFiYmM0YzY3NTY1YzBmNTFjYmU2MDAyNTMgaW1wb3J0X3VuaWNvZGUKKzgyNzAwIDgyNDk3ZjFjMWM1NDE1MjgzYWFjYmViYTAzYjNhY2E3MzRmMDc4MDkgaW1wb3J0X3VuaWNvZGUKKzgyNzAxIDkwY2E0NWQ2NTZjMmQ2NTcwNTVhZTU2N2JmZDVjYjAzNTI0OWY4ZDkgaW1wb3J0X3VuaWNvZGUKKzgyNzAyIDMwYmJjMTg2MGZiYjJlN2JkMDY2NjljNDY2YWU3NzQ4NzRhN2ZkNjIgaW1wb3J0X3VuaWNvZGUKKzgyNzAzIDg2NWQxOGFmZGExNTEwOTkzYmNlYjRkYTIwNmEwNTQyNmY2YzViODcgaW1wb3J0X3VuaWNvZGUKKzgyNzA0IDdhZjIyOWVhMmU2NjVhOWVjMWFlYTZmNzcxYzVlMGYwZGZmZWVlZjQgaW1wb3J0X3VuaWNvZGUKKzgyNzA1IGEyOWNjMzg1MDAyOWY1N2U3MjIzMWFhM2QzNmM2YjNhOWNjODQ4YzggaW1wb3J0X3VuaWNvZGUKKzgyNzA2IGE0MjFiNGI0NWFhNjYyMGYyZDFhNDUxZjViMWY4MmY3MGFmNjhlNjQgaW1wb3J0X3VuaWNvZGUKKzgyNzA3IGE3YmI4NGY4NDk4YTFmNmJjNTViY2QxYzJkYTNjNmUxYjA1NTM3MmIgaW1wb3J0X3VuaWNvZGUKKzgyNzA4IGFmN2VjMTY5MTA0N2JjYzMyYTA2MjU3MDhmYjEyZWUzNTkxZmI5ZDggaW1wb3J0X3VuaWNvZGUKKzgyNzA5IDY4YjBlNzJlZjRmMjIxZDBiNWU2YTNiZWE3NTJhNGJjYzg5NjZhZDggaW1wb3J0X3VuaWNvZGUKKzgyNzEwIDhlNzBhNWVjMWFjYTYyOTU0OGU5YzI3ZjExNzMwNWRmOWM4OWNlZTQgaW1wb3J0X3VuaWNvZGUKKzgyNzExIDZkY2E5MzcwMmU2YmQwMmRkYzdlYWI0MmNhMWI5N2I4MTc3MGNmZTggaW1wb3J0X3VuaWNvZGUKKzgyNzEyIDc2YzM1ZDhhMjZhMDEyMGQ4ZDBiNzkzODI0ZjlkODk4ZTBlY2EzZDkgaW1wb3J0X3VuaWNvZGUKKzgyNzEzIGE3Y2Y5MDNiMTdkY2IxZTI1NmY3Mjc3ZWQ1OGU2YzViMjhiZGU0ODAgaW1wb3J0X3VuaWNvZGUKKzgyNzE0IDc4ZTZhNmZiZDM2MjFiZDhmNzEwMzQ5NzMyMWY0ODU3NzFhMjlmOGMgaW1wb3J0X3VuaWNvZGUKKzgyNzE1IGFiMTdiMGMyMmJhMWQyNGUwNTRkYjkzOTRkNTBjZmY3MWI5NjJlMGMgaW1wb3J0X3VuaWNvZGUKKzgyNzE2IDA5NWIyOTcyYzQ0ZjExMjM2YzBlMjkzMDNjMjM3ZDAwNGVkOWM1MGUgaW1wb3J0X3VuaWNvZGUKKzgyNzE3IDM2ZjZlZDA2NTFlMTM0MGViZjgxZTQ5ZDUwYjkyMjBmOWYxZTRjOWEgaW1wb3J0X3VuaWNvZGUKKzgyNzE4IDg1MmU0YTc1ZTE1NjkwNGFlNDdkZjliZjViZWRmZjZkNWM0NmYxNzUgaW1wb3J0X3VuaWNvZGUKKzgyNzE5IGYwZWY4M2Q5MTM1NDViZGUzMDljNGI0YTAwZmRjMDgxMzRiMmNlYTggaW1wb3J0X3VuaWNvZGUKKzgyNzIwIGVjYmE4ZmE1Yzc0M2VlMGEyMzk2NTU5MTY4OTIwMmE1ODlkNjEzNzAgaW1wb3J0X3VuaWNvZGUKKzgyNzIxIDhkY2Y4NDFmMWJkNDA1ZmVjYmVmYjA0NmFkNGI0MjUzMzE4NjUwYjAgaW1wb3J0X3VuaWNvZGUKKzgyNzIyIGJjMGI0YzkxOGRkYjRhN2QzZTg5MmNlNDk4NGNlNzk1MGEwMzA0ZGUgaW1wb3J0X3VuaWNvZGUKKzgyNzIzIDBlNzgyYTZlNmJiNzZlM2VkYTc2YTdhZDJmY2YwOGFiZTVlYWRmNzEgcHkzaworODI3MjQgYzdmMzYxNzAyOGE4Mzk5MTdiNTEyY2E1YmE1N2JmYjg2ZGU4ZDJkMiBweTNrCis4MjcyNSBhMjE3NzI2MmY2YjdlNWE3NDRmNzQyYjQwZGI3N2VkOTEzMDhjZGE1IHJlbGVhc2UyNy1tYWludAorODI3MjYgMDhlZWU4OWFmN2I5OWQxM2EwNTk4ZGY1OTI3NzhlOWE5NjIzMjhhMyByZWxlYXNlMjYtbWFpbnQKKzgyNzI3IDhjNjE0YmM3NjZiNDUzOTlmMzExZGUwYjMyZWFlMjgxODA2YTBhNjEgcmVsZWFzZTI2LW1haW50Cis4MjcyOCAwZDEyMjAxNzVmMjllZDAxZjAwOTY2ZDVjYWE2Y2E5ZDQ3YzI3MmMzIHJlbGVhc2UyNi1tYWludAorODI3MjkgOGFhYWYwMWZjZjAzZWNhNDQxYWI4NGU5ZjM4ZDNiMWUwYTBhZmU2YyByZWxlYXNlMjYtbWFpbnQKKzgyNzMwIGYzYmZkZmYyMTQ2YWE0ZTEwMzIzYTUwZmNjNGE5N2Y5OWNlMzczYjEgcHkzaworODI3MzEgY2ZjZjZmNjNlMGI0YWMwNWI1MmEwOTE1MTBlNWNkNWZlYTZhMWZmNSBweTNrCis4MjczMiA1ODVjNzBkYzFlYWE0ZjdlZWZiZmZiMWE3ZmIzMWQyZTA3Mzg5ZGM3IHJlbGVhc2UyNy1tYWludAorODI3MzMgZGIyOTNmZDc1MjhiOTRjMDE3Y2RjMmMwNmI1NWQzNzM3ZjdhMzY2ZiByZWxlYXNlMzEtbWFpbnQKKzgyNzM0IDUyM2FmZmQ0ZDQ3MjkzNzA5MDdjZWYzNTlkMGM1NDlkZjFjMzkyYjMgcmVsZWFzZTI3LW1haW50Cis4MjczNSA0M2EwZmMxODRhNTgxNzQ5MTJlYWExNGNjZWJmZDdhZjViZmYzZGUyIHB5M2sKKzgyNzM2IDQ3ZDQ5YjQwNjIwM2EwZjJhOTdmMTVlMWUwNjhhMjhmMzc2NDA1NGEgcmVsZWFzZTI3LW1haW50Cis4MjczNyBlMGRlZGQyZGNmYTgxZTAxMWE5NjcxZDVkNmNmZDA3YzBjNGJkNzBiIHB5M2sKKzgyNzM4IDdlOTRjMDNiYjg0ZTE1M2VjMWYxMWU0YTdkYTBjMjQ3MzAxNDZlNGEgcmVsZWFzZTI3LW1haW50Cis4MjczOSAxMGMwNjMwZjFjMTQzYTU2NzUzYzNjNDBmNWYwMGY4ZWYyOWM1ZmQ5IHB5M2sKKzgyNzQwIDA4OWZkNzEwZGNhODg0OTE1OWUzZWNjNTE1M2JhMjc3YWY4NTRkNTMgcmVsZWFzZTI2LW1haW50Cis4Mjc0MSA3ZDlhYjM1ZTQzYmM2NmFmOWM0MmQ5ZWQ3ODhiZGVkMzAyNjc5YTU0IHB5M2sKKzgyNzQyIDgxNWFlN2YzNzMyYmVlYmQxYTZlMWNhMzEyYTZhNWViMzBmMjJmMTQgcmVsZWFzZTI3LW1haW50Cis4Mjc0MyA1YWU3ZGY2YzkzZWQ5OWI0YmIxNTdhY2U4NjU2MGIzYTg5ZDMyZjYzIHB5M2sKKzgyNzQ0IGUzZjgzZjU2ZGQzY2RlOTM2YzdkMTkwZmYzODk4N2YxOWNiODhhZGUgcHkzaworODI3NDUgZTk3Y2RkNWM1ZTRmYzk5MTU2OTJiODFjNjZlZTMzOTJiNDBmNWIwMyBweTNrCis4Mjc0NiA5MmE5ZGM2NjhjOTUyOWYwMThhNjIwYjQ3MDdiYzA5Y2UxODYxNmMwIHB5M2sKKzgyNzQ3IGQ0MWEzMWY1YmY4MmY2MjRhZjIxOWY5NjlhN2U1NmNhNTM1NTk5NTMgcmVsZWFzZTI3LW1haW50Cis4Mjc0OCA0ZWZmOWMzNWM1NGE3YmI5ODU0ZmUxYjYzMTM0YTVlYzUyZTdhYmZlIHB5M2sKKzgyNzQ5IGZiYTllOTFlODhkY2RmMGM3NDkzNDZiZjY2ZDEwNDE0ZTY1OWZmN2QgcHkzaworODI3NTAgYzcwZDUwZDIxZjg1MWE2YTU3MTQwNjk5ZWYyZGE5ZTdiYWIzY2Y1NCBweTNrCis4Mjc1MSBkZTFiOWZjM2UxZTcyMjBmNDMyZjYwN2I1OGE0NjEzZmFhMWU1NjdmIHJlbGVhc2UzMS1tYWludAorODI3NTIgOGVhNjBhZTE0OTY4ZjM2OWEyOWMzNDIyODk1ZDY5NWM1ODUxNzMyMCByZWxlYXNlMzEtbWFpbnQKKzgyNzUzIGJkMTljNzE3OGYyNDJjMzg0MTQxZjYyMmEzMzA3YWNhMDYxYjE3ZGIgcHkzaworODI3NTQgZjQ3ODFhYTgyYjM3NTBiMWQ0ODlkNjBjMzFiNzZhNDljMzllMDNlMiByZWxlYXNlMzEtbWFpbnQKKzgyNzU1IDUwMjViYTA1NTNiNjMyOWViMTU4ZDQzZWMxNmMyNThjNTlmOTI2ZGQgcmVsZWFzZTMxLW1haW50Cis4Mjc1NiA2MzYxM2M0ZjYzMTdmMDZhMDUxNjVhM2U3MjZmNjEwZDM1MTA4MjA2IHJlbGVhc2UzMS1tYWludAorODI3NTcgNGQyMjJlZTJhMWM4NTQ3NmRjMGQ2Y2VkNWY4MmNmOTFjMGEzZjgyNCBweTNrCis4Mjc1OCA3YjU3Mjg5ZWJlMGQ0ZWY5OTFmNTVmZjFjOTdjOTA0MzgzZTUzY2IxIHB5M2sKKzgyNzU5IDk4M2UyYzBiZjhkY2RlY2RhOTliZjkxMjA3NjFmMjg1YTBjM2M5NTAgcHkzaworODI3NjAgMzVjNTlkMTFhZTEzODMyNzkzYjMwOGI0MWM3NGM5OTVlODRmYTk0NSBweTNrCis4Mjc2MSBiY2I3OWUxYWEwMGY3ZjQ0ZDA4YjZjNzg1NjdhNTUxMzgyZjYzMmY5IHB5M2sKKzgyNzYyIDMzZGU5Y2FmNzA5MDAwMDIyYTk3MmJiYmJkYTUwNmIxMmIwM2I4MDkgcHkzaworODI3NjMgMjU0ZWY1MjA1MTI4YWM2ZDYwMjkxYjZlMjlhNWQwMGM1M2FkNjUzYyBweTNrCis4Mjc2NCA5NDM3ODQ3MGFlMWM5MDc4M2YyMmU3ODg1OTg3MThjM2Q0N2E4MGJjIHB5M2sKKzgyNzY1IGZmMWE4MDM3NjQ4YzRiYzljNTQ4NzU4NzQ5NTA3YTcxYTUxNjAwMGEgcmVsZWFzZTI3LW1haW50Cis4Mjc2NiA4YmUyYjllNDg3MTg3YmRjMjg1N2JmYjgyODE0ZGU4NTgxNmZiOGIxIHB5M2sKKzgyNzY3IGFhYzA5MmVhZjlkMTgyZDE1NmJjMmQ3YTIwMGM5MzZmYTI2ZWJjMTcgcHkzaworODI3NjggMGZiZGMzZmEwMjRiZTU4ZThmMWIxZDg4ODdlZjhkOGU4ZDQ1YjAzYiByZWxlYXNlMzEtbWFpbnQKKzgyNzY5IGRhYjI4NmQyYmE4MmZmYWJjOTkyYTJjMTdkNmJjNzgwYzlkNzI5YTcgcmVsZWFzZTI3LW1haW50Cis4Mjc3MCA0OTg2MWRmYjI3MDE4MDIxMTE1ZjBhMjEwM2UyMzYwYzBiMjE0MmFjIHJlbGVhc2UyNi1tYWludAorODI3NzEgZWQzYmM3YTk2ZmZiNGJhMzdkM2I2MDM5MDI2ZWExYTc2MmU2MDBhMiBweTNrCis4Mjc3MiBhY2Q2Y2NjY2U4MzdiOTM1MTYxMDY0NjE2NmU2ZWRhNzM4MWViNzAyIHJlbGVhc2UzMS1tYWludAorODI3NzMgNDI5ZDBjN2NkYjg1NmRjNTliMjNhMTliZWIxODJjMTcxMjc3YWJiMSByZWxlYXNlMjctbWFpbnQKKzgyNzc0IGFjZWY1ZDY2MDgzMzAwOThjNjZmM2UxY2E4NmI0M2U4YjlhZWY0YzkgcmVsZWFzZTI2LW1haW50Cis4Mjc3NSAwM2Y3M2M0NmY4OWM3Y2E3NDJjODllNWVmNGIwM2RmOWNhYTMxMTUzIHJlbGVhc2UyNy1tYWludAorODI3NzYgMDMwMzZhZmNhNTQ5MWEwMTQ0OTcxNjhlMmIyYTk2MjQyZThjZWU3NyByZWxlYXNlMzEtbWFpbnQKKzgyNzc3IDVlNjBjN2RiMGY1MTBlZGJhMzE2ZmRhOWE4ZmM1YmNlZGYyODIzNmUgcHkzaworODI3NzggMjg3NTVlYjUzZjM4OTQ2MGVkYjBiMmUyYTJkNGZlNmQwNjI2Mjc1NiByZWxlYXNlMjctbWFpbnQKKzgyNzgwIGI1OGI0YWE0NjljNGY4MTc4ZjcyZWZiZjJhM2U3NTQxZmM5ZmZjNWYgcHkzaworODI3ODEgMTYzNjEyNGU1ZmZlZWI2Y2MxMTIyOTUxYWI0YTMzM2Y5ZmQ3MTBjMCByZWxlYXNlMzEtbWFpbnQKKzgyNzgyIDdlMDljNjRkNGE2NGNlMGQyNjQ3MWMyNzlkMDVhNDg2YWE0ZmQwNGEgcmVsZWFzZTI3LW1haW50Cis4Mjc4MyBmNzU1ZDFhYjgwNzQ2ZGI2Y2E1MGVhZjEzMGE2OTNmZTQ2MjU1Mzc1IHJlbGVhc2UyNi1tYWludAorODI3ODQgNTBmNGYxMTNiYmMzZjczMWZiZjAzMjEwZDI5YWNiNWNjMTljNTk5NSBweTNrCis4Mjc4NSBhOTllOGFkYWMwODFkZmNhMjViZjM4ZjVjMWIwYTJiMWUzNDMwNWQ1IHB5M2sKKzgyNzg2IDM2N2Q2MWU2YTcwZjA2OGYxNzViNzQ5OTU4YmZhNWYzOWY1OTg2ZDAgcmVsZWFzZTMxLW1haW50Cis4Mjc4NyA1NTUzM2Q1ODI4YjAzMWE2YWFiNjJmOWU4YzgwNTFkNTI1NWM4YWU2IHJlbGVhc2UyNy1tYWludAorODI3ODggZjBkZDAzYmY2YmM1ZmMwNzdkN2E1NTAxM2RhMDYyNTA0MjM1ZDAyMCByZWxlYXNlMjYtbWFpbnQKKzgyNzg5IDVkYjJlMDdjNDQ1MWZjMmIzOTEyMjkwZTcyYjA0ZmY2YjM2NGFlZDggcHkzaworODI3OTAgYmEwZjZlMTdlYjIyM2MwM2JkYTNhNmFlYmZhZTcwODBlMWIzZjJhOCBweTNrCis4Mjc5MSAwYjA3MWUxZWZkNDE0ZjBiZDQxOWQ4NTkyNWJiZTZmOGI3YTdiZDQzIHJlbGVhc2UyNy1tYWludAorODI3OTIgODFkMDU1N2RmNjQ3YmZmNWQ2MzgyZGY0ZDVmYzBiODQ4Y2FlM2I3OSByZWxlYXNlMzEtbWFpbnQKKzgyNzkzIGY5N2JlNTgwZDhjMTZlYjBmOWFiNjE1MDhmNmFlOTE0ZGMzZDE3YTkgcmVsZWFzZTI3LW1haW50Cis4Mjc5NCBiOTE1MTYyNDI3YWI0ZjZlNzQ5NzY5NDY4NTFlMWY5YWZkMmU5ZDU0IHJlbGVhc2UyNy1tYWludAorODI3OTUgNDI0ZTNmY2ZkM2FkMTFlMDUxNzU0NTQ4OThhMDJiMzY4OTBkMjg3OSByZWxlYXNlMzEtbWFpbnQKKzgyNzk2IGNlOTM1ZTcxYmQwN2U1MThlMmM3N2M0MTliMDE4MDBiY2Y5NTYyNWMgcHkzaworODI3OTcgNDcwN2VkZTRkMTRmZjE0ZTcxYjIzNTQ4OTE1MDMwOWQyMDA3ZjgzZCByZWxlYXNlMjYtbWFpbnQKKzgyNzk4IGM4Yjc3ZWZlOGI1NmU5NzM3NzNlZmY3YzEwZjJhMzhiNzhjMGUzZTAgcHkzaworODI3OTkgMGU2ZmJmNTE4ODUzZmViZmZkNzczY2U0ZjAwZGMzMzBjYTAwZmZkYSBweTNrCis4MjgwMCBlZGFiNTAxZjlkZjhlZmUxODIyMjU2YTFhNGZhNTJlM2Y2ZGI1NjY3IHJlbGVhc2UzMS1tYWludAorODI4MDEgMjk3ZjJjMjhmMTgyOTMzOWY0YThiMWYzYzBkMDhiZGM5ZjkxN2M3NyBweTNrCis4MjgwMiBkNWQ1MTJiODY1YTc1ZDNkYjI0NTgyZjcwYTA2OTUwZWUzOWJkNGYyIHJlbGVhc2UyNy1tYWludAorODI4MDMgNTAxMmZmYWUxOGZhYzZiOTJjYzM3ZWExM2YwNTQ2ZDIwZTVjYTQ2YSByZWxlYXNlMjctbWFpbnQKKzgyODA0IDkwYmYwNjMxYmZiOGVlODcwZGVjN2RiOWFhYTQ5ZDZiYmE4ZGQ4MjQgcHkzaworODI4MDUgNGNiMGU4N2MwN2NhMzZhMWYwZGYxNTkwNDRiNTg0NTRjYTliMmU5MSBweTNrCis4MjgwNiA2MTJlMTI2MzE1MTFiMjI0ZDNiNGQxODA0MGVmYTY4MTAzNzA2ZjcyIHB5M2sKKzgyODA3IGQwOTBmNjI1NGM0NTNkY2U3ZDc0ZGZiMDhlNzc2YzllMmZmNTZjOWUgcmVsZWFzZTI3LW1haW50Cis4MjgwOCAzNjVlZWFiNGEzNTAyNjBhZjdlMTA3NjEyYThmMjY2MGZmYWFlMzE5IHJlbGVhc2UzMS1tYWludAorODI4MDkgZmNmYTdiYmUxODVlYWZjMGE5YjE1N2M2MjlmMTI1YTExYmQ4NDNkZiByZWxlYXNlMzEtbWFpbnQKKzgyODEwIDdmNTc3NTM5NWQzMjhiMGMyMGRmMWNhMGM0MTdlNGEyZjUzODJhZWYgaW1wb3J0X3VuaWNvZGUKKzgyODExIGJlMTNmZjM3NTVlOWZhYjcxNjMxY2M4ZTg3NDNlYmM1NDk2ZDcwNGYgaW1wb3J0X3VuaWNvZGUKKzgyODEyIDgxZjBmMGQ1M2QxMDg0ZTYxNzJhZTI2MDNkZTUwN2VlNzg1NmVkMTIgaW1wb3J0X3VuaWNvZGUKKzgyODEzIGQxMzkxNGVjZDM3MGZmYmI0OTgxMmY1ZWZjN2I2YmEzODQ2NThmM2UgaW1wb3J0X3VuaWNvZGUKKzgyODE0IDE4OWZhOTJkMTVkYzU5NzgyOWU3NWYwNGRiMWQ5ODZiZjM2ZDE5YWMgcHkzaworODI4MTUgYjE0MzhkMjZjMTY3Yjg2MjFkZThjMjI4OWU3MDQxZWNiYTFmMjUxYiByZWxlYXNlMjctbWFpbnQKKzgyODE2IGEzNTJiOTE1NmNlZWNiMjc4ODQ5ODU5OTAzY2QwZDVlNGU1ZDg4N2YgcmVsZWFzZTMxLW1haW50Cis4MjgxNyAwZjRiN2MwN2QxYjM3YjUyMTFjN2MyMzVmMTA5MzQyMGViYzZmNGJjIHB5M2sKKzgyODE4IDUzZTdhZThjYTAzOTE0OGNkNGExMjU2NjhkZDcxYzI4ZjM3YzYzMzQgcHkzaworODI4MTkgZWFjY2YxYTFjYjkwM2I0ZGQ2ODIzZTIxMWY4OTkxNDBhOWZjYzAxZiBweTNrCis4MjgyMCA0YzExZTQxNDBjZWQxZmEzODhkNzRkNmFiZDk0ZmVhMDg4NDQzOTk4IHB5M2sKKzgyODIxIDA2YjM4OTFhNjM5NTM0YmI0ZTQzNTJiY2M3MTJmMTUwMGQ4NzFhZGMgcHkzaworODI4MjIgMWNmNDNjNmU2NTY2YjM2MjlmZjMyYzNiMjg3NDdiYmIxZTdmNmJmNiBweTNrCis4MjgyMyAxMTI5ZDRkZmVlZDZmZTFkMWJmZThjMmRjOTFhN2E5YWRjYjAxNzcwIHJlbGVhc2UyNy1tYWludAorODI4MjQgNDMyOTA4ZDUyMWNlZmVlYjk1NzUyZGJjZjRkNjk4ZTBmMGFiZjE2MCByZWxlYXNlMzEtbWFpbnQKKzgyODI1IDMyZDhiMjJiMGU3YzVlNjI5MGQwZjRlN2NjOTQ3MDdlZjVkNjI5YmIgcHkzaworODI4MjYgNWNhMjJhMWJlM2NkMjE2OGUzMTRhNDk3YmZkOThhMjM0ZmI3MjgxNSBpbXBvcnRfdW5pY29kZQorODI4MjcgMTk0Mzg0YjUzODBlNTI0MzhkMmFiYjRhYTA3MzYwYmE1NzQxMDJmNyBpbXBvcnRfdW5pY29kZQorODI4MjggNGRkOTg1MmRhZTliM2U3MGViOTk0MWEwYWZjZDM0YjdkMDYwZWY4MCBweTNrCis4MjgyOSA3Mzc1MTllZjE2MmU2ZWYyNzY2YTZlYmIxNDZiMDdkNGU2Zjg0MDZiIHJlbGVhc2UzMS1tYWludAorODI4MzAgYWIxMDJhMjI2MDM4M2IxMmRjNTczOTRjMDU1NjgzMGM4ZjY1NjQwOCBweTNrCis4MjgzMSAzZjM3ZTNjY2MxMzEzODc4N2VjYjg3YTM2NzFjMjZlMDljOTgyN2QxIHB5M2sKKzgyODMyIDY1NzZmZDRjMGQyZTMxMThkNDk0ZDBlZGYwZWIyNDExNDQ3YjA5ZjIgcHkzaworODI4MzMgNDliODNiZmNmYThmYmJhM2ZmOTZkNmI1MzZjNzM4ZDg2MmU4ZmViMSByZWxlYXNlMzEtbWFpbnQKKzgyODM0IDg0OWY2ZTIyMGFhMGQyMzEwZjhhNjMzMjYwNTAxMTBiYzkxYzQzMTQgcHkzaworODI4MzUgMzBmNjk1ZWM5NDliZDIyNTUzOGQ0OGExZGNjMzdlZTBiZTI4ZGQ5YSBweTNrCis4MjgzNiA4ZTQyYzdhNWRhYjhkOGZiNjRkYTEwZDJhMDBkZTFjNjhiYzQyMjU2IHJlbGVhc2UzMS1tYWludAorODI4MzcgZjViMThmMjY4ZjU3ZDhlOTYwMmVjZWYyNjBjZDA1YTFiMDFkZTI1NSBweTNrCis4MjgzOCAwYmI0ZGFkODE2MTRiNzlmMjI2ZmQzMmVmZjM4Y2ExMDZjZmZhNGNkIHB5M2sKKzgyODM5IDY2NGEyMGY0YTgzNmM3ODIyY2RiNTYxOTUwZWU5MjYyNjcxNDU0YTcgcHkzaworODI4NDAgN2VhYmE0MTNmZGE0YjhmMjU3NjAyYTA1NmY5MmIxNWUxY2EwYzM5NyByZWxlYXNlMjctbWFpbnQKKzgyODQxIDk0ZjUyOTc2NGMzODczYzY1MWVkNDUxODFlODBiMjY4YmIzNWUxODcgcmVsZWFzZTMxLW1haW50Cis4Mjg0MiBmY2Q0MTIzYWVkOTM0NmM2NzlmZjhlOGVhZTYwZDc2NGNiYjNkY2FjIHB5M2sKKzgyODQzIDYwZmRmMTQ3MDMyY2YxNWY5Nzk2OTFkN2I2Mjg0MzMzNGY2MGQ0MjEgcHkzaworODI4NDQgNjRjYWE3NDhhMjhlYWM5MWQ1YTA1NmViZGViYmVmOTA1MGUxODNmNSByZWxlYXNlMzEtbWFpbnQKKzgyODQ1IDRlZjYzOWY0ZDgxMDBiNDI5MGNkNTVhYzk2Mzk5MTExYTJkZGI2NzUgcmVsZWFzZTI3LW1haW50Cis4Mjg0NiAxZjk5ODIzZjRmYWU3OGExZDc1ZTljOTYyYTdhNWJiODYwMTFmYzQ0IHJlbGVhc2UzMS1tYWludAorODI4NDcgNWIzNTIxMzNjNDUyMWM5ZTgyOGIzMmVhMzljMGJjZTlhOWFkNWJiMSByZWxlYXNlMzEtbWFpbnQKKzgyODQ4IGI5ZWRkZjNjMWU5MGExZTY4OWE2MmNjNjJlYmYwNTBiOWFmNGNhYjYgcHkzaworODI4NDkgZWRmZDdlYTQ4ZWRiMjVlZDZmYzkxYjg0MDgwMGUxMTM3MzdlZjkxMyBweTNrCis4Mjg1MCBiNTc0OWRkOGM0MjFiYjFkMDgyNDY1MjY5MmNhZjZhZmE2OGJkMDNjIHB5M2sKKzgyODUxIGRhZWE5NzhhNDhhZTg5NGY3NjMxOWFjZTU1NzQ4MjVmNjJhYTU3ZjMgcmVsZWFzZTMxLW1haW50Cis4Mjg1MiBhZDUxYWI4YjY0YmQwM2U5MTFlMTcyZTk4NTIzOTEzOTc1MGEzMzE5IHJlbGVhc2UyNy1tYWludAorODI4NTMgNGZkNWJhMzVkZjZlNTY5NTE4MGQwMjg5YmE1MTgyMjgxMGU4YzhhOCByZWxlYXNlMjctbWFpbnQKKzgyODU0IDk4YTRlOTZmMWY2NzQwMWNlNmQ5YTYxN2QyYzM0YTQwYzViYjFhYzAgcmVsZWFzZTI3LW1haW50Cis4Mjg1NiAzMWEzZDc2ZjM4MzUxOWZlNmI1NDY4NTRlYTE2YzUyYmE1MDYxNzRlIHB5M2sKKzgyODU3IDJjNzU3OWUwNGFkMjE0NTVmYWZlZmFlZTQyODE4Y2YzYzg5ZjU0YTEgcHkzaworODI4NTggZWY2N2U3NDgxMjQ0Nzc1ZDU4ZGU5NWJiYmNkMjk4Mzc3NTBmYjgwNSByZWxlYXNlMzEtbWFpbnQKKzgyODU5IGFlZGI1M2Q4YzJiOGNkNTQ3MjFhOTY1MmYyNjkzNTg5NTlkNzUwZGMgcmVsZWFzZTMxLW1haW50Cis4Mjg2MCA2N2VkYzQyNGU5N2I4MmNkZWY4NTQ2NzA2OTZiMDk3MTAyMTY1ODgzIHJlbGVhc2UzMS1tYWludAorODI4NjEgZTYwN2ZlMTVmMmQ2OTQyNWY0NThhNmFkOTRlYTU5ZmNmZDg5ZmIzMCBpbXBvcnRfdW5pY29kZQorODI4NjIgMWUzNjdhZmVmZDdlMGU5OTQxMzJlYjRkMTIwNjdlYWE4MDlmOWNjZCBpbXBvcnRfdW5pY29kZQorODI4NjMgYTVmYjcwN2NhYmRlZWJkODZlOTk1MTRkOWQ2NzBkZmU1Njg0NTJjNiBpbXBvcnRfdW5pY29kZQorODI4NjQgZDQ5M2ExYjQ0NTdlOWE5MTFmNTcxMjVkNGQ5MTk0MDhiNTk1YjlkNSBpbXBvcnRfdW5pY29kZQorODI4NjUgMjBiYjZmZDBiZDljMzVmNWI1MDhmNTYxZDliODQ1OWVjNmViMGU0YiBpbXBvcnRfdW5pY29kZQorODI4NjYgMzMxZTM3ZTA1MmNmM2JjNTNiNzViODBhNjczMTY2MTFmYTY5ZWM4OSBpbXBvcnRfdW5pY29kZQorODI4NjcgM2M5YjM4NDRmOTc4ODExMGNlNzAyYzRkYTQwOGRmMzNiZTUxNmYxZiBpbXBvcnRfdW5pY29kZQorODI4NjggMDkxNmU4NTg1YWNiMmQ5ZTdkOTJhMzg5NGIzMGMxY2IyOWRjMjQ1OCBpbXBvcnRfdW5pY29kZQorODI4NjkgN2YwZGFiYjdmZDhkZDYxMjZhNTk0ZGM2ZTg2ZWIwZGUyN2IxNTc1MyBpbXBvcnRfdW5pY29kZQorODI4NzAgNWIxYjdmNTU3NGMwMDFiYjhhODI3Y2ZkZTA0NDA2MGI1MjY0NzJmNiByZWxlYXNlMjctbWFpbnQKKzgyODcxIDg2MzU1MjNlZjVjNjM5NTUwYTc2ZmM0NGIzZmFkYjUyNWRiZjYyZWUgcHkzaworODI4NzIgZDRmNjdiODY0OTI4OGE0YjUwOGFlMjVhZmZlNGFjMDNmNjhiMGZkNSBweTNrCis4Mjg3MyBhZDk1ZTIzMTI5Yzc2Y2IyNmQ5MGI1Mzk4YTAwNDYwZTU2MDFmNDY2IHB5M2sKKzgyODc0IGQzMGI5ZGZmYjg2ZDQxMDc1M2QzZmY4NmFmMzZjYjJlNmQ5ZTJiZmIgcHkzaworODI4NzUgNzcwMjMyOTJmYzYxNGJjYTk1NGNiODE3YmYwZDhmYjcwYWFlOTY0OSByZWxlYXNlMjctbWFpbnQKKzgyODc2IDE4YmRjNDNjZTVlZDI4ZTVkZTFmMzRhYzEyYzFjZmU2ZWQ4ODQyZmEgcmVsZWFzZTI3LW1haW50Cis4Mjg3NyA3ZDdlNjNlYjNiNTMwMTg0NTRkYzQ1M2JlYmEwYWY4NjFjZjY3MjM1IHJlbGVhc2UyNy1tYWludAorODI4NzggNzdkZmUyYTc3NWQxOTk5MGMzZjNiN2NkN2EzNzdlMGQ0NjNhZWVkZCByZWxlYXNlMjYtbWFpbnQKKzgyODc5IGViMDA3NWU2MDcyNWI5ZjEzMjNjY2EzZjkzNzM3ZmM3ZTcxOTJjZjMgcHkzaworODI4ODAgNDEzNjBmODAzOWFiZmIzNDYyNjJlOGE0ZTAyMmRmMjFiYzNhOGY1MyByZWxlYXNlMzEtbWFpbnQKKzgyODgxIGQ3NGRlMDUwYzQ0NWRiZTllY2E4M2E1OTYxYzJhZTU5NDJiNDNjNTEgcHkzaworODI4ODIgNGI0NTY3ODBjOGQ4YWY0MjlhZDlmYzMyMGFlM2U1OGI3MjFmYWZhZSByZWxlYXNlMzEtbWFpbnQKKzgyODgzIDYxNDFjYjJlMjZlMTQ3MDAzOWJjMGI0MjAzNjMyMmQyM2M1NDcyODcgcmVsZWFzZTI3LW1haW50Cis4Mjg4NCAwZjI0MzE0MDEwMjEyNzcxOTYzZTU5ZmE5YTZlYWNkZmU3YjMwMzZkIHJlbGVhc2UyNi1tYWludAorODI4ODUgYzBlMDc1NmUwOTk2NjM0ZWVkNWRjOWNjYWIwMzQzODA1ZGEyZTlkNCBweTNrCis4Mjg4NiAzODA1ZmZlOGZmMzgzMTVlYjZlMjIyNTAwZWRlNDE3ZjZkMzY0OThhIHJlbGVhc2UzMS1tYWludAorODI4ODcgNmM3NjNkNjMxZGJhMDU5NDc2N2UyY2Q3MmY1ZWZjZDA3N2UyOGY3MCBweTNrCis4Mjg4OCAyYjY4YTg0NDE0NTg3MmZmYWZlNTFjMjgzMzk2Y2E2YzFjOTEyODA3IHJlbGVhc2UzMS1tYWludAorODI4ODkgZDRmNjFiMzZjY2U2ZTZlNzAwMjdhOWVjMjVlMGIyNzFiZDY3YzVlNiByZWxlYXNlMjctbWFpbnQKKzgyODkwIDlmMWQ5YWVmMzc0Yzc3ZDk5OWFkZDJkZmYzMjBjZDc5MzMzMTA1ZWIgcHkzaworODI4OTEgMGY4M2NhMTIwNzUyOTBiYjA1ZDM2NGNlMjAxNTU0Mzc3MDhiYThmZiByZWxlYXNlMzEtbWFpbnQKKzgyODkyIDk2NzU3YzY5MGIwNWYyZGY0YmNlOWViNjljNzFmY2E0ZDAxMWEyYzIgcmVsZWFzZTI3LW1haW50Cis4Mjg5MyBjNzA4Yzk0NmZmM2U0M2U3ZGNjZmE5MDc2OGZmODFiOGVkZGRkMzA2IHJlbGVhc2UyNi1tYWludAorODI4OTUgYTFmN2RlYTM2MjE5NmI2YjFhYmM0NDUwYmM3YTc0MGZkNDhkZDAzOCBweTNrCis4Mjg5NiBhMjk3M2U3MDUwNTdhNzFjMDA3Y2M2YzUzZDJmMDY0YjZhZWQ5ZTQ5IHJlbGVhc2UzMS1tYWludAorODI4OTcgMGIyOTFlMmZmMDBmYzkxYTk3ZTgwYjUwNTBlNjZhNWFiYjlkZGU0MiByZWxlYXNlMjctbWFpbnQKKzgyODk4IDYzMzNkM2E3ZTVjNzM5ZTk1NTcxNzlkMTI1MDYzZmQ5ZDk2ODAzMzAgcmVsZWFzZTI2LW1haW50Cis4Mjg5OSA0NjkyNzgxMDI3OTA4N2EzMzhhYzEyNWY0Mzc0NTUwZTgwNDA2NzkzIHB5M2sKKzgyOTAwIDRmZTI4YTQ5MWE2MzA4OTNlYTVhNmM5ZGJhMjhjYmU2YTg4NTE3NTcgcmVsZWFzZTMxLW1haW50Cis4MjkwMSBjNzQ1ZGY5NDYyZTY3N2VkODEyZWU4NmY2MmI4MDIyMzcwZjdlNGJkIGltcG9ydF91bmljb2RlCis4MjkwMiBhZDI2M2NjMzg2YTU0MjIzMmJiMmVlZGNmMzY0NGExMWVhYWEwMTQ4IGltcG9ydF91bmljb2RlCis4MjkwMyBmZWNmZjA0ZDBhYjEzYjBlODljNjNiODcxNmFhY2Q1MmJkZGIxNDU1IGltcG9ydF91bmljb2RlCis4MjkwNCA3Y2RmYWNlMWFiMDk2MjZlZDFlNGFhNmNiNmE1NjVmNmI5M2YwODllIGltcG9ydF91bmljb2RlCis4MjkwNSA3MzBjOGI5MDdkN2RjYzg3OTFlZjZlMzQwMGJiOWI2YTM3NWE4MTEwIGltcG9ydF91bmljb2RlCis4MjkwNiBmZjlkZGMxNjFlZTNkMDY5N2JhMWMxZTk4ZmE2MjhlOTJmZGM4YmRmIGltcG9ydF91bmljb2RlCis4MjkwNyA3YjcxYjZkYzc0NDRlMGExY2NiYzA0ZTM1YjUxZTY1MDM4M2RiNTI3IGltcG9ydF91bmljb2RlCis4MjkwOCA4OWY5N2ExMjEzY2Q5YjA0NzU4NDExN2M4MjhhOGNmYzRjOGU3YjkzIGltcG9ydF91bmljb2RlCis4MjkxMCAyMDI2ZWE0NDI4ODk5YzkzYTdlZTM2MjA3YWQ4OTRjYTBlYjJiMTQ0IHB5M2sKKzgyOTEyIDBiNzUzYTNmZTRiMGUxNzllNDVmOTc4ZTAyZjFmYjQ2ZWFiYTFiMjkgcmVsZWFzZTMxLW1haW50Cis4MjkxMyA1ZmZmYWM5YWM3ZDZjMjY5NTZmNzlkOTEzY2EzNjJmMmU1ZGVjZGYwIGltcG9ydF91bmljb2RlCis4MjkxNSAxZjI3YTA1YzZjMzFkNGExMzE1MmQzYzM5ZjdmNzU5YzdkNDQ2MWFhIHB5M2sKKzgyOTE2IDI0ZjdmYTI1ODFlNmYxZDRkMmUwZmExMWQzNWIyYjU0ZDhhYzJlNDIgcmVsZWFzZTMxLW1haW50Cis4MjkxNyBlNzAzMTk4M2U2ZmRmM2M1NDg1MzdkN2M4ZjljMjE1ZjUwYmY1MzMzIHJlbGVhc2UyNy1tYWludAorODI5MTggZTJlYzVmYmM2Y2YxMzdjYzY0Y2EwYzNhNTliODAwZGQ5NDcwMGE5MiBweTNrCis4MjkxOSBhMGI5NTM3N2FhYWQ4ZDZlOWJkYmUxNDBjMzRmYmRjYWJlOTM0Yzg3IHB5M2sKKzgyOTIwIDdjYmY4YzRlMjcyNzkxZmQ3OGIxMzIzYzNhMWRjZjA0YzU3ZDgwODggcmVsZWFzZTMxLW1haW50Cis4MjkyMSA4NGZmNDE3OTRkM2YyYjQ4ZGEyNmU4ODYyZWVlZmRlMTdmOTMzZGZhIHB5M2sKKzgyOTIyIDNjNzMwMTBiZDBiMGNmN2YyZDgyNWJhOWIyZDJlZTRjYmMzNDU0MGQgcHkzaworODI5MjMgN2EwMGNhNGI5NTkyYjg1YTY1ZWUyMTA1ZDIzODNlMDg3ZDllNDkxYSByZWxlYXNlMzEtbWFpbnQKKzgyOTI0IDAxNzExZjYwZmZmY2ZjZDQyMWZmMTE5YjVlNmUyMmFkNjNiNTZlYWMgcmVsZWFzZTI3LW1haW50Cis4MjkyNSA0YzQ1YTMyYzNjYzk5OGVlNTIyZDI4NGMzNzE0MWQzYzJiMWIzODkyIHJlbGVhc2UyNi1tYWludAorODI5MjYgZWFmMDRhM2Y0NTFhMmRiYjAxZmY0NmQxZDljMGQ5ZDE3YWM2NmY0NCBweTNrLWNkZWNpbWFsCis4MjkyNyBjNzQxYTFmMjI5NzY5OGI5Njc4ZmVjMGUwZjA1YzFlYjMyYjAzMzhkIHB5M2sKKzgyOTI4IGZhOGYzODgzNDI4NzhlMjY5OGI0NWM1N2ZjNGRkZGU3YzJiOTBiYmQgcmVsZWFzZTMxLW1haW50Cis4MjkyOSBlMDViNjQ2ZDZiOTg1MDFmODEzN2U4Y2FkYTM2MzNhMDczMzRjOTdmIHJlbGVhc2UyNy1tYWludAorODI5MzAgYjIyODkzYmUwOGM3MWUxNzNmNjY4Mzg2NjU3OWFhNjk5NWNkZjBlNiByZWxlYXNlMjYtbWFpbnQKKzgyOTMxIGNmNGI4MzNhNDdkZTg1YWVjNDc1ODAwNDRmZTVkNmViYTUyZDY3YzIgcHkzaworODI5MzIgZjI4MzMwODgxZGI0NGU4MDUyM2I3NDA4ZTNmYzFhZTQ1ZWVlNzdkZCByZWxlYXNlMzEtbWFpbnQKKzgyOTMzIDkwNWZhNTcxOTQwMzBlYzU2YjAyYzI5YjM0MWUxYWUwNWEyZGY5ZWMgcmVsZWFzZTI3LW1haW50Cis4MjkzNCAyYTc5YjcyM2FiZGNmOTUyZTEyMzliMGQ5NTQyMDkxODcwMDAzODI3IHB5M2sKKzgyOTM1IDhjNDQwY2Y5MDc3NmQyZDQ3MzhjNzY5YTVkZjVmNTU0OWZjOTdhZTAgcmVsZWFzZTI3LW1haW50Cis4MjkzNiA5ZTYxOWYxNmY2NmFhNDI0YzRmODE2OTk0MjUyMjZiNTZhMGUwZDViIHJlbGVhc2UzMS1tYWludAorODI5MzcgM2M3OGIzY2ZkNDYyY2Y0OGFiYmRiOGM0YWIwZGU2Yjk0ZmRmMWI4YSBweTNrCis4MjkzOCBhYmY2OWQ0MDI4ODNiN2IzZGUyYzNjOWE5MjdlODM1NmYyNGFkZmM1IHJlbGVhc2UzMS1tYWludAorODI5MzkgZDFkODEyNDZiMjI5OTZlM2Y1NjgxN2U2ZDUwNjUxOWFiZDgzNTY2ZSByZWxlYXNlMjctbWFpbnQKKzgyOTQwIDFlMjFkOTRlMDVmNDYyOTM0NmVkMGRlZjJiMzZlNmRiODMxZTZjMGYgcmVsZWFzZTI3LW1haW50Cis4Mjk0MSAyNjgzMzMzNzU1ZjM2MmI2YjU0N2EwMDQyM2JjOTVmYjkxYTc0MDExIHB5M2sKKzgyOTQyIDY4MDM2ZjJiNWFjOGQ5ZjUzODkzMGM1MDJjZWRhYjMwNmU4NmQzZjAgcmVsZWFzZTMxLW1haW50Cis4Mjk0MyBiMWRjNjBiM2M3YWViYzI0NzBiMmNiNGNkMzk5OGY3NDRlOTczZjE0IHB5M2sKKzgyOTQ0IGRiMmRjY2EyNDA2OTQ3MjdiYjA5MWY5NGE3YjkyZjA1MzgxYWQzYTkgcmVsZWFzZTMxLW1haW50Cis4Mjk0NSAxOTE5MTU1OWVjMDJjNWRmYjJmZTlkNzIwYzE1MzRkNmQ3NmY5MzY2IHJlbGVhc2UyNy1tYWludAorODI5NDYgYzE2YjNmNmFjNTExYjYyNDczZDc5YjI0YzM2NDU5ZjBjN2JiZDRkZiByZWxlYXNlMjYtbWFpbnQKKzgyOTQ3IDIxMWUzMThkMjNlZmE4ZjZjZGEyOWYyZDI1MjU4YmMwMWM3NTlmYmMgcHkzaworODI5NDggZGIzYWQ2ZWMwYTRiMTZkOTdlMmMyMWIzMTNmZmU0YzkxNzkyODYyOSByZWxlYXNlMzEtbWFpbnQKKzgyOTQ5IDk3ODY4M2ZkZTgyMDM3NDE3ZDgxODQ0NTIwZjJkODdiMWRhMGViYzcgcHkzaworODI5NTEgNmRjM2QyMjI4M2ZmNTRmYzRiNjFmMGZhOWQyZDRlZWVjNTUyMjU4OSBweTNrCis4Mjk1MiAxNmU4NjJhNWI2ZjI2ZGVkOTg3YzA4N2EzOGJlZTM0NmFiMDkzYzFiIHB5M2sKKzgyOTUzIDRiZjAzMzc3NTg0ZGIwNzY0OWI4ZGUzNWU2ZWQyNmQ1M2E1OWVhOTAgcmVsZWFzZTI3LW1haW50Cis4Mjk1NCA0MWFiMTYxZDQ3YTdiZjQ1ZGM1OGI0Nzk2MTc2ODIwZTJkYWFiNTQxIHB5M2sKKzgyOTU1IDdlNDUxY2U5MGMxYTYyNDRhM2I0ZTliMDE4YTY5MjExZTA5MWQ2NDAgcmVsZWFzZTMxLW1haW50Cis4Mjk1NiAwZDkxODEyZjYyNjA5Njg3ZjBiMjNkYTM5MjJjNTFkNzZiZGU0YTAzIHJlbGVhc2UzMS1tYWludAorODI5NTcgMzFkZjZmOGU5ZjFkNGQwNDlkOWIyYjk2YWU4ZGI4Nzc0N2I5NmM0MCBweTNrCis4Mjk1OCA2N2Y4ZjA1Y2Q0MGRjMGUyNjFlYzJhYmVmMGQ3OGIxNDViNjNiY2Y2IHB5M2sKKzgyOTU5IGNjZDNlNTQ1NjJmYTdhMGQ2NTNjZmU3MDhhMTgwODllYTMyNjI3MDEgcHkzaworODI5NjAgYTRkYWU3ZTJkZjdlNjY2M2YwZDNjZmJiYTNhY2VjODUzZjBiOTU1MiBweTNrCis4Mjk2MSA0ODM1MTA2ZWNlMGM1MzI0YTIwYzYyMjZmNjFkOTljODAzNGQ5ZmZlIHB5M2sKKzgyOTYyIGE2NWM5OWY5NDg5MDA5NWIwY2NhNGEzMDIyNmVlNWMzNzE1NjI0OWMgcHkzaworODI5NjMgYmI3ZmMwOGY3MjNlYzdkYjdmYjFkZjllZjYzNjhjYjc4NmE0MThlYiByZWxlYXNlMzEtbWFpbnQKKzgyOTY0IDJmOTU1YmY5MzAzN2I2ZDY4Y2JiODRiMmQ0YzEzODZkYjgzNDIwMDkgcHkzaworODI5NjUgMjUyMTZhN2UyMzRkNmFhMzg1Y2IzYTI0ZmQyYTEyMzY5MDRjYWE0ZSBweTNrCis4Mjk2NiBkMzU3ODJhYzIxZjg2MWY5Njk5OTZkZDdkZDgxZTZjYjk0MTQ5YzJiIHB5M2sKKzgyOTY3IGI3OTQyOTE1NDgwZjc4YmE1Mzk2YWE5NDk2NDE2MTI5MGU3N2M5MDggcHkzaworODI5NjggYzkwMDIxZmQxZmJmYWZmYmZiZGI0ZjMzZDE0ZjQ3NWRiZTZjMzg5NCByZWxlYXNlMzEtbWFpbnQKKzgyOTY5IGM5NmE3MjJiZTFkYmMxYzRlMGQwYmI0NDZkMDc1NTNlMzRiYjJiZDIgcmVsZWFzZTI3LW1haW50Cis4Mjk3MCBiOWM5ODlhMmZhZDMxMzc3Y2IyNTkwNDllMzdiYjRiNmFlNGM4Y2VkIHJlbGVhc2UyNi1tYWludAorODI5NzEgYWEwYjU2ZGQxNGFmN2I4YjVkNDNhZTBmNGRjNDA0ODNkNjQ2ZWRiYiBweTNrCis4Mjk3MiBhZDY2ZWZmOTgwMGJiYzJjZjI0NjcyNmFhYmRkM2NmNjdiZmZkYmJhIHJlbGVhc2UzMS1tYWludAorODI5NzMgMzU0NTQ2ODQ2YzI5N2FlM2UxMzI5OGM5NTMzNzk0ZDJiZDY5ODVkOSByZWxlYXNlMjctbWFpbnQKKzgyOTc0IDNmZGQ5YjQzMDI0YzYyMWYxMmZjMjY5MmI4YzVjMGNlYjg2Y2EyNGMgcmVsZWFzZTI2LW1haW50Cis4Mjk3NSA3ZjMxM2VkOWU4OGYzMjQzOWEwZTRkM2IxNWM5ZWEzOGExMTYxYWZiIHJlbGVhc2UyNi1tYWludAorODI5NzcgYTExMjE0MDlmOTZiMjBkZWZhYTRmNDc1MTJmMTk0NTBiZWUyNmI0MSByZWxlYXNlMjctbWFpbnQKKzgyOTc4IDczZGRiOGIyYjU3NDdlOGMzMmIzYTE2ZDQyZTVkZjNiNmJiNjUxMDEgcHkzaworODI5NzkgNWNmZjA1OGQ2Y2VkNWMxNTliMWFmZGZhMzg5MjNjNjI3NDU1YjNjZSByZWxlYXNlMzEtbWFpbnQKKzgyOTgwIDNmYTYwNTY4OGQwMzVhNTQ1YjYwMjAxM2JiMGMwYzE2ZTc1ODIxMWIgcmVsZWFzZTI3LW1haW50Cis4Mjk4MSBlMWJjMmM4OTM1ZDIwYTdlOGY3MDJkMTllNzhmMjMwYWFiMmExNGUxIHJlbGVhc2UyNy1tYWludAorODI5ODIgMWM2NmY3MmY2YmM5M2IxZGI0M2MwMzUzZWNjYTQyMDhkMzA0NjRmMyByZWxlYXNlMjYtbWFpbnQKKzgyOTgzIGYyNDE1OTJlY2U0ZWJlNWRlYTkzMDA1Nzc1MDg5ZWY2OTI3MmI5YzcgcHkzaworODI5ODQgNzQyZmRmN2Y2NTQwMDU2MjZmZTc3YzcxYmZjZTViMjllY2M0NjMzZCByZWxlYXNlMjYtbWFpbnQKKzgyOTg1IDg3MmIzNGNiMjY4ODUxNDQyZTQxOTMzODAxZmU2NjQzOWRjNmE0NWMgcHkzaworODI5ODYgYjJmMTM4NWEyMzVlMGQ4OTg2ZTI5NzRkYzBhZTczNDlkYjAwMmIwMSBweTNrLWNkZWNpbWFsCis4Mjk4NyAzMzM3YTI5NTVlMTE5MjdiM2RmYTdhZTg4ZDc0YTk1N2E5MDAwZTFmIHB5M2stY2RlY2ltYWwKKzgyOTg4IDE2OTM0N2Y5ZDRjNGYyNWRiMDdjOWZkODRmZDM3NDk3MWU2YzE0MjMgcHkzay1jZGVjaW1hbAorODI5OTUgOWM3NjZjZDIxMWRiMGVhYTYyN2E1ODFiMTAxMzI4ZDA4ZDhkYTA0MSBweTNrCis4Mjk5NyBhMTRhNzg2OTJjN2ExNTgwZWE3OTk1NTUzNjAyZjYwYmMyZTdkZjc0IHB5M2sKKzgyOTk4IGMwZDhmZTI1ZTI2NmVjODY2MWYzNGY2ZTk3OWQ0Njc0YjAwNTI0ZTcgcHkzay1jZGVjaW1hbAorODI5OTkgMWUyNjFjY2U0MTE2NDVhMzZiNTdjODdmNDg0OGY1ZmUyYmUyNTg3NyByZWxlYXNlMzEtbWFpbnQKKzgzMDAwIDQ1ZWQwY2YyYzM4NmE2ZmJjOTdlNjA2ZjQyMDQzNmFjMjkxOWEwZTIgcmVsZWFzZTI2LW1haW50Cis4MzAwMSBjMTYyMDIyMGE0M2QyOGY3NzAwODIzMDlmODQ1ZjRlMjY3NjUyNGY5IHJlbGVhc2UyNy1tYWludAorODMwMDUgY2JkNmY1ZDI0YWY5MDYxZWEyYWJhYWViZTJiMTEyYzA2NDNiZWE5NiBweTNrCis4MzAwNiA5MDU3ZWEwMTQ0NjE3ZjI4NjQxMGVlZDI4NjI2YzZlNTgzNzM1NWViIHB5M2sKKzgzMDA3IDc1YWY0YTI3YTA3MDk3MWEwM2ViNGRiYzM4YmU3YTZiYjQ2YjFhMWQgcmVsZWFzZTI3LW1haW50Cis4MzAwOCBkMGJhM2I4YjBkNDgyYjExZWZmOTZkODhkYzY4MjM1ZDdkYjc2ODg5IHJlbGVhc2UyNi1tYWludAorODMwMDkgYmZkYjVmMDhjMGY4MWZiNTJjOWVkZWM5NWZiZDBhMTU5YWJiYjQ5NCBweTNrCis4MzAxMCAxNWVkZDVmYmJjYWUxZDNiYzE4ZDA5Njc1OTE3M2Y1ODc3Y2QyOTVhIHJlbGVhc2UzMS1tYWludAorODMwMTEgZmVlNDk5NDYyMGZiZjk4NTFhYzEzZDg3MDZmYzFjMWUxY2JlZjE4MCBweTNrCis4MzAxMiBmNGViMWM2YTM0ZWY0MzBhZDBlYmViMmY2YjFlMWU1Y2IyZDZlNmIwIHJlbGVhc2UzMS1tYWludAorODMwMTMgNzA3OWM2MDc4MTRjYWFiNGMwYjE4M2E2NTNjN2JhNTg2MTBkN2M1MCByZWxlYXNlMjctbWFpbnQKKzgzMDE2IDViNDY4Njg3NzY4Y2Q1MThhYjgyYzY3MTA3ZmUzMDY4YjNjYTZlYTMgcHkzaworODMwMTcgNzA5MjVkM2MwMjc5NDdmNjk5MzY5ODIyM2M4NGExNDJiMzg3MTk4NyByZWxlYXNlMzEtbWFpbnQKKzgzMDE4IDJmMWE4MzZmMGZhYzFhMjNmMGRiNTE5ZjdjOGQxOTU3ODhkNzJkMTQgcmVsZWFzZTI3LW1haW50Cis4MzAyNSAyMGU1NmVjY2RmNTIyNjM4NmFlNDFjZWMzMmVkZjA0NjhiYWIyMjk1IHB5M2sKKzgzMDI2IDRiNDBiZjkxZWJlYjMyNmU1OTc4NDgwNzhlMDU0YWI4MDc5ZmEyYTAgcmVsZWFzZTMxLW1haW50Cis4MzAyNyBiYjY4ZTUzNDU0YjZkNjRjNmQzNjBiMzIzMjBmYzgyNTU5ZTZmYmMyIHJlbGVhc2UyNy1tYWludAorODMwMzAgMzY3NTI5ZGMzNGQxMWYxMjUzNGYyYjMwMzVjYjI5NmFlYjVmYjQzZSBweTNrCis4MzAzMSBlNWNkYjEyNzY4Y2I0YWI5YmE5NDBjNzFjZjE0MzkzMWRkMzBkOTZmIHJlbGVhc2UyNy1tYWludAorODMwMzIgN2I1ZDE1MjdjMGNlOGEzMDkwNjU2ODVlZWFlOTNmZWFjODIwZWMwNyByZWxlYXNlMjYtbWFpbnQKKzgzMDMzIDUyMGJmNGQxY2I2NjUxNmI5MTA3NDZiYThiMTY3NzA1NjcyMGI2NjAgcmVsZWFzZTMxLW1haW50Cis4MzAzNSA0NTQ1ZmY1MDYxYjdhN2EyMjQzYmZjNjFjM2E4M2ExNmYwYmExNDdkIHB5M2sKKzgzMDM3IDlkYmJlNmU3YjY2OGMxNTg0NmQ3YzlmYjM1YTZlMDRiMzY2ZGFjNTUgcmVsZWFzZTMxLW1haW50Cis4MzA0NSAxZjRlZDcxYjY4ZTIyNDZlNWRkNjFlZTVhZjJiOGVhMzMxM2JlNmZjIHJlbGVhc2UyNy1tYWludAorODMwNDYgMzA1OTAyYjNjMWEwMDlmYmNkZTE3NDdhNTNhZGVmZDYxNzc1ZmQ1MyBweTNrCis4MzA1MyAyOWEzZWRhODk5OTUzZGMyYjMxNTY4ZDBlYzY3MjU5OTYxNjBlMzUxIHB5M2sKKzgzMDU0IGVlMDFmNTQ4MWM2ODBjOTBjYzNjZDE2ZDYwZjg4OWQ3Yjc5NjJjMTggcmVsZWFzZTMxLW1haW50Cis4MzA1OSAzZTYwOWJmNDYyZmYzMTFjYzMwNmQwOGU0MTY1OGU4OTViYTY3NDYzIHB5M2sKKzgzMDYyIDFjNDQxZTM5ZGJlNDZkODgwZjdmMTdmYTE2MDg0ZWIwNjcwZjAzNjUgcGVwLTAzODQKKzgzMDYzIDg4NTIwZmI0NWJmMmVkNGEzYjc5YTYzZDQ3ZGMwM2YwM2E2NTQ3MzEgcGVwLTAzODQKKzgzMDY1IDU5MTI0OWQ5ODM4M2FjNjM0MWRkYmMxNzYzOTQzOWQ4ODdkNmNmYmUgcHkzaworODMwNjYgMTZlZGQ0ZmJhNmE1YzJkNmJlMDQwZjFhOTZlYTIyYzVjNzhjN2JlMiBweTNrCis4MzA2NyAyYWQ4ZThjZTQ2YzZiOGY4ZTY5ZjM2OWE5MDYzNDk5NDRmZGQ0NjU1IHB5M2sKKzgzMDY5IDVhNjk4YTE1MmYzMDIzNWQwNDk5NDgzNTRkOTFhYTI1NWQ2MDdlYjEgcmVsZWFzZTMxLW1haW50Cis4MzA3MCA3MjFlNzI4YWMwNjBmMGE0MGJkMDFmOWViYzJiNjQ5NmU3YzliNGJlIHJlbGVhc2UyNy1tYWludAorODMwNzEgNTM1Y2FiMWE4YzAwNDk2ZTNjZjU4NzNkMWYzMTMwNDVhNzE2ZWQ2NiByZWxlYXNlMjctbWFpbnQKKzgzMDcyIDM3ZDg0ODkxYzY3MWEyZDE3YjQ1YWRlNDUyNmFmOTQ4NjE5YTZiN2UgcHkzaworODMwNzMgOGVmOTU3YzM4MWZkYTcyNzA5MWVhZDBlZjQzMTIwMTJmNWYxZjk2YyBweTNrCis4MzA3NCBmYWE1ZjAxN2ZlYTVkODlmOTNiNzU5NjI3ZTZhNDJjNjVhYWY3ZGFmIHJlbGVhc2UzMS1tYWludAorODMwNzUgZTYwZmRiMzQ4YmRjNjExMGFiMGVkNzhlMzAxY2UxZDBmODY0OTg0NyBweTNrCis4MzA3NiBjNDgzZjk0OTc4NzJiNjMyMWE5ZDVhYmVjYTgyZmYzOTQ1MGVlMjhmIHJlbGVhc2UzMS1tYWludAorODMwNzcgYmZmZDM5OWI3NjRjNmRkNjdkODM1MzkzODMwMGRhODJhZGViMjRkZiByZWxlYXNlMjctbWFpbnQKKzgzMDc4IDc2ZTA3OTIyNTA3OWM2ZjUzOTBmM2RjZDk0YWZjMmU2ZmIxMGRhYTYgcHkzaworODMwNzkgOTk2ZWU5ZTAzODE2NzA3NWU3ZTEzNWRhMjk1MThhYzllNWJmOTM3ZiByZWxlYXNlMjctbWFpbnQKKzgzMDgwIDNhOTNmZDJlYmI0MGNlYzJiZjZhMWM1NmI5YWY1Y2NiYWI3NTg3YWMgcHkzaworODMwODEgYzBjZjdkNzAwMWUyMzIwYzJiODI3Yjg2NzUwOTI1ZmM0ZDc5OGY5ZSByZWxlYXNlMzEtbWFpbnQKKzgzMDgyIDVjZTNjMDY0NDhhNzhlZjQ2ZjFlZmUyNWFhMjY5MDA3OTYxYjI3ODEgcmVsZWFzZTI3LW1haW50Cis4MzA4MyBiZGMwNjlhMWE3MjFiMjhhZDIxODQ5MjMyYmQ1NDI2ZGRhODcxNTA2IHJlbGVhc2UyNi1tYWludAorODMwODQgMTgzYzU2MjVlMDBiZGY2OGQwNDg3ZjY3NmViNmNiYWQ5MjAzYmEwZCByZWxlYXNlMzEtbWFpbnQKKzgzMDg1IDFjZTg0YzYxZjNiMTM2MDAxMzlhMTIxNmEzYmYwYTk2NDQ5YTM5NDIgcmVsZWFzZTI3LW1haW50Cis4MzA4NiBlMjY3ZWU5NzYwYmQxNGE4YjQyNzBlMTJhZjk4MmM5NDFmYTdhNjdkIHJlbGVhc2UyNi1tYWludAorODMwODggMTAyNzRhN2JjNTM3NzYxZmRiZjgyNjMwZTFhMzY5NDgxODg4YTg2OSBweTNrCis4MzA4OSBlNjM4M2M4MWRhNDFjYTA1NmI1Y2Y2MTdkMTllZGM5YmIzMzI3ZTFkIHB5M2sKKzgzMDkwIGY1MjNiMzk4NTJlNzQ2MGNmNzdkOTUwZTZmYjQ4NmU5NzI4ZGRkNmQgcHkzaworODMwOTEgMDQ4M2I4ZThiYzU5ZjE3Yzc4MWI1NDk3Yjc5OTdhZjgxYzNjYzYxZiBweTNrCis4MzA5MiAyODU1ZDYzNjMxOTI5ZmY1NTc0ZGIzZjE0ZDlhM2FlNDlmOWRiZjk3IHB5M2sKKzgzMDkzIGVjNDJiNzI4MjY0ZGI2Y2Q0ZDY4MGZmMTRhMGU3MTFkODJhOGNjOWEgcmVsZWFzZTMxLW1haW50Cis4MzA5NCAyNzg2ZDYyY2M3OWMzOGE3YTAxODQ4NzE1ODJjZTUxNDQ2NjcwZWE1IHB5M2sKKzgzMDk1IDc2NGVjOWJiZjAxM2ExZjAxMTBhNzNlMDMzYTdjMGU5NjA0OGZhNGEgcHkzaworODMwOTYgODcyM2MxZGQxZDI1YzFhODRiZDlmMmU4Y2QwNjY1OTEzMGU3MjM0NCBweTNrCis4MzA5NyAxZjhmY2JiNjM5NmJjNjllNmM5MjAwYjU5YmYyNzI2YWZkMGEyNmEwIHJlbGVhc2UzMS1tYWludAorODMwOTggOTdiODQxYjNiMGI0N2JjNjkyMmM5MTBjMWMwNjMwNzE0NjgzNjk0MyByZWxlYXNlMjctbWFpbnQKKzgzMDk5IDA2MGRlMDYwZjAzZmYwYjZkOTZiZWE3YTIxZDVmMjEyZWNhOGMwYTIgcHkzaworODMxMDAgNjg2MTljMzcyZWYwMTNmOWRiZThkYTMxZGUzYWNhNDFmMTM3MmFkYyBweTNrCis4MzEwMSA1ODBjNzg5Yjc4NWQ1ZDczOTYwOTcxMWIxMmZhMzc1N2E4MDE3ZTFhIHB5M2sKKzgzMTAyIDM4M2U4NDYzZjU2YzAwMDRiNTVjYTFiYmNlMTEyNjEyOTkzNDk4NjkgcHkzaworODMxMDMgMGYyYjBmMzc3NjQyNDZlYzE0MjgyM2I2NDYyZDJmMDk4Nzc2YmVjYSBweTNrCis4MzEwNCAyMjdkZWUyNzg2MzhhN2Y3OGUyMTUyYmMyYTcwNWE4ZjAyYzMxYjgwIHJlbGVhc2UzMS1tYWludAorODMxMDUgMzJmYWNiZWRmZDBlYmM0ZWEzNjIyODVkNDYyYWJmMmNkZjIzOTQ5ZCByZWxlYXNlMjctbWFpbnQKKzgzMTA2IDQ4MjcxNzk2MDI1N2EwOTBkMTMwYWFjMjhhNmE3NzUxNzYzMWIyMGYgcHkzaworODMxMDcgZTQzNzk1MzQyNWQ3MDU0MzI3Zjc2ZTI4ZjdlYTQ4YThjYzU1YzcwYiBweTNrCis4MzEwOCBhZjkzNDEzMjRkM2Q4MmUxODM4NmE4MGYwYWZjYTc3NDUwZDNiNTljIHB5M2sKKzgzMTA5IDcxZjFjMGJlOGFhNzc2NTQ4ZWMzMzM0Zjg0YWE2MDBjZjNjMzNkYzkgcHkzaworODMxMTAgZGIzN2FmMDdkNGMyNzEyMDg0YTZmYWNhZTM0ZWIzNGNkYWM3NGMxZiByZWxlYXNlMjYtbWFpbnQKKzgzMTExIGY5OTcwMzkxZWVhYjI4YzJhNmYxYzRlMTRlYTc2YmMyMGM1YWE5OTAgcHkzaworODMxMTIgYWZkYjUzMzIzMDY1OWE0MjdhMzZiMmY2NWIzN2JjZTNiMWY4ZjAwOSBweTNrCis4MzExMyBlNzczODg0NTc3YTUzMzRiNzcxYWNhMjBkNTcxNjcwODdlNDZlZjdkIHJlbGVhc2UzMS1tYWludAorODMxMTQgODk5MzFjODM2ODU3NGE4YjQ2NDJlMjdmYzY0OTcwYTkxNGI1NWNiNiByZWxlYXNlMjctbWFpbnQKKzgzMTE1IDRlZDYwYzRiYzhiNjAxNjliYmI0M2E2ZWY1MjA0ZDc2ZTlhM2JmNWIgcHkzaworODMxMTYgOGZhNDI0YWVjZDBkYjhlNmFlNzEwN2VlOWM2NWJlZmZjYzZjMmQ1ZSBweTNrCis4MzExNyBkYzJhN2MzNDRiYWFmZWExMGJhMGQ5MTBiY2YxMTE0ZmU2YTY0ZmZmIHJlbGVhc2UyNy1tYWludAorODMxMTggOTM1NzgwYzYyYzU5NTc3MDA5ZGFkMDBhNWFmYTFlNzlmOGE2YjUxZCByZWxlYXNlMzEtbWFpbnQKKzgzMTE5IGVkMzI4ZTY3MmFjZTFhM2Q4YTc4OThiYTJjNjI1MGE3Yzk2MDliMzYgcmVsZWFzZTI2LW1haW50Cis4MzEyMCA1YWE3MjY0MTRmOGYwOGQ0NjYwNWE1YzRjY2EwOWY5M2UyYzg3Yjk1IHB5M2sKKzgzMTIxIGIwYWY2M2FhMDllYWNhYmU1NjY5OTRiN2M0YzM1MGRiNDRlMzcxYTkgcmVsZWFzZTMxLW1haW50Cis4MzEyMiA4MDcyZGZkOTdlMWRkZjM3ZmQwY2RmYTk5OTk3ZDM4MThkMDc5MDhiIHJlbGVhc2UyNy1tYWludAorODMxMjMgYzM4NjZjZDkxYWUwMGU1ZGRjMjNmZWNhNzI4MTNhMTkwMTY1MmIxNSByZWxlYXNlMjctbWFpbnQKKzgzMTI0IGZmNjQ0OTY0MzE0MmUyNGNkMmQwYzUwZjM1ZTZhNjAxYzE3OGM5NDEgcmVsZWFzZTI3LW1haW50Cis4MzEyNSAzM2U0YTQ3YTZhZDEwZGI1NTMzMDNjYzJiMzM4ZDE3MTg0OThlODg0IHB5M2sKKzgzMTI2IGQ4OTZmM2Y5NGE0ZGYyMjg4ZjU2ZTYwNzUxNWUwMzNkZDJhNjkxZDcgcmVsZWFzZTI2LW1haW50Cis4MzEyNyA0Y2NiYzI5YzdmMTEzMjlhNzA5NzdkYmJkNWFiMTM3NmI5YWMyM2I2IHB5M2sKKzgzMTI4IDNmMjQ1YmU1OTMzOWJmZmIxYzhkMTZjMWJjOWM0Yjg0ZjQzNjYxMDYgcmVsZWFzZTI2LW1haW50Cis4MzEzMyBhZDVmMjc5M2Y3YWRmMDhmNjVlODgwNTFlMWI1MmFmMDllNGY5NDcwIHB5M2sKKzgzMTM0IGY4MTI2MzY3YTJkZWRkZGEyNmMzNjNlNDdmZTUzYmVmMDlkMjNmZmMgcmVsZWFzZTMxLW1haW50Cis4MzEzNSAzZTY1OTI1ODFkMGY1YTgyMjY0NTY2YmY1ZjViMGNmMWJiODc4MGUzIHJlbGVhc2UyNy1tYWludAorODMxMzYgNTM0M2VhN2MxOTg2MzQ5Yjk3ZDZlZTdkZDZlZjA2MzgwZWRjYmQ3ZCByZWxlYXNlMjYtbWFpbnQKKzgzMTM5IGExNmI1YmJkZjE5YjQyODJhNDU1NGQzOGQ2ZDhjMDM2YTQzYzUxMGQgcHkzaworODMxNDAgOWVjYmE4YTEwMTI1NTFhNjRmOTk1ZTdhZWZlNTg2ODU2NGUwZjRkYSBweTNrCis4MzE0MSAyYzU2ZjRhYjM2ZjI2YTRiM2M4NTA0MWNjNmYxNmE4NTdkZTJkZWExIHB5M2sKKzgzMTQyIDJkZDI5OWU3YTZkYmQzNzE1OTk0MDZlOWY0ZGM0OTA2N2NjMmZlNDQgcmVsZWFzZTI3LW1haW50Cis4MzE0MyBlZjliMzlkZjU5MzY4MDYyYjQ3NzcxZmUzZmIwMDlkMjYzMWJmZGJmIHJlbGVhc2UzMS1tYWludAorODMxNDQgYjE5ZjhhNDkyOWQ1YjNiOGI1NDk2ZmY4Mzg1MTljMmFhMjQ0Mjg2YSByZWxlYXNlMzEtbWFpbnQKKzgzMTQ1IGZkYjBjZmRjY2Y4NTgyNWYyODBhODM1ZTM2M2M5NjAwODQ1ZjhhNDkgcmVsZWFzZTI3LW1haW50Cis4MzE0NiBkODZjMTg1NjhlODk3NTc0YTVhMTJmZTBiMjgwZjYxZDZlZGM1MzEyIHJlbGVhc2UzMS1tYWludAorODMxNDcgZDMzZWJiM2VmMGIxMDdkODc1YTI5NzY4MzNlNGExYWJiMjhhYzhhZiByZWxlYXNlMjYtbWFpbnQKKzgzMTQ4IDkwNGIzYTE2MTZmMzdjMzgyNTlkODM4ODNmMzA1N2RjZWEwMmM5NjMgcmVsZWFzZTMxLW1haW50Cis4MzE0OSA5ZTMwM2Q2NzE1Y2U4OWFhNjZjNTM5MDc5ZGFjYjc5ODI5OWIyMzg0IHB5M2sKKzgzMTUwIDllY2JkZWZjOTg0OWFiOTA5YTAzYmM2MmJlOWRlNWVmYjRiYjYzOWUgcHkzaworODMxNTEgNTEzZTQ5OGIyMjNjMmE2ZDA3MWJlMjlhNzkzZjM2YWVlMjIxMmVjMCBweTNrCis4MzE1MiAxMGNlMDQxNDAwOTY4ODRjMjUxYTI0MTIwYmE1MmEzZmQyYTU0ZmU2IHB5M2sKKzgzMTUzIGZlOGEyY2U5MTRlYThjZGFhYzI3YTU4ZTllZGM5OWIwM2VhZTM2ZmMgcmVsZWFzZTI3LW1haW50Cis4MzE1NCBmZGI3MWQ2YzE4MjI0ZjgxMGUyYzhmYmM0Yzg3Y2YzYWZiNjExZTYzIHB5M2sKKzgzMTU1IGVlY2MwMThhYWMzZWRkZDdiZmM4MDk1NzJmNGU1ODhlZWQ3YmRmNGUgcmVsZWFzZTI3LW1haW50Cis4MzE1NiA1NWY0NWU5MDY3NGQ2YzA1NWVhY2ZmZDhiNzQ0YjgxNjJmMmZiYTFlIHB5M2sKKzgzMTU3IGY2YjkyODA4YjliMzQzNTZlNDMyM2FkYzgwNTBhNWRkOGU2YWM3NTkgcHkzaworODMxNTggNzRiMTZmNDM5ZTA3YmEwNDFhZWViNDNiOGRhMDIwMTc1MzIwMDVkYyByZWxlYXNlMjctbWFpbnQKKzgzMTU5IDRkM2RlMTZkMDJjYzI4OGVmOGNiZDhmNGRmOTRkZGUzOWJmYTlhOGEgcmVsZWFzZTMxLW1haW50Cis4MzE2MCBjM2JlMjBjMzkwYTI3MDk4YjAyYmUzOGNiMTkzNDE0ZDQ5YThlMjZmIHB5M2sKKzgzMTYxIDJjZWQxY2NkMzVlYTQwZWM5OGExNTU2ZTRlZWYwMjE1MWE3MTE1ZGMgcHkzaworODMxNjIgNmE5OWQ5MWJlMGY4YmNiODk4MmIxOWRmMWI1NTNjODY3MjU3YjMxNiBweTNrCis4MzE2MyA3YTQxZTBjNDg4NTUwYzMwM2ZmNjU0MGUxOGM4NDAwMGI4ZTI3NjBmIHB5M2sKKzgzMTY0IGNjYjIxOTljMTZiYTBlZTIxMzRiZGFlMDliNzY2NGUzYjdjMmE0YjEgcmVsZWFzZTI3LW1haW50Cis4MzE2NiBmOWEwMDdhZmQ0MGYzNzJmOGRlYWFkZWI1MjhjMmM5NTJjZjM4MzFmIHB5M2sKKzgzMTY4IDM1YzE0NTYyMzQ4MDJlMTE4MWVjODRhNDczNDBmOGM1YjVkMjdhYzYgcHkzaworODMxNjkgM2U5YjkyY2ZjYWNjNTFmN2I0NDRhMjk1ZTQ4NDY2NTBiMjU0NjAyYiBweTNrCis4MzE3MCAwOTcwNTc3MDA5ZTA1NzE3ZDBjNWMwMzZiNzhlOGM3YjAxM2M1YmU3IHB5M2sKKzgzMTcxIGFkZWZkNWMwMjM1ZGZiMzQxODI5ODdlYTJlOTJmYjRmNmM1NTE3M2IgcHkzaworODMxNzMgYmMwMzQ3NmNlOTAxOWIwM2EyNTczNDViNTdiNGU2YWZmMzRmMDY3YSBweTNrCis4MzE3NCAwYjg0MDk0YjE1MTU4Y2U2NDNhZDQzOTA2YmRkMzQzYmE5OGU5NDY0IHJlbGVhc2UyNy1tYWludAorODMxNzUgMzM1NTM1NmYxYzc0ZDQ0OGJhNWU1MDM2MjZhZTI5NmNkZGI0YTIxYyByZWxlYXNlMjctbWFpbnQKKzgzMTc2IDU1MjI0MzMxNTBlMWQ5OGNiMTVlMGE5YWQ5OTc3MjIzMDVjNWYyZmYgcmVsZWFzZTI3LW1haW50Cis4MzE3NyBmOWI4NjBlZjI0YmFkOTIxMjk4NjUwNDFhMTgwY2YzNjFiY2UxNjY1IHB5M2sKKzgzMTc4IGUxYzNhZGZhNTc0NGRmNzMyZGJmNTE0NDUyZGJjZmI5YjkzZTJiZmEgcmVsZWFzZTMxLW1haW50Cis4MzE3OSBkZmUwMDk1ZmNhYjBmNmY1YzhjYzdjZDc0NzFhNzI1ZDE5NzdhOTZmIHJlbGVhc2UyNy1tYWludAorODMxODEgMmRmNzMzOTUxYmFiNDdjMzU3NzAxNTAxMmY3MjBjMWZjMTU1Yzc3MSBweTNrCis4MzE4MiBmMjE0YWQwOWMzODQyZDEwNTQ0NjAyNjE5YmRiZTg5M2I1YThiNzcyIHB5M2sKKzgzMTgzIGUyZDYyYjVhODczMDExZTZkOWU2ZmExZmY3ZmIwOWQyM2FhNGU1MDAgcHkzaworODMxODQgZTkxOGFmZDM1MDg2ODg0MmQ5NWRhMDI5ZDBiODcyNDMzZTlhYmQ2NyBweTNrCis4MzE4NSBmZDliNDIxY2RiYWY1NWM1NGM3YTE1NGM3ZDBmOTE4Zjk3ZjY5ODExIHJlbGVhc2UzMS1tYWludAorODMxODYgNWI1YmNmNGI5ZmIwMjFhNmUwMTIxZGU0N2IzODU1ZmYwODQ0MzVkYSBweTNrCis4MzE4NyBjM2Y1ODMzZGI4NDMxY2RlZTNhNWIxMjQzN2U2OWU0Yzk3YzViZmJhIHJlbGVhc2UyNy1tYWludAorODMxODggNjg1ZDM5MThmMmE1ZTFiYzk0NDE3YmZiNTk5N2JiNWQyNmYzYmY1ZCBweTNrCis4MzE4OSBiNWYzZjc0MjMzMTg2NzE5NGQwMDhiZDA0YjUxZDNjYzE5ZWQ5Mjk5IHJlbGVhc2UzMS1tYWludAorODMxOTAgMWNkNDU0ZGE0OTI4YjNlY2E2NTI0ZmY3NTNhYTE3NDI5YzRkODJhZSByZWxlYXNlMjctbWFpbnQKKzgzMTkxIDgwMzI1MGY1YzRjMjY4ZjQ0M2JlMjdhY2YzNDVhNTIyMWU4YWM0N2UgcHkzaworODMxOTIgMTZmNWNmYjE2YzZhY2MyOTZjNGFlMjQ3NTUwZWEzNTdjMzgxNmFlNiByZWxlYXNlMjctbWFpbnQKKzgzMTkzIDQzZGMxMjk4OTJhZGRiYTBhZTAxOGM3MmJkNzFkOWY0ZThiYmFhOTMgcmVsZWFzZTMxLW1haW50Cis4MzE5NCBlNGFiMGZiYmJjOTQ2MGVjYjA3MGQ1YjNmNzY5YTc3YWMzYzI5ZjE3IHJlbGVhc2UyNi1tYWludAorODMxOTUgNGE3YjM5NWVkYjY5ZDc2ZGRjMTI3OGNmMTgzZGIyOWMyOWE5Y2RkYSBweTNrCis4MzE5NiA1ZWRjZTE0YjYyODc3MzI2ZjAwYWZkZmNhNDM0YmQyNDk1MWNhYWZmIHB5M2sKKzgzMTk3IGFjN2ViNmVhZWY2ODg3N2NmODIwYWVmZWFmNTgzNmU4MTNjMjNjMTYgcHkzaworODMxOTggNzRmZDdlODBiMWJlNDIzNjg4YTVlNjY0ZTNhMzA4YmQxZGVmMDQ4OCByZWxlYXNlMjctbWFpbnQKKzgzMTk5IDVkNDVjNjUxMzQ4YmUzYjhmMmY1OWJmNjIxOGE2ZjU2MmJjNGM0OGYgcmVsZWFzZTI2LW1haW50Cis4MzIwMCAzMTVjMmI1MjRjNTllOTU5NjExNGM0NWQyZmYwN2Y2OGI2ODlhMmVlIHJlbGVhc2UyNi1tYWludAorODMyMDEgMzA2ODMzZWYxMTlkMWNiNWU5Y2FiNTE1YTkwMTg5NTlkZWNkNjBiOCBweTNrCis4MzIwMiBiYjllZWY4ZDFhYzZhNGZjNThkM2Y1YWQ5NDg1ZWUyYTZlMjJkZGU4IHB5M2sKKzgzMjA0IDhlOGNiMTY4YTA4OWY3NDZhYTE3MDAwNGQ0YjNmOTRkZGI2OGZjZjAgcmVsZWFzZTI3LW1haW50Cis4MzIwNSBlMGJjYjk3MDM0NDJkYWQ4ODRlNDNkOTcxZTVjMzM3ODg0ZWI1YTkwIHJlbGVhc2UyNy1tYWludAorODMyMDYgNmQzMWI2MDM3MmM0ODM3Y2ZmMWM2ZDIyNjE0MTY2OGYyZDkyODZkZiByZWxlYXNlMjctbWFpbnQKKzgzMjA3IDE3NDNkZmVlYjliMDNkNmI3YjU5ODRhM2EwNDk3ZDExOTRlOWUyYWQgcmVsZWFzZTI3LW1haW50Cis4MzIwOCBlYTNiNTM1MTM2ZTdmODUzMjllNGNmZGU1MTM4NzU0OGJhMDE4NDkwIHJlbGVhc2UyNy1tYWludAorODMyMDkgOWJjYmMzNDM3NzhmM2NkYmI5MjgwZDJiZDBlYjhhMzI0ZTNjMmZlNSBweTNrCis4MzIxMCAzMTE5YzRkNzI3NmIxNWVkZDYxODk5ZjhkOGVhYTIxMDIyM2EzMzg1IHJlbGVhc2UzMS1tYWludAorODMyMTEgMGJiNDdjNTFlOTMzZjg2OGVlM2I0YWY4MDY2M2FiOTdkNTRmNDA3MyByZWxlYXNlMjctbWFpbnQKKzgzMjEyIGFhMTlhN2NjMWJmMzUyYmJkZTg2M2Y5YWUxYmM2YWE0NjA1Nzg2YmQgcHkzaworODMyMTMgNzllMzc2ODI0YjM4OGE3NmIyZDcyZDM0NjFiNTExNDlhNjUzZDhhZiBweTNrCis4MzIxNCAwMTMyZTRlZTllN2YyNDFjMDMwYzU2NWJhYTRlNjliYTU5OTYzNGYyIHB5M2sKKzgzMjE1IGQ1NWQyMWMzOTZjNWNkMjE5YmMyMzI0NTlkN2UxZmM1YjMwNTBmZDcgcHkzaworODMyMTYgYmU2ZDAxNGRmOTU2MGE5ZGU1ZGU3NGQ5ZWI0YWQ3NmNhNTM4ZGY3ZCBweTNrCis4MzIxNyA1MTQ2NmQ2NzcyMmUwNjEwMTFiZDEyNjJiMTRkYWRkMTI4NWI5MzAyIHB5M2sKKzgzMjE4IDNkOTk2OTY2ODlmOWIyYWQ5MWJlYjJkMDQ1MmJkNjcxYWQ2Y2QwZTAgcHkzaworODMyMTkgZTJlMzJhODY5ODEwZGY4ZjdjMWFmMTU2ZTkwY2U4MGVkNmUyNjg1NiBweTNrCis4MzIyMCBlNWEyZjUwZmVlNjRlMTIzM2E3MjhkZTY1N2FkZGNmYTg4NDM3ZjNhIHB5M2sKKzgzMjIxIDA3MTYwOTA2MGYwNTVhZjkzNjFhNWVhMzcyMTdhZjNkNmJhZWRkNTIgcmVsZWFzZTI3LW1haW50Cis4MzIyMiA1MmJjMTk0MDVjMGYzMzIzYTNkNWI1MjAwYjkyZTBmMDMzNGZjMjM3IHB5M2sKKzgzMjIzIDA1NGYzMjc5ZTNjY2U5NTYwYjM5NTY0NTFlMDJhYTViMzI4ODMzNjggcHkzaworODMyMjQgZWUzN2JjYjhmMDNlNzIyZWVmOWY3ZWU4OTg0N2Q0NGM0MTc1MGMxZCBweTNrCis4MzIyNSAwNTY0MzYwNjUyOTBmNzJiNWRmN2QzMGI3MGYzZjdlMGZjYTAyYmJmIHJlbGVhc2UzMS1tYWludAorODMyMjYgYTI3NDY4YWY1ZWMyZGI1YmE2NDM0ZDljNzVmNDZiNTU1NzRiMGI0NyBweTNrCis4MzIyNyAwNTQwZTY3ZDc5MjQxZjc5MjU5ZmNkYTEzZDg4ZTRlMmY0OTllMDNkIHB5M2sKKzgzMjI5IGY2ZDNiZjRmYWE5YTdiNTg1N2Q4M2QzYjE1ZjBlZWRlMjFhNDA3MGUgcHkzaworODMyMzAgZjIwZmY5OWEyNDI3NWYyZGZkMzAyNWExZDIzOTVlMjE5ZWJmZjVlYiBweTNrCis4MzIzMSA4MzQ3MTVmYWYxNjVhNTAwYmU5NjFlNGMyMDNhYzRkY2Y5OWY2MTE1IHB5M2sKKzgzMjMyIGM1NWZhZjQ3NDU5ZTJlYjc3M2U3NGNmM2IzYmZmMGM0OThmNjM0OTYgcHkzaworODMyMzQgMTI1MGIwNjhmMzE3MDFkOWFhY2EyYzdmM2VjYThhNmUyNjMxNjYzYiBweTNrCis4MzIzNSA5NGIzOTAzZGUxMDc2YjJiMzI1Njc1ZjU5OWQ1MTg2ZTJlNDM3YjQ4IHB5M2sKKzgzMjM2IDkxY2JiNTVlMjBiZTU0ZmEyNTliZGRkYmNmOTQ0ZDdjY2U2NDg0MGMgcHkzaworODMyMzcgMTYxODliN2RhM2I2MmY0NmY3ZTZiNmE2ZjUyOGZmZGEzZjRlMjAwMiBweTNrCis4MzIzOCBmNDM1YjdiOTg2OTA5N2M3ZGQzNjdiZjAwNmYwZTIyM2VkMmI0Y2JjIHB5M2sKKzgzMjM5IDI5YWI1MzZjZmVmNjdmMjlkNjhhMTVkMTE3ZGNmN2UwZGM3NDFkZmUgcHkzaworODMyNDAgOTAyMTMxYjMxOTIyN2Q4MThhN2UyODRlMTcxNDU1ZTk1MTY3NDA0YyByZWxlYXNlMzEtbWFpbnQKKzgzMjQxIGI3NWNhMjVhMTQwYmFjYzdlZmJlNGIzYzllYjEwNmEzNTBkNzlkZTIgcmVsZWFzZTI3LW1haW50Cis4MzI0MiA4OWQ3OGI2NjdkMDdiZTU0MTIwNTZiMmEwNDY2MGE0ZGFkMTljNDY2IHJlbGVhc2UyNi1tYWludAorODMyNDMgNGFlMGUxM2U5NDY2M2ViNzIzZWRlZmVmODE1ZGVhOTM5ZGExNDVhZSBpbXBvcnRfdW5pY29kZQorODMyNDQgOTcwN2M4NTUxNDhmNjhlNGRkZTEyNmJjMjE1NjEzODIyNDhhMmE1NiBpbXBvcnRfdW5pY29kZQorODMyNDUgOGE3OWNhYTRmNDczMjcxZGVkN2JkMDJjYjdkYTFkN2FkY2Q3MDA1ZCBpbXBvcnRfdW5pY29kZQorODMyNDYgMjdjNmE5NDg4OTQ4ZmRkNTc3N2MzNjZmMjNhMGRkZmFkZmYyOTJjNCBpbXBvcnRfdW5pY29kZQorODMyNDcgYTE1ZTEwZDFjZGMwZGZmNzhlMDg3NDc1NTczZjdkNDc1OWU3N2ZlNyBpbXBvcnRfdW5pY29kZQorODMyNDggOWE3NGM3NWRkODI1MjVmYjFhNDNmZmUwNWQwYWMzYzY0NGNjNjNhOSBpbXBvcnRfdW5pY29kZQorODMyNDkgZWQwOTAxMTZiNzM0ZjdjMzdlMjA2YjlhYzg1NmRlYWY2MjY4NzE5YyBpbXBvcnRfdW5pY29kZQorODMyNTAgNjIxOTk1OTEwOTM5MmUwZTU5NTMxM2ZmMDJlMjEwYjNkMDAxOGUzZiBpbXBvcnRfdW5pY29kZQorODMyNTEgMDk4MzU2ZjVjODQ2MWQzNGRiZTE3YTk0MWEyYzcxNGIwMmViZWY1OCByZWxlYXNlMjctbWFpbnQKKzgzMjUyIDMyNmIxNWQ4YzM0MTM2NTg3NTM5NGE5N2VkOGM5NjE2ODUyMDgwYjYgaW1wb3J0X3VuaWNvZGUKKzgzMjUzIGRlM2ZmZjQyNzJjODRiOGY0MDI0Y2FjNWY5ZTczMzk5ZDVkOWQxMzggaW1wb3J0X3VuaWNvZGUKKzgzMjU0IDgwN2JlZWZhZDUxYzRiZTU2N2QzYWNmZWJkNGM1M2VlN2M1OGU5YTcgaW1wb3J0X3VuaWNvZGUKKzgzMjU1IDA2MzM4MTU3YjRmNzA4M2UwYjhkZDM3NDcwNTY0ZGI0ZmI0MWUzM2MgaW1wb3J0X3VuaWNvZGUKKzgzMjU2IDA0ZTQ5MjVlNWE4Y2Q2Y2E5MTBkMzFhODIyODQwZDU2ZWNmZWU2NWIgaW1wb3J0X3VuaWNvZGUKKzgzMjU3IGRjNWRhMDIxMzZlOTg5ODJjMDJjOGU1MGI1NjZjNWQzNjc3NmE4ZjEgaW1wb3J0X3VuaWNvZGUKKzgzMjU4IGE0ZTBiN2FmNGJhNDRiMDIwNTdlZDg0MTAzMDA2ZGFhYWM1N2VmYTIgaW1wb3J0X3VuaWNvZGUKKzgzMjU5IGE5NjZjM2Q0M2E3ZWFhNjExMjQwZTlmOGM1MTZjODE2YjUyZjQyZGYgcHkzaworODMyNjAgY2IxOGJjOGRkNDY5M2E4NGNmZjRkYTllN2ZjOGI4MTMzNmZjNzVlYiBweTNrCis4MzI2MSAwYTE3NDhlMTNkZTk2ZGM1NTdjNWVhZGMwMTczMjg0NDNlMWMzNTk5IHB5M2sKKzgzMjYyIDBmNmExZTQ3NmQzMTBjYWVmMDQzMDI1YTM0OGU2ZWY4ODczZTJhMzcgcHkzaworODMyNjMgNDg1NTdkYjBlZWVhMThmODkyNTM3MWQ1YTQ1NDUyMDc0NmIzMTU1ZiBweTNrCis4MzI2NCAyNDk3NWFhZDQyNjgwOWE4YjA0YzJjNzdlY2VjNTIyMGQ0ZTZhYmY5IHB5M2sKKzgzMjY1IDcxMTFiNzk3ZWMxMTVmYzM0YTRjZmJlOWQ1ZGRmODI0MTUwYjk0YmYgcHkzaworODMyNjYgYzViZmUxODYwYTVkODBlMGRlZGY3ZjIzYzM3Yjc4NzkwMjc5ZTU5OCBweTNrCis4MzI2NyAyOTQxMjNhZWQ0NmI2NTEwZGUzZTY4OTdmNTFjN2VlMzRhMzZkMWZlIHJlbGVhc2UyNy1tYWludAorODMyNjggOTcwNGI5ZDgxMGU1YjcxZWI3NTk0NjhjZThhODk2MWNlNDQzMzhmYyBweTNrCis4MzI2OSA4NDA2MzNkMzcyYmNkYWVhZWIyZDgyYTBjZTQ4MDk1NGFlOWE3MzJjIHB5M2sKKzgzMjcwIGVmZDk3YTAzOTM3NDlhNWY1ZTg4NmM1ZTdkZDViYTczNWUyMmMzODYgcHkzaworODMyNzEgMDM3NmU2NDM1ZjU3YzEyZDQ1ZTE2ODA1M2JiNjExMmRmYzMxNDhiZCBweTNrCis4MzI3MiAxYzVmNjBmMzgxYjI2NGFjZDZmNzE0NGYwNzc2MzY4N2NkNTMxYjA0IHB5M2sKKzgzMjc0IGFkOThiNTI1YjU4N2M2NmFkNmFmYmU2MjIxMjZjYjQ2ZGFjMjA4ZWQgcHkzaworODMyNzUgNDBkNmE3YzE1ODM2YTJmMTY3NDJhMGU0ZjViNjVlOWEyYzJlNjg3NCBweTNrCis4MzI3NiBhMWUyYWY2NTM3ZGZmZjIyNDFkMDQzNGM2YTY0NjUzYmFkZGZlMDdlIHJlbGVhc2UyNy1tYWludAorODMyNzcgNDM4MGZiMjI2YjExMjcwNWJmNWVkNTNkMzE2Y2Y3MjhhZTA3NzQwOSBweTNrCis4MzI3OCA1NzliMzM5YWIxNWY1NjZiYjVlNDRmZmJhMDBkNTE4OTkzZjY5ZjllIHJlbGVhc2UzMS1tYWludAorODMyNzkgMjk4Yzk2OWY1NjViOTY1YmY3YzFiYjFkOWFiMDczNjY4NWFjYzY2NyByZWxlYXNlMjctbWFpbnQKKzgzMjgxIGE3Y2MwOGI0YmEyNjlkOWE3NGE4YTQ4YmExY2I3ZGRjMjgzMDE5NzAgcHkzaworODMyODIgYWJiYjQ5YWQxZmMzMzMwNjllMjQyNTU4ZWUyYWJhZGIwZGM4MmQzMSByZWxlYXNlMjctbWFpbnQKKzgzMjgzIDM4MTE4MGE4ZjQ0NzEyYmMxMzQ0MDVkNjFlZDI0MWRiMGJmNzY2OTcgcHkzaworODMyODQgOTM0YjA5MGRmZWM4MGVkNGI3Y2U0YjZiMGE3MTc0ZjhmYWZjYzFhNCBweTNrCis4MzI4NSBmZTRiYjdjYjFmZTg3YjJjMTAyZmZmMWIyN2RmZWNiNTIwMjdhMzUwIHB5M2sKKzgzMjg2IDJjOWE4ZTYxMTJiMzk5MjAxMTY4NTQxYmNlZWE1NWRhNWU1NzZiYWIgcHkzaworODMyODcgNDZkMmVjNzhlZjc5NTc2Y2E1YjljNjM1NzRjODEzYjU1OTI5MDg2NCBweTNrCis4MzI4OCBiY2Y5M2UzNzY2ZThlNDAzYmUzMGExODc1NzUwN2Q5NWJmOTk5NzJiIHB5M2sKKzgzMjg5IDc4YTNkYjJmN2UwZjE3MTBlZTkxYjkyYmJhNjJhNWMxY2ZhYjA1NjUgcHkzaworODMyOTAgMjBjYzkzMTc5Njk1ODZkOWZkYmQwMTA0ODZmZDVhYzQ2OTNmYWIwNSBpbXBvcnRfdW5pY29kZQorODMyOTEgYzNiNjczYjk0NjEyM2Y5MzUzMmEwMmI5NTQwMDdjMTgzMzlhZDkxYSBweTNrCis4MzI5MiBiODAzY2MyZDZhNWNiZjc3ZDFhNGFjN2MwN2Q3MGJiMjI0ZjQ5NjU0IHB5M2sKKzgzMjkzIDY3MGQ0Y2JmMTQ2NDUyMmFiNTQwNmVmYzE2MTA3MDNkNzAwN2M5ZTIgcHkzaworODMyOTQgNzg3MWFhZjExMWEyNWQyOTkwMTY5NGMxYjg1YjdlZDNmMjYxN2NjZiBweTNrCis4MzI5NSAxMDAyYzNkYzkwZDFhNWE3YjI5MjA3NjVkNDdhZjI2MjhkMWUzZTJiIGltcG9ydF91bmljb2RlCis4MzI5NiA0NjcwMTk1ODhmY2M3YjIzNmRkM2VmZjk2ZGQ3OTI5ZGIxMjYyYTc2IHB5M2sKKzgzMjk3IDA4Yjk0M2ExYTkzNDRkM2M4MGMwNjI0MzQwMzBiNWYzZWRlODlkM2QgaW1wb3J0X3VuaWNvZGUKKzgzMjk4IGM3ZGM1YzdiN2FmMTk1Zjc0YzY2NmE2MDYwNDA3MjQ0YTllYTViN2MgaW1wb3J0X3VuaWNvZGUKKzgzMjk5IDNlNzQ4NzNmMjFlYTU5YTNiZTIzNzQ5MmUyNTcxYWFjYzAzOTRiY2YgaW1wb3J0X3VuaWNvZGUKKzgzMzAwIDhjZjZkMjY0NDk3NTdmMjRlNzlkYTViYjRkY2YwMjQ5YjBjNjJkZjAgaW1wb3J0X3VuaWNvZGUKKzgzMzAxIDY1ZWUwYmM5NzQ3NWYxMzJkNWY2NzFhNmU0MDk0NWUwOWE0Nzk5YTYgaW1wb3J0X3VuaWNvZGUKKzgzMzAyIGQ2ZWJlZGNkNmVjNGU4ZTU0ODVmMDFkYTY2YjhkNzUwNzgwMzM3ZGQgaW1wb3J0X3VuaWNvZGUKKzgzMzAzIDUxMDVjMTJjMzFiMjdkOWIyODc5MjI4NDkyZDU0NTYyZjQxZWZjNzMgaW1wb3J0X3VuaWNvZGUKKzgzMzA0IDg4MmZkODU1ZjEwMmI0MzkyZWYxM2Q5ZjQwZjY4ODMxOTUwNGU1YTAgaW1wb3J0X3VuaWNvZGUKKzgzMzA1IDg4YWRiNjRhN2FmZDliZTdiZTJjNmMxMjc0NGUwMTI1MDIwMTc0YzkgaW1wb3J0X3VuaWNvZGUKKzgzMzA2IDAwNDk2MTgwMWQxODY1NjI2NmFjNWM1N2JlMjMwNzMxNDY1OWIxY2IgcmVsZWFzZTI3LW1haW50Cis4MzMwNyA4NDVjZWYyZWIxZDdjN2U3MzFjNjUyYjUxOTFmOWRkMjgxZGExN2U3IHB5M2sKKzgzMzA4IDdjNGE3NzYwNDAyNzczMmY2MDA0NzZmODM1ZjRlMmFiNjcxNTQ4NGMgcHkzaworODMzMTIgNjYxZTRiZjg1YzU4ODVkMmRjMDIwYjZhMDhhYjc0YzdmMjViMzExYyByZWxlYXNlMzEtbWFpbnQKKzgzMzEzIGMyZWEwNTE2MWM5MzA5N2M0MjBmNGQ1ZDA4YjI4NGE0YmNjMmQzZDEgcHkzaworODMzMTQgNTg5NDU5MGU5YzhkNWZhYmJiYjcwYjJhMDY2NDkyN2EzMjU0ZDhjOSByZWxlYXNlMjYtbWFpbnQKKzgzMzE1IGMzYjEzNjI2NjUzODhhYzllMDA4ZDlkZDMyNjI4NzBkZDk4NTJiZDYgcHkzaworODMzMTYgMzJkOTRmMzE2ZGE5ODQ3ZmZlMjZiNGNiMjI3NDNjYzI1M2YyM2M0NSBweTNrCis4MzMxNyA3YWE5NzU3NzcyMDIzZGIxNDQ2NDNjZGRkNDg2ZmJiYjQ1NTAzZTEzIHB5M2sKKzgzMzE4IDZiMjNhYTMwMDAzMjFkNzljZDE5OWFkNmU3YzE4YTc5ZTRiNzAzNmEgcHkzaworODMzMTkgZTE3YjE2MDBmNDQwNmI2ZWUxOWYwMmVjZGNjMDhmNGFiODhhMjc2ZCBweTNrCis4MzMyMCA1NTBiMzhjYWY1YzFmYzdiZmFhMDAwMWJlNjc0OGQzOWE0ZDg5MDQwIHB5M2sKKzgzMzIxIDhiNDI2OTNlOTViOGMzNzgzYjUyOWFiYjk4YjNjNWYxYzg3N2QxZDkgcHkzaworODMzMjIgZjU3NGEwNzE4ODZkZDdjNGFjNGViODRkNmYyZTNlYjRhYmU5N2QyMCBweTNrCis4MzMyMyA3OTAzNTNiZWNmOGNlY2I5YzU1MTJiNGU2YTEyNzBmODczYzY3NTgyIHB5M2sKKzgzMzI0IDU3ZWEwMDUxNmVkZWE5NTYxOTMxNDk0YTliMjA0MjQwZjVmMmYzMTcgcHkzaworODMzMjUgNmY4ZGVmZDAxN2Q3MzZlNzA1MzJhMWUwNWU1YjFiOWVhMGE1NGQzOSBweTNrCis4MzMyNiA2ZTEzZWFkMzg5NTYwNDg4MTEyZTZjYjFhYTNkZTA1YTM4MDJjY2YwIHB5M2sKKzgzMzI3IGE0NWIzOGRjZGYxNmNhMDA2N2RhZjI5Njg4MmZkMjJmYWQxYzJhMTYgcHkzaworODMzMjggNzQ1NTFjMGI1MTNiNmM5ODMyMDhiYmJiYWVjM2EyOTExYTZiYWJkZCBweTNrCis4MzMyOSBmYjZhMTM4MDdhYzk1YWUzMWFiNTU5OTBlNWUwNTE5M2VkZWM1ZDJlIHB5M2sKKzgzMzMwIGZjODE1ZjNiMjc4MTI3NGM4ZjhmOWFmMTU0YTkxNGI4OWU4OTk2MTYgcmVsZWFzZTMxLW1haW50Cis4MzMzMiAxYjUwZTYyN2M2M2FjZTVmMDIzODhkYTAyOWIxMDQ2ZDc2Y2E0ODYwIGltcG9ydF91bmljb2RlCis4MzMzMyAxOWZmMzYwMzI3ZTc4MzgyMWFiZWExZjk2OGFkZTAxMmJhNjNlYWQ1IGltcG9ydF91bmljb2RlCis4MzMzNSAwNDNjYWFjNmM4NzU5MzEzYThiZjM3NGQyNmZiMjg0MjBmNzc4NmViIHB5M2sKKzgzMzM2IDI5ZTYwY2U2M2FlNWJlMDZlMWU3ZTNhODYwZDgxMzljOTRhYWNhMTYgcHkzaworODMzMzcgZTQ4NmQxOWYyYjBiODFjM2I5MDYyOWRlNDU0OTk5OGU0NzU0MzUxYSBweTNrCis4MzMzOCA4YTgwMWEzYWNhMzQ5OWExYWEwYzI0MTI4NDE5ZDkzMGFkYzhlOWIyIHB5M2sKKzgzMzM5IDQzZDE0YmJkNmViMTE3ODQyYjdiZjFmNjczYjc0Y2RjZDlmMmMyOTkgcHkzaworODMzNDAgZGVkNThlNDQ5ZGEzMzJlNmY1NjFmM2FiNDZjZTBkMjFiYTNmZGFjNCBpbXBvcnRfdW5pY29kZQorODMzNDEgMTI1ZjU0YTcwYWI4ZmJlOGZmZjUyODliN2E3NWEyNTYwN2QxOTIzOSBweTNrCis4MzM0MiA1OTQ3YjFiYjBmZWNkYzE3ZTUxM2ZjN2Q0ZThkM2MyNzYyOTU1ZGI3IHB5M2sKKzgzMzQzIGIzN2I3ODM0NzU3NDkyZDAwOWI5OWNmMGNhNGQ0MmQyMTUzZDdmYWMgcHkzaworODMzNDUgZmNlNzhhMjA4ZGIyNzBiMDNjYzg5NTU0ODU5ODMxNzYyZmVmNDk2MyBweTNrCis4MzM0OCAwOWNhNDY0OTA3MDdlZjlkZTQzZTVjZDUwOWQzZGU5NGQ3ZmJhOTRjIHB5M2sKKzgzMzQ5IGE2YjcxOGU4MTQ0ODBjZmM2YjMxZTNhZDIzZjBiNjg0ZGVhMWVhMzggcHkzaworODMzNTAgYzU1ODc2YTZmYTNjYzAwMGE5M2FlZmVkZGI2ZTM2ZjVjMDI3MDQ5OCBweTNrCis4MzM1MSBiMTJkZGE2MmU5M2JiOTRhYzBhM2UwODBjNDRiNDYzOGI1ZWQ4OWZjIHB5M2sKKzgzMzUyIGUwMWQyNmEzNDY4OTljOGFjNTc5ZTQ5MDk5ZDdhYjJiZTliZDcxYmUgcHkzaworODMzNTMgNGRhM2M1NzAzNDNiYjExZTA5YjUxNmEzYWIxMzRmYTgwMGYwNzhhYyBweTNrCis4MzM1NCAyNWY2ZDU3MGU3YzE2MTI2MTNmN2YyMTgwNjM0NGE0MTNiMjMxYTA5IHJlbGVhc2UyNy1tYWludAorODMzNTUgYmU2MWM4MDhiNTI4OTZmMmUyYWJmODVhY2I5N2ZkZjJhNjI5NTAxZCBweTNrCis4MzM1NiBlMjUwZTg4NTI0ZDViMDliMmRjYmUyMDIxYzMzNTc5MmU3YjYzYTIxIHB5M2sKKzgzMzU3IDhiZGJkMzJjMmViYmRkNmEwMmJiY2QxZTIzN2ZhMDI2N2QzMmQyY2UgcHkzaworODMzNTggZjljYzA5ZGFjZWRhZGQ0YzUyYjkxZGEyNjBmMzBlNzJmZmIzYTJmOSBweTNrCis4MzM1OSBhYjg5ZDBmNTJhN2YzMGI3YjYwOWU3NGY5NjA3ODQ5NjdmYTdkNmU2IHB5M2sKKzgzMzYwIDllYjRiYTQ1YTZiMjg2YjZjNTYxMmM1MmU1NGExMDIwOTY0MTU2MjIgcHkzaworODMzNjEgZTIzN2IxNWMyYmU5OTQyNDM2MmM1YTk0NTE1NzMwNzg1OThlZDg5OCBweTNrCis4MzM2MiA2ZWM2Njg2MjJkNjRkOWNhMzAzZmUwNTVkYTkyYzhlMzgyMzkxZWZjIHB5M2sKKzgzMzYzIDZlZWVkMzUyNjYzNDI3NDc4MDUyYTcxNGUzMzE4N2EyN2E0N2JkNGEgaW1wb3J0X3VuaWNvZGUKKzgzMzY0IGIyNDg0MWMzMDliZTU0NjgxNTExY2E0NzMwYzQ5OTY2OTYxYjhjN2IgaW1wb3J0X3VuaWNvZGUKKzgzMzY1IDE4YjI3MzRmN2YzOGNjNWVlYjI5NmUwNzBkNDk5YWUzMGI0ZWE5OTEgcmVsZWFzZTI3LW1haW50Cis4MzM2NiAyNjNmYWRhMjU2NWRhMjMzYzIxZDY0ZDVjODVjN2Q0N2E4OGJhNjBlIHB5M2sKKzgzMzY3IDI2NTY1ZWJkNWUzMmVlN2Q0MTY1NTkwYTIxMDJmZTJmMzE3NDM5YjggaW1wb3J0X3VuaWNvZGUKKzgzMzY4IDZmNWJhNzEzMTZlNzE2MWI3N2ZmZmVmYzM5N2JjZTMxYTcxYTI3NTYgcHkzaworODMzNjkgYWY2OTJlZTkwZjY4MzgwNTZlOGZmOWM5MmViMTQ3MzliMWI4YTM1MiBweTNrCis4MzM3MCAyOGYzN2EyYjQ0NGJmMzU0YzdhZTc0YzcyOWYwZTA0MTcyMWFiZGNhIHB5M2sKKzgzMzcxIGUyYTlmNjMzZDYxMjZmYWZmYzc0MjI5ZjVjNTMxM2YwNGRmNzdmYjUgcHkzaworODMzNzIgMWNlOWQ0ZmIxM2MyNjUyMDIwOWJhN2FiNzM5M2Y0OWNkMzY4NjMzNyBweTNrCis4MzM3MyA2NWFmN2JlNjE0YTQ4MThjOGY0NGEzM2E4YjM5MmM0OTcyYjEyNzdiIHB5M2sKKzgzMzc0IDViMjRkMWUxODI2OTlkMTFmYTgzODUzMzk3MjRkNjM5M2NmNDQxODcgcHkzaworODMzNzUgMjFkOGM0MmMwYjEwNzgwMDk2OGQwY2NhZTU5OGViYWYyMTMzODMyZCBweTNrCis4MzM3NiAyODEyYmZkODRiNTAwMGE1YWM1N2ZlMjNlMzM5OTkyMGE4ZDYzZGViIHB5M2sKKzgzMzc3IDM4NzA0M2QyMDgwYjUzZmQ4M2ExOTc5MjE2MjNjNzg2N2E1ZmZkNDMgcmVsZWFzZTI2LW1haW50Cis4MzM3OSBmMjljMzE5ZmY1Njc5YTNmNjQxZTQ4OGYxNjkxNWQ2OTExOWMxOWZhIHJlbGVhc2UyNi1tYWludAorODMzODAgNDYwM2E1YzQ2NzVhNDMyMDI1NTUwODg3OTM5YmYwNmJkNGQ1MTM3OCBweTNrCis4MzM4MSBlODA1NzdkNTZhOGZjNDgzZDAyYmRkNDJlZDk4YzdmOGZkNzAyOTk1IHJlbGVhc2UyNy1tYWludAorODMzODIgZGNiMTZkNzAzNjUzOGExZDM3ZTAwYTgyYTE3MDFiNDYxNDQ4ZmNhOSByZWxlYXNlMjYtbWFpbnQKKzgzMzgzIGVkZGE3NTk2YzgzMTI3OTVmYjI5NWMxMzFmNzcyY2UwOTUxMzNmYzMgcmVsZWFzZTMxLW1haW50Cis4MzM4NCA3OGJjYWZmMGRkMmIwMmFjYmJiN2JjMThhNmZjNTcxYzg4NzZkMjcwIHB5M2sKKzgzMzg1IGRhZDA4NWM4ZGUwOTliMWI2OTc1MDJkMjI5ZTkyYWNkYjhjMDdkMjcgcHkzaworODMzODYgNmRlNzBkNDliOTE2NWFkODVmNjcxZmI1ODFhNDE2NTk4YWFlMmQxYiBweTNrCis4MzM4NyA5NzBiN2NkNTI0NTNiNWVhMzdjZGIzMTJlOGQ3NzBiYTQ3NGZhNWJlIHB5M2sKKzgzMzg4IDczNDQ0MjdlODdkZmNiMzU5ZTg0MjAxYTUyNDEzZjU1M2Q1MWIxOGMgcHkzaworODMzODkgNmJmMjkyZTkwNmMyYzIzZWIxMDRhMGRmNDE0OGFlOWI5NGU3OTM2MyBweTNrCis4MzM5MCAzYzRiZDg2MTMzODNlNGQ2MTUwMzk4ZGEzOTliMzA4NDQ3M2NjNWRlIHB5M2sKKzgzMzkxIDU0MTBlMTE2N2Y3ZDNjNTM1NjQ4NDY4NWYwYmRhNDlhMmM1MzAwMjkgcHkzaworODMzOTIgNmVmMzJkMjA4ZmNjNGY0ZTc1YzlhMmYzMTc1YmFjYTJmNDkwNmUzMiByZWxlYXNlMjctbWFpbnQKKzgzMzkzIDMxZjRjNGI2YzQ0NTAzMzA2ZjNhNDNmMTRjN2EyZmNhNmNhNGFhYTggcHkzaworODMzOTQgYTRhZDEwOTc1Nzc2YzU4ZTlmNWU0NTcxZDcxYzViMjk3NWU3NDFkMyBweTNrCis4MzM5NSA2NmNiMTVjNjJkYjQyZTZkNzUwYWU2ZTljYTZlNzViMmEyOWYxZWY4IHB5M2sKKzgzMzk2IGYyZjc5NjE5ZjZhNDk0NzA1YTgyMDRlMTdlZGY0OWIxNWFhNjIwYTUgcHkzaworODMzOTcgNWVlM2UyNzEyZDdkY2ZiZjdhMjM4ZGUyODNkZDNhYzM4N2ZkMmFjYSBweTNrCis4MzM5OCBjYjIzMWI3OTY5M2U0NmRmZWZlMmFmYjAxNzJhMzgzYTk1OTVkMTQ4IHB5M2sKKzgzMzk5IDZkMzVkNmU1ODU2MjFmZjNlNmYxZDY0Mzg0YjA4NTQwZGRhYjNhNzYgcHkzaworODM0MDAgODk3ZmQ1MTA1MWJiNmYyNmFlYTBiYzllZWExMDVhYzg4ZGUzYmMwMCBweTNrCis4MzQwMSAzOThmYTdiNzc1M2FlMGE2Njg2OWU5NjIyYTZjODY0Yzk4ZDZmMDg3IHJlbGVhc2UzMS1tYWludAorODM0MDIgNTFhYWQ1MDljMjBmMTUxNTk1NTFhZDhiZDM2NjNiMDc3YTk4YzgyOCByZWxlYXNlMjctbWFpbnQKKzgzNDAzIDFmMDI3MWMwMzZlMTY4ZmU0YWIyMDQwYzAxOTI5YWY5ZmU3MTg2NjkgcHkzaworODM0MDQgY2MyZjg2NGJhYzljZWUzYjhjODdhOWIzNDQ0YmU2MTdkZjMyMjJhMyBweTNrCis4MzQwNSAxMzViOTkxZDY1YjYwZTY4NzUxYjA1ZDUzN2I2NjgwZjRmY2I5OTM0IHB5M2sKKzgzNDA2IGNmOTg5YTM0Yzc3ZTMwMzliYTA1NzU1YjUyMDFhODUyM2E2MzdiZTggcHkzaworODM0MDcgODhjM2RiNmY0NzllNDNiOWM4NzhkNTVlNmNmNjNlZGJmOTA5MWY2YSBweTNrCis4MzQwOCAyMjk5M2QyN2ZjOGRlZTRjYmUwYTJmMzkzNTE4MWUxYjIxNjE4Yzk1IHB5M2sKKzgzNDA5IDBiZTU1MDQyMTNkMzgwZjBmYmJjYWI5NDYxZDAzYmUxOGY4NWI4MjcgcmVsZWFzZTMxLW1haW50Cis4MzQxMCBlMzE2NWVlYWE3MDBjNThkMWE2MDI5ZjBkMTkxMDg3MjhkYjgzOGUzIHJlbGVhc2UyNy1tYWludAorODM0MTEgNzQ1OTlkMzk1NGUyOGQ0YzlmNzQ2MTkzZTM1NzhkYjc2NWY3M2M4MSBweTNrCis4MzQxMiAwZmU1NWMyODZlZGZkNDcyNjRjOTdiOGIwMGM5NzA3NmY5MGEwNTgzIHJlbGVhc2UyNy1tYWludAorODM0MTMgNzY2MDVjZmM0Y2YzODNiYzhlYmZmZjMwNjFjYzAzZmFhNjllMWJmOCByZWxlYXNlMzEtbWFpbnQKKzgzNDE0IDYyNWMyMWRkZTEzODBmODFmNTRkNGEyZjI2YzBmZmI4MjYxZDllNDYgcmVsZWFzZTI2LW1haW50Cis4MzQxNSBjODNiYTU1MTUxYjFmMzBkMmNlZDU5ODNiNzRlZDA5NDAyNjUxYTk4IHB5M2sKKzgzNDE2IDMwMjAyYzAwMTQwMTU0ZDUzZDQ1YjNjNzY2NDIyN2Q4Mzk1OGNiMzQgcmVsZWFzZTMxLW1haW50Cis4MzQxNyBlZjc1ZWNkMGUxYTdiMzJhOTU0MGM0MjJlNmMyZjY2M2RhNWM4ZTU1IHB5M2sKKzgzNDE4IGNjMzM1MDhlODBjZDc4MTkyOTdiOWExZGFlN2EzNDExNWZmZWMyYjMgcmVsZWFzZTI3LW1haW50Cis4MzQxOSA3MWZjOTJiODhiMTliODAxZTg5ODliMzhkMWViZTg2YTZhMzcwNTJkIHJlbGVhc2UyNy1tYWludAorODM0MjAgMDFjYmQ5MzIwMjY0NDhhNzUxMDVjZmUwNWRhMDk2ODZlNWJmMzZkYSByZWxlYXNlMjYtbWFpbnQKKzgzNDIxIDg0MzYzYzc0N2MyMTIwYWE0MmI0OGExYmEwNGIxN2UwODkyYmUyYjYgcmVsZWFzZTI3LW1haW50Cis4MzQyMiA5ZWUxOTZhN2Y5YTJhMzJiZTQ0Zjg3NjExZWQ1N2EyZDJjMDY1ODI4IHJlbGVhc2UzMS1tYWludAorODM0MjMgZGJjOGRhODEzNjMwZTYxMGYwZmU1MDg4NTQ2ZmZlZTAyMTY5ZGIyMyByZWxlYXNlMzEtbWFpbnQKKzgzNDI0IDlkZTA3YzU1ZmRkYTI3NjllZGM1Nzk4NWZjOTk3NzY4MmY3MWUwMjMgcmVsZWFzZTI3LW1haW50Cis4MzQyNSBiYzY2ZTE1NjZhMTkyODQ3MmFiZjJhY2UxODg4YjAyMmY5MDMyNzA5IHJlbGVhc2UzMS1tYWludAorODM0MjYgYmY1YzYzMGRhYWY3NTJkMjY4NDMzYmQ4MjNhMjczYTkwNDgxNTE0YiByZWxlYXNlMjctbWFpbnQKKzgzNDI3IDkzYjNhZTYzZDJmMzEzODg0MTdmYmY2NDA5YzQxZjVkOTFmMTM2ZDEgcmVsZWFzZTMxLW1haW50Cis4MzQyOCAxMGMxYjYxNDFkNTM1YzVkZWJiNjBhMTNlZmY1ZDIwOGZhOTUzNzgxIHJlbGVhc2UzMS1tYWludAorODM0MjkgOWYyZmJlZTQyMGRhYzJhMWRjZDMzMjBiMWY4ZmQ3ODk4OWZmYjk2OCByZWxlYXNlMjctbWFpbnQKKzgzNDMwIDBkY2FlNDU1ZWMwNzZkYmQzOGY1ZTlmN2IwNDlkNWNiNTZlYmVkMGIgcmVsZWFzZTMxLW1haW50Cis4MzQzMSBiYTM0Mjc5NjIzMDYzN2E4ZjdlNDMyZjhjY2QxNWM1NTgwM2I4ODNlIHB5M2sKKzgzNDMyIDY2MWUwYjBiNDBiZjFmM2NjOGQwNWM4Y2FiZTVmYTEzNTYwODgwNTYgcmVsZWFzZTI3LW1haW50Cis4MzQzMyAyMGM3MjQ0YmNhNzgwMzc2NWUwZTY3NWE0NmI4MjRiMzFlMjViNGI1IHJlbGVhc2UzMS1tYWludAorODM0MzQgYjQ5MjAxNDg0ZjdmZTVmM2EwNDVkNzNmN2RlYmYzOWEwZjJkYTg3OSByZWxlYXNlMjctbWFpbnQKKzgzNDM1IDkxODAyODQwZjBmNzgzZjFkZDU1NDQ1ZTVkY2MzOTlkNDVkYzNmZDkgcmVsZWFzZTMxLW1haW50Cis4MzQzNiAzNDk5ZWQ2Y2JkMDc3Y2Q1NmM0NmQyNTUzNTUxNzAzMGUyZmFjNjBjIHJlbGVhc2UyNy1tYWludAorODM0MzcgNDkwM2U3NTc3NDU0ODU4YTU3MTRlYzkzOTRiNjFmYzQwODU1ZjUxNCByZWxlYXNlMzEtbWFpbnQKKzgzNDM4IDQ2YjE0YTI5NTBkMDBlYjc2NTM2M2FjMDFhYzg5ZDM5MzU3NDQ5MTggcmVsZWFzZTMxLW1haW50Cis4MzQzOSA0ZjY3OTEwNGNiODZiZGU2NDNjMTliNzMwYzlhMmZjNGQ0NmJlNzg5IHJlbGVhc2UyNy1tYWludAorODM0NDAgNDA0YTlhYzFhOWEyYjdlZTNmYjY1ZTVkYTEwOGMxYTQzYjRkNjM0YiBweTNrCis4MzQ0MSAzYzBmZmUzOTU1N2RlZTU1ZGFkNGVmOGVkZDcyZDk2ZThjOWQwZTFiIHJlbGVhc2UzMS1tYWludAorODM0NDIgYThjZmVmODg0MDhmM2M0NTVjZTQzNGE3OWJiMTNlZTk5M2NiNmQwNCByZWxlYXNlMjctbWFpbnQKKzgzNDQzIDcyMDc5OGExZWU3MTkyMmZhYTczNGFiYTVkY2NkNzdmN2RjMTY3MjAgcmVsZWFzZTI2LW1haW50Cis4MzQ0NCA3NjViZmQ4ZWM5Njg5OGNkNTNkOTQ2N2FmNjk5MjE1NmFhNWE2YjNmIHB5M2sKKzgzNDQ1IDVhZjM2MWFkYWFlOWZkZGJhYzdmNDBiMDhhZTM4ZDJlNGNlMzRjMzggcmVsZWFzZTMxLW1haW50Cis4MzQ0NiA3NWIzZWRkYTNjMmJkOTUzOGRiNjk3ZjM1YmI4MmUxNTNiNWZhYjBjIHJlbGVhc2UyNy1tYWludAorODM0NDcgMTQ2ZmVmMDI0OWY5ZmZjMTBkZjg3OTc2Njg2MDE4M2NmMWVkNWJlNCByZWxlYXNlMzEtbWFpbnQKKzgzNDQ4IDQxNWVhMmMzY2ZlOGE5YzBmMDgzMjIxMmEyY2ZlM2Q1NGVlYzVhZTAgcmVsZWFzZTMxLW1haW50Cis4MzQ0OSA0YTAwMmRhN2ZiZmIzZDk2NjFiNjhiMjJlNGNhMGIzM2ZiZjBlYTRjIHJlbGVhc2UyNy1tYWludAorODM0NTAgM2Q3ODIzZTY4OTdiNzYxMjAwNDUzN2IyNDc2ZjZiMmM3ODIzZDc5ZSByZWxlYXNlMjctbWFpbnQKKzgzNDUxIDJjYTg0MmRjYmUxMWU4NDRmMDFjYTJjYzE0ZWVmNzE3MmFjNTJlMGYgcmVsZWFzZTMxLW1haW50Cis4MzQ1MiA0NzNhODA2OGY2YzU0YTQyNzM1OTNmZGYxMWIwOWFmYmMzODc3YTUxIHJlbGVhc2UyNy1tYWludAorODM0NTMgYmVhYjJmYjI5NmNjZGI2ODEwNjcwNjIwZDJkMWNmNjhiZDNkZDdlZiByZWxlYXNlMzEtbWFpbnQKKzgzNDU0IDAxZDljYTgyZmQ0ZTRlZTMwM2VmZWJkYzhiOGEzODAzZmUzY2VjOWEgcmVsZWFzZTMxLW1haW50Cis4MzQ1NSBhYWQ1NzY2YmYzNmZjNmNjZDk4ZjI3ZGY5MzZmNTAzN2FhOWI4ODlhIHJlbGVhc2UzMS1tYWludAorODM0NTYgYzcwNmY4Njc5ZGZjZTNmNGE1N2NmOTFlN2IxOGY4ZmNiZTIxNzhhZiBweTNrCis4MzQ1NyA4YzEwNDViOTJiNmYxOWQyN2Q3ZDliODA3YTVjZTdhMmEwYWRhNjhhIHJlbGVhc2UyNy1tYWludAorODM0NTggZjA0ZjQyMTM0YTkyMTc0ZmQwMzg2M2U3MDRjZTVkZWQxNDU4MTNjZiByZWxlYXNlMzEtbWFpbnQKKzgzNDU5IDJiYzFmYzJkOGNjMDlkNzM0ZDViOGE0YmU3MmRhMGQ1ZmQ4ZmMzMTIgcmVsZWFzZTI3LW1haW50Cis4MzQ2MCA2OWY4N2Y5ZDMzZTcyMjBiNmJlYjE2OTVmYzgyNWUwNjRiNzI3NmViIHJlbGVhc2UzMS1tYWludAorODM0NjEgYmY2ODIyNWRkMmJjZTZkNWQ5NTcxZDNiOWEzODM4YWY2NTA2YzE2YyByZWxlYXNlMjctbWFpbnQKKzgzNDYyIDllYTVkYjU2N2JkZDhiZmY5MjgwNzY5OWU0MGRhYWIzZDA0ZTM1MTUgcmVsZWFzZTI3LW1haW50Cis4MzQ2MyBjNDMyYWRhYzExNmFkNzE0ODgyYzNiMjZmY2ViMjRiMTZkNDBlYWE5IHJlbGVhc2UzMS1tYWludAorODM0NjQgOTNkMTI0YTgxOTVjYzQ4YTViOWUyY2IzNDhlYWFlMTA5YWRlMDhmYiByZWxlYXNlMjYtbWFpbnQKKzgzNDY1IDlmMWVlY2JjYzM2NjIwZGUxNTgzMzNlODQ1ODg3N2E1YmQ3MTBjY2IgcmVsZWFzZTMxLW1haW50Cis4MzQ2NiAxOThiMmNkM2E2ZDFiODdiOGFjMmI5MzFhMWU4MTdmNWViNDAyMDZjIHJlbGVhc2UyNy1tYWludAorODM0NjcgMzk1ZWNhZTYwMmNiMTAxZTZkZDg2NTVlMDRiNjMzNWZmYjhlOTA0MCByZWxlYXNlMzEtbWFpbnQKKzgzNDY4IDViN2UzNWFhMWYxZDE3M2E4ZmQwZWM1M2RlZWQ1YjMxMzY3ZGE4NzAgcmVsZWFzZTMxLW1haW50Cis4MzQ2OSBjYjUyMjI1NzJmY2Q5M2ViNWIyNmVkNWViODYxOGE4YTk0OWQwOWY5IHJlbGVhc2UyNy1tYWludAorODM0NzAgY2QxMWUxYTFmZDg5YmMxNTZlNDNjMDc3YjMyMWJkOGM0YWI1MTk3ZCByZWxlYXNlMzEtbWFpbnQKKzgzNDcxIGYzNTQxNDY0MmRmZmEzMzViMjdiNzY4NDU0ZjBjYjhmOTU3MjhlNWEgcmVsZWFzZTI3LW1haW50Cis4MzQ3MiAyMjhhMGVmMjNhN2IyZTU0YWE0Mjg3Y2I2NjJkYWIwNGNhOTQwM2I3IHJlbGVhc2UzMS1tYWludAorODM0NzMgOTJmOTY4ZDg3NGI4NmU4MWRlZTZjMWI0OTM1MjA5ZjhlMDUzMDU0ZiByZWxlYXNlMjctbWFpbnQKKzgzNDc0IGY0NmRjZDhhMzExMzVhODMwYTZkYTkyOTg3OWRiMWE5YzNmMjNiZTcgcmVsZWFzZTMxLW1haW50Cis4MzQ3NSAyNzU0NGZiMGY3ZjE0ODU5MDQ5NDQ3MGEzZWFiOGRlMWYyYzM5MDgyIHJlbGVhc2UyNy1tYWludAorODM0NzYgMTMxMmU1OTRlYmU3ODQ4ZTY3NTA3YjBiYzJjNjc0MmQ1MWVlNjUzZCByZWxlYXNlMzEtbWFpbnQKKzgzNDc3IDliZjdhMGY0MmVhYzM5ZjUzOTYyOTE2Njk5NzU0OTYwOWU2ODMyNjIgcmVsZWFzZTI3LW1haW50Cis4MzQ3OCA2YWVhNzA5MjhhNmFjNmQ0OTY2Yzk2ZDQ0YzZhZDUzMTFkZjIzNTBjIHJlbGVhc2UzMS1tYWludAorODM0NzkgMWFiZGJjZmFhMDg5ZDA4MGIxMzZlYmFmZGQ1Njg5NDQ1YTg5ZmU3YSBweTNrCis4MzQ4MCBmMzZhMDQwNzhiZmRiZmViMjY0ZDc5MzMyMTU2ZDAzNWVlMDM4ZTQ1IHJlbGVhc2UyNy1tYWludAorODM0ODEgZWJkNGIyOGY0NmEwZjI5YmJmOWRlNTg3OGM2OGQyNjBiM2MxZDY4NCByZWxlYXNlMzEtbWFpbnQKKzgzNDgyIDBkZDQ4MDAzOGE4ODcyYzg3MmQ3ZWE5MTE4MWRmMzUyYmY0NDRkNDQgcmVsZWFzZTI3LW1haW50Cis4MzQ4MyBkMTViNDNjMjcyZmJiNmQ2NDdkY2JkODE3NjVmOTQyOGFjNTQyNmJkIHJlbGVhc2UyNy1tYWludAorODM0ODQgOTUwMWNkNjQwYzhlODdlMmVjZjExNzY5MjI3MGJjZGE2OGM5NWQ5YiByZWxlYXNlMzEtbWFpbnQKKzgzNDg1IDhmOGJhNGJmYmZhNTA2NDc2NGJjMmZjNDYyZmVmNjViMzFkNDU3ODUgcmVsZWFzZTI2LW1haW50Cis4MzQ4NiA3NDM0MDY3NDliMmQ3MDVjYzM5MWQxNDFlODhkZmRmNTE4NWMxMjYxIHJlbGVhc2UyNy1tYWludAorODM0ODcgZThmYzlhOWUxOTkxYTA3OTk3ODUxNTY0MmNkMzZiYzZhNTJhNmQ3NCByZWxlYXNlMjYtbWFpbnQKKzgzNDg4IGRlNmRlZjc5MzI2YzkzNjY3NmYxZGRhYzUxMWU4YWY4YWIzZjMxMTUgcHkzaworODM0ODkgMmE0YjJmZWM4Mjc3YzdiOGY1ZmI1YzMyMjA4ZTYzMDJjY2MyOTNlNiByZWxlYXNlMjYtbWFpbnQKKzgzNDkwIDJjMjUzZjZlMDJlN2Y5MjU0MDk1YzliZTM3Y2Y4MjllN2UzY2EyMTEgcmVsZWFzZTI2LW1haW50Cis4MzQ5MSAzODgxMjk0OGM1MzIxMTE3N2M5OTkxZDc4Y2U4ODY1MWJkNWZmZGFhIHJlbGVhc2UyNi1tYWludAorODM0OTIgOTdjYjFkZDg1NjZlYjIzNWNjZTY5NzUyZWM3ODU1NjE5NWQ2NmJmZCByZWxlYXNlMjYtbWFpbnQKKzgzNDkzIDVmZDA5ZTQxMGQzNmJmMzYwZWExZTIxNWI0MjQ4NzU2YTY0OTAxZmYgcmVsZWFzZTI2LW1haW50Cis4MzQ5NCBiN2Q1Y2JiZWExODBjZmZkYjQwOGJjOTNkMjBhZTlkMGQxNzY2OGZhIHB5M2sKKzgzNDk1IDYxYWQ4MWE3NzRjNTUwNjNmYjEyOWVjZTlkZjI4NzQ3ZTE5MzgwMDMgcmVsZWFzZTI2LW1haW50Cis4MzQ5NiA5Yzc1YTk0MTg3YzczZjZhNzg5NDU4NjAwMjQwNDBhYzI3YjU3MzJjIHJlbGVhc2UyNi1tYWludAorODM0OTcgMGRiNjVjNjUxMGRhYTU2OGYwZWUxYjM5NmE5MDc5MGMwNTlhYzAxYiByZWxlYXNlMjYtbWFpbnQKKzgzNDk4IDMxNzRkNWJhNDZlMzhmMWI4MDFlYmEwYjYzMzM1MTBjMDUxODc4MDAgcmVsZWFzZTI2LW1haW50Cis4MzQ5OSBiYzEwYTQ0MjcyZGZjN2VmOGZlYTllN2IwNjI5MmEwZjZhNzVlNGUwIHJlbGVhc2UyNy1tYWludAorODM1MDAgZmRiZmNmOWRhMmM3MTBjYmZiY2E4OGVhZWIyMTRmMzM5NzM3MDk2NyByZWxlYXNlMjYtbWFpbnQKKzgzNTAxIDhhZGEzNWU5ZjQ1ZDBmMTM3ZWE1M2MyNDBkZTM3ZjE5ZTQ0MGQ3MWYgcHkzaworODM1MDIgMmMzNjc1MDE2MTQ1MWRkNTAyYzMxMjc5ZDM0M2FkMGQwMjJjMTJiMiByZWxlYXNlMjYtbWFpbnQKKzgzNTAzIGU0OGVmNzEzMWNmYmM3ZjQ0MDQwZDY1MjY4MjU1MzE2MTcxZWZmNmIgcmVsZWFzZTMxLW1haW50Cis4MzUwNCBjOTY2MzEzMjM5MGRjZGM2NmJlNDA5ZWFmYzkwNmQ2YmM2YTY0MmFhIHJlbGVhc2UyNy1tYWludAorODM1MDUgMGFhYzdiODc3MWUxN2ZlM2E4MmI5NzUxNGZiZjg4MzU1MGExOGRhMyByZWxlYXNlMjYtbWFpbnQKKzgzNTA2IDhhMTQ5YTlmOWRhZjY1NzE2NDUwMDZlYjRlMzQzYzY2MDhkNzZjMjIgcHkzaworODM1MDcgMmU5N2FlYmFkZTRkZGJjZjM2ZTM2NDE5Nzg4Y2ZlOGNlYTlkMzlhNCByZWxlYXNlMzEtbWFpbnQKKzgzNTA4IDYzYjIzNDllZjc5MGQ0ZjQ2YjdjMGU0OGZkNzQyZDU0ZTA0MDM2M2EgcmVsZWFzZTI3LW1haW50Cis4MzUwOSA3MmM4ZmFiOTExNmViMDhiYjFjMjgzZjRhOTQyZTI1MGU5MWNmOTRmIHJlbGVhc2UyNy1tYWludAorODM1MTAgZGU5ZjM1M2VlODY1ZDllNTg1YjE2MmQ2M2IxNjUyM2M2MzBhMTc1MyByZWxlYXNlMjYtbWFpbnQKKzgzNTExIDM3ZDNjZDhjMTBmYjQ1MTE5N2U1NGU3YmRlZmNlZDdmZDA1Y2NhMjYgcmVsZWFzZTI2LW1haW50Cis4MzUxMiA3NTFjNmRkNzFiNWVkNTVkNDk1Y2U0MDc1MTQxZTEwOTJmMjAwN2Q4IHJlbGVhc2UyNi1tYWludAorODM1MTMgZWI2Zjk5MjU0MzEzNzM4ZGRjNzhlZjAyOGVlYTdlYmE2NmZhMzEyNCBweTNrCis4MzUxNCAxODVlM2Y3MjY2ZTkwZDc0M2EzOTcxZjVhOGQzN2FmZDBhN2M3YWYyIHJlbGVhc2UyNi1tYWludAorODM1MTUgMzAwODZhYTMzMTIzNTEyYWMzNGVmNGNiOWQ4ZDAwY2RjNTdiODBiMiByZWxlYXNlMjYtbWFpbnQKKzgzNTE2IGQ4ZGJmMjQwMGQ4YTIxYzllNGVhYWI0ODU5OWJhOTg4OTdlODE1ZTUgcHkzaworODM1MTcgOGEyYTgyYmI3MWM4MjI0N2UxZGYwODcyN2IxYjFjNmRjZmM4MWIwOCByZWxlYXNlMjYtbWFpbnQKKzgzNTE4IDJkYzBiNzEzMWM3MjEwODBhZDkxNjljNjk4NDAzZmY3ODQwNmM5MjYgcmVsZWFzZTI2LW1haW50Cis4MzUxOSAwN2M4NGI5ODE0MDE0ODYyZDAzZGE2MDQxYTA2ODA0ZTNkZWQyYzI0IHJlbGVhc2UyNi1tYWludAorODM1MjAgZmQ0YjA3YWI3OTc2OTk2NDAwNjUwMTBkYzNkZWI5ZmE5YjE3YzAxYiByZWxlYXNlMjYtbWFpbnQKKzgzNTIxIDM5ZTE0ZGY3NjVlNDMxYjlhNzhmYTQ3NTNhM2MzNzJkMTk2YTgzM2UgcHkzaworODM1MjIgOTA0ZWY0YmJmZjVlNTY0YmY0MTZkMDY1MGFmOTdlN2U4ZDcwYjI1NCByZWxlYXNlMzEtbWFpbnQKKzgzNTIzIGI2MTQ0ZGFhNDMzOWExOGFiMTBlNmUxZmY2MmQ2NDNlMmNhOTRhNDggcHkzaworODM1MjQgNjFkMzQ4MWViYTc0MWQ3NTcyNzdlMjdiNTc0MmJiYTczMjAzNGI5MSBweTNrCis4MzUyNSA3N2JiYjA1ZDMxMGU2M2RkZTZkZGM1YWM2YTMwNjYwOWUzZGE4YWU0IHB5M2sKKzgzNTI2IDkyNDZhYWRmY2Q3ODljMjNmMTMzOWFkNWEwMWY0YWFkYTY3M2Q1MmMgcHkzaworODM1MjcgZWI3OTA0OTVjNmE0NTAyYzlhMGViMTU2NWNiNjkwZDgyNDRlNTFjZiBweTNrCis4MzUyOCBhMzQ5ZmFkNTA3YTIyNDU4MTVlNTJiZDk3ZmJlZDliYjBjZjgyM2UxIHB5M2sKKzgzNTI5IDE2NDBlZmE3ZmYyOWM5MjRiODg3OGZjZmJkMTljOTQ4ZmExMDY3YTUgcHkzaworODM1MzAgYjA4ZDM1MDYyMDg4NWYwMmZhZjI0OTI1MDcyZmQ3MGU1ODM4ZTM3OSByZWxlYXNlMzEtbWFpbnQKKzgzNTMxIDg1Y2RhZjVmM2NkYzNlMTRjMDgxZTlmMjc5ODc0ODZlODVkOGE3NGUgcHkzaworODM1MzIgYTMxNDljOTMxNjU2NTZlOGY5NTAwNTM1OTkwOGZlMmNiMzU4ZjY0YiByZWxlYXNlMjYtbWFpbnQKKzgzNTMzIDZiYWViYTU0ZmQyNGJkNzFiYWUwMDU1OTBhMWZhYmEwMWJjZDBjNGIgcmVsZWFzZTI3LW1haW50Cis4MzUzNCAzMDY4ZTAwYTMyMDc2OGE1YzAyNDNmYzM0ZjVjNjM4OWNlZGRmNzkwIHJlbGVhc2UzMS1tYWludAorODM1MzUgM2JlMjQ2NGMwYzM5NDZkYzIyODU3ZDJjZTM5YWViYjg1ODhhNzVkNCByZWxlYXNlMjYtbWFpbnQKKzgzNTM2IGQ3ZjMwODVkMWIwM2U0MmZkNzZhODM1ZDA2OWQxZTUzOTZlOTk2OGUgcHkzaworODM1MzcgN2MzYjg0OWQxODFhZTJkOTgxMTU2MjQ5Y2I1ZjVmZWM2MDAwOTA5ZCByZWxlYXNlMjYtbWFpbnQKKzgzNTM4IDUxNmY5ZTM0YWYyMDk2ZGEwOWY2MzkzNWRlOTY4MDRjYzdjZDIyMTIgcHkzaworODM1MzkgY2E2MzJiYWQ2ZDYwY2I0NmE1YmMxMzI4Y2NiNzljYTBmNjA2M2NhYSByZWxlYXNlMjYtbWFpbnQKKzgzNTQwIGRiYTk5ODI4ZDkxYzNlOGVlMTk3N2QxMWM4MjhiZGYyMTM0NWM3YTMgcmVsZWFzZTI2LW1haW50Cis4MzU0MSA2NTM2MTUwZGQ0ZjQyODY1ZDI4NDQ3NzFmYWQyY2QyZjI5YzZjMjA1IHJlbGVhc2UyNi1tYWludAorODM1NDIgNThjMjJkMzBmNzQ5MzY0NzdiYTBiZDZkOWM4NzRkNzdkMzk3MzMxZiBweTNrCis4MzU0MyA2NzI0OTNmZmQ3NTNmOTljZWZhOTY1NzU5NzFkYWI2OTQxYjdmNDhjIHB5M2sKKzgzNTQ0IGNlY2M2ZDJhNWI0OWNiY2M0NGQ5N2EwNWQ3N2FhYjdiNGVmMzFlNjYgcmVsZWFzZTMxLW1haW50Cis4MzU0NSBiNmM1ZmNjY2I2ZGU1ZDU3ZGY5ZDUyODJlNTdhMmE1YzYyM2E5NTYwIHJlbGVhc2UyNy1tYWludAorODM1NDYgNzIwMmM5YTIwNTY2NjI5ZGFkNmQxNjc5NDMzNDhhZjlmOWU5YjgwMCBweTNrCis4MzU0NyAwYmYzNmNkZDgzMzQ1NDI1MTBjNWVkY2ZjYWM2MzkzNDJmZWQ2YjhlIHB5M2sKKzgzNTQ4IDZlM2MyMDkzYmIyMTA4NGMwMWRjYTQyZGZiZjU4YzIzNWQ1ODFlN2MgcHkzaworODM1NDkgZjhjZTY0YTk2Yzg5NjAyYTVmMGI5NWU5MDlhYjhhMmFkZTRiYTNjMyByZWxlYXNlMjYtbWFpbnQKKzgzNTUwIGEyNGM5YTc0MDFmNDUzNTE3ZTM1NmFjMDEwZWQ3MjUxMjgwMTBiYjEgcHkzaworODM1NTEgNjk5ZmNkYWY5OTgxMmNhOTFhYzkyNGI3NWRhNTYzYWE3NWU0ZjQ1OSBweTNrCis4MzU1MiAzMDdlMWNlZTRhNTgxMGY0MGViNGEzNzFhOTljMjgyZmUyNWJlMGU4IHB5M2sKKzgzNTUzIDdmNjhmODU1NDNkNGY5MWE3ZTIyNGE0YjY3MWYxN2ZiN2IyY2M0YTkgcHkzaworODM1NTQgN2YwNzEwODdkODIwZDk5MmRiMTZhN2IxNTAwN2UwYWNjZWQ0M2EwMCBweTNrCis4MzU1NSA2MmQ4Y2ZjY2QxOGI0NGY1NmU5NmM5NzYzMmFiY2QyN2I3NTk4YWIzIHB5M2sKKzgzNTU3IDUxMTAyYWJkZWM1MDIxMmYwNTY3NzEzNDJjYjFhNTU3Y2MxZTRhMmMgcmVsZWFzZTI2LW1haW50Cis4MzU1OCBiNGY2MTQ3MTc4ZTVjMmY3OTI3MmI0MjI0ZTg4Y2UxOWYwNzAwZDk1IHB5M2sKKzgzNTU5IGFmZjhkN2JjYTNmMzMzZmE5OTY1NDZlOWVjNTE5ZjY1ZjVjYmMwZmUgcmVsZWFzZTI2LW1haW50Cis4MzU2MCA0ODc0ZWZkMWY2NTdhMzZmNzcwZDRhYjkwZGNiMzRhYWY2NjQxMGFmIHB5M2sKKzgzNTYxIDdlYmY1ZjkwMTFiMTkwZDJlODM5NDRhNmVkOTU1NzkzY2M4MGZhZjMgcHkzaworODM1NjIgYjRiODlkMWI0MmNkNDQ1YmE1YjE0NmFmMDgzYjk2N2RiYzg2MjAyMSByZWxlYXNlMjYtbWFpbnQKKzgzNTYzIGJiMmRjZjEyMDNjNGM0NzBmNDFhNDhkMmM3NWIxMmIzZDM5ZjA4MzEgcHkzaworODM1NjQgYWMyOWY3MGM2MWRiYTM0NDZjNzViZGUyYjIwN2U4OTY0NzVlMDU1MCByZWxlYXNlMjYtbWFpbnQKKzgzNTY1IDQyZTE5YzE0YjE0OTJhNWM5YTYzMzMzYzVhODkxNmFjZWQ0YjYxNjUgcHkzaworODM1NjYgNDdiYTkwNWE3ZTg3ZGM2MWI3ODg4NTQ5MmFiZDc4Y2Y0MDY5MTQ0ZSBweTNrCis4MzU2NyBkMGJiODBlODFiMzlhNjNjNDYzZDNjNjc0ZTBjYzI2MjAwMzE3YmUxIHJlbGVhc2UyNy1tYWludAorODM1NjggMzdiYTQ3MjMyMDI3YTYwMjk5NGFmMTFiYTU1ZjBlMzQxYmRjY2E5OSByZWxlYXNlMjctbWFpbnQKKzgzNTY5IGZmNmZhYmYyNWNlZjQ5NTdjOTNlNzlhNDJmZTBiY2E2Y2ViZmJkOTQgcHkzaworODM1NzAgZGYzNzhlNDRiYTlhZDNlZjg0ZTAyNWQyZTkwOGRiNTIxOWFlMjVmNiByZWxlYXNlMjYtbWFpbnQKKzgzNTcxIDIzNjM5M2M1NTRmNzE0OTBkZWNjNmYyY2FmZmMzMTM5N2Y1NjBiZWQgcHkzaworODM1NzIgNzk1ODhkNDg2N2JjYjI0NzVkNjI2ODFhNzI0ZTI5NTEzNjkwOTA0YSByZWxlYXNlMjYtbWFpbnQKKzgzNTczIGRjOTQxMzQxODZjODc1M2M2YzBlNTM2YzM5MjY3ZmU1ZmFhMzFjZjkgcmVsZWFzZTI2LW1haW50Cis4MzU3NCA4ODE2ZjRlOWY3MTJjZjNiN2YxOWFiZDE0Yzk2Y2IzYTFlY2RhMjRkIHB5M2sKKzgzNTc1IDcwYTZhNzI3ZWNkNzMyOTM1Mzg1YTViYjlkZmQ4OWEyMzkyMDdiODUgcHkzaworODM1NzYgNjQ5NDc2YzY2M2ZjZjYxMGU1NmRjZDQ1MjIyZGFhYWIwOWY1NWEzOSByZWxlYXNlMjYtbWFpbnQKKzgzNTc3IGNjMzM2NjkyYmFiOTA1NDc1YjljNzVlNWUzYjJmMmExNTA1OTFjOWMgcmVsZWFzZTI2LW1haW50Cis4MzU3OCA5NTk0MDBhZTA1YjA0NmM2MGVkODkzYWZjZmExZTYwYzNhY2RiMmNiIHJlbGVhc2UyNi1tYWludAorODM1NzkgMzE5YzlmOWRjNDU2MTk0NmRjZDViYjQ4YTFkMzM5MDQ4ZmFhMTk5OSByZWxlYXNlMjYtbWFpbnQKKzgzNTgwIDNkMDExYzJlYzIzN2NkOTM1NThlYWJlZjdjMGFmOTI3YjZlMzE2MzMgcHkzaworODM1ODEgM2FmNmNhZTVlMDI2YmJhNzNjZDY0NTZmYmExMmU2YTA3YjJmZTJhOSByZWxlYXNlMjYtbWFpbnQKKzgzNTgyIGQ2YWMzZDA5Yjc5ZDRhNzdlZDc1NzMzZjZiN2IwZDJmYjM3ZjQ0N2QgcmVsZWFzZTI2LW1haW50Cis4MzU4MyBiODVjZjg1YjdlZGJjNTRlNTE1NTkyODY5YzUzYjdjZTFmZjgzOTYwIHJlbGVhc2UyNi1tYWludAorODM1ODQgY2VhNmVkN2EwYWExMWEwZjg0OTc4OTc0MTFjNGJlY2VjM2ZlODkwNiBweTNrCis4MzU4NSA0ZGZiOGE2MWU2OWZkMDM4ZjM4MmU4MGNjNDAxZDdmNzA4MmFjYmQ2IHJlbGVhc2UyNi1tYWludAorODM1ODYgNzZlMWM1ZjMxOTMxZjBmZTA3OWI2ZTQ1MzA5ZDBhYmVhOGFiYjc4OSByZWxlYXNlMjYtbWFpbnQKKzgzNTg3IGU5NzFjMTA0YTVjMjFlM2QzNzQ4MGZiODRkYzI1NzgxM2RmMGViM2IgcmVsZWFzZTI3LW1haW50Cis4MzU4OCBmZDI0OTc1MGNiYWU1YTRlNjAwNDg1OGI5OThhMTgxNGZjYTk5ZDUyIHJlbGVhc2UyNi1tYWludAorODM1ODkgNmY4MWQ2ZjlhNmQxYzRhN2RjZGQzNTgyNTVjZjY0Y2Y0OGM5M2JiZiByZWxlYXNlMjctbWFpbnQKKzgzNTkwIDY3MzBjZjlkNjI3YTVkYWU4MWI0OTc1YWFlMjEzY2EzY2ExODgxZWUgcmVsZWFzZTI3LW1haW50Cis4MzU5MSA3NDQ5ZDA0MjEzYzZlNDFlN2E3NDQzNjk5M2EwMzcyMzYwNDEyOWMwIHJlbGVhc2UyNy1tYWludAorODM1OTIgMjE2MjBkOWIwODQ4MGNlM2FkYzM2NmRhZTY4MmI3OWFjYjc4ZDg2NyByZWxlYXNlMjYtbWFpbnQKKzgzNTkzIDU5NTY3NmU0NjZjMGQ0MzBjMGVhMjEwZTdmZGRkMDdjOGZmYmJlZTAgcmVsZWFzZTI3LW1haW50Cis4MzU5NCBhOWNkMjU1MGZmNDBhY2ViMGQ3NjRmMmQwMjQwOWE2NWRiNThjY2VkIHJlbGVhc2UyNi1tYWludAorODM1OTUgMTNkMmJhY2M1NmE0MTU0NTJkN2YxMDI5YjI1ZGUyMTBkYzg4M2M4MCByZWxlYXNlMjctbWFpbnQKKzgzNTk2IGYzZmVmMjBhNjZkZDA4YmQyYmVkYTEwYTQwNTI4NTJiMDQ1ZjlkMGYgcmVsZWFzZTI2LW1haW50Cis4MzU5NyAyOWQzNGU0ZDBhOWEzNjdhZTgwNDMyODVlZjdlODA0N2MyOGU4Y2RkIHJlbGVhc2UyNi1tYWludAorODM1OTggNjFiNjliZjFlZWJkY2UxMWFmY2IzMGEwN2M4ZDgwMWZjNGJhMjQ5MSByZWxlYXNlMjctbWFpbnQKKzgzNTk5IGYyZDgzYTEzNzAzZmE5ZmMxNTIwMGE4ZDU5NzNiYWU4YzY3ZjM2M2QgcHkzaworODM2MDAgNWM0Y2RmMzNjMTMyNWE3MDU2ZTc4ODBkOWU1NzdjZDZlYTM1YmM3NyByZWxlYXNlMjctbWFpbnQKKzgzNjAxIDEyYzkxZjRiYjQxNDQ5YWJhYzZhZGFmZmMyZDZjOGRkMGJkN2VhNmQgcmVsZWFzZTI2LW1haW50Cis4MzYwMiA2M2ZiOGRiYmZkYTI1ZTQyOTRiOWEzZmJkZTRiZWRjZDJkZDcwYjQ4IHJlbGVhc2UyNi1tYWludAorODM2MDMgNDQzODk2ZjMyNGNlMjBmYTY5NjA2ODc3MDg2YzAzZmNlYjgwMDI5MCByZWxlYXNlMjYtbWFpbnQKKzgzNjA0IGEyZjAxMzAyMWUxZGRiMWJmZjA4NTYzMTE5OTQ1NzRjMTVlMzJlODcgcmVsZWFzZTI2LW1haW50Cis4MzYwNSAzN2QzOTlhYThjMTZmZGE2NzVlOTJjNjQ1Nzc4ZmE1NTE1ZDAyMTc0IHB5M2sKKzgzNjA2IGZkMjBlYmExZjIwMTFkNjMwNDJkMzNiOWE0Y2VlZmRmMjg2YWViYTkgcHkzaworODM2MDcgNDc1MGE4YThiNGNmNDE3NDVmMjNiMDk1YjFlOTBmYjMyZTdhODM3YyBweTNrCis4MzYwOCA2Mzg0MTBhMjkwNDY4MWNiMDgyNjllODY5YmJmZDg3NDE4Y2Y2YWZiIHB5M2sKKzgzNjA5IDdhNDdjNGQzMGY2ZTFiM2Y0NmViZDBiNDRmODcxZDAxNzEwM2Y4OTkgcHkzaworODM2MTAgZDQ4NWM2ODBjNjVmYWM5MzczZDA5MzJlYTljZmZiNmIxNmU2MmNmMiBweTNrCis4MzYxMSA5NTJhOGRlNWNhNjVhMTc3ZDk0ZmZlNGRiYTYzZGM5OTMyMjk5Mzg3IHB5M2sKKzgzNjEyIDU5M2Q2NDE3ZWRmMTA3OWYyYzNlNTM1MDJmNjA1N2U2MjQ0OWVjNmMgcHkzaworODM2MTMgMjAyNDJhZjI0M2QyMGUyMzA3N2NiZDQzNWE4YmFhMjNlN2FhNjFjMSBweTNrCis4MzYxNCAyZDAzZDZjNGM4MjljMjkwZDkwNTE0ZjFmNWZlZTc0YWUyM2Q1Nzk0IHB5M2sKKzgzNjE1IDQ0ODJhNDI4ODVmNzVhNTE2MWRkNmVhY2QwNTIyYTJkODQxZTJhMTggcHkzaworODM2MTYgMjlmMjBlZjEwNzU1YTBhYTI0YTBhMTE0YWY4YzkwMjYzOWU5MzU3NiBweTNrCis4MzYxNyA2MDE1YjZlYzgxZjJjNzcwM2NjMWIyMWRiMjhmMDcwNTA3N2M1MDFjIHB5M2sKKzgzNjE4IDAzMWU2YjM0OGE4ZThhZjlkM2IxM2U0YzM2ZDg1NjQ3MWU1YWM1YjQgcHkzaworODM2MTkgNzYyZDg5ZmFjZWFhYWFjNjk4MTY1YjQ3NTc1OGFhZjZiNTY2YmE4MyByZWxlYXNlMjYtbWFpbnQKKzgzNjIwIDQ1NDBiNmY0MjhkMzYzNDc0ODQ2OGIzNzFmMjJhODcwODk4YTc0NjMgcmVsZWFzZTI2LW1haW50Cis4MzYyMSBkNTc1NTJhYmYxODBlNThkZDI0MGM1ODY1ODU0M2JmNWQ5NjVjNDFiIHJlbGVhc2UyNi1tYWludAorODM2MjIgYjkyZjBjNDlmMGU4ZjljYTY1NjViM2JhYjUxOWRmM2IzMDVmMDMzNiByZWxlYXNlMjYtbWFpbnQKKzgzNjIzIDY4Y2ZjODRlNGRiMWM4NmMyOTQ5OWZjZGQ5Y2RiMzRkZjZhODYwMTcgcmVsZWFzZTI2LW1haW50Cis4MzYyNCA0YzBiMzdkODY5Y2FmODc4NmI4ZTgxMzhlODNlYjE2MGM2MDc0ZjUwIHJlbGVhc2UyNi1tYWludAorODM2MjUgYTY5MzRhMWJmYTNiMGZjNjA1MWUxOTNlYTAwYzVkMTM2NTU3NWJjMSByZWxlYXNlMjYtbWFpbnQKKzgzNjI2IDY1N2FlODc3YzBiZjIwMDA2MGNhZTFiODAwZmUzNTQ4ZDNlNDRmMmEgcmVsZWFzZTI2LW1haW50Cis4MzYyNyA4Yzc5OTA5YTdlZTdhNjFmOTNlN2MxMjc2MzhmY2IzMGQ3YWNkY2M5IHJlbGVhc2UyNi1tYWludAorODM2MjggNGRmNzJmZWIzOWQ5MDU4MWNjZGE1ZmQxMDcwNjM2NjBkYTNhYWM1MiByZWxlYXNlMjYtbWFpbnQKKzgzNjI5IGVmMTE5ZGJiZTg4NzY2MTU1YzhhNGU0YjdkNTk1YzYwZGQxZjNmMTcgcmVsZWFzZTI2LW1haW50Cis4MzYzMCBhODhjYjgwMDUxMTBmNTczZGJiYzkwNmNmMWQxYjhjM2JlOGM5ZDI4IHJlbGVhc2UyNi1tYWludAorODM2MzEgYjFlMDQzZGU5YzVhNTg0MDE0YmNhNTgyNmFjZWZjNWY5M2FkYjk4NyByZWxlYXNlMjYtbWFpbnQKKzgzNjMyIDVjZjY3OWJlM2RmYzRlYThmM2ZmODZkYzI1ZDE3NDBiYmJjZmZiMWMgcmVsZWFzZTI2LW1haW50Cis4MzYzMyA2ZmZmMGZmZmY4NWI0ZWZiZjBkZjMzNTMyMDBkNzllODJhZjMzOWI1IHJlbGVhc2UyNi1tYWludAorODM2MzQgMmFjYTM0NDYwZmRiNDA5Y2Y1YzExYzMyMGIzMTIxNDEwM2Q5ZDRiMCByZWxlYXNlMjYtbWFpbnQKKzgzNjM1IDNlZmI0NTgxNzkwYTMxYzc3ODYyMGQ0OTY0NThjZDVhNGEyNGYzZmEgcmVsZWFzZTI2LW1haW50Cis4MzYzNiA2YTZjMTNhN2YwMzAzOGEwZGM4NGQzYmU2NjE0MjVmZjUwNmY1MzEzIHB5M2sKKzgzNjM3IDMwYTgwMGQ3ZWFjY2FhYTcxODc2MGZiMTIyOGU1Zjg3NDc0N2VjNjcgcmVsZWFzZTI2LW1haW50Cis4MzYzOCBlN2U3YzU2NzE4YWYyNmY1NTYwNjYyZGRjMTAxM2I4N2JmMzQ4MTU5IHJlbGVhc2UyNi1tYWludAorODM2MzkgMTk5NjQ5NDRjYzAxM2U3YzFmNTFkZTdjNzM1MDZiMmRlOWRkNTU1YiByZWxlYXNlMjYtbWFpbnQKKzgzNjQwIDg2ZDExOWU5NGRhM2EwNmJjMDJiZTc2YmM5NzdiNGZlN2M0NjRkMzIgcmVsZWFzZTI2LW1haW50Cis4MzY0MSA2M2YzODM3OWU0ZWRhMGI2NzYxZDUwOGFjY2EzYmU3ZDVhYmNjM2ZhIHJlbGVhc2UyNi1tYWludAorODM2NDIgN2I1ODRhMTNiYzk2NWFiYmJmNjk2MzM4Y2IzY2ZjNzdjNjM5MzFkZSByZWxlYXNlMjYtbWFpbnQKKzgzNjQzIGYzMDYwZTZmYjcxNzU4NWRhNDZmY2I2MmRiMjFlYmU2NzhlMTVjYjMgcmVsZWFzZTI3LW1haW50Cis4MzY0NCAxOGM4YzUwMDQxMDllZDcyOGQ4OGUwODI5ZWU2N2U2NjQ3OTgxNTZmIHB5M2sKKzgzNjQ1IDY5NDU0MTZjOGQwNDVjNjhhZWFmYzg2NDJhYmViN2FhZTBmZTIwYWEgcmVsZWFzZTMxLW1haW50Cis4MzY0NiA1MTc4NTljYjBlOTIwMDIzZDVhYWMwOTMzYjM0NTFiOTBhZTJiYWEyIHJlbGVhc2UyNy1tYWludAorODM2NDcgYzgyYjZlZmZiNjk1MzFhNWYzYzg4ZmNjY2M3YTk5MjUxYmM1ZTZjZiByZWxlYXNlMjYtbWFpbnQKKzgzNjQ4IGNkZjZhM2E1MDQwNzQ2ZDMxMGE1MjRmZGI4NWVjMGZlNWQwZTU4NWIgcmVsZWFzZTI2LW1haW50Cis4MzY0OSAxMjg4YTI1OTMyODc2ZjYzNDVkMjdhYTc4NmExNTk2ODgxZGFhZWU0IHB5M2sKKzgzNjUwIDU3MTA1ZTg3NTYwNGZlZmJhZGUxMzc2NjdiZGM1Mzc1YzRkNTEwNTkgcmVsZWFzZTI2LW1haW50Cis4MzY1MSBlYmM5MDUxN2I4ZDk2YmZmODJhMTdkMDNkNTJiZThiYzA4Nzg3MTg1IHJlbGVhc2UyNi1tYWludAorODM2NTIgZTFlZjUyNjMzMzUwZGY2NDM2NGM3MmI4YjNjNDE0ZDA5NjZiOGQ2OSByZWxlYXNlMjYtbWFpbnQKKzgzNjUzIGY4NjRmZmI4ZjJlZGVmNjg2Yzc3NmU3NTliNzg2MzU1ZDg2OTM0M2YgcmVsZWFzZTI2LW1haW50Cis4MzY1NCBkMjY1ZjkxYzM4N2QyZmE4NDA4ODU5NDJmNGM5NTA3NWZlNjZkNTAzIHJlbGVhc2UyNi1tYWludAorODM2NTUgYTc5MzdkYTYyNTkxYzI1ZThjYTcwMTk0N2E3YTA2YzM5YjUwMGFhMCByZWxlYXNlMjYtbWFpbnQKKzgzNjU2IDQ4YzU5ZTkwNTUzMjUxZTdmNTg0MjBhYmMwYjM3YTU2YzcyZTRkYjggcmVsZWFzZTI2LW1haW50Cis4MzY1NyA3Y2VlMWI5NjA5ZTQ3ZGUwM2ZmMDgxNTQ0NDRmOTExMzBmMmY3YzdhIHJlbGVhc2UyNi1tYWludAorODM2NTggYjIwNjY2NzhkOTM3Y2Y5OTBmZWY1ZTg4MGVlNTgyOTAzYjZjZWIwNiByZWxlYXNlMjYtbWFpbnQKKzgzNjU5IGUyMTBlZDYzYjA0ZTQyMzhjODIxNzE4ZjZmMTU5MDBmMmNmODNjZDMgcHkzaworODM2NjAgM2RjZmUyOWQ5Y2E1NDQ3YzBmODZkNDAyOTZkNjg1MDFlZjhlZjk1YyBweTNrCis4MzY2MSBhM2Y2NDUzODFkNjFjZTJlMWZhZTYyYjQxMDU0MjM1NjMzNjk2YjAyIHJlbGVhc2UyNy1tYWludAorODM2NjIgZjljNGYwOTlhMjRkZGRmNzc0OTU5MTgxZWNmYzg2NGUyMjdlYTNhOSByZWxlYXNlMzEtbWFpbnQKKzgzNjYzIDY2NjAxZmI5MGQzZGY2NDQ4YjA3ZmE4MTRmZjk1MzQxM2ZiNzdmOTggcHkzaworODM2NjQgNzFhZTUyM2ViYTViYWRkZjdiODFhOGJjYThiNzczMGUwNWM2NGViZCByZWxlYXNlMjctbWFpbnQKKzgzNjY1IDQ1ZGJhMjJhNzRmYzlhMzllODE4YmFhMDNjNjQ4ZTZmZjBlNzI0NGUgcmVsZWFzZTMxLW1haW50Cis4MzY2NiA5ZDlhODNiMjUwNDU3ODFmZWJlN2QwYWNmMTE3Mzc3NThmMDBiOWY2IHJlbGVhc2UyNy1tYWludAorODM2NjcgYWYzNjU1ZjJmMjQ4YzNkMzQ0ZjIxZWY3NWEwOGRhNDQwMzJiOTI3NyBweTNrCis4MzY2OCAzM2U5YmUyZmE0ZDIzOTFlNzUwYTNhNmMyYzJhZmU5OGM4NzJkNTVhIHJlbGVhc2UzMS1tYWludAorODM2NjkgNjNlMWQwZGM0NGVlMDdhMTZmNjk2ZWE4NzhjZTRmNTU5MmEyZmUxZSByZWxlYXNlMjctbWFpbnQKKzgzNjcwIDMzZDJmNDI0NTU2MTAzMzZiZTI3YjRhYzAxOWNmMjkxZTM1MDczNGYgcHkzaworODM2NzEgZGMyMGRmOWM5YmE5NWYwYWM2Nzk0ODY3ZmM1MjdjZjI1MGZkNDAyMSByZWxlYXNlMzEtbWFpbnQKKzgzNjcyIDAzYWEwNWViZDliYzViYmU5OTRiNDFjYzdlNGJmY2U2ODAyNzJiYTQgcmVsZWFzZTI3LW1haW50Cis4MzY3MyA3MWM0MzE1ZDQ5ZjI3ZjIxODFmYmE4MWRmYmUyZmNmNjgyYjFjNDNhIHB5M2sKKzgzNjc0IGZmNDQ1NmRkNGE3OGNhNGQzYWEzMTZjNDFkNTgwMDJjZTAyMjJjMDIgcmVsZWFzZTMxLW1haW50Cis4MzY3NSAyODUwYmQ5MTkyNzcwZDRiMWQ2Mjg3ZGM4ZTI5YTczN2U4YWUwMjg0IHB5M2sKKzgzNjc2IDIzYzA4OWRjNWNmZjBlOTA3NDBlNmY5NTgyNWQyZWQ3NzJiZjcxZjcgcmVsZWFzZTI3LW1haW50Cis4MzY3NyBkNmIzMzZkZDY0NTc3NmZlMTBmNDY4OTY5NjZmMGJhZDVlMGNlMjlhIHB5M2sKKzgzNjc4IDlkNjhlNzg0NWU0MjA1MDk1MGY0MzEyNWI5ZmVjOTMxNTEwZDEzYzIgcHkzaworODM2NzkgYzRiYmRhMmQ0YzQ5ODY1ZDI2ZWIzOWY5Y2U4ZDk3NzBiNGI1NzkwYSByZWxlYXNlMzEtbWFpbnQKKzgzNjgwIDA0MjBmNTQ3ZjNiZjI0MTEwNjFjNjgxZDM4MDUyNmNjZmNlODBjM2YgcmVsZWFzZTI3LW1haW50Cis4MzY4MSAzOThhMjVjZDYxMmRkYWFlZDVjZTlmZWMwNDgxOTI1MzUzNDBjZTI5IHB5M2sKKzgzNjgyIDk3MTllNWU4YThhZjkyZWJlOGUxNzQxNWMwOWVhYjBiOTU5MWRmNjUgcmVsZWFzZTMxLW1haW50Cis4MzY4MyBiMzNjODBmN2FiMTc2NmI1Yzc3MDAyOGVlNGVkZjIxODgwN2U5MjNkIHB5M2sKKzgzNjg0IGYyODM4ZWIxYmIxZWY5MGFmOTU3MDdkYWU4NmNkMWQ0YTY0MDZmY2MgcmVsZWFzZTMxLW1haW50Cis4MzY4NSA4YTllOTc2MTI3YWIxMzk3NmY3MTIzZjAyNGQxNzY4YmQwMTY1ZjZjIHJlbGVhc2UyNy1tYWludAorODM2ODYgMzc3NWJmODI5OWIzMTM1NmZiOGM3OWJmMjEzMmNhMjA1MWE1YWNhYiByZWxlYXNlMjYtbWFpbnQKKzgzNjg3IGY0M2Y2ZDE3MzA3NmU5YWI1YTdlNjc1NjUzODdiNGUxNDAzNDlmZTYgcmVsZWFzZTI2LW1haW50Cis4MzY4OCBjZjlmZWEyMmMzYTllMTYxZjljMmFjZTYyNDFjMjQzMmZmNDhiMzNhIHJlbGVhc2UyNi1tYWludAorODM2ODkgZDY4NmYzMDMzMTc0YTkzMDI1ZWJlZjQwNjk4OTI1OTE5MmExZDcyOSByZWxlYXNlMzEtbWFpbnQKKzgzNjkwIDIwZDczZmVjOWY2MjMwMWRkMjQzZGFkYjNmMDNhY2UyOGRhMDY1MGEgcHkzaworODM2OTEgYzFkYzllNzk4NmEyYThlMTA3MGVjN2JlZTc0ODUyMGZlYmVmMzgyZSByZWxlYXNlMjYtbWFpbnQKKzgzNjkyIDVhNzNkZDE1YmUwODRiZTVkODEyMmVmMmE4MmRlZmQ3Y2I2OTc4Y2QgcmVsZWFzZTI2LW1haW50Cis4MzY5NCAyMWE5Yzk0MDExMGQyNjVlM2Q2MzU2YzdmYjg3MzcyODM1YzllMmEwIHJlbGVhc2UzMS1tYWludAorODM2OTUgZmNhM2M5ZmI1YTFiNjNjMjQ1NzE1ODNkMzY2YzhiZDVlMWZjNzY1NCByZWxlYXNlMjctbWFpbnQKKzgzNjk2IGJmNjk1MDk2MjZmZjk1NGExY2NiMjEyNDhlNGM2Nzk1NDAzMjI1NjAgcHkzaworODM2OTcgNmU3OTVlYzM4ZTgwMDgyODUwYzJjOWJhMTYxYmRhODdhNmNlNzQ1NiByZWxlYXNlMzEtbWFpbnQKKzgzNjk4IGFmMzllMjU1ZmVhZDA1NmFkMzAxMmJiYzc2ZDQ2MDQ1MzNiNTA3YTUgcHkzaworODM2OTkgZjBlY2E3NGYwMGUxNGIyZGYyMjU4YTk4MjcwNzZlZDRlYTY5MTZjMCBweTNrCis4MzcwMCAxNDg5ZjM5OWFiYTFlNzFlMDZhMWZmNDM2ZDYxYjYzOTI4NDQwMWFkIHJlbGVhc2UyNy1tYWludAorODM3MDEgZjRjOWY2ZjFmZTc2YTYyZTNhNmIwYjc4NzZjNmM2MmMwMjhlODE5MyBweTNrCis4MzcwMiA5MTViMDI4Yjk1NGQ3NWMzYWQ4M2FhOTI2NGUzM2U4ZjNlMmRlYWQ3IHJlbGVhc2UzMS1tYWludAorODM3MDMgNTgzMzQzNTc4NzMyZTJlYjM0ZDgzZWM5NGMwYWJmMDQ4ZmFlZmYzOCByZWxlYXNlMjctbWFpbnQKKzgzNzA0IGIzZmRkNDQ1ZTAzNzlkNzMxNDQ1ZTUyZGNjZjg1N2ZhOWM5MDI2MGQgcmVsZWFzZTI2LW1haW50Cis4MzcwNSA4OTg5M2EwMDIyNzNlZWM1NTllMjM3ZTdhOWY2ZjY4MDM5NTY3NjgzIHB5M2sKKzgzNzA2IGJhNzM1MzE0NzUwNzc3ODZjZjhmY2NhYmRhMTU2YWRkMmEwZjI4Y2IgcmVsZWFzZTMxLW1haW50Cis4MzcwNyA0YzRkOGFkZTlkYmFhMTZjNTMzYTFmNjkyYWQ4MDJkMGI1Y2Q3ZDk3IHB5M2sKKzgzNzA4IGY1OTg0MjNhNDYyMTY5ZjczMTIwMGRkZGQyNjhmNDE4MTQ1YTM5OGIgcHkzaworODM3MDkgZTY4ODYzNTk3MDYxM2Y1MWIyNTY4NzY1Mzg2M2ViMjQxMDQyOTVmMSBweTNrCis4MzcxMCA3NzE5Y2M3ZWNmNDU0NmFhZDJmMDNiOGE3ZjNkZTdkNWQ2MzcxOGZlIHJlbGVhc2UzMS1tYWludAorODM3MTEgZTVmMTI1OGNmYzU4OTVmMTA2OThmMWJlNGYwODM3ZDkwMGNiNWQwMyByZWxlYXNlMjctbWFpbnQKKzgzNzEyIDZjMTJiMTcxNzkyZTI1MGY4ZTc1YmRmNDBmZGVmNDdlN2YxNWM4ZWQgcHkzaworODM3MTMgNTkzMTExMmVhYmU3N2ZkMTA4N2YxZmM2YWQ3M2QzNDNhM2QyYzc5NCBweTNrCis4MzcxNCA3MTZlNjAxNTcwZGExYzUxOWE0OTI0OGY2MzA0MmYzZTQyYjZiMmFiIHB5M2sKKzgzNzE1IDQ4NWMwNTRjOWFhMTY1MTUwY2M0YTBkZjBjZjQyMTIwYzk3MTQzZTMgcHkzaworODM3MTYgNzA0MmZhNTM5ZTdjODE1NGNiYmMwMGRiYmU5NmU1OGQ4MTllZTRmMSByZWxlYXNlMzEtbWFpbnQKKzgzNzE3IGM1YTI4Mjc5N2Q1ZTM1MmVkZDAzMDhiZjFmNDY4NDNiYzVmMGZlYzAgcmVsZWFzZTI3LW1haW50Cis4MzcxOCAwZTQ1MjlkNzMzYWM0MWExY2QzYzMxZjQ4OTRmYmYyNGI1ZDJjOTA5IHJlbGVhc2UyNi1tYWludAorODM3MTkgNTc2Yjc2NTg0NGFmOTJkYTUzMzZjYTE1ZDQ5NzcxZjk4MTNmNTljOSBweTNrCis4MzcyMCBiMzk4NDZiYzdiYTU1NjdlM2Y0YTdiZGUzYTZhNDM3YjgzZGQ2ZWY2IHJlbGVhc2UyNi1tYWludAorODM3MjEgY2IzNGNkNjMwMDAwMjAwYTM5Y2ZkMjZjZDU5NjE4NWY1ZGIxYTA4MiByZWxlYXNlMjYtbWFpbnQKKzgzNzIyIGZkN2Y3M2UxMjU2ODAwYzcwNzE2YmU2NGE5NTgxNDU3M2Y3OGI4NjAgcHkzaworODM3MjMgODMwNDNjMTUyNTY2ODFlNmVhNWNlODVmZDBlNGMzMjY1Njg1ZmFhMCByZWxlYXNlMzEtbWFpbnQKKzgzNzI0IDlkZTU2YzQzMTdjOTQzZTBhOTBhMzFmMDQ0MTI0MTQzMmMwNWJkMTcgcmVsZWFzZTMxLW1haW50Cis4MzcyNSBiNGE1MzMyZDJiY2FjY2E4MjJlZmM2N2YzMTVlOTIzMmE2NGE5ODA2IHJlbGVhc2UyNy1tYWludAorODM3MjYgMmQ4OGNhNjRhOTBiYzFkMThlNzhhYWVkY2ZiYTMwM2FjOTIwNmRlMiBweTNrCis4MzcyNyA4MjgyMjdhMDA1Mzg5OGJhZTQyN2EzMjI1ZDljOTBiZDI4ZTExNzA1IHB5M2sKKzgzNzI4IDM1ZmVlOTIxMWYzYjU4NWM5ZGE1NTkwZjkzYWExOTJmZGNmMzE1OTYgcmVsZWFzZTI3LW1haW50Cis4MzcyOSA4ZjRmNDY4ZmUyOWUwOGFmYzYxYmQ0ZWE2MTk5ODRiMzZkNmE3NmIxIHB5M2sKKzgzNzMwIDljNzA0NmZkNGQ2NjcyMDk3YmMwNTA5ZDQ3ZmQ2YWIzYzhlYjI2NjMgcmVsZWFzZTMxLW1haW50Cis4MzczMSBjYTdlZDk0MWJjYjkzNDQxM2VkYzRjMzQ2OTNhYTYzNDFkMWFkZGRlIHB5M2sKKzgzNzMyIGNhNmQ2ZWQyM2IyMzhiNzk2NzNiMDRiYTRmNDg2NzRjYTEyYTJlNTkgcHkzaworODM3MzMgOTVmZDRmYzI3YjliYjVlY2M5MjQyNWU4ZjIyNTgzZDM0OGVmMzNmMiByZWxlYXNlMzEtbWFpbnQKKzgzNzM0IDU2YWI5ZTExMWMxYzBmNWI3Mzk5YTc2YTEyMWRhNzc4MjgyYjE0YzkgcmVsZWFzZTI3LW1haW50Cis4MzczNSAzNDc0ZGRmMWViZmU0YTM4NDFiM2U5Y2FlMGMzMzc1YTNjNTkyM2Y5IHB5M2sKKzgzNzM2IGVhZmUwN2Q0MGViNzM1OWUwN2IxOTQwZTljOWZjNjhjMzMyZDk5ZmIgcHkzaworODM3MzcgYzE1YWNkMWU5MTZiMzUwNGY0N2IwMDgxZThmMTE0NmU4ZDVkY2NmNSByZWxlYXNlMjctbWFpbnQKKzgzNzM4IGExODVjYWVkZjMyY2ZlZGRiODQxOGQxZjE5MzFkNzMwMWQyZjk5ZmMgcmVsZWFzZTI2LW1haW50Cis4MzczOSAzNWJkNTdkM2QyMzJjZGJkMzYxZDdkNzkxZmE2YTc0NzljYzkwYzYzIHJlbGVhc2UyNy1tYWludAorODM3NDEgODEwMDAxNzkzOWY0OTljN2Y4NTZhMzU3ODdmNDAyMGVjOWZjMjcyMiBweTNrCis4Mzc0MiA2MzM5YTdiMzI0NWNjYzNlZmFmZTY3MjEzNjU5ZmYyZjMxZTgxYTc3IHB5M2sKKzgzNzQzIDY3NjUyYTdmMGFlZTIzNzg3YTJkYTExMWJhYjkyMTJmM2VlZTAwY2UgcmVsZWFzZTI2LW1haW50Cis4Mzc0NCBjMTY4MDNiYmQ3OTBkNzMyYTk5ODVlOTM4OGM4ODMwZjgzYWUxYWM4IHB5M2sKKzgzNzQ1IDcyZjAwNjcwNGZiZGM4MTQ1MmY0NTcyYWUwMzJjZWFhZjE3MjdkY2EgcHkzaworODM3NDYgMzg0ZDIxODlhOTZhOTAxZjY5YTFlNjYwMWJlNGQ0YzNiNDJiZmFiZiByZWxlYXNlMjctbWFpbnQKKzgzNzQ3IDI5MjI2YzA4ZTU0N2Q4ODgwYTQ0Y2UzOGI1NjFmNjZjNjliNmQ2MzkgcHkzaworODM3NDggYTAzNzM5YWY5ZDM4NWViMmI1ZjkyMWE1NzJmODBjZTc5Mjk1NmQ1ZSByZWxlYXNlMzEtbWFpbnQKKzgzNzQ5IGZjYjdlMzU5MjRlNjM0ZmNlYjMxZDJiODI0NmRkNjliODU4NjdmOTEgcmVsZWFzZTI3LW1haW50Cis4Mzc1MCBiYjJhMzE1ZDZhMDM1MDAyZDEzYTk5MjNhNDJiODNmYWYxZmI5MWE5IHB5M2sKKzgzNzUxIGY4MDZmYjNkMWYyNzc2MzliNzU4NWMyOTkzM2NhOWFjMWFmODFiNmMgcHkzaworODM3NTIgODhjZjlhMGVkMTE4MTNmNTk4NjA5YjQ1YWE3ZDFkOWI5NWJjYWI4YiBweTNrCis4Mzc1MyA2YjI4Yjg4ZjZjNGU4ODVmNGM4ZjEyZmFhZGNjNGUzMjIyMGE1ZjMwIHJlbGVhc2UzMS1tYWludAorODM3NTQgYjkwNmU5ZTVmMmE3ZmE5Mzg0MGI1YzZlNTE0NGQyOWUzZTExY2E1NyByZWxlYXNlMjctbWFpbnQKKzgzNzU1IDc2Zjg0MDJjYTdmMzU0MGVmMDMyNGNmZmViOGExZjhkZDcxNWM3OWMgcHkzaworODM3NTYgZmE2MzE0YjE0MWRjNDJkMjdhNzkwNThkYThlZTc0OTdlM2U3MmY5YiByZWxlYXNlMzEtbWFpbnQKKzgzNzU3IDBmOGE0ZmNmZGQxZTU5NGMzZTA0NGE2ZjU5Njc5Y2U2YTM3Y2MwNmIgcmVsZWFzZTI3LW1haW50Cis4Mzc1OCBiMDYyMjJmMTU1ZmY1ZWQ1YjM1YTY3MGU1ODM1YTUyZmZlMzI3YTMxIHB5M2sKKzgzNzU5IGFkMjkyZmNlNzlmOWVjYjM2MmZmMGZiNDNmZmMxZjc4NGU3MTJjNzUgcHkzaworODM3NjAgMmMxMDUxMGExYWVmYzU1NTVkY2NhMTNmMGE5YmNkZDExMDRiZDMzZCByZWxlYXNlMjctbWFpbnQKKzgzNzYxIGJiMjYwOGY3M2ViN2M2ZDM0ODJmOGQ5NGNjZmQzNzZmMDk3YjQwZjkgcmVsZWFzZTMxLW1haW50Cis4Mzc2MiBmN2JkMjhiM2M2ODM5NGQxZDZjOWMwMzk5OGFiMDUwZmU0NDE1ODRhIHB5M2sKKzgzNzYzIDhjZTY5MDk2OTZkNDJmMTc2MjgxOTk4Yzg0ZTEzMDA1ZGE4ZmFjMzMgcHkzaworODM3NjQgZDE0ZTFlNzI0OGJhM2Y2ZmFlYzkwYTBiNjA2ODIwMGI0MGY1MmQyMyByZWxlYXNlMzEtbWFpbnQKKzgzNzY1IDMwNzVhN2U4NWMxODgxNDM2ZWQ1NjgyMDA0NWMwZjg0NmM5YmY2MDYgcmVsZWFzZTI3LW1haW50Cis4Mzc2NiA3Njg2NGFjNWI2N2QwMTI2M2RlZjgxZDI3MGUyMDY0YjAxMjkwYmI2IHJlbGVhc2UzMS1tYWludAorODM3NjcgMDZiYmRkYTEzMmYzNTQ5NThjYWU3NTg4NTA2NjllNzQ3NDU0MzkyYSBweTNrCis4Mzc2OCA0M2U2YmY4NmMzN2YyYzMwNDhkNGU0MDU2YmY1ZDZlYzc5YjI3ZTBmIHB5M2sKKzgzNzY5IDA4YWVkMDBmYmVjMzM5YTBkN2YzYzFmZjU1MTczOWUzNGEwMmUzNDAgcmVsZWFzZTI3LW1haW50Cis4Mzc3MCAyNjBhYmU5Y2VmYWMyOGEyMzhjMmE4OGNmYThlZmQ5ZDU4MGZiMTQwIHB5M2sKKzgzNzcxIDdiY2Y2MjU1ZGUyZmZmM2QyYjk5MWU1ZjcwMzk3OGVhMGE0OWYwZmMgcHkzaworODM3NzIgMzk0ZTQ4YzUxNmM0YTNiMTIzNjZlYjg3N2I5ZDA4OTJhOGM0NDg3MiByZWxlYXNlMzEtbWFpbnQKKzgzNzczIDQwYjQ4Mzc4MzNhOGI1MzJmZjM3NDU4YTdhYTUyMTJlZmQwNmUwMGMgcmVsZWFzZTI3LW1haW50Cis4Mzc3NCA5ZDFjNjVmODMyM2VmYzJkZWYyMjMzZjY1NTkyM2ZjMGUzNzlmNDZiIHB5M2sKKzgzNzc1IDA2MzI3OWM2ZmMxNjBlMGFkMzkzYmUxYzhmNWMwZDIwNWU4YTJjM2EgcHkzaworODM3NzYgYmNjYzg0ZTA0YTJjYWU3MzA5NGE0ZDNjOGIwZmE4MTRlZWY0OTcyMyBweTNrCis4Mzc3NyBlYzMyMTdhOWU1MjE2ZGZiMmVmM2Q3MmUyMGEwNTNlZjEwYTliMzhkIHB5M2sKKzgzNzc4IDc2MDg1MzJmOTMzYTQ2ZWFmNDJlZjA3YjhkNjQwNzVmYzYzYmI3YTAgcHkzaworODM3NzkgMjc1YWNmY2NjY2NiMDhiNTc1OTNmYzU3Y2ViNDQ0MTllNDM4YmYzOSBweTNrCis4Mzc4MCA5YjgwMmI2YjQzOTUwOWQzYWVlYjc1NGIxYjlkODY3ZjBjODQ2NTU2IHB5M2sKKzgzNzgxIGYyN2IyN2M4MmQ4ZmY0OGJiM2FkYzUwNTUyM2ZhMDU1NzllZWViY2IgcmVsZWFzZTMxLW1haW50Cis4Mzc4MiA3MTc1ZDE4MDVjYzBkZjYwYWVjMWM0NjdmOWRlZjM2NDFmODlkODJiIHJlbGVhc2UyNy1tYWludAorODM3ODMgMGVkNjY1ZThhMTE1NDI5YmZjZjVhZDIzZGI2ZDQ2MjUzOGQ3MWFhOCBweTNrCis4Mzc4NCAyODEzNmFmMDBjY2FiNmQ0N2M5Y2ViYjE1ZWViYWUzZjM5MTY1NjQ0IHB5M2sKKzgzNzg1IDRlMzI1ODg5NDg4OWZiZGFhZWYyYzA1YTQ5ZTIxYzM3MzJmYzJlNzcgcHkzaworODM3ODYgYzZkODkyNmM5OWRmNTg1MGI3MzI1NGZjMGJkNzZiYzRlYzRmZjAxNCByZWxlYXNlMzEtbWFpbnQKKzgzNzg3IDg3ZjMzMzAzODAzNWU3OGMxZjkwOWE5NGYyOTBiNmNmNjBmNjJkM2UgcmVsZWFzZTI3LW1haW50Cis4Mzc5MiBjMWQ3ZjdmZTQ3YTA1NzA3MDdlNTY5NjRiMTFlMDY3MTQ0ZjQzMDIzIHB5M2sKKzgzNzkzIGZiMDZmYWIxNmEzZmU2MDViOTJhMzlmZDAyMTJhOWNjZjgwZmY3NmMgcmVsZWFzZTMxLW1haW50Cis4Mzc5NCBhZThjMjVmOTRhZGY0ZDM1MTlkZGU4ZDE4ODE0NzFlMWM2MTI1Yjg0IHJlbGVhc2UyNy1tYWludAorODM3OTUgZDk1ZmJjNGFlZTdjM2I4ZTYxMjIxYTdjOTlmOTkxODExMTcwNGY0MyBweTNrCis4Mzc5NiA5ZDNiYTBkNjY1YTY1MDhjNDE3YjUzNThkNmVkYjNhOGVkZTFjMGMxIHJlbGVhc2UzMS1tYWludAorODM4MDIgMjRiM2RlZDUxODI1NGMzYWY3YjMzNzJjNzI5MTY4YWFhMDM4YmY0ZSBweTNrCis4MzgwNCA0ZWZlZDYyZWFjM2E4NmMxZWRmNjI0NTUxZGUyNmJmMzE1OTg3YmEzIHB5M2sKKzgzODA1IDYwM2MzNTUwOGIzNjNkYzNiYmU1Y2VlNzdmODE2ZWM4MDQwZGQwODAgcmVsZWFzZTMxLW1haW50Cis4MzgwNiA3MDk5ZWMwYmNiZDJjOTkyOGIyNjA4ZGQxNzk5ZmNjN2YyZjc3MmFhIHJlbGVhc2UyNy1tYWludAorODM4MDcgMTU4MzljYTQzZDk2YTM1ZTNmMTg5ZjE1NmE0NjEyNjlhMmI2ZGM1ZiByZWxlYXNlMzEtbWFpbnQKKzgzODA4IGJiZTIyMjNlMzc1MDZhMDRiNTZiODg4ODU0OTRlZWRjNTJjMjNiYTQgcHkzaworODM4MDkgNGJjZDUzNjE3YTY1NmJlZDczNTBhNjgzOGE0YjYxNmM3MDQyYzg2YyBweTNrCis4MzgxMCAyOGZlZjllN2MzYmI3MzJmMWYxNjA5NjhhMGU2ZDUzOTg4MGE5MDUyIHJlbGVhc2UzMS1tYWludAorODM4MTIgOTI0NzM4YWFiNzBmZGQ2OWRlZDE1MGEyOTZiYzk3NjEzMWI4YmVlNSBweTNrLWR0b2EKKzgzODEzIDhjMjEwZTYxY2E3NzU0MTBmNzJmODRkYTEzZTY4YzYxYzY5YjZhNjkgcHkzay1kdG9hCis4MzgxNCBiZmZkMWUyODU0YjNkMzZiMTUzNTg4ODk3NzAwNzNkNzUxMGYxMTE2IHB5M2stZHRvYQorODM4MTUgYTBiZGNkZDBmMDg2NDM3YzgzMWNmYjE4MjQwN2U4NWE0ZTk3ZGE3MiByZWxlYXNlMjctbWFpbnQKKzgzODE2IGU0MWNhNjY3MmY4MjJlMDk2Y2U2ZTY5ODVkZDIwYzM2YzU1MGNjOGEgcHkzaworODM4MTcgZjRkOTJjNmQ0ZDQyYTUzZDA2MGE3M2U4M2FiZjliM2JmZDBmMTgzOCByZWxlYXNlMzEtbWFpbnQKKzgzODE4IGJmMzM1OWI3ZWQyZWQ1YTdiNzliYzI4NDU2YWUzMGJiNDQyNWYzZGUgcHkzaworODM4MTkgZTYxYTA5NGI0ODE4ZDQ1OTMxN2ZlM2M2MjBiNWNlZGVhZjUyZTlmNyByZWxlYXNlMzEtbWFpbnQKKzgzODIwIDRiMjRiN2E0MjBjOTI3ZmU1MmFmMDJkMzRhYzAwNDlkZTE3NDEyN2QgcmVsZWFzZTI3LW1haW50Cis4MzgyMSAwMTc4NzU2M2UyY2IzNDRmZTkzNDE3M2E0MDdiZTVjOWIyMjc2ZmI0IHB5M2stZHRvYQorODM4MjIgMDM3MGMxMWZkMjFkZjNkNGE5NDRmNzBhYmRmZjMyZGIwMzQ2MjVkZSBweTNrCis4MzgyMyBiNmZlYjY3YTA1ZjFmMTZmYWI3YjNlNTFmYjZjNzVjZTRhZjJkN2JhIHJlbGVhc2UzMS1tYWludAorODM4MjQgZTE2NTYwNTg1ZTM1YzZiMzY0ZTMzZmU2MDMxNGYxMDk5NGI5OTVkMCByZWxlYXNlMjctbWFpbnQKKzgzODI1IDVlYTcwN2QyY2FhODhlOWZmMzFiNjUzNGUxZmZlZTgwYmQ4MmFmNjkgaW1wb3J0X3VuaWNvZGUKKzgzODI2IGJlMTU5ZjNkYjVkNmFlMGRlMzE2MmRiZDI1MGQ3YjY0MjZhZjFiMjggaW1wb3J0X3VuaWNvZGUKKzgzODI4IDEwODZkYWQ1MGM3NDgwOTIwZDgzMGUxZWM1ODU3NmY3NWYzN2E0NTkgcHkzaworODM4MjkgNmIyMTg5ZDhlOGM0NGQyZjQyMjBiYTFjYmNmNTZkY2NlYzYxN2Y5NiBweTNrCis4MzgzMCBiNGY1NDYzOWI3YjE5NWNmOWI3ODA1MTk4N2FiZGIyYmZiYjQ0MTdkIHB5M2sKKzgzODMxIDk4M2YxMTBhMjI0ZTJhNDVlYjU5ODNmOWY3NWYwZGUzOGVmZGViYjEgcmVsZWFzZTMxLW1haW50Cis4MzgzMiBjYzVhMjQ2YjJkYTFiYjgyZThmMTdmNDQ2OGQ2ODEzZGI0OTEwZWIyIHJlbGVhc2UyNy1tYWludAorODM4MzMgNzVlYmU2Y2M4MDgzMzUxYTU1ZmIxZTc2OTNjZmIyZmQ3NTRkOTMzOCBweTNrCis4MzgzNCBjNTJmNWRmNTA0NDg4OTc1ZDlhZDlhMmE5MzBlNjE4NmFjZTQ1M2M2IHB5M2sKKzgzODM1IDg2ODNhZWE0YjcyZWY4ZGM3OTkxYWIzZDhmODQxNTcwODFmZGNjNzkgcHkzaworODM4MzYgZTEzZWE4M2UyZWRiM2RlMjJlNzJkZTUzNzRlMjc2MWVhZmE0NWJjNyByZWxlYXNlMjctbWFpbnQKKzgzODM3IDQwZDExYjgxMzlkYTUwYjA0N2ZlYjJmNWY4MTkwYTk1NjJmNGZkNWYgcHkzaworODM4MzggNTE1ZTBkNzA1NTQzZmU1NzU5N2U3YTI5NDQwZTZlNjlkZTE5OWFmOSBweTNrCis4MzgzOSAwOGUwNWQ0MjRkOTdhNjI5MzAzOGRkNWVhM2ZkODBjYzU0MDAwZDhlIHB5M2sKKzgzODQwIDYwYWM0MWFlN2YzMTIwZDA1NmNkNjBkOWJiMTQ5M2Q0NDM2YjUxNDAgcmVsZWFzZTI3LW1haW50Cis4Mzg0MSBiOWQxOTgwMjE3NDU4OTQyODc2ZTI3NzFlNGZjZmZkMDgzZDI2MjVjIHB5M2sKKzgzODQyIGRmMjU4OTE1ZjUyZmNiNGFhZjM2Y2YwYjU5NmQ3ZDkxNzE5OGY4N2QgcmVsZWFzZTMxLW1haW50Cis4Mzg0MyA1ZTdmMTVmMmMwYmU2Y2NlYjFmMzlhYTM0NWEyYmY4MDYxNGRkOWJjIHJlbGVhc2UyNy1tYWludAorODM4NDUgOGIzNzk2Y2MzMDllOGY5ODA1OWViMmNiNDZmZThjYzY5YmFiNmE4NyBweTNrCis4Mzg0NiBjYzBlZTZiYjVlOWI4NzFlZGZkMTkyOGIwNWE3NzE5ODQ2NDRkNjYwIHB5M2sKKzgzODQ3IGZlZmZjMWEyNTk5YzczZTc1OWMwZTg1MTE2NDU3NDEwOTJiZDRiNGMgcmVsZWFzZTI3LW1haW50Cis4Mzg0OCA3NmJhNDFiNzdmNTM4OTM5NTI4NDlmNzEzNjFlOWQ2YTMyODJjN2M5IHJlbGVhc2UyNy1tYWludAorODM4NDkgNDQ2MTlhNTY2YjZiNjM2MTNmOWJhOWYwYzBkMjAwYjgxZjdhYTA4OCByZWxlYXNlMzEtbWFpbnQKKzgzODUwIGZhODYyMjI2NTYwOTEyMDcxZjY1N2MzZDYyYjc3NGQ5YTk4YTU2NzUgcmVsZWFzZTMxLW1haW50Cis4Mzg1MSA1N2U2MzFmMDg4ZDczNjA1NDMyODQ3YjNhNDRmOTEzMTg4NWYwYjU0IHB5M2sKKzgzODU0IDRjYTQ5N2Y0ODE5Y2ZkYWQ4MjY3MDFiYmE2N2QxZTNlNTFhYzJlN2YgcHkzaworODM4NTUgNzdjNmY2MGExYjI0MGI1MDlkZGNjYjRhMjllMGNhMzZlZTVmZDdmNyByZWxlYXNlMzEtbWFpbnQKKzgzODU2IDU1YzcwZTc5YzY4ODg2N2MxMWQ3Mjg4Y2YwNDQwMmFkNjIzNjU5ZTggcmVsZWFzZTI3LW1haW50Cis4Mzg1OCA1NTM5NzUzM2RhNTE4YTAzYmI0M2M4YTNiMmQ1MzdmMTAyODI4ZjQ0IHJlbGVhc2UyNy1tYWludAorODM4NTkgZWI1YWE5MWYwZTE2ZjZkZGIxNDc0OTkzN2U0MjhiZTdmNjNlZGZlMyBweTNrCis4Mzg2MCA3ZDQ0MjVlMzA4ZjdiODUyNjZlYmIyMDNhOGY0NjIzNmU0ZDU4ZmFkIHB5M2sKKzgzODYxIDFiZDM1MzQxMzZhMDM2NDM1NzNlYTliZDQ0N2Q1YTY5ODU0ODVmNzggcHkzaworODM4NjIgMWFkNTkyMmFlYzQ1M2U0NzAzMTdmMWYwYWYxYTc0MDI3NzlkY2YwZCBweTNrCis4Mzg2MyBkMjI4MDY4MThmZTNhNTNkYjQwM2UyYjIyMTQyZmQ2MTRlZmRjYTZmIHB5M2sKKzgzODY0IGVhM2EyZDFiZGVkMmEwNWI1ZGQwNzMzNWRkZjFiY2QzZmFkM2ZjMjAgcHkzaworODM4NjUgOGQ2YjRmZmMwNTEyYWE0NzE3MThhYzVjMjY5YzU1Mjc1OGU2MGI2ZiBpbXBvcnRfdW5pY29kZQorODM4NjYgMDIxMzUxNTk1ZmFjMzZiMjE3ZmQyMmFlMTY4OWQ2MjcxNWE2ZjhlZiBpbXBvcnRfdW5pY29kZQorODM4NjcgMGRhM2I1OWMzZDM4MDYxN2NiNWI2YmY1NDg1NWFmOTMwZmRkOWMxMiBpbXBvcnRfdW5pY29kZQorODM4NjggZjgxMmI3OTY0MTE5OWEwZTk2ZDkwZWU3ZmY5YzljZjQ5MzM0YjkxYSBpbXBvcnRfdW5pY29kZQorODM4NjkgM2Y4Y2VmODM3ZjA3M2MyYmMzNzc5NzA1MWIyYTVmZGI5NmVmMTRjZCBweTNrCis4Mzg3MCAxMGM5NWMwZjM0ZDM1NWJlOWY1ZDY5N2U5ODc0NTM5YjJjOGM2ZWZkIHB5M2sKKzgzODcxIDUyMzU0Y2IyOTY0NDkyNmExOTU5ZGQyYTJiNDI0MTQ5YWQyOGJiY2YgcHkzaworODM4NzIgOWM0NDViYWQzNWIwODZkMDQxNzMxMzBhNWY5ODRjNWI4MzQ4NWNmNyBweTNrCis4Mzg3MyA3ZjVlMTE1ZDc2ZGZhZDNmNjQ4ODUzY2QyZjE3YWVmYzJhZjRkYjg2IHJlbGVhc2UyNy1tYWludAorODM4NzQgYTEzYmRiMmI4Mzk4ZmJmMTkxZDMyMTJjYzIyMWQ5ODk3YzE5OTRiYyBweTNrCis4Mzg3NSA4Y2UxZGYzNTI4Yjc2ZmNiMmFlZTJiNzBlZTcwZTlhYTllMjk0NDhjIHB5M2sKKzgzODc2IGM3OTk1ZTliYzJlMzZkOWYxYTIxNjcxNTAyYzU3MGNmZmU3M2JkYWEgcHkzaworODM4NzcgOGI5M2NmMzNiOTg3Yzg3NzlkZWNmNTgwMWJhMTVjNTFhZWE5Nzg2ZCBweTNrCis4Mzg3OCA2ODhlZGJiYmU2NTgxNzVlNmI4ZmUzODA1N2U3ZmE3YzYwYmYxOThmIHB5M2sKKzgzODc5IDVlM2M2MWNiNzAxNDFkMzYzMGQzZWUwYmQyMjZkZDgyZjMwZDIwODMgcmVsZWFzZTI3LW1haW50Cis4Mzg4MCA5NDY4ZDEzMDQyODQyNWQyNjUyMTkwODJjNGZlOWVkZmE2ZTkyMDFhIHB5M2sKKzgzODgxIDNhZTk1ZjIwNzYwNjM0NGY0MjNiNTVlZmIyOGI1ODgyN2Y2MWFlYzQgcmVsZWFzZTMxLW1haW50Cis4Mzg4MiA3YjdlYmY1NTg4OTQ4NTQ3MzhjNDE4MzRkMTM0ZTVkMjlkYWY4NzdhIHB5M2sKKzgzODgzIDAwMTUyOWQ2NDdmZTQ5ZGFhZDE0MDFmZjMyMzU1M2ZkNWU4YmQ2NTIgcmVsZWFzZTMxLW1haW50Cis4Mzg4NSAzYTRiZTlkMjVhNWY4MzA2MGNkMjdkODFlOTY3ZGUyNzI4YTI4MDY4IHB5M2sKKzgzODg2IDVhZTM5MGFjNmM2MWQ4YWU5YTZkOTdhNDQ3MGQ4NWE3OTU4NzUzMDMgcHkzaworODM4ODcgNWMwZDVkZTU2ZmRmOWFhYmU4OTUwMTdkODVmZWU2MDFmZTFlNzkyOSBweTNrCis4Mzg4OCBkZTA4MDk3NzJkN2U3MDNlMGQwOTExODY2OWE0MWYxOTFmYzYzZmNlIHB5M2sKKzgzODg5IDhiYTA5Y2RiNmZjNDhiMmFkZjBlYzZiYzc2YzE4MjFlODkzYThjZjcgcHkzaworODM4OTAgNzk1ZWIxMjQwM2I5NDQyMGRiNDg4YzQwMzhmNmRkZWVkMmE0MjY2YSBweTNrCis4Mzg5MSBkZmJiZTdiMzBlOTAxYjM2ZmE0NTE4NDg5YjM5NzY5NzI3YTE2YjhkIHB5M2sKKzgzODkyIGUxNjA3OWM2YTQ4ZjU4M2NkMzY4ZDhmNGYwODA2ZmZjZjc4MTZlZDggcHkzaworODM4OTMgZjE2MjdjZmNjODkwNTBiNmY3NTM2OWE5ZjQzMWQ1NjNkOWRlZGEwYyByZWxlYXNlMjctbWFpbnQKKzgzODk0IGMzOGYzYjk2OWI0YWU1MDQ0NGNkYjViNjZjNzBiZmIzN2U5NzMzNjcgcHkzaworODM4OTUgN2RjMzdhZTE3NWZjZDU3MDdlNzRlNjBhNTFlMDY0Y2ZmOTc0OWQyYyBweTNrCis4Mzg5NyA2ZmIwMzEwMzdmMjliNTBiYjk0ZDE3MDIzMDljZmE3MjMyYjlhYTY2IHB5M2stZHRvYQorODM4OTggMzU1ZDcyNzM3MzY0ZmJkZDg1OTllOGYzMzczYTQ4OGNmNTI3M2JmYyBweTNrLWR0b2EKKzgzOTAwIDcyZDA1MDRlNjQ4OTYwNDI0ZmIyY2I1MWRjYjhkZmI3OTFiZDRiYjggcHkzaworODM5MDEgYzg5YWQ2ZjljZGRjMTgyMjNjZTRjNzE1ODRjZWNhNDkxOTlkMTI5ZSBweTNrCis4MzkwMiA5NTExN2FhYjlhODZkZjcyZDJmMTliYzFkMWZhODY3ZDU0N2EwZmEzIHJlbGVhc2UyNy1tYWludAorODM5MDMgNTAzODhhODNlYzNmN2UwYjJjOTQ2YmMyYjJlNDRmOGM5ODRjYWJiYyByZWxlYXNlMzEtbWFpbnQKKzgzOTA0IDUwZjhmNTI0N2M4MTBhZWI4MDE4ZTRjYTM3YTQ0ZTA1YjY3OTI2YzkgcmVsZWFzZTMxLW1haW50Cis4MzkwNSAwYWU3MDZhNzFhM2E1MGRjMWQxNWI5NWQwZTk1NTRiZDAyMjE3Yjg2IHJlbGVhc2UyNy1tYWludAorODM5MDYgYTU2ZDhhODBiODgzOWU1NTk3ZGZkMzA1YTc2NDIxYTYzODliMzExOSByZWxlYXNlMjctbWFpbnQKKzgzOTA3IDQ2ZDQ4ZDcxNTQ0MmZjYmI4MDJlZWQzOTc1NmZkMzIwOTI5ZmI4MmMgcmVsZWFzZTI3LW1haW50Cis4MzkwOCA2MDA3NmYyOGMwMjNhYzZlYWEyODg1ODIzOWQ4YmY3ZTljYmYzNjBkIHB5M2sKKzgzOTA5IGMyZTFkYjMwZjc1NjJmYWNlNTBkYTFhNTQ4ZGY3ZDU2ZGIwZjcwNGMgcmVsZWFzZTI3LW1haW50Cis4MzkxMCAzMGNjMjdlYjM1NGFjZjUxYzQ2YmRlMmYyNzEwNTE0Y2U2YjhmMWNiIGJidGVzdAorODM5MTEgOTg1MzY1OGE4MzU1YmJmYjhlNDM4ODMyNTViMTIwMTIyMDRlNzk4NCBiYnRlc3QKKzgzOTEzIDI5YWY5YWJjNzZjYWRhMTUzZmFjNzE4NjJmOTAzNGFmMmI0ODUxYWEgcmVsZWFzZTI2LW1haW50Cis4MzkxNCBiMTg5MmI3ZjE5NjZmNGVjOGI5MzA3ZmZjNDk5MTBlNTEzZjE2ZjFkIHJlbGVhc2UyNi1tYWludAorODM5MTUgNGM1MjNlMWVmMTBmMmI3MjFmNjA3NGMyYmZjNjEzNDEyY2QzZWY4MyByZWxlYXNlMjYtbWFpbnQKKzgzOTE2IGMzOTEyYWFjMWI3M2Y2MGY5YjZjZTk3N2JjMGU5ZGRmMjZmOTdmOGQgcmVsZWFzZTI3LW1haW50Cis4MzkxNyA2Y2QyOTJjOWMyOTYwZTgwOTc1MmM1ODAxMWI5YWM0YzYzNWE1ZmMxIHJlbGVhc2UyNy1tYWludAorODM5MTggMzcxNTY5MDdmMzU5Y2I5ZGE1YTg5YTJjOWFlZTY2ODg1MDAzYjE0NCBweTNrCis4MzkxOSAxMDliZGU1ZTQxYjk0NGVmM2FkZTk4YWM2MTQ4ZjZiYzI2ZTRhNThjIHJlbGVhc2UzMS1tYWludAorODM5MjAgYjY1ZGNlNTkwMmEyODQ3YmZjNTM5YTc1ZDQ0MmZkYzQ5ZGY2MGFhYiByZWxlYXNlMjctbWFpbnQKKzgzOTIxIGZmOTYxNGVkZjNhMDU0NmZjNmYxNWI5ZjJjMDU1ODBmZTZiNDM2MjkgcHkzaworODM5MjIgMTRmYjY3ZTdmYTA0NjhjMTA3YjZkMTE4NWQ4NDMwMTM5N2ZiM2MyOCByZWxlYXNlMzEtbWFpbnQKKzgzOTIzIGZhNDg1ZGNlYTYxM2U5MTVhMzllMTQ5MTU4MjRiYmMzMWVmYzMyNTYgcmVsZWFzZTI3LW1haW50Cis4MzkyNCBiY2VhMzVhMmQyZDJiZDk1ZTEwNWQ4ZThiMTJjMWQ1MDQyMWRhMjc0IHJlbGVhc2UyNy1tYWludAorODM5MjUgMTlhZjA4Mjg3Y2M3OTI5M2YxNjE0OTU1OWI4NTE5ODdjYjk0YjFkMCByZWxlYXNlMjctbWFpbnQKKzgzOTI2IGFkNmM4ZTIyODcxMmU0Yzk0MWM5ZmE4Y2E1MjFlZDg0NDUyNjRlNmYgcmVsZWFzZTMxLW1haW50Cis4MzkyNyBjMmRiMjdhYTZiZjI1MDBiYWNiYmM4ZjUzOWM1ZTQwMGYzYzAzNjljIHB5M2sKKzgzOTI4IDEzMjJlZjNjNGE2YzgyOTJlODBkOTlhY2VhZWQ0YTQ2ZGNkYTZhNzcgcmVsZWFzZTI3LW1haW50Cis4MzkyOSBkZWExZDI2OGUzNGVkNjdmMTMyY2Q5YjA1ODFkMWQyYTZiNWJhMzU2IHJlbGVhc2UzMS1tYWludAorODM5MzAgOWUwMDNhMjYyMDkzM2M5ODZiYjVmMTM4MGExYTc4Yjc1MTliZjVmYiByZWxlYXNlMjctbWFpbnQKKzgzOTMxIDRmNzZjZTY5YWVkMGRjMjc0NDRiZDM0NWI5ODA3MTM5NWUzMmI2MWMgcmVsZWFzZTI3LW1haW50Cis4MzkzMiAzOTA5MmY4NmIwYWYzMmRlYTVjMGIwOTUwYjFiYTAyY2VlMzkxMzNlIHB5M2sKKzgzOTMzIGEzODUzYmZhMjUxODE2ZGQ1NzFlNGI2YzVkOGJlMjc4YzE1NWQwNzYgcHkzaworODM5MzQgM2Q2YTAyZjBhMmQ4YTdhZTM3NzdjMDVlYjk4ZTZiMTE0ZDUzNjIwOSBpbXBvcnRfdW5pY29kZQorODM5MzUgN2U1MjVlMTI1YjcxNWUzOWExNjZmM2FiZTdhYWU5YTdkMzRjYjM5MCBpbXBvcnRfdW5pY29kZQorODM5MzYgN2RkNWY1Y2ZhMTc5NDY3Njc5MzU0YjJiNDAwNTc0NDI5MjdjMDk3MSBweTNrCis4MzkzNyAwYTFhZDliMTE0OTYyMjU1ZDIzMDUwZTkwNDEyMmRkZDYzMTY3OTRkIHB5M2sKKzgzOTM4IDJjYjU4MTc0YWE3ZGEwNzJjNTlkNTUzMWI0ZTZjMDliZTU2NGUzYmYgcmVsZWFzZTMxLW1haW50Cis4MzkzOSAyOWUyMGJkYjJiMTFhYjBjZTE0NjczNjY5ZjJhM2JkNWQyMjYxZGY1IHB5M2sKKzgzOTQwIDQwNTU2YWU0MjRiNzM3OWY0ZTRhNjEyZjJjOWRjMjdkOGU5MTgwMDQgcmVsZWFzZTI2LW1haW50Cis4Mzk0MyA2ODk2OWI5ZGMzYjA2MDA1NmNkZGE2ZGJmMDUyOGQzNWYyYzMyOTlkIHB5M2sKKzgzOTQ0IDczNjQ5NDA2NzJmMDA0NDcxM2VlYTQ4YWMzZmM0NzMxN2VhNzExZjkgcHkzaworODM5NDUgOTMwYjI4MDNjNzE2NmIyMjNjZTE3MGZhZWY0YzQ4MWFhNmNjZDY4ZSByZWxlYXNlMzEtbWFpbnQKKzgzOTQ2IGMzZmY2ZTkxMDA2OGIyZmU4NzdkNTBkZTVjOGQwZmJhZWY3Zjg5MDYgcmVsZWFzZTI3LW1haW50Cis4Mzk0NyA1NjA2NmE1ODI1Y2EyMGJjZDUyNzRjNGFkNjliODVlNDAxOTI3NWZjIHB5M2sKKzgzOTQ4IDc2ZDQ2M2M5OTAwNjM5NmRjNDE1MTIzMzgxYTFlYjI4ZjNlYTM2NGEgcHkzaworODM5NDkgOTEwOGU3ZGNkN2Q4MDVlN2JjZDA4ZGIxZGQ2YzYxNWEwNmE3NzZjMCBweTNrCis4Mzk1MCBhMWRlNDYzOTU2NGU1YWYxZDllMmY3NDJkY2JkODU5YzBkNDM4MWMwIHJlbGVhc2UyNy1tYWludAorODM5NTEgZjIyZTk1MDU1MWFkMmI4OWMwNDhjNDVkODBiYTViYjA3YmRmNTgyNiBweTNrCis4Mzk1MiAzZmE4ZjQxYTExMDNjOThjYWYyNjk0YmNhN2VlYTYyMTEwY2M2ZjMxIHJlbGVhc2UzMS1tYWludAorODM5NTMgZDFiMDM1ZTI0MzcyYmUwMTdkZmRkNGRkMjRkMGIxMzZkNDc0OTY1ZiByZWxlYXNlMzEtbWFpbnQKKzgzOTU0IDNkYmJjZDM0ZDQ5NGUyNThiMGM5ZmU1NDBkYjViZjI5OTA1ZTNlYzggcmVsZWFzZTI3LW1haW50Cis4Mzk1NiA4NDk5YWU1ZDk3MTk2YTcyYTViODc0YjNjYmY5MGE4M2RhNGU3MzU5IHJlbGVhc2UzMS1tYWludAorODM5NTcgYWIyZDk0OTMxYjBjMTA1ZmE1M2M2MDIzOWZjYjM5YjgxZGVkNDNjYiByZWxlYXNlMjctbWFpbnQKKzgzOTU4IDU5ZGIzNjNmYTU5NDVjMTc5MDc4NTRiZmQwMDIyY2Q2NGM3YmExODcgcmVsZWFzZTI3LW1haW50Cis4Mzk1OSBmZDQ2MDZlZmM3MDBhYmIyNTc4ZGJmODg2MDIwMTVmZTk5MjVhZmM4IHB5M2sKKzgzOTYwIGY3ZDhhYTEwYzNlZmE3NjhhNzVjMTYwYTA0ODFiYjZmNDRiMGY5OTIgcHkzaworODM5NjEgZWQ2NmIyNDE3MWFmMTJlOGI3NTY1YmY5ZTllMGM1ZjRhZjlhYWE4NyByZWxlYXNlMjctbWFpbnQKKzgzOTYyIDY4YzQ4ZjhhYTU1NTM4MjM0ZmQ1YmE2Y2UzMmJmZTkyNzkzMmYyZGYgcmVsZWFzZTMxLW1haW50Cis4Mzk2NCA1MzQzZjU3MTRmZWVjNTFhZDNjZmUxYTdhNWE2ODQwZTIwYzYyMjc1IHJlbGVhc2UyNi1tYWludAorODM5NjUgYmU4M2QyOTNhMWU5YWY5ZTY3Yzg3MDUyZjJkOWNlOGEwMTFhYmRlYyByZWxlYXNlMjYtbWFpbnQKKzgzOTY2IDAwNTcyMWU1MGUwYmExNGZiMzhiYjI1MDVmMTgxMTE0MTAxZmUyZWEgcHkzaworODM5NjcgNjRiNWM2ZjI5NjAxY2Q4OWU0ZmNkZmE3NzIyODI1MmNkOTZiYTRjMSByZWxlYXNlMjYtbWFpbnQKKzgzOTY4IGNiNDYxYTkxNDRkYjAzNTQzYzY1NTJlZGQwMDNlMmFmOGRjMzRkNjMgcmVsZWFzZTMxLW1haW50Cis4Mzk2OSBkMmI3MjExODViZmEyY2QxMjc0NDQ4ZjJhYjY5NjBlNjJiOTFmYmViIHJlbGVhc2UyNi1tYWludAorODM5NzAgNGE1YWQ5MThmN2FmNDU0NGI5MWYxODczZWRiZjM0YmQxZGMwMDMyMCByZWxlYXNlMjYtbWFpbnQKKzgzOTcxIDg3YjJkYTg0MDI1MmU3YWJhZmM4ZjkyNzYxMWU5ZDZmY2Y1YmI2ZmEgcHkzaworODM5NzIgMDNlODg0ZmFjNGRiYTI1MjkwYjc4YmU2MDQ0NWZmODE0YWRiODQyMyBweTNrCis4Mzk3MyAyZGQ5NjRkYWQxNjg1NGYyNzE1ZWU4NzkxM2YyNTRiZjg3ZGEzODlhIHB5M2sKKzgzOTc0IGE0NDljZTFmMzg1YjczNDUwNmNmMDMyNzk3NWExMjI5NzQ0Yzc0N2YgcHkzaworODM5NzUgYWE4OWNiYjdiYzIxOWJlYTExOGMxNDU0YTVkYWQxYWY5MTNiYzU1MCBweTNrCis4Mzk3NiBmYTJkOTcyMGE2NmNiMTBmNjExMDQxNzE5MTMyMDdkNGRkZmFlYjk0IHB5M2sKKzgzOTc3IGQ2ZjhlODZhMWJlYzIyYzNhZmNiNTM0OGQ3NTM1MTMyMTkyY2FiMTIgcHkzaworODM5NzggNzU1NWIwMDM1YTc3NzQxMWQ4NGQxOTZjOGQyZDE1NmRkOGIwZDZmYSBweTNrCis4Mzk3OSAyN2I1NTNjZGQ4NWI2NDZhYjlkNGNjYjhiNGIxOTdkOTljMTZlMjBjIHB5M2sKKzgzOTgwIGYxZDkyMmQ4MjBjYWFjYWFiNGQ2NzhiZjg2YWQ4YjQwZDNlZTNkZGEgcHkzaworODM5ODEgOTEzYWE4YTQzMDRjNTc0YjJlZDIyMmNiYzNiYzY1NzQ5MzUxMjhjNyBweTNrCis4Mzk4MiAzYTgwZTY3YTBkMzcyNWE4YmU3ZDFjZDNlZWViM2E4NTA2NmI1ZDUzIHB5M2sKKzgzOTgzIGFhOWM4ZTgyYzQzNTc2YmYxNzVmN2FiYWJhN2ExMzQwY2FkN2Q2ZGEgcHkzaworODM5ODQgZDRiNjcwYWE2ZDZiODNkYzY3M2VkYzlhN2Y5MmU0MjQ5NjI1OGMwNiByZWxlYXNlMzEtbWFpbnQKKzgzOTg1IDA2ODI5MWQ0NGZkN2Y4YTFhNWMwZTU0YzViMGMzOGJhMDk1NTc0MzkgcmVsZWFzZTI3LW1haW50Cis4Mzk4NiBlNTRiYWViYmQ2ZmYwMTA0Mzc1MmNiZGRlNTI0ZjdmNDVlMTU3MGJiIHB5M2sKKzgzOTg3IDI5MWM5YWZhYjEyY2UwNWQ4ZGIyYzVmZTdjZTJjOTk1MWZiOGZmYmYgcHkzaworODM5ODggNDc0MmU3YWVhMmY1OWNjZjYyZDgwOTgxYmRlMjU3OTE0MmQzODVjNSBweTNrCis4Mzk4OSA3YmU1OTE2MzMzZGZkYTZmMDc3ZDliMzM0MmQ1YzMxM2U4ZmJiMWQ4IHB5M2sKKzgzOTkwIDUwYzBkYmFlYWEwNDgwMTE2OTdmMzdkZGQ3NGE4YTliNDIxMGE2YjkgcHkzaworODM5OTEgYWI2OTQ2OTcyYjdmZGJiZDQ4ZmY5ZGIwMGUwYzRlMzZhMmZiMDY2MyBweTNrCis4Mzk5MiBkODY4NmM2ZTZiNWViZDZkMzIyZTA0NWYwNzQ1ZThmY2E1OWM4NGU5IHJlbGVhc2UyNi1tYWludAorODM5OTMgM2FmNTk3ZjEyMzJhZjY4YTE1ZDA5YzUzYjBhYjI0M2FmYTYyNWNiYyBweTNrCis4Mzk5NCBkNTRkYTkyNDhlZDlmZmFmNjVmNjUxY2E3MTk4OGNkY2IxMzBjZDgyIHJlbGVhc2UzMS1tYWludAorODM5OTUgNzA2MzRjM2UwMzEwN2ExZGRhZjMyNjFkZGU5MWQyMWU0YzA5OTNkYyByZWxlYXNlMzEtbWFpbnQKKzgzOTk2IGY3NjM5ZGNkZmZjMzZkYmE0ZGIyMTE4YTA0Y2I4YmZmMzEwNWFhMDggcmVsZWFzZTI3LW1haW50Cis4Mzk5NyA5NDIzMmEwYzQ1YWUzNDg2NWUwZTliZWNiNGRjYzE2YTc0YjUxODJlIHJlbGVhc2UyNy1tYWludAorODM5OTggY2JhMmE5NjExMTcwMTQ3NzI4MDUxYzY4MTRkZWM1MjhlMzA0MTlmZCBweTNrCis4Mzk5OSAxYjU1YjcxYzdjMjEwZWFhNGVjNTdmMWZlY2JlOTExOWFhMTk4ZDAwIHB5M2sKKzg0MDAwIGY4YjRlYmU5YzQxYjlkOWQ2ZTg3M2NmMzYxNTlmOGIyOTAxNzQ2NzEgcHkzaworODQwMDEgMzhkMmI2NGFiN2MxNWZiNzViZjc4YmYzNzQ3N2IwY2JmODA3ODc4ZSBweTNrCis4NDAwMiBkNDYwMGVlNWU4MmYwZTk3MTY0ZTMwN2Q3OTU3ZjYzZTg4NmQzMjIzIHJlbGVhc2UzMS1tYWludAorODQwMDMgNDk0YTFiOTU0NTY5NmI1YjcyNmQxZTE2ZjU4ZmMzN2YyZGQyZThhNSByZWxlYXNlMjctbWFpbnQKKzg0MDA0IDk3MTI0OWM3NGU4MDVkOGI3NmZkNzg3OWNlNzczMDVhMzg2MmJlOGQgcmVsZWFzZTI3LW1haW50Cis4NDAwNSA5ODE1NTVlOTk4NmUzMjk0YzQyMTQ2ZTUyMzlhYjk2MGZlN2M3YWU1IHB5M2sKKzg0MDA2IGFlZDRkN2YxMjgyMWQ3MTFhMGMwYzUyYTM4ZDk1YjY5NjExNzVjNDYgcHkzaworODQwMDcgMDYzYzk5ZDgwMzJjNTE4NzUyMzNiYzk4NWViMDg1ZTllOTRjYjhjNiBweTNrCis4NDAwOCA3OTRlYjQwYmVmM2E2NTU0YTg5OWMwNjc1YzllOWY1ZmRlZWU4MWMzIHB5M2sKKzg0MDA5IDJkN2JiYTFjZjNiYzU3NTI5MjNjYWI0MDYwNGUwNjM4ZDQ4ZmVhM2EgcHkzaworODQwMTAgMjkzZTMzMmI4YjRiMDVhNjk3MjJjZTk2MzdjNTkzODczZWQ4Mzk5MyByZWxlYXNlMzEtbWFpbnQKKzg0MDExIDg1YWRmZTU3ODc3YjFjOTU1OTUwOGRmOGRiMmZkMjZkYmIxMTA1NTMgcHkzaworODQwMTIgOTUzMDEwYzBiMTY4N2ZmOWY0NjU5MTZlOGZlZjdmYmRhZWNkOGU0ZSBweTNrCis4NDAxMyBhNjU5MmZjZjc1ZTc3ZWY0NGE2OTZjODRjM2NmYzM2NjY4MmYwZmY4IHB5M2sKKzg0MDE0IGUwMTM4NTA4NjBmYWYxMzViNzc5MWUyMTllNWI4ZjE2YTE2YjhhMjAgcmVsZWFzZTI3LW1haW50Cis4NDAxNSAyYjBkZjllMWY2OWVjOWU2MTQ1Y2EyYjAyY2M4ZWYwZTEwNjliMjE3IHB5M2sKKzg0MDE2IGYxZDE4ZjRkNjE2M2I1OWFmMzJhZmNiMjRkOTZhYjA0NjQzNjFjYjYgcHkzaworODQwMTcgOTRiMjkwYWJiYWZiYWE1M2I0OGExMTk3ZDM0YzMwMTI4MTY2NmE3MiBweTNrCis4NDAxOCBhNGZkMzdhMWJmMzc0MzVkOGY1MDFhNDk3Yzg5OWE5NDlkZWYzYjQ0IHB5M2sKKzg0MDE5IDEyZmU0Yzg4ZjllNjY3NGRhYmFmODA0ZDlkZTJlYzhjOWRmNDIzN2IgcHkzaworODQwMjAgMjc3MTFiMGNkMWYwM2I1NGEzYjc1ZmFhY2I3MjQwZGQ4MjkyMTBjZiBweTNrCis4NDAyMSAyODU0NGQ2NjhlZDBkZmI0NjU3ZjQxM2E4MTM3N2MzYzkzMjZmZWJhIHB5M2sKKzg0MDIyIGVmNzU5NTUxMzhkMjI3NTllNmUzMzc1YmI1ZmMzZjEwMjIwYzE4MzUgcHkzaworODQwMjMgMGFhYzQwYzc3NDQ0MzQyODEzZmIyMGViNDIxZWU1M2MwNzlmODJmOSBweTNrCis4NDAyNCBiN2FiNzdmZDI3YjcwNzMwMzAxMDU0NGEzYzVlM2MzMzNmMGNhYzQ4IHB5M2sKKzg0MDI1IDJjNmQxM2M0MDUxOGJlYTIzNmMxN2NkMzVkMmZmZDkxNzJiOTNjZGUgcHkzaworODQwMjYgYjcyMjBlNDI5YWJiNDc0ODAxMTE0MTZhYjIxODgyMzg1Y2JjYzAwMiBweTNrCis4NDAyNyA5YmQwODI3MDE3NzY3MzY1YjY1NmEwNGY4ZjRjODMzYjAwZTVlOTJmIHJlbGVhc2UzMS1tYWludAorODQwMjggNDViMjRhZGZkMDY0OWYwODhiNzIxYWMxMDIwMjAzMTgzNGRlNTAyMiBweTNrCis4NDAyOSBhYjY3MGU0MTRjMjY5ZTdiNGRiYzk5N2FlNTU1MjJiMzQyZTcwYzAzIHJlbGVhc2UyNy1tYWludAorODQwMzAgZDM2MDMxMWYwZTUyNDc2YWUxN2RiMGQwYjRiNWE1MzIwZjM4Zjg1NyBweTNrCis4NDAzMSA1ZjMzNjUzZTM4MzdlZWUwMDZhMTEzYTAzODkyMDMxZDYzYTJkYjlkIHJlbGVhc2UyNi1tYWludAorODQwMzIgM2E3OWFhMmM0NTQ5ZmUzNTM4M2ViNTNlYTA2NTBlODU4ODFlMGU1MyBweTNrCis4NDAzMyBmMjkyM2ExNzUxZDgyNTQ2YmJmYmMyZDM4NzI0ZjUxZDI4OWVmMDAzIHJlbGVhc2UzMS1tYWludAorODQwMzQgMGU3MjE4MzA2N2VlN2ZlOTgwYjYxZjg2OWI5ZThjN2U3ZTAwOTkzZiByZWxlYXNlMjctbWFpbnQKKzg0MDM1IGM2OGYyNzEzNDJkMDY1ZGYzOTExYjYzNTUxZjU2ODkxZWI1NWNjNWQgcHkzaworODQwMzYgMzdjNDg3OTBkMDhlMGRmOWJjMTRkN2ZhODM0M2E4MjU3MzJiMGJmMyBweTNrCis4NDAzNyA2NTZmZTYyOTJmOWY2ZTliNzZhYTEzNzIyZjI5NTBhNWZkZDUyOWRiIHJlbGVhc2UzMS1tYWludAorODQwMzggYjFmOTkzMzVjNjc3NGU3YjVlNGMxMDlkNGQwYTQzMGNkY2VhZTJkYSBweTNrCis4NDAzOSBhZmFlOTk5NzgyMjY5ZjM0N2VjY2IyZTM0ZDFkZTliZDI5ZDljOTAyIHB5M2sKKzg0MDQwIDFlN2RjZmMwNDA2MTliOGFkYTVkYTllYTI3NTVkMjBkNzU2YjIzYzcgcmVsZWFzZTMxLW1haW50Cis4NDA0MyAzYTFiNWIxYzA2OWIyYTQ2NTMwYTMzM2ZiNTYyZmU2ZDU3ZDQ4NTI1IHB5M2sKKzg0MDQ0IDk1Y2U4ZGEzN2U3ODdmZTVjYmE1ZjdjZGM3ZmM2ZDE5MjY1Yzc2ZTYgcmVsZWFzZTMxLW1haW50Cis4NDA0NSBkOGQwYWJlNjFlODNlN2EwMDhhYjdkYThmNTUwYThiOGU3ZjJhMTg1IHB5M2sKKzg0MDQ2IDA1YmE4ODI5MmQ0YzVkOWNjNjdjMGU3YmE2NDBjMjYwNWY3MDE5ODIgcmVsZWFzZTI3LW1haW50Cis4NDA0NyBkNjY3YmE5M2YwMmFjODg3MTdhMTllNzMwODg3NDg4MjE4YzY2ZjQ0IHB5M2sKKzg0MDQ4IDIwM2IxOGQ1YzYyNmRmYTk2MzkwODEzYmE3NDAyZjk1OTJiNWIxYzMgcmVsZWFzZTI3LW1haW50Cis4NDA0OSA3NTM4MDQ5ZWZkZTg5Y2IxNmI1ZWUzYzZlMTM0ZTA4NDU4NDczN2MzIHJlbGVhc2UzMS1tYWludAorODQwNTAgMzUzNDM1MWM4MzAwMTQxYTMzN2NhNmNkNDVkNzQ1NDlmMDhlMTE5MiBweTNrCis4NDA1MSA4ZGI1YmQ3MDFhYjM2MGZhMDJkMWQ4MzY0NWMwZWZlMDZkNzgzMzkxIHJlbGVhc2UzMS1tYWludAorODQwNTIgMDE1ZjA1MTI5N2M1MjM5YWQzOTM2MGQ2NjQ1NjJjNjBhNTAyMjA1NCByZWxlYXNlMjctbWFpbnQKKzg0MDUzIGMyMzNjODRiZjQwM2I0Y2IwNGNmODJiNTNmZTljMTA4OTkyMmY5ZDggcmVsZWFzZTI3LW1haW50Cis4NDA1NCA4ZDBhYjU1NWExNjAwZGNkMjY3NWMxZDA1NDNkYTVmNzgwNjdjNjJjIHB5M2sKKzg0MDU1IDI2NmYzYTg3N2Y2NGM4Y2U2NjcyMjkxYThlMjAxYmRhN2FmYTZiZmQgcmVsZWFzZTI3LW1haW50Cis4NDA1NiA2ZGZjN2RhMTc5MTQzNDQwMmNjMGI4ZWEwOWNjNjk0YjllOTQ2MDg0IHB5M2sKKzg0MDU3IDJiMzZmMjljMzNmYzZlNDdhM2UxNjY2ZGNhY2Q1NjFkNDEzYTAyZDIgcHkzaworODQwNTggOTRkMWRhZDU1OTU1MzQ3NTVkODAwODFhZjY5YjEyYTAzYzgwYzhmNiBweTNrCis4NDA1OSA2NGZiMGJkNTVkM2NkZDRiZmEzMmFmMGM0MWRlMDcyMGEwMjU3OTQ3IHB5M2sKKzg0MDYwIDhlMDk5MWJhMjlmNDU3M2RhYjMwNjhmNTVlYmQxY2Y1N2MyOGQ3ZDUgcHkzaworODQwNjEgZjg4Y2RkOWE0NGVhNmMxN2UxOWU4ZjU5MjU0YmRlNGJmMmZlOTA1YSByZWxlYXNlMzEtbWFpbnQKKzg0MDYyIDhmMmYwNThiN2Q4OTEyMmMyNzg3NGFmYTA2OWIwNWNlN2ZhZmY5ZDcgcHkzaworODQwNjMgNTY3ZDAwOTIwZWQ2MzY2Y2JiYTc0YjE4ZTk4Yzc2OWE0ZmU3MDIyMCBweTNrCis4NDA2NCA3YTFhZGJlYzBkYjg3NjU3YjgyMmI5YjNiNWQwYzg3YTc4YTRkNTJiIHJlbGVhc2UzMS1tYWludAorODQwNjUgYjlkZDQ2N2QwNTc0MTg5MTYxYTJiMDVmNmZkMTQzZGY1MTIxN2RjOSBweTNrCis4NDA2NiA5OTY2MmRiOWRjNDE5ODZkYWQ0YTA3MWVmNjYwYTEwYWYyMWFmZWFmIHJlbGVhc2UyNy1tYWludAorODQwNjcgODI3YTYzM2U2OGNkM2U0NGQ1NGFlNDk1MmM4YzU3ZjA0ZGVjNmFjNyBweTNrCis4NDA2OCA2ZmIxMDEzZTMwNzlhYTAzZjMxNTkwNzFjMGI4MmEzOWFjZDViNWMzIHB5M2sKKzg0MDY5IDAwODc1Y2MzNGQxNzUxMjdhNjJmNjcwNGE4ZWUxNDM3MDE0NjAxOTMgcHkzaworODQwNzAgOTAyOGYyM2RiNzRiZTQxZWNmZTc3NjExMzMxNGEzZTdhZTAwMDlmOCBweTNrCis4NDA3MiBlNzgzYzdkNWFlMzY0NjQ4YmFjZWMyZDFlYjNmYTUxZmIxMjUzYTAwIHB5M2sKKzg0MDczIDdhNTQ4NDhkNDkyOTQ4Zjc4NzFkZTc5ZDhjYTBmYzdlNmMwYmYxZjggcmVsZWFzZTMxLW1haW50Cis4NDA3NCA5ODY4NmIxMDMxNGU5OGQwMWY5YzgxMDY2NTdjMmM2ZGRiZmIwZWRjIHB5M2sKKzg0MDc1IGRlNDZlNDI1MDQzMWM2YjY0YjE5YmY4ZWE1NDE3YWFjNjllNDc5MjggcmVsZWFzZTMxLW1haW50Cis4NDA3NiAyMGZkZDI0ZGQ5YWFmMjRkM2E0ZTNjMGZhZjQyNzA3OGVlNmQ5ZjU1IHB5M2sKKzg0MDc3IDc5ZDU3MmVhMTdkZjQzMmQyMDM1ZjI5YzNhNGMxNjAzODlmMDkxZTggcmVsZWFzZTMxLW1haW50Cis4NDA3OCA2ZThmNTg3ODg0OWM4ZTZkMzllMDczNjFkNzFhMGQwNzEwZDA0NDJiIHB5M2sKKzg0MDc5IGQxNTg4MDhkYmQ1YTI2OTlhODVjM2I1ZjM2NDExOWNlMzc2MTU2N2MgcmVsZWFzZTMxLW1haW50Cis4NDA4MCA2NzNjNGU4YTAxYzQ3YmJmOTQ1NjcyZWRhODk0Y2MyNzc0ODYxZWNiIHB5M2sKKzg0MDgxIGIwOWY5M2ZlMjlmYmY4MDU3MmJiM2Y0YmY5NjYxNThkMjk0YmY4ODcgcHkzaworODQwODIgYTkyN2E1OWNlZTA2YzU3YzhmOTM5NzVkMDhlMzRhZGFlNjg2YWE4NiBweTNrCis4NDA4MyAxODM5OGY5OWZjNTVmZDI3ZmRjMzYxNDMzZDI1MTRkMGI5NDczMjQ0IHB5M2sKKzg0MDg0IDEzNDI3NmVlZDI4MDg4YTQyNzMzZTM3MWMxMWZhYjBkYzBiYmIyYzEgcHkzaworODQwODUgZTllMGEwMGNjZmIzNTFhYTRiN2MwNDFmNTE3MjM1YzYzNmI0ZTBkZSBweTNrCis4NDA4NiA4NWFlNDQyZmY4YTVkMzUzNTg3MmUwNWY0YWU2ZmI4NzMzYjg0OGEyIHB5M2sKKzg0MDg3IDhjYzhjZTdjMzkwOTQxMWExYmQ2NmY5ZTIwNzM0ZDM4ODM2MjI3NWYgcmVsZWFzZTI3LW1haW50Cis4NDA4OCBmMDk4ZTFjOGJjNTk3NjY4ZTQ1YjcyMGNjZDRmMmNlOGY1MmIyOTJjIHB5M2sKKzg0MDg5IDkyZjc4NzcwODhhZmU0Njk3OWNlOWViMGVjMjE5NjFlYjgwYzQxNTUgcHkzaworODQwOTAgYmYxOGRkNzBjMTgwMzA0NjI2NTgyY2VhMjE4M2JmYWI4YWMxNjBkZiByZWxlYXNlMzEtbWFpbnQKKzg0MDkxIGI0ZDg4ZjllZjNmOTkyMzRkMTUzMmM0NjY1MTExZDc2ZGQ2ZTFjMDMgcmVsZWFzZTI3LW1haW50Cis4NDA5MiA5MWQ0YzdiMWJjMjVmODkyOWYxMmZlZjc5MDViYjVlYjQzNTVkMTRjIHB5M2sKKzg0MDkzIDRiMjNlMjY5YzRkOTlhNjg0YzYwOTZhNjg3ZjZhNTI2MDMzZjc4MzkgcmVsZWFzZTI2LW1haW50Cis4NDA5NCA1ZDliZGY1YWEwN2JmZDQ4ZTc4YjM3YjkyZGE0ZjRkZDUzNDVlNDU1IHB5M2sKKzg0MDk1IGZjODliOGRlZmYxZTFjY2Q1ZGJkOGEyOTNjM2VmOGQxOTA3ODY2MzQgcHkzaworODQwOTYgYWFlM2UwYzUxMGZmZTUwNjgxZWRhN2IxYzU0OTY0YTc4NDAwZmJmMyBweTNrCis4NDA5NyBkNTJmOWM4ZmU1ZDYwOWI0NTY3NGVlZmQyYjBiNjkxMGM2ZDViNWFjIHB5M2sKKzg0MDk4IDcxNWM0NGI2MGVmMzczNmU0M2FmNDY2OWU1M2Q3OGRkMmE5OTliNDYgcHkzaworODQwOTkgYTIzM2JlNjhkMzJlYThjOWYzMDIwNDdmY2Y3N2RjYjVjZmUwZDkzOSBweTNrCis4NDEwMCBlNDQzMmVmYzg4YjlmOGEyNDE2NTJiODU0NjJmNjJmMGEyNjU1M2IyIHJlbGVhc2UyNy1tYWludAorODQxMDEgOTA3ZjczZTIyN2E2YjllMWZlODA0MGZjZjBjNjI4YmY2MTg2OGIxMSByZWxlYXNlMjYtbWFpbnQKKzg0MTAyIDg5OTRkOGQ2MTBkNDQ5OWU4MDUwYjMzMDc3NDc3MWY1MjM5YjM0NzMgcmVsZWFzZTI3LW1haW50Cis4NDEwMyA5ZmU3NGViMDI4YWIwMWY5YzMwMWJmMDI3NDcxZjI1N2RkOTU3YTlmIHJlbGVhc2UyNi1tYWludAorODQxMDQgZGVlMzBjNDY3MzllYmQxYzg5ZmE2NjFlNzVkYmUzM2RkYmI0MmM2NyByZWxlYXNlMzEtbWFpbnQKKzg0MTA1IGRjMzJhN2Q5ZGE4MDI5ZmM0NzkzMTlkODU4ZmE2NTVjZDQzMmY5ZmUgcHkzaworODQxMDYgZTNkZjM0NTQ0ZGI5MDg5ZjM3NmIxOTA2ZThjNGY4MjgzMWU3MjNhYyBweTNrCis4NDEwNyA0MDg1Y2M1NjBlOWVhNTMyODg3MmQyZjRhNDdlYjRlZTgyMWZkZDczIHJlbGVhc2UzMS1tYWludAorODQxMDggNzU2ZjhiMzk4MjMwYjNhOWRlNmNlZGNjOWVmOGQ1Yzc3YzY3NDIyNyByZWxlYXNlMjctbWFpbnQKKzg0MTA5IGJlMGFhMWQxMzg0Y2Y2MmE4NmY4NTU1MDkxOTVlOWRmMWJmOTJiNjkgcHkzaworODQxMTAgMWQ4M2Q5MmVmZmU4MTEwNGFhODBiOGU2Yzk5MDZjNjQwNDM5YjFkYyByZWxlYXNlMjctbWFpbnQKKzg0MTExIGIwODllZDU3NmIxMzI1YjVjZmNiZmY0NTM0MzU5NjNmMGQ1YTdlNTAgcHkzaworODQxMTIgNzdiMDUyYzY0ZWJiYzJlMjc4MWEzNTU2MDA0MWRlNGZlNzRlYmZjMSBweTNrCis4NDExMyA0NzI1MDgyYzI4MmYwM2ZlNWFmZTlkMWE5OGQ0NWIwOWNhOWQ4YmUwIHB5M2sKKzg0MTE0IDE3ZDViMDMwZTg3Nzk5MDJkODJmNzZlZDMyYTY5ZDhkNWU3MTEzMWEgcmVsZWFzZTI2LW1haW50Cis4NDExNSA0ZGYwZDJhMTNhYTE0ZjEzZmJmYTJhOGRkYWU5Y2MxMDI0MWU3ZjA5IHJlbGVhc2UzMS1tYWludAorODQxMTYgNDFjNjA4N2YyZTZkYWU4ZjE0MjkzZjhlYWVlMjNjNTA1ZWUxZmY4ZiByZWxlYXNlMjYtbWFpbnQKKzg0MTE3IDgwNTllNmI2MjQ2MzYwOGY3M2ZlMDg3YjViYzVhYmZkZmQwZjRmMGYgcmVsZWFzZTI2LW1haW50Cis4NDExOCBlMTg5ZGM4ZmQ2NjE1NGVmNDZkOWNkMjI1ODRkNTY2NjliNTQ0Y2EzIHJlbGVhc2UyNi1tYWludAorODQxMTkgOTUyZDY1MGEwYWZkNzY5Y2Q2MmZlNDlkYzBlYWViZGEyN2JkNjE3YiByZWxlYXNlMjYtbWFpbnQKKzg0MTIwIGI2NjJhMzlmMDgyM2VhOTRmMzVlOTUzOGU0NWNjMDI3MGRhZThjNGUgcHkzaworODQxMjEgMGM4YmZkMjg1ZWY5NDI4MTcwZjI3ZDlkMjE4YTlkZDU2ODhiYWM5ZCBweTNrCis4NDEyMiAwNWM0YmFhODc1NDljM2Q1ZTJlZDBmOTQ0ZjE2NzY1YWM5MWQ4MWVkIHB5M2sKKzg0MTIzIDA0OThkNjhkYWQ1ZDM3OTFjMmRkNDZhMDU5N2UyY2U2ZGFjNDljMzcgcHkzaworODQxMjQgYjkxMDU5ZTU5ZDBkYzIyNTNlOGI5N2FkOGU1ZjIzZWY2NDA4ZDA2MyBweTNrCis4NDEyNSA3NDViZDYzOWVkNGRjZDZhY2M4YmFhMmRkZjAzMjM2NWYyNGFlNGFkIHB5M2sKKzg0MTI2IDBhZGE3Y2UyNGRlMmNkNDkxN2E4YjhjNmY2YzNhN2I4MDNkNDQ2YTkgcHkzaworODQxMjcgOTdmNDdlYWMwOWRiNGFkZTg3YWFlYmNiMTQzZDkyMThkNDIxMTI2YSByZWxlYXNlMjctbWFpbnQKKzg0MTI4IDYwYTQ3NzdhNzNhMDYyZmY1NzdiYThkYjYyZDQ4MWVlODA4ZDZjNDYgcmVsZWFzZTMxLW1haW50Cis4NDEyOSAyNzY3OGZmMGNkYTE0NGQxYTAzOTBkYWEzMjMwOGY4ZjAwZmZmZWU0IHB5M2sKKzg0MTMwIDZjYjc3NmU1NzI5NmJhM2YxYzc1NGU1NzVmODVhM2I4ZDkwZDViNzcgcHkzaworODQxMzEgNDU0OGY0YWIxOWNlZTNjNDNmZmE5ZGVjMDExYjA3MDljZWNkZTUwZCBweTNrCis4NDEzMiA3N2JmNTgyOTZjODcwNTlmNmM0NjQ5ZTYyMjgwMzNmNGY5YTU1ZDE1IHB5M2sKKzg0MTMzIGIyYTlhNTljMmQ1NzJiZmEyNDkwODhjNzQ1NjcyMTFlNGNjYmE0OWQgcHkzaworODQxMzQgYTA0OWUyMjBmMDMwOTYwNmQ4NDcwNDA2YjYwNzM0YzYzOWIwZTY5MSBweTNrCis4NDEzNSA2Y2M2NTU0MTZkNjM5YmZlMjgyNjMzYjUwZGRmZWQ4MDAxZDIwNzBlIHJlbGVhc2UyNy1tYWludAorODQxMzYgMjRlMDY4MzNiNWIzYjcyN2RiYjAwMDZjYjUzYmMzZDBlZGQzNWYzMSByZWxlYXNlMzEtbWFpbnQKKzg0MTM3IDlkZDc2MzQyM2E1NjZkZGM2OGEyZDA4ZWQ4MGM1ZjkyNmU5NWQwOGIgcHkzaworODQxMzggNWZjZTAxYTUxYWE1ZTUxNTQ1OWMxZmJjYzMyZmI1MWUzNzViMzU5ZiBweTNrCis4NDEzOSA0YmM5ZGZkOTVjODA3NTZiNjdhMWY1YWYxYTg5OThhYTIzOGJhM2Y1IHB5M2sKKzg0MTQwIDIxMmExNmY5MDZhNjcyNWM4MTg5YjZiNmE5ODVlOWFkZGFhM2QwZGEgcHkzaworODQxNDEgNmZkOTZjMDFiNDM3MTI2ZDkwNjYzMDliOWM0NDU3MWEzNTc0ZjUxZiBweTNrCis4NDE0MiA5OTBhNzY2ZmY5ODMzNTYwZDcwOGYyM2ZmZDY0ZDkwMTZmMmFiMTNkIHB5M2sKKzg0MTQzIGNhMmE4NTllOWJmNjM1MTBjMGVjM2U4YzdhOTA3NjFmODFkZmI1YjMgcHkzaworODQxNDQgY2FlZWJmNzQ5N2MzOGQ1N2Q3MzUxODk0NzE0NzNkOTdhMzJmY2U4NyBweTNrCis4NDE0NSAyN2UxNzYxNjkzM2VmODlmMmMxMThjN2VhODNiZmZlMzdlNTZhYzk5IHB5M2sKKzg0MTQ2IGVlM2RjZGZlMmY4NzM2NWY1YjAzMzk2YTVjYWUzMzVjNmZjODJkMjQgcHkzaworODQxNDcgNzkyNWJiZGZjODA1ZjAxMzc3MzE1NTE5ODFhMjIxZTMzOTA1MmY2OCBweTNrCis4NDE0OCA2ZWQzODEzNTVkMGQ0NDhhMDMxZDQ2YjJlZjUxOTFlZDEwM2RhMTBjIHJlbGVhc2UyNy1tYWludAorODQxNDkgMzVlNjdhZjgwNmU1MDNkNDA2ZDE4NmRkZjI2MWQ3YzM3ZGM3YWY0MSBweTNrCis4NDE1MCBiNjI0Yzc0MTdhZDRlNmU5MWJiYzM5YjcwMzFjM2VlMDlhMmFmNDAzIHB5M2sKKzg0MTUxIDJhNGNlZWJkZmNmYjI1OGVkNmVkYWZiNWFkZDM2Mzc4ZDkwNzAwZDAgcmVsZWFzZTMxLW1haW50Cis4NDE1MiBmZWJhZWExYTY4NzFlZmZkODM3OTQxODBmZTMyNjc5NzMzZWFhOTdkIHJlbGVhc2UyNi1tYWludAorODQxNTMgMzllMWQzODI2ZjRlYTBlZjM5MWNjYjE5ZDNmZDRmODRlOTRiOTAxNCBweTNrCis4NDE1NCBmM2Q1ODM3ZTMxYjc4NmMzYzRiMzY5YTllMzkwMWJhOTViODkxZDFjIHB5M2sKKzg0MTU1IDNmYTBhOTU1MzQwMjRkODk2MDk4MGFkMDc5OThmY2E1NjY4M2JjYmUgcHkzaworODQxNTYgZmRhOWQxZmU3ZjA2Yjc2ZDJiNDU2NTRmMDQ0YWYzOTU0OGExYmUwNCBweTNrCis4NDE1NyA1MWE3Nzg0NjI5YmJhZDg0ZGE4YzJlN2IzMzlkNDJkYmU0YzYwOTExIHB5M2sKKzg0MTU4IDM1YzUzZTdlMjI4MGRjN2E5ODA2YzYwYjg3NWNiZDQ4ZWIyNDIxOGIgcmVsZWFzZTMxLW1haW50Cis4NDE1OSA5YTU0OTQwYTMzMmVlNjkxNzdlZWY3OTU5ZjgyNTJjMTI4MTI4NDBjIHB5M2sKKzg0MTYwIGY3ODMyNzg3OTBjYTYzOTM5MjMzYTEyYjU0NmRhMGNjZjA1ODI3YTggcmVsZWFzZTMxLW1haW50Cis4NDE2MSBhMDE5OTJlMjE5YzA5MDMzOTc2YjY4YmI4M2I0OGZjYTJhNzFmYTJkIHJlbGVhc2UzMS1tYWludAorODQxNjIgMmIzMjMxMmRjYWIxNTA2YWU5ZWJmNzg1Y2E2NWFlYjRkMmVjY2VkNSBweTNrCis4NDE2MyA2ODZiMThiZmZiODY0ZmFlODNiM2FkZTg3MzQ2NTEyMjcxMzU4YTM3IHB5M2sKKzg0MTY0IGZjNzk0YWRkNTU5ZDVhYWI3NDRjZDdkNjQ0ZDI0NDM2MzFhMDBlNTAgcHkzaworODQxNjUgNDk0MzA3OGM5MGM5YWQ0ODVmMjdkZTBlZTZlZDUxYTFhMjlhZGM1MyBweTNrCis4NDE2NiA3MTQwMGNlMGM3MjFkMTU3MDhlMDQ1ZjZlMTY3YWQwNjdhMzhjMmM4IHB5M2sKKzg0MTY3IGJkZDc2YWQzYmM3NmIwMTE2MDBhYjYzYWU4N2I2YzdmOTUxMjhhNjIgcHkzaworODQxNjggZWU3NjVhNjdjMGIxMWIxOTU0MmM1NjM1ZDcxMzFkOTE5OWEyYzc5YyBweTNrCis4NDE3MCAwZWQ3NmM3Yjk4NDc0YmQ2NDVlYzNiMTQ4OWM2MzlkOGE3MGE3ZTBhIHB5M2sKKzg0MTcxIGE4ZDhkZTIzY2I3Nzg1YzQwNzJhZDkxY2U1MTA2MmIwYzg3NGJkNmYgcHkzaworODQxNzIgYzcwOTM1MTQ1OGE2NmFmNjk5N2VkODU0MDJhZjQ1MTI3ZTYwY2QwYyBweTNrCis4NDE3MyBjMTMwZjQzMmYyNGEwMzliZjZiZWZmZGU4MTMwY2NkYjMwMzk3MDExIHB5M2sKKzg0MTc0IGNhNTU3OTQ4YTVjZjY3YjUyMDY0NDU3NjMyZDhkMzliNzE0MDJkY2IgcmVsZWFzZTI3LW1haW50Cis4NDE3NSA2Y2RhNWZkMGEzY2YyM2ZjMzk1ZmFkYTBhY2QwM2ZjOTNjNmVhOWIxIHJlbGVhc2UzMS1tYWludAorODQxNzYgYjg3MTI0NGQ3Zjc5Nzg5MGY3MGQ1NGMwZmJiMmI0NDUzMWE3ODNhZCBweTNrCis4NDE3NyA4Zjk3YzY0YjIzMzM2MjE2MGM0YjczNzU4NDhjM2NlZWY1YmFjMTUwIHB5M2sKKzg0MTc4IDc0OWMyMmZmYTM2ZWM3NTc3YmQ4MTM1Yzg0MTMzYThhM2FkYjU4NWIgcmVsZWFzZTI3LW1haW50Cis4NDE3OSBjMzcwODY2ZjMwYTc1YWE5ZmFjNjI2MzcyOWY4NDQ5ZmM0NzVkNDc2IHB5M2sKKzg0MTgwIGRmOTYxMDY0ZjgxMWNmY2QxOWQ5NDNjNzM0MDRlNzQ4MTdmYWJlZTYgcHkzaworODQxODEgMjNhNTk4YzAxOTExZjIwNDIwNWE0ZWQ3MTQwNmMyZTI3NWViMDUxNyBweTNrCis4NDE4MiA2ODdjYzg1NGNiNGJmZGY5YjQ5OGEzMDUzZGQ1ZTI1OTVlYjdhZjY4IHB5M2sKKzg0MTgzIGU2N2UwN2NiNTE3MWNkODk1Mjk4MjhhYjU3M2ViNTk4MzQ0YmQxYTkgcHkzaworODQxODQgMDVhM2RmZGEwNGZmYzZhMzI1Zjg5NjMxMzhmZTVhMTgxYzllN2U4YiBweTNrCis4NDE4NSA3OTBkNDg3ODg4NzRjNTE4MTIyNDhhOTVhMWVlMWU3NTdkNzdiMjVmIHB5M2sKKzg0MTg2IDgwZjk4YWYxN2RlZjg4M2RhNDM1Yzc3ZWJlODQ0MDc5M2YzMTIyNDMgcHkzaworODQxODcgMjI4ZTZmMDAxYWUxM2IxNDExZDkxYmYxNWM5MjRlYzRkN2U2OWU3MSBweTNrCis4NDE4OCA5YWRlYTk0NTU3NTM5ZTRjYzVjNmJkZmI2NjM3YWVhNWEyZTA0YWUxIHB5M2sKKzg0MTg5IGVhMGRlY2QyYWNmYjYyZDdiMDBkOTE3NTM3ZDQyNzZiNjc2MGFkMGUgcHkzaworODQxOTAgNGY4MzFkNDUxMjVmMGU1OTFiNjdjMmUyZjllZjA4NzkyYWU5MTY4YSByZWxlYXNlMzEtbWFpbnQKKzg0MTkxIDY1ZmUwNTliOTdiZjMzODkyOGIyZWY5OGZhZWE4MDA0OTIzNjdlNjcgcHkzaworODQxOTIgYWMxMmQ5NDhhODk1NzY0MjJlODE2ZWRhZmFmYzFhNWNmOWFjYjQxYSByZWxlYXNlMjctbWFpbnQKKzg0MTkzIGE5ZTc4ZjZmNjk0ZTY1YTk4YTYyNzljNTc5YTc0MzBmMzA3NDNhMmMgcHkzaworODQxOTQgMmNiMjY2M2UzMzY4OTBmNThlNjczMjBkZjg1YjRhN2FkMWRhNTAzZSBweTNrCis4NDE5NSBhYjg0YTBjN2Q2M2M2MGY2Y2Q1NDc0ZWYxZWE0Y2VhNGI4OTFmOTE4IHB5M2sKKzg0MTk2IGY2NzIzZDU1ZGU0YjZjZTcxMTE4Zjk0MjUyZTY5MDgwMWM1MWZhYzAgcmVsZWFzZTMxLW1haW50Cis4NDE5NyBkMGU5ZmViZmEwMGFjNzFhZjA5NjhmOWYyNDA4YjEwYWQyZDljZjk4IHJlbGVhc2UzMS1tYWludAorODQxOTggODU3ODA2MTQ3ZWU3MzQxZDZiNjM0ZGQ3ZGEwOWQzNzYwZTI0ZmE3ZSByZWxlYXNlMjctbWFpbnQKKzg0MTk5IGYyNDMwNTg1OTYzYzU4NDVlZTIxMWYzNGJhYjg3ZjZkMDhiMDAxODggcHkzaworODQyMDAgZjg3MTJhMDdiMGIxMTMyMTZjMThmYmQzOGY5YTI5MDQ1YzAzNjczZiBweTNrCis4NDIwMSAwODJlYWZhMDg4MDI3MjFmYTczNzI1YjhkZjc1MWNmMTg5Njg1N2FkIHB5M2sKKzg0MjAyIGY2NWJiZmJiODIzZmZjMWFmNDBlZDFmZTMwYTc3MTYwNDRkNjEzZjEgcHkzaworODQyMDMgMzhjZTk0N2MyOGZiNDAxNjEzYjE4ZDc0Mjk0ODQ1NDZlY2I3ZjE2OSBweTNrCis4NDIwNCA5MTU1ZGI2NTljMjBmZmYxZjcxZGI3N2I1NGIwN2Y4ODMxOTQxNWQwIHB5M2sKKzg0MjA1IGE0ZWM3YTZhNjg5NWU0ZTQ2Yjg4NGM3NWQ4NTg3NTAwMWQ3ODIwODQgcHkzaworODQyMDYgNWQzY2ExYzAxOGFlNDM0MTBlMDNkMTIwYTg1Y2JmNWJkZTEwMzZmYyBweTNrCis4NDIwNyAwNTJmNDJkMDIyMmZkOWY1OTAzNjdjZGQ2ZGQ3OTU4MmU4YmIzYTY2IHJlbGVhc2UyNy1tYWludAorODQyMDggNjYxNDNjMjM2ODRkYTNiZjU0ZjRjODljZWZkZGU4ZmYwZGQzYjEwOCBweTNrCis4NDIwOSA1ZmQyNmY0NTI2MDAwYWYzZWI5NTRiM2NjYjQwYWEzOWU2NDY2OGU3IHB5M2sKKzg0MjEwIGFmNGE5MWM5NDA3MTdiOTE2ZTQ2OTQ2OWNlMGQ3YWExNTc1NDRkMDkgcHkzaworODQyMTEgODhlODQzY2UxMTYwZTgyMGEzNGYzZTMwOWM2OWZmZDY0OWJiNjI4YiByZWxlYXNlMzEtbWFpbnQKKzg0MjEyIGJhNmZkZThhM2E5OTdkNTZkYWUwMmI3NzViODBlMDRiZTA5ODI4YjEgcmVsZWFzZTI3LW1haW50Cis4NDIxMiA4YzZjNzJiNmYxZWQwYTYxMDU1OWIwZjhjODNjNmIzYmMzNzc1NmZmIHB5M2sKKzg0MjEzIDU0YzljODZhZDEwNGIyN2FhNDY2NGJjYTk4ZGE1NTkyMmE5ZDVlNTkgcmVsZWFzZTMxLW1haW50Cis4NDIxNCBjMThlZWI5NjkxMDJmMjRhZDk2YWRlMzE2YjE0YmJmZGM2M2EzNDY0IHB5M2sKKzg0MjE1IDM4Y2VlYWUwZDFmMDc5NmYwMjE2MGYwMDM2ZjAzZDc1NWNkNjA3OGUgcmVsZWFzZTMxLW1haW50Cis4NDIxNyA1NDlhNDBjYTIwNzRkNzIzODg1NGQzMjkwMjk2YzlhMDMwNTlhYTkzIHJlbGVhc2UyNy1tYWludAorODQyMTggMzUyOGJhN2I0MzA1Y2E3NWJmN2EwNmMxY2QzMWExNmE1ZjE0YzM0OSBweTNrCis4NDIxOSBmMmM3ZTRiMWQ4MDQ1YzEyMzUxOGI3ZDZhZmRkMzA2MTQzMTQ2NWJkIHJlbGVhc2UzMS1tYWludAorODQyMjAgMzlkYWMwYTg4OTZhMjc4NmJhMTVjZTQ0NGNiMjc0ODUwYjM3NDk4YiByZWxlYXNlMzEtbWFpbnQKKzg0MjIxIDMwYTBkY2Y1YTNkOGE1ODFiNWVlMTI0ODQ3MjUwNThmOTY1ODgzZmYgcHkzaworODQyMjIgNWEyOTlkNzg1OTg3ODM2MTY3ZTIwNDZlZTgyOWEyMDEwNGIxYThkNSBweTNrCis4NDIyMyA4N2Q0NjhhZTNjM2MyY2Y3MTRlN2I4YTE4NWE0ZTU1YWU3NTY1ZGJhIHB5M2sKKzg0MjI0IGQ0ZTIwZjlmMTI3YTlmNGZkZTY5ZGRiNDVjNmE3NjQ3OWI5OGZkMTkgcHkzaworODQyMjUgYWI2M2M0NTc4YjFiZDE0NDE0YmVmYzgxMTA0YzM5NzRjNmRmNDdlNCBweTNrCis4NDIyNiA2NWNlOTkyMzY4OTc4NjU4NDY2MzExYzFmYWQ0NmEyMWE5ZmJiMzA0IHB5M2sKKzg0MjI3IGYzZGI1MDRjZGZiMWYzZjU1Mzg3OTFhNTRlYjc4MDQzYzhjYTE3ZDkgcHkzaworODQyMjggODM5N2YyZTAwN2ViYzI0ZTRlYWE0ZDcxYmQ2NGYyMzU3ZTNmM2Y4NiBweTNrCis4NDIyOSBmYTdkMWQ1ZDJhZmI2MDE1YTk3MzBhZmZmMzlmYjdhZGJmYTdmMzMwIHB5M2sKKzg0MjMwIDdkMmJkODk1NWVkYjgzYjA5NDg5MjhlOGI0ZDNmNjUzNTNjYWY5OWMgcmVsZWFzZTI3LW1haW50Cis4NDIzMSAwYzNkNzYzZjM4ZjE0MmE3ODVlYWJlNzcwOGJkODg1OWEzYmYwNzQ1IHB5M2sKKzg0MjMyIDlkNTkxNmFiNjBlMGYzMjQxMTE3YzllYjFjMTIwOTJmNGQzNDE5MzIgcmVsZWFzZTI3LW1haW50Cis4NDIzMyA5OTY2MDRjZGU0MWY1ZmU4MGNkNjg0ZWM5MWNmZDM3ODFlOTkwOTBjIHJlbGVhc2UyNy1tYWludAorODQyMzQgYWJjZjk1NzdkNWRiM2ZjNTU0ZDA0OTczYzUyZGUwZTIxZjkzOTk0NyBweTNrCis4NDIzNSAxZWZlODIzZTFmMTg4NWU3ZDBkMTdiYmM0MmE0Y2Y4YWVkZWI5YTMwIHJlbGVhc2UyNy1tYWludAorODQyMzYgYzRmNWQ5OGVlODdiMDNiMWU4ZjU3MjhhNjkwNGJlYmFmODQ5OWJmYSBweTNrCis4NDIzNyA0OTdhN2UyODRlNGRjOGUwMDM0MWRhMGNlNmY2MGU1NmQwOGJlNWM2IHB5M2sKKzg0MjM4IDJmM2FjODM0YjUzNjM0ZWViYTU4MDhmNTBhNTQzZDA5MGM2MGRiNWYgcHkzaworODQyMzkgYjE4YzgwYzY4NzU0MDBiZmE5YWM1MzE0YjE0OTEyNWVkZmJjNTVmYyBweTNrCis4NDI0MCBkZmQwMjI5NzQ4ZWZkNGMxYTY1YmFkOTFiNzlhZTZlZGJhNDA4ZGFjIHJlbGVhc2UyNy1tYWludAorODQyNDEgOTdhNWZiMWM5NmNlYjNlMTg1ZTQ4NDI0N2I5NTAxZTQ5MTlkNzdkZSByZWxlYXNlMzEtbWFpbnQKKzg0MjQyIDhlMTg0YThiYjAwZTY0OTc0MWEyNDYzYjg5MDdlYzY0NGIzZGZjZjkgcHkzaworODQyNDMgNDYxYTIwYWI0MzNmZWU0YjdiN2MwYzYyNWYxODllY2FmNTBkNmU0OCBweTNrCis4NDI0NCAzMDJmZTI1Y2Q2YjExODhmMmJiZDVmMDQ4ZDVkYjNmODdlMDE3OTU3IHB5M2sKKzg0MjQ1IDEwZGY5Mzg3MmNhNzMwNDIwMjc1YWI1Yjc4Mzg4NTk3MWNiMWRlY2IgcmVsZWFzZTI3LW1haW50Cis4NDI0NiBmNWRlZTMwY2NkMzlmZDUwZDg0OTRkOTA0NTY4YTViNDkzMDhkOWQwIHJlbGVhc2UzMS1tYWludAorODQyNDcgZjlhYjljOTJkYjhkYjI0ZGU2YzVlNWU5NDM1YTEwNDFjZjdlMmY0NiBweTNrCis4NDI0OCBhYWNiMTUyOTFkNTQ2MTBjZTMxYjc1ZjA4NGVmMjk4YjAyZTJjOTc1IHB5M2sKKzg0MjQ5IGEzNGJlMDNmNzA5YTM0OWI2MTFmMjNiOWQ2ZGNkNWExYTAzNjc2NGMgcHkzaworODQyNTIgMDFiMGE2Y2IxM2Q0M2M5ZWEzNWY1MmUwYzRlNTQ5MzUxMTNjODUyYyBweTNrCis4NDI1MyA2ZTBmZTFiODNmZjA5NTZkNWFjNTY1NDA5NzRhYmUzZDg0YThlOWFlIHJlbGVhc2UzMS1tYWludAorODQyNTQgOWM0ZTg1Nzg1ZDRlNGM1ZTk0MDY4Y2QyZTY4ODQyZGNlZjhmMzRlOCByZWxlYXNlMjctbWFpbnQKKzg0MjU1IDAxMzBlNTc0ZjViZTVhMzg3MjdkMzRlZDBjMGI4ZTUzM2YwMTM5MTQgcmVsZWFzZTI3LW1haW50Cis4NDI1NiA3ZmYzZmE0Mjk3MjE4M2E1YmEyMmQ0NWJhOTk5MDRkNGFlYzk1OGVkIHB5M2sKKzg0MjU3IGE1YTU4NzIwNTBlMzAzODRkZjg2Nzk5NzgzN2ExNjM4NWY3ZGE1MzUgcHkzaworODQyNTggYjAxN2E0ZWY3Njk0ZmFlYTkzY2Q0YzBiMDUyOGZlZTBjNzEyNTdiYyBweTNrCis4NDI1OSA0YWNmYTNmZTZhNWViNTJjMTUyYmVhZWRjYzZkN2Q2MmYzZTljZDE1IHJlbGVhc2UyNy1tYWludAorODQyNTkgZTQ5YzUzZjc1MzVjMDhkNTE3NmE4MTgzZjgwOWFlNjc4YzRjYThlYyBweTNrCis4NDI2MCBlODE5MDZlOTJmOTlhZWRlNjY0MGE2NTBmYzc0NTZkZjg3MWVjNzI5IHJlbGVhc2UyNy1tYWludAorODQyNjAgNmFiNjU2NzY1YmNhMzg3Zjc1ZDI2YWI3NGY4ZmFmYmJlOTBiMWY0YSBweTNrCis4NDI2MSAzNTMwNGMyZmU5ZTBiYjg4MTMxYTA1YmEzMGE2OGQwODM5OTUyYzQ1IHB5M2sKKzg0MjYyIGU5MTg0OWNkMDY2ODlkZGUzMTc1ZjEyYmQwMmY5YjQzNmM1NDg0ZjkgcHkzaworODQyNjMgZjJlOTFlMDhjMWM1N2YwYWUwM2FmZjg1ZGI4MzQ3ZjBjMjBkOGQzMSBweTNrCis4NDI2NCAzYWNkODZmOGM1NTI0NzNhYjliNjI2YTk5NDE0Y2I0YjIwYjEyYjAzIHB5M2sKKzg0MjY1IDFjODgzNGYzY2RiOTYzODc3YzcyNDQxYWM5Mjc5NDExODRjNzVmYjMgcHkzaworODQyNjYgNTk0OGU0OGZiZDg4MGNkMTRlZTRkOTg0MjBhY2U5M2Q3ZGMyOWRkZiByZWxlYXNlMjctbWFpbnQKKzg0MjY3IDhmNWZhZjU2OTZlN2FmMmUxMTgxMzdlMTViNGI2NTljYmM5ODgzODQgcHkzaworODQyNjggMDJlMmQ5ZWFiNzMwMTk5YzViYWE5NDYxOTAyYjMwMjZkYzY2ZjVhMCBweTNrCis4NDI2OSA3MTZkM2QxMDJjMGFhMTI2ZDU5MWE1OGQyOTRlMWMwZWU5MjNhYTUxIHJlbGVhc2UzMS1tYWludAorODQyNzAgYTQxMmNlZWVmMGYxZWViYWM3ZmU3ZWVhN2Q4ZDVjNWRhOGRiODVjMiBweTNrCis4NDI3MSBjZjM5OWRlMTJiNTQyN2Q3YWJmYmQ5NDRhMWNjYjNjZDVlNWZkZDQ4IHB5M2sKKzg0Mjc3IDdlMWUzNDNiNzA4YjE4MmY3ODc1YzQ3MDM3NTNmY2Q0YjM2YzI1ODMgcHkzaworODQyNzggYWEyNWI4Njc3Y2MzZjc5ZDRiNTM1NGY4YmNhY2QxY2ExMGZmZDg4NyBweTNrCis4NDI3OSA1MWEyNGE5MTU0MDg1OTNiODlmZDEwY2ZhMzI5YTYyYjM1NGNjYjY3IHB5M2sKKzg0MjgwIGI1MzVjZGU5MzI3MzgzZjgxZGYwMmVlYjBkMDhiZjcxNmJkYzVhOGEgcmVsZWFzZTI3LW1haW50Cis4NDI4MSAxYTA4NTk2MjM4ODJmNzFkZWVmMTZmNThmZGYwMDQ2MjE3NjhlMDgxIHB5M2sKKzg0MjgyIDQyYzcwZjE3YzJmZWRlNjExNjEwODU2OGE3NWIwZWVjMDhiM2M3M2EgcmVsZWFzZTI3LW1haW50Cis4NDI4MiA5ZDRkYzU4NTVjNTE1YjgwNDUyOTNmMWI0MGE2ZGRjOWNiMTE2MzAxIHB5M2sKKzg0MjgzIGJhNTM2YWM3YWI0ZTRkYjAyODk5NmViZTliY2M1MTIxNTlkMmRiZGEgcHkzaworODQyODQgZTc5YmE1NTU5MjJhMTY4N2JiNzE5ZGJmN2RiOTI4NzhjYzgxMmQyOSBweTNrCis4NDI4NSA3NmU5Y2Y4NDU2NzYwMmI5MGE3YzRhNzcwNzY1OGZlYjI0NDRlYWViIHJlbGVhc2UzMS1tYWludAorODQyODYgYjk1ZWMxNzFmNTAzNjQzYzdjOTZkMmNiYTIxNGVjMGEwYmNhOGRkNiByZWxlYXNlMjctbWFpbnQKKzg0Mjg3IGVmYWE0N2U5MmE4ZTg3ZTAzMzMzMjg2OTU4MmVlNDlmMGFmMmUzMmIgcHkzaworODQyODggNzg5NWM0NTUzYmY1NDQ5MDY3YzUwZmVmZDg5MDRjNzc4MmNlMTE3YiBweTNrCis4NDI4OSA5MGJmMjI0MzU1MmQzMzQzYTY1ODM2ZjVjNjU3YzQ5MmY3Mjc1MmJkIHB5M2sKKzg0MjkwIGUyYmNlMWM1OTZiZWIzYTllY2U3YWEzZjhhN2YxYjdiNDcwMGNiNzQgcmVsZWFzZTMxLW1haW50Cis4NDI5MSBlNzE2YWEyMDk0ZmE4ZDk2Y2IzNzVkMDY0MzYxYTY5ZTUzYmM0ZWQ2IHJlbGVhc2UyNy1tYWludAorODQyOTIgOWY4NzcxZTA5MDUyNzdmOGIzYzI3OTkxMTNhMDYyZmRhNDE2NDk5NSByZWxlYXNlMjYtbWFpbnQKKzg0MjkzIDZkYjc4MzViMGE5NWFmYzFkNGYwYWU5ZjE3Mzk0OGI4NTRlN2JhMGUgcmVsZWFzZTI2LW1haW50Cis4NDI5NCAyZGU5ZDQ0NTcwODIxMjNkOTAwOWE3ZjI1ZDBkOTRjY2Y2NWI3MjUzIHB5M2sKKzg0Mjk1IGMxYTgzZjJjNzA4NzU3ZGRkMmNmMmIyMWFiMDlhNTEwNWFkMGZlYzkgcHkzaworODQyOTYgZDRhMWY5MTQyZjdhOWQ0NzdlYTc4NDJmZWQwYWM2M2Y4MjFmNGE4MiByZWxlYXNlMjctbWFpbnQKKzg0Mjk4IGRiMjkzNjBjYWQwZmFjM2E2NDk5M2I5ODg2ZjE0ZGY3YTE3YTJiYzIgcmVsZWFzZTI2LW1haW50Cis4NDI5OSA0YjEyOTZiMjYyY2E0YmVhZmM1YWM1N2NlYzgyNDk3N2M2NDQ4ODU2IHB5M2sKKzg0MzAwIGY5MWYyOWVmNGVlN2I1ZjVlY2ZiYzkwNWUyN2Q5YWZhOWEwMDk5N2QgcmVsZWFzZTI3LW1haW50Cis4NDMwMSBjMWM0ZjhmODUwNzBkYTRkN2I2OWFlMzZlOWUwMTIxYzkwNWUxNWZlIHB5M2sKKzg0MzAyIDhmZTM2ZTJiOGVkMTNjMjIyMmZkMWQ1YjdkN2U5ZGEwOWVhMTk4YTEgcmVsZWFzZTMxLW1haW50Cis4NDMwMyA4MGE0ODE0ZWNmNWQ2NTIxZDYxY2U2MDBiNmFhNWI2ZDY5OGRhMWMyIHB5M2sKKzg0MzA0IGJlNzZiMzdmZTdmZDg0MDlkM2QyZjI3ZjI4MmU5YjQxZWMzZDgxZmMgcHkzaworODQzMDUgNjE4MGY0NTY0NzE0ZGIxMzNlY2ZkMjUzN2EwZDZkZWYzZDhlNjExMiByZWxlYXNlMjctbWFpbnQKKzg0MzA2IGY2NWU5YzE1OGMwNDA2MjNhOTY3YmU1M2IwNGVjNjQyZjQ3NmRhZGUgcHkzaworODQzMDcgODY3Njk5YzliNjNmZjU4NDVlYzAyZjE3NDRlM2U3NmRmZDcxODUxMiBweTNrCis4NDMwOCAxNDg4Y2QxMDNkN2I4MjE0ZjdhMTEwMzAwNzQwZmVmNmZjMzVhZDVlIHB5M2sKKzg0MzA5IDFlMjNjM2IyZTIzMjU5YTkwYTkzYmY0YmNmNTU1NjBjNWQwY2JkZmMgcHkzaworODQzMTAgODdiZGY1M2ZmNGJiZmNhNDI5OTY1MzBhN2YwZTlhODViNTQzMzFjOCBweTNrCis4NDMxMSBmNmIzZTY0Yjc2MjA2NzgwMjg2YmIyNWYzNWI0ZTMwZDZlOTZmM2JmIHJlbGVhc2UyNy1tYWludAorODQzMTIgMDUzZmY2NWJlNTRjYjM2M2M1YTI4NDgxNTZmYTIzY2I3NDI3MDBiOSByZWxlYXNlMzEtbWFpbnQKKzg0MzEzIDJjY2QwNDNhYWQ1YzEwOTBhYzU5NGIzYzk2YTkyNzQxNDcxZTJkYzAgcHkzaworODQzMTQgODcwMzdkODM4MGJmNGEzOWVmMTM3ZjFmNDA4ODQwYjkwZDY5NjNhNiBweTNrCis4NDMxNSAzYWM5YTM3ZTQyOWJhNjI3OTFhZmEyNmJlZmYyYTQ5ZTYwMzM2ODM3IHB5M2sKKzg0MzE2IDk0YzBmOTc5MTdkZGM2OTI4MTc4ZmY3MmQwYzIxZWJhZjA3NWE4ZGUgcHkzaworODQzMTcgMDQ4MmIzMGNhNDY2MjkzZWU4MmNiYzM1NmMyMjVjODU5M2M3NjkwZCBweTNrCis4NDMxOSBhZWZiYTg5OWVhZWViNDI0N2ExYWYyZjJhYmQxMTM5YWRjNzQ1YjQyIHB5M2sKKzg0MzIwIDgzMzAzNDZiNWM1ZmE4YjZmZWI5NGRlYzg0OWZmYTcxMGQxODJhMmMgcHkzaworODQzMjEgZWJmYjk0ZjJjYmMzNTY0Yzg5MmM1ZGM4NmEzOGE4YjA5M2Q1NTI0OSByZWxlYXNlMjctbWFpbnQKKzg0MzIyIDE5MDM3NTQ0NTI0MTk4NmEzYTg0N2M4YTRkNzhlODE0ZWQ1NGEwYWQgcmVsZWFzZTMxLW1haW50Cis4NDMyMyA2NTUyMDU1NjI2OTUwMWUzOWZkYWRiODMwZjI3NGRjZGZlMjZjZThkIHB5M2sKKzg0MzI0IDc5MTVkMjY2ZWUyYjI1ZGNhNDY1ZjcwNDY1MmQzNGUxOTIxYzAxNTIgcmVsZWFzZTI3LW1haW50Cis4NDMyNSBlZDgzZDU0NjMxNWQyZTBhM2FiM2UwNjA1ZmEwNTM2MzZkODlhYzNlIHJlbGVhc2UzMS1tYWludAorODQzMjYgMzI1ZDAxNmMxOWY3MWY4NDc0MzkyZGNkNzA2YjY3ZjlhMjY4NTdhMCBweTNrCis4NDMyNyA5ZDRhZmQ4ZTg2MjExNTRjMWY4ZTY5NWI2MDJmOTRmNWM0MTAzYjdkIHB5M2sKKzg0MzI4IGRlYmMyODQyYjRiMWJmOTRjODQ2MDgxODIyMGU0MTA1MTliYjAyMzEgcGVwLTAzODQKKzg0MzI5IDAxMTJmMDY0Y2VkZmFiMmFmODg3NWE1ODlhMGM1Y2YxYjQ3NzkxOTIgcHkzaworODQzMzAgZDBiNDYwYTQ3ZjdmZmE1OGRmOThkNWM2MTA0MjFlMGU3NTJkMWZmMyBwZXAtMDM4NAorODQzMzEgMDkzYTA5NWFhNzRjNjQ4OTk5NjY0YjhmNjdmMDg5YmVkODg0YjQyZiBwZXAtMDM4NAorODQzMzIgMWFiYTczMzlmYTZjMmI4OGU1MzVlYTFmMWNhZjQ5NTBiODZjZjg4OCBweTNrCis4NDMzMyBjYjFmNWQwNTQ1MTBlNDdhNGNiMzA2OTM2ZjIxYTNiNTVhNjE1MmQ5IHB5M2sKKzg0MzM0IDM0ZGZlZTU5MGEzMDcxYjFlZmZkNDA0YzYxZWIyYzJhYjI1MzExYjAgcGVwLTAzODQKKzg0MzM1IGQ3MTYyMjA3MzE4ZjY3Y2IwOGFiNDhmOTJlODdjNzM5YWI0ODEyOGUgcGVwLTAzODQKKzg0MzM2IDMzYzRjY2FmYzRmNTM4YTEyY2Q2ZGFkMmM3M2I4YzI4YWY1OWU2OGUgcGVwLTAzODQKKzg0MzM3IDlmYWMxOTcwZDM4MDZmMjNiNTgyN2MzZGFjNTJiNTQ2Yzc2YmU3MGMgcHkzaworODQzMzggNzhlNDAzMTZlMDIzNDZhZmM2NzdmOWQzNWFhNDc4OTAxNWExMDM3MSBweTNrCis4NDMzOSBlYWFlMGRmNmQwNjMwZTE1MjQ2NTFiYzBjNmZlZDNmY2NkZjMyYjY4IHB5M2sKKzg0MzQxIDVkYzA2YTA1OTYzMGFkYzM2ZmNlYmFjODFkNTlkM2JmNTJmYzAxNTYgcHkzaworODQzNDQgMDI2NWQ1ZjdiZDA3MjE2NmEyYjgzYWI5NDY5M2M4ODY1YTNkMTc4OSBweTNrCis4NDM0NSA0Yzk3OGNkMzY0MGZjOWU3YzQ0Nzk0Yjk2NGJjNTg0ZjM4YWNmZGY1IHJlbGVhc2UzMS1tYWludAorODQzNDYgYjJlOGRjZDE1MDQwMzQxZmNmNzYxOGQyMWEwNjBlZjUxODQ3NGY2NiByZWxlYXNlMjctbWFpbnQKKzg0MzQ3IDhmNmU0MWMzYTIxOGE5OGYwMDI2ZjUxMzNjMWY5YWVmODcwZjVjZGUgcHkzaworODQzNDggNWM4OWY5NTcxYmE1NDkwZWM0NjUyMWZiNzI5ODBjMTFiMTIxZDNjMyByZWxlYXNlMzEtbWFpbnQKKzg0MzQ5IDNlMjBhYmQ3ZGVmNmUzNjAwOGJhZDVhNDBiYTc5MzBkOWNjOWE0ZWQgcmVsZWFzZTI3LW1haW50Cis4NDM1MCA0YmIzMTdlYjQ5NmEwODc1N2EyYmNmZGM4YjU1YjIzM2Y5ZGQzNTg2IHJlbGVhc2UyNy1tYWludAorODQzNTEgOWNiYTk5MDY4YzU0YWE5ZmU4ZWNjZWZiOGIxYjQ1NmM2YjQwZjViNiBweTNrCis4NDM1MiA5Mjk3OTc0NjA0ZmZkYjMxOWE5ZTZkOWYxMTg0YWUyNGVjNjFiYWY2IHB5M2sKKzg0MzUzIDkxNWRhOWYyZGExOTllOGI1NGE0ZDU0ZGEwZWZiZjgwODg4NWFlMWIgcHkzaworODQzNTUgODBkMmU3ZDFkN2Q1MzRmYTQ2NTkxMmNhYjRhYzQwMWY0MDliNjA2NyBweTNrCis4NDM1NiA5YzUxZjM4MzY1NjMyYTFiN2I3ODVhMjc4ZDUxNGIyODE2ZWEwZjBhIHB5M2sKKzg0MzU3IDcyNjcwNWQwMmFkZDIxZTZkMmMxYmM1NTA3YWYzZDM2YzE0NGNjNDAgcHkzaworODQzNTggZWZlOWY2YzhhMzFkNGZjODBkNTM3MWViZjg4ZDA1Y2VmYjNiMGY1NiByZWxlYXNlMzEtbWFpbnQKKzg0MzU5IDhhZDU5YjUyM2ZkOGEwNjQyNmY1NDBkNWQzNjE3MmJlMWNmNTFlZDUgcHkzaworODQzNjAgZTFkY2RjYjUyMDFkNDg0ZjhhMGU1YWNiMzg1NjFmZjg0ZTM4ZTIzOSBweTNrCis4NDM2MSAyOTQxMDFmNzdjYmVjYTRhMWE3OTE0NzM0ZGYwYmU4NjA2YjRmNjU5IHJlbGVhc2UzMS1tYWludAorODQzNjIgZTZiNDU2ZjkzNDQ3YTEwMDVjYWIxZjQ2Njg1YjUzZmZkM2MyZGY5NiBweTNrCis4NDM2MyAwNDBlZTk0YTkzNTBlYTI0Mzc4MDIwNTBhMjNiMzk4YjIyOTdlYWUxIHB5M2sKKzg0MzY0IGZlNzIxNGJjNmQ2NmIzMzlmZjFmZjMxYTFmYzZiMWU5ZDM3NzliZjkgcHkzaworODQzNjUgYTQ5MmYxYWMwNTc1NDc5ZTZiOGVkYTcwZWQ3MTU3ZDA3ZjAxMzZiOSByZWxlYXNlMzEtbWFpbnQKKzg0MzY2IDUzNzBkODFhNWYyZDJiMzAwNGVjODM1ZTJjYzZjOWNjYjkwNjQ3YjIgcHkzaworODQzNjcgMGE3ODRmNmFjYWU3NjgyNGNhYWEzNDU2YjE2YmNhYTJlNzZmNDdhMiByZWxlYXNlMzEtbWFpbnQKKzg0MzY4IGY5MjA0M2M3ZmY5ODQwZTM4YmQ2MjJhY2ExZDUxYTQ5YTE3NDM0MTQgcmVsZWFzZTI3LW1haW50Cis4NDM2OSBlYTg5M2RiMjNlNzM4YzYwODhjNTA0MTQzN2ZlZTFiNGE1NDkxYTBlIHJlbGVhc2UyNy1tYWludAorODQzNjkgNDc0MzczOGNjYWZlMTdhYzllNWEzY2U2ZDM0MzFkODFkODg3OGIwZSBweTNrCis4NDM3MCA4NDg4MzYwN2UyMWE0YjFhZmVhZTQ4YmU4MTYyNTk2MDQxZjQ5MmMxIHB5M2sKKzg0MzcyIDdiMmQwZDc3ZTRhYzZlNTQ3NzNhZTk4Njk5MGM0MjRmNGQwNjNhNTMgcHkzaworODQzNzMgODAzODkyOTMzM2E5Yzc4MjliNTcwMGQwODVmZTJmMWQxZjkxMWJjNSBweTNrCis4NDM3NCAwOGY3YWUxMGNjNzkyYWVhYjA4ZTk2ZDQyY2VjNTFlOGJjOWZiN2E4IHB5M2sKKzg0Mzc2IGNhOGY4YzZjYzJiMWIyODE3ZTE0NGM3NzBjZmY2MzI5Njk2OTczZmYgcHkzaworODQzNzcgYWMzN2EyOGRkYzhmNDliNGE5YjRhN2VhODY3YmRhNWY4MDlkN2JjYyByZWxlYXNlMzEtbWFpbnQKKzg0Mzc4IDE1NzBmNmU5YTY4NzQ1OWViN2VlZjRlMTlkMjZhNDEyZGFmN2RjODkgcHkzaworODQzNzkgZDUwM2Y3YTQ1NDU2NmI5NDhiYjFjNzZkM2Y1YmFmZTU4YWU0ZmJmNSBweTNrCis4NDM4MCA2MjkzMGNiMDVlZDhiOGExNDRhZTIyZTM1YjBiMDg2ZjkyNTRhZTQ5IHB5M2sKKzg0MzgxIDAzMjY4YmY5YTI1NjRmODRmY2YxYzg1OTI4MzEwMDhlZjcwMzJmYzAgcHkzaworODQzODIgNGYyOTA1ZWE3ODA5NjczZjA0NTJmMzJmOWQxZDJiZTVmOThjMWE4NiByZWxlYXNlMjctbWFpbnQKKzg0MzgzIGEwZTc1NmQ5MmQ2MDA2MTBmOWJiODE5YzVhM2RkODYzMDM3M2JkNGMgcHkzaworODQzODQgOGMyMTYwYjVjODFhZjdhODgyMGVmNjRjOWM2MThiZmIzMzBkNTI4MCBweTNrCis4NDM4NSA5Y2E4M2M2NGY3N2FlMTU1OTI2ZDJmMGE2OTU0ODZlMzJhYmQ4YjI3IHJlbGVhc2UzMS1tYWludAorODQzODYgMmU1NzYxNWU2MWYwZjFhY2E2ZTUxNzg2OGE2YjU1Y2FiMWZhMmM5NiByZWxlYXNlMzEtbWFpbnQKKzg0Mzg3IDlmZDMyNmFmNjJkNDVjOGRjMmFjNjkwMzIyOTJjYWFkYjgxYmYwNWQgcHkzaworODQzODggNDk4MGIzZTllODRhMTgxNDliNmJmYjcwZGM4YzY3MzM4YzEzYTkzOCBweTNrCis4NDM4OSA3ZTlhYmQ1M2I5Mjk4ZTcwZmY2ZTRhY2YwNjhiN2RlMjJmZTBlNjc4IHB5M2sKKzg0MzkwIDI5NzNkYWE0NzI0YjFlZDZhZjNkOWViZmI5NGVjNWE5MjE5NTRjNGYgcmVsZWFzZTMxLW1haW50Cis4NDM5MSBkMjQ4NzBkMDBjNDI1OWY4MGM3NzY0Y2YzOTM2YjIwYjYyMmQ2MmIzIHB5M2sKKzg0MzkyIGIzYjhkMDhmOWQwNmVjZmJkODM2M2I0YmIyODViMGIwNjI1NTA2YTcgcmVsZWFzZTMxLW1haW50Cis4NDM5MyBkYTE5ZDAyYWFhYWEzZDZmYjc4ZTBlOThhM2FiOGZmODk5NTBjN2JkIHJlbGVhc2UyNy1tYWludAorODQzOTQgNWEzMTAxZjU1OGVkZGUzNDNhY2M0NDM5YWRkMGU0MDllNTgyNGI5MSBweTNrCis4NDM5NSA0MTM0OTgxNzQ2OTc2OGY3ZjJjMjhhYjBjZGZmMjU0ZDlmZmYzZTM4IHJlbGVhc2UyNy1tYWludAorODQzOTYgM2QxYzcyNjJhYTE0ZGNjMzg3OGRhNjQyOTE3NWE1YTFkMTg5Mjc5ZiByZWxlYXNlMzEtbWFpbnQKKzg0Mzk3IDk0NDIzMjUyMTYyNGJiNzhjYjEwMWY4M2ZjOWUzMmJiODFhMjE1OTkgcHkzaworODQzOTggZDg1MGMzN2I2NmI2ZjZmZDMwNzVhNTZkMDI5Nzc4ZDJlM2MwNDhkMiByZWxlYXNlMzEtbWFpbnQKKzg0Mzk5IDA2MWUyNzAzMmU2MTkzNjMyZmRjZmE4ZjVkOTIxZGU2MzNiMDY2YWMgcmVsZWFzZTI3LW1haW50Cis4NDQwMCAyZGMxN2RjYzk3MzQ2OWYyOWZmYWYzZTMyZTAzZjllYmVkMTUyZWM3IHB5M2sKKzg0NDAxIGRlNDIwN2M5YjljMTI4ZDgyNjM4ZTZjODg3MDc3ZGU5MGM1MTdlN2MgcHkzaworODQ0MDIgMzA0NWViOTQwNTk3YmMyYzQ0YjI0NWU0ZTc0NmNlYjQ3ZDA3NTFmMiByZWxlYXNlMjctbWFpbnQKKzg0NDAzIGZhOGI1N2Y5ODdjNWYxNWI4NDU5NDYzNWUwN2QyYWFhM2Y5MDM0NTIgcHkzaworODQ0MDQgZDY2ODA3YzUwMzhiZmI2NmY0ZjMzMzU4MGM4YTdmOTZiZTIwNDFlZiByZWxlYXNlMzEtbWFpbnQKKzg0NDA1IDZiYTAzMzIyYmMyMzNiYmRkMjgzNWNhNjY4NWRjODc0OThkMzhmMTEgcHkzaworODQ0MDYgMDYzYjU1NGQzMTUzZjM2ZjZlZTQ3YzZjNDFiNWQwZTAxNTZlZjE2ZiBweTNrCis4NDQwNyA0ZDhhMjVhNGQxZjYwODA1ZDgyNGMxNDA3ZGIwMDYyZWFkNDRhZTZlIHB5M2sKKzg0NDA4IDkyNWU5MTEzZjBhYWVmZjEzYjYzZGVhN2Y4ZTgyZTQwMmRlMmU0NmIgcHkzaworODQ0MDkgN2EzOTViY2VhYzkxYWYzNjBkMzNiNTgzMzk5NDRhMzcxYzg3NzUyOCBweTNrCis4NDQxMCA0NTQ3YjE0OTExNjkwMzdjMGRmNTQyODJmNmE0NTA0M2UzYzNmMDJhIHJlbGVhc2UzMS1tYWludAorODQ0MTEgZmE0ZDc4YjllM2EyYTZiODRiODQ1OGVhZDcyZDU3Zjc0NDExZjE1OSByZWxlYXNlMjctbWFpbnQKKzg0NDEyIDYxOWFmYzgxYzk3MzFlMTVkNWUxZGIyZjhiNTU1M2JiYTJlMzQ2NDcgcmVsZWFzZTI3LW1haW50Cis4NDQxMyBmYTk0OTUzMTZjYTkwMGQxOTE3NjE3NGQxNmJkMDBkNjI3YjdhMWM0IHJlbGVhc2UzMS1tYWludAorODQ0MTQgYTNiNjQxOTI5NmU1ODRiZjdiZGE1MjkwMTJjNTE1ODQ5ZDc5N2Y3MSBweTNrCis4NDQxNSAyNWVkYjZmNDM4YjkyNmQ5OWM5MWQ3ZTkzYWJiMzRhMWQwN2MyNDVmIHB5M2sKKzg0NDE2IDUzOGFlNjIyNGE1ZWI1ZWZlZDk4ZjdhNThmZjk5ZjZkMDljYzEzMDYgaW1wb3J0X3VuaWNvZGUKKzg0NDE3IGQ3OTIxNmZjMjFjZTc1MTE5Y2I5N2ExYjUzZGIxNjZmNDQwYzZkNzEgaW1wb3J0X3VuaWNvZGUKKzg0NDE4IDgyZWFjM2MyYzY5N2RmMGExMGJiMmYwZjY2YTJiNGU3YjI1ODdlODUgaW1wb3J0X3VuaWNvZGUKKzg0NDE5IGVkM2Q4NjFjNDkwY2EyZmM3MDQzZGQ3MTk0MmVjNTRmZTU5MTc2MjcgaW1wb3J0X3VuaWNvZGUKKzg0NDIwIGEzOWJhN2FjYmUyODcwNGEyODIxNTk0OTcyMWJlNjZkZDZmZjkzNWEgaW1wb3J0X3VuaWNvZGUKKzg0NDIxIGU2NjBlN2JkNzk5ZDcwZmNhN2E3MmZhMzRkOGY0Y2Q4MjNlODIxNmIgaW1wb3J0X3VuaWNvZGUKKzg0NDIyIDgwNjQxYzdhNmY0ZjljMjRmZmVmZWNhYzA3Njg0NzE5YTBkYjRhYjEgaW1wb3J0X3VuaWNvZGUKKzg0NDIzIDNkNzg1MmI4NjEyODRkOWM2NzE3YTVlZWI4NTA5NDYwZjU0ZGExNmUgaW1wb3J0X3VuaWNvZGUKKzg0NDI0IGIyMWZkOTRmNGZiMzdiMzM4MTg2MzhmY2NmMTAzMTIwNTlmOTQ3MzUgaW1wb3J0X3VuaWNvZGUKKzg0NDI1IGYwZDBhMDcwZjEyOGYyYjcwZmFmZDhhMzUxN2ZhZWY0ZjRhNWJjMWYgcmVsZWFzZTMxLW1haW50Cis4NDQyNiA5M2Q2YWQ4NTIzNTM0MWRmYzIxN2NkOGU0ZDdhYTdlNjc1MWY0ZTMyIHJlbGVhc2UyNy1tYWludAorODQ0MjcgODIyMTFiMTg1MGQ0ZGEyYmMzZDcwMmYxNmE0ODU4Mjk1ZTQwY2RjMyByZWxlYXNlMjctbWFpbnQKKzg0NDI4IGRjYjJhYTQxY2Q3ODBhMDAzY2Q3ZDEwZWQyZmI1NWI2YjEyNTliMmIgcmVsZWFzZTMxLW1haW50Cis4NDQyOSBhMGQ4ZGUwNGMzYTgyODUyYmI4NzdmYTcwMjRkZjY1MTdiNmI4YmUwIHB5M2sKKzg0NDMwIDFmMDRiMDA3NmZkODE1ZTM5NGQ3YmM0YmY3ZjBmNmFiMGFiODYyZjggcHkzaworODQ0MzEgYTdjYWRkN2IzNGI1MjZmMDI3NTdkMzQ5YWEzNjlkYTUzZmEwNDU1MyBweTNrCis4NDQzMiA0N2I5M2NkYTkxZGY1YjJiZDJjOTdkNzA0ZTAyYTYyNWY4YmM2ZGZhIHB5M2sKKzg0NDM0IDgxYTlhYzczZDYxOTYzMjlmYjIwZWQwOGMwMTRlMWQ5NDk5M2ZmNTUgcHkzaworODQ0MzUgMDI2MGUwNGQyY2ZjODI5ODkyYjgyMTg4NTdlOTZhY2M0OWQyZTYxYiBweTNrCis4NDQzNiAxMWZjNzk4YThiNDMyNzIyZTA5ZjZiYTBiNDc4Mzk2YTk0Y2MxMTE5IHB5M2sKKzg0NDM3IGJkNzQzNWE4NzA4YjYzN2VmMmZhMmI4YmZkNzM1ZDU0ZGJiMDlmZDEgcHkzaworODQ0MzggNTVkYjYwZmNhYjU0MjQyNzBiNWUxNWVmNWY1NWIwYmM2NmY2MWEwZCBweTNrCis4NDQzOSBiOGNmYmJmZTE4MzkwNjdlNzVlMmU3M2UxMDgxYWI0NTU3MzAyYzAyIHB5M2sKKzg0NDQwIGQxYzZiMWFiNWJhNzg1NDA4MTcyNGVhNWQ2ZWM5OGExNzc1YjExMTEgcHkzaworODQ0NDEgOGI5NGYxNWNiNjUwYmExYWFkZWIyNTkyMDBmNzM2Y2IxYTBmNmJhOCByZWxlYXNlMzEtbWFpbnQKKzg0NDQyIDRhZDdlZmQ5MDliY2U5NGJjMmZhMWVlYzMyMzY0MTM0NGQ0MDY2YTYgcmVsZWFzZTI3LW1haW50Cis4NDQ0MyAxNmNlZmRmZWQ2ODIwZDJjNTY0NzYyMTk4ZTE0OGRhYzI5YmRiNGQyIHJlbGVhc2UyNy1tYWludAorODQ0NDQgMTZkOGE0ZTk0ZGQwODcyNDk2MjJhZjliM2RlYTg1ZjU1YzYwNWVjOCBweTNrCis4NDQ0NSAzM2NmYWEzMmM4ZTgwZTc1ZWM1OGJlOWRiMjViMjE4NjJhYzhjZWRmIHJlbGVhc2UyNy1tYWludAorODQ0NDYgOGRiZDMxNmJlYmRmOTg3MjUxZGNhMjJmZTJiNjA0NzRjMDllMmNiMCByZWxlYXNlMjctbWFpbnQKKzg0NDQ3IGQ1NmIzY2FmYjFlNjU1ZWZiODFjODU2ODg0NDllZGIyZTYwOTc5N2QgcHkzaworODQ0NDggYjY1ZDAzNzFhNzMxNThiNGI5NmU2MTdmMjgwODkwM2ZjNTk2MGUyZSBweTNrCis4NDQ0OSBiOGVlODA4NjNkNjNmYWI4MDdmZDdjMzlmNTlhOWNjY2JlYmEzYzU1IHB5M2sKKzg0NDUwIDdkMTc1MmQ2MjA1MGM5YTMzNjBmZTg0OTI2ZWIwOWMzYmNjMmZjOWYgcHkzaworODQ0NTEgNjMzMTY2ZDRmYzEyYWQ5MmE3ZDhjMWM3OWU4ZjNhYjdkMWVmMDRkNCByZWxlYXNlMzEtbWFpbnQKKzg0NDUyIDgzYTZmZmYzZjY4MzM0ZmQ3Y2JkYTRjMzE3ODFjMTAyNTExMzZkNWIgcHkzaworODQ0NTMgMTI3MDQ1MWY0NjA0OWQ3YTlkOTE2NmVjM2JjMDNiZDBiMTk0YWU4MyByZWxlYXNlMzEtbWFpbnQKKzg0NDU0IDM1Njk5ZjM4N2RhNmU3ZDJkNmRkNjc2YjE4YzY0ZWMwYTcyOTI0YTcgcmVsZWFzZTI3LW1haW50Cis4NDQ1NSA5OGYzMzdhNjk1N2MxM2M5MDhlZGEwYjllZDRkNzNlOTUyYjU4Yjg2IHB5M2sKKzg0NDU2IDcyNjQwZTcxMTM0NDE4YTcwMDY1YTc1NjM0YmMxZGU5ODQ3ZGE4NmUgcHkzaworODQ0NTggNWUzM2IyN2M3MWE4NjE3MjE5NzU5MzRlOGJmZTNjMDc1ZGYxNmIzZiBweTNrCis4NDQ1OSAyMDI3NDdkYWUzY2ZhZWI0ZDY4YjA4MTgxMTI0ZTAwMjYzMzQ4MWZmIHB5M2sKKzg0NDYyIGJhODdjYWVlY2I5MTRmN2IxODM2Njc0NDhjOTcwYTY4MzY3NWQ3NzcgcHkzaworODQ0NjMgYjdjYjI3NzczZTcyOTFmNWYwNjQ1MGI2YTAzNTZlMmUyZTZjMDVjMyByZWxlYXNlMzEtbWFpbnQKKzg0NDY0IDcwMDE5YzVjZjM1ZjhlYzdjYjNmZTI5MmMzN2M4ZGUzNjVkODdiOWEgcHkzaworODQ0NjUgOTg4NzE4ZTlmOTNkMTVlMmE5MzdhNmUxYzg2YzBkYjQyZmQ3ZmJjNiByZWxlYXNlMzEtbWFpbnQKKzg0NDY3IDA2ZTVmZDQ5NTllOGExZTQwNDA1ZjBkMmY3YjJjYjUwN2MwOTRlMDcgcHkzaworODQ0NjggMWY0NzIwNmQ1NzdmMDdhY2UzZDIxY2QxNTdhZWE0ZDIwMDhhNjk1NyBweTNrCis4NDQ2OSBmOGJhOTU1OGFkYmY5MTViYTJmOTIzNzAxNDJkMjhiYzViNDM5YjYyIHB5M2sKKzg0NDcwIDNmNzc2NGM0MGMwYmZiOTUyYTk1NWQ3N2M2MGE5NjllMGY2NDZiZTMgcHkzaworODQ0NzEgZGJjOTU3NjJjZjU4NjM1YzY1ZDE3MTVkMTE4ZWI3YjRhNzI2YTUwMiBweTNrCis4NDQ3MiA1MjRiNDQ0YTgwOTUwOTVhNmQ5Y2JhYzFiZTIwZTQ0MGQ1NTUzZGJmIHB5M2sKKzg0NDczIGU5MmFkYTY0MmRiZGZkYjcxN2QzM2M4YWIzOWRiZTc3YTEyMzllZGIgcmVsZWFzZTMxLW1haW50Cis4NDQ3NCA4OTVhZWI0NTk1YzJmNzBlNmFkNTA2MTdiNGZiYjJiYTFiMTk1ZTUwIHJlbGVhc2UyNy1tYWludAorODQ0NzUgNDcyZGNmNTBjYTcxYzg3ZmM4MzFiOTk5N2ZmYjc1NTAyZmJmZjJjMiBweTNrCis4NDQ3NiA1MzMwNWJhZWY1ODhkODU3Y2UxMGIwNjIyYzIxOGUzYzM0YTU1YzdmIHB5M2sKKzg0NDc3IDQwNTJkM2UyODY1YmY4YTFhZjQ3YWI0NzkxN2MwMGM5OTExODFjYWQgcHkzaworODQ0NzggNWU1NWU5NWQ1Yzc3NGI0ZmMyYzEyMzc1MTNmZDY1OWQyMjNkOWY0ZiBweTNrCis4NDQ3OSA2OGZkNDMwODU5YTQ5YzNhODM3ZTFlOGExMTc5NmE1NTExYzhhMjZhIHB5M2sKKzg0NDgwIGVhNmQwODJhOWNmODA4NjdjYzFiMzIwZjFmZjI1YWIxMDE5NzhkZjMgcHkzaworODQ0ODEgNDBlYjU5ZTJmMmQzNTA2ZmRlN2RhNWE3NWY5ZTIyNTkwOGEyNjE4OCBweTNrCis4NDQ4MiBlNWFlMDNlZjdmYzEzYzg1NzJlNjM0NGEzODQ3NDg2MWRhZmVhOTExIHB5M2sKKzg0NDgzIGRlOGQzZDc5MWU2YTdmNDFjYjg1YzNlODA5NmIwYWIwMDc2MmQ2YWUgcHkzaworODQ0ODQgMDMyNTRmYzgzOTAxMTYzZDNjNDkzYzRmNDBjN2QwNTgwZGQ3NjM2OCBweTNrCis4NDQ4NSBlOWNkMTVkNTM5ZTFhM2ZlZGEwMDVjYmI5ZWNiM2ZlZTI5NDVlMjcyIHB5M2sKKzg0NDg2IGIyYjI2MmM1ZGFhODYzMDczYTAwYzJiMGZmNDQ5YTA5MWVlNzIwMTYgcHkzaworODQ0ODcgYjcwZDMzZWVmZDk2MGU0ZDBjMmQ2YzM0OGJlMmQ1NjdmMjU5YjkyZSBweTNrCis4NDQ4OCAwMGM2OTU3Yzc3MTkwYjI5MWJkYmFjM2JhMzRmYzBhZTA5YjcwZTZmIHB5M2sKKzg0NDg5IDkwZWI0Yzk3M2Y1MmFmZjUxYTVmYTlmMTM1MjIzYjY0M2M4OTZjNzYgcHkzaworODQ0OTAgMGFmOTRlZTk5YTQ4NGJkYzI1MjFiM2QyYmE3MTE5NzQxZTU4NzQzMCByZWxlYXNlMzEtbWFpbnQKKzg0NDkxIDkxOTdiYWU2MTlhYTQwYjI1OTgyYTU0NGQ0MmNlMzQ3NDY4MWQ2YTggcmVsZWFzZTI3LW1haW50Cis4NDQ5MiBlZDQ1YTI2ZjY2NjRkYTcxOTg2MjM0YWJkZDU1MGQyNjIxYzcyNmQ3IHB5M2sKKzg0NDkzIDQzMzE5ZTI5MmQ2NGJhMTlhOTI4MDcyN2FmNzgyZGMzNmEwNWEzMGEgcmVsZWFzZTMxLW1haW50Cis4NDQ5NCA1OGI4MTAxZWFjMjM4ZTYwNTNhZDE4MjVhMTk2ZDNiZjY0ODBiNDlhIHJlbGVhc2UyNy1tYWludAorODQ0OTUgMGY2ZWU1OWMyYTc2M2E4MmE3NWFlZGU1OTUxM2I0MTk4OTdhM2VjOCBweTNrCis4NDQ5NiBkYWJjMTE1MTE2YmQ3NDhkMjExZWQ4M2ZmMGI5ZjIxODUwNzllNTVmIHB5M2sKKzg0NDk3IGQyYjhmMTEwMzIxMjRiYmIyNzIzY2Y3MjIyMzU2OWRjNmVmNTA5OTYgcHkzaworODQ0OTggZjk5NGU2ZmQwNjgwNjIxNDI0MjkyNmY2ODNlZDgwM2U2M2UzYzgwZiByZWxlYXNlMzEtbWFpbnQKKzg0NDk5IDhlY2UyOWM4YmJhMjhlZDVhNmUyNDFjNGQwZThiZTRkMTQ3MmRiMDggcmVsZWFzZTI3LW1haW50Cis4NDUwMCAxYjVlZTZlODQ1Y2RmMDE3MzdkODk1NmY5ZTc3ZjM2ZjVjOTI1NzA1IHB5M2sKKzg0NTAxIDcyNTIzMTIxMTI3MzI3YzAyMjA5NmQzMGU3YjI4YTRhNWE4OTQ5NWQgcHkzaworODQ1MDIgY2U1NDZhMWI5ZmVjMWY2MGJlZGIzZjMxNDZkMDZmMDk4ODA1Y2Q3ZCBweTNrCis4NDUwMyBhNDE1Y2Y5NGM3ZGE3ZjM1OGJjNDk1ZWY4YWU1ZDYzMTE2NmM4YjI3IHJlbGVhc2UzMS1tYWludAorODQ1MDQgNTk5N2FlMmVhYjM3MTkxNzg3NGI3M2QyNmEzMTMzYzdjM2EwYjI2MiBweTNrCis4NDUwNSBjM2FkODgzYjk0MGJlNGVlYWI3NTJiMGVhYmRlZjZkZjYwMDljMDA1IHB5M2sKKzg0NTA2IDc4ZWE0NDIyZGY0YzJjOGQ4MTNiZDM3YzU2MDc3MDU5ODBiZjZjYmQgcHkzaworODQ1MDcgMjNjZjU0MTg2ZjU2NTMyMDY5Y2Y4MzkzNzc0OWU4YThjODY5MDRhOSByZWxlYXNlMzEtbWFpbnQKKzg0NTA4IDk4MDgzZjg3NjQ1NTQ3MjYyZDk4MTYyN2M4YjA2NDFjZWRhZmMzNjIgcmVsZWFzZTI3LW1haW50Cis4NDUwOSA5NzIwODM2YWEzY2I4OTMxNTZkNDRjMzc3NjlhZDU3NGM5NTA4N2M3IHB5M2sKKzg0NTEwIDYxYzQ0NzkzMjM4ZDE3MTRlY2QwZjY5ZmRkNTFhOTA4YTI0ZmMyZjAgcHkzaworODQ1MTEgYjMyY2JmYTk2NzM5NGUzMzkyZWM0NGIwMWY1N2E4Mzg1YmJiYmViNyBweTNrCis4NDUxMiBjNzhlYjAxNmQxYzUxNDg2ZGE2MTFmNDA3OTU2NjFmNzE1ZDY3NzVlIHB5M2sKKzg0NTEzIGM0YjM0YjJhNWNjMGVlZWI1NzI1YWFkN2MwMDM3NzdkYzMwMTVkN2QgcHkzaworODQ1MTQgMGIwYmQ4MTAyODkxYmI5M2U2ZWFiZjYwNTUwYjYzYzYwMzc4NTEyNiBweTNrCis4NDUxNSA3YTM0ZGVmMzVkZTc0YmQ3MmZiNjVjMWFlY2UzYzI4Yjg2ZTA1NGNhIHB5M2sKKzg0NTE2IDNjMzY4NDlmMDYzOTdiNWExZjQ2MjA0Y2QzNTQ1NGI5MTFjNjczNWYgcHkzaworODQ1MTcgYThkNTRlODAyM2YyMWE2MmYzYjM2YmEzODJmMDRkYmJkYWMzNTc5YyBweTNrCis4NDUxOCA4YmIxNjJiMDE5MjZmNWFmOThiZjQ5OWJlYTNlNjg4NTFkOGRmODk2IHB5M2sKKzg0NTE5IDI2M2IxMDc3YWI5NzViM2RlZTA5ZTY2MDMyZWM2MGU5ODkzYzAyYzUgcHkzaworODQ1MjAgMGQ4NjE0MDc1NWYwZDQ5NTM5M2U4ZjY2MTAxNTVmZjliZGVlYThmZiBweTNrCis4NDUyMiA1NmRjMmE1YWYyMGExYWVkYmVlZTQ5MDljYWJkNmYwMTVkNTQ3OWYzIHB5M2sKKzg0NTIzIDYyMDk4NzUxZGE2N2I1ZWVmOWJiODViMjE1NzEyMmEyMmRjMDcxNGQgcHkzaworODQ1MjQgMTYxMTkxMjkzMjRkNDFmYWYzNDQ3YTM2OTMwMThmMDUzMjUyZWQ3NSBweTNrCis4NDUyNSA3ZDliNGUwMThjNjJlOTIzZGNlOTUyZWU2OGUwMGVmMmVhYjkxOWMwIHB5M2sKKzg0NTI4IDc4YzRkZGE3Y2RjNjM3MzdmYTI0ODdlMTUyNTFkZjFlOTVhMmI4YzAgcHkzaworODQ1MjkgNTEwNDhmNjI3NmNlODRhM2M5OTE5NTk0MWQwNTBmYmEyYzBlZmVkMyBweTNrCis4NDUzMCBkYzU4OTJmNzNlMDM2ZGY4NDYwY2RlYzAyY2Q3YTFjYmEyYzA1MmVkIHB5M2sKKzg0NTMxIDRmN2I1NmI3ODcyNTI1NjE3YzU2YjdiZmM4NDk3ZjJlMzBkMjFhNzEgcHkzaworODQ1MzIgYTc1ZTk4OTM3NTQyYmM1MzIzNDMyOWQwNmM0MjE1N2U3ZWUwY2M2NiBweTNrCis4NDUzMyBiMGFiODMyZjg5MjEyODE4ODJlNGUyMTdmYzBkMzMwOWEwOGZlNTMzIHB5M2sKKzg0NTM0IDc4MTRkYzlmMzFhMjVjOTM3N2VjNjZjNTNlMzE5YzI1YTY2NDFiNDIgcHkzaworODQ1MzUgN2UwZDg2NmNhODcxNDgyNGNiMmE5ZjhlNTRlZWJjODU5ODM4ZTc2OCBweTNrCis4NDUzNyA3YTdiNTMxYmNiNjRkMTI1ZGQzYmIwMWY0YjcwMzFhNzAwNDU5OGE1IHB5M2sKKzg0NTM4IDc4ODc5NzFkZGE0ODNiY2JmZjIxOWYxZWJhNTlkMzBmMGVlNDlmMWQgcHkzaworODQ1MzkgMjEzOTE2MDI4N2ExMWEyZDA2ZWFhYjE2MjJlYTkzMGUzMTExNTY0ZiBweTNrCis4NDU0MCA1NmQ0MzczY2VjYjczYzhiNDUxMjZiYTdiMDQ1YjNjN2IzZjk0YjBiIHB5M2sKKzg0NTQxIDFkMGQzM2MwNTE1ZWU4YmM2ZmZlNjc0ZDlhMWMyZWY2OWM5MTA1M2IgcHkzaworODQ1NDIgNWM5OWY4YzkwZTY2NDE2NTRhMzNkMzc3ZWYyMGJhMzNkODc4OTE5YSBweTNrCis4NDU0MyBjMzQ4OTI1NzViYzBlNGFmMTExMDA1MTAwMGY5NzZhMWNiNDMxMGNlIHJlbGVhc2UzMS1tYWludAorODQ1NDQgODdhYTYyYmQxNzE1NmU5ZTI4OGFkYzAyMThkNzNhZmFmYzMzMzU3YiBweTNrCis4NDU0NSA4ZWY2OGViZWMwZTFlMmU2YjE2OGZjMTI3ZjY3OGI1Y2E0OTdkODFmIHB5M2sKKzg0NTQ2IDY5Y2IwOWYyNjQyNDBjYTNjMzAzMTc2MGRmM2ExMzRkNjBmMjQ1NTAgcHkzaworODQ1NDcgZTU1OGFjNDI1YTUxODViZjFiNTYwODMxMTYyNGQwOTU2ZWYxMjYyNCBweTNrCis4NDU0OCAwNzEyMjVhZjY0YTNkNzA1NmIwZDUzNDZhMDBkZTk3YWMxMjhlMzY1IHB5M2sKKzg0NTQ5IDY1N2Y3OTUxOTliOWU3ZTM0OTEyN2VmZmMyZmZlMjk3NjM1ZTRmZDMgcHkzaworODQ1NTAgNjMyNGQyMzk2M2E3MTkwNDVjNTM0ZmNiMTEzYTQxZmQ2MmYyN2U5MiBweTNrCis4NDU1MSBkMzg5Mzc0NzFmODk4NGFjOTYwNWE5ZTU3YmFmYjIyYzcxZGM2MTcyIHB5M2sKKzg0NTUyIDM5YWFhMmE3ZmQ0YmY2ZWEyNTY1ZTQzY2QxNTgyYjQxNmIzM2RjZTYgcHkzaworODQ1NTMgMWQzNzRlNWJhMmYxMzJlYjk5YjdkNTVjNmRjNDExY2UyZWU3ZjYwOSBweTNrCis4NDU1NCA0OTQ0MWU4OGNjYzE0YWQ0OGZmYzFjMjFhMzY0ZDExNjFiNzY5NThlIHB5M2sKKzg0NTU1IGQ5MzljODBjNjY2YmQzNzM4YjQwNzc5OWUyNzZkNWZhYzQ4ZjMxMTEgcHkzaworODQ1NTYgMDYyYWI1MTQ3NDg3NDU5N2NlYjY1ZTEzYTM4NDQ3M2E5YTFhNzc3MiBweTNrCis4NDU1NyAwNDdhOWQ3Y2EyNDFkYzFiOGNmZjZiYmFjOGQwOTNmYjhjNDhkY2VmIHJlbGVhc2UzMS1tYWludAorODQ1NTggMmMyYTM4ZTBjZjMwNzY1NTFjYWM4NTc3ZDE2ZGVhZjRiMWI5YTMzMyByZWxlYXNlMjctbWFpbnQKKzg0NTU5IDliZGM1OTAxMjA3YjhjZDgwZjczYzc1ZGM3Y2M1ZWM3YmZiYTQyYTIgcHkzaworODQ1NjAgNGExNDU1ZDM2OGZmNWZmYWRjODE0ZjdlOWQ2YWJmNTVkNzNhMTJiMyByZWxlYXNlMjctbWFpbnQKKzg0NTYxIGY2ZGZkNmM1NjNlMTE1OGE0ODZjNmYzYTY0ZWRkYTUyZTdiOGY4YmUgcHkzaworODQ1NjIgMjE0MDU4MTJmMzEyNzBjZmZhNDYwZDdkYzQzNTU0ZWFiOGNjYWE1ZiBweTNrCis4NDU2MyAwYzBmMWQwZWI3N2U5ODBmNzBmYjQzZWNkODNkODY3MGJkNDU2ODU1IHB5M2sKKzg0NTY0IDU0MTMzODc5NTk1MDcxMTlhMTFmNjk5ZmI2NDg5YjNmZDE5MGVmMzkgcHkzaworODQ1NjUgZWYxNmI0Yjc5ZDU0N2Y2Mjk4OWYyMGE4ZTRjNGU0Yzk4Mzk5NjZlYSBweTNrCis4NDU2NiA2YThiNWE2MThlN2FlZjBjNGY0NmFlMjQ2MzQwMDBiZTZjYWVhY2EyIHB5M2sKKzg0NTY3IGIzMDYxMDViZjgzZGZhMjY1ZWZjMDI1YWNmOGE3ZTIxN2FiOTM5NzYgcHkzaworODQ1NjggMTI0N2ZhNzUxNzcyMWFkY2E3ZTUzNTQxYWIxNzM3MTBlY2E5YWNjYSBweTNrCis4NDU2OSBmYWFhYjVhNjU3ZWI1NDliMjE3ZGRiMGQ0YjJiM2IwMDljMTAxYTI2IHJlbGVhc2UzMS1tYWludAorODQ1NjkgMTY5MmMwYjYwMzE3NjQxNTYyNzNmMjA5Mzc3M2FlNzgzYjk1ODczZSByZWxlYXNlMjctbWFpbnQKKzg0NTY5IGNkOTE4YWM3YmQ1NTRjODk2ZjU5M2I5NmJiNTk1NGQyZmEyY2U0ODQgcHkzaworODQ1NzAgNTRiNzk2NGRkN2E5NWUzMDkwMjEwMjY2NTdmYmVmMGQzN2IzYzI4NiBweTNrCis4NDU3MSA1Njc4NzU5YTgwMDlhNzA3ZDg1NmI1MTkyNjU5ZDNmYWM3YmFjNjBjIHB5M2sKKzg0NTcyIDUzY2Q4ZWNkY2U4YWU2NzFhYjU5NjIzN2ZmNmQyYWY3OTU1NTliMjcgcmVsZWFzZTI3LW1haW50Cis4NDU3MyBiMzJmZGE5ZjcyZmY5NWQxNGQxZTBjYWNlZWEwZTFlNjQ2ZTQ5YmZkIHB5M2sKKzg0NTc0IDY1NjQyZjA4NWM1NWM5NDVhOWJiMDUzMGE0OTBiMjkyMGQ0MThlY2MgcHkzaworODQ1NzUgMTFiYTYzOTdlM2E0ZmU0NzQ3YWUxMTU2YTA3YzE4NmY4ZDEyNzE0YyBweTNrCis4NDU3NiBjMmY4NDE4YTBlMTQ2MTM5MWRmNjEyYzVmZDIzODg3MzIzNDdlMmM2IHB5M2sKKzg0NTc3IGUwN2M0NDgzYWQzYjZmYjE1MTVkNzdjODkwY2MyZDkxMGU4NWQ2NDAgcHkzaworODQ1NzggOWNlZDdmMmYyMGIzZjFkNzNhYzczYzE5ZGMxOTEwNThlNmYyZGRmZCBweTNrCis4NDU3OSA5NGUxZjIzNmM4OGQ3NzkzZjZiYjE3YzRjYzllMzJmMzA1N2QzNDJiIHB5M2sKKzg0NTgwIDZiYTIwYjkwMzlhZTY5OTAyOGY5ODI0MGY5MWEzYTQ4YTA2ODYxNzggcHkzaworODQ1ODEgZTgzYWYxNDFkZmZkYWE4ZjU1YTI3ZWMxNmM0NDAyMzk2ZmE4NThjMyBweTNrCis4NDU4MiAxYTFlNzI1NGQ5NjU1NjdmYTRkMWU2YWMxZGUxNWQyM2Y4YjExOTA4IHB5M2sKKzg0NTgzIGU0ZGUyMTc2Zjk4ZTMwZjRjNGU4YjBhYzdiNWM0MjU5YTBiZmY4ZjAgcmVsZWFzZTI3LW1haW50Cis4NDU4NCA0YWM4YWU3ZTgwMjJjNDRlY2NlNzFlYjkwMWUxZGYzMDY5YTFhZTY5IHB5M2sKKzg0NTg1IGFkZmExZTQ4ODczNGUyY2NlNTcyYjhjMjUxNTQ4ZGRlOTljODYxYTQgcmVsZWFzZTI3LW1haW50Cis4NDU4NiBjMjE5OTE3NWFkYThkZTgxZjJjZTFmYWNhNWJkYTY1ZmM4OTMyMWMxIHJlbGVhc2UzMS1tYWludAorODQ1ODcgNjA5NWVhOWRjZmY0MDA5NTAyMGNlZDgzNTI2NDU5YWU4NTM4YjZjMCBweTNrCis4NDU4OCAxYzIyYzFlNDUzZDRhMWNjZTc4NTM4NGM4Mzc4ZGYxMGQyZTFhMjQ0IHB5M2sKKzg0NTg5IDg0YzI0ZGIxMzY3N2M3NDAyMTBhZjJhNDZjODMzNzRlMWI1YThhOGYgcHkzaworODQ1OTAgM2U1YTg5Mzc2ZGY1NDQwNGZjZjUxZjA5NDU5YjA1NGMwNGQyNTRlYSByZWxlYXNlMzEtbWFpbnQKKzg0NTkxIDc0MzJlNTA4ZWI2NmE5ZTBjOGFkYzQ0NjZlNWEwMjVhNzhmN2NjODcgcmVsZWFzZTI3LW1haW50Cis4NDU5MiA0YTNkZGI4NjJhNzJjYWZkZjVhYTgzMWIwZTVlMGZmMThmODExOGQ1IHB5M2sKKzg0NTkzIDVkZDFlNTk0ZDkxOTVlYjUxMjkwODUxYTAxYTNhOGQxNzkwMTgxMWQgcmVsZWFzZTMxLW1haW50Cis4NDU5NCA0YjY4ZDQ3MzQ4YTRkYWI3ODU0NTYyMjkwODdhMDY2MjQ3NzljNGE2IHJlbGVhc2UyNy1tYWludAorODQ1OTUgNzcwYzNlYzA1Njg1NmI0NDg0YmIzNDYyNzgyMzk0ZTQyZDNjM2E1MCBweTNrCis4NDU5NiA4OWZlNTE3OWFlYzVmMDBjNTgyZjk5MTkzOWFhMDE0OTFmZGZkNzRlIHB5M2sKKzg0NTk3IDkxYzdmNDRlNGJlYTlkY2FmYTE4M2E0MmViY2Q2MDNiMDMyOGVlY2MgcHkzaworODQ1OTggYjJmN2NmOWM2Nzc2MzU5ZjI3NTE2MGZhZDE1M2Q1ODhlMjE3MzE3ZiBweTNrCis4NDU5OSA2M2NlZWYwNDUzZjQwNmFiZDIwZjljNGY1ZjIyMTljN2ViMzg0MmI1IHB5M2sKKzg0NjAwIDI0MDBmNTVlYTMxMjUzMDg4ODg4NWUwY2Y4Y2Y4OWMwMjAyNWZhNjIgcmVsZWFzZTMxLW1haW50Cis4NDYwMSA1ZDczYjAzNjU3M2I3ODdmNTAyMDE1NmE2ZGQwMzVmYTU2ODI4NGVlIHB5M2sKKzg0NjAyIGQ2ZDRiODQ2NGI4Y2Y2ZWIxMDI4NGRlMTVhZjliYmMwMTM2YzEyNmMgcHkzaworODQ2MDMgYWY0MTRiMjlkNDY3ODcxM2MyNGY5M2RiYjFhYTk3Zjk4Nzg4MzUxYSByZWxlYXNlMjctbWFpbnQKKzg0NjA0IGVmMGEwN2Q1NGRjMTdkMzBiODQ5NTA2MjE2ZDQ0MmQyMWZmYWUxYjYgcHkzaworODQ2MDUgNGM2NGU2ODhmNjY1ZWZkNjI1MDQ3MTE0Zjg3NjQ3MDQ3M2Q5MDU0MSByZWxlYXNlMzEtbWFpbnQKKzg0NjA2IGQwMDhmNDA2ZGM5OGM5ZDFjM2I3ZGRkNGQ2NTFjNjllNTE0YzY2NjggcmVsZWFzZTI3LW1haW50Cis4NDYwNyBjMmQ2ZjBjZjkyNmEyZjNlM2ZhMDBhMTY2MTJkOTkwZDNlMWE1YjVkIHB5M2sKKzg0NjA4IDk2MGRlMDEwMDgxYjc2MzEwM2E5NTc0YWQwYTAyZGI4OGQ4MDA1OTkgcHkzaworODQ2MDkgMzg0YWVlNjI3M2U4MDViNjk2ZjAzM2E1ZWZlZGQ0MmQ2OWM4NWYzZCByZWxlYXNlMzEtbWFpbnQKKzg0NjEwIDAzYTZmNzgzOWQ2ZDM1MzJmZWU2YmMzODEzMTE2NjEyM2E3ZjJlYjggcmVsZWFzZTI3LW1haW50Cis4NDYxMSA1NThmMzM4ZTEzMjA4MTE3N2VjNmIwYmUzNWE5NzY3YzQyOTI3YWFjIHB5M2sKKzg0NjEyIGUwNjIzYjZiNDNiNjM3YTMyMTA1YzI5MmY4ZDI0YWZkZTljOGY2OWUgcmVsZWFzZTMxLW1haW50Cis4NDYxMyBiYWYxYTQ4MmI1N2Q3NjZmN2M1ZTY1Nzk1MTU2NTQ1OTRhMTE0YjA3IHJlbGVhc2UyNy1tYWludAorODQ2MTQgODkyM2UxNDkzYTM0NDkzNmVjYjdhOGM5NzMwNzNkZjM1NGY4ZDUxMiBweTNrCis4NDYxNSBkMjdkNGJkNDg4ZGM4Mzk0NjRlZTBjNTJlMDI0ZTZiOGVhMWU0NTU0IHJlbGVhc2UzMS1tYWludAorODQ2MTYgMGZkYTgyYjFiZmJiYzUzOGRhNjY5OWJlNWNjNDJkMTdjN2FjY2Y0ZSByZWxlYXNlMjctbWFpbnQKKzg0NjE3IGQ1MzMxNzEyYjUwOWQ1N2Y0MjVlMWEwZDc0MDRjOTE3NTRjNTllMDAgcHkzaworODQ2MTkgNzlhMTRkMzY4NTQwMWMzNTE5ZDg5MTg1YWRjZWE2ZmIwNzZjY2E1ZiBweTNrCis4NDYyMCBlM2VkZDJmOWJiNmFjMzA2YzE2NGIxYzAzNTc4ZDRhZTYyMGUxMDhmIHB5M2sKKzg0NjIxIGU2MGVmMTc1NjFkY2VjNDI2YjIyMWVhMmIyMmMwOTJjYzFmM2UxMmIgcmVsZWFzZTI3LW1haW50Cis4NDYyMiBhMGI0YjJkZmQ5ZDVhODEzY2M0NTA5Yzc0MDIxYzJlM2QxZWMyMTRmIHJlbGVhc2UyNy1tYWludAorODQ2MjMgODUxNjcyNDk4ZmU1MzRkYjZlNjU1N2JmMTE5NWExNjM2MGJhYzgwZCBweTNrCis4NDYyNCBjNDdmZjNhNTNhNGE1MWFhZTAwNmYzYTdhYjI2ZjNlZjhiMWRiYTY3IHJlbGVhc2UzMS1tYWludAorODQ2MjUgNTc1ODQ0NDI3YTk1Y2ZjMTQxNGZmMDA0NmRhODQ5YWQ2NzMyNGM4NiByZWxlYXNlMjctbWFpbnQKKzg0NjI2IGFhNjZkZjc3MmUyMzc4NDdhMzM5ZTFhM2VkZTQ2ZjkxNWJhODRhYjQgcmVsZWFzZTI3LW1haW50Cis4NDYyNyBmOGY2NmViY2Q1YjFlYjcxYTNjODJhZmIxZWFiNjk5MWVhYzVjNzBkIHJlbGVhc2UyNy1tYWludAorODQ2MjggZGM1OTg2ZDBlNWE0NDMxNmMyNzJjNzgzYWQxYTNhYjRjYWVjZGYzMCByZWxlYXNlMzEtbWFpbnQKKzg0NjI5IGE0Y2ZkNWI1ZGY5NjY5NzUzMWM5ZTg1MzhmOGZlYjY2NzBiMjg0MjUgcHkzaworODQ2MzAgNDViMjNmM2Y3ZjZiOWVjY2Q0NGVkMjM5NTk4NmVlMGZkNDg3M2NhMiByZWxlYXNlMzEtbWFpbnQKKzg0NjMxIDI5N2Y2NmNiMzc2NDRhNDUyNzA4NzQ5YTQwMzY2MmFkOGQ3ODBlMWIgcHkzaworODQ2MzIgYjE4NjVjYTdiNjVjMTQ2Y2UwZmM1YTJiZTRlMWEyYmMzZDkyZTM1NyBweTNrCis4NDYzMyA3YzJlYjViNmNjNThjNjRiYmUwNzExNmQ4Zjk4NWUyZDY5YTdiZTMxIHB5M2sKKzg0NjM0IDg2MjdjM2VjOTcxMTI2ZjQwOTQ3OTFiZThkNTNmMGQ2NTFjYTg3NTMgcHkzaworODQ2MzUgYTJhZWRkYzE5YjY2YjVjMzhlNTIxOWFjMzFiNmU2ZTllMTI3YjhkMSBweTNrCis4NDYzNiBiMWNmM2Y3ZjMwNGNmMDg0ZGY0ZTE5OWUwMjJjZjdkZDdhM2E1MDk4IHB5M2sKKzg0NjM3IDEzMjIyNjZmOTYxMTVhZDUyN2MwNGVlNjExMGExZmJhNWJmM2M3MDEgcmVsZWFzZTI3LW1haW50Cis4NDYzOCA0NDFlOTRjZTQwODcxNmZhZDY3NWRkMDJhMTVhYzNmYjQ4OWI0MWQwIHB5M2sKKzg0NjM5IGNhZjBiNGIwNTY5ZWFkMDcyMjdiNjE0MjA3ZjJjYjhkMjU4NDk4MWEgcHkzaworODQ2NDAgYTU4YmY2NjcyNWY4NmYwYzBmODg0ZGJkYWNiMjcxN2Q1ZWFmYTFmYyBweTNrCis4NDY0MSBmOGM4OTZhZDc4N2Y4ZDA4YjM3MjVlNjRiNzFhZWIwMDUyNmI5ZmQ4IHB5M2sKKzg0NjQyIDJjNTQ3MjEwZjhjOWY5MmFlMWZhZGI3MjcwYzc3YjE2ZWMxYzI0OGEgcHkzaworODQ2NDMgNDYyZTBiZTNiNmM0NmY2ZjdmZTZiOTBhZTkxMTI1NzEyZDM3OGNiMiBweTNrCis4NDY0NCBjODg1NTBjYTBmYWZiNjRhZTU5OWNhZDA2NDA1M2E4ZTZjZjU4ZjRkIHB5M2sKKzg0NjQ1IDYzNjE5YjQyNWVjYWEzOTE0ZmZhNmNlOWQzOWNiMGVlNzFmY2MyMTkgcHkzaworODQ2NDYgZmVhODZjNWUzMzg1ODkwYTUzZTM0MGExNzBkNWExZjg0OWYwZDcxNiBweTNrCis4NDY0NyA3MWIyNjRlMWJiNzE2NDQ3NzkxMWIxOGM1ZDVlNmM2NThmZGYwZThiIHB5M2sKKzg0NjQ4IDk2NTllOGM0MDA3OWIyOWYyNmU1YmRkNDJiNzRlMjE4ZGJkZTdhMWIgcHkzaworODQ2NDkgYmE1NDA5NmI3YTQyODkwZWZhYjliOTE5Y2JkMGI3Njc2NjA0MTBiOCBweTNrCis4NDY1MCAzOGNhNjM1MTgwODVmNTc0ZTQwMTMyMDRjZDUyODM0MTc4NDYwODY3IHB5M2sKKzg0NjUxIGE1MWY0NjdmNWUxZTgwYjAwYTU5NDNiNDM1Njc2NjdiODMzMTdkZGQgcmVsZWFzZTMxLW1haW50Cis4NDY1MiBkMTNjMmY5MGMxNjlhYTc2YTJmMDY3NDQ3OTdjY2Q5OWE5NDQ4Mjg3IHJlbGVhc2UyNy1tYWludAorODQ2NTMgMDI3ZjgxNTc5YjRhMGFjMDFmNTYyZTVkYTY3MjU3YzE0YWE4MjU3OCBweTNrCis4NDY1NCBkNDkyNzE1NGI3N2I4ZjIzNjEwZGYxOWUxNDE2Y2JhYjY5OTM2ODU2IHJlbGVhc2UzMS1tYWludAorODQ2NTUgZmM3NmU4YzYxN2RjNDdjNzc5ZDBjMzk0OTc4YjI4YWIxZTI1MzJmMiBweTNrCis4NDY1NiBhZTQ3MDc5NDljYjI0NjA5MWZiYjYyZTYxOTA0ODNkNjIyNWU2ZjJiIHJlbGVhc2UzMS1tYWludAorODQ2NTcgMWI3ZWE0M2U1Yzc5NjdiNTUzNmU0Y2UzN2NlYzA5YWE1NDZiNTZiOSBweTNrCis4NDY1OCA2ZjE0ZjAyMzU5ZTgwYWIzOGZjZDI3NDVkYmMyN2FkMTZhNDBhMTU1IHB5M2sKKzg0NjU5IDg0MjE3YjJkOGMwYzA2Y2Q2OThmYTYwYzUyNmVlNDQyODdmZDlmMmUgcHkzaworODQ2NjAgYmVlNjgzY2FlNzFmYzc5ZGU5MGY4YjY4NmU0NjZkZWFmNzQ3MTBhMSByZWxlYXNlMzEtbWFpbnQKKzg0NjYxIGYxMjA3ZDlhOWIwN2MxMzZjYzkxMjJjMzFkODIxMmE3YzNkNzAwYzIgcmVsZWFzZTI3LW1haW50Cis4NDY2MiAyZGE1ZWNkMjI0ZmZlN2ZlNzQ5Y2M3YWYzYzBmNDYyOWI5NWUwZTZlIHJlbGVhc2UyNy1tYWludAorODQ2NjMgNWFiYWNkMzUxNDg1MWRhMjc0YTFkYTdhY2VlOGE1YjcxMmIxN2NiYSByZWxlYXNlMjctbWFpbnQKKzg0NjY0IGIzMDQzMzZlMGUzNWI0NzhkNTBkOWMxN2FiYjZiZGUzNGJiNWRlNTUgcHkzaworODQ2NjUgZWRkMDU2YzRhNDBkMjIyNTYwZDY5MTIyZWQ3MWRhODVhZmJiYTU1ZCByZWxlYXNlMjctbWFpbnQKKzg0NjY2IGI4ZTUxMjVlNmZiZDczNmIxNDM5MTM5ZWE0MTAzZWU2ZDRjNDc2ODMgcHkzaworODQ2NjcgNDU3YWE4ZGE0OTBhODc3ZmVhYzA1MmFmMDQ0MzZkNDcxMDA0ZDYyNyByZWxlYXNlMjctbWFpbnQKKzg0NjY4IGMyMGRlOTZhNDM1YWM2MDk1MDRlMjI3OTllMDZlYTk1NmQ2YjE0MjcgcmVsZWFzZTMxLW1haW50Cis4NDY2OSA5ZmFhODBkMDExMWYxZjMyZWViNDczZGE5ZTVkNTFlYjIyOWQyMWZkIHB5M2sKKzg0NjcwIGIzMTRhZGM5YmNkZWVhZGQwMWVhMzMwYjBhYzM3YmYyOTdmODhjNTMgcmVsZWFzZTMxLW1haW50Cis4NDY3MSAyZWVhODlkMDkzZTIxNDIxMDhhYWIwNzQwZjMwNzUwYWQ0NTg4MGVlIHB5M2sKKzg0NjcyIGM2NjY5ZjRiZjhjNTRlZGM1NTNjY2JjYzMxN2M2OGQwYWUzOGE5MGEgcHkzaworODQ2NzMgZDBmOWFmY2IwNjE5ZWViMDhlMjc1ZDU0YmY4MDUzODI4ZjY2YzAzMSBweTNrCis4NDY3NCAzNzhlMTU3YWMwMjVmYzk5YWVlYTk0YjYzMzI0ODlkNWFiNWVkOTk3IHB5M2sKKzg0Njc1IGI0M2Q2M2JmMGY3OGYxMDQ1NDNhNjhmMjk4OTFkZGEzZjdiODRlMzggcmVsZWFzZTMxLW1haW50Cis4NDY3NiAyMWFlNDA0NmU0NzEwMWQ5MmM2M2FkYmY4YzQ3ZWE2NWIxOWNjMTk4IHJlbGVhc2UyNy1tYWludAorODQ2NzcgN2UyY2ViNWQyOGUzMzkzMmZlMjE1NTY3MDg4NTBlNjE3ZjQ1N2YxNyBweTNrCis4NDY3OCAzOTBhY2Y1MTM0ZTk0YWE0YzIyYmQ2YzM4Mzc5ZDIxNWZlNTdlOGU4IHJlbGVhc2UzMS1tYWludAorODQ2NzkgNWM0YmU2M2NhYjRhMjJlMTkwNDhmNWY4YzNlYTIxODRjMmUzMDkxOCBweTNrCis4NDY4MCA5MzM5NzM4Zjg1MDRmODgzNzIwOWZkMmQ1Njk3YjIzNzY0YzQ1MmUyIHB5M2sKKzg0NjgxIDE2YTQyZDVmMjIwOWMzY2ExMzllYjg0ZTI3YTBjMzA0ZjYzMGFlNjcgcHkzaworODQ2ODIgOWYwZDY5Y2FlZDNiMmRlMTY4NThmYzA4ZmM1ODc3ZDc2ZDgyNzBkOCByZWxlYXNlMzEtbWFpbnQKKzg0NjgzIGUyNzAzMGUwY2NlZGE4ZTg4Nzk5ODdiODkzOTdhNjViMjY0NjA2MzggcmVsZWFzZTI3LW1haW50Cis4NDY4NCBjYWVjYjZlYmM4M2MyYTU2YTBmYzhhYzBiZDU2OTQ3YjIzMGQwMDlkIHB5M2sKKzg0Njg1IDI1Y2MyMjZkYzliZDRhYjBlMjRlNDgyNDZhZDczOWZmMDJjNDgyMjEgcHkzaworODQ2ODYgMjUyODk1ZDQ5MTU3MGQ1YTI3NDUyODA5YjU4MjcxN2JlNDA5YjI0ZCBweTNrCis4NDY4NyA5OTlkN2QyMTJmMTc5MmUwNGNkZjNhOGZjNjliMTE4MjU2MzY1MTNmIHB5M2sKKzg0Njg4IDU4MzA3OWRlMzdlMTM5MGE4MjM4ZDMxNDUxNmQyZTZiNTMwZTU0NjUgcHkzaworODQ2ODkgOTI2NTc1MmExYzgzZDlhNTE5ZDFiMTIwODkzODQ3ZWNmNWU2YzQxYyBweTNrCis4NDY5MCBlODI3YjliOGE3YjRhNWVlYTJjY2JhY2JlMGRhMGRhYWE1MDFkNTdhIHB5M2sKKzg0NjkxIDExNjdlMzkzYWE0ZDZhNGVlMGFhMzhjNzYzYzhhNjk5OTAzMTBkMjQgcmVsZWFzZTI3LW1haW50Cis4NDY5MiA2YWNjYzJjNjVjYjg0NzgwMWViN2RjMjQ3MTBlZDM5ZDBhODcyY2E4IHB5M2sKKzg0NjkzIDU2ODQ0YjcxNmNkNzU2MGFjMTAwMmZkNzBjMTYxMmU2MzRjNzZiNGQgcHkzaworODQ2OTQgNTg2YTQxMWNhYzdjNzBmODg4NmM4Yzc1MGNjZjliYjI3NDEyMGM4YiBweTNrCis4NDY5NSA0NzBhNTM2MDU3MGNjMDFlN2U1OWVlNDJkMmIzZDk1OGE4NjAwYTZmIHB5M2sKKzg0Njk2IGE2MDhmZTFlODZmMDA4MjI0NDdhMGRiNTRmNTMxMzk4MjA0MzA2YmQgcHkzaworODQ2OTcgZjMxZTBjN2MwMmUzMzNkNzkyMGUyMzNhNjg2NmY4Mjk5ZjRhMDBiMyBweTNrCis4NDY5OCBlMDgwZjExZmNhMTliMGRkMjBmYTlkMDc4NGJlMWRmYjRjNmIxNGIyIHB5M2sKKzg0Njk5IDE3NjQ3OTZlOWVjYTJkMzU1ZTRkZjdjMGNjZDMyYTZkNTg0OTIxOTUgcHkzaworODQ3MDAgZmU0N2VhODk3MmViZTZiYTNmODhiNjI1NmFjOTFkNzlhNWQ1NzNiMCBweTNrCis4NDcwMSA4ODdlZjM5OTc2ZDM5ZGQ4NWFmZDg0MTEyMWQyMjVlZGIyZTI2MzhhIHB5M2sKKzg0NzAyIGVmYzk5YTIwN2JiZTdkMmQ2MjhlYjY2NjIzNmIxY2JmYWE2NTkzN2QgcmVsZWFzZTMxLW1haW50Cis4NDcwMyAyMGEyMTUzYjBkZGE4OTVkNGIwYTRjMWJhZGEwZGM1NGE2NTNkNWZiIHB5M2sKKzg0NzA0IDFjZmFkNTVkZTViZDY2MGEyY2M3Mjk2ZWQ2MWVkZjNjZDU2ZjEyZTggcHkzaworODQ3MDUgNWM5YzA0YzI5YjJjMGJmYThjZWFlN2JkMzczZjIzYjQyNGRjNmUxNCBweTNrCis4NDcwNiBlYzkyYTlmZDc3ODA2ZjBhNzkxM2JlNzA5Mzg2YmRkNDRmNDI3OWJlIHB5M2sKKzg0NzA3IGY3MmZkMmNkYTM0NDJmNTk1MDQyYzQ0YTQwN2YwZWY3Mjc2Yjk2NzEgcHkzaworODQ3MDggY2I5MTMwN2Y3MDcyZWJhYzk0ZTZhYmUxOTkxODY3MDBhZTgzZmFlMyByZWxlYXNlMjctbWFpbnQKKzg0NzA5IGUwYTdiNjk2ODU1ZjQwYzk0OTMyZTk4N2NhNTQ1MTZjNjhiYzcyMmIgcmVsZWFzZTI3LW1haW50Cis4NDcwOSA1MjFlYjdmZWU2N2E3ODFjYWI1ZWQxZjUzOGRjYWM5N2JhNTc5NGQyIHB5M2sKKzg0NzEwIDFiZTg3NGNlNGVhZWYzMDQ0MjRjZThlY2YzOGE5ZDk3NmIyZmRhZGIgcHkzaworODQ3MTEgN2NmM2JmMDE1MGE0ZDVjNjAyNGNjNzA0NmQzNzdkMGQ1ZTJhOGU1NiBweTNrCis4NDcxMiAwMDQyNTIwOWM0NmVlMjU1N2E3NmFmYjhlYmNkMGQ2YzM2NDlkNmQwIHJlbGVhc2UzMS1tYWludAorODQ3MTMgNmViNGFmYmU3N2U4NTQ4MGMzNzEwODRmMWZiMjg3YTc5N2Q0OGVlYSByZWxlYXNlMjctbWFpbnQKKzg0NzE0IGQ5MDVjOTRmOWFlMWQxYWVkYzYyNzM0MTYxNWYxZWZmOWE5MDc0YTQgcHkzaworODQ3MTUgOGY4MWVkOGFjYmIwMjQ0NGVhNzQxYTY2NWU2NDhhNDNmY2E4YjQ0OCByZWxlYXNlMzEtbWFpbnQKKzg0NzE2IDYwMWEwZGVmZDE1YmIyYjk5MmFmMTQxMGY1Y2M3YTMxZGZmZDAwMDMgcmVsZWFzZTMxLW1haW50Cis4NDcxNyA3YzhmMzQ1OWQ5YWY4YTc2YzMyMTY0NzZiZWViODYzMDUwNjk0NmY3IHB5M2sKKzg0NzE4IDE3YThmNzA0ZjA3ZDg5NDJiNTdiNTJhZDI1NTI2MDE1NmZlNDBjYjcgcmVsZWFzZTMxLW1haW50Cis4NDcxOSBmZDY3MzdhYTg4ZGM0NmRmYTNjZTc5YTQzNjRhNzM1MWU2N2NiNzQyIHB5M2sKKzg0NzIwIDUzMzg1OGEyOTg5YTJmYjhkN2Q2OGEwMWEwMzgzOGVlMDM1YTEyMzIgcmVsZWFzZTMxLW1haW50Cis4NDcyMSBjNGU3MjMzZjU0OGRiZGU4ZmViNjY3M2VhNDM5NTk5YzM5M2UyYmZmIHJlbGVhc2UyNy1tYWludAorODQ3MjIgYjAwNzAwMWZjYTcxMGM1YzA2MGVlMTMzYWFlOGNjZTRjYjg5MDQzZiByZWxlYXNlMjctbWFpbnQKKzg0NzIzIGEzNTEwODYxMDVjNTNjZTE0MzNmNjZkNDdiZDkwM2U1ZjcyNjQ2ZTAgcmVsZWFzZTMxLW1haW50Cis4NDcyNCA1ZjNhNjQ1NjRjNTFhMTI4NjFiMGFlMWYxZGZlYjQxNDg4ZjM2MTkzIHB5M2sKKzg0NzI1IDU2NzE0ZTljNjNlZmI4NGM5YzU3MmRlZTk0NTYwYmExMzgyYWVkNTMgcmVsZWFzZTI3LW1haW50Cis4NDcyNiBjMzViNDJhOGRhM2ZiODZkODcyMTQ4MjA0ZjVkYTQ0ZTUyN2U5NjIzIHB5M2sKKzg0NzI3IGYzYjFlZWExMWNlMTk1YmIzN2MxOTQ2ZTFkOWQ2ZmEyMjEwNmVhYmIgcHkzaworODQ3MjggZjQzMjBlMTI0YjFmYjFmYjcwNWU4YjEzZTFjNDM3ZjBkODZjYzQyOCBweTNrCis4NDcyOSBiMGM5YTgyZTBlYzVhMzM3ZWE2NGYwMjliMmFkMzcyMWIzODFmMGJkIHJlbGVhc2UzMS1tYWludAorODQ3MzAgODUyYmIwNTIxNTZhODEwOWM4MWI1MTBlMDJmYjI5OTQ3MGNlMjBjMyBweTNrCis4NDczMSBlZDQzZWJkYTM1ZjJlNWRmMzk4NjRkYzM5NWI3Y2YzOGEyZjdhMmNmIHB5M2sKKzg0NzMyIDYzOTM5YWZhZjk4NGI0YTc5MGNmZWQ0YzUwN2VjMzgwN2EwNGVjYjcgcmVsZWFzZTMxLW1haW50Cis4NDczMyBlZjZmMDM5NzFmYjM0ODcwY2QxOWMwMjU3OWM5Y2QwNDkxOWUyMDg1IHJlbGVhc2UzMS1tYWludAorODQ3MzUgMzgwOGUzNzlmYzNjZTkzYTc3ODY5NGZhOTNiMjhiMWRiYmM0NDVmYSBweTNrCis4NDczNiAzNzc0ZjRkZWY3NTRmMWY4YTZiNWE5YWQ5MzEwMjk3ODVmMTVjNzJmIHJlbGVhc2UzMS1tYWludAorODQ3MzcgZmI5MGYyZmYxNzY0YjljZTgyNjk5NmVlYThkNmE5ZDllYTcxNjJhNCBweTNrCis4NDczOCA2N2VkNmQ0ZjcwYjFhNjZmYjkyNmZhYWFkNmE3YmIyNWY4YjBiMDYzIHJlbGVhc2UzMS1tYWludAorODQ3MzkgN2FjMGU2MDdjNGQ2NjJhM2JkNjQ3YzUyNzczZWMzN2MwZjM0ODQxOCByZWxlYXNlMjctbWFpbnQKKzg0NzQwIGQyZTU4MTk4OTMzYmU0OGJmMWI5ZmQxYmFlODE4MzExNmRiMjU3NTggcmVsZWFzZTI3LW1haW50Cis4NDc0MSA4ODY5YjFiODU0MzQ4YzQwOTZmY2VhZGNlMzg3N2U3Mzk0NDg5YWJmIHB5M2sKKzg0NzQyIDYzYmRhNzg5ZDczYjYzZjdhYTgzZTczNmUyMzQwOGY3OTFhNmY1NWMgcmVsZWFzZTMxLW1haW50Cis4NDc0MyBmYTk1MTBjNzk2NDgxYTBkOTQ2NTg5ODdkMzQ4MTk3MzRjZjU0Y2IxIHB5M2sKKzg0NzQ0IGI3ZTI0NGYzNGNjODBkMDNiNzUxYTY3MjU1MWE4NDFjMmQ4MmZlODcgcHkzaworODQ3NDUgNzZiOGRhZGEwNmNiZTZhOTMyNTAwYjg2NDk2NjcwM2QyYmUwODQwNiByZWxlYXNlMzEtbWFpbnQKKzg0NzQ2IDRiOWM4NTI2ZWE0Y2I3MGNlNDgwODA4ZjJhNjNiYzUzNDYwYWNlOTYgcmVsZWFzZTI3LW1haW50Cis4NDc0NyA2ZDI4MmI1OGQ5MGFhMmZkMzZhODEzMDk4NjU1OGQ2NzI5OWQ0ZTdjIHB5M2sKKzg0NzQ4IDJiYjRkZDJhZDViNTA3MDdhOGE5ZTE0MjFlMzIyZTQ2MmViOGY1OGMgcHkzaworODQ3NDkgN2FiNTkyMzNlODNmNjliNWIzNzFmZjcxMTg4OTE2MjA5Y2U5NWJhMiBweTNrCis4NDc1MCA5MjEwMjk1MDdhZDdkNDRjNDc1OWM5MDYwYmY5ZjNlM2Q1YzAzZmJjIHB5M2sKKzg0NzUxIGMxYjcwOTA3NmJmNjNhMWQxYjc1MjIyOWE2Nzk1MTVhN2I4NTk0N2MgcHkzaworODQ3NTIgOWNkYmE2ODY0ZWI2MGNhMmE1OTM0NDkxZDE5NWM5NTk4ZDk3MTY1OSBweTNrCis4NDc1MyBhM2VlODc3ZmVkODliNWVkMzdjY2I5OGQzMGM4NWQxZWVkMTEwZjUxIHB5M2sKKzg0NzU0IGIxODZhZmEzNzBlNmQxMDU1ZTUxY2ZiZGMyMTQ2ZTI1M2I2NDY3ZDEgcHkzaworODQ3NTUgY2ZhMTE5YzNlNDNjZmU4NzJkZDU1M2Q1MDUzOGJhNTIwNTI5NTU0MCBweTNrCis4NDc1NiBlZTk2N2YxYzczMWI3ZDAzNmZmMDQzMTVkMDUwMmNiZjg4NjE1MDI0IHB5M2sKKzg0NzU3IDBkZTgxNjQ3NTUzYmEwNGFiNzE0MTczNmU0YWYzMTc1MjBjOTFlNDggcmVsZWFzZTI3LW1haW50Cis4NDc1OCA5MDY0ZmM1N2QzZmE5MDdkMTEwMWZmNjEzMWJiYTUwNDlhYWRlYzZiIHJlbGVhc2UzMS1tYWludAorODQ3NTkgMWU4OWI1ZWUwMmY4NWVmOWIyNzA4Y2E0NDZhOWExNjQxODU2NjYwNiBweTNrCis4NDc2MCA1ODRiMWVkYTExNDE0NzYzYjBhZmFkMGI1YWIzODI5NWMzNjZjOTMwIHB5M2sKKzg0NzYxIDMxNGQ0MTZmNGQyM2UyOGM2NTZkZDU3NzAxZTk5NDMyNmE2YjU1MGIgcmVsZWFzZTMxLW1haW50Cis4NDc2MiBiMWU3NjZjNzlhMzY3NzQ5YzliZTNlYWZiNzIxY2VkNTUyODYyZGI5IHB5M2sKKzg0NzYzIGFkZDY2NDkyNGFlOTkxMWMwNGQ3ZjFmYzM5NTQ4YzdjM2UxYWY2NDYgcHkzaworODQ3NjQgYjBkMjZlOGQ4YTMzMGFhNTY0MjAzN2JiMTg5YTU3NGRlMmM1Y2FiYSByZWxlYXNlMjctbWFpbnQKKzg0NzY1IDJmODM3MDUzOGZmYmIxN2MzYWNhZDllNjRjZGJkMTBlYWVhODNjYzUgcHkzaworODQ3NjYgMjhlNmE0MWM1YmEwYjA0MmRjOGZkYjkwOTg2M2RhNTY4NzJiYmE2MyByZWxlYXNlMjctbWFpbnQKKzg0NzY3IDgyZGI4MGI2MGI4N2JiYWJmM2FkZjU4N2FlNDY1OGRkNzYyMTMxYjYgcmVsZWFzZTMxLW1haW50Cis4NDc2OCBkMGZjMzU3ODc0Njc0Njk0MzJjNDFlZDcyYjgyN2NkNzc3Yzk2NTllIHJlbGVhc2UyNy1tYWludAorODQ3NjkgMWU5MjJkNzFjZTRiZjZhMTg5NzNmNTMzN2Y4NmMzNGVmNzU4YWYxZCByZWxlYXNlMzEtbWFpbnQKKzg0NzcwIGJiYThmYTg4ZDE5YTIxYjkzODI5ZjVlZGMzYTE5NjE2NTg2N2M4NzQgcmVsZWFzZTI3LW1haW50Cis4NDc3MSBhNTlhZTkzODkxMzE5MzY1ODA2YWMwOWM1YzQ3MThiYzE4ZTAxYjIzIHJlbGVhc2UyNy1tYWludAorODQ3NzIgMjc0YTBiZjQ2ODcxZWYzYTU5MWYyYjkzYTMxM2VmYzgyMDY5ZGQzYiByZWxlYXNlMjctbWFpbnQKKzg0NzczIDQ0MTk5YWE4OTMyYjdkMTRkMDNhMGUwMzE4YTliODA1YTkwZGJiZDIgcmVsZWFzZTI3LW1haW50Cis4NDc3NCA1NTdlMjUzN2M5YWUyMzUzOGQ5ZGRiNGVhMWViNDliZGM0NTlkZmU4IHB5M2sKKzg0Nzc2IDMzMGQ3OWZjYjNkM2Q1ODYyOGY4Y2VhYjM1NTgxNTNjOTY1NGE0YWQgcHkzaworODQ3NzcgMGYzYjhmOTI4ZWMxM2Q4ZjkxZWM0OTBlNWI1MjRmZTkwYmE3ZmFhYyByZWxlYXNlMjctbWFpbnQKKzg0Nzc4IDNkMjJlZTY1ZTQwNzVhOWIzNmIzNzFjMmE0MzgxNTMzMWU0NWI0NjggcmVsZWFzZTI3LW1haW50Cis4NDc3OSAyYWQ4ZDdjYmNlYWJiMDE3MjA1OTEyODJmMTM1Nzc1YjQ1ZTViYmU4IHJlbGVhc2UyNy1tYWludAorODQ3ODAgZWExMjFmODczMWE3OGJiNTU1Y2E0MjUwYmFlZDRlZmQwYzhjZjNmMyBweTNrCis4NDc4MSA2ZmYwZWYxZmNiM2NkOThlNTFiMzM1ODc0YTg2ODJhYWU4ZWFhNGRmIHB5M2sKKzg0NzgyIDIwNWZmMmIwMmM3NzEyMGVlMjBiMTc3ZGMzYjc2OGJlNzQ2NDdmNjggcmVsZWFzZTI3LW1haW50Cis4NDc4MyA3ZGJmYzdlZjM5ZjJiNjM2ZDMwYTg3NjQ1MTMxM2Q5NzdjMThkODM5IHJlbGVhc2UzMS1tYWludAorODQ3ODQgNTU3MzU1ZTQ2YmE2MTlkZTUzNzYyZjc1MzBlYmQ0ZWQ3ZjllYTVjZiBweTNrCis4NDc4NSA3N2M4OWM4OWY2MGUxMTIyODlmZTc5YzQzZDk3YmVlMjU3YmJiOWU1IHB5M2sKKzg0Nzg2IDJkMDg0YWQ0NjhkYmQwMGM5ODkwY2E4MTQ5NjAyNzdkZjdlMmUzMzkgcHkzaworODQ3ODcgODIzNGQyNmIxM2MxOWVmNTY5ZDA0ODE4MThiYzBmZDA5NTNmYzk0NCByZWxlYXNlMjctbWFpbnQKKzg0Nzg4IDkxYTAwYjZiMTI4YmVkMGQwNGVjODNlNzk1ZmNhMmUwYjM2ZmE0ZDEgcHkzaworODQ3ODkgZWE4NDgzZjllNTVhYTY2MDkzMzIwYzJmMTQyMmE4NjU0Y2MwMTk4NyBweTNrCis4NDc5MCA5ZjU1ZmFhYTMxOTNhY2M2NzI0MmMzMjJlOWM2MzNlNDc4N2M3NmM2IHB5M2sKKzg0NzkxIGUyZGVjOWMwZDEzY2ZjYWJjMTA3YWM4NGJjNDNkOGZjYzkyYjExMzUgcHkzaworODQ3OTIgY2ZhZjBmN2VlMGMyYzkyZWMzMTA3YmQyYmRkNjI2Y2I1ZTE0N2YxOCBweTNrCis4NDc5MyBhNjBkZWVjYWMyNDI0ZWZkMGEzZWQwNGJjM2E1MDNjMDljOTg5ZDIyIHJlbGVhc2UyNy1tYWludAorODQ3OTQgM2EyOTYzYjZmNDQzZTg1MDE5MDhmYzcxY2YwMDgwM2JhNDU4MTk4OSBweTNrCis4NDc5NSBmYmU1ZDA4YTk4NjYxMzk5YmY2NTcxZTkyZThiYzllNjc3YTdlYTMwIHB5M2sKKzg0Nzk2IDY5ZWQ1ZWNiNTAyNmFkZGNiNTIyMzczZTdhZjVhZmI2ZmM2YTZmMWUgcHkzaworODQ3OTcgNDRlNDNiZWQ2NzRhNTRlNTkxMzg0MTg4MTFlMjQxNDgwYTllZjYxMyBweTNrCis4NDc5OCBlNWYwZmY3ZDdhMDZlZTkwYjNjNmRiOTkzYTlkYTVhZTFjYTgyYzhkIHB5M2sKKzg0Nzk5IDRhNGZiZTAyMjdhYTQ5NTI1ZmJhYTJiNWUzZDVkMDY2ZWFhZjM3YjMgcHkzaworODQ4MDAgMmQ4ZTQwODU5MzUxMmVjYzBkNWQwMTg1MGE4NjEzZTI4N2Q3NDJkOCByZWxlYXNlMjctbWFpbnQKKzg0ODAxIDIwYzQ1Y2RhZDljZjFlOGQ0MWU2YzVjOTIwNzZiOGFjNTEyMWFmOGMgcmVsZWFzZTMxLW1haW50Cis4NDgwMiBiMjc0YTkwYThlMmJkZmUwOWEwYTAwNTQzYzhjMzlkMDMwZWIxMzZiIHJlbGVhc2UyNy1tYWludAorODQ4MDMgYTQyZGI4ZjU0YmExNzA2ZDMxOGFkNzZlNWJiZmU3M2NhNDJlODExZiBweTNrCis4NDgwNCAxMjNmMzUxNGI0NWI1MjdiZjI2MjEwNzU1NzFlNDczNTJkYmIxNTdkIHJlbGVhc2UzMS1tYWludAorODQ4MDUgZGI5ZTYyYzI2NWZmNTBlNTkzY2IyZTQ2N2NkZjY1N2RjMmJlZGUxYiByZWxlYXNlMjctbWFpbnQKKzg0ODA2IDdmOTlhYzUzMDE0YTU0MjgxZjk5YmVkMWM5MmRlMmY0NzIxNTQ4MWEgcmVsZWFzZTI3LW1haW50Cis4NDgwNyAwZTk2ZjlmYTg0YTI0YTY5ZjVhMWNhYTRjODEzNGVmZmNhZmUyZTkzIHB5M2sKKzg0ODA4IGZlNWY5Y2M0MDc2ZWJiNzk2YmU3ZGFmYzljNWJlNDA4YTZlNTA1MmEgcmVsZWFzZTI3LW1haW50Cis4NDgwOSA4MGQxYzc3MzRkZjI1N2U0N2E5YzYxYmI4NGFhMTg4OTQ0N2Q5YTM4IHJlbGVhc2UzMS1tYWludAorODQ4MTAgMGUyOWFlNTFkOWJjNmFlMDNhOTdmMjQ2MTM0ZmFjZjA3Y2MxODU2OSBweTNrCis4NDgxMSA5MDVlZTllM2RhNmRlMDcxYTgxZDU3NWJjYTk2YjhhNTQ5ZTU3YzhlIHJlbGVhc2UzMS1tYWludAorODQ4MTIgZWRlZDBjYWVlNjIxMzMxMDAyZTlhZTU4YmRiZmRkZDAyYzljN2Q3OSByZWxlYXNlMjctbWFpbnQKKzg0ODEzIDUzNDg1M2JhOGNkMzZhYjVmMmNlZWM4YWM3ZTg2NWVkNWE5MWZhZjggcHkzaworODQ4MTQgMmJmMmE3YTRlMTdkNjQ1MmJlNzQwNTY2Njk2YzIwNjdjYjMwOTRmNyBweTNrCis4NDgxNSBkN2FlMWI5ZjEwYWI3YjY4MDMzZDg4NzZlOGQ2MjZiNTExNjNkZTQzIHJlbGVhc2UzMS1tYWludAorODQ4MTYgMmI5ZGVhMmEyZmZmZDYyOTEzMTZjNGFkOGExOWRkOTg2NDhhZDcwYiByZWxlYXNlMjctbWFpbnQKKzg0ODE3IDA3MWJkOGYzNTM1YWMwZGZjZWI0MDRhMjYzODBkNDk3OWJmMTI5ZDggcmVsZWFzZTMxLW1haW50Cis4NDgxOCAzOTc3ZGMzNDlhZTc5NDMwYTA3YjVlOTYwNGQzY2Y1YjFlMzc2NjRiIHB5M2sKKzg0ODE5IDkxNTFkNWZhYWUzZDZhODcyNGE1Yjc1YmQ3MjE2NWJiNjUzOWVmZWQgcHkzaworODQ4MjAgYjgxZThlM2ZhNWJiZTY3NmRiZGEwODRmY2VjOWJhYTBlMDQ4M2U5ZCBweTNrCis4NDgyMSBmNjQzZDUzYzUxYmQ4YjE3MmNlYjE5ODhlYmQ4YTUwNzc0MGJiMTlhIHB5M2sKKzg0ODIyIGU2MzNlM2E2YjI1NTY4ZmEwZWRiMzk1NDEyNzllZDM5ZDkzYjBjMGYgcHkzaworODQ4MjMgYjY5NTFiMDUyMTdiMjFhYWM2ODc3MGIzY2UzZjYyZjc2ZjQ1M2IzYSBweTNrCis4NDgyNCAzNTg0OGEzYjdkOGE1YWZiZDJhZDgyNTBiZjg2NGNjYzM0ZDU1MmNhIHJlbGVhc2UzMS1tYWludAorODQ4MjUgN2VmNWM2YmU3MjMyOTdmZjc3MjZkYzQzZDIwNzQyYWNhNGE4MTM4NiBweTNrCis4NDgyNiA5YWZmYjRkNmU5N2UyZDJlYWVlM2U3NWUwZjQyNTY0ZDE0NWYwYTM3IHB5M2sKKzg0ODI3IGM3NzlkZTY0NDA1YTkwM2Q0MThhZmMzMTdjYTY2NzBlM2YxNzljNmQgcHkzaworODQ4MjggZDg4ZmRmNWM1YjM3NjQyZTE0YjlmZDhmYzM4MGNlNWQzOGU0MGUyZSBweTNrCis4NDgyOSBiZWQ5NTBjYmQwYzAxZTUzMGRiNjkxYzBjNmJmMmJmNzgwNTgzYTQwIHB5M2sKKzg0ODMwIDViMDE4N2MwZDAwMjQ4MTJjZGMyMGYzY2RlODQ3Nzc2YTlhMWI1YjggcHkzaworODQ4MzEgYmNlOTc5M2ZiNTQ1MGVkOTFiNTVhYTQxZGRmZjc5Y2M1ZmVhOWJmMiByZWxlYXNlMjctbWFpbnQKKzg0ODMyIGE5N2QxMmU1NDY1Zjc5NTI5NzRkNGQwZWM4MDliYjBlMDUyODFiZTMgcmVsZWFzZTMxLW1haW50Cis4NDgzMyA2MWRmYzc5NjU3ZDczN2QyYzA3MmNlY2MwZmFlMDJkMWQyMGFlM2ZjIHJlbGVhc2UzMS1tYWludAorODQ4MzQgYzBkMzE2Nzc3M2E5NzMyMzhiYTY4ZDc5OWExYTIwNjA0MTYzMjBhYyByZWxlYXNlMjctbWFpbnQKKzg0ODM1IGJlYjlkMTc2NTAzZTQ2MmE0NTNiYTdmOTdlZjk3MmNlNjM5ZTFhYjMgcmVsZWFzZTI3LW1haW50Cis4NDgzNiBhZDYzZjk2NjkyM2M0MTAzNDE2M2FhYmYwYWZjODBjNzI2NjVmOGQ4IHB5M2sKKzg0ODM3IDNlZGMyNjM4MGU0OTZhYjBmM2I4NmFiYjI3Y2I1ZjY1MDQ4ZWFhZGEgcmVsZWFzZTMxLW1haW50Cis4NDgzOCAxZGViZmY0MmVhNDZkMTEzZWMwMGUwMmUxY2E0MDA2NDI5MWNiYTcyIHB5M2sKKzg0ODM5IGYyZWMwMTE1ZjhiMjAzZTUxZDQ3ODM1YzBjOTNhZTNhMzBlNzc1NmEgcHkzaworODQ4NDAgYTE2YjY3ZDRmMzAzMTZkMTBjYmM0MTMxZjZjM2ZlYWQyODRiZjg1YSBweTNrCis4NDg0MSBiNTc3NGIyN2IzZGJkOWFlZDJmODgxNDg3MDI1ZWZjYTM0OGRjNjkwIHB5M2sKKzg0ODQzIDk4NTA3MmNkMzFkMDNiODJmYmM4YjU0NTk3YTcxZThlNTkxNjBmMjEgcHkzaworODQ4NDQgZDY1N2U4YTYwMTI2NjQ5Y2Y5NTM2YzM2MmM0ZGZlYzg3MzczNWYzNCBweTNrCis4NDg0NiBkMTc3MWI0Y2QwY2JhODMyYWI3YTE0NDczNjY4ODUzODg2NzRlNWM3IHJlbGVhc2UyNy1tYWludAorODQ4NDcgMWJlOTUwZGNiYjFhNWY4MWFlY2YyYmI0ZmVhNGNhNTgzYTFkZDcyYyBweTNrCis4NDg0OCAyMzI0MTY3ZWMwMWQzYWEyMGY2MzUzMWU1YzQzOTY4OTlkZmQ1YzIwIHJlbGVhc2UzMS1tYWludAorODQ4NDkgM2YwMDA0NzM2ZDI4MzljYTQ0NjQ0MGM0YjBlNGMyN2U3N2NhOGY3YyBweTNrCis4NDg1MSBmZDVjNGNmZWQ3Y2QwYzNhZGIwYjM3YTViNjNkYmMzNDA5YmM2NzIxIHB5M2sKKzg0ODUyIGExNzdkZGRlNDVkMWI3NGExNjc3OWViZWU2ZGY0ZWUyMjE2MGZmZDQgcHkzaworODQ4NTYgNTc2MWY4ZTM1MmVjMjFmZGQ2ZTc2M2Q4ZDAyYzA2ZmY1NTgzMGQ4NyBweTNrCis4NDg1NyA2ODlhODEzZjRhZmMwZGQ5ZDk2NmJkMDg3M2M2ZmZkNGU1MGEwNWZhIHB5M2sKKzg0ODU4IGE4ODY5YWY1ZDVkMGNhNjc1MjY5ZWY1MWVmNGJlMTlmMWQ2ZGQ5MjYgcmVsZWFzZTI3LW1haW50Cis4NDg1OCA4MjU4OWE4ODllMDcwZmY3NzcxMWM3ZmNlNjdhNzFlMDI0ZWUwZWEwIHB5M2sKKzg0ODU5IGM0MzhmOTYzNDZlOTBmMWFiZWRmN2IzMTQxYWJkOTcxZWRhNTg5NjMgcmVsZWFzZTI3LW1haW50Cis4NDg1OSBlM2MzYzMwZjE0MDk4MDg4YTRkMWY5OGJlNWFhOGI3ZmQzOWNkOGExIHB5M2sKKzg0ODYwIGZhNDdhZjczYTY5MWUwMDZiZjcxMDVkN2U2NTQxMTM1NDc4MjYxYzEgcmVsZWFzZTI3LW1haW50Cis4NDg2MSBjYTM1NDJhZGVlMGRhZWJjMmNhZDZhNjQ3ZjY5YmNkZTE4ODZkMDQyIHB5M2sKKzg0ODYyIGUwNjQxZGJkYzhmNjJhN2U5YWI2Mzc1NWVhODQ3MzZiNmMxN2IzZjkgcmVsZWFzZTI3LW1haW50Cis4NDg2MyBlMzlhZDVkYzExY2ZlNGQ3NDAwNjNiMTk3ZGE5M2FjNzJjMjhhODE4IHJlbGVhc2UzMS1tYWludAorODQ4NjQgZGM0MjJkYWE1ZGFkZDBiZmM1NDI4Nzg0NDJkYTUxZGRjZTc3NDVjMCBweTNrCis4NDg2NSBhNDMxYzQ4YWQ0MmIxYTE5ODMxYWE1YzFkNDVhNGM4OTk2ZTRhODE3IHB5M2sKKzg0ODY2IGY3N2NiOGQ3NmU5OTE1N2E0MDIwM2E0NGRlYjZmNTFiMjdkYWRkNjIgcHkzaworODQ4NjcgY2QyZWY3NTI4NzM2NWI2ZTlhNTU0Y2UyY2NkNmNkOTI1MTc0OGZkYyBweTNrCis4NDg2OCA5MzhkODQyNTdkMTEwMjYwZGNjMTI2NjY1NmNhODFkN2MwYzZiNDljIHJlbGVhc2UyNy1tYWludAorODQ4NjkgYzg3ZWQ2ZjU4YjgzMDk4ODFmMTE0MjAwZTg3ZTFiNWNkMjVmMjk3MCBweTNrCis4NDg3MCBkZjM5YjBiYzQxMDY3M2I1ODE2ODJjNmVjMWU0OTNiMTc2ZWIyNzk5IHB5M2sKKzg0ODcxIDAwNjQ5MGYwZTcxZmQ2NmVjNTFkM2E0ZDQ0YzIxZjMxNmRiZmFiYjggcHkzaworODQ4NzIgMDFkYmI4Mjc3MTc4ODk2MjVmYWE1MDc4ZjY4MTJlNzdlOWM2NmIzZSByZWxlYXNlMzEtbWFpbnQKKzg0ODczIDE1MTgxNzE3NzUxNDljN2NhZGIxYzUzMzJhYzM0NWRiNDE4NDEyNGEgcmVsZWFzZTI3LW1haW50Cis4NDg3NCBkMDYwNDc0ZTBlMjQ1ODU2NDFkYTQ4ZmZmYWVjOTlmNmJhMWRkMzdmIHB5M2sKKzg0ODc1IDJmMjgwNzI3YTMwN2Y2ZWQ5NmM3MGNmNDg1ZWU1NjE3NjJjMTY4OTcgcHkzaworODQ4NzYgMjg2N2FlOTAyZmEzMTQ3MzY0NjQzZmJhYjgwZjVhNGIyY2I4YjUwMSBweTNrCis4NDg3NyBkMzkwNDAwZDcxZjdiOTZlYzIzMWE0YzFmODI2ODI4NzZmNmEzNjJjIHJlbGVhc2UyNy1tYWludAorODQ4NzggYjQ5YWVlMzg3NzliYzBhOWRiMjY3MTU4Y2RjMzM0ZWJmOTkxZTYwZCBweTNrCis4NDg3OSA0YWEyYTIwYWMzMzViZjA1YTVhZDVmNWUyOWU4Y2QzMDgwZGVjY2Q1IHJlbGVhc2UyNy1tYWludAorODQ4ODAgMjllYWQ1NGMwNWFkODc3YWMxYWY4NWExMGQ4NGY4YWU5ZTI4ZTEzYSByZWxlYXNlMzEtbWFpbnQKKzg0ODgxIDJkYzFkMTg3ZWUwNGFlM2VkM2QxZGFmNzc0OWQxNjE5ZjhjNDAwOTMgcmVsZWFzZTI3LW1haW50Cis4NDg4MiA0NDlkMTA0ZTE4MzYyNzNhZWFlNWQ4Yjc2MGNlMTNlZDY4NWU0MmI0IHB5M2sKKzg0ODgzIDQ5ODFjZjBhOWNhNGNmOWUxNzdlOTNlN2EyNzNjNmM4MmEwNTZlMDQgcHkzaworODQ4ODQgNzc0MjVmMmQ3ZDc2NTk3NTc2NDkwODMzODE1ODlmNTExMzFhOGE2ZSByZWxlYXNlMzEtbWFpbnQKKzg0ODg1IDA0YjQ1ZDQ1MTA1OWY1MGYxZWZhZjMwM2Y2ZDk4N2Q3MzUyOGI2OWYgcmVsZWFzZTI3LW1haW50Cis4NDg4NiA5MjkxYWEzZDhkMzU3MjM3NzUyYjRiNDllM2JjYmU0ZjJlZjI2YzFiIHJlbGVhc2UzMS1tYWludAorODQ4ODcgZjNkY2IzMTRjM2UzMDJlNTU0MjJmODZjNDZlYzc2YTNhZTYwNmExNyBweTNrCis4NDg4OCA3MWI5NTk0MmMzYTQ5Yjg4OTIyZjkxODg4NjMwYjZjYmI4Y2MzNmVkIHB5M2sKKzg0ODg5IDlkYzg0NTIyNDQ4NjEyOTgxMjg5YTI1N2ViY2NjM2ExOTY0MTRhNTYgcHkzaworODQ4OTAgYjY5ODQyYjUwZTI2Mzg4MjhmMWIzNGIzNDZjODVjYTIyODhiM2I3OSByZWxlYXNlMjctbWFpbnQKKzg0ODkxIDY1ZjVlMmMzZjJkZDE5MTk4MGZmYTZkM2ZmYzk5ZGVkZTU3NDUwMmIgcmVsZWFzZTMxLW1haW50Cis4NDg5MiA5MjU4ODk4NmI3OGJkMjhhZGIzZDAyYzk0ODVmZTFmOTlhNDcwODkwIHB5M2sKKzg0ODkzIGU1Mjk0Y2EyN2FiZTJkMTIzMDQwYTNlM2QzOTZjN2RjZTE5OGIzYjQgcHkzaworODQ4OTQgZjdhNzZmYzk3YjIyMGRmMzI1OWM0ZDJlMTMzMDZhOWViMTMyMjRkNiByZWxlYXNlMzEtbWFpbnQKKzg0ODk1IDQ1MTEzOTMyMmExMzExOTVkNzAwMzFiYjMxNDEzMWI5MDdkY2I3ODQgcHkzaworODQ4OTYgY2Q1YjlhNzBhNjg1YmI3MzM5ODMzOWJkZTE4Y2MwODM2OWVhOTZkOCByZWxlYXNlMjctbWFpbnQKKzg0ODk3IDUwMWFlOTRlNWJmNjE1ODQwZGJjZjAyZWNmZDdiZWM2NTIzYjQyMjcgcHkzaworODQ4OTggNDRjODljNTk5M2M4M2ExODk3N2QzNmM4ZGUwYTIxMjQ1OWIxNjQ4NyByZWxlYXNlMjctbWFpbnQKKzg0ODk5IDBhY2U5ZWVmMTIwYmUxZjFmMWE0OTU0MmMwYTIzNzdkMmQ4ZDc2ODYgcHkzaworODQ5MDAgYTQ4ZTAzMWQ4MTc4ZmI4MGNhMGE5ZWMzMzZmY2FhZDE1YTc5YWIwMiByZWxlYXNlMzEtbWFpbnQKKzg0OTAxIDc4NWE5NmZjZDM0MGRmMmQ1OTRmYTUxN2FjNDFlMGFmNGVlYTFlZTUgcmVsZWFzZTI3LW1haW50Cis4NDkwMiBiMjllODU1NjAxNWNiNzMxMGExODU4NzBlNmZjOWFlMjIxMTQyNDE3IHB5M2sKKzg0OTAzIGEwNTQzMzA2MDk0MTE4NmUxOTk0YWFkYjA2ZWFhNjk1ZWQ5ODViYTAgcHkzaworODQ5MDQgNTM0YWY5MWYzODQ1NDA2MmZlMjZkYzcxNzgyZmRlZWQ2M2YzZGNmMCByZWxlYXNlMjctbWFpbnQKKzg0OTA1IDkzM2Q0YjViN2YzZDY4Yjc4NDU1YjkxOWE1YmJkM2ZjNzRmOTYwNWQgcHkzaworODQ5MDYgNzYwNTFlYjA3NDIyYzc4OGYzNWQzMmM5OGEyMjAwNzRlYWQ1ZDdkYyBweTNrCis4NDkwNyA4ZGZiZjY2ZjM2OWNmNWEyZTdhYTU2MmU3ZDg0ODhlMTc5ZTc5MzRiIHB5M2sKKzg0OTA4IGRkMzA4MGI4MGRkYTkxOTQ1NTdkY2YyMzRhNzliOTQxYmE3YmFkMzAgcHkzaworODQ5MDkgNDM3NGIxZWFlYWQxNzc2ZjViOTJkNjhiZDI4NjQ3MjFkODg2NGI5ZSBweTNrCis4NDkxMCAxN2VjOWVkNTAxMzNiOGJhZWRkYTYwZTI4MzIzYzY3NjRkYTE0NjIzIHB5M2sKKzg0OTExIDAzNjU4NTM4MmRlMTliYjk3ZjE1MTBjMDJhNzExNmY1ZjU2YTQwYTcgcHkzaworODQ5MTIgNGY0YmRkZGFjMjViMjNiNjUzMjRiNmRiMzdkODk0N2M5Njc3YmViNCBweTNrCis4NDkxMyA3NmZkNjhiYmExYTg4NWE0NWYwNzQ3MWRhYmJmYWZkNjJkZjgyZTI2IHB5M2sKKzg0OTE0IDhlNDI4YjhlN2Q4MTU4NmUyM2I1ZjkyZjljYTliMThkYWYxNGY0NDkgcHkzaworODQ5MTUgNmM3Nzc1N2QwODgxMTVhMDFjZGQyOTMxZjAwMmQ3MDY4N2EyZTMwMiBweTNrCis4NDkxNiBiNTU3MjUzNTk4YjFmOWNkMzgwMjAzM2IwMWY5ZDdiZTNlNzA0MTg4IHB5M2sKKzg0OTE3IGVjMDI4MDY3MDQ5ZGE2N2M3NTFkMjc5ODU4ZGI3MWQ3YmY2ZDQwZDYgcHkzaworODQ5MTggMmNkZGY4NzhlMzk1NTUzYjZmYWU5Nzk5NzIzOGExZTk1NDVkNGU2MiBweTNrCis4NDkxOSBjZjg4MTcxNDk5YjVhNzg1MGJlZWU3YWViZGE0MmZlZWRjMTU2NDUzIHB5M2sKKzg0OTIwIDNhNGFmYWE5NmFjMzMyM2MwZGM0NTczMTMxOTFmYWIwNGU1NzdlNmIgcHkzaworODQ5MjEgNDg2YzJkNmE3NTQ2NWQwMWY2MTZiYTE2YWM4YTUwZDZhYzdiMjlkNSBweTNrCis4NDkyMiBhODhkZmYyN2JlMWY3YjJlYjA5ZDA5ODA0YmY0ZDlmYTE0OWIyNDk3IHB5M2sKKzg0OTIzIGYzNWJkMDhjMTJhZWYyYzQ2YjRkYjc5YThjZmE3ZmRlOWJhZmMzOTkgcmVsZWFzZTMxLW1haW50Cis4NDkyNCA2YmQyNzZmNWQxYmNlNzk5Njc1ZjhjODExZjFiODI3OTgzZTJiMGQzIHJlbGVhc2UyNy1tYWludAorODQ5MjUgOTZkYjY0MDY3NGNiN2FhYTUzZWYwOTQxZDk2Mjc3ZjU0OTI5YmUyMCBweTNrCis4NDkyNiAzY2FjZTEyODlkZTQ4OGJhY2Y2MjBiYTE0ZWQ0NGM4NzVmNTE5NGI2IHB5M2sKKzg0OTI3IDM4YjBkNWQwZGQzMGU1MGE3MzAzZTRmNDNkNjVlZmRiMWNlZmFhNDUgcHkzaworODQ5MjggMGQwZjFkYjYzNDMxM2YzNjMxM2UxNGI5OWEzYjUyY2I2OGY4ZDg1YiBweTNrCis4NDkyOSAwMGU0Y2UzMWQ0MDQwZDVjMzRiNjU3ZGQxNzljZWE1OTY1NjgyM2QxIHB5M2sKKzg0OTMwIGE2YWY5YzdjOGU2N2U4ZTQ2Yzc5NzgwOWI4MTNjNzY4NTBhYzg4ZTggcHkzaworODQ5MzEgODYxYzM1Y2VmN2FhOWU1MjI2ZDRjYzJlYjFlOWViNTI5YTFjOTg0OCBweTNrCis4NDkzMiAyYzczZTZjZTZhNzU2ODQ2OGM3MzgzNmExYzcyNjNjZWJiMTY2ODIyIHJlbGVhc2UyNy1tYWludAorODQ5MzMgYmYwMTFlMzBmYzA3NjI3YjUyOGFiOGNmMTViODU0ZDQ5NzhhNmRkMSBweTNrCis4NDkzNCA0N2IxMGU0YTUxZDdlOGQ0YzBkZmY3NjRlNDhlYzJmYTc2NzNiYmU3IHJlbGVhc2UzMS1tYWludAorODQ5MzUgMzY0ZDZlZjdjY2FlNGNjMjQxNzdlZTQ1OGQ3ZDNjOTk5YzNkNDdjYSByZWxlYXNlMjctbWFpbnQKKzg0OTM2IGU5MDQyNzk4NDQ0MmNmNWI5ODliZGIzMDRjMGE1ZTMzZmFkMTVlNTcgcHkzaworODQ5MzcgNjAzNjc5ZDg1MzI5MzA4OTJhMmQ4ODdmMDU2ZjA4ODk0N2VlNjg5OSBweTNrCis4NDkzOCA3ZDQ1ZjUzOWRiOTdjODExZjJjNTc1ZjBlNmE0OTExMzdlNDBiYTUxIHB5M2sKKzg0OTM5IGIxZWM0OGI3ZmZkZmZlYjUyYWZkZjJiMjc1ZTg2NTJlZTc2MTMzYTIgcmVsZWFzZTI3LW1haW50Cis4NDk0MCBkOGJiOThlNDJjMmZmY2EzOGU4ZmE3YzY4ZmYzZTE1YWRjZGZjNTQ5IHJlbGVhc2UzMS1tYWludAorODQ5NDEgZjhjZTlmMzU5ZjNhNjRmOTFkZDI1YzZlZjExYTNhODM5NjBmZTVlNiBweTNrCis4NDk0MiBhMGUwY2I4OTNlMzFlMzIwY2FlYzc4MWFiNWVjMmQ3ODZjZWQzYzFkIHJlbGVhc2UyNy1tYWludAorODQ5NDMgMzM1OWQyZTBhOTY3MTcwOWJmZDYwY2UzZDAyNmQ3N2I0NWM1YmJlYSByZWxlYXNlMzEtbWFpbnQKKzg0OTQ0IGU1OWExODgyNThiMzQ4ODM4ZmY3ZDYyNDRjMDhmM2QwYjI1OTNlMzQgcHkzaworODQ5NDUgZDZkNjU1ZmRkZjIyYWNlY2RjNjljMTVjM2ViMzdjMmYyNTU3YjZkOCBweTNrCis4NDk0NiA0ODg5YTgxNmVlYzE2OWQ4YWE5NWRjZDJlYWI3NjMzZjU2MzgwYjE2IHB5M2sKKzg0OTQ3IGIxZjUxMzRiMDA0OWJkNjhlYWQ5OTVkNTg1YzJjYTMxZjNmYzk1YWUgcmVsZWFzZTMxLW1haW50Cis4NDk0OCA0ZWMxMjExNTZlZTllZjQ5MjcwZmY0MWQ1YzgzYzJiYzk4NGI4ZjBlIHJlbGVhc2UyNy1tYWludAorODQ5NDkgYTRlZThhNWM2ODQzNzI0NDVkODYwZWJhZjMwNTAzMzY4ZDU0YmY2MiBweTNrCis4NDk1MCA5YWQ2OWZjNGFlZjc1ZDFjMzAxZjg1ZTQwN2NhZDk4ZDg2NGQ5MGRmIHB5M2sKKzg0OTUxIDhjZWViNTlmNDU1MGFmNTFkYTQ3NDUwOGY2OGU5YTFmYmE3MjMxNjIgcmVsZWFzZTI3LW1haW50Cis4NDk1MiAwOGJkMWEwOGM2MmY3NWU0ZDYzOTNhZWRmNTM1MzE4MDQyN2NlYTVjIHB5M2sKKzg0OTUzIDJiOTMyNzc3NzgzMmEyNDRhZjIxZmY3MmFhZTg1ZDBjOTQwMzBkYjggcHkzaworODQ5NTQgOWUyMjE2NDIwY2Q3OTViMjliMzc4Zjg2NmEzMGE4OTZhYWVmMmE1YyByZWxlYXNlMzEtbWFpbnQKKzg0OTU1IGM1Mzc3MGIxNTQ2ZGFkNGI5Mjk5NTljZTM1M2M3MzIyOTJjOTYxZTMgcmVsZWFzZTI3LW1haW50Cis4NDk1NiBjOWVkYmNlM2ZjYWQ4YzZjZDJkNTQzMTAyYTFiZTcwYmNmYTE1NWM0IHB5M2sKKzg0OTU3IGUxYzhlYjM5MDUwNzAyOGE5MTAyMGQ2YjY5NzYyNDNiNTlhMTAyMmMgcHkzaworODQ5NTggMDVhNWY3MWMxYTc4ZjdkY2Q4ZDk5NDYwMzIxMDAzNGY2MmVhMmIyYyByZWxlYXNlMjctbWFpbnQKKzg0OTU5IDgyMDhhNDMxOTFlMjljOTI0NzAwYTkwODhiOGNjZTFjOTgwMTI5ZDYgcmVsZWFzZTMxLW1haW50Cis4NDk2MCA4YWM3MGIxMmNhNjFmYWUyMTQ4NzQwNjc0M2UxYTMyYjhmNDdmNzY2IHJlbGVhc2UzMS1tYWludAorODQ5NjEgYjNkMGRlYWY1MGU1MjMyYzZkOWJlYzc1YjQwNmQ1YmVkYjJjMzljYyBweTNrCis4NDk2MiBkNWZlMDQwZjRhNDhhMjc4MGZlMzMxMmQ5MzgxOGQ1ODgwMDgzNTgyIHB5M2sKKzg0OTYzIDZiOWY4OGRkYjRjZWU5MTQ5YTFjZmQ1Zjc5MDNmN2I0MTM4OTNmNzggcHkzaworODQ5NjQgZjJjZWVhYWFjOTM4MGI1NDIzZTJjNTNkM2Q5NjUxYTJhZjA1YWYxOSByZWxlYXNlMjctbWFpbnQKKzg0OTY1IGViY2Q4MTE1NThkNjdkNjA0NjdhMjI1MDBjYWYxMmJhZTI0ZGJmNmQgcHkzaworODQ5NjYgMzQ3NGNlZTljNzU4YTg2ZTk0MjdlMzFlMWY1NzM3Y2ZmZDViZmQyMSBweTNrCis4NDk2NyBkNTAwMWQ2Yzc3MzY4ZWZiZGFlZjMzNjI5YjE5MjI1NjMyMWM1MDcyIHB5M2sKKzg0OTY4IGY3MDNhNjQzZTZjZTA3YjhjMTk1OGZlMGE3NGQ4MWY2MjAzMWYxNWYgcHkzaworODQ5NjkgMjI1YTZkMWNmODExZjcwYTc0ODMyMTE4ZGJlNDE2NWE5NDk4M2UwMiBweTNrCis4NDk3MCA5ZWE1MDRkNDVlZWFhN2UxYmY0MjhmOGE2NDI5ZGJiY2FmMDU3OWM3IHB5M2sKKzg0OTcxIDk2ZTdlZTIzMmFiZjExZTJkY2I4M2FjMTdhOGU5NjY0ZTlkOGViMzMgcHkzaworODQ5NzIgZGZkNTU4NGViMWFjYjU5OWJkNDJiZWU0YTgyMjRjYmY5ZTk0YzYxNSByZWxlYXNlMjctbWFpbnQKKzg0OTczIGE2NzZhYzA2ZWFjYzA4N2Q2ODFjZDM3MDY3NzFjYWU4ZTIwODA4NWQgcHkzaworODQ5NzQgZmY5MmNjMzU2YzM1ODMxMzRhMmM1MzVkZjRlOGU2MTJkNmU4YTc1ZiBweTNrCis4NDk3NSBlZTE1Mjg1MmM5NGRmOTQ2NzQyZjY5MGZlNjJmYWFkOWFlYmI0ODY5IHJlbGVhc2UyNy1tYWludAorODQ5NzYgZjRhMWM3OTZiYzk4NzQ1M2U1NjhmNjJjNWJhNGI1ZWMyY2M2YTdjYyBweTNrCis4NDk3NyA2MzNjNmIxMWE1YTllNzg1MWFmOTcxMzY2ZmFjOTMxMmFjMjRmNTlkIHB5M2sKKzg0OTc4IGQ1NjBlZWNlMDg1N2YwNmMzZDBkNTNkOGJlNjg2Y2Q1MGZjMTllOGQgcHkzaworODQ5NzkgZTMxNDkyZjQ0MGM5ZThlNTFhOWJlMmI1YzNlMWIwN2YzNDA0Yzg2MyBweTNrCis4NDk4MCBhMGVjYjhlMmQ3NjllN2EzYzI2YWZmZWNhNTVjMDhlZTkwM2VkYzVkIHB5M2sKKzg0OTgxIDUxZDhmZmZjZDI2MGU4MGFhMjVkNTMxMTgwMDYyZjM3ZmNjNTg0MmQgcmVsZWFzZTMxLW1haW50Cis4NDk4MiAyMGYzNDVmYzAzNjExNGI5NGY1Zjk5ZmFlNDc2NDVjZjllODI5YTQyIHJlbGVhc2UyNy1tYWludAorODQ5ODMgZDA4OGZhYTM1NDU2ZWFmYjdlNjI1NDUzMjJkYjQxOWU0ZjhiYWY5MyBweTNrCis4NDk4NCAyZTViZGUzODNhNWM3NGFhMThmMmU0NGNhZjYwMWEzZGZkMmE5MmE2IHB5M2sKKzg0OTg1IDBjNzdkMDBmNGY4MjRlMjg4YjRiODE0OGJmZTE3ZmZkYzkyYjM2YWIgcHkzaworODQ5ODYgYWIzZDkyZmVhOWZkYTVlNWJmOWRlN2U3NTJlMDkyYWYyMTQ4MzE1MSByZWxlYXNlMzEtbWFpbnQKKzg0OTg3IDFkZWJjY2ZiY2JjOWE4ZWVkMDhhMzk1MDZjMGMwNjc3NzBiZGU4MTggcHkzaworODQ5ODggMjhkNDFkMzRhMmU2MTU1OTA1NTQ4ZDUzYjM2NjJhMzNkOWMyYjM5MyBweTNrCis4NDk4OSA3YWNhNDU4NDYxYWIyNzFlNzAzZmY4YmUxNTRjMzg2OTE4MjA0OGNiIHB5M2sKKzg0OTkwIDc5NTJjZmFiYmI4ODc1Zjk4NzRlNzYyN2RmNGFiZWE4YWVlOTdlODEgcmVsZWFzZTMxLW1haW50Cis4NDk5MSA4N2FmZTQ3NDI5YzU2ZDE3ZjQ5NTQ1NTBiZTcyODVjZDZlZmMyYTQ0IHB5M2sKKzg0OTkyIGFhNTZlYmI4ZmU5NDczNGEzMmYxMDljYzBlYTg1MGQ5ZTUxYzc4NjcgcHkzaworODQ5OTMgMjYwZGM3ZGUxZTg3YmU5YjVhYjdmZTNhY2EyZjFmYzgyMDRjOTk2NyBweTNrCis4NDk5NCAwMDcyMjhkMGU1Njk4NDYzMWU4ODAwZTc2YjgxOWUxZThiNjgyN2YwIHB5M2sKKzg0OTk1IDIzNTA0NGIzOWE5MjExYTU2YmI0ZDRjOTZjZGVlNzk4ZTE5YmViMzAgcmVsZWFzZTMxLW1haW50Cis4NDk5NiAxMmUwZGZmZWY3YmQyNDgyNWJiM2JkNzkzNWUzNDQ3NjZlMDdlMzc5IHJlbGVhc2UyNy1tYWludAorODQ5OTcgZjZhMGViNzMwYTliNzg0YmMwYjQ3ZjNjYTVkYzhkZDAyM2Q3OTVmNiBweTNrCis4NDk5OCA4Y2M0YmU2NDhhYjQ5MDZkZGI0ZDZjMWI2NWE2MTY4MTBkNzFiZTRhIHJlbGVhc2UyNy1tYWludAorODQ5OTkgMjYwZGMzNmMyYzg2MWVmN2JjY2E4OWVkNGU4Mjg1NzgwY2JiMWMyMCBweTNrCis4NTAwMCBiOTQ1M2Q1MDRmOGNhNGFlZmEyODVkZjRkMTNiMjRmY2YwOTRiZjJkIHB5M2sKKzg1MDAxIGIyNzhkOTNmOTU4ZWVjMTg0MzgzMDEwMDEyZWVmZTM4NGYwZTgyMDQgcmVsZWFzZTMxLW1haW50Cis4NTAwMiBlNWI3MDc5MzU2NmVkZGE1ZWU0YWVjZTUzNDcxMDI4NTYwMmU2NzdjIHJlbGVhc2UyNy1tYWludAorODUwMDMgYzllMjk5MjQ5MzIzODI1ZjYzYmJlZThhMDg4NzI1ZmMyMjIxYjZiNiBweTNrCis4NTAwNCA5Nzc0YzExZTAzZjZiMGI4ZDg1MzJiMTIwNTcxN2MwMmQ3MWU0MzU5IHJlbGVhc2UyNy1tYWludAorODUwMDUgNGNkMGVkZjBiMzU2MTk3MGRmYmE1YmQwYmViOTJiMzQzZjZmZDkzNSBweTNrCis4NTAwNiBjOWIwOGM1OGYwNjMwYjkxYzliM2Y4ODJhNTgzODk2YzJlMmEzM2MyIHJlbGVhc2UyNy1tYWludAorODUwMDggMGI0OGM2Zjg2NzFmZDRlMzBjMTk4YmVkY2Q1NTYyNGRiYzZhOGZkMCBweTNrCis4NTAwOSBjNTJmNzVjM2ZiYTJkODY0OThhMDUzOTZmMzJhNzkxMWMxYjBmOGI3IHJlbGVhc2UyNy1tYWludAorODUwMTAgNjUxMTE2NWU0ODMwZDhmZjY4NDZkNDc5OTVkYjdmMWIyZTM0YzEyNiByZWxlYXNlMjctbWFpbnQKKzg1MDExIGJjN2Q4ODA4ZjE5NWM5ZDI1MTQ3YzdhZjAzNDBmODNlOTEwMDJiNzMgcHkzaworODUwMTIgMjY1ZjcwMTc3NzJiODcxMTJmMDY1NjFlN2I1MWIzNjdiZWZkMjE5ZSByZWxlYXNlMjctbWFpbnQKKzg1MDEyIDQzZmQ5ZTJiNWU3ZDFmYzNjYmM0Y2ZjYzcxMTAxNmQ3ZjE3MmNkMDkgcHkzaworODUwMTMgNjNiYTdhNGU3YzEwMjIzMWFmNjczMWE1NGY2ODBkMjg3NTE5ZTVlMiByZWxlYXNlMjctbWFpbnQKKzg1MDEzIDQwOWQ2Yzc2YzMwN2U0MzBjZjIyNGZjOGU2ZTYxNzQ3ODE3NmExMGQgcHkzaworODUwMTUgNDAzYWYzNWY0OTQ4N2I5NGU2ODExMGNjNzczZTM1MzlkMTUwN2MyNyBweTNrCis4NTAxNiA2YzY4ZGJmOTMyZDA2ODRmMGUzZTg3NGVkNzVhMWNjMzU0NjhhZGM1IHJlbGVhc2UyNy1tYWludAorODUwMTcgYWM4YWEyMjVjNDE3NWFmZGFjYTMyODdhNmU2ZGQzMDNkY2RlZTY5NyByZWxlYXNlMjctbWFpbnQKKzg1MDE3IDI4ZThmZmIyYWNjYjY5ODQ1YjExZGJlOWU5MDcyNDUzOWQxODhhNWEgcHkzaworODUwMTggMjZkZmU0NGM5ZmFhNDU5ZjBkMGU3ZTAzMmQ5MTE4ZTE2ZWMyOGNlZCBweTNrCis4NTAyMCAwNWM1OGIzZDZkMzk0MWFhZDMxYzNhZTQ2MTRkNzViOWZhYjU1MTkyIHJlbGVhc2UyNy1tYWludAorODUwMjIgN2FjMzBkNThiMWQyMTZkODNhNTQzMDY0YTRhNGYyMGI3YTNiMzc2ZCByZWxlYXNlMjctbWFpbnQKKzg1MDI1IDJmYzczZDdjNzYyMmQyMDZlZTlmMzE5ZDQxZjFmYTBhOTgzNmQ5ZTMgcHkzaworODUwMjYgODg4MTI2MGQxZDE0ZmJkOWQxYWQxZDhmNGZkODZlM2ViMDNlZWQ0ZSByZWxlYXNlMzEtbWFpbnQKKzg1MDI3IDNmMGZmYzgxOTllYWZjZjAzMTFlOWM1MjBmY2Y5Y2IzMjhjY2NhYzkgcmVsZWFzZTI3LW1haW50Cis4NTAyOCBmZDVlNTEwMzUzMzViMzhiOWQwZGI0MzMxMWVhODhjZjk2NDM4MThhIHB5M2sKKzg1MDI5IGU5MzhlY2M1NTAwNTQ4YmE5NDU2NWRhNzgyMjA4ZjhmZTc3MTFjMTcgcmVsZWFzZTI3LW1haW50Cis4NTAyOSA1MmVmYjEwNDRkZTU5MzRmOTczMTk1NDU5OWFlNjAyZjg4MGZiYmVhIHB5M2sKKzg1MDMxIGZmNWQzZTVjNGJiNTk1ODgwYmUzNzhmMTg5ZGRkNjkwMzM5ODg4ZTAgcHkzaworODUwMzIgYWVkMDRiM2YwZmUzODIyZmY1Mzc0YWNhMjFhYWVlODhmZDYwMmUyYyBweTNrCis4NTAzMyA2YjQ5ZWExMWIxNTc3OTBiMTZmNjI2ZGQ3MmJhYWE5MzNiMDdmN2MyIHB5M2sKKzg1MDM0IDVhN2JiODVhNWQ5OWMzNTYzN2JjNDQzODM2NWFjZTY1ZTIzMGY4YWMgcmVsZWFzZTMxLW1haW50Cis4NTAzNSAxZGMyYjUwZDM0NGY4NWU2M2M5YjRjMTUwZDQwNTVjOTAwYmFhYWMxIHJlbGVhc2UyNy1tYWludAorODUwMzYgN2JkYTBhNjMyYjBkNDU1YzU0OTRlMTJlN2JkZWIyNDk3NTM1YTgwMSByZWxlYXNlMjctbWFpbnQKKzg1MDM3IDRkM2ZiY2Y2Zjk2YTBlODIzODg4N2Q1NjRlNTdkOGU5MjQ2ZjhiMTYgcmVsZWFzZTMxLW1haW50Cis4NTAzOCBjZTRhMjJmYzljYzQ0MWM5NTMyMDNhZTRlOTZhYjU0NThiMTI4MDAxIHB5M2stdHRrLWRlYnVnLW9uLXhwNQorODUwNDMgM2Q0OTBjM2EwMTllMjEwYjYzNGVmYmI3YTExMDRkODhhOTk2ZWUxMyBweTNrCis4NTA0NCBmNzZlZjFmNDYyNjYzNzA2NDA0Y2NhN2MxMmNjNmY5NDg0N2IyYjA0IHB5M2stdHRrLWRlYnVnLW9uLXhwNQorODUwNDUgN2RmYTk5MDBmOGM3ODg1Y2ZjY2M5YzBhYTlhMTQ5NmQ0ZGY0NDRhYSByZWxlYXNlMzEtbWFpbnQKKzg1MDQ2IGUxMmJhNDJmODYxZmM3ZWIwNTBjYzg0MjMwZTQxZDczODgzNWRlN2IgcmVsZWFzZTMxLW1haW50Cis4NTA0NyBlMzgyZmY3NDE3OTAyNjJlOWNiNGQ5ZjM3NWMxNmEwYTM3YWVmN2E1IHB5M2sKKzg1MDQ4IGM4ZGM0YjVlNTRmYmQ0ZTE0Y2Y1NjU1MmM3Yjk2OWRiZDc4ZTRhNDQgcHkzaworODUwNDkgM2Y0MjczZDMwYjM4NTI1MTFhMzYwMjFkNTY2ODFjM2YzNmI5ZDc2NiByZWxlYXNlMjctbWFpbnQtdHRrLWRlYnVnLW9uLXhwNQorODUwNTAgMDk4MTIzYTdhMDNjYjdiMWE1YzEyYjdhNGFiOTJhN2Q5ZTQ2YjZiMSByZWxlYXNlMjctbWFpbnQKKzg1MDUxIDRjNDhlYmExMjEyM2VlNTY3OTFjYjhmMDc0YTRiMzA3MDg1NDNmYmIgcmVsZWFzZTI3LW1haW50Cis4NTA1MiA2OTRjYjVkODY1MjUxNTBjYzFlZjM0NjRlNmQxYzA4OTQ2ZWQ1ZWY1IHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTA1MyBhNGIzOTk4YTdhZDQyZGE2MTAwM2ZlNTdlMDk0NzVlNjhhMmZhZWVjIHB5M2stdHRrLWRlYnVnLW9uLXhwNQorODUwNTQgZmFmZTg0MmUzMjAwY2I4YWQ1NzQ5MjhiMWY4MzUwYTcxM2VmMTM3ZiBweTNrCis4NTA1NSA0ZTVkMjAxZmYyOTQwMWIwNTg5N2ZlNTk5YjUzZGRjMzAxOWRlMTdjIHB5M2sKKzg1MDU2IDM1M2YwYzJiYWY3N2QyZGQ1ZjkwOTQ1NWNlYzY1YWVhMTI3MzlmYmMgcHkzay10dGstZGVidWctb24teHA1Cis4NTA1NyBjZWEzN2ZiMDNkYzBmNDlmZGZjY2M3ODE3NjM5OTdjNTQ1NTliMzMwIHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTA1OCA0NWY1NmUzMGFmYTU3NWYzMjJkMTM3NTMzMDRmNDRmNTRiNGRkN2JmIHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTA1OSA5NTIzZGJlMGI2NDk5ZTlhMTBmYjZiYzMxZTZkNWY4YTg4NjhjZGYzIHB5M2sKKzg1MDYwIGUwNjI4ODQ3NjVkNjVhZGY4NDkxZWYyOGQ3MzQ1M2U5OTc1OTRiY2IgcmVsZWFzZTI3LW1haW50Cis4NTA2MSAwNWNlNTg1ZjY0YzQ4OGE4OWE2MDE0ZGQ2MzdlNTViN2I3NTFkZTAyIHJlbGVhc2UzMS1tYWludAorODUwNjIgZTMzMmNkOTVmNDE0YWEwODljZGViZDhiNGJjNWNkNDRkYmJlY2FlZSBweTNrCis4NTA2MyA5ZGExM2U1NjBhM2E5NmRkNTRiM2MxZWFlZmYyYmJlZTUxOWFmMjU2IHJlbGVhc2UzMS1tYWludAorODUwNjQgYWZiMmYxNDRiOThjMjM2NTVhOGVkOGJhMTYxYzQ4ODkzOGZhYmU2NyByZWxlYXNlMjctbWFpbnQKKzg1MDY1IDQzYjc5ZDgwZjVhZWNlYWJhMzA3Y2FkOTg5NTc0N2EyMzI5YjRiMTggcmVsZWFzZTI3LW1haW50LXR0ay1kZWJ1Zy1vbi14cDUKKzg1MDY2IDdkOWJhZjY0OWYyZDhkN2RkMjQxN2Y5Y2E5NmI1NDhjNzVkNDUzNzEgcHkzaworODUwNjcgNjRlNDExN2Y3ODg3NTRhZmYwNDIzZGMwOTBhMGI4ZTA4YTEwY2ZlZSByZWxlYXNlMzEtbWFpbnQKKzg1MDY4IGQxYmVlN2NmNmMyZjJhZTVkZTU1YTlhOTFkNjhlNWZlMTY5MjUwOTYgcmVsZWFzZTI3LW1haW50Cis4NTA2OSBmYWQ3OGU4NmQxNmVjZDM1YmJiNTliYjdjZmRiNjhiMmU2YTE0NjcyIHJlbGVhc2UyNy1tYWludAorODUwNzAgZGQ5NGFjMmE0MmIxN2VmYWNkNTExZDc1NGMyNDNmOGQ0Zjk5YjUyYSBweTNrCis4NTA3MSA3ZTI3NWE0Y2Y5NDEwZDQyOTBkYmJjNGNkNDc4NGUxOWExYjY4ZmNkIHB5M2sKKzg1MDcyIGEwOGU0Mjc4OWU2ZDUxZDIyNDYzNTJkYWQ0OGZiYWU3ODgxZWM2ODkgcHkzaworODUwNzMgNDcyYTZlZWMxOTZhYmZjMTRkZDUwNDM4OWUzY2IzMjBlNWZkNmEyNCBweTNrCis4NTA3NCAwZjhjMmViODlmNDZkNWMwZmFiNzNiODcyZTkyZmNkMWFhMTQwZjk4IHB5M2sKKzg1MDc1IGRjMzgzMzk4NDczNGIyNDkzZWRmMjFjMjE4ZmI2YjYzMjZhMWI1ZDggcHkzaworODUwNzYgNmM4YWRjMjAwZWUwMmYxZDNhMDI0ZjQzMWI5ZWZkYjNiODI2NzdkNSByZWxlYXNlMzEtbWFpbnQKKzg1MDc3IDZjMWYxMGUwNzQ1NTY0MDdjYTk0Mzc2NWMzYjMzOWU0YzhiNGZjNmQgcHkzaworODUwNzggZmI3ZWUwZjJjNmY0YTA0N2E3MDFhMWJmNTA1ZTAzZDBmYjNmMzQxNiBweTNrCis4NTA3OSBjMTg0MjNmNGI5Njg4Yzg5YTA5ZmU2NDBhZTk1OWNmNTBkYjg1ZDNhIHJlbGVhc2UzMS1tYWludAorODUwODAgZDEyZDU1MGViZjM0NTVhYjg5MDFmZjRhNTE5ZmVmMDE5Yzk3NWI2YSBweTNrCis4NTA4MSA1NTIyYzZiMmFmODcyY2UxMGI0NDAxODk1NTBmZDk1MjFiMDJkZGRjIHJlbGVhc2UzMS1tYWludAorODUwODIgNGNmNzdkMTkzZjU3ZjVlMDc2YjFhMTk5NTVlYWJiZGVlN2ViYmQzNCBweTNrCis4NTA4MyBkYzQ1NTU2NDZlODA3ZDgyNmYyNjUwZDg5ZGU4OWQ2ODhiOTBkMjdhIHJlbGVhc2UzMS1tYWludAorODUwODQgMDZmNWUxOTA4NTVhM2ZkNzcyODQ4ODkwZGQyYzhiOTI0MTM4N2U3MCBweTNrCis4NTA4NSBjODY5ZWEwN2NkOWQyNjhjOWU2ZWM4M2ZhYzIyZTA4MmIwMjY5YmI2IHJlbGVhc2UzMS1tYWludAorODUwODYgYjNjN2U1MTYyN2ZkYzY5OTBiZGE2YWE2NTBkNmQwMTEyOWU1NDNmMiBweTNrCis4NTA4NyA3YmIwNTEzY2QwYjgyODkyZWIyNTdjZmU3ZDMwNjgzN2U0YzJmNDFmIHB5M2sKKzg1MDg4IDczNDg1Y2JkNmM5ZWI2ZWM0ZTAwYTA1YjY3MjY0MDhhMjQ3ZGQ1MzggcHkzaworODUwODkgNTlkZmIyMTM4M2Y4YmY5ZjZkMTZmZWE4ZTI5NTU5MjQ0YTU1ZGJmNCByZWxlYXNlMzEtbWFpbnQKKzg1MDkwIDBlZTIxMTNhNGZkZTYyMzY2ZGI2NzM3MjljYzUzNzUwNjAzOWY5MzkgcHkzaworODUwOTEgNzc4Y2I4ZTZjNjM4MzA0MDM0MWFlNDc3NmEwY2RmMWNjY2M5NDg1ZiByZWxlYXNlMzEtbWFpbnQKKzg1MDkyIGUxMmIxMDQzNTUzMDhkYmY3MjVhOTVkNWYzZTkyMzY1ODI1MjlhNGMgcmVsZWFzZTI3LW1haW50Cis4NTA5MyA3YzdkMWQ5NmUyYzMzNDE0YmQ0OWIxMWJlMDA1MjE0OWU4MDhmOWU5IHB5M2sKKzg1MDk0IGM2MjBmZTg3YzcwM2IwOTBmYzdlYTBmZDk0NzI5ZjI5N2YwYWM3M2UgcHkzaworODUwOTUgYWM4ZDljYWMzMDMzNWUzYTIzYzgxZmJlYWE4ZDQ4YzQ4MzUxZWVlNCBweTNrCis4NTA5NiAxOTFlZDJhZDU5OTdjMWZjNTZmYTIzNjkzNWU1OTU4N2I4Y2YyMzVmIHB5M2sKKzg1MDk3IDk2MWY1MzU0ZWI1NDFmNDQ1MGU1MGY0NTE4ZGEwNDMxNzhhYmFiM2IgcHkzaworODUwOTggODAwYWRkYzk4NTcxOWZlZTQxNjdmNzM3ZmRhNGE4MmY4NzAwNjY3MSBweTNrLWlzc3VlOTk3OAorODUwOTkgM2ZiNTgzYzhlOTdlN2Y2NDkwMjlkYzYwZTg2MTdhYzNhMGZmYTA2OSBweTNrLWlzc3VlOTk3OAorODUxMDAgZjRkMDQ3NDkxY2I0MmE4M2YyYTY5NjI3MGVkMzg3ODVjZmIxNDQ2YyBweTNrCis4NTEwMSA5NDEwOTBlZDk2ZGY0ZjA3YWY3ODYxODM1OWJmYWU4OWNmZjRlYWI4IHB5M2sKKzg1MTAyIDY0MzRjZGNlNzE1Mjg1MjNhOWQyZGQxMTNlMTQ0Mzc3YmQ1OTYzNWIgcmVsZWFzZTMxLW1haW50Cis4NTEwMyAwYjRiZjZjZGUxMWRlZTBkNDU2NGRiZDI3Y2Q2ZmFkMmYwMGE0MDRlIHJlbGVhc2UyNy1tYWludAorODUxMDQgMWQxNWI1NjdhNzRiMjgzZWIzZDZmOGI5OGQ5OGNjYzI1MGI0YmFjNSBweTNrLWlzc3VlOTk3OAorODUxMDUgYWY5ZGVlMTI3ZTNjMmI1ZDA2YTdiYTM5YmZlN2MzMzkyMzc2MjkzMiBweTNrLWlzc3VlOTk3OAorODUxMDYgYzRjNmQ4NDJkODJhMDE4NzI1OTBkMDJhMzVmZWQzYzZlNDQ2NjE5NiBweTNrLWlzc3VlOTk3OAorODUxMDcgMzRhYmUzNjkxOWU1M2E0YTIyYzQxYzFmZDA1OTY4MzJjNjI4ODQ2MyBweTNrLWlzc3VlOTk3OAorODUxMDggMTQ3MjU4YTBhZGY4NWNjNGJjNmFjYjlkZGJlY2VmNzJlYTA4MWRjMSBweTNrLWlzc3VlOTk3OAorODUxMDkgMjVlOGI3ODI3YzdkZjM5NmI0YWI0YWYxYmIyZGNlMTcwOTllYTU3MSBweTNrCis4NTExMCBhNDMwZjhmZWM0YTBmYzRkYWM4Yzk2YzdkODc0YTcyNWI1YWNkOTVkIHJlbGVhc2UyNy1tYWludAorODUxMTEgMDA3N2VlMzAxMzRjNmIzZDRkN2IxZjA2OTJiYjA5ZWZiOTI4NTA1MCBweTNrCis4NTExMyA2ZGRjZjc0MjgyMjdhMjI0ODUxZDc0YjZhZDIxZTkzMDM4ZGQwYTYwIHB5M2sKKzg1MTE0IDU5MzZlYzNjNGVjMDI3ZmY5M2ZkMGJhNmNmMDUwNzQ0ODU0ZWI5MDEgcHkzaworODUxMTUgMDFiOTZmNzhmYjcwYjdiZWFiOGY3ZTIxMmI4MWM0ZmQ2ODIwY2MxMiBweTNrCis4NTExNiAxYWRkOGU1ZjMxOTg1MThiMzIzZTc3ZjJhZmNjNDlkZWE5ZDQ0M2ViIHB5M2sKKzg1MTE3IDc0NmU5MTUwMTE5YWRiNzA4MjE2MDQ0YjEwMjQ3M2ZmMmI2NGRlOGIgcHkzaworODUxMTggZTcxMGU3OTJlZjJlNzZiNDkxZmY2MDRjOWNjYTBhY2M5MWZlMTcwYiBweTNrCis4NTExOSBlZjE2ODY4OGFmMGE5NmY4MTVkZDI3MWIzMTYyM2EyOWZiNWZiZjg3IHB5M2sKKzg1MTIwIGE5MzQ5ZmQzZDBmN2JjYWVhMTU2MGFmYTRjNWNkODkzMzAxZjA4YzYgcHkzaworODUxMjEgZWE0NzIzYWFjNDc4ZjRiZDQ0OThiMTJhM2UyYTc4YWFjN2UyNzJhOCBweTNrCis4NTEyMiA0MDMzZjgzYzJkZjE4ZDk4ZmEyNzZlZjM1N2FhMjNiOWNhYzA5ZTA3IHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTEyMyA5ZmUxZGNlMmJmYTQ0NTA2Mjk4MjIwYjViMjgzM2YyOWFhNzFjYzczIHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTEyNCBkOTU3M2UzNjI0ZWMxMjIxZWY5ZDlkZWUxYTZmODljNTdjZmU2ZGZlIHJlbGVhc2UyNy1tYWludC10dGstZGVidWctb24teHA1Cis4NTEyNSA3YWRkNDViY2M5YzY3MmMzODQzMjYwYzkzNDcxOGYyNmVhN2JjYzBiIHB5M2sKKzg1MTI2IGQ3ODdlZjlhY2I3MjRlOGM1OTc0OTc0ZTBhN2M2Y2RkNjQxMzhiZDUgcmVsZWFzZTMxLW1haW50Cis4NTEyNyBiOTlmNTI3ZTBkNzdjNzAzM2VjMWRlNzk4YzM1OGQ2MTcyZDU5ODljIHJlbGVhc2UyNy1tYWludAorODUxMzAgOWYyN2Q3MmJmNWRmODkzMDhiZjQwYzY4MmE2MTllODljZGE5MzhhOSBweTNrCis4NTEzMiAyODJjNzdkYjNkMzg5YmQ3MzQxYjRiZDZhOGM1YzA4NTgwOWQ1ZTdmIHB5M2sKKzg1MTMzIGNiMmZiYjVlNjQwOTY0ZTdmN2RlNmRmMGZjN2U0NDk3N2ExYTkxZDYgcmVsZWFzZTMxLW1haW50Cis4NTEzNSAwNGY1M2NhNDE1OTZlZTgwMTAzOTMyMzA3NTgxMjYxZWRmNDVhZmFlIHB5M2sKKzg1MTM2IDg3ZjRiMzI5MDVkZjEwNTBlZjBhYzg2NWY1ODRiNGRhZjUzMjA5NGMgcmVsZWFzZTI3LW1haW50Cis4NTEzNyA1OTc4MDRiNDExMjU5YjhjMGY1NjU4NDlhNjQ5NGNlMWM2ZjdhM2FlIHB5M2sKKzg1MTM4IGRhZWNlN2EyMzRkYzkxYTgxOTA2NDM0NTMwOThiMGFkNTE2ZmRlYjMgcmVsZWFzZTI3LW1haW50Cis4NTEzOSA1OWRlMjI1YTE5Y2Y4YWM1NDdhMGNkYmI0OWE5ZmQ3YzJlMDY4NTI1IHJlbGVhc2UzMS1tYWludAorODUxNDAgYTlhMzBjZmI4OWE1ZDM0YmY4NmY3MDE3MDYyY2ZiYTk1MTU4OWY3MyBweTNrCis4NTE0MSA2ZjEzM2U4N2E0ZjhiMWVlZTA4MDlhZDU1YWVmZDU4MzQwNzBlMzg3IHJlbGVhc2UzMS1tYWludAorODUxNDIgMTVjMzY3MWMxNzgzMmQ5YWY5YjE3ZWUxOTg2OWZmZmE5OGM2NTIxMSBweTNrCis4NTE0MyA5YjVlNmE1N2FiMTA1NDI5MWU3N2NlNTEwOGUzMTE5YmY5NmQ2MWIxIHJlbGVhc2UzMS1tYWludAorODUxNDQgMmY2ODMxY2QyNDFlZDcyOTE3NDk4YjBkOWI1YWQxMGEyY2M4YjU0ZCByZWxlYXNlMjctbWFpbnQKKzg1MTQ1IDA2MjJkNGQwOGFmMDI1ZjI1MWI2ZmZlNmJlNWRjMGNiM2QxYzRiYjQgcmVsZWFzZTI3LW1haW50Cis4NTE0NiAyZTY4NDBjMGMxMjY2YjQ2MDZlODU0NTg2ZjdmMmIyOTEwZDRlNGJjIHB5M2sKKzg1MTUzIDk1MjU4YTZhMDY4M2U2YTU0OTVjZDBkMTU0YmZmZWVjZDMwYWZlOWMgcHkzaworODUxNTQgMzQwZDFiZjU5NTFlMTA4YjNmZDAwMzk5ZTUwZWMxM2UxNjIyMjg4NyBweTNrCis4NTE1NSA0NzFkYmQ5MDZhYWQwMTFkMjRkZDhiMjRkMzJmNGIzM2Y4MDFhOWNjIHJlbGVhc2UyNy1tYWludAorODUxNTYgOTFlNjIzODkwYjk0YzFkZTA0MmY2NzAwODQ1NGJkMzMwODIyNWZjNCBweTNrCis4NTE1NyBkZTQxOGQ5ZGQ3MzMxYjYzMjgyNWQzOGZjNjc4NzE5MWE4ODExMGE5IHJlbGVhc2UzMS1tYWludAorODUxNTggY2U0NzVkMzViNTBmYzYzNmU1MmEwNTVlZjUyNzk5MDI1MDU5MDMwZSByZWxlYXNlMjctbWFpbnQKKzg1MTY5IDdjMGYxODM3ZThjYmUyNWQ0N2IzODE3NWNhMzM2MGYzZjZhMjAxODYgcHkzaworODUxNzAgYmViZTVlMzU2NjFlMjA3NmVhN2ExMWE0Mjg2Mzk0ZjA1ZWQ0ZGZhZiByZWxlYXNlMzEtbWFpbnQKKzg1MTcxIGE3NDhiZmNiNjk3MzNjZDlmZDBlOTM4Nzg1N2IzNDYyZDkzYzBlMGMgcmVsZWFzZTI3LW1haW50Cis4NTE3MiBkZTdjZGI3MjYzNTAyYjc0Nzc4NjRjOWRhYjBlNzBjZTJjMDVhYmVmIHB5M2sKKzg1MTczIDBjYzNmZjgwMjBhZTY1Yzk2Y2QzYmNkMzU3YWVjMjhlOTBiZjVmMjMgcHkzaworODUxNzQgNDI4MzE0ZWViMmM3NjNiOWNjYjg3YzMwZDY0N2E1N2Y0YjhiYWRjYiBweTNrCis4NTE3NSBiYjVlMThhOWJkZTNhZTIyN2MzZjFkMDJiZmFmZDYzOWIzM2Y3OTRiIHB5M2sKKzg1MTc2IDhkZTUzNWRlZjEyMjJlNGI3NjVmMDI5NDhjZDMxZDQxMGMxNDUxMGEgcHkzaworODUxNzcgOTA0ODgwN2JlODNhYmI5OTkwM2U1NzM4MDg0MTBiYjUwMjU4ZjhmYiBweTNrCis4NTE3OCBjOTkwZWI5YjYwYTllNDc5YjFlZjU4NzNiZmI0Yzk5ZTI0MGZmOTNmIHB5M2sKKzg1MTc5IGVmNWM1NzIxN2IyMDNlYTc1MGNiOGY0YmY1NTUxZmNmMTI1MTJmODEgcHkzaworODUxODAgMTIxMmU1MDBhNTg1MGU5NDQ0MTEzNGFmMDVkMWY1ZDUxZGFjZmQ2MCByZWxlYXNlMzEtbWFpbnQKKzg1MTgxIGYzYTcwZDk5ZDdlMGZiNWNhNWI2ZDA1MTJmNDdjODdiZjgwZDkyOGYgcmVsZWFzZTI3LW1haW50Cis4NTE4MiAwNzBhOGY2NjQyMjBlNmM1MzhlNThhZDc0ZGNkMzQ4YjU2MmIzMThhIHB5M2sKKzg1MTgzIDM5NGUyNTM4MmE1OTIzNmI3ZDU0OGI0YWMzYzA5ZWZiYzFiNTFkMzEgcmVsZWFzZTMxLW1haW50Cis4NTE5MyBkZWMwODc4OWE5YjQyMzNmNzMzZWYzYjE1YjhkZTk3YzY4MjJhZTk0IHB5M2sKKzg1MTk0IDBmODcwODViMjkwZjQwNjBmYTgwZDlhZmQ0ZWQ2YjlhM2UyMThmODIgcmVsZWFzZTI3LW1haW50Cis4NTE5NSBiOWUyNmIwYzQ2MTc5ODc5NWFjZjRjYWZlNTMyNGRmYTc0NzhhMGE4IHJlbGVhc2UzMS1tYWludAorODUxOTYgOWJiZDQ0OTg2NThlZTM3MTJjMWEzNTI4YjYzZTBiYTk4NjRmNjQwZSBwZXAtMzgyCis4NTE5NyAzYmIzZWU2ZTYwZTBhODIyMTliODkyNmQ2YWQ5YTNkZTliYmEyYzZmIHB5M2sKKzg1MTk4IGJhOGNkMjAwN2QyOTIyZjU0ZWNkMDU1Y2Y1NjljMzBkMjE5OGVlZDAgcmVsZWFzZTMxLW1haW50Cis4NTE5OSAxMzlkZDRjZmI4MGY1NzhkNjUzYzczYmFhNWIzMGFmNTRlODM1OGQ5IHB5M2sKKzg1MjAwIGY3YzkxMDdmN2FiZGUyZjUwN2FhZjc5OWM1YzAyMWU0MGUzNjIxZTQgcmVsZWFzZTMxLW1haW50Cis4NTIwMSBkMWUwY2Y4MThhZDI5OWZmZTY0NWFiZTlhMTJiOGNmZmY1MGZmMWM5IHJlbGVhc2UyNy1tYWludAorODUyMDIgMmMyYmExYjMwODIzZjIwOGQ2MGEzOTQ5MDA1NzNmYmU3ZDAyZmYxNCBweTNrCis4NTIwMyA5NDVhNTVkNGU3M2VmODI1MTQwNzNhZmI2M2E5YmQzODVkYWY5ZGU0IHJlbGVhc2UzMS1tYWludAorODUyMDQgZjExZGM5NDA0ZDExODYxYzJjMTFmZDQ1MDI4NzY3MGNmOWRhY2I0OSByZWxlYXNlMjctbWFpbnQKKzg1MjA1IGFkNDFmYmYzM2UzYjk4ZDRkN2IyNjg1MzE0ODc2MGY0NzQ2ZjdjOWQgcHkzaworODUyMDYgMzJjMzJiNzBhYTMzYmIzNDA2YzIwYzhiNDI4NzcxNjI3MTNmOGY5NyByZWxlYXNlMzEtbWFpbnQKKzg1MjA3IGUxZjZjZTgzNmZjNTMxN2ZhMzkwNWRjZGM4NDM4NjdlYzUzZWIxNTAgcmVsZWFzZTI3LW1haW50Cis4NTIwOCA5ZWI5ZTNmNjZlM2FkOGZlYWZmZGQ1Zjc1NmY2ODhjZTA2ZjgwNzNhIHB5M2sKKzg1MjA5IDhiZDBhMDYzY2ViOWNlN2E5MTQxMWViMDM1ZDJkZmYzZmM1MTZjZjEgcHkzaworODUyMTAgYjc3ZTkxNDQ1ZDliNzFmMWE0NDE5YjZmOWIzMjZlZTQxZTM0OTJkNSByZWxlYXNlMzEtbWFpbnQKKzg1MjExIGIzMzRlYWFkYjUwOGNlZTI0ZmVhZTEzNTliYTE2NzYyOTg3ZjE1NmQgcHkzaworODUyMTIgNmFmN2I0MTAyZDc3ZGNhMTMzOTc5MTE2ODEyNmVkYzQzZGM3ZTdlYyByZWxlYXNlMzEtbWFpbnQKKzg1MjEzIDM2MzNkOGZlNTU1MDZhOWEzZDg3MTVkZWJlNzUwYWE0MTY0YzlkYzEgcmVsZWFzZTI3LW1haW50Cis4NTIxNSBkMTYxZjhjOTY0ZWI4YWI2YWRlNGM1NGY0YjcyNTM1Yzk4OGE0YWM0IHB5M2sKKzg1MjIwIGMyOGZkZWVlYTc4NjA4ODg5OTU4YTllMjQ2NDRkZWZhNTAxNDJlOGQgcHkzaworODUyMjEgNWYyMGY3ZjE1ZWRmNzA0NWQ5YmYzZTgyYTY2ZGMwYmQ4MWNjMjZiNSBweTNrCis4NTIyMiA4ZmU4YjI4MTM1NmMzZGIzYjg1MzFlMTE2ZTg2ZWQwYWM2MzM5MDYxIHB5M2sKKzg1MjIzIDc1M2JmMjNlNDVjNWJlOGMyMzdkYTJiYmY1NGU0MGE4YjYzYTZhMTUgcHkzaworODUyMjQgYjA2NWIxOTQwY2JkOWZhM2NlNjYzNDZmZjYzYmU5MzA1NzYwOGFiNCByZWxlYXNlMzEtbWFpbnQKKzg1MjI1IDEyYzZkYTVhY2Q3MzA2N2M5MWQxNmM4MzdjNWU0OWQ2ZmZmYmM2M2UgcmVsZWFzZTI3LW1haW50Cis4NTIyNiAwOTgxNmZjOWNkZTU1N2QxMTZlYjJhNmMzOTg1MmU4OTU2NGM2YWM1IHB5M2sKKzg1MjI4IGZiODI4NDBmMGU3MGJlY2Y3NWExMmEwOWZhOGZlY2JjMTdkYWIxN2QgcHkzaworODUyMjkgOTk4ODkwY2ZmMjA1ZjMyNDVmN2RmMGYzNjQ3ZDVjNWQwM2MzNDZjNCBweTNrCis4NTIzMiAzZDQyNTBjY2NjZTkxODI2NWM3YTRkNTBlYWZhYTRhZDdhMTJlMjE4IHB5M2sKKzg1MjMzIDc3NjA5NWFhMDU4ZDFlMTA5M2E0MjgxYzZjZmIzNjM1Mjk0MGQ3MGQgcmVsZWFzZTMxLW1haW50Cis4NTIzNCBjNmRkYmZiN2FiNDM4MTk1NGY2YWIwYjYwY2I2NGFiM2MwNDI4ZGQ3IHJlbGVhc2UyNy1tYWludAorODUyMzUgNzliYjdjYWU2OWJlY2I5NjRlMDE4ZDc2YzgwY2RmNzE5MTBjNWQ2MSBweTNrCis4NTIzNiA3NTllNWQyNzViZWIzOTlhMWNiMmIyZDdkNjg4MTIzYzJhYjkwMjYzIHB5M2sKKzg1MjM3IDY0Y2EwMWVjMTcxNWZiMzZlMTgzNzM2MmQ3MjU3OTAwZDUxNDAzNTUgcmVsZWFzZTMxLW1haW50Cis4NTIzOCBjZDczOTE3ZjI0NzgzODY2ZWZlZjRjMTA5ZGEyZDI4MDE4MDZlMmQ5IHJlbGVhc2UyNy1tYWludAorODUyMzkgMWM0MTc4MTFlNTA4Zjk5ZTg1YjFkYzQwZTRjNTY0YmRmOGI2ZWQ4YyBweTNrCis4NTI0MCA4YmNiZGQ2NzMwYTc1NzM4Y2QwNTFkMzlhNjRmZDgwZTU2NDYyMDRlIHB5M2sKKzg1MjQxIDdhMGI0MWYxYzczYjg1MmFmNGNmNWQwOTExN2VlNmM0OThmMzhjZWUgcmVsZWFzZTMxLW1haW50Cis4NTI0MiBlZWRiZTVlYTQ0Y2IyMTU5M2RhYjNiY2RmMzE2MTc4NjBmODg4MDc3IHJlbGVhc2UzMS1tYWludAorODUyNDMgZWI3ZDY5ZDg5NjUwMWNiOTZlMTY0YTBjOTIxMTcyZTQ4YjBjOWM4NiByZWxlYXNlMzEtbWFpbnQKKzg1MjQ0IGE2OGY4NzYzNTU1YjIxNGVmNzM1MjljOTI3NzIxMTIzYWFlMGY5ODUgcmVsZWFzZTMxLW1haW50Cis4NTI0NSA1MzcwZDRmMDg2NDgwOWNlZTFlM2VmNjI5Zjc1ODBkYTgxZTU5ZDc4IHJlbGVhc2UzMS1tYWludAorODUyNDYgYTRjOTc0NmNiMDNjNWE1YmE4NDJiYWRjYmQ4MGM4YmFiODc0NGU0ZSByZWxlYXNlMzEtbWFpbnQKKzg1MjQ3IGJmZWU1NDc4MWJhMWY5M2U0ZDkwZGNmNmVmZjA3ZjE3ZGYzYTVlZTQgcmVsZWFzZTMxLW1haW50Cis4NTI0OCBjOTg3OWIzNDAyZTRhYjcyZDJkMzliNDVkYjVhYTIzZTNkY2Y2ZWE2IHJlbGVhc2UzMS1tYWludAorODUyNDkgZWI4ZTEzNzg0ZGU3Mzg0YzU5ZmRiZTQ3NmFlMzljYjAyYTEyMDU2ZSByZWxlYXNlMzEtbWFpbnQKKzg1MjUwIGI5YTc1ZGQ3NDIwZDA1NjZiNzMyMjU4NzJhNzQ1ZGI2OWI4NzcxYmYgcmVsZWFzZTMxLW1haW50Cis4NTI1MSA5MGUxNzM1ZGY0ZDk2MmNlZTAwYzQ4NjExY2EwYWVmZThlNThlYjA0IHJlbGVhc2UzMS1tYWludAorODUyNTIgMmRlODMyM2JkNGViYTJhYTM1M2NkYjFmZDY4MGExOTNhNzQzOWE0YSByZWxlYXNlMzEtbWFpbnQKKzg1MjUzIGEwNDc5MzQwZjAzNTJmMmFlNjNiYjM2ZmQ4ZDY0ZjYxNjlkOTQ3MDUgcHkzaworODUyNTQgZjAwNDQwYWY5NDEzNzhkYWI0NGQ0ZTFkMDc0YmJiYzBjNTM2MDkyYSByZWxlYXNlMzEtbWFpbnQKKzg1MjU1IDA0NGNjOGE5ZjE5Y2ZhMWI3N2ZhZDBiOGVhMzYxZjlmZWE1NDRkMTAgcmVsZWFzZTMxLW1haW50Cis4NTI1NiA2ZjlkMTVmY2NmYTRhY2YxYWZhMzcwZjIxZmIzY2ZkZmFiMjNhNzY4IHJlbGVhc2UzMS1tYWludAorODUyNTcgYzYxYzAyYWMyMDk5ZmJmNzg2NGVmZmNiZWI0NDA2N2M5M2RiZDIyMiByZWxlYXNlMzEtbWFpbnQKKzg1MjU4IDY5NTlhZGJhM2I2YTVkMjI3ZGI4OTE5ODFiMjk4YjA4Y2M5ZmQ5ZWMgcmVsZWFzZTMxLW1haW50Cis4NTI1OSBhNWM2M2IzYTk2YTlhOGYyMjQyYzNkMjA5NzMzYjNhZTg0ODIzZjRiIHJlbGVhc2UzMS1tYWludAorODUyNjAgMjgzMDYyNDRhZmEwZjQ1ODljMWM1OWVkNzQ0MDM4YjgyZGRiNDkzYiByZWxlYXNlMzEtbWFpbnQKKzg1MjYxIDY0OTg5YjAzMzk4Y2EyZjhmYjY2ODg0ZjIxOWRhOWQ5M2FhNzBmODMgcmVsZWFzZTI3LW1haW50Cis4NTI2MiBmZjczNGYyMjViNDdlOTY4OWJkMmRkMTA1ODVlNzAyYzY0NDhkMDIzIHJlbGVhc2UyNy1tYWludAorODUyNjMgY2FiNDU4NjM4ZTRkYjU0N2UwZGY2M2Q0MDc5NWYyY2Y5ZDJlODgyOSByZWxlYXNlMzEtbWFpbnQKKzg1MjY0IGJhYTk4YmE4NWZkNDExODljMGE5NWMxNTBmZmQ0NTVjZWRkZmM3NjEgcmVsZWFzZTI3LW1haW50Cis4NTI2NSAyYzExNWJmNTJjZmY5Y2U1ZmJmYzIzMGNjNGRiMGFmNTY3NGVjZGE5IHJlbGVhc2UyNy1tYWludAorODUyNjYgMjg1NjUxYTE1MzU1ZWNkZTQwNTk4OTk0YWY5NWI0MmRjMjA3OGQyNCByZWxlYXNlMjctbWFpbnQKKzg1MjY3IGNlMjAyMTUyZTIxYTExNDNlNmU5YmVhY2FmODAyZmViN2UxOWNlZjAgcmVsZWFzZTI3LW1haW50Cis4NTI2OCA1MzZkODY1MGRhM2RmMGQ5NjdkYzk3NzhlMzM0M2FiMmFjOTg5NmNhIHJlbGVhc2UyNy1tYWludAorODUyNjkgZTllMjQxYTkzZjllZTMwY2VmOTM4MTA2MjNhZmQ3YTgwZDliOTJjYyByZWxlYXNlMjctbWFpbnQKKzg1MjcwIDc4Mzk2ZWY0ZDgxY2Q2Yjc1M2NhNTgzNzNhOGNlZmE0OGY1M2YwYmQgcmVsZWFzZTI3LW1haW50Cis4NTI3MSAxYTBlMDY2OTc3OWNjYWY2ZDgyNzA4ODEwNzU2MTNiYWYyMWU2ZGY5IHJlbGVhc2UyNy1tYWludAorODUyNzIgNTIxZWFjMzFhODkzYTk4YTBkNWFmMzQ0NmU4MzViMGRmZjQ3YzRiNSBweTNrCis4NTI3MyAxY2ZkM2IxMjQ4OWRhZTk0YTFmNjRhNzk3ZmM2MDJjOTlkN2IwYjU0IHB5M2sKKzg1Mjc0IDlhZmVkNzBkM2FjYTFjNjM3OGFlMmMzNGQzYTVkZGNmZjc5YTc3Y2EgcHkzaworODUyNzYgZGY4NDRiYjY3MjlhNGJjNjYxOGJhZGUyYzYwYmQ4YTU4ZTkwZDc1ZSBweTNrCis4NTI3NyA5MjU3ZjA4M2ZjZmYyMmY0M2ZjYTk4ZWQwYzdhZjk3NmRiM2ZlNGM0IHJlbGVhc2UzMS1tYWludAorODUyNzggMDE5MjA1NWJjYzNiZTkxNTkwNzYxNzdmYjU4MjczMThkMGNjMDNhZCByZWxlYXNlMjctbWFpbnQKKzg1Mjc5IGQ2NzI3NTNhMDNmMDA4Y2U5YjI4NGFkOWJlNDdkMDMwYzE4NDdiM2IgcmVsZWFzZTMxLW1haW50Cis4NTI4MCA3MDE4MjYxZjJhYzFkYTExMTBlNTc3NmY2MzBmN2QwY2RhZTQzOGJkIHJlbGVhc2UyNy1tYWludAorODUyODEgMmQ5OWVkYzRmMTBkZmIwY2ZkYTRhMjZhN2ZjMWMwZDBiNDJlNThjOCByZWxlYXNlMzEtbWFpbnQKKzg1MjgyIDViNTVlOGE5YzEwNzFkMzY0NDk0NDgzODJiY2Y1NWZiOGNiN2ZiY2YgcmVsZWFzZTI3LW1haW50Cis4NTI4NyAwNjZmYjNmYWY2ZDUzOTJmMmVmMzIyMzMwOGQ4ZTMxMGU1NzE4NjRiIHB5M2sKKzg1Mjg4IDg2MjlmN2Q4YjVlMzM3YjBhMDk3YWY4MDc3OTI1Mzc5ZDcwNDY4OTcgcHkzaworODUyODkgZDBjZTNlYjExYjI4NmFiNTQ5OTk5MmQxZWI4YjMyZGYwNWY5MzMyYSBweTNrCis4NTI5MCA0ZGE1NWM0OTM0MzU3MDAxNWE0OTQ4ZjBkYzFlM2E5MzM1Mzc2YjA1IHB5M2sKKzg1MjkxIGI4ZTc4Y2ZjOTRlYmE2YWU0NjI1ZTk3YjI5NTY2NDE4YTIzYTQ4NTIgcHkzaworODUyOTIgMzJkY2NjZGM3M2Y4ZjZmZGU4NWY4YTU4M2NhZWQ0NDk4ZDc4NmQxMSByZWxlYXNlMjctbWFpbnQKKzg1MjkzIDdjMTAzMWQzODIzY2M0ZGI0NDU5Mjg3ZDM4NDUwNDBhYTQxNjhjNzcgcmVsZWFzZTMxLW1haW50Cis4NTI5NSA2MmM1OGRjOTEyZTgxNjU1NGI4NzhjZjc2ZGNmYzFmZGNhYjA2YTdmIHB5M2sKKzg1Mjk2IGYyMzdmZGU5MjVmYTdkZDRlODc3MjJkNzY4MmIzOWFlYjAwYTViYjQgcHkzaworODUyOTcgYzFlOTU0MmI2Yzc0YWE2M2YwOGE2YTQ0ZGE3YzgzYTZjOGM2NjQ5YyBweTNrCis4NTI5OCBlM2FlNWIwMGJhMTVlZWU3YjY1YjQwY2EwOTJiNTQwNTQ5ZDkyZjMxIHB5M2sKKzg1Mjk5IGE2MmM0ZDVjZGY2Yzc0MzgxNzBlYzYyM2NhYzg1ZmVmMjFmMjQzMTEgcHkzaworODUzMDAgYjI0NTdlYjgzNGFlMDlkMjg0NjI4ODM3OWVjYmYzNzE1OTllODUzYyByZWxlYXNlMzEtbWFpbnQKKzg1MzAxIGRmYjM0ZTVmZTA2NjE5YTg1YzJkODhjYjBlMDcxOTc2OWI0OWZjZGQgcmVsZWFzZTI3LW1haW50Cis4NTMwMiAwNzFmMWY3YWY1MjIzYjg4YjIxZWYzYzZhNmQyYzFkYmUxMTcwNDc2IHB5M2sKKzg1MzA0IDM5MDE0ZjBhYmMzMjgyOTViM2I3ODBjNzYxMjc5MDc0OTg3ODVlNWQgcHkzaworODUzMDUgNzg3OWE4ZWM3Zjc5YTkzMjNjY2M1MGFlZjU0MGU4ZmY0ZjY2YmI5MCBweTNrCis4NTMwNiAxZjM5MTlhZjhhNTM2ZDE4ZWVkNDc1NDhjMDViMmU4NjkwMThjMTg0IHB5M2sKKzg1MzA3IDIxNDdjYzE1MjIyNzE1NDExOTAwY2MyNTI1NzUzN2MyZDdiOGUwMGQgcHkzaworODUzMDggOGZkNWQwNjQ2MmU2YjhkNWYxNjE4NjllN2M3Yzc0ZWM5NDUwMTQ0OCBweTNrCis4NTMwOSBlNGJkZDA3Y2UwYzYyNjkzOGNjZDk5MzZmZjIzZjE1OWZlZGExOGQ1IHB5M2sKKzg1MzEwIDFjNDc3NGI0ZTk4YTQ2MmNjZDAwMjBiMDVjZGFhOTAzZDIzNzVlYjcgcHkzaworODUzMTEgNzdhNmEyNDllMjRlOGU2MmVlZjVmMzVmMGViMGIxMmI2Njc0NGYyMSBweTNrCis4NTMxMiBmYTZlNTAyMDhkOTMwOTVhNDhmYjI2YmYzNWZlOGZmNDE1NmI5NTBkIHJlbGVhc2UyNy1tYWludAorODUzMTMgMzlhMGI5NDNlM2UxZjE3ZjEyMmYxZGVjODAxZjA2NWVmZTdkNTI3ZiByZWxlYXNlMzEtbWFpbnQKKzg1MzE0IDg4NGM3MWNkOGRjNjk1YTkyYjE2YzMxMzg3NzkyYWFmYzEyYzNkMWEgcHkzaworODUzMTUgYTE0ZTA3NGZhNDJmYzU1MmMyNDlkYzY3YjEyNzc1MjQ0NGNlYjUzZiBweTNrCis4NTMxNiBjNDExNTUyY2RjN2NkM2JlODlmNjEyMzUxNTcyZjYwMWMzY2I2ZWExIHB5M2sKKzg1MzE3IDhjNTc2MDJlYTFiMzBjMmFhMjFlZGJjN2VkY2ExZTIyZjA4YzdmZDkgcmVsZWFzZTMxLW1haW50Cis4NTMxOCBhY2RiMzIwMDVjMGFjMzBmYWMyODVmODM5NDlhZGE4MTY1Mjk2MWEwIHJlbGVhc2UyNy1tYWludAorODUzMTkgNmEyZjhmNjkyZjA0OGNjODllODI0YzI5ZTgyZGQ0ZWZjMDMwNjI2YyByZWxlYXNlMjctbWFpbnQKKzg1MzIwIGE5OTY0YTRkM2MyOWYwNjFmZWMxOTBlMWRlYzI5MDI0OTE2ZjZkYWMgcmVsZWFzZTI3LW1haW50Cis4NTMyMSA0Yzk4ZWVmZjM3ZTdmM2MzMmVhOTYwMGE3NzY5MWU1YTAzNTBmMGIwIHB5M2sKKzg1MzIyIDFhMDQxZjM2NDkxNmJiM2QzYWIxYjM4NmJhNDA1YzY2OGEwNzFlY2EgcHkzaworODUzMjMgNDk4NzM0NGNlZTIwMDEyOGVhYTI3NWY5MGI4ZDk2OWY3ZGJlNTNiMCBweTNrCis4NTMyNCBiMWZiMDUzOWJmOThiY2I0NDk2NDljMjEwYjgyNDczY2UxMjkwYzA1IHB5M2sKKzg1MzI1IGRiZTAyZTkxNmFlY2NmNGJlODU3NWQ1MDE4YTVmNzE1OGU1ODljNTkgcHkzaworODUzMjYgNTY5M2RlZGU5YTNhMDg0MDJhNzBlZjAxZDExNzhjOWRiZjczZWUyNiBweTNrCis4NTMyNyA5YzAyNjE4M2Q4MmE0ZWE5MDQxODlkYzAyZWY0M2JjMjZiMWI3YThjIHB5M2sKKzg1MzI4IGFlZGRiMTg3ZmNiZWJhNTZlMzdjNDcwMzE4ZjdkNDIzMzEyN2IyN2YgcHkzaworODUzMjkgMGJiYzNiYjAwZmM0ZWJkYmVjN2U0MThjOTg4NDgxNGJmZTc3OWY4YyByZWxlYXNlMzEtbWFpbnQKKzg1MzMwIDUxNTc1YmRjNTQyMDZmZWFmODFhMDg1YTdlMDVkNzQ1OWQwNTNiZTUgcmVsZWFzZTI3LW1haW50Cis4NTMzNSA0MmQ2YzI2MmM5NDY2NzA1N2VjNDI1YmRiMmJiZGJmNmM5ZjMwNTAwIHJlbGVhc2UyNy1tYWludAorODUzMzYgMGM0ODg0ZGI1M2UwNDkwMjVjZmQ1NjZmNWJjNjkyMzg0MGNjMzNjZSBweTNrCis4NTMzNyA2NTQzZmE0YjE0NTgxNTIzNGJiMmI5Zjc3MTZjMTUxYzJhYTdhZWVlIHJlbGVhc2UzMS1tYWludAorODUzMzggN2UwMWQ2OTY0ZDVkN2UwYWIwNzdhY2JlNzIwY2Q2YWFmYjQ1OTcxZiByZWxlYXNlMzEtbWFpbnQKKzg1MzM5IDJkMTY0YjFhZWI3OWI3ZGUzMWNkZTRjMjk1ZWIwMTI3ODI1YmUxZjYgcHkzaworODUzNDAgYTdhYjA0OGM2ODQ1ZDhlOTNjM2FjY2FiYTJmN2QwYzI3MzFmODg4MSBweTNrCis4NTM0MSBlN2M5YTg1ZmU5NjNiNThkZTBmNjg0ZDZhMzlkM2RjMzk1ZDY0NDJlIHBlcC0zODIKKzg1MzQyIGNmMmM1ODNiMmNiZWJmMThiZGFiNDkxMDFmMWU1MzJhZmZiNzNmNjkgcHkzaworODUzNDMgODEwYjU0MGFlNjUwZjc2ZGMwMmJlOGFkMTBmNWRjODVkMjI2OGRlMyByZWxlYXNlMzEtbWFpbnQKKzg1MzQ0IDBmNmZiYTY1YmNkZTdkMjkxNDkwZjgwYmQ2YjUyNjQ3MmI4NjVkMmUgcmVsZWFzZTI3LW1haW50Cis4NTM0NSBiNjI4OTllZDdmYjdkNWIzNzYyZjE4YTZkMDRlNzExZWFmYzIxOWFkIHB5M2sKKzg1MzQ2IGQ0NzVjOTQ1NDZiZWQ2NTRlOTVlODMzZWYzYzQ1ODZlYjE5MmZkMzcgcmVsZWFzZTMxLW1haW50Cis4NTM0NyBmZGViMGRjYjlhM2ZkMGQxOWY0NjNiZGEyYTFmNjY4ZTU2N2I4M2VjIHB5M2sKKzg1MzQ4IDJmYTlkNzM0NWFjN2ZhM2M5NDgxMzYxMTMyZDRhZjQ2NDUxNmVkOTQgcmVsZWFzZTMxLW1haW50Cis4NTM0OSA1MWQzMDRlYzZjMTFiNTk3NGY3NGVkNTg4YTVhODI2MmQ0YjkzMWQ4IHB5M2sKKzg1MzUwIGE5YTQ1NjI0Y2VkZjFkZTMyNDU1Y2QyZTI2ZTg2ODIwOTNhZjhiOTYgcmVsZWFzZTI3LW1haW50Cis4NTM1MSAyMzEzNGUxNjczZDcxYmE5YmQwZjQ0ODcwZTM3YTgxYzZmNmI5OGNhIHJlbGVhc2UzMS1tYWludAorODUzNTIgZWQ1ZTU5OGRhMTUwZWY2YjkwNTZhMDcyNzMwYTRiNDkzYThiMzNiYiBweTNrCis4NTM1MyAyNWQwNzg3MzljMmE0ZWQ4Mzg1ZGQ2YWQxNmU3MWU3Mzk2ZDBiMTQwIHB5M2sKKzg1MzU0IGMwMTllOTc3ZjIyMmMzMGJkMzZlYTMwMDcxMmE4NzUxNTQzNDNhNjIgcHkzaworODUzNTUgZWYyMWY4Yzk5ZmIzNDA1MmNlZDM2YmViZTI4ZjlkNGM1ZGVhNjVlMiBweTNrCis4NTM1NyBkYTAxMmQ5YTJjMjNkMTQ0ZTM5OWQyZTAxYTU1YjhhODNhZDk0NTczIHB5M2sKKzg1MzU4IGFkMTViODkxMDZkZTNiZTA1ZTBmMDM5NmIwNjdhODdjZWRmZTBlMDEgcmVsZWFzZTI3LW1haW50Cis4NTM1OSA0NTE4YjJjMmQ2MTRmMTM4MTdkOGU4NzVmOTUwMzMyY2E1YTcxOGVmIHB5M2sKKzg1MzYwIGNkYzk1ZmRkZGI3YjJiYTlkYWEwMzI3Y2FhNWZlOWMxZjhiY2YyZGUgcmVsZWFzZTI3LW1haW50Cis4NTM2MSA1ZWRlMTVlMTI0NTgxNjk5MDkzZWNjNDUyMDZmYTBiN2Y1ZDNmMDBhIHJlbGVhc2UyNy1tYWludAorODUzNjEgZDUwYmZiN2FiNTdjOTI2YmYwN2ZhYmI5OGNiNzhhYWMwNjA4MzhiNyBweTNrCis4NTM2MiA0NzU4MzA0MjRjMWU4MTg2MDU5OTQ1M2IzMDlhOTc0ZTZlM2ZjYWM2IHB5M2stdHRrLWRlYnVnLW9uLXhwNQorODUzNjMgNWFhZWZhOTc1MmFjYjQ5YTgwN2FkY2VjYTM1ZDIwODViYTM0MTM2NiBweTNrLXR0ay1kZWJ1Zy1vbi14cDUKKzg1MzY0IDYyYzE0ZWQ2YjhhMGE2MjRhOWEwNTliOGEwNDRkYTdiOGY1YWM1N2QgaXNzdWU5MDAzCis4NTM2NSAyNjc2YWY2NTUxNGQ0ZDk3YTlmYTJiOGI3NDQyODMxMTBmZmY1ODNlIGlzc3VlOTAwMworODUzNjYgZDQ5MDlhMDU2ZDRlNzgwM2JlOGEwOTIxZTE4MTdhYjJlNWQ4OWYwMyByZWxlYXNlMjctbWFpbnQKKzg1MzY3IDQxYTlmOTUxZWJlYTVlMWFjNmNlZTYzMTFkZmNkNzM0NTg4NTcyNzAgaXNzdWU5MDAzCis4NTM2OCAwYWRiNjQ0MDU4MWVlMWQ1YTZmM2E2ZWE0NDFmY2M1ZTk2NzljZDY3IGlzc3VlOTQzNworODUzNjkgZjdmNzA1MjkzMTBmODRiOTEzYzkyYzgxNDZkZmZlYWY3YzdiZWQzMCBpc3N1ZTk0MzcKKzg1MzcwIDlkNmQ4MzA2M2VjMjJiZGM0MjNkNDExYWVjMDAwYjM4ZDkzZmNlYzYgcHkzaworODUzNzEgY2JkZTgxZWY0YWY3YzAyZWM4NGU4YTg4YzBkMmUzMjQxYWVkNGNjZSBweTNrCis4NTM3MiAxOGI3MjU5Y2Q5MmQ4MzhlZjY5ZmRjZGE3NjgzN2IzYzhkNWZlNmQ1IHB5M2sKKzg1MzczIDk3ZjgwZDBhMWQ1NjM4YTNhMWYzZTcyZmZhNDRmMDZlNTQ0MDdlYjggcGVwLTM4MgorODUzNzQgNjY5YzM3Mjg3NTBiMTc1NmZiZGI4YTI5ZWFkMTYyYmMzOWUxYzAxMyBwZXAtMzgyCis4NTM3NSA1ZmExMjVhZTA3YTY0MTcyMzhhMGY1ZDc0MDFlY2M4YWUxNzFmYTQyIHB5M2sKKzg1Mzc2IGYzMjAwYmU0ZWFhMDk4NGQ4MTMzYjUzYTdlYTBmMDY4YzMyNDE1YmEgcmVsZWFzZTMxLW1haW50Cis4NTM3NyBmYWE0ZTIyYWFiYTdlNGIzNmVmOTNmYTBjZTYxYjBmMGRjYTMzMTNiIHJlbGVhc2UyNy1tYWludAorODUzNzggOGNmMWFmZjE4NTljNjI2M2E3NWEwMGVlZmM0ODEyYjVmOGVhYWZiMCBwZXAtMzgyCis4NTM3OSA2ZDkxOGQ5MTBhOTY4N2Y5OGU5OGU0YjIzOTQ3OTdjYTNjZjY3MTdiIHBlcC0zODIKKzg1MzgyIGQyNDkyOGMyODAwMTkxOGI0ZGM2ZWMzZTEzMWVjOTI1ZTY1ZjAxYTQgcHkzaworODUzODMgOWM3MjNhZmE0NGRhYmI0MjE4MTlhN2M3NDQyZTY4ZjRjMjhkZTRiZCBweTNrCis4NTM4NCA0NjEzZTE0NDkwMDA2ODI0M2ZjMGQ4MjhlZGI3YzFlMTE5NzYzY2NkIHB5M2sKKzg1Mzg1IDllMTQ3YzM0OTEyNmM2ZTgxZDYxNGM1MGI3OTZiM2RmNzQwYWRkNmEgcHkzaworODUzODYgZGVkNjFlMjZiODQxNGY0N2FkZDZjYTc0OTlhMWY0NDM2OWQ1ZDcwNyBweTNrCis4NTM4NyBhODE3MjA1ZDI1NGE5Zjc5ZmU3ZmRlYzIzZTNjMmViNDVhYTk2NjZjIHB5M2sKKzg1Mzg5IDM5YjM4Y2ExYWMwNGJkMWI1MWFjYjFlOTVmMWI1YmZkMTRkM2VjODggcHkzaworODUzOTAgMmZmYmZiYzBkM2NiMTZjNjE3ZTJjODlhNjQ2Yzk0NmFmMWYwZTM5ZSByZWxlYXNlMjctbWFpbnQKKzg1MzkxIDYxNzMxZWM5YTA0ODFlNTcxNjA2ODAxOTQ2MWYzZWI5OTdhZjExYmQgcmVsZWFzZTMxLW1haW50Cis4NTM5MiBlMmFhM2IxZDA4YmNiYzEwYWY0M2RiMGYyY2UzMzZlMGIyODdhOTU1IHB5M2sKKzg1MzkzIDc5MDk0MzY0MDhlMmVlMDhjNGExYjEyYTc5YTZiMjBmYjI4YTc2MjYgcmVsZWFzZTI3LW1haW50Cis4NTM5NCAzZThkMjg4ODZhZDY2MGQ5YzM5NGIxNDJmMmFhOGZiOGVhYWIzM2U2IHJlbGVhc2UzMS1tYWludAorODUzOTUgZjJmNTJiNDBjMWYyOGQyODA0ZWE0NjBlMGMxNGYyY2Y3ZGEwOGU1YiBweTNrCis4NTM5NiBkN2E3MWYxZDFlMzQxYzJhOWNkMWMzMmQ0NWE5ZTZhYjM3MTA3ZjBiIHJlbGVhc2UzMS1tYWludAorODUzOTcgMjE5NTdiM2IwYWNhMDkzMzQxYzA2MjYyNWI1M2U1NGViNWM3NzNlYyByZWxlYXNlMjctbWFpbnQKKzg1Mzk4IDc1YmViNjc2MmUzYjAyMzY3OWQyMGZiNmRlZTliM2QxODdkM2MyNDQgcHkzaworODUzOTkgYzA5MDhjZWJmMTg0MTBmYzcwZDhjZTNkOTJhZTE2NGY0OGE3NDU3MyByZWxlYXNlMjctbWFpbnQKKzg1NDAwIGQwZjYwYmViMjhmMjNmMjMwNDc5YjJkYTIzZmU5ODIzNTI1YTU3ZWQgcHkzaworODU0MDEgZWFkNTM2NGM0YTU5YTczM2E0YWUwZGQyNmJhNmJmMjUyMDZiODczOSBweTNrCis4NTQwMiBmMjljZTBjYzFkNGNlNmI2Y2QwZGUyMGEzMDU5YTJjMTBiNDdhNzJiIHB5M2sKKzg1NDAzIDc1MjA2ZGY4ZTU4YzYwMjg1MGQwZWY5ZmQ2YzFiNjY4YmExNDZiMTcgcHkzaworODU0MDQgMmNlNjQ5NjBkNDkwZGI2ZGZhNDczYmYzZDZkNWMwZDg1ZmY3MTVhNiBweTNrCis4NTQwNSAyMGY0NjNhNDU4NGQ3YzQyZTAzODZhOGYxMDA2YTM4ZWU5OTAzZmFjIHJlbGVhc2UyNy1tYWludAorODU0MDYgMjQ2ZDNkZmNlN2IxMDNkMGQ1N2YyNGQxOWVlMTBlOTA1NmI3YzlmYSByZWxlYXNlMzEtbWFpbnQKKzg1NDA3IDIzZWMwYmUwN2UyMGVkZGY4OTljNGM1MTQ3N2VjODM2NzQ1YjBhMzcgcHkzaworODU0MDggMTIzMjdiOWQzMzI1MTk4MWE1ODEzMWE2MDFlNTI1ODlhYjA2ZWYwYSBweTNrCis4NTQwOSBjYjZlOWIwM2QwYzMyMGM4NmIzZWQ2ZmQ5MTdmM2IxMWVmY2ZhNTA1IHB5M2sKKzg1NDEwIGExNTY3ODkzNzgzZjIzMmRlMGEzNjhiZjY1ZjliN2VmYjIxNjYyMzcgcHkzaworODU0MTEgYmY1Y2ZlOWEwYmI1ZTUxZTgyOTUxM2I2NDU3NDEwZDQ1MWUxNDY2ZSBweTNrCis4NTQxMiBkMDJkNmJiMDI1Mzg1MjUzOTZmYjI3MDBjYTMxNjgyY2E5OWFlYTc1IHB5M2sKKzg1NDEzIGU1MTdjM2Y1NjA5MTg0YjFhMzdlZGY0ODQxNTkwZmI0NThmNWE5MjIgcHkzaworODU0MTQgNWVmNzZiYzE3MWFkNmQ3ZDg4NGJiZTRhN2FlZjVjNDk3MDMxYWFhMSBweTNrCis4NTQxNSAzNzIxMzQzOGUyMWZhZmZmZTcxY2Y3MGVhYjdkNzIxZTY5NDVkOTBkIHB5M2sKKzg1NDE2IDQwZWNiNGQwMGYyNWFiOWIxNDZlYmU5MmUwMjE1MjlkYTg2NjIwYzkgcGVwLTM4MgorODU0MTcgYzQ4YzA5ZTY5M2U2YzkxOGU0OGQyMTkxZGVjYzVjMGEwOTA2OTEzNyBweTNrCis4NTQxOCBmYTkwNTcwMDc3NTU1MWY0NzUwNjk0NjQ1NjhjOWZmNWEyN2QwMTdlIHB5M2sKKzg1NDE5IDBkMTZkNTBjNTdhMGYyMzQyY2UyODU3YWEwMDgwODVkMGFhYmU0OWEgcHkzaworODU0MjAgMTg3NWJmZWQ1Njg5YjlkMDI5MjliNjhkZmE5ZmE4YmNhZjkyMTE1MSBweTNrCis4NTQyMSAzNjE5YzEyMTQwMDdkM2Q1ZTNkMDdkMjM1N2Y2N2IyMmFkMjQzMmY3IHJlbGVhc2UzMS1tYWludAorODU0MjIgZWVhZWRjYmUyODFkNTg0NGZiMzVhM2QwMzRhMzAzMGNlNGY4ZWYyMiBweTNrCis4NTQyMyA2ODk5YTljYTVmMzUzNWRiMzQ5MmFiZGEwMWY2YzQ4ZjE1ODNkZTc0IHB5M2sKKzg1NDI0IDhiMTkyNTAyYTRhOWFkNzg4MzkwNjk2Y2RhMzdjMjZmMTNjNmI3ODggcmVsZWFzZTMxLW1haW50Cis4NTQyNSA2MTBjMjViNWNmYTI4OWJmNzU0Njc4YjZkMzQ2ZmM2NTA5M2Y5YjI2IHJlbGVhc2UyNy1tYWludAorODU0MjYgYTFlZGRjNjRiNzUwNDljOTc4ODEwNWE5M2UxZTM3NDdiYWU1OTk1MCBwZXAtMDM4NAorODU0MjkgMTk2MGY1OGFmNzg1ZDRhNzBhZGJmYzA0MTkyZTc4MmI4MTZiZjE5NSBweTNrCis4NTQzMCBhNzVmZDMxZGRhYmJlZWNiMDM4YWVjNmJmNGI0YjVjNzFiZDc2YzliIHB5M2sKKzg1NDMxIDAwZDEzYjJmODFhM2MzMWExMjM4ODVmZmYwYmJiNzg0NmJjYTY1YjEgcmVsZWFzZTMxLW1haW50Cis4NTQzMiA2MWMzNTQ3MmE0ZjgxYTQyMjc3NzFjMWY4MGRiNzBhODNlMTVhYzY2IHB5M2sKKzg1NDMzIDY0NzRhZGRkMjgzOGI3Njk3N2ZkYjg1YmZjNjIzNzAwY2IzNDdiM2UgcmVsZWFzZTI3LW1haW50Cis4NTQzNCBmMmY3YjcwZmM1ZWJlNGY5MGFhNDM1MDg0YjkxZmM5NGUxZDdjNjMxIHJlbGVhc2UyNy1tYWludAorODU0MzUgMzMzNWVkY2U0OGEzNTQ2NDliMmE4YThiYzhkY2NiYmFhNzIwNTE1NSBweTNrCis4NTQzNiBhNGE2ZDgyM2ZmODk1MTY2MjJmMTUyM2U0ZDE5NmE5OTkwYmNkZDJkIHB5M2sKKzg1NDM3IDQ3NTU3NDQ3MjRmMjBiYWQ0Nzc5NmI1Y2Q3NjdmYTA2NzY5ZWIxNjAgcmVsZWFzZTMxLW1haW50Cis4NTQzOCAxZjIyNWQ2Njk0MWE5MjMwMjY1MjIxYzgwMjAzNmVhODQxYzJiN2I1IHJlbGVhc2UzMS1tYWludAorODU0MzkgZTc2ZjU1NDE1OGE4NWJlYTNhZjUxZDlkOGY3NzZlNzg0OTY4OWJkZiByZWxlYXNlMjctbWFpbnQKKzg1NDQwIGU5ZWEwOTc4N2EzNWNmOTNjZjUzNWY5NjY0OWRmYWMxMjZiMGVmZDQgcHkzaworODU0NDEgNGM1NzA2YmMyZjQzMDUxZmM2OGJmNjQyZTAxN2ExZDRiZjZkMGVlMSBweTNrCis4NTQ0MiA0OWRmNzc4ODg5ZTZmYWNjZTM5NmUwZDFiY2NjZTY3MjlhNTlhMTM4IHB5M2sKKzg1NDQzIGE0NjcxMWRlOTI5MTIwNzJiZDE4NzhjYWNkNzFiZmRhYWExNTVkMDYgcHkzaworODU0NDQgNzhhMTJiODI5YTlhYTllNzdjNGJhZjljMzQyMDE2YTI1ZDYxNmJkNiBweTNrCis4NTQ0NSAxZTcyYWJmMDczYzU2ZjVlMzEwMzEyMDJlYmQ4M2UzNmM4NDYwMzM4IHJlbGVhc2UzMS1tYWludAorODU0NDYgZWJlMTRjY2JhMWI3YjUxYTg0YjE4YjlhMDY5NDI3YzVmOGNjMmZiYSByZWxlYXNlMjctbWFpbnQKKzg1NDQ3IDZmZDQ5ZDA1MjEzNDVkYWQxZmM4MmU5NjM1N2JhYzVjYTc2NTNlNDUgcmVsZWFzZTI3LW1haW50Cis4NTQ0OCBmYTI3ZGQxMjk4ZmU1Nzc2NTA4NzJkY2QxNjRmNmVhYTE0MDJkNGNjIHJlbGVhc2UyNy1tYWludAorODU0NDkgMmYzZTBlZWNjNzYyNzdiZjUzYzE3NzBhNDYyNzg5ZWUwZDU2ZmQ5YyByZWxlYXNlMjctbWFpbnQKKzg1NDUwIGNjYzQyNGM5NjY0MjZiZDE1MjIyMDJmMjA5NGYyOTJmZWIwYTQ5NGUgcHkzaworODU0NTEgYjVjZTA2YmJiMDZmZTIxMzAzMTA3MjkyNDVlMzVkYzk2MjE5ZjBkMSBweTNrCis4NTQ1MiBlYTJmZTk1ODFjMmQ4ZjBhMjAzN2ZhMWFiMGY4NDkzMjEyMmZlNmU1IHB5M2sKKzg1NDUzIDMwYjNkN2M1MjUzZDU4OGViNTA3MDY5MDVlZTkxOTIyOTRlZDI3NjYgcHkzaworODU0NTQgMzYxMWVhNDJiNzkyZGMxM2M1NTQ4Yzk2OGI1ZDM3OGZlMjk5MzU5ZCBweTNrCis4NTQ1NSBiYTY1ODFlY2I2ZjFlZTdhNDgzMjM1NGI3ODg5YjBkMmY5NDJkODZjIHB5M2sKKzg1NDU2IGZkMDQ0Y2RhOTdkODM3MGZjZTMzYTEzOTA4ZWJjMDYwYjgwZjkxNTggcHkzaworODU0NTcgNmFiMGY5MjE5NjYwYjg4MmVmZDRkZjY0YzkzMTYxNWM4ZjU4MWJjYiBweTNrCis4NTQ1OCBiZWFlNzZlZDVlYmZlM2Y4ZTNjMDZiYzg2NmFkMGU2Y2RmOWI0YmVkIHB5M2sKKzg1NDU5IDdkNzk2ODgxNTZkYjVmZGJjOTAwZDhjNzcwNzJlNjE3YjQ5MWUyNDcgcHkzaworODU0NjAgZGMyMDBjZjJmNTY1OGFjMTA1ZGVmNTJkNjkzYWU3NzUyZDk2NWQ5MCBweTNrCis4NTQ2MSAyZjE3OWEzY2IyMDY2MGEzMmNjZjgxNWU3ZjQ0YjE1Y2M1MzFkYTNlIHB5M2sKKzg1NDYyIDgyY2RlOGI3MzcyODIzMTkxYzk5OGQ0MDBjNDdmYmEyM2VkN2Y3ZDEgcHkzaworODU0NjMgNGE4ZTBkODk3NTViNjRjMmU5MDM1MzJlYmZiNjExOWI1ZWMwNWQ2YSBweTNrCis4NTQ2NCA2N2EyMTg1NzBmNGE0ZTE2YjA0NWEzNTgzNjgxYzEwNjFhMGVlYTNkIHB5M2sKKzg1NDY1IDY2MGFmZGFlYjJkNmU2MDcyM2VhZGNiNjU3NGZhMDVhYWFhOGJkZmYgcHkzaworODU0NjYgMjg1M2NhZDljYmMwMjQzMDBlMDU3YjAwNGFhNTZkODQ4ODcwYWUxNyBweTNrCis4NTQ2NyBlMmM5OGM2MGRkNjRkMGE1ZDIxMDRkNzNmY2I1ODZhMjQxMGUxNzQzIHB5M2sKKzg1NDY4IGI2NTIwNjEyOWI1Yzk0YzY4NmQxNDc1YTkzMDkxMjg4ZGRjNTQ0YjcgcHkzaworODU0NjkgOTk1YzMzZTIyNjNiMWM5MTBhYWI0MWFmNGYxYTFlYmFmN2NiODg3OSBweTNrCis4NTQ3MCBhNWVlYWQxNDFjYjQ2MzU2ZjVlYmNkZDlkMmU0Y2I1MTg4ODNhODkzIHJlbGVhc2UyNy1tYWludAorODU0NzEgNmE4NDg5NTU0MDE5ODJjMjZkNmZjZGFhOTU3MjI3MzY2NGIzZmE4YiByZWxlYXNlMjctbWFpbnQKKzg1NDcyIDcxZTc2ZDAzZmM2N2YyNTA3NzRhY2JmYWZmYmVkZjRjNDQ0ZjZhZjQgcHkzaworODU0NzMgZDdmOTA3MzU3ZGE3ZTk1MGNiY2RjNDE5ODdjMDU4ZjFiN2NjNjlmYiByZWxlYXNlMzEtbWFpbnQKKzg1NDc0IDgxM2I1MWE2YTQxNzk5N2Q1NWMxODU3OTRjZmY0YzFlYWZlMmE5NGMgcmVsZWFzZTI3LW1haW50Cis4NTQ3NSA5ODJjOGVjNzNhZTM3ZTBlZDZkNTQ5NzNlYmEzZjcwYmY2MzllYzhjIHB5M2sKKzg1NDc2IDNkOWVmMDk4ZGFmMmUzNmZjYmM2ZDIyZjdhOTU2YWI2NzNiMDEzMGQgcHkzaworODU0NzcgYTI3ZmMwZmYzNjc4YjAwOTY2MzQwNzY1MGYyOWVhNGYyMTczNGYwMSBweTNrCis4NTQ3OSAwOGE5YzA0NjAwNGRkMTFhOTRhZjlmMWVjMzEyMmZhZDQyOGRiNmZlIHJlbGVhc2UyNy1tYWludAorODU0ODAgMTI0NDJhYzNmN2RkYmJhM2NiZTk4MDRhOTMyODkwNTRlOWJkZWM0NCBweTNrCis4NTQ4MSAxOTBmMjQ3ZWRiOWVlYmNmMzBkZmZiMmFmZDE0OTk3ZWViMGJjNzFiIHB5M2sKKzg1NDgyIGFkNDBjMGEzZTIyMTU2YTFlM2M1Y2NmNTJkODhkOGJlYjU2MDNhZDIgcHkzaworODU0ODMgYjgzZjBhNjY3ZTdjZWIyZWVkMWMwZDM2ZDhhNGIwNzRkYTgzNmY5NSByZWxlYXNlMzEtbWFpbnQKKzg1NDg0IDA3YjZiYjc2ZWU0MzkyM2M1NTZmZDAwOTcxNWYwYzNhNTVkNTljM2YgcmVsZWFzZTI3LW1haW50Cis4NTQ4NSAwNzhlMmU0N2U1MmIwNmFmZTEyZDE4MTk5OTllZWZkYTIxNjdlNjMyIHB5M2sKKzg1NDg2IGI4ODZiZjYwMjUxM2I0ZjdlOTdlMTU3MTVmZjQwM2Q1Y2I4N2M3ZTcgcHkzaworODU0ODcgOTBjMmI2NTQ5MGM3NTMyMzE2YWQwZDcxNWQzYTY3MzY5YzUzYzE0NCBweTNrCis4NTQ4OCA4MGQzYTM3NDk5YjFiMmIyMDlhNmVkODU3OWY2NzZiMDU1NDc0ZTM3IHJlbGVhc2UzMS1tYWludAorODU0ODkgMDY3ZThiMjAwMGRkMDU3OTJlZjA0M2E2MDY3NmU1ZjVmNWNlMjNiMyBweTNrCis4NTQ5MCAzZTc5MTM0YzY1MzU3YTc2MmRhMjVmYWUxMDZlNTFlZjNhYTQwMGViIHB5M2sKKzg1NDkxIDFhNjAxM2VlOTc0YjA4NzdiOTRhMTMzYzYwYmQzMjkyYzQ3OGNjN2QgcmVsZWFzZTMxLW1haW50Cis4NTQ5MiAyNTNhMjY4Nzg1ODU3NDhmYmU4YmY2NTgxMjcwYWVjODY0NzY2ODhlIHB5M2sKKzg1NDkzIGI3ZWNkOTQ0YjdjZWIyYWQxYzdmY2JlMTA4MmEyYmE3YjBiZmIyOTggcmVsZWFzZTMxLW1haW50Cis4NTQ5NCBkNTJkNWQzNTlkYjMxMDAxMGVmNzVkNWFiNWE3ZjI1ZDViZWUyODI2IHJlbGVhc2UyNy1tYWludAorODU0OTUgMDUyYzE5OWFlMTlhOWIwOWI4MzI0OWQ2MmExNzUyOTQ2YTBiYmFmNiBweTNrCis4NTQ5NiBmM2RhOGNkNzQxMTM3OGI2ZDA5ZDUwNjg4NTA3YjE5Yzg1MzBkMmUwIHJlbGVhc2UyNy1tYWludAorODU0OTcgNDY5NTZhMjVjMjY0MWJmZTdiYzhjNWFjM2VjNTZiMTg4OTk4ODcwNiBweTNrCis4NTQ5OCA2Mjk2NjMyYWQyY2JlNjVmNzAzMWJiZTFjZTZmZjFjMjMzMjJiYWZjIHJlbGVhc2UzMS1tYWludAorODU0OTkgNDI2OTI2N2U2ZTU3ZGEyNDMyNWRkNzZiMzYyMDM0MWFhZmIyOTg0OCByZWxlYXNlMjctbWFpbnQKKzg1NTAwIDZjZjIyM2VjYWE2ZjBkYzUzMjdjNWMxOTI2ZTMxNWY4NzE2MDQxNzIgcHkzaworODU1MDEgY2ViMTI3MDNjNmRiYTMzMDI2MTVlYzBlZTE2ZDY3NzY2MjU4Yjk4NCByZWxlYXNlMjctbWFpbnQKKzg1NTAyIDI3YzA1MTI0NzIzM2E2ZTI0YjM2YjE3NjNlNTFiNjE0Y2RhYmZlMjUgcHkzaworODU1MDMgNGQ1ZjBjNDQ4N2ViOWZmYjM2NWU5MzMyZDc1YTRkZWQzM2JiYzU5NiBweTNrCis4NTUwNCAxNzgyZGE0NDBmYjFlNDQ2Zjc3OGRkN2U0MzI1YWI1Yzg2Njk5OWE3IHJlbGVhc2UzMS1tYWludAorODU1MDUgZmVhOGYyMWIxOTlkNzRkN2I0MDhkYTk1ZTdkNTM1YTkwZjA2YjI1NyByZWxlYXNlMjctbWFpbnQKKzg1NTA5IDdkMWU0NTNiMTIwYjZlNjJiOWE1MDYxYWFmNjI0YmNjYTg3OTBmY2EgcmVsZWFzZTI3LW1haW50Cis4NTUxMCA4OWE4YmY1MzI1Y2QxNWZlYTllMzBlZThmYTkzNzhlODNmNjc0ZGU1IHB5M2sKKzg1NTExIDVlMTU3NjA1MDc0OWJlYmExOGIxYzI5Y2EzODQ3ZTU4NDllMmQ4ZmUgcmVsZWFzZTMxLW1haW50Cis4NTUxMiAxNzgwNjg0YWUzYWQ5N2MwZmJlNmNhM2FhYzcxZjA3OTE2YjA1NDEwIHB5M2sKKzg1NTEzIGMzZjJjNWQzNWFmYWZjZDg5Zjc4MGVkZjEwZDgzYTk5MDI1YTQ0MzcgcmVsZWFzZTMxLW1haW50Cis4NTUxNCBlNTEyMzcyZjc0OTQ2ZDZmOGEzYjYwNTg2ODBiZjMyNTExYTZlYTY4IHB5M2sKKzg1NTE1IGNjMWQ4YTJkYjM0ODZlNDEyODM3YTA5Yjk1ZDJjOTA0YTQ0MDBiYTYgcHkzaworODU1MTYgZjYzZDc0NzYyMmJkNTE3MzQ3ZjFlYWZlMDEyYTEyYWI5ZWYyYTU3MCBweTNrCis4NTUxNyA0NTNmZDgxODJjMmY5NmU5ZTBlMTdjM2YzM2NkZjcyZDUwMmVhMmJmIHB5M2sKKzg1NTE4IGJiMzAzOTNkMWVhMTg5YWQzY2I2N2I5NTRlN2Y3Mzc4MDIzODlmNzMgcHkzaworODU1MTkgMTU3NzUxY2M0Y2Q1MTg4MzcwMGU5OTM2ZjIyOTdjOWNkNmI1MmRlZiBweTNrCis4NTUyMCBlNzczYTFmMjNkNDMzOTNlN2JiZjdhMzJmNzRiNDE1MDc5YmY2MDMxIHB5M2sKKzg1NTIxIDljNzNmZTNmNDdlMjY5MDYwOTkzZDM1YTc3YzNjNTA0YzliODRkOTYgcHkzaworODU1MjIgNmEzNjViOWEyMmJhOWMzYjAxZGU1MDg3YjA2ZDJhMmE1NWExMTgzZiBweTNrCis4NTUyMyA1MjAyNWMzNTQxZDg4OGZkMTliMDQ3NWQ0YmU5MmQxYWRmZDBiNTU3IHB5M2sKKzg1NTI0IDFmNWEyOGJhNzQ3N2QwMmEzYjgxNTIwMjlhMjk5MWE4Y2U2MDNjOWYgcHkzaworODU1MjUgODhiZGVmNTM2MGFmMDNhY2VmZmViN2NmMTc4NTlhOTBlYzcwM2E3OSBweTNrCis4NTUyNiAzMjBkMGZhMjE2NThkMWRmNzQxODk2YjQ3MzUyMzYwNWIxOTYxOTk0IHB5M2sKKzg1NTI3IDRlYmMwMzA4ZjRiMTJlZTNmOGI1OGQ5YmM4YWVkZDllNmM2YTM3NGMgcHkzaworODU1MjggMGI1MGQ4NzA2MTM0NDYzNGE3MTEzMjkyZmZlMzkxMjMwZmE3NGIxMSBweTNrCis4NTUyOSA4MGZlMDY2YzEzNWE5MDQ3NjgxYjVlNDcxYzM1NDUzZjFiOGU1ODczIHJlbGVhc2UyNy1tYWludAorODU1MzAgNDE4NjhjYTUyNzQ0YzhlZDJmM2E3ZTBkNDU0Zjc0NjA3MmJlYTE0MSBweTNrCis4NTUzMSA1NjMzYWY1OTAwNTcwMmI5NTMxMDA1NmQxYTVlNGZhNGJmZTYxODdmIHB5M2sKKzg1NTMyIDhmNmFiYTIzZmIyYWJjNzViZTllYjJjMGNjZTk0YmYxMmRkZDU4YmMgcHkzaworODU1MzMgMTA0MzU4YjVkNGQxNDQ2ZGJjMDVhYmUwZWZiYzhjZGIyM2UxNTQwOCBweTNrCis4NTUzNCBkYzI1YzUwYTdjMTE2MDY4ODQ5MTJkMDJiNTAxMTM2YmQwODAwNWRkIHB5M2sKKzg1NTM1IDZiODMxNDM3NmRlMmVlYjRlNDU2ZWUwNzQ1Zjg1ZTJmMTYxMDVmZmQgcHkzaworODU1MzYgOTJlYTU2YjUyZDhmNzMxNGJjNTdhYTk3YzE4NTJhODE4ZmQzMDI5OCBweTNrCis4NTUzNyA5NzEyNTg2ZmE0MmY1ZjlmZWEwZTM3MTA1NTdlODFjOGI4MzhkN2JlIHB5M2sKKzg1NTM4IGFjODY4MDY4NWZkZWFhM2U3N2Y4MDg1ZGY1NDY3NTg1M2VlNjY4YzYgcHkzaworODU1MzkgZDgzODRmY2UzYzczYjlkYWFmNDZhN2JjZDUxNTBmMThlMGY5NmVkMSBweTNrCis4NTU0MCA3OGQ1Mzg1OTM5NWE0NDYyZTczZjZlYzY3MzVjNTYzMTM1MmI1MWQ4IHB5M2sKKzg1NTQxIGYzM2JiODUwNzg5ZWE4NTJlZDM4NjY0NTU0NmE4ZGQyNTk4NDkzNDUgcHkzaworODU1NDIgN2RlMzY1YzE5ODZiYWJhYjZkYzk4ZWU3YjE3N2YzNGUyNjQ0ZDE3YiBweTNrCis4NTU0MyA2ZjRjZjczMDMyZmM5YjhmYzg0NmIyYWEyYjQxNmEyNzE2MmUzMmQ2IHB5M2sKKzg1NTQ0IDkzNDdiMGE4NWNhZjU4NmFjMGVkMTZlZDM4YzM1ZjU5YTFhMTg4MGUgcmVsZWFzZTI3LW1haW50Cis4NTU0NSBlZWM0OTk4NDdkZjdiYjlkODM4NGJiYWRiODQyYTNkMTg4NjYzMzdhIHJlbGVhc2UyNy1tYWludAorODU1NDYgYjcxYWFmNGU3ZDhkOTAxYmFmZjA2Y2NkMTU1NTkxYWRjYWIzZjUyZCBweTNrCis4NTU0NyAwZTJjYmMzMWZjOTI1ZTI5NjIyZTg0ZmJmZjM0MjRjODA2YmEwMGE5IHB5M2sKKzg1NTQ4IDM5NGMwMGI0YzkxOTRjZmQ3MjZlYTMyYjMxMjgyMWY4NzQ2ZjkzMGYgcHkzaworODU1NDkgODQ0ZWQ2ZGRkYzAzMWVmZTk2NGUzNWRjYmI4ZDUyOWMyMGZmYTRmZSBweTNrCis4NTU1MCAzNDhmMzM2OTY0MDIxNTUwMTQ5OWM3ZjJlYTgwNTlhZjkxZjk3MGMyIHB5M2sKKzg1NTUyIDkwMDUyODg5Y2UzZGUzM2MxYWUwYTA5YjRkMDRmYjNjMTJiY2U4NmEgcHkzaworODU1NTMgMjkyYjFkZjAxYmFkODdjN2MzZDcxNzVmNmE2NzgzMWY3NDgxOWJjYSBweTNrCis4NTU1NCAzYzQyMjViZjg3YjQxMjY2MzQ1Njg4M2FiOGQ1ZTNkNWY2ZTc4ZmY0IHB5M2sKKzg1NTU1IDJiMTdiZTYyYzc0ZmNjODAzNTIzMTQxNzYwMGRhZjc0ZjkyMzdmNWMgcHkzaworODU1NTYgZDQzOTBiNmJmN2VjOGUxNmYyZTQxMGUzOTU1NzEyZjA2MWQ1NzMyMiByZWxlYXNlMjctbWFpbnQKKzg1NTU3IGRkZjJlYWQyNmFhYTQ1ZWE2OWUwOGYxMWYxMzFmMTkzZTVjZDczYzggcmVsZWFzZTMxLW1haW50Cis4NTU1OCA0ZDZjNjNjNjU1NTBjMjM2OTk0ODI2ODJjNDc0NmFiNjdjYmVjZGFiIHJlbGVhc2UyNy1tYWludAorODU1NTkgOTMyZjk3YmZiZGMwYzUwNDlmZWFmYzgyMWE4YWIxNDZkMTQxN2QxMiBweTNrCis4NTU2MCBmY2RjMmZhZTUwYzA4MWFjOWI3MDNkY2FjOTU3ZjlmYjAzMzRkMGVkIHB5M2sKKzg1NTYxIGY5OGMzZTJmZDA1NTAzMzEyNDUyZTEwYThiNWM3NzYwNTFjM2IzODEgcHkzaworODU1NjIgZmQ1YzgzZjc2NDQ3NTBiZDI0YWFmZjBjYzJiZTg4NzZiMzE3OTNlYiBweTNrCis4NTU2MyAzNjE4ZDlkNzkwMmQzY2I0NDhiMjUxN2IwZmQ0ODBkNDA4YWIxNWZmIHJlbGVhc2UzMS1tYWludAorODU1NjQgMGJkMGU4N2E2ODUxNTQyMjQ2ZGE1YTdlM2ZlNTlmNzM1ZDI5MjY1OCByZWxlYXNlMjctbWFpbnQKKzg1NTY1IGY5MTg0ZTdjZDI1Y2UxMzA3NTIwNGRhNzhkZjQzYjgxNzJmNzZmYzggcHkzaworODU1NjYgZGQwODY3YmQ5NTU3OTBkOGM4NjM1OTY3MTRkM2Q0ZjJjOTU4MjMwNSBweTNrCis4NTU2NyAwOWVmZmZlNzAwMzA3MDE4ZWZlMWIxNjdlMGVmNmQzZmY0YzY3ZTBkIHB5M2sKKzg1NTY4IDc2Yzg4OGZkMjM4MGRmMjZiODAzMjZmMWY2NjViOTg5Mjk1YjExM2YgcHkzaworODU1NjkgNTVlZDVjNTI0NDI4Y2EyMjg2NGRiNjRkOGIwNWY2NTQ2OGI1ZGI1ZCBweTNrCis4NTU3MCA5ZWQ2OGRkNmI3MWZmNzIzMzliN2JhOTdjYTVkMjQ3NDc1ZTNlZTljIHB5M2sKKzg1NTcxIDYwMzk4NDUwOTM0MzAyYzEwNmViOTM0Mjk5YThiNDY1YzEyNWI1NDAgcHkzaworODU1NzIgNjg2YTJhOTFmODI2MDgwZWU4ZTVjMzJiOWJmN2YwOTU1ZjI3NmVhZCBweTNrCis4NTU3MyAzZjJlMTQ1YzRhMDJlNjYyMGZjYzg1NTA2Y2Q2MmZkZjI1NDM1YWQzIHB5M2sKKzg1NTc0IDUxODFjM2JmODk3MGUxN2JlMTNkMjEzNDQ2YTEwYmI2M2M4ZTQ2ZGEgcmVsZWFzZTI3LW1haW50Cis4NTU3NSBhNDQyZWNiNzA4NDFmMmRkN2M1NWEwOTU0NzU5YzZjNjRmYTVmNjM2IHJlbGVhc2UyNy1tYWludAorODU1NzYgMGJhNTBkNDg1ZjA3MjY4YTM0N2U1MDVhNmZhZDdjZDNkMmE1YmY4ZSBweTNrCis4NTU3NyBiNGJkZDQyOGViMmIxZjIzOWEzMjQ0MjNiNDE3YWI1NGQzYTYwMjVmIHB5M2sKKzg1NTc4IGI3NDlkYzRjMzc0YzE2N2ViYTEyOGM5YTk2MjUyNWRiMWIyNmZkZTUgcHkzaworODU1NzkgZTFkYzk4NjFiNDNmMzljMTEyMjdkNmIzZDAxMTFlNTI2OGYyMzg0OCBweTNrCis4NTU4MCA2ZGNiYTkzZDYyNjIwMmFjMDU5ZTBkYTAxZTE4MWJlZjMyYjY1ZDE0IHB5M2sKKzg1NTgxIGRmMGUzNDhlNzE3NjJlOWE1ODQ1Y2RiZjgwZmJkNmE5YzQ5NWIzNDYgcHkzaworODU1ODIgMzc5NGM5YjUwODI0ZmQ3YjVmODM4NDZlZjg3OTljMDYyMWViYzI2NiBweTNrCis4NTU4MyBiYTg2ZjM0ZjA4ZGE2YmNhMWE4OGFjOTZlN2Y4NWJmMzgyYzI3YjA4IHB5M2sKKzg1NTg0IDkzMDZmZjFjM2Q0NmY3ZDE3YmYxYjBjNjMxN2QwYjAzNTIyZDk0YmIgcHkzaworODU1ODUgMzQwMzU5ZDgwY2EwNTZhMjBjZjUyNDU5MTdjMGYwMjkxMjFmZjY0OSBweTNrCis4NTU4NiA0NDNhYjJjYmFiY2JjYWRhZGY4OTkwYTllYTdlNmM4MGEwZmFlODhjIHB5M2sKKzg1NTg3IDAyODMwNTUzZGJkMTk5Mjk3Nzc5MzJhNjAwNDBlZTg3NzY4MmY3MjkgcHkzaworODU1ODggZmQ1MTM1Y2JkOTI4ZGYzMzBlMzk3ZTI2ODhlNzk5NWM4NThiNTNkYiBweTNrCis4NTU4OSA2MDg3YjFmNmNhOWI3NGViODJjY2I1MDZmMzgwMmY1NjlkYmVlMmM5IHB5M2sKKzg1NTkwIDZiMjY2ODg3M2YzMGQyOTFjMDk2NjNmZTFmYTM2NjNkNTBjZTExMzUgcHkzaworODU1OTEgNDM1NzViMDk2OWVkMDYzYzA5Zjc0NGRhODFjMGMzNjJjYzg4ODkyMiBweTNrCis4NTU5MiA2ZWNlNjI5NDQ1YjYwYjM1MTViNjJhN2Y0YjM4ZDJhMjA3MDkyNDM4IHJlbGVhc2UyNy1tYWludAorODU1OTMgMWJmNzY3ZjI4ZGI0ZGY2MjM0ZTIyMDBiY2M4ZTc3NmJiMDdkY2RhZCByZWxlYXNlMzEtbWFpbnQKKzg1NTk0IDA1MDVlYmE2MjM0NzJmY2VmYmZjMWI2MzkxY2Q3MWQzNjE0OWRlODkgcHkzaworODU1OTUgYzk5Y2Y5MTAyNDc2YzQ5YzU1MDVkM2Y5N2U0YjcxM2I4ZWZkY2ZhOCBweTNrCis4NTU5NiBlYWJjNWM1M2YxMzRlYWNjYzUxYjcwNTE0OWM5YzFlZDNhZDMzMGE5IHB5M2sKKzg1NTk3IDI4ODBlNzJhNDY0YmQxYzFhODg1MWVmNTllODJkMDMwZmNjOTkwZjQgcHkzaworODU1OTggNmU1NTk3OTNlNDUwY2VlMzU2NTMyNjY4MDg1YWIwM2JlY2IyOGJmMCBweTNrCis4NTU5OSAxNTg1OTc0MGFhZTZjMmQ3MDJjNWM3OWM0ZTliMWE4ODBhZDlkZjZmIHJlbGVhc2UzMS1tYWludAorODU2MDAgNzAyNTI3OGM1YTQxYThiNmM4NTkzNDFmZDQ3MzFjMGE0YTIxNjhhMCByZWxlYXNlMjctbWFpbnQKKzg1NjAxIGY2MjE2YzVmMDY4MDNhZTViZDllNWY5NjM3M2NkZmZhY2UxZmMzMmUgcmVsZWFzZTI3LW1haW50Cis4NTYwMiAxNWUzYWQwY2EzNjQ4YjlmOTcwY2ZlZmVkNmRiY2U4MmY2MTA3YzVkIHJlbGVhc2UyNy1tYWludAorODU2MDMgY2FhMTdhMDMzMTc2YjI5ZTg2NjRlNjFmMTA1MjU3MGUzYTdmZTIzOSByZWxlYXNlMjctbWFpbnQKKzg1NjA0IDA4ODQwMjQ2OTAxNmJhNTFmOWI1YmFlMGE4MzhhOTc0NjcwOGYwNzQgcHkzaworODU2MDUgOTMxZjIzOTA4Mjk2NmZmY2M5ZGY2OTNjNDRkYzBkM2NjNjE1YzgyOCByZWxlYXNlMjctbWFpbnQKKzg1NjA2IDg3MzNjNjkwM2ZjY2EyNmRmZmJmMDlhYWNkNDI2MTYyMzg1OWNjOTggcHkzaworODU2MDcgYmU2MGM5NjBhYzA5YTQwZTA0MjUxMDAwOTdmMzRjMmZiYjEzMWExMCBweTNrCis4NTYwOCAyZTg1MDQ3MTE5ZDIxYmFmZjkxNDc4YzVkNjkwNmIwMmFmMWRlOTkyIHB5M2sKKzg1NjA5IDViMmFmMzViOGI0YjYwNmEyYzBiMGI1YTczMGFkMzAxNGVkNDY1NTkgcHkzaworODU2MTAgZDI1MzQ2YzBiOWQwOGQ2MmJhYzNiZmI2MGMyMjdlNDNiZmEyNzU1MyBweTNrCis4NTYxMSAzYjVlZDg0OTBhYjJjMmEzMmEwNmNjNTAwOWFlOWViN2YwOTg0Mjg3IHB5M2sKKzg1NjEyIDY5NzQxZDRiOGE2MDAzOWQwNWRhNGIzMDk5ZDBlYjEyYzc5MTNmMDUgcHkzaworODU2MTMgOTZkN2U3ODc0ZjhjNDYyNjUxZTkzMWMxMzRmMTEyZDc2OTk4YzhjYyBweTNrCis4NTYxNCA5NjZlYzMxYjgzNDJjNzYyMDg4M2IyODc1NTQ0ODU1NWE3MjZhODE4IHB5M2sKKzg1NjE1IDVkYTgzN2ZjZjY3NTkzYWVhNTQ3MjQ3ODkyOGQ0MjRjOGYzMmJmNDAgcHkzaworODU2MTYgNDczYjkyMWUzYTFmM2I2ZDE1ZWY3OTY2NjgyNjI2NDZhNGFiNGI4YyBweTNrCis4NTYxNyA3ZGRmNjBjODg5NmFhMDQxODk5NjFjYmIzNTEyODkwNjc3Y2YxMmRiIHB5M2sKKzg1NjE4IGE0ZGQzODM5MTJkODk4ZGJkYmE2NTg3OWFiODNhN2U0MGY0YWQ5YmMgcHkzaworODU2MTkgYTkwNDdjZTFlODFkYWMyNzBjMmNkOWVjZTA3OGYwMzBhYTgxZTcwOSBweTNrCis4NTYyMCAxOWNhNzBiNDYzYzU5OTJjYmFmN2ViYjdhZTUzMjVhOGVhYzAwNzU2IHB5M2sKKzg1NjIxIGFhMmU0NjM3ZjZjZTk3MTY0MmE0NzgxZWM5MWE0MWVjMzliOWNkOGQgcHkzaworODU2MjIgNTczN2FkNzFlOWUxOWU5NDZlMmM1MGI2YjYzMDVlMzQ2NTk1NjUwZiBweTNrCis4NTYyMyA4N2RjZWJlNzhkNjdjYTJiMjc4MWI2OGIzZTc1OTI5M2UxMWM1MTg2IHJlbGVhc2UyNS1tYWludAorODU2MjQgMDk5OWUzYTQ0NzM1YmU2MWU1ZWMxNmEwMWJhMmQ5NzUxMjk2ODQwNiBweTNrCis4NTYyNSBkNjk5NzA4ZGMyYzE5MDRiYzkzMGVjYzU4MThmODgzNGViNzE0YjY5IHJlbGVhc2UyNS1tYWludAorODU2MjYgNWEyZDM0NDliNTc1ZTNhMTA1N2ExZGJiZGIwMGU1NTE5MGQxNzA1NCBweTNrCis4NTYyNyAwNjYwOGNjMjVmYjIwNGNhZTQ3NjBlNWUzMzgwM2QwMDg1MTJhMTBjIHB5M2sKKzg1NjI4IGNlNGQ4MTAyNTdiNDRkOGI1YWQ2ZWFlOTI4YzliNTE1ZDA1YjI5YjAgcmVsZWFzZTI1LW1haW50Cis4NTYyOSBjYTk2OTA5MmY0NWE2Y2RiODkyMTEzYmEyZDM5MWE2ZDBiZGY2ZmFhIHB5M2sKKzg1NjMwIDMxMWQ3YWJiZmJlMzAwYTFjYmNhNGJmMjAzYmE2OTViZjhmYWNlMTkgcHkzaworODU2MzEgYmIyMTM1OWU4OGI5NDY0ZTI2ODFkOTc4Zjk5ZTgzYzI4M2FjYzhkZCBweTNrCis4NTYzMiAzMTc1MGM3MjdhZTMwNTBjMDAxYzgwMjI3MzVlNmU2ZjE1OTcxZWUwIHJlbGVhc2UyNy1tYWludAorODU2MzMgYmNiMjYwZDY4YjE1OGFhZWQzMGJiYTUyNzIxZGE0YzUxNWRmYmRlZCBweTNrCis4NTYzNCA4N2U1YjU5MzhjNjVmMGNhYzQzMDhjNTg4ZTIxMmQ2NWFhNzNmZTg0IHJlbGVhc2UzMS1tYWludAorODU2MzUgNDIyYTRmYjBhNDkxMjQ0ZDU0MzQwOTBiN2E2MDIxNGU0ZDA2ZWRhZSBweTNrCis4NTYzNiAwNzNlMWJlNzZiNDc0MzU4OTRlNmZkZDg3YTlmZWEwZWFiMTRmMDlkIHB5M2sKKzg1NjM3IDliMjI1MGZiODBkOGI1YmI0YjkwMTA1MmVlYzI0YThkMjE3ODQwMmIgcmVsZWFzZTI3LW1haW50Cis4NTYzOCA5ZTQ1ZmM4MDUyODhhNzdjODRhMjUyM2I5NGI3YTVlYWU3ZmQzNGE2IHB5M2sKKzg1NjM5IDY4NDQwMjcyNTRmYWU2YjFiZjk2YWUyN2RiYWQzNmJkMzRiMWNkZjAgcHkzaworODU2NDAgMTg2YWYwNTFkMDRmMjEwYjFjN2UwNmU4OTNkNGU4ZGNlYmU3NmY1MCByZWxlYXNlMjctbWFpbnQKKzg1NjQxIDk5NGI4Nzk5ZjI4ZDY4YTVlNGI5MGMyYTgyODQ4NzEyYTk3NzVhYmMgcHkzaworODU2NDIgMjFkZDcxOTM4YTQ0NzJkMjQ2ZTU4Mzg1MDY1MGI3NmJjMzkwYjAyNSBweTNrCis4NTY0MyA3NGQ4MWEzYTBkNTY1YTE4Nzg1OWRkNmE5YzMwMGNlNTdjZmJhYzk2IHB5M2sKKzg1NjQ0IDA1ZDdiMTk5MWZmNzJlNzRmMTUyNmE4YTFlYzc1NTM3NjczNjMzNTQgcmVsZWFzZTMxLW1haW50Cis4NTY0NSBiNDJmOTQ5NjQ4YmFjNTdmZGMwMDExOWIzYjc1OTdhNzUxZTc5NDE0IHB5M2sKKzg1NjQ2IDYzM2RlNTdmYjczYWUxMTYzMjI0MDk3NzQwZDFhNDIxMjRmMGZmOTEgcHkzaworODU2NDcgM2M5YWZhOTJmOGZkYzY1MzJiMTE4Njc5ODAwMmMwMDQ5NzJiMTcwNSByZWxlYXNlMjctbWFpbnQKKzg1NjQ4IDYyM2RlYWU3NzMyNDM2N2Q1MTZhYTRlMWYyZDQyZDUyODYyOWQwNzIgcmVsZWFzZTMxLW1haW50Cis4NTY0OSAzOWEyYzNiMTBhN2IxZmVmYWZmNGY3YjI2MzNkNDBiNzEwYmY5NzNiIHB5M2sKKzg1NjUwIDlhYzNmZTJjYTQ5ZWI1ZWZhYjg0M2JjODU1ZDEwZmQzNTlhZGU2OTMgcmVsZWFzZTI3LW1haW50Cis4NTY1MSBlZmQzNjk5ODFiOGRkNTYxY2I2YWJjN2NhMjUzZWY5ZmM2ZTlhNzM1IHJlbGVhc2UzMS1tYWludAorODU2NTIgMzhhZDU3ZGI4OGFjNGJlMmY1MmM3MDc1MWFhNGIzMTA4YmU1NzE2OCBweTNrCis4NTY1MyAyNDRjYmNiNjdkY2Q4N2UxMWI2MzYzNDcwYjJiODdmYjZmNTFhY2Y4IHB5M2sKKzg1NjU0IDM5Y2RjYzdkM2UyMGQ1NDRlYWE4YTVjNGFhM2Q2OTA2ODY4ZThmN2IgcHkzaworODU2NTUgMDIzYjQxMzc2MjkwYTEyMWM3N2EyNGI3MDE0NzBjYWU3MGExYjIzZiBweTNrCis4NTY1NiAzYTQ3ZmJjYjI5YjEyMDUwODdjOWUzY2E5YjAyNTU2YTdkZGU3ZTY2IHB5M2sKKzg1NjU3IDdhZjQwNmYyMTlhNGU2MWI0OThhZGM3MWY1YWEyN2ZjZmNiOWFlMzEgcHkzaworODU2NTggZDU4Y2UzZmZiMWNiNjk3ZjFlZWRiNGE1M2VhM2IxMTI3NmJkOGVlMSByZWxlYXNlMjctbWFpbnQKKzg1NjU5IGIwMjI4YWY2ZGIxMTgwYTE3MWM3ZGUxMjA1N2FkOTM2NjA1M2FkYzIgcHkzaworODU2NjAgOTVlM2FlZWJiNWFiY2Q4MWU0ODE3NWI0ZmYwZDIyOTk1ZGUxNWUyNiBweTNrCis4NTY2MSBkMWRlZjdiMmFiZDJmNTliNDMyNTRiYTMyNDA5NzQ2MmYxZGIyMGZiIHB5M2sKKzg1NjYyIGIyYTljYTJiNjFhMjQxYjBlZDhmZDc4MDg4MTEzMDA4ZTM0Mjc0YTAgcHkzaworODU2NjMgYzE0N2Y5MTBhZjcwMDg2ZmQ2M2RlYWUwZTNmNjIwYjkxNjNiNDBkOCBweTNrCis4NTY2NCBlODk2OWZiODIyZmMyYTI3OWFlMzRiZTczZjhlMWUxNWM0NTNhM2QwIHB5M2sKKzg1NjY1IGY4ZmMyZDAzZDdlNDJhMTJlOTJlYzI3NDg2MzQ3NTA5MmVhZDhlN2QgcHkzaworODU2NjYgZTc1ODA2NTJhZmI4ZTZjZTZhMzk1YWRmZWZmYzUxNTYzNDcyYmNlYyByZWxlYXNlMzEtbWFpbnQKKzg1NjY3IGEzMTY1ODEyOTAwODA3NDBmN2I2MzIwY2Q1NzMzNDM4MWIyNjc2YjkgcmVsZWFzZTI3LW1haW50Cis4NTY2OCBiMWNhN2Q1YTljNzRkNzBjYWMxNDRkNDI5ZDcxMmY3OGI3NzMxNTRkIHB5M2sKKzg1NjY5IGIxYmRhMWVjOTk1ZmExMDM2ZGUwOWZhYTMzYzM1NTBiMmY0MzZmNDcgcHkzaworODU2NzAgZTBjY2I1ZjUwZTBjNzkwNjM3ZWUzMTE1Mjc3MDUwNDM4MDAzNzFiYiBweTNrCis4NTY3MSAxNmVhZDgzZjc5Y2M5OWNlMTQxN2IzZjA0ODNhOGExZWI0ZWRlMWY1IHB5M2sKKzg1NjcyIDk2YTY5NzYyYjQ4MTYxNjc4MTYwNzM4ZjQzOTBiNDAyMmI0M2ZiYTQgcmVsZWFzZTMxLW1haW50Cis4NTY3MyA3YWExNGNhYzZmNGQwMjczOWVjZGI0YjVkMzA1ZDY4MWQ1OTM4MTY3IHJlbGVhc2UyNy1tYWludAorODU2NzQgZWI4ODM3ZWZkODRjNWIxZWRhYWZjYmU5MDQ1ZTc0MTVmZDk3NmY5MiBweTNrCis4NTY3NSAzNTFkNzk0ZDMyZjQ0MzI5YzEwNzM3M2UxZGFlYzg2MjUzMGVlZDIzIHB5M2sKKzg1Njc2IGFhMjAzZDQ3OGJiODEwZjZkZTJiNjEwMmZlNDE1OWE0MjExNjIwZmMgcmVsZWFzZTMxLW1haW50Cis4NTY3NyBkMzk3YjAyNjMxYjU0N2Q5NGM2N2I0YjkxMzg0ZTk1ZTZkMTMwZjA5IHJlbGVhc2UyNy1tYWludAorODU2NzggYmVhMTRmMDBkM2UwMTAwNzI3ZmY3YzBmODg4NTFkNzYzZTA2N2NhMyBweTNrCis4NTY3OSBiMGE4ZmNkYTA2NTQ3ZDZkMzRlMzM0NzIyODI1OWMyNTEwMzRlMmZlIHB5M2sKKzg1NjgwIGNlOWY1Y2UzM2FkMmEwZjVkMDNjZDA4YWFhNzgzNTgzNjFkMmY4NGIgcHkzaworODU2ODEgYTRjMTBhNDRkOWFlMTFiZWM5Yzk5OTQyNmU4NzQ0Njk2ZWNhMWNlNSBweTNrCis4NTY4MiAxN2M5NmFhZjkzYzg3ZDEwN2EzYTMwNTc5ODQ5Zjk0OWIzNGFmYmU3IHB5M2sKKzg1NjgzIDViMDY5ODkyZTQxM2E5ZTExNWFiYTk2MDQ5NDg4OWNmZGJjMmQ5NDMgcHkzaworODU2ODQgOGYwNjI1OTU0ZmZhM2NkZDcxMTYyMzljNWNjOThhMDY2YWYzNzI2NyBweTNrCis4NTY4NSBjZGZkMTk4YTZmMWRlMzEzNjY5OTVlYzZkODUwZmE2ODkwOGRhNmNiIHB5M2sKKzg1Njg2IDc1MmU0YjVjNjRlOTVjYWM0MTYyNjQxZGM0MzcxNjQwYTU2NWViYzEgcHkzaworODU2ODcgYzcyNzU3MDMzZDQ0Zjg1M2QwZjY0YjU5YTI4MGYyYjA2MDg1NGU3YSBweTNrCis4NTY4OCA2OGJkNzVjNjlkYjE1MGZmZGNjYjIwMzdkNDJmZGYzZjQxZGQ1ZDQxIHB5M2sKKzg1Njg5IDNjMzM2MzQ4YTJlOTg2ZmU0Nzc5YzE1M2Y3ODc0YzQ1OTg3MTFmMTggcHkzaworODU2OTAgMzcyYzk4MDdkNzVkOTcxNGU2MDY0M2I5MGFmMGExYThiMGQ5NjE4MyBweTNrCis4NTY5MSA3N2MxM2M5YzZlNTllMzllOTY4YzRiNGVmZmI2M2Y3MThlMzUzNThhIHB5M2sKKzg1NjkyIDUxOTU5ZjM5YTdmYjEzNmE1ZWYyOTM2OGJiNzM4MzExYjg2NWZlN2QgcHkzaworODU2OTMgYjBiYTdlZWI5OGE1NWU5NDQyYjFkMDUxOWQ4M2JhZmRmZWEwZWRmYiByZWxlYXNlMzEtbWFpbnQKKzg1Njk0IDJmN2UwMTY5NDkyNjc1ODY2NWIxNjliNGM4OWQzZjFjYmZlNTMyODIgcmVsZWFzZTI3LW1haW50Cis4NTY5NSA4NmYwMDYxMmNiZDYwZTllMTY1NDBlODI0YmJkZDY0NTFmMTczNDE0IHB5M2sKKzg1Njk2IGVjZmY0MWUwNjhlNmZlOTFlMzBkMWJhNDg4ZGZmZGJiYjFkNDJjMjIgcHkzaworODU2OTcgODJiMDgzYzk2YTM5ZmJmNzEzMDljYTgzYjcyYzNlMmYyODJlNWMzNyBweTNrCis4NTY5OCAyNDZjMDhjODI1YTEwNTg4ZDgwNmFjZWIxMmQ4YzE0MmM4YTkyNTE2IHB5M2sKKzg1Njk5IDUwMzYwMGJiMjVlYWE4OThmZTI2YjhmNzYzOGFiYmQ2ZjJlMmI3ZWMgcHkzaworODU3MDAgM2ZhZmY3ZTUxZjQwZGVlZDBkNDZmYjlmMmUxMmVkMTJkZmFiNTM1OCBweTNrCis4NTcwMSAxNWU0MTU1MmRjYmQ3Y2MwMzIxNjY2YzQyMmU5MTM3MDJkNzM0NjlmIHB5M2sKKzg1NzAyIGJiMzMzOTczZGUzOGJjMzM5MDgyNmQwNWYxYjcxYjljM2YyZWM0OGYgcHkzaworODU3MDMgMjdjZTk5ZmMyNTI3MDE0NzVlOWY5OTA4MWE0YmY4MGJhY2Y3NGVhMiBwZXAtMzgyCis4NTcwNCAxYTkwNTM5MWUzZWQ2ZWQ0MjhiN2I2YjUzOTc2NjYxOTVmYzNiNjJhIHB5M2sKKzg1NzA1IDg5MTIxOTI5ODJjYzgzNzgxOTMyOWEzZmY4NTEwOThjZDJhNDAxY2EgcHkzaworODU3MDYgNjYyOGY4NmRiMmI2Yjc4OTAyYWNiYjUyNjY5MDU1MWY1NTlmZDJkYiBwZXAtMzgyCis4NTcwNyAxZWMyYmZhNTRjYWJiOWJiNjM0NzhiNWJiNjE5YzlmZWUzMzNmYjc5IHBlcC0zODIKKzg1NzA4IDAyNjM1YmFlYWQ1ZjVhYjVhNzMxNmNhYTZlMGFiMTQzMjZkNTI0ZjYgcGVwLTM4MgorODU3MDkgZTJiYTEyNDlhMmY1NjM2NjAyMmI5Njg3OTFhOGZhNTUzYzZjODVjMiBweTNrCis4NTcxMCBkNjA3YjYzMTMwNWRjMGE3MDIwOGRhODI0NWFkMGZkNWNhYTExOTJlIHBlcC0zODIKKzg1NzExIDRkNTVmMGIwOTBkNTgwZDgyZjViZDU3OGMwNjhmZDJiMTlmNzMxYTkgcGVwLTM4MgorODU3MTIgMTMwM2NlYWY0NDFhOWM5M2Y4MmUzZDQ0MjAwZWUyOTI3MTI2MjE1OSBwZXAtMzgyCis4NTcxMyBiNDdlNGVlMTU0MDMyY2U4YjQ0YzhhYWUyMDg1ZWI0YTA4OTE4MGE5IHBlcC0zODIKKzg1NzE0IDcwZDJiNGFlZGMwOWVhNDdmMDE0ZWEyMjFmZTE2ZjNiNjg1OWNiOWUgcGVwLTM4MgorODU3MTUgNTllOWI1OGRkYWY4NDhkM2FlMGQwODYxZGExNDYzYTg3NmFlYTZhZCBwZXAtMzgyCis4NTcxNiA0MmI4NGQzMTg4ZDEwZWZiMjI2YjViODJlYjJmMzEwMDc4YWZiOWZmIHJlbGVhc2UzMS1tYWludAorODU3MTcgNGYwZGRkYWY4MmQ2YTc0NzdlNDRjNTZjNDMxZTc1ZDUwMzEzMjk3MSByZWxlYXNlMjctbWFpbnQKKzg1NzE4IDc3MTdmOGM0NWZjYzM3ZmY3MDUyMzFhYjI2YTQ4ODBmMjMxM2FiYmYgcGVwLTM4MgorODU3MTkgNmU4ZDJlMmQ4ZDgyOGY3Mzk4OWQ3NTNkNmU1YWIyYzI3Y2NlZmRiOCBwZXAtMzgyCis4NTcyMCBlM2U2YWE2MzNmMzNiNGU5NjdmNzAzZmQ1N2JmNWYyMTA0Y2MyMDIyIHB5M2sKKzg1NzIxIDcwNzJhNWIyODFkMzdlNWM5NzJhN2FlODE3MjI1YWQ3OGE0YWNhZjIgcGVwLTM4MgorODU3MjIgYjUwMjU1NjljYmQ0MDZjYmFlOTRiOTM3YzY5YWVkOWU0YmZlYzBhMiByZWxlYXNlMjctbWFpbnQKKzg1NzIzIDhlNjBkN2E5NjE0MjI3MmZmMTcxYmU3YzA2Y2ViZWU2YjFjNmFkYmEgcmVsZWFzZTMxLW1haW50Cis4NTcyNCBhZDg5MjM3NjBkNWMwZGE3NDIzODU5OTQ3ODY2NzA1MzI4NDg4MTI5IHB5M2sKKzg1NzI1IDA1MTFjODY4YTRlMzhhNGM0MGJhNWY5NTgzYjUzZjU1NjUyZWRjOTIgcHkzaworODU3MjYgYjZhZDQwMTM3N2ZjNTliY2E5MTkwY2MxNTNhMTdhM2UyMWZmYTI3ZCByZWxlYXNlMzEtbWFpbnQKKzg1NzI3IDFmMGFiNzI5YzYzMjUzNWI0ZTIwNzMwOGRjOTMwMTE3MWE3ZjgyYjIgcmVsZWFzZTI3LW1haW50Cis4NTcyOCAwNDA5MGFiMzUzMWU0MzIzZTE0Mzg5OWRmNGVmZjRiYmU1YWRlOGYwIHB5M2sKKzg1NzI5IGM0N2VmMTgwYmUzOWQ2YzRlZTFhNGU5M2NiNGJhOGI2MDg3MDFjODcgcHkzaworODU3MzAgZTExYWMzMDE5OWIxMGFjMzU3OWJlNjYzZjgxNTRjMzRiZTMyODNiYyBweTNrCis4NTczMSAzNGJlYWI5NTk1OTU5YWRlZWQ0NzgzNzZhY2M5YzEzM2I1ZTI0NzZkIHB5M2sKKzg1NzMyIDAzNjc3MGRkOTA5NjdjYTJkOTQ2ZjU4ZDQ0MWY2NTVhMmU4ZDUzNWMgcHkzaworODU3MzMgOTYyZTFmNGM5YzAwM2I0ODI3MjdiZDQ1NDQ0MDNmYzAwM2JkYmE3OSBweTNrCis4NTczNCAwODY1MTljMWU3ZDI5YTgyNDc2NzljZTZkY2ZlZTRlOWJmNDMzMmJhIHB5M2sKKzg1NzM1IGQzYjYxZGM3MzJlZmYyNTcxZjE0M2FlMzNkYzMzZGFmMTlkMDQ3NDMgcHkzaworODU3MzYgYTY2MWI0MjRlZDQ3YTliZjQzMzdkMzA5Y2VmZTA1NGNlZjc4NDZiZCByZWxlYXNlMjctbWFpbnQKKzg1NzM2IGE4ZWZmMzlhZWIwOTk1YThjMzJiZDBkYjk2MGVkYzBmMTEwZTUzM2UgcHkzaworODU3MzcgY2Y2MzRhMzk3YmVjODFhNDJhODNkNzZmNWQ1ZThlMDZkYjI3ZDIxMiBpc3N1ZTQzODgKKzg1NzM4IGQ0ZDUzYjRkYjk2ZWQzODg5YWU1ZDY5NjYzNTA5ODhjZjhhNTY4NTggaXNzdWU0Mzg4Cis4NTczOSA1MmNiZjQ1OWRhOGJjZmFhZmJjN2RiYTZmNmNkZmMxMmVlZGRkMzQ3IGlzc3VlNDM4OAorODU3NDAgZWRjZmM0Yzg5ZjMwNDAxNTUyNzdkNDIwYTFiOGYyMDQ5MzU0NjUwMCBpc3N1ZTQzODgKKzg1NzQxIDU5YWFjMDc0NWVjNzViOGM1YjJhOTIyOTRmZDZlOTM5ODFkYTg4NDYgcHkzay1zdGF0LW9uLXdpbmRvd3MKKzg1NzQyIDNiYWVjZDRlMGMxMmExM2NhNjFmZWVmMGUxNTYzYzgwOWI1Nzk0MmQgcHkzaworODU3NDMgNmRjZjYxNDQ3YzMzZjY4MWYxNDY2YTM3NjIwZTQzMDkwNjkwNTY1OSByZWxlYXNlMjctbWFpbnQKKzg1NzQ0IDE2MThjYjE1YjViOTg0NDAwZDhhZThhMjkyMDRmMmJlNjRhMjNlNzMgcHkzaworODU3NDUgZTg1MGJiOTMwYzg0MmYxYjVjNWQzZTZlY2ViNTE1OTlhOWI2Nzk0NSByZWxlYXNlMjctbWFpbnQKKzg1NzQ2IDVjZjFlNmU2MWM2YzM3NWFlYThmYTJjOTBiYTg1YTBjMGVkNjExYzUgcmVsZWFzZTMxLW1haW50Cis4NTc0NyA1MGRkODZmNmYyNGFkNGI4NzhkN2I4MjlhMDM5YjNhNTNhMGEzMzBjIHB5M2stc3RhdC1vbi13aW5kb3dzCis4NTc0OCAzMDE2YTZhNGE2ODBiODRhM2MwZTRkMjA2MjAxMWQ3MjU0MDlhNGJjIGlzc3VlNDM4OAorODU3NDkgNjQzYTA3Y2M5ZDdmYjg5Mzk4MWU3NGI0YWQ5ODg3MmZiNDBjOTA3NCBpc3N1ZTQzODgKKzg1NzUwIGU1M2M4MGIwMTYzMzMyODdlZjMxNmYxYzNiY2Q2MWJjODRiYjY3YjIgaXNzdWU0Mzg4Cis4NTc1MSBkN2NlMzdiOWJjZWQyMDM2ZjFlNzA2YTk3YzY4NjIzNWEwZjM5NjUzIGlzc3VlNDM4OAorODU3NTIgMmYxYTU1MDY3OTMxMTUxNzVkZTdkNDRmYmZmNzUwN2Q3ZjI4NDE3MyBpc3N1ZTQzODgKKzg1NzUzIGY4ZmMyNGExZjlhNmMyZGJiNjY1YTUzYTFlNjRhNzQ1YzViZGU2YjAgaXNzdWU0Mzg4Cis4NTc1NCBlY2ZjMGRkMTVkNTdmMGQ5YThhZjc2MjE4Y2I5MDhkZTM1OTgyYWE0IGlzc3VlNDM4OAorODU3NTUgZTcxMWI4NTg2MTdiZTcyY2M2NjQxOTkyOWY5YWJmMjU1ODg3Yzg5MiBweTNrCis4NTc1NiA5ODU4OWQwZjExMDEyYWM2M2Y4YTlkZTlhZjdhNDczNDhjNjRhMWY2IHB5M2sKKzg1NzU3IGM1Zjk3YjA1NDE1ODU4MjVjNjZkYzBhNDNiOGZjZTQ0NmQzMmVjZTAgcHkzaworODU3NTggODBjMDQ2OWY5ODU5N2Y4MWU2YzM4NjFlODg1YjZlMTJhMDRlYzA3YyByZWxlYXNlMjctbWFpbnQKKzg1NzU5IDhlNmI3YWIxZTFhMTQwN2Q2ZjA5Y2NmZTgxZjgzODlhYjJlNDYxM2QgcmVsZWFzZTMxLW1haW50Cis4NTc2MCBjYmUwMjI0NzAxNDcxYzQ3MjlmNDcxNjIxYjUxZWMyMjQ0MzRkM2Q4IGlzc3VlNDM4OAorODU3NjEgMzkzNjZiYTVmMWMxMDc0YjdkM2FkMTkzNTQyYjYzNTk0YTU0Yjg0MSBweTNrCis4NTc2MiBiZWMxNmE1ZTBjZGFjMWVmMzhlZTY2NDRjYjg5NzFhMTk1M2NjYTViIHB5M2sKKzg1NzYzIGFiZGE4MjQwYTY0MDVkYmU5YTllMzk3ODk4YzQ5NjZlZjFiMjNkMzcgcHkzaworODU3NjQgYWVjYjU2YzNmNGViNWU3MmYzY2VhOTM3NjkzZjk5OTg0OGU5ZDk0ZiBpc3N1ZTQzODgKKzg1NzY1IDQ1MDc5YWQxZTI2MDA5YWNjMGY1NzI0NDBjYWMyMmFiMGE3NzQ5NTAgcHkzaworODU3NjYgMzgxNmViMTI4NmMwY2U1OTU4YmVhOTVjYmI2ODkxMjJiZjYzNDBjYSBweTNrCis4NTc2NyAyZTE5ZDFmNGI2MTJlYzg5M2RmMGY4NmU2ODBmYTQ5Yjg4MWJlYjgzIHB5M2sKKzg1NzY4IDcxN2FhY2ZkMmRjZDY4MzZjYTk4ZmU3ZmRkNGNiZDk4MDViMmU2ZDUgcHkzaworODU3NjkgZThkNWFkMGMyZjViY2IxZTA0Y2I4M2Q2NzU2ZTMwN2M3ODQ2Y2UyNCBweTNrCis4NTc3MCBhMmJiNTBmZmRmZjNkNGY5ZjQxMjdhMjM0Mzc0ZmNhZjdkYzA1YjRjIHB5M2sKKzg1NzcxIDJmOTRkNjhjMjczMTI3NzdhODM0ZDZiNzNkYzdjMjliNzMxM2EwNmQgcHkzaworODU3NzIgMGI1YmZiYTdhOTA3ZTZiOWEwMTAwYWUzNGY1Y2QzZjg0ZmQ2NjRjZSBweTNrCis4NTc3MyBjYWE1NmNmZjJmYjNhNzhlYWMyYjM0ZmQ3ODNjN2RkMTdkY2RlNGI3IHB5M2sKKzg1Nzc0IDA4MDE0NWQzYmJmNzY4MWE2MTU3ODU5N2ZkOWQ4ZDljNTAzMmE3ODcgcHkzaworODU3NzUgZTQ1M2U1YWIyMDdjYTQyM2MzMjU3YmI5NGFiMDgxYmNlNjc3ZjM5MCBweTNrCis4NTc3NiAyNDQwOTA0Mzg2MjNlMTFmMTJjNDM3NGVlNzgwZDc2NjgyNWI3NmZkIHJlbGVhc2UyNy1tYWludAorODU3NzcgZTc5YzU3NjdiZDA1ZDA2ZjM5M2NmYjYxMGE0ODY2YTQ1YmMyMjI4MSBweTNrCis4NTc3OCAwMmMxNjI2ZmY2MGZlMmEwZTljNTY1NTk4MmMwNGJjYTk2YWUzOGUwIHB5M2sKKzg1Nzc5IDI3MmI4ZmY2MGJhNGMwODQzZTA3ODFjNmJlYzliNDEzYzM2ZGY1YjQgcmVsZWFzZTMxLW1haW50Cis4NTc4MCA4Nzg3ZjRiYjRiMjE2MDUxOTg5YWM1NWRiNGE3MzY3YjJkODQ2MmNkIHJlbGVhc2UyNy1tYWludAorODU3ODIgYmQxYjMxYzM3NDEwYmMwM2FjODUxMTFjNWQxMGY1Mjc4MDg2ZmI0MCBpc3N1ZTU2MzkKKzg1NzgzIDZlNGVlYTc1NDNiYzM2ODk0ZDUxYThiMzNiYzZlZWIyNDRjOTZkZTYgaXNzdWU1NjM5Cis4NTc4NCA3YjU0NjI5NTFhYzliNTExZTc5Y2ExMmEyZTdmOWJhZDViOTZkOTdlIHJlbGVhc2UyNy1tYWludAorODU3ODUgZjk4NDQ2OWRlMGJiNmQzZGNkMWI2ZjUzZmM2ZjVlNDNkMjRiMjBiNiBweTNrCis4NTc4NiA4NTI1NTQ0OTY4ZjNhNTk2NGZiZTJmMDU4ZWRmN2Q5YmM1ODQxZDY2IHB5M2sKKzg1Nzg3IDEyZWIyNDQ2MzYxMDk0MTdjOTQ2NjM0MWJiNmYyNmNjNjJmMjcxOGQgcHkzaworODU3ODggYzZhMGViN2Y3M2JmY2ZkNzE2ZjhhYjI5YWNiNjllYTIwNWU2NWY3OCBweTNrCis4NTc4OSA0NmJiYmRjZDc3N2Y1NWI2YmMyNWUwNjFiMjU3ZDUyYWUzNzJiNTliIHB5M2sKKzg1NzkwIGZlMzU1N2RiZWY4OTI1MjM1Mjc0MDE1ZGFhZGI3MjgyOGRiMmViZmYgcmVsZWFzZTI3LW1haW50Cis4NTc5MSAzMWEwYWI3YWMyZDViNTUyN2NiYTVhZGI5YWIyYWUzNDMyODYyMDc0IHJlbGVhc2UyNy1tYWludAorODU3OTIgZWEwZjgzY2Y3ZTk5NTk2MzIyNjcyMDE3NDA4NDMyOWM2NmNjZTZlYSBweTNrCis4NTc5MyA4NDZjMGUxMzQyZDBiYTFhZWQ1MWFjMDE4NzIzZTExNmEyNjk0NDZlIHB5M2sKKzg1Nzk0IDE0MzhkNmI2NzA1MjY1MGY4MjYxNTBkZDViNzJhZTIwYzZhYmFhOGMgcHkzaworODU3OTUgMDZkZmFlYjU4YmRlMDFjMzY4ZjNkMTVlZjUxOTQ4Y2NhZmQwMjQ4MCByZWxlYXNlMzEtbWFpbnQKKzg1Nzk2IDg1OGFmNjBiMmRiYmNkOWJjYzRjNmZmMDA1NTEwOTc0N2RjYzI5YjggcHkzaworODU3OTcgZDk4NWJhOTgxMWU5OGVhNTgwYzEzYWY3NWY1YTc4ZWQ5NDc2MTg0NSBweTNrCis4NTc5OCA5OTEyZDYxY2RmMzRjMmIwOTIwMGM0MGIyOTVhZWM1YTcyYmY4ZGMzIHB5M2sKKzg1Nzk5IGNkODBkMDVmMmZkNjdkYjYxNjAwOGFjNjdmMDhjMWI2ZWQwZWJkM2YgcHkzaworODU4MDAgNWI2ZTEzYjZiNDczYjVmZGMyZmY1MGQ1OTkwYzJmZmM1NWJiODNhZCBweTNrCis4NTgwMSAzODM1YmNiZmIyOWMwYzZiMzEwMjY1YjBiNGQxMjQ4MmFjYzAyMGJmIHB5M2sKKzg1ODAyIDkwMmY1NzdlN2Y5NDk1OWIwNTczOTE3NjZjMGUxNGEzYTE2Yjg4OGYgcmVsZWFzZTMxLW1haW50Cis4NTgwMyBiZThhZTZiMTc1MzlkMjk5NWMwNmNhNjkwZmNmMWYyZTUwMjUwMGQ1IHB5M2sKKzg1ODA0IDhkN2YxODMzMmRiN2RkNDE5NGRiNzFmMWIzZjExNGM5NTc1YjYxNjAgcHkzaworODU4MDUgMWEwOGY0YTllYWZkYzQzZWFmM2RhYjYzZWVhY2NiY2JlZGE1M2QyMyBweTNrCis4NTgwNiBhMzBlNzU4MjBiOGRlZWY3MTAxYjIxY2U3ZWQ3NmMzYTc4ZDUyYzkzIHB5M2sKKzg1ODA3IDc5MjAwNWRlMjc3Yzg2YThhNDgxOWVlNGNmZWQwMmNmY2ZhNzMxYmUgcHkzaworODU4MDggZTk5NmM2MWU0N2M3YjM5Mzk1NjE1ZTliODY5Y2QyMzc4NTJjZjFhZiBweTNrCis4NTgwOSAwOTgxNzdhY2Y3M2YyMDg2MDgxYmIxN2FhMjMxMzMxOWIzODI0MTVlIHB5M2sKKzg1ODEwIGI5ZGNmZGZmY2I2MjBjNTI3MjRhMWRkYmVkMGU5YmY1MDVkYWQwMzUgcHkzaworODU4MTEgZWJmNjc0MWE4ZDZlMzc5ZGM3MTBmOWE5MDg3ZGMyMjRkNDcyZDVlYyBweTNrCis4NTgxMiBhOTRmYjhkYjlmMWE1MGY2MWIwY2FmNTRhNzc3NDA5ZGU4NjY2OGZiIHJlbGVhc2UyNy1tYWludAorODU4MTMgZGI1YWJkODFkYzk0ZWQ2YTY4ZDgwN2Q4OTJhMjU2OTkyOTkyMDcxYiByZWxlYXNlMzEtbWFpbnQKKzg1ODE0IDE4OTg5YWQ0NDYzNmFkNzVlZjE4NTg1MDZhZTk0ZTg4Y2FkYjM1YTYgcHkzaworODU4MTUgNTM2MzllNTdiYTQwOTIzYWYzNWM0MzNiMGRhMzZmMGNlMTYyOWQ3MCByZWxlYXNlMzEtbWFpbnQKKzg1ODE2IGE0YTI3MjQwZmUwOTM0YjgwOWI3MzhhYjcyOWNhY2YxNjllYWRjZTMgcmVsZWFzZTI3LW1haW50Cis4NTgxNyBmMTQ4Zjg2NGIxNjhiMDg3ZTg5MjczODA2ZDI3N2VlMWQ4NThjYTU4IHB5M2sKKzg1ODE4IGIxNzJkNzUzN2I5OWI1NDA0Yzk2ODk2OGViM2MxM2ViOThkODY4NzEgcHkzaworODU4MTkgNWI1MzZjOTBjYTM2ZGVmYjMwZjY3ODU4YmZhZjdkY2M0YjQzZjQ1MyByZWxlYXNlMjctbWFpbnQKKzg1ODIwIGE4MjA3MmNhMDZiYWEwNTFkM2MwMDFiMTlhMGRkZDU5ZTY3ZmQ4YWQgcHkzaworODU4MjEgYzVhZWJmZmM5ZmFjNDY1ZmE4MjA1Yzg3MzY2MjkzMDAzZTBiZWQ1ZSByZWxlYXNlMzEtbWFpbnQKKzg1ODIyIGNjZjJmZjA4ODY2YjliZTZjMmFkNWM2OTAyMGIxMmE0ZTAxNTIxYTMgcHkzaworODU4MjMgYjRlMzcwYzhlN2NhZjQzMjEyNTFhOGU4MmM3MDg2OWRmMDQ1MzE0NCBweTNrCis4NTgyNCAzOWI5ZTlkZTM3MmIyMDEwMzBmNTVlZmJiMGU2NTFlMTJlMTFlNzZkIHB5M2sKKzg1ODI1IDVhMDU0NTRlNTY1ZmE3OGYzNTA3NjM4Y2IzZGExZmVhY2JkNTQ0ZjAgcHkzaworODU4MjYgMTkwOGExNDZlOTYxZGMzOWY4MGIwZDk0OGRmOTVmMzkyNjBmNDA3ZCBweTNrCis4NTgyNyBkYjVhNTA4MGY5YjhhMGVlMWViNmQ0ZGQ5YTY4MmE5MzgwM2Q0YzkyIHB5M2sKKzg1ODI4IGNiNjQxOGY0ZDYwYjljZjY0OWIwMzQ0NjA0OGVlZjM0NTdhYjg1OTAgcHkzaworODU4MjkgNGUzNjA2NTI4M2NmMmM2Zjc2ZDc1Y2YxMzZhYzMyNjc3OTg2NDZlYSBweTNrCis4NTgzMCAxNTk1MzBmMGU0MDZhODY0ZTI0NDU5NzgxMTZkZTFhMDA1ZDU4NjQ2IHB5M2sKKzg1ODMxIDY2MGQ1ZjMyNDgyZWY0ODk0M2EwNmVjODc4YTBhNzQ2M2JkZGVjODEgcGVwLTAzODQKKzg1ODMyIGY1NzBkYTlhNDNmODZlMGNiMWJiNzZjMDc4MjJlNzg0OTY0YjVhYjQgcmVsZWFzZTI3LW1haW50Cis4NTgzMyA0NGQ4MTkyMmE4OGYzNWRiYmVjMjVkODZjMmVmNjUzZTc2NTQxZDhjIHB5M2sKKzg1ODM0IDVjMWNlNWMzNjBkYTIxZmRlM2YwYjBlZGIzN2Y0MGNjZTE2N2EyOTEgcHkzaworODU4MzUgM2E5YzNlYzVlOWQyY2ZmYjBjZmJhNjQ1ODc1ZGVhYTA5ZGRjYjc3YiBweTNrCis4NTgzNiAyMzUyZTVlNDQwNTNlOTViYjY4NmJmYjc2ODkxOGMyZTE2MGQwMDRjIHB5M2sKKzg1ODM3IDBmMDdkMmRiZjgyMGI4OTQ5MjUwYzRlOTBhMWE0MWI2MWRmMmZkNTggcHkzaworODU4MzggNGU5MmNkZWZlNGM3NDM3ZmY5MmE4ZjEyZTNiYzY2Mzk1OWJhNmE4ZSBweTNrCis4NTgzOSBkN2QzMjNkZTM1ZTc2ZDI4MDkyOTI2ZWVlNzE5OWM1MDM3OWJmYzY3IHB5M2sKKzg1ODQwIDlkM2ViYTAzZmQyNWQxZDdlZWE0Yzg1ZjdkNDYwMzFkYjA3NDA4ODggcHkzaworODU4NDEgY2VlYmIzZjQ1ZjlmYzYyMzg5ZDM4ZmFhYWYyYmFkNGYzOTEyMjk0NSByZWxlYXNlMjctbWFpbnQKKzg1ODQyIDc3MmI1NWYwMjgzNWRlNjc2OGNiMzhmMThiY2ViNjBhN2M4NDJkYjUgcmVsZWFzZTMxLW1haW50Cis4NTg0MyBkMzUxMDBjYzZjNmIxYjQ5MDM1MzU5NTYyYjVhMzZjZDlmOThhMWMwIHB5M2sKKzg1ODQ0IGU1NWEwMGNmNjc4YTdlOTcxZGNiMWNmMDEzZmEwM2E3YzVhNWYxYTggcHkzaworODU4NDUgYjljN2JkY2FhMDMxZDg5MjE2NTRjNjI4ZGRlNmNkM2MwNzViODNjYyBweTNrCis4NTg0NiBlNTE1ZDEyNDE4NTg2ZTUxMzNkYzRiNTk3YzcwNDIwYzQ3NTY5YTY0IHB5M2sKKzg1ODQ3IDMyYzRlOGU5NWNhM2NiNWJmODhkZGRkMzk1ZDRlZWYwZGFjNjJlMzcgcmVsZWFzZTMxLW1haW50Cis4NTg0OCA4NDE4OTJlMjcxZjdmODUxNDFiYWJiZDA2NjliMTIzZDg4ZjYyNWRjIHB5M2sKKzg1ODQ5IGE5Yzc5YTlkMmQ5MWQwOWZhMjg0Y2U0ZjQ5Yjc0NGExZjEyNjNiOTMgcHkzaworODU4NTAgOWRhNWUwNGIwNzkzYjk5MjZmMTAxYThkMDMxMjFmYTY4N2EwODgyNCBweTNrCis4NTg1MSAxMTg3MTU2YTFmMzJjMTE2ZDdiYTRhOWRhNTIzMTRlYjEzZGZiMWY2IHB5M2sKKzg1ODUyIGM4OTJlNDU0N2ZlZGNjOTYyNjVkZmYxYTNhYjZiZDFkOTQzYzk4MzQgcHkzaworODU4NTMgMjlhZjE4MWRlMmYyZDg4ZjM5YTMyMTMxM2RjMWI5Yjg5ZGYzMjA0NSBweTNrCis4NTg1NCBiYTFjNzNlMTZjOGIxZjkzYThhYTVmOTQzMGI1YTFlMzBlM2QxNTdkIHJlbGVhc2UyNy1tYWludAorODU4NTUgZmY2ZmEyMGJkYWY4ZGVjY2M1ZDg0YTYwYmY5NGM1NTYzNmI4N2VlYiBweTNrCis4NTg1NiA5ZTRhMjgwOWU1NWNlMGYwNzQ0M2U2MjgzMzMxMDY5YTVjZTQ4YTViIHB5M2sKKzg1ODU3IDRiNTQyMjE3ZTkzZWQwMTdmNWVlYjE5YzJlY2JmNTdhOGJhMjdlYjcgcHkzaworODU4NTggYmY1ZGE2MzYwNTNhYjk5MjZkYzdhZGJhNjUwYjdhOTY5ZjBjZTRmMCBweTNrCis4NTg1OSA2OTM4ZDdhZDYwZTQxYWU1MDljYWI0Yjk1NDIzYzBhYjQ4Y2Y0NWMxIHJlbGVhc2UzMS1tYWludAorODU4NjAgZGYwMjA5MzU4OGQ2YmMyYTFlZDg4ODBmNWI0ZWIwYTk0NWMwODRhNSByZWxlYXNlMjctbWFpbnQKKzg1ODYxIDRkY2EzZjBlMGZjMDQ2N2Q3N2NiY2U5Yjg2MjllNTU4M2Y2YzI2ZmYgcHkzaworODU4NjIgZTllM2ZlNGM5ZTMwMGU1YWNjMjE1NzM5ZDRhMGJkNzhkYzczMzNiMCByZWxlYXNlMzEtbWFpbnQKKzg1ODYzIGViYjgyZjAxZGJlMjYxMDljNGY0ZGExZGIwYzM1YzE5YzQ1ODEzMjIgcmVsZWFzZTI3LW1haW50Cis4NTg2NCA1OWFiZGI5Mjc4ZjcyMDMyNDM3M2NhMmViMWZmODMwNTA0Y2ExOGNmIHB5M2sKKzg1ODY1IDBkNTBhOTExZDc0ZmU2MmFjMGM2OTViYWU4NTRmZWVlZjlkZDNmMTIgcmVsZWFzZTMxLW1haW50Cis4NTg2NiBhZjA2ZjA5NzJkOTdhNzY4N2M2YTFmMmNmOWY4MDI3MzQ5NjNiMzliIHJlbGVhc2UyNy1tYWludAorODU4NjcgMDUxYWE0MjdkZmVkZmY1OWQyZDI5MDI1NTAxNTRjMjc0MjM3NmExZCBweTNrCis4NTg2OCAyMTRiOTA1MTg0MWVhODllOTdkOTEzMzQwYzg2MmE1MjJjM2Q0ZjdhIHB5M2sKKzg1ODY5IGFkZDFiYzA1ZTQyNjZkYmI5ZDA4NGVkMmQ2OTM4ZjI4ZTI1N2VhYTggcmVsZWFzZTMxLW1haW50Cis4NTg3MCBmNWUzZGU4N2IxNGJmMDQwNzkwYjUxYjA1MmQ1MzhlMDFhNDFhODA0IHJlbGVhc2UyNy1tYWludAorODU4NzEgNjRkZTE3NDZjZDZlMzk2MzIwYTJjOGMxZTE1ZTFmMzk3MzU2NTIyNiByZWxlYXNlMjctbWFpbnQKKzg1ODcyIDNlNzhlZGU4ZmQyMTI0N2I3YWJlYjA3ZDRlYTNiN2EyOWQ0ZTc4NjUgcmVsZWFzZTI3LW1haW50Cis4NTg3MyBlNDQyNWQ2OGRhZGYyYzM4NjQ3NTk4NDBlZjBjNzM3OWNiOGE3N2YzIHJlbGVhc2UzMS1tYWludAorODU4NzQgYTI4MTk4OWEyMThiMGMxZDVlOWZjNTVlNzQzNTU3OWQ3YWNmNThhOCBweTNrCis4NTg3NSAzZmY5OTA4OWMwMmUzMDQ5MTZiYmNjZGRmM2E1YTJjMGQ2NWE4OTAwIHB5M2sKKzg1ODc2IDZkZmY1ODFkMzBmMzgxZmMwOGUzNWQ3NGNkZDg5MDcxNzg3NTkzZWMgcHkzaworODU4NzcgZTVmMjY5ZGQzMThiODdlYTE3ZTYxZTllZTk3MjU3NDA2YjlmMTJhNCBweTNrCis4NTg3OCA1YTg4MmY3ODllYzFlN2Q1OGFiZjFkMGMzOGZkNGEzYTBiZTkwOWQxIHB5M2sKKzg1ODc5IDViMTYzZjJhNjAyYmVjYTMxODIxYjhmZWRhNmU3Mzc2ZmY4NWY3OWMgcHkzaworODU4ODAgN2FkMzVhY2IyMGIwZDQ5OGMyMjAzNTdlZjIwZjg5YjJmYTRhZDBjMiBweTNrCis4NTg4MSAyMTEwZDI2OWE4NmVjMDBlZDM0NWIzZTAwYWY1MGI4NTgzNGMzYjUzIHB5M2sKKzg1ODgyIDczMTIzM2Y5MDQ4NjlkOWY1OTdjNTMzNThjYmYyMGEyNzdkNGRiNDEgaXNzdWUxMDIwOQorODU4ODMgYjljYTEwMmE3NmQwMzM0MzQ0NDlmYjc3ZTM0MTM0ODhiOTNmY2I2NiBpc3N1ZTEwMjA5Cis4NTg4NCA2NmI0NGNjYTI5YmI4MzMwNTA0MmU5MzVjZGMwZTQyZWQ5OTQ0MDg1IGlzc3VlMTAyMDkKKzg1ODg2IGQwN2I5YjBjYWFlZjFlNGE5NGE4Y2E2MGNlOTE4NTFmYTIxOGQ3ZTIgaXNzdWUxMDIwOQorODU4ODcgM2Y3ZDAzNDI5NDkxODZlNTEzMjZkODFjOTY2NmFiNGNiODlhOWE4YyBpc3N1ZTEwMjA5Cis4NTg4OCA2ZjMxZjBhZjUzNTc2NTAwYTU1MjA4YWNiNzNlZmFjZmIwMDNkZWFlIHB5M2sKKzg1ODg5IDViOGU2ODhlYTVhZWRkOWNkNWI5NTA2ZmYwNGVmZWQwYWMxMTVjYmMgcHkzaworODU4OTAgMTVlYWNiNGM1NDIyODMyMWYzODk2MTNiMGQ3MDMxZDU5MmJkZmQ2YyBpc3N1ZTEwMjA5Cis4NTg5MSBkYzA2YWVkOWI5ODQ1ZjBjYzY5Nzg0ZjM0MTg5OTY2ZjkxNDQ5M2ZjIHB5M2sKKzg1ODkyIDUzODNhZThkYjNjZGQxYjVlMDE5NTQ1ZTkyOGYwZTE3ZjI2ZmZkMDUgcmVsZWFzZTI3LW1haW50Cis4NTg5MyAxYzExNGQzOWFlNTI2MmFjNTNkZmI4NTNiZDY0MjhiNzI3MWI5YjdlIHB5M2sKKzg1ODk0IDY5OGQzMGI0NTExNmNiYzQwZDk2ZWRlNTZjMTE5NWRiMWYwZDI2YjcgcHkzaworODU4OTUgNjEzYzdiNTk2ZmU3ODEyZGU4N2I0MDE3ZmU1YzE3ZWJjYWVhZjA2NyBweTNrCis4NTg5NiAxYjdhMDM4NWM2NWY3YWI4ODk3NzMxMzgyZjE1OTMwYmVlN2QyNjI2IHB5M2sKKzg1ODk3IDcwZWJkYmQ3OWEwMmQwODNjZmI4YmI2MTE4Mzk4MGEzNWMyZGI5NmMgcHkzaworODU4OTggYzZkODY0MzlhYTkxODQ1MTg1NDFmOWUwMWRlOTA1NjRiMzZhZDYyYyByZWxlYXNlMzEtbWFpbnQKKzg1ODk5IDQxYTMwMTQwOTI1YmUxMzUyNmU0YjQ4MDAwNWY0Mjc2YTEyZWUzMDAgcHkzaworODU5MDIgYTU2YTJhODAzY2Q3OGVmOTQxN2U5ZDAwNmU0OWJjOTNkZTM3NDcxYSBweTNrCis4NTkwMyBiNjZkZWQ0YmZmMjEzN2NiMmM0YTFhZmU1NmRkOThjYTFlNWFhMzlkIHB5M2sKKzg1OTA0IDZhYzE4NTc2ZThmYTk5NmVhYmZlOGYwZmUxYjdjMjVlYjExZGVmMDggcHkzaworODU5MDUgNjRjZWU4ZDExZjJlOGI4YjY1ZTZlY2JkNzM2MGYxZjdiYTJjN2E1MiByZWxlYXNlMjctbWFpbnQKKzg1OTA2IGU4Yzg0MDBjYWE5OWNhNTdmOWNiZjM2MjM5YmI4YzY5MDJlOGQ5NDkgcmVsZWFzZTMxLW1haW50Cis4NTkwNyA0YWYxNGY5YWE5NzA1NjViMjA0MTJjODI1NzNlNzgzMWM2MjY5OWE5IHB5M2sKKzg1OTA4IDVlNzIwZjlkMWU2YzE5ZDdmYzNlMzMxMGQ5NTJmNTYwMGUzMGEyNWIgcHkzaworODU5MDkgOGM1YTEwMWE2MzU0NTgzNzAzNWVjYjVlNTUxYjUxYWViNmM3M2IyZSBweTNrCis4NTkxMCA4YThmMmFhOWRiMGY5OTBkNWJhNzMzZWUyOGVhNWMzZWY0N2Q3M2JlIHB5M2sKKzg1OTExIDcyMmIyYTRmYWUwZDE5NmY2M2M2MzEwZDdlMGEwZTQ1ZWYwYThiZWMgcHkzaworODU5MTMgNGQyM2RlNGY0MTAyM2M3OTNjYjY2NjhkZTlhZGFkYjg3ZTRmOTg5MyByZWxlYXNlMjctbWFpbnQKKzg1OTE0IDA4NjBiZTljODM0MzNhNjNmOTljN2Y0YmFjNjY2MjBlNGQxNmY5NjYgcHkzaworODU5MTUgMTZiOTI5NzFjMmQ0NDBjMmVmZGFiNTcyZThhOTZiMjkzM2ZhMjI0YyByZWxlYXNlMjctbWFpbnQKKzg1OTE2IDA1MGYwZjdiZTExZTI2MjI0OTkwMTFjMGFlNWY1MDZmODZlNzc4MzEgcHkzaworODU5MTcgZjM0OTg4OGZhZTY0MzljMGJiY2JiMjI3NmRmOWM0MWUyZTA2ZGU4MyByZWxlYXNlMjctbWFpbnQKKzg1OTIwIGNmZjc4ZmZiOTMyYTI3NmZjZDMwZGEzNDgzMzI3YzE4NTI5MjFlZjEgcHkzaworODU5MjEgMGI1ZTZmN2VkZjZlNjJhZmNmOGZlODQ1MTJhZjJkOWMzN2MxYjBhZCBweTNrCis4NTkyMiA4ZTYzMzhjZTA4NDY2NGJlYWM3ZjVlMmU2YTI4ODFiMzQ0YmMzMDBlIHB5M2sKKzg1OTIzIDRhN2EzZTUxY2QyOWEwMjY4YWM3NTFmOTQ4MTlkMzU1MmFjNjAzNGUgcHkzaworODU5MjQgZDE0NzI2ZjRiNDEwN2I1NmUxODhiOGE4MWZhNjcyZDJlYmY3Y2IyNyBweTNrCis4NTkyNSBjZjFkMjczMjFjNzgyMTcyOGE3ZGMwMmZlMTczOTgwNGUzM2M4Zjk1IHB5M2sKKzg1OTI2IDQwNDI3NzYwZTE2Mjk0YWE5NDc0NDYzYWUyNTcwZDU5NGQ0OGIxNGMgcHkzaworODU5MjcgMzcyZDZhZmYxNWJlOGM2NGU2ZTI4OTMyNDE4MmU4OTlhNzE3ZWYxNiBweTNrCis4NTkyOCA4ZmExMzJhM2FmYjViZTlmYTVmOTEzNTNmNmI2ZTc4NGExMGJjYmFmIHJlbGVhc2UzMS1tYWludAorODU5MjkgNWMxM2NkMGY5OWI0NWU0NTk2YThiOGQ4NzNkYWU0MGY1NTE2YzA5MCByZWxlYXNlMjctbWFpbnQKKzg1OTMwIDE1MzJjYTIxYjkyMDU4Njc2NGQ1ZWQxM2NhZTk4OTljOGJiZmM1ZTIgcHkzaworODU5MzEgNjFhOWFlNTIyZGNjYTZiNDk2MDI0OTllODhkYzEzODJmY2RkMWJhMiBweTNrCis4NTkzMiBmM2ExZWFjNjM1Zjk4YzdjZWQ3NGI2MjAxMmQ5MmQwZDllMDJlMDY2IHJlbGVhc2UzMS1tYWludAorODU5MzMgZjhkMzQ0ODQ5NTk2ZTE1MTZhNGJhYjQxODRlZmNmZGZjZGE0YmNhNSByZWxlYXNlMjctbWFpbnQKKzg1OTM0IGE0ZmQzZGM3NDI5OTcwNzY3YTk2MWNlMDIwNzFhZjY2MTkyMGQxMjYgcHkzaworODU5MzUgOGIzMmU0ZjZiZDk5ZDJmYjNkNWE0MmVjNjJiYmY0NjAyOTIyODA5MiBweTNrCis4NTkzNiBiMTgyNzViMTE3ZDIxMGI0MTE4ZDU4M2UwMTU1MDI3MDQxMDk0MGMxIHB5M2sKKzg1OTM3IGEwNjI2Zjk3MjdlMGYyZDA4YTI5NTMzOTc3MjY1ZmEyMDlkODczOGUgcHkzaworODU5MzggNzY1ZDQyMWQ5NDNjNzM1MTRmMGZhODM0YjdlNDlkODYyMjEwNzFhYiBweTNrCis4NTkzOSAxZDU1Y2MyODRkNGFiNWFmZTM3NGJkYWQzZDkyMDA5YTlhODAyOWU4IHB5M2sKKzg1OTQwIDJjMmVjZWQ2MzVmNjBkMGEzYjc3OTk5MDRkNmQ2ODdlYTY4NjMyYzIgcHkzaworODU5NDEgZWI1MGM0OGQ5Y2I0OTA4YWE0YzU1ZGFiM2ZkY2RiNWYzYTJlZTU4MCByZWxlYXNlMzEtbWFpbnQKKzg1OTQyIDNkYTIzZGViNmU5YTUxOWViNmY5ODU3ZGFhMmFjZTM0NTA2MTA3YzMgcHkzaworODU5NDMgZDE2MTcxNGU3YzkyOGM0ZTMzYTM3ZjhlMDI1ZWY0ZWE4ZTY3NGI3YiBweTNrCis4NTk0NCA1NTZmNTkxNjY1NDk5YzI0MjExNDk2N2MwN2ZjODM4YWQ1NzM2YTJlIHB5M2sKKzg1OTQ1IGJlZGVkNDdiYjE3ZjhiMGUzZTA2ZDc3NzQ2NDc4ZTk3NjQzZGZkN2MgcHkzaworODU5NDYgOTI2ZThiNmI2YzlkNmY3ODNhZGYzZjFmN2FlOTJlN2I4MzNhOGZiYyBweTNrCis4NTk0NyBlNzI3Y2YzNTQ3MjAxMDgzMzJmZGNkMDJkY2JmOTNhMzhiODc5OTNkIHB5M2sKKzg1OTQ4IDUzODZmMWY0MjhhMTVlYWI1OGU3Y2IzNjM2MmM2N2I0Mjg1ZmQxYzAgcHkzaworODU5NDkgZjI0YTUzZWRlOWVkOGU4NGNiYzkxNGFjM2FhZTk5ZTk0NDFlNzdhZiBweTNrCis4NTk1MCAxYzAyMGJjZDUwY2Q3ZWI0NTBkZGE2NDMyNWY5YWVlMTFiYjc0MDkwIHB5M2sKKzg1OTUxIDVjMDEzZWMyNzMyN2RkYWY5MTY5M2U5Njk4YmI5YTdjYWM1ZGMyMTEgcHkzaworODU5NTIgZTM4ZDJkMTczMDg1ZmYyODVlYzQ2OWFlNjUwYmVmY2NiMzM1N2NkYSBweTNrCis4NTk1MyA0MGFjNDVhMDkyYjc3ZDRhMTdjMTlmNjQ2MzAyOTY5Y2QxODRmN2Q4IHB5M2sKKzg1OTU0IGM4NWY1MzM5MDY4YTExYjliMTUxMTY1MWE1YTY5NWRjZWFhMTQwOWEgcHkzaworODU5NTUgNjRlZjYxZDlmZmRjNDE0MWNhMjEyMWZlMWJjMmFjMjgzMWM1N2UxNCBweTNrCis4NTk1NiAzY2NjNmFiNTQ2YzNiMTIwNjM3MmEyYWE5Mjk4YmViYjBhODdlYTI2IHB5M2sKKzg1OTU3IDNmZGJjNmE0YjBkMGY3ZDgxMDI0NzExNDVhYmU4YzYxZGQ5ZDc2ZTQgcHkzaworODU5NTggMTg4MzAyOWM3YjhhNzQ5NDE2ZjI0N2NhN2VkYmQ3ZmY2MTRlNzgxNyBweTNrCis4NTk1OSBiYWFkNTJlNzhkY2IzY2EyZjBhN2IxZDg5M2VhMzFkZDA4Y2VlZmNlIHB5M2sKKzg1OTYwIDBmNzY1YzMzZjRkZTI3M2Y4Nzc2NWJkNjM0MjcwMTFiYjU3MjRmMTcgcHkzaworODU5NjEgM2IyMTBkMDQ4ZjVkYWM0OWNkZDE4ODVmZGUwNjczODhkOWQyZjI3ZSBweTNrCis4NTk2MiA5OGNlY2EyNTE5ODhlMmVkMzhhOTZiMjg4ZmNkYTM2MzdlODY2YzJhIHB5M2sKKzg1OTYzIDliNjZhOWYxMzdiNmMwOTg4MGMzYjU1MjEyZmI5YTdhMTI2MTFjNTcgcHkzaworODU5NjQgNjAzMDEwYWY4MGNmMzY3ZjAyMTA1MWZmMmRlNmE4ZDdmMjBlN2RkNCBweTNrCis4NTk2NiA2NGE5N2M0ZWJhZGNmNDk0YjliZjEzYzc4ZDk4NTJlODM4NzVlZjExIHJlbGVhc2UyNy1tYWludAorODU5NjcgMTgyY2IzZjgyYjBiNjU3ODNiZWNkNzA0MjgxZTE0MzFlNjczNWI1YiBweTNrCis4NTk2OCA0ODBlNDU4MjhkNGIxOTEyMGNhZWFlYjlhMzQxOGI3OWYxZDJhNmI3IHJlbGVhc2UzMS1tYWludAorODU5NjkgMGEyZWMxNzRmYmNkNjI4YzEyM2Q2ODk3N2JkMGM1NzViNzdjMTE2NSByZWxlYXNlMjctbWFpbnQKKzg1OTcwIDkwYmM3MWQ2YmVkZmExNzI2M2RhOThiNmFjZWQ3YzA4NWRkNzFhNGEgcHkzaworODU5NzEgMzIyN2I2ZjIwNGNjNGIyNjBjZGY3ZjU4NGQxMjY1MTYwMTA4Njk5ZCBweTNrCis4NTk3MiBhYmJkOWQyNmFlNmM2NGVlNDgzNTNiZGZjNmY1OWNlYjNjNzljMzI3IHBlcC0wMzg0Cis4NTk3MyBlYTdiMjYwMGZkYzU5OGFmMzVlMGQ0MmVhNDQyOTk0OTMzZDYyMjZmIHBlcC0wMzg0Cis4NTk3NSA3MTA5NjhhMmUxNjNiOGQ5NzI0YzQ2ZGIxZjJlNGI1NWE0M2MxNGZhIHB5M2sKKzg1OTc2IDkzNTZkNzY1ZDc4ZTNkMWIwOThmYzMwMTdlM2JkNGE1OGFkYzlhNjYgcGVwLTAzODQKKzg1OTc3IGY5NzIxYThmODdiZDhiZDNkODNkYWJlNTg5OWE2YTdhMjE3NTBkODAgcHkzaworODU5NzggZWY2ZGFkNzUxN2M1YzU0Zjk4NzBhNGJlZjI5NmFlZDNkZTE3NjZiZiBweTNrCis4NTk3OSBlNmFmMTQ2YmIzOGI4ODYwYzQ3MGQ5ZGY0MGE4Mjg2YTE3ZGJmZTRjIHB5M2sKKzg1OTgwIGVhMTQ5NzdhMzZkZWY4OGFiZGQ1ZjVlMGNiNzIyN2Q2MmEzMGQ5MGMgcHkzaworODU5ODEgYjAzNzc5ZjAwNzM5ZDRjNmM5NGU4ZDAyNTdmMDI2MDA4NjYwMmJkNiByZWxlYXNlMzEtbWFpbnQKKzg1OTgyIDgxOWIxZTA1MzVkMTkwYTZkNTQ4NTBmNjlmODNiNzUyZDIxNjY0ODYgcHkzaworODU5ODMgYjcxODBhZmEwZGZmMmY3OGU3NWUwYmQ3ZDFkMDFhOGMxZGZiMDgyNiBweTNrCis4NTk4NCAzNmVhNzE5MDJmYzhkMWM5ODJhYTIxY2E3ODZiYjAwZTk0ZTM5ZjFmIHB5M2sKKzg1OTg1IDM4NTZjNjFiNWM4YmJiZWQzZDM1ZGY3MjE4MjRlOWY0ZTNhMDIyZmQgcmVsZWFzZTI3LW1haW50Cis4NTk4NiBiMDFmYzNhNDJkMzVmYjhiZDlkNGE5NjQzOTIwOThjZjJhMWQ1MTAwIHJlbGVhc2UzMS1tYWludAorODU5ODcgNzJhMmQ0ZDk0MDAzMmQyNTViZTRhOTU4OGM4YzNmOTZiNmNlNzFhNSBweTNrCis4NTk4OCBkNjk4MjA1NTQzYmQ3MTk2MDk1ZjU5YzNiYzVhNDkxOWJkOTE5MzhiIHJlbGVhc2UzMS1tYWludAorODU5ODkgZTIwM2VkMDcxZmNhYjQzNzFjYWMzYTRkMDY0MmU2YmI4MjQ4N2Q3OSByZWxlYXNlMjctbWFpbnQKKzg1OTkwIGI5NDM5NjVmYzQyYmM5MWY3MGYzZDJmODhlZDY3MzI5N2UwYWEzMzYgcHkzaworODU5OTEgOGQ4MjQzNDgzMjI4YzAzZmRlOWM4NTZiMTRmZWMyOTJhN2FhYTljZCByZWxlYXNlMzEtbWFpbnQKKzg1OTkyIDI0YjE4Y2Q0ZDVmMzU0OTcyNGFkYmJmZDczYmMyZDVlYmRkOWFhMmYgcHkzaworODU5OTMgNDJhZDRhZTZkOGVlYmI2YjI0MGE5NzVkMmYxYTA2NDJlOTYzZjNiNSBweTNrCis4NTk5NCA2MjRlODMxY2U3MDAyOTFmZThlMTNjZDI2NjU4YmMzN2IyZTI2ZDMyIHB5M2sKKzg1OTk1IGNlNTNmZWE3Zjk1NzNmOGFmZThiNjY1OGJkOGY5MDdmN2FlZWQ2MDAgcHkzaworODU5OTYgNWI2MjcwMzVhOTIyZjdhNDEyMTU1ODgzMzliNTJlZmZiYTY4OTE5NiBweTNrCis4NTk5NyA5MjUxYmEyNzJmMmNhMzNmMDhhYmM1MWE4ZThhNTI2ZWQ2ODZmYzg2IHB5M2sKKzg1OTk4IDBiYzJiMDY0MDZmOGJlM2EzMTYxMjRlODM2M2FiM2E5MmU5MTQ2MWEgcHkzaworODU5OTkgMTk1NGM4ZTMxY2IzOGE4OWQ2N2IzMTVjNDY2MzM2YTkwZWU1OTJiMCBweTNrCis4NjAwMCBmMTgyNTE4ZjNmNDI4Y2NjZWYzNzhjOTc1ZjQ0MjQxMWZhMjRlNDVhIHB5M2sKKzg2MDAxIDcxZjRmM2IxYzMzNTZlZWM1YzhjYzVlMTZkMmRjZTBiM2ZmYTYxZjcgcmVsZWFzZTMxLW1haW50Cis4NjAwMiA5ZjEwOTY4ZjUxMWQ3M2YxYmFjM2Y5Mzc0NzM2NDk4YTZmZDVjYzkxIHJlbGVhc2UyNy1tYWludAorODYwMDMgNzM2ZjNhMTBkMTczMzEwMzI3NWVhOTAwNWE1ZjAxZGQxNDI0MzdkMiBweTNrCis4NjAwNCAwNmUyMTUwMDExOWEyOWNlZjA3MWZlNjdiODhjMmYyYTkxZDE4ZmQzIHJlbGVhc2UzMS1tYWludAorODYwMDUgNzMyZmZhODZjNzk4YTlhZTZiYzI5ZTdiODMzYWNlMmMyNGE3OGE2NSByZWxlYXNlMjctbWFpbnQKKzg2MDA2IDIxMTg1ODcyM2I4Y2E5NGI1N2ViZDYzNjY4MTg4ZTAwZDBiOWI5ZDEgcHkzaworODYwMDcgMmUxYWQ3MTIxZTI5N2YxNzZhYWRhMmQ2MWY0NGFhMGEwODUzNjMxYSByZWxlYXNlMjctbWFpbnQKKzg2MDA4IDQ1OWU5NWI2OTMxYmU0M2EzMjAzZGUxNTRhZjQ2OTk1OGI0ODlmYzkgcHkzaworODYwMDkgODc3MDljNmU1NjkwNTczN2IxMDk5ZTE2YmM4Y2Y2ZmI2MTk0NmViMCBweTNrCis4NjAxMCA5MGJjMGM1ZDcyMmY3NzRjNTQ4OGFkZDZmNWM3NTJjODk1NmQ4OGVkIHJlbGVhc2UzMS1tYWludAorODYwMTEgMzA1ZTkzZmQ1YjZkNGFlZGI2ZjM1ZDdjZTFmMzZmNjI5ODI1NzhlYyByZWxlYXNlMjctbWFpbnQKKzg2MDEyIDNhNzU1OWJhOGViNTkyMDM2YTJhY2UwZDE4MzZkYmQwMTJjNWRlNzkgcHkzaworODYwMTMgNDlhMzFhZTAzNDhhNThjMTRhM2RlMjExZTFlZWM4ODE1N2UyMmFjNyBweTNrCis4NjAxNCA2MTJhYmIxZTc2NzYyMWM3YjZiMjdmZGM3MTA0MTA5NDFmNjZjNWI4IHB5M2sKKzg2MDE1IDhiZTA4NzYxZGRjMGJlNTdmNDU0ZGZkYjMzMDYwMTc3OTBlOTlkNjggcHkzaworODYwMTYgOTdmMzJiYTVmZjg1NGE2YWJkMmVmOTM3Y2M3OTlkNTI5NjVkNDc3NyBweTNrCis4NjAxNyAwZWU4NmZkOTAyZjFlZjM1YmRlYTY0YTM5YzM1YjlhNjlmZWFmNjRkIHB5M2sKKzg2MDE4IDBlYzMxNzBmYWE5NWU1ODJlNWYwYTk2NTE3MGE5MzQxYzI3NzUwNWQgcHkzaworODYwMTkgYWY5ZjllZmNiYjlkYjY0ZDY1YTNmNDNkM2E1MDVmZjI3MjM2N2Q0ZSBweTNrCis4NjAyMCAwODVkZTk2MDNiNjI5ZmYyMTQ1MGUwYTYwMmZiOWU4ZGQxNjkwYTRmIHJlbGVhc2UzMS1tYWludAorODYwMjEgNzYwOGRjYWY3ODZkZGRkYmZiMGRmMDdkMzc2N2JmZjQyMDlhMDUxZCByZWxlYXNlMjctbWFpbnQKKzg2MDIyIDk0YzVhZDk4MWMxYjdmNjFhMzUwYzE0YWY2NDA4NzYwZjAxZTAxZDAgcHkzaworODYwMjMgYjQ4MTk4MzhlYjViNzNmMjE0MTRkYTk0YzE3Zjk0YjEwZjkzOTVmMSBweTNrCis4NjAyNCAyMTg3MmMyNGEyNWI5MDljYjQ0ODIyMmE0ODJkNDUyZmQ1ZWMyODcxIHJlbGVhc2UzMS1tYWludAorODYwMjUgOWUyOTFiZTQ4OWNmNTUxNGZiNDI3MWI0YjIxZmY2MmQ5MzMxMzlmMSByZWxlYXNlMjctbWFpbnQKKzg2MDI2IGZjODY1ODYxOWJkZjQ5ZGVhM2NhNDE5ZmFhN2UzZTBiNTcxODlhZDIgcmVsZWFzZTMxLW1haW50Cis4NjAyNyBkOGQzMzY0OGQxYjJjN2U4YmEyOTQ3ZjY2N2VjNThlN2RhZTkxMmJhIHJlbGVhc2UyNy1tYWludAorODYwMjggYzk4MjA3MzE4ODNkOWJkNGZmNGIwYTBiOTFhYTMzNTkxNGZkNjM0NSByZWxlYXNlMzEtbWFpbnQKKzg2MDI5IGYzYWZhMTBjZTc3NzE5ZTNiYmRjMDJhODE3Y2RlMzY2MTMwZmJkODMgcmVsZWFzZTI3LW1haW50Cis4NjAzMCAxMzFlN2NjOWU0MTZjZDYxODgxZjkwM2IzY2JjMWNhNmMyOGE2ZGY5IHJlbGVhc2UyNy1tYWludAorODYwMzEgMzJjMTkxYTVjMWNmOTQ5NWJkYTBmYzQ2ODgxY2I0MjJmNTc3OGY3MyByZWxlYXNlMjctbWFpbnQKKzg2MDMyIGI4OWIwYzdmMzcwOTRhMGI3MzNhMDk2YWQ0YTQ4NTk2NDgzZjM5ZTkgcmVsZWFzZTMxLW1haW50Cis4NjAzMyBhZTA2YzA0OGRlMjQ3MjgwNDMxOGU4ZWI1MDYwZDEzNGJiZjBmOWZhIHJlbGVhc2UyNy1tYWludAorODYwMzQgMzIxN2IxMGY4NDEzYThhZDc5OGNhNzA5NjkzNjAzZTM0Y2NhOWUxMCBweTNrCis4NjAzNSA5YjgxNDI5NjIwZjRiNzc0NWVlYjNkYzJkYjZmYmQyNjlkZDg0YWQ2IHB5M2sKKzg2MDM2IDQxMjdhYjFmNjMzOGMyYzgwZTQzNTY3NDI2ODhjNTdiN2Y1ZjVjMzIgcHkzaworODYwMzcgOTdkZjVkZGU5ZjgxYmE2ZDRlMjdiYTRlMTY4MmVkYWZmZmYyMTgzMyBweTNrCis4NjAzOCBhNjgzMGNjODIyYWFiZTMzM2Q5NTI4NjdmZjk2NzY5ZmYwNDQ5NzlhIHJlbGVhc2UzMS1tYWludAorODYwMzkgMTQwZDQ3MWIwNjFhNTNkMTcyZjllNDJhNjIwMzYxYjcxMTRmMzczMyByZWxlYXNlMjctbWFpbnQKKzg2MDQwIDc1YWMxM2ZlN2RhMDNiYmNhNGMzM2U5MTBiOWViMmIwZDJjYjM3MzAgcHkzaworODYwNDEgNmZhNDhmYTJhODY1NjhjOTU4MzUyMzJmYjc5MGUzNjUwNDFjZTNjMCByZWxlYXNlMjctbWFpbnQKKzg2MDQyIDk0NDMyZTRjZGRjZjYyNDFjOTMwM2QwODc4NjhmZDY0MzQ0ZGEyMjIgcHkzaworODYwNDMgNWM1YjdhOWJhYzA1YzY0NTljZThkOTI0OGE2MTQ3ZjE2YWRmNDEyYiByZWxlYXNlMjctbWFpbnQKKzg2MDQ0IDQ5Nzk2NGNmOWU1OGU2MGJhYjdmYjFkYTk4MTk5NDFjNTA1NWE3MDEgcmVsZWFzZTMxLW1haW50Cis4NjA0NSA1YmRjMGQ2YzY5MzkzM2JjODNkOTJmMGQyNjUxNGE5ODQzY2VmZDE5IHB5M2sKKzg2MDQ2IDU3NTc5NDI1OTNhMGViYjUwNzlmYTIxNmMxMzA2ZjdlNDI4MGJkNGMgcHkzaworODYwNDcgZGUxZTVlZWE3ZTc1ZDEwNWJlMDhhYzRiYmYyYzIwMDkwZTFmMzNmNyBweTNrCis4NjA0OCA3MTllYmNiOTM0ZjNkYzQ0MDE1NTY2NjhjMWFlNWMwNzYwNmY5MmE2IHB5M2sKKzg2MDQ5IGJjNmNjZTRhYjNjNjM2NzcwMGY5ZDZhZDJhNDhhZDllMjlkOWIwNmUgcHkzaworODYwNTAgMDAwNWExODFkMTBiYmI5NGZhMGUxMjJkZmI5Mzk2MzllNDE2NzM5OCBweTNrCis4NjA1MSBlYTJjMmZjMDE5ZDY1YzQxM2JlMWI2MmZmZWQzYzE0MzVhZGQ4MTc4IHB5M2sKKzg2MDUyIDQxZDVkM2Q3ZGEyMThmOWEyNGU3MDM5ZWJjNmY0ZTJhZjI2ZDM1ZTggcmVsZWFzZTMxLW1haW50Cis4NjA1MyAwYTk0OTIzNzgzYTQ3ZDQwMTk4ZTQyNTE3MzZlNmY4NGI2OTU0ODgxIHJlbGVhc2UyNy1tYWludAorODYwNTQgNDNhY2M5NTQzNDE2YjQ1YjA1MGJmYTg3ZWEzYzc3OTk3MzhkMDkyNSBweTNrCis4NjA1NSA5MTAzYWE5YjI3MDRjOWI1OWNjMzBlYjhjNTZmMjdjZjg3ODdhMjkyIHB5M2sKKzg2MDU2IDA1OTlkMjE4ODgzN2VjNDIxZjA5NTZkZjk3ZmNmZmJlYmM5MmFmOGMgcGVwLTAzODQKKzg2MDU3IGZlZGRiOWE4M2FlZjFjNmFjNjgxNTNjNDgxNDY3ZTFiNWQxNzkyMjYgcGVwLTAzODQKKzg2MDU4IDA4OTJiMmMzNjM2ZDllMGMyOGMzMGViNzZmMzFmN2YwODQ5M2FiMjEgcGVwLTAzODQKKzg2MDU5IDk3YjlkNDA4ODkxNGUzODRiMWIyM2EzMWViMWVjZmJmMDQzOGRlNDIgcGVwLTAzODQKKzg2MDYwIDEyNDMzZTk4OWQ5YzkwMTllNzNkM2FhZjEzY2QwY2RjMzYyNjMyYzcgcGVwLTAzODQKKzg2MDYxIDM5MzNhYjZmNmY3YWM5M2Q5ZTc4ODlmNWY3YWIyNDllYTBhNjI1YWQgcHkzaworODYwNjIgNTNiNTFmNWU5NWM0Y2NiYTM1NWM1NTIxN2FkMTJkOTU5YTcwYzA1NyBweTNrCis4NjA2MyBkMGYxY2ExYTgxMzkxY2QzMzI0ZGFiOThhMmU4MGU0ZmRjMzgzOTdhIHB5M2sKKzg2MDY0IGI2NDI0NDFkYTFlYTU5MGZiMjcwY2M0MjM5YWYzMWIzNWMwNTU0ZDUgcHkzaworODYwNjUgZWFhNTA3MjUxMjJiNjZjNTkyZTMzZjM0ODFjMzlkNGI5MmQyZTNiOSBweTNrCis4NjA2NiBhMmNlODIxOGUwMjkyZGNkYmM5MzE3M2FmZDdlN2EzYjRmY2ViOTYzIHB5M2sKKzg2MDY3IDY0NzA1NjYxOTZiM2QzNWQ1Mzg3ZjYwMTk2Yzk4ODc1ZjdhZjhiYWQgcHkzaworODYwNjggMGEzYWU0YTI1NWRlM2FiNzU1MDVlMWZjODRkMDAyOWUxM2MxNTY4NCByZWxlYXNlMzEtbWFpbnQKKzg2MDY5IGZiMTJlZWIxZTdhOWJhMjE4ZWE5ZWU1ZmNlNWZhOWYwOTc5OTVkYWEgcmVsZWFzZTI3LW1haW50Cis4NjA3MCBkMGIyMGE2NTIxZDIxNDZlZDU4N2JiNDlkMjEyY2I1ZjBjMzEwNWFhIHJlbGVhc2UyNy1tYWludAorODYwNzEgYjVlMWU2ZjMxNDM3ZjJjNzU2YzY1NWQ4N2FiN2EyNDU5ODQ0YjIwOCBweTNrCis4NjA3MiBjODI0ODc1MTNlNzY5MDZhYjQwNzAyMWM5ZWI4MTA4NmI3OTgyMTk0IHJlbGVhc2UzMS1tYWludAorODYwNzMgZmYyYzVjOWMwNzliYTA2YzNlOWE3NzM0Mzc2NWM4MTFmZTczOGY2MiBweTNrCis4NjA3NCA3ZGMxMzZhMDEwMTM3MDY2YjJhOGY5MTVlMTVlOTMzMjdlNjlhNmE5IHJlbGVhc2UzMS1tYWludAorODYwNzUgNDUxYzliYjc1MTU5ZTQyYWZkOTIxZjg1NTk2Zjg3Yzg5NzUwMTg0NiBweTNrCis4NjA3NiA3MjBkNDVhNmUzMTY5ZDZiNTVjNjJmZDk1MGZlZDZiNzQ1ZTY4YjRmIHJlbGVhc2UyNy1tYWludAorODYwNzcgZmUyZDE5YjJhNWM2ZDJkZjhmOGIwYTUyYWQ4ZjU2OWFmOTQ2ZGFlMyBweTNrCis4NjA3OCBiYTJhZTA5N2Y1Njc1MzEyYjA5ZTFkYWEzYmM2ZGZhMDU2ZGNlNjhlIHJlbGVhc2UzMS1tYWludAorODYwNzkgMjA2ZGVkOTQzNTM0ZDM2YjY1ZjQxMGIzZGM5MDhjYWExOTliODU2ZiByZWxlYXNlMjctbWFpbnQKKzg2MDgwIDhlNjU4NDlmNzFmNTA5MzhlNmRmZmM2M2U2MjNjMjI5Yjc3Y2VmMWQgcHkzaworODYwODEgYmVlZGM3ODU2ZjViMTM5Mjk5Yzc2MGJmNGE5MDk4MDk2ZTBkMGQ3MSBweTNrCis4NjA4MiA5ZDExMzNjMTg2M2U0YzA2NmMxNDgxYjRkNTlkNzdjZmQ4YjI2NjQxIHJlbGVhc2UzMS1tYWludAorODYwODMgOWRiODU3OTYwNDAyNzIzNWZkNjdhMzU5OGM2NDY2MjEyYjZhNDA0OCByZWxlYXNlMjctbWFpbnQKKzg2MDg0IGYwMzAwNTg0YzgyNDQ0YzhiYmZhOTNmZWE3YTYxODMwMTcwZDk5ZTAgcmVsZWFzZTI3LW1haW50Cis4NjA4NSBlNWRiMzJmNGY0Y2Q2ODJhMjdmODM3YjU3Y2YzNWE2ZmE4NGQwZTkwIHJlbGVhc2UzMS1tYWludAorODYwODYgZTcxYzJlMWRhZjU3MGJmYmRjNGNhOTdiZWIwYmYzZTVhODhlNTQ3YSBweTNrCis4NjA4NyA0OTNhMmQ0MDdjOTQ0NjgwNjFmZmRiNzIyMjZkNWU0MDM5ZDU0MDEwIHJlbGVhc2UyNy1tYWludAorODYwODggNDNkMmQ1YWZiZjczOGI1OTE0MzNmMDg4NTVlZTQzMGE0Yzg4NWIwZiByZWxlYXNlMzEtbWFpbnQKKzg2MDg5IDdjNThmYWYyMmU5ZjJlYzU3Nzk4ODRjZmI4YTA4YjRjMWQ5ZGY3ZTIgcHkzaworODYwOTAgY2I5ZTEwMDM0ZTRhNjVlYzI3MWRlZTBjMDMzMzQyY2FiN2M0NTUxMyBweTNrCis4NjA5MSA4NDg5MTI3ODliNzk0YWI0MDVlYTkyNmJlMjRlMjY4ODJiNjA2ODI1IHJlbGVhc2UyNy1tYWludAorODYwOTIgZDhhYjM1ZWM0ODZlOTA4NjYzYmY4OGVlMDU0ZDAwNWExMjM5YWVlNCBweTNrCis4NjA5MyA1OTUyYjkzN2FiOWEyOGIyMjI1ZDNjOThjNmJlZmEzZWQwZjhkYWQ1IHJlbGVhc2UyNy1tYWludAorODYwOTQgYjNjMDk4YzNhODI2NjlmMjE5NGUzYjM5YmYxMzBjNjI3MjBmNWM5YyBweTNrCis4NjA5NSA2MjFmM2U5YWNlZGRjNWU3OGQ2OGY4ODkyNWFlNjNiOWUyNTkwYTk5IHB5M2sKKzg2MDk2IDM1MjBmZWE1ZTkyMmViN2EzMTA3YmI1NWZiMTdmM2ZjYWY4NjcxMjEgcHkzaworODYwOTcgNTIwODRlYTYzYzQyMTIxYTk3YTQ1ODliMTJmYjA4YWQ1NzI3MTVjMiBweTNrCis4NjA5OCBjNzkxZDAyNjEwMDYyNGI0MzExNjMzMTFjNDA4NmMyOGQ1ZWIwOGEyIHB5M2sKKzg2MDk5IDUzOGY0NGIzMmIwYThkYjk5MDY3YTI0NmMxMDY3OWU0ZjM0NzM5MTcgcHkzaworODYxMDAgZmY4MTY4ODlhYTYxZmM2MjI3YWU4NWRhODlmMDQzZDk4ZDRkNzAzNiBweTNrCis4NjEwMSA5YzdhZDBlZDY2Y2JlY2FkYjU2YWJkNWZkNmZlZjUyZTZhOTc2YTUzIHB5M2sKKzg2MTAyIGJlMWQ3ZjYxOWZjMGYwMDYxZjg2ZjE1ZWU3NGYyODI5YWYwNDY3MmIgcHkzaworODYxMDMgOGUxOWZmOTY0Y2M4ZGExNjIwYjU4N2U3ODIzYjczNzMwYjg2MGRmYSBweTNrCis4NjEwNCA0ZWE5NGM1ZjZkMTAyNTI1NGQ5NzkzZWU1YmVlYjA1NzQ5ZDk5ZTNjIHJlbGVhc2UyNy1tYWludAorODYxMDUgODg5ZmQ4ZWNiZmY0MjQ0OWRhNTNmYWQ2NGJlYjEzN2UwM2U3MjQxNiBweTNrCis4NjEwNiBhMzdkNmQ4MWY0YjFlOWQ1YjhhMDRkN2E5MDY2NDk0MzYyNDdhN2IxIHJlbGVhc2UyNy1tYWludAorODYxMDcgYTYzOTU5ZWVjOGZmNGFkZGJiODk0OTY0ZDMwMGJmOThlNzJjNTBjMyBweTNrCis4NjEwOCBiMzQ2YzhkMzNlNTYwMWVjN2EwOWI5NWI4YjlmNjQxYTM2NjI4YzhlIHJlbGVhc2UzMS1tYWludAorODYxMDkgZGViMjNjYmFiNWFiNjIzNTM5NTZlNjA4MzkyYjBjZTZhM2MxNzAyYyByZWxlYXNlMjctbWFpbnQKKzg2MTExIGZmNmYzOWIzYzM4ZTQ2YmQ1YTUyNGI0NjQ2Nzg2Y2NkZTFlMGFlOTkgcHkzaworODYxMTIgNTczZGIyYWYyZGRhNzRmMjMzN2RjYWU0N2RkMWNiOTlhZmYxZTViNiByZWxlYXNlMjctbWFpbnQKKzg2MTEzIGYzYjcxODgxNzFjMDJjYjVjZDdhN2Y3OTYyNzQ5OTRlZWRjMTNmM2IgcHkzaworODYxMTQgMzY4NzJhMGVkOTQzMzVkODA4MDAxYTIwMzUxZjEyNTNmY2RmMDNjMCBweTNrCis4NjExNSBkN2VkZDE1YmEwZjJhYzEwNGYzNmM3M2U2N2E2NjQ4ZGRlM2NkMGY5IHJlbGVhc2UyNy1tYWludAorODYxMTYgMTU3Njc5MDJiNTQ1ZmM3YmM0MmJiM2ExYThiNTk2YjgxOGNkYjRlYSBweTNrCis4NjExNyA0OWYxOGE5NTMzY2RlMjYyMDhlMDdlNWJlZTE3OTZiZjAxZTE5MjBhIHB5M2sKKzg2MTE4IGVkZjQwNmVhYjFkYjdmYTJlMDM5YTRhNTZmNmEzMTU5MjI0N2I3ZTcgcHkzaworODYxMTkgNmVlZDBmYzE4ODE4YzEwYTY1MzZmOTI2ZjViN2RhMmZjODMzYWMyMiByZWxlYXNlMzEtbWFpbnQKKzg2MTIwIDRjY2QwNjhjYmEwYzliMDIyNmIxMWU3MjJhZDM2ZGI0ZTljNmZlYTAgcmVsZWFzZTMxLW1haW50Cis4NjEyMiBmNGY3OTU1NmE1MjJlMDRmMDYzOGZhOTM4YmM2MWUxZTYxMzg5MzUzIHJlbGVhc2UzMS1tYWludAorODYxMjMgMDA0ZDVmMTY1NzM4ZGVjYzBjZjJjY2MzODFmNjMzYzQwZmNjMDQ1ZSByZWxlYXNlMjctbWFpbnQKKzg2MTI0IGEyODU4NDNlOTU4YTRjM2E3N2MzMzUxYzIwYWJhZDM0NDNlYmRiOTEgcmVsZWFzZTI3LW1haW50Cis4NjEyNSA0NTc3OTJhZmRlY2Q2MTBiZmJiZTJmZGMwOTk3OTRlNTNkM2QwM2Y0IHB5M2sKKzg2MTI2IDIzYjQ5Njc4NDAxZjE4MTcwYWQxZDQzZjQwZWM4OTIwMzUzY2MxZmEgcmVsZWFzZTI3LW1haW50Cis4NjEyNyA1M2ZiOTkxNjMyN2UwZmViZDU0ODA4N2U3MGQ1NDQyNjJhNjE2MmM2IHB5M2sKKzg2MTI4IDEwOTUzODcxNmM1OTFkMTYzMGU4OWY3ZGZlOTVjZTk0ZGIyYzJjMTIgcHkzaworODYxMjkgMGNlMGY4ZWJkZDI5ODUyMjM4MjMyMzdkNTE5ODdkNDYxYTc3ZmQ5ZCBweTNrCis4NjEzMCAxOTEwNjdmNDlmY2EwNTUyZjI2NmU2YmM5NjcxNjhlZDdjNTM0NTY4IHB5M2sKKzg2MTMxIGY5ODBmOTQ0YmUxOTM1NDI2ZDRmNGRmMTRjNTY2OTVlNmZkYTA0NDQgcmVsZWFzZTI3LW1haW50Cis4NjEzMiA2ODM0MWY5YzU5MzczZmJlODZiZWIyZWM1ZjZkZDk3ODJiZmUwZGNmIHJlbGVhc2UzMS1tYWludAorODYxMzMgMjY5NzMyNmQ0YTc3ZDNlYzg3YTkzNTk5MDI1MjI0NDgwNWExY2Q1OCBweTNrCis4NjEzNCBhOWRiYzg3YTNmZjRhY2E3NDc2MjY0MjY2NWExNDJlZTdhZWFjYWIxIHB5M2sKKzg2MTM1IDZkMjBkZGU5NjA5YzkxZTdlZjZiMzAyMDFhMzA3OTJlMzc1MmQyZWMgcHkzaworODYxMzYgYjk2ZWRiMDJlZjYzMGY3MTlmZTlkNjYzYTRiMmRmMDU2OWFlMjUxOCByZWxlYXNlMjctbWFpbnQKKzg2MTM3IDJkNDIyZjEwMDIyZmYwNzE0NzdiNGFmNTFiMTg2ZmJkYzY3YjI4NDggcHkzaworODYxMzkgNThlNTRmNTYzZGU3Y2YzZDQyYTYwYWNmMjBkYjQ2MGE1NDk5YzI3MyBweTNrCis4NjE0MCA4YTRlMjYzNzk2YTNlNWZmNTk1MjI2ZThjYTE2NTgzZTgxNTMxY2UyIHB5M2sKKzg2MTQxIGI4YzIwNmU1ZWQ0NGFjZmQzYzcyZWUyN2VmM2JiOTM1MzgyNWM0MWYgcHkzaworODYxNDIgOGVmMzI5NTVhMzQ5NGU5YzZjNGY5Y2FiZTgxMjBlMmY0ZjljOWRkMyBweTNrCis4NjE0MyA1YjA2NWNmNjBkZGUxMmEwNjlmOGZmYWRlM2UwYjQ2ZDc1NDE1NmNlIHB5M2sKKzg2MTQ0IGYyNTUwMTJiMzQ2YmM5NGExNjA1OTVkODAwYWI3YjFhM2M0NzMxZWQgcHkzaworODYxNDUgNjcwODVmMjAyMTQyOTEyMmZhMTJlZGFiN2YyMjhhMWQ5MzcyZDBlZCByZWxlYXNlMzEtbWFpbnQKKzg2MTQ2IDE0MmQ1MzkwYWM1YzZhMDJhYWIyZjljNDIzNjhlM2VjOWEzNTk3MTQgcHkzaworODYxNDcgNGQxYWIyZDI1YmFmNmQ4ZWM0YmI5NWJmYTg0MWE4MGE0MWVmOThkYyBweTNrCis4NjE0OCBkYzMwMzgyYmE4OWExMzA3Yzg0MGM1ZDljYmE5YTMwM2U5YmRiOTMwIHB5M2sKKzg2MTQ5IGYyOWY2MmMzNTdlMTRjOTVmZDI0NmE4M2M4NjA2NzAzNWQ3ODc4MjkgcHkzaworODYxNTAgODFiMGU4OWUzZGYzY2Q5NDNhZmY0MWVjNWQ3Yjc4MTQ5YzJkNGUzMSBweTNrCis4NjE1MSA4YTVmMDg3M2Q3MzgwMjE5ODViYTZlODI0NDk1NTU5ZTIxNGJkYjIxIHB5M2sKKzg2MTUyIDhkNjU5YTU0NzljYTg0ODkzYTM5ZmZhODQwMTk4ZDU2MzVkNWNiMDYgcmVsZWFzZTMxLW1haW50Cis4NjE1MyA0NjI0MWEzNWI1ZmM1MDdjM2RmMjY2ODZlOTE4NDc5YzcyNGYyOGQ1IHB5M2sKKzg2MTU0IDI5OTczNWU1ZmQ3ZjkxMTRjMzNhYmUyZTUyNzU4NGE3MWE0NDBhYjYgcmVsZWFzZTI3LW1haW50Cis4NjE1NSBjOTY3MzE0ZWY2MWU3M2YyZTc2YzRlZGZiNDEwZmNhYjdkNmVhMjQzIHJlbGVhc2UzMS1tYWludAorODYxNTggNzFhYzUyM2E2YjEyMzg0MjIzZTg3YjQ2ODQxM2E5NDc1YjMwZjJkNSByZWxlYXNlMjctbWFpbnQKKzg2MTU5IGUxYjYxYjA1MmM2NmJkM2Y0YTA5ODEzMmI0MTAyNjA2NjIxNTY0YjAgcHkzaworODYxNjAgMWU0ZDQ2YTYxZmJlZWVlYjNlYjQ1MDkwZjk4ZWE2YjdlYzg2YTMxMyByZWxlYXNlMzEtbWFpbnQKKzg2MTYxIDg0NGVjZTM3Mzc2NDE0Y2QzZjU4NmEyZmQxOTA1Njk3YTg5Mjc1MWYgcHkzay10dGstZGVidWctb24teHA1Cis4NjE2MyA3YzVkMWRjZTM5ZmFhYTZjMGMzNzAwYTBkOTM2NTI4NDdiZWVkMjc4IHB5M2sKKzg2MTY0IDUyMzFhNWEzN2E3YWNmZTg2NzNiMTI0MThhNjU0ZjkzM2ZjNWJmZDYgcmVsZWFzZTMxLW1haW50Cis4NjE2NSBiZWJhMmRlMjAwZGQxNjVlMmEzM2M0ZTUxOWZmOTg3ZjQxNzQ3YjQyIHB5M2sKKzg2MTY2IDZlMDdjN2U0YzdjY2E5NDg1NjVhZjA5ODY3ZGJkMGZlYzExNDI0NTQgcmVsZWFzZTI3LW1haW50Cis4NjE2NyBjYzdhODhlMDg4OTkzOWFhNjIwZTI0NzA3MWRiNmQ1M2QyYWYwMjQ3IHB5M2sKKzg2MTY4IGZmNjU4NWEyYTI0MzJjMWFhMWNmNDhlMTUxNGFkNTdlN2ZjZjYzM2QgcHkzaworODYxNjkgNjYzMWU1ZjZkMmNlZTQyMmUzMmNhMGM3ZGJjNzdmZjZkNjAyYzY2MCBweTNrCis4NjE3MCAwNWVlZDlmMGNlMDE1NTI2MDhlYWIwZDY5YzAyZjNjNmU1N2YyZjJlIHB5M2sKKzg2MTcxIDQyOTRlMmMwMDI0NTQwMDFkNDc0Zjk5NjRkOTFlNDY4NzhjMmJhYWUgcmVsZWFzZTMxLW1haW50Cis4NjE3MiAxZjQ1YmZiOTg0NzM3MDE3YzJmODc0YzY0YjIwMmRiYzBhMmYwOTg4IHJlbGVhc2UyNy1tYWludAorODYxNzMgZGRmMDAwYWVmNWIwN2E0NGVjNGRmYjk4YzM5OWNjOTUxNzY4MGRiZiBweTNrCis4NjE3NCAzMjkyY2MyMjJkNWNkODYxMzNkZGVkYTU0NWU4OWUzMzI0MGFkNWNmIHB5M2sKKzg2MTc1IDI3MGI1MDI5NmVhOWZiMGVkMDc1Yjg3MzFmZDQyZDYzMWM5NTExOTEgcHkzaworODYxNzYgZWE1YWVmMzJhMTdmMTczNmM5NjRlNDVhZDYwNWE0OWNhMDFkZWQ4OSByZWxlYXNlMzEtbWFpbnQKKzg2MTc3IDRiYjljOTc0ZjUxOTg3NmM3MDA0OGE2MTM2YjE0YTliZTZkZWZiZWIgcHkzaworODYxNzggNGVlNjgyZmJlYzMwZGJiMTQ2NDJiZTJiYzA2NTA3ODU1ODRhZmQ0YyByZWxlYXNlMjctbWFpbnQKKzg2MTc5IDYyYjNhMGE5OWIxOWU0YTZkNTY3ZWQzODk5Y2Q4YTg2ZDIwM2E1YTkgcHkzaworODYxODAgMmQ1ZGJkZTY0YTM1OGIyNjk5MzQ1NjQ5MTE4MmUyM2I4MWJmMTYwNCByZWxlYXNlMjctbWFpbnQKKzg2MTgxIDQ4ZTU1NDllMmMyNTg5ZjNkYmIxYzBlNTEyOGE2MmM1OWM5NDdmNzggcmVsZWFzZTI3LW1haW50Cis4NjE4MiA3YWI3MmJhMzhmZTAyZTEyYjE0ZDhiMTc4OTAwOWNkZTlhMGJiNDZmIHJlbGVhc2UzMS1tYWludAorODYxODMgYjgzNmYwNDc1OWNkMzYzM2ZhZjYyZmY1OGM5NGM1NmYyMDU1MzE5OSByZWxlYXNlMzEtbWFpbnQKKzg2MTg0IDk0N2I1YWNjNjRiZDkyN2U0ZDA2NzYyODBiMDhjYmE2YTkzNzQ3ZDYgcmVsZWFzZTI3LW1haW50Cis4NjE4NSA2ZTFhZTMyM2ZkZTYyNmI2MmZjYWIyZGFmMmQ2MWUxZTdhNWYxYzRkIHB5M2sKKzg2MTg2IDQzMGQ1MGUzYWM1MzFhNGYzOGIxMjBjYThhN2Y3M2E4N2E4NzhiZmYgcmVsZWFzZTI3LW1haW50Cis4NjE4NyA4Y2Y4YmI1ZGM1Zjg2ZWEyYzAxMWM5NDA5ZTY2ZTAwNGY1Njc0NWM3IHB5M2sKKzg2MTg4IGVjOWRkOTczNTMyZjNjMDQ4MjkwN2FkNGRhMjM1YzIzN2NjNzUyMjggcmVsZWFzZTMxLW1haW50Cis4NjE4OSBiYjY2YTRmNWViYzJhYmE4NTU5YjAxMzg1OGE5NjNhMjg5YzI5ZmJiIHJlbGVhc2UyNy1tYWludAorODYxOTAgMWNlNjllZTY5ZThlYzAxODU0MjQ4YzcxMGQyNWJmNDg1MjA4MTU3OCByZWxlYXNlMjctbWFpbnQKKzg2MTkxIDRjMWM0OGIzYWY2NjI2YjYwNjgwNWQxZGY2YWYzMjQyY2E2YmMwM2QgcHkzaworODYxOTIgNzliM2ZjNjgxY2IwOTQ4NmI0YTFiZjIxODIxNGE4M2IwYmI3YmZiYiBweTNrCis4NjE5MyAyZDA1ZTlmZGI1OTdmMDJkY2MxOTQ0ZmMyN2UwOWQ5OWZhZjQ1YmQ2IHJlbGVhc2UzMS1tYWludAorODYxOTQgN2QyODA4N2ZiYWYzYTlhNjk3ZjQ3Mjg3MDU3MjU4Yjc0MDAzMWEyNyByZWxlYXNlMjctbWFpbnQKKzg2MTk1IGIwMjQ5ZDA4MzllZGFiMTIzZTgzNDZjMTE2YmNiOTE1NWQ3ZjFmODAgcHkzaworODYxOTYgMTI0M2VjNjc5YzI5OGJhNjRlZjJmNTYxNGQyMWUwOGVhNmQ3MjJmYiByZWxlYXNlMzEtbWFpbnQKKzg2MTk3IDYyZmYxMTY0NDMzOTFkMGUzZDk5NWI0M2I3ZGM0NjYxZGIxNGRhMTYgcmVsZWFzZTI3LW1haW50Cis4NjE5OCAxODg5NmQ1ODAyOTBhY2EzMDZlOWM4ZWQyYWEyMjgzNDRlNjQwYmRmIHB5M2sKKzg2MTk5IGM1MDBiNDEzOGY3YjljMTE3OWE4MGQ5ZWJkOGUzMDE3N2Q0ODkyZTQgcmVsZWFzZTI3LW1haW50Cis4NjIwMCA2MjA4NTczM2Y3ZGZiOWVjMmFhMjJiY2Y0MjBkOTc2N2M0Zjg4M2M1IHJlbGVhc2UyNy1tYWludAorODYyMDEgYjI1NGM2NTA3YzM1ZDI3NDA4OTRlYjJjMzI1ZDFkNjI1NDBhNDAzNyBweTNrCis4NjIwMiAyNTlhOWJlYzIzMjZjNjkxYWZmY2U2MTdkZGQyNmVlOThlYTQwNzU2IHB5M2sKKzg2MjAzIGVkMzViMTFlYmVjNjhjZTdmNWQ2MDg5N2E4YTNhMzE0MTlmZDAyZTYgcmVsZWFzZTI3LW1haW50Cis4NjIwNCAyYTMzMmU3MTU3NjYzODZlZGM4ZmNjYWIxMjk3N2IwZDFhNzU0YzYzIHB5M2sKKzg2MjA1IGUyMTNlNDY1YTJkYzg1NTJjOThlNWM1NzdhMzk3YjI1ZjU4Mzc1MmUgcHkzaworODYyMDYgZWRmOGM0YjAwMDQxZTA5NThhMzgzYzkwNjg0Nzc3ZmQ5MjZhOTE4OCByZWxlYXNlMjctbWFpbnQKKzg2MjA3IGZlODk2MmZjMGUxMTk5M2RkYzQwNTE1OWEyNWVjMmNjN2I5ZjhkM2IgcHkzaworODYyMDggMjM5ZmZlZTVlZGFlNTI5NDQ2YWMzNGMzZmNhZjFlM2I5YzQ3ZTI5YyByZWxlYXNlMjctbWFpbnQKKzg2MjA5IDViMjExZGM5NjhkZmM3YmM5YTlmZjNlZTNkYWZkY2YyMWYyYmVlY2YgcHkzaworODYyMTAgZDMxZWFlYzg4M2ViM2ViYjcxMDhhY2FiYjZiZjVlNGQ1ODEwNDJlYyBweTNrCis4NjIxMSA0OWIwZDQyMzAyM2VkNzRmYTMwYzhiZDU5NzMzMTZiNmFlMzFlMWE0IHB5M2sKKzg2MjEyIGMzN2JlZjhkY2VhMmNiNTkwZDEwNWNiOTU2NGFhYjY2NDY5MGVlZTYgcmVsZWFzZTI3LW1haW50Cis4NjIxMyBlZGVmYzVkMmIzZDc0ZTlmYjU3MzRkNDQwZGIxYmY4MjA0ZTVkMzI5IHB5M2sKKzg2MjE0IGQzM2Q2MmFiOTFjY2FjZjZlMzc5M2E5MTU4ODJiMDcxYjkxMzM2ZjEgcHkzaworODYyMTUgNzNjYTZkZmIyMmFhMTUxMzgyMDM4OTEyZTA4MGU2NmM0YzE2YjE4NiByZWxlYXNlMzEtbWFpbnQKKzg2MjE2IDE4NWFiN2M0Yjk0NjkxYTg4ZWZmNzIzNTEyZGRjMTM0NjlkMjc1ZjUgcmVsZWFzZTI3LW1haW50Cis4NjIxNyAzODVkMjM5YmNiZmE3ODA2NjZiMTU0NzNiM2Q1OTVjNzdiZmU1MjY0IHB5M2sKKzg2MjE4IDgyMjIxNDEwNTYyYjNkYjA4Y2YxZDkzMGNmYWNkYjc0NWM3Mzg0MTEgcHkzaworODYyMTkgNDU4YjA1YWJmOTg3M2Q5YTc2ZTJiYzNlN2Q0OWQ0YjgyM2E4YzAyNiBweTNrCis4NjIyMCA1NzFkMzE3YjRjZDVmMmYzZTY1MzE5ODRiOWExNTI0ZmVlMWRhOGFjIHB5M2sKKzg2MjIxIDVkZWQyNWUwNmE5YWZiYWMyZmE5MGRkNWVkNDQwZmEzNzA5Y2UxZTcgcHkzaworODYyMjIgZjkwZWQzN2FlMTZmMGE0NDJmNDk5ZWEwNjFjOWM4NDcxM2MyMDM5NSBweTNrCis4NjIyMyAzYmY4Njc4NWNkOWM1ZTM3OTFiNTUyYmRkMTFjOTQ5NGVjMGY1NjFkIHB5M2sKKzg2MjI0IDEwZTA1ODA4OTVlZDQ1ODA0MjBhOGEzMWUzMjUyMmMyOGUxNzEzZGYgcHkzaworODYyMjUgZmRkMzY4MWIxNDM5OTY0MzI0OWViMzRlNzFlM2Y2NjExZDBjODE1MiByZWxlYXNlMjctbWFpbnQKKzg2MjI2IGUzZmQxMjA1YjEwNTVlNTg1NmU5MTU5OGQ2OTMzMDVhNjY3MjhmZDAgcHkzaworODYyMjcgMzIwN2Q5ZjRkMDBhZWQzMmU4MGQ1N2Y4MzIwNTViMDg5ZGVmN2NiMyByZWxlYXNlMjctbWFpbnQKKzg2MjI4IGEwOTBiZjcxNmE2ODczNTY3OWMxYTRmZDBhMzgzODQ2MTQ1MWM0ZmQgcHkzaworODYyMjkgOWQ3M2Y5ODI3YzlmNGE1ZjliM2NiNDNkYWY1YzNkODAxNzVmNTAzMSBweTNrCis4NjIzMCA1M2VjMzhkMzE5ODhhMWQyZDU5MTEyMGJkMTRhZWNlMmYwMzkzYjViIHJlbGVhc2UzMS1tYWludAorODYyMzEgODkxMWY0NzVhZDNkMmZmM2NkY2QxNjI1MDJiY2MxZmU4NTQxN2E3MyByZWxlYXNlMzEtbWFpbnQKKzg2MjMyIDk2ZGJiMGMxNjhiNjc5NTMxMzdlNTA4Y2NiOTFlZTc5ZTUyNDlmOTIgcmVsZWFzZTI3LW1haW50Cis4NjIzMyBhY2IwYTNjYzFlMThjNzA5ZDViNjMyYjIyMWMwNGI2ODM2ODRjMTI1IHJlbGVhc2UyNy1tYWludAorODYyMzQgOWY4NjIxMWYwYTQyNzNiYzkwMWI4NjU1ZWM1YTU2OTAwYTJmNzVjOCBweTNrCis4NjIzNSAyMjIzYWZlM2VhYmE5NDgwNDk3MTlmN2Y1NDYxMDliZTA0NjAxNjQwIHB5M2sKKzg2MjM2IDk2ZjMwZmQ1NGUwZmVhNmZiZGFlM2Y5N2M0MjI5MTUzNWE3YjVlODggcHkzaworODYyMzcgZjVkZDRhNTRkNzliNTE1ZjlmYTI5N2Q1OTkzYzg3NWQxZWI3NmU0MCByZWxlYXNlMzEtbWFpbnQKKzg2MjM4IGExN2IyMWMyN2EzMzg0NzQ5MjczZTc4NTViMzQ5NWY2YmVkZDg5ZGMgcmVsZWFzZTI3LW1haW50Cis4NjIzOSA1ZDg0ZjFiNzNkNTEwMjgyZDU1OTQzNmY0MzExM2YzZjcxNDk5NmVmIHB5M2sKKzg2MjQwIGZmMDcyYWE3MGMxZGE3NGE5MWMxNWVkMDgxZmM4MjYwYzEwYjhmMjIgcHkzaworODYyNDEgY2NkOTlkNTQ3OWRjZTc5MTdhOTU4NWQwYWY3MDQ0NzA0MmI5ZGQ5NCBweTNrCis4NjI0MiBkNDNiZjMwZmFmNmViODUwMDdlZWVmNzhiOWRmZDRjZjEwMzFmNGFhIHJlbGVhc2UzMS1tYWludAorODYyNDMgNjM2ZmVkOGU3OGQ2M2Y2MmFmMTgyMGI2MWViNmY4MzlkZmZlZjAwNyByZWxlYXNlMjctbWFpbnQKKzg2MjQ0IGI1NjQ4ZTEwYzIzYTdkYzFhODJkY2RjMjhiZTljNTdjMjI5ZmM1ZTYgcHkzaworODYyNDUgMmI3ZWIwZTg2ZDA3Y2RmYzVjYTUxZTM1ZWNmMDUyYTEwZWJkZWZmMCByZWxlYXNlMzEtbWFpbnQKKzg2MjQ2IGRmMzQ5OTFjN2QwZTk1YWI3Y2QwYTg0OTYzM2FiMTc0MDYyNzMyOWEgcmVsZWFzZTI3LW1haW50Cis4NjI0NyBmYzQ4Mzc1MDc5YTZhZTY5YTBlNzU3M2M0YzE2Yzc4MDA2YTcyY2JkIHB5M2sKKzg2MjQ4IDY4ZjhhOTViNTBjN2ZhZTI2YzNlYzIwODEwYTc5YTc0NDVmNjlkMTcgcHkzaworODYyNDkgNTExNWQ0YTJkODk4MjQ2MDNkMGUxODdhMzdhMGUxMzg0YjNkNzAxOCBweTNrCis4NjI1MCA3Y2I4MDQzNTgxYjU3ZmVmZjgzNzc0NGNhOTUzYzU2N2QwNThiMmZhIHJlbGVhc2UzMS1tYWludAorODYyNTEgMzA0NWFkYTM5MjY5MTU3NjI3YjEyZmYyMGZhNzRmMzA5NTBlZTg2YyByZWxlYXNlMjctbWFpbnQKKzg2MjUyIDZkZGM1NzYzNGRlNTZlZDMzMWE2YjU4YWMxYTJlZmI3ODA5NmM4MmMgcHkzaworODYyNTMgYmEwYWVjNjdiOTlhMGE4ZTNmYWU2Zjg2YzBmYzFhZWUxOTEwNDIzNyBweTNrCis4NjI1NCA4ODM4YzU2YjY5NTI1MWQyNjE2NjgyMmNmM2QxNTE5ZjE5YWY2ZTlhIHJlbGVhc2UyNy1tYWludAorODYyNTUgM2JmNDJkOTEwZGI4Yjg3ODc0YmE1MGUzYmQ0YjRiMTYwOGU2NTE3NCByZWxlYXNlMjctbWFpbnQKKzg2MjU2IGZmMTI1NzEyOGM3NTBlN2Q2OTRlMzFlNWM5ZjQ3NDZmNzI0ODY3YmYgcHkzaworODYyNjAgZjQ1N2M0NmY5MDk4MzZjOWMxZmUxOGIyOGExYTRiOGMzYTlkMTZjMiBweTNrCis4NjI2MiBlODUwMjU2N2VmYWY0OWUzZmFiZGFhOTcyZDMxZWRlMTJmNTYwYmJlIHB5M2sKKzg2MjYzIGJlNTQ2OTgwOGNlOWI4NzYzYTcyNjQyNmY5NmQ1ZmIzZTgwOGI2MzEgcHkzaworODYyNjQgMzgyNmFkY2E3YTNiZjRjYTQxODg3MDdmMzQxY2E1OWM4MDA3NzNjMSByZWxlYXNlMjctbWFpbnQKKzg2MjY1IDRmZWI1MWY2ZmQ3NmJkOWFhYzJkNDg5ZjE0NDg4M2FkYjAzZThkOGQgcmVsZWFzZTI3LW1haW50Cis4NjI2NyAwNzNiMDdiM2JkYWVjZDU5ZTEzNjQzZWMxM2I5MjRmYTA3M2JhNjhjIHJlbGVhc2UzMS1tYWludAorODYyNjggZGI2NTc0M2QwNjJmYzVhZjIxYzg2NDFmMDVlODNhZmRjMzQzN2RmZCBweTNrCis4NjI2OSA3NjJiOTQ0NTAzNjc1ZTQ3NTVhM2ZiNzIzOGRiOTZmNzMxMDdkNjdmIHJlbGVhc2UzMS1tYWludAorODYyNzAgZjBjN2UyYjExMjczOWYzZGQ4NWViNTJiODE4YzVkYWNjZDcwOGVlZiByZWxlYXNlMjctbWFpbnQKKzg2MjcxIDQzNDhjOWI2YTcyZDZkOTRiNTUxNzZkY2IwZWZkOTQ0YThiNTAwNjggcHkzaworODYyNzIgNzdiOGM5NWYwYzFiNTNjMDE5YTNiNDBkNjI0ZTQ4OTEyZTQ3OWQ2OCByZWxlYXNlMzEtbWFpbnQKKzg2MjczIDk3Yjk1YWUyMzQ4YjJhYTczMjBjZGMxNTg3ODA5MTAzMzQ3NjAwNjkgcmVsZWFzZTI3LW1haW50Cis4NjI3NCA3YTlkYmE4OWE3Y2U4NDZiNDliMzgyMGZlNDE4YjZjMjZiMmM0MjIwIHB5M2sKKzg2Mjc1IDEwYmRkYTI0MjY1NDU1MGY5YTNkODk2MzUzMDBmMjI2MTgzZGRkYmUgcHkzaworODYyNzYgYWYwNGFhZTE5M2ZmZjY1OWU2N2FiMzc2OTMyNTJiZDVkOGZkODA1MiBweTNrCis4NjI3NyA3MDQyNWZkNDc4NTY1MGJhZDRjN2Y3ZGQ1YTVmNWMxYzZmM2Q2OGQ3IHB5M2sKKzg2Mjc4IDJjYzNkNjJmMDY4MDg5OTNmNDU1YThhYzkyNzRiM2VjMGI4ZTMyNzYgcmVsZWFzZTMxLW1haW50Cis4NjI3OSAxNDk5ZGI5OWM0Y2RjZjJkZjMyMjY0Njc5YTA1M2IzMDM0M2E5YmViIHJlbGVhc2UyNy1tYWludAorODYyODAgMjg2NDI0ZTc1Y2Q5MjRlMWEyMTYyYjUwMmFkYTRmODE5YTE2M2FhMCByZWxlYXNlMjctbWFpbnQKKzg2MjgxIDM3ZjQzZGU2NWQxMGU5ZjgyZjc2MzE4OTA3YjA2ODJiZTc2ZTI3MjkgcHkzaworODYyODIgZDAzNjMyYzM2OGQzNzI4NWYxYzZiOWUwYTVmZTQyMTdjYWQ0YTAwOSBweTNrCis4NjI4MyA2MWJiZDRiNzU4NzRlMjA4NGMzNmU4MzRhYTAzNDZmOTNlN2MzNzVhIHB5M2sKKzg2Mjg0IGY2YjhmMzM2ZTAwYWEzNzY3ODkzZmFhZGZmNWQ4MjM2MGRjNTJkZjcgcHkzaworODYyODUgYjYwM2QyNDhkNGFkOTExMGQwZmRlYWZiNWYxODk3NDVhNTk2NWVkMSBweTNrCis4NjI4NiBiMWMwNmZhNDhjYzRiMDkzOTkxYWI0NWIxZjBmMDE0YjVmYWRlOWZiIHB5M2sKKzg2Mjg3IDMyODk5MmIwZWE3OWFmNGU4NzQ0ODE0YTYyMWMxZWRiMjIwNDEwYWIgcmVsZWFzZTMxLW1haW50Cis4NjI4OCBkY2YxN2ZhODQ4MjE3NmU3NmU1OTIxOTBhNzMwZTBiZDBmMTY5YmIyIHJlbGVhc2UyNy1tYWludAorODYyODkgMzk3OWUwY2MzM2MxMzMyMGRiMDQ4ZWMxYzA0ZDA5ZGYyYTgzODNiMiBweTNrCis4NjI5MCBhZDY0OTBhNTZkMTU4YjliNmZkMGVmMGNjNGY0Mzc3YmNmYWVlNWI0IHJlbGVhc2UzMS1tYWludAorODYyOTEgNzQ1ZDBmMTZkZjc2YThiMDEwYWI3MTY4ODVmNDBhZjczNDZkMjcwMiByZWxlYXNlMzEtbWFpbnQKKzg2MjkyIDZlODQzMjExNjY0ZDcyMTY5YTU3N2YzM2M4NmYzMmMwYzdmNWRjOWIgcmVsZWFzZTI3LW1haW50Cis4NjI5MyBlNDllYmJkMmM0OTYxZWQyYTdjZTc4YWMyNGE2MjI5Y2UxNDEzNWRmIHB5M2sKKzg2Mjk0IGMwOGY3ZDZhMDIzMTY5ZWI5MWI2OTE3NDg2NTMwYWMyMjI0YTZiMGIgcmVsZWFzZTMxLW1haW50Cis4NjI5NSA1Mzg0ZTRlNDYzNzRkYWQ1YmJjYTI2YzNhNDlkOWU3NDUyNjE4OTM3IHJlbGVhc2UyNy1tYWludAorODYyOTYgMDU0M2MwMmU5NDFjMTAyNGM2MzMzMGI0N2NkMmVhOTVmYTdmYjA0MCBweTNrCis4NjI5NyAyMjYyZjZjNDRlYmNhNjY5MzRhZjQ0MmJjMjhhNjU5MGY0NjljNDRmIHJlbGVhc2UzMS1tYWludAorODYyOTggOGYwOWVlZGNkNzBhMGE4OTNlODczZmY1NGVkODAxOGZiMTY3OTM4MyByZWxlYXNlMjctbWFpbnQKKzg2Mjk5IGZkY2FhYzBlMDEwYTAzNTk5MTc3MGRkOTcyOTQzODg4M2NmNzJmMzIgcHkzaworODYzMDAgMzM1NDIzZDczNmE3ZmY0M2IxZjdmYmUxMWQwZWI4NzAzNTkzZTJlMiBweTNrCis4NjMwMSBlOGYxZWY1ZmQ0MjM4Mzk2N2I1MzIzODRmZTIxZjZkMGI1MjQyZjYyIHB5M2sKKzg2MzAyIDQxOGRjYjFjNDVmN2ZiODAxZGY1OGQ2MDA1MzFkN2E5MWQ3Njg3ZWEgcHkzaworODYzMDMgODA0NzNhZDY5N2FjMzA2NzU5N2VjZjAwOGQzNGNmMjY2YTJkNzE0YSBweTNrCis4NjMwNCA4MTU0ZGI4YTE1OTMzZGI1ZDI2MDFlODZiNjJmZjM5ZDY3ZTZlOTE1IHB5M2sKKzg2MzA1IGY4MjA4YzMzOTc4ZjhmNGY3ZmQzNTdjNGEwZDVmODYwMmU1ZWZhMTAgcHkzaworODYzMDYgODhkMDRmMDE0M2M3Mjc2ZWZhYjdmMDhlOTYxYmRiMzk4NzljNWY4NyBweTNrLWNkZWNpbWFsCis4NjMwNyA4NTVhMTBlZmIxMGEyOWFmZTFkMjk0YmZjZjg5ZDE3NTgyZmViYTYyIHB5M2sKKzg2MzA4IDc2YmM3MThmZTdjOTJhOWU3MzFhM2I2ODY3OGU1MDdhNzk4NzAyMzcgcHkzaworODYzMDkgM2RiMTdhNDk0ZGM5NGQyNTU2ZTlmYjM0YmYxNDdiYjVmM2Y3NWEwYSBweTNrCis4NjMxMCAzYzFiZmU1NGNkMjA5NmExODZmZGE3NTRhYzhhOWFjODk3OWY4ZmE5IHB5M2sKKzg2MzExIDZkMTI5NGFkZmFmNDQwOWMwNzhmYTkzZjQ1MzZmZWRjM2JiMzBhYzcgcmVsZWFzZTMxLW1haW50Cis4NjMxMiA5NmM4MGY0MmJjZTZjYjk3YzEwYzQyYTBjMGMxODBkZWQ3YzczNGY1IHJlbGVhc2UzMS1tYWludAorODYzMTMgZDU1YjdkMGJjOTczN2ZjMDZmMTRkYzE3ZTYwNDE3ZGFkNTczNTlhMCBweTNrCis4NjMxNCAwNzQ1MzNhNzU5NjJlMGEyMGQwYzYxZDYwMWRiN2ZlOTRiNWUxY2VkIHJlbGVhc2UyNy1tYWludAorODYzMTUgMWZmYmQ2NzUzYTE1NDM3YWQ0MDVkZmNkY2Q0ZjBmODdkMmIxMWUxYyBweTNrCis4NjMxNiAyOTQ4ZDVmYjFlYmViNWY5OGExOTBjOTNiZjc3Mzg3ZTQ0MDBiNmVlIHB5M2sKKzg2MzE3IDJkNjgyNDg4NDQzNWI3YjczYjYyODZjYmZiNDA5NmUxYjExZGIxNDEgcmVsZWFzZTI3LW1haW50Cis4NjMxOCBhOGFhY2RiNDUyMGUxNmU4YzFmOWQ1YTIxYWRjZWJmMzU1ZGQ1YjBmIHB5M2stY2RlY2ltYWwKKzg2MzE5IGIwZGUwY2U4YTcyNjRiNDhkYjgzMGI5Y2RkNTZhMjZmMWRmMmU1MjcgcHkzay1jZGVjaW1hbAorODYzMjAgODM3OGViODA3NzQ2YmIxZTI3YzZjMzI5YmZiODM3ZTQwYjFiNDU2OSBweTNrLWNkZWNpbWFsCis4NjMyMSAxNjk4YjBmNjQwYjY0ZTVlMjQwMzBiMmQ2MWRkYWZjYTg2MzUzOGVjIHB5M2stY2RlY2ltYWwKKzg2MzIyIGNhMmI5MzdlMWE4ZDEyNjVlZjNjNjkxZjkxMTU5OWRkMGNlZGY3YTIgcHkzay1jZGVjaW1hbAorODYzMjMgMmIxZjg0YTRhZDMzYzE1ZjVkYTJmOGVkZjAzNDgyNGIyYjA3NTA0YSBweTNrLWNkZWNpbWFsCis4NjMyNCAwNzAzNjgxNzViMjQ5YzU3NGU1NTY5NTZmNGIxM2VhZDA3NTI3NTg3IHB5M2sKKzg2MzI1IDNiZDczMTEzZTgxMDdhZTVhMGU3MTBhNGMxZTE2NDg1YjcyYWE4ZjIgcHkzay1jZGVjaW1hbAorODYzMjYgNDI3MDgwZjJhYWI1ZWQzNWEzZjIzMTZmOTNiOTc5MmVjYTQ5ZWRjNiBweTNrCis4NjMyNyAzZjEwMzRiNDM0NzgzYzQwMjBjNzA1Y2VkYzc5MDMwMWYzNWIwMWVjIHB5M2sKKzg2MzI4IGYzYzUzMzg1N2ZhYmJiNzk2ZDMzYzdjMzg3MTY1NjI3YTcxYTdlMzMgcmVsZWFzZTMxLW1haW50Cis4NjMyOSAwYWQ2YTBkMDE0OWFhODJhMjUyMGQxNDMxMTgxMjNiMTM0NzcxMjQ3IHJlbGVhc2UyNy1tYWludAorODYzMzAgZDZkNzFkNGQ2YjY1MDZiNzU4MmM3NGM0ZTg4ZTMxMmUxYzg5MTczOCBweTNrLWNkZWNpbWFsCis4NjMzMSAxOGNiYWJhNjFmYTU2NDQzYjIwM2IxNzI0OGE4OGY0ZmQ0ZGEwZThkIHB5M2stY2RlY2ltYWwKKzg2MzMyIDAwYmMzYWY4OWI3Y2RhMTU2NGQzYTFlZDNmNmI1NzYxZWNkMmQwYjAgcHkzaworODYzMzMgOGFiMWRlMDgxM2IzYmY3NDYzNGY2OGZhNzk0ODBmN2UwMjgxZDA1MyBweTNrCis4NjMzNCA3ODgwM2NmMTRhOTRhZmIzYzg0ZDMyMjk2OTZiY2U0ZWZkMGFiMDY4IHB5M2stY2RlY2ltYWwKKzg2MzM1IGFkNjQ4ZjJiNWUwMDA1ZGYyYTYzNDJmMjczYzZlYzA0NjRmODJhYjcgcHkzay1jZGVjaW1hbAorODYzMzYgNDRjZDA0MGRkYTU2NjYyNWE5NTUxOGQzZjE5M2ZkMThjZjY0ZTdmYSBweTNrLWNkZWNpbWFsCis4NjMzNyA0MjhiNjEyY2IwNzZkODM4ODdkNTQzN2Q1NmUxZmM0OTk4MjU2NzA2IHB5M2stY2RlY2ltYWwKKzg2MzM4IGJhYjdlNzAzZTNlYTlkMTE0NzJiMzA0YzI0YTg1YmIwNzUyNjU2NGMgcHkzaworODYzMzkgNTZiNmNjY2ExZDRjYjVjN2U1NWE2NjQ3M2U2MmFiMDI4Mzg3YzcwZSBweTNrCis4NjM0MCA5MDA4MTFmNjcwNWQ3NWU0NDMyMDNlNmM1MTcwNTE0Yjk3YmRiMDcxIHB5M2sKKzg2MzQxIDFiNWY0N2UyZTBmMDMwZjE0YTgxNWY2OTcxZmI5ZDc4MzM2MjAzNmIgcHkzaworODYzNDIgNmEyYjkxMTdkNDc3Yjc2MGNhMmQwZmI0Y2QzYmJkOTBmMTQ5NGFhZSBweTNrCis4NjM0MyA3NmExYzVlODgzNTJmNzNkMmNhZjc0NmVlZTUwMTJlNWQ2Y2Y0ZmYzIHB5M2sKKzg2MzQ0IGZjM2IxMmViZmI5YTJiNDNjM2RiMWU1YWRhNDgxYTNhNmJkNDQwYzAgcHkzaworODYzNDUgNzVlMDJmZGJkMzNlNmNjYjIzOTNjZGZkYjlkNWFhNjBjMWM3YTZhZiBweTNrCis4NjM0NiAzMDYzMzljMzE3NTg2NTYxMDM4OTY2ZDk1YjRmZTQxNTMxMmM2NDY4IHB5M2sKKzg2MzQ3IDMyM2Q0M2U4OTUzYWY5MWM5NTRlOTZhYTc0OTgxZmI3ZGYyOWM4NTIgcHkzaworODYzNDggOWE2NmZlYjA3YTBhYzEyYWE2YWRjMGY4MDI4MjVkYzUxNWQ3M2M5OSBweTNrCis4NjM0OSBiMzQ3YjVjZDQxMTI2OTgzNjI0YjcxOTY3NjYxNzI0MWRmZGQ1NjVmIHJlbGVhc2UyNy1tYWludAorODYzNTAgNjQwYTA4ZWM4ZmEyOTRjNmRkYjE4NDgxNGJhYzg2NTEyYTA5YzhhNiBweTNrCis4NjM1MSBiNmRhOTc5MzBmNjMxZmFjYTk5NTJjMzRmNWEyNjEzNjJkNGVlMmRkIHB5M2sKKzg2MzUyIGI0OTM4YzM0YjgwMzYwY2M3YjE0NDI0ZTNiMjMxMjViMGE2ZjY5M2MgcmVsZWFzZTI3LW1haW50Cis4NjM1MyA0NDhhYjc1MTZjMGEwNmQ2YTg5MmIxYWM1Y2JhMTk1NjgwZWI2YmJjIHB5M2sKKzg2MzU0IDY0NmRmZGM0OGNhODZmMTI5MjEwNWFlZmRjY2RmNzM0NjZhZjMxNTQgcHkzaworODYzNTUgMTk0ZjMwZGM0NzAzNDU5NDE1ZDlmYzQ1ZDdkZTBkYTgxYTVjMTAzMyBweTNrCis4NjM1NiA5NGQwY2NiNjNiNDY0Y2NmZjYwMjRhNzQ3NThjYTM1MjcyYjcyZmZkIHB5M2sKKzg2MzU3IDc0ZmE2M2FhYjNmZDZjNzk3ZDBlZGIyNjI2NmVkMzU5OWE4ZjEzZTAgcHkzaworODYzNTggNmYyYTkyMWQ5NzIwMzE1ODk1N2Y0ZGUxNmVkOWNhYTkzZjE4MGExNyByZWxlYXNlMzEtbWFpbnQKKzg2MzU5IDQwZWIwYzlhM2Y5MjNmOTk0ZTgzYzhiNTRlNWJjMWQwM2JmZWIwZjYgcmVsZWFzZTI3LW1haW50Cis4NjM2MCA4NjE4ZGY2ZWNhZGQ5YjY2NjkwNzdjZjYwOWQzNmU3ZGZhMjBlYzBlIHB5M2stY2RlY2ltYWwKKzg2MzYxIGZlOWNmNTM1MTE5MDI3YjdmMWE3ZTFhNDViYjdlZGI4NzQwY2UyYTQgcHkzay1jZGVjaW1hbAorODYzNjIgNzM2NzJlNDQ1Y2M5MTMyM2ExNzA2MzczMDNiYzA5ZjFkYmVhY2I0NSBweTNrLWNkZWNpbWFsCis4NjM2MyA3YTg0MGI2ZDJmMjI0OTc1YzllNzc3ZjM3ZGIwOWRmY2M4MzFkM2E3IHB5M2stY2RlY2ltYWwKKzg2MzY0IDYwMDA1OTE0ZGZjNzYwYTgyMzA5M2Y2MDFjOTA0MDQ1MmY1N2Q4ZTAgcHkzaworODYzNjUgOWMwOTg1N2JkYTBiNDlkMDNmOGQwZDg3NTFiZmM5MWVhMWRhMDgzMCBweTNrCis4NjM2NiBhZjI2YmMwOTQ5NWUzY2UxNGJmNTI5YmQxNTZjNGE5YTBhOWIzNzQxIHB5M2sKKzg2MzY3IDMxMmFkOGY5OGZlMzcxN2U1YThhODdiZWFkYWQyNjA4ZGY4Y2U0YzggcHkzay1jZGVjaW1hbAorODYzNjggZTMzZjE2Y2E5ZWNmZGY2NjdmNGJmNWY0Zjg1ZjNmNTFhY2ZmMjFlYiBweTNrLWNkZWNpbWFsCis4NjM2OSBlZWViYjYyMmZkMDhmODUwMjI1MGYwMzEyZWY5NDA0ODEzOGM1ZTU0IHB5M2sKKzg2MzcwIDBhYThhZjc5MzU5ZDViNTBjNTk0MGNhMWQ4ZmUyNmZkMGE2ZDRhNWMgcHkzaworODYzNzEgOGY1ZDJiNTI3NjM0YThjMWYyZTMyMmNhNDZjMzAwMDQxMDg1OTVmNiBweTNrCis4NjM3MiBiYjllNDdjOTkxYjQxODJmY2IyYzAzOTEwZjU2NWMzMjM0YjZmYjE2IHB5M2sKKzg2MzczIDY1MzY0YzQ0ZTI5NThlOGVlYzdkODczYzhmYjBmMmNkY2NjNmYyZDIgcmVsZWFzZTMxLW1haW50Cis4NjM3NCBkMGZjMTA2NjE3ZTJhNzA1NzQ4MTg0OWI2NWIzNjE4MDkyYmUwYThiIHB5M2sKKzg2Mzc1IGM0ZGNiZTUxYzJlMzM4Y2U1YmI3ZTY5OGEwYjM0YzIxYjU1MjQ0ZDUgcHkzaworODYzNzYgOWZhNTI0NzhiMzJiOWZhN2Y5Y2FhMjE4Yjk0ODNiZTA0NDM5YTRlZiBweTNrCis4NjM3NyA1NTdiYmY2YjNkNzBhYzgyMTlmYTZjMDA1NjliZmQ2NjNjMzcyZTMxIHB5M2sKKzg2Mzc4IDJkZDUxOWU1OTljYzIzZDdmNWFiYzlhYjE5NWFkOGUyOTQxYmI4YWUgcHkzaworODYzNzkgNDkxOTY0MjZlZDJmMTQzMjI1ODU1MDkwZmI2YTBjZTZlNjk4ZjU0YiBweTNrLWNkZWNpbWFsCis4NjM4MCAxNmE0NmI2ZTcwNTQ0YTE0OTk2MzBkMWJkNjY0ZTFjOGYxMmNhYzdhIHB5M2sKKzg2MzgxIGYwMDUwMmY1N2IyOGFlODBkODRmMmU5Y2I2NGVhMzI0M2I3YTY4MTYgcmVsZWFzZTMxLW1haW50Cis4NjM4MiA2YTI4MWYwNDBiYjEzNGYyMmM1YTE4M2VkZjlmZWJjODIyMDdlYmMxIHJlbGVhc2UyNy1tYWludAorODYzODMgNTc0MjhlMzEyM2FjYzM0MWM2NjUzZmVlNzI3NzQxZTgyZWM2NjAyMCBweTNrCis4NjM4NCAxYjE2YmQyYmY2YzdkMGNhYmNjMzU4MWUzYzc0ODI4NzkwZGFhYjAwIHJlbGVhc2UzMS1tYWludAorODYzODUgYWU5MjZlY2NkZDBlZDBjYTkwMjQxZDliZjQxNTJjNmI3ZWMxNGMwNCByZWxlYXNlMjctbWFpbnQKKzg2Mzg2IDE4MTdhMTZkMWVhYjZhOTYwZGU3N2JiZTY3YjYyNmY0ODNkYWU1MjUgcmVsZWFzZTMxLW1haW50Cis4NjM4OCBlYjRhMzQ3Yjk4YzE2Y2RjM2IxZjE5YTM0MzljZjhmM2U5NjQ4ZmVkIHB5M2sKKzg2Mzg5IDE4MTdiNzA4OGQ4ZGZlZDFkMDBkNmYzZDIzYTMzZDcwMTZhZGI3ZTMgcmVsZWFzZTI3LW1haW50Cis4NjM5MCBmOTNmYWJkYjg3YWI0MTgzMTFlZTUwZjAzYmExYzc4NTNlZGUzZGJlIHB5M2sKKzg2MzkxIGUwMjc1OGU1NTJlOTI1Nzg4ZWQ3ZjRjMGZlNWU3NjAyMWExZjc5ZmEgcHkzaworODYzOTIgOTYxYzllODgyMWRkNWRiNTVjNWZkNzIyNjAxNTQ3MTUzMzI4ODFhYiByZWxlYXNlMzEtbWFpbnQKKzg2MzkzIGE1YjM5ZDg5ZGNjYjcwNjBlODk0NTY3MzkyMGI4YjA2NDQ1OGEzMjggcmVsZWFzZTI3LW1haW50Cis4NjM5NSAwNmY3NmVmMjdmODZjMDRiMjVhYjE3ODRlZmM5ZGM5Y2YwODk3NDc4IHB5M2sKKzg2Mzk2IGRlYTRmNzY0MTk0MGZlM2Q5YTMzODIwZjI0NjIxMWM5MzkwZGE2MzYgcmVsZWFzZTMxLW1haW50Cis4NjM5NyA3NGE1ODk0Yjk1MTM0ZjA4OWVmNTM1MjU5YWMyY2ZiMzZjM2JiNWRmIHJlbGVhc2UyNy1tYWludAorODYzOTggOGU2YTFjZDFmNDJiZjNmNzIwMGUxYTRhMjE1ODhhNzM0MjA3M2MxNyByZWxlYXNlMzEtbWFpbnQKKzg2Mzk5IDdjZWMwZGQzOTFkNjlmNzM2ZTNiNmZlNTNlZWU2NTg3NmYwYjBjYjkgcHkzaworODY0MDEgMzFiMWFhMzAzMDZjNTYzZDA2NDkyZGEwOTVlY2QwNjhjNTYyY2VlOCByZWxlYXNlMzEtbWFpbnQKKzg2NDAyIGU1NDZmNzYwNWNmMTIzMGFiMGQzMzM0NjVlYjU0NDY4NjhhZjM2YzUgcHkzaworODY0MDMgYzVlMDQ5ZmQ4MTcwYzhhNGFjYjMxMTE0ZGFmMzVhNmExYTA4OTgyMSBweTNrCis4NjQwNCBhYWZjZDVlMGZhZjFiZjllYzhjODAwYTEzODRiYjRlZWE4ODEyZGY0IHB5M2sKKzg2NDA1IDY3ZWIzZjUzZGVlYjkyOWM4MzdlNTVkOGQ0YTNhYzIyNjZiY2VkMGQgcmVsZWFzZTMxLW1haW50Cis4NjQwNiA1YjllYzVhY2RhYzQyNzRhZDQ0ZDZhZjgwYWFkNWE4ZTVkYTJmYTM2IHBlcC0zMTUxCis4NjQwNyA3NzkzNzdmMzA3N2Q5ZTA2MWU2NGY3YjljNGQ0ZWI2Zjg2MjBhMGQ0IHBlcC0zMTUxCis4NjQwOCA3MjNlZDFiNzc4NzFiYTIxZTU0NjU0ZGY2ZGVhNjQyMTZmNzFhYzU1IHBlcC0zMTUxCis4NjQwOSBiNTIyYWJmZDJmZGU3MDA0NGMyMDM3ODc3ODM4MGM3ZWU4ODgxNWQzIHB5M2sKKzg2NDEwIDk4YmQzY2ExZWQ4NjM2Zjk2YjUxM2JhNDc0NDFiZGI3ZGI0NTBlYTUgcHkzaworODY0MTEgYzY5YWEwNzI4MmE4OGFlODJjYTY3OGRmYjUyNzhiNDIwNmI0N2Q5ZSByZWxlYXNlMzEtbWFpbnQKKzg2NDEyIDEyZGE1ZmI4MTEzNDAxOGZmODhlNzMwZDI2MzQwYmY4ZTkyMTRmM2IgcmVsZWFzZTI3LW1haW50Cis4NjQxMyA1NTcyYjg2OTY3ZmY3NmU2YjI4ZDUxZjEyMjYxOTQ5Y2ZkYTYwOGVhIHB5M2sKKzg2NDE0IDg1N2Q5ZmU2MDE2OTgyNjNjM2RjYjQ2MTNkNDliNjhjMmM2MWNiMTMgcHkzaworODY0MTUgMTY2YzdiZTcyZTc4YTY2MjU2ZGYxMDUzYjdhNWE2MjA1YjMxM2M2YyByZWxlYXNlMzEtbWFpbnQKKzg2NDE2IGRmMmViZGRjMjhjNjMyYjIyZjJiZjg0ZWNmMjcwOTliYTZjNWNmMmUgcmVsZWFzZTI3LW1haW50Cis4NjQxNyBjM2Q4NWQyYWUxYzg3YTNmOTY5ZWM5YTg3MzllY2NhN2E4NWM3YmM2IHB5M2sKKzg2NDE4IDFhNjUyOTBlNmQwMzYwNWMwNjExNzk5ZmQwMzFkYmZjMWU2ZDRhMGQgcmVsZWFzZTI3LW1haW50Cis4NjQxOSA1MDMwN2E3OTU0MjQ1MjAzODY4ZTYzMDA0MjVhNjNiOTkwNzRiY2Y0IHB5M2sKKzg2NDIwIDBhMWE0YzQ0NDM4MTY4MWRlZGJiNDE5MmQxZTYxMzVhNGRhNGE4OGIgcmVsZWFzZTMxLW1haW50Cis4NjQyMSBiZTUwYzkxZTZkYTUzZjQxY2M1OTRmZDY0MDgxMDFjYzg1YWE4NzZhIHJlbGVhc2UyNy1tYWludAorODY0MjIgNjJhYjM5ZWZlMWM0YjQ5NTZhOTc4YTBjZDhiMDgwOTJlYjYyOWRmMCBweTNrCis4NjQyMyBlYzQyMTEyYzIxMDA5YmEzZTcwMmM5NzhkODc2MzY0YjM3ZmZlMTE2IHJlbGVhc2UzMS1tYWludAorODY0MjQgOGViMWM5ZTgxODdiZDg1MDQxNDVkZjFiMGE0OTQ0OGFhOTViOGY2ZiBweTNrCis4NjQyNSBjOWQzZTEyYmNkNDJlNmU5YThmNWU1Njc4Mzk1NzBlNTMxNjJjNWQ1IHB5M2sKKzg2NDI3IDA1MDllY2RmZjhhZTdjOTU4NTIyM2UxODQ5YzUzNGU4NzFhZjM0YWQgcHkzaworODY0MjggNTZmYjFlNzc2NzQ4NjE4NDJiNzM0MjhmYzFmYzEwNzc3ZWM5MTI2NyBweTNrCis4NjQyOSAwMzI5NjMxNmE4OTIzMWM2OGVmNmJhYWJkOGY3YjQ4YjcwYmFjYzViIHB5M2sKKzg2NDMwIDBhMjdjOWRiOWFjNzkzMzFhMmViNmQ4OGRlNzdiMzQ2YmE0YmZjOWQgcHkzaworODY0MzEgOGQ2NTE2OTQ5YTcxZDA3NTg1NWNlOTJhNmI5NmU1OTU0MmY0MjQ2OSBweTNrCis4NjQzMiAxMjYxMDJiYTc0OGY4ZjNmMmQ2ZGJhMzdlNTg2YTlmNmY0ZjMzOTMxIHJlbGVhc2UyNy1tYWludAorODY0MzMgNmFhNzc4M2VhMGU5ZTZhM2RjNWU1YTllNTk3ZWJlODUzOTQ4MzMzZSByZWxlYXNlMzEtbWFpbnQKKzg2NDM0IGQyZWY4OGU3MWI0YWM5Zjc0NGVjOTE3ZjkyNjQ1YzBkMWMwOGM4NjYgcmVsZWFzZTI3LW1haW50Cis4NjQzNSBlMmVmNDdiYzI4MWQ0OTgzMmY0NmFjNDk0NGJhYzc5M2NhMzg2Nzk4IHB5M2sKKzg2NDM2IGNlNDEyN2VjNWVlYjdkYWZkZWIwYzAyNjUxNTRlZjAxZmNmZTdiYmIgcmVsZWFzZTI3LW1haW50Cis4NjQzNyBmNmU4MTNiNDhhZjNkYWNhZTdiNjJkMjJiOTA4ZWRjNGQwODVhMjg3IHJlbGVhc2UyNy1tYWludAorODY0MzggM2Q1NDhiNzFkMDgyODFjZTU4MjczNGNmMjdmZjAxOTMxMWZhY2MwZCBweTNrCis4NjQzOSBjMjFhZWYzZmY1ZTJmMzdjNmVlMWUwNDdiYWY3MzE5YTM1ODRhNmI1IHJlbGVhc2UzMS1tYWludAorODY0NDAgY2EwZWRhNDAwMjE0ODE0MjZiMGFhMDEzZGE4MTdhMTc5YmU3N2UwMyByZWxlYXNlMjctbWFpbnQKKzg2NDQxIDVhY2UxZGEzMjc1ZTllODBmZTNmMTYwM2I5ZmM5NjdlMTI4YTQxOTUgcHkzaworODY0NDIgMDMyNDYyNDc5ZTBiZDMyYWZlNjc4NzQxYzQzOGFhNWQ3Y2RhYjI2MiBweTNrCis4NjQ0MyA1ZmQ5MTdkNDFjOWMyZDM3ZGRkM2Y4OWQ4ZGQ5ZjUxZGRiOTE2YzA5IHB5M2sKKzg2NDQ0IGNhYmM3NjExNTQ3ODQ5OWY0NDBkZTdkZDgyMmYwZWNhNGFlN2ZhNjUgcHkzaworODY0NDUgYTgzZDk4ODhhMGQ5YWJhMDdkMDQ2YWZiZmJhOWFhMTYxMDUwMDM4NiBweTNrCis4NjQ0NiBkMTJiOTkzNjI5YTE2NzgxOWEzYTliODRjM2MzMDEyMThmM2Q5NWY2IHB5M2sKKzg2NDQ3IDZiZGQzMmNiNTVhOWEyZjBmYzg0YTgyM2U3NTM3ZjAwZDgyOGNlMGQgcmVsZWFzZTMxLW1haW50Cis4NjQ0OCA0YzRmZTcxMzljNjhlMjFiYmZhNDgyMTM0ZjU0MzU4YTM2ZGQ2NGIwIHB5M2sKKzg2NDQ5IGIxMWE4NGRlNDQ5MjVkY2I5NjI3ZTFjYzEyNTliMDc2MTc2YTY2YzggcHkzaworODY0NTAgYzZiMmY0MTc4MzBlYWI0NTY1ZDhiYmU3ODUzMTM2NTBhOGI2YzY2NCBweTNrCis4NjQ1MSBkOTJhNWI4NTBmNWU1NjgwOGJlZGMwMTcyMzkwNmVkNjRjNWU2ZTJlIHB5M2sKKzg2NDUyIGQ5ZTZiOGE3NzA3MDUyYmQ0MDllZDQ2Zjg3NDY3NTZlZjUzNTlkMTIgcHkzaworODY0NTMgZDE4ZTlkNzFmMzY5ZDgyMTFmNmFjODcyNTJjNmQzMjExZjliZDA5ZiByZWxlYXNlMzEtbWFpbnQKKzg2NDU0IGQ1ZWU5NmU3YWNlYmIzZmI1MjBhYjM4MzgxOWE0ZmQxMGM2YTQ1N2IgcmVsZWFzZTMxLW1haW50Cis4NjQ1NSA2M2Q5ZjAwZmVhMDczMGMxYzQzN2E1MGY2NGE0MmI3NzkyYmRjYmZiIHJlbGVhc2UyNy1tYWludAorODY0NTYgNGQ0NWE0YWYzMmE5NmY3MThjMTNmNzkyNzQyZTI2MzAxMzNiYzNhYSByZWxlYXNlMjctbWFpbnQKKzg2NDU5IDUwMjJlNWI3M2FkMTk3YzE2Njc2NWNlN2MwYTIwNDY1YTU0MWMzNzIgcmVsZWFzZTI3LW1haW50Cis4NjQ2MCBjZTM4OGZiMWJlMDFmOTIxOWI1Zjg0MDY2Yzk5NTMxZTFjMzRkMjIzIHJlbGVhc2UzMS1tYWludAorODY0NjEgMGYzOTgxODhjN2Y2MDYxMDAyNDliZDBmOTNjNGJlNTQ1NmE4OTMyNyByZWxlYXNlMzEtbWFpbnQKKzg2NDYyIGI3ZDAyYWU0NWQxNTM1MTc0OGM4NGY1ODhjYWZkOWYyZTgwYjBkZWYgcmVsZWFzZTI3LW1haW50Cis4NjQ2MyBmY2FiZTQ3ZmUxZGU1MDRmMDNlYmNmNmVhY2Q0MzI5N2FiOTc2YzcwIHB5M2sKKzg2NDY1IDI0ZmM4Yzg1MmQxM2E0NzY1NjUxYmU3Njg4NjIyOGI3OWNlNTgyYzUgcmVsZWFzZTMxLW1haW50Cis4NjQ2NiBiNDVlYWJjN2MwMDQ2YzUxN2M0MTRiMWQ5YjBhZDc4ODQ3MDZkN2EwIHJlbGVhc2UyNy1tYWludAorODY0NjcgYmEwMTQ1NDNlZDJjMjM1YzY2NGZlYTRhMmE3NTdjYzk1MTBlOTQ2MSBweTNrCis4NjQ2OCA2ODMzMjcxMzczNjUxNDY5ODI3OWRiMjE0YmU2MzgwZTRhMDhjMWFhIHB5M2stY2RlY2ltYWwKKzg2NDY5IDYyODk1OWZiNDBjMzM5YTY5MjFmZWI2Mzc0NjUzMjY5NjUyODZjYTcgcHkzay1jZGVjaW1hbAorODY0NzAgZTQ1ZDBiYjc4MGRjYjNjZjIwYWFmZDIyZDExNDdjZWYzZjUwZmI3NSBweTNrLWNkZWNpbWFsCis4NjQ3MSBmNzIzYWExNTdhODJkOTc2NzI4OWU4NjI1NDY4ZjJjNDk4ZTZiM2M5IHB5M2stY2RlY2ltYWwKKzg2NDcyIGRhMDNjNjUwNTI0MGVhZWJlMjE5MGY4MDU0YjlhYTk1ZDYzYmU2NjggcHkzay1jZGVjaW1hbAorODY0NzMgNjljOTEzMWFhMzIyNGU3NjdkOGQ3NjIxNmQ5ZjI0N2IwYjVhZTkyNyBweTNrLWNkZWNpbWFsCis4NjQ3NCAzMzU4MjcxMGUwMTQxZmVjMDRhOWM2YjhjMzZiYmJmMzgzOGYyNDY2IHJlbGVhc2UzMS1tYWludAorODY0NzcgOThjOGU3OTNjMGIzZGNjZWZhNGU1YmUwYmYxODZiNGFiOGI0ZDA5ZSBweTNrLWNkZWNpbWFsCis4NjQ3OCAwZGY2YWM2MjI3MmJhOTVkMjJiM2U1YzgyNzc2ZTE3NjA0OGQyZjNjIHB5M2sKKzg2NDc5IDRiOGNlZDVmZWZiNzQ2YjM4MzNiNjg5ZGRiNzlmNmM1N2EzOTdhYjIgcHkzaworODY0ODAgMzQ2MjdkY2EyMTk2ZWQ4YzMyMzYzYTllYWEwZTkwOGNhNzBmYmQwZCBweTNrCis4NjQ4MSA1MmZlNjAyMTZlODkzMjMyMjE3YWRiOTczODFkMmMyYzI5ODEyMGQwIHJlbGVhc2UzMS1tYWludAorODY0ODQgYWU2NjEwY2E5MGExOWNmNjgzMTljMTBmNTUyNDljYzk4OTBjM2VmNyBweTNrCis4NjQ4NSA1NWFiYzA5NjVlOWQ3NjVkMzAzMzZhY2EyOWIyMGFkYjVhZGQwZjMyIHB5M2sKKzg2NDg2IGJiMTIzNzRjOGRjNmU3YWMxNTEwMGYwMDczNzAzNTc2MTUxYmRkNDkgcHkzaworODY0ODcgYzRmZTRiMTMwMGQ1Nzg5NTMxNTBkZGYxYjczYTRmYzI3NjljM2FhMCBweTNrCis4NjQ4OCBlZjFkYjdmNWM4YTlmMjEwNTViM2YzODk3Y2JkYmViNDlhZjQ3ZjBjIHB5M2sKKzg2NDg5IGZmNmIyYmY3NWQ4MTI2NzFhZGNiNzU5ZTA1OWJkMTM5MThjNjZhMmQgcmVsZWFzZTMxLW1haW50Cis4NjQ5MCA0Njc5ZmJkZmM4MTdmNjZiMTVhNjMwY2I0NmRkMWNmMWU5MDNkZTIyIHJlbGVhc2UyNy1tYWludAorODY0OTEgNTg2YTkyY2Y0Y2M3ZjQ3MzU4YWI5OThjOTQ5ZDA2MmVmNzUyYzk4ZSBweTNrCis4NjQ5MiBjOWZiMzBmZDFmMGE1Y2FmZDIyZTI2YWE0YTE5MWZkMzA3MmRlODcwIHB5M2sKKzg2NDkzIDBkMWI2NjIzMDI0N2M1NWNlMjhiYWYwNDM0ODAxMDBmOWE0NzA0ZjMgcHkzaworODY0OTUgNTJiZjc5ZmQ2ZDZjNmY0YjZhNjI5YjMyYTI0ODhjZWNmMmMyZTQ1ZiBweTNrLWNkZWNpbWFsCis4NjQ5NiBkNTRjOGYxNmM1MWMyYmY1ZmZmNDJmMjI1M2MyODM0ZWUyYTVhNGYwIHB5M2stY2RlY2ltYWwKKzg2NDk3IGJkNjhjZWY0ZjFlZTA5ODhkZTM5OWRkZGM4MzNiNjlkMzI4MmM3NjkgcHkzay1jZGVjaW1hbAorODY0OTggNzgyNmQ5MDdiNzY1YmQzZTI2NjgxNDM0ZDcyYTZlZGI0N2VlNTExZCBweTNrCis4NjQ5OSBkOGNjOTVkN2RlNjJhMWZiZTVlYmZlNjdhNTM1ZDMwYjA1NzdmMDgzIHB5M2sKKzg2NTAwIDc1YTgyZmUyNzRhN2M4NmZlN2E1NjYyYWUyMzQ4MDAyMTQ3YmE5MTYgcHkzaworODY1MDEgMzc5MDI5NzE0ZTI0NTk4OTcxMDZhMjM1NjZjYjgwODVjZDg3ZTAzYSBweTNrCis4NjUwMiA5NGJiY2VjZDk1ODI1N2RiMGExZDIzMDVmMzcwNWYwNjg0MmMxZWVkIHJlbGVhc2UzMS1tYWludAorODY1MDMgNTJlNTE5OWI2NTEzM2UwNTYzY2IwMWMyNzE0NWRhNDAyNDE0YWExMyByZWxlYXNlMjctbWFpbnQKKzg2NTA0IGI0MTQwNGEzZjdkNDE5YjFhZjI0YzRjNDg3NmM4YzY2NDRiMWYzNjUgcHkzaworODY1MDUgNjZlOGQzNWQ3MWZkZWFmYjc4MWE5Mjk1N2UxYTEwYmQzY2Y4MzljNyByZWxlYXNlMzEtbWFpbnQKKzg2NTA2IGNkYzM5ZjZiZWJmMTBiYmRmNzU1MmRlMTI2YTI0NmU5MjA0Njk2NjMgcHkzaworODY1MDcgYWYxM2ZiNmZiM2RmN2U0YTZkOWY1YmRiNjE5YmRmYWNiZDkyZGI0NCBweTNrCis4NjUwOCAxNWJkNTBlZTJjNGMzZTk4NjhhY2M5YzZjNjUzMDFiZWFmMTQ0YmZmIHB5M2sKKzg2NTA5IDgwNWMyOGRkNjdiM2UyMWIwNzcyODFlNGM5YjUyNjM5ZjQ4Zjc3ZDYgcHkzaworODY1MTAgNDgzYmJlYmM1N2JmZmI1ZjY5NDIxZmRmYTRhYzJhYjY3OWU3MjJiNCBweTNrCis4NjUxMSBmOWZiOTJlYTQ4NTAyOTI4MDc4NDdmMDFhODVlY2JiMzQ2NzQ5OTNkIHB5M2sKKzg2NTEyIGUxMDVlNmFjODUzNjUxNGQ2OTM2MzhjYTNhY2U0OWNhNjU0NDUyMGQgcmVsZWFzZTI3LW1haW50Cis4NjUxMyAyN2UzMmQ1MjAwNTU2MDg5NzUyNTM5NmRlNjZlZTIxNjIxZTBhY2JjIHB5M2sKKzg2NTE0IDViYzQ2M2IwNGM4MzMzZDMxZjc0YTZmMzUwODI1ZWM1N2U5NjFlNTYgcHkzaworODY1MTUgMDE5NDIxYTg5ZWY1OWRjMGIxNmZhNjkzZDQ4ZGMwZTRmYzUxYjE0OSByZWxlYXNlMzEtbWFpbnQKKzg2NTE2IDhiNmZhZWEzMDU3MzQwZDU2ZmVmOWU1NGRjODc5YmRiOTViNDVkYzMgcHkzaworODY1MTcgMjk3ODE2MGY0OTE0OTViYjEzNTJhMGEwMGQyMGRhYmFmNDExNjZlNCBweTNrCis4NjUxOCA4MmIxNjFmYTI4MTg0MTI0ZDk2N2VjZWJiY2IxMzk1YjU3MDEyZTJlIHB5M2stY2RlY2ltYWwKKzg2NTE5IGYwZGRjOTFiYWVjMDRhNDcyOWZiNGM3ZTM0NTg3MzU4YjE4YmY3MDcgcHkzay1jZGVjaW1hbAorODY1MjAgYmIyNzY5Mzg5YzUzMTQ3M2UwZTljOGMxNDdmZDlkYmM2MmE5MWZmOSBweTNrCis4NjUyMSAzNzhkNGY0ZTljYjUwZDhmZDIyNzk0ZGRiMmM0OTllYTQ0ZTA3MjUyIHB5M2sKKzg2NTIyIGZiN2RkZjFkMzU5NDAyOTI3MDNlNzAxZGU4NjdhNWMxZjUwMTg0NjQgcmVsZWFzZTMxLW1haW50Cis4NjUyMyA5MzJhM2ZmYTRlNTYxMWVlOTcwNmEyYjE2YjFmN2E0MWUyYTZlYTZjIHB5M2sKKzg2NTI0IGEwMTliYjRmZmI1MGU1NTc1NjlkOWEyYTZlZThiMWNlNWE0NDFjOWUgcmVsZWFzZTMxLW1haW50Cis4NjUyNSAxZGFhNDBiNDEyMTE3MjY4ZTRkMjA0MjVlMGJhN2ViZjkwNmUxNjlkIHB5M2sKKzg2NTI2IGFlMzE1YTdmNjJkMjc4MTFmM2QzNzkxMWEzYzE3MDEwOWRjYzU5MTcgcHkzaworODY1MjcgNjdhYjc0MDJlMGRlY2RlYjNhZjQzMzJlNmUxNjI3YTc2ZGY1NjEzNSByZWxlYXNlMzEtbWFpbnQKKzg2NTI4IDI3YzU0NTNhMTQ3ZjUxMWNjMjhlMzg5MDc0MmQ1YTQzMWIzYjk2MDYgcHkzaworODY1MjkgYjg0MjBlNzY3NjM4ZTU2MjZlNDk1Mzk2NjhlZmUwMjU5MGQ3ZDYzNSByZWxlYXNlMzEtbWFpbnQKKzg2NTMwIDBjY2E3M2IwYTViZjAwODc3N2VmOTQ1OTYxMjAzZmYwNGVkYWIxM2MgcHkzaworODY1MzMgYTFkYTgyNDNiNjNlNmFjMjdkMDI2NzdkMDRkOWU1ODE1YjUyYWVjYSBweTNrCis4NjUzNCA0MjAzMDE0MDA0MDNmMGUyMzlhN2E3NzI5YzY0N2VhOTdmNjk3NTg0IHJlbGVhc2UzMS1tYWludAorODY1MzUgZTk4M2ViMjIyOWRmZGEwZTdjY2MxNDA3Y2I1ZGY1ZTA2NjM4ZWFmZCBweTNrCis4NjUzNiA0YjNhNTUwMjAwMmQyMTg5MDBmZTk3MTQxZTY2OTFmY2NmOWQ1ZTQyIHJlbGVhc2UyNy1tYWludAorODY1MzcgZDljODkwNzIwNDRlNDhkNzViZDQ4OTFhOTY0MTUxNWI4NWFiN2ZlMCBweTNrCis4NjUzOCBlMzczNDRhOGYwYzkxYzM5NDEyNzI3YmFmZDU2ODk3NDdiNDhjMzEwIHB5M2sKKzg2NTM5IDM1MDg5OGUwOTVhYTZmYmNmMDVlZjliYjhkYzY0MzQ2MTg4MGNkNDUgcmVsZWFzZTMxLW1haW50Cis4NjU0MCBiOWJlNDVmNDMzYjkyZGI4NTMwMGUwMzkzMjBkMDQ5MzkyZTJjMzA4IHB5M2sKKzg2NTQxIDUxZjcyYzVmZTI4ZTRiZjFhYzg2YzgwOWNkNDE5NjhiMjc0Zjc4ZmIgcmVsZWFzZTMxLW1haW50Cis4NjU0MiBkNGY1ZTI3ZWQxODZiNmRiMzZhZGVjN2JiYmRkMGM4OGYyMTFiMzFhIHB5M2sKKzg2NTQzIDQ1NzJkMjhkYmFjNzMzYTNkNzExZmE0N2RiYWMzOWY4MWFhNDk3NmIgcmVsZWFzZTMxLW1haW50Cis4NjU0NCBjZGRjYmUzYmY1N2EyZTgzNzk3Y2NkNTQyMTY3ODQxNjYyMmUxOGE2IHB5M2sKKzg2NTQ1IGM2NGVkNmRhNDhiOWFiMzhiNTkyNjM4M2QwMGYwNWFjYjIwNDdhMzkgcHkzaworODY1NDYgZDIyYWE1YWU3NzYyNWY3NjllNzlkOTY2MDU5NjRhMDM2MjQ0NTc0YyByZWxlYXNlMzEtbWFpbnQKKzg2NTQ3IDVlZDM3YzJjMDU3NDFkZWU5YWIxMGY2OThiYTU2MjQ0MmFjZGJiZWUgcHkzaworODY1NDggZTlhYzNmMzExMTk5NTc4MWZiOTU2MWFiNWIxYmNmMGNkODk2YTFkMCBweTNrCis4NjU0OSA4NGEzMDVlMmU1NDg4OTMxNzRjNmE1MzBiMDM5MTAzOGVjNGY0MzgwIHB5M2sKKzg2NTUwIDRiNGM3MjEzMmFiNmViMmIzNWNkYmE5YWVlOWU3YzNhYWQwMTI2NmQgcHkzaworODY1NTEgZTUzMGZjNzY4MmJmMjk2NGJhNjk1MDQzMWI4NzQ0ZmZiZGFlYjEyNCBweTNrCis4NjU1MiA0MDk3MGU4OWU2MGFiYTM5ZjQ3NTI1NDM1MzNlNjA3MTkzYzgwZGMwIHB5M2sKKzg2NTUzIDgyNWU0ODBjOTMwZGExMDMxZWM3OTE3ZDA5YzQ0ZjAxMjM5YWIyYjYgcHkzaworODY1NTQgZjA3OTY0MzkxNWI1M2U5Y2YwMThmNjM4M2FmOTM4ODdiOGY3YzkyZiByZWxlYXNlMjctbWFpbnQKKzg2NTU1IDI0NWY2Y2EzYjIzMzBmZWI0YTI3ODFiZGM0Mjc2MGIyYTkxOGRjNTQgcHkzaworODY1NTYgNTNkZDcwMGEzNWI2ZjJmZTY3NzAwNzk4NDExMWVkZWMyMWVhZDZlNyByZWxlYXNlMjctbWFpbnQKKzg2NTU3IGRkYjNiYzhlNjk5MGRmNGYxYTYxNTY0ZDFmYWJiZjMzMTcyMzRmZTMgcmVsZWFzZTMxLW1haW50Cis4NjU1OCAxOWI3MTFhNzdlZmYxYjQzN2Q2NjQ2NGIwMGZlYzkwOTQ4MWFiYzJiIHJlbGVhc2UyNy1tYWludAorODY1NTkgMmRkNTM5MjVmMDA3MWRkNjVlOGUxMzMwN2M0ODIwMWQ3MmQyNTFlYyByZWxlYXNlMjctbWFpbnQKKzg2NTYwIDVkNTVjNWJiOGFiMWM0MDU0ZDc2NDA2MjFhZjFlZTQyZWU0MjVmOGUgcmVsZWFzZTMxLW1haW50Cis4NjU2MSBiNDZiY2U4N2QyYWYwMWU0NTg5ODI0ZDlmZjkyZDMzOTE3ODJjYTdkIHB5M2sKKzg2NTYyIGRlYmM3NjY0MTkxMjJhZjYwOGE3NmE1NzA4ODUwYTk5NDFiZmY2OGYgcHkzaworODY1NjQgNDBiMGM2OWJiMmJkNzUwNmY1OGRlOGM5ZTkwMGMzMDkxNzJjYTAyMSBweTNrCis4NjU2NSBjMjBhZGU2M2YzZGJjYTFiOGEyNzgyNGZiZWM2MDYxMTdjN2NiNjU4IHB5M2sKKzg2NTY2IDRlZDYxMDFmOGFiMjU1NTQzY2I3NWNmY2MwMzVkOWNmNzY2OTRiNDkgcHkzaworODY1NjcgN2YzMmM1ZjU2ZDFhMTE4ZDdlMDM3MDI5M2Y1ZGEyZjVhYzQwODk3MiBweTNrCis4NjU2OCBhMTkzNmZhNjM1ODBkNjJjOTMxZjUyMzA0OTg1Mjg5ODk5ZjE4NWU3IHJlbGVhc2UzMS1tYWludAorODY1NjkgNTllNTZiODJlNmNiMmNmYjU5NTMyOTdlNWIxMjVhMWRkMzg3OTIzZSByZWxlYXNlMjctbWFpbnQKKzg2NTcwIDRlMmRhNTI3ZjViMWRiMWFmZTE4NDgxY2E2ZjVhYTM2Y2VmNGE1MGYgcHkzaworODY1NzEgYWVmOGYxODUwZDI0ZDcwZGJlMjIxOTdiZTA3NTNkOTMxOTE2ODZmZiBweTNrCis4NjU3MiA3OGEzODBkNTdmZWExOTRhYzMyNGRmOTg1YmFhOWE3MDFmYTU4YTQzIHB5M2sKKzg2NTczIDUxZTFjYmRkOGZkMjg1NmRmZWEzYjY0ODBlNGNjN2I1OGEzYzNlYmQgcHkzaworODY1NzQgMmFlNGVlZDRhM2IzNzg3ZTg0OWFmYzhmY2Q2YzZmMDQ1Nzg1N2E3MSBweTNrCis4NjU3NSA4MzhmNjk0OGRlYjhiNmY4MDU2OGZkODllNzEwMGYyZTEzNmJhYjIwIHB5M2sKKzg2NTc2IDNkMmY1NWNjZDY2MGVjNjE1MzVhYjY0Y2RkM2ZhNmIxNzhkOTdjYmEgcHkzaworODY1NzcgODBiNDhhM2EyNDczNGM1Mzg4ZjE4ODFiYTc1OGUxMjUxY2I5NzJlMiBweTNrCis4NjU3OCBkNTcxODFhY2FmOGM0M2Q2NDNhMzhlZmRiMTQ3OWE3MjdjYzMyNzM4IHB5M2sKKzg2NTc5IDFlZjQ2NTFmZWVmODliODAyYWNkNzNlNTNjMzkwYjEyYmQ1YTEzODYgcHkzaworODY1ODAgNDFkNThiZWMzZTA4YjQ1YTM4MDI0NDUzM2VkOTllODU2YTc3OWM4NCBweTNrCis4NjU4MSA0ZTUxMmE5NDliNjBjMDQ4MDE1NzQ3YzU4NDI5NmY5ODRlYWFlOTYwIHJlbGVhc2UzMS1tYWludAorODY1ODIgYTdjMjIxMDdhZWNkMDQ1NzJiZjA0YzM4NGNjMGVmMTYwODYwNDk4MSByZWxlYXNlMjctbWFpbnQKKzg2NTgzIDY2ZDQwYjZhMmJiMWFkODBkYmY4ZDQ1MmM2NjUyZTU5Yzk4NGVlNTYgcHkzaworODY1ODQgM2EwZTcwMDBkYzhmOWQ3MDhhYTVlYWI1MTYxZDY0N2I3MTFiZmMzZSBweTNrCis4NjU4NSBlYTgzNTVjZGRkOWY4MTk3YmY4NTc4NzIzMDRjNWI3MjIwNTkzMWI0IHB5M2sKKzg2NTg2IGJjOWRjN2U3ZjM3M2RhYzZkNTUxNmNiODI0ZGI0OWI2MzA4OGU1MTkgcmVsZWFzZTI3LW1haW50Cis4NjU4NyAzYzliMWMwNWJhOWVjNTdiZDRjMWE5YzM5N2JjODkyYzlmMDRiNjgxIHB5M2sKKzg2NTg4IDdjZGJkYmYzNDgwYjhmMDJiOWQwOTdmOGEwZGU1YTI1NmQwODJiZDggcmVsZWFzZTMxLW1haW50Cis4NjU4OSBjNDA0YzJhMzQ2YTU4NDRiNWE5NThkYjAyZTM2NzAwYzQwNzBmNzNmIHJlbGVhc2UyNy1tYWludAorODY1OTAgNjMxZDg0NGJiYzQ1OTMyZDU4OGY1NGI2N2I5NGJmZGU2ZDUzNzM4YiByZWxlYXNlMjctbWFpbnQKKzg2NTkxIDk2NWY4NTllNjBhZmY5MTc2OGVmNmQ2MzE3Y2Y5Y2I3M2JjNzA4MzYgcmVsZWFzZTI3LW1haW50Cis4NjU5MiA1MDc1MTgyMmY2MjIzMDY2NWFhMWZjNDliMjdjMzVmYWIwNjgyMjBhIHB5M2sKKzg2NTkzIGMwNmVkMjVlNjliODMzMjdkNWI1YzlkYWI1OGM0Y2MxMmM3NjNjNGEgcHkzaworODY1OTQgNGYyOWFhOGY5ZjU0YjFhMjVkNjliNDBmZWU5MWYyOGI5YzUzMDRmNCBweTNrCis4NjU5NSA0M2U1MGJiOTIzYTk2ZWVhYTU4ZTE5Yzk5MGY5NDY1NDFlOWZmNTI2IHB5M2sKKzg2NTk2IDlmZTc2YzI2ZWE5ZmU3YmYzYmViMzRmZGQxMjk5Y2IxODBlYzZlYTggcHkzaworODY1OTcgZGVkZjcxOWIyNmEzNzRkMjkyNGEyYjAwYTZkMzdiMjRkYTllYzYyOSBwZXAtMDM4NAorODY1OTggMTI5M2Y4MTljZTM2NjIyZTRhYzM3NjU4MzM0ZDViMjA1YzM0OTg5NCBweTNrCis4NjU5OSA1M2JlMWE2N2U5NjRhZWNjMzkzOTRhYjRhMGZmMzI4ODE1Y2ViZTg4IHBlcC0wMzg0Cis4NjYwMCAxM2EyYTVkZTFiN2Y2ZWJjNTUzMDZjNTZjOTE1OTQwOTE5ODliZWNiIHBlcC0wMzg0Cis4NjYwMSA4NmUzZjYzMjRlNjUwMjM1MGUxZTFiY2M2NDQzOTRhNGZkMGEwZmYyIHB5M2sKKzg2NjAyIDQ0YjMxMjE5YWVjZDMzMmViZDJjZWIyYzliZTIyNjQ4MGRlN2M5NTMgcmVsZWFzZTI3LW1haW50Cis4NjYwMyA2NzFlNmJkMTgxMTQzZDI4NDZkYWMxMjgwNWEwMDFiZGMzZGNjYWJjIHB5M2sKKzg2NjA0IGI2ZDdjNWI2ZjFmMjAxM2IwMTQxZjVjNWIyZWRiZjE3YzFhM2RiYzcgcmVsZWFzZTMxLW1haW50Cis4NjYwNSBmNWRiNTM3ODM5MjJkMjc2Nzc3ODM5ODhmMmI5YWM3YjRlZjcwMDM5IHB5M2sKKzg2NjA2IGVlZDQyZDI4MzU2MjJkZjhhYTQ5NDUwYjU2N2Y0OWI2ZTA5YmRhM2MgcmVsZWFzZTMxLW1haW50Cis4NjYwNyA2ZWFiZjhjMWE3NWM3ZTUyMzJjZGFkZmIyYjVmMTg4MjQxOGYwNThiIHB5M2sKKzg2NjA4IDlmZWM2YWJjYTdkNzY3NjIyNjJlZmQ2NGE2ODg0YmVhYzBmNDVlNWIgcHkzaworODY2MDkgNGFlMmQwMTFhODBiYTVjZWI0YTQ1M2RhZGQ2MmRlYzY5Y2MxODJiNiByZWxlYXNlMjctbWFpbnQKKzg2NjEwIDU5MzA3YWE3ZDJmZTY3YTA4MWFlNGVmNzEzMzcxN2M0ZDgzYTJhMmQgcHkzaworODY2MTEgNDMzNTY5M2RmMjU5NzlkOWJmODc1MjBiYTA3N2UxYjliNTYyYmNkNCBweTNrCis4NjYxMiAxY2RjOWMxYzQzMGU4NWM1YjY1M2FkMTI2M2Q0MWY4MTdmNDEwZjNmIHJlbGVhc2UzMS1tYWludAorODY2MTMgN2FlYzIzODY4Mjg3N2IzOWIyYzQ2Mjg0MzIzZDc0OGRhYTc3YzM2OCByZWxlYXNlMjctbWFpbnQKKzg2NjE0IDEwYTFjMzk5ODY0ZTQ2M2JkMDc0MTdiMjNlMDNhZTg1ZmVhNmRjNjAgcHkzaworODY2MTUgY2ZkNTM4MzExYjZmYTYwZmJjOTM1ODM2YTRlYTQwN2Q5ZTUxOTg2YyByZWxlYXNlMzEtbWFpbnQKKzg2NjE2IDQ4ZmRjMmQ4Zjg5NmVjNzRkNTA3OTI2Mjk4NzZmOTc4OWZmNjYwNDQgcmVsZWFzZTI3LW1haW50Cis4NjYxNyA3YWYxOWU5OWQyZjg1ZWI5N2NlMGRkM2M3NDcyNzAyNDU5MDU1NmM5IHB5M2sKKzg2NjE4IDIzOGNhYWY2ODUyYjczM2VmMDUwZDE2NjlhZjk4NzdhNzJkMTMxZGMgcHkzaworODY2MTkgYWRkN2U5NzIxZjgwOTQ3MTM2MWViNGFiNGEzYzU3OTgwMThhNTFkZSBweTNrCis4NjYyMCBlMDEyMzc4MzFhZDJmYWQ2OWM1ZmRiZDEyNGI5MDcxZjIwZDhkNTAxIHB5M2sKKzg2NjIxIDM5OGIyMTgyMWQxYjRhMDBhNDQ3ZjJjMzI2YjJjZWEyYjA0NDVjMjUgcHkzaworODY2MjIgMjU3NTEyYjk3ZjgyM2QzZTcwMGFmYWJiODc5YmYwMGY5MGRkNTc2MiBweTNrCis4NjYyMyAxYjQ0OGZkN2UxYTI0OGM0OTMyMTU3YWYxNDJhOGYyN2YxYTZkNTkwIHB5M2sKKzg2NjI0IGFjZDk2MjgyNDgxOTE0ODllMDYzMWI4YWIzOWRhNTc3NTZhYmZjNWIgcHkzaworODY2MjUgNDU5YTY5MDI1ZDljMTZiZGI5YTg0MjYwMzIyMjg5YjYyODk4NzU0MSBweTNrCis4NjYyNiA2MjE4MmFiYzExNmFiYWM1NWU4ZmZkNzZiM2M0ZDE2YTJjYTBiNzIzIHB5M2sKKzg2NjI3IDA3Y2FkYzJjNjQzODI5OWZlM2M0ZTJkYWExYmU2Yjg2OTVkOWNmM2IgcmVsZWFzZTMxLW1haW50Cis4NjYyOCA4MzdhZDU4NTRmYzkzYjQwYzUxNDI5MmQwZmJiZjY5MjNjMDNlNTE4IHJlbGVhc2UyNy1tYWludAorODY2MjkgMmJlYjI1MzY5Mjg5NzUyNjc0MzQyYzBlYTg3NWQ3OTljMGZjZTUyMSByZWxlYXNlMzEtbWFpbnQKKzg2NjMwIDVjMDZkM2QxYjljOTBkNTAzOGY3ZWIyZWQzYThjYmJjOGM5MTk2ZjAgcHkzaworODY2MzEgNTQ0YjQ1M2U2MGE1OGVlYzBlNmE0MjgzNGQ3MDZjYTAzYmUxYzg2MiBweTNrCis4NjYzMiAyMDY4MjU1YjRkYTAwYTE4ZmM2Y2JiNmFmYzhjYmIxZTkwNWU1ODQ2IHB5M2sKKzg2NjMzIGZkZmM2ZGNhODA0ODNiM2QxM2ZjZTVjY2I2ZGMxOTI0MGU0NzNkNTIgcHkzaworODY2MzQgZDI5YTY3YzI2NjAwYzc2ODM0YjkwYzYxNzhmNmY1YjJjODI1M2IwOSBweTNrCis4NjYzNSA5YTBjMjQwMWM2YTZlMWYwMWJjZTc5NTIxMzBmZDU1MzE5NjYxMzhlIHB5M2sKKzg2NjM2IGY1NDc2OGE1ZTJmNTVkYzZlMWU3NzkyMDIwNTQ3NGJhMDA0MzA3NDggcHkzaworODY2MzcgNjE0Yzg0NjcwYzYzZDM1YTBmMjdhODg4ZDg2OTg1MzkwNDkzZmU3ZCByZWxlYXNlMjctbWFpbnQKKzg2NjM4IGMxM2Y4OTgwY2E3ZmRmYjM4YzQ1YjQwNmY4YTkzMzk1YTg3OTRkYjMgcHkzaworODY2MzkgZjhjZWI2YWZkN2E5MWFhYzlhNzk3OTkxNTliOWI2ZGNmNDM5NTMyMiBweTNrCis4NjY0MCA5NzE3MTUzZDU1OGQwNDllNGMzNTIxNTVlOTllODcxZGM3MThjNmZiIHB5M2sKKzg2NjQxIDYxZDFlYzMwN2JiMGRiNDkxZWI2Y2JiMWIyMGUyYWI3ZTgxNjljNzYgcHkzaworODY2NDIgMzIyYWEzZTgyNzY4YmUzYmM3YzI4NmE4N2I1ZTE4YmY1YjczNzQyMCBweTNrCis4NjY0MyAxNzlkYzRjMzQ3MGYzY2Y3NmRmYjljOThjMjc5MTEwN2JjYTU0NzQzIHJlbGVhc2UzMS1tYWludAorODY2NDQgOTQzYTg2NDk5MDBkZmY5ODU1MWVjMjI1NTU0ZmY2ZWE4OWEzYTI4NSByZWxlYXNlMjctbWFpbnQKKzg2NjQ1IGVlZDMyODhkZWQ4OTVmYjJkODllNGFjNGU5OTViNTIwZGViN2RlODkgcHkzaworODY2NDYgYTc4NDQ1N2UwMDBlNWMzYzk4NTc5NjUyMzQ0ODJiNmM4YWVmZTI3OCBweTNrCis4NjY0NyAxZWY4ZTlhNzVmZWYzYzcyMjMwNWY2NDhiN2I0ODRlZTY0NDgxMGIxIHB5M2sKKzg2NjQ4IDIyYmNkYWMxODFiY2E5MTFiZTgwMWFjNmE0NWQxNGY0NDRkZTZkNDAgcHkzaworODY2NDkgMWVjMDU4MGQ5ZDlkN2I2Nzg5ZjI5ZGI4ODEyOGNkNWRmNzFlMzdlMCBweTNrCis4NjY1MCA1YmE4YmZjZTdlYzFkNmRjMDYxMzViNDk3MWZmYjAwZDIyYzVkMGMyIHB5M2sKKzg2NjUxIDhiYTE2YWFiZDU2NDZiNzI4NjU4OGUxOWFkYWEwZGU0ZDA2YmRhMTUgcHkzaworODY2NTIgNDg1ZGNmZmM4OGI0NWUxNjg1ZWMxY2ZjNjg3Y2U2NGNkMDM1YjM3NSByZWxlYXNlMzEtbWFpbnQKKzg2NjUzIGY0N2ZjZDViNTAxZGVjMWE4MmRiM2Y4ZTQ0NDU0OTRhNmI3ZGY1NGQgcmVsZWFzZTI3LW1haW50Cis4NjY1NCA3YjE0ZjFmZjYwMmJiNTA4ZGQ1NTQ5YTk3NDE0ZTcxYjMyOTlhOTc2IHB5M2sKKzg2NjU1IGFkZDhhMDNkZGVlNmUzNWQ0NzZjNWU2Njk2ODJiYzQ0ZjgzNWJiZTQgcHkzaworODY2NTYgMDdhNDg3MGY2MGEwN2YwZjUzY2Q1ZTBmMTdmNDg1MWIzMjU3MjY5NiByZWxlYXNlMzEtbWFpbnQKKzg2NjU3IGEwODE2MjVkZDZjNjI3ZWIzNTQ3ZmY2NTA1MGQ3NGUyZGYwOGJhMGEgcmVsZWFzZTI3LW1haW50Cis4NjY1OCBmZmMzNzJjOGNmYTBjNzYzZTNjNDVmMzMyYjRkMWY4MDg4MTMyYWIyIHJlbGVhc2UzMS1tYWludAorODY2NTkgNWQxMTJjNzg3ZDZlOTRmMGQxN2ZiNDg3ZDIzMmNkOWQxNmRiYjJiMiByZWxlYXNlMjctbWFpbnQKKzg2NjYwIGYwMmYzYjMzZGQ4ZjkxZjQyYjFjNzAzMDMwMmE4MjU1OGIwZDQ1ZDQgcHkzaworODY2NjEgNWFiZmMxY2MyMmQxMWYzYzhjYTFiNmEwOGJjYzcyN2FiZDdlNTJmYiBweTNrCis4NjY2MiA2NmUwZjVjNjUxNTg2ODllM2NhNjFkZWVlZTUwZjY5NGUyMGYzNDQ4IHB5M2sKKzg2NjYzIGM1Y2ExYTliMWZkZjVmMmM0ZjdhZGZhOGM4ZTFlZjgzZDRlODU5ZTcgcmVsZWFzZTMxLW1haW50Cis4NjY2NCAwYjI3MTZmOGFmYjU5MDRkNDI4MjliNDk5YjE3YjdmNTViZTBhMjY3IHJlbGVhc2UyNy1tYWludAorODY2NjUgMGVmZDQyNTg5ZjE3MWUzODE4YTg4MWU5MDZhNmM4N2FhMmIyYzljMCBweTNrCis4NjY2NiBkYzZhMjdiZjg1OTI4Y2E3NWUzYmFhYmI0MGZiMTU0MzZiYzhlN2NiIHJlbGVhc2UzMS1tYWludAorODY2NjcgOWExOTA2OGJhOGIxMGUxMTNjNDRlMTQ4OWU2Y2Q2NDgyMTA0NzBjZiByZWxlYXNlMjctbWFpbnQKKzg2NjY4IDEwMmRiMGNmZmU1MWY2Y2M0YzllZjA3ZGRmM2Q0OGZmMGYyZmE1NjEgcHkzaworODY2NjkgM2U5NWYwODkyMzdhOWUyNzk5N2QyMWZkYzBjMmQxOTM5Mjk3MDAyYiBweTNrCis4NjY3MCAwODEzYzJhY2Y3NDE1NTE5NGRjMGQwMDlkYTY4YmZjYjhiNzQzMzNhIHB5M2sKKzg2NjcxIGFkYTY3ZGU2NDkxOTk3MWNhYjliYzIyNjJjMDczZGY1MjAwYWM5N2QgcHkzaworODY2NzIgNTM4MmNhOTVjM2Y2YzMxNmQ4ZmRiZjk2YzkwMjMwNTk0N2RlYzJlZCByZWxlYXNlMzEtbWFpbnQKKzg2NjczIGQ2YjZmOTlmNWFmOWUwMTUxYTIyODQzMWZkMWViNGNlYmE0NDJmOGIgcmVsZWFzZTI3LW1haW50Cis4NjY3NCBhYTY0ZDRmMWE3OTU2MTUzNWNhZjViMTY3MjczODU0MTM0YzY4Y2E3IHJlbGVhc2UzMS1tYWludAorODY2NzUgMmZmNzU4MzE1ZmExMGM1Yjg4NmRjNmVhZjI0OGVlNjZlM2Y1M2FjMiByZWxlYXNlMjctbWFpbnQKKzg2Njc2IDdiNzA1MTI4MjdjZjM5NGQyOWU4YjVhYzFhZDY0OWM3NDkwNjU0NDEgcHkzaworODY2NzcgMGE5ZmQ1Yzk0ZGMzNTk1ODlkNGNhMTIyYThiNGZjODEyNjg2ZDVlZSByZWxlYXNlMzEtbWFpbnQKKzg2Njc4IDRjMmIyYmU3MTQ1N2Y3NTBiYmM2Yzc2Nzk3MzRhMTBiYjAxMTMyZDQgcmVsZWFzZTI3LW1haW50Cis4NjY3OSBjNmI3ZGYxYmRmNTBlNDhiNjBkZDdmZDI0NDY3ZTc0ZWM3YTQ2MzhmIHB5M2sKKzg2NjgwIDdlZTU5MGFlYjJiMzQyMTI0ZWViMzZkYjA0MjFlMTI0OWEyNTZmZjAgcmVsZWFzZTMxLW1haW50Cis4NjY4MSBkOTc3NDEyMWE2ZGZkYTdmNWU5MGI5NDVmN2Y3MzQwYmVjNmY4M2RmIHB5M2sKKzg2NjgyIDZmMjVjYWMyODM2ZWFkNzk2MzllYjg0ZTVhYzEzOWJkMTA0NGRlYTIgcmVsZWFzZTMxLW1haW50Cis4NjY4MyA0ZjM1ODY2ZmQ4Y2IxMmVhODVlZmVjNjA2ZGRiZTYzZjY2OTY0YzgxIHJlbGVhc2UyNy1tYWludAorODY2ODQgZjE1MGI2Nzg1NDhlZGYwOWM5ODJkYWUxMWQ3ODgyY2M3ZDA4M2I5OCBweTNrCis4NjY4NSAzMzYyNTg5YzBjMDJhYmUyMDc1YmRmYmI5NWFiNGI1ZTUyOWFkMWZjIHJlbGVhc2UzMS1tYWludAorODY2ODYgZTBlY2NmYTlhZDZiYTBhMDRiZGM3ZDRiMjRjOWUyNWE4YTA3ODdmNyByZWxlYXNlMjctbWFpbnQKKzg2Njg3IDgyYWM3NTNiZjYyYTlhMGQ5MDA0NzZiZTYxMjZkOGFiYzM1ZmViNDMgcHkzay1jZGVjaW1hbAorODY2ODggZTg4NDAzMzFmNzc4ZTc3ZGJlMGRlNTk5NmIyZDlhOWU3MWIyYzk1ZiBweTNrLWNkZWNpbWFsCis4NjY4OSBhYTRkZWFmMzQ0ZDE5OTAyNmU3YzJkY2MyYzJjNWE1MzRiNDZmMGZkIHB5M2sKKzg2NjkwIGRjYWQ3MDZiMzhmYzQ4YjhkZWFhZGFmZjJiOTZmZTU2MzVmZGY3YjAgcHkzaworODY2OTEgMGM2NjgxNDZiMTI2YTZmZDQyYTE1MDAyYmFlOGQzYzkzNThkZDZkYyByZWxlYXNlMzEtbWFpbnQKKzg2NjkyIDhkY2IxNzc4MWU4MzI0ZmYwYWMyNTYzMWExMGFhZGZmZGEyMjA5YmIgcmVsZWFzZTI3LW1haW50Cis4NjY5MyAxMjdmNTE2OGE3NzRmOWNkZWY1NWY0NjA4MWE3NTA1NWE5ZTYzZjM5IHB5M2sKKzg2Njk0IDk4ZTFkZGQ1MDViYzI5YWZhNGE4ZmM0ZTgxODBhMmE2YTlkMTkwNTUgcHkzaworODY2OTUgNThhYzUxNjBkMWI3YmJiY2U3OGQxNTFkZWMwZWRmYjVhNmI2ZGQzOSByZWxlYXNlMzEtbWFpbnQKKzg2Njk2IDNmNjIzNTBlZGQyZTkzNjQ2N2UzNzBkNDUyMTYzNjZiNDNhYTE2NTQgcmVsZWFzZTI3LW1haW50Cis4NjY5NyA0MDEwOTMwMTgyODU0NGYwNDNhMTQ2ODAwZmE3ZjdlNTBiY2M3ODhmIHB5M2sKKzg2Njk4IGNjOWM1MWY5NTI0ZjlkZmUxYjMyMTZhOTQ0ZTY2MzA1ZDljNTllYjkgcmVsZWFzZTMxLW1haW50Cis4NjY5OSAyYzM3MDA2NWMxYjRkZTkxNTFmMDM4NDRlNTk4NWJjMDIwNDY2ZDA3IHB5M2sKKzg2NzAwIDI2MGZmMzc5MTE1YzdiN2M0NWU5ZTBlNmUzYjgxMzgxMzE3NDEwNDEgcHkzaworODY3MDEgZGNiNjBiZjI2ZGNlOThhNjBlMTg3Y2I0ODZlMDY2YTBjZjA3MTk0YyBweTNrCis4NjcwMiA1YTY5YTU4OWM2ZjA4Njk3ZWRlNWRlM2UzMzE5NWExNDg1NTc4MGU3IHB5M2sKKzg2NzAzIGE3Mzk4ODNlZTZjNTYwNjE3ZmM3NDNhYTY2NWNlYTVlNTVkZWE5NDYgcmVsZWFzZTMxLW1haW50Cis4NjcwNCA5NTIyODJhNTA0N2ZjMjFmZmFiMjI4NTFiMDQ1NzE3YWNmZWU1YWNiIHJlbGVhc2UyNy1tYWludAorODY3MDUgMzMwM2FiZTI5ZDBiMzhkMjI2OGExOWU0OWFlNTRkOTNjNzQ3ZTJiZiBweTNrCis4NjcwNiBhNGI3YTQxZGFiZDk0YzgzNjExNWFiNzA4MzkwNWUwZDc2ZWJlOTBiIHJlbGVhc2UyNy1tYWludAorODY3MDcgNjNmMTE0YjA5Y2FmYTkyMGY0MDA0ZWJiMzYwMjdmZWZhMGI2MzRhYSByZWxlYXNlMzEtbWFpbnQKKzg2NzA4IDBjZTU3OTUxYWVjNjJhOTIzMTE0MzJlMzc1NmMyODk3ZWQ0YTFjN2YgcHkzaworODY3MTAgYzg2ZjE3MTA0NjdlN2E1ZDRhYzg4NjFhOWMyMWQ4Nzc4OWM2ZmM3YiBweTNrLXVybGxpYgorODY3MTEgNmNhMjg5MGJhYjY3OGRmYjViMDNjYTMxODhmOTZhZjdkYTVlOGU3ZSBweTNrLXVybGxpYgorODY3MTIgMGY4YzUyZWM5ZjdmMTVjMWUxM2RkZjcxOWYxOTBiZTllMDJjNWJmOCBweTNrLXVybGxpYgorODY3MTMgOWFkZjM5N2Y1NmU3YjQzYzdkYTk3MTc2ZWFkZDAxOWNmN2Q2NzNiYSBweTNrCis4NjcxNCA4YjRhNTMxYWQzNTJhNDQ4YjhkN2Y5YTkzYTNhOTQxMWZjZmU1YmZiIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcxNSAxYWU1MWQxM2MyNWI5MjM1NjA2ODkzZDE4MzdiZDM2ZmEyZjVmZDY4IGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcxNiBiZTBmNGQ4YmZjZWFhY2E1NjQyN2ExZTIxMWFkYjQ2MjI1NjY1NGRmIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcxNyA5ZjIzYzVmNDg1NmMwMjQ0ZTg3OTM2NDgwNjkzZjViMTYyMTEyYzMyIHB5M2sKKzg2NzE4IGJhYjljMjA3ZTFjZjhhZDE2ZDIzMjQ0ZDBkYTJjMTQzZTdkZWI0OTEgcmVsZWFzZTMxLW1haW50Cis4NjcxOSAxNDA0YWIwNzZiNThmNDRjNjIzYzZmMWJhYmFmOTVhMjFiMmQ3ZTRmIHJlbGVhc2UyNy1tYWludAorODY3MjAgNDM2ZGFmMDk1ZTg5NjhlNWNlYWM0ZjkxYWRjYWVjNThiOWRiYjdlNyBweTNrCis4NjcyMSAwODI4ODE0ZTAzYWRkYjgyMGE3NTRkYmE0MjQ0MTNiYzVhMjkzNTQ5IGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcyMiA2MWY5ZDNiZjIzNGNmMGY5MGRmOTJiMzllN2ZiZDg2Y2JjNGNhZjVlIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcyMyAwOTI0ZjQwYmI2ZGM1MWM1YmNmNjYyNDhmZmViMmE0YzQ3NzVjN2NhIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcyNCA0MjU4ZTI4Y2Y0NDA2MGFlNDNkOWIzOTgwYmViYjBmYTYyOWQwYzJjIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4NjcyNSA2NTJiYWYyM2MzNjg2ZTUyMGFlZDNkMGU3Yjc3YzZlNWE0YTI0NDNmIHB5M2sKKzg2NzI2IDI4ODllZDczNDFlMDdlOWZmOTRjYTE1Yzc5MzYyYTE0ODY4NTlhNzEgcmVsZWFzZTI3LW1haW50Cis4NjcyNyAwYTFiYWE2MTkxNzFhZjMyNDg2OWVjYmNiNmM3MTQ0MDI5ODc1OWVjIHB5M2sKKzg2NzI4IGYzYTYxZGFmYmY2YmFkODhmMTVmODFkN2Y1MzAzYTU1ZDQ3NDE4YzMgcmVsZWFzZTI3LW1haW50Cis4NjcyOSA0ZmVkMDA2NTk4MzE0MWJhMDJhYzA2NDYyNGJjYjY3ZDFiYjNjNDlmIHB5M2sKKzg2NzMwIDgzYjA1MTdkMGZjNWUwMmYxZTllYmI1NjA2MjE3OGQ0OGM3MGZkN2YgcHkzaworODY3MzEgYTc2M2VkM2Q2ZThjYWE4N2FjMTdhYjgyMDBlOTM3ZGU1Y2U5MjNmMSBweTNrCis4NjczMiA4MmRhMmFiY2U3MjIwYzM0NjMwYzVmOWM5MGYzMzI3MTFhNDQ0NGZmIHB5M2sKKzg2NzMzIDljZDEwMzY0NTVlN2Q2Mjg1YjRjMWZiMzQzZDMyMWIxZTZjNDc3MzkgcHkzaworODY3MzQgMzk1YWM2ZTMxOWE4OTU5YjMyMTE3ZjE1YTBjY2EzNzZlYjA4ODM5YSBweTNrCis4NjczNSAyNmY4MGY3MjRiNGZmMTY5MDA2NTcxYTVmM2Y0MGEwZWVlYjM2N2FjIHJlbGVhc2UzMS1tYWludAorODY3MzYgMjUzMmM0YmMwMzczYTE2OGNjZDhlNjc3OWM4YWZiYmU3NTcyNTEyMiByZWxlYXNlMjctbWFpbnQKKzg2NzM3IGQ2ZThiN2UyNTBjNjVhYzM3ZTkzOWRkODc3Yzc1MDBhNGE3MGI0ZjAgcHkzaworODY3MzggYjczODEyNjkwYzZlNjU4ZmJjOTlmZDdkY2QwNGQzZjdmODdkOWQxZiByZWxlYXNlMzEtbWFpbnQKKzg2NzM5IDI4NzcyNjViZGIwMWNhMTVhYjE1ZmY2YTcwYjViNDU4ZTg3M2UxNmEgcmVsZWFzZTI3LW1haW50Cis4Njc0MCA5OGNhNjU1MzIzYzA1Y2IzZDFhYTczMjZkOGYzNzlhNmEzNTI3ODRiIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4Njc0MSA0ZGQ3ZWIyZDk4NTZjZWYzZmU0MTYyZTY3NDJiM2I5OWJkODlmNDAwIGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4Njc0MiA4NThlODZkYjQ0MmY1YWQ4MWFjYjQ0OTM4ODE4YTczYjQ0MzY0NWQ1IGRtYWxjb2xtLWFzdC1vcHRpbWl6YXRpb24tYnJhbmNoCis4Njc0MyBjZWFkMDRiM2M1ZWQxM2YyZjViM2JkYzRmZjFmYjg5OTc3NDJkMzAwIHB5M2sKKzg2NzQ0IDBjYjI2NTI2NDE5ZDg4YjdhNDZkNTM1ZWUzN2E1NzE2Nzc4ZWEyZmYgcHkzaworODY3NDUgYzU0YzQxMWQzZGE3YTE0YjZiM2U4OWUwMjU5NDFmMmRkNjI4NjQwNCBweTNrCis4Njc0NiAwM2Q5MzM5NDhiZjNlYWE4Yzc5YzY0OWRlYmQ1NmNiYjZjZjU5NTE2IHB5M2sKKzg2NzQ3IDY3ODgyMTA1ZGQ2NTU4YmNiNTBjM2YyNzcyNWFjOTcxN2NiOGU2ZTMgcHkzaworODY3NDggNGQzOTUyYTIxZTI1NzYwYTI5YTBjNjhjNzUzMzI4ZWI0NjE0NWU5NCBweTNrLXVybGxpYgorODY3NDkgYWU4MmM3NzA3NjljYWQ1NWYxZjIwNjk1OGRiODdjNTNmNWU3ZmQ0NCBweTNrLXVybGxpYgorODY3NTAgMTE3OGUyNTQ1ZGNiNWM2ODJhMjA2NWM1MmIzYWI1YzQ5ODJmOWVjNCBweTNrCis4Njc1MSBlZGVkNjkxNDk3Yjc0OGMzY2ViOGVkZTBjMWIxNjdkYzcyOGRhNTVmIHB5M2sKKzg2NzUyIGYzZGY5M2UyNjI2NzVhYzViOWNlOGQ3NzFmODA2ZTg5NzdmNWViNjQgcmVsZWFzZTMxLW1haW50Cis4Njc1MyAwZGE0MmNkMDE1NzY1NWRmY2ViMGNlMjExMDU4NzhhYmZkMWY5Y2U1IHJlbGVhc2UzMS1tYWludAorODY3NTYgNDU3YzdlNzA0ZWMyOTljMzlmNjE1MjdkZmI2NmVhMDVkMmQxZWU5MiBweTNrLWNkZWNpbWFsCis4Njc1NyAyZDZjZGM4MTg1Y2FlNTc1Y2ZkMjNkZmFiM2VkMTBlODM0OTU4YTBiIHB5M2stc3RhdC1vbi13aW5kb3dzLXYyCis4Njc1OCAxNDBkOGE2NTc3MDU0MzNhODM0NWVjODRjM2NmYjVkMjU1M2QxN2NjIHB5M2sKKzg2NzU5IDA2ZDIzMDI2ZjkwNDU2OWI3ZWUxNThmMmViY2FmZWI3ODA0MTk5ODUgcHkzaworODY3NjAgZjU5ZGJmMjhlMTJjM2Y2YjljYzhhOWE0NDZiMjBjODJkYzM4NTc2NSByZWxlYXNlMjctbWFpbnQKKzg2NzYxIGU0OGVkMmVmNmQ1ZmZiMzkyZDFiZDc4YjkwMzYyNjgyZDk3Y2JmNWEgcmVsZWFzZTI3LW1haW50Cis4Njc2MiA3YWI0ZmRhNzcwMzEyNzY1NTMxMjRiOGIwZDlmMjgwYjdkYjk0NWE5IHJlbGVhc2UyNy1tYWludAorODY3NjMgMTkyMzIwMjBlNDkxZDc4ZWYxYjA2YTNkN2E5M2VjNzk2NzUxMGUxNyByZWxlYXNlMjctbWFpbnQKKzg2NzY0IDhjZTlhZTVhMTU0MjdiMDdkZGZjMGEzYTE0YTYwNjRhZWYyNjVmY2YgcmVsZWFzZTI3LW1haW50Cis4Njc2NSA2YzM1YWJjN2QwZDIxOTJlMzIxMzlkMjFiYmY5NzI1ZDg3OTllMThlIHJlbGVhc2UyNy1tYWludAorODY3NjYgNDVhYjU1ZmEzZGMwZGY5NTgxNjRiYzAxNDQ4N2IwMGEzN2ZmMDA0MiByZWxlYXNlMjctbWFpbnQKKzg2NzY3IDc3NzcxYjA4NWVjYTc1ZDRiNzcwNThhM2M0OWRmZGU2NDFjMjY5MTkgcmVsZWFzZTI3LW1haW50Cis4Njc2OCBhODAzZmQ4NDFmZDE3YzNjNDM1OGYyOGQwYjFmNjJiYjU4ZGNjODZkIHJlbGVhc2UyNy1tYWludAorODY3NjkgZDZjNTc1MDE1M2JiMTE4NjQ0YmUxMDY5NTlhYTE1NTI3Y2JhZjEzOSByZWxlYXNlMjctbWFpbnQKKzg2NzcwIDM3YjM3YjZhODk3MmJkNmYwNTY4ZDkxZjk1ODhiZTZlYTA3ZjI1NmIgcmVsZWFzZTI3LW1haW50Cis4Njc3MSAyOTU1ZjMzNzk2OWU4MTY0NGYxMDdjYzJlNzg2MTlkMjBmNjA0NTk4IHJlbGVhc2UyNy1tYWludAorODY3NzIgZTEwZjYxOGM5NjdhYzI5M2M2YjJhMTZlNTg0YTEwODZkYmQ1OTY1ZSByZWxlYXNlMjctbWFpbnQKKzg2NzczIDgzNWMxNzYyMzlkMDI1N2IyZTY5NjYwMjE5MTE1ZGVjY2U0MGQxNzUgcmVsZWFzZTI3LW1haW50Cis4Njc3NCBmYjJhYTQ1YTFiMjJlM2IxYjVmMzM0Mzg0NmExZmUwYzUzMTI5YWIyIHJlbGVhc2UyNy1tYWludAorODY3NzUgOGI2YTllY2JlOTg5YzBiNGMwYjdiZGY4YmE1ZjlkZTU3NWY1OTRiZiByZWxlYXNlMjctbWFpbnQKKzg2Nzc2IDJlNTgxMjZkYmFkMDg3MDNiZTJmMzNjMzhhODdjNDFkZTZiNTZjZTcgcmVsZWFzZTI3LW1haW50Cis4Njc3NyA0MTM2NTE1Y2RmYWNkZmM3ODQ0OThhMmJiN2MxNGQzYWI4MjQ3YmEyIHJlbGVhc2UyNy1tYWludAorODY3NzggN2MwZWI4ZDU2MTQ2YjlhZWFmMzk3YzRlN2MwZDRmYjdmMDE2MGExNiByZWxlYXNlMjctbWFpbnQKKzg2Nzc5IDcxYjc3MTUxOTMzM2EwNGIxMjMzZDFiYTVhZmRmMjY2ODQ3Mzk1YTUgcmVsZWFzZTI3LW1haW50Cis4Njc4MCBhMzcyZmM0ODYyODE2Njc0MTY4NDQyODExNTIwZGEyOWRjN2ExNzYxIHJlbGVhc2UzMS1tYWludAorODY3ODEgNDVlNDkyNjllMGQ4ZWYxZGQyODIyM2Y2NDlhMmVhZTdiYTY5MTIzYiByZWxlYXNlMzEtbWFpbnQKKzg2NzgyIGU3NTkzZmViNWFkNWMzZmIyMmI3NDg4MTA5ZjdiNzdjM2UzMDUxMWUgcmVsZWFzZTMxLW1haW50Cis4Njc4MyBhOWYwZWM2MDRjOGFkMDg4MGJkYTE5N2QxZGIxOWU5YTU5YmVjMDIwIHJlbGVhc2UzMS1tYWludAorODY3ODQgMDVlZTZmOGMwMjYwYWE1YmUxZTVhMWY0Zjc2ODkxNDRkNWU5ZmJkYyByZWxlYXNlMzEtbWFpbnQKKzg2Nzg1IDM5YjVhZjc3M2U3NTk2YWI3NzcxOWFmMTNkMDY1Njk0N2Y1OWRmMjcgcmVsZWFzZTI3LW1haW50Cis4Njc4NiA5YmVhZDkwOWQ4ZWZlZGVjN2Y0MDYzNGQ2MDM2OWJlNTRmYjY4ZGI3IHJlbGVhc2UzMS1tYWludAorODY3ODcgOWIzNDRiZTFiZTlhN2U5YjkwMjU0ZWI0YWQyYmVjODA3NTlhYmVlNiByZWxlYXNlMzEtbWFpbnQKKzg2Nzg4IDNlZTZkMDM4YWY5YjQ2ZTgwOTM0ZmU5NzBjZWUwZTY3NzEyNjdlMmYgcmVsZWFzZTMxLW1haW50Cis4Njc4OSA3MjgxOTM3YjJkNjViM2Q1OGJjN2NiZDU4OWI0MzczOTQ0YzVlZmZiIHJlbGVhc2UzMS1tYWludAorODY3OTAgOWQ2ZTI0NjVmNTkyNTQ2NGZiMDk0ZGVlNWUxOGVhMmQ2ZWQxZDgyOSByZWxlYXNlMjctbWFpbnQKKzg2NzkxIDRlYTFjNmE0ZTkyZDBmYjk5NmI0NDk4MmUxNjgxZWY3ZGE3MTJiZDIgcHkzaworODY3OTIgMmMxNjcyODE2MmZkZGJlYjZiMmZjYjJmOWZhMjI4NzdmZjFmMjZhMSByZWxlYXNlMjctbWFpbnQKKzg2NzkzIDAwMDBiYmFiMDhiNDQ3Njg0NmMwMjFlNDU5NzkyMWZkMDY1MmUzZjQgcmVsZWFzZTMxLW1haW50Cis4Njc5NCBiMGU5N2RiZDk4Yjg0MzhlMWM2ZTgxNzYyYjQ0M2M0ODk1YjRhZjBiIHB5M2sKKzg2Nzk1IGZhMDE3YmNhZWUxMDAwM2IyMzg4YTFkZjMyNDE3ZmVhZWI4NjY1YTkgcHkzaworODY3OTYgNTA4NGNlOTQ4NDM3ODU5ZDUxYTI2NzYxNTA0NjcxYThjYzBiYzNlNCByZWxlYXNlMzEtbWFpbnQKKzg2Nzk3IDQ2ZmVhZWM3MjliZGM2N2JmYjIwNDkxZmRhY2Q2NjI5ZjRhNzBmOWEgcHkzaworODY3OTggZmI1YzQ1ZDM4ZTJhZjUxNTBkYjI1OGMyZjU0MzM4NjkwMGQzOWI5MiBweTNrCis4Njc5OSBhYzUyMDdkZDhkOWEzMzQ2NjNmNzg3NDg4Njk4YTU0ZTNhNzc1OWNmIHB5M2sKKzg2ODAwIGFjZWI0NTE2YThkNDRhMmQ1MGFlNWM1NmU2NDNhMGNiYWUzMTVkMjEgcHkzaworODY4MDEgYmY1ZjQxNzRiOGMyZDU4ODhhMDhiNGNjNmI2MzljZWQ1YjFlMDI3YSBweTNrCis4NjgwMyAyMzFiMGJiYzFmOTA0NjRjNWRkMzIyODc5ZWY4YWIwMmRiN2M3YmFhIHB5M2stc3RhdC1vbi13aW5kb3dzCis4NjgwNCAzMjk4NDJkZjA2YTEwYTNmNjkxNWIzYzEyMGVkZmNhMDE1MTk4ZjU1IHB5M2sKKzg2ODA1IDBlMWRkNDU0OGFhMTdjMWIwOGJmN2VkOGVhMjI4ZjFlZDY2NjI4OGQgcHkzay1zdGF0LW9uLXdpbmRvd3MKKzg2ODA2IDEzMmE5NGVjMGNlODBkNmVlNjVhNzdlZTY1MDRiM2RiYWVmMDVkZTUgcmVsZWFzZTI3LW1haW50Cis4NjgwNyA0Mjc5ZTQxN2IyYTAyNGIwY2I0YmU4MDJkMTEyMDlkMmFkOWUyMDMyIHJlbGVhc2UzMS1tYWludAorODY4MDggZmFkZjc0YzBjNTA0M2Q5Nzk4ZWIzOGE2MDJkYTY3NjBhZTIzZGU1YiBweTNrCis4NjgwOSA3ODZlZTExZTBjODQxYTBiNTNlNjE0NzEwMmRiZWQ1MzlhZGI5ODRhIHB5M2stc3RhdC1vbi13aW5kb3dzCis4NjgxMCBjN2EzNDJhNzk4ZTc3MTM3NzkwMDQ2Zjk4Y2UxOTljMTkyYTcyYjRkIHJlbGVhc2UzMS1tYWludAorODY4MTEgNzQ5YjFlNzEzOTFjYWUzNjIyZTQyODA1ZjM2N2IyZjZkZDFiZmUwOSBweTNrLXN0YXQtb24td2luZG93cworODY4MTIgYzgxNjNjMmExYjZmNGRlMTQxNjYwZTNmYjM5MWM5OTJhNzI3M2U4ZCByZWxlYXNlMjctbWFpbnQKKzg2ODEzIGM4MmNhM2JlYjRkZjE1ZTk1MzJkYzEzNzVmMzlmZGJjNmRiYTk4MjcgcmVsZWFzZTI3LW1haW50Cis4NjgxNCA5ZmVmZjE3N2Y0NGQxMjY5YWUyM2Q2MzY5MGNiNjMxMWMwZWY4Yjc2IHJlbGVhc2UyNy1tYWludAorODY4MTUgYWQ3OWY5YjNhMDIxOTcwYWYwZWVkNGUyYzdmNDFmZDM3OTdkMzQ1OSByZWxlYXNlMzEtbWFpbnQKKzg2ODE2IGYyMjIyNWE5ZDcyMDgyYWY2NmE5MzMzMDgyYTAxMWUzYjRkZjJkN2UgcmVsZWFzZTMxLW1haW50Cis4NjgxNyBlYTRlYzZkZTljZWZlMDlhODZkOGIzMjRhMmM4ZDBkODQ2MjgwZjZkIHB5M2stc3RhdC1vbi13aW5kb3dzCis4NjgxOCBhYmJjNThhMDZlNDNkNDhkOWVmM2Y4YjU0ZTZlZjY0OWQ3NTM0NDQzIHB5M2stc3RhdC1vbi13aW5kb3dzCis4NjgxOSA5NmNhOTlkZmVmZDhlZTcxYjQwM2RhOTZkYjliZWQ2ZDZlYmU2NGVkIHB5M2sKKzg2ODIwIDg2YTY1MzlkMmMyNTM1ZGVlYzUxOTQ3ZTQ5ZDZiZjM4MjE4N2Q0NWQgcHkzay1zdGF0LW9uLXdpbmRvd3MKKzg2ODIxIDBiNjM0MDczMDkxM2M0Y2M1NTc1OTZlNmQ4MjFlZTYyYmQ0YTU1YzQgcmVsZWFzZTMxLW1haW50Cis4NjgyMiBiNGJmZGM1MmFkNTEwNmIxNzRhOWRjMTY3M2VmYzhjOGUzMzQ3Y2M3IHJlbGVhc2UyNy1tYWludAorODY4MjMgY2NmMjYzM2I5NWRkODlmNWMxZWYxNTg5NjQzNTE0OWJkY2I2OTRjOSBweTNrCis4NjgyNCA2MzM0MWRkMzYwYWY1ZjcwMzg3MDJiZjZkOTE0ZmMwN2RkOTBhMWE4IHB5M2sKKzg2ODI1IGZlZTk4YjYwNDEzOWM3ZjViYTgxM2FhNzcyODZmZTRjZmI5ZjJkYzUgcHkzaworODY4MjggNTk2MjM5ZGEzZGI3OWRlZDBjNTgyYWQ4ODRmYTZhNTVkZTg1ODBlOCBweTNrCis4NjgyOSBkM2JhZDQxYWQ3MDE3Nzc4ODg0NTQxZGUyNzM0MjlkYjRkOGFkOTIzIHB5M2sKKzg2ODMwIDU4YzJhYzYwY2NiOWRhYjRkMjVlN2UyZTkwZGRlMjc2OWJkYjQ5N2YgcmVsZWFzZTMxLW1haW50Cis4NjgzMSA4MmFkZTIxM2E2NmRmOTJmYjc0Mzc5MjExN2Y1ZjBkYmQwYmY2ZmQ3IHJlbGVhc2UyNy1tYWludAorODY4MzIgNTM5NWY5NjU4OGQ0ZjAxOTlkMzI5Y2I3OWViMTA5NjQ4ZGM0ZWY1ZSByZWxlYXNlMjctbWFpbnQKKzg2ODMzIDdlMzhmOGZiYmFkZGFiOGExNmE2NjVhNDk0YWZlY2ZjZDUwZGYzZTggcmVsZWFzZTI3LW1haW50Cis4NjgzNCBhNGY3NTc3M2MwMDYwY2VlMzhiMGJiNjUxYTdhYmE2ZjU2YjBlOTk2IHJlbGVhc2UzMS1tYWludAorODY4MzUgZGMyNmU0YTdkMmU2MGQwNTIzZTYxMDIyMWM1NTk3MTVlODI5OGU0NiByZWxlYXNlMzEtbWFpbnQKKzg2ODM2IDYzYWIzOWQxMTg2MGUxNTYyODMwNDAzMmRiMzdiYjVhOWZjZTFhMmQgcmVsZWFzZTMxLW1haW50Cis4NjgzNyA4NzM3ZmIxN2Y0NDQwMWEwYTJlOTdkNTRjOWFlNTBkNWZjNGNjNzM1IHB5M2sKKzg2ODM4IGEyN2ZiMWU2ZTA5ZDQ0ZTRmMTFkNzdmNDk3MjE2NzQ0YmRhZDJlYWEgcHkzaworODY4MzkgNDFjZDA5MmJlOTNhYTQwNjQ0YmM4ODVjNzkzZjc1NDNjNDFkOWM5YyBweTNrCis4Njg0MCBmOTUxMjc0YWYzYzdmNTdjZjA4NDNkMGRmNWI5ZDc4NGNmYjFhYmNiIHJlbGVhc2UzMS1tYWludAorODY4NDEgNzJmMGJlYTA1NDU3NzkwMDg0YmY4Mjc4YWJhMDZlOWYwMmY1ZjhiNCByZWxlYXNlMjctbWFpbnQKKzg2ODQyIDFiNzdmMmViMTYwNjc4NjZhOGI5MjVlOWZkZWUzZmI4MzM5MDViNGQgcHkzaworODY4NDMgMGYwYzZiODc5Nzk2YmVlNzdlYTNiNzVjZjAyZGFmMjNiMjMzODlmZCBweTNrCis4Njg0NCBkMGExNmY5ZjM3NDFmZDNjOTM0Y2ZmZDM5NDkwNzYxZjc1NmNkYzg2IHB5M2sKKzg2ODQ1IDUzODE4ZTRjNGZjYTU2NDg4NDA3ZDljY2IyZjhjOGMxYmE2NWY2NjEgcHkzaworODY4NDYgNWJlM2VmYjQ3YmZkNTgzNjg3ODZiNTJlMzFjMGE0NTgzNzZlNmJlYSByZWxlYXNlMjctbWFpbnQKKzg2ODQ3IGUwYTUyNTIwMmM3N2NjNjc5NzU1ZmY4MWVlMzUzNTJlMWViYmRhNjQgcmVsZWFzZTMxLW1haW50Cis4Njg0OCBjNGFhYzhlNjk4ODg2NWI0MGVmN2E4ZjcxNzg2YmFkODg3NWQ1N2Y3IHJlbGVhc2UyNy1tYWludAorODY4NTAgMjdlZTQyYjBmYWY2Y2NiMDdlMzBiMjFkOWQ2ZjY0YjdjZTc4MGM3MCBkbWFsY29sbS1hc3Qtb3B0aW1pemF0aW9uLWJyYW5jaAorODY4NTEgNzJmZjQzNTMyMjE0ODBiNjNkNjgxODUzYjJjODAyYmQwZWY5NGY4MSBwZXAtMDM4NAorODY4NTIgZDI0YWEzYjFlZTI4MTY5NzQ0OThmZTMxMzM1YTZkOTAwNjI3NmVjZCBwZXAtMDM4NAorODY4NTQgMDNkMGQxODY3MTNiNGZlNDk3Y2NlODRkMGE4MzE3MzE0MjVjOTNlMCBweTNrCis4Njg1NSBiZGQ1Nzg0MWY1ZTJmNDZmOGMwZDZhMDJkNDI3MDhlYzU3NDQ0N2I0IHB5M2sKKzg2ODU2IDkzY2Q0ZGU4ZWUwYjA0YTEzMDJmYWNiODBmZmJkNDI2MjZkOGIwNTYgcHkzaworODY4NTcgNjllYzc3NTI2MTgwZmJlOTBlMGIyNDZkMmI4NjM3Yzc4Y2RmZmQwYSBweTNrCis4Njg1OSAxNmUzYzk1YmM0NmM1YTRlY2JlMjk3NjYzNWMxYTdmOGZlYjU2YWVjIHJlbGVhc2UzMS1tYWludAorODY4NjAgN2E1ZjI2NTQ4ZTFjMjg1MzBjODc0YWMxMjg2MWI5M2ZmNzU4YTQxNyByZWxlYXNlMjctbWFpbnQKKzg2ODYxIGU1ZmNiNDIyNmI0MmE2NzM2ZjQzZGYzMTQ3MGVlNzk0NGVlOGFiNDAgcHkzaworODY4NjIgMmUwZDkwMDlhYjZiOWUxYzcxZTFmOTZlNzJkOWQzZjMwMmIyOWRlYSByZWxlYXNlMzEtbWFpbnQKKzg2ODYzIDhmZDEzYzVkMzg4MjM5NzQ0MWI5NzA3NmE3MzRmMDFhYjkzZGY2Y2QgcmVsZWFzZTI3LW1haW50Cis4Njg2NCBlODEyZGIzNDRhNjVkNTUyYWMwMjAwZTU0ZTc3ZTFmOGYyNGZjY2FjIHB5M2sKKzg2ODY1IGVhZDUzMDcwM2I5YmU1Y2I4OWZhNGMyMzFmZTdmZTkzY2YzNTdhNjcgcmVsZWFzZTI3LW1haW50Cis4Njg2NiA2NjdkMjgzNDQwMTcxOWRhMmZhNDM5NWQ5N2EyOGRlMzk2NGRhOWY1IHJlbGVhc2UzMS1tYWludAorODY4NjcgY2Q2ZDBjYWZmZWYyNGJlMDZkMmVjODgwNmI2YzIwOTA4ZjMwZGFjNSBweTNrCis4Njg2OCBiMGZmMzMzZWMzZGExYmQ2MzI2YTE1NDdhMTcyYTA4NDZmODQzNWZlIHB5M2sKKzg2ODY5IGU4OWFhOTE0NzYyNGNhNjM5YjlhY2UzYjNhNTgwMDIxN2M2MTZlNmQgcHkzaworODY4NzAgZTczOTJmZmVlMDcxYTc2YWMwZWNiNTE4MDUxYzI1MjIyMjA4M2YxMyBweTNrCis4Njg3MSA2Y2E4OTIyZGFmYjUzYjU5ZDhlNzk3ZGVmZjdkZmFjZjQ1Zjk0MmIzIHBlcC0zODIKKzg2ODcyIDBjY2E5NjYxNTM5NTFiOTYzYmYxOWY1MWEwODA4YjFhMzhkY2UyYzAgcmVsZWFzZTMxLW1haW50Cis4Njg3MyBkZTZlNzljNWIxZWQ0NDNmZjhkNTRiMmZmYmY4NjdkODQyODRkY2M3IHJlbGVhc2UyNy1tYWludAorODY4NzQgNjc5OWQ1NGRiMzc4MTJhYmYxMGExZDJlMjA4Mzk1ZmE3ODUwM2Y0YyBweTNrCis4Njg3NSBlMzJhMzAwYWNhYzJmYzg2YzdkM2M0M2VlM2QxNDg0NzEyODFhY2M4IHB5M2sKKzg2ODc2IDllOWE3MDliMzg5ZWNhZTM2YjE0NmY5MDc4OTExYjFlZjY5MTc2ZTIgcmVsZWFzZTMxLW1haW50Cis4Njg3NyBlZDRiZmI3NWQyOGQ4ODA2NDVjODM0NTc5YWY1YjZmYTgwYTdmZjNhIHJlbGVhc2UyNy1tYWludAorODY4NzggMzEyYjI5MTZjZmQ0NWQ4YmYzMTFiZGJhMjYyOTNmYTg4NDk1ODYwYyBweTNrCis4Njg3OSAzMmU2NzVkYWEwZTUxYmZlMmY1NGQzNzJjY2JkZTJjNGI3YzNlYWU2IHB5M2sKKzg2ODgwIGYxNmJmNGNhZTVkNzM3ZmFmNDM2ZjBlMWVmZGNiNWY0NGRkNDcxYmYgcHkzaworODY4ODEgMjhiNjdiNTcwZjJiZjlhNTliZTQzNTJkYjE0Y2ZhMjI1NWRlZDQzMiBweTNrCis4Njg4MiBiNDA1YTdmMGFlZDcxYjhkYTU5MWJmZmUwZDdlMjBkZWYwNGI5YjM5IHB5M2sKKzg2ODgzIDgzMDRiZDc2NWJjZjc3ZjgzN2Y1MTY5YTg4YjVkNzQ0YjVlMmQwMzIgcHkzaworODY4ODQgNzI0OTIwYTAxNWY3MDFhMjFkZDdlMzI5YTQ4ZjU0ZTEzZDFkZTFhOSBweTNrCis4Njg4NSBlZGE4ZGEzYTc1YjNjNjI0NzAxNDM2OWRlZDU4OTBhZjIwOWZjNzliIHJlbGVhc2UyNy1tYWludAorODY4ODYgZGViOWYyZDM3YjYzYmQxMzFhYTk0ODg2OGFkZTNmZGU0OGM0ZTQwOSByZWxlYXNlMzEtbWFpbnQKKzg2ODg3IGZkNmU1NjUzYjMxMDI1MDYyZmI3YmE2MzljYzIyOTg2ZjJmYjAxZjggcHkzaworODY4ODggMTgzOTllNjIwYjQxMTBjZDQ5NmNjOTdlYTNlYTljOGVjYWMwNTAzMiBweTNrCis4Njg4OSBlNDQ0MTBlNTkyOGVlMzExNGM2NThkZjY3Y2QxODBlNWI1MDExNWQ5IHB5M2sKKzg2ODkwIGI4MGY1YmYyNmU5ODdiOGQ1NTBhNTMzZGM4ODQyNzU0NGFmMjkxNjEgcHkzaworODY4OTEgZjc5OTI4YWRhYjU3OWYzY2YxYWJmOGZkY2JlYjdhZmU3YzRiY2U0ZiBweTNrCis4Njg5MiA3ZWEwMmYzMWMyNTJjYmViNDNlN2ViYWNlNDkyMTYxMGE1Y2JlODRlIHB5M2sKKzg2ODkzIDJmNmQwZjM2MWFiOTJjOTdjNzk3NmU0MGE2NzEwNWIwYTQzMTc0ZDYgcHkzaworODY4OTQgMzQwMzY5ZmIyZTcwZWY0OTkxNzZjOGEzNGFhYjMzNzY2NTE0OWRhMyByZWxlYXNlMzEtbWFpbnQKKzg2ODk1IDc0NjdhMWMxMWFlYjQ2NTQ0NjU4OGFiNmNmODI2MTExMWQ3MTZmOTMgcHkzaworODY4OTYgNjU2ZDI0ZDE5NzQ5YjBiMmZhYzNkOWFkN2NhN2U4ZDJkYTE3N2E1MyBweTNrCis4Njg5NyBkNjEwMDc0OTcwZDc5ZTNmNTU3YjI3ZDFjNmI1Yzk4N2FjMzJhMDJkIHJlbGVhc2UyNy1tYWludAorODY4OTggMDRlOGJkOWExYWJhZTM3OTk4OWQ1MzFjODJjODQyZDQ1ODVjMDBjZSByZWxlYXNlMjctbWFpbnQKKzg2ODk5IDdmZDJjN2RiZGRhNjgzOGJkZjhjYjU4YjkwYmQwMjZkNmEzYTBiYTggcmVsZWFzZTMxLW1haW50Cis4NjkwMCAyOTg0YjU3ZDY3ZGE0OTNiODk5YjNkMzIwNTUxZGRmYjQ0ZDJmOTFmIHJlbGVhc2UyNy1tYWludAorODY5MDEgMmIyZmM0MjYyMTcwMWY4OTY5NTQyMzEyOTQ5YTc3MDhjOGZkOWZjYiBweTNrCis4NjkwMiAxMTU1MmVhNmE5NDRjM2IzMzY5MDdiMWEwMDlkNWQ5ZTAzNjIzNjNkIHB5M2sKKzg2OTAzIDY5M2Y3NDMwYzNjYTUwODA3YjMwNTBjNzE2MGY3YzM1YTk4NGFmOWEgcHkzaworODY5MDUgZmVlM2EyZjI0M2U4ZTdmMmIwMWQ5ZjEwNDQ3ZjE2MmFiM2ZhMzczYyBweTNrCis4NjkwNiAwOTIzZDliM2RlNmVhODIyYzI5ZDUxYTJmMTMxOGViNDZlYjRlZTBiIHB5M2sKKzg2OTA3IDVjYjUzZjA5NGMxYTg4ZDBjMWVjNThkZTE4MThjZmU3ODA5OTMyNzAgcHkzaworODY5MDggOTE4NGEzOTA5ZGUwYzk5MzkyZGJlYjM3NGU0NTQzMjkzZDUyOTQ0YiBweTNrCis4NjkwOSA4Yjk1ZWEzMTcyNWIzZWU4MWVhMjY4YzcxNTA5NDhkOGQ2NWNkNDZlIHB5M2sKKzg2OTEwIDM4YmVjOTBmZDhhYjYwM2Q4ZmY4ODkxOTQ4ZWQ5YjljYzkwODhjN2YgcHkzaworODY5MTEgMDBjOGNkZjUzOTM2YjM1YWJjMjFhZjAxNDNmMjkzOGRkOTMzNGM2OCBweTNrCis4NjkxMiAxNDg5NmYxMzEzZGIwOWZmNGNhZjM1MTBmZjVmMGNhN2IwYjQzMGE5IHB5M2sKKzg2OTEzIGZmN2M1OTM3NzkwMzAwYTYyYzE1ZGI4ZDY0NjIxYzM5YjFiNjdiMDkgcHkzaworODY5MTQgNzE4MDk4NWMxYzIyM2QzMzIwZDliMjY2MjY3YWM0ZTIyZTVhYjg3OSBweTNrCis4NjkxNSBlNWMyOGQ2NzY5Y2ZkMTcxNmYyNzMxZTNkYmMxYWE5NTk3Yjk4NzVjIHB5M2sKKzg2OTE2IDJiYWFkOGJkMGI0ZmM4NjVmMmQ4ZDRiZTI5YzQyMzYwZDA4MTk1ZDMgcHkzaworODY5MTcgMzcwMDJlNGZmNjc3MmZiZmVjOTFjNjE2Yzg1M2QzYzMwNGExZWJkZSBweTNrCis4NjkxOCA1ZGEwOTNiNDljMmEyZDM0MjM2OGMyOTY3ZTUwZGY5MTEwNzRmYmM0IHB5M2sKKzg2OTE5IDEzYzcxYzhjNWMwZjg1ZWQxNWMzMmQ5MDUzNjU2MjllZjA4YmUxMTEgcHkzaworODY5MjAgNGUxOGI5YmUyNWE0MDhlMWI4ZDNlNjc1NmRmYTYzZDI5YmUyNzc2MCBweTNrCis4NjkyMSBjZDg4NzY3YjhkMGM5ZmYxNDkxMmNmNWIwOTAwNThiNzM1OWZlNDE0IHB5M2sKKzg2OTIyIDQzOTY1NTgwYzU1NmRiOTQ1NGJmNzAxNDA4NjhkZmE3ZGIyOTYzYjQgcHkzaworODY5MjMgYzViNTQ4ZmQwYzhjODI2MTMyYzI1N2NjNGMwYzQ2Mjc0Y2MwYjJhNyBweTNrCis4NjkyNCBiOTMxN2E5YTNkM2FiNzQ3ZjYzZWZjMTkxOTY4ZWExMzFjZjcxNzQyIHB5M2sKKzg2OTI1IGUzMWE0OTcyMDg0YWY1MjY5NTI3ZmMxMGQwNmU4M2Y3NzgzZTAyODAgcHkzaworODY5MjYgMDc4ZTVjN2IzMTU5ZjBjYmZmMGU2Nzc0NzNkMTQ5ZGVhMzVjOWFhYiByZWxlYXNlMzEtbWFpbnQKKzg2OTI3IGU3ODQ0YjdmNmVkNDllYjgyZTQ4OTMyODc0MzVhNDEwYzg4YTg1N2UgcmVsZWFzZTI3LW1haW50Cis4NjkyOCAwOWVkNDExYTEwOTA2MjhlNmMzNzcwOTM0ODIzNGJkNjM5ZGNjOTdhIHB5M2sKKzg2OTI5IDkwYjZjYmYyYjExYjYxM2NiYWJiMjgyN2VlYzI3MjYxMzhlMmEyZjAgcHkzaworODY5MzAgODljZGEwODMzYmE2MDM5MWMxNjIxMzc5NDBkNDhmY2VjMjMyNmFkNyBweTNrCis4NjkzMSAwZGRmYTViY2ZiZDM3MDNhN2YyOTVhZjY2NmRlN2IwMzRlN2JiMjAwIHB5M2sKKzg2OTMyIGQyZWE3MTFhYjEwN2M1YjQ4NjkwMTg0ZmMyZjg1MmM2ZDQzZjhhNDUgcHkzaworODY5MzMgZGM3MzQ3MjkzNWM1OGRjOTI2MTNmOGFjNDQ3ZGIyY2Q5NWJhODA1OCBweTNrCis4NjkzNCA3ZTQ4MzM3NjRjODhjMDAzN2ExZjlkZmY3ZDRkYWY3MDYzNjQ0NGRmIHB5M2sKKzg2OTM1IDlhMjA1ODMwOWMxYWE2MDdkMjNjMTY4OWUwMmFhNzNlMGM0NGQxMWMgcHkzaworODY5MzYgYjhiYmMwZmM2MTkxODhjNDJlMWVlNDAzMzJhYmQyNzJjNzYzNGExOCBweTNrCis4NjkzNyBlMzM5ZmNhNmU1MWExMDE2ZjE4ODU3MDZkYTQwOTQ0NTFhMzRlN2MxIHB5M2sKKzg2OTM4IGEzNjMwZGQ5MjIxODBiMjE5ZmIzMWZiMzhhY2Q0MmJjMzljNmM0NzAgcmVsZWFzZTMxLW1haW50Cis4NjkzOSA0NWFmNWEwNjhjYzdmNDA2YWY4MWYzNmU5NWExNTk4ZGVjYzNiMTc1IHJlbGVhc2UyNy1tYWludAorODY5NDAgMWFkZDhjZWY3NTI3ZmU5YTZmZjY0OTEyOTMxNzkxYWI3MjAzMTA4NiBweTNrCis4Njk0MSA1ZjI0MTI4NDNiYjkxZTZkMWRmMjkzZThhYjE4YjEwNzRkOTA2ZDRlIHJlbGVhc2UzMS1tYWludAorODY5NDIgODYyOWMyYTIzNGRiMDM2ZDNkYjg0NjkwYjg0ZDZhZDFkNzI5Mzk4MSByZWxlYXNlMjctbWFpbnQKKzg2OTQzIGRlZTIwMTU1ZmQ2NTc0OGQ4ZmMyN2I0YmQ4MjUyZjQyNzk2MGY0MDYgcHkzaworODY5NDQgMThkODlhMzBmYWJmOTkzMzY5MWY0Njg4ZWUyNDE0Y2Q4YjFiYTU2NCBweTNrCis4Njk0NSBlMTFmN2U2NjIzNjkxMDZkMmEwN2IwM2UwYWM3OGY4ZTlkYTJlNTYzIHB5M2sKKzg2OTQ2IDk5NmY4NGU1MDViZTM1MmRkMDk0NWJjMDNkY2JlYTRhMWRkNDVmNWUgcHkzaworODY5NDcgYmY0OTVkZGUyMGUzOTMyZGE5YjcyY2IyOTZlN2JlYTBhNWIzNzFmZCBweTNrCis4Njk0OCAxMDk4ZmFiODVlNDcyNzM2YTg4YWY1M2NhNzdkNTdjOWMxMzg3NmJlIHB5M2sKKzg2OTQ5IGY5MDU4MmM2Y2I1ZmY2YjcyMzUxYmMyOGJkZTQ3N2FhNmU0Njk4YWYgcHkzaworODY5NTAgNjRjNjQyYmI3ZmY3OWFlNmIyNTFlYmVlMmU1ZWY0YjAwNTBiYjVhMyBweTNrCis4Njk1MSBlMDIwMjFmYmZlMjJiNWM1M2JiYjlhZWI4ZDc3M2JlYTZiYWQ2OWYxIHB5M2sKKzg2OTUyIDFjYmZlZmZlYTE5Zjc2N2RhNmEzMmExZWE5NzZmOWQwMzM5NmY2N2UgcHkzaworODY5NTMgNmU0OWFmMmUwODkxMDlmYzhhMjg2ZGQ3MTNkZTZmNjQ1MTdlOTgzMyBweTNrCis4Njk1NCBkN2RlMzFhZTk1YTQ0N2NjNTBiN2QxMzVhNTMxNTBhYTFkYjIyYzExIHB5M2sKKzg2OTU1IGQ3ZmExN2E0NjY5ZGI4NWFhYmQxNTA5NjFiMzk2YTc2ZDMyOTYyOWIgcHkzaworODY5NTYgYzYxNGY3ODY3NWQ0YTcwMTI0MzY0OGE0NTg4NjA1YTk2NjM5NGFkMiBweTNrCis4Njk1NyAwOWQyM2ZiMGQ0MjhlZGQ0MDQxMjY4YTRjMGNlM2RkZmM1MzliOWM1IHB5M2sKKzg2OTU4IGEwY2Y2NGE1MjkxZTc1YTMxY2UyM2JiOWQ5ZmRiYzZkMTIyNmVkM2MgcHkzaworODY5NTkgNzg1MWJmYjFiZDczMzlmODYwZWRiM2IxNjc4OTY1M2Q4YjMzYjg5ZSBweTNrCis4Njk2MCA3Njg1NGU0NWM0NjUyNzBmMmQwMDE4MDYxNTA2Y2ZhMDQ4ZTA5Mzg2IHB5M2sKKzg2OTYxIDhiZjkwYjg3MTBkMDM3ODI3YzkxNDE2M2Q1MDk2NDFlYjkwOGVhMWMgcHkzaworODY5NjIgYTVhM2FlOWJlMWZiMDM5NTI4Njg0YmJjMjI4OWZlZDI2ZDQxOGM2MiBweTNrCis4Njk2MyAxMDc1NjFjNThkZTEwNDM1MzE1YzNhZDFjOGYyZDVjN2M4Mzk3OTU0IHB5M2sKKzg2OTY0IDQ4YzI4YzI4MWQ1N2FmZmU0Njk3MWNmOWM5N2NlYWExMTgwZDBjMDEgcHkzaworODY5NjUgMzgzNTNiYTQwOGExZDg0MjZkYTc1ZjA1MTg4OGU0YTIwMjBjODZjZSBweTNrCis4Njk2NiA1NzdhMjVkNjU1YzRhYWZjMTg3ZWM0MDg5MDVmYzM0Nzg5ZjhhZTQ3IHB5M2sKKzg2OTY3IDgxZjRkMWZkZjU3MzQxMzJlZDMwM2E2MjkxMmQ0ZjAyYWJlYjE4MTMgcHkzaworODY5NjggN2MxYjRjYTQ1ZGI2ZGQ5ZTBjMjU4Yjk2MWRjNTFkMjUzN2QzNTA0MyBweTNrCis4Njk2OSA5NGZhNTNiNThlZTUzNDhlZmYxNWNhYzZkZDliMmQ0ZTVkZDg5ZDMzIHB5M2sKKzg2OTcwIDc4MjE2MjYzNDI1ZDE1ODFlOWZmOGVmYjdiOTk3OGE0Y2E1MDcwM2YgcHkzaworODY5NzEgNGE1OTk5MDIzMTBkYjhhNGQ5OWRjODZiMDhiMDFhNTU1NDQxZjEzNCBweTNrCis4Njk3MiA1YjY4Njc1ZDcyNjljNmE1YzA0OWRiZTM3YzJlNjFkMjQ4ODRhYjIwIHJlbGVhc2UzMS1tYWludAorODY5NzMgZmRiMzUyMzFlYmUyNTlmNTJlMjgzMThiMTFkOWFiOTFjZTEzZjkzYSByZWxlYXNlMjctbWFpbnQKKzg2OTc0IGZlMmE1NmExYmE3NDQzNGNjMDExYjViNzA4ZjVlMGZiMmMzZDllODQgcHkzaworODY5NzUgZmFhZDE3OTdmYzkyY2Q2MWVlNTdlOTMyMjZiMzA1OTlmZDg5OWNjMyBweTNrCis4Njk3NiA1ZmRhNTE5ODM0ZGY4NTJiOGU0ZjY2M2I3NTI2YmFiNjY2ODE1Y2Y3IHB5M2sKKzg2OTc3IGFlMTAyODJlN2Y0ZWM3ZjJkNzJjNDY1YzM1YjIyMTRjNzkzNjA2NjkgcHkzaworODY5NzggMzAxZDIzZDZkZDliNmVkODAzMzg2NDBkYWU3MWU4NTg0Mjg5NGUwYSByZWxlYXNlMjctbWFpbnQKKzg2OTc5IDUyM2E2ZmM1M2E3MDVjNDVjZmMyODk5YTM5MDY4NWQ2ZDZiYThlMjIgcHkzaworODY5ODAgYjMwMDQ4NjYzYjdiZmU2MWU3YjUyZGUwYmE5ODMxMGNhY2IzNzAyZiBweTNrCis4Njk4MSAzZDJiZmQyMGMyZjRkOTJkZjU0YmFkNzVmNTJlNDYzNTQwNjczOGIwIHB5M2sKKzg2OTgyIDMyMTRlMjMxYTFjNDU5M2U1ZmIzMGJjOWRiZGIzYTBkYjJlOGI1MTkgcGVwLTAzODQKKzg2OTgzIDIyZjBjZjFhMjcxMWIyNDQ3MTgwMTFmNjc2MzNkZDRkOGUwODNmNGYgcHkzaworODY5ODQgZjc0ZjVhMDgzYjZmNzg1N2I3Zjc1NGNiZDBkYWEyYjRhODVhOTliNCBweTNrCis4Njk4NSA4M2FkMDBhM2E0ODkxODE2NTJkNGJmMmVkNWJhZGMzYWJjNDI2ZWRkIHB5M2sKKzg2OTg2IGIwMzQ4MzI0MTRmNzg3ODA2ZDJhYTUzYThmOGM3NjFhNWI5MjVhMzMgcHkzaworODY5ODcgNjY1ZjBmYzZkZGQ3YmYzOGRmNTAxMTE5MTlkMzdmNmU1MjMzN2ZhOCByZWxlYXNlMzEtbWFpbnQKKzg2OTg4IDdjZTkwMDFkN2E3NzFkMjQ0ZjQyOWNmYTI1NGZhMmVkZTI4YTU3MWEgcmVsZWFzZTMxLW1haW50Cis4Njk4OSAzMTgyYzYwODdlNTJlZTEwZjZhZTE0ZDdmYzQ4MzA4NzQxNjhjNjBmIHBlcC0wMzg0Cis4Njk5MCA1NTZkZjA4N2RlNGZjMTMyZTlkZDQwNmQwODRiOWRlMzIyYjViYjkxIHJlbGVhc2UyNy1tYWludAorODY5OTEgZTc1NmVjOGY0MTQzYmI5YTNmMTQ4M2M0YzMyMjYwNjcyMmIyNjA3ZiBwZXAtMDM4NAorODY5OTIgNWE3MjNiN2FlZmI3MGY3MjhjY2VmM2Q1MjM1M2JjNWFhNDExMTZiMyByZWxlYXNlMjctbWFpbnQKKzg2OTkzIDRjOTg0NDczMjkyNTczMzliOTU5ZDE3YjJlM2ZiMDhjZjI1ZWM4MjQgcHkzaworODY5OTQgYmQzYmE4OTk0MmUzMTZkMzVjYTlhMjIxYzUyZTY0OTBiN2RmOGQwOCBwZXAtMDM4NAorODY5OTUgZjg5NWEyMjIxZmUxM2IwMDlmZGI1YmUwMjk1YjFjNmQyYmY5M2E2ZiBwZXAtMDM4NAorODY5OTYgM2RmZWM4ZjE0ZTczMmU3YmQ2ZTAzNWU2NmI0NWYyMDJhYzE5ZDhiNSBweTNrCis4Njk5NyAzZDlhODZiOGNjOTgwNDZmMGQ3NDU2NDc5ODI5NDEwZTM4NmJlNmIzIHB5M2sKKzg2OTk4IDYyYjYxYWJkMDJiOGQ3MDk1Mzk3Njg3OGVkNWNlMmMyMTU3OTE0ZmMgcHkzaworODY5OTkgMTQ4NjQxNmM4NmQ5N2Q4MjE4MTA3MzliYmZhY2ZkOGUzY2JhN2NkNiBweTNrCis4NzAwMCA2YjAzNDkxZWUxNzFiNDliZjE3MGUzMzJjMWRlZWU2MTkwZTYwZTRiIHB5M2sKKzg3MDAxIDRjZGFmYjAyYjIwZTE1NzQ1MmFmNDY5N2FmZDhjZDdkYzQ3YzgzOTYgcHkzaworODcwMDIgNWVjNGVkNTE4ZWY4ZmQ4NDljOTMzOTZiYzBiYTFmNTFhNmVlMjE1NCBweTNrCis4NzAwMyBhNmU5NDlhNmZmYzljOWYxZDcyNWY1OGYwOTgwMTE3YjE3YmE1NjBiIHB5M2sKKzg3MDA0IGQ2MTgzYmNlYmRkZTY4MmU5NDMyMDY2MGFhYzE4ZWMyZGU5ODk2M2UgcHkzaworODcwMDUgZDI5YjU1YWMxNjMxOTM4MDYwZjk0MjRiNGExNGY4OTQyZDhhZDk4OSByZWxlYXNlMjctbWFpbnQKKzg3MDA2IDdjMjNhNjhmYTNkZTg2YTM3ZGU5OTFmNmExNmJiYTY5NDZiMmQ2N2EgcmVsZWFzZTMxLW1haW50Cis4NzAwNyA3YjZhZjU2ZWU3NGQwODQ3MGQwYzExMjg1YjZjM2YxNWMwZTljNzdiIHB5M2sKKzg3MDA4IGEyZmFiZTIyNGU4NzM2MzIxMzgzMTg3ZTJiODgyZThjMzg4YmE4NGEgcHkzaworODcwMDkgYTkwNzExMGRmMjVhMDg5Nzg5YmUwYjg3YzUzMTdiZjc0YWYxODhlMiBweTNrCis4NzAxMCBiMzdkYTYwYzkwNzJhMTYzMDBlNWVlMTMzZDMzOTZiNmVhNzA0YjYzIHB5M2sKKzg3MDExIDU2ZWVkOGY0MDdiZjk0NjlhNGRkMjZmZGExNGY4YmE0YjAzNGM0ODMgcHkzaworODcwMTIgMWQzNTMxYWFjZWEwZTEwOTVkZmU1NjQ2MTM3NGZkNzJhZTYyNTAwYyBweTNrCis4NzAxMyA0ZGY4YjQzNDJlNzAyNDNmNzk1MTYxMDRhNjRiM2U5MTk3ZjQ4YjgzIHB5M2sKKzg3MDE0IGIxZTc4OTYzMWRiYzQyMWQzYmI2NDc1Y2IyY2EyOGVlMDFhNzU5MWUgcHkzaworODcwMTUgNTFkMjhhMGQxYzMyZThkOGJmYTVhMjQ3ODVkYzQ0MDM5Y2M3Njg3NyByZWxlYXNlMzEtbWFpbnQKKzg3MDE2IDNhYWYzN2MyNGRiOGZhNzc4NmVlZGFjYzRhNWQ3N2QyYTMzZTNmNzMgcmVsZWFzZTI3LW1haW50Cis4NzAxNyAyZTFmY2YyOGM5MTQ1Y2Y2NzBhYzhlZTdlZDhlMzRkYTY0ZDAzYWU0IHB5M2sKKzg3MDE4IDg5M2IwOTg5MjllN2VmZWU0Zjc1M2I1ZGFlOTA4NTgzNWQzYjc1MjYgcHkzaworODcwMTkgNzEzYzZiNmNhNWNlMjJlYTNjZWRhODBkZDFjZDRhYmVmYjdhMDc3NSBweTNrCis4NzAyMCA4YjAyZjdmOTQ3NWIyYTM3NDg5YTE3MmNkOGVlZmMzMzliNmY3N2Y3IHB5M2sKKzg3MDIxIGYzNWE2ZDdlMzI1ZmY1MzJjYjM5NjU1N2E2MzZlZjI1NjRmM2UxMWUgcHkzaworODcwMjIgNDhjNDA3MDk0MTdiOWM2MGRjNGJkY2ZiN2MwZDM3NTEyODE2YjNmNCBweTNrCis4NzAyMyBmODJlZWE0NzgxZjE1NjNhMzU4MjE5OGQ3ZDMwMjMzZjBlYTkwZWM0IHB5M2sKKzg3MDI0IDcyMTRkYzViZmY1Y2ZiNzk4OTE1NDU3MzczNDQ4YzFmYTM0NWFlYjYgcHkzaworODcwMjUgYzI1NzhhNjg4NzlkOWM1YjdlYjhjZjkzM2MyNzMxYzdhM2Q4Y2ZmMSBweTNrCis4NzAyNiAyOTZlNmY4NWY1NmQ0MTYzMDFhN2Y1OTViN2RiODZmNWM5ODMxZmJkIHB5M2sKKzg3MDI3IGQ1ODJkYWJiMzBmODViNzcwZjAyZmQ3MzlkMGU0YTEyN2RkOWI1OWUgcHkzaworODcwMjggNDg0NTBmMDU5NzBiOTAwODE0MWM3NjM2ZjIzM2ZkMjA3ZTM1Mjc1MSBweTNrCis4NzAyOSA4Y2FiY2Y0ZjkwMzM4YjVhOWE1MDU1ODg3Mjg4Y2U2ZDIzMThiMTA2IHB5M2sKKzg3MDMwIGJlZGU4M2UyMDg1MzRjMmRhZmFkZGJmMmY2M2VhM2RhOWQ2NDE0MjEgcHkzaworODcwMzEgZGU3ZjI4YTY0MGU1YTY5Y2I2Y2JlYzM0ZjczZDg2Y2ViYjYyNDY0NCBweTNrCis4NzAzMiA1NzNhNjcyNzYyMTcxZjA0ZDIxNjBkNDIxNWIyY2E4YzUzMDg2NTRlIHB5M2sKKzg3MDMzIGE4ZjM4NDc2MTlmNGRiMjQ4N2ZiYzZiNzYzNDAxNjYxMzllZjdlOGIgcmVsZWFzZTI3LW1haW50Cis4NzAzNCA5YjYwMzYxMWY2ZDRjNmQ0YWE0OWZmMzZlNzZmNDk2ZjBmYjBmYjI0IHJlbGVhc2UzMS1tYWludAorODcwMzUgMjk0ODA2Y2FjOGM1NGJlNTNiYmQ1ZjVlOGYwNDQ3YTVkMjI3Y2Q0MyByZWxlYXNlMzEtbWFpbnQKKzg3MDM2IGRkYzZjNDdiZjgyNWUzOThlMGY0YWQ1MWUwNGExMzkwMTQ4ZGQzYzkgcHkzaworODcwMzcgZjE0ZjYxOWQ3MDUwMDI3NTkwNDVlMDI2NDRhM2RlYWJiNjM5YTJkNSByZWxlYXNlMzEtbWFpbnQKKzg3MDM4IGIzMmQxOWViNDMzOGVjMTU2ZmRlODQyNWI0NTYyYTA5NjAzMjRmMTMgcHkzaworODcwMzkgZmQ2MzhjYTc0NjM0YWExN2ZjMzgyODdkNDY1NjVhMWE5MTNhMWE3NSBweTNrCis4NzA0MCBhZTNmYTc4MWVlZjJlNDAzNWZjMjFhYzg5MjBlM2NkZGU1NGE2MzY2IHB5M2sKKzg3MDQxIGYxYmUzNDkyMzRjM2U0ZGY0M2QwY2YzYmM1OTc5ZTViMDQyYmY5ZmUgcHkzaworODcwNDIgY2I2ZDVkMTUxYmI0MjFhMzYwNjA2YzdmMDgxOTM5OWJmYjkwZjJlMyBweTNrCis4NzA0MyBmMmE0YWRlMzZhMWVhODEzMDU0YzkyYTU2YTI3YmQ3ZmVlMDZlYjZhIHB5M2sKKzg3MDQ0IGI1NWYzZDYzOWNkODZmOTU0N2Q1NjgzY2VkY2Q4MTY3Y2E5MGI2ZmQgcHkzaworODcwNDUgYzJjYTg2N2NkZDFhMjA3ODcwMTBlMDMzZGI0ODMwZTRiZDM2MDQ0MyBweTNrCis4NzA0NiA1ZWViZTRhZDBkODc4ZDUxNDA3ZGFlZmFmYzhjMGQ3OTI0YzgyOTQ4IHJlbGVhc2UzMS1tYWludAorODcwNDcgMGZkNmFlMGE4NTY3ZGExODkxZmU1YWU0ZDBkYTk0NTM1ZDk5NDY0OSBweTNrCis4NzA0OCA5ODMyZTk2ZTczMGE5MDU0ZTIwN2RlMjlhNTQ1YzY1NTdmYTAyZGFmIHB5M2sKKzg3MDUwIDc1NzExZDE3NDNjY2U2ODdmNjliYWM4OTUzZmM5NTIzODBhMDZjZWUgcHkzaworODcwNTEgNGU2MjkyN2EyYmRhOTU5OTQ3NzA2NmQ1OWI2Nzk1MzRkNzczMDgyMCBweTNrCis4NzA1MiA3NzlhMjNhMDhkOGNlZWYwNzNmOTY4YWEyN2UwMzg3Mjc3YmFkODYzIHB5M2sKKzg3MDUzIDMzOWRkNjIyZGU1YTU4MzI0ODQxNDY3MDQ1OWQ5Mjk5OTRmMWU5YWQgcmVsZWFzZTMxLW1haW50Cis4NzA1NCBiYTcwOWFkM2ZmNGNhNjljZjZjZTg0MTdjNjlhMTAxYTExYWI1MTQ3IHB5M2sKKzg3MDU1IDA0Y2VjMmUxY2E0MWE4NzRjYjg1OWY2MjhmOGU0ZGNiNjk0M2Y1NTcgcmVsZWFzZTI3LW1haW50Cis4NzA1NiAxODI3YThhYzliMThlOWM4NDZjNjg1NjRlNTUzOTJlOGJkODI0NzdmIHB5M2sKKzg3MDU3IDNmZWU4OGU2NDQyYTNkYTI1ZjlmNWRhZmE2OTFkNDk3M2ZjZjdjZjkgcHkzaworODcwNTggZGZlODZkYTI3ZTY4YzM4ZTY4NDhhYTRjNDIyZTVlYjMxZjIyMzU0OSBweTNrCis4NzA1OSA2ODI1YjJjZDliODFjMzhiZGYyOTA4NmViOGRlMzA3MDEzNTgwODA0IHB5M2sKKzg3MDYwIDNkMWJjYjU0YTgyYjY2Y2Y0ZWZiYTUyMTJhZjA1ZGZhNDY0OTM1OGEgcHkzaworODcwNjEgYjdmMDhhMGFlYTI4ODY1MTJkOTFhMmU3YzJmNDg0ZmM4NjNjNzhlYSByZWxlYXNlMjctbWFpbnQKKzg3MDYyIDExMDk0YjUyODhmOTg5N2UyM2FjNTc1ODZkMzc2ZTc5Zjk0MGFiNDkgcHkzaworODcwNjMgNTZmNDJlMTg0YTE5NmU5ODcwODQ2Y2YwNmQ4MDE2Y2ZiMzc0YTYwNiBweTNrCis4NzA2NCAyZjVjZDE4NjliMWE1ZjZjMWMzYzIxYjllMWM5NjFmMWY1MDVkNGVhIHB5M2sKKzg3MDY1IGVjNzlhYWY4YzBiZmMyYzBmM2YzZjk1OWM5NTUyOWQ5MmIzYmYzYjYgcHkzaworODcwNjYgODM1OGRjMTNhNTc0ODViMDg5OGU2Y2Y0YjcxYTFmMzZkNjQ2ZjU0MSBweTNrCis4NzA2NyAxY2NiYmRkYmVhODgxZTdiZTY4MzJhMjNmNmFiNDE3NWExY2I4ZmFkIHB5M2sKKzg3MDY4IDgzOTU1ZTQ2MWM0YmE3MzVhYWZiMzZjNDg2NTYzYzM0MmE2NjQ1Y2IgcHkzaworODcwNjkgNmZiNTY0MDRiNmJiMjNlZDUyNWFkZGRhNjJjZTRhY2I2OGYyMmVkZCBweTNrCis4NzA3MCA0ZDBiZmMzMDM3MjQ2NDkzMmU0OTJlZTU3MmZiMmZkNTRhYTc0ZjBkIHB5M2sKKzg3MDcxIGMzOGRhNGM1NDE4NGU4ZjA3YWY3Zjk5MzhmNGJjNjM0NzRjZjcyNTQgcHkzaworODcwNzIgMDczMTc2ZjAzODEzZjBlNGRhMzMzZjY5YmMwODA2N2JhZDFmNDk4MiBweTNrCis4NzA3MyA2OWE1MGJhNDRlNjViN2Y5Y2E2ZmQ1NjFlNTcxNzBiMDc0NDE3NDBiIHB5M2sKKzg3MDc0IDI4NWUwY2ZiZjkwZjMxMzg5ZjJiOTA5ZTk1MDViNmZiYjlmNzM5MDIgcHkzaworODcwNzUgNWMzYWM4Nzk1ZTljNGQ0MzczMzY1MmU3YTQxNGI3Y2EwMmFmOTIxYyBweTNrCis4NzA3NiA2ODFhOGU4OWM2NWM4MjM4YWRhZTZlNGFlN2VlNjYwNDQyZGM3MDhmIHB5M2sKKzg3MDc3IGIzNjdiNTMyYTgyMzM5YTRjNDMxMDQxY2UyODQ0ZjMzMDljODUyOWYgcHkzaworODcwNzggY2IzY2ViY2ViYTUwZmQyYWE3ZDgxNDVkMzY1NzYwN2FhZjRjMDg0ZSBweTNrCis4NzA3OSBiOGVlZDdhNTZhOGNlZTU0M2Q1MDVkMTZhNzE4NzBmOThmYTMwN2RiIHB5M2sKKzg3MDgwIDU5Zjk3MmIxZDU2NzAxZjE1ZmQ2YWQ4ZTJhNDMyNDg0NDk0MGQ3NzEgcHkzaworODcwODEgNTk3YzMwNjlhZmQzOTkxNzQ3MDEwYjI3ODViNzc1ZDgxNjJiMDllMCBweTNrCis4NzA4MiAzZjI0MjQ0YjEwZmQ4OGQ2ZmMzNGNiMjU4Nzg1N2Y4NzBkNjJjYzI0IHB5M2sKKzg3MDgzIDgxNzA1NTU0MTZhYzQ0ODgyM2UzOTgxNzQxNDBmOGI4OTIxYWIyMGUgcHkzaworODcwODQgNWYyODZiYTAxMzk2ZTczMzhlODcxZTU1ZTAwNmJmNTMxZWRjN2ZlYyBweTNrCis4NzA4NSA0OTY1YmU5MGZlMTk5YTgzMzcyZDY2MzUzOTkyNDAyZjZmZGVmNmVhIHB5M2sKKzg3MDg2IDkwMmRiNDcyMjU5NGMyZjkwNTVlNTcyZTNkNTI2NzI1NjU1OTczOTcgcHkzaworODcwODcgOTA3OWVjZDQzM2EyMjU4OTQ1NmE4NWE4OTAzODA1MDUxOWExN2ViMSBweTNrCis4NzA4OCBiNjM1Y2VhOTQxOTU3ODBjODcxNmUyMzY0NzlhZjMxOWJjYzI2MjUzIHB5M2sKKzg3MDg5IGY0NDhkZDZiNjdkYmMwZmU1NjkwMTVjZTZiZTUwNjRkYmM4YzNkNzkgcHkzaworODcwOTMgMDYyOTA3ZjY4NWFjNGU3MWZlNzE3YmEwYjE5M2FiYjQ2ZThmY2MxZiBweTNrCis4NzA5NCAyM2ZmNGEwYzM3NWIzMzMyYTk3ZTU3OTgwNThiYzM3MzRkZWZjYTAxIHB5M2sKKzg3MDk1IDFlNGE2ZTU1NzZhZjRlNDcwMmJhZGM4ZTBmYTdjZmFlNWZlMWFkNzYgcmVsZWFzZTMxLW1haW50Cis4NzA5NiAyNmVkZmIyN2EwY2U4ZTk0M2M1ZGM4ZDU2MDU1Y2RmNDc3NmM3M2JlIHJlbGVhc2UyNy1tYWludAorODcwOTcgMGFlMDdjYWFiNTA2ZmVmMTQ4MTE5YTFjNWQyY2U2OTAyYTA4ZDUyNyByZWxlYXNlMzEtbWFpbnQKKzg3MDk4IDI2YzY1OTM1NzFmMWZhZTdkMDIzNDNmMzYyZGIzZThhMDlmYjUzMDIgcmVsZWFzZTI3LW1haW50Cis4NzA5OSBlMTE1YjJiZmE5ZDdjNjUzOWQwZDgxZjZiNTVhM2VmNTI2ZWRjZjNjIHJlbGVhc2UzMS1tYWludAorODcxMDAgMTVhNzU3MGUzZmZkMDNkMjc2ZTBhYWRlYzIyNDgxOTc4M2UyNjZkZiByZWxlYXNlMjctbWFpbnQKKzg3MTAxIDMwZWFjYTQ3MzVjYjhjOGU2MWI1ZjkyZmJiYThlZDRhNGVmY2UyMTQgcHkzaworODcxMDIgYzQ4OThjZWY0NzE1ZjA4ZmU3M2JjMjdjNjkzYzRlYmYzNWY4MGRiYSBweTNrCis4NzEwMyAyN2Q2YWE0ZjE4MTExZjUyMzg4NDIwZWNmNTc3MGMzMzQ0ZWEwOTYxIHB5M2sKKzg3MTA0IDI1MTNkODkyYjI1NDE4YjVkMGFhMmFiZTU1M2JlOTM4NTU3NWMyMmMgcHkzaworODcxMDUgODY4ZDU2YWMxYzU5MDY2MjhmM2U4MTIyZDBlYzEzZWYzYTQ4ZWE5MyBweTNrCis4NzEwNiBjMjM0OWI2YmZmYWYyYTQ5ZDNhZjQzYjZmN2Y4MWRmOGZhNWU0YWZjIHB5M2sKKzg3MTA3IDRhOTRjMmRiZjllODRhNDUxZWZjNjZiYTM1YTRmNjcyNDUxZjBkMTUgcHkzaworODcxMDggODdmMjNjNzk0OWVlODEwOTMzZjk0MTdmYzVjOTQ2MmExOTVlZjdkZSBweTNrCis4NzEwOSBhMWYzNmI5MzczYmJhZjE5MWY1MWE4MzI5YzhlYjg0YTBkNmM3MGRhIHB5M2sKKzg3MTEwIDM5MDA5ODQxNDcxYjU5N2EzYjJiNzhlN2Y1ZTNmMDgzZTk5M2EyYTQgcHkzaworODcxMTEgNmVmMWFlYWU0MmJlYjZlYzg1MWVkZmIwMzFjYzIwNWM5ODExMTMyMCByZWxlYXNlMjctbWFpbnQKKzg3MTEyIDExZmM2YzM4MDhiNjQwNDdlYmVjMjRiMzI0MTU2YjdjMmNjNzFkOTAgcHkzaworODcxMTMgMmZiMWVjNWM3MzVlYjIwMzdhZmRkMTU2YmUwMTQ1ZjI0MGZjYmY0ZiBweTNrCis4NzExNCAxMjFlZDg0OGM2NzBiMmI1MmU2ZTI2ZGI4MzIxYmRmNDA3NTkxNzk5IHB5M2sKKzg3MTE1IDM5NmQ5ZmE0ZmEyNDMyYWZmODhmNWU0ZTdkZmE2Nzk2ZWM3ZTk1ZjQgcHkzaworODcxMTYgYWIxMzU1MzcwMmY1NWMyNWUxYjNiNjdiOWM5NTg0MGFlNGNlMmZhYyBweTNrCis4NzExNyA0MTdmOGNjY2QyMDg5YTY5OTg1NGY5OWJjY2JhMTk4MjMzM2MwMDYwIHB5M2sKKzg3MTE4IDUwZGU5ZjFhNmQ1NDcwM2U0OTk4YTc3NTQ4MDUwYjIxYjE4NzQ3NzggcHkzaworODcxMTkgNzg4OTg0YjdkYTZmMmVlZjE4MDQ5ZjA4OWM1MjRlZjg5OTAyOGNhYiBweTNrCis4NzEyMCBiZGVkMDY3ZjkxZThkZDhiNTdjYjZiNjMxZDg2MzYzMThjOWRmMzU0IHJlbGVhc2UzMS1tYWludAorODcxMjEgNzVjYWI2Y2Q5N2M2MzUyM2E0MzliMTIxOTUyN2ZiNWY0MzUxMmViYiByZWxlYXNlMjctbWFpbnQKKzg3MTIyIDc4NmZiZWQ3OGQ1N2Q3NzcyNTBjMjYwZTU3NDg4MDgzNDQ1NDZkOWQgcmVsZWFzZTI3LW1haW50Cis4NzEyMyBhYTMwYjE2ZDA3YmM0NTRmZmI2MjU1NjhhMWU0YTAxODE5YmYwM2E1IHJlbGVhc2UyNi1tYWludAorODcxMjQgZjRmNTZlZmEyODcwMjAxY2ZjZDUzNWUwNTM0YTc2OGI4NmU4NzkyNyBweTNrCis4NzEyNSA5ZTcyYjZkMGY0OGJhM2Y5MjU3YmZlNjJiYjc3NjI2MTY1MmIyNjczIHB5M2sKKzg3MTI2IDA4MjFlZjEyMmQ1MzFkY2UxYTc5M2YyNmZmNzZkMTQ5ZjQ4MWVjZjQgcHkzaworODcxMjcgYTQ2ZTE5ZTg2NjgwMTY1MzM5NjExYWFhZGU0N2IzMGIxZTA3NzJmMCBweTNrCis4NzEyOCBjNzE4Y2I3ODZhZWI1ZmM1ODAyOTdlZWNkZjIwNzJmMjg2NTVlZTg4IHB5M2sKKzg3MTI5IDMyNGQ5M2Q2ODUzMzFkZjZhZjk4Y2E4NGUzZjk3Zjk0ZGYwODJjNDMgcHkzaworODcxMzAgZDk0ZDM2NWQ3Y2U1ZWM2ZmIwNWU4Mjc0MDYwNDY2OTFlYTUwNmNmYiBweTNrCis4NzEzMSA1MjIwMTIyZTNlOWJjN2QzOWZlYTczNmQ5YzllNmJlMDk3ZjNiMzU1IHB5M2sKKzg3MTMyIDdiN2Y2ZWY0Zjk5YzdmZjYxMjQwMTUzZWY3YmM1Zjg2ZjM5OGRjNzAgcHkzaworODcxMzMgOTVhNzNlNGIyY2ViM2UwMjlmODZlM2E5MTRjYWVjNDNiOWM5Y2U2OCBweTNrCis4NzEzNCA0YzdlMzJlNTkyODg1N2Y4MDZiMTM0MWFkMmFmYmEwZjg5YWM4NzY2IHB5M2sKKzg3MTM1IDExMzkyNWI3OWI5N2IwM2M2ZWViNzRhYmViN2NhNDMwM2MyODIwMGIgcHkzaworODcxMzYgZDU3NTkxYmRmNjFlOGU5ODM2NTRlZGJkMjVjOWYzYjgwY2MxZmQ2YyBweTNrCis4NzEzNyA1MGQxNzBiYjcxYzc1MzE4NjE0NjdjY2M1NzVkMDRiOTY4MjNkNGU0IHB5M2sKKzg3MTM4IGI4NDI2MWJkNmQ0YTRlNmViMGJhNzc0MjE0ZDE0MmY0Y2FiYzUzYWQgcmVsZWFzZTI3LW1haW50Cis4NzEzOSBlMDA3MmJkZGQyZDU1NzAwYTM4Y2ZhYmVmNjdkYTk4YWE5NGJhZDBiIHJlbGVhc2UzMS1tYWludAorODcxNDAgOGQ0ZmVlZGVhYWVkMzQ1YTRmZjQ1YTMxMDVkMWY1MTI3NTVjMmI1NCBweTNrCis4NzE0MSAxNjliZjAxYmI1MDdlMDc4OTRhYTNkODMwM2RhMGZjNGQzOGUzN2FiIHB5M2sKKzg3MTQyIDIxZGY4MTU1Yzc3MGYzY2ZhNjY2OTQ0MDAxMmM5YTkxYzIyMTQwZmUgcmVsZWFzZTI3LW1haW50Cis4NzE0MyBmOGJlYTk5NjA0NjIxMThiYjYxYjMzZDBkNzM0N2JiNmJlOWRjYzIzIHJlbGVhc2UyNy1tYWludAorODcxNDQgODAwNTYzYWMwNTdlZGFlM2U2ZTI1MWU1ZTNiYzAzYTg4ZDljOWM5YiByZWxlYXNlMzEtbWFpbnQKKzg3MTQ1IGQyODEyNmViZDYwZDAyZGE5NzIyMzQ1ZDEyM2JjNjExNTY5MmY1YjYgcHkzaworODcxNDYgNmU5ZjM5N2JiYTAyNWUyYWIzZWUyMDZiMmM1NmU4MWFkY2I2MTg4MCBweTNrCis4NzE0NyBjNTM3YmQzN2Y1MDhhZjEzYzIxMjhmNDJkNTIxZWEyNTYwZWZhMjk4IHB5M2sKKzg3MTQ4IDFiNjU5YTAwNTcwYmRiNGI3ZGIwYTZlMzJmY2QwOTZjZGIzYmRjNTYgcHkzaworODcxNDkgNzQwMzAyYmIzYWRmYjM4NGI2NzY0NmI0MTY4YjlkYjQ3OWQ4MmU5OSBweTNrCis4NzE1MCBiYmNlNDJmNmRkN2RiYmYyNmE5NjEyZDMyMmVmNjNiM2JkZjI1NjgwIHB5M2sKKzg3MTUxIDNjNTg5Y2E0MWQzYTNkMWIxNjE1YTI2NjRjZWM4MzQwYmY4MzgzOTUgcHkzaworODcxNTIgMTQ4NmQzMTcxYzY4Njc4YWY1N2IxNjk1OTY3Zjc4NDJjMDQ5NmEyZiBweTNrCis4NzE1MyAzOGRjNDEzOTg1NGM4Y2I4YWI2YzdmYTQ4ZjQ5NjYxMzQ5NWM2NTdmIHB5M2sKKzg3MTU0IDljYjJlY2JiMWYwY2E5Yjc2ZTQyZjkyZWIyNTM3ZjI2NjgzYzllMzYgcHkzaworODcxNTUgOGMyNTRiNjRhNDM4MDRjZDI5MWY1Y2FiOWYzMzI3MTA3MTM0MDk1NSBweTNrCis4NzE1NiA4ZGUzMzU2Mjg1NWZhZjljYjk2YWM2M2Y4ZGY0MzM5Y2M4MTY4YzMwIHB5M2sKKzg3MTU3IGM4NmRjMmJkM2FlODEzMTNlNDdmYWM5M2YyMmFhNzRkM2ZhNmZkMjggcHkzaworODcxNTggNzRmZTczYzEwNjExZDIzZDFlMzhiNjM1NTlkZTVjYTA5OWI5ZDhjYiBweTNrCis4NzE1OSA3MzhlYWVlZDBiMWEyNDcyOWQxNjAyOWVkNmQ0N2YzNDZlMWQzNDhkIHB5M2sKKzg3MTYwIDRmODQ5NzIwYmY0MTM3MzBmNmRiY2U3YjIzY2U4M2Y0NWYxNzE1ZDAgcHkzaworODcxNjEgMDEzM2I4Y2I3ZDgwNmQzN2UzNTczM2Q3YjQ5ZTk2NTA2YzQ1ODhmNiBweTNrCis4NzE2MiAzMzBhOTg1MjM5NmRmODhlZmQ2Y2U5MmU1Y2MyOWMzODMwOTZjZGViIHJlbGVhc2UyNy1tYWludAorODcxNjMgNzI1M2JlOTZhMTllYmYxNjg4YTZlYmM3ZjQ4MDQzZWUyZTQ4YmU2NiByZWxlYXNlMzEtbWFpbnQKKzg3MTY0IGZhNTViMDNiZTU3NDAyZTE4OTRmNGRmYzYzOTFmNDc0ZmIzOTY2MDkgcmVsZWFzZTI3LW1haW50Cis4NzE2NSAwNGVkOWRiYzZlMDUxYzMwOWQ2OWU4YjhjMThiZDEwYzNkY2FmMGJkIHJlbGVhc2UzMS1tYWludAorODcxNjYgNzE0YjhlMWVmNzI2M2UyODA5YzlhZDlhNTNmMDU5OGIwODNhYTUxZCByZWxlYXNlMjctbWFpbnQKKzg3MTY3IGFjM2M1NTI3MWZkZDQyYTAxYzEzZTY0YmYzYWY2YzI4YmVjYmE3MWYgcmVsZWFzZTI3LW1haW50Cis4NzE2OCBhYTk5ZGM4ZjcwNWRmYmE5MmQ1NWZhYjY2NDgxZjRiYzBiYjdkYWY0IHJlbGVhc2UyNy1tYWludAorODcxNjkgMjA3ZWE5YTA1MDYyZjI0MmE3Mjc2MTUwMTZiMzRkOWQ5ZWI1MzU2MSByZWxlYXNlMjctbWFpbnQKKzg3MTcxIGQ2YzcwMmQ0MGZmYjJkZThlMWJmNDI3NTYyZjUwYzUxNzU1MGE3MmEgcHkzaworODcxNzIgMzUzMDc5YWY0ZjUyNzVjOTExOWQyM2ExNWE0OGMzMjRkNzE0ZDk2NSBweTNrCis4NzE3MyA3MDQzNmI0NmU0MzRkMmQ5MmU4NjQ4NzQ5NzFhMzNhZjBhNTRhZDRmIHB5M2sKKzg3MTc0IGIxYmRlZjU2OTY2ZWUxMzQ5ZmI2OTEzOGIxMTQzNjE0NjM1ODI1N2QgcHkzaworODcxNzUgOGQzOGM2YTI3MTgxYzFkMTU3ZDg2MDAxN2IzOTU0M2VmNjA2YTc1YyBweTNrCis4NzE3NiBhODExZjdjMTBlODI1MGZiNGUzNDQ4MWMxNjA0MTU2Y2YyMThjOGRlIHB5M2sKKzg3MTc3IGYyMmQ5MTMzMmRiOTRmNmEzZjYwYWRkMjhhOGZlODQzNDA2NGJlNDUgcHkzaworODcxNzggMzA2ZDg4YTMyMzU3MjNkMzUzZDVkMTI3Zjg1MzBkNmQ5NzZhMmVlNSByZWxlYXNlMzEtbWFpbnQKKzg3MTc5IGI5N2Q4NDNkNjQ1NjI5NmVhMTM3NDE4YTk1ZGJmOTY5ZGZlZmM2ZDcgcHkzaworODcxODAgMjYzYzk5OGIyZjQ1OWM4NzE1NjFlMjdkNDUwOWEzMmM0ZGMyMmY3MiBweTNrCis4NzE4MSAzYjYyODU1NGUxYWExNWUzZjgyY2E3NjFhNWZkOGNhM2FlMWUxMGMyIHB5M2sKKzg3MTgyIDYxMmRkNWYyYWFiMzFhNzZkYmU4YWU4OTFlM2I0MjUyODk2MWQ3NmQgcHkzaworODcxODMgY2UyODc3Njg3MzcwMDZlNTA5YjEwOWFjOTY0ZGE4MTcyYWU5MGViNyBweTNrCis4NzE4NCA1M2JkZjFjODE0ODZiY2VkYTFmNDU4OGY1ZGFiYjA5NjY5YmQ5YzA1IHB5M2sKKzg3MTg1IDJjZjdiYjJiYmZiOGVlZjdiNjk0MjRhNmY2MDQyNjA3NTk1Nzg3OTYgcHkzaworODcxODYgOTk5YjFhYTI0Njc4M2FlZjkwZTI2NzVhOGYzNzJhYjUwYWI4ZjFiZSBweTNrCis4NzE4NyAxNTUzMWNiZTNmNTVmZDNlY2YxZjBlNDczNGM5OGNjMDAyYTYwNDFhIHJlbGVhc2UzMS1tYWludAorODcxODggMGVhZGQxYjJkMjU4YzgwNDYyMjA3Yjk5NzM0YmMxZDYyYjM5Yzc4ZSBweTNrCis4NzE4OSA1YmZhNDM2YTI4N2JmMDQwNDcwYjJlNzhmZGFiN2VmZDMzMTVmOTQyIHB5M2sKKzg3MTkwIDdhY2EzMmEyODkwZWYyMDRhNjg4ZjA5YmU0YzUyMzhhYWM2MDA4ODkgcHkzaworODcxOTEgNjZkOWUzODgxNzYxMDIyYTI3N2E5ZGU4MjM0YWI0NTVkNTkwZTY5NiBweTNrCis4NzE5MiBkMDJlNzZkYWNlNWJmMTFlMzEzNzU3NTJlZjI0ZTg5MjhmMGUzNzE5IHB5M2sKKzg3MTkzIDU1NGYyNmNlMzNlMTk5OWNjZjkyNmMwYmJkNzJkODhhY2RhMjIyNTcgcHkzaworODcxOTQgMzI0MmZkMTc3MTY2NGViMDc0ZjA2NzhiMjUwYjU5ZWIzNGExY2I5MCBweTNrCis4NzE5NSBiNzQwNTFjYWQ3MTc4MjM3MDdlYTA0NzNhMGE4MGFkODgxYjFhYmIyIHJlbGVhc2UzMS1tYWludAorODcxOTYgYTkxYjMxNjhmY2UyOTgxZWJlMWY1NzMyNmI3MWVhNWJkZDE2NTZhMCByZWxlYXNlMjctbWFpbnQKKzg3MTk3IGNmZTdjYTFhN2JhYjI0NWY1OWNiZGZiMzM2MzVkYzM4MDY0MWY5MjIgcHkzaworODcxOTggZjMxMzBjMmM0NmY1YTRlZTQzYTFkM2RkMGM2YmViNWRiNmNiYTE4YSBweTNrCis4NzE5OSA5OWVjYTYyZDY5MTk5NGI2ODA2ZDllNDVlZDc2YmQ2YTJjYzg1ODk5IHJlbGVhc2UzMS1tYWludAorODcyMDAgODA4MTc2MmViNmQxYWVjMWFlNjA5NTE4NjhmODhkY2Y2YzJhYWE1NCByZWxlYXNlMzEtbWFpbnQKKzg3MjAxIDEwZWU0ZjMyYjkxYzQwMmM4NDdhMGY0NTU1NWE1MzcyMzNkZTBiMDMgcHkzaworODcyMDIgYjdjZmI1ZjBmYzU1YjM2NjM2NzA5Y2MxMDlkNzE1N2U5ZDZiNDdiZiBweTNrCis4NzIwMyBlZDJhYzIxMDg0ZjRkOTkzNjQyNTUxYTQzYTVjOGZjZWZhM2JlNzBiIHB5M2sKKzg3MjA0IDI4NzJmNDZlODE5NzBkNGEwNGM4ZTVjM2JiMGNlYjQzN2MyZDc4YzYgcHkzaworODcyMDUgNDcwODhlNWNiNDAxMzFmZWMzNGUzY2VhYTJjOGI2YzU3MmViMjIzZiBweTNrCis4NzIwNiBlYWI4ZjkxZjU3NTRkZDg3ZWQ4YmY3ZjY4ZGMyMTYwYzU5NDQ0NGRiIHB5M2sKKzg3MjA3IGRlMDVkODQ2Nzk1ZTRiNzc2MWEyMzJmMzczMDA5Y2Q2MjFlNmI1NGQgcHkzaworODcyMDggZmEzZDA3ODcyOTkzNDExMTBlNzE1MzNkYjNlOGNiZTZkMDY2ZjNiYiBweTNrCis4NzIwOSAwNjIwNmYwMDFiY2Q0YzcyMWUzMGJiMjZiMmE4M2U4ZmMxNDIzN2FkIHB5M2sKKzg3MjEwIGJjODgwOWIzZTRiZTdmNWYxYWYxODMzYmE1MDU0NjdhMzllMTI2N2MgcHkzaworODcyMTIgZjdlOWVhOGM2MWEwMjc3NzUzY2YyNjA2YzM3ZjAxYzFlNjU2M2JkMCBweTNrCis4NzIxMyA2NjhjNDIxOGFlMjZlNzM2ZmQyZjFkNzU1ZDA5YzMxMTdjM2YzNDRmIHB5M2sKKzg3MjE0IDRmODFiNWQzNTZjY2Q0NWY0ZmM5ZWVhY2JmN2JkMTU1YWI0NTZiZTMgcHkzaworODcyMTUgNzk0ZjU0YmI5NzEzODBjNDQzOGQ5ODU0MWI2YzdlYzJjNWFkNGViYSBweTNrCis4NzIxNiBmOGNmOTczMTRhZWVhZTM2MGY0Zjk5ZjI3NGFmNjE4MGNhN2QzN2JmIHB5M2sKKzg3MjE3IGMyODc3MTE3N2ZjNDA1ZmQwMmVhMzQ1YWE5NWIwYzQyNWEwYWZlZGIgcHkzaworODcyMTggMTkxMTYxOTFkNTJkOGFiM2Q5ZWZhNmJmZDU4NzI1NTI4ZTQ5MmU0NCByZWxlYXNlMzEtbWFpbnQKKzg3MjE5IGJhZjBkMTg5ZWQwNzM0Yjc0ZjJkMTQzM2U1ZTM5MDU0MDg4MzBkYjkgcmVsZWFzZTI3LW1haW50Cis4NzIyMCAxNmI2YWU3NWRlOTQ2ODIwM2NmMGUzODg4MjczNTcwMjliMTE4N2FhIHJlbGVhc2UyNy1tYWludAorODcyMjEgMTBiZmQzYzEyOWRhZTI3MWJhZDY3NmQ3NjJkZGVjZjRlNWYyZWIyZiBweTNrCis4NzIyMiAyNjJiYTBhYjRlMjFlZjFlNzljNjAyYzM2NmU4MDA4MDhmYTE1NzE0IHB5M2sKKzg3MjIzIDdmOGNkY2ZiYjA4ZTE4MzVmZGQ0MWQ4NzBkMWYzYzBlOWVhNWUyODcgcmVsZWFzZTMxLW1haW50Cis4NzIyNCBhYzhkYTU1Nzg0OTNjNGQ0YjAwOWI1OWViYTVmYmFkN2MwN2IzYzQ3IHJlbGVhc2UyNy1tYWludAorODcyMjUgYjA4NGI1MGU0YWE2ZGM5MTgzZGMwZTgyNzY0ODdkOTU3Njg4YjgyZCBweTNrCis4NzIyNiA3MWZiMDMyNzRhODljYzNhNjk3OWNjMTRkNzY3M2M3YTYxNTExNTRlIHJlbGVhc2UzMS1tYWludAorODcyMjcgOWFjODY5OWQ4OGQ2MWRiMzFkZGQ0ZWUzYjVhZGRlNDQ5NTMxM2FmZCByZWxlYXNlMjctbWFpbnQKKzg3MjI4IDZmNDZhZmM1MTQzNGNhODkxMDk2NzlhMWE4ZjI1NTIyYmIwYzY1YjkgcHkzaworODcyMjkgNTliNDNkYzM0MTU4NTI5YmEyMDhkZWRlYmRkNzNmZGNlMzgxYTc0ZCBweTNrCis4NzIzMCBkYTIwZTdhMDFmYTYzYTZkOGFiMzRmMjEwZGExMjhjZTQ0MTU2NGVlIHB5M2sKKzg3MjMxIDY5Yjg1OTY0ZWM4ODgzODAwOTE5NzlhMTc1ODA2N2IwNGZmMzc2NzAgcmVsZWFzZTMxLW1haW50Cis4NzIzMiA4Y2NmNThiMGE1ZGE3NzYwMDZkN2ZjOThkOWU2OTc1YzgyMjY1YTc4IHJlbGVhc2UyNy1tYWludAorODcyMzMgNzY3NDIwODA4YTYyYWVmYTMxYjRjYWFkMWY2MzAxNGE1ZWI3ZmMwYSBweTNrCis4NzIzNCAwNzJlZTNmNzQzYzIxZjM3NzBjY2YxM2FkNDhlMTBhMTgwNDgwNjNmIHJlbGVhc2UyNy1tYWludAorODcyMzUgYjA2NmJkMGI2NGU3Y2Y2ODQyZjg4ZDk4NmZjOWMyOWQ3YzM1MmI0MyByZWxlYXNlMzEtbWFpbnQKKzg3MjM2IDEyMzgxZjE5ZTJhZGZjOGYxNjg1MGU5YzY1YzZjYTY3MTY3MDI4YzEgcHkzaworODcyMzcgMzExMGQ0YTQ4ODc4YjRkNTE3YzIwMzAyNGI3NmEwYzY3Yzg3ZmM0MCByZWxlYXNlMzEtbWFpbnQKKzg3MjM4IGYzYWQ1MmY2NmI4YTQyYTU3OTM5MzJjNzIyZDA0OWY4OWMyNmVkYzggcHkzaworODcyMzkgNmFmYmU0NjEyZDQ5NDNiZjdkZDNiNWQ0ODViN2I0ZTI3OGM1NTk5NCByZWxlYXNlMzEtbWFpbnQKKzg3MjQwIDc5YTJiNmExMjgwNTExZGZiZjNiODg1ZmEwMGFlODY3MDg0MDgwMTEgcmVsZWFzZTI3LW1haW50Cis4NzI0MSBkMThmNDMxM2IxOTdlNTZiMmIyMjFkNDM4MTY4MjgzYjNjZGYwYmE4IHB5M2sKKzg3MjQyIDc4M2YzMTFjYTg2OTNjZWUwMzJkZmRkNDc5ZGE1ZTYxYjA1MWRhNWUgcmVsZWFzZTMxLW1haW50Cis4NzI0MyA4ZDcxNzFiM2NkZDY5YTczODc4ZWFjMDk0MDg5ZDBlN2ViMzRkZDUwIHJlbGVhc2UyNy1tYWludAorODcyNDUgZTE1NjUxOWExYzYwMzc0NGY3MTcyZWVjN2Q3Nzg0NDllMmNkODkxNSBweTNrCis4NzI0NiAzOGFhYTcyYzAxMzFhOTU2OTI4MDE2NjE1MzIwMDcxODkwMDVmMmY4IHB5M2sKKzg3MjQ3IGQ2Y2NiZDNmNWI0NTUxY2U0ZmUyZDNkMGYwMzRhNzZlOTY3MmRmZjYgcHkzaworODcyNDggNDBmNTQzNjM2ODQ2Yzc4YjZjMGJjNjE0OTZiZjYxODQyMWUxYTMwMiBweTNrCis4NzI0OSBmOWQwOTU1OTZlYTk2NDAxZGQ5MjA5MmE1OGY5ZTlhOTQwM2U3MDVhIHJlbGVhc2UzMS1tYWludAorODcyNTAgZDcwOWQxMTRjZGUzYzA1YzRhMDc0NTZkY2NiY2QyNWFiNWNhMGM0NiByZWxlYXNlMjctbWFpbnQKKzg3MjUxIDUzMWY0MjNiMDE5ZDMxZjUxZTBhZGM0OWE2ODBkYmExOWZiZTI2NmEgcHkzaworODcyNTIgN2MzNzE1YjEwY2RkNDViZTJiZWY2YjIwMjhkMzA5ZGM0N2IxNWViZSByZWxlYXNlMzEtbWFpbnQKKzg3MjU1IDRlZTQwODZkZDFiNzQwNWQwYmMyODg4ODk3NDYxZDZmNTdjZDFkYWEgcmVsZWFzZTI3LW1haW50Cis4NzI1NiBhNjE1NDQ3NzhmYTc0MWM5ODU1ZjkxNWE3YmNhNzZlOTQ0ODNhMjgzIHB5M2sKKzg3MjU4IDFjMDI3YTA4M2E2ZTkwYjdiMzlmYjcxZDc2MjdiN2RkODZhMWRkMGEgcHkzaworODcyNjAgOGU3MDFiZmZlNmUyYzBiMmUzN2E4MTlkZTJmMDdjM2NlYWRlNzgwZCBweTNrCis4NzI2MSAxNzg1OGFiMmNkOTJhNDgwOTg2NDljMDQ1YjQ1OGNmNjcyOTRhZDZiIHB5M2sKKzg3MjYyIGNmYjdmNjMyMmZiYmJhYWJmZGQ5ZWI3ZDkyM2UwY2JhMGUyM2M3MGUgcHkzaworODcyNjMgNzlhOTBmYTA3OWE4YmYxODAyN2QxNTI3ZmUxNmJiYzQ4ODkxYTk0ZiBweTNrCis4NzI2NCBhYTQyOGFhOWI2OGIyYTcyMjc3NTYxNzVjMjAxMjQ3NmI0YTc0ODk4IHB5M2sKKzg3MjY1IDQwMTI1Y2RkYWZiOTA1MjlkMTJlZDA1ZDkxZmIzNDNkYTk5NmFiNWQgcHkzaworODcyNjYgYTk2YTJiY2NkZjhhMjdhMTIzYzY3NzZlYzIxMzI2OWViZmE4MzJlMiBweTNrCis4NzI2NyAwMTlhZDlmMzJjMTNlOGFiYWEyNzBkZjExMDg1Y2RlZWU0Mzc1ZWUwIHB5M2sKKzg3MjY4IDQ3MTYzMDg0MDQyNjNlYjE5YzUyY2UyOTZhOGE0NjgwMDYxNTE5Y2EgcHkzaworODcyNjkgYWZlNWY2YjFjNzY2Nzc3MWMxYTgyOGQ5NzdiMmVmYTg0NzZjZTAxZCBweTNrCis4NzI3MCAyM2RkYmQ4MzU5NTBiODljMTk4ZDY2MDk1ODIxMmUzZTUwZGYyOTUxIHB5M2sKKzg3MjcxIGEwZmNhZDkwNzBhZDFjN2M5YmMxMjJjNDZhZWJiMWFkNDY4YTU0MjQgcHkzaworODcyNzIgNmRhMzdjMzRmOGEzMDMyNDBlOGJkYmY1MWExN2IxZWJiY2JhYTNhMSBweTNrCis4NzI3MyBiNTgwOTI3ODcyMTM3NzQ0YjE5YWNmOGYyZjNiOTYzY2JlZmJhZWQyIHB5M2sKKzg3Mjc0IDRkY2VjMTQ2Yjk5ZDQ2ZWVlNDVjNDUxN2M4NGQzYmE1YzkwN2YwMzggcHkzaworODcyNzUgYTI4ZTg3MjExMTdjMjZjNDc4NjM3ZjdkY2ZkOTE2NWI2MjlmZWRlNCBweTNrCis4NzI3NiA5YTJlNTZkMTE0NmRmMjgzMGM5ZjY3ODRmYWJiYTQ0NThkNDY2ODU4IHB5M2sKKzg3Mjc3IDJkMjk5N2YxOWU5MGM1OTg2YTRiMjg5Njc4NDQ5NzQ5OGY4NmE1ZTYgcHkzaworODcyNzggMjYxMzE4M2VjMDI1MWIwYzg3YWYzYTBiODY4ZmM5NDM4ODUzZmNkNSByZWxlYXNlMzEtbWFpbnQKKzg3Mjc5IDViNDQwNTkyNDdkYjYyYmE4OGY1ZDc1YzMwY2YzMDlkNmY5YzVhNWQgcmVsZWFzZTI3LW1haW50Cis4NzI4MCAwMGY3ZjUxY2U4YmE1OTQ3YjEyMjU1OWY2NmExNzc1ZThhZmU2NDgyIHB5M2sKKzg3MjgxIGZmMDdhMDZmNmQ2NWQwYTMwMTY3ZTkxZmIyNjdhMjc5MGE0YzliZmYgcmVsZWFzZTMxLW1haW50Cis4NzI4MiAzYjVjYzY2MzhmM2QxMGQ0ODE2NWQ0MGJmNDMxYWQxZmUwZjhiNjEzIHJlbGVhc2UyNy1tYWludAorODcyODMgNWVjMmMyYmZhZGVkNTIzMTBkYjEyZjJhYzA4ODM1OTc3MGJkMDU3OSBweTNrCis4NzI4NCA5Y2MxOTc4ZWM5ZDQ5OGM0OTEyMzNmN2E1ZGMxZjRlNmVlMDA5Y2VkIHB5M2sKKzg3Mjg1IDliMTU5NGMxNTQ0YjdlY2M4NzQzNDY2ZTcxYzA3NDIzMTYzMzEzYTUgcmVsZWFzZTMxLW1haW50Cis4NzI4NyA4MGUzYWQ1YTYzMWQ1NzUzYTMwZDcwZGI5ZmMzYjIxNzZjMjkyNDNmIHJlbGVhc2UyNy1tYWludAorODcyODggNGFlMmMyMTExNmYxZGYzZGRhOGRjMzA2MGY5NGVhYjc4M2VhZDA5OCBweTNrCis4NzI4OSA3ZjU0OTkwOGJmNTAzMmE5ZmE0MDJkN2M4MmFkNmQxY2U2ZGZjYzlmIHB5M2sKKzg3MjkwIGE1MWE0ZjVlODdlNDllMjNiMDg2NTU2MGFjYWRiNTllMjUzYmI1MWMgcmVsZWFzZTMxLW1haW50Cis4NzI5MSA1Njk5OTQ5NWE5YmFjNWJiNDViNTcyNzM0MTI4N2MxMWU2MTJlZDcxIHJlbGVhc2UyNy1tYWludAorODcyOTIgYjc1MGM0NWE3NzJjZThiZDk2MWUxNTYzYjdhNDUwNDM2NjhmMjY2NCBweTNrCis4NzI5MyBmNTljZGE1N2E3ZmE4MzM5NDA4MmU3MGZhNWRlOWQzN2JkMWViNjRhIHB5M2sKKzg3Mjk0IGFkOWI1YzVkMjgzMWY0YmQwMjVlYzE2ZTZjNGYzNDlkYzQwZjliYWUgcHkzaworODcyOTUgZDJkNTI2ZGIyNzczNmFjYmJlNDBhODdkMjhjMWIzZjMxNWY5NWNhYiBweTNrCis4NzI5NiBjYTdhNWQxMjdkNTdjZGQ0YWU2MzYxNTllYzg1NzZlMDA5Y2NlMTlhIHB5M2sKKzg3Mjk3IGVjZDI4ZTg0YzQ0YjBmNGM0ZTc3Yzk2YjUyOTcwZGE4ODBhZmQ0NDggcHkzaworODcyOTggOWMxZmNlZGVmMmMxOWQ1ZjVmOTljNzExYzBhZWM2MTYxNDFiNDU4OCBweTNrCis4NzI5OSAzZGU2Y2Q5MDI2MjRjN2I5MDhmMGUwYmFmMGE1ODRlN2Q3MmMyZDUzIHB5M2sKKzg3MzAwIDNmMTc1MmQ0MjUzYmIxM2ZkOWExOWFmNTNhMTA3NWJkMTliZDZhNTkgcHkzaworODczMDEgMWFhNGU1Y2E5MTc0MjE3NDM3ZTE5ZGNhOTU2ODU0ZmUxNmM5YTkxZSBweTNrCis4NzMwMiBkZTViOTBkYWFiYjQyZTEyMTQ3Yjk5MzEwNjg1NzNiYzFmZDVjMjlmIHB5M2sKKzg3MzAzIGUwOGMyMGE2N2Y2NDdmZWFkODc4ZjMyMzdkODcxMDI3NjU4OWI1NmIgcHkzaworODczMDQgYTYxODI4N2VhZmQ2NThiMTlmOGIwZTY4ODE3NjNiMTMxNTFmMDIyNiBweTNrCis4NzMwNSAwMDM3ZDY1ZGViZDhkOThjOWU0MTI3ZTdhMDA5ZmFmZjMwYTlhMjIwIHJlbGVhc2UzMS1tYWludAorODczMDYgN2U4ZWI2MzRmMGE5MWM1NDdlODdlZjI3NGIyMDkyYmNmZDAwYzBlMSBweTNrCis4NzMwNyAyYWEwNTBhNDRhYTgxZjQ2NTBhNzVlZDcwYTMxZGIzMGMxOGNmYjdjIHJlbGVhc2UzMS1tYWludAorODczMDggNTllMjMwMjk3YmZmYWRkZDRkMzZkM2VjOTliZjBiYWNiYjYyOWI0YyByZWxlYXNlMjctbWFpbnQKKzg3MzEwIGQ4NGVjODU2MDBiMWE5ODA0ZDZiNTRlOTUyZDU4MDVjNjlkMDgyNjYgcmVsZWFzZTI3LW1haW50Cis4NzMxMSBmZDcyNjE0YjkwMzIxMDFhNTdhNDNhNGIwMGY3OTMwZDc5MTI4MTg3IHJlbGVhc2UyNy1tYWludAorODczMTIgNGMwNjE5YjgzMmUxYmNlM2UyNzZjM2NiMGZhMjRmN2U0NzJhNDQ4OSBweTNrCis4NzMxMyBkOWI0NDI2NDc5YWM2MTc4ZWU3YmU1ZjdiMDIwYWUwM2FlMjgzZWM3IHJlbGVhc2UzMS1tYWludAorODczMTQgYzY4ODNlYzQ4ODgwNDJiM2Y4MzAyZDgxMDZlY2JlM2E4ZGE1OWFmNyByZWxlYXNlMjctbWFpbnQKKzg3MzE1IDViOTJmYjAyZTgzYmM1ZmM5Yjg3MDViN2I2ZjA3YzBlMjBhMTE3ZmMgcHkzaworODczMTYgYWI2NTAwMzM0NmMxMWExNTFjNTJiMGQ3YzJhNDg3MDI5ODAyNzJhZSBweTNrCis4NzMxNyA0MzZiYmM3ZjBhYTY4YWE3NTY1OTVhMDY1NmEyY2Q0ZDA4ZGYwN2U4IHB5M2sKKzg3MzE4IGRjMzI3ODhmMGU0ZTMyNThiYmQ5OWU1NGY3ZDVhMTZkOTBmOTNjN2QgcmVsZWFzZTMxLW1haW50Cis4NzMxOSBmYzJmMGM4NmI0OTdjYjkzOGQ1NGJkMGNiY2EwODZmNTVlODNlZWE0IHJlbGVhc2UzMS1tYWludAorODczMjAgMmM0MjlkOGM1ZWUyMDJhMzcyMzgwM2Q2Mzc3Y2ZmNTg0NmI2MGQxMSByZWxlYXNlMjctbWFpbnQKKzg3MzIxIDg1YzJmZTMxYjExZWMwOTg0NmRlY2VkYmM4NWQzZDY2ODdkZTc0OGYgcmVsZWFzZTMxLW1haW50Cis4NzMyMiA0ZDJiNDI4ZDc4ODIyNThhNDFhNDc0YjhmYjNmMjc2MWMwMGZiMmEyIHJlbGVhc2UyNy1tYWludAorODczMjMgZTlkOTI0ZmUzN2UwM2EzMDVlNmE2ZWNlMmI1NjhkMmZjZjU4Y2QzNSBweTNrCis4NzMyNCBlYThmOTRjZTgyOTMyNjk2ZGUyZWNlYzM2ZjJkMmFjZDU1MGYwM2U3IHB5M2sKKzg3MzI1IGFlZDJiYmFmYTU1MGU5ZGZkZjQxZDMyMjg1N2YwMjRiNzViNGM3NmQgcmVsZWFzZTMxLW1haW50Cis4NzMyNiAyMzkxY2UzNWFkNjk3ZjJiMjY0MzcwNjNkZWY5ZDg1YTk1ODYxNmRjIHJlbGVhc2UyNy1tYWludAorODczMjcgOWJmZDZhYmYwMWNhMjljZGU0ZmJlZWM5MGY4ZTI0ODc5N2FhN2Y3NyBweTNrCis4NzMyOCAwNzRjMjE3MTRhMDI3OGU0ODI5MzQ5NWMzOTk0NDFlMDU1ZTQyMTJiIHB5M2sKKzg3MzI5IDBjMmE3ZTU3ODVjODYxMTJjY2RhYTVlMjk4YmM2MmQxMTk5ODI5OTcgcHkzaworODczMzAgN2E1NWI4MDhlNDkxYzEwMjc2NjIwMTE1NDI0YTI2ZDllMjJjZTczMyByZWxlYXNlMzEtbWFpbnQKKzg3MzMxIDY5YjNhMTUxYWVjNTc0MzIxOTNkMzZlZWI5ZmYzNGNlMzliZThlNTUgcmVsZWFzZTI3LW1haW50Cis4NzMzNyAwNzExM2QxZWY4ZTUxYTUyZmQ1NDdkZGE2NzEwZjE1YTYzMjAzODI5IHB5M2sKKzg3MzM4IDYxOTM1YzhkYzA5ZTBkYjVjOTY2MjY1ZGZiODA5NDQ1N2Y1YTVlNzUgcHkzaworODczMzkgMDE2YjQyNWYwY2QwY2U0NGViMzRmYzM3NTYzZGZmMGM5YmJmMjI0YiBweTNrCis4NzM0MCBiNmQzZmU3MDgwMmYzMjkwZDYzYWRiNWI5OGZjYTdiNGU0MDcxZmRjIHB5M2sKKzg3MzQxIDVhNmExY2EyNGUwNGNmYWExNWY3NzEzYmI3NzQxM2I5ZjUxMzk0ZDUgcHkzaworODczNDIgYzcwYWEwMTFjMDU5ODVlNDYyZWJkZDQ2ZmUxOWY0MjBjNDZjYWY1YiByZWxlYXNlMzEtbWFpbnQKKzg3MzQzIDM0MWI5M2Q4MzE1NzFkODQ4YWNhZTZkYjE4M2U3NGRhZWUwYjY0MjMgcmVsZWFzZTI3LW1haW50Cis4NzM0NCAyMmRiNGQyZjY1NTQ5ODk5OWRhNTI4ZWZjM2NiMzlkMDQ1YTI1YjA3IHB5M2sKKzg3MzQ1IDA1NTBhMjQ0N2MxZTYzMWEwMzlhNzQ4Y2Y5Y2U5N2I2MDc5YmE0OWEgcHkzaworODczNDYgM2EyOTUzZTIxZjc4NTczNDY4N2YxZDdjOTUzOGEyMWNlZjNlNTQ2YyBweTNrCis4NzM0OCA1YmJmNWI2ZDM2NTgwNTI1YzQ3YTVjN2JiNzNhMWUwY2E3MmI4NzI1IHB5M2sKKzg3MzQ5IGFjOGM2YzdjMGNiMzU2NzU0ZDlhOTQxNzVkZjA0OTc0MWY3OTVkZWEgcmVsZWFzZTI3LW1haW50Cis4NzM1MCA4OTIyMzYxMzdkYjk2MTgxMmI0OWVhOWNmY2Y1YzBlMWIxNTk4ZWU5IHB5M2sKKzg3MzUxIDQzYmM1OTIyZjI5OTA2NDVjNTEzNWZlNjNlNjA2MmY5MTY5ZTdlMmQgcHkzaworODczNTIgNjFiYzg2MjY2N2U2ZTNkOWYzYjEzYTU1MWM0MjE1MmMwM2RjYjlkNyBweTNrCis4NzM1MyAyNmMwZjc2OWU5YjQ3MWQxYjkwYjc3NTlhNmJiN2I1OWYwZDc1YTExIHB5M2sKKzg3MzU0IDI4NzE3ZGU0YzU2MmNjM2E5ZDFhZjNkOTc2N2Y2YzA4ZWQ5NGY1NGIgcHkzaworODczNTUgNDA5YmEyNTA4NzEyMjg4NGVhMDY2ZjhlMjM3NWYxYmMzYjk2Nzk4MiBweTNrCis4NzM1NiBhNWVkNGExMjQzMGFhN2IxZGY4N2QzYzU4NTBlYzA4N2RiMTQzYWUzIHB5M2sKKzg3MzU3IDg4NGIxNGVkOGY1NDNkZDc2YTEwNzQ1NThjOGE2YjE0N2MzNzJhZWUgcmVsZWFzZTMxLW1haW50Cis4NzM1OCA2OGE0MmI5NDRmZTM5OGFhNmI0OTQ0YmNjOWMwZDIyNTA3NDlkMGRlIHJlbGVhc2UyNy1tYWludAorODczNTkgY2QyN2MzYzQ0MjM0YWZlZTVhNTQyYjE4Y2Y0Yjc3OGE5ODM4Y2E0ZCBweTNrCis4NzM2MCBhMGE5OTVlMGU2NDAxOWY2YzBiODYxNTI5OTk5ZmE4OGY1MmQxNmEwIHB5M2sKKzg3MzYxIDc4YzE1MjI4OGY1M2E4ZmQzM2MzZjZlNDQzNjllZTJjOTgwYjRkOTcgcHkzaworODczNjIgNGMwNDI2MjYxMTQ4MzFmNzFkZDcwY2QyNDNiZTU0Yzg3MjIwOGJiMSBweTNrCis4NzM2MyBiZjM2ZDZiZGRlNjBiNGFmMDUwYjNlNWQ5YTRjYmE3YzIwNWVjNWNhIHB5M2sKKzg3MzY0IDljZjE1MTJmODgxMmMyMDAxZTBlNzUxZDZmOTJjZGM1YTIwZmY2YWUgcHkzaworODczNjUgYzdhMDUzN2M3ZjNjMjg2NzA4ZTVmYjI0ZGJiYjk5ZWI3M2Q4MjI4NiBweTNrCis4NzM2NiBhMDY2NDdmZjVkOTgxOGUxZmQxOWY1MDA2YzU0OTAyMDk5NGNlNzk1IHB5M2sKKzg3MzY3IGU2NWNkMjFkNWY3MzE0ZWU3YTUxMDg0NDFjYTk2NDdhNDViYWJmZTAgcHkzaworODczNjggZmU3YThhMWJkZjNkNmJjNzIxMDMwMjYyNjJlYWFmNzYzMzg3NjVhZCBweTNrCis4NzM2OSA3MmY1MzZkMTA3NTBmNGI4ZjE0ZDNmYzQ0Y2JiMzFmOTAwNGZjZWFiIHJlbGVhc2UyNy1tYWludAorODczNzAgNmZlOTRmYzAyZmM3NThkMzBlZDc0ZTVjODExM2UyZjY3NWM5MTJjZiByZWxlYXNlMzEtbWFpbnQKKzg3MzcxIDdhYzAzZWMzYjI3OGI5NWQ5NWIzNTliNmFjMDk3MjdiZmFhMWMwYWEgcHkzaworODczNzIgOGFkYjc1YzY5MzA0NzI4NzRiYTEzNTYxMGYzNmIyNWYyNDA0NjRmYiBweTNrCis4NzM3MyAwYjk0NjM1ZWQyZjZmYTg5MzkzMzljNDI2Mjg0NDBhMzM2MzY2NDE1IHB5M2sKKzg3Mzc0IDQ0MDEwMDM5YmRkZmE2OTlkNDhhZmFkNzVhNzVmNjgwYzM1YWI1YjkgcHkzaworODczNzUgMzgxNTU2MzY5Y2FmNmEyZWYzNGRlM2IzYmE5MDc5MTZhY2I2NWJiMyByZWxlYXNlMzEtbWFpbnQKKzg3Mzc2IDVmNDlkM2NiMTk0Zjk3MGQ1MTE5OWQxYzM5ZjMzOWU2ZGRlMGY4YjggcmVsZWFzZTI3LW1haW50Cis4NzM3NyA3MzY5NjRmNzA4ZGVjMjM4ZmM1MWEwNzNmMGNhOWFkZTA0NTAzOGIyIHB5M2sKKzg3Mzc4IDI5ZGI5N2MxNzZjOWNkOWQwMTUwMWEyZmEyNDc0YmY0YTk4Njg3M2MgcHkzaworODczNzkgNTE1ZGUyMjc3MDAxODRkMTNlNzRkMTlhNmE5YjcwZTU4YjU2YzJkMyByZWxlYXNlMzEtbWFpbnQKKzg3MzgwIDdhNDg1OTBhZmQ5MmU0YmY4ZjJhODFjNThlZDg0OThjNDdkYzg0MWQgcmVsZWFzZTI3LW1haW50Cis4NzM4MSBjMmQ1Y2QwMzJiYzkxNjFmOTQyNWJjOTQxYjljYWQyNGVjZGE2OTk2IHB5M2sKKzg3MzgyIDNjMTgyZjcxZDRjOWM1NjYwN2VhYWZlN2M0YjY1NTdhMGZmZTM5N2UgcmVsZWFzZTMxLW1haW50Cis4NzM4MyA5NjUzMTRmMTJmNzE5ZGI5YzNlZmE1MjIwYWY2NGZiZWQ0YjUxZmMwIHJlbGVhc2UyNy1tYWludAorODczODQgOTM4NWM1MzZmNDU0ODAyNzk3MTJlZGFjODZiYmQ2M2I4ODc2Mjg1NiBweTNrCis4NzM4NSBlZTliZGFjZDNjYjYxMDA5OTk3OWI5YzcwYmJlMWRkZjc2MTEyMzMwIHJlbGVhc2UzMS1tYWludAorODczODYgMGFmOTRmOTc2ZDUwMThmZDJjNWIwNmJjZjViODQ5NGY5MzEyODZkYiByZWxlYXNlMjctbWFpbnQKKzg3Mzg3IGRhZTUxNzZkN2I3ZjMwMGMyMmUxYjAwZDYxOTI4YmE0MjdjNDlhYWUgcmVsZWFzZTMxLW1haW50Cis4NzM4OCBkMTZhZGQ1NmRhYzAzNGI5ZWNjZGEwYzhjYTY3YmVlZjlkMTA0YjE2IHJlbGVhc2UyNy1tYWludAorODczODkgNTUyYmFjNzU1OGU3NzkyYjBiNDFiMTdlNjhmOTgwN2Q5ZTViYTQ1MiBweTNrCis4NzM5MCA0ZTIyMjAyZTYyZjgzY2QxMjMwYTJhMGMzZDNkZDE4MzI3YzIwOTg3IHB5M2sKKzg3MzkxIDlmYjg5ZmFhNTk1ODMzYTIwMDQ5ZDM3M2M1ZDJiOTRmYmNlY2MzYzMgcHkzaworODczOTIgNGUyYjg2MGU2NTdjOWFiYjQyZGJjMzVjMjQzN2U3NjIyNTA2NjJjMCBweTNrCis4NzM5MyBlNThmYTk4M2E5NGVmOGNmYzBhYjI1MWViOTZlZmEyMDE5NDFlZGNkIHB5M2sKKzg3Mzk0IDRmYWZlOTdkMGFkYmE2ZjA0MDMyOTIyZDUwZTA0N2VjMzBhZWJjNDMgcHkzaworODczOTUgNWI4MDI2ZmFhMGE3M2Q2MTc5MTU3NmY3YjVmNDdlYzg1MDEwNjJlZSBweTNrCis4NzM5NiAxM2I0YTBmNTJjMmMyY2JmNGRkNmQ2ZDMyZmNhZmZjNDI4Y2I2NTc1IHB5M2sKKzg3Mzk3IDdjMzBkMGYxMDI4YzRkMzc1NDZiNjUxODk1NTA2YmYyZTM4YjUzOGYgcHkzaworODczOTggNDdjYzQ4OTY1ZTUyNTM0OGJmZGJjNDRhYTkwY2MyZTRjMmZjYzE5MSBweTNrCis4NzM5OSA2ZjU2YjI0N2E3Y2QyODIzM2NiMDg3NTdmYTI4NGMzODAxZDMzN2Y5IHB5M2sKKzg3NDAwIGUzYWY1ZjNhNzkwNGMwZDUzNDNlYzk2MzNlYTY2ZTdhY2ZkMjNhNjYgcHkzaworODc0MDEgOWIyNjI0ODgzMGY2NWNhNjFkZThkNzYyYTFiZmZiYzk3NjBhNmJmYiBweTNrCis4NzQwMiBmYzk2YmQxOGJkYzYxYzU4OTI0MjAzMDAxNmRiMTA2YTA4YTQzMjg1IHB5M2sKKzg3NDAzIDZkNTYyN2EwNjY3NzhkZGQ5YjFlYjY2NTM3NmRkMmVjNGJhMjVlN2MgcHkzaworODc0MDUgM2Q4NmNkOWZjNTM0YWVmYWFmNTczNmNiZDQzYWVmOTg2YTg5Yzk0NSByZWxlYXNlMjctbWFpbnQKKzg3NDA2IDBjNGFmYzVmNTkzOGUyN2JlOTUwMjEzYjlhNTliYzkyZmVjNGRiYzUgcmVsZWFzZTI3LW1haW50Cis4NzQwNyA0N2RiZjNlYzFhZDdkODI5ZDE2ZDM4NDM4OGMyOWFiMzE3ZjNkNDJkIHJlbGVhc2UyNy1tYWludAorODc0MDggMjQ4OTRmYTdjNThjNTBjNWJmYTY4Yjc5N2U2OTIzZDEzZjVkMDE5MyBweTNrCis4NzQwOSA1MTc5NGFkYTY4MTBhZjQ5OGQ1NzIxYzQzNTZkMjZhMzA0YjI4MTdkIHJlbGVhc2UyNy1tYWludAorODc0MTAgMjJhMGVhN2Q5NzRlYjZkMjM2YmFhYTM5NDQ2MTQwZmFhOTdjOTAyOSByZWxlYXNlMzEtbWFpbnQKKzg3NDExIGY1NjdhNmM4NTkzNjQ1ZDg3NzY3MzRmMzViMzIzZWFlOGI2YzNiMzQgcHkzaworODc0MTIgZmNhYTk4N2NjZWEwMjA2MjdjNGYwZjc5NzY1NjcyMmYxYWZlMDU2MSByZWxlYXNlMzEtbWFpbnQKKzg3NDEzIDM2NzE5OGI3MzNjZGJiNDI2NmZhMTQxMzhmYmM4MDM2YjYzYTEwMjQgcmVsZWFzZTI3LW1haW50Cis4NzQxNCBiMTY4YjJjYzFiMjFkMmUyNDNhOGE2Y2U5MTE3ZWI2NWM2M2EzM2RmIHJlbGVhc2UyNy1tYWludAorODc0MTUgODE1YjY5MTc1NWZhMGJmYzI0NGIzNTI1NTkyMWQyNjVlN2Y0M2ZmOCBweTNrCis4NzQxNiA4Njg1NzExNTg2ZDQzMWVjNmJkNWQzNWMwN2YwMTRjYWNmMGFlNmI0IHJlbGVhc2UzMS1tYWludAorODc0MTcgNTY0YTQxNjY2ZWY2ZjRiMTYyNWM3NmRmNTJkNjFhMWVhYTNhMTk0OSByZWxlYXNlMjctbWFpbnQKKzg3NDE4IDhiNTNmMjU2MTU5YWEzYWFiODQwYWQ4ZDMzZTQzMmEyZjYyOTE1YTYgcHkzaworODc0MTkgNTJkMjljNzE1OGZlMjA3OTJhMzMxNDk2NzY0NWU3NzQ5MDMwNWIxZSByZWxlYXNlMzEtbWFpbnQKKzg3NDIwIGNkMWRlZTU1YWNlODRlZTY5Yzk2YWVjMTRjYjllMzU5OWQwNDY0ZjAgcmVsZWFzZTI3LW1haW50Cis4NzQyMSAyMDRiZjQzM2QzNjZhMzA3ZTQ2ZDlmYmNjMjk1M2Y3ZTJjM2RjMmQ5IHB5M2sKKzg3NDIyIDA5OGM5N2U5NWQ5MzE5ZjVjNzZlYjM4ZDZiODVlZDE0MjkzNjRlMDAgcmVsZWFzZTMxLW1haW50Cis4NzQyMyAwZGFmMzkxYTFmMWRmODY4ZDcwMGY0OWQ3N2ZlYmFkOWQzYmEwYzIxIHJlbGVhc2UyNy1tYWludAorODc0MjQgZDVjOGNlM2E3MGQ0ODk4ZDVmOWJmZjdlNDc2YjA4ZjJmMjA1ZTBmMyBweTNrCis4NzQyNSAyZjJkZTZjYzYyYzc4MDQ0ZDE2MDg0ODgxNTg4MWZiYzQyMGRlNWFhIHB5M2sKKzg3NDI2IDU3MmY3M2ZmMjhjMjIyZmU0MDJlZmNjOWM4NzA1OTVmYTM1MWM2ZjggcHkzaworODc0MjcgYTg0MjA0ZjExNmY4YjY3ZjRlMmMwOWE4YzdmZGM4MDFjYzgzMTI5OCBweTNrCis4NzQyOCA1Y2Y4NTU1ZTViZTU1YWUxMjQ2YTNlOTA1NTEwZjM5YWFjM2E1NzM0IHJlbGVhc2UzMS1tYWludAorODc0MjkgNTk1ZjI1ODgwNmVmZjBhZGJjYjVhNDU5MTY5MzQzODQ4ZGQxMTRmOCByZWxlYXNlMjctbWFpbnQKKzg3NDMwIDQzOGE0Njk4MDA0YWRkNTQ4NmNmN2JjNGJjZGM4ZDQyODM0ZWE0YTkgcHkzaworODc0MzEgNTYxZWE2NDAxODhiMzQ0ZDYwNGVjMGEyZGQxMzgwYWM0MTAyNThmNCByZWxlYXNlMzEtbWFpbnQKKzg3NDMyIDNmOTA1MWQ4NjYwMzI5MTkyNmFmZDBjMGZiM2UwMTQwNGEwNjc5NDEgcmVsZWFzZTI3LW1haW50Cis4NzQzMyA4ZTdkNGMzOTc0NTg3Y2QzNWI0NTk4YzIyNjM0MGNjMDM2YTY2NTQ3IHB5M2sKKzg3NDM0IDUzYTQxYTExNzQxMWJiYjBmMDE1OWJmM2ViYTJjZDVlYWFiYjBhZWEgcmVsZWFzZTMxLW1haW50Cis4NzQzNSBjNjNhY2U1YTUzNDZiYjBhOWIxNTIxMzcyMDkwNTAzMmE0Yzc2MDVmIHB5M2sKKzg3NDM2IGE4MmRmMjA5ODU4YTY0ZGZlMTFjZTE5Nzk2NmYxZDVmZTFiNDZkMzYgcHkzaworODc0MzcgNmZmNTBjZWY5ODRlZTU1OWIyOTk3N2Y0NDNhMjNmN2JmNTYwZGI5NyBweTNrCis4NzQzOCA5MjUwMmIzNjc0Y2JlYzc4Y2Y4MmIyMzBhZmRjYWZjNjFlNjMyM2ZlIHB5M2sKKzg3NDM5IDZmNDgzNDJlOWUzZGY2OWIyZTc2ZjE5Y2U2YjA0MjFmNTE0YjQ2NWUgcHkzaworODc0NDAgOTlkMTQ2M2VkYjU2YzFlZDc1ZWM4NTFjZDJmYzBjNjE3ZTRiNTlmZiBweTNrCis4NzQ0MSA4OWE0MTZmZDdjMjk3MDdiZDQxZmY4NDVhNzljMWVkNzZiMDZkYjQ0IHB5M2sKKzg3NDQyIDZhNjIzYTc2NzA2MjJjNzJjM2Q1NGQ4NjNkMmQ2ZDljNThlOTg3NjcgcHkzaworODc0NDMgZTIxOWZiNDEzNGUzYmQ3ZDZjODI3NzI1MzBiMzZmOTY0MWE4OTJjMSBweTNrCis4NzQ0NCA0ZGMyNDhhYzI2NGY1ODkwNDE4ZjMyNmE5MjVhMTJiOWRiZmU0YTFhIHJlbGVhc2UzMS1tYWludAorODc0NDUgY2YxOGQ5ZTUxYjlkNjAwNDMzYTNhN2JkZTNlZmYzZGU5MjVkYWIyMiBweTNrCis4NzQ0NiAzNmFjM2Q5ZDc0YzE1MDUyOWExY2NhNmU1NGE0MWVkOTJhMjVmNGNlIHB5M2sKKzg3NDQ3IDgzYmNkYWQyNTMzNWY4YjIxOGFhMTA1ZWI5YzM1NGQ5NDY5MjBhZTkgcHkzaworODc0NDggMTIxYmEwNGYwZmJiMTAxYWJiMzk3YWFiZTA0ZjZjZTllOGE2MmQ1YyBweTNrCis4NzQ0OSAyMTkyYmI5NWY1NGIwZGFlMWUzZjg5NTgwZGY4Y2U2ZDljYzMxODdjIHJlbGVhc2UzMS1tYWludAorODc0NTAgOTNmNTYxOTRjZjViODJjMzNiZTIzN2IwZjBiNDMyMzY4NmE0MTJhMCByZWxlYXNlMjctbWFpbnQKKzg3NDUxIDc2NTc5NmEzNGFiZTE4OGQwNDU5MzUyNmU2ZGFlNjY4MDNkODk0NTIgcHkzaworODc0NTIgODE5ODJhY2VkODZiYzk1YzczNWUwYmJmZTg3MjY4NzI4MTY2ZjQ1YyByZWxlYXNlMzEtbWFpbnQKKzg3NDUzIGI1ZDAzY2ViOGQ3OTA3OGUzOTNiN2E0MGMwNDdiNzg0MjE2NTgzZGEgcmVsZWFzZTI3LW1haW50Cis4NzQ1NCBkNGUwZGE3NjE4OGI2MDI2N2FiYTU4ZGM4M2QxZjNhZGFjM2JmYzlmIHB5M2sKKzg3NDU1IDNiNjE1ZWU3ODdiMGYwNjdlNDdkNGY3NTE1M2IyMTNlNTgzMzgwZTQgcHkzaworODc0NTYgYzM0YWM5ZjlkZTgzMTdkMzYyNmQ2OWMzZTE0NTVmMDM4NTIyNmIwOSByZWxlYXNlMzEtbWFpbnQKKzg3NDU3IDVjMDgyZjE5N2RkZjc3M2VkOWViMmExOTEwODc2ODU3MGRlOWM0M2EgcmVsZWFzZTI3LW1haW50Cis4NzQ1OCBmZGI4YjAyYzFlNjViMzUyM2ZiYmNlOGFiYTIwY2I0MjEyZjMzMWJjIHB5M2sKKzg3NDU5IGUxYmYzYzFjOTU2MTM0MjVhZGRlODVkOTdiNzM0ZWZiOWFkMmExZGIgcHkzaworODc0NjAgY2FmODlhNmExN2E3ZTg0YmEwZjRiYTJhMTRiMGZhYTMyYzQwNzBiZCBweTNrCis4NzQ2MSBjZWYyODE3ZWExNTcyNWU5NGYwOTI3NzVhMTQ5MGQ3MDU1NzA2NzI0IHB5M2sKKzg3NDYyIGQ1ZmFhOWZmZGYyYTkzMzg0ZTIyZGY4YzIyOTljNDNhMDY4Yzg0YTEgcHkzaworODc0NjMgMDk2NzMxNjIwZmYyYWVhY2NiNTQyM2U3Mzk3Y2VmMDM0NTRmMmE3MiBweTNrCis4NzQ2NCBjMzdkNmRiMDJjODRkMDNkYzY2MjYwZDNiZmJkOTUxMDY0NjQ1MmVkIHJlbGVhc2UyNy1tYWludAorODc0NjUgZDJjMjhhMzdmNzYzMDY3NTA0NDIwZTVhODg5MDkwNzAwZGQ3ZGMyNiByZWxlYXNlMzEtbWFpbnQKKzg3NDY2IDg5YWUyYzNiMDg1Y2MxYjM5N2I2MmMwOGVlZWRmNjdjMmMyZGE3MjggcHkzaworODc0NjcgNTEzMjQxNTRmODkzZjdiNTVlMTE5YmEwOGU1ODI5MWEzM2I4YjdkOCBweTNrCis4NzQ2OCAxYzU2MGY0YjVlNWI0OWQwNGUyY2NjMjJjYmU1NTkxMDRlNzA2NTg2IHB5M2sKKzg3NDY5IDk2OGRiM2U1YjFkODAwMDhmZTY2MjcwYzY2ODc4M2FmYTYzOGZiYmIgcHkzaworODc0NzAgNjE4NzY2MWNkYzA4OGJjMmIyMDE2NjBlMzdjZDlhZWM5ZTI3M2YxYiBweTNrCis4NzQ3MSAzOWNlYTk4MDkwNWQzZDJjMzFlYTczNTY5MjYwZDQyODhkMWI2Yjg0IHB5M2sKKzg3NDcyIDJlOTY3MGQ2NzAxNzMxZTVjZmNiMzA4NmY2YzJmZGFiMTM2NmRmMmMgcHkzaworODc0NzMgYzUxMGMxNTA1Y2U3MjM0ZWIwMzlmNTAzZWExZDY2OWEzYzliMTY1ZSBweTNrCis4NzQ3NCA1NzAxYTgwODQwMDE5MTdmNmZhMmZjMTZhYzllNzdlYjQ3NDE1ZWZjIHB5M2sKKzg3NDc1IDg0YzFkMjY3OTcwNzhmZjhmMDA5MjE3MGRhNzM2MjNkZjdlZTE0ODQgcHkzaworODc0NzYgMmQ4MmNkZjYyYjJjZGUyZmQ1ODUzNmNhNTc3MDQyYTU3ODQ3NDZjOSBweTNrCis4NzQ3NyA2YzhhMWMxMTc2MWI0ODkxMjQyOGQ1ZWEyZGQ2NGQxNTkyYTRjMDM1IHB5M2sKKzg3NDc4IDhlOWE0N2RiMzkzY2VmYmUzODM0YTQ5MmNkODY4N2NiYmU4ZjRhZTggcHkzaworODc0NzkgZWQ4ZGY1YTkwY2YxOTYyNTA1OGQyMmQ5MzZkMWQxNDRmOWQ5NjI0MCBweTNrCis4NzQ4MCA5NTAzYjA2NjI1MmRkYjE3OTliMzhhMjEyOTljNjE4MDFiZjRiMzI5IHJlbGVhc2UzMS1tYWludAorODc0ODEgZDUxYWZlNDdkZTczMmE0MGJlNWQxNTlmNzRmMzllMzEwMmNlYTcwZSByZWxlYXNlMjctbWFpbnQKKzg3NDgyIGZhNGRlNjZjN2RlZWIzYzdjOGZlM2JkMTk3NGUzOTA5ZDdjYzQzNDYgcHkzaworODc0ODMgYzU2NmM0MTMxNDM5ZjE3NzhmMzE1MzBiOWExMGRkZjc0NzFkYjk3MSBweTNrCis4NzQ4NCBhNjdiNDJiZmY0NzE4NjI3ZmZlMzEzMDk1NDVkZDAyNjFmMWMwZWZjIHB5M2stZnV0dXJlcy1vbi13aW5kb3dzCis4NzQ4NSAzOGQ2Njk4MDE4N2UyODQ2NDViMDgxZTZiMWYyYjE5Yjg4ZmVjZDg1IHB5M2sKKzg3NDg2IDY3OGQ4MzM2ZjRjM2RjNjZlMzU3M2MyODU3ZGE5NDkwNTZlNTY3OWIgcHkzaworODc0ODcgMWIyMTYwYWQ0YzZlNGE2YjkxNzYyYjQwZGJhZGE5MmYxN2I2OWQ4MCByZWxlYXNlMzEtbWFpbnQKKzg3NDg4IDQ4OGVkNTUwYjdmODg4Y2VmOGViMDViZDUxNzkzNDFlMTQyNTlhY2YgcmVsZWFzZTI3LW1haW50Cis4NzQ4OSA0YjkyNmExM2RjNTQyOGZhYWZjYmRlMWY3MGJlYzJlOWNjMjY2ZTZmIHB5M2sKKzg3NDkwIGEwMTUzM2IwMWI5YzliYzE2OGZlN2QxMDc1MDM2OTM3N2UzNmI0ZDkgcmVsZWFzZTMxLW1haW50Cis4NzQ5MSBkNWJiYzY1YmMyYjNlMDFhMzRlYWRiM2M2ODU5MDcwZDYyMGE0YmE1IHJlbGVhc2UyNy1tYWludAorODc0OTIgYzE3YTQ5OTcyMjQ0MTQ3NDg2YTc5NWZiY2RjMmVjYzc1Y2RmNmIwYyBweTNrCis4NzQ5MyBiZjA5ZWNmNjhhMTk5OTg2MWI3MWVhMTQyNjhiN2Q0NGY5ZDBjMzE2IHB5M2sKKzg3NDk0IDRkMjBhZWE2MDVjNWZiNDQwMGMzYjdiMTI2NzBiYjBjYjZlMTY2NmQgcmVsZWFzZTMxLW1haW50Cis4NzQ5NSBmYmJlZmNkNmExYTY5NWFkZmI2ZTBjYjQ3YTkzNGZkZTFmNGM0YzgwIHJlbGVhc2UyNy1tYWludAorODc0OTYgZjRiYTU0ZTBiYTc3NDUwNjMyNTY4MzE5OGM4ZWM4NTAxODA5NGJhMiBweTNrCis4NzQ5NyBjMmFlOTBhY2M5MDg4NTY2NjA4OWQ0YzVkNGUxMjc1MTY4NDMwMzgzIHB5M2sKKzg3NDk4IDEwOGJjMTI2OTMwZjdmOGYxMmVlYmNmNGJkNGMxMDllNzEyZTY2NzggcHkzaworODc0OTkgZTIwYTY0MzZhOTI3MGY4YWU3ZjUwYjI1ZDFjZTBlNDYyMGM4NzZkZiByZWxlYXNlMzEtbWFpbnQKKzg3NTAwIGRkNmQxZWNiZWI1NmQzY2EzMzJhZTJkOTIxMWM2YzQ2ZjRlMzBlMTIgcmVsZWFzZTI3LW1haW50Cis4NzUwMSBiY2Q2YTY1YjhiMjIzZTU1YTI5OTUzMjc1MzA5ZWExZmRkZDFkNmM5IHB5M2sKKzg3NTAyIDQ0MmYxZGEwMWE4OTgyZDRhZWM0N2ZkZjVmMjkwNGEyZjk0NDhjYWIgcmVsZWFzZTMxLW1haW50Cis4NzUwMyBkNGQzYzg5YWIzODhmMGM5NTFlZjQ4MjNhMzkyZmYyMjM0ZjIxM2I3IHJlbGVhc2UyNy1tYWludAorODc1MDQgOTNlOTViMmUxYTFhMjNiM2IxYjViZTljZWY2MmUwM2MzYTZlYTM4NSBweTNrCis4NzUwNSA0YmI3ZjdiMTUxZmVhOTQ5OGNiNTI2NzE5NzJiYzdjNzdkMzRjMTgzIHB5M2sKKzg3NTA2IDY2ZDg0NDZhMDE5YmU3Njc5OTQ0Y2MzYzkwNzZhZDk4YWY2NjI5YTUgcHkzaworODc1MDcgZjYxMTk2NDUzYzc4MWU3MDZmZWNiMThkZWIwNzk5Mjk3MWMyNGFkZSBweTNrCis4NzUwOCAyMmMxMmE1ZDhlZDMwNTE1NTI3MDU5YmM2OWMwNmQ3YTczNzZhNDkzIHB5M2sKKzg3NTA5IDVkYWUwNGQ0OWUxNWM5OWRlODU5Y2MyNTI4ZTIzN2MxOTFmNWZlZTggcmVsZWFzZTMxLW1haW50Cis4NzUxMCBjNjk0Njg1Yjc1ZTI0M2ExY2FhN2IyYjAxODhiNDNhNjZlM2JhYjkwIHJlbGVhc2UyNy1tYWludAorODc1MTIgNjY0NzA1ZGJmZTYyOTllMTlkMzAxM2I0NzJlZDA1OTE3NDI2NDBhMSBweTNrCis4NzUxMyBlZmRjNWQwZDgxYjcyMWMyOGNhNjNlODczYWQ0NjM1Y2VjZTllNjYwIHB5M2sKKzg3NTE0IGJiZjc1MWZkZjQyMDY3N2M1NGJkYzIzNDZlZmRiNmM3NzlkMmRlZGMgcHkzaworODc1MTUgMmQwOWFmNGMxMzdjOWM2ZjNjZjRiMTU1M2ZmZjVjNDcwNjQyODQwOCByZWxlYXNlMjctbWFpbnQKKzg3NTE2IDg5NTQ5NTM1ZDk3NTg3NDIzMGUyYjk5NWZlM2MxNWEyYzExMWQ4M2UgcHkzaworODc1MTcgNmYxOTYyMmRkMzQyYjRkOTJmMGM3ZTdiNTgwZjBjOWVjOGMxNmIyMCBweTNrCis4NzUxOCBmYzgzNGIzMjNmMjY3ZGQ0NGRmZTlhZTdlZjkxOTdkMjc4YmU1YWFmIHB5M2sKKzg3NTE5IDU2MDVmNjkyMGI2MzhlNDA4ZTliY2M1YmZiNTQyYmE0MDc1ZGVlYmEgcHkzaworODc1MjAgMzA1YWY2ZjVjYWJmOTRlYjQyYjk1NzA5NmJlMTI2Y2E5YTEyNDg4ZCBweTNrCis4NzUyMSA1MzIwOWQwMGQzYWIxOTJlNDY1YzM0NTc0YmE0ZDFlYjkzYzM2OGMwIHB5M2sKKzg3NTIyIDAwMDQwMTNhZTk4NGE5YzQxNTMwMzJlM2JiZTAwZTc4MGIzNmE2MjggcHkzaworODc1MjMgMTA5ZGVmYzFhOGNmYjJlMmIyZjQyMDczZDNkYTYwNjBlODAxMTIwZSBweTNrCis4NzUyNCAzYTQ4MTZjMzZkZjdmZWNkNzk2OTRlZmMyMWNkZjE4ZDk0M2Y4YzFmIHB5M2sKKzg3NTI1IGUwYzUyYzBlODU4NjIzMzBjZjIzMzVkNjZiZjRmN2YxYTM3OWE1NWYgcHkzaworODc1MjYgN2Q1NTFkNWVmNGZjZjQ2OThlZDYyY2E4ODUzYjc2YTk3MDk4OTlhZCBweTNrCis4NzUyNyBjZDZlMzQzZTI3OGU4YzI0YjEwOGE5MmNjNTA0YTY1ZDU4ODZjMTFjIHB5M2sKKzg3NTI4IDYxNDQ4Y2RjMGZhOGMwZjViMmUzMjdhODM4OTExMGViNzVjNmE5MDkgcHkzaworODc1MjkgZWY5MzUzMWQwYWM0N2M5MjFmZWYyOWU4YzA3NDlkNGM1NDM2M2UyNyBweTNrCis4NzUzMCAyZTI0NzZmYjgzZWZmOTBlZDdjZWYwNTNjYTI1MTI3NzQ0N2QwNTY3IHB5M2sKKzg3NTMxIDRhNzczOWM1Mjc0YjhhNWI4MmZmZDY0MTM4MTkxOTFiYzA0ZWY5YTMgcHkzaworODc1MzIgODgwNTg2YjhkMGQwMTU3YmFmNGQ5ZWQ2YjU1MDMwMmNlNDRlOGNmMyBweTNrCis4NzUzMyAwMTcxNGVmZGM2Y2YxMjA5NGNkNzBlNTQ4Zjg4MjdlNzM5NDk5OGNiIHB5M2sKKzg3NTM0IDhmY2I4ZjI2NTVhNTkyNDA4NTNjZjE2ZWZjOGZhNTFhZjIyYTc3OTUgcHkzaworODc1MzUgMTRmZDBkZmIxNmZmYzM2MjY5YTZhZDkzYjgyMjZkN2M5Mjc2NDM4ZCBweTNrCis4NzUzNiBmNTA5MTI5ODM0NjE3Yzk2MWFjMzc2NDNkZjcxYTM1YTI1MThiZjRhIHB5M2sKKzg3NTM3IGI5MDFkYTU2MWNkMTQwNzBmYmM3NjY0MjM1MmMwNDM4ZjM4MGVmYWEgcHkzaworODc1MzggYThiZTA1NjczZjM0Mzc3ZjBmNDEwNDk4ZmViOGI4YzEwNWMxYzhjOCBweTNrCis4NzUzOSA1YWE0MzNhMjc3ZjkzN2ZjNzhjYTJjZWUwMjdjNmVjNmJmOThhZmUzIHB5M2sKKzg3NTQwIGE0ZWMyMGNjOTA2NjY4MjFiMTY1YTk2ZGU2ODMwYzk1MjdiY2YzYjIgcmVsZWFzZTMxLW1haW50Cis4NzU0MSA1NGYxZDU2NTE1NTU3NGE3NzNiMzMxNTY0Mzc5MmM4MjI0ZTcwZDljIHJlbGVhc2UyNy1tYWludAorODc1NDIgMThiY2VlODU2OWJiMzdhNDRlMmJjYzllODUyMDM3YzBiYTI0OWY5OSBweTNrCis4NzU0MyBjYzc4YTZiZWZiZjJmMWY2ZWVhNGI1ODBmMjhhMTU5ZDdhODRkNjRjIHJlbGVhc2UyNy1tYWludAorODc1NDQgMDVjY2NkNDI1N2EyMmE4Nzg0MjkzN2ZjMjljN2ZmYWYxNzVjMzY2ZCByZWxlYXNlMjctbWFpbnQKKzg3NTQ1IDM1NDZjZTFhYTM1NWJjNjc0MTllNjViZDU0YTFmMmFhN2M0Nzc4NjUgcmVsZWFzZTMxLW1haW50Cis4NzU0NiA1MmE4NjE3NDYxMjk3YmI5NTk0NmM3ZjliYWU2OGEwNzA0YTFlMWZjIHJlbGVhc2UyNi1tYWludAorODc1NDcgNmNjZGIxZTAxNjExNTc0ZDFiZTAzZTlmZTUyMWI0ZWZhM2QyZjJhMyBweTNrCis4NzU0OCA2OTQ2MGM4MDU3MzdiZTgzNTFmNWNlYjJlNTBlYWY1NWViN2ViNDAxIHB5M2sKKzg3NTQ5IGI3YmU2NTJkYWY2ZWUzMjIyMDdiM2E0MGNhYmVkZTgxZGZhMDVjN2UgcHkzaworODc1NTAgNzdkZWRhYTM2ZDNhY2I4YWZjMzFjMzY1YjIxODdiOWJiOTNiY2FlYyBweTNrCis4NzU1MSA3NDFiOTNiYzY4YTViZWJlOGQ3MWVkYjQyOTBmNDY3MzA3Y2YyN2FiIHJlbGVhc2UzMS1tYWludAorODc1NTIgOTU1OWUxMTUyNTk1Yjk1ZGQyZDQxNzMyZjY1YjRlYTI1ODQzMjRmOSByZWxlYXNlMjctbWFpbnQKKzg3NTUzIDBkOTdiYjk5NDI1ZGVjYTFmYWNiZjkwNTI5MDhjY2FkYTA4M2YxZmQgcHkzaworODc1NTQgNWJiYzFkYzQ1OWE1ODFmNjc2ZDk1ODNiMjRlNmMyZDljNjcxZTViMiByZWxlYXNlMzEtbWFpbnQKKzg3NTU1IDFkZjIwMjFjN2MzYzQ3ZDJmYmFkMDhhY2JkNTAyYmJiNzBhOWJlYjIgcmVsZWFzZTI3LW1haW50Cis4NzU1NiAyNDk4OGY5Zjg1MGIxYzNlYTAxNmIxNjI0NzY4ZmI0ZjJlNjQ0YzEzIHB5M2sKKzg3NTU3IGZhNTk4OGY3YzhiZDI1NzA2NDhjNTRhMjA4NjA5ZjgzNGY3N2IwNTggcHkzaworODc1NTggMmE3NzNiZWY0MGMyMTE3NDNlMDRjNjViZmZmZWVkOGVjYWI3MWQzMSBweTNrCis4NzU1OSA2MDMyM2EwZTgwZDdjMWZmYTJiMzJmZTI0ZTNkY2QzYTJkODVmNmUwIHB5M2sKKzg3NTYwIDM3YTkxNWJkZjgyN2JhNTE0MjU2ZWViYjJkOGViYTI2MTJlMDc4YTMgcHkzaworODc1NjEgNDI3ZjlmMTU1MDQ4NWU4NDQyOGE4ZWZiOGQ3ZDUwOTUwNDJlNzliZiBweTNrCis4NzU2MiAyYjQwZTRjNzc3NzU1MzcyNmU3MjJkYzVjOGQyOGViZjk4NWFlMmUyIHB5M2sKKzg3NTYzIGIwZmFmN2E0NTIzOTUxMTQzNDAwZTc2MzhjNWFlY2U5YzZlOWVmMjIgcHkzaworODc1NjQgOGI1ZWViNWY0NTQ2NjRiYzdkNmRiNjgzNjcxMDcyZWI0M2M4ZjM0YiBweTNrCis4NzU2NSBlMmU1OWNiNGY1MGNiMmMyOWMwMDI3MTAxNjdhMmE0MjQxMGUwMmYxIHJlbGVhc2UzMS1tYWludAorODc1NjYgMDBiYjA0MDZiZmVkOTQwMWFhY2E0ZmZiZDM3OGVjM2IyNTIyZjZjYSByZWxlYXNlMjctbWFpbnQKKzg3NTY3IGFiNjFiYWIzMjFjMTAxMTk2NzAyMTdhYTFmNzkzYjBmODllZjA5MTMgcHkzaworODc1NjggN2U3MTZiOWE0MDNkMTQ5NDlkZjJhNGU5NWVkNjdiMjdmNjNiYTkxZiByZWxlYXNlMjctbWFpbnQKKzg3NTY5IGYwNjk3Y2E4YWQ0NzZkZDg4YWYzNmEyNjkyYjIxOGIyMmQ3MDU1NGYgcHkzaworODc1NzAgMmU1OTJhNGU2OGFiOGY2MDcxNDQ4YzBlYjg5NzMzODU1YWMwNDE0MyByZWxlYXNlMzEtbWFpbnQKKzg3NTcxIDJlMWRiYjI1MmYyNTc4MTlhMDEyOTNkNDdlNGRmY2Y4MmI1NTBhNjYgcHkzaworODc1NzMgMTBiODM2NjgzN2Q4MGRlNzM1YTFiYzIxMTQ5NDJlYjFkMWIzMjBjNiBweTNrCis4NzU3NCA0MWQ1YjZjYTE5MjNlZjlmNGI3MDc4YmYxMTM2OTllZTRiN2Y2ZmM5IHJlbGVhc2UzMS1tYWludAorODc1NzUgZThlNjRlYjRjYTRjZjU3ZjQ4ZGNlMTM2OTJhYTQ3YWYxMTgxOGE4ZiBweTNrCis4NzU3NiA5MTM4NjM0YjhiZDE0NjAyZGQyNWZhYWM1YWFhNGZjOGU3M2FhZjgzIHJlbGVhc2UzMS1tYWludAorODc1NzcgNGM4M2EyOWE3MTJmOTE1ZGE0ZjlmYmFlMjEzNzg4YmQzZTYwZmY0OCBweTNrCis4NzU3OSA4N2U2YmRiMzczZDEzZDU1Zjk4ZTZhMTBhMDM5OGI3NzJjNjM0N2E5IHB5M2sKKzg3NTgwIDE2MzE5ZjliZTk3YzRlYjlhMTVhZTMwODEzYTRkMWZkYzI5NWZjNzcgcHkzaworODc1ODEgNTRlZjUyZjk3MWE1MTk3ZjNjZTZhMDIxYTgzMDRlZGExYWJhYzNlOCBweTNrCis4NzU4MiA2M2JmODRjZmQ4YTYxNGViODU2MDAxMmM1OTBkYzRjOGZkNDQwZDI5IHB5M2sKKzg3NTgzIGYwYjU2YTM4YTUyNDNiZTAxN2MzZmZhOGNkMWFlZTNlNGRiNTg5MGQgcHkzaworODc1ODQgNDRlYjA5YTU1MzkzZjA3YmU5YTRiOWI4MWZiM2IzNzQ1NTIyMjcxYiBweTNrCis4NzU4NSBmMzdmOTZmY2U3Yjk0ZGE3ZjMzNzI5ZDVjZjc2NjRjOTJlYWY5M2Q5IHB5M2sKKzg3NTg2IGZkYjZiZDFkNTM1NGNlODM2ZTQ3MTQ5YzQwMGExNjg0NjI5OGJhNjYgcHkzaworODc1ODcgOGM3ZGYwMzU2MDM2MDIwZmVkZGEwNjg1Y2I5ZjNhMGYyY2NiMTliYiBweTNrCis4NzU4OCBjYWNmZmYzNDlkNDhkNzMyY2IwZmQ4YTk0MjJmZDQzOTVkOGRhZWNiIHB5M2sKKzg3NTg5IDBkZmI4Mzk3YTk3M2JhZTZiMTZkMWE3ZjFiNjk1NjY0OWIyMTE0MmEgcHkzaworODc1OTAgNzAyMDM3YzAzOWZmMDEzOTQ5NDRkZWJiZmMzZjNhMmNkY2I3MmYxMyBweTNrCis4NzU5MSBjNzJlZTZlM2I3ZGY4YmI5ZDE4Y2JmNDBmYTJkZjA0MzE1NzE0NDI5IHJlbGVhc2UzMS1tYWludAorODc1OTIgYTEzYjg2NjNmZWJhYzc3ZWRlNTQzM2NmNDQxNmNkN2RjNTgzYzAyNSByZWxlYXNlMjctbWFpbnQKKzg3NTkzIDU1MTAwNjNiMzlkNDAxZTBlOGY5OWMwOTM3MDQ0ZGEyOWZlYjJkYjQgcHkzaworODc1OTQgM2ZlNjZmYzIyMTdiMzAxYTliZTRlNjgwZDUwNzY2YTRjMzgyYjIzNSBweTNrCis4NzU5NSBiNjhmMzg3ZmJiNDhhOGJlNDUzYTFlMzgyNjVkYzhmNzAyMWIzZjA2IHB5M2sKKzg3NTk2IDg3NTcyMWRhNzQ2ZDM1YjdjYjk2MTZlYmZmNTYxOWY2NDI2MWJiZjkgcmVsZWFzZTMxLW1haW50Cis4NzU5NyA1M2RiMjkwZTQ2ZWY5M2I4OGRjZThjZTZjZWYzNTk2M2I4ZWI5NzY4IHJlbGVhc2UyNy1tYWludAorODc1OTggOGY5MjRjYWYyZTVlOThkYzk4NGNiYjUxMzU5ZGFmYTg2Nzg1OTFhMCBweTNrCis4NzU5OSBlY2EyNWYxZGVhZTczMTgzMGJiZWMyNDUzZGJlOGYxZmIxM2RlMjcwIHJlbGVhc2UzMS1tYWludAorODc2MDAgNTAwZWIzZDA4OTdmNDkxM2RhODhjYTIyMGY3ZmNjYmQwZGM0MTRjYiByZWxlYXNlMjctbWFpbnQKKzg3NjAxIDNiYzc0NjE2YzlmZmMzMTlhMjIzZTdkOTZiODJhMzI2YzZmNzYzMTYgcHkzaworODc2MDMgZmE4NTUwMjEzYmNmZGRlNzIzMmNmYTM0Njk1NzI4MjQxNmEzNzE1MCBweTNrCis4NzYwNCAzMzU0M2I0ZTBlNWQ2MTUwNTg4MDViZjU2NzRkODc2ZjY1OTU3ZDNkIHB5M2sKKzg3NjA2IGNkOGM5YjY3ZjAzMzg1MjY2NDMzMDU1N2MxNzc2NDU5OWYzMDk1Y2UgcHkzaworODc2MDcgNWRiYTY3Y2E2Y2NmYjU1YzAxN2U4YTY2MWY2NTY2NmFkYmNiZWY3ZSBweTNrCis4NzYwOCA3YmIzN2E0Y2Q3Y2Y3NTllZDAxNzU2ZDBkODc2NjQ1MDEyYTE1M2NiIHJlbGVhc2UyNy1tYWludAorODc2MDkgNWRiODk4NTNjYWNlMTk2ODA3YzAxZmZjNjMxYTg4MWNmYWRmNzRiMiByZWxlYXNlMzEtbWFpbnQKKzg3NjEwIDkwMGJhMDdlNDgyNGI4ZTA4ZWM5NmMzNWFmMTYxOWI2MjI3YjNlMzAgcHkzaworODc2MTEgY2NlZDBhN2NlYjQzZTgwNDE1N2FjMWY0MTRmNzI5M2QzODQyNTIwMSBweTNrCis4NzYxMiA0MTVhNzkyZTEyNDkzYjhjMjFiYWFlY2Q3N2Q1NThlNGQ5ODhlYTJiIHB5M2sKKzg3NjEzIGE5YWE1ZTRlYjhjM2FlNTVmOTBkMTYxZWRjOGFiNTU2ZWRkYTFkMjggcmVsZWFzZTI3LW1haW50Cis4NzYxNSBmOGMyZDg5MGZkMTA1NGI5ZDM1ZGNjYThlMDkyYjNjNDUyNjA1M2EzIHB5M2sKKzg3NjE2IDhkYmY4NTVjOTBlZGFjNzgxOTY5ZWVhNDYwNTFiNzcwZTQyMDE1ZmUgcHkzay1jZGVjaW1hbAorODc2MTcgNTc4NTdhNjBmYTk3ODViZWUwNDkyYzM1YjhiM2FjNGUwNzRmYzExZSBweTNrLWNkZWNpbWFsCis4NzYxOCBkZDQ5NDU1ZDhhOGM5MTc3NzI3YmU5YzVjYzhhZGM0MDY2OWJiNmZlIHB5M2stY2RlY2ltYWwKKzg3NjE5IDZhZjllODAwMDMzMjk3OGE0YTNkOGQ2YjgwZjQxZjEwNDc4MTVhMmMgcHkzay1jZGVjaW1hbAorODc2MjAgYTZjZDg0Y2E3YjJhNzk2NTBmNDQyZTA3ZGJjZDUyOGI1ZjI1Mzk3OSBweTNrLWNkZWNpbWFsCis4NzYyMSBhZWU0NTQ0MDBlZDcxN2I4MjdiZmVhZTUzOGYzMzc2Njc4M2QyODc0IHB5M2stY2RlY2ltYWwKKzg3NjIyIDRhYTY2ZTUxNDg4ZjM5NDVhZGJmN2YxZmY1MmNiYWRiOTA0ZDZlMmEgcHkzay1jZGVjaW1hbAorODc2MjMgMGIyZWE5MDMwMGMwYzliZmZlYTUxNTEzMjk2MTU5ZmQwYWJjMzhhNyBweTNrLWNkZWNpbWFsCis4NzYyNCBkMmNhNWIzMTA0YWEzY2I5N2MxNGQ3MDVjMjM3YmRkY2Y3MDkyZDVkIHB5M2stY2RlY2ltYWwKKzg3NjI1IGQzOTNlYzUzNmNhOWQ1ZDNlYTMyMDEyMjM3ZDE5NDg2OTA2MjlkMDggcHkzay1jZGVjaW1hbAorODc2MjYgM2ZlYWRhNzIyMzNjNDczNGU3MmM5NDIzN2YyYjRlNDQ0ODc3ZjMxMCByZWxlYXNlMjctbWFpbnQKKzg3NjI3IGRjNjI0NWJmZTU2NjFhZjk2ZmM5MjZjNjFiZjFkOTg3NjYzMzVmMzcgcHkzaworODc2MjggNzQzNmRhZWM5NDIxMGUyNTFmYjhhNjkwMjUyZGNkOWRhNTJjOWFjZCBweTNrCis4NzYyOSA0NDk2ZGViMjYyNjVkYTM2MDdlMDg2YWM1MDMzZTY4NGI4YWFlYjIyIHB5M2stY2RlY2ltYWwKKzg3NjMwIDc5OGFhM2ZlMDM0N2I1OWQ5OWJjMDg3ZWEzNTE4MzQ3ZDFmNDdlNDcgcHkzay1jZGVjaW1hbAorODc2MzEgMjFlNGYxYWEyNDMwYzJmYzU5OTZhMzdjNjcwYTRhMWFlZjZjMzk2NiBweTNrLWNkZWNpbWFsCis4NzYzMiAwZmMyNDkzYTM4NjNkN2UyZDE1MzMwODE2MjQ0ZjYyMWI3MGYyZmQ0IHB5M2stY2RlY2ltYWwKKzg3NjMzIDVkMzZmMGE1Mzc4M2FkZTQwYmQxYmU3NTYzYzQyMzQxYzE1MWE5ZDAgcHkzay1jZGVjaW1hbAorODc2MzQgZTcwYzkzNjEyZDdmY2JkMmJjOTlmMWZmMWY2MzNjYTNmYzQ3NjVkNCBweTNrLWNkZWNpbWFsCis4NzYzNSBkNDRiYTc1MjEwM2YyM2I3YWE3ODI5YTlhOGIzNjc2MTViY2RkNjJhIHB5M2stY2RlY2ltYWwKKzg3NjM2IDE2ZTg4NmE3NmM1YTU5YzQ5OGNlYTlhNzA0Yjg4MzFmNmZmNjZmYzMgcHkzay1jZGVjaW1hbAorODc2MzcgZmU3MjNiOGQ3YzVmZTMwOTdhZmM4OWU3YWVkNWRkNzVmYzJkZDYwOSBweTNrLWNkZWNpbWFsCis4NzYzOCA2NDAxNDkxM2ViODgwOWI4NWZkYjZjOWUyNzI5Y2FkMGM0YjlhMmNlIHB5M2sKKzg3NjM5IGIzNDQzNzdmZGQ4ZGI1NmI0MDEwOWQ4MTU3NTk5ZDIyNjI5MjRjZmQgcHkzaworODc2NDAgMzM2NWM3YjY0ODkzN2RmZTUyZDBhNTZlY2M5Mjc4M2RkZjk0ZDFlNiByZWxlYXNlMjctbWFpbnQKKzg3NjQxIDhmMzNiNTAyMTgzYmYwMzk0ODEyZWQ1MWNhYmZhM2QxYTA4MTdiMDUgcmVsZWFzZTMxLW1haW50Cis4NzY0MiBmZjEyNjFhMTQ1NzMzYTQ2ZGJmYzBiMTRlMDkxNzMzODJmOWQyNTQzIHB5M2sKKzg3NjQzIDllYTEyZTg2ZDU2NTIyN2YzZjY5ZjI5YTlkNTM1NDM3NmNmYmYxZWEgcmVsZWFzZTI3LW1haW50Cis4NzY0NCAxNTJhMDk4NWIxMzhiNzkxOGQxN2Q3YzhjZTViNGUzMmFkZmRmYTU5IHJlbGVhc2UyNy1tYWludAorODc2NDUgMGFmYzQxMzljYzcwMjkxYzRhMWYzMDI0Mzg3NDM0YWQ2MjVlYTc4ZiByZWxlYXNlMjctbWFpbnQKKzg3NjQ2IDBjYWUyMWRlOTkyMTM4ZjRkNTVhNjRmNjJiYzk3NDI0YTRmOGVjOTkgcHkzaworODc2NDcgMDA3MWExNzM0NjkwOTkwN2FhNmM1MDJkNzAwMzA3MGUzOWJkYmExZiBweTNrLWNkZWNpbWFsCis4NzY0OCA2YzQ2M2IwN2RiZGI3MmFjNTRkNDEwZGY5MjRkZWFlMjA4NTczMWNhIHB5M2sKKzg3NjQ5IGRiYjZmYjJjNWI5ZDdlNmEwOTljOGFmOTJmMDViNGMyY2I3N2QwMjggcmVsZWFzZTMxLW1haW50Cis4NzY1MCBlYjk1NGM3NjU1MjFhYTcyN2Q0MjY0Zjc0MjBlM2ZjOWJkNDQ5YjRjIHJlbGVhc2UyNy1tYWludAorODc2NTEgYTVhZTNhMTdkNWZiMTgxNDE1ZmMzMmM1ZjQ0YmFlZmZhNmEzZDRlZSBweTNrCis4NzY1MiBlMGU0ZWZiNjMzNTRjZGI2ZjQ2NmNlNTA2MzIyODNhZWNjMzdmZTdiIHB5M2stZnV0dXJlcy1vbi13aW5kb3dzCis4NzY1MyAyNTZmNzk0YzJjYzAyODQ0NDBiZjVlY2M3NjIwZjMzODcwZTAyZmQ5IHB5M2sKKzg3NjU0IDU4MWU2NzI0NzhmN2VhNGExZjMyNzJiZTdlYTgwNmU4MjkyNWViMjggcHkzaworODc2NTUgYzRkNjdmYTkwOWRjZDJkYTE5ZDFjNDFlZjA1NmEyMDc2NjJiYjQ4MCBweTNrCis4NzY1NiBiMDIwZGY5ZWUzODE2Y2IwYTkzNjRlNDBjNGVhN2FiODUwMjNhMGI3IHB5M2sKKzg3NjU3IGQzOWVmYTU0ZGVhZjA0OTMwOTk4ZTQwMjkxNzI4ZTJmZjcxNGNiZjAgcHkzaworODc2NTggNDI2MGUzMDI1MmViMmJiN2Q1NWViNDgzZGJlNTUyOGQ2NjliYzU3YiByZWxlYXNlMzEtbWFpbnQKKzg3NjU5IDczMGIxYWYwOTIzODc0ODNkMDcyODg4MWZhODlmMDZkZDZmNmIzOGEgcmVsZWFzZTI3LW1haW50Cis4NzY2MCAwNGFhNWJlNzA2YWMwMTc3MTFhMWFhOTViMWE5ZjUzNDI0M2ZhMGQzIHJlbGVhc2UzMS1tYWludAorODc2NjEgYTVkYWExNDAwMWE4ZWViYTRhZDAyOTdiNjY3ZWU1OTYyYTA1OGY4YiBweTNrLWZ1dHVyZXMtb24td2luZG93cworODc2NjIgZjg5ZTM3Y2Q2YzY1NzcxNjhkY2IzZjAyNTMwNjdjMjI2ZGJlM2FiNCByZWxlYXNlMzEtbWFpbnQKKzg3NjYzIDg4ZTVhZTViN2RjMjZhMDFjNjViYWU5NTIzMjgxZDc5YzVjMTNiZDQgcmVsZWFzZTI3LW1haW50Cis4NzY2NCBlMjg4NjhjZjk4MjU4OWM3NWUxN2QwZDQwZGUzYTI5OGM3YTgzN2IxIHJlbGVhc2UyNi1tYWludAorODc2NjUgNzQ2MTQzZWMxZjYwZGExMjk1NGE3ZWE2NzFmOTE1MzZmNDAyOTJhMCBweTNrCis4NzY2NiA0YWY5ODdlYzAzM2EwZDA2ZTEzMTk5Zjg5YTUyZWZlYWFlY2ExMGFlIHB5M2sKKzg3NjY3IDI4NTM4ZjJlMGNjMjQ3ZjNmNWY4OWE0NzA4ZmE0ZmZhZjQ5Mzg0ZDEgcHkzaworODc2NjggZDhlZDBjYzllMzM4MmMyNjk0Y2NkMGY0ZWEzMTJhY2YzYjVhMTViZiByZWxlYXNlMzEtbWFpbnQKKzg3NjY5IDkzYjdjMDAwOGIwODVlMDdhMjk0NDRmODk2MWE5ZjJmN2YyYzEwYjcgcmVsZWFzZTI3LW1haW50Cis4NzY3MCA3M2IyNDQ3NmNhM2JhYWY3MDdlNzc2M2I3YmZkN2Y3MjI1MGZkNTMzIHB5M2stZnV0dXJlcy1vbi13aW5kb3dzCis4NzY3MSBhMDQ4ZDBjZjJhZDFkODIxMDc4NDk1Y2UzOTcwMmJiNDQ3M2RhYTk1IHB5M2sKKzg3NjcyIDUzODRlNzIwZjI4ZmQxOTgzNjBkY2Q2NmU5ODU2ZmIxM2U5YmQ3N2EgcHkzaworODc2NzMgNDM5YmY5NjgwYmVmMjY2MDNjOGY0YTc3MTkyOTE4YWUzNzM3ZTIwNiBweTNrCis4NzY3NSBlOGJjYzdkYmFiN2RjMjBjMzM5ZjM4MzEzZjhhNDRjNGRhNTQzY2ViIHJlbGVhc2UzMS1tYWludAorODc2NzYgYzg5OGRkMjE1YmEwNjY1NzRmN2FlNDhlMTlhNzZmODgzNWZmNTYzYSByZWxlYXNlMjctbWFpbnQKKzg3Njc3IGZhNTlhYzExNjQ4NDBkZTljMThiNDkyY2NhMzQzNjZkODI2NjgzOWIgcHkzaworODc2NzggNTc3NmY0MjRkODU3ODEyZDcxZmFiZDY3MTU4NjEzN2QyMjIzZTMyMCBweTNrCis4NzY3OSAyODExOTA2MWY3ZDAxMTg4ZGU0MjU4MTE5ZjYzMDQwZmQ4ZmM4N2NhIHB5M2sKKzg3NjgwIDgwNjAwYzBjMzNiNzhiMWRjODVkNzFlOGEyZGEwMjIwNGMyNzRhNGIgcHkzaworODc2ODEgZjViMTA1YzlmNDZiZjZmMmFiYzM3Y2UxNGE2N2NlNWMyZWIwM2JmYSBweTNrCis4NzY4MiBiYTE2ZmY4NmQ0ZjZjZDE1OTZkYTI2MGJkM2IzYTE3ODliZmRkNWQ0IHB5M2sKKzg3NjgzIGRiYTliOWM3YTJkYjc2Zjg0NzcwYWMyMTNmNmQ5Mzg2YWE2NTQxMDMgcHkzaworODc2ODQgNmNiN2VkN2I2Njk3ZTUzNTJhM2ZmNGVlNDQxYzA0NTdlOGVjMTllOCBweTNrCis4NzY4NSA5NDg2OTI3MTJmZDcxMGQ0YzMxMThmMTIwYTJiZWViYmVhOTk2YTA5IHB5M2sKKzg3Njg2IDkzMWQyMzIwZjU2YTA3YjQ3MWRkNDYzMzg0ZjAzNTc2MGQ2OTc1NjcgcHkzaworODc2ODcgNGM0NmY2NjMyZGRmOTc3NjRiZWQwNDJlNDcwYzhhOWIwOTgzMGU4ZiBweTNrCis4NzY4OCA3NzQ4M2YzZTQ5MWE3OTM2MGMwMDlkYmM0Y2Q0NTZjYWZlM2VhYWExIHB5M2sKKzg3Njg5IGM0MTdkODA1NzY4Mjc0MDk3Y2QzNWM5YjBmMDAxZjNhYjBjOGNiZjMgcHkzaworODc2OTAgNzQ3YzU1YTk0Y2IwZTVlNTE4ZGZlNjY4NmM2YTIxN2ZiMWY2YWNmNyByZWxlYXNlMzEtbWFpbnQKKzg3NjkxIDZiN2Q5ZjFjMmNlNTFhODRjZjBhMjMyNjhkYzRhZjgwODQ3MDFmOWUgcHkzaworODc2OTIgMjQ1MzU5MzgyYjBmYWQzZTQzMjhjN2JkYjUwZGM1MzBhZGJhNmVjZCByZWxlYXNlMjctbWFpbnQKKzg3NjkzIGZlYjIzZTI0ZGNiNWM3MGYzMzExMDc5OWNmNzI5NmEyZDQxYTc2ZDAgcmVsZWFzZTMxLW1haW50Cis4NzY5NCBhMzNlMWYwMjA5MWY4ZmExNWU3YjgyYjA3NGViMmM5NTk0NDllOTAzIHJlbGVhc2UyNy1tYWludAorODc2OTUgYTY2YTZlNDI1MzhmZTQwOTEzZjY1NjNkMmJjZWQ0YWZlN2E5NzJmNSBweTNrCis4NzY5NiBlOWE1MWQ0NjM1NzkyNDQzMTU2M2E3YTYyZTA5NDhlMzZjMzRiOWRhIHJlbGVhc2UzMS1tYWludAorODc2OTcgYTQ3NmViMDg3ZWU5NzY4MzMxZTgzYTM1MjQ4MDQ4MzU1NzU5N2FiYyByZWxlYXNlMjctbWFpbnQKKzg3Njk4IDhhYzRiY2NhOGUzMTYxZjJlZmI3YmRhZWNjMTdlNzlmMjQ0YmIxYWUgcHkzaworODc2OTkgOWFjZWQ1YWVkMTFhZjVhZTE3YmM3ZjQ0NGI1YjhjMzY2ZDdjZTcyMiByZWxlYXNlMzEtbWFpbnQKKzg3NzAwIGIwYjQ0MTRjMGJkYzIxZGU0MzY1MjQ3ODg4MDg3ZGQ3MzExZjYwOWQgcmVsZWFzZTI3LW1haW50Cis4NzcwMSA3OGRlM2E3ZmI4OTYzNGUyOTZiYzI1NzRhNWQyYTU0MTFlM2JiMmU2IHJlbGVhc2UyNy1tYWludAorODc3MDIgMjc1ZmI5ODQ5NDkxZmUxNWE3ZjIwYmMxYmI3YzZlYzI2M2Y0ZTI5ZiByZWxlYXNlMzEtbWFpbnQKKzg3NzAzIGY0OThlYTk3OGM2ZmUwZWRjOWRhNWVhODhlOTljNDBmOGI5OGU0NDIgcHkzaworODc3MDQgNjExNTY3ZWM0ZDdiNzE1Y2I4MDY4YzAwOTI0MmZkYjhkNzM0NDFiNyBweTNrCis4NzcwNSA4YzE4OTkyZDM3NTBhYzIzZGFiNzkwMWM2NmM1MTdjMTg0YWRiZjUxIHB5M2sKKzg3NzA2IGY2MGE4OTlhMjA0ZTViMjhlZGNjNmVlYjQxMzc3YjdjM2Q0YjIxZjMgcmVsZWFzZTMxLW1haW50Cis4NzcwNyA0MDk0YmMxM2FjZmNjNDEzMGYzYzI0OTYzODE0MzE4MTNkNjI4ZGM5IHJlbGVhc2UyNy1tYWludAorODc3MDggOWY0OWVlNTIzOTc1NjEwOTgwMmVlNzQzMmY2MDdlNTBmZDEyMDg4ZSByZWxlYXNlMzEtbWFpbnQKKzg3NzA5IDViY2YxMDhhM2Y1ZGZmMjdkYTIxMDc4OGVjMzNiNjllNTViMDJiYzAgcmVsZWFzZTI3LW1haW50Cis4NzcxMCA2ZTVhYWRhNGZkZDVmMTc2ODg2MmJlYjRiZjcwNTEzZTQyNWEwNWFjIHB5M2sKKzg3NzExIDUwMTE4NzBlYzg2YmQ0ZjE4YjI1NDRiZTRiNmEyNjUzN2I1MmFhMjEgcHkzaworODc3MTIgYTdjNDk5MjY2YTlmZTAyNTFiNmU3MThmOGY4YWFjZGRmZTM0ODljYSBweTNrCis4NzcxMyA4ZjUwOWM1MjYwYTk4YWMzOThlYWU4NTgyZjEzNTdmMTZkYjFlYTIxIHB5M2sKKzg3NzE0IDg5MzI3M2Q3OTNjNmVmNTFjNTUyOWM4MGUyYjc4MmI5MjQwMzIwMzUgcHkzaworODc3MTUgNzMxZGVjNGU3NTEzODE2NGFkOWM4YjNkZGQwYTgxMDMwMmQ2Mzg2NCByZWxlYXNlMjctbWFpbnQKKzg3NzE2IDlhZDg5NjQyNmY3OTY0MTgwMTNiYWYzNTlhZWE0ZjgwY2ZjZWVmNzMgcHkzaworODc3MTcgNzBiZWEyZGFkZWY4YTcxNGQyYjNhN2QzZmNmNjU2NGUwZDdmNmI5NCBweTNrCis4NzcxOCA4Yjg0OGQzYzZhZDAxNDQ1MDg5OWZlY2QwZjhjZTJhNDcxYzE1Y2RjIHB5M2sKKzg3NzE5IGQzNmUzNDVhMWEzY2VjYmU5ZGRmOGY2NjAwMGZkMGYxMmMzNGIzNzkgcHkzaworODc3MjAgZjBlYjM0NDhjZTM4NDU5MjkzNDA3YzNmYTBjOTQ0MjhkNzlkODljMSBweTNrCis4NzcyMSA5Y2Q4M2M2NThiYTQ2MjBiZjMyMzM4YmM2ZmE5NjdmYjE0YWRkMmY3IHB5M2sKKzg3NzIyIDM3NGRjOTEwZGIzM2FkNjhjMDczODg5ZjdhOTU2ZGQ0OGNlZDA3ZTcgcHkzaworODc3MjMgMThkYmMzYmExNmMwZWFmZDgwYzY3MmYzNzhhNjdjNDdmMmZlYjEzZCByZWxlYXNlMjctbWFpbnQKKzg3NzI0IGMwMDdjM2RiYmQzZmJkOWVlM2JkNWI4NGNjNmM3NmZlZjFlOTZiODYgcmVsZWFzZTMxLW1haW50Cis4NzcyNiBhZDJmMzQzODBhYWM4Njc4NDc0YmQ2NTNjZTEzOTZiY2ViZGM2YzVjIHJlbGVhc2UzMS1tYWludAorODc3MjcgM2UxYzNkMmE4Njg5MDcwNWYxMzcyNzY5MDQ1YWQ2YTliYmQzNDQ2MiByZWxlYXNlMjctbWFpbnQKKzg3NzI4IGY3OGU3ZGIxZDVlODY0ZWNlNzk5ZDllN2UxOTU3OTczNjExYTEyZTYgcHkzaworODc3MjkgNDU0OTQyNmVlNGQ2NTJlYmM4NWRiZmNhYzBkMjAzNjUwMTMwNjhjNSBweTNrCis4NzczMCBmNGE4MDhmNWE2NmQxY2VkZGNlNDQzNTE4MzcwMzhjN2ZlNmNmMGMwIHB5M2sKKzg3NzMxIGE3ZDE1ZGY3ZDY3ZDNmMGYxMTMxZmU0OGMwOGViZGVkOGQwN2Y1Y2IgcHkzaworODc3MzIgOThjOGFhMjM3ZmMxY2MxMzk4ZTJkOGQ1NzAxZDg1MTYwMTRhZWRiYiBweTNrCis4NzczMyAzYmY0ZDlmMTY2MGE0YzFkY2VhNTM1Yjk0NDRlNjQ5MmNkNjkyNDNlIHB5M2sKKzg3NzM0IGNkMjc5ODIwODdlYWM0YmIyNDE4ZTU5MzBiYjVhNzAwYzdjMzBiZWUgcHkzaworODc3MzUgOGFhOGRjYTQ2Njg0YjU0ZmJjZGRlZTU3OWRmN2ExZTY4ZmJiYTY5MSBweTNrCis4NzczNiAxZTYyYTBjZWUwOTIyYzNmOWZiODM3YzUxOWY4YTM5MzM4ZTNhMzdhIHB5M2sKKzg3NzM3IDY0MmM4ODA2ODMwZjVmYjQyMDI0MTAxZDFhODE3MjllYmQ2ODdjNzEgcHkzaworODc3MzggMjAwNDNkYTc4NzI2YTM5NGEyYjJiNmQyYTMwNTBmNjJhNTg1MWIwMyBweTNrCis4NzczOSA2MjllYjNiNjk5MDlmMWNjYjZmMWUwYWFkZWQzZmE0OWI1MDRhYTZkIHB5M2sKKzg3NzQwIDM0NzhkMDA3ZGYyMzcyMmRmOWZkMzdmYjJlN2Y0NWNlMDY0Y2I1N2IgcHkzaworODc3NDEgYTNiN2MyOTA3NTRhMGExNTIzODFhOGNhODEzY2JlZjk3NDg5NmE0MCByZWxlYXNlMzEtbWFpbnQKKzg3NzQyIGE2YmM0OTdiMTk2MjQzY2VkOGUzMjAxMTEwMWE5YzVjNGU3ZDgzNzAgcmVsZWFzZTI3LW1haW50Cis4Nzc0MyA3YzVjMzdiOTYyODE2Yjc4NzU0ZTkwNWNhOWRmZDNlYjc1OTE3ZjczIHJlbGVhc2UyNy1tYWludAorODc3NDQgOGFmNmU4ZmMwMjA1YmNjYzY1ODAyN2QxZWYzNzkzY2U3NjI2OGJjYiBweTNrCis4Nzc0NSA0NTU3ZDQ5NWE0ODQ2YzNlNTIyNWY1ZmQ1YTBjNmE1NDhhOTllMjQ1IHJlbGVhc2UzMS1tYWludAorODc3NDYgMDgxOTIyNjVkMTcyYzRjMTA4OTc0N2I2YzA4MTI5MjNkMjQ3M2M4ZSBweTNrCis4Nzc0NyBjMGZlZjhhMTQ0ZmFkOThkZThlZDZhZTBkMjkwZDM1MjQwNWIxMzJjIHB5M2sKKzg3NzQ4IGVmY2IxNGY5NGU3NjkxM2JkZmMxNjEzZTc2OTg3MjhhZjM5MjYxOGEgcHkzaworODc3NDkgZGQzZjI4ZmZkMDI5MDg5ZDA4ZDFmMTZmMzUyOGY2Y2QwYjU4OTg0NCBweTNrCis4Nzc1MCA0OTc4OWE1MmE5NzYyNDQ0MzM2ZDQ4MmMyOGViMzY5MDZjMzY5Y2I4IHB5M2sKKzg3NzUxIDBlZmZiMTc1Yzk4MTliOTQ0MmUyNTBjNjRjY2M5ODVlNzFlNzQwM2EgcmVsZWFzZTMxLW1haW50Cis4Nzc1MiA4NWZiZDc3NTUzNGViN2Q4MDgzNmFjOGJmNTRjOTk1ODExZDVlMWRlIHJlbGVhc2UyNy1tYWludAorODc3NTMgYTBkNGVkYThkYTBhZjBmZThjMDQxNjY2OTQyYzIxYTVlZmFlMmZhMCBweTNrCis4Nzc1NCA0Y2M0N2E5MDgzZTM4OTk5NmZmYWQ0ZTliNmIzOTYyOGJiMmYxNjgyIHB5M2sKKzg3NzU1IDRhODJiZTQ3YTk0ODFiMWMwM2JiOTUxYWU4ZThjNjhjNWU5YTAxZTIgcHkzaworODc3NTYgZGU4NjJkYzBjY2NhZjY5MTIxZTFlOGU3NDg0Njk0MzBlMGYwMGU0YiBweTNrCis4Nzc1NyAyOTYxYWY4MGQ1NDU1OGI2N2VjNGIzNWM3NjNmN2YzMGRkYmJjYTE0IHB5M2sKKzg3NzU4IDUwNjBhOTJhODU5N2U1MGVlZTM5OGExN2MwZTQ5NThkNTQzYmM5ZGYgcHkzaworODc3NTkgZTkzNDhkNjhjZmNkMDAwOGU5ZDg4NTY4NjkyMDE0MTYxMDJiMjQyNCBweTNrCis4Nzc2MCBjMDQyNWI1ZWRlNDdhZDZmMmE3ZDExYjQyMDM1MTZmZGRmZDA3M2U3IHB5M2sKKzg3NzYxIGE0NGJhZGY5ZTAwZjYzZDNkYzVkZjllOWQ3MDYxMDE1YmU1ZmM0ZGQgcHkzaworODc3NjIgYmM1N2ZkZDg5NTYyYjE3MjMxOTg3MDBkMThhNGFhMDk0MDE3MDJmZiBweTNrCis4Nzc2MyA3OTljZDE1MjMxMTE3ZjkzMzk5MDA1M2EwZDZmYmQ0MTNiYzE3ZmU0IHJlbGVhc2UzMS1tYWludAorODc3NjQgYjc0MjZiZTZiYmI0Y2ExZjM4ZmFjYTc5MTVjZTJkODgzNzE0NWZlZiByZWxlYXNlMjctbWFpbnQKKzg3NzY1IDc0NTIyNWFlMjllZjA4MWJmZWQ2MGUxYjc1NmE1ZDFlZjM1YTRjMjIgcHkzaworODc3NjYgOTEyZmQyMGRlMGUwNzIwY2IwNDRmZTQ3ZWJlMzBmMjdjYzkzNmYyYyBweTNrCis4Nzc2NyAxMzIzNzRkNTM3ZTRkMTBkNzZkNmZmZTc2OGYzZTg0MmNiNDMxODhmIHB5M2sKKzg3NzY4IGVkMDI1OTIzMDYxMTJhMGNlMmQ3MDIzMjgxODg4MzcwNzM1NDhlM2QgcHkzaworODc3NjkgYmRiNTdmNDYzYzg1ZmI1NGYzZjlkMmQxMmUwZjc0NzczZjRlOTdlNyBweTNrCis4Nzc3MCA0YmYzYTVhMDQxMjA5Mzc5Zjc3YWQ3NzFhOTAzNTNkNDg0NDU4YWE1IHJlbGVhc2UzMS1tYWludAorODc3NzEgMDc2Mjg5OGZkODAyODZlODdmZjlkYWExZDAyNjlkMjlkMWVlMDNjNCBweTNrCis4Nzc3MiA4ZjUzYTRlODk2MzEzYzU2ZGZlNzVmMjE0ODVlNmI1OGNjODA1OTMwIHB5M2sKKzg3NzczIGRlMzg3OTRkMTc0OTg5YTM5ZWQ1ZWYyMTg2NWYyNjlhOWNjZDlkMTEgcHkzaworODc3NzQgZjA2YzI3OGI0ZjIxMjNlYmJlZjdmYzFhNDRkOTFkNDEwYTg1ZTNlNyBweTNrCis4Nzc3NSA1OGI3ODQ1NTNjYTRmNWE4NDJlZjJlOGQyYzkxNGFiNzIzMDc5ZmExIHB5M2sKKzg3Nzc2IDkyZjYxYTY5MmUzOTQxMzFhZGIzNWEzMGQ0NjZhOTljZDA5NzE4MzYgcHkzaworODc3NzcgNTEwZjdlMjllNzI4MTdlZTFmNmFkODk0OGMxZGJiYmYzNmE1NGY1ZCBweTNrCis4Nzc3OCAyMGUzYWYxZDUzMGE4ZmIzOTkyYzczYzFkNjkyZjQ3NThiNzNhOTg5IHB5M2sKKzg3Nzc5IGNmOWUxZjc0NjRkYzU4ZWNlOWE3NzJkZGVmYWM2Mzk5MDhmOTMwN2IgcHkzaworODc3ODAgOTJmMmQ3ZDI4ZmVlZGIzMjBkNmE1YTFlZTQ0ZjFmYmZmODg4ZmU0NyBweTNrCis4Nzc4MSAzNGQ4OTE1ODBmMzhkNDU2ZjAyMzUwMDY4NDZjOGJiYzQzNDc1MWNmIHB5M2sKKzg3NzgyIDI0N2I3YmE2ZmZhZDQ0ODkxODkwN2I0YjdkMDExNGRkY2E2YTgyMmQgcHkzaworODc3ODMgOGM0NDhhNDI3N2EwZDRmYjlhNjVjYTVjZjhiODY3ZjQ4NmFlNjkwNiBweTNrCis4Nzc4NCBhYmI2ODZhNWExZGZjZDZjMDJmZjQ1N2EzZjIyNzIyYWNiYjU4YjRlIHB5M2sKKzg3Nzg1IGM5YjQ4NGYyYTBiNzA3NDk1N2VjMjY4NTliMTU5OWM3YzUyNTVmMzUgcmVsZWFzZTMxLW1haW50Cis4Nzc4NiA3MWUxYTk5NjE4MzYxOWEzYTI2MjMwNWI0OGZjZGUzYzFlYTRkZmQzIHB5M2sKKzg3Nzg3IDNkODI0YjUxMzdkZGIxMzNkZmU1N2E1ODZmNTcwYTA2NTM2ZGVhZjMgcHkzaworODc3ODggZDgyNGU5Y2ZiZWU4NmRmMGE1YjM1MTlhMmZlNmZiNzZlMzcyNzI3MCBweTNrCis4Nzc4OSBhMzI4OGE0ZTJlYWQ5YWQxMDM3NmQzYmNhNDFmMjNmYzI1NTlmZjBmIHB5M2sKKzg3NzkwIDE0MjI4ODA4OWMxYTQ2NTZhMWEyZDk2MmQ5YzhlYjhlM2YxZjIyMTIgcHkzaworODc3OTEgNWQ2NjY4NTQ4NDI4NDJmOTFjYWFhMzU5YzIxOGU3MmJhMzFlMDM3MSBweTNrCis4Nzc5MiBjY2JjODQyMjJmZGE1OGEzNjA2Y2NmYjk0OWNjMWQyNDdiNWY0MjljIHB5M2sKKzg3NzkzIDE3NzRkNmEyZjViZmVmOGYxZTZiNDE0NTliMTU0ODg2Y2Y3NWYzOWYgcmVsZWFzZTMxLW1haW50Cis4Nzc5NCAyNjgzNmU0N2RmYjkxYzQ3MWI2YTE5MWY1NmQ1ZDg0YzRlNGI2YjExIHJlbGVhc2UyNy1tYWludAorODc3OTUgZDJhNjQ2MTJkMjM1YjZlZjI0MmVkOWFjM2ZlM2Q3YjI3ZDUyODBkMiBweTNrCis4Nzc5NiA2NGMyNDUzMTNjZmY5ZmRkNDZlNTRkY2QzYzViMzk5ODI0NGY0MDE5IHB5M2sKKzg3Nzk3IGE0Y2ZiMjc4MjQxNjRhZmQxY2NiMjU1YzcyNzAwOGE0YTAxZDRhYTQgcHkzaworODc3OTggNTkxOTIyMjk5YWNjMTExOGFkMDMzYTdhYjg4NDFmZmYxNjk3ODA3ZiByZWxlYXNlMzEtbWFpbnQKKzg3Nzk5IGIzMzJlNzNiNTU2NzA3YzRhMTA4OGIwMDg5ZDAzZTY3MTYyYzhjMTUgcmVsZWFzZTI3LW1haW50Cis4NzgwMCA3ZTdmYzk0ZmQwZDQxNGZiZWMyMzNlN2EyNGI1MjY2YjZmYmYzMzk4IHJlbGVhc2UzMS1tYWludAorODc4MDEgNDE5Y2EwODlkMzY1ZjMwMTRhNGUwMmI1MGE5NGVmMzBmNzY1ZDcyMSByZWxlYXNlMjctbWFpbnQKKzg3ODAyIDZhMWQwODA2MjNkNzdiODI1YzFkZTc3Mjk5ZjM4NjgzM2I2YzM1ZDAgcHkzaworODc4MDMgNzIyMjY5Nzk2NGZjNzQ0Mzk5YzhlZTExOGJiMzk0OGFkMTVkZDFkYSByZWxlYXNlMzEtbWFpbnQKKzg3ODA0IGM3ZmQ5YjZhYTAwMmVlMzAxY2UzZmY5ZThlN2MxNmYyZWVkYTBiZmIgcmVsZWFzZTI3LW1haW50Cis4NzgwNSA4YTMwMmEwOWVlODNhNzY5MDVlZWQyZTA1N2ZmZmU4YjkwYTZiMDMyIHB5M2sKKzg3ODA2IDAyMGRhOWI4N2RhYTg5MTMzNGJiNzg0MzhhMTA0ZjBhYWQzZWQ3MjcgcHkzaworODc4MDcgMWQ0ZGM5ZGYyNDk2NzI4MjM1NmZiOTY4ZWE0ODQwMGQ2NzI0NmM4NCBweTNrCis4NzgwOCAwMWIyNTMzMzFhODZlMDY4MGI3ZDRiN2ZiNGE2ODgyM2E4NzI5YjQ2IHB5M2sKKzg3ODEwIDdiYTVmNTdjNzRlNTc2MjhjYTQxY2Y1NWY2MzBkOTQyY2ZiMTkxYjkgcHkzaworODc4MTEgN2U1Nzc3ZTFmMGZkYTNmMTM2YzljMTQ2ZTkzMGJjMmRiYjMwYTI5ZiBweTNrCis4NzgxMiAxMmNjODEwNjJkNGE4NGY2NzBiOGJhODgzZDQ2ZTg5M2EwMjU5YzgzIHB5M2sKKzg3ODEzIDQzYzhjMWJkZDk0ZmQ4YWVmZTk4ODVlMzIxYzExZjg2MTA3NGFkZDcgcHkzaworODc4MjAgODNkM2Q1ZTA2ODdlZmU0ZDExODg3ZTBiZWFkMzliYjdhMTQ1YmI0YSBweTNrCis4NzgyMSAyZWU2YjQ0NGM5M2RlZTQ4NTAxMTYwNjAzNGI5ZDc5YTA0MGMwZjEwIHB5M2sKKzg3ODIyIDUyNjBmZDEyYzc2M2RkZDNjOWQzMjNmNWQzMTM0OTUzNDEyYjM0NjkgcHkzaworODc4MjMgMGIwYTJiNmMzYWQ5ODM1NzdiODQyNzJkZDViNmJjNDc4ZTk5YTY4YyBweTNrCis4NzgyNCAwOTMzYzM3NTNhNzEyYjlmOGFmMmQyM2U0MGFlMGRkYTFmOGFjMjU0IHB5M2sKKzg3ODI1IDE0MjcwZmU4NGRjNzcxZjlkZGY4Njc1ZGRhOWIwMDgzNjRkNDEwY2IgcHkzaworODc4MjYgM2VhMjgwOTk3MDAxZDQyM2FhNGE4ZjA0ZmRkODZjOTBlYTk0NGE4NyBweTNrCis4NzgyNyAzNzc4MTU5ODVjYWYwZDAzYzNlMzY4YjliNDkwM2E0YzNjZTA5YWU5IHB5M2sKKzg3ODI4IDVmOGViOWU3YWNkYzA2NWFlM2EwMDZlMTc5MWZlZWM3OTI2NTgzZDYgcHkzaworODc4MjkgMTIwNzRmM2FiODA5NWY5MWE0NzM2OGFiYWQ3MWQxZjZmYWZjNWExMiBweTNrCis4NzgzMCBkZjlhMDYxNjAwNGQ5MmU5N2Y4NzFhOGE5NWRlMzk3ZDBkOTBmNTlhIHB5M2sKKzg3ODMxIDEzM2RlZTgyYTAwOTYxNmUxYzBkY2NmYTVkYmE4ZjkyYjE3MzM4OTMgcHkzaworODc4MzIgM2U3NWNmM2Y2MzU1NTY3ZGRhODZmMGE2NjdmYTc3NzJhZDZlOThmZCBweTNrCis4NzgzMyA2NjU4N2U5MGZkZmI2MjdmODhhYjFhYzdhMjlmMzEwNGRhMmE4ZmQ0IHB5M2sKKzg3ODM0IGY1OTUwZGYwM2NlMjEwYzUwY2NkOTY1MWVhNGMwNjZjYmJkOTQ5MzIgcHkzaworODc4MzUgNmE1NzExOTY1NTcxYWIyMDZiNTQ5ZWY0ZjAwNjM2NjkwZDQ2MTcxNSBweTNrCis4NzgzNiA1NGZhNjIxNjU4NTMzNWIyM2FjNTRkYzNiZWZmYWRlYjY1YjQwZTQxIHJlbGVhc2UzMS1tYWludAorODc4MzcgMGRlMTkwNWE3NjFmODdhZDgyMzQ1YzY2ZjRhZTMyY2NiMzU3ZWY4OSByZWxlYXNlMjctbWFpbnQKKzg3ODM4IDA4MGEwZTk2YjQ4MmIxM2MwODg3Y2UyZWI2MjlhNzA3NzdhNDRkYjYgcHkzaworODc4MzkgYjBiNzljMzczNGFjZGZhZjlmZjQzZTc1ZmUzOWE5MDBlNmVkMjg3OSBweTNrCis4Nzg0MCBjYWQxODExZDllMTNlOWZlODE1ZDE0Nzg3OGVlYzMwNjA0N2ZhYzFlIHB5M2sKKzg3ODQxIDM5N2I5OWY1OTEyZTc2YjZjNTc1MTFmZjk4N2Q1MTkzOWJmNzMzZGUgcmVsZWFzZTMxLW1haW50Cis4Nzg0MiA2MzFlODMwMDE2YzBlNzRmNWQ5MzRhZDM1ZjA3ZmI0YTdjYjhiNTM1IHJlbGVhc2UyNy1tYWludAorODc4NDMgMzE0NjU5NjhhZTI2MzVjNjVmNzA3ZWU4MjVmZDFkMTQyYWQyMTY0ZCBweTNrCis4Nzg0NCBjNmI4YzViNTY0YThjNDQ4NjI2N2IyODliNTM5MmIzNTQxMjVkNzFkIHB5M2sKKzg3ODQ1IDg3NTdjZDY1OTI5MTk0YTRiNGM4MGFjMGNmM2QwOGY4NjY1OGZiYWYgcHkzaworODc4NDYgMjUzZDkxZTRmNjcyOTE0NDI1Njg5NmYwY2MwNjk2YzUxNWVjMjU0MCBweTNrCis4Nzg0NyAzYjc5ZWM4M2NlMjE2NjZmNGI1MDY1YTc3NWM4OTkxZDRlYWYzOWMwIHB5M2sKKzg3ODQ4IGU0ODA2MDQ3NjdjNGQzMTM3ODIyNzgyNjA5MjA1YmVjNDQxNTdkY2EgcHkzaworODc4NDkgMTU5NjdiN2YwNThmMWI3ODJhOWQwYjYxZmZhYjRhYjIxZWI5YTQ4YSBweTNrCis4Nzg1MCAwZTFmNGRmNDc4ZjY2OGE3NGRiMTdkZDViN2U1NWJmNzU1MGNjYTQ0IHB5M2sKKzg3ODUzIDY0OTJhNzEzODg3ZThkOTM1MGNkMDYzZThjNGRjYzM5MzFmNWEwMjQgcHkzaworODc4NTYgZGM5YTU2ZGRhNDI4N2Y3NzYwODY2NDMxZDJiMjFhNjk4NDIyMmFkNyBweTNrCis4Nzg1NyA5MGNiYTZhNjcyZjBlOWJkN2MzYjZhNTRiZjVjYjk5YzY2MjhmNmY5IHJlbGVhc2UzMS1tYWludAorODc4NTggZDY1NjZhNzBjYWEwYTg0YjRmMjE3YTJhN2U3ZjIwNDYzNzU2Nzg5NCBweTNrCis4Nzg1OSA4MjM5ZWM2ZjM5ZTYyNTUxMDg5N2U5MzdlOWRmZTU1ZGMwZmNmYmIzIHB5M2sKKzg3ODYwIGMwM2Y2NGM3MWIwNWFjZTBlY2JjNWQyZTc2N2ZlNmNiMjhmNTA5YzggcHkzaworODc4NjEgMDkzMjNjOTExMDlkMmZjZTFlNTcwNTUzODQwNDc2NWViZTU1ZTRkNiBweTNrCis4Nzg2MiBjNmQ0NTM0NTYyZjQwYTEyNzJkY2NjZTgxMWQzYTY1MjJhYjYwZTcyIHB5M2sKKzg3ODYzIGYxMmRhNTNiOGQ2ODMwNTY3ZWI1YmU3ODI5Y2RiOWNmZDE1NDdiYzIgcHkzaworODc4NjQgYWJlMjAxZGZkM2RjZTJmYjcxMTg4OWVjZGFkZDZkNjQzY2UzZWRhNCByZWxlYXNlMzEtbWFpbnQKKzg3ODY1IDA3NTk3NGE5MGMzMWIwYzdlZTA1ZTI2ZDgyNjUzZDU0NTgyNDEwOWIgcHkzaworODc4NjYgNGQxOTI3MDkxYjM5Zjc5ZmEwNGIwNTIzMGJiMjkwMmE5ZmE5ZmUyMSByZWxlYXNlMjctbWFpbnQKKzg3ODY3IGVhMGI5NGQ0NzU0ZDc1NWJlZmE0ODc1NmU4MGFjMjFjZDM2ZmJlM2YgcHkzaworODc4NjggMjA1MTdhYTNhMzU4OWFjNjA4OWE4ZjgxYWIxMGQxZTc1OTJkYjJiOSBweTNrCis4Nzg2OSA3MjYzYmQ5MGUxMTBkNDY2YTQ0ZDJjOGYxMmFhNzRkM2EwNDJjNTQzIHB5M2sKKzg3ODcwIDNlZDNjN2M2YjYwNWQ3ODA3MGUwYmExNTI5M2Q0MjQ3YzNlNTQxNzUgcHkzaworODc4NzEgMWY3MWM0M2FkN2UzMzhmZjMwZTVmNzNlMDkzYWZiOGJiZWNjNWU5MiBweTNrCis4Nzg3MiA2MTU3NzhiZTk4ZTk5NTI1ZTdkZmUyNzEyMGNkZTBmMjE1ODkzOTNkIHJlbGVhc2UyNy1tYWludAorODc4NzMgOGJiZmYxYzI0YTMxMmEwYmY3MzM4NDM4ZWI5NjdkM2JkNjJhMGIyNCBweTNrCis4Nzg3NCA5NjZiODdmMjM5NWNjOWM3MmI2OWYzZGE5NGExOWNmNTliMDdmZWU5IHJlbGVhc2UzMS1tYWludAorODc4NzUgYWRjN2UxNjcxZDhjMzk1YTJiODg4NTYzMGUyNDRhOGQ4ZTcxYzNmZiByZWxlYXNlMjctbWFpbnQKKzg3ODc2IDlmMTNkYzQzOWRjNTFjNjk1NWQyMmZiYWUyZWFhYzg0NTI3ZDhhMmEgcHkzaworODc4NzcgMTljMDUwNTFiZjFhMDJkMjBmOGQyMTBiZTYwNTUyNzlhZDQ5MDYwOCBweTNrCis4Nzg3OCA5YjJlNjBhZTRmZWY5N2RiMzBkNzM3MmZhMWM2ZWYyZTVhYWEzNjJlIHJlbGVhc2UyNy1tYWludAorODc4NzkgN2VjMjE2NTNhNGQxZTU3MmU2N2U4NWMzNDk0Zjk2ZGViZDdmNDlkZiByZWxlYXNlMjctbWFpbnQKKzg3ODgwIDk1MzAxYTQyODUyZjU0MjVlOWFlMTBkOWE4MWJjYWYxMTk0MTI4ZjMgcmVsZWFzZTI3LW1haW50Cis4Nzg4MSAyZTc0MzY5YjRmNDA2MGFjNjc3OWM2MjhmM2VjMGVjM2JjY2M4ZjFhIHJlbGVhc2UzMS1tYWludAorODc4ODIgMGM5NGM2ODFmYzUzMjBkYzI4MDg4MTMyMzQ4N2Q0NmI5YTBjNDFiOSByZWxlYXNlMjctbWFpbnQKKzg3ODgzIGU0ZDA3YTZmN2FiZmMxNjYxOWZhNTg5MzExY2NjYzlhYjVmZTZhOGYgcmVsZWFzZTI3LW1haW50Cis4Nzg4NCA1YWI5NjM2NGU3NjE5MDBkNDUzMmE3MWU3OGQ5NDJjNGRmOTBiYmI2IHJlbGVhc2UzMS1tYWludAorODc4ODUgZGU3NjJiMDFjMzY2NGI0OTQ3Y2EzODIzNWViOWI1NjFhMjA5OWUzYSByZWxlYXNlMzEtbWFpbnQKKzg3ODg2IDU4YTFiN2U4ZTc1MzIzNjlkMGZjNWY5OWViYzEzZjdmMWQ2NjNmMzQgcmVsZWFzZTI3LW1haW50Cis4Nzg4NyA1Zjc3OTA3YjAwNDFlN2UxMmE5MTRmZjliYmY1NmY1NDkzN2NiMTEzIHJlbGVhc2UzMS1tYWludAorODc4ODggNGFkNjE5NmYzMGE1YjIyMDhhZmE3NjkyZTg5N2QzMmU0YWI1NDBhNiByZWxlYXNlMjctbWFpbnQKKzg3ODg5IGUxYjgwZTM5ZTQwZjMwYzMyNzUwYTJiMjkxNzZmMDVmN2M1N2ZmNTIgcmVsZWFzZTI3LW1haW50Cis4Nzg5MCBiMzNiZjY2NGM0OGFhNDk1ZThlYjk3MjM3YmIyYjc2MjBlZGI0YTMxIHB5M2sKKzg3ODkxIDE1NzFjYzA3MmZjMmFlMzA4ZTc5OTkzNDc2ZDJiZGFmODRhYTE3NTUgcHkzaworODc4OTIgNjgxZDA1NDJiYmJkMDdlNjQyODllMzljNzA1MzczOWQwNmYzYmQwOCByZWxlYXNlMjctbWFpbnQKKzg3ODkzIGZmYjJjMjRiY2I2MjZkZDhlMTJlOGYzMzQ5YTA5YTI5OTFjOTM0MDQgcmVsZWFzZTMxLW1haW50Cis4Nzg5NCA0YmQyOTZjNDk1MjZmNjM1MDM1NjFiMjRiNzcyYzYxNDBjYjUzYzU4IHJlbGVhc2UyNy1tYWludAorODc4OTUgYTIyZDYxYmU0ODQyYjQwYzc0NTQ3OWYwOWRiYTNlOWRjOWU0MjBhOCBweTNrCis4Nzg5NiBmZTZmY2FmN2JiMTdkYTRmZjA1OTU0Y2FjNmI5N2YxNTczNTIzMzU1IHB5M2sKKzg3ODk3IGY4YzY4MzE4NGFmZmRiN2ZmZmJiY2I1YmZlNDE5MmQ1OTNjNDhmODkgcHkzaworODc4OTggOTc0YjI3YzlkODQ5ZGY0YzlkNWEyMzE2Njk4YmRmZmY0MDU4ODg4YSBweTNrCis4Nzg5OSAxYTM3ZjRiYTFmOTIwMTgzZmU4MjE2NzJhNDczZjE4M2E4N2QzZGQ3IHB5M2sKKzg3OTAwIGMyYzRhOTk0NDU5NmY0YzEzNmUwNDg3ZGQzZDNlZTNjZjg3M2ZiNzEgcHkzaworODc5MDEgYzRhNTI1MjZlNzdmYTY0MjE2ZGIzNGJjMDM3Y2I4NzdiOWIyMzQ2ZiBweTNrCis4NzkwMiBiNWE3OWI1Y2EyMDM3MmE2MDE3YjRhYWJhZjVmNzE0ZjkzY2FjNWZhIHB5M2sKKzg3OTAzIDNjMTJhYjllMjE0ZTllY2Q1MTQwZTIxMjI0MzdiMmI5ODI2NzUwYjQgcHkzaworODc5MDQgZWEzYWM2MmVmZTY3Y2Q0Y2RmN2ZhMjc1YzhiMGY0N2ZmMzRiNWMzNiBweTNrCis4NzkwNSBhMmIxNjFmMTc1MjUyZmRlN2QxNGZiY2ZlY2QxZTk3ZjAwNTFmODNlIHJlbGVhc2UzMS1tYWludAorODc5MDYgNTY3ZDk2MWJlMDgzYzU3NGVhNjM0ZDkxNWMwZDE5MWRiZWM4YjBlNCBweTNrCis4NzkwNyBlYzU4ODkwOTc1ZjFkMmYwY2JmYzlhYmZlYmYxNmRiZWIyMGNiZjY4IHB5M2sKKzg3OTA4IDk4NTVjOGNjY2IzNmMwZTA0YWQxOTU0ZDIwZTc3ZWE0OGM3YzA2ZmEgcHkzaworODc5MDkgZGI3YTMyZDkwY2Y0YTJkOTM1OGI3MGNmMzRlOWQ2Y2Q0ZmUzM2M4NCByZWxlYXNlMjctbWFpbnQKKzg3OTEwIDNlNmRlODg1MWYyMzEwMTY1Zjc5ZDFlYjM0MGJkMDVkNjIxMWQ5N2YgcHkzaworODc5MTEgMTQ1MDUyMWI5ZDkzZjRhYzBlNWVhYTYyZGYxMWNmZDhhMzEwN2ExMCBweTNrCis4NzkxMiBlMGE2NmFhMzQyN2E2OTY5YjNjYTgzMTFkMGJiODM3NWRkNGVhMjQ2IHB5M2sKKzg3OTEzIGU0N2Q4ZDk1NWJkNjEwODNkZjE5YzMxZGJiMzZiMjA2OTM4NDgwYzMgcmVsZWFzZTMxLW1haW50Cis4NzkxNCBhZTk5NGJkNDY2MTc4YzkyZTg5M2ZkNDQzNWZkMGFjM2FkNjhmZTliIHB5M2sKKzg3OTE1IDY1YWRkN2E0MGY3MDIyZjI5YzQ5MDViMzYwMWQxMjgyOWYyYjZiNDcgcHkzaworODc5MTYgZWRmMzAxYWYyNjE2MTNhZGQwYjczOWQzOTVjNzFiNjU1YWY4NjkxNyBweTNrCis4NzkxNyBhYzZjYzE0MDRlMTUwNTc0NDBlY2VhODA2YzdmYTAwN2Y5N2U1ODAwIHB5M2sKKzg3OTE4IDFjNjVhYjQ0ZDM2NzFiM2Q0OGZjYTQxYjYyN2ExNTQ1ZTE3MGJhMTQgcmVsZWFzZTI3LW1haW50Cis4NzkxOSBkNzA1MjJjYzlkNGZlN2E2NDJlMWQ1NzNmMTk3YmQ3MGMwMWMxNGMzIHB5M2sKKzg3OTIwIGFkMGViNTdlYjJiNWI4NzZkOTdhMDczNTFlNTlkMmE4YmYxMTE5Y2QgcHkzaworODc5MjEgYzBmM2FjMTkzOTJiNjE5MzQzOGY4ZmVmY2M0MTViZTA1OGMxMDYyNyBweTNrCis4NzkyMiBiMTZiMGQ3NTRmYzkzYTU3ZWFjNmQ5MTAxNmYwZThmZWI4NmNkMTI2IHB5M2sKKzg3OTI0IGQ1NzM5NzEzMTEyNDJhZTg4MmJjMGFiOWUwNTk1NjA4NDY3ZTJiM2QgcHkzaworODc5MjUgZGI4ZDE1OTMzMTIxYzI3ZmI2MGVmN2Q5ZmE0YjQxYzI4MmU5ZjIwOSBweTNrCis4NzkyNiA3OGZmMDhjY2QxOGI3ZmRiYTlkMWZjOTFlYjQ0NGUyNTA3ZGYwM2Y0IHB5M2sKKzg3OTI3IDc1MTM3MmI3OWVkNjkyNWE3NzE0YzQ1NWQyZjY3YjM1YmQyMzFiNzcgcmVsZWFzZTMxLW1haW50Cis4NzkyOCAyMDk2OTgyMWJiNjE0YTNhYjk3NjI1MmRlMzA3OTI4MjcyOThkMjk1IHJlbGVhc2UyNy1tYWludAorODc5MjkgN2I1MTU5NGExNWRlZDE1OGQ0YmIyNzQzODVlZWJjMmM5ZjM2ZTg2ZSBweTNrLWNkZWNpbWFsCis4NzkzMCBlZDZkMDUzZWViYTVlYjY3MmU4ODlkYzg4OTUzYTM2YzgxMGEyNDg1IHB5M2stY2RlY2ltYWwKKzg3OTMxIDlmYTA3ZTdjZGYzODYyYWY1MDdmMzM5NWZlZWI1YTMwMjI0YzFiMGUgcHkzay1jZGVjaW1hbAorODc5MzIgNGI0NjljODdkN2UyZWE4MTMzNTIyNDM5ZmUxMWI5MjQ3OGMzODQ3MiBweTNrLWNkZWNpbWFsCis4NzkzMyA4MzA5NTJhNzFkMjE3N2Q4MWE0YWRlZmEzM2I2NmM3OWZiNDU5NDFkIHB5M2stY2RlY2ltYWwKKzg3OTM0IDA0OGFkMDcxN2E0NTIyOWFmMzBiNzhiYzk3ZGE0YTA4NGI5NzMzYWQgcmVsZWFzZTMxLW1haW50Cis4NzkzNSBmODI3ZjcwM2VmNjVjMGU0MDNjMmVhOGNkNTg5ZDIyZDdkMzZhZTJlIHJlbGVhc2UyNy1tYWludAorODc5MzYgYTNjMzc5NThhMjA5NDhkYzU4YTFkMjBlMzc5NDcxZWY1NGMzNDRiNSBweTNrLWNkZWNpbWFsCis4NzkzNyA3MDdmODkyN2Q2NjMwNjBiN2MyZWM3ZDZhMTJlMjJjZmEyOTIxNjdmIHB5M2stY2RlY2ltYWwKKzg3OTM4IDIyNDRhYzZjMmE5YmZiZmQzZmM2ZDMxOGU0MzA2ZTUzMTZmYTVkOGMgcHkzaworODc5MzkgNTRjODY0NDQ1M2Y5MTM0ZGMxYjg1ZGVjNWYyYTcwZTFkMzk1NGYwOCBweTNrCis4Nzk0MCBjMGI5NWNkYWY0NjBhMmE4MjMzZmFhZmY5MDc4NjQwZjI4ZTI4ZmZmIHB5M2sKKzg3OTQxIGNiNzU0YTU4MmIzNDBjNTkwMTljNGQ0MzA0MzA3ODJlN2VhZTdlZWIgcHkzaworODc5NDIgMjU4MWExN2IyOWFmMDMzMTkyMjViMDNiODdiMDA0M2IxZGViZTA0YiBweTNrCis4Nzk0MyBkZjM0YmIwODY5YmM4NTJkNGI0ZmQwN2NlMjY3YjFjYTc3MDQ0NTMxIHB5M2sKKzg3OTQ0IGVjOTZiNWI1NzIzYmNmNDMyNjc1MDEyNDVjNDdjOThiZTljZjc0MTkgcmVsZWFzZTI3LW1haW50Cis4Nzk0NSAxYjFhNjQyOTcxNDk3YWQwY2U1ODBkNjcxYWY4MzE3N2ZjNjI5ZmNhIHJlbGVhc2UyNy1tYWludAorODc5NDYgN2YwZDBjOWEyZDcyOTM5OWMyZjI4Y2MzOTAyOGNjNTI5MGZjYWQ2NiBweTNrCis4Nzk0NyAyNjljZjQ2YzA5YWY1YjgzMzdiOTAyMTdiMjI2OTAyNDY0YWIyOWI0IHB5M2sKKzg3OTQ4IGZlZjUyMWY0NWFmM2E5MGE2OGI2NzQwOTcxNTMzZDUxYTc4MzdkZDEgcHkzaworODc5NDkgNDliMGIyYmMwZTgzMzFiZGY5ZTQyMGJkYWYzMmY4MWJkZjFiNmQ4ZiBweTNrCis4Nzk1MCA0MzUwNzIxZGVlNTUzZjNjYzYxNWZmYjQ2NDNlNzJkMjExYzIwYWU1IHJlbGVhc2UyNy1tYWludAorODc5NTEgNjAwOTM4OGNhNWEyM2ZmY2FiNzYyMTViZjNmOWJhMWM5OGEyMWMxMSByZWxlYXNlMzEtbWFpbnQKKzg3OTUyIDc0YmY5M2JlNTY3MTAyZDExOGY0MzQyODMzNGZjYTk1ZTMxNDdhMmUgcHkzaworODc5NTMgNjAxYmNiNmZmNzUyZDc1YzcwMmYxYmNlYjI0ODBkMTcwM2I2YTdmMSBweTNrCis4Nzk1NCAyMzZlMTFiYTE4YzU3Mzk2ZDU3MmU0YjgyZTRhNTcxZWY4ZjkzNmYzIHB5M2sKKzg3OTU1IDJlYTFjZmRmOTI5YmVlMDkzODZlNTYzYzBjMjQxMTQwNDA3MDU2ZjAgcmVsZWFzZTMxLW1haW50Cis4Nzk1NiBkZGFhMTdjMDk4ZDkzZGVkYzY3Y2I3NmFmNjA3ZjgyMzU1OTQxYWUzIHJlbGVhc2UyNy1tYWludAorODc5NTcgOTE0NDY4MTdjYzNlOGU3M2ZjZTQwYTc5M2Q3NTBkYzI2MGU1MDhmYiBweTNrCis4Nzk1OCBhNTAyMTQ5NjZkMjQ4MmVhNmVlYWUyN2Y2ZWNiMmEwNzRiMTZjMGY3IHB5M2sKKzg3OTU5IDc3ZmUzZjE2MDg3YWY5ZjFjNzM1ZTYxYThhZWQxMDE0ZGU2ZGVhM2YgcmVsZWFzZTMxLW1haW50Cis4Nzk2MCBhZWNjYmQxNjk3MGY4ZjY1YTIyZjZhNTdlZjA5OGVlMzBlOGQ5NDJjIHB5M2sKKzg3OTYxIGUxNTI2MGE0NGU0NDc4ZmE0NmRmNzBjMmVjNzkyMGIwM2RhYTNhZmYgcmVsZWFzZTI3LW1haW50Cis4Nzk2MiA1MDQ4YjI3MjAwZDc0YTEwNzVjZmU1Y2JlM2UwNzVlNTJlZWVhZWEwIHJlbGVhc2UyNy1tYWludAorODc5NjMgNmNjNTI3N2Y1ZTdhYTMzMzUyMWVjNzQ1NmZlMTViM2U2YWVmN2FmMCByZWxlYXNlMzEtbWFpbnQKKzg3OTY0IGFjMGViNWRmMmMwNWJlYzE4ZTNhOTc3YzJjOWMyMDhhNThhYzZkMDkgcmVsZWFzZTI3LW1haW50Cis4Nzk2NSBkMTIwMjE4ZDgwYWI0M2I0YzdlZTkyYTI1YmFhZjNmZWJkM2YyMWQ3IHJlbGVhc2UzMS1tYWludAorODc5NjYgM2VlYWVjZjAwNWMxNGQzOGM0ZjdkMjA1YTM1OWRiMWVmNjljNDMyYyBweTNrCis4Nzk2NyA2ZGNkNDkxNTA2ZWQ1MDUzMzE4ODQ3MmE1OTU5YjNkODJiN2UxNDJjIHJlbGVhc2UzMS1tYWludAorODc5NjggYjliNTUxZWQwODU4ZDJiN2RiMTQzM2IwMzFlODE1ZDQ0MjEyNzAyOCBweTNrCis4Nzk2OSA0NWEzOTFjZGM2OGFjMjhkY2QzZDRhYmY4YTJhMGYyMzY5ZmEzZjFhIHB5M2sKKzg3OTcwIDRhYmZiNzY3MGVhZGRhOTA3YmQ2MWUyMmUxNTIxOTcwMjMzNjIxZjggcmVsZWFzZTMxLW1haW50Cis4Nzk3MSA0MWJkYzAzMmU3MWFjZDdmNDQ1NTU0YTUxMWVhYTlmNWNiMDY2MDZmIHB5M2sKKzg3OTcyIGUxY2MzNTcyODQ4MWVlZGQ0Yjc1M2U2MGFiNzFhZjAyZTczOTA5ZTkgcHkzaworODc5NzMgNGU4NmQ2OTViYTk4YTU4MjI5ZGU0ODJlMzUyZDBiNjgzZjk2ZTFhMiBweTNrCis4Nzk3NCBjNjY5YTY5NzZiZjhjZjJiN2E3NDczNjEwNWU1NTJlYjRhYjAyNWVmIHB5M2sKKzg3OTc1IGNjYmQ2NTg3ZjhlZDVjODcyMmQwNDcyMjViYTNjMDFlMTY3MGJkYmYgcHkzaworODc5NzggZjkxNmMyYWEyMzhmZThhMjBjZTY1OGEyYjlmYWEwODVhZDAzNDY5YyBweTNrCis4Nzk3OSBlZmRmMjU2MTdiN2NkNDI3ZWE0N2I4OTRiZWMzYjhhYzJhZTllNTQ5IHJlbGVhc2UzMS1tYWludAorODc5ODAgZTEyNWQ5MmY3NDM4ZTEyZmZmOGYzY2QzZGM2NTk4YzczYzE4MDUwMSBweTNrCis4Nzk4MSA4NzE5ZGQ3MTIzODRkYjU5NjlhNTI5M2VkMmE0ZGMxOTczZTQzZmNjIHB5M2sKKzg3OTgyIDEwZDY3ZGI2Nzk0MjBmNGU3NTM3OTVjYjQyNjE5NWE0NmRlZDBmYmMgcHkzaworODc5ODMgY2JkYzhiMWU2YmQzOWNhMWM1YTliNGMwYzc5NjkxNjNjMDNiYjdlZiBweTNrCis4Nzk4NCA0ZWFlMzNmMzc5N2M1ZDFjZDIyZTY5ZDQ5ODQxZmViN2NmZTg3NzM5IHB5M2sKKzg3OTg1IDI1ZDUzZTQ0OTdkODUyN2Q4OWUyNjAwYjdkODVkNzlmMGQ5YTEzZWUgcmVsZWFzZTI3LW1haW50Cis4Nzk4NiAyZjA4OTRjMDJiZjJiODhjYTAyMmYxOWEzZTkyZGNlOGVmODJiODA3IHB5M2sKKzg3OTg4IDdjYmI1ZjNiNjk1NGI5YWMyZjI1YjI5OGE1MWE2YjAwNGI2NGZhNWYgcHkzaworODc5ODkgN2Q2NThiNDliM2UxNGU5YjE2M2VjMmIzYmMxNmQ5NDkxZDE0NTAxMCBweTNrCis4Nzk5MCAzYWM5YjdjZjc2MTRjZGUwMmY1YWRhMDUzNDViMzAzYjg1NmFiNzcwIHB5M2sKKzg3OTkxIDYwOGYzYTYxNThhOGM4MTMzNzg5MDc1MzIxNjFlYjE1NTU4MTlhOGIgcHkzaworODc5OTIgNDc0YjJjZTA3OTRmZmFmZmNhZTRlMzZkYzUxZmQ5NTFmNDU1YTFiNyByZWxlYXNlMjctbWFpbnQKKzg3OTkzIDAzNTNiMTYxM2FhODE0YmM2YzkzZTI0NDllMjIzNDliZTEyODhhNDAgcHkzaworODc5OTQgZjE5ODI0YWFiMzljODBiZDQ2Y2VjY2Y5ODliYTE2MDNjZmE4YzYxZCByZWxlYXNlMzEtbWFpbnQKKzg3OTk1IDI0NGEyNzQ3NzM5NmQ0YTI5ODA0YTRiZmJhYWUxMDY4YzM3MmY5YjEgcmVsZWFzZTMxLW1haW50Cis4Nzk5NiBmNmU5YWM0Yjg4MTM2YjM4ZDk0N2MxZTYwMTVmZmEyOTFhZjE2YWVhIHB5M2sKKzg3OTk3IDdmODg4OGI0ZmRmY2FmZTlhM2QwMGU4MjIxOWE2NWM5ZTFmZTczN2MgcHkzaworODc5OTggZDg2NDMyOGE3NGU0MTQyYWEyODZmODIyYzRiODI3ZDFiNzBjZDkzMCBweTNrCis4Nzk5OSA5NmZmZTRhMzExZGQ0ZDVmMDU0OGMzYmQwNWQ0ZTMzYmVlNGNmMzZlIHB5M2sKKzg4MDAwIDM1OTNiMGQ5Y2FhNzRjOTA0OGIwOWQ4NGUwMTlkNDE3NWYwMGMwMjYgcHkzaworODgwMDEgZmViZTA0YTZkNDg2NGRkODhhODgyZjE3ZjMzZjAxMDJiNDdmOTYyMyBweTNrCis4ODAwMiA0NDMwZTRkNjM1OTQ3YTJhMTRiZDU4YjM2NDQ0MjI1ODgxYTViMjE4IHJlbGVhc2UzMS1tYWludAorODgwMDMgMThhYjhlMGU2NzAyNWJjMzM5YmI0MmRkYmYzYmUwNDg5MzIyMjlhNiBweTNrCis4ODAwNCAyYWZjZGY2OGEzODkxZjc5NTJiYTFjOGUzMzMzNGQzNzliNjQ1MDFlIHB5M2sKKzg4MDA1IGIwNGRhNTQ0ZTEzYmJmNTQzZDdmY2RmMmZjYjQ0MDA1NmQ2ODM2MTkgcHkzaworODgwMDYgNDg0NTQ3NjVkOGUwY2U2NTUwYTA0YzRkNTNhYjM3YTI4YTk3Yzg2OCBweTNrCis4ODAwNyA5MTFkMGE3NDYwOWUyMTgwMjBkM2RmZTJlZDBhMTg0YzA1MGM1NTA4IHB5M2sKKzg4MDA4IDdiMmQ3Y2VkYWZiMGExMTYyZjBkMjViZmM4ZmI2MGNkZjU3MGMzZTUgcHkzaworODgwMDkgMGI0Yzk5NTI5OWRkY2VkZDE1MjdhMmNlY2UyYjkwN2EyNmVmYjEyNiBweTNrCis4ODAxMCA0ZGM1NTAzNzMxZmVhMTc2N2NkNmNhZThlZDlhOGMwZjNhZTM5ZGU0IHJlbGVhc2UzMS1tYWludAorODgwMTEgMjkzMDM5M2YwYmJiOTFkYTVjNGU2MDQ1NWE1ZTZkYWU0MWI4M2FhMSBweTNrCis4ODAxMiBhZTA5OTQ1ODMzNDUxYmI4Y2I1YzczMTllZjFhZTc5ZjkyZjJlOTk4IHB5M2sKKzg4MDEzIGMwYzU5NGFlZjg0MjM1ZTcwMGEyZjMyYWM2ZjQ5MjlkYmJiYzQzYTEgcHkzaworODgwMTQgMzk2OWE2Y2ExNmFmMjkxNzZjNDg2NTI4M2I4NmYyZTA4ZGU1ZDI5ZCBweTNrCis4ODAxNSAzZjk5YzM2ZDAwYjhhZDVmMjdjNTY5ZWMwMTg2NzJjMTYyNzU3MTVmIHB5M2sKKzg4MDE2IDkzYjdjMDU4MGM0MzQ2OWJmYmExN2NmNTExODg0NWQ4YzE0YTM0MmUgcHkzaworODgwMTcgZjEzMGJlMDFkMjMwMGQ5OTQzMmYzYmFlY2NlZjFmNGJhZjc5MTIzMCBweTNrCis4ODAxOCBiZWVhYjBmYTQxZTVlYWZmNjk2YWFlNTlmMjMyYzZiNDdlMDAzNzJjIHB5M2sKKzg4MDE5IGIwMzc0N2FkYTQ0ZDZhODAyNTEzNjEyYTJhNDk5MDdlMmI3Mzc2MTQgcmVsZWFzZTMxLW1haW50Cis4ODAyMCBlZjA3NzdhZjk5NzhlZTJiMjdmNDRiOTg5ZjZhY2ZlZjZmNGMwNWIyIHJlbGVhc2UyNy1tYWludAorODgwMjEgYjhmOTdkOGNkNDg1ZjI3YWQzNWMzM2RiZGE4NGFkMDRmMjBlYjAyMiBweTNrCis4ODAyMiAzYzMxNjIzNmVhYmQyYWVkNzdkYjU5ZGQwNmY5NzQ4ZGU5MjE2NGE0IHB5M2sKKzg4MDIzIDQxZDg3NGVjYmQ4MWZiNDY2MTdmNzhkYjAxNWE1NGUwZmZlODc5YWUgcmVsZWFzZTMxLW1haW50Cis4ODAyNCA3YWNiODM5ZjM2MTMyZWI0OGFjNmU4MGYwNjVhZTM3Y2E5N2JiN2ViIHJlbGVhc2UyNy1tYWludAorODgwMjYgOGRkY2FlMmI2NGI0NzFmZDNlZWE3MDI0OWMyMmFmNzM0MmQyMmUxYSBweTNrCis4ODAyOCA0YTIwZTNjYTI1ZTlhZDc4MTQzNGNmODFmNWFjMzRmNDYwODU4ZGYzIHB5M2sKKzg4MDMyIDkwNzZlNDIyMGZhNGYwZDM3MGU3MDc0ZWUyMDI3YmJlMDFkZWY5NTkgcHkzaworODgwMzMgZTg0ZDVlZmE2ZDc1NGIxM2U0NjdkYzliODQwODY4ODVmM2MyYWU4NSBweTNrCis4ODAzNSBhYjlkYzQyNTQ3YzA5OGUzNDc4NjRmNmEyMDViNGE1OTY2ZGJkZTExIHB5M2sKKzg4MDM2IDg2NWQ1YjI0YmYyOGNhNDFiNTM2YmVmYzMyNjQwN2MwM2U3NGE0ZDUgcHkzaworODgwMzcgZmUxMDIzYWY2YjU5NjlkNGM1MTRjNDJlOTFlY2ZjZWZjMTJiZTZhYSByZWxlYXNlMzEtbWFpbnQKKzg4MDM4IGFkYTcwMmMwNGQxNGMzNzRiZWY2MWY2MmYxZGJiZDU2NDEwZGM2OGEgcmVsZWFzZTI3LW1haW50Cis4ODAzOSA0MmVmYzExYWI3ODJkMGQxZDAyYzU4Zjg3YzYyZDE1OWM3YmU5OTlhIHB5M2sKKzg4MDQwIDg1NjVlNzIzYjRhMGVhM2RhYTE0YjUzNWVhMjQ1YWU3NDFjY2ZjZGYgcHkzaworODgwNDEgZmMxZDE1OTE3ODk1NWZjMjE5NmIxZDgyOTQ4YWI4ZGIxNDk0ZDNjYyBweTNrCis4ODA0MiBiMTEwNGI0MjUxMzRjNmU5ZGQxNjM4YmE0YmRjNDZjYzY4YzA2NTFhIHB5M2sKKzg4MDQzIDlmMjgyY2ZhODlhMjE4NmE1ZTk2YjNmMzVlNTMzNzk3NTc4ZjFmNjAgcHkzaworODgwNDQgYjdhOTdmMTFiNDFiMzc2ZDk0MWFiNDRkMzNiMWJmNDhhNGNhMDJmNSBweTNrCis4ODA0NiBjOTFkZTMyNjgzNWU5NzhmZDk1ZmU5ZTU2MGJkMDU2OTUzNTM2NWJlIHJlbGVhc2UyNy1tYWludAorODgwNDcgMWY2ZTA0NWU4YTY5YmFiNWM1NWNmNmUyZThiZGJmNjZiNzdhMDMyYiBweTNrCis4ODA0OCBkNjcwNDgyYTU4MjExNzVmOWNmOTExNzIzZGQwNTQzNWIxZDIxMzQ4IHB5M2sKKzg4MDQ5IDQ1ZGE4MzMyNzYzNWZkYmNkNWM0ODQ1M2ExMjhiY2IxNTFhZGYwZTMgcHkzaworODgwNTAgMmNmNjdjNmFhNmVlNjhmMGFiZTgwN2E2NTNkMjFkZWFkMGVmMWQxZiBweTNrCis4ODA1MSAzODQ3MzdhNzQwODBlM2UxNzRiNWU4NWM4ZmI2NTBkNTY1N2E3NjI1IHB5M2sKKzg4MDUyIDQ3MjRiOTRjNTc0NTY4YjYyMzhiZDc1MDUzMWExMjk4YmQ2OGI0ZDggcHkzaworODgwNTMgMzY4ZTkxMDMxODgwMjAwYjA4NGYzZjYxNmQ4ZjFlMmNiZGZmYzYyYiBweTNrCis4ODA1NCBhZWVmYTIyMWJiZTY1MjgwNWYwZjUyZjg0NjE0M2ZhYTM5MTk1MDNiIHB5M2sKKzg4MDU1IDY5MWJjMmMyZmMyMmQ1NWVjZGQ1NWYyYTA0YWM2YmViNmFkYmU2N2QgcHkzaworODgwNTYgNTI1YWVhYTNkNTNmMjlmZTUwYTQ5NjVkNzg3MmYxN2ZkMmM2N2FmZSBweTNrCis4ODA1NyBmYWVjMWI1YTk2ZGI3NDRkNzZiOTliMWUxMmM4NTZkMGE3NmY4MDVmIHB5M2sKKzg4MDU4IDM2OTEwODUxYTcxNWNmYjVmNTU0ZWUzMjI0NjBkNzEzZmE0YWY3MDAgcHkzaworODgwNjIgN2IzMWJlYjg4Y2RiMmYxOTY4MzA0ZTAyOGNkNDg5YzBjZGZhZWNjMyByZWxlYXNlMzEtbWFpbnQKKzg4MDYzIDM2NzRkY2I0MWE5NGYzMGMwNzBlOWVmY2RhYWI5NTk4OWRmZDcwMGMgcHkzaworODgwNjQgZGQ4N2IwZWZjZGQ4MzRhMmU1YmM0NTkxMDQxYWY2MjQ3NTE2MWNhZCByZWxlYXNlMjctbWFpbnQKKzg4MDY1IGM1OWNlYTIxODU0NzY3MzVkMGI3ZGVjNzM1YTk5YjgxZjU5NWYwZmMgcmVsZWFzZTMxLW1haW50Cis4ODA2NiBkZjhiNmEyYmRkZGQ3MmY4ZDQwYTgyNjQzMDExMWE5YTZlYWFhZGQzIHB5M2sKKzg4MDY3IDgxMWI0ZmI4ZjBjYzY5MjAxYTRiMTc5ZDBjZjI3MWI4YjBhYzVkNDMgcmVsZWFzZTMxLW1haW50Cis4ODA2OCAxZjZkMTQxOGNjMTgzMTY3YmJkYWY2YmMwYjZhMGM1ZmU4MGI5Yjc2IHJlbGVhc2UyNy1tYWludAorODgwNjkgYTc4YzZkMGMzZjY5Y2Q5Zjc2M2IyMTdhMGMzMzMzNGVkMTQ3Y2MzMCBweTNrCis4ODA3MCA2ZThlMGZlMTgyMDVmMDBhMjUyNjllMWI4NzI4MmQ5ZTM3MjY3ZGZkIHJlbGVhc2UyNy1tYWludAorODgwNzEgYjk0OGRiZDFmYWMxYjRiN2M2YjQxMWMxYWZjNjExYTVjNjhhMjhjZCByZWxlYXNlMzEtbWFpbnQKKzg4MDcyIGNhY2MzNWExZTBjM2QxNTlkZTgzMTQ5NDljNmQ0N2Y0ZmY3YjgwYjAgcHkzaworODgwNzMgZDM1YTI0YTk0NzE3OGQ0OTNlNDM3Y2FhZDJjYTA2MTUwNTdlMTJiNSBweTNrCis4ODA3NCA0ZDI3NWM1ODIxNGIzMTMyOTFkMjlkYTNhOGI1MmNjNDQxZmZlN2RhIHB5M2sKKzg4MDc1IGVkZTI2MGE1M2ZiNTBhODdhOWZmNGUyY2IyNzNhZDhiZDkwNTU1NDYgcHkzaworODgwNzYgMjk1ZmY1NWEyNjVlN2I4NzE0ZmIxMDUwZDM3NjkzY2Y5ODE0ZTU2ZiBweTNrCis4ODA3NyA5YTAwZGUyNTBlMWU0OTgyYzJjZDIxMjAwMjE2YzkzMmFjMmU4NWNlIHB5M2sKKzg4MDc4IDg5NjI4ZjNlY2RjYmI3YjlhZmQxMzQwZDVlNzdlZjAwMzE5ZjljNDQgcHkzaworODgwNzkgNDE1MTczZjg3ZjQ1ZDgyMWRjMTMyOTk5MGM0ZTI4NWE2NTIxODZmMiBweTNrCis4ODA4MCA2ZTY4MjY1Mzg5NzQzYjEzZWJkNWFhM2IzYTliMDkzYzM4NGM3ZDc0IHB5M2sKKzg4MDgxIGZkOGU4MGZjMmQ5NDM2NGVkNGU5NDI2MjdkNDI1M2RmOTgwMmY2NjUgcmVsZWFzZTMxLW1haW50Cis4ODA4MiA2MTAxNjI5ODEwZTAwZGQyNTE2MzczZGNjZWFiMDg4NzczM2VhOWFkIHJlbGVhc2UyNy1tYWludAorODgwODMgOTllYWI1ZWRmOTlkZWM3MmZjN2QwMzk3NjAyN2RjNTgzYjJkNjI0YSBweTNrCis4ODA4NCA1N2JkMGQ4NjRjYjAzN2ExNDdjYzFlMTBmZDQ3NzRlMGU3NGJlNGQ5IHB5M2sKKzg4MDg1IGY1YTNiNjM5N2E1MzhkODEwMjI5YzM2YzRmOTE0NDA5MmNkYmYwMGEgcHkzaworODgwODggZWQ4ZjA1OGRjNjRiMDc1Y2Y1NmUyNzk2ODMwMjE2ZjU0ZGFhMjUzYiByZWxlYXNlMzEtbWFpbnQKKzg4MDg5IDUyZTgwMjkxNGNmODk2MjBjOGVhNzg2NjYyMjMyYzRkNDRkZDFhYzMgcmVsZWFzZTI3LW1haW50Cis4ODA5MCAyZDQyZjY0YjI4ZmRlZjIxY2I4YTU5OTMxMGM2NDU5YzRhNGUyZmJmIHJlbGVhc2UyNy1tYWludAorODgwOTEgMzRkNDg4NDhkNDFiYzgxMWIzNjIyZmNjYWZkMmQxZjdiZmM3Y2JiNyByZWxlYXNlMzEtbWFpbnQKKzg4MDkyIGY0NDFjNmUzYTc2OTEyOWMxMTgwNGM3ZWU4MzQ3ZWZhMjU3NTUyMzAgcHkzaworODgwOTMgNGUwYmNlYzgwOWRkODA5NGI5OWYxZjUxNzI3ZDAwZDQyNzZhNmVhMCBweTNrCis4ODA5NCA3NjFlOWFkMTY1ZWYxZmMxOWJkM2Y1ZWMzZmQ0ZTI4ODBiMWUzZjdkIHB5M2sKKzg4MDk3IGZjNWQwMmFlNTJkZDZiZDgyNzUyMDNkNTcyZmY1NDg1MDZmNzUzOTUgcHkzaworODgwOTggMmZkZTVhYmZiNWYxYjdmYmEwZjE3OWRjMzJkMzg0MzIyNTY2Y2MwYSByZWxlYXNlMzEtbWFpbnQKKzg4MDk5IGVhYzU0NTdmZjE5NWIwOGVmNzU0NDA5OWIzMWM1NGMzYjIzM2VkNmYgcmVsZWFzZTI3LW1haW50Cis4ODEwMCA0OTZlYTUwMjhjMDFhYzVkNzI4MjE3NTM0MTFmZDcwNDM1YmMzYjY5IHB5M2sKKzg4MTAxIDM4MjRiZWYzNzZjYzdmZWFjZjMwODgwOWQ0MmQ3ODg0MTgyYjcxYTcgcHkzaworODgxMDIgMTA5YWYwMzlmNDRmMGQ1OTY2MjcyYWE1NmQzMWExMDYxY2QzYjg3NCBweTNrCis4ODEwMyBjYzg5NzU3MjRmOWE4YmY0OGE1YjNlZTQyMmEwNjk0Mjk1ZDQwNzE2IHB5M2sKKzg4MTA0IGQ3MDU4Zjc0YmQwNGI0ZmE2ZmQ1YThmNmQ3Y2MzZDllNDc3ZjYzNzkgcHkzaworODgxMDUgNDFjNTFmNWNmNWQ5OTQ4MDA2MmQ1MDA3MDIxNzgwMGJlMDgxNjhiYiBweTNrCis4ODEwNiBhN2FhODM3M2I1ZmNiNTIwNGE3MWY4OTZiOGQxYTExMmIwNTEwOWVmIHB5M2sKKzg4MTA3IDNjMWM4ZDQyNjk2NjMwMWFiZWVlMzg3MTdmOTJkMTVkN2Y4ZTUyZGUgcHkzaworODgxMDggOTkxNDcwYmUwMzQwYmUwYzZiYWRkNmYwMmZjMDIyNGU5YzZiMmE1MiBweTNrCis4ODEwOSBkZTkyNTM2MWViYTUxMTY3NjlkY2UzNWUxNmYyYWY5NGRiZTBiYWM0IHB5M2sKKzg4MTExIDkxYWJlODU1MDcyYTM2NmQyZDg4MThjMDUwMjg3NzMzNmQ2ZGQzYzMgcHkzaworODgxMTIgMDdlMWViMjQ0ZGY4OGIzNjgwMGYyYmE2ODdhMjgyMmU2NzNjNjQ4MiByZWxlYXNlMzEtbWFpbnQKKzg4MTEzIDAyZWMxOTk3ZDc1ZTg3Y2M1Yjk4ZjM4YjE0ZGE2ODc3ZTMzMjBmOWQgcmVsZWFzZTI3LW1haW50Cis4ODExNCBjMzU0MDBjMzYzMDRlODk3YTg0MGU0OGIyMjlmMzVjNzNhZmM1YTM4IHB5M2sKKzg4MTE1IGE5MjVlYTRlMTA1ZjgxNGZmYWZjOWZkOWYzMTRiOTFmYmYzNzRkZTMgcHkzaworODgxMTYgYjg4MGM4MjI3YzAyNzJjMmQyMTljMWI3NjlmYTQwMzExYWE4MWUyMCByZWxlYXNlMjctbWFpbnQKKzg4MTE3IDIzM2NjNzQwMjc0YjcxMjZiNDdmYWU3ODk1YjQ0YTAyNGY1NGIzYWUgcHkzaworODgxMTggZTRlNGJmYzA5ZTE4ZGIzY2ZjYzQ5YTViMGIyOTZlYjkwNGM3ZjBlYiBweTNrCis4ODExOSA2YjhiNmU1YWVjMGE1ZjQ0OGQ2ODUxYTRiY2Q5M2QxMDkyNWQ0NDgyIHB5M2sKKzg4MTIwIDdmN2MyYWFiODYxYzExYTg0MGY0NGJhNDFmMzY4ZGZmMDI5NDhhNWYgcHkzaworODgxMjEgZGE0NGJiMGNkNGU5OTJkODc2ODE5ZmY3N2EyZTFkMjNkNGYwYzYyNSBweTNrCis4ODEyMiBmYmViZjBmMDYwNTc5ODA5YjNmYjIzZTExZjg2Yjc2MTdiZDkxZWU3IHB5M2sKKzg4MTI1IDNiM2M1MzYzMDYzN2E1YTNiNzQ4ZGFhMjFhOWJiZTlmNTBiMmUyYWQgcHkzaworODgxMjYgYWVmNDgyNDIwZTk2Y2NiYTM4ZmU4MDcyOWRiNGU4ZmI4YTZhMzkxNiBweTNrCis4ODEyNyBjZTQwNzU0YTg0MmEzZGI1MWMxYzYyNDg1MDE3Mjg0ZTEyNTNkNDdkIHB5M2sKKzg4MTI4IDNkMzNmNDFlODE4ZGJmMWNlNmFjOGQwMWYwYWI2YzlmYjg1YTI3YjIgcHkzaworODgxMjkgOTNlOThkNDBmMmE1YTU0OTlkMTJkMjMyZDBiNTQwYjM1OGRkZWU0YiBweTNrCis4ODEzMCA1ZTcwZWVlODZjNjEzMGIxYmQyMTc2YTUzMDI4YjA2ODdjMWJlN2VmIHB5M2sKKzg4MTMxIGM4Mzk2ZDI3ZjU2ZThkNjU5ZWQ5MjgzNGY0M2U4NTMyNjZjYWUyZjMgcHkzaworODgxMzIgZjM2NTM4YmE5MGE4ZmEzMGEwZWM4MTkzOWY5ODg2MzI0OWFhNDg4MiByZWxlYXNlMzEtbWFpbnQKKzg4MTMzIGRmOTFhMDE4ZGUzYWI1MDU4Y2NhMDYxM2U2ZTNhMzIyNjVlYTZmYWMgcmVsZWFzZTI3LW1haW50Cis4ODEzNCBmYjY2OGFhYTJmYTRmMGQ3NWNhOGE4ODU1YjVmODBhOGY4ODVhNTg5IHB5M2sKKzg4MTM1IGU0ZTMyYzRmZjYyNjI3YTNlNWMwYjY0MTZkOTIzYmIwZTk0NWVkODYgcHkzaworODgxMzYgY2MyMTYyNzA4YmY2MmI1YmY3NWFjMTQwMGFhYTZhNzFhMDE4ZTk0YyBweTNrCis4ODEzNyA4ZTBiNjE3YzZjMjIxNmQzNDlkODE4OTRmMDM2Y2U0ZDM4NGJiNDRhIHB5M2sKKzg4MTM4IDE2NDgwMTFjNjVkYTlhMGMyNmRiYmY0NjdkNDE1YTY0ZGU5NDBkYWUgcmVsZWFzZTMxLW1haW50Cis4ODEzOSAyNDE2MWNmNDA1ZjRjMjIzNzQzMGI3ZmU5NmEwOTc4NTdkNGFhZWQyIHJlbGVhc2UzMS1tYWludAorODgxMzkgZGU4ZGI3YWFmN2EyOTYwNTdhZTI2MTI1Yjk5NjE4Yzk2MWI0ZmVmNiByZWxlYXNlMjctbWFpbnQKKzg4MTM5IGM0MDgxN2M5NTUxNGIxNDcxZGIyNjcwZTM0NzQ3NDhlYzg0MzkwYmEgcHkzaworODgxNDAgYjk2ODA1M2FmYWQwZGM1MWU4YjA4N2U1OWZmMTFlNTk0OTg2MzgxYyBweTNrCis4ODE0MSA3ODhiMDFiNWE3NGVhMTdjNjBmNzdkNmIyZDFlOWZhODBmNWI1NzhlIHB5M2sKKzg4MTQyIDMwYzkxMzQyYjZhZTYzNjViNzMzYjEzMzYwNzIxZGQ5NGIwNzJkNzcgcHkzaworODgxNDMgYjNjYWRmNWNmNzQyNmM1YjI3ODIwZTRmNzc4OTc5MGJkYzViMDAxMCBweTNrCis4ODE0NCAwODY3M2U1ZjU0OWEyN2NjNzE1ODFlNjc5OWVmN2QwZDZhYmY2YzEzIHB5M2sKKzg4MTQ1IGJhYTkyMmI0NjIzN2RiMmIyOWEyODQwMzE0ZGQwNmMzNzFlMTM5NTYgcHkzaworODgxNDYgNGY3ZjM5OTUxOTRhMWM4YjAzZDQzODYzMWJkNjhhY2E0ZTEzODEwZSBweTNrCis4ODE0NyA0YzRhYmZiODg0ZmI0OGZlMTVjY2Q2YWM2ZWJhNTllZThmZDUyZDIzIHB5M2sKKzg4MTQ4IGJjZjAzMGY3M2VlZWI0MTU3Y2Q5ZGY4ZjIzNTBhN2VkNTBiMzdmMzkgcmVsZWFzZTMxLW1haW50Cis4ODE0OSBiOGMwY2EzNTk3OWEyY2RlOGMxZjg3ZmZlNDI1MGQzZDg3NGQ1NmRlIHB5M2sKKzg4MTUwIDQzMWRkY2RiNDMxMDZhZDliNmJlYjM4YTY0YjZkOWYzMGZkMTA2YjcgcHkzaworODgxNTEgZmMyYWRlODhhYjQxNzlmYjhjMWVkMzk4OWVhY2FkNzBhMDAwYzU2YiBweTNrCis4ODE1MiBkMWMwNjMwNmMxOWJlODJiZTM5YjI0YmI2ZmNmNmQ1ZWJjOTFiMzU5IHB5M2sKKzg4MTUzIGEwYTVjNWQ5YWE0ZmRmMWYxNjQ0MjdkMDFmOWEyYzcwNjc3YmZiYzEgcHkzaworODgxNTQgM2JiMjFkZjY0YWE1MTIwMTVlYjRiYzQ2OTE4ZTU5YjFjZDRjZWEwMCBweTNrCis4ODE1NSA0MDYzZTUyNjk4MmYyNmJhMDJjMjYzYTJiZTdkZWJjODhlYTY2NTRkIHB5M2sKKzg4MTU2IDZmNDBiNDcwOWU5YTUyZmQ4ZWNhNjRhMTdiYzBiNDEyZTMyN2VjNzAgcHkzaworODgxNTcgNWE2NWVjMjg3NzEzNzQ1OTZmMmVlNGNmYjAyMzllYzMyNjZjYzIzYiBweTNrCis4ODE1OCBkZDI3ZGY4ZDE0ZWZjMTk3ZmViMTc5OTg4OTU5YTUyOTMwYmRhNWY5IHB5M2sKKzg4MTU5IDJkZTY5OWU1ZjhmMzFhNTMyMWUyMDc4MTgxMmRjNDE4YzY0M2M5ZGMgcHkzaworODgxNjAgOTBhMmQ5YjcwMmJjYmFhZmJhOWNhZDc3NzIxNmFiYTFkNWU3ZWNmYSBweTNrCis4ODE2MSBmM2JmZWIyZmJjZmIwNmQ1ZjNiZWIyODAxNGNmNDk5Y2RhMWRkNGNjIHB5M2sKKzg4MTYyIDAzZTJhODc1NTcwOTBhYTUyYmEwMjhiNGRiYjY2YmY3NDNlMjM1ZmQgcHkzaworODgxNjMgYzE3NWY1ZGZmMzk2MDRiZDkwN2U0NTI4ZTdiNGNkODQwZmM0ZDc1YyBweTNrCis4ODE2NCA4MjVlYmFkZWJmOWJhMjkyMTg1ZWQ2ZWRkMzQ4YjM1MzM3MjQwNmM3IHB5M2sKKzg4MTY1IDFlM2YxNjliOWU0NmFlNGUxYmE4MzEyMjkxOTJiYzVjYWNjNmRiZjUgcHkzaworODgxNjYgNzA5MTliYWQ3NDU4NDFkMDI2NmM3YWJmYjdjMWVlNmEyMzg0ODZlMyBweTNrCis4ODE2OSA3ZjlhOThmNzY2ZDc1YzliNTk0NDg5MDJjZGY1NDkxY2Q0NWJhYWRjIHJlbGVhc2UyNy1tYWludAorODgxNzAgNDczZTQzNjgzOWVlNjM5MWUyYzU3MDY2ZTFjZDUxZGViOWMzZWU3YSBweTNrCis4ODE3MSA4YTMwYTJjYjRiOWUzNDcyZDg5MmRiYTM2ZDhkZDBkOTBiYTI1ZThmIHB5M2sKKzg4MTcyIDU5OGMxOTVlNTJmMzYwODZmZTkzOTAyOGRjZTcxYzQ4ZmZmMTIzMjIgcHkzaworODgxNzMgM2I5M2QwMDk5Y2VkMDdjN2E1Y2JkNGFhOGE5ZWFkZDAzNzg5ODRlOSByZWxlYXNlMzEtbWFpbnQKKzg4MTc0IGIwMjI1OTU3ZTAwNjU5OTVmYjIxYTc4YTJhMzAzMTYzYTA0MDg1MTkgcHkzaworODgxNzUgOTNhNDFkZjhjNzM3OGNmYWI2Zjc2ODg1NmM5OGUyZmJkMmNjYWFmMSByZWxlYXNlMjctbWFpbnQKKzg4MTc2IDBiNTI5OGU3YjJkNTQwNWJkNzIzNzllZDY2YjM2ODMyODg5ODg3MWMgcHkzaworODgxNzcgZWI0YmEwM2Q3YzRkZjMyMzIyM2M3NmJiYzYxZDJjODFjMWM1NDJiYiByZWxlYXNlMzEtbWFpbnQKKzg4MTc4IDBkNmVjY2YwMGI1YmQ2N2QxYzIwOTllY2ZiN2UzODA5MzcwOTY0MjMgcHkzaworODgxNzkgNzEyODEwMTdjNDNmYzQzZmZiMTc3ZDJhZDgxZjA1ZTZjZTNmYTFiMyBweTNrCis4ODE4MCBmYWUxOWU1NTE3YjY1YmUyYmYzMDczZDMzNzUwMzgxNzIwZDYwZTNlIHB5M2sKKzg4MTgxIDAzMjIwZWQ0OGJjYWUwZGUwZmNjZGNiYzBhZDhjNjhhNWIwY2Q4NzkgcHkzaworODgxODIgYzJiZDY5MjA3OGQyMGU3M2FlNDE5NmQyZTQ4MWUyY2NiODc0YjQ4ZSBweTNrCis4ODE4MyAzMmM4OTY2ODhjOTFkMDY4YTg2M2I3NjNkMmUzNzc4MzVkYzRiYzkwIHB5M2sKKzg4MTg0IDA4ZjMyZDExYjdlZmJhMjU0NTVkYzBkNjk5NzJkOTc2ZjA2YjljZmMgcHkzaworODgxODUgODlhM2Y2YzEyZjAyMTJkZDYxZmY1YWUwMDljMjNhMjZmZWZkMzc5MiBweTNrCis4ODE4NiA3NTdhOWIxODM2YjE5ZjJiNjdmNmFmYjZiMTNkYWE2ZmQwOTQwOTk3IHB5M2sKKzg4MTg3IDAwNzUzZDA0YmJiZmIzM2Q1ODVhMWQxNjdiYjlkZDAwYWUwMmVkZDYgcHkzaworODgxODggM2NhYmNlMGI2Y2FmY2FjYzkwMThmYTVkZmFmY2EzZTBiYzJiODA0YyBweTNrCis4ODE4OSAyMTk3NTRlOWMzOWMyZmEwNjI4MDQwYzlmMmE3NWEyMzNiNjkyMzhlIHRlc3Rfc3VicHJvY2Vzc18xMDgyNgorODgxOTAgNzA1NzgwYmE5ZTNhMDUzYjVjOGM1MmIzNzZkYzQ3OWQxY2NjZmJmZCB0ZXN0X3N1YnByb2Nlc3NfMTA4MjYKKzg4MTkxIDc3NmMzYzI5NGJiNzM1YzQ4OWMwNDZiODhmODg3NWMwZTRmNGE3YWUgcHkzaworODgxOTIgZjYzOTJjNGNlNjE5ODc3NzdkZjdmYzkzNGZhMGI4OWU1YjNlYjRjNCByZWxlYXNlMjctbWFpbnQKKzg4MTkzIDMyZmMxY2FmZmIxNzAyNmZhODVhN2ZjMjJlNWQxMGE1NmQ1ZTliNTQgdGVzdF9zdWJwcm9jZXNzXzEwODI2Cis4ODE5NCA4MmI3ZjUzYzJhY2Q0YTkzYTdkYjNjNmU0NDIwMmM3NGM5OGVhMGYzIHRlc3Rfc3VicHJvY2Vzc18xMDgyNgorODgxOTYgZjk4YWQ2NTA5MDI5NWE1NDQyNGQ1YjU5ZTIzNjY3MGM0OTMxODcyYSBweTNrCis4ODE5NyA2NWIwOTdhZWRhODAxM2NhNzcyN2M1OTlhODAzMzQzZWY4NDAwNzBiIHB5M2sKKzg4MTk4IDdiMzBkOWNmYTBkOWU1MTg4NGI1NGYyNGFkYWJjZWQ1MjBkZGE1ZjUgcHkzaworODgxOTkgNDg3MThiMTljMGRjMDgyZTBhZTIwMWJkZGM3MTgwZGY4YzdmZWZmYSBweTNrCis4ODIwMCBiZGY5ODY0ZmQyNzYwODUzMDNhOWExNjBmZDRkOTY5NDdkNTNiMWM4IHB5M2sKKzg4MjAxIDFmMjE1ZmRhMjM4MzhjZTM3NTg3NzgxZDlhZjFmZDExMzdhZTg5MDEgcHkzaworODgyMDIgYTY3NWE0NDY4NjIwODQzOTc4ODVkMTdhMzA2MThiMDNmM2JkNGYyMyByZWxlYXNlMjctbWFpbnQKKzg4MjAzIDFkM2JlN2IwMWQ4NDVlYTY0ZWMwZjkzNDBkMmRmODQyZGYxN2EwNDUgcHkzaworODgyMDQgOGVhYTMyNzk3ZjkyZTI5MmU5NDVkMGMwZGU5MzhlOTIwNGNkMjY3MCBweTNrCis4ODIwNSBhYzQ3ZDExYThjYTI0ZDQ2MWY2MGE0NzliY2UwZjcxNjI5YjQ2Y2E2IHJlbGVhc2UzMS1tYWludAorODgyMDYgNDRjMWI1NmQ3Nzg3ZDcxNTIyMzI5NjQzN2VjNDM2MTk1ODg1NzlkOCByZWxlYXNlMjctbWFpbnQKKzg4MjA3IDgwNTYxNzZjMDUzZjA1ZmMxMTdlZDlhNTI2NTI5OTllNDlkMWYwNDMgcHkzaworODgyMDggMjc5YTBjOTU5ZjdkYWVmMGI5YzI2MTNlZTM5ZGQyNTE3ZmUwOWEyZSByZWxlYXNlMzEtbWFpbnQKKzg4MjA5IDU5MWQ1NGZmZTk2OWQ3NDY3Y2RjMTAxOGI4ODQ3YWQwYWQwOWFjYTkgcHkzaworODgyMTAgZjgyYTA0Y2IxNTBhMmMwNjhmMTU5YzllMzlkNzIwY2EzMDYxYWNjOCBweTNrCis4ODIxMSBiMGFiMzM1MjJkZGE5ZjgzY2JhZTE0M2RjOTlkMDdhM2FjMjIwOTliIHB5M2sKKzg4MjEyIDBlMzBkNDEzYjllOTdmNDZjY2E5ODBkNzY0ZGE4N2ZjNTI4ZTNkNzcgcHkzaworODgyMTMgYmFjMjk2NjgwY2Y4NDY3YmNkMmQ5MTdiNmE5YzZkYWQ5ZDJiOTljZCBweTNrCis4ODIxNCBiMjJjYzc1NjNiMjg4MjMxMWJkOWFkZWE0NmUzOTc4ZDMxODQ0NjNhIHJlbGVhc2UyNy1tYWludAorODgyMTQgZmMyYWI3Y2RkY2YwMDU4YTUxZjkxNTJmOGYxOWMwMzBlMDNkYWZmNiBweTNrCis4ODIxNSBkZDczMjg2NzI5NjgzMWUwM2ExNzgyMjAxZmNiMzBkNDhjMTc5NTJlIHB5M2sKKzg4MjIwIGQyMWNiNmE3YTE0ZWU5YWMzM2EwMzI3Y2EyYTkyZDYyNjQ2NWJmOGYgcHkzaworODgyMjEgZTc5NTkzMDlmNTljNjViNGVhMjg2MzZkN2IyMzg5Y2FlMjNkNzQ0YSBweTNrCis4ODIyMiBlNDA2NDNhM2MzMWRmZmYzYWJhNzZlZmM2NWY3ODY1ZGJkZmE2ZTE2IHB5M2sKKzg4MjIzIDdjN2VlNGUxMTg1MGQwNzdmNzU1NzZmYWY1N2I4NWNlN2Y4NGNmOWUgcHkzaworODgyMjQgMmRiNjE3ZTkwY2EwYzEyMGQzYzNhZjcwZjAyYmNmNzBiYWRhOGM2OSB0ZXN0X3N1YnByb2Nlc3NfMTA4MjYKKzg4MjI2IDNlZjg2NTMyN2Q3YjA1ODBlYzBiMDIxNGExMmM4YmQ1OTk1OGRlNDkgcHkzaworODgyMjggODUyMTg2ZTVhZTJhYzY5ZTIxZDA0MjEzMDI0OTgxNjdjNjA3MWRmNCBweTNrCis4ODIyOSBjZjc1MDBmMDgwZmQzYWM2M2U0MzBjNjRmOTM3MjkxNTQ4MWMyY2RjIHJlbGVhc2UzMS1tYWludAorODgyMzAgZDdjZDFiNjI2MDhiOTgzMWM1NDFmNDQwYTYwYTJiMzk2ZjUyOTczYSBweTNrCis4ODIzMSAwODVlMGRkNjM3OTZiODBkM2Y4ZGVlN2Y5MGVkNzNkYWZkOWIwOTY2IHB5M2sKKzg4MjMyIDVjNTE3MjRiZjQxMTE2YTA4MzJiMGMzMzc2ZGJmYThkMjEyYjQzNzEgcHkzaworODgyMzMgYmUxMWU1NjUzZmRhOTc1NGZlY2I0MTRiNDE2OGYzNGU3MjhjYTE3YyByZWxlYXNlMzEtbWFpbnQKKzg4MjM0IDY0NzEzZTMxNjgzZjhiNzFlMjRiNzljZjk4N2RiOWMwMzFkNTU4MTYgcHkzaworODgyMzUgMzM0ODEyYmE1ODc0MjJiZGM0Yjg5MGY3OWJkMzRjMTc4NWM1M2U3NCBweTNrCis4ODIzNiA2YTFmYjk0NjQ3Y2I0ZGRmYzhjZmE5ZGQ2N2Q4OGYzODc0MDc2MzM1IHB5M2sKKzg4MjM3IDJhYWQ3MDdlZGE2Mjc4YTJhM2M2NjU2OTA2NWVkNDE0YWIzMDMxMzggcmVsZWFzZTMxLW1haW50Cis4ODIzOCBmMTJmZTY4NWU0NGQyOGRjOTczYzYxMmQ2ZWViYWQ2NjAwMzAzYTY0IHJlbGVhc2UyNy1tYWludAorODgyMzkgNzkxZjUyZmJlNWUwNjBhZmJkZTQ1OWQ5MGNjYzc3YzkyODQ0NzUyNiBweTNrCis4ODI0MCA1ZjFhZDY1YTFiODRjNzc3ZmQ1MzQxMzkwMjVlMDc2NTQ1YmRhOTA2IHB5M2sKKzg4MjQxIDNjNzc3MmZmZmJhZDM0YTI2MzAyY2QzMzEyNDZkYjk1NWU0NDVlNTQgcmVsZWFzZTMxLW1haW50Cis4ODI0MiBjNjkwNjA5OTk1YTYyNzYyNzM3M2Q2NGZjOGFmZDc3OTNjZTQwZDFjIHJlbGVhc2UzMS1tYWludAorODgyNDMgYjBlZmI2ZjBmZTk0MzI2M2Y3NjVlMzAwYWRlMDExYzBkOGRhZjMyNiByZWxlYXNlMjctbWFpbnQKKzg4MjQ0IDBjNjA0ZTY1NDI5ZTMyYjgyMzQ3ZDk3MzE0MTg1NzVkZmUyODg0ZjMgcHkzaworODgyNDUgNDZmMDdkYzQzN2ZmYmQ3OTI1YTUzMWZlZWU0ODg3OTBkYzNmN2VlMyBweTNrCis4ODI0NiA4YTE5ZjYwMjljZTU5N2UyOTc0YTJlNGJiZjA3NWIzODQ1MDljOWFiIHB5M2sKKzg4MjQ3IGM4MjU4OGNhM2E3OTA5ZGNhN2Q2ZjkwMTA5M2NjYjRjOWY5MzkyODEgcHkzaworODgyNDggZDNiNGZhMmRkNzI4OGVjNzAxMTUyZjc3MDc3NTFmMjRmMDBkZDY1MSByZWxlYXNlMjctbWFpbnQKKzg4MjUxIDJjOTM3MmExYzY4NWI1YjkwZTRiY2FhNTU1YjA4NmZhNjFlMTEyMGMgcHkzaworODgyNTIgZGM1MDFlZmEwNWI0MTI1YmM1ZTViZTYzY2U5MzliZjIxYzNmNTcxMCBweTNrCis4ODI1NiAzNmVlYjI4MmNkODQ0ZWE4OTBkMjE4N2YzZjFhNDQzMGQ3MTc5MzdiIHB5M2sKKzg4MjU4IGJmYTU4MzVlMTBmMGU3MTg1YWQ3NDY0OGI5MWQ2MDdkNmQzN2I4ODEgcHkzaworODgyNTkgNTk1YzJiNTY2ODFlYmI3NmRkYTg2ZjcwMzFiYjkwODUyYTI2YjExMSBweTNrCis4ODI2MSBkZmJkOTU2OGY0OWNiZTkwMTczYjY2M2RmMDE2NmNlYjAxNWRkNDA2IHB5M2sKKzg4MjYzIDJiZWY3YWI2MjU2YjQyMTI0NDQ1OWRjYWNmYWFiNTNlY2E2MGJkOGQgcHkzaworODgyNjQgOTNjNDA4MWRmZDE5NWNiZGIwN2JlOGZlMTgyNWMzMjFkYzBhNjAwNCBweTNrCis4ODI2NSAyNjU3NGIwMjcwNDJjODgwMzFhNzhhNzY5ZWY4YjViNjcwMWIxZWU0IHB5M2sKKzg4MjY2IGFjZjNlMjRkZDBkMGRmZDFlMjBjOTA3ZDY5NmQzZGE5NjVhOGY1NmYgcHkzaworODgyNjcgN2MzZGFmYmVlOWQwYjZiMWMxMTIxNWE1MmMxNjljNzY4M2QwY2NiZSBweTNrCis4ODI2OCBlODI1MDE4MTJhZTNkMzE2NTYzNWQ5N2Y2Zjk3YTlmOGYxZGNmNzBmIHJlbGVhc2UyNy1tYWludAorODgyNjkgYTlkZGRmYmFiMjQxNzljMGI2OWViMDgzMTFjZDZlN2FlMTk1YjQ2ZSByZWxlYXNlMzEtbWFpbnQKKzg4MjcwIDE4MjA3YjlkOWE2MGY4MTU2MjBiZTU2ZTA1Y2EwZjVjOTc2OGQzMjQgcmVsZWFzZTI3LW1haW50Cis4ODI3MSAwZjBjNWY5YWNlOWYzYmI0YjUyMGJjNGY0NGQ5NDNlZGU5Yzc1OGIwIHB5M2sKKzg4MjcyIGRlNjc5MmJkZDk2NTkzYmQ1MWUyMTBiODc5NzkyMjEyYTZhMTg4MDAgcHkzaworODgyNzMgMDg2YzJiY2Q4ZDc0ZTZiNDQ3NDY4Zjc0NjM1ZmFlMjY0YWI2YmVmZSBweTNrCis4ODI3NCA0YTI3MjIyNWMzZGU3MWU2MWEwNzE4NWU0NDAzYjkyNGJmMGI4ODZhIHB5M2sKKzg4Mjc1IGJjMDlkYjgyYTVkMGY1NDM2OTEwZTUxMGY4Nzg3MjYwMDExM2EzNzQgcHkzaworODgyNzYgMDJlZmRiOWUwOWU5MGVjMjU5MDAzOTQ2ZDRmNDRmY2MxOWJhMTM4MiBweTNrCis4ODI4MCA0Zjk0ODczODQ2YTNmYTVmZjk0ZWMyYjU3OWFmOTk1M2IyMzUwYzQwIHB5M2sKKzg4MjgxIDBhOWY2ODBhMmNmMDVjM2JhZWM0YzY5YTRkNjdjMGRjZDE5OTBiNTkgcHkzaworODgyODIgOTg3ZTY2MTVhMDc5NmFkOTAwNGZjMWMzYWEwOTAxNDZiZWE1YjQwYyByZWxlYXNlMzEtbWFpbnQKKzg4MjgzIGE2ZGYzYzNlMzc0MjM2MTI0ZmY5Njg5MGM3NjM0NjJkMWMyN2E1YmMgcmVsZWFzZTI3LW1haW50Cis4ODI4NCAzMWY0MGJlOTIyNTI0YzYyOTNlZDc3MDY2MmU1NzBiMGIwMjYyZjE1IHB5M2sKKzg4Mjg1IDhmYTczYTA4ODVjOTVlOGUxNmY1ZGE3MDJlYWQwMjQyY2Y3YWMzYTcgcmVsZWFzZTMxLW1haW50Cis4ODI4NiBjYTkwOTQzOGNmOWY4OTFiZjA3NDc0NDRlNGZmZTYzOWViMDIzZjI0IHJlbGVhc2UyNy1tYWludAorODgyOTkgNzNjNDk1NzlhNDg3YzRiZDFiNzU4ZDhjNWNlMjg4ZjE0YTE0MzQ4MyBweTNrCis4ODMwMCA5MDBmYzFlZTQ0ODdlZmUxODc4MDA2MTBmODYzYzU2MGI0MzNmZGVmIHJlbGVhc2UzMS1tYWludAorODgzMDEgOTQ0YWRmN2VkYTJlYmIxZWE2MTE0YjUxNmJmNmExMmU5YjkxYjFkYSBweTNrCis4ODMwMiA5ZTY1OTUxMjY2YTIwNTEyOTUwMTU3ZWVlYTZkZGI4OTllY2JiZjk3IHB5M2sKKzg4MzE4IGFhODczMDA0Y2VhODBkZTdhZGZiZmIxNWMyNmU5MzAwYzlmNjhjOWIgcmVsZWFzZTI3LW1haW50Cis4ODMxOSA3NzNjYjMzMmNjNjNiNmM2YTdjNTUzNGMyODA2MWM0OTg1ODQwZTM5IHJlbGVhc2UzMS1tYWludAorODgzMjAgZDMzOTAzZWIzMzg4NTQxZmFlZDdjNDNhOTE3NWQxMDg0YjA4ZjNkZiByZWxlYXNlMjctbWFpbnQKKzg4MzIxIDE3ZDZmMTY1ZWFlOTdmOWI0ZWM2Y2Q3MWYxOWU1YjhjYWMwOGE1M2UgcmVsZWFzZTMxLW1haW50Cis4ODMyMiA1YmU3MDExMzkwODljZjhmODRmNTkyMjQ0MmU0ZGUzMjUyODgyNTg4IHB5M2sKKzg4MzIzIDhlOTk2OTQxOGRiZWJjYjhiYmY0NDlhNjU2ZjQzOWEzODQ2ZWQ5NDcgcmVsZWFzZTMxLW1haW50Cis4ODMyNCBiMjE3ODY0MTliYjgzM2RiMTM2NzAxMDI0Mzk1MzFjMWVkNTgwMWEyIHJlbGVhc2UzMS1tYWludAorODgzMjUgNzgyYmY1ZjM3YWNiMDZmZWQ2ZjA0YmQxZGMzZjFmZTc2ZWJjMzk3YiByZWxlYXNlMzEtbWFpbnQKKzg4MzI2IDJlM2M1ODQxYTBhNjY0MGVlNzY0NDFhNjYwNjhkMTdkOTYwYjMwNjAgcmVsZWFzZTMxLW1haW50Cis4ODMyNyBhMWQxYmZjMzgzZWZjZjZlMWQ3M2U4NGI4NjUzYzA4NWY4MTUxNzFiIHJlbGVhc2UzMS1tYWludAorODgzMjggNjI3MDk0NjExNWQwODQ1YzVmOTliZDM1N2M2Y2IyZjgyOGQ4N2E3MiByZWxlYXNlMjctbWFpbnQKKzg4MzI5IDAzODY0M2QzOWZjMTU2ZGYzYjM2MmZhZWE1NTBiYjUyYzJmYzAwMWIgcHkzaworODgzMzAgNDUwNjQ5NTY1ODYzMWJlYjkyZjBjNjE2OGU3ZmM3YjRiYzkwYjFhYSBweTNrCis4ODMzMSA4Y2MxMDI3OWFjN2RkNmU0Njc1MzkzZWM4M2I4YWMxMDNjMDg0MjlhIHB5M2sKKzg4MzMyIGU1NjY4YWRjMWVkOWU2YWJhMDZkZjY5ODVhZjUzOWY4MjA1OGQ2NTIgcHkzaworODgzMzMgMDc3NDZiZTBiYmFkNDdlNjZjMTU4MGMyYTMxYzAxMjE4ODdmMmEwOCBweTNrCis4ODMzNCAwYmJhNTMzYzA5NTlmNjI1NDAwZDVlZTc3ODIyODVkY2UwZmQxOGQ4IHB5M2sKKzg4MzM1IGY5MDJmYzc3OTNlMTJiNDhiNjAxMzhjMjg2ZTVhY2MzZDlkZGE4MTMgcmVsZWFzZTMxLW1haW50Cis4ODMzNiBmMjJjOTlkYjhhNDY1NmZmNTYwYzljNmYyN2NkZGJlZmI3MjNhYWJlIHJlbGVhc2UyNy1tYWludAorODgzMzcgY2U4ZGI0ODVlMjZlNDM1NjhhZDM4ZTYzYzhlNGI2ODY5ZTllNWQxNCBweTNrCis4ODMzOCBkYzU2YzgyNzFmYTg1MWZjNzBkNDlhYzcxNjdlYzgyZDgxNzViZjIyIHJlbGVhc2UyNy1tYWludAorODgzMzkgNDM1NTIxMmZlMmM0MzAzMTFhODJiMDhiOTIzMzA1ZmUyZGExMWQwNyByZWxlYXNlMzEtbWFpbnQKKzg4MzQwIGNjZmI1YmE1MGE0NGU5YzFjMDc0ZWRiMTQyZjgxNzQyZGQyMDU2MmIgcHkzaworODgzNDEgNWE1MDQ4NWEzNzVmMTFjOGUxNjBlODliMjUwNTc0NTAzNzlmODNhNSBweTNrCis4ODM0MiBiYzY4NWFkYmFhMTVjZTE2MmQ0NjFjYzEyNjUzNzg4MmZkZWQzZGY1IHB5M2sKKzg4MzQzIDQ2MGYyZjFjNWVjODNmYmMwZGQ2ZDk4MTZhMTZhZWI0ODA4MjhhZTIgcHkzaworODgzNDQgYmIzZjZkM2NjMGIzYzM3ZGRmMWRiOWY4MzRiODk1ZTRkM2IwZTNhZiBweTNrCis4ODM0NSA1MjY3ZTUyNjNlNDc3ZDRmZjg2NjU2MDdhYTU4MjhjYmJiMmJmYWRjIHB5M2sKKzg4MzQ2IDM5YjVmYzZjNzkyZDRiNTk2OWRjODhlMDFlMTlhOTY3ODJiY2Y1YzEgcHkzaworODgzNDcgODhkNjljMmY5ZWZhMzIzMzVlMzRkZjQwOTRhZjc2NjdlNWM0YWZhZiBweTNrCis4ODM0OCA5YjMzZDY1Y2RhZTRhZWI2NWNjMjhiODJkMzBkMTljNjBmNDQ1ZTA1IHB5M2sKKzg4MzQ5IDhkMjU5MjU5MTBiMTBiNTU2ZGM4ZjE5Y2Q5ZjdiNDBmMzIzOGYyNWUgcHkzaworODgzNTAgMGRhNjhlMmU0ZDc4MGI2OGJkNWZhZjdiM2Q3MWIwMDRkODZhMjNlOCBweTNrCis4ODM1MSBhY2E5MWM1NWYzOGQ0NTBmZmZkZTc1ZTI0YWY1ZGRjYTU3ZmFhYmMzIHB5M2sKKzg4MzUyIGFiYWIyYzUzZjU4ZmQzMzc0MDZiNGJhMDFmMDQ2YWVmYzMzNmEyYjQgcHkzaworODgzNTMgNDA1YTQ0YzZkY2VkYjQ1N2MzZDM5ZDQwNDM5OWRmYzVjOTI1ODAwMiByZWxlYXNlMjctbWFpbnQKKzg4MzU0IGI1ZTM2YTU0OWMyNTM3OTFlYTQ5YzM5Y2JiYTQ4MmIzYTY3OTk0OWYgcmVsZWFzZTMxLW1haW50Cis4ODM1NSA4ZTIwOTg2YjNkNmU5YjhkZGNjNmE1ZjI0Y2ExNWYzMTNlOGJhOTA3IHB5M2sKKzg4MzU2IDUxNmI5ZGI2YWZlNGFmNDhjOTkxNjc0YzBiZDA0ZTkxNTdkODgxNzIgcHkzaworODgzNTcgMzk0Y2IwMjI0N2ZjMzZiOTE2N2MwNjIwYjQ5MjQ1MmQ1Mjk1Y2ZhMyBweTNrCis4ODM1OCBiN2IxZGNlM2U3N2YyOTY1M2VmZWQxM2U0ZTEwYTE3NjIwZWY0ZmNmIHB5M2sKKzg4MzU5IGQ2MWViZmNlMThlZDNhZTEyYjhkZGVkNzRkYWMyNTFmY2VhNjVjNTMgcHkzaworODgzNjAgMTUxOGI5MzVkZTEwZTcwNzMwNTkxOGJmYmQ2MGU2YTliNzA4NTk1ZiBweTNrCis4ODM2MSBiNTcwMmIyMGI0NzYwZTU5MWJkNDA3NjcwNmZjOTAzMmViZjM4MGNmIHB5M2sKKzg4MzYyIGI0YzdkMjAzYzNkMTQzMGNjYjc1NTFkNDJjOWM5ZDJmNGYzN2NkODggcHkzaworODgzNjMgM2I5ZDdiODQ1NjE4MzkyODBkODhlYzExMTIzZTZkNzE4M2YxY2FjOCBweTNrCis4ODM2NCAwOWYwN2M3ZGMzZGMyNWRlMTU4OWMzMDQ0YmNkNjU4Yjc4MDUwNzY3IHB5M2sKKzg4MzY1IDNlMDIxMzY2ZTUxZmFjNjJhYTU0ZWNiOWM4MWQ3ZjVhMjdkNzE3NzMgcHkzaworODgzNjYgZjFmYWVjNDkzNTBkY2RhNmU4OWNhZDIwYzhmMTkzZDFkZTBiYTc0OCBweTNrCis4ODM2NyBiY2U3NTg5MzlkNzk5M2JjMDNhODE3ZjVhZTkxNGFiY2RkODk2ZjFmIHB5M2sKKzg4MzY4IDFkOWM1YTJhYTY5NGU3ZjJlNTI1YWViNGUxZDQ1MjQxZTdjNmQ4YjggcHkzaworODgzNjkgMjYxMzY3ZTllNmMxYzhhMWNkNmIwMmM4MWQ0MzA0N2MzZDBmZjI1MCBweTNrCis4ODM3MCAzNDExY2M3ZjY0ZGY2NjljNGEwMmJiZDg2ZGUzZTY5MGUzY2RiZTEzIHB5M2sKKzg4MzcxIDlmZGZjMDVlZmJiNWJmY2Y3YzdhNTU0ZjE3OTY5NDgwOTVmYzUwOGMgcHkzaworODgzNzIgOTQ2ZWNlMjZhNDhmM2JmZTlhZDhkNWMxNDJiZmEyNTVmMzdiNGQ5YyByZWxlYXNlMzEtbWFpbnQKKzg4MzczIDY4ZDYxN2RkMzBjZDM5MTk4ZWVmZGIwMDA2MTFjOGZhMjMyY2VlY2YgcmVsZWFzZTI3LW1haW50Cis4ODM3NCA3YzcxYjBhNWEyOTAxNGI5NjAwZjYwM2M4OWRkODg0NWYxZTViMzQ3IHB5M2sKKzg4Mzc1IGU5ZmI2ZDUwNDU5YWY1YzVkYWU1OWI1MTBhYjE1OWUxYzkwOGQ5OWEgcHkzaworODgzNzYgYmI3NTdmYWNiZmE2MTEyMDM2ZDY1YzU0ZmZmYzI5MTE2ZjVlY2ZlNSByZWxlYXNlMjctbWFpbnQKKzg4Mzc3IDU3NDJjNzkwODZhODc5ODA0NzZhM2QwNjU0ZDhlMWZkN2FlY2QxZTIgcHkzaworODgzNzggZjUyZTM1Yzc1ZTMzYzZmOGRkMTdkN2I4N2Y4ZDA3ZTFiNTdmZjdkMCByZWxlYXNlMzEtbWFpbnQKKzg4MzgxIGQ2OTY2ZDliNzYwOWZjYzczMWIzZjk4Zjk2ODQwYjQzMjkzNzFkMzEgcHkzaworODgzODIgZGNmMTc5MWNiMTc2N2E1MTY4NzQ4OTNiZWUwYTRiYjMwZWM4YTcxYyBweTNrCis4ODM4MyAwNzFkMjVhZmFkYWE4OTZlOTcxY2VjYWYzM2E2YzY3Mzc0ZTA5ZmEyIHB5M2sKKzg4Mzg0IDY0M2FjOTQ2ZWZmNDlmNDc1NWExYTEyYTI2NjY0NzlkYWMzODY4Y2EgcHkzaworODgzODUgMTQ2ZTgxZTRlNTFlNGE5NTQ3NWY3MTI5MGM0MTAyN2Y4Y2VhZjA3MiBweTNrCis4ODM4NiBmNWI4ODljMzZmOTkwYTZkZjhiMDE5NWUxYWFhOTFhMGM2MmYyNmE5IHB5M2sKKzg4Mzg3IDVkZmUwYzQyZmZlOGQ0MjI5ZGRjNWYxMmU1ZWE4YzViM2RmZjIwMDQgcHkzaworODgzODggNTZlNjE3YzJiNWU4M2VjMTcwYWE3MTE1YTNjNDg5OGE4ZjkxYzBlYyBweTNrCis4ODM4OSA3MmI0MmRjMDQxZjNmZjU4NzZiMmM1NTk2NGNlYmM3NmVjYjc2NGRmIHB5M2sKKzg4MzkwIDAzN2YxNmIwMmNhNTUyYzZmZDZjODkyZmZiNmQ2MDg1MWI1ZDBmNDAgcmVsZWFzZTMxLW1haW50Cis4ODM5MSAyYjQ4MjJiN2M0MjRlYzU5ODM3YmU2MTA2NWJkODFlYmYzOGMzYjc3IHJlbGVhc2UyNy1tYWludAorODgzOTIgZDFiNWQ4MDRkMmE1NDUyNzEzNzcxODI4MDI5ZDhiNTc2MjYwNmM2OSByZWxlYXNlMzEtbWFpbnQKKzg4MzkzIDgwODRjNjY4YjYzNzczNTU1ODRmODIxMGM4MmIzOWM0Y2NlZDJmODkgcmVsZWFzZTMxLW1haW50Cis4ODM5NCBiNDA5ZDdlY2I2NjU3NDI2MjQ2ZDk0MWE4MzhjMWM5ZmNjNzFhZjRiIHB5M2sKKzg4Mzk1IDEyYWNhZjdhNDk1NWRkYTUwYjMzOGEwODVlMWUzM2Q3YjJlZDBmOGQgcHkzaworODgzOTYgNGQyYTU4OTE4ZGYxNTg3NjJmYzU1ZTBlMTg3MjhiNDQ0OTE5MzU1ZiBweTNrCis4ODM5NyA4OWQ1MmVmZmMzMGFhN2QzOWMyN2FjMGQ4NTliZjRiZTZjZThiMTNkIHJlbGVhc2UyNy1tYWludAorODgzOTggZDliNzEzZTk1ZjM5ZTkwZDNhNWExNzEzMGI1YWU4YTY0NTFkNjY2NSByZWxlYXNlMjctbWFpbnQKKzg4Mzk5IDAyYjg4MTMyNmY2ZWQ4MmMwZTA5NjliNzViNWE2MmNmODZiNmUwOWUgcHkzaworODg0MDAgMjBkODI4NzNhYTk3N2E5ZjU2ZjE4YWIwMGM1MzYzNDBkY2E2ZTFkOSBweTNrCis4ODQwMSAwNmE2NTdkMWEzYWMxOTlmNWQ0MGEyYTQ0OTc1YmMzNmEzYjU3MDgyIHB5M2sKKzg4NDAyIGMzMTBkMjk0ZmRkZTBmYjA3Njk2NzM2Y2ZlY2E1ZTM5Njc5NDc0ZTkgcHkzaworODg0MDMgMmNiZTlkMDU4ZjdlOTJiMWRiNGM4NWQwYTI3MzU5YTNkYjFiYThhMCBweTNrCis4ODQwNCAxMTE1NzdiZjViYTg5NjZmN2JjYTk4ZWQ3OWNmZTEzNTkwYWVhMzQ2IHJlbGVhc2UzMS1tYWludAorODg0MDUgMTFjNjdhNjA4NGM4ZWQ0ZjJmMzExMWFhZDE5ZTJhZTA1MDM2NmRkOCByZWxlYXNlMjctbWFpbnQKKzg4NDA2IGJiYWY5MzA0YTBkMDRhMGNjNDI1OGYyNTczNTFlMDgxZDIwODQ4MzAgcmVsZWFzZTI3LW1haW50Cis4ODQwNyBmM2NlNGFiYmFhZjg1ZThmYjNkZWIwNThlMjBhYjVjNjM0NGZjZjdmIHB5M2sKKzg4NDA4IDg4M2EwMjNlYjk0MzNkNjJmMDI3M2M2YTcwNmZhOWNlNTFmMzFhMDkgcmVsZWFzZTI3LW1haW50Cis4ODQwOSA3ZDMyMDgyMGY0NjJkZDgzYjUzZjc0MjJhZTRkNmY0Y2ZkNTQ5OTEwIHJlbGVhc2UzMS1tYWludAorODg0MTAgYmE5NWMwYmRkOGE4ZDc4MzQ5ZTEwOTZkNDg0YTI2MjBiZjg0ZGY3NiByZWxlYXNlMjctbWFpbnQKKzg4NDExIDEwNjYwM2NhNTNjMzdjMGQ1YTgyMmYwODFiNDBlMWM5YzUyYjJiMTYgcHkzaworODg0MTIgNmE1NDMxMTZiZjE3NDc1YzIyOGU3NjA0ZjA1NzY4ZTc4MjE2YTIxOSBweTNrCis4ODQxMyAxOGMxZjUyODk2NTAxYzdlZTEzYjAzODQ1NGEzOWFjYjQ1YTg3OTc5IHB5M2sKKzg4NDE0IDkzZGY5NWU0MDNkMWE0ODYxNTFmM2U0YTkxZDVkMzYwNjc0NTJhZWEgcHkzaworODg0MTggYjQ1ZjRmMzlmMjA0ZDg2NWM5MmRmYzA3YjBkMzIzNGFhOTA1N2VmMCByZWxlYXNlMzEtbWFpbnQKKzg4NDE5IDA4ODU1MTRkODk3YzBjNGI3Y2JlMmFjZTNlNDI0ZjhmZDljNGFkYjcgcmVsZWFzZTI3LW1haW50Cis4ODQyMCA1YmFhYzE4NmYwYzI4YmVjNWEzMzgwZWMyMDZlNDI2ZTIzMGYzYTM0IHB5M2sKKzg4NDIxIDAzZWM2MWUxMzQ2MGIyNzFhYTVmNzlkYzY0ZDRhOTI5OTc4MmIwYTggcHkzaworODg0MjIgZDFkOWQ3ZTAwYjRhNWExOTg4ODIxMTlmZDEzOGQyNmNkOTdjNWRmNiByZWxlYXNlMjctbWFpbnQKKzg4NDIzIGQ4MDMxYmEzOGUxNmQzZWRjOGFjM2JiNWFiZGFkYzZhNzQ0MjU1MzYgcHkzaworODg0MjQgNDNhZjllMzZiZGQ1OGEyYmE3OGQ2YjBkZTJhZDQ3MGJjZmI0ZjNhYiBweTNrCis4ODQyNSAyZWUyYzc2MDgyYzhjNmFlZjVlNjI1NTYyMGRhNzY3MTMxNjVhYjBlIHJlbGVhc2UzMS1tYWludAorODg0MjYgOWZmM2I2Njk1NDhmODMyYTkyOWQ4YWJhYjQ1MTZiMTJmMDRmNTdiZiBweTNrCis4ODQyNyA3YTg5ZjRhNzNkMWFmZDY2NDQ5ZGZmN2QwYjU3MzFjNzZkZGU0MjIwIHJlbGVhc2UyNy1tYWludAorODg0MjggNWU3ZGQ2NTdmOWViNzUxZjNiMTRlNmViNTkwMDYzOGY1MjAyZWFhMyByZWxlYXNlMzEtbWFpbnQKKzg4NDI5IDkwN2YzODc5MjM1YThkNGFlYTYxMDI4YTI4YThlN2MzNGZjMDFmZjQgcmVsZWFzZTI3LW1haW50Cis4ODQzMCBhZDJmOGM2ODZlMDg1NWE3MjJkMzAwNzM1OWQyMzFkYTA1MWUyNjI3IHB5M2sKKzg4NDMxIDM5Y2YyMGQ1YWQ0YzVlYTU1MzdhOWYxY2MzMDVjNTNkZDg5ZWM5MzIgcHkzaworODg0MzIgNmQzOWRhZWRlZGQ1NTM2ZTc5ZmM1NmQ3MzI1ZjE1YzkzNWQ1M2VlYyBweTNrCis4ODQzNCA2YzFjYTlkZWI0MmE5NTI4NmJiMjdlYjU1YjZjYTRjNDJlNWNhNDhlIHB5M2sKKzg4NDM1IDE1YThlMjJjNDEwMWRlZGE5NWFlYWFhZDAxODE2Mzc3M2M5MWU2NjIgcHkzaworODg0MzYgMjJkOTRmNTViMGM3MDM0MmFiODdkZjk2YmY3OWFjYTc3ZjI3ZmQ0ZiByZWxlYXNlMjctbWFpbnQKKzg4NDM4IDkyZGViZGY5ODFjNWYzNDQzZTg3N2Y1OGI0ODYxMTU3YjdjZDI4NjQgcHkzaworODg0MzkgNmNhYjlhOTk0MTA1MDM1NDBmZTIxZGRiOTIwN2RmMzBhZWQ3MjAyYSBweTNrCis4ODQ0MCA1YWYwMzU1ODlhYTc3NzJlZmZkMDQyN2M2NzRjMjllOWUyNjc2YTY3IHB5M2sKKzg4NDQxIDVlMzc2NjkxNzJjOGQyNzgzNGRhZjg2OGU2ZGYyOGNjZDgxYTMwODEgcHkzaworODg0NDIgMTAxYmM2Njk1MWM3Y2E0ZTYzOWJkZTg2OWFmNDE1YzM0N2NmZmI5MyBweTNrCis4ODQ0MyA3ODhlYWZhZWY3ZGM0ODIwZGI3OGNiNDlhNTdhMGFkZjYzZmM1MGNlIHB5M2sKKzg4NDQ0IDU5MDBkOTQ4ZmU1N2E0Mzk5ZGMyZmZlYzNiYTEyNjRiMjE3ZDRlMTYgcHkzaworODg0NDUgNDk2YWM0ZDFhOWFiYjk2NWM5ZTExOWUyNDRlNjNjN2RiMTZkMTg0OCBweTNrCis4ODQ0NiBhMjIyYTAxNWUyOGQ4YWU5YWYzODk5MjU4ZGM2YzE1YzNkNDBhZGQwIHJlbGVhc2UzMi1tYWludAorODg0NDcgNjYzODFjZWM2YzczMjVjMzA2MDY3MzRkZDM3NjY1ZGQxMDRkNjVlYiBweTNrCis4ODQ0OCAyMDM5NDUwNjBiYWZmMjA2YTZhNzdjODZiYWFkODg3MDFhZDQ0Zjc4IHB5M2sKKzg4NDQ5IDBmNTJjZmM5MWZhZWMwODk5Nzc1NDg3YzJmZGIwNDQ1ZDMwY2VjZjEgcHkzaworODg0NTAgNDQxOTA3YzA4MTRlNWM3MWU4Y2U0NDkzNjQ5OGJmYWI3MzBlZDdiZiByZWxlYXNlMzItbWFpbnQKKzg4NDUxIGE4M2NjOTYxYzQzYTJkMzI2OWJkYTRlNzNjZWI5ODk5MWFjMzQyMTkgcHkzaworODg0NTIgMzVjMGUzN2ZlOTUwMTIzZjBiY2VjNWM1OTRmNTU0NWI5ZTZmNmY4OSByZWxlYXNlMjctbWFpbnQKKzg4NDUzIGFlYzk1MjdmNjIyMzI3Njk5NjcyMTk1OGQ4YzFjMzU2MmQ5YTVhNjkgcmVsZWFzZTI3LW1haW50Cis4ODQ1NSBiZjg2NDM5NWQxYzg4YjFjMzJjMmFmOTVhODhhODQ2ODE2NThiNDgzIHJlbGVhc2UzMi1tYWludAorODg0NTYgN2IwMTFjZjY0ZjkwNmMyMmZhOGNhZTRjY2ViNzU4NGE4ZDg0YzI1NSBweTNrCis4ODQ1NyAzNzFmMDRlMWJkM2Y4YjNlOTJiY2MyZGU2OGI2OWQ0N2I0N2ViMGQ1IHJlbGVhc2UzMi1tYWludAorODg0NTggNzkwMmY1YmUyYzkwNmJmMGI3NmFhNDM3ZDU3MDZkYWM3YmMxNGFkNSByZWxlYXNlMzItbWFpbnQKKzg4NDU5IDk4MzYzMDc5NzMzOGUyZGY3YjBhZWJlMGYzM2I0MWNiNmZmYmY1YzQgcHkzaworODg0NjAgNTFhMDgwYmFjYjI1MDhkNTQ2MGJhYzAzZDAxYjBjZDdlNDI0MGJkMSBweTNrCis4ODQ2MSBkYTVkZDNlMjNjODcwMjUyMDg5YzBjNGRmM2RjOTRkMjJmZjhkYWZiIHJlbGVhc2UzMi1tYWludAorODg0NjIgNmMxZTA1YTRiNTQxZjFlMjAxYWYzNDllZTQxODE1NGNiNTkzY2JkYiByZWxlYXNlMzItbWFpbnQKKzg4NDYzIDI3ZWEzYWUzNjJjZDUxZmY2YTJiYjAyZGIxNzQyMjlmODNkM2FhMmQgcHkzaworODg0NjQgOTU0Y2Q1ZGI1MWRjMzVlZjQzYjhmNDM5NDVjZGQyZmE4ODFmNWVmMCBweTNrCis4ODQ2NSA5ZjgxNDZmNDVlYWU4N2M5Mjg5NTM4MmEwY2NkMDA2N2ZmYTVmMDg1IHB5M2sKKzg4NDY2IGExZjM1YzIxYTcxMmMxMTg1ZjVjMGEzMjNiNTBiYzM2ODM5ZDUxZTkgcHkzaworODg0NjcgNjE0ZTMyOTAwZWY3ZGI4NmM2YTBjOGRlMWMwODczOThkNTI2NWY2ZSBweTNrCis4ODQ2OCBlYjhmYzFjZTFjODFlYjgzZmE3NmUyNjE5Yjk3YWFiYTliZTJhNTAyIHJlbGVhc2UzMi1tYWludAorODg0NjkgNDgyNTg3MTgwMjU1YTUxYjA5MjE2NDVlZTY4NDFlMzZiNDgxMDRhNiByZWxlYXNlMzItbWFpbnQKKzg4NDcwIGIxN2JiYTFjNzMwM2NlN2U1OWRmYmMyNzhmNjRlNTU3OTY3MzJmNDAgcHkzaworODg0NzEgNDUwZjhkNTFkZGE4NjliM2YzNTgyOWVjMjU1NmExY2FiZjc0OTYxNSByZWxlYXNlMzItbWFpbnQKKzg4NDcyIGZmODZhMTc5YmMxM2NhNzEzNTM3MGI1NzNhMmZlNWUzNjM4NTk4ZDcgcmVsZWFzZTMyLW1haW50Cis4ODQ3MyAxODUzOTg5Zjc0ZTc2YWI0NzVjYjI2NDU0NjdiY2I5YTg4MzA4YTIwIHJlbGVhc2UzMi1tYWludAorODg0NzQgMTU4ZDZkZWYyZWY4N2YzMTI5YWUwZDQxYzZmZDIwNmExYmRhMzU3MiBweTNrCis4ODQ3NSBhMDM2YzMwYWI1YWU0YWM5ZDcwNWJmZTdmNjRhZTNkNjE2NTBjOTkzIHB5M2sKKzg4NDc2IGFiMTY2NGIyOThmY2RiMWY4ZTk2YzliM2Y0MGFjOTdlZjkxNjBkZTEgcHkzaworODg0NzcgMDBhNGZmYTcyZGJlM2QxZWExZDJkNDZmMzUyNjk1MTA0NzkwNzJlNyByZWxlYXNlMzItbWFpbnQKKzg4NDc4IGJiODU3ZDljMzA3MTIwYzVkZmEyMjI0NDYxY2I0NTljNzc3NWZkMjYgcHkzaworODg0NzkgMjg0MDI2ZTAwMzQyZDRhZWUzMjkwYzgwZGVkMmIxYTYxN2U0YmI0ZSByZWxlYXNlMjctbWFpbnQKKzg4NDgwIDJiOGU2YTIxYWVhYTE5NTRiMzlkYmZhZTMyMWY5YTQzZjI4MTllYWIgcHkzaworODg0ODEgZWYyOGFhZDNiYmFlMGY1N2YyNjRhMGFiZGU1ZDU0YThiNjE3ZGE3MSBweTNrCis4ODQ4MiBiNGMxNWQ4NzA5NGQ5ZWE1MTdkZmRmY2RkNDVkYzU4ZThhNzEwYTg5IGlzc3VlMTAyNzYtc25vd2xlb3BhcmQKKzg4NDgzIDIzZGUzYWE3MjIzMDZkMmJmZmViMGZlY2ExNDU3NWIxMWNhMTkzNzcgaXNzdWUxMDI3Ni1zbm93bGVvcGFyZAorODg0ODQgZjVlOWMxN2I4NWFkMDZiMTdiZDVkMzFjZjg4MTViMGZkNTM3MzEwZSBweTNrCis4ODQ4NSBjNjA2MGVmNWM0MDUxNDZjZWQyMmJlYTQ4ZGRiMjQ4OWU4OTVmZjRmIHJlbGVhc2UzMi1tYWludAorODg0ODYgNDFjNTI4MDMzMGZkNjI0MmQ3MWUzZjBhOTIyMWU3NzI4NjExNTIyYiBweTNrCis4ODQ4NyA0Mjk1ZTA5NWFkNGZiOGU5MmJjZjYxZTYwYTUwNmU5ZGY0NGE0MWRiIHJlbGVhc2UzMi1tYWludAorODg0ODggYjU1ODY5NTk4NjgzZmE5YjViN2UwNDkxMzJhOTAzNGQwNzMyNmU3YyByZWxlYXNlMjctbWFpbnQKKzg4NDkwIDc4NjYwNzE0ZjE3YTM1NTdmOGI1ZTQxN2ZhYmJhMjJjNzQzZWVkZTAgcHkzaworODg0OTEgNjdlYzI2Y2M0YjRmN2UzMWQzYzNjZDQ4NGJmYzcyNzc3NWNkNzdiOSBweTNrCis4ODQ5MiBjZTIwYWM0MWUzMWZkOTQwNDA0Y2QwOGM2ZjgzMmQ5ODYyMDZkZDQwIHB5M2sKKzg4NDkzIGZlZDc2OGI3MTEzNjE4M2Y2ZTI0MjU2NmY4MGFmYWVhNDNkYjdlOGQgcHkzaworODg0OTQgN2Y4NWZiYzE2Y2FlZGQwODM4MjgyZjgxY2RiOThkNjU3NDEwY2UzYiBweTNrCis4ODQ5NSA0NzNkMjMzYTA0NzgxZGZmMzc5MjczOWY5NzhkMzQ0MDA2OGVhNjdhIHJlbGVhc2UzMi1tYWludAorODg0OTYgYWUxODZiM2IyYzU1NmUxY2IzMmIzYzFlOTg2N2EwZDVmZTM4MzIzNSBweTNrCis4ODQ5NyAxOWRmNDc4MzliY2FiNTVmN2Y2MzE5MzZhMTE2OGI0ZDNkOTFjYmNlIHJlbGVhc2UzMi1tYWludAorODg0OTggZWEyNjBkMzkzY2RlZTNjM2UzNjE0Zjk1N2RlYjcyZGJkNzdmYjA3MCBweTNrCis4ODQ5OSBjOTBlMGU1YjBkMjU0NzEwNTFlMmFlNmMxMzJmNDU0Zjc0M2JkYWZlIHJlbGVhc2UzMi1tYWludAorODg1MDAgMzcyYjJlZjBmZjM3YjZhMWFhMTJlNDMwY2IyZGVjOTk5YjY0NzkzYyBweTNrCis4ODUwMSAyNDMzOWJmMGM3ZTY2YTdlYTFlY2EyYTUyYzI0ZjI4ZmNhZDRmZWY1IHB5M2sKKzg4NTAyIDMwNDExYWYzNGVlYmZhZmE3NTVmZTMzOGZmMzhlNTQyZDM3MDJhNWUgcmVsZWFzZTMyLW1haW50Cis4ODUwMyA1Y2U0OTkxODBkMjQ1ZjgwYjY2YTA1N2U4ZGVjYjJhMzM1YWQxZGM1IHB5M2sKKzg4NTA0IDk4MDY5Nzc2OTg2NjIwNWQwOWQzMDAyMDFmZjg1MjU3NzA0ODdjM2YgcmVsZWFzZTMyLW1haW50Cis4ODUwNSAyNDdhMjgxMDkzMmFhNTVjMTI1YzU2MTA2NWMyOTI3NDM0YzQwOTU1IHB5M2sKKzg4NTA2IGE3NTE1YTk0ZmRiNWI1MDU4OWIyM2YxMjFmNjBlZDRhOGRlZjZjMWMgcHkzaworODg1MDcgZTJmOTZiZDI5MjUyZTYyMWJiOWUxNTYzZmJiYjBlY2E4MjMxZGU1MyBweTNrCis4ODUwOCA2NDgyZGQxYzExZWQxYzFhZmI5OWQyMzRlMjgzMGYzNGM5ZjM0Nzg2IHB5M2sKKzg4NTA5IDE2ZWU0MmRlMGZhYjkyZjE5MGM4Y2NhMjc0Yzk0ZWQ0NmI0OTFkMWQgcmVsZWFzZTMyLW1haW50Cis4ODUxMCAyYjU0YmU2NTUxNjk4YTcxODU2YTUyZTVjMWFhZDEyMmM4ODQzMzM1IHJlbGVhc2UzMi1tYWludAorODg1MTEgMzI3YTVhNzhhMjU3Y2ZlMjdhY2Q5MDFjNjVlMDg0YmE3MTk2MThkOSBpc3N1ZTEwMjc2LXNub3dsZW9wYXJkCis4ODUxMiAyZjhlYzc3ZDMyY2Q0NzE4YWFjNzQxNTU1M2JmNzQ1ZDU4MzBhYmEzIHB5M2sKKzg4NTEzIDA1ODZjNjk5ZDQ2N2E2NGMzZTIzZGQ4NzZkMmQzNjJlNjMzZDg5MGQgcHkzaworODg1MTQgNjI5OTQ2NjI2NzZhN2JlNzkwZTBkY2NjNjMyODE4Yjc4OGY2YmYyMSBweTNrCis4ODUxNSAwZTlmM2JiNjNkMDBiN2FhNTBkZGJiMWU1NzY4YTA4ODFlMjJkZDZlIHJlbGVhc2UzMi1tYWludAorODg1MTYgMmY4OWNiYmVjMGI0ODRkMTFiOTY0MTA1ZDBkYzMyNDk2ZmFmMjhhOCBweTNrCis4ODUxNyAwODc0Njk4YjEyMDFkZjljMmVjOTVkMDlkZTgxMDg4ZDVkYzkxODkyIHB5M2sKKzg4NTE4IGVjM2MwNjc2MTg1NmRkNjMwYTk1ZTM5OTMxNjlhZmI3ODhlZTdlYzMgcHkzaworODg1MTkgYWMwZDhlMjFhNDdkZWI1NWVhYzkyNzQ5NGEyMzhjMTg2MmQ3MDA0MyByZWxlYXNlMzItbWFpbnQKKzg4NTIwIDQ0Y2M5ZWY0MzEyN2Y4YjZkOWI1ZmE0MWZjZjdhNjEzOTdiYTdkYmEgcHkzaworODg1MjEgZjJlZGFmNjJkODIzZmI2NmZlNzlmNGRiZjFiZmY3MzgzMjIxZTA4MCBweTNrCis4ODUyMiA3ZjhkYTEwYmZjZWZjZjM3ZWRjYTc5YThiYWRlNzhmYmQyMWIyY2QwIHB5M2sKKzg4NTIzIDE2NWQwMTVhMmJhZjA3ZjMzN2QwZjU2MmQzMmRjNWYyYmJmMGM2MjggcmVsZWFzZTMyLW1haW50Cis4ODUyNCAwM2Y3YWZiYzE2MDg0OGQ0ZTE3YjY2MGQzZGVmNTdkNzI5NGZiZDE5IHB5M2sKKzg4NTI1IGM4YzU3ZTc2NjQyODUzMWRmNjhiYWExY2Y1N2ZiNzY2YmY3MDkyNmQgcHkzaworODg1MjYgNzQ4NjFhNDJhNmU2YTI4OWMzYWI1Yjc3MTliZjBjZjRmMGI3NTAyMyBweTNrCis4ODUyNyBiYTFhZWIzNjIxODIxZjIyMjEyOTE0ZjU1ZDg3MThkNjU0YzUxZjZhIHJlbGVhc2UzMi1tYWludAorODg1MjggMDM1ZWZkYWY4MjI5Yzc5YzQyMGQxMDQ2MWIwNjhkZTRjNzY0Y2ZlMCBweTNrCis4ODUyOSAyMzI1ZmUzNmFhMzQ1NjYzZTk0ZWZkZjI0NjJkMDYxN2ZmZTRmNzY5IHB5M2sKKzg4NTMwIDVhOWQ5MGQ0Zjg5ZWI4MGYxMzQzYmNmMzg1Yjc3ZTg1MTVmZWE4NmQgcmVsZWFzZTMyLW1haW50Cis4ODUzMSBhYmExNmE1NjgzZDM2ODVlZWUxZDYxYWE3NDU2M2NiNmMxODBlY2FiIHB5M2sKKzg4NTMyIDMyMzg2ZmE2N2ExMmE3NjkxNzMzN2EzYzNiODM4NDI4NjdiMTk5ZDMgcmVsZWFzZTMyLW1haW50Cis4ODUzMyBjZjkxNzZmMmE2MjA1YWRjNGYzNDA0YjZlOTI2NmQyYTJjN2NhYjg1IHJlbGVhc2UzMi1tYWludAorODg1MzQgYTFjZmU4MTVkOTdhYWQwYWY0OTJlZWY1ZThlMjI5NjU5YzUxMzIyNyBweTNrCis4ODUzNSA1YTI5OGFmYWNiOTU1NDc1N2I3ZDEyMWFlOTBjMTY3Y2ZmZTI1NTcyIHB5M2sKKzg4NTM3IGRlNWMzYTM5YWRlNzI0ZGI0MjY1YjI4ZjBmNjAwZmMzNzg1YmE2Y2MgcmVsZWFzZTI3LW1haW50Cis4ODUzOCBlOGRmZTYwMmVmYTFjZGVhOThmYzVjZTFhODhhNTUwZDZlNGRkN2E3IHJlbGVhc2UzMi1tYWludAorODg1MzkgOTg2MWRjMTE4MzIyMmZlMGJiNTliZmFlZWIxMzEzMDkxMzBiMmNkZiBweTNrCis4ODU0MCA4YmE3NjUzMjgwMzA2YTQzZjA5Mjg2ZTY5MzliZWJiZmEyY2ZjNGIwIHB5M2sKKzg4NTQxIDczMjZmMDY0ZDgzYWZlYTUyMGNhNjYzYzhmMzNmYmFlZGM5YTk4NTQgcHkzaworODg1NDIgNjA5ZjJiODIzMzUwZTQyYzI2NjRlYmIwMThjYzg1MmE2ODc2OTQyMCBweTNrCis4ODU0MyBiZjg5MDZjZTEwNGI1MDNkYzhiMjg1YjZiMzQxZDAzY2QzNDNmMWUxIHJlbGVhc2UzMi1tYWludAorODg1NDUgZmQ2ZWM1ZTA4NGEyYzdlNmUxZDM1ZTYxNGZkNzY0NzQ5MDA4NzZkYiByZWxlYXNlMzItbWFpbnQKKzg4NTQ2IGRiN2VmMzRlZWRhZjViZWI5Y2Q5MjVhNjNhMGM0YzE3MzI0Nzg0YTEgcHkzaworODg1NDcgM2U0ZDk1OWY4ZTEyZWRmZWUyZWE1ZjVkMDcxN2Q4ZWU1MzMyOGQ5MyBweTNrCis4ODU0OCBmZWFiMjMwYmQwZGRlNDBhNTk5ZjA0M2U3Y2M1MmFkZjlhNmM5Zjc0IHJlbGVhc2UzMi1tYWludAorODg1NDkgY2MzYzNhNDM4Mzk4ZGRhZjA5YTcyZmU0YjQxYzY3OTc2MTk1ODZjYSByZWxlYXNlMzItbWFpbnQKKzg4NTUwIDU3MGM1OTM5YmMwM2U3MjI4YjkyMDQwNTdmNmY5OGVhN2Y2M2M1NDcgcmVsZWFzZTI3LW1haW50Cis4ODU1MSBjYmNiMjZhOWQyYmRkZDkyMDRjYjk0MGYxZjYyZmIzYzg0NmNhMzE1IHB5M2sKKzg4NTUyIDQ1NzM5Y2E2M2ViMzQ1YjAwYTFhYjEwMTA5ODkyN2UzMzRlMmY2NDUgcmVsZWFzZTMyLW1haW50Cis4ODU1MyAyMzZjNGRjNmYwZTdkN2JiODI2NDdjNmQ4MzNlY2ViZDBlYmE0YThlIHB5M2sKKzg4NTU0IGM4YzBlNDI5NDRhMTY5N2E2OTljM2FkMmE5ODMwOGFkMDExMGQ2NmQgcHkzaworODg1NTUgMzY0ZTRjMTA2Mjk3ZWFmYWU2ZjI0YWJiOWM0MTcyNWViYzYzZDYxYiByZWxlYXNlMzItbWFpbnQKKzg4NTU2IGIyNDVkNjliNGYwYWQ0ZTdhZjg2OTBhM2Y1ZDk3NWYyZjczZTZjZTEgcmVsZWFzZTMxLW1haW50Cis4ODU1NyBjNzk2NjVmYjI2N2FhMzc0NzBjZDIzNjVkMTcyZDljN2RlMDJkNjIyIHJlbGVhc2UzMS1tYWludAorODg1NTggNjE0YThjN2I5NTI1YWQwNjI4YTJkNjRiYTFlMDBkNzkwOTUyNGQxNiBweTNrCis4ODU1OSA5MjYyOWNjYWFlNzY0NmU1NGIyYzUwMzI3ZGFkY2RjZTVmNDZkOWI4IHJlbGVhc2UzMS1tYWludAorODg1NjAgNTg1ZGIwNjgwNjllZDYxNmVlZDQ0ZjI1MzM3NTVlNDkxYzIxMmM1YSByZWxlYXNlMzEtbWFpbnQKKzg4NTYxIGVmZjJlOGYxNWJlZDA4ZjI2NWEwYWQzMGVlM2FmNTJiOGE4NTU2MDEgcmVsZWFzZTMxLW1haW50Cis4ODU2MiA1YjM1YmJiZTMyZTcwYWI2NzBkYWI0MTkzN2I0OTQzNjNiODUyMmZmIHJlbGVhc2UzMS1tYWludAorODg1NjMgZTNjNjg0MTVhMzJkMTAwYzZkZTMyY2ZiOTI3MzQ5N2U0NDZiZmViMCByZWxlYXNlMzEtbWFpbnQKKzg4NTY0IGQzNTY2NDk1MDRmOWY0NzZhNzFlNGIxYjU5MjJhZTMyNWJlODI0ZWEgcmVsZWFzZTI3LW1haW50Cis4ODU2NSA4ZWVlZTlkNmQzMmI5MTMxZmMyMWRkNzlkYjUxOGU2MTZkZmVkYWMzIHJlbGVhc2UyNy1tYWludAorODg1NjYgYzdjNzZjZmJkYjRlMDE5ZTc5ZjY2MmUzNmIxNjE3YzU1NTExOTM1MyByZWxlYXNlMjctbWFpbnQKKzg4NTY3IDNlNWYyZTJhODRhYmU0ZThkMTM0ZGM3YzY1NGI3MmRhZDllZDY2NmQgcHkzaworODg1NjggMjI2ZjAwMWE3MDFmZjM0YWZiNWYwZTg4ZWM1NTg1OGE4NTVjOWE4MCByZWxlYXNlMjctbWFpbnQKKzg4NTY5IDM0YWUzMTYzMThlZjQ1NGY5YzIzOTNkMmUzYjdkNjAwYWY3ZjAzOTMgcmVsZWFzZTI3LW1haW50Cis4ODU3MCA3MjBhMmY0NGNiZjJjY2EwZjc0YzNkM2U1OWI1NjgzY2U5ZjUwMmY0IHJlbGVhc2UyNy1tYWludAorODg1NzEgNzhkYjNkMGM2ZGI3MmExYjZkMTlmMDk4MTZiNDY2OWIyOGU4ZDE2ZCByZWxlYXNlMjctbWFpbnQKKzg4NTcyIGIzNTZiODcxYmY2N2QyYjUwZmUzMGJlODdkNTA2Mjg0M2FkZTZhYjUgcmVsZWFzZTI3LW1haW50Cis4ODU3MyAwMWM5NmIzNzU4NmRkNjdjNDlkZmU3ZDZjODFhOWIxMTQyMzNmZTM1IHJlbGVhc2UzMS1tYWludAorODg1NzQgMDM1MjY3ODEyODJhZTI1OGJiNmQ0ZDE5NWRkNzhmNTM3YmVjZWI0MyBweTNrCis4ODU3NSA3NDBhYjkyN2JmODk4YmRjY2M2ZjE0ZTk1MGUzYTE0ZGQ3OGI5M2M0IHB5M2sKKzg4NTc2IGIxN2EwNjQ5MjliMDRjOGY3NmEzZTY5MmMwMmEwYjlhODViMGYxYTMgcHkzaworODg1NzcgOWZmN2JjMzYxMDYwNDMzOGRlZmFkMWFhMmUzYTNiZjRhN2YwNzhlZiBweTNrCis4ODU3OCBlYjVlZDNkYTY4NjIzNGEwMTU4YjRlMWIyNDVmZDdlYmVjOWViNDk4IHB5M2sKKzg4NTc5IDE3NjJkNzllYWI2NWY1ZmMzYjYyOTdiNTU5MzQ3NzQyOTNkZTBiNzEgcHkzaworODg1ODAgN2ZkODBjNjFkZGFhM2Y4MGViMjRhZTRmMjYxMzJmYmEwYWY3OGFiYiBweTNrCis4ODU4MSBkM2Y5M2ExMmQ2YTkxNWVlNDIzMDEzMDAwOTZlNzFiYTc5NjRkZjBiIHB5M2sKKzg4NTgyIDYzNmIyYjU1MjA3M2QxZjBiODJiZWJhMGEwZWQ0NTdlYjQ3MjQ2ZTggcmVsZWFzZTMyLW1haW50Cis4ODU4MyBmZDQwMTEwZDVkODczN2Y4YWQ3YTIyNDkyMmM5MjA5ZDM0ZjY3YTdiIHJlbGVhc2UyNy1tYWludAorODg1ODQgYmQyNTJjMTJkYTFkODgzYzQxZDNiYjYwYTI4ZjFhMWEzZDM4NjNhYSBweTNrCis4ODU4NSBmNGIxYTY1Nzk1NDE3YjRiYmU4ZWQ4OTQ3YjllY2IxODJkMmFkYTNkIHB5M2sKKzg4NTg2IGJlNmMzOGQxODE3YjMwMjBiNzYwNDAwYWEyZjVhZWY3MTdhOWM5MjMgcHkzaworODg1ODcgMzZjMWI2OGIwNTg2NWZiOWZhMTg5YjViOWUwZDFmODgwODhhMzJiZCBweTNrCis4ODU4OCAxOWQwN2ZhNDIwMDRiMTI0MWVmNjkzMWE4YjIxZmY4MDNiY2ZmZjA5IHB5M2sKKzg4NTg5IDg0MmZlZTZhZTBlNTAzMDg5MGVkZjVkNzA5M2JlNWI4OWE1Mzg2ZGQgcHkzaworODg2MDIgN2FiNTY5YjE4Yzk4Zjg4NGFiYTVlNWNiNTI3NTFmZjYzZmE5YWE3NCBweTNrCis4ODYwMyA4YzViODExNDg0YmMyZDJlZTEzNDZhM2RhNTQ2NTJjZTgzNDkyMGUyIHB5M2sKKzg4NjA0IDEyY2E0NzdjNDM3OGMxNzU4ZDA5OTk1MTZlMDliNDQ5MWNmMGFkNzMgcHkzaworODg2MDUgYjdlODVmZDBkMWM5MmRiOWZmOWIyZDA3ZTdlYTdmZjBmYmI2MTk4NSByZWxlYXNlMzItbWFpbnQKKzg4NjA2IDE4NjM2Yjg3MWQwMTc0MjI5OWNmYTgwZDM5ODU5ZmRjMWZiZThkNzYgcmVsZWFzZTI3LW1haW50Cis4ODYwNyA0YjYwNTIzMjBlOTgzYWQ3OThkNDFkMzBjNDk2ZmQ5YzE3MjEyNDA3IHB5M2sKKzg4NjA4IGEwMzgzNDI4NzJhMzRjNTRkNzA5M2E3NDY4MzhjMWVhZmE2NDFjMTcgcHkzaworODg2MDkgYTllYjAwODdiNjAyMTQzYmQ2NTlmYjFkYTk1YTA3N2YyNDM4MGEzZSBweTNrCis4ODYxMCA3ODU5MzNiYTQ4YWM2YjA0NzYxZTUwZjQyMDliYzYwODAxNDZlNGUyIHB5M2sKKzg4NjExIDY2ZWQ3MWE2ZTI5YThmMWJmMzliYmEzZjY4YjI2ZjBmYTYyMDg0NGUgcmVsZWFzZTMyLW1haW50Cis4ODYxMiA2NzViNDhjNGM4OGExYmI3MWU4YmFiNTFlZGQwNzM4YzRmMWQxNjE3IHJlbGVhc2UyNy1tYWludAorODg2MTMgNzA2YmU2ZWU5NjY4YjQ2NDQwNWJkYjY1YjZkODM1OTcxZmQ1YTkzMyBweTNrCis4ODYxNCA2ZjEyYWFkZmZjOWZiOTFkM2UxMzlkYWVhNjU2NTcyYjgzYjczZGEyIHJlbGVhc2UzMi1tYWludAorODg2MTUgOGIzZWY3MTliY2VkMmRhYThmODQwYjAxOTE0MmM2YjNlNTA0OWMyNiByZWxlYXNlMzEtbWFpbnQKKzg4NjE2IGRiNDZlZGEyMGZkMDI5ZmI3MDEyMDk0YzRhNDA1YjQxMzE3YzhlNGMgcHkzaworODg2MTcgYTc0OTI0ZWVhODYxYTlkZTk2MWY1N2QzZWU3ZDA2NjNmMjFkOTk0YiByZWxlYXNlMjctbWFpbnQKKzg4NjE4IGY3MWFjYzRiMjM0MTAyYjY3NTc5YmVkMmMxMzdlMGYwMmU2N2U2NWEgcHkzaworODg2MTkgODc0MjVkYzIzZjI2ZTVkZWYxY2UyYzZhMDJlM2IwMzNlZDMwMjJmMiBweTNrCis4ODYyMCBkMjE5MDA1MTE2NzVjZWE0OWE5MGM3YWNiYjAyYTFlZTVlZmM1ZDMwIHB5M2sKKzg4NjIxIDI3OTYxZGNhODMzMzAyYzFmMjE1ZjBjOTY1N2YwODJlOTI5YmMxMzQgcHkzaworODg2MjIgMTdkMWM2Y2VkZTdlZDNiY2NlMjUyMTUzYWVkYWE4MWIyODRkMDZjOCBweTNrCis4ODYyMyA1OWY5ZWQxMmYxN2E0ZWZlZjQzMTgzMDQ1ODVkMTYwMmVhYWQxY2ZmIHJlbGVhc2UzMi1tYWludAorODg2MjQgM2QzYmE0NTJmOGFkZWM1MzNjZDMyODYxYmM3Zjc5N2EzMzE4MjliMyBweTNrCis4ODYyNSBhYWFmN2I1OGUyMDkwYzJlYjY1MDg2Y2VkMzQzNGIwYTZjN2MwMDkzIHB5M2sKKzg4NjI2IDI2N2RiZDZjOThjMzE5MzAxZTk1YzcwMWNiYzFhODcwNmVhMjQ1MjMgcHkzaworODg2MjcgNTNhNDVmYjcwNzg2ZmEzZGNlZDEzMWQ3NmY5MzdhNGQ0ZTY4ZmQ0NSBweTNrCis4ODYyOCA3M2M1YWJiNDEyOTZkNjk5NzRmNmIyMzFiMTM5OWQwMmFiMGFkZThlIHB5M2sKKzg4NjI5IDJhMTlmMDI1Yjk3NGFhNWJkZTMzM2Q4YzE4YjA1MGU0OWZjMWExYzggcHkzaworODg2MzAgYTg2N2YwMmQ4ZjhkN2Y2YjJkOWMwZWU1MTcxZWUzZDlkMDdhNDE4MSBweTNrCis4ODYzMSA2NTRjOWYxM2NmZTllMTA3MmY0ZmJiMTIwYTU2ZDU1YzAyYzgzY2UxIHB5M2sKKzg4NjMyIGY0NTU1ZDM0ZjM0MGEzMDliMTAyYjAzMTE2Mzc4NjdmYjFhMDQ5YmMgcHkzaworODg2MzMgYjMyMjZhZDlhMzk4ZGY5ZGZiNmY1OTA3MjI3M2IwY2YxNzliYWU2YSBweTNrCis4ODYzNCBiYThlMzAyYjYyNmMwMDhkMWQzMWYzOWY4OTZlZWM3YWNmYTgxNzMyIHJlbGVhc2UzMi1tYWludAorODg2MzUgYzZkMzAzYjk5YzgyYWFmMjhhOGNmMTgxZjc5MmUyYTQ0ZjQxNmM0YiBwZXAtMzE1MQorODg2MzYgNGRkOTNkMGY1ZDFlMDc4ZGU3MzE0NzliMjMyOTJlYTMwNTlmNzE0ZiBweTNrCis4ODYzNyA2ODA4ZDVkYmExZWMxM2YwZmE5ODhiYTkyNWU4MWRmZDVkY2I0NjRkIHBlcC0zMTUxCis4ODYzOCA5ZWIyMDJlNjMyMGU0YWRjOTdlZGM5YzI4OWY2NzE5M2YwNWRhYjJkIGVtcHR5Cis4ODYzOSA0MDkyMjk2YTNkOGRhNWIxZjFhMDYyZmFjMjM0YTE0YWI3YTg1MWI1IHB5M2sKKzg4NjQwIDdmYTg2YTkxOTU2NzJjOGQ4ODg0ZWI3NjA0MmRjZTAzMjI1YjM0YTEgcHkzaworODg2NDEgNjBhNWI0YjIzNTVkZTVmNzM2NjY1N2M4M2ZjYjVkMjdmMTkxNGMyMyByZWxlYXNlMzEtbWFpbnQKKzg4NjQyIDBiNTk2ZmY2ZDQ2OTc1N2UyNzMyMDE3MGMzZjY4ZTJhMWE4OWYxZWUgcmVsZWFzZTI3LW1haW50Cis4ODY0MyA3M2RhZjkxYzYxNWM1M2NjNzhiNWQ0OWM4NjQwYzVhYWVjM2JiYjllIHB5M2sKKzg4NjQ0IDc2NDFmZTA4OWRhMWRhZDdjYWYzZjA5MzI4ZGQ0YTkwMGQ2NzNjM2EgcmVsZWFzZTMyLW1haW50Cis4ODY0NCA5MDdkNWIyZWQ1YTE5ZjVlMjNkNjE1ZDJiMjE0YmUyMWFhMGZiMjhiIHB5M2sKKzg4NjQ1IDU3MTdkZDIxNjZlZTA1ODQ2MjUyZmVkZWY3ZDhkNDk4NTQ1MjMzNDkgcmVsZWFzZTMyLW1haW50Cis4ODY0NSA3ZWVhMmE1NzRkZmM4NGM3MDkxODA5NDUzODhjOGRkZDYzM2JiNWMxIHB5M2sKKzg4NjQ2IDc2NGI5OWVlOGM4MTA5ZjQwY2Y4ZjAyNjNkMTYyMzZiZGJjZjFmNWUgcmVsZWFzZTMyLW1haW50Cis4ODY0NiBjODZmOTAzNDBjZDdkMjI3MmQ2N2ViMWM5MGY0MTVlM2VhYWM3NTNhIHB5M2sKKzg4NjQ3IDA3YWZmYTAzMzhiYWQyOTQxMDUxYTNlYzg2OWNlYjRlZjRmZjIwZTkgcHkzaworODg2NDggMzFkNGIwNGNiNWIwNTY3ZDJlZDRhZjc3M2QxODhmODQ1ZmNhZWRlMyByZWxlYXNlMzEtbWFpbnQKKzg4NjQ5IDk3ZDA1MGMzMTcyZjllMmVkYzgyYjI5MjI4ZGJkNjg5MWZjZDJiYTAgcmVsZWFzZTI3LW1haW50Cis4ODY1MCAyNzZkZTliMjkzMDMwYzEwNGRlYjdjNjc1ZTNhZjY5OTY5YTk4NzQyIHB5M2sKKzg4NjUxIDM3NGYwYjIyZTRhNGM1YjFiZTQwZDA2MWQ1Zjg0NjliYTFkNTRiMmQgcmVsZWFzZTMyLW1haW50Cis4ODY1MiAwOTEyOWFhZmI5NTM2YmRjZmJmZDdhNDRjM2JjMmUxZDAyOTcyZTM1IHB5M2sKKzg4NjUzIGZlZDJjNmQ0OWYxOTgwMDZlNTRiMzc5MWE0OTVmN2JiYWNiZTA4OWEgcHkzaworODg2NTQgOTc5ZGE4ZjEzOWRkM2Q2ZTIxOWYwYmFiZmY0NzZmOTVjY2U2YTUyMSByZWxlYXNlMzItbWFpbnQKKzg4NjU0IDZhOGZhMmU5YjEwNTVjYWQ3Y2MyMTgzOTkwM2Y5ZjM5ODNjMzU3ODAgcHkzaworODg2NTUgY2QxNDc4Mjg4NmNhYTI4NTAzYmIzNTZmNWIzYzM3YTQxZTIxMWI0MSByZWxlYXNlMzItbWFpbnQKKzg4NjU2IDcyMmFlZWI1N2VhYmJkZmY5YmY1MWI0Zjg0M2VhMWZjNDBmZWQwMTkgcHkzaworODg2NTggMTAyNTZiZDY4Nzg3OTE1ZjhmM2ZmZDU5NDYxMWQ2NzAwNjkwMjdlMiBweTNrCis4ODY1OSA1OWY3NGFhZDk3MDMxZjE5ZGVhZGNlOGY4NjkwNDVhZGZkOTg0NzkwIHJlbGVhc2UzMi1tYWludAorODg2NjAgYzc3YjI1YWRmZWMyM2M0MTQxYTUxY2RlMWE4NTkzOTVkOTMxMGMxNSBweTNrCis4ODY2MiBhNTgxMjljZGQzNjU3MzI0YTJlZjA4ODRkNDlmZGM0ZGJmYjRjNTE2IHJlbGVhc2UyNy1tYWludAorODg2NjMgODY4N2ExYjczNTE2Y2M1MjAzMWM3NzA5ODJkOTJkOTJmYmU0ZGJkYyBweTNrCis4ODY2NCAxOTA5YzEyZWYwNmM3YzFjMmUyMjQyNjI5YzNiODJkMWQ3NzQ0ODc1IHB5M2sKKzg4NjY1IDZjZWMwOTEwMjBhMmM5OTY5YWM4YWEyOTdkYWYyZjM2ZGVkNDlmZDQgcmVsZWFzZTMyLW1haW50Cis4ODY2NiA3NDJkNzNhOTk0MjU3NGI1MTMwYzk0ZGUxZjNhMjg2YzFlMjI3MGNiIHJlbGVhc2UyNy1tYWludAorODg2NjggNjUwZDE0ODIwYmQ4YzY2ZGY0YTBiYWE1ZDFkZGFlM2Q0MDg3NWIwZiBweTNrCis4ODY2OSBhOTU2NTkyNWJhNzA2MWQ2MzcxODQwNjRkNzhmYjUyZjhkYzgyYjIzIHJlbGVhc2UyNy1tYWludAorODg2NzAgYTViNWZkYTY2ODljNjUzZDg1ZDZmNDdlN2UwYTQ2ZDRlMjFkMWIzZCByZWxlYXNlMzItbWFpbnQKKzg4NjcxIDJmMDdkMzc1Y2U2ZWVjYWI0NzFlNWQ4ZWJiODg5MTA2ZjE2OWRhMTAgcHkzaworODg2NzIgNDU2NTBlYjM0Njg1MTE3YTdiODZmNzU2ZmIxMjZkY2IyZjNmZDUxMSByZWxlYXNlMzItbWFpbnQKKzg4NjczIDIxNDM2ZTQ4MTYxZmMzMTcwMjAxMDAxY2NhYmE3YTU1YjM5ZGI1NzUgcmVsZWFzZTI3LW1haW50Cis4ODY3NCBkYzg2MjZlMDg1NzdkNmIxZmQxMmU0MGZkNTljOWU1MjMwMDhkNmEzIHJlbGVhc2UyNy1tYWludAorODg2NzUgNzI4ZmJjMjYzNTljMTA3ZmY3NTVjZTViYjZiOWIzYjA4MGYxYmVmMSBwZXAtMzE1MQorODg2NzkgY2JkMDYwODEwM2Y2MTA2ZWZhMWQ2NTIzZDllMGVhYjk5NGRjYTE0ZiBweTNrCis4ODY4MCBiN2Q2MmJjMDE5OTg4OTIxMmJkY2Q0MGQ1ZDA0YTNjYTk4OGQzNDVmIHB5M2sKKzg4NjgyIDJkZGNhNTVlMDk4ZGRhMmIxYTY4NTZhMzU5ZTE5Zjc4ZDk4NWM2ODggcHkzaworODg2ODMgYmJkZGFjNWMxOGQzOTgwZTc2NThhMDliZDRmZTg1NDE3OThjMzUzYyBweTNrCis4ODY4NCA3YzZiMjFkYjAwZTNlM2YxNTVkMmI4YTkxZDEyY2QyODQ4MjA4NzRlIHB5M2sKKzg4Njg1IGEyZDYxMTE3YzJkMjY0OWY5MDkwZjY4OWFhODVjNTU3NWE2ZDczMzkgcHkzaworODg2ODYgMTBiODM4ZjZlNWExYTk0YmE3M2ExZDNjNjVjOTUwY2RkOGQ1ZGIzMyBweTNrCis4ODY4NyBmZGYzMmZhMGY0NDBlNzFlNTBkMGZmYzM1MjI5ZDZhMTRjN2QyYTQyIHJlbGVhc2UzMi1tYWludAorODg2ODggYjI5NGZmNzU3MzM2NWNkZGNjYThhMjdjMTY0OWZkMThkMTk5NDQ4YyBwZXAtMzgyCis4ODY4OSBmOGE3N2ZkNjc1ZjVhM2NlMDUxZWU0MDRjN2I1NmRiMWM3MmViZjFkIHJlbGVhc2UzMS1tYWludAorODg2OTAgNDQ3MzRkMzc1MzkzMTU0OGFjNGE4ZWQ5MjgyYjAzNDliOGI2MDE1MiByZWxlYXNlMzEtbWFpbnQKKzg4NjkxIDI2MTFjYmQ3NWM0Zjk3MWNmNmZiZjZiMzM3Mjc5OTY2N2I1OTUwMzAgcHkzaworODg2OTIgYTM2NjA5NmI5NWFkMmE2YjVmOGE4NmI0YTkwOGQyMjg3MWI4Y2RjOSByZWxlYXNlMzItbWFpbnQKKzg4NjkzIDE3OTczMDBmODdiOTk4NjViNjY1ODFjZWRhYTg0NzZkMjQ1ODc1MWYgcmVsZWFzZTI3LW1haW50Cis4ODY5NCA5YWNjOTAyMWYxMWUzMDIxODM2Yzg5Y2U4MjU4M2JiZjhlZjk3YTkzIHBlcC0zODIKKzg4Njk2IDhlMDdmYzk0ODY4MDY4NDkwNWYyNmVjYTRlNjJjYjhmYmRhZWQ2NDggcHkzaworODg2OTcgOWI3MjU0NjcwY2U5ZGEwMDI3NTNjYTAwYzI0OGVhYmY1ZGRmM2ZhZSBweTNrCis4ODY5OCA3MmYzMGY4ZWYzMzFlOWI1ZjUxNDBlOGYzMWVhN2RjYmViOTAwMGEyIHJlbGVhc2UzMi1tYWludAorODg2OTkgYjgyYzNlNTkzZGI2NTU1ZmI4MTY1ODE2YmM3YTI5Y2ExYjIyN2M0NiBweTNrCis4ODcwMCAxZDE5ODUxOGNiODc1YzM5ZTUzYWVlM2FmN2Q1NGE2NmZjMTJkM2YzIHB5M2sKKzg4NzAxIDVkYzM0OTNlMDdhOWYyYTgzMGU3OWFiMzA4MWMwNjQ5MDMwYzNkMTYgcmVsZWFzZTMyLW1haW50Cis4ODcwMiBkYTk1NDQwZDkyYjM2YjAwODIxODcxMTE1ZDMzYjBjNTEwOGMxMWYzIHB5M2sKKzg4NzAzIDczYTQ5OWYwZWFmMWIwYWVmMjg0NGE2MWExOWMxMzQwOTk3ZjhkN2MgcHkzaworODg3MDQgODdkZTAxN2RhNGJmN2NiM2Q2MDI3NjUxN2QyMTgzMGIzYWU5ZTBkNyBweTNrCis4ODcwNSA3MjkwYjhmM2M5ZmI5OTg0NjY5ZDA4MDdlOTg0YmVjNzEzNTEzZjAzIHB5M2sKKzg4NzA2IDMzZTc2OGQyM2IxNmE1NzEwZTRmNTIyYTYyMDhlOTJiY2MyZDNjZTkgcHkzaworODg3MDcgNmYxMTdkMjdhZDFjNWU2MzIzOWRkNTJjMzI1NjJkODI0MjVhZjg2NyBweTNrCis4ODcwOCBjN2E5MzYzNjIyODE5ZjNlYWI3NzJjNzgwNDM0YjIzNDcxZmUwYjI1IHB5M2sKKzg4NzA5IDM3OGVlMzI4YjYwZTBiMTYzNmFhMjQ3NTdiZWExYTE1ZjkyODFhZTQgcHkzaworODg3MTAgYTFkYmU1M2YzNzk4NDVmZjYzNjcwOWIwOGFiNDU2MzM3Yzg2NWM5MyBweTNrCis4ODcxMSA0ZGFjNDc2OWVhMjQ4YWFjYzgzMDc3ZTU3YTY0ZDJjMTM0MWMyM2FhIHB5M2sKKzg4NzEyIDZiMTJkMmI2OGYyNTMzM2RkNWFmZmU2ZTNlOGY0NmI1NWNkNDI0MjQgcHkzaworODg3MTcgMGRjNmE5MGRlZTIxOTEyMmFiZjU2NmFjODU4YWVhNjVjNDMwMDgyZiBweTNrCis4ODcxOCA2YzhlYzVmOGI5ZTUxYmNlMTU0ZTExOGVmYTkxZjcxYjAwOTZlYmQwIHJlbGVhc2UzMi1tYWludAorODg3MTkgYTRlN2ZiZWQ3NTNjNzMxYTU1MjY3Y2U3MTAwOWE4MGQ4MjcwNGQ0YSBweTNrCis4ODcyMCA3MzhmZWVjOWNlZDAxZmMzMTM4OTJkYjNiMTA1ODlmYjYwMjViODdhIHB5M2sKKzg4NzIxIDIwYTVhMDhjM2I2Y2E5ZDhhNDA4Njk3Yjk1NzY3MGQ1ZTNkNjI5YzAgcHkzaworODg3MjIgMjA4YTUyOTBmZDM4ZWM4YzRmZTEzOGU3OWU4MjNkMDE4NzQzZWNjNiBweTNrCis4ODcyMyBhMTcyNzA2M2E3ZGZlYjBkMmE2M2E2YjFhMjlmNDZmZWMzMmIwNTgyIHJlbGVhc2UzMi1tYWludAorODg3MjQgZjUzOThmYjgxNDI4OWIyNGE4YjA1ZmFlZDM0NGY3ZjkwYjc3NTZkNyBweTNrCis4ODcyNSAyZmNlOWM3NDJjZGVhYjRkZWQxMTE1MmVjYmRkOTA2N2UxMGVmMGUyIHJlbGVhc2UzMS1tYWludAorODg3MjYgZGRjMGJiNmE3YjdjNzJjN2FiYjdiMWM0ODBkZWE4ZmQ5MThkYjljZSBweTNrCis4ODcyNyA1OGNiMGZlMDZkYWEzNjUxOTUzNTUxYmU1YjExYjE0NTAxNTQ3YjAwIHJlbGVhc2UzMi1tYWludAorODg3MjggOTY1YWI5OTExZmNkMGVmMTRhZmUwZGE5ZjgzNTU1YzY4OTc4ZTdkMCByZWxlYXNlMjctbWFpbnQKKzg4NzI5IGYyMDQ2ZGZjYTczMTEzNjcyZDU5YjUwNDZmZjg2YjBiMDNiNDFkMDkgcHkzaworODg3MzAgYjUyODFmNWZhZGU0ZGQ1NjdmMWYxZDU2ZmFjOWNlN2Q1N2ViOWY5OSBweTNrCis4ODczMSBiYzllZmJiZTYzY2YzZWIzYTNiN2MxYjkyNDZjNTQ0ZjZmYTVmZWIyIHJlbGVhc2UzMi1tYWludAorODg3MzIgYTgzODk0NjhlNjUxMzdjNTA2NWY3MDJjODQ2YjljMGU1NjFlNTk3MiByZWxlYXNlMjctbWFpbnQKKzg4NzMzIDA4ODA0YWVhMDhmMWM0OGExNmM4NDlkYTEyNzA3ZTUxYTg3ZDg2ZDkgcHkzaworODg3MzQgMmY1Zjc1NWIyNjg3OGNiMGZiMzVjMGM1OTA3M2FhZjE4ZWJlMzY4MyBweTNrCis4ODczNSBkMmI1YmRlNWMxZmE0Yzk0YTc0N2M2NzAxNjNkNmFjNzAxZjk2MDk2IHB5M2sKKzg4NzM5IDFhMDViYzM2YTMzNDBhNGU2YjU5NjE1Mzg1NDNmMTBlOWJmOGNmN2EgcmVsZWFzZTMyLW1haW50Cis4ODc0MCAzZjcwYzU0ZDg2ZDg5YWRjZjdhNzQ1MjAyNTk2N2E4ZjcwYmUyOWNmIHB5M2sKKzg4NzQxIGUyZGZjOGYyNGQzZjZlYTgzODYzZDJlMzJjMGMzMDNlMDI2YWFhZmQgcmVsZWFzZTI3LW1haW50Cis4ODc0MiA5M2ZkMTY2NzA3NzRhMjc3YjkxNzM5MDQyNmI4NGMyOGFiNzk2YzdhIHB5M2sKKzg4NzQ0IGU3NDIwOWI5YjJmNTI4OGY5MzdkNmUzNDExYTJjZjEwYTg2NDZiMDQgcHkzaworODg3NDUgZTdiNmFkYmE1NzFhYTkzYTQ0MTQ1ZjBlYmY3YjViYmEyZTM4NTkzMSBweTNrCis4ODc0NiA1MGIzOGU0YjAyMzEyNjdiOTE3NTVjNGQxYTAwNzIwZjM4MTk1MjY4IHB5M2sKKzg4NzQ3IDBlNzE4MGU0YzNjZGI5NDg0MThiYzE3YjU3NGQxZmY2NTE0MjlmNGQgcHkzaworODg3NTIgODVhMzRhMzE2OTY5Mjc4NTkzZDQ1NGE4NmVmNDNhMmY3NmMyZDc2YyBweTNrLWNkZWNpbWFsCmRpZmYgLS1naXQgYS9NaXNjL3ZhbGdyaW5kLXB5dGhvbi5zdXBwIGIvTWlzYy92YWxncmluZC1weXRob24uc3VwcAppbmRleCBhNjYzMDViLi4xOTRlY2JmIDEwMDY0NAotLS0gYS9NaXNjL3ZhbGdyaW5kLXB5dGhvbi5zdXBwCisrKyBiL01pc2MvdmFsZ3JpbmQtcHl0aG9uLnN1cHAKQEAgLTEzNyw2ICsxMzcsMTggQEAKICMjI30KICMjIwogIyMjeworIyMjICAgQUREUkVTU19JTl9SQU5HRS9Vc2Ugb2YgdW5pbml0aWFsaXNlZCB2YWx1ZSBvZiBzaXplIDgKKyMjIyAgIE1lbWNoZWNrOkFkZHI4CisjIyMgICBmdW46UHlPYmplY3RfRnJlZQorIyMjfQorIyMjCisjIyN7CisjIyMgICBBRERSRVNTX0lOX1JBTkdFL1VzZSBvZiB1bmluaXRpYWxpc2VkIHZhbHVlIG9mIHNpemUgOAorIyMjICAgTWVtY2hlY2s6VmFsdWU4CisjIyMgICBmdW46UHlPYmplY3RfRnJlZQorIyMjfQorIyMjCisjIyN7CiAjIyMgICBBRERSRVNTX0lOX1JBTkdFL0NvbmRpdGlvbmFsIGp1bXAgb3IgbW92ZSBkZXBlbmRzIG9uIHVuaW5pdGlhbGlzZWQgdmFsdWUKICMjIyAgIE1lbWNoZWNrOkNvbmQKICMjIyAgIGZ1bjpQeU9iamVjdF9GcmVlCkBAIC0xNTUsNiArMTY3LDE4IEBACiAjIyN9CiAjIyMKICMjI3sKKyMjIyAgIEFERFJFU1NfSU5fUkFOR0UvVXNlIG9mIHVuaW5pdGlhbGlzZWQgdmFsdWUgb2Ygc2l6ZSA4CisjIyMgICBNZW1jaGVjazpBZGRyOAorIyMjICAgZnVuOlB5T2JqZWN0X1JlYWxsb2MKKyMjI30KKyMjIworIyMjeworIyMjICAgQUREUkVTU19JTl9SQU5HRS9Vc2Ugb2YgdW5pbml0aWFsaXNlZCB2YWx1ZSBvZiBzaXplIDgKKyMjIyAgIE1lbWNoZWNrOlZhbHVlOAorIyMjICAgZnVuOlB5T2JqZWN0X1JlYWxsb2MKKyMjI30KKyMjIworIyMjewogIyMjICAgQUREUkVTU19JTl9SQU5HRS9Db25kaXRpb25hbCBqdW1wIG9yIG1vdmUgZGVwZW5kcyBvbiB1bmluaXRpYWxpc2VkIHZhbHVlCiAjIyMgICBNZW1jaGVjazpDb25kCiAjIyMgICBmdW46UHlPYmplY3RfUmVhbGxvYwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9TZXR1cC5kaXN0IGIvTW9kdWxlcy9TZXR1cC5kaXN0CmluZGV4IDkyNjlkZGYuLjZhYmFmZmYgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvU2V0dXAuZGlzdAorKysgYi9Nb2R1bGVzL1NldHVwLmRpc3QKQEAgLTEyNyw2ICsxMjcsOSBAQAogIyBidWlsdGluIG1vZHVsZSBhdm9pZHMgc29tZSBib290c3RyYXBwaW5nIHByb2JsZW1zIGFuZCByZWR1Y2VzIG92ZXJoZWFkLgogemlwaW1wb3J0IHppcGltcG9ydC5jCiAKKyMgZmF1bHRoYW5kbGVyIG1vZHVsZQorZmF1bHRoYW5kbGVyIGZhdWx0aGFuZGxlci5jCisKICMgVGhlIHJlc3Qgb2YgdGhlIG1vZHVsZXMgbGlzdGVkIGluIHRoaXMgZmlsZSBhcmUgYWxsIGNvbW1lbnRlZCBvdXQgYnkKICMgZGVmYXVsdC4gIFVzdWFsbHkgdGhleSBjYW4gYmUgZGV0ZWN0ZWQgYW5kIGJ1aWx0IGFzIGR5bmFtaWNhbGx5CiAjIGxvYWRlZCBtb2R1bGVzIGJ5IHRoZSBuZXcgc2V0dXAucHkgc2NyaXB0IGFkZGVkIGluIFB5dGhvbiAyLjEuICBJZgpAQCAtMjA3LDcgKzIxMCw3IEBACiAjCiAjIEZpcnN0LCBsb29rIGF0IFNldHVwLmNvbmZpZzsgY29uZmlndXJlIG1heSBoYXZlIHNldCB0aGlzIGZvciB5b3UuCiAKLSNjcnlwdCBjcnlwdG1vZHVsZS5jICMgLWxjcnlwdAkjIGNyeXB0KDMpOyBuZWVkcyAtbGNyeXB0IG9uIHNvbWUgc3lzdGVtcworI19jcnlwdCBfY3J5cHRtb2R1bGUuYyAjIC1sY3J5cHQJIyBjcnlwdCgzKTsgbmVlZHMgLWxjcnlwdCBvbiBzb21lIHN5c3RlbXMKIAogCiAjIFNvbWUgbW9yZSBVTklYIGRlcGVuZGVudCBtb2R1bGVzIC0tIG9mZiBieSBkZWZhdWx0LCBzaW5jZSB0aGVzZQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fYmlzZWN0bW9kdWxlLmMgYi9Nb2R1bGVzL19iaXNlY3Rtb2R1bGUuYwppbmRleCA3ZmVjZmM2Li44Y2RhNjQyIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19iaXNlY3Rtb2R1bGUuYworKysgYi9Nb2R1bGVzL19iaXNlY3Rtb2R1bGUuYwpAQCAtODYsNyArODYsOSBAQAogICAgICAgICBpZiAoUHlMaXN0X0luc2VydChsaXN0LCBpbmRleCwgaXRlbSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChsaXN0LCAiaW5zZXJ0IiwgIm5PIiwgaW5kZXgsIGl0ZW0pOworICAgICAgICBfUHlfSURFTlRJRklFUihpbnNlcnQpOworCisgICAgICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQobGlzdCwgJlB5SWRfaW5zZXJ0LCAibk8iLCBpbmRleCwgaXRlbSk7CiAgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKQEAgLTE4Niw3ICsxODgsOSBAQAogICAgICAgICBpZiAoUHlMaXN0X0luc2VydChsaXN0LCBpbmRleCwgaXRlbSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChsaXN0LCAiaW5zZXJ0IiwgImlPIiwgaW5kZXgsIGl0ZW0pOworICAgICAgICBfUHlfSURFTlRJRklFUihpbnNlcnQpOworCisgICAgICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQobGlzdCwgJlB5SWRfaW5zZXJ0LCAiaU8iLCBpbmRleCwgaXRlbSk7CiAgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2J6Mm1vZHVsZS5jIGIvTW9kdWxlcy9fYnoybW9kdWxlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjQwN2RmOQotLS0gL2Rldi9udWxsCisrKyBiL01vZHVsZXMvX2J6Mm1vZHVsZS5jCkBAIC0wLDAgKzEsNTkwIEBACisvKiBfYnoyIC0gTG93LWxldmVsIFB5dGhvbiBpbnRlcmZhY2UgdG8gbGliYnppcDIuICovCisKKyNkZWZpbmUgUFlfU1NJWkVfVF9DTEVBTgorCisjaW5jbHVkZSAiUHl0aG9uLmgiCisjaW5jbHVkZSAic3RydWN0bWVtYmVyLmgiCisKKyNpZmRlZiBXSVRIX1RIUkVBRAorI2luY2x1ZGUgInB5dGhyZWFkLmgiCisjZW5kaWYKKworI2luY2x1ZGUgPGJ6bGliLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKworCisjaWZuZGVmIEJaX0NPTkZJR19FUlJPUgorI2RlZmluZSBCWjJfYnpDb21wcmVzcyBiekNvbXByZXNzCisjZGVmaW5lIEJaMl9iekNvbXByZXNzSW5pdCBiekNvbXByZXNzSW5pdAorI2RlZmluZSBCWjJfYnpDb21wcmVzc0VuZCBiekNvbXByZXNzRW5kCisjZGVmaW5lIEJaMl9iekRlY29tcHJlc3MgYnpEZWNvbXByZXNzCisjZGVmaW5lIEJaMl9iekRlY29tcHJlc3NJbml0IGJ6RGVjb21wcmVzc0luaXQKKyNkZWZpbmUgQloyX2J6RGVjb21wcmVzc0VuZCBiekRlY29tcHJlc3NFbmQKKyNlbmRpZiAgLyogISBCWl9DT05GSUdfRVJST1IgKi8KKworCisjaWZkZWYgV0lUSF9USFJFQUQKKyNkZWZpbmUgQUNRVUlSRV9MT0NLKG9iaikgZG8geyBcCisgICAgaWYgKCFQeVRocmVhZF9hY3F1aXJlX2xvY2soKG9iaiktPmxvY2ssIDApKSB7IFwKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUyBcCisgICAgICAgIFB5VGhyZWFkX2FjcXVpcmVfbG9jaygob2JqKS0+bG9jaywgMSk7IFwKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMgXAorICAgIH0gfSB3aGlsZSAoMCkKKyNkZWZpbmUgUkVMRUFTRV9MT0NLKG9iaikgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKChvYmopLT5sb2NrKQorI2Vsc2UKKyNkZWZpbmUgQUNRVUlSRV9MT0NLKG9iaikKKyNkZWZpbmUgUkVMRUFTRV9MT0NLKG9iaikKKyNlbmRpZgorCisjZGVmaW5lIE1JTihYLCBZKSAoKChYKSA8IChZKSkgPyAoWCkgOiAoWSkpCisKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgIFB5T2JqZWN0X0hFQUQKKyAgICBiel9zdHJlYW0gYnpzOworICAgIGludCBmbHVzaGVkOworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2s7CisjZW5kaWYKK30gQloyQ29tcHJlc3NvcjsKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgIFB5T2JqZWN0X0hFQUQKKyAgICBiel9zdHJlYW0gYnpzOworICAgIGNoYXIgZW9mOyAgICAgICAgICAgLyogVF9CT09MIGV4cGVjdHMgYSBjaGFyICovCisgICAgUHlPYmplY3QgKnVudXNlZF9kYXRhOworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2s7CisjZW5kaWYKK30gQloyRGVjb21wcmVzc29yOworCisKKy8qIEhlbHBlciBmdW5jdGlvbnMuICovCisKK3N0YXRpYyBpbnQKK2NhdGNoX2J6Ml9lcnJvcihpbnQgYnplcnJvcikKK3sKKyAgICBzd2l0Y2goYnplcnJvcikgeworICAgICAgICBjYXNlIEJaX09LOgorICAgICAgICBjYXNlIEJaX1JVTl9PSzoKKyAgICAgICAgY2FzZSBCWl9GTFVTSF9PSzoKKyAgICAgICAgY2FzZSBCWl9GSU5JU0hfT0s6CisgICAgICAgIGNhc2UgQlpfU1RSRUFNX0VORDoKKyAgICAgICAgICAgIHJldHVybiAwOworCisjaWZkZWYgQlpfQ09ORklHX0VSUk9SCisgICAgICAgIGNhc2UgQlpfQ09ORklHX0VSUk9SOgorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1N5c3RlbUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsaWJiemlwMiB3YXMgbm90IGNvbXBpbGVkIGNvcnJlY3RseSIpOworICAgICAgICAgICAgcmV0dXJuIDE7CisjZW5kaWYKKyAgICAgICAgY2FzZSBCWl9QQVJBTV9FUlJPUjoKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJJbnRlcm5hbCBlcnJvciAtICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaW52YWxpZCBwYXJhbWV0ZXJzIHBhc3NlZCB0byBsaWJiemlwMiIpOworICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIGNhc2UgQlpfTUVNX0VSUk9SOgorICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICBjYXNlIEJaX0RBVEFfRVJST1I6CisgICAgICAgIGNhc2UgQlpfREFUQV9FUlJPUl9NQUdJQzoKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLCAiSW52YWxpZCBkYXRhIHN0cmVhbSIpOworICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIGNhc2UgQlpfSU9fRVJST1I6CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSU9FcnJvciwgIlVua25vd24gSS9PIGVycm9yIik7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgY2FzZSBCWl9VTkVYUEVDVEVEX0VPRjoKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19FT0ZFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ29tcHJlc3NlZCBmaWxlIGVuZGVkIGJlZm9yZSB0aGUgbG9naWNhbCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImVuZC1vZi1zdHJlYW0gd2FzIGRldGVjdGVkIik7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgY2FzZSBCWl9TRVFVRU5DRV9FUlJPUjoKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkludGVybmFsIGVycm9yIC0gIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJJbnZhbGlkIHNlcXVlbmNlIG9mIGNvbW1hbmRzIHNlbnQgdG8gbGliYnppcDIiKTsKKyAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0lPRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIlVucmVjb2duaXplZCBlcnJvciBmcm9tIGxpYmJ6aXAyOiAlZCIsIGJ6ZXJyb3IpOworICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgfQorfQorCisjaWYgQlVGU0laIDwgODE5MgorI2RlZmluZSBTTUFMTENIVU5LIDgxOTIKKyNlbHNlCisjZGVmaW5lIFNNQUxMQ0hVTksgQlVGU0laCisjZW5kaWYKKworc3RhdGljIGludAorZ3Jvd19idWZmZXIoUHlPYmplY3QgKipidWYpCit7CisgICAgLyogRXhwYW5kIHRoZSBidWZmZXIgYnkgYW4gYW1vdW50IHByb3BvcnRpb25hbCB0byB0aGUgY3VycmVudCBzaXplLAorICAgICAgIGdpdmluZyB1cyBhbW9ydGl6ZWQgbGluZWFyLXRpbWUgYmVoYXZpb3IuIFVzZSBhIGxlc3MtdGhhbi1kb3VibGUKKyAgICAgICBncm93dGggZmFjdG9yIHRvIGF2b2lkIGV4Y2Vzc2l2ZSBhbGxvY2F0aW9uLiAqLworICAgIHNpemVfdCBzaXplID0gUHlCeXRlc19HRVRfU0laRSgqYnVmKTsKKyAgICByZXR1cm4gX1B5Qnl0ZXNfUmVzaXplKGJ1Ziwgc2l6ZSArIChzaXplID4+IDMpICsgNik7Cit9CisKKworLyogQloyQ29tcHJlc3NvciBjbGFzcy4gKi8KKworc3RhdGljIFB5T2JqZWN0ICoKK2NvbXByZXNzKEJaMkNvbXByZXNzb3IgKmMsIGNoYXIgKmRhdGEsIHNpemVfdCBsZW4sIGludCBhY3Rpb24pCit7CisgICAgc2l6ZV90IGRhdGFfc2l6ZSA9IDA7CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKworICAgIHJlc3VsdCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgU01BTExDSFVOSyk7CisgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBjLT5ienMubmV4dF9pbiA9IGRhdGE7CisgICAgLyogT24gYSA2NC1iaXQgc3lzdGVtLCBsZW4gbWlnaHQgbm90IGZpdCBpbiBhdmFpbF9pbiAoYW4gdW5zaWduZWQgaW50KS4KKyAgICAgICBEbyBjb21wcmVzc2lvbiBpbiBjaHVua3Mgb2Ygbm8gbW9yZSB0aGFuIFVJTlRfTUFYIGJ5dGVzIGVhY2guICovCisgICAgYy0+YnpzLmF2YWlsX2luID0gTUlOKGxlbiwgVUlOVF9NQVgpOworICAgIGxlbiAtPSBjLT5ienMuYXZhaWxfaW47CisgICAgYy0+YnpzLm5leHRfb3V0ID0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKKyAgICBjLT5ienMuYXZhaWxfb3V0ID0gUHlCeXRlc19HRVRfU0laRShyZXN1bHQpOworICAgIGZvciAoOzspIHsKKyAgICAgICAgY2hhciAqdGhpc19vdXQ7CisgICAgICAgIGludCBiemVycm9yOworCisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgdGhpc19vdXQgPSBjLT5ienMubmV4dF9vdXQ7CisgICAgICAgIGJ6ZXJyb3IgPSBCWjJfYnpDb21wcmVzcygmYy0+YnpzLCBhY3Rpb24pOworICAgICAgICBkYXRhX3NpemUgKz0gYy0+YnpzLm5leHRfb3V0IC0gdGhpc19vdXQ7CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgICAgIGlmIChjYXRjaF9iejJfZXJyb3IoYnplcnJvcikpCisgICAgICAgICAgICBnb3RvIGVycm9yOworCisgICAgICAgIGlmIChjLT5ienMuYXZhaWxfaW4gPT0gMCAmJiBsZW4gPiAwKSB7CisgICAgICAgICAgICBjLT5ienMuYXZhaWxfaW4gPSBNSU4obGVuLCBVSU5UX01BWCk7CisgICAgICAgICAgICBsZW4gLT0gYy0+YnpzLmF2YWlsX2luOworICAgICAgICB9CisKKyAgICAgICAgLyogSW4gcmVndWxhciBjb21wcmVzc2lvbiBtb2RlLCBzdG9wIHdoZW4gaW5wdXQgZGF0YSBpcyBleGhhdXN0ZWQuCisgICAgICAgICAgIEluIGZsdXNoaW5nIG1vZGUsIHN0b3Agd2hlbiBhbGwgYnVmZmVyZWQgZGF0YSBoYXMgYmVlbiBmbHVzaGVkLiAqLworICAgICAgICBpZiAoKGFjdGlvbiA9PSBCWl9SVU4gJiYgYy0+YnpzLmF2YWlsX2luID09IDApIHx8CisgICAgICAgICAgICAoYWN0aW9uID09IEJaX0ZJTklTSCAmJiBiemVycm9yID09IEJaX1NUUkVBTV9FTkQpKQorICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgaWYgKGMtPmJ6cy5hdmFpbF9vdXQgPT0gMCkgeworICAgICAgICAgICAgaWYgKGdyb3dfYnVmZmVyKCZyZXN1bHQpIDwgMCkKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgYy0+YnpzLm5leHRfb3V0ID0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KSArIGRhdGFfc2l6ZTsKKyAgICAgICAgICAgIGMtPmJ6cy5hdmFpbF9vdXQgPSBQeUJ5dGVzX0dFVF9TSVpFKHJlc3VsdCkgLSBkYXRhX3NpemU7CisgICAgICAgIH0KKyAgICB9CisgICAgaWYgKGRhdGFfc2l6ZSAhPSBQeUJ5dGVzX0dFVF9TSVpFKHJlc3VsdCkpCisgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnJlc3VsdCwgZGF0YV9zaXplKSA8IDApCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgIHJldHVybiByZXN1bHQ7CisKK2Vycm9yOgorICAgIFB5X1hERUNSRUYocmVzdWx0KTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworUHlEb2NfU1RSVkFSKEJaMkNvbXByZXNzb3JfY29tcHJlc3NfX2RvY19fLAorImNvbXByZXNzKGRhdGEpIC0+IGJ5dGVzXG4iCisiXG4iCisiUHJvdmlkZSBkYXRhIHRvIHRoZSBjb21wcmVzc29yIG9iamVjdC4gUmV0dXJucyBhIGNodW5rIG9mXG4iCisiY29tcHJlc3NlZCBkYXRhIGlmIHBvc3NpYmxlLCBvciBiJycgb3RoZXJ3aXNlLlxuIgorIlxuIgorIldoZW4geW91IGhhdmUgZmluaXNoZWQgcHJvdmlkaW5nIGRhdGEgdG8gdGhlIGNvbXByZXNzb3IsIGNhbGwgdGhlXG4iCisiZmx1c2goKSBtZXRob2QgdG8gZmluaXNoIHRoZSBjb21wcmVzc2lvbiBwcm9jZXNzLlxuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitCWjJDb21wcmVzc29yX2NvbXByZXNzKEJaMkNvbXByZXNzb3IgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5X2J1ZmZlciBidWZmZXI7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInkqOmNvbXByZXNzIiwgJmJ1ZmZlcikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgQUNRVUlSRV9MT0NLKHNlbGYpOworICAgIGlmIChzZWxmLT5mbHVzaGVkKQorICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIkNvbXByZXNzb3IgaGFzIGJlZW4gZmx1c2hlZCIpOworICAgIGVsc2UKKyAgICAgICAgcmVzdWx0ID0gY29tcHJlc3Moc2VsZiwgYnVmZmVyLmJ1ZiwgYnVmZmVyLmxlbiwgQlpfUlVOKTsKKyAgICBSRUxFQVNFX0xPQ0soc2VsZik7CisgICAgUHlCdWZmZXJfUmVsZWFzZSgmYnVmZmVyKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitQeURvY19TVFJWQVIoQloyQ29tcHJlc3Nvcl9mbHVzaF9fZG9jX18sCisiZmx1c2goKSAtPiBieXRlc1xuIgorIlxuIgorIkZpbmlzaCB0aGUgY29tcHJlc3Npb24gcHJvY2Vzcy4gUmV0dXJucyB0aGUgY29tcHJlc3NlZCBkYXRhIGxlZnRcbiIKKyJpbiBpbnRlcm5hbCBidWZmZXJzLlxuIgorIlxuIgorIlRoZSBjb21wcmVzc29yIG9iamVjdCBtYXkgbm90IGJlIHVzZWQgYWZ0ZXIgdGhpcyBtZXRob2QgaXMgY2FsbGVkLlxuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitCWjJDb21wcmVzc29yX2ZsdXNoKEJaMkNvbXByZXNzb3IgKnNlbGYsIFB5T2JqZWN0ICpub2FyZ3MpCit7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisKKyAgICBBQ1FVSVJFX0xPQ0soc2VsZik7CisgICAgaWYgKHNlbGYtPmZsdXNoZWQpCisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiUmVwZWF0ZWQgY2FsbCB0byBmbHVzaCgpIik7CisgICAgZWxzZSB7CisgICAgICAgIHNlbGYtPmZsdXNoZWQgPSAxOworICAgICAgICByZXN1bHQgPSBjb21wcmVzcyhzZWxmLCBOVUxMLCAwLCBCWl9GSU5JU0gpOworICAgIH0KKyAgICBSRUxFQVNFX0xPQ0soc2VsZik7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworc3RhdGljIGludAorQloyQ29tcHJlc3Nvcl9pbml0KEJaMkNvbXByZXNzb3IgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQoreworICAgIGludCBjb21wcmVzc2xldmVsID0gOTsKKyAgICBpbnQgYnplcnJvcjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifGk6QloyQ29tcHJlc3NvciIsICZjb21wcmVzc2xldmVsKSkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGlmICghKDEgPD0gY29tcHJlc3NsZXZlbCAmJiBjb21wcmVzc2xldmVsIDw9IDkpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgImNvbXByZXNzbGV2ZWwgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIDkiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgc2VsZi0+bG9jayA9IFB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKTsKKyAgICBpZiAoc2VsZi0+bG9jayA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19NZW1vcnlFcnJvciwgIlVuYWJsZSB0byBhbGxvY2F0ZSBsb2NrIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisjZW5kaWYKKworICAgIGJ6ZXJyb3IgPSBCWjJfYnpDb21wcmVzc0luaXQoJnNlbGYtPmJ6cywgY29tcHJlc3NsZXZlbCwgMCwgMCk7CisgICAgaWYgKGNhdGNoX2J6Ml9lcnJvcihiemVycm9yKSkKKyAgICAgICAgZ290byBlcnJvcjsKKworICAgIHJldHVybiAwOworCitlcnJvcjoKKyNpZmRlZiBXSVRIX1RIUkVBRAorICAgIFB5VGhyZWFkX2ZyZWVfbG9jayhzZWxmLT5sb2NrKTsKKyAgICBzZWxmLT5sb2NrID0gTlVMTDsKKyNlbmRpZgorICAgIHJldHVybiAtMTsKK30KKworc3RhdGljIHZvaWQKK0JaMkNvbXByZXNzb3JfZGVhbGxvYyhCWjJDb21wcmVzc29yICpzZWxmKQoreworICAgIEJaMl9iekNvbXByZXNzRW5kKCZzZWxmLT5ienMpOworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgaWYgKHNlbGYtPmxvY2sgIT0gTlVMTCkKKyAgICAgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHNlbGYtPmxvY2spOworI2VuZGlmCisgICAgUHlfVFlQRShzZWxmKS0+dHBfZnJlZSgoUHlPYmplY3QgKilzZWxmKTsKK30KKworc3RhdGljIFB5TWV0aG9kRGVmIEJaMkNvbXByZXNzb3JfbWV0aG9kc1tdID0geworICAgIHsiY29tcHJlc3MiLCAoUHlDRnVuY3Rpb24pQloyQ29tcHJlc3Nvcl9jb21wcmVzcywgTUVUSF9WQVJBUkdTLAorICAgICBCWjJDb21wcmVzc29yX2NvbXByZXNzX19kb2NfX30sCisgICAgeyJmbHVzaCIsICAgIChQeUNGdW5jdGlvbilCWjJDb21wcmVzc29yX2ZsdXNoLCAgICBNRVRIX05PQVJHUywKKyAgICAgQloyQ29tcHJlc3Nvcl9mbHVzaF9fZG9jX199LAorICAgIHtOVUxMfQorfTsKKworUHlEb2NfU1RSVkFSKEJaMkNvbXByZXNzb3JfX2RvY19fLAorIkJaMkNvbXByZXNzb3IoY29tcHJlc3NsZXZlbD05KVxuIgorIlxuIgorIkNyZWF0ZSBhIGNvbXByZXNzb3Igb2JqZWN0IGZvciBjb21wcmVzc2luZyBkYXRhIGluY3JlbWVudGFsbHkuXG4iCisiXG4iCisiY29tcHJlc3NsZXZlbCwgaWYgZ2l2ZW4sIG11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAxIGFuZCA5LlxuIgorIlxuIgorIkZvciBvbmUtc2hvdCBjb21wcmVzc2lvbiwgdXNlIHRoZSBjb21wcmVzcygpIGZ1bmN0aW9uIGluc3RlYWQuXG4iKTsKKworc3RhdGljIFB5VHlwZU9iamVjdCBCWjJDb21wcmVzc29yX1R5cGUgPSB7CisgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApCisgICAgIl9iejIuQloyQ29tcHJlc3NvciIsICAgICAgICAgICAgICAgLyogdHBfbmFtZSAqLworICAgIHNpemVvZihCWjJDb21wcmVzc29yKSwgICAgICAgICAgICAgIC8qIHRwX2Jhc2ljc2l6ZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZW1zaXplICovCisgICAgKGRlc3RydWN0b3IpQloyQ29tcHJlc3Nvcl9kZWFsbG9jLCAgLyogdHBfZGVhbGxvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3ByaW50ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yZXNlcnZlZCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JlcHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19udW1iZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX21hcHBpbmcgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zdHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfYnVmZmVyICovCisgICAgUHlfVFBGTEFHU19ERUZBVUxULCAgICAgICAgICAgICAgICAgLyogdHBfZmxhZ3MgKi8KKyAgICBCWjJDb21wcmVzc29yX19kb2NfXywgICAgICAgICAgICAgICAvKiB0cF9kb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF90cmF2ZXJzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NsZWFyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLworICAgIEJaMkNvbXByZXNzb3JfbWV0aG9kcywgICAgICAgICAgICAgIC8qIHRwX21ldGhvZHMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYmFzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3QgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9nZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9zZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0b2Zmc2V0ICovCisgICAgKGluaXRwcm9jKUJaMkNvbXByZXNzb3JfaW5pdCwgICAgICAgLyogdHBfaW5pdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FsbG9jICovCisgICAgUHlUeXBlX0dlbmVyaWNOZXcsICAgICAgICAgICAgICAgICAgLyogdHBfbmV3ICovCit9OworCisKKy8qIEJaMkRlY29tcHJlc3NvciBjbGFzcy4gKi8KKworc3RhdGljIFB5T2JqZWN0ICoKK2RlY29tcHJlc3MoQloyRGVjb21wcmVzc29yICpkLCBjaGFyICpkYXRhLCBzaXplX3QgbGVuKQoreworICAgIHNpemVfdCBkYXRhX3NpemUgPSAwOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisKKyAgICByZXN1bHQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIFNNQUxMQ0hVTkspOworICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICBkLT5ienMubmV4dF9pbiA9IGRhdGE7CisgICAgLyogT24gYSA2NC1iaXQgc3lzdGVtLCBsZW4gbWlnaHQgbm90IGZpdCBpbiBhdmFpbF9pbiAoYW4gdW5zaWduZWQgaW50KS4KKyAgICAgICBEbyBkZWNvbXByZXNzaW9uIGluIGNodW5rcyBvZiBubyBtb3JlIHRoYW4gVUlOVF9NQVggYnl0ZXMgZWFjaC4gKi8KKyAgICBkLT5ienMuYXZhaWxfaW4gPSBNSU4obGVuLCBVSU5UX01BWCk7CisgICAgbGVuIC09IGQtPmJ6cy5hdmFpbF9pbjsKKyAgICBkLT5ienMubmV4dF9vdXQgPSBQeUJ5dGVzX0FTX1NUUklORyhyZXN1bHQpOworICAgIGQtPmJ6cy5hdmFpbF9vdXQgPSBQeUJ5dGVzX0dFVF9TSVpFKHJlc3VsdCk7CisgICAgZm9yICg7OykgeworICAgICAgICBjaGFyICp0aGlzX291dDsKKyAgICAgICAgaW50IGJ6ZXJyb3I7CisKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICB0aGlzX291dCA9IGQtPmJ6cy5uZXh0X291dDsKKyAgICAgICAgYnplcnJvciA9IEJaMl9iekRlY29tcHJlc3MoJmQtPmJ6cyk7CisgICAgICAgIGRhdGFfc2l6ZSArPSBkLT5ienMubmV4dF9vdXQgLSB0aGlzX291dDsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgaWYgKGNhdGNoX2J6Ml9lcnJvcihiemVycm9yKSkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIGlmIChiemVycm9yID09IEJaX1NUUkVBTV9FTkQpIHsKKyAgICAgICAgICAgIGQtPmVvZiA9IDE7CisgICAgICAgICAgICBsZW4gKz0gZC0+YnpzLmF2YWlsX2luOworICAgICAgICAgICAgaWYgKGxlbiA+IDApIHsgLyogU2F2ZSBsZWZ0b3ZlciBpbnB1dCB0byB1bnVzZWRfZGF0YSAqLworICAgICAgICAgICAgICAgIFB5X0NMRUFSKGQtPnVudXNlZF9kYXRhKTsKKyAgICAgICAgICAgICAgICBkLT51bnVzZWRfZGF0YSA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoZC0+YnpzLm5leHRfaW4sIGxlbik7CisgICAgICAgICAgICAgICAgaWYgKGQtPnVudXNlZF9kYXRhID09IE5VTEwpCisgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBpZiAoZC0+YnpzLmF2YWlsX2luID09IDApIHsKKyAgICAgICAgICAgIGlmIChsZW4gPT0gMCkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGQtPmJ6cy5hdmFpbF9pbiA9IE1JTihsZW4sIFVJTlRfTUFYKTsKKyAgICAgICAgICAgIGxlbiAtPSBkLT5ienMuYXZhaWxfaW47CisgICAgICAgIH0KKyAgICAgICAgaWYgKGQtPmJ6cy5hdmFpbF9vdXQgPT0gMCkgeworICAgICAgICAgICAgaWYgKGdyb3dfYnVmZmVyKCZyZXN1bHQpIDwgMCkKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgZC0+YnpzLm5leHRfb3V0ID0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KSArIGRhdGFfc2l6ZTsKKyAgICAgICAgICAgIGQtPmJ6cy5hdmFpbF9vdXQgPSBQeUJ5dGVzX0dFVF9TSVpFKHJlc3VsdCkgLSBkYXRhX3NpemU7CisgICAgICAgIH0KKyAgICB9CisgICAgaWYgKGRhdGFfc2l6ZSAhPSBQeUJ5dGVzX0dFVF9TSVpFKHJlc3VsdCkpCisgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnJlc3VsdCwgZGF0YV9zaXplKSA8IDApCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgIHJldHVybiByZXN1bHQ7CisKK2Vycm9yOgorICAgIFB5X1hERUNSRUYocmVzdWx0KTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworUHlEb2NfU1RSVkFSKEJaMkRlY29tcHJlc3Nvcl9kZWNvbXByZXNzX19kb2NfXywKKyJkZWNvbXByZXNzKGRhdGEpIC0+IGJ5dGVzXG4iCisiXG4iCisiUHJvdmlkZSBkYXRhIHRvIHRoZSBkZWNvbXByZXNzb3Igb2JqZWN0LiBSZXR1cm5zIGEgY2h1bmsgb2ZcbiIKKyJkZWNvbXByZXNzZWQgZGF0YSBpZiBwb3NzaWJsZSwgb3IgYicnIG90aGVyd2lzZS5cbiIKKyJcbiIKKyJBdHRlbXB0aW5nIHRvIGRlY29tcHJlc3MgZGF0YSBhZnRlciB0aGUgZW5kIG9mIHN0cmVhbSBpcyByZWFjaGVkXG4iCisicmFpc2VzIGFuIEVPRkVycm9yLiBBbnkgZGF0YSBmb3VuZCBhZnRlciB0aGUgZW5kIG9mIHRoZSBzdHJlYW1cbiIKKyJpcyBpZ25vcmVkIGFuZCBzYXZlZCBpbiB0aGUgdW51c2VkX2RhdGEgYXR0cmlidXRlLlxuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitCWjJEZWNvbXByZXNzb3JfZGVjb21wcmVzcyhCWjJEZWNvbXByZXNzb3IgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5X2J1ZmZlciBidWZmZXI7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInkqOmRlY29tcHJlc3MiLCAmYnVmZmVyKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBBQ1FVSVJFX0xPQ0soc2VsZik7CisgICAgaWYgKHNlbGYtPmVvZikKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0VPRkVycm9yLCAiRW5kIG9mIHN0cmVhbSBhbHJlYWR5IHJlYWNoZWQiKTsKKyAgICBlbHNlCisgICAgICAgIHJlc3VsdCA9IGRlY29tcHJlc3Moc2VsZiwgYnVmZmVyLmJ1ZiwgYnVmZmVyLmxlbik7CisgICAgUkVMRUFTRV9MT0NLKHNlbGYpOworICAgIFB5QnVmZmVyX1JlbGVhc2UoJmJ1ZmZlcik7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworc3RhdGljIGludAorQloyRGVjb21wcmVzc29yX2luaXQoQloyRGVjb21wcmVzc29yICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKK3sKKyAgICBpbnQgYnplcnJvcjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiOkJaMkRlY29tcHJlc3NvciIpKQorICAgICAgICByZXR1cm4gLTE7CisKKyNpZmRlZiBXSVRIX1RIUkVBRAorICAgIHNlbGYtPmxvY2sgPSBQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKCk7CisgICAgaWYgKHNlbGYtPmxvY2sgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfTWVtb3J5RXJyb3IsICJVbmFibGUgdG8gYWxsb2NhdGUgbG9jayIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorI2VuZGlmCisKKyAgICBzZWxmLT51bnVzZWRfZGF0YSA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoIiIsIDApOworICAgIGlmIChzZWxmLT51bnVzZWRfZGF0YSA9PSBOVUxMKQorICAgICAgICBnb3RvIGVycm9yOworCisgICAgYnplcnJvciA9IEJaMl9iekRlY29tcHJlc3NJbml0KCZzZWxmLT5ienMsIDAsIDApOworICAgIGlmIChjYXRjaF9iejJfZXJyb3IoYnplcnJvcikpCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICByZXR1cm4gMDsKKworZXJyb3I6CisgICAgUHlfQ0xFQVIoc2VsZi0+dW51c2VkX2RhdGEpOworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHNlbGYtPmxvY2spOworICAgIHNlbGYtPmxvY2sgPSBOVUxMOworI2VuZGlmCisgICAgcmV0dXJuIC0xOworfQorCitzdGF0aWMgdm9pZAorQloyRGVjb21wcmVzc29yX2RlYWxsb2MoQloyRGVjb21wcmVzc29yICpzZWxmKQoreworICAgIEJaMl9iekRlY29tcHJlc3NFbmQoJnNlbGYtPmJ6cyk7CisgICAgUHlfQ0xFQVIoc2VsZi0+dW51c2VkX2RhdGEpOworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgaWYgKHNlbGYtPmxvY2sgIT0gTlVMTCkKKyAgICAgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHNlbGYtPmxvY2spOworI2VuZGlmCisgICAgUHlfVFlQRShzZWxmKS0+dHBfZnJlZSgoUHlPYmplY3QgKilzZWxmKTsKK30KKworc3RhdGljIFB5TWV0aG9kRGVmIEJaMkRlY29tcHJlc3Nvcl9tZXRob2RzW10gPSB7CisgICAgeyJkZWNvbXByZXNzIiwgKFB5Q0Z1bmN0aW9uKUJaMkRlY29tcHJlc3Nvcl9kZWNvbXByZXNzLCBNRVRIX1ZBUkFSR1MsCisgICAgIEJaMkRlY29tcHJlc3Nvcl9kZWNvbXByZXNzX19kb2NfX30sCisgICAge05VTEx9Cit9OworCitQeURvY19TVFJWQVIoQloyRGVjb21wcmVzc29yX2VvZl9fZG9jX18sCisiVHJ1ZSBpZiB0aGUgZW5kLW9mLXN0cmVhbSBtYXJrZXIgaGFzIGJlZW4gcmVhY2hlZC4iKTsKKworUHlEb2NfU1RSVkFSKEJaMkRlY29tcHJlc3Nvcl91bnVzZWRfZGF0YV9fZG9jX18sCisiRGF0YSBmb3VuZCBhZnRlciB0aGUgZW5kIG9mIHRoZSBjb21wcmVzc2VkIHN0cmVhbS4iKTsKKworc3RhdGljIFB5TWVtYmVyRGVmIEJaMkRlY29tcHJlc3Nvcl9tZW1iZXJzW10gPSB7CisgICAgeyJlb2YiLCBUX0JPT0wsIG9mZnNldG9mKEJaMkRlY29tcHJlc3NvciwgZW9mKSwKKyAgICAgUkVBRE9OTFksIEJaMkRlY29tcHJlc3Nvcl9lb2ZfX2RvY19ffSwKKyAgICB7InVudXNlZF9kYXRhIiwgVF9PQkpFQ1RfRVgsIG9mZnNldG9mKEJaMkRlY29tcHJlc3NvciwgdW51c2VkX2RhdGEpLAorICAgICBSRUFET05MWSwgQloyRGVjb21wcmVzc29yX3VudXNlZF9kYXRhX19kb2NfX30sCisgICAge05VTEx9Cit9OworCitQeURvY19TVFJWQVIoQloyRGVjb21wcmVzc29yX19kb2NfXywKKyJCWjJEZWNvbXByZXNzb3IoKVxuIgorIlxuIgorIkNyZWF0ZSBhIGRlY29tcHJlc3NvciBvYmplY3QgZm9yIGRlY29tcHJlc3NpbmcgZGF0YSBpbmNyZW1lbnRhbGx5LlxuIgorIlxuIgorIkZvciBvbmUtc2hvdCBkZWNvbXByZXNzaW9uLCB1c2UgdGhlIGRlY29tcHJlc3MoKSBmdW5jdGlvbiBpbnN0ZWFkLlxuIik7CisKK3N0YXRpYyBQeVR5cGVPYmplY3QgQloyRGVjb21wcmVzc29yX1R5cGUgPSB7CisgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApCisgICAgIl9iejIuQloyRGVjb21wcmVzc29yIiwgICAgICAgICAgICAgLyogdHBfbmFtZSAqLworICAgIHNpemVvZihCWjJEZWNvbXByZXNzb3IpLCAgICAgICAgICAgIC8qIHRwX2Jhc2ljc2l6ZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZW1zaXplICovCisgICAgKGRlc3RydWN0b3IpQloyRGVjb21wcmVzc29yX2RlYWxsb2MsLyogdHBfZGVhbGxvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3ByaW50ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yZXNlcnZlZCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JlcHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19udW1iZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX21hcHBpbmcgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zdHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfYnVmZmVyICovCisgICAgUHlfVFBGTEFHU19ERUZBVUxULCAgICAgICAgICAgICAgICAgLyogdHBfZmxhZ3MgKi8KKyAgICBCWjJEZWNvbXByZXNzb3JfX2RvY19fLCAgICAgICAgICAgICAvKiB0cF9kb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF90cmF2ZXJzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NsZWFyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLworICAgIEJaMkRlY29tcHJlc3Nvcl9tZXRob2RzLCAgICAgICAgICAgIC8qIHRwX21ldGhvZHMgKi8KKyAgICBCWjJEZWNvbXByZXNzb3JfbWVtYmVycywgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYmFzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3QgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9nZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9zZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0b2Zmc2V0ICovCisgICAgKGluaXRwcm9jKUJaMkRlY29tcHJlc3Nvcl9pbml0LCAgICAgLyogdHBfaW5pdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FsbG9jICovCisgICAgUHlUeXBlX0dlbmVyaWNOZXcsICAgICAgICAgICAgICAgICAgLyogdHBfbmV3ICovCit9OworCisKKy8qIE1vZHVsZSBpbml0aWFsaXphdGlvbi4gKi8KKworc3RhdGljIHN0cnVjdCBQeU1vZHVsZURlZiBfYnoybW9kdWxlID0geworICAgIFB5TW9kdWxlRGVmX0hFQURfSU5JVCwKKyAgICAiX2J6MiIsCisgICAgTlVMTCwKKyAgICAtMSwKKyAgICBOVUxMLAorICAgIE5VTEwsCisgICAgTlVMTCwKKyAgICBOVUxMLAorICAgIE5VTEwKK307CisKK1B5TU9ESU5JVF9GVU5DCitQeUluaXRfX2J6Mih2b2lkKQoreworICAgIFB5T2JqZWN0ICptOworCisgICAgaWYgKFB5VHlwZV9SZWFkeSgmQloyQ29tcHJlc3Nvcl9UeXBlKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChQeVR5cGVfUmVhZHkoJkJaMkRlY29tcHJlc3Nvcl9UeXBlKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgbSA9IFB5TW9kdWxlX0NyZWF0ZSgmX2J6Mm1vZHVsZSk7CisgICAgaWYgKG0gPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9JTkNSRUYoJkJaMkNvbXByZXNzb3JfVHlwZSk7CisgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJCWjJDb21wcmVzc29yIiwgKFB5T2JqZWN0ICopJkJaMkNvbXByZXNzb3JfVHlwZSk7CisKKyAgICBQeV9JTkNSRUYoJkJaMkRlY29tcHJlc3Nvcl9UeXBlKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgIkJaMkRlY29tcHJlc3NvciIsCisgICAgICAgICAgICAgICAgICAgICAgIChQeU9iamVjdCAqKSZCWjJEZWNvbXByZXNzb3JfVHlwZSk7CisKKyAgICByZXR1cm4gbTsKK30KZGlmZiAtLWdpdCBhL01vZHVsZXMvX2NvZGVjc21vZHVsZS5jIGIvTW9kdWxlcy9fY29kZWNzbW9kdWxlLmMKaW5kZXggZWI3NDBmOS4uNzgxOGY5YSAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fY29kZWNzbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9fY29kZWNzbW9kdWxlLmMKQEAgLTM4LDYgKzM4LDEwIEBACiAjZGVmaW5lIFBZX1NTSVpFX1RfQ0xFQU4KICNpbmNsdWRlICJQeXRob24uaCIKIAorI2lmZGVmIE1TX1dJTkRPV1MKKyNpbmNsdWRlIDx3aW5kb3dzLmg+CisjZW5kaWYKKwogLyogLS0tIFJlZ2lzdHJ5IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKIFB5RG9jX1NUUlZBUihyZWdpc3Rlcl9fZG9jX18sCkBAIC0xNjIsNyArMTY2LDYgQEAKIGVzY2FwZV9lbmNvZGUoUHlPYmplY3QgKnNlbGYsCiAgICAgICAgICAgICAgIFB5T2JqZWN0ICphcmdzKQogewotICAgIHN0YXRpYyBjb25zdCBjaGFyICpoZXhkaWdpdHMgPSAiMDEyMzQ1Njc4OWFiY2RlZiI7CiAgICAgUHlPYmplY3QgKnN0cjsKICAgICBQeV9zc2l6ZV90IHNpemU7CiAgICAgUHlfc3NpemVfdCBuZXdzaXplOwpAQCAtMjA1LDggKzIwOCw4IEBACiAgICAgICAgICAgICBlbHNlIGlmIChjIDwgJyAnIHx8IGMgPj0gMHg3ZikgewogICAgICAgICAgICAgICAgICpwKysgPSAnXFwnOwogICAgICAgICAgICAgICAgICpwKysgPSAneCc7Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soYyAmIDB4ZjApID4+IDRdOwotICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbYyAmIDB4Zl07CisgICAgICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soYyAmIDB4ZjApID4+IDRdOworICAgICAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbYyAmIDB4Zl07CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgKnArKyA9IGM7CkBAIC0yMzYsOCArMjM5LDEwIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhvYmopKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSA8IDApCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgUHlfSU5DUkVGKG9iaik7Ci0gICAgICAgIHJldHVybiBjb2RlY190dXBsZShvYmosIFB5VW5pY29kZV9HRVRfU0laRShvYmopKTsKKyAgICAgICAgcmV0dXJuIGNvZGVjX3R1cGxlKG9iaiwgUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKSk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBpZiAoUHlPYmplY3RfQXNSZWFkQnVmZmVyKG9iaiwgKGNvbnN0IHZvaWQgKiopJmRhdGEsICZzaXplKSkKQEAgLTU4OCw3ICs1OTMsNyBAQAogICAgIHJldHVybiBjb2RlY190dXBsZSh1bmljb2RlLCBwYnVmLmxlbik7CiB9CiAKLSNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpICYmIGRlZmluZWQoSEFWRV9VU0FCTEVfV0NIQVJfVCkKKyNpZmRlZiBIQVZFX01CQ1MKIAogc3RhdGljIFB5T2JqZWN0ICoKIG1iY3NfZGVjb2RlKFB5T2JqZWN0ICpzZWxmLApAQCAtNjEzLDcgKzYxOCwzMiBAQAogICAgIHJldHVybiBjb2RlY190dXBsZShkZWNvZGVkLCBjb25zdW1lZCk7CiB9CiAKLSNlbmRpZiAvKiBNU19XSU5ET1dTICovCitzdGF0aWMgUHlPYmplY3QgKgorY29kZV9wYWdlX2RlY29kZShQeU9iamVjdCAqc2VsZiwKKyAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlfYnVmZmVyIHBidWY7CisgICAgY29uc3QgY2hhciAqZXJyb3JzID0gTlVMTDsKKyAgICBpbnQgZmluYWwgPSAwOworICAgIFB5X3NzaXplX3QgY29uc3VtZWQ7CisgICAgUHlPYmplY3QgKmRlY29kZWQgPSBOVUxMOworICAgIGludCBjb2RlX3BhZ2U7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIml5Knx6aTpjb2RlX3BhZ2VfZGVjb2RlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJmNvZGVfcGFnZSwgJnBidWYsICZlcnJvcnMsICZmaW5hbCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGNvbnN1bWVkID0gcGJ1Zi5sZW47CisKKyAgICBkZWNvZGVkID0gUHlVbmljb2RlX0RlY29kZUNvZGVQYWdlU3RhdGVmdWwoY29kZV9wYWdlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYnVmLmJ1ZiwgcGJ1Zi5sZW4sIGVycm9ycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmluYWwgPyBOVUxMIDogJmNvbnN1bWVkKTsKKyAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwYnVmKTsKKyAgICBpZiAoZGVjb2RlZCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXR1cm4gY29kZWNfdHVwbGUoZGVjb2RlZCwgY29uc3VtZWQpOworfQorCisjZW5kaWYgLyogSEFWRV9NQkNTICovCiAKIC8qIC0tLSBFbmNvZGVyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCkBAIC02NDUsMTcgKzY3NSwzMSBAQAogICAgIFB5T2JqZWN0ICpvYmo7CiAgICAgY29uc3QgY2hhciAqZXJyb3JzID0gTlVMTDsKICAgICBjb25zdCBjaGFyICpkYXRhOwotICAgIFB5X3NzaXplX3Qgc2l6ZTsKKyAgICBQeV9zc2l6ZV90IGxlbiwgc2l6ZTsKKworICAgIGlmIChQeUVycl9XYXJuRXgoUHlFeGNfRGVwcmVjYXRpb25XYXJuaW5nLAorICAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVfaW50ZXJuYWwgY29kZWMgaGFzIGJlZW4gZGVwcmVjYXRlZCIsCisgICAgICAgICAgICAgICAgICAgICAxKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk98ejp1bmljb2RlX2ludGVybmFsX2VuY29kZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZvYmosICZlcnJvcnMpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sob2JqKSkgewotICAgICAgICBkYXRhID0gUHlVbmljb2RlX0FTX0RBVEEob2JqKTsKLSAgICAgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfREFUQV9TSVpFKG9iaik7Ci0gICAgICAgIHJldHVybiBjb2RlY190dXBsZShQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKGRhdGEsIHNpemUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKG9iaikpOworICAgICAgICBQeV9VTklDT0RFICp1OworCisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSA8IDApCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKworICAgICAgICB1ID0gUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUob2JqLCAmbGVuKTsKKyAgICAgICAgaWYgKHUgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBpZiAobGVuID4gUFlfU1NJWkVfVF9NQVggLyBzaXplb2YoUHlfVU5JQ09ERSkpCisgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgc2l6ZSA9IGxlbiAqIHNpemVvZihQeV9VTklDT0RFKTsKKyAgICAgICAgcmV0dXJuIGNvZGVjX3R1cGxlKFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoKGNvbnN0IGNoYXIqKXUsIHNpemUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKSk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBpZiAoUHlPYmplY3RfQXNSZWFkQnVmZmVyKG9iaiwgKGNvbnN0IHZvaWQgKiopJmRhdGEsICZzaXplKSkKQEAgLTY3NiwxNCArNzIwLDEyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKLSAgICBpZiAoc3RyID09IE5VTEwpCisgICAgaWYgKHN0ciA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzdHIpIDwgMCkgeworICAgICAgICBQeV9YREVDUkVGKHN0cik7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfRW5jb2RlVVRGNyhQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKSwKLSAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpOworICAgIH0KKyAgICB2ID0gY29kZWNfdHVwbGUoX1B5VW5pY29kZV9FbmNvZGVVVEY3KHN0ciwgMCwgMCwgZXJyb3JzKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CkBAIC03MDAsMTIgKzc0MiwxMiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHN0ciA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cik7Ci0gICAgaWYgKHN0ciA9PSBOVUxMKQorICAgIGlmIChzdHIgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRihzdHIpOwogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB2ID0gY29kZWNfdHVwbGUoUHlVbmljb2RlX0VuY29kZVVURjgoUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyksCi0gICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpKTsKKyAgICB9CisgICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcoc3RyLCAidXRmLTgiLCBlcnJvcnMpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpKTsKICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICByZXR1cm4gdjsKIH0KQEAgLTczMCwxMyArNzcyLDEyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKLSAgICBpZiAoc3RyID09IE5VTEwpCisgICAgaWYgKHN0ciA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzdHIpIDwgMCkgeworICAgICAgICBQeV9YREVDUkVGKHN0cik7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfRW5jb2RlVVRGMTYoUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnl0ZW9yZGVyKSwKLSAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpOworICAgIH0KKyAgICB2ID0gY29kZWNfdHVwbGUoX1B5VW5pY29kZV9FbmNvZGVVVEYxNihzdHIsIGVycm9ycywgYnl0ZW9yZGVyKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CkBAIC03NTMsMTMgKzc5NCwxMiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHN0ciA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cik7Ci0gICAgaWYgKHN0ciA9PSBOVUxMKQorICAgIGlmIChzdHIgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRihzdHIpOwogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB2ID0gY29kZWNfdHVwbGUoUHlVbmljb2RlX0VuY29kZVVURjE2KFB5VW5pY29kZV9BU19VTklDT0RFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xKSwKLSAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpOworICAgIH0KKyAgICB2ID0gY29kZWNfdHVwbGUoX1B5VW5pY29kZV9FbmNvZGVVVEYxNihzdHIsIGVycm9ycywgLTEpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpKTsKICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICByZXR1cm4gdjsKIH0KQEAgLTc3NiwxMyArODE2LDEyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKLSAgICBpZiAoc3RyID09IE5VTEwpCisgICAgaWYgKHN0ciA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzdHIpIDwgMCkgeworICAgICAgICBQeV9YREVDUkVGKHN0cik7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfRW5jb2RlVVRGMTYoUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKzEpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShfUHlVbmljb2RlX0VuY29kZVVURjE2KHN0ciwgZXJyb3JzLCArMSksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiB2OwogfQpAQCAtODA3LDEzICs4NDYsMTIgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBpZiAoc3RyID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVVVEYzMihQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieXRlb3JkZXIpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShfUHlVbmljb2RlX0VuY29kZVVURjMyKHN0ciwgZXJyb3JzLCBieXRlb3JkZXIpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpKTsKICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICByZXR1cm4gdjsKIH0KQEAgLTgzMCwxMyArODY4LDEyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKLSAgICBpZiAoc3RyID09IE5VTEwpCisgICAgaWYgKHN0ciA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzdHIpIDwgMCkgeworICAgICAgICBQeV9YREVDUkVGKHN0cik7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfRW5jb2RlVVRGMzIoUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLTEpLAotICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShfUHlVbmljb2RlX0VuY29kZVVURjMyKHN0ciwgZXJyb3JzLCAtMSksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiB2OwogfQpAQCAtODUzLDEzICs4OTAsMTIgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBpZiAoc3RyID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVVVEYzMihQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArMSksCi0gICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpKTsKKyAgICB9CisgICAgdiA9IGNvZGVjX3R1cGxlKF9QeVVuaWNvZGVfRW5jb2RlVVRGMzIoc3RyLCBlcnJvcnMsICsxKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CkBAIC04NzYsMTEgKzkxMiwxMiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHN0ciA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cik7Ci0gICAgaWYgKHN0ciA9PSBOVUxMKQorICAgIGlmIChzdHIgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRihzdHIpOwogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB2ID0gY29kZWNfdHVwbGUoUHlVbmljb2RlX0VuY29kZVVuaWNvZGVFc2NhcGUoUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nKHN0ciksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiB2OwogfQpAQCAtODk3LDEyICs5MzQsMTIgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBpZiAoc3RyID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVSYXdVbmljb2RlRXNjYXBlKAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nKHN0ciksCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiB2OwogfQpAQCAtOTE5LDEzICs5NTYsMTIgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBpZiAoc3RyID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVMYXRpbjEoCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShfUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKHN0ciwgZXJyb3JzKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CkBAIC05NDIsMTMgKzk3OCwxMiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHN0ciA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cik7Ci0gICAgaWYgKHN0ciA9PSBOVUxMKQorICAgIGlmIChzdHIgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRihzdHIpOwogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB2ID0gY29kZWNfdHVwbGUoUHlVbmljb2RlX0VuY29kZUFTQ0lJKAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKSwKLSAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0cikpOworICAgIH0KKyAgICB2ID0gY29kZWNfdHVwbGUoX1B5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKHN0ciwgZXJyb3JzKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CkBAIC05NjgsMTQgKzEwMDMsMTIgQEAKICAgICAgICAgbWFwcGluZyA9IE5VTEw7CiAKICAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwotICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICBpZiAoc3RyID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVDaGFybWFwKAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHN0ciksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwcGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMpLAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSk7CisgICAgfQorICAgIHYgPSBjb2RlY190dXBsZShfUHlVbmljb2RlX0VuY29kZUNoYXJtYXAoc3RyLCBtYXBwaW5nLCBlcnJvcnMpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpKTsKICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICByZXR1cm4gdjsKIH0KQEAgLTk4OSw3ICsxMDIyLDcgQEAKICAgICByZXR1cm4gUHlVbmljb2RlX0J1aWxkRW5jb2RpbmdNYXAobWFwKTsKIH0KIAotI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgZGVmaW5lZChIQVZFX1VTQUJMRV9XQ0hBUl9UKQorI2lmZGVmIEhBVkVfTUJDUwogCiBzdGF0aWMgUHlPYmplY3QgKgogbWJjc19lbmNvZGUoUHlPYmplY3QgKnNlbGYsCkBAIC0xMDAzLDE4ICsxMDM2LDQyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKLSAgICBpZiAoc3RyID09IE5VTEwpCisgICAgaWYgKHN0ciA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzdHIpIDwgMCkgeworICAgICAgICBQeV9YREVDUkVGKHN0cik7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBjb2RlY190dXBsZShQeVVuaWNvZGVfRW5jb2RlTUJDUygKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyksCi0gICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpKTsKKyAgICB9CisgICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVDb2RlUGFnZShDUF9BQ1AsIHN0ciwgZXJyb3JzKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSk7CiAgICAgUHlfREVDUkVGKHN0cik7CiAgICAgcmV0dXJuIHY7CiB9CiAKLSNlbmRpZiAvKiBNU19XSU5ET1dTICovCitzdGF0aWMgUHlPYmplY3QgKgorY29kZV9wYWdlX2VuY29kZShQeU9iamVjdCAqc2VsZiwKKyAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnN0ciwgKnY7CisgICAgY29uc3QgY2hhciAqZXJyb3JzID0gTlVMTDsKKyAgICBpbnQgY29kZV9wYWdlOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpT3x6OmNvZGVfcGFnZV9lbmNvZGUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmY29kZV9wYWdlLCAmc3RyLCAmZXJyb3JzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOworICAgIGlmIChzdHIgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA8IDApIHsKKyAgICAgICAgUHlfWERFQ1JFRihzdHIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgdiA9IGNvZGVjX3R1cGxlKFB5VW5pY29kZV9FbmNvZGVDb2RlUGFnZShjb2RlX3BhZ2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpKTsKKyAgICBQeV9ERUNSRUYoc3RyKTsKKyAgICByZXR1cm4gdjsKK30KKworI2VuZGlmIC8qIEhBVkVfTUJDUyAqLwogCiAvKiAtLS0gRXJyb3IgaGFuZGxlciByZWdpc3RyeSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIApAQCAtMTEwMSw5ICsxMTU4LDExIEBACiAgICAgeyJjaGFybWFwX2RlY29kZSIsICAgICAgICAgIGNoYXJtYXBfZGVjb2RlLCAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICAgICB7ImNoYXJtYXBfYnVpbGQiLCAgICAgICAgICAgY2hhcm1hcF9idWlsZCwgICAgICAgICAgICAgICAgICBNRVRIX1ZBUkFSR1N9LAogICAgIHsicmVhZGJ1ZmZlcl9lbmNvZGUiLCAgICAgICByZWFkYnVmZmVyX2VuY29kZSwgICAgICAgICAgICAgIE1FVEhfVkFSQVJHU30sCi0jaWYgZGVmaW5lZChNU19XSU5ET1dTKSAmJiBkZWZpbmVkKEhBVkVfVVNBQkxFX1dDSEFSX1QpCisjaWZkZWYgSEFWRV9NQkNTCiAgICAgeyJtYmNzX2VuY29kZSIsICAgICAgICAgICAgIG1iY3NfZW5jb2RlLCAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICAgICB7Im1iY3NfZGVjb2RlIiwgICAgICAgICAgICAgbWJjc19kZWNvZGUsICAgICAgICAgICAgICAgICAgICBNRVRIX1ZBUkFSR1N9LAorICAgIHsiY29kZV9wYWdlX2VuY29kZSIsICAgICAgICBjb2RlX3BhZ2VfZW5jb2RlLCAgICAgICAgICAgICAgIE1FVEhfVkFSQVJHU30sCisgICAgeyJjb2RlX3BhZ2VfZGVjb2RlIiwgICAgICAgIGNvZGVfcGFnZV9kZWNvZGUsICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICNlbmRpZgogICAgIHsicmVnaXN0ZXJfZXJyb3IiLCAgICAgICAgICByZWdpc3Rlcl9lcnJvciwgICAgICAgICAgICAgICAgIE1FVEhfVkFSQVJHUywKICAgICAgICAgcmVnaXN0ZXJfZXJyb3JfX2RvY19ffSwKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2NvbGxlY3Rpb25zbW9kdWxlLmMgYi9Nb2R1bGVzL19jb2xsZWN0aW9uc21vZHVsZS5jCmluZGV4IDU1NDVkMWUuLmVmY2U1Y2UgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2NvbGxlY3Rpb25zbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9fY29sbGVjdGlvbnNtb2R1bGUuYwpAQCAtNzY3LDggKzc2Nyw5IEBACiBkZXF1ZV9yZWR1Y2UoZGVxdWVvYmplY3QgKmRlcXVlKQogewogICAgIFB5T2JqZWN0ICpkaWN0LCAqcmVzdWx0LCAqYXNsaXN0OworICAgIF9QeV9JREVOVElGSUVSKF9fZGljdF9fKTsKIAotICAgIGRpY3QgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKChQeU9iamVjdCAqKWRlcXVlLCAiX19kaWN0X18iKTsKKyAgICBkaWN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKilkZXF1ZSwgJlB5SWRfX19kaWN0X18pOwogICAgIGlmIChkaWN0ID09IE5VTEwpCiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgYXNsaXN0ID0gUHlTZXF1ZW5jZV9MaXN0KChQeU9iamVjdCAqKWRlcXVlKTsKQEAgLTgzMiw4ICs4MzMsNyBAQAogCiAgICAgaWYgKCFQeU9iamVjdF9UeXBlQ2hlY2sodiwgJmRlcXVlX3R5cGUpIHx8CiAgICAgICAgICFQeU9iamVjdF9UeXBlQ2hlY2sodywgJmRlcXVlX3R5cGUpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIH0KIAogICAgIC8qIFNob3J0Y3V0cyAqLwpAQCAtMTMzNSwxMyArMTMzNSwxNSBAQAogICAgIFB5T2JqZWN0ICppdGVtczsKICAgICBQeU9iamVjdCAqaXRlcjsKICAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIF9QeV9JREVOVElGSUVSKGl0ZW1zKTsKKwogICAgIGlmIChkZC0+ZGVmYXVsdF9mYWN0b3J5ID09IE5VTEwgfHwgZGQtPmRlZmF1bHRfZmFjdG9yeSA9PSBQeV9Ob25lKQogICAgICAgICBhcmdzID0gUHlUdXBsZV9OZXcoMCk7CiAgICAgZWxzZQogICAgICAgICBhcmdzID0gUHlUdXBsZV9QYWNrKDEsIGRkLT5kZWZhdWx0X2ZhY3RvcnkpOwogICAgIGlmIChhcmdzID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGl0ZW1zID0gUHlPYmplY3RfQ2FsbE1ldGhvZCgoUHlPYmplY3QgKilkZCwgIml0ZW1zIiwgIigpIik7CisgICAgaXRlbXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCAqKWRkLCAmUHlJZF9pdGVtcywgIigpIik7CiAgICAgaWYgKGl0ZW1zID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKGFyZ3MpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTE1NTIsMTIgKzE1NTQsOCBAQAogICAgIGlmIChQeURpY3RfQ2hlY2tFeGFjdChtYXBwaW5nKSkgewogICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICAga2V5ID0gUHlJdGVyX05leHQoaXQpOwotICAgICAgICAgICAgaWYgKGtleSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkgJiYgUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19TdG9wSXRlcmF0aW9uKSkKLSAgICAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGtleSA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgb2xkdmFsID0gUHlEaWN0X0dldEl0ZW0obWFwcGluZywga2V5KTsKICAgICAgICAgICAgIGlmIChvbGR2YWwgPT0gTlVMTCkgewogICAgICAgICAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbShtYXBwaW5nLCBrZXksIG9uZSkgPT0gLTEpCkBAIC0xNTc1LDEyICsxNTczLDggQEAKICAgICB9IGVsc2UgewogICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICAga2V5ID0gUHlJdGVyX05leHQoaXQpOwotICAgICAgICAgICAgaWYgKGtleSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkgJiYgUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19TdG9wSXRlcmF0aW9uKSkKLSAgICAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGtleSA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgb2xkdmFsID0gUHlPYmplY3RfR2V0SXRlbShtYXBwaW5nLCBrZXkpOwogICAgICAgICAgICAgaWYgKG9sZHZhbCA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpIHx8ICFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0tleUVycm9yKSkKZGlmZiAtLWdpdCBhL01vZHVsZXMvY3J5cHRtb2R1bGUuYyBiL01vZHVsZXMvX2NyeXB0bW9kdWxlLmMKc2ltaWxhcml0eSBpbmRleCA5NyUKcmVuYW1lIGZyb20gTW9kdWxlcy9jcnlwdG1vZHVsZS5jCnJlbmFtZSB0byBNb2R1bGVzL19jcnlwdG1vZHVsZS5jCmluZGV4IGQ1YTQyZmYuLjUxMDA3ODggMTAwNjQ0Ci0tLSBhL01vZHVsZXMvY3J5cHRtb2R1bGUuYworKysgYi9Nb2R1bGVzL19jcnlwdG1vZHVsZS5jCkBAIC00NSw3ICs0NSw3IEBACiAKIHN0YXRpYyBzdHJ1Y3QgUHlNb2R1bGVEZWYgY3J5cHRtb2R1bGUgPSB7CiAgICAgUHlNb2R1bGVEZWZfSEVBRF9JTklULAotICAgICJjcnlwdCIsCisgICAgIl9jcnlwdCIsCiAgICAgTlVMTCwKICAgICAtMSwKICAgICBjcnlwdF9tZXRob2RzLApAQCAtNTYsNyArNTYsNyBAQAogfTsKIAogUHlNT0RJTklUX0ZVTkMKLVB5SW5pdF9jcnlwdCh2b2lkKQorUHlJbml0X19jcnlwdCh2b2lkKQogewogICAgIHJldHVybiBQeU1vZHVsZV9DcmVhdGUoJmNyeXB0bW9kdWxlKTsKIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvX2Nzdi5jIGIvTW9kdWxlcy9fY3N2LmMKaW5kZXggYTc0OWNlYy4uNDQzMzA5YyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fY3N2LmMKKysrIGIvTW9kdWxlcy9fY3N2LmMKQEAgLTQ3LDkgKzQ3LDkgQEAKICAgICBQeU9iamVjdF9IRUFECiAKICAgICBpbnQgZG91YmxlcXVvdGU7ICAgICAgICAgICAgLyogaXMgIiByZXByZXNlbnRlZCBieSAiIj8gKi8KLSAgICBQeV9VTklDT0RFIGRlbGltaXRlcjsgICAgICAgLyogZmllbGQgc2VwYXJhdG9yICovCi0gICAgUHlfVU5JQ09ERSBxdW90ZWNoYXI7ICAgICAgIC8qIHF1b3RlIGNoYXJhY3RlciAqLwotICAgIFB5X1VOSUNPREUgZXNjYXBlY2hhcjsgICAgICAvKiBlc2NhcGUgY2hhcmFjdGVyICovCisgICAgUHlfVUNTNCBkZWxpbWl0ZXI7ICAgICAgIC8qIGZpZWxkIHNlcGFyYXRvciAqLworICAgIFB5X1VDUzQgcXVvdGVjaGFyOyAgICAgICAvKiBxdW90ZSBjaGFyYWN0ZXIgKi8KKyAgICBQeV9VQ1M0IGVzY2FwZWNoYXI7ICAgICAgLyogZXNjYXBlIGNoYXJhY3RlciAqLwogICAgIGludCBza2lwaW5pdGlhbHNwYWNlOyAgICAgICAvKiBpZ25vcmUgc3BhY2VzIGZvbGxvd2luZyBkZWxpbWl0ZXI/ICovCiAgICAgUHlPYmplY3QgKmxpbmV0ZXJtaW5hdG9yOyAvKiBzdHJpbmcgdG8gd3JpdGUgYmV0d2VlbiByZWNvcmRzICovCiAgICAgaW50IHF1b3Rpbmc7ICAgICAgICAgICAgICAgIC8qIHN0eWxlIG9mIHF1b3RpbmcgdG8gd3JpdGUgKi8KQEAgLTY4LDcgKzY4LDcgQEAKIAogICAgIFB5T2JqZWN0ICpmaWVsZHM7ICAgICAgICAgICAvKiBmaWVsZCBsaXN0IGZvciBjdXJyZW50IHJlY29yZCAqLwogICAgIFBhcnNlclN0YXRlIHN0YXRlOyAgICAgICAgICAvKiBjdXJyZW50IENTViBwYXJzZSBzdGF0ZSAqLwotICAgIFB5X1VOSUNPREUgKmZpZWxkOyAgICAgICAgICAvKiBidWlsZCBjdXJyZW50IGZpZWxkIGluIGhlcmUgKi8KKyAgICBQeV9VQ1M0ICpmaWVsZDsgICAgICAgICAgICAgLyogdGVtcG9yYXJ5IGJ1ZmZlciAqLwogICAgIFB5X3NzaXplX3QgZmllbGRfc2l6ZTsgICAgICAvKiBzaXplIG9mIGFsbG9jYXRlZCBidWZmZXIgKi8KICAgICBQeV9zc2l6ZV90IGZpZWxkX2xlbjsgICAgICAgLyogbGVuZ3RoIG9mIGN1cnJlbnQgZmllbGQgKi8KICAgICBpbnQgbnVtZXJpY19maWVsZDsgICAgICAgICAgLyogdHJlYXQgZmllbGQgYXMgbnVtZXJpYyAqLwpAQCAtODYsNyArODYsNyBAQAogCiAgICAgRGlhbGVjdE9iaiAqZGlhbGVjdDsgICAgLyogcGFyc2luZyBkaWFsZWN0ICovCiAKLSAgICBQeV9VTklDT0RFICpyZWM7ICAgICAgICAgICAgLyogYnVmZmVyIGZvciBwYXJzZXIuam9pbiAqLworICAgIFB5X1VDUzQgKnJlYzsgICAgICAgICAgICAvKiBidWZmZXIgZm9yIHBhcnNlci5qb2luICovCiAgICAgUHlfc3NpemVfdCByZWNfc2l6ZTsgICAgICAgIC8qIHNpemUgb2YgYWxsb2NhdGVkIHJlY29yZCAqLwogICAgIFB5X3NzaXplX3QgcmVjX2xlbjsgICAgICAgICAvKiBsZW5ndGggb2YgcmVjb3JkICovCiAgICAgaW50IG51bV9maWVsZHM7ICAgICAgICAgICAgIC8qIG51bWJlciBvZiBmaWVsZHMgaW4gcmVjb3JkICovCkBAIC0xMjEsMTQgKzEyMSwxNCBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotZ2V0X251bGxjaGFyX2FzX05vbmUoUHlfVU5JQ09ERSBjKQorZ2V0X251bGxjaGFyX2FzX05vbmUoUHlfVUNTNCBjKQogewogICAgIGlmIChjID09ICdcMCcpIHsKICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgICAgICByZXR1cm4gUHlfTm9uZTsKICAgICB9CiAgICAgZWxzZQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKChQeV9VTklDT0RFICopJmMsIDEpOworICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21PcmRpbmFsKGMpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMTk5LDI1ICsxOTksMjMgQEAKIH0KIAogc3RhdGljIGludAotX3NldF9jaGFyKGNvbnN0IGNoYXIgKm5hbWUsIFB5X1VOSUNPREUgKnRhcmdldCwgUHlPYmplY3QgKnNyYywgUHlfVU5JQ09ERSBkZmx0KQorX3NldF9jaGFyKGNvbnN0IGNoYXIgKm5hbWUsIFB5X1VDUzQgKnRhcmdldCwgUHlPYmplY3QgKnNyYywgUHlfVUNTNCBkZmx0KQogewogICAgIGlmIChzcmMgPT0gTlVMTCkKICAgICAgICAgKnRhcmdldCA9IGRmbHQ7CiAgICAgZWxzZSB7CiAgICAgICAgICp0YXJnZXQgPSAnXDAnOwogICAgICAgICBpZiAoc3JjICE9IFB5X05vbmUpIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKmJ1ZjsKICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwotICAgICAgICAgICAgYnVmID0gUHlVbmljb2RlX0FzVW5pY29kZShzcmMpOwotICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dldFNpemUoc3JjKTsKLSAgICAgICAgICAgIGlmIChidWYgPT0gTlVMTCB8fCBsZW4gPiAxKSB7CisgICAgICAgICAgICBsZW4gPSBQeVVuaWNvZGVfR2V0TGVuZ3RoKHNyYyk7CisgICAgICAgICAgICBpZiAobGVuID4gMSkgewogICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICJcIiVzXCIgbXVzdCBiZSBhbiAxLWNoYXJhY3RlciBzdHJpbmciLAogICAgICAgICAgICAgICAgICAgICBuYW1lKTsKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAobGVuID4gMCkKLSAgICAgICAgICAgICAgICAqdGFyZ2V0ID0gYnVmWzBdOworICAgICAgICAgICAgICAgICp0YXJnZXQgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHNyYywgMCk7CiAgICAgICAgIH0KICAgICB9CiAgICAgcmV0dXJuIDA7CkBAIC00OTgsNyArNDk2LDggQEAKIHsKICAgICBQeU9iamVjdCAqZmllbGQ7CiAKLSAgICBmaWVsZCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShzZWxmLT5maWVsZCwgc2VsZi0+ZmllbGRfbGVuKTsKKyAgICBmaWVsZCA9IFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoUHlVbmljb2RlXzRCWVRFX0tJTkQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2b2lkICopIHNlbGYtPmZpZWxkLCBzZWxmLT5maWVsZF9sZW4pOwogICAgIGlmIChmaWVsZCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gLTE7CiAgICAgc2VsZi0+ZmllbGRfbGVuID0gMDsKQEAgLTUwNywxMSArNTA2LDkgQEAKIAogICAgICAgICBzZWxmLT5udW1lcmljX2ZpZWxkID0gMDsKICAgICAgICAgdG1wID0gUHlOdW1iZXJfRmxvYXQoZmllbGQpOwotICAgICAgICBpZiAodG1wID09IE5VTEwpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihmaWVsZCk7Ci0gICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIH0KICAgICAgICAgUHlfREVDUkVGKGZpZWxkKTsKKyAgICAgICAgaWYgKHRtcCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICBmaWVsZCA9IHRtcDsKICAgICB9CiAgICAgUHlMaXN0X0FwcGVuZChzZWxmLT5maWVsZHMsIGZpZWxkKTsKQEAgLTUyNiwxNiArNTIzLDE2IEBACiAgICAgICAgIHNlbGYtPmZpZWxkX3NpemUgPSA0MDk2OwogICAgICAgICBpZiAoc2VsZi0+ZmllbGQgIT0gTlVMTCkKICAgICAgICAgICAgIFB5TWVtX0ZyZWUoc2VsZi0+ZmllbGQpOwotICAgICAgICBzZWxmLT5maWVsZCA9IFB5TWVtX05ldyhQeV9VTklDT0RFLCBzZWxmLT5maWVsZF9zaXplKTsKKyAgICAgICAgc2VsZi0+ZmllbGQgPSBQeU1lbV9OZXcoUHlfVUNTNCwgc2VsZi0+ZmllbGRfc2l6ZSk7CiAgICAgfQogICAgIGVsc2UgeworICAgICAgICBQeV9VQ1M0ICpmaWVsZCA9IHNlbGYtPmZpZWxkOwogICAgICAgICBpZiAoc2VsZi0+ZmllbGRfc2l6ZSA+IFBZX1NTSVpFX1RfTUFYIC8gMikgewogICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB9CiAgICAgICAgIHNlbGYtPmZpZWxkX3NpemUgKj0gMjsKLSAgICAgICAgc2VsZi0+ZmllbGQgPSBQeU1lbV9SZXNpemUoc2VsZi0+ZmllbGQsIFB5X1VOSUNPREUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPmZpZWxkX3NpemUpOworICAgICAgICBzZWxmLT5maWVsZCA9IFB5TWVtX1Jlc2l6ZShmaWVsZCwgUHlfVUNTNCwgc2VsZi0+ZmllbGRfc2l6ZSk7CiAgICAgfQogICAgIGlmIChzZWxmLT5maWVsZCA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CkBAIC01NDUsNyArNTQyLDcgQEAKIH0KIAogc3RhdGljIGludAotcGFyc2VfYWRkX2NoYXIoUmVhZGVyT2JqICpzZWxmLCBQeV9VTklDT0RFIGMpCitwYXJzZV9hZGRfY2hhcihSZWFkZXJPYmogKnNlbGYsIFB5X1VDUzQgYykKIHsKICAgICBpZiAoc2VsZi0+ZmllbGRfbGVuID49IGZpZWxkX2xpbWl0KSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChlcnJvcl9vYmosICJmaWVsZCBsYXJnZXIgdGhhbiBmaWVsZCBsaW1pdCAoJWxkKSIsCkBAIC01NTksNyArNTU2LDcgQEAKIH0KIAogc3RhdGljIGludAotcGFyc2VfcHJvY2Vzc19jaGFyKFJlYWRlck9iaiAqc2VsZiwgUHlfVU5JQ09ERSBjKQorcGFyc2VfcHJvY2Vzc19jaGFyKFJlYWRlck9iaiAqc2VsZiwgUHlfVUNTNCBjKQogewogICAgIERpYWxlY3RPYmogKmRpYWxlY3QgPSBzZWxmLT5kaWFsZWN0OwogCkBAIC03NDQsMTAgKzc0MSwxMiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIFJlYWRlcl9pdGVybmV4dChSZWFkZXJPYmogKnNlbGYpCiB7Ci0gICAgUHlPYmplY3QgKmxpbmVvYmo7CiAgICAgUHlPYmplY3QgKmZpZWxkcyA9IE5VTEw7Ci0gICAgUHlfVU5JQ09ERSAqbGluZSwgYzsKLSAgICBQeV9zc2l6ZV90IGxpbmVsZW47CisgICAgUHlfVUNTNCBjOworICAgIFB5X3NzaXplX3QgcG9zLCBsaW5lbGVuOworICAgIHVuc2lnbmVkIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlPYmplY3QgKmxpbmVvYmo7CiAKICAgICBpZiAocGFyc2VfcmVzZXQoc2VsZikgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTc3MSwxNCArNzcwLDEyIEBACiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgICAgICArK3NlbGYtPmxpbmVfbnVtOwotICAgICAgICBsaW5lID0gUHlVbmljb2RlX0FzVW5pY29kZShsaW5lb2JqKTsKLSAgICAgICAgbGluZWxlbiA9IFB5VW5pY29kZV9HZXRTaXplKGxpbmVvYmopOwotICAgICAgICBpZiAobGluZSA9PSBOVUxMIHx8IGxpbmVsZW4gPCAwKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYobGluZW9iaik7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQorICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQobGluZW9iaik7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShsaW5lb2JqKTsKKyAgICAgICAgcG9zID0gMDsKKyAgICAgICAgbGluZWxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGxpbmVvYmopOwogICAgICAgICB3aGlsZSAobGluZWxlbi0tKSB7Ci0gICAgICAgICAgICBjID0gKmxpbmUrKzsKKyAgICAgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBwb3MpOwogICAgICAgICAgICAgaWYgKGMgPT0gJ1wwJykgewogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihsaW5lb2JqKTsKICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoZXJyb3Jfb2JqLApAQCAtNzg5LDYgKzc4Niw3IEBACiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGxpbmVvYmopOwogICAgICAgICAgICAgICAgIGdvdG8gZXJyOwogICAgICAgICAgICAgfQorICAgICAgICAgICAgcG9zKys7CiAgICAgICAgIH0KICAgICAgICAgUHlfREVDUkVGKGxpbmVvYmopOwogICAgICAgICBpZiAocGFyc2VfcHJvY2Vzc19jaGFyKHNlbGYsIDApIDwgMCkKQEAgLTk0NSwxMyArOTQzLDEzIEBACiAgKiByZWNvcmQgbGVuZ3RoLgogICovCiBzdGF0aWMgUHlfc3NpemVfdAotam9pbl9hcHBlbmRfZGF0YShXcml0ZXJPYmogKnNlbGYsIFB5X1VOSUNPREUgKmZpZWxkLCBpbnQgcXVvdGVfZW1wdHksCi0gICAgICAgICAgICAgICAgIGludCAqcXVvdGVkLCBpbnQgY29weV9waGFzZSkKK2pvaW5fYXBwZW5kX2RhdGEoV3JpdGVyT2JqICpzZWxmLCB1bnNpZ25lZCBpbnQgZmllbGRfa2luZCwgdm9pZCAqZmllbGRfZGF0YSwKKyAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBmaWVsZF9sZW4sIGludCBxdW90ZV9lbXB0eSwgaW50ICpxdW90ZWQsCisgICAgICAgICAgICAgICAgIGludCBjb3B5X3BoYXNlKQogewogICAgIERpYWxlY3RPYmogKmRpYWxlY3QgPSBzZWxmLT5kaWFsZWN0OwogICAgIGludCBpOwogICAgIFB5X3NzaXplX3QgcmVjX2xlbjsKLSAgICBQeV9VTklDT0RFICpsaW5ldGVybTsKIAogI2RlZmluZSBBRERDSChjKSBcCiAgICAgZG8ge1wKQEAgLTk2MCwxMCArOTU4LDYgQEAKICAgICAgICAgcmVjX2xlbisrO1wKICAgICB9IHdoaWxlKDApCiAKLSAgICBsaW5ldGVybSA9IFB5VW5pY29kZV9Bc1VuaWNvZGUoZGlhbGVjdC0+bGluZXRlcm1pbmF0b3IpOwotICAgIGlmIChsaW5ldGVybSA9PSBOVUxMKQotICAgICAgICByZXR1cm4gLTE7Ci0KICAgICByZWNfbGVuID0gc2VsZi0+cmVjX2xlbjsKIAogICAgIC8qIElmIHRoaXMgaXMgbm90IHRoZSBmaXJzdCBmaWVsZCB3ZSBuZWVkIGEgZmllbGQgc2VwYXJhdG9yICovCkBAIC05NzYsMTcgKzk3MCwxNiBAQAogCiAgICAgLyogQ29weS9jb3VudCBmaWVsZCBkYXRhICovCiAgICAgLyogSWYgZmllbGQgaXMgbnVsbCBqdXN0IHBhc3Mgb3ZlciAqLwotICAgIGZvciAoaSA9IDA7IGZpZWxkOyBpKyspIHsKLSAgICAgICAgUHlfVU5JQ09ERSBjID0gZmllbGRbaV07CisgICAgZm9yIChpID0gMDsgZmllbGRfZGF0YSAmJiAoaSA8IGZpZWxkX2xlbik7IGkrKykgeworICAgICAgICBQeV9VQ1M0IGMgPSBQeVVuaWNvZGVfUkVBRChmaWVsZF9raW5kLCBmaWVsZF9kYXRhLCBpKTsKICAgICAgICAgaW50IHdhbnRfZXNjYXBlID0gMDsKIAotICAgICAgICBpZiAoYyA9PSAnXDAnKQotICAgICAgICAgICAgYnJlYWs7Ci0KICAgICAgICAgaWYgKGMgPT0gZGlhbGVjdC0+ZGVsaW1pdGVyIHx8CiAgICAgICAgICAgICBjID09IGRpYWxlY3QtPmVzY2FwZWNoYXIgfHwKICAgICAgICAgICAgIGMgPT0gZGlhbGVjdC0+cXVvdGVjaGFyICB8fAotICAgICAgICAgICAgUHlfVU5JQ09ERV9zdHJjaHIobGluZXRlcm0sIGMpKSB7CisgICAgICAgICAgICBQeVVuaWNvZGVfRmluZENoYXIoCisgICAgICAgICAgICAgICAgZGlhbGVjdC0+bGluZXRlcm1pbmF0b3IsIGMsIDAsCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoZGlhbGVjdC0+bGluZXRlcm1pbmF0b3IpLCAxKSA+PSAwKSB7CiAgICAgICAgICAgICBpZiAoZGlhbGVjdC0+cXVvdGluZyA9PSBRVU9URV9OT05FKQogICAgICAgICAgICAgICAgIHdhbnRfZXNjYXBlID0gMTsKICAgICAgICAgICAgIGVsc2UgewpAQCAtMTA0OSwxNCArMTA0MiwxMyBAQAogICAgICAgICAgICAgc2VsZi0+cmVjX3NpemUgPSAocmVjX2xlbiAvIE1FTV9JTkNSICsgMSkgKiBNRU1fSU5DUjsKICAgICAgICAgICAgIGlmIChzZWxmLT5yZWMgIT0gTlVMTCkKICAgICAgICAgICAgICAgICBQeU1lbV9GcmVlKHNlbGYtPnJlYyk7Ci0gICAgICAgICAgICBzZWxmLT5yZWMgPSBQeU1lbV9OZXcoUHlfVU5JQ09ERSwgc2VsZi0+cmVjX3NpemUpOworICAgICAgICAgICAgc2VsZi0+cmVjID0gUHlNZW1fTmV3KFB5X1VDUzQsIHNlbGYtPnJlY19zaXplKTsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUqIG9sZF9yZWMgPSBzZWxmLT5yZWM7CisgICAgICAgICAgICBQeV9VQ1M0KiBvbGRfcmVjID0gc2VsZi0+cmVjOwogCiAgICAgICAgICAgICBzZWxmLT5yZWNfc2l6ZSA9IChyZWNfbGVuIC8gTUVNX0lOQ1IgKyAxKSAqIE1FTV9JTkNSOwotICAgICAgICAgICAgc2VsZi0+cmVjID0gUHlNZW1fUmVzaXplKHNlbGYtPnJlYywgUHlfVU5JQ09ERSwKLSAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5yZWNfc2l6ZSk7CisgICAgICAgICAgICBzZWxmLT5yZWMgPSBQeU1lbV9SZXNpemUob2xkX3JlYywgUHlfVUNTNCwgc2VsZi0+cmVjX3NpemUpOwogICAgICAgICAgICAgaWYgKHNlbGYtPnJlYyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIFB5TWVtX0ZyZWUob2xkX3JlYyk7CiAgICAgICAgIH0KQEAgLTEwNjksMTEgKzEwNjEsMjAgQEAKIH0KIAogc3RhdGljIGludAotam9pbl9hcHBlbmQoV3JpdGVyT2JqICpzZWxmLCBQeV9VTklDT0RFICpmaWVsZCwgaW50ICpxdW90ZWQsIGludCBxdW90ZV9lbXB0eSkKK2pvaW5fYXBwZW5kKFdyaXRlck9iaiAqc2VsZiwgUHlPYmplY3QgKmZpZWxkLCBpbnQgKnF1b3RlZCwgaW50IHF1b3RlX2VtcHR5KQogeworICAgIHVuc2lnbmVkIGludCBmaWVsZF9raW5kID0gLTE7CisgICAgdm9pZCAqZmllbGRfZGF0YSA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBmaWVsZF9sZW4gPSAwOwogICAgIFB5X3NzaXplX3QgcmVjX2xlbjsKIAotICAgIHJlY19sZW4gPSBqb2luX2FwcGVuZF9kYXRhKHNlbGYsIGZpZWxkLCBxdW90ZV9lbXB0eSwgcXVvdGVkLCAwKTsKKyAgICBpZiAoZmllbGQgIT0gTlVMTCkgeworICAgICAgICBmaWVsZF9raW5kID0gUHlVbmljb2RlX0tJTkQoZmllbGQpOworICAgICAgICBmaWVsZF9kYXRhID0gUHlVbmljb2RlX0RBVEEoZmllbGQpOworICAgICAgICBmaWVsZF9sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChmaWVsZCk7CisgICAgfQorICAgIHJlY19sZW4gPSBqb2luX2FwcGVuZF9kYXRhKHNlbGYsIGZpZWxkX2tpbmQsIGZpZWxkX2RhdGEsIGZpZWxkX2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdW90ZV9lbXB0eSwgcXVvdGVkLCAwKTsKICAgICBpZiAocmVjX2xlbiA8IDApCiAgICAgICAgIHJldHVybiAwOwogCkBAIC0xMDgxLDcgKzEwODIsOCBAQAogICAgIGlmICgham9pbl9jaGVja19yZWNfc2l6ZShzZWxmLCByZWNfbGVuKSkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBzZWxmLT5yZWNfbGVuID0gam9pbl9hcHBlbmRfZGF0YShzZWxmLCBmaWVsZCwgcXVvdGVfZW1wdHksIHF1b3RlZCwgMSk7CisgICAgc2VsZi0+cmVjX2xlbiA9IGpvaW5fYXBwZW5kX2RhdGEoc2VsZiwgZmllbGRfa2luZCwgZmllbGRfZGF0YSwgZmllbGRfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1b3RlX2VtcHR5LCBxdW90ZWQsIDEpOwogICAgIHNlbGYtPm51bV9maWVsZHMrKzsKIAogICAgIHJldHVybiAxOwpAQCAtMTA5MCwxMCArMTA5MiwxMSBAQAogc3RhdGljIGludAogam9pbl9hcHBlbmRfbGluZXRlcm1pbmF0b3IoV3JpdGVyT2JqICpzZWxmKQogewotICAgIFB5X3NzaXplX3QgdGVybWluYXRvcl9sZW47Ci0gICAgUHlfVU5JQ09ERSAqdGVybWluYXRvcjsKKyAgICBQeV9zc2l6ZV90IHRlcm1pbmF0b3JfbGVuLCBpOworICAgIHVuc2lnbmVkIGludCB0ZXJtX2tpbmQ7CisgICAgdm9pZCAqdGVybV9kYXRhOwogCi0gICAgdGVybWluYXRvcl9sZW4gPSBQeVVuaWNvZGVfR2V0U2l6ZShzZWxmLT5kaWFsZWN0LT5saW5ldGVybWluYXRvcik7CisgICAgdGVybWluYXRvcl9sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmLT5kaWFsZWN0LT5saW5ldGVybWluYXRvcik7CiAgICAgaWYgKHRlcm1pbmF0b3JfbGVuID09IC0xKQogICAgICAgICByZXR1cm4gMDsKIApAQCAtMTEwMSwxMSArMTEwNCwxMCBAQAogICAgIGlmICgham9pbl9jaGVja19yZWNfc2l6ZShzZWxmLCBzZWxmLT5yZWNfbGVuICsgdGVybWluYXRvcl9sZW4pKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIHRlcm1pbmF0b3IgPSBQeVVuaWNvZGVfQXNVbmljb2RlKHNlbGYtPmRpYWxlY3QtPmxpbmV0ZXJtaW5hdG9yKTsKLSAgICBpZiAodGVybWluYXRvciA9PSBOVUxMKQotICAgICAgICByZXR1cm4gMDsKLSAgICBtZW1tb3ZlKHNlbGYtPnJlYyArIHNlbGYtPnJlY19sZW4sIHRlcm1pbmF0b3IsCi0gICAgICAgIHNpemVvZihQeV9VTklDT0RFKSp0ZXJtaW5hdG9yX2xlbik7CisgICAgdGVybV9raW5kID0gUHlVbmljb2RlX0tJTkQoc2VsZi0+ZGlhbGVjdC0+bGluZXRlcm1pbmF0b3IpOworICAgIHRlcm1fZGF0YSA9IFB5VW5pY29kZV9EQVRBKHNlbGYtPmRpYWxlY3QtPmxpbmV0ZXJtaW5hdG9yKTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgdGVybWluYXRvcl9sZW47IGkrKykKKyAgICAgICAgc2VsZi0+cmVjW3NlbGYtPnJlY19sZW4gKyBpXSA9IFB5VW5pY29kZV9SRUFEKHRlcm1fa2luZCwgdGVybV9kYXRhLCBpKTsKICAgICBzZWxmLT5yZWNfbGVuICs9IHRlcm1pbmF0b3JfbGVuOwogCiAgICAgcmV0dXJuIDE7CkBAIC0xMTIyLDYgKzExMjQsNyBAQAogewogICAgIERpYWxlY3RPYmogKmRpYWxlY3QgPSBzZWxmLT5kaWFsZWN0OwogICAgIFB5X3NzaXplX3QgbGVuLCBpOworICAgIFB5T2JqZWN0ICpsaW5lLCAqcmVzdWx0OwogCiAgICAgaWYgKCFQeVNlcXVlbmNlX0NoZWNrKHNlcSkpCiAgICAgICAgIHJldHVybiBQeUVycl9Gb3JtYXQoZXJyb3Jfb2JqLCAic2VxdWVuY2UgZXhwZWN0ZWQiKTsKQEAgLTExNTUsMTQgKzExNTgsMTEgQEAKICAgICAgICAgfQogCiAgICAgICAgIGlmIChQeVVuaWNvZGVfQ2hlY2soZmllbGQpKSB7Ci0gICAgICAgICAgICBhcHBlbmRfb2sgPSBqb2luX2FwcGVuZChzZWxmLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoZmllbGQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnF1b3RlZCwgbGVuID09IDEpOworICAgICAgICAgICAgYXBwZW5kX29rID0gam9pbl9hcHBlbmQoc2VsZiwgZmllbGQsICZxdW90ZWQsIGxlbiA9PSAxKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRihmaWVsZCk7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAoZmllbGQgPT0gUHlfTm9uZSkgewotICAgICAgICAgICAgYXBwZW5kX29rID0gam9pbl9hcHBlbmQoc2VsZiwgTlVMTCwKLSAgICAgICAgICAgICAgICAgICAgICAgICZxdW90ZWQsIGxlbiA9PSAxKTsKKyAgICAgICAgICAgIGFwcGVuZF9vayA9IGpvaW5fYXBwZW5kKHNlbGYsIE5VTEwsICZxdW90ZWQsIGxlbiA9PSAxKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRihmaWVsZCk7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CkBAIC0xMTcyLDkgKzExNzIsNyBAQAogICAgICAgICAgICAgUHlfREVDUkVGKGZpZWxkKTsKICAgICAgICAgICAgIGlmIChzdHIgPT0gTlVMTCkKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIGFwcGVuZF9vayA9IGpvaW5fYXBwZW5kKHNlbGYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnF1b3RlZCwgbGVuID09IDEpOworICAgICAgICAgICAgYXBwZW5kX29rID0gam9pbl9hcHBlbmQoc2VsZiwgc3RyLCAmcXVvdGVkLCBsZW4gPT0gMSk7CiAgICAgICAgICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICAgICAgfQogICAgICAgICBpZiAoIWFwcGVuZF9vaykKQEAgLTExODYsOSArMTE4NCwxMyBAQAogICAgIGlmICgham9pbl9hcHBlbmRfbGluZXRlcm1pbmF0b3Ioc2VsZikpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxGdW5jdGlvbihzZWxmLT53cml0ZWxpbmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiKHUjKSIsIHNlbGYtPnJlYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPnJlY19sZW4pOworICAgIGxpbmUgPSBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKFB5VW5pY29kZV80QllURV9LSU5ELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2b2lkICopIHNlbGYtPnJlYywgc2VsZi0+cmVjX2xlbik7CisgICAgaWYgKGxpbmUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhzZWxmLT53cml0ZWxpbmUsIGxpbmUsIE5VTEwpOworICAgIFB5X0RFQ1JFRihsaW5lKTsKKyAgICByZXR1cm4gcmVzdWx0OwogfQogCiBQeURvY19TVFJWQVIoY3N2X3dyaXRlcm93c19kb2MsCkBAIC0xMzEyLDYgKzEzMTQsNyBAQAogewogICAgIFB5T2JqZWN0ICogb3V0cHV0X2ZpbGUsICogZGlhbGVjdCA9IE5VTEw7CiAgICAgV3JpdGVyT2JqICogc2VsZiA9IFB5T2JqZWN0X0dDX05ldyhXcml0ZXJPYmosICZXcml0ZXJfVHlwZSk7CisgICAgX1B5X0lERU5USUZJRVIod3JpdGUpOwogCiAgICAgaWYgKCFzZWxmKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTEzMjgsNyArMTMzMSw3IEBACiAgICAgICAgIFB5X0RFQ1JFRihzZWxmKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHNlbGYtPndyaXRlbGluZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob3V0cHV0X2ZpbGUsICJ3cml0ZSIpOworICAgIHNlbGYtPndyaXRlbGluZSA9IF9QeU9iamVjdF9HZXRBdHRySWQob3V0cHV0X2ZpbGUsICZQeUlkX3dyaXRlKTsKICAgICBpZiAoc2VsZi0+d3JpdGVsaW5lID09IE5VTEwgfHwgIVB5Q2FsbGFibGVfQ2hlY2soc2VsZi0+d3JpdGVsaW5lKSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgImFyZ3VtZW50IDEgbXVzdCBoYXZlIGEgXCJ3cml0ZVwiIG1ldGhvZCIpOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fY3R5cGVzL19jdHlwZXMuYyBiL01vZHVsZXMvX2N0eXBlcy9fY3R5cGVzLmMKaW5kZXggOGJlNTk1OC4uNzUxNjMwNiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fY3R5cGVzL19jdHlwZXMuYworKysgYi9Nb2R1bGVzL19jdHlwZXMvX2N0eXBlcy5jCkBAIC0xMTQyLDYgKzExNDIsOCBAQAogV0NoYXJBcnJheV9zZXRfdmFsdWUoQ0RhdGFPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICp2YWx1ZSkKIHsKICAgICBQeV9zc2l6ZV90IHJlc3VsdCA9IDA7CisgICAgUHlfVU5JQ09ERSAqd3N0cjsKKyAgICBQeV9zc2l6ZV90IGxlbjsKIAogICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCkBAIC0xMTU1LDcgKzExNTcsMTEgQEAKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0gZWxzZQogICAgICAgICBQeV9JTkNSRUYodmFsdWUpOwotICAgIGlmICgodW5zaWduZWQpUHlVbmljb2RlX0dFVF9TSVpFKHZhbHVlKSA+IHNlbGYtPmJfc2l6ZS9zaXplb2Yod2NoYXJfdCkpIHsKKworICAgIHdzdHIgPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZSh2YWx1ZSwgJmxlbik7CisgICAgaWYgKHdzdHIgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGlmICgodW5zaWduZWQpbGVuID4gc2VsZi0+Yl9zaXplL3NpemVvZih3Y2hhcl90KSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJpbmcgdG9vIGxvbmciKTsKICAgICAgICAgcmVzdWx0ID0gLTE7CkBAIC0xODQzLDExICsxODQ5LDkgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2socHJvdG8pKSB7Ci0gICAgICAgIFB5T2JqZWN0ICp2ID0gX1B5VW5pY29kZV9Bc0RlZmF1bHRFbmNvZGVkU3RyaW5nKHByb3RvLCBOVUxMKTsKLSAgICAgICAgaWYgKCF2KQorICAgICAgICBwcm90b19zdHIgPSBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZShwcm90bywgJnByb3RvX2xlbik7CisgICAgICAgIGlmICghcHJvdG9fc3RyKQogICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgcHJvdG9fc3RyID0gUHlCeXRlc19BU19TVFJJTkcodik7Ci0gICAgICAgIHByb3RvX2xlbiA9IFB5Qnl0ZXNfR0VUX1NJWkUodik7CiAgICAgfSBlbHNlIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICJjbGFzcyBtdXN0IGRlZmluZSBhICdfdHlwZV8nIHN0cmluZyBhdHRyaWJ1dGUiKTsKQEAgLTM2ODEsOCArMzY4NSwxMCBAQAogICAgICAgICAgICAgUHlUdXBsZV9TRVRfSVRFTSh0dXAsIGluZGV4LCB2KTsKICAgICAgICAgICAgIGluZGV4Kys7CiAgICAgICAgIH0gZWxzZSBpZiAoYml0ICYgb3V0bWFzaykgeworICAgICAgICAgICAgX1B5X0lERU5USUZJRVIoX19jdHlwZXNfZnJvbV9vdXRwYXJhbV9fKTsKKwogICAgICAgICAgICAgdiA9IFB5VHVwbGVfR0VUX0lURU0oY2FsbGFyZ3MsIGkpOwotICAgICAgICAgICAgdiA9IFB5T2JqZWN0X0NhbGxNZXRob2QodiwgIl9fY3R5cGVzX2Zyb21fb3V0cGFyYW1fXyIsIE5VTEwpOworICAgICAgICAgICAgdiA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodiwgJlB5SWRfX19jdHlwZXNfZnJvbV9vdXRwYXJhbV9fLCBOVUxMKTsKICAgICAgICAgICAgIGlmICh2ID09IE5VTEwgfHwgbnVtcmV0dmFscyA9PSAxKSB7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGNhbGxhcmdzKTsKICAgICAgICAgICAgICAgICByZXR1cm4gdjsKQEAgLTQyNDksNyArNDI1NSw3IEBACiAgICAgICAgICAgICB3Y2hhcl90ICpkZXN0OwogCiAgICAgICAgICAgICBpZiAoc2xpY2VsZW4gPD0gMCkKLSAgICAgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIDApOworICAgICAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfTmV3KDAsIDApOwogICAgICAgICAgICAgaWYgKHN0ZXAgPT0gMSkgewogICAgICAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHB0ciArIHN0YXJ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNsaWNlbGVuKTsKQEAgLTQ1OTksMzggKzQ2MDUsMjAgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBTaW1wbGVfcmVwcihDRGF0YU9iamVjdCAqc2VsZikKIHsKLSAgICBQeU9iamVjdCAqdmFsLCAqbmFtZSwgKmFyZ3MsICpyZXN1bHQ7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpmb3JtYXQ7CisgICAgUHlPYmplY3QgKnZhbCwgKnJlc3VsdDsKIAogICAgIGlmIChQeV9UWVBFKHNlbGYpLT50cF9iYXNlICE9ICZTaW1wbGVfVHlwZSkgewogICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjwlcyBvYmplY3QgYXQgJXA+IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShzZWxmKS0+dHBfbmFtZSwgc2VsZik7CiAgICAgfQogCi0gICAgaWYgKGZvcm1hdCA9PSBOVUxMKSB7Ci0gICAgICAgIGZvcm1hdCA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCIlcyglcikiKTsKLSAgICAgICAgaWYgKGZvcm1hdCA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCiAgICAgdmFsID0gU2ltcGxlX2dldF92YWx1ZShzZWxmKTsKICAgICBpZiAodmFsID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgbmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKFB5X1RZUEUoc2VsZiktPnRwX25hbWUpOwotICAgIGlmIChuYW1lID09IE5VTEwpIHsKLSAgICAgICAgUHlfREVDUkVGKHZhbCk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQotICAgIGFyZ3MgPSBQeVR1cGxlX1BhY2soMiwgbmFtZSwgdmFsKTsKLSAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVzKCVSKSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShzZWxmKS0+dHBfbmFtZSwgdmFsKTsKICAgICBQeV9ERUNSRUYodmFsKTsKLSAgICBpZiAoYXJncyA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIHJlc3VsdCA9IFB5VW5pY29kZV9Gb3JtYXQoZm9ybWF0LCBhcmdzKTsKLSAgICBQeV9ERUNSRUYoYXJncyk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIApAQCAtNDk0Miw3ICs0OTMwLDcgQEAKICAgICAgICAgICAgIHdjaGFyX3QgKmRlc3Q7CiAKICAgICAgICAgICAgIGlmIChsZW4gPD0gMCkKLSAgICAgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIDApOworICAgICAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfTmV3KDAsIDApOwogICAgICAgICAgICAgaWYgKHN0ZXAgPT0gMSkgewogICAgICAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHB0ciArIHN0YXJ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbik7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19jdHlwZXMvY2FsbHByb2MuYyBiL01vZHVsZXMvX2N0eXBlcy9jYWxscHJvYy5jCmluZGV4IDFmM2MxYzAuLmRkNDQxZjUgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2N0eXBlcy9jYWxscHJvYy5jCisrKyBiL01vZHVsZXMvX2N0eXBlcy9jYWxscHJvYy5jCkBAIC02NTgsMTMgKzY1OCw2IEBACiAKICNpZmRlZiBDVFlQRVNfVU5JQ09ERQogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sob2JqKSkgewotI2lmIFB5X1VOSUNPREVfU0laRSA9PSBTSVpFT0ZfV0NIQVJfVAotICAgICAgICBwYS0+ZmZpX3R5cGUgPSAmZmZpX3R5cGVfcG9pbnRlcjsKLSAgICAgICAgcGEtPnZhbHVlLnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShvYmopOwotICAgICAgICBQeV9JTkNSRUYob2JqKTsKLSAgICAgICAgcGEtPmtlZXAgPSBvYmo7Ci0gICAgICAgIHJldHVybiAwOwotI2Vsc2UKICAgICAgICAgcGEtPmZmaV90eXBlID0gJmZmaV90eXBlX3BvaW50ZXI7CiAgICAgICAgIHBhLT52YWx1ZS5wID0gUHlVbmljb2RlX0FzV2lkZUNoYXJTdHJpbmcob2JqLCBOVUxMKTsKICAgICAgICAgaWYgKHBhLT52YWx1ZS5wID09IE5VTEwpCkBAIC02NzUsNyArNjY4LDYgQEAKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4gMDsKLSNlbmRpZgogICAgIH0KICNlbmRpZgogCkBAIC05NTIsOSArOTQ0LDkgQEAKICAgICBlbHNlIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgUHlVbmljb2RlX0FwcGVuZEFuZERlbCgmcywgUHlVbmljb2RlX0Zyb21TdHJpbmcoIj8/PyIpKTsKLSAgICAgICAgaWYgKHMgPT0gTlVMTCkKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQorICAgIGlmIChzID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgUHlFcnJfU2V0T2JqZWN0KGV4Y19jbGFzcywgcyk7CiBlcnJvcjoKICAgICBQeV9YREVDUkVGKHRwKTsKQEAgLTE2OTUsMTMgKzE2ODcsMTUgQEAKICAgICBQeU9iamVjdCAqc3RhdGU7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKICAgICBQeU9iamVjdCAqdG1wOworICAgIF9QeV9JREVOVElGSUVSKF9fbmV3X18pOworICAgIF9QeV9JREVOVElGSUVSKF9fc2V0c3RhdGVfXyk7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9PIiwgJnR5cCwgJnN0YXRlKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZCh0eXAsICJfX25ld19fIiwgIk8iLCB0eXApOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodHlwLCAmUHlJZF9fX25ld19fLCAiTyIsIHR5cCk7CiAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB0bXAgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHJlc3VsdCwgIl9fc2V0c3RhdGVfXyIsICJPIiwgc3RhdGUpOworICAgIHRtcCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocmVzdWx0LCAmUHlJZF9fX3NldHN0YXRlX18sICJPIiwgc3RhdGUpOwogICAgIGlmICh0bXAgPT0gTlVMTCkgewogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKICAgICAgICAgcmV0dXJuIE5VTEw7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19jdHlwZXMvY2ZpZWxkLmMgYi9Nb2R1bGVzL19jdHlwZXMvY2ZpZWxkLmMKaW5kZXggZTJkMWU0Yi4uMWM0ZWJhOSAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fY3R5cGVzL2NmaWVsZC5jCisrKyBiL01vZHVsZXMvX2N0eXBlcy9jZmllbGQuYwpAQCAtOSw3ICs5LDYgQEAKIAogI2RlZmluZSBDVFlQRVNfQ0ZJRUxEX0NBUFNVTEVfTkFNRV9QWU1FTSAiX2N0eXBlcy9jZmllbGQuYyBweW1lbSIKIAotI2lmIFB5X1VOSUNPREVfU0laRSAhPSBTSVpFT0ZfV0NIQVJfVAogc3RhdGljIHZvaWQgcHltZW1fZGVzdHJ1Y3RvcihQeU9iamVjdCAqcHRyKQogewogICAgIHZvaWQgKnAgPSBQeUNhcHN1bGVfR2V0UG9pbnRlcihwdHIsIENUWVBFU19DRklFTERfQ0FQU1VMRV9OQU1FX1BZTUVNKTsKQEAgLTE3LDcgKzE2LDYgQEAKICAgICAgICAgUHlNZW1fRnJlZShwKTsKICAgICB9CiB9Ci0jZW5kaWYKIAogCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtNTIsNyArNTAsNyBAQAogewogICAgIENGaWVsZE9iamVjdCAqc2VsZjsKICAgICBQeU9iamVjdCAqcHJvdG87Ci0gICAgUHlfc3NpemVfdCBzaXplLCBhbGlnbiwgbGVuZ3RoOworICAgIFB5X3NzaXplX3Qgc2l6ZSwgYWxpZ247CiAgICAgU0VURlVOQyBzZXRmdW5jID0gTlVMTDsKICAgICBHRVRGVU5DIGdldGZ1bmMgPSBOVUxMOwogICAgIFN0Z0RpY3RPYmplY3QgKmRpY3Q7CkBAIC0xMDYsNyArMTA0LDYgQEAKICAgICB9CiAKICAgICBzaXplID0gZGljdC0+c2l6ZTsKLSAgICBsZW5ndGggPSBkaWN0LT5sZW5ndGg7CiAgICAgcHJvdG8gPSBkZXNjOwogCiAgICAgLyogIEZpZWxkIGRlc2NyaXB0b3JzIGZvciAnY19jaGFyICogbicgYXJlIGJlIHNjcGVjaWFsIGNhc2VkIHRvCkBAIC0xMjM5LDM3ICsxMjM2LDMwIEBACiBzdGF0aWMgUHlPYmplY3QgKgogVV9nZXQodm9pZCAqcHRyLCBQeV9zc2l6ZV90IHNpemUpCiB7Ci0gICAgUHlPYmplY3QgKnJlc3VsdDsKICAgICBQeV9zc2l6ZV90IGxlbjsKLSAgICBQeV9VTklDT0RFICpwOworICAgIHdjaGFyX3QgKnA7CiAKICAgICBzaXplIC89IHNpemVvZih3Y2hhcl90KTsgLyogd2UgY291bnQgY2hhcmFjdGVyIHVuaXRzIGhlcmUsIG5vdCBieXRlcyAqLwogCi0gICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcigod2NoYXJfdCAqKXB0ciwgc2l6ZSk7Ci0gICAgaWYgKCFyZXN1bHQpCi0gICAgICAgIHJldHVybiBOVUxMOwogICAgIC8qIFdlIG5lZWQgJ3Jlc3VsdCcgdG8gYmUgYWJsZSB0byBjb3VudCB0aGUgY2hhcmFjdGVycyB3aXRoIHdjc2xlbiwKICAgICAgICBzaW5jZSBwdHIgbWF5IG5vdCBiZSBOVUwgdGVybWluYXRlZC4gIElmIHRoZSBsZW5ndGggaXMgc21hbGxlciAoaWYKICAgICAgICBpdCB3YXMgYWN0dWFsbHkgTlVMIHRlcm1pbmF0ZWQsIHdlIGNvbnN0cnVjdCBhIG5ldyBvbmUgYW5kIHRocm93CiAgICAgICAgYXdheSB0aGUgcmVzdWx0LgogICAgICovCiAgICAgLyogY2hvcCBvZmYgYXQgdGhlIGZpcnN0IE5VTCBjaGFyYWN0ZXIsIGlmIGFueS4gKi8KLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KTsKLSAgICBmb3IgKGxlbiA9IDA7IGxlbiA8IHNpemU7ICsrbGVuKQorICAgIHAgPSAod2NoYXJfdCopcHRyOworICAgIGZvciAobGVuID0gMDsgbGVuIDwgc2l6ZTsgKytsZW4pIHsKICAgICAgICAgaWYgKCFwW2xlbl0pCiAgICAgICAgICAgICBicmVhazsKLQotICAgIGlmIChsZW4gPCBzaXplKSB7Ci0gICAgICAgIFB5T2JqZWN0ICpvYiA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIoKHdjaGFyX3QgKilwdHIsIGxlbik7Ci0gICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwotICAgICAgICByZXR1cm4gb2I7CiAgICAgfQotICAgIHJldHVybiByZXN1bHQ7CisKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcigod2NoYXJfdCAqKXB0ciwgbGVuKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIFVfc2V0KHZvaWQgKnB0ciwgUHlPYmplY3QgKnZhbHVlLCBQeV9zc2l6ZV90IGxlbmd0aCkKIHsKKyAgICBQeV9VTklDT0RFICp3c3RyOwogICAgIFB5X3NzaXplX3Qgc2l6ZTsKIAogICAgIC8qIEl0J3MgZWFzaWVyIHRvIGNhbGN1bGF0ZSBpbiBjaGFyYWN0ZXJzIHRoYW4gaW4gYnl0ZXMgKi8KQEAgLTEyODIsNyArMTI3MiwxMCBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9IGVsc2UKICAgICAgICAgUHlfSU5DUkVGKHZhbHVlKTsKLSAgICBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKHZhbHVlKTsKKworICAgIHdzdHIgPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZSh2YWx1ZSwgJnNpemUpOworICAgIGlmICh3c3RyID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChzaXplID4gbGVuZ3RoKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgInN0cmluZyB0b28gbG9uZyAoJXpkLCBtYXhpbXVtIGxlbmd0aCAlemQpIiwKQEAgLTE0MDIsNiArMTM5NSw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogWl9zZXQodm9pZCAqcHRyLCBQeU9iamVjdCAqdmFsdWUsIFB5X3NzaXplX3Qgc2l6ZSkKIHsKKyAgICBQeU9iamVjdCAqa2VlcDsKKyAgICB3Y2hhcl90ICpidWZmZXI7CisKICAgICBpZiAodmFsdWUgPT0gUHlfTm9uZSkgewogICAgICAgICAqKHdjaGFyX3QgKiopcHRyID0gTlVMTDsKICAgICAgICAgUHlfSU5DUkVGKHZhbHVlKTsKQEAgLTE0MjEsMzcgKzE0MTcsMjAgQEAKICAgICAgICAgICAgICAgICAgICAgICJ1bmljb2RlIHN0cmluZyBvciBpbnRlZ2VyIGFkZHJlc3MgZXhwZWN0ZWQgaW5zdGVhZCBvZiAlcyBpbnN0YW5jZSIsCiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZS0+b2JfdHlwZS0+dHBfbmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0gZWxzZQotICAgICAgICBQeV9JTkNSRUYodmFsdWUpOwotI2lmIFB5X1VOSUNPREVfU0laRSA9PSBTSVpFT0ZfV0NIQVJfVAotICAgIC8qIFdlIGNhbiBjb3B5IGRpcmVjdGx5LiAgSG0sIGFyZSB1bmljb2RlIG9iamVjdHMgYWx3YXlzIE5VTAotICAgICAgIHRlcm1pbmF0ZWQgaW4gUHl0aG9uLCBpbnRlcm5hbGx5PwotICAgICAqLwotICAgICood2NoYXJfdCAqKilwdHIgPSAod2NoYXJfdCAqKSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2YWx1ZSk7Ci0gICAgcmV0dXJuIHZhbHVlOwotI2Vsc2UKLSAgICB7Ci0gICAgICAgIC8qIFdlIG11c3QgY3JlYXRlIGEgd2NoYXJfdCogYnVmZmVyIGZyb20gdGhlIHVuaWNvZGUgb2JqZWN0LAotICAgICAgICAgICBhbmQga2VlcCBpdCBhbGl2ZSAqLwotICAgICAgICBQeU9iamVjdCAqa2VlcDsKLSAgICAgICAgd2NoYXJfdCAqYnVmZmVyOwotCi0gICAgICAgIGJ1ZmZlciA9IFB5VW5pY29kZV9Bc1dpZGVDaGFyU3RyaW5nKHZhbHVlLCBOVUxMKTsKLSAgICAgICAgaWYgKCFidWZmZXIpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBrZWVwID0gUHlDYXBzdWxlX05ldyhidWZmZXIsIENUWVBFU19DRklFTERfQ0FQU1VMRV9OQU1FX1BZTUVNLCBweW1lbV9kZXN0cnVjdG9yKTsKLSAgICAgICAgaWYgKCFrZWVwKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwotICAgICAgICAgICAgUHlNZW1fRnJlZShidWZmZXIpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgKih3Y2hhcl90ICoqKXB0ciA9ICh3Y2hhcl90ICopYnVmZmVyOwotICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwotICAgICAgICByZXR1cm4ga2VlcDsKICAgICB9Ci0jZW5kaWYKKworICAgIC8qIFdlIG11c3QgY3JlYXRlIGEgd2NoYXJfdCogYnVmZmVyIGZyb20gdGhlIHVuaWNvZGUgb2JqZWN0LAorICAgICAgIGFuZCBrZWVwIGl0IGFsaXZlICovCisgICAgYnVmZmVyID0gUHlVbmljb2RlX0FzV2lkZUNoYXJTdHJpbmcodmFsdWUsIE5VTEwpOworICAgIGlmICghYnVmZmVyKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBrZWVwID0gUHlDYXBzdWxlX05ldyhidWZmZXIsIENUWVBFU19DRklFTERfQ0FQU1VMRV9OQU1FX1BZTUVNLCBweW1lbV9kZXN0cnVjdG9yKTsKKyAgICBpZiAoIWtlZXApIHsKKyAgICAgICAgUHlNZW1fRnJlZShidWZmZXIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgKih3Y2hhcl90ICoqKXB0ciA9IGJ1ZmZlcjsKKyAgICByZXR1cm4ga2VlcDsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTE0OTYsMTMgKzE0NzUsMTYgQEAKIAogICAgIC8qIGNyZWF0ZSBhIEJTVFIgZnJvbSB2YWx1ZSAqLwogICAgIGlmICh2YWx1ZSkgewotICAgICAgICBQeV9zc2l6ZV90IHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUodmFsdWUpOworICAgICAgICB3Y2hhcl90KiB3dmFsdWU7CisgICAgICAgIFB5X3NzaXplX3Qgc2l6ZTsKKyAgICAgICAgd3ZhbHVlID0gUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUodmFsdWUsICZzaXplKTsKKyAgICAgICAgaWYgKHd2YWx1ZSA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmICgodW5zaWduZWQpIHNpemUgIT0gc2l6ZSkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJTdHJpbmcgdG9vIGxvbmcgZm9yIEJTVFIiKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIGJzdHIgPSBTeXNBbGxvY1N0cmluZ0xlbihQeVVuaWNvZGVfQVNfVU5JQ09ERSh2YWx1ZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQpc2l6ZSk7CisgICAgICAgIGJzdHIgPSBTeXNBbGxvY1N0cmluZ0xlbih3dmFsdWUsICh1bnNpZ25lZClzaXplKTsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICB9IGVsc2UKICAgICAgICAgYnN0ciA9IE5VTEw7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19jdHlwZXMvc3RnZGljdC5jIGIvTW9kdWxlcy9fY3R5cGVzL3N0Z2RpY3QuYwppbmRleCAyNjJkMGI0Li5lNWIwZTRjIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19jdHlwZXMvc3RnZGljdC5jCisrKyBiL01vZHVsZXMvX2N0eXBlcy9zdGdkaWN0LmMKQEAgLTQyNiw5ICs0MjYsOSBAQAogICAgICAgICBTdGdEaWN0T2JqZWN0ICpkaWN0OwogICAgICAgICBpbnQgYml0c2l6ZSA9IDA7CiAKLSAgICAgICAgaWYgKCFwYWlyIHx8ICFQeUFyZ19QYXJzZVR1cGxlKHBhaXIsICJPT3xpIiwgJm5hbWUsICZkZXNjLCAmYml0c2l6ZSkpIHsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19BdHRyaWJ1dGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJ19maWVsZHNfJyBtdXN0IGJlIGEgc2VxdWVuY2Ugb2YgcGFpcnMiKTsKKyAgICAgICAgaWYgKCFwYWlyIHx8ICFQeUFyZ19QYXJzZVR1cGxlKHBhaXIsICJVT3xpIiwgJm5hbWUsICZkZXNjLCAmYml0c2l6ZSkpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIidfZmllbGRzXycgbXVzdCBiZSBhIHNlcXVlbmNlIG9mIChuYW1lLCBDIHR5cGUpIHBhaXJzIik7CiAgICAgICAgICAgICBQeV9YREVDUkVGKHBhaXIpOwogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICB9CkBAIC00NzgsNiArNDc4LDcgQEAKICAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICBiaXRzaXplID0gMDsKKwogICAgICAgICBpZiAoaXNTdHJ1Y3QgJiYgIWlzUGFja2VkKSB7CiAgICAgICAgICAgICBjaGFyICpmaWVsZGZtdCA9IGRpY3QtPmZvcm1hdCA/IGRpY3QtPmZvcm1hdCA6ICJCIjsKICAgICAgICAgICAgIGNoYXIgKmZpZWxkbmFtZSA9IF9QeVVuaWNvZGVfQXNTdHJpbmcobmFtZSk7CkBAIC00ODcsMTAgKzQ4OCw2IEBACiAKICAgICAgICAgICAgIGlmIChmaWVsZG5hbWUgPT0gTlVMTCkKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RydWN0dXJlIGZpZWxkIG5hbWUgbXVzdCBiZSBzdHJpbmcgbm90ICVzIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZS0+b2JfdHlwZS0+dHBfbmFtZSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihwYWlyKTsKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICB9CkBAIC01MTUsNiArNTEyLDcgQEAKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KKwogICAgICAgICBpZiAoaXNTdHJ1Y3QpIHsKICAgICAgICAgICAgIHByb3AgPSBQeUNGaWVsZF9Gcm9tRGVzYyhkZXNjLCBpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZmllbGRfc2l6ZSwgYml0c2l6ZSwgJmJpdG9mcywKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2N1cnNlc21vZHVsZS5jIGIvTW9kdWxlcy9fY3Vyc2VzbW9kdWxlLmMKaW5kZXggNWUxYWZhOS4uNjQxNzhkNyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fY3Vyc2VzbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9fY3Vyc2VzbW9kdWxlLmMKQEAgLTEwNSwxMCArMTA1LDYgQEAKICNpbmNsdWRlICJQeXRob24uaCIKIAogCi0jaWZkZWYgX19vc2ZfXwotI2RlZmluZSBTVFJJQ1RfU1lTVl9DVVJTRVMgICAgICAvKiBEb24ndCB1c2UgbmN1cnNlcyBleHRlbnNpb25zICovCi0jZW5kaWYKLQogI2lmZGVmIF9faHB1eAogI2RlZmluZSBTVFJJQ1RfU1lTVl9DVVJTRVMKICNlbmRpZgpAQCAtMTI1LDYgKzEyMSwxMCBAQAogI2luY2x1ZGUgPHRlcm0uaD4KICNlbmRpZgogCisjaWZkZWYgSEFWRV9MQU5HSU5GT19ICisjaW5jbHVkZSA8bGFuZ2luZm8uaD4KKyNlbmRpZgorCiAjaWYgIWRlZmluZWQoSEFWRV9OQ1VSU0VTX0gpICYmIChkZWZpbmVkKHNnaSkgfHwgZGVmaW5lZChfX3N1bikgfHwgZGVmaW5lZChTQ081KSkKICNkZWZpbmUgU1RSSUNUX1NZU1ZfQ1VSU0VTICAgICAgIC8qIERvbid0IHVzZSBuY3Vyc2VzIGV4dGVuc2lvbnMgKi8KIHR5cGVkZWYgY2h0eXBlIGF0dHJfdDsgICAgICAgICAgIC8qIE5vIGF0dHJfdCB0eXBlIGlzIGF2YWlsYWJsZSAqLwpAQCAtMTQ3LDYgKzE0Nyw4IEBACiAvKiBUZWxscyB3aGV0aGVyIHN0YXJ0X2NvbG9yKCkgaGFzIGJlZW4gY2FsbGVkIHRvIGluaXRpYWxpc2UgY29sb3IgdXNhZ2UuICovCiBzdGF0aWMgaW50IGluaXRpYWxpc2VkY29sb3JzID0gRkFMU0U7CiAKK3N0YXRpYyBjaGFyICpzY3JlZW5fZW5jb2RpbmcgPSBOVUxMOworCiAvKiBVdGlsaXR5IE1hY3JvcyAqLwogI2RlZmluZSBQeUN1cnNlc1NldHVwVGVybUNhbGxlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIGlmIChpbml0aWFsaXNlZF9zZXR1cHRlcm0gIT0gVFJVRSkgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApAQCAtMTc5LDcgKzE4MSw3IEBACiAgKi8KIAogc3RhdGljIFB5T2JqZWN0ICoKLVB5Q3Vyc2VzQ2hlY2tFUlIoaW50IGNvZGUsIGNoYXIgKmZuYW1lKQorUHlDdXJzZXNDaGVja0VSUihpbnQgY29kZSwgY29uc3QgY2hhciAqZm5hbWUpCiB7CiAgICAgaWYgKGNvZGUgIT0gRVJSKSB7CiAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKQEAgLTE5NCwyNSArMTk2LDE5MyBAQAogICAgIH0KIH0KIAorLyogQ29udmVydCBhbiBvYmplY3QgdG8gYSBieXRlIChhbiBpbnRlZ2VyIG9mIHR5cGUgY2h0eXBlKToKKworICAgLSBpbnQKKyAgIC0gYnl0ZXMgb2YgbGVuZ3RoIDEKKyAgIC0gc3RyIG9mIGxlbmd0aCAxCisKKyAgIFJldHVybiAxIG9uIHN1Y2Nlc3MsIDAgb24gZXJyb3IgKGludmFsaWQgdHlwZSBvciBpbnRlZ2VyIG92ZXJmbG93KS4gKi8KIHN0YXRpYyBpbnQKLVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZShQeU9iamVjdCAqb2JqLCBjaHR5cGUgKmNoKQorUHlDdXJzZXNfQ29udmVydFRvQ2h0eXBlKFB5Q3Vyc2VzV2luZG93T2JqZWN0ICp3aW4sIFB5T2JqZWN0ICpvYmosIGNodHlwZSAqY2gpCiB7Ci0gICAgaWYgKFB5TG9uZ19DaGVja0V4YWN0KG9iaikpIHsKLSAgICAgICAgaW50IG92ZXJmbG93OwotICAgICAgICAvKiBYWFggc2hvdWxkIHRoZSB0cnVuY2F0aW9uIGJ5IHRoZSBjYXN0IGFsc28gYmUgcmVwb3J0ZWQKLSAgICAgICAgICAgYXMgYW4gZXJyb3I/ICovCi0gICAgICAgICpjaCA9IChjaHR5cGUpIFB5TG9uZ19Bc0xvbmdBbmRPdmVyZmxvdyhvYmosICZvdmVyZmxvdyk7Ci0gICAgICAgIGlmIChvdmVyZmxvdykKKyAgICBsb25nIHZhbHVlOworICAgIGlmKFB5Qnl0ZXNfQ2hlY2sob2JqKSAmJiBQeUJ5dGVzX1NpemUob2JqKSA9PSAxKSB7CisgICAgICAgIHZhbHVlID0gKHVuc2lnbmVkIGNoYXIpUHlCeXRlc19Bc1N0cmluZyhvYmopWzBdOworICAgIH0KKyAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2sob2JqKSkgeworICAgICAgICBpZiAoUHlVbmljb2RlX0dldExlbmd0aChvYmopICE9IDEpIHsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgImV4cGVjdCBieXRlcyBvciBzdHIgb2YgbGVuZ3RoIDEsIG9yIGludCwgIgorICAgICAgICAgICAgICAgICAgICAgICAgICJnb3QgYSBzdHIgb2YgbGVuZ3RoICV6aSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKSk7CiAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICB9IGVsc2UgaWYoUHlCeXRlc19DaGVjayhvYmopCi0gICAgICAgICAgICAgICYmIChQeUJ5dGVzX1NpemUob2JqKSA9PSAxKSkgewotICAgICAgICAqY2ggPSAoY2h0eXBlKSAqUHlCeXRlc19Bc1N0cmluZyhvYmopOwotICAgIH0gZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrKG9iaikgJiYgUHlVbmljb2RlX0dldFNpemUob2JqKSA9PSAxKSB7Ci0gICAgICAgICpjaCA9IChjaHR5cGUpICpQeVVuaWNvZGVfQVNfVU5JQ09ERShvYmopOwotICAgIH0gZWxzZSB7CisgICAgICAgIH0KKyAgICAgICAgdmFsdWUgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKG9iaiwgMCk7CisgICAgICAgIGlmICgxMjggPCB2YWx1ZSkgeworICAgICAgICAgICAgUHlPYmplY3QgKmJ5dGVzOworICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2Rpbmc7CisgICAgICAgICAgICBpZiAod2luKQorICAgICAgICAgICAgICAgIGVuY29kaW5nID0gd2luLT5lbmNvZGluZzsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBlbmNvZGluZyA9IHNjcmVlbl9lbmNvZGluZzsKKyAgICAgICAgICAgIGJ5dGVzID0gUHlVbmljb2RlX0FzRW5jb2RlZE9iamVjdChvYmosIGVuY29kaW5nLCBOVUxMKTsKKyAgICAgICAgICAgIGlmIChieXRlcyA9PSBOVUxMKQorICAgICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICAgICAgaWYgKFB5Qnl0ZXNfR0VUX1NJWkUoYnl0ZXMpID09IDEpCisgICAgICAgICAgICAgICAgdmFsdWUgPSAodW5zaWduZWQgY2hhcilQeUJ5dGVzX0FTX1NUUklORyhieXRlcylbMF07CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgdmFsdWUgPSAtMTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihieXRlcyk7CisgICAgICAgICAgICBpZiAodmFsdWUgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb3ZlcmZsb3c7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSBpZiAoUHlMb25nX0NoZWNrRXhhY3Qob2JqKSkgeworICAgICAgICBpbnQgbG9uZ19vdmVyZmxvdzsKKyAgICAgICAgdmFsdWUgPSBQeUxvbmdfQXNMb25nQW5kT3ZlcmZsb3cob2JqLCAmbG9uZ19vdmVyZmxvdyk7CisgICAgICAgIGlmIChsb25nX292ZXJmbG93KQorICAgICAgICAgICAgZ290byBvdmVyZmxvdzsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiZXhwZWN0IGJ5dGVzIG9yIHN0ciBvZiBsZW5ndGggMSwgb3IgaW50LCBnb3QgJXMiLAorICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShvYmopLT50cF9uYW1lKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQorICAgICpjaCA9IChjaHR5cGUpdmFsdWU7CisgICAgaWYgKChsb25nKSpjaCAhPSB2YWx1ZSkKKyAgICAgICAgZ290byBvdmVyZmxvdzsKICAgICByZXR1cm4gMTsKKworb3ZlcmZsb3c6CisgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICJieXRlIGRvZXNuJ3QgZml0IGluIGNodHlwZSIpOworICAgIHJldHVybiAwOworfQorCisvKiBDb252ZXJ0IGFuIG9iamVjdCB0byBhIGJ5dGUgKGNodHlwZSkgb3IgYSBjaGFyYWN0ZXIgKGNjaGFyX3QpOgorCisgICAgLSBpbnQKKyAgICAtIGJ5dGVzIG9mIGxlbmd0aCAxCisgICAgLSBzdHIgb2YgbGVuZ3RoIDEKKworICAgUmV0dXJuOgorCisgICAgLSAyIGlmIG9iaiBpcyBhIGNoYXJhY3RlciAod3JpdHRlbiBpbnRvICp3Y2gpCisgICAgLSAxIGlmIG9iaiBpcyBhIGJ5dGUgKHdyaXR0ZW4gaW50byAqY2gpCisgICAgLSAwIG9uIGVycm9yOiByYWlzZSBhbiBleGNlcHRpb24gKi8KK3N0YXRpYyBpbnQKK1B5Q3Vyc2VzX0NvbnZlcnRUb0NjaGFyX3QoUHlDdXJzZXNXaW5kb3dPYmplY3QgKndpbiwgUHlPYmplY3QgKm9iaiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY2h0eXBlICpjaAorI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICAgICAgICAgICAgICAgICAgICAgICAgLCBjY2hhcl90ICp3Y2gKKyNlbmRpZgorICAgICAgICAgICAgICAgICAgICAgICAgICApCit7CisgICAgaW50IHJldCA9IDA7CisgICAgbG9uZyB2YWx1ZTsKKyNpZmRlZiBIQVZFX05DVVJTRVNXCisgICAgd2NoYXJfdCBidWZmZXJbMl07CisjZW5kaWYKKworICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sob2JqKSkgeworI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICAgICAgaWYgKFB5VW5pY29kZV9Bc1dpZGVDaGFyKG9iaiwgYnVmZmVyLCAyKSAhPSAxKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJleHBlY3QgYnl0ZXMgb3Igc3RyIG9mIGxlbmd0aCAxLCBvciBpbnQsICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAiZ290IGEgc3RyIG9mIGxlbmd0aCAlemkiLAorICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKG9iaikpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgbWVtc2V0KHdjaC0+Y2hhcnMsIDAsIHNpemVvZih3Y2gtPmNoYXJzKSk7CisgICAgICAgIHdjaC0+Y2hhcnNbMF0gPSBidWZmZXJbMF07CisgICAgICAgIHJldHVybiAyOworI2Vsc2UKKyAgICAgICAgcmV0dXJuIFB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZSh3aW4sIG9iaiwgY2gpOworI2VuZGlmCisgICAgfQorICAgIGVsc2UgaWYoUHlCeXRlc19DaGVjayhvYmopICYmIFB5Qnl0ZXNfU2l6ZShvYmopID09IDEpIHsKKyAgICAgICAgdmFsdWUgPSAodW5zaWduZWQgY2hhcilQeUJ5dGVzX0FzU3RyaW5nKG9iailbMF07CisgICAgICAgIHJldCA9IDE7CisgICAgfQorICAgIGVsc2UgaWYgKFB5TG9uZ19DaGVja0V4YWN0KG9iaikpIHsKKyAgICAgICAgaW50IG92ZXJmbG93OworICAgICAgICB2YWx1ZSA9IFB5TG9uZ19Bc0xvbmdBbmRPdmVyZmxvdyhvYmosICZvdmVyZmxvdyk7CisgICAgICAgIGlmIChvdmVyZmxvdykgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImludCBkb2Vzbid0IGZpdCBpbiBsb25nIik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICAgICAgcmV0ID0gMjsKKyNlbHNlCisgICAgICAgIHJldCA9IDE7CisjZW5kaWYKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiZXhwZWN0IGJ5dGVzIG9yIHN0ciBvZiBsZW5ndGggMSwgb3IgaW50LCBnb3QgJXMiLAorICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShvYmopLT50cF9uYW1lKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICBpZiAocmV0ID09IDIpIHsKKyAgICAgICAgbWVtc2V0KHdjaC0+Y2hhcnMsIDAsIHNpemVvZih3Y2gtPmNoYXJzKSk7CisgICAgICAgIHdjaC0+Y2hhcnNbMF0gPSAod2NoYXJfdCl2YWx1ZTsKKyAgICAgICAgaWYgKChsb25nKXdjaC0+Y2hhcnNbMF0gIT0gdmFsdWUpIHsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19PdmVyZmxvd0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJjaGFyYWN0ZXIgZG9lc24ndCBmaXQgaW4gd2NoYXJfdCIpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZQorI2VuZGlmCisgICAgeworICAgICAgICAqY2ggPSAoY2h0eXBlKXZhbHVlOworICAgICAgICBpZiAoKGxvbmcpKmNoICE9IHZhbHVlIHx8IHZhbHVlIDwgMCB8fCB2YWx1ZSA+IDI1NSkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX092ZXJmbG93RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgImJ5dGUgZG9lc24ndCBmaXQgaW4gY2h0eXBlIik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gcmV0OworfQorCisvKiBDb252ZXJ0IGFuIG9iamVjdCB0byBhIGJ5dGUgc3RyaW5nIChjaGFyKikgb3IgYSB3aWRlIGNoYXJhY3RlciBzdHJpbmcKKyAgICh3Y2hhcl90KikuIFJldHVybjoKKworICAgIC0gMiBpZiBvYmogaXMgYSBjaGFyYWN0ZXIgc3RyaW5nICh3cml0dGVuIGludG8gKndjaCkKKyAgICAtIDEgaWYgb2JqIGlzIGEgYnl0ZSBzdHJpbmcgKHdyaXR0ZW4gaW50byAqYnl0ZXMpCisgICAgLSAwIG9uIGVycm9yOiByYWlzZSBhbiBleGNlcHRpb24gKi8KK3N0YXRpYyBpbnQKK1B5Q3Vyc2VzX0NvbnZlcnRUb1N0cmluZyhQeUN1cnNlc1dpbmRvd09iamVjdCAqd2luLCBQeU9iamVjdCAqb2JqLAorICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICoqYnl0ZXMsIHdjaGFyX3QgKip3c3RyKQoreworICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sob2JqKSkgeworI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICAgICAgYXNzZXJ0ICh3c3RyICE9IE5VTEwpOworICAgICAgICAqd3N0ciA9IFB5VW5pY29kZV9Bc1dpZGVDaGFyU3RyaW5nKG9iaiwgTlVMTCk7CisgICAgICAgIGlmICgqd3N0ciA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiAyOworI2Vsc2UKKyAgICAgICAgYXNzZXJ0ICh3c3RyID09IE5VTEwpOworICAgICAgICAqYnl0ZXMgPSBQeVVuaWNvZGVfQXNFbmNvZGVkT2JqZWN0KG9iaiwgd2luLT5lbmNvZGluZywgTlVMTCk7CisgICAgICAgIGlmICgqYnl0ZXMgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gMTsKKyNlbmRpZgorICAgIH0KKyAgICBlbHNlIGlmIChQeUJ5dGVzX0NoZWNrKG9iaikpIHsKKyAgICAgICAgUHlfSU5DUkVGKG9iaik7CisgICAgICAgICpieXRlcyA9IG9iajsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorCisgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgImV4cGVjdCBieXRlcyBvciBzdHIsIGdvdCAlcyIsCisgICAgICAgICAgICAgICAgIFB5X1RZUEUob2JqKS0+dHBfbmFtZSk7CisgICAgcmV0dXJuIDA7CiB9CiAKIC8qIEZ1bmN0aW9uIHZlcnNpb25zIG9mIHRoZSAzIGZ1bmN0aW9ucyBmb3IgdGVzdGluZyB3aGV0aGVyIGN1cnNlcyBoYXMgYmVlbgpAQCAtMzU4LDEzICs1MjgsMzcgQEAKIC8qIEFsbG9jYXRpb24gYW5kIGRlYWxsb2NhdGlvbiBvZiBXaW5kb3cgT2JqZWN0cyAqLwogCiBzdGF0aWMgUHlPYmplY3QgKgotUHlDdXJzZXNXaW5kb3dfTmV3KFdJTkRPVyAqd2luKQorUHlDdXJzZXNXaW5kb3dfTmV3KFdJTkRPVyAqd2luLCBjb25zdCBjaGFyICplbmNvZGluZykKIHsKICAgICBQeUN1cnNlc1dpbmRvd09iamVjdCAqd287CiAKKyAgICBpZiAoZW5jb2RpbmcgPT0gTlVMTCkgeworI2lmIGRlZmluZWQoTVNfV0lORE9XUykKKyAgICAgICAgY2hhciAqYnVmZmVyWzEwMF07CisgICAgICAgIFVJTlQgY3A7CisgICAgICAgIGNwID0gR2V0Q29uc29sZU91dHB1dENQKCk7CisgICAgICAgIGlmIChjcCAhPSAwKSB7CisgICAgICAgICAgICBQeU9TX3NucHJpbnRmKGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlciksICJjcCV1IiwgY3ApOworICAgICAgICAgICAgZW5jb2RpbmcgPSBidWZmZXI7CisgICAgICAgIH0KKyNlbGlmIGRlZmluZWQoQ09ERVNFVCkKKyAgICAgICAgY29uc3QgY2hhciAqY29kZXNldCA9IG5sX2xhbmdpbmZvKENPREVTRVQpOworICAgICAgICBpZiAoY29kZXNldCAhPSBOVUxMICYmIGNvZGVzZXRbMF0gIT0gMCkKKyAgICAgICAgICAgIGVuY29kaW5nID0gY29kZXNldDsKKyNlbmRpZgorICAgICAgICBpZiAoZW5jb2RpbmcgPT0gTlVMTCkKKyAgICAgICAgICAgIGVuY29kaW5nID0gInV0Zi04IjsKKyAgICB9CisKICAgICB3byA9IFB5T2JqZWN0X05FVyhQeUN1cnNlc1dpbmRvd09iamVjdCwgJlB5Q3Vyc2VzV2luZG93X1R5cGUpOwogICAgIGlmICh3byA9PSBOVUxMKSByZXR1cm4gTlVMTDsKICAgICB3by0+d2luID0gd2luOworICAgIHdvLT5lbmNvZGluZyA9IHN0cmR1cChlbmNvZGluZyk7CisgICAgaWYgKHdvLT5lbmNvZGluZyA9PSBOVUxMKSB7CisgICAgICAgIFB5X0RFQ1JFRih3byk7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KICAgICByZXR1cm4gKFB5T2JqZWN0ICopd287CiB9CiAKQEAgLTM3Miw2ICs1NjYsOCBAQAogUHlDdXJzZXNXaW5kb3dfRGVhbGxvYyhQeUN1cnNlc1dpbmRvd09iamVjdCAqd28pCiB7CiAgICAgaWYgKHdvLT53aW4gIT0gc3Rkc2NyKSBkZWx3aW4od28tPndpbik7CisgICAgaWYgKHdvLT5lbmNvZGluZyAhPSBOVUxMKQorICAgICAgICBmcmVlKHdvLT5lbmNvZGluZyk7CiAgICAgUHlPYmplY3RfREVMKHdvKTsKIH0KIApAQCAtMzgxLDI5ICs1NzcsMzQgQEAKIFB5Q3Vyc2VzV2luZG93X0FkZENoKFB5Q3Vyc2VzV2luZG93T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBpbnQgcnRuLCB4LCB5LCB1c2VfeHkgPSBGQUxTRTsKLSAgICBQeU9iamVjdCAqdGVtcDsKLSAgICBjaHR5cGUgY2ggPSAwOworICAgIFB5T2JqZWN0ICpjaG9iajsKKyAgICBpbnQgdHlwZTsKKyAgICBjaHR5cGUgY2g7CisjaWZkZWYgSEFWRV9OQ1VSU0VTVworICAgIGNjaGFyX3Qgd2NoOworI2VuZGlmCiAgICAgYXR0cl90IGF0dHIgPSBBX05PUk1BTDsKICAgICBsb25nIGxhdHRyOworICAgIGNvbnN0IGNoYXIgKmZ1bmNuYW1lOwogCiAgICAgc3dpdGNoIChQeVR1cGxlX1NpemUoYXJncykpIHsKICAgICBjYXNlIDE6Ci0gICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTztjaCBvciBpbnQiLCAmdGVtcCkpCisgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTztjaCBvciBpbnQiLCAmY2hvYmopKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgMjoKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPbDtjaCBvciBpbnQsYXR0ciIsICZ0ZW1wLCAmbGF0dHIpKQorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9sO2NoIG9yIGludCxhdHRyIiwgJmNob2JqLCAmbGF0dHIpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGF0dHIgPSBsYXR0cjsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSAzOgotICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiaWlPO3kseCxjaCBvciBpbnQiLCAmeSwgJngsICZ0ZW1wKSkKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpTzt5LHgsY2ggb3IgaW50IiwgJnksICZ4LCAmY2hvYmopKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIHVzZV94eSA9IFRSVUU7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgNDoKICAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpT2w7eSx4LGNoIG9yIGludCwgYXR0ciIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmeSwgJngsICZ0ZW1wLCAmbGF0dHIpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnksICZ4LCAmY2hvYmosICZsYXR0cikpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgYXR0ciA9IGxhdHRyOwogICAgICAgICB1c2VfeHkgPSBUUlVFOwpAQCAtNDEzLDE3ICs2MTQsMzMgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgaWYgKCFQeUN1cnNlc19Db252ZXJ0VG9DaHR5cGUodGVtcCwgJmNoKSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiYXJndW1lbnQgMSBvciAzIG11c3QgYmUgYSBjaCBvciBhbiBpbnQiKTsKKyNpZmRlZiBIQVZFX05DVVJTRVNXCisgICAgdHlwZSA9IFB5Q3Vyc2VzX0NvbnZlcnRUb0NjaGFyX3Qoc2VsZiwgY2hvYmosICZjaCwgJndjaCk7CisgICAgaWYgKHR5cGUgPT0gMikgeworICAgICAgICBmdW5jbmFtZSA9ICJhZGRfd2NoIjsKKyAgICAgICAgd2NoLmF0dHIgPSBhdHRyOworICAgICAgICBpZiAodXNlX3h5ID09IFRSVUUpCisgICAgICAgICAgICBydG4gPSBtdndhZGRfd2NoKHNlbGYtPndpbix5LHgsICZ3Y2gpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIHJ0biA9IHdhZGRfd2NoKHNlbGYtPndpbiwgJndjaCk7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZQorI2Vsc2UKKyAgICB0eXBlID0gUHlDdXJzZXNfQ29udmVydFRvQ2NoYXJfdChzZWxmLCBjaG9iaiwgJmNoKTsKKyNlbmRpZgorICAgIGlmICh0eXBlID09IDEpIHsKKyAgICAgICAgZnVuY25hbWUgPSAiYWRkY2giOworICAgICAgICBpZiAodXNlX3h5ID09IFRSVUUpCisgICAgICAgICAgICBydG4gPSBtdndhZGRjaChzZWxmLT53aW4seSx4LCBjaCB8IGF0dHIpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIHJ0biA9IHdhZGRjaChzZWxmLT53aW4sIGNoIHwgYXR0cik7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSB7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLQotICAgIGlmICh1c2VfeHkgPT0gVFJVRSkKLSAgICAgICAgcnRuID0gbXZ3YWRkY2goc2VsZi0+d2luLHkseCwgY2ggfCBhdHRyKTsKLSAgICBlbHNlIHsKLSAgICAgICAgcnRuID0gd2FkZGNoKHNlbGYtPndpbiwgY2ggfCBhdHRyKTsKLSAgICB9Ci0gICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIocnRuLCAiYWRkY2giKTsKKyAgICByZXR1cm4gUHlDdXJzZXNDaGVja0VSUihydG4sIGZ1bmNuYW1lKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTQzMSwyOSArNjQ4LDM0IEBACiB7CiAgICAgaW50IHJ0bjsKICAgICBpbnQgeCwgeTsKLSAgICBjaGFyICpzdHI7CisgICAgaW50IHN0cnR5cGU7CisgICAgUHlPYmplY3QgKnN0cm9iaiwgKmJ5dGVzb2JqOworI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICB3Y2hhcl90ICp3c3RyID0gTlVMTDsKKyNlbmRpZgogICAgIGF0dHJfdCBhdHRyID0gQV9OT1JNQUwgLCBhdHRyX29sZCA9IEFfTk9STUFMOwogICAgIGxvbmcgbGF0dHI7CiAgICAgaW50IHVzZV94eSA9IEZBTFNFLCB1c2VfYXR0ciA9IEZBTFNFOworICAgIGNvbnN0IGNoYXIgKmZ1bmNuYW1lOwogCiAgICAgc3dpdGNoIChQeVR1cGxlX1NpemUoYXJncykpIHsKICAgICBjYXNlIDE6Ci0gICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCJzO3N0ciIsICZzdHIpKQorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiTztzdHIiLCAmc3Ryb2JqKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBicmVhazsKICAgICBjYXNlIDI6Ci0gICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCJzbDtzdHIsYXR0ciIsICZzdHIsICZsYXR0cikpCisgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCJPbDtzdHIsYXR0ciIsICZzdHJvYmosICZsYXR0cikpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgYXR0ciA9IGxhdHRyOwogICAgICAgICB1c2VfYXR0ciA9IFRSVUU7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgMzoKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpcztpbnQsaW50LHN0ciIsICZ5LCAmeCwgJnN0cikpCisgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCJpaU87aW50LGludCxzdHIiLCAmeSwgJngsICZzdHJvYmopKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIHVzZV94eSA9IFRSVUU7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgNDoKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpc2w7aW50LGludCxzdHIsYXR0ciIsICZ5LCAmeCwgJnN0ciwgJmxhdHRyKSkKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpT2w7aW50LGludCxzdHIsYXR0ciIsICZ5LCAmeCwgJnN0cm9iaiwgJmxhdHRyKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBhdHRyID0gbGF0dHI7CiAgICAgICAgIHVzZV94eSA9IHVzZV9hdHRyID0gVFJVRTsKQEAgLTQ2Miw0NyArNjg0LDc0IEBACiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJhZGRzdHIgcmVxdWlyZXMgMSB0byA0IGFyZ3VtZW50cyIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0KKyNpZmRlZiBIQVZFX05DVVJTRVNXCisgICAgc3RydHlwZSA9IFB5Q3Vyc2VzX0NvbnZlcnRUb1N0cmluZyhzZWxmLCBzdHJvYmosICZieXRlc29iaiwgJndzdHIpOworI2Vsc2UKKyAgICBzdHJ0eXBlID0gUHlDdXJzZXNfQ29udmVydFRvU3RyaW5nKHNlbGYsIHN0cm9iaiwgJmJ5dGVzb2JqLCBOVUxMKTsKKyNlbmRpZgorICAgIGlmIChzdHJ0eXBlID09IDApCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmICh1c2VfYXR0ciA9PSBUUlVFKSB7CiAgICAgICAgIGF0dHJfb2xkID0gZ2V0YXR0cnMoc2VsZi0+d2luKTsKICAgICAgICAgKHZvaWQpd2F0dHJzZXQoc2VsZi0+d2luLGF0dHIpOwogICAgIH0KLSAgICBpZiAodXNlX3h5ID09IFRSVUUpCi0gICAgICAgIHJ0biA9IG12d2FkZHN0cihzZWxmLT53aW4seSx4LHN0cik7CisjaWZkZWYgSEFWRV9OQ1VSU0VTVworICAgIGlmIChzdHJ0eXBlID09IDIpIHsKKyAgICAgICAgZnVuY25hbWUgPSAiYWRkd3N0ciI7CisgICAgICAgIGlmICh1c2VfeHkgPT0gVFJVRSkKKyAgICAgICAgICAgIHJ0biA9IG12d2FkZHdzdHIoc2VsZi0+d2luLHkseCx3c3RyKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcnRuID0gd2FkZHdzdHIoc2VsZi0+d2luLHdzdHIpOworICAgICAgICBQeU1lbV9GcmVlKHdzdHIpOworICAgIH0KICAgICBlbHNlCi0gICAgICAgIHJ0biA9IHdhZGRzdHIoc2VsZi0+d2luLHN0cik7CisjZW5kaWYKKyAgICB7CisgICAgICAgIGNoYXIgKnN0ciA9IFB5Qnl0ZXNfQVNfU1RSSU5HKGJ5dGVzb2JqKTsKKyAgICAgICAgZnVuY25hbWUgPSAiYWRkc3RyIjsKKyAgICAgICAgaWYgKHVzZV94eSA9PSBUUlVFKQorICAgICAgICAgICAgcnRuID0gbXZ3YWRkc3RyKHNlbGYtPndpbix5LHgsc3RyKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcnRuID0gd2FkZHN0cihzZWxmLT53aW4sc3RyKTsKKyAgICAgICAgUHlfREVDUkVGKGJ5dGVzb2JqKTsKKyAgICB9CiAgICAgaWYgKHVzZV9hdHRyID09IFRSVUUpCiAgICAgICAgICh2b2lkKXdhdHRyc2V0KHNlbGYtPndpbixhdHRyX29sZCk7Ci0gICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIocnRuLCAiYWRkc3RyIik7CisgICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIocnRuLCBmdW5jbmFtZSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBQeUN1cnNlc1dpbmRvd19BZGROU3RyKFB5Q3Vyc2VzV2luZG93T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBpbnQgcnRuLCB4LCB5LCBuOwotICAgIGNoYXIgKnN0cjsKKyAgICBpbnQgc3RydHlwZTsKKyAgICBQeU9iamVjdCAqc3Ryb2JqLCAqYnl0ZXNvYmo7CisjaWZkZWYgSEFWRV9OQ1VSU0VTVworICAgIHdjaGFyX3QgKndzdHIgPSBOVUxMOworI2VuZGlmCiAgICAgYXR0cl90IGF0dHIgPSBBX05PUk1BTCAsIGF0dHJfb2xkID0gQV9OT1JNQUw7CiAgICAgbG9uZyBsYXR0cjsKICAgICBpbnQgdXNlX3h5ID0gRkFMU0UsIHVzZV9hdHRyID0gRkFMU0U7CisgICAgY29uc3QgY2hhciAqZnVuY25hbWU7CiAKICAgICBzd2l0Y2ggKFB5VHVwbGVfU2l6ZShhcmdzKSkgewogICAgIGNhc2UgMjoKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsInNpO3N0cixuIiwgJnN0ciwgJm4pKQorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiT2k7c3RyLG4iLCAmc3Ryb2JqLCAmbikpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSAzOgotICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywic2lsO3N0cixuLGF0dHIiLCAmc3RyLCAmbiwgJmxhdHRyKSkKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIk9pbDtzdHIsbixhdHRyIiwgJnN0cm9iaiwgJm4sICZsYXR0cikpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgYXR0ciA9IGxhdHRyOwogICAgICAgICB1c2VfYXR0ciA9IFRSVUU7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgNDoKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpc2k7eSx4LHN0cixuIiwgJnksICZ4LCAmc3RyLCAmbikpCisgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCJpaU9pO3kseCxzdHIsbiIsICZ5LCAmeCwgJnN0cm9iaiwgJm4pKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIHVzZV94eSA9IFRSVUU7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgNToKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpc2lsO3kseCxzdHIsbixhdHRyIiwgJnksICZ4LCAmc3RyLCAmbiwgJmxhdHRyKSkKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpT2lsO3kseCxzdHIsbixhdHRyIiwgJnksICZ4LCAmc3Ryb2JqLCAmbiwgJmxhdHRyKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBhdHRyID0gbGF0dHI7CiAgICAgICAgIHVzZV94eSA9IHVzZV9hdHRyID0gVFJVRTsKQEAgLTUxMSwxOCArNzYwLDQxIEBACiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJhZGRuc3RyIHJlcXVpcmVzIDIgdG8gNSBhcmd1bWVudHMiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICBzdHJ0eXBlID0gUHlDdXJzZXNfQ29udmVydFRvU3RyaW5nKHNlbGYsIHN0cm9iaiwgJmJ5dGVzb2JqLCAmd3N0cik7CisjZWxzZQorICAgIHN0cnR5cGUgPSBQeUN1cnNlc19Db252ZXJ0VG9TdHJpbmcoc2VsZiwgc3Ryb2JqLCAmYnl0ZXNvYmosIE5VTEwpOworI2VuZGlmCisgICAgaWYgKHN0cnR5cGUgPT0gMCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZiAodXNlX2F0dHIgPT0gVFJVRSkgewogICAgICAgICBhdHRyX29sZCA9IGdldGF0dHJzKHNlbGYtPndpbik7CiAgICAgICAgICh2b2lkKXdhdHRyc2V0KHNlbGYtPndpbixhdHRyKTsKICAgICB9Ci0gICAgaWYgKHVzZV94eSA9PSBUUlVFKQotICAgICAgICBydG4gPSBtdndhZGRuc3RyKHNlbGYtPndpbix5LHgsc3RyLG4pOworI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICBpZiAoc3RydHlwZSA9PSAyKSB7CisgICAgICAgIGZ1bmNuYW1lID0gImFkZG53c3RyIjsKKyAgICAgICAgaWYgKHVzZV94eSA9PSBUUlVFKQorICAgICAgICAgICAgcnRuID0gbXZ3YWRkbndzdHIoc2VsZi0+d2luLHkseCx3c3RyLG4pOworICAgICAgICBlbHNlCisgICAgICAgICAgICBydG4gPSB3YWRkbndzdHIoc2VsZi0+d2luLHdzdHIsbik7CisgICAgICAgIFB5TWVtX0ZyZWUod3N0cik7CisgICAgfQogICAgIGVsc2UKLSAgICAgICAgcnRuID0gd2FkZG5zdHIoc2VsZi0+d2luLHN0cixuKTsKKyNlbmRpZgorICAgIHsKKyAgICAgICAgY2hhciAqc3RyID0gUHlCeXRlc19BU19TVFJJTkcoYnl0ZXNvYmopOworICAgICAgICBmdW5jbmFtZSA9ICJhZGRuc3RyIjsKKyAgICAgICAgaWYgKHVzZV94eSA9PSBUUlVFKQorICAgICAgICAgICAgcnRuID0gbXZ3YWRkbnN0cihzZWxmLT53aW4seSx4LHN0cixuKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcnRuID0gd2FkZG5zdHIoc2VsZi0+d2luLHN0cixuKTsKKyAgICAgICAgUHlfREVDUkVGKGJ5dGVzb2JqKTsKKyAgICB9CiAgICAgaWYgKHVzZV9hdHRyID09IFRSVUUpCiAgICAgICAgICh2b2lkKXdhdHRyc2V0KHNlbGYtPndpbixhdHRyX29sZCk7Ci0gICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIocnRuLCAiYWRkbnN0ciIpOworICAgIHJldHVybiBQeUN1cnNlc0NoZWNrRVJSKHJ0biwgZnVuY25hbWUpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtNTQ4LDEwICs4MjAsOCBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZSh0ZW1wLCAmYmtnZCkpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImFyZ3VtZW50IDEgb3IgMyBtdXN0IGJlIGEgY2ggb3IgYW4gaW50Iik7CisgICAgaWYgKCFQeUN1cnNlc19Db252ZXJ0VG9DaHR5cGUoc2VsZiwgdGVtcCwgJmJrZ2QpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CiAKICAgICByZXR1cm4gUHlDdXJzZXNDaGVja0VSUih3YmtnZChzZWxmLT53aW4sIGJrZ2QgfCBhdHRyKSwgImJrZ2QiKTsKIH0KQEAgLTYwNiwxMCArODc2LDggQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgaWYgKCFQeUN1cnNlc19Db252ZXJ0VG9DaHR5cGUodGVtcCwgJmJrZ2QpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJhcmd1bWVudCAxIG11c3QgYmUgYSBjaCBvciBhbiBpbnQiKTsKKyAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZShzZWxmLCB0ZW1wLCAmYmtnZCkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KIAogICAgIHdia2dkc2V0KHNlbGYtPndpbiwgYmtnZCB8IGF0dHIpOwogICAgIHJldHVybiBQeUN1cnNlc0NoZWNrRVJSKDAsICJia2dkc2V0Iik7CkBAIC02MzQsMTEgKzkwMiw4IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgZm9yKGk9MDsgaTw4OyBpKyspIHsKLSAgICAgICAgaWYgKHRlbXBbaV0gIT0gTlVMTCAmJiAhUHlDdXJzZXNfQ29udmVydFRvQ2h0eXBlKHRlbXBbaV0sICZjaFtpXSkpIHsKLSAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgImFyZ3VtZW50ICVpIG11c3QgYmUgYSBjaCBvciBhbiBpbnQiLCBpKzEpOworICAgICAgICBpZiAodGVtcFtpXSAhPSBOVUxMICYmICFQeUN1cnNlc19Db252ZXJ0VG9DaHR5cGUoc2VsZiwgdGVtcFtpXSwgJmNoW2ldKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9CiAgICAgfQogCiAgICAgd2JvcmRlcihzZWxmLT53aW4sCkBAIC03ODMsNyArMTA0OCw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIHJldHVybiAoUHlPYmplY3QgKilQeUN1cnNlc1dpbmRvd19OZXcod2luKTsKKyAgICByZXR1cm4gKFB5T2JqZWN0ICopUHlDdXJzZXNXaW5kb3dfTmV3KHdpbiwgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC04MTEsMTAgKzEwNzYsOCBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZSh0ZW1wLCAmY2gpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJhcmd1bWVudCAxIG11c3QgYmUgYSBjaCBvciBhbiBpbnQiKTsKKyAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZShzZWxmLCB0ZW1wLCAmY2gpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CiAKICNpZmRlZiBXSU5ET1dfSEFTX0ZMQUdTCiAgICAgaWYgKHNlbGYtPndpbi0+X2ZsYWdzICYgX0lTUEFEKQpAQCAtOTEwLDYgKzExNzMsNDAgQEAKICAgICB9CiB9CiAKKyNpZmRlZiBIQVZFX05DVVJTRVNXCitzdGF0aWMgUHlPYmplY3QgKgorUHlDdXJzZXNXaW5kb3dfR2V0X1dDaChQeUN1cnNlc1dpbmRvd09iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IHgsIHk7CisgICAgaW50IGN0OworICAgIHdpbnRfdCBydG47CisKKyAgICBzd2l0Y2ggKFB5VHVwbGVfU2l6ZShhcmdzKSkgeworICAgIGNhc2UgMDoKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICBjdCA9IHdnZXRfd2NoKHNlbGYtPndpbiwmcnRuKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSAyOgorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiaWk7eSx4IiwmeSwmeCkpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICBjdCA9IG12d2dldF93Y2goc2VsZi0+d2luLHkseCwmcnRuKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImdldF93Y2ggcmVxdWlyZXMgMCBvciAyIGFyZ3VtZW50cyIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKGN0ID09IEVSUikgeworICAgICAgICAvKiBnZXRfd2NoKCkgcmV0dXJucyBFUlIgaW4gbm9kZWxheSBtb2RlICovCisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUN1cnNlc0Vycm9yLCAibm8gaW5wdXQiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcocnRuKTsKK30KKyNlbmRpZgorCiBzdGF0aWMgUHlPYmplY3QgKgogUHlDdXJzZXNXaW5kb3dfR2V0U3RyKFB5Q3Vyc2VzV2luZG93T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKQEAgLTEwMDEsMTEgKzEyOTgsOCBAQAogICAgIH0KIAogICAgIGlmIChjb2RlICE9IEVSUikgewotICAgICAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZSh0ZW1wLCAmY2gpKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCAxIG9yIDMgbXVzdCBiZSBhIGNoIG9yIGFuIGludCIpOworICAgICAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZShzZWxmLCB0ZW1wLCAmY2gpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KICAgICAgICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIod2hsaW5lKHNlbGYtPndpbiwgY2ggfCBhdHRyLCBuKSwgImhsaW5lIik7CiAgICAgfSBlbHNlCiAgICAgICAgIHJldHVybiBQeUN1cnNlc0NoZWNrRVJSKGNvZGUsICJ3bW92ZSIpOwpAQCAtMTA0NiwxMSArMTM0MCw4IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGlmICghUHlDdXJzZXNfQ29udmVydFRvQ2h0eXBlKHRlbXAsICZjaCkpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCAxIG9yIDMgbXVzdCBiZSBhIGNoIG9yIGFuIGludCIpOworICAgIGlmICghUHlDdXJzZXNfQ29udmVydFRvQ2h0eXBlKHNlbGYsIHRlbXAsICZjaCkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KIAogICAgIGlmICh1c2VfeHkgPT0gVFJVRSkKICAgICAgICAgcnRuID0gbXZ3aW5zY2goc2VsZi0+d2luLHkseCwgY2ggfCBhdHRyKTsKQEAgLTExMjEsMjkgKzE0MTIsMzQgQEAKIHsKICAgICBpbnQgcnRuOwogICAgIGludCB4LCB5OwotICAgIGNoYXIgKnN0cjsKKyAgICBpbnQgc3RydHlwZTsKKyAgICBQeU9iamVjdCAqc3Ryb2JqLCAqYnl0ZXNvYmo7CisjaWZkZWYgSEFWRV9OQ1VSU0VTVworICAgIHdjaGFyX3QgKndzdHIgPSBOVUxMOworI2VuZGlmCiAgICAgYXR0cl90IGF0dHIgPSBBX05PUk1BTCAsIGF0dHJfb2xkID0gQV9OT1JNQUw7CiAgICAgbG9uZyBsYXR0cjsKICAgICBpbnQgdXNlX3h5ID0gRkFMU0UsIHVzZV9hdHRyID0gRkFMU0U7CisgICAgY29uc3QgY2hhciAqZnVuY25hbWU7CiAKICAgICBzd2l0Y2ggKFB5VHVwbGVfU2l6ZShhcmdzKSkgewogICAgIGNhc2UgMToKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsInM7c3RyIiwgJnN0cikpCisgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCJPO3N0ciIsICZzdHJvYmopKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgMjoKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsInNsO3N0cixhdHRyIiwgJnN0ciwgJmxhdHRyKSkKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIk9sO3N0cixhdHRyIiwgJnN0cm9iaiwgJmxhdHRyKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBhdHRyID0gbGF0dHI7CiAgICAgICAgIHVzZV9hdHRyID0gVFJVRTsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSAzOgotICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiaWlzO3kseCxzdHIiLCAmeSwgJngsICZzdHIpKQorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiaWlPO3kseCxzdHIiLCAmeSwgJngsICZzdHJvYmopKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIHVzZV94eSA9IFRSVUU7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgNDoKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpc2w7eSx4LHN0cixhdHRyIiwgJnksICZ4LCAmc3RyLCAmbGF0dHIpKQorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiaWlPbDt5LHgsc3RyLGF0dHIiLCAmeSwgJngsICZzdHJvYmosICZsYXR0cikpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgYXR0ciA9IGxhdHRyOwogICAgICAgICB1c2VfeHkgPSB1c2VfYXR0ciA9IFRSVUU7CkBAIC0xMTUzLDQ2ICsxNDQ5LDc1IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAorI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICBzdHJ0eXBlID0gUHlDdXJzZXNfQ29udmVydFRvU3RyaW5nKHNlbGYsIHN0cm9iaiwgJmJ5dGVzb2JqLCAmd3N0cik7CisjZWxzZQorICAgIHN0cnR5cGUgPSBQeUN1cnNlc19Db252ZXJ0VG9TdHJpbmcoc2VsZiwgc3Ryb2JqLCAmYnl0ZXNvYmosIE5VTEwpOworI2VuZGlmCisgICAgaWYgKHN0cnR5cGUgPT0gMCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAodXNlX2F0dHIgPT0gVFJVRSkgewogICAgICAgICBhdHRyX29sZCA9IGdldGF0dHJzKHNlbGYtPndpbik7CiAgICAgICAgICh2b2lkKXdhdHRyc2V0KHNlbGYtPndpbixhdHRyKTsKICAgICB9Ci0gICAgaWYgKHVzZV94eSA9PSBUUlVFKQotICAgICAgICBydG4gPSBtdndpbnNzdHIoc2VsZi0+d2luLHkseCxzdHIpOworI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICBpZiAoc3RydHlwZSA9PSAyKSB7CisgICAgICAgIGZ1bmNuYW1lID0gImluc3dzdHIiOworICAgICAgICBpZiAodXNlX3h5ID09IFRSVUUpCisgICAgICAgICAgICBydG4gPSBtdndpbnNfd3N0cihzZWxmLT53aW4seSx4LHdzdHIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBydG4gPSB3aW5zX3dzdHIoc2VsZi0+d2luLHdzdHIpOworICAgICAgICBQeU1lbV9GcmVlKHdzdHIpOworICAgIH0KICAgICBlbHNlCi0gICAgICAgIHJ0biA9IHdpbnNzdHIoc2VsZi0+d2luLHN0cik7CisjZW5kaWYKKyAgICB7CisgICAgICAgIGNoYXIgKnN0ciA9IFB5Qnl0ZXNfQVNfU1RSSU5HKGJ5dGVzb2JqKTsKKyAgICAgICAgZnVuY25hbWUgPSAiaW5zc3RyIjsKKyAgICAgICAgaWYgKHVzZV94eSA9PSBUUlVFKQorICAgICAgICAgICAgcnRuID0gbXZ3aW5zc3RyKHNlbGYtPndpbix5LHgsc3RyKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcnRuID0gd2luc3N0cihzZWxmLT53aW4sc3RyKTsKKyAgICAgICAgUHlfREVDUkVGKGJ5dGVzb2JqKTsKKyAgICB9CiAgICAgaWYgKHVzZV9hdHRyID09IFRSVUUpCiAgICAgICAgICh2b2lkKXdhdHRyc2V0KHNlbGYtPndpbixhdHRyX29sZCk7Ci0gICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIocnRuLCAiaW5zc3RyIik7CisgICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIocnRuLCBmdW5jbmFtZSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBQeUN1cnNlc1dpbmRvd19JbnNOU3RyKFB5Q3Vyc2VzV2luZG93T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBpbnQgcnRuLCB4LCB5LCBuOwotICAgIGNoYXIgKnN0cjsKKyAgICBpbnQgc3RydHlwZTsKKyAgICBQeU9iamVjdCAqc3Ryb2JqLCAqYnl0ZXNvYmo7CisjaWZkZWYgSEFWRV9OQ1VSU0VTVworICAgIHdjaGFyX3QgKndzdHIgPSBOVUxMOworI2VuZGlmCiAgICAgYXR0cl90IGF0dHIgPSBBX05PUk1BTCAsIGF0dHJfb2xkID0gQV9OT1JNQUw7CiAgICAgbG9uZyBsYXR0cjsKICAgICBpbnQgdXNlX3h5ID0gRkFMU0UsIHVzZV9hdHRyID0gRkFMU0U7CisgICAgY29uc3QgY2hhciAqZnVuY25hbWU7CiAKICAgICBzd2l0Y2ggKFB5VHVwbGVfU2l6ZShhcmdzKSkgewogICAgIGNhc2UgMjoKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsInNpO3N0cixuIiwgJnN0ciwgJm4pKQorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiT2k7c3RyLG4iLCAmc3Ryb2JqLCAmbikpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSAzOgotICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywic2lsO3N0cixuLGF0dHIiLCAmc3RyLCAmbiwgJmxhdHRyKSkKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIk9pbDtzdHIsbixhdHRyIiwgJnN0cm9iaiwgJm4sICZsYXR0cikpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgYXR0ciA9IGxhdHRyOwogICAgICAgICB1c2VfYXR0ciA9IFRSVUU7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgNDoKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpc2k7eSx4LHN0cixuIiwgJnksICZ4LCAmc3RyLCAmbikpCisgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCJpaU9pO3kseCxzdHIsbiIsICZ5LCAmeCwgJnN0cm9iaiwgJm4pKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIHVzZV94eSA9IFRSVUU7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgNToKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpc2lsO3kseCxzdHIsbixhdHRyIiwgJnksICZ4LCAmc3RyLCAmbiwgJmxhdHRyKSkKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsImlpT2lsO3kseCxzdHIsbixhdHRyIiwgJnksICZ4LCAmc3Ryb2JqLCAmbiwgJmxhdHRyKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBhdHRyID0gbGF0dHI7CiAgICAgICAgIHVzZV94eSA9IHVzZV9hdHRyID0gVFJVRTsKQEAgLTEyMDIsMTcgKzE1MjcsNDEgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCisjaWZkZWYgSEFWRV9OQ1VSU0VTVworICAgIHN0cnR5cGUgPSBQeUN1cnNlc19Db252ZXJ0VG9TdHJpbmcoc2VsZiwgc3Ryb2JqLCAmYnl0ZXNvYmosICZ3c3RyKTsKKyNlbHNlCisgICAgc3RydHlwZSA9IFB5Q3Vyc2VzX0NvbnZlcnRUb1N0cmluZyhzZWxmLCBzdHJvYmosICZieXRlc29iaiwgTlVMTCk7CisjZW5kaWYKKyAgICBpZiAoc3RydHlwZSA9PSAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmICh1c2VfYXR0ciA9PSBUUlVFKSB7CiAgICAgICAgIGF0dHJfb2xkID0gZ2V0YXR0cnMoc2VsZi0+d2luKTsKICAgICAgICAgKHZvaWQpd2F0dHJzZXQoc2VsZi0+d2luLGF0dHIpOwogICAgIH0KLSAgICBpZiAodXNlX3h5ID09IFRSVUUpCi0gICAgICAgIHJ0biA9IG12d2luc25zdHIoc2VsZi0+d2luLHkseCxzdHIsbik7CisjaWZkZWYgSEFWRV9OQ1VSU0VTVworICAgIGlmIChzdHJ0eXBlID09IDIpIHsKKyAgICAgICAgZnVuY25hbWUgPSAiaW5zbl93c3RyIjsKKyAgICAgICAgaWYgKHVzZV94eSA9PSBUUlVFKQorICAgICAgICAgICAgcnRuID0gbXZ3aW5zX253c3RyKHNlbGYtPndpbix5LHgsd3N0cixuKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcnRuID0gd2luc19ud3N0cihzZWxmLT53aW4sd3N0cixuKTsKKyAgICAgICAgUHlNZW1fRnJlZSh3c3RyKTsKKyAgICB9CiAgICAgZWxzZQotICAgICAgICBydG4gPSB3aW5zbnN0cihzZWxmLT53aW4sc3RyLG4pOworI2VuZGlmCisgICAgeworICAgICAgICBjaGFyICpzdHIgPSBQeUJ5dGVzX0FTX1NUUklORyhieXRlc29iaik7CisgICAgICAgIGZ1bmNuYW1lID0gImluc25zdHIiOworICAgICAgICBpZiAodXNlX3h5ID09IFRSVUUpCisgICAgICAgICAgICBydG4gPSBtdndpbnNuc3RyKHNlbGYtPndpbix5LHgsc3RyLG4pOworICAgICAgICBlbHNlCisgICAgICAgICAgICBydG4gPSB3aW5zbnN0cihzZWxmLT53aW4sc3RyLG4pOworICAgICAgICBQeV9ERUNSRUYoYnl0ZXNvYmopOworICAgIH0KICAgICBpZiAodXNlX2F0dHIgPT0gVFJVRSkKICAgICAgICAgKHZvaWQpd2F0dHJzZXQoc2VsZi0+d2luLGF0dHJfb2xkKTsKLSAgICByZXR1cm4gUHlDdXJzZXNDaGVja0VSUihydG4sICJpbnNuc3RyIik7CisgICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIocnRuLCBmdW5jbmFtZSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xMzg1LDEwICsxNzM0LDEyIEBACiAgICAgd2hpbGUgKDEpIHsKICAgICAgICAgY2hhciBidWZbQlVGU0laXTsKICAgICAgICAgUHlfc3NpemVfdCBuID0gZnJlYWQoYnVmLCAxLCBCVUZTSVosIGZwKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIod3JpdGUpOworCiAgICAgICAgIGlmIChuIDw9IDApCiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgUHlfREVDUkVGKHJlcyk7Ci0gICAgICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc3RyZWFtLCAid3JpdGUiLCAieSMiLCBidWYsIG4pOworICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHN0cmVhbSwgJlB5SWRfd3JpdGUsICJ5IyIsIGJ1Ziwgbik7CiAgICAgICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgICAgIGJyZWFrOwogICAgIH0KQEAgLTE0OTMsNyArMTg0NCw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIHJldHVybiAoUHlPYmplY3QgKilQeUN1cnNlc1dpbmRvd19OZXcod2luKTsKKyAgICByZXR1cm4gKFB5T2JqZWN0ICopUHlDdXJzZXNXaW5kb3dfTmV3KHdpbiwgc2VsZi0+ZW5jb2RpbmcpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMTU2OSwxNiArMTkyMCw1MSBAQAogICAgIH0KIAogICAgIGlmIChjb2RlICE9IEVSUikgewotICAgICAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZSh0ZW1wLCAmY2gpKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCAxIG9yIDMgbXVzdCBiZSBhIGNoIG9yIGFuIGludCIpOworICAgICAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZShzZWxmLCB0ZW1wLCAmY2gpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KICAgICAgICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIod3ZsaW5lKHNlbGYtPndpbiwgY2ggfCBhdHRyLCBuKSwgInZsaW5lIik7CiAgICAgfSBlbHNlCiAgICAgICAgIHJldHVybiBQeUN1cnNlc0NoZWNrRVJSKGNvZGUsICJ3bW92ZSIpOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorUHlDdXJzZXNXaW5kb3dfZ2V0X2VuY29kaW5nKFB5Q3Vyc2VzV2luZG93T2JqZWN0ICpzZWxmLCB2b2lkICpjbG9zdXJlKQoreworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhzZWxmLT5lbmNvZGluZyk7Cit9CisKK3N0YXRpYyBpbnQKK1B5Q3Vyc2VzV2luZG93X3NldF9lbmNvZGluZyhQeUN1cnNlc1dpbmRvd09iamVjdCAqc2VsZiwgUHlPYmplY3QgKnZhbHVlKQoreworICAgIFB5T2JqZWN0ICphc2NpaTsKKyAgICBjaGFyICplbmNvZGluZzsKKworICAgIC8qIEl0IGlzIGlsbGVnYWwgdG8gZGVsIHdpbi5lbmNvZGluZyAqLworICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiZW5jb2RpbmcgbWF5IG5vdCBiZSBkZWxldGVkIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh2YWx1ZSkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJzZXR0aW5nIGVuY29kaW5nIHRvIGEgbm9uLXN0cmluZyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGFzY2lpID0gUHlVbmljb2RlX0FzQVNDSUlTdHJpbmcodmFsdWUpOworICAgIGlmIChhc2NpaSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisgICAgZW5jb2RpbmcgPSBzdHJkdXAoUHlCeXRlc19BU19TVFJJTkcoYXNjaWkpKTsKKyAgICBpZiAoZW5jb2RpbmcgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGZyZWUoc2VsZi0+ZW5jb2RpbmcpOworICAgIHNlbGYtPmVuY29kaW5nID0gZW5jb2Rpbmc7CisgICAgcmV0dXJuIDA7Cit9CisKKwogc3RhdGljIFB5TWV0aG9kRGVmIFB5Q3Vyc2VzV2luZG93X01ldGhvZHNbXSA9IHsKICAgICB7ImFkZGNoIiwgICAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc1dpbmRvd19BZGRDaCwgTUVUSF9WQVJBUkdTfSwKICAgICB7ImFkZG5zdHIiLCAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc1dpbmRvd19BZGROU3RyLCBNRVRIX1ZBUkFSR1N9LApAQCAtMTYwOCw2ICsxOTk0LDkgQEAKICAgICB7ImdldGJrZ2QiLCAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc1dpbmRvd19HZXRCa2dkLCBNRVRIX05PQVJHU30sCiAgICAgeyJnZXRjaCIsICAgICAgICAgICAoUHlDRnVuY3Rpb24pUHlDdXJzZXNXaW5kb3dfR2V0Q2gsIE1FVEhfVkFSQVJHU30sCiAgICAgeyJnZXRrZXkiLCAgICAgICAgICAoUHlDRnVuY3Rpb24pUHlDdXJzZXNXaW5kb3dfR2V0S2V5LCBNRVRIX1ZBUkFSR1N9LAorI2lmZGVmIEhBVkVfTkNVUlNFU1cKKyAgICB7ImdldF93Y2giLCAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc1dpbmRvd19HZXRfV0NoLCBNRVRIX1ZBUkFSR1N9LAorI2VuZGlmCiAgICAgeyJnZXRtYXh5eCIsICAgICAgICAoUHlDRnVuY3Rpb24pUHlDdXJzZXNXaW5kb3dfZ2V0bWF4eXgsIE1FVEhfTk9BUkdTfSwKICAgICB7ImdldHBhcnl4IiwgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc1dpbmRvd19nZXRwYXJ5eCwgTUVUSF9OT0FSR1N9LAogICAgIHsiZ2V0c3RyIiwgICAgICAgICAgKFB5Q0Z1bmN0aW9uKVB5Q3Vyc2VzV2luZG93X0dldFN0ciwgTUVUSF9WQVJBUkdTfSwKQEAgLTE2NjMsNiArMjA1MiwxNCBAQAogICAgIHtOVUxMLCAgICAgICAgICAgICAgICAgIE5VTEx9ICAgLyogc2VudGluZWwgKi8KIH07CiAKK3N0YXRpYyBQeUdldFNldERlZiBQeUN1cnNlc1dpbmRvd19nZXRzZXRzW10gPSB7CisgICAgeyJlbmNvZGluZyIsCisgICAgIChnZXR0ZXIpUHlDdXJzZXNXaW5kb3dfZ2V0X2VuY29kaW5nLAorICAgICAoc2V0dGVyKVB5Q3Vyc2VzV2luZG93X3NldF9lbmNvZGluZywKKyAgICAgInRoZSB0eXBlY29kZSBjaGFyYWN0ZXIgdXNlZCB0byBjcmVhdGUgdGhlIGFycmF5In0sCisgICAge05VTEwsIE5VTEwsIE5VTEwsIE5VTEwgfSAgLyogc2VudGluZWwgKi8KK307CisKIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogCiBQeVR5cGVPYmplY3QgUHlDdXJzZXNXaW5kb3dfVHlwZSA9IHsKQEAgLTE2OTUsNiArMjA5Miw4IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXRlciovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXRlcm5leHQqLwogICAgIFB5Q3Vyc2VzV2luZG93X01ldGhvZHMsICAgICAvKnRwX21ldGhvZHMqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCisgICAgUHlDdXJzZXNXaW5kb3dfZ2V0c2V0cywgICAgIC8qIHRwX2dldHNldCAqLwogfTsKIAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgpAQCAtMTg3NSw2ICsyMjc0LDcgQEAKICAgICBXSU5ET1cgKndpbjsKIAogICAgIFB5Q3Vyc2VzSW5pdGlhbGlzZWQ7CisgICAgX1B5X0lERU5USUZJRVIocmVhZCk7CiAKICAgICBzdHJjcHkoZm4sICIvdG1wL3B5LmN1cnNlcy5nZXR3aW4uWFhYWFhYIik7CiAgICAgZmQgPSBta3N0ZW1wKGZuKTsKQEAgLTE4ODYsNyArMjI4Niw3IEBACiAgICAgICAgIHJlbW92ZShmbik7CiAgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWUoUHlFeGNfSU9FcnJvciwgZm4pOwogICAgIH0KLSAgICBkYXRhID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzdHJlYW0sICJyZWFkIiwgIiIpOworICAgIGRhdGEgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHN0cmVhbSwgJlB5SWRfcmVhZCwgIiIpOwogICAgIGlmIChkYXRhID09IE5VTEwpIHsKICAgICAgICAgZmNsb3NlKGZwKTsKICAgICAgICAgcmVtb3ZlKGZuKTsKQEAgLTE5MTcsNyArMjMxNyw3IEBACiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUN1cnNlc0Vycm9yLCBjYXRjaGFsbF9OVUxMKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiBQeUN1cnNlc1dpbmRvd19OZXcod2luKTsKKyAgICByZXR1cm4gUHlDdXJzZXNXaW5kb3dfTmV3KHdpbiwgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xOTk1LDEwICsyMzk1LDExIEBACiBQeUN1cnNlc19Jbml0U2NyKFB5T2JqZWN0ICpzZWxmKQogewogICAgIFdJTkRPVyAqd2luOworICAgIFB5Q3Vyc2VzV2luZG93T2JqZWN0ICp3aW5vYmo7CiAKICAgICBpZiAoaW5pdGlhbGlzZWQgPT0gVFJVRSkgewogICAgICAgICB3cmVmcmVzaChzdGRzY3IpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopUHlDdXJzZXNXaW5kb3dfTmV3KHN0ZHNjcik7CisgICAgICAgIHJldHVybiAoUHlPYmplY3QgKilQeUN1cnNlc1dpbmRvd19OZXcoc3Rkc2NyLCBOVUxMKTsKICAgICB9CiAKICAgICB3aW4gPSBpbml0c2NyKCk7CkBAIC0yMDkwLDcgKzI0OTEsOSBAQAogICAgIFNldERpY3RJbnQoIkxJTkVTIiwgTElORVMpOwogICAgIFNldERpY3RJbnQoIkNPTFMiLCBDT0xTKTsKIAotICAgIHJldHVybiAoUHlPYmplY3QgKilQeUN1cnNlc1dpbmRvd19OZXcod2luKTsKKyAgICB3aW5vYmogPSAoUHlDdXJzZXNXaW5kb3dPYmplY3QgKilQeUN1cnNlc1dpbmRvd19OZXcod2luLCBOVUxMKTsKKyAgICBzY3JlZW5fZW5jb2RpbmcgPSB3aW5vYmotPmVuY29kaW5nOworICAgIHJldHVybiAoUHlPYmplY3QgKil3aW5vYmo7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0yMjkyLDcgKzI2OTUsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICByZXR1cm4gKFB5T2JqZWN0ICopUHlDdXJzZXNXaW5kb3dfTmV3KHdpbik7CisgICAgcmV0dXJuIChQeU9iamVjdCAqKVB5Q3Vyc2VzV2luZG93X05ldyh3aW4sIE5VTEwpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMjMyNCw3ICsyNzI3LDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgcmV0dXJuIChQeU9iamVjdCAqKVB5Q3Vyc2VzV2luZG93X05ldyh3aW4pOworICAgIHJldHVybiAoUHlPYmplY3QgKilQeUN1cnNlc1dpbmRvd19OZXcod2luLCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI0MTYsNiArMjgxOSw4IEBACiB7CiAgICAgUHlPYmplY3QgKm87CiAgICAgUHlPYmplY3QgKm0gPSBQeUltcG9ydF9JbXBvcnRNb2R1bGVOb0Jsb2NrKCJjdXJzZXMiKTsKKyAgICBfUHlfSURFTlRJRklFUihMSU5FUyk7CisgICAgX1B5X0lERU5USUZJRVIoQ09MUyk7CiAKICAgICBpZiAoIW0pCiAgICAgICAgIHJldHVybiAwOwpAQCAtMjQyNSwxMiArMjgzMCwxMyBAQAogICAgICAgICBQeV9ERUNSRUYobSk7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KLSAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhtLCAiTElORVMiLCBvKSkgeworICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKG0sICZQeUlkX0xJTkVTLCBvKSkgewogICAgICAgICBQeV9ERUNSRUYobSk7CiAgICAgICAgIFB5X0RFQ1JFRihvKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhNb2REaWN0LCAiTElORVMiLCBvKSkgeworICAgIC8qIFB5SWRfTElORVMub2JqZWN0IHdpbGwgYmUgaW5pdGlhbGl6ZWQgaGVyZS4gKi8KKyAgICBpZiAoUHlEaWN0X1NldEl0ZW0oTW9kRGljdCwgUHlJZF9MSU5FUy5vYmplY3QsIG8pKSB7CiAgICAgICAgIFB5X0RFQ1JFRihtKTsKICAgICAgICAgUHlfREVDUkVGKG8pOwogICAgICAgICByZXR1cm4gMDsKQEAgLTI0NDEsMTIgKzI4NDcsMTIgQEAKICAgICAgICAgUHlfREVDUkVGKG0pOwogICAgICAgICByZXR1cm4gMDsKICAgICB9Ci0gICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcobSwgIkNPTFMiLCBvKSkgeworICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKG0sICZQeUlkX0NPTFMsIG8pKSB7CiAgICAgICAgIFB5X0RFQ1JFRihtKTsKICAgICAgICAgUHlfREVDUkVGKG8pOwogICAgICAgICByZXR1cm4gMDsKICAgICB9Ci0gICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKE1vZERpY3QsICJDT0xTIiwgbykpIHsKKyAgICBpZiAoUHlEaWN0X1NldEl0ZW0oTW9kRGljdCwgUHlJZF9DT0xTLm9iamVjdCwgbykpIHsKICAgICAgICAgUHlfREVDUkVGKG0pOwogICAgICAgICBQeV9ERUNSRUYobyk7CiAgICAgICAgIHJldHVybiAwOwpAQCAtMjYzOCwxMCArMzA0NCw4IEBACiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiTztjaCBvciBpbnQiLCZ0ZW1wKSkgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZSh0ZW1wLCAmY2gpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJhcmd1bWVudCBtdXN0IGJlIGEgY2ggb3IgYW4gaW50Iik7CisgICAgaWYgKCFQeUN1cnNlc19Db252ZXJ0VG9DaHR5cGUoTlVMTCwgdGVtcCwgJmNoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQogCiAgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZyh1bmN0cmwoY2gpKTsKIH0KQEAgLTI2NTQsMTYgKzMwNTgsODAgQEAKIAogICAgIFB5Q3Vyc2VzSW5pdGlhbGlzZWQ7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywiTztjaCBvciBpbnQiLCZ0ZW1wKSkgcmV0dXJuIE5VTEw7Ci0KLSAgICBpZiAoIVB5Q3Vyc2VzX0NvbnZlcnRUb0NodHlwZSh0ZW1wLCAmY2gpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJhcmd1bWVudCBtdXN0IGJlIGEgY2ggb3IgYW4gaW50Iik7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIk87Y2ggb3IgaW50IiwmdGVtcCkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KKworICAgIGlmICghUHlDdXJzZXNfQ29udmVydFRvQ2h0eXBlKE5VTEwsIHRlbXAsICZjaCkpCisgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgcmV0dXJuIFB5Q3Vyc2VzQ2hlY2tFUlIodW5nZXRjaChjaCksICJ1bmdldGNoIik7CiB9CiAKKyNpZmRlZiBIQVZFX05DVVJTRVNXCisvKiBDb252ZXJ0IGFuIG9iamVjdCB0byBhIGNoYXJhY3RlciAod2NoYXJfdCk6CisKKyAgICAtIGludAorICAgIC0gc3RyIG9mIGxlbmd0aCAxCisKKyAgIFJldHVybiAxIG9uIHN1Y2Nlc3MsIDAgb24gZXJyb3IuICovCitzdGF0aWMgaW50CitQeUN1cnNlc19Db252ZXJ0VG9XY2hhcl90KFB5T2JqZWN0ICpvYmosCisgICAgICAgICAgICAgICAgICAgICAgICAgIHdjaGFyX3QgKndjaCkKK3sKKyAgICBpZiAoUHlVbmljb2RlX0NoZWNrKG9iaikpIHsKKyAgICAgICAgd2NoYXJfdCBidWZmZXJbMl07CisgICAgICAgIGlmIChQeVVuaWNvZGVfQXNXaWRlQ2hhcihvYmosIGJ1ZmZlciwgMikgIT0gMSkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiZXhwZWN0IGJ5dGVzIG9yIHN0ciBvZiBsZW5ndGggMSwgb3IgaW50LCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgImdvdCBhIHN0ciBvZiBsZW5ndGggJXppIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChvYmopKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgICp3Y2ggPSBidWZmZXJbMF07CisgICAgICAgIHJldHVybiAyOworICAgIH0KKyAgICBlbHNlIGlmIChQeUxvbmdfQ2hlY2tFeGFjdChvYmopKSB7CisgICAgICAgIGxvbmcgdmFsdWU7CisgICAgICAgIGludCBvdmVyZmxvdzsKKyAgICAgICAgdmFsdWUgPSBQeUxvbmdfQXNMb25nQW5kT3ZlcmZsb3cob2JqLCAmb3ZlcmZsb3cpOworICAgICAgICBpZiAob3ZlcmZsb3cpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbnQgZG9lc24ndCBmaXQgaW4gbG9uZyIpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgKndjaCA9ICh3Y2hhcl90KXZhbHVlOworICAgICAgICBpZiAoKGxvbmcpKndjaCAhPSB2YWx1ZSkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX092ZXJmbG93RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgImNoYXJhY3RlciBkb2Vzbid0IGZpdCBpbiB3Y2hhcl90Iik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gMTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiZXhwZWN0IGJ5dGVzIG9yIHN0ciBvZiBsZW5ndGggMSwgb3IgaW50LCBnb3QgJXMiLAorICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShvYmopLT50cF9uYW1lKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorfQorCitzdGF0aWMgUHlPYmplY3QgKgorUHlDdXJzZXNfVW5nZXRfV2NoKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqb2JqOworICAgIHdjaGFyX3Qgd2NoOworCisgICAgUHlDdXJzZXNJbml0aWFsaXNlZDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCJPIiwgJm9iaikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKCFQeUN1cnNlc19Db252ZXJ0VG9XY2hhcl90KG9iaiwgJndjaCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJldHVybiBQeUN1cnNlc0NoZWNrRVJSKHVuZ2V0X3djaCh3Y2gpLCAidW5nZXRfd2NoIik7Cit9CisjZW5kaWYKKwogc3RhdGljIFB5T2JqZWN0ICoKIFB5Q3Vyc2VzX1VzZV9FbnYoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewpAQCAtMjc5MSw2ICszMjU5LDkgQEAKICAgICB7InR5cGVhaGVhZCIsICAgICAgICAgICAoUHlDRnVuY3Rpb24pUHlDdXJzZXNfVHlwZUFoZWFkLCBNRVRIX1ZBUkFSR1N9LAogICAgIHsidW5jdHJsIiwgICAgICAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc19VbkN0cmwsIE1FVEhfVkFSQVJHU30sCiAgICAgeyJ1bmdldGNoIiwgICAgICAgICAgICAgKFB5Q0Z1bmN0aW9uKVB5Q3Vyc2VzX1VuZ2V0Q2gsIE1FVEhfVkFSQVJHU30sCisjaWZkZWYgSEFWRV9OQ1VSU0VTVworICAgIHsidW5nZXRfd2NoIiwgICAgICAgICAgIChQeUNGdW5jdGlvbilQeUN1cnNlc19VbmdldF9XY2gsIE1FVEhfVkFSQVJHU30sCisjZW5kaWYKICAgICB7InVzZV9lbnYiLCAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pUHlDdXJzZXNfVXNlX0VudiwgTUVUSF9WQVJBUkdTfSwKICNpZm5kZWYgU1RSSUNUX1NZU1ZfQ1VSU0VTCiAgICAgeyJ1c2VfZGVmYXVsdF9jb2xvcnMiLCAgKFB5Q0Z1bmN0aW9uKVB5Q3Vyc2VzX1VzZV9EZWZhdWx0X0NvbG9ycywgTUVUSF9OT0FSR1N9LApkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fZGF0ZXRpbWVtb2R1bGUuYyBiL01vZHVsZXMvX2RhdGV0aW1lbW9kdWxlLmMKaW5kZXggNmVlNTMxNy4uM2IwYjM2MiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fZGF0ZXRpbWVtb2R1bGUuYworKysgYi9Nb2R1bGVzL19kYXRldGltZW1vZHVsZS5jCkBAIC03NjYsNyArNzY2LDcgQEAKICAgICBQeU9iamVjdCAqbmFtZTsKIH0gUHlEYXRlVGltZV9UaW1lWm9uZTsKIAotLyogVGhlIGludGVybmVkIFVUQyB0aW1lem9uZSBpbnN0YW5jZSAqLyAKKy8qIFRoZSBpbnRlcm5lZCBVVEMgdGltZXpvbmUgaW5zdGFuY2UgKi8KIHN0YXRpYyBQeU9iamVjdCAqUHlEYXRlVGltZV9UaW1lWm9uZV9VVEM7CiAKIC8qIENyZWF0ZSBuZXcgdGltZXpvbmUgaW5zdGFuY2UgY2hlY2tpbmcgb2Zmc2V0IHJhbmdlLiAgVGhpcwpAQCAtOTQ2LDYgKzk0Niw3IEBACiBjYWxsX3R6bmFtZShQeU9iamVjdCAqdHppbmZvLCBQeU9iamVjdCAqdHppbmZvYXJnKQogewogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgX1B5X0lERU5USUZJRVIodHpuYW1lKTsKIAogICAgIGFzc2VydCh0emluZm8gIT0gTlVMTCk7CiAgICAgYXNzZXJ0KGNoZWNrX3R6aW5mb19zdWJjbGFzcyh0emluZm8pID49IDApOwpAQCAtOTU0LDcgKzk1NSw3IEBACiAgICAgaWYgKHR6aW5mbyA9PSBQeV9Ob25lKQogICAgICAgICBQeV9SRVRVUk5fTk9ORTsKIAotICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QodHppbmZvLCAidHpuYW1lIiwgIk8iLCB0emluZm9hcmcpOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodHppbmZvLCAmUHlJZF90em5hbWUsICJPIiwgdHppbmZvYXJnKTsKIAogICAgIGlmIChyZXN1bHQgPT0gTlVMTCB8fCByZXN1bHQgPT0gUHlfTm9uZSkKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTk4NSw5ICs5ODYsOCBAQAogICAgIGlmICh0emluZm8gPT0gUHlfTm9uZSkKICAgICAgICAgcmV0dXJuIHJlcHI7CiAgICAgLyogR2V0IHJpZCBvZiB0aGUgdHJhaWxpbmcgJyknLiAqLwotICAgIGFzc2VydChQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXByKVtQeVVuaWNvZGVfR0VUX1NJWkUocmVwciktMV0gPT0gJyknKTsKLSAgICB0ZW1wID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKFB5VW5pY29kZV9BU19VTklDT0RFKHJlcHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUocmVwcikgLSAxKTsKKyAgICBhc3NlcnQoUHlVbmljb2RlX1JFQURfQ0hBUihyZXByLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZXByKS0xKSA9PSAnKScpOworICAgIHRlbXAgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKHJlcHIsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlcHIpIC0gMSk7CiAgICAgUHlfREVDUkVGKHJlcHIpOwogICAgIGlmICh0ZW1wID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTA3OSw2ICsxMDc5LDggQEAKICAgICBQeU9iamVjdCAqdGVtcDsKICAgICBQeU9iamVjdCAqdHppbmZvID0gZ2V0X3R6aW5mb19tZW1iZXIob2JqZWN0KTsKICAgICBQeU9iamVjdCAqWnJlcGxhY2VtZW50ID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOworICAgIF9QeV9JREVOVElGSUVSKHJlcGxhY2UpOworCiAgICAgaWYgKFpyZXBsYWNlbWVudCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAodHppbmZvID09IFB5X05vbmUgfHwgdHppbmZvID09IE5VTEwpCkBAIC0xMDk5LDcgKzExMDEsNyBAQAogICAgICAqIHN0cmZ0aW1lIGRvZXNuJ3QgdHJlYXQgdGhlbSBhcyBmb3JtYXQgY29kZXMuCiAgICAgICovCiAgICAgUHlfREVDUkVGKFpyZXBsYWNlbWVudCk7Ci0gICAgWnJlcGxhY2VtZW50ID0gUHlPYmplY3RfQ2FsbE1ldGhvZCh0ZW1wLCAicmVwbGFjZSIsICJzcyIsICIlIiwgIiUlIik7CisgICAgWnJlcGxhY2VtZW50ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCh0ZW1wLCAmUHlJZF9yZXBsYWNlLCAic3MiLCAiJSIsICIlJSIpOwogICAgIFB5X0RFQ1JFRih0ZW1wKTsKICAgICBpZiAoWnJlcGxhY2VtZW50ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTE2NiwzMSArMTE2OCw2IEBACiAgICAgaWYgKCFwaW4pCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgLyogR2l2ZSB1cCBpZiB0aGUgeWVhciBpcyBiZWZvcmUgMTAwMC4KLSAgICAgKiBQeXRob24gc3RyZnRpbWUoKSBwbGF5cyBnYW1lcyB3aXRoIHRoZSB5ZWFyLCBhbmQgZGlmZmVyZW50Ci0gICAgICogZ2FtZXMgZGVwZW5kaW5nIG9uIHdoZXRoZXIgZW52YXIgUFlUSE9OMksgaXMgc2V0LiAgVGhpcyBtYWtlcwotICAgICAqIHllYXJzIGJlZm9yZSAxMDAwIGEgbmlnaHRtYXJlLCBldmVuIGlmIHRoZSBwbGF0Zm9ybSBzdHJmdGltZQotICAgICAqIHN1cHBvcnRzIHRoZW0gKGFuZCBub3QgYWxsIGRvKS4KLSAgICAgKiBXZSBjb3VsZCBnZXQgYSBsb3QgZmFydGhlciBoZXJlIGJ5IGF2b2lkaW5nIFB5dGhvbidzIHN0cmZ0aW1lCi0gICAgICogd3JhcHBlciBhbmQgY2FsbGluZyB0aGUgQyBzdHJmdGltZSgpIGRpcmVjdGx5LCBidXQgdGhhdCBpc24ndAotICAgICAqIGFuIG9wdGlvbiBpbiB0aGUgUHl0aG9uIGltcGxlbWVudGF0aW9uIG9mIHRoaXMgbW9kdWxlLgotICAgICAqLwotICAgIHsKLSAgICAgICAgbG9uZyB5ZWFyOwotICAgICAgICBQeU9iamVjdCAqcHl5ZWFyID0gUHlTZXF1ZW5jZV9HZXRJdGVtKHRpbWV0dXBsZSwgMCk7Ci0gICAgICAgIGlmIChweXllYXIgPT0gTlVMTCkgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGFzc2VydChQeUxvbmdfQ2hlY2socHl5ZWFyKSk7Ci0gICAgICAgIHllYXIgPSBQeUxvbmdfQXNMb25nKHB5eWVhcik7Ci0gICAgICAgIFB5X0RFQ1JFRihweXllYXIpOwotICAgICAgICBpZiAoeWVhciA8IDEwMDApIHsKLSAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLCAieWVhcj0lbGQgaXMgYmVmb3JlICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAiMTAwMDsgdGhlIGRhdGV0aW1lIHN0cmZ0aW1lKCkgIgotICAgICAgICAgICAgICAgICAgICAgICAgICJtZXRob2RzIHJlcXVpcmUgeWVhciA+PSAxMDAwIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICB5ZWFyKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgfQotCiAgICAgLyogU2NhbiB0aGUgaW5wdXQgZm9ybWF0LCBsb29raW5nIGZvciAlei8lWi8lZiBlc2NhcGVzLCBidWlsZGluZwogICAgICAqIGEgbmV3IGZvcm1hdC4gIFNpbmNlIGNvbXB1dGluZyB0aGUgcmVwbGFjZW1lbnRzIGZvciB0aG9zZSBjb2RlcwogICAgICAqIGlzIGV4cGVuc2l2ZSwgZG9uJ3QgdW5sZXNzIHRoZXkncmUgYWN0dWFsbHkgdXNlZC4KQEAgLTEzMDcsMTIgKzEyODQsMTUgQEAKICAgICB7CiAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXQ7CiAgICAgICAgIFB5T2JqZWN0ICp0aW1lID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaygidGltZSIpOworCiAgICAgICAgIGlmICh0aW1lID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIERvbmU7CiAgICAgICAgIGZvcm1hdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKFB5Qnl0ZXNfQVNfU1RSSU5HKG5ld2ZtdCkpOwogICAgICAgICBpZiAoZm9ybWF0ICE9IE5VTEwpIHsKLSAgICAgICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QodGltZSwgInN0cmZ0aW1lIiwgIk9PIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0LCB0aW1ldHVwbGUsIE5VTEwpOworICAgICAgICAgICAgX1B5X0lERU5USUZJRVIoc3RyZnRpbWUpOworCisgICAgICAgICAgICByZXN1bHQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHRpbWUsICZQeUlkX3N0cmZ0aW1lLCAiT08iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQsIHRpbWV0dXBsZSwgTlVMTCk7CiAgICAgICAgICAgICBQeV9ERUNSRUYoZm9ybWF0KTsKICAgICAgICAgfQogICAgICAgICBQeV9ERUNSRUYodGltZSk7CkBAIC0xMzM4LDcgKzEzMTgsOSBAQAogICAgIFB5T2JqZWN0ICp0aW1lID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaygidGltZSIpOwogCiAgICAgaWYgKHRpbWUgIT0gTlVMTCkgewotICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHRpbWUsICJ0aW1lIiwgIigpIik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHRpbWUpOworCisgICAgICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodGltZSwgJlB5SWRfdGltZSwgIigpIik7CiAgICAgICAgIFB5X0RFQ1JFRih0aW1lKTsKICAgICB9CiAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTEzNTUsMTMgKzEzMzcsMTUgQEAKIAogICAgIHRpbWUgPSBQeUltcG9ydF9JbXBvcnRNb2R1bGVOb0Jsb2NrKCJ0aW1lIik7CiAgICAgaWYgKHRpbWUgIT0gTlVMTCkgewotICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHRpbWUsICJzdHJ1Y3RfdGltZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIigoaWlpaWlpaWlpKSkiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHksIG0sIGQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGgsIG1tLCBzcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ZWVrZGF5KHksIG0sIGQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRheXNfYmVmb3JlX21vbnRoKHksIG0pICsgZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkc3RmbGFnKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoc3RydWN0X3RpbWUpOworCisgICAgICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodGltZSwgJlB5SWRfc3RydWN0X3RpbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIigoaWlpaWlpaWlpKSkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHksIG0sIGQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGgsIG1tLCBzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ZWVrZGF5KHksIG0sIGQpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRheXNfYmVmb3JlX21vbnRoKHksIG0pICsgZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkc3RmbGFnKTsKICAgICAgICAgUHlfREVDUkVGKHRpbWUpOwogICAgIH0KICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMTQ2MSw3ICsxNDQ1LDcgQEAKICAgICAgICAgZ290byBEb25lOwogICAgIFB5X0RFQ1JFRih4MSk7CiAgICAgUHlfREVDUkVGKHgyKTsKLSAgICB4MSA9IHgyID0gTlVMTDsKKyAgICAvKiB4MSA9ICovIHgyID0gTlVMTDsKIAogICAgIC8qIHgzIGhhcyBkYXlzK3NlY29uZHMgaW4gc2Vjb25kcyAqLwogICAgIHgxID0gUHlOdW1iZXJfTXVsdGlwbHkoeDMsIHVzX3Blcl9zZWNvbmQpOyAgICAgICAgICAvKiB1cyAqLwpAQCAtMTU5NCwxMSArMTU3OCwxMiBAQAogICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpweXVzX2luID0gTlVMTCwgKnRlbXAsICpweXVzX291dDsKICAgICBQeU9iamVjdCAqcmF0aW8gPSBOVUxMOworICAgIF9QeV9JREVOVElGSUVSKGFzX2ludGVnZXJfcmF0aW8pOwogCiAgICAgcHl1c19pbiA9IGRlbHRhX3RvX21pY3Jvc2Vjb25kcyhkZWx0YSk7CiAgICAgaWYgKHB5dXNfaW4gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmF0aW8gPSBQeU9iamVjdF9DYWxsTWV0aG9kKGZsb2F0b2JqLCAiYXNfaW50ZWdlcl9yYXRpbyIsIE5VTEwpOworICAgIHJhdGlvID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmbG9hdG9iaiwgJlB5SWRfYXNfaW50ZWdlcl9yYXRpbywgTlVMTCk7CiAgICAgaWYgKHJhdGlvID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgdGVtcCA9IFB5TnVtYmVyX011bHRpcGx5KHB5dXNfaW4sIFB5VHVwbGVfR0VUX0lURU0ocmF0aW8sIDApKTsKQEAgLTE2OTIsMTEgKzE2NzcsMTIgQEAKICAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKICAgICBQeU9iamVjdCAqcHl1c19pbiA9IE5VTEwsICp0ZW1wLCAqcHl1c19vdXQ7CiAgICAgUHlPYmplY3QgKnJhdGlvID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihhc19pbnRlZ2VyX3JhdGlvKTsKIAogICAgIHB5dXNfaW4gPSBkZWx0YV90b19taWNyb3NlY29uZHMoZGVsdGEpOwogICAgIGlmIChweXVzX2luID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJhdGlvID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmLCAiYXNfaW50ZWdlcl9yYXRpbyIsIE5VTEwpOworICAgIHJhdGlvID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmLCAmUHlJZF9hc19pbnRlZ2VyX3JhdGlvLCBOVUxMKTsKICAgICBpZiAocmF0aW8gPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKICAgICB0ZW1wID0gUHlOdW1iZXJfTXVsdGlwbHkocHl1c19pbiwgUHlUdXBsZV9HRVRfSVRFTShyYXRpbywgMSkpOwpAQCAtMTgzNyw4ICsxODIzLDcgQEAKICAgICAgICAgcmV0dXJuIGRpZmZfdG9fYm9vbChkaWZmLCBvcCk7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICB9CiB9CiAKQEAgLTE5MzYsMTAgKzE5MjEsOCBAQAogICAgIFB5T2JqZWN0ICpweXVzX3JlbWFpbmRlcjsKICAgICBQeU9iamVjdCAqcmVtYWluZGVyOwogCi0gICAgaWYgKCFQeURlbHRhX0NoZWNrKGxlZnQpIHx8ICFQeURlbHRhX0NoZWNrKHJpZ2h0KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlEZWx0YV9DaGVjayhsZWZ0KSB8fCAhUHlEZWx0YV9DaGVjayhyaWdodCkpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIAogICAgIHB5dXNfbGVmdCA9IGRlbHRhX3RvX21pY3Jvc2Vjb25kcygoUHlEYXRlVGltZV9EZWx0YSAqKWxlZnQpOwogICAgIGlmIChweXVzX2xlZnQgPT0gTlVMTCkKQEAgLTE5NzQsMTAgKzE5NTcsOCBAQAogICAgIFB5T2JqZWN0ICpkZWx0YTsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogCi0gICAgaWYgKCFQeURlbHRhX0NoZWNrKGxlZnQpIHx8ICFQeURlbHRhX0NoZWNrKHJpZ2h0KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlEZWx0YV9DaGVjayhsZWZ0KSB8fCAhUHlEZWx0YV9DaGVjayhyaWdodCkpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIAogICAgIHB5dXNfbGVmdCA9IGRlbHRhX3RvX21pY3Jvc2Vjb25kcygoUHlEYXRlVGltZV9EZWx0YSAqKWxlZnQpOwogICAgIGlmIChweXVzX2xlZnQgPT0gTlVMTCkKQEAgLTI0OTIsNiArMjQ3Myw3IEBACiB7CiAgICAgUHlPYmplY3QgKnRpbWU7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihmcm9tdGltZXN0YW1wKTsKIAogICAgIHRpbWUgPSB0aW1lX3RpbWUoKTsKICAgICBpZiAodGltZSA9PSBOVUxMKQpAQCAtMjUwMyw3ICsyNDg1LDcgQEAKICAgICAgKiB0aW1lLnRpbWUoKSBkZWxpdmVyczsgaWYgc29tZW9uZSB3ZXJlIGdvbnpvIGFib3V0IG9wdGltaXphdGlvbiwKICAgICAgKiBkYXRlLnRvZGF5KCkgY291bGQgZ2V0IGF3YXkgd2l0aCBwbGFpbiBDIHRpbWUoKS4KICAgICAgKi8KLSAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGNscywgImZyb210aW1lc3RhbXAiLCAiTyIsIHRpbWUpOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoY2xzLCAmUHlJZF9mcm9tdGltZXN0YW1wLCAiTyIsIHRpbWUpOwogICAgIFB5X0RFQ1JFRih0aW1lKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQpAQCAtMjU3MSwxMCArMjU1Myw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogZGF0ZV9hZGQoUHlPYmplY3QgKmxlZnQsIFB5T2JqZWN0ICpyaWdodCkKIHsKLSAgICBpZiAoUHlEYXRlVGltZV9DaGVjayhsZWZ0KSB8fCBQeURhdGVUaW1lX0NoZWNrKHJpZ2h0KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmIChQeURhdGVUaW1lX0NoZWNrKGxlZnQpIHx8IFB5RGF0ZVRpbWVfQ2hlY2socmlnaHQpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CisKICAgICBpZiAoUHlEYXRlX0NoZWNrKGxlZnQpKSB7CiAgICAgICAgIC8qIGRhdGUgKyA/Pz8gKi8KICAgICAgICAgaWYgKFB5RGVsdGFfQ2hlY2socmlnaHQpKQpAQCAtMjU5MywxNyArMjU3NCwxNSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlEYXRlVGltZV9EZWx0YSAqKSBsZWZ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsKICAgICB9Ci0gICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogZGF0ZV9zdWJ0cmFjdChQeU9iamVjdCAqbGVmdCwgUHlPYmplY3QgKnJpZ2h0KQogewotICAgIGlmIChQeURhdGVUaW1lX0NoZWNrKGxlZnQpIHx8IFB5RGF0ZVRpbWVfQ2hlY2socmlnaHQpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKFB5RGF0ZVRpbWVfQ2hlY2sobGVmdCkgfHwgUHlEYXRlVGltZV9DaGVjayhyaWdodCkpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKKwogICAgIGlmIChQeURhdGVfQ2hlY2sobGVmdCkpIHsKICAgICAgICAgaWYgKFB5RGF0ZV9DaGVjayhyaWdodCkpIHsKICAgICAgICAgICAgIC8qIGRhdGUgLSBkYXRlICovCkBAIC0yNjIyLDggKzI2MDEsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxKTsKICAgICAgICAgfQogICAgIH0KLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKIApAQCAtMjY0OCw3ICsyNjI2LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBkYXRlX3N0cihQeURhdGVUaW1lX0RhdGUgKnNlbGYpCiB7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0ICopc2VsZiwgImlzb2Zvcm1hdCIsICIoKSIpOworICAgIF9QeV9JREVOVElGSUVSKGlzb2Zvcm1hdCk7CisKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF9pc29mb3JtYXQsICIoKSIpOwogfQogCiAKQEAgLTI2NjcsMTMgKzI2NDcsMTQgQEAKICAgICBQeU9iamVjdCAqcmVzdWx0OwogICAgIFB5T2JqZWN0ICp0dXBsZTsKICAgICBQeU9iamVjdCAqZm9ybWF0OworICAgIF9QeV9JREVOVElGSUVSKHRpbWV0dXBsZSk7CiAgICAgc3RhdGljIGNoYXIgKmtleXdvcmRzW10gPSB7ImZvcm1hdCIsIE5VTEx9OwogCiAgICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3LCAiVTpzdHJmdGltZSIsIGtleXdvcmRzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9ybWF0KSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICB0dXBsZSA9IFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0ICopc2VsZiwgInRpbWV0dXBsZSIsICIoKSIpOworICAgIHR1cGxlID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF90aW1ldHVwbGUsICIoKSIpOwogICAgIGlmICh0dXBsZSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICByZXN1bHQgPSB3cmFwX3N0cmZ0aW1lKChQeU9iamVjdCAqKXNlbGYsIGZvcm1hdCwgdHVwbGUsCkBAIC0yNjg2LDE1ICsyNjY3LDE2IEBACiBkYXRlX2Zvcm1hdChQeURhdGVUaW1lX0RhdGUgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5T2JqZWN0ICpmb3JtYXQ7CisgICAgX1B5X0lERU5USUZJRVIoc3RyZnRpbWUpOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOl9fZm9ybWF0X18iLCAmZm9ybWF0KSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICAvKiBpZiB0aGUgZm9ybWF0IGlzIHplcm8gbGVuZ3RoLCByZXR1cm4gc3RyKHNlbGYpICovCi0gICAgaWYgKFB5VW5pY29kZV9HZXRTaXplKGZvcm1hdCkgPT0gMCkKKyAgICBpZiAoUHlVbmljb2RlX0dldExlbmd0aChmb3JtYXQpID09IDApCiAgICAgICAgIHJldHVybiBQeU9iamVjdF9TdHIoKFB5T2JqZWN0ICopc2VsZik7CiAKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZCgoUHlPYmplY3QgKilzZWxmLCAic3RyZnRpbWUiLCAiTyIsIGZvcm1hdCk7CisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoKFB5T2JqZWN0ICopc2VsZiwgJlB5SWRfc3RyZnRpbWUsICJPIiwgZm9ybWF0KTsKIH0KIAogLyogSVNPIG1ldGhvZHMuICovCkBAIC0yNzQwLDEwICsyNzIyLDggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgX1B5RGF0ZVRpbWVfREFURV9EQVRBU0laRSk7CiAgICAgICAgIHJldHVybiBkaWZmX3RvX2Jvb2woZGlmZiwgb3ApOwogICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBlbHNlCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI3NzUsMjQgKzI3NTUsMTAgQEAKICAgICByZXR1cm4gY2xvbmU7CiB9CiAKLS8qCi0gICAgQm9ycm93ZWQgZnJvbSBzdHJpbmdvYmplY3QuYywgb3JpZ2luYWxseSBpdCB3YXMgc3RyaW5nX2hhc2goKQotKi8KIHN0YXRpYyBQeV9oYXNoX3QKIGdlbmVyaWNfaGFzaCh1bnNpZ25lZCBjaGFyICpkYXRhLCBpbnQgbGVuKQogewotICAgIHJlZ2lzdGVyIHVuc2lnbmVkIGNoYXIgKnA7Ci0gICAgcmVnaXN0ZXIgUHlfaGFzaF90IHg7Ci0KLSAgICBwID0gKHVuc2lnbmVkIGNoYXIgKikgZGF0YTsKLSAgICB4ID0gKnAgPDwgNzsKLSAgICB3aGlsZSAoLS1sZW4gPj0gMCkKLSAgICAgICAgeCA9ICgxMDAwMDAzKngpIF4gKnArKzsKLSAgICB4IF49IGxlbjsKLSAgICBpZiAoeCA9PSAtMSkKLSAgICAgICAgeCA9IC0yOwotCi0gICAgcmV0dXJuIHg7CisgICAgcmV0dXJuIF9QeV9IYXNoQnl0ZXMoZGF0YSwgbGVuKTsKIH0KIAogCkBAIC0zMDk3LDEyICszMDYzLDE0IEBACiB7CiAgICAgUHlPYmplY3QgKmFyZ3MsICpzdGF0ZSwgKnRtcDsKICAgICBQeU9iamVjdCAqZ2V0aW5pdGFyZ3MsICpnZXRzdGF0ZTsKKyAgICBfUHlfSURFTlRJRklFUihfX2dldGluaXRhcmdzX18pOworICAgIF9QeV9JREVOVElGSUVSKF9fZ2V0c3RhdGVfXyk7CiAKICAgICB0bXAgPSBQeVR1cGxlX05ldygwKTsKICAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgZ2V0aW5pdGFyZ3MgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHNlbGYsICJfX2dldGluaXRhcmdzX18iKTsKKyAgICBnZXRpbml0YXJncyA9IF9QeU9iamVjdF9HZXRBdHRySWQoc2VsZiwgJlB5SWRfX19nZXRpbml0YXJnc19fKTsKICAgICBpZiAoZ2V0aW5pdGFyZ3MgIT0gTlVMTCkgewogICAgICAgICBhcmdzID0gUHlPYmplY3RfQ2FsbE9iamVjdChnZXRpbml0YXJncywgdG1wKTsKICAgICAgICAgUHlfREVDUkVGKGdldGluaXRhcmdzKTsKQEAgLTMxMTcsNyArMzA4NSw3IEBACiAgICAgICAgIFB5X0lOQ1JFRihhcmdzKTsKICAgICB9CiAKLSAgICBnZXRzdGF0ZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoc2VsZiwgIl9fZ2V0c3RhdGVfXyIpOworICAgIGdldHN0YXRlID0gX1B5T2JqZWN0X0dldEF0dHJJZChzZWxmLCAmUHlJZF9fX2dldHN0YXRlX18pOwogICAgIGlmIChnZXRzdGF0ZSAhPSBOVUxMKSB7CiAgICAgICAgIHN0YXRlID0gUHlPYmplY3RfQ2FsbE9iamVjdChnZXRzdGF0ZSwgdG1wKTsKICAgICAgICAgUHlfREVDUkVGKGdldHN0YXRlKTsKQEAgLTMyNDAsMTAgKzMyMDgsOCBAQAogdGltZXpvbmVfcmljaGNvbXBhcmUoUHlEYXRlVGltZV9UaW1lWm9uZSAqc2VsZiwKICAgICAgICAgICAgICAgICAgICAgIFB5RGF0ZVRpbWVfVGltZVpvbmUgKm90aGVyLCBpbnQgb3ApCiB7Ci0gICAgaWYgKG9wICE9IFB5X0VRICYmIG9wICE9IFB5X05FKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKG9wICE9IFB5X0VRICYmIG9wICE9IFB5X05FKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgcmV0dXJuIGRlbHRhX3JpY2hjb21wYXJlKHNlbGYtPm9mZnNldCwgb3RoZXItPm9mZnNldCwgb3ApOwogfQogCkBAIC0zMjg4LDcgKzMyNTQsNiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHRpbWV6b25lX3N0cihQeURhdGVUaW1lX1RpbWVab25lICpzZWxmKQogewotICAgIGNoYXIgYnVmWzEwXTsKICAgICBpbnQgaG91cnMsIG1pbnV0ZXMsIHNlY29uZHM7CiAgICAgUHlPYmplY3QgKm9mZnNldDsKICAgICBjaGFyIHNpZ247CkBAIC0zMzE0LDExICszMjc5LDkgQEAKICAgICBQeV9ERUNSRUYob2Zmc2V0KTsKICAgICBtaW51dGVzID0gZGl2bW9kKHNlY29uZHMsIDYwLCAmc2Vjb25kcyk7CiAgICAgaG91cnMgPSBkaXZtb2QobWludXRlcywgNjAsICZtaW51dGVzKTsKLSAgICBhc3NlcnQoc2Vjb25kcyA9PSAwKTsKICAgICAvKiBYWFggaWdub3JlIHN1Yi1taW51dGUgZGF0YSwgY3VyZW50bHkgbm90IGFsbG93ZWQuICovCi0gICAgUHlPU19zbnByaW50ZihidWYsIHNpemVvZihidWYpLCAiVVRDJWMlMDJkOiUwMmQiLCBzaWduLCBob3VycywgbWludXRlcyk7Ci0KLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoYnVmKTsKKyAgICBhc3NlcnQoc2Vjb25kcyA9PSAwKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIlVUQyVjJTAyZDolMDJkIiwgc2lnbiwgaG91cnMsIG1pbnV0ZXMpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMzYxNSw3ICszNTc4LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiB0aW1lX3N0cihQeURhdGVUaW1lX1RpbWUgKnNlbGYpCiB7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0ICopc2VsZiwgImlzb2Zvcm1hdCIsICIoKSIpOworICAgIF9QeV9JREVOVElGSUVSKGlzb2Zvcm1hdCk7CisKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF9pc29mb3JtYXQsICIoKSIpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMzY5MiwxMCArMzY1Nyw4IEBACiAgICAgUHlPYmplY3QgKm9mZnNldDEsICpvZmZzZXQyOwogICAgIGludCBkaWZmOwogCi0gICAgaWYgKCEgUHlUaW1lX0NoZWNrKG90aGVyKSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghIFB5VGltZV9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIAogICAgIGlmIChHRVRfVElNRV9UWklORk8oc2VsZikgPT0gR0VUX1RJTUVfVFpJTkZPKG90aGVyKSkgewogICAgICAgICBkaWZmID0gbWVtY21wKCgoUHlEYXRlVGltZV9UaW1lICopc2VsZiktPmRhdGEsCkBAIC00MTk2LDcgKzQxNTksOSBAQAogICAgIGlmIChzZWxmICE9IE5VTEwgJiYgdHppbmZvICE9IFB5X05vbmUpIHsKICAgICAgICAgLyogQ29udmVydCBVVEMgdG8gdHppbmZvJ3Mgem9uZS4gKi8KICAgICAgICAgUHlPYmplY3QgKnRlbXAgPSBzZWxmOwotICAgICAgICBzZWxmID0gUHlPYmplY3RfQ2FsbE1ldGhvZCh0emluZm8sICJmcm9tdXRjIiwgIk8iLCBzZWxmKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZnJvbXV0Yyk7CisKKyAgICAgICAgc2VsZiA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodHppbmZvLCAmUHlJZF9mcm9tdXRjLCAiTyIsIHNlbGYpOwogICAgICAgICBQeV9ERUNSRUYodGVtcCk7CiAgICAgfQogICAgIHJldHVybiBzZWxmOwpAQCAtNDIzMyw3ICs0MTk4LDkgQEAKICAgICBpZiAoc2VsZiAhPSBOVUxMICYmIHR6aW5mbyAhPSBQeV9Ob25lKSB7CiAgICAgICAgIC8qIENvbnZlcnQgVVRDIHRvIHR6aW5mbydzIHpvbmUuICovCiAgICAgICAgIFB5T2JqZWN0ICp0ZW1wID0gc2VsZjsKLSAgICAgICAgc2VsZiA9IFB5T2JqZWN0X0NhbGxNZXRob2QodHppbmZvLCAiZnJvbXV0YyIsICJPIiwgc2VsZik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKGZyb211dGMpOworCisgICAgICAgIHNlbGYgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHR6aW5mbywgJlB5SWRfZnJvbXV0YywgIk8iLCBzZWxmKTsKICAgICAgICAgUHlfREVDUkVGKHRlbXApOwogICAgIH0KICAgICByZXR1cm4gc2VsZjsKQEAgLTQyNTcsOSArNDIyNCwxMCBAQAogZGF0ZXRpbWVfc3RycHRpbWUoUHlPYmplY3QgKmNscywgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgc3RhdGljIFB5T2JqZWN0ICptb2R1bGUgPSBOVUxMOwotICAgIGNvbnN0IFB5X1VOSUNPREUgKnN0cmluZywgKmZvcm1hdDsKKyAgICBQeU9iamVjdCAqc3RyaW5nLCAqZm9ybWF0OworICAgIF9QeV9JREVOVElGSUVSKF9zdHJwdGltZV9kYXRldGltZSk7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInV1OnN0cnB0aW1lIiwgJnN0cmluZywgJmZvcm1hdCkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVVTpzdHJwdGltZSIsICZzdHJpbmcsICZmb3JtYXQpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmIChtb2R1bGUgPT0gTlVMTCkgewpAQCAtNDI2Nyw4ICs0MjM1LDggQEAKICAgICAgICAgaWYgKG1vZHVsZSA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKG1vZHVsZSwgIl9zdHJwdGltZV9kYXRldGltZSIsICJPdXUiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNscywgc3RyaW5nLCBmb3JtYXQpOworICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKG1vZHVsZSwgJlB5SWRfX3N0cnB0aW1lX2RhdGV0aW1lLCAiT09PIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNscywgc3RyaW5nLCBmb3JtYXQpOwogfQogCiAvKiBSZXR1cm4gbmV3IGRhdGV0aW1lIGZyb20gZGF0ZS9kYXRldGltZSBhbmQgdGltZSBhcmd1bWVudHMuICovCkBAIC00Mzg0LDggKzQzNTIsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlEYXRlVGltZV9EZWx0YSAqKSBsZWZ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxKTsKICAgICB9Ci0gICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtNDUxNCw3ICs0NDgxLDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBkYXRldGltZV9zdHIoUHlEYXRlVGltZV9EYXRlVGltZSAqc2VsZikKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZCgoUHlPYmplY3QgKilzZWxmLCAiaXNvZm9ybWF0IiwgIihzKSIsICIgIik7CisgICAgX1B5X0lERU5USUZJRVIoaXNvZm9ybWF0KTsKKworICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCAqKXNlbGYsICZQeUlkX2lzb2Zvcm1hdCwgIihzKSIsICIgIik7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC00NTg3LDggKzQ1NTYsNyBAQAogICAgICAgICAgICAgICAgIFB5X1JFVFVSTl9UUlVFOwogICAgICAgICAgICAgcmV0dXJuIGNtcGVycm9yKHNlbGYsIG90aGVyKTsKICAgICAgICAgfQotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICB9CiAKICAgICBpZiAoR0VUX0RUX1RaSU5GTyhzZWxmKSA9PSBHRVRfRFRfVFpJTkZPKG90aGVyKSkgewpAQCAtNDcyMiw2ICs0NjkwLDcgQEAKICAgICBQeU9iamVjdCAqb2Zmc2V0OwogICAgIFB5T2JqZWN0ICp0ZW1wOwogICAgIFB5T2JqZWN0ICp0emluZm87CisgICAgX1B5X0lERU5USUZJRVIoZnJvbXV0Yyk7CiAgICAgc3RhdGljIGNoYXIgKmtleXdvcmRzW10gPSB7InR6IiwgTlVMTH07CiAKICAgICBpZiAoISBQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3csICJPITphc3RpbWV6b25lIiwga2V5d29yZHMsCkBAIC00NzYzLDcgKzQ3MzIsNyBAQAogICAgIFB5X0RFQ1JFRih0ZW1wKTsKIAogICAgIHRlbXAgPSByZXN1bHQ7Ci0gICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZCh0emluZm8sICJmcm9tdXRjIiwgIk8iLCB0ZW1wKTsKKyAgICByZXN1bHQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHR6aW5mbywgJlB5SWRfZnJvbXV0YywgIk8iLCB0ZW1wKTsKICAgICBQeV9ERUNSRUYodGVtcCk7CiAKICAgICByZXR1cm4gcmVzdWx0OwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fZGJtbW9kdWxlLmMgYi9Nb2R1bGVzL19kYm1tb2R1bGUuYwppbmRleCA4MjdhY2NlLi4zMjdiODczIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19kYm1tb2R1bGUuYworKysgYi9Nb2R1bGVzL19kYm1tb2R1bGUuYwpAQCAtMjEyLDYgKzIxMiw3IEBACiB7CiAgICAgZGJtb2JqZWN0ICpkcCA9IChkYm1vYmplY3QgKilzZWxmOwogICAgIGRhdHVtIGtleSwgdmFsOworICAgIFB5X3NzaXplX3Qgc2l6ZTsKIAogICAgIGlmICgoZHApLT5kaV9kYm0gPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoRGJtRXJyb3IsCkBAIC0yMTksOCArMjIwLDkgQEAKICAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhhcmcpKSB7Ci0gICAgICAgIGFyZyA9IF9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZyhhcmcsIE5VTEwpOwotICAgICAgICBpZiAoYXJnID09IE5VTEwpCisgICAgICAgIGtleS5kcHRyID0gUHlVbmljb2RlX0FzVVRGOEFuZFNpemUoYXJnLCAmc2l6ZSk7CisgICAgICAgIGtleS5kc2l6ZSA9IHNpemU7CisgICAgICAgIGlmIChrZXkuZHB0ciA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KICAgICBpZiAoIVB5Qnl0ZXNfQ2hlY2soYXJnKSkgewpAQCAtMjI5LDggKzIzMSwxMCBAQAogICAgICAgICAgICAgICAgICAgICAgYXJnLT5vYl90eXBlLT50cF9uYW1lKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KLSAgICBrZXkuZHB0ciA9IFB5Qnl0ZXNfQVNfU1RSSU5HKGFyZyk7Ci0gICAga2V5LmRzaXplID0gUHlCeXRlc19HRVRfU0laRShhcmcpOworICAgIGVsc2UgeworICAgICAgICBrZXkuZHB0ciA9IFB5Qnl0ZXNfQVNfU1RSSU5HKGFyZyk7CisgICAgICAgIGtleS5kc2l6ZSA9IFB5Qnl0ZXNfR0VUX1NJWkUoYXJnKTsKKyAgICB9CiAgICAgdmFsID0gZGJtX2ZldGNoKGRwLT5kaV9kYm0sIGtleSk7CiAgICAgcmV0dXJuIHZhbC5kcHRyICE9IE5VTEw7CiB9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19lbGVtZW50dHJlZS5jIGIvTW9kdWxlcy9fZWxlbWVudHRyZWUuYwppbmRleCA3ODg3NzIxLi44ODRlNTBkIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19lbGVtZW50dHJlZS5jCisrKyBiL01vZHVsZXMvX2VsZW1lbnR0cmVlLmMKQEAgLTIyNiw3ICsyMjYsNyBAQAogICAgIFB5T2JqZWN0KiAqY2hpbGRyZW47CiAKICAgICBQeU9iamVjdCogX2NoaWxkcmVuW1NUQVRJQ19DSElMRFJFTl07Ci0gICAgCisKIH0gRWxlbWVudE9iamVjdEV4dHJhOwogCiB0eXBlZGVmIHN0cnVjdCB7CkBAIC0zNTQsMTQgKzM1NCwxNCBAQAogICAgICAgICAvKiB1c2UgUHl0aG9uIDIuNCdzIGxpc3QgZ3Jvd3RoIHN0cmF0ZWd5ICovCiAgICAgICAgIHNpemUgPSAoc2l6ZSA+PiAzKSArIChzaXplIDwgOSA/IDMgOiA2KSArIHNpemU7CiAgICAgICAgIC8qIENvdmVyaXR5IENJRCAjMTgyIHNpemVfZXJyb3I6IEFsbG9jYXRpbmcgMSBieXRlcyB0byBwb2ludGVyICJjaGlsZHJlbiIKLSAgICAgICAgICogd2hpY2ggbmVlZHMgYXQgbGVhc3QgNCBieXRlcy4gCi0gICAgICAgICAqIEFsdGhvdWdoIGl0J3MgYSBmYWxzZSBhbGFybSBhbHdheXMgYXNzdW1lIGF0IGxlYXN0IG9uZSBjaGlsZCB0byAKKyAgICAgICAgICogd2hpY2ggbmVlZHMgYXQgbGVhc3QgNCBieXRlcy4KKyAgICAgICAgICogQWx0aG91Z2ggaXQncyBhIGZhbHNlIGFsYXJtIGFsd2F5cyBhc3N1bWUgYXQgbGVhc3Qgb25lIGNoaWxkIHRvCiAgICAgICAgICAqIGJlIHNhZmUuCiAgICAgICAgICAqLwogICAgICAgICBzaXplID0gc2l6ZSA/IHNpemUgOiAxOwogICAgICAgICBpZiAoc2VsZi0+ZXh0cmEtPmNoaWxkcmVuICE9IHNlbGYtPmV4dHJhLT5fY2hpbGRyZW4pIHsKICAgICAgICAgICAgIC8qIENvdmVyaXR5IENJRCAjMTgyIHNpemVfZXJyb3I6IEFsbG9jYXRpbmcgMSBieXRlcyB0byBwb2ludGVyCi0gICAgICAgICAgICAgKiAiY2hpbGRyZW4iLCB3aGljaCBuZWVkcyBhdCBsZWFzdCA0IGJ5dGVzLiBBbHRob3VnaCBpdCdzIGEgCisgICAgICAgICAgICAgKiAiY2hpbGRyZW4iLCB3aGljaCBuZWVkcyBhdCBsZWFzdCA0IGJ5dGVzLiBBbHRob3VnaCBpdCdzIGEKICAgICAgICAgICAgICAqIGZhbHNlIGFsYXJtIGFsd2F5cyBhc3N1bWUgYXQgbGVhc3Qgb25lIGNoaWxkIHRvIGJlIHNhZmUuCiAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgIGNoaWxkcmVuID0gUHlPYmplY3RfUmVhbGxvYyhzZWxmLT5leHRyYS0+Y2hpbGRyZW4sCkBAIC02MDYsNyArNjA2LDcgQEAKICAgICBQeV9JTkNSRUYoSk9JTl9PQkooZWxlbWVudC0+dGFpbCkpOwogCiAgICAgaWYgKHNlbGYtPmV4dHJhKSB7Ci0gICAgICAgIAorCiAgICAgICAgIGlmIChlbGVtZW50X3Jlc2l6ZShlbGVtZW50LCBzZWxmLT5leHRyYS0+bGVuZ3RoKSA8IDApIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihlbGVtZW50KTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNjE4LDcgKzYxOCw3IEBACiAgICAgICAgIH0KIAogICAgICAgICBlbGVtZW50LT5leHRyYS0+bGVuZ3RoID0gc2VsZi0+ZXh0cmEtPmxlbmd0aDsKLSAgICAgICAgCisKICAgICB9CiAKICAgICByZXR1cm4gKFB5T2JqZWN0KikgZWxlbWVudDsKQEAgLTY2MSw3ICs2NjEsNyBAQAogCiAgICAgaWYgKCFlbGVtZW50KQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAKKwogICAgIHRleHQgPSBkZWVwY29weShKT0lOX09CSihzZWxmLT50ZXh0KSwgbWVtbyk7CiAgICAgaWYgKCF0ZXh0KQogICAgICAgICBnb3RvIGVycm9yOwpAQCAtNjc1LDcgKzY3NSw3IEBACiAgICAgZWxlbWVudC0+dGFpbCA9IEpPSU5fU0VUKHRhaWwsIEpPSU5fR0VUKHNlbGYtPnRhaWwpKTsKIAogICAgIGlmIChzZWxmLT5leHRyYSkgewotICAgICAgICAKKwogICAgICAgICBpZiAoZWxlbWVudF9yZXNpemUoZWxlbWVudCwgc2VsZi0+ZXh0cmEtPmxlbmd0aCkgPCAwKQogICAgICAgICAgICAgZ290byBlcnJvcjsKIApAQCAtNjg5LDcgKzY4OSw3IEBACiAgICAgICAgIH0KIAogICAgICAgICBlbGVtZW50LT5leHRyYS0+bGVuZ3RoID0gc2VsZi0+ZXh0cmEtPmxlbmd0aDsKLSAgICAgICAgCisKICAgICB9CiAKICAgICAvKiBhZGQgb2JqZWN0IHRvIG1lbW8gZGljdGlvbmFyeSAoc28gZGVlcGNvcHkgd29uJ3QgdmlzaXQgaXQgYWdhaW4pICovCkBAIC03MjMsMTMgKzcyMywxNiBAQAogICAgIChjaCA9PSAnLycgfHwgY2ggPT0gJyonIHx8IGNoID09ICdbJyB8fCBjaCA9PSAnQCcgfHwgY2ggPT0gJy4nKQogCiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayh0YWcpKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh0YWcpOwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlVbmljb2RlX0dFVF9TSVpFKHRhZyk7IGkrKykgewotICAgICAgICAgICAgaWYgKHBbaV0gPT0gJ3snKQorICAgICAgICBjb25zdCBQeV9zc2l6ZV90IGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHRhZyk7CisgICAgICAgIHZvaWQgKmRhdGEgPSBQeVVuaWNvZGVfREFUQSh0YWcpOworICAgICAgICB1bnNpZ25lZCBpbnQga2luZCA9IFB5VW5pY29kZV9LSU5EKHRhZyk7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgeworICAgICAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICAgICAgaWYgKGNoID09ICd7JykKICAgICAgICAgICAgICAgICBjaGVjayA9IDA7Ci0gICAgICAgICAgICBlbHNlIGlmIChwW2ldID09ICd9JykKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoID09ICd9JykKICAgICAgICAgICAgICAgICBjaGVjayA9IDE7Ci0gICAgICAgICAgICBlbHNlIGlmIChjaGVjayAmJiBQQVRIQ0hBUihwW2ldKSkKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrICYmIFBBVEhDSEFSKGNoKSkKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4gMDsKQEAgLTc4NywyMCArNzkwLDIyIEBACiBlbGVtZW50X2ZpbmQoRWxlbWVudE9iamVjdCogc2VsZiwgUHlPYmplY3QqIGFyZ3MpCiB7CiAgICAgaW50IGk7Ci0KICAgICBQeU9iamVjdCogdGFnOwogICAgIFB5T2JqZWN0KiBuYW1lc3BhY2VzID0gUHlfTm9uZTsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xPOmZpbmQiLCAmdGFnLCAmbmFtZXNwYWNlcykpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKGNoZWNrcGF0aCh0YWcpIHx8IG5hbWVzcGFjZXMgIT0gUHlfTm9uZSkKLSAgICAgICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICBlbGVtZW50cGF0aF9vYmosICJmaW5kIiwgIk9PTyIsIHNlbGYsIHRhZywgbmFtZXNwYWNlcworICAgIGlmIChjaGVja3BhdGgodGFnKSB8fCBuYW1lc3BhY2VzICE9IFB5X05vbmUpIHsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZmluZCk7CisgICAgICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKAorICAgICAgICAgICAgZWxlbWVudHBhdGhfb2JqLCAmUHlJZF9maW5kLCAiT09PIiwgc2VsZiwgdGFnLCBuYW1lc3BhY2VzCiAgICAgICAgICAgICApOworICAgIH0KIAogICAgIGlmICghc2VsZi0+ZXh0cmEpCiAgICAgICAgIFB5X1JFVFVSTl9OT05FOwotICAgICAgICAKKwogICAgIGZvciAoaSA9IDA7IGkgPCBzZWxmLT5leHRyYS0+bGVuZ3RoOyBpKyspIHsKICAgICAgICAgUHlPYmplY3QqIGl0ZW0gPSBzZWxmLT5leHRyYS0+Y2hpbGRyZW5baV07CiAgICAgICAgIGlmIChFbGVtZW50X0NoZWNrRXhhY3QoaXRlbSkgJiYKQEAgLTgxNywxNiArODIyLDE3IEBACiBlbGVtZW50X2ZpbmR0ZXh0KEVsZW1lbnRPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBhcmdzKQogewogICAgIGludCBpOwotCiAgICAgUHlPYmplY3QqIHRhZzsKICAgICBQeU9iamVjdCogZGVmYXVsdF92YWx1ZSA9IFB5X05vbmU7CiAgICAgUHlPYmplY3QqIG5hbWVzcGFjZXMgPSBQeV9Ob25lOworICAgIF9QeV9JREVOVElGSUVSKGZpbmR0ZXh0KTsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xPTzpmaW5kdGV4dCIsICZ0YWcsICZkZWZhdWx0X3ZhbHVlLCAmbmFtZXNwYWNlcykpCiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgaWYgKGNoZWNrcGF0aCh0YWcpIHx8IG5hbWVzcGFjZXMgIT0gUHlfTm9uZSkKLSAgICAgICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICBlbGVtZW50cGF0aF9vYmosICJmaW5kdGV4dCIsICJPT09PIiwgc2VsZiwgdGFnLCBkZWZhdWx0X3ZhbHVlLCBuYW1lc3BhY2VzCisgICAgICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKAorICAgICAgICAgICAgZWxlbWVudHBhdGhfb2JqLCAmUHlJZF9maW5kdGV4dCwgIk9PT08iLCBzZWxmLCB0YWcsIGRlZmF1bHRfdmFsdWUsIG5hbWVzcGFjZXMKICAgICAgICAgICAgICk7CiAKICAgICBpZiAoIXNlbGYtPmV4dHJhKSB7CkBAIC04NTUsMTYgKzg2MSwxOCBAQAogewogICAgIGludCBpOwogICAgIFB5T2JqZWN0KiBvdXQ7Ci0KICAgICBQeU9iamVjdCogdGFnOwogICAgIFB5T2JqZWN0KiBuYW1lc3BhY2VzID0gUHlfTm9uZTsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xPOmZpbmRhbGwiLCAmdGFnLCAmbmFtZXNwYWNlcykpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKGNoZWNrcGF0aCh0YWcpIHx8IG5hbWVzcGFjZXMgIT0gUHlfTm9uZSkKLSAgICAgICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICBlbGVtZW50cGF0aF9vYmosICJmaW5kYWxsIiwgIk9PTyIsIHNlbGYsIHRhZywgbmFtZXNwYWNlcworICAgIGlmIChjaGVja3BhdGgodGFnKSB8fCBuYW1lc3BhY2VzICE9IFB5X05vbmUpIHsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZmluZGFsbCk7CisgICAgICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKAorICAgICAgICAgICAgZWxlbWVudHBhdGhfb2JqLCAmUHlJZF9maW5kYWxsLCAiT09PIiwgc2VsZiwgdGFnLCBuYW1lc3BhY2VzCiAgICAgICAgICAgICApOworICAgIH0KIAogICAgIG91dCA9IFB5TGlzdF9OZXcoMCk7CiAgICAgaWYgKCFvdXQpCkBAIC04OTIsMTEgKzkwMCwxMyBAQAogewogICAgIFB5T2JqZWN0KiB0YWc7CiAgICAgUHlPYmplY3QqIG5hbWVzcGFjZXMgPSBQeV9Ob25lOworICAgIF9QeV9JREVOVElGSUVSKGl0ZXJmaW5kKTsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xPOml0ZXJmaW5kIiwgJnRhZywgJm5hbWVzcGFjZXMpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKAotICAgICAgICBlbGVtZW50cGF0aF9vYmosICJpdGVyZmluZCIsICJPT08iLCBzZWxmLCB0YWcsIG5hbWVzcGFjZXMKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgKKyAgICAgICAgZWxlbWVudHBhdGhfb2JqLCAmUHlJZF9pdGVyZmluZCwgIk9PTyIsIHNlbGYsIHRhZywgbmFtZXNwYWNlcwogICAgICAgICApOwogfQogCkBAIC05NTMsNyArOTYzLDcgQEAKIGVsZW1lbnRfaXRlcihFbGVtZW50T2JqZWN0KiBzZWxmLCBQeU9iamVjdCogYXJncykKIHsKICAgICBQeU9iamVjdCogcmVzdWx0OwotICAgIAorCiAgICAgUHlPYmplY3QqIHRhZyA9IFB5X05vbmU7CiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8TzppdGVyIiwgJnRhZykpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtOTg1LDcgKzk5NSw3IEBACiBlbGVtZW50X2l0ZXJ0ZXh0KEVsZW1lbnRPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBhcmdzKQogewogICAgIFB5T2JqZWN0KiByZXN1bHQ7Ci0gICAgCisKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIjppdGVydGV4dCIpKQogICAgICAgICByZXR1cm4gTlVMTDsKIApAQCAtMTQ4Myw3ICsxNDkzLDcgQEAKIAogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sobmFtZW9iaikpCiAgICAgICAgIG5hbWUgPSBfUHlVbmljb2RlX0FzU3RyaW5nKG5hbWVvYmopOwotICAgIAorCiAgICAgaWYgKG5hbWUgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKQEAgLTIxMTMsNyArMjEyMyw3IEBACiAgICAgICAgICAgICBQeV9JTkNSRUYoa2V5KTsKICAgICAgICAgICAgIHRhZyA9IGtleTsKICAgICAgICAgfQotICAgICAgICAKKwogICAgICAgICAvKiBkZWNvZGUgdW5pdmVyc2FsIG5hbWUgKi8KICAgICAgICAgcCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHRhZyk7CiAgICAgICAgIHZhbHVlID0gUHlVbmljb2RlX0RlY29kZVVURjgocCwgc2l6ZSwgInN0cmljdCIpOwpAQCAtMjEzOCwxMyArMjE0OCwxNSBAQAogc3RhdGljIHZvaWQKIGV4cGF0X3NldF9lcnJvcihjb25zdCBjaGFyKiBtZXNzYWdlLCBpbnQgbGluZSwgaW50IGNvbHVtbikKIHsKLSAgICBQeU9iamVjdCAqZXJyb3I7Ci0gICAgUHlPYmplY3QgKnBvc2l0aW9uOwotICAgIGNoYXIgYnVmZmVyWzI1Nl07CisgICAgUHlPYmplY3QgKmVycm1zZywgKmVycm9yLCAqcG9zaXRpb247CiAKLSAgICBzcHJpbnRmKGJ1ZmZlciwgIiUuMTAwczogbGluZSAlZCwgY29sdW1uICVkIiwgbWVzc2FnZSwgbGluZSwgY29sdW1uKTsKKyAgICBlcnJtc2cgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJXM6IGxpbmUgJWQsIGNvbHVtbiAlZCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZSwgbGluZSwgY29sdW1uKTsKKyAgICBpZiAoZXJybXNnID09IE5VTEwpCisgICAgICAgIHJldHVybjsKIAotICAgIGVycm9yID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uKGVsZW1lbnR0cmVlX3BhcnNlZXJyb3Jfb2JqLCAicyIsIGJ1ZmZlcik7CisgICAgZXJyb3IgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb24oZWxlbWVudHRyZWVfcGFyc2VlcnJvcl9vYmosICJPIiwgZXJybXNnKTsKKyAgICBQeV9ERUNSRUYoZXJybXNnKTsKICAgICBpZiAoIWVycm9yKQogICAgICAgICByZXR1cm47CiAKQEAgLTIzOTksMjkgKzI0MTEsMzMgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBYTUxfRW5jb2RpbmcgKmluZm8pCiB7CiAgICAgUHlPYmplY3QqIHU7Ci0gICAgUHlfVU5JQ09ERSogcDsKICAgICB1bnNpZ25lZCBjaGFyIHNbMjU2XTsKICAgICBpbnQgaTsKKyAgICB2b2lkICpkYXRhOworICAgIHVuc2lnbmVkIGludCBraW5kOwogCiAgICAgbWVtc2V0KGluZm8sIDAsIHNpemVvZihYTUxfRW5jb2RpbmcpKTsKIAogICAgIGZvciAoaSA9IDA7IGkgPCAyNTY7IGkrKykKICAgICAgICAgc1tpXSA9IGk7Ci0gICAgCisKICAgICB1ID0gUHlVbmljb2RlX0RlY29kZSgoY2hhciopIHMsIDI1NiwgbmFtZSwgInJlcGxhY2UiKTsKICAgICBpZiAoIXUpCiAgICAgICAgIHJldHVybiBYTUxfU1RBVFVTX0VSUk9SOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodSkpCisgICAgICAgIHJldHVybiBYTUxfU1RBVFVTX0VSUk9SOwogCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRSh1KSAhPSAyNTYpIHsKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgodSkgIT0gMjU2KSB7CiAgICAgICAgIFB5X0RFQ1JFRih1KTsKICAgICAgICAgcmV0dXJuIFhNTF9TVEFUVVNfRVJST1I7CiAgICAgfQogCi0gICAgcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHUpOwotCisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHUpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSh1KTsKICAgICBmb3IgKGkgPSAwOyBpIDwgMjU2OyBpKyspIHsKLSAgICAgICAgaWYgKHBbaV0gIT0gUHlfVU5JQ09ERV9SRVBMQUNFTUVOVF9DSEFSQUNURVIpCi0gICAgICAgICAgICBpbmZvLT5tYXBbaV0gPSBwW2ldOworICAgICAgICBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICAgIGlmIChjaCAhPSBQeV9VTklDT0RFX1JFUExBQ0VNRU5UX0NIQVJBQ1RFUikKKyAgICAgICAgICAgIGluZm8tPm1hcFtpXSA9IGNoOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBpbmZvLT5tYXBbaV0gPSAtMTsKICAgICB9CkBAIC0yNDY2LDcgKzI0ODIsNyBAQAogICAgICAgICBQeU9iamVjdF9EZWwoc2VsZik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICAgCisKICAgICBzZWxmLT5uYW1lcyA9IFB5RGljdF9OZXcoKTsKICAgICBpZiAoIXNlbGYtPm5hbWVzKSB7CiAgICAgICAgIFB5T2JqZWN0X0RlbChzZWxmLT5lbnRpdHkpOwpAQCAtMjY0NSw3ICsyNjYxLDcgQEAKICAgICByZWFkZXIgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGZpbGVvYmosICJyZWFkIik7CiAgICAgaWYgKCFyZWFkZXIpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIAorCiAgICAgLyogcmVhZCBmcm9tIG9wZW4gZmlsZSBvYmplY3QgKi8KICAgICBmb3IgKDs7KSB7CiAKQEAgLTI3OTYsNyArMjgxMiw3IEBACiAgICAge05VTEwsIE5VTEx9CiB9OwogCi1zdGF0aWMgUHlPYmplY3QqICAKK3N0YXRpYyBQeU9iamVjdCoKIHhtbHBhcnNlcl9nZXRhdHRybyhYTUxQYXJzZXJPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBuYW1lb2JqKQogewogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sobmFtZW9iaikpIHsKQEAgLTI5NTcsNyArMjk3Myw3IEBACiAgICAgICAgICIgICAgICAgICAgICBicmVha1xuIgogICAgICAgICAiICAgICAgICAgIHBhcnNlci5mZWVkKGRhdGEpXG4iCiAgICAgICAgICIgICAgICAgIHNlbGYuX3Jvb3QgPSBwYXJzZXIuY2xvc2UoKVxuIgotICAgICAgICAiICAgICAgZWxzZTpcbiIgCisgICAgICAgICIgICAgICBlbHNlOlxuIgogICAgICAgICAiICAgICAgICBwYXJzZXIgPSBjRWxlbWVudFRyZWUuWE1MUGFyc2VyKClcbiIKICAgICAgICAgIiAgICAgICAgc2VsZi5fcm9vdCA9IHBhcnNlci5fcGFyc2Uoc291cmNlKVxuIgogICAgICAgICAiICAgICAgcmV0dXJuIHNlbGYuX3Jvb3RcbiIKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2Z1bmN0b29sc21vZHVsZS5jIGIvTW9kdWxlcy9fZnVuY3Rvb2xzbW9kdWxlLmMKaW5kZXggZDhhMjgzYi4uMDg4MmQzNiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fZnVuY3Rvb2xzbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9fZnVuY3Rvb2xzbW9kdWxlLmMKQEAgLTMzMCw2ICszMzAsMTc2IEBACiB9OwogCiAKKy8qIGNtcF90b19rZXkgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlPYmplY3RfSEVBRAorICAgIFB5T2JqZWN0ICpjbXA7CisgICAgUHlPYmplY3QgKm9iamVjdDsKK30ga2V5b2JqZWN0OworCitzdGF0aWMgdm9pZAora2V5b2JqZWN0X2RlYWxsb2Moa2V5b2JqZWN0ICprbykKK3sKKyAgICBQeV9ERUNSRUYoa28tPmNtcCk7CisgICAgUHlfWERFQ1JFRihrby0+b2JqZWN0KTsKKyAgICBQeU9iamVjdF9GUkVFKGtvKTsKK30KKworc3RhdGljIGludAora2V5b2JqZWN0X3RyYXZlcnNlKGtleW9iamVjdCAqa28sIHZpc2l0cHJvYyB2aXNpdCwgdm9pZCAqYXJnKQoreworICAgIFB5X1ZJU0lUKGtvLT5jbXApOworICAgIGlmIChrby0+b2JqZWN0KQorICAgICAgICBQeV9WSVNJVChrby0+b2JqZWN0KTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludAora2V5b2JqZWN0X2NsZWFyKGtleW9iamVjdCAqa28pCit7CisgICAgUHlfQ0xFQVIoa28tPmNtcCk7CisgICAgaWYgKGtvLT5vYmplY3QpCisgICAgICAgIFB5X0NMRUFSKGtvLT5vYmplY3QpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgUHlNZW1iZXJEZWYga2V5b2JqZWN0X21lbWJlcnNbXSA9IHsKKyAgICB7Im9iaiIsIFRfT0JKRUNULAorICAgICBvZmZzZXRvZihrZXlvYmplY3QsIG9iamVjdCksIDAsCisgICAgIFB5RG9jX1NUUigiVmFsdWUgd3JhcHBlZCBieSBhIGtleSBmdW5jdGlvbi4iKX0sCisgICAge05VTEx9Cit9OworCitzdGF0aWMgUHlPYmplY3QgKgora2V5b2JqZWN0X2NhbGwoa2V5b2JqZWN0ICprbywgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2tleW9iamVjdF9yaWNoY29tcGFyZShQeU9iamVjdCAqa28sIFB5T2JqZWN0ICpvdGhlciwgaW50IG9wKTsKKworc3RhdGljIFB5VHlwZU9iamVjdCBrZXlvYmplY3RfdHlwZSA9IHsKKyAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoJlB5VHlwZV9UeXBlLCAwKQorICAgICJmdW5jdG9vbHMuS2V5V3JhcHBlciIsICAgICAgICAgICAgIC8qIHRwX25hbWUgKi8KKyAgICBzaXplb2Yoa2V5b2JqZWN0KSwgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNpY3NpemUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVtc2l6ZSAqLworICAgIC8qIG1ldGhvZHMgKi8KKyAgICAoZGVzdHJ1Y3RvcilrZXlvYmplY3RfZGVhbGxvYywgICAgICAvKiB0cF9kZWFsbG9jICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcHJpbnQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3Jlc2VydmVkICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVwciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX251bWJlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX3NlcXVlbmNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfbWFwcGluZyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2hhc2ggKi8KKyAgICAodGVybmFyeWZ1bmMpa2V5b2JqZWN0X2NhbGwsICAgICAgICAvKiB0cF9jYWxsICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc3RyICovCisgICAgUHlPYmplY3RfR2VuZXJpY0dldEF0dHIsICAgICAgICAgICAgLyogdHBfZ2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX2J1ZmZlciAqLworICAgIFB5X1RQRkxBR1NfREVGQVVMVCwgICAgICAgICAgICAgICAgIC8qIHRwX2ZsYWdzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZG9jICovCisgICAgKHRyYXZlcnNlcHJvYylrZXlvYmplY3RfdHJhdmVyc2UsICAgLyogdHBfdHJhdmVyc2UgKi8KKyAgICAoaW5xdWlyeSlrZXlvYmplY3RfY2xlYXIsICAgICAgICAgICAvKiB0cF9jbGVhciAqLworICAgIGtleW9iamVjdF9yaWNoY29tcGFyZSwgICAgICAgICAgICAgIC8qIHRwX3JpY2hjb21wYXJlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCisgICAga2V5b2JqZWN0X21lbWJlcnMsICAgICAgICAgICAgICAgICAgLyogdHBfbWVtYmVycyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLworfTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2tleW9iamVjdF9jYWxsKGtleW9iamVjdCAqa28sIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKK3sKKyAgICBQeU9iamVjdCAqb2JqZWN0OworICAgIGtleW9iamVjdCAqcmVzdWx0OworICAgIHN0YXRpYyBjaGFyICprd2FyZ3NbXSA9IHsib2JqIiwgTlVMTH07CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAiTzpLIiwga3dhcmdzLCAmb2JqZWN0KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzdWx0ID0gUHlPYmplY3RfTmV3KGtleW9iamVjdCwgJmtleW9iamVjdF90eXBlKTsKKyAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfSU5DUkVGKGtvLT5jbXApOworICAgIHJlc3VsdC0+Y21wID0ga28tPmNtcDsKKyAgICBQeV9JTkNSRUYob2JqZWN0KTsKKyAgICByZXN1bHQtPm9iamVjdCA9IG9iamVjdDsKKyAgICByZXR1cm4gKFB5T2JqZWN0ICopcmVzdWx0OworfQorCitzdGF0aWMgUHlPYmplY3QgKgora2V5b2JqZWN0X3JpY2hjb21wYXJlKFB5T2JqZWN0ICprbywgUHlPYmplY3QgKm90aGVyLCBpbnQgb3ApCit7CisgICAgUHlPYmplY3QgKnJlczsKKyAgICBQeU9iamVjdCAqYXJnczsKKyAgICBQeU9iamVjdCAqeDsKKyAgICBQeU9iamVjdCAqeTsKKyAgICBQeU9iamVjdCAqY29tcGFyZTsKKyAgICBQeU9iamVjdCAqYW5zd2VyOworICAgIHN0YXRpYyBQeU9iamVjdCAqemVybzsKKworICAgIGlmICh6ZXJvID09IE5VTEwpIHsKKyAgICAgICAgemVybyA9IFB5TG9uZ19Gcm9tTG9uZygwKTsKKyAgICAgICAgaWYgKCF6ZXJvKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKFB5X1RZUEUob3RoZXIpICE9ICZrZXlvYmplY3RfdHlwZSl7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJvdGhlciBhcmd1bWVudCBtdXN0IGJlIEsgaW5zdGFuY2UiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGNvbXBhcmUgPSAoKGtleW9iamVjdCAqKSBrbyktPmNtcDsKKyAgICBhc3NlcnQoY29tcGFyZSAhPSBOVUxMKTsKKyAgICB4ID0gKChrZXlvYmplY3QgKikga28pLT5vYmplY3Q7CisgICAgeSA9ICgoa2V5b2JqZWN0ICopIG90aGVyKS0+b2JqZWN0OworICAgIGlmICgheCB8fCAheSl7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19BdHRyaWJ1dGVFcnJvciwgIm9iamVjdCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICAvKiBDYWxsIHRoZSB1c2VyJ3MgY29tcGFyaXNvbiBmdW5jdGlvbiBhbmQgdHJhbnNsYXRlIHRoZSAzLXdheQorICAgICAqIHJlc3VsdCBpbnRvIHRydWUgb3IgZmFsc2UgKG9yIGVycm9yKS4KKyAgICAgKi8KKyAgICBhcmdzID0gUHlUdXBsZV9OZXcoMik7CisgICAgaWYgKGFyZ3MgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfSU5DUkVGKHgpOworICAgIFB5X0lOQ1JFRih5KTsKKyAgICBQeVR1cGxlX1NFVF9JVEVNKGFyZ3MsIDAsIHgpOworICAgIFB5VHVwbGVfU0VUX0lURU0oYXJncywgMSwgeSk7CisgICAgcmVzID0gUHlPYmplY3RfQ2FsbChjb21wYXJlLCBhcmdzLCBOVUxMKTsKKyAgICBQeV9ERUNSRUYoYXJncyk7CisgICAgaWYgKHJlcyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBhbnN3ZXIgPSBQeU9iamVjdF9SaWNoQ29tcGFyZShyZXMsIHplcm8sIG9wKTsKKyAgICBQeV9ERUNSRUYocmVzKTsKKyAgICByZXR1cm4gYW5zd2VyOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorZnVuY3Rvb2xzX2NtcF90b19rZXkoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKK3sKKyAgICBQeU9iamVjdCAqY21wOworICAgIHN0YXRpYyBjaGFyICprd2FyZ3NbXSA9IHsibXljbXAiLCBOVUxMfTsKKyAgICBrZXlvYmplY3QgKm9iamVjdDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJPOmNtcF90b19rZXkiLCBrd2FyZ3MsICZjbXApKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBvYmplY3QgPSBQeU9iamVjdF9OZXcoa2V5b2JqZWN0LCAma2V5b2JqZWN0X3R5cGUpOworICAgIGlmICghb2JqZWN0KQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9JTkNSRUYoY21wKTsKKyAgICBvYmplY3QtPmNtcCA9IGNtcDsKKyAgICBvYmplY3QtPm9iamVjdCA9IE5VTEw7CisgICAgcmV0dXJuIChQeU9iamVjdCAqKW9iamVjdDsKK30KKworUHlEb2NfU1RSVkFSKGZ1bmN0b29sc19jbXBfdG9fa2V5X2RvYywKKyJDb252ZXJ0IGEgY21wPSBmdW5jdGlvbiBpbnRvIGEga2V5PSBmdW5jdGlvbi4iKTsKKwogLyogcmVkdWNlICh1c2VkIHRvIGJlIGEgYnVpbHRpbikgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC00MTMsNiArNTgzLDggQEAKIAogc3RhdGljIFB5TWV0aG9kRGVmIG1vZHVsZV9tZXRob2RzW10gPSB7CiAgICAgeyJyZWR1Y2UiLCAgICAgICAgICBmdW5jdG9vbHNfcmVkdWNlLCAgICAgTUVUSF9WQVJBUkdTLCBmdW5jdG9vbHNfcmVkdWNlX2RvY30sCisgICAgeyJjbXBfdG9fa2V5IiwgICAgICAoUHlDRnVuY3Rpb24pZnVuY3Rvb2xzX2NtcF90b19rZXksCisgICAgIE1FVEhfVkFSQVJHUyB8IE1FVEhfS0VZV09SRFMsIGZ1bmN0b29sc19jbXBfdG9fa2V5X2RvY30sCiAgICAge05VTEwsICAgICAgICAgICAgICBOVUxMfSAgICAgICAgICAgLyogc2VudGluZWwgKi8KIH07CiAKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2dlc3RhbHQuYyBiL01vZHVsZXMvX2dlc3RhbHQuYwppbmRleCBhNDU3ODBmLi5jZDMwNjgzIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19nZXN0YWx0LmMKKysrIGIvTW9kdWxlcy9fZ2VzdGFsdC5jCkBAIC0zMyw3ICszMyw3IEBACiBjb252ZXJ0X3RvX09TVHlwZShQeU9iamVjdCAqdiwgT1NUeXBlICpwcikKIHsKICAgICB1aW50MzJfdCB0bXA7Ci0gICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodikgfHwgUHlVbmljb2RlX0dldFNpemUodikgIT0gNCkgeworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHYpIHx8IFB5VW5pY29kZV9HZXRMZW5ndGgodikgIT0gNCkgewogICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICJPU1R5cGUgYXJnIG11c3QgYmUgc3RyaW5nIG9mIDQgY2hhcnMiKTsKICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2hhc2hvcGVuc3NsLmMgYi9Nb2R1bGVzL19oYXNob3BlbnNzbC5jCmluZGV4IGRkNDMxN2YuLmQzNzY4OWUgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2hhc2hvcGVuc3NsLmMKKysrIGIvTW9kdWxlcy9faGFzaG9wZW5zc2wuYwpAQCAtMjAxLDEzICsyMDEsMTEgQEAKIAogICAgIC8qIE1ha2UgaGV4IHZlcnNpb24gb2YgdGhlIGRpZ2VzdCAqLwogICAgIGZvcihpPWo9MDsgaTxkaWdlc3Rfc2l6ZTsgaSsrKSB7Ci0gICAgICAgIGNoYXIgYzsKKyAgICAgICAgdW5zaWduZWQgY2hhciBjOwogICAgICAgICBjID0gKGRpZ2VzdFtpXSA+PiA0KSAmIDB4ZjsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBjOworICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgICAgIGMgPSAoZGlnZXN0W2ldICYgMHhmKTsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBjOworICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgfQogICAgIHJldHZhbCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShoZXhfZGlnZXN0LCBkaWdlc3Rfc2l6ZSAqIDIpOwogICAgIFB5TWVtX0ZyZWUoaGV4X2RpZ2VzdCk7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19pby9faW9tb2R1bGUuYyBiL01vZHVsZXMvX2lvL19pb21vZHVsZS5jCmluZGV4IDYxMzYyYzcuLmUwNDY5MTcgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2lvL19pb21vZHVsZS5jCisrKyBiL01vZHVsZXMvX2lvL19pb21vZHVsZS5jCkBAIC0zNiw2ICszNiw3IEBACiBQeU9iamVjdCAqX1B5SU9fc3RyX3JlYWQ7CiBQeU9iamVjdCAqX1B5SU9fc3RyX3JlYWQxOwogUHlPYmplY3QgKl9QeUlPX3N0cl9yZWFkYWJsZTsKK1B5T2JqZWN0ICpfUHlJT19zdHJfcmVhZGFsbDsKIFB5T2JqZWN0ICpfUHlJT19zdHJfcmVhZGludG87CiBQeU9iamVjdCAqX1B5SU9fc3RyX3JlYWRsaW5lOwogUHlPYmplY3QgKl9QeUlPX3N0cl9yZXNldDsKQEAgLTkwLDk0ICs5MSwxMSBAQAogDAogCiAvKgotICogQmxvY2tpbmdJT0Vycm9yIGV4dGVuZHMgSU9FcnJvcgotICovCi0KLXN0YXRpYyBpbnQKLWJsb2NraW5naW9lcnJvcl9pbml0KFB5QmxvY2tpbmdJT0Vycm9yT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywKLSAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICprd2RzKQotewotICAgIFB5T2JqZWN0ICpteWVycm5vID0gTlVMTCwgKnN0cmVycm9yID0gTlVMTDsKLSAgICBQeU9iamVjdCAqYmFzZWFyZ3MgPSBOVUxMOwotICAgIFB5X3NzaXplX3Qgd3JpdHRlbiA9IDA7Ci0KLSAgICBhc3NlcnQoUHlUdXBsZV9DaGVjayhhcmdzKSk7Ci0KLSAgICBzZWxmLT53cml0dGVuID0gMDsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9PfG46QmxvY2tpbmdJT0Vycm9yIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJm15ZXJybm8sICZzdHJlcnJvciwgJndyaXR0ZW4pKQotICAgICAgICByZXR1cm4gLTE7Ci0KLSAgICBiYXNlYXJncyA9IFB5VHVwbGVfUGFjaygyLCBteWVycm5vLCBzdHJlcnJvcik7Ci0gICAgaWYgKGJhc2VhcmdzID09IE5VTEwpCi0gICAgICAgIHJldHVybiAtMTsKLSAgICAvKiBUaGlzIHdpbGwgdGFrZSBjYXJlIG9mIGluaXRpYWxpemluZyBvZiBteWVycm5vIGFuZCBzdHJlcnJvciBtZW1iZXJzICovCi0gICAgaWYgKCgoUHlUeXBlT2JqZWN0ICopUHlFeGNfSU9FcnJvciktPnRwX2luaXQoCi0gICAgICAgICAgICAgICAgKFB5T2JqZWN0ICopc2VsZiwgYmFzZWFyZ3MsIGt3ZHMpID09IC0xKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihiYXNlYXJncyk7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgUHlfREVDUkVGKGJhc2VhcmdzKTsKLQotICAgIHNlbGYtPndyaXR0ZW4gPSB3cml0dGVuOwotICAgIHJldHVybiAwOwotfQotCi1zdGF0aWMgUHlNZW1iZXJEZWYgYmxvY2tpbmdpb2Vycm9yX21lbWJlcnNbXSA9IHsKLSAgICB7ImNoYXJhY3RlcnNfd3JpdHRlbiIsIFRfUFlTU0laRVQsIG9mZnNldG9mKFB5QmxvY2tpbmdJT0Vycm9yT2JqZWN0LCB3cml0dGVuKSwgMH0sCi0gICAge05VTEx9ICAvKiBTZW50aW5lbCAqLwotfTsKLQotc3RhdGljIFB5VHlwZU9iamVjdCBfUHlFeGNfQmxvY2tpbmdJT0Vycm9yID0gewotICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVChOVUxMLCAwKQotICAgICJCbG9ja2luZ0lPRXJyb3IiLCAvKnRwX25hbWUqLwotICAgIHNpemVvZihQeUJsb2NraW5nSU9FcnJvck9iamVjdCksIC8qdHBfYmFzaWNzaXplKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9pdGVtc2l6ZSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZGVhbGxvYyovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcHJpbnQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2dldGF0dHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3NldGF0dHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2NvbXBhcmUgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9yZXByKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9hc19udW1iZXIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX3NlcXVlbmNlKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9hc19tYXBwaW5nKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9oYXNoICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfY2FsbCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc3RyKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9nZXRhdHRybyovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc2V0YXR0cm8qLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX2J1ZmZlciovCi0gICAgUHlfVFBGTEFHU19ERUZBVUxUIHwgUHlfVFBGTEFHU19CQVNFVFlQRSwgLyp0cF9mbGFncyovCi0gICAgUHlEb2NfU1RSKCJFeGNlcHRpb24gcmFpc2VkIHdoZW4gSS9PIHdvdWxkIGJsb2NrICIKLSAgICAgICAgICAgICAgIm9uIGEgbm9uLWJsb2NraW5nIEkvTyBzdHJlYW0iKSwgLyogdHBfZG9jICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NsZWFyICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JpY2hjb21wYXJlICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXIgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLwotICAgIGJsb2NraW5naW9lcnJvcl9tZW1iZXJzLCAgICAvKiB0cF9tZW1iZXJzICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNlICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3QgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVzY3JfZ2V0ICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX3NldCAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0b2Zmc2V0ICovCi0gICAgKGluaXRwcm9jKWJsb2NraW5naW9lcnJvcl9pbml0LCAvKiB0cF9pbml0ICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FsbG9jICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX25ldyAqLwotfTsKLVB5T2JqZWN0ICpQeUV4Y19CbG9ja2luZ0lPRXJyb3IgPSAoUHlPYmplY3QgKikmX1B5RXhjX0Jsb2NraW5nSU9FcnJvcjsKLQwKLQotLyoKICAqIFRoZSBtYWluIG9wZW4oKSBmdW5jdGlvbgogICovCiBQeURvY19TVFJWQVIob3Blbl9kb2MsCiAib3BlbihmaWxlLCBtb2RlPSdyJywgYnVmZmVyaW5nPS0xLCBlbmNvZGluZz1Ob25lLFxuIgotIiAgICAgZXJyb3JzPU5vbmUsIG5ld2xpbmU9Tm9uZSwgY2xvc2VmZD1UcnVlKSAtPiBmaWxlIG9iamVjdFxuIgorIiAgICAgZXJyb3JzPU5vbmUsIG5ld2xpbmU9Tm9uZSwgY2xvc2VmZD1UcnVlLCBvcGVuZXI9Tm9uZSkgLT4gZmlsZSBvYmplY3RcbiIKICJcbiIKICJPcGVuIGZpbGUgYW5kIHJldHVybiBhIHN0cmVhbS4gIFJhaXNlIElPRXJyb3IgdXBvbiBmYWlsdXJlLlxuIgogIlxuIgpAQCAtMTkwLDE4ICsxMDgsMTkgQEAKICJtb2RlIGlzIGFuIG9wdGlvbmFsIHN0cmluZyB0aGF0IHNwZWNpZmllcyB0aGUgbW9kZSBpbiB3aGljaCB0aGUgZmlsZVxuIgogImlzIG9wZW5lZC4gSXQgZGVmYXVsdHMgdG8gJ3InIHdoaWNoIG1lYW5zIG9wZW4gZm9yIHJlYWRpbmcgaW4gdGV4dFxuIgogIm1vZGUuICBPdGhlciBjb21tb24gdmFsdWVzIGFyZSAndycgZm9yIHdyaXRpbmcgKHRydW5jYXRpbmcgdGhlIGZpbGUgaWZcbiIKLSJpdCBhbHJlYWR5IGV4aXN0cyksIGFuZCAnYScgZm9yIGFwcGVuZGluZyAod2hpY2ggb24gc29tZSBVbml4IHN5c3RlbXMsXG4iCi0ibWVhbnMgdGhhdCBhbGwgd3JpdGVzIGFwcGVuZCB0byB0aGUgZW5kIG9mIHRoZSBmaWxlIHJlZ2FyZGxlc3Mgb2YgdGhlXG4iCi0iY3VycmVudCBzZWVrIHBvc2l0aW9uKS4gSW4gdGV4dCBtb2RlLCBpZiBlbmNvZGluZyBpcyBub3Qgc3BlY2lmaWVkIHRoZVxuIgotImVuY29kaW5nIHVzZWQgaXMgcGxhdGZvcm0gZGVwZW5kZW50LiAoRm9yIHJlYWRpbmcgYW5kIHdyaXRpbmcgcmF3XG4iCi0iYnl0ZXMgdXNlIGJpbmFyeSBtb2RlIGFuZCBsZWF2ZSBlbmNvZGluZyB1bnNwZWNpZmllZC4pIFRoZSBhdmFpbGFibGVcbiIKLSJtb2RlcyBhcmU6XG4iCisiaXQgYWxyZWFkeSBleGlzdHMpLCAneCcgZm9yIGNyZWF0aW5nIGFuZCB3cml0aW5nIHRvIGEgbmV3IGZpbGUsIGFuZFxuIgorIidhJyBmb3IgYXBwZW5kaW5nICh3aGljaCBvbiBzb21lIFVuaXggc3lzdGVtcywgbWVhbnMgdGhhdCBhbGwgd3JpdGVzXG4iCisiYXBwZW5kIHRvIHRoZSBlbmQgb2YgdGhlIGZpbGUgcmVnYXJkbGVzcyBvZiB0aGUgY3VycmVudCBzZWVrIHBvc2l0aW9uKS5cbiIKKyJJbiB0ZXh0IG1vZGUsIGlmIGVuY29kaW5nIGlzIG5vdCBzcGVjaWZpZWQgdGhlIGVuY29kaW5nIHVzZWQgaXMgcGxhdGZvcm1cbiIKKyJkZXBlbmRlbnQuIChGb3IgcmVhZGluZyBhbmQgd3JpdGluZyByYXcgYnl0ZXMgdXNlIGJpbmFyeSBtb2RlIGFuZCBsZWF2ZVxuIgorImVuY29kaW5nIHVuc3BlY2lmaWVkLikgVGhlIGF2YWlsYWJsZSBtb2RlcyBhcmU6XG4iCiAiXG4iCiAiPT09PT09PT09ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIgogIkNoYXJhY3RlciBNZWFuaW5nXG4iCiAiLS0tLS0tLS0tIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIgogIidyJyAgICAgICBvcGVuIGZvciByZWFkaW5nIChkZWZhdWx0KVxuIgogIid3JyAgICAgICBvcGVuIGZvciB3cml0aW5nLCB0cnVuY2F0aW5nIHRoZSBmaWxlIGZpcnN0XG4iCisiJ3gnICAgICAgIGNyZWF0ZSBhIG5ldyBmaWxlIGFuZCBvcGVuIGl0IGZvciB3cml0aW5nXG4iCiAiJ2EnICAgICAgIG9wZW4gZm9yIHdyaXRpbmcsIGFwcGVuZGluZyB0byB0aGUgZW5kIG9mIHRoZSBmaWxlIGlmIGl0IGV4aXN0c1xuIgogIidiJyAgICAgICBiaW5hcnkgbW9kZVxuIgogIid0JyAgICAgICB0ZXh0IG1vZGUgKGRlZmF1bHQpXG4iCkBAIC0yMTIsNyArMTMxLDggQEAKICJcbiIKICJUaGUgZGVmYXVsdCBtb2RlIGlzICdydCcgKG9wZW4gZm9yIHJlYWRpbmcgdGV4dCkuIEZvciBiaW5hcnkgcmFuZG9tXG4iCiAiYWNjZXNzLCB0aGUgbW9kZSAndytiJyBvcGVucyBhbmQgdHJ1bmNhdGVzIHRoZSBmaWxlIHRvIDAgYnl0ZXMsIHdoaWxlXG4iCi0iJ3IrYicgb3BlbnMgdGhlIGZpbGUgd2l0aG91dCB0cnVuY2F0aW9uLlxuIgorIidyK2InIG9wZW5zIHRoZSBmaWxlIHdpdGhvdXQgdHJ1bmNhdGlvbi4gVGhlICd4JyBtb2RlIGltcGxpZXMgJ3cnIGFuZFxuIgorInJhaXNlcyBhbiBgRmlsZUV4aXN0c0Vycm9yYCBpZiB0aGUgZmlsZSBhbHJlYWR5IGV4aXN0cy5cbiIKICJcbiIKICJQeXRob24gZGlzdGluZ3Vpc2hlcyBiZXR3ZWVuIGZpbGVzIG9wZW5lZCBpbiBiaW5hcnkgYW5kIHRleHQgbW9kZXMsXG4iCiAiZXZlbiB3aGVuIHRoZSB1bmRlcmx5aW5nIG9wZXJhdGluZyBzeXN0ZW0gZG9lc24ndC4gRmlsZXMgb3BlbmVkIGluXG4iCkBAIC0yNzIsNiArMTkyLDEyIEBACiAid2hlbiB0aGUgZmlsZSBpcyBjbG9zZWQuIFRoaXMgZG9lcyBub3Qgd29yayB3aGVuIGEgZmlsZSBuYW1lIGlzIGdpdmVuXG4iCiAiYW5kIG11c3QgYmUgVHJ1ZSBpbiB0aGF0IGNhc2UuXG4iCiAiXG4iCisiQSBjdXN0b20gb3BlbmVyIGNhbiBiZSB1c2VkIGJ5IHBhc3NpbmcgYSBjYWxsYWJsZSBhcyAqb3BlbmVyKi4gVGhlXG4iCisidW5kZXJseWluZyBmaWxlIGRlc2NyaXB0b3IgZm9yIHRoZSBmaWxlIG9iamVjdCBpcyB0aGVuIG9idGFpbmVkIGJ5XG4iCisiY2FsbGluZyAqb3BlbmVyKiB3aXRoICgqZmlsZSosICpmbGFncyopLiAqb3BlbmVyKiBtdXN0IHJldHVybiBhbiBvcGVuXG4iCisiZmlsZSBkZXNjcmlwdG9yIChwYXNzaW5nIG9zLm9wZW4gYXMgKm9wZW5lciogcmVzdWx0cyBpbiBmdW5jdGlvbmFsaXR5XG4iCisic2ltaWxhciB0byBwYXNzaW5nIE5vbmUpLlxuIgorIlxuIgogIm9wZW4oKSByZXR1cm5zIGEgZmlsZSBvYmplY3Qgd2hvc2UgdHlwZSBkZXBlbmRzIG9uIHRoZSBtb2RlLCBhbmRcbiIKICJ0aHJvdWdoIHdoaWNoIHRoZSBzdGFuZGFyZCBmaWxlIG9wZXJhdGlvbnMgc3VjaCBhcyByZWFkaW5nIGFuZCB3cml0aW5nXG4iCiAiYXJlIHBlcmZvcm1lZC4gV2hlbiBvcGVuKCkgaXMgdXNlZCB0byBvcGVuIGEgZmlsZSBpbiBhIHRleHQgbW9kZSAoJ3cnLFxuIgpAQCAtMjkyLDE0ICsyMTgsMTQgQEAKIHsKICAgICBjaGFyICprd2xpc3RbXSA9IHsiZmlsZSIsICJtb2RlIiwgImJ1ZmZlcmluZyIsCiAgICAgICAgICAgICAgICAgICAgICAgImVuY29kaW5nIiwgImVycm9ycyIsICJuZXdsaW5lIiwKLSAgICAgICAgICAgICAgICAgICAgICAiY2xvc2VmZCIsIE5VTEx9OwotICAgIFB5T2JqZWN0ICpmaWxlOworICAgICAgICAgICAgICAgICAgICAgICJjbG9zZWZkIiwgIm9wZW5lciIsIE5VTEx9OworICAgIFB5T2JqZWN0ICpmaWxlLCAqb3BlbmVyID0gUHlfTm9uZTsKICAgICBjaGFyICptb2RlID0gInIiOwogICAgIGludCBidWZmZXJpbmcgPSAtMSwgY2xvc2VmZCA9IDE7CiAgICAgY2hhciAqZW5jb2RpbmcgPSBOVUxMLCAqZXJyb3JzID0gTlVMTCwgKm5ld2xpbmUgPSBOVUxMOwogICAgIHVuc2lnbmVkIGk7CiAKLSAgICBpbnQgcmVhZGluZyA9IDAsIHdyaXRpbmcgPSAwLCBhcHBlbmRpbmcgPSAwLCB1cGRhdGluZyA9IDA7CisgICAgaW50IGNyZWF0aW5nID0gMCwgcmVhZGluZyA9IDAsIHdyaXRpbmcgPSAwLCBhcHBlbmRpbmcgPSAwLCB1cGRhdGluZyA9IDA7CiAgICAgaW50IHRleHQgPSAwLCBiaW5hcnkgPSAwLCB1bml2ZXJzYWwgPSAwOwogCiAgICAgY2hhciByYXdtb2RlWzVdLCAqbTsKQEAgLTMwNywxMCArMjMzLDE0IEBACiAKICAgICBQeU9iamVjdCAqcmF3LCAqbW9kZW9iaiA9IE5VTEwsICpidWZmZXIgPSBOVUxMLCAqd3JhcHBlciA9IE5VTEw7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAiT3xzaXp6emk6b3BlbiIsIGt3bGlzdCwKKyAgICBfUHlfSURFTlRJRklFUihpc2F0dHkpOworICAgIF9QeV9JREVOVElGSUVSKGZpbGVubyk7CisgICAgX1B5X0lERU5USUZJRVIobW9kZSk7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAiT3xzaXp6emlPOm9wZW4iLCBrd2xpc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZpbGUsICZtb2RlLCAmYnVmZmVyaW5nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlbmNvZGluZywgJmVycm9ycywgJm5ld2xpbmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNsb3NlZmQpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNsb3NlZmQsICZvcGVuZXIpKSB7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIApAQCAtMzI2LDYgKzI1Niw5IEBACiAgICAgICAgIGNoYXIgYyA9IG1vZGVbaV07CiAKICAgICAgICAgc3dpdGNoIChjKSB7CisgICAgICAgIGNhc2UgJ3gnOgorICAgICAgICAgICAgY3JlYXRpbmcgPSAxOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgJ3InOgogICAgICAgICAgICAgcmVhZGluZyA9IDE7CiAgICAgICAgICAgICBicmVhazsKQEAgLTM2Miw2ICsyOTUsNyBAQAogICAgIH0KIAogICAgIG0gPSByYXdtb2RlOworICAgIGlmIChjcmVhdGluZykgICoobSsrKSA9ICd4JzsKICAgICBpZiAocmVhZGluZykgICAqKG0rKykgPSAncic7CiAgICAgaWYgKHdyaXRpbmcpICAgKihtKyspID0gJ3cnOwogICAgIGlmIChhcHBlbmRpbmcpICoobSsrKSA9ICdhJzsKQEAgLTM4NCw5ICszMTgsOSBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBpZiAocmVhZGluZyArIHdyaXRpbmcgKyBhcHBlbmRpbmcgPiAxKSB7CisgICAgaWYgKGNyZWF0aW5nICsgcmVhZGluZyArIHdyaXRpbmcgKyBhcHBlbmRpbmcgPiAxKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgIm11c3QgaGF2ZSBleGFjdGx5IG9uZSBvZiByZWFkL3dyaXRlL2FwcGVuZCBtb2RlIik7CisgICAgICAgICAgICAgICAgICAgICAgICAibXVzdCBoYXZlIGV4YWN0bHkgb25lIG9mIGNyZWF0ZS9yZWFkL3dyaXRlL2FwcGVuZCBtb2RlIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIApAQCAtNDEwLDcgKzM0NCw3IEBACiAKICAgICAvKiBDcmVhdGUgdGhlIFJhdyBmaWxlIHN0cmVhbSAqLwogICAgIHJhdyA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbigoUHlPYmplY3QgKikmUHlGaWxlSU9fVHlwZSwKLQkJCQkiT3NpIiwgZmlsZSwgcmF3bW9kZSwgY2xvc2VmZCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJPc2lPIiwgZmlsZSwgcmF3bW9kZSwgY2xvc2VmZCwgb3BlbmVyKTsKICAgICBpZiAocmF3ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCkBAIC00MjAsNyArMzU0LDcgQEAKIAogICAgIC8qIGJ1ZmZlcmluZyAqLwogICAgIHsKLSAgICAgICAgUHlPYmplY3QgKnJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2QocmF3LCAiaXNhdHR5IiwgTlVMTCk7CisgICAgICAgIFB5T2JqZWN0ICpyZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHJhdywgJlB5SWRfaXNhdHR5LCBOVUxMKTsKICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgaXNhdHR5ID0gUHlMb25nX0FzTG9uZyhyZXMpOwpAQCAtNDQyLDcgKzM3Niw3IEBACiAgICAgICAgIHsKICAgICAgICAgICAgIHN0cnVjdCBzdGF0IHN0OwogICAgICAgICAgICAgbG9uZyBmaWxlbm87Ci0gICAgICAgICAgICBQeU9iamVjdCAqcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChyYXcsICJmaWxlbm8iLCBOVUxMKTsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpyZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHJhdywgJlB5SWRfZmlsZW5vLCBOVUxMKTsKICAgICAgICAgICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwogCkBAIC00ODAsNyArNDE0LDcgQEAKIAogICAgICAgICBpZiAodXBkYXRpbmcpCiAgICAgICAgICAgICBCdWZmZXJlZF9jbGFzcyA9IChQeU9iamVjdCAqKSZQeUJ1ZmZlcmVkUmFuZG9tX1R5cGU7Ci0gICAgICAgIGVsc2UgaWYgKHdyaXRpbmcgfHwgYXBwZW5kaW5nKQorICAgICAgICBlbHNlIGlmIChjcmVhdGluZyB8fCB3cml0aW5nIHx8IGFwcGVuZGluZykKICAgICAgICAgICAgIEJ1ZmZlcmVkX2NsYXNzID0gKFB5T2JqZWN0ICopJlB5QnVmZmVyZWRXcml0ZXJfVHlwZTsKICAgICAgICAgZWxzZSBpZiAocmVhZGluZykKICAgICAgICAgICAgIEJ1ZmZlcmVkX2NsYXNzID0gKFB5T2JqZWN0ICopJlB5QnVmZmVyZWRSZWFkZXJfVHlwZTsKQEAgLTUxMyw3ICs0NDcsNyBAQAogICAgIGlmICh3cmFwcGVyID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAKLSAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyh3cmFwcGVyLCAibW9kZSIsIG1vZGVvYmopIDwgMCkKKyAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZCh3cmFwcGVyLCAmUHlJZF9tb2RlLCBtb2Rlb2JqKSA8IDApCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgUHlfREVDUkVGKG1vZGVvYmopOwogICAgIHJldHVybiB3cmFwcGVyOwpAQCAtNjkwLDkgKzYyNCwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUtPnVuc3VwcG9ydGVkX29wZXJhdGlvbikgPCAwKQogICAgICAgICBnb3RvIGZhaWw7CiAKLSAgICAvKiBCbG9ja2luZ0lPRXJyb3IgKi8KLSAgICBfUHlFeGNfQmxvY2tpbmdJT0Vycm9yLnRwX2Jhc2UgPSAoUHlUeXBlT2JqZWN0ICopIFB5RXhjX0lPRXJyb3I7Ci0gICAgQUREX1RZUEUoJl9QeUV4Y19CbG9ja2luZ0lPRXJyb3IsICJCbG9ja2luZ0lPRXJyb3IiKTsKKyAgICAvKiBCbG9ja2luZ0lPRXJyb3IsIGZvciBjb21wYXRpYmlsaXR5ICovCisgICAgUHlfSU5DUkVGKFB5RXhjX0Jsb2NraW5nSU9FcnJvcik7CisgICAgaWYgKFB5TW9kdWxlX0FkZE9iamVjdChtLCAiQmxvY2tpbmdJT0Vycm9yIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChQeU9iamVjdCAqKSBQeUV4Y19CbG9ja2luZ0lPRXJyb3IpIDwgMCkKKyAgICAgICAgZ290byBmYWlsOwogCiAgICAgLyogQ29uY3JldGUgYmFzZSB0eXBlcyBvZiB0aGUgSU8gQUJDcy4KICAgICAgICAodGhlIEFCQ3MgdGhlbXNlbHZlcyBhcmUgZGVjbGFyZWQgdGhyb3VnaCBpbmhlcml0YW5jZSBpbiBpby5weSkKQEAgLTc1OCw2ICs2OTQsNyBAQAogICAgIEFERF9JTlRFUk5FRChyZWFkKQogICAgIEFERF9JTlRFUk5FRChyZWFkMSkKICAgICBBRERfSU5URVJORUQocmVhZGFibGUpCisgICAgQUREX0lOVEVSTkVEKHJlYWRhbGwpCiAgICAgQUREX0lOVEVSTkVEKHJlYWRpbnRvKQogICAgIEFERF9JTlRFUk5FRChyZWFkbGluZSkKICAgICBBRERfSU5URVJORUQocmVzZXQpCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19pby9faW9tb2R1bGUuaCBiL01vZHVsZXMvX2lvL19pb21vZHVsZS5oCmluZGV4IDkyNWU0ZjIuLmIzYTg0NzEgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2lvL19pb21vZHVsZS5oCisrKyBiL01vZHVsZXMvX2lvL19pb21vZHVsZS5oCkBAIC01NSwyMCArNTUsMTEgQEAKICAgIE90aGVyd2lzZSwgdGhlIGZ1bmN0aW9uIHdpbGwgc2NhbiBmdXJ0aGVyIGFuZCByZXR1cm4gZ2FyYmFnZS4gKi8KIGV4dGVybiBQeV9zc2l6ZV90IF9QeUlPX2ZpbmRfbGluZV9lbmRpbmcoCiAgICAgaW50IHRyYW5zbGF0ZWQsIGludCB1bml2ZXJzYWwsIFB5T2JqZWN0ICpyZWFkbmwsCi0gICAgUHlfVU5JQ09ERSAqc3RhcnQsIFB5X1VOSUNPREUgKmVuZCwgUHlfc3NpemVfdCAqY29uc3VtZWQpOworICAgIGludCBraW5kLCBjaGFyICpzdGFydCwgY2hhciAqZW5kLCBQeV9zc2l6ZV90ICpjb25zdW1lZCk7CiAKIAogI2RlZmluZSBERUZBVUxUX0JVRkZFUl9TSVpFICg4ICogMTAyNCkgIC8qIGJ5dGVzICovCiAKLXR5cGVkZWYgc3RydWN0IHsKLSAgICBQeUV4Y2VwdGlvbl9IRUFECi0gICAgUHlPYmplY3QgKm15ZXJybm87Ci0gICAgUHlPYmplY3QgKnN0cmVycm9yOwotICAgIFB5T2JqZWN0ICpmaWxlbmFtZTsgLyogTm90IHVzZWQsIGJ1dCBwYXJ0IG9mIHRoZSBJT0Vycm9yIG9iamVjdCAqLwotICAgIFB5X3NzaXplX3Qgd3JpdHRlbjsKLX0gUHlCbG9ja2luZ0lPRXJyb3JPYmplY3Q7Ci1QeUFQSV9EQVRBKFB5T2JqZWN0ICopIFB5RXhjX0Jsb2NraW5nSU9FcnJvcjsKLQogLyoKICAqIE9mZnNldCB0eXBlIGZvciBwb3NpdGlvbmluZy4KICAqLwpAQCAtMTU1LDYgKzE0Niw3IEBACiBleHRlcm4gUHlPYmplY3QgKl9QeUlPX3N0cl9yZWFkOwogZXh0ZXJuIFB5T2JqZWN0ICpfUHlJT19zdHJfcmVhZDE7CiBleHRlcm4gUHlPYmplY3QgKl9QeUlPX3N0cl9yZWFkYWJsZTsKK2V4dGVybiBQeU9iamVjdCAqX1B5SU9fc3RyX3JlYWRhbGw7CiBleHRlcm4gUHlPYmplY3QgKl9QeUlPX3N0cl9yZWFkaW50bzsKIGV4dGVybiBQeU9iamVjdCAqX1B5SU9fc3RyX3JlYWRsaW5lOwogZXh0ZXJuIFB5T2JqZWN0ICpfUHlJT19zdHJfcmVzZXQ7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19pby9idWZmZXJlZGlvLmMgYi9Nb2R1bGVzL19pby9idWZmZXJlZGlvLmMKaW5kZXggNGM0M2M2OS4uOGE5YWU0NyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9faW8vYnVmZmVyZWRpby5jCisrKyBiL01vZHVsZXMvX2lvL2J1ZmZlcmVkaW8uYwpAQCAtMSw5ICsxLDkgQEAKIC8qCiAgICAgQW4gaW1wbGVtZW50YXRpb24gb2YgQnVmZmVyZWQgSS9PIGFzIGRlZmluZWQgYnkgUEVQIDMxMTYgLSAiTmV3IEkvTyIKLSAgICAKKwogICAgIENsYXNzZXMgZGVmaW5lZCBoZXJlOiBCdWZmZXJlZElPQmFzZSwgQnVmZmVyZWRSZWFkZXIsIEJ1ZmZlcmVkV3JpdGVyLAogICAgIEJ1ZmZlcmVkUmFuZG9tLgotICAgIAorCiAgICAgV3JpdHRlbiBieSBBbWF1cnkgRm9yZ2VvdCBkJ0FyYyBhbmQgQW50b2luZSBQaXRyb3UKICovCiAKQEAgLTEzLDYgKzEzLDIwIEBACiAjaW5jbHVkZSAicHl0aHJlYWQuaCIKICNpbmNsdWRlICJfaW9tb2R1bGUuaCIKIAorX1B5X0lERU5USUZJRVIoY2xvc2UpOworX1B5X0lERU5USUZJRVIoX2RlYWxsb2Nfd2Fybik7CitfUHlfSURFTlRJRklFUihmbHVzaCk7CitfUHlfSURFTlRJRklFUihpc2F0dHkpOworX1B5X0lERU5USUZJRVIobW9kZSk7CitfUHlfSURFTlRJRklFUihuYW1lKTsKK19QeV9JREVOVElGSUVSKHBlZWspOworX1B5X0lERU5USUZJRVIocmVhZCk7CitfUHlfSURFTlRJRklFUihyZWFkMSk7CitfUHlfSURFTlRJRklFUihyZWFkYWJsZSk7CitfUHlfSURFTlRJRklFUihyZWFkaW50byk7CitfUHlfSURFTlRJRklFUih3cml0YWJsZSk7CitfUHlfSURFTlRJRklFUih3cml0ZSk7CisKIC8qCiAgKiBCdWZmZXJlZElPQmFzZSBjbGFzcywgaW5oZXJpdHMgZnJvbSBJT0Jhc2UuCiAgKi8KQEAgLTM4LDEyICs1MiwxMyBAQAogICAgIFB5X2J1ZmZlciBidWY7CiAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgUHlPYmplY3QgKmRhdGE7CisgICAgX1B5X0lERU5USUZJRVIocmVhZCk7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIncqOnJlYWRpbnRvIiwgJmJ1ZikpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgZGF0YSA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZiwgInJlYWQiLCAibiIsIGJ1Zi5sZW4pOworICAgIGRhdGEgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYsICZQeUlkX3JlYWQsICJuIiwgYnVmLmxlbik7CiAgICAgaWYgKGRhdGEgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKIApAQCAtMTk4LDcgKzIxMyw3IEBACiAgICAgaW50IHJlYWRhYmxlOwogICAgIGludCB3cml0YWJsZTsKICAgICBpbnQgZGVhbGxvY2F0aW5nOwotICAgIAorCiAgICAgLyogVHJ1ZSBpZiB0aGlzIGlzIGEgdmFuaWxsYSBCdWZmZXJlZCBvYmplY3QgKHJhdGhlciB0aGFuIGEgdXNlciBkZXJpdmVkCiAgICAgICAgY2xhc3MpICphbmQqIHRoZSByYXcgc3RyZWFtIGlzIGEgdmFuaWxsYSBGaWxlSU8gb2JqZWN0LiAqLwogICAgIGludCBmYXN0X2Nsb3NlZF9jaGVja3M7CkBAIC0yMzcsNyArMjUyLDcgQEAKIAogLyoKICAgICBJbXBsZW1lbnRhdGlvbiBub3RlczoKLSAgICAKKwogICAgICogQnVmZmVyZWRSZWFkZXIsIEJ1ZmZlcmVkV3JpdGVyIGFuZCBCdWZmZXJlZFJhbmRvbSB0cnkgdG8gc2hhcmUgbW9zdAogICAgICAgbWV0aG9kcyAodGhpcyBpcyBoZWxwZWQgYnkgdGhlIG1lbWJlcnMgYHJlYWRhYmxlYCBhbmQgYHdyaXRhYmxlYCwgd2hpY2gKICAgICAgIGFyZSBpbml0aWFsaXplZCBpbiB0aGUgcmVzcGVjdGl2ZSBjb25zdHJ1Y3RvcnMpCkBAIC0yNTUsNyArMjcwLDcgQEAKICAgICBOT1RFOiB3ZSBzaG91bGQgdHJ5IHRvIG1haW50YWluIGJsb2NrIGFsaWdubWVudCBvZiByZWFkcyBhbmQgd3JpdGVzIHRvIHRoZQogICAgIHJhdyBzdHJlYW0gKGFjY29yZGluZyB0byB0aGUgYnVmZmVyIHNpemUpLCBidXQgZm9yIG5vdyBpdCBpcyBvbmx5IGRvbmUKICAgICBpbiByZWFkKCkgYW5kIGZyaWVuZHMuCi0gICAgCisKICovCiAKIC8qIFRoZXNlIG1hY3JvcyBwcm90ZWN0IHRoZSBidWZmZXJlZCBvYmplY3QgYWdhaW5zdCBjb25jdXJyZW50IG9wZXJhdGlvbnMuICovCkBAIC00MTAsNyArNDI1LDcgQEAKIHsKICAgICBpZiAoc2VsZi0+b2sgJiYgc2VsZi0+cmF3KSB7CiAgICAgICAgIFB5T2JqZWN0ICpyOwotICAgICAgICByID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5yYXcsICJfZGVhbGxvY193YXJuIiwgIk8iLCBzb3VyY2UpOworICAgICAgICByID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5yYXcsICZQeUlkX19kZWFsbG9jX3dhcm4sICJPIiwgc291cmNlKTsKICAgICAgICAgaWYgKHIpCiAgICAgICAgICAgICBQeV9ERUNSRUYocik7CiAgICAgICAgIGVsc2UKQEAgLTU0MywxNCArNTU4LDE0IEBACiBidWZmZXJlZF9uYW1lX2dldChidWZmZXJlZCAqc2VsZiwgdm9pZCAqY29udGV4dCkKIHsKICAgICBDSEVDS19JTklUSUFMSVpFRChzZWxmKQotICAgIHJldHVybiBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHNlbGYtPnJhdywgIm5hbWUiKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0dldEF0dHJJZChzZWxmLT5yYXcsICZQeUlkX25hbWUpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogYnVmZmVyZWRfbW9kZV9nZXQoYnVmZmVyZWQgKnNlbGYsIHZvaWQgKmNvbnRleHQpCiB7CiAgICAgQ0hFQ0tfSU5JVElBTElaRUQoc2VsZikKLSAgICByZXR1cm4gUHlPYmplY3RfR2V0QXR0clN0cmluZyhzZWxmLT5yYXcsICJtb2RlIik7CisgICAgcmV0dXJuIF9QeU9iamVjdF9HZXRBdHRySWQoc2VsZi0+cmF3LCAmUHlJZF9tb2RlKTsKIH0KIAogLyogTG93ZXItbGV2ZWwgQVBJcyAqLwpAQCAtNTg5LDE0ICs2MDQsMTUgQEAKIHN0YXRpYyB2b2lkCiBfYnVmZmVyZWR3cml0ZXJfcmVzZXRfYnVmKGJ1ZmZlcmVkICpzZWxmKTsKIHN0YXRpYyBQeU9iamVjdCAqCi1fYnVmZmVyZWRyZWFkZXJfcGVla191bmxvY2tlZChidWZmZXJlZCAqc2VsZiwgUHlfc3NpemVfdCk7CitfYnVmZmVyZWRyZWFkZXJfcGVla191bmxvY2tlZChidWZmZXJlZCAqc2VsZik7CiBzdGF0aWMgUHlPYmplY3QgKgogX2J1ZmZlcmVkcmVhZGVyX3JlYWRfYWxsKGJ1ZmZlcmVkICpzZWxmKTsKIHN0YXRpYyBQeU9iamVjdCAqCiBfYnVmZmVyZWRyZWFkZXJfcmVhZF9mYXN0KGJ1ZmZlcmVkICpzZWxmLCBQeV9zc2l6ZV90KTsKIHN0YXRpYyBQeU9iamVjdCAqCiBfYnVmZmVyZWRyZWFkZXJfcmVhZF9nZW5lcmljKGJ1ZmZlcmVkICpzZWxmLCBQeV9zc2l6ZV90KTsKLQorc3RhdGljIFB5X3NzaXplX3QKK19idWZmZXJlZHJlYWRlcl9yYXdfcmVhZChidWZmZXJlZCAqc2VsZiwgY2hhciAqc3RhcnQsIFB5X3NzaXplX3QgbGVuKTsKIAogLyoKICAqIEhlbHBlcnMKQEAgLTYyMCwxNCArNjM2LDE0IEBACiBfYnVmZmVyZWRfY2hlY2tfYmxvY2tpbmdfZXJyb3Iodm9pZCkKIHsKICAgICBQeU9iamVjdCAqdCwgKnYsICp0YjsKLSAgICBQeUJsb2NraW5nSU9FcnJvck9iamVjdCAqZXJyOworICAgIFB5T1NFcnJvck9iamVjdCAqZXJyOwogCiAgICAgUHlFcnJfRmV0Y2goJnQsICZ2LCAmdGIpOwogICAgIGlmICh2ID09IE5VTEwgfHwgIVB5RXJyX0dpdmVuRXhjZXB0aW9uTWF0Y2hlcyh2LCBQeUV4Y19CbG9ja2luZ0lPRXJyb3IpKSB7CiAgICAgICAgIFB5RXJyX1Jlc3RvcmUodCwgdiwgdGIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgZXJyID0gKFB5QmxvY2tpbmdJT0Vycm9yT2JqZWN0ICopIHY7CisgICAgZXJyID0gKFB5T1NFcnJvck9iamVjdCAqKSB2OwogICAgIC8qIFRPRE86IHNhbml0eSBjaGVjayAoZXJyLT53cml0dGVuID49IDApICovCiAgICAgUHlFcnJfUmVzdG9yZSh0LCB2LCB0Yik7CiAgICAgcmV0dXJuICZlcnItPndyaXR0ZW47CkBAIC02NDcsNyArNjYzLDcgQEAKICAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0lPRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIlJhdyBzdHJlYW0gcmV0dXJuZWQgaW52YWxpZCBwb3NpdGlvbiAlIiBQWV9QUklkT0ZGLAotCQkJIChQWV9PRkZfVF9DT01QQVQpbik7CisgICAgICAgICAgICAgICAgICAgICAgICAgKFBZX09GRl9UX0NPTVBBVCluKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KICAgICBzZWxmLT5hYnNfcG9zID0gbjsKQEAgLTY4MCw3ICs2OTYsNyBAQAogICAgICAgICBpZiAoIVB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSU9FcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAiUmF3IHN0cmVhbSByZXR1cm5lZCBpbnZhbGlkIHBvc2l0aW9uICUiIFBZX1BSSWRPRkYsCi0JCQkgKFBZX09GRl9UX0NPTVBBVCluKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAoUFlfT0ZGX1RfQ09NUEFUKW4pOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIHNlbGYtPmFic19wb3MgPSBuOwpAQCAtODIxLDcgKzgzNyw3IEBACiAgICAgICAgICAgICBnb3RvIGVuZDsKICAgICAgICAgUHlfQ0xFQVIocmVzKTsKICAgICB9Ci0gICAgcmVzID0gX2J1ZmZlcmVkcmVhZGVyX3BlZWtfdW5sb2NrZWQoc2VsZiwgbik7CisgICAgcmVzID0gX2J1ZmZlcmVkcmVhZGVyX3BlZWtfdW5sb2NrZWQoc2VsZik7CiAKIGVuZDoKICAgICBMRUFWRV9CVUZGRVJFRChzZWxmKQpAQCAtODg1LDYxICs5MDEsMTEyIEBACiAgICAgaWYgKG4gPT0gMCkKICAgICAgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgMCk7CiAKLSAgICBpZiAoIUVOVEVSX0JVRkZFUkVEKHNlbGYpKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAKICAgICAvKiBSZXR1cm4gdXAgdG8gbiBieXRlcy4gIElmIGF0IGxlYXN0IG9uZSBieXRlIGlzIGJ1ZmZlcmVkLCB3ZQogICAgICAgIG9ubHkgcmV0dXJuIGJ1ZmZlcmVkIGJ5dGVzLiAgT3RoZXJ3aXNlLCB3ZSBkbyBvbmUgcmF3IHJlYWQuICovCiAKLSAgICAvKiBYWFg6IHRoaXMgbWltaWNrcyB0aGUgaW8ucHkgaW1wbGVtZW50YXRpb24gYnV0IGlzIHByb2JhYmx5IHdyb25nLgotICAgICAgIElmIHdlIG5lZWQgdG8gcmVhZCBmcm9tIHRoZSByYXcgc3RyZWFtLCB0aGVuIHdlIGNvdWxkIGFjdHVhbGx5IHJlYWQKLSAgICAgICBhbGwgYG5gIGJ5dGVzIGFza2VkIGJ5IHRoZSBjYWxsZXIgKGFuZCBwb3NzaWJseSBtb3JlLCBzbyBhcyB0byBmaWxsCi0gICAgICAgb3VyIGJ1ZmZlciBmb3IgdGhlIG5leHQgcmVhZHMpLiAqLwotCiAgICAgaGF2ZSA9IFB5X1NBRkVfRE9XTkNBU1QoUkVBREFIRUFEKHNlbGYpLCBQeV9vZmZfdCwgUHlfc3NpemVfdCk7CiAgICAgaWYgKGhhdmUgPiAwKSB7Ci0gICAgICAgIGlmIChuID4gaGF2ZSkKLSAgICAgICAgICAgIG4gPSBoYXZlOwotICAgICAgICByZXMgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKHNlbGYtPmJ1ZmZlciArIHNlbGYtPnBvcywgbik7Ci0gICAgICAgIGlmIChyZXMgPT0gTlVMTCkKLSAgICAgICAgICAgIGdvdG8gZW5kOwotICAgICAgICBzZWxmLT5wb3MgKz0gbjsKLSAgICAgICAgZ290byBlbmQ7CisgICAgICAgIG4gPSBQeV9NSU4oaGF2ZSwgbik7CisgICAgICAgIHJlcyA9IF9idWZmZXJlZHJlYWRlcl9yZWFkX2Zhc3Qoc2VsZiwgbik7CisgICAgICAgIGFzc2VydChyZXMgIT0gUHlfTm9uZSk7CisgICAgICAgIHJldHVybiByZXM7CiAgICAgfQotCi0gICAgaWYgKHNlbGYtPndyaXRhYmxlKSB7Ci0gICAgICAgIHJlcyA9IGJ1ZmZlcmVkX2ZsdXNoX2FuZF9yZXdpbmRfdW5sb2NrZWQoc2VsZik7Ci0gICAgICAgIGlmIChyZXMgPT0gTlVMTCkKLSAgICAgICAgICAgIGdvdG8gZW5kOworICAgIHJlcyA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgbik7CisgICAgaWYgKHJlcyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIUVOVEVSX0JVRkZFUkVEKHNlbGYpKSB7CiAgICAgICAgIFB5X0RFQ1JFRihyZXMpOworICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0KLSAgICAvKiBGaWxsIHRoZSBidWZmZXIgZnJvbSB0aGUgcmF3IHN0cmVhbSwgYW5kIGNvcHkgaXQgdG8gdGhlIHJlc3VsdC4gKi8KICAgICBfYnVmZmVyZWRyZWFkZXJfcmVzZXRfYnVmKHNlbGYpOwotICAgIHIgPSBfYnVmZmVyZWRyZWFkZXJfZmlsbF9idWZmZXIoc2VsZik7Ci0gICAgaWYgKHIgPT0gLTEpCi0gICAgICAgIGdvdG8gZW5kOworICAgIHIgPSBfYnVmZmVyZWRyZWFkZXJfcmF3X3JlYWQoc2VsZiwgUHlCeXRlc19BU19TVFJJTkcocmVzKSwgbik7CisgICAgTEVBVkVfQlVGRkVSRUQoc2VsZikKKyAgICBpZiAociA9PSAtMSkgeworICAgICAgICBQeV9ERUNSRUYocmVzKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogICAgIGlmIChyID09IC0yKQogICAgICAgICByID0gMDsKICAgICBpZiAobiA+IHIpCi0gICAgICAgIG4gPSByOwotICAgIHJlcyA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoc2VsZi0+YnVmZmVyLCBuKTsKLSAgICBpZiAocmVzID09IE5VTEwpCi0gICAgICAgIGdvdG8gZW5kOwotICAgIHNlbGYtPnBvcyA9IG47Ci0KLWVuZDoKLSAgICBMRUFWRV9CVUZGRVJFRChzZWxmKQorICAgICAgICBfUHlCeXRlc19SZXNpemUoJnJlcywgcik7CiAgICAgcmV0dXJuIHJlczsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkX3JlYWRpbnRvKGJ1ZmZlcmVkICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKKyAgICBQeV9idWZmZXIgYnVmOworICAgIFB5X3NzaXplX3Qgbiwgd3JpdHRlbiA9IDAsIHJlbWFpbmluZzsKKyAgICBQeU9iamVjdCAqcmVzID0gTlVMTDsKKwogICAgIENIRUNLX0lOSVRJQUxJWkVEKHNlbGYpCi0gICAgCi0gICAgLyogVE9ETzogdXNlIHJhdy5yZWFkaW50bygpIChvciBhIGRpcmVjdCBjb3B5IGZyb20gb3VyIGJ1ZmZlcikgaW5zdGVhZCEgKi8KLSAgICByZXR1cm4gYnVmZmVyZWRpb2Jhc2VfcmVhZGludG8oKFB5T2JqZWN0ICopc2VsZiwgYXJncyk7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIncqOnJlYWRpbnRvIiwgJmJ1ZikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgbiA9IFB5X1NBRkVfRE9XTkNBU1QoUkVBREFIRUFEKHNlbGYpLCBQeV9vZmZfdCwgUHlfc3NpemVfdCk7CisgICAgaWYgKG4gPiAwKSB7CisgICAgICAgIGlmIChuID49IGJ1Zi5sZW4pIHsKKyAgICAgICAgICAgIG1lbWNweShidWYuYnVmLCBzZWxmLT5idWZmZXIgKyBzZWxmLT5wb3MsIGJ1Zi5sZW4pOworICAgICAgICAgICAgc2VsZi0+cG9zICs9IGJ1Zi5sZW47CisgICAgICAgICAgICByZXMgPSBQeUxvbmdfRnJvbVNzaXplX3QoYnVmLmxlbik7CisgICAgICAgICAgICBnb3RvIGVuZF91bmxvY2tlZDsKKyAgICAgICAgfQorICAgICAgICBtZW1jcHkoYnVmLmJ1Ziwgc2VsZi0+YnVmZmVyICsgc2VsZi0+cG9zLCBuKTsKKyAgICAgICAgc2VsZi0+cG9zICs9IG47CisgICAgICAgIHdyaXR0ZW4gPSBuOworICAgIH0KKworICAgIGlmICghRU5URVJfQlVGRkVSRUQoc2VsZikpCisgICAgICAgIGdvdG8gZW5kX3VubG9ja2VkOworCisgICAgaWYgKHNlbGYtPndyaXRhYmxlKSB7CisgICAgICAgIHJlcyA9IGJ1ZmZlcmVkX2ZsdXNoX2FuZF9yZXdpbmRfdW5sb2NrZWQoc2VsZik7CisgICAgICAgIGlmIChyZXMgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZW5kOworICAgICAgICBQeV9DTEVBUihyZXMpOworICAgIH0KKworICAgIF9idWZmZXJlZHJlYWRlcl9yZXNldF9idWYoc2VsZik7CisgICAgc2VsZi0+cG9zID0gMDsKKworICAgIGZvciAocmVtYWluaW5nID0gYnVmLmxlbiAtIHdyaXR0ZW47CisgICAgICAgICByZW1haW5pbmcgPiAwOworICAgICAgICAgd3JpdHRlbiArPSBuLCByZW1haW5pbmcgLT0gbikgeworICAgICAgICAvKiBJZiByZW1haW5pbmcgYnl0ZXMgaXMgbGFyZ2VyIHRoYW4gaW50ZXJuYWwgYnVmZmVyIHNpemUsIGNvcHkKKyAgICAgICAgICogZGlyZWN0bHkgaW50byBjYWxsZXIncyBidWZmZXIuICovCisgICAgICAgIGlmIChyZW1haW5pbmcgPiBzZWxmLT5idWZmZXJfc2l6ZSkgeworICAgICAgICAgICAgbiA9IF9idWZmZXJlZHJlYWRlcl9yYXdfcmVhZChzZWxmLCAoY2hhciAqKSBidWYuYnVmICsgd3JpdHRlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVtYWluaW5nKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIG4gPSBfYnVmZmVyZWRyZWFkZXJfZmlsbF9idWZmZXIoc2VsZik7CisgICAgICAgICAgICBpZiAobiA+IDApIHsKKyAgICAgICAgICAgICAgICBpZiAobiA+IHJlbWFpbmluZykKKyAgICAgICAgICAgICAgICAgICAgbiA9IHJlbWFpbmluZzsKKyAgICAgICAgICAgICAgICBtZW1jcHkoKGNoYXIgKikgYnVmLmJ1ZiArIHdyaXR0ZW4sCisgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPmJ1ZmZlciArIHNlbGYtPnBvcywgbik7CisgICAgICAgICAgICAgICAgc2VsZi0+cG9zICs9IG47CisgICAgICAgICAgICAgICAgY29udGludWU7IC8qIHNob3J0IGNpcmN1aXQgKi8KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiAobiA9PSAwIHx8IChuID09IC0yICYmIHdyaXR0ZW4gPiAwKSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBpZiAobiA8IDApIHsKKyAgICAgICAgICAgIGlmIChuID09IC0yKSB7CisgICAgICAgICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgICAgICAgICAgICAgIHJlcyA9IFB5X05vbmU7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBnb3RvIGVuZDsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXMgPSBQeUxvbmdfRnJvbVNzaXplX3Qod3JpdHRlbik7CisKK2VuZDoKKyAgICBMRUFWRV9CVUZGRVJFRChzZWxmKTsKK2VuZF91bmxvY2tlZDoKKyAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZidWYpOworICAgIHJldHVybiByZXM7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xMjMxLDcgKzEyOTgsNyBAQAogewogICAgIFB5T2JqZWN0ICpuYW1lb2JqLCAqcmVzOwogCi0gICAgbmFtZW9iaiA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoKFB5T2JqZWN0ICopIHNlbGYsICJuYW1lIik7CisgICAgbmFtZW9iaiA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0ICopIHNlbGYsICZQeUlkX25hbWUpOwogICAgIGlmIChuYW1lb2JqID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKQEAgLTEzNTcsMzMgKzE0MjQsNTggQEAKIF9idWZmZXJlZHJlYWRlcl9yZWFkX2FsbChidWZmZXJlZCAqc2VsZikKIHsKICAgICBQeV9zc2l6ZV90IGN1cnJlbnRfc2l6ZTsKLSAgICBQeU9iamVjdCAqcmVzLCAqZGF0YSA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKmNodW5rcyA9IFB5TGlzdF9OZXcoMCk7Ci0KLSAgICBpZiAoY2h1bmtzID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOworICAgIFB5T2JqZWN0ICpyZXMsICpkYXRhID0gTlVMTCwgKmNodW5rLCAqY2h1bmtzOwogCiAgICAgLyogRmlyc3QgY29weSB3aGF0IHdlIGhhdmUgaW4gdGhlIGN1cnJlbnQgYnVmZmVyLiAqLwogICAgIGN1cnJlbnRfc2l6ZSA9IFB5X1NBRkVfRE9XTkNBU1QoUkVBREFIRUFEKHNlbGYpLCBQeV9vZmZfdCwgUHlfc3NpemVfdCk7CiAgICAgaWYgKGN1cnJlbnRfc2l6ZSkgewogICAgICAgICBkYXRhID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgKICAgICAgICAgICAgIHNlbGYtPmJ1ZmZlciArIHNlbGYtPnBvcywgY3VycmVudF9zaXplKTsKLSAgICAgICAgaWYgKGRhdGEgPT0gTlVMTCkgewotICAgICAgICAgICAgUHlfREVDUkVGKGNodW5rcyk7CisgICAgICAgIGlmIChkYXRhID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQogICAgICAgICBzZWxmLT5wb3MgKz0gY3VycmVudF9zaXplOwogICAgIH0KICAgICAvKiBXZSdyZSBnb2luZyBwYXN0IHRoZSBidWZmZXIncyBib3VuZHMsIGZsdXNoIGl0ICovCiAgICAgaWYgKHNlbGYtPndyaXRhYmxlKSB7CiAgICAgICAgIHJlcyA9IGJ1ZmZlcmVkX2ZsdXNoX2FuZF9yZXdpbmRfdW5sb2NrZWQoc2VsZik7Ci0gICAgICAgIGlmIChyZXMgPT0gTlVMTCkgewotICAgICAgICAgICAgUHlfREVDUkVGKGNodW5rcyk7CisgICAgICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9CiAgICAgICAgIFB5X0NMRUFSKHJlcyk7CiAgICAgfQogICAgIF9idWZmZXJlZHJlYWRlcl9yZXNldF9idWYoc2VsZik7CisKKyAgICBpZiAoUHlPYmplY3RfSGFzQXR0cihzZWxmLT5yYXcsIF9QeUlPX3N0cl9yZWFkYWxsKSkgeworICAgICAgICBjaHVuayA9IFB5T2JqZWN0X0NhbGxNZXRob2RPYmpBcmdzKHNlbGYtPnJhdywgX1B5SU9fc3RyX3JlYWRhbGwsIE5VTEwpOworICAgICAgICBpZiAoY2h1bmsgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBpZiAoY2h1bmsgIT0gUHlfTm9uZSAmJiAhUHlCeXRlc19DaGVjayhjaHVuaykpIHsKKyAgICAgICAgICAgIFB5X1hERUNSRUYoZGF0YSk7CisgICAgICAgICAgICBQeV9ERUNSRUYoY2h1bmspOworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlYWRhbGwoKSBzaG91bGQgcmV0dXJuIGJ5dGVzIik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBpZiAoY2h1bmsgPT0gUHlfTm9uZSkgeworICAgICAgICAgICAgaWYgKGN1cnJlbnRfc2l6ZSA9PSAwKQorICAgICAgICAgICAgICAgIHJldHVybiBjaHVuazsKKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihjaHVuayk7CisgICAgICAgICAgICAgICAgcmV0dXJuIGRhdGE7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoY3VycmVudF9zaXplKSB7CisgICAgICAgICAgICBQeUJ5dGVzX0NvbmNhdCgmZGF0YSwgY2h1bmspOworICAgICAgICAgICAgUHlfREVDUkVGKGNodW5rKTsKKyAgICAgICAgICAgIGlmIChkYXRhID09IE5VTEwpCisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICByZXR1cm4gZGF0YTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICByZXR1cm4gY2h1bms7CisgICAgfQorCisgICAgY2h1bmtzID0gUHlMaXN0X05ldygwKTsKKyAgICBpZiAoY2h1bmtzID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgd2hpbGUgKDEpIHsKICAgICAgICAgaWYgKGRhdGEpIHsKICAgICAgICAgICAgIGlmIChQeUxpc3RfQXBwZW5kKGNodW5rcywgZGF0YSkgPCAwKSB7CkBAIC0xNTQ1LDcgKzE2MzcsNyBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotX2J1ZmZlcmVkcmVhZGVyX3BlZWtfdW5sb2NrZWQoYnVmZmVyZWQgKnNlbGYsIFB5X3NzaXplX3QgbikKK19idWZmZXJlZHJlYWRlcl9wZWVrX3VubG9ja2VkKGJ1ZmZlcmVkICpzZWxmKQogewogICAgIFB5X3NzaXplX3QgaGF2ZSwgcjsKIApAQCAtMTU4Nyw2ICsxNjc5LDcgQEAKICAgICB7InJlYWQiLCAoUHlDRnVuY3Rpb24pYnVmZmVyZWRfcmVhZCwgTUVUSF9WQVJBUkdTfSwKICAgICB7InBlZWsiLCAoUHlDRnVuY3Rpb24pYnVmZmVyZWRfcGVlaywgTUVUSF9WQVJBUkdTfSwKICAgICB7InJlYWQxIiwgKFB5Q0Z1bmN0aW9uKWJ1ZmZlcmVkX3JlYWQxLCBNRVRIX1ZBUkFSR1N9LAorICAgIHsicmVhZGludG8iLCAoUHlDRnVuY3Rpb24pYnVmZmVyZWRfcmVhZGludG8sIE1FVEhfVkFSQVJHU30sCiAgICAgeyJyZWFkbGluZSIsIChQeUNGdW5jdGlvbilidWZmZXJlZF9yZWFkbGluZSwgTUVUSF9WQVJBUkdTfSwKICAgICB7InNlZWsiLCAoUHlDRnVuY3Rpb24pYnVmZmVyZWRfc2VlaywgTUVUSF9WQVJBUkdTfSwKICAgICB7InRlbGwiLCAoUHlDRnVuY3Rpb24pYnVmZmVyZWRfdGVsbCwgTUVUSF9OT0FSR1N9LApAQCAtMjEzNSwxMyArMjIyOCwxMyBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotX2ZvcndhcmRfY2FsbChidWZmZXJlZCAqc2VsZiwgY29uc3QgY2hhciAqbmFtZSwgUHlPYmplY3QgKmFyZ3MpCitfZm9yd2FyZF9jYWxsKGJ1ZmZlcmVkICpzZWxmLCBfUHlfSWRlbnRpZmllciAqbmFtZSwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlPYmplY3QgKmZ1bmMgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKChQeU9iamVjdCAqKXNlbGYsIG5hbWUpOworICAgIFB5T2JqZWN0ICpmdW5jID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKilzZWxmLCBuYW1lKTsKICAgICBQeU9iamVjdCAqcmV0OwogCiAgICAgaWYgKGZ1bmMgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQXR0cmlidXRlRXJyb3IsIG5hbWUpOworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQXR0cmlidXRlRXJyb3IsIG5hbWUtPnN0cmluZyk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIApAQCAtMjE1Myw2NiArMjI0Niw2NiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkcndwYWlyX3JlYWQocndwYWlyICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICByZXR1cm4gX2ZvcndhcmRfY2FsbChzZWxmLT5yZWFkZXIsICJyZWFkIiwgYXJncyk7CisgICAgcmV0dXJuIF9mb3J3YXJkX2NhbGwoc2VsZi0+cmVhZGVyLCAmUHlJZF9yZWFkLCBhcmdzKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkcndwYWlyX3BlZWsocndwYWlyICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICByZXR1cm4gX2ZvcndhcmRfY2FsbChzZWxmLT5yZWFkZXIsICJwZWVrIiwgYXJncyk7CisgICAgcmV0dXJuIF9mb3J3YXJkX2NhbGwoc2VsZi0+cmVhZGVyLCAmUHlJZF9wZWVrLCBhcmdzKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkcndwYWlyX3JlYWQxKHJ3cGFpciAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgcmV0dXJuIF9mb3J3YXJkX2NhbGwoc2VsZi0+cmVhZGVyLCAicmVhZDEiLCBhcmdzKTsKKyAgICByZXR1cm4gX2ZvcndhcmRfY2FsbChzZWxmLT5yZWFkZXIsICZQeUlkX3JlYWQxLCBhcmdzKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkcndwYWlyX3JlYWRpbnRvKHJ3cGFpciAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgcmV0dXJuIF9mb3J3YXJkX2NhbGwoc2VsZi0+cmVhZGVyLCAicmVhZGludG8iLCBhcmdzKTsKKyAgICByZXR1cm4gX2ZvcndhcmRfY2FsbChzZWxmLT5yZWFkZXIsICZQeUlkX3JlYWRpbnRvLCBhcmdzKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkcndwYWlyX3dyaXRlKHJ3cGFpciAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgcmV0dXJuIF9mb3J3YXJkX2NhbGwoc2VsZi0+d3JpdGVyLCAid3JpdGUiLCBhcmdzKTsKKyAgICByZXR1cm4gX2ZvcndhcmRfY2FsbChzZWxmLT53cml0ZXIsICZQeUlkX3dyaXRlLCBhcmdzKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkcndwYWlyX2ZsdXNoKHJ3cGFpciAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgcmV0dXJuIF9mb3J3YXJkX2NhbGwoc2VsZi0+d3JpdGVyLCAiZmx1c2giLCBhcmdzKTsKKyAgICByZXR1cm4gX2ZvcndhcmRfY2FsbChzZWxmLT53cml0ZXIsICZQeUlkX2ZsdXNoLCBhcmdzKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkcndwYWlyX3JlYWRhYmxlKHJ3cGFpciAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgcmV0dXJuIF9mb3J3YXJkX2NhbGwoc2VsZi0+cmVhZGVyLCAicmVhZGFibGUiLCBhcmdzKTsKKyAgICByZXR1cm4gX2ZvcndhcmRfY2FsbChzZWxmLT5yZWFkZXIsICZQeUlkX3JlYWRhYmxlLCBhcmdzKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkcndwYWlyX3dyaXRhYmxlKHJ3cGFpciAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgcmV0dXJuIF9mb3J3YXJkX2NhbGwoc2VsZi0+d3JpdGVyLCAid3JpdGFibGUiLCBhcmdzKTsKKyAgICByZXR1cm4gX2ZvcndhcmRfY2FsbChzZWxmLT53cml0ZXIsICZQeUlkX3dyaXRhYmxlLCBhcmdzKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkcndwYWlyX2Nsb3NlKHJ3cGFpciAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlPYmplY3QgKnJldCA9IF9mb3J3YXJkX2NhbGwoc2VsZi0+d3JpdGVyLCAiY2xvc2UiLCBhcmdzKTsKKyAgICBQeU9iamVjdCAqcmV0ID0gX2ZvcndhcmRfY2FsbChzZWxmLT53cml0ZXIsICZQeUlkX2Nsb3NlLCBhcmdzKTsKICAgICBpZiAocmV0ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0RFQ1JFRihyZXQpOwogCi0gICAgcmV0dXJuIF9mb3J3YXJkX2NhbGwoc2VsZi0+cmVhZGVyLCAiY2xvc2UiLCBhcmdzKTsKKyAgICByZXR1cm4gX2ZvcndhcmRfY2FsbChzZWxmLT5yZWFkZXIsICZQeUlkX2Nsb3NlLCBhcmdzKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1ZmZlcmVkcndwYWlyX2lzYXR0eShyd3BhaXIgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5T2JqZWN0ICpyZXQgPSBfZm9yd2FyZF9jYWxsKHNlbGYtPndyaXRlciwgImlzYXR0eSIsIGFyZ3MpOworICAgIFB5T2JqZWN0ICpyZXQgPSBfZm9yd2FyZF9jYWxsKHNlbGYtPndyaXRlciwgJlB5SWRfaXNhdHR5LCBhcmdzKTsKIAogICAgIGlmIChyZXQgIT0gUHlfRmFsc2UpIHsKICAgICAgICAgLyogZWl0aGVyIFRydWUgb3IgZXhjZXB0aW9uICovCkBAIC0yMjIwLDcgKzIzMTMsNyBAQAogICAgIH0KICAgICBQeV9ERUNSRUYocmV0KTsKIAotICAgIHJldHVybiBfZm9yd2FyZF9jYWxsKHNlbGYtPnJlYWRlciwgImlzYXR0eSIsIGFyZ3MpOworICAgIHJldHVybiBfZm9yd2FyZF9jYWxsKHNlbGYtPnJlYWRlciwgJlB5SWRfaXNhdHR5LCBhcmdzKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2lvL2J5dGVzaW8uYyBiL01vZHVsZXMvX2lvL2J5dGVzaW8uYwppbmRleCBiNDA1MTNmLi42NWVjOTMxIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19pby9ieXRlc2lvLmMKKysrIGIvTW9kdWxlcy9faW8vYnl0ZXNpby5jCkBAIC05MzgsMTMgKzkzOCwxMSBAQAogYnl0ZXNpb2J1Zl9nZXRidWZmZXIoYnl0ZXNpb2J1ZiAqb2JqLCBQeV9idWZmZXIgKnZpZXcsIGludCBmbGFncykKIHsKICAgICBpbnQgcmV0OwotICAgIHZvaWQgKnB0cjsKICAgICBieXRlc2lvICpiID0gKGJ5dGVzaW8gKikgb2JqLT5zb3VyY2U7CiAgICAgaWYgKHZpZXcgPT0gTlVMTCkgewogICAgICAgICBiLT5leHBvcnRzKys7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KLSAgICBwdHIgPSAodm9pZCAqKSBvYmo7CiAgICAgcmV0ID0gUHlCdWZmZXJfRmlsbEluZm8odmlldywgKFB5T2JqZWN0KilvYmosIGItPmJ1ZiwgYi0+c3RyaW5nX3NpemUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgZmxhZ3MpOwogICAgIGlmIChyZXQgPj0gMCkgewpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9faW8vZmlsZWlvLmMgYi9Nb2R1bGVzL19pby9maWxlaW8uYwppbmRleCBkNWIwM2VlLi4zNGZmMWUwIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19pby9maWxlaW8uYworKysgYi9Nb2R1bGVzL19pby9maWxlaW8uYwpAQCAtNDYsNiArNDYsNyBAQAogdHlwZWRlZiBzdHJ1Y3QgewogICAgIFB5T2JqZWN0X0hFQUQKICAgICBpbnQgZmQ7CisgICAgdW5zaWduZWQgaW50IGNyZWF0ZWQgOiAxOwogICAgIHVuc2lnbmVkIGludCByZWFkYWJsZSA6IDE7CiAgICAgdW5zaWduZWQgaW50IHdyaXRhYmxlIDogMTsKICAgICBzaWduZWQgaW50IHNlZWthYmxlIDogMjsgLyogLTEgbWVhbnMgdW5rbm93biAqLwpAQCAtMTIyLDYgKzEyMyw3IEBACiBzdGF0aWMgUHlPYmplY3QgKgogZmlsZWlvX2Nsb3NlKGZpbGVpbyAqc2VsZikKIHsKKyAgICBfUHlfSURFTlRJRklFUihjbG9zZSk7CiAgICAgaWYgKCFzZWxmLT5jbG9zZWZkKSB7CiAgICAgICAgIHNlbGYtPmZkID0gLTE7CiAgICAgICAgIFB5X1JFVFVSTl9OT05FOwpAQCAtMTM3LDggKzEzOSw4IEBACiAgICAgaWYgKGVycm5vIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZCgoUHlPYmplY3QqKSZQeVJhd0lPQmFzZV9UeXBlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjbG9zZSIsICJPIiwgc2VsZik7CisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoKFB5T2JqZWN0KikmUHlSYXdJT0Jhc2VfVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmUHlJZF9jbG9zZSwgIk8iLCBzZWxmKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTE1MSw2ICsxNTMsNyBAQAogICAgIHNlbGYgPSAoZmlsZWlvICopIHR5cGUtPnRwX2FsbG9jKHR5cGUsIDApOwogICAgIGlmIChzZWxmICE9IE5VTEwpIHsKICAgICAgICAgc2VsZi0+ZmQgPSAtMTsKKyAgICAgICAgc2VsZi0+Y3JlYXRlZCA9IDA7CiAgICAgICAgIHNlbGYtPnJlYWRhYmxlID0gMDsKICAgICAgICAgc2VsZi0+d3JpdGFibGUgPSAwOwogICAgICAgICBzZWxmLT5zZWVrYWJsZSA9IC0xOwpAQCAtMjExLDkgKzIxNCw5IEBACiBmaWxlaW9faW5pdChQeU9iamVjdCAqb3NlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKICAgICBmaWxlaW8gKnNlbGYgPSAoZmlsZWlvICopIG9zZWxmOwotICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiZmlsZSIsICJtb2RlIiwgImNsb3NlZmQiLCBOVUxMfTsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7ImZpbGUiLCAibW9kZSIsICJjbG9zZWZkIiwgIm9wZW5lciIsIE5VTEx9OwogICAgIGNvbnN0IGNoYXIgKm5hbWUgPSBOVUxMOwotICAgIFB5T2JqZWN0ICpuYW1lb2JqLCAqc3RyaW5nb2JqID0gTlVMTDsKKyAgICBQeU9iamVjdCAqbmFtZW9iaiwgKnN0cmluZ29iaiA9IE5VTEwsICpvcGVuZXIgPSBQeV9Ob25lOwogICAgIGNoYXIgKm1vZGUgPSAiciI7CiAgICAgY2hhciAqczsKICNpZmRlZiBNU19XSU5ET1dTCkBAIC0yMzIsOCArMjM1LDkgQEAKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAiT3xzaTpmaWxlaW8iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3bGlzdCwgJm5hbWVvYmosICZtb2RlLCAmY2xvc2VmZCkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgIk98c2lPOmZpbGVpbyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmbmFtZW9iaiwgJm1vZGUsICZjbG9zZWZkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZvcGVuZXIpKQogICAgICAgICByZXR1cm4gLTE7CiAKICAgICBpZiAoUHlGbG9hdF9DaGVjayhuYW1lb2JqKSkgewpAQCAtMjYwLDkgKzI2NCwxMCBAQAogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJlbWJlZGRlZCBOVUwgY2hhcmFjdGVyIik7CiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIH0KLSAgICAgICAgd2lkZW5hbWUgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShuYW1lb2JqKTsKLSAgICB9Ci0gICAgaWYgKHdpZGVuYW1lID09IE5VTEwpCisgICAgICAgIHdpZGVuYW1lID0gUHlVbmljb2RlX0FzVW5pY29kZShuYW1lb2JqKTsKKyAgICAgICAgaWYgKHdpZGVuYW1lID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgfSBlbHNlCiAjZW5kaWYKICAgICBpZiAoZmQgPCAwKQogICAgIHsKQEAgLTI3NSwxNSArMjgwLDIzIEBACiAgICAgcyA9IG1vZGU7CiAgICAgd2hpbGUgKCpzKSB7CiAgICAgICAgIHN3aXRjaCAoKnMrKykgewotICAgICAgICBjYXNlICdyJzoKKyAgICAgICAgY2FzZSAneCc6CiAgICAgICAgICAgICBpZiAocndhKSB7CiAgICAgICAgICAgICBiYWRfbW9kZToKICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk11c3QgaGF2ZSBleGFjdGx5IG9uZSBvZiByZWFkL3dyaXRlL2FwcGVuZCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJNdXN0IGhhdmUgZXhhY3RseSBvbmUgb2YgY3JlYXRlL3JlYWQvd3JpdGUvYXBwZW5kICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1vZGUgYW5kIGF0IG1vc3Qgb25lIHBsdXMiKTsKICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgcndhID0gMTsKKyAgICAgICAgICAgIHNlbGYtPmNyZWF0ZWQgPSAxOworICAgICAgICAgICAgc2VsZi0+d3JpdGFibGUgPSAxOworICAgICAgICAgICAgZmxhZ3MgfD0gT19FWENMIHwgT19DUkVBVDsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdyJzoKKyAgICAgICAgICAgIGlmIChyd2EpCisgICAgICAgICAgICAgICAgZ290byBiYWRfbW9kZTsKKyAgICAgICAgICAgIHJ3YSA9IDE7CiAgICAgICAgICAgICBzZWxmLT5yZWFkYWJsZSA9IDE7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSAndyc6CkBAIC0zNDksMTkgKzM2MiwzOSBAQAogICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQogCi0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAgICAgZXJybm8gPSAwOworICAgICAgICBpZiAob3BlbmVyID09IFB5X05vbmUpIHsKKyAgICAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICNpZmRlZiBNU19XSU5ET1dTCi0gICAgICAgIGlmICh3aWRlbmFtZSAhPSBOVUxMKQotICAgICAgICAgICAgc2VsZi0+ZmQgPSBfd29wZW4od2lkZW5hbWUsIGZsYWdzLCAwNjY2KTsKLSAgICAgICAgZWxzZQorICAgICAgICAgICAgaWYgKHdpZGVuYW1lICE9IE5VTEwpCisgICAgICAgICAgICAgICAgc2VsZi0+ZmQgPSBfd29wZW4od2lkZW5hbWUsIGZsYWdzLCAwNjY2KTsKKyAgICAgICAgICAgIGVsc2UKICNlbmRpZgotICAgICAgICAgICAgc2VsZi0+ZmQgPSBvcGVuKG5hbWUsIGZsYWdzLCAwNjY2KTsKLSAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgICAgICAgICBzZWxmLT5mZCA9IG9wZW4obmFtZSwgZmxhZ3MsIDA2NjYpOworICAgICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpmZG9iaiA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbigKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuZXIsICJPaSIsIG5hbWVvYmosIGZsYWdzKTsKKyAgICAgICAgICAgIGlmIChmZG9iaiA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICBpZiAoIVB5TG9uZ19DaGVjayhmZG9iaikpIHsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYoZmRvYmopOworICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiZXhwZWN0ZWQgaW50ZWdlciBmcm9tIG9wZW5lciIpOworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHNlbGYtPmZkID0gUHlMb25nX0FzTG9uZyhmZG9iaik7CisgICAgICAgICAgICBQeV9ERUNSRUYoZmRvYmopOworICAgICAgICAgICAgaWYgKHNlbGYtPmZkID09IC0xKSB7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCiAgICAgICAgIGlmIChzZWxmLT5mZCA8IDApIHsKICNpZmRlZiBNU19XSU5ET1dTCiAgICAgICAgICAgICBpZiAod2lkZW5hbWUgIT0gTlVMTCkKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm9XaXRoVW5pY29kZUZpbGVuYW1lKFB5RXhjX0lPRXJyb3IsIHdpZGVuYW1lKTsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWVPYmplY3QoUHlFeGNfSU9FcnJvciwgbmFtZW9iaik7CiAgICAgICAgICAgICBlbHNlCiAjZW5kaWYKICAgICAgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWUoUHlFeGNfSU9FcnJvciwgbmFtZSk7CkBAIC01MzMsMjEgKzU2NiwyNSBAQAogfQogCiBzdGF0aWMgc2l6ZV90Ci1uZXdfYnVmZmVyc2l6ZShmaWxlaW8gKnNlbGYsIHNpemVfdCBjdXJyZW50c2l6ZSkKK25ld19idWZmZXJzaXplKGZpbGVpbyAqc2VsZiwgc2l6ZV90IGN1cnJlbnRzaXplCisjaWZkZWYgSEFWRV9GU1RBVAorICAgICAgICAgICAgICAgLCBQeV9vZmZfdCBwb3MsIFB5X29mZl90IGVuZAorI2VuZGlmCisgICAgICAgICAgICAgICApCiB7CiAjaWZkZWYgSEFWRV9GU1RBVAotICAgIG9mZl90IHBvcywgZW5kOwotICAgIHN0cnVjdCBzdGF0IHN0OwotICAgIGlmIChmc3RhdChzZWxmLT5mZCwgJnN0KSA9PSAwKSB7Ci0gICAgICAgIGVuZCA9IHN0LnN0X3NpemU7Ci0gICAgICAgIHBvcyA9IGxzZWVrKHNlbGYtPmZkLCAwTCwgU0VFS19DVVIpOworICAgIGlmIChlbmQgIT0gKFB5X29mZl90KS0xKSB7CiAgICAgICAgIC8qIEZpbGVzIGNsYWltaW5nIGEgc2l6ZSBzbWFsbGVyIHRoYW4gU01BTExDSFVOSyBtYXkKICAgICAgICAgICAgYWN0dWFsbHkgYmUgc3RyZWFtaW5nIHBzZXVkby1maWxlcy4gSW4gdGhpcyBjYXNlLCB3ZQogICAgICAgICAgICBhcHBseSB0aGUgbW9yZSBhZ2dyZXNzaXZlIGFsZ29yaXRobSBiZWxvdy4KICAgICAgICAgKi8KICAgICAgICAgaWYgKGVuZCA+PSBTTUFMTENIVU5LICYmIGVuZCA+PSBwb3MgJiYgcG9zID49IDApIHsKICAgICAgICAgICAgIC8qIEFkZCAxIHNvIGlmIHRoZSBmaWxlIHdlcmUgdG8gZ3JvdyB3ZSdkIG5vdGljZS4gKi8KLSAgICAgICAgICAgIHJldHVybiBjdXJyZW50c2l6ZSArIGVuZCAtIHBvcyArIDE7CisgICAgICAgICAgICBQeV9vZmZfdCBidWZzaXplID0gY3VycmVudHNpemUgKyBlbmQgLSBwb3MgKyAxOworICAgICAgICAgICAgaWYgKGJ1ZnNpemUgPCBQWV9TU0laRV9UX01BWCkKKyAgICAgICAgICAgICAgICByZXR1cm4gKHNpemVfdClidWZzaXplOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJldHVybiBQWV9TU0laRV9UX01BWDsKICAgICAgICAgfQogICAgIH0KICNlbmRpZgpAQCAtNTYwLDkgKzU5NywxNCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGZpbGVpb19yZWFkYWxsKGZpbGVpbyAqc2VsZikKIHsKKyNpZmRlZiBIQVZFX0ZTVEFUCisgICAgc3RydWN0IHN0YXQgc3Q7CisgICAgUHlfb2ZmX3QgcG9zLCBlbmQ7CisjZW5kaWYKICAgICBQeU9iamVjdCAqcmVzdWx0OwogICAgIFB5X3NzaXplX3QgdG90YWwgPSAwOwogICAgIGludCBuOworICAgIHNpemVfdCBuZXdzaXplOwogCiAgICAgaWYgKHNlbGYtPmZkIDwgMCkKICAgICAgICAgcmV0dXJuIGVycl9jbG9zZWQoKTsKQEAgLTU3Myw4ICs2MTUsMjMgQEAKICAgICBpZiAocmVzdWx0ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCisjaWZkZWYgSEFWRV9GU1RBVAorI2lmIGRlZmluZWQoTVNfV0lONjQpIHx8IGRlZmluZWQoTVNfV0lORE9XUykKKyAgICBwb3MgPSBfbHNlZWtpNjQoc2VsZi0+ZmQsIDBMLCBTRUVLX0NVUik7CisjZWxzZQorICAgIHBvcyA9IGxzZWVrKHNlbGYtPmZkLCAwTCwgU0VFS19DVVIpOworI2VuZGlmCisgICAgaWYgKGZzdGF0KHNlbGYtPmZkLCAmc3QpID09IDApCisgICAgICAgIGVuZCA9IHN0LnN0X3NpemU7CisgICAgZWxzZQorICAgICAgICBlbmQgPSAoUHlfb2ZmX3QpLTE7CisjZW5kaWYKICAgICB3aGlsZSAoMSkgewotICAgICAgICBzaXplX3QgbmV3c2l6ZSA9IG5ld19idWZmZXJzaXplKHNlbGYsIHRvdGFsKTsKKyNpZmRlZiBIQVZFX0ZTVEFUCisgICAgICAgIG5ld3NpemUgPSBuZXdfYnVmZmVyc2l6ZShzZWxmLCB0b3RhbCwgcG9zLCBlbmQpOworI2Vsc2UKKyAgICAgICAgbmV3c2l6ZSA9IG5ld19idWZmZXJzaXplKHNlbGYsIHRvdGFsKTsKKyNlbmRpZgogICAgICAgICBpZiAobmV3c2l6ZSA+IFBZX1NTSVpFX1RfTUFYIHx8IG5ld3NpemUgPD0gMCkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCiAgICAgICAgICAgICAgICAgInVuYm91bmRlZCByZWFkIHJldHVybmVkIG1vcmUgYnl0ZXMgIgpAQCAtNjEzLDYgKzY3MCw5IEBACiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgICAgICB0b3RhbCArPSBuOworI2lmZGVmIEhBVkVfRlNUQVQKKyAgICAgICAgcG9zICs9IG47CisjZW5kaWYKICAgICB9CiAKICAgICBpZiAoUHlCeXRlc19HRVRfU0laRShyZXN1bHQpID4gdG90YWwpIHsKQEAgLTkyNiw2ICs5ODYsMTIgQEAKIHN0YXRpYyBjaGFyICoKIG1vZGVfc3RyaW5nKGZpbGVpbyAqc2VsZikKIHsKKyAgICBpZiAoc2VsZi0+Y3JlYXRlZCkgeworICAgICAgICBpZiAoc2VsZi0+cmVhZGFibGUpCisgICAgICAgICAgICByZXR1cm4gInhiKyI7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJldHVybiAieGIiOworICAgIH0KICAgICBpZiAoc2VsZi0+cmVhZGFibGUpIHsKICAgICAgICAgaWYgKHNlbGYtPndyaXRhYmxlKQogICAgICAgICAgICAgcmV0dXJuICJyYisiOwpAQCAtOTM5LDEyICsxMDA1LDEzIEBACiBzdGF0aWMgUHlPYmplY3QgKgogZmlsZWlvX3JlcHIoZmlsZWlvICpzZWxmKQogeworICAgIF9QeV9JREVOVElGSUVSKG5hbWUpOwogICAgIFB5T2JqZWN0ICpuYW1lb2JqLCAqcmVzOwogCiAgICAgaWYgKHNlbGYtPmZkIDwgMCkKICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCI8X2lvLkZpbGVJTyBbY2xvc2VkXT4iKTsKIAotICAgIG5hbWVvYmogPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKChQeU9iamVjdCAqKSBzZWxmLCAibmFtZSIpOworICAgIG5hbWVvYmogPSBfUHlPYmplY3RfR2V0QXR0cklkKChQeU9iamVjdCAqKSBzZWxmLCAmUHlJZF9uYW1lKTsKICAgICBpZiAobmFtZW9iaiA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CkBAIC05ODQsMTMgKzEwNTEsMTkgQEAKIAogCiBQeURvY19TVFJWQVIoZmlsZWlvX2RvYywKLSJmaWxlKG5hbWU6IHN0clssIG1vZGU6IHN0cl0pIC0+IGZpbGUgSU8gb2JqZWN0XG4iCisiZmlsZShuYW1lOiBzdHJbLCBtb2RlOiBzdHJdWywgb3BlbmVyOiBOb25lXSkgLT4gZmlsZSBJTyBvYmplY3RcbiIKICJcbiIKLSJPcGVuIGEgZmlsZS4gIFRoZSBtb2RlIGNhbiBiZSAncicsICd3JyBvciAnYScgZm9yIHJlYWRpbmcgKGRlZmF1bHQpLFxuIgotIndyaXRpbmcgb3IgYXBwZW5kaW5nLiAgVGhlIGZpbGUgd2lsbCBiZSBjcmVhdGVkIGlmIGl0IGRvZXNuJ3QgZXhpc3RcbiIKLSJ3aGVuIG9wZW5lZCBmb3Igd3JpdGluZyBvciBhcHBlbmRpbmc7IGl0IHdpbGwgYmUgdHJ1bmNhdGVkIHdoZW5cbiIKLSJvcGVuZWQgZm9yIHdyaXRpbmcuICBBZGQgYSAnKycgdG8gdGhlIG1vZGUgdG8gYWxsb3cgc2ltdWx0YW5lb3VzXG4iCi0icmVhZGluZyBhbmQgd3JpdGluZy4iKTsKKyJPcGVuIGEgZmlsZS4gIFRoZSBtb2RlIGNhbiBiZSAncicsICd3JywgJ3gnIG9yICdhJyBmb3IgcmVhZGluZyAoZGVmYXVsdCksXG4iCisid3JpdGluZywgZXhjbHVzaXZlIGNyZWF0aW9uIG9yIGFwcGVuZGluZy4gIFRoZSBmaWxlIHdpbGwgYmUgY3JlYXRlZCBpZiBpdFxuIgorImRvZXNuJ3QgZXhpc3Qgd2hlbiBvcGVuZWQgZm9yIHdyaXRpbmcgb3IgYXBwZW5kaW5nOyBpdCB3aWxsIGJlIHRydW5jYXRlZFxuIgorIndoZW4gb3BlbmVkIGZvciB3cml0aW5nLiAgQSBgRmlsZUV4aXN0c0Vycm9yYCB3aWxsIGJlIHJhaXNlZCBpZiBpdCBhbHJlYWR5XG4iCisiZXhpc3RzIHdoZW4gb3BlbmVkIGZvciBjcmVhdGluZy4gT3BlbmluZyBhIGZpbGUgZm9yIGNyZWF0aW5nIGltcGxpZXNcbiIKKyJ3cml0aW5nIHNvIHRoaXMgbW9kZSBiZWhhdmVzIGluIGEgc2ltaWxhciB3YXkgdG8gJ3cnLkFkZCBhICcrJyB0byB0aGUgbW9kZVxuIgorInRvIGFsbG93IHNpbXVsdGFuZW91cyByZWFkaW5nIGFuZCB3cml0aW5nLiBBIGN1c3RvbSBvcGVuZXIgY2FuIGJlIHVzZWQgYnlcbiIKKyJwYXNzaW5nIGEgY2FsbGFibGUgYXMgKm9wZW5lciouIFRoZSB1bmRlcmx5aW5nIGZpbGUgZGVzY3JpcHRvciBmb3IgdGhlIGZpbGVcbiIKKyJvYmplY3QgaXMgdGhlbiBvYnRhaW5lZCBieSBjYWxsaW5nIG9wZW5lciB3aXRoICgqbmFtZSosICpmbGFncyopLlxuIgorIipvcGVuZXIqIG11c3QgcmV0dXJuIGFuIG9wZW4gZmlsZSBkZXNjcmlwdG9yIChwYXNzaW5nIG9zLm9wZW4gYXMgKm9wZW5lcipcbiIKKyJyZXN1bHRzIGluIGZ1bmN0aW9uYWxpdHkgc2ltaWxhciB0byBwYXNzaW5nIE5vbmUpLiIpOwogCiBQeURvY19TVFJWQVIocmVhZF9kb2MsCiAicmVhZChzaXplOiBpbnQpIC0+IGJ5dGVzLiAgcmVhZCBhdCBtb3N0IHNpemUgYnl0ZXMsIHJldHVybmVkIGFzIGJ5dGVzLlxuIgpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9faW8vaW9iYXNlLmMgYi9Nb2R1bGVzL19pby9pb2Jhc2UuYwppbmRleCAzNWM3Y2RkLi4zYmNlMWE1IDEwMDY0NAotLS0gYS9Nb2R1bGVzL19pby9pb2Jhc2UuYworKysgYi9Nb2R1bGVzL19pby9pb2Jhc2UuYwpAQCAtNTksOCArNTksOSBAQAogICAgb2YgdGhlIElPQmFzZSBvYmplY3QgcmF0aGVyIHRoYW4gdGhlIHZpcnR1YWwgYGNsb3NlZGAgYXR0cmlidXRlIGFzIHJldHVybmVkCiAgICBieSB3aGF0ZXZlciBzdWJjbGFzcy4gKi8KIAorX1B5X0lERU5USUZJRVIoX19JT0Jhc2VfY2xvc2VkKTsKICNkZWZpbmUgSVNfQ0xPU0VEKHNlbGYpIFwKLSAgICBQeU9iamVjdF9IYXNBdHRyU3RyaW5nKHNlbGYsICJfX0lPQmFzZV9jbG9zZWQiKQorICAgIF9QeU9iamVjdF9IYXNBdHRySWQoc2VsZiwgJlB5SWRfX19JT0Jhc2VfY2xvc2VkKQogCiAvKiBJbnRlcm5hbCBtZXRob2RzICovCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtOTcsNyArOTgsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGlvYmFzZV90ZWxsKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLCAic2VlayIsICJpaSIsIDAsIDEpOworICAgIF9QeV9JREVOVElGSUVSKHNlZWspOworCisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZiwgJlB5SWRfc2VlaywgImlpIiwgMCwgMSk7CiB9CiAKIFB5RG9jX1NUUlZBUihpb2Jhc2VfdHJ1bmNhdGVfZG9jLApAQCAtMTkwLDEyICsxOTMsMTMgQEAKIGlvYmFzZV9jbG9zZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKnJlczsKKyAgICBfUHlfSURFTlRJRklFUihfX0lPQmFzZV9jbG9zZWQpOwogCiAgICAgaWYgKElTX0NMT1NFRChzZWxmKSkKICAgICAgICAgUHlfUkVUVVJOX05PTkU7CiAKICAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzZWxmLCBfUHlJT19zdHJfZmx1c2gsIE5VTEwpOwotICAgIFB5T2JqZWN0X1NldEF0dHJTdHJpbmcoc2VsZiwgIl9fSU9CYXNlX2Nsb3NlZCIsIFB5X1RydWUpOworICAgIF9QeU9iamVjdF9TZXRBdHRySWQoc2VsZiwgJlB5SWRfX19JT0Jhc2VfY2xvc2VkLCBQeV9UcnVlKTsKICAgICBpZiAocmVzID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtNDY0LDEyICs0NjgsMTQgQEAKICAgICBpbnQgaGFzX3BlZWsgPSAwOwogICAgIFB5T2JqZWN0ICpidWZmZXIsICpyZXN1bHQ7CiAgICAgUHlfc3NpemVfdCBvbGRfc2l6ZSA9IC0xOworICAgIF9QeV9JREVOVElGSUVSKHJlYWQpOworICAgIF9QeV9JREVOVElGSUVSKHBlZWspOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8TyY6cmVhZGxpbmUiLCAmX1B5SU9fQ29udmVydFNzaXplX3QsICZsaW1pdCkpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcoc2VsZiwgInBlZWsiKSkKKyAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChzZWxmLCAmUHlJZF9wZWVrKSkKICAgICAgICAgaGFzX3BlZWsgPSAxOwogCiAgICAgYnVmZmVyID0gUHlCeXRlQXJyYXlfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgMCk7CkBAIC00ODEsNyArNDg3LDkgQEAKICAgICAgICAgUHlPYmplY3QgKmI7CiAKICAgICAgICAgaWYgKGhhc19wZWVrKSB7Ci0gICAgICAgICAgICBQeU9iamVjdCAqcmVhZGFoZWFkID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLCAicGVlayIsICJpIiwgMSk7CisgICAgICAgICAgICBfUHlfSURFTlRJRklFUihwZWVrKTsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpyZWFkYWhlYWQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYsICZQeUlkX3BlZWssICJpIiwgMSk7CisKICAgICAgICAgICAgIGlmIChyZWFkYWhlYWQgPT0gTlVMTCkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgICAgICBpZiAoIVB5Qnl0ZXNfQ2hlY2socmVhZGFoZWFkKSkgewpAQCAtNTE1LDcgKzUyMyw3IEBACiAgICAgICAgICAgICBQeV9ERUNSRUYocmVhZGFoZWFkKTsKICAgICAgICAgfQogCi0gICAgICAgIGIgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYsICJyZWFkIiwgIm4iLCBucmVhZGFoZWFkKTsKKyAgICAgICAgYiA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZiwgJlB5SWRfcmVhZCwgIm4iLCBucmVhZGFoZWFkKTsKICAgICAgICAgaWYgKGIgPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgaWYgKCFQeUJ5dGVzX0NoZWNrKGIpKSB7CkBAIC02MDEsNyArNjA5LDkgQEAKICAgICAgICAgLyogWFhYIHNwZWNpYWwtY2FzaW5nIHRoaXMgbWFkZSBzZW5zZSBpbiB0aGUgUHl0aG9uIHZlcnNpb24gaW4gb3JkZXIKICAgICAgICAgICAgdG8gcmVtb3ZlIHRoZSBieXRlY29kZSBpbnRlcnByZXRhdGlvbiBvdmVyaGVhZCwgYnV0IGl0IGNvdWxkCiAgICAgICAgICAgIHByb2JhYmx5IGJlIHJlbW92ZWQgaGVyZS4gKi8KLSAgICAgICAgUHlPYmplY3QgKnJldCA9IFB5T2JqZWN0X0NhbGxNZXRob2QocmVzdWx0LCAiZXh0ZW5kIiwgIk8iLCBzZWxmKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZXh0ZW5kKTsKKyAgICAgICAgUHlPYmplY3QgKnJldCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocmVzdWx0LCAmUHlJZF9leHRlbmQsICJPIiwgc2VsZik7CisKICAgICAgICAgaWYgKHJldCA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNzgxLDggKzc5MSwxMSBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBpZiAobiA8IDApCi0gICAgICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYsICJyZWFkYWxsIiwgTlVMTCk7CisgICAgaWYgKG4gPCAwKSB7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHJlYWRhbGwpOworCisgICAgICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYsICZQeUlkX3JlYWRhbGwsIE5VTEwpOworICAgIH0KIAogICAgIC8qIFRPRE86IGFsbG9jYXRlIGEgYnl0ZXMgb2JqZWN0IGRpcmVjdGx5IGluc3RlYWQgYW5kIG1hbnVhbGx5IGNvbnN0cnVjdAogICAgICAgIGEgd3JpdGFibGUgbWVtb3J5dmlldyBwb2ludGluZyB0byBpdC4gKi8KQEAgLTgyMyw4ICs4MzYsOSBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHdoaWxlICgxKSB7Ci0gICAgICAgIFB5T2JqZWN0ICpkYXRhID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLCAicmVhZCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaSIsIERFRkFVTFRfQlVGRkVSX1NJWkUpOworICAgICAgICBfUHlfSURFTlRJRklFUihyZWFkKTsKKyAgICAgICAgUHlPYmplY3QgKmRhdGEgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYsICZQeUlkX3JlYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaSIsIERFRkFVTFRfQlVGRkVSX1NJWkUpOwogICAgICAgICBpZiAoIWRhdGEpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihjaHVua3MpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19pby9zdHJpbmdpby5jIGIvTW9kdWxlcy9faW8vc3RyaW5naW8uYwppbmRleCBjOWQxNGIxLi5jNDc5NGM5IDEwMDY0NAotLS0gYS9Nb2R1bGVzL19pby9zdHJpbmdpby5jCisrKyBiL01vZHVsZXMvX2lvL3N0cmluZ2lvLmMKQEAgLTcsMTMgKzcsMjUgQEAKICAgIHRoYW4gdGhlIGVuY2xvc2VkIHN0cmluZywgZm9yIHByb3BlciBmdW5jdGlvbmluZyBvZiBfUHlJT19maW5kX2xpbmVfZW5kaW5nLgogKi8KIAorI2RlZmluZSBTVEFURV9SRUFMSVpFRCAxCisjZGVmaW5lIFNUQVRFX0FDQ1VNVUxBVElORyAyCisKIHR5cGVkZWYgc3RydWN0IHsKICAgICBQeU9iamVjdF9IRUFECi0gICAgUHlfVU5JQ09ERSAqYnVmOworICAgIFB5X1VDUzQgKmJ1ZjsKICAgICBQeV9zc2l6ZV90IHBvczsKICAgICBQeV9zc2l6ZV90IHN0cmluZ19zaXplOwogICAgIHNpemVfdCBidWZfc2l6ZTsKIAorICAgIC8qIFRoZSBzdHJpbmdpbyBvYmplY3QgY2FuIGJlIGluIHR3byBzdGF0ZXM6IGFjY3VtdWxhdGluZyBvciByZWFsaXplZC4KKyAgICAgICBJbiBhY2N1bXVsYXRpbmcgc3RhdGUsIHRoZSBpbnRlcm5hbCBidWZmZXIgY29udGFpbnMgbm90aGluZyBhbmQKKyAgICAgICB0aGUgY29udGVudHMgYXJlIGdpdmVuIGJ5IHRoZSBlbWJlZGRlZCBfUHlBY2N1IHN0cnVjdHVyZS4KKyAgICAgICBJbiByZWFsaXplZCBzdGF0ZSwgdGhlIGludGVybmFsIGJ1ZmZlciBpcyBtZWFuaW5nZnVsIGFuZCB0aGUKKyAgICAgICBfUHlBY2N1IGlzIGRlc3Ryb3llZC4KKyAgICAqLworICAgIGludCBzdGF0ZTsKKyAgICBfUHlBY2N1IGFjY3U7CisKICAgICBjaGFyIG9rOyAvKiBpbml0aWFsaXplZD8gKi8KICAgICBjaGFyIGNsb3NlZDsKICAgICBjaGFyIHJlYWR1bml2ZXJzYWw7CkBAIC0yMSw3ICszMyw3IEBACiAgICAgUHlPYmplY3QgKmRlY29kZXI7CiAgICAgUHlPYmplY3QgKnJlYWRubDsKICAgICBQeU9iamVjdCAqd3JpdGVubDsKLSAgICAKKwogICAgIFB5T2JqZWN0ICpkaWN0OwogICAgIFB5T2JqZWN0ICp3ZWFrcmVmbGlzdDsKIH0gc3RyaW5naW87CkBAIC00MCw2ICs1MiwxMSBAQAogICAgICAgICByZXR1cm4gTlVMTDsgXAogICAgIH0KIAorI2RlZmluZSBFTlNVUkVfUkVBTElaRUQoc2VsZikgXAorICAgIGlmIChyZWFsaXplKHNlbGYpIDwgMCkgeyBcCisgICAgICAgIHJldHVybiBOVUxMOyBcCisgICAgfQorCiBQeURvY19TVFJWQVIoc3RyaW5naW9fZG9jLAogICAgICJUZXh0IEkvTyBpbXBsZW1lbnRhdGlvbiB1c2luZyBhbiBpbi1tZW1vcnkgYnVmZmVyLlxuIgogICAgICJcbiIKQEAgLTU2LDcgKzczLDcgQEAKICAgICAvKiBIZXJlLCB1bnNpZ25lZCB0eXBlcyBhcmUgdXNlZCB0byBhdm9pZCBkZWFsaW5nIHdpdGggc2lnbmVkIGludGVnZXIKICAgICAgICBvdmVyZmxvdywgd2hpY2ggaXMgdW5kZWZpbmVkIGluIEMuICovCiAgICAgc2l6ZV90IGFsbG9jID0gc2VsZi0+YnVmX3NpemU7Ci0gICAgUHlfVU5JQ09ERSAqbmV3X2J1ZiA9IE5VTEw7CisgICAgUHlfVUNTNCAqbmV3X2J1ZiA9IE5VTEw7CiAKICAgICBhc3NlcnQoc2VsZi0+YnVmICE9IE5VTEwpOwogCkBAIC04NCwxMCArMTAxLDkgQEAKICAgICAgICAgYWxsb2MgPSBzaXplICsgMTsKICAgICB9CiAKLSAgICBpZiAoYWxsb2MgPiAoKHNpemVfdCktMSkgLyBzaXplb2YoUHlfVU5JQ09ERSkpCisgICAgaWYgKGFsbG9jID4gUFlfU0laRV9NQVggLyBzaXplb2YoUHlfVUNTNCkpCiAgICAgICAgIGdvdG8gb3ZlcmZsb3c7Ci0gICAgbmV3X2J1ZiA9IChQeV9VTklDT0RFICopUHlNZW1fUmVhbGxvYyhzZWxmLT5idWYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvYyAqIHNpemVvZihQeV9VTklDT0RFKSk7CisgICAgbmV3X2J1ZiA9IChQeV9VQ1M0ICopUHlNZW1fUmVhbGxvYyhzZWxmLT5idWYsIGFsbG9jICogc2l6ZW9mKFB5X1VDUzQpKTsKICAgICBpZiAobmV3X2J1ZiA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgIHJldHVybiAtMTsKQEAgLTEwMywxNCArMTE5LDYyIEBACiAgICAgcmV0dXJuIC0xOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorbWFrZV9pbnRlcm1lZGlhdGUoc3RyaW5naW8gKnNlbGYpCit7CisgICAgUHlPYmplY3QgKmludGVybWVkaWF0ZSA9IF9QeUFjY3VfRmluaXNoKCZzZWxmLT5hY2N1KTsKKyAgICBzZWxmLT5zdGF0ZSA9IFNUQVRFX1JFQUxJWkVEOworICAgIGlmIChpbnRlcm1lZGlhdGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKF9QeUFjY3VfSW5pdCgmc2VsZi0+YWNjdSkgfHwKKyAgICAgICAgX1B5QWNjdV9BY2N1bXVsYXRlKCZzZWxmLT5hY2N1LCBpbnRlcm1lZGlhdGUpKSB7CisgICAgICAgIFB5X0RFQ1JFRihpbnRlcm1lZGlhdGUpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgc2VsZi0+c3RhdGUgPSBTVEFURV9BQ0NVTVVMQVRJTkc7CisgICAgcmV0dXJuIGludGVybWVkaWF0ZTsKK30KKworc3RhdGljIGludAorcmVhbGl6ZShzdHJpbmdpbyAqc2VsZikKK3sKKyAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICBQeU9iamVjdCAqaW50ZXJtZWRpYXRlOworCisgICAgaWYgKHNlbGYtPnN0YXRlID09IFNUQVRFX1JFQUxJWkVEKQorICAgICAgICByZXR1cm4gMDsKKyAgICBhc3NlcnQoc2VsZi0+c3RhdGUgPT0gU1RBVEVfQUNDVU1VTEFUSU5HKTsKKyAgICBzZWxmLT5zdGF0ZSA9IFNUQVRFX1JFQUxJWkVEOworCisgICAgaW50ZXJtZWRpYXRlID0gX1B5QWNjdV9GaW5pc2goJnNlbGYtPmFjY3UpOworICAgIGlmIChpbnRlcm1lZGlhdGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgLyogQXBwZW5kIHRoZSBpbnRlcm1lZGlhdGUgc3RyaW5nIHRvIHRoZSBpbnRlcm5hbCBidWZmZXIuCisgICAgICAgVGhlIGxlbmd0aCBzaG91bGQgYmUgZXF1YWwgdG8gdGhlIGN1cnJlbnQgY3Vyc29yIHBvc2l0aW9uLgorICAgICAqLworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGludGVybWVkaWF0ZSk7CisgICAgaWYgKHJlc2l6ZV9idWZmZXIoc2VsZiwgbGVuKSA8IDApIHsKKyAgICAgICAgUHlfREVDUkVGKGludGVybWVkaWF0ZSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgaWYgKCFQeVVuaWNvZGVfQXNVQ1M0KGludGVybWVkaWF0ZSwgc2VsZi0+YnVmLCBsZW4sIDApKSB7CisgICAgICAgIFB5X0RFQ1JFRihpbnRlcm1lZGlhdGUpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgUHlfREVDUkVGKGludGVybWVkaWF0ZSk7CisgICAgcmV0dXJuIDA7Cit9CisKIC8qIEludGVybmFsIHJvdXRpbmUgZm9yIHdyaXRpbmcgYSB3aG9sZSBQeVVuaWNvZGUgb2JqZWN0IHRvIHRoZSBidWZmZXIgb2YgYQogICAgU3RyaW5nSU8gb2JqZWN0LiBSZXR1cm5zIDAgb24gc3VjY2Vzcywgb3IgLTEgb24gZXJyb3IuICovCiBzdGF0aWMgUHlfc3NpemVfdAogd3JpdGVfc3RyKHN0cmluZ2lvICpzZWxmLCBQeU9iamVjdCAqb2JqKQogewotICAgIFB5X1VOSUNPREUgKnN0cjsKICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICBQeU9iamVjdCAqZGVjb2RlZCA9IE5VTEw7CisKICAgICBhc3NlcnQoc2VsZi0+YnVmICE9IE5VTEwpOwogICAgIGFzc2VydChzZWxmLT5wb3MgPj0gMCk7CiAKQEAgLTEzMiw5ICsxOTYsMTEgQEAKICAgICAgICAgcmV0dXJuIC0xOwogCiAgICAgYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhkZWNvZGVkKSk7Ci0gICAgc3RyID0gUHlVbmljb2RlX0FTX1VOSUNPREUoZGVjb2RlZCk7Ci0gICAgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKGRlY29kZWQpOwotCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShkZWNvZGVkKSkgeworICAgICAgICBQeV9ERUNSRUYoZGVjb2RlZCk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoZGVjb2RlZCk7CiAgICAgYXNzZXJ0KGxlbiA+PSAwKTsKIAogICAgIC8qIFRoaXMgb3ZlcmZsb3cgY2hlY2sgaXMgbm90IHN0cmljdGx5IG5lY2Vzc2FyeS4gSG93ZXZlciwgaXQgYXZvaWRzIHVzIHRvCkBAIC0xNDUsNiArMjExLDE3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAibmV3IHBvc2l0aW9uIHRvbyBsYXJnZSIpOwogICAgICAgICBnb3RvIGZhaWw7CiAgICAgfQorCisgICAgaWYgKHNlbGYtPnN0YXRlID09IFNUQVRFX0FDQ1VNVUxBVElORykgeworICAgICAgICBpZiAoc2VsZi0+c3RyaW5nX3NpemUgPT0gc2VsZi0+cG9zKSB7CisgICAgICAgICAgICBpZiAoX1B5QWNjdV9BY2N1bXVsYXRlKCZzZWxmLT5hY2N1LCBkZWNvZGVkKSkKKyAgICAgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgICAgICBnb3RvIHN1Y2Nlc3M7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHJlYWxpemUoc2VsZikpCisgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgfQorCiAgICAgaWYgKHNlbGYtPnBvcyArIGxlbiA+IHNlbGYtPnN0cmluZ19zaXplKSB7CiAgICAgICAgIGlmIChyZXNpemVfYnVmZmVyKHNlbGYsIHNlbGYtPnBvcyArIGxlbikgPCAwKQogICAgICAgICAgICAgZ290byBmYWlsOwpAQCAtMTYxLDE4ICsyMzgsMjIgQEAKIAogICAgICAgICAqLwogICAgICAgICBtZW1zZXQoc2VsZi0+YnVmICsgc2VsZi0+c3RyaW5nX3NpemUsICdcMCcsCi0gICAgICAgICAgICAgICAoc2VsZi0+cG9zIC0gc2VsZi0+c3RyaW5nX3NpemUpICogc2l6ZW9mKFB5X1VOSUNPREUpKTsKKyAgICAgICAgICAgICAgIChzZWxmLT5wb3MgLSBzZWxmLT5zdHJpbmdfc2l6ZSkgKiBzaXplb2YoUHlfVUNTNCkpOwogICAgIH0KIAogICAgIC8qIENvcHkgdGhlIGRhdGEgdG8gdGhlIGludGVybmFsIGJ1ZmZlciwgb3ZlcndyaXRpbmcgc29tZSBvZiB0aGUKICAgICAgICBleGlzdGluZyBkYXRhIGlmIHNlbGYtPnBvcyA8IHNlbGYtPnN0cmluZ19zaXplLiAqLwotICAgIG1lbWNweShzZWxmLT5idWYgKyBzZWxmLT5wb3MsIHN0ciwgbGVuICogc2l6ZW9mKFB5X1VOSUNPREUpKTsKLSAgICBzZWxmLT5wb3MgKz0gbGVuOworICAgIGlmICghUHlVbmljb2RlX0FzVUNTNChkZWNvZGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5idWYgKyBzZWxmLT5wb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPmJ1Zl9zaXplIC0gc2VsZi0+cG9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAwKSkKKyAgICAgICAgZ290byBmYWlsOwogCitzdWNjZXNzOgogICAgIC8qIFNldCB0aGUgbmV3IGxlbmd0aCBvZiB0aGUgaW50ZXJuYWwgc3RyaW5nIGlmIGl0IGhhcyBjaGFuZ2VkLiAqLwotICAgIGlmIChzZWxmLT5zdHJpbmdfc2l6ZSA8IHNlbGYtPnBvcykgeworICAgIHNlbGYtPnBvcyArPSBsZW47CisgICAgaWYgKHNlbGYtPnN0cmluZ19zaXplIDwgc2VsZi0+cG9zKQogICAgICAgICBzZWxmLT5zdHJpbmdfc2l6ZSA9IHNlbGYtPnBvczsKLSAgICB9CiAKICAgICBQeV9ERUNSRUYoZGVjb2RlZCk7CiAgICAgcmV0dXJuIDA7CkBAIC0xOTAsNyArMjcxLDEwIEBACiB7CiAgICAgQ0hFQ0tfSU5JVElBTElaRUQoc2VsZik7CiAgICAgQ0hFQ0tfQ0xPU0VEKHNlbGYpOwotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoc2VsZi0+YnVmLCBzZWxmLT5zdHJpbmdfc2l6ZSk7CisgICAgaWYgKHNlbGYtPnN0YXRlID09IFNUQVRFX0FDQ1VNVUxBVElORykKKyAgICAgICAgcmV0dXJuIG1ha2VfaW50ZXJtZWRpYXRlKHNlbGYpOworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKFB5VW5pY29kZV80QllURV9LSU5ELCBzZWxmLT5idWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+c3RyaW5nX3NpemUpOwogfQogCiBQeURvY19TVFJWQVIoc3RyaW5naW9fdGVsbF9kb2MsCkBAIC0yMTQsNyArMjk4LDcgQEAKIHN0cmluZ2lvX3JlYWQoc3RyaW5naW8gKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5X3NzaXplX3Qgc2l6ZSwgbjsKLSAgICBQeV9VTklDT0RFICpvdXRwdXQ7CisgICAgUHlfVUNTNCAqb3V0cHV0OwogICAgIFB5T2JqZWN0ICphcmcgPSBQeV9Ob25lOwogCiAgICAgQ0hFQ0tfSU5JVElBTElaRUQoc2VsZik7CkBAIC0yNDUsMjEgKzMyOSwyOSBAQAogICAgICAgICAgICAgc2l6ZSA9IDA7CiAgICAgfQogCisgICAgLyogT3B0aW1pemF0aW9uIGZvciBzZWVrKDApOyByZWFkKCkgKi8KKyAgICBpZiAoc2VsZi0+c3RhdGUgPT0gU1RBVEVfQUNDVU1VTEFUSU5HICYmIHNlbGYtPnBvcyA9PSAwICYmIHNpemUgPT0gbikgeworICAgICAgICBQeU9iamVjdCAqcmVzdWx0ID0gbWFrZV9pbnRlcm1lZGlhdGUoc2VsZik7CisgICAgICAgIHNlbGYtPnBvcyA9IHNlbGYtPnN0cmluZ19zaXplOworICAgICAgICByZXR1cm4gcmVzdWx0OworICAgIH0KKworICAgIEVOU1VSRV9SRUFMSVpFRChzZWxmKTsKICAgICBvdXRwdXQgPSBzZWxmLT5idWYgKyBzZWxmLT5wb3M7CiAgICAgc2VsZi0+cG9zICs9IHNpemU7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShvdXRwdXQsIHNpemUpOworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKFB5VW5pY29kZV80QllURV9LSU5ELCBvdXRwdXQsIHNpemUpOwogfQogCiAvKiBJbnRlcm5hbCBoZWxwZXIsIHVzZWQgYnkgc3RyaW5naW9fcmVhZGxpbmUgYW5kIHN0cmluZ2lvX2l0ZXJuZXh0ICovCiBzdGF0aWMgUHlPYmplY3QgKgogX3N0cmluZ2lvX3JlYWRsaW5lKHN0cmluZ2lvICpzZWxmLCBQeV9zc2l6ZV90IGxpbWl0KQogewotICAgIFB5X1VOSUNPREUgKnN0YXJ0LCAqZW5kLCBvbGRfY2hhcjsKKyAgICBQeV9VQ1M0ICpzdGFydCwgKmVuZCwgb2xkX2NoYXI7CiAgICAgUHlfc3NpemVfdCBsZW4sIGNvbnN1bWVkOwogCiAgICAgLyogSW4gY2FzZSBvZiBvdmVyc2VlaywgcmV0dXJuIHRoZSBlbXB0eSBzdHJpbmcgKi8KICAgICBpZiAoc2VsZi0+cG9zID49IHNlbGYtPnN0cmluZ19zaXplKQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoIiIpOworICAgICAgICByZXR1cm4gUHlVbmljb2RlX05ldygwLCAwKTsKIAogICAgIHN0YXJ0ID0gc2VsZi0+YnVmICsgc2VsZi0+cG9zOwogICAgIGlmIChsaW1pdCA8IDAgfHwgbGltaXQgPiBzZWxmLT5zdHJpbmdfc2l6ZSAtIHNlbGYtPnBvcykKQEAgLTI3MCwxNCArMzYyLDE0IEBACiAgICAgKmVuZCA9ICdcMCc7CiAgICAgbGVuID0gX1B5SU9fZmluZF9saW5lX2VuZGluZygKICAgICAgICAgc2VsZi0+cmVhZHRyYW5zbGF0ZSwgc2VsZi0+cmVhZHVuaXZlcnNhbCwgc2VsZi0+cmVhZG5sLAotICAgICAgICBzdGFydCwgZW5kLCAmY29uc3VtZWQpOworICAgICAgICBQeVVuaWNvZGVfNEJZVEVfS0lORCwgKGNoYXIqKXN0YXJ0LCAoY2hhciopZW5kLCAmY29uc3VtZWQpOwogICAgICplbmQgPSBvbGRfY2hhcjsKICAgICAvKiBJZiB3ZSBoYXZlbid0IGZvdW5kIGFueSBsaW5lIGVuZGluZywgd2UganVzdCByZXR1cm4gZXZlcnl0aGluZwogICAgICAgIChgY29uc3VtZWRgIGlzIGlnbm9yZWQpLiAqLwogICAgIGlmIChsZW4gPCAwKQogICAgICAgICBsZW4gPSBsaW1pdDsKICAgICBzZWxmLT5wb3MgKz0gbGVuOwotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoc3RhcnQsIGxlbik7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoUHlVbmljb2RlXzRCWVRFX0tJTkQsIHN0YXJ0LCBsZW4pOwogfQogCiBQeURvY19TVFJWQVIoc3RyaW5naW9fcmVhZGxpbmVfZG9jLApAQCAtMjk1LDYgKzM4Nyw3IEBACiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8TzpyZWFkbGluZSIsICZhcmcpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBDSEVDS19DTE9TRUQoc2VsZik7CisgICAgRU5TVVJFX1JFQUxJWkVEKHNlbGYpOwogCiAgICAgaWYgKFB5TnVtYmVyX0NoZWNrKGFyZykpIHsKICAgICAgICAgbGltaXQgPSBQeU51bWJlcl9Bc1NzaXplX3QoYXJnLCBQeUV4Y19PdmVyZmxvd0Vycm9yKTsKQEAgLTMxNiw2ICs0MDksNyBAQAogCiAgICAgQ0hFQ0tfSU5JVElBTElaRUQoc2VsZik7CiAgICAgQ0hFQ0tfQ0xPU0VEKHNlbGYpOworICAgIEVOU1VSRV9SRUFMSVpFRChzZWxmKTsKIAogICAgIGlmIChQeV9UWVBFKHNlbGYpID09ICZQeVN0cmluZ0lPX1R5cGUpIHsKICAgICAgICAgLyogU2tpcCBtZXRob2QgY2FsbCBvdmVyaGVhZCBmb3Igc3BlZWQgKi8KQEAgLTMzNyw3ICs0MzEsNyBAQAogICAgIGlmIChsaW5lID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShsaW5lKSA9PSAwKSB7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGxpbmUpID09IDApIHsKICAgICAgICAgLyogUmVhY2hlZCBFT0YgKi8KICAgICAgICAgUHlfREVDUkVGKGxpbmUpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTM4Niw2ICs0ODAsNyBAQAogICAgIH0KIAogICAgIGlmIChzaXplIDwgc2VsZi0+c3RyaW5nX3NpemUpIHsKKyAgICAgICAgRU5TVVJFX1JFQUxJWkVEKHNlbGYpOwogICAgICAgICBpZiAocmVzaXplX2J1ZmZlcihzZWxmLCBzaXplKSA8IDApCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgc2VsZi0+c3RyaW5nX3NpemUgPSBzaXplOwpAQCAtNDYyLDggKzU1NywxMCBAQAogICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShvYmopLT50cF9uYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgQ0hFQ0tfQ0xPU0VEKHNlbGYpOwotICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUob2JqKTsKKyAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKTsKIAogICAgIGlmIChzaXplID4gMCAmJiB3cml0ZV9zdHIoc2VsZiwgb2JqKSA8IDApCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNDg0LDYgKzU4MSw3IEBACiAgICAgLyogRnJlZSB1cCBzb21lIG1lbW9yeSAqLwogICAgIGlmIChyZXNpemVfYnVmZmVyKHNlbGYsIDApIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgX1B5QWNjdV9EZXN0cm95KCZzZWxmLT5hY2N1KTsKICAgICBQeV9DTEVBUihzZWxmLT5yZWFkbmwpOwogICAgIFB5X0NMRUFSKHNlbGYtPndyaXRlbmwpOwogICAgIFB5X0NMRUFSKHNlbGYtPmRlY29kZXIpOwpAQCAtNTEzLDYgKzYxMSw3IEBACiAgICAgICAgIFB5TWVtX0ZyZWUoc2VsZi0+YnVmKTsKICAgICAgICAgc2VsZi0+YnVmID0gTlVMTDsKICAgICB9CisgICAgX1B5QWNjdV9EZXN0cm95KCZzZWxmLT5hY2N1KTsKICAgICBQeV9DTEVBUihzZWxmLT5yZWFkbmwpOwogICAgIFB5X0NMRUFSKHNlbGYtPndyaXRlbmwpOwogICAgIFB5X0NMRUFSKHNlbGYtPmRlY29kZXIpOwpAQCAtNTM1LDcgKzYzNCw3IEBACiAgICAgLyogdHBfYWxsb2MgaW5pdGlhbGl6ZXMgYWxsIHRoZSBmaWVsZHMgdG8gemVyby4gU28gd2UgZG9uJ3QgaGF2ZSB0bwogICAgICAgIGluaXRpYWxpemUgdGhlbSBoZXJlLiAqLwogCi0gICAgc2VsZi0+YnVmID0gKFB5X1VOSUNPREUgKilQeU1lbV9NYWxsb2MoMCk7CisgICAgc2VsZi0+YnVmID0gKFB5X1VDUzQgKilQeU1lbV9NYWxsb2MoMCk7CiAgICAgaWYgKHNlbGYtPmJ1ZiA9PSBOVUxMKSB7CiAgICAgICAgIFB5X0RFQ1JFRihzZWxmKTsKICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CkBAIC01NTEsNiArNjUwLDcgQEAKICAgICBQeU9iamVjdCAqdmFsdWUgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpuZXdsaW5lX29iaiA9IE5VTEw7CiAgICAgY2hhciAqbmV3bGluZSA9ICJcbiI7CisgICAgUHlfc3NpemVfdCB2YWx1ZV9sZW47CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAifE9POl9faW5pdF9fIiwga3dsaXN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2YWx1ZSwgJm5ld2xpbmVfb2JqKSkKQEAgLTU5Miw2ICs2OTIsNyBAQAogCiAgICAgc2VsZi0+b2sgPSAwOwogCisgICAgX1B5QWNjdV9EZXN0cm95KCZzZWxmLT5hY2N1KTsKICAgICBQeV9DTEVBUihzZWxmLT5yZWFkbmwpOwogICAgIFB5X0NMRUFSKHNlbGYtPndyaXRlbmwpOwogICAgIFB5X0NMRUFSKHNlbGYtPmRlY29kZXIpOwpAQCAtNjI4LDE5ICs3MjksMjcgQEAKICAgICAvKiBOb3cgZXZlcnl0aGluZyBpcyBzZXQgdXAsIHJlc2l6ZSBidWZmZXIgdG8gc2l6ZSBvZiBpbml0aWFsIHZhbHVlLAogICAgICAgIGFuZCBjb3B5IGl0ICovCiAgICAgc2VsZi0+c3RyaW5nX3NpemUgPSAwOwotICAgIGlmICh2YWx1ZSAmJiB2YWx1ZSAhPSBQeV9Ob25lKSB7Ci0gICAgICAgIFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dldFNpemUodmFsdWUpOworICAgIGlmICh2YWx1ZSAmJiB2YWx1ZSAhPSBQeV9Ob25lKQorICAgICAgICB2YWx1ZV9sZW4gPSBQeVVuaWNvZGVfR2V0TGVuZ3RoKHZhbHVlKTsKKyAgICBlbHNlCisgICAgICAgIHZhbHVlX2xlbiA9IDA7CisgICAgaWYgKHZhbHVlX2xlbiA+IDApIHsKICAgICAgICAgLyogVGhpcyBpcyBhIGhldXJpc3RpYywgZm9yIG5ld2xpbmUgdHJhbnNsYXRpb24gbWlnaHQgY2hhbmdlCiAgICAgICAgICAgIHRoZSBzdHJpbmcgbGVuZ3RoLiAqLwotICAgICAgICBpZiAocmVzaXplX2J1ZmZlcihzZWxmLCBsZW4pIDwgMCkKKyAgICAgICAgaWYgKHJlc2l6ZV9idWZmZXIoc2VsZiwgMCkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBzZWxmLT5zdGF0ZSA9IFNUQVRFX1JFQUxJWkVEOwogICAgICAgICBzZWxmLT5wb3MgPSAwOwogICAgICAgICBpZiAod3JpdGVfc3RyKHNlbGYsIHZhbHVlKSA8IDApCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIGVsc2UgeworICAgICAgICAvKiBFbXB0eSBzdHJpbmdpbyBvYmplY3QsIHdlIGNhbiBzdGFydCBieSBhY2N1bXVsYXRpbmcgKi8KICAgICAgICAgaWYgKHJlc2l6ZV9idWZmZXIoc2VsZiwgMCkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBpZiAoX1B5QWNjdV9Jbml0KCZzZWxmLT5hY2N1KSkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgc2VsZi0+c3RhdGUgPSBTVEFURV9BQ0NVTVVMQVRJTkc7CiAgICAgfQogICAgIHNlbGYtPnBvcyA9IDA7CiAKQEAgLTc0NywxMSArODU2LDIyIEBACiAgICAgICAgb25jZSBieSBfX2luaXRfXy4gU28gd2UgZG8gbm90IHRha2UgYW55IGNoYW5jZSBhbmQgcmVwbGFjZSBvYmplY3QncwogICAgICAgIGJ1ZmZlciBjb21wbGV0ZWx5LiAqLwogICAgIHsKLSAgICAgICAgUHlfVU5JQ09ERSAqYnVmID0gUHlVbmljb2RlX0FTX1VOSUNPREUoUHlUdXBsZV9HRVRfSVRFTShzdGF0ZSwgMCkpOwotICAgICAgICBQeV9zc2l6ZV90IGJ1ZnNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUoUHlUdXBsZV9HRVRfSVRFTShzdGF0ZSwgMCkpOwotICAgICAgICBpZiAocmVzaXplX2J1ZmZlcihzZWxmLCBidWZzaXplKSA8IDApCisgICAgICAgIFB5T2JqZWN0ICppdGVtOworICAgICAgICBQeV9VQ1M0ICpidWY7CisgICAgICAgIFB5X3NzaXplX3QgYnVmc2l6ZTsKKworICAgICAgICBpdGVtID0gUHlUdXBsZV9HRVRfSVRFTShzdGF0ZSwgMCk7CisgICAgICAgIGJ1ZiA9IFB5VW5pY29kZV9Bc1VDUzRDb3B5KGl0ZW0pOworICAgICAgICBpZiAoYnVmID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgbWVtY3B5KHNlbGYtPmJ1ZiwgYnVmLCBidWZzaXplICogc2l6ZW9mKFB5X1VOSUNPREUpKTsKKyAgICAgICAgYnVmc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGl0ZW0pOworCisgICAgICAgIGlmIChyZXNpemVfYnVmZmVyKHNlbGYsIGJ1ZnNpemUpIDwgMCkgeworICAgICAgICAgICAgUHlNZW1fRnJlZShidWYpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgbWVtY3B5KHNlbGYtPmJ1ZiwgYnVmLCBidWZzaXplICogc2l6ZW9mKFB5X1VDUzQpKTsKKyAgICAgICAgUHlNZW1fRnJlZShidWYpOwogICAgICAgICBzZWxmLT5zdHJpbmdfc2l6ZSA9IGJ1ZnNpemU7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19pby90ZXh0aW8uYyBiL01vZHVsZXMvX2lvL3RleHRpby5jCmluZGV4IDljNWY0NDEuLjg5MGEzNTYgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2lvL3RleHRpby5jCisrKyBiL01vZHVsZXMvX2lvL3RleHRpby5jCkBAIC0xMSw2ICsxMSwyOCBAQAogI2luY2x1ZGUgInN0cnVjdG1lbWJlci5oIgogI2luY2x1ZGUgIl9pb21vZHVsZS5oIgogCitfUHlfSURFTlRJRklFUihjbG9zZSk7CitfUHlfSURFTlRJRklFUihfZGVhbGxvY193YXJuKTsKK19QeV9JREVOVElGSUVSKGRlY29kZSk7CitfUHlfSURFTlRJRklFUihkZXZpY2VfZW5jb2RpbmcpOworX1B5X0lERU5USUZJRVIoZmlsZW5vKTsKK19QeV9JREVOVElGSUVSKGZsdXNoKTsKK19QeV9JREVOVElGSUVSKGdldHByZWZlcnJlZGVuY29kaW5nKTsKK19QeV9JREVOVElGSUVSKGlzYXR0eSk7CitfUHlfSURFTlRJRklFUihtb2RlKTsKK19QeV9JREVOVElGSUVSKG5hbWUpOworX1B5X0lERU5USUZJRVIocmF3KTsKK19QeV9JREVOVElGSUVSKHJlYWQpOworX1B5X0lERU5USUZJRVIocmVhZDEpOworX1B5X0lERU5USUZJRVIocmVhZGFibGUpOworX1B5X0lERU5USUZJRVIocmVwbGFjZSk7CitfUHlfSURFTlRJRklFUihyZXNldCk7CitfUHlfSURFTlRJRklFUihzZWVrKTsKK19QeV9JREVOVElGSUVSKHNlZWthYmxlKTsKK19QeV9JREVOVElGSUVSKHNldHN0YXRlKTsKK19QeV9JREVOVElGSUVSKHRlbGwpOworX1B5X0lERU5USUZJRVIod3JpdGFibGUpOworCiAvKiBUZXh0SU9CYXNlICovCiAKIFB5RG9jX1NUUlZBUih0ZXh0aW9iYXNlX2RvYywKQEAgLTI3NCwxOCArMjk2LDI2IEBACiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQogCi0gICAgb3V0cHV0X2xlbiA9IFB5VW5pY29kZV9HRVRfU0laRShvdXRwdXQpOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob3V0cHV0KSA9PSAtMSkKKyAgICAgICAgZ290byBlcnJvcjsKKworICAgIG91dHB1dF9sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvdXRwdXQpOwogICAgIGlmIChzZWxmLT5wZW5kaW5nY3IgJiYgKGZpbmFsIHx8IG91dHB1dF9sZW4gPiAwKSkgewotICAgICAgICBQeV9VTklDT0RFICpvdXQ7Ci0gICAgICAgIFB5T2JqZWN0ICptb2RpZmllZCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBvdXRwdXRfbGVuICsgMSk7CisgICAgICAgIC8qIFByZWZpeCBvdXRwdXQgd2l0aCBDUiAqLworICAgICAgICBpbnQga2luZDsKKyAgICAgICAgUHlPYmplY3QgKm1vZGlmaWVkOworICAgICAgICBjaGFyICpvdXQ7CisKKyAgICAgICAgbW9kaWZpZWQgPSBQeVVuaWNvZGVfTmV3KG91dHB1dF9sZW4gKyAxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKG91dHB1dCkpOwogICAgICAgICBpZiAobW9kaWZpZWQgPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgIG91dCA9IFB5VW5pY29kZV9BU19VTklDT0RFKG1vZGlmaWVkKTsKLSAgICAgICAgb3V0WzBdID0gJ1xyJzsKLSAgICAgICAgbWVtY3B5KG91dCArIDEsIFB5VW5pY29kZV9BU19VTklDT0RFKG91dHB1dCksCi0gICAgICAgICAgICAgICBvdXRwdXRfbGVuICogc2l6ZW9mKFB5X1VOSUNPREUpKTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKG1vZGlmaWVkKTsKKyAgICAgICAgb3V0ID0gUHlVbmljb2RlX0RBVEEobW9kaWZpZWQpOworICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgUHlVbmljb2RlX0RBVEEobW9kaWZpZWQpLCAwLCAnXHInKTsKKyAgICAgICAgbWVtY3B5KG91dCArIGtpbmQsIFB5VW5pY29kZV9EQVRBKG91dHB1dCksIGtpbmQgKiBvdXRwdXRfbGVuKTsKICAgICAgICAgUHlfREVDUkVGKG91dHB1dCk7Ci0gICAgICAgIG91dHB1dCA9IG1vZGlmaWVkOworICAgICAgICBvdXRwdXQgPSBtb2RpZmllZDsgLyogb3V0cHV0IHJlbWFpbnMgcmVhZHkgKi8KICAgICAgICAgc2VsZi0+cGVuZGluZ2NyID0gMDsKICAgICAgICAgb3V0cHV0X2xlbisrOwogICAgIH0KQEAgLTI5NSwyMSArMzI1LDEzIEBACiAgICAgICovCiAgICAgaWYgKCFmaW5hbCkgewogICAgICAgICBpZiAob3V0cHV0X2xlbiA+IDAKLSAgICAgICAgICAgICYmIFB5VW5pY29kZV9BU19VTklDT0RFKG91dHB1dClbb3V0cHV0X2xlbiAtIDFdID09ICdccicpIHsKLQotICAgICAgICAgICAgaWYgKFB5X1JFRkNOVChvdXRwdXQpID09IDEpIHsKLSAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1Jlc2l6ZSgmb3V0cHV0LCBvdXRwdXRfbGVuIC0gMSkgPCAwKQotICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgUHlPYmplY3QgKm1vZGlmaWVkID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKAotICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShvdXRwdXQpLAotICAgICAgICAgICAgICAgICAgICBvdXRwdXRfbGVuIC0gMSk7Ci0gICAgICAgICAgICAgICAgaWYgKG1vZGlmaWVkID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKG91dHB1dCk7Ci0gICAgICAgICAgICAgICAgb3V0cHV0ID0gbW9kaWZpZWQ7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICAmJiBQeVVuaWNvZGVfUkVBRF9DSEFSKG91dHB1dCwgb3V0cHV0X2xlbiAtIDEpID09ICdccicpCisgICAgICAgIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICptb2RpZmllZCA9IFB5VW5pY29kZV9TdWJzdHJpbmcob3V0cHV0LCAwLCBvdXRwdXRfbGVuIC0xKTsKKyAgICAgICAgICAgIGlmIChtb2RpZmllZCA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICBQeV9ERUNSRUYob3V0cHV0KTsKKyAgICAgICAgICAgIG91dHB1dCA9IG1vZGlmaWVkOwogICAgICAgICAgICAgc2VsZi0+cGVuZGluZ2NyID0gMTsKICAgICAgICAgfQogICAgIH0KQEAgLTMxNywxMyArMzM5LDE1IEBACiAgICAgLyogUmVjb3JkIHdoaWNoIG5ld2xpbmVzIGFyZSByZWFkIGFuZCBkbyBuZXdsaW5lIHRyYW5zbGF0aW9uIGlmIGRlc2lyZWQsCiAgICAgICAgYWxsIGluIG9uZSBwYXNzLiAqLwogICAgIHsKLSAgICAgICAgUHlfVU5JQ09ERSAqaW5fc3RyOworICAgICAgICB2b2lkICppbl9zdHI7CiAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICBpbnQgc2Vlbm5sID0gc2VsZi0+c2Vlbm5sOwogICAgICAgICBpbnQgb25seV9sZiA9IDA7CisgICAgICAgIGludCBraW5kOwogCi0gICAgICAgIGluX3N0ciA9IFB5VW5pY29kZV9BU19VTklDT0RFKG91dHB1dCk7Ci0gICAgICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShvdXRwdXQpOworICAgICAgICBpbl9zdHIgPSBQeVVuaWNvZGVfREFUQShvdXRwdXQpOworICAgICAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvdXRwdXQpOworICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQob3V0cHV0KTsKIAogICAgICAgICBpZiAobGVuID09IDApCiAgICAgICAgICAgICByZXR1cm4gb3V0cHV0OwpAQCAtMzMyLDcgKzM1Niw3IEBACiAgICAgICAgICAgIGZvciB0aGUgXHIgKmJ5dGUqIHdpdGggdGhlIGxpYmMncyBvcHRpbWl6ZWQgbWVtY2hyLgogICAgICAgICAgICAqLwogICAgICAgICBpZiAoc2Vlbm5sID09IFNFRU5fTEYgfHwgc2Vlbm5sID09IDApIHsKLSAgICAgICAgICAgIG9ubHlfbGYgPSAobWVtY2hyKGluX3N0ciwgJ1xyJywgbGVuICogc2l6ZW9mKFB5X1VOSUNPREUpKSA9PSBOVUxMKTsKKyAgICAgICAgICAgIG9ubHlfbGYgPSAobWVtY2hyKGluX3N0ciwgJ1xyJywga2luZCAqIGxlbikgPT0gTlVMTCk7CiAgICAgICAgIH0KIAogICAgICAgICBpZiAob25seV9sZikgewpAQCAtMzQwLDUxICszNjQsNTEgQEAKICAgICAgICAgICAgICAgICh0aGVyZSdzIG5vdGhpbmcgZWxzZSB0byBiZSBkb25lLCBldmVuIHdoZW4gaW4gdHJhbnNsYXRpb24gbW9kZSkKICAgICAgICAgICAgICovCiAgICAgICAgICAgICBpZiAoc2Vlbm5sID09IDAgJiYKLSAgICAgICAgICAgICAgICBtZW1jaHIoaW5fc3RyLCAnXG4nLCBsZW4gKiBzaXplb2YoUHlfVU5JQ09ERSkpICE9IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBQeV9VTklDT0RFICpzLCAqZW5kOwotICAgICAgICAgICAgICAgIHMgPSBpbl9zdHI7Ci0gICAgICAgICAgICAgICAgZW5kID0gaW5fc3RyICsgbGVuOwotICAgICAgICAgICAgICAgIGZvciAoOzspIHsKLSAgICAgICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjOwotICAgICAgICAgICAgICAgICAgICAvKiBGYXN0IGxvb3AgZm9yIG5vbi1jb250cm9sIGNoYXJhY3RlcnMgKi8KLSAgICAgICAgICAgICAgICAgICAgd2hpbGUgKCpzID4gJ1xuJykKLSAgICAgICAgICAgICAgICAgICAgICAgIHMrKzsKLSAgICAgICAgICAgICAgICAgICAgYyA9ICpzKys7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChjID09ICdcbicpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHNlZW5ubCB8PSBTRUVOX0xGOwotICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgbWVtY2hyKGluX3N0ciwgJ1xuJywga2luZCAqIGxlbikgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgIGlmIChraW5kID09IFB5VW5pY29kZV8xQllURV9LSU5EKQorICAgICAgICAgICAgICAgICAgICBzZWVubmwgfD0gU0VFTl9MRjsKKyAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpID0gMDsKKyAgICAgICAgICAgICAgICAgICAgZm9yICg7OykgeworICAgICAgICAgICAgICAgICAgICAgICAgUHlfVUNTNCBjOworICAgICAgICAgICAgICAgICAgICAgICAgLyogRmFzdCBsb29wIGZvciBub24tY29udHJvbCBjaGFyYWN0ZXJzICovCisgICAgICAgICAgICAgICAgICAgICAgICB3aGlsZSAoUHlVbmljb2RlX1JFQUQoa2luZCwgaW5fc3RyLCBpKSA+ICdcbicpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaSsrOworICAgICAgICAgICAgICAgICAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGluX3N0ciwgaSsrKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjID09ICdcbicpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWVubmwgfD0gU0VFTl9MRjsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpID49IGxlbikKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICBpZiAocyA+IGVuZCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KICAgICAgICAgICAgIC8qIEZpbmlzaGVkOiB3ZSBoYXZlIHNjYW5uZWQgZm9yIG5ld2xpbmVzLCBhbmQgbm9uZSBvZiB0aGVtCiAgICAgICAgICAgICAgICBuZWVkIHRyYW5zbGF0aW5nICovCiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAoIXNlbGYtPnRyYW5zbGF0ZSkgewotICAgICAgICAgICAgUHlfVU5JQ09ERSAqcywgKmVuZDsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgaSA9IDA7CiAgICAgICAgICAgICAvKiBXZSBoYXZlIGFscmVhZHkgc2VlbiBhbGwgbmV3bGluZSB0eXBlcywgbm8gbmVlZCB0byBzY2FuIGFnYWluICovCiAgICAgICAgICAgICBpZiAoc2Vlbm5sID09IFNFRU5fQUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZW5kc2NhbjsKLSAgICAgICAgICAgIHMgPSBpbl9zdHI7Ci0gICAgICAgICAgICBlbmQgPSBpbl9zdHIgKyBsZW47CiAgICAgICAgICAgICBmb3IgKDs7KSB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjOworICAgICAgICAgICAgICAgIFB5X1VDUzQgYzsKICAgICAgICAgICAgICAgICAvKiBGYXN0IGxvb3AgZm9yIG5vbi1jb250cm9sIGNoYXJhY3RlcnMgKi8KLSAgICAgICAgICAgICAgICB3aGlsZSAoKnMgPiAnXHInKQotICAgICAgICAgICAgICAgICAgICBzKys7Ci0gICAgICAgICAgICAgICAgYyA9ICpzKys7CisgICAgICAgICAgICAgICAgd2hpbGUgKFB5VW5pY29kZV9SRUFEKGtpbmQsIGluX3N0ciwgaSkgPiAnXHInKQorICAgICAgICAgICAgICAgICAgICBpKys7CisgICAgICAgICAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGluX3N0ciwgaSsrKTsKICAgICAgICAgICAgICAgICBpZiAoYyA9PSAnXG4nKQogICAgICAgICAgICAgICAgICAgICBzZWVubmwgfD0gU0VFTl9MRjsKICAgICAgICAgICAgICAgICBlbHNlIGlmIChjID09ICdccicpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCpzID09ICdcbicpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIGluX3N0ciwgaSkgPT0gJ1xuJykgewogICAgICAgICAgICAgICAgICAgICAgICAgc2Vlbm5sIHw9IFNFRU5fQ1JMRjsKLSAgICAgICAgICAgICAgICAgICAgICAgIHMrKzsKKyAgICAgICAgICAgICAgICAgICAgICAgIGkrKzsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgICAgICBzZWVubmwgfD0gU0VFTl9DUjsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKHMgPiBlbmQpCisgICAgICAgICAgICAgICAgaWYgKGkgPj0gbGVuKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICBpZiAoc2Vlbm5sID09IFNFRU5fQUxMKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTM5Myw2MSArNDE3LDUxIEBACiAgICAgICAgICAgICA7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBQeU9iamVjdCAqdHJhbnNsYXRlZCA9IE5VTEw7Ci0gICAgICAgICAgICBQeV9VTklDT0RFICpvdXRfc3RyOwotICAgICAgICAgICAgUHlfVU5JQ09ERSAqaW4sICpvdXQsICplbmQ7Ci0gICAgICAgICAgICBpZiAoUHlfUkVGQ05UKG91dHB1dCkgIT0gMSkgewotICAgICAgICAgICAgICAgIC8qIFdlIGNvdWxkIHRyeSB0byBvcHRpbWl6ZSB0aGlzIHNvIHRoYXQgd2Ugb25seSBkbyBhIGNvcHkKLSAgICAgICAgICAgICAgICAgICB3aGVuIHRoZXJlIGlzIHNvbWV0aGluZyB0byB0cmFuc2xhdGUuIE9uIHRoZSBvdGhlciBoYW5kLAotICAgICAgICAgICAgICAgICAgIG1vc3QgZGVjb2RlcnMgc2hvdWxkIG9ubHkgb3V0cHV0IG5vbi1zaGFyZWQgc3RyaW5ncywgaS5lLgotICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uIGlzIGRvbmUgaW4gcGxhY2UuICovCi0gICAgICAgICAgICAgICAgdHJhbnNsYXRlZCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBsZW4pOwotICAgICAgICAgICAgICAgIGlmICh0cmFuc2xhdGVkID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICAgICAgYXNzZXJ0KFB5X1JFRkNOVCh0cmFuc2xhdGVkKSA9PSAxKTsKLSAgICAgICAgICAgICAgICBtZW1jcHkoUHlVbmljb2RlX0FTX1VOSUNPREUodHJhbnNsYXRlZCksCi0gICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKG91dHB1dCksCi0gICAgICAgICAgICAgICAgICAgICAgIGxlbiAqIHNpemVvZihQeV9VTklDT0RFKSk7CisgICAgICAgICAgICB2b2lkICp0cmFuc2xhdGVkOworICAgICAgICAgICAgaW50IGtpbmQgPSBQeVVuaWNvZGVfS0lORChvdXRwdXQpOworICAgICAgICAgICAgdm9pZCAqaW5fc3RyID0gUHlVbmljb2RlX0RBVEEob3V0cHV0KTsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgaW4sIG91dDsKKyAgICAgICAgICAgIC8qIFhYWDogUHJldmlvdXMgaW4tcGxhY2UgdHJhbnNsYXRpb24gaGVyZSBpcyBkaXNhYmxlZCBhcworICAgICAgICAgICAgICAgcmVzaXppbmcgaXMgbm90IHBvc3NpYmxlIGFueW1vcmUgKi8KKyAgICAgICAgICAgIC8qIFdlIGNvdWxkIHRyeSB0byBvcHRpbWl6ZSB0aGlzIHNvIHRoYXQgd2Ugb25seSBkbyBhIGNvcHkKKyAgICAgICAgICAgICAgIHdoZW4gdGhlcmUgaXMgc29tZXRoaW5nIHRvIHRyYW5zbGF0ZS4gT24gdGhlIG90aGVyIGhhbmQsCisgICAgICAgICAgICAgICB3ZSBhbHJlYWR5IGtub3cgdGhlcmUgaXMgYSBcciBieXRlLCBzbyBjaGFuY2VzIGFyZSBoaWdoCisgICAgICAgICAgICAgICB0aGF0IHNvbWV0aGluZyBuZWVkcyB0byBiZSBkb25lLiAqLworICAgICAgICAgICAgdHJhbnNsYXRlZCA9IFB5TWVtX01hbGxvYyhraW5kICogbGVuKTsKKyAgICAgICAgICAgIGlmICh0cmFuc2xhdGVkID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICB0cmFuc2xhdGVkID0gb3V0cHV0OwotICAgICAgICAgICAgfQotICAgICAgICAgICAgb3V0X3N0ciA9IFB5VW5pY29kZV9BU19VTklDT0RFKHRyYW5zbGF0ZWQpOwotICAgICAgICAgICAgaW4gPSBpbl9zdHI7Ci0gICAgICAgICAgICBvdXQgPSBvdXRfc3RyOwotICAgICAgICAgICAgZW5kID0gaW5fc3RyICsgbGVuOworICAgICAgICAgICAgaW4gPSBvdXQgPSAwOwogICAgICAgICAgICAgZm9yICg7OykgewotICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgYzsKKyAgICAgICAgICAgICAgICBQeV9VQ1M0IGM7CiAgICAgICAgICAgICAgICAgLyogRmFzdCBsb29wIGZvciBub24tY29udHJvbCBjaGFyYWN0ZXJzICovCi0gICAgICAgICAgICAgICAgd2hpbGUgKChjID0gKmluKyspID4gJ1xyJykKLSAgICAgICAgICAgICAgICAgICAgKm91dCsrID0gYzsKKyAgICAgICAgICAgICAgICB3aGlsZSAoKGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBpbl9zdHIsIGluKyspKSA+ICdccicpCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCB0cmFuc2xhdGVkLCBvdXQrKywgYyk7CiAgICAgICAgICAgICAgICAgaWYgKGMgPT0gJ1xuJykgewotICAgICAgICAgICAgICAgICAgICAqb3V0KysgPSBjOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgdHJhbnNsYXRlZCwgb3V0KyssIGMpOwogICAgICAgICAgICAgICAgICAgICBzZWVubmwgfD0gU0VFTl9MRjsKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGlmIChjID09ICdccicpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCppbiA9PSAnXG4nKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChraW5kLCBpbl9zdHIsIGluKSA9PSAnXG4nKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbisrOwogICAgICAgICAgICAgICAgICAgICAgICAgc2Vlbm5sIHw9IFNFRU5fQ1JMRjsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgICAgICBzZWVubmwgfD0gU0VFTl9DUjsKLSAgICAgICAgICAgICAgICAgICAgKm91dCsrID0gJ1xuJzsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIHRyYW5zbGF0ZWQsIG91dCsrLCAnXG4nKTsKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChpbiA+IGVuZCkKKyAgICAgICAgICAgICAgICBpZiAoaW4gPiBsZW4pCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICpvdXQrKyA9IGM7CisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIHRyYW5zbGF0ZWQsIG91dCsrLCBjKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmICh0cmFuc2xhdGVkICE9IG91dHB1dCkgewotICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihvdXRwdXQpOwotICAgICAgICAgICAgICAgIG91dHB1dCA9IHRyYW5zbGF0ZWQ7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAob3V0IC0gb3V0X3N0ciAhPSBsZW4pIHsKLSAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1Jlc2l6ZSgmb3V0cHV0LCBvdXQgLSBvdXRfc3RyKSA8IDApCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBQeV9ERUNSRUYob3V0cHV0KTsKKyAgICAgICAgICAgIG91dHB1dCA9IFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoa2luZCwgdHJhbnNsYXRlZCwgb3V0KTsKKyAgICAgICAgICAgIFB5TWVtX0ZyZWUodHJhbnNsYXRlZCk7CisgICAgICAgICAgICBpZiAoIW91dHB1dCkKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICB9CiAgICAgICAgIHNlbGYtPnNlZW5ubCB8PSBzZWVubmw7CiAgICAgfQpAQCAtNTE0LDggKzUyOCw4IEBACiAgICAgZmxhZyA+Pj0gMTsKIAogICAgIGlmIChzZWxmLT5kZWNvZGVyICE9IFB5X05vbmUpCi0gICAgICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYtPmRlY29kZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzZXRzdGF0ZSIsICIoKE9LKSkiLCBidWZmZXIsIGZsYWcpOworICAgICAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5kZWNvZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmUHlJZF9zZXRzdGF0ZSwgIigoT0spKSIsIGJ1ZmZlciwgZmxhZyk7CiAgICAgZWxzZQogICAgICAgICBQeV9SRVRVUk5fTk9ORTsKIH0KQEAgLTY4MCwxMiArNjk0LDE2IEBACiAgICAgUHlPYmplY3QgKnBlbmRpbmdfYnl0ZXM7ICAgICAgIC8qIGxpc3Qgb2YgYnl0ZXMgb2JqZWN0cyB3YWl0aW5nIHRvIGJlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdyaXR0ZW4sIG9yIE5VTEwgKi8KICAgICBQeV9zc2l6ZV90IHBlbmRpbmdfYnl0ZXNfY291bnQ7Ci0gICAgUHlPYmplY3QgKnNuYXBzaG90OworCiAgICAgLyogc25hcHNob3QgaXMgZWl0aGVyIE5vbmUsIG9yIGEgdHVwbGUgKGRlY19mbGFncywgbmV4dF9pbnB1dCkgd2hlcmUKICAgICAgKiBkZWNfZmxhZ3MgaXMgdGhlIHNlY29uZCAoaW50ZWdlcikgaXRlbSBvZiB0aGUgZGVjb2RlciBzdGF0ZSBhbmQKICAgICAgKiBuZXh0X2lucHV0IGlzIHRoZSBjaHVuayBvZiBpbnB1dCBieXRlcyB0aGF0IGNvbWVzIG5leHQgYWZ0ZXIgdGhlCiAgICAgICogc25hcHNob3QgcG9pbnQuICBXZSB1c2UgdGhpcyB0byByZWNvbnN0cnVjdCBkZWNvZGVyIHN0YXRlcyBpbiB0ZWxsKCkuCiAgICAgICovCisgICAgUHlPYmplY3QgKnNuYXBzaG90OworICAgIC8qIEJ5dGVzLXRvLWNoYXJhY3RlcnMgcmF0aW8gZm9yIHRoZSBjdXJyZW50IGNodW5rLiBTZXJ2ZXMgYXMgaW5wdXQgZm9yCisgICAgICAgdGhlIGhldXJpc3RpYyBpbiB0ZWxsKCkuICovCisgICAgZG91YmxlIGIyY3JhdGlvOwogCiAgICAgLyogQ2FjaGUgcmF3IG9iamVjdCBpZiBpdCdzIGEgRmlsZUlPIG9iamVjdCAqLwogICAgIFB5T2JqZWN0ICpyYXc7CkBAIC03MDEsMjUgKzcxOSwyMSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGFzY2lpX2VuY29kZSh0ZXh0aW8gKnNlbGYsIFB5T2JqZWN0ICp0ZXh0KQogewotICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlQVNDSUkoUHlVbmljb2RlX0FTX1VOSUNPREUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpKTsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKHRleHQsIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycykpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogdXRmMTZiZV9lbmNvZGUodGV4dGlvICpzZWxmLCBQeU9iamVjdCAqdGV4dCkKIHsKLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZVVURjE2KFB5VW5pY29kZV9BU19VTklDT0RFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSwgMSk7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfRW5jb2RlVVRGMTYodGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpLCAxKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIHV0ZjE2bGVfZW5jb2RlKHRleHRpbyAqc2VsZiwgUHlPYmplY3QgKnRleHQpCiB7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVVVEYxNihQeVVuaWNvZGVfQVNfVU5JQ09ERSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycyksIC0xKTsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9FbmNvZGVVVEYxNih0ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycyksIC0xKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTczMywyNSArNzQ3LDIyIEBACiAgICAgICAgIHJldHVybiB1dGYxNmxlX2VuY29kZShzZWxmLCB0ZXh0KTsKICNlbmRpZgogICAgIH0KLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZVVURjE2KFB5VW5pY29kZV9BU19VTklDT0RFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSwgMCk7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfRW5jb2RlVVRGMTYodGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpLCAwKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIHV0ZjMyYmVfZW5jb2RlKHRleHRpbyAqc2VsZiwgUHlPYmplY3QgKnRleHQpCiB7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVVVEYzMihQeVVuaWNvZGVfQVNfVU5JQ09ERSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycyksIDEpOworICAgIHJldHVybiBfUHlVbmljb2RlX0VuY29kZVVURjMyKHRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSwgMSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiB1dGYzMmxlX2VuY29kZSh0ZXh0aW8gKnNlbGYsIFB5T2JqZWN0ICp0ZXh0KQogewotICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlVVRGMzIoUHlVbmljb2RlX0FTX1VOSUNPREUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpLCAtMSk7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfRW5jb2RlVVRGMzIodGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpLCAtMSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC03NjUsMjUgKzc3NiwyMCBAQAogICAgICAgICByZXR1cm4gdXRmMzJsZV9lbmNvZGUoc2VsZiwgdGV4dCk7CiAjZW5kaWYKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVVVEYzMihQeVVuaWNvZGVfQVNfVU5JQ09ERSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycyksIDApOworICAgIHJldHVybiBfUHlVbmljb2RlX0VuY29kZVVURjMyKHRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSwgMCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiB1dGY4X2VuY29kZSh0ZXh0aW8gKnNlbGYsIFB5T2JqZWN0ICp0ZXh0KQogewotICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlVVRGOChQeVVuaWNvZGVfQVNfVU5JQ09ERSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhzZWxmLT5lcnJvcnMpKTsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9Bc1VURjhTdHJpbmcodGV4dCwgUHlCeXRlc19BU19TVFJJTkcoc2VsZi0+ZXJyb3JzKSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBsYXRpbjFfZW5jb2RlKHRleHRpbyAqc2VsZiwgUHlPYmplY3QgKnRleHQpCiB7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVMYXRpbjEoUHlVbmljb2RlX0FTX1VOSUNPREUodGV4dCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHRleHQpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycykpOworICAgIHJldHVybiBfUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKHRleHQsIFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYtPmVycm9ycykpOwogfQogCiAvKiBNYXAgbm9ybWFsaXplZCBlbmNvZGluZyBuYW1lcyBvbnRvIHRoZSBzcGVjaWFsaXplZCBlbmNvZGluZyBmdW5jcyAqLwpAQCAtODUyLDExICs4NTgsMTIgQEAKICAgICBzZWxmLT5kZWNvZGVkX2NoYXJzX3VzZWQgPSAwOwogICAgIHNlbGYtPnBlbmRpbmdfYnl0ZXNfY291bnQgPSAwOwogICAgIHNlbGYtPmVuY29kZWZ1bmMgPSBOVUxMOworICAgIHNlbGYtPmIyY3JhdGlvID0gMC4wOwogCiAgICAgaWYgKGVuY29kaW5nID09IE5VTEwpIHsKICAgICAgICAgLyogVHJ5IG9zLmRldmljZV9lbmNvZGluZyhmaWxlbm8pICovCiAgICAgICAgIFB5T2JqZWN0ICpmaWxlbm87Ci0gICAgICAgIGZpbGVubyA9IFB5T2JqZWN0X0NhbGxNZXRob2QoYnVmZmVyLCAiZmlsZW5vIiwgTlVMTCk7CisgICAgICAgIGZpbGVubyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoYnVmZmVyLCAmUHlJZF9maWxlbm8sIE5VTEwpOwogICAgICAgICAvKiBJZ25vcmUgb25seSBBdHRyaWJ1dGVFcnJvciBhbmQgVW5zdXBwb3J0ZWRPcGVyYXRpb24gKi8KICAgICAgICAgaWYgKGZpbGVubyA9PSBOVUxMKSB7CiAgICAgICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikgfHwKQEAgLTg2OCw5ICs4NzUsOSBAQAogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgc2VsZi0+ZW5jb2RpbmcgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHN0YXRlLT5vc19tb2R1bGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRldmljZV9lbmNvZGluZyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk4iLCBmaWxlbm8pOworICAgICAgICAgICAgc2VsZi0+ZW5jb2RpbmcgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHN0YXRlLT5vc19tb2R1bGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlB5SWRfZGV2aWNlX2VuY29kaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJOIiwgZmlsZW5vKTsKICAgICAgICAgICAgIGlmIChzZWxmLT5lbmNvZGluZyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICBlbHNlIGlmICghUHlVbmljb2RlX0NoZWNrKHNlbGYtPmVuY29kaW5nKSkKQEAgLTg4Nyw4ICs4OTQsOCBAQAogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgIHVzZV9sb2NhbGU6Ci0gICAgICAgICAgICBzZWxmLT5lbmNvZGluZyA9IFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICAgICAgc3RhdGUtPmxvY2FsZV9tb2R1bGUsICJnZXRwcmVmZXJyZWRlbmNvZGluZyIsIE5VTEwpOworICAgICAgICAgICAgc2VsZi0+ZW5jb2RpbmcgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKAorICAgICAgICAgICAgICAgIHN0YXRlLT5sb2NhbGVfbW9kdWxlLCAmUHlJZF9nZXRwcmVmZXJyZWRlbmNvZGluZywgTlVMTCk7CiAgICAgICAgICAgICBpZiAoc2VsZi0+ZW5jb2RpbmcgPT0gTlVMTCkgewogICAgICAgICAgICAgICBjYXRjaF9JbXBvcnRFcnJvcjoKICAgICAgICAgICAgICAgICAvKgpAQCAtOTUzLDcgKzk2MCw3IEBACiAjZW5kaWYKIAogICAgIC8qIEJ1aWxkIHRoZSBkZWNvZGVyIG9iamVjdCAqLwotICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2QoYnVmZmVyLCAicmVhZGFibGUiLCBOVUxMKTsKKyAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGJ1ZmZlciwgJlB5SWRfcmVhZGFibGUsIE5VTEwpOwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKICAgICByID0gUHlPYmplY3RfSXNUcnVlKHJlcyk7CkBAIC05NzgsNyArOTg1LDcgQEAKICAgICB9CiAKICAgICAvKiBCdWlsZCB0aGUgZW5jb2RlciBvYmplY3QgKi8KLSAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGJ1ZmZlciwgIndyaXRhYmxlIiwgTlVMTCk7CisgICAgcmVzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChidWZmZXIsICZQeUlkX3dyaXRhYmxlLCBOVUxMKTsKICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgciA9IFB5T2JqZWN0X0lzVHJ1ZShyZXMpOwpAQCAtOTk1LDcgKzEwMDIsNyBAQAogICAgICAgICBjaSA9IF9QeUNvZGVjX0xvb2t1cChlbmNvZGluZyk7CiAgICAgICAgIGlmIChjaSA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgcmVzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhjaSwgIm5hbWUiKTsKKyAgICAgICAgcmVzID0gX1B5T2JqZWN0X0dldEF0dHJJZChjaSwgJlB5SWRfbmFtZSk7CiAgICAgICAgIFB5X0RFQ1JFRihjaSk7CiAgICAgICAgIGlmIChyZXMgPT0gTlVMTCkgewogICAgICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQpAQCAtMTAyMiw3ICsxMDI5LDcgQEAKICAgICBpZiAoUHlfVFlQRShidWZmZXIpID09ICZQeUJ1ZmZlcmVkUmVhZGVyX1R5cGUgfHwKICAgICAgICAgUHlfVFlQRShidWZmZXIpID09ICZQeUJ1ZmZlcmVkV3JpdGVyX1R5cGUgfHwKICAgICAgICAgUHlfVFlQRShidWZmZXIpID09ICZQeUJ1ZmZlcmVkUmFuZG9tX1R5cGUpIHsKLSAgICAgICAgcmF3ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhidWZmZXIsICJyYXciKTsKKyAgICAgICAgcmF3ID0gX1B5T2JqZWN0X0dldEF0dHJJZChidWZmZXIsICZQeUlkX3Jhdyk7CiAgICAgICAgIC8qIENhY2hlIHRoZSByYXcgRmlsZUlPIG9iamVjdCB0byBzcGVlZCB1cCAnY2xvc2VkJyBjaGVja3MgKi8KICAgICAgICAgaWYgKHJhdyA9PSBOVUxMKSB7CiAgICAgICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCkBAIC0xMDM2LDEzICsxMDQzLDEzIEBACiAgICAgICAgICAgICBQeV9ERUNSRUYocmF3KTsKICAgICB9CiAKLSAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGJ1ZmZlciwgInNlZWthYmxlIiwgTlVMTCk7CisgICAgcmVzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChidWZmZXIsICZQeUlkX3NlZWthYmxlLCBOVUxMKTsKICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgc2VsZi0+c2Vla2FibGUgPSBzZWxmLT50ZWxsaW5nID0gUHlPYmplY3RfSXNUcnVlKHJlcyk7CiAgICAgUHlfREVDUkVGKHJlcyk7CiAKLSAgICBzZWxmLT5oYXNfcmVhZDEgPSBQeU9iamVjdF9IYXNBdHRyU3RyaW5nKGJ1ZmZlciwgInJlYWQxIik7CisgICAgc2VsZi0+aGFzX3JlYWQxID0gX1B5T2JqZWN0X0hhc0F0dHJJZChidWZmZXIsICZQeUlkX3JlYWQxKTsKIAogICAgIHNlbGYtPmVuY29kaW5nX3N0YXJ0X29mX3N0cmVhbSA9IDA7CiAgICAgaWYgKHNlbGYtPnNlZWthYmxlICYmIHNlbGYtPmVuY29kZXIpIHsKQEAgLTEyMDgsMTggKzEyMTUsNiBAQAogICAgIHJldHVybiBidWZmZXI7CiB9CiAKLVB5X0xPQ0FMX0lOTElORShjb25zdCBQeV9VTklDT0RFICopCi1maW5kY2hhcihjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUsIFB5X1VOSUNPREUgY2gpCi17Ci0gICAgLyogbGlrZSB3Y3NjaHIsIGJ1dCBkb2Vzbid0IHN0b3AgYXQgTlVMTCBjaGFyYWN0ZXJzICovCi0gICAgd2hpbGUgKHNpemUtLSA+IDApIHsKLSAgICAgICAgaWYgKCpzID09IGNoKQotICAgICAgICAgICAgcmV0dXJuIHM7Ci0gICAgICAgIHMrKzsKLSAgICB9Ci0gICAgcmV0dXJuIE5VTEw7Ci19Ci0KIC8qIEZsdXNoIHRoZSBpbnRlcm5hbCB3cml0ZSBidWZmZXIuIFRoaXMgZG9lc24ndCBleHBsaWNpdGx5IGZsdXNoIHRoZQogICAgdW5kZXJseWluZyBidWZmZXJlZCBvYmplY3QsIHRob3VnaC4gKi8KIHN0YXRpYyBpbnQKQEAgLTEyNjQsNiArMTI1OSw5IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodGV4dCkgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgQ0hFQ0tfQ0xPU0VEKHNlbGYpOwogCiAgICAgaWYgKHNlbGYtPmVuY29kZXIgPT0gTlVMTCkKQEAgLTEyNzEsMTYgKzEyNjksMTUgQEAKIAogICAgIFB5X0lOQ1JFRih0ZXh0KTsKIAotICAgIHRleHRsZW4gPSBQeVVuaWNvZGVfR2V0U2l6ZSh0ZXh0KTsKKyAgICB0ZXh0bGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodGV4dCk7CiAKICAgICBpZiAoKHNlbGYtPndyaXRldHJhbnNsYXRlICYmIHNlbGYtPndyaXRlbmwgIT0gTlVMTCkgfHwgc2VsZi0+bGluZV9idWZmZXJpbmcpCi0gICAgICAgIGlmIChmaW5kY2hhcihQeVVuaWNvZGVfQVNfVU5JQ09ERSh0ZXh0KSwKLSAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh0ZXh0KSwgJ1xuJykpCisgICAgICAgIGlmIChQeVVuaWNvZGVfRmluZENoYXIodGV4dCwgJ1xuJywgMCwgUHlVbmljb2RlX0dFVF9MRU5HVEgodGV4dCksIDEpICE9IC0xKQogICAgICAgICAgICAgaGFzbGYgPSAxOwogCiAgICAgaWYgKGhhc2xmICYmIHNlbGYtPndyaXRldHJhbnNsYXRlICYmIHNlbGYtPndyaXRlbmwgIT0gTlVMTCkgewotICAgICAgICBQeU9iamVjdCAqbmV3dGV4dCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICB0ZXh0LCAicmVwbGFjZSIsICJzcyIsICJcbiIsIHNlbGYtPndyaXRlbmwpOworICAgICAgICBQeU9iamVjdCAqbmV3dGV4dCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoCisgICAgICAgICAgICB0ZXh0LCAmUHlJZF9yZXBsYWNlLCAic3MiLCAiXG4iLCBzZWxmLT53cml0ZW5sKTsKICAgICAgICAgUHlfREVDUkVGKHRleHQpOwogICAgICAgICBpZiAobmV3dGV4dCA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xMjkxLDggKzEyODgsNyBAQAogICAgICAgICBuZWVkZmx1c2ggPSAxOwogICAgIGVsc2UgaWYgKHNlbGYtPmxpbmVfYnVmZmVyaW5nICYmCiAgICAgICAgIChoYXNsZiB8fAotICAgICAgICAgZmluZGNoYXIoUHlVbmljb2RlX0FTX1VOSUNPREUodGV4dCksCi0gICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodGV4dCksICdccicpKSkKKyAgICAgICAgIFB5VW5pY29kZV9GaW5kQ2hhcih0ZXh0LCAnXHInLCAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSCh0ZXh0KSwgMSkgIT0gLTEpKQogICAgICAgICBuZWVkZmx1c2ggPSAxOwogCiAgICAgLyogWFhYIFdoYXQgaWYgd2Ugd2VyZSBqdXN0IHJlYWRpbmc/ICovCkBAIC0xMzM2LDcgKzEzMzIsNyBAQAogICAgIFB5X0NMRUFSKHNlbGYtPnNuYXBzaG90KTsKIAogICAgIGlmIChzZWxmLT5kZWNvZGVyKSB7Ci0gICAgICAgIHJldCA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+ZGVjb2RlciwgInJlc2V0IiwgTlVMTCk7CisgICAgICAgIHJldCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+ZGVjb2RlciwgJlB5SWRfcmVzZXQsIE5VTEwpOwogICAgICAgICBpZiAocmV0ID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgUHlfREVDUkVGKHJldCk7CkBAIC0xMzY0LDcgKzEzNjAsOCBAQAogICAgIGlmIChzZWxmLT5kZWNvZGVkX2NoYXJzID09IE5VTEwpCiAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgMCk7CiAKLSAgICBhdmFpbCA9IChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZi0+ZGVjb2RlZF9jaGFycykKKyAgICAvKiBkZWNvZGVkX2NoYXJzIGlzIGd1YXJhbnRlZWQgdG8gYmUgInJlYWR5Ii4gKi8KKyAgICBhdmFpbCA9IChQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmLT5kZWNvZGVkX2NoYXJzKQogICAgICAgICAgICAgIC0gc2VsZi0+ZGVjb2RlZF9jaGFyc191c2VkKTsKIAogICAgIGFzc2VydChhdmFpbCA+PSAwKTsKQEAgLTEzNzMsOSArMTM3MCw5IEBACiAgICAgICAgIG4gPSBhdmFpbDsKIAogICAgIGlmIChzZWxmLT5kZWNvZGVkX2NoYXJzX3VzZWQgPiAwIHx8IG4gPCBhdmFpbCkgewotICAgICAgICBjaGFycyA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKLSAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYtPmRlY29kZWRfY2hhcnMpCi0gICAgICAgICAgICArIHNlbGYtPmRlY29kZWRfY2hhcnNfdXNlZCwgbik7CisgICAgICAgIGNoYXJzID0gUHlVbmljb2RlX1N1YnN0cmluZyhzZWxmLT5kZWNvZGVkX2NoYXJzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+ZGVjb2RlZF9jaGFyc191c2VkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+ZGVjb2RlZF9jaGFyc191c2VkICsgbik7CiAgICAgICAgIGlmIChjaGFycyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMTM5MSwxMiArMTM4OCwxMyBAQAogLyogUmVhZCBhbmQgZGVjb2RlIHRoZSBuZXh0IGNodW5rIG9mIGRhdGEgZnJvbSB0aGUgQnVmZmVyZWRSZWFkZXIuCiAgKi8KIHN0YXRpYyBpbnQKLXRleHRpb3dyYXBwZXJfcmVhZF9jaHVuayh0ZXh0aW8gKnNlbGYpCit0ZXh0aW93cmFwcGVyX3JlYWRfY2h1bmsodGV4dGlvICpzZWxmLCBQeV9zc2l6ZV90IHNpemVfaGludCkKIHsKICAgICBQeU9iamVjdCAqZGVjX2J1ZmZlciA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmRlY19mbGFncyA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmlucHV0X2NodW5rID0gTlVMTDsKICAgICBQeU9iamVjdCAqZGVjb2RlZF9jaGFycywgKmNodW5rX3NpemU7CisgICAgUHlfc3NpemVfdCBuYnl0ZXMsIG5jaGFyczsKICAgICBpbnQgZW9mOwogCiAgICAgLyogVGhlIHJldHVybiB2YWx1ZSBpcyBUcnVlIHVubGVzcyBFT0Ygd2FzIHJlYWNoZWQuICBUaGUgZGVjb2RlZCBzdHJpbmcgaXMKQEAgLTE0MzIsNyArMTQzMCwxMCBAQAogICAgIH0KIAogICAgIC8qIFJlYWQgYSBjaHVuaywgZGVjb2RlIGl0LCBhbmQgcHV0IHRoZSByZXN1bHQgaW4gc2VsZi5fZGVjb2RlZF9jaGFycy4gKi8KLSAgICBjaHVua19zaXplID0gUHlMb25nX0Zyb21Tc2l6ZV90KHNlbGYtPmNodW5rX3NpemUpOworICAgIGlmIChzaXplX2hpbnQgPiAwKSB7CisgICAgICAgIHNpemVfaGludCA9IChQeV9zc2l6ZV90KShQeV9NQVgoc2VsZi0+YjJjcmF0aW8sIDEuMCkgKiBzaXplX2hpbnQpOworICAgIH0KKyAgICBjaHVua19zaXplID0gUHlMb25nX0Zyb21Tc2l6ZV90KFB5X01BWChzZWxmLT5jaHVua19zaXplLCBzaXplX2hpbnQpKTsKICAgICBpZiAoY2h1bmtfc2l6ZSA9PSBOVUxMKQogICAgICAgICBnb3RvIGZhaWw7CiAgICAgaW5wdXRfY2h1bmsgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzZWxmLT5idWZmZXIsCkBAIC0xNDQzLDcgKzE0NDQsOCBAQAogICAgICAgICBnb3RvIGZhaWw7CiAgICAgYXNzZXJ0KFB5Qnl0ZXNfQ2hlY2soaW5wdXRfY2h1bmspKTsKIAotICAgIGVvZiA9IChQeUJ5dGVzX1NpemUoaW5wdXRfY2h1bmspID09IDApOworICAgIG5ieXRlcyA9IFB5Qnl0ZXNfU2l6ZShpbnB1dF9jaHVuayk7CisgICAgZW9mID0gKG5ieXRlcyA9PSAwKTsKIAogICAgIGlmIChQeV9UWVBFKHNlbGYtPmRlY29kZXIpID09ICZQeUluY3JlbWVudGFsTmV3bGluZURlY29kZXJfVHlwZSkgewogICAgICAgICBkZWNvZGVkX2NoYXJzID0gX1B5SW5jcmVtZW50YWxOZXdsaW5lRGVjb2Rlcl9kZWNvZGUoCkBAIC0xNDU3LDggKzE0NTksMTUgQEAKICAgICAvKiBUT0RPIHNhbml0eSBjaGVjazogaXNpbnN0YW5jZShkZWNvZGVkX2NoYXJzLCB1bmljb2RlKSAqLwogICAgIGlmIChkZWNvZGVkX2NoYXJzID09IE5VTEwpCiAgICAgICAgIGdvdG8gZmFpbDsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGRlY29kZWRfY2hhcnMpID09IC0xKQorICAgICAgICBnb3RvIGZhaWw7CiAgICAgdGV4dGlvd3JhcHBlcl9zZXRfZGVjb2RlZF9jaGFycyhzZWxmLCBkZWNvZGVkX2NoYXJzKTsKLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKGRlY29kZWRfY2hhcnMpID4gMCkKKyAgICBuY2hhcnMgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChkZWNvZGVkX2NoYXJzKTsKKyAgICBpZiAobmNoYXJzID4gMCkKKyAgICAgICAgc2VsZi0+YjJjcmF0aW8gPSAoZG91YmxlKSBuYnl0ZXMgLyBuY2hhcnM7CisgICAgZWxzZQorICAgICAgICBzZWxmLT5iMmNyYXRpbyA9IDAuMDsKKyAgICBpZiAobmNoYXJzID4gMCkKICAgICAgICAgZW9mID0gMDsKIAogICAgIGlmIChzZWxmLT50ZWxsaW5nKSB7CkBAIC0xNTA1LDEyICsxNTE0LDE3IEBACiAKICAgICBpZiAobiA8IDApIHsKICAgICAgICAgLyogUmVhZCBldmVyeXRoaW5nICovCi0gICAgICAgIFB5T2JqZWN0ICpieXRlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+YnVmZmVyLCAicmVhZCIsIE5VTEwpOworICAgICAgICBQeU9iamVjdCAqYnl0ZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmJ1ZmZlciwgJlB5SWRfcmVhZCwgTlVMTCk7CiAgICAgICAgIFB5T2JqZWN0ICpkZWNvZGVkOwogICAgICAgICBpZiAoYnl0ZXMgPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgZGVjb2RlZCA9IFB5T2JqZWN0X0NhbGxNZXRob2RPYmpBcmdzKHNlbGYtPmRlY29kZXIsIF9QeUlPX3N0cl9kZWNvZGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBieXRlcywgUHlfVHJ1ZSwgTlVMTCk7CisKKyAgICAgICAgaWYgKFB5X1RZUEUoc2VsZi0+ZGVjb2RlcikgPT0gJlB5SW5jcmVtZW50YWxOZXdsaW5lRGVjb2Rlcl9UeXBlKQorICAgICAgICAgICAgZGVjb2RlZCA9IF9QeUluY3JlbWVudGFsTmV3bGluZURlY29kZXJfZGVjb2RlKHNlbGYtPmRlY29kZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnl0ZXMsIDEpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBkZWNvZGVkID0gUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3MoCisgICAgICAgICAgICAgICAgc2VsZi0+ZGVjb2RlciwgX1B5SU9fc3RyX2RlY29kZSwgYnl0ZXMsIFB5X1RydWUsIE5VTEwpOwogICAgICAgICBQeV9ERUNSRUYoYnl0ZXMpOwogICAgICAgICBpZiAoZGVjb2RlZCA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBmYWlsOwpAQCAtMTUzNiwxMSArMTU1MCwxMyBAQAogICAgICAgICByZXN1bHQgPSB0ZXh0aW93cmFwcGVyX2dldF9kZWNvZGVkX2NoYXJzKHNlbGYsIG4pOwogICAgICAgICBpZiAocmVzdWx0ID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgIHJlbWFpbmluZyAtPSBQeVVuaWNvZGVfR0VUX1NJWkUocmVzdWx0KTsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShyZXN1bHQpID09IC0xKQorICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICByZW1haW5pbmcgLT0gUHlVbmljb2RlX0dFVF9MRU5HVEgocmVzdWx0KTsKIAogICAgICAgICAvKiBLZWVwIHJlYWRpbmcgY2h1bmtzIHVudGlsIHdlIGhhdmUgbiBjaGFyYWN0ZXJzIHRvIHJldHVybiAqLwogICAgICAgICB3aGlsZSAocmVtYWluaW5nID4gMCkgewotICAgICAgICAgICAgcmVzID0gdGV4dGlvd3JhcHBlcl9yZWFkX2NodW5rKHNlbGYpOworICAgICAgICAgICAgcmVzID0gdGV4dGlvd3JhcHBlcl9yZWFkX2NodW5rKHNlbGYsIHJlbWFpbmluZyk7CiAgICAgICAgICAgICBpZiAocmVzIDwgMCkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgICAgICBpZiAocmVzID09IDApICAvKiBFT0YgKi8KQEAgLTE1NTAsMTMgKzE1NjYsMTQgQEAKICAgICAgICAgICAgICAgICBpZiAoY2h1bmtzID09IE5VTEwpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChQeUxpc3RfQXBwZW5kKGNodW5rcywgcmVzdWx0KSA8IDApCisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgocmVzdWx0KSA+IDAgJiYKKyAgICAgICAgICAgICAgICBQeUxpc3RfQXBwZW5kKGNodW5rcywgcmVzdWx0KSA8IDApCiAgICAgICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CiAgICAgICAgICAgICByZXN1bHQgPSB0ZXh0aW93cmFwcGVyX2dldF9kZWNvZGVkX2NoYXJzKHNlbGYsIHJlbWFpbmluZyk7CiAgICAgICAgICAgICBpZiAocmVzdWx0ID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgcmVtYWluaW5nIC09IFB5VW5pY29kZV9HRVRfU0laRShyZXN1bHQpOworICAgICAgICAgICAgcmVtYWluaW5nIC09IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlc3VsdCk7CiAgICAgICAgIH0KICAgICAgICAgaWYgKGNodW5rcyAhPSBOVUxMKSB7CiAgICAgICAgICAgICBpZiAocmVzdWx0ICE9IE5VTEwgJiYgUHlMaXN0X0FwcGVuZChjaHVua3MsIHJlc3VsdCkgPCAwKQpAQCAtMTU3NiwzNiArMTU5MywzOSBAQAogfQogCiAKLS8qIE5PVEU6IGBlbmRgIG11c3QgcG9pbnQgdG8gdGhlIHJlYWwgZW5kIG9mIHRoZSBQeV9VTklDT0RFIHN0b3JhZ2UsCisvKiBOT1RFOiBgZW5kYCBtdXN0IHBvaW50IHRvIHRoZSByZWFsIGVuZCBvZiB0aGUgUHlfVUNTNCBzdG9yYWdlLAogICAgdGhhdCBpcyB0byB0aGUgTlVMIGNoYXJhY3Rlci4gT3RoZXJ3aXNlIHRoZSBmdW5jdGlvbiB3aWxsIHByb2R1Y2UKICAgIGluY29ycmVjdCByZXN1bHRzLiAqLwotc3RhdGljIFB5X1VOSUNPREUgKgotZmluZF9jb250cm9sX2NoYXIoUHlfVU5JQ09ERSAqc3RhcnQsIFB5X1VOSUNPREUgKmVuZCwgUHlfVU5JQ09ERSBjaCkKK3N0YXRpYyBjaGFyICoKK2ZpbmRfY29udHJvbF9jaGFyKGludCBraW5kLCBjaGFyICpzLCBjaGFyICplbmQsIFB5X1VDUzQgY2gpCiB7Ci0gICAgUHlfVU5JQ09ERSAqcyA9IHN0YXJ0OworICAgIGlmIChraW5kID09IFB5VW5pY29kZV8xQllURV9LSU5EKSB7CisgICAgICAgIGFzc2VydChjaCA8IDI1Nik7CisgICAgICAgIHJldHVybiAoY2hhciAqKSBtZW1jaHIoKHZvaWQgKikgcywgKGNoYXIpIGNoLCBlbmQgLSBzKTsKKyAgICB9CiAgICAgZm9yICg7OykgewotICAgICAgICB3aGlsZSAoKnMgPiBjaCkKLSAgICAgICAgICAgIHMrKzsKLSAgICAgICAgaWYgKCpzID09IGNoKQorICAgICAgICB3aGlsZSAoUHlVbmljb2RlX1JFQUQoa2luZCwgcywgMCkgPiBjaCkKKyAgICAgICAgICAgIHMgKz0ga2luZDsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHMsIDApID09IGNoKQogICAgICAgICAgICAgcmV0dXJuIHM7CiAgICAgICAgIGlmIChzID09IGVuZCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBzKys7CisgICAgICAgIHMgKz0ga2luZDsKICAgICB9CiB9CiAKIFB5X3NzaXplX3QKIF9QeUlPX2ZpbmRfbGluZV9lbmRpbmcoCiAgICAgaW50IHRyYW5zbGF0ZWQsIGludCB1bml2ZXJzYWwsIFB5T2JqZWN0ICpyZWFkbmwsCi0gICAgUHlfVU5JQ09ERSAqc3RhcnQsIFB5X1VOSUNPREUgKmVuZCwgUHlfc3NpemVfdCAqY29uc3VtZWQpCisgICAgaW50IGtpbmQsIGNoYXIgKnN0YXJ0LCBjaGFyICplbmQsIFB5X3NzaXplX3QgKmNvbnN1bWVkKQogewotICAgIFB5X3NzaXplX3QgbGVuID0gZW5kIC0gc3RhcnQ7CisgICAgUHlfc3NpemVfdCBsZW4gPSAoKGNoYXIqKWVuZCAtIChjaGFyKilzdGFydCkva2luZDsKIAogICAgIGlmICh0cmFuc2xhdGVkKSB7CiAgICAgICAgIC8qIE5ld2xpbmVzIGFyZSBhbHJlYWR5IHRyYW5zbGF0ZWQsIG9ubHkgc2VhcmNoIGZvciBcbiAqLwotICAgICAgICBQeV9VTklDT0RFICpwb3MgPSBmaW5kX2NvbnRyb2xfY2hhcihzdGFydCwgZW5kLCAnXG4nKTsKKyAgICAgICAgY2hhciAqcG9zID0gZmluZF9jb250cm9sX2NoYXIoa2luZCwgc3RhcnQsIGVuZCwgJ1xuJyk7CiAgICAgICAgIGlmIChwb3MgIT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBwb3MgLSBzdGFydCArIDE7CisgICAgICAgICAgICByZXR1cm4gKHBvcyAtIHN0YXJ0KS9raW5kICsgMTsKICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAqY29uc3VtZWQgPSBsZW47CiAgICAgICAgICAgICByZXR1cm4gLTE7CkBAIC0xNjE1LDYzICsxNjM1LDY2IEBACiAgICAgICAgIC8qIFVuaXZlcnNhbCBuZXdsaW5lIHNlYXJjaC4gRmluZCBhbnkgb2YgXHIsIFxyXG4sIFxuCiAgICAgICAgICAqIFRoZSBkZWNvZGVyIGVuc3VyZXMgdGhhdCBcclxuIGFyZSBub3Qgc3BsaXQgaW4gdHdvIHBpZWNlcwogICAgICAgICAgKi8KLSAgICAgICAgUHlfVU5JQ09ERSAqcyA9IHN0YXJ0OworICAgICAgICBjaGFyICpzID0gc3RhcnQ7CiAgICAgICAgIGZvciAoOzspIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgY2g7CisgICAgICAgICAgICBQeV9VQ1M0IGNoOwogICAgICAgICAgICAgLyogRmFzdCBwYXRoIGZvciBub24tY29udHJvbCBjaGFycy4gVGhlIGxvb3AgYWx3YXlzIGVuZHMKLSAgICAgICAgICAgICAgIHNpbmNlIHRoZSBQeV9VTklDT0RFIHN0b3JhZ2UgaXMgTlVMLXRlcm1pbmF0ZWQuICovCi0gICAgICAgICAgICB3aGlsZSAoKnMgPiAnXHInKQotICAgICAgICAgICAgICAgIHMrKzsKKyAgICAgICAgICAgICAgIHNpbmNlIHRoZSBVbmljb2RlIHN0cmluZyBpcyBOVUwtdGVybWluYXRlZC4gKi8KKyAgICAgICAgICAgIHdoaWxlIChQeVVuaWNvZGVfUkVBRChraW5kLCBzLCAwKSA+ICdccicpCisgICAgICAgICAgICAgICAgcyArPSBraW5kOwogICAgICAgICAgICAgaWYgKHMgPj0gZW5kKSB7CiAgICAgICAgICAgICAgICAgKmNvbnN1bWVkID0gbGVuOwogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGNoID0gKnMrKzsKKyAgICAgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgcywgMCk7CisgICAgICAgICAgICBzICs9IGtpbmQ7CiAgICAgICAgICAgICBpZiAoY2ggPT0gJ1xuJykKLSAgICAgICAgICAgICAgICByZXR1cm4gcyAtIHN0YXJ0OworICAgICAgICAgICAgICAgIHJldHVybiAocyAtIHN0YXJ0KS9raW5kOwogICAgICAgICAgICAgaWYgKGNoID09ICdccicpIHsKLSAgICAgICAgICAgICAgICBpZiAoKnMgPT0gJ1xuJykKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHMgLSBzdGFydCArIDE7CisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHMsIDApID09ICdcbicpCisgICAgICAgICAgICAgICAgICAgIHJldHVybiAocyAtIHN0YXJ0KS9raW5kICsgMTsKICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBzIC0gc3RhcnQ7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAocyAtIHN0YXJ0KS9raW5kOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICAvKiBOb24tdW5pdmVyc2FsIG1vZGUuICovCi0gICAgICAgIFB5X3NzaXplX3QgcmVhZG5sX2xlbiA9IFB5VW5pY29kZV9HRVRfU0laRShyZWFkbmwpOwotICAgICAgICBQeV9VTklDT0RFICpubCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlYWRubCk7CisgICAgICAgIFB5X3NzaXplX3QgcmVhZG5sX2xlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlYWRubCk7CisgICAgICAgIGNoYXIgKm5sID0gUHlVbmljb2RlX0RBVEEocmVhZG5sKTsKKyAgICAgICAgLyogQXNzdW1lIHRoYXQgcmVhZG5sIGlzIGFuIEFTQ0lJIGNoYXJhY3Rlci4gKi8KKyAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKHJlYWRubCkgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQpOwogICAgICAgICBpZiAocmVhZG5sX2xlbiA9PSAxKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFICpwb3MgPSBmaW5kX2NvbnRyb2xfY2hhcihzdGFydCwgZW5kLCBubFswXSk7CisgICAgICAgICAgICBjaGFyICpwb3MgPSBmaW5kX2NvbnRyb2xfY2hhcihraW5kLCBzdGFydCwgZW5kLCBubFswXSk7CiAgICAgICAgICAgICBpZiAocG9zICE9IE5VTEwpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHBvcyAtIHN0YXJ0ICsgMTsKKyAgICAgICAgICAgICAgICByZXR1cm4gKHBvcyAtIHN0YXJ0KS9raW5kICsgMTsKICAgICAgICAgICAgICpjb25zdW1lZCA9IGxlbjsKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKnMgPSBzdGFydDsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKmUgPSBlbmQgLSByZWFkbmxfbGVuICsgMTsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKnBvczsKKyAgICAgICAgICAgIGNoYXIgKnMgPSBzdGFydDsKKyAgICAgICAgICAgIGNoYXIgKmUgPSBlbmQgLSAocmVhZG5sX2xlbiAtIDEpKmtpbmQ7CisgICAgICAgICAgICBjaGFyICpwb3M7CiAgICAgICAgICAgICBpZiAoZSA8IHMpCiAgICAgICAgICAgICAgICAgZSA9IHM7CiAgICAgICAgICAgICB3aGlsZSAocyA8IGUpIHsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSAqcG9zID0gZmluZF9jb250cm9sX2NoYXIocywgZW5kLCBubFswXSk7CisgICAgICAgICAgICAgICAgY2hhciAqcG9zID0gZmluZF9jb250cm9sX2NoYXIoa2luZCwgcywgZW5kLCBubFswXSk7CiAgICAgICAgICAgICAgICAgaWYgKHBvcyA9PSBOVUxMIHx8IHBvcyA+PSBlKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICBmb3IgKGkgPSAxOyBpIDwgcmVhZG5sX2xlbjsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChwb3NbaV0gIT0gbmxbaV0pCisgICAgICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChraW5kLCBwb3MsIGkpICE9IG5sW2ldKQogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGlmIChpID09IHJlYWRubF9sZW4pCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBwb3MgLSBzdGFydCArIHJlYWRubF9sZW47Ci0gICAgICAgICAgICAgICAgcyA9IHBvcyArIDE7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAocG9zIC0gc3RhcnQpL2tpbmQgKyByZWFkbmxfbGVuOworICAgICAgICAgICAgICAgIHMgPSBwb3MgKyBraW5kOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcG9zID0gZmluZF9jb250cm9sX2NoYXIoZSwgZW5kLCBubFswXSk7CisgICAgICAgICAgICBwb3MgPSBmaW5kX2NvbnRyb2xfY2hhcihraW5kLCBlLCBlbmQsIG5sWzBdKTsKICAgICAgICAgICAgIGlmIChwb3MgPT0gTlVMTCkKICAgICAgICAgICAgICAgICAqY29uc3VtZWQgPSBsZW47CiAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgKmNvbnN1bWVkID0gcG9zIC0gc3RhcnQ7CisgICAgICAgICAgICAgICAgKmNvbnN1bWVkID0gKHBvcyAtIHN0YXJ0KS9raW5kOwogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICB9CiAgICAgfQpAQCAtMTY5MiwxNSArMTcxNSwxNiBAQAogICAgIGNodW5rZWQgPSAwOwogCiAgICAgd2hpbGUgKDEpIHsKLSAgICAgICAgUHlfVU5JQ09ERSAqcHRyOworICAgICAgICBjaGFyICpwdHI7CiAgICAgICAgIFB5X3NzaXplX3QgbGluZV9sZW47CisgICAgICAgIGludCBraW5kOwogICAgICAgICBQeV9zc2l6ZV90IGNvbnN1bWVkID0gMDsKIAogICAgICAgICAvKiBGaXJzdCwgZ2V0IHNvbWUgZGF0YSBpZiBuZWNlc3NhcnkgKi8KICAgICAgICAgcmVzID0gMTsKICAgICAgICAgd2hpbGUgKCFzZWxmLT5kZWNvZGVkX2NoYXJzIHx8Ci0gICAgICAgICAgICAgICAhUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYtPmRlY29kZWRfY2hhcnMpKSB7Ci0gICAgICAgICAgICByZXMgPSB0ZXh0aW93cmFwcGVyX3JlYWRfY2h1bmsoc2VsZik7CisgICAgICAgICAgICAgICAhUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZi0+ZGVjb2RlZF9jaGFycykpIHsKKyAgICAgICAgICAgIHJlcyA9IHRleHRpb3dyYXBwZXJfcmVhZF9jaHVuayhzZWxmLCAwKTsKICAgICAgICAgICAgIGlmIChyZXMgPCAwKQogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICBpZiAocmVzID09IDApCkBAIC0xNzI0LDE4ICsxNzQ4LDI0IEBACiAgICAgICAgICAgICBhc3NlcnQoc2VsZi0+ZGVjb2RlZF9jaGFyc191c2VkID09IDApOwogICAgICAgICAgICAgbGluZSA9IFB5VW5pY29kZV9Db25jYXQocmVtYWluaW5nLCBzZWxmLT5kZWNvZGVkX2NoYXJzKTsKICAgICAgICAgICAgIHN0YXJ0ID0gMDsKLSAgICAgICAgICAgIG9mZnNldF90b19idWZmZXIgPSBQeVVuaWNvZGVfR0VUX1NJWkUocmVtYWluaW5nKTsKKyAgICAgICAgICAgIG9mZnNldF90b19idWZmZXIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZW1haW5pbmcpOwogICAgICAgICAgICAgUHlfQ0xFQVIocmVtYWluaW5nKTsKICAgICAgICAgICAgIGlmIChsaW5lID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkobGluZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQogCi0gICAgICAgIHB0ciA9IFB5VW5pY29kZV9BU19VTklDT0RFKGxpbmUpOwotICAgICAgICBsaW5lX2xlbiA9IFB5VW5pY29kZV9HRVRfU0laRShsaW5lKTsKKyAgICAgICAgcHRyID0gUHlVbmljb2RlX0RBVEEobGluZSk7CisgICAgICAgIGxpbmVfbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgobGluZSk7CisgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChsaW5lKTsKIAogICAgICAgICBlbmRwb3MgPSBfUHlJT19maW5kX2xpbmVfZW5kaW5nKAogICAgICAgICAgICAgc2VsZi0+cmVhZHRyYW5zbGF0ZSwgc2VsZi0+cmVhZHVuaXZlcnNhbCwgc2VsZi0+cmVhZG5sLAotICAgICAgICAgICAgcHRyICsgc3RhcnQsIHB0ciArIGxpbmVfbGVuLCAmY29uc3VtZWQpOworICAgICAgICAgICAga2luZCwKKyAgICAgICAgICAgIHB0ciArIGtpbmQgKiBzdGFydCwKKyAgICAgICAgICAgIHB0ciArIGtpbmQgKiBsaW5lX2xlbiwKKyAgICAgICAgICAgICZjb25zdW1lZCk7CiAgICAgICAgIGlmIChlbmRwb3MgPj0gMCkgewogICAgICAgICAgICAgZW5kcG9zICs9IHN0YXJ0OwogICAgICAgICAgICAgaWYgKGxpbWl0ID49IDAgJiYgKGVuZHBvcyAtIHN0YXJ0KSArIGNodW5rZWQgPj0gbGltaXQpCkBAIC0xNzU5LDIxICsxNzg5LDIwIEBACiAgICAgICAgICAgICAgICAgaWYgKGNodW5rcyA9PSBOVUxMKQogICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcyA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShwdHIgKyBzdGFydCwgZW5kcG9zIC0gc3RhcnQpOworICAgICAgICAgICAgcyA9IFB5VW5pY29kZV9TdWJzdHJpbmcobGluZSwgc3RhcnQsIGVuZHBvcyk7CiAgICAgICAgICAgICBpZiAocyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgICAgICBpZiAoUHlMaXN0X0FwcGVuZChjaHVua3MsIHMpIDwgMCkgewogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihzKTsKICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgY2h1bmtlZCArPSBQeVVuaWNvZGVfR0VUX1NJWkUocyk7CisgICAgICAgICAgICBjaHVua2VkICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHMpOwogICAgICAgICAgICAgUHlfREVDUkVGKHMpOwogICAgICAgICB9CiAgICAgICAgIC8qIFRoZXJlIG1heSBiZSBzb21lIHJlbWFpbmluZyBieXRlcyB3ZSdsbCBoYXZlIHRvIHByZXBlbmQgdG8gdGhlCiAgICAgICAgICAgIG5leHQgY2h1bmsgb2YgZGF0YSAqLwogICAgICAgICBpZiAoZW5kcG9zIDwgbGluZV9sZW4pIHsKLSAgICAgICAgICAgIHJlbWFpbmluZyA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKLSAgICAgICAgICAgICAgICAgICAgcHRyICsgZW5kcG9zLCBsaW5lX2xlbiAtIGVuZHBvcyk7CisgICAgICAgICAgICByZW1haW5pbmcgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKGxpbmUsIGVuZHBvcywgbGluZV9sZW4pOwogICAgICAgICAgICAgaWYgKHJlbWFpbmluZyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIH0KQEAgLTE3ODUsMTkgKzE4MTQsMTIgQEAKICAgICBpZiAobGluZSAhPSBOVUxMKSB7CiAgICAgICAgIC8qIE91ciBsaW5lIGVuZHMgaW4gdGhlIGN1cnJlbnQgYnVmZmVyICovCiAgICAgICAgIHNlbGYtPmRlY29kZWRfY2hhcnNfdXNlZCA9IGVuZHBvcyAtIG9mZnNldF90b19idWZmZXI7Ci0gICAgICAgIGlmIChzdGFydCA+IDAgfHwgZW5kcG9zIDwgUHlVbmljb2RlX0dFVF9TSVpFKGxpbmUpKSB7Ci0gICAgICAgICAgICBpZiAoc3RhcnQgPT0gMCAmJiBQeV9SRUZDTlQobGluZSkgPT0gMSkgewotICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUmVzaXplKCZsaW5lLCBlbmRwb3MpIDwgMCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKAotICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUobGluZSkgKyBzdGFydCwgZW5kcG9zIC0gc3RhcnQpOwotICAgICAgICAgICAgICAgIFB5X0NMRUFSKGxpbmUpOwotICAgICAgICAgICAgICAgIGlmIChzID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICAgICAgbGluZSA9IHM7Ci0gICAgICAgICAgICB9CisgICAgICAgIGlmIChzdGFydCA+IDAgfHwgZW5kcG9zIDwgUHlVbmljb2RlX0dFVF9MRU5HVEgobGluZSkpIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpzID0gUHlVbmljb2RlX1N1YnN0cmluZyhsaW5lLCBzdGFydCwgZW5kcG9zKTsKKyAgICAgICAgICAgIFB5X0NMRUFSKGxpbmUpOworICAgICAgICAgICAgaWYgKHMgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgbGluZSA9IHM7CiAgICAgICAgIH0KICAgICB9CiAgICAgaWYgKHJlbWFpbmluZyAhPSBOVUxMKSB7CkBAIC0xODExLDE2ICsxODMzLDIwIEBACiAgICAgICAgIFB5X0NMRUFSKHJlbWFpbmluZyk7CiAgICAgfQogICAgIGlmIChjaHVua3MgIT0gTlVMTCkgewotICAgICAgICBpZiAobGluZSAhPSBOVUxMICYmIFB5TGlzdF9BcHBlbmQoY2h1bmtzLCBsaW5lKSA8IDApCi0gICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICBQeV9DTEVBUihsaW5lKTsKKyAgICAgICAgaWYgKGxpbmUgIT0gTlVMTCkgeworICAgICAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQoY2h1bmtzLCBsaW5lKSA8IDApCisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihsaW5lKTsKKyAgICAgICAgfQogICAgICAgICBsaW5lID0gUHlVbmljb2RlX0pvaW4oX1B5SU9fZW1wdHlfc3RyLCBjaHVua3MpOwogICAgICAgICBpZiAobGluZSA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgUHlfREVDUkVGKGNodW5rcyk7CisgICAgICAgIFB5X0NMRUFSKGNodW5rcyk7CiAgICAgfQotICAgIGlmIChsaW5lID09IE5VTEwpCi0gICAgICAgIGxpbmUgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgMCk7CisgICAgaWYgKGxpbmUgPT0gTlVMTCkgeworICAgICAgICBQeV9JTkNSRUYoX1B5SU9fZW1wdHlfc3RyKTsKKyAgICAgICAgbGluZSA9IF9QeUlPX2VtcHR5X3N0cjsKKyAgICB9CiAKICAgICByZXR1cm4gbGluZTsKIApAQCAtMTk0Myw4ICsxOTY5LDggQEAKICAgICBpZiAoY29va2llLT5zdGFydF9wb3MgPT0gMCAmJiBjb29raWUtPmRlY19mbGFncyA9PSAwKQogICAgICAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzZWxmLT5kZWNvZGVyLCBfUHlJT19zdHJfcmVzZXQsIE5VTEwpOwogICAgIGVsc2UKLSAgICAgICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5kZWNvZGVyLCAic2V0c3RhdGUiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIoKHlpKSkiLCAiIiwgY29va2llLT5kZWNfZmxhZ3MpOworICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmRlY29kZXIsICZQeUlkX3NldHN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIoKHlpKSkiLCAiIiwgY29va2llLT5kZWNfZmxhZ3MpOwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwogICAgIFB5X0RFQ1JFRihyZXMpOwpAQCAtMjAwOCwxMyArMjAzNCwxMiBAQAogICAgICAgICAgKiBzeW5jIHRoZSB1bmRlcmx5aW5nIGJ1ZmZlciB3aXRoIHRoZSBjdXJyZW50IHBvc2l0aW9uLgogICAgICAgICAgKi8KICAgICAgICAgUHlfREVDUkVGKGNvb2tpZU9iaik7Ci0gICAgICAgIGNvb2tpZU9iaiA9IFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0ICopc2VsZiwgInRlbGwiLCBOVUxMKTsKKyAgICAgICAgY29va2llT2JqID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF90ZWxsLCBOVUxMKTsKICAgICAgICAgaWYgKGNvb2tpZU9iaiA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBmYWlsOwogICAgIH0KICAgICBlbHNlIGlmICh3aGVuY2UgPT0gMikgewogICAgICAgICAvKiBzZWVrIHJlbGF0aXZlIHRvIGVuZCBvZiBmaWxlICovCi0KICAgICAgICAgY21wID0gUHlPYmplY3RfUmljaENvbXBhcmVCb29sKGNvb2tpZU9iaiwgX1B5SU9femVybywgUHlfRVEpOwogICAgICAgICBpZiAoY21wIDwgMCkKICAgICAgICAgICAgIGdvdG8gZmFpbDsKQEAgLTIwMjQsNyArMjA0OSw3IEBACiAgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgIH0KIAotICAgICAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKChQeU9iamVjdCAqKXNlbGYsICJmbHVzaCIsIE5VTEwpOworICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCAqKXNlbGYsICZQeUlkX2ZsdXNoLCBOVUxMKTsKICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICBQeV9ERUNSRUYocmVzKTsKQEAgLTIwMzIsMTMgKzIwNTcsMTMgQEAKICAgICAgICAgdGV4dGlvd3JhcHBlcl9zZXRfZGVjb2RlZF9jaGFycyhzZWxmLCBOVUxMKTsKICAgICAgICAgUHlfQ0xFQVIoc2VsZi0+c25hcHNob3QpOwogICAgICAgICBpZiAoc2VsZi0+ZGVjb2RlcikgewotICAgICAgICAgICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5kZWNvZGVyLCAicmVzZXQiLCBOVUxMKTsKKyAgICAgICAgICAgIHJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+ZGVjb2RlciwgJlB5SWRfcmVzZXQsIE5VTEwpOwogICAgICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXMpOwogICAgICAgICB9CiAKLSAgICAgICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5idWZmZXIsICJzZWVrIiwgImlpIiwgMCwgMik7CisgICAgICAgIHJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+YnVmZmVyLCAmUHlJZF9zZWVrLCAiaWkiLCAwLCAyKTsKICAgICAgICAgUHlfWERFQ1JFRihjb29raWVPYmopOwogICAgICAgICByZXR1cm4gcmVzOwogICAgIH0KQEAgLTIwOTEsOCArMjExNiw4IEBACiAKICAgICBpZiAoY29va2llLmNoYXJzX3RvX3NraXApIHsKICAgICAgICAgLyogSnVzdCBsaWtlIF9yZWFkX2NodW5rLCBmZWVkIHRoZSBkZWNvZGVyIGFuZCBzYXZlIGEgc25hcHNob3QuICovCi0gICAgICAgIFB5T2JqZWN0ICppbnB1dF9jaHVuayA9IFB5T2JqZWN0X0NhbGxNZXRob2QoCi0gICAgICAgICAgICBzZWxmLT5idWZmZXIsICJyZWFkIiwgImkiLCBjb29raWUuYnl0ZXNfdG9fZmVlZCk7CisgICAgICAgIFB5T2JqZWN0ICppbnB1dF9jaHVuayA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoCisgICAgICAgICAgICBzZWxmLT5idWZmZXIsICZQeUlkX3JlYWQsICJpIiwgY29va2llLmJ5dGVzX3RvX2ZlZWQpOwogICAgICAgICBQeU9iamVjdCAqZGVjb2RlZDsKIAogICAgICAgICBpZiAoaW5wdXRfY2h1bmsgPT0gTlVMTCkKQEAgLTIxMDYsMTYgKzIxMzEsMjAgQEAKICAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgfQogCi0gICAgICAgIGRlY29kZWQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYtPmRlY29kZXIsICJkZWNvZGUiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT2kiLCBpbnB1dF9jaHVuaywgKGludCljb29raWUubmVlZF9lb2YpOworICAgICAgICBkZWNvZGVkID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5kZWNvZGVyLCAmUHlJZF9kZWNvZGUsCisgICAgICAgICAgICAiT2kiLCBpbnB1dF9jaHVuaywgKGludCljb29raWUubmVlZF9lb2YpOwogCiAgICAgICAgIGlmIChkZWNvZGVkID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoZGVjb2RlZCkgPT0gLTEpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihkZWNvZGVkKTsKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgfQogCiAgICAgICAgIHRleHRpb3dyYXBwZXJfc2V0X2RlY29kZWRfY2hhcnMoc2VsZiwgZGVjb2RlZCk7CiAKICAgICAgICAgLyogU2tpcCBjaGFyc190b19za2lwIG9mIHRoZSBkZWNvZGVkIGNoYXJhY3RlcnMuICovCi0gICAgICAgIGlmIChQeVVuaWNvZGVfR2V0U2l6ZShzZWxmLT5kZWNvZGVkX2NoYXJzKSA8IGNvb2tpZS5jaGFyc190b19za2lwKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfR2V0TGVuZ3RoKHNlbGYtPmRlY29kZWRfY2hhcnMpIDwgY29va2llLmNoYXJzX3RvX3NraXApIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLCAiY2FuJ3QgcmVzdG9yZSBsb2dpY2FsIGZpbGUgcG9zaXRpb24iKTsKICAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgfQpAQCAtMjE0Nyw4ICsyMTc2LDEyIEBACiAgICAgY29va2llX3R5cGUgY29va2llID0gezAsMCwwLDAsMH07CiAgICAgUHlPYmplY3QgKm5leHRfaW5wdXQ7CiAgICAgUHlfc3NpemVfdCBjaGFyc190b19za2lwLCBjaGFyc19kZWNvZGVkOworICAgIFB5X3NzaXplX3Qgc2tpcF9ieXRlcywgc2tpcF9iYWNrOwogICAgIFB5T2JqZWN0ICpzYXZlZF9zdGF0ZSA9IE5VTEw7CiAgICAgY2hhciAqaW5wdXQsICppbnB1dF9lbmQ7CisgICAgY2hhciAqZGVjX2J1ZmZlcjsKKyAgICBQeV9zc2l6ZV90IGRlY19idWZmZXJfbGVuOworICAgIGludCBkZWNfZmxhZ3M7CiAKICAgICBDSEVDS19JTklUSUFMSVpFRChzZWxmKTsKICAgICBDSEVDS19DTE9TRUQoc2VsZik7CkBAIC0yMTY1LDE3ICsyMTk4LDE3IEBACiAKICAgICBpZiAoX3RleHRpb3dyYXBwZXJfd3JpdGVmbHVzaChzZWxmKSA8IDApCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0ICopc2VsZiwgImZsdXNoIiwgTlVMTCk7CisgICAgcmVzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF9mbHVzaCwgTlVMTCk7CiAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICBnb3RvIGZhaWw7CiAgICAgUHlfREVDUkVGKHJlcyk7CiAKLSAgICBwb3NvYmogPSBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYtPmJ1ZmZlciwgInRlbGwiLCBOVUxMKTsKKyAgICBwb3NvYmogPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmJ1ZmZlciwgJlB5SWRfdGVsbCwgTlVMTCk7CiAgICAgaWYgKHBvc29iaiA9PSBOVUxMKQogICAgICAgICBnb3RvIGZhaWw7CiAKICAgICBpZiAoc2VsZi0+ZGVjb2RlciA9PSBOVUxMIHx8IHNlbGYtPnNuYXBzaG90ID09IE5VTEwpIHsKLSAgICAgICAgYXNzZXJ0IChzZWxmLT5kZWNvZGVkX2NoYXJzID09IE5VTEwgfHwgUHlVbmljb2RlX0dldFNpemUoc2VsZi0+ZGVjb2RlZF9jaGFycykgPT0gMCk7CisgICAgICAgIGFzc2VydCAoc2VsZi0+ZGVjb2RlZF9jaGFycyA9PSBOVUxMIHx8IFB5VW5pY29kZV9HZXRMZW5ndGgoc2VsZi0+ZGVjb2RlZF9jaGFycykgPT0gMCk7CiAgICAgICAgIHJldHVybiBwb3NvYmo7CiAgICAgfQogCkBAIC0yMTg0LDYgKzIyMTcsNyBAQAogI2Vsc2UKICAgICBjb29raWUuc3RhcnRfcG9zID0gUHlMb25nX0FzTG9uZyhwb3NvYmopOwogI2VuZGlmCisgICAgUHlfREVDUkVGKHBvc29iaik7CiAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgIGdvdG8gZmFpbDsKIApAQCAtMjE5OCw1NyArMjIzMiw5OSBAQAogICAgIC8qIEhvdyBtYW55IGRlY29kZWQgY2hhcmFjdGVycyBoYXZlIGJlZW4gdXNlZCB1cCBzaW5jZSB0aGUgc25hcHNob3Q/ICovCiAgICAgaWYgKHNlbGYtPmRlY29kZWRfY2hhcnNfdXNlZCA9PSAwKSAgewogICAgICAgICAvKiBXZSBoYXZlbid0IG1vdmVkIGZyb20gdGhlIHNuYXBzaG90IHBvaW50LiAqLwotICAgICAgICBQeV9ERUNSRUYocG9zb2JqKTsKICAgICAgICAgcmV0dXJuIHRleHRpb3dyYXBwZXJfYnVpbGRfY29va2llKCZjb29raWUpOwogICAgIH0KIAogICAgIGNoYXJzX3RvX3NraXAgPSBzZWxmLT5kZWNvZGVkX2NoYXJzX3VzZWQ7CiAKLSAgICAvKiBTdGFydGluZyBmcm9tIHRoZSBzbmFwc2hvdCBwb3NpdGlvbiwgd2Ugd2lsbCB3YWxrIHRoZSBkZWNvZGVyCi0gICAgICogZm9yd2FyZCB1bnRpbCBpdCBnaXZlcyB1cyBlbm91Z2ggZGVjb2RlZCBjaGFyYWN0ZXJzLgotICAgICAqLworICAgIC8qIERlY29kZXIgc3RhdGUgd2lsbCBiZSByZXN0b3JlZCBhdCB0aGUgZW5kICovCiAgICAgc2F2ZWRfc3RhdGUgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzZWxmLT5kZWNvZGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX1B5SU9fc3RyX2dldHN0YXRlLCBOVUxMKTsKICAgICBpZiAoc2F2ZWRfc3RhdGUgPT0gTlVMTCkKICAgICAgICAgZ290byBmYWlsOwogCi0gICAgLyogTm90ZSBvdXIgaW5pdGlhbCBzdGFydCBwb2ludC4gKi8KLSAgICBpZiAoX3RleHRpb3dyYXBwZXJfZGVjb2Rlcl9zZXRzdGF0ZShzZWxmLCAmY29va2llKSA8IDApCi0gICAgICAgIGdvdG8gZmFpbDsKKyNkZWZpbmUgREVDT0RFUl9HRVRTVEFURSgpIGRvIHsgXAorICAgICAgICBQeU9iamVjdCAqX3N0YXRlID0gUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3Moc2VsZi0+ZGVjb2RlciwgXAorICAgICAgICAgICAgX1B5SU9fc3RyX2dldHN0YXRlLCBOVUxMKTsgXAorICAgICAgICBpZiAoX3N0YXRlID09IE5VTEwpIFwKKyAgICAgICAgICAgIGdvdG8gZmFpbDsgXAorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlKF9zdGF0ZSwgIih5I2kpIiwgJmRlY19idWZmZXIsICZkZWNfYnVmZmVyX2xlbiwgJmRlY19mbGFncykpIHsgXAorICAgICAgICAgICAgUHlfREVDUkVGKF9zdGF0ZSk7IFwKKyAgICAgICAgICAgIGdvdG8gZmFpbDsgXAorICAgICAgICB9IFwKKyAgICAgICAgUHlfREVDUkVGKF9zdGF0ZSk7IFwKKyAgICB9IHdoaWxlICgwKQogCi0gICAgLyogRmVlZCB0aGUgZGVjb2RlciBvbmUgYnl0ZSBhdCBhIHRpbWUuICBBcyB3ZSBnbywgbm90ZSB0aGUKLSAgICAgKiBuZWFyZXN0ICJzYWZlIHN0YXJ0IHBvaW50IiBiZWZvcmUgdGhlIGN1cnJlbnQgbG9jYXRpb24KLSAgICAgKiAoYSBwb2ludCB3aGVyZSB0aGUgZGVjb2RlciBoYXMgbm90aGluZyBidWZmZXJlZCwgc28gc2VlaygpCisgICAgLyogVE9ETzogcmVwbGFjZSBhc3NlcnQgd2l0aCBleGNlcHRpb24gKi8KKyNkZWZpbmUgREVDT0RFUl9ERUNPREUoc3RhcnQsIGxlbiwgcmVzKSBkbyB7IFwKKyAgICAgICAgUHlPYmplY3QgKl9kZWNvZGVkID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCggXAorICAgICAgICAgICAgc2VsZi0+ZGVjb2RlciwgJlB5SWRfZGVjb2RlLCAieSMiLCBzdGFydCwgbGVuKTsgXAorICAgICAgICBpZiAoX2RlY29kZWQgPT0gTlVMTCkgXAorICAgICAgICAgICAgZ290byBmYWlsOyBcCisgICAgICAgIGFzc2VydCAoUHlVbmljb2RlX0NoZWNrKF9kZWNvZGVkKSk7IFwKKyAgICAgICAgcmVzID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoX2RlY29kZWQpOyBcCisgICAgICAgIFB5X0RFQ1JFRihfZGVjb2RlZCk7IFwKKyAgICB9IHdoaWxlICgwKQorCisgICAgLyogRmFzdCBzZWFyY2ggZm9yIGFuIGFjY2VwdGFibGUgc3RhcnQgcG9pbnQsIGNsb3NlIHRvIG91cgorICAgICAgIGN1cnJlbnQgcG9zICovCisgICAgc2tpcF9ieXRlcyA9IChQeV9zc2l6ZV90KSAoc2VsZi0+YjJjcmF0aW8gKiBjaGFyc190b19za2lwKTsKKyAgICBza2lwX2JhY2sgPSAxOworICAgIGFzc2VydChza2lwX2JhY2sgPD0gUHlCeXRlc19HRVRfU0laRShuZXh0X2lucHV0KSk7CisgICAgaW5wdXQgPSBQeUJ5dGVzX0FTX1NUUklORyhuZXh0X2lucHV0KTsKKyAgICB3aGlsZSAoc2tpcF9ieXRlcyA+IDApIHsKKyAgICAgICAgLyogRGVjb2RlIHVwIHRvIHRlbXB0YXRpdmUgc3RhcnQgcG9pbnQgKi8KKyAgICAgICAgaWYgKF90ZXh0aW93cmFwcGVyX2RlY29kZXJfc2V0c3RhdGUoc2VsZiwgJmNvb2tpZSkgPCAwKQorICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICBERUNPREVSX0RFQ09ERShpbnB1dCwgc2tpcF9ieXRlcywgY2hhcnNfZGVjb2RlZCk7CisgICAgICAgIGlmIChjaGFyc19kZWNvZGVkIDw9IGNoYXJzX3RvX3NraXApIHsKKyAgICAgICAgICAgIERFQ09ERVJfR0VUU1RBVEUoKTsKKyAgICAgICAgICAgIGlmIChkZWNfYnVmZmVyX2xlbiA9PSAwKSB7CisgICAgICAgICAgICAgICAgLyogQmVmb3JlIHBvcyBhbmQgbm8gYnl0ZXMgYnVmZmVyZWQgaW4gZGVjb2RlciA9PiBPSyAqLworICAgICAgICAgICAgICAgIGNvb2tpZS5kZWNfZmxhZ3MgPSBkZWNfZmxhZ3M7CisgICAgICAgICAgICAgICAgY2hhcnNfdG9fc2tpcCAtPSBjaGFyc19kZWNvZGVkOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAgICAgICAgLyogU2tpcCBiYWNrIGJ5IGJ1ZmZlcmVkIGFtb3VudCBhbmQgcmVzZXQgaGV1cmlzdGljICovCisgICAgICAgICAgICBza2lwX2J5dGVzIC09IGRlY19idWZmZXJfbGVuOworICAgICAgICAgICAgc2tpcF9iYWNrID0gMTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIC8qIFdlJ3JlIHRvbyBmYXIgYWhlYWQsIHNraXAgYmFjayBhIGJpdCAqLworICAgICAgICAgICAgc2tpcF9ieXRlcyAtPSBza2lwX2JhY2s7CisgICAgICAgICAgICBza2lwX2JhY2sgKj0gMjsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoc2tpcF9ieXRlcyA8PSAwKSB7CisgICAgICAgIHNraXBfYnl0ZXMgPSAwOworICAgICAgICBpZiAoX3RleHRpb3dyYXBwZXJfZGVjb2Rlcl9zZXRzdGF0ZShzZWxmLCAmY29va2llKSA8IDApCisgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgfQorCisgICAgLyogTm90ZSBvdXIgaW5pdGlhbCBzdGFydCBwb2ludC4gKi8KKyAgICBjb29raWUuc3RhcnRfcG9zICs9IHNraXBfYnl0ZXM7CisgICAgY29va2llLmNoYXJzX3RvX3NraXAgPSBjaGFyc190b19za2lwOworICAgIGlmIChjaGFyc190b19za2lwID09IDApCisgICAgICAgIGdvdG8gZmluYWxseTsKKworICAgIC8qIFdlIHNob3VsZCBiZSBjbG9zZSB0byB0aGUgZGVzaXJlZCBwb3NpdGlvbi4gIE5vdyBmZWVkIHRoZSBkZWNvZGVyIG9uZQorICAgICAqIGJ5dGUgYXQgYSB0aW1lIHVudGlsIHdlIHJlYWNoIHRoZSBgY2hhcnNfdG9fc2tpcGAgdGFyZ2V0LgorICAgICAqIEFzIHdlIGdvLCBub3RlIHRoZSBuZWFyZXN0ICJzYWZlIHN0YXJ0IHBvaW50IiBiZWZvcmUgdGhlIGN1cnJlbnQKKyAgICAgKiBsb2NhdGlvbiAoYSBwb2ludCB3aGVyZSB0aGUgZGVjb2RlciBoYXMgbm90aGluZyBidWZmZXJlZCwgc28gc2VlaygpCiAgICAgICogY2FuIHNhZmVseSBzdGFydCBmcm9tIHRoZXJlIGFuZCBhZHZhbmNlIHRvIHRoaXMgbG9jYXRpb24pLgogICAgICAqLwogICAgIGNoYXJzX2RlY29kZWQgPSAwOwogICAgIGlucHV0ID0gUHlCeXRlc19BU19TVFJJTkcobmV4dF9pbnB1dCk7CiAgICAgaW5wdXRfZW5kID0gaW5wdXQgKyBQeUJ5dGVzX0dFVF9TSVpFKG5leHRfaW5wdXQpOworICAgIGlucHV0ICs9IHNraXBfYnl0ZXM7CiAgICAgd2hpbGUgKGlucHV0IDwgaW5wdXRfZW5kKSB7Ci0gICAgICAgIFB5T2JqZWN0ICpzdGF0ZTsKLSAgICAgICAgY2hhciAqZGVjX2J1ZmZlcjsKLSAgICAgICAgUHlfc3NpemVfdCBkZWNfYnVmZmVyX2xlbjsKLSAgICAgICAgaW50IGRlY19mbGFnczsKKyAgICAgICAgUHlfc3NpemVfdCBuOwogCi0gICAgICAgIFB5T2JqZWN0ICpkZWNvZGVkID0gUHlPYmplY3RfQ2FsbE1ldGhvZCgKLSAgICAgICAgICAgIHNlbGYtPmRlY29kZXIsICJkZWNvZGUiLCAieSMiLCBpbnB1dCwgMSk7Ci0gICAgICAgIGlmIChkZWNvZGVkID09IE5VTEwpCi0gICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgIGFzc2VydCAoUHlVbmljb2RlX0NoZWNrKGRlY29kZWQpKTsKLSAgICAgICAgY2hhcnNfZGVjb2RlZCArPSBQeVVuaWNvZGVfR0VUX1NJWkUoZGVjb2RlZCk7Ci0gICAgICAgIFB5X0RFQ1JFRihkZWNvZGVkKTsKLQorICAgICAgICBERUNPREVSX0RFQ09ERShpbnB1dCwgMSwgbik7CisgICAgICAgIC8qIFdlIGdvdCBuIGNoYXJzIGZvciAxIGJ5dGUgKi8KKyAgICAgICAgY2hhcnNfZGVjb2RlZCArPSBuOwogICAgICAgICBjb29raWUuYnl0ZXNfdG9fZmVlZCArPSAxOwotCi0gICAgICAgIHN0YXRlID0gUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3Moc2VsZi0+ZGVjb2RlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfUHlJT19zdHJfZ2V0c3RhdGUsIE5VTEwpOwotICAgICAgICBpZiAoc3RhdGUgPT0gTlVMTCkKLSAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZShzdGF0ZSwgIih5I2kpIiwgJmRlY19idWZmZXIsICZkZWNfYnVmZmVyX2xlbiwgJmRlY19mbGFncykpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihzdGF0ZSk7Ci0gICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgIH0KLSAgICAgICAgUHlfREVDUkVGKHN0YXRlKTsKKyAgICAgICAgREVDT0RFUl9HRVRTVEFURSgpOwogCiAgICAgICAgIGlmIChkZWNfYnVmZmVyX2xlbiA9PSAwICYmIGNoYXJzX2RlY29kZWQgPD0gY2hhcnNfdG9fc2tpcCkgewogICAgICAgICAgICAgLyogRGVjb2RlciBidWZmZXIgaXMgZW1wdHksIHNvIHRoaXMgaXMgYSBzYWZlIHN0YXJ0IHBvaW50LiAqLwpAQCAtMjI2NCwxMiArMjM0MCwxMiBAQAogICAgIH0KICAgICBpZiAoaW5wdXQgPT0gaW5wdXRfZW5kKSB7CiAgICAgICAgIC8qIFdlIGRpZG4ndCBnZXQgZW5vdWdoIGRlY29kZWQgZGF0YTsgc2lnbmFsIEVPRiB0byBnZXQgbW9yZS4gKi8KLSAgICAgICAgUHlPYmplY3QgKmRlY29kZWQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKAotICAgICAgICAgICAgc2VsZi0+ZGVjb2RlciwgImRlY29kZSIsICJ5aSIsICIiLCAvKiBmaW5hbCA9ICovIDEpOworICAgICAgICBQeU9iamVjdCAqZGVjb2RlZCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoCisgICAgICAgICAgICBzZWxmLT5kZWNvZGVyLCAmUHlJZF9kZWNvZGUsICJ5aSIsICIiLCAvKiBmaW5hbCA9ICovIDEpOwogICAgICAgICBpZiAoZGVjb2RlZCA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICBhc3NlcnQgKFB5VW5pY29kZV9DaGVjayhkZWNvZGVkKSk7Ci0gICAgICAgIGNoYXJzX2RlY29kZWQgKz0gUHlVbmljb2RlX0dFVF9TSVpFKGRlY29kZWQpOworICAgICAgICBjaGFyc19kZWNvZGVkICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGRlY29kZWQpOwogICAgICAgICBQeV9ERUNSRUYoZGVjb2RlZCk7CiAgICAgICAgIGNvb2tpZS5uZWVkX2VvZiA9IDE7CiAKQEAgLTIyODAsOSArMjM1Niw4IEBACiAgICAgICAgIH0KICAgICB9CiAKLSAgICAvKiBmaW5hbGx5ICovCi0gICAgUHlfWERFQ1JFRihwb3NvYmopOwotICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+ZGVjb2RlciwgInNldHN0YXRlIiwgIihPKSIsIHNhdmVkX3N0YXRlKTsKK2ZpbmFsbHk6CisgICAgcmVzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5kZWNvZGVyLCAmUHlJZF9zZXRzdGF0ZSwgIihPKSIsIHNhdmVkX3N0YXRlKTsKICAgICBQeV9ERUNSRUYoc2F2ZWRfc3RhdGUpOwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yMjkyLDEzICsyMzY3LDEyIEBACiAgICAgY29va2llLmNoYXJzX3RvX3NraXAgPSBQeV9TQUZFX0RPV05DQVNUKGNoYXJzX3RvX3NraXAsIFB5X3NzaXplX3QsIGludCk7CiAgICAgcmV0dXJuIHRleHRpb3dyYXBwZXJfYnVpbGRfY29va2llKCZjb29raWUpOwogCi0gIGZhaWw6Ci0gICAgUHlfWERFQ1JFRihwb3NvYmopOworZmFpbDoKICAgICBpZiAoc2F2ZWRfc3RhdGUpIHsKICAgICAgICAgUHlPYmplY3QgKnR5cGUsICp2YWx1ZSwgKnRyYWNlYmFjazsKICAgICAgICAgUHlFcnJfRmV0Y2goJnR5cGUsICZ2YWx1ZSwgJnRyYWNlYmFjayk7CiAKLSAgICAgICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5kZWNvZGVyLCAic2V0c3RhdGUiLCAiKE8pIiwgc2F2ZWRfc3RhdGUpOworICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmRlY29kZXIsICZQeUlkX3NldHN0YXRlLCAiKE8pIiwgc2F2ZWRfc3RhdGUpOwogICAgICAgICBQeV9ERUNSRUYoc2F2ZWRfc3RhdGUpOwogICAgICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTIzMzgsNyArMjQxMiw3IEBACiAgICAgcmVzID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIjxfaW8uVGV4dElPV3JhcHBlciIpOwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgbmFtZW9iaiA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoKFB5T2JqZWN0ICopIHNlbGYsICJuYW1lIik7CisgICAgbmFtZW9iaiA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0ICopIHNlbGYsICZQeUlkX25hbWUpOwogICAgIGlmIChuYW1lb2JqID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKQEAgLTIzNTQsNyArMjQyOCw3IEBACiAgICAgICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBtb2Rlb2JqID0gUHlPYmplY3RfR2V0QXR0clN0cmluZygoUHlPYmplY3QgKikgc2VsZiwgIm1vZGUiKTsKKyAgICBtb2Rlb2JqID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKikgc2VsZiwgJlB5SWRfbW9kZSk7CiAgICAgaWYgKG1vZGVvYmogPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwpAQCAtMjM4NiwzNSArMjQ2MCwzNSBAQAogdGV4dGlvd3JhcHBlcl9maWxlbm8odGV4dGlvICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBDSEVDS19JTklUSUFMSVpFRChzZWxmKTsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5idWZmZXIsICJmaWxlbm8iLCBOVUxMKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5idWZmZXIsICZQeUlkX2ZpbGVubywgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiB0ZXh0aW93cmFwcGVyX3NlZWthYmxlKHRleHRpbyAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgQ0hFQ0tfSU5JVElBTElaRUQoc2VsZik7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+YnVmZmVyLCAic2Vla2FibGUiLCBOVUxMKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5idWZmZXIsICZQeUlkX3NlZWthYmxlLCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIHRleHRpb3dyYXBwZXJfcmVhZGFibGUodGV4dGlvICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBDSEVDS19JTklUSUFMSVpFRChzZWxmKTsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5idWZmZXIsICJyZWFkYWJsZSIsIE5VTEwpOworICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmJ1ZmZlciwgJlB5SWRfcmVhZGFibGUsIE5VTEwpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogdGV4dGlvd3JhcHBlcl93cml0YWJsZSh0ZXh0aW8gKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIENIRUNLX0lOSVRJQUxJWkVEKHNlbGYpOwotICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYtPmJ1ZmZlciwgIndyaXRhYmxlIiwgTlVMTCk7CisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+YnVmZmVyLCAmUHlJZF93cml0YWJsZSwgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiB0ZXh0aW93cmFwcGVyX2lzYXR0eSh0ZXh0aW8gKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIENIRUNLX0lOSVRJQUxJWkVEKHNlbGYpOwotICAgIHJldHVybiBQeU9iamVjdF9DYWxsTWV0aG9kKHNlbGYtPmJ1ZmZlciwgImlzYXR0eSIsIE5VTEwpOworICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmJ1ZmZlciwgJlB5SWRfaXNhdHR5LCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI0MzMsNyArMjUwNyw3IEBACiAgICAgc2VsZi0+dGVsbGluZyA9IHNlbGYtPnNlZWthYmxlOwogICAgIGlmIChfdGV4dGlvd3JhcHBlcl93cml0ZWZsdXNoKHNlbGYpIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+YnVmZmVyLCAiZmx1c2giLCBOVUxMKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5idWZmZXIsICZQeUlkX2ZsdXNoLCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI0NTYsMjAgKzI1MzAsMjAgQEAKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIGlmIChzZWxmLT5kZWFsbG9jYXRpbmcpIHsKLSAgICAgICAgICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc2VsZi0+YnVmZmVyLCAiX2RlYWxsb2Nfd2FybiIsICJPIiwgc2VsZik7CisgICAgICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHNlbGYtPmJ1ZmZlciwgJlB5SWRfX2RlYWxsb2Nfd2FybiwgIk8iLCBzZWxmKTsKICAgICAgICAgICAgIGlmIChyZXMpCiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcyk7CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgfQotICAgICAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKChQeU9iamVjdCAqKXNlbGYsICJmbHVzaCIsIE5VTEwpOworICAgICAgICByZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCAqKXNlbGYsICZQeUlkX2ZsdXNoLCBOVUxMKTsKICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKSB7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgICAgICBlbHNlCiAgICAgICAgICAgICBQeV9ERUNSRUYocmVzKTsKIAotICAgICAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5idWZmZXIsICJjbG9zZSIsIE5VTEwpOworICAgICAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLT5idWZmZXIsICZQeUlkX2Nsb3NlLCBOVUxMKTsKICAgICB9CiB9CiAKQEAgLTI0OTcsMTAgKzI1NzEsMTAgQEAKICAgICAgICAgfQogICAgIH0KIAotICAgIGlmIChsaW5lID09IE5VTEwpCisgICAgaWYgKGxpbmUgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkobGluZSkgPT0gLTEpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShsaW5lKSA9PSAwKSB7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGxpbmUpID09IDApIHsKICAgICAgICAgLyogUmVhY2hlZCBFT0Ygb3Igd291bGQgaGF2ZSBibG9ja2VkICovCiAgICAgICAgIFB5X0RFQ1JFRihsaW5lKTsKICAgICAgICAgUHlfQ0xFQVIoc2VsZi0+c25hcHNob3QpOwpAQCAtMjUxNSw3ICsyNTg5LDcgQEAKIHRleHRpb3dyYXBwZXJfbmFtZV9nZXQodGV4dGlvICpzZWxmLCB2b2lkICpjb250ZXh0KQogewogICAgIENIRUNLX0lOSVRJQUxJWkVEKHNlbGYpOwotICAgIHJldHVybiBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHNlbGYtPmJ1ZmZlciwgIm5hbWUiKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0dldEF0dHJJZChzZWxmLT5idWZmZXIsICZQeUlkX25hbWUpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fanNvbi5jIGIvTW9kdWxlcy9fanNvbi5jCmluZGV4IDA5MjQ4NzMuLmNhZmQ1YTkgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2pzb24uYworKysgYi9Nb2R1bGVzL19qc29uLmMKQEAgLTc2LDYgKzc2LDIxIEBACiB9OwogCiBzdGF0aWMgUHlPYmplY3QgKgoram9pbl9saXN0X3VuaWNvZGUoUHlPYmplY3QgKmxzdCkKK3sKKyAgICAvKiByZXR1cm4gdScnLmpvaW4obHN0KSAqLworICAgIHN0YXRpYyBQeU9iamVjdCAqc2VwID0gTlVMTDsKKyAgICBpZiAoc2VwID09IE5VTEwpIHsKKyAgICAgICAgc2VwID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKCIiLCAwKTsKKyAgICAgICAgaWYgKHNlcCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHJldHVybiBQeVVuaWNvZGVfSm9pbihzZXAsIGxzdCk7Cit9CisKKy8qIEZvcndhcmQgZGVjbHMgKi8KKworc3RhdGljIFB5T2JqZWN0ICoKIGFzY2lpX2VzY2FwZV91bmljb2RlKFB5T2JqZWN0ICpweXN0cik7CiBzdGF0aWMgUHlPYmplY3QgKgogcHlfZW5jb2RlX2Jhc2VzdHJpbmdfYXNjaWkoUHlPYmplY3QqIHNlbGYgVU5VU0VELCBQeU9iamVjdCAqcHlzdHIpOwpAQCAtMTAxLDExICsxMTYsMTEgQEAKIHN0YXRpYyBpbnQKIGVuY29kZXJfY2xlYXIoUHlPYmplY3QgKnNlbGYpOwogc3RhdGljIGludAotZW5jb2Rlcl9saXN0ZW5jb2RlX2xpc3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBQeU9iamVjdCAqcnZhbCwgUHlPYmplY3QgKnNlcSwgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWwpOworZW5jb2Rlcl9saXN0ZW5jb2RlX2xpc3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBfUHlBY2N1ICphY2MsIFB5T2JqZWN0ICpzZXEsIFB5X3NzaXplX3QgaW5kZW50X2xldmVsKTsKIHN0YXRpYyBpbnQKLWVuY29kZXJfbGlzdGVuY29kZV9vYmooUHlFbmNvZGVyT2JqZWN0ICpzLCBQeU9iamVjdCAqcnZhbCwgUHlPYmplY3QgKm9iaiwgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWwpOworZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihQeUVuY29kZXJPYmplY3QgKnMsIF9QeUFjY3UgKmFjYywgUHlPYmplY3QgKm9iaiwgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWwpOwogc3RhdGljIGludAotZW5jb2Rlcl9saXN0ZW5jb2RlX2RpY3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBQeU9iamVjdCAqcnZhbCwgUHlPYmplY3QgKmRjdCwgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWwpOworZW5jb2Rlcl9saXN0ZW5jb2RlX2RpY3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBfUHlBY2N1ICphY2MsIFB5T2JqZWN0ICpkY3QsIFB5X3NzaXplX3QgaW5kZW50X2xldmVsKTsKIHN0YXRpYyBQeU9iamVjdCAqCiBfZW5jb2RlZF9jb25zdChQeU9iamVjdCAqb2JqKTsKIHN0YXRpYyB2b2lkCkBAIC0xMjIsMTMgKzEzNyw2IEBACiAjZGVmaW5lIFNfQ0hBUihjKSAoYyA+PSAnICcgJiYgYyA8PSAnficgJiYgYyAhPSAnXFwnICYmIGMgIT0gJyInKQogI2RlZmluZSBJU19XSElURVNQQUNFKGMpICgoKGMpID09ICcgJykgfHwgKChjKSA9PSAnXHQnKSB8fCAoKGMpID09ICdcbicpIHx8ICgoYykgPT0gJ1xyJykpCiAKLSNkZWZpbmUgTUlOX0VYUEFOU0lPTiA2Ci0jaWZkZWYgUHlfVU5JQ09ERV9XSURFCi0jZGVmaW5lIE1BWF9FWFBBTlNJT04gKDIgKiBNSU5fRVhQQU5TSU9OKQotI2Vsc2UKLSNkZWZpbmUgTUFYX0VYUEFOU0lPTiBNSU5fRVhQQU5TSU9OCi0jZW5kaWYKLQogc3RhdGljIGludAogX2NvbnZlcnRQeUludF9Bc1NzaXplX3QoUHlPYmplY3QgKm8sIFB5X3NzaXplX3QgKnNpemVfcHRyKQogewpAQCAtMTQ3LDcgKzE1NSw3IEBACiB9CiAKIHN0YXRpYyBQeV9zc2l6ZV90Ci1hc2NpaV9lc2NhcGVfdW5pY2hhcihQeV9VTklDT0RFIGMsIFB5X1VOSUNPREUgKm91dHB1dCwgUHlfc3NpemVfdCBjaGFycykKK2FzY2lpX2VzY2FwZV91bmljaGFyKFB5X1VDUzQgYywgdW5zaWduZWQgY2hhciAqb3V0cHV0LCBQeV9zc2l6ZV90IGNoYXJzKQogewogICAgIC8qIEVzY2FwZSB1bmljb2RlIGNvZGUgcG9pbnQgYyB0byBBU0NJSSBlc2NhcGUgc2VxdWVuY2VzCiAgICAgaW4gY2hhciAqb3V0cHV0LiBvdXRwdXQgbXVzdCBoYXZlIGF0IGxlYXN0IDEyIGJ5dGVzIHVudXNlZCB0bwpAQCAtMTYyLDI1ICsxNzAsMjMgQEAKICAgICAgICAgY2FzZSAnXHInOiBvdXRwdXRbY2hhcnMrK10gPSAncic7IGJyZWFrOwogICAgICAgICBjYXNlICdcdCc6IG91dHB1dFtjaGFycysrXSA9ICd0JzsgYnJlYWs7CiAgICAgICAgIGRlZmF1bHQ6Ci0jaWZkZWYgUHlfVU5JQ09ERV9XSURFCiAgICAgICAgICAgICBpZiAoYyA+PSAweDEwMDAwKSB7CiAgICAgICAgICAgICAgICAgLyogVVRGLTE2IHN1cnJvZ2F0ZSBwYWlyICovCi0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSB2ID0gYyAtIDB4MTAwMDA7CisgICAgICAgICAgICAgICAgUHlfVUNTNCB2ID0gYyAtIDB4MTAwMDA7CiAgICAgICAgICAgICAgICAgYyA9IDB4ZDgwMCB8ICgodiA+PiAxMCkgJiAweDNmZik7CiAgICAgICAgICAgICAgICAgb3V0cHV0W2NoYXJzKytdID0gJ3UnOwotICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9ICIwMTIzNDU2Nzg5YWJjZGVmIlsoYyA+PiAxMikgJiAweGZdOwotICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9ICIwMTIzNDU2Nzg5YWJjZGVmIlsoYyA+PiAgOCkgJiAweGZdOwotICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9ICIwMTIzNDU2Nzg5YWJjZGVmIlsoYyA+PiAgNCkgJiAweGZdOwotICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9ICIwMTIzNDU2Nzg5YWJjZGVmIlsoYyAgICAgICkgJiAweGZdOworICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyA+PiAxMikgJiAweGZdOworICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyA+PiAgOCkgJiAweGZdOworICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyA+PiAgNCkgJiAweGZdOworICAgICAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyAgICAgICkgJiAweGZdOwogICAgICAgICAgICAgICAgIGMgPSAweGRjMDAgfCAodiAmIDB4M2ZmKTsKICAgICAgICAgICAgICAgICBvdXRwdXRbY2hhcnMrK10gPSAnXFwnOwogICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgICAgICBvdXRwdXRbY2hhcnMrK10gPSAndSc7Ci0gICAgICAgICAgICBvdXRwdXRbY2hhcnMrK10gPSAiMDEyMzQ1Njc4OWFiY2RlZiJbKGMgPj4gMTIpICYgMHhmXTsKLSAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9ICIwMTIzNDU2Nzg5YWJjZGVmIlsoYyA+PiAgOCkgJiAweGZdOwotICAgICAgICAgICAgb3V0cHV0W2NoYXJzKytdID0gIjAxMjM0NTY3ODlhYmNkZWYiWyhjID4+ICA0KSAmIDB4Zl07Ci0gICAgICAgICAgICBvdXRwdXRbY2hhcnMrK10gPSAiMDEyMzQ1Njc4OWFiY2RlZiJbKGMgICAgICApICYgMHhmXTsKKyAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyA+PiAxMikgJiAweGZdOworICAgICAgICAgICAgb3V0cHV0W2NoYXJzKytdID0gUHlfaGV4ZGlnaXRzWyhjID4+ICA4KSAmIDB4Zl07CisgICAgICAgICAgICBvdXRwdXRbY2hhcnMrK10gPSBQeV9oZXhkaWdpdHNbKGMgPj4gIDQpICYgMHhmXTsKKyAgICAgICAgICAgIG91dHB1dFtjaGFycysrXSA9IFB5X2hleGRpZ2l0c1soYyAgICAgICkgJiAweGZdOwogICAgIH0KICAgICByZXR1cm4gY2hhcnM7CiB9CkBAIC0xOTIsNTQgKzE5OCw1MiBAQAogICAgIFB5X3NzaXplX3QgaTsKICAgICBQeV9zc2l6ZV90IGlucHV0X2NoYXJzOwogICAgIFB5X3NzaXplX3Qgb3V0cHV0X3NpemU7Ci0gICAgUHlfc3NpemVfdCBtYXhfb3V0cHV0X3NpemU7CiAgICAgUHlfc3NpemVfdCBjaGFyczsKICAgICBQeU9iamVjdCAqcnZhbDsKLSAgICBQeV9VTklDT0RFICpvdXRwdXQ7Ci0gICAgUHlfVU5JQ09ERSAqaW5wdXRfdW5pY29kZTsKKyAgICB2b2lkICppbnB1dDsKKyAgICB1bnNpZ25lZCBjaGFyICpvdXRwdXQ7CisgICAgaW50IGtpbmQ7CiAKLSAgICBpbnB1dF9jaGFycyA9IFB5VW5pY29kZV9HRVRfU0laRShweXN0cik7Ci0gICAgaW5wdXRfdW5pY29kZSA9IFB5VW5pY29kZV9BU19VTklDT0RFKHB5c3RyKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHB5c3RyKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICAvKiBPbmUgY2hhciBpbnB1dCBjYW4gYmUgdXAgdG8gNiBjaGFycyBvdXRwdXQsIGVzdGltYXRlIDQgb2YgdGhlc2UgKi8KLSAgICBvdXRwdXRfc2l6ZSA9IDIgKyAoTUlOX0VYUEFOU0lPTiAqIDQpICsgaW5wdXRfY2hhcnM7Ci0gICAgbWF4X291dHB1dF9zaXplID0gMiArIChpbnB1dF9jaGFycyAqIE1BWF9FWFBBTlNJT04pOwotICAgIHJ2YWwgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgb3V0cHV0X3NpemUpOworICAgIGlucHV0X2NoYXJzID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocHlzdHIpOworICAgIGlucHV0ID0gUHlVbmljb2RlX0RBVEEocHlzdHIpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChweXN0cik7CisKKyAgICAvKiBDb21wdXRlIHRoZSBvdXRwdXQgc2l6ZSAqLworICAgIGZvciAoaSA9IDAsIG91dHB1dF9zaXplID0gMjsgaSA8IGlucHV0X2NoYXJzOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgaW5wdXQsIGkpOworICAgICAgICBpZiAoU19DSEFSKGMpKQorICAgICAgICAgICAgb3V0cHV0X3NpemUrKzsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBzd2l0Y2goYykgeworICAgICAgICAgICAgY2FzZSAnXFwnOiBjYXNlICciJzogY2FzZSAnXGInOiBjYXNlICdcZic6CisgICAgICAgICAgICBjYXNlICdcbic6IGNhc2UgJ1xyJzogY2FzZSAnXHQnOgorICAgICAgICAgICAgICAgIG91dHB1dF9zaXplICs9IDI7IGJyZWFrOworICAgICAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgICAgICBvdXRwdXRfc2l6ZSArPSBjID49IDB4MTAwMDAgPyAxMiA6IDY7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisKKyAgICBydmFsID0gUHlVbmljb2RlX05ldyhvdXRwdXRfc2l6ZSwgMTI3KTsKICAgICBpZiAocnZhbCA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBvdXRwdXQgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShydmFsKTsKKyAgICBvdXRwdXQgPSBQeVVuaWNvZGVfMUJZVEVfREFUQShydmFsKTsKICAgICBjaGFycyA9IDA7CiAgICAgb3V0cHV0W2NoYXJzKytdID0gJyInOwogICAgIGZvciAoaSA9IDA7IGkgPCBpbnB1dF9jaGFyczsgaSsrKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgYyA9IGlucHV0X3VuaWNvZGVbaV07CisgICAgICAgIFB5X1VDUzQgYyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGlucHV0LCBpKTsKICAgICAgICAgaWYgKFNfQ0hBUihjKSkgewogICAgICAgICAgICAgb3V0cHV0W2NoYXJzKytdID0gYzsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIGNoYXJzID0gYXNjaWlfZXNjYXBlX3VuaWNoYXIoYywgb3V0cHV0LCBjaGFycyk7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKG91dHB1dF9zaXplIC0gY2hhcnMgPCAoMSArIE1BWF9FWFBBTlNJT04pKSB7Ci0gICAgICAgICAgICAvKiBUaGVyZSdzIG1vcmUgdGhhbiBmb3VyLCBzbyBsZXQncyByZXNpemUgYnkgYSBsb3QgKi8KLSAgICAgICAgICAgIFB5X3NzaXplX3QgbmV3X291dHB1dF9zaXplID0gb3V0cHV0X3NpemUgKiAyOwotICAgICAgICAgICAgLyogVGhpcyBpcyBhbiB1cHBlciBib3VuZCAqLwotICAgICAgICAgICAgaWYgKG5ld19vdXRwdXRfc2l6ZSA+IG1heF9vdXRwdXRfc2l6ZSkgewotICAgICAgICAgICAgICAgIG5ld19vdXRwdXRfc2l6ZSA9IG1heF9vdXRwdXRfc2l6ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIE1ha2Ugc3VyZSB0aGF0IHRoZSBvdXRwdXQgc2l6ZSBjaGFuZ2VkIGJlZm9yZSByZXNpemluZyAqLwotICAgICAgICAgICAgaWYgKG5ld19vdXRwdXRfc2l6ZSAhPSBvdXRwdXRfc2l6ZSkgewotICAgICAgICAgICAgICAgIG91dHB1dF9zaXplID0gbmV3X291dHB1dF9zaXplOwotICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUmVzaXplKCZydmFsLCBvdXRwdXRfc2l6ZSkgPT0gLTEpIHsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIG91dHB1dCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJ2YWwpOwotICAgICAgICAgICAgfQotICAgICAgICB9CiAgICAgfQogICAgIG91dHB1dFtjaGFycysrXSA9ICciJzsKLSAgICBpZiAoUHlVbmljb2RlX1Jlc2l6ZSgmcnZhbCwgY2hhcnMpID09IC0xKSB7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KICAgICByZXR1cm4gcnZhbDsKIH0KIApAQCAtMjY3LDE5ICsyNzEsNiBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotam9pbl9saXN0X3VuaWNvZGUoUHlPYmplY3QgKmxzdCkKLXsKLSAgICAvKiByZXR1cm4gdScnLmpvaW4obHN0KSAqLwotICAgIHN0YXRpYyBQeU9iamVjdCAqc2VwID0gTlVMTDsKLSAgICBpZiAoc2VwID09IE5VTEwpIHsKLSAgICAgICAgc2VwID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKCIiLCAwKTsKLSAgICAgICAgaWYgKHNlcCA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIHJldHVybiBQeVVuaWNvZGVfSm9pbihzZXAsIGxzdCk7Ci19Ci0KLXN0YXRpYyBQeU9iamVjdCAqCiBfYnVpbGRfcnZhbF9pbmRleF90dXBsZShQeU9iamVjdCAqcnZhbCwgUHlfc3NpemVfdCBpZHgpIHsKICAgICAvKiByZXR1cm4gKHJ2YWwsIGlkeCkgdHVwbGUsIHN0ZWFsaW5nIHJlZmVyZW5jZSB0byBydmFsICovCiAgICAgUHlPYmplY3QgKnRwbDsKQEAgLTMzMywyMiArMzI0LDMwIEBACiAgICAgUmV0dXJuIHZhbHVlIGlzIGEgbmV3IFB5VW5pY29kZQogICAgICovCiAgICAgUHlPYmplY3QgKnJ2YWwgPSBOVUxMOwotICAgIFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHB5c3RyKTsKKyAgICBQeV9zc2l6ZV90IGxlbjsKICAgICBQeV9zc2l6ZV90IGJlZ2luID0gZW5kIC0gMTsKLSAgICBQeV9zc2l6ZV90IG5leHQgPSBiZWdpbjsKLSAgICBjb25zdCBQeV9VTklDT0RFICpidWYgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShweXN0cik7CisgICAgUHlfc3NpemVfdCBuZXh0IC8qID0gYmVnaW4gKi87CisgICAgY29uc3Qgdm9pZCAqYnVmOworICAgIGludCBraW5kOwogICAgIFB5T2JqZWN0ICpjaHVua3MgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpjaHVuayA9IE5VTEw7CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHB5c3RyKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChweXN0cik7CisgICAgYnVmID0gUHlVbmljb2RlX0RBVEEocHlzdHIpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChweXN0cik7CisKICAgICBpZiAoZW5kIDwgMCB8fCBsZW4gPD0gZW5kKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiZW5kIGlzIG91dCBvZiBib3VuZHMiKTsKICAgICAgICAgZ290byBiYWlsOwogICAgIH0KICAgICB3aGlsZSAoMSkgewogICAgICAgICAvKiBGaW5kIHRoZSBlbmQgb2YgdGhlIHN0cmluZyBvciB0aGUgbmV4dCBlc2NhcGUgKi8KLSAgICAgICAgUHlfVU5JQ09ERSBjID0gMDsKKyAgICAgICAgUHlfVUNTNCBjID0gMDsKICAgICAgICAgZm9yIChuZXh0ID0gZW5kOyBuZXh0IDwgbGVuOyBuZXh0KyspIHsKLSAgICAgICAgICAgIGMgPSBidWZbbmV4dF07CisgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgYnVmLCBuZXh0KTsKICAgICAgICAgICAgIGlmIChjID09ICciJyB8fCBjID09ICdcXCcpIHsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KQEAgLTM2NCw3ICszNjMsMTAgQEAKICAgICAgICAgLyogUGljayB1cCB0aGlzIGNodW5rIGlmIGl0J3Mgbm90IHplcm8gbGVuZ3RoICovCiAgICAgICAgIGlmIChuZXh0ICE9IGVuZCkgewogICAgICAgICAgICAgQVBQRU5EX09MRF9DSFVOSwotICAgICAgICAgICAgY2h1bmsgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoJmJ1ZltlbmRdLCBuZXh0IC0gZW5kKTsKKyAgICAgICAgICAgICAgICBjaHVuayA9IFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoCisgICAgICAgICAgICAgICAgICAgIGtpbmQsCisgICAgICAgICAgICAgICAgICAgIChjaGFyKilidWYgKyBraW5kICogZW5kLAorICAgICAgICAgICAgICAgICAgICBuZXh0IC0gZW5kKTsKICAgICAgICAgICAgIGlmIChjaHVuayA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICAgICAgfQpAQCAtMzc4LDcgKzM4MCw3IEBACiAgICAgICAgICAgICByYWlzZV9lcnJtc2coIlVudGVybWluYXRlZCBzdHJpbmcgc3RhcnRpbmcgYXQiLCBweXN0ciwgYmVnaW4pOwogICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICB9Ci0gICAgICAgIGMgPSBidWZbbmV4dF07CisgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBidWYsIG5leHQpOwogICAgICAgICBpZiAoYyAhPSAndScpIHsKICAgICAgICAgICAgIC8qIE5vbi11bmljb2RlIGJhY2tzbGFzaCBlc2NhcGVzICovCiAgICAgICAgICAgICBlbmQgPSBuZXh0ICsgMTsKQEAgLTQwOCw3ICs0MTAsNyBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgLyogRGVjb2RlIDQgaGV4IGRpZ2l0cyAqLwogICAgICAgICAgICAgZm9yICg7IG5leHQgPCBlbmQ7IG5leHQrKykgewotICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgZGlnaXQgPSBidWZbbmV4dF07CisgICAgICAgICAgICAgICAgUHlfVUNTNCBkaWdpdCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGJ1ZiwgbmV4dCk7CiAgICAgICAgICAgICAgICAgYyA8PD0gNDsKICAgICAgICAgICAgICAgICBzd2l0Y2ggKGRpZ2l0KSB7CiAgICAgICAgICAgICAgICAgICAgIGNhc2UgJzAnOiBjYXNlICcxJzogY2FzZSAnMic6IGNhc2UgJzMnOiBjYXNlICc0JzoKQEAgLTQyNSwyMiArNDI3LDIyIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotI2lmZGVmIFB5X1VOSUNPREVfV0lERQogICAgICAgICAgICAgLyogU3Vycm9nYXRlIHBhaXIgKi8KICAgICAgICAgICAgIGlmICgoYyAmIDB4ZmMwMCkgPT0gMHhkODAwKSB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjMiA9IDA7CisgICAgICAgICAgICAgICAgUHlfVUNTNCBjMiA9IDA7CiAgICAgICAgICAgICAgICAgaWYgKGVuZCArIDYgPj0gbGVuKSB7CiAgICAgICAgICAgICAgICAgICAgIHJhaXNlX2Vycm1zZygiVW5wYWlyZWQgaGlnaCBzdXJyb2dhdGUiLCBweXN0ciwgZW5kIC0gNSk7CiAgICAgICAgICAgICAgICAgICAgIGdvdG8gYmFpbDsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKGJ1ZltuZXh0KytdICE9ICdcXCcgfHwgYnVmW25leHQrK10gIT0gJ3UnKSB7CisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIGJ1ZiwgbmV4dCsrKSAhPSAnXFwnIHx8CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIGJ1ZiwgbmV4dCsrKSAhPSAndScpIHsKICAgICAgICAgICAgICAgICAgICAgcmFpc2VfZXJybXNnKCJVbnBhaXJlZCBoaWdoIHN1cnJvZ2F0ZSIsIHB5c3RyLCBlbmQgLSA1KTsKICAgICAgICAgICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbmQgKz0gNjsKICAgICAgICAgICAgICAgICAvKiBEZWNvZGUgNCBoZXggZGlnaXRzICovCiAgICAgICAgICAgICAgICAgZm9yICg7IG5leHQgPCBlbmQ7IG5leHQrKykgewotICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFIGRpZ2l0ID0gYnVmW25leHRdOworICAgICAgICAgICAgICAgICAgICBQeV9VQ1M0IGRpZ2l0ID0gUHlVbmljb2RlX1JFQUQoa2luZCwgYnVmLCBuZXh0KTsKICAgICAgICAgICAgICAgICAgICAgYzIgPDw9IDQ7CiAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoZGlnaXQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJzAnOiBjYXNlICcxJzogY2FzZSAnMic6IGNhc2UgJzMnOiBjYXNlICc0JzoKQEAgLTQ2NywxMCArNDY5LDkgQEAKICAgICAgICAgICAgICAgICByYWlzZV9lcnJtc2coIlVucGFpcmVkIGxvdyBzdXJyb2dhdGUiLCBweXN0ciwgZW5kIC0gNSk7CiAgICAgICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgIH0KICAgICAgICAgQVBQRU5EX09MRF9DSFVOSwotICAgICAgICBjaHVuayA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgmYywgMSk7CisgICAgICAgIGNodW5rID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwgJmMsIDEpOwogICAgICAgICBpZiAoY2h1bmsgPT0gTlVMTCkgewogICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICB9CkBAIC02MDgsOCArNjA5LDkgQEAKIAogICAgIFJldHVybnMgYSBuZXcgUHlPYmplY3QgKHVzdWFsbHkgYSBkaWN0LCBidXQgb2JqZWN0X2hvb2sgY2FuIGNoYW5nZSB0aGF0KQogICAgICovCi0gICAgUHlfVU5JQ09ERSAqc3RyID0gUHlVbmljb2RlX0FTX1VOSUNPREUocHlzdHIpOwotICAgIFB5X3NzaXplX3QgZW5kX2lkeCA9IFB5VW5pY29kZV9HRVRfU0laRShweXN0cikgLSAxOworICAgIHZvaWQgKnN0cjsKKyAgICBpbnQga2luZDsKKyAgICBQeV9zc2l6ZV90IGVuZF9pZHg7CiAgICAgUHlPYmplY3QgKnZhbCA9IE5VTEw7CiAgICAgUHlPYmplY3QgKnJ2YWwgPSBOVUxMOwogICAgIFB5T2JqZWN0ICprZXkgPSBOVUxMOwpAQCAtNjE3LDYgKzYxOSwxMyBAQAogICAgIGludCBoYXNfcGFpcnNfaG9vayA9IChzLT5vYmplY3RfcGFpcnNfaG9vayAhPSBQeV9Ob25lKTsKICAgICBQeV9zc2l6ZV90IG5leHRfaWR4OwogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShweXN0cikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgc3RyID0gUHlVbmljb2RlX0RBVEEocHlzdHIpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChweXN0cik7CisgICAgZW5kX2lkeCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHB5c3RyKSAtIDE7CisKICAgICBpZiAoaGFzX3BhaXJzX2hvb2spCiAgICAgICAgIHJ2YWwgPSBQeUxpc3RfTmV3KDApOwogICAgIGVsc2UKQEAgLTYyNSwxNSArNjM0LDE1IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgLyogc2tpcCB3aGl0ZXNwYWNlIGFmdGVyIHsgKi8KLSAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgSVNfV0hJVEVTUEFDRShzdHJbaWR4XSkpIGlkeCsrOworICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsc3RyLCBpZHgpKSkgaWR4Kys7CiAKICAgICAvKiBvbmx5IGxvb3AgaWYgdGhlIG9iamVjdCBpcyBub24tZW1wdHkgKi8KLSAgICBpZiAoaWR4IDw9IGVuZF9pZHggJiYgc3RyW2lkeF0gIT0gJ30nKSB7CisgICAgaWYgKGlkeCA8PSBlbmRfaWR4ICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSAhPSAnfScpIHsKICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4KSB7CiAgICAgICAgICAgICBQeU9iamVjdCAqbWVtb2tleTsKIAogICAgICAgICAgICAgLyogcmVhZCBrZXkgKi8KLSAgICAgICAgICAgIGlmIChzdHJbaWR4XSAhPSAnIicpIHsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgIT0gJyInKSB7CiAgICAgICAgICAgICAgICAgcmFpc2VfZXJybXNnKCJFeHBlY3RpbmcgcHJvcGVydHkgbmFtZSIsIHB5c3RyLCBpZHgpOwogICAgICAgICAgICAgICAgIGdvdG8gYmFpbDsKICAgICAgICAgICAgIH0KQEAgLTY1MywxMyArNjYyLDEzIEBACiAgICAgICAgICAgICBpZHggPSBuZXh0X2lkeDsKIAogICAgICAgICAgICAgLyogc2tpcCB3aGl0ZXNwYWNlIGJldHdlZW4ga2V5IGFuZCA6IGRlbGltaXRlciwgcmVhZCA6LCBza2lwIHdoaXRlc3BhY2UgKi8KLSAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKHN0cltpZHhdKSkgaWR4Kys7Ci0gICAgICAgICAgICBpZiAoaWR4ID4gZW5kX2lkeCB8fCBzdHJbaWR4XSAhPSAnOicpIHsKKyAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkpIGlkeCsrOworICAgICAgICAgICAgaWYgKGlkeCA+IGVuZF9pZHggfHwgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpICE9ICc6JykgewogICAgICAgICAgICAgICAgIHJhaXNlX2Vycm1zZygiRXhwZWN0aW5nIDogZGVsaW1pdGVyIiwgcHlzdHIsIGlkeCk7CiAgICAgICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWR4Kys7Ci0gICAgICAgICAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgSVNfV0hJVEVTUEFDRShzdHJbaWR4XSkpIGlkeCsrOworICAgICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4ICYmIElTX1dISVRFU1BBQ0UoUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpKSkgaWR4Kys7CiAKICAgICAgICAgICAgIC8qIHJlYWQgYW55IEpTT04gdGVybSAqLwogICAgICAgICAgICAgdmFsID0gc2Nhbl9vbmNlX3VuaWNvZGUocywgcHlzdHIsIGlkeCwgJm5leHRfaWR4KTsKQEAgLTY4NywyNiArNjk2LDI2IEBACiAgICAgICAgICAgICBpZHggPSBuZXh0X2lkeDsKIAogICAgICAgICAgICAgLyogc2tpcCB3aGl0ZXNwYWNlIGJlZm9yZSB9IG9yICwgKi8KLSAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKHN0cltpZHhdKSkgaWR4Kys7CisgICAgICAgICAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgSVNfV0hJVEVTUEFDRShQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkpKSBpZHgrKzsKIAogICAgICAgICAgICAgLyogYmFpbCBpZiB0aGUgb2JqZWN0IGlzIGNsb3NlZCBvciB3ZSBkaWRuJ3QgZ2V0IHRoZSAsIGRlbGltaXRlciAqLwogICAgICAgICAgICAgaWYgKGlkeCA+IGVuZF9pZHgpIGJyZWFrOwotICAgICAgICAgICAgaWYgKHN0cltpZHhdID09ICd9JykgeworICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA9PSAnfScpIHsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgaWYgKHN0cltpZHhdICE9ICcsJykgeworICAgICAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpICE9ICcsJykgewogICAgICAgICAgICAgICAgIHJhaXNlX2Vycm1zZygiRXhwZWN0aW5nICwgZGVsaW1pdGVyIiwgcHlzdHIsIGlkeCk7CiAgICAgICAgICAgICAgICAgZ290byBiYWlsOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWR4Kys7CiAKICAgICAgICAgICAgIC8qIHNraXAgd2hpdGVzcGFjZSBhZnRlciAsIGRlbGltaXRlciAqLwotICAgICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4ICYmIElTX1dISVRFU1BBQ0Uoc3RyW2lkeF0pKSBpZHgrKzsKKyAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkpIGlkeCsrOwogICAgICAgICB9CiAgICAgfQogCiAgICAgLyogdmVyaWZ5IHRoYXQgaWR4IDwgZW5kX2lkeCwgc3RyW2lkeF0gc2hvdWxkIGJlICd9JyAqLwotICAgIGlmIChpZHggPiBlbmRfaWR4IHx8IHN0cltpZHhdICE9ICd9JykgeworICAgIGlmIChpZHggPiBlbmRfaWR4IHx8IFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSAhPSAnfScpIHsKICAgICAgICAgcmFpc2VfZXJybXNnKCJFeHBlY3Rpbmcgb2JqZWN0IiwgcHlzdHIsIGVuZF9pZHgpOwogICAgICAgICBnb3RvIGJhaWw7CiAgICAgfQpAQCAtNzQyLDE5ICs3NTEsMjcgQEAKIAogICAgIFJldHVybnMgYSBuZXcgUHlMaXN0CiAgICAgKi8KLSAgICBQeV9VTklDT0RFICpzdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShweXN0cik7Ci0gICAgUHlfc3NpemVfdCBlbmRfaWR4ID0gUHlVbmljb2RlX0dFVF9TSVpFKHB5c3RyKSAtIDE7CisgICAgdm9pZCAqc3RyOworICAgIGludCBraW5kOworICAgIFB5X3NzaXplX3QgZW5kX2lkeDsKICAgICBQeU9iamVjdCAqdmFsID0gTlVMTDsKICAgICBQeU9iamVjdCAqcnZhbCA9IFB5TGlzdF9OZXcoMCk7CiAgICAgUHlfc3NpemVfdCBuZXh0X2lkeDsKICAgICBpZiAocnZhbCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocHlzdHIpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHN0ciA9IFB5VW5pY29kZV9EQVRBKHB5c3RyKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQocHlzdHIpOworICAgIGVuZF9pZHggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChweXN0cikgLSAxOworCiAgICAgLyogc2tpcCB3aGl0ZXNwYWNlIGFmdGVyIFsgKi8KLSAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgSVNfV0hJVEVTUEFDRShzdHJbaWR4XSkpIGlkeCsrOworICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkpIGlkeCsrOwogCiAgICAgLyogb25seSBsb29wIGlmIHRoZSBhcnJheSBpcyBub24tZW1wdHkgKi8KLSAgICBpZiAoaWR4IDw9IGVuZF9pZHggJiYgc3RyW2lkeF0gIT0gJ10nKSB7CisgICAgaWYgKGlkeCA8PSBlbmRfaWR4ICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSAhPSAnXScpIHsKICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4KSB7CiAKICAgICAgICAgICAgIC8qIHJlYWQgYW55IEpTT04gdGVybSAgKi8KQEAgLTc2OSwyNiArNzg2LDI2IEBACiAgICAgICAgICAgICBpZHggPSBuZXh0X2lkeDsKIAogICAgICAgICAgICAgLyogc2tpcCB3aGl0ZXNwYWNlIGJldHdlZW4gdGVybSBhbmQgLCAqLwotICAgICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4ICYmIElTX1dISVRFU1BBQ0Uoc3RyW2lkeF0pKSBpZHgrKzsKKyAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkpIGlkeCsrOwogCiAgICAgICAgICAgICAvKiBiYWlsIGlmIHRoZSBhcnJheSBpcyBjbG9zZWQgb3Igd2UgZGlkbid0IGdldCB0aGUgLCBkZWxpbWl0ZXIgKi8KICAgICAgICAgICAgIGlmIChpZHggPiBlbmRfaWR4KSBicmVhazsKLSAgICAgICAgICAgIGlmIChzdHJbaWR4XSA9PSAnXScpIHsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgPT0gJ10nKSB7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlIGlmIChzdHJbaWR4XSAhPSAnLCcpIHsKKyAgICAgICAgICAgIGVsc2UgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSAhPSAnLCcpIHsKICAgICAgICAgICAgICAgICByYWlzZV9lcnJtc2coIkV4cGVjdGluZyAsIGRlbGltaXRlciIsIHB5c3RyLCBpZHgpOwogICAgICAgICAgICAgICAgIGdvdG8gYmFpbDsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlkeCsrOwogCiAgICAgICAgICAgICAvKiBza2lwIHdoaXRlc3BhY2UgYWZ0ZXIgLCAqLwotICAgICAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4ICYmIElTX1dISVRFU1BBQ0Uoc3RyW2lkeF0pKSBpZHgrKzsKKyAgICAgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBJU19XSElURVNQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkpIGlkeCsrOwogICAgICAgICB9CiAgICAgfQogCi0gICAgLyogdmVyaWZ5IHRoYXQgaWR4IDwgZW5kX2lkeCwgc3RyW2lkeF0gc2hvdWxkIGJlICddJyAqLwotICAgIGlmIChpZHggPiBlbmRfaWR4IHx8IHN0cltpZHhdICE9ICddJykgeworICAgIC8qIHZlcmlmeSB0aGF0IGlkeCA8IGVuZF9pZHgsIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSBzaG91bGQgYmUgJ10nICovCisgICAgaWYgKGlkeCA+IGVuZF9pZHggfHwgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpICE9ICddJykgewogICAgICAgICByYWlzZV9lcnJtc2coIkV4cGVjdGluZyBvYmplY3QiLCBweXN0ciwgZW5kX2lkeCk7CiAgICAgICAgIGdvdG8gYmFpbDsKICAgICB9CkBAIC04MjAsNyArODM3LDcgQEAKIAogICAgIC8qIHJ2YWwgPSBwYXJzZV9jb25zdGFudChjb25zdGFudCkgKi8KICAgICBydmFsID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhzLT5wYXJzZV9jb25zdGFudCwgY3N0ciwgTlVMTCk7Ci0gICAgaWR4ICs9IFB5VW5pY29kZV9HRVRfU0laRShjc3RyKTsKKyAgICBpZHggKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgoY3N0cik7CiAgICAgUHlfREVDUkVGKGNzdHIpOwogICAgICpuZXh0X2lkeF9wdHIgPSBpZHg7CiAgICAgcmV0dXJuIHJ2YWw7CkBAIC04MzcsMTUgKzg1NCwyNCBAQAogICAgICAgICBQeUludCwgUHlMb25nLCBvciBQeUZsb2F0LgogICAgICAgICBNYXkgcmV0dXJuIG90aGVyIHR5cGVzIGlmIHBhcnNlX2ludCBvciBwYXJzZV9mbG9hdCBhcmUgc2V0CiAgICAgKi8KLSAgICBQeV9VTklDT0RFICpzdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShweXN0cik7Ci0gICAgUHlfc3NpemVfdCBlbmRfaWR4ID0gUHlVbmljb2RlX0dFVF9TSVpFKHB5c3RyKSAtIDE7CisgICAgdm9pZCAqc3RyOworICAgIGludCBraW5kOworICAgIFB5X3NzaXplX3QgZW5kX2lkeDsKICAgICBQeV9zc2l6ZV90IGlkeCA9IHN0YXJ0OwogICAgIGludCBpc19mbG9hdCA9IDA7CiAgICAgUHlPYmplY3QgKnJ2YWw7Ci0gICAgUHlPYmplY3QgKm51bXN0cjsKKyAgICBQeU9iamVjdCAqbnVtc3RyID0gTlVMTDsKKyAgICBQeU9iamVjdCAqY3VzdG9tX2Z1bmM7CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHB5c3RyKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBzdHIgPSBQeVVuaWNvZGVfREFUQShweXN0cik7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHB5c3RyKTsKKyAgICBlbmRfaWR4ID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocHlzdHIpIC0gMTsKIAogICAgIC8qIHJlYWQgYSBzaWduIGlmIGl0J3MgdGhlcmUsIG1ha2Ugc3VyZSBpdCdzIG5vdCB0aGUgZW5kIG9mIHRoZSBzdHJpbmcgKi8KLSAgICBpZiAoc3RyW2lkeF0gPT0gJy0nKSB7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA9PSAnLScpIHsKICAgICAgICAgaWR4Kys7CiAgICAgICAgIGlmIChpZHggPiBlbmRfaWR4KSB7CiAgICAgICAgICAgICBQeUVycl9TZXROb25lKFB5RXhjX1N0b3BJdGVyYXRpb24pOwpAQCAtODU0LDEyICs4ODAsMTIgQEAKICAgICB9CiAKICAgICAvKiByZWFkIGFzIG1hbnkgaW50ZWdlciBkaWdpdHMgYXMgd2UgZmluZCBhcyBsb25nIGFzIGl0IGRvZXNuJ3Qgc3RhcnQgd2l0aCAwICovCi0gICAgaWYgKHN0cltpZHhdID49ICcxJyAmJiBzdHJbaWR4XSA8PSAnOScpIHsKKyAgICBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpID49ICcxJyAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgPD0gJzknKSB7CiAgICAgICAgIGlkeCsrOwotICAgICAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgc3RyW2lkeF0gPj0gJzAnICYmIHN0cltpZHhdIDw9ICc5JykgaWR4Kys7CisgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgPj0gJzAnICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA8PSAnOScpIGlkeCsrOwogICAgIH0KICAgICAvKiBpZiBpdCBzdGFydHMgd2l0aCAwIHdlIG9ubHkgZXhwZWN0IG9uZSBpbnRlZ2VyIGRpZ2l0ICovCi0gICAgZWxzZSBpZiAoc3RyW2lkeF0gPT0gJzAnKSB7CisgICAgZWxzZSBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpID09ICcwJykgewogICAgICAgICBpZHgrKzsKICAgICB9CiAgICAgLyogbm8gaW50ZWdlciBkaWdpdHMsIGVycm9yICovCkBAIC04NjksMjUgKzg5NSwyNSBAQAogICAgIH0KIAogICAgIC8qIGlmIHRoZSBuZXh0IGNoYXIgaXMgJy4nIGZvbGxvd2VkIGJ5IGEgZGlnaXQgdGhlbiByZWFkIGFsbCBmbG9hdCBkaWdpdHMgKi8KLSAgICBpZiAoaWR4IDwgZW5kX2lkeCAmJiBzdHJbaWR4XSA9PSAnLicgJiYgc3RyW2lkeCArIDFdID49ICcwJyAmJiBzdHJbaWR4ICsgMV0gPD0gJzknKSB7CisgICAgaWYgKGlkeCA8IGVuZF9pZHggJiYgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpID09ICcuJyAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDEpID49ICcwJyAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDEpIDw9ICc5JykgewogICAgICAgICBpc19mbG9hdCA9IDE7CiAgICAgICAgIGlkeCArPSAyOwotICAgICAgICB3aGlsZSAoaWR4IDw9IGVuZF9pZHggJiYgc3RyW2lkeF0gPj0gJzAnICYmIHN0cltpZHhdIDw9ICc5JykgaWR4Kys7CisgICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgPj0gJzAnICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA8PSAnOScpIGlkeCsrOwogICAgIH0KIAogICAgIC8qIGlmIHRoZSBuZXh0IGNoYXIgaXMgJ2UnIG9yICdFJyB0aGVuIG1heWJlIHJlYWQgdGhlIGV4cG9uZW50IChvciBiYWNrdHJhY2spICovCi0gICAgaWYgKGlkeCA8IGVuZF9pZHggJiYgKHN0cltpZHhdID09ICdlJyB8fCBzdHJbaWR4XSA9PSAnRScpKSB7CisgICAgaWYgKGlkeCA8IGVuZF9pZHggJiYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA9PSAnZScgfHwgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpID09ICdFJykpIHsKICAgICAgICAgUHlfc3NpemVfdCBlX3N0YXJ0ID0gaWR4OwogICAgICAgICBpZHgrKzsKIAogICAgICAgICAvKiByZWFkIGFuIGV4cG9uZW50IHNpZ24gaWYgcHJlc2VudCAqLwotICAgICAgICBpZiAoaWR4IDwgZW5kX2lkeCAmJiAoc3RyW2lkeF0gPT0gJy0nIHx8IHN0cltpZHhdID09ICcrJykpIGlkeCsrOworICAgICAgICBpZiAoaWR4IDwgZW5kX2lkeCAmJiAoUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpID09ICctJyB8fCBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCkgPT0gJysnKSkgaWR4Kys7CiAKICAgICAgICAgLyogcmVhZCBhbGwgZGlnaXRzICovCi0gICAgICAgIHdoaWxlIChpZHggPD0gZW5kX2lkeCAmJiBzdHJbaWR4XSA+PSAnMCcgJiYgc3RyW2lkeF0gPD0gJzknKSBpZHgrKzsKKyAgICAgICAgd2hpbGUgKGlkeCA8PSBlbmRfaWR4ICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSA+PSAnMCcgJiYgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHgpIDw9ICc5JykgaWR4Kys7CiAKICAgICAgICAgLyogaWYgd2UgZ290IGEgZGlnaXQsIHRoZW4gcGFyc2UgYXMgZmxvYXQuIGlmIG5vdCwgYmFja3RyYWNrICovCi0gICAgICAgIGlmIChzdHJbaWR4IC0gMV0gPj0gJzAnICYmIHN0cltpZHggLSAxXSA8PSAnOScpIHsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4IC0gMSkgPj0gJzAnICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4IC0gMSkgPD0gJzknKSB7CiAgICAgICAgICAgICBpc19mbG9hdCA9IDE7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CkBAIC04OTUsMjIgKzkyMSwzOSBAQAogICAgICAgICB9CiAgICAgfQogCi0gICAgLyogY29weSB0aGUgc2VjdGlvbiB3ZSBkZXRlcm1pbmVkIHRvIGJlIGEgbnVtYmVyICovCi0gICAgbnVtc3RyID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKCZzdHJbc3RhcnRdLCBpZHggLSBzdGFydCk7Ci0gICAgaWYgKG51bXN0ciA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoaXNfZmxvYXQpIHsKLSAgICAgICAgLyogcGFyc2UgYXMgYSBmbG9hdCB1c2luZyBhIGZhc3QgcGF0aCBpZiBhdmFpbGFibGUsIG90aGVyd2lzZSBjYWxsIHVzZXIgZGVmaW5lZCBtZXRob2QgKi8KLSAgICAgICAgaWYgKHMtPnBhcnNlX2Zsb2F0ICE9IChQeU9iamVjdCAqKSZQeUZsb2F0X1R5cGUpIHsKLSAgICAgICAgICAgIHJ2YWwgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKHMtPnBhcnNlX2Zsb2F0LCBudW1zdHIsIE5VTEwpOwotICAgICAgICB9Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgcnZhbCA9IFB5RmxvYXRfRnJvbVN0cmluZyhudW1zdHIpOwotICAgICAgICB9CisgICAgaWYgKGlzX2Zsb2F0ICYmIHMtPnBhcnNlX2Zsb2F0ICE9IChQeU9iamVjdCAqKSZQeUZsb2F0X1R5cGUpCisgICAgICAgIGN1c3RvbV9mdW5jID0gcy0+cGFyc2VfZmxvYXQ7CisgICAgZWxzZSBpZiAoIWlzX2Zsb2F0ICYmIHMtPnBhcnNlX2ludCAhPSAoUHlPYmplY3QgKikgJlB5TG9uZ19UeXBlKQorICAgICAgICBjdXN0b21fZnVuYyA9IHMtPnBhcnNlX2ludDsKKyAgICBlbHNlCisgICAgICAgIGN1c3RvbV9mdW5jID0gTlVMTDsKKworICAgIGlmIChjdXN0b21fZnVuYykgeworICAgICAgICAvKiBjb3B5IHRoZSBzZWN0aW9uIHdlIGRldGVybWluZWQgdG8gYmUgYSBudW1iZXIgKi8KKyAgICAgICAgbnVtc3RyID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShraW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFyKilzdHIgKyBraW5kICogc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWR4IC0gc3RhcnQpOworICAgICAgICBpZiAobnVtc3RyID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgcnZhbCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MoY3VzdG9tX2Z1bmMsIG51bXN0ciwgTlVMTCk7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICAvKiBubyBmYXN0IHBhdGggZm9yIHVuaWNvZGUgLT4gaW50LCBqdXN0IGNhbGwgKi8KLSAgICAgICAgcnZhbCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3Mocy0+cGFyc2VfaW50LCBudW1zdHIsIE5VTEwpOworICAgICAgICBQeV9zc2l6ZV90IGksIG47CisgICAgICAgIGNoYXIgKmJ1ZjsKKyAgICAgICAgLyogU3RyYWlnaHQgY29udmVyc2lvbiB0byBBU0NJSSwgdG8gYXZvaWQgY29zdGx5IGNvbnZlcnNpb24gb2YKKyAgICAgICAgICAgZGVjaW1hbCB1bmljb2RlIGRpZ2l0cyAod2hpY2ggY2Fubm90IGFwcGVhciBoZXJlKSAqLworICAgICAgICBuID0gaWR4IC0gc3RhcnQ7CisgICAgICAgIG51bXN0ciA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgbik7CisgICAgICAgIGlmIChudW1zdHIgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBidWYgPSBQeUJ5dGVzX0FTX1NUUklORyhudW1zdHIpOworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CisgICAgICAgICAgICBidWZbaV0gPSAoY2hhcikgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpICsgc3RhcnQpOworICAgICAgICB9CisgICAgICAgIGlmIChpc19mbG9hdCkKKyAgICAgICAgICAgIHJ2YWwgPSBQeUZsb2F0X0Zyb21TdHJpbmcobnVtc3RyKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcnZhbCA9IFB5TG9uZ19Gcm9tU3RyaW5nKGJ1ZiwgTlVMTCwgMTApOwogICAgIH0KICAgICBQeV9ERUNSRUYobnVtc3RyKTsKICAgICAqbmV4dF9pZHhfcHRyID0gaWR4OwpAQCAtOTI4LDEzICs5NzEsMjMgQEAKICAgICBSZXR1cm5zIGEgbmV3IFB5T2JqZWN0IHJlcHJlc2VudGF0aW9uIG9mIHRoZSB0ZXJtLgogICAgICovCiAgICAgUHlPYmplY3QgKnJlczsKLSAgICBQeV9VTklDT0RFICpzdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShweXN0cik7Ci0gICAgUHlfc3NpemVfdCBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX1NJWkUocHlzdHIpOworICAgIHZvaWQgKnN0cjsKKyAgICBpbnQga2luZDsKKyAgICBQeV9zc2l6ZV90IGxlbmd0aDsKKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocHlzdHIpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHN0ciA9IFB5VW5pY29kZV9EQVRBKHB5c3RyKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQocHlzdHIpOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHB5c3RyKTsKKwogICAgIGlmIChpZHggPj0gbGVuZ3RoKSB7CiAgICAgICAgIFB5RXJyX1NldE5vbmUoUHlFeGNfU3RvcEl0ZXJhdGlvbik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBzd2l0Y2ggKHN0cltpZHhdKSB7CisKKyAgICBzd2l0Y2ggKFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4KSkgewogICAgICAgICBjYXNlICciJzoKICAgICAgICAgICAgIC8qIHN0cmluZyAqLwogICAgICAgICAgICAgcmV0dXJuIHNjYW5zdHJpbmdfdW5pY29kZShweXN0ciwgaWR4ICsgMSwKQEAgLTk1OCw3ICsxMDExLDcgQEAKICAgICAgICAgICAgIHJldHVybiByZXM7CiAgICAgICAgIGNhc2UgJ24nOgogICAgICAgICAgICAgLyogbnVsbCAqLwotICAgICAgICAgICAgaWYgKChpZHggKyAzIDwgbGVuZ3RoKSAmJiBzdHJbaWR4ICsgMV0gPT0gJ3UnICYmIHN0cltpZHggKyAyXSA9PSAnbCcgJiYgc3RyW2lkeCArIDNdID09ICdsJykgeworICAgICAgICAgICAgaWYgKChpZHggKyAzIDwgbGVuZ3RoKSAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDEpID09ICd1JyAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDIpID09ICdsJyAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDMpID09ICdsJykgewogICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICAgICAgICAgICAgICAqbmV4dF9pZHhfcHRyID0gaWR4ICsgNDsKICAgICAgICAgICAgICAgICByZXR1cm4gUHlfTm9uZTsKQEAgLTk2Niw3ICsxMDE5LDcgQEAKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlICd0JzoKICAgICAgICAgICAgIC8qIHRydWUgKi8KLSAgICAgICAgICAgIGlmICgoaWR4ICsgMyA8IGxlbmd0aCkgJiYgc3RyW2lkeCArIDFdID09ICdyJyAmJiBzdHJbaWR4ICsgMl0gPT0gJ3UnICYmIHN0cltpZHggKyAzXSA9PSAnZScpIHsKKyAgICAgICAgICAgIGlmICgoaWR4ICsgMyA8IGxlbmd0aCkgJiYgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAxKSA9PSAncicgJiYgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAyKSA9PSAndScgJiYgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAzKSA9PSAnZScpIHsKICAgICAgICAgICAgICAgICBQeV9JTkNSRUYoUHlfVHJ1ZSk7CiAgICAgICAgICAgICAgICAgKm5leHRfaWR4X3B0ciA9IGlkeCArIDQ7CiAgICAgICAgICAgICAgICAgcmV0dXJuIFB5X1RydWU7CkBAIC05NzQsNyArMTAyNywxMCBAQAogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgJ2YnOgogICAgICAgICAgICAgLyogZmFsc2UgKi8KLSAgICAgICAgICAgIGlmICgoaWR4ICsgNCA8IGxlbmd0aCkgJiYgc3RyW2lkeCArIDFdID09ICdhJyAmJiBzdHJbaWR4ICsgMl0gPT0gJ2wnICYmIHN0cltpZHggKyAzXSA9PSAncycgJiYgc3RyW2lkeCArIDRdID09ICdlJykgeworICAgICAgICAgICAgaWYgKChpZHggKyA0IDwgbGVuZ3RoKSAmJiBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDEpID09ICdhJyAmJgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgMikgPT0gJ2wnICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAzKSA9PSAncycgJiYKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDQpID09ICdlJykgewogICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihQeV9GYWxzZSk7CiAgICAgICAgICAgICAgICAgKm5leHRfaWR4X3B0ciA9IGlkeCArIDU7CiAgICAgICAgICAgICAgICAgcmV0dXJuIFB5X0ZhbHNlOwpAQCAtOTgyLDE5ICsxMDM4LDMzIEBACiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSAnTic6CiAgICAgICAgICAgICAvKiBOYU4gKi8KLSAgICAgICAgICAgIGlmICgoaWR4ICsgMiA8IGxlbmd0aCkgJiYgc3RyW2lkeCArIDFdID09ICdhJyAmJiBzdHJbaWR4ICsgMl0gPT0gJ04nKSB7CisgICAgICAgICAgICBpZiAoKGlkeCArIDIgPCBsZW5ndGgpICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgMSkgPT0gJ2EnICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAyKSA9PSAnTicpIHsKICAgICAgICAgICAgICAgICByZXR1cm4gX3BhcnNlX2NvbnN0YW50KHMsICJOYU4iLCBpZHgsIG5leHRfaWR4X3B0cik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSAnSSc6CiAgICAgICAgICAgICAvKiBJbmZpbml0eSAqLwotICAgICAgICAgICAgaWYgKChpZHggKyA3IDwgbGVuZ3RoKSAmJiBzdHJbaWR4ICsgMV0gPT0gJ24nICYmIHN0cltpZHggKyAyXSA9PSAnZicgJiYgc3RyW2lkeCArIDNdID09ICdpJyAmJiBzdHJbaWR4ICsgNF0gPT0gJ24nICYmIHN0cltpZHggKyA1XSA9PSAnaScgJiYgc3RyW2lkeCArIDZdID09ICd0JyAmJiBzdHJbaWR4ICsgN10gPT0gJ3knKSB7CisgICAgICAgICAgICBpZiAoKGlkeCArIDcgPCBsZW5ndGgpICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgMSkgPT0gJ24nICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAyKSA9PSAnZicgJiYKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDMpID09ICdpJyAmJgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgNCkgPT0gJ24nICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyA1KSA9PSAnaScgJiYKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDYpID09ICd0JyAmJgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgNykgPT0gJ3knKSB7CiAgICAgICAgICAgICAgICAgcmV0dXJuIF9wYXJzZV9jb25zdGFudChzLCAiSW5maW5pdHkiLCBpZHgsIG5leHRfaWR4X3B0cik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSAnLSc6CiAgICAgICAgICAgICAvKiAtSW5maW5pdHkgKi8KLSAgICAgICAgICAgIGlmICgoaWR4ICsgOCA8IGxlbmd0aCkgJiYgc3RyW2lkeCArIDFdID09ICdJJyAmJiBzdHJbaWR4ICsgMl0gPT0gJ24nICYmIHN0cltpZHggKyAzXSA9PSAnZicgJiYgc3RyW2lkeCArIDRdID09ICdpJyAmJiBzdHJbaWR4ICsgNV0gPT0gJ24nICYmIHN0cltpZHggKyA2XSA9PSAnaScgJiYgc3RyW2lkeCArIDddID09ICd0JyAmJiBzdHJbaWR4ICsgOF0gPT0gJ3knKSB7CisgICAgICAgICAgICBpZiAoKGlkeCArIDggPCBsZW5ndGgpICYmIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgMSkgPT0gJ0knICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyAyKSA9PSAnbicgJiYKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDMpID09ICdmJyAmJgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgNCkgPT0gJ2knICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyA1KSA9PSAnbicgJiYKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBzdHIsIGlkeCArIDYpID09ICdpJyAmJgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHN0ciwgaWR4ICsgNykgPT0gJ3QnICYmCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgc3RyLCBpZHggKyA4KSA9PSAneScpIHsKICAgICAgICAgICAgICAgICByZXR1cm4gX3BhcnNlX2NvbnN0YW50KHMsICItSW5maW5pdHkiLCBpZHgsIG5leHRfaWR4X3B0cik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKQEAgLTEyMTAsMjIgKzEyODAsMjIgQEAKICAgICAvKiBQeXRob24gY2FsbGFibGUgaW50ZXJmYWNlIHRvIGVuY29kZV9saXN0ZW5jb2RlX29iaiAqLwogICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsib2JqIiwgIl9jdXJyZW50X2luZGVudF9sZXZlbCIsIE5VTEx9OwogICAgIFB5T2JqZWN0ICpvYmo7Ci0gICAgUHlPYmplY3QgKnJ2YWw7CiAgICAgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWw7CiAgICAgUHlFbmNvZGVyT2JqZWN0ICpzOworICAgIF9QeUFjY3UgYWNjOworCiAgICAgYXNzZXJ0KFB5RW5jb2Rlcl9DaGVjayhzZWxmKSk7CiAgICAgcyA9IChQeUVuY29kZXJPYmplY3QgKilzZWxmOwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJPTyY6X2l0ZXJlbmNvZGUiLCBrd2xpc3QsCiAgICAgICAgICZvYmosIF9jb252ZXJ0UHlJbnRfQXNTc2l6ZV90LCAmaW5kZW50X2xldmVsKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcnZhbCA9IFB5TGlzdF9OZXcoMCk7Ci0gICAgaWYgKHJ2YWwgPT0gTlVMTCkKKyAgICBpZiAoX1B5QWNjdV9Jbml0KCZhY2MpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihzLCBydmFsLCBvYmosIGluZGVudF9sZXZlbCkpIHsKLSAgICAgICAgUHlfREVDUkVGKHJ2YWwpOworICAgIGlmIChlbmNvZGVyX2xpc3RlbmNvZGVfb2JqKHMsICZhY2MsIG9iaiwgaW5kZW50X2xldmVsKSkgeworICAgICAgICBfUHlBY2N1X0Rlc3Ryb3koJmFjYyk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXR1cm4gcnZhbDsKKyAgICByZXR1cm4gX1B5QWNjdV9GaW5pc2hBc0xpc3QoJmFjYyk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xMjk3LDE4ICsxMzY3LDE5IEBACiB9CiAKIHN0YXRpYyBpbnQKLV9zdGVhbF9saXN0X2FwcGVuZChQeU9iamVjdCAqbHN0LCBQeU9iamVjdCAqc3RvbGVuKQorX3N0ZWFsX2FjY3VtdWxhdGUoX1B5QWNjdSAqYWNjLCBQeU9iamVjdCAqc3RvbGVuKQogewogICAgIC8qIEFwcGVuZCBzdG9sZW4gYW5kIHRoZW4gZGVjcmVtZW50IGl0cyByZWZlcmVuY2UgY291bnQgKi8KLSAgICBpbnQgcnZhbCA9IFB5TGlzdF9BcHBlbmQobHN0LCBzdG9sZW4pOworICAgIGludCBydmFsID0gX1B5QWNjdV9BY2N1bXVsYXRlKGFjYywgc3RvbGVuKTsKICAgICBQeV9ERUNSRUYoc3RvbGVuKTsKICAgICByZXR1cm4gcnZhbDsKIH0KIAogc3RhdGljIGludAotZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihQeUVuY29kZXJPYmplY3QgKnMsIFB5T2JqZWN0ICpydmFsLCBQeU9iamVjdCAqb2JqLCBQeV9zc2l6ZV90IGluZGVudF9sZXZlbCkKK2VuY29kZXJfbGlzdGVuY29kZV9vYmooUHlFbmNvZGVyT2JqZWN0ICpzLCBfUHlBY2N1ICphY2MsCisgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpvYmosIFB5X3NzaXplX3QgaW5kZW50X2xldmVsKQogewotICAgIC8qIEVuY29kZSBQeXRob24gb2JqZWN0IG9iaiB0byBhIEpTT04gdGVybSwgcnZhbCBpcyBhIFB5TGlzdCAqLworICAgIC8qIEVuY29kZSBQeXRob24gb2JqZWN0IG9iaiB0byBhIEpTT04gdGVybSAqLwogICAgIFB5T2JqZWN0ICpuZXdvYmo7CiAgICAgaW50IHJ2OwogCkBAIC0xMzE2LDM4ICsxMzg3LDM4IEBACiAgICAgICAgIFB5T2JqZWN0ICpjc3RyID0gX2VuY29kZWRfY29uc3Qob2JqKTsKICAgICAgICAgaWYgKGNzdHIgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgcmV0dXJuIF9zdGVhbF9saXN0X2FwcGVuZChydmFsLCBjc3RyKTsKKyAgICAgICAgcmV0dXJuIF9zdGVhbF9hY2N1bXVsYXRlKGFjYywgY3N0cik7CiAgICAgfQogICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjayhvYmopKQogICAgIHsKICAgICAgICAgUHlPYmplY3QgKmVuY29kZWQgPSBlbmNvZGVyX2VuY29kZV9zdHJpbmcocywgb2JqKTsKICAgICAgICAgaWYgKGVuY29kZWQgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgcmV0dXJuIF9zdGVhbF9saXN0X2FwcGVuZChydmFsLCBlbmNvZGVkKTsKKyAgICAgICAgcmV0dXJuIF9zdGVhbF9hY2N1bXVsYXRlKGFjYywgZW5jb2RlZCk7CiAgICAgfQogICAgIGVsc2UgaWYgKFB5TG9uZ19DaGVjayhvYmopKSB7CiAgICAgICAgIFB5T2JqZWN0ICplbmNvZGVkID0gUHlPYmplY3RfU3RyKG9iaik7CiAgICAgICAgIGlmIChlbmNvZGVkID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIHJldHVybiBfc3RlYWxfbGlzdF9hcHBlbmQocnZhbCwgZW5jb2RlZCk7CisgICAgICAgIHJldHVybiBfc3RlYWxfYWNjdW11bGF0ZShhY2MsIGVuY29kZWQpOwogICAgIH0KICAgICBlbHNlIGlmIChQeUZsb2F0X0NoZWNrKG9iaikpIHsKICAgICAgICAgUHlPYmplY3QgKmVuY29kZWQgPSBlbmNvZGVyX2VuY29kZV9mbG9hdChzLCBvYmopOwogICAgICAgICBpZiAoZW5jb2RlZCA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICByZXR1cm4gX3N0ZWFsX2xpc3RfYXBwZW5kKHJ2YWwsIGVuY29kZWQpOworICAgICAgICByZXR1cm4gX3N0ZWFsX2FjY3VtdWxhdGUoYWNjLCBlbmNvZGVkKTsKICAgICB9CiAgICAgZWxzZSBpZiAoUHlMaXN0X0NoZWNrKG9iaikgfHwgUHlUdXBsZV9DaGVjayhvYmopKSB7CiAgICAgICAgIGlmIChQeV9FbnRlclJlY3Vyc2l2ZUNhbGwoIiB3aGlsZSBlbmNvZGluZyBhIEpTT04gb2JqZWN0IikpCiAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIHJ2ID0gZW5jb2Rlcl9saXN0ZW5jb2RlX2xpc3QocywgcnZhbCwgb2JqLCBpbmRlbnRfbGV2ZWwpOworICAgICAgICBydiA9IGVuY29kZXJfbGlzdGVuY29kZV9saXN0KHMsIGFjYywgb2JqLCBpbmRlbnRfbGV2ZWwpOwogICAgICAgICBQeV9MZWF2ZVJlY3Vyc2l2ZUNhbGwoKTsKICAgICAgICAgcmV0dXJuIHJ2OwogICAgIH0KICAgICBlbHNlIGlmIChQeURpY3RfQ2hlY2sob2JqKSkgewogICAgICAgICBpZiAoUHlfRW50ZXJSZWN1cnNpdmVDYWxsKCIgd2hpbGUgZW5jb2RpbmcgYSBKU09OIG9iamVjdCIpKQogICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICBydiA9IGVuY29kZXJfbGlzdGVuY29kZV9kaWN0KHMsIHJ2YWwsIG9iaiwgaW5kZW50X2xldmVsKTsKKyAgICAgICAgcnYgPSBlbmNvZGVyX2xpc3RlbmNvZGVfZGljdChzLCBhY2MsIG9iaiwgaW5kZW50X2xldmVsKTsKICAgICAgICAgUHlfTGVhdmVSZWN1cnNpdmVDYWxsKCk7CiAgICAgICAgIHJldHVybiBydjsKICAgICB9CkBAIC0xMzc4LDcgKzE0NDksNyBAQAogCiAgICAgICAgIGlmIChQeV9FbnRlclJlY3Vyc2l2ZUNhbGwoIiB3aGlsZSBlbmNvZGluZyBhIEpTT04gb2JqZWN0IikpCiAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIHJ2ID0gZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihzLCBydmFsLCBuZXdvYmosIGluZGVudF9sZXZlbCk7CisgICAgICAgIHJ2ID0gZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihzLCBhY2MsIG5ld29iaiwgaW5kZW50X2xldmVsKTsKICAgICAgICAgUHlfTGVhdmVSZWN1cnNpdmVDYWxsKCk7CiAKICAgICAgICAgUHlfREVDUkVGKG5ld29iaik7CkBAIC0xMzk4LDkgKzE0NjksMTAgQEAKIH0KIAogc3RhdGljIGludAotZW5jb2Rlcl9saXN0ZW5jb2RlX2RpY3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBQeU9iamVjdCAqcnZhbCwgUHlPYmplY3QgKmRjdCwgUHlfc3NpemVfdCBpbmRlbnRfbGV2ZWwpCitlbmNvZGVyX2xpc3RlbmNvZGVfZGljdChQeUVuY29kZXJPYmplY3QgKnMsIF9QeUFjY3UgKmFjYywKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpkY3QsIFB5X3NzaXplX3QgaW5kZW50X2xldmVsKQogewotICAgIC8qIEVuY29kZSBQeXRob24gZGljdCBkY3QgYSBKU09OIHRlcm0sIHJ2YWwgaXMgYSBQeUxpc3QgKi8KKyAgICAvKiBFbmNvZGUgUHl0aG9uIGRpY3QgZGN0IGEgSlNPTiB0ZXJtICovCiAgICAgc3RhdGljIFB5T2JqZWN0ICpvcGVuX2RpY3QgPSBOVUxMOwogICAgIHN0YXRpYyBQeU9iamVjdCAqY2xvc2VfZGljdCA9IE5VTEw7CiAgICAgc3RhdGljIFB5T2JqZWN0ICplbXB0eV9kaWN0ID0gTlVMTDsKQEAgLTE0MjAsNyArMTQ5Miw3IEBACiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIGlmIChQeV9TSVpFKGRjdCkgPT0gMCkKLSAgICAgICAgcmV0dXJuIFB5TGlzdF9BcHBlbmQocnZhbCwgZW1wdHlfZGljdCk7CisgICAgICAgIHJldHVybiBfUHlBY2N1X0FjY3VtdWxhdGUoYWNjLCBlbXB0eV9kaWN0KTsKIAogICAgIGlmIChzLT5tYXJrZXJzICE9IFB5X05vbmUpIHsKICAgICAgICAgaW50IGhhc19rZXk7CkBAIC0xNDM4LDcgKzE1MTAsNyBAQAogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgb3Blbl9kaWN0KSkKKyAgICBpZiAoX1B5QWNjdV9BY2N1bXVsYXRlKGFjYywgb3Blbl9kaWN0KSkKICAgICAgICAgZ290byBiYWlsOwogCiAgICAgaWYgKHMtPmluZGVudCAhPSBQeV9Ob25lKSB7CkBAIC0xNTI1LDcgKzE1OTcsNyBAQAogICAgICAgICB9CiAKICAgICAgICAgaWYgKGlkeCkgewotICAgICAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgcy0+aXRlbV9zZXBhcmF0b3IpKQorICAgICAgICAgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIHMtPml0ZW1fc2VwYXJhdG9yKSkKICAgICAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgIH0KIApAQCAtMTUzMywxNiArMTYwNSwxNiBAQAogICAgICAgICBQeV9DTEVBUihrc3RyKTsKICAgICAgICAgaWYgKGVuY29kZWQgPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gYmFpbDsKLSAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgZW5jb2RlZCkpIHsKKyAgICAgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIGVuY29kZWQpKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYoZW5jb2RlZCk7CiAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgIH0KICAgICAgICAgUHlfREVDUkVGKGVuY29kZWQpOwotICAgICAgICBpZiAoUHlMaXN0X0FwcGVuZChydmFsLCBzLT5rZXlfc2VwYXJhdG9yKSkKKyAgICAgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIHMtPmtleV9zZXBhcmF0b3IpKQogICAgICAgICAgICAgZ290byBiYWlsOwogCiAgICAgICAgIHZhbHVlID0gUHlUdXBsZV9HRVRfSVRFTShpdGVtLCAxKTsKLSAgICAgICAgaWYgKGVuY29kZXJfbGlzdGVuY29kZV9vYmoocywgcnZhbCwgdmFsdWUsIGluZGVudF9sZXZlbCkpCisgICAgICAgIGlmIChlbmNvZGVyX2xpc3RlbmNvZGVfb2JqKHMsIGFjYywgdmFsdWUsIGluZGVudF9sZXZlbCkpCiAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgIGlkeCArPSAxOwogICAgICAgICBQeV9ERUNSRUYoaXRlbSk7CkBAIC0xNTU2LDE0ICsxNjI4LDEzIEBACiAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgIFB5X0NMRUFSKGlkZW50KTsKICAgICB9CisgICAgLyogVE9ETyBET0VTIE5PVCBSVU47IGRlYWQgY29kZQogICAgIGlmIChzLT5pbmRlbnQgIT0gUHlfTm9uZSkgewotICAgICAgICAvKiBUT0RPOiBET0VTIE5PVCBSVU4gKi8KICAgICAgICAgaW5kZW50X2xldmVsIC09IDE7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICB5aWVsZCAnXG4nICsgKCcgJyAqIChfaW5kZW50ICogX2N1cnJlbnRfaW5kZW50X2xldmVsKSkKLSAgICAgICAgKi8KLSAgICB9Ci0gICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgY2xvc2VfZGljdCkpCisKKyAgICAgICAgeWllbGQgJ1xuJyArICgnICcgKiAoX2luZGVudCAqIF9jdXJyZW50X2luZGVudF9sZXZlbCkpCisgICAgfSovCisgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIGNsb3NlX2RpY3QpKQogICAgICAgICBnb3RvIGJhaWw7CiAgICAgcmV0dXJuIDA7CiAKQEAgLTE1NzcsOSArMTY0OCwxMCBAQAogCiAKIHN0YXRpYyBpbnQKLWVuY29kZXJfbGlzdGVuY29kZV9saXN0KFB5RW5jb2Rlck9iamVjdCAqcywgUHlPYmplY3QgKnJ2YWwsIFB5T2JqZWN0ICpzZXEsIFB5X3NzaXplX3QgaW5kZW50X2xldmVsKQorZW5jb2Rlcl9saXN0ZW5jb2RlX2xpc3QoUHlFbmNvZGVyT2JqZWN0ICpzLCBfUHlBY2N1ICphY2MsCisgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqc2VxLCBQeV9zc2l6ZV90IGluZGVudF9sZXZlbCkKIHsKLSAgICAvKiBFbmNvZGUgUHl0aG9uIGxpc3Qgc2VxIHRvIGEgSlNPTiB0ZXJtLCBydmFsIGlzIGEgUHlMaXN0ICovCisgICAgLyogRW5jb2RlIFB5dGhvbiBsaXN0IHNlcSB0byBhIEpTT04gdGVybSAqLwogICAgIHN0YXRpYyBQeU9iamVjdCAqb3Blbl9hcnJheSA9IE5VTEw7CiAgICAgc3RhdGljIFB5T2JqZWN0ICpjbG9zZV9hcnJheSA9IE5VTEw7CiAgICAgc3RhdGljIFB5T2JqZWN0ICplbXB0eV9hcnJheSA9IE5VTEw7CkBAIC0xNjAzLDcgKzE2NzUsNyBAQAogICAgIG51bV9pdGVtcyA9IFB5U2VxdWVuY2VfRmFzdF9HRVRfU0laRShzX2Zhc3QpOwogICAgIGlmIChudW1faXRlbXMgPT0gMCkgewogICAgICAgICBQeV9ERUNSRUYoc19mYXN0KTsKLSAgICAgICAgcmV0dXJuIFB5TGlzdF9BcHBlbmQocnZhbCwgZW1wdHlfYXJyYXkpOworICAgICAgICByZXR1cm4gX1B5QWNjdV9BY2N1bXVsYXRlKGFjYywgZW1wdHlfYXJyYXkpOwogICAgIH0KIAogICAgIGlmIChzLT5tYXJrZXJzICE9IFB5X05vbmUpIHsKQEAgLTE2MjMsNyArMTY5NSw3IEBACiAgICAgfQogCiAgICAgc2VxX2l0ZW1zID0gUHlTZXF1ZW5jZV9GYXN0X0lURU1TKHNfZmFzdCk7Ci0gICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgb3Blbl9hcnJheSkpCisgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIG9wZW5fYXJyYXkpKQogICAgICAgICBnb3RvIGJhaWw7CiAgICAgaWYgKHMtPmluZGVudCAhPSBQeV9Ob25lKSB7CiAgICAgICAgIC8qIFRPRE86IERPRVMgTk9UIFJVTiAqLwpAQCAtMTYzNywxMCArMTcwOSwxMCBAQAogICAgIGZvciAoaSA9IDA7IGkgPCBudW1faXRlbXM7IGkrKykgewogICAgICAgICBQeU9iamVjdCAqb2JqID0gc2VxX2l0ZW1zW2ldOwogICAgICAgICBpZiAoaSkgewotICAgICAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgcy0+aXRlbV9zZXBhcmF0b3IpKQorICAgICAgICAgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIHMtPml0ZW1fc2VwYXJhdG9yKSkKICAgICAgICAgICAgICAgICBnb3RvIGJhaWw7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKGVuY29kZXJfbGlzdGVuY29kZV9vYmoocywgcnZhbCwgb2JqLCBpbmRlbnRfbGV2ZWwpKQorICAgICAgICBpZiAoZW5jb2Rlcl9saXN0ZW5jb2RlX29iaihzLCBhY2MsIG9iaiwgaW5kZW50X2xldmVsKSkKICAgICAgICAgICAgIGdvdG8gYmFpbDsKICAgICB9CiAgICAgaWYgKGlkZW50ICE9IE5VTEwpIHsKQEAgLTE2NDgsMTQgKzE3MjAsMTQgQEAKICAgICAgICAgICAgIGdvdG8gYmFpbDsKICAgICAgICAgUHlfQ0xFQVIoaWRlbnQpOwogICAgIH0KKworICAgIC8qIFRPRE86IERPRVMgTk9UIFJVTgogICAgIGlmIChzLT5pbmRlbnQgIT0gUHlfTm9uZSkgewotICAgICAgICAvKiBUT0RPOiBET0VTIE5PVCBSVU4gKi8KICAgICAgICAgaW5kZW50X2xldmVsIC09IDE7Ci0gICAgICAgIC8qCi0gICAgICAgICAgICB5aWVsZCAnXG4nICsgKCcgJyAqIChfaW5kZW50ICogX2N1cnJlbnRfaW5kZW50X2xldmVsKSkKLSAgICAgICAgKi8KLSAgICB9Ci0gICAgaWYgKFB5TGlzdF9BcHBlbmQocnZhbCwgY2xvc2VfYXJyYXkpKQorCisgICAgICAgIHlpZWxkICdcbicgKyAoJyAnICogKF9pbmRlbnQgKiBfY3VycmVudF9pbmRlbnRfbGV2ZWwpKQorICAgIH0qLworICAgIGlmIChfUHlBY2N1X0FjY3VtdWxhdGUoYWNjLCBjbG9zZV9hcnJheSkpCiAgICAgICAgIGdvdG8gYmFpbDsKICAgICBQeV9ERUNSRUYoc19mYXN0KTsKICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX2xvY2FsZW1vZHVsZS5jIGIvTW9kdWxlcy9fbG9jYWxlbW9kdWxlLmMKaW5kZXggMTAwMWRkMi4uMWNhYjdjMCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fbG9jYWxlbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9fbG9jYWxlbW9kdWxlLmMKQEAgLTQyLDQzICs0Miw2IEBACiAKIHN0YXRpYyBQeU9iamVjdCAqRXJyb3I7CiAKLS8qIENvbnZlcnQgYSBjaGFyKiB0byBhIFVuaWNvZGUgb2JqZWN0IGFjY29yZGluZyB0byB0aGUgY3VycmVudCBsb2NhbGUgKi8KLXN0YXRpYyBQeU9iamVjdCoKLXN0cjJ1bmkoY29uc3QgY2hhciogcykKLXsKLSNpZmRlZiBIQVZFX0JST0tFTl9NQlNUT1dDUwotICAgIHNpemVfdCBuZWVkZWQgPSBzdHJsZW4ocyk7Ci0jZWxzZQotICAgIHNpemVfdCBuZWVkZWQgPSBtYnN0b3djcyhOVUxMLCBzLCAwKTsKLSNlbmRpZgotICAgIHNpemVfdCByZXMxOwotICAgIHdjaGFyX3Qgc21hbGxidWZbMzBdOwotICAgIHdjaGFyX3QgKmRlc3Q7Ci0gICAgUHlPYmplY3QgKnJlczI7Ci0gICAgaWYgKG5lZWRlZCA9PSAoc2l6ZV90KS0xKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiQ2Fubm90IGNvbnZlcnQgYnl0ZSB0byBzdHJpbmciKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIGlmIChuZWVkZWQqc2l6ZW9mKHdjaGFyX3QpIDwgc2l6ZW9mKHNtYWxsYnVmKSkKLSAgICAgICAgZGVzdCA9IHNtYWxsYnVmOwotICAgIGVsc2UgewotICAgICAgICBkZXN0ID0gUHlNZW1fTWFsbG9jKChuZWVkZWQrMSkqc2l6ZW9mKHdjaGFyX3QpKTsKLSAgICAgICAgaWYgKCFkZXN0KQotICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgfQotICAgIC8qIFRoaXMgc2hvdWxkbid0IGZhaWwgbm93ICovCi0gICAgcmVzMSA9IG1ic3Rvd2NzKGRlc3QsIHMsIG5lZWRlZCsxKTsKLSNpZmRlZiBIQVZFX0JST0tFTl9NQlNUT1dDUwotICAgIGFzc2VydChyZXMxICE9IChzaXplX3QpLTEpOwotI2Vsc2UKLSAgICBhc3NlcnQocmVzMSA9PSBuZWVkZWQpOwotI2VuZGlmCi0gICAgcmVzMiA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIoZGVzdCwgcmVzMSk7Ci0gICAgaWYgKGRlc3QgIT0gc21hbGxidWYpCi0gICAgICAgIFB5TWVtX0ZyZWUoZGVzdCk7Ci0gICAgcmV0dXJuIHJlczI7Ci19Ci0KIC8qIHN1cHBvcnQgZnVuY3Rpb25zIGZvciBmb3JtYXR0aW5nIGZsb2F0aW5nIHBvaW50IG51bWJlcnMgKi8KIAogUHlEb2NfU1RSVkFSKHNldGxvY2FsZV9fZG9jX18sCkBAIC0xNDksNyArMTEyLDcgQEAKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhFcnJvciwgInVuc3VwcG9ydGVkIGxvY2FsZSBzZXR0aW5nIik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICByZXN1bHRfb2JqZWN0ID0gc3RyMnVuaShyZXN1bHQpOworICAgICAgICByZXN1bHRfb2JqZWN0ID0gUHlVbmljb2RlX0RlY29kZUxvY2FsZShyZXN1bHQsIDApOwogICAgICAgICBpZiAoIXJlc3VsdF9vYmplY3QpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9IGVsc2UgewpAQCAtMTU5LDcgKzEyMiw3IEBACiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoRXJyb3IsICJsb2NhbGUgcXVlcnkgZmFpbGVkIik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICByZXN1bHRfb2JqZWN0ID0gc3RyMnVuaShyZXN1bHQpOworICAgICAgICByZXN1bHRfb2JqZWN0ID0gUHlVbmljb2RlX0RlY29kZUxvY2FsZShyZXN1bHQsIDApOwogICAgIH0KICAgICByZXR1cm4gcmVzdWx0X29iamVjdDsKIH0KQEAgLTE4NSw3ICsxNDgsNyBAQAogICAgICAgIGludm9sdmVkIGhlcmVpbiAqLwogCiAjZGVmaW5lIFJFU1VMVF9TVFJJTkcocylcCi0gICAgeCA9IHN0cjJ1bmkobC0+cyk7ICAgXAorICAgIHggPSBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKGwtPnMsIDApOyAgIFwKICAgICBpZiAoIXgpIGdvdG8gZmFpbGVkO1wKICAgICBQeURpY3RfU2V0SXRlbVN0cmluZyhyZXN1bHQsICNzLCB4KTtcCiAgICAgUHlfWERFQ1JFRih4KQpAQCAtMjcxLDM3ICsyMzQsMjggQEAKIHN0YXRpYyBQeU9iamVjdCoKIFB5TG9jYWxlX3N0cnhmcm0oUHlPYmplY3QqIHNlbGYsIFB5T2JqZWN0KiBhcmdzKQogewotICAgIFB5X1VOSUNPREUgKnMwOwotICAgIFB5X3NzaXplX3QgbjA7Ci0gICAgd2NoYXJfdCAqcywgKmJ1ZiA9IE5VTEw7Ci0gICAgc2l6ZV90IG4xLCBuMjsKKyAgICBQeU9iamVjdCAqc3RyOworICAgIFB5X3NzaXplX3QgbjE7CisgICAgd2NoYXJfdCAqcyA9IE5VTEwsICpidWYgPSBOVUxMOworICAgIHNpemVfdCBuMjsKICAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSNpZiBQeV9VTklDT0RFX1NJWkUgIT0gU0laRU9GX1dDSEFSX1QKLSAgICBQeV9zc2l6ZV90IGk7Ci0jZW5kaWYKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAidSM6c3RyeGZybSIsICZzMCwgJm4wKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6c3RyeGZybSIsICZzdHIpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotI2lmIFB5X1VOSUNPREVfU0laRSA9PSBTSVpFT0ZfV0NIQVJfVAotICAgIHMgPSAod2NoYXJfdCAqKSBzMDsKLSNlbHNlCi0gICAgcyA9IFB5TWVtX01hbGxvYygobjArMSkqc2l6ZW9mKHdjaGFyX3QpKTsKLSAgICBpZiAoIXMpCi0gICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOwotICAgIGZvciAoaT0wOyBpPD1uMDsgaSsrKQotICAgICAgICBzW2ldID0gczBbaV07Ci0jZW5kaWYKKyAgICBzID0gUHlVbmljb2RlX0FzV2lkZUNoYXJTdHJpbmcoc3RyLCAmbjEpOworICAgIGlmIChzID09IE5VTEwpCisgICAgICAgIGdvdG8gZXhpdDsKIAogICAgIC8qIGFzc3VtZSBubyBjaGFuZ2UgaW4gc2l6ZSwgZmlyc3QgKi8KLSAgICBuMSA9IHdjc2xlbihzKSArIDE7Ci0gICAgYnVmID0gUHlNZW1fTWFsbG9jKG4xKnNpemVvZih3Y2hhcl90KSk7CisgICAgbjEgPSBuMSArIDE7CisgICAgYnVmID0gUHlNZW1fTWFsbG9jKG4xICogc2l6ZW9mKHdjaGFyX3QpKTsKICAgICBpZiAoIWJ1ZikgewogICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICBnb3RvIGV4aXQ7CiAgICAgfQogICAgIG4yID0gd2NzeGZybShidWYsIHMsIG4xKTsKLSAgICBpZiAobjIgPj0gbjEpIHsKKyAgICBpZiAobjIgPj0gKHNpemVfdCluMSkgewogICAgICAgICAvKiBtb3JlIHNwYWNlIG5lZWRlZCAqLwogICAgICAgICBidWYgPSBQeU1lbV9SZWFsbG9jKGJ1ZiwgKG4yKzEpKnNpemVvZih3Y2hhcl90KSk7CiAgICAgICAgIGlmICghYnVmKSB7CkBAIC0zMTEsMTEgKzI2NSwxMSBAQAogICAgICAgICBuMiA9IHdjc3hmcm0oYnVmLCBzLCBuMisxKTsKICAgICB9CiAgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihidWYsIG4yKTsKLSBleGl0OgotICAgIGlmIChidWYpIFB5TWVtX0ZyZWUoYnVmKTsKLSNpZiBQeV9VTklDT0RFX1NJWkUgIT0gU0laRU9GX1dDSEFSX1QKLSAgICBQeU1lbV9GcmVlKHMpOwotI2VuZGlmCitleGl0OgorICAgIGlmIChidWYpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmKTsKKyAgICBpZiAocykKKyAgICAgICAgUHlNZW1fRnJlZShzKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQogI2VuZGlmCkBAIC00ODUsNyArNDM5LDcgQEAKICAgICAgICAgICAgICAgIGluc3RlYWQgb2YgYW4gZW1wdHkgc3RyaW5nIGZvciBubF9sYW5naW5mbyhFUkEpLiAgKi8KICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnJlc3VsdCA9IG5sX2xhbmdpbmZvKGl0ZW0pOwogICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0ICE9IE5VTEwgPyByZXN1bHQgOiAiIjsKLSAgICAgICAgICAgIHJldHVybiBzdHIydW5pKHJlc3VsdCk7CisgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZUxvY2FsZShyZXN1bHQsIDApOwogICAgICAgICB9CiAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJ1bnN1cHBvcnRlZCBsYW5naW5mbyBjb25zdGFudCIpOwogICAgIHJldHVybiBOVUxMOwpAQCAtNTA0LDcgKzQ1OCw3IEBACiAgICAgY2hhciAqaW47CiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzIiwgJmluKSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIHN0cjJ1bmkoZ2V0dGV4dChpbikpOworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKGdldHRleHQoaW4pLCAwKTsKIH0KIAogUHlEb2NfU1RSVkFSKGRnZXR0ZXh0X19kb2NfXywKQEAgLTUxNyw3ICs0NzEsNyBAQAogICAgIGNoYXIgKmRvbWFpbiwgKmluOwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAienMiLCAmZG9tYWluLCAmaW4pKQogICAgICAgICByZXR1cm4gMDsKLSAgICByZXR1cm4gc3RyMnVuaShkZ2V0dGV4dChkb21haW4sIGluKSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVMb2NhbGUoZGdldHRleHQoZG9tYWluLCBpbiksIDApOwogfQogCiBQeURvY19TVFJWQVIoZGNnZXR0ZXh0X19kb2NfXywKQEAgLTUzMSw3ICs0ODUsNyBAQAogICAgIGludCBjYXRlZ29yeTsKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInpzaSIsICZkb21haW4sICZtc2dpZCwgJmNhdGVnb3J5KSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIHN0cjJ1bmkoZGNnZXR0ZXh0KGRvbWFpbixtc2dpZCxjYXRlZ29yeSkpOworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKGRjZ2V0dGV4dChkb21haW4sbXNnaWQsY2F0ZWdvcnkpLCAwKTsKIH0KIAogUHlEb2NfU1RSVkFSKHRleHRkb21haW5fX2RvY19fLApAQCAtNTQ5LDcgKzUwMyw3IEBACiAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiBzdHIydW5pKGRvbWFpbik7CisgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVMb2NhbGUoZG9tYWluLCAwKTsKIH0KIAogUHlEb2NfU1RSVkFSKGJpbmR0ZXh0ZG9tYWluX19kb2NfXywKQEAgLTU4MSw3ICs1MzUsNyBAQAogICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXN1bHQgPSBzdHIydW5pKGN1cnJlbnRfZGlybmFtZSk7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX0RlY29kZUxvY2FsZShjdXJyZW50X2Rpcm5hbWUsIDApOwogICAgIFB5X1hERUNSRUYoZGlybmFtZV9ieXRlcyk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTU5OSw3ICs1NTMsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBjb2Rlc2V0ID0gYmluZF90ZXh0ZG9tYWluX2NvZGVzZXQoZG9tYWluLCBjb2Rlc2V0KTsKICAgICBpZiAoY29kZXNldCkKLSAgICAgICAgcmV0dXJuIHN0cjJ1bmkoY29kZXNldCk7CisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKGNvZGVzZXQsIDApOwogICAgIFB5X1JFVFVSTl9OT05FOwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19sc3Byb2YuYyBiL01vZHVsZXMvX2xzcHJvZi5jCmluZGV4IGNjNDEyYmYuLmIwYTIyNmIgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX2xzcHJvZi5jCisrKyBiL01vZHVsZXMvX2xzcHJvZi5jCkBAIC0xNzYsMzYgKzE3NiwyOSBAQAogICAgIGlmIChmbi0+bV9zZWxmID09IE5VTEwpIHsKICAgICAgICAgLyogYnVpbHQtaW4gZnVuY3Rpb246IGxvb2sgdXAgdGhlIG1vZHVsZSBuYW1lICovCiAgICAgICAgIFB5T2JqZWN0ICptb2QgPSBmbi0+bV9tb2R1bGU7Ci0gICAgICAgIGNvbnN0IGNoYXIgKm1vZG5hbWU7Ci0gICAgICAgIGlmIChtb2QgJiYgUHlVbmljb2RlX0NoZWNrKG1vZCkpIHsKLSAgICAgICAgICAgIC8qIFhYWDogVGhlIGZvbGxvd2luZyB3aWxsIHRydW5jYXRlIG1vZHVsZSBuYW1lcyB3aXRoIGVtYmVkZGVkCi0gICAgICAgICAgICAgKiBudWxsLWNoYXJhY3RlcnMuICBJdCBpcyB1bmxpa2VseSB0aGF0IHRoaXMgY2FuIGhhcHBlbiBpbgotICAgICAgICAgICAgICogcHJhY3RpY2UgYW5kIHRoZSBjb25jZXF1ZW5jZXMgYXJlIG5vdCBzZXJpb3VzIGVub3VnaCB0bwotICAgICAgICAgICAgICogaW50cm9kdWNlIGV4dHJhIGNoZWNrcyBoZXJlLgotICAgICAgICAgICAgICovCi0gICAgICAgICAgICBtb2RuYW1lID0gX1B5VW5pY29kZV9Bc1N0cmluZyhtb2QpOwotICAgICAgICAgICAgaWYgKG1vZG5hbWUgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgIG1vZG5hbWUgPSAiPGVuY29kaW5nIGVycm9yPiI7Ci0gICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgUHlPYmplY3QgKm1vZG5hbWUgPSBOVUxMOworICAgICAgICBpZiAobW9kICE9IE5VTEwpIHsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sobW9kKSkgeworICAgICAgICAgICAgICAgIG1vZG5hbWUgPSBtb2Q7CisgICAgICAgICAgICAgICAgUHlfSU5DUkVGKG1vZG5hbWUpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSBpZiAoUHlNb2R1bGVfQ2hlY2sobW9kKSkgeworICAgICAgICAgICAgICAgIG1vZG5hbWUgPSBQeU1vZHVsZV9HZXROYW1lT2JqZWN0KG1vZCk7CisgICAgICAgICAgICAgICAgaWYgKG1vZG5hbWUgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICBlbHNlIGlmIChtb2QgJiYgUHlNb2R1bGVfQ2hlY2sobW9kKSkgewotICAgICAgICAgICAgbW9kbmFtZSA9IFB5TW9kdWxlX0dldE5hbWUobW9kKTsKLSAgICAgICAgICAgIGlmIChtb2RuYW1lID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwotICAgICAgICAgICAgICAgIG1vZG5hbWUgPSAiYnVpbHRpbnMiOworICAgICAgICBpZiAobW9kbmFtZSAhPSBOVUxMKSB7CisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcobW9kbmFtZSwgImJ1aWx0aW5zIikgIT0gMCkgeworICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjwlVS4lcz4iLCBtb2RuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZuLT5tX21sLT5tbF9uYW1lKTsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYobW9kbmFtZSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIFB5X0RFQ1JFRihtb2RuYW1lKTsKICAgICAgICAgfQotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIG1vZG5hbWUgPSAiYnVpbHRpbnMiOwotICAgICAgICB9Ci0gICAgICAgIGlmIChzdHJjbXAobW9kbmFtZSwgImJ1aWx0aW5zIikgIT0gMCkKLSAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPCVzLiVzPiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbi0+bV9tbC0+bWxfbmFtZSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPCVzPiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm4tPm1fbWwtPm1sX25hbWUpOworICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjwlcz4iLCBmbi0+bV9tbC0+bWxfbmFtZSk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICAvKiBidWlsdC1pbiBtZXRob2Q6IHRyeSB0byByZXR1cm4KZGlmZiAtLWdpdCBhL01vZHVsZXMvX2x6bWFtb2R1bGUuYyBiL01vZHVsZXMvX2x6bWFtb2R1bGUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNjkzNzdjCi0tLSAvZGV2L251bGwKKysrIGIvTW9kdWxlcy9fbHptYW1vZHVsZS5jCkBAIC0wLDAgKzEsMTExMSBAQAorLyogX2x6bWEgLSBMb3ctbGV2ZWwgUHl0aG9uIGludGVyZmFjZSB0byBsaWJsem1hLgorCisgICBJbml0aWFsIGltcGxlbWVudGF0aW9uIGJ5IFBlciDDmHl2aW5kIEthcmxzZW4uCisgICBSZXdyaXR0ZW4gYnkgTmFkZWVtIFZhd2RhLgorCisqLworCisjZGVmaW5lIFBZX1NTSVpFX1RfQ0xFQU4KKworI2luY2x1ZGUgIlB5dGhvbi5oIgorI2luY2x1ZGUgInN0cnVjdG1lbWJlci5oIgorI2lmZGVmIFdJVEhfVEhSRUFECisjaW5jbHVkZSAicHl0aHJlYWQuaCIKKyNlbmRpZgorCisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisKKyNpbmNsdWRlIDxsem1hLmg+CisKKworI2lmbmRlZiBQWV9MT05HX0xPTkcKKyNlcnJvciAiVGhpcyBtb2R1bGUgcmVxdWlyZXMgUFlfTE9OR19MT05HIHRvIGJlIGRlZmluZWQiCisjZW5kaWYKKworCisjaWZkZWYgV0lUSF9USFJFQUQKKyNkZWZpbmUgQUNRVUlSRV9MT0NLKG9iaikgZG8geyBcCisgICAgaWYgKCFQeVRocmVhZF9hY3F1aXJlX2xvY2soKG9iaiktPmxvY2ssIDApKSB7IFwKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUyBcCisgICAgICAgIFB5VGhyZWFkX2FjcXVpcmVfbG9jaygob2JqKS0+bG9jaywgMSk7IFwKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMgXAorICAgIH0gfSB3aGlsZSAoMCkKKyNkZWZpbmUgUkVMRUFTRV9MT0NLKG9iaikgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKChvYmopLT5sb2NrKQorI2Vsc2UKKyNkZWZpbmUgQUNRVUlSRV9MT0NLKG9iaikKKyNkZWZpbmUgUkVMRUFTRV9MT0NLKG9iaikKKyNlbmRpZgorCisKKy8qIENvbnRhaW5lciBmb3JtYXRzOiAqLworZW51bSB7CisgICAgRk9STUFUX0FVVE8sCisgICAgRk9STUFUX1haLAorICAgIEZPUk1BVF9BTE9ORSwKKyAgICBGT1JNQVRfUkFXLAorfTsKKworI2RlZmluZSBMWk1BX0NIRUNLX1VOS05PV04gKExaTUFfQ0hFQ0tfSURfTUFYICsgMSkKKworCit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlPYmplY3RfSEVBRAorICAgIGx6bWFfc3RyZWFtIGx6czsKKyAgICBpbnQgZmx1c2hlZDsKKyNpZmRlZiBXSVRIX1RIUkVBRAorICAgIFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrOworI2VuZGlmCit9IENvbXByZXNzb3I7CisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBQeU9iamVjdF9IRUFECisgICAgbHptYV9zdHJlYW0gbHpzOworICAgIGludCBjaGVjazsKKyAgICBjaGFyIGVvZjsKKyAgICBQeU9iamVjdCAqdW51c2VkX2RhdGE7CisjaWZkZWYgV0lUSF9USFJFQUQKKyAgICBQeVRocmVhZF90eXBlX2xvY2sgbG9jazsKKyNlbmRpZgorfSBEZWNvbXByZXNzb3I7CisKKy8qIExaTUFFcnJvciBjbGFzcyBvYmplY3QuICovCitzdGF0aWMgUHlPYmplY3QgKkVycm9yOworCisvKiBBbiBlbXB0eSB0dXBsZSwgdXNlZCBieSB0aGUgZmlsdGVyIHNwZWNpZmllciBwYXJzaW5nIGNvZGUuICovCitzdGF0aWMgUHlPYmplY3QgKmVtcHR5X3R1cGxlOworCisKKy8qIEhlbHBlciBmdW5jdGlvbnMuICovCisKK3N0YXRpYyBpbnQKK2NhdGNoX2x6bWFfZXJyb3IobHptYV9yZXQgbHpyZXQpCit7CisgICAgc3dpdGNoIChsenJldCkgeworICAgICAgICBjYXNlIExaTUFfT0s6CisgICAgICAgIGNhc2UgTFpNQV9HRVRfQ0hFQ0s6CisgICAgICAgIGNhc2UgTFpNQV9OT19DSEVDSzoKKyAgICAgICAgY2FzZSBMWk1BX1NUUkVBTV9FTkQ6CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgY2FzZSBMWk1BX1VOU1VQUE9SVEVEX0NIRUNLOgorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKEVycm9yLCAiVW5zdXBwb3J0ZWQgaW50ZWdyaXR5IGNoZWNrIik7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgY2FzZSBMWk1BX01FTV9FUlJPUjoKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgY2FzZSBMWk1BX01FTUxJTUlUX0VSUk9SOgorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKEVycm9yLCAiTWVtb3J5IHVzYWdlIGxpbWl0IGV4Y2VlZGVkIik7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgY2FzZSBMWk1BX0ZPUk1BVF9FUlJPUjoKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhFcnJvciwgIklucHV0IGZvcm1hdCBub3Qgc3VwcG9ydGVkIGJ5IGRlY29kZXIiKTsKKyAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICBjYXNlIExaTUFfT1BUSU9OU19FUlJPUjoKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhFcnJvciwgIkludmFsaWQgb3IgdW5zdXBwb3J0ZWQgb3B0aW9ucyIpOworICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIGNhc2UgTFpNQV9EQVRBX0VSUk9SOgorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKEVycm9yLCAiQ29ycnVwdCBpbnB1dCBkYXRhIik7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgY2FzZSBMWk1BX0JVRl9FUlJPUjoKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhFcnJvciwgIkluc3VmZmljaWVudCBidWZmZXIgc3BhY2UiKTsKKyAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICBjYXNlIExaTUFfUFJPR19FUlJPUjoKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhFcnJvciwgIkludGVybmFsIGVycm9yIik7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChFcnJvciwgIlVucmVjb2duaXplZCBlcnJvciBmcm9tIGxpYmx6bWE6ICVkIiwgbHpyZXQpOworICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgfQorfQorCisjaWYgQlVGU0laIDwgODE5MgorI2RlZmluZSBJTklUSUFMX0JVRkZFUl9TSVpFIDgxOTIKKyNlbHNlCisjZGVmaW5lIElOSVRJQUxfQlVGRkVSX1NJWkUgQlVGU0laCisjZW5kaWYKKworc3RhdGljIGludAorZ3Jvd19idWZmZXIoUHlPYmplY3QgKipidWYpCit7CisgICAgc2l6ZV90IHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKCpidWYpOworICAgIHJldHVybiBfUHlCeXRlc19SZXNpemUoYnVmLCBzaXplICsgKHNpemUgPj4gMykgKyA2KTsKK30KKworCisvKiBTb21lIGN1c3RvbSB0eXBlIGNvbnZlcnNpb25zIGZvciBQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoKSwKKyAgIHNpbmNlIHRoZSBwcmVkZWZpbmVkIGNvbnZlcnNpb24gc3BlY2lmaWVycyBkbyBub3Qgc3VpdCBvdXIgbmVlZHM6CisKKyAgICAgIHVpbnQzMl90IC0gdGhlICJJIiAodW5zaWduZWQgaW50KSBzcGVjaWZpZXIgaXMgdGhlIHJpZ2h0IHNpemUsIGJ1dAorICAgICAgc2lsZW50bHkgaWdub3JlcyBvdmVyZmxvd3Mgb24gY29udmVyc2lvbi4KKworICAgICAgbHptYV9tb2RlIGFuZCBsem1hX21hdGNoX2ZpbmRlciAtIHRoZXNlIGFyZSBlbnVtZXJhdGlvbiB0eXBlcywgYW5kCisgICAgICBzbyB0aGUgc2l6ZSBvZiBlYWNoIGlzIGltcGxlbWVudGF0aW9uLWRlZmluZWQuIFdvcnNlLCBkaWZmZXJlbnQKKyAgICAgIGVudW0gdHlwZXMgY2FuIGJlIG9mIGRpZmZlcmVudCBzaXplcyB3aXRoaW4gdGhlIHNhbWUgcHJvZ3JhbSwgc28KKyAgICAgIHRvIGJlIHN0cmljdGx5IGNvcnJlY3QsIHdlIG5lZWQgdG8gZGVmaW5lIHR3byBzZXBhcmF0ZSBjb252ZXJ0ZXJzLgorICovCisKKyNkZWZpbmUgSU5UX1RZUEVfQ09OVkVSVEVSX0ZVTkMoVFlQRSwgRlVOQ05BTUUpIFwKKyAgICBzdGF0aWMgaW50IFwKKyAgICBGVU5DTkFNRShQeU9iamVjdCAqb2JqLCB2b2lkICpwdHIpIFwKKyAgICB7IFwKKyAgICAgICAgdW5zaWduZWQgbG9uZyB2YWw7IFwKKyAgICAgICAgXAorICAgICAgICB2YWwgPSBQeUxvbmdfQXNVbnNpZ25lZExvbmcob2JqKTsgXAorICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkgXAorICAgICAgICAgICAgcmV0dXJuIDA7IFwKKyAgICAgICAgaWYgKCh1bnNpZ25lZCBsb25nKShUWVBFKXZhbCAhPSB2YWwpIHsgXAorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVmFsdWUgdG9vIGxhcmdlIGZvciAiICNUWVBFICIgdHlwZSIpOyBcCisgICAgICAgICAgICByZXR1cm4gMDsgXAorICAgICAgICB9IFwKKyAgICAgICAgKihUWVBFICopcHRyID0gdmFsOyBcCisgICAgICAgIHJldHVybiAxOyBcCisgICAgfQorCitJTlRfVFlQRV9DT05WRVJURVJfRlVOQyh1aW50MzJfdCwgdWludDMyX2NvbnZlcnRlcikKK0lOVF9UWVBFX0NPTlZFUlRFUl9GVU5DKGx6bWFfbW9kZSwgbHptYV9tb2RlX2NvbnZlcnRlcikKK0lOVF9UWVBFX0NPTlZFUlRFUl9GVU5DKGx6bWFfbWF0Y2hfZmluZGVyLCBsem1hX21mX2NvbnZlcnRlcikKKworI3VuZGVmIElOVF9UWVBFX0NPTlZFUlRFUl9GVU5DCisKKworLyogRmlsdGVyIHNwZWNpZmllciBwYXJzaW5nIGZ1bmN0aW9ucy4gKi8KKworc3RhdGljIHZvaWQgKgorcGFyc2VfZmlsdGVyX3NwZWNfbHptYShQeU9iamVjdCAqc3BlYykKK3sKKyAgICBzdGF0aWMgY2hhciAqb3B0bmFtZXNbXSA9IHsiaWQiLCAicHJlc2V0IiwgImRpY3Rfc2l6ZSIsICJsYyIsICJscCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBiIiwgIm1vZGUiLCAibmljZV9sZW4iLCAibWYiLCAiZGVwdGgiLCBOVUxMfTsKKyAgICBQeU9iamVjdCAqaWQ7CisgICAgUHlPYmplY3QgKnByZXNldF9vYmo7CisgICAgdWludDMyX3QgcHJlc2V0ID0gTFpNQV9QUkVTRVRfREVGQVVMVDsKKyAgICBsem1hX29wdGlvbnNfbHptYSAqb3B0aW9uczsKKworICAgIC8qIEZpcnN0LCBmaWxsIGluIGRlZmF1bHQgdmFsdWVzIGZvciBhbGwgdGhlIG9wdGlvbnMgdXNpbmcgYSBwcmVzZXQuCisgICAgICAgVGhlbiwgb3ZlcnJpZGUgdGhlIGRlZmF1bHRzIHdpdGggYW55IHZhbHVlcyBnaXZlbiBieSB0aGUgY2FsbGVyLiAqLworCisgICAgcHJlc2V0X29iaiA9IFB5TWFwcGluZ19HZXRJdGVtU3RyaW5nKHNwZWMsICJwcmVzZXQiKTsKKyAgICBpZiAocHJlc2V0X29iaiA9PSBOVUxMKSB7CisgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0tleUVycm9yKSkKKyAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0gZWxzZSB7CisgICAgICAgIGludCBvayA9IHVpbnQzMl9jb252ZXJ0ZXIocHJlc2V0X29iaiwgJnByZXNldCk7CisgICAgICAgIFB5X0RFQ1JFRihwcmVzZXRfb2JqKTsKKyAgICAgICAgaWYgKCFvaykKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIG9wdGlvbnMgPSAobHptYV9vcHRpb25zX2x6bWEgKilQeU1lbV9NYWxsb2Moc2l6ZW9mICpvcHRpb25zKTsKKyAgICBpZiAob3B0aW9ucyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKyAgICBtZW1zZXQob3B0aW9ucywgMCwgc2l6ZW9mICpvcHRpb25zKTsKKworICAgIGlmIChsem1hX2x6bWFfcHJlc2V0KG9wdGlvbnMsIHByZXNldCkpIHsKKyAgICAgICAgUHlNZW1fRnJlZShvcHRpb25zKTsKKyAgICAgICAgUHlFcnJfRm9ybWF0KEVycm9yLCAibHptYV9sem1hX3ByZXNldCgpIGZhaWxlZCBmb3IgcHJlc2V0ICUjeCIsIHByZXNldCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGVtcHR5X3R1cGxlLCBzcGVjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ8T09PJk8mTyZPJk8mTyZPJk8mIiwgb3B0bmFtZXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmlkLCAmcHJlc2V0X29iaiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfY29udmVydGVyLCAmb3B0aW9ucy0+ZGljdF9zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl9jb252ZXJ0ZXIsICZvcHRpb25zLT5sYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfY29udmVydGVyLCAmb3B0aW9ucy0+bHAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX2NvbnZlcnRlciwgJm9wdGlvbnMtPnBiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGx6bWFfbW9kZV9jb252ZXJ0ZXIsICZvcHRpb25zLT5tb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl9jb252ZXJ0ZXIsICZvcHRpb25zLT5uaWNlX2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsem1hX21mX2NvbnZlcnRlciwgJm9wdGlvbnMtPm1mLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl9jb252ZXJ0ZXIsICZvcHRpb25zLT5kZXB0aCkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiSW52YWxpZCBmaWx0ZXIgc3BlY2lmaWVyIGZvciBMWk1BIGZpbHRlciIpOworICAgICAgICBQeU1lbV9GcmVlKG9wdGlvbnMpOworICAgICAgICBvcHRpb25zID0gTlVMTDsKKyAgICB9CisgICAgcmV0dXJuIG9wdGlvbnM7Cit9CisKK3N0YXRpYyB2b2lkICoKK3BhcnNlX2ZpbHRlcl9zcGVjX2RlbHRhKFB5T2JqZWN0ICpzcGVjKQoreworICAgIHN0YXRpYyBjaGFyICpvcHRuYW1lc1tdID0geyJpZCIsICJkaXN0IiwgTlVMTH07CisgICAgUHlPYmplY3QgKmlkOworICAgIHVpbnQzMl90IGRpc3QgPSAxOworICAgIGx6bWFfb3B0aW9uc19kZWx0YSAqb3B0aW9uczsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGVtcHR5X3R1cGxlLCBzcGVjLCAifE9PJiIsIG9wdG5hbWVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZpZCwgdWludDMyX2NvbnZlcnRlciwgJmRpc3QpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIkludmFsaWQgZmlsdGVyIHNwZWNpZmllciBmb3IgZGVsdGEgZmlsdGVyIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIG9wdGlvbnMgPSAobHptYV9vcHRpb25zX2RlbHRhICopUHlNZW1fTWFsbG9jKHNpemVvZiAqb3B0aW9ucyk7CisgICAgaWYgKG9wdGlvbnMgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisgICAgbWVtc2V0KG9wdGlvbnMsIDAsIHNpemVvZiAqb3B0aW9ucyk7CisgICAgb3B0aW9ucy0+dHlwZSA9IExaTUFfREVMVEFfVFlQRV9CWVRFOworICAgIG9wdGlvbnMtPmRpc3QgPSBkaXN0OworICAgIHJldHVybiBvcHRpb25zOworfQorCitzdGF0aWMgdm9pZCAqCitwYXJzZV9maWx0ZXJfc3BlY19iY2ooUHlPYmplY3QgKnNwZWMpCit7CisgICAgc3RhdGljIGNoYXIgKm9wdG5hbWVzW10gPSB7ImlkIiwgInN0YXJ0X29mZnNldCIsIE5VTEx9OworICAgIFB5T2JqZWN0ICppZDsKKyAgICB1aW50MzJfdCBzdGFydF9vZmZzZXQgPSAwOworICAgIGx6bWFfb3B0aW9uc19iY2ogKm9wdGlvbnM7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhlbXB0eV90dXBsZSwgc3BlYywgInxPTyYiLCBvcHRuYW1lcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmaWQsIHVpbnQzMl9jb252ZXJ0ZXIsICZzdGFydF9vZmZzZXQpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIkludmFsaWQgZmlsdGVyIHNwZWNpZmllciBmb3IgQkNKIGZpbHRlciIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBvcHRpb25zID0gKGx6bWFfb3B0aW9uc19iY2ogKilQeU1lbV9NYWxsb2Moc2l6ZW9mICpvcHRpb25zKTsKKyAgICBpZiAob3B0aW9ucyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKyAgICBtZW1zZXQob3B0aW9ucywgMCwgc2l6ZW9mICpvcHRpb25zKTsKKyAgICBvcHRpb25zLT5zdGFydF9vZmZzZXQgPSBzdGFydF9vZmZzZXQ7CisgICAgcmV0dXJuIG9wdGlvbnM7Cit9CisKK3N0YXRpYyB2b2lkICoKK3BhcnNlX2ZpbHRlcl9zcGVjKGx6bWFfZmlsdGVyICpmLCBQeU9iamVjdCAqc3BlYykKK3sKKyAgICBQeU9iamVjdCAqaWRfb2JqOworCisgICAgaWYgKCFQeU1hcHBpbmdfQ2hlY2soc3BlYykpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJGaWx0ZXIgc3BlY2lmaWVyIG11c3QgYmUgYSBkaWN0IG9yIGRpY3QtbGlrZSBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlkX29iaiA9IFB5TWFwcGluZ19HZXRJdGVtU3RyaW5nKHNwZWMsICJpZCIpOworICAgIGlmIChpZF9vYmogPT0gTlVMTCkgeworICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19LZXlFcnJvcikpCisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRmlsdGVyIHNwZWNpZmllciBtdXN0IGhhdmUgYW4gXCJpZFwiIGVudHJ5Iik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBmLT5pZCA9IFB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ0xvbmcoaWRfb2JqKTsKKyAgICBQeV9ERUNSRUYoaWRfb2JqKTsKKyAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBzd2l0Y2ggKGYtPmlkKSB7CisgICAgICAgIGNhc2UgTFpNQV9GSUxURVJfTFpNQTE6CisgICAgICAgIGNhc2UgTFpNQV9GSUxURVJfTFpNQTI6CisgICAgICAgICAgICBmLT5vcHRpb25zID0gcGFyc2VfZmlsdGVyX3NwZWNfbHptYShzcGVjKTsKKyAgICAgICAgICAgIHJldHVybiBmLT5vcHRpb25zOworICAgICAgICBjYXNlIExaTUFfRklMVEVSX0RFTFRBOgorICAgICAgICAgICAgZi0+b3B0aW9ucyA9IHBhcnNlX2ZpbHRlcl9zcGVjX2RlbHRhKHNwZWMpOworICAgICAgICAgICAgcmV0dXJuIGYtPm9wdGlvbnM7CisgICAgICAgIGNhc2UgTFpNQV9GSUxURVJfWDg2OgorICAgICAgICBjYXNlIExaTUFfRklMVEVSX1BPV0VSUEM6CisgICAgICAgIGNhc2UgTFpNQV9GSUxURVJfSUE2NDoKKyAgICAgICAgY2FzZSBMWk1BX0ZJTFRFUl9BUk06CisgICAgICAgIGNhc2UgTFpNQV9GSUxURVJfQVJNVEhVTUI6CisgICAgICAgIGNhc2UgTFpNQV9GSUxURVJfU1BBUkM6CisgICAgICAgICAgICBmLT5vcHRpb25zID0gcGFyc2VfZmlsdGVyX3NwZWNfYmNqKHNwZWMpOworICAgICAgICAgICAgcmV0dXJuIGYtPm9wdGlvbnM7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwgIkludmFsaWQgZmlsdGVyIElEOiAlbGx1IiwgZi0+aWQpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorfQorCitzdGF0aWMgdm9pZAorZnJlZV9maWx0ZXJfY2hhaW4obHptYV9maWx0ZXIgZmlsdGVyc1tdKQoreworICAgIGludCBpOworCisgICAgZm9yIChpID0gMDsgZmlsdGVyc1tpXS5pZCAhPSBMWk1BX1ZMSV9VTktOT1dOOyBpKyspCisgICAgICAgIFB5TWVtX0ZyZWUoZmlsdGVyc1tpXS5vcHRpb25zKTsKK30KKworc3RhdGljIGludAorcGFyc2VfZmlsdGVyX2NoYWluX3NwZWMobHptYV9maWx0ZXIgZmlsdGVyc1tdLCBQeU9iamVjdCAqZmlsdGVyc3BlY3MpCit7CisgICAgUHlfc3NpemVfdCBpLCBudW1fZmlsdGVyczsKKworICAgIG51bV9maWx0ZXJzID0gUHlTZXF1ZW5jZV9MZW5ndGgoZmlsdGVyc3BlY3MpOworICAgIGlmIChudW1fZmlsdGVycyA9PSAtMSkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGlmIChudW1fZmlsdGVycyA+IExaTUFfRklMVEVSU19NQVgpIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiVG9vIG1hbnkgZmlsdGVycyAtIGxpYmx6bWEgc3VwcG9ydHMgYSBtYXhpbXVtIG9mICVkIiwKKyAgICAgICAgICAgICAgICAgICAgIExaTUFfRklMVEVSU19NQVgpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgZm9yIChpID0gMDsgaSA8IG51bV9maWx0ZXJzOyBpKyspIHsKKyAgICAgICAgaW50IG9rID0gMTsKKyAgICAgICAgUHlPYmplY3QgKnNwZWMgPSBQeVNlcXVlbmNlX0dldEl0ZW0oZmlsdGVyc3BlY3MsIGkpOworICAgICAgICBpZiAoc3BlYyA9PSBOVUxMIHx8IHBhcnNlX2ZpbHRlcl9zcGVjKCZmaWx0ZXJzW2ldLCBzcGVjKSA9PSBOVUxMKQorICAgICAgICAgICAgb2sgPSAwOworICAgICAgICBQeV9YREVDUkVGKHNwZWMpOworICAgICAgICBpZiAoIW9rKSB7CisgICAgICAgICAgICBmaWx0ZXJzW2ldLmlkID0gTFpNQV9WTElfVU5LTk9XTjsKKyAgICAgICAgICAgIGZyZWVfZmlsdGVyX2NoYWluKGZpbHRlcnMpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgfQorICAgIGZpbHRlcnNbbnVtX2ZpbHRlcnNdLmlkID0gTFpNQV9WTElfVU5LTk9XTjsKKyAgICByZXR1cm4gMDsKK30KKworCisvKiBMWk1BQ29tcHJlc3NvciBjbGFzcy4gKi8KKworc3RhdGljIFB5T2JqZWN0ICoKK2NvbXByZXNzKENvbXByZXNzb3IgKmMsIHVpbnQ4X3QgKmRhdGEsIHNpemVfdCBsZW4sIGx6bWFfYWN0aW9uIGFjdGlvbikKK3sKKyAgICBzaXplX3QgZGF0YV9zaXplID0gMDsKKyAgICBQeU9iamVjdCAqcmVzdWx0OworCisgICAgcmVzdWx0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBJTklUSUFMX0JVRkZFUl9TSVpFKTsKKyAgICBpZiAocmVzdWx0ID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGMtPmx6cy5uZXh0X2luID0gZGF0YTsKKyAgICBjLT5senMuYXZhaWxfaW4gPSBsZW47CisgICAgYy0+bHpzLm5leHRfb3V0ID0gKHVpbnQ4X3QgKilQeUJ5dGVzX0FTX1NUUklORyhyZXN1bHQpOworICAgIGMtPmx6cy5hdmFpbF9vdXQgPSBQeUJ5dGVzX0dFVF9TSVpFKHJlc3VsdCk7CisgICAgZm9yICg7OykgeworICAgICAgICBsem1hX3JldCBsenJldDsKKworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIGx6cmV0ID0gbHptYV9jb2RlKCZjLT5senMsIGFjdGlvbik7CisgICAgICAgIGRhdGFfc2l6ZSA9IChjaGFyICopYy0+bHpzLm5leHRfb3V0IC0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgaWYgKGNhdGNoX2x6bWFfZXJyb3IobHpyZXQpKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgaWYgKChhY3Rpb24gPT0gTFpNQV9SVU4gJiYgYy0+bHpzLmF2YWlsX2luID09IDApIHx8CisgICAgICAgICAgICAoYWN0aW9uID09IExaTUFfRklOSVNIICYmIGx6cmV0ID09IExaTUFfU1RSRUFNX0VORCkpIHsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9IGVsc2UgaWYgKGMtPmx6cy5hdmFpbF9vdXQgPT0gMCkgeworICAgICAgICAgICAgaWYgKGdyb3dfYnVmZmVyKCZyZXN1bHQpID09IC0xKQorICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICBjLT5senMubmV4dF9vdXQgPSAodWludDhfdCAqKVB5Qnl0ZXNfQVNfU1RSSU5HKHJlc3VsdCkgKyBkYXRhX3NpemU7CisgICAgICAgICAgICBjLT5senMuYXZhaWxfb3V0ID0gUHlCeXRlc19HRVRfU0laRShyZXN1bHQpIC0gZGF0YV9zaXplOworICAgICAgICB9CisgICAgfQorICAgIGlmIChkYXRhX3NpemUgIT0gUHlCeXRlc19HRVRfU0laRShyZXN1bHQpKQorICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZyZXN1bHQsIGRhdGFfc2l6ZSkgPT0gLTEpCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgIHJldHVybiByZXN1bHQ7CisKK2Vycm9yOgorICAgIFB5X1hERUNSRUYocmVzdWx0KTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworUHlEb2NfU1RSVkFSKENvbXByZXNzb3JfY29tcHJlc3NfZG9jLAorImNvbXByZXNzKGRhdGEpIC0+IGJ5dGVzXG4iCisiXG4iCisiUHJvdmlkZSBkYXRhIHRvIHRoZSBjb21wcmVzc29yIG9iamVjdC4gUmV0dXJucyBhIGNodW5rIG9mXG4iCisiY29tcHJlc3NlZCBkYXRhIGlmIHBvc3NpYmxlLCBvciBiXCJcIiBvdGhlcndpc2UuXG4iCisiXG4iCisiV2hlbiB5b3UgaGF2ZSBmaW5pc2hlZCBwcm92aWRpbmcgZGF0YSB0byB0aGUgY29tcHJlc3NvciwgY2FsbCB0aGVcbiIKKyJmbHVzaCgpIG1ldGhvZCB0byBmaW5pc2ggdGhlIGNvbnZlcnNpb24gcHJvY2Vzcy5cbiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorQ29tcHJlc3Nvcl9jb21wcmVzcyhDb21wcmVzc29yICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeV9idWZmZXIgYnVmZmVyOworICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5Kjpjb21wcmVzcyIsICZidWZmZXIpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKKyAgICBpZiAoc2VsZi0+Zmx1c2hlZCkKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJDb21wcmVzc29yIGhhcyBiZWVuIGZsdXNoZWQiKTsKKyAgICBlbHNlCisgICAgICAgIHJlc3VsdCA9IGNvbXByZXNzKHNlbGYsIGJ1ZmZlci5idWYsIGJ1ZmZlci5sZW4sIExaTUFfUlVOKTsKKyAgICBSRUxFQVNFX0xPQ0soc2VsZik7CisgICAgUHlCdWZmZXJfUmVsZWFzZSgmYnVmZmVyKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitQeURvY19TVFJWQVIoQ29tcHJlc3Nvcl9mbHVzaF9kb2MsCisiZmx1c2goKSAtPiBieXRlc1xuIgorIlxuIgorIkZpbmlzaCB0aGUgY29tcHJlc3Npb24gcHJvY2Vzcy4gUmV0dXJucyB0aGUgY29tcHJlc3NlZCBkYXRhIGxlZnRcbiIKKyJpbiBpbnRlcm5hbCBidWZmZXJzLlxuIgorIlxuIgorIlRoZSBjb21wcmVzc29yIG9iamVjdCBjYW5ub3QgYmUgdXNlZCBhZnRlciB0aGlzIG1ldGhvZCBpcyBjYWxsZWQuXG4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK0NvbXByZXNzb3JfZmx1c2goQ29tcHJlc3NvciAqc2VsZiwgUHlPYmplY3QgKm5vYXJncykKK3sKKyAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKKworICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKKyAgICBpZiAoc2VsZi0+Zmx1c2hlZCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIlJlcGVhdGVkIGNhbGwgdG8gZmx1c2goKSIpOworICAgIH0gZWxzZSB7CisgICAgICAgIHNlbGYtPmZsdXNoZWQgPSAxOworICAgICAgICByZXN1bHQgPSBjb21wcmVzcyhzZWxmLCBOVUxMLCAwLCBMWk1BX0ZJTklTSCk7CisgICAgfQorICAgIFJFTEVBU0VfTE9DSyhzZWxmKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitzdGF0aWMgaW50CitDb21wcmVzc29yX2luaXRfeHoobHptYV9zdHJlYW0gKmx6cywgaW50IGNoZWNrLCB1aW50MzJfdCBwcmVzZXQsCisgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmZpbHRlcnNwZWNzKQoreworICAgIGx6bWFfcmV0IGx6cmV0OworCisgICAgaWYgKGZpbHRlcnNwZWNzID09IFB5X05vbmUpIHsKKyAgICAgICAgbHpyZXQgPSBsem1hX2Vhc3lfZW5jb2RlcihsenMsIHByZXNldCwgY2hlY2spOworICAgIH0gZWxzZSB7CisgICAgICAgIGx6bWFfZmlsdGVyIGZpbHRlcnNbTFpNQV9GSUxURVJTX01BWCArIDFdOworCisgICAgICAgIGlmIChwYXJzZV9maWx0ZXJfY2hhaW5fc3BlYyhmaWx0ZXJzLCBmaWx0ZXJzcGVjcykgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIGx6cmV0ID0gbHptYV9zdHJlYW1fZW5jb2RlcihsenMsIGZpbHRlcnMsIGNoZWNrKTsKKyAgICAgICAgZnJlZV9maWx0ZXJfY2hhaW4oZmlsdGVycyk7CisgICAgfQorICAgIGlmIChjYXRjaF9sem1hX2Vycm9yKGx6cmV0KSkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGVsc2UKKyAgICAgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQKK0NvbXByZXNzb3JfaW5pdF9hbG9uZShsem1hX3N0cmVhbSAqbHpzLCB1aW50MzJfdCBwcmVzZXQsIFB5T2JqZWN0ICpmaWx0ZXJzcGVjcykKK3sKKyAgICBsem1hX3JldCBsenJldDsKKworICAgIGlmIChmaWx0ZXJzcGVjcyA9PSBQeV9Ob25lKSB7CisgICAgICAgIGx6bWFfb3B0aW9uc19sem1hIG9wdGlvbnM7CisKKyAgICAgICAgaWYgKGx6bWFfbHptYV9wcmVzZXQoJm9wdGlvbnMsIHByZXNldCkpIHsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChFcnJvciwgIkludmFsaWQgY29tcHJlc3Npb24gcHJlc2V0OiAlI3giLCBwcmVzZXQpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIGx6cmV0ID0gbHptYV9hbG9uZV9lbmNvZGVyKGx6cywgJm9wdGlvbnMpOworICAgIH0gZWxzZSB7CisgICAgICAgIGx6bWFfZmlsdGVyIGZpbHRlcnNbTFpNQV9GSUxURVJTX01BWCArIDFdOworCisgICAgICAgIGlmIChwYXJzZV9maWx0ZXJfY2hhaW5fc3BlYyhmaWx0ZXJzLCBmaWx0ZXJzcGVjcykgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIGlmIChmaWx0ZXJzWzBdLmlkID09IExaTUFfRklMVEVSX0xaTUExICYmCisgICAgICAgICAgICBmaWx0ZXJzWzFdLmlkID09IExaTUFfVkxJX1VOS05PV04pIHsKKyAgICAgICAgICAgIGx6cmV0ID0gbHptYV9hbG9uZV9lbmNvZGVyKGx6cywgZmlsdGVyc1swXS5vcHRpb25zKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJJbnZhbGlkIGZpbHRlciBjaGFpbiBmb3IgRk9STUFUX0FMT05FIC0gIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIGEgc2luZ2xlIExaTUExIGZpbHRlciIpOworICAgICAgICAgICAgbHpyZXQgPSBMWk1BX1BST0dfRVJST1I7CisgICAgICAgIH0KKyAgICAgICAgZnJlZV9maWx0ZXJfY2hhaW4oZmlsdGVycyk7CisgICAgfQorICAgIGlmIChQeUVycl9PY2N1cnJlZCgpIHx8IGNhdGNoX2x6bWFfZXJyb3IobHpyZXQpKQorICAgICAgICByZXR1cm4gLTE7CisgICAgZWxzZQorICAgICAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludAorQ29tcHJlc3Nvcl9pbml0X3Jhdyhsem1hX3N0cmVhbSAqbHpzLCBQeU9iamVjdCAqZmlsdGVyc3BlY3MpCit7CisgICAgbHptYV9maWx0ZXIgZmlsdGVyc1tMWk1BX0ZJTFRFUlNfTUFYICsgMV07CisgICAgbHptYV9yZXQgbHpyZXQ7CisKKyAgICBpZiAoZmlsdGVyc3BlY3MgPT0gUHlfTm9uZSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJNdXN0IHNwZWNpZnkgZmlsdGVycyBmb3IgRk9STUFUX1JBVyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmIChwYXJzZV9maWx0ZXJfY2hhaW5fc3BlYyhmaWx0ZXJzLCBmaWx0ZXJzcGVjcykgPT0gLTEpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBsenJldCA9IGx6bWFfcmF3X2VuY29kZXIobHpzLCBmaWx0ZXJzKTsKKyAgICBmcmVlX2ZpbHRlcl9jaGFpbihmaWx0ZXJzKTsKKyAgICBpZiAoY2F0Y2hfbHptYV9lcnJvcihsenJldCkpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50CitDb21wcmVzc29yX2luaXQoQ29tcHJlc3NvciAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCit7CisgICAgc3RhdGljIGNoYXIgKmFyZ19uYW1lc1tdID0geyJmb3JtYXQiLCAiY2hlY2siLCAicHJlc2V0IiwgImZpbHRlcnMiLCBOVUxMfTsKKyAgICBpbnQgZm9ybWF0ID0gRk9STUFUX1haOworICAgIGludCBjaGVjayA9IC0xOworICAgIHVpbnQzMl90IHByZXNldCA9IExaTUFfUFJFU0VUX0RFRkFVTFQ7CisgICAgUHlPYmplY3QgKnByZXNldF9vYmogPSBQeV9Ob25lOworICAgIFB5T2JqZWN0ICpmaWx0ZXJzcGVjcyA9IFB5X05vbmU7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInxpaU9POkxaTUFDb21wcmVzc29yIiwgYXJnX25hbWVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmb3JtYXQsICZjaGVjaywgJnByZXNldF9vYmosCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZpbHRlcnNwZWNzKSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgaWYgKGZvcm1hdCAhPSBGT1JNQVRfWFogJiYgY2hlY2sgIT0gLTEgJiYgY2hlY2sgIT0gTFpNQV9DSEVDS19OT05FKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIkludGVncml0eSBjaGVja3MgYXJlIG9ubHkgc3VwcG9ydGVkIGJ5IEZPUk1BVF9YWiIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgaWYgKHByZXNldF9vYmogIT0gUHlfTm9uZSAmJiBmaWx0ZXJzcGVjcyAhPSBQeV9Ob25lKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBzcGVjaWZ5IGJvdGggcHJlc2V0IGFuZCBmaWx0ZXIgY2hhaW4iKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGlmIChwcmVzZXRfb2JqICE9IFB5X05vbmUpCisgICAgICAgIGlmICghdWludDMyX2NvbnZlcnRlcihwcmVzZXRfb2JqLCAmcHJlc2V0KSkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgc2VsZi0+bG9jayA9IFB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKTsKKyAgICBpZiAoc2VsZi0+bG9jayA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19NZW1vcnlFcnJvciwgIlVuYWJsZSB0byBhbGxvY2F0ZSBsb2NrIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisjZW5kaWYKKworICAgIHNlbGYtPmZsdXNoZWQgPSAwOworICAgIHN3aXRjaCAoZm9ybWF0KSB7CisgICAgICAgIGNhc2UgRk9STUFUX1haOgorICAgICAgICAgICAgaWYgKGNoZWNrID09IC0xKQorICAgICAgICAgICAgICAgIGNoZWNrID0gTFpNQV9DSEVDS19DUkM2NDsKKyAgICAgICAgICAgIGlmIChDb21wcmVzc29yX2luaXRfeHooJnNlbGYtPmx6cywgY2hlY2ssIHByZXNldCwgZmlsdGVyc3BlY3MpICE9IDApCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICByZXR1cm4gMDsKKworICAgICAgICBjYXNlIEZPUk1BVF9BTE9ORToKKyAgICAgICAgICAgIGlmIChDb21wcmVzc29yX2luaXRfYWxvbmUoJnNlbGYtPmx6cywgcHJlc2V0LCBmaWx0ZXJzcGVjcykgIT0gMCkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgIGNhc2UgRk9STUFUX1JBVzoKKyAgICAgICAgICAgIGlmIChDb21wcmVzc29yX2luaXRfcmF3KCZzZWxmLT5senMsIGZpbHRlcnNwZWNzKSAhPSAwKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgcmV0dXJuIDA7CisKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJJbnZhbGlkIGNvbnRhaW5lciBmb3JtYXQ6ICVkIiwgZm9ybWF0KTsKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHNlbGYtPmxvY2spOworICAgIHNlbGYtPmxvY2sgPSBOVUxMOworI2VuZGlmCisgICAgcmV0dXJuIC0xOworfQorCitzdGF0aWMgdm9pZAorQ29tcHJlc3Nvcl9kZWFsbG9jKENvbXByZXNzb3IgKnNlbGYpCit7CisgICAgbHptYV9lbmQoJnNlbGYtPmx6cyk7CisjaWZkZWYgV0lUSF9USFJFQUQKKyAgICBpZiAoc2VsZi0+bG9jayAhPSBOVUxMKQorICAgICAgICBQeVRocmVhZF9mcmVlX2xvY2soc2VsZi0+bG9jayk7CisjZW5kaWYKKyAgICBQeV9UWVBFKHNlbGYpLT50cF9mcmVlKChQeU9iamVjdCAqKXNlbGYpOworfQorCitzdGF0aWMgUHlNZXRob2REZWYgQ29tcHJlc3Nvcl9tZXRob2RzW10gPSB7CisgICAgeyJjb21wcmVzcyIsIChQeUNGdW5jdGlvbilDb21wcmVzc29yX2NvbXByZXNzLCBNRVRIX1ZBUkFSR1MsCisgICAgIENvbXByZXNzb3JfY29tcHJlc3NfZG9jfSwKKyAgICB7ImZsdXNoIiwgKFB5Q0Z1bmN0aW9uKUNvbXByZXNzb3JfZmx1c2gsIE1FVEhfTk9BUkdTLAorICAgICBDb21wcmVzc29yX2ZsdXNoX2RvY30sCisgICAge05VTEx9Cit9OworCitQeURvY19TVFJWQVIoQ29tcHJlc3Nvcl9kb2MsCisiTFpNQUNvbXByZXNzb3IoZm9ybWF0PUZPUk1BVF9YWiwgY2hlY2s9LTEsIHByZXNldD1Ob25lLCBmaWx0ZXJzPU5vbmUpXG4iCisiXG4iCisiQ3JlYXRlIGEgY29tcHJlc3NvciBvYmplY3QgZm9yIGNvbXByZXNzaW5nIGRhdGEgaW5jcmVtZW50YWxseS5cbiIKKyJcbiIKKyJmb3JtYXQgc3BlY2lmaWVzIHRoZSBjb250YWluZXIgZm9ybWF0IHRvIHVzZSBmb3IgdGhlIG91dHB1dC4gVGhpcyBjYW5cbiIKKyJiZSBGT1JNQVRfWFogKGRlZmF1bHQpLCBGT1JNQVRfQUxPTkUsIG9yIEZPUk1BVF9SQVcuXG4iCisiXG4iCisiY2hlY2sgc3BlY2lmaWVzIHRoZSBpbnRlZ3JpdHkgY2hlY2sgdG8gdXNlLiBGb3IgRk9STUFUX1haLCB0aGUgZGVmYXVsdFxuIgorImlzIENIRUNLX0NSQzY0LiBGT1JNQVRfQUxPTkUgYW5kIEZPUk1BVF9SQVcgZG8gbm90IHN1cG9ydCBpbnRlZ3JpdHlcbiIKKyJjaGVja3M7IGZvciB0aGVzZSBmb3JtYXRzLCBjaGVjayBtdXN0IGJlIG9taXR0ZWQsIG9yIGJlIENIRUNLX05PTkUuXG4iCisiXG4iCisiVGhlIHNldHRpbmdzIHVzZWQgYnkgdGhlIGNvbXByZXNzb3IgY2FuIGJlIHNwZWNpZmllZCBlaXRoZXIgYXMgYVxuIgorInByZXNldCBjb21wcmVzc2lvbiBsZXZlbCAod2l0aCB0aGUgJ3ByZXNldCcgYXJndW1lbnQpLCBvciBpbiBkZXRhaWxcbiIKKyJhcyBhIGN1c3RvbSBmaWx0ZXIgY2hhaW4gKHdpdGggdGhlICdmaWx0ZXJzJyBhcmd1bWVudCkuIEZvciBGT1JNQVRfWFpcbiIKKyJhbmQgRk9STUFUX0FMT05FLCB0aGUgZGVmYXVsdCBpcyB0byB1c2UgdGhlIFBSRVNFVF9ERUZBVUxUIHByZXNldFxuIgorImxldmVsLiBGb3IgRk9STUFUX1JBVywgdGhlIGNhbGxlciBtdXN0IGFsd2F5cyBzcGVjaWZ5IGEgZmlsdGVyIGNoYWluO1xuIgorInRoZSByYXcgY29tcHJlc3NvciBkb2VzIG5vdCBzdXBwb3J0IHByZXNldCBjb21wcmVzc2lvbiBsZXZlbHMuXG4iCisiXG4iCisicHJlc2V0IChpZiBwcm92aWRlZCkgc2hvdWxkIGJlIGFuIGludGVnZXIgaW4gdGhlIHJhbmdlIDAtOSwgb3B0aW9uYWxseVxuIgorIk9SLWVkIHdpdGggdGhlIGNvbnN0YW50IFBSRVNFVF9FWFRSRU1FLlxuIgorIlxuIgorImZpbHRlcnMgKGlmIHByb3ZpZGVkKSBzaG91bGQgYmUgYSBzZXF1ZW5jZSBvZiBkaWN0cy4gRWFjaCBkaWN0IHNob3VsZFxuIgorImhhdmUgYW4gZW50cnkgZm9yIFwiaWRcIiBpbmRpY2F0aW5nIHRoZSBJRCBvZiB0aGUgZmlsdGVyLCBwbHVzXG4iCisiYWRkaXRpb25hbCBlbnRyaWVzIGZvciBvcHRpb25zIHRvIHRoZSBmaWx0ZXIuXG4iCisiXG4iCisiRm9yIG9uZS1zaG90IGNvbXByZXNzaW9uLCB1c2UgdGhlIGNvbXByZXNzKCkgZnVuY3Rpb24gaW5zdGVhZC5cbiIpOworCitzdGF0aWMgUHlUeXBlT2JqZWN0IENvbXByZXNzb3JfdHlwZSA9IHsKKyAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoTlVMTCwgMCkKKyAgICAiX2x6bWEuTFpNQUNvbXByZXNzb3IiLCAgICAgICAgICAgICAvKiB0cF9uYW1lICovCisgICAgc2l6ZW9mKENvbXByZXNzb3IpLCAgICAgICAgICAgICAgICAgLyogdHBfYmFzaWNzaXplICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlbXNpemUgKi8KKyAgICAoZGVzdHJ1Y3RvcilDb21wcmVzc29yX2RlYWxsb2MsICAgICAvKiB0cF9kZWFsbG9jICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcHJpbnQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3Jlc2VydmVkICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVwciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX251bWJlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX3NlcXVlbmNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfbWFwcGluZyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2hhc2ggKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jYWxsICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc3RyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX2J1ZmZlciAqLworICAgIFB5X1RQRkxBR1NfREVGQVVMVCwgICAgICAgICAgICAgICAgIC8qIHRwX2ZsYWdzICovCisgICAgQ29tcHJlc3Nvcl9kb2MsICAgICAgICAgICAgICAgICAgICAgLyogdHBfZG9jICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jbGVhciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JpY2hjb21wYXJlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KKyAgICBDb21wcmVzc29yX21ldGhvZHMsICAgICAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWVtYmVycyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Jhc2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVzY3JfZ2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVzY3Jfc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdG9mZnNldCAqLworICAgIChpbml0cHJvYylDb21wcmVzc29yX2luaXQsICAgICAgICAgIC8qIHRwX2luaXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hbGxvYyAqLworICAgIFB5VHlwZV9HZW5lcmljTmV3LCAgICAgICAgICAgICAgICAgIC8qIHRwX25ldyAqLworfTsKKworCisvKiBMWk1BRGVjb21wcmVzc29yIGNsYXNzLiAqLworCitzdGF0aWMgUHlPYmplY3QgKgorZGVjb21wcmVzcyhEZWNvbXByZXNzb3IgKmQsIHVpbnQ4X3QgKmRhdGEsIHNpemVfdCBsZW4pCit7CisgICAgc2l6ZV90IGRhdGFfc2l6ZSA9IDA7CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKworICAgIHJlc3VsdCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgSU5JVElBTF9CVUZGRVJfU0laRSk7CisgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBkLT5senMubmV4dF9pbiA9IGRhdGE7CisgICAgZC0+bHpzLmF2YWlsX2luID0gbGVuOworICAgIGQtPmx6cy5uZXh0X291dCA9ICh1aW50OF90ICopUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKKyAgICBkLT5senMuYXZhaWxfb3V0ID0gUHlCeXRlc19HRVRfU0laRShyZXN1bHQpOworICAgIGZvciAoOzspIHsKKyAgICAgICAgbHptYV9yZXQgbHpyZXQ7CisKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICBsenJldCA9IGx6bWFfY29kZSgmZC0+bHpzLCBMWk1BX1JVTik7CisgICAgICAgIGRhdGFfc2l6ZSA9IChjaGFyICopZC0+bHpzLm5leHRfb3V0IC0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgaWYgKGNhdGNoX2x6bWFfZXJyb3IobHpyZXQpKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgaWYgKGx6cmV0ID09IExaTUFfR0VUX0NIRUNLIHx8IGx6cmV0ID09IExaTUFfTk9fQ0hFQ0spCisgICAgICAgICAgICBkLT5jaGVjayA9IGx6bWFfZ2V0X2NoZWNrKCZkLT5senMpOworICAgICAgICBpZiAobHpyZXQgPT0gTFpNQV9TVFJFQU1fRU5EKSB7CisgICAgICAgICAgICBkLT5lb2YgPSAxOworICAgICAgICAgICAgaWYgKGQtPmx6cy5hdmFpbF9pbiA+IDApIHsKKyAgICAgICAgICAgICAgICBQeV9DTEVBUihkLT51bnVzZWRfZGF0YSk7CisgICAgICAgICAgICAgICAgZC0+dW51c2VkX2RhdGEgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKAorICAgICAgICAgICAgICAgICAgICAgICAgKGNoYXIgKilkLT5senMubmV4dF9pbiwgZC0+bHpzLmF2YWlsX2luKTsKKyAgICAgICAgICAgICAgICBpZiAoZC0+dW51c2VkX2RhdGEgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9IGVsc2UgaWYgKGQtPmx6cy5hdmFpbF9pbiA9PSAwKSB7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfSBlbHNlIGlmIChkLT5senMuYXZhaWxfb3V0ID09IDApIHsKKyAgICAgICAgICAgIGlmIChncm93X2J1ZmZlcigmcmVzdWx0KSA9PSAtMSkKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgZC0+bHpzLm5leHRfb3V0ID0gKHVpbnQ4X3QgKilQeUJ5dGVzX0FTX1NUUklORyhyZXN1bHQpICsgZGF0YV9zaXplOworICAgICAgICAgICAgZC0+bHpzLmF2YWlsX291dCA9IFB5Qnl0ZXNfR0VUX1NJWkUocmVzdWx0KSAtIGRhdGFfc2l6ZTsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoZGF0YV9zaXplICE9IFB5Qnl0ZXNfR0VUX1NJWkUocmVzdWx0KSkKKyAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmVzdWx0LCBkYXRhX3NpemUpID09IC0xKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICByZXR1cm4gcmVzdWx0OworCitlcnJvcjoKKyAgICBQeV9YREVDUkVGKHJlc3VsdCk7CisgICAgcmV0dXJuIE5VTEw7Cit9CisKK1B5RG9jX1NUUlZBUihEZWNvbXByZXNzb3JfZGVjb21wcmVzc19kb2MsCisiZGVjb21wcmVzcyhkYXRhKSAtPiBieXRlc1xuIgorIlxuIgorIlByb3ZpZGUgZGF0YSB0byB0aGUgZGVjb21wcmVzc29yIG9iamVjdC4gUmV0dXJucyBhIGNodW5rIG9mXG4iCisiZGVjb21wcmVzc2VkIGRhdGEgaWYgcG9zc2libGUsIG9yIGJcIlwiIG90aGVyd2lzZS5cbiIKKyJcbiIKKyJBdHRlbXB0aW5nIHRvIGRlY29tcHJlc3MgZGF0YSBhZnRlciB0aGUgZW5kIG9mIHRoZSBzdHJlYW0gaXNcbiIKKyJyZWFjaGVkIHJhaXNlcyBhbiBFT0ZFcnJvci4gQW55IGRhdGEgZm91bmQgYWZ0ZXIgdGhlIGVuZCBvZiB0aGVcbiIKKyJzdHJlYW0gaXMgaWdub3JlZCwgYW5kIHNhdmVkIGluIHRoZSB1bnVzZWRfZGF0YSBhdHRyaWJ1dGUuXG4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK0RlY29tcHJlc3Nvcl9kZWNvbXByZXNzKERlY29tcHJlc3NvciAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlfYnVmZmVyIGJ1ZmZlcjsKKyAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieSo6ZGVjb21wcmVzcyIsICZidWZmZXIpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKKyAgICBpZiAoc2VsZi0+ZW9mKQorICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfRU9GRXJyb3IsICJBbHJlYWR5IGF0IGVuZCBvZiBzdHJlYW0iKTsKKyAgICBlbHNlCisgICAgICAgIHJlc3VsdCA9IGRlY29tcHJlc3Moc2VsZiwgYnVmZmVyLmJ1ZiwgYnVmZmVyLmxlbik7CisgICAgUkVMRUFTRV9MT0NLKHNlbGYpOworICAgIFB5QnVmZmVyX1JlbGVhc2UoJmJ1ZmZlcik7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworc3RhdGljIGludAorRGVjb21wcmVzc29yX2luaXRfcmF3KGx6bWFfc3RyZWFtICpsenMsIFB5T2JqZWN0ICpmaWx0ZXJzcGVjcykKK3sKKyAgICBsem1hX2ZpbHRlciBmaWx0ZXJzW0xaTUFfRklMVEVSU19NQVggKyAxXTsKKyAgICBsem1hX3JldCBsenJldDsKKworICAgIGlmIChwYXJzZV9maWx0ZXJfY2hhaW5fc3BlYyhmaWx0ZXJzLCBmaWx0ZXJzcGVjcykgPT0gLTEpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBsenJldCA9IGx6bWFfcmF3X2RlY29kZXIobHpzLCBmaWx0ZXJzKTsKKyAgICBmcmVlX2ZpbHRlcl9jaGFpbihmaWx0ZXJzKTsKKyAgICBpZiAoY2F0Y2hfbHptYV9lcnJvcihsenJldCkpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50CitEZWNvbXByZXNzb3JfaW5pdChEZWNvbXByZXNzb3IgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQoreworICAgIHN0YXRpYyBjaGFyICphcmdfbmFtZXNbXSA9IHsiZm9ybWF0IiwgIm1lbWxpbWl0IiwgImZpbHRlcnMiLCBOVUxMfTsKKyAgICBjb25zdCB1aW50MzJfdCBkZWNvZGVyX2ZsYWdzID0gTFpNQV9URUxMX0FOWV9DSEVDSyB8IExaTUFfVEVMTF9OT19DSEVDSzsKKyAgICBpbnQgZm9ybWF0ID0gRk9STUFUX0FVVE87CisgICAgdWludDY0X3QgbWVtbGltaXQgPSBVSU5UNjRfTUFYOworICAgIFB5T2JqZWN0ICptZW1saW1pdF9vYmogPSBQeV9Ob25lOworICAgIFB5T2JqZWN0ICpmaWx0ZXJzcGVjcyA9IFB5X05vbmU7CisgICAgbHptYV9yZXQgbHpyZXQ7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInxpT086TFpNQURlY29tcHJlc3NvciIsIGFyZ19uYW1lcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9ybWF0LCAmbWVtbGltaXRfb2JqLCAmZmlsdGVyc3BlY3MpKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBpZiAobWVtbGltaXRfb2JqICE9IFB5X05vbmUpIHsKKyAgICAgICAgaWYgKGZvcm1hdCA9PSBGT1JNQVRfUkFXKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ2Fubm90IHNwZWNpZnkgbWVtb3J5IGxpbWl0IHdpdGggRk9STUFUX1JBVyIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIG1lbWxpbWl0ID0gUHlMb25nX0FzVW5zaWduZWRMb25nTG9uZyhtZW1saW1pdF9vYmopOworICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBpZiAoZm9ybWF0ID09IEZPUk1BVF9SQVcgJiYgZmlsdGVyc3BlY3MgPT0gUHlfTm9uZSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJNdXN0IHNwZWNpZnkgZmlsdGVycyBmb3IgRk9STUFUX1JBVyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfSBlbHNlIGlmIChmb3JtYXQgIT0gRk9STUFUX1JBVyAmJiBmaWx0ZXJzcGVjcyAhPSBQeV9Ob25lKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBzcGVjaWZ5IGZpbHRlcnMgZXhjZXB0IHdpdGggRk9STUFUX1JBVyIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisjaWZkZWYgV0lUSF9USFJFQUQKKyAgICBzZWxmLT5sb2NrID0gUHlUaHJlYWRfYWxsb2NhdGVfbG9jaygpOworICAgIGlmIChzZWxmLT5sb2NrID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX01lbW9yeUVycm9yLCAiVW5hYmxlIHRvIGFsbG9jYXRlIGxvY2siKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyNlbmRpZgorCisgICAgc2VsZi0+Y2hlY2sgPSBMWk1BX0NIRUNLX1VOS05PV047CisgICAgc2VsZi0+dW51c2VkX2RhdGEgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOworICAgIGlmIChzZWxmLT51bnVzZWRfZGF0YSA9PSBOVUxMKQorICAgICAgICBnb3RvIGVycm9yOworCisgICAgc3dpdGNoIChmb3JtYXQpIHsKKyAgICAgICAgY2FzZSBGT1JNQVRfQVVUTzoKKyAgICAgICAgICAgIGx6cmV0ID0gbHptYV9hdXRvX2RlY29kZXIoJnNlbGYtPmx6cywgbWVtbGltaXQsIGRlY29kZXJfZmxhZ3MpOworICAgICAgICAgICAgaWYgKGNhdGNoX2x6bWFfZXJyb3IobHpyZXQpKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgcmV0dXJuIDA7CisKKyAgICAgICAgY2FzZSBGT1JNQVRfWFo6CisgICAgICAgICAgICBsenJldCA9IGx6bWFfc3RyZWFtX2RlY29kZXIoJnNlbGYtPmx6cywgbWVtbGltaXQsIGRlY29kZXJfZmxhZ3MpOworICAgICAgICAgICAgaWYgKGNhdGNoX2x6bWFfZXJyb3IobHpyZXQpKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgcmV0dXJuIDA7CisKKyAgICAgICAgY2FzZSBGT1JNQVRfQUxPTkU6CisgICAgICAgICAgICBzZWxmLT5jaGVjayA9IExaTUFfQ0hFQ0tfTk9ORTsKKyAgICAgICAgICAgIGx6cmV0ID0gbHptYV9hbG9uZV9kZWNvZGVyKCZzZWxmLT5senMsIG1lbWxpbWl0KTsKKyAgICAgICAgICAgIGlmIChjYXRjaF9sem1hX2Vycm9yKGx6cmV0KSkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgIGNhc2UgRk9STUFUX1JBVzoKKyAgICAgICAgICAgIHNlbGYtPmNoZWNrID0gTFpNQV9DSEVDS19OT05FOworICAgICAgICAgICAgaWYgKERlY29tcHJlc3Nvcl9pbml0X3Jhdygmc2VsZi0+bHpzLCBmaWx0ZXJzcGVjcykgPT0gLTEpCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICByZXR1cm4gMDsKKworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkludmFsaWQgY29udGFpbmVyIGZvcm1hdDogJWQiLCBmb3JtYXQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgfQorCitlcnJvcjoKKyAgICBQeV9DTEVBUihzZWxmLT51bnVzZWRfZGF0YSk7CisjaWZkZWYgV0lUSF9USFJFQUQKKyAgICBQeVRocmVhZF9mcmVlX2xvY2soc2VsZi0+bG9jayk7CisgICAgc2VsZi0+bG9jayA9IE5VTEw7CisjZW5kaWYKKyAgICByZXR1cm4gLTE7Cit9CisKK3N0YXRpYyB2b2lkCitEZWNvbXByZXNzb3JfZGVhbGxvYyhEZWNvbXByZXNzb3IgKnNlbGYpCit7CisgICAgbHptYV9lbmQoJnNlbGYtPmx6cyk7CisgICAgUHlfQ0xFQVIoc2VsZi0+dW51c2VkX2RhdGEpOworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgaWYgKHNlbGYtPmxvY2sgIT0gTlVMTCkKKyAgICAgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHNlbGYtPmxvY2spOworI2VuZGlmCisgICAgUHlfVFlQRShzZWxmKS0+dHBfZnJlZSgoUHlPYmplY3QgKilzZWxmKTsKK30KKworc3RhdGljIFB5TWV0aG9kRGVmIERlY29tcHJlc3Nvcl9tZXRob2RzW10gPSB7CisgICAgeyJkZWNvbXByZXNzIiwgKFB5Q0Z1bmN0aW9uKURlY29tcHJlc3Nvcl9kZWNvbXByZXNzLCBNRVRIX1ZBUkFSR1MsCisgICAgIERlY29tcHJlc3Nvcl9kZWNvbXByZXNzX2RvY30sCisgICAge05VTEx9Cit9OworCitQeURvY19TVFJWQVIoRGVjb21wcmVzc29yX2NoZWNrX2RvYywKKyJJRCBvZiB0aGUgaW50ZWdyaXR5IGNoZWNrIHVzZWQgYnkgdGhlIGlucHV0IHN0cmVhbS4iKTsKKworUHlEb2NfU1RSVkFSKERlY29tcHJlc3Nvcl9lb2ZfZG9jLAorIlRydWUgaWYgdGhlIGVuZC1vZi1zdHJlYW0gbWFya2VyIGhhcyBiZWVuIHJlYWNoZWQuIik7CisKK1B5RG9jX1NUUlZBUihEZWNvbXByZXNzb3JfdW51c2VkX2RhdGFfZG9jLAorIkRhdGEgZm91bmQgYWZ0ZXIgdGhlIGVuZCBvZiB0aGUgY29tcHJlc3NlZCBzdHJlYW0uIik7CisKK3N0YXRpYyBQeU1lbWJlckRlZiBEZWNvbXByZXNzb3JfbWVtYmVyc1tdID0geworICAgIHsiY2hlY2siLCBUX0lOVCwgb2Zmc2V0b2YoRGVjb21wcmVzc29yLCBjaGVjayksIFJFQURPTkxZLAorICAgICBEZWNvbXByZXNzb3JfY2hlY2tfZG9jfSwKKyAgICB7ImVvZiIsIFRfQk9PTCwgb2Zmc2V0b2YoRGVjb21wcmVzc29yLCBlb2YpLCBSRUFET05MWSwKKyAgICAgRGVjb21wcmVzc29yX2VvZl9kb2N9LAorICAgIHsidW51c2VkX2RhdGEiLCBUX09CSkVDVF9FWCwgb2Zmc2V0b2YoRGVjb21wcmVzc29yLCB1bnVzZWRfZGF0YSksIFJFQURPTkxZLAorICAgICBEZWNvbXByZXNzb3JfdW51c2VkX2RhdGFfZG9jfSwKKyAgICB7TlVMTH0KK307CisKK1B5RG9jX1NUUlZBUihEZWNvbXByZXNzb3JfZG9jLAorIkxaTUFEZWNvbXByZXNzb3IoZm9ybWF0PUZPUk1BVF9BVVRPLCBtZW1saW1pdD1Ob25lLCBmaWx0ZXJzPU5vbmUpXG4iCisiXG4iCisiQ3JlYXRlIGEgZGVjb21wcmVzc29yIG9iamVjdCBmb3IgZGVjb21wcmVzc2luZyBkYXRhIGluY3JlbWVudGFsbHkuXG4iCisiXG4iCisiZm9ybWF0IHNwZWNpZmllcyB0aGUgY29udGFpbmVyIGZvcm1hdCBvZiB0aGUgaW5wdXQgc3RyZWFtLiBJZiB0aGlzIGlzXG4iCisiRk9STUFUX0FVVE8gKHRoZSBkZWZhdWx0KSwgdGhlIGRlY29tcHJlc3NvciB3aWxsIGF1dG9tYXRpY2FsbHkgZGV0ZWN0XG4iCisid2hldGhlciB0aGUgaW5wdXQgaXMgRk9STUFUX1haIG9yIEZPUk1BVF9BTE9ORS4gU3RyZWFtcyBjcmVhdGVkIHdpdGhcbiIKKyJGT1JNQVRfUkFXIGNhbm5vdCBiZSBhdXRvZGV0ZWN0ZWQuXG4iCisiXG4iCisibWVtbGltaXQgY2FuIGJlIHNwZWNpZmllZCB0byBsaW1pdCB0aGUgYW1vdW50IG9mIG1lbW9yeSB1c2VkIGJ5IHRoZVxuIgorImRlY29tcHJlc3Nvci4gVGhpcyB3aWxsIGNhdXNlIGRlY29tcHJlc3Npb24gdG8gZmFpbCBpZiB0aGUgaW5wdXRcbiIKKyJjYW5ub3QgYmUgZGVjb21wcmVzc2VkIHdpdGhpbiB0aGUgZ2l2ZW4gbGltaXQuXG4iCisiXG4iCisiZmlsdGVycyBzcGVjaWZpZXMgYSBjdXN0b20gZmlsdGVyIGNoYWluLiBUaGlzIGFyZ3VtZW50IGlzIHJlcXVpcmVkIGZvclxuIgorIkZPUk1BVF9SQVcsIGFuZCBub3QgYWNjZXB0ZWQgd2l0aCBhbnkgb3RoZXIgZm9ybWF0LiBXaGVuIHByb3ZpZGVkLFxuIgorInRoaXMgc2hvdWxkIGJlIGEgc2VxdWVuY2Ugb2YgZGljdHMsIGVhY2ggaW5kaWNhdGluZyB0aGUgSUQgYW5kIG9wdGlvbnNcbiIKKyJmb3IgYSBzaW5nbGUgZmlsdGVyLlxuIgorIlxuIgorIkZvciBvbmUtc2hvdCBkZWNvbXByZXNzaW9uLCB1c2UgdGhlIGRlY29tcHJlc3MoKSBmdW5jdGlvbiBpbnN0ZWFkLlxuIik7CisKK3N0YXRpYyBQeVR5cGVPYmplY3QgRGVjb21wcmVzc29yX3R5cGUgPSB7CisgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApCisgICAgIl9sem1hLkxaTUFEZWNvbXByZXNzb3IiLCAgICAgICAgICAgLyogdHBfbmFtZSAqLworICAgIHNpemVvZihEZWNvbXByZXNzb3IpLCAgICAgICAgICAgICAgIC8qIHRwX2Jhc2ljc2l6ZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZW1zaXplICovCisgICAgKGRlc3RydWN0b3IpRGVjb21wcmVzc29yX2RlYWxsb2MsICAgLyogdHBfZGVhbGxvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3ByaW50ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yZXNlcnZlZCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JlcHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19udW1iZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX21hcHBpbmcgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2FsbCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3N0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19idWZmZXIgKi8KKyAgICBQeV9UUEZMQUdTX0RFRkFVTFQsICAgICAgICAgICAgICAgICAvKiB0cF9mbGFncyAqLworICAgIERlY29tcHJlc3Nvcl9kb2MsICAgICAgICAgICAgICAgICAgIC8qIHRwX2RvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgRGVjb21wcmVzc29yX21ldGhvZHMsICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLworICAgIERlY29tcHJlc3Nvcl9tZW1iZXJzLCAgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX2dldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX3NldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3RvZmZzZXQgKi8KKyAgICAoaW5pdHByb2MpRGVjb21wcmVzc29yX2luaXQsICAgICAgICAvKiB0cF9pbml0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYWxsb2MgKi8KKyAgICBQeVR5cGVfR2VuZXJpY05ldywgICAgICAgICAgICAgICAgICAvKiB0cF9uZXcgKi8KK307CisKKworLyogTW9kdWxlLWxldmVsIGZ1bmN0aW9ucy4gKi8KKworUHlEb2NfU1RSVkFSKGNoZWNrX2lzX3N1cHBvcnRlZF9kb2MsCisiY2hlY2tfaXNfc3VwcG9ydGVkKGNoZWNrX2lkKSAtPiBib29sXG4iCisiXG4iCisiVGVzdCB3aGV0aGVyIHRoZSBnaXZlbiBpbnRlZ3JpdHkgY2hlY2sgaXMgc3VwcG9ydGVkLlxuIgorIlxuIgorIkFsd2F5cyByZXR1cm5zIFRydWUgZm9yIENIRUNLX05PTkUgYW5kIENIRUNLX0NSQzMyLlxuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitjaGVja19pc19zdXBwb3J0ZWQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCBjaGVja19pZDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaTpjaGVja19pc19zdXBwb3J0ZWQiLCAmY2hlY2tfaWQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcobHptYV9jaGVja19pc19zdXBwb3J0ZWQoY2hlY2tfaWQpKTsKK30KKworCisvKiBNb2R1bGUgaW5pdGlhbGl6YXRpb24uICovCisKK3N0YXRpYyBQeU1ldGhvZERlZiBtb2R1bGVfbWV0aG9kc1tdID0geworICAgIHsiY2hlY2tfaXNfc3VwcG9ydGVkIiwgKFB5Q0Z1bmN0aW9uKWNoZWNrX2lzX3N1cHBvcnRlZCwKKyAgICAgTUVUSF9WQVJBUkdTLCBjaGVja19pc19zdXBwb3J0ZWRfZG9jfSwKKyAgICB7TlVMTH0KK307CisKK3N0YXRpYyBQeU1vZHVsZURlZiBfbHptYW1vZHVsZSA9IHsKKyAgICBQeU1vZHVsZURlZl9IRUFEX0lOSVQsCisgICAgIl9sem1hIiwKKyAgICBOVUxMLAorICAgIC0xLAorICAgIG1vZHVsZV9tZXRob2RzLAorICAgIE5VTEwsCisgICAgTlVMTCwKKyAgICBOVUxMLAorICAgIE5VTEwsCit9OworCisvKiBTb21lIG9mIG91ciBjb25zdGFudHMgYXJlIG1vcmUgdGhhbiAzMiBiaXRzIHdpZGUsIHNvIFB5TW9kdWxlX0FkZEludENvbnN0YW50CisgICB3b3VsZCBub3Qgd29yayBjb3JyZWN0bHkgb24gcGxhdGZvcm1zIHdpdGggMzItYml0IGxvbmdzLiAqLworc3RhdGljIGludAorbW9kdWxlX2FkZF9pbnRfY29uc3RhbnQoUHlPYmplY3QgKm0sIGNvbnN0IGNoYXIgKm5hbWUsIFBZX0xPTkdfTE9ORyB2YWx1ZSkKK3sKKyAgICBQeU9iamVjdCAqbyA9IFB5TG9uZ19Gcm9tTG9uZ0xvbmcodmFsdWUpOworICAgIGlmIChvID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBpZiAoUHlNb2R1bGVfQWRkT2JqZWN0KG0sIG5hbWUsIG8pID09IDApCisgICAgICAgIHJldHVybiAwOworICAgIFB5X0RFQ1JFRihvKTsKKyAgICByZXR1cm4gLTE7Cit9CisKKyNkZWZpbmUgQUREX0lOVF9QUkVGSVhfTUFDUk8obSwgbWFjcm8pIFwKKyAgICBtb2R1bGVfYWRkX2ludF9jb25zdGFudChtLCAjbWFjcm8sIExaTUFfICMjIG1hY3JvKQorCitQeU1PRElOSVRfRlVOQworUHlJbml0X19sem1hKHZvaWQpCit7CisgICAgUHlPYmplY3QgKm07CisKKyAgICBlbXB0eV90dXBsZSA9IFB5VHVwbGVfTmV3KDApOworICAgIGlmIChlbXB0eV90dXBsZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIG0gPSBQeU1vZHVsZV9DcmVhdGUoJl9sem1hbW9kdWxlKTsKKyAgICBpZiAobSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhtLCBGT1JNQVRfQVVUTykgPT0gLTEgfHwKKyAgICAgICAgUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgRk9STUFUX1haKSA9PSAtMSB8fAorICAgICAgICBQeU1vZHVsZV9BZGRJbnRNYWNybyhtLCBGT1JNQVRfQUxPTkUpID09IC0xIHx8CisgICAgICAgIFB5TW9kdWxlX0FkZEludE1hY3JvKG0sIEZPUk1BVF9SQVcpID09IC0xIHx8CisgICAgICAgIEFERF9JTlRfUFJFRklYX01BQ1JPKG0sIENIRUNLX05PTkUpID09IC0xIHx8CisgICAgICAgIEFERF9JTlRfUFJFRklYX01BQ1JPKG0sIENIRUNLX0NSQzMyKSA9PSAtMSB8fAorICAgICAgICBBRERfSU5UX1BSRUZJWF9NQUNSTyhtLCBDSEVDS19DUkM2NCkgPT0gLTEgfHwKKyAgICAgICAgQUREX0lOVF9QUkVGSVhfTUFDUk8obSwgQ0hFQ0tfU0hBMjU2KSA9PSAtMSB8fAorICAgICAgICBBRERfSU5UX1BSRUZJWF9NQUNSTyhtLCBDSEVDS19JRF9NQVgpID09IC0xIHx8CisgICAgICAgIEFERF9JTlRfUFJFRklYX01BQ1JPKG0sIENIRUNLX1VOS05PV04pID09IC0xIHx8CisgICAgICAgIEFERF9JTlRfUFJFRklYX01BQ1JPKG0sIEZJTFRFUl9MWk1BMSkgPT0gLTEgfHwKKyAgICAgICAgQUREX0lOVF9QUkVGSVhfTUFDUk8obSwgRklMVEVSX0xaTUEyKSA9PSAtMSB8fAorICAgICAgICBBRERfSU5UX1BSRUZJWF9NQUNSTyhtLCBGSUxURVJfREVMVEEpID09IC0xIHx8CisgICAgICAgIEFERF9JTlRfUFJFRklYX01BQ1JPKG0sIEZJTFRFUl9YODYpID09IC0xIHx8CisgICAgICAgIEFERF9JTlRfUFJFRklYX01BQ1JPKG0sIEZJTFRFUl9JQTY0KSA9PSAtMSB8fAorICAgICAgICBBRERfSU5UX1BSRUZJWF9NQUNSTyhtLCBGSUxURVJfQVJNKSA9PSAtMSB8fAorICAgICAgICBBRERfSU5UX1BSRUZJWF9NQUNSTyhtLCBGSUxURVJfQVJNVEhVTUIpID09IC0xIHx8CisgICAgICAgIEFERF9JTlRfUFJFRklYX01BQ1JPKG0sIEZJTFRFUl9TUEFSQykgPT0gLTEgfHwKKyAgICAgICAgQUREX0lOVF9QUkVGSVhfTUFDUk8obSwgRklMVEVSX1BPV0VSUEMpID09IC0xIHx8CisgICAgICAgIEFERF9JTlRfUFJFRklYX01BQ1JPKG0sIE1GX0hDMykgPT0gLTEgfHwKKyAgICAgICAgQUREX0lOVF9QUkVGSVhfTUFDUk8obSwgTUZfSEM0KSA9PSAtMSB8fAorICAgICAgICBBRERfSU5UX1BSRUZJWF9NQUNSTyhtLCBNRl9CVDIpID09IC0xIHx8CisgICAgICAgIEFERF9JTlRfUFJFRklYX01BQ1JPKG0sIE1GX0JUMykgPT0gLTEgfHwKKyAgICAgICAgQUREX0lOVF9QUkVGSVhfTUFDUk8obSwgTUZfQlQ0KSA9PSAtMSB8fAorICAgICAgICBBRERfSU5UX1BSRUZJWF9NQUNSTyhtLCBNT0RFX0ZBU1QpID09IC0xIHx8CisgICAgICAgIEFERF9JTlRfUFJFRklYX01BQ1JPKG0sIE1PREVfTk9STUFMKSA9PSAtMSB8fAorICAgICAgICBBRERfSU5UX1BSRUZJWF9NQUNSTyhtLCBQUkVTRVRfREVGQVVMVCkgPT0gLTEgfHwKKyAgICAgICAgQUREX0lOVF9QUkVGSVhfTUFDUk8obSwgUFJFU0VUX0VYVFJFTUUpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIEVycm9yID0gUHlFcnJfTmV3RXhjZXB0aW9uV2l0aERvYygKKyAgICAgICAgICAgICJfbHptYS5MWk1BRXJyb3IiLCAiQ2FsbCB0byBsaWJsem1hIGZhaWxlZC4iLCBOVUxMLCBOVUxMKTsKKyAgICBpZiAoRXJyb3IgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfSU5DUkVGKEVycm9yKTsKKyAgICBpZiAoUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJMWk1BRXJyb3IiLCBFcnJvcikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKFB5VHlwZV9SZWFkeSgmQ29tcHJlc3Nvcl90eXBlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfSU5DUkVGKCZDb21wcmVzc29yX3R5cGUpOworICAgIGlmIChQeU1vZHVsZV9BZGRPYmplY3QobSwgIkxaTUFDb21wcmVzc29yIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChQeU9iamVjdCAqKSZDb21wcmVzc29yX3R5cGUpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChQeVR5cGVfUmVhZHkoJkRlY29tcHJlc3Nvcl90eXBlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfSU5DUkVGKCZEZWNvbXByZXNzb3JfdHlwZSk7CisgICAgaWYgKFB5TW9kdWxlX0FkZE9iamVjdChtLCAiTFpNQURlY29tcHJlc3NvciIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlPYmplY3QgKikmRGVjb21wcmVzc29yX3R5cGUpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHJldHVybiBtOworfQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fbXVsdGlwcm9jZXNzaW5nL2Nvbm5lY3Rpb24uaCBiL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy9jb25uZWN0aW9uLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMmQ1YWEuLjAwMDAwMDAKLS0tIGEvTW9kdWxlcy9fbXVsdGlwcm9jZXNzaW5nL2Nvbm5lY3Rpb24uaAorKysgL2Rldi9udWxsCkBAIC0xLDUyNyArMCwwIEBACi0vKgotICogRGVmaW5pdGlvbiBvZiBhIGBDb25uZWN0aW9uYCB0eXBlLgotICogVXNlZCBieSBgc29ja2V0X2Nvbm5lY3Rpb24uY2AgYW5kIGBwaXBlX2Nvbm5lY3Rpb24uY2AuCi0gKgotICogY29ubmVjdGlvbi5oCi0gKgotICogQ29weXJpZ2h0IChjKSAyMDA2LTIwMDgsIFIgT3Vka2VyayAtLS0gc2VlIENPUFlJTkcudHh0Ci0gKi8KLQotI2lmbmRlZiBDT05ORUNUSU9OX0gKLSNkZWZpbmUgQ09OTkVDVElPTl9ICi0KLS8qCi0gKiBSZWFkL3dyaXRlIGZsYWdzCi0gKi8KLQotI2RlZmluZSBSRUFEQUJMRSAxCi0jZGVmaW5lIFdSSVRBQkxFIDIKLQotI2RlZmluZSBDSEVDS19SRUFEQUJMRShzZWxmKSBcCi0gICAgaWYgKCEoc2VsZi0+ZmxhZ3MgJiBSRUFEQUJMRSkpIHsgXAotICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLCAiY29ubmVjdGlvbiBpcyB3cml0ZS1vbmx5Iik7IFwKLSAgICByZXR1cm4gTlVMTDsgXAotICAgIH0KLQotI2RlZmluZSBDSEVDS19XUklUQUJMRShzZWxmKSBcCi0gICAgaWYgKCEoc2VsZi0+ZmxhZ3MgJiBXUklUQUJMRSkpIHsgXAotICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLCAiY29ubmVjdGlvbiBpcyByZWFkLW9ubHkiKTsgXAotICAgIHJldHVybiBOVUxMOyBcCi0gICAgfQotCi0vKgotICogQWxsb2NhdGlvbiBhbmQgZGVhbGxvY2F0aW9uCi0gKi8KLQotc3RhdGljIFB5T2JqZWN0ICoKLWNvbm5lY3Rpb25fbmV3KFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQotewotICAgIENvbm5lY3Rpb25PYmplY3QgKnNlbGY7Ci0gICAgSEFORExFIGhhbmRsZTsKLSAgICBCT09MIHJlYWRhYmxlID0gVFJVRSwgd3JpdGFibGUgPSBUUlVFOwotCi0gICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJoYW5kbGUiLCAicmVhZGFibGUiLCAid3JpdGFibGUiLCBOVUxMfTsKLQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsIEZfSEFORExFICJ8aWkiLCBrd2xpc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmhhbmRsZSwgJnJlYWRhYmxlLCAmd3JpdGFibGUpKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIGlmIChoYW5kbGUgPT0gSU5WQUxJRF9IQU5ETEVfVkFMVUUgfHwgKFB5X3NzaXplX3QpaGFuZGxlIDwgMCkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSU9FcnJvciwgImludmFsaWQgaGFuZGxlICV6ZCIsCi0gICAgICAgICAgICAgICAgICAgICAoUHlfc3NpemVfdCloYW5kbGUpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0KLSAgICBpZiAoIXJlYWRhYmxlICYmICF3cml0YWJsZSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJlaXRoZXIgcmVhZGFibGUgb3Igd3JpdGFibGUgbXVzdCBiZSB0cnVlIik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQotICAgIHNlbGYgPSBQeU9iamVjdF9OZXcoQ29ubmVjdGlvbk9iamVjdCwgdHlwZSk7Ci0gICAgaWYgKHNlbGYgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICBzZWxmLT53ZWFrcmVmbGlzdCA9IE5VTEw7Ci0gICAgc2VsZi0+aGFuZGxlID0gaGFuZGxlOwotICAgIHNlbGYtPmZsYWdzID0gMDsKLQotICAgIGlmIChyZWFkYWJsZSkKLSAgICAgICAgc2VsZi0+ZmxhZ3MgfD0gUkVBREFCTEU7Ci0gICAgaWYgKHdyaXRhYmxlKQotICAgICAgICBzZWxmLT5mbGFncyB8PSBXUklUQUJMRTsKLSAgICBhc3NlcnQoc2VsZi0+ZmxhZ3MgPj0gMSAmJiBzZWxmLT5mbGFncyA8PSAzKTsKLQotICAgIHJldHVybiAoUHlPYmplY3QqKXNlbGY7Ci19Ci0KLXN0YXRpYyB2b2lkCi1jb25uZWN0aW9uX2RlYWxsb2MoQ29ubmVjdGlvbk9iamVjdCogc2VsZikKLXsKLSAgICBpZiAoc2VsZi0+d2Vha3JlZmxpc3QgIT0gTlVMTCkKLSAgICAgICAgUHlPYmplY3RfQ2xlYXJXZWFrUmVmcygoUHlPYmplY3QqKXNlbGYpOwotCi0gICAgaWYgKHNlbGYtPmhhbmRsZSAhPSBJTlZBTElEX0hBTkRMRV9WQUxVRSkgewotICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIENMT1NFKHNlbGYtPmhhbmRsZSk7Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgfQotICAgIFB5T2JqZWN0X0RlbChzZWxmKTsKLX0KLQotLyoKLSAqIEZ1bmN0aW9ucyBmb3IgdHJhbnNmZXJyaW5nIGJ1ZmZlcnMKLSAqLwotCi1zdGF0aWMgUHlPYmplY3QgKgotY29ubmVjdGlvbl9zZW5kYnl0ZXMoQ29ubmVjdGlvbk9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCi17Ci0gICAgUHlfYnVmZmVyIHBidWZmZXI7Ci0gICAgY2hhciAqYnVmZmVyOwotICAgIFB5X3NzaXplX3QgbGVuZ3RoLCBvZmZzZXQ9MCwgc2l6ZT1QWV9TU0laRV9UX01JTjsKLSAgICBpbnQgcmVzOwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIEZfUkJVRkZFUiAiKnwiIEZfUFlfU1NJWkVfVCBGX1BZX1NTSVpFX1QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZwYnVmZmVyLCAmb2Zmc2V0LCAmc2l6ZSkpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGJ1ZmZlciA9IHBidWZmZXIuYnVmOwotICAgIGxlbmd0aCA9IHBidWZmZXIubGVuOwotCi0gICAgQ0hFQ0tfV1JJVEFCTEUoc2VsZik7IC8qIFhYWCByZWxlYXNlIGJ1ZmZlciBpbiBjYXNlIG9mIGZhaWx1cmUgKi8KLQotICAgIGlmIChvZmZzZXQgPCAwKSB7Ci0gICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBidWZmZXIpOwotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIm9mZnNldCBpcyBuZWdhdGl2ZSIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgaWYgKGxlbmd0aCA8IG9mZnNldCkgewotICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwYnVmZmVyKTsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJidWZmZXIgbGVuZ3RoIDwgb2Zmc2V0Iik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQotICAgIGlmIChzaXplID09IFBZX1NTSVpFX1RfTUlOKSB7Ci0gICAgICAgIHNpemUgPSBsZW5ndGggLSBvZmZzZXQ7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgaWYgKHNpemUgPCAwKSB7Ci0gICAgICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwYnVmZmVyKTsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAic2l6ZSBpcyBuZWdhdGl2ZSIpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKG9mZnNldCArIHNpemUgPiBsZW5ndGgpIHsKLSAgICAgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBidWZmZXIpOwotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgImJ1ZmZlciBsZW5ndGggPCBvZmZzZXQgKyBzaXplIik7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgIH0KLQotICAgIHJlcyA9IGNvbm5fc2VuZF9zdHJpbmcoc2VsZiwgYnVmZmVyICsgb2Zmc2V0LCBzaXplKTsKLQotICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBidWZmZXIpOwotICAgIGlmIChyZXMgPCAwKSB7Ci0gICAgICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIHJldHVybiBtcF9TZXRFcnJvcihQeUV4Y19JT0Vycm9yLCByZXMpOwotICAgIH0KLQotICAgIFB5X1JFVFVSTl9OT05FOwotfQotCi1zdGF0aWMgUHlPYmplY3QgKgotY29ubmVjdGlvbl9yZWN2Ynl0ZXMoQ29ubmVjdGlvbk9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCi17Ci0gICAgY2hhciAqZnJlZW1lID0gTlVMTDsKLSAgICBQeV9zc2l6ZV90IHJlcywgbWF4bGVuZ3RoID0gUFlfU1NJWkVfVF9NQVg7Ci0gICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInwiIEZfUFlfU1NJWkVfVCwgJm1heGxlbmd0aCkpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgQ0hFQ0tfUkVBREFCTEUoc2VsZik7Ci0KLSAgICBpZiAobWF4bGVuZ3RoIDwgMCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIm1heGxlbmd0aCA8IDAiKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgcmVzID0gY29ubl9yZWN2X3N0cmluZyhzZWxmLCBzZWxmLT5idWZmZXIsIENPTk5FQ1RJT05fQlVGRkVSX1NJWkUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAmZnJlZW1lLCBtYXhsZW5ndGgpOwotCi0gICAgaWYgKHJlcyA8IDApIHsKLSAgICAgICAgaWYgKHJlcyA9PSBNUF9CQURfTUVTU0FHRV9MRU5HVEgpIHsKLSAgICAgICAgICAgIGlmICgoc2VsZi0+ZmxhZ3MgJiBXUklUQUJMRSkgPT0gMCkgewotICAgICAgICAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgICAgICAgICBDTE9TRShzZWxmLT5oYW5kbGUpOwotICAgICAgICAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgICAgICAgICAgICAgc2VsZi0+aGFuZGxlID0gSU5WQUxJRF9IQU5ETEVfVkFMVUU7Ci0gICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIHNlbGYtPmZsYWdzID0gV1JJVEFCTEU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgbXBfU2V0RXJyb3IoUHlFeGNfSU9FcnJvciwgcmVzKTsKLSAgICB9IGVsc2UgewotICAgICAgICBpZiAoZnJlZW1lID09IE5VTEwpIHsKLSAgICAgICAgICAgIHJlc3VsdCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoc2VsZi0+YnVmZmVyLCByZXMpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgcmVzdWx0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShmcmVlbWUsIHJlcyk7Ci0gICAgICAgICAgICBQeU1lbV9GcmVlKGZyZWVtZSk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICByZXR1cm4gcmVzdWx0OwotfQotCi1zdGF0aWMgUHlPYmplY3QgKgotY29ubmVjdGlvbl9yZWN2Ynl0ZXNfaW50byhDb25uZWN0aW9uT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBjaGFyICpmcmVlbWUgPSBOVUxMLCAqYnVmZmVyID0gTlVMTDsKLSAgICBQeV9zc2l6ZV90IHJlcywgbGVuZ3RoLCBvZmZzZXQgPSAwOwotICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwotICAgIFB5X2J1ZmZlciBwYnVmOwotCi0gICAgQ0hFQ0tfUkVBREFCTEUoc2VsZik7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIncqfCIgRl9QWV9TU0laRV9ULAotICAgICAgICAgICAgICAgICAgICAgICAgICAmcGJ1ZiwgJm9mZnNldCkpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgYnVmZmVyID0gcGJ1Zi5idWY7Ci0gICAgbGVuZ3RoID0gcGJ1Zi5sZW47Ci0KLSAgICBpZiAob2Zmc2V0IDwgMCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIm5lZ2F0aXZlIG9mZnNldCIpOwotICAgICAgICBnb3RvIF9lcnJvcjsKLSAgICB9Ci0KLSAgICBpZiAob2Zmc2V0ID4gbGVuZ3RoKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAib2Zmc2V0IHRvbyBsYXJnZSIpOwotICAgICAgICBnb3RvIF9lcnJvcjsKLSAgICB9Ci0KLSAgICByZXMgPSBjb25uX3JlY3Zfc3RyaW5nKHNlbGYsIGJ1ZmZlcitvZmZzZXQsIGxlbmd0aC1vZmZzZXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAmZnJlZW1lLCBQWV9TU0laRV9UX01BWCk7Ci0KLSAgICBpZiAocmVzIDwgMCkgewotICAgICAgICBpZiAocmVzID09IE1QX0JBRF9NRVNTQUdFX0xFTkdUSCkgewotICAgICAgICAgICAgaWYgKChzZWxmLT5mbGFncyAmIFdSSVRBQkxFKSA9PSAwKSB7Ci0gICAgICAgICAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICAgICAgICAgIENMT1NFKHNlbGYtPmhhbmRsZSk7Ci0gICAgICAgICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgICAgICAgICBzZWxmLT5oYW5kbGUgPSBJTlZBTElEX0hBTkRMRV9WQUxVRTsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgc2VsZi0+ZmxhZ3MgPSBXUklUQUJMRTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICBtcF9TZXRFcnJvcihQeUV4Y19JT0Vycm9yLCByZXMpOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGlmIChmcmVlbWUgPT0gTlVMTCkgewotICAgICAgICAgICAgcmVzdWx0ID0gUHlJbnRfRnJvbVNzaXplX3QocmVzKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbihCdWZmZXJUb29TaG9ydCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGX1JCVUZGRVIgIiMiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyZWVtZSwgcmVzKTsKLSAgICAgICAgICAgIFB5TWVtX0ZyZWUoZnJlZW1lKTsKLSAgICAgICAgICAgIGlmIChyZXN1bHQpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRPYmplY3QoQnVmZmVyVG9vU2hvcnQsIHJlc3VsdCk7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBnb3RvIF9lcnJvcjsKLSAgICAgICAgfQotICAgIH0KLQotX2NsZWFudXA6Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSgmcGJ1Zik7Ci0gICAgcmV0dXJuIHJlc3VsdDsKLQotX2Vycm9yOgotICAgIHJlc3VsdCA9IE5VTEw7Ci0gICAgZ290byBfY2xlYW51cDsKLX0KLQotLyoKLSAqIEZ1bmN0aW9ucyBmb3IgdHJhbnNmZXJyaW5nIG9iamVjdHMKLSAqLwotCi1zdGF0aWMgUHlPYmplY3QgKgotY29ubmVjdGlvbl9zZW5kX29iaihDb25uZWN0aW9uT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqb2JqKQotewotICAgIGNoYXIgKmJ1ZmZlcjsKLSAgICBpbnQgcmVzOwotICAgIFB5X3NzaXplX3QgbGVuZ3RoOwotICAgIFB5T2JqZWN0ICpwaWNrbGVkX3N0cmluZyA9IE5VTEw7Ci0KLSAgICBDSEVDS19XUklUQUJMRShzZWxmKTsKLQotICAgIHBpY2tsZWRfc3RyaW5nID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhwaWNrbGVfZHVtcHMsIG9iaiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGlja2xlX3Byb3RvY29sLCBOVUxMKTsKLSAgICBpZiAoIXBpY2tsZWRfc3RyaW5nKQotICAgICAgICBnb3RvIGZhaWx1cmU7Ci0KLSAgICBpZiAoUHlCeXRlc19Bc1N0cmluZ0FuZFNpemUocGlja2xlZF9zdHJpbmcsICZidWZmZXIsICZsZW5ndGgpIDwgMCkKLSAgICAgICAgZ290byBmYWlsdXJlOwotCi0gICAgcmVzID0gY29ubl9zZW5kX3N0cmluZyhzZWxmLCBidWZmZXIsIChpbnQpbGVuZ3RoKTsKLQotICAgIGlmIChyZXMgPCAwKSB7Ci0gICAgICAgIG1wX1NldEVycm9yKFB5RXhjX0lPRXJyb3IsIHJlcyk7Ci0gICAgICAgIGdvdG8gZmFpbHVyZTsKLSAgICB9Ci0KLSAgICBQeV9YREVDUkVGKHBpY2tsZWRfc3RyaW5nKTsKLSAgICBQeV9SRVRVUk5fTk9ORTsKLQotICBmYWlsdXJlOgotICAgIFB5X1hERUNSRUYocGlja2xlZF9zdHJpbmcpOwotICAgIHJldHVybiBOVUxMOwotfQotCi1zdGF0aWMgUHlPYmplY3QgKgotY29ubmVjdGlvbl9yZWN2X29iaihDb25uZWN0aW9uT2JqZWN0ICpzZWxmKQotewotICAgIGNoYXIgKmZyZWVtZSA9IE5VTEw7Ci0gICAgUHlfc3NpemVfdCByZXM7Ci0gICAgUHlPYmplY3QgKnRlbXAgPSBOVUxMLCAqcmVzdWx0ID0gTlVMTDsKLQotICAgIENIRUNLX1JFQURBQkxFKHNlbGYpOwotCi0gICAgcmVzID0gY29ubl9yZWN2X3N0cmluZyhzZWxmLCBzZWxmLT5idWZmZXIsIENPTk5FQ1RJT05fQlVGRkVSX1NJWkUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAmZnJlZW1lLCBQWV9TU0laRV9UX01BWCk7Ci0KLSAgICBpZiAocmVzIDwgMCkgewotICAgICAgICBpZiAocmVzID09IE1QX0JBRF9NRVNTQUdFX0xFTkdUSCkgewotICAgICAgICAgICAgaWYgKChzZWxmLT5mbGFncyAmIFdSSVRBQkxFKSA9PSAwKSB7Ci0gICAgICAgICAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICAgICAgICAgIENMT1NFKHNlbGYtPmhhbmRsZSk7Ci0gICAgICAgICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgICAgICAgICBzZWxmLT5oYW5kbGUgPSBJTlZBTElEX0hBTkRMRV9WQUxVRTsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgc2VsZi0+ZmxhZ3MgPSBXUklUQUJMRTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICBtcF9TZXRFcnJvcihQeUV4Y19JT0Vycm9yLCByZXMpOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGlmIChmcmVlbWUgPT0gTlVMTCkgewotICAgICAgICAgICAgdGVtcCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoc2VsZi0+YnVmZmVyLCByZXMpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgdGVtcCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoZnJlZW1lLCByZXMpOwotICAgICAgICAgICAgUHlNZW1fRnJlZShmcmVlbWUpOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKHRlbXApCi0gICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MocGlja2xlX2xvYWRzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlbXAsIE5VTEwpOwotICAgIFB5X1hERUNSRUYodGVtcCk7Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotLyoKLSAqIE90aGVyIGZ1bmN0aW9ucwotICovCi0KLXN0YXRpYyBQeU9iamVjdCAqCi1jb25uZWN0aW9uX3BvbGwoQ29ubmVjdGlvbk9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCi17Ci0gICAgUHlPYmplY3QgKnRpbWVvdXRfb2JqID0gTlVMTDsKLSAgICBkb3VibGUgdGltZW91dCA9IDAuMDsKLSAgICBpbnQgcmVzOwotCi0gICAgQ0hFQ0tfUkVBREFCTEUoc2VsZik7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxPIiwgJnRpbWVvdXRfb2JqKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICBpZiAodGltZW91dF9vYmogPT0gTlVMTCkgewotICAgICAgICB0aW1lb3V0ID0gMC4wOwotICAgIH0gZWxzZSBpZiAodGltZW91dF9vYmogPT0gUHlfTm9uZSkgewotICAgICAgICB0aW1lb3V0ID0gLTEuMDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBibG9jayBmb3JldmVyICovCi0gICAgfSBlbHNlIHsKLSAgICAgICAgdGltZW91dCA9IFB5RmxvYXRfQXNEb3VibGUodGltZW91dF9vYmopOwotICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBpZiAodGltZW91dCA8IDAuMCkKLSAgICAgICAgICAgIHRpbWVvdXQgPSAwLjA7Ci0gICAgfQotCi0gICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgIHJlcyA9IGNvbm5fcG9sbChzZWxmLCB0aW1lb3V0LCBfc2F2ZSk7Ci0gICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLQotICAgIHN3aXRjaCAocmVzKSB7Ci0gICAgY2FzZSBUUlVFOgotICAgICAgICBQeV9SRVRVUk5fVFJVRTsKLSAgICBjYXNlIEZBTFNFOgotICAgICAgICBQeV9SRVRVUk5fRkFMU0U7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgcmV0dXJuIG1wX1NldEVycm9yKFB5RXhjX0lPRXJyb3IsIHJlcyk7Ci0gICAgfQotfQotCi1zdGF0aWMgUHlPYmplY3QgKgotY29ubmVjdGlvbl9maWxlbm8oQ29ubmVjdGlvbk9iamVjdCogc2VsZikKLXsKLSAgICBpZiAoc2VsZi0+aGFuZGxlID09IElOVkFMSURfSEFORExFX1ZBTFVFKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLCAiaGFuZGxlIGlzIGludmFsaWQiKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIHJldHVybiBQeUludF9Gcm9tTG9uZygobG9uZylzZWxmLT5oYW5kbGUpOwotfQotCi1zdGF0aWMgUHlPYmplY3QgKgotY29ubmVjdGlvbl9jbG9zZShDb25uZWN0aW9uT2JqZWN0ICpzZWxmKQotewotICAgIGlmIChzZWxmLT5oYW5kbGUgIT0gSU5WQUxJRF9IQU5ETEVfVkFMVUUpIHsKLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBDTE9TRShzZWxmLT5oYW5kbGUpOwotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgICAgICBzZWxmLT5oYW5kbGUgPSBJTlZBTElEX0hBTkRMRV9WQUxVRTsKLSAgICB9Ci0KLSAgICBQeV9SRVRVUk5fTk9ORTsKLX0KLQotc3RhdGljIFB5T2JqZWN0ICoKLWNvbm5lY3Rpb25fcmVwcihDb25uZWN0aW9uT2JqZWN0ICpzZWxmKQotewotICAgIHN0YXRpYyBjaGFyICpjb25uX3R5cGVbXSA9IHsicmVhZC1vbmx5IiwgIndyaXRlLW9ubHkiLCAicmVhZC13cml0ZSJ9OwotCi0gICAgYXNzZXJ0KHNlbGYtPmZsYWdzID49IDEgJiYgc2VsZi0+ZmxhZ3MgPD0gMyk7Ci0gICAgcmV0dXJuIEZST01fRk9STUFUKCI8JXMgJXMsIGhhbmRsZSAlemQ+IiwKLSAgICAgICAgICAgICAgICAgICAgICAgY29ubl90eXBlW3NlbGYtPmZsYWdzIC0gMV0sCi0gICAgICAgICAgICAgICAgICAgICAgIENPTk5FQ1RJT05fTkFNRSwgKFB5X3NzaXplX3Qpc2VsZi0+aGFuZGxlKTsKLX0KLQotLyoKLSAqIEdldHRlcnMgYW5kIHNldHRlcnMKLSAqLwotCi1zdGF0aWMgUHlPYmplY3QgKgotY29ubmVjdGlvbl9jbG9zZWQoQ29ubmVjdGlvbk9iamVjdCAqc2VsZiwgdm9pZCAqY2xvc3VyZSkKLXsKLSAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKChsb25nKShzZWxmLT5oYW5kbGUgPT0gSU5WQUxJRF9IQU5ETEVfVkFMVUUpKTsKLX0KLQotc3RhdGljIFB5T2JqZWN0ICoKLWNvbm5lY3Rpb25fcmVhZGFibGUoQ29ubmVjdGlvbk9iamVjdCAqc2VsZiwgdm9pZCAqY2xvc3VyZSkKLXsKLSAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKChsb25nKShzZWxmLT5mbGFncyAmIFJFQURBQkxFKSk7Ci19Ci0KLXN0YXRpYyBQeU9iamVjdCAqCi1jb25uZWN0aW9uX3dyaXRhYmxlKENvbm5lY3Rpb25PYmplY3QgKnNlbGYsIHZvaWQgKmNsb3N1cmUpCi17Ci0gICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygobG9uZykoc2VsZi0+ZmxhZ3MgJiBXUklUQUJMRSkpOwotfQotCi0vKgotICogVGFibGVzCi0gKi8KLQotc3RhdGljIFB5TWV0aG9kRGVmIGNvbm5lY3Rpb25fbWV0aG9kc1tdID0gewotICAgIHsic2VuZF9ieXRlcyIsIChQeUNGdW5jdGlvbiljb25uZWN0aW9uX3NlbmRieXRlcywgTUVUSF9WQVJBUkdTLAotICAgICAic2VuZCB0aGUgYnl0ZSBkYXRhIGZyb20gYSByZWFkYWJsZSBidWZmZXItbGlrZSBvYmplY3QifSwKLSAgICB7InJlY3ZfYnl0ZXMiLCAoUHlDRnVuY3Rpb24pY29ubmVjdGlvbl9yZWN2Ynl0ZXMsIE1FVEhfVkFSQVJHUywKLSAgICAgInJlY2VpdmUgYnl0ZSBkYXRhIGFzIGEgc3RyaW5nIn0sCi0gICAgeyJyZWN2X2J5dGVzX2ludG8iLChQeUNGdW5jdGlvbiljb25uZWN0aW9uX3JlY3ZieXRlc19pbnRvLE1FVEhfVkFSQVJHUywKLSAgICAgInJlY2VpdmUgYnl0ZSBkYXRhIGludG8gYSB3cml0ZWFibGUgYnVmZmVyLWxpa2Ugb2JqZWN0XG4iCi0gICAgICJyZXR1cm5zIHRoZSBudW1iZXIgb2YgYnl0ZXMgcmVhZCJ9LAotCi0gICAgeyJzZW5kIiwgKFB5Q0Z1bmN0aW9uKWNvbm5lY3Rpb25fc2VuZF9vYmosIE1FVEhfTywKLSAgICAgInNlbmQgYSAocGlja2xhYmxlKSBvYmplY3QifSwKLSAgICB7InJlY3YiLCAoUHlDRnVuY3Rpb24pY29ubmVjdGlvbl9yZWN2X29iaiwgTUVUSF9OT0FSR1MsCi0gICAgICJyZWNlaXZlIGEgKHBpY2tsYWJsZSkgb2JqZWN0In0sCi0KLSAgICB7InBvbGwiLCAoUHlDRnVuY3Rpb24pY29ubmVjdGlvbl9wb2xsLCBNRVRIX1ZBUkFSR1MsCi0gICAgICJ3aGV0aGVyIHRoZXJlIGlzIGFueSBpbnB1dCBhdmFpbGFibGUgdG8gYmUgcmVhZCJ9LAotICAgIHsiZmlsZW5vIiwgKFB5Q0Z1bmN0aW9uKWNvbm5lY3Rpb25fZmlsZW5vLCBNRVRIX05PQVJHUywKLSAgICAgImZpbGUgZGVzY3JpcHRvciBvciBoYW5kbGUgb2YgdGhlIGNvbm5lY3Rpb24ifSwKLSAgICB7ImNsb3NlIiwgKFB5Q0Z1bmN0aW9uKWNvbm5lY3Rpb25fY2xvc2UsIE1FVEhfTk9BUkdTLAotICAgICAiY2xvc2UgdGhlIGNvbm5lY3Rpb24ifSwKLQotICAgIHtOVUxMfSAgLyogU2VudGluZWwgKi8KLX07Ci0KLXN0YXRpYyBQeUdldFNldERlZiBjb25uZWN0aW9uX2dldHNldFtdID0gewotICAgIHsiY2xvc2VkIiwgKGdldHRlciljb25uZWN0aW9uX2Nsb3NlZCwgTlVMTCwKLSAgICAgIlRydWUgaWYgdGhlIGNvbm5lY3Rpb24gaXMgY2xvc2VkIiwgTlVMTH0sCi0gICAgeyJyZWFkYWJsZSIsIChnZXR0ZXIpY29ubmVjdGlvbl9yZWFkYWJsZSwgTlVMTCwKLSAgICAgIlRydWUgaWYgdGhlIGNvbm5lY3Rpb24gaXMgcmVhZGFibGUiLCBOVUxMfSwKLSAgICB7IndyaXRhYmxlIiwgKGdldHRlciljb25uZWN0aW9uX3dyaXRhYmxlLCBOVUxMLAotICAgICAiVHJ1ZSBpZiB0aGUgY29ubmVjdGlvbiBpcyB3cml0YWJsZSIsIE5VTEx9LAotICAgIHtOVUxMfQotfTsKLQotLyoKLSAqIENvbm5lY3Rpb24gdHlwZQotICovCi0KLVB5RG9jX1NUUlZBUihjb25uZWN0aW9uX2RvYywKLSAgICAgICAgICAgICAiQ29ubmVjdGlvbiB0eXBlIHdob3NlIGNvbnN0cnVjdG9yIHNpZ25hdHVyZSBpc1xuXG4iCi0gICAgICAgICAgICAgIiAgICBDb25uZWN0aW9uKGhhbmRsZSwgcmVhZGFibGU9VHJ1ZSwgd3JpdGFibGU9VHJ1ZSkuXG5cbiIKLSAgICAgICAgICAgICAiVGhlIGNvbnN0cnVjdG9yIGRvZXMgKm5vdCogZHVwbGljYXRlIHRoZSBoYW5kbGUuIik7Ci0KLVB5VHlwZU9iamVjdCBDT05ORUNUSU9OX1RZUEUgPSB7Ci0gICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApCi0gICAgLyogdHBfbmFtZSAgICAgICAgICAgKi8gIl9tdWx0aXByb2Nlc3NpbmcuIiBDT05ORUNUSU9OX05BTUUsCi0gICAgLyogdHBfYmFzaWNzaXplICAgICAgKi8gc2l6ZW9mKENvbm5lY3Rpb25PYmplY3QpLAotICAgIC8qIHRwX2l0ZW1zaXplICAgICAgICovIDAsCi0gICAgLyogdHBfZGVhbGxvYyAgICAgICAgKi8gKGRlc3RydWN0b3IpY29ubmVjdGlvbl9kZWFsbG9jLAotICAgIC8qIHRwX3ByaW50ICAgICAgICAgICovIDAsCi0gICAgLyogdHBfZ2V0YXR0ciAgICAgICAgKi8gMCwKLSAgICAvKiB0cF9zZXRhdHRyICAgICAgICAqLyAwLAotICAgIC8qIHRwX3Jlc2VydmVkICAgICAgICovIDAsCi0gICAgLyogdHBfcmVwciAgICAgICAgICAgKi8gKHJlcHJmdW5jKWNvbm5lY3Rpb25fcmVwciwKLSAgICAvKiB0cF9hc19udW1iZXIgICAgICAqLyAwLAotICAgIC8qIHRwX2FzX3NlcXVlbmNlICAgICovIDAsCi0gICAgLyogdHBfYXNfbWFwcGluZyAgICAgKi8gMCwKLSAgICAvKiB0cF9oYXNoICAgICAgICAgICAqLyAwLAotICAgIC8qIHRwX2NhbGwgICAgICAgICAgICovIDAsCi0gICAgLyogdHBfc3RyICAgICAgICAgICAgKi8gMCwKLSAgICAvKiB0cF9nZXRhdHRybyAgICAgICAqLyAwLAotICAgIC8qIHRwX3NldGF0dHJvICAgICAgICovIDAsCi0gICAgLyogdHBfYXNfYnVmZmVyICAgICAgKi8gMCwKLSAgICAvKiB0cF9mbGFncyAgICAgICAgICAqLyBQeV9UUEZMQUdTX0RFRkFVTFQgfCBQeV9UUEZMQUdTX0JBU0VUWVBFIHwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9UUEZMQUdTX0hBVkVfV0VBS1JFRlMsCi0gICAgLyogdHBfZG9jICAgICAgICAgICAgKi8gY29ubmVjdGlvbl9kb2MsCi0gICAgLyogdHBfdHJhdmVyc2UgICAgICAgKi8gMCwKLSAgICAvKiB0cF9jbGVhciAgICAgICAgICAqLyAwLAotICAgIC8qIHRwX3JpY2hjb21wYXJlICAgICovIDAsCi0gICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8gb2Zmc2V0b2YoQ29ubmVjdGlvbk9iamVjdCwgd2Vha3JlZmxpc3QpLAotICAgIC8qIHRwX2l0ZXIgICAgICAgICAgICovIDAsCi0gICAgLyogdHBfaXRlcm5leHQgICAgICAgKi8gMCwKLSAgICAvKiB0cF9tZXRob2RzICAgICAgICAqLyBjb25uZWN0aW9uX21ldGhvZHMsCi0gICAgLyogdHBfbWVtYmVycyAgICAgICAgKi8gMCwKLSAgICAvKiB0cF9nZXRzZXQgICAgICAgICAqLyBjb25uZWN0aW9uX2dldHNldCwKLSAgICAvKiB0cF9iYXNlICAgICAgICAgICAqLyAwLAotICAgIC8qIHRwX2RpY3QgICAgICAgICAgICovIDAsCi0gICAgLyogdHBfZGVzY3JfZ2V0ICAgICAgKi8gMCwKLSAgICAvKiB0cF9kZXNjcl9zZXQgICAgICAqLyAwLAotICAgIC8qIHRwX2RpY3RvZmZzZXQgICAgICovIDAsCi0gICAgLyogdHBfaW5pdCAgICAgICAgICAgKi8gMCwKLSAgICAvKiB0cF9hbGxvYyAgICAgICAgICAqLyAwLAotICAgIC8qIHRwX25ldyAgICAgICAgICAgICovIGNvbm5lY3Rpb25fbmV3LAotfTsKLQotI2VuZGlmIC8qIENPTk5FQ1RJT05fSCAqLwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fbXVsdGlwcm9jZXNzaW5nL211bHRpcHJvY2Vzc2luZy5jIGIvTW9kdWxlcy9fbXVsdGlwcm9jZXNzaW5nL211bHRpcHJvY2Vzc2luZy5jCmluZGV4IGVlMjUwZTAuLmQzNzBmOWEgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy9tdWx0aXByb2Nlc3NpbmcuYworKysgYi9Nb2R1bGVzL19tdWx0aXByb2Nlc3NpbmcvbXVsdGlwcm9jZXNzaW5nLmMKQEAgLTgsMTUgKzgsOSBAQAogCiAjaW5jbHVkZSAibXVsdGlwcm9jZXNzaW5nLmgiCiAKLSNpZiAoZGVmaW5lZChDTVNHX0xFTikgJiYgZGVmaW5lZChTQ01fUklHSFRTKSkKLSAgICAjZGVmaW5lIEhBVkVfRkRfVFJBTlNGRVIgMQotI2Vsc2UKLSAgICAjZGVmaW5lIEhBVkVfRkRfVFJBTlNGRVIgMAotI2VuZGlmCiAKIFB5T2JqZWN0ICpjcmVhdGVfd2luMzJfbmFtZXNwYWNlKHZvaWQpOwogCi1QeU9iamVjdCAqcGlja2xlX2R1bXBzLCAqcGlja2xlX2xvYWRzLCAqcGlja2xlX3Byb3RvY29sOwogUHlPYmplY3QgKlByb2Nlc3NFcnJvciwgKkJ1ZmZlclRvb1Nob3J0OwogCiAvKgpAQCAtNDksMTYgKzQzLDYgQEAKICAgICBjYXNlIE1QX01FTU9SWV9FUlJPUjoKICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBNUF9FTkRfT0ZfRklMRToKLSAgICAgICAgUHlFcnJfU2V0Tm9uZShQeUV4Y19FT0ZFcnJvcik7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgTVBfRUFSTFlfRU5EX09GX0ZJTEU6Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgImdvdCBlbmQgb2YgZmlsZSBkdXJpbmcgbWVzc2FnZSIpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIE1QX0JBRF9NRVNTQUdFX0xFTkdUSDoKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0lPRXJyb3IsICJiYWQgbWVzc2FnZSBsZW5ndGgiKTsKLSAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBNUF9FWENFUFRJT05fSEFTX0JFRU5fU0VUOgogICAgICAgICBicmVhazsKICAgICBkZWZhdWx0OgpAQCAtNjksMTM4ICs1Myw2IEBACiB9CiAKIAotLyoKLSAqIFdpbmRvd3Mgb25seQotICovCi0KLSNpZmRlZiBNU19XSU5ET1dTCi0KLS8qIE9uIFdpbmRvd3Mgd2Ugc2V0IGFuIGV2ZW50IHRvIHNpZ25hbCBDdHJsLUM7IGNvbXBhcmUgd2l0aCB0aW1lbW9kdWxlLmMgKi8KLQotSEFORExFIHNpZ2ludF9ldmVudCA9IE5VTEw7Ci0KLXN0YXRpYyBCT09MIFdJTkFQSQotUHJvY2Vzc2luZ0N0cmxIYW5kbGVyKERXT1JEIGR3Q3RybFR5cGUpCi17Ci0gICAgU2V0RXZlbnQoc2lnaW50X2V2ZW50KTsKLSAgICByZXR1cm4gRkFMU0U7Ci19Ci0KLS8qCi0gKiBVbml4IG9ubHkKLSAqLwotCi0jZWxzZSAvKiAhTVNfV0lORE9XUyAqLwotCi0jaWYgSEFWRV9GRF9UUkFOU0ZFUgotCi0vKiBGdW5jdGlvbnMgZm9yIHRyYW5zZmVycmluZyBmaWxlIGRlc2NyaXB0b3JzIGJldHdlZW4gcHJvY2Vzc2VzLgotICAgUmVpbXBsZW1lbnRzIHNvbWUgb2YgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIGZkY3JlZAotICAgbW9kdWxlIGF0IGh0dHA6Ly93d3cubWNhLWx0ZC5jb20vcmVzb3VyY2VzL2ZkY3JlZF8xLnRnei4gKi8KLS8qIEJhc2VkIGluIGh0dHA6Ly9yZXNpbi5jc29mdC5uZXQvY2dpLWJpbi9tYW4uY2dpP3NlY3Rpb249MyZ0b3BpYz1DTVNHX0RBVEEgKi8KLQotc3RhdGljIFB5T2JqZWN0ICoKLW11bHRpcHJvY2Vzc2luZ19zZW5kZmQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQotewotICAgIGludCBjb25uLCBmZCwgcmVzOwotICAgIHN0cnVjdCBpb3ZlYyBkdW1teV9pb3Y7Ci0gICAgY2hhciBkdW1teV9jaGFyOwotICAgIHN0cnVjdCBtc2doZHIgbXNnOwotICAgIHN0cnVjdCBjbXNnaGRyICpjbXNnOwotICAgIHVuaW9uIHsKLSAgICAgICAgc3RydWN0IGNtc2doZHIgaGRyOwotICAgICAgICB1bnNpZ25lZCBjaGFyIGJ1ZltDTVNHX1NQQUNFKHNpemVvZihpbnQpKV07Ci0gICAgfSBjbXNnYnVmOwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpaSIsICZjb25uLCAmZmQpKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIGR1bW15X2lvdi5pb3ZfYmFzZSA9ICZkdW1teV9jaGFyOwotICAgIGR1bW15X2lvdi5pb3ZfbGVuID0gMTsKLQotICAgIG1lbXNldCgmbXNnLCAwLCBzaXplb2YobXNnKSk7Ci0gICAgbXNnLm1zZ19jb250cm9sID0gJmNtc2didWYuYnVmOwotICAgIG1zZy5tc2dfY29udHJvbGxlbiA9IHNpemVvZihjbXNnYnVmLmJ1Zik7Ci0gICAgbXNnLm1zZ19pb3YgPSAmZHVtbXlfaW92OwotICAgIG1zZy5tc2dfaW92bGVuID0gMTsKLQotICAgIGNtc2cgPSBDTVNHX0ZJUlNUSERSKCZtc2cpOwotICAgIGNtc2ctPmNtc2dfbGVuID0gQ01TR19MRU4oc2l6ZW9mKGludCkpOwotICAgIGNtc2ctPmNtc2dfbGV2ZWwgPSBTT0xfU09DS0VUOwotICAgIGNtc2ctPmNtc2dfdHlwZSA9IFNDTV9SSUdIVFM7Ci0gICAgKiAoaW50ICopIENNU0dfREFUQShjbXNnKSA9IGZkOwotCi0gICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgIHJlcyA9IHNlbmRtc2coY29ubiwgJm1zZywgMCk7Ci0gICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLQotICAgIGlmIChyZXMgPCAwKQotICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwotICAgIFB5X1JFVFVSTl9OT05FOwotfQotCi1zdGF0aWMgUHlPYmplY3QgKgotbXVsdGlwcm9jZXNzaW5nX3JlY3ZmZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCi17Ci0gICAgaW50IGNvbm4sIGZkLCByZXM7Ci0gICAgY2hhciBkdW1teV9jaGFyOwotICAgIHN0cnVjdCBpb3ZlYyBkdW1teV9pb3Y7Ci0gICAgc3RydWN0IG1zZ2hkciBtc2cgPSB7MH07Ci0gICAgc3RydWN0IGNtc2doZHIgKmNtc2c7Ci0gICAgdW5pb24gewotICAgICAgICBzdHJ1Y3QgY21zZ2hkciBoZHI7Ci0gICAgICAgIHVuc2lnbmVkIGNoYXIgYnVmW0NNU0dfU1BBQ0Uoc2l6ZW9mKGludCkpXTsKLSAgICB9IGNtc2didWY7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImkiLCAmY29ubikpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgZHVtbXlfaW92Lmlvdl9iYXNlID0gJmR1bW15X2NoYXI7Ci0gICAgZHVtbXlfaW92Lmlvdl9sZW4gPSAxOwotCi0gICAgbWVtc2V0KCZtc2csIDAsIHNpemVvZihtc2cpKTsKLSAgICBtc2cubXNnX2NvbnRyb2wgPSAmY21zZ2J1Zi5idWY7Ci0gICAgbXNnLm1zZ19jb250cm9sbGVuID0gc2l6ZW9mKGNtc2didWYuYnVmKTsKLSAgICBtc2cubXNnX2lvdiA9ICZkdW1teV9pb3Y7Ci0gICAgbXNnLm1zZ19pb3ZsZW4gPSAxOwotCi0gICAgY21zZyA9IENNU0dfRklSU1RIRFIoJm1zZyk7Ci0gICAgY21zZy0+Y21zZ19sZXZlbCA9IFNPTF9TT0NLRVQ7Ci0gICAgY21zZy0+Y21zZ190eXBlID0gU0NNX1JJR0hUUzsKLSAgICBjbXNnLT5jbXNnX2xlbiA9IENNU0dfTEVOKHNpemVvZihpbnQpKTsKLSAgICBtc2cubXNnX2NvbnRyb2xsZW4gPSBjbXNnLT5jbXNnX2xlbjsKLQotICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICByZXMgPSByZWN2bXNnKGNvbm4sICZtc2csIDApOwotICAgIFB5X0VORF9BTExPV19USFJFQURTCi0KLSAgICBpZiAocmVzIDwgMCkKLSAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKLQotICAgIGlmIChtc2cubXNnX2NvbnRyb2xsZW4gPCBDTVNHX0xFTihzaXplb2YoaW50KSkgfHwKLSAgICAgICAgKGNtc2cgPSBDTVNHX0ZJUlNUSERSKCZtc2cpKSA9PSBOVUxMIHx8Ci0gICAgICAgIGNtc2ctPmNtc2dfbGV2ZWwgIT0gU09MX1NPQ0tFVCB8fAotICAgICAgICBjbXNnLT5jbXNnX3R5cGUgIT0gU0NNX1JJR0hUUyB8fAotICAgICAgICBjbXNnLT5jbXNnX2xlbiA8IENNU0dfTEVOKHNpemVvZihpbnQpKSkgewotICAgICAgICAvKiBJZiBhdCBsZWFzdCBvbmUgY29udHJvbCBtZXNzYWdlIGlzIHByZXNlbnQsIHRoZXJlIHNob3VsZCBiZQotICAgICAgICAgICBubyByb29tIGZvciBhbnkgZnVydGhlciBkYXRhIGluIHRoZSBidWZmZXIuICovCi0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsICJObyBmaWxlIGRlc2NyaXB0b3IgcmVjZWl2ZWQiKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgZmQgPSAqIChpbnQgKikgQ01TR19EQVRBKGNtc2cpOwotICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJpIiwgZmQpOwotfQotCi0jZW5kaWYgLyogSEFWRV9GRF9UUkFOU0ZFUiAqLwotCi0jZW5kaWYgLyogIU1TX1dJTkRPV1MgKi8KLQotCi0vKgotICogQWxsIHBsYXRmb3JtcwotICovCi0KIHN0YXRpYyBQeU9iamVjdCoKIG11bHRpcHJvY2Vzc2luZ19hZGRyZXNzX29mX2J1ZmZlcihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm9iaikKIHsKQEAgLTIxMCw3ICs2Miw3IEBACiAgICAgaWYgKFB5T2JqZWN0X0FzV3JpdGVCdWZmZXIob2JqLCAmYnVmZmVyLCAmYnVmZmVyX2xlbikgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJOIiBGX1BZX1NTSVpFX1QsCisgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIk5uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICBQeUxvbmdfRnJvbVZvaWRQdHIoYnVmZmVyKSwgYnVmZmVyX2xlbik7CiB9CiAKQEAgLTIyMywxNiArNzUsNiBAQAogICAgIHsiYWRkcmVzc19vZl9idWZmZXIiLCBtdWx0aXByb2Nlc3NpbmdfYWRkcmVzc19vZl9idWZmZXIsIE1FVEhfTywKICAgICAgImFkZHJlc3Nfb2ZfYnVmZmVyKG9iaikgLT4gaW50XG4iCiAgICAgICJSZXR1cm4gYWRkcmVzcyBvZiBvYmogYXNzdW1pbmcgb2JqIHN1cHBvcnRzIGJ1ZmZlciBpbnRlZmFjZSJ9LAotI2lmIEhBVkVfRkRfVFJBTlNGRVIKLSAgICB7InNlbmRmZCIsIG11bHRpcHJvY2Vzc2luZ19zZW5kZmQsIE1FVEhfVkFSQVJHUywKLSAgICAgInNlbmRmZChzb2NrZmQsIGZkKSAtPiBOb25lXG4iCi0gICAgICJTZW5kIGZpbGUgZGVzY3JpcHRvciBnaXZlbiBieSBmZCBvdmVyIHRoZSB1bml4IGRvbWFpbiBzb2NrZXRcbiIKLSAgICAgIndob3NlIGZpbGUgZGVjcmlwdG9yIGlzIHNvY2tmZCJ9LAotICAgIHsicmVjdmZkIiwgbXVsdGlwcm9jZXNzaW5nX3JlY3ZmZCwgTUVUSF9WQVJBUkdTLAotICAgICAicmVjdmZkKHNvY2tmZCkgLT4gZmRcbiIKLSAgICAgIlJlY2VpdmUgYSBmaWxlIGRlc2NyaXB0b3Igb3ZlciBhIHVuaXggZG9tYWluIHNvY2tldFxuIgotICAgICAid2hvc2UgZmlsZSBkZWNyaXB0b3IgaXMgc29ja2ZkIn0sCi0jZW5kaWYKICAgICB7TlVMTH0KIH07CiAKQEAgLTI1NywyMiArOTksMTMgQEAKIFB5TU9ESU5JVF9GVU5DCiBQeUluaXRfX211bHRpcHJvY2Vzc2luZyh2b2lkKQogewotICAgIFB5T2JqZWN0ICptb2R1bGUsICp0ZW1wLCAqdmFsdWU7CisgICAgUHlPYmplY3QgKm1vZHVsZSwgKnRlbXAsICp2YWx1ZSA9IE5VTEw7CiAKICAgICAvKiBJbml0aWFsaXplIG1vZHVsZSAqLwogICAgIG1vZHVsZSA9IFB5TW9kdWxlX0NyZWF0ZSgmbXVsdGlwcm9jZXNzaW5nX21vZHVsZSk7CiAgICAgaWYgKCFtb2R1bGUpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgLyogR2V0IGNvcHkgb2Ygb2JqZWN0cyBmcm9tIHBpY2tsZSAqLwotICAgIHRlbXAgPSBQeUltcG9ydF9JbXBvcnRNb2R1bGUoUElDS0xFX01PRFVMRSk7Ci0gICAgaWYgKCF0ZW1wKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBwaWNrbGVfZHVtcHMgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHRlbXAsICJkdW1wcyIpOwotICAgIHBpY2tsZV9sb2FkcyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcodGVtcCwgImxvYWRzIik7Ci0gICAgcGlja2xlX3Byb3RvY29sID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh0ZW1wLCAiSElHSEVTVF9QUk9UT0NPTCIpOwotICAgIFB5X1hERUNSRUYodGVtcCk7Ci0KICAgICAvKiBHZXQgY29weSBvZiBCdWZmZXJUb29TaG9ydCAqLwogICAgIHRlbXAgPSBQeUltcG9ydF9JbXBvcnRNb2R1bGUoIm11bHRpcHJvY2Vzc2luZyIpOwogICAgIGlmICghdGVtcCkKQEAgLTI4MCwxMiArMTEzLDYgQEAKICAgICBCdWZmZXJUb29TaG9ydCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcodGVtcCwgIkJ1ZmZlclRvb1Nob3J0Iik7CiAgICAgUHlfWERFQ1JFRih0ZW1wKTsKIAotICAgIC8qIEFkZCBjb25uZWN0aW9uIHR5cGUgdG8gbW9kdWxlICovCi0gICAgaWYgKFB5VHlwZV9SZWFkeSgmQ29ubmVjdGlvblR5cGUpIDwgMCkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgUHlfSU5DUkVGKCZDb25uZWN0aW9uVHlwZSk7Ci0gICAgUHlNb2R1bGVfQWRkT2JqZWN0KG1vZHVsZSwgIkNvbm5lY3Rpb24iLCAoUHlPYmplY3QqKSZDb25uZWN0aW9uVHlwZSk7Ci0KICNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgKGRlZmluZWQoSEFWRV9TRU1fT1BFTikgJiYgIWRlZmluZWQoUE9TSVhfU0VNQVBIT1JFU19OT1RfRU5BQkxFRCkpCiAgICAgLyogQWRkIFNlbUxvY2sgdHlwZSB0byBtb2R1bGUgKi8KQEAgLTMwOSwyOSArMTM2LDExIEBACiAjZW5kaWYKIAogI2lmZGVmIE1TX1dJTkRPV1MKLSAgICAvKiBBZGQgUGlwZUNvbm5lY3Rpb24gdG8gbW9kdWxlICovCi0gICAgaWYgKFB5VHlwZV9SZWFkeSgmUGlwZUNvbm5lY3Rpb25UeXBlKSA8IDApCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIFB5X0lOQ1JFRigmUGlwZUNvbm5lY3Rpb25UeXBlKTsKLSAgICBQeU1vZHVsZV9BZGRPYmplY3QobW9kdWxlLCAiUGlwZUNvbm5lY3Rpb24iLAotICAgICAgICAgICAgICAgICAgICAgICAoUHlPYmplY3QqKSZQaXBlQ29ubmVjdGlvblR5cGUpOwotCiAgICAgLyogSW5pdGlhbGl6ZSB3aW4zMiBjbGFzcyBhbmQgYWRkIHRvIG11bHRpcHJvY2Vzc2luZyAqLwogICAgIHRlbXAgPSBjcmVhdGVfd2luMzJfbmFtZXNwYWNlKCk7CiAgICAgaWYgKCF0ZW1wKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBQeU1vZHVsZV9BZGRPYmplY3QobW9kdWxlLCAid2luMzIiLCB0ZW1wKTsKLQotICAgIC8qIEluaXRpYWxpemUgdGhlIGV2ZW50IGhhbmRsZSB1c2VkIHRvIHNpZ25hbCBDdHJsLUMgKi8KLSAgICBzaWdpbnRfZXZlbnQgPSBDcmVhdGVFdmVudChOVUxMLCBUUlVFLCBGQUxTRSwgTlVMTCk7Ci0gICAgaWYgKCFzaWdpbnRfZXZlbnQpIHsKLSAgICAgICAgUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnIoMCk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBpZiAoIVNldENvbnNvbGVDdHJsSGFuZGxlcihQcm9jZXNzaW5nQ3RybEhhbmRsZXIsIFRSVUUpKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKDApOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CiAjZW5kaWYKIAogICAgIC8qIEFkZCBjb25maWd1cmF0aW9uIG1hY3JvcyAqLwpAQCAtMzUyLDkgKzE2MSw2IEBACiAjaWZkZWYgSEFWRV9TRU1fVElNRURXQUlUCiAgICAgQUREX0ZMQUcoSEFWRV9TRU1fVElNRURXQUlUKTsKICNlbmRpZgotI2lmZGVmIEhBVkVfRkRfVFJBTlNGRVIKLSAgICBBRERfRkxBRyhIQVZFX0ZEX1RSQU5TRkVSKTsKLSNlbmRpZgogI2lmZGVmIEhBVkVfQlJPS0VOX1NFTV9HRVRWQUxVRQogICAgIEFERF9GTEFHKEhBVkVfQlJPS0VOX1NFTV9HRVRWQUxVRSk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy9tdWx0aXByb2Nlc3NpbmcuaCBiL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy9tdWx0aXByb2Nlc3NpbmcuaAppbmRleCAxNDQyNWRlLi5lM2RlOWJhIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19tdWx0aXByb2Nlc3NpbmcvbXVsdGlwcm9jZXNzaW5nLmgKKysrIGIvTW9kdWxlcy9fbXVsdGlwcm9jZXNzaW5nL211bHRpcHJvY2Vzc2luZy5oCkBAIC0zLDEyICszLDYgQEAKIAogI2RlZmluZSBQWV9TU0laRV9UX0NMRUFOCiAKLSNpZmRlZiBfX3N1bgotLyogVGhlIGNvbnRyb2wgbWVzc2FnZSBBUEkgaXMgb25seSBhdmFpbGFibGUgb24gU29sYXJpcyAKLSAgIGlmIFhQRyA0LjIgb3IgbGF0ZXIgaXMgcmVxdWVzdGVkLiAqLwotI2RlZmluZSBfWE9QRU5fU09VUkNFIDUwMAotI2VuZGlmCi0KICNpbmNsdWRlICJQeXRob24uaCIKICNpbmNsdWRlICJzdHJ1Y3RtZW1iZXIuaCIKICNpbmNsdWRlICJweXRocmVhZC5oIgpAQCAtMjksMTAgKzIzLDYgQEAKICMgIGRlZmluZSBTRU1fVkFMVUVfTUFYIExPTkdfTUFYCiAjZWxzZQogIyAgaW5jbHVkZSA8ZmNudGwuaD4gICAgICAgICAgICAgICAgIC8qIE9fQ1JFQVQgYW5kIE9fRVhDTCAqLwotIyAgaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgotIyAgaW5jbHVkZSA8c3lzL3NvY2tldC5oPgotIyAgaW5jbHVkZSA8c3lzL3Vpby5oPgotIyAgaW5jbHVkZSA8YXJwYS9pbmV0Lmg+ICAgICAgICAgICAgIC8qIGh0b25sKCkgYW5kIG50b2hsKCkgKi8KICMgIGlmIGRlZmluZWQoSEFWRV9TRU1fT1BFTikgJiYgIWRlZmluZWQoUE9TSVhfU0VNQVBIT1JFU19OT1RfRU5BQkxFRCkKICMgICAgaW5jbHVkZSA8c2VtYXBob3JlLmg+CiAgICAgIHR5cGVkZWYgc2VtX3QgKlNFTV9IQU5ETEU7CkBAIC02NCwyMCArNTQsNiBAQAogCiAKIC8qCi0gKiBNYWtlIHN1cmUgUHlfc3NpemVfdCBhdmFpbGFibGUKLSAqLwotCi0jaWYgUFlfVkVSU0lPTl9IRVggPCAweDAyMDUwMDAwICYmICFkZWZpbmVkKFBZX1NTSVpFX1RfTUlOKQotICAgdHlwZWRlZiBpbnQgUHlfc3NpemVfdDsKLSMgIGRlZmluZSBQWV9TU0laRV9UX01BWCBJTlRfTUFYCi0jICBkZWZpbmUgUFlfU1NJWkVfVF9NSU4gSU5UX01JTgotIyAgZGVmaW5lIEZfUFlfU1NJWkVfVCAiaSIKLSMgIGRlZmluZSBQeUludF9Gcm9tU3NpemVfdChuKSBQeUludF9Gcm9tTG9uZygobG9uZyluKQotI2Vsc2UKLSMgIGRlZmluZSBGX1BZX1NTSVpFX1QgIm4iCi0jZW5kaWYKLQotLyoKICAqIEZvcm1hdCBjb2RlcwogICovCiAKQEAgLTEwNSwxMiArODEsNiBAQAogIyAgZGVmaW5lIFRfU0VNX0hBTkRMRSBUX1BPSU5URVIKICNlbmRpZgogCi0jaWYgUFlfVkVSU0lPTl9IRVggPj0gMHgwMzAwMDAwMAotIyAgZGVmaW5lIEZfUkJVRkZFUiAieSIKLSNlbHNlCi0jICBkZWZpbmUgRl9SQlVGRkVSICJzIgotI2VuZGlmCi0KIC8qCiAgKiBFcnJvciBjb2RlcyB3aGljaCBjYW4gYmUgcmV0dXJuZWQgYnkgZnVuY3Rpb25zIGNhbGxlZCB3aXRob3V0IEdJTAogICovCkBAIC0xMTgsMTEgKzg4LDggQEAKICNkZWZpbmUgTVBfU1VDQ0VTUyAoMCkKICNkZWZpbmUgTVBfU1RBTkRBUkRfRVJST1IgKC0xKQogI2RlZmluZSBNUF9NRU1PUllfRVJST1IgKC0xMDAxKQotI2RlZmluZSBNUF9FTkRfT0ZfRklMRSAoLTEwMDIpCi0jZGVmaW5lIE1QX0VBUkxZX0VORF9PRl9GSUxFICgtMTAwMykKLSNkZWZpbmUgTVBfQkFEX01FU1NBR0VfTEVOR1RIICgtMTAwNCkKLSNkZWZpbmUgTVBfU09DS0VUX0VSUk9SICgtMTAwNSkKLSNkZWZpbmUgTVBfRVhDRVBUSU9OX0hBU19CRUVOX1NFVCAoLTEwMDYpCisjZGVmaW5lIE1QX1NPQ0tFVF9FUlJPUiAoLTEwMDIpCisjZGVmaW5lIE1QX0VYQ0VQVElPTl9IQVNfQkVFTl9TRVQgKC0xMDAzKQogCiBQeU9iamVjdCAqbXBfU2V0RXJyb3IoUHlPYmplY3QgKlR5cGUsIGludCBudW0pOwogCkBAIC0xMzAsNTcgKzk3LDE0IEBACiAgKiBFeHRlcm5zIC0gbm90IGFsbCB3aWxsIHJlYWxseSBleGlzdCBvbiBhbGwgcGxhdGZvcm1zCiAgKi8KIAotZXh0ZXJuIFB5T2JqZWN0ICpwaWNrbGVfZHVtcHM7Ci1leHRlcm4gUHlPYmplY3QgKnBpY2tsZV9sb2FkczsKLWV4dGVybiBQeU9iamVjdCAqcGlja2xlX3Byb3RvY29sOwogZXh0ZXJuIFB5T2JqZWN0ICpCdWZmZXJUb29TaG9ydDsKIGV4dGVybiBQeVR5cGVPYmplY3QgU2VtTG9ja1R5cGU7Ci1leHRlcm4gUHlUeXBlT2JqZWN0IENvbm5lY3Rpb25UeXBlOwogZXh0ZXJuIFB5VHlwZU9iamVjdCBQaXBlQ29ubmVjdGlvblR5cGU7Ci1leHRlcm4gSEFORExFIHNpZ2ludF9ldmVudDsKLQotLyoKLSAqIFB5M2sgY29tcGF0aWJpbGl0eQotICovCi0KLSNpZiBQWV9WRVJTSU9OX0hFWCA+PSAweDAzMDAwMDAwCi0jICBkZWZpbmUgUElDS0xFX01PRFVMRSAicGlja2xlIgotIyAgZGVmaW5lIEZST01fRk9STUFUIFB5VW5pY29kZV9Gcm9tRm9ybWF0Ci0jICBkZWZpbmUgUHlJbnRfRnJvbUxvbmcgUHlMb25nX0Zyb21Mb25nCi0jICBkZWZpbmUgUHlJbnRfRnJvbVNzaXplX3QgUHlMb25nX0Zyb21Tc2l6ZV90Ci0jZWxzZQotIyAgZGVmaW5lIFBJQ0tMRV9NT0RVTEUgImNQaWNrbGUiCi0jICBkZWZpbmUgRlJPTV9GT1JNQVQgUHlTdHJpbmdfRnJvbUZvcm1hdAotI2VuZGlmCi0KLSNpZm5kZWYgUHlWYXJPYmplY3RfSEVBRF9JTklUCi0jICBkZWZpbmUgUHlWYXJPYmplY3RfSEVBRF9JTklUKHR5cGUsIHNpemUpIFB5T2JqZWN0X0hFQURfSU5JVCh0eXBlKSBzaXplLAotI2VuZGlmCi0KLSNpZm5kZWYgUHlfVFBGTEFHU19IQVZFX1dFQUtSRUZTCi0jICBkZWZpbmUgUHlfVFBGTEFHU19IQVZFX1dFQUtSRUZTIDAKLSNlbmRpZgotCi0vKgotICogQ29ubmVjdGlvbiBkZWZpbml0aW9uCi0gKi8KLQotI2RlZmluZSBDT05ORUNUSU9OX0JVRkZFUl9TSVpFIDEwMjQKLQotdHlwZWRlZiBzdHJ1Y3QgewotICAgIFB5T2JqZWN0X0hFQUQKLSAgICBIQU5ETEUgaGFuZGxlOwotICAgIGludCBmbGFnczsKLSAgICBQeU9iamVjdCAqd2Vha3JlZmxpc3Q7Ci0gICAgY2hhciBidWZmZXJbQ09OTkVDVElPTl9CVUZGRVJfU0laRV07Ci19IENvbm5lY3Rpb25PYmplY3Q7CiAKIC8qCiAgKiBNaXNjZWxsYW5lb3VzCiAgKi8KIAotI2RlZmluZSBNQVhfTUVTU0FHRV9MRU5HVEggMHg3ZmZmZmZmZgotCiAjaWZuZGVmIE1JTgogIyAgZGVmaW5lIE1JTih4LCB5KSAoKHgpIDwgKHkpID8geCA6IHkpCiAjICBkZWZpbmUgTUFYKHgsIHkpICgoeCkgPiAoeSkgPyB4IDogeSkKZGlmZiAtLWdpdCBhL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy9waXBlX2Nvbm5lY3Rpb24uYyBiL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy9waXBlX2Nvbm5lY3Rpb24uYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDVkZGUwYy4uMDAwMDAwMAotLS0gYS9Nb2R1bGVzL19tdWx0aXByb2Nlc3NpbmcvcGlwZV9jb25uZWN0aW9uLmMKKysrIC9kZXYvbnVsbApAQCAtMSwxNDkgKzAsMCBAQAotLyoKLSAqIEEgdHlwZSB3aGljaCB3cmFwcyBhIHBpcGUgaGFuZGxlIGluIG1lc3NhZ2Ugb3JpZW50ZWQgbW9kZQotICoKLSAqIHBpcGVfY29ubmVjdGlvbi5jCi0gKgotICogQ29weXJpZ2h0IChjKSAyMDA2LTIwMDgsIFIgT3Vka2VyayAtLS0gc2VlIENPUFlJTkcudHh0Ci0gKi8KLQotI2luY2x1ZGUgIm11bHRpcHJvY2Vzc2luZy5oIgotCi0jZGVmaW5lIENMT1NFKGgpIENsb3NlSGFuZGxlKGgpCi0KLS8qCi0gKiBTZW5kIHN0cmluZyB0byB0aGUgcGlwZTsgYXNzdW1lcyBpbiBtZXNzYWdlIG9yaWVudGVkIG1vZGUKLSAqLwotCi1zdGF0aWMgUHlfc3NpemVfdAotY29ubl9zZW5kX3N0cmluZyhDb25uZWN0aW9uT2JqZWN0ICpjb25uLCBjaGFyICpzdHJpbmcsIHNpemVfdCBsZW5ndGgpCi17Ci0gICAgRFdPUkQgYW1vdW50X3dyaXR0ZW47Ci0gICAgQk9PTCByZXQ7Ci0KLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgcmV0ID0gV3JpdGVGaWxlKGNvbm4tPmhhbmRsZSwgc3RyaW5nLCBsZW5ndGgsICZhbW91bnRfd3JpdHRlbiwgTlVMTCk7Ci0gICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLQotICAgIGlmIChyZXQgPT0gMCAmJiBHZXRMYXN0RXJyb3IoKSA9PSBFUlJPUl9OT19TWVNURU1fUkVTT1VSQ0VTKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLCAiQ2Fubm5vdCBzZW5kICUiIFBZX0ZPUk1BVF9TSVpFX1QgImQgYnl0ZXMgb3ZlciBjb25uZWN0aW9uIiwgbGVuZ3RoKTsKLSAgICAgICAgcmV0dXJuIE1QX1NUQU5EQVJEX0VSUk9SOwotICAgIH0KLQotICAgIHJldHVybiByZXQgPyBNUF9TVUNDRVNTIDogTVBfU1RBTkRBUkRfRVJST1I7Ci19Ci0KLS8qCi0gKiBBdHRlbXB0cyB0byByZWFkIGludG8gYnVmZmVyLCBvciBpZiBidWZmZXIgdG9vIHNtYWxsIGludG8gKm5ld2J1ZmZlci4KLSAqCi0gKiBSZXR1cm5zIG51bWJlciBvZiBieXRlcyByZWFkLiAgQXNzdW1lcyBpbiBtZXNzYWdlIG9yaWVudGVkIG1vZGUuCi0gKi8KLQotc3RhdGljIFB5X3NzaXplX3QKLWNvbm5fcmVjdl9zdHJpbmcoQ29ubmVjdGlvbk9iamVjdCAqY29ubiwgY2hhciAqYnVmZmVyLAotICAgICAgICAgICAgICAgICBzaXplX3QgYnVmbGVuZ3RoLCBjaGFyICoqbmV3YnVmZmVyLCBzaXplX3QgbWF4bGVuZ3RoKQotewotICAgIERXT1JEIGxlZnQsIGxlbmd0aCwgZnVsbF9sZW5ndGgsIGVycjsKLSAgICBCT09MIHJldDsKLSAgICAqbmV3YnVmZmVyID0gTlVMTDsKLQotICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICByZXQgPSBSZWFkRmlsZShjb25uLT5oYW5kbGUsIGJ1ZmZlciwgTUlOKGJ1Zmxlbmd0aCwgbWF4bGVuZ3RoKSwKLSAgICAgICAgICAgICAgICAgICZsZW5ndGgsIE5VTEwpOwotICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgaWYgKHJldCkKLSAgICAgICAgcmV0dXJuIGxlbmd0aDsKLQotICAgIGVyciA9IEdldExhc3RFcnJvcigpOwotICAgIGlmIChlcnIgIT0gRVJST1JfTU9SRV9EQVRBKSB7Ci0gICAgICAgIGlmIChlcnIgPT0gRVJST1JfQlJPS0VOX1BJUEUpCi0gICAgICAgICAgICByZXR1cm4gTVBfRU5EX09GX0ZJTEU7Ci0gICAgICAgIHJldHVybiBNUF9TVEFOREFSRF9FUlJPUjsKLSAgICB9Ci0KLSAgICBpZiAoIVBlZWtOYW1lZFBpcGUoY29ubi0+aGFuZGxlLCBOVUxMLCAwLCBOVUxMLCBOVUxMLCAmbGVmdCkpCi0gICAgICAgIHJldHVybiBNUF9TVEFOREFSRF9FUlJPUjsKLQotICAgIGZ1bGxfbGVuZ3RoID0gbGVuZ3RoICsgbGVmdDsKLSAgICBpZiAoZnVsbF9sZW5ndGggPiBtYXhsZW5ndGgpCi0gICAgICAgIHJldHVybiBNUF9CQURfTUVTU0FHRV9MRU5HVEg7Ci0KLSAgICAqbmV3YnVmZmVyID0gUHlNZW1fTWFsbG9jKGZ1bGxfbGVuZ3RoKTsKLSAgICBpZiAoKm5ld2J1ZmZlciA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTVBfTUVNT1JZX0VSUk9SOwotCi0gICAgbWVtY3B5KCpuZXdidWZmZXIsIGJ1ZmZlciwgbGVuZ3RoKTsKLQotICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICByZXQgPSBSZWFkRmlsZShjb25uLT5oYW5kbGUsICpuZXdidWZmZXIrbGVuZ3RoLCBsZWZ0LCAmbGVuZ3RoLCBOVUxMKTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgIGlmIChyZXQpIHsKLSAgICAgICAgYXNzZXJ0KGxlbmd0aCA9PSBsZWZ0KTsKLSAgICAgICAgcmV0dXJuIGZ1bGxfbGVuZ3RoOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIFB5TWVtX0ZyZWUoKm5ld2J1ZmZlcik7Ci0gICAgICAgIHJldHVybiBNUF9TVEFOREFSRF9FUlJPUjsKLSAgICB9Ci19Ci0KLS8qCi0gKiBDaGVjayB3aGV0aGVyIGFueSBkYXRhIGlzIGF2YWlsYWJsZSBmb3IgcmVhZGluZwotICovCi0KLXN0YXRpYyBpbnQKLWNvbm5fcG9sbChDb25uZWN0aW9uT2JqZWN0ICpjb25uLCBkb3VibGUgdGltZW91dCwgUHlUaHJlYWRTdGF0ZSAqX3NhdmUpCi17Ci0gICAgRFdPUkQgYnl0ZXMsIGRlYWRsaW5lLCBkZWxheTsKLSAgICBpbnQgZGlmZmVyZW5jZSwgcmVzOwotICAgIEJPT0wgYmxvY2sgPSBGQUxTRTsKLQotICAgIGlmICghUGVla05hbWVkUGlwZShjb25uLT5oYW5kbGUsIE5VTEwsIDAsIE5VTEwsICZieXRlcywgTlVMTCkpCi0gICAgICAgIHJldHVybiBNUF9TVEFOREFSRF9FUlJPUjsKLQotICAgIGlmICh0aW1lb3V0ID09IDAuMCkKLSAgICAgICAgcmV0dXJuIGJ5dGVzID4gMDsKLQotICAgIGlmICh0aW1lb3V0IDwgMC4wKQotICAgICAgICBibG9jayA9IFRSVUU7Ci0gICAgZWxzZQotICAgICAgICAvKiBYWFggZG9lcyBub3QgY2hlY2sgZm9yIG92ZXJmbG93ICovCi0gICAgICAgIGRlYWRsaW5lID0gR2V0VGlja0NvdW50KCkgKyAoRFdPUkQpKDEwMDAgKiB0aW1lb3V0ICsgMC41KTsKLQotICAgIFNsZWVwKDApOwotCi0gICAgZm9yIChkZWxheSA9IDEgOyA7IGRlbGF5ICs9IDEpIHsKLSAgICAgICAgaWYgKCFQZWVrTmFtZWRQaXBlKGNvbm4tPmhhbmRsZSwgTlVMTCwgMCwgTlVMTCwgJmJ5dGVzLCBOVUxMKSkKLSAgICAgICAgICAgIHJldHVybiBNUF9TVEFOREFSRF9FUlJPUjsKLSAgICAgICAgZWxzZSBpZiAoYnl0ZXMgPiAwKQotICAgICAgICAgICAgcmV0dXJuIFRSVUU7Ci0KLSAgICAgICAgaWYgKCFibG9jaykgewotICAgICAgICAgICAgZGlmZmVyZW5jZSA9IGRlYWRsaW5lIC0gR2V0VGlja0NvdW50KCk7Ci0gICAgICAgICAgICBpZiAoZGlmZmVyZW5jZSA8IDApCi0gICAgICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwotICAgICAgICAgICAgaWYgKChpbnQpZGVsYXkgPiBkaWZmZXJlbmNlKQotICAgICAgICAgICAgICAgIGRlbGF5ID0gZGlmZmVyZW5jZTsKLSAgICAgICAgfQotCi0gICAgICAgIGlmIChkZWxheSA+IDIwKQotICAgICAgICAgICAgZGVsYXkgPSAyMDsKLQotICAgICAgICBTbGVlcChkZWxheSk7Ci0KLSAgICAgICAgLyogY2hlY2sgZm9yIHNpZ25hbHMgKi8KLSAgICAgICAgUHlfQkxPQ0tfVEhSRUFEUwotICAgICAgICByZXMgPSBQeUVycl9DaGVja1NpZ25hbHMoKTsKLSAgICAgICAgUHlfVU5CTE9DS19USFJFQURTCi0KLSAgICAgICAgaWYgKHJlcykKLSAgICAgICAgICAgIHJldHVybiBNUF9FWENFUFRJT05fSEFTX0JFRU5fU0VUOwotICAgIH0KLX0KLQotLyoKLSAqICJjb25uZWN0aW9uLmgiIGRlZmluZXMgdGhlIFBpcGVDb25uZWN0aW9uIHR5cGUgdXNpbmcgdGhlIGRlZmluaXRpb25zIGFib3ZlCi0gKi8KLQotI2RlZmluZSBDT05ORUNUSU9OX05BTUUgIlBpcGVDb25uZWN0aW9uIgotI2RlZmluZSBDT05ORUNUSU9OX1RZUEUgUGlwZUNvbm5lY3Rpb25UeXBlCi0KLSNpbmNsdWRlICJjb25uZWN0aW9uLmgiCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19tdWx0aXByb2Nlc3Npbmcvc2VtYXBob3JlLmMgYi9Nb2R1bGVzL19tdWx0aXByb2Nlc3Npbmcvc2VtYXBob3JlLmMKaW5kZXggMWYzN2Q2YS4uMGM5YjA0YyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fbXVsdGlwcm9jZXNzaW5nL3NlbWFwaG9yZS5jCisrKyBiL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy9zZW1hcGhvcmUuYwpAQCAtNjIsNyArNjIsOCBAQAogICAgIGludCBibG9ja2luZyA9IDE7CiAgICAgZG91YmxlIHRpbWVvdXQ7CiAgICAgUHlPYmplY3QgKnRpbWVvdXRfb2JqID0gUHlfTm9uZTsKLSAgICBEV09SRCByZXMsIGZ1bGxfbXNlY3MsIG1zZWNzLCBzdGFydCwgdGlja3M7CisgICAgRFdPUkQgcmVzLCBmdWxsX21zZWNzLCBuaGFuZGxlczsKKyAgICBIQU5ETEUgaGFuZGxlc1syXSwgc2lnaW50X2V2ZW50OwogCiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJibG9jayIsICJ0aW1lb3V0IiwgTlVMTH07CiAKQEAgLTk2LDUzICs5Nyw0MCBAQAogICAgICAgICBQeV9SRVRVUk5fVFJVRTsKICAgICB9CiAKLSAgICAvKiBjaGVjayB3aGV0aGVyIHdlIGNhbiBhY3F1aXJlIHdpdGhvdXQgYmxvY2tpbmcgKi8KKyAgICAvKiBjaGVjayB3aGV0aGVyIHdlIGNhbiBhY3F1aXJlIHdpdGhvdXQgcmVsZWFzaW5nIHRoZSBHSUwgYW5kIGJsb2NraW5nICovCiAgICAgaWYgKFdhaXRGb3JTaW5nbGVPYmplY3Qoc2VsZi0+aGFuZGxlLCAwKSA9PSBXQUlUX09CSkVDVF8wKSB7CiAgICAgICAgIHNlbGYtPmxhc3RfdGlkID0gR2V0Q3VycmVudFRocmVhZElkKCk7CiAgICAgICAgICsrc2VsZi0+Y291bnQ7CiAgICAgICAgIFB5X1JFVFVSTl9UUlVFOwogICAgIH0KIAotICAgIG1zZWNzID0gZnVsbF9tc2VjczsKLSAgICBzdGFydCA9IEdldFRpY2tDb3VudCgpOwotCi0gICAgZm9yICggOyA7ICkgewotICAgICAgICBIQU5ETEUgaGFuZGxlc1syXSA9IHtzZWxmLT5oYW5kbGUsIHNpZ2ludF9ldmVudH07Ci0KLSAgICAgICAgLyogZG8gdGhlIHdhaXQgKi8KLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBSZXNldEV2ZW50KHNpZ2ludF9ldmVudCk7Ci0gICAgICAgIHJlcyA9IFdhaXRGb3JNdWx0aXBsZU9iamVjdHMoMiwgaGFuZGxlcywgRkFMU0UsIG1zZWNzKTsKLSAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLQotICAgICAgICAvKiBoYW5kbGUgcmVzdWx0ICovCi0gICAgICAgIGlmIChyZXMgIT0gV0FJVF9PQkpFQ1RfMCArIDEpCi0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICAvKiBnb3QgU0lHSU5UIHNvIGdpdmUgc2lnbmFsIGhhbmRsZXIgYSBjaGFuY2UgdG8gcnVuICovCi0gICAgICAgIFNsZWVwKDEpOwotCi0gICAgICAgIC8qIGlmIHRoaXMgaXMgbWFpbiB0aHJlYWQgbGV0IEtleWJvYXJkSW50ZXJydXB0IGJlIHJhaXNlZCAqLwotICAgICAgICBpZiAoUHlFcnJfQ2hlY2tTaWduYWxzKCkpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgICAgICAvKiByZWNhbGN1bGF0ZSB0aW1lb3V0ICovCi0gICAgICAgIGlmIChtc2VjcyAhPSBJTkZJTklURSkgewotICAgICAgICAgICAgdGlja3MgPSBHZXRUaWNrQ291bnQoKTsKLSAgICAgICAgICAgIGlmICgoRFdPUkQpKHRpY2tzIC0gc3RhcnQpID49IGZ1bGxfbXNlY3MpCi0gICAgICAgICAgICAgICAgUHlfUkVUVVJOX0ZBTFNFOwotICAgICAgICAgICAgbXNlY3MgPSBmdWxsX21zZWNzIC0gKHRpY2tzIC0gc3RhcnQpOwotICAgICAgICB9CisgICAgLyogcHJlcGFyZSBsaXN0IG9mIGhhbmRsZXMgKi8KKyAgICBuaGFuZGxlcyA9IDA7CisgICAgaGFuZGxlc1tuaGFuZGxlcysrXSA9IHNlbGYtPmhhbmRsZTsKKyAgICBpZiAoX1B5T1NfSXNNYWluVGhyZWFkKCkpIHsKKyAgICAgICAgc2lnaW50X2V2ZW50ID0gX1B5T1NfU2lnaW50RXZlbnQoKTsKKyAgICAgICAgYXNzZXJ0KHNpZ2ludF9ldmVudCAhPSBOVUxMKTsKKyAgICAgICAgaGFuZGxlc1tuaGFuZGxlcysrXSA9IHNpZ2ludF9ldmVudDsKICAgICB9CiAKKyAgICAvKiBkbyB0aGUgd2FpdCAqLworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAoc2lnaW50X2V2ZW50ICE9IE5VTEwpCisgICAgICAgIFJlc2V0RXZlbnQoc2lnaW50X2V2ZW50KTsKKyAgICByZXMgPSBXYWl0Rm9yTXVsdGlwbGVPYmplY3RzKG5oYW5kbGVzLCBoYW5kbGVzLCBGQUxTRSwgZnVsbF9tc2Vjcyk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKwogICAgIC8qIGhhbmRsZSByZXN1bHQgKi8KICAgICBzd2l0Y2ggKHJlcykgewogICAgIGNhc2UgV0FJVF9USU1FT1VUOgogICAgICAgICBQeV9SRVRVUk5fRkFMU0U7Ci0gICAgY2FzZSBXQUlUX09CSkVDVF8wOgorICAgIGNhc2UgV0FJVF9PQkpFQ1RfMCArIDA6CiAgICAgICAgIHNlbGYtPmxhc3RfdGlkID0gR2V0Q3VycmVudFRocmVhZElkKCk7CiAgICAgICAgICsrc2VsZi0+Y291bnQ7CiAgICAgICAgIFB5X1JFVFVSTl9UUlVFOworICAgIGNhc2UgV0FJVF9PQkpFQ1RfMCArIDE6CisgICAgICAgIGVycm5vID0gRUlOVFI7CisgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CiAgICAgY2FzZSBXQUlUX0ZBSUxFRDoKICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKDApOwogICAgIGRlZmF1bHQ6CkBAIC00ODMsNyArNDcxLDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzZW1sb2NrX2NvdW50KFNlbUxvY2tPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmV0dXJuIFB5SW50X0Zyb21Mb25nKChsb25nKXNlbGYtPmNvdW50KTsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKChsb25nKXNlbGYtPmNvdW50KTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTUwNyw3ICs0OTUsNyBAQAogICAgICAgIHRoZSBudW1iZXIgb2Ygd2FpdGluZyB0aHJlYWRzICovCiAgICAgaWYgKHN2YWwgPCAwKQogICAgICAgICBzdmFsID0gMDsKLSAgICByZXR1cm4gUHlJbnRfRnJvbUxvbmcoKGxvbmcpc3ZhbCk7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZygobG9uZylzdmFsKTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19tdWx0aXByb2Nlc3Npbmcvc29ja2V0X2Nvbm5lY3Rpb24uYyBiL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy9zb2NrZXRfY29ubmVjdGlvbi5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3ZWJmMzM4Li4wMDAwMDAwCi0tLSBhL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy9zb2NrZXRfY29ubmVjdGlvbi5jCisrKyAvZGV2L251bGwKQEAgLTEsMjAyICswLDAgQEAKLS8qCi0gKiBBIHR5cGUgd2hpY2ggd3JhcHMgYSBzb2NrZXQKLSAqCi0gKiBzb2NrZXRfY29ubmVjdGlvbi5jCi0gKgotICogQ29weXJpZ2h0IChjKSAyMDA2LTIwMDgsIFIgT3Vka2VyayAtLS0gc2VlIENPUFlJTkcudHh0Ci0gKi8KLQotI2luY2x1ZGUgIm11bHRpcHJvY2Vzc2luZy5oIgotCi0jaWZkZWYgTVNfV0lORE9XUwotIyAgZGVmaW5lIFdSSVRFKGgsIGJ1ZmZlciwgbGVuZ3RoKSBzZW5kKChTT0NLRVQpaCwgYnVmZmVyLCBsZW5ndGgsIDApCi0jICBkZWZpbmUgUkVBRChoLCBidWZmZXIsIGxlbmd0aCkgcmVjdigoU09DS0VUKWgsIGJ1ZmZlciwgbGVuZ3RoLCAwKQotIyAgZGVmaW5lIENMT1NFKGgpIGNsb3Nlc29ja2V0KChTT0NLRVQpaCkKLSNlbHNlCi0jICBkZWZpbmUgV1JJVEUoaCwgYnVmZmVyLCBsZW5ndGgpIHdyaXRlKGgsIGJ1ZmZlciwgbGVuZ3RoKQotIyAgZGVmaW5lIFJFQUQoaCwgYnVmZmVyLCBsZW5ndGgpIHJlYWQoaCwgYnVmZmVyLCBsZW5ndGgpCi0jICBkZWZpbmUgQ0xPU0UoaCkgY2xvc2UoaCkKLSNlbmRpZgotCi0vKgotICogU2VuZCBzdHJpbmcgdG8gZmlsZSBkZXNjcmlwdG9yCi0gKi8KLQotc3RhdGljIFB5X3NzaXplX3QKLV9jb25uX3NlbmRhbGwoSEFORExFIGgsIGNoYXIgKnN0cmluZywgc2l6ZV90IGxlbmd0aCkKLXsKLSAgICBjaGFyICpwID0gc3RyaW5nOwotICAgIFB5X3NzaXplX3QgcmVzOwotCi0gICAgd2hpbGUgKGxlbmd0aCA+IDApIHsKLSAgICAgICAgcmVzID0gV1JJVEUoaCwgcCwgbGVuZ3RoKTsKLSAgICAgICAgaWYgKHJlcyA8IDApCi0gICAgICAgICAgICByZXR1cm4gTVBfU09DS0VUX0VSUk9SOwotICAgICAgICBsZW5ndGggLT0gcmVzOwotICAgICAgICBwICs9IHJlczsKLSAgICB9Ci0KLSAgICByZXR1cm4gTVBfU1VDQ0VTUzsKLX0KLQotLyoKLSAqIFJlY2VpdmUgc3RyaW5nIG9mIGV4YWN0IGxlbmd0aCBmcm9tIGZpbGUgZGVzY3JpcHRvcgotICovCi0KLXN0YXRpYyBQeV9zc2l6ZV90Ci1fY29ubl9yZWN2YWxsKEhBTkRMRSBoLCBjaGFyICpidWZmZXIsIHNpemVfdCBsZW5ndGgpCi17Ci0gICAgc2l6ZV90IHJlbWFpbmluZyA9IGxlbmd0aDsKLSAgICBQeV9zc2l6ZV90IHRlbXA7Ci0gICAgY2hhciAqcCA9IGJ1ZmZlcjsKLQotICAgIHdoaWxlIChyZW1haW5pbmcgPiAwKSB7Ci0gICAgICAgIHRlbXAgPSBSRUFEKGgsIHAsIHJlbWFpbmluZyk7Ci0gICAgICAgIGlmICh0ZW1wIDw9IDApIHsKLSAgICAgICAgICAgIGlmICh0ZW1wID09IDApCi0gICAgICAgICAgICAgICAgcmV0dXJuIHJlbWFpbmluZyA9PSBsZW5ndGggPwotICAgICAgICAgICAgICAgICAgICBNUF9FTkRfT0ZfRklMRSA6IE1QX0VBUkxZX0VORF9PRl9GSUxFOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJldHVybiB0ZW1wOwotICAgICAgICB9Ci0gICAgICAgIHJlbWFpbmluZyAtPSB0ZW1wOwotICAgICAgICBwICs9IHRlbXA7Ci0gICAgfQotCi0gICAgcmV0dXJuIE1QX1NVQ0NFU1M7Ci19Ci0KLS8qCi0gKiBTZW5kIGEgc3RyaW5nIHByZXBlbmRlZCBieSB0aGUgc3RyaW5nIGxlbmd0aCBpbiBuZXR3b3JrIGJ5dGUgb3JkZXIKLSAqLwotCi1zdGF0aWMgUHlfc3NpemVfdAotY29ubl9zZW5kX3N0cmluZyhDb25uZWN0aW9uT2JqZWN0ICpjb25uLCBjaGFyICpzdHJpbmcsIHNpemVfdCBsZW5ndGgpCi17Ci0gICAgUHlfc3NpemVfdCByZXM7Ci0gICAgLyogVGhlICJoZWFkZXIiIG9mIHRoZSBtZXNzYWdlIGlzIGEgMzIgYml0IHVuc2lnbmVkIG51bWJlciAoaW4KLSAgICAgICBuZXR3b3JrIG9yZGVyKSB3aGljaCBzcGVjaWZpZXMgdGhlIGxlbmd0aCBvZiB0aGUgImJvZHkiLiAgSWYKLSAgICAgICB0aGUgbWVzc2FnZSBpcyBzaG9ydGVyIHRoYW4gYWJvdXQgMTZrYiB0aGVuIGl0IGlzIHF1aWNrZXIgdG8KLSAgICAgICBjb21iaW5lIHRoZSAiaGVhZGVyIiBhbmQgdGhlICJib2R5IiBvZiB0aGUgbWVzc2FnZSBhbmQgc2VuZAotICAgICAgIHRoZW0gYXQgb25jZS4gKi8KLSAgICBpZiAobGVuZ3RoIDwgKDE2KjEwMjQpKSB7Ci0gICAgICAgIGNoYXIgKm1lc3NhZ2U7Ci0KLSAgICAgICAgbWVzc2FnZSA9IFB5TWVtX01hbGxvYyhsZW5ndGgrNCk7Ci0gICAgICAgIGlmIChtZXNzYWdlID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTVBfTUVNT1JZX0VSUk9SOwotCi0gICAgICAgICooVUlOVDMyKiltZXNzYWdlID0gaHRvbmwoKFVJTlQzMilsZW5ndGgpOwotICAgICAgICBtZW1jcHkobWVzc2FnZSs0LCBzdHJpbmcsIGxlbmd0aCk7Ci0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgcmVzID0gX2Nvbm5fc2VuZGFsbChjb25uLT5oYW5kbGUsIG1lc3NhZ2UsIGxlbmd0aCs0KTsKLSAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgUHlNZW1fRnJlZShtZXNzYWdlKTsKLSAgICB9IGVsc2UgewotICAgICAgICBVSU5UMzIgbGVuYnVmZjsKLQotICAgICAgICBpZiAobGVuZ3RoID4gTUFYX01FU1NBR0VfTEVOR1RIKQotICAgICAgICAgICAgcmV0dXJuIE1QX0JBRF9NRVNTQUdFX0xFTkdUSDsKLQotICAgICAgICBsZW5idWZmID0gaHRvbmwoKFVJTlQzMilsZW5ndGgpOwotICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIHJlcyA9IF9jb25uX3NlbmRhbGwoY29ubi0+aGFuZGxlLCAoY2hhciopJmxlbmJ1ZmYsIDQpIHx8Ci0gICAgICAgICAgICBfY29ubl9zZW5kYWxsKGNvbm4tPmhhbmRsZSwgc3RyaW5nLCBsZW5ndGgpOwotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgIH0KLSAgICByZXR1cm4gcmVzOwotfQotCi0vKgotICogQXR0ZW1wdHMgdG8gcmVhZCBpbnRvIGJ1ZmZlciwgb3IgZmFpbGluZyB0aGF0IGludG8gKm5ld2J1ZmZlcgotICoKLSAqIFJldHVybnMgbnVtYmVyIG9mIGJ5dGVzIHJlYWQuCi0gKi8KLQotc3RhdGljIFB5X3NzaXplX3QKLWNvbm5fcmVjdl9zdHJpbmcoQ29ubmVjdGlvbk9iamVjdCAqY29ubiwgY2hhciAqYnVmZmVyLAotICAgICAgICAgICAgICAgICBzaXplX3QgYnVmbGVuZ3RoLCBjaGFyICoqbmV3YnVmZmVyLCBzaXplX3QgbWF4bGVuZ3RoKQotewotICAgIGludCByZXM7Ci0gICAgVUlOVDMyIHVsZW5ndGg7Ci0KLSAgICAqbmV3YnVmZmVyID0gTlVMTDsKLQotICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICByZXMgPSBfY29ubl9yZWN2YWxsKGNvbm4tPmhhbmRsZSwgKGNoYXIqKSZ1bGVuZ3RoLCA0KTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgIGlmIChyZXMgPCAwKQotICAgICAgICByZXR1cm4gcmVzOwotCi0gICAgdWxlbmd0aCA9IG50b2hsKHVsZW5ndGgpOwotICAgIGlmICh1bGVuZ3RoID4gbWF4bGVuZ3RoKQotICAgICAgICByZXR1cm4gTVBfQkFEX01FU1NBR0VfTEVOR1RIOwotCi0gICAgaWYgKHVsZW5ndGggPD0gYnVmbGVuZ3RoKSB7Ci0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgcmVzID0gX2Nvbm5fcmVjdmFsbChjb25uLT5oYW5kbGUsIGJ1ZmZlciwgKHNpemVfdCl1bGVuZ3RoKTsKLSAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgcmV0dXJuIHJlcyA8IDAgPyByZXMgOiB1bGVuZ3RoOwotICAgIH0gZWxzZSB7Ci0gICAgICAgICpuZXdidWZmZXIgPSBQeU1lbV9NYWxsb2MoKHNpemVfdCl1bGVuZ3RoKTsKLSAgICAgICAgaWYgKCpuZXdidWZmZXIgPT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBNUF9NRU1PUllfRVJST1I7Ci0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgcmVzID0gX2Nvbm5fcmVjdmFsbChjb25uLT5oYW5kbGUsICpuZXdidWZmZXIsIChzaXplX3QpdWxlbmd0aCk7Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgICAgIHJldHVybiByZXMgPCAwID8gKFB5X3NzaXplX3QpcmVzIDogKFB5X3NzaXplX3QpdWxlbmd0aDsKLSAgICB9Ci19Ci0KLS8qCi0gKiBDaGVjayB3aGV0aGVyIGFueSBkYXRhIGlzIGF2YWlsYWJsZSBmb3IgcmVhZGluZyAtLSBuZWcgdGltZW91dCBibG9ja3MKLSAqLwotCi1zdGF0aWMgaW50Ci1jb25uX3BvbGwoQ29ubmVjdGlvbk9iamVjdCAqY29ubiwgZG91YmxlIHRpbWVvdXQsIFB5VGhyZWFkU3RhdGUgKl9zYXZlKQotewotICAgIGludCByZXM7Ci0gICAgZmRfc2V0IHJmZHM7Ci0KLSAgICAvKgotICAgICAqIFZlcmlmeSB0aGUgaGFuZGxlLCBpc3N1ZSAzMzIxLiBOb3QgcmVxdWlyZWQgZm9yIHdpbmRvd3MuCi0gICAgICovCi0gICAgI2lmbmRlZiBNU19XSU5ET1dTCi0gICAgICAgIGlmICgoKGludCljb25uLT5oYW5kbGUpIDwgMCB8fCAoKGludCljb25uLT5oYW5kbGUpID49IEZEX1NFVFNJWkUpIHsKLSAgICAgICAgICAgIFB5X0JMT0NLX1RIUkVBRFMKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLCAiaGFuZGxlIG91dCBvZiByYW5nZSBpbiBzZWxlY3QoKSIpOwotICAgICAgICAgICAgUHlfVU5CTE9DS19USFJFQURTCi0gICAgICAgICAgICByZXR1cm4gTVBfRVhDRVBUSU9OX0hBU19CRUVOX1NFVDsKLSAgICAgICAgfQotICAgICNlbmRpZgotCi0gICAgRkRfWkVSTygmcmZkcyk7Ci0gICAgRkRfU0VUKChTT0NLRVQpY29ubi0+aGFuZGxlLCAmcmZkcyk7Ci0KLSAgICBpZiAodGltZW91dCA8IDAuMCkgewotICAgICAgICByZXMgPSBzZWxlY3QoKGludCljb25uLT5oYW5kbGUrMSwgJnJmZHMsIE5VTEwsIE5VTEwsIE5VTEwpOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIHN0cnVjdCB0aW1ldmFsIHR2OwotICAgICAgICB0di50dl9zZWMgPSAobG9uZyl0aW1lb3V0OwotICAgICAgICB0di50dl91c2VjID0gKGxvbmcpKCh0aW1lb3V0IC0gdHYudHZfc2VjKSAqIDFlNiArIDAuNSk7Ci0gICAgICAgIHJlcyA9IHNlbGVjdCgoaW50KWNvbm4tPmhhbmRsZSsxLCAmcmZkcywgTlVMTCwgTlVMTCwgJnR2KTsKLSAgICB9Ci0KLSAgICBpZiAocmVzIDwgMCkgewotICAgICAgICByZXR1cm4gTVBfU09DS0VUX0VSUk9SOwotICAgIH0gZWxzZSBpZiAoRkRfSVNTRVQoY29ubi0+aGFuZGxlLCAmcmZkcykpIHsKLSAgICAgICAgcmV0dXJuIFRSVUU7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgYXNzZXJ0KHJlcyA9PSAwKTsKLSAgICAgICAgcmV0dXJuIEZBTFNFOwotICAgIH0KLX0KLQotLyoKLSAqICJjb25uZWN0aW9uLmgiIGRlZmluZXMgdGhlIENvbm5lY3Rpb24gdHlwZSB1c2luZyBkZWZzIGFib3ZlCi0gKi8KLQotI2RlZmluZSBDT05ORUNUSU9OX05BTUUgIkNvbm5lY3Rpb24iCi0jZGVmaW5lIENPTk5FQ1RJT05fVFlQRSBDb25uZWN0aW9uVHlwZQotCi0jaW5jbHVkZSAiY29ubmVjdGlvbi5oIgpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fbXVsdGlwcm9jZXNzaW5nL3dpbjMyX2Z1bmN0aW9ucy5jIGIvTW9kdWxlcy9fbXVsdGlwcm9jZXNzaW5nL3dpbjMyX2Z1bmN0aW9ucy5jCmluZGV4IDQ1MmQ2MDguLmRkYzQ5NmQgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX211bHRpcHJvY2Vzc2luZy93aW4zMl9mdW5jdGlvbnMuYworKysgYi9Nb2R1bGVzL19tdWx0aXByb2Nlc3Npbmcvd2luMzJfZnVuY3Rpb25zLmMKQEAgLTEyLDEwICsxMiwyMjMgQEAKICNkZWZpbmUgV0lOMzJfRlVOQ1RJT04oZnVuYykgXAogICAgIHsjZnVuYywgKFB5Q0Z1bmN0aW9uKXdpbjMyXyAjIyBmdW5jLCBNRVRIX1ZBUkFSR1MgfCBNRVRIX1NUQVRJQywgIiJ9CiAKKyNkZWZpbmUgV0lOMzJfS1dBUkdTX0ZVTkNUSU9OKGZ1bmMpIFwKKyAgICB7I2Z1bmMsIChQeUNGdW5jdGlvbil3aW4zMl8gIyMgZnVuYywgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUyB8IE1FVEhfU1RBVElDLCAiIn0KKwogI2RlZmluZSBXSU4zMl9DT05TVEFOVChmbXQsIGNvbikgXAogICAgIFB5RGljdF9TZXRJdGVtU3RyaW5nKFdpbjMyVHlwZS50cF9kaWN0LCAjY29uLCBQeV9CdWlsZFZhbHVlKGZtdCwgY29uKSkKIAogCisvKiBHcmFiIENhbmNlbElvRXggZHluYW1pY2FsbHkgZnJvbSBrZXJuZWwzMiAqLworc3RhdGljIGludCBoYXNfQ2FuY2VsSW9FeCA9IC0xOworc3RhdGljIEJPT0wgKENBTExCQUNLICpQeV9DYW5jZWxJb0V4KShIQU5ETEUsIExQT1ZFUkxBUFBFRCk7CisKK3N0YXRpYyBpbnQKK2NoZWNrX0NhbmNlbElvRXgoKQoreworICAgIGlmIChoYXNfQ2FuY2VsSW9FeCA9PSAtMSkKKyAgICB7CisgICAgICAgIEhJTlNUQU5DRSBoS2VybmVsMzIgPSBHZXRNb2R1bGVIYW5kbGUoIktFUk5FTDMyIik7CisgICAgICAgICogKEZBUlBST0MgKikgJlB5X0NhbmNlbElvRXggPSBHZXRQcm9jQWRkcmVzcyhoS2VybmVsMzIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQ2FuY2VsSW9FeCIpOworICAgICAgICBoYXNfQ2FuY2VsSW9FeCA9IChQeV9DYW5jZWxJb0V4ICE9IE5VTEwpOworICAgIH0KKyAgICByZXR1cm4gaGFzX0NhbmNlbElvRXg7Cit9CisKKworLyoKKyAqIEEgUHl0aG9uIG9iamVjdCB3cmFwcGluZyBhbiBPVkVSTEFQUEVEIHN0cnVjdHVyZSBhbmQgb3RoZXIgdXNlZnVsIGRhdGEKKyAqIGZvciBvdmVybGFwcGVkIEkvTworICovCisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBQeU9iamVjdF9IRUFECisgICAgT1ZFUkxBUFBFRCBvdmVybGFwcGVkOworICAgIC8qIEZvciBjb252ZW5pZW5jZSwgd2Ugc3RvcmUgdGhlIGZpbGUgaGFuZGxlIHRvbyAqLworICAgIEhBTkRMRSBoYW5kbGU7CisgICAgLyogV2hldGhlciB0aGVyZSdzIEkvTyBpbiBmbGlnaHQgKi8KKyAgICBpbnQgcGVuZGluZzsKKyAgICAvKiBXaGV0aGVyIEkvTyBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5ICovCisgICAgaW50IGNvbXBsZXRlZDsKKyAgICAvKiBCdWZmZXIgdXNlZCBmb3IgcmVhZGluZyAob3B0aW9uYWwpICovCisgICAgUHlPYmplY3QgKnJlYWRfYnVmZmVyOworICAgIC8qIEJ1ZmZlciB1c2VkIGZvciB3cml0aW5nIChvcHRpb25hbCkgKi8KKyAgICBQeV9idWZmZXIgd3JpdGVfYnVmZmVyOworfSBPdmVybGFwcGVkT2JqZWN0OworCitzdGF0aWMgdm9pZAorb3ZlcmxhcHBlZF9kZWFsbG9jKE92ZXJsYXBwZWRPYmplY3QgKnNlbGYpCit7CisgICAgaW50IGVyciA9IEdldExhc3RFcnJvcigpOworICAgIGlmIChzZWxmLT5wZW5kaW5nKSB7CisgICAgICAgIGlmIChjaGVja19DYW5jZWxJb0V4KCkpCisgICAgICAgICAgICBQeV9DYW5jZWxJb0V4KHNlbGYtPmhhbmRsZSwgJnNlbGYtPm92ZXJsYXBwZWQpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkkvTyBvcGVyYXRpb25zIHN0aWxsIGluIGZsaWdodCB3aGlsZSBkZXN0cm95aW5nICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT3ZlcmxhcHBlZCBvYmplY3QsIHRoZSBwcm9jZXNzIG1heSBjcmFzaCIpOworICAgICAgICAgICAgUHlFcnJfV3JpdGVVbnJhaXNhYmxlKE5VTEwpOworICAgICAgICB9CisgICAgfQorICAgIENsb3NlSGFuZGxlKHNlbGYtPm92ZXJsYXBwZWQuaEV2ZW50KTsKKyAgICBTZXRMYXN0RXJyb3IoZXJyKTsKKyAgICBpZiAoc2VsZi0+d3JpdGVfYnVmZmVyLm9iaikKKyAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmc2VsZi0+d3JpdGVfYnVmZmVyKTsKKyAgICBQeV9DTEVBUihzZWxmLT5yZWFkX2J1ZmZlcik7CisgICAgUHlPYmplY3RfRGVsKHNlbGYpOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorb3ZlcmxhcHBlZF9HZXRPdmVybGFwcGVkUmVzdWx0KE92ZXJsYXBwZWRPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICp3YWl0b2JqKQoreworICAgIGludCB3YWl0OworICAgIEJPT0wgcmVzOworICAgIERXT1JEIHRyYW5zZmVycmVkID0gMDsKKworICAgIHdhaXQgPSBQeU9iamVjdF9Jc1RydWUod2FpdG9iaik7CisgICAgaWYgKHdhaXQgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gR2V0T3ZlcmxhcHBlZFJlc3VsdChzZWxmLT5oYW5kbGUsICZzZWxmLT5vdmVybGFwcGVkLCAmdHJhbnNmZXJyZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YWl0ICE9IDApOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpZiAoIXJlcykgeworICAgICAgICBpbnQgZXJyID0gR2V0TGFzdEVycm9yKCk7CisgICAgICAgIGlmIChlcnIgPT0gRVJST1JfSU9fSU5DT01QTEVURSkKKyAgICAgICAgICAgIFB5X1JFVFVSTl9OT05FOworICAgICAgICBpZiAoZXJyICE9IEVSUk9SX01PUkVfREFUQSkgeworICAgICAgICAgICAgc2VsZi0+cGVuZGluZyA9IDA7CisgICAgICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgZXJyKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBzZWxmLT5wZW5kaW5nID0gMDsKKyAgICBzZWxmLT5jb21wbGV0ZWQgPSAxOworICAgIGlmIChzZWxmLT5yZWFkX2J1ZmZlcikgeworICAgICAgICBhc3NlcnQoUHlCeXRlc19DaGVja0V4YWN0KHNlbGYtPnJlYWRfYnVmZmVyKSk7CisgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnNlbGYtPnJlYWRfYnVmZmVyLCB0cmFuc2ZlcnJlZCkpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoImxOIiwgKGxvbmcpIHRyYW5zZmVycmVkLCBQeUJvb2xfRnJvbUxvbmcocmVzKSk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitvdmVybGFwcGVkX2dldGJ1ZmZlcihPdmVybGFwcGVkT2JqZWN0ICpzZWxmKQoreworICAgIFB5T2JqZWN0ICpyZXM7CisgICAgaWYgKCFzZWxmLT5jb21wbGV0ZWQpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiY2FuJ3QgZ2V0IHJlYWQgYnVmZmVyIGJlZm9yZSBHZXRPdmVybGFwcGVkUmVzdWx0KCkgIgorICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hbHMgdGhlIG9wZXJhdGlvbiBjb21wbGV0ZWQiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHJlcyA9IHNlbGYtPnJlYWRfYnVmZmVyID8gc2VsZi0+cmVhZF9idWZmZXIgOiBQeV9Ob25lOworICAgIFB5X0lOQ1JFRihyZXMpOworICAgIHJldHVybiByZXM7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitvdmVybGFwcGVkX2NhbmNlbChPdmVybGFwcGVkT2JqZWN0ICpzZWxmKQoreworICAgIEJPT0wgcmVzID0gVFJVRTsKKworICAgIGlmIChzZWxmLT5wZW5kaW5nKSB7CisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgaWYgKGNoZWNrX0NhbmNlbElvRXgoKSkKKyAgICAgICAgICAgIHJlcyA9IFB5X0NhbmNlbElvRXgoc2VsZi0+aGFuZGxlLCAmc2VsZi0+b3ZlcmxhcHBlZCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJlcyA9IENhbmNlbElvKHNlbGYtPmhhbmRsZSk7CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgfQorCisgICAgLyogQ2FuY2VsSW9FeCByZXR1cm5zIEVSUk9SX05PVF9GT1VORCBpZiB0aGUgSS9PIGNvbXBsZXRlZCBpbi1iZXR3ZWVuICovCisgICAgaWYgKCFyZXMgJiYgR2V0TGFzdEVycm9yKCkgIT0gRVJST1JfTk9UX0ZPVU5EKQorICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgMCk7CisgICAgc2VsZi0+cGVuZGluZyA9IDA7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK3N0YXRpYyBQeU1ldGhvZERlZiBvdmVybGFwcGVkX21ldGhvZHNbXSA9IHsKKyAgICB7IkdldE92ZXJsYXBwZWRSZXN1bHQiLCAoUHlDRnVuY3Rpb24pIG92ZXJsYXBwZWRfR2V0T3ZlcmxhcHBlZFJlc3VsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBNRVRIX08sIE5VTEx9LAorICAgIHsiZ2V0YnVmZmVyIiwgKFB5Q0Z1bmN0aW9uKSBvdmVybGFwcGVkX2dldGJ1ZmZlciwgTUVUSF9OT0FSR1MsIE5VTEx9LAorICAgIHsiY2FuY2VsIiwgKFB5Q0Z1bmN0aW9uKSBvdmVybGFwcGVkX2NhbmNlbCwgTUVUSF9OT0FSR1MsIE5VTEx9LAorICAgIHtOVUxMfQorfTsKKworc3RhdGljIFB5TWVtYmVyRGVmIG92ZXJsYXBwZWRfbWVtYmVyc1tdID0geworICAgIHsiZXZlbnQiLCBUX0hBTkRMRSwKKyAgICAgb2Zmc2V0b2YoT3ZlcmxhcHBlZE9iamVjdCwgb3ZlcmxhcHBlZCkgKyBvZmZzZXRvZihPVkVSTEFQUEVELCBoRXZlbnQpLAorICAgICBSRUFET05MWSwgIm92ZXJsYXBwZWQgZXZlbnQgaGFuZGxlIn0sCisgICAge05VTEx9Cit9OworCitQeVR5cGVPYmplY3QgT3ZlcmxhcHBlZFR5cGUgPSB7CisgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApCisgICAgLyogdHBfbmFtZSAgICAgICAgICAgKi8gIl9tdWx0aXByb2Nlc3Npbmcud2luMzIuT3ZlcmxhcHBlZCIsCisgICAgLyogdHBfYmFzaWNzaXplICAgICAgKi8gc2l6ZW9mKE92ZXJsYXBwZWRPYmplY3QpLAorICAgIC8qIHRwX2l0ZW1zaXplICAgICAgICovIDAsCisgICAgLyogdHBfZGVhbGxvYyAgICAgICAgKi8gKGRlc3RydWN0b3IpIG92ZXJsYXBwZWRfZGVhbGxvYywKKyAgICAvKiB0cF9wcmludCAgICAgICAgICAqLyAwLAorICAgIC8qIHRwX2dldGF0dHIgICAgICAgICovIDAsCisgICAgLyogdHBfc2V0YXR0ciAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9yZXNlcnZlZCAgICAgICAqLyAwLAorICAgIC8qIHRwX3JlcHIgICAgICAgICAgICovIDAsCisgICAgLyogdHBfYXNfbnVtYmVyICAgICAgKi8gMCwKKyAgICAvKiB0cF9hc19zZXF1ZW5jZSAgICAqLyAwLAorICAgIC8qIHRwX2FzX21hcHBpbmcgICAgICovIDAsCisgICAgLyogdHBfaGFzaCAgICAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9jYWxsICAgICAgICAgICAqLyAwLAorICAgIC8qIHRwX3N0ciAgICAgICAgICAgICovIDAsCisgICAgLyogdHBfZ2V0YXR0cm8gICAgICAgKi8gMCwKKyAgICAvKiB0cF9zZXRhdHRybyAgICAgICAqLyAwLAorICAgIC8qIHRwX2FzX2J1ZmZlciAgICAgICovIDAsCisgICAgLyogdHBfZmxhZ3MgICAgICAgICAgKi8gUHlfVFBGTEFHU19ERUZBVUxULAorICAgIC8qIHRwX2RvYyAgICAgICAgICAgICovICJPVkVSTEFQUEVEIHN0cnVjdHVyZSB3cmFwcGVyIiwKKyAgICAvKiB0cF90cmF2ZXJzZSAgICAgICAqLyAwLAorICAgIC8qIHRwX2NsZWFyICAgICAgICAgICovIDAsCisgICAgLyogdHBfcmljaGNvbXBhcmUgICAgKi8gMCwKKyAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLyAwLAorICAgIC8qIHRwX2l0ZXIgICAgICAgICAgICovIDAsCisgICAgLyogdHBfaXRlcm5leHQgICAgICAgKi8gMCwKKyAgICAvKiB0cF9tZXRob2RzICAgICAgICAqLyBvdmVybGFwcGVkX21ldGhvZHMsCisgICAgLyogdHBfbWVtYmVycyAgICAgICAgKi8gb3ZlcmxhcHBlZF9tZW1iZXJzLAorICAgIC8qIHRwX2dldHNldCAgICAgICAgICovIDAsCisgICAgLyogdHBfYmFzZSAgICAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9kaWN0ICAgICAgICAgICAqLyAwLAorICAgIC8qIHRwX2Rlc2NyX2dldCAgICAgICovIDAsCisgICAgLyogdHBfZGVzY3Jfc2V0ICAgICAgKi8gMCwKKyAgICAvKiB0cF9kaWN0b2Zmc2V0ICAgICAqLyAwLAorICAgIC8qIHRwX2luaXQgICAgICAgICAgICovIDAsCisgICAgLyogdHBfYWxsb2MgICAgICAgICAgKi8gMCwKKyAgICAvKiB0cF9uZXcgICAgICAgICAgICAqLyAwLAorfTsKKworc3RhdGljIE92ZXJsYXBwZWRPYmplY3QgKgorbmV3X292ZXJsYXBwZWQoSEFORExFIGhhbmRsZSkKK3sKKyAgICBPdmVybGFwcGVkT2JqZWN0ICpzZWxmOworCisgICAgc2VsZiA9IFB5T2JqZWN0X05ldyhPdmVybGFwcGVkT2JqZWN0LCAmT3ZlcmxhcHBlZFR5cGUpOworICAgIGlmICghc2VsZikKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgc2VsZi0+aGFuZGxlID0gaGFuZGxlOworICAgIHNlbGYtPnJlYWRfYnVmZmVyID0gTlVMTDsKKyAgICBzZWxmLT5wZW5kaW5nID0gMDsKKyAgICBzZWxmLT5jb21wbGV0ZWQgPSAwOworICAgIG1lbXNldCgmc2VsZi0+b3ZlcmxhcHBlZCwgMCwgc2l6ZW9mKE9WRVJMQVBQRUQpKTsKKyAgICBtZW1zZXQoJnNlbGYtPndyaXRlX2J1ZmZlciwgMCwgc2l6ZW9mKFB5X2J1ZmZlcikpOworICAgIC8qIE1hbnVhbCByZXNldCwgaW5pdGlhbGx5IG5vbi1zaWduYWxsZWQgKi8KKyAgICBzZWxmLT5vdmVybGFwcGVkLmhFdmVudCA9IENyZWF0ZUV2ZW50KE5VTEwsIFRSVUUsIEZBTFNFLCBOVUxMKTsKKyAgICByZXR1cm4gc2VsZjsKK30KKworCisvKgorICogTW9kdWxlIGZ1bmN0aW9ucworICovCisKIHN0YXRpYyBQeU9iamVjdCAqCiB3aW4zMl9DbG9zZUhhbmRsZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CkBAIC0zNiwyMCArMjQ5LDQ0IEBACiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCi13aW4zMl9Db25uZWN0TmFtZWRQaXBlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3dpbjMyX0Nvbm5lY3ROYW1lZFBpcGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKICAgICBIQU5ETEUgaE5hbWVkUGlwZTsKLSAgICBMUE9WRVJMQVBQRUQgbHBPdmVybGFwcGVkOworICAgIGludCB1c2Vfb3ZlcmxhcHBlZCA9IDA7CiAgICAgQk9PTCBzdWNjZXNzOworICAgIE92ZXJsYXBwZWRPYmplY3QgKm92ZXJsYXBwZWQgPSBOVUxMOworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiaGFuZGxlIiwgIm92ZXJsYXBwZWQiLCBOVUxMfTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBGX0hBTkRMRSBGX1BPSU5URVIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZoTmFtZWRQaXBlLCAmbHBPdmVybGFwcGVkKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZfSEFORExFICJ8aSIsIGt3bGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmaE5hbWVkUGlwZSwgJnVzZV9vdmVybGFwcGVkKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKKyAgICBpZiAodXNlX292ZXJsYXBwZWQpIHsKKyAgICAgICAgb3ZlcmxhcHBlZCA9IG5ld19vdmVybGFwcGVkKGhOYW1lZFBpcGUpOworICAgICAgICBpZiAoIW92ZXJsYXBwZWQpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgc3VjY2VzcyA9IENvbm5lY3ROYW1lZFBpcGUoaE5hbWVkUGlwZSwgbHBPdmVybGFwcGVkKTsKKyAgICBzdWNjZXNzID0gQ29ubmVjdE5hbWVkUGlwZShoTmFtZWRQaXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJsYXBwZWQgPyAmb3ZlcmxhcHBlZC0+b3ZlcmxhcHBlZCA6IE5VTEwpOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAKKyAgICBpZiAob3ZlcmxhcHBlZCkgeworICAgICAgICBpbnQgZXJyID0gR2V0TGFzdEVycm9yKCk7CisgICAgICAgIC8qIE92ZXJsYXBwZWQgQ29ubmVjdE5hbWVkUGlwZSBuZXZlciByZXR1cm5zIGEgc3VjY2VzcyBjb2RlICovCisgICAgICAgIGFzc2VydChzdWNjZXNzID09IDApOworICAgICAgICBpZiAoZXJyID09IEVSUk9SX0lPX1BFTkRJTkcpCisgICAgICAgICAgICBvdmVybGFwcGVkLT5wZW5kaW5nID0gMTsKKyAgICAgICAgZWxzZSBpZiAoZXJyID09IEVSUk9SX1BJUEVfQ09OTkVDVEVEKQorICAgICAgICAgICAgU2V0RXZlbnQob3ZlcmxhcHBlZC0+b3ZlcmxhcHBlZC5oRXZlbnQpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihvdmVybGFwcGVkKTsKKyAgICAgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tV2luZG93c0VycihlcnIpOworICAgICAgICB9CisgICAgICAgIHJldHVybiAoUHlPYmplY3QgKikgb3ZlcmxhcHBlZDsKKyAgICB9CiAgICAgaWYgKCFzdWNjZXNzKQogICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnIoMCk7CiAKQEAgLTIxNSwxNiArNDUyLDMwOSBAQAogICAgIFB5X1JFVFVSTl9OT05FOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgord2luMzJfY2xvc2Vzb2NrZXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIEhBTkRMRSBoYW5kbGU7CisgICAgaW50IHJldDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBGX0hBTkRMRSAiOmNsb3Nlc29ja2V0IiAsICZoYW5kbGUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXQgPSBjbG9zZXNvY2tldCgoU09DS0VUKSBoYW5kbGUpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpZiAocmV0KQorICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgV1NBR2V0TGFzdEVycm9yKCkpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorCitzdGF0aWMgUHlPYmplY3QgKgord2luMzJfcmVjdihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgSEFORExFIGhhbmRsZTsKKyAgICBpbnQgc2l6ZSwgbnJlYWQ7CisgICAgUHlPYmplY3QgKmJ1ZjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBGX0hBTkRMRSAiaTpyZWN2IiAsICZoYW5kbGUsICZzaXplKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBidWYgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIHNpemUpOworICAgIGlmICghYnVmKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICBucmVhZCA9IHJlY3YoKFNPQ0tFVCkgaGFuZGxlLCBQeUJ5dGVzX0FTX1NUUklORyhidWYpLCBzaXplLCAwKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgaWYgKG5yZWFkIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYoYnVmKTsKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX0lPRXJyb3IsIFdTQUdldExhc3RFcnJvcigpKTsKKyAgICB9CisgICAgX1B5Qnl0ZXNfUmVzaXplKCZidWYsIG5yZWFkKTsKKyAgICByZXR1cm4gYnVmOworfQorCitzdGF0aWMgUHlPYmplY3QgKgord2luMzJfc2VuZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgSEFORExFIGhhbmRsZTsKKyAgICBQeV9idWZmZXIgYnVmOworICAgIGludCByZXQ7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgRl9IQU5ETEUgInkqOnNlbmQiICwgJmhhbmRsZSwgJmJ1ZikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJldCA9IHNlbmQoKFNPQ0tFVCkgaGFuZGxlLCBidWYuYnVmLCBidWYubGVuLCAwKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgUHlCdWZmZXJfUmVsZWFzZSgmYnVmKTsKKyAgICBpZiAocmV0IDwgMCkKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX0lPRXJyb3IsIFdTQUdldExhc3RFcnJvcigpKTsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKHJldCk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCit3aW4zMl9Xcml0ZUZpbGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKK3sKKyAgICBIQU5ETEUgaGFuZGxlOworICAgIFB5X2J1ZmZlciBfYnVmLCAqYnVmOworICAgIFB5T2JqZWN0ICpidWZvYmo7CisgICAgaW50IHdyaXR0ZW47CisgICAgQk9PTCByZXQ7CisgICAgaW50IHVzZV9vdmVybGFwcGVkID0gMDsKKyAgICBPdmVybGFwcGVkT2JqZWN0ICpvdmVybGFwcGVkID0gTlVMTDsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7ImhhbmRsZSIsICJidWZmZXIiLCAib3ZlcmxhcHBlZCIsIE5VTEx9OworCisgICAgLyogRmlyc3QgZ2V0IGhhbmRsZSBhbmQgdXNlX292ZXJsYXBwZWQgdG8ga25vdyB3aGljaCBQeV9idWZmZXIgdG8gdXNlICovCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGX0hBTkRMRSAiT3xpOldyaXRlRmlsZSIsIGt3bGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmaGFuZGxlLCAmYnVmb2JqLCAmdXNlX292ZXJsYXBwZWQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmICh1c2Vfb3ZlcmxhcHBlZCkgeworICAgICAgICBvdmVybGFwcGVkID0gbmV3X292ZXJsYXBwZWQoaGFuZGxlKTsKKyAgICAgICAgaWYgKCFvdmVybGFwcGVkKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGJ1ZiA9ICZvdmVybGFwcGVkLT53cml0ZV9idWZmZXI7CisgICAgfQorICAgIGVsc2UKKyAgICAgICAgYnVmID0gJl9idWY7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlKGJ1Zm9iaiwgInkqIiwgYnVmKSkgeworICAgICAgICBQeV9YREVDUkVGKG92ZXJsYXBwZWQpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmV0ID0gV3JpdGVGaWxlKGhhbmRsZSwgYnVmLT5idWYsIGJ1Zi0+bGVuLCAmd3JpdHRlbiwKKyAgICAgICAgICAgICAgICAgICAgb3ZlcmxhcHBlZCA/ICZvdmVybGFwcGVkLT5vdmVybGFwcGVkIDogTlVMTCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKworICAgIGlmIChvdmVybGFwcGVkKSB7CisgICAgICAgIGludCBlcnIgPSBHZXRMYXN0RXJyb3IoKTsKKyAgICAgICAgaWYgKCFyZXQpIHsKKyAgICAgICAgICAgIGlmIChlcnIgPT0gRVJST1JfSU9fUEVORElORykKKyAgICAgICAgICAgICAgICBvdmVybGFwcGVkLT5wZW5kaW5nID0gMTsKKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihvdmVybGFwcGVkKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgMCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKSBvdmVybGFwcGVkOworICAgIH0KKworICAgIFB5QnVmZmVyX1JlbGVhc2UoYnVmKTsKKyAgICBpZiAoIXJldCkKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX0lPRXJyb3IsIDApOworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcod3JpdHRlbik7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCit3aW4zMl9SZWFkRmlsZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQoreworICAgIEhBTkRMRSBoYW5kbGU7CisgICAgaW50IHNpemU7CisgICAgRFdPUkQgbnJlYWQ7CisgICAgUHlPYmplY3QgKmJ1ZjsKKyAgICBCT09MIHJldDsKKyAgICBpbnQgdXNlX292ZXJsYXBwZWQgPSAwOworICAgIE92ZXJsYXBwZWRPYmplY3QgKm92ZXJsYXBwZWQgPSBOVUxMOworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiaGFuZGxlIiwgInNpemUiLCAib3ZlcmxhcHBlZCIsIE5VTEx9OworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGX0hBTkRMRSAiaXxpOlJlYWRGaWxlIiwga3dsaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZoYW5kbGUsICZzaXplLCAmdXNlX292ZXJsYXBwZWQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGJ1ZiA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgc2l6ZSk7CisgICAgaWYgKCFidWYpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICh1c2Vfb3ZlcmxhcHBlZCkgeworICAgICAgICBvdmVybGFwcGVkID0gbmV3X292ZXJsYXBwZWQoaGFuZGxlKTsKKyAgICAgICAgaWYgKCFvdmVybGFwcGVkKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoYnVmKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIC8qIFN0ZWFscyByZWZlcmVuY2UgdG8gYnVmICovCisgICAgICAgIG92ZXJsYXBwZWQtPnJlYWRfYnVmZmVyID0gYnVmOworICAgIH0KKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXQgPSBSZWFkRmlsZShoYW5kbGUsIFB5Qnl0ZXNfQVNfU1RSSU5HKGJ1ZiksIHNpemUsICZucmVhZCwKKyAgICAgICAgICAgICAgICAgICBvdmVybGFwcGVkID8gJm92ZXJsYXBwZWQtPm92ZXJsYXBwZWQgOiBOVUxMKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgaWYgKG92ZXJsYXBwZWQpIHsKKyAgICAgICAgaW50IGVyciA9IEdldExhc3RFcnJvcigpOworICAgICAgICBpZiAoIXJldCkgeworICAgICAgICAgICAgaWYgKGVyciA9PSBFUlJPUl9JT19QRU5ESU5HKQorICAgICAgICAgICAgICAgIG92ZXJsYXBwZWQtPnBlbmRpbmcgPSAxOworICAgICAgICAgICAgZWxzZSBpZiAoZXJyICE9IEVSUk9SX01PUkVfREFUQSkgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihvdmVybGFwcGVkKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfSU9FcnJvciwgMCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKSBvdmVybGFwcGVkOworICAgIH0KKworICAgIGlmICghcmV0ICYmIEdldExhc3RFcnJvcigpICE9IEVSUk9SX01PUkVfREFUQSkgeworICAgICAgICBQeV9ERUNSRUYoYnVmKTsKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX0lPRXJyb3IsIDApOworICAgIH0KKyAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZidWYsIG5yZWFkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIk5OIiwgYnVmLCBQeUJvb2xfRnJvbUxvbmcocmV0KSk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCit3aW4zMl9QZWVrTmFtZWRQaXBlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBIQU5ETEUgaGFuZGxlOworICAgIGludCBzaXplID0gMDsKKyAgICBQeU9iamVjdCAqYnVmID0gTlVMTDsKKyAgICBEV09SRCBucmVhZCwgbmF2YWlsLCBubGVmdDsKKyAgICBCT09MIHJldDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBGX0hBTkRMRSAifGk6UGVla05hbWVkUGlwZSIgLCAmaGFuZGxlLCAmc2l6ZSkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKHNpemUgPCAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAibmVnYXRpdmUgc2l6ZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoc2l6ZSkgeworICAgICAgICBidWYgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIHNpemUpOworICAgICAgICBpZiAoIWJ1ZikKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHJldCA9IFBlZWtOYW1lZFBpcGUoaGFuZGxlLCBQeUJ5dGVzX0FTX1NUUklORyhidWYpLCBzaXplLCAmbnJlYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hdmFpbCwgJm5sZWZ0KTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgaWYgKCFyZXQpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihidWYpOworICAgICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX0lPRXJyb3IsIDApOworICAgICAgICB9CisgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJmJ1ZiwgbnJlYWQpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJOaWkiLCBidWYsIG5hdmFpbCwgbmxlZnQpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICByZXQgPSBQZWVrTmFtZWRQaXBlKGhhbmRsZSwgTlVMTCwgMCwgTlVMTCwgJm5hdmFpbCwgJm5sZWZ0KTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgaWYgKCFyZXQpIHsKKyAgICAgICAgICAgIHJldHVybiBQeUVycl9TZXRFeGNGcm9tV2luZG93c0VycihQeUV4Y19JT0Vycm9yLCAwKTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiaWkiLCBuYXZhaWwsIG5sZWZ0KTsKKyAgICB9Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCit3aW4zMl9XYWl0Rm9yTXVsdGlwbGVPYmplY3RzKFB5T2JqZWN0KiBzZWxmLCBQeU9iamVjdCogYXJncykKK3sKKyAgICBEV09SRCByZXN1bHQ7CisgICAgUHlPYmplY3QgKmhhbmRsZV9zZXE7CisgICAgSEFORExFIGhhbmRsZXNbTUFYSU1VTV9XQUlUX09CSkVDVFNdOworICAgIEhBTkRMRSBzaWdpbnRfZXZlbnQgPSBOVUxMOworICAgIFB5X3NzaXplX3QgbmhhbmRsZXMsIGk7CisgICAgaW50IHdhaXRfZmxhZzsKKyAgICBpbnQgbWlsbGlzZWNvbmRzID0gSU5GSU5JVEU7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9pfGk6V2FpdEZvck11bHRpcGxlT2JqZWN0cyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZoYW5kbGVfc2VxLCAmd2FpdF9mbGFnLCAmbWlsbGlzZWNvbmRzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoIVB5U2VxdWVuY2VfQ2hlY2soaGFuZGxlX3NlcSkpIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJzZXF1ZW5jZSB0eXBlIGV4cGVjdGVkLCBnb3QgJyVzJyIsCisgICAgICAgICAgICAgICAgICAgICBQeV9UWVBFKGhhbmRsZV9zZXEpLT50cF9kb2MpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgbmhhbmRsZXMgPSBQeVNlcXVlbmNlX0xlbmd0aChoYW5kbGVfc2VxKTsKKyAgICBpZiAobmhhbmRsZXMgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChuaGFuZGxlcyA8IDAgfHwgbmhhbmRsZXMgPj0gTUFYSU1VTV9XQUlUX09CSkVDVFMgLSAxKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgIm5lZWQgYXQgbW9zdCAlemQgaGFuZGxlcywgZ290IGEgc2VxdWVuY2Ugb2YgbGVuZ3RoICV6ZCIsCisgICAgICAgICAgICAgICAgICAgICBNQVhJTVVNX1dBSVRfT0JKRUNUUyAtIDEsIG5oYW5kbGVzKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGZvciAoaSA9IDA7IGkgPCBuaGFuZGxlczsgaSsrKSB7CisgICAgICAgIEhBTkRMRSBoOworICAgICAgICBQeU9iamVjdCAqdiA9IFB5U2VxdWVuY2VfR2V0SXRlbShoYW5kbGVfc2VxLCBpKTsKKyAgICAgICAgaWYgKHYgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBpZiAoIVB5QXJnX1BhcnNlKHYsIEZfSEFORExFLCAmaCkpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgaGFuZGxlc1tpXSA9IGg7CisgICAgfQorICAgIC8qIElmIHRoaXMgaXMgdGhlIG1haW4gdGhyZWFkIHRoZW4gbWFrZSB0aGUgd2FpdCBpbnRlcnJ1cHRpYmxlCisgICAgICAgYnkgQ3RybC1DIHVubGVzcyB3ZSBhcmUgd2FpdGluZyBmb3IgKmFsbCogaGFuZGxlcyAqLworICAgIGlmICghd2FpdF9mbGFnICYmIF9QeU9TX0lzTWFpblRocmVhZCgpKSB7CisgICAgICAgIHNpZ2ludF9ldmVudCA9IF9QeU9TX1NpZ2ludEV2ZW50KCk7CisgICAgICAgIGFzc2VydChzaWdpbnRfZXZlbnQgIT0gTlVMTCk7CisgICAgICAgIGhhbmRsZXNbbmhhbmRsZXMrK10gPSBzaWdpbnRfZXZlbnQ7CisgICAgfQorCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIGlmIChzaWdpbnRfZXZlbnQgIT0gTlVMTCkKKyAgICAgICAgUmVzZXRFdmVudChzaWdpbnRfZXZlbnQpOworICAgIHJlc3VsdCA9IFdhaXRGb3JNdWx0aXBsZU9iamVjdHMoKERXT1JEKSBuaGFuZGxlcywgaGFuZGxlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChCT09MKSB3YWl0X2ZsYWcsIChEV09SRCkgbWlsbGlzZWNvbmRzKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgaWYgKHJlc3VsdCA9PSBXQUlUX0ZBSUxFRCkKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX0lPRXJyb3IsIDApOworICAgIGVsc2UgaWYgKHNpZ2ludF9ldmVudCAhPSBOVUxMICYmIHJlc3VsdCA9PSBXQUlUX09CSkVDVF8wICsgbmhhbmRsZXMgLSAxKSB7CisgICAgICAgIGVycm5vID0gRUlOVFI7CisgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgfQorCisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZygoaW50KSByZXN1bHQpOworfQorCisKIHN0YXRpYyBQeU1ldGhvZERlZiB3aW4zMl9tZXRob2RzW10gPSB7CiAgICAgV0lOMzJfRlVOQ1RJT04oQ2xvc2VIYW5kbGUpLAogICAgIFdJTjMyX0ZVTkNUSU9OKEdldExhc3RFcnJvciksCiAgICAgV0lOMzJfRlVOQ1RJT04oT3BlblByb2Nlc3MpLAogICAgIFdJTjMyX0ZVTkNUSU9OKEV4aXRQcm9jZXNzKSwKLSAgICBXSU4zMl9GVU5DVElPTihDb25uZWN0TmFtZWRQaXBlKSwKKyAgICBXSU4zMl9LV0FSR1NfRlVOQ1RJT04oQ29ubmVjdE5hbWVkUGlwZSksCiAgICAgV0lOMzJfRlVOQ1RJT04oQ3JlYXRlRmlsZSksCiAgICAgV0lOMzJfRlVOQ1RJT04oQ3JlYXRlTmFtZWRQaXBlKSwKKyAgICBXSU4zMl9LV0FSR1NfRlVOQ1RJT04oUmVhZEZpbGUpLAorICAgIFdJTjMyX0ZVTkNUSU9OKFBlZWtOYW1lZFBpcGUpLAogICAgIFdJTjMyX0ZVTkNUSU9OKFNldE5hbWVkUGlwZUhhbmRsZVN0YXRlKSwKKyAgICBXSU4zMl9GVU5DVElPTihXYWl0Rm9yTXVsdGlwbGVPYmplY3RzKSwKICAgICBXSU4zMl9GVU5DVElPTihXYWl0TmFtZWRQaXBlKSwKKyAgICBXSU4zMl9LV0FSR1NfRlVOQ1RJT04oV3JpdGVGaWxlKSwKKyAgICBXSU4zMl9GVU5DVElPTihjbG9zZXNvY2tldCksCisgICAgV0lOMzJfRlVOQ1RJT04ocmVjdiksCisgICAgV0lOMzJfRlVOQ1RJT04oc2VuZCksCiAgICAge05VTEx9CiB9OwogCkBAIC0yNDMsMTAgKzc3MywxOCBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBQeV9JTkNSRUYoJldpbjMyVHlwZSk7CiAKKyAgICBpZiAoUHlUeXBlX1JlYWR5KCZPdmVybGFwcGVkVHlwZSkgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeURpY3RfU2V0SXRlbVN0cmluZyhXaW4zMlR5cGUudHBfZGljdCwgIk92ZXJsYXBwZWQiLAorICAgICAgICAgICAgICAgICAgICAgICAgIChQeU9iamVjdCAqKSAmT3ZlcmxhcHBlZFR5cGUpOworCiAgICAgV0lOMzJfQ09OU1RBTlQoRl9EV09SRCwgRVJST1JfQUxSRUFEWV9FWElTVFMpOworICAgIFdJTjMyX0NPTlNUQU5UKEZfRFdPUkQsIEVSUk9SX0JST0tFTl9QSVBFKTsKKyAgICBXSU4zMl9DT05TVEFOVChGX0RXT1JELCBFUlJPUl9OT19TWVNURU1fUkVTT1VSQ0VTKTsKICAgICBXSU4zMl9DT05TVEFOVChGX0RXT1JELCBFUlJPUl9QSVBFX0JVU1kpOwogICAgIFdJTjMyX0NPTlNUQU5UKEZfRFdPUkQsIEVSUk9SX1BJUEVfQ09OTkVDVEVEKTsKICAgICBXSU4zMl9DT05TVEFOVChGX0RXT1JELCBFUlJPUl9TRU1fVElNRU9VVCk7CisgICAgV0lOMzJfQ09OU1RBTlQoRl9EV09SRCwgRklMRV9GTEFHX09WRVJMQVBQRUQpOwogICAgIFdJTjMyX0NPTlNUQU5UKEZfRFdPUkQsIEdFTkVSSUNfUkVBRCk7CiAgICAgV0lOMzJfQ09OU1RBTlQoRl9EV09SRCwgR0VORVJJQ19XUklURSk7CiAgICAgV0lOMzJfQ09OU1RBTlQoRl9EV09SRCwgSU5GSU5JVEUpOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fcGlja2xlLmMgYi9Nb2R1bGVzL19waWNrbGUuYwppbmRleCBmYzVmODcxLi5hMGMxMDI5IDEwMDY0NAotLS0gYS9Nb2R1bGVzL19waWNrbGUuYworKysgYi9Nb2R1bGVzL19waWNrbGUuYwpAQCAtNjA1LDcgKzYwNSw3IEBACiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIAogLyogSGVscGVycyBmb3IgY3JlYXRpbmcgdGhlIGFyZ3VtZW50IHR1cGxlIHBhc3NlZCB0byBmdW5jdGlvbnMuIFRoaXMgaGFzIHRoZQotICAgcGVyZm9ybWFuY2UgYWR2YW50YWdlIG9mIGNhbGxpbmcgUHlUdXBsZV9OZXcoKSBvbmx5IG9uY2UuIAorICAgcGVyZm9ybWFuY2UgYWR2YW50YWdlIG9mIGNhbGxpbmcgUHlUdXBsZV9OZXcoKSBvbmx5IG9uY2UuCiAKICAgIFhYWChhdmFzc2Fsb3R0aSk6IElubGluZSBkaXJlY3RseSBpbiBfUGlja2xlcl9GYXN0Q2FsbCgpIGFuZAogICAgX1VucGlja2xlcl9GYXN0Q2FsbCgpLiAqLwpAQCAtODEzLDcgKzgxMyw3IEBACiAgICAgZml4X2ltcG9ydHMgPSBQeU9iamVjdF9Jc1RydWUoZml4X2ltcG9ydHNfb2JqKTsKICAgICBpZiAoZml4X2ltcG9ydHMgPT0gLTEpCiAgICAgICAgIHJldHVybiAtMTsKLSAgICAKKwogICAgIHNlbGYtPnByb3RvID0gcHJvdG87CiAgICAgc2VsZi0+YmluID0gcHJvdG8gPiAwOwogICAgIHNlbGYtPmZpeF9pbXBvcnRzID0gZml4X2ltcG9ydHMgJiYgcHJvdG8gPCAzOwpAQCAtODI2LDggKzgyNiw5IEBACiBzdGF0aWMgaW50CiBfUGlja2xlcl9TZXRPdXRwdXRTdHJlYW0oUGlja2xlck9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmZpbGUpCiB7CisgICAgX1B5X0lERU5USUZJRVIod3JpdGUpOwogICAgIGFzc2VydChmaWxlICE9IE5VTEwpOwotICAgIHNlbGYtPndyaXRlID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaWxlLCAid3JpdGUiKTsKKyAgICBzZWxmLT53cml0ZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoZmlsZSwgJlB5SWRfd3JpdGUpOwogICAgIGlmIChzZWxmLT53cml0ZSA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCkBAIC05MDksNyArOTEwLDcgQEAKICAgICBQeV9zc2l6ZV90IHJlYWRfc2l6ZSwgcHJlZmV0Y2hlZF9zaXplID0gMDsKIAogICAgIGFzc2VydChzZWxmLT5yZWFkICE9IE5VTEwpOwotICAgIAorCiAgICAgaWYgKF9VbnBpY2tsZXJfU2tpcENvbnN1bWVkKHNlbGYpIDwgMCkKICAgICAgICAgcmV0dXJuIC0xOwogCkBAIC0xMDM3LDcgKzEwMzgsNyBAQAogICAgICAgICBzZWxmLT5uZXh0X3JlYWRfaWR4ID0gbnVtX3JlYWQ7CiAgICAgICAgIHJldHVybiBfVW5waWNrbGVyX0NvcHlMaW5lKHNlbGYsIHNlbGYtPmlucHV0X2J1ZmZlciwgbnVtX3JlYWQsIHJlc3VsdCk7CiAgICAgfQotIAorCiAgICAgLyogSWYgd2UgZ2V0IGhlcmUsIHdlJ3ZlIHJ1biBvZmYgdGhlIGVuZCBvZiB0aGUgaW5wdXQgc3RyaW5nLiBSZXR1cm4gdGhlCiAgICAgICAgcmVtYWluaW5nIHN0cmluZyBhbmQgbGV0IHRoZSBjYWxsZXIgZmlndXJlIGl0IG91dC4gKi8KICAgICAqcmVzdWx0ID0gc2VsZi0+aW5wdXRfYnVmZmVyICsgc2VsZi0+bmV4dF9yZWFkX2lkeDsKQEAgLTExNzMsMTUgKzExNzQsMTkgQEAKIHN0YXRpYyBpbnQKIF9VbnBpY2tsZXJfU2V0SW5wdXRTdHJlYW0oVW5waWNrbGVyT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqZmlsZSkKIHsKLSAgICBzZWxmLT5wZWVrID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaWxlLCAicGVlayIpOworICAgIF9QeV9JREVOVElGSUVSKHBlZWspOworICAgIF9QeV9JREVOVElGSUVSKHJlYWQpOworICAgIF9QeV9JREVOVElGSUVSKHJlYWRsaW5lKTsKKworICAgIHNlbGYtPnBlZWsgPSBfUHlPYmplY3RfR2V0QXR0cklkKGZpbGUsICZQeUlkX3BlZWspOwogICAgIGlmIChzZWxmLT5wZWVrID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KLSAgICBzZWxmLT5yZWFkID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaWxlLCAicmVhZCIpOwotICAgIHNlbGYtPnJlYWRsaW5lID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaWxlLCAicmVhZGxpbmUiKTsKKyAgICBzZWxmLT5yZWFkID0gX1B5T2JqZWN0X0dldEF0dHJJZChmaWxlLCAmUHlJZF9yZWFkKTsKKyAgICBzZWxmLT5yZWFkbGluZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoZmlsZSwgJlB5SWRfcmVhZGxpbmUpOwogICAgIGlmIChzZWxmLT5yZWFkbGluZSA9PSBOVUxMIHx8IHNlbGYtPnJlYWQgPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLApAQCAtMTU0Myw3ICsxNTQ4LDEwIEBACiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgfQogICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIHNhdmVfaW50KHNlbGYsIHZhbCk7CisjaWYgU0laRU9GX0xPTkcgPiA0CisgICAgICAgIGlmICh2YWwgPD0gMHg3ZmZmZmZmZkwgJiYgdmFsID49IC0weDgwMDAwMDAwTCkKKyNlbmRpZgorICAgICAgICAgICAgcmV0dXJuIHNhdmVfaW50KHNlbGYsIHZhbCk7CiAKICAgICBpZiAoc2VsZi0+cHJvdG8gPj0gMikgewogICAgICAgICAvKiBMaW5lYXItdGltZSBwaWNrbGluZy4gKi8KQEAgLTE1OTgsNyArMTYwNiw3IEBACiAgICAgICAgICAqIGJpdHMuCiAgICAgICAgICAqLwogICAgICAgICBpZiAoc2lnbiA8IDAgJiYKLSAgICAgICAgICAgIG5ieXRlcyA+IDEgJiYgCisgICAgICAgICAgICBuYnl0ZXMgPiAxICYmCiAgICAgICAgICAgICBwZGF0YVtuYnl0ZXMgLSAxXSA9PSAweGZmICYmCiAgICAgICAgICAgICAocGRhdGFbbmJ5dGVzIC0gMl0gJiAweDgwKSAhPSAwKSB7CiAgICAgICAgICAgICBuYnl0ZXMtLTsKQEAgLTE2NjQsNyArMTY3Miw3IEBACiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIGlmIChfUGlja2xlcl9Xcml0ZShzZWxmLCBwZGF0YSwgOSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgfSAKKyAgIH0KICAgICBlbHNlIHsKICAgICAgICAgaW50IHJlc3VsdCA9IC0xOwogICAgICAgICBjaGFyICpidWYgPSBOVUxMOwpAQCAtMTc5OCw5MCArMTgwNiw2NSBAQAogLyogQSBjb3B5IG9mIFB5VW5pY29kZV9FbmNvZGVSYXdVbmljb2RlRXNjYXBlKCkgdGhhdCBhbHNvIHRyYW5zbGF0ZXMKICAgIGJhY2tzbGFzaCBhbmQgbmV3bGluZSBjaGFyYWN0ZXJzIHRvIFx1WFhYWCBlc2NhcGVzLiAqLwogc3RhdGljIFB5T2JqZWN0ICoKLXJhd191bmljb2RlX2VzY2FwZShjb25zdCBQeV9VTklDT0RFICpzLCBQeV9zc2l6ZV90IHNpemUpCityYXdfdW5pY29kZV9lc2NhcGUoUHlPYmplY3QgKm9iaikKIHsKICAgICBQeU9iamVjdCAqcmVwciwgKnJlc3VsdDsKICAgICBjaGFyICpwOwotICAgIGNoYXIgKnE7CisgICAgUHlfc3NpemVfdCBpLCBzaXplLCBleHBhbmRzaXplOworICAgIHZvaWQgKmRhdGE7CisgICAgdW5zaWduZWQgaW50IGtpbmQ7CiAKLSAgICBzdGF0aWMgY29uc3QgY2hhciAqaGV4ZGlnaXRzID0gIjAxMjM0NTY3ODlhYmNkZWYiOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICBjb25zdCBQeV9zc2l6ZV90IGV4cGFuZHNpemUgPSAxMDsKLSNlbHNlCi0gICAgY29uc3QgUHlfc3NpemVfdCBleHBhbmRzaXplID0gNjsKLSNlbmRpZgotICAgIAorICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvYmopOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShvYmopOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChvYmopOworICAgIGlmIChraW5kID09IFB5VW5pY29kZV80QllURV9LSU5EKQorICAgICAgICBleHBhbmRzaXplID0gMTA7CisgICAgZWxzZQorICAgICAgICBleHBhbmRzaXplID0gNjsKKwogICAgIGlmIChzaXplID4gUFlfU1NJWkVfVF9NQVggLyBleHBhbmRzaXplKQogICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKLSAgICAKICAgICByZXByID0gUHlCeXRlQXJyYXlfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgZXhwYW5kc2l6ZSAqIHNpemUpOwogICAgIGlmIChyZXByID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChzaXplID09IDApCiAgICAgICAgIGdvdG8gZG9uZTsKIAotICAgIHAgPSBxID0gUHlCeXRlQXJyYXlfQVNfU1RSSU5HKHJlcHIpOwotICAgIHdoaWxlIChzaXplLS0gPiAwKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgY2ggPSAqcysrOwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQorICAgIHAgPSBQeUJ5dGVBcnJheV9BU19TVFJJTkcocmVwcik7CisgICAgZm9yIChpPTA7IGkgPCBzaXplOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOwogICAgICAgICAvKiBNYXAgMzItYml0IGNoYXJhY3RlcnMgdG8gJ1xVeHh4eHh4eHgnICovCiAgICAgICAgIGlmIChjaCA+PSAweDEwMDAwKSB7CiAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKICAgICAgICAgICAgICpwKysgPSAnVSc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAyOCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gMjQpICYgMHhmXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDIwKSAmIDB4Zl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxNikgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gMTIpICYgMHhmXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDgpICYgMHhmXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDQpICYgMHhmXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbY2ggJiAxNV07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAyOCkgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gMjQpICYgMHhmXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDIwKSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAxNikgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gMTIpICYgMHhmXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDgpICYgMHhmXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDQpICYgMHhmXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbY2ggJiAxNV07CiAgICAgICAgIH0KLSAgICAgICAgZWxzZQotI2Vsc2UKLSAgICAgICAgICAgIC8qIE1hcCBVVEYtMTYgc3Vycm9nYXRlIHBhaXJzIHRvICdcVTAweHh4eHh4JyAqLwotICAgICAgICAgICAgaWYgKGNoID49IDB4RDgwMCAmJiBjaCA8IDB4REMwMCkgewotICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgY2gyOwotICAgICAgICAgICAgICAgIFB5X1VDUzQgdWNzOwotCi0gICAgICAgICAgICAgICAgY2gyID0gKnMrKzsKLSAgICAgICAgICAgICAgICBzaXplLS07Ci0gICAgICAgICAgICAgICAgaWYgKGNoMiA+PSAweERDMDAgJiYgY2gyIDw9IDB4REZGRikgewotICAgICAgICAgICAgICAgICAgICB1Y3MgPSAoKChjaCAmIDB4MDNGRikgPDwgMTApIHwgKGNoMiAmIDB4MDNGRikpICsgMHgwMDAxMDAwMDsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSAnVSc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAyOCkgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMjQpICYgMHhmXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDIwKSAmIDB4Zl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAxNikgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMTIpICYgMHhmXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDgpICYgMHhmXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDQpICYgMHhmXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1t1Y3MgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgLyogRmFsbCB0aHJvdWdoOiBpc29sYXRlZCBzdXJyb2dhdGVzIGFyZSBjb3BpZWQgYXMtaXMgKi8KLSAgICAgICAgICAgICAgICBzLS07Ci0gICAgICAgICAgICAgICAgc2l6ZSsrOwotICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgIC8qIE1hcCAxNi1iaXQgY2hhcmFjdGVycyB0byAnXHV4eHh4JyAqLwotICAgICAgICBpZiAoY2ggPj0gMjU2IHx8IGNoID09ICdcXCcgfHwgY2ggPT0gJ1xuJykgeworICAgICAgICBlbHNlIGlmIChjaCA+PSAyNTYgfHwgY2ggPT0gJ1xcJyB8fCBjaCA9PSAnXG4nKSB7CiAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKICAgICAgICAgICAgICpwKysgPSAndSc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gOCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gNCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDE1XTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDEyKSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiA4KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiA0KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzW2NoICYgMTVdOwogICAgICAgICB9CiAgICAgICAgIC8qIENvcHkgZXZlcnl0aGluZyBlbHNlIGFzLWlzICovCiAgICAgICAgIGVsc2UKICAgICAgICAgICAgICpwKysgPSAoY2hhcikgY2g7CiAgICAgfQotICAgIHNpemUgPSBwIC0gcTsKKyAgICBzaXplID0gcCAtIFB5Qnl0ZUFycmF5X0FTX1NUUklORyhyZXByKTsKIAotICBkb25lOgorZG9uZToKICAgICByZXN1bHQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKFB5Qnl0ZUFycmF5X0FTX1NUUklORyhyZXByKSwgc2l6ZSk7CiAgICAgUHlfREVDUkVGKHJlcHIpOwogICAgIHJldHVybiByZXN1bHQ7CkBAIC0xODk2LDkgKzE4NzksNyBAQAogICAgIGlmIChzZWxmLT5iaW4pIHsKICAgICAgICAgY2hhciBwZGF0YVs1XTsKIAotICAgICAgICBlbmNvZGVkID0gUHlVbmljb2RlX0VuY29kZVVURjgoUHlVbmljb2RlX0FTX1VOSUNPREUob2JqKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShvYmopLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN1cnJvZ2F0ZXBhc3MiKTsKKyAgICAgICAgZW5jb2RlZCA9IFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcob2JqLCAidXRmLTgiLCAic3Vycm9nYXRlcGFzcyIpOwogICAgICAgICBpZiAoZW5jb2RlZCA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKIApAQCAtMTkyNCw4ICsxOTA1LDcgQEAKICAgICBlbHNlIHsKICAgICAgICAgY29uc3QgY2hhciB1bmljb2RlX29wID0gVU5JQ09ERTsKIAotICAgICAgICBlbmNvZGVkID0gcmF3X3VuaWNvZGVfZXNjYXBlKFB5VW5pY29kZV9BU19VTklDT0RFKG9iaiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKG9iaikpOworICAgICAgICBlbmNvZGVkID0gcmF3X3VuaWNvZGVfZXNjYXBlKG9iaik7CiAgICAgICAgIGlmIChlbmNvZGVkID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVycm9yOwogCkBAIC0yNTQ0LDcgKzI1MjQsOSBAQAogICAgICAgICAgICAgc3RhdHVzID0gYmF0Y2hfZGljdF9leGFjdChzZWxmLCBvYmopOwogICAgICAgICAgICAgUHlfTGVhdmVSZWN1cnNpdmVDYWxsKCk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBpdGVtcyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qob2JqLCAiaXRlbXMiLCAiKCkiKTsKKyAgICAgICAgICAgIF9QeV9JREVOVElGSUVSKGl0ZW1zKTsKKworICAgICAgICAgICAgaXRlbXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKG9iaiwgJlB5SWRfaXRlbXMsICIoKSIpOwogICAgICAgICAgICAgaWYgKGl0ZW1zID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgICAgIGl0ZXIgPSBQeU9iamVjdF9HZXRJdGVyKGl0ZW1zKTsKQEAgLTI4ODEsNiArMjg2MywyOCBAQAogICAgIHJldHVybiBzdGF0dXM7CiB9CiAKK3N0YXRpYyBQeU9iamVjdCAqCitnZXRfY2xhc3MoUHlPYmplY3QgKm9iaikKK3sKKyAgICBQeU9iamVjdCAqY2xzOworICAgIHN0YXRpYyBQeU9iamVjdCAqc3RyX2NsYXNzOworCisgICAgaWYgKHN0cl9jbGFzcyA9PSBOVUxMKSB7CisgICAgICAgIHN0cl9jbGFzcyA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX2NsYXNzX18iKTsKKyAgICAgICAgaWYgKHN0cl9jbGFzcyA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGNscyA9IFB5T2JqZWN0X0dldEF0dHIob2JqLCBzdHJfY2xhc3MpOworICAgIGlmIChjbHMgPT0gTlVMTCkgeworICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpIHsKKyAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgICAgICBjbHMgPSAoUHlPYmplY3QgKikgUHlfVFlQRShvYmopOworICAgICAgICAgICAgUHlfSU5DUkVGKGNscyk7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIGNsczsKK30KKwogLyogV2UncmUgc2F2aW5nIG9iaiwgYW5kIGFyZ3MgaXMgdGhlIDItdGhydS01IHR1cGxlIHJldHVybmVkIGJ5IHRoZQogICogYXBwcm9wcmlhdGUgX19yZWR1Y2VfXyBtZXRob2QgZm9yIG9iai4KICAqLwpAQCAtMjk0NiwxNyArMjk1MCwxOCBAQAogICAgIC8qIFByb3RvY29sIDIgc3BlY2lhbCBjYXNlOiBpZiBjYWxsYWJsZSdzIG5hbWUgaXMgX19uZXdvYmpfXywgdXNlCiAgICAgICAgTkVXT0JKLiAqLwogICAgIGlmICh1c2VfbmV3b2JqKSB7Ci0gICAgICAgIHN0YXRpYyBQeU9iamVjdCAqbmV3b2JqX3N0ciA9IE5VTEw7Ci0gICAgICAgIFB5T2JqZWN0ICpuYW1lX3N0cjsKKyAgICAgICAgc3RhdGljIFB5T2JqZWN0ICpuZXdvYmpfc3RyID0gTlVMTCwgKm5hbWVfc3RyID0gTlVMTDsKKyAgICAgICAgUHlPYmplY3QgKm5hbWU7CiAKICAgICAgICAgaWYgKG5ld29ial9zdHIgPT0gTlVMTCkgewogICAgICAgICAgICAgbmV3b2JqX3N0ciA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX25ld29ial9fIik7Ci0gICAgICAgICAgICBpZiAobmV3b2JqX3N0ciA9PSBOVUxMKQorICAgICAgICAgICAgbmFtZV9zdHIgPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZygiX19uYW1lX18iKTsKKyAgICAgICAgICAgIGlmIChuZXdvYmpfc3RyID09IE5VTEwgfHwgbmFtZV9zdHIgPT0gTlVMTCkKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIH0KIAotICAgICAgICBuYW1lX3N0ciA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoY2FsbGFibGUsICJfX25hbWVfXyIpOwotICAgICAgICBpZiAobmFtZV9zdHIgPT0gTlVMTCkgeworICAgICAgICBuYW1lID0gUHlPYmplY3RfR2V0QXR0cihjYWxsYWJsZSwgbmFtZV9zdHIpOworICAgICAgICBpZiAobmFtZSA9PSBOVUxMKSB7CiAgICAgICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgICAgIGVsc2UKQEAgLTI5NjQsOSArMjk2OSw5IEBACiAgICAgICAgICAgICB1c2VfbmV3b2JqID0gMDsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIHVzZV9uZXdvYmogPSBQeVVuaWNvZGVfQ2hlY2sobmFtZV9zdHIpICYmIAotICAgICAgICAgICAgICAgIFB5VW5pY29kZV9Db21wYXJlKG5hbWVfc3RyLCBuZXdvYmpfc3RyKSA9PSAwOwotICAgICAgICAgICAgUHlfREVDUkVGKG5hbWVfc3RyKTsKKyAgICAgICAgICAgIHVzZV9uZXdvYmogPSBQeVVuaWNvZGVfQ2hlY2sobmFtZSkgJiYKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQ29tcGFyZShuYW1lLCBuZXdvYmpfc3RyKSA9PSAwOworICAgICAgICAgICAgUHlfREVDUkVGKG5hbWUpOwogICAgICAgICB9CiAgICAgfQogICAgIGlmICh1c2VfbmV3b2JqKSB7CkBAIC0yOTgyLDIwICsyOTg3LDE0IEBACiAgICAgICAgIH0KIAogICAgICAgICBjbHMgPSBQeVR1cGxlX0dFVF9JVEVNKGFyZ3R1cCwgMCk7Ci0gICAgICAgIGlmICghUHlPYmplY3RfSGFzQXR0clN0cmluZyhjbHMsICJfX25ld19fIikpIHsKKyAgICAgICAgaWYgKCFQeVR5cGVfQ2hlY2soY2xzKSkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFBpY2tsaW5nRXJyb3IsICJhcmdzWzBdIGZyb20gIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJfX25ld29ial9fIGFyZ3MgaGFzIG5vIF9fbmV3X18iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX19uZXdvYmpfXyBhcmdzIGlzIG5vdCBhIHR5cGUiKTsKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgfQogCiAgICAgICAgIGlmIChvYmogIT0gTlVMTCkgewotICAgICAgICAgICAgb2JqX2NsYXNzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJfX2NsYXNzX18iKTsKLSAgICAgICAgICAgIGlmIChvYmpfY2xhc3MgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKLSAgICAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgIG9ial9jbGFzcyA9IGdldF9jbGFzcyhvYmopOwogICAgICAgICAgICAgcCA9IG9ial9jbGFzcyAhPSBjbHM7ICAgIC8qIHRydWUgaWZmIGEgcHJvYmxlbSAqLwogICAgICAgICAgICAgUHlfREVDUkVGKG9ial9jbGFzcyk7CiAgICAgICAgICAgICBpZiAocCkgewpAQCAtMzA2OSw3ICszMDY4LDcgQEAKICAgICAgICAgcmV0dXJuIC0xOwogCiAgICAgaWYgKHN0YXRlKSB7Ci0gICAgICAgIGlmIChzYXZlKHNlbGYsIHN0YXRlLCAwKSA8IDAgfHwgCisgICAgICAgIGlmIChzYXZlKHNlbGYsIHN0YXRlLCAwKSA8IDAgfHwKICAgICAgICAgICAgIF9QaWNrbGVyX1dyaXRlKHNlbGYsICZidWlsZF9vcCwgMSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KQEAgLTMzMjMsNyArMzMyMiw3IEBACiAgICAgICAgRGV2ZWxvcGVycyBvZnRlbiBmb3JnZXQgdG8gY2FsbCBfX2luaXRfXygpIGluIHRoZWlyIHN1YmNsYXNzZXMsIHdoaWNoCiAgICAgICAgd291bGQgdHJpZ2dlciBhIHNlZ2ZhdWx0IHdpdGhvdXQgdGhpcyBjaGVjay4gKi8KICAgICBpZiAoc2VsZi0+d3JpdGUgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUGlja2xpbmdFcnJvciwgCisgICAgICAgIFB5RXJyX0Zvcm1hdChQaWNrbGluZ0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgIlBpY2tsZXIuX19pbml0X18oKSB3YXMgbm90IGNhbGxlZCBieSAlcy5fX2luaXRfXygpIiwKICAgICAgICAgICAgICAgICAgICAgIFB5X1RZUEUoc2VsZiktPnRwX25hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTM0MjcsNiArMzQyNiw3IEBACiAgICAgUHlPYmplY3QgKmZpbGU7CiAgICAgUHlPYmplY3QgKnByb3RvX29iaiA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmZpeF9pbXBvcnRzID0gUHlfVHJ1ZTsKKyAgICBfUHlfSURFTlRJRklFUihwZXJzaXN0ZW50X2lkKTsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJPfE9POlBpY2tsZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3bGlzdCwgJmZpbGUsICZwcm90b19vYmosICZmaXhfaW1wb3J0cykpCkBAIC0zNDYyLDkgKzM0NjIsOSBAQAogICAgIHNlbGYtPmZhc3RfbmVzdGluZyA9IDA7CiAgICAgc2VsZi0+ZmFzdF9tZW1vID0gTlVMTDsKICAgICBzZWxmLT5wZXJzX2Z1bmMgPSBOVUxMOwotICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKChQeU9iamVjdCAqKXNlbGYsICJwZXJzaXN0ZW50X2lkIikpIHsKLSAgICAgICAgc2VsZi0+cGVyc19mdW5jID0gUHlPYmplY3RfR2V0QXR0clN0cmluZygoUHlPYmplY3QgKilzZWxmLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwZXJzaXN0ZW50X2lkIik7CisgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQoKFB5T2JqZWN0ICopc2VsZiwgJlB5SWRfcGVyc2lzdGVudF9pZCkpIHsKKyAgICAgICAgc2VsZi0+cGVyc19mdW5jID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKilzZWxmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZQeUlkX3BlcnNpc3RlbnRfaWQpOwogICAgICAgICBpZiAoc2VsZi0+cGVyc19mdW5jID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgfQpAQCAtMzgwMyw3ICszODAzLDcgQEAKICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2lzX2djKi8KIH07CiAKLS8qIFRlbXBvcmFyeSBoZWxwZXIgZm9yIGNhbGxpbmcgc2VsZi5maW5kX2NsYXNzKCkuIAorLyogVGVtcG9yYXJ5IGhlbHBlciBmb3IgY2FsbGluZyBzZWxmLmZpbmRfY2xhc3MoKS4KIAogICAgWFhYOiBJdCB3b3VsZCBiZSBuaWNlIHRvIGFibGUgdG8gYXZvaWQgUHl0aG9uIGZ1bmN0aW9uIGNhbGwgb3ZlcmhlYWQsIGJ5CiAgICB1c2luZyBkaXJlY3RseSB0aGUgQyB2ZXJzaW9uIG9mIGZpbmRfY2xhc3MoKSwgd2hlbiBmaW5kX2NsYXNzKCkgaXMgbm90CkBAIC0zODEzLDggKzM4MTMsMTAgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBmaW5kX2NsYXNzKFVucGlja2xlck9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm1vZHVsZV9uYW1lLCBQeU9iamVjdCAqZ2xvYmFsX25hbWUpCiB7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QoKFB5T2JqZWN0ICopc2VsZiwgImZpbmRfY2xhc3MiLCAiT08iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9uYW1lLCBnbG9iYWxfbmFtZSk7CisgICAgX1B5X0lERU5USUZJRVIoZmluZF9jbGFzcyk7CisKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgoUHlPYmplY3QgKilzZWxmLCAmUHlJZF9maW5kX2NsYXNzLCAiT08iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9uYW1lLCBnbG9iYWxfbmFtZSk7CiB9CiAKIHN0YXRpYyBQeV9zc2l6ZV90CkBAIC0zODU2LDcgKzM4NTgsNyBAQAogICAgICAgICByZXR1cm4gYmFkX3JlYWRsaW5lKCk7CiAKICAgICBlcnJubyA9IDA7Ci0gICAgLyogWFhYOiBTaG91bGQgdGhlIGJhc2UgYXJndW1lbnQgb2Ygc3RydG9sKCkgYmUgZXhwbGljaXRseSBzZXQgdG8gMTA/IAorICAgIC8qIFhYWDogU2hvdWxkIHRoZSBiYXNlIGFyZ3VtZW50IG9mIHN0cnRvbCgpIGJlIGV4cGxpY2l0bHkgc2V0IHRvIDEwPwogICAgICAgIFhYWChhdmFzc2Fsb3R0aSk6IFNob3VsZCB0aGlzIHVzZXMgUHlPU19zdHJ0b2woKT8gKi8KICAgICB4ID0gc3RydG9sKHMsICZlbmRwdHIsIDApOwogCkBAIC00MjIxLDcgKzQyMjMsNyBAQAogCiAgICAgeCA9IGNhbGNfYmluaW50KHMsIDQpOwogICAgIGlmICh4IDwgMCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoVW5waWNrbGluZ0Vycm9yLCAKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFVucGlja2xpbmdFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJCSU5TVFJJTkcgcGlja2xlIGhhcyBuZWdhdGl2ZSBieXRlIGNvdW50Iik7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CkBAIC00NDE4LDE2ICs0NDIwLDE5IEBACiBpbnN0YW50aWF0ZShQeU9iamVjdCAqY2xzLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX2dldGluaXRhcmdzX18pOwogICAgIC8qIENhbGxlciBtdXN0IGFzc3VyZSBhcmdzIGFyZSBhIHR1cGxlLiAgTm9ybWFsbHksIGFyZ3MgY29tZSBmcm9tCiAgICAgICAgUGRhdGFfcG9wdHVwbGUgd2hpY2ggcGFja3Mgb2JqZWN0cyBmcm9tIHRoZSB0b3Agb2YgdGhlIHN0YWNrCiAgICAgICAgaW50byBhIG5ld2x5IGNyZWF0ZWQgdHVwbGUuICovCiAgICAgYXNzZXJ0KFB5VHVwbGVfQ2hlY2soYXJncykpOwogICAgIGlmIChQeV9TSVpFKGFyZ3MpID4gMCB8fCAhUHlUeXBlX0NoZWNrKGNscykgfHwKLSAgICAgICAgUHlPYmplY3RfSGFzQXR0clN0cmluZyhjbHMsICJfX2dldGluaXRhcmdzX18iKSkgeworICAgICAgICBfUHlPYmplY3RfSGFzQXR0cklkKGNscywgJlB5SWRfX19nZXRpbml0YXJnc19fKSkgewogICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsT2JqZWN0KGNscywgYXJncyk7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGNscywgIl9fbmV3X18iLCAiTyIsIGNscyk7CisgICAgICAgIF9QeV9JREVOVElGSUVSKF9fbmV3X18pOworCisgICAgICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoY2xzLCAmUHlJZF9fX25ld19fLCAiTyIsIGNscyk7CiAgICAgfQogICAgIHJldHVybiByZXN1bHQ7CiB9CkBAIC00OTY4LDggKzQ5NzMsOSBAQAogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgUHlPYmplY3QgKmFwcGVuZF9mdW5jOworICAgICAgICBfUHlfSURFTlRJRklFUihhcHBlbmQpOwogCi0gICAgICAgIGFwcGVuZF9mdW5jID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhsaXN0LCAiYXBwZW5kIik7CisgICAgICAgIGFwcGVuZF9mdW5jID0gX1B5T2JqZWN0X0dldEF0dHJJZChsaXN0LCAmUHlJZF9hcHBlbmQpOwogICAgICAgICBpZiAoYXBwZW5kX2Z1bmMgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgZm9yIChpID0geDsgaSA8IGxlbjsgaSsrKSB7CkBAIC01MDE1LDcgKzUwMjEsNyBAQAogICAgICAgICByZXR1cm4gc3RhY2tfdW5kZXJmbG93KCk7CiAgICAgaWYgKGxlbiA9PSB4KSAgLyogbm90aGluZyB0byBkbyAqLwogICAgICAgICByZXR1cm4gMDsKLSAgICBpZiAoKGxlbiAtIHgpICUgMiAhPSAwKSB7IAorICAgIGlmICgobGVuIC0geCkgJSAyICE9IDApIHsKICAgICAgICAgLyogQ3VycnVwdCBvciBob3N0aWxlIHBpY2tsZSAtLSB3ZSBuZXZlciB3cml0ZSBvbmUgbGlrZSB0aGlzLiAqLwogICAgICAgICBQeUVycl9TZXRTdHJpbmcoVW5waWNrbGluZ0Vycm9yLCAib2RkIG51bWJlciBvZiBpdGVtcyBmb3IgU0VUSVRFTVMiKTsKICAgICAgICAgcmV0dXJuIC0xOwpAQCAtNTA1Niw2ICs1MDYyLDcgQEAKICAgICBQeU9iamVjdCAqc3RhdGUsICppbnN0LCAqc2xvdHN0YXRlOwogICAgIFB5T2JqZWN0ICpzZXRzdGF0ZTsKICAgICBpbnQgc3RhdHVzID0gMDsKKyAgICBfUHlfSURFTlRJRklFUihfX3NldHN0YXRlX18pOwogCiAgICAgLyogU3RhY2sgaXMgLi4uIGluc3RhbmNlLCBzdGF0ZS4gIFdlIHdhbnQgdG8gbGVhdmUgaW5zdGFuY2UgYXQKICAgICAgKiB0aGUgc3RhY2sgdG9wLCBwb3NzaWJseSBtdXRhdGVkIHZpYSBpbnN0YW5jZS5fX3NldHN0YXRlX18oc3RhdGUpLgpAQCAtNTA2OSw3ICs1MDc2LDcgQEAKIAogICAgIGluc3QgPSBzZWxmLT5zdGFjay0+ZGF0YVtQeV9TSVpFKHNlbGYtPnN0YWNrKSAtIDFdOwogCi0gICAgc2V0c3RhdGUgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGluc3QsICJfX3NldHN0YXRlX18iKTsKKyAgICBzZXRzdGF0ZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoaW5zdCwgJlB5SWRfX19zZXRzdGF0ZV9fKTsKICAgICBpZiAoc2V0c3RhdGUgPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwpAQCAtNTExMiwxMiArNTExOSwxMyBAQAogICAgICAgICBQeU9iamVjdCAqZGljdDsKICAgICAgICAgUHlPYmplY3QgKmRfa2V5LCAqZF92YWx1ZTsKICAgICAgICAgUHlfc3NpemVfdCBpOworICAgICAgICBfUHlfSURFTlRJRklFUihfX2RpY3RfXyk7CiAKICAgICAgICAgaWYgKCFQeURpY3RfQ2hlY2soc3RhdGUpKSB7CiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoVW5waWNrbGluZ0Vycm9yLCAic3RhdGUgaXMgbm90IGEgZGljdGlvbmFyeSIpOwogICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQotICAgICAgICBkaWN0ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhpbnN0LCAiX19kaWN0X18iKTsKKyAgICAgICAgZGljdCA9IF9QeU9iamVjdF9HZXRBdHRySWQoaW5zdCwgJlB5SWRfX19kaWN0X18pOwogICAgICAgICBpZiAoZGljdCA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKIApAQCAtNTM3Miw3ICs1MzgwLDcgQEAKICAgICAgICBub3QgY2FsbCBVbnBpY2tsZXIuX19pbml0X18oKS4gSGVyZSwgd2Ugc2ltcGx5IGVuc3VyZSB0aGF0IHNlbGYtPnJlYWQKICAgICAgICBpcyBub3QgTlVMTC4gKi8KICAgICBpZiAoc2VsZi0+cmVhZCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChVbnBpY2tsaW5nRXJyb3IsIAorICAgICAgICBQeUVycl9Gb3JtYXQoVW5waWNrbGluZ0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgIlVucGlja2xlci5fX2luaXRfXygpIHdhcyBub3QgY2FsbGVkIGJ5ICVzLl9faW5pdF9fKCkiLAogICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShzZWxmKS0+dHBfbmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNTQ3NCw3ICs1NDgyLDcgQEAKICAgICAgICAgZ2xvYmFsID0gUHlPYmplY3RfR2V0QXR0cihtb2R1bGUsIGdsb2JhbF9uYW1lKTsKICAgICAgICAgUHlfREVDUkVGKG1vZHVsZSk7CiAgICAgfQotICAgIGVsc2UgeyAKKyAgICBlbHNlIHsKICAgICAgICAgZ2xvYmFsID0gUHlPYmplY3RfR2V0QXR0cihtb2R1bGUsIGdsb2JhbF9uYW1lKTsKICAgICB9CiAgICAgcmV0dXJuIGdsb2JhbDsKQEAgLTU1ODIsNiArNTU5MCw3IEBACiAgICAgUHlPYmplY3QgKmZpeF9pbXBvcnRzID0gUHlfVHJ1ZTsKICAgICBjaGFyICplbmNvZGluZyA9IE5VTEw7CiAgICAgY2hhciAqZXJyb3JzID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihwZXJzaXN0ZW50X2xvYWQpOwogCiAgICAgLyogWFhYOiBUaGF0IGlzIGFuIGhvcnJpYmxlIGVycm9yIG1lc3NhZ2UuIEJ1dCwgSSBkb24ndCBrbm93IGhvdyB0byBkbwogICAgICAgIGJldHRlci4uLiAqLwpAQCAtNTYxNiw5ICs1NjI1LDkgQEAKICAgICBpZiAoc2VsZi0+Zml4X2ltcG9ydHMgPT0gLTEpCiAgICAgICAgIHJldHVybiAtMTsKIAotICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKChQeU9iamVjdCAqKXNlbGYsICJwZXJzaXN0ZW50X2xvYWQiKSkgewotICAgICAgICBzZWxmLT5wZXJzX2Z1bmMgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKChQeU9iamVjdCAqKXNlbGYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBlcnNpc3RlbnRfbG9hZCIpOworICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKChQeU9iamVjdCAqKXNlbGYsICZQeUlkX3BlcnNpc3RlbnRfbG9hZCkpIHsKKyAgICAgICAgc2VsZi0+cGVyc19mdW5jID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKilzZWxmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZQeUlkX3BlcnNpc3RlbnRfbG9hZCk7CiAgICAgICAgIGlmIChzZWxmLT5wZXJzX2Z1bmMgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICB9CkBAIC01NjUxLDcgKzU2NjAsNyBAQAogICogaW50ZW50aW9uYWwsIGFzIHRoZXNlIHNob3VsZCBiZSB0cmVhdGVkIGFzIGJsYWNrLWJveCBpbXBsZW1lbnRhdGlvbiBkZXRhaWxzLgogICoKICAqIFdlIGRvLCBob3dldmVyLCBoYXZlIHRvIGltcGxlbWVudCBwaWNrbGluZy91bnBpY2tsaW5nIHN1cHBvcnQgYmVjYXVzZSBvZgotICogcmVhbC13b3JsZCBjb2RlIGxpa2UgY3ZzMnN2bi4gCisgKiByZWFsLXdvcmxkIGNvZGUgbGlrZSBjdnMyc3ZuLgogICovCiAKIHR5cGVkZWYgc3RydWN0IHsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX3Bvc2l4c3VicHJvY2Vzcy5jIGIvTW9kdWxlcy9fcG9zaXhzdWJwcm9jZXNzLmMKaW5kZXggZDUyMGM4Yy4uYzhmMjUwMCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fcG9zaXhzdWJwcm9jZXNzLmMKKysrIGIvTW9kdWxlcy9fcG9zaXhzdWJwcm9jZXNzLmMKQEAgLTQ3LDcgKzQ3LDkgQEAKIF9lbmFibGVfZ2MoUHlPYmplY3QgKmdjX21vZHVsZSkKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0OwotICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZ2NfbW9kdWxlLCAiZW5hYmxlIiwgTlVMTCk7CisgICAgX1B5X0lERU5USUZJRVIoZW5hYmxlKTsKKworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZ2NfbW9kdWxlLCAmUHlJZF9lbmFibGUsIE5VTEwpOwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIDE7CiAgICAgUHlfREVDUkVGKHJlc3VsdCk7CkBAIC01MjMsMTAgKzUyNSwxMyBAQAogICAgIC8qIFdlIG5lZWQgdG8gY2FsbCBnYy5kaXNhYmxlKCkgd2hlbiB3ZSdsbCBiZSBjYWxsaW5nIHByZWV4ZWNfZm4gKi8KICAgICBpZiAocHJlZXhlY19mbiAhPSBQeV9Ob25lKSB7CiAgICAgICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgICAgIF9QeV9JREVOVElGSUVSKGlzZW5hYmxlZCk7CisgICAgICAgIF9QeV9JREVOVElGSUVSKGRpc2FibGUpOworICAgICAgICAKICAgICAgICAgZ2NfbW9kdWxlID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlKCJnYyIpOwogICAgICAgICBpZiAoZ2NfbW9kdWxlID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChnY19tb2R1bGUsICJpc2VuYWJsZWQiLCBOVUxMKTsKKyAgICAgICAgcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChnY19tb2R1bGUsICZQeUlkX2lzZW5hYmxlZCwgTlVMTCk7CiAgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKGdjX21vZHVsZSk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTUzNyw3ICs1NDIsNyBAQAogICAgICAgICAgICAgUHlfREVDUkVGKGdjX21vZHVsZSk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGdjX21vZHVsZSwgImRpc2FibGUiLCBOVUxMKTsKKyAgICAgICAgcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChnY19tb2R1bGUsICZQeUlkX2Rpc2FibGUsIE5VTEwpOwogICAgICAgICBpZiAocmVzdWx0ID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihnY19tb2R1bGUpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zcWxpdGUvY2FjaGUuYyBiL01vZHVsZXMvX3NxbGl0ZS9jYWNoZS5jCmluZGV4IDczNWEyNDIuLjM2OTMzNjMgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX3NxbGl0ZS9jYWNoZS5jCisrKyBiL01vZHVsZXMvX3NxbGl0ZS9jYWNoZS5jCkBAIC0yMTcsOCArMjE3LDYgQEAKICAgICBweXNxbGl0ZV9Ob2RlKiBwdHI7CiAgICAgUHlPYmplY3QqIHByZXZrZXk7CiAgICAgUHlPYmplY3QqIG5leHRrZXk7Ci0gICAgUHlPYmplY3QqIGZtdF9hcmdzOwotICAgIFB5T2JqZWN0KiB0ZW1wbGF0ZTsKICAgICBQeU9iamVjdCogZGlzcGxheV9zdHI7CiAKICAgICBwdHIgPSBzZWxmLT5maXJzdDsKQEAgLTIyOSwzNiArMjI3LDIxIEBACiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwcmV2a2V5ID0gUHlfTm9uZTsKICAgICAgICAgfQotICAgICAgICBQeV9JTkNSRUYocHJldmtleSk7CiAKICAgICAgICAgaWYgKHB0ci0+bmV4dCkgewogICAgICAgICAgICAgbmV4dGtleSA9IHB0ci0+bmV4dC0+a2V5OwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgbmV4dGtleSA9IFB5X05vbmU7CiAgICAgICAgIH0KLSAgICAgICAgUHlfSU5DUkVGKG5leHRrZXkpOwogCi0gICAgICAgIGZtdF9hcmdzID0gUHlfQnVpbGRWYWx1ZSgiT09PIiwgcHJldmtleSwgcHRyLT5rZXksIG5leHRrZXkpOwotICAgICAgICBpZiAoIWZtdF9hcmdzKSB7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICB0ZW1wbGF0ZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCIlcyA8LSAlcyAtPiVzXG4iKTsKLSAgICAgICAgaWYgKCF0ZW1wbGF0ZSkgewotICAgICAgICAgICAgUHlfREVDUkVGKGZtdF9hcmdzKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIGRpc3BsYXlfc3RyID0gUHlVbmljb2RlX0Zvcm1hdCh0ZW1wbGF0ZSwgZm10X2FyZ3MpOwotICAgICAgICBQeV9ERUNSRUYodGVtcGxhdGUpOwotICAgICAgICBQeV9ERUNSRUYoZm10X2FyZ3MpOworICAgICAgICBkaXNwbGF5X3N0ciA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlUyA8LSAlUyAtPiAlU1xuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmV2a2V5LCBwdHItPmtleSwgbmV4dGtleSk7CiAgICAgICAgIGlmICghZGlzcGxheV9zdHIpIHsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CiAgICAgICAgIFB5T2JqZWN0X1ByaW50KGRpc3BsYXlfc3RyLCBzdGRvdXQsIFB5X1BSSU5UX1JBVyk7CiAgICAgICAgIFB5X0RFQ1JFRihkaXNwbGF5X3N0cik7CiAKLSAgICAgICAgUHlfREVDUkVGKHByZXZrZXkpOwotICAgICAgICBQeV9ERUNSRUYobmV4dGtleSk7Ci0KICAgICAgICAgcHRyID0gcHRyLT5uZXh0OwogICAgIH0KIApkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fc3FsaXRlL2Nvbm5lY3Rpb24uYyBiL01vZHVsZXMvX3NxbGl0ZS9jb25uZWN0aW9uLmMKaW5kZXggN2QxMmQ1ZS4uNWNiZjQxOCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fc3FsaXRlL2Nvbm5lY3Rpb24uYworKysgYi9Nb2R1bGVzL19zcWxpdGUvY29ubmVjdGlvbi5jCkBAIC02NzUsNyArNjc1LDcgQEAKIHsKICAgICBQeU9iamVjdCogZnVuY3Rpb25fcmVzdWx0ID0gTlVMTDsKICAgICBQeU9iamVjdCoqIGFnZ3JlZ2F0ZV9pbnN0YW5jZTsKLSAgICBQeU9iamVjdCogYWdncmVnYXRlX2NsYXNzOworICAgIF9QeV9JREVOVElGSUVSKGZpbmFsaXplKTsKIAogI2lmZGVmIFdJVEhfVEhSRUFECiAgICAgUHlHSUxTdGF0ZV9TVEFURSB0aHJlYWRzdGF0ZTsKQEAgLTY4Myw4ICs2ODMsNiBAQAogICAgIHRocmVhZHN0YXRlID0gUHlHSUxTdGF0ZV9FbnN1cmUoKTsKICNlbmRpZgogCi0gICAgYWdncmVnYXRlX2NsYXNzID0gKFB5T2JqZWN0KilzcWxpdGUzX3VzZXJfZGF0YShjb250ZXh0KTsKLQogICAgIGFnZ3JlZ2F0ZV9pbnN0YW5jZSA9IChQeU9iamVjdCoqKXNxbGl0ZTNfYWdncmVnYXRlX2NvbnRleHQoY29udGV4dCwgc2l6ZW9mKFB5T2JqZWN0KikpOwogICAgIGlmICghKmFnZ3JlZ2F0ZV9pbnN0YW5jZSkgewogICAgICAgICAvKiB0aGlzIGJyYW5jaCBpcyBleGVjdXRlZCBpZiB0aGVyZSB3YXMgYW4gZXhjZXB0aW9uIGluIHRoZSBhZ2dyZWdhdGUncwpAQCAtNjkzLDcgKzY5MSw3IEBACiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQogCi0gICAgZnVuY3Rpb25fcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZCgqYWdncmVnYXRlX2luc3RhbmNlLCAiZmluYWxpemUiLCAiIik7CisgICAgZnVuY3Rpb25fcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCgqYWdncmVnYXRlX2luc3RhbmNlLCAmUHlJZF9maW5hbGl6ZSwgIiIpOwogICAgIGlmICghZnVuY3Rpb25fcmVzdWx0KSB7CiAgICAgICAgIGlmIChfZW5hYmxlX2NhbGxiYWNrX3RyYWNlYmFja3MpIHsKICAgICAgICAgICAgIFB5RXJyX1ByaW50KCk7CkBAIC05MDksNiArOTA3LDM4IEBACiAgICAgcmV0dXJuIHJjOwogfQogCitzdGF0aWMgdm9pZCBfdHJhY2VfY2FsbGJhY2sodm9pZCogdXNlcl9hcmcsIGNvbnN0IGNoYXIqIHN0YXRlbWVudF9zdHJpbmcpCit7CisgICAgUHlPYmplY3QgKnB5X3N0YXRlbWVudCA9IE5VTEw7CisgICAgUHlPYmplY3QgKnJldCA9IE5VTEw7CisKKyNpZmRlZiBXSVRIX1RIUkVBRAorICAgIFB5R0lMU3RhdGVfU1RBVEUgZ2lsc3RhdGU7CisKKyAgICBnaWxzdGF0ZSA9IFB5R0lMU3RhdGVfRW5zdXJlKCk7CisjZW5kaWYKKyAgICBweV9zdGF0ZW1lbnQgPSBQeVVuaWNvZGVfRGVjb2RlVVRGOChzdGF0ZW1lbnRfc3RyaW5nLAorICAgICAgICAgICAgc3RybGVuKHN0YXRlbWVudF9zdHJpbmcpLCAicmVwbGFjZSIpOworICAgIGlmIChweV9zdGF0ZW1lbnQpIHsKKyAgICAgICAgcmV0ID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncygoUHlPYmplY3QqKXVzZXJfYXJnLCBweV9zdGF0ZW1lbnQsIE5VTEwpOworICAgICAgICBQeV9ERUNSRUYocHlfc3RhdGVtZW50KTsKKyAgICB9CisKKyAgICBpZiAocmV0KSB7CisgICAgICAgIFB5X0RFQ1JFRihyZXQpOworICAgIH0gZWxzZSB7CisgICAgICAgIGlmIChfZW5hYmxlX2NhbGxiYWNrX3RyYWNlYmFja3MpIHsKKyAgICAgICAgICAgIFB5RXJyX1ByaW50KCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICB9CisgICAgfQorCisjaWZkZWYgV0lUSF9USFJFQUQKKyAgICBQeUdJTFN0YXRlX1JlbGVhc2UoZ2lsc3RhdGUpOworI2VuZGlmCit9CisKIHN0YXRpYyBQeU9iamVjdCogcHlzcWxpdGVfY29ubmVjdGlvbl9zZXRfYXV0aG9yaXplcihweXNxbGl0ZV9Db25uZWN0aW9uKiBzZWxmLCBQeU9iamVjdCogYXJncywgUHlPYmplY3QqIGt3YXJncykKIHsKICAgICBQeU9iamVjdCogYXV0aG9yaXplcl9jYjsKQEAgLTk2OCw2ICs5OTgsMzQgQEAKICAgICByZXR1cm4gUHlfTm9uZTsKIH0KIAorc3RhdGljIFB5T2JqZWN0KiBweXNxbGl0ZV9jb25uZWN0aW9uX3NldF90cmFjZV9jYWxsYmFjayhweXNxbGl0ZV9Db25uZWN0aW9uKiBzZWxmLCBQeU9iamVjdCogYXJncywgUHlPYmplY3QqIGt3YXJncykKK3sKKyAgICBQeU9iamVjdCogdHJhY2VfY2FsbGJhY2s7CisKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7ICJ0cmFjZV9jYWxsYmFjayIsIE5VTEwgfTsKKworICAgIGlmICghcHlzcWxpdGVfY2hlY2tfdGhyZWFkKHNlbGYpIHx8ICFweXNxbGl0ZV9jaGVja19jb25uZWN0aW9uKHNlbGYpKSB7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgIk86c2V0X3RyYWNlX2NhbGxiYWNrIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmdHJhY2VfY2FsbGJhY2spKSB7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGlmICh0cmFjZV9jYWxsYmFjayA9PSBQeV9Ob25lKSB7CisgICAgICAgIC8qIE5vbmUgY2xlYXJzIHRoZSB0cmFjZSBjYWxsYmFjayBwcmV2aW91c2x5IHNldCAqLworICAgICAgICBzcWxpdGUzX3RyYWNlKHNlbGYtPmRiLCAwLCAodm9pZCopMCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtKHNlbGYtPmZ1bmN0aW9uX3BpbmJvYXJkLCB0cmFjZV9jYWxsYmFjaywgUHlfTm9uZSkgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgc3FsaXRlM190cmFjZShzZWxmLT5kYiwgX3RyYWNlX2NhbGxiYWNrLCB0cmFjZV9jYWxsYmFjayk7CisgICAgfQorCisgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgIHJldHVybiBQeV9Ob25lOworfQorCiAjaWZkZWYgSEFWRV9MT0FEX0VYVEVOU0lPTgogc3RhdGljIFB5T2JqZWN0KiBweXNxbGl0ZV9lbmFibGVfbG9hZF9leHRlbnNpb24ocHlzcWxpdGVfQ29ubmVjdGlvbiogc2VsZiwgUHlPYmplY3QqIGFyZ3MpCiB7CkBAIC0xMTczLDggKzEyMzEsOSBAQAogICAgIFB5T2JqZWN0KiBjdXJzb3IgPSAwOwogICAgIFB5T2JqZWN0KiByZXN1bHQgPSAwOwogICAgIFB5T2JqZWN0KiBtZXRob2QgPSAwOworICAgIF9QeV9JREVOVElGSUVSKGN1cnNvcik7CiAKLSAgICBjdXJzb3IgPSBQeU9iamVjdF9DYWxsTWV0aG9kKChQeU9iamVjdCopc2VsZiwgImN1cnNvciIsICIiKTsKKyAgICBjdXJzb3IgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCopc2VsZiwgJlB5SWRfY3Vyc29yLCAiIik7CiAgICAgaWYgKCFjdXJzb3IpIHsKICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CkBAIC0xMjAyLDggKzEyNjEsOSBAQAogICAgIFB5T2JqZWN0KiBjdXJzb3IgPSAwOwogICAgIFB5T2JqZWN0KiByZXN1bHQgPSAwOwogICAgIFB5T2JqZWN0KiBtZXRob2QgPSAwOworICAgIF9QeV9JREVOVElGSUVSKGN1cnNvcik7CiAKLSAgICBjdXJzb3IgPSBQeU9iamVjdF9DYWxsTWV0aG9kKChQeU9iamVjdCopc2VsZiwgImN1cnNvciIsICIiKTsKKyAgICBjdXJzb3IgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCopc2VsZiwgJlB5SWRfY3Vyc29yLCAiIik7CiAgICAgaWYgKCFjdXJzb3IpIHsKICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CkBAIC0xMjMxLDggKzEyOTEsOSBAQAogICAgIFB5T2JqZWN0KiBjdXJzb3IgPSAwOwogICAgIFB5T2JqZWN0KiByZXN1bHQgPSAwOwogICAgIFB5T2JqZWN0KiBtZXRob2QgPSAwOworICAgIF9QeV9JREVOVElGSUVSKGN1cnNvcik7CiAKLSAgICBjdXJzb3IgPSBQeU9iamVjdF9DYWxsTWV0aG9kKChQeU9iamVjdCopc2VsZiwgImN1cnNvciIsICIiKTsKKyAgICBjdXJzb3IgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKChQeU9iamVjdCopc2VsZiwgJlB5SWRfY3Vyc29yLCAiIik7CiAgICAgaWYgKCFjdXJzb3IpIHsKICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CkBAIC0xMzc5LDEwICsxNDQwLDEyIEBACiAgICAgUHlPYmplY3QqIHVwcGVyY2FzZV9uYW1lID0gMDsKICAgICBQeU9iamVjdCogbmFtZTsKICAgICBQeU9iamVjdCogcmV0dmFsOwotICAgIFB5X1VOSUNPREUqIGNoazsKICAgICBQeV9zc2l6ZV90IGksIGxlbjsKKyAgICBfUHlfSURFTlRJRklFUih1cHBlcik7CiAgICAgY2hhciAqdXBwZXJjYXNlX25hbWVfc3RyOwogICAgIGludCByYzsKKyAgICB1bnNpZ25lZCBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogCiAgICAgaWYgKCFweXNxbGl0ZV9jaGVja190aHJlYWQoc2VsZikgfHwgIXB5c3FsaXRlX2NoZWNrX2Nvbm5lY3Rpb24oc2VsZikpIHsKICAgICAgICAgZ290byBmaW5hbGx5OwpAQCAtMTM5MiwxNyArMTQ1NSwyMSBAQAogICAgICAgICBnb3RvIGZpbmFsbHk7CiAgICAgfQogCi0gICAgdXBwZXJjYXNlX25hbWUgPSBQeU9iamVjdF9DYWxsTWV0aG9kKG5hbWUsICJ1cHBlciIsICIiKTsKKyAgICB1cHBlcmNhc2VfbmFtZSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQobmFtZSwgJlB5SWRfdXBwZXIsICIiKTsKICAgICBpZiAoIXVwcGVyY2FzZV9uYW1lKSB7CiAgICAgICAgIGdvdG8gZmluYWxseTsKICAgICB9CiAKLSAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUodXBwZXJjYXNlX25hbWUpOwotICAgIGNoayA9IFB5VW5pY29kZV9BU19VTklDT0RFKHVwcGVyY2FzZV9uYW1lKTsKLSAgICBmb3IgKGk9MDsgaTxsZW47IGkrKywgY2hrKyspIHsKLSAgICAgICAgaWYgKCgqY2hrID49ICcwJyAmJiAqY2hrIDw9ICc5JykKLSAgICAgICAgIHx8ICgqY2hrID49ICdBJyAmJiAqY2hrIDw9ICdaJykKLSAgICAgICAgIHx8ICgqY2hrID09ICdfJykpCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1cHBlcmNhc2VfbmFtZSkpCisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1cHBlcmNhc2VfbmFtZSk7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHVwcGVyY2FzZV9uYW1lKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEodXBwZXJjYXNlX25hbWUpOworICAgIGZvciAoaT0wOyBpPGxlbjsgaSsrKSB7CisgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgICAgaWYgKChjaCA+PSAnMCcgJiYgY2ggPD0gJzknKQorICAgICAgICAgfHwgKGNoID49ICdBJyAmJiBjaCA8PSAnWicpCisgICAgICAgICB8fCAoY2ggPT0gJ18nKSkKICAgICAgICAgewogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0gZWxzZSB7CkBAIC0xNTIxLDYgKzE1ODgsOCBAQAogICAgICNlbmRpZgogICAgIHsic2V0X3Byb2dyZXNzX2hhbmRsZXIiLCAoUHlDRnVuY3Rpb24pcHlzcWxpdGVfY29ubmVjdGlvbl9zZXRfcHJvZ3Jlc3NfaGFuZGxlciwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCiAgICAgICAgIFB5RG9jX1NUUigiU2V0cyBwcm9ncmVzcyBoYW5kbGVyIGNhbGxiYWNrLiBOb24tc3RhbmRhcmQuIil9LAorICAgIHsic2V0X3RyYWNlX2NhbGxiYWNrIiwgKFB5Q0Z1bmN0aW9uKXB5c3FsaXRlX2Nvbm5lY3Rpb25fc2V0X3RyYWNlX2NhbGxiYWNrLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKKyAgICAgICAgUHlEb2NfU1RSKCJTZXRzIGEgdHJhY2UgY2FsbGJhY2sgY2FsbGVkIGZvciBlYWNoIFNRTCBzdGF0ZW1lbnQgKHBhc3NlZCBhcyB1bmljb2RlKS4gTm9uLXN0YW5kYXJkLiIpfSwKICAgICB7ImV4ZWN1dGUiLCAoUHlDRnVuY3Rpb24pcHlzcWxpdGVfY29ubmVjdGlvbl9leGVjdXRlLCBNRVRIX1ZBUkFSR1MsCiAgICAgICAgIFB5RG9jX1NUUigiRXhlY3V0ZXMgYSBTUUwgc3RhdGVtZW50LiBOb24tc3RhbmRhcmQuIil9LAogICAgIHsiZXhlY3V0ZW1hbnkiLCAoUHlDRnVuY3Rpb24pcHlzcWxpdGVfY29ubmVjdGlvbl9leGVjdXRlbWFueSwgTUVUSF9WQVJBUkdTLApkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fc3FsaXRlL2N1cnNvci5jIGIvTW9kdWxlcy9fc3FsaXRlL2N1cnNvci5jCmluZGV4IDc2MzMyMmYuLjk5YTg2MTIgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX3NxbGl0ZS9jdXJzb3IuYworKysgYi9Nb2R1bGVzL19zcWxpdGUvY3Vyc29yLmMKQEAgLTEyNiwxMSArMTI2LDkgQEAKIAogc3RhdGljIHZvaWQgcHlzcWxpdGVfY3Vyc29yX2RlYWxsb2MocHlzcWxpdGVfQ3Vyc29yKiBzZWxmKQogewotICAgIGludCByYzsKLQogICAgIC8qIFJlc2V0IHRoZSBzdGF0ZW1lbnQgaWYgdGhlIHVzZXIgaGFzIG5vdCBjbG9zZWQgdGhlIGN1cnNvciAqLwogICAgIGlmIChzZWxmLT5zdGF0ZW1lbnQpIHsKLSAgICAgICAgcmMgPSBweXNxbGl0ZV9zdGF0ZW1lbnRfcmVzZXQoc2VsZi0+c3RhdGVtZW50KTsKKyAgICAgICAgcHlzcWxpdGVfc3RhdGVtZW50X3Jlc2V0KHNlbGYtPnN0YXRlbWVudCk7CiAgICAgICAgIFB5X0RFQ1JFRihzZWxmLT5zdGF0ZW1lbnQpOwogICAgIH0KIApAQCAtMTUyLDggKzE1MCw5IEBACiB7CiAgICAgUHlPYmplY3QqIHVwY2FzZV9rZXk7CiAgICAgUHlPYmplY3QqIHJldHZhbDsKKyAgICBfUHlfSURFTlRJRklFUih1cHBlcik7CiAKLSAgICB1cGNhc2Vfa2V5ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChrZXksICJ1cHBlciIsICIiKTsKKyAgICB1cGNhc2Vfa2V5ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChrZXksICZQeUlkX3VwcGVyLCAiIik7CiAgICAgaWYgKCF1cGNhc2Vfa2V5KSB7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KQEAgLTQzMyw5ICs0MzIsMTQgQEAKICAgICBpZiAoY3VyLT5jbG9zZWQpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHB5c3FsaXRlX1Byb2dyYW1taW5nRXJyb3IsICJDYW5ub3Qgb3BlcmF0ZSBvbiBhIGNsb3NlZCBjdXJzb3IuIik7CiAgICAgICAgIHJldHVybiAwOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIHJldHVybiBweXNxbGl0ZV9jaGVja190aHJlYWQoY3VyLT5jb25uZWN0aW9uKSAmJiBweXNxbGl0ZV9jaGVja19jb25uZWN0aW9uKGN1ci0+Y29ubmVjdGlvbik7CiAgICAgfQorCisgICAgaWYgKGN1ci0+bG9ja2VkKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhweXNxbGl0ZV9Qcm9ncmFtbWluZ0Vycm9yLCAiUmVjdXJzaXZlIHVzZSBvZiBjdXJzb3JzIG5vdCBhbGxvd2VkLiIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICByZXR1cm4gcHlzcWxpdGVfY2hlY2tfdGhyZWFkKGN1ci0+Y29ubmVjdGlvbikgJiYgcHlzcWxpdGVfY2hlY2tfY29ubmVjdGlvbihjdXItPmNvbm5lY3Rpb24pOwogfQogCiBQeU9iamVjdCogX3B5c3FsaXRlX3F1ZXJ5X2V4ZWN1dGUocHlzcWxpdGVfQ3Vyc29yKiBzZWxmLCBpbnQgbXVsdGlwbGUsIFB5T2JqZWN0KiBhcmdzKQpAQCAtNDU4LDkgKzQ2MiwxMCBAQAogICAgIGludCBhbGxvd184Yml0X2NoYXJzOwogCiAgICAgaWYgKCFjaGVja19jdXJzb3Ioc2VsZikpIHsKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQogCisgICAgc2VsZi0+bG9ja2VkID0gMTsKICAgICBzZWxmLT5yZXNldCA9IDA7CiAKICAgICAvKiBNYWtlIHNob290aW5nIHlvdXJzZWxmIGluIHRoZSBmb290IHdpdGggbm90IHV0Zi04IGRlY29kYWJsZSA4LWJpdC1zdHJpbmdzIGhhcmRlciAqLwpAQCAtNDczLDEyICs0NzgsMTIgQEAKICAgICBpZiAobXVsdGlwbGUpIHsKICAgICAgICAgLyogZXhlY3V0ZW1hbnkoKSAqLwogICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9PIiwgJm9wZXJhdGlvbiwgJnNlY29uZF9hcmd1bWVudCkpIHsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQogCiAgICAgICAgIGlmICghUHlVbmljb2RlX0NoZWNrKG9wZXJhdGlvbikpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAib3BlcmF0aW9uIHBhcmFtZXRlciBtdXN0IGJlIHN0ciIpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICB9CiAKICAgICAgICAgaWYgKFB5SXRlcl9DaGVjayhzZWNvbmRfYXJndW1lbnQpKSB7CkBAIC00ODksMjMgKzQ5NCwyMyBAQAogICAgICAgICAgICAgLyogc2VxdWVuY2UgKi8KICAgICAgICAgICAgIHBhcmFtZXRlcnNfaXRlciA9IFB5T2JqZWN0X0dldEl0ZXIoc2Vjb25kX2FyZ3VtZW50KTsKICAgICAgICAgICAgIGlmICghcGFyYW1ldGVyc19pdGVyKSB7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0gZWxzZSB7CiAgICAgICAgIC8qIGV4ZWN1dGUoKSAqLwogICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk98TyIsICZvcGVyYXRpb24sICZzZWNvbmRfYXJndW1lbnQpKSB7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIH0KIAogICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhvcGVyYXRpb24pKSB7CiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIm9wZXJhdGlvbiBwYXJhbWV0ZXIgbXVzdCBiZSBzdHIiKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQogCiAgICAgICAgIHBhcmFtZXRlcnNfbGlzdCA9IFB5TGlzdF9OZXcoMCk7CiAgICAgICAgIGlmICghcGFyYW1ldGVyc19saXN0KSB7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIH0KIAogICAgICAgICBpZiAoc2Vjb25kX2FyZ3VtZW50ID09IE5VTEwpIHsKQEAgLTUzMCw3ICs1MzUsNyBAQAogCiAgICAgaWYgKHNlbGYtPnN0YXRlbWVudCAhPSBOVUxMKSB7CiAgICAgICAgIC8qIFRoZXJlIGlzIGFuIGFjdGl2ZSBzdGF0ZW1lbnQgKi8KLSAgICAgICAgcmMgPSBweXNxbGl0ZV9zdGF0ZW1lbnRfcmVzZXQoc2VsZi0+c3RhdGVtZW50KTsKKyAgICAgICAgcHlzcWxpdGVfc3RhdGVtZW50X3Jlc2V0KHNlbGYtPnN0YXRlbWVudCk7CiAgICAgfQogCiAgICAgb3BlcmF0aW9uX2NzdHIgPSBfUHlVbmljb2RlX0FzU3RyaW5nQW5kU2l6ZShvcGVyYXRpb24sICZvcGVyYXRpb25fbGVuKTsKQEAgLTczNSw3ICs3NDAsNyBAQAogICAgICAgICB9CiAKICAgICAgICAgaWYgKG11bHRpcGxlKSB7Ci0gICAgICAgICAgICByYyA9IHB5c3FsaXRlX3N0YXRlbWVudF9yZXNldChzZWxmLT5zdGF0ZW1lbnQpOworICAgICAgICAgICAgcHlzcWxpdGVfc3RhdGVtZW50X3Jlc2V0KHNlbGYtPnN0YXRlbWVudCk7CiAgICAgICAgIH0KICAgICAgICAgUHlfWERFQ1JFRihwYXJhbWV0ZXJzKTsKICAgICB9CkBAIC03NDUsNyArNzUwLDggQEAKICAgICAgKiBST0xMQkFDSyBjb3VsZCBoYXZlIGhhcHBlbmVkICovCiAgICAgI2lmZGVmIFNRTElURV9WRVJTSU9OX05VTUJFUgogICAgICNpZiBTUUxJVEVfVkVSU0lPTl9OVU1CRVIgPj0gMzAwMjAwMgotICAgIHNlbGYtPmNvbm5lY3Rpb24tPmluVHJhbnNhY3Rpb24gPSAhc3FsaXRlM19nZXRfYXV0b2NvbW1pdChzZWxmLT5jb25uZWN0aW9uLT5kYik7CisgICAgaWYgKHNlbGYtPmNvbm5lY3Rpb24gJiYgc2VsZi0+Y29ubmVjdGlvbi0+ZGIpCisgICAgICAgIHNlbGYtPmNvbm5lY3Rpb24tPmluVHJhbnNhY3Rpb24gPSAhc3FsaXRlM19nZXRfYXV0b2NvbW1pdChzZWxmLT5jb25uZWN0aW9uLT5kYik7CiAgICAgI2VuZGlmCiAgICAgI2VuZGlmCiAKQEAgLTc1Myw2ICs3NTksOCBAQAogICAgIFB5X1hERUNSRUYocGFyYW1ldGVyc19pdGVyKTsKICAgICBQeV9YREVDUkVGKHBhcmFtZXRlcnNfbGlzdCk7CiAKKyAgICBzZWxmLT5sb2NrZWQgPSAwOworCiAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpIHsKICAgICAgICAgc2VsZi0+cm93Y291bnQgPSAtMUw7CiAgICAgICAgIHJldHVybiBOVUxMOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fc3FsaXRlL2N1cnNvci5oIGIvTW9kdWxlcy9fc3FsaXRlL2N1cnNvci5oCmluZGV4IDVkOGI1YzEuLjExOGJhMzggMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX3NxbGl0ZS9jdXJzb3IuaAorKysgYi9Nb2R1bGVzL19zcWxpdGUvY3Vyc29yLmgKQEAgLTQyLDYgKzQyLDcgQEAKICAgICBweXNxbGl0ZV9TdGF0ZW1lbnQqIHN0YXRlbWVudDsKICAgICBpbnQgY2xvc2VkOwogICAgIGludCByZXNldDsKKyAgICBpbnQgbG9ja2VkOwogICAgIGludCBpbml0aWFsaXplZDsKIAogICAgIC8qIHRoZSBuZXh0IHJvdyB0byBiZSByZXR1cm5lZCwgTlVMTCBpZiBubyBuZXh0IHJvdyBhdmFpbGFibGUgKi8KZGlmZiAtLWdpdCBhL01vZHVsZXMvX3NxbGl0ZS9taWNyb3Byb3RvY29scy5jIGIvTW9kdWxlcy9fc3FsaXRlL21pY3JvcHJvdG9jb2xzLmMKaW5kZXggYzczMGFmYS4uMjI2MWI4MCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fc3FsaXRlL21pY3JvcHJvdG9jb2xzLmMKKysrIGIvTW9kdWxlcy9fc3FsaXRlL21pY3JvcHJvdG9jb2xzLmMKQEAgLTk1LDcgKzk1LDkgQEAKIAogICAgIC8qIHRyeSB0byBoYXZlIHRoZSBwcm90b2NvbCBhZGFwdCB0aGlzIG9iamVjdCovCiAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcocHJvdG8sICJfX2FkYXB0X18iKSkgewotICAgICAgICBQeU9iamVjdCAqYWRhcHRlZCA9IFB5T2JqZWN0X0NhbGxNZXRob2QocHJvdG8sICJfX2FkYXB0X18iLCAiTyIsIG9iaik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKF9fYWRhcHRfXyk7CisgICAgICAgIFB5T2JqZWN0ICphZGFwdGVkID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChwcm90bywgJlB5SWRfX19hZGFwdF9fLCAiTyIsIG9iaik7CisKICAgICAgICAgaWYgKGFkYXB0ZWQpIHsKICAgICAgICAgICAgIGlmIChhZGFwdGVkICE9IFB5X05vbmUpIHsKICAgICAgICAgICAgICAgICByZXR1cm4gYWRhcHRlZDsKQEAgLTExMCw3ICsxMTIsOSBAQAogCiAgICAgLyogYW5kIGZpbmFsbHkgdHJ5IHRvIGhhdmUgdGhlIG9iamVjdCBhZGFwdCBpdHNlbGYgKi8KICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJfX2NvbmZvcm1fXyIpKSB7Ci0gICAgICAgIFB5T2JqZWN0ICphZGFwdGVkID0gUHlPYmplY3RfQ2FsbE1ldGhvZChvYmosICJfX2NvbmZvcm1fXyIsIk8iLCBwcm90byk7CisgICAgICAgIF9QeV9JREVOVElGSUVSKF9fY29uZm9ybV9fKTsKKyAgICAgICAgUHlPYmplY3QgKmFkYXB0ZWQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKG9iaiwgJlB5SWRfX19jb25mb3JtX18sIk8iLCBwcm90byk7CisKICAgICAgICAgaWYgKGFkYXB0ZWQpIHsKICAgICAgICAgICAgIGlmIChhZGFwdGVkICE9IFB5X05vbmUpIHsKICAgICAgICAgICAgICAgICByZXR1cm4gYWRhcHRlZDsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX3NxbGl0ZS9tb2R1bGUuYyBiL01vZHVsZXMvX3NxbGl0ZS9tb2R1bGUuYwppbmRleCBjYmMzYjhlLi40MDZkNzg3IDEwMDY0NAotLS0gYS9Nb2R1bGVzL19zcWxpdGUvbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9fc3FsaXRlL21vZHVsZS5jCkBAIC0xNzksMTMgKzE3OSwxNCBAQAogICAgIFB5T2JqZWN0KiBuYW1lID0gTlVMTDsKICAgICBQeU9iamVjdCogY2FsbGFibGU7CiAgICAgUHlPYmplY3QqIHJldHZhbCA9IE5VTEw7CisgICAgX1B5X0lERU5USUZJRVIodXBwZXIpOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVTyIsICZvcmlnX25hbWUsICZjYWxsYWJsZSkpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCiAgICAgLyogY29udmVydCB0aGUgbmFtZSB0byB1cHBlciBjYXNlICovCi0gICAgbmFtZSA9IFB5T2JqZWN0X0NhbGxNZXRob2Qob3JpZ19uYW1lLCAidXBwZXIiLCAiIik7CisgICAgbmFtZSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQob3JpZ19uYW1lLCAmUHlJZF91cHBlciwgIiIpOwogICAgIGlmICghbmFtZSkgewogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvX3NxbGl0ZS9yb3cuYyBiL01vZHVsZXMvX3NxbGl0ZS9yb3cuYwppbmRleCAzZDQ0MDk0Li5iNTA2NThjIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19zcWxpdGUvcm93LmMKKysrIGIvTW9kdWxlcy9fc3FsaXRlL3Jvdy5jCkBAIC0xNzMsMTAgKzE3Myw5IEBACiAKIHN0YXRpYyBQeU9iamVjdCogcHlzcWxpdGVfcm93X3JpY2hjb21wYXJlKHB5c3FsaXRlX1JvdyAqc2VsZiwgUHlPYmplY3QgKl9vdGhlciwgaW50IG9waWQpCiB7Ci0gICAgaWYgKG9waWQgIT0gUHlfRVEgJiYgb3BpZCAhPSBQeV9ORSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmIChvcGlkICE9IFB5X0VRICYmIG9waWQgIT0gUHlfTkUpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKKwogICAgIGlmIChQeVR5cGVfSXNTdWJ0eXBlKFB5X1RZUEUoX290aGVyKSwgJnB5c3FsaXRlX1Jvd1R5cGUpKSB7CiAgICAgICAgIHB5c3FsaXRlX1JvdyAqb3RoZXIgPSAocHlzcWxpdGVfUm93ICopX290aGVyOwogICAgICAgICBQeU9iamVjdCAqcmVzID0gUHlPYmplY3RfUmljaENvbXBhcmUoc2VsZi0+ZGVzY3JpcHRpb24sIG90aGVyLT5kZXNjcmlwdGlvbiwgb3BpZCk7CkBAIC0xODYsOCArMTg1LDcgQEAKICAgICAgICAgICAgIHJldHVybiBQeU9iamVjdF9SaWNoQ29tcGFyZShzZWxmLT5kYXRhLCBvdGhlci0+ZGF0YSwgb3BpZCk7CiAgICAgICAgIH0KICAgICB9Ci0gICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogfQogCiBQeU1hcHBpbmdNZXRob2RzIHB5c3FsaXRlX3Jvd19hc19tYXBwaW5nID0gewpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fc3FsaXRlL3N0YXRlbWVudC5jIGIvTW9kdWxlcy9fc3FsaXRlL3N0YXRlbWVudC5jCmluZGV4IDgwYmNjMzguLmNjOWMzMTAgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX3NxbGl0ZS9zdGF0ZW1lbnQuYworKysgYi9Nb2R1bGVzL19zcWxpdGUvc3RhdGVtZW50LmMKQEAgLTM2OSwxMSArMzY5LDkgQEAKIAogdm9pZCBweXNxbGl0ZV9zdGF0ZW1lbnRfZGVhbGxvYyhweXNxbGl0ZV9TdGF0ZW1lbnQqIHNlbGYpCiB7Ci0gICAgaW50IHJjOwotCiAgICAgaWYgKHNlbGYtPnN0KSB7CiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgcmMgPSBzcWxpdGUzX2ZpbmFsaXplKHNlbGYtPnN0KTsKKyAgICAgICAgc3FsaXRlM19maW5hbGl6ZShzZWxmLT5zdCk7CiAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgfQogCmRpZmYgLS1naXQgYS9Nb2R1bGVzL19zcmUuYyBiL01vZHVsZXMvX3NyZS5jCmluZGV4IGEzNjNkZTIuLjAwNjlkODIgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvX3NyZS5jCisrKyBiL01vZHVsZXMvX3NyZS5jCkBAIC0xNjMsMjEgKzE2MywxNyBAQAogCiAvKiB1bmljb2RlLXNwZWNpZmljIGNoYXJhY3RlciBwcmVkaWNhdGVzICovCiAKLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKLQotI2RlZmluZSBTUkVfVU5JX0lTX0RJR0lUKGNoKSBQeV9VTklDT0RFX0lTREVDSU1BTCgoUHlfVU5JQ09ERSkoY2gpKQotI2RlZmluZSBTUkVfVU5JX0lTX1NQQUNFKGNoKSBQeV9VTklDT0RFX0lTU1BBQ0UoKFB5X1VOSUNPREUpKGNoKSkKLSNkZWZpbmUgU1JFX1VOSV9JU19MSU5FQlJFQUsoY2gpIFB5X1VOSUNPREVfSVNMSU5FQlJFQUsoKFB5X1VOSUNPREUpKGNoKSkKLSNkZWZpbmUgU1JFX1VOSV9JU19BTE5VTShjaCkgUHlfVU5JQ09ERV9JU0FMTlVNKChQeV9VTklDT0RFKShjaCkpCi0jZGVmaW5lIFNSRV9VTklfSVNfV09SRChjaCkgKFNSRV9VTklfSVNfQUxOVU0oKGNoKSkgfHwgKGNoKSA9PSAnXycpCisjZGVmaW5lIFNSRV9VTklfSVNfRElHSVQoY2gpIFB5X1VOSUNPREVfSVNERUNJTUFMKGNoKQorI2RlZmluZSBTUkVfVU5JX0lTX1NQQUNFKGNoKSBQeV9VTklDT0RFX0lTU1BBQ0UoY2gpCisjZGVmaW5lIFNSRV9VTklfSVNfTElORUJSRUFLKGNoKSBQeV9VTklDT0RFX0lTTElORUJSRUFLKGNoKQorI2RlZmluZSBTUkVfVU5JX0lTX0FMTlVNKGNoKSBQeV9VTklDT0RFX0lTQUxOVU0oY2gpCisjZGVmaW5lIFNSRV9VTklfSVNfV09SRChjaCkgKFNSRV9VTklfSVNfQUxOVU0oY2gpIHx8IChjaCkgPT0gJ18nKQogCiBzdGF0aWMgdW5zaWduZWQgaW50IHNyZV9sb3dlcl91bmljb2RlKHVuc2lnbmVkIGludCBjaCkKIHsKLSAgICByZXR1cm4gKHVuc2lnbmVkIGludCkgUHlfVU5JQ09ERV9UT0xPV0VSKChQeV9VTklDT0RFKShjaCkpOworICAgIHJldHVybiAodW5zaWduZWQgaW50KSBQeV9VTklDT0RFX1RPTE9XRVIoY2gpOwogfQogCi0jZW5kaWYKLQogTE9DQUwoaW50KQogc3JlX2NhdGVnb3J5KFNSRV9DT0RFIGNhdGVnb3J5LCB1bnNpZ25lZCBpbnQgY2gpCiB7CkBAIC0yMDUsNyArMjAxLDYgQEAKICAgICBjYXNlIFNSRV9DQVRFR09SWV9MT0NfTk9UX1dPUkQ6CiAgICAgICAgIHJldHVybiAhU1JFX0xPQ19JU19XT1JEKGNoKTsKIAotI2lmIGRlZmluZWQoSEFWRV9VTklDT0RFKQogICAgIGNhc2UgU1JFX0NBVEVHT1JZX1VOSV9ESUdJVDoKICAgICAgICAgcmV0dXJuIFNSRV9VTklfSVNfRElHSVQoY2gpOwogICAgIGNhc2UgU1JFX0NBVEVHT1JZX1VOSV9OT1RfRElHSVQ6CkBAIC0yMjIsMjQgKzIxNyw2IEBACiAgICAgICAgIHJldHVybiBTUkVfVU5JX0lTX0xJTkVCUkVBSyhjaCk7CiAgICAgY2FzZSBTUkVfQ0FURUdPUllfVU5JX05PVF9MSU5FQlJFQUs6CiAgICAgICAgIHJldHVybiAhU1JFX1VOSV9JU19MSU5FQlJFQUsoY2gpOwotI2Vsc2UKLSAgICBjYXNlIFNSRV9DQVRFR09SWV9VTklfRElHSVQ6Ci0gICAgICAgIHJldHVybiBTUkVfSVNfRElHSVQoY2gpOwotICAgIGNhc2UgU1JFX0NBVEVHT1JZX1VOSV9OT1RfRElHSVQ6Ci0gICAgICAgIHJldHVybiAhU1JFX0lTX0RJR0lUKGNoKTsKLSAgICBjYXNlIFNSRV9DQVRFR09SWV9VTklfU1BBQ0U6Ci0gICAgICAgIHJldHVybiBTUkVfSVNfU1BBQ0UoY2gpOwotICAgIGNhc2UgU1JFX0NBVEVHT1JZX1VOSV9OT1RfU1BBQ0U6Ci0gICAgICAgIHJldHVybiAhU1JFX0lTX1NQQUNFKGNoKTsKLSAgICBjYXNlIFNSRV9DQVRFR09SWV9VTklfV09SRDoKLSAgICAgICAgcmV0dXJuIFNSRV9MT0NfSVNfV09SRChjaCk7Ci0gICAgY2FzZSBTUkVfQ0FURUdPUllfVU5JX05PVF9XT1JEOgotICAgICAgICByZXR1cm4gIVNSRV9MT0NfSVNfV09SRChjaCk7Ci0gICAgY2FzZSBTUkVfQ0FURUdPUllfVU5JX0xJTkVCUkVBSzoKLSAgICAgICAgcmV0dXJuIFNSRV9JU19MSU5FQlJFQUsoY2gpOwotICAgIGNhc2UgU1JFX0NBVEVHT1JZX1VOSV9OT1RfTElORUJSRUFLOgotICAgICAgICByZXR1cm4gIVNSRV9JU19MSU5FQlJFQUsoY2gpOwotI2VuZGlmCiAgICAgfQogICAgIHJldHVybiAwOwogfQpAQCAtMjgwLDYgKzI1Nyw3IEBACiAvKiBnZW5lcmF0ZSA4LWJpdCB2ZXJzaW9uICovCiAKICNkZWZpbmUgU1JFX0NIQVIgdW5zaWduZWQgY2hhcgorI2RlZmluZSBTUkVfQ0hBUkdFVChzdGF0ZSwgYnVmLCBpbmRleCkgKCh1bnNpZ25lZCBjaGFyKilidWYpW2luZGV4XQogI2RlZmluZSBTUkVfQVQgc3JlX2F0CiAjZGVmaW5lIFNSRV9DT1VOVCBzcmVfY291bnQKICNkZWZpbmUgU1JFX0NIQVJTRVQgc3JlX2NoYXJzZXQKQEAgLTI4NywxNSArMjY1LDExIEBACiAjZGVmaW5lIFNSRV9NQVRDSCBzcmVfbWF0Y2gKICNkZWZpbmUgU1JFX01BVENIX0NPTlRFWFQgc3JlX21hdGNoX2NvbnRleHQKICNkZWZpbmUgU1JFX1NFQVJDSCBzcmVfc2VhcmNoCi0jZGVmaW5lIFNSRV9MSVRFUkFMX1RFTVBMQVRFIHNyZV9saXRlcmFsX3RlbXBsYXRlCi0KLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKIAogI2RlZmluZSBTUkVfUkVDVVJTSVZFCiAjaW5jbHVkZSAiX3NyZS5jIgogI3VuZGVmIFNSRV9SRUNVUlNJVkUKIAotI3VuZGVmIFNSRV9MSVRFUkFMX1RFTVBMQVRFCiAjdW5kZWYgU1JFX1NFQVJDSAogI3VuZGVmIFNSRV9NQVRDSAogI3VuZGVmIFNSRV9NQVRDSF9DT05URVhUCkBAIC0zMDQsMTAgKzI3OCwxNSBAQAogI3VuZGVmIFNSRV9DT1VOVAogI3VuZGVmIFNSRV9BVAogI3VuZGVmIFNSRV9DSEFSCisjdW5kZWYgU1JFX0NIQVJHRVQKIAotLyogZ2VuZXJhdGUgMTYtYml0IHVuaWNvZGUgdmVyc2lvbiAqLworLyogZ2VuZXJhdGUgOC8xNi8zMi1iaXQgdW5pY29kZSB2ZXJzaW9uICovCiAKLSNkZWZpbmUgU1JFX0NIQVIgUHlfVU5JQ09ERQorI2RlZmluZSBTUkVfQ0hBUiB2b2lkCisjZGVmaW5lIFNSRV9DSEFSR0VUKHN0YXRlLCBidWYsIGluZGV4KSBcCisgICAgKChzdGF0ZS0+Y2hhcnNpemU9PTEpID8gKChQeV9VQ1MxKilidWYpW2luZGV4XSA6IFwKKyAgICAgKHN0YXRlLT5jaGFyc2l6ZT09MikgPyAoKFB5X1VDUzIqKWJ1ZilbaW5kZXhdIDogXAorICAgICAoKFB5X1VDUzQqKWJ1ZilbaW5kZXhdKQogI2RlZmluZSBTUkVfQVQgc3JlX3VhdAogI2RlZmluZSBTUkVfQ09VTlQgc3JlX3Vjb3VudAogI2RlZmluZSBTUkVfQ0hBUlNFVCBzcmVfdWNoYXJzZXQKQEAgLTMxNSw4ICsyOTQsNiBAQAogI2RlZmluZSBTUkVfTUFUQ0ggc3JlX3VtYXRjaAogI2RlZmluZSBTUkVfTUFUQ0hfQ09OVEVYVCBzcmVfdW1hdGNoX2NvbnRleHQKICNkZWZpbmUgU1JFX1NFQVJDSCBzcmVfdXNlYXJjaAotI2RlZmluZSBTUkVfTElURVJBTF9URU1QTEFURSBzcmVfdWxpdGVyYWxfdGVtcGxhdGUKLSNlbmRpZgogCiAjZW5kaWYgLyogU1JFX1JFQ1VSU0lWRSAqLwogCkBAIC0zMjcsNyArMzA0LDcgQEAKICAgIHNldHRpbmdzICovCiAKIExPQ0FMKGludCkKLVNSRV9BVChTUkVfU1RBVEUqIHN0YXRlLCBTUkVfQ0hBUiogcHRyLCBTUkVfQ09ERSBhdCkKK1NSRV9BVChTUkVfU1RBVEUqIHN0YXRlLCBjaGFyKiBwdHIsIFNSRV9DT0RFIGF0KQogewogICAgIC8qIGNoZWNrIGlmIHBvaW50ZXIgaXMgYXQgZ2l2ZW4gcG9zaXRpb24gKi8KIApAQCAtMzQxLDE2ICszMTgsMTYgQEAKIAogICAgIGNhc2UgU1JFX0FUX0JFR0lOTklOR19MSU5FOgogICAgICAgICByZXR1cm4gKCh2b2lkKikgcHRyID09IHN0YXRlLT5iZWdpbm5pbmcgfHwKLSAgICAgICAgICAgICAgICBTUkVfSVNfTElORUJSRUFLKChpbnQpIHB0clstMV0pKTsKKyAgICAgICAgICAgICAgICBTUkVfSVNfTElORUJSRUFLKChpbnQpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIC0xKSkpOwogCiAgICAgY2FzZSBTUkVfQVRfRU5EOgotICAgICAgICByZXR1cm4gKCgodm9pZCopIChwdHIrMSkgPT0gc3RhdGUtPmVuZCAmJgotICAgICAgICAgICAgICAgICBTUkVfSVNfTElORUJSRUFLKChpbnQpIHB0clswXSkpIHx8CisgICAgICAgIHJldHVybiAoKCh2b2lkKikgKHB0citzdGF0ZS0+Y2hhcnNpemUpID09IHN0YXRlLT5lbmQgJiYKKyAgICAgICAgICAgICAgICAgU1JFX0lTX0xJTkVCUkVBSygoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSkpIHx8CiAgICAgICAgICAgICAgICAgKCh2b2lkKikgcHRyID09IHN0YXRlLT5lbmQpKTsKIAogICAgIGNhc2UgU1JFX0FUX0VORF9MSU5FOgogICAgICAgICByZXR1cm4gKCh2b2lkKikgcHRyID09IHN0YXRlLT5lbmQgfHwKLSAgICAgICAgICAgICAgICBTUkVfSVNfTElORUJSRUFLKChpbnQpIHB0clswXSkpOworICAgICAgICAgICAgICAgIFNSRV9JU19MSU5FQlJFQUsoKGludCkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgMCkpKTsKIAogICAgIGNhc2UgU1JFX0FUX0VORF9TVFJJTkc6CiAgICAgICAgIHJldHVybiAoKHZvaWQqKSBwdHIgPT0gc3RhdGUtPmVuZCk7CkBAIC0zNTksNTcgKzMzNiw1NSBAQAogICAgICAgICBpZiAoc3RhdGUtPmJlZ2lubmluZyA9PSBzdGF0ZS0+ZW5kKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIHRoYXRwID0gKCh2b2lkKikgcHRyID4gc3RhdGUtPmJlZ2lubmluZykgPwotICAgICAgICAgICAgU1JFX0lTX1dPUkQoKGludCkgcHRyWy0xXSkgOiAwOworICAgICAgICAgICAgU1JFX0lTX1dPUkQoKGludCkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgLTEpKSA6IDA7CiAgICAgICAgIHRoaXNwID0gKCh2b2lkKikgcHRyIDwgc3RhdGUtPmVuZCkgPwotICAgICAgICAgICAgU1JFX0lTX1dPUkQoKGludCkgcHRyWzBdKSA6IDA7CisgICAgICAgICAgICBTUkVfSVNfV09SRCgoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSkgOiAwOwogICAgICAgICByZXR1cm4gdGhpc3AgIT0gdGhhdHA7CiAKICAgICBjYXNlIFNSRV9BVF9OT05fQk9VTkRBUlk6CiAgICAgICAgIGlmIChzdGF0ZS0+YmVnaW5uaW5nID09IHN0YXRlLT5lbmQpCiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgdGhhdHAgPSAoKHZvaWQqKSBwdHIgPiBzdGF0ZS0+YmVnaW5uaW5nKSA/Ci0gICAgICAgICAgICBTUkVfSVNfV09SRCgoaW50KSBwdHJbLTFdKSA6IDA7CisgICAgICAgICAgICBTUkVfSVNfV09SRCgoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAtMSkpIDogMDsKICAgICAgICAgdGhpc3AgPSAoKHZvaWQqKSBwdHIgPCBzdGF0ZS0+ZW5kKSA/Ci0gICAgICAgICAgICBTUkVfSVNfV09SRCgoaW50KSBwdHJbMF0pIDogMDsKKyAgICAgICAgICAgIFNSRV9JU19XT1JEKChpbnQpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApKSA6IDA7CiAgICAgICAgIHJldHVybiB0aGlzcCA9PSB0aGF0cDsKIAogICAgIGNhc2UgU1JFX0FUX0xPQ19CT1VOREFSWToKICAgICAgICAgaWYgKHN0YXRlLT5iZWdpbm5pbmcgPT0gc3RhdGUtPmVuZCkKICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB0aGF0cCA9ICgodm9pZCopIHB0ciA+IHN0YXRlLT5iZWdpbm5pbmcpID8KLSAgICAgICAgICAgIFNSRV9MT0NfSVNfV09SRCgoaW50KSBwdHJbLTFdKSA6IDA7CisgICAgICAgICAgICBTUkVfTE9DX0lTX1dPUkQoKGludCkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgLTEpKSA6IDA7CiAgICAgICAgIHRoaXNwID0gKCh2b2lkKikgcHRyIDwgc3RhdGUtPmVuZCkgPwotICAgICAgICAgICAgU1JFX0xPQ19JU19XT1JEKChpbnQpIHB0clswXSkgOiAwOworICAgICAgICAgICAgU1JFX0xPQ19JU19XT1JEKChpbnQpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApKSA6IDA7CiAgICAgICAgIHJldHVybiB0aGlzcCAhPSB0aGF0cDsKIAogICAgIGNhc2UgU1JFX0FUX0xPQ19OT05fQk9VTkRBUlk6CiAgICAgICAgIGlmIChzdGF0ZS0+YmVnaW5uaW5nID09IHN0YXRlLT5lbmQpCiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgdGhhdHAgPSAoKHZvaWQqKSBwdHIgPiBzdGF0ZS0+YmVnaW5uaW5nKSA/Ci0gICAgICAgICAgICBTUkVfTE9DX0lTX1dPUkQoKGludCkgcHRyWy0xXSkgOiAwOworICAgICAgICAgICAgU1JFX0xPQ19JU19XT1JEKChpbnQpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIC0xKSkgOiAwOwogICAgICAgICB0aGlzcCA9ICgodm9pZCopIHB0ciA8IHN0YXRlLT5lbmQpID8KLSAgICAgICAgICAgIFNSRV9MT0NfSVNfV09SRCgoaW50KSBwdHJbMF0pIDogMDsKKyAgICAgICAgICAgIFNSRV9MT0NfSVNfV09SRCgoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSkgOiAwOwogICAgICAgICByZXR1cm4gdGhpc3AgPT0gdGhhdHA7CiAKLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKICAgICBjYXNlIFNSRV9BVF9VTklfQk9VTkRBUlk6CiAgICAgICAgIGlmIChzdGF0ZS0+YmVnaW5uaW5nID09IHN0YXRlLT5lbmQpCiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgdGhhdHAgPSAoKHZvaWQqKSBwdHIgPiBzdGF0ZS0+YmVnaW5uaW5nKSA/Ci0gICAgICAgICAgICBTUkVfVU5JX0lTX1dPUkQoKGludCkgcHRyWy0xXSkgOiAwOworICAgICAgICAgICAgU1JFX1VOSV9JU19XT1JEKChpbnQpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIC0xKSkgOiAwOwogICAgICAgICB0aGlzcCA9ICgodm9pZCopIHB0ciA8IHN0YXRlLT5lbmQpID8KLSAgICAgICAgICAgIFNSRV9VTklfSVNfV09SRCgoaW50KSBwdHJbMF0pIDogMDsKKyAgICAgICAgICAgIFNSRV9VTklfSVNfV09SRCgoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSkgOiAwOwogICAgICAgICByZXR1cm4gdGhpc3AgIT0gdGhhdHA7CiAKICAgICBjYXNlIFNSRV9BVF9VTklfTk9OX0JPVU5EQVJZOgogICAgICAgICBpZiAoc3RhdGUtPmJlZ2lubmluZyA9PSBzdGF0ZS0+ZW5kKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIHRoYXRwID0gKCh2b2lkKikgcHRyID4gc3RhdGUtPmJlZ2lubmluZykgPwotICAgICAgICAgICAgU1JFX1VOSV9JU19XT1JEKChpbnQpIHB0clstMV0pIDogMDsKKyAgICAgICAgICAgIFNSRV9VTklfSVNfV09SRCgoaW50KSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAtMSkpIDogMDsKICAgICAgICAgdGhpc3AgPSAoKHZvaWQqKSBwdHIgPCBzdGF0ZS0+ZW5kKSA/Ci0gICAgICAgICAgICBTUkVfVU5JX0lTX1dPUkQoKGludCkgcHRyWzBdKSA6IDA7CisgICAgICAgICAgICBTUkVfVU5JX0lTX1dPUkQoKGludCkgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgMCkpIDogMDsKICAgICAgICAgcmV0dXJuIHRoaXNwID09IHRoYXRwOwotI2VuZGlmCiAKICAgICB9CiAKQEAgLTQ3Niw3ICs0NTEsNyBAQAogICAgICAgICAgICAgY291bnQgPSAqKHNldCsrKTsKIAogICAgICAgICAgICAgaWYgKHNpemVvZihTUkVfQ09ERSkgPT0gMikgewotICAgICAgICAgICAgICAgIGJsb2NrID0gKCh1bnNpZ25lZCBjaGFyKilzZXQpW2NoID4+IDhdOworICAgICAgICAgICAgICAgIGJsb2NrID0gKChjaGFyKilzZXQpW2NoID4+IDhdOwogICAgICAgICAgICAgICAgIHNldCArPSAxMjg7CiAgICAgICAgICAgICAgICAgaWYgKHNldFtibG9jayoxNiArICgoY2ggJiAyNTUpPj40KV0gJiAoMSA8PCAoY2ggJiAxNSkpKQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2s7CkBAIC00ODYsNyArNDYxLDcgQEAKICAgICAgICAgICAgICAgICAvKiAhKGMgJiB+TikgPT0gKGMgPCBOKzEpIGZvciBhbnkgdW5zaWduZWQgYywgdGhpcyBhdm9pZHMKICAgICAgICAgICAgICAgICAgKiB3YXJuaW5ncyB3aGVuIGMncyB0eXBlIHN1cHBvcnRzIG9ubHkgbnVtYmVycyA8IE4rMSAqLwogICAgICAgICAgICAgICAgIGlmICghKGNoICYgfjY1NTM1KSkKLSAgICAgICAgICAgICAgICAgICAgYmxvY2sgPSAoKHVuc2lnbmVkIGNoYXIqKXNldClbY2ggPj4gOF07CisgICAgICAgICAgICAgICAgICAgIGJsb2NrID0gKChjaGFyKilzZXQpW2NoID4+IDhdOwogICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICAgYmxvY2sgPSAtMTsKICAgICAgICAgICAgICAgICBzZXQgKz0gNjQ7CkBAIC01MTIsMjggKzQ4NywyOSBAQAogU1JFX0NPVU5UKFNSRV9TVEFURSogc3RhdGUsIFNSRV9DT0RFKiBwYXR0ZXJuLCBQeV9zc2l6ZV90IG1heGNvdW50KQogewogICAgIFNSRV9DT0RFIGNocjsKLSAgICBTUkVfQ0hBUiogcHRyID0gKFNSRV9DSEFSICopc3RhdGUtPnB0cjsKLSAgICBTUkVfQ0hBUiogZW5kID0gKFNSRV9DSEFSICopc3RhdGUtPmVuZDsKKyAgICBjaGFyKiBwdHIgPSAoY2hhciAqKXN0YXRlLT5wdHI7CisgICAgY2hhciogZW5kID0gKGNoYXIgKilzdGF0ZS0+ZW5kOwogICAgIFB5X3NzaXplX3QgaTsKIAogICAgIC8qIGFkanVzdCBlbmQgKi8KICAgICBpZiAobWF4Y291bnQgPCBlbmQgLSBwdHIgJiYgbWF4Y291bnQgIT0gNjU1MzUpCi0gICAgICAgIGVuZCA9IHB0ciArIG1heGNvdW50OworICAgICAgICBlbmQgPSBwdHIgKyBtYXhjb3VudCpzdGF0ZS0+Y2hhcnNpemU7CiAKICAgICBzd2l0Y2ggKHBhdHRlcm5bMF0pIHsKIAogICAgIGNhc2UgU1JFX09QX0lOOgogICAgICAgICAvKiByZXBlYXRlZCBzZXQgKi8KICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8Q09VTlQgSU5cbiIsIHBhdHRlcm4sIHB0cikpOwotICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmIFNSRV9DSEFSU0VUKHBhdHRlcm4gKyAyLCAqcHRyKSkKLSAgICAgICAgICAgIHB0cisrOworICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmCisgICAgICAgICAgICAgICBTUkVfQ0hBUlNFVChwYXR0ZXJuICsgMiwgU1JFX0NIQVJHRVQoc3RhdGUsIHB0ciwgMCkpKQorICAgICAgICAgICAgcHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIFNSRV9PUF9BTlk6CiAgICAgICAgIC8qIHJlcGVhdGVkIGRvdCB3aWxkY2FyZC4gKi8KICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8Q09VTlQgQU5ZXG4iLCBwYXR0ZXJuLCBwdHIpKTsKLSAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiAhU1JFX0lTX0xJTkVCUkVBSygqcHRyKSkKLSAgICAgICAgICAgIHB0cisrOworICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmICFTUkVfSVNfTElORUJSRUFLKFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApKSkKKyAgICAgICAgICAgIHB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBTUkVfT1BfQU5ZX0FMTDoKQEAgLTU0NywzOCArNTIzLDM4IEBACiAgICAgICAgIC8qIHJlcGVhdGVkIGxpdGVyYWwgKi8KICAgICAgICAgY2hyID0gcGF0dGVyblsxXTsKICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8Q09VTlQgTElURVJBTCAlZFxuIiwgcGF0dGVybiwgcHRyLCBjaHIpKTsKLSAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiAoU1JFX0NPREUpICpwdHIgPT0gY2hyKQotICAgICAgICAgICAgcHRyKys7CisgICAgICAgIHdoaWxlIChwdHIgPCBlbmQgJiYgKFNSRV9DT0RFKSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSA9PSBjaHIpCisgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICBicmVhazsKIAogICAgIGNhc2UgU1JFX09QX0xJVEVSQUxfSUdOT1JFOgogICAgICAgICAvKiByZXBlYXRlZCBsaXRlcmFsICovCiAgICAgICAgIGNociA9IHBhdHRlcm5bMV07CiAgICAgICAgIFRSQUNFKCgifCVwfCVwfENPVU5UIExJVEVSQUxfSUdOT1JFICVkXG4iLCBwYXR0ZXJuLCBwdHIsIGNocikpOwotICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmIChTUkVfQ09ERSkgc3RhdGUtPmxvd2VyKCpwdHIpID09IGNocikKLSAgICAgICAgICAgIHB0cisrOworICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmIChTUkVfQ09ERSkgc3RhdGUtPmxvd2VyKFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApKSA9PSBjaHIpCisgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICBicmVhazsKIAogICAgIGNhc2UgU1JFX09QX05PVF9MSVRFUkFMOgogICAgICAgICAvKiByZXBlYXRlZCBub24tbGl0ZXJhbCAqLwogICAgICAgICBjaHIgPSBwYXR0ZXJuWzFdOwogICAgICAgICBUUkFDRSgoInwlcHwlcHxDT1VOVCBOT1RfTElURVJBTCAlZFxuIiwgcGF0dGVybiwgcHRyLCBjaHIpKTsKLSAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiAoU1JFX0NPREUpICpwdHIgIT0gY2hyKQotICAgICAgICAgICAgcHRyKys7CisgICAgICAgIHdoaWxlIChwdHIgPCBlbmQgJiYgKFNSRV9DT0RFKSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCAwKSAhPSBjaHIpCisgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICBicmVhazsKIAogICAgIGNhc2UgU1JFX09QX05PVF9MSVRFUkFMX0lHTk9SRToKICAgICAgICAgLyogcmVwZWF0ZWQgbm9uLWxpdGVyYWwgKi8KICAgICAgICAgY2hyID0gcGF0dGVyblsxXTsKICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8Q09VTlQgTk9UX0xJVEVSQUxfSUdOT1JFICVkXG4iLCBwYXR0ZXJuLCBwdHIsIGNocikpOwotICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmIChTUkVfQ09ERSkgc3RhdGUtPmxvd2VyKCpwdHIpICE9IGNocikKLSAgICAgICAgICAgIHB0cisrOworICAgICAgICB3aGlsZSAocHRyIDwgZW5kICYmIChTUkVfQ09ERSkgc3RhdGUtPmxvd2VyKFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApKSAhPSBjaHIpCisgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICBicmVhazsKIAogICAgIGRlZmF1bHQ6CiAgICAgICAgIC8qIHJlcGVhdGVkIHNpbmdsZSBjaGFyYWN0ZXIgcGF0dGVybiAqLwogICAgICAgICBUUkFDRSgoInwlcHwlcHxDT1VOVCBTVUJQQVRURVJOXG4iLCBwYXR0ZXJuLCBwdHIpKTsKLSAgICAgICAgd2hpbGUgKChTUkVfQ0hBUiopIHN0YXRlLT5wdHIgPCBlbmQpIHsKKyAgICAgICAgd2hpbGUgKChjaGFyKikgc3RhdGUtPnB0ciA8IGVuZCkgewogICAgICAgICAgICAgaSA9IFNSRV9NQVRDSChzdGF0ZSwgcGF0dGVybik7CiAgICAgICAgICAgICBpZiAoaSA8IDApCiAgICAgICAgICAgICAgICAgcmV0dXJuIGk7CkBAIC01ODYsMTIgKzU2MiwxMiBAQAogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIFRSQUNFKCgifCVwfCVwfENPVU5UICVkXG4iLCBwYXR0ZXJuLCBwdHIsCi0gICAgICAgICAgICAgICAoU1JFX0NIQVIqKSBzdGF0ZS0+cHRyIC0gcHRyKSk7Ci0gICAgICAgIHJldHVybiAoU1JFX0NIQVIqKSBzdGF0ZS0+cHRyIC0gcHRyOworICAgICAgICAgICAgICAgKChjaGFyKilzdGF0ZS0+cHRyIC0gcHRyKS9zdGF0ZS0+Y2hhcnNpemUpKTsKKyAgICAgICAgcmV0dXJuICgoY2hhciopc3RhdGUtPnB0ciAtIHB0cikvc3RhdGUtPmNoYXJzaXplOwogICAgIH0KIAotICAgIFRSQUNFKCgifCVwfCVwfENPVU5UICVkXG4iLCBwYXR0ZXJuLCBwdHIsIHB0ciAtIChTUkVfQ0hBUiopIHN0YXRlLT5wdHIpKTsKLSAgICByZXR1cm4gcHRyIC0gKFNSRV9DSEFSKikgc3RhdGUtPnB0cjsKKyAgICBUUkFDRSgoInwlcHwlcHxDT1VOVCAlZFxuIiwgcGF0dGVybiwgcHRyLCAocHRyIC0gKGNoYXIqKSBzdGF0ZS0+cHRyKS9zdGF0ZS0+Y2hhcnNpemUpKTsKKyAgICByZXR1cm4gKHB0ciAtIChjaGFyKikgc3RhdGUtPnB0cikvc3RhdGUtPmNoYXJzaXplOwogfQogCiAjaWYgMCAvKiBub3QgdXNlZCBpbiB0aGlzIHJlbGVhc2UgKi8KQEAgLTYwMiw4ICs1NzgsOCBAQAogICAgICAgIHJldHVybnMgdGhlIG51bWJlciBvZiBTUkVfQ09ERSBvYmplY3RzIHRvIHNraXAgaWYgc3VjY2Vzc2Z1bCwgMAogICAgICAgIGlmIG5vIG1hdGNoICovCiAKLSAgICBTUkVfQ0hBUiogZW5kID0gc3RhdGUtPmVuZDsKLSAgICBTUkVfQ0hBUiogcHRyID0gc3RhdGUtPnB0cjsKKyAgICBjaGFyKiBlbmQgPSBzdGF0ZS0+ZW5kOworICAgIGNoYXIqIHB0ciA9IHN0YXRlLT5wdHI7CiAgICAgUHlfc3NpemVfdCBpOwogCiAgICAgLyogY2hlY2sgbWluaW1hbCBsZW5ndGggKi8KQEAgLTYxNCw3ICs1OTAsNyBAQAogICAgIGlmIChwYXR0ZXJuWzJdICYgU1JFX0lORk9fUFJFRklYICYmIHBhdHRlcm5bNV0gPiAxKSB7CiAgICAgICAgIC8qIDxsZW5ndGg+IDxza2lwPiA8cHJlZml4IGRhdGE+IDxvdmVybGFwIGRhdGE+ICovCiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBwYXR0ZXJuWzVdOyBpKyspCi0gICAgICAgICAgICBpZiAoKFNSRV9DT0RFKSBwdHJbaV0gIT0gcGF0dGVybls3ICsgaV0pCisgICAgICAgICAgICBpZiAoKFNSRV9DT0RFKSBTUkVfQ0hBUkdFVChzdGF0ZSwgcHRyLCBpKSAhPSBwYXR0ZXJuWzcgKyBpXSkKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgcmV0dXJuIHBhdHRlcm5bMF0gKyAyICogcGF0dGVybls2XTsKICAgICB9CkBAIC03ODMsNyArNzU5LDcgQEAKIHR5cGVkZWYgc3RydWN0IHsKICAgICBQeV9zc2l6ZV90IGxhc3RfY3R4X3BvczsKICAgICBQeV9zc2l6ZV90IGp1bXA7Ci0gICAgU1JFX0NIQVIqIHB0cjsKKyAgICBjaGFyKiBwdHI7CiAgICAgU1JFX0NPREUqIHBhdHRlcm47CiAgICAgUHlfc3NpemVfdCBjb3VudDsKICAgICBQeV9zc2l6ZV90IGxhc3RtYXJrOwpAQCAtNzk5LDcgKzc3NSw3IEBACiBMT0NBTChQeV9zc2l6ZV90KQogU1JFX01BVENIKFNSRV9TVEFURSogc3RhdGUsIFNSRV9DT0RFKiBwYXR0ZXJuKQogewotICAgIFNSRV9DSEFSKiBlbmQgPSAoU1JFX0NIQVIgKilzdGF0ZS0+ZW5kOworICAgIGNoYXIqIGVuZCA9IChjaGFyKilzdGF0ZS0+ZW5kOwogICAgIFB5X3NzaXplX3QgYWxsb2NfcG9zLCBjdHhfcG9zID0gLTE7CiAgICAgUHlfc3NpemVfdCBpLCByZXQgPSAwOwogICAgIFB5X3NzaXplX3QganVtcDsKQEAgLTgxOCwxMiArNzk0LDEyIEBACiAKIGVudHJhbmNlOgogCi0gICAgY3R4LT5wdHIgPSAoU1JFX0NIQVIgKilzdGF0ZS0+cHRyOworICAgIGN0eC0+cHRyID0gKGNoYXIgKilzdGF0ZS0+cHRyOwogCiAgICAgaWYgKGN0eC0+cGF0dGVyblswXSA9PSBTUkVfT1BfSU5GTykgewogICAgICAgICAvKiBvcHRpbWl6YXRpb24gaW5mbyBibG9jayAqLwogICAgICAgICAvKiA8SU5GTz4gPDE9c2tpcD4gPDI9ZmxhZ3M+IDwzPW1pbj4gLi4uICovCi0gICAgICAgIGlmIChjdHgtPnBhdHRlcm5bM10gJiYgKGVuZCAtIGN0eC0+cHRyKSA8IGN0eC0+cGF0dGVyblszXSkgeworICAgICAgICBpZiAoY3R4LT5wYXR0ZXJuWzNdICYmIChlbmQgLSBjdHgtPnB0cikvc3RhdGUtPmNoYXJzaXplIDwgY3R4LT5wYXR0ZXJuWzNdKSB7CiAgICAgICAgICAgICBUUkFDRSgoInJlamVjdCAoZ290ICVkIGNoYXJzLCBuZWVkICVkKVxuIiwKICAgICAgICAgICAgICAgICAgICAoZW5kIC0gY3R4LT5wdHIpLCBjdHgtPnBhdHRlcm5bM10pKTsKICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwpAQCAtODY1LDEwICs4NDEsMTAgQEAKICAgICAgICAgICAgIC8qIDxMSVRFUkFMPiA8Y29kZT4gKi8KICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfExJVEVSQUwgJWRcbiIsIGN0eC0+cGF0dGVybiwKICAgICAgICAgICAgICAgICAgICBjdHgtPnB0ciwgKmN0eC0+cGF0dGVybikpOwotICAgICAgICAgICAgaWYgKGN0eC0+cHRyID49IGVuZCB8fCAoU1JFX0NPREUpIGN0eC0+cHRyWzBdICE9IGN0eC0+cGF0dGVyblswXSkKKyAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQgfHwgKFNSRV9DT0RFKSBTUkVfQ0hBUkdFVChzdGF0ZSwgY3R4LT5wdHIsIDApICE9IGN0eC0+cGF0dGVyblswXSkKICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKICAgICAgICAgICAgIGN0eC0+cGF0dGVybisrOwotICAgICAgICAgICAgY3R4LT5wdHIrKzsKKyAgICAgICAgICAgIGN0eC0+cHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgU1JFX09QX05PVF9MSVRFUkFMOgpAQCAtODc2LDEwICs4NTIsMTAgQEAKICAgICAgICAgICAgIC8qIDxOT1RfTElURVJBTD4gPGNvZGU+ICovCiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxOT1RfTElURVJBTCAlZFxuIiwgY3R4LT5wYXR0ZXJuLAogICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyLCAqY3R4LT5wYXR0ZXJuKSk7Ci0gICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kIHx8IChTUkVfQ09ERSkgY3R4LT5wdHJbMF0gPT0gY3R4LT5wYXR0ZXJuWzBdKQorICAgICAgICAgICAgaWYgKGN0eC0+cHRyID49IGVuZCB8fCAoU1JFX0NPREUpIFNSRV9DSEFSR0VUKHN0YXRlLCBjdHgtPnB0ciwgMCkgPT0gY3R4LT5wYXR0ZXJuWzBdKQogICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwogICAgICAgICAgICAgY3R4LT5wYXR0ZXJuKys7Ci0gICAgICAgICAgICBjdHgtPnB0cisrOworICAgICAgICAgICAgY3R4LT5wdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBTUkVfT1BfU1VDQ0VTUzoKQEAgLTkwMiwxOSArODc4LDE5IEBACiAgICAgICAgICAgICAvKiA8Q0FURUdPUlk+IDxjb2RlPiAqLwogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8Q0FURUdPUlkgJWRcbiIsIGN0eC0+cGF0dGVybiwKICAgICAgICAgICAgICAgICAgICBjdHgtPnB0ciwgKmN0eC0+cGF0dGVybikpOwotICAgICAgICAgICAgaWYgKGN0eC0+cHRyID49IGVuZCB8fCAhc3JlX2NhdGVnb3J5KGN0eC0+cGF0dGVyblswXSwgY3R4LT5wdHJbMF0pKQorICAgICAgICAgICAgaWYgKGN0eC0+cHRyID49IGVuZCB8fCAhc3JlX2NhdGVnb3J5KGN0eC0+cGF0dGVyblswXSwgU1JFX0NIQVJHRVQoc3RhdGUsIGN0eC0+cHRyLCAwKSkpCiAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7CiAgICAgICAgICAgICBjdHgtPnBhdHRlcm4rKzsKLSAgICAgICAgICAgIGN0eC0+cHRyKys7CisgICAgICAgICAgICBjdHgtPnB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIFNSRV9PUF9BTlk6CiAgICAgICAgICAgICAvKiBtYXRjaCBhbnl0aGluZyAoZXhjZXB0IGEgbmV3bGluZSkgKi8KICAgICAgICAgICAgIC8qIDxBTlk+ICovCiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxBTllcbiIsIGN0eC0+cGF0dGVybiwgY3R4LT5wdHIpKTsKLSAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQgfHwgU1JFX0lTX0xJTkVCUkVBSyhjdHgtPnB0clswXSkpCi0gICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7Ci0gICAgICAgICAgICBjdHgtPnB0cisrOworICAgICAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQgfHwgU1JFX0lTX0xJTkVCUkVBSyhTUkVfQ0hBUkdFVChzdGF0ZSwgY3R4LT5wdHIsIDApKSkKKyAgICAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7CisgICAgICAgICAgICBjdHgtPnB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIFNSRV9PUF9BTllfQUxMOgpAQCAtOTIzLDQ3ICs4OTksNDcgQEAKICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfEFOWV9BTExcbiIsIGN0eC0+cGF0dGVybiwgY3R4LT5wdHIpKTsKICAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQpCiAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7Ci0gICAgICAgICAgICBjdHgtPnB0cisrOworICAgICAgICAgICAgY3R4LT5wdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBTUkVfT1BfSU46CiAgICAgICAgICAgICAvKiBtYXRjaCBzZXQgbWVtYmVyIChvciBub25fbWVtYmVyKSAqLwogICAgICAgICAgICAgLyogPElOPiA8c2tpcD4gPHNldD4gKi8KICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfElOXG4iLCBjdHgtPnBhdHRlcm4sIGN0eC0+cHRyKSk7Ci0gICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kIHx8ICFTUkVfQ0hBUlNFVChjdHgtPnBhdHRlcm4gKyAxLCAqY3R4LT5wdHIpKQotICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOworICAgICAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQgfHwgIVNSRV9DSEFSU0VUKGN0eC0+cGF0dGVybiArIDEsIFNSRV9DSEFSR0VUKHN0YXRlLCBjdHgtPnB0ciwgMCkpKQorICAgICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKICAgICAgICAgICAgIGN0eC0+cGF0dGVybiArPSBjdHgtPnBhdHRlcm5bMF07Ci0gICAgICAgICAgICBjdHgtPnB0cisrOworICAgICAgICAgICAgY3R4LT5wdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSBTUkVfT1BfTElURVJBTF9JR05PUkU6CiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxMSVRFUkFMX0lHTk9SRSAlZFxuIiwKICAgICAgICAgICAgICAgICAgICBjdHgtPnBhdHRlcm4sIGN0eC0+cHRyLCBjdHgtPnBhdHRlcm5bMF0pKTsKICAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQgfHwKLSAgICAgICAgICAgICAgICBzdGF0ZS0+bG93ZXIoKmN0eC0+cHRyKSAhPSBzdGF0ZS0+bG93ZXIoKmN0eC0+cGF0dGVybikpCisgICAgICAgICAgICAgICAgc3RhdGUtPmxvd2VyKFNSRV9DSEFSR0VUKHN0YXRlLCBjdHgtPnB0ciwgMCkpICE9IHN0YXRlLT5sb3dlcigqY3R4LT5wYXR0ZXJuKSkKICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKICAgICAgICAgICAgIGN0eC0+cGF0dGVybisrOwotICAgICAgICAgICAgY3R4LT5wdHIrKzsKKyAgICAgICAgICAgIGN0eC0+cHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgU1JFX09QX05PVF9MSVRFUkFMX0lHTk9SRToKICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfE5PVF9MSVRFUkFMX0lHTk9SRSAlZFxuIiwKICAgICAgICAgICAgICAgICAgICBjdHgtPnBhdHRlcm4sIGN0eC0+cHRyLCAqY3R4LT5wYXR0ZXJuKSk7CiAgICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kIHx8Ci0gICAgICAgICAgICAgICAgc3RhdGUtPmxvd2VyKCpjdHgtPnB0cikgPT0gc3RhdGUtPmxvd2VyKCpjdHgtPnBhdHRlcm4pKQorICAgICAgICAgICAgICAgIHN0YXRlLT5sb3dlcihTUkVfQ0hBUkdFVChzdGF0ZSwgY3R4LT5wdHIsIDApKSA9PSBzdGF0ZS0+bG93ZXIoKmN0eC0+cGF0dGVybikpCiAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7CiAgICAgICAgICAgICBjdHgtPnBhdHRlcm4rKzsKLSAgICAgICAgICAgIGN0eC0+cHRyKys7CisgICAgICAgICAgICBjdHgtPnB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIFNSRV9PUF9JTl9JR05PUkU6CiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxJTl9JR05PUkVcbiIsIGN0eC0+cGF0dGVybiwgY3R4LT5wdHIpKTsKICAgICAgICAgICAgIGlmIChjdHgtPnB0ciA+PSBlbmQKICAgICAgICAgICAgICAgICB8fCAhU1JFX0NIQVJTRVQoY3R4LT5wYXR0ZXJuKzEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTUkVfQ09ERSlzdGF0ZS0+bG93ZXIoKmN0eC0+cHRyKSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChTUkVfQ09ERSlzdGF0ZS0+bG93ZXIoU1JFX0NIQVJHRVQoc3RhdGUsIGN0eC0+cHRyLCAwKSkpKQogICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwogICAgICAgICAgICAgY3R4LT5wYXR0ZXJuICs9IGN0eC0+cGF0dGVyblswXTsKLSAgICAgICAgICAgIGN0eC0+cHRyKys7CisgICAgICAgICAgICBjdHgtPnB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICBjYXNlIFNSRV9PUF9KVU1QOgpAQCAtOTg2LDExICs5NjIsMTEgQEAKICAgICAgICAgICAgIGZvciAoOyBjdHgtPnBhdHRlcm5bMF07IGN0eC0+cGF0dGVybiArPSBjdHgtPnBhdHRlcm5bMF0pIHsKICAgICAgICAgICAgICAgICBpZiAoY3R4LT5wYXR0ZXJuWzFdID09IFNSRV9PUF9MSVRFUkFMICYmCiAgICAgICAgICAgICAgICAgICAgIChjdHgtPnB0ciA+PSBlbmQgfHwKLSAgICAgICAgICAgICAgICAgICAgIChTUkVfQ09ERSkgKmN0eC0+cHRyICE9IGN0eC0+cGF0dGVyblsyXSkpCisgICAgICAgICAgICAgICAgICAgICAoU1JFX0NPREUpIFNSRV9DSEFSR0VUKHN0YXRlLCBjdHgtPnB0ciwgMCkgIT0gY3R4LT5wYXR0ZXJuWzJdKSkKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgaWYgKGN0eC0+cGF0dGVyblsxXSA9PSBTUkVfT1BfSU4gJiYKICAgICAgICAgICAgICAgICAgICAgKGN0eC0+cHRyID49IGVuZCB8fAotICAgICAgICAgICAgICAgICAgICAgIVNSRV9DSEFSU0VUKGN0eC0+cGF0dGVybiArIDMsIChTUkVfQ09ERSkgKmN0eC0+cHRyKSkpCisgICAgICAgICAgICAgICAgICAgICAhU1JFX0NIQVJTRVQoY3R4LT5wYXR0ZXJuICsgMywgKFNSRV9DT0RFKSBTUkVfQ0hBUkdFVChzdGF0ZSwgY3R4LT5wdHIsIDApKSkpCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIHN0YXRlLT5wdHIgPSBjdHgtPnB0cjsKICAgICAgICAgICAgICAgICBET19KVU1QKEpVTVBfQlJBTkNILCBqdW1wX2JyYW5jaCwgY3R4LT5wYXR0ZXJuKzEpOwpAQCAtMTAyMSw3ICs5OTcsNyBAQAogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8UkVQRUFUX09ORSAlZCAlZFxuIiwgY3R4LT5wYXR0ZXJuLCBjdHgtPnB0ciwKICAgICAgICAgICAgICAgICAgICBjdHgtPnBhdHRlcm5bMV0sIGN0eC0+cGF0dGVyblsyXSkpOwogCi0gICAgICAgICAgICBpZiAoY3R4LT5wdHIgKyBjdHgtPnBhdHRlcm5bMV0gPiBlbmQpCisgICAgICAgICAgICBpZiAoY3R4LT5wdHIgKyBzdGF0ZS0+Y2hhcnNpemUgKiBjdHgtPnBhdHRlcm5bMV0gPiBlbmQpCiAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7IC8qIGNhbm5vdCBtYXRjaCAqLwogCiAgICAgICAgICAgICBzdGF0ZS0+cHRyID0gY3R4LT5wdHI7CkBAIC0xMDMwLDcgKzEwMDYsNyBAQAogICAgICAgICAgICAgUkVUVVJOX09OX0VSUk9SKHJldCk7CiAgICAgICAgICAgICBEQVRBX0xPT0tVUF9BVChTUkVfTUFUQ0hfQ09OVEVYVCwgY3R4LCBjdHhfcG9zKTsKICAgICAgICAgICAgIGN0eC0+Y291bnQgPSByZXQ7Ci0gICAgICAgICAgICBjdHgtPnB0ciArPSBjdHgtPmNvdW50OworICAgICAgICAgICAgY3R4LT5wdHIgKz0gc3RhdGUtPmNoYXJzaXplICogY3R4LT5jb3VudDsKIAogICAgICAgICAgICAgLyogd2hlbiB3ZSBhcnJpdmUgaGVyZSwgY291bnQgY29udGFpbnMgdGhlIG51bWJlciBvZgogICAgICAgICAgICAgICAgbWF0Y2hlcywgYW5kIGN0eC0+cHRyIHBvaW50cyB0byB0aGUgdGFpbCBvZiB0aGUgdGFyZ2V0CkBAIC0xMDU0LDggKzEwMzAsOSBAQAogICAgICAgICAgICAgICAgIGN0eC0+dS5jaHIgPSBjdHgtPnBhdHRlcm5bY3R4LT5wYXR0ZXJuWzBdKzFdOwogICAgICAgICAgICAgICAgIGZvciAoOzspIHsKICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKGN0eC0+Y291bnQgPj0gKFB5X3NzaXplX3QpIGN0eC0+cGF0dGVyblsxXSAmJgotICAgICAgICAgICAgICAgICAgICAgICAgICAgKGN0eC0+cHRyID49IGVuZCB8fCAqY3R4LT5wdHIgIT0gY3R4LT51LmNocikpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyLS07CisgICAgICAgICAgICAgICAgICAgICAgICAgICAoY3R4LT5wdHIgPj0gZW5kIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1JFX0NIQVJHRVQoc3RhdGUsIGN0eC0+cHRyLCAwKSAhPSBjdHgtPnUuY2hyKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgY3R4LT5wdHIgLT0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgICAgICAgICAgICAgY3R4LT5jb3VudC0tOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIGlmIChjdHgtPmNvdW50IDwgKFB5X3NzaXplX3QpIGN0eC0+cGF0dGVyblsxXSkKQEAgLTEwNzAsNyArMTA0Nyw3IEBACiAKICAgICAgICAgICAgICAgICAgICAgTEFTVE1BUktfUkVTVE9SRSgpOwogCi0gICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyLS07CisgICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyIC09IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgICAgICAgICAgY3R4LT5jb3VudC0tOwogICAgICAgICAgICAgICAgIH0KIApAQCAtMTA4NCw3ICsxMDYxLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFJFVFVSTl9PTl9FUlJPUihyZXQpOwogICAgICAgICAgICAgICAgICAgICAgICAgUkVUVVJOX1NVQ0NFU1M7CiAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgY3R4LT5wdHItLTsKKyAgICAgICAgICAgICAgICAgICAgY3R4LT5wdHIgLT0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgICAgICAgICBjdHgtPmNvdW50LS07CiAgICAgICAgICAgICAgICAgICAgIExBU1RNQVJLX1JFU1RPUkUoKTsKICAgICAgICAgICAgICAgICB9CkBAIC0xMTA0LDcgKzEwODEsNyBAQAogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8TUlOX1JFUEVBVF9PTkUgJWQgJWRcbiIsIGN0eC0+cGF0dGVybiwgY3R4LT5wdHIsCiAgICAgICAgICAgICAgICAgICAgY3R4LT5wYXR0ZXJuWzFdLCBjdHgtPnBhdHRlcm5bMl0pKTsKIAotICAgICAgICAgICAgaWYgKGN0eC0+cHRyICsgY3R4LT5wYXR0ZXJuWzFdID4gZW5kKQorICAgICAgICAgICAgaWYgKGN0eC0+cHRyICsgc3RhdGUtPmNoYXJzaXplICogY3R4LT5wYXR0ZXJuWzFdID4gZW5kKQogICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOyAvKiBjYW5ub3QgbWF0Y2ggKi8KIAogICAgICAgICAgICAgc3RhdGUtPnB0ciA9IGN0eC0+cHRyOwpAQCAtMTEyMSw3ICsxMDk4LDcgQEAKICAgICAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7CiAgICAgICAgICAgICAgICAgLyogYWR2YW5jZSBwYXN0IG1pbmltdW0gbWF0Y2hlcyBvZiByZXBlYXQgKi8KICAgICAgICAgICAgICAgICBjdHgtPmNvdW50ID0gcmV0OwotICAgICAgICAgICAgICAgIGN0eC0+cHRyICs9IGN0eC0+Y291bnQ7CisgICAgICAgICAgICAgICAgY3R4LT5wdHIgKz0gc3RhdGUtPmNoYXJzaXplICogY3R4LT5jb3VudDsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgaWYgKGN0eC0+cGF0dGVybltjdHgtPnBhdHRlcm5bMF1dID09IFNSRV9PUF9TVUNDRVNTKSB7CkBAIC0xMTQ4LDcgKzExMjUsNyBAQAogICAgICAgICAgICAgICAgICAgICBpZiAocmV0ID09IDApCiAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KHJldCA9PSAxKTsKLSAgICAgICAgICAgICAgICAgICAgY3R4LT5wdHIrKzsKKyAgICAgICAgICAgICAgICAgICAgY3R4LT5wdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgICAgICAgICBjdHgtPmNvdW50Kys7CiAgICAgICAgICAgICAgICAgICAgIExBU1RNQVJLX1JFU1RPUkUoKTsKICAgICAgICAgICAgICAgICB9CkBAIC0xMzIwLDE0ICsxMjk3LDE2IEBACiAgICAgICAgICAgICAgICAgaWYgKGdyb3VwcmVmID49IHN0YXRlLT5sYXN0bWFyaykgewogICAgICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKICAgICAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgICAgICBTUkVfQ0hBUiogcCA9IChTUkVfQ0hBUiopIHN0YXRlLT5tYXJrW2dyb3VwcmVmXTsKLSAgICAgICAgICAgICAgICAgICAgU1JFX0NIQVIqIGUgPSAoU1JFX0NIQVIqKSBzdGF0ZS0+bWFya1tncm91cHJlZisxXTsKKyAgICAgICAgICAgICAgICAgICAgY2hhciogcCA9IChjaGFyKikgc3RhdGUtPm1hcmtbZ3JvdXByZWZdOworICAgICAgICAgICAgICAgICAgICBjaGFyKiBlID0gKGNoYXIqKSBzdGF0ZS0+bWFya1tncm91cHJlZisxXTsKICAgICAgICAgICAgICAgICAgICAgaWYgKCFwIHx8ICFlIHx8IGUgPCBwKQogICAgICAgICAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7CiAgICAgICAgICAgICAgICAgICAgIHdoaWxlIChwIDwgZSkgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGN0eC0+cHRyID49IGVuZCB8fCAqY3R4LT5wdHIgIT0gKnApCisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1JFX0NIQVJHRVQoc3RhdGUsIGN0eC0+cHRyLCAwKSAhPSBTUkVfQ0hBUkdFVChzdGF0ZSwgcCwgMCkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUkVUVVJOX0ZBSUxVUkU7Ci0gICAgICAgICAgICAgICAgICAgICAgICBwKys7IGN0eC0+cHRyKys7CisgICAgICAgICAgICAgICAgICAgICAgICBwICs9IHN0YXRlLT5jaGFyc2l6ZTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KQEAgLTEzNDQsMTUgKzEzMjMsMTYgQEAKICAgICAgICAgICAgICAgICBpZiAoZ3JvdXByZWYgPj0gc3RhdGUtPmxhc3RtYXJrKSB7CiAgICAgICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgIFNSRV9DSEFSKiBwID0gKFNSRV9DSEFSKikgc3RhdGUtPm1hcmtbZ3JvdXByZWZdOwotICAgICAgICAgICAgICAgICAgICBTUkVfQ0hBUiogZSA9IChTUkVfQ0hBUiopIHN0YXRlLT5tYXJrW2dyb3VwcmVmKzFdOworICAgICAgICAgICAgICAgICAgICBjaGFyKiBwID0gKGNoYXIqKSBzdGF0ZS0+bWFya1tncm91cHJlZl07CisgICAgICAgICAgICAgICAgICAgIGNoYXIqIGUgPSAoY2hhciopIHN0YXRlLT5tYXJrW2dyb3VwcmVmKzFdOwogICAgICAgICAgICAgICAgICAgICBpZiAoIXAgfHwgIWUgfHwgZSA8IHApCiAgICAgICAgICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKHAgPCBlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY3R4LT5wdHIgPj0gZW5kIHx8Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUtPmxvd2VyKCpjdHgtPnB0cikgIT0gc3RhdGUtPmxvd2VyKCpwKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS0+bG93ZXIoU1JFX0NIQVJHRVQoc3RhdGUsIGN0eC0+cHRyLCAwKSkgIT0gc3RhdGUtPmxvd2VyKCpwKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSRVRVUk5fRkFJTFVSRTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHArKzsgY3R4LT5wdHIrKzsKKyAgICAgICAgICAgICAgICAgICAgICAgIHArKzsKKyAgICAgICAgICAgICAgICAgICAgICAgIGN0eC0+cHRyICs9IHN0YXRlLT5jaGFyc2l6ZTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KQEAgLTEzODYsNyArMTM2Niw3IEBACiAgICAgICAgICAgICAvKiA8QVNTRVJUPiA8c2tpcD4gPGJhY2s+IDxwYXR0ZXJuPiAqLwogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8QVNTRVJUICVkXG4iLCBjdHgtPnBhdHRlcm4sCiAgICAgICAgICAgICAgICAgICAgY3R4LT5wdHIsIGN0eC0+cGF0dGVyblsxXSkpOwotICAgICAgICAgICAgc3RhdGUtPnB0ciA9IGN0eC0+cHRyIC0gY3R4LT5wYXR0ZXJuWzFdOworICAgICAgICAgICAgc3RhdGUtPnB0ciA9IGN0eC0+cHRyIC0gc3RhdGUtPmNoYXJzaXplICogY3R4LT5wYXR0ZXJuWzFdOwogICAgICAgICAgICAgaWYgKHN0YXRlLT5wdHIgPCBzdGF0ZS0+YmVnaW5uaW5nKQogICAgICAgICAgICAgICAgIFJFVFVSTl9GQUlMVVJFOwogICAgICAgICAgICAgRE9fSlVNUChKVU1QX0FTU0VSVCwganVtcF9hc3NlcnQsIGN0eC0+cGF0dGVybisyKTsKQEAgLTEzOTksNyArMTM3OSw3IEBACiAgICAgICAgICAgICAvKiA8QVNTRVJUX05PVD4gPHNraXA+IDxiYWNrPiA8cGF0dGVybj4gKi8KICAgICAgICAgICAgIFRSQUNFKCgifCVwfCVwfEFTU0VSVF9OT1QgJWRcbiIsIGN0eC0+cGF0dGVybiwKICAgICAgICAgICAgICAgICAgICBjdHgtPnB0ciwgY3R4LT5wYXR0ZXJuWzFdKSk7Ci0gICAgICAgICAgICBzdGF0ZS0+cHRyID0gY3R4LT5wdHIgLSBjdHgtPnBhdHRlcm5bMV07CisgICAgICAgICAgICBzdGF0ZS0+cHRyID0gY3R4LT5wdHIgLSBzdGF0ZS0+Y2hhcnNpemUgKiBjdHgtPnBhdHRlcm5bMV07CiAgICAgICAgICAgICBpZiAoc3RhdGUtPnB0ciA+PSBzdGF0ZS0+YmVnaW5uaW5nKSB7CiAgICAgICAgICAgICAgICAgRE9fSlVNUChKVU1QX0FTU0VSVF9OT1QsIGp1bXBfYXNzZXJ0X25vdCwgY3R4LT5wYXR0ZXJuKzIpOwogICAgICAgICAgICAgICAgIGlmIChyZXQpIHsKQEAgLTE0ODEsOCArMTQ2MSw4IEBACiBMT0NBTChQeV9zc2l6ZV90KQogU1JFX1NFQVJDSChTUkVfU1RBVEUqIHN0YXRlLCBTUkVfQ09ERSogcGF0dGVybikKIHsKLSAgICBTUkVfQ0hBUiogcHRyID0gKFNSRV9DSEFSICopc3RhdGUtPnN0YXJ0OwotICAgIFNSRV9DSEFSKiBlbmQgPSAoU1JFX0NIQVIgKilzdGF0ZS0+ZW5kOworICAgIGNoYXIqIHB0ciA9IChjaGFyKilzdGF0ZS0+c3RhcnQ7CisgICAgY2hhciogZW5kID0gKGNoYXIqKXN0YXRlLT5lbmQ7CiAgICAgUHlfc3NpemVfdCBzdGF0dXMgPSAwOwogICAgIFB5X3NzaXplX3QgcHJlZml4X2xlbiA9IDA7CiAgICAgUHlfc3NpemVfdCBwcmVmaXhfc2tpcCA9IDA7CkBAIC0xNTAwLDkgKzE0ODAsOSBAQAogICAgICAgICBpZiAocGF0dGVyblszXSA+IDEpIHsKICAgICAgICAgICAgIC8qIGFkanVzdCBlbmQgcG9pbnQgKGJ1dCBtYWtlIHN1cmUgd2UgbGVhdmUgYXQgbGVhc3Qgb25lCiAgICAgICAgICAgICAgICBjaGFyYWN0ZXIgaW4gdGhlcmUsIHNvIGxpdGVyYWwgc2VhcmNoIHdpbGwgd29yaykgKi8KLSAgICAgICAgICAgIGVuZCAtPSBwYXR0ZXJuWzNdLTE7CisgICAgICAgICAgICBlbmQgLT0gKHBhdHRlcm5bM10tMSkgKiBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgICAgICBpZiAoZW5kIDw9IHB0cikKLSAgICAgICAgICAgICAgICBlbmQgPSBwdHIrMTsKKyAgICAgICAgICAgICAgICBlbmQgPSBwdHIgKyBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgIH0KIAogICAgICAgICBpZiAoZmxhZ3MgJiBTUkVfSU5GT19QUkVGSVgpIHsKQEAgLTE1MjgsMTAgKzE1MDgsMTAgQEAKICAgICAgICAgLyogcGF0dGVybiBzdGFydHMgd2l0aCBhIGtub3duIHByZWZpeC4gIHVzZSB0aGUgb3ZlcmxhcAogICAgICAgICAgICB0YWJsZSB0byBza2lwIGZvcndhcmQgYXMgZmFzdCBhcyB3ZSBwb3NzaWJseSBjYW4gKi8KICAgICAgICAgUHlfc3NpemVfdCBpID0gMDsKLSAgICAgICAgZW5kID0gKFNSRV9DSEFSICopc3RhdGUtPmVuZDsKKyAgICAgICAgZW5kID0gKGNoYXIgKilzdGF0ZS0+ZW5kOwogICAgICAgICB3aGlsZSAocHRyIDwgZW5kKSB7CiAgICAgICAgICAgICBmb3IgKDs7KSB7Ci0gICAgICAgICAgICAgICAgaWYgKChTUkVfQ09ERSkgcHRyWzBdICE9IHByZWZpeFtpXSkgeworICAgICAgICAgICAgICAgIGlmICgoU1JFX0NPREUpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApICE9IHByZWZpeFtpXSkgewogICAgICAgICAgICAgICAgICAgICBpZiAoIWkpCiAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgZWxzZQpAQCAtMTU0MCw4ICsxNTIwLDggQEAKICAgICAgICAgICAgICAgICAgICAgaWYgKCsraSA9PSBwcmVmaXhfbGVuKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAvKiBmb3VuZCBhIHBvdGVudGlhbCBtYXRjaCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8U0VBUkNIIFNDQU5cbiIsIHBhdHRlcm4sIHB0cikpOwotICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUtPnN0YXJ0ID0gcHRyICsgMSAtIHByZWZpeF9sZW47Ci0gICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS0+cHRyID0gcHRyICsgMSAtIHByZWZpeF9sZW4gKyBwcmVmaXhfc2tpcDsKKyAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLT5zdGFydCA9IHB0ciAtIChwcmVmaXhfbGVuIC0gMSkgKiBzdGF0ZS0+Y2hhcnNpemU7CisgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS0+cHRyID0gcHRyIC0gKHByZWZpeF9sZW4gLSBwcmVmaXhfc2tpcCAtIDEpICogc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZsYWdzICYgU1JFX0lORk9fTElURVJBTCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsgLyogd2UgZ290IGFsbCBvZiBpdCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzID0gU1JFX01BVENIKHN0YXRlLCBwYXR0ZXJuICsgMipwcmVmaXhfc2tpcCk7CkBAIC0xNTUzLDcgKzE1MzMsNyBAQAogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBwdHIrKzsKKyAgICAgICAgICAgIHB0ciArPSBzdGF0ZS0+Y2hhcnNpemU7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQpAQCAtMTU2MywxNSArMTU0MywxNiBAQAogICAgICAgICAvKiBwYXR0ZXJuIHN0YXJ0cyB3aXRoIGEgbGl0ZXJhbCBjaGFyYWN0ZXIuICB0aGlzIGlzIHVzZWQKICAgICAgICAgICAgZm9yIHNob3J0IHByZWZpeGVzLCBhbmQgaWYgZmFzdCBzZWFyY2ggaXMgZGlzYWJsZWQgKi8KICAgICAgICAgU1JFX0NPREUgY2hyID0gcGF0dGVyblsxXTsKLSAgICAgICAgZW5kID0gKFNSRV9DSEFSICopc3RhdGUtPmVuZDsKKyAgICAgICAgZW5kID0gKGNoYXIqKXN0YXRlLT5lbmQ7CiAgICAgICAgIGZvciAoOzspIHsKLSAgICAgICAgICAgIHdoaWxlIChwdHIgPCBlbmQgJiYgKFNSRV9DT0RFKSBwdHJbMF0gIT0gY2hyKQotICAgICAgICAgICAgICAgIHB0cisrOworICAgICAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiAoU1JFX0NPREUpIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApICE9IGNocikKKyAgICAgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgaWYgKHB0ciA+PSBlbmQpCiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxTRUFSQ0ggTElURVJBTFxuIiwgcGF0dGVybiwgcHRyKSk7CiAgICAgICAgICAgICBzdGF0ZS0+c3RhcnQgPSBwdHI7Ci0gICAgICAgICAgICBzdGF0ZS0+cHRyID0gKytwdHI7CisgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOworICAgICAgICAgICAgc3RhdGUtPnB0ciA9IHB0cjsKICAgICAgICAgICAgIGlmIChmbGFncyAmIFNSRV9JTkZPX0xJVEVSQUwpCiAgICAgICAgICAgICAgICAgcmV0dXJuIDE7IC8qIHdlIGdvdCBhbGwgb2YgaXQgKi8KICAgICAgICAgICAgIHN0YXR1cyA9IFNSRV9NQVRDSChzdGF0ZSwgcGF0dGVybiArIDIpOwpAQCAtMTU4MCwxMCArMTU2MSwxMCBAQAogICAgICAgICB9CiAgICAgfSBlbHNlIGlmIChjaGFyc2V0KSB7CiAgICAgICAgIC8qIHBhdHRlcm4gc3RhcnRzIHdpdGggYSBjaGFyYWN0ZXIgZnJvbSBhIGtub3duIHNldCAqLwotICAgICAgICBlbmQgPSAoU1JFX0NIQVIgKilzdGF0ZS0+ZW5kOworICAgICAgICBlbmQgPSAoY2hhciopc3RhdGUtPmVuZDsKICAgICAgICAgZm9yICg7OykgewotICAgICAgICAgICAgd2hpbGUgKHB0ciA8IGVuZCAmJiAhU1JFX0NIQVJTRVQoY2hhcnNldCwgcHRyWzBdKSkKLSAgICAgICAgICAgICAgICBwdHIrKzsKKyAgICAgICAgICAgIHdoaWxlIChwdHIgPCBlbmQgJiYgIVNSRV9DSEFSU0VUKGNoYXJzZXQsIFNSRV9DSEFSR0VUKHN0YXRlLCBwdHIsIDApKSkKKyAgICAgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgaWYgKHB0ciA+PSBlbmQpCiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICBUUkFDRSgoInwlcHwlcHxTRUFSQ0ggQ0hBUlNFVFxuIiwgcGF0dGVybiwgcHRyKSk7CkBAIC0xNTkyLDEzICsxNTczLDE0IEBACiAgICAgICAgICAgICBzdGF0dXMgPSBTUkVfTUFUQ0goc3RhdGUsIHBhdHRlcm4pOwogICAgICAgICAgICAgaWYgKHN0YXR1cyAhPSAwKQogICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgcHRyKys7CisgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICB9CiAgICAgfSBlbHNlCiAgICAgICAgIC8qIGdlbmVyYWwgY2FzZSAqLwogICAgICAgICB3aGlsZSAocHRyIDw9IGVuZCkgewogICAgICAgICAgICAgVFJBQ0UoKCJ8JXB8JXB8U0VBUkNIXG4iLCBwYXR0ZXJuLCBwdHIpKTsKLSAgICAgICAgICAgIHN0YXRlLT5zdGFydCA9IHN0YXRlLT5wdHIgPSBwdHIrKzsKKyAgICAgICAgICAgIHN0YXRlLT5zdGFydCA9IHN0YXRlLT5wdHIgPSBwdHI7CisgICAgICAgICAgICBwdHIgKz0gc3RhdGUtPmNoYXJzaXplOwogICAgICAgICAgICAgc3RhdHVzID0gU1JFX01BVENIKHN0YXRlLCBwYXR0ZXJuKTsKICAgICAgICAgICAgIGlmIChzdGF0dXMgIT0gMCkKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTE2MDcsMTYgKzE1ODksNiBAQAogICAgIHJldHVybiBzdGF0dXM7CiB9CiAKLUxPQ0FMKGludCkKLVNSRV9MSVRFUkFMX1RFTVBMQVRFKFNSRV9DSEFSKiBwdHIsIFB5X3NzaXplX3QgbGVuKQotewotICAgIC8qIGNoZWNrIGlmIGdpdmVuIHN0cmluZyBpcyBhIGxpdGVyYWwgdGVtcGxhdGUgKGkuZS4gbm8gZXNjYXBlcykgKi8KLSAgICB3aGlsZSAobGVuLS0gPiAwKQotICAgICAgICBpZiAoKnB0cisrID09ICdcXCcpCi0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICByZXR1cm4gMTsKLX0KLQogI2lmICFkZWZpbmVkKFNSRV9SRUNVUlNJVkUpCiAKIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCkBAIC0xNjI2LDYgKzE1OTgsMjMgQEAKIHN0YXRpYyBQeU9iamVjdCpwYXR0ZXJuX25ld19tYXRjaChQYXR0ZXJuT2JqZWN0KiwgU1JFX1NUQVRFKiwgaW50KTsKIHN0YXRpYyBQeU9iamVjdCpwYXR0ZXJuX3NjYW5uZXIoUGF0dGVybk9iamVjdCosIFB5T2JqZWN0Kik7CiAKK3N0YXRpYyBpbnQKK3NyZV9saXRlcmFsX3RlbXBsYXRlKGludCBjaGFyc2l6ZSwgY2hhciogcHRyLCBQeV9zc2l6ZV90IGxlbikKK3sKKyAgICAvKiBjaGVjayBpZiBnaXZlbiBzdHJpbmcgaXMgYSBsaXRlcmFsIHRlbXBsYXRlIChpLmUuIG5vIGVzY2FwZXMpICovCisgICAgc3RydWN0IHsKKyAgICAgICAgaW50IGNoYXJzaXplOworICAgIH0gc3RhdGUgPSB7CisgICAgICAgIGNoYXJzaXplCisgICAgfTsKKyAgICB3aGlsZSAobGVuLS0gPiAwKSB7CisgICAgICAgIGlmIChTUkVfQ0hBUkdFVCgoJnN0YXRlKSwgcHRyLCAwKSA9PSAnXFwnKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHB0ciArPSBjaGFyc2l6ZTsKKyAgICB9CisgICAgcmV0dXJuIDE7Cit9CisKIHN0YXRpYyBQeU9iamVjdCAqCiBzcmVfY29kZXNpemUoUHlPYmplY3QqIHNlbGYsIFB5T2JqZWN0ICp1bnVzZWQpCiB7CkBAIC0xNjQxLDExICsxNjMwLDcgQEAKICAgICBpZiAoZmxhZ3MgJiBTUkVfRkxBR19MT0NBTEUpCiAgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJpIiwgc3JlX2xvd2VyX2xvY2FsZShjaGFyYWN0ZXIpKTsKICAgICBpZiAoZmxhZ3MgJiBTUkVfRkxBR19VTklDT0RFKQotI2lmIGRlZmluZWQoSEFWRV9VTklDT0RFKQogICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiaSIsIHNyZV9sb3dlcl91bmljb2RlKGNoYXJhY3RlcikpOwotI2Vsc2UKLSAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoImkiLCBzcmVfbG93ZXJfbG9jYWxlKGNoYXJhY3RlcikpOwotI2VuZGlmCiAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoImkiLCBzcmVfbG93ZXIoY2hhcmFjdGVyKSk7CiB9CiAKQEAgLTE2NjQsNyArMTY0OSw4IEBACiB9CiAKIHN0YXRpYyB2b2lkKgotZ2V0c3RyaW5nKFB5T2JqZWN0KiBzdHJpbmcsIFB5X3NzaXplX3QqIHBfbGVuZ3RoLCBpbnQqIHBfY2hhcnNpemUpCitnZXRzdHJpbmcoUHlPYmplY3QqIHN0cmluZywgUHlfc3NpemVfdCogcF9sZW5ndGgsCisgICAgICAgICAgaW50KiBwX2xvZ2ljYWxfY2hhcnNpemUsIGludCogcF9jaGFyc2l6ZSkKIHsKICAgICAvKiBnaXZlbiBhIHB5dGhvbiBvYmplY3QsIHJldHVybiBhIGRhdGEgcG9pbnRlciwgYSBsZW5ndGggKGluCiAgICAgICAgY2hhcmFjdGVycyksIGFuZCBhIGNoYXJhY3RlciBzaXplLiAgcmV0dXJuIE5VTEwgaWYgdGhlIG9iamVjdApAQCAtMTY3OSwxMyArMTY2NSwxNiBAQAogICAgIC8qIFVuaWNvZGUgb2JqZWN0cyBkbyBub3Qgc3VwcG9ydCB0aGUgYnVmZmVyIEFQSS4gU28sIGdldCB0aGUgZGF0YQogICAgICAgIGRpcmVjdGx5IGluc3RlYWQuICovCiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhzdHJpbmcpKSB7Ci0gICAgICAgIHB0ciA9ICh2b2lkICopUHlVbmljb2RlX0FTX0RBVEEoc3RyaW5nKTsKLSAgICAgICAgKnBfbGVuZ3RoID0gUHlVbmljb2RlX0dFVF9TSVpFKHN0cmluZyk7Ci0gICAgICAgICpwX2NoYXJzaXplID0gc2l6ZW9mKFB5X1VOSUNPREUpOworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN0cmluZykgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgcHRyID0gUHlVbmljb2RlX0RBVEEoc3RyaW5nKTsKKyAgICAgICAgKnBfbGVuZ3RoID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyaW5nKTsKKyAgICAgICAgKnBfY2hhcnNpemUgPSBQeVVuaWNvZGVfS0lORChzdHJpbmcpOworICAgICAgICAqcF9sb2dpY2FsX2NoYXJzaXplID0gNDsKICAgICAgICAgcmV0dXJuIHB0cjsKICAgICB9CiAKLSAgICAvKiBnZXQgcG9pbnRlciB0byBzdHJpbmcgYnVmZmVyICovCisgICAgLyogZ2V0IHBvaW50ZXIgdG8gYnl0ZSBzdHJpbmcgYnVmZmVyICovCiAgICAgdmlldy5sZW4gPSAtMTsKICAgICBidWZmZXIgPSBQeV9UWVBFKHN0cmluZyktPnRwX2FzX2J1ZmZlcjsKICAgICBpZiAoIWJ1ZmZlciB8fCAhYnVmZmVyLT5iZl9nZXRidWZmZXIgfHwKQEAgLTE3MTMsMTAgKzE3MDIsNiBAQAogCiAgICAgaWYgKFB5Qnl0ZXNfQ2hlY2soc3RyaW5nKSB8fCBieXRlcyA9PSBzaXplKQogICAgICAgICBjaGFyc2l6ZSA9IDE7Ci0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCi0gICAgZWxzZSBpZiAoYnl0ZXMgPT0gKFB5X3NzaXplX3QpIChzaXplICogc2l6ZW9mKFB5X1VOSUNPREUpKSkKLSAgICAgICAgY2hhcnNpemUgPSBzaXplb2YoUHlfVU5JQ09ERSk7Ci0jZW5kaWYKICAgICBlbHNlIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImJ1ZmZlciBzaXplIG1pc21hdGNoIik7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTcyNCw2ICsxNzA5LDcgQEAKIAogICAgICpwX2xlbmd0aCA9IHNpemU7CiAgICAgKnBfY2hhcnNpemUgPSBjaGFyc2l6ZTsKKyAgICAqcF9sb2dpY2FsX2NoYXJzaXplID0gY2hhcnNpemU7CiAKICAgICBpZiAocHRyID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLApAQCAtMTczOSw3ICsxNzI1LDcgQEAKICAgICAvKiBwcmVwYXJlIHN0YXRlIG9iamVjdCAqLwogCiAgICAgUHlfc3NpemVfdCBsZW5ndGg7Ci0gICAgaW50IGNoYXJzaXplOworICAgIGludCBsb2dpY2FsX2NoYXJzaXplLCBjaGFyc2l6ZTsKICAgICB2b2lkKiBwdHI7CiAKICAgICBtZW1zZXQoc3RhdGUsIDAsIHNpemVvZihTUkVfU1RBVEUpKTsKQEAgLTE3NDcsMjAgKzE3MzMsMjAgQEAKICAgICBzdGF0ZS0+bGFzdG1hcmsgPSAtMTsKICAgICBzdGF0ZS0+bGFzdGluZGV4ID0gLTE7CiAKLSAgICBwdHIgPSBnZXRzdHJpbmcoc3RyaW5nLCAmbGVuZ3RoLCAmY2hhcnNpemUpOworICAgIHB0ciA9IGdldHN0cmluZyhzdHJpbmcsICZsZW5ndGgsICZsb2dpY2FsX2NoYXJzaXplLCAmY2hhcnNpemUpOwogICAgIGlmICghcHRyKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotCWlmIChjaGFyc2l6ZSA9PSAxICYmIHBhdHRlcm4tPmNoYXJzaXplID4gMSkgewotCQlQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotCQkJImNhbid0IHVzZSBhIHN0cmluZyBwYXR0ZXJuIG9uIGEgYnl0ZXMtbGlrZSBvYmplY3QiKTsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCWlmIChjaGFyc2l6ZSA+IDEgJiYgcGF0dGVybi0+Y2hhcnNpemUgPT0gMSkgewotCQlQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotCQkJImNhbid0IHVzZSBhIGJ5dGVzIHBhdHRlcm4gb24gYSBzdHJpbmctbGlrZSBvYmplY3QiKTsKLQkJcmV0dXJuIE5VTEw7Ci0JfQorICAgICAgICBpZiAobG9naWNhbF9jaGFyc2l6ZSA9PSAxICYmIHBhdHRlcm4tPmxvZ2ljYWxfY2hhcnNpemUgPiAxKSB7CisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJjYW4ndCB1c2UgYSBzdHJpbmcgcGF0dGVybiBvbiBhIGJ5dGVzLWxpa2Ugb2JqZWN0Iik7CisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGxvZ2ljYWxfY2hhcnNpemUgPiAxICYmIHBhdHRlcm4tPmxvZ2ljYWxfY2hhcnNpemUgPT0gMSkgeworICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiY2FuJ3QgdXNlIGEgYnl0ZXMgcGF0dGVybiBvbiBhIHN0cmluZy1saWtlIG9iamVjdCIpOworICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CiAKICAgICAvKiBhZGp1c3QgYm91bmRhcmllcyAqLwogICAgIGlmIChzdGFydCA8IDApCkBAIC0xNzczLDYgKzE3NTksNyBAQAogICAgIGVsc2UgaWYgKGVuZCA+IGxlbmd0aCkKICAgICAgICAgZW5kID0gbGVuZ3RoOwogCisgICAgc3RhdGUtPmxvZ2ljYWxfY2hhcnNpemUgPSBsb2dpY2FsX2NoYXJzaXplOwogICAgIHN0YXRlLT5jaGFyc2l6ZSA9IGNoYXJzaXplOwogCiAgICAgc3RhdGUtPmJlZ2lubmluZyA9IHB0cjsKQEAgLTE3ODgsMTEgKzE3NzUsNyBAQAogICAgIGlmIChwYXR0ZXJuLT5mbGFncyAmIFNSRV9GTEFHX0xPQ0FMRSkKICAgICAgICAgc3RhdGUtPmxvd2VyID0gc3JlX2xvd2VyX2xvY2FsZTsKICAgICBlbHNlIGlmIChwYXR0ZXJuLT5mbGFncyAmIFNSRV9GTEFHX1VOSUNPREUpCi0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAgICAgICAgIHN0YXRlLT5sb3dlciA9IHNyZV9sb3dlcl91bmljb2RlOwotI2Vsc2UKLSAgICAgICAgc3RhdGUtPmxvd2VyID0gc3JlX2xvd2VyX2xvY2FsZTsKLSNlbmRpZgogICAgIGVsc2UKICAgICAgICAgc3RhdGUtPmxvd2VyID0gc3JlX2xvd2VyOwogCkBAIC0xODkxLDEyICsxODc0LDEwIEBACiAKICAgICBUUkFDRSgoInwlcHwlcHxNQVRDSFxuIiwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpLCBzdGF0ZS5wdHIpKTsKIAotICAgIGlmIChzdGF0ZS5jaGFyc2l6ZSA9PSAxKSB7CisgICAgaWYgKHN0YXRlLmxvZ2ljYWxfY2hhcnNpemUgPT0gMSkgewogICAgICAgICBzdGF0dXMgPSBzcmVfbWF0Y2goJnN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZikpOwogICAgIH0gZWxzZSB7Ci0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAgICAgICAgIHN0YXR1cyA9IHNyZV91bWF0Y2goJnN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZikpOwotI2VuZGlmCiAgICAgfQogCiAgICAgVFJBQ0UoKCJ8JXB8JXB8RU5EXG4iLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZiksIHN0YXRlLnB0cikpOwpAQCAtMTkyOCwxMiArMTkwOSwxMCBAQAogCiAgICAgVFJBQ0UoKCJ8JXB8JXB8U0VBUkNIXG4iLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZiksIHN0YXRlLnB0cikpOwogCi0gICAgaWYgKHN0YXRlLmNoYXJzaXplID09IDEpIHsKKyAgICBpZiAoc3RhdGUubG9naWNhbF9jaGFyc2l6ZSA9PSAxKSB7CiAgICAgICAgIHN0YXR1cyA9IHNyZV9zZWFyY2goJnN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZikpOwogICAgIH0gZWxzZSB7Ci0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAgICAgICAgIHN0YXR1cyA9IHNyZV91c2VhcmNoKCZzdGF0ZSwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpKTsKLSNlbmRpZgogICAgIH0KIAogICAgIFRSQUNFKCgifCVwfCVwfEVORFxuIiwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpLCBzdGF0ZS5wdHIpKTsKQEAgLTIwNzUsMTYgKzIwNTQsMTQgQEAKIAogICAgICAgICBzdGF0ZS5wdHIgPSBzdGF0ZS5zdGFydDsKIAotICAgICAgICBpZiAoc3RhdGUuY2hhcnNpemUgPT0gMSkgeworICAgICAgICBpZiAoc3RhdGUubG9naWNhbF9jaGFyc2l6ZSA9PSAxKSB7CiAgICAgICAgICAgICBzdGF0dXMgPSBzcmVfc2VhcmNoKCZzdGF0ZSwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpKTsKICAgICAgICAgfSBlbHNlIHsKLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKICAgICAgICAgICAgIHN0YXR1cyA9IHNyZV91c2VhcmNoKCZzdGF0ZSwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpKTsKLSNlbmRpZgogICAgICAgICB9CiAKLQlpZiAoUHlFcnJfT2NjdXJyZWQoKSkKLQkgICAgZ290byBlcnJvcjsKKyAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBnb3RvIGVycm9yOwogCiAgICAgICAgIGlmIChzdGF0dXMgPD0gMCkgewogICAgICAgICAgICAgaWYgKHN0YXR1cyA9PSAwKQpAQCAtMjIwNSwxNiArMjE4MiwxNCBAQAogCiAgICAgICAgIHN0YXRlLnB0ciA9IHN0YXRlLnN0YXJ0OwogCi0gICAgICAgIGlmIChzdGF0ZS5jaGFyc2l6ZSA9PSAxKSB7CisgICAgICAgIGlmIChzdGF0ZS5sb2dpY2FsX2NoYXJzaXplID09IDEpIHsKICAgICAgICAgICAgIHN0YXR1cyA9IHNyZV9zZWFyY2goJnN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZikpOwogICAgICAgICB9IGVsc2UgewotI2lmIGRlZmluZWQoSEFWRV9VTklDT0RFKQogICAgICAgICAgICAgc3RhdHVzID0gc3JlX3VzZWFyY2goJnN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZikpOwotI2VuZGlmCiAgICAgICAgIH0KIAotCWlmIChQeUVycl9PY2N1cnJlZCgpKQotCSAgICBnb3RvIGVycm9yOworICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICAgICAgaWYgKHN0YXR1cyA8PSAwKSB7CiAgICAgICAgICAgICBpZiAoc3RhdHVzID09IDApCkBAIC0yMjk1LDcgKzIyNzAsNyBAQAogICAgIGludCBzdGF0dXM7CiAgICAgUHlfc3NpemVfdCBuOwogICAgIFB5X3NzaXplX3QgaSwgYiwgZTsKLSAgICBpbnQgYmludDsKKyAgICBpbnQgbG9naWNhbF9jaGFyc2l6ZSwgY2hhcnNpemU7CiAgICAgaW50IGZpbHRlcl9pc19jYWxsYWJsZTsKIAogICAgIGlmIChQeUNhbGxhYmxlX0NoZWNrKHB0ZW1wbGF0ZSkpIHsKQEAgLTIzMDYsMTYgKzIyODEsMTAgQEAKICAgICB9IGVsc2UgewogICAgICAgICAvKiBpZiBub3QgY2FsbGFibGUsIGNoZWNrIGlmIGl0J3MgYSBsaXRlcmFsIHN0cmluZyAqLwogICAgICAgICBpbnQgbGl0ZXJhbDsKLSAgICAgICAgcHRyID0gZ2V0c3RyaW5nKHB0ZW1wbGF0ZSwgJm4sICZiaW50KTsKLSAgICAgICAgYiA9IGJpbnQ7CisgICAgICAgIHB0ciA9IGdldHN0cmluZyhwdGVtcGxhdGUsICZuLCAmbG9naWNhbF9jaGFyc2l6ZSwgJmNoYXJzaXplKTsKKyAgICAgICAgYiA9IGNoYXJzaXplOwogICAgICAgICBpZiAocHRyKSB7Ci0gICAgICAgICAgICBpZiAoYiA9PSAxKSB7Ci0JCSAgICBsaXRlcmFsID0gc3JlX2xpdGVyYWxfdGVtcGxhdGUoKHVuc2lnbmVkIGNoYXIgKilwdHIsIG4pOwotICAgICAgICAgICAgfSBlbHNlIHsKLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKLQkJICAgIGxpdGVyYWwgPSBzcmVfdWxpdGVyYWxfdGVtcGxhdGUoKFB5X1VOSUNPREUgKilwdHIsIG4pOwotI2VuZGlmCi0gICAgICAgICAgICB9CisgICAgICAgICAgICBsaXRlcmFsID0gc3JlX2xpdGVyYWxfdGVtcGxhdGUoYiwgcHRyLCBuKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgICAgICBsaXRlcmFsID0gMDsKQEAgLTIzNTcsMTYgKzIzMjYsMTQgQEAKIAogICAgICAgICBzdGF0ZS5wdHIgPSBzdGF0ZS5zdGFydDsKIAotICAgICAgICBpZiAoc3RhdGUuY2hhcnNpemUgPT0gMSkgeworICAgICAgICBpZiAoc3RhdGUubG9naWNhbF9jaGFyc2l6ZSA9PSAxKSB7CiAgICAgICAgICAgICBzdGF0dXMgPSBzcmVfc2VhcmNoKCZzdGF0ZSwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpKTsKICAgICAgICAgfSBlbHNlIHsKLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKICAgICAgICAgICAgIHN0YXR1cyA9IHNyZV91c2VhcmNoKCZzdGF0ZSwgUGF0dGVybk9iamVjdF9HZXRDb2RlKHNlbGYpKTsKLSNlbmRpZgogICAgICAgICB9CiAKLQlpZiAoUHlFcnJfT2NjdXJyZWQoKSkKLQkgICAgZ290byBlcnJvcjsKKyAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBnb3RvIGVycm9yOwogCiAgICAgICAgIGlmIChzdGF0dXMgPD0gMCkgewogICAgICAgICAgICAgaWYgKHN0YXR1cyA9PSAwKQpAQCAtMjU4NCwyMCArMjU1MSwyMCBAQAogCiBzdGF0aWMgUHlNZXRob2REZWYgcGF0dGVybl9tZXRob2RzW10gPSB7CiAgICAgeyJtYXRjaCIsIChQeUNGdW5jdGlvbikgcGF0dGVybl9tYXRjaCwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCi0JcGF0dGVybl9tYXRjaF9kb2N9LAorICAgICAgICBwYXR0ZXJuX21hdGNoX2RvY30sCiAgICAgeyJzZWFyY2giLCAoUHlDRnVuY3Rpb24pIHBhdHRlcm5fc2VhcmNoLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKLQlwYXR0ZXJuX3NlYXJjaF9kb2N9LAorICAgICAgICBwYXR0ZXJuX3NlYXJjaF9kb2N9LAogICAgIHsic3ViIiwgKFB5Q0Z1bmN0aW9uKSBwYXR0ZXJuX3N1YiwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCi0JcGF0dGVybl9zdWJfZG9jfSwKKyAgICAgICAgcGF0dGVybl9zdWJfZG9jfSwKICAgICB7InN1Ym4iLCAoUHlDRnVuY3Rpb24pIHBhdHRlcm5fc3VibiwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCi0JcGF0dGVybl9zdWJuX2RvY30sCisgICAgICAgIHBhdHRlcm5fc3Vibl9kb2N9LAogICAgIHsic3BsaXQiLCAoUHlDRnVuY3Rpb24pIHBhdHRlcm5fc3BsaXQsIE1FVEhfVkFSQVJHU3xNRVRIX0tFWVdPUkRTLAotCXBhdHRlcm5fc3BsaXRfZG9jfSwKKyAgICAgICAgcGF0dGVybl9zcGxpdF9kb2N9LAogICAgIHsiZmluZGFsbCIsIChQeUNGdW5jdGlvbikgcGF0dGVybl9maW5kYWxsLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKLQlwYXR0ZXJuX2ZpbmRhbGxfZG9jfSwKKyAgICAgICAgcGF0dGVybl9maW5kYWxsX2RvY30sCiAjaWYgUFlfVkVSU0lPTl9IRVggPj0gMHgwMjAyMDAwMAogICAgIHsiZmluZGl0ZXIiLCAoUHlDRnVuY3Rpb24pIHBhdHRlcm5fZmluZGl0ZXIsIE1FVEhfVkFSQVJHUywKLQlwYXR0ZXJuX2ZpbmRpdGVyX2RvY30sCisgICAgICAgIHBhdHRlcm5fZmluZGl0ZXJfZG9jfSwKICNlbmRpZgogICAgIHsic2Nhbm5lciIsIChQeUNGdW5jdGlvbikgcGF0dGVybl9zY2FubmVyLCBNRVRIX1ZBUkFSR1N9LAogICAgIHsiX19jb3B5X18iLCAoUHlDRnVuY3Rpb24pIHBhdHRlcm5fY29weSwgTUVUSF9OT0FSR1N9LApAQCAtMjYxOCwzMSArMjU4NSwzMSBAQAogICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVChOVUxMLCAwKQogICAgICJfIiBTUkVfTU9EVUxFICIuU1JFX1BhdHRlcm4iLAogICAgIHNpemVvZihQYXR0ZXJuT2JqZWN0KSwgc2l6ZW9mKFNSRV9DT0RFKSwKLSAgICAoZGVzdHJ1Y3RvcilwYXR0ZXJuX2RlYWxsb2MsCS8qIHRwX2RlYWxsb2MgKi8KLSAgICAwLAkJCQkJLyogdHBfcHJpbnQgKi8KLSAgICAwLAkJCQkJLyogdHBfZ2V0YXR0ciAqLwotICAgIDAsCQkJCQkvKiB0cF9zZXRhdHRyICovCi0gICAgMCwJCQkJCS8qIHRwX3Jlc2VydmVkICovCi0gICAgMCwJCQkJCS8qIHRwX3JlcHIgKi8KLSAgICAwLAkJCQkJLyogdHBfYXNfbnVtYmVyICovCi0gICAgMCwJCQkJCS8qIHRwX2FzX3NlcXVlbmNlICovCi0gICAgMCwJCQkJCS8qIHRwX2FzX21hcHBpbmcgKi8KLSAgICAwLAkJCQkJLyogdHBfaGFzaCAqLwotICAgIDAsCQkJCQkvKiB0cF9jYWxsICovCi0gICAgMCwJCQkJCS8qIHRwX3N0ciAqLwotICAgIDAsCQkJCQkvKiB0cF9nZXRhdHRybyAqLwotICAgIDAsCQkJCQkvKiB0cF9zZXRhdHRybyAqLwotICAgIDAsCQkJCQkvKiB0cF9hc19idWZmZXIgKi8KLSAgICBQeV9UUEZMQUdTX0RFRkFVTFQsCQkJLyogdHBfZmxhZ3MgKi8KLSAgICBwYXR0ZXJuX2RvYywJCQkvKiB0cF9kb2MgKi8KLSAgICAwLAkJCQkJLyogdHBfdHJhdmVyc2UgKi8KLSAgICAwLAkJCQkJLyogdHBfY2xlYXIgKi8KLSAgICAwLAkJCQkJLyogdHBfcmljaGNvbXBhcmUgKi8KLSAgICBvZmZzZXRvZihQYXR0ZXJuT2JqZWN0LCB3ZWFrcmVmbGlzdCksCS8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCi0gICAgMCwJCQkJCS8qIHRwX2l0ZXIgKi8KLSAgICAwLAkJCQkJLyogdHBfaXRlcm5leHQgKi8KLSAgICBwYXR0ZXJuX21ldGhvZHMsCQkJLyogdHBfbWV0aG9kcyAqLwotICAgIHBhdHRlcm5fbWVtYmVycywJCQkvKiB0cF9tZW1iZXJzICovCisgICAgKGRlc3RydWN0b3IpcGF0dGVybl9kZWFsbG9jLCAgICAgICAgLyogdHBfZGVhbGxvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3ByaW50ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yZXNlcnZlZCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3JlcHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19udW1iZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX21hcHBpbmcgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2FsbCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3N0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19idWZmZXIgKi8KKyAgICBQeV9UUEZMQUdTX0RFRkFVTFQsICAgICAgICAgICAgICAgICAvKiB0cF9mbGFncyAqLworICAgIHBhdHRlcm5fZG9jLCAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIG9mZnNldG9mKFBhdHRlcm5PYmplY3QsIHdlYWtyZWZsaXN0KSwgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KKyAgICBwYXR0ZXJuX21ldGhvZHMsICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCisgICAgcGF0dGVybl9tZW1iZXJzLCAgICAgICAgICAgICAgICAgICAgLyogdHBfbWVtYmVycyAqLwogfTsKIAogc3RhdGljIGludCBfdmFsaWRhdGUoUGF0dGVybk9iamVjdCAqc2VsZik7IC8qIEZvcndhcmQgKi8KQEAgLTI2OTQsMTUgKzI2NjEsMTggQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0JaWYgKHBhdHRlcm4gPT0gUHlfTm9uZSkKLQkJc2VsZi0+Y2hhcnNpemUgPSAtMTsKLQllbHNlIHsKLQkJUHlfc3NpemVfdCBwX2xlbmd0aDsKLQkJaWYgKCFnZXRzdHJpbmcocGF0dGVybiwgJnBfbGVuZ3RoLCAmc2VsZi0+Y2hhcnNpemUpKSB7Ci0JCQlQeV9ERUNSRUYoc2VsZik7Ci0JCQlyZXR1cm4gTlVMTDsKLQkJfQotCX0KKyAgICBpZiAocGF0dGVybiA9PSBQeV9Ob25lKSB7CisgICAgICAgIHNlbGYtPmxvZ2ljYWxfY2hhcnNpemUgPSAtMTsKKyAgICAgICAgc2VsZi0+Y2hhcnNpemUgPSAtMTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5X3NzaXplX3QgcF9sZW5ndGg7CisgICAgICAgIGlmICghZ2V0c3RyaW5nKHBhdHRlcm4sICZwX2xlbmd0aCwgJnNlbGYtPmxvZ2ljYWxfY2hhcnNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICZzZWxmLT5jaGFyc2l6ZSkpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzZWxmKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgfQogCiAgICAgUHlfSU5DUkVGKHBhdHRlcm4pOwogICAgIHNlbGYtPnBhdHRlcm4gPSBwYXR0ZXJuOwpAQCAtMzA1MSwxMCArMzAyMSw4IEBACiAgICAgICAgICAgICAgICAgR0VUX0FSRzsgbWF4ID0gYXJnOwogICAgICAgICAgICAgICAgIGlmIChtaW4gPiBtYXgpCiAgICAgICAgICAgICAgICAgICAgIEZBSUw7Ci0jaWZkZWYgUHlfVU5JQ09ERV9XSURFCiAgICAgICAgICAgICAgICAgaWYgKG1heCA+IDY1NTM1KQogICAgICAgICAgICAgICAgICAgICBGQUlMOwotI2VuZGlmCiAgICAgICAgICAgICAgICAgaWYgKCFfdmFsaWRhdGVfaW5uZXIoY29kZSwgY29kZStza2lwLTQsIGdyb3VwcykpCiAgICAgICAgICAgICAgICAgICAgIEZBSUw7CiAgICAgICAgICAgICAgICAgY29kZSArPSBza2lwLTQ7CkBAIC0zMDcyLDEwICszMDQwLDggQEAKICAgICAgICAgICAgICAgICBHRVRfQVJHOyBtYXggPSBhcmc7CiAgICAgICAgICAgICAgICAgaWYgKG1pbiA+IG1heCkKICAgICAgICAgICAgICAgICAgICAgRkFJTDsKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKICAgICAgICAgICAgICAgICBpZiAobWF4ID4gNjU1MzUpCiAgICAgICAgICAgICAgICAgICAgIEZBSUw7Ci0jZW5kaWYKICAgICAgICAgICAgICAgICBpZiAoIV92YWxpZGF0ZV9pbm5lcihjb2RlLCBjb2RlK3NraXAtMywgZ3JvdXBzKSkKICAgICAgICAgICAgICAgICAgICAgRkFJTDsKICAgICAgICAgICAgICAgICBjb2RlICs9IHNraXAtMzsKQEAgLTMyMzgsOCArMzIwNCw4IEBACiAgICAgUHlfc3NpemVfdCBpOwogCiAgICAgaWYgKGluZGV4ID09IE5VTEwpCi0JLyogRGVmYXVsdCB2YWx1ZSAqLwotCXJldHVybiAwOworICAgICAgICAvKiBEZWZhdWx0IHZhbHVlICovCisgICAgICAgIHJldHVybiAwOwogCiAgICAgaWYgKFB5TG9uZ19DaGVjayhpbmRleCkpCiAgICAgICAgIHJldHVybiBQeUxvbmdfQXNTc2l6ZV90KGluZGV4KTsKQEAgLTM1NzksNyArMzU0NSw3IEBACiBtYXRjaF9sYXN0aW5kZXhfZ2V0KE1hdGNoT2JqZWN0ICpzZWxmKQogewogICAgIGlmIChzZWxmLT5sYXN0aW5kZXggPj0gMCkKLQlyZXR1cm4gUHlfQnVpbGRWYWx1ZSgiaSIsIHNlbGYtPmxhc3RpbmRleCk7CisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJpIiwgc2VsZi0+bGFzdGluZGV4KTsKICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgcmV0dXJuIFB5X05vbmU7CiB9CkBAIC0zNjMyLDMyICszNTk4LDMyIEBACiAgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsMCkKICAgICAiXyIgU1JFX01PRFVMRSAiLlNSRV9NYXRjaCIsCiAgICAgc2l6ZW9mKE1hdGNoT2JqZWN0KSwgc2l6ZW9mKFB5X3NzaXplX3QpLAotICAgIChkZXN0cnVjdG9yKW1hdGNoX2RlYWxsb2MsCS8qIHRwX2RlYWxsb2MgKi8KLSAgICAwLAkJCQkvKiB0cF9wcmludCAqLwotICAgIDAsCQkJCS8qIHRwX2dldGF0dHIgKi8KLSAgICAwLAkJCQkvKiB0cF9zZXRhdHRyICovCi0gICAgMCwJCQkJLyogdHBfcmVzZXJ2ZWQgKi8KLSAgICAwLAkJCQkvKiB0cF9yZXByICovCi0gICAgMCwJCQkJLyogdHBfYXNfbnVtYmVyICovCi0gICAgMCwJCQkJLyogdHBfYXNfc2VxdWVuY2UgKi8KLSAgICAwLAkJCQkvKiB0cF9hc19tYXBwaW5nICovCi0gICAgMCwJCQkJLyogdHBfaGFzaCAqLwotICAgIDAsCQkJCS8qIHRwX2NhbGwgKi8KLSAgICAwLAkJCQkvKiB0cF9zdHIgKi8KLSAgICAwLAkJCQkvKiB0cF9nZXRhdHRybyAqLwotICAgIDAsCQkJCS8qIHRwX3NldGF0dHJvICovCi0gICAgMCwJCQkJLyogdHBfYXNfYnVmZmVyICovCi0gICAgUHlfVFBGTEFHU19ERUZBVUxULAkJLyogdHBfZmxhZ3MgKi8KLSAgICAwLAkJCQkvKiB0cF9kb2MgKi8KLSAgICAwLAkJCQkvKiB0cF90cmF2ZXJzZSAqLwotICAgIDAsCQkJCS8qIHRwX2NsZWFyICovCi0gICAgMCwJCQkJLyogdHBfcmljaGNvbXBhcmUgKi8KLSAgICAwLAkJCQkvKiB0cF93ZWFrbGlzdG9mZnNldCAqLwotICAgIDAsCQkJCS8qIHRwX2l0ZXIgKi8KLSAgICAwLAkJCQkvKiB0cF9pdGVybmV4dCAqLwotICAgIG1hdGNoX21ldGhvZHMsCQkvKiB0cF9tZXRob2RzICovCi0gICAgbWF0Y2hfbWVtYmVycywJCS8qIHRwX21lbWJlcnMgKi8KLSAgICBtYXRjaF9nZXRzZXQsICAJICAgICAgICAvKiB0cF9nZXRzZXQgKi8KKyAgICAoZGVzdHJ1Y3RvciltYXRjaF9kZWFsbG9jLCAgLyogdHBfZGVhbGxvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9wcmludCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRhdHRyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVzZXJ2ZWQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVwciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19udW1iZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfc2VxdWVuY2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfbWFwcGluZyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9oYXNoICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc3RyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX2J1ZmZlciAqLworICAgIFB5X1RQRkxBR1NfREVGQVVMVCwgICAgICAgICAvKiB0cF9mbGFncyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLworICAgIG1hdGNoX21ldGhvZHMsICAgICAgICAgICAgICAvKiB0cF9tZXRob2RzICovCisgICAgbWF0Y2hfbWVtYmVycywgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KKyAgICBtYXRjaF9nZXRzZXQsICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCiB9OwogCiBzdGF0aWMgUHlPYmplY3QqCkBAIC0zNzQ2LDEyICszNzEyLDEwIEBACiAKICAgICBzdGF0ZS0+cHRyID0gc3RhdGUtPnN0YXJ0OwogCi0gICAgaWYgKHN0YXRlLT5jaGFyc2l6ZSA9PSAxKSB7CisgICAgaWYgKHN0YXRlLT5sb2dpY2FsX2NoYXJzaXplID09IDEpIHsKICAgICAgICAgc3RhdHVzID0gc3JlX21hdGNoKHN0YXRlLCBQYXR0ZXJuT2JqZWN0X0dldENvZGUoc2VsZi0+cGF0dGVybikpOwogICAgIH0gZWxzZSB7Ci0jaWYgZGVmaW5lZChIQVZFX1VOSUNPREUpCiAgICAgICAgIHN0YXR1cyA9IHNyZV91bWF0Y2goc3RhdGUsIFBhdHRlcm5PYmplY3RfR2V0Q29kZShzZWxmLT5wYXR0ZXJuKSk7Ci0jZW5kaWYKICAgICB9CiAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMzc3OSwxMiArMzc0MywxMCBAQAogCiAgICAgc3RhdGUtPnB0ciA9IHN0YXRlLT5zdGFydDsKIAotICAgIGlmIChzdGF0ZS0+Y2hhcnNpemUgPT0gMSkgeworICAgIGlmIChzdGF0ZS0+bG9naWNhbF9jaGFyc2l6ZSA9PSAxKSB7CiAgICAgICAgIHN0YXR1cyA9IHNyZV9zZWFyY2goc3RhdGUsIFBhdHRlcm5PYmplY3RfR2V0Q29kZShzZWxmLT5wYXR0ZXJuKSk7CiAgICAgfSBlbHNlIHsKLSNpZiBkZWZpbmVkKEhBVkVfVU5JQ09ERSkKICAgICAgICAgc3RhdHVzID0gc3JlX3VzZWFyY2goc3RhdGUsIFBhdHRlcm5PYmplY3RfR2V0Q29kZShzZWxmLT5wYXR0ZXJuKSk7Ci0jZW5kaWYKICAgICB9CiAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMzgwOCw3ICszNzcwLDcgQEAKIAogI2RlZmluZSBTQ0FOX09GRih4KSBvZmZzZXRvZihTY2FubmVyT2JqZWN0LCB4KQogc3RhdGljIFB5TWVtYmVyRGVmIHNjYW5uZXJfbWVtYmVyc1tdID0gewotICAgIHsicGF0dGVybiIsCVRfT0JKRUNULAlTQ0FOX09GRihwYXR0ZXJuKSwJUkVBRE9OTFl9LAorICAgIHsicGF0dGVybiIsIFRfT0JKRUNULCBTQ0FOX09GRihwYXR0ZXJuKSwgUkVBRE9OTFl9LAogICAgIHtOVUxMfSAgLyogU2VudGluZWwgKi8KIH07CiAKQEAgLTM4MTcsMzEgKzM3NzksMzEgQEAKICAgICAiXyIgU1JFX01PRFVMRSAiLlNSRV9TY2FubmVyIiwKICAgICBzaXplb2YoU2Nhbm5lck9iamVjdCksIDAsCiAgICAgKGRlc3RydWN0b3Ipc2Nhbm5lcl9kZWFsbG9jLC8qIHRwX2RlYWxsb2MgKi8KLSAgICAwLAkJCQkvKiB0cF9wcmludCAqLwotICAgIDAsCQkJCS8qIHRwX2dldGF0dHIgKi8KLSAgICAwLAkJCQkvKiB0cF9zZXRhdHRyICovCi0gICAgMCwJCQkJLyogdHBfcmVzZXJ2ZWQgKi8KLSAgICAwLAkJCQkvKiB0cF9yZXByICovCi0gICAgMCwJCQkJLyogdHBfYXNfbnVtYmVyICovCi0gICAgMCwJCQkJLyogdHBfYXNfc2VxdWVuY2UgKi8KLSAgICAwLAkJCQkvKiB0cF9hc19tYXBwaW5nICovCi0gICAgMCwJCQkJLyogdHBfaGFzaCAqLwotICAgIDAsCQkJCS8qIHRwX2NhbGwgKi8KLSAgICAwLAkJCQkvKiB0cF9zdHIgKi8KLSAgICAwLAkJCQkvKiB0cF9nZXRhdHRybyAqLwotICAgIDAsCQkJCS8qIHRwX3NldGF0dHJvICovCi0gICAgMCwJCQkJLyogdHBfYXNfYnVmZmVyICovCi0gICAgUHlfVFBGTEFHU19ERUZBVUxULAkJLyogdHBfZmxhZ3MgKi8KLSAgICAwLAkJCQkvKiB0cF9kb2MgKi8KLSAgICAwLAkJCQkvKiB0cF90cmF2ZXJzZSAqLwotICAgIDAsCQkJCS8qIHRwX2NsZWFyICovCi0gICAgMCwJCQkJLyogdHBfcmljaGNvbXBhcmUgKi8KLSAgICAwLAkJCQkvKiB0cF93ZWFrbGlzdG9mZnNldCAqLwotICAgIDAsCQkJCS8qIHRwX2l0ZXIgKi8KLSAgICAwLAkJCQkvKiB0cF9pdGVybmV4dCAqLwotICAgIHNjYW5uZXJfbWV0aG9kcywJCS8qIHRwX21ldGhvZHMgKi8KLSAgICBzY2FubmVyX21lbWJlcnMsCQkvKiB0cF9tZW1iZXJzICovCi0gICAgMCwJCQkJLyogdHBfZ2V0c2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3ByaW50ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yZXNlcnZlZCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yZXByICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX251bWJlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19tYXBwaW5nICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2hhc2ggKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2FsbCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zdHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0cm8gKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfYnVmZmVyICovCisgICAgUHlfVFBGTEFHU19ERUZBVUxULCAgICAgICAgIC8qIHRwX2ZsYWdzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF90cmF2ZXJzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jbGVhciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgc2Nhbm5lcl9tZXRob2RzLCAgICAgICAgICAgIC8qIHRwX21ldGhvZHMgKi8KKyAgICBzY2FubmVyX21lbWJlcnMsICAgICAgICAgICAgLyogdHBfbWVtYmVycyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KIH07CiAKIHN0YXRpYyBQeU9iamVjdCoKQEAgLTM4ODMsMTUgKzM4NDUsMTUgQEAKIH07CiAKIHN0YXRpYyBzdHJ1Y3QgUHlNb2R1bGVEZWYgc3JlbW9kdWxlID0gewotCVB5TW9kdWxlRGVmX0hFQURfSU5JVCwKLQkiXyIgU1JFX01PRFVMRSwKLQlOVUxMLAotCS0xLAotCV9mdW5jdGlvbnMsCi0JTlVMTCwKLQlOVUxMLAotCU5VTEwsCi0JTlVMTAorICAgICAgICBQeU1vZHVsZURlZl9IRUFEX0lOSVQsCisgICAgICAgICJfIiBTUkVfTU9EVUxFLAorICAgICAgICBOVUxMLAorICAgICAgICAtMSwKKyAgICAgICAgX2Z1bmN0aW9ucywKKyAgICAgICAgTlVMTCwKKyAgICAgICAgTlVMTCwKKyAgICAgICAgTlVMTCwKKyAgICAgICAgTlVMTAogfTsKIAogUHlNT0RJTklUX0ZVTkMgUHlJbml0X19zcmUodm9pZCkKQEAgLTM5MDcsNyArMzg2OSw3IEBACiAKICAgICBtID0gUHlNb2R1bGVfQ3JlYXRlKCZzcmVtb2R1bGUpOwogICAgIGlmIChtID09IE5VTEwpCi0gICAgCXJldHVybiBOVUxMOworICAgICAgICByZXR1cm4gTlVMTDsKICAgICBkID0gUHlNb2R1bGVfR2V0RGljdChtKTsKIAogICAgIHggPSBQeUxvbmdfRnJvbUxvbmcoU1JFX01BR0lDKTsKZGlmZiAtLWdpdCBhL01vZHVsZXMvX3NzbC5jIGIvTW9kdWxlcy9fc3NsLmMKaW5kZXggNzUxZTI2ZS4uM2UyZTI2NCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fc3NsLmMKKysrIGIvTW9kdWxlcy9fc3NsLmMKQEAgLTE4LDE2ICsxOCwyMSBAQAogCiAjaWZkZWYgV0lUSF9USFJFQUQKICNpbmNsdWRlICJweXRocmVhZC5oIgorI2RlZmluZSBQeVNTTF9CRUdJTl9BTExPV19USFJFQURTX1Moc2F2ZSkgXAorICAgIGRvIHsgaWYgKF9zc2xfbG9ja3NfY291bnQ+MCkgeyAoc2F2ZSkgPSBQeUV2YWxfU2F2ZVRocmVhZCgpOyB9IH0gd2hpbGUgKDApCisjZGVmaW5lIFB5U1NMX0VORF9BTExPV19USFJFQURTX1Moc2F2ZSkgXAorICAgIGRvIHsgaWYgKF9zc2xfbG9ja3NfY291bnQ+MCkgeyBQeUV2YWxfUmVzdG9yZVRocmVhZChzYXZlKTsgfSB9IHdoaWxlICgwKQogI2RlZmluZSBQeVNTTF9CRUdJTl9BTExPV19USFJFQURTIHsgXAogICAgICAgICAgICAgUHlUaHJlYWRTdGF0ZSAqX3NhdmUgPSBOVUxMOyAgXAotICAgICAgICAgICAgaWYgKF9zc2xfbG9ja3NfY291bnQ+MCkge19zYXZlID0gUHlFdmFsX1NhdmVUaHJlYWQoKTt9Ci0jZGVmaW5lIFB5U1NMX0JMT0NLX1RIUkVBRFMgICAgIGlmIChfc3NsX2xvY2tzX2NvdW50PjApe1B5RXZhbF9SZXN0b3JlVGhyZWFkKF9zYXZlKX07Ci0jZGVmaW5lIFB5U1NMX1VOQkxPQ0tfVEhSRUFEUyAgIGlmIChfc3NsX2xvY2tzX2NvdW50PjApe19zYXZlID0gUHlFdmFsX1NhdmVUaHJlYWQoKX07Ci0jZGVmaW5lIFB5U1NMX0VORF9BTExPV19USFJFQURTIGlmIChfc3NsX2xvY2tzX2NvdW50PjApe1B5RXZhbF9SZXN0b3JlVGhyZWFkKF9zYXZlKTt9IFwKLSAgICAgICAgIH0KKyAgICAgICAgICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFNfUyhfc2F2ZSk7CisjZGVmaW5lIFB5U1NMX0JMT0NLX1RIUkVBRFMgICAgIFB5U1NMX0VORF9BTExPV19USFJFQURTX1MoX3NhdmUpOworI2RlZmluZSBQeVNTTF9VTkJMT0NLX1RIUkVBRFMgICBQeVNTTF9CRUdJTl9BTExPV19USFJFQURTX1MoX3NhdmUpOworI2RlZmluZSBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEUyBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEU19TKF9zYXZlKTsgfQogCiAjZWxzZSAgIC8qIG5vIFdJVEhfVEhSRUFEICovCiAKKyNkZWZpbmUgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEU19TKHNhdmUpCisjZGVmaW5lIFB5U1NMX0VORF9BTExPV19USFJFQURTX1Moc2F2ZSkKICNkZWZpbmUgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEUwogI2RlZmluZSBQeVNTTF9CTE9DS19USFJFQURTCiAjZGVmaW5lIFB5U1NMX1VOQkxPQ0tfVEhSRUFEUwpAQCAtOTQsNiArOTksMTEgQEAKIAogLyogU1NMIGVycm9yIG9iamVjdCAqLwogc3RhdGljIFB5T2JqZWN0ICpQeVNTTEVycm9yT2JqZWN0Oworc3RhdGljIFB5T2JqZWN0ICpQeVNTTFplcm9SZXR1cm5FcnJvck9iamVjdDsKK3N0YXRpYyBQeU9iamVjdCAqUHlTU0xXYW50UmVhZEVycm9yT2JqZWN0Oworc3RhdGljIFB5T2JqZWN0ICpQeVNTTFdhbnRXcml0ZUVycm9yT2JqZWN0Oworc3RhdGljIFB5T2JqZWN0ICpQeVNTTFN5c2NhbGxFcnJvck9iamVjdDsKK3N0YXRpYyBQeU9iamVjdCAqUHlTU0xFT0ZFcnJvck9iamVjdDsKIAogI2lmZGVmIFdJVEhfVEhSRUFECiAKQEAgLTEyNCw2ICsxMzQsMTcgQEAKICMgdW5kZWYgSEFWRV9TU0xfQ1RYX0NMRUFSX09QVElPTlMKICNlbmRpZgogCisvKiBJbiBjYXNlIG9mICd0bHMtdW5pcXVlJyBpdCB3aWxsIGJlIDEyIGJ5dGVzIGZvciBUTFMsIDM2IGJ5dGVzIGZvcgorICogb2xkZXIgU1NMLCBidXQgbGV0J3MgYmUgc2FmZSAqLworI2RlZmluZSBQeVNTTF9DQl9NQVhMRU4gMTI4CisKKy8qIFNTTF9nZXRfZmluaXNoZWQgZ290IGFkZGVkIHRvIE9wZW5TU0wgaW4gMC45LjUgKi8KKyNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSID49IDB4MDA5MDUwMGZMCisjIGRlZmluZSBIQVZFX09QRU5TU0xfRklOSVNIRUQgMQorI2Vsc2UKKyMgZGVmaW5lIEhBVkVfT1BFTlNTTF9GSU5JU0hFRCAwCisjZW5kaWYKKwogdHlwZWRlZiBzdHJ1Y3QgewogICAgIFB5T2JqZWN0X0hFQUQKICAgICBTU0xfQ1RYICpjdHg7CkBAIC0xMzUsNiArMTU2LDcgQEAKICAgICBTU0wgKnNzbDsKICAgICBYNTA5ICpwZWVyX2NlcnQ7CiAgICAgaW50IHNodXRkb3duX3NlZW5femVybzsKKyAgICBlbnVtIHB5X3NzbF9zZXJ2ZXJfb3JfY2xpZW50IHNvY2tldF90eXBlOwogfSBQeVNTTFNvY2tldDsKIAogc3RhdGljIFB5VHlwZU9iamVjdCBQeVNTTENvbnRleHRfVHlwZTsKQEAgLTE3NCw2ICsxOTYsNyBAQAogUHlTU0xfU2V0RXJyb3IoUHlTU0xTb2NrZXQgKm9iaiwgaW50IHJldCwgY2hhciAqZmlsZW5hbWUsIGludCBsaW5lbm8pCiB7CiAgICAgUHlPYmplY3QgKnY7CisgICAgUHlPYmplY3QgKnR5cGUgPSBQeVNTTEVycm9yT2JqZWN0OwogICAgIGNoYXIgYnVmWzIwNDhdOwogICAgIGNoYXIgKmVycnN0cjsKICAgICBpbnQgZXJyOwpAQCAtMTg2LDE1ICsyMDksMTggQEAKIAogICAgICAgICBzd2l0Y2ggKGVycikgewogICAgICAgICBjYXNlIFNTTF9FUlJPUl9aRVJPX1JFVFVSTjoKLSAgICAgICAgICAgIGVycnN0ciA9ICJUTFMvU1NMIGNvbm5lY3Rpb24gaGFzIGJlZW4gY2xvc2VkIjsKKyAgICAgICAgICAgIGVycnN0ciA9ICJUTFMvU1NMIGNvbm5lY3Rpb24gaGFzIGJlZW4gY2xvc2VkIChFT0YpIjsKKyAgICAgICAgICAgIHR5cGUgPSBQeVNTTFplcm9SZXR1cm5FcnJvck9iamVjdDsKICAgICAgICAgICAgIHAgPSBQWV9TU0xfRVJST1JfWkVST19SRVRVUk47CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBTU0xfRVJST1JfV0FOVF9SRUFEOgogICAgICAgICAgICAgZXJyc3RyID0gIlRoZSBvcGVyYXRpb24gZGlkIG5vdCBjb21wbGV0ZSAocmVhZCkiOworICAgICAgICAgICAgdHlwZSA9IFB5U1NMV2FudFJlYWRFcnJvck9iamVjdDsKICAgICAgICAgICAgIHAgPSBQWV9TU0xfRVJST1JfV0FOVF9SRUFEOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgU1NMX0VSUk9SX1dBTlRfV1JJVEU6CiAgICAgICAgICAgICBwID0gUFlfU1NMX0VSUk9SX1dBTlRfV1JJVEU7CisgICAgICAgICAgICB0eXBlID0gUHlTU0xXYW50V3JpdGVFcnJvck9iamVjdDsKICAgICAgICAgICAgIGVycnN0ciA9ICJUaGUgb3BlcmF0aW9uIGRpZCBub3QgY29tcGxldGUgKHdyaXRlKSI7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBTU0xfRVJST1JfV0FOVF9YNTA5X0xPT0tVUDoKQEAgLTIxMyw2ICsyMzksNyBAQAogICAgICAgICAgICAgICAgICAgPSAoUHlTb2NrZXRTb2NrT2JqZWN0ICopIFB5V2Vha3JlZl9HZXRPYmplY3Qob2JqLT5Tb2NrZXQpOwogICAgICAgICAgICAgICAgIGlmIChyZXQgPT0gMCB8fCAoKChQeU9iamVjdCAqKXMpID09IFB5X05vbmUpKSB7CiAgICAgICAgICAgICAgICAgICAgIHAgPSBQWV9TU0xfRVJST1JfRU9GOworICAgICAgICAgICAgICAgICAgICB0eXBlID0gUHlTU0xFT0ZFcnJvck9iamVjdDsKICAgICAgICAgICAgICAgICAgICAgZXJyc3RyID0gIkVPRiBvY2N1cnJlZCBpbiB2aW9sYXRpb24gb2YgcHJvdG9jb2wiOwogICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocmV0ID09IC0xKSB7CiAgICAgICAgICAgICAgICAgICAgIC8qIHVuZGVybHlpbmcgQklPIHJlcG9ydGVkIGFuIEkvTyBlcnJvciAqLwpAQCAtMjIzLDYgKzI1MCw3IEBACiAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2OwogICAgICAgICAgICAgICAgIH0gZWxzZSB7IC8qIHBvc3NpYmxlPyAqLwogICAgICAgICAgICAgICAgICAgICBwID0gUFlfU1NMX0VSUk9SX1NZU0NBTEw7CisgICAgICAgICAgICAgICAgICAgIHR5cGUgPSBQeVNTTFN5c2NhbGxFcnJvck9iamVjdDsKICAgICAgICAgICAgICAgICAgICAgZXJyc3RyID0gIlNvbWUgSS9PIGVycm9yIG9jY3VycmVkIjsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9IGVsc2UgewpAQCAtMjU1LDcgKzI4Myw3IEBACiAgICAgRVJSX2NsZWFyX2Vycm9yKCk7CiAgICAgdiA9IFB5X0J1aWxkVmFsdWUoIihpcykiLCBwLCBidWYpOwogICAgIGlmICh2ICE9IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5U1NMRXJyb3JPYmplY3QsIHYpOworICAgICAgICBQeUVycl9TZXRPYmplY3QodHlwZSwgdik7CiAgICAgICAgIFB5X0RFQ1JFRih2KTsKICAgICB9CiAgICAgcmV0dXJuIE5VTEw7CkBAIC0zMjgsNiArMzU2LDcgQEAKICAgICAgICAgU1NMX3NldF9hY2NlcHRfc3RhdGUoc2VsZi0+c3NsKTsKICAgICBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEUwogCisgICAgc2VsZi0+c29ja2V0X3R5cGUgPSBzb2NrZXRfdHlwZTsKICAgICBzZWxmLT5Tb2NrZXQgPSBQeVdlYWtyZWZfTmV3UmVmKChQeU9iamVjdCAqKSBzb2NrLCBOVUxMKTsKICAgICByZXR1cm4gc2VsZjsKIH0KQEAgLTM1Niw3ICszODUsNiBAQAogCiAgICAgLyogQWN0dWFsbHkgbmVnb3RpYXRlIFNTTCBjb25uZWN0aW9uICovCiAgICAgLyogWFhYIElmIFNTTF9kb19oYW5kc2hha2UoKSByZXR1cm5zIDAsIGl0J3MgYWxzbyBhIGZhaWx1cmUuICovCi0gICAgc29ja3N0YXRlID0gMDsKICAgICBkbyB7CiAgICAgICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAgICAgcmV0ID0gU1NMX2RvX2hhbmRzaGFrZShzZWxmLT5zc2wpOwpAQCAtOTcxLDYgKzk5OSwyNSBAQAogICAgIHJldHVybiBOVUxMOwogfQogCitzdGF0aWMgUHlPYmplY3QgKlB5U1NMX2NvbXByZXNzaW9uKFB5U1NMU29ja2V0ICpzZWxmKSB7CisjaWZkZWYgT1BFTlNTTF9OT19DT01QCisgICAgUHlfUkVUVVJOX05PTkU7CisjZWxzZQorICAgIGNvbnN0IENPTVBfTUVUSE9EICpjb21wX21ldGhvZDsKKyAgICBjb25zdCBjaGFyICpzaG9ydF9uYW1lOworCisgICAgaWYgKHNlbGYtPnNzbCA9PSBOVUxMKQorICAgICAgICBQeV9SRVRVUk5fTk9ORTsKKyAgICBjb21wX21ldGhvZCA9IFNTTF9nZXRfY3VycmVudF9jb21wcmVzc2lvbihzZWxmLT5zc2wpOworICAgIGlmIChjb21wX21ldGhvZCA9PSBOVUxMIHx8IGNvbXBfbWV0aG9kLT50eXBlID09IE5JRF91bmRlZikKKyAgICAgICAgUHlfUkVUVVJOX05PTkU7CisgICAgc2hvcnRfbmFtZSA9IE9CSl9uaWQyc24oY29tcF9tZXRob2QtPnR5cGUpOworICAgIGlmIChzaG9ydF9uYW1lID09IE5VTEwpCisgICAgICAgIFB5X1JFVFVSTl9OT05FOworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KHNob3J0X25hbWUpOworI2VuZGlmCit9CisKIHN0YXRpYyB2b2lkIFB5U1NMX2RlYWxsb2MoUHlTU0xTb2NrZXQgKnNlbGYpCiB7CiAgICAgaWYgKHNlbGYtPnBlZXJfY2VydCkgICAgICAgIC8qIFBvc3NpYmxlIG5vdCB0byBoYXZlIG9uZT8gKi8KQEAgLTEwOTEsNyArMTEzOCw2IEBACiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQogICAgIGRvIHsKLSAgICAgICAgZXJyID0gMDsKICAgICAgICAgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgICAgICBsZW4gPSBTU0xfd3JpdGUoc2VsZi0+c3NsLCBidWYuYnVmLCBidWYubGVuKTsKICAgICAgICAgZXJyID0gU1NMX2dldF9lcnJvcihzZWxmLT5zc2wsIGxlbik7CkBAIC0xMjI3LDcgKzEyNzMsNiBAQAogICAgICAgICB9CiAgICAgfQogICAgIGRvIHsKLSAgICAgICAgZXJyID0gMDsKICAgICAgICAgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgICAgICBjb3VudCA9IFNTTF9yZWFkKHNlbGYtPnNzbCwgbWVtLCBsZW4pOwogICAgICAgICBlcnIgPSBTU0xfZ2V0X2Vycm9yKHNlbGYtPnNzbCwgY291bnQpOwpAQCAtMTM3OSw2ICsxNDI0LDQxIEBACiBEb2VzIHRoZSBTU0wgc2h1dGRvd24gaGFuZHNoYWtlIHdpdGggdGhlIHJlbW90ZSBlbmQsIGFuZCByZXR1cm5zXG5cCiB0aGUgdW5kZXJseWluZyBzb2NrZXQgb2JqZWN0LiIpOwogCisjaWYgSEFWRV9PUEVOU1NMX0ZJTklTSEVECitzdGF0aWMgUHlPYmplY3QgKgorUHlTU0xfdGxzX3VuaXF1ZV9jYihQeVNTTFNvY2tldCAqc2VsZikKK3sKKyAgICBQeU9iamVjdCAqcmV0dmFsID0gTlVMTDsKKyAgICBjaGFyIGJ1ZltQeVNTTF9DQl9NQVhMRU5dOworICAgIGludCBsZW47CisKKyAgICBpZiAoU1NMX3Nlc3Npb25fcmV1c2VkKHNlbGYtPnNzbCkgXiAhc2VsZi0+c29ja2V0X3R5cGUpIHsKKyAgICAgICAgLyogaWYgc2Vzc2lvbiBpcyByZXN1bWVkIFhPUiB3ZSBhcmUgdGhlIGNsaWVudCAqLworICAgICAgICBsZW4gPSBTU0xfZ2V0X2ZpbmlzaGVkKHNlbGYtPnNzbCwgYnVmLCBQeVNTTF9DQl9NQVhMRU4pOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgLyogaWYgYSBuZXcgc2Vzc2lvbiBYT1Igd2UgYXJlIHRoZSBzZXJ2ZXIgKi8KKyAgICAgICAgbGVuID0gU1NMX2dldF9wZWVyX2ZpbmlzaGVkKHNlbGYtPnNzbCwgYnVmLCBQeVNTTF9DQl9NQVhMRU4pOworICAgIH0KKworICAgIC8qIEl0IGNhbm5vdCBiZSBuZWdhdGl2ZSBpbiBjdXJyZW50IE9wZW5TU0wgdmVyc2lvbiBhcyBvZiBKdWx5IDIwMTEgKi8KKyAgICBhc3NlcnQobGVuID49IDApOworICAgIGlmIChsZW4gPT0gMCkKKyAgICAgICAgUHlfUkVUVVJOX05PTkU7CisKKyAgICByZXR2YWwgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKGJ1ZiwgbGVuKTsKKworICAgIHJldHVybiByZXR2YWw7Cit9CisKK1B5RG9jX1NUUlZBUihQeVNTTF90bHNfdW5pcXVlX2NiX2RvYywKKyJ0bHNfdW5pcXVlX2NiKCkgLT4gYnl0ZXNcblwKK1xuXAorUmV0dXJucyB0aGUgJ3Rscy11bmlxdWUnIGNoYW5uZWwgYmluZGluZyBkYXRhLCBhcyBkZWZpbmVkIGJ5IFJGQyA1OTI5LlxuXAorXG5cCitJZiB0aGUgVExTIGhhbmRzaGFrZSBpcyBub3QgeWV0IGNvbXBsZXRlLCBOb25lIGlzIHJldHVybmVkIik7CisKKyNlbmRpZiAvKiBIQVZFX09QRU5TU0xfRklOSVNIRUQgKi8KIAogc3RhdGljIFB5TWV0aG9kRGVmIFB5U1NMTWV0aG9kc1tdID0gewogICAgIHsiZG9faGFuZHNoYWtlIiwgKFB5Q0Z1bmN0aW9uKVB5U1NMX1NTTGRvX2hhbmRzaGFrZSwgTUVUSF9OT0FSR1N9LApAQCAtMTM5MSw4ICsxNDcxLDEzIEBACiAgICAgeyJwZWVyX2NlcnRpZmljYXRlIiwgKFB5Q0Z1bmN0aW9uKVB5U1NMX3BlZXJjZXJ0LCBNRVRIX1ZBUkFSR1MsCiAgICAgIFB5U1NMX3BlZXJjZXJ0X2RvY30sCiAgICAgeyJjaXBoZXIiLCAoUHlDRnVuY3Rpb24pUHlTU0xfY2lwaGVyLCBNRVRIX05PQVJHU30sCisgICAgeyJjb21wcmVzc2lvbiIsIChQeUNGdW5jdGlvbilQeVNTTF9jb21wcmVzc2lvbiwgTUVUSF9OT0FSR1N9LAogICAgIHsic2h1dGRvd24iLCAoUHlDRnVuY3Rpb24pUHlTU0xfU1NMc2h1dGRvd24sIE1FVEhfTk9BUkdTLAogICAgICBQeVNTTF9TU0xzaHV0ZG93bl9kb2N9LAorI2lmIEhBVkVfT1BFTlNTTF9GSU5JU0hFRAorICAgIHsidGxzX3VuaXF1ZV9jYiIsIChQeUNGdW5jdGlvbilQeVNTTF90bHNfdW5pcXVlX2NiLCBNRVRIX05PQVJHUywKKyAgICAgUHlTU0xfdGxzX3VuaXF1ZV9jYl9kb2N9LAorI2VuZGlmCiAgICAge05VTEwsIE5VTEx9CiB9OwogCkBAIC0xNTg2LDE5ICsxNjcxLDExOCBAQAogICAgIHJldHVybiAwOwogfQogCit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlUaHJlYWRTdGF0ZSAqdGhyZWFkX3N0YXRlOworICAgIFB5T2JqZWN0ICpjYWxsYWJsZTsKKyAgICBjaGFyICpwYXNzd29yZDsKKyAgICBQeV9zc2l6ZV90IHNpemU7CisgICAgaW50IGVycm9yOworfSBfUHlTU0xQYXNzd29yZEluZm87CisKK3N0YXRpYyBpbnQKK19wd2luZm9fc2V0KF9QeVNTTFBhc3N3b3JkSW5mbyAqcHdfaW5mbywgUHlPYmplY3QqIHBhc3N3b3JkLAorICAgICAgICAgICAgY29uc3QgY2hhciAqYmFkX3R5cGVfZXJyb3IpCit7CisgICAgLyogU2V0IHRoZSBwYXNzd29yZCBhbmQgc2l6ZSBmaWVsZHMgb2YgYSBfUHlTU0xQYXNzd29yZEluZm8gc3RydWN0CisgICAgICAgZnJvbSBhIHVuaWNvZGUsIGJ5dGVzLCBvciBieXRlIGFycmF5IG9iamVjdC4KKyAgICAgICBUaGUgcGFzc3dvcmQgZmllbGQgd2lsbCBiZSBkeW5hbWljYWxseSBhbGxvY2F0ZWQgYW5kIG11c3QgYmUgZnJlZWQKKyAgICAgICBieSB0aGUgY2FsbGVyICovCisgICAgUHlPYmplY3QgKnBhc3N3b3JkX2J5dGVzID0gTlVMTDsKKyAgICBjb25zdCBjaGFyICpkYXRhID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IHNpemU7CisKKyAgICBpZiAoUHlVbmljb2RlX0NoZWNrKHBhc3N3b3JkKSkgeworICAgICAgICBwYXNzd29yZF9ieXRlcyA9IFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcocGFzc3dvcmQsIE5VTEwsIE5VTEwpOworICAgICAgICBpZiAoIXBhc3N3b3JkX2J5dGVzKSB7CisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgICAgIGRhdGEgPSBQeUJ5dGVzX0FTX1NUUklORyhwYXNzd29yZF9ieXRlcyk7CisgICAgICAgIHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKHBhc3N3b3JkX2J5dGVzKTsKKyAgICB9IGVsc2UgaWYgKFB5Qnl0ZXNfQ2hlY2socGFzc3dvcmQpKSB7CisgICAgICAgIGRhdGEgPSBQeUJ5dGVzX0FTX1NUUklORyhwYXNzd29yZCk7CisgICAgICAgIHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKHBhc3N3b3JkKTsKKyAgICB9IGVsc2UgaWYgKFB5Qnl0ZUFycmF5X0NoZWNrKHBhc3N3b3JkKSkgeworICAgICAgICBkYXRhID0gUHlCeXRlQXJyYXlfQVNfU1RSSU5HKHBhc3N3b3JkKTsKKyAgICAgICAgc2l6ZSA9IFB5Qnl0ZUFycmF5X0dFVF9TSVpFKHBhc3N3b3JkKTsKKyAgICB9IGVsc2UgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCBiYWRfdHlwZV9lcnJvcik7CisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgfQorCisgICAgZnJlZShwd19pbmZvLT5wYXNzd29yZCk7CisgICAgcHdfaW5mby0+cGFzc3dvcmQgPSBtYWxsb2Moc2l6ZSk7CisgICAgaWYgKCFwd19pbmZvLT5wYXNzd29yZCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfTWVtb3J5RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAidW5hYmxlIHRvIGFsbG9jYXRlIHBhc3N3b3JkIGJ1ZmZlciIpOworICAgICAgICBnb3RvIGVycm9yOworICAgIH0KKyAgICBtZW1jcHkocHdfaW5mby0+cGFzc3dvcmQsIGRhdGEsIHNpemUpOworICAgIHB3X2luZm8tPnNpemUgPSBzaXplOworCisgICAgUHlfWERFQ1JFRihwYXNzd29yZF9ieXRlcyk7CisgICAgcmV0dXJuIDE7CisKK2Vycm9yOgorICAgIFB5X1hERUNSRUYocGFzc3dvcmRfYnl0ZXMpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50CitfcGFzc3dvcmRfY2FsbGJhY2soY2hhciAqYnVmLCBpbnQgc2l6ZSwgaW50IHJ3ZmxhZywgdm9pZCAqdXNlcmRhdGEpCit7CisgICAgX1B5U1NMUGFzc3dvcmRJbmZvICpwd19pbmZvID0gKF9QeVNTTFBhc3N3b3JkSW5mbyopIHVzZXJkYXRhOworICAgIFB5T2JqZWN0ICpmbl9yZXQgPSBOVUxMOworCisgICAgUHlTU0xfRU5EX0FMTE9XX1RIUkVBRFNfUyhwd19pbmZvLT50aHJlYWRfc3RhdGUpOworCisgICAgaWYgKHB3X2luZm8tPmNhbGxhYmxlKSB7CisgICAgICAgIGZuX3JldCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MocHdfaW5mby0+Y2FsbGFibGUsIE5VTEwpOworICAgICAgICBpZiAoIWZuX3JldCkgeworICAgICAgICAgICAgLyogVE9ETzogSXQgd291bGQgYmUgbmljZSB0byBtb3ZlIF9jdHlwZXNfYWRkX3RyYWNlYmFjaygpIGludG8gdGhlCisgICAgICAgICAgICAgICBjb3JlIHB5dGhvbiBBUEksIHNvIHdlIGNvdWxkIHVzZSBpdCB0byBhZGQgYSBmcmFtZSBoZXJlICovCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisKKyAgICAgICAgaWYgKCFfcHdpbmZvX3NldChwd19pbmZvLCBmbl9yZXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgInBhc3N3b3JkIGNhbGxiYWNrIG11c3QgcmV0dXJuIGEgc3RyaW5nIikpIHsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIH0KKyAgICAgICAgUHlfQ0xFQVIoZm5fcmV0KTsKKyAgICB9CisKKyAgICBpZiAocHdfaW5mby0+c2l6ZSA+IHNpemUpIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAicGFzc3dvcmQgY2Fubm90IGJlIGxvbmdlciB0aGFuICVkIGJ5dGVzIiwgc2l6ZSk7CisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgfQorCisgICAgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEU19TKHB3X2luZm8tPnRocmVhZF9zdGF0ZSk7CisgICAgbWVtY3B5KGJ1ZiwgcHdfaW5mby0+cGFzc3dvcmQsIHB3X2luZm8tPnNpemUpOworICAgIHJldHVybiBwd19pbmZvLT5zaXplOworCitlcnJvcjoKKyAgICBQeV9YREVDUkVGKGZuX3JldCk7CisgICAgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEU19TKHB3X2luZm8tPnRocmVhZF9zdGF0ZSk7CisgICAgcHdfaW5mby0+ZXJyb3IgPSAxOworICAgIHJldHVybiAtMTsKK30KKwogc3RhdGljIFB5T2JqZWN0ICoKIGxvYWRfY2VydF9jaGFpbihQeVNTTENvbnRleHQgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKLSAgICBjaGFyICprd2xpc3RbXSA9IHsiY2VydGZpbGUiLCAia2V5ZmlsZSIsIE5VTEx9OwotICAgIFB5T2JqZWN0ICpjZXJ0ZmlsZSwgKmtleWZpbGUgPSBOVUxMOworICAgIGNoYXIgKmt3bGlzdFtdID0geyJjZXJ0ZmlsZSIsICJrZXlmaWxlIiwgInBhc3N3b3JkIiwgTlVMTH07CisgICAgUHlPYmplY3QgKmNlcnRmaWxlLCAqa2V5ZmlsZSA9IE5VTEwsICpwYXNzd29yZCA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmNlcnRmaWxlX2J5dGVzID0gTlVMTCwgKmtleWZpbGVfYnl0ZXMgPSBOVUxMOworICAgIHBlbV9wYXNzd29yZF9jYiAqb3JpZ19wYXNzd2RfY2IgPSBzZWxmLT5jdHgtPmRlZmF1bHRfcGFzc3dkX2NhbGxiYWNrOworICAgIHZvaWQgKm9yaWdfcGFzc3dkX3VzZXJkYXRhID0gc2VsZi0+Y3R4LT5kZWZhdWx0X3Bhc3N3ZF9jYWxsYmFja191c2VyZGF0YTsKKyAgICBfUHlTU0xQYXNzd29yZEluZm8gcHdfaW5mbyA9IHsgTlVMTCwgTlVMTCwgTlVMTCwgMCwgMCB9OwogICAgIGludCByOwogCiAgICAgZXJybm8gPSAwOwogICAgIEVSUl9jbGVhcl9lcnJvcigpOwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsCi0gICAgICAgICJPfE86bG9hZF9jZXJ0X2NoYWluIiwga3dsaXN0LAotICAgICAgICAmY2VydGZpbGUsICZrZXlmaWxlKSkKKyAgICAgICAgIk98T086bG9hZF9jZXJ0X2NoYWluIiwga3dsaXN0LAorICAgICAgICAmY2VydGZpbGUsICZrZXlmaWxlLCAmcGFzc3dvcmQpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoa2V5ZmlsZSA9PSBQeV9Ob25lKQogICAgICAgICBrZXlmaWxlID0gTlVMTDsKQEAgLTE2MTIsMTIgKzE3OTYsMjYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICJrZXlmaWxlIHNob3VsZCBiZSBhIHZhbGlkIGZpbGVzeXN0ZW0gcGF0aCIpOwogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KLSAgICBQeVNTTF9CRUdJTl9BTExPV19USFJFQURTCisgICAgaWYgKHBhc3N3b3JkICYmIHBhc3N3b3JkICE9IFB5X05vbmUpIHsKKyAgICAgICAgaWYgKFB5Q2FsbGFibGVfQ2hlY2socGFzc3dvcmQpKSB7CisgICAgICAgICAgICBwd19pbmZvLmNhbGxhYmxlID0gcGFzc3dvcmQ7CisgICAgICAgIH0gZWxzZSBpZiAoIV9wd2luZm9fc2V0KCZwd19pbmZvLCBwYXNzd29yZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhc3N3b3JkIHNob3VsZCBiZSBhIHN0cmluZyBvciBjYWxsYWJsZSIpKSB7CisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgICAgIFNTTF9DVFhfc2V0X2RlZmF1bHRfcGFzc3dkX2NiKHNlbGYtPmN0eCwgX3Bhc3N3b3JkX2NhbGxiYWNrKTsKKyAgICAgICAgU1NMX0NUWF9zZXRfZGVmYXVsdF9wYXNzd2RfY2JfdXNlcmRhdGEoc2VsZi0+Y3R4LCAmcHdfaW5mbyk7CisgICAgfQorICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFNfUyhwd19pbmZvLnRocmVhZF9zdGF0ZSk7CiAgICAgciA9IFNTTF9DVFhfdXNlX2NlcnRpZmljYXRlX2NoYWluX2ZpbGUoc2VsZi0+Y3R4LAogICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhjZXJ0ZmlsZV9ieXRlcykpOwotICAgIFB5U1NMX0VORF9BTExPV19USFJFQURTCisgICAgUHlTU0xfRU5EX0FMTE9XX1RIUkVBRFNfUyhwd19pbmZvLnRocmVhZF9zdGF0ZSk7CiAgICAgaWYgKHIgIT0gMSkgewotICAgICAgICBpZiAoZXJybm8gIT0gMCkgeworICAgICAgICBpZiAocHdfaW5mby5lcnJvcikgeworICAgICAgICAgICAgRVJSX2NsZWFyX2Vycm9yKCk7CisgICAgICAgICAgICAvKiB0aGUgcGFzc3dvcmQgY2FsbGJhY2sgaGFzIGFscmVhZHkgc2V0IHRoZSBlcnJvciBpbmZvcm1hdGlvbiAqLworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKGVycm5vICE9IDApIHsKICAgICAgICAgICAgIEVSUl9jbGVhcl9lcnJvcigpOwogICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOwogICAgICAgICB9CkBAIC0xNjI2LDMzICsxODI0LDQzIEBACiAgICAgICAgIH0KICAgICAgICAgZ290byBlcnJvcjsKICAgICB9Ci0gICAgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIFB5U1NMX0JFR0lOX0FMTE9XX1RIUkVBRFNfUyhwd19pbmZvLnRocmVhZF9zdGF0ZSk7CiAgICAgciA9IFNTTF9DVFhfdXNlX1ByaXZhdGVLZXlfZmlsZShzZWxmLT5jdHgsCiAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKGtleWZpbGUgPyBrZXlmaWxlX2J5dGVzIDogY2VydGZpbGVfYnl0ZXMpLAogICAgICAgICBTU0xfRklMRVRZUEVfUEVNKTsKLSAgICBQeVNTTF9FTkRfQUxMT1dfVEhSRUFEUwotICAgIFB5X1hERUNSRUYoa2V5ZmlsZV9ieXRlcyk7Ci0gICAgUHlfWERFQ1JFRihjZXJ0ZmlsZV9ieXRlcyk7CisgICAgUHlTU0xfRU5EX0FMTE9XX1RIUkVBRFNfUyhwd19pbmZvLnRocmVhZF9zdGF0ZSk7CisgICAgUHlfQ0xFQVIoa2V5ZmlsZV9ieXRlcyk7CisgICAgUHlfQ0xFQVIoY2VydGZpbGVfYnl0ZXMpOwogICAgIGlmIChyICE9IDEpIHsKLSAgICAgICAgaWYgKGVycm5vICE9IDApIHsKKyAgICAgICAgaWYgKHB3X2luZm8uZXJyb3IpIHsKKyAgICAgICAgICAgIEVSUl9jbGVhcl9lcnJvcigpOworICAgICAgICAgICAgLyogdGhlIHBhc3N3b3JkIGNhbGxiYWNrIGhhcyBhbHJlYWR5IHNldCB0aGUgZXJyb3IgaW5mb3JtYXRpb24gKi8KKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChlcnJubyAhPSAwKSB7CiAgICAgICAgICAgICBFUlJfY2xlYXJfZXJyb3IoKTsKICAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIF9zZXRTU0xFcnJvcihOVUxMLCAwLCBfX0ZJTEVfXywgX19MSU5FX18pOwogICAgICAgICB9Ci0gICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KLSAgICBQeVNTTF9CRUdJTl9BTExPV19USFJFQURTCisgICAgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEU19TKHB3X2luZm8udGhyZWFkX3N0YXRlKTsKICAgICByID0gU1NMX0NUWF9jaGVja19wcml2YXRlX2tleShzZWxmLT5jdHgpOwotICAgIFB5U1NMX0VORF9BTExPV19USFJFQURTCisgICAgUHlTU0xfRU5EX0FMTE9XX1RIUkVBRFNfUyhwd19pbmZvLnRocmVhZF9zdGF0ZSk7CiAgICAgaWYgKHIgIT0gMSkgewogICAgICAgICBfc2V0U1NMRXJyb3IoTlVMTCwgMCwgX19GSUxFX18sIF9fTElORV9fKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQorICAgIFNTTF9DVFhfc2V0X2RlZmF1bHRfcGFzc3dkX2NiKHNlbGYtPmN0eCwgb3JpZ19wYXNzd2RfY2IpOworICAgIFNTTF9DVFhfc2V0X2RlZmF1bHRfcGFzc3dkX2NiX3VzZXJkYXRhKHNlbGYtPmN0eCwgb3JpZ19wYXNzd2RfdXNlcmRhdGEpOworICAgIGZyZWUocHdfaW5mby5wYXNzd29yZCk7CiAgICAgUHlfUkVUVVJOX05PTkU7CiAKIGVycm9yOgorICAgIFNTTF9DVFhfc2V0X2RlZmF1bHRfcGFzc3dkX2NiKHNlbGYtPmN0eCwgb3JpZ19wYXNzd2RfY2IpOworICAgIFNTTF9DVFhfc2V0X2RlZmF1bHRfcGFzc3dkX2NiX3VzZXJkYXRhKHNlbGYtPmN0eCwgb3JpZ19wYXNzd2RfdXNlcmRhdGEpOworICAgIGZyZWUocHdfaW5mby5wYXNzd29yZCk7CiAgICAgUHlfWERFQ1JFRihrZXlmaWxlX2J5dGVzKTsKICAgICBQeV9YREVDUkVGKGNlcnRmaWxlX2J5dGVzKTsKICAgICByZXR1cm4gTlVMTDsKQEAgLTE3MTUsNiArMTkyMywzOCBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgorbG9hZF9kaF9wYXJhbXMoUHlTU0xDb250ZXh0ICpzZWxmLCBQeU9iamVjdCAqZmlsZXBhdGgpCit7CisgICAgRklMRSAqZjsKKyAgICBESCAqZGg7CisKKyAgICBmID0gX1B5X2ZvcGVuKGZpbGVwYXRoLCAicmIiKTsKKyAgICBpZiAoZiA9PSBOVUxMKSB7CisgICAgICAgIGlmICghUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJub1dpdGhGaWxlbmFtZU9iamVjdChQeUV4Y19PU0Vycm9yLCBmaWxlcGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlcnJubyA9IDA7CisgICAgUHlTU0xfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIGRoID0gUEVNX3JlYWRfREhwYXJhbXMoZiwgTlVMTCwgTlVMTCwgTlVMTCk7CisgICAgUHlTU0xfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAoZGggPT0gTlVMTCkgeworICAgICAgICBpZiAoZXJybm8gIT0gMCkgeworICAgICAgICAgICAgRVJSX2NsZWFyX2Vycm9yKCk7CisgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWVPYmplY3QoUHlFeGNfT1NFcnJvciwgZmlsZXBhdGgpOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgX3NldFNTTEVycm9yKE5VTEwsIDAsIF9fRklMRV9fLCBfX0xJTkVfXyk7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmIChTU0xfQ1RYX3NldF90bXBfZGgoc2VsZi0+Y3R4LCBkaCkgPT0gMCkKKyAgICAgICAgX3NldFNTTEVycm9yKE5VTEwsIDAsIF9fRklMRV9fLCBfX0xJTkVfXyk7CisgICAgREhfZnJlZShkaCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCiBjb250ZXh0X3dyYXBfc29ja2V0KFB5U1NMQ29udGV4dCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewogICAgIGNoYXIgKmt3bGlzdFtdID0geyJzb2NrIiwgInNlcnZlcl9zaWRlIiwgInNlcnZlcl9ob3N0bmFtZSIsIE5VTEx9OwpAQCAtMTc5OSw2ICsyMDM5LDM1IEBACiAgICAgUHlfUkVUVVJOX05PTkU7CiB9CiAKKyNpZm5kZWYgT1BFTlNTTF9OT19FQ0RICitzdGF0aWMgUHlPYmplY3QgKgorc2V0X2VjZGhfY3VydmUoUHlTU0xDb250ZXh0ICpzZWxmLCBQeU9iamVjdCAqbmFtZSkKK3sKKyAgICBQeU9iamVjdCAqbmFtZV9ieXRlczsKKyAgICBpbnQgbmlkOworICAgIEVDX0tFWSAqa2V5OworCisgICAgaWYgKCFQeVVuaWNvZGVfRlNDb252ZXJ0ZXIobmFtZSwgJm5hbWVfYnl0ZXMpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBhc3NlcnQoUHlCeXRlc19DaGVjayhuYW1lX2J5dGVzKSk7CisgICAgbmlkID0gT0JKX3NuMm5pZChQeUJ5dGVzX0FTX1NUUklORyhuYW1lX2J5dGVzKSk7CisgICAgUHlfREVDUkVGKG5hbWVfYnl0ZXMpOworICAgIGlmIChuaWQgPT0gMCkgeworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJ1bmtub3duIGVsbGlwdGljIGN1cnZlIG5hbWUgJVIiLCBuYW1lKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGtleSA9IEVDX0tFWV9uZXdfYnlfY3VydmVfbmFtZShuaWQpOworICAgIGlmIChrZXkgPT0gTlVMTCkgeworICAgICAgICBfc2V0U1NMRXJyb3IoTlVMTCwgMCwgX19GSUxFX18sIF9fTElORV9fKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIFNTTF9DVFhfc2V0X3RtcF9lY2RoKHNlbGYtPmN0eCwga2V5KTsKKyAgICBFQ19LRVlfZnJlZShrZXkpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCisKIHN0YXRpYyBQeUdldFNldERlZiBjb250ZXh0X2dldHNldGxpc3RbXSA9IHsKICAgICB7Im9wdGlvbnMiLCAoZ2V0dGVyKSBnZXRfb3B0aW9ucywKICAgICAgICAgICAgICAgICAoc2V0dGVyKSBzZXRfb3B0aW9ucywgTlVMTH0sCkBAIC0xODE0LDEyICsyMDgzLDE4IEBACiAgICAgICAgICAgICAgICAgICAgIE1FVEhfVkFSQVJHUywgTlVMTH0sCiAgICAgeyJsb2FkX2NlcnRfY2hhaW4iLCAoUHlDRnVuY3Rpb24pIGxvYWRfY2VydF9jaGFpbiwKICAgICAgICAgICAgICAgICAgICAgICAgIE1FVEhfVkFSQVJHUyB8IE1FVEhfS0VZV09SRFMsIE5VTEx9LAorICAgIHsibG9hZF9kaF9wYXJhbXMiLCAoUHlDRnVuY3Rpb24pIGxvYWRfZGhfcGFyYW1zLAorICAgICAgICAgICAgICAgICAgICAgICBNRVRIX08sIE5VTEx9LAogICAgIHsibG9hZF92ZXJpZnlfbG9jYXRpb25zIiwgKFB5Q0Z1bmN0aW9uKSBsb2FkX3ZlcmlmeV9sb2NhdGlvbnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLCBOVUxMfSwKICAgICB7InNlc3Npb25fc3RhdHMiLCAoUHlDRnVuY3Rpb24pIHNlc3Npb25fc3RhdHMsCiAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9OT0FSR1MsIE5VTEx9LAogICAgIHsic2V0X2RlZmF1bHRfdmVyaWZ5X3BhdGhzIiwgKFB5Q0Z1bmN0aW9uKSBzZXRfZGVmYXVsdF92ZXJpZnlfcGF0aHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNRVRIX05PQVJHUywgTlVMTH0sCisjaWZuZGVmIE9QRU5TU0xfTk9fRUNESAorICAgIHsic2V0X2VjZGhfY3VydmUiLCAoUHlDRnVuY3Rpb24pIHNldF9lY2RoX2N1cnZlLAorICAgICAgICAgICAgICAgICAgICAgICBNRVRIX08sIE5VTEx9LAorI2VuZGlmCiAgICAge05VTEwsIE5VTEx9ICAgICAgICAvKiBzZW50aW5lbCAqLwogfTsKIApAQCAtMTg5MCw2ICsyMTY1LDY5IEBACiBib3VuZCBvbiB0aGUgZW50cm9weSBjb250YWluZWQgaW4gc3RyaW5nLiAgU2VlIFJGQyAxNzUwLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgorUHlTU0xfUkFORChpbnQgbGVuLCBpbnQgcHNldWRvKQoreworICAgIGludCBvazsKKyAgICBQeU9iamVjdCAqYnl0ZXM7CisgICAgdW5zaWduZWQgbG9uZyBlcnI7CisgICAgY29uc3QgY2hhciAqZXJyc3RyOworICAgIFB5T2JqZWN0ICp2OworCisgICAgYnl0ZXMgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGxlbik7CisgICAgaWYgKGJ5dGVzID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChwc2V1ZG8pIHsKKyAgICAgICAgb2sgPSBSQU5EX3BzZXVkb19ieXRlcygodW5zaWduZWQgY2hhciopUHlCeXRlc19BU19TVFJJTkcoYnl0ZXMpLCBsZW4pOworICAgICAgICBpZiAob2sgPT0gMCB8fCBvayA9PSAxKQorICAgICAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIk5PIiwgYnl0ZXMsIG9rID09IDEgPyBQeV9UcnVlIDogUHlfRmFsc2UpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgb2sgPSBSQU5EX2J5dGVzKCh1bnNpZ25lZCBjaGFyKilQeUJ5dGVzX0FTX1NUUklORyhieXRlcyksIGxlbik7CisgICAgICAgIGlmIChvayA9PSAxKQorICAgICAgICAgICAgcmV0dXJuIGJ5dGVzOworICAgIH0KKyAgICBQeV9ERUNSRUYoYnl0ZXMpOworCisgICAgZXJyID0gRVJSX2dldF9lcnJvcigpOworICAgIGVycnN0ciA9IEVSUl9yZWFzb25fZXJyb3Jfc3RyaW5nKGVycik7CisgICAgdiA9IFB5X0J1aWxkVmFsdWUoIihrcykiLCBlcnIsIGVycnN0cik7CisgICAgaWYgKHYgIT0gTlVMTCkgeworICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlTU0xFcnJvck9iamVjdCwgdik7CisgICAgICAgIFB5X0RFQ1JFRih2KTsKKyAgICB9CisgICAgcmV0dXJuIE5VTEw7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitQeVNTTF9SQU5EX2J5dGVzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgbGVuOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaTpSQU5EX2J5dGVzIiwgJmxlbikpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJldHVybiBQeVNTTF9SQU5EKGxlbiwgMCk7Cit9CisKK1B5RG9jX1NUUlZBUihQeVNTTF9SQU5EX2J5dGVzX2RvYywKKyJSQU5EX2J5dGVzKG4pIC0+IGJ5dGVzXG5cCitcblwKK0dlbmVyYXRlIG4gY3J5cHRvZ3JhcGhpY2FsbHkgc3Ryb25nIHBzZXVkby1yYW5kb20gYnl0ZXMuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitQeVNTTF9SQU5EX3BzZXVkb19ieXRlcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IGxlbjsKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6UkFORF9wc2V1ZG9fYnl0ZXMiLCAmbGVuKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIFB5U1NMX1JBTkQobGVuLCAxKTsKK30KKworUHlEb2NfU1RSVkFSKFB5U1NMX1JBTkRfcHNldWRvX2J5dGVzX2RvYywKKyJSQU5EX3BzZXVkb19ieXRlcyhuKSAtPiAoYnl0ZXMsIGlzX2NyeXB0b2dyYXBoaWMpXG5cCitcblwKK0dlbmVyYXRlIG4gcHNldWRvLXJhbmRvbSBieXRlcy4gaXNfY3J5cHRvZ3JhcGhpYyBpcyBUcnVlIGlmIHRoZSBieXRlc1wKK2dlbmVyYXRlZCBhcmUgY3J5cHRvZ3JhcGhpY2FsbHkgc3Ryb25nLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgogUHlTU0xfUkFORF9zdGF0dXMoUHlPYmplY3QgKnNlbGYpCiB7CiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhSQU5EX3N0YXR1cygpKTsKQEAgLTE5NDIsNiArMjI4MCwxMCBAQAogI2lmZGVmIEhBVkVfT1BFTlNTTF9SQU5ECiAgICAgeyJSQU5EX2FkZCIsICAgICAgICAgICAgUHlTU0xfUkFORF9hZGQsIE1FVEhfVkFSQVJHUywKICAgICAgUHlTU0xfUkFORF9hZGRfZG9jfSwKKyAgICB7IlJBTkRfYnl0ZXMiLCAgICAgICAgICBQeVNTTF9SQU5EX2J5dGVzLCBNRVRIX1ZBUkFSR1MsCisgICAgIFB5U1NMX1JBTkRfYnl0ZXNfZG9jfSwKKyAgICB7IlJBTkRfcHNldWRvX2J5dGVzIiwgICBQeVNTTF9SQU5EX3BzZXVkb19ieXRlcywgTUVUSF9WQVJBUkdTLAorICAgICBQeVNTTF9SQU5EX3BzZXVkb19ieXRlc19kb2N9LAogICAgIHsiUkFORF9lZ2QiLCAgICAgICAgICAgIFB5U1NMX1JBTkRfZWdkLCBNRVRIX1ZBUkFSR1MsCiAgICAgIFB5U1NMX1JBTkRfZWdkX2RvY30sCiAgICAgeyJSQU5EX3N0YXR1cyIsICAgICAgICAgKFB5Q0Z1bmN0aW9uKVB5U1NMX1JBTkRfc3RhdHVzLCBNRVRIX05PQVJHUywKQEAgLTIwNTUsNiArMjM5NywyNyBAQAogICAgICptYWpvciA9IGxpYnZlciAmIDB4RkY7CiB9CiAKK1B5RG9jX1NUUlZBUihTU0xFcnJvcl9kb2MsCisiQW4gZXJyb3Igb2NjdXJyZWQgaW4gdGhlIFNTTCBpbXBsZW1lbnRhdGlvbi4iKTsKKworUHlEb2NfU1RSVkFSKFNTTFplcm9SZXR1cm5FcnJvcl9kb2MsCisiU1NML1RMUyBzZXNzaW9uIGNsb3NlZCBjbGVhbmx5LiIpOworCitQeURvY19TVFJWQVIoU1NMV2FudFJlYWRFcnJvcl9kb2MsCisiTm9uLWJsb2NraW5nIFNTTCBzb2NrZXQgbmVlZHMgdG8gcmVhZCBtb3JlIGRhdGFcbiIKKyJiZWZvcmUgdGhlIHJlcXVlc3RlZCBvcGVyYXRpb24gY2FuIGJlIGNvbXBsZXRlZC4iKTsKKworUHlEb2NfU1RSVkFSKFNTTFdhbnRXcml0ZUVycm9yX2RvYywKKyJOb24tYmxvY2tpbmcgU1NMIHNvY2tldCBuZWVkcyB0byB3cml0ZSBtb3JlIGRhdGFcbiIKKyJiZWZvcmUgdGhlIHJlcXVlc3RlZCBvcGVyYXRpb24gY2FuIGJlIGNvbXBsZXRlZC4iKTsKKworUHlEb2NfU1RSVkFSKFNTTFN5c2NhbGxFcnJvcl9kb2MsCisiU3lzdGVtIGVycm9yIHdoZW4gYXR0ZW1wdGluZyBTU0wgb3BlcmF0aW9uLiIpOworCitQeURvY19TVFJWQVIoU1NMRU9GRXJyb3JfZG9jLAorIlNTTC9UTFMgY29ubmVjdGlvbiB0ZXJtaW5hdGVkIGFicnVwdGx5LiIpOworCisKIFB5TU9ESU5JVF9GVU5DCiBQeUluaXRfX3NzbCh2b2lkKQogewpAQCAtMjA5MSwxMiArMjQ1NCwzOSBAQAogICAgIE9wZW5TU0xfYWRkX2FsbF9hbGdvcml0aG1zKCk7CiAKICAgICAvKiBBZGQgc3ltYm9scyB0byBtb2R1bGUgZGljdCAqLwotICAgIFB5U1NMRXJyb3JPYmplY3QgPSBQeUVycl9OZXdFeGNlcHRpb24oInNzbC5TU0xFcnJvciIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVNvY2tldE1vZHVsZS5lcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgIFB5U1NMRXJyb3JPYmplY3QgPSBQeUVycl9OZXdFeGNlcHRpb25XaXRoRG9jKCJzc2wuU1NMRXJyb3IiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNTTEVycm9yX2RvYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUV4Y19PU0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOwogICAgIGlmIChQeVNTTEVycm9yT2JqZWN0ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiU1NMRXJyb3IiLCBQeVNTTEVycm9yT2JqZWN0KSAhPSAwKQorICAgIFB5U1NMWmVyb1JldHVybkVycm9yT2JqZWN0ID0gUHlFcnJfTmV3RXhjZXB0aW9uV2l0aERvYygKKyAgICAgICAgInNzbC5TU0xaZXJvUmV0dXJuRXJyb3IiLCBTU0xaZXJvUmV0dXJuRXJyb3JfZG9jLAorICAgICAgICBQeVNTTEVycm9yT2JqZWN0LCBOVUxMKTsKKyAgICBQeVNTTFdhbnRSZWFkRXJyb3JPYmplY3QgPSBQeUVycl9OZXdFeGNlcHRpb25XaXRoRG9jKAorICAgICAgICAic3NsLlNTTFdhbnRSZWFkRXJyb3IiLCBTU0xXYW50UmVhZEVycm9yX2RvYywKKyAgICAgICAgUHlTU0xFcnJvck9iamVjdCwgTlVMTCk7CisgICAgUHlTU0xXYW50V3JpdGVFcnJvck9iamVjdCA9IFB5RXJyX05ld0V4Y2VwdGlvbldpdGhEb2MoCisgICAgICAgICJzc2wuU1NMV2FudFdyaXRlRXJyb3IiLCBTU0xXYW50V3JpdGVFcnJvcl9kb2MsCisgICAgICAgIFB5U1NMRXJyb3JPYmplY3QsIE5VTEwpOworICAgIFB5U1NMU3lzY2FsbEVycm9yT2JqZWN0ID0gUHlFcnJfTmV3RXhjZXB0aW9uV2l0aERvYygKKyAgICAgICAgInNzbC5TU0xTeXNjYWxsRXJyb3IiLCBTU0xTeXNjYWxsRXJyb3JfZG9jLAorICAgICAgICBQeVNTTEVycm9yT2JqZWN0LCBOVUxMKTsKKyAgICBQeVNTTEVPRkVycm9yT2JqZWN0ID0gUHlFcnJfTmV3RXhjZXB0aW9uV2l0aERvYygKKyAgICAgICAgInNzbC5TU0xFT0ZFcnJvciIsIFNTTEVPRkVycm9yX2RvYywKKyAgICAgICAgUHlTU0xFcnJvck9iamVjdCwgTlVMTCk7CisgICAgaWYgKFB5U1NMWmVyb1JldHVybkVycm9yT2JqZWN0ID09IE5VTEwKKyAgICAgICAgfHwgUHlTU0xXYW50UmVhZEVycm9yT2JqZWN0ID09IE5VTEwKKyAgICAgICAgfHwgUHlTU0xXYW50V3JpdGVFcnJvck9iamVjdCA9PSBOVUxMCisgICAgICAgIHx8IFB5U1NMU3lzY2FsbEVycm9yT2JqZWN0ID09IE5VTEwKKyAgICAgICAgfHwgUHlTU0xFT0ZFcnJvck9iamVjdCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlNTTEVycm9yIiwgUHlTU0xFcnJvck9iamVjdCkgIT0gMAorICAgICAgICB8fCBQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiU1NMWmVyb1JldHVybkVycm9yIiwgUHlTU0xaZXJvUmV0dXJuRXJyb3JPYmplY3QpICE9IDAKKyAgICAgICAgfHwgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlNTTFdhbnRSZWFkRXJyb3IiLCBQeVNTTFdhbnRSZWFkRXJyb3JPYmplY3QpICE9IDAKKyAgICAgICAgfHwgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlNTTFdhbnRXcml0ZUVycm9yIiwgUHlTU0xXYW50V3JpdGVFcnJvck9iamVjdCkgIT0gMAorICAgICAgICB8fCBQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiU1NMU3lzY2FsbEVycm9yIiwgUHlTU0xTeXNjYWxsRXJyb3JPYmplY3QpICE9IDAKKyAgICAgICAgfHwgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlNTTEVPRkVycm9yIiwgUHlTU0xFT0ZFcnJvck9iamVjdCkgIT0gMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJfU1NMQ29udGV4dCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChQeU9iamVjdCAqKSZQeVNTTENvbnRleHRfVHlwZSkgIT0gMCkKQEAgLTIxNDksNiArMjUzOSwxNCBAQAogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJPUF9OT19TU0x2MiIsIFNTTF9PUF9OT19TU0x2Mik7CiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk9QX05PX1NTTHYzIiwgU1NMX09QX05PX1NTTHYzKTsKICAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiT1BfTk9fVExTdjEiLCBTU0xfT1BfTk9fVExTdjEpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJPUF9DSVBIRVJfU0VSVkVSX1BSRUZFUkVOQ0UiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNTTF9PUF9DSVBIRVJfU0VSVkVSX1BSRUZFUkVOQ0UpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJPUF9TSU5HTEVfREhfVVNFIiwgU1NMX09QX1NJTkdMRV9ESF9VU0UpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJPUF9TSU5HTEVfRUNESF9VU0UiLCBTU0xfT1BfU0lOR0xFX0VDREhfVVNFKTsKKyNpZmRlZiBTU0xfT1BfTk9fQ09NUFJFU1NJT04KKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiT1BfTk9fQ09NUFJFU1NJT04iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNTTF9PUF9OT19DT01QUkVTU0lPTik7CisjZW5kaWYKIAogI2lmZGVmIFNTTF9DVFJMX1NFVF9UTFNFWFRfSE9TVE5BTUUKICAgICByID0gUHlfVHJ1ZTsKQEAgLTIxNTgsNiArMjU1NiwyMiBAQAogICAgIFB5X0lOQ1JFRihyKTsKICAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgIkhBU19TTkkiLCByKTsKIAorI2lmIEhBVkVfT1BFTlNTTF9GSU5JU0hFRAorICAgIHIgPSBQeV9UcnVlOworI2Vsc2UKKyAgICByID0gUHlfRmFsc2U7CisjZW5kaWYKKyAgICBQeV9JTkNSRUYocik7CisgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJIQVNfVExTX1VOSVFVRSIsIHIpOworCisjaWZkZWYgT1BFTlNTTF9OT19FQ0RICisgICAgciA9IFB5X0ZhbHNlOworI2Vsc2UKKyAgICByID0gUHlfVHJ1ZTsKKyNlbmRpZgorICAgIFB5X0lOQ1JFRihyKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgIkhBU19FQ0RIIiwgcik7CisKICAgICAvKiBPcGVuU1NMIHZlcnNpb24gKi8KICAgICAvKiBTU0xlYXkoKSBnaXZlcyB1cyB0aGUgdmVyc2lvbiBvZiB0aGUgbGlicmFyeSBsaW5rZWQgYWdhaW5zdCwKICAgICAgICB3aGljaCBjb3VsZCBiZSBkaWZmZXJlbnQgZnJvbSB0aGUgaGVhZGVycyB2ZXJzaW9uLgpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fc3RydWN0LmMgYi9Nb2R1bGVzL19zdHJ1Y3QuYwppbmRleCAxNjA0YjkwLi5kY2RjODNlIDEwMDY0NAotLS0gYS9Nb2R1bGVzL19zdHJ1Y3QuYworKysgYi9Nb2R1bGVzL19zdHJ1Y3QuYwpAQCAtNTgsNiArNTgsNyBAQAogdHlwZWRlZiBzdHJ1Y3QgeyBjaGFyIGM7IGZsb2F0IHg7IH0gc3RfZmxvYXQ7CiB0eXBlZGVmIHN0cnVjdCB7IGNoYXIgYzsgZG91YmxlIHg7IH0gc3RfZG91YmxlOwogdHlwZWRlZiBzdHJ1Y3QgeyBjaGFyIGM7IHZvaWQgKng7IH0gc3Rfdm9pZF9wOwordHlwZWRlZiBzdHJ1Y3QgeyBjaGFyIGM7IHNpemVfdCB4OyB9IHN0X3NpemVfdDsKIAogI2RlZmluZSBTSE9SVF9BTElHTiAoc2l6ZW9mKHN0X3Nob3J0KSAtIHNpemVvZihzaG9ydCkpCiAjZGVmaW5lIElOVF9BTElHTiAoc2l6ZW9mKHN0X2ludCkgLSBzaXplb2YoaW50KSkKQEAgLTY1LDYgKzY2LDcgQEAKICNkZWZpbmUgRkxPQVRfQUxJR04gKHNpemVvZihzdF9mbG9hdCkgLSBzaXplb2YoZmxvYXQpKQogI2RlZmluZSBET1VCTEVfQUxJR04gKHNpemVvZihzdF9kb3VibGUpIC0gc2l6ZW9mKGRvdWJsZSkpCiAjZGVmaW5lIFZPSURfUF9BTElHTiAoc2l6ZW9mKHN0X3ZvaWRfcCkgLSBzaXplb2Yodm9pZCAqKSkKKyNkZWZpbmUgU0laRV9UX0FMSUdOIChzaXplb2Yoc3Rfc2l6ZV90KSAtIHNpemVvZihzaXplX3QpKQogCiAvKiBXZSBjYW4ndCBzdXBwb3J0IHEgYW5kIFEgaW4gbmF0aXZlIG1vZGUgdW5sZXNzIHRoZSBjb21waWxlciBkb2VzOwogICAgaW4gc3RkIG1vZGUsIHRoZXkncmUgOCBieXRlcyBvbiBhbGwgcGxhdGZvcm1zLiAqLwpAQCAtMjEzLDYgKzIxNSw1MiBAQAogCiAjZW5kaWYKIAorLyogU2FtZSwgYnV0IGhhbmRsaW5nIFB5X3NzaXplX3QgKi8KKworc3RhdGljIGludAorZ2V0X3NzaXplX3QoUHlPYmplY3QgKnYsIFB5X3NzaXplX3QgKnApCit7CisgICAgUHlfc3NpemVfdCB4OworCisgICAgdiA9IGdldF9weWxvbmcodik7CisgICAgaWYgKHYgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGFzc2VydChQeUxvbmdfQ2hlY2sodikpOworICAgIHggPSBQeUxvbmdfQXNTc2l6ZV90KHYpOworICAgIFB5X0RFQ1JFRih2KTsKKyAgICBpZiAoeCA9PSAoUHlfc3NpemVfdCktMSAmJiBQeUVycl9PY2N1cnJlZCgpKSB7CisgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX092ZXJmbG93RXJyb3IpKQorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFN0cnVjdEVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCBvdXQgb2YgcmFuZ2UiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICAqcCA9IHg7CisgICAgcmV0dXJuIDA7Cit9CisKKy8qIFNhbWUsIGJ1dCBoYW5kbGluZyBzaXplX3QgKi8KKworc3RhdGljIGludAorZ2V0X3NpemVfdChQeU9iamVjdCAqdiwgc2l6ZV90ICpwKQoreworICAgIHNpemVfdCB4OworCisgICAgdiA9IGdldF9weWxvbmcodik7CisgICAgaWYgKHYgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGFzc2VydChQeUxvbmdfQ2hlY2sodikpOworICAgIHggPSBQeUxvbmdfQXNTaXplX3Qodik7CisgICAgUHlfREVDUkVGKHYpOworICAgIGlmICh4ID09IChzaXplX3QpLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkgeworICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19PdmVyZmxvd0Vycm9yKSkKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhTdHJ1Y3RFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYXJndW1lbnQgb3V0IG9mIHJhbmdlIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgKnAgPSB4OworICAgIHJldHVybiAwOworfQorCiAKICNkZWZpbmUgUkFOR0VfRVJST1IoeCwgZiwgZmxhZywgbWFzaykgcmV0dXJuIF9yYW5nZV9lcnJvcihmLCBmbGFnKQogCkBAIC0zNjksNiArNDE3LDIzIEBACiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tVW5zaWduZWRMb25nKHgpOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorbnVfc3NpemVfdChjb25zdCBjaGFyICpwLCBjb25zdCBmb3JtYXRkZWYgKmYpCit7CisgICAgUHlfc3NpemVfdCB4OworICAgIG1lbWNweSgoY2hhciAqKSZ4LCBwLCBzaXplb2YgeCk7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdCh4KTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK251X3NpemVfdChjb25zdCBjaGFyICpwLCBjb25zdCBmb3JtYXRkZWYgKmYpCit7CisgICAgc2l6ZV90IHg7CisgICAgbWVtY3B5KChjaGFyICopJngsIHAsIHNpemVvZiB4KTsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21TaXplX3QoeCk7Cit9CisKKwogLyogTmF0aXZlIG1vZGUgZG9lc24ndCBzdXBwb3J0IHEgb3IgUSB1bmxlc3MgdGhlIHBsYXRmb3JtIEMgc3VwcG9ydHMKICAgIGxvbmcgbG9uZyAob3IsIG9uIFdpbmRvd3MsIF9faW50NjQpLiAqLwogCkBAIC01NTgsNiArNjIzLDI2IEBACiAgICAgcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyBpbnQKK25wX3NzaXplX3QoY2hhciAqcCwgUHlPYmplY3QgKnYsIGNvbnN0IGZvcm1hdGRlZiAqZikKK3sKKyAgICBQeV9zc2l6ZV90IHg7CisgICAgaWYgKGdldF9zc2l6ZV90KHYsICZ4KSA8IDApCisgICAgICAgIHJldHVybiAtMTsKKyAgICBtZW1jcHkocCwgKGNoYXIgKikmeCwgc2l6ZW9mIHgpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50CitucF9zaXplX3QoY2hhciAqcCwgUHlPYmplY3QgKnYsIGNvbnN0IGZvcm1hdGRlZiAqZikKK3sKKyAgICBzaXplX3QgeDsKKyAgICBpZiAoZ2V0X3NpemVfdCh2LCAmeCkgPCAwKQorICAgICAgICByZXR1cm4gLTE7CisgICAgbWVtY3B5KHAsIChjaGFyICopJngsIHNpemVvZiB4KTsKKyAgICByZXR1cm4gMDsKK30KKwogI2lmZGVmIEhBVkVfTE9OR19MT05HCiAKIHN0YXRpYyBpbnQKQEAgLTY1MSw2ICs3MzYsOCBAQAogICAgIHsnSScsICAgICAgIHNpemVvZihpbnQpLCAgICBJTlRfQUxJR04sICAgICAgbnVfdWludCwgICAgICAgIG5wX3VpbnR9LAogICAgIHsnbCcsICAgICAgIHNpemVvZihsb25nKSwgICBMT05HX0FMSUdOLCAgICAgbnVfbG9uZywgICAgICAgIG5wX2xvbmd9LAogICAgIHsnTCcsICAgICAgIHNpemVvZihsb25nKSwgICBMT05HX0FMSUdOLCAgICAgbnVfdWxvbmcsICAgICAgIG5wX3Vsb25nfSwKKyAgICB7J24nLCAgICAgICBzaXplb2Yoc2l6ZV90KSwgU0laRV9UX0FMSUdOLCAgIG51X3NzaXplX3QsICAgICBucF9zc2l6ZV90fSwKKyAgICB7J04nLCAgICAgICBzaXplb2Yoc2l6ZV90KSwgU0laRV9UX0FMSUdOLCAgIG51X3NpemVfdCwgICAgICBucF9zaXplX3R9LAogI2lmZGVmIEhBVkVfTE9OR19MT05HCiAgICAgeydxJywgICAgICAgc2l6ZW9mKFBZX0xPTkdfTE9ORyksIExPTkdfTE9OR19BTElHTiwgbnVfbG9uZ2xvbmcsIG5wX2xvbmdsb25nfSwKICAgICB7J1EnLCAgICAgICBzaXplb2YoUFlfTE9OR19MT05HKSwgTE9OR19MT05HX0FMSUdOLCBudV91bG9uZ2xvbmcsbnBfdWxvbmdsb25nfSwKQEAgLTE5NTEsNyArMjAzOCw4IEBACiAgIGw6bG9uZzsgTDp1bnNpZ25lZCBsb25nOyBmOmZsb2F0OyBkOmRvdWJsZS5cblwKIFNwZWNpYWwgY2FzZXMgKHByZWNlZGluZyBkZWNpbWFsIGNvdW50IGluZGljYXRlcyBsZW5ndGgpOlxuXAogICBzOnN0cmluZyAoYXJyYXkgb2YgY2hhcik7IHA6IHBhc2NhbCBzdHJpbmcgKHdpdGggY291bnQgYnl0ZSkuXG5cCi1TcGVjaWFsIGNhc2UgKG9ubHkgYXZhaWxhYmxlIGluIG5hdGl2ZSBmb3JtYXQpOlxuXAorU3BlY2lhbCBjYXNlcyAob25seSBhdmFpbGFibGUgaW4gbmF0aXZlIGZvcm1hdCk6XG5cCisgIG46c3NpemVfdDsgTjpzaXplX3Q7XG5cCiAgIFA6YW4gaW50ZWdlciB0eXBlIHRoYXQgaXMgd2lkZSBlbm91Z2ggdG8gaG9sZCBhIHBvaW50ZXIuXG5cCiBTcGVjaWFsIGNhc2UgKG5vdCBpbiBuYXRpdmUgbW9kZSB1bmxlc3MgJ2xvbmcgbG9uZycgaW4gcGxhdGZvcm0gQyk6XG5cCiAgIHE6bG9uZyBsb25nOyBROnVuc2lnbmVkIGxvbmcgbG9uZ1xuXApkaWZmIC0tZ2l0IGEvTW9kdWxlcy9fdGVzdGNhcGltb2R1bGUuYyBiL01vZHVsZXMvX3Rlc3RjYXBpbW9kdWxlLmMKaW5kZXggOTRiNmU2Ny4uYjAwYWMyMCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fdGVzdGNhcGltb2R1bGUuYworKysgYi9Nb2R1bGVzL190ZXN0Y2FwaW1vZHVsZS5jCkBAIC0yMiwxNCArMjIsNyBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHJhaXNlVGVzdEVycm9yKGNvbnN0IGNoYXIqIHRlc3RfbmFtZSwgY29uc3QgY2hhciogbXNnKQogewotICAgIGNoYXIgYnVmWzIwNDhdOwotCi0gICAgaWYgKHN0cmxlbih0ZXN0X25hbWUpICsgc3RybGVuKG1zZykgPiBzaXplb2YoYnVmKSAtIDUwKQotICAgICAgICBQeUVycl9TZXRTdHJpbmcoVGVzdEVycm9yLCAiaW50ZXJuYWwgZXJyb3IgbXNnIHRvbyBsYXJnZSIpOwotICAgIGVsc2UgewotICAgICAgICBQeU9TX3NucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICIlczogJXMiLCB0ZXN0X25hbWUsIG1zZyk7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhUZXN0RXJyb3IsIGJ1Zik7Ci0gICAgfQorICAgIFB5RXJyX0Zvcm1hdChUZXN0RXJyb3IsICIlczogJXMiLCB0ZXN0X25hbWUsIG1zZyk7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKQEAgLTQzLDExICszNiw5IEBACiBzaXplb2ZfZXJyb3IoY29uc3QgY2hhciogZmF0bmFtZSwgY29uc3QgY2hhciogdHlwbmFtZSwKICAgICBpbnQgZXhwZWN0ZWQsIGludCBnb3QpCiB7Ci0gICAgY2hhciBidWZbMTAyNF07Ci0gICAgUHlPU19zbnByaW50ZihidWYsIHNpemVvZihidWYpLAotICAgICAgICAiJS4yMDBzICNkZWZpbmUgPT0gJWQgYnV0IHNpemVvZiglLjIwMHMpID09ICVkIiwKKyAgICBQeUVycl9Gb3JtYXQoVGVzdEVycm9yLAorICAgICAgICAiJXMgI2RlZmluZSA9PSAlZCBidXQgc2l6ZW9mKCVzKSA9PSAlZCIsCiAgICAgICAgIGZhdG5hbWUsIGV4cGVjdGVkLCB0eXBuYW1lLCBnb3QpOwotICAgIFB5RXJyX1NldFN0cmluZyhUZXN0RXJyb3IsIGJ1Zik7CiAgICAgcmV0dXJuIChQeU9iamVjdCopTlVMTDsKIH0KIApAQCAtNzc4LDYgKzc2OSw2OCBAQAogICAgIHJldHVybiBQeV9Ob25lOwogfQogCisvKiBUZXN0IHRoZSBQeUxvbmdfQXN7U2l6ZSxTc2l6ZX1fdCBBUEkuIEF0IHByZXNlbnQgdGhpcyBqdXN0IHRlc3RzIHRoYXQKKyAgIG5vbi1pbnRlZ2VyIGFyZ3VtZW50cyBhcmUgaGFuZGxlZCBjb3JyZWN0bHkuIEl0IHNob3VsZCBiZSBleHRlbmRlZCB0bworICAgdGVzdCBvdmVyZmxvdyBoYW5kbGluZy4KKyAqLworCitzdGF0aWMgUHlPYmplY3QgKgordGVzdF9sb25nX2FzX3NpemVfdChQeU9iamVjdCAqc2VsZikKK3sKKyAgICBzaXplX3Qgb3V0X3U7CisgICAgUHlfc3NpemVfdCBvdXRfczsKKworICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKworICAgIG91dF91ID0gUHlMb25nX0FzU2l6ZV90KFB5X05vbmUpOworICAgIGlmIChvdXRfdSAhPSAoc2l6ZV90KS0xIHx8ICFQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICByZXR1cm4gcmFpc2VUZXN0RXJyb3IoInRlc3RfbG9uZ19hc19zaXplX3QiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlB5TG9uZ19Bc1NpemVfdChOb25lKSBkaWRuJ3QgY29tcGxhaW4iKTsKKyAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfVHlwZUVycm9yKSkKKyAgICAgICAgcmV0dXJuIHJhaXNlVGVzdEVycm9yKCJ0ZXN0X2xvbmdfYXNfc2l6ZV90IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQeUxvbmdfQXNTaXplX3QoTm9uZSkgcmFpc2VkICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzb21ldGhpbmcgb3RoZXIgdGhhbiBUeXBlRXJyb3IiKTsKKyAgICBQeUVycl9DbGVhcigpOworCisgICAgb3V0X3MgPSBQeUxvbmdfQXNTc2l6ZV90KFB5X05vbmUpOworICAgIGlmIChvdXRfcyAhPSAoUHlfc3NpemVfdCktMSB8fCAhUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgcmV0dXJuIHJhaXNlVGVzdEVycm9yKCJ0ZXN0X2xvbmdfYXNfc2l6ZV90IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQeUxvbmdfQXNTc2l6ZV90KE5vbmUpIGRpZG4ndCBjb21wbGFpbiIpOworICAgIGlmICghUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19UeXBlRXJyb3IpKQorICAgICAgICByZXR1cm4gcmFpc2VUZXN0RXJyb3IoInRlc3RfbG9uZ19hc19zaXplX3QiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlB5TG9uZ19Bc1NzaXplX3QoTm9uZSkgcmFpc2VkICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzb21ldGhpbmcgb3RoZXIgdGhhbiBUeXBlRXJyb3IiKTsKKyAgICBQeUVycl9DbGVhcigpOworCisgICAgLyogUHlfSU5DUkVGKFB5X05vbmUpIG9taXR0ZWQgLSB3ZSBhbHJlYWR5IGhhdmUgYSByZWZlcmVuY2UgdG8gaXQuICovCisgICAgcmV0dXJuIFB5X05vbmU7Cit9CisKKy8qIFRlc3QgdGhlIFB5TG9uZ19Bc0RvdWJsZSBBUEkuIEF0IHByZXNlbnQgdGhpcyBqdXN0IHRlc3RzIHRoYXQKKyAgIG5vbi1pbnRlZ2VyIGFyZ3VtZW50cyBhcmUgaGFuZGxlZCBjb3JyZWN0bHkuCisgKi8KKworc3RhdGljIFB5T2JqZWN0ICoKK3Rlc3RfbG9uZ19hc19kb3VibGUoUHlPYmplY3QgKnNlbGYpCit7CisgICAgZG91YmxlIG91dDsKKworICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKworICAgIG91dCA9IFB5TG9uZ19Bc0RvdWJsZShQeV9Ob25lKTsKKyAgICBpZiAob3V0ICE9IC0xLjAgfHwgIVB5RXJyX09jY3VycmVkKCkpCisgICAgICAgIHJldHVybiByYWlzZVRlc3RFcnJvcigidGVzdF9sb25nX2FzX2RvdWJsZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUHlMb25nX0FzRG91YmxlKE5vbmUpIGRpZG4ndCBjb21wbGFpbiIpOworICAgIGlmICghUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19UeXBlRXJyb3IpKQorICAgICAgICByZXR1cm4gcmFpc2VUZXN0RXJyb3IoInRlc3RfbG9uZ19hc19kb3VibGUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlB5TG9uZ19Bc0RvdWJsZShOb25lKSByYWlzZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNvbWV0aGluZyBvdGhlciB0aGFuIFR5cGVFcnJvciIpOworICAgIFB5RXJyX0NsZWFyKCk7CisKKyAgICAvKiBQeV9JTkNSRUYoUHlfTm9uZSkgb21pdHRlZCAtIHdlIGFscmVhZHkgaGF2ZSBhIHJlZmVyZW5jZSB0byBpdC4gKi8KKyAgICByZXR1cm4gUHlfTm9uZTsKK30KKwogLyogVGVzdCB0aGUgTCBjb2RlIGZvciBQeUFyZ19QYXJzZVR1cGxlLiAgVGhpcyBzaG91bGQgZGVsaXZlciBhIFBZX0xPTkdfTE9ORwogICAgZm9yIGJvdGggbG9uZyBhbmQgaW50IGFyZ3VtZW50cy4gIFRoZSB0ZXN0IG1heSBsZWFrIGEgbGl0dGxlIG1lbW9yeSBpZgogICAgaXQgZmFpbHMuCkBAIC0xMDEyLDYgKzEwNjUsMTUgQEAKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKK2dldGFyZ3NfYyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgY2hhciBjOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiYyIsICZjKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoJmMsIDEpOworfQorCitzdGF0aWMgUHlPYmplY3QgKgogZ2V0YXJnc19zKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBjaGFyICpzdHI7CkBAIC0xMjkzLDcgKzEzNTUsNyBAQAogdGVzdF9aX2NvZGUoUHlPYmplY3QgKnNlbGYpCiB7CiAgICAgUHlPYmplY3QgKnR1cGxlLCAqb2JqOwotICAgIFB5X1VOSUNPREUgKnZhbHVlMSwgKnZhbHVlMjsKKyAgICBjb25zdCBQeV9VTklDT0RFICp2YWx1ZTEsICp2YWx1ZTI7CiAgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yOwogCiAgICAgdHVwbGUgPSBQeVR1cGxlX05ldygyKTsKQEAgLTEzNDcsNiArMTQwOSw3IEBACiAjaWYgZGVmaW5lZChTSVpFT0ZfV0NIQVJfVCkgJiYgKFNJWkVPRl9XQ0hBUl9UID09IDQpCiAgICAgY29uc3Qgd2NoYXJfdCB3dGV4dFsyXSA9IHsod2NoYXJfdCkweDEwQUJDRHV9OwogICAgIHNpemVfdCB3dGV4dGxlbiA9IDE7CisgICAgY29uc3Qgd2NoYXJfdCBpbnZhbGlkWzFdID0geyh3Y2hhcl90KTB4MTEwMDAwdX07CiAjZWxzZQogICAgIGNvbnN0IHdjaGFyX3Qgd3RleHRbM10gPSB7KHdjaGFyX3QpMHhEQkVBdSwgKHdjaGFyX3QpMHhERkNEdX07CiAgICAgc2l6ZV90IHd0ZXh0bGVuID0gMjsKQEAgLTEzNjMsNyArMTQyNiw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUod2lkZSkgIT0gUHlVbmljb2RlX0dFVF9TSVpFKHV0ZjgpKSB7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHdpZGUpICE9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHV0ZjgpKSB7CiAgICAgICAgIFB5X0RFQ1JFRih3aWRlKTsKICAgICAgICAgUHlfREVDUkVGKHV0ZjgpOwogICAgICAgICByZXR1cm4gcmFpc2VUZXN0RXJyb3IoInRlc3Rfd2lkZWNoYXIiLApAQCAtMTM4Miw2ICsxNDQ1LDIzIEBACiAKICAgICBQeV9ERUNSRUYod2lkZSk7CiAgICAgUHlfREVDUkVGKHV0ZjgpOworCisjaWYgZGVmaW5lZChTSVpFT0ZfV0NIQVJfVCkgJiYgKFNJWkVPRl9XQ0hBUl9UID09IDQpCisgICAgd2lkZSA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIoaW52YWxpZCwgMSk7CisgICAgaWYgKHdpZGUgPT0gTlVMTCkKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiByYWlzZVRlc3RFcnJvcigidGVzdF93aWRlY2hhciIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihMXCJcXFUwMDExMDAwMFwiLCAxKSBkaWRuJ3QgZmFpbCIpOworCisgICAgd2lkZSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShpbnZhbGlkLCAxKTsKKyAgICBpZiAod2lkZSA9PSBOVUxMKQorICAgICAgICBQeUVycl9DbGVhcigpOworICAgIGVsc2UKKyAgICAgICAgcmV0dXJuIHJhaXNlVGVzdEVycm9yKCJ0ZXN0X3dpZGVjaGFyIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTFwiXFxVMDAxMTAwMDBcIiwgMSkgZGlkbid0IGZhaWwiKTsKKyNlbmRpZgorCiAgICAgUHlfUkVUVVJOX05PTkU7CiB9CiAKQEAgLTE1NzYsNyArMTY1Niw3IEBACiAgICAgICAgICAgICAgey0weGZmZmZmZmZMLCAyOCwgLTF9fTsKICAgICBpbnQgaTsKIAotICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YodGVzdGNhc2VzKSAvIHNpemVvZihzdHJ1Y3QgdHJpcGxlKTsgKytpKSB7CisgICAgZm9yIChpID0gMDsgaSA8IFB5X0FSUkFZX0xFTkdUSCh0ZXN0Y2FzZXMpOyArK2kpIHsKICAgICAgICAgUHlPYmplY3QgKnBsb25nID0gUHlMb25nX0Zyb21Mb25nKHRlc3RjYXNlc1tpXS5pbnB1dCk7CiAgICAgICAgIHNpemVfdCBuYml0cyA9IF9QeUxvbmdfTnVtQml0cyhwbG9uZyk7CiAgICAgICAgIGludCBzaWduID0gX1B5TG9uZ19TaWduKHBsb25nKTsKQEAgLTE3ODYsMTMgKzE4NjYsMTIgQEAKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogICAgIGNoYXIgKm1zZzsKLSAgICBzdGF0aWMgY29uc3QgUHlfVU5JQ09ERSBvbmVbXSA9IHsnMScsIDB9OwogCiAjZGVmaW5lIENIRUNLXzFfRk9STUFUKEZPUk1BVCwgVFlQRSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdChGT1JNQVQsIChUWVBFKTEpOyAgICAgICAgICAgICAgICAgXAogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgIHJldHVybiBOVUxMOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICBpZiAoUHlfVU5JQ09ERV9zdHJjbXAoUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KSwgb25lKSkgeyAgICAgXAorICAgIGlmIChQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhyZXN1bHQsICIxIikpIHsgICAgIFwKICAgICAgICAgbXNnID0gRk9STUFUICIgZmFpbGVkIGF0IDEiOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBnb3RvIEZhaWw7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKQEAgLTIzMzgsNiArMjQxNyw4IEBACiAgICAgeyJ0ZXN0X2xvbmdfYXBpIiwgICAgICAgICAgIChQeUNGdW5jdGlvbil0ZXN0X2xvbmdfYXBpLCAgICAgIE1FVEhfTk9BUkdTfSwKICAgICB7InRlc3RfbG9uZ19hbmRfb3ZlcmZsb3ciLCAoUHlDRnVuY3Rpb24pdGVzdF9sb25nX2FuZF9vdmVyZmxvdywKICAgICAgTUVUSF9OT0FSR1N9LAorICAgIHsidGVzdF9sb25nX2FzX2RvdWJsZSIsICAgICAoUHlDRnVuY3Rpb24pdGVzdF9sb25nX2FzX2RvdWJsZSxNRVRIX05PQVJHU30sCisgICAgeyJ0ZXN0X2xvbmdfYXNfc2l6ZV90IiwgICAgIChQeUNGdW5jdGlvbil0ZXN0X2xvbmdfYXNfc2l6ZV90LE1FVEhfTk9BUkdTfSwKICAgICB7InRlc3RfbG9uZ19udW1iaXRzIiwgICAgICAgKFB5Q0Z1bmN0aW9uKXRlc3RfbG9uZ19udW1iaXRzLCAgTUVUSF9OT0FSR1N9LAogICAgIHsidGVzdF9rX2NvZGUiLCAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pdGVzdF9rX2NvZGUsICAgICAgICBNRVRIX05PQVJHU30sCiAgICAgeyJ0ZXN0X2VtcHR5X2FyZ3BhcnNlIiwgKFB5Q0Z1bmN0aW9uKXRlc3RfZW1wdHlfYXJncGFyc2UsTUVUSF9OT0FSR1N9LApAQCAtMjM2OSw2ICsyNDUwLDcgQEAKICAgICAgICAgKFB5Q0Z1bmN0aW9uKXRlc3RfbG9uZ19sb25nX2FuZF9vdmVyZmxvdywgTUVUSF9OT0FSR1N9LAogICAgIHsidGVzdF9MX2NvZGUiLCAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pdGVzdF9MX2NvZGUsICAgICAgICBNRVRIX05PQVJHU30sCiAjZW5kaWYKKyAgICB7ImdldGFyZ3NfYyIsICAgICAgICAgICAgICAgZ2V0YXJnc19jLCAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICAgICB7ImdldGFyZ3NfcyIsICAgICAgICAgICAgICAgZ2V0YXJnc19zLCAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICAgICB7ImdldGFyZ3Nfc19zdGFyIiwgICAgICAgICAgZ2V0YXJnc19zX3N0YXIsICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKICAgICB7ImdldGFyZ3Nfc19oYXNoIiwgICAgICAgICAgZ2V0YXJnc19zX2hhc2gsICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTfSwKZGlmZiAtLWdpdCBhL01vZHVsZXMvX3RocmVhZG1vZHVsZS5jIGIvTW9kdWxlcy9fdGhyZWFkbW9kdWxlLmMKaW5kZXggZWEwMzhkZS4uNmUzOWNhMCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fdGhyZWFkbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9fdGhyZWFkbW9kdWxlLmMKQEAgLTUzLDYgKzUzLDcgQEAKICAgICBfUHlUaW1lX3RpbWV2YWwgY3VydGltZTsKICAgICBfUHlUaW1lX3RpbWV2YWwgZW5kdGltZTsKIAorCiAgICAgaWYgKG1pY3Jvc2Vjb25kcyA+IDApIHsKICAgICAgICAgX1B5VGltZV9nZXR0aW1lb2ZkYXkoJmVuZHRpbWUpOwogICAgICAgICBlbmR0aW1lLnR2X3NlYyArPSBtaWNyb3NlY29uZHMgLyAoMTAwMCAqIDEwMDApOwpAQCAtNzUsNyArNzYsNyBAQAogCiAgICAgICAgICAgICAvKiBJZiB3ZSdyZSB1c2luZyBhIHRpbWVvdXQsIHJlY29tcHV0ZSB0aGUgdGltZW91dCBhZnRlciBwcm9jZXNzaW5nCiAgICAgICAgICAgICAgKiBzaWduYWxzLCBzaW5jZSB0aG9zZSBjYW4gdGFrZSB0aW1lLiAgKi8KLSAgICAgICAgICAgIGlmIChtaWNyb3NlY29uZHMgPj0gMCkgeworICAgICAgICAgICAgaWYgKG1pY3Jvc2Vjb25kcyA+IDApIHsKICAgICAgICAgICAgICAgICBfUHlUaW1lX2dldHRpbWVvZmRheSgmY3VydGltZSk7CiAgICAgICAgICAgICAgICAgbWljcm9zZWNvbmRzID0gKChlbmR0aW1lLnR2X3NlYyAtIGN1cnRpbWUudHZfc2VjKSAqIDEwMDAwMDAgKwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZW5kdGltZS50dl91c2VjIC0gY3VydGltZS50dl91c2VjKSk7CkBAIC00MTMsNiArNDE0LDEyIEBACiAgICAgbG9uZyBvd25lcjsKICAgICB1bnNpZ25lZCBsb25nIGNvdW50OwogCisgICAgaWYgKHNlbGYtPnJsb2NrX2NvdW50ID09IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJjYW5ub3QgcmVsZWFzZSB1bi1hY3F1aXJlZCBsb2NrIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKwogICAgIG93bmVyID0gc2VsZi0+cmxvY2tfb3duZXI7CiAgICAgY291bnQgPSBzZWxmLT5ybG9ja19jb3VudDsKICAgICBzZWxmLT5ybG9ja19jb3VudCA9IDA7CkBAIC0xMjIyLDExICsxMjI5LDkgQEAKIAogc3RhdGljIFB5TWV0aG9kRGVmIHRocmVhZF9tZXRob2RzW10gPSB7CiAgICAgeyJzdGFydF9uZXdfdGhyZWFkIiwgICAgICAgIChQeUNGdW5jdGlvbil0aHJlYWRfUHlUaHJlYWRfc3RhcnRfbmV3X3RocmVhZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBNRVRIX1ZBUkFSR1MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRfbmV3X2RvY30sCisgICAgIE1FVEhfVkFSQVJHUywgc3RhcnRfbmV3X2RvY30sCiAgICAgeyJzdGFydF9uZXciLCAgICAgICAgICAgICAgIChQeUNGdW5jdGlvbil0aHJlYWRfUHlUaHJlYWRfc3RhcnRfbmV3X3RocmVhZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBNRVRIX1ZBUkFSR1MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRfbmV3X2RvY30sCisgICAgIE1FVEhfVkFSQVJHUywgc3RhcnRfbmV3X2RvY30sCiAgICAgeyJhbGxvY2F0ZV9sb2NrIiwgICAgICAgICAgIChQeUNGdW5jdGlvbil0aHJlYWRfUHlUaHJlYWRfYWxsb2NhdGVfbG9jaywKICAgICAgTUVUSF9OT0FSR1MsIGFsbG9jYXRlX2RvY30sCiAgICAgeyJhbGxvY2F0ZSIsICAgICAgICAgICAgICAgIChQeUNGdW5jdGlvbil0aHJlYWRfUHlUaHJlYWRfYWxsb2NhdGVfbG9jaywKQEAgLTEyNDIsOCArMTI0Nyw3IEBACiAgICAgeyJfY291bnQiLCAgICAgICAgICAgICAgICAgIChQeUNGdW5jdGlvbil0aHJlYWRfX2NvdW50LAogICAgICBNRVRIX05PQVJHUywgX2NvdW50X2RvY30sCiAgICAgeyJzdGFja19zaXplIiwgICAgICAgICAgICAgIChQeUNGdW5jdGlvbil0aHJlYWRfc3RhY2tfc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBNRVRIX1ZBUkFSR1MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhY2tfc2l6ZV9kb2N9LAorICAgICBNRVRIX1ZBUkFSR1MsIHN0YWNrX3NpemVfZG9jfSwKICAgICB7TlVMTCwgICAgICAgICAgICAgICAgICAgICAgTlVMTH0gICAgICAgICAgIC8qIHNlbnRpbmVsICovCiB9OwogCkBAIC0xMzA3LDcgKzEzMTEsOSBAQAogCiAgICAgLyogQWRkIGEgc3ltYm9saWMgY29uc3RhbnQgKi8KICAgICBkID0gUHlNb2R1bGVfR2V0RGljdChtKTsKLSAgICBUaHJlYWRFcnJvciA9IFB5RXJyX05ld0V4Y2VwdGlvbigiX3RocmVhZC5lcnJvciIsIE5VTEwsIE5VTEwpOworICAgIFRocmVhZEVycm9yID0gUHlFeGNfUnVudGltZUVycm9yOworICAgIFB5X0lOQ1JFRihUaHJlYWRFcnJvcik7CisKICAgICBQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiZXJyb3IiLCBUaHJlYWRFcnJvcik7CiAgICAgTG9ja3R5cGUudHBfZG9jID0gbG9ja19kb2M7CiAgICAgUHlfSU5DUkVGKCZMb2NrdHlwZSk7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL190a2ludGVyLmMgYi9Nb2R1bGVzL190a2ludGVyLmMKaW5kZXggMzYwOGUyZC4uYWJiZTBlYyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9fdGtpbnRlci5jCisrKyBiL01vZHVsZXMvX3RraW50ZXIuYwpAQCAtODAsMTggKzgwLDYgQEAKICNlcnJvciAiVGsgb2xkZXIgdGhhbiA4LjMuMSBub3Qgc3VwcG9ydGVkIgogI2VuZGlmCiAKLS8qIFVuaWNvZGUgY29udmVyc2lvbiBhc3N1bWVzIHRoYXQgVGNsX1VuaUNoYXIgaXMgdHdvIGJ5dGVzLgotICAgV2UgY2Fubm90IHRlc3QgdGhpcyBkaXJlY3RseSwgc28gd2UgdGVzdCBVVEYtOCBzaXplIGluc3RlYWQsCi0gICBleHBlY3RpbmcgdGhhdCBUQ0xfVVRGX01BWCBpcyBjaGFuZ2VkIGlmIFRjbCBldmVyIHN1cHBvcnRzCi0gICBlaXRoZXIgVVRGLTE2IG9yIFVDUy00LgotICAgUmVkaGF0IDggc2V0cyBUQ0xfVVRGX01BWCB0byA2LCBhbmQgdXNlcyB3Y2hhcl90IGZvcgotICAgVGNsX1VuaWNoYXIuIFRoaXMgaXMgYWxzbyBvayBhcyBsb25nIGFzIFB5dGhvbiB1c2VzIFVDUy00LAotICAgYXMgd2VsbC4KLSovCi0jaWYgVENMX1VURl9NQVggIT0gMyAmJiAhKGRlZmluZWQoUHlfVU5JQ09ERV9XSURFKSAmJiBUQ0xfVVRGX01BWD09NikKLSNlcnJvciAidW5zdXBwb3J0ZWQgVGNsIGNvbmZpZ3VyYXRpb24iCi0jZW5kaWYKLQogI2lmICEoZGVmaW5lZChNU19XSU5ET1dTKSB8fCBkZWZpbmVkKF9fQ1lHV0lOX18pKQogI2RlZmluZSBIQVZFX0NSRUFURUZJTEVIQU5ETEVSCiAjZW5kaWYKQEAgLTk3NSw0MCArOTYzLDQ2IEBACiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfQogICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjayh2YWx1ZSkpIHsKLSAgICAgICAgUHlfVU5JQ09ERSAqaW5idWYgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2YWx1ZSk7Ci0gICAgICAgIFB5X3NzaXplX3Qgc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRSh2YWx1ZSk7Ci0gICAgICAgIC8qIFRoaXMgI2lmZGVmIGFzc3VtZXMgdGhhdCBUY2wgdXNlcyBVQ1MtMi4KLSAgICAgICAgICAgU2VlIFRDTF9VVEZfTUFYIHRlc3QgYWJvdmUuICovCi0jaWYgZGVmaW5lZChQeV9VTklDT0RFX1dJREUpICYmIFRDTF9VVEZfTUFYID09IDMKKyAgICAgICAgdm9pZCAqaW5idWY7CisgICAgICAgIFB5X3NzaXplX3Qgc2l6ZTsKKyAgICAgICAgaW50IGtpbmQ7CiAgICAgICAgIFRjbF9VbmlDaGFyICpvdXRidWYgPSBOVUxMOwogICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgIHNpemVfdCBhbGxvY3NpemUgPSAoKHNpemVfdClzaXplKSAqIHNpemVvZihUY2xfVW5pQ2hhcik7Ci0gICAgICAgIGlmIChhbGxvY3NpemUgPj0gc2l6ZSkKLSAgICAgICAgICAgIG91dGJ1ZiA9IChUY2xfVW5pQ2hhciopY2thbGxvYyhhbGxvY3NpemUpOworICAgICAgICBzaXplX3QgYWxsb2NzaXplOworCisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodmFsdWUpID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAgICAgaW5idWYgPSBQeVVuaWNvZGVfREFUQSh2YWx1ZSk7CisgICAgICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh2YWx1ZSk7CisgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh2YWx1ZSk7CisgICAgICAgIGFsbG9jc2l6ZSA9ICgoc2l6ZV90KXNpemUpICogc2l6ZW9mKFRjbF9VbmlDaGFyKTsKKyAgICAgICAgb3V0YnVmID0gKFRjbF9VbmlDaGFyKilja2FsbG9jKGFsbG9jc2l6ZSk7CiAgICAgICAgIC8qIEVsc2Ugb3ZlcmZsb3cgb2NjdXJyZWQsIGFuZCB3ZSB0YWtlIHRoZSBuZXh0IGV4aXQgKi8KICAgICAgICAgaWYgKCFvdXRidWYpIHsKICAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgICAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7Ci0gICAgICAgICAgICBpZiAoaW5idWZbaV0gPj0gMHgxMDAwMCkgeworICAgICAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGluYnVmLCBpKTsKKyAgICAgICAgICAgIC8qIFdlIGNhbm5vdCB0ZXN0IGZvciBzaXplb2YoVGNsX1VuaUNoYXIpIGRpcmVjdGx5LAorICAgICAgICAgICAgICAgc28gd2UgdGVzdCBmb3IgVVRGLTggc2l6ZSBpbnN0ZWFkLiAqLworI2lmIFRDTF9VVEZfTUFYID09IDMKKyAgICAgICAgICAgIGlmIChjaCA+PSAweDEwMDAwKSB7CiAgICAgICAgICAgICAgICAgLyogVGNsIGRvZXNuJ3QgZG8gVVRGLTE2LCB5ZXQuICovCiAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjaGFyYWN0ZXIgVSsleCBpcyBhYm92ZSB0aGUgcmFuZ2UgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiKFUrMDAwMC1VK0ZGRkYpIGFsbG93ZWQgYnkgVGNsIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5idWZbaV0pOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaCk7CiAgICAgICAgICAgICAgICAgY2tmcmVlKEZSRUVDQVNUIG91dGJ1Zik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisjZW5kaWYKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG91dGJ1ZltpXSA9IGluYnVmW2ldOworICAgICAgICAgICAgb3V0YnVmW2ldID0gY2g7CiAgICAgICAgIH0KICAgICAgICAgcmVzdWx0ID0gVGNsX05ld1VuaWNvZGVPYmoob3V0YnVmLCBzaXplKTsKICAgICAgICAgY2tmcmVlKEZSRUVDQVNUIG91dGJ1Zik7CiAgICAgICAgIHJldHVybiByZXN1bHQ7Ci0jZWxzZQotICAgICAgICByZXR1cm4gVGNsX05ld1VuaWNvZGVPYmooaW5idWYsIHNpemUpOwotI2VuZGlmCi0KICAgICB9CiAgICAgZWxzZSBpZihQeVRjbE9iamVjdF9DaGVjayh2YWx1ZSkpIHsKICAgICAgICAgVGNsX09iaiAqdiA9ICgoUHlUY2xPYmplY3QqKXZhbHVlKS0+dmFsdWU7CkBAIC0xMDkwLDI0ICsxMDg0LDE0IEBACiAgICAgfQogCiAgICAgaWYgKHZhbHVlLT50eXBlUHRyID09IGFwcC0+U3RyaW5nVHlwZSkgewotI2lmIGRlZmluZWQoUHlfVU5JQ09ERV9XSURFKSAmJiBUQ0xfVVRGX01BWD09MwotICAgICAgICBQeU9iamVjdCAqcmVzdWx0OwotICAgICAgICBpbnQgc2l6ZTsKLSAgICAgICAgVGNsX1VuaUNoYXIgKmlucHV0OwotICAgICAgICBQeV9VTklDT0RFICpvdXRwdXQ7Ci0KLSAgICAgICAgc2l6ZSA9IFRjbF9HZXRDaGFyTGVuZ3RoKHZhbHVlKTsKLSAgICAgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHNpemUpOwotICAgICAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBpbnB1dCA9IFRjbF9HZXRVbmljb2RlKHZhbHVlKTsKLSAgICAgICAgb3V0cHV0ID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KTsKLSAgICAgICAgd2hpbGUgKHNpemUtLSkKLSAgICAgICAgICAgICpvdXRwdXQrKyA9ICppbnB1dCsrOwotICAgICAgICByZXR1cm4gcmVzdWx0OworI2lmIFRDTF9VVEZfTUFYPT0zCisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKAorICAgICAgICAgICAgUHlVbmljb2RlXzJCWVRFX0tJTkQsIFRjbF9HZXRVbmljb2RlKHZhbHVlKSwKKyAgICAgICAgICAgIFRjbF9HZXRDaGFyTGVuZ3RoKHZhbHVlKSk7CiAjZWxzZQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKFRjbF9HZXRVbmljb2RlKHZhbHVlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUY2xfR2V0Q2hhckxlbmd0aCh2YWx1ZSkpOworICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YSgKKyAgICAgICAgICAgIFB5VW5pY29kZV80QllURV9LSU5ELCBUY2xfR2V0VW5pY29kZSh2YWx1ZSksCisgICAgICAgICAgICBUY2xfR2V0Q2hhckxlbmd0aCh2YWx1ZSkpOwogI2VuZGlmCiAgICAgfQogCkBAIC0yMDA3LDcgKzE5OTEsNyBAQAogUHl0aG9uQ21kKENsaWVudERhdGEgY2xpZW50RGF0YSwgVGNsX0ludGVycCAqaW50ZXJwLCBpbnQgYXJnYywgY2hhciAqYXJndltdKQogewogICAgIFB5dGhvbkNtZF9DbGllbnREYXRhICpkYXRhID0gKFB5dGhvbkNtZF9DbGllbnREYXRhICopY2xpZW50RGF0YTsKLSAgICBQeU9iamVjdCAqc2VsZiwgKmZ1bmMsICphcmcsICpyZXM7CisgICAgUHlPYmplY3QgKmZ1bmMsICphcmcsICpyZXM7CiAgICAgaW50IGksIHJ2OwogICAgIFRjbF9PYmogKm9ial9yZXM7CiAKQEAgLTIwMTYsNyArMjAwMCw2IEBACiAgICAgLyogVEJEOiBubyBlcnJvciBjaGVja2luZyBoZXJlIHNpbmNlIHdlIGtub3csIHZpYSB0aGUKICAgICAgKiBUa2FwcF9DcmVhdGVDb21tYW5kKCkgdGhhdCB0aGUgY2xpZW50IGRhdGEgaXMgYSB0d28tdHVwbGUKICAgICAgKi8KLSAgICBzZWxmID0gZGF0YS0+c2VsZjsKICAgICBmdW5jID0gZGF0YS0+ZnVuYzsKIAogICAgIC8qIENyZWF0ZSBhcmd1bWVudCBsaXN0IChhcmd2MSwgLi4uLCBhcmd2TikgKi8KQEAgLTI0MTUsMTEgKzIzOTgsOSBAQAogVGt0dF9SZXByKFB5T2JqZWN0ICpzZWxmKQogewogICAgIFRrdHRPYmplY3QgKnYgPSAoVGt0dE9iamVjdCAqKXNlbGY7Ci0gICAgY2hhciBidWZbMTAwXTsKLQotICAgIFB5T1Nfc25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgIjx0a3RpbWVydG9rZW4gYXQgJXAlcz4iLCB2LAotICAgICAgICAgICAgICAgICAgICB2LT5mdW5jID09IE5VTEwgPyAiLCBoYW5kbGVyIGRlbGV0ZWQiIDogIiIpOwotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhidWYpOworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPHRrdGltZXJ0b2tlbiBhdCAlcCVzPiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHYtPmZ1bmMgPT0gTlVMTCA/ICIsIGhhbmRsZXIgZGVsZXRlZCIgOiAiIik7CiB9CiAKIHN0YXRpYyBQeVR5cGVPYmplY3QgVGt0dF9UeXBlID0KZGlmZiAtLWdpdCBhL01vZHVsZXMvYXJyYXltb2R1bGUuYyBiL01vZHVsZXMvYXJyYXltb2R1bGUuYwppbmRleCA2NDFlMjgzLi43NmEzYTY1IDEwMDY0NAotLS0gYS9Nb2R1bGVzL2FycmF5bW9kdWxlLmMKKysrIGIvTW9kdWxlcy9hcnJheW1vZHVsZS5jCkBAIC0yMiw3ICsyMiw3IEBACiAgKiBmdW5jdGlvbnMgYXJlbid0IHZpc2libGUgeWV0LgogICovCiBzdHJ1Y3QgYXJyYXlkZXNjciB7Ci0gICAgUHlfVU5JQ09ERSB0eXBlY29kZTsKKyAgICBjaGFyIHR5cGVjb2RlOwogICAgIGludCBpdGVtc2l6ZTsKICAgICBQeU9iamVjdCAqICgqZ2V0aXRlbSkoc3RydWN0IGFycmF5b2JqZWN0ICosIFB5X3NzaXplX3QpOwogICAgIGludCAoKnNldGl0ZW0pKHN0cnVjdCBhcnJheW9iamVjdCAqLCBQeV9zc2l6ZV90LCBQeU9iamVjdCAqKTsKQEAgLTE3NCwyNCArMTc0LDI1IEBACiBzdGF0aWMgUHlPYmplY3QgKgogdV9nZXRpdGVtKGFycmF5b2JqZWN0ICphcCwgUHlfc3NpemVfdCBpKQogewotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoJigoUHlfVU5JQ09ERSAqKSBhcC0+b2JfaXRlbSlbaV0sIDEpOworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbU9yZGluYWwoKChQeV9VQ1M0ICopIGFwLT5vYl9pdGVtKVtpXSk7CiB9CiAKIHN0YXRpYyBpbnQKIHVfc2V0aXRlbShhcnJheW9iamVjdCAqYXAsIFB5X3NzaXplX3QgaSwgUHlPYmplY3QgKnYpCiB7Ci0gICAgUHlfVU5JQ09ERSAqcDsKLSAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICBQeU9iamVjdCAqcDsKIAotICAgIGlmICghUHlBcmdfUGFyc2UodiwgInUjO2FycmF5IGl0ZW0gbXVzdCBiZSB1bmljb2RlIGNoYXJhY3RlciIsICZwLCAmbGVuKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlKHYsICJVO2FycmF5IGl0ZW0gbXVzdCBiZSB1bmljb2RlIGNoYXJhY3RlciIsICZwKSkKICAgICAgICAgcmV0dXJuIC0xOwotICAgIGlmIChsZW4gIT0gMSkgeworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocCkpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgocCkgIT0gMSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgImFycmF5IGl0ZW0gbXVzdCBiZSB1bmljb2RlIGNoYXJhY3RlciIpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIGlmIChpID49IDApCi0gICAgICAgICgoUHlfVU5JQ09ERSAqKWFwLT5vYl9pdGVtKVtpXSA9IHBbMF07CisgICAgICAgICgoUHlfVUNTNCAqKWFwLT5vYl9pdGVtKVtpXSA9IFB5VW5pY29kZV9SRUFEX0NIQVIocCwgMCk7CiAgICAgcmV0dXJuIDA7CiB9CiAKQEAgLTM1Niw2ICszNTcsNTkgQEAKICAgICByZXR1cm4gMDsKIH0KIAorI2lmZGVmIEhBVkVfTE9OR19MT05HCisKK3N0YXRpYyBQeU9iamVjdCAqCitxX2dldGl0ZW0oYXJyYXlvYmplY3QgKmFwLCBQeV9zc2l6ZV90IGkpCit7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZ0xvbmcoKChQWV9MT05HX0xPTkcgKilhcC0+b2JfaXRlbSlbaV0pOworfQorCitzdGF0aWMgaW50CitxX3NldGl0ZW0oYXJyYXlvYmplY3QgKmFwLCBQeV9zc2l6ZV90IGksIFB5T2JqZWN0ICp2KQoreworICAgIFBZX0xPTkdfTE9ORyB4OworICAgIGlmICghUHlBcmdfUGFyc2UodiwgIkw7YXJyYXkgaXRlbSBtdXN0IGJlIGludGVnZXIiLCAmeCkpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBpZiAoaSA+PSAwKQorICAgICAgICAoKFBZX0xPTkdfTE9ORyAqKWFwLT5vYl9pdGVtKVtpXSA9IHg7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitRUV9nZXRpdGVtKGFycmF5b2JqZWN0ICphcCwgUHlfc3NpemVfdCBpKQoreworICAgIHJldHVybiBQeUxvbmdfRnJvbVVuc2lnbmVkTG9uZ0xvbmcoCisgICAgICAgICgodW5zaWduZWQgUFlfTE9OR19MT05HICopYXAtPm9iX2l0ZW0pW2ldKTsKK30KKworc3RhdGljIGludAorUVFfc2V0aXRlbShhcnJheW9iamVjdCAqYXAsIFB5X3NzaXplX3QgaSwgUHlPYmplY3QgKnYpCit7CisgICAgdW5zaWduZWQgUFlfTE9OR19MT05HIHg7CisgICAgaWYgKFB5TG9uZ19DaGVjayh2KSkgeworICAgICAgICB4ID0gUHlMb25nX0FzVW5zaWduZWRMb25nTG9uZyh2KTsKKyAgICAgICAgaWYgKHggPT0gKHVuc2lnbmVkIFBZX0xPTkdfTE9ORykgLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFBZX0xPTkdfTE9ORyB5OworICAgICAgICBpZiAoIVB5QXJnX1BhcnNlKHYsICJMO2FycmF5IGl0ZW0gbXVzdCBiZSBpbnRlZ2VyIiwgJnkpKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBpZiAoeSA8IDApIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAorICAgICAgICAgICAgICAgICJ1bnNpZ25lZCBsb25nIGxvbmcgaXMgbGVzcyB0aGFuIG1pbmltdW0iKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICB4ID0gKHVuc2lnbmVkIFBZX0xPTkdfTE9ORyl5OworICAgIH0KKworICAgIGlmIChpID49IDApCisgICAgICAgICgodW5zaWduZWQgUFlfTE9OR19MT05HICopYXAtPm9iX2l0ZW0pW2ldID0geDsKKyAgICByZXR1cm4gMDsKK30KKyNlbmRpZgorCiBzdGF0aWMgUHlPYmplY3QgKgogZl9nZXRpdGVtKGFycmF5b2JqZWN0ICphcCwgUHlfc3NpemVfdCBpKQogewpAQCAtMzkwLDYgKzQ0NCwxMyBAQAogICAgIHJldHVybiAwOwogfQogCisjaWYgU0laRU9GX0lOVCA9PSA0CisjICBkZWZpbmUgU1RSVUNUX0xPTkdfRk9STUFUICJJIgorI2VsaWYgU0laRU9GX0xPTkcgPT0gNAorIyAgZGVmaW5lIFNUUlVDVF9MT05HX0ZPUk1BVCAiTCIKKyNlbHNlCisjICBlcnJvciAiVW5hYmxlIHRvIGdldCBzdHJ1Y3QgZm9ybWF0IGZvciBQeV9VQ1M0IgorI2VuZGlmCiAKIC8qIERlc2NyaXB0aW9uIG9mIHR5cGVzLgogICoKQEAgLTM5OSwxMyArNDYwLDE3IEBACiBzdGF0aWMgc3RydWN0IGFycmF5ZGVzY3IgZGVzY3JpcHRvcnNbXSA9IHsKICAgICB7J2InLCAxLCBiX2dldGl0ZW0sIGJfc2V0aXRlbSwgImIiLCAxLCAxfSwKICAgICB7J0InLCAxLCBCQl9nZXRpdGVtLCBCQl9zZXRpdGVtLCAiQiIsIDEsIDB9LAotICAgIHsndScsIHNpemVvZihQeV9VTklDT0RFKSwgdV9nZXRpdGVtLCB1X3NldGl0ZW0sICJ1IiwgMCwgMH0sCisgICAgeyd1Jywgc2l6ZW9mKFB5X1VDUzQpLCB1X2dldGl0ZW0sIHVfc2V0aXRlbSwgU1RSVUNUX0xPTkdfRk9STUFULCAwLCAwfSwKICAgICB7J2gnLCBzaXplb2Yoc2hvcnQpLCBoX2dldGl0ZW0sIGhfc2V0aXRlbSwgImgiLCAxLCAxfSwKICAgICB7J0gnLCBzaXplb2Yoc2hvcnQpLCBISF9nZXRpdGVtLCBISF9zZXRpdGVtLCAiSCIsIDEsIDB9LAogICAgIHsnaScsIHNpemVvZihpbnQpLCBpX2dldGl0ZW0sIGlfc2V0aXRlbSwgImkiLCAxLCAxfSwKICAgICB7J0knLCBzaXplb2YoaW50KSwgSUlfZ2V0aXRlbSwgSUlfc2V0aXRlbSwgIkkiLCAxLCAwfSwKICAgICB7J2wnLCBzaXplb2YobG9uZyksIGxfZ2V0aXRlbSwgbF9zZXRpdGVtLCAibCIsIDEsIDF9LAogICAgIHsnTCcsIHNpemVvZihsb25nKSwgTExfZ2V0aXRlbSwgTExfc2V0aXRlbSwgIkwiLCAxLCAwfSwKKyNpZmRlZiBIQVZFX0xPTkdfTE9ORworICAgIHsncScsIHNpemVvZihQWV9MT05HX0xPTkcpLCBxX2dldGl0ZW0sIHFfc2V0aXRlbSwgInEiLCAxLCAxfSwKKyAgICB7J1EnLCBzaXplb2YoUFlfTE9OR19MT05HKSwgUVFfZ2V0aXRlbSwgUVFfc2V0aXRlbSwgIlEiLCAxLCAwfSwKKyNlbmRpZgogICAgIHsnZicsIHNpemVvZihmbG9hdCksIGZfZ2V0aXRlbSwgZl9zZXRpdGVtLCAiZiIsIDAsIDB9LAogICAgIHsnZCcsIHNpemVvZihkb3VibGUpLCBkX2dldGl0ZW0sIGRfc2V0aXRlbSwgImQiLCAwLCAwfSwKICAgICB7J1wwJywgMCwgMCwgMCwgMCwgMCwgMH0gLyogU2VudGluZWwgKi8KQEAgLTUxNCwxMCArNTc5LDggQEAKICAgICBQeV9zc2l6ZV90IGksIGs7CiAgICAgUHlPYmplY3QgKnJlczsKIAotICAgIGlmICghYXJyYXlfQ2hlY2sodikgfHwgIWFycmF5X0NoZWNrKHcpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCFhcnJheV9DaGVjayh2KSB8fCAhYXJyYXlfQ2hlY2sodykpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIAogICAgIHZhID0gKGFycmF5b2JqZWN0ICopdjsKICAgICB3YSA9IChhcnJheW9iamVjdCAqKXc7CkBAIC04NzYsNyArOTM5LDYgQEAKICAgICBpZiAoUHlfU0laRShzZWxmKSA+IDApIHsKICAgICAgICAgaWYgKG4gPCAwKQogICAgICAgICAgICAgbiA9IDA7Ci0gICAgICAgIGl0ZW1zID0gc2VsZi0+b2JfaXRlbTsKICAgICAgICAgaWYgKChzZWxmLT5vYl9kZXNjci0+aXRlbXNpemUgIT0gMCkgJiYKICAgICAgICAgICAgIChQeV9TSVpFKHNlbGYpID4gUFlfU1NJWkVfVF9NQVggLyBzZWxmLT5vYl9kZXNjci0+aXRlbXNpemUpKSB7CiAgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKQEAgLTExOTEsNiArMTI1Myw3IEBACiAgICAgUHlPYmplY3QgKmYsICpiLCAqcmVzOwogICAgIFB5X3NzaXplX3QgaXRlbXNpemUgPSBzZWxmLT5vYl9kZXNjci0+aXRlbXNpemU7CiAgICAgUHlfc3NpemVfdCBuLCBuYnl0ZXM7CisgICAgX1B5X0lERU5USUZJRVIocmVhZCk7CiAgICAgaW50IG5vdF9lbm91Z2hfYnl0ZXM7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9uOmZyb21maWxlIiwgJmYsICZuKSkKQEAgLTEyMDIsNyArMTI2NSw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGIgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGYsICJyZWFkIiwgIm4iLCBuYnl0ZXMpOworICAgIGIgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGYsICZQeUlkX3JlYWQsICJuIiwgbmJ5dGVzKTsKICAgICBpZiAoYiA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIApAQCAtMTI1OSwxMiArMTMyMiwxNCBAQAogICAgICAgICBjaGFyKiBwdHIgPSBzZWxmLT5vYl9pdGVtICsgaSpCTE9DS1NJWkU7CiAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSA9IEJMT0NLU0laRTsKICAgICAgICAgUHlPYmplY3QgKmJ5dGVzLCAqcmVzOworICAgICAgICBfUHlfSURFTlRJRklFUih3cml0ZSk7CisKICAgICAgICAgaWYgKGkqQkxPQ0tTSVpFICsgc2l6ZSA+IG5ieXRlcykKICAgICAgICAgICAgIHNpemUgPSBuYnl0ZXMgLSBpKkJMT0NLU0laRTsKICAgICAgICAgYnl0ZXMgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKHB0ciwgc2l6ZSk7CiAgICAgICAgIGlmIChieXRlcyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIHJlcyA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZiwgIndyaXRlIiwgIk8iLCBieXRlcyk7CisgICAgICAgIHJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZiwgJlB5SWRfd3JpdGUsICJPIiwgYnl0ZXMpOwogICAgICAgICBQeV9ERUNSRUYoYnl0ZXMpOwogICAgICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTE0NTQsMjUgKzE1MTksMjYgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBhcnJheV9mcm9tdW5pY29kZShhcnJheW9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlfVU5JQ09ERSAqdXN0cjsKKyAgICBQeU9iamVjdCAqdXN0cjsKICAgICBQeV9zc2l6ZV90IG47Ci0gICAgUHlfVU5JQ09ERSB0eXBlY29kZTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAidSM6ZnJvbXVuaWNvZGUiLCAmdXN0ciwgJm4pKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVTpmcm9tdW5pY29kZSIsICZ1c3RyKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdHlwZWNvZGUgPSBzZWxmLT5vYl9kZXNjci0+dHlwZWNvZGU7Ci0gICAgaWYgKCh0eXBlY29kZSAhPSAndScpKSB7CisgICAgaWYgKHNlbGYtPm9iX2Rlc2NyLT50eXBlY29kZSAhPSAndScpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAiZnJvbXVuaWNvZGUoKSBtYXkgb25seSBiZSBjYWxsZWQgb24gIgogICAgICAgICAgICAgInVuaWNvZGUgdHlwZSBhcnJheXMiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodXN0cikpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIG4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1c3RyKTsKICAgICBpZiAobiA+IDApIHsKICAgICAgICAgUHlfc3NpemVfdCBvbGRfc2l6ZSA9IFB5X1NJWkUoc2VsZik7CiAgICAgICAgIGlmIChhcnJheV9yZXNpemUoc2VsZiwgb2xkX3NpemUgKyBuKSA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBtZW1jcHkoc2VsZi0+b2JfaXRlbSArIG9sZF9zaXplICogc2l6ZW9mKFB5X1VOSUNPREUpLAotICAgICAgICAgICAgICAgdXN0ciwgbiAqIHNpemVvZihQeV9VTklDT0RFKSk7CisgICAgICAgIGlmICghUHlVbmljb2RlX0FzVUNTNCh1c3RyLCAoUHlfVUNTNCAqKXNlbGYtPm9iX2l0ZW0gKyBvbGRfc2l6ZSwgbiwgMCkpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CkBAIC0xNDkxLDE0ICsxNTU3LDE0IEBACiBzdGF0aWMgUHlPYmplY3QgKgogYXJyYXlfdG91bmljb2RlKGFycmF5b2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQogewotICAgIFB5X1VOSUNPREUgdHlwZWNvZGU7Ci0gICAgdHlwZWNvZGUgPSBzZWxmLT5vYl9kZXNjci0+dHlwZWNvZGU7Ci0gICAgaWYgKCh0eXBlY29kZSAhPSAndScpKSB7CisgICAgaWYgKHNlbGYtPm9iX2Rlc2NyLT50eXBlY29kZSAhPSAndScpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgInRvdW5pY29kZSgpIG1heSBvbmx5IGJlIGNhbGxlZCBvbiB1bmljb2RlIHR5cGUgYXJyYXlzIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKChQeV9VTklDT0RFICopIHNlbGYtPm9iX2l0ZW0sIFB5X1NJWkUoc2VsZikpOworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKFB5VW5pY29kZV80QllURV9LSU5ELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChQeV9VQ1M0ICopIHNlbGYtPm9iX2l0ZW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfU0laRShzZWxmKSk7CiB9CiAKIFB5RG9jX1NUUlZBUih0b3VuaWNvZGVfZG9jLApAQCAtMTU4OCw3ICsxNjU0LDcgQEAKICAqIGJlIGZvdW5kLgogICovCiBzdGF0aWMgZW51bSBtYWNoaW5lX2Zvcm1hdF9jb2RlCi10eXBlY29kZV90b19tZm9ybWF0X2NvZGUoaW50IHR5cGVjb2RlKQordHlwZWNvZGVfdG9fbWZvcm1hdF9jb2RlKGNoYXIgdHlwZWNvZGUpCiB7CiAjaWZkZWYgV09SRFNfQklHRU5ESUFOCiAgICAgY29uc3QgaW50IGlzX2JpZ19lbmRpYW4gPSAxOwpAQCAtMTYwNSwxMyArMTY3MSw3IEBACiAgICAgICAgIHJldHVybiBVTlNJR05FRF9JTlQ4OwogCiAgICAgY2FzZSAndSc6Ci0gICAgICAgIGlmIChzaXplb2YoUHlfVU5JQ09ERSkgPT0gMikgewotICAgICAgICAgICAgcmV0dXJuIFVURjE2X0xFICsgaXNfYmlnX2VuZGlhbjsKLSAgICAgICAgfQotICAgICAgICBpZiAoc2l6ZW9mKFB5X1VOSUNPREUpID09IDQpIHsKLSAgICAgICAgICAgIHJldHVybiBVVEYzMl9MRSArIGlzX2JpZ19lbmRpYW47Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIFVOS05PV05fRk9STUFUOworICAgICAgICByZXR1cm4gVVRGMzJfTEUgKyBpc19iaWdfZW5kaWFuOwogCiAgICAgY2FzZSAnZic6CiAgICAgICAgIGlmIChzaXplb2YoZmxvYXQpID09IDQpIHsKQEAgLTE2NTgsNiArMTcxOCwxNiBAQAogICAgICAgICBpbnRzaXplID0gc2l6ZW9mKGxvbmcpOwogICAgICAgICBpc19zaWduZWQgPSAwOwogICAgICAgICBicmVhazsKKyNpZiBIQVZFX0xPTkdfTE9ORworICAgIGNhc2UgJ3EnOgorICAgICAgICBpbnRzaXplID0gc2l6ZW9mKFBZX0xPTkdfTE9ORyk7CisgICAgICAgIGlzX3NpZ25lZCA9IDE7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgJ1EnOgorICAgICAgICBpbnRzaXplID0gc2l6ZW9mKFBZX0xPTkdfTE9ORyk7CisgICAgICAgIGlzX3NpZ25lZCA9IDA7CisgICAgICAgIGJyZWFrOworI2VuZGlmCiAgICAgZGVmYXVsdDoKICAgICAgICAgcmV0dXJuIFVOS05PV05fRk9STUFUOwogICAgIH0KQEAgLTE2ODgsNyArMTc1OCw3IEBACiAgKiBOVUxMIGlzIHJldHVybmVkIHRvIGluZGljYXRlIGEgZmFpbHVyZS4KICAqLwogc3RhdGljIFB5T2JqZWN0ICoKLW1ha2VfYXJyYXkoUHlUeXBlT2JqZWN0ICphcnJheXR5cGUsIFB5X1VOSUNPREUgdHlwZWNvZGUsIFB5T2JqZWN0ICppdGVtcykKK21ha2VfYXJyYXkoUHlUeXBlT2JqZWN0ICphcnJheXR5cGUsIGNoYXIgdHlwZWNvZGUsIFB5T2JqZWN0ICppdGVtcykKIHsKICAgICBQeU9iamVjdCAqbmV3X2FyZ3M7CiAgICAgUHlPYmplY3QgKmFycmF5X29iajsKQEAgLTE2OTcsNyArMTc2Nyw3IEBACiAgICAgYXNzZXJ0KGFycmF5dHlwZSAhPSBOVUxMKTsKICAgICBhc3NlcnQoaXRlbXMgIT0gTlVMTCk7CiAKLSAgICB0eXBlY29kZV9vYmogPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoJnR5cGVjb2RlLCAxKTsKKyAgICB0eXBlY29kZV9vYmogPSBQeVVuaWNvZGVfRnJvbU9yZGluYWwodHlwZWNvZGUpOwogICAgIGlmICh0eXBlY29kZV9vYmogPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKQEAgLTE3MjcsMTcgKzE3OTcsMTQgQEAKICAgICBQeU9iamVjdCAqaXRlbXM7CiAgICAgUHlPYmplY3QgKmNvbnZlcnRlZF9pdGVtczsKICAgICBQeU9iamVjdCAqcmVzdWx0OwotICAgIGludCB0eXBlY29kZV9pbnQ7Ci0gICAgUHlfVU5JQ09ERSB0eXBlY29kZTsKKyAgICBpbnQgdHlwZWNvZGU7CiAgICAgZW51bSBtYWNoaW5lX2Zvcm1hdF9jb2RlIG1mb3JtYXRfY29kZTsKICAgICBzdHJ1Y3QgYXJyYXlkZXNjciAqZGVzY3I7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9DaU86YXJyYXkuX2FycmF5X3JlY29uc3RydWN0b3IiLAotICAgICAgICAgICAgICAgICAgICAmYXJyYXl0eXBlLCAmdHlwZWNvZGVfaW50LCAmbWZvcm1hdF9jb2RlLCAmaXRlbXMpKQorICAgICAgICAgICAgICAgICAgICAmYXJyYXl0eXBlLCAmdHlwZWNvZGUsICZtZm9ybWF0X2NvZGUsICZpdGVtcykpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgdHlwZWNvZGUgPSAoUHlfVU5JQ09ERSl0eXBlY29kZV9pbnQ7Ci0KICAgICBpZiAoIVB5VHlwZV9DaGVjayhhcnJheXR5cGUpKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAiZmlyc3QgYXJndW1lbnQgbXVzdCBhIHR5cGUgb2JqZWN0LCBub3QgJS4yMDBzIiwKQEAgLTE3NTEsNyArMTgxOCw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBmb3IgKGRlc2NyID0gZGVzY3JpcHRvcnM7IGRlc2NyLT50eXBlY29kZSAhPSAnXDAnOyBkZXNjcisrKSB7Ci0gICAgICAgIGlmIChkZXNjci0+dHlwZWNvZGUgPT0gdHlwZWNvZGUpCisgICAgICAgIGlmICgoaW50KWRlc2NyLT50eXBlY29kZSA9PSB0eXBlY29kZSkKICAgICAgICAgICAgIGJyZWFrOwogICAgIH0KICAgICBpZiAoZGVzY3ItPnR5cGVjb2RlID09ICdcMCcpIHsKQEAgLTE3NzMsOSArMTg0MCw5IEBACiAgICAgfQogCiAgICAgLyogRmFzdCBwYXRoOiBObyBkZWNvZGluZyBoYXMgdG8gYmUgZG9uZS4gKi8KLSAgICBpZiAobWZvcm1hdF9jb2RlID09IHR5cGVjb2RlX3RvX21mb3JtYXRfY29kZSh0eXBlY29kZSkgfHwKKyAgICBpZiAobWZvcm1hdF9jb2RlID09IHR5cGVjb2RlX3RvX21mb3JtYXRfY29kZSgoY2hhcil0eXBlY29kZSkgfHwKICAgICAgICAgbWZvcm1hdF9jb2RlID09IFVOS05PV05fRk9STUFUKSB7Ci0gICAgICAgIHJldHVybiBtYWtlX2FycmF5KGFycmF5dHlwZSwgdHlwZWNvZGUsIGl0ZW1zKTsKKyAgICAgICAgcmV0dXJuIG1ha2VfYXJyYXkoYXJyYXl0eXBlLCAoY2hhcil0eXBlY29kZSwgaXRlbXMpOwogICAgIH0KIAogICAgIC8qIFNsb3cgcGF0aDogRGVjb2RlIHRoZSBieXRlIHN0cmluZyBhY2NvcmRpbmcgdG8gdGhlIGdpdmVuIG1hY2hpbmUKQEAgLTE5MjEsNyArMTk4OCw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIHJlc3VsdCA9IG1ha2VfYXJyYXkoYXJyYXl0eXBlLCB0eXBlY29kZSwgY29udmVydGVkX2l0ZW1zKTsKKyAgICByZXN1bHQgPSBtYWtlX2FycmF5KGFycmF5dHlwZSwgKGNoYXIpdHlwZWNvZGUsIGNvbnZlcnRlZF9pdGVtcyk7CiAgICAgUHlfREVDUkVGKGNvbnZlcnRlZF9pdGVtcyk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTE5MzYsMTQgKzIwMDMsMTYgQEAKICAgICBpbnQgbWZvcm1hdF9jb2RlOwogICAgIHN0YXRpYyBQeU9iamVjdCAqYXJyYXlfcmVjb25zdHJ1Y3RvciA9IE5VTEw7CiAgICAgbG9uZyBwcm90b2NvbDsKKyAgICBfUHlfSURFTlRJRklFUihfYXJyYXlfcmVjb25zdHJ1Y3Rvcik7CisgICAgX1B5X0lERU5USUZJRVIoX19kaWN0X18pOwogCiAgICAgaWYgKGFycmF5X3JlY29uc3RydWN0b3IgPT0gTlVMTCkgewogICAgICAgICBQeU9iamVjdCAqYXJyYXlfbW9kdWxlID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlKCJhcnJheSIpOwogICAgICAgICBpZiAoYXJyYXlfbW9kdWxlID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgYXJyYXlfcmVjb25zdHJ1Y3RvciA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoCisgICAgICAgIGFycmF5X3JlY29uc3RydWN0b3IgPSBfUHlPYmplY3RfR2V0QXR0cklkKAogICAgICAgICAgICAgYXJyYXlfbW9kdWxlLAotICAgICAgICAgICAgIl9hcnJheV9yZWNvbnN0cnVjdG9yIik7CisgICAgICAgICAgICAmUHlJZF9fYXJyYXlfcmVjb25zdHJ1Y3Rvcik7CiAgICAgICAgIFB5X0RFQ1JFRihhcnJheV9tb2R1bGUpOwogICAgICAgICBpZiAoYXJyYXlfcmVjb25zdHJ1Y3RvciA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xOTU4LDcgKzIwMjcsNyBAQAogICAgIGlmIChwcm90b2NvbCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGRpY3QgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKChQeU9iamVjdCAqKWFycmF5LCAiX19kaWN0X18iKTsKKyAgICBkaWN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QgKilhcnJheSwgJlB5SWRfX19kaWN0X18pOwogICAgIGlmIChkaWN0ID09IE5VTEwpIHsKICAgICAgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjAxMCw4ICsyMDc5LDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBhcnJheV9nZXRfdHlwZWNvZGUoYXJyYXlvYmplY3QgKmEsIHZvaWQgKmNsb3N1cmUpCiB7Ci0gICAgUHlfVU5JQ09ERSB0YyA9IGEtPm9iX2Rlc2NyLT50eXBlY29kZTsKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKCZ0YywgMSk7CisgICAgY2hhciB0eXBlY29kZSA9IGEtPm9iX2Rlc2NyLT50eXBlY29kZTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21PcmRpbmFsKHR5cGVjb2RlKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTIwODMsNyArMjE1Miw3IEBACiBzdGF0aWMgUHlPYmplY3QgKgogYXJyYXlfcmVwcihhcnJheW9iamVjdCAqYSkKIHsKLSAgICBQeV9VTklDT0RFIHR5cGVjb2RlOworICAgIGNoYXIgdHlwZWNvZGU7CiAgICAgUHlPYmplY3QgKnMsICp2ID0gTlVMTDsKICAgICBQeV9zc2l6ZV90IGxlbjsKIApAQCAtMjA5Miw3ICsyMTYxLDcgQEAKICAgICBpZiAobGVuID09IDApIHsKICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCJhcnJheSgnJWMnKSIsIChpbnQpdHlwZWNvZGUpOwogICAgIH0KLSAgICBpZiAoKHR5cGVjb2RlID09ICd1JykpCisgICAgaWYgKHR5cGVjb2RlID09ICd1JykKICAgICAgICAgdiA9IGFycmF5X3RvdW5pY29kZShhLCBOVUxMKTsKICAgICBlbHNlCiAgICAgICAgIHYgPSBhcnJheV90b2xpc3QoYSwgTlVMTCk7CkBAIC0yMjg3LDcgKzIzNTYsNyBAQAogICAgICAgICAgICAgICAgIHNlbGYtPm9iX2l0ZW0gKyAoY3VyICsgMSkgKiBpdGVtc2l6ZSwKICAgICAgICAgICAgICAgICBsaW0gKiBpdGVtc2l6ZSk7CiAgICAgICAgIH0KLSAgICAgICAgY3VyID0gc3RhcnQgKyBzbGljZWxlbmd0aCAqIHN0ZXA7CisgICAgICAgIGN1ciA9IHN0YXJ0ICsgKHNpemVfdClzbGljZWxlbmd0aCAqIHN0ZXA7CiAgICAgICAgIGlmIChjdXIgPCAoc2l6ZV90KVB5X1NJWkUoc2VsZikpIHsKICAgICAgICAgICAgIG1lbW1vdmUoc2VsZi0+b2JfaXRlbSArIChjdXItc2xpY2VsZW5ndGgpICogaXRlbXNpemUsCiAgICAgICAgICAgICAgICAgc2VsZi0+b2JfaXRlbSArIGN1ciAqIGl0ZW1zaXplLApAQCAtMjM1MCwxNCArMjQxOSw4IEBACiAgICAgICAgIHZpZXctPnN0cmlkZXMgPSAmKHZpZXctPml0ZW1zaXplKTsKICAgICB2aWV3LT5mb3JtYXQgPSBOVUxMOwogICAgIHZpZXctPmludGVybmFsID0gTlVMTDsKLSAgICBpZiAoKGZsYWdzICYgUHlCVUZfRk9STUFUKSA9PSBQeUJVRl9GT1JNQVQpIHsKKyAgICBpZiAoKGZsYWdzICYgUHlCVUZfRk9STUFUKSA9PSBQeUJVRl9GT1JNQVQpCiAgICAgICAgIHZpZXctPmZvcm1hdCA9IHNlbGYtPm9iX2Rlc2NyLT5mb3JtYXRzOwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICBpZiAoc2VsZi0+b2JfZGVzY3ItPnR5cGVjb2RlID09ICd1JykgewotICAgICAgICAgICAgdmlldy0+Zm9ybWF0ID0gInciOwotICAgICAgICB9Ci0jZW5kaWYKLSAgICB9CiAKICBmaW5pc2g6CiAgICAgc2VsZi0+b2JfZXhwb3J0cysrOwpAQCAtMjQ3MSwxOSArMjUzNCwyNSBAQAogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2KTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UgaWYgKGluaXRpYWwgIT0gTlVMTCAmJiBQeVVuaWNvZGVfQ2hlY2soaW5pdGlhbCkpICB7Ci0gICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuID0gUHlVbmljb2RlX0dFVF9EQVRBX1NJWkUoaW5pdGlhbCk7CisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuOworICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoaW5pdGlhbCkpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGEpOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGluaXRpYWwpOwogICAgICAgICAgICAgICAgIGlmIChuID4gMCkgewogICAgICAgICAgICAgICAgICAgICBhcnJheW9iamVjdCAqc2VsZiA9IChhcnJheW9iamVjdCAqKWE7Ci0gICAgICAgICAgICAgICAgICAgIGNoYXIgKml0ZW0gPSBzZWxmLT5vYl9pdGVtOwotICAgICAgICAgICAgICAgICAgICBpdGVtID0gKGNoYXIgKilQeU1lbV9SZWFsbG9jKGl0ZW0sIG4pOworICAgICAgICAgICAgICAgICAgICBQeV9VQ1M0ICppdGVtID0gKFB5X1VDUzQgKilzZWxmLT5vYl9pdGVtOworICAgICAgICAgICAgICAgICAgICBpdGVtID0gKFB5X1VDUzQgKilQeU1lbV9SZWFsbG9jKGl0ZW0sIG4gKiBzaXplb2YoUHlfVUNTNCkpOwogICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbSA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGEpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgc2VsZi0+b2JfaXRlbSA9IGl0ZW07Ci0gICAgICAgICAgICAgICAgICAgIFB5X1NJWkUoc2VsZikgPSBuIC8gc2l6ZW9mKFB5X1VOSUNPREUpOwotICAgICAgICAgICAgICAgICAgICBtZW1jcHkoaXRlbSwgUHlVbmljb2RlX0FTX0RBVEEoaW5pdGlhbCksIG4pOworICAgICAgICAgICAgICAgICAgICBzZWxmLT5vYl9pdGVtID0gKGNoYXIqKWl0ZW07CisgICAgICAgICAgICAgICAgICAgIFB5X1NJWkUoc2VsZikgPSBuOworICAgICAgICAgICAgICAgICAgICBpZiAoIVB5VW5pY29kZV9Bc1VDUzQoaW5pdGlhbCwgaXRlbSwgbiwgMCkpCisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgICAgICAgICAgICAgc2VsZi0+YWxsb2NhdGVkID0gUHlfU0laRShzZWxmKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CkBAIC0yNTA0LDcgKzI1NzMsMTEgQEAKICAgICAgICAgfQogICAgIH0KICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyNpZmRlZiBIQVZFX0xPTkdfTE9ORworICAgICAgICAiYmFkIHR5cGVjb2RlIChtdXN0IGJlIGIsIEIsIHUsIGgsIEgsIGksIEksIGwsIEwsIHEsIFEsIGYgb3IgZCkiKTsKKyNlbHNlCiAgICAgICAgICJiYWQgdHlwZWNvZGUgKG11c3QgYmUgYiwgQiwgdSwgaCwgSCwgaSwgSSwgbCwgTCwgZiBvciBkKSIpOworI2VuZGlmCiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKQEAgLTI1MjAsMTggKzI1OTMsMjEgQEAKICAgICBUeXBlIGNvZGUgICBDIFR5cGUgICAgICAgICAgICAgTWluaW11bSBzaXplIGluIGJ5dGVzIFxuXAogICAgICdiJyAgICAgICAgIHNpZ25lZCBpbnRlZ2VyICAgICAxIFxuXAogICAgICdCJyAgICAgICAgIHVuc2lnbmVkIGludGVnZXIgICAxIFxuXAotICAgICd1JyAgICAgICAgIFVuaWNvZGUgY2hhcmFjdGVyICAyIChzZWUgbm90ZSkgXG5cCisgICAgJ3UnICAgICAgICAgVW5pY29kZSBjaGFyYWN0ZXIgIDQgXG5cCiAgICAgJ2gnICAgICAgICAgc2lnbmVkIGludGVnZXIgICAgIDIgXG5cCiAgICAgJ0gnICAgICAgICAgdW5zaWduZWQgaW50ZWdlciAgIDIgXG5cCiAgICAgJ2knICAgICAgICAgc2lnbmVkIGludGVnZXIgICAgIDIgXG5cCiAgICAgJ0knICAgICAgICAgdW5zaWduZWQgaW50ZWdlciAgIDIgXG5cCiAgICAgJ2wnICAgICAgICAgc2lnbmVkIGludGVnZXIgICAgIDQgXG5cCiAgICAgJ0wnICAgICAgICAgdW5zaWduZWQgaW50ZWdlciAgIDQgXG5cCisgICAgJ3EnICAgICAgICAgc2lnbmVkIGludGVnZXIgICAgIDggKHNlZSBub3RlKSBcblwKKyAgICAnUScgICAgICAgICB1bnNpZ25lZCBpbnRlZ2VyICAgOCAoc2VlIG5vdGUpIFxuXAogICAgICdmJyAgICAgICAgIGZsb2F0aW5nIHBvaW50ICAgICA0IFxuXAogICAgICdkJyAgICAgICAgIGZsb2F0aW5nIHBvaW50ICAgICA4IFxuXAogXG5cCi1OT1RFOiBUaGUgJ3UnIHR5cGVjb2RlIGNvcnJlc3BvbmRzIHRvIFB5dGhvbidzIHVuaWNvZGUgY2hhcmFjdGVyLiBPbiBcblwKLW5hcnJvdyBidWlsZHMgdGhpcyBpcyAyLWJ5dGVzIG9uIHdpZGUgYnVpbGRzIHRoaXMgaXMgNC1ieXRlcy5cblwKK05PVEU6IFRoZSAncScgYW5kICdRJyB0eXBlIGNvZGVzIGFyZSBvbmx5IGF2YWlsYWJsZSBpZiB0aGUgcGxhdGZvcm0gXG5cCitDIGNvbXBpbGVyIHVzZWQgdG8gYnVpbGQgUHl0aG9uIHN1cHBvcnRzICdsb25nIGxvbmcnLCBvciwgb24gV2luZG93cywgXG5cCisnX19pbnQ2NCcuXG5cCiBcblwKIFRoZSBjb25zdHJ1Y3RvciBpczpcblwKIFxuXApAQCAtMjczNiw5ICsyODEyLDkgQEAKIFB5SW5pdF9hcnJheSh2b2lkKQogewogICAgIFB5T2JqZWN0ICptOworICAgIGNoYXIgYnVmZmVyW1B5X0FSUkFZX0xFTkdUSChkZXNjcmlwdG9ycyldLCAqcDsKICAgICBQeU9iamVjdCAqdHlwZWNvZGVzOwogICAgIFB5X3NzaXplX3Qgc2l6ZSA9IDA7Ci0gICAgcmVnaXN0ZXIgUHlfVU5JQ09ERSAqcDsKICAgICBzdHJ1Y3QgYXJyYXlkZXNjciAqZGVzY3I7CiAKICAgICBpZiAoUHlUeXBlX1JlYWR5KCZBcnJheXR5cGUpIDwgMCkKQEAgLTI3NTcsMTMgKzI4MzMsMTMgQEAKICAgICAgICAgc2l6ZSsrOwogICAgIH0KIAotICAgIHR5cGVjb2RlcyA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBzaXplKTsKLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodHlwZWNvZGVzKTsKKyAgICBwID0gYnVmZmVyOwogICAgIGZvciAoZGVzY3IgPSBkZXNjcmlwdG9yczsgZGVzY3ItPnR5cGVjb2RlICE9ICdcMCc7IGRlc2NyKyspIHsKICAgICAgICAgKnArKyA9IChjaGFyKWRlc2NyLT50eXBlY29kZTsKICAgICB9CisgICAgdHlwZWNvZGVzID0gUHlVbmljb2RlX0RlY29kZUFTQ0lJKGJ1ZmZlciwgcCAtIGJ1ZmZlciwgTlVMTCk7CiAKLSAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgInR5cGVjb2RlcyIsIChQeU9iamVjdCAqKXR5cGVjb2Rlcyk7CisgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJ0eXBlY29kZXMiLCB0eXBlY29kZXMpOwogCiAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpIHsKICAgICAgICAgUHlfREVDUkVGKG0pOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9hdWRpb29wLmMgYi9Nb2R1bGVzL2F1ZGlvb3AuYwppbmRleCA5YWI0ODM0Li4wMzc1ZTRlIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2F1ZGlvb3AuYworKysgYi9Nb2R1bGVzL2F1ZGlvb3AuYwpAQCAtNTEzLDcgKzUxMyw2IEBACiAKICAgICBiZXN0X3Jlc3VsdCA9IHJlc3VsdDsKICAgICBiZXN0X2ogPSAwOwotICAgIGogPSAwOwogCiAgICAgZm9yICggaj0xOyBqPD1sZW4xLWxlbjI7IGorKykgewogICAgICAgICBhal9tMSA9IChkb3VibGUpY3AxW2otMV07CkBAIC01OTksNyArNTk4LDYgQEAKIAogICAgIGJlc3RfcmVzdWx0ID0gcmVzdWx0OwogICAgIGJlc3RfaiA9IDA7Ci0gICAgaiA9IDA7CiAKICAgICBmb3IgKCBqPTE7IGo8PWxlbjEtbGVuMjsgaisrKSB7CiAgICAgICAgIGFqX20xID0gKGRvdWJsZSljcDFbai0xXTsKQEAgLTE0MzMsNyArMTQzMSw2IEBACiAgICAgaWYgKCBzdGF0ZSA9PSBQeV9Ob25lICkgewogICAgICAgICAvKiBGaXJzdCB0aW1lLCBpdCBzZWVtcy4gU2V0IGRlZmF1bHRzICovCiAgICAgICAgIHZhbHByZWQgPSAwOwotICAgICAgICBzdGVwID0gNzsKICAgICAgICAgaW5kZXggPSAwOwogICAgIH0gZWxzZSBpZiAoICFQeUFyZ19QYXJzZVR1cGxlKHN0YXRlLCAiaWkiLCAmdmFscHJlZCwgJmluZGV4KSApCiAgICAgICAgIHJldHVybiAwOwpAQCAtMTUzNCw3ICsxNTMxLDYgQEAKICAgICBpZiAoIHN0YXRlID09IFB5X05vbmUgKSB7CiAgICAgICAgIC8qIEZpcnN0IHRpbWUsIGl0IHNlZW1zLiBTZXQgZGVmYXVsdHMgKi8KICAgICAgICAgdmFscHJlZCA9IDA7Ci0gICAgICAgIHN0ZXAgPSA3OwogICAgICAgICBpbmRleCA9IDA7CiAgICAgfSBlbHNlIGlmICggIVB5QXJnX1BhcnNlVHVwbGUoc3RhdGUsICJpaSIsICZ2YWxwcmVkLCAmaW5kZXgpICkKICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL2JpbmFzY2lpLmMgYi9Nb2R1bGVzL2JpbmFzY2lpLmMKaW5kZXggMTk2ODFiNC4uYWQ1ZTFiMSAxMDA2NDQKLS0tIGEvTW9kdWxlcy9iaW5hc2NpaS5jCisrKyBiL01vZHVsZXMvYmluYXNjaWkuYwpAQCAtMTgzLDYgKzE4Myw0NCBAQAogICAgIDB4NmUxNywgMHg3ZTM2LCAweDRlNTUsIDB4NWU3NCwgMHgyZTkzLCAweDNlYjIsIDB4MGVkMSwgMHgxZWYwLAogfTsKIAorc3RhdGljIGludAorYXNjaWlfYnVmZmVyX2NvbnZlcnRlcihQeU9iamVjdCAqYXJnLCBQeV9idWZmZXIgKmJ1ZikKK3sKKyAgICBpZiAoYXJnID09IE5VTEwpIHsKKyAgICAgICAgUHlCdWZmZXJfUmVsZWFzZShidWYpOworICAgICAgICByZXR1cm4gMTsKKyAgICB9CisgICAgaWYgKFB5VW5pY29kZV9DaGVjayhhcmcpKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoYXJnKSA8IDApCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgaWYgKCFQeVVuaWNvZGVfSVNfQVNDSUkoYXJnKSkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN0cmluZyBhcmd1bWVudCBzaG91bGQgY29udGFpbiBvbmx5IEFTQ0lJIGNoYXJhY3RlcnMiKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIGFzc2VydChQeVVuaWNvZGVfS0lORChhcmcpID09IFB5VW5pY29kZV8xQllURV9LSU5EKTsKKyAgICAgICAgYnVmLT5idWYgPSAodm9pZCAqKSBQeVVuaWNvZGVfMUJZVEVfREFUQShhcmcpOworICAgICAgICBidWYtPmxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGFyZyk7CisgICAgICAgIGJ1Zi0+b2JqID0gTlVMTDsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIGlmIChQeU9iamVjdF9HZXRCdWZmZXIoYXJnLCBidWYsIFB5QlVGX1NJTVBMRSkgIT0gMCkgeworICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgImFyZ3VtZW50IHNob3VsZCBiZSBieXRlcywgYnVmZmVyIG9yIEFTQ0lJIHN0cmluZywgIgorICAgICAgICAgICAgICAgICAgICAgIm5vdCAlUiIsIFB5X1RZUEUoYXJnKSk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBpZiAoIVB5QnVmZmVyX0lzQ29udGlndW91cyhidWYsICdDJykpIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCBzaG91bGQgYmUgYSBjb250aWd1b3VzIGJ1ZmZlciwgIgorICAgICAgICAgICAgICAgICAgICAgIm5vdCAlUiIsIFB5X1RZUEUoYXJnKSk7CisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoYnVmKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIHJldHVybiBQeV9DTEVBTlVQX1NVUFBPUlRFRDsKK30KKworCiBQeURvY19TVFJWQVIoZG9jX2EyYl91dSwgIihhc2NpaSkgLT4gYmluLiBEZWNvZGUgYSBsaW5lIG9mIHV1ZW5jb2RlZCBkYXRhIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xOTYsNyArMjM0LDcgQEAKICAgICBQeU9iamVjdCAqcnY7CiAgICAgUHlfc3NpemVfdCBhc2NpaV9sZW4sIGJpbl9sZW47CiAKLSAgICBpZiAoICFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5KjphMmJfdXUiLCAmcGFzY2lpKSApCisgICAgaWYgKCAhUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6YTJiX3V1IiwgYXNjaWlfYnVmZmVyX2NvbnZlcnRlciwgJnBhc2NpaSkgKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBhc2NpaV9kYXRhID0gcGFzY2lpLmJ1ZjsKICAgICBhc2NpaV9sZW4gPSBwYXNjaWkubGVuOwpAQCAtMzcwLDcgKzQwOCw3IEBACiAgICAgUHlfc3NpemVfdCBhc2NpaV9sZW4sIGJpbl9sZW47CiAgICAgaW50IHF1YWRfcG9zID0gMDsKIAotICAgIGlmICggIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInkqOmEyYl9iYXNlNjQiLCAmcGFzY2lpKSApCisgICAgaWYgKCAhUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6YTJiX2Jhc2U2NCIsIGFzY2lpX2J1ZmZlcl9jb252ZXJ0ZXIsICZwYXNjaWkpICkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgYXNjaWlfZGF0YSA9IHBhc2NpaS5idWY7CiAgICAgYXNjaWlfbGVuID0gcGFzY2lpLmxlbjsKQEAgLTU0Niw3ICs1ODQsNyBAQAogICAgIFB5X3NzaXplX3QgbGVuOwogICAgIGludCBkb25lID0gMDsKIAotICAgIGlmICggIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInkqOmEyYl9ocXgiLCAmcGFzY2lpKSApCisgICAgaWYgKCAhUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6YTJiX2hxeCIsIGFzY2lpX2J1ZmZlcl9jb252ZXJ0ZXIsICZwYXNjaWkpICkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgYXNjaWlfZGF0YSA9IHBhc2NpaS5idWY7CiAgICAgbGVuID0gcGFzY2lpLmxlbjsKQEAgLTEwNzgsMTMgKzExMTYsMTEgQEAKIAogICAgIC8qIG1ha2UgaGV4IHZlcnNpb24gb2Ygc3RyaW5nLCB0YWtlbiBmcm9tIHNoYW1vZHVsZS5jICovCiAgICAgZm9yIChpPWo9MDsgaSA8IGFyZ2xlbjsgaSsrKSB7Ci0gICAgICAgIGNoYXIgYzsKKyAgICAgICAgdW5zaWduZWQgY2hhciBjOwogICAgICAgICBjID0gKGFyZ2J1ZltpXSA+PiA0KSAmIDB4ZjsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICByZXRidWZbaisrXSA9IGM7CisgICAgICAgIHJldGJ1ZltqKytdID0gUHlfaGV4ZGlnaXRzW2NdOwogICAgICAgICBjID0gYXJnYnVmW2ldICYgMHhmOwotICAgICAgICBjID0gKGM+OSkgPyBjKydhJy0xMCA6IGMgKyAnMCc7Ci0gICAgICAgIHJldGJ1ZltqKytdID0gYzsKKyAgICAgICAgcmV0YnVmW2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgfQogICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBhcmcpOwogICAgIHJldHVybiByZXR2YWw7CkBAIC0xMTIxLDcgKzExNTcsNyBAQAogICAgIGNoYXIqIHJldGJ1ZjsKICAgICBQeV9zc2l6ZV90IGksIGo7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInkqOmEyYl9oZXgiLCAmcGFyZykpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJjphMmJfaGV4IiwgYXNjaWlfYnVmZmVyX2NvbnZlcnRlciwgJnBhcmcpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBhcmdidWYgPSBwYXJnLmJ1ZjsKICAgICBhcmdsZW4gPSBwYXJnLmxlbjsKQEAgLTExOTksOCArMTIzNSw4IEBACiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJkYXRhIiwgImhlYWRlciIsIE5VTEx9OwogICAgIGludCBoZWFkZXIgPSAwOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dhcmdzLCAieSp8aSIsIGt3bGlzdCwgJnBkYXRhLAotICAgICAgICAgICZoZWFkZXIpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgIk8mfGk6YTJiX3FwIiwga3dsaXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzY2lpX2J1ZmZlcl9jb252ZXJ0ZXIsICZwZGF0YSwgJmhlYWRlcikpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGRhdGEgPSBwZGF0YS5idWY7CiAgICAgZGF0YWxlbiA9IHBkYXRhLmxlbjsKZGlmZiAtLWdpdCBhL01vZHVsZXMvYnoybW9kdWxlLmMgYi9Nb2R1bGVzL2J6Mm1vZHVsZS5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhNjcxZThkLi4wMDAwMDAwCi0tLSBhL01vZHVsZXMvYnoybW9kdWxlLmMKKysrIC9kZXYvbnVsbApAQCAtMSwyMTY5ICswLDAgQEAKLS8qCi0KLXB5dGhvbi1iejIgLSBweXRob24gYnoyIGxpYnJhcnkgaW50ZXJmYWNlCi0KLUNvcHlyaWdodCAoYykgMjAwMiAgR3VzdGF2byBOaWVtZXllciA8bmllbWV5ZXJAY29uZWN0aXZhLmNvbT4KLUNvcHlyaWdodCAoYykgMjAwMiAgUHl0aG9uIFNvZnR3YXJlIEZvdW5kYXRpb247IEFsbCBSaWdodHMgUmVzZXJ2ZWQKLQotKi8KLQotI2luY2x1ZGUgIlB5dGhvbi5oIgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0jaW5jbHVkZSA8YnpsaWIuaD4KLSNpbmNsdWRlICJzdHJ1Y3RtZW1iZXIuaCIKLQotI2lmZGVmIFdJVEhfVEhSRUFECi0jaW5jbHVkZSAicHl0aHJlYWQuaCIKLSNlbmRpZgotCi1zdGF0aWMgY2hhciBfX2F1dGhvcl9fW10gPQotIlRoZSBiejIgcHl0aG9uIG1vZHVsZSB3YXMgd3JpdHRlbiBieTpcblwKLVxuXAotICAgIEd1c3Rhdm8gTmllbWV5ZXIgPG5pZW1leWVyQGNvbmVjdGl2YS5jb20+XG5cCi0iOwotCi0vKiBPdXIgdmVyeSBvd24gb2ZmX3QtbGlrZSB0eXBlLCA2NC1iaXQgaWYgcG9zc2libGUgKi8KLS8qIGNvcGllZCBmcm9tIE9iamVjdHMvZmlsZW9iamVjdC5jICovCi0jaWYgIWRlZmluZWQoSEFWRV9MQVJHRUZJTEVfU1VQUE9SVCkKLXR5cGVkZWYgb2ZmX3QgUHlfb2ZmX3Q7Ci0jZWxpZiBTSVpFT0ZfT0ZGX1QgPj0gOAotdHlwZWRlZiBvZmZfdCBQeV9vZmZfdDsKLSNlbGlmIFNJWkVPRl9GUE9TX1QgPj0gOAotdHlwZWRlZiBmcG9zX3QgUHlfb2ZmX3Q7Ci0jZWxzZQotI2Vycm9yICJMYXJnZSBmaWxlIHN1cHBvcnQsIGJ1dCBuZWl0aGVyIG9mZl90IG5vciBmcG9zX3QgaXMgbGFyZ2UgZW5vdWdoLiIKLSNlbmRpZgotCi0jZGVmaW5lIEJVRih2KSBQeUJ5dGVzX0FTX1NUUklORyh2KQotCi0jZGVmaW5lIE1PREVfQ0xPU0VEICAgMAotI2RlZmluZSBNT0RFX1JFQUQgICAgIDEKLSNkZWZpbmUgTU9ERV9SRUFEX0VPRiAyCi0jZGVmaW5lIE1PREVfV1JJVEUgICAgMwotCi0jZGVmaW5lIEJaMkZpbGVPYmplY3RfQ2hlY2sodikgIChQeV9UWVBFKHYpID09ICZCWjJGaWxlX1R5cGUpCi0KLQotI2lmZGVmIEJaX0NPTkZJR19FUlJPUgotCi0jaWYgU0laRU9GX0xPTkcgPj0gOAotI2RlZmluZSBCWlNfVE9UQUxfT1VUKGJ6cykgXAotICAgICgoKGxvbmcpYnpzLT50b3RhbF9vdXRfaGkzMiA8PCAzMikgKyBienMtPnRvdGFsX291dF9sbzMyKQotI2VsaWYgU0laRU9GX0xPTkdfTE9ORyA+PSA4Ci0jZGVmaW5lIEJaU19UT1RBTF9PVVQoYnpzKSBcCi0gICAgKCgoUFlfTE9OR19MT05HKWJ6cy0+dG90YWxfb3V0X2hpMzIgPDwgMzIpICsgYnpzLT50b3RhbF9vdXRfbG8zMikKLSNlbHNlCi0jZGVmaW5lIEJaU19UT1RBTF9PVVQoYnpzKSBcCi0gICAgYnpzLT50b3RhbF9vdXRfbG8zMgotI2VuZGlmCi0KLSNlbHNlIC8qICEgQlpfQ09ORklHX0VSUk9SICovCi0KLSNkZWZpbmUgQloyX2J6UmVhZCBielJlYWQKLSNkZWZpbmUgQloyX2J6UmVhZE9wZW4gYnpSZWFkT3BlbgotI2RlZmluZSBCWjJfYnpSZWFkQ2xvc2UgYnpSZWFkQ2xvc2UKLSNkZWZpbmUgQloyX2J6V3JpdGUgYnpXcml0ZQotI2RlZmluZSBCWjJfYnpXcml0ZU9wZW4gYnpXcml0ZU9wZW4KLSNkZWZpbmUgQloyX2J6V3JpdGVDbG9zZSBieldyaXRlQ2xvc2UKLSNkZWZpbmUgQloyX2J6Q29tcHJlc3MgYnpDb21wcmVzcwotI2RlZmluZSBCWjJfYnpDb21wcmVzc0luaXQgYnpDb21wcmVzc0luaXQKLSNkZWZpbmUgQloyX2J6Q29tcHJlc3NFbmQgYnpDb21wcmVzc0VuZAotI2RlZmluZSBCWjJfYnpEZWNvbXByZXNzIGJ6RGVjb21wcmVzcwotI2RlZmluZSBCWjJfYnpEZWNvbXByZXNzSW5pdCBiekRlY29tcHJlc3NJbml0Ci0jZGVmaW5lIEJaMl9iekRlY29tcHJlc3NFbmQgYnpEZWNvbXByZXNzRW5kCi0KLSNkZWZpbmUgQlpTX1RPVEFMX09VVChienMpIGJ6cy0+dG90YWxfb3V0Ci0KLSNlbmRpZiAvKiAhIEJaX0NPTkZJR19FUlJPUiAqLwotCi0KLSNpZmRlZiBXSVRIX1RIUkVBRAotI2RlZmluZSBBQ1FVSVJFX0xPQ0sob2JqKSBkbyB7IFwKLSAgICBpZiAoIVB5VGhyZWFkX2FjcXVpcmVfbG9jayhvYmotPmxvY2ssIDApKSB7IFwKLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUyBcCi0gICAgICAgIFB5VGhyZWFkX2FjcXVpcmVfbG9jayhvYmotPmxvY2ssIDEpOyBcCi0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTIFwKLSAgICB9IH0gd2hpbGUoMCkKLSNkZWZpbmUgUkVMRUFTRV9MT0NLKG9iaikgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKG9iai0+bG9jaykKLSNlbHNlCi0jZGVmaW5lIEFDUVVJUkVfTE9DSyhvYmopCi0jZGVmaW5lIFJFTEVBU0VfTE9DSyhvYmopCi0jZW5kaWYKLQotLyogQml0cyBpbiBmX25ld2xpbmV0eXBlcyAqLwotI2RlZmluZSBORVdMSU5FX1VOS05PV04gMCAgICAgICAvKiBObyBuZXdsaW5lIHNlZW4sIHlldCAqLwotI2RlZmluZSBORVdMSU5FX0NSIDEgICAgICAgICAgICAvKiBcciBuZXdsaW5lIHNlZW4gKi8KLSNkZWZpbmUgTkVXTElORV9MRiAyICAgICAgICAgICAgLyogXG4gbmV3bGluZSBzZWVuICovCi0jZGVmaW5lIE5FV0xJTkVfQ1JMRiA0ICAgICAgICAgIC8qIFxyXG4gbmV3bGluZSBzZWVuICovCi0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogU3RydWN0dXJlIGRlZmluaXRpb25zLiAqLwotCi10eXBlZGVmIHN0cnVjdCB7Ci0gICAgUHlPYmplY3RfSEVBRAotICAgIEZJTEUgKnJhd2ZwOwotCi0gICAgY2hhciogZl9idWY7ICAgICAgICAgICAgICAgIC8qIEFsbG9jYXRlZCByZWFkYWhlYWQgYnVmZmVyICovCi0gICAgY2hhciogZl9idWZlbmQ7ICAgICAgICAgICAgIC8qIFBvaW50cyBhZnRlciBsYXN0IG9jY3VwaWVkIHBvc2l0aW9uICovCi0gICAgY2hhciogZl9idWZwdHI7ICAgICAgICAgICAgIC8qIEN1cnJlbnQgYnVmZmVyIHBvc2l0aW9uICovCi0KLSAgICBCWkZJTEUgKmZwOwotICAgIGludCBtb2RlOwotICAgIFB5X29mZl90IHBvczsKLSAgICBQeV9vZmZfdCBzaXplOwotI2lmZGVmIFdJVEhfVEhSRUFECi0gICAgUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2s7Ci0jZW5kaWYKLX0gQloyRmlsZU9iamVjdDsKLQotdHlwZWRlZiBzdHJ1Y3QgewotICAgIFB5T2JqZWN0X0hFQUQKLSAgICBiel9zdHJlYW0gYnpzOwotICAgIGludCBydW5uaW5nOwotI2lmZGVmIFdJVEhfVEhSRUFECi0gICAgUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2s7Ci0jZW5kaWYKLX0gQloyQ29tcE9iamVjdDsKLQotdHlwZWRlZiBzdHJ1Y3QgewotICAgIFB5T2JqZWN0X0hFQUQKLSAgICBiel9zdHJlYW0gYnpzOwotICAgIGludCBydW5uaW5nOwotICAgIFB5T2JqZWN0ICp1bnVzZWRfZGF0YTsKLSNpZmRlZiBXSVRIX1RIUkVBRAotICAgIFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrOwotI2VuZGlmCi19IEJaMkRlY29tcE9iamVjdDsKLQotLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCi0vKiBVdGlsaXR5IGZ1bmN0aW9ucy4gKi8KLQotLyogUmVmdXNlIHJlZ3VsYXIgSS9PIGlmIHRoZXJlJ3MgZGF0YSBpbiB0aGUgaXRlcmF0aW9uLWJ1ZmZlci4KLSAqIE1peGluZyB0aGVtIHdvdWxkIGNhdXNlIGRhdGEgdG8gYXJyaXZlIG91dCBvZiBvcmRlciwgYXMgdGhlIHJlYWQqCi0gKiBtZXRob2RzIGRvbid0IHVzZSB0aGUgaXRlcmF0aW9uIGJ1ZmZlci4gKi8KLXN0YXRpYyBpbnQKLWNoZWNrX2l0ZXJidWZmZXJlZChCWjJGaWxlT2JqZWN0ICpmKQotewotICAgIGlmIChmLT5mX2J1ZiAhPSBOVUxMICYmCi0gICAgICAgIChmLT5mX2J1ZmVuZCAtIGYtPmZfYnVmcHRyKSA+IDAgJiYKLSAgICAgICAgZi0+Zl9idWZbMF0gIT0gJ1wwJykgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICJNaXhpbmcgaXRlcmF0aW9uIGFuZCByZWFkIG1ldGhvZHMgd291bGQgbG9zZSBkYXRhIik7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyBpbnQKLVV0aWxfQ2F0Y2hCWjJFcnJvcihpbnQgYnplcnJvcikKLXsKLSAgICBpbnQgcmV0ID0gMDsKLSAgICBzd2l0Y2goYnplcnJvcikgewotICAgICAgICBjYXNlIEJaX09LOgotICAgICAgICBjYXNlIEJaX1NUUkVBTV9FTkQ6Ci0gICAgICAgICAgICBicmVhazsKLQotI2lmZGVmIEJaX0NPTkZJR19FUlJPUgotICAgICAgICBjYXNlIEJaX0NPTkZJR19FUlJPUjoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGhlIGJ6MiBsaWJyYXJ5IHdhcyBub3QgY29tcGlsZWQgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb3JyZWN0bHkiKTsKLSAgICAgICAgICAgIHJldCA9IDE7Ci0gICAgICAgICAgICBicmVhazsKLSNlbmRpZgotCi0gICAgICAgIGNhc2UgQlpfUEFSQU1fRVJST1I6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGhlIGJ6MiBsaWJyYXJ5IGhhcyByZWNlaXZlZCB3cm9uZyAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgInBhcmFtZXRlcnMiKTsKLSAgICAgICAgICAgIHJldCA9IDE7Ci0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICBjYXNlIEJaX01FTV9FUlJPUjoKLSAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgICAgICByZXQgPSAxOwotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgY2FzZSBCWl9EQVRBX0VSUk9SOgotICAgICAgICBjYXNlIEJaX0RBVEFfRVJST1JfTUFHSUM6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSU9FcnJvciwgImludmFsaWQgZGF0YSBzdHJlYW0iKTsKLSAgICAgICAgICAgIHJldCA9IDE7Ci0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICBjYXNlIEJaX0lPX0VSUk9SOgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0lPRXJyb3IsICJ1bmtub3duIElPIGVycm9yIik7Ci0gICAgICAgICAgICByZXQgPSAxOwotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgY2FzZSBCWl9VTkVYUEVDVEVEX0VPRjoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19FT0ZFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29tcHJlc3NlZCBmaWxlIGVuZGVkIGJlZm9yZSB0aGUgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2dpY2FsIGVuZC1vZi1zdHJlYW0gd2FzIGRldGVjdGVkIik7Ci0gICAgICAgICAgICByZXQgPSAxOwotICAgICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgY2FzZSBCWl9TRVFVRU5DRV9FUlJPUjoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIndyb25nIHNlcXVlbmNlIG9mIGJ6MiBsaWJyYXJ5ICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29tbWFuZHMgdXNlZCIpOwotICAgICAgICAgICAgcmV0ID0gMTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgIH0KLSAgICByZXR1cm4gcmV0OwotfQotCi0jaWYgQlVGU0laIDwgODE5MgotI2RlZmluZSBTTUFMTENIVU5LIDgxOTIKLSNlbHNlCi0jZGVmaW5lIFNNQUxMQ0hVTksgQlVGU0laCi0jZW5kaWYKLQotLyogVGhpcyBpcyBhIGhhY2tlZCB2ZXJzaW9uIG9mIFB5dGhvbidzIGZpbGVvYmplY3QuYzpuZXdfYnVmZmVyc2l6ZSgpLiAqLwotc3RhdGljIHNpemVfdAotVXRpbF9OZXdCdWZmZXJTaXplKHNpemVfdCBjdXJyZW50c2l6ZSkKLXsKLSAgICAvKiBFeHBhbmQgdGhlIGJ1ZmZlciBieSBhbiBhbW91bnQgcHJvcG9ydGlvbmFsIHRvIHRoZSBjdXJyZW50IHNpemUsCi0gICAgICAgZ2l2aW5nIHVzIGFtb3J0aXplZCBsaW5lYXItdGltZSBiZWhhdmlvci4gVXNlIGEgbGVzcy10aGFuLWRvdWJsZQotICAgICAgIGdyb3d0aCBmYWN0b3IgdG8gYXZvaWQgZXhjZXNzaXZlIGFsbG9jYXRpb24uICovCi0gICAgcmV0dXJuIGN1cnJlbnRzaXplICsgKGN1cnJlbnRzaXplID4+IDMpICsgNjsKLX0KLQotLyogVGhpcyBpcyBhIGhhY2tlZCB2ZXJzaW9uIG9mIFB5dGhvbidzIGZpbGVvYmplY3QuYzpnZXRfbGluZSgpLiAqLwotc3RhdGljIFB5T2JqZWN0ICoKLVV0aWxfR2V0TGluZShCWjJGaWxlT2JqZWN0ICpmLCBpbnQgbikKLXsKLSAgICBjaGFyIGM7Ci0gICAgY2hhciAqYnVmLCAqZW5kOwotICAgIHNpemVfdCB0b3RhbF92X3NpemU7ICAgICAgICAvKiB0b3RhbCAjIG9mIHNsb3RzIGluIGJ1ZmZlciAqLwotICAgIHNpemVfdCB1c2VkX3Zfc2l6ZTsgICAgICAgICAvKiAjIHVzZWQgc2xvdHMgaW4gYnVmZmVyICovCi0gICAgc2l6ZV90IGluY3JlbWVudDsgICAgICAgLyogYW1vdW50IHRvIGluY3JlbWVudCB0aGUgYnVmZmVyICovCi0gICAgUHlPYmplY3QgKnY7Ci0gICAgaW50IGJ6ZXJyb3I7Ci0gICAgaW50IGJ5dGVzX3JlYWQ7Ci0KLSAgICB0b3RhbF92X3NpemUgPSBuID4gMCA/IG4gOiAxMDA7Ci0gICAgdiA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoKGNoYXIgKilOVUxMLCB0b3RhbF92X3NpemUpOwotICAgIGlmICh2ID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgYnVmID0gQlVGKHYpOwotICAgIGVuZCA9IGJ1ZiArIHRvdGFsX3Zfc2l6ZTsKLQotICAgIGZvciAoOzspIHsKLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBkbyB7Ci0gICAgICAgICAgICBieXRlc19yZWFkID0gQloyX2J6UmVhZCgmYnplcnJvciwgZi0+ZnAsICZjLCAxKTsKLSAgICAgICAgICAgIGYtPnBvcysrOwotICAgICAgICAgICAgaWYgKGJ5dGVzX3JlYWQgPT0gMCkKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICpidWYrKyA9IGM7Ci0gICAgICAgIH0gd2hpbGUgKGJ6ZXJyb3IgPT0gQlpfT0sgJiYgYyAhPSAnXG4nICYmIGJ1ZiAhPSBlbmQpOwotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgICAgICBpZiAoYnplcnJvciA9PSBCWl9TVFJFQU1fRU5EKSB7Ci0gICAgICAgICAgICBmLT5zaXplID0gZi0+cG9zOwotICAgICAgICAgICAgZi0+bW9kZSA9IE1PREVfUkVBRF9FT0Y7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfSBlbHNlIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgICAgICBQeV9ERUNSRUYodik7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBpZiAoYyA9PSAnXG4nKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIC8qIE11c3QgYmUgYmVjYXVzZSBidWYgPT0gZW5kICovCi0gICAgICAgIGlmIChuID4gMCkKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB1c2VkX3Zfc2l6ZSA9IHRvdGFsX3Zfc2l6ZTsKLSAgICAgICAgaW5jcmVtZW50ID0gdG90YWxfdl9zaXplID4+IDI7IC8qIG1pbGQgZXhwb25lbnRpYWwgZ3Jvd3RoICovCi0gICAgICAgIHRvdGFsX3Zfc2l6ZSArPSBpbmNyZW1lbnQ7Ci0gICAgICAgIGlmICh0b3RhbF92X3NpemUgPiBJTlRfTUFYKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKLSAgICAgICAgICAgICAgICAibGluZSBpcyBsb25nZXIgdGhhbiBhIFB5dGhvbiBzdHJpbmcgY2FuIGhvbGQiKTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRih2KTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnYsIHRvdGFsX3Zfc2l6ZSkgPCAwKSB7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBidWYgPSBCVUYodikgKyB1c2VkX3Zfc2l6ZTsKLSAgICAgICAgZW5kID0gQlVGKHYpICsgdG90YWxfdl9zaXplOwotICAgIH0KLQotICAgIHVzZWRfdl9zaXplID0gYnVmIC0gQlVGKHYpOwotICAgIGlmICh1c2VkX3Zfc2l6ZSAhPSB0b3RhbF92X3NpemUpIHsKLSAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmdiwgdXNlZF92X3NpemUpIDwgMCkgewotICAgICAgICAgICAgdiA9IE5VTEw7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgcmV0dXJuIHY7Ci19Ci0KLS8qIFRoaXMgaXMgYSBoYWNrZWQgdmVyc2lvbiBvZiBQeXRob24ncyBmaWxlb2JqZWN0LmM6ZHJvcF9yZWFkYWhlYWQoKS4gKi8KLXN0YXRpYyB2b2lkCi1VdGlsX0Ryb3BSZWFkQWhlYWQoQloyRmlsZU9iamVjdCAqZikKLXsKLSAgICBpZiAoZi0+Zl9idWYgIT0gTlVMTCkgewotICAgICAgICBQeU1lbV9GcmVlKGYtPmZfYnVmKTsKLSAgICAgICAgZi0+Zl9idWYgPSBOVUxMOwotICAgIH0KLX0KLQotLyogVGhpcyBpcyBhIGhhY2tlZCB2ZXJzaW9uIG9mIFB5dGhvbidzIGZpbGVvYmplY3QuYzpyZWFkYWhlYWQoKS4gKi8KLXN0YXRpYyBpbnQKLVV0aWxfUmVhZEFoZWFkKEJaMkZpbGVPYmplY3QgKmYsIGludCBidWZzaXplKQotewotICAgIGludCBjaHVua3NpemU7Ci0gICAgaW50IGJ6ZXJyb3I7Ci0KLSAgICBpZiAoZi0+Zl9idWYgIT0gTlVMTCkgewotICAgICAgICBpZigoZi0+Zl9idWZlbmQgLSBmLT5mX2J1ZnB0cikgPj0gMSkKLSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBVdGlsX0Ryb3BSZWFkQWhlYWQoZik7Ci0gICAgfQotICAgIGlmIChmLT5tb2RlID09IE1PREVfUkVBRF9FT0YpIHsKLSAgICAgICAgZi0+Zl9idWZwdHIgPSBmLT5mX2J1ZjsKLSAgICAgICAgZi0+Zl9idWZlbmQgPSBmLT5mX2J1ZjsKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotICAgIGlmICgoZi0+Zl9idWYgPSBQeU1lbV9NYWxsb2MoYnVmc2l6ZSkpID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgY2h1bmtzaXplID0gQloyX2J6UmVhZCgmYnplcnJvciwgZi0+ZnAsIGYtPmZfYnVmLCBidWZzaXplKTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgIGYtPnBvcyArPSBjaHVua3NpemU7Ci0gICAgaWYgKGJ6ZXJyb3IgPT0gQlpfU1RSRUFNX0VORCkgewotICAgICAgICBmLT5zaXplID0gZi0+cG9zOwotICAgICAgICBmLT5tb2RlID0gTU9ERV9SRUFEX0VPRjsKLSAgICB9IGVsc2UgaWYgKGJ6ZXJyb3IgIT0gQlpfT0spIHsKLSAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICBVdGlsX0Ryb3BSZWFkQWhlYWQoZik7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgZi0+Zl9idWZwdHIgPSBmLT5mX2J1ZjsKLSAgICBmLT5mX2J1ZmVuZCA9IGYtPmZfYnVmICsgY2h1bmtzaXplOwotICAgIHJldHVybiAwOwotfQotCi0vKiBUaGlzIGlzIGEgaGFja2VkIHZlcnNpb24gb2YgUHl0aG9uJ3MKLSAqIGZpbGVvYmplY3QuYzpyZWFkYWhlYWRfZ2V0X2xpbmVfc2tpcCgpLiAqLwotc3RhdGljIFB5Qnl0ZXNPYmplY3QgKgotVXRpbF9SZWFkQWhlYWRHZXRMaW5lU2tpcChCWjJGaWxlT2JqZWN0ICpmLCBpbnQgc2tpcCwgaW50IGJ1ZnNpemUpCi17Ci0gICAgUHlCeXRlc09iamVjdCogczsKLSAgICBjaGFyICpidWZwdHI7Ci0gICAgY2hhciAqYnVmOwotICAgIGludCBsZW47Ci0KLSAgICBpZiAoZi0+Zl9idWYgPT0gTlVMTCkKLSAgICAgICAgaWYgKFV0aWxfUmVhZEFoZWFkKGYsIGJ1ZnNpemUpIDwgMCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgbGVuID0gZi0+Zl9idWZlbmQgLSBmLT5mX2J1ZnB0cjsKLSAgICBpZiAobGVuID09IDApCi0gICAgICAgIHJldHVybiAoUHlCeXRlc09iamVjdCAqKQotICAgICAgICAgICAgUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBza2lwKTsKLSAgICBidWZwdHIgPSBtZW1jaHIoZi0+Zl9idWZwdHIsICdcbicsIGxlbik7Ci0gICAgaWYgKGJ1ZnB0ciAhPSBOVUxMKSB7Ci0gICAgICAgIGJ1ZnB0cisrOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBDb3VudCB0aGUgJ1xuJyAqLwotICAgICAgICBsZW4gPSBidWZwdHIgLSBmLT5mX2J1ZnB0cjsKLSAgICAgICAgcyA9IChQeUJ5dGVzT2JqZWN0ICopCi0gICAgICAgICAgICBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIHNraXArbGVuKTsKLSAgICAgICAgaWYgKHMgPT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBtZW1jcHkoUHlCeXRlc19BU19TVFJJTkcocykrc2tpcCwgZi0+Zl9idWZwdHIsIGxlbik7Ci0gICAgICAgIGYtPmZfYnVmcHRyID0gYnVmcHRyOwotICAgICAgICBpZiAoYnVmcHRyID09IGYtPmZfYnVmZW5kKQotICAgICAgICAgICAgVXRpbF9Ecm9wUmVhZEFoZWFkKGYpOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGJ1ZnB0ciA9IGYtPmZfYnVmcHRyOwotICAgICAgICBidWYgPSBmLT5mX2J1ZjsKLSAgICAgICAgZi0+Zl9idWYgPSBOVUxMOyAgICAgICAgICAgICAgICAvKiBGb3JjZSBuZXcgcmVhZGFoZWFkIGJ1ZmZlciAqLwotICAgICAgICBzID0gVXRpbF9SZWFkQWhlYWRHZXRMaW5lU2tpcChmLCBza2lwK2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmc2l6ZSArIChidWZzaXplPj4yKSk7Ci0gICAgICAgIGlmIChzID09IE5VTEwpIHsKLSAgICAgICAgICAgIFB5TWVtX0ZyZWUoYnVmKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIG1lbWNweShQeUJ5dGVzX0FTX1NUUklORyhzKStza2lwLCBidWZwdHIsIGxlbik7Ci0gICAgICAgIFB5TWVtX0ZyZWUoYnVmKTsKLSAgICB9Ci0gICAgcmV0dXJuIHM7Ci19Ci0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogTWV0aG9kcyBvZiBCWjJGaWxlLiAqLwotCi1QeURvY19TVFJWQVIoQloyRmlsZV9yZWFkX19kb2NfXywKLSJyZWFkKFtzaXplXSkgLT4gc3RyaW5nXG5cCi1cblwKLVJlYWQgYXQgbW9zdCBzaXplIHVuY29tcHJlc3NlZCBieXRlcywgcmV0dXJuZWQgYXMgYSBzdHJpbmcuIElmIHRoZSBzaXplXG5cCi1hcmd1bWVudCBpcyBuZWdhdGl2ZSBvciBvbWl0dGVkLCByZWFkIHVudGlsIEVPRiBpcyByZWFjaGVkLlxuXAotIik7Ci0KLS8qIFRoaXMgaXMgYSBoYWNrZWQgdmVyc2lvbiBvZiBQeXRob24ncyBmaWxlb2JqZWN0LmM6ZmlsZV9yZWFkKCkuICovCi1zdGF0aWMgUHlPYmplY3QgKgotQloyRmlsZV9yZWFkKEJaMkZpbGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQotewotICAgIGxvbmcgYnl0ZXNyZXF1ZXN0ZWQgPSAtMTsKLSAgICBzaXplX3QgYnl0ZXNyZWFkLCBidWZmZXJzaXplLCBjaHVua3NpemU7Ci0gICAgaW50IGJ6ZXJyb3I7Ci0gICAgUHlPYmplY3QgKnJldCA9IE5VTEw7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxsOnJlYWQiLCAmYnl0ZXNyZXF1ZXN0ZWQpKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKLSAgICBzd2l0Y2ggKHNlbGYtPm1vZGUpIHsKLSAgICAgICAgY2FzZSBNT0RFX1JFQUQ6Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBNT0RFX1JFQURfRU9GOgotICAgICAgICAgICAgcmV0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgiIiwgMCk7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgIGNhc2UgTU9ERV9DTE9TRUQ6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiSS9PIG9wZXJhdGlvbiBvbiBjbG9zZWQgZmlsZSIpOwotICAgICAgICAgICAgZ290byBjbGVhbnVwOwotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0lPRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgImZpbGUgaXMgbm90IHJlYWR5IGZvciByZWFkaW5nIik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgfQotCi0gICAgLyogcmVmdXNlIHRvIG1peCB3aXRoIGYubmV4dCgpICovCi0gICAgaWYgKGNoZWNrX2l0ZXJidWZmZXJlZChzZWxmKSkKLSAgICAgICAgZ290byBjbGVhbnVwOwotCi0gICAgaWYgKGJ5dGVzcmVxdWVzdGVkIDwgMCkKLSAgICAgICAgYnVmZmVyc2l6ZSA9IFV0aWxfTmV3QnVmZmVyU2l6ZSgoc2l6ZV90KTApOwotICAgIGVsc2UKLSAgICAgICAgYnVmZmVyc2l6ZSA9IGJ5dGVzcmVxdWVzdGVkOwotICAgIGlmIChidWZmZXJzaXplID4gSU5UX01BWCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJyZXF1ZXN0ZWQgbnVtYmVyIG9mIGJ5dGVzIGlzICIKLSAgICAgICAgICAgICAgICAgICAgICAgICJtb3JlIHRoYW4gYSBQeXRob24gc3RyaW5nIGNhbiBob2xkIik7Ci0gICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICB9Ci0gICAgcmV0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgoY2hhciAqKU5VTEwsIGJ1ZmZlcnNpemUpOwotICAgIGlmIChyZXQgPT0gTlVMTCB8fCBidWZmZXJzaXplID09IDApCi0gICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICBieXRlc3JlYWQgPSAwOwotCi0gICAgZm9yICg7OykgewotICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIGNodW5rc2l6ZSA9IEJaMl9ielJlYWQoJmJ6ZXJyb3IsIHNlbGYtPmZwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJVRihyZXQpK2J5dGVzcmVhZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXJzaXplLWJ5dGVzcmVhZCk7Ci0gICAgICAgIHNlbGYtPnBvcyArPSBjaHVua3NpemU7Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgICAgIGJ5dGVzcmVhZCArPSBjaHVua3NpemU7Ci0gICAgICAgIGlmIChiemVycm9yID09IEJaX1NUUkVBTV9FTkQpIHsKLSAgICAgICAgICAgIHNlbGYtPnNpemUgPSBzZWxmLT5wb3M7Ci0gICAgICAgICAgICBzZWxmLT5tb2RlID0gTU9ERV9SRUFEX0VPRjsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9IGVsc2UgaWYgKGJ6ZXJyb3IgIT0gQlpfT0spIHsKLSAgICAgICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXQpOwotICAgICAgICAgICAgcmV0ID0gTlVMTDsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICAgICAgfQotICAgICAgICBpZiAoYnl0ZXNyZXF1ZXN0ZWQgPCAwKSB7Ci0gICAgICAgICAgICBidWZmZXJzaXplID0gVXRpbF9OZXdCdWZmZXJTaXplKGJ1ZmZlcnNpemUpOwotICAgICAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmV0LCBidWZmZXJzaXplKSA8IDApIHsKLSAgICAgICAgICAgICAgICByZXQgPSBOVUxMOwotICAgICAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgfQotICAgIGlmIChieXRlc3JlYWQgIT0gYnVmZmVyc2l6ZSkgewotICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZyZXQsIGJ5dGVzcmVhZCkgPCAwKSB7Ci0gICAgICAgICAgICByZXQgPSBOVUxMOwotICAgICAgICB9Ci0gICAgfQotCi1jbGVhbnVwOgotICAgIFJFTEVBU0VfTE9DSyhzZWxmKTsKLSAgICByZXR1cm4gcmV0OwotfQotCi1QeURvY19TVFJWQVIoQloyRmlsZV9yZWFkbGluZV9fZG9jX18sCi0icmVhZGxpbmUoW3NpemVdKSAtPiBzdHJpbmdcblwKLVxuXAotUmV0dXJuIHRoZSBuZXh0IGxpbmUgZnJvbSB0aGUgZmlsZSwgYXMgYSBzdHJpbmcsIHJldGFpbmluZyBuZXdsaW5lLlxuXAotQSBub24tbmVnYXRpdmUgc2l6ZSBhcmd1bWVudCB3aWxsIGxpbWl0IHRoZSBtYXhpbXVtIG51bWJlciBvZiBieXRlcyB0b1xuXAotcmV0dXJuIChhbiBpbmNvbXBsZXRlIGxpbmUgbWF5IGJlIHJldHVybmVkIHRoZW4pLiBSZXR1cm4gYW4gZW1wdHlcblwKLXN0cmluZyBhdCBFT0YuXG5cCi0iKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfcmVhZGxpbmUoQloyRmlsZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCi17Ci0gICAgUHlPYmplY3QgKnJldCA9IE5VTEw7Ci0gICAgaW50IHNpemVoaW50ID0gLTE7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxpOnJlYWRsaW5lIiwgJnNpemVoaW50KSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICBBQ1FVSVJFX0xPQ0soc2VsZik7Ci0gICAgc3dpdGNoIChzZWxmLT5tb2RlKSB7Ci0gICAgICAgIGNhc2UgTU9ERV9SRUFEOgotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgTU9ERV9SRUFEX0VPRjoKLSAgICAgICAgICAgIHJldCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoIiIsIDApOwotICAgICAgICAgICAgZ290byBjbGVhbnVwOwotICAgICAgICBjYXNlIE1PREVfQ0xPU0VEOgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIkkvTyBvcGVyYXRpb24gb24gY2xvc2VkIGZpbGUiKTsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmaWxlIGlzIG5vdCByZWFkeSBmb3IgcmVhZGluZyIpOwotICAgICAgICAgICAgZ290byBjbGVhbnVwOwotICAgIH0KLQotICAgIC8qIHJlZnVzZSB0byBtaXggd2l0aCBmLm5leHQoKSAqLwotICAgIGlmIChjaGVja19pdGVyYnVmZmVyZWQoc2VsZikpCi0gICAgICAgIGdvdG8gY2xlYW51cDsKLQotICAgIGlmIChzaXplaGludCA9PSAwKQotICAgICAgICByZXQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKCIiLCAwKTsKLSAgICBlbHNlCi0gICAgICAgIHJldCA9IFV0aWxfR2V0TGluZShzZWxmLCAoc2l6ZWhpbnQgPCAwKSA/IDAgOiBzaXplaGludCk7Ci0KLWNsZWFudXA6Ci0gICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgIHJldHVybiByZXQ7Ci19Ci0KLVB5RG9jX1NUUlZBUihCWjJGaWxlX3JlYWRsaW5lc19fZG9jX18sCi0icmVhZGxpbmVzKFtzaXplXSkgLT4gbGlzdFxuXAotXG5cCi1DYWxsIHJlYWRsaW5lKCkgcmVwZWF0ZWRseSBhbmQgcmV0dXJuIGEgbGlzdCBvZiBsaW5lcyByZWFkLlxuXAotVGhlIG9wdGlvbmFsIHNpemUgYXJndW1lbnQsIGlmIGdpdmVuLCBpcyBhbiBhcHByb3hpbWF0ZSBib3VuZCBvbiB0aGVcblwKLXRvdGFsIG51bWJlciBvZiBieXRlcyBpbiB0aGUgbGluZXMgcmV0dXJuZWQuXG5cCi0iKTsKLQotLyogVGhpcyBpcyBhIGhhY2tlZCB2ZXJzaW9uIG9mIFB5dGhvbidzIGZpbGVvYmplY3QuYzpmaWxlX3JlYWRsaW5lcygpLiAqLwotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfcmVhZGxpbmVzKEJaMkZpbGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQotewotICAgIGxvbmcgc2l6ZWhpbnQgPSAwOwotICAgIFB5T2JqZWN0ICpsaXN0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqbGluZTsKLSAgICBjaGFyIHNtYWxsX2J1ZmZlcltTTUFMTENIVU5LXTsKLSAgICBjaGFyICpidWZmZXIgPSBzbWFsbF9idWZmZXI7Ci0gICAgc2l6ZV90IGJ1ZmZlcnNpemUgPSBTTUFMTENIVU5LOwotICAgIFB5T2JqZWN0ICpiaWdfYnVmZmVyID0gTlVMTDsKLSAgICBzaXplX3QgbmZpbGxlZCA9IDA7Ci0gICAgc2l6ZV90IG5yZWFkOwotICAgIHNpemVfdCB0b3RhbHJlYWQgPSAwOwotICAgIGNoYXIgKnAsICpxLCAqZW5kOwotICAgIGludCBlcnI7Ci0gICAgaW50IHNob3J0cmVhZCA9IDA7Ci0gICAgaW50IGJ6ZXJyb3I7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxsOnJlYWRsaW5lcyIsICZzaXplaGludCkpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgQUNRVUlSRV9MT0NLKHNlbGYpOwotICAgIHN3aXRjaCAoc2VsZi0+bW9kZSkgewotICAgICAgICBjYXNlIE1PREVfUkVBRDoKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIE1PREVfUkVBRF9FT0Y6Ci0gICAgICAgICAgICBsaXN0ID0gUHlMaXN0X05ldygwKTsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICAgICAgY2FzZSBNT0RFX0NMT1NFRDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJJL08gb3BlcmF0aW9uIG9uIGNsb3NlZCBmaWxlIik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSU9FcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZmlsZSBpcyBub3QgcmVhZHkgZm9yIHJlYWRpbmciKTsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICB9Ci0KLSAgICAvKiByZWZ1c2UgdG8gbWl4IHdpdGggZi5uZXh0KCkgKi8KLSAgICBpZiAoY2hlY2tfaXRlcmJ1ZmZlcmVkKHNlbGYpKQotICAgICAgICBnb3RvIGNsZWFudXA7Ci0KLSAgICBpZiAoKGxpc3QgPSBQeUxpc3RfTmV3KDApKSA9PSBOVUxMKQotICAgICAgICBnb3RvIGNsZWFudXA7Ci0KLSAgICBmb3IgKDs7KSB7Ci0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgbnJlYWQgPSBCWjJfYnpSZWFkKCZiemVycm9yLCBzZWxmLT5mcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZmZlcituZmlsbGVkLCBidWZmZXJzaXplLW5maWxsZWQpOwotICAgICAgICBzZWxmLT5wb3MgKz0gbnJlYWQ7Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgICAgIGlmIChiemVycm9yID09IEJaX1NUUkVBTV9FTkQpIHsKLSAgICAgICAgICAgIHNlbGYtPnNpemUgPSBzZWxmLT5wb3M7Ci0gICAgICAgICAgICBzZWxmLT5tb2RlID0gTU9ERV9SRUFEX0VPRjsKLSAgICAgICAgICAgIGlmIChucmVhZCA9PSAwKSB7Ci0gICAgICAgICAgICAgICAgc2l6ZWhpbnQgPSAwOwotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgc2hvcnRyZWFkID0gMTsKLSAgICAgICAgfSBlbHNlIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgICAgZXJyb3I6Ci0gICAgICAgICAgICBQeV9ERUNSRUYobGlzdCk7Ci0gICAgICAgICAgICBsaXN0ID0gTlVMTDsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICAgICAgfQotICAgICAgICB0b3RhbHJlYWQgKz0gbnJlYWQ7Ci0gICAgICAgIHAgPSBtZW1jaHIoYnVmZmVyK25maWxsZWQsICdcbicsIG5yZWFkKTsKLSAgICAgICAgaWYgKCFzaG9ydHJlYWQgJiYgcCA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAvKiBOZWVkIGEgbGFyZ2VyIGJ1ZmZlciB0byBmaXQgdGhpcyBsaW5lICovCi0gICAgICAgICAgICBuZmlsbGVkICs9IG5yZWFkOwotICAgICAgICAgICAgYnVmZmVyc2l6ZSAqPSAyOwotICAgICAgICAgICAgaWYgKGJ1ZmZlcnNpemUgPiBJTlRfTUFYKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCi0gICAgICAgICAgICAgICAgImxpbmUgaXMgbG9uZ2VyIHRoYW4gYSBQeXRob24gc3RyaW5nIGNhbiBob2xkIik7Ci0gICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChiaWdfYnVmZmVyID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICAvKiBDcmVhdGUgdGhlIGJpZyBidWZmZXIgKi8KLSAgICAgICAgICAgICAgICBiaWdfYnVmZmVyID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgKLSAgICAgICAgICAgICAgICAgICAgTlVMTCwgYnVmZmVyc2l6ZSk7Ci0gICAgICAgICAgICAgICAgaWYgKGJpZ19idWZmZXIgPT0gTlVMTCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgICAgICBidWZmZXIgPSBQeUJ5dGVzX0FTX1NUUklORyhiaWdfYnVmZmVyKTsKLSAgICAgICAgICAgICAgICBtZW1jcHkoYnVmZmVyLCBzbWFsbF9idWZmZXIsIG5maWxsZWQpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgLyogR3JvdyB0aGUgYmlnIGJ1ZmZlciAqLwotICAgICAgICAgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJmJpZ19idWZmZXIsIGJ1ZmZlcnNpemUpIDwgMCl7Ci0gICAgICAgICAgICAgICAgICAgIGJpZ19idWZmZXIgPSBOVUxMOwotICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBidWZmZXIgPSBQeUJ5dGVzX0FTX1NUUklORyhiaWdfYnVmZmVyKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICB9Ci0gICAgICAgIGVuZCA9IGJ1ZmZlcituZmlsbGVkK25yZWFkOwotICAgICAgICBxID0gYnVmZmVyOwotICAgICAgICB3aGlsZSAocCAhPSBOVUxMKSB7Ci0gICAgICAgICAgICAvKiBQcm9jZXNzIGNvbXBsZXRlIGxpbmVzICovCi0gICAgICAgICAgICBwKys7Ci0gICAgICAgICAgICBsaW5lID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShxLCBwLXEpOwotICAgICAgICAgICAgaWYgKGxpbmUgPT0gTlVMTCkKLSAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgZXJyID0gUHlMaXN0X0FwcGVuZChsaXN0LCBsaW5lKTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihsaW5lKTsKLSAgICAgICAgICAgIGlmIChlcnIgIT0gMCkKLSAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgcSA9IHA7Ci0gICAgICAgICAgICBwID0gbWVtY2hyKHEsICdcbicsIGVuZC1xKTsKLSAgICAgICAgfQotICAgICAgICAvKiBNb3ZlIHRoZSByZW1haW5pbmcgaW5jb21wbGV0ZSBsaW5lIHRvIHRoZSBzdGFydCAqLwotICAgICAgICBuZmlsbGVkID0gZW5kLXE7Ci0gICAgICAgIG1lbW1vdmUoYnVmZmVyLCBxLCBuZmlsbGVkKTsKLSAgICAgICAgaWYgKHNpemVoaW50ID4gMCkKLSAgICAgICAgICAgIGlmICh0b3RhbHJlYWQgPj0gKHNpemVfdClzaXplaGludCkKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgaWYgKHNob3J0cmVhZCkgewotICAgICAgICAgICAgc2l6ZWhpbnQgPSAwOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgaWYgKG5maWxsZWQgIT0gMCkgewotICAgICAgICAvKiBQYXJ0aWFsIGxhc3QgbGluZSAqLwotICAgICAgICBsaW5lID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShidWZmZXIsIG5maWxsZWQpOwotICAgICAgICBpZiAobGluZSA9PSBOVUxMKQotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgaWYgKHNpemVoaW50ID4gMCkgewotICAgICAgICAgICAgLyogTmVlZCB0byBjb21wbGV0ZSB0aGUgbGFzdCBsaW5lICovCi0gICAgICAgICAgICBQeU9iamVjdCAqcmVzdCA9IFV0aWxfR2V0TGluZShzZWxmLCAwKTsKLSAgICAgICAgICAgIGlmIChyZXN0ID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBQeV9ERUNSRUYobGluZSk7Ci0gICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFB5Qnl0ZXNfQ29uY2F0KCZsaW5lLCByZXN0KTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXN0KTsKLSAgICAgICAgICAgIGlmIChsaW5lID09IE5VTEwpCi0gICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgfQotICAgICAgICBlcnIgPSBQeUxpc3RfQXBwZW5kKGxpc3QsIGxpbmUpOwotICAgICAgICBQeV9ERUNSRUYobGluZSk7Ci0gICAgICAgIGlmIChlcnIgIT0gMCkKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotCi0gIGNsZWFudXA6Ci0gICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgIGlmIChiaWdfYnVmZmVyKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihiaWdfYnVmZmVyKTsKLSAgICB9Ci0gICAgcmV0dXJuIGxpc3Q7Ci19Ci0KLVB5RG9jX1NUUlZBUihCWjJGaWxlX3dyaXRlX19kb2NfXywKLSJ3cml0ZShkYXRhKSAtPiBOb25lXG5cCi1cblwKLVdyaXRlIHRoZSAnZGF0YScgc3RyaW5nIHRvIGZpbGUuIE5vdGUgdGhhdCBkdWUgdG8gYnVmZmVyaW5nLCBjbG9zZSgpIG1heVxuXAotYmUgbmVlZGVkIGJlZm9yZSB0aGUgZmlsZSBvbiBkaXNrIHJlZmxlY3RzIHRoZSBkYXRhIHdyaXR0ZW4uXG5cCi0iKTsKLQotLyogVGhpcyBpcyBhIGhhY2tlZCB2ZXJzaW9uIG9mIFB5dGhvbidzIGZpbGVvYmplY3QuYzpmaWxlX3dyaXRlKCkuICovCi1zdGF0aWMgUHlPYmplY3QgKgotQloyRmlsZV93cml0ZShCWjJGaWxlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBQeU9iamVjdCAqcmV0ID0gTlVMTDsKLSAgICBQeV9idWZmZXIgcGJ1ZjsKLSAgICBjaGFyICpidWY7Ci0gICAgaW50IGxlbjsKLSAgICBpbnQgYnplcnJvcjsKLQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieSo6d3JpdGUiLCAmcGJ1ZikpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGJ1ZiA9IHBidWYuYnVmOwotICAgIGxlbiA9IHBidWYubGVuOwotCi0gICAgQUNRVUlSRV9MT0NLKHNlbGYpOwotICAgIHN3aXRjaCAoc2VsZi0+bW9kZSkgewotICAgICAgICBjYXNlIE1PREVfV1JJVEU6Ci0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICBjYXNlIE1PREVfQ0xPU0VEOgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIkkvTyBvcGVyYXRpb24gb24gY2xvc2VkIGZpbGUiKTsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLQotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0lPRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgImZpbGUgaXMgbm90IHJlYWR5IGZvciB3cml0aW5nIik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgfQotCi0gICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgIEJaMl9ieldyaXRlICgmYnplcnJvciwgc2VsZi0+ZnAsIGJ1ZiwgbGVuKTsKLSAgICBzZWxmLT5wb3MgKz0gbGVuOwotICAgIFB5X0VORF9BTExPV19USFJFQURTCi0KLSAgICBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICB9Ci0KLSAgICBQeV9JTkNSRUYoUHlfTm9uZSk7Ci0gICAgcmV0ID0gUHlfTm9uZTsKLQotY2xlYW51cDoKLSAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwYnVmKTsKLSAgICBSRUxFQVNFX0xPQ0soc2VsZik7Ci0gICAgcmV0dXJuIHJldDsKLX0KLQotUHlEb2NfU1RSVkFSKEJaMkZpbGVfd3JpdGVsaW5lc19fZG9jX18sCi0id3JpdGVsaW5lcyhzZXF1ZW5jZV9vZl9zdHJpbmdzKSAtPiBOb25lXG5cCi1cblwKLVdyaXRlIHRoZSBzZXF1ZW5jZSBvZiBzdHJpbmdzIHRvIHRoZSBmaWxlLiBOb3RlIHRoYXQgbmV3bGluZXMgYXJlIG5vdFxuXAotYWRkZWQuIFRoZSBzZXF1ZW5jZSBjYW4gYmUgYW55IGl0ZXJhYmxlIG9iamVjdCBwcm9kdWNpbmcgc3RyaW5ncy4gVGhpcyBpc1xuXAotZXF1aXZhbGVudCB0byBjYWxsaW5nIHdyaXRlKCkgZm9yIGVhY2ggc3RyaW5nLlxuXAotIik7Ci0KLS8qIFRoaXMgaXMgYSBoYWNrZWQgdmVyc2lvbiBvZiBQeXRob24ncyBmaWxlb2JqZWN0LmM6ZmlsZV93cml0ZWxpbmVzKCkuICovCi1zdGF0aWMgUHlPYmplY3QgKgotQloyRmlsZV93cml0ZWxpbmVzKEJaMkZpbGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpzZXEpCi17Ci0jZGVmaW5lIENIVU5LU0laRSAxMDAwCi0gICAgUHlPYmplY3QgKmxpc3QgPSBOVUxMOwotICAgIFB5T2JqZWN0ICppdGVyID0gTlVMTDsKLSAgICBQeU9iamVjdCAqcmV0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqbGluZTsKLSAgICBpbnQgaSwgaiwgaW5kZXgsIGxlbiwgaXNsaXN0OwotICAgIGludCBiemVycm9yOwotCi0gICAgQUNRVUlSRV9MT0NLKHNlbGYpOwotICAgIHN3aXRjaCAoc2VsZi0+bW9kZSkgewotICAgICAgICBjYXNlIE1PREVfV1JJVEU6Ci0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICBjYXNlIE1PREVfQ0xPU0VEOgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIkkvTyBvcGVyYXRpb24gb24gY2xvc2VkIGZpbGUiKTsKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0KLSAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JT0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmaWxlIGlzIG5vdCByZWFkeSBmb3Igd3JpdGluZyIpOwotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSAgICBpc2xpc3QgPSBQeUxpc3RfQ2hlY2soc2VxKTsKLSAgICBpZiAgKCFpc2xpc3QpIHsKLSAgICAgICAgaXRlciA9IFB5T2JqZWN0X0dldEl0ZXIoc2VxKTsKLSAgICAgICAgaWYgKGl0ZXIgPT0gTlVMTCkgewotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAid3JpdGVsaW5lcygpIHJlcXVpcmVzIGFuIGl0ZXJhYmxlIGFyZ3VtZW50Iik7Ci0gICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICB9Ci0gICAgICAgIGxpc3QgPSBQeUxpc3RfTmV3KENIVU5LU0laRSk7Ci0gICAgICAgIGlmIChsaXN0ID09IE5VTEwpCi0gICAgICAgICAgICBnb3RvIGVycm9yOwotICAgIH0KLQotICAgIC8qIFN0cmF0ZWd5OiBzbHVycCBDSFVOS1NJWkUgbGluZXMgaW50byBhIHByaXZhdGUgbGlzdCwKLSAgICAgICBjaGVja2luZyB0aGF0IHRoZXkgYXJlIGFsbCBzdHJpbmdzLCB0aGVuIHdyaXRlIHRoYXQgbGlzdAotICAgICAgIHdpdGhvdXQgaG9sZGluZyB0aGUgaW50ZXJwcmV0ZXIgbG9jaywgdGhlbiBjb21lIGJhY2sgZm9yIG1vcmUuICovCi0gICAgZm9yIChpbmRleCA9IDA7IDsgaW5kZXggKz0gQ0hVTktTSVpFKSB7Ci0gICAgICAgIGlmIChpc2xpc3QpIHsKLSAgICAgICAgICAgIFB5X1hERUNSRUYobGlzdCk7Ci0gICAgICAgICAgICBsaXN0ID0gUHlMaXN0X0dldFNsaWNlKHNlcSwgaW5kZXgsIGluZGV4K0NIVU5LU0laRSk7Ci0gICAgICAgICAgICBpZiAobGlzdCA9PSBOVUxMKQotICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICBqID0gUHlMaXN0X0dFVF9TSVpFKGxpc3QpOwotICAgICAgICB9Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgZm9yIChqID0gMDsgaiA8IENIVU5LU0laRTsgaisrKSB7Ci0gICAgICAgICAgICAgICAgbGluZSA9IFB5SXRlcl9OZXh0KGl0ZXIpOwotICAgICAgICAgICAgICAgIGlmIChsaW5lID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgUHlMaXN0X1NldEl0ZW0obGlzdCwgaiwgbGluZSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGogPT0gMCkKLSAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgIC8qIENoZWNrIHRoYXQgYWxsIGVudHJpZXMgYXJlIGluZGVlZCBieXRlIHN0cmluZ3MuIElmIG5vdCwKLSAgICAgICAgICAgYXBwbHkgdGhlIHNhbWUgcnVsZXMgYXMgZm9yIGZpbGUud3JpdGUoKSBhbmQKLSAgICAgICAgICAgY29udmVydCB0aGUgcmV0cyB0byBzdHJpbmdzLiBUaGlzIGlzIHNsb3csIGJ1dAotICAgICAgICAgICBzZWVtcyB0byBiZSB0aGUgb25seSB3YXkgc2luY2UgYWxsIGNvbnZlcnNpb24gQVBJcwotICAgICAgICAgICBjb3VsZCBwb3RlbnRpYWxseSBleGVjdXRlIFB5dGhvbiBjb2RlLiAqLwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgajsgaSsrKSB7Ci0gICAgICAgICAgICBQeU9iamVjdCAqdiA9IFB5TGlzdF9HRVRfSVRFTShsaXN0LCBpKTsKLSAgICAgICAgICAgIGlmICghUHlCeXRlc19DaGVjayh2KSkgewotICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJ1ZmZlcjsKLSAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfQXNDaGFyQnVmZmVyKHYsICZidWZmZXIsICZsZW4pKSB7Ci0gICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid3JpdGVsaW5lcygpICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCBtdXN0IGJlICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhIHNlcXVlbmNlIG9mICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJieXRlcyBvYmplY3RzIik7Ci0gICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGxpbmUgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKGJ1ZmZlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuKTsKLSAgICAgICAgICAgICAgICBpZiAobGluZSA9PSBOVUxMKQotICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2KTsKLSAgICAgICAgICAgICAgICBQeUxpc3RfU0VUX0lURU0obGlzdCwgaSwgbGluZSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLQotICAgICAgICAvKiBTaW5jZSB3ZSBhcmUgcmVsZWFzaW5nIHRoZSBnbG9iYWwgbG9jaywgdGhlCi0gICAgICAgICAgIGZvbGxvd2luZyBjb2RlIG1heSAqbm90KiBleGVjdXRlIFB5dGhvbiBjb2RlLiAqLwotICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIGZvciAoaSA9IDA7IGkgPCBqOyBpKyspIHsKLSAgICAgICAgICAgIGxpbmUgPSBQeUxpc3RfR0VUX0lURU0obGlzdCwgaSk7Ci0gICAgICAgICAgICBsZW4gPSBQeUJ5dGVzX0dFVF9TSVpFKGxpbmUpOwotICAgICAgICAgICAgQloyX2J6V3JpdGUgKCZiemVycm9yLCBzZWxmLT5mcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhsaW5lKSwgbGVuKTsKLSAgICAgICAgICAgIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgICAgICAgICAgUHlfQkxPQ0tfVEhSRUFEUwotICAgICAgICAgICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0KLSAgICAgICAgaWYgKGogPCBDSFVOS1NJWkUpCi0gICAgICAgICAgICBicmVhazsKLSAgICB9Ci0KLSAgICBQeV9JTkNSRUYoUHlfTm9uZSk7Ci0gICAgcmV0ID0gUHlfTm9uZTsKLQotICBlcnJvcjoKLSAgICBSRUxFQVNFX0xPQ0soc2VsZik7Ci0gICAgUHlfWERFQ1JFRihsaXN0KTsKLSAgICBQeV9YREVDUkVGKGl0ZXIpOwotICAgIHJldHVybiByZXQ7Ci0jdW5kZWYgQ0hVTktTSVpFCi19Ci0KLVB5RG9jX1NUUlZBUihCWjJGaWxlX3NlZWtfX2RvY19fLAotInNlZWsob2Zmc2V0IFssIHdoZW5jZV0pIC0+IE5vbmVcblwKLVxuXAotTW92ZSB0byBuZXcgZmlsZSBwb3NpdGlvbi4gQXJndW1lbnQgb2Zmc2V0IGlzIGEgYnl0ZSBjb3VudC4gT3B0aW9uYWxcblwKLWFyZ3VtZW50IHdoZW5jZSBkZWZhdWx0cyB0byAwIChvZmZzZXQgZnJvbSBzdGFydCBvZiBmaWxlLCBvZmZzZXRcblwKLXNob3VsZCBiZSA+PSAwKTsgb3RoZXIgdmFsdWVzIGFyZSAxIChtb3ZlIHJlbGF0aXZlIHRvIGN1cnJlbnQgcG9zaXRpb24sXG5cCi1wb3NpdGl2ZSBvciBuZWdhdGl2ZSksIGFuZCAyIChtb3ZlIHJlbGF0aXZlIHRvIGVuZCBvZiBmaWxlLCB1c3VhbGx5XG5cCi1uZWdhdGl2ZSwgYWx0aG91Z2ggbWFueSBwbGF0Zm9ybXMgYWxsb3cgc2Vla2luZyBiZXlvbmQgdGhlIGVuZCBvZiBhIGZpbGUpLlxuXAotXG5cCi1Ob3RlIHRoYXQgc2Vla2luZyBvZiBiejIgZmlsZXMgaXMgZW11bGF0ZWQsIGFuZCBkZXBlbmRpbmcgb24gdGhlIHBhcmFtZXRlcnNcblwKLXRoZSBvcGVyYXRpb24gbWF5IGJlIGV4dHJlbWVseSBzbG93LlxuXAotIik7Ci0KLXN0YXRpYyBQeU9iamVjdCAqCi1CWjJGaWxlX3NlZWsoQloyRmlsZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCi17Ci0gICAgaW50IHdoZXJlID0gMDsKLSAgICBQeU9iamVjdCAqb2Zmb2JqOwotICAgIFB5X29mZl90IG9mZnNldDsKLSAgICBjaGFyIHNtYWxsX2J1ZmZlcltTTUFMTENIVU5LXTsKLSAgICBjaGFyICpidWZmZXIgPSBzbWFsbF9idWZmZXI7Ci0gICAgc2l6ZV90IGJ1ZmZlcnNpemUgPSBTTUFMTENIVU5LOwotICAgIFB5X29mZl90IGJ5dGVzcmVhZCA9IDA7Ci0gICAgc2l6ZV90IHJlYWRzaXplOwotICAgIGludCBjaHVua3NpemU7Ci0gICAgaW50IGJ6ZXJyb3I7Ci0gICAgUHlPYmplY3QgKnJldCA9IE5VTEw7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk98aTpzZWVrIiwgJm9mZm9iaiwgJndoZXJlKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0jaWYgIWRlZmluZWQoSEFWRV9MQVJHRUZJTEVfU1VQUE9SVCkKLSAgICBvZmZzZXQgPSBQeUxvbmdfQXNMb25nKG9mZm9iaik7Ci0jZWxzZQotICAgIG9mZnNldCA9IFB5TG9uZ19DaGVjayhvZmZvYmopID8KLSAgICAgICAgUHlMb25nX0FzTG9uZ0xvbmcob2Zmb2JqKSA6IFB5TG9uZ19Bc0xvbmcob2Zmb2JqKTsKLSNlbmRpZgotICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKLSAgICBVdGlsX0Ryb3BSZWFkQWhlYWQoc2VsZik7Ci0gICAgc3dpdGNoIChzZWxmLT5tb2RlKSB7Ci0gICAgICAgIGNhc2UgTU9ERV9SRUFEOgotICAgICAgICBjYXNlIE1PREVfUkVBRF9FT0Y6Ci0gICAgICAgICAgICBicmVhazsKLQotICAgICAgICBjYXNlIE1PREVfQ0xPU0VEOgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIkkvTyBvcGVyYXRpb24gb24gY2xvc2VkIGZpbGUiKTsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLQotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0lPRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgInNlZWsgd29ya3Mgb25seSB3aGlsZSByZWFkaW5nIik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgfQotCi0gICAgaWYgKHdoZXJlID09IDIpIHsKLSAgICAgICAgaWYgKHNlbGYtPnNpemUgPT0gLTEpIHsKLSAgICAgICAgICAgIGFzc2VydChzZWxmLT5tb2RlICE9IE1PREVfUkVBRF9FT0YpOwotICAgICAgICAgICAgZm9yICg7OykgewotICAgICAgICAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgICAgICAgICBjaHVua3NpemUgPSBCWjJfYnpSZWFkKCZiemVycm9yLCBzZWxmLT5mcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZmZlciwgYnVmZmVyc2l6ZSk7Ci0gICAgICAgICAgICAgICAgc2VsZi0+cG9zICs9IGNodW5rc2l6ZTsKLSAgICAgICAgICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotCi0gICAgICAgICAgICAgICAgYnl0ZXNyZWFkICs9IGNodW5rc2l6ZTsKLSAgICAgICAgICAgICAgICBpZiAoYnplcnJvciA9PSBCWl9TVFJFQU1fRU5EKSB7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICAgICAgICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgICAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBzZWxmLT5tb2RlID0gTU9ERV9SRUFEX0VPRjsKLSAgICAgICAgICAgIHNlbGYtPnNpemUgPSBzZWxmLT5wb3M7Ci0gICAgICAgICAgICBieXRlc3JlYWQgPSAwOwotICAgICAgICB9Ci0gICAgICAgIG9mZnNldCA9IHNlbGYtPnNpemUgKyBvZmZzZXQ7Ci0gICAgfSBlbHNlIGlmICh3aGVyZSA9PSAxKSB7Ci0gICAgICAgIG9mZnNldCA9IHNlbGYtPnBvcyArIG9mZnNldDsKLSAgICB9Ci0KLSAgICAvKiBCZWZvcmUgZ2V0dGluZyBoZXJlLCBvZmZzZXQgbXVzdCBiZSB0aGUgYWJzb2x1dGUgcG9zaXRpb24gdGhlIGZpbGUKLSAgICAgKiBwb2ludGVyIHNob3VsZCBiZSBzZXQgdG8uICovCi0KLSAgICBpZiAob2Zmc2V0ID49IHNlbGYtPnBvcykgewotICAgICAgICAvKiB3ZSBjYW4gbW92ZSBmb3J3YXJkICovCi0gICAgICAgIG9mZnNldCAtPSBzZWxmLT5wb3M7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgLyogd2UgY2Fubm90IG1vdmUgYmFjaywgc28gcmV3aW5kIHRoZSBzdHJlYW0gKi8KLSAgICAgICAgQloyX2J6UmVhZENsb3NlKCZiemVycm9yLCBzZWxmLT5mcCk7Ci0gICAgICAgIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgIH0KLSAgICAgICAgcmV3aW5kKHNlbGYtPnJhd2ZwKTsKLSAgICAgICAgc2VsZi0+cG9zID0gMDsKLSAgICAgICAgc2VsZi0+ZnAgPSBCWjJfYnpSZWFkT3BlbigmYnplcnJvciwgc2VsZi0+cmF3ZnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgMCwgTlVMTCwgMCk7Ci0gICAgICAgIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgICAgIH0KLSAgICAgICAgc2VsZi0+bW9kZSA9IE1PREVfUkVBRDsKLSAgICB9Ci0KLSAgICBpZiAob2Zmc2V0IDw9IDAgfHwgc2VsZi0+bW9kZSA9PSBNT0RFX1JFQURfRU9GKQotICAgICAgICBnb3RvIGV4aXQ7Ci0KLSAgICAvKiBCZWZvcmUgZ2V0dGluZyBoZXJlLCBvZmZzZXQgbXVzdCBiZSBzZXQgdG8gdGhlIG51bWJlciBvZiBieXRlcwotICAgICAqIHRvIHdhbGsgZm9yd2FyZC4gKi8KLSAgICBmb3IgKDs7KSB7Ci0gICAgICAgIGlmIChvZmZzZXQtYnl0ZXNyZWFkID4gYnVmZmVyc2l6ZSkKLSAgICAgICAgICAgIHJlYWRzaXplID0gYnVmZmVyc2l6ZTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgLyogb2Zmc2V0IG1pZ2h0IGJlIHdpZGVyIHRoYXQgcmVhZHNpemUsIGJ1dCB0aGUgcmVzdWx0Ci0gICAgICAgICAgICAgKiBvZiB0aGUgc3VidHJhY3Rpb24gaXMgYm91bmQgYnkgYnVmZmVyc2l6ZSAoc2VlIHRoZQotICAgICAgICAgICAgICogY29uZGl0aW9uIGFib3ZlKS4gYnVmZmVyc2l6ZSBpcyA4MTkyLiAqLwotICAgICAgICAgICAgcmVhZHNpemUgPSAoc2l6ZV90KShvZmZzZXQtYnl0ZXNyZWFkKTsKLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBjaHVua3NpemUgPSBCWjJfYnpSZWFkKCZiemVycm9yLCBzZWxmLT5mcCwgYnVmZmVyLCByZWFkc2l6ZSk7Ci0gICAgICAgIHNlbGYtPnBvcyArPSBjaHVua3NpemU7Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgICAgIGJ5dGVzcmVhZCArPSBjaHVua3NpemU7Ci0gICAgICAgIGlmIChiemVycm9yID09IEJaX1NUUkVBTV9FTkQpIHsKLSAgICAgICAgICAgIHNlbGYtPnNpemUgPSBzZWxmLT5wb3M7Ci0gICAgICAgICAgICBzZWxmLT5tb2RlID0gTU9ERV9SRUFEX0VPRjsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9IGVsc2UgaWYgKGJ6ZXJyb3IgIT0gQlpfT0spIHsKLSAgICAgICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgICAgIGdvdG8gY2xlYW51cDsKLSAgICAgICAgfQotICAgICAgICBpZiAoYnl0ZXNyZWFkID09IG9mZnNldCkKLSAgICAgICAgICAgIGJyZWFrOwotICAgIH0KLQotZXhpdDoKLSAgICBQeV9JTkNSRUYoUHlfTm9uZSk7Ci0gICAgcmV0ID0gUHlfTm9uZTsKLQotY2xlYW51cDoKLSAgICBSRUxFQVNFX0xPQ0soc2VsZik7Ci0gICAgcmV0dXJuIHJldDsKLX0KLQotUHlEb2NfU1RSVkFSKEJaMkZpbGVfdGVsbF9fZG9jX18sCi0idGVsbCgpIC0+IGludFxuXAotXG5cCi1SZXR1cm4gdGhlIGN1cnJlbnQgZmlsZSBwb3NpdGlvbiwgYW4gaW50ZWdlciAobWF5IGJlIGEgbG9uZyBpbnRlZ2VyKS5cblwKLSIpOwotCi1zdGF0aWMgUHlPYmplY3QgKgotQloyRmlsZV90ZWxsKEJaMkZpbGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQotewotICAgIFB5T2JqZWN0ICpyZXQgPSBOVUxMOwotCi0gICAgaWYgKHNlbGYtPm1vZGUgPT0gTU9ERV9DTE9TRUQpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiSS9PIG9wZXJhdGlvbiBvbiBjbG9zZWQgZmlsZSIpOwotICAgICAgICBnb3RvIGNsZWFudXA7Ci0gICAgfQotCi0jaWYgIWRlZmluZWQoSEFWRV9MQVJHRUZJTEVfU1VQUE9SVCkKLSAgICByZXQgPSBQeUxvbmdfRnJvbUxvbmcoc2VsZi0+cG9zKTsKLSNlbHNlCi0gICAgcmV0ID0gUHlMb25nX0Zyb21Mb25nTG9uZyhzZWxmLT5wb3MpOwotI2VuZGlmCi0KLWNsZWFudXA6Ci0gICAgcmV0dXJuIHJldDsKLX0KLQotUHlEb2NfU1RSVkFSKEJaMkZpbGVfY2xvc2VfX2RvY19fLAotImNsb3NlKCkgLT4gTm9uZSBvciAocGVyaGFwcykgYW4gaW50ZWdlclxuXAotXG5cCi1DbG9zZSB0aGUgZmlsZS4gU2V0cyBkYXRhIGF0dHJpYnV0ZSAuY2xvc2VkIHRvIHRydWUuIEEgY2xvc2VkIGZpbGVcblwKLWNhbm5vdCBiZSB1c2VkIGZvciBmdXJ0aGVyIEkvTyBvcGVyYXRpb25zLiBjbG9zZSgpIG1heSBiZSBjYWxsZWQgbW9yZVxuXAotdGhhbiBvbmNlIHdpdGhvdXQgZXJyb3IuXG5cCi0iKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfY2xvc2UoQloyRmlsZU9iamVjdCAqc2VsZikKLXsKLSAgICBQeU9iamVjdCAqcmV0ID0gTlVMTDsKLSAgICBpbnQgYnplcnJvciA9IEJaX09LOwotCi0gICAgaWYgKHNlbGYtPm1vZGUgPT0gTU9ERV9DTE9TRUQpIHsKLSAgICAgICAgUHlfUkVUVVJOX05PTkU7Ci0gICAgfQotCi0gICAgQUNRVUlSRV9MT0NLKHNlbGYpOwotICAgIHN3aXRjaCAoc2VsZi0+bW9kZSkgewotICAgICAgICBjYXNlIE1PREVfUkVBRDoKLSAgICAgICAgY2FzZSBNT0RFX1JFQURfRU9GOgotICAgICAgICAgICAgQloyX2J6UmVhZENsb3NlKCZiemVycm9yLCBzZWxmLT5mcCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSBNT0RFX1dSSVRFOgotICAgICAgICAgICAgQloyX2J6V3JpdGVDbG9zZSgmYnplcnJvciwgc2VsZi0+ZnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIE5VTEwsIE5VTEwpOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgfQotICAgIHNlbGYtPm1vZGUgPSBNT0RFX0NMT1NFRDsKLSAgICBmY2xvc2Uoc2VsZi0+cmF3ZnApOwotICAgIHNlbGYtPnJhd2ZwID0gTlVMTDsKLSAgICBpZiAoYnplcnJvciA9PSBCWl9PSykgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7Ci0gICAgICAgIHJldCA9IFB5X05vbmU7Ci0gICAgfQotICAgIGVsc2UgewotICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgfQotCi0gICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgIHJldHVybiByZXQ7Ci19Ci0KLVB5RG9jX1NUUlZBUihCWjJGaWxlX2VudGVyX2RvYywKLSJfX2VudGVyX18oKSAtPiBzZWxmLiIpOwotCi1zdGF0aWMgUHlPYmplY3QgKgotQloyRmlsZV9lbnRlcihCWjJGaWxlT2JqZWN0ICpzZWxmKQotewotICAgIGlmIChzZWxmLT5tb2RlID09IE1PREVfQ0xPU0VEKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgIkkvTyBvcGVyYXRpb24gb24gY2xvc2VkIGZpbGUiKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIFB5X0lOQ1JFRihzZWxmKTsKLSAgICByZXR1cm4gKFB5T2JqZWN0ICopIHNlbGY7Ci19Ci0KLVB5RG9jX1NUUlZBUihCWjJGaWxlX2V4aXRfZG9jLAotIl9fZXhpdF9fKCpleGNpbmZvKSAtPiBOb25lLiAgQ2xvc2VzIHRoZSBmaWxlLiIpOwotCi1zdGF0aWMgUHlPYmplY3QgKgotQloyRmlsZV9leGl0KEJaMkZpbGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQotewotICAgIFB5T2JqZWN0ICpyZXQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKChQeU9iamVjdCAqKSBzZWxmLCAiY2xvc2UiLCBOVUxMKTsKLSAgICBpZiAoIXJldCkKLSAgICAgICAgLyogSWYgZXJyb3Igb2NjdXJyZWQsIHBhc3MgdGhyb3VnaCAqLwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBQeV9ERUNSRUYocmV0KTsKLSAgICBQeV9SRVRVUk5fTk9ORTsKLX0KLQotCi1zdGF0aWMgUHlPYmplY3QgKkJaMkZpbGVfZ2V0aXRlcihCWjJGaWxlT2JqZWN0ICpzZWxmKTsKLQotc3RhdGljIFB5TWV0aG9kRGVmIEJaMkZpbGVfbWV0aG9kc1tdID0gewotICAgIHsicmVhZCIsIChQeUNGdW5jdGlvbilCWjJGaWxlX3JlYWQsIE1FVEhfVkFSQVJHUywgQloyRmlsZV9yZWFkX19kb2NfX30sCi0gICAgeyJyZWFkbGluZSIsIChQeUNGdW5jdGlvbilCWjJGaWxlX3JlYWRsaW5lLCBNRVRIX1ZBUkFSR1MsIEJaMkZpbGVfcmVhZGxpbmVfX2RvY19ffSwKLSAgICB7InJlYWRsaW5lcyIsIChQeUNGdW5jdGlvbilCWjJGaWxlX3JlYWRsaW5lcywgTUVUSF9WQVJBUkdTLCBCWjJGaWxlX3JlYWRsaW5lc19fZG9jX199LAotICAgIHsid3JpdGUiLCAoUHlDRnVuY3Rpb24pQloyRmlsZV93cml0ZSwgTUVUSF9WQVJBUkdTLCBCWjJGaWxlX3dyaXRlX19kb2NfX30sCi0gICAgeyJ3cml0ZWxpbmVzIiwgKFB5Q0Z1bmN0aW9uKUJaMkZpbGVfd3JpdGVsaW5lcywgTUVUSF9PLCBCWjJGaWxlX3dyaXRlbGluZXNfX2RvY19ffSwKLSAgICB7InNlZWsiLCAoUHlDRnVuY3Rpb24pQloyRmlsZV9zZWVrLCBNRVRIX1ZBUkFSR1MsIEJaMkZpbGVfc2Vla19fZG9jX199LAotICAgIHsidGVsbCIsIChQeUNGdW5jdGlvbilCWjJGaWxlX3RlbGwsIE1FVEhfTk9BUkdTLCBCWjJGaWxlX3RlbGxfX2RvY19ffSwKLSAgICB7ImNsb3NlIiwgKFB5Q0Z1bmN0aW9uKUJaMkZpbGVfY2xvc2UsIE1FVEhfTk9BUkdTLCBCWjJGaWxlX2Nsb3NlX19kb2NfX30sCi0gICAgeyJfX2VudGVyX18iLCAoUHlDRnVuY3Rpb24pQloyRmlsZV9lbnRlciwgTUVUSF9OT0FSR1MsIEJaMkZpbGVfZW50ZXJfZG9jfSwKLSAgICB7Il9fZXhpdF9fIiwgKFB5Q0Z1bmN0aW9uKUJaMkZpbGVfZXhpdCwgTUVUSF9WQVJBUkdTLCBCWjJGaWxlX2V4aXRfZG9jfSwKLSAgICB7TlVMTCwgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAvKiBzZW50aW5lbCAqLwotfTsKLQotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIEdldHRlcnMgYW5kIHNldHRlcnMgb2YgQloyRmlsZS4gKi8KLQotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkZpbGVfZ2V0X2Nsb3NlZChCWjJGaWxlT2JqZWN0ICpzZWxmLCB2b2lkICpjbG9zdXJlKQotewotICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoc2VsZi0+bW9kZSA9PSBNT0RFX0NMT1NFRCk7Ci19Ci0KLXN0YXRpYyBQeUdldFNldERlZiBCWjJGaWxlX2dldHNldFtdID0gewotICAgIHsiY2xvc2VkIiwgKGdldHRlcilCWjJGaWxlX2dldF9jbG9zZWQsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICJUcnVlIGlmIHRoZSBmaWxlIGlzIGNsb3NlZCJ9LAotICAgIHtOVUxMfSAgICAgIC8qIFNlbnRpbmVsICovCi19OwotCi0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogU2xvdCBkZWZpbml0aW9ucyBmb3IgQloyRmlsZV9UeXBlLiAqLwotCi1zdGF0aWMgaW50Ci1CWjJGaWxlX2luaXQoQloyRmlsZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCi17Ci0gICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJmaWxlbmFtZSIsICJtb2RlIiwgImJ1ZmZlcmluZyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb21wcmVzc2xldmVsIiwgMH07Ci0gICAgUHlPYmplY3QgKm5hbWVfb2JqID0gTlVMTDsKLSAgICBjaGFyICpuYW1lOwotICAgIGNoYXIgKm1vZGUgPSAiciI7Ci0gICAgaW50IGJ1ZmZlcmluZyA9IC0xOwotICAgIGludCBjb21wcmVzc2xldmVsID0gOTsKLSAgICBpbnQgYnplcnJvcjsKLSAgICBpbnQgbW9kZV9jaGFyID0gMDsKLQotICAgIHNlbGYtPnNpemUgPSAtMTsKLQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgIk8mfHNpaTpCWjJGaWxlIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm5hbWVfb2JqLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtb2RlLCAmYnVmZmVyaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZjb21wcmVzc2xldmVsKSkKLSAgICAgICAgcmV0dXJuIC0xOwotCi0gICAgbmFtZSA9IFB5Qnl0ZXNfQXNTdHJpbmcobmFtZV9vYmopOwotICAgIGlmIChjb21wcmVzc2xldmVsIDwgMSB8fCBjb21wcmVzc2xldmVsID4gOSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJjb21wcmVzc2xldmVsIG11c3QgYmUgYmV0d2VlbiAxIGFuZCA5Iik7Ci0gICAgICAgIFB5X0RFQ1JFRihuYW1lX29iaik7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0KLSAgICBmb3IgKDs7KSB7Ci0gICAgICAgIGludCBlcnJvciA9IDA7Ci0gICAgICAgIHN3aXRjaCAoKm1vZGUpIHsKLSAgICAgICAgICAgIGNhc2UgJ3InOgotICAgICAgICAgICAgY2FzZSAndyc6Ci0gICAgICAgICAgICAgICAgaWYgKG1vZGVfY2hhcikKLSAgICAgICAgICAgICAgICAgICAgZXJyb3IgPSAxOwotICAgICAgICAgICAgICAgIG1vZGVfY2hhciA9ICptb2RlOwotICAgICAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgICAgICBjYXNlICdiJzoKLSAgICAgICAgICAgICAgICBicmVhazsKLQotICAgICAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgICAgICBlcnJvciA9IDE7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGVycm9yKSB7Ci0gICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAiaW52YWxpZCBtb2RlIGNoYXIgJWMiLCAqbW9kZSk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYobmFtZV9vYmopOwotICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICB9Ci0gICAgICAgIG1vZGUrKzsKLSAgICAgICAgaWYgKCptb2RlID09ICdcMCcpCi0gICAgICAgICAgICBicmVhazsKLSAgICB9Ci0KLSAgICBpZiAobW9kZV9jaGFyID09IDApIHsKLSAgICAgICAgbW9kZV9jaGFyID0gJ3InOwotICAgIH0KLQotICAgIG1vZGUgPSAobW9kZV9jaGFyID09ICdyJykgPyAicmIiIDogIndiIjsKLQotICAgIHNlbGYtPnJhd2ZwID0gZm9wZW4obmFtZSwgbW9kZSk7Ci0gICAgUHlfREVDUkVGKG5hbWVfb2JqKTsKLSAgICBpZiAoc2VsZi0+cmF3ZnAgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgLyogWFhYIElnbm9yZSBidWZmZXJpbmcgKi8KLQotICAgIC8qIEZyb20gbm93IG9uLCB3ZSBoYXZlIHN0dWZmIHRvIGRlYWxsb2MsIHNvIGp1bXAgdG8gZXJyb3IgbGFiZWwKLSAgICAgKiBpbnN0ZWFkIG9mIHJldHVybmluZyAqLwotCi0jaWZkZWYgV0lUSF9USFJFQUQKLSAgICBzZWxmLT5sb2NrID0gUHlUaHJlYWRfYWxsb2NhdGVfbG9jaygpOwotICAgIGlmICghc2VsZi0+bG9jaykgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfTWVtb3J5RXJyb3IsICJ1bmFibGUgdG8gYWxsb2NhdGUgbG9jayIpOwotICAgICAgICBnb3RvIGVycm9yOwotICAgIH0KLSNlbmRpZgotCi0gICAgaWYgKG1vZGVfY2hhciA9PSAncicpCi0gICAgICAgIHNlbGYtPmZwID0gQloyX2J6UmVhZE9wZW4oJmJ6ZXJyb3IsIHNlbGYtPnJhd2ZwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIDAsIE5VTEwsIDApOwotICAgIGVsc2UKLSAgICAgICAgc2VsZi0+ZnAgPSBCWjJfYnpXcml0ZU9wZW4oJmJ6ZXJyb3IsIHNlbGYtPnJhd2ZwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wcmVzc2xldmVsLCAwLCAwKTsKLQotICAgIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSAgICBzZWxmLT5tb2RlID0gKG1vZGVfY2hhciA9PSAncicpID8gTU9ERV9SRUFEIDogTU9ERV9XUklURTsKLQotICAgIHJldHVybiAwOwotCi1lcnJvcjoKLSAgICBmY2xvc2Uoc2VsZi0+cmF3ZnApOwotICAgIHNlbGYtPnJhd2ZwID0gTlVMTDsKLSNpZmRlZiBXSVRIX1RIUkVBRAotICAgIGlmIChzZWxmLT5sb2NrKSB7Ci0gICAgICAgIFB5VGhyZWFkX2ZyZWVfbG9jayhzZWxmLT5sb2NrKTsKLSAgICAgICAgc2VsZi0+bG9jayA9IE5VTEw7Ci0gICAgfQotI2VuZGlmCi0gICAgcmV0dXJuIC0xOwotfQotCi1zdGF0aWMgdm9pZAotQloyRmlsZV9kZWFsbG9jKEJaMkZpbGVPYmplY3QgKnNlbGYpCi17Ci0gICAgaW50IGJ6ZXJyb3I7Ci0jaWZkZWYgV0lUSF9USFJFQUQKLSAgICBpZiAoc2VsZi0+bG9jaykKLSAgICAgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHNlbGYtPmxvY2spOwotI2VuZGlmCi0gICAgc3dpdGNoIChzZWxmLT5tb2RlKSB7Ci0gICAgICAgIGNhc2UgTU9ERV9SRUFEOgotICAgICAgICBjYXNlIE1PREVfUkVBRF9FT0Y6Ci0gICAgICAgICAgICBCWjJfYnpSZWFkQ2xvc2UoJmJ6ZXJyb3IsIHNlbGYtPmZwKTsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIE1PREVfV1JJVEU6Ci0gICAgICAgICAgICBCWjJfYnpXcml0ZUNsb3NlKCZiemVycm9yLCBzZWxmLT5mcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCwgTlVMTCwgTlVMTCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICB9Ci0gICAgVXRpbF9Ecm9wUmVhZEFoZWFkKHNlbGYpOwotICAgIGlmIChzZWxmLT5yYXdmcCAhPSBOVUxMKQotICAgICAgICBmY2xvc2Uoc2VsZi0+cmF3ZnApOwotICAgIFB5X1RZUEUoc2VsZiktPnRwX2ZyZWUoKFB5T2JqZWN0ICopc2VsZik7Ci19Ci0KLS8qIFRoaXMgaXMgYSBoYWNrZWQgdmVyc2lvbiBvZiBQeXRob24ncyBmaWxlb2JqZWN0LmM6ZmlsZV9nZXRpdGVyKCkuICovCi1zdGF0aWMgUHlPYmplY3QgKgotQloyRmlsZV9nZXRpdGVyKEJaMkZpbGVPYmplY3QgKnNlbGYpCi17Ci0gICAgaWYgKHNlbGYtPm1vZGUgPT0gTU9ERV9DTE9TRUQpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiSS9PIG9wZXJhdGlvbiBvbiBjbG9zZWQgZmlsZSIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgUHlfSU5DUkVGKChQeU9iamVjdCopc2VsZik7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXNlbGY7Ci19Ci0KLS8qIFRoaXMgaXMgYSBoYWNrZWQgdmVyc2lvbiBvZiBQeXRob24ncyBmaWxlb2JqZWN0LmM6ZmlsZV9pdGVybmV4dCgpLiAqLwotI2RlZmluZSBSRUFEQUhFQURfQlVGU0laRSA4MTkyCi1zdGF0aWMgUHlPYmplY3QgKgotQloyRmlsZV9pdGVybmV4dChCWjJGaWxlT2JqZWN0ICpzZWxmKQotewotICAgIFB5Qnl0ZXNPYmplY3QqIHJldDsKLSAgICBBQ1FVSVJFX0xPQ0soc2VsZik7Ci0gICAgaWYgKHNlbGYtPm1vZGUgPT0gTU9ERV9DTE9TRUQpIHsKLSAgICAgICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJJL08gb3BlcmF0aW9uIG9uIGNsb3NlZCBmaWxlIik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICByZXQgPSBVdGlsX1JlYWRBaGVhZEdldExpbmVTa2lwKHNlbGYsIDAsIFJFQURBSEVBRF9CVUZTSVpFKTsKLSAgICBSRUxFQVNFX0xPQ0soc2VsZik7Ci0gICAgaWYgKHJldCA9PSBOVUxMIHx8IFB5Qnl0ZXNfR0VUX1NJWkUocmV0KSA9PSAwKSB7Ci0gICAgICAgIFB5X1hERUNSRUYocmV0KTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIHJldHVybiAoUHlPYmplY3QgKilyZXQ7Ci19Ci0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogQloyRmlsZV9UeXBlIGRlZmluaXRpb24uICovCi0KLVB5RG9jX1ZBUihCWjJGaWxlX19kb2NfXykgPQotUHlEb2NfU1RSKAotIkJaMkZpbGUobmFtZSBbLCBtb2RlPSdyJywgYnVmZmVyaW5nPTAsIGNvbXByZXNzbGV2ZWw9OV0pIC0+IGZpbGUgb2JqZWN0XG5cCi1cblwKLU9wZW4gYSBiejIgZmlsZS4gVGhlIG1vZGUgY2FuIGJlICdyJyBvciAndycsIGZvciByZWFkaW5nIChkZWZhdWx0KSBvclxuXAotd3JpdGluZy4gV2hlbiBvcGVuZWQgZm9yIHdyaXRpbmcsIHRoZSBmaWxlIHdpbGwgYmUgY3JlYXRlZCBpZiBpdCBkb2Vzbid0XG5cCi1leGlzdCwgYW5kIHRydW5jYXRlZCBvdGhlcndpc2UuIElmIHRoZSBidWZmZXJpbmcgYXJndW1lbnQgaXMgZ2l2ZW4sIDAgbWVhbnNcblwKLXVuYnVmZmVyZWQsIGFuZCBsYXJnZXIgbnVtYmVycyBzcGVjaWZ5IHRoZSBidWZmZXIgc2l6ZS4gSWYgY29tcHJlc3NsZXZlbFxuXAotaXMgZ2l2ZW4sIG11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAxIGFuZCA5LlxuXAotRGF0YSByZWFkIGlzIGFsd2F5cyByZXR1cm5lZCBpbiBieXRlczsgZGF0YSB3cml0dGVuIG91Z2h0IHRvIGJlIGJ5dGVzLlxuXAotIik7Ci0KLXN0YXRpYyBQeVR5cGVPYmplY3QgQloyRmlsZV9UeXBlID0gewotICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVChOVUxMLCAwKQotICAgICJiejIuQloyRmlsZSIsICAgICAgICAgICAgICAvKnRwX25hbWUqLwotICAgIHNpemVvZihCWjJGaWxlT2JqZWN0KSwgICAgICAvKnRwX2Jhc2ljc2l6ZSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXRlbXNpemUqLwotICAgIChkZXN0cnVjdG9yKUJaMkZpbGVfZGVhbGxvYywgLyp0cF9kZWFsbG9jKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9wcmludCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0YXR0ciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc2V0YXR0ciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcmVzZXJ2ZWQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3JlcHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX251bWJlciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfc2VxdWVuY2UqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX21hcHBpbmcqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2hhc2gqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfY2FsbCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9zdHIqLwotICAgIFB5T2JqZWN0X0dlbmVyaWNHZXRBdHRyLC8qdHBfZ2V0YXR0cm8qLwotICAgIFB5T2JqZWN0X0dlbmVyaWNTZXRBdHRyLC8qdHBfc2V0YXR0cm8qLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfYnVmZmVyKi8KLSAgICBQeV9UUEZMQUdTX0RFRkFVTFR8UHlfVFBGTEFHU19CQVNFVFlQRSwgLyp0cF9mbGFncyovCi0gICAgQloyRmlsZV9fZG9jX18sICAgICAgICAgLyp0cF9kb2MqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfdHJhdmVyc2UqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfY2xlYXIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcmljaGNvbXBhcmUqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfd2Vha2xpc3RvZmZzZXQqLwotICAgIChnZXRpdGVyZnVuYylCWjJGaWxlX2dldGl0ZXIsIC8qdHBfaXRlciovCi0gICAgKGl0ZXJuZXh0ZnVuYylCWjJGaWxlX2l0ZXJuZXh0LCAvKnRwX2l0ZXJuZXh0Ki8KLSAgICBCWjJGaWxlX21ldGhvZHMsICAgICAgICAvKnRwX21ldGhvZHMqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX21lbWJlcnMqLwotICAgIEJaMkZpbGVfZ2V0c2V0LCAgICAgICAgIC8qdHBfZ2V0c2V0Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2Jhc2UqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZGljdCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9kZXNjcl9nZXQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZGVzY3Jfc2V0Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2RpY3RvZmZzZXQqLwotICAgIChpbml0cHJvYylCWjJGaWxlX2luaXQsIC8qdHBfaW5pdCovCi0gICAgUHlUeXBlX0dlbmVyaWNBbGxvYywgICAgLyp0cF9hbGxvYyovCi0gICAgUHlUeXBlX0dlbmVyaWNOZXcsICAgICAgLyp0cF9uZXcqLwotICAgIFB5T2JqZWN0X0ZyZWUsICAgICAgICAgIC8qdHBfZnJlZSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9pc19nYyovCi19OwotCi0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogTWV0aG9kcyBvZiBCWjJDb21wLiAqLwotCi1QeURvY19TVFJWQVIoQloyQ29tcF9jb21wcmVzc19fZG9jX18sCi0iY29tcHJlc3MoZGF0YSkgLT4gc3RyaW5nXG5cCi1cblwKLVByb3ZpZGUgbW9yZSBkYXRhIHRvIHRoZSBjb21wcmVzc29yIG9iamVjdC4gSXQgd2lsbCByZXR1cm4gY2h1bmtzIG9mXG5cCi1jb21wcmVzc2VkIGRhdGEgd2hlbmV2ZXIgcG9zc2libGUuIFdoZW4geW91J3ZlIGZpbmlzaGVkIHByb3ZpZGluZyBkYXRhXG5cCi10byBjb21wcmVzcywgY2FsbCB0aGUgZmx1c2goKSBtZXRob2QgdG8gZmluaXNoIHRoZSBjb21wcmVzc2lvbiBwcm9jZXNzLFxuXAotYW5kIHJldHVybiB3aGF0IGlzIGxlZnQgaW4gdGhlIGludGVybmFsIGJ1ZmZlcnMuXG5cCi0iKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkNvbXBfY29tcHJlc3MoQloyQ29tcE9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCi17Ci0gICAgUHlfYnVmZmVyIHBkYXRhOwotICAgIGNoYXIgKmRhdGE7Ci0gICAgaW50IGRhdGFzaXplOwotICAgIGludCBidWZzaXplID0gU01BTExDSFVOSzsKLSAgICBQWV9MT05HX0xPTkcgdG90YWxvdXQ7Ci0gICAgUHlPYmplY3QgKnJldCA9IE5VTEw7Ci0gICAgYnpfc3RyZWFtICpienMgPSAmc2VsZi0+YnpzOwotICAgIGludCBiemVycm9yOwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5Kjpjb21wcmVzcyIsICZwZGF0YSkpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGRhdGEgPSBwZGF0YS5idWY7Ci0gICAgZGF0YXNpemUgPSBwZGF0YS5sZW47Ci0KLSAgICBpZiAoZGF0YXNpemUgPT0gMCkgewotICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKCIiLCAwKTsKLSAgICB9Ci0KLSAgICBBQ1FVSVJFX0xPQ0soc2VsZik7Ci0gICAgaWYgKCFzZWxmLT5ydW5uaW5nKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgInRoaXMgb2JqZWN0IHdhcyBhbHJlYWR5IGZsdXNoZWQiKTsKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSAgICByZXQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGJ1ZnNpemUpOwotICAgIGlmICghcmV0KQotICAgICAgICBnb3RvIGVycm9yOwotCi0gICAgYnpzLT5uZXh0X2luID0gZGF0YTsKLSAgICBienMtPmF2YWlsX2luID0gZGF0YXNpemU7Ci0gICAgYnpzLT5uZXh0X291dCA9IEJVRihyZXQpOwotICAgIGJ6cy0+YXZhaWxfb3V0ID0gYnVmc2l6ZTsKLQotICAgIHRvdGFsb3V0ID0gQlpTX1RPVEFMX09VVChienMpOwotCi0gICAgZm9yICg7OykgewotICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIGJ6ZXJyb3IgPSBCWjJfYnpDb21wcmVzcyhienMsIEJaX1JVTik7Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgICAgIGlmIChiemVycm9yICE9IEJaX1JVTl9PSykgewotICAgICAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgfQotICAgICAgICBpZiAoYnpzLT5hdmFpbF9pbiA9PSAwKQotICAgICAgICAgICAgYnJlYWs7IC8qIG5vIG1vcmUgaW5wdXQgZGF0YSAqLwotICAgICAgICBpZiAoYnpzLT5hdmFpbF9vdXQgPT0gMCkgewotICAgICAgICAgICAgYnVmc2l6ZSA9IFV0aWxfTmV3QnVmZmVyU2l6ZShidWZzaXplKTsKLSAgICAgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnJldCwgYnVmc2l6ZSkgPCAwKSB7Ci0gICAgICAgICAgICAgICAgQloyX2J6Q29tcHJlc3NFbmQoYnpzKTsKLSAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYnpzLT5uZXh0X291dCA9IEJVRihyZXQpICsgKEJaU19UT1RBTF9PVVQoYnpzKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0gdG90YWxvdXQpOwotICAgICAgICAgICAgYnpzLT5hdmFpbF9vdXQgPSBidWZzaXplIC0gKGJ6cy0+bmV4dF9vdXQgLSBCVUYocmV0KSk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZyZXQsCi0gICAgICAgICAgICAgICAgICAgICAgIChQeV9zc2l6ZV90KShCWlNfVE9UQUxfT1VUKGJ6cykgLSB0b3RhbG91dCkpIDwgMCkKLSAgICAgICAgZ290byBlcnJvcjsKLQotICAgIFJFTEVBU0VfTE9DSyhzZWxmKTsKLSAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgcmV0dXJuIHJldDsKLQotZXJyb3I6Ci0gICAgUkVMRUFTRV9MT0NLKHNlbGYpOwotICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICBQeV9YREVDUkVGKHJldCk7Ci0gICAgcmV0dXJuIE5VTEw7Ci19Ci0KLVB5RG9jX1NUUlZBUihCWjJDb21wX2ZsdXNoX19kb2NfXywKLSJmbHVzaCgpIC0+IHN0cmluZ1xuXAotXG5cCi1GaW5pc2ggdGhlIGNvbXByZXNzaW9uIHByb2Nlc3MgYW5kIHJldHVybiB3aGF0IGlzIGxlZnQgaW4gaW50ZXJuYWwgYnVmZmVycy5cblwKLVlvdSBtdXN0IG5vdCB1c2UgdGhlIGNvbXByZXNzb3Igb2JqZWN0IGFmdGVyIGNhbGxpbmcgdGhpcyBtZXRob2QuXG5cCi0iKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLUJaMkNvbXBfZmx1c2goQloyQ29tcE9iamVjdCAqc2VsZikKLXsKLSAgICBpbnQgYnVmc2l6ZSA9IFNNQUxMQ0hVTks7Ci0gICAgUHlPYmplY3QgKnJldCA9IE5VTEw7Ci0gICAgYnpfc3RyZWFtICpienMgPSAmc2VsZi0+YnpzOwotICAgIFBZX0xPTkdfTE9ORyB0b3RhbG91dDsKLSAgICBpbnQgYnplcnJvcjsKLQotICAgIEFDUVVJUkVfTE9DSyhzZWxmKTsKLSAgICBpZiAoIXNlbGYtPnJ1bm5pbmcpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJvYmplY3Qgd2FzIGFscmVhZHkgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZsdXNoZWQiKTsKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0gICAgc2VsZi0+cnVubmluZyA9IDA7Ci0KLSAgICByZXQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGJ1ZnNpemUpOwotICAgIGlmICghcmV0KQotICAgICAgICBnb3RvIGVycm9yOwotCi0gICAgYnpzLT5uZXh0X291dCA9IEJVRihyZXQpOwotICAgIGJ6cy0+YXZhaWxfb3V0ID0gYnVmc2l6ZTsKLQotICAgIHRvdGFsb3V0ID0gQlpTX1RPVEFMX09VVChienMpOwotCi0gICAgZm9yICg7OykgewotICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIGJ6ZXJyb3IgPSBCWjJfYnpDb21wcmVzcyhienMsIEJaX0ZJTklTSCk7Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgICAgIGlmIChiemVycm9yID09IEJaX1NUUkVBTV9FTkQpIHsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9IGVsc2UgaWYgKGJ6ZXJyb3IgIT0gQlpfRklOSVNIX09LKSB7Ci0gICAgICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICB9Ci0gICAgICAgIGlmIChienMtPmF2YWlsX291dCA9PSAwKSB7Ci0gICAgICAgICAgICBidWZzaXplID0gVXRpbF9OZXdCdWZmZXJTaXplKGJ1ZnNpemUpOwotICAgICAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmV0LCBidWZzaXplKSA8IDApCi0gICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgIGJ6cy0+bmV4dF9vdXQgPSBCVUYocmV0KTsKLSAgICAgICAgICAgIGJ6cy0+bmV4dF9vdXQgPSBCVUYocmV0KSArIChCWlNfVE9UQUxfT1VUKGJ6cykKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtIHRvdGFsb3V0KTsKLSAgICAgICAgICAgIGJ6cy0+YXZhaWxfb3V0ID0gYnVmc2l6ZSAtIChienMtPm5leHRfb3V0IC0gQlVGKHJldCkpOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgaWYgKGJ6cy0+YXZhaWxfb3V0ICE9IDApIHsKLSAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmV0LAotICAgICAgICAgICAgICAgICAgICAoUHlfc3NpemVfdCkoQlpTX1RPVEFMX09VVChienMpIC0gdG90YWxvdXQpKSA8IDApCi0gICAgICAgICAgICBnb3RvIGVycm9yOwotICAgIH0KLQotICAgIFJFTEVBU0VfTE9DSyhzZWxmKTsKLSAgICByZXR1cm4gcmV0OwotCi1lcnJvcjoKLSAgICBSRUxFQVNFX0xPQ0soc2VsZik7Ci0gICAgUHlfWERFQ1JFRihyZXQpOwotICAgIHJldHVybiBOVUxMOwotfQotCi1zdGF0aWMgUHlNZXRob2REZWYgQloyQ29tcF9tZXRob2RzW10gPSB7Ci0gICAgeyJjb21wcmVzcyIsIChQeUNGdW5jdGlvbilCWjJDb21wX2NvbXByZXNzLCBNRVRIX1ZBUkFSR1MsCi0gICAgIEJaMkNvbXBfY29tcHJlc3NfX2RvY19ffSwKLSAgICB7ImZsdXNoIiwgKFB5Q0Z1bmN0aW9uKUJaMkNvbXBfZmx1c2gsIE1FVEhfTk9BUkdTLAotICAgICBCWjJDb21wX2ZsdXNoX19kb2NfX30sCi0gICAge05VTEwsICAgICAgICAgICAgICBOVUxMfSAgICAgICAgICAgLyogc2VudGluZWwgKi8KLX07Ci0KLQotLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCi0vKiBTbG90IGRlZmluaXRpb25zIGZvciBCWjJDb21wX1R5cGUuICovCi0KLXN0YXRpYyBpbnQKLUJaMkNvbXBfaW5pdChCWjJDb21wT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKLXsKLSAgICBpbnQgY29tcHJlc3NsZXZlbCA9IDk7Ci0gICAgaW50IGJ6ZXJyb3I7Ci0gICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJjb21wcmVzc2xldmVsIiwgMH07Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsICJ8aTpCWjJDb21wcmVzc29yIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZjb21wcmVzc2xldmVsKSkKLSAgICAgICAgcmV0dXJuIC0xOwotCi0gICAgaWYgKGNvbXByZXNzbGV2ZWwgPCAxIHx8IGNvbXByZXNzbGV2ZWwgPiA5KSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgImNvbXByZXNzbGV2ZWwgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIDkiKTsKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSNpZmRlZiBXSVRIX1RIUkVBRAotICAgIHNlbGYtPmxvY2sgPSBQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKCk7Ci0gICAgaWYgKCFzZWxmLT5sb2NrKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19NZW1vcnlFcnJvciwgInVuYWJsZSB0byBhbGxvY2F0ZSBsb2NrIik7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotI2VuZGlmCi0KLSAgICBtZW1zZXQoJnNlbGYtPmJ6cywgMCwgc2l6ZW9mKGJ6X3N0cmVhbSkpOwotICAgIGJ6ZXJyb3IgPSBCWjJfYnpDb21wcmVzc0luaXQoJnNlbGYtPmJ6cywgY29tcHJlc3NsZXZlbCwgMCwgMCk7Ci0gICAgaWYgKGJ6ZXJyb3IgIT0gQlpfT0spIHsKLSAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICBnb3RvIGVycm9yOwotICAgIH0KLQotICAgIHNlbGYtPnJ1bm5pbmcgPSAxOwotCi0gICAgcmV0dXJuIDA7Ci1lcnJvcjoKLSNpZmRlZiBXSVRIX1RIUkVBRAotICAgIGlmIChzZWxmLT5sb2NrKSB7Ci0gICAgICAgIFB5VGhyZWFkX2ZyZWVfbG9jayhzZWxmLT5sb2NrKTsKLSAgICAgICAgc2VsZi0+bG9jayA9IE5VTEw7Ci0gICAgfQotI2VuZGlmCi0gICAgcmV0dXJuIC0xOwotfQotCi1zdGF0aWMgdm9pZAotQloyQ29tcF9kZWFsbG9jKEJaMkNvbXBPYmplY3QgKnNlbGYpCi17Ci0jaWZkZWYgV0lUSF9USFJFQUQKLSAgICBpZiAoc2VsZi0+bG9jaykKLSAgICAgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHNlbGYtPmxvY2spOwotI2VuZGlmCi0gICAgQloyX2J6Q29tcHJlc3NFbmQoJnNlbGYtPmJ6cyk7Ci0gICAgUHlfVFlQRShzZWxmKS0+dHBfZnJlZSgoUHlPYmplY3QgKilzZWxmKTsKLX0KLQotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIEJaMkNvbXBfVHlwZSBkZWZpbml0aW9uLiAqLwotCi1QeURvY19TVFJWQVIoQloyQ29tcF9fZG9jX18sCi0iQloyQ29tcHJlc3NvcihbY29tcHJlc3NsZXZlbD05XSkgLT4gY29tcHJlc3NvciBvYmplY3RcblwKLVxuXAotQ3JlYXRlIGEgbmV3IGNvbXByZXNzb3Igb2JqZWN0LiBUaGlzIG9iamVjdCBtYXkgYmUgdXNlZCB0byBjb21wcmVzc1xuXAotZGF0YSBzZXF1ZW50aWFsbHkuIElmIHlvdSB3YW50IHRvIGNvbXByZXNzIGRhdGEgaW4gb25lIHNob3QsIHVzZSB0aGVcblwKLWNvbXByZXNzKCkgZnVuY3Rpb24gaW5zdGVhZC4gVGhlIGNvbXByZXNzbGV2ZWwgcGFyYW1ldGVyLCBpZiBnaXZlbixcblwKLW11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAxIGFuZCA5LlxuXAotIik7Ci0KLXN0YXRpYyBQeVR5cGVPYmplY3QgQloyQ29tcF9UeXBlID0gewotICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVChOVUxMLCAwKQotICAgICJiejIuQloyQ29tcHJlc3NvciIsICAgICAgICAvKnRwX25hbWUqLwotICAgIHNpemVvZihCWjJDb21wT2JqZWN0KSwgICAgICAvKnRwX2Jhc2ljc2l6ZSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXRlbXNpemUqLwotICAgIChkZXN0cnVjdG9yKUJaMkNvbXBfZGVhbGxvYywgLyp0cF9kZWFsbG9jKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9wcmludCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0YXR0ciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc2V0YXR0ciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcmVzZXJ2ZWQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3JlcHIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX251bWJlciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfc2VxdWVuY2UqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX21hcHBpbmcqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2hhc2gqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfY2FsbCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9zdHIqLwotICAgIFB5T2JqZWN0X0dlbmVyaWNHZXRBdHRyLC8qdHBfZ2V0YXR0cm8qLwotICAgIFB5T2JqZWN0X0dlbmVyaWNTZXRBdHRyLC8qdHBfc2V0YXR0cm8qLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfYnVmZmVyKi8KLSAgICBQeV9UUEZMQUdTX0RFRkFVTFR8UHlfVFBGTEFHU19CQVNFVFlQRSwgLyp0cF9mbGFncyovCi0gICAgQloyQ29tcF9fZG9jX18sICAgICAgICAgLyp0cF9kb2MqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfdHJhdmVyc2UqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfY2xlYXIqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcmljaGNvbXBhcmUqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfd2Vha2xpc3RvZmZzZXQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXRlciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9pdGVybmV4dCovCi0gICAgQloyQ29tcF9tZXRob2RzLCAgICAgICAgLyp0cF9tZXRob2RzKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX21lbWJlcnMqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0c2V0Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2Jhc2UqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZGljdCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9kZXNjcl9nZXQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZGVzY3Jfc2V0Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2RpY3RvZmZzZXQqLwotICAgIChpbml0cHJvYylCWjJDb21wX2luaXQsIC8qdHBfaW5pdCovCi0gICAgUHlUeXBlX0dlbmVyaWNBbGxvYywgICAgLyp0cF9hbGxvYyovCi0gICAgUHlUeXBlX0dlbmVyaWNOZXcsICAgICAgLyp0cF9uZXcqLwotICAgIFB5T2JqZWN0X0ZyZWUsICAgICAgICAgIC8qdHBfZnJlZSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9pc19nYyovCi19OwotCi0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogTWVtYmVycyBvZiBCWjJEZWNvbXAuICovCi0KLSN1bmRlZiBPRkYKLSNkZWZpbmUgT0ZGKHgpIG9mZnNldG9mKEJaMkRlY29tcE9iamVjdCwgeCkKLQotc3RhdGljIFB5TWVtYmVyRGVmIEJaMkRlY29tcF9tZW1iZXJzW10gPSB7Ci0gICAgeyJ1bnVzZWRfZGF0YSIsIFRfT0JKRUNULCBPRkYodW51c2VkX2RhdGEpLCBSRUFET05MWX0sCi0gICAge05VTEx9ICAgICAgLyogU2VudGluZWwgKi8KLX07Ci0KLQotLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCi0vKiBNZXRob2RzIG9mIEJaMkRlY29tcC4gKi8KLQotUHlEb2NfU1RSVkFSKEJaMkRlY29tcF9kZWNvbXByZXNzX19kb2NfXywKLSJkZWNvbXByZXNzKGRhdGEpIC0+IHN0cmluZ1xuXAotXG5cCi1Qcm92aWRlIG1vcmUgZGF0YSB0byB0aGUgZGVjb21wcmVzc29yIG9iamVjdC4gSXQgd2lsbCByZXR1cm4gY2h1bmtzXG5cCi1vZiBkZWNvbXByZXNzZWQgZGF0YSB3aGVuZXZlciBwb3NzaWJsZS4gSWYgeW91IHRyeSB0byBkZWNvbXByZXNzIGRhdGFcblwKLWFmdGVyIHRoZSBlbmQgb2Ygc3RyZWFtIGlzIGZvdW5kLCBFT0ZFcnJvciB3aWxsIGJlIHJhaXNlZC4gSWYgYW55IGRhdGFcblwKLXdhcyBmb3VuZCBhZnRlciB0aGUgZW5kIG9mIHN0cmVhbSwgaXQnbGwgYmUgaWdub3JlZCBhbmQgc2F2ZWQgaW5cblwKLXVudXNlZF9kYXRhIGF0dHJpYnV0ZS5cblwKLSIpOwotCi1zdGF0aWMgUHlPYmplY3QgKgotQloyRGVjb21wX2RlY29tcHJlc3MoQloyRGVjb21wT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBQeV9idWZmZXIgcGRhdGE7Ci0gICAgY2hhciAqZGF0YTsKLSAgICBpbnQgZGF0YXNpemU7Ci0gICAgaW50IGJ1ZnNpemUgPSBTTUFMTENIVU5LOwotICAgIFBZX0xPTkdfTE9ORyB0b3RhbG91dDsKLSAgICBQeU9iamVjdCAqcmV0ID0gTlVMTDsKLSAgICBiel9zdHJlYW0gKmJ6cyA9ICZzZWxmLT5ienM7Ci0gICAgaW50IGJ6ZXJyb3I7Ci0KLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInkqOmRlY29tcHJlc3MiLCAmcGRhdGEpKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBkYXRhID0gcGRhdGEuYnVmOwotICAgIGRhdGFzaXplID0gcGRhdGEubGVuOwotCi0gICAgQUNRVUlSRV9MT0NLKHNlbGYpOwotICAgIGlmICghc2VsZi0+cnVubmluZykgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfRU9GRXJyb3IsICJlbmQgb2Ygc3RyZWFtIHdhcyAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFscmVhZHkgZm91bmQiKTsKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSAgICByZXQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGJ1ZnNpemUpOwotICAgIGlmICghcmV0KQotICAgICAgICBnb3RvIGVycm9yOwotCi0gICAgYnpzLT5uZXh0X2luID0gZGF0YTsKLSAgICBienMtPmF2YWlsX2luID0gZGF0YXNpemU7Ci0gICAgYnpzLT5uZXh0X291dCA9IEJVRihyZXQpOwotICAgIGJ6cy0+YXZhaWxfb3V0ID0gYnVmc2l6ZTsKLQotICAgIHRvdGFsb3V0ID0gQlpTX1RPVEFMX09VVChienMpOwotCi0gICAgZm9yICg7OykgewotICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIGJ6ZXJyb3IgPSBCWjJfYnpEZWNvbXByZXNzKGJ6cyk7Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgICAgIGlmIChiemVycm9yID09IEJaX1NUUkVBTV9FTkQpIHsKLSAgICAgICAgICAgIGlmIChienMtPmF2YWlsX2luICE9IDApIHsKLSAgICAgICAgICAgICAgICBQeV9ERUNSRUYoc2VsZi0+dW51c2VkX2RhdGEpOwotICAgICAgICAgICAgICAgIHNlbGYtPnVudXNlZF9kYXRhID0KLSAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShienMtPm5leHRfaW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ6cy0+YXZhaWxfaW4pOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgc2VsZi0+cnVubmluZyA9IDA7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgICAgICBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgfQotICAgICAgICBpZiAoYnpzLT5hdmFpbF9pbiA9PSAwKQotICAgICAgICAgICAgYnJlYWs7IC8qIG5vIG1vcmUgaW5wdXQgZGF0YSAqLwotICAgICAgICBpZiAoYnpzLT5hdmFpbF9vdXQgPT0gMCkgewotICAgICAgICAgICAgYnVmc2l6ZSA9IFV0aWxfTmV3QnVmZmVyU2l6ZShidWZzaXplKTsKLSAgICAgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnJldCwgYnVmc2l6ZSkgPCAwKSB7Ci0gICAgICAgICAgICAgICAgQloyX2J6RGVjb21wcmVzc0VuZChienMpOwotICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBienMtPm5leHRfb3V0ID0gQlVGKHJldCk7Ci0gICAgICAgICAgICBienMtPm5leHRfb3V0ID0gQlVGKHJldCkgKyAoQlpTX1RPVEFMX09VVChienMpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLSB0b3RhbG91dCk7Ci0gICAgICAgICAgICBienMtPmF2YWlsX291dCA9IGJ1ZnNpemUgLSAoYnpzLT5uZXh0X291dCAtIEJVRihyZXQpKTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmIChienMtPmF2YWlsX291dCAhPSAwKSB7Ci0gICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUoJnJldCwKLSAgICAgICAgICAgICAgICAgICAgKFB5X3NzaXplX3QpKEJaU19UT1RBTF9PVVQoYnpzKSAtIHRvdGFsb3V0KSkgPCAwKQotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSAgICBSRUxFQVNFX0xPQ0soc2VsZik7Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgIHJldHVybiByZXQ7Ci0KLWVycm9yOgotICAgIFJFTEVBU0VfTE9DSyhzZWxmKTsKLSAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgUHlfWERFQ1JFRihyZXQpOwotICAgIHJldHVybiBOVUxMOwotfQotCi1zdGF0aWMgUHlNZXRob2REZWYgQloyRGVjb21wX21ldGhvZHNbXSA9IHsKLSAgICB7ImRlY29tcHJlc3MiLCAoUHlDRnVuY3Rpb24pQloyRGVjb21wX2RlY29tcHJlc3MsIE1FVEhfVkFSQVJHUywgQloyRGVjb21wX2RlY29tcHJlc3NfX2RvY19ffSwKLSAgICB7TlVMTCwgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAvKiBzZW50aW5lbCAqLwotfTsKLQotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIFNsb3QgZGVmaW5pdGlvbnMgZm9yIEJaMkRlY29tcF9UeXBlLiAqLwotCi1zdGF0aWMgaW50Ci1CWjJEZWNvbXBfaW5pdChCWjJEZWNvbXBPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQotewotICAgIGludCBiemVycm9yOwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICI6QloyRGVjb21wcmVzc29yIikpCi0gICAgICAgIHJldHVybiAtMTsKLQotI2lmZGVmIFdJVEhfVEhSRUFECi0gICAgc2VsZi0+bG9jayA9IFB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKTsKLSAgICBpZiAoIXNlbGYtPmxvY2spIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX01lbW9yeUVycm9yLCAidW5hYmxlIHRvIGFsbG9jYXRlIGxvY2siKTsKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0jZW5kaWYKLQotICAgIHNlbGYtPnVudXNlZF9kYXRhID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgiIiwgMCk7Ci0gICAgaWYgKCFzZWxmLT51bnVzZWRfZGF0YSkKLSAgICAgICAgZ290byBlcnJvcjsKLQotICAgIG1lbXNldCgmc2VsZi0+YnpzLCAwLCBzaXplb2YoYnpfc3RyZWFtKSk7Ci0gICAgYnplcnJvciA9IEJaMl9iekRlY29tcHJlc3NJbml0KCZzZWxmLT5ienMsIDAsIDApOwotICAgIGlmIChiemVycm9yICE9IEJaX09LKSB7Ci0gICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0KLSAgICBzZWxmLT5ydW5uaW5nID0gMTsKLQotICAgIHJldHVybiAwOwotCi1lcnJvcjoKLSNpZmRlZiBXSVRIX1RIUkVBRAotICAgIGlmIChzZWxmLT5sb2NrKSB7Ci0gICAgICAgIFB5VGhyZWFkX2ZyZWVfbG9jayhzZWxmLT5sb2NrKTsKLSAgICAgICAgc2VsZi0+bG9jayA9IE5VTEw7Ci0gICAgfQotI2VuZGlmCi0gICAgUHlfQ0xFQVIoc2VsZi0+dW51c2VkX2RhdGEpOwotICAgIHJldHVybiAtMTsKLX0KLQotc3RhdGljIHZvaWQKLUJaMkRlY29tcF9kZWFsbG9jKEJaMkRlY29tcE9iamVjdCAqc2VsZikKLXsKLSNpZmRlZiBXSVRIX1RIUkVBRAotICAgIGlmIChzZWxmLT5sb2NrKQotICAgICAgICBQeVRocmVhZF9mcmVlX2xvY2soc2VsZi0+bG9jayk7Ci0jZW5kaWYKLSAgICBQeV9YREVDUkVGKHNlbGYtPnVudXNlZF9kYXRhKTsKLSAgICBCWjJfYnpEZWNvbXByZXNzRW5kKCZzZWxmLT5ienMpOwotICAgIFB5X1RZUEUoc2VsZiktPnRwX2ZyZWUoKFB5T2JqZWN0ICopc2VsZik7Ci19Ci0KLQotLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCi0vKiBCWjJEZWNvbXBfVHlwZSBkZWZpbml0aW9uLiAqLwotCi1QeURvY19TVFJWQVIoQloyRGVjb21wX19kb2NfXywKLSJCWjJEZWNvbXByZXNzb3IoKSAtPiBkZWNvbXByZXNzb3Igb2JqZWN0XG5cCi1cblwKLUNyZWF0ZSBhIG5ldyBkZWNvbXByZXNzb3Igb2JqZWN0LiBUaGlzIG9iamVjdCBtYXkgYmUgdXNlZCB0byBkZWNvbXByZXNzXG5cCi1kYXRhIHNlcXVlbnRpYWxseS4gSWYgeW91IHdhbnQgdG8gZGVjb21wcmVzcyBkYXRhIGluIG9uZSBzaG90LCB1c2UgdGhlXG5cCi1kZWNvbXByZXNzKCkgZnVuY3Rpb24gaW5zdGVhZC5cblwKLSIpOwotCi1zdGF0aWMgUHlUeXBlT2JqZWN0IEJaMkRlY29tcF9UeXBlID0gewotICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVChOVUxMLCAwKQotICAgICJiejIuQloyRGVjb21wcmVzc29yIiwgICAgICAvKnRwX25hbWUqLwotICAgIHNpemVvZihCWjJEZWNvbXBPYmplY3QpLCAvKnRwX2Jhc2ljc2l6ZSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXRlbXNpemUqLwotICAgIChkZXN0cnVjdG9yKUJaMkRlY29tcF9kZWFsbG9jLCAvKnRwX2RlYWxsb2MqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3ByaW50Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9nZXRhdHRyKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9zZXRhdHRyKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9yZXNlcnZlZCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcmVwciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfbnVtYmVyKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9hc19zZXF1ZW5jZSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfbWFwcGluZyovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaGFzaCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9jYWxsKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX3N0ciovCi0gICAgUHlPYmplY3RfR2VuZXJpY0dldEF0dHIsLyp0cF9nZXRhdHRybyovCi0gICAgUHlPYmplY3RfR2VuZXJpY1NldEF0dHIsLyp0cF9zZXRhdHRybyovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9hc19idWZmZXIqLwotICAgIFB5X1RQRkxBR1NfREVGQVVMVHxQeV9UUEZMQUdTX0JBU0VUWVBFLCAvKnRwX2ZsYWdzKi8KLSAgICBCWjJEZWNvbXBfX2RvY19fLCAgICAgICAvKnRwX2RvYyovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF90cmF2ZXJzZSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9jbGVhciovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9yaWNoY29tcGFyZSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF93ZWFrbGlzdG9mZnNldCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9pdGVyKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2l0ZXJuZXh0Ki8KLSAgICBCWjJEZWNvbXBfbWV0aG9kcywgICAgICAvKnRwX21ldGhvZHMqLwotICAgIEJaMkRlY29tcF9tZW1iZXJzLCAgICAgIC8qdHBfbWVtYmVycyovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9nZXRzZXQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYmFzZSovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9kaWN0Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKnRwX2Rlc2NyX2dldCovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyp0cF9kZXNjcl9zZXQqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZGljdG9mZnNldCovCi0gICAgKGluaXRwcm9jKUJaMkRlY29tcF9pbml0LCAvKnRwX2luaXQqLwotICAgIFB5VHlwZV9HZW5lcmljQWxsb2MsICAgIC8qdHBfYWxsb2MqLwotICAgIFB5VHlwZV9HZW5lcmljTmV3LCAgICAgIC8qdHBfbmV3Ki8KLSAgICBQeU9iamVjdF9GcmVlLCAgICAgICAgICAvKnRwX2ZyZWUqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qdHBfaXNfZ2MqLwotfTsKLQotCi0vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8KLS8qIE1vZHVsZSBmdW5jdGlvbnMuICovCi0KLVB5RG9jX1NUUlZBUihiejJfY29tcHJlc3NfX2RvY19fLAotImNvbXByZXNzKGRhdGEgWywgY29tcHJlc3NsZXZlbD05XSkgLT4gc3RyaW5nXG5cCi1cblwKLUNvbXByZXNzIGRhdGEgaW4gb25lIHNob3QuIElmIHlvdSB3YW50IHRvIGNvbXByZXNzIGRhdGEgc2VxdWVudGlhbGx5LFxuXAotdXNlIGFuIGluc3RhbmNlIG9mIEJaMkNvbXByZXNzb3IgaW5zdGVhZC4gVGhlIGNvbXByZXNzbGV2ZWwgcGFyYW1ldGVyLCBpZlxuXAotZ2l2ZW4sIG11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAxIGFuZCA5LlxuXAotIik7Ci0KLXN0YXRpYyBQeU9iamVjdCAqCi1iejJfY29tcHJlc3MoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQotewotICAgIGludCBjb21wcmVzc2xldmVsPTk7Ci0gICAgUHlfYnVmZmVyIHBkYXRhOwotICAgIGNoYXIgKmRhdGE7Ci0gICAgaW50IGRhdGFzaXplOwotICAgIGludCBidWZzaXplOwotICAgIFB5T2JqZWN0ICpyZXQgPSBOVUxMOwotICAgIGJ6X3N0cmVhbSBfYnpzOwotICAgIGJ6X3N0cmVhbSAqYnpzID0gJl9ienM7Ci0gICAgaW50IGJ6ZXJyb3I7Ci0gICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJkYXRhIiwgImNvbXByZXNzbGV2ZWwiLCAwfTsKLQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgInkqfGkiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3bGlzdCwgJnBkYXRhLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZjb21wcmVzc2xldmVsKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgZGF0YSA9IHBkYXRhLmJ1ZjsKLSAgICBkYXRhc2l6ZSA9IHBkYXRhLmxlbjsKLQotICAgIGlmIChjb21wcmVzc2xldmVsIDwgMSB8fCBjb21wcmVzc2xldmVsID4gOSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJjb21wcmVzc2xldmVsIG11c3QgYmUgYmV0d2VlbiAxIGFuZCA5Iik7Ci0gICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgLyogQ29uZm9ybWluZyB0byBiejIgbWFudWFsLCB0aGlzIGlzIGxhcmdlIGVub3VnaCB0byBmaXQgY29tcHJlc3NlZAotICAgICAqIGRhdGEgaW4gb25lIHNob3QuIFdlIHdpbGwgY2hlY2sgaXQgbGF0ZXIgYW55d2F5LiAqLwotICAgIGJ1ZnNpemUgPSBkYXRhc2l6ZSArIChkYXRhc2l6ZS8xMDArMSkgKyA2MDA7Ci0KLSAgICByZXQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGJ1ZnNpemUpOwotICAgIGlmICghcmV0KSB7Ci0gICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgbWVtc2V0KGJ6cywgMCwgc2l6ZW9mKGJ6X3N0cmVhbSkpOwotCi0gICAgYnpzLT5uZXh0X2luID0gZGF0YTsKLSAgICBienMtPmF2YWlsX2luID0gZGF0YXNpemU7Ci0gICAgYnpzLT5uZXh0X291dCA9IEJVRihyZXQpOwotICAgIGJ6cy0+YXZhaWxfb3V0ID0gYnVmc2l6ZTsKLQotICAgIGJ6ZXJyb3IgPSBCWjJfYnpDb21wcmVzc0luaXQoYnpzLCBjb21wcmVzc2xldmVsLCAwLCAwKTsKLSAgICBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICBVdGlsX0NhdGNoQloyRXJyb3IoYnplcnJvcik7Ci0gICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICAgICAgUHlfREVDUkVGKHJldCk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQotICAgIGZvciAoOzspIHsKLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBiemVycm9yID0gQloyX2J6Q29tcHJlc3MoYnpzLCBCWl9GSU5JU0gpOwotICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgICAgICBpZiAoYnplcnJvciA9PSBCWl9TVFJFQU1fRU5EKSB7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfSBlbHNlIGlmIChiemVycm9yICE9IEJaX0ZJTklTSF9PSykgewotICAgICAgICAgICAgQloyX2J6Q29tcHJlc3NFbmQoYnpzKTsKLSAgICAgICAgICAgIFV0aWxfQ2F0Y2hCWjJFcnJvcihiemVycm9yKTsKLSAgICAgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXQpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGJ6cy0+YXZhaWxfb3V0ID09IDApIHsKLSAgICAgICAgICAgIGJ1ZnNpemUgPSBVdGlsX05ld0J1ZmZlclNpemUoYnVmc2l6ZSk7Ci0gICAgICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZyZXQsIGJ1ZnNpemUpIDwgMCkgewotICAgICAgICAgICAgICAgIEJaMl9iekNvbXByZXNzRW5kKGJ6cyk7Ci0gICAgICAgICAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYnpzLT5uZXh0X291dCA9IEJVRihyZXQpICsgQlpTX1RPVEFMX09VVChienMpOwotICAgICAgICAgICAgYnpzLT5hdmFpbF9vdXQgPSBidWZzaXplIC0gKGJ6cy0+bmV4dF9vdXQgLSBCVUYocmV0KSk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAoYnpzLT5hdmFpbF9vdXQgIT0gMCkgewotICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZyZXQsIChQeV9zc2l6ZV90KUJaU19UT1RBTF9PVVQoYnpzKSkgPCAwKSB7Ci0gICAgICAgICAgICByZXQgPSBOVUxMOwotICAgICAgICB9Ci0gICAgfQotICAgIEJaMl9iekNvbXByZXNzRW5kKGJ6cyk7Ci0KLSAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgcmV0dXJuIHJldDsKLX0KLQotUHlEb2NfU1RSVkFSKGJ6Ml9kZWNvbXByZXNzX19kb2NfXywKLSJkZWNvbXByZXNzKGRhdGEpIC0+IGRlY29tcHJlc3NlZCBkYXRhXG5cCi1cblwKLURlY29tcHJlc3MgZGF0YSBpbiBvbmUgc2hvdC4gSWYgeW91IHdhbnQgdG8gZGVjb21wcmVzcyBkYXRhIHNlcXVlbnRpYWxseSxcblwKLXVzZSBhbiBpbnN0YW5jZSBvZiBCWjJEZWNvbXByZXNzb3IgaW5zdGVhZC5cblwKLSIpOwotCi1zdGF0aWMgUHlPYmplY3QgKgotYnoyX2RlY29tcHJlc3MoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQotewotICAgIFB5X2J1ZmZlciBwZGF0YTsKLSAgICBjaGFyICpkYXRhOwotICAgIGludCBkYXRhc2l6ZTsKLSAgICBpbnQgYnVmc2l6ZSA9IFNNQUxMQ0hVTks7Ci0gICAgUHlPYmplY3QgKnJldDsKLSAgICBiel9zdHJlYW0gX2J6czsKLSAgICBiel9zdHJlYW0gKmJ6cyA9ICZfYnpzOwotICAgIGludCBiemVycm9yOwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5KjpkZWNvbXByZXNzIiwgJnBkYXRhKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgZGF0YSA9IHBkYXRhLmJ1ZjsKLSAgICBkYXRhc2l6ZSA9IHBkYXRhLmxlbjsKLQotICAgIGlmIChkYXRhc2l6ZSA9PSAwKSB7Ci0gICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBkYXRhKTsKLSAgICAgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoIiIsIDApOwotICAgIH0KLQotICAgIHJldCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgYnVmc2l6ZSk7Ci0gICAgaWYgKCFyZXQpIHsKLSAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0KLSAgICBtZW1zZXQoYnpzLCAwLCBzaXplb2YoYnpfc3RyZWFtKSk7Ci0KLSAgICBienMtPm5leHRfaW4gPSBkYXRhOwotICAgIGJ6cy0+YXZhaWxfaW4gPSBkYXRhc2l6ZTsKLSAgICBienMtPm5leHRfb3V0ID0gQlVGKHJldCk7Ci0gICAgYnpzLT5hdmFpbF9vdXQgPSBidWZzaXplOwotCi0gICAgYnplcnJvciA9IEJaMl9iekRlY29tcHJlc3NJbml0KGJ6cywgMCwgMCk7Ci0gICAgaWYgKGJ6ZXJyb3IgIT0gQlpfT0spIHsKLSAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICBQeV9ERUNSRUYocmV0KTsKLSAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0KLSAgICBmb3IgKDs7KSB7Ci0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgYnplcnJvciA9IEJaMl9iekRlY29tcHJlc3MoYnpzKTsKLSAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgaWYgKGJ6ZXJyb3IgPT0gQlpfU1RSRUFNX0VORCkgewotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0gZWxzZSBpZiAoYnplcnJvciAhPSBCWl9PSykgewotICAgICAgICAgICAgQloyX2J6RGVjb21wcmVzc0VuZChienMpOwotICAgICAgICAgICAgVXRpbF9DYXRjaEJaMkVycm9yKGJ6ZXJyb3IpOwotICAgICAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgICAgICAgICAgUHlfREVDUkVGKHJldCk7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBpZiAoYnpzLT5hdmFpbF9pbiA9PSAwKSB7Ci0gICAgICAgICAgICBCWjJfYnpEZWNvbXByZXNzRW5kKGJ6cyk7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY291bGRuJ3QgZmluZCBlbmQgb2Ygc3RyZWFtIik7Ci0gICAgICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocmV0KTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIGlmIChienMtPmF2YWlsX291dCA9PSAwKSB7Ci0gICAgICAgICAgICBidWZzaXplID0gVXRpbF9OZXdCdWZmZXJTaXplKGJ1ZnNpemUpOwotICAgICAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmV0LCBidWZzaXplKSA8IDApIHsKLSAgICAgICAgICAgICAgICBCWjJfYnpEZWNvbXByZXNzRW5kKGJ6cyk7Ci0gICAgICAgICAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmcGRhdGEpOwotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgYnpzLT5uZXh0X291dCA9IEJVRihyZXQpICsgQlpTX1RPVEFMX09VVChienMpOwotICAgICAgICAgICAgYnpzLT5hdmFpbF9vdXQgPSBidWZzaXplIC0gKGJ6cy0+bmV4dF9vdXQgLSBCVUYocmV0KSk7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBpZiAoYnpzLT5hdmFpbF9vdXQgIT0gMCkgewotICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZyZXQsIChQeV9zc2l6ZV90KUJaU19UT1RBTF9PVVQoYnpzKSkgPCAwKSB7Ci0gICAgICAgICAgICByZXQgPSBOVUxMOwotICAgICAgICB9Ci0gICAgfQotICAgIEJaMl9iekRlY29tcHJlc3NFbmQoYnpzKTsKLSAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7Ci0KLSAgICByZXR1cm4gcmV0OwotfQotCi1zdGF0aWMgUHlNZXRob2REZWYgYnoyX21ldGhvZHNbXSA9IHsKLSAgICB7ImNvbXByZXNzIiwgKFB5Q0Z1bmN0aW9uKSBiejJfY29tcHJlc3MsIE1FVEhfVkFSQVJHU3xNRVRIX0tFWVdPUkRTLAotICAgICAgICBiejJfY29tcHJlc3NfX2RvY19ffSwKLSAgICB7ImRlY29tcHJlc3MiLCAoUHlDRnVuY3Rpb24pIGJ6Ml9kZWNvbXByZXNzLCBNRVRIX1ZBUkFSR1MsCi0gICAgICAgIGJ6Ml9kZWNvbXByZXNzX19kb2NfX30sCi0gICAge05VTEwsICAgICAgICAgICAgICBOVUxMfSAgICAgICAgICAgLyogc2VudGluZWwgKi8KLX07Ci0KLS8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwotLyogSW5pdGlhbGl6YXRpb24gZnVuY3Rpb24uICovCi0KLVB5RG9jX1NUUlZBUihiejJfX2RvY19fLAotIlRoZSBweXRob24gYnoyIG1vZHVsZSBwcm92aWRlcyBhIGNvbXByZWhlbnNpdmUgaW50ZXJmYWNlIGZvclxuXAotdGhlIGJ6MiBjb21wcmVzc2lvbiBsaWJyYXJ5LiBJdCBpbXBsZW1lbnRzIGEgY29tcGxldGUgZmlsZVxuXAotaW50ZXJmYWNlLCBvbmUgc2hvdCAoZGUpY29tcHJlc3Npb24gZnVuY3Rpb25zLCBhbmQgdHlwZXMgZm9yXG5cCi1zZXF1ZW50aWFsIChkZSljb21wcmVzc2lvbi5cblwKLSIpOwotCi0KLXN0YXRpYyBzdHJ1Y3QgUHlNb2R1bGVEZWYgYnoybW9kdWxlID0gewotICAgIFB5TW9kdWxlRGVmX0hFQURfSU5JVCwKLSAgICAiYnoyIiwKLSAgICBiejJfX2RvY19fLAotICAgIC0xLAotICAgIGJ6Ml9tZXRob2RzLAotICAgIE5VTEwsCi0gICAgTlVMTCwKLSAgICBOVUxMLAotICAgIE5VTEwKLX07Ci0KLVB5TU9ESU5JVF9GVU5DCi1QeUluaXRfYnoyKHZvaWQpCi17Ci0gICAgUHlPYmplY3QgKm07Ci0KLSAgICBpZiAoUHlUeXBlX1JlYWR5KCZCWjJGaWxlX1R5cGUpIDwgMCkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaWYgKFB5VHlwZV9SZWFkeSgmQloyQ29tcF9UeXBlKSA8IDApCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmIChQeVR5cGVfUmVhZHkoJkJaMkRlY29tcF9UeXBlKSA8IDApCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgbSA9IFB5TW9kdWxlX0NyZWF0ZSgmYnoybW9kdWxlKTsKLSAgICBpZiAobSA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiX19hdXRob3JfXyIsIFB5VW5pY29kZV9Gcm9tU3RyaW5nKF9fYXV0aG9yX18pKTsKLQotICAgIFB5X0lOQ1JFRigmQloyRmlsZV9UeXBlKTsKLSAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgIkJaMkZpbGUiLCAoUHlPYmplY3QgKikmQloyRmlsZV9UeXBlKTsKLQotICAgIFB5X0lOQ1JFRigmQloyQ29tcF9UeXBlKTsKLSAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgIkJaMkNvbXByZXNzb3IiLCAoUHlPYmplY3QgKikmQloyQ29tcF9UeXBlKTsKLQotICAgIFB5X0lOQ1JFRigmQloyRGVjb21wX1R5cGUpOwotICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiQloyRGVjb21wcmVzc29yIiwgKFB5T2JqZWN0ICopJkJaMkRlY29tcF9UeXBlKTsKLSAgICByZXR1cm4gbTsKLX0KZGlmZiAtLWdpdCBhL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfY24uYyBiL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfY24uYwppbmRleCBhYjRlNjU5Li45ZTllOTZjIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2NuLmMKKysrIGIvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc19jbi5jCkBAIC04NSw3ICs4NSw3IEBACiAgICAgICAgIFRSWU1BUF9ERUMoZ2IyMzEyLCAqKm91dGJ1ZiwgYyBeIDB4ODAsIElOMiBeIDB4ODApIHsKICAgICAgICAgICAgIE5FWFQoMiwgMSkKICAgICAgICAgfQotICAgICAgICBlbHNlIHJldHVybiAyOworICAgICAgICBlbHNlIHJldHVybiAxOwogICAgIH0KIAogICAgIHJldHVybiAwOwpAQCAtMTQxLDcgKzE0MSw3IEBACiAgICAgICAgIFJFUVVJUkVfSU5CVUYoMikKIAogICAgICAgICBHQktfREVDT0RFKGMsIElOMiwgKipvdXRidWYpCi0gICAgICAgIGVsc2UgcmV0dXJuIDI7CisgICAgICAgIGVsc2UgcmV0dXJuIDE7CiAKICAgICAgICAgTkVYVCgyLCAxKQogICAgIH0KQEAgLTI2Nyw3ICsyNjcsNyBAQAogICAgICAgICAgICAgYzMgPSBJTjM7CiAgICAgICAgICAgICBjNCA9IElONDsKICAgICAgICAgICAgIGlmIChjIDwgMHg4MSB8fCBjMyA8IDB4ODEgfHwgYzQgPCAweDMwIHx8IGM0ID4gMHgzOSkKLSAgICAgICAgICAgICAgICByZXR1cm4gNDsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgIGMgLT0gMHg4MTsgIGMyIC09IDB4MzA7CiAgICAgICAgICAgICBjMyAtPSAweDgxOyBjNCAtPSAweDMwOwogCkBAIC0yOTIsMTIgKzI5MiwxMiBAQAogICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICByZXR1cm4gNDsKKyAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9CiAKICAgICAgICAgR0JLX0RFQ09ERShjLCBjMiwgKipvdXRidWYpCiAgICAgICAgIGVsc2UgVFJZTUFQX0RFQyhnYjE4MDMwZXh0LCAqKm91dGJ1ZiwgYywgYzIpOwotICAgICAgICBlbHNlIHJldHVybiAyOworICAgICAgICBlbHNlIHJldHVybiAxOwogCiAgICAgICAgIE5FWFQoMiwgMSkKICAgICB9CkBAIC00MDAsNyArNDAwLDcgQEAKICAgICAgICAgICAgIGVsc2UgaWYgKGMyID09ICdcbicpCiAgICAgICAgICAgICAgICAgOyAvKiBsaW5lLWNvbnRpbnVhdGlvbiAqLwogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgTkVYVCgyLCAwKTsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CkBAIC00MTksNyArNDE5LDcgQEAKICAgICAgICAgICAgICAgICBORVhUKDIsIDEpCiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgIH0KICAgICB9CiAKZGlmZiAtLWdpdCBhL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfaGsuYyBiL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfaGsuYwppbmRleCA1NThhNDJmLi5kM2FkMDRiIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2hrLmMKKysrIGIvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc19oay5jCkBAIC0xNjEsNyArMTYxLDcgQEAKICAgICAgICAgY2FzZSAweDg4NjQ6IFdSSVRFMigweDAwY2EsIDB4MDMwYyk7IGJyZWFrOwogICAgICAgICBjYXNlIDB4ODhhMzogV1JJVEUyKDB4MDBlYSwgMHgwMzA0KTsgYnJlYWs7CiAgICAgICAgIGNhc2UgMHg4OGE1OiBXUklURTIoMHgwMGVhLCAweDAzMGMpOyBicmVhazsKLSAgICAgICAgZGVmYXVsdDogcmV0dXJuIDI7CisgICAgICAgIGRlZmF1bHQ6IHJldHVybiAxOwogICAgICAgICB9CiAKICAgICAgICAgTkVYVCgyLCAyKSAvKiBhbGwgZGVjb2RlZCBjb2RlcG9pbnRzIGFyZSBwYWlycywgYWJvdmUuICovCmRpZmYgLS1naXQgYS9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2lzbzIwMjIuYyBiL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfaXNvMjAyMi5jCmluZGV4IDI1YzFhMzYuLmNiYzE1NDIgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfaXNvMjAyMi5jCisrKyBiL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfaXNvMjAyMi5jCkBAIC0xMjMsNyArMTIzLDcgQEAKIAogQ09ERUNfSU5JVChpc28yMDIyKQogewotICAgIGNvbnN0IHN0cnVjdCBpc28yMDIyX2Rlc2lnbmF0aW9uICpkZXNpZyA9IENPTkZJR19ERVNJR05BVElPTlM7CisgICAgY29uc3Qgc3RydWN0IGlzbzIwMjJfZGVzaWduYXRpb24gKmRlc2lnOwogICAgIGZvciAoZGVzaWcgPSBDT05GSUdfREVTSUdOQVRJT05TOyBkZXNpZy0+bWFyazsgZGVzaWcrKykKICAgICAgICAgaWYgKGRlc2lnLT5pbml0aWFsaXplciAhPSBOVUxMICYmIGRlc2lnLT5pbml0aWFsaXplcigpICE9IDApCiAgICAgICAgICAgICByZXR1cm4gLTE7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2pwLmMgYi9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2pwLmMKaW5kZXggYTA1ZTAxYi4uYTUwMDY5NiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc19qcC5jCisrKyBiL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfanAuYwpAQCAtMTEyLDcgKzExMiw3IEBACiAgICAgICAgIFRSWU1BUF9ERUMoY3A5MzJleHQsICoqb3V0YnVmLCBjLCBjMik7CiAgICAgICAgIGVsc2UgaWYgKChjID49IDB4ODEgJiYgYyA8PSAweDlmKSB8fCAoYyA+PSAweGUwICYmIGMgPD0gMHhlYSkpewogICAgICAgICAgICAgaWYgKGMyIDwgMHg0MCB8fCAoYzIgPiAweDdlICYmIGMyIDwgMHg4MCkgfHwgYzIgPiAweGZjKQotICAgICAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgICAgIHJldHVybiAxOwogCiAgICAgICAgICAgICBjID0gKGMgPCAweGUwID8gYyAtIDB4ODEgOiBjIC0gMHhjMSk7CiAgICAgICAgICAgICBjMiA9IChjMiA8IDB4ODAgPyBjMiAtIDB4NDAgOiBjMiAtIDB4NDEpOwpAQCAtMTIwLDcgKzEyMCw3IEBACiAgICAgICAgICAgICBjMiA9IChjMiA8IDB4NWUgPyBjMiA6IGMyIC0gMHg1ZSkgKyAweDIxOwogCiAgICAgICAgICAgICBUUllNQVBfREVDKGppc3gwMjA4LCAqKm91dGJ1ZiwgYywgYzIpOwotICAgICAgICAgICAgZWxzZSByZXR1cm4gMjsKKyAgICAgICAgICAgIGVsc2UgcmV0dXJuIDE7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAoYyA+PSAweGYwICYmIGMgPD0gMHhmOSkgewogICAgICAgICAgICAgaWYgKChjMiA+PSAweDQwICYmIGMyIDw9IDB4N2UpIHx8CkBAIC0xMjgsMTAgKzEyOCwxMCBAQAogICAgICAgICAgICAgICAgIE9VVDEoMHhlMDAwICsgMTg4ICogKGMgLSAweGYwKSArCiAgICAgICAgICAgICAgICAgICAgICAoYzIgPCAweDgwID8gYzIgLSAweDQwIDogYzIgLSAweDQxKSkKICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQogICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgIHJldHVybiAxOwogCiAgICAgICAgIE5FWFQoMiwgMSkKICAgICB9CkBAIC0yNTYsNyArMjU2LDcgQEAKICAgICAgICAgICAgICAgICBORVhUKDIsIDEpCiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAoYyA9PSAweDhmKSB7CiAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIGMyLCBjMzsKQEAgLTI3NCw3ICsyNzQsNyBAQAogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBUUllNQVBfREVDKGppc3gwMjEyLCAqKm91dGJ1ZiwgYzIsIGMzKSA7Ci0gICAgICAgICAgICBlbHNlIHJldHVybiAzOworICAgICAgICAgICAgZWxzZSByZXR1cm4gMTsKICAgICAgICAgICAgIE5FWFQoMywgMSkKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKQEAgLTMwMCw3ICszMDAsNyBAQAogICAgICAgICAgICAgICAgIE5FWFQoMiwgMikKICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgcmV0dXJuIDI7CisgICAgICAgICAgICBlbHNlIHJldHVybiAxOwogICAgICAgICAgICAgTkVYVCgyLCAxKQogICAgICAgICB9CiAgICAgfQpAQCAtMzg4LDcgKzM4OCw3IEBACiAgICAgICAgICAgICAgICAgTkVYVCgyLCAxKQogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKGMgPT0gMHg4ZikgewogICAgICAgICAgICAgdW5zaWduZWQgY2hhciBjMiwgYzM7CkBAIC00MDEsNyArNDAxLDcgQEAKICAgICAgICAgICAgICAgICBORVhUKDMsIDEpCiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgcmV0dXJuIDM7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIGMyOwpAQCAtNDE3LDcgKzQxNyw3IEBACiAjZW5kaWYKICAgICAgICAgICAgICAgICBUUllNQVBfREVDKGppc3gwMjA4LCAqKm91dGJ1ZiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMgXiAweDgwLCBjMiBeIDB4ODApIDsKLSAgICAgICAgICAgIGVsc2UgcmV0dXJuIDI7CisgICAgICAgICAgICBlbHNlIHJldHVybiAxOwogICAgICAgICAgICAgTkVYVCgyLCAxKQogICAgICAgICB9CiAgICAgfQpAQCAtNTAyLDcgKzUwMiw3IEBACiAgICAgICAgICAgICBSRVFVSVJFX0lOQlVGKDIpCiAgICAgICAgICAgICBjMiA9IElOMjsKICAgICAgICAgICAgIGlmIChjMiA8IDB4NDAgfHwgKGMyID4gMHg3ZSAmJiBjMiA8IDB4ODApIHx8IGMyID4gMHhmYykKLSAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKIAogICAgICAgICAgICAgYzEgPSAoYyA8IDB4ZTAgPyBjIC0gMHg4MSA6IGMgLSAweGMxKTsKICAgICAgICAgICAgIGMyID0gKGMyIDwgMHg4MCA/IGMyIC0gMHg0MCA6IGMyIC0gMHg0MSk7CkBAIC01MjIsMTAgKzUyMiwxMCBAQAogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgcmV0dXJuIDE7CiAKICAgICAgICAgTkVYVCgxLCAxKSAvKiBKSVMgWCAwMjAxICovCiAgICAgfQpAQCAtNjQ1LDcgKzY0NSw3IEBACiAgICAgICAgICAgICBSRVFVSVJFX0lOQlVGKDIpCiAgICAgICAgICAgICBjMiA9IElOMjsKICAgICAgICAgICAgIGlmIChjMiA8IDB4NDAgfHwgKGMyID4gMHg3ZSAmJiBjMiA8IDB4ODApIHx8IGMyID4gMHhmYykKLSAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKIAogICAgICAgICAgICAgYzEgPSAoYyA8IDB4ZTAgPyBjIC0gMHg4MSA6IGMgLSAweGMxKTsKICAgICAgICAgICAgIGMyID0gKGMyIDwgMHg4MCA/IGMyIC0gMHg0MCA6IGMyIC0gMHg0MSk7CkBAIC02NzEsNyArNjcxLDcgQEAKICAgICAgICAgICAgICAgICAgICAgTkVYVF9PVVQoMikKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgTkVYVF9JTigyKQogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSB7IC8qIFBsYW5lIDIgKi8KQEAgLTY4OSwxMyArNjg5LDEzIEBACiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICBORVhUKDIsIDEpCiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQogICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgIHJldHVybiAxOwogCiAgICAgICAgIE5FWFQoMSwgMSkgLyogSklTIFggMDIwMSAqLwogICAgIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3Nfa3IuYyBiL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3Nfa3IuYwppbmRleCA5MjcyZTM2Li5mNTY5N2RkIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX2tyLmMKKysrIGIvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc19rci5jCkBAIC0xMjMsNyArMTIzLDcgQEAKICAgICAgICAgICAgIGlmICgoKmluYnVmKVsyXSAhPSBFVUNLUl9KQU1PX0ZJUlNUQllURSB8fAogICAgICAgICAgICAgICAgICgqaW5idWYpWzRdICE9IEVVQ0tSX0pBTU9fRklSU1RCWVRFIHx8CiAgICAgICAgICAgICAgICAgKCppbmJ1ZilbNl0gIT0gRVVDS1JfSkFNT19GSVJTVEJZVEUpCi0gICAgICAgICAgICAgICAgcmV0dXJuIDg7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAKICAgICAgICAgICAgIGMgPSAoKmluYnVmKVszXTsKICAgICAgICAgICAgIGlmICgweGExIDw9IGMgJiYgYyA8PSAweGJlKQpAQCAtMTQzLDcgKzE0Myw3IEBACiAgICAgICAgICAgICAgICAgam9uZyA9IE5PTkU7CiAKICAgICAgICAgICAgIGlmIChjaG8gPT0gTk9ORSB8fCBqdW5nID09IE5PTkUgfHwgam9uZyA9PSBOT05FKQotICAgICAgICAgICAgICAgIHJldHVybiA4OworICAgICAgICAgICAgICAgIHJldHVybiAxOwogCiAgICAgICAgICAgICBPVVQxKDB4YWMwMCArIGNobyo1ODggKyBqdW5nKjI4ICsgam9uZyk7CiAgICAgICAgICAgICBORVhUKDgsIDEpCkBAIC0xNTIsNyArMTUyLDcgQEAKICAgICAgICAgICAgIE5FWFQoMiwgMSkKICAgICAgICAgfQogICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgIHJldHVybiAxOwogICAgIH0KIAogICAgIHJldHVybiAwOwpAQCAtMjA4LDcgKzIwOCw3IEBACiAgICAgICAgIFJFUVVJUkVfSU5CVUYoMikKICAgICAgICAgVFJZTUFQX0RFQyhrc3gxMDAxLCAqKm91dGJ1ZiwgYyBeIDB4ODAsIElOMiBeIDB4ODApOwogICAgICAgICBlbHNlIFRSWU1BUF9ERUMoY3A5NDlleHQsICoqb3V0YnVmLCBjLCBJTjIpOwotICAgICAgICBlbHNlIHJldHVybiAyOworICAgICAgICBlbHNlIHJldHVybiAxOwogCiAgICAgICAgIE5FWFQoMiwgMSkKICAgICB9CkBAIC0zNzUsNyArMzc1LDcgQEAKICAgICAgICAgICAgIGlfam9uZyA9IGpvaGFiaWR4X2pvbmdzZW9uZ1tjX2pvbmddOwogCiAgICAgICAgICAgICBpZiAoaV9jaG8gPT0gTk9ORSB8fCBpX2p1bmcgPT0gTk9ORSB8fCBpX2pvbmcgPT0gTk9ORSkKLSAgICAgICAgICAgICAgICByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKIAogICAgICAgICAgICAgLyogd2UgZG9uJ3QgdXNlIFUrMTEwMCBoYW5ndWwgamFtbyB5ZXQuICovCiAgICAgICAgICAgICBpZiAoaV9jaG8gPT0gRklMTCkgewpAQCAtMzkxLDcgKzM5MSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBPVVQxKDB4MzEwMCB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgIGpvaGFiamFtb19qdW5nc2VvbmdbY19qdW5nXSkKICAgICAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIGlmIChpX2p1bmcgPT0gRklMTCkgewpAQCAtMzk5LDcgKzM5OSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBPVVQxKDB4MzEwMCB8CiAgICAgICAgICAgICAgICAgICAgICAgICAgIGpvaGFiamFtb19jaG9zZW9uZ1tjX2Nob10pCiAgICAgICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAyOworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICAgT1VUMSgweGFjMDAgKwpAQCAtNDE0LDcgKzQxNCw3IEBACiAgICAgICAgICAgICAgICAgYzIgPCAweDMxIHx8IChjMiA+PSAweDgwICYmIGMyIDwgMHg5MSkgfHwKICAgICAgICAgICAgICAgICAoYzIgJiAweDdmKSA9PSAweDdmIHx8CiAgICAgICAgICAgICAgICAgKGMgPT0gMHhkYSAmJiAoYzIgPj0gMHhhMSAmJiBjMiA8PSAweGQzKSkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIHQxLCB0MjsKIApAQCAtNDI1LDcgKzQyNSw3IEBACiAgICAgICAgICAgICAgICAgdDIgPSAodDIgPCAweDVlID8gdDIgOiB0MiAtIDB4NWUpICsgMHgyMTsKIAogICAgICAgICAgICAgICAgIFRSWU1BUF9ERUMoa3N4MTAwMSwgKipvdXRidWYsIHQxLCB0Mik7Ci0gICAgICAgICAgICAgICAgZWxzZSByZXR1cm4gMjsKKyAgICAgICAgICAgICAgICBlbHNlIHJldHVybiAxOwogICAgICAgICAgICAgICAgIE5FWFQoMiwgMSkKICAgICAgICAgICAgIH0KICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc190dy5jIGIvTW9kdWxlcy9jamtjb2RlY3MvX2NvZGVjc190dy5jCmluZGV4IDM4Y2Y3MjMuLjkxNjI5OGQgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvY2prY29kZWNzL19jb2RlY3NfdHcuYworKysgYi9Nb2R1bGVzL2Nqa2NvZGVjcy9fY29kZWNzX3R3LmMKQEAgLTU1LDcgKzU1LDcgQEAKICAgICAgICAgVFJZTUFQX0RFQyhiaWc1LCAqKm91dGJ1ZiwgYywgSU4yKSB7CiAgICAgICAgICAgICBORVhUKDIsIDEpCiAgICAgICAgIH0KLSAgICAgICAgZWxzZSByZXR1cm4gMjsKKyAgICAgICAgZWxzZSByZXR1cm4gMTsKICAgICB9CiAKICAgICByZXR1cm4gMDsKQEAgLTEwOSw3ICsxMDksNyBAQAogCiAgICAgICAgIFRSWU1BUF9ERUMoY3A5NTBleHQsICoqb3V0YnVmLCBjLCBJTjIpOwogICAgICAgICBlbHNlIFRSWU1BUF9ERUMoYmlnNSwgKipvdXRidWYsIGMsIElOMik7Ci0gICAgICAgIGVsc2UgcmV0dXJuIDI7CisgICAgICAgIGVsc2UgcmV0dXJuIDE7CiAKICAgICAgICAgTkVYVCgyLCAxKQogICAgIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvY2prY29kZWNzL211bHRpYnl0ZWNvZGVjLmMgYi9Nb2R1bGVzL2Nqa2NvZGVjcy9tdWx0aWJ5dGVjb2RlYy5jCmluZGV4IDdiMDRmMDIwLi5hYmFkMjUxIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2Nqa2NvZGVjcy9tdWx0aWJ5dGVjb2RlYy5jCisrKyBiL01vZHVsZXMvY2prY29kZWNzL211bHRpYnl0ZWNvZGVjLmMKQEAgLTQ0MywxMCArNDQzLDEyIEBACiAgICAgICAgIGdvdG8gZXJyb3JleGl0OwogICAgIH0KIAorICAgIGlmIChQeVVuaWNvZGVfQXNVbmljb2RlKHJldHVuaSkgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJvcmV4aXQ7CiAgICAgcmV0dW5pc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShyZXR1bmkpOwogICAgIGlmIChyZXR1bmlzaXplID4gMCkgewogICAgICAgICBSRVFVSVJFX0RFQ09ERUJVRkZFUihidWYsIHJldHVuaXNpemUpOwotICAgICAgICBtZW1jcHkoKGNoYXIgKilidWYtPm91dGJ1ZiwgUHlVbmljb2RlX0FTX0RBVEEocmV0dW5pKSwKKyAgICAgICAgbWVtY3B5KChjaGFyICopYnVmLT5vdXRidWYsIFB5VW5pY29kZV9BU19VTklDT0RFKHJldHVuaSksCiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1bmlzaXplICogUHlfVU5JQ09ERV9TSVpFKTsKICAgICAgICAgYnVmLT5vdXRidWYgKz0gcmV0dW5pc2l6ZTsKICAgICB9CkBAIC00ODMsNiArNDg1LDcgQEAKICAgICAgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgMCk7CiAKICAgICBidWYuZXhjb2JqID0gTlVMTDsKKyAgICBidWYub3V0b2JqID0gTlVMTDsKICAgICBidWYuaW5idWYgPSBidWYuaW5idWZfdG9wID0gKmRhdGE7CiAgICAgYnVmLmluYnVmX2VuZCA9IGJ1Zi5pbmJ1Zl90b3AgKyBkYXRhbGVuOwogCkBAIC01NzMsOCArNTc2LDExIEBACiAgICAgICAgIH0KICAgICB9CiAKLSAgICBkYXRhID0gUHlVbmljb2RlX0FTX1VOSUNPREUoYXJnKTsKLSAgICBkYXRhbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKGFyZyk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKGFyZywgJmRhdGFsZW4pOworICAgIGlmIChkYXRhID09IE5VTEwpIHsKKyAgICAgICAgUHlfWERFQ1JFRih1Y3Z0KTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogCiAgICAgZXJyb3JjYiA9IGludGVybmFsX2Vycm9yX2NhbGxiYWNrKGVycm9ycyk7CiAgICAgaWYgKGVycm9yY2IgPT0gTlVMTCkgewpAQCAtNjI3LDcgKzYzMyw3IEBACiAgICAgaWYgKGRhdGFsZW4gPT0gMCkgewogICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZwZGF0YSk7CiAgICAgICAgIEVSUk9SX0RFQ1JFRihlcnJvcmNiKTsKLSAgICAgICAgcmV0dXJuIG1ha2VfdHVwbGUoUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIDApLCAwKTsKKyAgICAgICAgcmV0dXJuIG1ha2VfdHVwbGUoUHlVbmljb2RlX05ldygwLCAwKSwgMCk7CiAgICAgfQogCiAgICAgYnVmLmV4Y29iaiA9IE5VTEw7CkBAIC02MzcsNiArNjQzLDggQEAKICAgICBpZiAoYnVmLm91dG9iaiA9PSBOVUxMKQogICAgICAgICBnb3RvIGVycm9yZXhpdDsKICAgICBidWYub3V0YnVmID0gUHlVbmljb2RlX0FTX1VOSUNPREUoYnVmLm91dG9iaik7CisgICAgaWYgKGJ1Zi5vdXRidWYgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJvcmV4aXQ7CiAgICAgYnVmLm91dGJ1Zl9lbmQgPSBidWYub3V0YnVmICsgUHlVbmljb2RlX0dFVF9TSVpFKGJ1Zi5vdXRvYmopOwogCiAgICAgaWYgKHNlbGYtPmNvZGVjLT5kZWNpbml0ICE9IE5VTEwgJiYKQEAgLTc0Miw2ICs3NTAsNyBAQAogICAgIFB5T2JqZWN0ICp1Y3Z0LCAqciA9IE5VTEw7CiAgICAgUHlfVU5JQ09ERSAqaW5idWYsICppbmJ1Zl9lbmQsICppbmJ1Zl90bXAgPSBOVUxMOwogICAgIFB5X3NzaXplX3QgZGF0YWxlbiwgb3JpZ3BlbmRpbmc7CisgICAgd2NoYXJfdCAqZGF0YTsKIAogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sodW5pc3RyKSkKICAgICAgICAgdWN2dCA9IE5VTEw7CkBAIC03NTcsNyArNzY2LDkgQEAKICAgICAgICAgfQogICAgIH0KIAotICAgIGRhdGFsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUodW5pc3RyKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUodW5pc3RyLCAmZGF0YWxlbik7CisgICAgaWYgKGRhdGEgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJvcmV4aXQ7CiAgICAgb3JpZ3BlbmRpbmcgPSBjdHgtPnBlbmRpbmdzaXplOwogCiAgICAgaWYgKG9yaWdwZW5kaW5nID4gMCkgewpAQCAtODQ4LDcgKzg1OSw5IEBACiAgICAgICAgIGJ1Zi0+b3V0b2JqID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHNpemUpOwogICAgICAgICBpZiAoYnVmLT5vdXRvYmogPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgYnVmLT5vdXRidWYgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShidWYtPm91dG9iaik7CisgICAgICAgIGJ1Zi0+b3V0YnVmID0gUHlVbmljb2RlX0FzVW5pY29kZShidWYtPm91dG9iaik7CisgICAgICAgIGlmIChidWYtPm91dGJ1ZiA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICBidWYtPm91dGJ1Zl9lbmQgPSBidWYtPm91dGJ1ZiArCiAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShidWYtPm91dG9iaik7CiAgICAgfQpAQCAtOTAwLDExICs5MTMsMTcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBtYmllbmNvZGVyX3Jlc2V0KE11bHRpYnl0ZUluY3JlbWVudGFsRW5jb2Rlck9iamVjdCAqc2VsZikKIHsKLSAgICBpZiAoc2VsZi0+Y29kZWMtPmRlY3Jlc2V0ICE9IE5VTEwgJiYKLSAgICAgICAgc2VsZi0+Y29kZWMtPmRlY3Jlc2V0KCZzZWxmLT5zdGF0ZSwgc2VsZi0+Y29kZWMtPmNvbmZpZykgIT0gMCkKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgLyogTG9uZ2VzdCBvdXRwdXQ6IDQgYnl0ZXMgKGInXHgwRlx4MUYoQicpIHdpdGggSVNPIDIwMjIgKi8KKyAgICB1bnNpZ25lZCBjaGFyIGJ1ZmZlcls0XSwgKm91dGJ1ZjsKKyAgICBQeV9zc2l6ZV90IHI7CisgICAgaWYgKHNlbGYtPmNvZGVjLT5lbmNyZXNldCAhPSBOVUxMKSB7CisgICAgICAgIG91dGJ1ZiA9IGJ1ZmZlcjsKKyAgICAgICAgciA9IHNlbGYtPmNvZGVjLT5lbmNyZXNldCgmc2VsZi0+c3RhdGUsIHNlbGYtPmNvZGVjLT5jb25maWcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm91dGJ1Ziwgc2l6ZW9mKGJ1ZmZlcikpOworICAgICAgICBpZiAociAhPSAwKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogICAgIHNlbGYtPnBlbmRpbmdzaXplID0gMDsKLQogICAgIFB5X1JFVFVSTl9OT05FOwogfQogCkBAIC0xMjQ2LDcgKzEyNjUsNyBAQAogICAgIFB5X3NzaXplX3QgcnNpemUsIGZpbmFsc2l6ZSA9IDA7CiAKICAgICBpZiAoc2l6ZWhpbnQgPT0gMCkKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCAwKTsKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9OZXcoMCwgMCk7CiAKICAgICBidWYub3V0b2JqID0gYnVmLmV4Y29iaiA9IE5VTEw7CiAgICAgY3JlcyA9IE5VTEw7CkBAIC0xNTcyLDEyICsxNTkxLDEzIEBACiAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaXN0cikKIHsKICAgICBQeU9iamVjdCAqc3RyLCAqd3I7CisgICAgX1B5X0lERU5USUZJRVIod3JpdGUpOwogCiAgICAgc3RyID0gZW5jb2Rlcl9lbmNvZGVfc3RhdGVmdWwoU1RBVEVGVUxfRUNUWChzZWxmKSwgdW5pc3RyLCAwKTsKICAgICBpZiAoc3RyID09IE5VTEwpCiAgICAgICAgIHJldHVybiAtMTsKIAotICAgIHdyID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5zdHJlYW0sICJ3cml0ZSIsICJPIiwgc3RyKTsKKyAgICB3ciA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+c3RyZWFtLCAmUHlJZF93cml0ZSwgIk8iLCBzdHIpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIGlmICh3ciA9PSBOVUxMKQogICAgICAgICByZXR1cm4gLTE7CkBAIC0xNjQzLDcgKzE2NjMsOSBAQAogICAgIGFzc2VydChQeUJ5dGVzX0NoZWNrKHB3cnQpKTsKICAgICBpZiAoUHlCeXRlc19TaXplKHB3cnQpID4gMCkgewogICAgICAgICBQeU9iamVjdCAqd3I7Ci0gICAgICAgIHdyID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLT5zdHJlYW0sICJ3cml0ZSIsICJPIiwgcHdydCk7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHdyaXRlKTsKKworICAgICAgICB3ciA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc2VsZi0+c3RyZWFtLCAmUHlJZF93cml0ZSwgIk8iLCBwd3J0KTsKICAgICAgICAgaWYgKHdyID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihwd3J0KTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9lcnJub21vZHVsZS5jIGIvTW9kdWxlcy9lcnJub21vZHVsZS5jCmluZGV4IDg2NzIwYWYuLjg2YjBhMDEgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvZXJybm9tb2R1bGUuYworKysgYi9Nb2R1bGVzL2Vycm5vbW9kdWxlLmMKQEAgLTg0LDYgKzg0LDggQEAKICAgICAgKiBUaGUgbmFtZXMgYW5kIGNvbW1lbnRzIGFyZSBib3Jyb3dlZCBmcm9tIGxpbnV4L2luY2x1ZGUvZXJybm8uaCwKICAgICAgKiB3aGljaCBzaG91bGQgYmUgcHJldHR5IGFsbC1pbmNsdXNpdmUuICBIb3dldmVyLCB0aGUgU29sYXJpcyBzcGVjaWZpYwogICAgICAqIG5hbWVzIGFuZCBjb21tZW50cyBhcmUgYm9ycm93ZWQgZnJvbSBzeXMvZXJybm8uaCBpbiBTb2xhcmlzLgorICAgICAqIE1hY09TWCBzcGVjaWZpYyBuYW1lcyBhbmQgY29tbWVudHMgYXJlIGJvcnJvd2VkIGZyb20gc3lzL2Vycm5vLmggaW4KKyAgICAgKiBNYWNPU1guCiAgICAgICovCiAKICNpZmRlZiBFTk9ERVYKQEAgLTg0OCw2ICs4NTAsNTkgQEAKICAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVOT1RBQ1RJVkUiLCBFTk9UQUNUSVZFLCAiRmFjaWxpdHkgaXMgbm90IGFjdGl2ZSIpOwogI2VuZGlmCiAKKyAgICAvKiBNYWNPU1ggc3BlY2lmaWMgZXJybm9zICovCisjaWZkZWYgRUFVVEgKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVBVVRIIiwgRUFVVEgsICJBdXRoZW50aWNhdGlvbiBlcnJvciIpOworI2VuZGlmCisjaWZkZWYgRUJBREFSQ0gKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVCQURBUkNIIiwgRUJBREFSQ0gsICJCYWQgQ1BVIHR5cGUgaW4gZXhlY3V0YWJsZSIpOworI2VuZGlmCisjaWZkZWYgRUJBREVYRUMKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVCQURFWEVDIiwgRUJBREVYRUMsICJCYWQgZXhlY3V0YWJsZSAob3Igc2hhcmVkIGxpYnJhcnkpIik7CisjZW5kaWYKKyNpZmRlZiBFQkFETUFDSE8KKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVCQURNQUNITyIsIEVCQURNQUNITywgIk1hbGZvcm1lZCBNYWNoLW8gZmlsZSIpOworI2VuZGlmCisjaWZkZWYgRUJBRFJQQworICAgIGluc2NvZGUoZCwgZHMsIGRlLCAiRUJBRFJQQyIsIEVCQURSUEMsICJSUEMgc3RydWN0IGlzIGJhZCIpOworI2VuZGlmCisjaWZkZWYgRURFVkVSUgorICAgIGluc2NvZGUoZCwgZHMsIGRlLCAiRURFVkVSUiIsIEVERVZFUlIsICJEZXZpY2UgZXJyb3IiKTsKKyNlbmRpZgorI2lmZGVmIEVGVFlQRQorICAgIGluc2NvZGUoZCwgZHMsIGRlLCAiRUZUWVBFIiwgRUZUWVBFLCAiSW5hcHByb3ByaWF0ZSBmaWxlIHR5cGUgb3IgZm9ybWF0Iik7CisjZW5kaWYKKyNpZmRlZiBFTkVFREFVVEgKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVORUVEQVVUSCIsIEVORUVEQVVUSCwgIk5lZWQgYXV0aGVudGljYXRvciIpOworI2VuZGlmCisjaWZkZWYgRU5PQVRUUgorICAgIGluc2NvZGUoZCwgZHMsIGRlLCAiRU5PQVRUUiIsIEVOT0FUVFIsICJBdHRyaWJ1dGUgbm90IGZvdW5kIik7CisjZW5kaWYKKyNpZmRlZiBFTk9QT0xJQ1kKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVOT1BPTElDWSIsIEVOT1BPTElDWSwgIlBvbGljeSBub3QgZm91bmQiKTsKKyNlbmRpZgorI2lmZGVmIEVQUk9DTElNCisgICAgaW5zY29kZShkLCBkcywgZGUsICJFUFJPQ0xJTSIsIEVQUk9DTElNLCAiVG9vIG1hbnkgcHJvY2Vzc2VzIik7CisjZW5kaWYKKyNpZmRlZiBFUFJPQ1VOQVZBSUwKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVQUk9DVU5BVkFJTCIsIEVQUk9DVU5BVkFJTCwgIkJhZCBwcm9jZWR1cmUgZm9yIHByb2dyYW0iKTsKKyNlbmRpZgorI2lmZGVmIEVQUk9HTUlTTUFUQ0gKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVQUk9HTUlTTUFUQ0giLCBFUFJPR01JU01BVENILCAiUHJvZ3JhbSB2ZXJzaW9uIHdyb25nIik7CisjZW5kaWYKKyNpZmRlZiBFUFJPR1VOQVZBSUwKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVQUk9HVU5BVkFJTCIsIEVQUk9HVU5BVkFJTCwgIlJQQyBwcm9nLiBub3QgYXZhaWwiKTsKKyNlbmRpZgorI2lmZGVmIEVQV1JPRkYKKyAgICBpbnNjb2RlKGQsIGRzLCBkZSwgIkVQV1JPRkYiLCBFUFdST0ZGLCAiRGV2aWNlIHBvd2VyIGlzIG9mZiIpOworI2VuZGlmCisjaWZkZWYgRVJQQ01JU01BVENICisgICAgaW5zY29kZShkLCBkcywgZGUsICJFUlBDTUlTTUFUQ0giLCBFUlBDTUlTTUFUQ0gsICJSUEMgdmVyc2lvbiB3cm9uZyIpOworI2VuZGlmCisjaWZkZWYgRVNITElCVkVSUworICAgIGluc2NvZGUoZCwgZHMsIGRlLCAiRVNITElCVkVSUyIsIEVTSExJQlZFUlMsICJTaGFyZWQgbGlicmFyeSB2ZXJzaW9uIG1pc21hdGNoIik7CisjZW5kaWYKKwogICAgIFB5X0RFQ1JFRihkZSk7CiAgICAgcmV0dXJuIG07CiB9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL2ZhdWx0aGFuZGxlci5jIGIvTW9kdWxlcy9mYXVsdGhhbmRsZXIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMThiYmJjCi0tLSAvZGV2L251bGwKKysrIGIvTW9kdWxlcy9mYXVsdGhhbmRsZXIuYwpAQCAtMCwwICsxLDEzMzIgQEAKKyNpbmNsdWRlICJQeXRob24uaCIKKyNpbmNsdWRlICJweXRocmVhZC5oIgorI2luY2x1ZGUgPHNpZ25hbC5oPgorI2luY2x1ZGUgPG9iamVjdC5oPgorI2luY2x1ZGUgPGZyYW1lb2JqZWN0Lmg+CisjaW5jbHVkZSA8c2lnbmFsLmg+CisjaWYgZGVmaW5lZChIQVZFX1BUSFJFQURfU0lHTUFTSykgJiYgIWRlZmluZWQoSEFWRV9CUk9LRU5fUFRIUkVBRF9TSUdNQVNLKQorI2luY2x1ZGUgPHB0aHJlYWQuaD4KKyNlbmRpZgorCisvKiBBbGxvY2F0ZSBhdCBtYXhpbXVtIDEwMCBNQiBvZiB0aGUgc3RhY2sgdG8gcmFpc2UgdGhlIHN0YWNrIG92ZXJmbG93ICovCisjZGVmaW5lIFNUQUNLX09WRVJGTE9XX01BWF9TSVpFICgxMDAqMTAyNCoxMDI0KQorCisjaWZkZWYgV0lUSF9USFJFQUQKKyMgIGRlZmluZSBGQVVMVEhBTkRMRVJfTEFURVIKKyMgIGRlZmluZSBGQVVMVEhBTkRMRVJfV0FUQ0hET0cKKyNlbmRpZgorCisjaWZuZGVmIE1TX1dJTkRPV1MKKyAgIC8qIHJlZ2lzdGVyKCkgaXMgdXNlbGVzcyBvbiBXaW5kb3dzLCBiZWNhdXNlIG9ubHkgU0lHU0VHViwgU0lHQUJSVCBhbmQKKyAgICAgIFNJR0lMTCBjYW4gYmUgaGFuZGxlZCBieSB0aGUgcHJvY2VzcywgYW5kIHRoZXNlIHNpZ25hbHMgY2FuIG9ubHkgYmUgdXNlZAorICAgICAgd2l0aCBlbmFibGUoKSwgbm90IHVzaW5nIHJlZ2lzdGVyKCkgKi8KKyMgIGRlZmluZSBGQVVMVEhBTkRMRVJfVVNFUgorI2VuZGlmCisKKyNkZWZpbmUgUFVUUyhmZCwgc3RyKSB3cml0ZShmZCwgc3RyLCBzdHJsZW4oc3RyKSkKKworI2lmZGVmIEhBVkVfU0lHQUNUSU9OCit0eXBlZGVmIHN0cnVjdCBzaWdhY3Rpb24gX1B5X3NpZ2hhbmRsZXJfdDsKKyNlbHNlCit0eXBlZGVmIFB5T1Nfc2lnaGFuZGxlcl90IF9QeV9zaWdoYW5kbGVyX3Q7CisjZW5kaWYKKwordHlwZWRlZiBzdHJ1Y3QgeworICAgIGludCBzaWdudW07CisgICAgaW50IGVuYWJsZWQ7CisgICAgY29uc3QgY2hhciogbmFtZTsKKyAgICBfUHlfc2lnaGFuZGxlcl90IHByZXZpb3VzOworICAgIGludCBhbGxfdGhyZWFkczsKK30gZmF1bHRfaGFuZGxlcl90OworCitzdGF0aWMgc3RydWN0IHsKKyAgICBpbnQgZW5hYmxlZDsKKyAgICBQeU9iamVjdCAqZmlsZTsKKyAgICBpbnQgZmQ7CisgICAgaW50IGFsbF90aHJlYWRzOworICAgIFB5SW50ZXJwcmV0ZXJTdGF0ZSAqaW50ZXJwOworfSBmYXRhbF9lcnJvciA9IHswLCBOVUxMLCAtMSwgMH07CisKKyNpZmRlZiBGQVVMVEhBTkRMRVJfTEFURVIKK3N0YXRpYyBzdHJ1Y3QgeworICAgIFB5T2JqZWN0ICpmaWxlOworICAgIGludCBmZDsKKyAgICBQWV9USU1FT1VUX1QgdGltZW91dF91czsgICAvKiB0aW1lb3V0IGluIG1pY3Jvc2Vjb25kcyAqLworICAgIGludCByZXBlYXQ7CisgICAgUHlJbnRlcnByZXRlclN0YXRlICppbnRlcnA7CisgICAgaW50IGV4aXQ7CisgICAgY2hhciAqaGVhZGVyOworICAgIHNpemVfdCBoZWFkZXJfbGVuOworICAgIC8qIFRoZSBtYWluIHRocmVhZCBhbHdheXMgaG9sZHMgdGhpcyBsb2NrLiBJdCBpcyBvbmx5IHJlbGVhc2VkIHdoZW4KKyAgICAgICBmYXVsdGhhbmRsZXJfdGhyZWFkKCkgaXMgaW50ZXJydXB0ZWQgYmVmb3JlIHRoaXMgdGhyZWFkIGV4aXRzLCBvciBhdAorICAgICAgIFB5dGhvbiBleGl0LiAqLworICAgIFB5VGhyZWFkX3R5cGVfbG9jayBjYW5jZWxfZXZlbnQ7CisgICAgLyogcmVsZWFzZWQgYnkgY2hpbGQgdGhyZWFkIHdoZW4gam9pbmVkICovCisgICAgUHlUaHJlYWRfdHlwZV9sb2NrIHJ1bm5pbmc7Cit9IHRocmVhZDsKKyNlbmRpZgorCisjaWZkZWYgRkFVTFRIQU5ETEVSX1dBVENIRE9HCitzdGF0aWMgc3RydWN0IHsKKyAgICBpbnQgcmZkOworICAgIGludCB3ZmQ7CisgICAgUFlfVElNRU9VVF9UIHBlcmlvZF91czsgICAvKiBwZXJpb2QgaW4gbWljcm9zZWNvbmRzICovCisgICAgLyogVGhlIG1haW4gdGhyZWFkIGFsd2F5cyBob2xkcyB0aGlzIGxvY2suIEl0IGlzIG9ubHkgcmVsZWFzZWQgd2hlbgorICAgICAgIGZhdWx0aGFuZGxlcl93YXRjaGRvZygpIGlzIGludGVycnVwdGVkIGJlZm9yZSB0aGlzIHRocmVhZCBleGl0cywgb3IgYXQKKyAgICAgICBQeXRob24gZXhpdC4gKi8KKyAgICBQeVRocmVhZF90eXBlX2xvY2sgY2FuY2VsX2V2ZW50OworICAgIC8qIHJlbGVhc2VkIGJ5IGNoaWxkIHRocmVhZCB3aGVuIGpvaW5lZCAqLworICAgIFB5VGhyZWFkX3R5cGVfbG9jayBydW5uaW5nOworfSB3YXRjaGRvZzsKKyNlbmRpZgorCisjaWZkZWYgRkFVTFRIQU5ETEVSX1VTRVIKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBpbnQgZW5hYmxlZDsKKyAgICBQeU9iamVjdCAqZmlsZTsKKyAgICBpbnQgZmQ7CisgICAgaW50IGFsbF90aHJlYWRzOworICAgIGludCBjaGFpbjsKKyAgICBfUHlfc2lnaGFuZGxlcl90IHByZXZpb3VzOworICAgIFB5SW50ZXJwcmV0ZXJTdGF0ZSAqaW50ZXJwOworfSB1c2VyX3NpZ25hbF90OworCitzdGF0aWMgdXNlcl9zaWduYWxfdCAqdXNlcl9zaWduYWxzOworCisvKiB0aGUgZm9sbG93aW5nIG1hY3JvcyBjb21lIGZyb20gUHl0aG9uOiBNb2R1bGVzL3NpZ25hbG1vZHVsZS5jICovCisjaWYgZGVmaW5lZChQWU9TX09TMikgJiYgIWRlZmluZWQoUFlDQ19HQ0MpCisjZGVmaW5lIE5TSUcgMTIKKyNlbmRpZgorI2lmbmRlZiBOU0lHCisjIGlmIGRlZmluZWQoX05TSUcpCisjICBkZWZpbmUgTlNJRyBfTlNJRyAgICAgICAgICAgIC8qIEZvciBCU0QvU3lzViAqLworIyBlbGlmIGRlZmluZWQoX1NJR01BWCkKKyMgIGRlZmluZSBOU0lHIChfU0lHTUFYICsgMSkgICAgLyogRm9yIFFOWCAqLworIyBlbGlmIGRlZmluZWQoU0lHTUFYKQorIyAgZGVmaW5lIE5TSUcgKFNJR01BWCArIDEpICAgICAvKiBGb3IgZGpncHAgKi8KKyMgZWxzZQorIyAgZGVmaW5lIE5TSUcgNjQgICAgICAgICAgICAgICAvKiBVc2UgYSByZWFzb25hYmxlIGRlZmF1bHQgdmFsdWUgKi8KKyMgZW5kaWYKKyNlbmRpZgorCitzdGF0aWMgdm9pZCBmYXVsdGhhbmRsZXJfdXNlcihpbnQgc2lnbnVtKTsKKyNlbmRpZiAvKiBGQVVMVEhBTkRMRVJfVVNFUiAqLworCisKK3N0YXRpYyBmYXVsdF9oYW5kbGVyX3QgZmF1bHRoYW5kbGVyX2hhbmRsZXJzW10gPSB7CisjaWZkZWYgU0lHQlVTCisgICAge1NJR0JVUywgMCwgIkJ1cyBlcnJvciIsIH0sCisjZW5kaWYKKyNpZmRlZiBTSUdJTEwKKyAgICB7U0lHSUxMLCAwLCAiSWxsZWdhbCBpbnN0cnVjdGlvbiIsIH0sCisjZW5kaWYKKyAgICB7U0lHRlBFLCAwLCAiRmxvYXRpbmcgcG9pbnQgZXhjZXB0aW9uIiwgfSwKKyAgICB7U0lHQUJSVCwgMCwgIkFib3J0ZWQiLCB9LAorICAgIC8qIGRlZmluZSBTSUdTRUdWIGF0IHRoZSBlbmQgdG8gbWFrZSBpdCB0aGUgZGVmYXVsdCBjaG9pY2UgaWYgc2VhcmNoaW5nIHRoZQorICAgICAgIGhhbmRsZXIgZmFpbHMgaW4gZmF1bHRoYW5kbGVyX2ZhdGFsX2Vycm9yKCkgKi8KKyAgICB7U0lHU0VHViwgMCwgIlNlZ21lbnRhdGlvbiBmYXVsdCIsIH0KK307CitzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBmYXVsdGhhbmRsZXJfbnNpZ25hbHMgPSBcCisgICAgUHlfQVJSQVlfTEVOR1RIKGZhdWx0aGFuZGxlcl9oYW5kbGVycyk7CisKKyNpZmRlZiBIQVZFX1NJR0FMVFNUQUNLCitzdGF0aWMgc3RhY2tfdCBzdGFjazsKKyNlbmRpZgorCisKKy8qIEdldCB0aGUgZmlsZSBkZXNjcmlwdG9yIG9mIGEgZmlsZSBieSBjYWxsaW5nIGl0cyBmaWxlbm8oKSBtZXRob2QgYW5kIHRoZW4KKyAgIGNhbGwgaXRzIGZsdXNoKCkgbWV0aG9kLgorCisgICBJZiBmaWxlIGlzIE5VTEwgb3IgUHlfTm9uZSwgdXNlIHN5cy5zdGRlcnIgYXMgdGhlIG5ldyBmaWxlLgorCisgICBPbiBzdWNjZXNzLCByZXR1cm4gdGhlIG5ldyBmaWxlIGFuZCB3cml0ZSB0aGUgZmlsZSBkZXNjcmlwdG9yIGludG8gKnBfZmQuCisgICBPbiBlcnJvciwgcmV0dXJuIE5VTEwuICovCisKK3N0YXRpYyBQeU9iamVjdCoKK2ZhdWx0aGFuZGxlcl9nZXRfZmlsZW5vKFB5T2JqZWN0ICpmaWxlLCBpbnQgKnBfZmQpCit7CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihmaWxlbm8pOworICAgIF9QeV9JREVOVElGSUVSKGZsdXNoKTsKKyAgICBsb25nIGZkX2xvbmc7CisgICAgaW50IGZkOworCisgICAgaWYgKGZpbGUgPT0gTlVMTCB8fCBmaWxlID09IFB5X05vbmUpIHsKKyAgICAgICAgZmlsZSA9IFB5U3lzX0dldE9iamVjdCgic3RkZXJyIik7CisgICAgICAgIGlmIChmaWxlID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsICJ1bmFibGUgdG8gZ2V0IHN5cy5zdGRlcnIiKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgfQorCisgICAgcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmaWxlLCAmUHlJZF9maWxlbm8sICIiKTsKKyAgICBpZiAocmVzdWx0ID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgZmQgPSAtMTsKKyAgICBpZiAoUHlMb25nX0NoZWNrKHJlc3VsdCkpIHsKKyAgICAgICAgZmRfbG9uZyA9IFB5TG9uZ19Bc0xvbmcocmVzdWx0KTsKKyAgICAgICAgaWYgKDAgPD0gZmRfbG9uZyAmJiBmZF9sb25nIDwgSU5UX01BWCkKKyAgICAgICAgICAgIGZkID0gKGludClmZF9sb25nOworICAgIH0KKyAgICBQeV9ERUNSRUYocmVzdWx0KTsKKworICAgIGlmIChmZCA9PSAtMSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgImZpbGUuZmlsZW5vKCkgaXMgbm90IGEgdmFsaWQgZmlsZSBkZXNjcmlwdG9yIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZmlsZSwgJlB5SWRfZmx1c2gsICIiKTsKKyAgICBpZiAocmVzdWx0ICE9IE5VTEwpCisgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOworICAgIGVsc2UgeworICAgICAgICAvKiBpZ25vcmUgZmx1c2goKSBlcnJvciAqLworICAgICAgICBQeUVycl9DbGVhcigpOworICAgIH0KKyAgICAqcF9mZCA9IGZkOworICAgIHJldHVybiBmaWxlOworfQorCisvKiBHZXQgdGhlIHN0YXRlIG9mIHRoZSBjdXJyZW50IHRocmVhZDogb25seSBjYWxsIHRoaXMgZnVuY3Rpb24gaWYgdGhlIGN1cnJlbnQKKyAgIHRocmVhZCBob2xkcyB0aGUgR0lMLiBSYWlzZSBhbiBleGNlcHRpb24gb24gZXJyb3IuICovCitzdGF0aWMgUHlUaHJlYWRTdGF0ZSoKK2dldF90aHJlYWRfc3RhdGUodm9pZCkKK3sKKyAgICBQeVRocmVhZFN0YXRlICp0c3RhdGUgPSBQeVRocmVhZFN0YXRlX0dldCgpOworICAgIGlmICh0c3RhdGUgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgInVuYWJsZSB0byBnZXQgdGhlIGN1cnJlbnQgdGhyZWFkIHN0YXRlIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICByZXR1cm4gdHN0YXRlOworfQorCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfZHVtcF90cmFjZWJhY2tfcHkoUHlPYmplY3QgKnNlbGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCit7CisgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJmaWxlIiwgImFsbF90aHJlYWRzIiwgTlVMTH07CisgICAgUHlPYmplY3QgKmZpbGUgPSBOVUxMOworICAgIGludCBhbGxfdGhyZWFkcyA9IDE7CisgICAgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlOworICAgIGNvbnN0IGNoYXIgKmVycm1zZzsKKyAgICBpbnQgZmQ7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsCisgICAgICAgICJ8T2k6ZHVtcF90cmFjZWJhY2siLCBrd2xpc3QsCisgICAgICAgICZmaWxlLCAmYWxsX3RocmVhZHMpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGZpbGUgPSBmYXVsdGhhbmRsZXJfZ2V0X2ZpbGVubyhmaWxlLCAmZmQpOworICAgIGlmIChmaWxlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgdHN0YXRlID0gZ2V0X3RocmVhZF9zdGF0ZSgpOworICAgIGlmICh0c3RhdGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoYWxsX3RocmVhZHMpIHsKKyAgICAgICAgZXJybXNnID0gX1B5X0R1bXBUcmFjZWJhY2tUaHJlYWRzKGZkLCB0c3RhdGUtPmludGVycCwgdHN0YXRlKTsKKyAgICAgICAgaWYgKGVycm1zZyAhPSBOVUxMKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLCBlcnJtc2cpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIF9QeV9EdW1wVHJhY2ViYWNrKGZkLCB0c3RhdGUpOworICAgIH0KKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworCisvKiBIYW5kbGVyIGZvciBTSUdTRUdWLCBTSUdGUEUsIFNJR0FCUlQsIFNJR0JVUyBhbmQgU0lHSUxMIHNpZ25hbHMuCisKKyAgIERpc3BsYXkgdGhlIGN1cnJlbnQgUHl0aG9uIHRyYWNlYmFjaywgcmVzdG9yZSB0aGUgcHJldmlvdXMgaGFuZGxlciBhbmQgY2FsbAorICAgdGhlIHByZXZpb3VzIGhhbmRsZXIuCisKKyAgIE9uIFdpbmRvd3MsIGRvbid0IGV4cGxpY2l0bHkgY2FsbCB0aGUgcHJldmlvdXMgaGFuZGxlciwgYmVjYXVzZSB0aGUgV2luZG93cworICAgc2lnbmFsIGhhbmRsZXIgd291bGQgbm90IGJlIGNhbGxlZCAoZm9yIGFuIHVua25vd24gcmVhc29uKS4gVGhlIGV4ZWN1dGlvbiBvZgorICAgdGhlIHByb2dyYW0gY29udGludWVzIGF0IGZhdWx0aGFuZGxlcl9mYXRhbF9lcnJvcigpIGV4aXQsIGJ1dCB0aGUgc2FtZQorICAgaW5zdHJ1Y3Rpb24gd2lsbCByYWlzZSB0aGUgc2FtZSBmYXVsdCAoc2lnbmFsKSwgYW5kIHNvIHRoZSBwcmV2aW91cyBoYW5kbGVyCisgICB3aWxsIGJlIGNhbGxlZC4KKworICAgVGhpcyBmdW5jdGlvbiBpcyBzaWduYWwtc2FmZSBhbmQgc2hvdWxkIG9ubHkgY2FsbCBzaWduYWwtc2FmZSBmdW5jdGlvbnMuICovCisKK3N0YXRpYyB2b2lkCitmYXVsdGhhbmRsZXJfZmF0YWxfZXJyb3IoaW50IHNpZ251bSkKK3sKKyAgICBjb25zdCBpbnQgZmQgPSBmYXRhbF9lcnJvci5mZDsKKyAgICB1bnNpZ25lZCBpbnQgaTsKKyAgICBmYXVsdF9oYW5kbGVyX3QgKmhhbmRsZXIgPSBOVUxMOworICAgIFB5VGhyZWFkU3RhdGUgKnRzdGF0ZTsKKyAgICBpbnQgc2F2ZV9lcnJubyA9IGVycm5vOworCisgICAgaWYgKCFmYXRhbF9lcnJvci5lbmFibGVkKQorICAgICAgICByZXR1cm47CisKKyAgICBmb3IgKGk9MDsgaSA8IGZhdWx0aGFuZGxlcl9uc2lnbmFsczsgaSsrKSB7CisgICAgICAgIGhhbmRsZXIgPSAmZmF1bHRoYW5kbGVyX2hhbmRsZXJzW2ldOworICAgICAgICBpZiAoaGFuZGxlci0+c2lnbnVtID09IHNpZ251bSkKKyAgICAgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBpZiAoaGFuZGxlciA9PSBOVUxMKSB7CisgICAgICAgIC8qIGZhdWx0aGFuZGxlcl9uc2lnbmFscyA9PSAwICh1bmxpa2VseSkgKi8KKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIC8qIHJlc3RvcmUgdGhlIHByZXZpb3VzIGhhbmRsZXIgKi8KKyNpZmRlZiBIQVZFX1NJR0FDVElPTgorICAgICh2b2lkKXNpZ2FjdGlvbihzaWdudW0sICZoYW5kbGVyLT5wcmV2aW91cywgTlVMTCk7CisjZWxzZQorICAgICh2b2lkKXNpZ25hbChzaWdudW0sIGhhbmRsZXItPnByZXZpb3VzKTsKKyNlbmRpZgorICAgIGhhbmRsZXItPmVuYWJsZWQgPSAwOworCisgICAgUFVUUyhmZCwgIkZhdGFsIFB5dGhvbiBlcnJvcjogIik7CisgICAgUFVUUyhmZCwgaGFuZGxlci0+bmFtZSk7CisgICAgUFVUUyhmZCwgIlxuXG4iKTsKKworI2lmZGVmIFdJVEhfVEhSRUFECisgICAgLyogU0lHU0VHViwgU0lHRlBFLCBTSUdBQlJULCBTSUdCVVMgYW5kIFNJR0lMTCBhcmUgc3luY2hyb25vdXMgc2lnbmFscyBhbmQKKyAgICAgICBhcmUgdGh1cyBkZWxpdmVyZWQgdG8gdGhlIHRocmVhZCB0aGF0IGNhdXNlZCB0aGUgZmF1bHQuIEdldCB0aGUgUHl0aG9uCisgICAgICAgdGhyZWFkIHN0YXRlIG9mIHRoZSBjdXJyZW50IHRocmVhZC4KKworICAgICAgIFB5VGhyZWFkU3RhdGVfR2V0KCkgZG9lc24ndCBnaXZlIHRoZSBzdGF0ZSBvZiB0aGUgdGhyZWFkIHRoYXQgY2F1c2VkIHRoZQorICAgICAgIGZhdWx0IGlmIHRoZSB0aHJlYWQgcmVsZWFzZWQgdGhlIEdJTCwgYW5kIHNvIHRoaXMgZnVuY3Rpb24gY2Fubm90IGJlCisgICAgICAgdXNlZC4gUmVhZCB0aGUgdGhyZWFkIGxvY2FsIHN0b3JhZ2UgKFRMUykgaW5zdGVhZDogY2FsbAorICAgICAgIFB5R0lMU3RhdGVfR2V0VGhpc1RocmVhZFN0YXRlKCkuICovCisgICAgdHN0YXRlID0gUHlHSUxTdGF0ZV9HZXRUaGlzVGhyZWFkU3RhdGUoKTsKKyNlbHNlCisgICAgdHN0YXRlID0gUHlUaHJlYWRTdGF0ZV9HZXQoKTsKKyNlbmRpZgorCisgICAgaWYgKGZhdGFsX2Vycm9yLmFsbF90aHJlYWRzKQorICAgICAgICBfUHlfRHVtcFRyYWNlYmFja1RocmVhZHMoZmQsIGZhdGFsX2Vycm9yLmludGVycCwgdHN0YXRlKTsKKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKHRzdGF0ZSAhPSBOVUxMKQorICAgICAgICAgICAgX1B5X0R1bXBUcmFjZWJhY2soZmQsIHRzdGF0ZSk7CisgICAgfQorCisgICAgZXJybm8gPSBzYXZlX2Vycm5vOworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICBpZiAoc2lnbnVtID09IFNJR1NFR1YpIHsKKyAgICAgICAgLyogZG9uJ3QgZXhwbGljaXRseSBjYWxsIHRoZSBwcmV2aW91cyBoYW5kbGVyIGZvciBTSUdTRUdWIGluIHRoaXMgc2lnbmFsCisgICAgICAgICAgIGhhbmRsZXIsIGJlY2F1c2UgdGhlIFdpbmRvd3Mgc2lnbmFsIGhhbmRsZXIgd291bGQgbm90IGJlIGNhbGxlZCAqLworICAgICAgICByZXR1cm47CisgICAgfQorI2VuZGlmCisgICAgLyogY2FsbCB0aGUgcHJldmlvdXMgc2lnbmFsIGhhbmRsZXI6IGl0IGlzIGNhbGxlZCBpbW1lZGlhdGx5IGlmIHdlIHVzZQorICAgICAgIHNpZ2FjdGlvbigpIHRoYW5rcyB0byBTQV9OT0RFRkVSIGZsYWcsIG90aGVyd2lzZSBpdCBpcyBkZWZlcnJlZCAqLworICAgIHJhaXNlKHNpZ251bSk7Cit9CisKKy8qIEluc3RhbGwgdGhlIGhhbmRsZXIgZm9yIGZhdGFsIHNpZ25hbHMsIGZhdWx0aGFuZGxlcl9mYXRhbF9lcnJvcigpLiAqLworCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfZW5hYmxlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKK3sKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7ImZpbGUiLCAiYWxsX3RocmVhZHMiLCBOVUxMfTsKKyAgICBQeU9iamVjdCAqZmlsZSA9IE5VTEw7CisgICAgaW50IGFsbF90aHJlYWRzID0gMTsKKyAgICB1bnNpZ25lZCBpbnQgaTsKKyAgICBmYXVsdF9oYW5kbGVyX3QgKmhhbmRsZXI7CisjaWZkZWYgSEFWRV9TSUdBQ1RJT04KKyAgICBzdHJ1Y3Qgc2lnYWN0aW9uIGFjdGlvbjsKKyNlbmRpZgorICAgIGludCBlcnI7CisgICAgaW50IGZkOworICAgIFB5VGhyZWFkU3RhdGUgKnRzdGF0ZTsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywKKyAgICAgICAgInxPaTplbmFibGUiLCBrd2xpc3QsICZmaWxlLCAmYWxsX3RocmVhZHMpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGZpbGUgPSBmYXVsdGhhbmRsZXJfZ2V0X2ZpbGVubyhmaWxlLCAmZmQpOworICAgIGlmIChmaWxlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgdHN0YXRlID0gZ2V0X3RocmVhZF9zdGF0ZSgpOworICAgIGlmICh0c3RhdGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9YREVDUkVGKGZhdGFsX2Vycm9yLmZpbGUpOworICAgIFB5X0lOQ1JFRihmaWxlKTsKKyAgICBmYXRhbF9lcnJvci5maWxlID0gZmlsZTsKKyAgICBmYXRhbF9lcnJvci5mZCA9IGZkOworICAgIGZhdGFsX2Vycm9yLmFsbF90aHJlYWRzID0gYWxsX3RocmVhZHM7CisgICAgZmF0YWxfZXJyb3IuaW50ZXJwID0gdHN0YXRlLT5pbnRlcnA7CisKKyAgICBpZiAoIWZhdGFsX2Vycm9yLmVuYWJsZWQpIHsKKyAgICAgICAgZmF0YWxfZXJyb3IuZW5hYmxlZCA9IDE7CisKKyAgICAgICAgZm9yIChpPTA7IGkgPCBmYXVsdGhhbmRsZXJfbnNpZ25hbHM7IGkrKykgeworICAgICAgICAgICAgaGFuZGxlciA9ICZmYXVsdGhhbmRsZXJfaGFuZGxlcnNbaV07CisjaWZkZWYgSEFWRV9TSUdBQ1RJT04KKyAgICAgICAgICAgIGFjdGlvbi5zYV9oYW5kbGVyID0gZmF1bHRoYW5kbGVyX2ZhdGFsX2Vycm9yOworICAgICAgICAgICAgc2lnZW1wdHlzZXQoJmFjdGlvbi5zYV9tYXNrKTsKKyAgICAgICAgICAgIC8qIERvIG5vdCBwcmV2ZW50IHRoZSBzaWduYWwgZnJvbSBiZWluZyByZWNlaXZlZCBmcm9tIHdpdGhpbgorICAgICAgICAgICAgICAgaXRzIG93biBzaWduYWwgaGFuZGxlciAqLworICAgICAgICAgICAgYWN0aW9uLnNhX2ZsYWdzID0gU0FfTk9ERUZFUjsKKyNpZmRlZiBIQVZFX1NJR0FMVFNUQUNLCisgICAgICAgICAgICBpZiAoc3RhY2suc3Nfc3AgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgIC8qIENhbGwgdGhlIHNpZ25hbCBoYW5kbGVyIG9uIGFuIGFsdGVybmF0ZSBzaWduYWwgc3RhY2sKKyAgICAgICAgICAgICAgICAgICBwcm92aWRlZCBieSBzaWdhbHRzdGFjaygpICovCisgICAgICAgICAgICAgICAgYWN0aW9uLnNhX2ZsYWdzIHw9IFNBX09OU1RBQ0s7CisgICAgICAgICAgICB9CisjZW5kaWYKKyAgICAgICAgICAgIGVyciA9IHNpZ2FjdGlvbihoYW5kbGVyLT5zaWdudW0sICZhY3Rpb24sICZoYW5kbGVyLT5wcmV2aW91cyk7CisjZWxzZQorICAgICAgICAgICAgaGFuZGxlci0+cHJldmlvdXMgPSBzaWduYWwoaGFuZGxlci0+c2lnbnVtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmF1bHRoYW5kbGVyX2ZhdGFsX2Vycm9yKTsKKyAgICAgICAgICAgIGVyciA9IChoYW5kbGVyLT5wcmV2aW91cyA9PSBTSUdfRVJSKTsKKyNlbmRpZgorICAgICAgICAgICAgaWYgKGVycikgeworICAgICAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19SdW50aW1lRXJyb3IpOworICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaGFuZGxlci0+ZW5hYmxlZCA9IDE7CisgICAgICAgIH0KKyAgICB9CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK3N0YXRpYyB2b2lkCitmYXVsdGhhbmRsZXJfZGlzYWJsZSh2b2lkKQoreworICAgIHVuc2lnbmVkIGludCBpOworICAgIGZhdWx0X2hhbmRsZXJfdCAqaGFuZGxlcjsKKworICAgIGlmIChmYXRhbF9lcnJvci5lbmFibGVkKSB7CisgICAgICAgIGZhdGFsX2Vycm9yLmVuYWJsZWQgPSAwOworICAgICAgICBmb3IgKGk9MDsgaSA8IGZhdWx0aGFuZGxlcl9uc2lnbmFsczsgaSsrKSB7CisgICAgICAgICAgICBoYW5kbGVyID0gJmZhdWx0aGFuZGxlcl9oYW5kbGVyc1tpXTsKKyAgICAgICAgICAgIGlmICghaGFuZGxlci0+ZW5hYmxlZCkKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKyNpZmRlZiBIQVZFX1NJR0FDVElPTgorICAgICAgICAgICAgKHZvaWQpc2lnYWN0aW9uKGhhbmRsZXItPnNpZ251bSwgJmhhbmRsZXItPnByZXZpb3VzLCBOVUxMKTsKKyNlbHNlCisgICAgICAgICAgICAodm9pZClzaWduYWwoaGFuZGxlci0+c2lnbnVtLCBoYW5kbGVyLT5wcmV2aW91cyk7CisjZW5kaWYKKyAgICAgICAgICAgIGhhbmRsZXItPmVuYWJsZWQgPSAwOworICAgICAgICB9CisgICAgfQorCisgICAgUHlfQ0xFQVIoZmF0YWxfZXJyb3IuZmlsZSk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCoKK2ZhdWx0aGFuZGxlcl9kaXNhYmxlX3B5KFB5T2JqZWN0ICpzZWxmKQoreworICAgIGlmICghZmF0YWxfZXJyb3IuZW5hYmxlZCkgeworICAgICAgICBQeV9JTkNSRUYoUHlfRmFsc2UpOworICAgICAgICByZXR1cm4gUHlfRmFsc2U7CisgICAgfQorICAgIGZhdWx0aGFuZGxlcl9kaXNhYmxlKCk7CisgICAgUHlfSU5DUkVGKFB5X1RydWUpOworICAgIHJldHVybiBQeV9UcnVlOworfQorCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfaXNfZW5hYmxlZChQeU9iamVjdCAqc2VsZikKK3sKKyAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKGZhdGFsX2Vycm9yLmVuYWJsZWQpOworfQorCisjaWZkZWYgRkFVTFRIQU5ETEVSX0xBVEVSCisKK3N0YXRpYyB2b2lkCitmYXVsdGhhbmRsZXJfdGhyZWFkKHZvaWQgKnVudXNlZCkKK3sKKyAgICBQeUxvY2tTdGF0dXMgc3Q7CisgICAgY29uc3QgY2hhciogZXJybXNnOworICAgIFB5VGhyZWFkU3RhdGUgKmN1cnJlbnQ7CisgICAgaW50IG9rOworI2lmIGRlZmluZWQoSEFWRV9QVEhSRUFEX1NJR01BU0spICYmICFkZWZpbmVkKEhBVkVfQlJPS0VOX1BUSFJFQURfU0lHTUFTSykKKyAgICBzaWdzZXRfdCBzZXQ7CisKKyAgICAvKiB3ZSBkb24ndCB3YW50IHRvIHJlY2VpdmUgYW55IHNpZ25hbCAqLworICAgIHNpZ2ZpbGxzZXQoJnNldCk7CisgICAgcHRocmVhZF9zaWdtYXNrKFNJR19TRVRNQVNLLCAmc2V0LCBOVUxMKTsKKyNlbmRpZgorCisgICAgZG8geworICAgICAgICBzdCA9IFB5VGhyZWFkX2FjcXVpcmVfbG9ja190aW1lZCh0aHJlYWQuY2FuY2VsX2V2ZW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJlYWQudGltZW91dF91cywgMCk7CisgICAgICAgIGlmIChzdCA9PSBQWV9MT0NLX0FDUVVJUkVEKSB7CisgICAgICAgICAgICBQeVRocmVhZF9yZWxlYXNlX2xvY2sodGhyZWFkLmNhbmNlbF9ldmVudCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICAvKiBUaW1lb3V0ID0+IGR1bXAgdHJhY2ViYWNrICovCisgICAgICAgIGFzc2VydChzdCA9PSBQWV9MT0NLX0ZBSUxVUkUpOworCisgICAgICAgIC8qIGdldCB0aGUgdGhyZWFkIGhvbGRpbmcgdGhlIEdJTCwgTlVMTCBpZiBubyB0aHJlYWQgaG9sZCB0aGUgR0lMICovCisgICAgICAgIGN1cnJlbnQgPSBfUHlfYXRvbWljX2xvYWRfcmVsYXhlZCgmX1B5VGhyZWFkU3RhdGVfQ3VycmVudCk7CisKKyAgICAgICAgd3JpdGUodGhyZWFkLmZkLCB0aHJlYWQuaGVhZGVyLCB0aHJlYWQuaGVhZGVyX2xlbik7CisKKyAgICAgICAgZXJybXNnID0gX1B5X0R1bXBUcmFjZWJhY2tUaHJlYWRzKHRocmVhZC5mZCwgdGhyZWFkLmludGVycCwgY3VycmVudCk7CisgICAgICAgIG9rID0gKGVycm1zZyA9PSBOVUxMKTsKKworICAgICAgICBpZiAodGhyZWFkLmV4aXQpCisgICAgICAgICAgICBfZXhpdCgxKTsKKyAgICB9IHdoaWxlIChvayAmJiB0aHJlYWQucmVwZWF0KTsKKworICAgIC8qIFRoZSBvbmx5IHdheSBvdXQgKi8KKyAgICBQeVRocmVhZF9yZWxlYXNlX2xvY2sodGhyZWFkLnJ1bm5pbmcpOworfQorCitzdGF0aWMgdm9pZAorY2FuY2VsX2R1bXBfdHJhY2ViYWNrc19sYXRlcih2b2lkKQoreworICAgIC8qIE5vdGlmeSBjYW5jZWxsYXRpb24gKi8KKyAgICBQeVRocmVhZF9yZWxlYXNlX2xvY2sodGhyZWFkLmNhbmNlbF9ldmVudCk7CisKKyAgICAvKiBXYWl0IGZvciB0aHJlYWQgdG8gam9pbiAqLworICAgIFB5VGhyZWFkX2FjcXVpcmVfbG9jayh0aHJlYWQucnVubmluZywgMSk7CisgICAgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKHRocmVhZC5ydW5uaW5nKTsKKworICAgIC8qIFRoZSBtYWluIHRocmVhZCBzaG91bGQgYWx3YXlzIGhvbGQgdGhlIGNhbmNlbF9ldmVudCBsb2NrICovCisgICAgUHlUaHJlYWRfYWNxdWlyZV9sb2NrKHRocmVhZC5jYW5jZWxfZXZlbnQsIDEpOworCisgICAgUHlfQ0xFQVIodGhyZWFkLmZpbGUpOworICAgIGlmICh0aHJlYWQuaGVhZGVyKSB7CisgICAgICAgIGZyZWUodGhyZWFkLmhlYWRlcik7CisgICAgICAgIHRocmVhZC5oZWFkZXIgPSBOVUxMOworICAgIH0KK30KKworc3RhdGljIGNoYXIqCitmb3JtYXRfdGltZW91dChkb3VibGUgdGltZW91dCkKK3sKKyAgICB1bnNpZ25lZCBsb25nIHVzLCBzZWMsIG1pbiwgaG91cjsKKyAgICBkb3VibGUgaW50cGFydCwgZnJhY3BhcnQ7CisgICAgY2hhciBidWZmZXJbMTAwXTsKKworICAgIGZyYWNwYXJ0ID0gbW9kZih0aW1lb3V0LCAmaW50cGFydCk7CisgICAgc2VjID0gKHVuc2lnbmVkIGxvbmcpaW50cGFydDsKKyAgICB1cyA9ICh1bnNpZ25lZCBsb25nKShmcmFjcGFydCAqIDFlNik7CisgICAgbWluID0gc2VjIC8gNjA7CisgICAgc2VjICU9IDYwOworICAgIGhvdXIgPSBtaW4gLyA2MDsKKyAgICBtaW4gJT0gNjA7CisKKyAgICBpZiAodXMgIT0gMCkKKyAgICAgICAgUHlPU19zbnByaW50ZihidWZmZXIsIHNpemVvZihidWZmZXIpLAorICAgICAgICAgICAgICAgICAgICAgICJUaW1lb3V0ICglbHU6JTAybHU6JTAybHUuJTA2bHUpIVxuIiwKKyAgICAgICAgICAgICAgICAgICAgICBob3VyLCBtaW4sIHNlYywgdXMpOworICAgIGVsc2UKKyAgICAgICAgUHlPU19zbnByaW50ZihidWZmZXIsIHNpemVvZihidWZmZXIpLAorICAgICAgICAgICAgICAgICAgICAgICJUaW1lb3V0ICglbHU6JTAybHU6JTAybHUpIVxuIiwKKyAgICAgICAgICAgICAgICAgICAgICBob3VyLCBtaW4sIHNlYyk7CisKKyAgICByZXR1cm4gc3RyZHVwKGJ1ZmZlcik7Cit9CisKK3N0YXRpYyBQeU9iamVjdCoKK2ZhdWx0aGFuZGxlcl9kdW1wX3RyYWNlYmFja3NfbGF0ZXIoUHlPYmplY3QgKnNlbGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQoreworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsidGltZW91dCIsICJyZXBlYXQiLCAiZmlsZSIsICJleGl0IiwgTlVMTH07CisgICAgZG91YmxlIHRpbWVvdXQ7CisgICAgUFlfVElNRU9VVF9UIHRpbWVvdXRfdXM7CisgICAgaW50IHJlcGVhdCA9IDA7CisgICAgUHlPYmplY3QgKmZpbGUgPSBOVUxMOworICAgIGludCBmZDsKKyAgICBpbnQgZXhpdCA9IDA7CisgICAgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlOworICAgIGNoYXIgKmhlYWRlcjsKKyAgICBzaXplX3QgaGVhZGVyX2xlbjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywKKyAgICAgICAgImR8aU9pOmR1bXBfdHJhY2ViYWNrc19sYXRlciIsIGt3bGlzdCwKKyAgICAgICAgJnRpbWVvdXQsICZyZXBlYXQsICZmaWxlLCAmZXhpdCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICgodGltZW91dCAqIDFlNikgPj0gKGRvdWJsZSkgUFlfVElNRU9VVF9NQVgpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsICAidGltZW91dCB2YWx1ZSBpcyB0b28gbGFyZ2UiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHRpbWVvdXRfdXMgPSAoUFlfVElNRU9VVF9UKSh0aW1lb3V0ICogMWU2KTsKKyAgICBpZiAodGltZW91dF91cyA8PSAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAidGltZW91dCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHRzdGF0ZSA9IGdldF90aHJlYWRfc3RhdGUoKTsKKyAgICBpZiAodHN0YXRlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgZmlsZSA9IGZhdWx0aGFuZGxlcl9nZXRfZmlsZW5vKGZpbGUsICZmZCk7CisgICAgaWYgKGZpbGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAvKiBmb3JtYXQgdGhlIHRpbWVvdXQgKi8KKyAgICBoZWFkZXIgPSBmb3JtYXRfdGltZW91dCh0aW1lb3V0KTsKKyAgICBpZiAoaGVhZGVyID09IE5VTEwpCisgICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOworICAgIGhlYWRlcl9sZW4gPSBzdHJsZW4oaGVhZGVyKTsKKworICAgIC8qIENhbmNlbCBwcmV2aW91cyB0aHJlYWQsIGlmIHJ1bm5pbmcgKi8KKyAgICBjYW5jZWxfZHVtcF90cmFjZWJhY2tzX2xhdGVyKCk7CisKKyAgICBQeV9YREVDUkVGKHRocmVhZC5maWxlKTsKKyAgICBQeV9JTkNSRUYoZmlsZSk7CisgICAgdGhyZWFkLmZpbGUgPSBmaWxlOworICAgIHRocmVhZC5mZCA9IGZkOworICAgIHRocmVhZC50aW1lb3V0X3VzID0gdGltZW91dF91czsKKyAgICB0aHJlYWQucmVwZWF0ID0gcmVwZWF0OworICAgIHRocmVhZC5pbnRlcnAgPSB0c3RhdGUtPmludGVycDsKKyAgICB0aHJlYWQuZXhpdCA9IGV4aXQ7CisgICAgdGhyZWFkLmhlYWRlciA9IGhlYWRlcjsKKyAgICB0aHJlYWQuaGVhZGVyX2xlbiA9IGhlYWRlcl9sZW47CisKKyAgICAvKiBBcm0gdGhlc2UgbG9ja3MgdG8gc2VydmUgYXMgZXZlbnRzIHdoZW4gcmVsZWFzZWQgKi8KKyAgICBQeVRocmVhZF9hY3F1aXJlX2xvY2sodGhyZWFkLnJ1bm5pbmcsIDEpOworCisgICAgaWYgKFB5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQoZmF1bHRoYW5kbGVyX3RocmVhZCwgTlVMTCkgPT0gLTEpIHsKKyAgICAgICAgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKHRocmVhZC5ydW5uaW5nKTsKKyAgICAgICAgUHlfQ0xFQVIodGhyZWFkLmZpbGUpOworICAgICAgICBmcmVlKGhlYWRlcik7CisgICAgICAgIHRocmVhZC5oZWFkZXIgPSBOVUxMOworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgInVuYWJsZSB0byBzdGFydCB3YXRjaGRvZyB0aHJlYWQiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK3N0YXRpYyBQeU9iamVjdCoKK2ZhdWx0aGFuZGxlcl9jYW5jZWxfZHVtcF90cmFjZWJhY2tzX2xhdGVyX3B5KFB5T2JqZWN0ICpzZWxmKQoreworICAgIGNhbmNlbF9kdW1wX3RyYWNlYmFja3NfbGF0ZXIoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZiAgLyogRkFVTFRIQU5ETEVSX0xBVEVSICovCisKKyNpZmRlZiBGQVVMVEhBTkRMRVJfV0FUQ0hET0cKKworc3RhdGljIHZvaWQKK2ZpbGVfd2F0Y2hkb2codm9pZCAqdW51c2VkKQoreworICAgIFB5TG9ja1N0YXR1cyBzdDsKKyAgICBQWV9USU1FT1VUX1QgdGltZW91dDsKKworI2RlZmluZSBNQVhEQVRBIDEwMjQKKyAgICBjaGFyIGJ1ZjFbTUFYREFUQV0sIGJ1ZjJbTUFYREFUQV07CisgICAgY2hhciAqZGF0YSA9IGJ1ZjEsICpvbGRfZGF0YSA9IGJ1ZjI7CisgICAgUHlfc3NpemVfdCBkYXRhX2xlbiwgb2xkX2RhdGFfbGVuID0gLTE7CisKKyNpZiBkZWZpbmVkKEhBVkVfUFRIUkVBRF9TSUdNQVNLKSAmJiAhZGVmaW5lZChIQVZFX0JST0tFTl9QVEhSRUFEX1NJR01BU0spCisgICAgc2lnc2V0X3Qgc2V0OworCisgICAgLyogd2UgZG9uJ3Qgd2FudCB0byByZWNlaXZlIGFueSBzaWduYWwgKi8KKyAgICBzaWdmaWxsc2V0KCZzZXQpOworICAgIHB0aHJlYWRfc2lnbWFzayhTSUdfU0VUTUFTSywgJnNldCwgTlVMTCk7CisjZW5kaWYKKworICAgIC8qIE9uIGZpcnN0IHBhc3MsIGZlZWQgZmlsZSBjb250ZW50cyBpbW1lZGlhdGVseSAqLworICAgIHRpbWVvdXQgPSAwOworICAgIGRvIHsKKyAgICAgICAgc3QgPSBQeVRocmVhZF9hY3F1aXJlX2xvY2tfdGltZWQod2F0Y2hkb2cuY2FuY2VsX2V2ZW50LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lb3V0LCAwKTsKKyAgICAgICAgdGltZW91dCA9IHdhdGNoZG9nLnBlcmlvZF91czsKKyAgICAgICAgaWYgKHN0ID09IFBZX0xPQ0tfQUNRVUlSRUQpIHsKKyAgICAgICAgICAgIFB5VGhyZWFkX3JlbGVhc2VfbG9jayh3YXRjaGRvZy5jYW5jZWxfZXZlbnQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgLyogVGltZW91dCA9PiByZWFkIGFuZCB3cml0ZSBkYXRhICovCisgICAgICAgIGFzc2VydChzdCA9PSBQWV9MT0NLX0ZBSUxVUkUpOworCisgICAgICAgIGlmIChsc2Vlayh3YXRjaGRvZy5yZmQsIDAsIFNFRUtfU0VUKSA8IDApIHsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICAgIGRhdGFfbGVuID0gcmVhZCh3YXRjaGRvZy5yZmQsIGRhdGEsIE1BWERBVEEpOworICAgICAgICBpZiAoZGF0YV9sZW4gPCAwKSB7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBpZiAoZGF0YV9sZW4gIT0gb2xkX2RhdGFfbGVuIHx8IG1lbWNtcChkYXRhLCBvbGRfZGF0YSwgZGF0YV9sZW4pKSB7CisgICAgICAgICAgICBjaGFyICp0ZGF0YTsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgdGxlbjsKKyAgICAgICAgICAgIC8qIENvbnRlbnRzIGNoYW5nZWQsIGZlZWQgdGhlbSB0byB3ZmQgKi8KKyAgICAgICAgICAgIGxvbmcgeCA9IChsb25nKSBkYXRhX2xlbjsKKyAgICAgICAgICAgIC8qIFdlIGNhbid0IGRvIGFueXRoaW5nIGlmIHRoZSBjb25zdW1lciBpcyB0b28gc2xvdywganVzdCBiYWlsIG91dCAqLworICAgICAgICAgICAgaWYgKHdyaXRlKHdhdGNoZG9nLndmZCwgKHZvaWQgKikgJngsIHNpemVvZih4KSkgPCBzaXplb2YoeCkpCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBpZiAod3JpdGUod2F0Y2hkb2cud2ZkLCBkYXRhLCBkYXRhX2xlbikgPCBkYXRhX2xlbikKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIHRkYXRhID0gZGF0YTsKKyAgICAgICAgICAgIGRhdGEgPSBvbGRfZGF0YTsKKyAgICAgICAgICAgIG9sZF9kYXRhID0gdGRhdGE7CisgICAgICAgICAgICB0bGVuID0gZGF0YV9sZW47CisgICAgICAgICAgICBkYXRhX2xlbiA9IG9sZF9kYXRhX2xlbjsKKyAgICAgICAgICAgIG9sZF9kYXRhX2xlbiA9IHRsZW47CisgICAgICAgIH0KKyAgICB9IHdoaWxlICgxKTsKKworICAgIGNsb3NlKHdhdGNoZG9nLnJmZCk7CisgICAgY2xvc2Uod2F0Y2hkb2cud2ZkKTsKKworICAgIC8qIFRoZSBvbmx5IHdheSBvdXQgKi8KKyAgICBQeVRocmVhZF9yZWxlYXNlX2xvY2sod2F0Y2hkb2cucnVubmluZyk7CisjdW5kZWYgTUFYREFUQQorfQorCitzdGF0aWMgdm9pZAorY2FuY2VsX2ZpbGVfd2F0Y2hkb2codm9pZCkKK3sKKyAgICAvKiBOb3RpZnkgY2FuY2VsbGF0aW9uICovCisgICAgUHlUaHJlYWRfcmVsZWFzZV9sb2NrKHdhdGNoZG9nLmNhbmNlbF9ldmVudCk7CisKKyAgICAvKiBXYWl0IGZvciB0aHJlYWQgdG8gam9pbiAqLworICAgIFB5VGhyZWFkX2FjcXVpcmVfbG9jayh3YXRjaGRvZy5ydW5uaW5nLCAxKTsKKyAgICBQeVRocmVhZF9yZWxlYXNlX2xvY2sod2F0Y2hkb2cucnVubmluZyk7CisKKyAgICAvKiBUaGUgbWFpbiB0aHJlYWQgc2hvdWxkIGFsd2F5cyBob2xkIHRoZSBjYW5jZWxfZXZlbnQgbG9jayAqLworICAgIFB5VGhyZWFkX2FjcXVpcmVfbG9jayh3YXRjaGRvZy5jYW5jZWxfZXZlbnQsIDEpOworfQorCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfZmlsZV93YXRjaGRvZyhQeU9iamVjdCAqc2VsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQoreworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsicmZkIiwgIndmZCIsICJwZXJpb2QiLCBOVUxMfTsKKyAgICBkb3VibGUgcGVyaW9kOworICAgIFBZX1RJTUVPVVRfVCBwZXJpb2RfdXM7CisgICAgaW50IHJmZCwgd2ZkOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dhcmdzLAorICAgICAgICAiaWlkOl9maWxlX3dhdGNoZG9nIiwga3dsaXN0LAorICAgICAgICAmcmZkLCAmd2ZkLCAmcGVyaW9kKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKChwZXJpb2QgKiAxZTYpID49IChkb3VibGUpIFBZX1RJTUVPVVRfTUFYKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLCAgInBlcmlvZCB2YWx1ZSBpcyB0b28gbGFyZ2UiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHBlcmlvZF91cyA9IChQWV9USU1FT1VUX1QpKHBlcmlvZCAqIDFlNik7CisgICAgaWYgKHBlcmlvZF91cyA8PSAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAicGVyaW9kIG11c3QgYmUgZ3JlYXRlciB0aGFuIDAiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgLyogQ2FuY2VsIHByZXZpb3VzIHRocmVhZCwgaWYgcnVubmluZyAqLworICAgIGNhbmNlbF9maWxlX3dhdGNoZG9nKCk7CisKKyAgICB3YXRjaGRvZy5yZmQgPSByZmQ7CisgICAgd2F0Y2hkb2cud2ZkID0gd2ZkOworICAgIHdhdGNoZG9nLnBlcmlvZF91cyA9IHBlcmlvZF91czsKKworICAgIC8qIEFybSB0aGVzZSBsb2NrcyB0byBzZXJ2ZSBhcyBldmVudHMgd2hlbiByZWxlYXNlZCAqLworICAgIFB5VGhyZWFkX2FjcXVpcmVfbG9jayh3YXRjaGRvZy5ydW5uaW5nLCAxKTsKKworICAgIGlmIChQeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkKGZpbGVfd2F0Y2hkb2csIE5VTEwpID09IC0xKSB7CisgICAgICAgIFB5VGhyZWFkX3JlbGVhc2VfbG9jayh3YXRjaGRvZy5ydW5uaW5nKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJ1bmFibGUgdG8gc3RhcnQgZmlsZSB3YXRjaGRvZyB0aHJlYWQiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK3N0YXRpYyBQeU9iamVjdCoKK2ZhdWx0aGFuZGxlcl9jYW5jZWxfZmlsZV93YXRjaGRvZyhQeU9iamVjdCAqc2VsZikKK3sKKyAgICBjYW5jZWxfZmlsZV93YXRjaGRvZygpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmICAvKiBGQVVMVEhBTkRMRVJfV0FUQ0hET0cgKi8KKworI2lmZGVmIEZBVUxUSEFORExFUl9VU0VSCitzdGF0aWMgaW50CitmYXVsdGhhbmRsZXJfcmVnaXN0ZXIoaW50IHNpZ251bSwgaW50IGNoYWluLCBfUHlfc2lnaGFuZGxlcl90ICpwX3ByZXZpb3VzKQoreworI2lmZGVmIEhBVkVfU0lHQUNUSU9OCisgICAgc3RydWN0IHNpZ2FjdGlvbiBhY3Rpb247CisgICAgYWN0aW9uLnNhX2hhbmRsZXIgPSBmYXVsdGhhbmRsZXJfdXNlcjsKKyAgICBzaWdlbXB0eXNldCgmYWN0aW9uLnNhX21hc2spOworICAgIC8qIGlmIHRoZSBzaWduYWwgaXMgcmVjZWl2ZWQgd2hpbGUgdGhlIGtlcm5lbCBpcyBleGVjdXRpbmcgYSBzeXN0ZW0KKyAgICAgICBjYWxsLCB0cnkgdG8gcmVzdGFydCB0aGUgc3lzdGVtIGNhbGwgaW5zdGVhZCBvZiBpbnRlcnJ1cHRpbmcgaXQgYW5kCisgICAgICAgcmV0dXJuIEVJTlRSLiAqLworICAgIGFjdGlvbi5zYV9mbGFncyA9IFNBX1JFU1RBUlQ7CisgICAgaWYgKGNoYWluKSB7CisgICAgICAgIC8qIGRvIG5vdCBwcmV2ZW50IHRoZSBzaWduYWwgZnJvbSBiZWluZyByZWNlaXZlZCBmcm9tIHdpdGhpbiBpdHMKKyAgICAgICAgICAgb3duIHNpZ25hbCBoYW5kbGVyICovCisgICAgICAgIGFjdGlvbi5zYV9mbGFncyA9IFNBX05PREVGRVI7CisgICAgfQorI2lmZGVmIEhBVkVfU0lHQUxUU1RBQ0sKKyAgICBpZiAoc3RhY2suc3Nfc3AgIT0gTlVMTCkgeworICAgICAgICAvKiBDYWxsIHRoZSBzaWduYWwgaGFuZGxlciBvbiBhbiBhbHRlcm5hdGUgc2lnbmFsIHN0YWNrCisgICAgICAgICAgIHByb3ZpZGVkIGJ5IHNpZ2FsdHN0YWNrKCkgKi8KKyAgICAgICAgYWN0aW9uLnNhX2ZsYWdzIHw9IFNBX09OU1RBQ0s7CisgICAgfQorI2VuZGlmCisgICAgcmV0dXJuIHNpZ2FjdGlvbihzaWdudW0sICZhY3Rpb24sIHBfcHJldmlvdXMpOworI2Vsc2UKKyAgICBfUHlfc2lnaGFuZGxlcl90IHByZXZpb3VzOworICAgIHByZXZpb3VzID0gc2lnbmFsKHNpZ251bSwgZmF1bHRoYW5kbGVyX3VzZXIpOworICAgIGlmIChwX3ByZXZpb3VzICE9IE5VTEwpCisgICAgICAgICpwX3ByZXZpb3VzID0gcHJldmlvdXM7CisgICAgcmV0dXJuIChwcmV2aW91cyA9PSBTSUdfRVJSKTsKKyNlbmRpZgorfQorCisvKiBIYW5kbGVyIG9mIHVzZXIgc2lnbmFscyAoZS5nLiBTSUdVU1IxKS4KKworICAgRHVtcCB0aGUgdHJhY2ViYWNrIG9mIHRoZSBjdXJyZW50IHRocmVhZCwgb3Igb2YgYWxsIHRocmVhZHMgaWYKKyAgIHRocmVhZC5hbGxfdGhyZWFkcyBpcyB0cnVlLgorCisgICBUaGlzIGZ1bmN0aW9uIGlzIHNpZ25hbCBzYWZlIGFuZCBzaG91bGQgb25seSBjYWxsIHNpZ25hbCBzYWZlIGZ1bmN0aW9ucy4gKi8KKworc3RhdGljIHZvaWQKK2ZhdWx0aGFuZGxlcl91c2VyKGludCBzaWdudW0pCit7CisgICAgdXNlcl9zaWduYWxfdCAqdXNlcjsKKyAgICBQeVRocmVhZFN0YXRlICp0c3RhdGU7CisgICAgaW50IHNhdmVfZXJybm8gPSBlcnJubzsKKworICAgIHVzZXIgPSAmdXNlcl9zaWduYWxzW3NpZ251bV07CisgICAgaWYgKCF1c2VyLT5lbmFibGVkKQorICAgICAgICByZXR1cm47CisKKyNpZmRlZiBXSVRIX1RIUkVBRAorICAgIC8qIFB5VGhyZWFkU3RhdGVfR2V0KCkgZG9lc24ndCBnaXZlIHRoZSBzdGF0ZSBvZiB0aGUgY3VycmVudCB0aHJlYWQgaWYKKyAgICAgICB0aGUgdGhyZWFkIGRvZXNuJ3QgaG9sZCB0aGUgR0lMLiBSZWFkIHRoZSB0aHJlYWQgbG9jYWwgc3RvcmFnZSAoVExTKQorICAgICAgIGluc3RlYWQ6IGNhbGwgUHlHSUxTdGF0ZV9HZXRUaGlzVGhyZWFkU3RhdGUoKS4gKi8KKyAgICB0c3RhdGUgPSBQeUdJTFN0YXRlX0dldFRoaXNUaHJlYWRTdGF0ZSgpOworI2Vsc2UKKyAgICB0c3RhdGUgPSBQeVRocmVhZFN0YXRlX0dldCgpOworI2VuZGlmCisKKyAgICBpZiAodXNlci0+YWxsX3RocmVhZHMpCisgICAgICAgIF9QeV9EdW1wVHJhY2ViYWNrVGhyZWFkcyh1c2VyLT5mZCwgdXNlci0+aW50ZXJwLCB0c3RhdGUpOworICAgIGVsc2UgeworICAgICAgICBpZiAodHN0YXRlID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIF9QeV9EdW1wVHJhY2ViYWNrKHVzZXItPmZkLCB0c3RhdGUpOworICAgIH0KKyNpZmRlZiBIQVZFX1NJR0FDVElPTgorICAgIGlmICh1c2VyLT5jaGFpbikgeworICAgICAgICAodm9pZClzaWdhY3Rpb24oc2lnbnVtLCAmdXNlci0+cHJldmlvdXMsIE5VTEwpOworICAgICAgICAvKiBjYWxsIHRoZSBwcmV2aW91cyBzaWduYWwgaGFuZGxlciAqLworICAgICAgICByYWlzZShzaWdudW0pOworICAgICAgICAodm9pZClmYXVsdGhhbmRsZXJfcmVnaXN0ZXIoc2lnbnVtLCB1c2VyLT5jaGFpbiwgTlVMTCk7CisgICAgfQorI2Vsc2UKKyAgICBpZiAodXNlci0+Y2hhaW4pIHsKKyAgICAgICAgLyogY2FsbCB0aGUgcHJldmlvdXMgc2lnbmFsIGhhbmRsZXIgKi8KKyAgICAgICAgdXNlci0+cHJldmlvdXMoc2lnbnVtKTsKKyAgICB9CisjZW5kaWYKKyAgICBlcnJubyA9IHNhdmVfZXJybm87Cit9CisKK3N0YXRpYyBpbnQKK2NoZWNrX3NpZ251bShpbnQgc2lnbnVtKQoreworICAgIHVuc2lnbmVkIGludCBpOworCisgICAgZm9yIChpPTA7IGkgPCBmYXVsdGhhbmRsZXJfbnNpZ25hbHM7IGkrKykgeworICAgICAgICBpZiAoZmF1bHRoYW5kbGVyX2hhbmRsZXJzW2ldLnNpZ251bSA9PSBzaWdudW0pIHsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgInNpZ25hbCAlaSBjYW5ub3QgYmUgcmVnaXN0ZXJlZCwgIgorICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2UgZW5hYmxlKCkgaW5zdGVhZCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgc2lnbnVtKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgfQorICAgIGlmIChzaWdudW0gPCAxIHx8IE5TSUcgPD0gc2lnbnVtKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAic2lnbmFsIG51bWJlciBvdXQgb2YgcmFuZ2UiKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIHJldHVybiAxOworfQorCitzdGF0aWMgUHlPYmplY3QqCitmYXVsdGhhbmRsZXJfcmVnaXN0ZXJfcHkoUHlPYmplY3QgKnNlbGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCit7CisgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJzaWdudW0iLCAiZmlsZSIsICJhbGxfdGhyZWFkcyIsICJjaGFpbiIsIE5VTEx9OworICAgIGludCBzaWdudW07CisgICAgUHlPYmplY3QgKmZpbGUgPSBOVUxMOworICAgIGludCBhbGxfdGhyZWFkcyA9IDE7CisgICAgaW50IGNoYWluID0gMDsKKyAgICBpbnQgZmQ7CisgICAgdXNlcl9zaWduYWxfdCAqdXNlcjsKKyAgICBfUHlfc2lnaGFuZGxlcl90IHByZXZpb3VzOworICAgIFB5VGhyZWFkU3RhdGUgKnRzdGF0ZTsKKyAgICBpbnQgZXJyOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dhcmdzLAorICAgICAgICAiaXxPaWk6cmVnaXN0ZXIiLCBrd2xpc3QsCisgICAgICAgICZzaWdudW0sICZmaWxlLCAmYWxsX3RocmVhZHMsICZjaGFpbikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKCFjaGVja19zaWdudW0oc2lnbnVtKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICB0c3RhdGUgPSBnZXRfdGhyZWFkX3N0YXRlKCk7CisgICAgaWYgKHRzdGF0ZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGZpbGUgPSBmYXVsdGhhbmRsZXJfZ2V0X2ZpbGVubyhmaWxlLCAmZmQpOworICAgIGlmIChmaWxlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKHVzZXJfc2lnbmFscyA9PSBOVUxMKSB7CisgICAgICAgIHVzZXJfc2lnbmFscyA9IGNhbGxvYyhOU0lHLCBzaXplb2YodXNlcl9zaWduYWxfdCkpOworICAgICAgICBpZiAodXNlcl9zaWduYWxzID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKyAgICB9CisgICAgdXNlciA9ICZ1c2VyX3NpZ25hbHNbc2lnbnVtXTsKKworICAgIGlmICghdXNlci0+ZW5hYmxlZCkgeworICAgICAgICBlcnIgPSBmYXVsdGhhbmRsZXJfcmVnaXN0ZXIoc2lnbnVtLCBjaGFpbiwgJnByZXZpb3VzKTsKKyAgICAgICAgaWYgKGVycikgeworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBQeV9YREVDUkVGKHVzZXItPmZpbGUpOworICAgIFB5X0lOQ1JFRihmaWxlKTsKKyAgICB1c2VyLT5maWxlID0gZmlsZTsKKyAgICB1c2VyLT5mZCA9IGZkOworICAgIHVzZXItPmFsbF90aHJlYWRzID0gYWxsX3RocmVhZHM7CisgICAgdXNlci0+Y2hhaW4gPSBjaGFpbjsKKyAgICB1c2VyLT5wcmV2aW91cyA9IHByZXZpb3VzOworICAgIHVzZXItPmludGVycCA9IHRzdGF0ZS0+aW50ZXJwOworICAgIHVzZXItPmVuYWJsZWQgPSAxOworCisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK3N0YXRpYyBpbnQKK2ZhdWx0aGFuZGxlcl91bnJlZ2lzdGVyKHVzZXJfc2lnbmFsX3QgKnVzZXIsIGludCBzaWdudW0pCit7CisgICAgaWYgKCF1c2VyLT5lbmFibGVkKQorICAgICAgICByZXR1cm4gMDsKKyAgICB1c2VyLT5lbmFibGVkID0gMDsKKyNpZmRlZiBIQVZFX1NJR0FDVElPTgorICAgICh2b2lkKXNpZ2FjdGlvbihzaWdudW0sICZ1c2VyLT5wcmV2aW91cywgTlVMTCk7CisjZWxzZQorICAgICh2b2lkKXNpZ25hbChzaWdudW0sIHVzZXItPnByZXZpb3VzKTsKKyNlbmRpZgorICAgIFB5X0NMRUFSKHVzZXItPmZpbGUpOworICAgIHVzZXItPmZkID0gLTE7CisgICAgcmV0dXJuIDE7Cit9CisKK3N0YXRpYyBQeU9iamVjdCoKK2ZhdWx0aGFuZGxlcl91bnJlZ2lzdGVyX3B5KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgc2lnbnVtOworICAgIHVzZXJfc2lnbmFsX3QgKnVzZXI7CisgICAgaW50IGNoYW5nZTsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaTp1bnJlZ2lzdGVyIiwgJnNpZ251bSkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKCFjaGVja19zaWdudW0oc2lnbnVtKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAodXNlcl9zaWduYWxzID09IE5VTEwpCisgICAgICAgIFB5X1JFVFVSTl9GQUxTRTsKKworICAgIHVzZXIgPSAmdXNlcl9zaWduYWxzW3NpZ251bV07CisgICAgY2hhbmdlID0gZmF1bHRoYW5kbGVyX3VucmVnaXN0ZXIodXNlciwgc2lnbnVtKTsKKyAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKGNoYW5nZSk7Cit9CisjZW5kaWYgICAvKiBGQVVMVEhBTkRMRVJfVVNFUiAqLworCisKK3N0YXRpYyBQeU9iamVjdCAqCitmYXVsdGhhbmRsZXJfcmVhZF9udWxsKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICB2b2xhdGlsZSBpbnQgKng7CisgICAgdm9sYXRpbGUgaW50IHk7CisgICAgaW50IHJlbGVhc2VfZ2lsID0gMDsKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxpOl9yZWFkX251bGwiLCAmcmVsZWFzZV9naWwpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHggPSBOVUxMOworICAgIGlmIChyZWxlYXNlX2dpbCkgeworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHkgPSAqeDsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9IGVsc2UKKyAgICAgICAgeSA9ICp4OworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoeSk7CisKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2ZhdWx0aGFuZGxlcl9zaWdzZWd2KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpCisgICAgLyogRm9yIFNJR1NFR1YsIGZhdWx0aGFuZGxlcl9mYXRhbF9lcnJvcigpIHJlc3RvcmVzIHRoZSBwcmV2aW91cyBzaWduYWwKKyAgICAgICBoYW5kbGVyIGFuZCB0aGVuIGdpdmVzIGJhY2sgdGhlIGV4ZWN1dGlvbiBmbG93IHRvIHRoZSBwcm9ncmFtICh3aXRob3V0CisgICAgICAgZXhwbGljaXRseSBjYWxsaW5nIHRoZSBwcmV2aW91cyBlcnJvciBoYW5kbGVyKS4gSW4gYSBub3JtYWwgY2FzZSwgdGhlCisgICAgICAgU0lHU0VHViB3YXMgcmFpc2VkIGJ5IHRoZSBrZXJuZWwgYmVjYXVzZSBvZiBhIGZhdWx0LCBhbmQgc28gaWYgdGhlCisgICAgICAgcHJvZ3JhbSByZXRyaWVzIHRvIGV4ZWN1dGUgdGhlIHNhbWUgaW5zdHJ1Y3Rpb24sIHRoZSBmYXVsdCB3aWxsIGJlCisgICAgICAgcmFpc2VkIGFnYWluLgorCisgICAgICAgSGVyZSB0aGUgZmF1bHQgaXMgc2ltdWxhdGVkIGJ5IGEgZmFrZSBTSUdTRUdWIHNpZ25hbCByYWlzZWQgYnkgdGhlCisgICAgICAgYXBwbGljYXRpb24uIFdlIGhhdmUgdG8gcmFpc2UgU0lHU0VHViBhdCBsZWFzZSB0d2ljZTogb25jZSBmb3IKKyAgICAgICBmYXVsdGhhbmRsZXJfZmF0YWxfZXJyb3IoKSwgYW5kIG9uZSBtb3JlIHRpbWUgZm9yIHRoZSBwcmV2aW91cyBzaWduYWwKKyAgICAgICBoYW5kbGVyLiAqLworICAgIHdoaWxlKDEpCisgICAgICAgIHJhaXNlKFNJR1NFR1YpOworI2Vsc2UKKyAgICByYWlzZShTSUdTRUdWKTsKKyNlbmRpZgorICAgIFB5X1JFVFVSTl9OT05FOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorZmF1bHRoYW5kbGVyX3NpZ2ZwZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgLyogRG8gYW4gaW50ZWdlciBkaXZpc2lvbiBieSB6ZXJvOiByYWlzZSBhIFNJR0ZQRSBvbiBJbnRlbCBDUFUsIGJ1dCBub3Qgb24KKyAgICAgICBQb3dlclBDLiBVc2Ugdm9sYXRpbGUgdG8gZGlzYWJsZSBjb21waWxlLXRpbWUgb3B0aW1pemF0aW9ucy4gKi8KKyAgICB2b2xhdGlsZSBpbnQgeCA9IDEsIHkgPSAwLCB6OworICAgIHogPSB4IC8geTsKKyAgICAvKiBJZiB0aGUgZGl2aXNpb24gYnkgemVybyBkaWRuJ3QgcmFpc2UgYSBTSUdGUEUgKGUuZy4gb24gUG93ZXJQQyksCisgICAgICAgcmFpc2UgaXQgbWFudWFsbHkuICovCisgICAgcmFpc2UoU0lHRlBFKTsKKyAgICAvKiBUaGlzIGxpbmUgaXMgbmV2ZXIgcmVhY2hlZCwgYnV0IHdlIHByZXRlbmQgdG8gbWFrZSBzb21ldGhpbmcgd2l0aCB6CisgICAgICAgdG8gc2lsZW5jZSBhIGNvbXBpbGVyIHdhcm5pbmcuICovCisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyh6KTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2ZhdWx0aGFuZGxlcl9zaWdhYnJ0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyNpZmRlZiBfTVNDX1ZFUgorICAgIC8qIFZpc3VhbCBTdHVkaW86IGNvbmZpZ3VyZSBhYm9ydCgpIHRvIG5vdCBkaXNwbGF5IGFuIGVycm9yIG1lc3NhZ2Ugbm9yCisgICAgICAgb3BlbiBhIHBvcHVwIGFza2luZyB0byByZXBvcnQgdGhlIGZhdWx0LiAqLworICAgIF9zZXRfYWJvcnRfYmVoYXZpb3IoMCwgX1dSSVRFX0FCT1JUX01TRyB8IF9DQUxMX1JFUE9SVEZBVUxUKTsKKyNlbmRpZgorICAgIGFib3J0KCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKKyNpZmRlZiBTSUdCVVMKK3N0YXRpYyBQeU9iamVjdCAqCitmYXVsdGhhbmRsZXJfc2lnYnVzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICByYWlzZShTSUdCVVMpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCisKKyNpZmRlZiBTSUdJTEwKK3N0YXRpYyBQeU9iamVjdCAqCitmYXVsdGhhbmRsZXJfc2lnaWxsKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICByYWlzZShTSUdJTEwpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCisKK3N0YXRpYyBQeU9iamVjdCAqCitmYXVsdGhhbmRsZXJfZmF0YWxfZXJyb3JfcHkoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGNoYXIgKm1lc3NhZ2U7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5OmZhdGFsX2Vycm9yIiwgJm1lc3NhZ2UpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9GYXRhbEVycm9yKG1lc3NhZ2UpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorCisjaWYgZGVmaW5lZChIQVZFX1NJR0FMVFNUQUNLKSAmJiBkZWZpbmVkKEhBVkVfU0lHQUNUSU9OKQorc3RhdGljIHZvaWQqCitzdGFja19vdmVyZmxvdyh2b2lkICptaW5fc3AsIHZvaWQgKm1heF9zcCwgc2l6ZV90ICpkZXB0aCkKK3sKKyAgICAvKiBhbGxvY2F0ZSA0MDk2IGJ5dGVzIG9uIHRoZSBzdGFjayBhdCBlYWNoIGNhbGwgKi8KKyAgICB1bnNpZ25lZCBjaGFyIGJ1ZmZlcls0MDk2XTsKKyAgICB2b2lkICpzcCA9ICZidWZmZXI7CisgICAgKmRlcHRoICs9IDE7CisgICAgaWYgKHNwIDwgbWluX3NwIHx8IG1heF9zcCA8IHNwKQorICAgICAgICByZXR1cm4gc3A7CisgICAgYnVmZmVyWzBdID0gMTsKKyAgICBidWZmZXJbNDA5NV0gPSAwOworICAgIHJldHVybiBzdGFja19vdmVyZmxvdyhtaW5fc3AsIG1heF9zcCwgZGVwdGgpOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorZmF1bHRoYW5kbGVyX3N0YWNrX292ZXJmbG93KFB5T2JqZWN0ICpzZWxmKQoreworICAgIHNpemVfdCBkZXB0aCwgc2l6ZTsKKyAgICBjaGFyICpzcCA9IChjaGFyICopJmRlcHRoLCAqc3RvcDsKKworICAgIGRlcHRoID0gMDsKKyAgICBzdG9wID0gc3RhY2tfb3ZlcmZsb3coc3AgLSBTVEFDS19PVkVSRkxPV19NQVhfU0laRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc3AgKyBTVEFDS19PVkVSRkxPV19NQVhfU0laRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJmRlcHRoKTsKKyAgICBpZiAoc3AgPCBzdG9wKQorICAgICAgICBzaXplID0gc3RvcCAtIHNwOworICAgIGVsc2UKKyAgICAgICAgc2l6ZSA9IHNwIC0gc3RvcDsKKyAgICBQeUVycl9Gb3JtYXQoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAidW5hYmxlIHRvIHJhaXNlIGEgc3RhY2sgb3ZlcmZsb3cgKGFsbG9jYXRlZCAlenUgYnl0ZXMgIgorICAgICAgICAib24gdGhlIHN0YWNrLCAlenUgcmVjdXJzaXZlIGNhbGxzKSIsCisgICAgICAgIHNpemUsIGRlcHRoKTsKKyAgICByZXR1cm4gTlVMTDsKK30KKyNlbmRpZgorCisKK3N0YXRpYyBpbnQKK2ZhdWx0aGFuZGxlcl90cmF2ZXJzZShQeU9iamVjdCAqbW9kdWxlLCB2aXNpdHByb2MgdmlzaXQsIHZvaWQgKmFyZykKK3sKKyNpZmRlZiBGQVVMVEhBTkRMRVJfVVNFUgorICAgIHVuc2lnbmVkIGludCBzaWdudW07CisjZW5kaWYKKworI2lmZGVmIEZBVUxUSEFORExFUl9MQVRFUgorICAgIFB5X1ZJU0lUKHRocmVhZC5maWxlKTsKKyNlbmRpZgorI2lmZGVmIEZBVUxUSEFORExFUl9VU0VSCisgICAgaWYgKHVzZXJfc2lnbmFscyAhPSBOVUxMKSB7CisgICAgICAgIGZvciAoc2lnbnVtPTA7IHNpZ251bSA8IE5TSUc7IHNpZ251bSsrKQorICAgICAgICAgICAgUHlfVklTSVQodXNlcl9zaWduYWxzW3NpZ251bV0uZmlsZSk7CisgICAgfQorI2VuZGlmCisgICAgUHlfVklTSVQoZmF0YWxfZXJyb3IuZmlsZSk7CisgICAgcmV0dXJuIDA7Cit9CisKK1B5RG9jX1NUUlZBUihtb2R1bGVfZG9jLAorImZhdWx0aGFuZGxlciBtb2R1bGUuIik7CisKK3N0YXRpYyBQeU1ldGhvZERlZiBtb2R1bGVfbWV0aG9kc1tdID0geworICAgIHsiZW5hYmxlIiwKKyAgICAgKFB5Q0Z1bmN0aW9uKWZhdWx0aGFuZGxlcl9lbmFibGUsIE1FVEhfVkFSQVJHU3xNRVRIX0tFWVdPUkRTLAorICAgICBQeURvY19TVFIoImVuYWJsZShmaWxlPXN5cy5zdGRlcnIsIGFsbF90aHJlYWRzPVRydWUpOiAiCisgICAgICAgICAgICAgICAiZW5hYmxlIHRoZSBmYXVsdCBoYW5kbGVyIil9LAorICAgIHsiZGlzYWJsZSIsIChQeUNGdW5jdGlvbilmYXVsdGhhbmRsZXJfZGlzYWJsZV9weSwgTUVUSF9OT0FSR1MsCisgICAgIFB5RG9jX1NUUigiZGlzYWJsZSgpOiBkaXNhYmxlIHRoZSBmYXVsdCBoYW5kbGVyIil9LAorICAgIHsiaXNfZW5hYmxlZCIsIChQeUNGdW5jdGlvbilmYXVsdGhhbmRsZXJfaXNfZW5hYmxlZCwgTUVUSF9OT0FSR1MsCisgICAgIFB5RG9jX1NUUigiaXNfZW5hYmxlZCgpLT5ib29sOiBjaGVjayBpZiB0aGUgaGFuZGxlciBpcyBlbmFibGVkIil9LAorICAgIHsiZHVtcF90cmFjZWJhY2siLAorICAgICAoUHlDRnVuY3Rpb24pZmF1bHRoYW5kbGVyX2R1bXBfdHJhY2ViYWNrX3B5LCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKKyAgICAgUHlEb2NfU1RSKCJkdW1wX3RyYWNlYmFjayhmaWxlPXN5cy5zdGRlcnIsIGFsbF90aHJlYWRzPVRydWUpOiAiCisgICAgICAgICAgICAgICAiZHVtcCB0aGUgdHJhY2ViYWNrIG9mIHRoZSBjdXJyZW50IHRocmVhZCwgb3Igb2YgYWxsIHRocmVhZHMgIgorICAgICAgICAgICAgICAgImlmIGFsbF90aHJlYWRzIGlzIFRydWUsIGludG8gZmlsZSIpfSwKKyNpZmRlZiBGQVVMVEhBTkRMRVJfTEFURVIKKyAgICB7ImR1bXBfdHJhY2ViYWNrc19sYXRlciIsCisgICAgIChQeUNGdW5jdGlvbilmYXVsdGhhbmRsZXJfZHVtcF90cmFjZWJhY2tzX2xhdGVyLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKKyAgICAgUHlEb2NfU1RSKCJkdW1wX3RyYWNlYmFja3NfbGF0ZXIodGltZW91dCwgcmVwZWF0PUZhbHNlLCBmaWxlPXN5cy5zdGRlcnJuLCBleGl0PUZhbHNlKTpcbiIKKyAgICAgICAgICAgICAgICJkdW1wIHRoZSB0cmFjZWJhY2sgb2YgYWxsIHRocmVhZHMgaW4gdGltZW91dCBzZWNvbmRzLFxuIgorICAgICAgICAgICAgICAgIm9yIGVhY2ggdGltZW91dCBzZWNvbmRzIGlmIHJlcGVhdCBpcyBUcnVlLiBJZiBleGl0IGlzIFRydWUsICIKKyAgICAgICAgICAgICAgICJjYWxsIF9leGl0KDEpIHdoaWNoIGlzIG5vdCBzYWZlLiIpfSwKKyAgICB7ImNhbmNlbF9kdW1wX3RyYWNlYmFja3NfbGF0ZXIiLAorICAgICAoUHlDRnVuY3Rpb24pZmF1bHRoYW5kbGVyX2NhbmNlbF9kdW1wX3RyYWNlYmFja3NfbGF0ZXJfcHksIE1FVEhfTk9BUkdTLAorICAgICBQeURvY19TVFIoImNhbmNlbF9kdW1wX3RyYWNlYmFja3NfbGF0ZXIoKTpcbmNhbmNlbCB0aGUgcHJldmlvdXMgY2FsbCAiCisgICAgICAgICAgICAgICAidG8gZHVtcF90cmFjZWJhY2tzX2xhdGVyKCkuIil9LAorI2VuZGlmCisKKyNpZmRlZiBGQVVMVEhBTkRMRVJfV0FUQ0hET0cKKyAgICB7Il9maWxlX3dhdGNoZG9nIiwKKyAgICAgKFB5Q0Z1bmN0aW9uKWZhdWx0aGFuZGxlcl9maWxlX3dhdGNoZG9nLCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKKyAgICAgUHlEb2NfU1RSKCJfZmlsZV93YXRjaGRvZyhyZmQsIHdmZCwgcGVyaW9kKTpcbiIKKyAgICAgICAgICAgICAgICJmZWVkIHRoZSBjb250ZW50cyBvZiAncmZkJyB0byAnd2ZkJywgaWYgY2hhbmdlZCxcbiIKKyAgICAgICAgICAgICAgICJldmVyeSAncGVyaW9kIHNlY29uZHMnLiIpfSwKKyAgICB7Il9jYW5jZWxfZmlsZV93YXRjaGRvZyIsCisgICAgIChQeUNGdW5jdGlvbilmYXVsdGhhbmRsZXJfY2FuY2VsX2ZpbGVfd2F0Y2hkb2csIE1FVEhfTk9BUkdTLAorICAgICBQeURvY19TVFIoIl9jYW5jZWxfZmlsZV93YXRjaGRvZygpOlxuY2FuY2VsIHRoZSBwcmV2aW91cyBjYWxsICIKKyAgICAgICAgICAgICAgICJ0byBfZmlsZV93YXRjaGRvZygpLiIpfSwKKyNlbmRpZgorCisjaWZkZWYgRkFVTFRIQU5ETEVSX1VTRVIKKyAgICB7InJlZ2lzdGVyIiwKKyAgICAgKFB5Q0Z1bmN0aW9uKWZhdWx0aGFuZGxlcl9yZWdpc3Rlcl9weSwgTUVUSF9WQVJBUkdTfE1FVEhfS0VZV09SRFMsCisgICAgIFB5RG9jX1NUUigicmVnaXN0ZXIoc2lnbnVtLCBmaWxlPXN5cy5zdGRlcnIsIGFsbF90aHJlYWRzPVRydWUsIGNoYWluPUZhbHNlKTogIgorICAgICAgICAgICAgICAgInJlZ2lzdGVyIGFuIGhhbmRsZXIgZm9yIHRoZSBzaWduYWwgJ3NpZ251bSc6IGR1bXAgdGhlICIKKyAgICAgICAgICAgICAgICJ0cmFjZWJhY2sgb2YgdGhlIGN1cnJlbnQgdGhyZWFkLCBvciBvZiBhbGwgdGhyZWFkcyBpZiAiCisgICAgICAgICAgICAgICAiYWxsX3RocmVhZHMgaXMgVHJ1ZSwgaW50byBmaWxlIil9LAorICAgIHsidW5yZWdpc3RlciIsCisgICAgIGZhdWx0aGFuZGxlcl91bnJlZ2lzdGVyX3B5LCBNRVRIX1ZBUkFSR1N8TUVUSF9LRVlXT1JEUywKKyAgICAgUHlEb2NfU1RSKCJ1bnJlZ2lzdGVyKHNpZ251bSk6IHVucmVnaXN0ZXIgdGhlIGhhbmRsZXIgb2YgdGhlIHNpZ25hbCAiCisgICAgICAgICAgICAgICAgIidzaWdudW0nIHJlZ2lzdGVyZWQgYnkgcmVnaXN0ZXIoKSIpfSwKKyNlbmRpZgorCisgICAgeyJfcmVhZF9udWxsIiwgZmF1bHRoYW5kbGVyX3JlYWRfbnVsbCwgTUVUSF9WQVJBUkdTLAorICAgICBQeURvY19TVFIoIl9yZWFkX251bGwocmVsZWFzZV9naWw9RmFsc2UpOiByZWFkIGZyb20gTlVMTCwgcmFpc2UgIgorICAgICAgICAgICAgICAgImEgU0lHU0VHViBvciBTSUdCVVMgc2lnbmFsIGRlcGVuZGluZyBvbiB0aGUgcGxhdGZvcm0iKX0sCisgICAgeyJfc2lnc2VndiIsIGZhdWx0aGFuZGxlcl9zaWdzZWd2LCBNRVRIX1ZBUkFSR1MsCisgICAgIFB5RG9jX1NUUigiX3NpZ3NlZ3YoKTogcmFpc2UgYSBTSUdTRUdWIHNpZ25hbCIpfSwKKyAgICB7Il9zaWdhYnJ0IiwgZmF1bHRoYW5kbGVyX3NpZ2FicnQsIE1FVEhfVkFSQVJHUywKKyAgICAgUHlEb2NfU1RSKCJfc2lnYWJydCgpOiByYWlzZSBhIFNJR0FCUlQgc2lnbmFsIil9LAorICAgIHsiX3NpZ2ZwZSIsIChQeUNGdW5jdGlvbilmYXVsdGhhbmRsZXJfc2lnZnBlLCBNRVRIX05PQVJHUywKKyAgICAgUHlEb2NfU1RSKCJfc2lnZnBlKCk6IHJhaXNlIGEgU0lHRlBFIHNpZ25hbCIpfSwKKyNpZmRlZiBTSUdCVVMKKyAgICB7Il9zaWdidXMiLCAoUHlDRnVuY3Rpb24pZmF1bHRoYW5kbGVyX3NpZ2J1cywgTUVUSF9OT0FSR1MsCisgICAgIFB5RG9jX1NUUigiX3NpZ2J1cygpOiByYWlzZSBhIFNJR0JVUyBzaWduYWwiKX0sCisjZW5kaWYKKyNpZmRlZiBTSUdJTEwKKyAgICB7Il9zaWdpbGwiLCAoUHlDRnVuY3Rpb24pZmF1bHRoYW5kbGVyX3NpZ2lsbCwgTUVUSF9OT0FSR1MsCisgICAgIFB5RG9jX1NUUigiX3NpZ2lsbCgpOiByYWlzZSBhIFNJR0lMTCBzaWduYWwiKX0sCisjZW5kaWYKKyAgICB7Il9mYXRhbF9lcnJvciIsIGZhdWx0aGFuZGxlcl9mYXRhbF9lcnJvcl9weSwgTUVUSF9WQVJBUkdTLAorICAgICBQeURvY19TVFIoIl9mYXRhbF9lcnJvcihtZXNzYWdlKTogY2FsbCBQeV9GYXRhbEVycm9yKG1lc3NhZ2UpIil9LAorI2lmIGRlZmluZWQoSEFWRV9TSUdBTFRTVEFDSykgJiYgZGVmaW5lZChIQVZFX1NJR0FDVElPTikKKyAgICB7Il9zdGFja19vdmVyZmxvdyIsIChQeUNGdW5jdGlvbilmYXVsdGhhbmRsZXJfc3RhY2tfb3ZlcmZsb3csIE1FVEhfTk9BUkdTLAorICAgICBQeURvY19TVFIoIl9zdGFja19vdmVyZmxvdygpOiByZWN1cnNpdmUgY2FsbCB0byByYWlzZSBhIHN0YWNrIG92ZXJmbG93Iil9LAorI2VuZGlmCisgICAge05VTEwsIE5VTEx9ICAvKiBzZW50aW5lbCAqLworfTsKKworc3RhdGljIHN0cnVjdCBQeU1vZHVsZURlZiBtb2R1bGVfZGVmID0geworICAgIFB5TW9kdWxlRGVmX0hFQURfSU5JVCwKKyAgICAiZmF1bHRoYW5kbGVyIiwKKyAgICBtb2R1bGVfZG9jLAorICAgIDAsIC8qIG5vbi1uZWdhdGl2ZSBzaXplIHRvIGJlIGFibGUgdG8gdW5sb2FkIHRoZSBtb2R1bGUgKi8KKyAgICBtb2R1bGVfbWV0aG9kcywKKyAgICBOVUxMLAorICAgIGZhdWx0aGFuZGxlcl90cmF2ZXJzZSwKKyAgICBOVUxMLAorICAgIE5VTEwKK307CisKK1B5TU9ESU5JVF9GVU5DCitQeUluaXRfZmF1bHRoYW5kbGVyKHZvaWQpCit7CisgICAgcmV0dXJuIFB5TW9kdWxlX0NyZWF0ZSgmbW9kdWxlX2RlZik7Cit9CisKKy8qIENhbGwgZmF1bHRoYW5kbGVyLmVuYWJsZSgpIGlmIHRoZSBQWVRIT05GQVVMVEhBTkRMRVIgZW52aXJvbm1lbnQgdmFyaWFibGUKKyAgIGlzIGRlZmluZWQsIG9yIGlmIHN5cy5feG9wdGlvbnMgaGFzIGEgJ2ZhdWx0aGFuZGxlcicga2V5LiAqLworCitzdGF0aWMgaW50CitmYXVsdGhhbmRsZXJfZW52X29wdGlvbnModm9pZCkKK3sKKyAgICBQeU9iamVjdCAqeG9wdGlvbnMsICprZXksICptb2R1bGUsICpyZXM7CisgICAgX1B5X0lERU5USUZJRVIoZW5hYmxlKTsKKworICAgIGlmICghUHlfR0VURU5WKCJQWVRIT05GQVVMVEhBTkRMRVIiKSkgeworICAgICAgICBpbnQgaGFzX2tleTsKKworICAgICAgICB4b3B0aW9ucyA9IFB5U3lzX0dldFhPcHRpb25zKCk7CisgICAgICAgIGlmICh4b3B0aW9ucyA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIC0xOworCisgICAgICAgIGtleSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCJmYXVsdGhhbmRsZXIiKTsKKyAgICAgICAgaWYgKGtleSA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIC0xOworCisgICAgICAgIGhhc19rZXkgPSBQeURpY3RfQ29udGFpbnMoeG9wdGlvbnMsIGtleSk7CisgICAgICAgIFB5X0RFQ1JFRihrZXkpOworICAgICAgICBpZiAoIWhhc19rZXkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBtb2R1bGUgPSBQeUltcG9ydF9JbXBvcnRNb2R1bGUoImZhdWx0aGFuZGxlciIpOworICAgIGlmIChtb2R1bGUgPT0gTlVMTCkgeworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIHJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQobW9kdWxlLCAmUHlJZF9lbmFibGUsICIiKTsKKyAgICBQeV9ERUNSRUYobW9kdWxlKTsKKyAgICBpZiAocmVzID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBQeV9ERUNSRUYocmVzKTsKKyAgICByZXR1cm4gMDsKK30KKworaW50IF9QeUZhdWx0aGFuZGxlcl9Jbml0KHZvaWQpCit7CisjaWZkZWYgSEFWRV9TSUdBTFRTVEFDSworICAgIGludCBlcnI7CisKKyAgICAvKiBUcnkgdG8gYWxsb2NhdGUgYW4gYWx0ZXJuYXRlIHN0YWNrIGZvciBmYXVsdGhhbmRsZXIoKSBzaWduYWwgaGFuZGxlciB0bworICAgICAqIGJlIGFibGUgdG8gYWxsb2NhdGUgbWVtb3J5IG9uIHRoZSBzdGFjaywgZXZlbiBvbiBhIHN0YWNrIG92ZXJmbG93LiBJZiBpdAorICAgICAqIGZhaWxzLCBpZ25vcmUgdGhlIGVycm9yLiAqLworICAgIHN0YWNrLnNzX2ZsYWdzID0gMDsKKyAgICBzdGFjay5zc19zaXplID0gU0lHU1RLU1o7CisgICAgc3RhY2suc3Nfc3AgPSBQeU1lbV9NYWxsb2Moc3RhY2suc3Nfc2l6ZSk7CisgICAgaWYgKHN0YWNrLnNzX3NwICE9IE5VTEwpIHsKKyAgICAgICAgZXJyID0gc2lnYWx0c3RhY2soJnN0YWNrLCBOVUxMKTsKKyAgICAgICAgaWYgKGVycikgeworICAgICAgICAgICAgUHlNZW1fRnJlZShzdGFjay5zc19zcCk7CisgICAgICAgICAgICBzdGFjay5zc19zcCA9IE5VTEw7CisgICAgICAgIH0KKyAgICB9CisjZW5kaWYKKyNpZmRlZiBGQVVMVEhBTkRMRVJfTEFURVIKKyAgICB0aHJlYWQuZmlsZSA9IE5VTEw7CisgICAgdGhyZWFkLmNhbmNlbF9ldmVudCA9IFB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKTsKKyAgICB0aHJlYWQucnVubmluZyA9IFB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKTsKKyAgICBpZiAoIXRocmVhZC5jYW5jZWxfZXZlbnQgfHwgIXRocmVhZC5ydW5uaW5nKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiY291bGQgbm90IGFsbG9jYXRlIGxvY2tzIGZvciBmYXVsdGhhbmRsZXIiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBQeVRocmVhZF9hY3F1aXJlX2xvY2sodGhyZWFkLmNhbmNlbF9ldmVudCwgMSk7CisjZW5kaWYKKyNpZmRlZiBGQVVMVEhBTkRMRVJfV0FUQ0hET0cKKyAgICB3YXRjaGRvZy5jYW5jZWxfZXZlbnQgPSBQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKCk7CisgICAgd2F0Y2hkb2cucnVubmluZyA9IFB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKTsKKyAgICBpZiAoIXdhdGNoZG9nLmNhbmNlbF9ldmVudCB8fCAhd2F0Y2hkb2cucnVubmluZykgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgImNvdWxkIG5vdCBhbGxvY2F0ZSBsb2NrcyBmb3IgZmF1bHRoYW5kbGVyIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgUHlUaHJlYWRfYWNxdWlyZV9sb2NrKHdhdGNoZG9nLmNhbmNlbF9ldmVudCwgMSk7CisjZW5kaWYKKworICAgIHJldHVybiBmYXVsdGhhbmRsZXJfZW52X29wdGlvbnMoKTsKK30KKwordm9pZCBfUHlGYXVsdGhhbmRsZXJfRmluaSh2b2lkKQoreworI2lmZGVmIEZBVUxUSEFORExFUl9VU0VSCisgICAgdW5zaWduZWQgaW50IHNpZ251bTsKKyNlbmRpZgorCisjaWZkZWYgRkFVTFRIQU5ETEVSX0xBVEVSCisgICAgLyogbGF0ZXIgKi8KKyAgICBpZiAodGhyZWFkLmNhbmNlbF9ldmVudCkgeworICAgICAgICBjYW5jZWxfZHVtcF90cmFjZWJhY2tzX2xhdGVyKCk7CisgICAgICAgIFB5VGhyZWFkX3JlbGVhc2VfbG9jayh0aHJlYWQuY2FuY2VsX2V2ZW50KTsKKyAgICAgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHRocmVhZC5jYW5jZWxfZXZlbnQpOworICAgICAgICB0aHJlYWQuY2FuY2VsX2V2ZW50ID0gTlVMTDsKKyAgICB9CisgICAgaWYgKHRocmVhZC5ydW5uaW5nKSB7CisgICAgICAgIFB5VGhyZWFkX2ZyZWVfbG9jayh0aHJlYWQucnVubmluZyk7CisgICAgICAgIHRocmVhZC5ydW5uaW5nID0gTlVMTDsKKyAgICB9CisjZW5kaWYKKworI2lmZGVmIEZBVUxUSEFORExFUl9XQVRDSERPRworICAgIC8qIGZpbGUgd2F0Y2hkb2cgKi8KKyAgICBpZiAod2F0Y2hkb2cuY2FuY2VsX2V2ZW50KSB7CisgICAgICAgIGNhbmNlbF9maWxlX3dhdGNoZG9nKCk7CisgICAgICAgIFB5VGhyZWFkX3JlbGVhc2VfbG9jayh3YXRjaGRvZy5jYW5jZWxfZXZlbnQpOworICAgICAgICBQeVRocmVhZF9mcmVlX2xvY2sod2F0Y2hkb2cuY2FuY2VsX2V2ZW50KTsKKyAgICAgICAgd2F0Y2hkb2cuY2FuY2VsX2V2ZW50ID0gTlVMTDsKKyAgICB9CisgICAgaWYgKHdhdGNoZG9nLnJ1bm5pbmcpIHsKKyAgICAgICAgUHlUaHJlYWRfZnJlZV9sb2NrKHdhdGNoZG9nLnJ1bm5pbmcpOworICAgICAgICB3YXRjaGRvZy5ydW5uaW5nID0gTlVMTDsKKyAgICB9CisjZW5kaWYKKworI2lmZGVmIEZBVUxUSEFORExFUl9VU0VSCisgICAgLyogdXNlciAqLworICAgIGlmICh1c2VyX3NpZ25hbHMgIT0gTlVMTCkgeworICAgICAgICBmb3IgKHNpZ251bT0wOyBzaWdudW0gPCBOU0lHOyBzaWdudW0rKykKKyAgICAgICAgICAgIGZhdWx0aGFuZGxlcl91bnJlZ2lzdGVyKCZ1c2VyX3NpZ25hbHNbc2lnbnVtXSwgc2lnbnVtKTsKKyAgICAgICAgZnJlZSh1c2VyX3NpZ25hbHMpOworICAgICAgICB1c2VyX3NpZ25hbHMgPSBOVUxMOworICAgIH0KKyNlbmRpZgorCisgICAgLyogZmF0YWwgKi8KKyAgICBmYXVsdGhhbmRsZXJfZGlzYWJsZSgpOworI2lmZGVmIEhBVkVfU0lHQUxUU1RBQ0sKKyAgICBpZiAoc3RhY2suc3Nfc3AgIT0gTlVMTCkgeworICAgICAgICBQeU1lbV9GcmVlKHN0YWNrLnNzX3NwKTsKKyAgICAgICAgc3RhY2suc3Nfc3AgPSBOVUxMOworICAgIH0KKyNlbmRpZgorfQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9mY250bG1vZHVsZS5jIGIvTW9kdWxlcy9mY250bG1vZHVsZS5jCmluZGV4IGJmYzU5ODUuLjZiN2UzZmMgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvZmNudGxtb2R1bGUuYworKysgYi9Nb2R1bGVzL2ZjbnRsbW9kdWxlLmMKQEAgLTU0MCwxMCArNTQwLDEzIEBACiAgICAgaWYgKGlucyhkLCAiRl9TSExDSyIsIChsb25nKUZfU0hMQ0spKSByZXR1cm4gLTE7CiAjZW5kaWYKIAotLyogT1MgWCAoYW5kIG1heWJlIG90aGVycykgbGV0IHlvdSB0ZWxsIHRoZSBzdG9yYWdlIGRldmljZSB0byBmbHVzaCB0byBwaHlzaWNhbCBtZWRpYSAqLworLyogT1MgWCBzcGVjaWZpY3MgKi8KICNpZmRlZiBGX0ZVTExGU1lOQwogICAgIGlmIChpbnMoZCwgIkZfRlVMTEZTWU5DIiwgKGxvbmcpRl9GVUxMRlNZTkMpKSByZXR1cm4gLTE7CiAjZW5kaWYKKyNpZmRlZiBGX05PQ0FDSEUKKyAgICBpZiAoaW5zKGQsICJGX05PQ0FDSEUiLCAobG9uZylGX05PQ0FDSEUpKSByZXR1cm4gLTE7CisjZW5kaWYKIAogLyogRm9yIEZfe0dFVHxTRVR9RkwgKi8KICNpZmRlZiBGRF9DTE9FWEVDCmRpZmYgLS1naXQgYS9Nb2R1bGVzL2ZwZWN0bG1vZHVsZS5jIGIvTW9kdWxlcy9mcGVjdGxtb2R1bGUuYwppbmRleCAxYmI1MWNmLi42YWYyZjgyIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2ZwZWN0bG1vZHVsZS5jCisrKyBiL01vZHVsZXMvZnBlY3RsbW9kdWxlLmMKQEAgLTE3NCwxNyArMTc0LDYgQEAKICAgICBmcF9lbmFibGUoVFJQX0lOVkFMSUQgfCBUUlBfRElWX0JZX1pFUk8gfCBUUlBfT1ZFUkZMT1cpOwogICAgIFB5T1Nfc2V0c2lnKFNJR0ZQRSwgaGFuZGxlcik7CiAKLS8qLS0gREVDIEFMUEhBIE9TRiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi0jZWxpZiBkZWZpbmVkKF9fYWxwaGEpICYmIGRlZmluZWQoX19vc2ZfXykKLSAgICAvKiBSZWZlcmVuY2VzOiAgIGV4Y2VwdGlvbl9pbnRybywgaWVlZSBtYW4gcGFnZXMgKi8KLSAgICAvKiBjYyAtYyAtSS91c3IvbG9jYWwvcHl0aG9uL2luY2x1ZGUgZnBlY3RsbW9kdWxlLmMgKi8KLSAgICAvKiBsZCAtc2hhcmVkIC1vIGZwZWN0bG1vZHVsZS5zbyBmcGVjdGxtb2R1bGUubyAqLwotI2luY2x1ZGUgPG1hY2hpbmUvZnB1Lmg+Ci0gICAgdW5zaWduZWQgbG9uZyBmcF9jb250cm9sID0KLSAgICBJRUVFX1RSQVBfRU5BQkxFX0lOViB8IElFRUVfVFJBUF9FTkFCTEVfRFpFIHwgSUVFRV9UUkFQX0VOQUJMRV9PVkY7Ci0gICAgaWVlZV9zZXRfZnBfY29udHJvbChmcF9jb250cm9sKTsKLSAgICBQeU9TX3NldHNpZyhTSUdGUEUsIGhhbmRsZXIpOwotCiAvKi0tIERFQyBBTFBIQSBMSU5VWCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwogI2VsaWYgZGVmaW5lZChfX2FscGhhKSAmJiBkZWZpbmVkKGxpbnV4KQogI2luY2x1ZGUgPGFzbS9mcHUuaD4KZGlmZiAtLWdpdCBhL01vZHVsZXMvZ2Nfd2Vha3JlZi50eHQgYi9Nb2R1bGVzL2djX3dlYWtyZWYudHh0CmluZGV4IGQ3YmU2YzMuLjJmMTg0MDIgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvZ2Nfd2Vha3JlZi50eHQKKysrIGIvTW9kdWxlcy9nY193ZWFrcmVmLnR4dApAQCAtMTUsOCArMTUsOCBAQAogaGlzdG9yaWNhbGx5IGNvbW1vbiBidWcpLCB0cF9jbGVhciBlbXB0aWVzIGFuIGluc3RhbmNlJ3MgX19kaWN0X18sIGFuZAogImltcG9zc2libGUiIEF0dHJpYnV0ZUVycm9ycyByZXN1bHQuICBBdCB3b3JzdCwgdHBfY2xlYXIgbGVhdmVzIGJlaGluZCBhbgogaW5zYW5lIG9iamVjdCBhdCB0aGUgQyBsZXZlbCwgYW5kIHNlZ2ZhdWx0cyByZXN1bHQgKGhpc3RvcmljYWxseSwgbW9zdAotb2Z0ZW4gYnkgc2V0dGluZyBhIG5ldy1zdHlsZSBjbGFzcydzIG1ybyBwb2ludGVyIHRvIE5VTEwsIGFmdGVyIHdoaWNoCi1hdHRyaWJ1dGUgbG9va3VwcyBwZXJmb3JtZWQgYnkgdGhlIGNsYXNzIGNhbiBzZWdmYXVsdCkuCitvZnRlbiBieSBzZXR0aW5nIGEgY2xhc3MncyBtcm8gcG9pbnRlciB0byBOVUxMLCBhZnRlciB3aGljaCBhdHRyaWJ1dGUKK2xvb2t1cHMgcGVyZm9ybWVkIGJ5IHRoZSBjbGFzcyBjYW4gc2VnZmF1bHQpLgogCiBPVE9ILCBpdCdzIE9LIHRvIHJ1biBQeXRob24tbGV2ZWwgY29kZSB0aGF0IGNhbid0IGFjY2VzcyB1bnJlYWNoYWJsZQogb2JqZWN0cywgYW5kIHNvbWV0aW1lcyB0aGF0J3MgbmVjZXNzYXJ5LiAgVGhlIGNoaWVmIGV4YW1wbGUgaXMgdGhlIGNhbGxiYWNrCkBAIC0xMTksNyArMTE5LDcgQEAKIGl0IHRvb2sgcXVpdGUgYSB3aGlsZSB0byBkcmVhbSB1cCBmYWlsaW5nIHRlc3QgY2FzZXMuICBab3BlMyBzYXcgc2VnZmF1bHRzCiBkdXJpbmcgc2h1dGRvd24sIGR1cmluZyB0aGUgc2Vjb25kIGNhbGwgb2YgZ2MgaW4gUHlfRmluYWxpemUsIGFmdGVyIG1vc3QKIG1vZHVsZXMgaGFkIGJlZW4gdG9ybiBkb3duLiAgVGhhdCBjcmVhdGVzIG1hbnkgdHJhc2ggY3ljbGVzIChlc3AuIHRob3NlCi1pbnZvbHZpbmcgbmV3LXN0eWxlIGNsYXNzZXMpLCBtYWtpbmcgdGhlIHByb2JsZW0gbXVjaCBtb3JlIGxpa2VseS4gIE9uY2UgeW91CitpbnZvbHZpbmcgY2xhc3NlcyksIG1ha2luZyB0aGUgcHJvYmxlbSBtdWNoIG1vcmUgbGlrZWx5LiAgT25jZSB5b3UKIGtub3cgd2hhdCdzIHJlcXVpcmVkIHRvIHByb3Zva2UgdGhlIHByb2JsZW0sIHRob3VnaCwgaXQncyBlYXN5IHRvIGNyZWF0ZQogdGVzdHMgdGhhdCBzZWdmYXVsdCBiZWZvcmUgc2h1dGRvd24uCiAKZGlmZiAtLWdpdCBhL01vZHVsZXMvZ2Ntb2R1bGUuYyBiL01vZHVsZXMvZ2Ntb2R1bGUuYwppbmRleCAxMGE0ZWQ3Li4xODc2ZTkzIDEwMDY0NAotLS0gYS9Nb2R1bGVzL2djbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9nY21vZHVsZS5jCkBAIC02ODAsOCArNjgwLDggQEAKIHN0YXRpYyB2b2lkCiBkZWJ1Z19jeWNsZShjaGFyICptc2csIFB5T2JqZWN0ICpvcCkKIHsKLSAgICBQeVN5c19Xcml0ZVN0ZGVycigiZ2M6ICUuMTAwcyA8JS4xMDBzICVwPlxuIiwKLSAgICAgICAgICAgICAgICAgICAgICBtc2csIFB5X1RZUEUob3ApLT50cF9uYW1lLCBvcCk7CisgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCJnYzogJXMgPCVzICVwPlxuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgbXNnLCBQeV9UWVBFKG9wKS0+dHBfbmFtZSwgb3ApOwogfQogCiAvKiBIYW5kbGUgdW5jb2xsZWN0YWJsZSBnYXJiYWdlIChjeWNsZXMgd2l0aCBmaW5hbGl6ZXJzLCBhbmQgc3R1ZmYgcmVhY2hhYmxlCkBAIC03NjIsNiArNzYyLDkgQEAKICAgICAodm9pZClQeVR1cGxlX0NsZWFyRnJlZUxpc3QoKTsKICAgICAodm9pZClQeVVuaWNvZGVfQ2xlYXJGcmVlTGlzdCgpOwogICAgICh2b2lkKVB5RmxvYXRfQ2xlYXJGcmVlTGlzdCgpOworICAgICh2b2lkKVB5TGlzdF9DbGVhckZyZWVMaXN0KCk7CisgICAgKHZvaWQpUHlEaWN0X0NsZWFyRnJlZUxpc3QoKTsKKyAgICAodm9pZClQeVNldF9DbGVhckZyZWVMaXN0KCk7CiB9CiAKIHN0YXRpYyBkb3VibGUKQEAgLTc2OSw3ICs3NzIsOSBAQAogewogICAgIGRvdWJsZSByZXN1bHQgPSAwOwogICAgIGlmICh0bW9kICE9IE5VTEwpIHsKLSAgICAgICAgUHlPYmplY3QgKmYgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHRtb2QsICJ0aW1lIiwgTlVMTCk7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHRpbWUpOworCisgICAgICAgIFB5T2JqZWN0ICpmID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCh0bW9kLCAmUHlJZF90aW1lLCBOVUxMKTsKICAgICAgICAgaWYgKGYgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9nZXRidWlsZGluZm8uYyBiL01vZHVsZXMvZ2V0YnVpbGRpbmZvLmMKaW5kZXggNzA2OWI2ZS4uMDk3MWE2NCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9nZXRidWlsZGluZm8uYworKysgYi9Nb2R1bGVzL2dldGJ1aWxkaW5mby5jCkBAIC0yMCwxNCArMjAsNiBAQAogI2VuZGlmCiAjZW5kaWYKIAotLyogb24gdW5peCwgU1ZOVkVSU0lPTiBpcyBwYXNzZWQgb24gdGhlIGNvbW1hbmQgbGluZS4KLSAqIG9uIFdpbmRvd3MsIHRoZSBzdHJpbmcgaXMgaW50ZXJwb2xhdGVkIHVzaW5nCi0gKiBzdWJ3Y3Jldi5leGUKLSAqLwotI2lmbmRlZiBTVk5WRVJTSU9OCi0jZGVmaW5lIFNWTlZFUlNJT04gIiRXQ1JBTkdFJCRXQ01PRFM/TTokIgotI2VuZGlmCi0KIC8qIFhYWCBPbmx5IHVuaXggYnVpbGQgcHJvY2VzcyBoYXMgYmVlbiB0ZXN0ZWQgKi8KICNpZm5kZWYgSEdWRVJTSU9OCiAjZGVmaW5lIEhHVkVSU0lPTiAiIgpAQCAtNTcsMTYgKzQ5LDYgQEAKIH0KIAogY29uc3QgY2hhciAqCi1fUHlfc3ZudmVyc2lvbih2b2lkKQotewotICAgIC8qIHRoZSBmb2xsb3dpbmcgc3RyaW5nIGNhbiBiZSBtb2RpZmllZCBieSBzdWJ3Y3Jldi5leGUgKi8KLSAgICBzdGF0aWMgY29uc3QgY2hhciBzdm52ZXJzaW9uW10gPSBTVk5WRVJTSU9OOwotICAgIGlmIChzdm52ZXJzaW9uWzBdICE9ICckJykKLSAgICAgICAgcmV0dXJuIHN2bnZlcnNpb247IC8qIGl0IHdhcyBpbnRlcnBvbGF0ZWQsIG9yIHBhc3NlZCBvbiBjb21tYW5kIGxpbmUgKi8KLSAgICByZXR1cm4gIlVudmVyc2lvbmVkIGRpcmVjdG9yeSI7Ci19Ci0KLWNvbnN0IGNoYXIgKgogX1B5X2hndmVyc2lvbih2b2lkKQogewogICAgIHJldHVybiBIR1ZFUlNJT047CmRpZmYgLS1naXQgYS9Nb2R1bGVzL2dldHBhdGguYyBiL01vZHVsZXMvZ2V0cGF0aC5jCmluZGV4IGI3Zjk1NzMuLjcwOTA4NzkgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvZ2V0cGF0aC5jCisrKyBiL01vZHVsZXMvZ2V0cGF0aC5jCkBAIC00MDYsNyArNDA2LDcgQEAKICAgICBzdGF0aWMgd2NoYXJfdCBkZWxpbWl0ZXJbMl0gPSB7REVMSU0sICdcMCd9OwogICAgIHN0YXRpYyB3Y2hhcl90IHNlcGFyYXRvclsyXSA9IHtTRVAsICdcMCd9OwogICAgIGNoYXIgKl9ydHB5cGF0aCA9IFB5X0dFVEVOVigiUFlUSE9OUEFUSCIpOyAvKiBYWFggdXNlIHdpZGUgdmVyc2lvbiBvbiBXaW5kb3dzICovCi0gICAgd2NoYXJfdCBydHB5cGF0aFtNQVhQQVRITEVOKzFdOworICAgIHdjaGFyX3QgKnJ0cHlwYXRoID0gTlVMTDsKICAgICB3Y2hhcl90ICpob21lID0gUHlfR2V0UHl0aG9uSG9tZSgpOwogICAgIGNoYXIgKl9wYXRoID0gZ2V0ZW52KCJQQVRIIik7CiAgICAgd2NoYXJfdCAqcGF0aF9idWZmZXIgPSBOVUxMOwpAQCAtNjA2LDEyICs2MDYsMTIgQEAKICAgICBidWZzeiA9IDA7CiAKICAgICBpZiAoX3J0cHlwYXRoKSB7Ci0gICAgICAgIHNpemVfdCBzID0gbWJzdG93Y3MocnRweXBhdGgsIF9ydHB5cGF0aCwgc2l6ZW9mKHJ0cHlwYXRoKS9zaXplb2Yod2NoYXJfdCkpOwotICAgICAgICBpZiAocyA9PSAoc2l6ZV90KS0xIHx8IHMgPj1zaXplb2YocnRweXBhdGgpKQotICAgICAgICAgICAgLyogWFhYIGRlYWwgd2l0aCBlcnJvcnMgbW9yZSBncmFjZWZ1bGx5ICovCisgICAgICAgIHNpemVfdCBydHB5cGF0aF9sZW47CisgICAgICAgIHJ0cHlwYXRoID0gX1B5X2NoYXIyd2NoYXIoX3J0cHlwYXRoLCAmcnRweXBhdGhfbGVuKTsKKyAgICAgICAgaWYgKHJ0cHlwYXRoICE9IE5VTEwpCisgICAgICAgICAgICBidWZzeiArPSBydHB5cGF0aF9sZW4gKyAxOworICAgICAgICBlbHNlCiAgICAgICAgICAgICBfcnRweXBhdGggPSBOVUxMOwotICAgICAgICBpZiAoX3J0cHlwYXRoKQotICAgICAgICAgICAgYnVmc3ogKz0gd2NzbGVuKHJ0cHlwYXRoKSArIDE7CiAgICAgfQogCiAgICAgZGVmcGF0aCA9IF9weXRob25wYXRoOwpAQCAtNjQ1LDcgKzY0NSw3IEBACiAgICAgfQogICAgIGVsc2UgewogICAgICAgICAvKiBSdW4tdGltZSB2YWx1ZSBvZiAkUFlUSE9OUEFUSCBnb2VzIGZpcnN0ICovCi0gICAgICAgIGlmIChfcnRweXBhdGgpIHsKKyAgICAgICAgaWYgKHJ0cHlwYXRoKSB7CiAgICAgICAgICAgICB3Y3NjcHkoYnVmLCBydHB5cGF0aCk7CiAgICAgICAgICAgICB3Y3NjYXQoYnVmLCBkZWxpbWl0ZXIpOwogICAgICAgICB9CkBAIC03MTksNiArNzE5LDggQEAKICAgICBQeU1lbV9GcmVlKF9weXRob25wYXRoKTsKICAgICBQeU1lbV9GcmVlKF9wcmVmaXgpOwogICAgIFB5TWVtX0ZyZWUoX2V4ZWNfcHJlZml4KTsKKyAgICBpZiAocnRweXBhdGggIT0gTlVMTCkKKyAgICAgICAgUHlNZW1fRnJlZShydHB5cGF0aCk7CiB9CiAKIApkaWZmIC0tZ2l0IGEvTW9kdWxlcy9pdGVydG9vbHNtb2R1bGUuYyBiL01vZHVsZXMvaXRlcnRvb2xzbW9kdWxlLmMKaW5kZXggOGI2ZmE4NS4uMTViMGMxNyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9pdGVydG9vbHNtb2R1bGUuYworKysgYi9Nb2R1bGVzL2l0ZXJ0b29sc21vZHVsZS5jCkBAIC02MjYsNiArNjI2LDcgQEAKIHsKICAgICBQeV9zc2l6ZV90IGksIG49MjsKICAgICBQeU9iamVjdCAqaXQsICppdGVyYWJsZSwgKmNvcHlhYmxlLCAqcmVzdWx0OworICAgIF9QeV9JREVOVElGSUVSKF9fY29weV9fKTsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xuIiwgJml0ZXJhYmxlLCAmbikpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNjQzLDcgKzY0NCw3IEBACiAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgaWYgKCFQeU9iamVjdF9IYXNBdHRyU3RyaW5nKGl0LCAiX19jb3B5X18iKSkgeworICAgIGlmICghX1B5T2JqZWN0X0hhc0F0dHJJZChpdCwgJlB5SWRfX19jb3B5X18pKSB7CiAgICAgICAgIGNvcHlhYmxlID0gdGVlX2Zyb21pdGVyYWJsZShpdCk7CiAgICAgICAgIFB5X0RFQ1JFRihpdCk7CiAgICAgICAgIGlmIChjb3B5YWJsZSA9PSBOVUxMKSB7CkBAIC02NTQsNyArNjU1LDggQEAKICAgICAgICAgY29weWFibGUgPSBpdDsKICAgICBQeVR1cGxlX1NFVF9JVEVNKHJlc3VsdCwgMCwgY29weWFibGUpOwogICAgIGZvciAoaT0xIDsgaTxuIDsgaSsrKSB7Ci0gICAgICAgIGNvcHlhYmxlID0gUHlPYmplY3RfQ2FsbE1ldGhvZChjb3B5YWJsZSwgIl9fY29weV9fIiwgTlVMTCk7CisKKyAgICAgICAgY29weWFibGUgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGNvcHlhYmxlLCAmUHlJZF9fX2NvcHlfXywgTlVMTCk7CiAgICAgICAgIGlmIChjb3B5YWJsZSA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjU5Miw2ICsyNTk0LDcgQEAKICAgICBQeU9iamVjdF9IRUFECiAgICAgUHlPYmplY3QgKnRvdGFsOwogICAgIFB5T2JqZWN0ICppdDsKKyAgICBQeU9iamVjdCAqYmlub3A7CiB9IGFjY3VtdWxhdGVvYmplY3Q7CiAKIHN0YXRpYyBQeVR5cGVPYmplY3QgYWNjdW11bGF0ZV90eXBlOwpAQCAtMjU5OSwxMiArMjYwMiwxNCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGFjY3VtdWxhdGVfbmV3KFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewotICAgIHN0YXRpYyBjaGFyICprd2FyZ3NbXSA9IHsiaXRlcmFibGUiLCBOVUxMfTsKKyAgICBzdGF0aWMgY2hhciAqa3dhcmdzW10gPSB7Iml0ZXJhYmxlIiwgImZ1bmMiLCBOVUxMfTsKICAgICBQeU9iamVjdCAqaXRlcmFibGU7CiAgICAgUHlPYmplY3QgKml0OworICAgIFB5T2JqZWN0ICpiaW5vcCA9IE5VTEw7CiAgICAgYWNjdW11bGF0ZW9iamVjdCAqbHo7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAiTzphY2N1bXVsYXRlIiwga3dhcmdzLCAmaXRlcmFibGUpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJPfE86YWNjdW11bGF0ZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dhcmdzLCAmaXRlcmFibGUsICZiaW5vcCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgLyogR2V0IGl0ZXJhdG9yLiAqLwpAQCAtMjYxOSw2ICsyNjI0LDggQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCisgICAgUHlfWElOQ1JFRihiaW5vcCk7CisgICAgbHotPmJpbm9wID0gYmlub3A7CiAgICAgbHotPnRvdGFsID0gTlVMTDsKICAgICBsei0+aXQgPSBpdDsKICAgICByZXR1cm4gKFB5T2JqZWN0ICopbHo7CkBAIC0yNjI4LDYgKzI2MzUsNyBAQAogYWNjdW11bGF0ZV9kZWFsbG9jKGFjY3VtdWxhdGVvYmplY3QgKmx6KQogewogICAgIFB5T2JqZWN0X0dDX1VuVHJhY2sobHopOworICAgIFB5X1hERUNSRUYobHotPmJpbm9wKTsKICAgICBQeV9YREVDUkVGKGx6LT50b3RhbCk7CiAgICAgUHlfWERFQ1JFRihsei0+aXQpOwogICAgIFB5X1RZUEUobHopLT50cF9mcmVlKGx6KTsKQEAgLTI2MzYsNiArMjY0NCw3IEBACiBzdGF0aWMgaW50CiBhY2N1bXVsYXRlX3RyYXZlcnNlKGFjY3VtdWxhdGVvYmplY3QgKmx6LCB2aXNpdHByb2MgdmlzaXQsIHZvaWQgKmFyZykKIHsKKyAgICBQeV9WSVNJVChsei0+Ymlub3ApOwogICAgIFB5X1ZJU0lUKGx6LT5pdCk7CiAgICAgUHlfVklTSVQobHotPnRvdGFsKTsKICAgICByZXR1cm4gMDsKQEAgLTI2NTUsOCArMjY2NCwxMSBAQAogICAgICAgICBsei0+dG90YWwgPSB2YWw7CiAgICAgICAgIHJldHVybiBsei0+dG90YWw7CiAgICAgfQotICAgCi0gICAgbmV3dG90YWwgPSBQeU51bWJlcl9BZGQobHotPnRvdGFsLCB2YWwpOworCisgICAgaWYgKGx6LT5iaW5vcCA9PSBOVUxMKSAKKyAgICAgICAgbmV3dG90YWwgPSBQeU51bWJlcl9BZGQobHotPnRvdGFsLCB2YWwpOworICAgIGVsc2UKKyAgICAgICAgbmV3dG90YWwgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKGx6LT5iaW5vcCwgbHotPnRvdGFsLCB2YWwsIE5VTEwpOwogICAgIFB5X0RFQ1JFRih2YWwpOwogICAgIGlmIChuZXd0b3RhbCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTI2NzAsOSArMjY4Miw5IEBACiB9CiAKIFB5RG9jX1NUUlZBUihhY2N1bXVsYXRlX2RvYywKLSJhY2N1bXVsYXRlKGl0ZXJhYmxlKSAtLT4gYWNjdW11bGF0ZSBvYmplY3RcblwKKyJhY2N1bXVsYXRlKGl0ZXJhYmxlWywgZnVuY10pIC0tPiBhY2N1bXVsYXRlIG9iamVjdFxuXAogXG5cCi1SZXR1cm4gc2VyaWVzIG9mIGFjY3VtdWxhdGVkIHN1bXMuIik7CitSZXR1cm4gc2VyaWVzIG9mIGFjY3VtdWxhdGVkIHN1bXMgKG9yIG90aGVyIGJpbmFyeSBmdW5jdGlvbiByZXN1bHRzKS4iKTsKIAogc3RhdGljIFB5VHlwZU9iamVjdCBhY2N1bXVsYXRlX3R5cGUgPSB7CiAgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApCkBAIC0zNjMzLDcgKzM2NDUsNyBAQAogcmVwZWF0KGVsZW0gWyxuXSkgLS0+IGVsZW0sIGVsZW0sIGVsZW0sIC4uLiBlbmRsZXNzbHkgb3IgdXAgdG8gbiB0aW1lc1xuXAogXG5cCiBJdGVyYXRvcnMgdGVybWluYXRpbmcgb24gdGhlIHNob3J0ZXN0IGlucHV0IHNlcXVlbmNlOlxuXAotYWNjdW11bGF0ZShwLCBzdGFydD0wKSAtLT4gcDAsIHAwK3AxLCBwMCtwMStwMlxuXAorYWNjdW11bGF0ZShwWywgZnVuY10pIC0tPiBwMCwgcDArcDEsIHAwK3AxK3AyXG5cCiBjaGFpbihwLCBxLCAuLi4pIC0tPiBwMCwgcDEsIC4uLiBwbGFzdCwgcTAsIHExLCAuLi4gXG5cCiBjb21wcmVzcyhkYXRhLCBzZWxlY3RvcnMpIC0tPiAoZFswXSBpZiBzWzBdKSwgKGRbMV0gaWYgc1sxXSksIC4uLlxuXAogZHJvcHdoaWxlKHByZWQsIHNlcSkgLS0+IHNlcVtuXSwgc2VxW24rMV0sIHN0YXJ0aW5nIHdoZW4gcHJlZCBmYWlsc1xuXApkaWZmIC0tZ2l0IGEvTW9kdWxlcy9tYWluLmMgYi9Nb2R1bGVzL21haW4uYwppbmRleCA1YTk4NWE1Li5kOGM1MTcyIDEwMDY0NAotLS0gYS9Nb2R1bGVzL21haW4uYworKysgYi9Nb2R1bGVzL21haW4uYwpAQCAtNiw2ICs2LDcgQEAKICNpbmNsdWRlIDxsb2NhbGUuaD4KIAogI2lmZGVmIF9fVk1TCisjZXJyb3IgIlBFUCAxMTogVk1TIGlzIG5vdyB1bnN1cHBvcnRlZCwgY29kZSB3aWxsIGJlIHJlbW92ZWQgaW4gUHl0aG9uIDMuNCIKICNpbmNsdWRlIDx1bml4bGliLmg+CiAjZW5kaWYKIApAQCAtMTAwLDYgKzEwMSw3IEBACiAiICAgICAgICAgICAgICAgVGhlIGRlZmF1bHQgbW9kdWxlIHNlYXJjaCBwYXRoIHVzZXMgJXMuXG4iCiAiUFlUSE9OQ0FTRU9LIDogaWdub3JlIGNhc2UgaW4gJ2ltcG9ydCcgc3RhdGVtZW50cyAoV2luZG93cykuXG4iCiAiUFlUSE9OSU9FTkNPRElORzogRW5jb2RpbmdbOmVycm9yc10gdXNlZCBmb3Igc3RkaW4vc3Rkb3V0L3N0ZGVyci5cbiIKKyJQWVRIT05GQVVMVEhBTkRMRVI6IGR1bXAgdGhlIFB5dGhvbiB0cmFjZWJhY2sgb24gZmF0YWwgZXJyb3JzLlxuIgogOwogCiBzdGF0aWMgaW50CkBAIC00OTMsMTYgKzQ5NSwxMyBAQAogICAgICAgICAgICAgLyogVXNlIHV0Zi04IG9uIE1hYyBPUyBYICovCiAgICAgICAgICAgICB1bmljb2RlID0gUHlVbmljb2RlX0Zyb21TdHJpbmcocCk7CiAjZWxzZQotICAgICAgICAgICAgd2NoYXJfdCAqd2NoYXI7Ci0gICAgICAgICAgICBzaXplX3QgbGVuOwotICAgICAgICAgICAgd2NoYXIgPSBfUHlfY2hhcjJ3Y2hhcihwLCAmbGVuKTsKLSAgICAgICAgICAgIGlmICh3Y2hhciA9PSBOVUxMKQotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgdW5pY29kZSA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIod2NoYXIsIGxlbik7Ci0gICAgICAgICAgICBQeU1lbV9GcmVlKHdjaGFyKTsKKyAgICAgICAgICAgIHVuaWNvZGUgPSBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKHAsICJzdXJyb2dhdGVlc2NhcGUiKTsKICNlbmRpZgotICAgICAgICAgICAgaWYgKHVuaWNvZGUgPT0gTlVMTCkKKyAgICAgICAgICAgIGlmICh1bmljb2RlID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICAvKiBpZ25vcmUgZXJyb3JzICovCisgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIFB5U3lzX0FkZFdhcm5PcHRpb25Vbmljb2RlKHVuaWNvZGUpOwogICAgICAgICAgICAgUHlfREVDUkVGKHVuaWNvZGUpOwogICAgICAgICB9CkBAIC01NzcsNyArNTc2LDYgQEAKICAgICBpZiAoKHAgPSBQeV9HRVRFTlYoIlBZVEhPTkVYRUNVVEFCTEUiKSkgJiYgKnAgIT0gJ1wwJykgewogICAgICAgICB3Y2hhcl90KiBidWZmZXI7CiAgICAgICAgIHNpemVfdCBsZW4gPSBzdHJsZW4ocCk7Ci0gICAgICAgIHNpemVfdCByOwogCiAgICAgICAgIGJ1ZmZlciA9IG1hbGxvYyhsZW4gKiBzaXplb2Yod2NoYXJfdCkpOwogICAgICAgICBpZiAoYnVmZmVyID09IE5VTEwpIHsKQEAgLTU4NSw3ICs1ODMsNyBAQAogICAgICAgICAgICAgICAgIm5vdCBlbm91Z2ggbWVtb3J5IHRvIGNvcHkgUFlUSE9ORVhFQ1VUQUJMRSIpOwogICAgICAgICB9CiAKLSAgICAgICAgciA9IG1ic3Rvd2NzKGJ1ZmZlciwgcCwgbGVuKTsKKyAgICAgICAgbWJzdG93Y3MoYnVmZmVyLCBwLCBsZW4pOwogICAgICAgICBQeV9TZXRQcm9ncmFtTmFtZShidWZmZXIpOwogICAgICAgICAvKiBidWZmZXIgaXMgbm93IGhhbmRlZCBvZmYgLSBkbyBub3QgZnJlZSAqLwogICAgIH0gZWxzZSB7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL21hdGhtb2R1bGUuYyBiL01vZHVsZXMvbWF0aG1vZHVsZS5jCmluZGV4IDI5YzMyYTMuLjA0ZjhmNjYgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvbWF0aG1vZHVsZS5jCisrKyBiL01vZHVsZXMvbWF0aG1vZHVsZS5jCkBAIC01NSwxMSArNTUsNiBAQAogI2luY2x1ZGUgIlB5dGhvbi5oIgogI2luY2x1ZGUgIl9tYXRoLmgiCiAKLSNpZmRlZiBfT1NGX1NPVVJDRQotLyogT1NGMSA1LjEgZG9lc24ndCBtYWtlIHRoaXMgYXZhaWxhYmxlIHdpdGggWE9QRU5fU09VUkNFX0VYVEVOREVEIGRlZmluZWQgKi8KLWV4dGVybiBkb3VibGUgY29weXNpZ24oZG91YmxlLCBkb3VibGUpOwotI2VuZGlmCi0KIC8qCiAgICBzaW4ocGkqeCksIGdpdmluZyBhY2N1cmF0ZSByZXN1bHRzIGZvciBhbGwgZmluaXRlIHggKGVzcGVjaWFsbHkgeAogICAgaW50ZWdyYWwgb3IgY2xvc2UgdG8gYW4gaW50ZWdlcikuICBUaGlzIGlzIGhlcmUgZm9yIHVzZSBpbiB0aGUKQEAgLTI0NCw3ICsyMzksOCBAQAogICAgIH0KICAgICBpZiAoeCA9PSAwLjApIHsKICAgICAgICAgZXJybm8gPSBFRE9NOwotICAgICAgICByZXR1cm4gMS4wL3g7IC8qIHRnYW1tYSgrLTAuMCkgPSArLWluZiwgZGl2aWRlLWJ5LXplcm8gKi8KKyAgICAgICAgLyogdGdhbW1hKCstMC4wKSA9ICstaW5mLCBkaXZpZGUtYnktemVybyAqLworICAgICAgICByZXR1cm4gY29weXNpZ24oUHlfSFVHRV9WQUwsIHgpOwogICAgIH0KIAogICAgIC8qIGludGVnZXIgYXJndW1lbnRzICovCkBAIC01ODIsNiArNTc4LDYxIEBACiAgICAgfQogfQogCisvKgorICAgbG9nMjogbG9nIHRvIGJhc2UgMi4KKworICAgVXNlcyBhbiBhbGdvcml0aG0gdGhhdCBzaG91bGQ6CisKKyAgICAgKGEpIHByb2R1Y2UgZXhhY3QgcmVzdWx0cyBmb3IgcG93ZXJzIG9mIDIsIGFuZAorICAgICAoYikgZ2l2ZSBhIG1vbm90b25pYyBsb2cyIChmb3IgcG9zaXRpdmUgZmluaXRlIGZsb2F0cyksCisgICAgICAgICBhc3N1bWluZyB0aGF0IHRoZSBzeXN0ZW0gbG9nIGlzIG1vbm90b25pYy4KKyovCisKK3N0YXRpYyBkb3VibGUKK21fbG9nMihkb3VibGUgeCkKK3sKKyAgICBpZiAoIVB5X0lTX0ZJTklURSh4KSkgeworICAgICAgICBpZiAoUHlfSVNfTkFOKHgpKQorICAgICAgICAgICAgcmV0dXJuIHg7IC8qIGxvZzIobmFuKSA9IG5hbiAqLworICAgICAgICBlbHNlIGlmICh4ID4gMC4wKQorICAgICAgICAgICAgcmV0dXJuIHg7IC8qIGxvZzIoK2luZikgPSAraW5mICovCisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgZXJybm8gPSBFRE9NOworICAgICAgICAgICAgcmV0dXJuIFB5X05BTjsgLyogbG9nMigtaW5mKSA9IG5hbiwgaW52YWxpZC1vcGVyYXRpb24gKi8KKyAgICAgICAgfQorICAgIH0KKworICAgIGlmICh4ID4gMC4wKSB7CisjaWZkZWYgSEFWRV9MT0cyCisgICAgICAgIHJldHVybiBsb2cyKHgpOworI2Vsc2UKKyAgICAgICAgZG91YmxlIG07CisgICAgICAgIGludCBlOworICAgICAgICBtID0gZnJleHAoeCwgJmUpOworICAgICAgICAvKiBXZSB3YW50IGxvZzIobSAqIDIqKmUpID09IGxvZyhtKSAvIGxvZygyKSArIGUuICBDYXJlIGlzIG5lZWRlZCB3aGVuCisgICAgICAgICAqIHggaXMganVzdCBncmVhdGVyIHRoYW4gMS4wOiBpbiB0aGF0IGNhc2UgZSBpcyAxLCBsb2cobSkgaXMgbmVnYXRpdmUsCisgICAgICAgICAqIGFuZCB3ZSBnZXQgc2lnbmlmaWNhbnQgY2FuY2VsbGF0aW9uIGVycm9yIGZyb20gdGhlIGFkZGl0aW9uIG9mCisgICAgICAgICAqIGxvZyhtKSAvIGxvZygyKSB0byBlLiAgVGhlIHNsaWdodCByZXdyaXRlIG9mIHRoZSBleHByZXNzaW9uIGJlbG93CisgICAgICAgICAqIGF2b2lkcyB0aGlzIHByb2JsZW0uCisgICAgICAgICAqLworICAgICAgICBpZiAoeCA+PSAxLjApIHsKKyAgICAgICAgICAgIHJldHVybiBsb2coMi4wICogbSkgLyBsb2coMi4wKSArIChlIC0gMSk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICByZXR1cm4gbG9nKG0pIC8gbG9nKDIuMCkgKyBlOworICAgICAgICB9CisjZW5kaWYKKyAgICB9CisgICAgZWxzZSBpZiAoeCA9PSAwLjApIHsKKyAgICAgICAgZXJybm8gPSBFRE9NOworICAgICAgICByZXR1cm4gLVB5X0hVR0VfVkFMOyAvKiBsb2cyKDApID0gLWluZiwgZGl2aWRlLWJ5LXplcm8gKi8KKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGVycm5vID0gRURPTTsKKyAgICAgICAgcmV0dXJuIFB5X05BTjsgLyogbG9nMigtaW5mKSA9IG5hbiwgaW52YWxpZC1vcGVyYXRpb24gKi8KKyAgICB9Cit9CisKIHN0YXRpYyBkb3VibGUKIG1fbG9nMTAoZG91YmxlIHgpCiB7CkBAIC04MzYsMTAgKzg4NywxMCBAQAogICAgICAgImF0YW5oKHgpXG5cblJldHVybiB0aGUgaHlwZXJib2xpYyBhcmMgdGFuZ2VudCAobWVhc3VyZWQgaW4gcmFkaWFucykgb2YgeC4iKQogCiBzdGF0aWMgUHlPYmplY3QgKiBtYXRoX2NlaWwoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpudW1iZXIpIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmNlaWxfc3RyID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX2NlaWxfXyk7CiAgICAgUHlPYmplY3QgKm1ldGhvZCwgKnJlc3VsdDsKIAotICAgIG1ldGhvZCA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKG51bWJlciwgIl9fY2VpbF9fIiwgJmNlaWxfc3RyKTsKKyAgICBtZXRob2QgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChudW1iZXIsICZQeUlkX19fY2VpbF9fKTsKICAgICBpZiAobWV0aG9kID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTg3NCwxMCArOTI1LDEwIEBACiAgICAgICAiZmFicyh4KVxuXG5SZXR1cm4gdGhlIGFic29sdXRlIHZhbHVlIG9mIHRoZSBmbG9hdCB4LiIpCiAKIHN0YXRpYyBQeU9iamVjdCAqIG1hdGhfZmxvb3IoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpudW1iZXIpIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmZsb29yX3N0ciA9IE5VTEw7CisgICAgX1B5X0lERU5USUZJRVIoX19mbG9vcl9fKTsKICAgICBQeU9iamVjdCAqbWV0aG9kLCAqcmVzdWx0OwogCi0gICAgbWV0aG9kID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobnVtYmVyLCAiX19mbG9vcl9fIiwgJmZsb29yX3N0cik7CisgICAgbWV0aG9kID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobnVtYmVyLCAmUHlJZF9fX2Zsb29yX18pOwogICAgIGlmIChtZXRob2QgPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTM4NCw3ICsxNDM1LDcgQEAKICAgICB9CiAKICAgICAvKiB1c2UgbG9va3VwIHRhYmxlIGlmIHggaXMgc21hbGwgKi8KLSAgICBpZiAoeCA8IChsb25nKShzaXplb2YoU21hbGxGYWN0b3JpYWxzKS9zaXplb2YoU21hbGxGYWN0b3JpYWxzWzBdKSkpCisgICAgaWYgKHggPCAobG9uZylQeV9BUlJBWV9MRU5HVEgoU21hbGxGYWN0b3JpYWxzKSkKICAgICAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tVW5zaWduZWRMb25nKFNtYWxsRmFjdG9yaWFsc1t4XSk7CiAKICAgICAvKiBlbHNlIGV4cHJlc3MgaW4gdGhlIGZvcm0gb2RkX3BhcnQgKiAyKip0d29fdmFsdWF0aW9uLCBhbmQgY29tcHV0ZSBhcwpAQCAtMTQxMSw3ICsxNDYyLDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBtYXRoX3RydW5jKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqbnVtYmVyKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqdHJ1bmNfc3RyID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX3RydW5jX18pOwogICAgIFB5T2JqZWN0ICp0cnVuYywgKnJlc3VsdDsKIAogICAgIGlmIChQeV9UWVBFKG51bWJlciktPnRwX2RpY3QgPT0gTlVMTCkgewpAQCAtMTQxOSw3ICsxNDcwLDcgQEAKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIHRydW5jID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobnVtYmVyLCAiX190cnVuY19fIiwgJnRydW5jX3N0cik7CisgICAgdHJ1bmMgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChudW1iZXIsICZQeUlkX19fdHJ1bmNfXyk7CiAgICAgaWYgKHRydW5jID09IE5VTEwpIHsKICAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKQEAgLTE2MjgsNiArMTY3OSwxNSBAQAogSWYgdGhlIGJhc2Ugbm90IHNwZWNpZmllZCwgcmV0dXJucyB0aGUgbmF0dXJhbCBsb2dhcml0aG0gKGJhc2UgZSkgb2YgeC4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKK21hdGhfbG9nMihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZykKK3sKKyAgICByZXR1cm4gbG9naGVscGVyKGFyZywgbV9sb2cyLCAibG9nMiIpOworfQorCitQeURvY19TVFJWQVIobWF0aF9sb2cyX2RvYywKKyJsb2cyKHgpXG5cblJldHVybiB0aGUgYmFzZSAyIGxvZ2FyaXRobSBvZiB4LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgogbWF0aF9sb2cxMChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZykKIHsKICAgICByZXR1cm4gbG9naGVscGVyKGFyZywgbV9sb2cxMCwgImxvZzEwIik7CkBAIC0xODk5LDYgKzE5NTksNyBAQAogICAgIHsibG9nIiwgICAgICAgICAgICAgbWF0aF9sb2csICAgICAgIE1FVEhfVkFSQVJHUywgICBtYXRoX2xvZ19kb2N9LAogICAgIHsibG9nMXAiLCAgICAgICAgICAgbWF0aF9sb2cxcCwgICAgIE1FVEhfTywgICAgICAgICBtYXRoX2xvZzFwX2RvY30sCiAgICAgeyJsb2cxMCIsICAgICAgICAgICBtYXRoX2xvZzEwLCAgICAgTUVUSF9PLCAgICAgICAgIG1hdGhfbG9nMTBfZG9jfSwKKyAgICB7ImxvZzIiLCAgICAgICAgICAgIG1hdGhfbG9nMiwgICAgICBNRVRIX08sICAgICAgICAgbWF0aF9sb2cyX2RvY30sCiAgICAgeyJtb2RmIiwgICAgICAgICAgICBtYXRoX21vZGYsICAgICAgTUVUSF9PLCAgICAgICAgIG1hdGhfbW9kZl9kb2N9LAogICAgIHsicG93IiwgICAgICAgICAgICAgbWF0aF9wb3csICAgICAgIE1FVEhfVkFSQVJHUywgICBtYXRoX3Bvd19kb2N9LAogICAgIHsicmFkaWFucyIsICAgICAgICAgbWF0aF9yYWRpYW5zLCAgIE1FVEhfTywgICAgICAgICBtYXRoX3JhZGlhbnNfZG9jfSwKZGlmZiAtLWdpdCBhL01vZHVsZXMvbWQ1bW9kdWxlLmMgYi9Nb2R1bGVzL21kNW1vZHVsZS5jCmluZGV4IDIwODkzMGQuLjg2ZjYwMmUgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvbWQ1bW9kdWxlLmMKKysrIGIvTW9kdWxlcy9tZDVtb2R1bGUuYwpAQCAtMjQzLDcgKzI0Myw3IEBACiAgICAgICAgICAgIGluICAgICAgICAgICAgICs9IE1ENV9CTE9DS1NJWkU7CiAgICAgICAgICAgIGlubGVuICAgICAgICAgIC09IE1ENV9CTE9DS1NJWkU7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgIG4gPSBNSU4oaW5sZW4sIChNRDVfQkxPQ0tTSVpFIC0gbWQ1LT5jdXJsZW4pKTsKKyAgICAgICAgICAgbiA9IE1JTihpbmxlbiwgKFB5X3NzaXplX3QpKE1ENV9CTE9DS1NJWkUgLSBtZDUtPmN1cmxlbikpOwogICAgICAgICAgICBtZW1jcHkobWQ1LT5idWYgKyBtZDUtPmN1cmxlbiwgaW4sIChzaXplX3Qpbik7CiAgICAgICAgICAgIG1kNS0+Y3VybGVuICAgICs9IG47CiAgICAgICAgICAgIGluICAgICAgICAgICAgICs9IG47CkBAIC0zNzYsNyArMzc2LDcgQEAKICAgICB1bnNpZ25lZCBjaGFyIGRpZ2VzdFtNRDVfRElHRVNUU0laRV07CiAgICAgc3RydWN0IG1kNV9zdGF0ZSB0ZW1wOwogICAgIFB5T2JqZWN0ICpyZXR2YWw7Ci0gICAgUHlfVU5JQ09ERSAqaGV4X2RpZ2VzdDsKKyAgICBQeV9VQ1MxICpoZXhfZGlnZXN0OwogICAgIGludCBpLCBqOwogCiAgICAgLyogR2V0IHRoZSByYXcgKGJpbmFyeSkgZGlnZXN0IHZhbHVlICovCkBAIC0zODQsMjQgKzM4NCwxOCBAQAogICAgIG1kNV9kb25lKCZ0ZW1wLCBkaWdlc3QpOwogCiAgICAgLyogQ3JlYXRlIGEgbmV3IHN0cmluZyAqLwotICAgIHJldHZhbCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBNRDVfRElHRVNUU0laRSAqIDIpOworICAgIHJldHZhbCA9IFB5VW5pY29kZV9OZXcoTUQ1X0RJR0VTVFNJWkUgKiAyLCAxMjcpOwogICAgIGlmICghcmV0dmFsKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaGV4X2RpZ2VzdCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJldHZhbCk7Ci0gICAgaWYgKCFoZXhfZGlnZXN0KSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocmV0dmFsKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KKyAgICBoZXhfZGlnZXN0ID0gUHlVbmljb2RlXzFCWVRFX0RBVEEocmV0dmFsKTsKIAogICAgIC8qIE1ha2UgaGV4IHZlcnNpb24gb2YgdGhlIGRpZ2VzdCAqLwogICAgIGZvcihpPWo9MDsgaTxNRDVfRElHRVNUU0laRTsgaSsrKSB7Ci0gICAgICAgIGNoYXIgYzsKKyAgICAgICAgdW5zaWduZWQgY2hhciBjOwogICAgICAgICBjID0gKGRpZ2VzdFtpXSA+PiA0KSAmIDB4ZjsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBjOworICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgICAgIGMgPSAoZGlnZXN0W2ldICYgMHhmKTsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBjOworICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgfQogICAgIHJldHVybiByZXR2YWw7CiB9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL21tYXBtb2R1bGUuYyBiL01vZHVsZXMvbW1hcG1vZHVsZS5jCmluZGV4IGRhOTI4M2IuLmNmMGI2ODcgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvbW1hcG1vZHVsZS5jCisrKyBiL01vZHVsZXMvbW1hcG1vZHVsZS5jCkBAIC03OCw4ICs3OCw2IEBACiAjICBkZWZpbmUgTUFQX0FOT05ZTU9VUyBNQVBfQU5PTgogI2VuZGlmCiAKLXN0YXRpYyBQeU9iamVjdCAqbW1hcF9tb2R1bGVfZXJyb3I7Ci0KIHR5cGVkZWYgZW51bQogewogICAgIEFDQ0VTU19ERUZBVUxULApAQCAtMjQwLDE1ICsyMzgsMzcgQEAKICAgICByZXR1cm4gcmVzdWx0OwogfQogCisvKiBCYXNpY2FsbHkgdGhlICJuIiBmb3JtYXQgY29kZSB3aXRoIHRoZSBhYmlsaXR5IHRvIHR1cm4gTm9uZSBpbnRvIC0xLiAqLworc3RhdGljIGludAorbW1hcF9jb252ZXJ0X3NzaXplX3QoUHlPYmplY3QgKm9iaiwgdm9pZCAqcmVzdWx0KSB7CisgICAgUHlfc3NpemVfdCBsaW1pdDsKKyAgICBpZiAob2JqID09IFB5X05vbmUpIHsKKyAgICAgICAgbGltaXQgPSAtMTsKKyAgICB9CisgICAgZWxzZSBpZiAoUHlOdW1iZXJfQ2hlY2sob2JqKSkgeworICAgICAgICBsaW1pdCA9IFB5TnVtYmVyX0FzU3NpemVfdChvYmosIFB5RXhjX092ZXJmbG93RXJyb3IpOworICAgICAgICBpZiAobGltaXQgPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJpbnRlZ2VyIGFyZ3VtZW50IGV4cGVjdGVkLCBnb3QgJyUuMjAwcyciLAorICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShvYmopLT50cF9uYW1lKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgICooKFB5X3NzaXplX3QgKilyZXN1bHQpID0gbGltaXQ7CisgICAgcmV0dXJuIDE7Cit9CisKIHN0YXRpYyBQeU9iamVjdCAqCiBtbWFwX3JlYWRfbWV0aG9kKG1tYXBfb2JqZWN0ICpzZWxmLAogICAgICAgICAgICAgICAgICBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeV9zc2l6ZV90IG51bV9ieXRlcywgbjsKKyAgICBQeV9zc2l6ZV90IG51bV9ieXRlcyA9IC0xLCBuOwogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAKICAgICBDSEVDS19WQUxJRChOVUxMKTsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIm46cmVhZCIsICZudW1fYnl0ZXMpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifE8mOnJlYWQiLCBtbWFwX2NvbnZlcnRfc3NpemVfdCwgJm51bV9ieXRlcykpCiAgICAgICAgIHJldHVybihOVUxMKTsKIAogICAgIC8qIHNpbGVudGx5ICdhZGp1c3QnIG91dC1vZi1yYW5nZSByZXF1ZXN0cyAqLwpAQCAtNDM3LDcgKzQ1Nyw3IEBACiAgICAgewogICAgICAgICBzdHJ1Y3Qgc3RhdCBidWY7CiAgICAgICAgIGlmICgtMSA9PSBmc3RhdChzZWxmLT5mZCwgJmJ1ZikpIHsKLSAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhtbWFwX21vZHVsZV9lcnJvcik7CisgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogI2lmZGVmIEhBVkVfTEFSR0VGSUxFX1NVUFBPUlQKQEAgLTUyNyw3ICs1NDcsNyBAQAogICAgICAgICB2b2lkICpuZXdtYXA7CiAKICAgICAgICAgaWYgKGZ0cnVuY2F0ZShzZWxmLT5mZCwgc2VsZi0+b2Zmc2V0ICsgbmV3X3NpemUpID09IC0xKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8obW1hcF9tb2R1bGVfZXJyb3IpOworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KIApAQCAtNTQyLDcgKzU2Miw3IEBACiAjZW5kaWYKICAgICAgICAgaWYgKG5ld21hcCA9PSAodm9pZCAqKS0xKQogICAgICAgICB7Ci0gICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8obW1hcF9tb2R1bGVfZXJyb3IpOworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICAgICAgc2VsZi0+ZGF0YSA9IG5ld21hcDsKQEAgLTU4Myw3ICs2MDMsNyBAQAogICAgIC8qIFhYWCBzZW1hbnRpY3Mgb2YgcmV0dXJuIHZhbHVlPyAqLwogICAgIC8qIFhYWCBmbGFncyBmb3IgbXN5bmM/ICovCiAgICAgaWYgKC0xID09IG1zeW5jKHNlbGYtPmRhdGEgKyBvZmZzZXQsIHNpemUsIE1TX1NZTkMpKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhtbWFwX21vZHVsZV9lcnJvcik7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoMCk7CkBAIC02NDUsOSArNjY1LDkgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLyogYm91bmRzIGNoZWNrIHRoZSB2YWx1ZXMgKi8KLSAgICAgICAgaWYgKGNudCA8IDAgfHwgKGNudCArIGRlc3QpIDwgY250IHx8IChjbnQgKyBzcmMpIDwgY250IHx8Ci0gICAgICAgICAgIHNyYyA8IDAgfHwgc3JjID4gc2VsZi0+c2l6ZSB8fCAoc3JjICsgY250KSA+IHNlbGYtPnNpemUgfHwKLSAgICAgICAgICAgZGVzdCA8IDAgfHwgZGVzdCA+IHNlbGYtPnNpemUgfHwgKGRlc3QgKyBjbnQpID4gc2VsZi0+c2l6ZSkgeworICAgICAgICBpZiAoKGNudCArIGRlc3QpIDwgY250IHx8IChjbnQgKyBzcmMpIDwgY250IHx8CisgICAgICAgICAgIHNyYyA+IHNlbGYtPnNpemUgfHwgKHNyYyArIGNudCkgPiBzZWxmLT5zaXplIHx8CisgICAgICAgICAgIGRlc3QgPiBzZWxmLT5zaXplIHx8IChkZXN0ICsgY250KSA+IHNlbGYtPnNpemUpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICJzb3VyY2UsIGRlc3RpbmF0aW9uLCBvciBjb3VudCBvdXQgb2YgcmFuZ2UiKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNjgwLDcgKzcwMCw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogbW1hcF9fZXhpdF9fbWV0aG9kKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLCAiY2xvc2UiLCBOVUxMKTsKKyAgICBfUHlfSURFTlRJRklFUihjbG9zZSk7CisKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLCAmUHlJZF9jbG9zZSwgTlVMTCk7CiB9CiAKIHN0YXRpYyBzdHJ1Y3QgUHlNZXRob2REZWYgbW1hcF9vYmplY3RfbWV0aG9kc1tdID0gewpAQCAtMTE4MSw3ICsxMjAzLDcgQEAKICAgICAgICAgZmQgPSBkZXZ6ZXJvID0gb3BlbigiL2Rldi96ZXJvIiwgT19SRFdSKTsKICAgICAgICAgaWYgKGRldnplcm8gPT0gLTEpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihtX29iaik7Ci0gICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8obW1hcF9tb2R1bGVfZXJyb3IpOworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICNlbmRpZgpAQCAtMTE4OSw3ICsxMjExLDcgQEAKICAgICAgICAgbV9vYmotPmZkID0gZHVwKGZkKTsKICAgICAgICAgaWYgKG1fb2JqLT5mZCA9PSAtMSkgewogICAgICAgICAgICAgUHlfREVDUkVGKG1fb2JqKTsKLSAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhtbWFwX21vZHVsZV9lcnJvcik7CisgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgIH0KQEAgLTEyMDUsNyArMTIyNyw3IEBACiAgICAgaWYgKG1fb2JqLT5kYXRhID09IChjaGFyICopLTEpIHsKICAgICAgICAgbV9vYmotPmRhdGEgPSBOVUxMOwogICAgICAgICBQeV9ERUNSRUYobV9vYmopOwotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8obW1hcF9tb2R1bGVfZXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBtX29iai0+YWNjZXNzID0gKGFjY2Vzc19tb2RlKWFjY2VzczsKQEAgLTEyODYsMTIgKzEzMDgsMTIgQEAKICAgICBpZiAoZmlsZW5vICE9IC0xICYmIGZpbGVubyAhPSAwKSB7CiAgICAgICAgIC8qIEVuc3VyZSB0aGF0IGZpbGVubyBpcyB3aXRoaW4gdGhlIENSVCdzIHZhbGlkIHJhbmdlICovCiAgICAgICAgIGlmIChfUHlWZXJpZnlfZmQoZmlsZW5vKSA9PSAwKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8obW1hcF9tb2R1bGVfZXJyb3IpOworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICAgICAgZmggPSAoSEFORExFKV9nZXRfb3NmaGFuZGxlKGZpbGVubyk7CiAgICAgICAgIGlmIChmaD09KEhBTkRMRSktMSkgewotICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKG1tYXBfbW9kdWxlX2Vycm9yKTsKKyAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CiAgICAgICAgIC8qIFdpbjl4IGFwcGVhcnMgdG8gbmVlZCB1cyBzZWVrZWQgdG8gemVybyAqLwpAQCAtMTQ0NSwxMSArMTQ2Nyw3IEBACiAgICAgZGljdCA9IFB5TW9kdWxlX0dldERpY3QobW9kdWxlKTsKICAgICBpZiAoIWRpY3QpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIG1tYXBfbW9kdWxlX2Vycm9yID0gUHlFcnJfTmV3RXhjZXB0aW9uKCJtbWFwLmVycm9yIiwKLSAgICAgICAgUHlFeGNfRW52aXJvbm1lbnRFcnJvciAsIE5VTEwpOwotICAgIGlmIChtbWFwX21vZHVsZV9lcnJvciA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBQeURpY3RfU2V0SXRlbVN0cmluZyhkaWN0LCAiZXJyb3IiLCBtbWFwX21vZHVsZV9lcnJvcik7CisgICAgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZGljdCwgImVycm9yIiwgUHlFeGNfT1NFcnJvcik7CiAgICAgUHlEaWN0X1NldEl0ZW1TdHJpbmcoZGljdCwgIm1tYXAiLCAoUHlPYmplY3QqKSAmbW1hcF9vYmplY3RfdHlwZSk7CiAjaWZkZWYgUFJPVF9FWEVDCiAgICAgc2V0aW50KGRpY3QsICJQUk9UX0VYRUMiLCBQUk9UX0VYRUMpOwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9uaXNtb2R1bGUuYyBiL01vZHVsZXMvbmlzbW9kdWxlLmMKaW5kZXggYTgxY2E4Yy4uMGFmNDk1ZiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9uaXNtb2R1bGUuYworKysgYi9Nb2R1bGVzL25pc21vZHVsZS5jCkBAIC00MTEsNyArNDExLDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKChsaXN0ID0gUHlMaXN0X05ldygwKSkgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgZm9yIChtYXBzID0gbWFwczsgbWFwczsgbWFwcyA9IG1hcHMtPm5leHQpIHsKKyAgICBmb3IgKDsgbWFwczsgbWFwcyA9IG1hcHMtPm5leHQpIHsKICAgICAgICAgUHlPYmplY3QgKnN0ciA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKG1hcHMtPm1hcCk7CiAgICAgICAgIGlmICghc3RyIHx8IFB5TGlzdF9BcHBlbmQobGlzdCwgc3RyKSA8IDApCiAgICAgICAgIHsKZGlmZiAtLWdpdCBhL01vZHVsZXMvb3BlcmF0b3IuYyBiL01vZHVsZXMvb3BlcmF0b3IuYwppbmRleCA4NjZlYzNhLi4yZjQ3NTczIDEwMDY0NAotLS0gYS9Nb2R1bGVzL29wZXJhdG9yLmMKKysrIGIvTW9kdWxlcy9vcGVyYXRvci5jCkBAIC00MDIsNyArNDAyLDggQEAKICAgICBmb3IgKGlkeCA9IDA7IGlkeCA8IG5hdHRyczsgKytpZHgpIHsKICAgICAgICAgUHlPYmplY3QgKml0ZW0gPSBQeVR1cGxlX0dFVF9JVEVNKGFyZ3MsIGlkeCk7CiAgICAgICAgIFB5X3NzaXplX3QgaXRlbV9sZW47Ci0gICAgICAgIFB5X1VOSUNPREUgKml0ZW1fYnVmZmVyOworICAgICAgICB2b2lkICpkYXRhOworICAgICAgICB1bnNpZ25lZCBpbnQga2luZDsKICAgICAgICAgaW50IGRvdF9jb3VudDsKIAogICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhpdGVtKSkgewpAQCAtNDExLDEzICs0MTIsMTggQEAKICAgICAgICAgICAgIFB5X0RFQ1JFRihhdHRyKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIGl0ZW1fbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKGl0ZW0pOwotICAgICAgICBpdGVtX2J1ZmZlciA9IFB5VW5pY29kZV9BU19VTklDT0RFKGl0ZW0pOworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKGl0ZW0pKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoYXR0cik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBpdGVtX2xlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGl0ZW0pOworICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoaXRlbSk7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShpdGVtKTsKIAogICAgICAgICAvKiBjaGVjayB3aGV0aGVyZSB0aGUgc3RyaW5nIGlzIGRvdHRlZCAqLwogICAgICAgICBkb3RfY291bnQgPSAwOwogICAgICAgICBmb3IgKGNoYXJfaWR4ID0gMDsgY2hhcl9pZHggPCBpdGVtX2xlbjsgKytjaGFyX2lkeCkgewotICAgICAgICAgICAgaWYgKGl0ZW1fYnVmZmVyW2NoYXJfaWR4XSA9PSAoUHlfVU5JQ09ERSknLicpCisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgY2hhcl9pZHgpID09ICcuJykKICAgICAgICAgICAgICAgICArK2RvdF9jb3VudDsKICAgICAgICAgfQogCkBAIC00MzgsMTIgKzQ0NCwxMiBAQAogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBmb3IgKDsgZG90X2NvdW50ID4gMDsgLS1kb3RfY291bnQpIHsKLSAgICAgICAgICAgICAgICB3aGlsZSAoaXRlbV9idWZmZXJbdW5pYnVmZl90aWxsXSAhPSAoUHlfVU5JQ09ERSknLicpIHsKKyAgICAgICAgICAgICAgICB3aGlsZSAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgdW5pYnVmZl90aWxsKSAhPSAnLicpIHsKICAgICAgICAgICAgICAgICAgICAgKyt1bmlidWZmX3RpbGw7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGF0dHJfY2hhaW5faXRlbSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbV9idWZmZXIgKyB1bmlidWZmX2Zyb20sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaWJ1ZmZfdGlsbCAtIHVuaWJ1ZmZfZnJvbSk7CisgICAgICAgICAgICAgICAgYXR0cl9jaGFpbl9pdGVtID0gUHlVbmljb2RlX1N1YnN0cmluZyhpdGVtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmlidWZmX2Zyb20sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaWJ1ZmZfdGlsbCk7CiAgICAgICAgICAgICAgICAgaWYgKGF0dHJfY2hhaW5faXRlbSA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihhdHRyX2NoYWluKTsKICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGF0dHIpOwpAQCAtNDU2LDkgKzQ2Miw4IEBACiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIC8qIG5vdyBhZGQgdGhlIGxhc3QgZG90bGVzcyBuYW1lICovCi0gICAgICAgICAgICBhdHRyX2NoYWluX2l0ZW0gPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbV9idWZmZXIgKyB1bmlidWZmX2Zyb20sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbV9sZW4gLSB1bmlidWZmX2Zyb20pOworICAgICAgICAgICAgYXR0cl9jaGFpbl9pdGVtID0gUHlVbmljb2RlX1N1YnN0cmluZyhpdGVtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmlidWZmX2Zyb20sIGl0ZW1fbGVuKTsKICAgICAgICAgICAgIGlmIChhdHRyX2NoYWluX2l0ZW0gPT0gTlVMTCkgewogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihhdHRyX2NoYWluKTsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoYXR0cik7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL29zc2F1ZGlvZGV2LmMgYi9Nb2R1bGVzL29zc2F1ZGlvZGV2LmMKaW5kZXggYjM4Y2U1Mi4uYTE3YTY0NyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9vc3NhdWRpb2Rldi5jCisrKyBiL01vZHVsZXMvb3NzYXVkaW9kZXYuYwpAQCAtMjE0LDYgKzIxNCwyMSBAQAogICogSGVscGVyIGZ1bmN0aW9ucwogICovCiAKKy8qIENoZWNrIGlmIGEgZ2l2ZW4gZmlsZSBkZXNjcmlwdG9yIGlzIHZhbGlkIChpLmUuIGhhc24ndCBiZWVuIGNsb3NlZCkuCisgKiBJZiB0cnVlLCByZXR1cm4gMS4gT3RoZXJ3aXNlLCByYWlzZSBWYWx1ZUVycm9yIGFuZCByZXR1cm4gMC4KKyAqLworc3RhdGljIGludCBfaXNfZmRfdmFsaWQoaW50IGZkKQoreworICAgIC8qIHRoZSBGRCBpcyBzZXQgdG8gLTEgaW4gb3NzX2Nsb3NlKCkvb3NzX21peGVyX2Nsb3NlKCkgKi8KKyAgICBpZiAoZmQgPj0gMCkgeworICAgICAgICByZXR1cm4gMTsKKyAgICB9IGVsc2UgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJPcGVyYXRpb24gb24gY2xvc2VkIE9TUyBkZXZpY2UuIik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KK30KKwogLyogX2RvX2lvY3RsXzEoKSBpcyBhIHByaXZhdGUgaGVscGVyIGZ1bmN0aW9uIHVzZWQgZm9yIHRoZSBPU1MgaW9jdGxzIC0tCiAgICBTTkRDVExfRFNQX3tTRVRGTVQsQ0hBTk5FTFMsU1BFRUR9IC0tIHRoYXQgdGhhdCBhcmUgY2FsbGVkIGZyb20gQwogICAgbGlrZSB0aGlzOgpAQCAtMzAxLDYgKzMxNiw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogb3NzX25vbmJsb2NrKG9zc19hdWRpb190ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQogeworICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICAvKiBIbW1tOiBpdCBkb2Vzbid0IGFwcGVhciB0byBiZSBwb3NzaWJsZSB0byByZXR1cm4gdG8gYmxvY2tpbmcKICAgICAgICBtb2RlIG9uY2Ugd2UncmUgaW4gbm9uLWJsb2NraW5nIG1vZGUhICovCiAgICAgaWYgKGlvY3RsKHNlbGYtPmZkLCBTTkRDVExfRFNQX05PTkJMT0NLLCBOVUxMKSA9PSAtMSkKQEAgLTMxMiw2ICszMzAsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIG9zc19zZXRmbXQob3NzX2F1ZGlvX3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogeworICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICByZXR1cm4gX2RvX2lvY3RsXzEoc2VsZi0+ZmQsIGFyZ3MsICJzZXRmbXQiLCBTTkRDVExfRFNQX1NFVEZNVCk7CiB9CiAKQEAgLTMxOSw2ICszNDAsMTAgQEAKIG9zc19nZXRmbXRzKG9zc19hdWRpb190ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQogewogICAgIGludCBtYXNrOworCisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmIChpb2N0bChzZWxmLT5mZCwgU05EQ1RMX0RTUF9HRVRGTVRTLCAmbWFzaykgPT0gLTEpCiAgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhtYXNrKTsKQEAgLTMyNywzMCArMzUyLDQ1IEBACiBzdGF0aWMgUHlPYmplY3QgKgogb3NzX2NoYW5uZWxzKG9zc19hdWRpb190ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgcmV0dXJuIF9kb19pb2N0bF8xKHNlbGYtPmZkLCBhcmdzLCAiY2hhbm5lbHMiLCBTTkRDVExfRFNQX0NIQU5ORUxTKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIG9zc19zcGVlZChvc3NfYXVkaW9fdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIHJldHVybiBfZG9faW9jdGxfMShzZWxmLT5mZCwgYXJncywgInNwZWVkIiwgU05EQ1RMX0RTUF9TUEVFRCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3Nfc3luYyhvc3NfYXVkaW9fdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIHJldHVybiBfZG9faW9jdGxfMChzZWxmLT5mZCwgYXJncywgInN5bmMiLCBTTkRDVExfRFNQX1NZTkMpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogb3NzX3Jlc2V0KG9zc19hdWRpb190ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgcmV0dXJuIF9kb19pb2N0bF8wKHNlbGYtPmZkLCBhcmdzLCAicmVzZXQiLCBTTkRDVExfRFNQX1JFU0VUKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIG9zc19wb3N0KG9zc19hdWRpb190ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgcmV0dXJuIF9kb19pb2N0bF8wKHNlbGYtPmZkLCBhcmdzLCAicG9zdCIsIFNORENUTF9EU1BfUE9TVCk7CiB9CiAKQEAgLTM2NSw2ICs0MDUsOSBAQAogICAgIGNoYXIgKmNwOwogICAgIFB5T2JqZWN0ICpydjsKIAorICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6cmVhZCIsICZzaXplKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcnYgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIHNpemUpOwpAQCAtMzkyLDYgKzQzNSw5IEBACiAgICAgY2hhciAqY3A7CiAgICAgaW50IHJ2LCBzaXplOwogCisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAieSM6d3JpdGUiLCAmY3AsICZzaXplKSkgewogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC00MjMsNiArNDY5LDkgQEAKICAgICAgICBtb2RlLCB0aGUgYmVoYXZpb3VyIG9mIHdyaXRlKCkgYW5kIHdyaXRlYWxsKCkgZnJvbSBQeXRob24gaXMKICAgICAgICBpbmRpc3Rpbmd1aXNoYWJsZS4gKi8KIAorICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInkjOndyaXRlIiwgJmNwLCAmc2l6ZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCkBAIC00ODIsMTAgKzUzMSwxMiBAQAogICAgIHJldHVybiBzZWxmOwogfQogCi1zdGF0aWMgUHlPYmplY3QgKiAKK3N0YXRpYyBQeU9iamVjdCAqCiBvc3NfZXhpdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKIHsKLSAgICBQeU9iamVjdCAqcmV0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChzZWxmLCAiY2xvc2UiLCBOVUxMKTsKKyAgICBfUHlfSURFTlRJRklFUihjbG9zZSk7CisKKyAgICBQeU9iamVjdCAqcmV0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChzZWxmLCAmUHlJZF9jbG9zZSwgTlVMTCk7CiAgICAgaWYgKCFyZXQpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0RFQ1JFRihyZXQpOwpAQCAtNDk1LDYgKzU0Niw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogb3NzX2ZpbGVubyhvc3NfYXVkaW9fdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKIHsKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhzZWxmLT5mZCk7CiB9CiAKQEAgLTUwOSw2ICs1NjMsOSBAQAogICAgIGludCBmbXQsIGNoYW5uZWxzLCByYXRlOwogICAgIFB5T2JqZWN0ICogcnY7ICAgICAgICAgICAgICAgICAgICAvKiByZXR1cm4gdHVwbGUgKGZtdCwgY2hhbm5lbHMsIHJhdGUpICovCiAKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpaWl8aTpzZXRwYXJhbWV0ZXJzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJndhbnRlZF9mbXQsICZ3YW50ZWRfY2hhbm5lbHMsICZ3YW50ZWRfcmF0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0cmljdCkpCkBAIC01OTksNiArNjU2LDkgQEAKICAgICBhdWRpb19idWZfaW5mbyBhaTsKICAgICBpbnQgbmNoYW5uZWxzPTAsIHNzaXplPTA7CiAKKyAgICBpZiAoIV9pc19mZF92YWxpZChzZWxmLT5mZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgaWYgKF9zc2l6ZShzZWxmLCAmbmNoYW5uZWxzLCAmc3NpemUpIDwgMCB8fCAhbmNoYW5uZWxzIHx8ICFzc2l6ZSkgewogICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNjE4LDYgKzY3OCw5IEBACiAgICAgYXVkaW9fYnVmX2luZm8gYWk7CiAgICAgaW50IG5jaGFubmVscz0wLCBzc2l6ZT0wOwogCisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmIChfc3NpemUoc2VsZiwgJm5jaGFubmVscywgJnNzaXplKSA8IDAgfHwgIW5jaGFubmVscyB8fCAhc3NpemUpIHsKICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTYzOCw2ICs3MDEsOSBAQAogICAgIGF1ZGlvX2J1Zl9pbmZvIGFpOwogICAgIGludCBuY2hhbm5lbHM9MCwgc3NpemU9MDsKIAorICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAoX3NzaXplKHNlbGYsICZuY2hhbm5lbHMsICZzc2l6ZSkgPCAwIHx8ICFuY2hhbm5lbHMgfHwgIXNzaXplKSB7CiAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC02NTUsNiArNzIxLDkgQEAKICAgICBjb3VudF9pbmZvIGluZm87CiAgICAgaW50IHJlcTsKIAorICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAoc2VsZi0+bW9kZSA9PSBPX1JET05MWSkKICAgICAgICAgcmVxID0gU05EQ1RMX0RTUF9HRVRJUFRSOwogICAgIGVsc2UKQEAgLTY4NSw2ICs3NTQsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIG9zc19taXhlcl9maWxlbm8ob3NzX21peGVyX3QgKnNlbGYsIFB5T2JqZWN0ICp1bnVzZWQpCiB7CisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoc2VsZi0+ZmQpOwogfQogCkBAIC02OTMsNiArNzY1LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3NfbWl4ZXJfY29udHJvbHMob3NzX21peGVyX3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogeworICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICByZXR1cm4gX2RvX2lvY3RsXzFfaW50ZXJuYWwoc2VsZi0+ZmQsIGFyZ3MsICJjb250cm9scyIsCiAgICAgICAgIFNPVU5EX01JWEVSX1JFQURfREVWTUFTSyk7CiB9CkBAIC03MDAsNiArNzc1LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3NfbWl4ZXJfc3RlcmVvY29udHJvbHMob3NzX21peGVyX3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogeworICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICByZXR1cm4gX2RvX2lvY3RsXzFfaW50ZXJuYWwoc2VsZi0+ZmQsIGFyZ3MsICJzdGVyZW9jb250cm9scyIsCiAgICAgICAgIFNPVU5EX01JWEVSX1JFQURfU1RFUkVPREVWUyk7CiB9CkBAIC03MDcsNiArNzg1LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3NfbWl4ZXJfcmVjY29udHJvbHMob3NzX21peGVyX3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogeworICAgIGlmICghX2lzX2ZkX3ZhbGlkKHNlbGYtPmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICByZXR1cm4gX2RvX2lvY3RsXzFfaW50ZXJuYWwoc2VsZi0+ZmQsIGFyZ3MsICJyZWNjb250cm9scyIsCiAgICAgICAgIFNPVU5EX01JWEVSX1JFQURfUkVDTUFTSyk7CiB9CkBAIC03MTYsNiArNzk3LDkgQEAKIHsKICAgICBpbnQgY2hhbm5lbCwgdm9sdW1lOwogCisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIC8qIENhbid0IHVzZSBfZG9faW9jdGxfMSBiZWNhdXNlIG9mIGVuY29kZWQgYXJnIHRoaW5neS4gKi8KICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6Z2V0IiwgJmNoYW5uZWwpKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTczNiw2ICs4MjAsOSBAQAogewogICAgIGludCBjaGFubmVsLCB2b2x1bWUsIGxlZnRWb2wsIHJpZ2h0Vm9sOwogCisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIC8qIENhbid0IHVzZSBfZG9faW9jdGxfMSBiZWNhdXNlIG9mIGVuY29kZWQgYXJnIHRoaW5neS4gKi8KICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImkoaWkpOnNldCIsICZjaGFubmVsLCAmbGVmdFZvbCwgJnJpZ2h0Vm9sKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC03NjEsNiArODQ4LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3NfbWl4ZXJfZ2V0X3JlY3NyYyhvc3NfbWl4ZXJfdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIHJldHVybiBfZG9faW9jdGxfMV9pbnRlcm5hbChzZWxmLT5mZCwgYXJncywgImdldF9yZWNzcmMiLAogICAgICAgICBTT1VORF9NSVhFUl9SRUFEX1JFQ1NSQyk7CiB9CkBAIC03NjgsNiArODU4LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvc3NfbWl4ZXJfc2V0X3JlY3NyYyhvc3NfbWl4ZXJfdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CisgICAgaWYgKCFfaXNfZmRfdmFsaWQoc2VsZi0+ZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIHJldHVybiBfZG9faW9jdGxfMShzZWxmLT5mZCwgYXJncywgInNldF9yZWNzcmMiLAogICAgICAgICBTT1VORF9NSVhFUl9XUklURV9SRUNTUkMpOwogfQpAQCAtOTcxLDggKzEwNjQsOCBAQAogICAgIGludCBudW1fY29udHJvbHM7CiAgICAgaW50IGk7CiAKLSAgICBudW1fY29udHJvbHMgPSBzaXplb2YoY29udHJvbF9sYWJlbHMpIC8gc2l6ZW9mKGNvbnRyb2xfbGFiZWxzWzBdKTsKLSAgICBhc3NlcnQobnVtX2NvbnRyb2xzID09IHNpemVvZihjb250cm9sX25hbWVzKSAvIHNpemVvZihjb250cm9sX25hbWVzWzBdKSk7CisgICAgbnVtX2NvbnRyb2xzID0gUHlfQVJSQVlfTEVOR1RIKGNvbnRyb2xfbGFiZWxzKTsKKyAgICBhc3NlcnQobnVtX2NvbnRyb2xzID09IFB5X0FSUkFZX0xFTkdUSChjb250cm9sX25hbWVzKSk7CiAKICAgICBsYWJlbHMgPSBQeUxpc3RfTmV3KG51bV9jb250cm9scyk7CiAgICAgbmFtZXMgPSBQeUxpc3RfTmV3KG51bV9jb250cm9scyk7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL3BhcnNlcm1vZHVsZS5jIGIvTW9kdWxlcy9wYXJzZXJtb2R1bGUuYwppbmRleCAzY2RmMTM1Li45ZDFiY2E1IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3BhcnNlcm1vZHVsZS5jCisrKyBiL01vZHVsZXMvcGFyc2VybW9kdWxlLmMKQEAgLTI5OCwyNSArMjk4LDI1IEBACiAKICAgICAvKiBDb252ZXJ0IHJldHVybiB2YWx1ZSB0byBhIEJvb2xlYW4gKi8KICAgICBzd2l0Y2ggKG9wKSB7Ci0gICAgY2FzZSBQeV9FUToKKyAgICAgIGNhc2UgUHlfRVE6CiAgICAgICAgIHYgPSBURVNUX0NPTkQocmVzdWx0ID09IDApOwogICAgICAgICBicmVhazsKLSAgICBjYXNlIFB5X05FOgorICAgICAgY2FzZSBQeV9ORToKICAgICAgICAgdiA9IFRFU1RfQ09ORChyZXN1bHQgIT0gMCk7CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgUHlfTEU6CisgICAgICBjYXNlIFB5X0xFOgogICAgICAgICB2ID0gVEVTVF9DT05EKHJlc3VsdCA8PSAwKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBQeV9HRToKKyAgICAgIGNhc2UgUHlfR0U6CiAgICAgICAgIHYgPSBURVNUX0NPTkQocmVzdWx0ID49IDApOwogICAgICAgICBicmVhazsKLSAgICBjYXNlIFB5X0xUOgorICAgICAgY2FzZSBQeV9MVDoKICAgICAgICAgdiA9IFRFU1RfQ09ORChyZXN1bHQgPCAwKTsKICAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBQeV9HVDoKKyAgICAgIGNhc2UgUHlfR1Q6CiAgICAgICAgIHYgPSBURVNUX0NPTkQocmVzdWx0ID4gMCk7CiAgICAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6CisgICAgICBkZWZhdWx0OgogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC01ODEsOCArNTgxLDEwIEBACiAgICAgICAgICAgICBpZiAocmVzKQogICAgICAgICAgICAgICAgICgoUHlTVF9PYmplY3QgKilyZXMpLT5zdF9mbGFncy5jZl9mbGFncyA9IGZsYWdzICYgUHlDRl9NQVNLOwogICAgICAgICB9Ci0gICAgICAgIGVsc2UKKyAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICBQeVBhcnNlcl9TZXRFcnJvcigmZXJyKTsKKyAgICAgICAgfQorICAgICAgICBQeVBhcnNlcl9DbGVhckVycm9yKCZlcnIpOwogICAgIH0KICAgICByZXR1cm4gKHJlcyk7CiB9CkBAIC05NzQsNiArOTc2LDcgQEAKIFZBTElEQVRFUih0ZXN0bGlzdF9jb21wKTsgICAgICAgVkFMSURBVEVSKHlpZWxkX2V4cHIpOwogVkFMSURBVEVSKG9yX3Rlc3QpOwogVkFMSURBVEVSKHRlc3Rfbm9jb25kKTsgICAgICAgICBWQUxJREFURVIobGFtYmRlZl9ub2NvbmQpOworVkFMSURBVEVSKHlpZWxkX2FyZyk7CiAKICN1bmRlZiBWQUxJREFURVIKIApAQCAtMTYzNCwyMiArMTYzNyw0OSBAQAogfQogCiAKLS8qIHlpZWxkX2V4cHI6ICd5aWVsZCcgW3Rlc3RsaXN0XQorLyogeWllbGRfZXhwcjogJ3lpZWxkJyBbeWllbGRfYXJnXQogICovCiBzdGF0aWMgaW50CiB2YWxpZGF0ZV95aWVsZF9leHByKG5vZGUgKnRyZWUpCiB7CiAgICAgaW50IG5jaCA9IE5DSCh0cmVlKTsKLSAgICBpbnQgcmVzID0gKHZhbGlkYXRlX250eXBlKHRyZWUsIHlpZWxkX2V4cHIpCi0gICAgICAgICAgICAgICAmJiAoKG5jaCA9PSAxKSB8fCAobmNoID09IDIpKQotICAgICAgICAgICAgICAgJiYgdmFsaWRhdGVfbmFtZShDSElMRCh0cmVlLCAwKSwgInlpZWxkIikpOwotCi0gICAgaWYgKHJlcyAmJiAobmNoID09IDIpKQotICAgICAgICByZXMgPSB2YWxpZGF0ZV90ZXN0bGlzdChDSElMRCh0cmVlLCAxKSk7Ci0KLSAgICByZXR1cm4gKHJlcyk7CisgICAgaWYgKG5jaCA8IDEgfHwgbmNoID4gMikKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCF2YWxpZGF0ZV9udHlwZSh0cmVlLCB5aWVsZF9leHByKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKCF2YWxpZGF0ZV9uYW1lKENISUxEKHRyZWUsIDApLCAieWllbGQiKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKG5jaCA9PSAyKSB7CisgICAgICAgIGlmICghdmFsaWRhdGVfeWllbGRfYXJnKENISUxEKHRyZWUsIDEpKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICByZXR1cm4gMTsKIH0KIAorLyogeWllbGRfYXJnOiAnZnJvbScgdGVzdCB8IHRlc3RsaXN0CisgKi8KK3N0YXRpYyBpbnQKK3ZhbGlkYXRlX3lpZWxkX2FyZyhub2RlICp0cmVlKQoreworICAgIGludCBuY2ggPSBOQ0godHJlZSk7CisgICAgaWYgKCF2YWxpZGF0ZV9udHlwZSh0cmVlLCB5aWVsZF9hcmcpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBzd2l0Y2ggKG5jaCkgeworICAgICAgY2FzZSAxOgorICAgICAgICBpZiAoIXZhbGlkYXRlX3Rlc3RsaXN0KENISUxEKHRyZWUsIG5jaCAtIDEpKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBicmVhazsKKyAgICAgIGNhc2UgMjoKKyAgICAgICAgaWYgKCF2YWxpZGF0ZV9uYW1lKENISUxEKHRyZWUsIDApLCAiZnJvbSIpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIGlmICghdmFsaWRhdGVfdGVzdChDSElMRCh0cmVlLCAxKSkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgYnJlYWs7CisgICAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgcmV0dXJuIDE7Cit9CiAKIC8qIHlpZWxkX3N0bXQ6IHlpZWxkX2V4cHIKICAqLwpAQCAtMjExOCwxNiArMjE0OCwxNiBAQAogICAgICAgICAgKi8KICAgICAgICAgdHJlZSA9IENISUxEKHRyZWUsIDApOwogICAgICAgICBzd2l0Y2ggKFRZUEUodHJlZSkpIHsKLSAgICAgICAgICAgIGNhc2UgTEVTUzoKLSAgICAgICAgICAgIGNhc2UgR1JFQVRFUjoKLSAgICAgICAgICAgIGNhc2UgRVFFUVVBTDoKLSAgICAgICAgICAgIGNhc2UgRVFVQUw6Ci0gICAgICAgICAgICBjYXNlIExFU1NFUVVBTDoKLSAgICAgICAgICAgIGNhc2UgR1JFQVRFUkVRVUFMOgotICAgICAgICAgICAgY2FzZSBOT1RFUVVBTDoKKyAgICAgICAgICBjYXNlIExFU1M6CisgICAgICAgICAgY2FzZSBHUkVBVEVSOgorICAgICAgICAgIGNhc2UgRVFFUVVBTDoKKyAgICAgICAgICBjYXNlIEVRVUFMOgorICAgICAgICAgIGNhc2UgTEVTU0VRVUFMOgorICAgICAgICAgIGNhc2UgR1JFQVRFUkVRVUFMOgorICAgICAgICAgIGNhc2UgTk9URVFVQUw6CiAgICAgICAgICAgICAgIHJlcyA9IDE7CiAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgY2FzZSBOQU1FOgorICAgICAgICAgIGNhc2UgTkFNRToKICAgICAgICAgICAgICAgcmVzID0gKChzdHJjbXAoU1RSKHRyZWUpLCAiaW4iKSA9PSAwKQogICAgICAgICAgICAgICAgICAgICAgfHwgKHN0cmNtcChTVFIodHJlZSksICJpcyIpID09IDApKTsKICAgICAgICAgICAgICAgaWYgKCFyZXMpIHsKQEAgLTI2NjMsOSArMjY5Myw5IEBACiB7CiAgICAgaW50IG5jaCA9IE5DSCh0cmVlKTsKICAgICBpbnQgcmVzID0gKHZhbGlkYXRlX250eXBlKHRyZWUsIGFyZ3VtZW50KQotICAgICAgICAgICAgICAgJiYgKChuY2ggPT0gMSkgfHwgKG5jaCA9PSAyKSB8fCAobmNoID09IDMpKQotICAgICAgICAgICAgICAgJiYgdmFsaWRhdGVfdGVzdChDSElMRCh0cmVlLCAwKSkpOwotCisgICAgICAgICAgICAgICAmJiAoKG5jaCA9PSAxKSB8fCAobmNoID09IDIpIHx8IChuY2ggPT0gMykpKTsKKyAgICBpZiAocmVzKSAKKyAgICAgICAgcmVzID0gdmFsaWRhdGVfdGVzdChDSElMRCh0cmVlLCAwKSk7CiAgICAgaWYgKHJlcyAmJiAobmNoID09IDIpKQogICAgICAgICByZXMgPSB2YWxpZGF0ZV9jb21wX2ZvcihDSElMRCh0cmVlLCAxKSk7CiAgICAgZWxzZSBpZiAocmVzICYmIChuY2ggPT0gMykpCkBAIC0zMjM5LDEwICszMjY5LDEzIEBACiAgICAgY29weXJlZyA9IFB5SW1wb3J0X0ltcG9ydE1vZHVsZU5vQmxvY2soImNvcHlyZWciKTsKICAgICBpZiAoY29weXJlZyAhPSBOVUxMKSB7CiAgICAgICAgIFB5T2JqZWN0ICpmdW5jLCAqcGlja2xlcjsKKyAgICAgICAgX1B5X0lERU5USUZJRVIocGlja2xlKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoc2VxdWVuY2Uyc3QpOworICAgICAgICBfUHlfSURFTlRJRklFUihfcGlja2xlcik7CiAKLSAgICAgICAgZnVuYyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoY29weXJlZywgInBpY2tsZSIpOwotICAgICAgICBwaWNrbGVfY29uc3RydWN0b3IgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG1vZHVsZSwgInNlcXVlbmNlMnN0Iik7Ci0gICAgICAgIHBpY2tsZXIgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG1vZHVsZSwgIl9waWNrbGVyIik7CisgICAgICAgIGZ1bmMgPSBfUHlPYmplY3RfR2V0QXR0cklkKGNvcHlyZWcsICZQeUlkX3BpY2tsZSk7CisgICAgICAgIHBpY2tsZV9jb25zdHJ1Y3RvciA9IF9QeU9iamVjdF9HZXRBdHRySWQobW9kdWxlLCAmUHlJZF9zZXF1ZW5jZTJzdCk7CisgICAgICAgIHBpY2tsZXIgPSBfUHlPYmplY3RfR2V0QXR0cklkKG1vZHVsZSwgJlB5SWRfX3BpY2tsZXIpOwogICAgICAgICBQeV9YSU5DUkVGKHBpY2tsZV9jb25zdHJ1Y3Rvcik7CiAgICAgICAgIGlmICgoZnVuYyAhPSBOVUxMKSAmJiAocGlja2xlX2NvbnN0cnVjdG9yICE9IE5VTEwpCiAgICAgICAgICAgICAmJiAocGlja2xlciAhPSBOVUxMKSkgewpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9wb3NpeG1vZHVsZS5jIGIvTW9kdWxlcy9wb3NpeG1vZHVsZS5jCmluZGV4IDBhZmFiM2MuLjIyNjlmZTkgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvcG9zaXhtb2R1bGUuYworKysgYi9Nb2R1bGVzL3Bvc2l4bW9kdWxlLmMKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNsdWRlICJQeXRob24uaCIKIAogI2lmIGRlZmluZWQoX19WTVMpCisjICAgIGVycm9yICJQRVAgMTE6IFZNUyBpcyBub3cgdW5zdXBwb3J0ZWQsIGNvZGUgd2lsbCBiZSByZW1vdmVkIGluIFB5dGhvbiAzLjQiCiAjICAgIGluY2x1ZGUgPHVuaXhpby5oPgogI2VuZGlmIC8qIGRlZmluZWQoX19WTVMpICovCiAKQEAgLTQzLDYgKzQ0LDcgQEAKIAogCiAjaWYgZGVmaW5lZChQWU9TX09TMikKKyNlcnJvciAiUEVQIDExOiBPUy8yIGlzIG5vdyB1bnN1cHBvcnRlZCwgY29kZSB3aWxsIGJlIHJlbW92ZWQgaW4gUHl0aG9uIDMuNCIKICNkZWZpbmUgIElOQ0xfRE9TCiAjZGVmaW5lICBJTkNMX0RPU0VSUk9SUwogI2RlZmluZSAgSU5DTF9ET1NQUk9DRVNTCkBAIC01Nyw2ICs1OSwxMCBAQAogI2luY2x1ZGUgIm9zZGVmcy5oIgogI2VuZGlmCiAKKyNpZmRlZiBIQVZFX1NZU19VSU9fSAorI2luY2x1ZGUgPHN5cy91aW8uaD4KKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9TWVNfVFlQRVNfSAogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogI2VuZGlmIC8qIEhBVkVfU1lTX1RZUEVTX0ggKi8KQEAgLTkzLDYgKzk5LDMyIEBACiAjaW5jbHVkZSA8bGFuZ2luZm8uaD4KICNlbmRpZgogCisjaWZkZWYgSEFWRV9TWVNfU0VOREZJTEVfSAorI2luY2x1ZGUgPHN5cy9zZW5kZmlsZS5oPgorI2VuZGlmCisKKyNpZmRlZiBIQVZFX1NDSEVEX0gKKyNpbmNsdWRlIDxzY2hlZC5oPgorI2VuZGlmCisKKyNpZiBkZWZpbmVkKEhBVkVfU1lTX1hBVFRSX0gpICYmIGRlZmluZWQoX19HTElCQ19fKQorI2RlZmluZSBVU0VfWEFUVFJTCisjZW5kaWYKKworI2lmZGVmIFVTRV9YQVRUUlMKKyNpbmNsdWRlIDxzeXMveGF0dHIuaD4KKyNlbmRpZgorCisjaWYgZGVmaW5lZChfX0ZyZWVCU0RfXykgfHwgZGVmaW5lZChfX0RyYWdvbkZseV9fKSB8fCBkZWZpbmVkKF9fQVBQTEVfXykKKyNpZmRlZiBIQVZFX1NZU19TT0NLRVRfSAorI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KKyNlbmRpZgorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0RMRkNOX0gKKyNpbmNsdWRlIDxkbGZjbi5oPgorI2VuZGlmCisKIC8qIFZhcmlvdXMgY29tcGlsZXJzIGhhdmUgb25seSBjZXJ0YWluIHBvc2l4IGZ1bmN0aW9ucyAqLwogLyogWFhYIEdvc2ggSSB3aXNoIHRoZXNlIHdlcmUgYWxsIG1vdmVkIGludG8gcHljb25maWcuaCAqLwogI2lmIGRlZmluZWQoUFlDQ19WQUNQUCkgJiYgZGVmaW5lZChQWU9TX09TMikKQEAgLTM0Nyw2ICszNzksMjIgQEAKICNlbmRpZgogI2VuZGlmCiAKKy8qIEEgaGVscGVyIHVzZWQgYnkgYSBudW1iZXIgb2YgUE9TSVgtb25seSBmdW5jdGlvbnMgKi8KKyNpZm5kZWYgTVNfV0lORE9XUworc3RhdGljIGludAorX3BhcnNlX29mZl90KFB5T2JqZWN0KiBhcmcsIHZvaWQqIGFkZHIpCit7CisjaWYgIWRlZmluZWQoSEFWRV9MQVJHRUZJTEVfU1VQUE9SVCkKKyAgICAqKChvZmZfdCopYWRkcikgPSBQeUxvbmdfQXNMb25nKGFyZyk7CisjZWxzZQorICAgICooKG9mZl90KilhZGRyKSA9IFB5TG9uZ19Bc0xvbmdMb25nKGFyZyk7CisjZW5kaWYKKyAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgcmV0dXJuIDE7Cit9CisjZW5kaWYKKwogI2lmIGRlZmluZWQgX01TQ19WRVIgJiYgX01TQ19WRVIgPj0gMTQwMAogLyogTWljcm9zb2Z0IENSVCBpbiBWUzIwMDUgYW5kIGhpZ2hlciB3aWxsIHZlcmlmeSB0aGF0IGEgZmlsZWhhbmRsZSBpcwogICogdmFsaWQgYW5kIHRocm93IGFuIGFzc2VydGlvbiBpZiBpdCBpc24ndC4KQEAgLTQ5OCw2ICs1NDYsMzQgQEAKIAogICAgIHJldHVybiBUUlVFOwogfQorCitzdGF0aWMgaW50Cit3aW4zMl93YXJuX2J5dGVzX2FwaSgpCit7CisgICAgcmV0dXJuIFB5RXJyX1dhcm5FeChQeUV4Y19EZXByZWNhdGlvbldhcm5pbmcsCisgICAgICAgICJUaGUgV2luZG93cyBieXRlcyBBUEkgaGFzIGJlZW4gZGVwcmVjYXRlZCwgIgorICAgICAgICAidXNlIFVuaWNvZGUgZmlsZW5hbWVzIGluc3RlYWQiLAorICAgICAgICAxKTsKK30KKworc3RhdGljIFB5T2JqZWN0Kgord2luMzJfZGVjb2RlX2ZpbGVuYW1lKFB5T2JqZWN0ICpvYmopCit7CisgICAgUHlPYmplY3QgKnVuaWNvZGU7CisgICAgaWYgKFB5VW5pY29kZV9DaGVjayhvYmopKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBQeV9JTkNSRUYob2JqKTsKKyAgICAgICAgcmV0dXJuIG9iajsKKyAgICB9CisgICAgaWYgKCFQeVVuaWNvZGVfRlNEZWNvZGVyKG9iaiwgJnVuaWNvZGUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkgeworICAgICAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICByZXR1cm4gdW5pY29kZTsKK30KICNlbmRpZiAvKiBNU19XSU5ET1dTICovCiAKIC8qIFJldHVybiBhIGRpY3Rpb25hcnkgY29ycmVzcG9uZGluZyB0byB0aGUgUE9TSVggZW52aXJvbm1lbnQgdGFibGUgKi8KQEAgLTY1Myw3ICs3MjksNyBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotd2luMzJfZXJyb3JfdW5pY29kZShjaGFyKiBmdW5jdGlvbiwgUHlfVU5JQ09ERSogZmlsZW5hbWUpCit3aW4zMl9lcnJvcl91bmljb2RlKGNoYXIqIGZ1bmN0aW9uLCB3Y2hhcl90KiBmaWxlbmFtZSkKIHsKICAgICAvKiBYWFggLSBzZWUgd2luMzJfZXJyb3IgZm9yIGNvbW1lbnRzIG9uICdmdW5jdGlvbicgKi8KICAgICBlcnJubyA9IEdldExhc3RFcnJvcigpOwpAQCAtNjYzLDIxICs3MzksMTggQEAKICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKGVycm5vKTsKIH0KIAotc3RhdGljIGludAotY29udmVydF90b191bmljb2RlKFB5T2JqZWN0ICoqcGFyYW0pCitzdGF0aWMgUHlPYmplY3QgKgord2luMzJfZXJyb3Jfb2JqZWN0KGNoYXIqIGZ1bmN0aW9uLCBQeU9iamVjdCogZmlsZW5hbWUpCiB7Ci0gICAgaWYgKFB5VW5pY29kZV9DaGVja0V4YWN0KCpwYXJhbSkpCi0gICAgICAgIFB5X0lOQ1JFRigqcGFyYW0pOwotICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjaygqcGFyYW0pKQotICAgICAgICAvKiBGb3IgYSBVbmljb2RlIHN1YnR5cGUgdGhhdCdzIG5vdCBhIFVuaWNvZGUgb2JqZWN0LAotICAgICAgICAgICByZXR1cm4gYSB0cnVlIFVuaWNvZGUgb2JqZWN0IHdpdGggdGhlIHNhbWUgZGF0YS4gKi8KLSAgICAgICAgKnBhcmFtID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKFB5VW5pY29kZV9BU19VTklDT0RFKCpwYXJhbSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoKnBhcmFtKSk7CisgICAgLyogWFhYIC0gc2VlIHdpbjMyX2Vycm9yIGZvciBjb21tZW50cyBvbiAnZnVuY3Rpb24nICovCisgICAgZXJybm8gPSBHZXRMYXN0RXJyb3IoKTsKKyAgICBpZiAoZmlsZW5hbWUpCisgICAgICAgIHJldHVybiBQeUVycl9TZXRFeGNGcm9tV2luZG93c0VycldpdGhGaWxlbmFtZU9iamVjdCgKKyAgICAgICAgICAgICAgICAgICAgUHlFeGNfV2luZG93c0Vycm9yLAorICAgICAgICAgICAgICAgICAgICBlcnJubywKKyAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWUpOwogICAgIGVsc2UKLSAgICAgICAgKnBhcmFtID0gUHlVbmljb2RlX0Zyb21FbmNvZGVkT2JqZWN0KCpwYXJhbSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaWN0Iik7Ci0gICAgcmV0dXJuICgqcGFyYW0pICE9IE5VTEw7CisgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tV2luZG93c0VycihlcnJubyk7CiB9CiAKICNlbmRpZiAvKiBNU19XSU5ET1dTICovCkBAIC04MzQsMjIgKzkwNywyOCBAQAogICAgICAgICAgICBjaGFyKiB3Zm9ybWF0LCBCT09MIChfX3N0ZGNhbGwgKmZ1bmNXKShMUFdTVFIpKQogewogICAgIFB5T2JqZWN0ICp1bmk7Ci0gICAgY2hhciAqYW5zaTsKKyAgICBjb25zdCBjaGFyICphbnNpOwogICAgIEJPT0wgcmVzdWx0OwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIHdmb3JtYXQsICZ1bmkpKQotICAgICAgICBQeUVycl9DbGVhcigpOwotICAgIGVsc2UgeworICAgIGlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIHdmb3JtYXQsICZ1bmkpKQorICAgIHsKKyAgICAgICAgd2NoYXJfdCAqd3N0ciA9IFB5VW5pY29kZV9Bc1VuaWNvZGUodW5pKTsKKyAgICAgICAgaWYgKHdzdHIgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgICAgIHJlc3VsdCA9IGZ1bmNXKFB5VW5pY29kZV9Bc1VuaWNvZGUodW5pKSk7CisgICAgICAgIHJlc3VsdCA9IGZ1bmNXKHdzdHIpOwogICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgICAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl91bmljb2RlKGZ1bmMsIFB5VW5pY29kZV9Bc1VuaWNvZGUodW5pKSk7CisgICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KGZ1bmMsIHVuaSk7CiAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICAgICAgcmV0dXJuIFB5X05vbmU7CiAgICAgfQorICAgIFB5RXJyX0NsZWFyKCk7CisKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgZm9ybWF0LCAmYW5zaSkpCiAgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICh3aW4zMl93YXJuX2J5dGVzX2FwaSgpKQorICAgICAgICByZXR1cm4gTlVMTDsKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgcmVzdWx0ID0gZnVuY0EoYW5zaSk7CiAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKQEAgLTEwNjQsMTggKzExNDMsMTkgQEAKIAogLyogR3JhYiBHZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGUgZHluYW1pY2FsbHkgZnJvbSBrZXJuZWwzMiAqLwogc3RhdGljIGludCBoYXNfR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlID0gMDsKLXN0YXRpYyBEV09SRCAoQ0FMTEJBQ0sgKlB5X0dldEZpbmFsUGF0aE5hbWVCeUhhbmRsZUEpKEhBTkRMRSwgTFBTVFIsIERXT1JELAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRFdPUkQpOwogc3RhdGljIERXT1JEIChDQUxMQkFDSyAqUHlfR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlVykoSEFORExFLCBMUFdTVFIsIERXT1JELAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRFdPUkQpOwogc3RhdGljIGludAogY2hlY2tfR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlKCkKIHsKICAgICBISU5TVEFOQ0UgaEtlcm5lbDMyOworICAgIERXT1JEIChDQUxMQkFDSyAqUHlfR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlQSkoSEFORExFLCBMUFNUUiwgRFdPUkQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEV09SRCk7CisKICAgICAvKiBvbmx5IHJlY2hlY2sgKi8KICAgICBpZiAoIWhhc19HZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGUpCiAgICAgewotICAgICAgICBoS2VybmVsMzIgPSBHZXRNb2R1bGVIYW5kbGUoIktFUk5FTDMyIik7CisgICAgICAgIGhLZXJuZWwzMiA9IEdldE1vZHVsZUhhbmRsZVcoTCJLRVJORUwzMiIpOwogICAgICAgICAqKEZBUlBST0MqKSZQeV9HZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGVBID0gR2V0UHJvY0FkZHJlc3MoaEtlcm5lbDMyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkdldEZpbmFsUGF0aE5hbWVCeUhhbmRsZUEiKTsKICAgICAgICAgKihGQVJQUk9DKikmUHlfR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlVyA9IEdldFByb2NBZGRyZXNzKGhLZXJuZWwzMiwKQEAgLTE1NDQsOSArMTYyNCwzOSBAQAogICAgIDEwCiB9OwogCisjaWYgZGVmaW5lZChIQVZFX1dBSVRJRCkgJiYgIWRlZmluZWQoX19BUFBMRV9fKQorUHlEb2NfU1RSVkFSKHdhaXRpZF9yZXN1bHRfX2RvY19fLAorIndhaXRpZF9yZXN1bHQ6IFJlc3VsdCBmcm9tIHdhaXRpZC5cblxuXAorVGhpcyBvYmplY3QgbWF5IGJlIGFjY2Vzc2VkIGVpdGhlciBhcyBhIHR1cGxlIG9mXG5cCisgIChzaV9waWQsIHNpX3VpZCwgc2lfc2lnbm8sIHNpX3N0YXR1cywgc2lfY29kZSksXG5cCitvciB2aWEgdGhlIGF0dHJpYnV0ZXMgc2lfcGlkLCBzaV91aWQsIGFuZCBzbyBvbi5cblwKK1xuXAorU2VlIG9zLndhaXRpZCBmb3IgbW9yZSBpbmZvcm1hdGlvbi4iKTsKKworc3RhdGljIFB5U3RydWN0U2VxdWVuY2VfRmllbGQgd2FpdGlkX3Jlc3VsdF9maWVsZHNbXSA9IHsKKyAgICB7InNpX3BpZCIsICB9LAorICAgIHsic2lfdWlkIiwgfSwKKyAgICB7InNpX3NpZ25vIiwgfSwKKyAgICB7InNpX3N0YXR1cyIsICB9LAorICAgIHsic2lfY29kZSIsIH0sCisgICAgezB9Cit9OworCitzdGF0aWMgUHlTdHJ1Y3RTZXF1ZW5jZV9EZXNjIHdhaXRpZF9yZXN1bHRfZGVzYyA9IHsKKyAgICAid2FpdGlkX3Jlc3VsdCIsIC8qIG5hbWUgKi8KKyAgICB3YWl0aWRfcmVzdWx0X19kb2NfXywgLyogZG9jICovCisgICAgd2FpdGlkX3Jlc3VsdF9maWVsZHMsCisgICAgNQorfTsKK3N0YXRpYyBQeVR5cGVPYmplY3QgV2FpdGlkUmVzdWx0VHlwZTsKKyNlbmRpZgorCiBzdGF0aWMgaW50IGluaXRpYWxpemVkOwogc3RhdGljIFB5VHlwZU9iamVjdCBTdGF0UmVzdWx0VHlwZTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgU3RhdFZGU1Jlc3VsdFR5cGU7CisjaWYgZGVmaW5lZChIQVZFX1NDSEVEX1NFVFBBUkFNKSB8fCBkZWZpbmVkKEhBVkVfU0NIRURfU0VUU0NIRURVTEVSKQorc3RhdGljIFB5VHlwZU9iamVjdCBTY2hlZFBhcmFtVHlwZTsKKyNlbmRpZgogc3RhdGljIG5ld2Z1bmMgc3RydWN0c2VxX25ldzsKIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTE3MjcsNyArMTgzNyw3IEBACiAgICAgICAgICAgICAgIGludCAoKnN0YXRmdW5jKShjb25zdCBjaGFyICosIFNUUlVDVF9TVEFUICopLAogI2VuZGlmCiAgICAgICAgICAgICAgIGNoYXIgKndmb3JtYXQsCi0gICAgICAgICAgICAgIGludCAoKndzdGF0ZnVuYykoY29uc3QgUHlfVU5JQ09ERSAqLCBTVFJVQ1RfU1RBVCAqKSkKKyAgICAgICAgICAgICAgaW50ICgqd3N0YXRmdW5jKShjb25zdCB3Y2hhcl90ICosIFNUUlVDVF9TVEFUICopKQogewogICAgIFNUUlVDVF9TVEFUIHN0OwogICAgIFB5T2JqZWN0ICpvcGF0aDsKQEAgLTE3MzYsMTggKzE4NDYsMTggQEAKICAgICBQeU9iamVjdCAqcmVzdWx0OwogCiAjaWZkZWYgTVNfV0lORE9XUwotICAgIFB5VW5pY29kZU9iamVjdCAqcG87CisgICAgUHlPYmplY3QgKnBvOwogICAgIGlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIHdmb3JtYXQsICZwbykpIHsKLSAgICAgICAgUHlfVU5JQ09ERSAqd3BhdGggPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShwbyk7CisgICAgICAgIHdjaGFyX3QgKndwYXRoID0gUHlVbmljb2RlX0FzVW5pY29kZShwbyk7CisgICAgICAgIGlmICh3cGF0aCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICAgICAgLyogUHlVbmljb2RlX0FTX1VOSUNPREUgcmVzdWx0IE9LIHdpdGhvdXQKLSAgICAgICAgICAgICAgIHRocmVhZCBsb2NrIGFzIGl0IGlzIGEgc2ltcGxlIGRlcmVmZXJlbmNlLiAqLwogICAgICAgICByZXMgPSB3c3RhdGZ1bmMod3BhdGgsICZzdCk7CiAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCiAKICAgICAgICAgaWYgKHJlcyAhPSAwKQotICAgICAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX3VuaWNvZGUoInN0YXQiLCB3cGF0aCk7CisgICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KCJzdGF0IiwgcG8pOwogICAgICAgICByZXR1cm4gX3B5c3RhdF9mcm9tc3RydWN0c3RhdCgmc3QpOwogICAgIH0KICAgICAvKiBEcm9wIHRoZSBhcmd1bWVudCBwYXJzaW5nIGVycm9yIGFzIG5hcnJvdyBzdHJpbmdzCkBAIC0xNzU4LDYgKzE4NjgsMTIgQEAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgZm9ybWF0LAogICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCkpCiAgICAgICAgIHJldHVybiBOVUxMOworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkgeworICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisjZW5kaWYKICAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgIHJlcyA9ICgqc3RhdGZ1bmMpKHBhdGgsICZzdCk7CkBAIC0xNzkwLDMyICsxOTA2LDMxIEBACiBzdGF0aWMgUHlPYmplY3QgKgogcG9zaXhfYWNjZXNzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeU9iamVjdCAqb3BhdGg7Ci0gICAgY2hhciAqcGF0aDsKKyAgICBjb25zdCBjaGFyICpwYXRoOwogICAgIGludCBtb2RlOwogCiAjaWZkZWYgTVNfV0lORE9XUwogICAgIERXT1JEIGF0dHI7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpwbzsKKyAgICBQeU9iamVjdCAqcG87CiAgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVpOmFjY2VzcyIsICZwbywgJm1vZGUpKSB7CisgICAgICAgIHdjaGFyX3QqIHdwYXRoID0gUHlVbmljb2RlX0FzVW5pY29kZShwbyk7CisgICAgICAgIGlmICh3cGF0aCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgLyogUHlVbmljb2RlX0FTX1VOSUNPREUgT0sgd2l0aG91dCB0aHJlYWQgbG9jayBhcwotICAgICAgICAgICBpdCBpcyBhIHNpbXBsZSBkZXJlZmVyZW5jZS4gKi8KLSAgICAgICAgYXR0ciA9IEdldEZpbGVBdHRyaWJ1dGVzVyhQeVVuaWNvZGVfQVNfVU5JQ09ERShwbykpOworICAgICAgICBhdHRyID0gR2V0RmlsZUF0dHJpYnV0ZXNXKHdwYXRoKTsKICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKICAgICAgICAgZ290byBmaW5pc2g7CiAgICAgfQogICAgIC8qIERyb3AgdGhlIGFyZ3VtZW50IHBhcnNpbmcgZXJyb3IgYXMgbmFycm93IHN0cmluZ3MKICAgICAgICBhcmUgYWxzbyB2YWxpZC4gKi8KICAgICBQeUVycl9DbGVhcigpOwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZpOmFjY2VzcyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmbW9kZSkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5aTphY2Nlc3MiLCAmcGF0aCwgJm1vZGUpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CisgICAgaWYgKHdpbjMyX3dhcm5fYnl0ZXNfYXBpKCkpCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICBhdHRyID0gR2V0RmlsZUF0dHJpYnV0ZXNBKHBhdGgpOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgUHlfREVDUkVGKG9wYXRoKTsKIGZpbmlzaDoKICAgICBpZiAoYXR0ciA9PSAweEZGRkZGRkZGKQogICAgICAgICAvKiBGaWxlIGRvZXMgbm90IGV4aXN0LCBvciBjYW5ub3QgcmVhZCBhdHRyaWJ1dGVzICovCkBAIC0xODI3LDYgKzE5NDIsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgIShhdHRyICYgRklMRV9BVFRSSUJVVEVfUkVBRE9OTFkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB8fCAoYXR0ciAmIEZJTEVfQVRUUklCVVRFX0RJUkVDVE9SWSkpOwogI2Vsc2UKKyAgICBQeU9iamVjdCAqb3BhdGg7CiAgICAgaW50IHJlczsKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8maTphY2Nlc3MiLAogICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJm1vZGUpKQpAQCAtMTk0NiwyOCArMjA2MiwzMCBAQAogcG9zaXhfY2htb2QoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5T2JqZWN0ICpvcGF0aCA9IE5VTEw7Ci0gICAgY2hhciAqcGF0aCA9IE5VTEw7CisgICAgY29uc3QgY2hhciAqcGF0aCA9IE5VTEw7CiAgICAgaW50IGk7CiAgICAgaW50IHJlczsKICNpZmRlZiBNU19XSU5ET1dTCiAgICAgRFdPUkQgYXR0cjsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnBvOworICAgIFB5T2JqZWN0ICpwbzsKICAgICBpZiAoUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVWl8OmNobW9kIiwgJnBvLCAmaSkpIHsKKyAgICAgICAgd2NoYXJfdCAqd3BhdGggPSBQeVVuaWNvZGVfQXNVbmljb2RlKHBvKTsKKyAgICAgICAgaWYgKHdwYXRoID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICBhdHRyID0gR2V0RmlsZUF0dHJpYnV0ZXNXKFB5VW5pY29kZV9BU19VTklDT0RFKHBvKSk7CisgICAgICAgIGF0dHIgPSBHZXRGaWxlQXR0cmlidXRlc1cod3BhdGgpOwogICAgICAgICBpZiAoYXR0ciAhPSAweEZGRkZGRkZGKSB7CiAgICAgICAgICAgICBpZiAoaSAmIF9TX0lXUklURSkKICAgICAgICAgICAgICAgICBhdHRyICY9IH5GSUxFX0FUVFJJQlVURV9SRUFET05MWTsKICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICBhdHRyIHw9IEZJTEVfQVRUUklCVVRFX1JFQURPTkxZOwotICAgICAgICAgICAgcmVzID0gU2V0RmlsZUF0dHJpYnV0ZXNXKFB5VW5pY29kZV9BU19VTklDT0RFKHBvKSwgYXR0cik7CisgICAgICAgICAgICByZXMgPSBTZXRGaWxlQXR0cmlidXRlc1cod3BhdGgsIGF0dHIpOwogICAgICAgICB9CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHJlcyA9IDA7CiAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgICAgIGlmICghcmVzKQotICAgICAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX3VuaWNvZGUoImNobW9kIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHBvKSk7CisgICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KCJjaG1vZCIsIHBvKTsKICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgICAgICByZXR1cm4gUHlfTm9uZTsKICAgICB9CkBAIC0xOTc1LDEwICsyMDkzLDEwIEBACiAgICAgICAgYXJlIGFsc28gdmFsaWQuICovCiAgICAgUHlFcnJfQ2xlYXIoKTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZpOmNobW9kIiwgUHlVbmljb2RlX0ZTQ29udmVydGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAmb3BhdGgsICZpKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInlpOmNobW9kIiwgJnBhdGgsICZpKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpOworICAgIGlmICh3aW4zMl93YXJuX2J5dGVzX2FwaSgpKQorICAgICAgICByZXR1cm4gTlVMTDsKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgYXR0ciA9IEdldEZpbGVBdHRyaWJ1dGVzQShwYXRoKTsKICAgICBpZiAoYXR0ciAhPSAweEZGRkZGRkZGKSB7CkBAIC0xOTkzLDEwICsyMTExLDggQEAKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmICghcmVzKSB7CiAgICAgICAgIHdpbjMyX2Vycm9yKCJjaG1vZCIsIHBhdGgpOwotICAgICAgICBQeV9ERUNSRUYob3BhdGgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgUHlfREVDUkVGKG9wYXRoKTsKICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgcmV0dXJuIFB5X05vbmU7CiAjZWxzZSAvKiBNU19XSU5ET1dTICovCkBAIC0yMTQzLDYgKzIyNTksMjEgQEAKIH0KICNlbmRpZiAvKiBIQVZFX0ZTWU5DICovCiAKKyNpZmRlZiBIQVZFX1NZTkMKK1B5RG9jX1NUUlZBUihwb3NpeF9zeW5jX19kb2NfXywKKyJzeW5jKClcblxuXAorRm9yY2Ugd3JpdGUgb2YgZXZlcnl0aGluZyB0byBkaXNrLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfc3luYyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm5vYXJncykKK3sKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgc3luYygpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYKKwogI2lmZGVmIEhBVkVfRkRBVEFTWU5DCiAKICNpZmRlZiBfX2hwdXgKQEAgLTIyNzksNiArMjQxMCw5IEBACiAgICAgICAgIGlmICh3YnVmMiAhPSB3YnVmKSBmcmVlKHdidWYyKTsKICAgICAgICAgcmV0dXJuIHJlc29iajsKICAgICB9CisKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAjZW5kaWYKIAogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKQEAgLTIzMzcsNDMgKzI0NzEsNTYgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiB3aW4zMl9saW5rKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeU9iamVjdCAqb3NyYywgKm9kc3Q7Ci0gICAgY2hhciAqc3JjLCAqZHN0OwotICAgIEJPT0wgcnNsdDsKKyAgICBQeU9iamVjdCAqc3JjLCAqZHN0OworICAgIEJPT0wgb2s7CiAKLSAgICBQeVVuaWNvZGVPYmplY3QgKnVzcmMsICp1ZHN0OwotICAgIGlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVVTpsaW5rIiwgJnVzcmMsICZ1ZHN0KSkgeworICAgIGlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVVTpsaW5rIiwgJnNyYywgJmRzdCkpCisgICAgeworICAgICAgICB3Y2hhcl90ICp3c3JjLCAqd2RzdDsKKworICAgICAgICB3c3JjID0gUHlVbmljb2RlX0FzVW5pY29kZShzcmMpOworICAgICAgICBpZiAod3NyYyA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgd2RzdCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUoZHN0KTsKKyAgICAgICAgaWYgKHdkc3QgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisKICAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICByc2x0ID0gQ3JlYXRlSGFyZExpbmtXKFB5VW5pY29kZV9BU19VTklDT0RFKHVkc3QpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHVzcmMpLCBOVUxMKTsKKyAgICAgICAgb2sgPSBDcmVhdGVIYXJkTGlua1cod2RzdCwgd3NyYywgTlVMTCk7CiAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCiAKLSAgICAgICAgaWYgKHJzbHQgPT0gMCkKKyAgICAgICAgaWYgKCFvaykKICAgICAgICAgICAgIHJldHVybiB3aW4zMl9lcnJvcigibGluayIsIE5VTEwpOwotCiAgICAgICAgIFB5X1JFVFVSTl9OT05FOwogICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJk8mOmxpbmsiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmc3JjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmZHN0KSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgLyogTmFycm93IHN0cmluZ3MgYWxzbyB2YWxpZC4gKi8KLSAgICBQeUVycl9DbGVhcigpOworICAgICAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyY6bGluayIsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9zcmMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9kc3QpKQorICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIG9rID0gQ3JlYXRlSGFyZExpbmtBKFB5Qnl0ZXNfQVNfU1RSSU5HKGRzdCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHNyYyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgICAgIFB5X1hERUNSRUYoc3JjKTsKKyAgICAgICAgUHlfWERFQ1JFRihkc3QpOworCisgICAgICAgIGlmICghb2spCisgICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3IoImxpbmsiLCBOVUxMKTsKKyAgICAgICAgUHlfUkVUVVJOX05PTkU7CisKKyAgICBlcnJvcjoKKyAgICAgICAgUHlfWERFQ1JFRihzcmMpOworICAgICAgICBQeV9YREVDUkVGKGRzdCk7CiAgICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgc3JjID0gUHlCeXRlc19Bc1N0cmluZyhvc3JjKTsKLSAgICBkc3QgPSBQeUJ5dGVzX0FzU3RyaW5nKG9kc3QpOwotCi0gICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgIHJzbHQgPSBDcmVhdGVIYXJkTGlua0EoZHN0LCBzcmMsIE5VTEwpOwotICAgIFB5X0VORF9BTExPV19USFJFQURTCi0KLSAgICBQeV9ERUNSRUYob3NyYyk7Ci0gICAgUHlfREVDUkVGKG9kc3QpOwotICAgIGlmIChyc2x0ID09IDApCi0gICAgICAgIHJldHVybiB3aW4zMl9lcnJvcigibGluayIsIE5VTEwpOwotCi0gICAgUHlfUkVUVVJOX05PTkU7CisgICAgfQogfQogI2VuZGlmIC8qIE1TX1dJTkRPV1MgKi8KIApAQCAtMjM5OCw3ICsyNTQ1LDggQEAKICAgICBIQU5ETEUgaEZpbmRGaWxlOwogICAgIEJPT0wgcmVzdWx0OwogICAgIFdJTjMyX0ZJTkRfREFUQSBGaWxlRGF0YTsKLSAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgY29uc3QgY2hhciAqcGF0aDsKKyAgICBQeV9zc2l6ZV90IHBhdGhsZW47CiAgICAgY2hhciBuYW1lYnVmW01BWF9QQVRIKzVdOyAvKiBPdmVyYWxsb2NhdGUgZm9yIFxcKi4qXDAgKi8KICAgICBjaGFyICpidWZwdHIgPSBuYW1lYnVmOwogICAgIFB5X3NzaXplX3QgbGVuID0gc2l6ZW9mKG5hbWVidWYpLTU7IC8qIG9ubHkgY2xhaW0gdG8gaGF2ZSBzcGFjZSBmb3IgTUFYX1BBVEggKi8KQEAgLTI0MDYsMTQgKzI1NTQsMTUgQEAKICAgICBQeU9iamVjdCAqcG8gPSBOVUxMOwogICAgIGlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8VTpsaXN0ZGlyIiwgJnBvKSkgewogICAgICAgICBXSU4zMl9GSU5EX0RBVEFXIHdGaWxlRGF0YTsKLSAgICAgICAgUHlfVU5JQ09ERSAqd25hbWVidWYsICpwb193Y2hhcnM7CisgICAgICAgIHdjaGFyX3QgKnduYW1lYnVmLCAqcG9fd2NoYXJzOwogCiAgICAgICAgIGlmIChwbyA9PSBOVUxMKSB7IC8qIERlZmF1bHQgYXJnOiAiLiIgKi8KICAgICAgICAgICAgIHBvX3djaGFycyA9IEwiLiI7CiAgICAgICAgICAgICBsZW4gPSAxOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgcG9fd2NoYXJzID0gUHlVbmljb2RlX0FTX1VOSUNPREUocG8pOwotICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHBvKTsKKyAgICAgICAgICAgIHBvX3djaGFycyA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKHBvLCAmbGVuKTsKKyAgICAgICAgICAgIGlmIChwb193Y2hhcnMgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgICAgICAvKiBPdmVyYWxsb2NhdGUgZm9yIFxcKi4qXDAgKi8KICAgICAgICAgd25hbWVidWYgPSBtYWxsb2MoKGxlbiArIDUpICogc2l6ZW9mKHdjaGFyX3QpKTsKQEAgLTI0MjMsNyArMjU3Miw3IEBACiAgICAgICAgIH0KICAgICAgICAgd2NzY3B5KHduYW1lYnVmLCBwb193Y2hhcnMpOwogICAgICAgICBpZiAobGVuID4gMCkgewotICAgICAgICAgICAgUHlfVU5JQ09ERSB3Y2ggPSB3bmFtZWJ1ZltsZW4tMV07CisgICAgICAgICAgICB3Y2hhcl90IHdjaCA9IHduYW1lYnVmW2xlbi0xXTsKICAgICAgICAgICAgIGlmICh3Y2ggIT0gTCcvJyAmJiB3Y2ggIT0gTCdcXCcgJiYgd2NoICE9IEwnOicpCiAgICAgICAgICAgICAgICAgd25hbWVidWZbbGVuKytdID0gTCdcXCc7CiAgICAgICAgICAgICB3Y3NjcHkod25hbWVidWYgKyBsZW4sIEwiKi4qIik7CkBAIC0yNDUwLDcgKzI1OTksNyBAQAogICAgICAgICAgICAgLyogU2tpcCBvdmVyIC4gYW5kIC4uICovCiAgICAgICAgICAgICBpZiAod2NzY21wKHdGaWxlRGF0YS5jRmlsZU5hbWUsIEwiLiIpICE9IDAgJiYKICAgICAgICAgICAgICAgICB3Y3NjbXAod0ZpbGVEYXRhLmNGaWxlTmFtZSwgTCIuLiIpICE9IDApIHsKLSAgICAgICAgICAgICAgICB2ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHdGaWxlRGF0YS5jRmlsZU5hbWUsIHdjc2xlbih3RmlsZURhdGEuY0ZpbGVOYW1lKSk7CisgICAgICAgICAgICAgICAgdiA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIod0ZpbGVEYXRhLmNGaWxlTmFtZSwgd2NzbGVuKHdGaWxlRGF0YS5jRmlsZU5hbWUpKTsKICAgICAgICAgICAgICAgICBpZiAodiA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihkKTsKICAgICAgICAgICAgICAgICAgICAgZCA9IE5VTEw7CkBAIC0yNDkxLDE3ICsyNjQwLDE2IEBACiAgICAgICAgYXJlIGFsc28gdmFsaWQuICovCiAgICAgUHlFcnJfQ2xlYXIoKTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6bGlzdGRpciIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInkjOmxpc3RkaXIiLCAmcGF0aCwgJnBhdGhsZW4pKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoUHlCeXRlc19HRVRfU0laRShvcGF0aCkrMSA+IE1BWF9QQVRIKSB7CisgICAgaWYgKHdpbjMyX3dhcm5fYnl0ZXNfYXBpKCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChwYXRobGVuKzEgPiBNQVhfUEFUSCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInBhdGggdG9vIGxvbmciKTsKLSAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHN0cmNweShuYW1lYnVmLCBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKSk7Ci0gICAgbGVuID0gUHlPYmplY3RfU2l6ZShvcGF0aCk7Ci0gICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICBzdHJjcHkobmFtZWJ1ZiwgcGF0aCk7CisgICAgbGVuID0gcGF0aGxlbjsKICAgICBpZiAobGVuID4gMCkgewogICAgICAgICBjaGFyIGNoID0gbmFtZWJ1ZltsZW4tMV07CiAgICAgICAgIGlmIChjaCAhPSBTRVAgJiYgY2ggIT0gQUxUU0VQICYmIGNoICE9ICc6JykKQEAgLTI3MTgsMzYgKzI4NjYsMTE1IEBACiAjZW5kaWYgLyogd2hpY2ggT1MgKi8KIH0gIC8qIGVuZCBvZiBwb3NpeF9saXN0ZGlyICovCiAKKyNpZmRlZiBIQVZFX0ZET1BFTkRJUgorUHlEb2NfU1RSVkFSKHBvc2l4X2ZkbGlzdGRpcl9fZG9jX18sCisiZmRsaXN0ZGlyKGZkKSAtPiBsaXN0X29mX3N0cmluZ3NcblxuXAorTGlrZSBsaXN0ZGlyKCksIGJ1dCB1c2VzIGEgZmlsZSBkZXNjcmlwdG9yIGluc3RlYWQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mZGxpc3RkaXIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpkLCAqdjsKKyAgICBESVIgKmRpcnA7CisgICAgc3RydWN0IGRpcmVudCAqZXA7CisgICAgaW50IGZkOworCisgICAgZXJybm8gPSAwOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaTpmZGxpc3RkaXIiLCAmZmQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAvKiBjbG9zZWRpcigpIGNsb3NlcyB0aGUgRkQsIHNvIHdlIGR1cGxpY2F0ZSBpdCAqLworICAgIGZkID0gZHVwKGZkKTsKKyAgICBpZiAoZmQgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgZGlycCA9IGZkb3BlbmRpcihmZCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAoZGlycCA9PSBOVUxMKSB7CisgICAgICAgIGNsb3NlKGZkKTsKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgfQorICAgIGlmICgoZCA9IFB5TGlzdF9OZXcoMCkpID09IE5VTEwpIHsKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICBjbG9zZWRpcihkaXJwKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGZvciAoOzspIHsKKyAgICAgICAgZXJybm8gPSAwOworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIGVwID0gcmVhZGRpcihkaXJwKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgaWYgKGVwID09IE5VTEwpIHsKKyAgICAgICAgICAgIGlmIChlcnJubyA9PSAwKSB7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgICAgICAgICByZXdpbmRkaXIoZGlycCk7CisgICAgICAgICAgICAgICAgY2xvc2VkaXIoZGlycCk7CisgICAgICAgICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYoZCk7CisgICAgICAgICAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgaWYgKGVwLT5kX25hbWVbMF0gPT0gJy4nICYmCisgICAgICAgICAgICAoTkFNTEVOKGVwKSA9PSAxIHx8CisgICAgICAgICAgICAgKGVwLT5kX25hbWVbMV0gPT0gJy4nICYmIE5BTUxFTihlcCkgPT0gMikpKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIHYgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZShlcC0+ZF9uYW1lLCBOQU1MRU4oZXApKTsKKyAgICAgICAgaWYgKHYgPT0gTlVMTCkgeworICAgICAgICAgICAgUHlfQ0xFQVIoZCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBpZiAoUHlMaXN0X0FwcGVuZChkLCB2KSAhPSAwKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYodik7CisgICAgICAgICAgICBQeV9DTEVBUihkKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRih2KTsKKyAgICB9CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJld2luZGRpcihkaXJwKTsKKyAgICBjbG9zZWRpcihkaXJwKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworCisgICAgcmV0dXJuIGQ7Cit9CisjZW5kaWYKKwogI2lmZGVmIE1TX1dJTkRPV1MKIC8qIEEgaGVscGVyIGZ1bmN0aW9uIGZvciBhYnNwYXRoIG9uIHdpbjMyICovCiBzdGF0aWMgUHlPYmplY3QgKgogcG9zaXhfX2dldGZ1bGxwYXRobmFtZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlPYmplY3QgKm9wYXRoOwotICAgIGNoYXIgKnBhdGg7CisgICAgY29uc3QgY2hhciAqcGF0aDsKICAgICBjaGFyIG91dGJ1ZltNQVhfUEFUSCoyXTsKICAgICBjaGFyICp0ZW1wOwotI2lmZGVmIE1TX1dJTkRPV1MKLSAgICBQeVVuaWNvZGVPYmplY3QgKnBvOwotICAgIGlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVfDpfZ2V0ZnVsbHBhdGhuYW1lIiwgJnBvKSkgewotICAgICAgICBQeV9VTklDT0RFICp3cGF0aCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHBvKTsKLSAgICAgICAgUHlfVU5JQ09ERSB3b3V0YnVmW01BWF9QQVRIKjJdLCAqd291dGJ1ZnAgPSB3b3V0YnVmOwotICAgICAgICBQeV9VTklDT0RFICp3dGVtcDsKKyAgICBQeU9iamVjdCAqcG87CisKKyAgICBpZiAoUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVXw6X2dldGZ1bGxwYXRobmFtZSIsICZwbykpCisgICAgeworICAgICAgICB3Y2hhcl90ICp3cGF0aDsKKyAgICAgICAgd2NoYXJfdCB3b3V0YnVmW01BWF9QQVRIKjJdLCAqd291dGJ1ZnAgPSB3b3V0YnVmOworICAgICAgICB3Y2hhcl90ICp3dGVtcDsKICAgICAgICAgRFdPUkQgcmVzdWx0OwogICAgICAgICBQeU9iamVjdCAqdjsKKworICAgICAgICB3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocG8pOworICAgICAgICBpZiAod3BhdGggPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICByZXN1bHQgPSBHZXRGdWxsUGF0aE5hbWVXKHdwYXRoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZih3b3V0YnVmKS9zaXplb2Yod291dGJ1ZlswXSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfQVJSQVlfTEVOR1RIKHdvdXRidWYpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdvdXRidWYsICZ3dGVtcCk7Ci0gICAgICAgIGlmIChyZXN1bHQgPiBzaXplb2Yod291dGJ1Zikvc2l6ZW9mKHdvdXRidWZbMF0pKSB7Ci0gICAgICAgICAgICB3b3V0YnVmcCA9IG1hbGxvYyhyZXN1bHQgKiBzaXplb2YoUHlfVU5JQ09ERSkpOworICAgICAgICBpZiAocmVzdWx0ID4gUHlfQVJSQVlfTEVOR1RIKHdvdXRidWYpKSB7CisgICAgICAgICAgICB3b3V0YnVmcCA9IG1hbGxvYyhyZXN1bHQgKiBzaXplb2Yod2NoYXJfdCkpOwogICAgICAgICAgICAgaWYgKCF3b3V0YnVmcCkKICAgICAgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgICAgIHJlc3VsdCA9IEdldEZ1bGxQYXRoTmFtZVcod3BhdGgsIHJlc3VsdCwgd291dGJ1ZnAsICZ3dGVtcCk7CiAgICAgICAgIH0KICAgICAgICAgaWYgKHJlc3VsdCkKLSAgICAgICAgICAgIHYgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUod291dGJ1ZnAsIHdjc2xlbih3b3V0YnVmcCkpOworICAgICAgICAgICAgdiA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIod291dGJ1ZnAsIHdjc2xlbih3b3V0YnVmcCkpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICB2ID0gd2luMzJfZXJyb3JfdW5pY29kZSgiR2V0RnVsbFBhdGhOYW1lVyIsIHdwYXRoKTsKKyAgICAgICAgICAgIHYgPSB3aW4zMl9lcnJvcl9vYmplY3QoIkdldEZ1bGxQYXRoTmFtZVciLCBwbyk7CiAgICAgICAgIGlmICh3b3V0YnVmcCAhPSB3b3V0YnVmKQogICAgICAgICAgICAgZnJlZSh3b3V0YnVmcCk7CiAgICAgICAgIHJldHVybiB2OwpAQCAtMjc1NiwxOCArMjk4MywxNiBAQAogICAgICAgIGFyZSBhbHNvIHZhbGlkLiAqLwogICAgIFB5RXJyX0NsZWFyKCk7CiAKLSNlbmRpZgotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZSAoYXJncywgIk8mOl9nZXRmdWxscGF0aG5hbWUiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZSAoYXJncywgInk6X2dldGZ1bGxwYXRobmFtZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAmcGF0aCkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKLSAgICBpZiAoIUdldEZ1bGxQYXRoTmFtZShwYXRoLCBzaXplb2Yob3V0YnVmKS9zaXplb2Yob3V0YnVmWzBdKSwKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKCFHZXRGdWxsUGF0aE5hbWUocGF0aCwgUHlfQVJSQVlfTEVOR1RIKG91dGJ1ZiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0YnVmLCAmdGVtcCkpIHsKICAgICAgICAgd2luMzJfZXJyb3IoIkdldEZ1bGxQYXRoTmFtZSIsIHBhdGgpOwotICAgICAgICBQeV9ERUNSRUYob3BhdGgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgUHlfREVDUkVGKG9wYXRoKTsKICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKFB5VHVwbGVfR2V0SXRlbShhcmdzLCAwKSkpIHsKICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGUob3V0YnVmLCBzdHJsZW4ob3V0YnVmKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZywgTlVMTCk7CkBAIC0yNzg1LDEyICszMDEwLDE0IEBACiAgICAgaW50IGJ1Zl9zaXplOwogICAgIHdjaGFyX3QgKnRhcmdldF9wYXRoOwogICAgIGludCByZXN1bHRfbGVuZ3RoOwotICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgUHlPYmplY3QgKnBvLCAqcmVzdWx0OwogICAgIHdjaGFyX3QgKnBhdGg7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInV8Ol9nZXRmaW5hbHBhdGhuYW1lIiwgJnBhdGgpKSB7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVfDpfZ2V0ZmluYWxwYXRobmFtZSIsICZwbykpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KKyAgICBwYXRoID0gUHlVbmljb2RlX0FzVW5pY29kZShwbyk7CisgICAgaWYgKHBhdGggPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZighY2hlY2tfR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlKCkpIHsKICAgICAgICAgLyogSWYgdGhlIE9TIGRvZXNuJ3QgaGF2ZSBHZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGUsIHJldHVybiBhCkBAIC0yODA5LDE4ICszMDM2LDE1IEBACiAgICAgICAgIEZJTEVfRkxBR19CQUNLVVBfU0VNQU5USUNTLAogICAgICAgICBOVUxMKTsKIAotICAgIGlmKGhGaWxlID09IElOVkFMSURfSEFORExFX1ZBTFVFKSB7Ci0gICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl91bmljb2RlKCJHZXRGaW5hbFBhdGhOYW15QnlIYW5kbGUiLCBwYXRoKTsKLSAgICAgICAgcmV0dXJuIFB5RXJyX0Zvcm1hdChQeUV4Y19SdW50aW1lRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNvdWxkIG5vdCBnZXQgYSBoYW5kbGUgdG8gZmlsZS4iKTsKLSAgICB9CisgICAgaWYoaEZpbGUgPT0gSU5WQUxJRF9IQU5ETEVfVkFMVUUpCisgICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl9vYmplY3QoIkNyZWF0ZUZpbGVXIiwgcG8pOwogCiAgICAgLyogV2UgaGF2ZSBhIGdvb2QgaGFuZGxlIHRvIHRoZSB0YXJnZXQsIHVzZSBpdCB0byBkZXRlcm1pbmUgdGhlCiAgICAgICAgdGFyZ2V0IHBhdGggbmFtZS4gKi8KICAgICBidWZfc2l6ZSA9IFB5X0dldEZpbmFsUGF0aE5hbWVCeUhhbmRsZVcoaEZpbGUsIDAsIDAsIFZPTFVNRV9OQU1FX05UKTsKIAogICAgIGlmKCFidWZfc2l6ZSkKLSAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX3VuaWNvZGUoIkdldEZpbmFsUGF0aE5hbWVCeUhhbmRsZSIsIHBhdGgpOworICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KCJHZXRGaW5hbFBhdGhOYW1lQnlIYW5kbGUiLCBwbyk7CiAKICAgICB0YXJnZXRfcGF0aCA9ICh3Y2hhcl90ICopbWFsbG9jKChidWZfc2l6ZSsxKSpzaXplb2Yod2NoYXJfdCkpOwogICAgIGlmKCF0YXJnZXRfcGF0aCkKQEAgLTI4MjksMTMgKzMwNTMsMTMgQEAKICAgICByZXN1bHRfbGVuZ3RoID0gUHlfR2V0RmluYWxQYXRoTmFtZUJ5SGFuZGxlVyhoRmlsZSwgdGFyZ2V0X3BhdGgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmX3NpemUsIFZPTFVNRV9OQU1FX0RPUyk7CiAgICAgaWYoIXJlc3VsdF9sZW5ndGgpCi0gICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl91bmljb2RlKCJHZXRGaW5hbFBhdGhOYW15QnlIYW5kbGUiLCBwYXRoKTsKKyAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX29iamVjdCgiR2V0RmluYWxQYXRoTmFteUJ5SGFuZGxlIiwgcG8pOwogCiAgICAgaWYoIUNsb3NlSGFuZGxlKGhGaWxlKSkKLSAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX3VuaWNvZGUoIkdldEZpbmFsUGF0aE5hbWVCeUhhbmRsZSIsIHBhdGgpOworICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KCJDbG9zZUhhbmRsZSIsIHBvKTsKIAogICAgIHRhcmdldF9wYXRoW3Jlc3VsdF9sZW5ndGhdID0gMDsKLSAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUodGFyZ2V0X3BhdGgsIHJlc3VsdF9sZW5ndGgpOworICAgIHJlc3VsdCA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIodGFyZ2V0X3BhdGgsIHJlc3VsdF9sZW5ndGgpOwogICAgIGZyZWUodGFyZ2V0X3BhdGgpOwogICAgIHJldHVybiByZXN1bHQ7CiAKQEAgLTI4NzIsMTMgKzMwOTYsMTQgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBwb3NpeF9faXNkaXIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5T2JqZWN0ICpvcGF0aDsKLSAgICBjaGFyICpwYXRoOwotICAgIFB5VW5pY29kZU9iamVjdCAqcG87CisgICAgY29uc3QgY2hhciAqcGF0aDsKKyAgICBQeU9iamVjdCAqcG87CiAgICAgRFdPUkQgYXR0cmlidXRlczsKIAogICAgIGlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVfDpfaXNkaXIiLCAmcG8pKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgKndwYXRoID0gUHlVbmljb2RlX0FTX1VOSUNPREUocG8pOworICAgICAgICB3Y2hhcl90ICp3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocG8pOworICAgICAgICBpZiAod3BhdGggPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgICAgIGF0dHJpYnV0ZXMgPSBHZXRGaWxlQXR0cmlidXRlc1cod3BhdGgpOwogICAgICAgICBpZiAoYXR0cmlidXRlcyA9PSBJTlZBTElEX0ZJTEVfQVRUUklCVVRFUykKQEAgLTI4ODksMTEgKzMxMTQsMTAgQEAKICAgICAgICBhcmUgYWxzbyB2YWxpZC4gKi8KICAgICBQeUVycl9DbGVhcigpOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJjpfaXNkaXIiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5Ol9pc2RpciIsICZwYXRoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CisgICAgaWYgKHdpbjMyX3dhcm5fYnl0ZXNfYXBpKCkpCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIGF0dHJpYnV0ZXMgPSBHZXRGaWxlQXR0cmlidXRlc0EocGF0aCk7CiAgICAgaWYgKGF0dHJpYnV0ZXMgPT0gSU5WQUxJRF9GSUxFX0FUVFJJQlVURVMpCiAgICAgICAgIFB5X1JFVFVSTl9GQUxTRTsKQEAgLTI5MTQsNDQgKzMxMzgsNDMgQEAKIHBvc2l4X21rZGlyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBpbnQgcmVzOwotICAgIFB5T2JqZWN0ICpvcGF0aDsKLSAgICBjaGFyICpwYXRoOworICAgIGNvbnN0IGNoYXIgKnBhdGg7CiAgICAgaW50IG1vZGUgPSAwNzc3OwogCiAjaWZkZWYgTVNfV0lORE9XUwotICAgIFB5VW5pY29kZU9iamVjdCAqcG87Ci0gICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlV8aTpta2RpciIsICZwbywgJm1vZGUpKSB7CisgICAgUHlPYmplY3QgKnBvOworICAgIGlmIChQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVfGk6bWtkaXIiLCAmcG8sICZtb2RlKSkKKyAgICB7CisgICAgICAgIHdjaGFyX3QgKndwYXRoID0gUHlVbmljb2RlX0FzVW5pY29kZShwbyk7CisgICAgICAgIGlmICh3cGF0aCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICAvKiBQeVVuaWNvZGVfQVNfVU5JQ09ERSBPSyB3aXRob3V0IHRocmVhZCBsb2NrIGFzCi0gICAgICAgICAgIGl0IGlzIGEgc2ltcGxlIGRlcmVmZXJlbmNlLiAqLwotICAgICAgICByZXMgPSBDcmVhdGVEaXJlY3RvcnlXKFB5VW5pY29kZV9BU19VTklDT0RFKHBvKSwgTlVMTCk7CisgICAgICAgIHJlcyA9IENyZWF0ZURpcmVjdG9yeVcod3BhdGgsIE5VTEwpOwogICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgICAgICBpZiAoIXJlcykKLSAgICAgICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl91bmljb2RlKCJta2RpciIsIFB5VW5pY29kZV9BU19VTklDT0RFKHBvKSk7CisgICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KCJta2RpciIsIHBvKTsKICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgICAgICByZXR1cm4gUHlfTm9uZTsKICAgICB9CiAgICAgLyogRHJvcCB0aGUgYXJndW1lbnQgcGFyc2luZyBlcnJvciBhcyBuYXJyb3cgc3RyaW5ncwogICAgICAgIGFyZSBhbHNvIHZhbGlkLiAqLwogICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJnxpOm1rZGlyIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsICZtb2RlKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInl8aTpta2RpciIsICZwYXRoLCAmbW9kZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgIC8qIFB5VW5pY29kZV9BU19VTklDT0RFIE9LIHdpdGhvdXQgdGhyZWFkIGxvY2sgYXMKLSAgICAgICBpdCBpcyBhIHNpbXBsZSBkZXJlZmVyZW5jZS4gKi8KICAgICByZXMgPSBDcmVhdGVEaXJlY3RvcnlBKHBhdGgsIE5VTEwpOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgaWYgKCFyZXMpIHsKICAgICAgICAgd2luMzJfZXJyb3IoIm1rZGlyIiwgcGF0aCk7Ci0gICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBQeV9ERUNSRUYob3BhdGgpOwogICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICByZXR1cm4gUHlfTm9uZTsKICNlbHNlCisgICAgUHlPYmplY3QgKm9wYXRoOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJnxpOm1rZGlyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsICZtb2RlKSkKQEAgLTMwMTUsNiArMzIzOCwxMTAgQEAKIH0KICNlbmRpZiAvKiBIQVZFX05JQ0UgKi8KIAorCisjaWZkZWYgSEFWRV9HRVRQUklPUklUWQorUHlEb2NfU1RSVkFSKHBvc2l4X2dldHByaW9yaXR5X19kb2NfXywKKyJnZXRwcmlvcml0eSh3aGljaCwgd2hvKSAtPiBjdXJyZW50X3ByaW9yaXR5XG5cblwKK0dldCBwcm9ncmFtIHNjaGVkdWxpbmcgcHJpb3JpdHkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9nZXRwcmlvcml0eShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IHdoaWNoLCB3aG8sIHJldHZhbDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaWkiLCAmd2hpY2gsICZ3aG8pKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBlcnJubyA9IDA7CisgICAgcmV0dmFsID0gZ2V0cHJpb3JpdHkod2hpY2gsIHdobyk7CisgICAgaWYgKGVycm5vICE9IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpcmV0dmFsKTsKK30KKyNlbmRpZiAvKiBIQVZFX0dFVFBSSU9SSVRZICovCisKKworI2lmZGVmIEhBVkVfU0VUUFJJT1JJVFkKK1B5RG9jX1NUUlZBUihwb3NpeF9zZXRwcmlvcml0eV9fZG9jX18sCisic2V0cHJpb3JpdHkod2hpY2gsIHdobywgcHJpbykgLT4gTm9uZVxuXG5cCitTZXQgcHJvZ3JhbSBzY2hlZHVsaW5nIHByaW9yaXR5LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfc2V0cHJpb3JpdHkoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCB3aGljaCwgd2hvLCBwcmlvLCByZXR2YWw7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlpaSIsICZ3aGljaCwgJndobywgJnByaW8pKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXR2YWwgPSBzZXRwcmlvcml0eSh3aGljaCwgd2hvLCBwcmlvKTsKKyAgICBpZiAocmV0dmFsID09IC0xKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZiAvKiBIQVZFX1NFVFBSSU9SSVRZICovCisKKworc3RhdGljIFB5T2JqZWN0ICoKK2ludGVybmFsX3JlbmFtZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIGludCBpc19yZXBsYWNlKQoreworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICBQeU9iamVjdCAqc3JjLCAqZHN0OworICAgIEJPT0wgcmVzdWx0OworICAgIGludCBmbGFncyA9IGlzX3JlcGxhY2UgPyBNT1ZFRklMRV9SRVBMQUNFX0VYSVNUSU5HIDogMDsKKyAgICBpZiAoUHlBcmdfUGFyc2VUdXBsZShhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgIGlzX3JlcGxhY2UgPyAiVVU6cmVwbGFjZSIgOiAiVVU6cmVuYW1lIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAmc3JjLCAmZHN0KSkKKyAgICB7CisgICAgICAgIHdjaGFyX3QgKndzcmMsICp3ZHN0OworCisgICAgICAgIHdzcmMgPSBQeVVuaWNvZGVfQXNVbmljb2RlKHNyYyk7CisgICAgICAgIGlmICh3c3JjID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgd2RzdCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUoZHN0KTsKKyAgICAgICAgaWYgKHdkc3QgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHJlc3VsdCA9IE1vdmVGaWxlRXhXKHdzcmMsIHdkc3QsIGZsYWdzKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgaWYgKCFyZXN1bHQpCisgICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3IoaXNfcmVwbGFjZSA/ICJyZXBsYWNlIiA6ICJyZW5hbWUiLCBOVUxMKTsKKyAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgICAgICByZXR1cm4gUHlfTm9uZTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNfcmVwbGFjZSA/ICJPJk8mOnJlcGxhY2UiIDogIk8mTyY6cmVuYW1lIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJnNyYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJmRzdCkpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKworICAgICAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICByZXN1bHQgPSBNb3ZlRmlsZUV4QShQeUJ5dGVzX0FTX1NUUklORyhzcmMpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhkc3QpLCBmbGFncyk7CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICAgICAgUHlfWERFQ1JFRihzcmMpOworICAgICAgICBQeV9YREVDUkVGKGRzdCk7CisKKyAgICAgICAgaWYgKCFyZXN1bHQpCisgICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3IoaXNfcmVwbGFjZSA/ICJyZXBsYWNlIiA6ICJyZW5hbWUiLCBOVUxMKTsKKyAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgICAgICByZXR1cm4gUHlfTm9uZTsKKworZXJyb3I6CisgICAgICAgIFB5X1hERUNSRUYoc3JjKTsKKyAgICAgICAgUHlfWERFQ1JFRihkc3QpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisjZWxzZQorICAgIHJldHVybiBwb3NpeF8yc3RyKGFyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgaXNfcmVwbGFjZSA/ICJPJk8mOnJlcGxhY2UiIDogIk8mTyY6cmVuYW1lIiwgcmVuYW1lKTsKKyNlbmRpZgorfQorCiBQeURvY19TVFJWQVIocG9zaXhfcmVuYW1lX19kb2NfXywKICJyZW5hbWUob2xkLCBuZXcpXG5cblwKIFJlbmFtZSBhIGZpbGUgb3IgZGlyZWN0b3J5LiIpOwpAQCAtMzAyMiw0NCArMzM0OSwxOCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHBvc2l4X3JlbmFtZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0jaWZkZWYgTVNfV0lORE9XUwotICAgIFB5T2JqZWN0ICpvMSwgKm8yOwotICAgIGNoYXIgKnAxLCAqcDI7Ci0gICAgQk9PTCByZXN1bHQ7Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPTzpyZW5hbWUiLCAmbzEsICZvMikpCi0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgaWYgKCFjb252ZXJ0X3RvX3VuaWNvZGUoJm8xKSkKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICBpZiAoIWNvbnZlcnRfdG9fdW5pY29kZSgmbzIpKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihvMSk7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICByZXN1bHQgPSBNb3ZlRmlsZVcoUHlVbmljb2RlX0FzVW5pY29kZShvMSksCi0gICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9Bc1VuaWNvZGUobzIpKTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgIFB5X0RFQ1JFRihvMSk7Ci0gICAgUHlfREVDUkVGKG8yKTsKLSAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yKCJyZW5hbWUiLCBOVUxMKTsKLSAgICBQeV9JTkNSRUYoUHlfTm9uZSk7Ci0gICAgcmV0dXJuIFB5X05vbmU7Ci1lcnJvcjoKLSAgICBQeUVycl9DbGVhcigpOwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAic3M6cmVuYW1lIiwgJnAxLCAmcDIpKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgcmVzdWx0ID0gTW92ZUZpbGVBKHAxLCBwMik7Ci0gICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yKCJyZW5hbWUiLCBOVUxMKTsKLSAgICBQeV9JTkNSRUYoUHlfTm9uZSk7Ci0gICAgcmV0dXJuIFB5X05vbmU7Ci0jZWxzZQotICAgIHJldHVybiBwb3NpeF8yc3RyKGFyZ3MsICJPJk8mOnJlbmFtZSIsIHJlbmFtZSk7Ci0jZW5kaWYKKyAgICByZXR1cm4gaW50ZXJuYWxfcmVuYW1lKHNlbGYsIGFyZ3MsIDApOwogfQogCitQeURvY19TVFJWQVIocG9zaXhfcmVwbGFjZV9fZG9jX18sCisicmVwbGFjZShvbGQsIG5ldylcblxuXAorUmVuYW1lIGEgZmlsZSBvciBkaXJlY3RvcnksIG92ZXJ3cml0aW5nIHRoZSBkZXN0aW5hdGlvbi4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3JlcGxhY2UoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIHJldHVybiBpbnRlcm5hbF9yZW5hbWUoc2VsZiwgYXJncywgMSk7Cit9CiAKIFB5RG9jX1NUUlZBUihwb3NpeF9ybWRpcl9fZG9jX18sCiAicm1kaXIocGF0aClcblxuXApAQCAtMzIyMyw2ICszNTI0LDMwIEBACiB9CiAjZW5kaWYgLyogSEFWRV9VTkFNRSAqLwogCisKKy8qCisgKiBDbGFzc2ljIFBPU0lYIHV0aW1lIGZ1bmN0aW9ucyBzdXBwb3J0ZWQgbWljcm9zZWNvbmRzICgxbS9zZWMpLgorICogTmV3ZXIgUE9TSVggZnVuY3Rpb25zIHN1cHBvcnQgbmFub3NlY29uZHMgKDEgYmlsbGlvbiBwZXIgc2VjKS4KKyAqIHBvc2l4bW9kdWxlIG5vdyB1c2VzIHRoZSBuZXcgZnVuY3Rpb25zIHdoZXJlIHBvc3NpYmxlLgorICogVGhpcyBpbXByb3ZlcyBhY2N1cmFjeSBpbiBtYW55IHNpdHVhdGlvbnMsIGZvciBleGFtcGxlIHNodXRpbC5jb3B5MigpLgorICoKKyAqIFRoZSBpbXBsZW1lbnRhdGlvbiBpc24ndCBjdXJyZW50bHkgc29waGlzdGljYXRlZCBlbm91Z2ggdG8gaGFuZGxlCisgKiBhIHBsYXRmb3JtIHdoZXJlIEhBVkVfVVRJTUVOU0FUIGlzIHRydWUgYnV0IEhBVkVfRlVUSU1FTlMgaXMgZmFsc2UuCisgKiBTcGVjaWZpY2FsbHksIHBvc2l4X2Z1dGltZXMoKSB3b3VsZCBicmVhay4KKyAqCisgKiBTdXBwb3J0aW5nIHN1Y2ggYSBwbGF0Zm9ybSB3b3VsZG4ndCBiZSBpbXBvc3NpYmxlOyB5b3UnZCBuZWVkIHR3bworICogZXh0cmFjdF90aW1lKCkgZnVuY3Rpb25zLCBvciBtYWtlIGl0cyBwcmVjaXNpb24gYSBwYXJhbWV0ZXIuCisgKiBTaW5jZSBzdWNoIGEgcGxhdGZvcm0gc2VlbXMgdW5saWtlbHkgd2UgaGF2ZW4ndCBib3RoZXJlZC4KKyAqLworI2lmIGRlZmluZWQoSEFWRV9VVElNRU5TQVQpCisjZGVmaW5lIEVYVFJBQ1RfVElNRV9QUkVDSVNJT04gKDFlOSkKKyNpZiAhZGVmaW5lZChIQVZFX0ZVVElNRU5TKQorI2Vycm9yIFlvdSBIQVZFX1VUSU1FTlNBVCBidXQgbm90IEhBVkVfRlVUSU1FTlMuLi4gcGxlYXNlIHNlZSBhY2NvbXBhbnlpbmcgY29tbWVudC4KKyNlbmRpZgorI2Vsc2UKKyNkZWZpbmUgRVhUUkFDVF9USU1FX1BSRUNJU0lPTiAoMWU2KQorI2VuZGlmCisKIHN0YXRpYyBpbnQKIGV4dHJhY3RfdGltZShQeU9iamVjdCAqdCwgdGltZV90KiBzZWMsIGxvbmcqIHVzZWMpCiB7CkBAIC0zMjQxLDcgKzM1NjYsOCBAQAogICAgICAgICBpZiAoaW50dmFsID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICpzZWMgPSBpbnR2YWw7Ci0gICAgICAgICp1c2VjID0gKGxvbmcpKCh0dmFsIC0gaW50dmFsKSAqIDFlNik7IC8qIGNhbid0IGV4Y2VlZCAxMDAwMDAwICovCisKKyAgICAgICAgKnVzZWMgPSAobG9uZykoKHR2YWwgLSBpbnR2YWwpICogRVhUUkFDVF9USU1FX1BSRUNJU0lPTik7CiAgICAgICAgIGlmICgqdXNlYyA8IDApCiAgICAgICAgICAgICAvKiBJZiByb3VuZGluZyBnYXZlIHVzIGEgbmVnYXRpdmUgbnVtYmVyLAogICAgICAgICAgICAgICAgdHJ1bmNhdGUuICAqLwpAQCAtMzI2MSw0NSArMzU4Nyw0NyBAQAogfQogCiBQeURvY19TVFJWQVIocG9zaXhfdXRpbWVfX2RvY19fLAotInV0aW1lKHBhdGgsIChhdGltZSwgbXRpbWUpKVxuXAotdXRpbWUocGF0aCwgTm9uZSlcblxuXAotU2V0IHRoZSBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWUgb2YgdGhlIGZpbGUgdG8gdGhlIGdpdmVuIHZhbHVlcy4gIElmIHRoZVxuXAotc2Vjb25kIGZvcm0gaXMgdXNlZCwgc2V0IHRoZSBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWVzIHRvIHRoZSBjdXJyZW50IHRpbWUuIik7CisidXRpbWUocGF0aFssIChhdGltZSwgbXRpbWUpXSlcblwKK1NldCB0aGUgYWNjZXNzIGFuZCBtb2RpZmllZCB0aW1lIG9mIHRoZSBmaWxlIHRvIHRoZSBnaXZlbiB2YWx1ZXMuXG5cCitJZiBubyBzZWNvbmQgYXJndW1lbnQgaXMgdXNlZCwgc2V0IHRoZSBhY2Nlc3MgYW5kIG1vZGlmaWVkIHRpbWVzIHRvXG5cCit0aGUgY3VycmVudCB0aW1lLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgogcG9zaXhfdXRpbWUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogI2lmZGVmIE1TX1dJTkRPV1MKLSAgICBQeU9iamVjdCAqYXJnOwotICAgIFB5VW5pY29kZU9iamVjdCAqb2J3cGF0aDsKKyAgICBQeU9iamVjdCAqYXJnID0gUHlfTm9uZTsKKyAgICBQeU9iamVjdCAqb2J3cGF0aDsKICAgICB3Y2hhcl90ICp3cGF0aCA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKm9hcGF0aDsKLSAgICBjaGFyICphcGF0aDsKKyAgICBjb25zdCBjaGFyICphcGF0aDsKICAgICBIQU5ETEUgaEZpbGU7CiAgICAgdGltZV90IGF0aW1lc2VjLCBtdGltZXNlYzsKICAgICBsb25nIGF1c2VjLCBtdXNlYzsKICAgICBGSUxFVElNRSBhdGltZSwgbXRpbWU7CiAgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CiAKLSAgICBpZiAoUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVU98OnV0aW1lIiwgJm9id3BhdGgsICZhcmcpKSB7Ci0gICAgICAgIHdwYXRoID0gUHlVbmljb2RlX0FTX1VOSUNPREUob2J3cGF0aCk7CisgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlV8Tzp1dGltZSIsICZvYndwYXRoLCAmYXJnKSkgeworICAgICAgICB3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUob2J3cGF0aCk7CisgICAgICAgIGlmICh3cGF0aCA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAgICAgaEZpbGUgPSBDcmVhdGVGaWxlVyh3cGF0aCwgRklMRV9XUklURV9BVFRSSUJVVEVTLCAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE9QRU5fRVhJU1RJTkcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRklMRV9GTEFHX0JBQ0tVUF9TRU1BTlRJQ1MsIE5VTEwpOwogICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgICAgICBpZiAoaEZpbGUgPT0gSU5WQUxJRF9IQU5ETEVfVkFMVUUpCi0gICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3JfdW5pY29kZSgidXRpbWUiLCB3cGF0aCk7Ci0gICAgfSBlbHNlCisgICAgICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KCJ1dGltZSIsIG9id3BhdGgpOworICAgIH0KKyAgICBlbHNlIHsKICAgICAgICAgLyogRHJvcCB0aGUgYXJndW1lbnQgcGFyc2luZyBlcnJvciBhcyBuYXJyb3cgc3RyaW5ncwogICAgICAgICAgICBhcmUgYWxzbyB2YWxpZC4gKi8KICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKIAotICAgIGlmICghd3BhdGgpIHsKLSAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJk86dXRpbWUiLAotICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb2FwYXRoLCAmYXJnKSkKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ5fE86dXRpbWUiLCAmYXBhdGgsICZhcmcpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGFwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvYXBhdGgpOworICAgICAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAgICAgaEZpbGUgPSBDcmVhdGVGaWxlQShhcGF0aCwgRklMRV9XUklURV9BVFRSSUJVVEVTLCAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE9QRU5fRVhJU1RJTkcsCkBAIC0zMzA3LDEwICszNjM1LDggQEAKICAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKICAgICAgICAgaWYgKGhGaWxlID09IElOVkFMSURfSEFORExFX1ZBTFVFKSB7CiAgICAgICAgICAgICB3aW4zMl9lcnJvcigidXRpbWUiLCBhcGF0aCk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYob2FwYXRoKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIFB5X0RFQ1JFRihvYXBhdGgpOwogICAgIH0KIAogICAgIGlmIChhcmcgPT0gUHlfTm9uZSkgewpAQCAtMzM1NywyNyArMzY4Myw5IEBACiAgICAgdGltZV90IGF0aW1lLCBtdGltZTsKICAgICBsb25nIGF1c2VjLCBtdXNlYzsKICAgICBpbnQgcmVzOwotICAgIFB5T2JqZWN0KiBhcmc7CisgICAgUHlPYmplY3QqIGFyZyA9IFB5X05vbmU7CiAKLSNpZiBkZWZpbmVkKEhBVkVfVVRJTUVTKQotICAgIHN0cnVjdCB0aW1ldmFsIGJ1ZlsyXTsKLSNkZWZpbmUgQVRJTUUgYnVmWzBdLnR2X3NlYwotI2RlZmluZSBNVElNRSBidWZbMV0udHZfc2VjCi0jZWxpZiBkZWZpbmVkKEhBVkVfVVRJTUVfSCkKLS8qIFhYWCBzaG91bGQgZGVmaW5lIHN0cnVjdCB1dGltYnVmIGluc3RlYWQsIGFib3ZlICovCi0gICAgc3RydWN0IHV0aW1idWYgYnVmOwotI2RlZmluZSBBVElNRSBidWYuYWN0aW1lCi0jZGVmaW5lIE1USU1FIGJ1Zi5tb2R0aW1lCi0jZGVmaW5lIFVUSU1FX0FSRyAmYnVmCi0jZWxzZSAvKiBIQVZFX1VUSU1FUyAqLwotICAgIHRpbWVfdCBidWZbMl07Ci0jZGVmaW5lIEFUSU1FIGJ1ZlswXQotI2RlZmluZSBNVElNRSBidWZbMV0KLSNkZWZpbmUgVVRJTUVfQVJHIGJ1ZgotI2VuZGlmIC8qIEhBVkVfVVRJTUVTICovCi0KLQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZPOnV0aW1lIiwKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mfE86dXRpbWUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJmFyZykpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKQEAgLTM0MDQsMTkgKzM3MTIsMzcgQEAKICAgICAgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQotICAgICAgICBBVElNRSA9IGF0aW1lOwotICAgICAgICBNVElNRSA9IG10aW1lOwotI2lmZGVmIEhBVkVfVVRJTUVTCisKKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICB7CisjaWZkZWYgSEFWRV9VVElNRU5TQVQKKyAgICAgICAgc3RydWN0IHRpbWVzcGVjIGJ1ZlsyXTsKKyAgICAgICAgYnVmWzBdLnR2X3NlYyA9IGF0aW1lOworICAgICAgICBidWZbMF0udHZfbnNlYyA9IGF1c2VjOworICAgICAgICBidWZbMV0udHZfc2VjID0gbXRpbWU7CisgICAgICAgIGJ1ZlsxXS50dl9uc2VjID0gbXVzZWM7CisgICAgICAgIHJlcyA9IHV0aW1lbnNhdChBVF9GRENXRCwgcGF0aCwgYnVmLCAwKTsKKyNlbGlmIGRlZmluZWQoSEFWRV9VVElNRVMpCisgICAgICAgIHN0cnVjdCB0aW1ldmFsIGJ1ZlsyXTsKKyAgICAgICAgYnVmWzBdLnR2X3NlYyA9IGF0aW1lOwogICAgICAgICBidWZbMF0udHZfdXNlYyA9IGF1c2VjOworICAgICAgICBidWZbMV0udHZfc2VjID0gbXRpbWU7CiAgICAgICAgIGJ1ZlsxXS50dl91c2VjID0gbXVzZWM7Ci0gICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAgICAgcmVzID0gdXRpbWVzKHBhdGgsIGJ1Zik7Ci0gICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisjZWxpZiBkZWZpbmVkKEhBVkVfVVRJTUVfSCkKKyAgICAgICAgLyogWFhYIHNob3VsZCBkZWZpbmUgc3RydWN0IHV0aW1idWYgaW5zdGVhZCwgYWJvdmUgKi8KKyAgICAgICAgc3RydWN0IHV0aW1idWYgYnVmOworICAgICAgICBidWYuYWN0aW1lID0gYXRpbWU7CisgICAgICAgIGJ1Zi5tb2R0aW1lID0gbXRpbWU7CisgICAgICAgIHJlcyA9IHV0aW1lKHBhdGgsICZidWYpOwogI2Vsc2UKLSAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwotICAgICAgICByZXMgPSB1dGltZShwYXRoLCBVVElNRV9BUkcpOworICAgICAgICB0aW1lX3QgYnVmWzJdOworICAgICAgICBidWZbMF0gPSBhdGltZTsKKyAgICAgICAgYnVmWzFdID0gbXRpbWU7CisgICAgICAgIHJlcyA9IHV0aW1lKHBhdGgsIGJ1Zik7CisjZW5kaWYKKyAgICAgICAgfQogICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotI2VuZGlmIC8qIEhBVkVfVVRJTUVTICovCiAgICAgfQogICAgIGlmIChyZXMgPCAwKSB7CiAgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcl93aXRoX2FsbG9jYXRlZF9maWxlbmFtZShvcGF0aCk7CkBAIC0zNDI0LDEyICszNzUwLDE5OCBAQAogICAgIFB5X0RFQ1JFRihvcGF0aCk7CiAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgIHJldHVybiBQeV9Ob25lOwotI3VuZGVmIFVUSU1FX0FSRwotI3VuZGVmIEFUSU1FCi0jdW5kZWYgTVRJTUUKKyN1bmRlZiBVVElNRV9FWFRSQUNUCiAjZW5kaWYgLyogTVNfV0lORE9XUyAqLwogfQogCisjaWZkZWYgSEFWRV9GVVRJTUVTCitQeURvY19TVFJWQVIocG9zaXhfZnV0aW1lc19fZG9jX18sCisiZnV0aW1lcyhmZFssIChhdGltZSwgbXRpbWUpXSlcblwKK1NldCB0aGUgYWNjZXNzIGFuZCBtb2RpZmllZCB0aW1lIG9mIHRoZSBmaWxlIHNwZWNpZmllZCBieSB0aGUgZmlsZVxuXAorZGVzY3JpcHRvciBmZCB0byB0aGUgZ2l2ZW4gdmFsdWVzLiBJZiBubyBzZWNvbmQgYXJndW1lbnQgaXMgdXNlZCwgc2V0IHRoZVxuXAorYWNjZXNzIGFuZCBtb2RpZmllZCB0aW1lcyB0byB0aGUgY3VycmVudCB0aW1lLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfZnV0aW1lcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IHJlcywgZmQ7CisgICAgUHlPYmplY3QqIGFyZyA9IFB5X05vbmU7CisgICAgdGltZV90IGF0aW1lLCBtdGltZTsKKyAgICBsb25nIGF1c2VjLCBtdXNlYzsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaXxPOmZ1dGltZXMiLCAmZmQsICZhcmcpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChhcmcgPT0gUHlfTm9uZSkgeworICAgICAgICAvKiBvcHRpb25hbCB0aW1lIHZhbHVlcyBub3QgZ2l2ZW4gKi8KKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICByZXMgPSBmdXRpbWVzKGZkLCBOVUxMKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisgICAgZWxzZSBpZiAoIVB5VHVwbGVfQ2hlY2soYXJnKSB8fCBQeVR1cGxlX1NpemUoYXJnKSAhPSAyKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgImZ1dGltZXMoKSBhcmcgMiBtdXN0IGJlIGEgdHVwbGUgKGF0aW1lLCBtdGltZSkiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBpZiAoZXh0cmFjdF90aW1lKFB5VHVwbGVfR0VUX0lURU0oYXJnLCAwKSwKKyAgICAgICAgICAgICAgICAmYXRpbWUsICZhdXNlYykgPT0gLTEpIHsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIGlmIChleHRyYWN0X3RpbWUoUHlUdXBsZV9HRVRfSVRFTShhcmcsIDEpLAorICAgICAgICAgICAgICAgICZtdGltZSwgJm11c2VjKSA9PSAtMSkgeworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICB7CisjaWZkZWYgSEFWRV9GVVRJTUVOUworICAgICAgICBzdHJ1Y3QgdGltZXNwZWMgYnVmWzJdOworICAgICAgICBidWZbMF0udHZfc2VjID0gYXRpbWU7CisgICAgICAgIGJ1ZlswXS50dl9uc2VjID0gYXVzZWM7CisgICAgICAgIGJ1ZlsxXS50dl9zZWMgPSBtdGltZTsKKyAgICAgICAgYnVmWzFdLnR2X25zZWMgPSBtdXNlYzsKKyAgICAgICAgcmVzID0gZnV0aW1lbnMoZmQsIGJ1Zik7CisjZWxzZQorICAgICAgICBzdHJ1Y3QgdGltZXZhbCBidWZbMl07CisgICAgICAgIGJ1ZlswXS50dl9zZWMgPSBhdGltZTsKKyAgICAgICAgYnVmWzBdLnR2X3VzZWMgPSBhdXNlYzsKKyAgICAgICAgYnVmWzFdLnR2X3NlYyA9IG10aW1lOworICAgICAgICBidWZbMV0udHZfdXNlYyA9IG11c2VjOworICAgICAgICByZXMgPSBmdXRpbWVzKGZkLCBidWYpOworI2VuZGlmCisgICAgICAgIH0KKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisgICAgaWYgKHJlcyA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0xVVElNRVMKK1B5RG9jX1NUUlZBUihwb3NpeF9sdXRpbWVzX19kb2NfXywKKyJsdXRpbWVzKHBhdGhbLCAoYXRpbWUsIG10aW1lKV0pXG5cCitMaWtlIHV0aW1lKCksIGJ1dCBpZiBwYXRoIGlzIGEgc3ltYm9saWMgbGluaywgaXQgaXMgbm90IGRlcmVmZXJlbmNlZC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2x1dGltZXMoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpvcGF0aDsKKyAgICBQeU9iamVjdCAqYXJnID0gUHlfTm9uZTsKKyAgICBjb25zdCBjaGFyICpwYXRoOworICAgIGludCByZXM7CisgICAgdGltZV90IGF0aW1lLCBtdGltZTsKKyAgICBsb25nIGF1c2VjLCBtdXNlYzsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZ8TzpsdXRpbWVzIiwKKyAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmYXJnKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpOworICAgIGlmIChhcmcgPT0gUHlfTm9uZSkgeworICAgICAgICAvKiBvcHRpb25hbCB0aW1lIHZhbHVlcyBub3QgZ2l2ZW4gKi8KKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICByZXMgPSBsdXRpbWVzKHBhdGgsIE5VTEwpOworICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIH0KKyAgICBlbHNlIGlmICghUHlUdXBsZV9DaGVjayhhcmcpIHx8IFB5VHVwbGVfU2l6ZShhcmcpICE9IDIpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICJsdXRpbWVzKCkgYXJnIDIgbXVzdCBiZSBhIHR1cGxlIChhdGltZSwgbXRpbWUpIik7CisgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKGV4dHJhY3RfdGltZShQeVR1cGxlX0dFVF9JVEVNKGFyZywgMCksCisgICAgICAgICAgICAgICAgJmF0aW1lLCAmYXVzZWMpID09IC0xKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGV4dHJhY3RfdGltZShQeVR1cGxlX0dFVF9JVEVNKGFyZywgMSksCisgICAgICAgICAgICAgICAgJm10aW1lLCAmbXVzZWMpID09IC0xKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICB7CisjaWZkZWYgSEFWRV9VVElNRU5TQVQKKyAgICAgICAgc3RydWN0IHRpbWVzcGVjIGJ1ZlsyXTsKKyAgICAgICAgYnVmWzBdLnR2X3NlYyA9IGF0aW1lOworICAgICAgICBidWZbMF0udHZfbnNlYyA9IGF1c2VjOworICAgICAgICBidWZbMV0udHZfc2VjID0gbXRpbWU7CisgICAgICAgIGJ1ZlsxXS50dl9uc2VjID0gbXVzZWM7CisgICAgICAgIHJlcyA9IHV0aW1lbnNhdChBVF9GRENXRCwgcGF0aCwgYnVmLCBBVF9TWU1MSU5LX05PRk9MTE9XKTsKKyNlbHNlCisgICAgICAgIHN0cnVjdCB0aW1ldmFsIGJ1ZlsyXTsKKyAgICAgICAgYnVmWzBdLnR2X3NlYyA9IGF0aW1lOworICAgICAgICBidWZbMF0udHZfdXNlYyA9IGF1c2VjOworICAgICAgICBidWZbMV0udHZfc2VjID0gbXRpbWU7CisgICAgICAgIGJ1ZlsxXS50dl91c2VjID0gbXVzZWM7CisgICAgICAgIHJlcyA9IGx1dGltZXMocGF0aCwgYnVmKTsKKyNlbmRpZgorICAgICAgICB9CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgfQorICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgaWYgKHJlcyA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0ZVVElNRU5TCitQeURvY19TVFJWQVIocG9zaXhfZnV0aW1lbnNfX2RvY19fLAorImZ1dGltZW5zKGZkWywgKGF0aW1lX3NlYywgYXRpbWVfbnNlYyksIChtdGltZV9zZWMsIG10aW1lX25zZWMpXSlcblwKK1VwZGF0ZXMgdGhlIHRpbWVzdGFtcHMgb2YgYSBmaWxlIHNwZWNpZmllZCBieSB0aGUgZmlsZSBkZXNjcmlwdG9yIGZkLCB3aXRoXG5cCituYW5vc2Vjb25kIHByZWNpc2lvbi5cblwKK0lmIG5vIHNlY29uZCBhcmd1bWVudCBpcyBnaXZlbiwgc2V0IGF0aW1lIGFuZCBtdGltZSB0byB0aGUgY3VycmVudCB0aW1lLlxuXAorSWYgKl9uc2VjIGlzIHNwZWNpZmllZCBhcyBVVElNRV9OT1csIHRoZSB0aW1lc3RhbXAgaXMgdXBkYXRlZCB0byB0aGVcblwKK2N1cnJlbnQgdGltZS5cblwKK0lmICpfbnNlYyBpcyBzcGVjaWZpZWQgYXMgVVRJTUVfT01JVCwgdGhlIHRpbWVzdGFtcCBpcyBub3QgdXBkYXRlZC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2Z1dGltZW5zKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgcmVzLCBmZDsKKyAgICBQeU9iamVjdCAqYXRpbWUgPSBQeV9Ob25lOworICAgIFB5T2JqZWN0ICptdGltZSA9IFB5X05vbmU7CisgICAgc3RydWN0IHRpbWVzcGVjIGJ1ZlsyXTsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaXxPTzpmdXRpbWVucyIsCisgICAgICAgICAgICAmZmQsICZhdGltZSwgJm10aW1lKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKGF0aW1lID09IFB5X05vbmUgJiYgbXRpbWUgPT0gUHlfTm9uZSkgeworICAgICAgICAvKiBvcHRpb25hbCB0aW1lIHZhbHVlcyBub3QgZ2l2ZW4gKi8KKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICByZXMgPSBmdXRpbWVucyhmZCwgTlVMTCk7CisgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgfQorICAgIGVsc2UgaWYgKCFQeVR1cGxlX0NoZWNrKGF0aW1lKSB8fCBQeVR1cGxlX1NpemUoYXRpbWUpICE9IDIpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICJmdXRpbWVucygpIGFyZyAyIG11c3QgYmUgYSB0dXBsZSAoYXRpbWVfc2VjLCBhdGltZV9uc2VjKSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZWxzZSBpZiAoIVB5VHVwbGVfQ2hlY2sobXRpbWUpIHx8IFB5VHVwbGVfU2l6ZShtdGltZSkgIT0gMikgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgImZ1dGltZW5zKCkgYXJnIDMgbXVzdCBiZSBhIHR1cGxlIChtdGltZV9zZWMsIG10aW1lX25zZWMpIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGF0aW1lLCAibGw6ZnV0aW1lbnMiLAorICAgICAgICAgICAgICAgICYoYnVmWzBdLnR2X3NlYyksICYoYnVmWzBdLnR2X25zZWMpKSkgeworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKG10aW1lLCAibGw6ZnV0aW1lbnMiLAorICAgICAgICAgICAgICAgICYoYnVmWzFdLnR2X3NlYyksICYoYnVmWzFdLnR2X25zZWMpKSkgeworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICByZXMgPSBmdXRpbWVucyhmZCwgYnVmKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisgICAgaWYgKHJlcyA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCiAKIC8qIFByb2Nlc3Mgb3BlcmF0aW9ucyAqLwogCkBAIC0zNDc0LDc5ICszOTg2LDcgQEAKIH0KICNlbmRpZgogCi0KLSNpZmRlZiBIQVZFX0VYRUNWCi1QeURvY19TVFJWQVIocG9zaXhfZXhlY3ZfX2RvY19fLAotImV4ZWN2KHBhdGgsIGFyZ3MpXG5cblwKLUV4ZWN1dGUgYW4gZXhlY3V0YWJsZSBwYXRoIHdpdGggYXJndW1lbnRzLCByZXBsYWNpbmcgY3VycmVudCBwcm9jZXNzLlxuXAotXG5cCi0gICAgcGF0aDogcGF0aCBvZiBleGVjdXRhYmxlIGZpbGVcblwKLSAgICBhcmdzOiB0dXBsZSBvciBsaXN0IG9mIHN0cmluZ3MiKTsKLQotc3RhdGljIFB5T2JqZWN0ICoKLXBvc2l4X2V4ZWN2KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKLXsKLSAgICBQeU9iamVjdCAqb3BhdGg7Ci0gICAgY2hhciAqcGF0aDsKLSAgICBQeU9iamVjdCAqYXJndjsKLSAgICBjaGFyICoqYXJndmxpc3Q7Ci0gICAgUHlfc3NpemVfdCBpLCBhcmdjOwotICAgIFB5T2JqZWN0ICooKmdldGl0ZW0pKFB5T2JqZWN0ICosIFB5X3NzaXplX3QpOwotCi0gICAgLyogZXhlY3YgaGFzIHR3byBhcmd1bWVudHM6IChwYXRoLCBhcmd2KSwgd2hlcmUKLSAgICAgICBhcmd2IGlzIGEgbGlzdCBvciB0dXBsZSBvZiBzdHJpbmdzLiAqLwotCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJk86ZXhlY3YiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZvcGF0aCwgJmFyZ3YpKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7Ci0gICAgaWYgKFB5TGlzdF9DaGVjayhhcmd2KSkgewotICAgICAgICBhcmdjID0gUHlMaXN0X1NpemUoYXJndik7Ci0gICAgICAgIGdldGl0ZW0gPSBQeUxpc3RfR2V0SXRlbTsKLSAgICB9Ci0gICAgZWxzZSBpZiAoUHlUdXBsZV9DaGVjayhhcmd2KSkgewotICAgICAgICBhcmdjID0gUHlUdXBsZV9TaXplKGFyZ3YpOwotICAgICAgICBnZXRpdGVtID0gUHlUdXBsZV9HZXRJdGVtOwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImV4ZWN2KCkgYXJnIDIgbXVzdCBiZSBhIHR1cGxlIG9yIGxpc3QiKTsKLSAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIGlmIChhcmdjIDwgMSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgImV4ZWN2KCkgYXJnIDIgbXVzdCBub3QgYmUgZW1wdHkiKTsKLSAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgYXJndmxpc3QgPSBQeU1lbV9ORVcoY2hhciAqLCBhcmdjKzEpOwotICAgIGlmIChhcmd2bGlzdCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7Ci0gICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOwotICAgIH0KLSAgICBmb3IgKGkgPSAwOyBpIDwgYXJnYzsgaSsrKSB7Ci0gICAgICAgIGlmICghZnNjb252ZXJ0X3N0cmR1cCgoKmdldGl0ZW0pKGFyZ3YsIGkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmFyZ3ZsaXN0W2ldKSkgewotICAgICAgICAgICAgZnJlZV9zdHJpbmdfYXJyYXkoYXJndmxpc3QsIGkpOwotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZXhlY3YoKSBhcmcgMiBtdXN0IGNvbnRhaW4gb25seSBzdHJpbmdzIik7Ci0gICAgICAgICAgICBQeV9ERUNSRUYob3BhdGgpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICAgICAgfQotICAgIH0KLSAgICBhcmd2bGlzdFthcmdjXSA9IE5VTEw7Ci0KLSAgICBleGVjdihwYXRoLCBhcmd2bGlzdCk7Ci0KLSAgICAvKiBJZiB3ZSBnZXQgaGVyZSBpdCdzIGRlZmluaXRlbHkgYW4gZXJyb3IgKi8KLQotICAgIGZyZWVfc3RyaW5nX2FycmF5KGFyZ3ZsaXN0LCBhcmdjKTsKLSAgICBQeV9ERUNSRUYob3BhdGgpOwotICAgIHJldHVybiBwb3NpeF9lcnJvcigpOwotfQotCisjaWYgZGVmaW5lZChIQVZFX0VYRUNWKSB8fCBkZWZpbmVkIChIQVZFX0ZFWEVDVkUpCiBzdGF0aWMgY2hhcioqCiBwYXJzZV9lbnZsaXN0KFB5T2JqZWN0KiBlbnYsIFB5X3NzaXplX3QgKmVudmNfcHRyKQogewpAQCAtMzYyOCw2ICs0MDY4LDg3IEBACiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKK3N0YXRpYyBjaGFyKioKK3BhcnNlX2FyZ2xpc3QoUHlPYmplY3QqIGFyZ3YsIFB5X3NzaXplX3QgKmFyZ2MpCit7CisgICAgaW50IGk7CisgICAgY2hhciAqKmFyZ3ZsaXN0ID0gUHlNZW1fTkVXKGNoYXIgKiwgKmFyZ2MrMSk7CisgICAgaWYgKGFyZ3ZsaXN0ID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGZvciAoaSA9IDA7IGkgPCAqYXJnYzsgaSsrKSB7CisgICAgICAgIFB5T2JqZWN0KiBpdGVtID0gUHlTZXF1ZW5jZV9JVEVNKGFyZ3YsIGkpOworICAgICAgICBpZiAoaXRlbSA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICBpZiAoIWZzY29udmVydF9zdHJkdXAoaXRlbSwgJmFyZ3ZsaXN0W2ldKSkgeworICAgICAgICAgICAgUHlfREVDUkVGKGl0ZW0pOworICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRihpdGVtKTsKKyAgICB9CisgICAgYXJndmxpc3RbKmFyZ2NdID0gTlVMTDsKKyAgICByZXR1cm4gYXJndmxpc3Q7CitmYWlsOgorICAgICphcmdjID0gaTsKKyAgICBmcmVlX3N0cmluZ19hcnJheShhcmd2bGlzdCwgKmFyZ2MpOworICAgIHJldHVybiBOVUxMOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0VYRUNWCitQeURvY19TVFJWQVIocG9zaXhfZXhlY3ZfX2RvY19fLAorImV4ZWN2KHBhdGgsIGFyZ3MpXG5cblwKK0V4ZWN1dGUgYW4gZXhlY3V0YWJsZSBwYXRoIHdpdGggYXJndW1lbnRzLCByZXBsYWNpbmcgY3VycmVudCBwcm9jZXNzLlxuXAorXG5cCisgICAgcGF0aDogcGF0aCBvZiBleGVjdXRhYmxlIGZpbGVcblwKKyAgICBhcmdzOiB0dXBsZSBvciBsaXN0IG9mIHN0cmluZ3MiKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2V4ZWN2KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgY2hhciAqcGF0aDsKKyAgICBQeU9iamVjdCAqYXJndjsKKyAgICBjaGFyICoqYXJndmxpc3Q7CisgICAgUHlfc3NpemVfdCBhcmdjOworCisgICAgLyogZXhlY3YgaGFzIHR3byBhcmd1bWVudHM6IChwYXRoLCBhcmd2KSwgd2hlcmUKKyAgICAgICBhcmd2IGlzIGEgbGlzdCBvciB0dXBsZSBvZiBzdHJpbmdzLiAqLworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJk86ZXhlY3YiLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICZvcGF0aCwgJmFyZ3YpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CisgICAgaWYgKCFQeUxpc3RfQ2hlY2soYXJndikgJiYgIVB5VHVwbGVfQ2hlY2soYXJndikpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJleGVjdigpIGFyZyAyIG11c3QgYmUgYSB0dXBsZSBvciBsaXN0Iik7CisgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBhcmdjID0gUHlTZXF1ZW5jZV9TaXplKGFyZ3YpOworICAgIGlmIChhcmdjIDwgMSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgImV4ZWN2KCkgYXJnIDIgbXVzdCBub3QgYmUgZW1wdHkiKTsKKyAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgYXJndmxpc3QgPSBwYXJzZV9hcmdsaXN0KGFyZ3YsICZhcmdjKTsKKyAgICBpZiAoYXJndmxpc3QgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBleGVjdihwYXRoLCBhcmd2bGlzdCk7CisKKyAgICAvKiBJZiB3ZSBnZXQgaGVyZSBpdCdzIGRlZmluaXRlbHkgYW4gZXJyb3IgKi8KKworICAgIGZyZWVfc3RyaW5nX2FycmF5KGFyZ3ZsaXN0LCBhcmdjKTsKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworfQorCiBQeURvY19TVFJWQVIocG9zaXhfZXhlY3ZlX19kb2NfXywKICJleGVjdmUocGF0aCwgYXJncywgZW52KVxuXG5cCiBFeGVjdXRlIGEgcGF0aCB3aXRoIGFyZ3VtZW50cyBhbmQgZW52aXJvbm1lbnQsIHJlcGxhY2luZyBjdXJyZW50IHByb2Nlc3MuXG5cCkBAIC0zNjQ0LDkgKzQxNjUsNyBAQAogICAgIFB5T2JqZWN0ICphcmd2LCAqZW52OwogICAgIGNoYXIgKiphcmd2bGlzdDsKICAgICBjaGFyICoqZW52bGlzdDsKLSAgICBQeV9zc2l6ZV90IGksIGFyZ2MsIGVudmM7Ci0gICAgUHlPYmplY3QgKigqZ2V0aXRlbSkoUHlPYmplY3QgKiwgUHlfc3NpemVfdCk7Ci0gICAgUHlfc3NpemVfdCBsYXN0YXJnID0gMDsKKyAgICBQeV9zc2l6ZV90IGFyZ2MsIGVudmM7CiAKICAgICAvKiBleGVjdmUgaGFzIHRocmVlIGFyZ3VtZW50czogKHBhdGgsIGFyZ3YsIGVudiksIHdoZXJlCiAgICAgICAgYXJndiBpcyBhIGxpc3Qgb3IgdHVwbGUgb2Ygc3RyaW5ncyBhbmQgZW52IGlzIGEgZGljdGlvbmFyeQpAQCAtMzY1Nyw0MCArNDE3NiwyMiBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAmb3BhdGgsICZhcmd2LCAmZW52KSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpOwotICAgIGlmIChQeUxpc3RfQ2hlY2soYXJndikpIHsKLSAgICAgICAgYXJnYyA9IFB5TGlzdF9TaXplKGFyZ3YpOwotICAgICAgICBnZXRpdGVtID0gUHlMaXN0X0dldEl0ZW07Ci0gICAgfQotICAgIGVsc2UgaWYgKFB5VHVwbGVfQ2hlY2soYXJndikpIHsKLSAgICAgICAgYXJnYyA9IFB5VHVwbGVfU2l6ZShhcmd2KTsKLSAgICAgICAgZ2V0aXRlbSA9IFB5VHVwbGVfR2V0SXRlbTsKLSAgICB9Ci0gICAgZWxzZSB7CisgICAgaWYgKCFQeUxpc3RfQ2hlY2soYXJndikgJiYgIVB5VHVwbGVfQ2hlY2soYXJndikpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJleGVjdmUoKSBhcmcgMiBtdXN0IGJlIGEgdHVwbGUgb3IgbGlzdCIpOwogICAgICAgICBnb3RvIGZhaWxfMDsKICAgICB9CisgICAgYXJnYyA9IFB5U2VxdWVuY2VfU2l6ZShhcmd2KTsKICAgICBpZiAoIVB5TWFwcGluZ19DaGVjayhlbnYpKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAiZXhlY3ZlKCkgYXJnIDMgbXVzdCBiZSBhIG1hcHBpbmcgb2JqZWN0Iik7CiAgICAgICAgIGdvdG8gZmFpbF8wOwogICAgIH0KIAotICAgIGFyZ3ZsaXN0ID0gUHlNZW1fTkVXKGNoYXIgKiwgYXJnYysxKTsKKyAgICBhcmd2bGlzdCA9IHBhcnNlX2FyZ2xpc3QoYXJndiwgJmFyZ2MpOwogICAgIGlmIChhcmd2bGlzdCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgIGdvdG8gZmFpbF8wOwogICAgIH0KLSAgICBmb3IgKGkgPSAwOyBpIDwgYXJnYzsgaSsrKSB7Ci0gICAgICAgIGlmICghZnNjb252ZXJ0X3N0cmR1cCgoKmdldGl0ZW0pKGFyZ3YsIGkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmFyZ3ZsaXN0W2ldKSkKLSAgICAgICAgewotICAgICAgICAgICAgbGFzdGFyZyA9IGk7Ci0gICAgICAgICAgICBnb3RvIGZhaWxfMTsKLSAgICAgICAgfQotICAgIH0KLSAgICBsYXN0YXJnID0gYXJnYzsKLSAgICBhcmd2bGlzdFthcmdjXSA9IE5VTEw7CiAKICAgICBlbnZsaXN0ID0gcGFyc2VfZW52bGlzdChlbnYsICZlbnZjKTsKICAgICBpZiAoZW52bGlzdCA9PSBOVUxMKQpAQCAtMzcwNiwxMyArNDIwNyw2OSBAQAogICAgICAgICBQeU1lbV9ERUwoZW52bGlzdFtlbnZjXSk7CiAgICAgUHlNZW1fREVMKGVudmxpc3QpOwogICBmYWlsXzE6Ci0gICAgZnJlZV9zdHJpbmdfYXJyYXkoYXJndmxpc3QsIGxhc3RhcmcpOworICAgIGZyZWVfc3RyaW5nX2FycmF5KGFyZ3ZsaXN0LCBhcmdjKTsKICAgZmFpbF8wOgogICAgIFB5X0RFQ1JFRihvcGF0aCk7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAjZW5kaWYgLyogSEFWRV9FWEVDViAqLwogCisjaWZkZWYgSEFWRV9GRVhFQ1ZFCitQeURvY19TVFJWQVIocG9zaXhfZmV4ZWN2ZV9fZG9jX18sCisiZmV4ZWN2ZShmZCwgYXJncywgZW52KVxuXG5cCitFeGVjdXRlIHRoZSBwcm9ncmFtIHNwZWNpZmllZCBieSBhIGZpbGUgZGVzY3JpcHRvciB3aXRoIGFyZ3VtZW50cyBhbmRcblwKK2Vudmlyb25tZW50LCByZXBsYWNpbmcgdGhlIGN1cnJlbnQgcHJvY2Vzcy5cblwKK1xuXAorICAgIGZkOiBmaWxlIGRlc2NyaXB0b3Igb2YgZXhlY3V0YWJsZVxuXAorICAgIGFyZ3M6IHR1cGxlIG9yIGxpc3Qgb2YgYXJndW1lbnRzXG5cCisgICAgZW52OiBkaWN0aW9uYXJ5IG9mIHN0cmluZ3MgbWFwcGluZyB0byBzdHJpbmdzIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mZXhlY3ZlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgZmQ7CisgICAgUHlPYmplY3QgKmFyZ3YsICplbnY7CisgICAgY2hhciAqKmFyZ3ZsaXN0OworICAgIGNoYXIgKiplbnZsaXN0OworICAgIFB5X3NzaXplX3QgYXJnYywgZW52YzsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU9POmZleGVjdmUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmZmQsICZhcmd2LCAmZW52KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKCFQeUxpc3RfQ2hlY2soYXJndikgJiYgIVB5VHVwbGVfQ2hlY2soYXJndikpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJmZXhlY3ZlKCkgYXJnIDIgbXVzdCBiZSBhIHR1cGxlIG9yIGxpc3QiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGFyZ2MgPSBQeVNlcXVlbmNlX1NpemUoYXJndik7CisgICAgaWYgKCFQeU1hcHBpbmdfQ2hlY2soZW52KSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgImZleGVjdmUoKSBhcmcgMyBtdXN0IGJlIGEgbWFwcGluZyBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgYXJndmxpc3QgPSBwYXJzZV9hcmdsaXN0KGFyZ3YsICZhcmdjKTsKKyAgICBpZiAoYXJndmxpc3QgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBlbnZsaXN0ID0gcGFyc2VfZW52bGlzdChlbnYsICZlbnZjKTsKKyAgICBpZiAoZW52bGlzdCA9PSBOVUxMKQorICAgICAgICBnb3RvIGZhaWw7CisKKyAgICBmZXhlY3ZlKGZkLCBhcmd2bGlzdCwgZW52bGlzdCk7CisKKyAgICAvKiBJZiB3ZSBnZXQgaGVyZSBpdCdzIGRlZmluaXRlbHkgYW4gZXJyb3IgKi8KKworICAgICh2b2lkKSBwb3NpeF9lcnJvcigpOworCisgICAgd2hpbGUgKC0tZW52YyA+PSAwKQorICAgICAgICBQeU1lbV9ERUwoZW52bGlzdFtlbnZjXSk7CisgICAgUHlNZW1fREVMKGVudmxpc3QpOworICBmYWlsOgorICAgIGZyZWVfc3RyaW5nX2FycmF5KGFyZ3ZsaXN0LCBhcmdjKTsKKyAgICByZXR1cm4gTlVMTDsKK30KKyNlbmRpZiAvKiBIQVZFX0ZFWEVDVkUgKi8KIAogI2lmZGVmIEhBVkVfU1BBV05WCiBQeURvY19TVFJWQVIocG9zaXhfc3Bhd252X19kb2NfXywKQEAgLTQxNTMsNiArNDcxMCw1NzQgQEAKIH0KICNlbmRpZgogCisjaWZkZWYgSEFWRV9TQ0hFRF9ICisKKyNpZmRlZiBIQVZFX1NDSEVEX0dFVF9QUklPUklUWV9NQVgKKworUHlEb2NfU1RSVkFSKHBvc2l4X3NjaGVkX2dldF9wcmlvcml0eV9tYXhfX2RvY19fLAorInNjaGVkX2dldF9wcmlvcml0eV9tYXgocG9saWN5KVxuXG5cCitHZXQgdGhlIG1heGltdW0gc2NoZWR1bGluZyBwcmlvcml0eSBmb3IgKnBvbGljeSouIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zY2hlZF9nZXRfcHJpb3JpdHlfbWF4KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgcG9saWN5LCBtYXg7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6c2NoZWRfZ2V0X3ByaW9yaXR5X21heCIsICZwb2xpY3kpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBtYXggPSBzY2hlZF9nZXRfcHJpb3JpdHlfbWF4KHBvbGljeSk7CisgICAgaWYgKG1heCA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcobWF4KTsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X3NjaGVkX2dldF9wcmlvcml0eV9taW5fX2RvY19fLAorInNjaGVkX2dldF9wcmlvcml0eV9taW4ocG9saWN5KVxuXG5cCitHZXQgdGhlIG1pbmltdW0gc2NoZWR1bGluZyBwcmlvcml0eSBmb3IgKnBvbGljeSouIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zY2hlZF9nZXRfcHJpb3JpdHlfbWluKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgcG9saWN5LCBtaW47CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImk6c2NoZWRfZ2V0X3ByaW9yaXR5X21pbiIsICZwb2xpY3kpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBtaW4gPSBzY2hlZF9nZXRfcHJpb3JpdHlfbWluKHBvbGljeSk7CisgICAgaWYgKG1pbiA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcobWluKTsKK30KKworI2VuZGlmIC8qIEhBVkVfU0NIRURfR0VUX1BSSU9SSVRZX01BWCAqLworCisjaWZkZWYgSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIKKworUHlEb2NfU1RSVkFSKHBvc2l4X3NjaGVkX2dldHNjaGVkdWxlcl9fZG9jX18sCisic2NoZWRfZ2V0c2NoZWR1bGVyKHBpZClcblxuXAorR2V0IHRoZSBzY2hlZHVsaW5nIHBvbGljeSBmb3IgdGhlIHByb2Nlc3Mgd2l0aCBhIFBJRCBvZiAqcGlkKi5cblwKK1Bhc3NpbmcgYSBQSUQgb2YgMCByZXR1cm5zIHRoZSBzY2hlZHVsaW5nIHBvbGljeSBmb3IgdGhlIGNhbGxpbmcgcHJvY2Vzcy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3NjaGVkX2dldHNjaGVkdWxlcihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgcGlkX3QgcGlkOworICAgIGludCBwb2xpY3k7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgX1B5X1BBUlNFX1BJRCAiOnNjaGVkX2dldHNjaGVkdWxlciIsICZwaWQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBwb2xpY3kgPSBzY2hlZF9nZXRzY2hlZHVsZXIocGlkKTsKKyAgICBpZiAocG9saWN5IDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhwb2xpY3kpOworfQorCisjZW5kaWYKKworI2lmIGRlZmluZWQoSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIpIHx8IGRlZmluZWQoSEFWRV9TQ0hFRF9TRVRQQVJBTSkKKworc3RhdGljIFB5T2JqZWN0ICoKK3NjaGVkX3BhcmFtX25ldyhQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQoreworICAgIFB5T2JqZWN0ICpyZXMsICpwcmlvcml0eTsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InNjaGVkX3ByaW9yaXR5IiwgTlVMTH07CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2FyZ3MsICJPOnNjaGVkX3BhcmFtIiwga3dsaXN0LCAmcHJpb3JpdHkpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXMgPSBQeVN0cnVjdFNlcXVlbmNlX05ldyh0eXBlKTsKKyAgICBpZiAoIXJlcykKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfSU5DUkVGKHByaW9yaXR5KTsKKyAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHJlcywgMCwgcHJpb3JpdHkpOworICAgIHJldHVybiByZXM7Cit9CisKK1B5RG9jX1NUUlZBUihzY2hlZF9wYXJhbV9fZG9jX18sCisic2NoZWRfcGFyYW0oc2NoZWRfcHJpb3JpdHkpOiBBIHNjaGVkdWxpbmcgcGFyYW1ldGVyLlxuXG5cCitDdXJyZW50IGhhcyBvbmx5IG9uZSBmaWVsZDogc2NoZWRfcHJpb3JpdHkiKTsKKworc3RhdGljIFB5U3RydWN0U2VxdWVuY2VfRmllbGQgc2NoZWRfcGFyYW1fZmllbGRzW10gPSB7CisgICAgeyJzY2hlZF9wcmlvcml0eSIsICJ0aGUgc2NoZWR1bGluZyBwcmlvcml0eSJ9LAorICAgIHswfQorfTsKKworc3RhdGljIFB5U3RydWN0U2VxdWVuY2VfRGVzYyBzY2hlZF9wYXJhbV9kZXNjID0geworICAgICJzY2hlZF9wYXJhbSIsIC8qIG5hbWUgKi8KKyAgICBzY2hlZF9wYXJhbV9fZG9jX18sIC8qIGRvYyAqLworICAgIHNjaGVkX3BhcmFtX2ZpZWxkcywKKyAgICAxCit9OworCitzdGF0aWMgaW50Citjb252ZXJ0X3NjaGVkX3BhcmFtKFB5T2JqZWN0ICpwYXJhbSwgc3RydWN0IHNjaGVkX3BhcmFtICpyZXMpCit7CisgICAgbG9uZyBwcmlvcml0eTsKKworICAgIGlmIChQeV9UWVBFKHBhcmFtKSAhPSAmU2NoZWRQYXJhbVR5cGUpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgIm11c3QgaGF2ZSBhIHNjaGVkX3BhcmFtIG9iamVjdCIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgcHJpb3JpdHkgPSBQeUxvbmdfQXNMb25nKFB5U3RydWN0U2VxdWVuY2VfR0VUX0lURU0ocGFyYW0sIDApKTsKKyAgICBpZiAocHJpb3JpdHkgPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKHByaW9yaXR5ID4gSU5UX01BWCB8fCBwcmlvcml0eSA8IElOVF9NSU4pIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsICJzY2hlZF9wcmlvcml0eSBvdXQgb2YgcmFuZ2UiKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIHJlcy0+c2NoZWRfcHJpb3JpdHkgPSBQeV9TQUZFX0RPV05DQVNUKHByaW9yaXR5LCBsb25nLCBpbnQpOworICAgIHJldHVybiAxOworfQorCisjZW5kaWYKKworI2lmZGVmIEhBVkVfU0NIRURfU0VUU0NIRURVTEVSCisKK1B5RG9jX1NUUlZBUihwb3NpeF9zY2hlZF9zZXRzY2hlZHVsZXJfX2RvY19fLAorInNjaGVkX3NldHNjaGVkdWxlcihwaWQsIHBvbGljeSwgcGFyYW0pXG5cblwKK1NldCB0aGUgc2NoZWR1bGluZyBwb2xpY3ksICpwb2xpY3kqLCBmb3IgKnBpZCouXG5cCitJZiAqcGlkKiBpcyAwLCB0aGUgY2FsbGluZyBwcm9jZXNzIGlzIGNoYW5nZWQuXG5cCisqcGFyYW0qIGlzIGFuIGluc3RhbmNlIG9mIHNjaGVkX3BhcmFtLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfc2NoZWRfc2V0c2NoZWR1bGVyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBwaWRfdCBwaWQ7CisgICAgaW50IHBvbGljeTsKKyAgICBzdHJ1Y3Qgc2NoZWRfcGFyYW0gcGFyYW07CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgX1B5X1BBUlNFX1BJRCAiaU8mOnNjaGVkX3NldHNjaGVkdWxlciIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICZwaWQsICZwb2xpY3ksICZjb252ZXJ0X3NjaGVkX3BhcmFtLCAmcGFyYW0pKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIC8qCisgICAgKiogc2NoZWRfc2V0c2NoZWR1bGVyKCkgcmV0dXJucyAwIGluIExpbnV4LCBidXQgdGhlIHByZXZpb3VzCisgICAgKiogc2NoZWR1bGluZyBwb2xpY3kgdW5kZXIgU29sYXJpcy9JbGx1bW9zLCBhbmQgb3RoZXJzLgorICAgICoqIE9uIGVycm9yLCAtMSBpcyByZXR1cm5lZCBpbiBhbGwgT3BlcmF0aW5nIFN5c3RlbXMuCisgICAgKi8KKyAgICBpZiAoc2NoZWRfc2V0c2NoZWR1bGVyKHBpZCwgcG9saWN5LCAmcGFyYW0pID09IC0xKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworI2VuZGlmCisKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVFBBUkFNCisKK1B5RG9jX1NUUlZBUihwb3NpeF9zY2hlZF9nZXRwYXJhbV9fZG9jX18sCisic2NoZWRfZ2V0cGFyYW0ocGlkKSAtPiBzY2hlZF9wYXJhbVxuXG5cCitSZXR1cm5zIHNjaGVkdWxpbmcgcGFyYW1ldGVycyBmb3IgdGhlIHByb2Nlc3Mgd2l0aCAqcGlkKiBhcyBhbiBpbnN0YW5jZSBvZiB0aGVcblwKK3NjaGVkX3BhcmFtIGNsYXNzLiBBIFBJRCBvZiAwIG1lYW5zIHRoZSBjYWxsaW5nIHByb2Nlc3MuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zY2hlZF9nZXRwYXJhbShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgcGlkX3QgcGlkOworICAgIHN0cnVjdCBzY2hlZF9wYXJhbSBwYXJhbTsKKyAgICBQeU9iamVjdCAqcmVzLCAqcHJpb3JpdHk7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgX1B5X1BBUlNFX1BJRCAiOnNjaGVkX2dldHBhcmFtIiwgJnBpZCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzY2hlZF9nZXRwYXJhbShwaWQsICZwYXJhbSkpCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIHJlcyA9IFB5U3RydWN0U2VxdWVuY2VfTmV3KCZTY2hlZFBhcmFtVHlwZSk7CisgICAgaWYgKCFyZXMpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHByaW9yaXR5ID0gUHlMb25nX0Zyb21Mb25nKHBhcmFtLnNjaGVkX3ByaW9yaXR5KTsKKyAgICBpZiAoIXByaW9yaXR5KSB7CisgICAgICAgIFB5X0RFQ1JFRihyZXMpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXMsIDAsIHByaW9yaXR5KTsKKyAgICByZXR1cm4gcmVzOworfQorCitQeURvY19TVFJWQVIocG9zaXhfc2NoZWRfc2V0cGFyYW1fX2RvY19fLAorInNjaGVkX3NldHBhcmFtKHBpZCwgcGFyYW0pXG5cblwKK1NldCBzY2hlZHVsaW5nIHBhcmFtZXRlcnMgZm9yIGEgcHJvY2VzcyB3aXRoIFBJRCAqcGlkKi5cblwKK0EgUElEIG9mIDAgbWVhbnMgdGhlIGNhbGxpbmcgcHJvY2Vzcy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3NjaGVkX3NldHBhcmFtKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBwaWRfdCBwaWQ7CisgICAgc3RydWN0IHNjaGVkX3BhcmFtIHBhcmFtOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIF9QeV9QQVJTRV9QSUQgIk8mOnNjaGVkX3NldHBhcmFtIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJnBpZCwgJmNvbnZlcnRfc2NoZWRfcGFyYW0sICZwYXJhbSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzY2hlZF9zZXRwYXJhbShwaWQsICZwYXJhbSkpCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorCisjZW5kaWYKKworI2lmZGVmIEhBVkVfU0NIRURfUlJfR0VUX0lOVEVSVkFMCisKK1B5RG9jX1NUUlZBUihwb3NpeF9zY2hlZF9ycl9nZXRfaW50ZXJ2YWxfX2RvY19fLAorInNjaGVkX3JyX2dldF9pbnRlcnZhbChwaWQpIC0+IGZsb2F0XG5cblwKK1JldHVybiB0aGUgcm91bmQtcm9iaW4gcXVhbnR1bSBmb3IgdGhlIHByb2Nlc3Mgd2l0aCBQSUQgKnBpZCogaW4gc2Vjb25kcy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3NjaGVkX3JyX2dldF9pbnRlcnZhbChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgcGlkX3QgcGlkOworICAgIHN0cnVjdCB0aW1lc3BlYyBpbnRlcnZhbDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBfUHlfUEFSU0VfUElEICI6c2NoZWRfcnJfZ2V0X2ludGVydmFsIiwgJnBpZCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzY2hlZF9ycl9nZXRfaW50ZXJ2YWwocGlkLCAmaW50ZXJ2YWwpKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICByZXR1cm4gUHlGbG9hdF9Gcm9tRG91YmxlKChkb3VibGUpaW50ZXJ2YWwudHZfc2VjICsgMWUtOSppbnRlcnZhbC50dl9uc2VjKTsKK30KKworI2VuZGlmCisKK1B5RG9jX1NUUlZBUihwb3NpeF9zY2hlZF95aWVsZF9fZG9jX18sCisic2NoZWRfeWllbGQoKVxuXG5cCitWb2x1bnRhcmlseSByZWxpbnF1aXNoIHRoZSBDUFUuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zY2hlZF95aWVsZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm5vYXJncykKK3sKKyAgICBpZiAoc2NoZWRfeWllbGQoKSkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVEFGRklOSVRZCisKK3R5cGVkZWYgc3RydWN0IHsKKyAgICBQeU9iamVjdF9IRUFEOworICAgIFB5X3NzaXplX3Qgc2l6ZTsKKyAgICBpbnQgbmNwdXM7CisgICAgY3B1X3NldF90ICpzZXQ7Cit9IFB5X2NwdV9zZXQ7CisKK3N0YXRpYyBQeVR5cGVPYmplY3QgY3B1X3NldF90eXBlOworCitzdGF0aWMgdm9pZAorY3B1X3NldF9kZWFsbG9jKFB5X2NwdV9zZXQgKnNldCkKK3sKKyAgICBhc3NlcnQoc2V0LT5zZXQpOworICAgIENQVV9GUkVFKHNldC0+c2V0KTsKKyAgICBQeV9UWVBFKHNldCktPnRwX2ZyZWUoc2V0KTsKK30KKworc3RhdGljIFB5X2NwdV9zZXQgKgorbWFrZV9uZXdfY3B1X3NldChQeVR5cGVPYmplY3QgKnR5cGUsIFB5X3NzaXplX3Qgc2l6ZSkKK3sKKyAgICBQeV9jcHVfc2V0ICpzZXQ7CisKKyAgICBpZiAoc2l6ZSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJuZWdhdGl2ZSBzaXplIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBzZXQgPSAoUHlfY3B1X3NldCAqKXR5cGUtPnRwX2FsbG9jKHR5cGUsIDApOworICAgIGlmICghc2V0KQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBzZXQtPm5jcHVzID0gc2l6ZTsKKyAgICBzZXQtPnNpemUgPSBDUFVfQUxMT0NfU0laRShzaXplKTsKKyAgICBzZXQtPnNldCA9IENQVV9BTExPQyhzaXplKTsKKyAgICBpZiAoIXNldC0+c2V0KSB7CisgICAgICAgIHR5cGUtPnRwX2ZyZWUoc2V0KTsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIENQVV9aRVJPX1Moc2V0LT5zaXplLCBzZXQtPnNldCk7CisgICAgcmV0dXJuIHNldDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2NwdV9zZXRfbmV3KFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCit7CisgICAgaW50IHNpemU7CisKKyAgICBpZiAoIV9QeUFyZ19Ob0tleXdvcmRzKCJjcHVfc2V0KCkiLCBrd2FyZ3MpIHx8CisgICAgICAgICFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpOmNwdV9zZXQiLCAmc2l6ZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJldHVybiAoUHlPYmplY3QgKiltYWtlX25ld19jcHVfc2V0KHR5cGUsIHNpemUpOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorY3B1X3NldF9yZXByKFB5X2NwdV9zZXQgKnNldCkKK3sKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjxjcHVfc2V0IHdpdGggJWxpIGVudHJpZXM+Iiwgc2V0LT5uY3B1cyk7Cit9CisKK3N0YXRpYyBQeV9zc2l6ZV90CitjcHVfc2V0X2xlbihQeV9jcHVfc2V0ICpzZXQpCit7CisgICAgcmV0dXJuIHNldC0+bmNwdXM7Cit9CisKK3N0YXRpYyBpbnQKK19nZXRfY3B1KFB5X2NwdV9zZXQgKnNldCwgY29uc3QgY2hhciAqcmVxdWVzdGVyLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgY3B1OworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCByZXF1ZXN0ZXIsICZjcHUpKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaWYgKGNwdSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJjcHUgPCAwIG5vdCB2YWxpZCIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmIChjcHUgPj0gc2V0LT5uY3B1cykgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgImNwdSB0b28gbGFyZ2UgZm9yIHNldCIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIHJldHVybiBjcHU7Cit9CisKK1B5RG9jX1NUUlZBUihjcHVfc2V0X3NldF9kb2MsCisiY3B1X3NldC5zZXQoaSlcblxuXAorQWRkIENQVSAqaSogdG8gdGhlIHNldC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2NwdV9zZXRfc2V0KFB5X2NwdV9zZXQgKnNldCwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IGNwdSA9IF9nZXRfY3B1KHNldCwgIml8c2V0IiwgYXJncyk7CisgICAgaWYgKGNwdSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgQ1BVX1NFVF9TKGNwdSwgc2V0LT5zaXplLCBzZXQtPnNldCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihjcHVfc2V0X2NvdW50X2RvYywKKyJjcHVfc2V0LmNvdW50KCkgLT4gaW50XG5cblwKK1JldHVybiB0aGUgbnVtYmVyIG9mIENQVXMgYWN0aXZlIGluIHRoZSBzZXQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitjcHVfc2V0X2NvdW50KFB5X2NwdV9zZXQgKnNldCwgUHlPYmplY3QgKm5vYXJncykKK3sKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKENQVV9DT1VOVF9TKHNldC0+c2l6ZSwgc2V0LT5zZXQpKTsKK30KKworUHlEb2NfU1RSVkFSKGNwdV9zZXRfY2xlYXJfZG9jLAorImNwdV9zZXQuY2xlYXIoaSlcblxuXAorUmVtb3ZlIENQVSAqaSogZnJvbSB0aGUgc2V0LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorY3B1X3NldF9jbGVhcihQeV9jcHVfc2V0ICpzZXQsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCBjcHUgPSBfZ2V0X2NwdShzZXQsICJpfGNsZWFyIiwgYXJncyk7CisgICAgaWYgKGNwdSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgQ1BVX0NMUl9TKGNwdSwgc2V0LT5zaXplLCBzZXQtPnNldCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihjcHVfc2V0X2lzc2V0X2RvYywKKyJjcHVfc2V0Lmlzc2V0KGkpIC0+IGJvb2xcblxuXAorVGVzdCBpZiBDUFUgKmkqIGlzIGluIHRoZSBzZXQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitjcHVfc2V0X2lzc2V0KFB5X2NwdV9zZXQgKnNldCwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IGNwdSA9IF9nZXRfY3B1KHNldCwgIml8aXNzZXQiLCBhcmdzKTsKKyAgICBpZiAoY3B1ID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoQ1BVX0lTU0VUX1MoY3B1LCBzZXQtPnNpemUsIHNldC0+c2V0KSkKKyAgICAgICAgUHlfUkVUVVJOX1RSVUU7CisgICAgUHlfUkVUVVJOX0ZBTFNFOworfQorCitQeURvY19TVFJWQVIoY3B1X3NldF96ZXJvX2RvYywKKyJjcHVfc2V0Lnplcm8oKVxuXG5cCitDbGVhciB0aGUgY3B1X3NldC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2NwdV9zZXRfemVybyhQeV9jcHVfc2V0ICpzZXQsIFB5T2JqZWN0ICpub2FyZ3MpCit7CisgICAgQ1BVX1pFUk9fUyhzZXQtPnNpemUsIHNldC0+c2V0KTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2NwdV9zZXRfcmljaGNvbXBhcmUoUHlfY3B1X3NldCAqc2V0LCBQeV9jcHVfc2V0ICpvdGhlciwgaW50IG9wKQoreworICAgIGludCBlcTsKKworICAgIGlmICgob3AgIT0gUHlfRVEgJiYgb3AgIT0gUHlfTkUpIHx8IFB5X1RZUEUob3RoZXIpICE9ICZjcHVfc2V0X3R5cGUpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKKworICAgIGVxID0gc2V0LT5uY3B1cyA9PSBvdGhlci0+bmNwdXMgJiYgQ1BVX0VRVUFMX1Moc2V0LT5zaXplLCBzZXQtPnNldCwgb3RoZXItPnNldCk7CisgICAgaWYgKChvcCA9PSBQeV9FUSkgPyBlcSA6ICFlcSkKKyAgICAgICAgUHlfUkVUVVJOX1RSVUU7CisgICAgZWxzZQorICAgICAgICBQeV9SRVRVUk5fRkFMU0U7Cit9CisKKyNkZWZpbmUgQ1BVX1NFVF9CSU5PUChuYW1lLCBvcCkgXAorICAgIHN0YXRpYyBQeU9iamVjdCAqIFwKKyAgICBkb19jcHVfc2V0XyMjbmFtZShQeV9jcHVfc2V0ICpsZWZ0LCBQeV9jcHVfc2V0ICpyaWdodCwgUHlfY3B1X3NldCAqcmVzKSB7IFwKKyAgICAgICAgaWYgKHJlcykgeyBcCisgICAgICAgICAgICBQeV9JTkNSRUYocmVzKTsgXAorICAgICAgICB9IFwKKyAgICAgICAgZWxzZSB7IFwKKyAgICAgICAgICAgIHJlcyA9IG1ha2VfbmV3X2NwdV9zZXQoJmNwdV9zZXRfdHlwZSwgbGVmdC0+bmNwdXMpOyBcCisgICAgICAgICAgICBpZiAoIXJlcykgXAorICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOyBcCisgICAgICAgIH0gXAorICAgICAgICBpZiAoUHlfVFlQRShyaWdodCkgIT0gJmNwdV9zZXRfdHlwZSB8fCBsZWZ0LT5uY3B1cyAhPSByaWdodC0+bmNwdXMpIHsgXAorICAgICAgICAgICAgUHlfREVDUkVGKHJlcyk7IFwKKyAgICAgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsgXAorICAgICAgICB9IFwKKyAgICAgICAgYXNzZXJ0KGxlZnQtPnNpemUgPT0gcmlnaHQtPnNpemUgJiYgcmlnaHQtPnNpemUgPT0gcmVzLT5zaXplKTsgXAorICAgICAgICBvcChyZXMtPnNpemUsIHJlcy0+c2V0LCBsZWZ0LT5zZXQsIHJpZ2h0LT5zZXQpOyBcCisgICAgICAgIHJldHVybiAoUHlPYmplY3QgKilyZXM7IFwKKyAgICB9IFwKKyAgICBzdGF0aWMgUHlPYmplY3QgKiBcCisgICAgY3B1X3NldF8jI25hbWUoUHlfY3B1X3NldCAqbGVmdCwgUHlfY3B1X3NldCAqcmlnaHQpIHsgXAorICAgICAgICByZXR1cm4gZG9fY3B1X3NldF8jI25hbWUobGVmdCwgcmlnaHQsIE5VTEwpOyBcCisgICAgfSBcCisgICAgc3RhdGljIFB5T2JqZWN0ICogXAorICAgIGNwdV9zZXRfaSMjbmFtZShQeV9jcHVfc2V0ICpsZWZ0LCBQeV9jcHVfc2V0ICpyaWdodCkgeyBcCisgICAgICAgIHJldHVybiBkb19jcHVfc2V0XyMjbmFtZShsZWZ0LCByaWdodCwgbGVmdCk7IFwKKyAgICB9IFwKKworQ1BVX1NFVF9CSU5PUChhbmQsIENQVV9BTkRfUykKK0NQVV9TRVRfQklOT1Aob3IsIENQVV9PUl9TKQorQ1BVX1NFVF9CSU5PUCh4b3IsIENQVV9YT1JfUykKKyN1bmRlZiBDUFVfU0VUX0JJTk9QCisKK1B5RG9jX1NUUlZBUihjcHVfc2V0X2RvYywKKyJjcHVfc2V0KHNpemUpXG5cblwKK0NyZWF0ZSBhbiBlbXB0eSBtYXNrIG9mIENQVXMuIik7CisKK3N0YXRpYyBQeU51bWJlck1ldGhvZHMgY3B1X3NldF9hc19udW1iZXIgPSB7CisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9hZGQqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfc3VidHJhY3QqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfbXVsdGlwbHkqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfcmVtYWluZGVyKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2Rpdm1vZCovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9wb3dlciovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9uZWdhdGl2ZSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9wb3NpdGl2ZSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9hYnNvbHV0ZSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9ib29sKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2ludmVydCovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9sc2hpZnQqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfcnNoaWZ0Ki8KKyAgICAoYmluYXJ5ZnVuYyljcHVfc2V0X2FuZCwgICAgICAgICAgICAvKm5iX2FuZCovCisgICAgKGJpbmFyeWZ1bmMpY3B1X3NldF94b3IsICAgICAgICAgICAgLypuYl94b3IqLworICAgIChiaW5hcnlmdW5jKWNwdV9zZXRfb3IsICAgICAgICAgICAgIC8qbmJfb3IqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfaW50Ki8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX3Jlc2VydmVkKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2Zsb2F0Ki8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2lucGxhY2VfYWRkKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2lucGxhY2Vfc3VidHJhY3QqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qbmJfaW5wbGFjZV9tdWx0aXBseSovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9pbnBsYWNlX3JlbWFpbmRlciovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLypuYl9pbnBsYWNlX3Bvd2VyKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2lucGxhY2VfbHNoaWZ0Ki8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKm5iX2lucGxhY2VfcnNoaWZ0Ki8KKyAgICAoYmluYXJ5ZnVuYyljcHVfc2V0X2lhbmQsICAgICAgICAgICAvKm5iX2lucGxhY2VfYW5kKi8KKyAgICAoYmluYXJ5ZnVuYyljcHVfc2V0X2l4b3IsICAgICAgICAgICAvKm5iX2lucGxhY2VfeG9yKi8KKyAgICAoYmluYXJ5ZnVuYyljcHVfc2V0X2lvciwgICAgICAgICAgICAvKm5iX2lucGxhY2Vfb3IqLworfTsKKworc3RhdGljIFB5U2VxdWVuY2VNZXRob2RzIGNwdV9zZXRfYXNfc2VxdWVuY2UgPSB7CisgICAgKGxlbmZ1bmMpY3B1X3NldF9sZW4sICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNxX2xlbmd0aCAqLworfTsKKworc3RhdGljIFB5TWV0aG9kRGVmIGNwdV9zZXRfbWV0aG9kc1tdID0geworICAgIHsiY2xlYXIiLCAoUHlDRnVuY3Rpb24pY3B1X3NldF9jbGVhciwgTUVUSF9WQVJBUkdTLCBjcHVfc2V0X2NsZWFyX2RvY30sCisgICAgeyJjb3VudCIsIChQeUNGdW5jdGlvbiljcHVfc2V0X2NvdW50LCBNRVRIX05PQVJHUywgY3B1X3NldF9jb3VudF9kb2N9LAorICAgIHsiaXNzZXQiLCAoUHlDRnVuY3Rpb24pY3B1X3NldF9pc3NldCwgTUVUSF9WQVJBUkdTLCBjcHVfc2V0X2lzc2V0X2RvY30sCisgICAgeyJzZXQiLCAoUHlDRnVuY3Rpb24pY3B1X3NldF9zZXQsIE1FVEhfVkFSQVJHUywgY3B1X3NldF9zZXRfZG9jfSwKKyAgICB7Inplcm8iLCAoUHlDRnVuY3Rpb24pY3B1X3NldF96ZXJvLCBNRVRIX05PQVJHUywgY3B1X3NldF96ZXJvX2RvY30sCisgICAge05VTEwsIE5VTEx9ICAgLyogc2VudGluZWwgKi8KK307CisKK3N0YXRpYyBQeVR5cGVPYmplY3QgY3B1X3NldF90eXBlID0geworICAgIFB5VmFyT2JqZWN0X0hFQURfSU5JVCgmUHlUeXBlX1R5cGUsIDApCisgICAgInBvc2l4LmNwdV9zZXQiLCAgICAgICAgICAgICAgICAgICAgLyogdHBfbmFtZSAqLworICAgIHNpemVvZihQeV9jcHVfc2V0KSwgICAgICAgICAgICAgICAgIC8qIHRwX2Jhc2ljc2l6ZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZW1zaXplICovCisgICAgLyogbWV0aG9kcyAqLworICAgIChkZXN0cnVjdG9yKWNwdV9zZXRfZGVhbGxvYywgICAgICAgIC8qIHRwX2RlYWxsb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9wcmludCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldGF0dHIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zZXRhdHRyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmVzZXJ2ZWQgKi8KKyAgICAocmVwcmZ1bmMpY3B1X3NldF9yZXByLCAgICAgICAgICAgICAvKiB0cF9yZXByICovCisgICAgJmNwdV9zZXRfYXNfbnVtYmVyLCAgICAgICAgICAgICAgICAgLyogdHBfYXNfbnVtYmVyICovCisgICAgJmNwdV9zZXRfYXNfc2VxdWVuY2UsICAgICAgICAgICAgICAgLyogdHBfYXNfc2VxdWVuY2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19tYXBwaW5nICovCisgICAgUHlPYmplY3RfSGFzaE5vdEltcGxlbWVudGVkLCAgICAgICAgLyogdHBfaGFzaCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NhbGwgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9zdHIgKi8KKyAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwgICAgICAgICAgICAvKiB0cF9nZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3NldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfYnVmZmVyICovCisgICAgUHlfVFBGTEFHU19ERUZBVUxULCAgICAgICAgICAgICAgICAgLyogdHBfZmxhZ3MgKi8KKyAgICBjcHVfc2V0X2RvYywgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF90cmF2ZXJzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2NsZWFyICovCisgICAgKHJpY2hjbXBmdW5jKWNwdV9zZXRfcmljaGNvbXBhcmUsICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLworICAgIGNwdV9zZXRfbWV0aG9kcywgICAgICAgICAgICAgICAgICAgIC8qIHRwX21ldGhvZHMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYmFzZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3QgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9nZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9zZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaW5pdCAqLworICAgIFB5VHlwZV9HZW5lcmljQWxsb2MsICAgICAgICAgICAgICAgIC8qIHRwX2FsbG9jICovCisgICAgY3B1X3NldF9uZXcsICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbmV3ICovCisgICAgUHlPYmplY3RfRGVsLCAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZnJlZSAqLworfTsKKworUHlEb2NfU1RSVkFSKHBvc2l4X3NjaGVkX3NldGFmZmluaXR5X19kb2NfXywKKyJzY2hlZF9zZXRhZmZpbml0eShwaWQsIGNwdV9zZXQpXG5cblwKK1NldCB0aGUgYWZmaW5pdHkgb2YgdGhlIHByb2Nlc3Mgd2l0aCBQSUQgKnBpZCogdG8gKmNwdV9zZXQqLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfc2NoZWRfc2V0YWZmaW5pdHkoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIHBpZF90IHBpZDsKKyAgICBQeV9jcHVfc2V0ICpjcHVfc2V0OworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIF9QeV9QQVJTRV9QSUQgIk8hOnNjaGVkX3NldGFmZmluaXR5IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJnBpZCwgJmNwdV9zZXRfdHlwZSwgJmNwdV9zZXQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoc2NoZWRfc2V0YWZmaW5pdHkocGlkLCBjcHVfc2V0LT5zaXplLCBjcHVfc2V0LT5zZXQpKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X3NjaGVkX2dldGFmZmluaXR5X19kb2NfXywKKyJzY2hlZF9nZXRhZmZpbml0eShwaWQsIG5jcHVzKSAtPiBjcHVfc2V0XG5cblwKK1JldHVybiB0aGUgYWZmaW5pdHkgb2YgdGhlIHByb2Nlc3Mgd2l0aCBQSUQgKnBpZCouXG5cCitUaGUgcmV0dXJuZWQgY3B1X3NldCB3aWxsIGJlIG9mIHNpemUgKm5jcHVzKi4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3NjaGVkX2dldGFmZmluaXR5KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBwaWRfdCBwaWQ7CisgICAgaW50IG5jcHVzOworICAgIFB5X2NwdV9zZXQgKnJlczsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCBfUHlfUEFSU0VfUElEICJpOnNjaGVkX2dldGFmZmluaXR5IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJnBpZCwgJm5jcHVzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzID0gbWFrZV9uZXdfY3B1X3NldCgmY3B1X3NldF90eXBlLCBuY3B1cyk7CisgICAgaWYgKCFyZXMpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzY2hlZF9nZXRhZmZpbml0eShwaWQsIHJlcy0+c2l6ZSwgcmVzLT5zZXQpKSB7CisgICAgICAgIFB5X0RFQ1JFRihyZXMpOworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgcmV0dXJuIChQeU9iamVjdCAqKXJlczsKK30KKworI2VuZGlmIC8qIEhBVkVfU0NIRURfU0VUQUZGSU5JVFkgKi8KKworI2VuZGlmIC8qIEhBVkVfU0NIRURfSCAqLworCiAvKiBBSVggdXNlcyAvZGV2L3B0YyBidXQgaXMgb3RoZXJ3aXNlIHRoZSBzYW1lIGFzIC9kZXYvcHRteCAqLwogLyogSVJJWCBoYXMgYm90aCAvZGV2L3B0YyBhbmQgL2Rldi9wdG14LCB1c2UgcHRteCAqLwogI2lmIGRlZmluZWQoSEFWRV9ERVZfUFRDKSAmJiAhZGVmaW5lZChIQVZFX0RFVl9QVE1YKQpAQCAtNDI3OSw2ICs1NDA0LDcgQEAKIH0KICNlbmRpZgogCisKICNpZmRlZiBIQVZFX0dFVEVHSUQKIFB5RG9jX1NUUlZBUihwb3NpeF9nZXRlZ2lkX19kb2NfXywKICJnZXRlZ2lkKCkgLT4gZWdpZFxuXG5cCkBAIC00MzI4LDYgKzU0NTQsNzAgQEAKICAgICByZXR1cm4gUHlMb25nX0Zyb21QaWQoZ2V0cGlkKCkpOwogfQogCisjaWZkZWYgSEFWRV9HRVRHUk9VUExJU1QKK1B5RG9jX1NUUlZBUihwb3NpeF9nZXRncm91cGxpc3RfX2RvY19fLAorImdldGdyb3VwbGlzdCh1c2VyLCBncm91cCkgLT4gbGlzdCBvZiBncm91cHMgdG8gd2hpY2ggYSB1c2VyIGJlbG9uZ3NcblxuXAorUmV0dXJucyBhIGxpc3Qgb2YgZ3JvdXBzIHRvIHdoaWNoIGEgdXNlciBiZWxvbmdzLlxuXG5cCisgICAgdXNlcjogdXNlcm5hbWUgdG8gbG9va3VwXG5cCisgICAgZ3JvdXA6IGJhc2UgZ3JvdXAgaWQgb2YgdGhlIHVzZXIiKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2dldGdyb3VwbGlzdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisjaWZkZWYgTkdST1VQU19NQVgKKyNkZWZpbmUgTUFYX0dST1VQUyBOR1JPVVBTX01BWAorI2Vsc2UKKyAgICAvKiBkZWZpbmVkIHRvIGJlIDE2IG9uIFNvbGFyaXM3LCBzbyB0aGlzIHNob3VsZCBiZSBhIHNtYWxsIG51bWJlciAqLworI2RlZmluZSBNQVhfR1JPVVBTIDY0CisjZW5kaWYKKworICAgIGNvbnN0IGNoYXIgKnVzZXI7CisgICAgaW50IGksIG5ncm91cHM7CisgICAgUHlPYmplY3QgKmxpc3Q7CisjaWZkZWYgX19BUFBMRV9fCisgICAgaW50ICpncm91cHMsIGJhc2VnaWQ7CisjZWxzZQorICAgIGdpZF90ICpncm91cHMsIGJhc2VnaWQ7CisjZW5kaWYKKyAgICBuZ3JvdXBzID0gTUFYX0dST1VQUzsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAic2kiLCAmdXNlciwgJmJhc2VnaWQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworI2lmZGVmIF9fQVBQTEVfXworICAgIGdyb3VwcyA9IFB5TWVtX01hbGxvYyhuZ3JvdXBzICogc2l6ZW9mKGludCkpOworI2Vsc2UKKyAgICBncm91cHMgPSBQeU1lbV9NYWxsb2Mobmdyb3VwcyAqIHNpemVvZihnaWRfdCkpOworI2VuZGlmCisgICAgaWYgKGdyb3VwcyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKworICAgIGlmIChnZXRncm91cGxpc3QodXNlciwgYmFzZWdpZCwgZ3JvdXBzLCAmbmdyb3VwcykgPT0gLTEpIHsKKyAgICAgICAgUHlNZW1fRGVsKGdyb3Vwcyk7CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKworICAgIGxpc3QgPSBQeUxpc3RfTmV3KG5ncm91cHMpOworICAgIGlmIChsaXN0ID09IE5VTEwpIHsKKyAgICAgICAgUHlNZW1fRGVsKGdyb3Vwcyk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGZvciAoaSA9IDA7IGkgPCBuZ3JvdXBzOyBpKyspIHsKKyAgICAgICAgUHlPYmplY3QgKm8gPSBQeUxvbmdfRnJvbVVuc2lnbmVkTG9uZygodW5zaWduZWQgbG9uZylncm91cHNbaV0pOworICAgICAgICBpZiAobyA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYobGlzdCk7CisgICAgICAgICAgICBQeU1lbV9EZWwoZ3JvdXBzKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIFB5TGlzdF9TRVRfSVRFTShsaXN0LCBpLCBvKTsKKyAgICB9CisKKyAgICBQeU1lbV9EZWwoZ3JvdXBzKTsKKworICAgIHJldHVybiBsaXN0OworfQorI2VuZGlmCiAKICNpZmRlZiBIQVZFX0dFVEdST1VQUwogUHlEb2NfU1RSVkFSKHBvc2l4X2dldGdyb3Vwc19fZG9jX18sCkBAIC00NTY1LDcgKzU3NTUsNyBAQAogICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwogI2lmZGVmIE1TX1dJTkRPV1MKICAgICB3Y2hhcl90IHVzZXJfbmFtZVtVTkxFTiArIDFdOwotICAgIERXT1JEIG51bV9jaGFycyA9IHNpemVvZih1c2VyX25hbWUpL3NpemVvZih1c2VyX25hbWVbMF0pOworICAgIERXT1JEIG51bV9jaGFycyA9IFB5X0FSUkFZX0xFTkdUSCh1c2VyX25hbWUpOwogCiAgICAgaWYgKEdldFVzZXJOYW1lVyh1c2VyX25hbWUsICZudW1fY2hhcnMpKSB7CiAgICAgICAgIC8qIG51bV9jaGFycyBpcyB0aGUgbnVtYmVyIG9mIHVuaWNvZGUgY2hhcnMgcGx1cyBudWxsIHRlcm1pbmF0b3IgKi8KQEAgLTQ5NjUsNiArNjE1NSw3IEBACiB7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKICAgICBzdGF0aWMgUHlPYmplY3QgKnN0cnVjdF9ydXNhZ2U7CisgICAgX1B5X0lERU5USUZJRVIoc3RydWN0X3J1c2FnZSk7CiAKICAgICBpZiAocGlkID09IC0xKQogICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKQEAgLTQ5NzMsNyArNjE2NCw3IEBACiAgICAgICAgIFB5T2JqZWN0ICptID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaygicmVzb3VyY2UiKTsKICAgICAgICAgaWYgKG0gPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBzdHJ1Y3RfcnVzYWdlID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhtLCAic3RydWN0X3J1c2FnZSIpOworICAgICAgICBzdHJ1Y3RfcnVzYWdlID0gX1B5T2JqZWN0X0dldEF0dHJJZChtLCAmUHlJZF9zdHJ1Y3RfcnVzYWdlKTsKICAgICAgICAgUHlfREVDUkVGKG0pOwogICAgICAgICBpZiAoc3RydWN0X3J1c2FnZSA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC01MDY5LDYgKzYyNjAsNTUgQEAKIH0KICNlbmRpZiAvKiBIQVZFX1dBSVQ0ICovCiAKKyNpZiBkZWZpbmVkKEhBVkVfV0FJVElEKSAmJiAhZGVmaW5lZChfX0FQUExFX18pCitQeURvY19TVFJWQVIocG9zaXhfd2FpdGlkX19kb2NfXywKKyJ3YWl0aWQoaWR0eXBlLCBpZCwgb3B0aW9ucykgLT4gd2FpdGlkX3Jlc3VsdFxuXG5cCitXYWl0IGZvciB0aGUgY29tcGxldGlvbiBvZiBvbmUgb3IgbW9yZSBjaGlsZCBwcm9jZXNzZXMuXG5cblwKK2lkdHlwZSBjYW4gYmUgUF9QSUQsIFBfUEdJRCBvciBQX0FMTC5cblwKK2lkIHNwZWNpZmllcyB0aGUgcGlkIHRvIHdhaXQgb24uXG5cCitvcHRpb25zIGlzIGNvbnN0cnVjdGVkIGZyb20gdGhlIE9SaW5nIG9mIG9uZSBvciBtb3JlIG9mIFdFWElURUQsIFdTVE9QUEVEXG5cCitvciBXQ09OVElOVUVEIGFuZCBhZGRpdGlvbmFsbHkgbWF5IGJlIE9SZWQgd2l0aCBXTk9IQU5HIG9yIFdOT1dBSVQuXG5cCitSZXR1cm5zIGVpdGhlciB3YWl0aWRfcmVzdWx0IG9yIE5vbmUgaWYgV05PSEFORyBpcyBzcGVjaWZpZWQgYW5kIHRoZXJlIGFyZVxuXAorbm8gY2hpbGRyZW4gaW4gYSB3YWl0YWJsZSBzdGF0ZS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3dhaXRpZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBpZHR5cGVfdCBpZHR5cGU7CisgICAgaWRfdCBpZDsKKyAgICBpbnQgb3B0aW9ucywgcmVzOworICAgIHNpZ2luZm9fdCBzaTsKKyAgICBzaS5zaV9waWQgPSAwOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaSIgX1B5X1BBUlNFX1BJRCAiaTp3YWl0aWQiLCAmaWR0eXBlLCAmaWQsICZvcHRpb25zKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IHdhaXRpZChpZHR5cGUsIGlkLCAmc2ksIG9wdGlvbnMpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgaWYgKHJlcyA9PSAtMSkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisKKyAgICBpZiAoc2kuc2lfcGlkID09IDApCisgICAgICAgIFB5X1JFVFVSTl9OT05FOworCisgICAgcmVzdWx0ID0gUHlTdHJ1Y3RTZXF1ZW5jZV9OZXcoJldhaXRpZFJlc3VsdFR5cGUpOworICAgIGlmICghcmVzdWx0KQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0ocmVzdWx0LCAwLCBQeUxvbmdfRnJvbVBpZChzaS5zaV9waWQpKTsKKyAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHJlc3VsdCwgMSwgUHlMb25nX0Zyb21QaWQoc2kuc2lfdWlkKSk7CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXN1bHQsIDIsIFB5TG9uZ19Gcm9tTG9uZygobG9uZykoc2kuc2lfc2lnbm8pKSk7CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXN1bHQsIDMsIFB5TG9uZ19Gcm9tTG9uZygobG9uZykoc2kuc2lfc3RhdHVzKSkpOworICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0ocmVzdWx0LCA0LCBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpKHNpLnNpX2NvZGUpKSk7CisgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpIHsKKyAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldHVybiByZXN1bHQ7Cit9CisjZW5kaWYKKwogI2lmZGVmIEhBVkVfV0FJVFBJRAogUHlEb2NfU1RSVkFSKHBvc2l4X3dhaXRwaWRfX2RvY19fLAogIndhaXRwaWQocGlkLCBvcHRpb25zKSAtPiAocGlkLCBzdGF0dXMpXG5cblwKQEAgLTUyMzIsNyArNjQ3Miw3IEBACiAgICAgd2NoYXJfdCAqcGF0aDsKICAgICBEV09SRCBuX2J5dGVzX3JldHVybmVkOwogICAgIERXT1JEIGlvX3Jlc3VsdDsKLSAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICpwbywgKnJlc3VsdDsKICAgICBIQU5ETEUgcmVwYXJzZV9wb2ludF9oYW5kbGU7CiAKICAgICBjaGFyIHRhcmdldF9idWZmZXJbTUFYSU1VTV9SRVBBUlNFX0RBVEFfQlVGRkVSX1NJWkVdOwpAQCAtNTI0MCw4ICs2NDgwLDExIEBACiAgICAgd2NoYXJfdCAqcHJpbnRfbmFtZTsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLAotICAgICAgICAgICAgICAgICAgInU6cmVhZGxpbmsiLAotICAgICAgICAgICAgICAgICAgJnBhdGgpKQorICAgICAgICAgICAgICAgICAgIlU6cmVhZGxpbmsiLAorICAgICAgICAgICAgICAgICAgJnBvKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocG8pOworICAgIGlmIChwYXRoID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgLyogRmlyc3QgZ2V0IGEgaGFuZGxlIHRvIHRoZSByZXBhcnNlIHBvaW50ICovCkBAIC01MjU3LDkgKzY1MDAsNyBAQAogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAKICAgICBpZiAocmVwYXJzZV9wb2ludF9oYW5kbGU9PUlOVkFMSURfSEFORExFX1ZBTFVFKQotICAgIHsKLSAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX3VuaWNvZGUoInJlYWRsaW5rIiwgcGF0aCk7Ci0gICAgfQorICAgICAgICByZXR1cm4gd2luMzJfZXJyb3Jfb2JqZWN0KCJyZWFkbGluayIsIHBvKTsKIAogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICAvKiBOZXcgY2FsbCBEZXZpY2VJb0NvbnRyb2wgdG8gcmVhZCB0aGUgcmVwYXJzZSBwb2ludCAqLwpAQCAtNTI3NSw5ICs2NTE2LDcgQEAKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogCiAgICAgaWYgKGlvX3Jlc3VsdD09MCkKLSAgICB7Ci0gICAgICAgIHJldHVybiB3aW4zMl9lcnJvcl91bmljb2RlKCJyZWFkbGluayIsIHBhdGgpOwotICAgIH0KKyAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX29iamVjdCgicmVhZGxpbmsiLCBwbyk7CiAKICAgICBpZiAocmRiLT5SZXBhcnNlVGFnICE9IElPX1JFUEFSU0VfVEFHX1NZTUxJTkspCiAgICAgewpAQCAtNTMwNyw3ICs2NTQ2LDcgQEAKICAgICAvKiBvbmx5IHJlY2hlY2sgKi8KICAgICBpZiAoaGFzX0NyZWF0ZVN5bWJvbGljTGlua1cpCiAgICAgICAgIHJldHVybiBoYXNfQ3JlYXRlU3ltYm9saWNMaW5rVzsKLSAgICBoS2VybmVsMzIgPSBHZXRNb2R1bGVIYW5kbGUoIktFUk5FTDMyIik7CisgICAgaEtlcm5lbDMyID0gR2V0TW9kdWxlSGFuZGxlVyhMIktFUk5FTDMyIik7CiAgICAgKihGQVJQUk9DKikmUHlfQ3JlYXRlU3ltYm9saWNMaW5rVyA9IEdldFByb2NBZGRyZXNzKGhLZXJuZWwzMiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNyZWF0ZVN5bWJvbGljTGlua1ciKTsKICAgICBpZiAoUHlfQ3JlYXRlU3ltYm9saWNMaW5rVykKQEAgLTUzMjcsNyArNjU2Niw5IEBACiB3aW5fc3ltbGluayhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MpCiB7CiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJzcmMiLCAiZGVzdCIsICJ0YXJnZXRfaXNfZGlyZWN0b3J5IiwgTlVMTH07Ci0gICAgUHlPYmplY3QgKnNyYywgKmRlc3Q7CisgICAgUHlPYmplY3QgKm9zcmMsICpvZGVzdDsKKyAgICBQeU9iamVjdCAqdXNyYyA9IE5VTEwsICp1ZGVzdCA9IE5VTEw7CisgICAgd2NoYXJfdCAqd3NyYywgKndkZXN0OwogICAgIGludCB0YXJnZXRfaXNfZGlyZWN0b3J5ID0gMDsKICAgICBEV09SRCByZXM7CiAKQEAgLTUzMzcsMzQgKzY1NzgsNDQgQEAKICAgICAgICAgcmV0dXJuIFB5RXJyX0Zvcm1hdChQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yLAogICAgICAgICAgICAgIkNyZWF0ZVN5bWJvbGljTGlua1cgbm90IGZvdW5kIik7CiAgICAgfQotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgIk9PfGk6c3ltbGluayIsCi0gICAgICAgIGt3bGlzdCwgJnNyYywgJmRlc3QsICZ0YXJnZXRfaXNfZGlyZWN0b3J5KSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcygKKyAgICAgICAgICAgIGFyZ3MsIGt3YXJncywgIk9PfGk6c3ltbGluayIsIGt3bGlzdCwKKyAgICAgICAgICAgICZvc3JjLCAmb2Rlc3QsICZ0YXJnZXRfaXNfZGlyZWN0b3J5KSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKKyAgICB1c3JjID0gd2luMzJfZGVjb2RlX2ZpbGVuYW1lKG9zcmMpOworICAgIGlmICghdXNyYykKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgdWRlc3QgPSB3aW4zMl9kZWNvZGVfZmlsZW5hbWUob2Rlc3QpOworICAgIGlmICghdWRlc3QpCisgICAgICAgIGdvdG8gZXJyb3I7CisKICAgICBpZiAod2luMzJfY2FuX3N5bWxpbmsgPT0gMCkKICAgICAgICAgcmV0dXJuIFB5RXJyX0Zvcm1hdChQeUV4Y19PU0Vycm9yLCAic3ltYm9saWMgbGluayBwcml2aWxlZ2Ugbm90IGhlbGQiKTsKIAotICAgIGlmICghY29udmVydF90b191bmljb2RlKCZzcmMpKSB7IHJldHVybiBOVUxMOyB9Ci0gICAgaWYgKCFjb252ZXJ0X3RvX3VuaWNvZGUoJmRlc3QpKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihzcmMpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9CisgICAgd3NyYyA9IFB5VW5pY29kZV9Bc1VuaWNvZGUodXNyYyk7CisgICAgaWYgKHdzcmMgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICB3ZGVzdCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUodWRlc3QpOworICAgIGlmICh3c3JjID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgcmVzID0gUHlfQ3JlYXRlU3ltYm9saWNMaW5rVygKLSAgICAgICAgUHlVbmljb2RlX0FzVW5pY29kZShkZXN0KSwKLSAgICAgICAgUHlVbmljb2RlX0FzVW5pY29kZShzcmMpLAotICAgICAgICB0YXJnZXRfaXNfZGlyZWN0b3J5KTsKKyAgICByZXMgPSBQeV9DcmVhdGVTeW1ib2xpY0xpbmtXKHdkZXN0LCB3c3JjLCB0YXJnZXRfaXNfZGlyZWN0b3J5KTsKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgIFB5X0RFQ1JFRihzcmMpOwotICAgIFB5X0RFQ1JFRihkZXN0KTsKKworICAgIFB5X0RFQ1JFRih1c3JjKTsKKyAgICBQeV9ERUNSRUYodWRlc3QpOwogICAgIGlmICghcmVzKQotICAgIHsKLSAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX3VuaWNvZGUoInN5bWxpbmsiLCBQeVVuaWNvZGVfQXNVbmljb2RlKHNyYykpOwotICAgIH0KKyAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yX29iamVjdCgic3ltbGluayIsIG9zcmMpOwogCiAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgIHJldHVybiBQeV9Ob25lOworCitlcnJvcjoKKyAgICBQeV9YREVDUkVGKHVzcmMpOworICAgIFB5X1hERUNSRUYodWRlc3QpOworICAgIHJldHVybiBOVUxMOwogfQogI2VuZGlmIC8qIGRlZmluZWQoSEFWRV9TWU1MSU5LKSAmJiBkZWZpbmVkKE1TX1dJTkRPV1MpICovCiAKQEAgLTU1NTksMTIgKzY4MTAsMTQgQEAKICAgICBpbnQgZmQ7CiAKICNpZmRlZiBNU19XSU5ET1dTCi0gICAgUHlVbmljb2RlT2JqZWN0ICpwbzsKKyAgICBQeU9iamVjdCAqcG87CiAgICAgaWYgKFB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVpfGk6b3BlbiIsICZwbywgJmZsYWcsICZtb2RlKSkgeworICAgICAgICB3Y2hhcl90ICp3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocG8pOworICAgICAgICBpZiAod3BhdGggPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICAgICAgLyogUHlVbmljb2RlX0FTX1VOSUNPREUgT0sgd2l0aG91dCB0aHJlYWQKLSAgICAgICAgICAgbG9jayBhcyBpdCBpcyBhIHNpbXBsZSBkZXJlZmVyZW5jZS4gKi8KLSAgICAgICAgZmQgPSBfd29wZW4oUHlVbmljb2RlX0FTX1VOSUNPREUocG8pLCBmbGFnLCBtb2RlKTsKKyAgICAgICAgZmQgPSBfd29wZW4od3BhdGgsIGZsYWcsIG1vZGUpOwogICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgICAgICBpZiAoZmQgPCAwKQogICAgICAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CkBAIC01NTc5LDYgKzY4MzIsMTIgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb2ZpbGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZmbGFnLCAmbW9kZSkpCiAgICAgICAgIHJldHVybiBOVUxMOworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkgeworICAgICAgICBQeV9ERUNSRUYob2ZpbGUpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisjZW5kaWYKICAgICBmaWxlID0gUHlCeXRlc19Bc1N0cmluZyhvZmlsZSk7CiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgIGZkID0gb3BlbihmaWxlLCBmbGFnLCBtb2RlKTsKQEAgLTU2NDMsOSArNjkwMiw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmICghX1B5VmVyaWZ5X2ZkKGZkKSkKICAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7Ci0gICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgIGZkID0gZHVwKGZkKTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChmZCA8IDApCiAgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOwogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpZmQpOwpAQCAtNTY2NCwxNSArNjkyMSw0MiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoIV9QeVZlcmlmeV9mZF9kdXAyKGZkLCBmZDIpKQogICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgcmVzID0gZHVwMihmZCwgZmQyKTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChyZXMgPCAwKQogICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgcmV0dXJuIFB5X05vbmU7CiB9CiAKKyNpZmRlZiBIQVZFX0xPQ0tGCitQeURvY19TVFJWQVIocG9zaXhfbG9ja2ZfX2RvY19fLAorImxvY2tmKGZkLCBjbWQsIGxlbilcblxuXAorQXBwbHksIHRlc3Qgb3IgcmVtb3ZlIGEgUE9TSVggbG9jayBvbiBhbiBvcGVuIGZpbGUgZGVzY3JpcHRvci5cblxuXAorZmQgaXMgYW4gb3BlbiBmaWxlIGRlc2NyaXB0b3IuXG5cCitjbWQgc3BlY2lmaWVzIHRoZSBjb21tYW5kIHRvIHVzZSAtIG9uZSBvZiBGX0xPQ0ssIEZfVExPQ0ssIEZfVUxPQ0sgb3JcblwKK0ZfVEVTVC5cblwKK2xlbiBzcGVjaWZpZXMgdGhlIHNlY3Rpb24gb2YgdGhlIGZpbGUgdG8gbG9jay4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2xvY2tmKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgZmQsIGNtZCwgcmVzOworICAgIG9mZl90IGxlbjsKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlpTyY6bG9ja2YiLAorICAgICAgICAgICAgJmZkLCAmY21kLCBfcGFyc2Vfb2ZmX3QsICZsZW4pKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSBsb2NrZihmZCwgY21kLCBsZW4pOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpZiAocmVzIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCiAKIFB5RG9jX1NUUlZBUihwb3NpeF9sc2Vla19fZG9jX18sCiAibHNlZWsoZmQsIHBvcywgaG93KSAtPiBuZXdwb3NcblxuXApAQCAtNTcwMyw4ICs2OTg3LDcgQEAKICNpZiAhZGVmaW5lZChIQVZFX0xBUkdFRklMRV9TVVBQT1JUKQogICAgIHBvcyA9IFB5TG9uZ19Bc0xvbmcocG9zb2JqKTsKICNlbHNlCi0gICAgcG9zID0gUHlMb25nX0NoZWNrKHBvc29iaikgPwotICAgICAgICBQeUxvbmdfQXNMb25nTG9uZyhwb3NvYmopIDogUHlMb25nX0FzTG9uZyhwb3NvYmopOworICAgIHBvcyA9IFB5TG9uZ19Bc0xvbmdMb25nKHBvc29iaik7CiAjZW5kaWYKICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC01NzY0LDYgKzcwNDcsMTQwIEBACiAgICAgcmV0dXJuIGJ1ZmZlcjsKIH0KIAorI2lmIChkZWZpbmVkKEhBVkVfU0VOREZJTEUpICYmIChkZWZpbmVkKF9fRnJlZUJTRF9fKSB8fCBkZWZpbmVkKF9fRHJhZ29uRmx5X18pIFwKKyAgICB8fCBkZWZpbmVkKF9fQVBQTEVfXykpKSB8fCBkZWZpbmVkKEhBVkVfUkVBRFYpIHx8IGRlZmluZWQoSEFWRV9XUklURVYpCitzdGF0aWMgUHlfc3NpemVfdAoraW92X3NldHVwKHN0cnVjdCBpb3ZlYyAqKmlvdiwgUHlfYnVmZmVyICoqYnVmLCBQeU9iamVjdCAqc2VxLCBpbnQgY250LCBpbnQgdHlwZSkKK3sKKyAgICBpbnQgaSwgajsKKyAgICBQeV9zc2l6ZV90IGJsZW4sIHRvdGFsID0gMDsKKworICAgICppb3YgPSBQeU1lbV9OZXcoc3RydWN0IGlvdmVjLCBjbnQpOworICAgIGlmICgqaW92ID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIHRvdGFsOworICAgIH0KKworICAgICpidWYgPSBQeU1lbV9OZXcoUHlfYnVmZmVyLCBjbnQpOworICAgIGlmICgqYnVmID09IE5VTEwpIHsKKyAgICAgICAgUHlNZW1fRGVsKCppb3YpOworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gdG90YWw7CisgICAgfQorCisgICAgZm9yIChpID0gMDsgaSA8IGNudDsgaSsrKSB7CisgICAgICAgIFB5T2JqZWN0ICppdGVtID0gUHlTZXF1ZW5jZV9HZXRJdGVtKHNlcSwgaSk7CisgICAgICAgIGlmIChpdGVtID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgIGlmIChQeU9iamVjdF9HZXRCdWZmZXIoaXRlbSwgJigqYnVmKVtpXSwgdHlwZSkgPT0gLTEpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihpdGVtKTsKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYoaXRlbSk7CisgICAgICAgICgqaW92KVtpXS5pb3ZfYmFzZSA9ICgqYnVmKVtpXS5idWY7CisgICAgICAgIGJsZW4gPSAoKmJ1ZilbaV0ubGVuOworICAgICAgICAoKmlvdilbaV0uaW92X2xlbiA9IGJsZW47CisgICAgICAgIHRvdGFsICs9IGJsZW47CisgICAgfQorICAgIHJldHVybiB0b3RhbDsKKworZmFpbDoKKyAgICBQeU1lbV9EZWwoKmlvdik7CisgICAgZm9yIChqID0gMDsgaiA8IGk7IGorKykgeworICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCYoKmJ1Zilbal0pOworICAgIH0KKyAgICBQeU1lbV9EZWwoKmJ1Zik7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB2b2lkCitpb3ZfY2xlYW51cChzdHJ1Y3QgaW92ZWMgKmlvdiwgUHlfYnVmZmVyICpidWYsIGludCBjbnQpCit7CisgICAgaW50IGk7CisgICAgUHlNZW1fRGVsKGlvdik7CisgICAgZm9yIChpID0gMDsgaSA8IGNudDsgaSsrKSB7CisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJmJ1ZltpXSk7CisgICAgfQorICAgIFB5TWVtX0RlbChidWYpOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX1JFQURWCitQeURvY19TVFJWQVIocG9zaXhfcmVhZHZfX2RvY19fLAorInJlYWR2KGZkLCBidWZmZXJzKSAtPiBieXRlc3JlYWRcblxuXAorUmVhZCBmcm9tIGEgZmlsZSBkZXNjcmlwdG9yIGludG8gYSBudW1iZXIgb2Ygd3JpdGFibGUgYnVmZmVycy4gYnVmZmVyc1xuXAoraXMgYW4gYXJiaXRyYXJ5IHNlcXVlbmNlIG9mIHdyaXRhYmxlIGJ1ZmZlcnMuXG5cCitSZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMgcmVhZC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3JlYWR2KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgZmQsIGNudDsKKyAgICBQeV9zc2l6ZV90IG47CisgICAgUHlPYmplY3QgKnNlcTsKKyAgICBzdHJ1Y3QgaW92ZWMgKmlvdjsKKyAgICBQeV9idWZmZXIgKmJ1ZjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU86cmVhZHYiLCAmZmQsICZzZXEpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIVB5U2VxdWVuY2VfQ2hlY2soc2VxKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgInJlYWR2KCkgYXJnIDIgbXVzdCBiZSBhIHNlcXVlbmNlIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBjbnQgPSBQeVNlcXVlbmNlX1NpemUoc2VxKTsKKworICAgIGlmICghaW92X3NldHVwKCZpb3YsICZidWYsIHNlcSwgY250LCBQeUJVRl9XUklUQUJMRSkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIG4gPSByZWFkdihmZCwgaW92LCBjbnQpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpb3ZfY2xlYW51cChpb3YsIGJ1ZiwgY250KTsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KG4pOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX1BSRUFECitQeURvY19TVFJWQVIocG9zaXhfcHJlYWRfX2RvY19fLAorInByZWFkKGZkLCBidWZmZXJzaXplLCBvZmZzZXQpIC0+IHN0cmluZ1xuXG5cCitSZWFkIGZyb20gYSBmaWxlIGRlc2NyaXB0b3IsIGZkLCBhdCBhIHBvc2l0aW9uIG9mIG9mZnNldC4gSXQgd2lsbCByZWFkIHVwXG5cCit0byBidWZmZXJzaXplIG51bWJlciBvZiBieXRlcy4gVGhlIGZpbGUgb2Zmc2V0IHJlbWFpbnMgdW5jaGFuZ2VkLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfcHJlYWQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCBmZCwgc2l6ZTsKKyAgICBvZmZfdCBvZmZzZXQ7CisgICAgUHlfc3NpemVfdCBuOworICAgIFB5T2JqZWN0ICpidWZmZXI7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpaU8mOnByZWFkIiwgJmZkLCAmc2l6ZSwgX3BhcnNlX29mZl90LCAmb2Zmc2V0KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoc2l6ZSA8IDApIHsKKyAgICAgICAgZXJybm8gPSBFSU5WQUw7CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKyAgICBidWZmZXIgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKChjaGFyICopTlVMTCwgc2l6ZSk7CisgICAgaWYgKGJ1ZmZlciA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIV9QeVZlcmlmeV9mZChmZCkpIHsKKyAgICAgICAgUHlfREVDUkVGKGJ1ZmZlcik7CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgbiA9IHByZWFkKGZkLCBQeUJ5dGVzX0FTX1NUUklORyhidWZmZXIpLCBzaXplLCBvZmZzZXQpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgaWYgKG4gPCAwKSB7CisgICAgICAgIFB5X0RFQ1JFRihidWZmZXIpOworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgaWYgKG4gIT0gc2l6ZSkKKyAgICAgICAgX1B5Qnl0ZXNfUmVzaXplKCZidWZmZXIsIG4pOworICAgIHJldHVybiBidWZmZXI7Cit9CisjZW5kaWYKIAogUHlEb2NfU1RSVkFSKHBvc2l4X3dyaXRlX19kb2NfXywKICJ3cml0ZShmZCwgc3RyaW5nKSAtPiBieXRlc3dyaXR0ZW5cblxuXApAQCAtNTc5OCw2ICs3MjE1LDE0NCBAQAogICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3Qoc2l6ZSk7CiB9CiAKKyNpZmRlZiBIQVZFX1NFTkRGSUxFCitQeURvY19TVFJWQVIocG9zaXhfc2VuZGZpbGVfX2RvY19fLAorInNlbmRmaWxlKG91dCwgaW4sIG9mZnNldCwgbmJ5dGVzKSAtPiBieXRlc3dyaXR0ZW5cblwKK3NlbmRmaWxlKG91dCwgaW4sIG9mZnNldCwgbmJ5dGVzLCBoZWFkZXJzPU5vbmUsIHRyYWlsZXJzPU5vbmUsIGZsYWdzPTApXG5cCisgICAgICAgICAgICAtPiBieXRlc3dyaXR0ZW5cblwKK0NvcHkgbmJ5dGVzIGJ5dGVzIGZyb20gZmlsZSBkZXNjcmlwdG9yIGluIHRvIGZpbGUgZGVzY3JpcHRvciBvdXQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zZW5kZmlsZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RpY3QpCit7CisgICAgaW50IGluLCBvdXQ7CisgICAgUHlfc3NpemVfdCByZXQ7CisgICAgb2ZmX3Qgb2Zmc2V0OworCisjaWYgZGVmaW5lZChfX0ZyZWVCU0RfXykgfHwgZGVmaW5lZChfX0RyYWdvbkZseV9fKSB8fCBkZWZpbmVkKF9fQVBQTEVfXykKKyNpZm5kZWYgX19BUFBMRV9fCisgICAgUHlfc3NpemVfdCBsZW47CisjZW5kaWYKKyAgICBQeU9iamVjdCAqaGVhZGVycyA9IE5VTEwsICp0cmFpbGVycyA9IE5VTEw7CisgICAgUHlfYnVmZmVyICpoYnVmLCAqdGJ1ZjsKKyAgICBvZmZfdCBzYnl0ZXM7CisgICAgc3RydWN0IHNmX2hkdHIgc2Y7CisgICAgaW50IGZsYWdzID0gMDsKKyAgICBzZi5oZWFkZXJzID0gTlVMTDsKKyAgICBzZi50cmFpbGVycyA9IE5VTEw7CisgICAgc3RhdGljIGNoYXIgKmtleXdvcmRzW10gPSB7Im91dCIsICJpbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvZmZzZXQiLCAiY291bnQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaGVhZGVycyIsICJ0cmFpbGVycyIsICJmbGFncyIsIE5VTEx9OworCisjaWZkZWYgX19BUFBMRV9fCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkaWN0LCAiaWlPJk8mfE9PaTpzZW5kZmlsZSIsCisgICAgICAgIGtleXdvcmRzLCAmb3V0LCAmaW4sIF9wYXJzZV9vZmZfdCwgJm9mZnNldCwgX3BhcnNlX29mZl90LCAmc2J5dGVzLAorI2Vsc2UKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RpY3QsICJpaU8mbnxPT2k6c2VuZGZpbGUiLAorICAgICAgICBrZXl3b3JkcywgJm91dCwgJmluLCBfcGFyc2Vfb2ZmX3QsICZvZmZzZXQsICZsZW4sCisjZW5kaWYKKyAgICAgICAgICAgICAgICAmaGVhZGVycywgJnRyYWlsZXJzLCAmZmxhZ3MpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKGhlYWRlcnMgIT0gTlVMTCkgeworICAgICAgICBpZiAoIVB5U2VxdWVuY2VfQ2hlY2soaGVhZGVycykpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgInNlbmRmaWxlKCkgaGVhZGVycyBtdXN0IGJlIGEgc2VxdWVuY2Ugb3IgTm9uZSIpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGkgPSAwOyAvKiBBdm9pZCB1bmluaXRpYWxpemVkIHdhcm5pbmcgKi8KKyAgICAgICAgICAgIHNmLmhkcl9jbnQgPSBQeVNlcXVlbmNlX1NpemUoaGVhZGVycyk7CisgICAgICAgICAgICBpZiAoc2YuaGRyX2NudCA+IDAgJiYKKyAgICAgICAgICAgICAgICAhKGkgPSBpb3Zfc2V0dXAoJihzZi5oZWFkZXJzKSwgJmhidWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnMsIHNmLmhkcl9jbnQsIFB5QlVGX1NJTVBMRSkpKQorICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworI2lmZGVmIF9fQVBQTEVfXworICAgICAgICAgICAgc2J5dGVzICs9IGk7CisjZW5kaWYKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAodHJhaWxlcnMgIT0gTlVMTCkgeworICAgICAgICBpZiAoIVB5U2VxdWVuY2VfQ2hlY2sodHJhaWxlcnMpKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICJzZW5kZmlsZSgpIHRyYWlsZXJzIG11c3QgYmUgYSBzZXF1ZW5jZSBvciBOb25lIik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgaSA9IDA7IC8qIEF2b2lkIHVuaW5pdGlhbGl6ZWQgd2FybmluZyAqLworICAgICAgICAgICAgc2YudHJsX2NudCA9IFB5U2VxdWVuY2VfU2l6ZSh0cmFpbGVycyk7CisgICAgICAgICAgICBpZiAoc2YudHJsX2NudCA+IDAgJiYKKyAgICAgICAgICAgICAgICAhKGkgPSBpb3Zfc2V0dXAoJihzZi50cmFpbGVycyksICZ0YnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFpbGVycywgc2YudHJsX2NudCwgUHlCVUZfU0lNUExFKSkpCisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisjaWZkZWYgX19BUFBMRV9fCisgICAgICAgICAgICBzYnl0ZXMgKz0gaTsKKyNlbmRpZgorICAgICAgICB9CisgICAgfQorCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworI2lmZGVmIF9fQVBQTEVfXworICAgIHJldCA9IHNlbmRmaWxlKGluLCBvdXQsIG9mZnNldCwgJnNieXRlcywgJnNmLCBmbGFncyk7CisjZWxzZQorICAgIHJldCA9IHNlbmRmaWxlKGluLCBvdXQsIG9mZnNldCwgbGVuLCAmc2YsICZzYnl0ZXMsIGZsYWdzKTsKKyNlbmRpZgorICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpZiAoc2YuaGVhZGVycyAhPSBOVUxMKQorICAgICAgICBpb3ZfY2xlYW51cChzZi5oZWFkZXJzLCBoYnVmLCBzZi5oZHJfY250KTsKKyAgICBpZiAoc2YudHJhaWxlcnMgIT0gTlVMTCkKKyAgICAgICAgaW92X2NsZWFudXAoc2YudHJhaWxlcnMsIHRidWYsIHNmLnRybF9jbnQpOworCisgICAgaWYgKHJldCA8IDApIHsKKyAgICAgICAgaWYgKChlcnJubyA9PSBFQUdBSU4pIHx8IChlcnJubyA9PSBFQlVTWSkpIHsKKyAgICAgICAgICAgIGlmIChzYnl0ZXMgIT0gMCkgeworICAgICAgICAgICAgICAgIC8vIHNvbWUgZGF0YSBoYXMgYmVlbiBzZW50CisgICAgICAgICAgICAgICAgZ290byBkb25lOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgLy8gbm8gZGF0YSBoYXMgYmVlbiBzZW50OyB1cHBlciBhcHBsaWNhdGlvbiBpcyBzdXBwb3NlZAorICAgICAgICAgICAgICAgIC8vIHRvIHJldHJ5IG9uIEVBR0FJTiBvciBFQlVTWQorICAgICAgICAgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKyAgICBnb3RvIGRvbmU7CisKK2RvbmU6CisgICAgI2lmICFkZWZpbmVkKEhBVkVfTEFSR0VGSUxFX1NVUFBPUlQpCisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCJsIiwgc2J5dGVzKTsKKyAgICAjZWxzZQorICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiTCIsIHNieXRlcyk7CisgICAgI2VuZGlmCisKKyNlbHNlCisgICAgUHlfc3NpemVfdCBjb3VudDsKKyAgICBQeU9iamVjdCAqb2Zmb2JqOworICAgIHN0YXRpYyBjaGFyICprZXl3b3Jkc1tdID0geyJvdXQiLCAiaW4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib2Zmc2V0IiwgImNvdW50IiwgTlVMTH07CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkaWN0LCAiaWlPbjpzZW5kZmlsZSIsCisgICAgICAgICAgICBrZXl3b3JkcywgJm91dCwgJmluLCAmb2Zmb2JqLCAmY291bnQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyNpZmRlZiBsaW51eAorICAgIGlmIChvZmZvYmogPT0gUHlfTm9uZSkgeworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHJldCA9IHNlbmRmaWxlKG91dCwgaW4sIE5VTEwsIGNvdW50KTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgaWYgKHJldCA8IDApCisgICAgICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIm4iLCByZXQpOworICAgIH0KKyNlbmRpZgorICAgIGlmICghX3BhcnNlX29mZl90KG9mZm9iaiwgJm9mZnNldCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXQgPSBzZW5kZmlsZShvdXQsIGluLCAmb2Zmc2V0LCBjb3VudCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAocmV0IDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIm4iLCByZXQpOworI2VuZGlmCit9CisjZW5kaWYKIAogUHlEb2NfU1RSVkFSKHBvc2l4X2ZzdGF0X19kb2NfXywKICJmc3RhdChmZCkgLT4gc3RhdCByZXN1bHRcblxuXApAQCAtNTg1OSw5ICs3NDE0LDcgQEAKICAgICBIRklMRSByZWFkLCB3cml0ZTsKICAgICBBUElSRVQgcmM7CiAKLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgcmMgPSBEb3NDcmVhdGVQaXBlKCAmcmVhZCwgJndyaXRlLCA0MDk2KTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChyYyAhPSBOT19FUlJPUikKICAgICAgICAgcmV0dXJuIG9zMl9lcnJvcihyYyk7CiAKQEAgLTU4NzAsOSArNzQyMyw3IEBACiAjaWYgIWRlZmluZWQoTVNfV0lORE9XUykKICAgICBpbnQgZmRzWzJdOwogICAgIGludCByZXM7Ci0gICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwogICAgIHJlcyA9IHBpcGUoZmRzKTsKLSAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChyZXMgIT0gMCkKICAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CiAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIihpaSkiLCBmZHNbMF0sIGZkc1sxXSk7CkBAIC01ODgwLDkgKzc0MzEsNyBAQAogICAgIEhBTkRMRSByZWFkLCB3cml0ZTsKICAgICBpbnQgcmVhZF9mZCwgd3JpdGVfZmQ7CiAgICAgQk9PTCBvazsKLSAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgb2sgPSBDcmVhdGVQaXBlKCZyZWFkLCAmd3JpdGUsIE5VTEwsIDApOwotICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgaWYgKCFvaykKICAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yKCJDcmVhdGVQaXBlIiwgTlVMTCk7CiAgICAgcmVhZF9mZCA9IF9vcGVuX29zZmhhbmRsZSgoUHlfaW50cHRyX3QpcmVhZCwgMCk7CkBAIC01ODkzLDYgKzc0NDIsOTkgQEAKIH0KICNlbmRpZiAgLyogSEFWRV9QSVBFICovCiAKKyNpZmRlZiBIQVZFX1BJUEUyCitQeURvY19TVFJWQVIocG9zaXhfcGlwZTJfX2RvY19fLAorInBpcGUyKGZsYWdzKSAtPiAocmVhZF9lbmQsIHdyaXRlX2VuZClcblxuXAorQ3JlYXRlIGEgcGlwZSB3aXRoIGZsYWdzIHNldCBhdG9taWNhbGx5LlxuXAorZmxhZ3MgY2FuIGJlIGNvbnN0cnVjdGVkIGJ5IE9SaW5nIHRvZ2V0aGVyIG9uZSBvciBtb3JlIG9mIHRoZXNlIHZhbHVlczpcblwKK09fTk9OQkxPQ0ssIE9fQ0xPRVhFQy5cblwKKyIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfcGlwZTIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmcpCit7CisgICAgaW50IGZsYWdzOworICAgIGludCBmZHNbMl07CisgICAgaW50IHJlczsKKworICAgIGZsYWdzID0gUHlMb25nX0FzTG9uZyhhcmcpOworICAgIGlmIChmbGFncyA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHJlcyA9IHBpcGUyKGZkcywgZmxhZ3MpOworICAgIGlmIChyZXMgIT0gMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIihpaSkiLCBmZHNbMF0sIGZkc1sxXSk7Cit9CisjZW5kaWYgLyogSEFWRV9QSVBFMiAqLworCisjaWZkZWYgSEFWRV9XUklURVYKK1B5RG9jX1NUUlZBUihwb3NpeF93cml0ZXZfX2RvY19fLAorIndyaXRldihmZCwgYnVmZmVycykgLT4gYnl0ZXN3cml0dGVuXG5cblwKK1dyaXRlIHRoZSBjb250ZW50cyBvZiBidWZmZXJzIHRvIGEgZmlsZSBkZXNjcmlwdG9yLCB3aGVyZSBidWZmZXJzIGlzIGFuXG5cCithcmJpdHJhcnkgc2VxdWVuY2Ugb2YgYnVmZmVycy5cblwKK1JldHVybnMgdGhlIHRvdGFsIGJ5dGVzIHdyaXR0ZW4uIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF93cml0ZXYoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCBmZCwgY250OworICAgIFB5X3NzaXplX3QgcmVzOworICAgIFB5T2JqZWN0ICpzZXE7CisgICAgc3RydWN0IGlvdmVjICppb3Y7CisgICAgUHlfYnVmZmVyICpidWY7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTzp3cml0ZXYiLCAmZmQsICZzZXEpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIVB5U2VxdWVuY2VfQ2hlY2soc2VxKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgIndyaXRldigpIGFyZyAyIG11c3QgYmUgYSBzZXF1ZW5jZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgY250ID0gUHlTZXF1ZW5jZV9TaXplKHNlcSk7CisKKyAgICBpZiAoIWlvdl9zZXR1cCgmaW92LCAmYnVmLCBzZXEsIGNudCwgUHlCVUZfU0lNUExFKSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gd3JpdGV2KGZkLCBpb3YsIGNudCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKworICAgIGlvdl9jbGVhbnVwKGlvdiwgYnVmLCBjbnQpOworICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3QocmVzKTsKK30KKyNlbmRpZgorCisjaWZkZWYgSEFWRV9QV1JJVEUKK1B5RG9jX1NUUlZBUihwb3NpeF9wd3JpdGVfX2RvY19fLAorInB3cml0ZShmZCwgc3RyaW5nLCBvZmZzZXQpIC0+IGJ5dGVzd3JpdHRlblxuXG5cCitXcml0ZSBzdHJpbmcgdG8gYSBmaWxlIGRlc2NyaXB0b3IsIGZkLCBmcm9tIG9mZnNldCwgbGVhdmluZyB0aGUgZmlsZVxuXAorb2Zmc2V0IHVuY2hhbmdlZC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3B3cml0ZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlfYnVmZmVyIHBidWY7CisgICAgaW50IGZkOworICAgIG9mZl90IG9mZnNldDsKKyAgICBQeV9zc2l6ZV90IHNpemU7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIml5Kk8mOnB3cml0ZSIsICZmZCwgJnBidWYsIF9wYXJzZV9vZmZfdCwgJm9mZnNldCkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKCFfUHlWZXJpZnlfZmQoZmQpKSB7CisgICAgICAgIFB5QnVmZmVyX1JlbGVhc2UoJnBidWYpOworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHNpemUgPSBwd3JpdGUoZmQsIHBidWYuYnVmLCAoc2l6ZV90KXBidWYubGVuLCBvZmZzZXQpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlCdWZmZXJfUmVsZWFzZSgmcGJ1Zik7CisgICAgaWYgKHNpemUgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KHNpemUpOworfQorI2VuZGlmCiAKICNpZmRlZiBIQVZFX01LRklGTwogUHlEb2NfU1RSVkFSKHBvc2l4X21rZmlmb19fZG9jX18sCkBAIC02MDA5LDE4ICs3NjUxLDggQEAKICAgICBpbnQgZmQ7CiAgICAgb2ZmX3QgbGVuZ3RoOwogICAgIGludCByZXM7Ci0gICAgUHlPYmplY3QgKmxlbm9iajsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU86ZnRydW5jYXRlIiwgJmZkLCAmbGVub2JqKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSNpZiAhZGVmaW5lZChIQVZFX0xBUkdFRklMRV9TVVBQT1JUKQotICAgIGxlbmd0aCA9IFB5TG9uZ19Bc0xvbmcobGVub2JqKTsKLSNlbHNlCi0gICAgbGVuZ3RoID0gUHlMb25nX0NoZWNrKGxlbm9iaikgPwotICAgICAgICBQeUxvbmdfQXNMb25nTG9uZyhsZW5vYmopIDogUHlMb25nX0FzTG9uZyhsZW5vYmopOwotI2VuZGlmCi0gICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyY6ZnRydW5jYXRlIiwgJmZkLCBfcGFyc2Vfb2ZmX3QsICZsZW5ndGgpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKQEAgLTYwMzMsNiArNzY2NSw5MyBAQAogfQogI2VuZGlmCiAKKyNpZmRlZiBIQVZFX1RSVU5DQVRFCitQeURvY19TVFJWQVIocG9zaXhfdHJ1bmNhdGVfX2RvY19fLAorInRydW5jYXRlKHBhdGgsIGxlbmd0aClcblxuXAorVHJ1bmNhdGUgdGhlIGZpbGUgZ2l2ZW4gYnkgcGF0aCB0byBsZW5ndGggYnl0ZXMuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF90cnVuY2F0ZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9wYXRoOworICAgIGNvbnN0IGNoYXIgKnBhdGg7CisgICAgb2ZmX3QgbGVuZ3RoOworICAgIGludCByZXM7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyY6dHJ1bmNhdGUiLAorICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsIF9wYXJzZV9vZmZfdCwgJmxlbmd0aCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSB0cnVuY2F0ZShwYXRoLCBsZW5ndGgpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICBpZiAocmVzIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfUE9TSVhfRkFMTE9DQVRFCitQeURvY19TVFJWQVIocG9zaXhfcG9zaXhfZmFsbG9jYXRlX19kb2NfXywKKyJwb3NpeF9mYWxsb2NhdGUoZmQsIG9mZnNldCwgbGVuKVxuXG5cCitFbnN1cmVzIHRoYXQgZW5vdWdoIGRpc2sgc3BhY2UgaXMgYWxsb2NhdGVkIGZvciB0aGUgZmlsZSBzcGVjaWZpZWQgYnkgZmRcblwKK3N0YXJ0aW5nIGZyb20gb2Zmc2V0IGFuZCBjb250aW51aW5nIGZvciBsZW4gYnl0ZXMuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9wb3NpeF9mYWxsb2NhdGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIG9mZl90IGxlbiwgb2Zmc2V0OworICAgIGludCByZXMsIGZkOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZPJjpwb3NpeF9mYWxsb2NhdGUiLAorICAgICAgICAgICAgJmZkLCBfcGFyc2Vfb2ZmX3QsICZvZmZzZXQsIF9wYXJzZV9vZmZfdCwgJmxlbikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IHBvc2l4X2ZhbGxvY2F0ZShmZCwgb2Zmc2V0LCBsZW4pOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgaWYgKHJlcyAhPSAwKSB7CisgICAgICAgIGVycm5vID0gcmVzOworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfUE9TSVhfRkFEVklTRQorUHlEb2NfU1RSVkFSKHBvc2l4X3Bvc2l4X2ZhZHZpc2VfX2RvY19fLAorInBvc2l4X2ZhZHZpc2UoZmQsIG9mZnNldCwgbGVuLCBhZHZpY2UpXG5cblwKK0Fubm91bmNlcyBhbiBpbnRlbnRpb24gdG8gYWNjZXNzIGRhdGEgaW4gYSBzcGVjaWZpYyBwYXR0ZXJuIHRodXMgYWxsb3dpbmdcblwKK3RoZSBrZXJuZWwgdG8gbWFrZSBvcHRpbWl6YXRpb25zLlxuXAorVGhlIGFkdmljZSBhcHBsaWVzIHRvIHRoZSByZWdpb24gb2YgdGhlIGZpbGUgc3BlY2lmaWVkIGJ5IGZkIHN0YXJ0aW5nIGF0XG5cCitvZmZzZXQgYW5kIGNvbnRpbnVpbmcgZm9yIGxlbiBieXRlcy5cblwKK2FkdmljZSBpcyBvbmUgb2YgUE9TSVhfRkFEVl9OT1JNQUwsIFBPU0lYX0ZBRFZfU0VRVUVOVElBTCxcblwKK1BPU0lYX0ZBRFZfUkFORE9NLCBQT1NJWF9GQURWX05PUkVVU0UsIFBPU0lYX0ZBRFZfV0lMTE5FRUQgb3JcblwKK1BPU0lYX0ZBRFZfRE9OVE5FRUQuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9wb3NpeF9mYWR2aXNlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBvZmZfdCBsZW4sIG9mZnNldDsKKyAgICBpbnQgcmVzLCBmZCwgYWR2aWNlOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZPJmk6cG9zaXhfZmFkdmlzZSIsCisgICAgICAgICAgICAmZmQsIF9wYXJzZV9vZmZfdCwgJm9mZnNldCwgX3BhcnNlX29mZl90LCAmbGVuLCAmYWR2aWNlKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gcG9zaXhfZmFkdmlzZShmZCwgb2Zmc2V0LCBsZW4sIGFkdmljZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAocmVzICE9IDApIHsKKyAgICAgICAgZXJybm8gPSByZXM7CisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIH0KKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9QVVRFTlYKIFB5RG9jX1NUUlZBUihwb3NpeF9wdXRlbnZfX2RvY19fLAogInB1dGVudihrZXksIHZhbHVlKVxuXG5cCkBAIC02MDQ1LDIzICs3NzY0LDQwIEBACiBzdGF0aWMgUHlPYmplY3QgKgogcG9zaXhfcHV0ZW52KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKKyAgICBQeU9iamVjdCAqbmV3c3RyID0gTlVMTDsKICNpZmRlZiBNU19XSU5ET1dTCi0gICAgd2NoYXJfdCAqczEsICpzMjsKKyAgICBQeU9iamVjdCAqb3MxLCAqb3MyOwogICAgIHdjaGFyX3QgKm5ld2VudjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAiVVU6cHV0ZW52IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJm9zMSwgJm9zMikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgbmV3c3RyID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVPSVVIiwgb3MxLCBvczIpOworICAgIGlmIChuZXdzdHIgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICBnb3RvIGVycm9yOworICAgIH0KKyAgICBpZiAoX01BWF9FTlYgPCBQeVVuaWNvZGVfR0VUX0xFTkdUSChuZXdzdHIpKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgInRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBsb25nZXIgdGhhbiAldSBjaGFyYWN0ZXJzIiwKKyAgICAgICAgICAgICAgICAgICAgIF9NQVhfRU5WKTsKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICB9CisKKyAgICBuZXdlbnYgPSBQeVVuaWNvZGVfQXNVbmljb2RlKG5ld3N0cik7CisgICAgaWYgKG5ld2VudiA9PSBOVUxMKQorICAgICAgICBnb3RvIGVycm9yOworICAgIGlmIChfd3B1dGVudihuZXdlbnYpKSB7CisgICAgICAgIHBvc2l4X2Vycm9yKCk7CisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgfQogI2Vsc2UKICAgICBQeU9iamVjdCAqb3MxLCAqb3MyOwogICAgIGNoYXIgKnMxLCAqczI7CiAgICAgY2hhciAqbmV3ZW52OwotI2VuZGlmCi0gICAgUHlPYmplY3QgKm5ld3N0ciA9IE5VTEw7Ci0gICAgc2l6ZV90IGxlbjsKIAotI2lmZGVmIE1TX1dJTkRPV1MKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgInV1OnB1dGVudiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZzMSwgJnMyKSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0jZWxzZQogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAiTyZPJjpwdXRlbnYiLAogICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvczEsCkBAIC02MDY5LDU4ICs3ODA1LDE0IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHMxID0gUHlCeXRlc19Bc1N0cmluZyhvczEpOwogICAgIHMyID0gUHlCeXRlc19Bc1N0cmluZyhvczIpOwotI2VuZGlmCiAKLSNpZiBkZWZpbmVkKFBZT1NfT1MyKQotICAgIGlmIChzdHJpY21wKHMxLCAiQkVHSU5MSUJQQVRIIikgPT0gMCkgewotICAgICAgICBBUElSRVQgcmM7Ci0KLSAgICAgICAgcmMgPSBEb3NTZXRFeHRMSUJQQVRIKHMyLCBCRUdJTl9MSUJQQVRIKTsKLSAgICAgICAgaWYgKHJjICE9IE5PX0VSUk9SKSB7Ci0gICAgICAgICAgICBvczJfZXJyb3IocmMpOwotICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgfQotCi0gICAgfSBlbHNlIGlmIChzdHJpY21wKHMxLCAiRU5ETElCUEFUSCIpID09IDApIHsKLSAgICAgICAgQVBJUkVUIHJjOwotCi0gICAgICAgIHJjID0gRG9zU2V0RXh0TElCUEFUSChzMiwgRU5EX0xJQlBBVEgpOwotICAgICAgICBpZiAocmMgIT0gTk9fRVJST1IpIHsKLSAgICAgICAgICAgIG9zMl9lcnJvcihyYyk7Ci0gICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICB9Ci0gICAgfSBlbHNlIHsKLSNlbmRpZgotICAgIC8qIFhYWCBUaGlzIGNhbiBsZWFrIG1lbW9yeSAtLSBub3QgZWFzeSB0byBmaXggOi0oICovCi0gICAgLyogbGVuIGluY2x1ZGVzIHNwYWNlIGZvciBhIHRyYWlsaW5nIFwwOyB0aGUgc2l6ZSBhcmcgdG8KLSAgICAgICBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplIGRvZXMgbm90IGNvdW50IHRoYXQgKi8KLSNpZmRlZiBNU19XSU5ET1dTCi0gICAgbGVuID0gd2NzbGVuKHMxKSArIHdjc2xlbihzMikgKyAyOwotICAgIGlmIChfTUFYX0VOViA8IChsZW4gLSAxKSkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJ0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgbG9uZ2VyIHRoYW4gJXUgY2hhcmFjdGVycyIsCi0gICAgICAgICAgICAgICAgICAgICBfTUFYX0VOVik7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotICAgIG5ld3N0ciA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCAoaW50KWxlbiAtIDEpOwotI2Vsc2UKLSAgICBsZW4gPSBQeUJ5dGVzX0dFVF9TSVpFKG9zMSkgKyBQeUJ5dGVzX0dFVF9TSVpFKG9zMikgKyAyOwotICAgIG5ld3N0ciA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgKGludClsZW4gLSAxKTsKLSNlbmRpZgorICAgIG5ld3N0ciA9IFB5Qnl0ZXNfRnJvbUZvcm1hdCgiJXM9JXMiLCBzMSwgczIpOwogICAgIGlmIChuZXdzdHIgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KLSNpZmRlZiBNU19XSU5ET1dTCi0gICAgbmV3ZW52ID0gUHlVbmljb2RlX0FzVW5pY29kZShuZXdzdHIpOwotICAgIF9zbndwcmludGYobmV3ZW52LCBsZW4sIEwiJXM9JXMiLCBzMSwgczIpOwotICAgIGlmIChfd3B1dGVudihuZXdlbnYpKSB7Ci0gICAgICAgIHBvc2l4X2Vycm9yKCk7Ci0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgfQotI2Vsc2UKKwogICAgIG5ld2VudiA9IFB5Qnl0ZXNfQVNfU1RSSU5HKG5ld3N0cik7Ci0gICAgUHlPU19zbnByaW50ZihuZXdlbnYsIGxlbiwgIiVzPSVzIiwgczEsIHMyKTsKICAgICBpZiAocHV0ZW52KG5ld2VudikpIHsKICAgICAgICAgcG9zaXhfZXJyb3IoKTsKICAgICAgICAgZ290byBlcnJvcjsKQEAgLTYxMzEsMTMgKzc4MjMsNyBAQAogICAgICAqIHRoaXMgd2lsbCBjYXVzZSBwcmV2aW91cyB2YWx1ZSB0byBiZSBjb2xsZWN0ZWQuICBUaGlzIGhhcyB0bwogICAgICAqIGhhcHBlbiBhZnRlciB0aGUgcmVhbCBwdXRlbnYoKSBjYWxsIGJlY2F1c2UgdGhlIG9sZCB2YWx1ZQogICAgICAqIHdhcyBzdGlsbCBhY2Nlc3NpYmxlIHVudGlsIHRoZW4uICovCi0gICAgaWYgKFB5RGljdF9TZXRJdGVtKHBvc2l4X3B1dGVudl9nYXJiYWdlLAotI2lmZGVmIE1TX1dJTkRPV1MKLSAgICAgICAgICAgICAgICAgICAgICAgUHlUdXBsZV9HRVRfSVRFTShhcmdzLCAwKSwKLSNlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgIG9zMSwKLSNlbmRpZgotICAgICAgICAgICAgICAgICAgICAgICBuZXdzdHIpKSB7CisgICAgaWYgKFB5RGljdF9TZXRJdGVtKHBvc2l4X3B1dGVudl9nYXJiYWdlLCBvczEsIG5ld3N0cikpIHsKICAgICAgICAgLyogcmVhbGx5IG5vdCBtdWNoIHdlIGNhbiBkbzsganVzdCBsZWFrICovCiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgfQpAQCAtNjE0NSwxMCArNzgzMSw2IEBACiAgICAgICAgIFB5X0RFQ1JFRihuZXdzdHIpOwogICAgIH0KIAotI2lmIGRlZmluZWQoUFlPU19PUzIpCi0gICAgfQotI2VuZGlmCi0KICNpZm5kZWYgTVNfV0lORE9XUwogICAgIFB5X0RFQ1JFRihvczEpOwogICAgIFB5X0RFQ1JFRihvczIpOwpAQCAtNjE3MywyMyArNzg1NSwyMiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHBvc2l4X3Vuc2V0ZW52KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeU9iamVjdCAqb3MxOwotICAgIGNoYXIgKnMxOworICAgIFB5T2JqZWN0ICpuYW1lOwogI2lmbmRlZiBIQVZFX0JST0tFTl9VTlNFVEVOVgogICAgIGludCBlcnI7CiAjZW5kaWYKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6dW5zZXRlbnYiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvczEpKQorCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm5hbWUpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBzMSA9IFB5Qnl0ZXNfQXNTdHJpbmcob3MxKTsKIAogI2lmZGVmIEhBVkVfQlJPS0VOX1VOU0VURU5WCi0gICAgdW5zZXRlbnYoczEpOworICAgIHVuc2V0ZW52KFB5Qnl0ZXNfQVNfU1RSSU5HKG5hbWUpKTsKICNlbHNlCi0gICAgZXJyID0gdW5zZXRlbnYoczEpOworICAgIGVyciA9IHVuc2V0ZW52KFB5Qnl0ZXNfQVNfU1RSSU5HKG5hbWUpKTsKICAgICBpZiAoZXJyKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihvczEpOworICAgICAgICBQeV9ERUNSRUYobmFtZSk7CiAgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOwogICAgIH0KICNlbmRpZgpAQCAtNjE5OSwxMiArNzg4MCwxMSBAQAogICAgICAqIGhhcHBlbiBhZnRlciB0aGUgcmVhbCB1bnNldGVudigpIGNhbGwgYmVjYXVzZSB0aGUKICAgICAgKiBvbGQgdmFsdWUgd2FzIHN0aWxsIGFjY2Vzc2libGUgdW50aWwgdGhlbi4KICAgICAgKi8KLSAgICBpZiAoUHlEaWN0X0RlbEl0ZW0ocG9zaXhfcHV0ZW52X2dhcmJhZ2UsIG9zMSkpIHsKKyAgICBpZiAoUHlEaWN0X0RlbEl0ZW0ocG9zaXhfcHV0ZW52X2dhcmJhZ2UsIG5hbWUpKSB7CiAgICAgICAgIC8qIHJlYWxseSBub3QgbXVjaCB3ZSBjYW4gZG87IGp1c3QgbGVhayAqLwogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgIH0KLQotICAgIFB5X0RFQ1JFRihvczEpOworICAgIFB5X0RFQ1JFRihuYW1lKTsKICAgICBQeV9SRVRVUk5fTk9ORTsKIH0KICNlbmRpZiAvKiB1bnNldGVudiAqLwpAQCAtNjIyNiw3ICs3OTA2LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICJzdHJlcnJvcigpIGFyZ3VtZW50IG91dCBvZiByYW5nZSIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKG1lc3NhZ2UpOworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKG1lc3NhZ2UsICJzdXJyb2dhdGVlc2NhcGUiKTsKIH0KIAogCkBAIC02NDYzLDIxICs4MTQzLDUxIEBACiBzdGF0aWMgUHlPYmplY3QgKgogcG9zaXhfc3RhdHZmcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqcGF0aDsKKyAgICBQeU9iamVjdCAqcGF0aDsKICAgICBpbnQgcmVzOwogICAgIHN0cnVjdCBzdGF0dmZzIHN0OwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiczpzdGF0dmZzIiwgJnBhdGgpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6c3RhdHZmcyIsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJnBhdGgpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgcmVzID0gc3RhdHZmcyhwYXRoLCAmc3QpOworICAgIHJlcyA9IHN0YXR2ZnMoUHlCeXRlc19BU19TVFJJTkcocGF0aCksICZzdCk7CiAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICBpZiAocmVzICE9IDApCi0gICAgICAgIHJldHVybiBwb3NpeF9lcnJvcl93aXRoX2ZpbGVuYW1lKHBhdGgpOworICAgIGlmIChyZXMgIT0gMCkgeworICAgICAgICBwb3NpeF9lcnJvcl93aXRoX2ZpbGVuYW1lKFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGgpKTsKKyAgICAgICAgUHlfREVDUkVGKHBhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgUHlfREVDUkVGKHBhdGgpOwogCiAgICAgcmV0dXJuIF9weXN0YXR2ZnNfZnJvbXN0cnVjdHN0YXR2ZnMoc3QpOwogfQogI2VuZGlmIC8qIEhBVkVfU1RBVFZGUyAqLwogCisjaWZkZWYgTVNfV0lORE9XUworUHlEb2NfU1RSVkFSKHdpbjMyX19nZXRkaXNrdXNhZ2VfX2RvY19fLAorIl9nZXRkaXNrdXNhZ2UocGF0aCkgLT4gKHRvdGFsLCBmcmVlKVxuXG5cCitSZXR1cm4gZGlzayB1c2FnZSBzdGF0aXN0aWNzIGFib3V0IHRoZSBnaXZlbiBwYXRoIGFzICh0b3RhbCwgZnJlZSkgdHVwbGUuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCit3aW4zMl9fZ2V0ZGlza3VzYWdlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBCT09MIHJldHZhbDsKKyAgICBVTEFSR0VfSU5URUdFUiBfLCB0b3RhbCwgZnJlZTsKKyAgICBjb25zdCB3Y2hhcl90ICpwYXRoOworCisgICAgaWYgKCEgUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAidSIsICZwYXRoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmV0dmFsID0gR2V0RGlza0ZyZWVTcGFjZUV4VyhwYXRoLCAmXywgJnRvdGFsLCAmZnJlZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAocmV0dmFsID09IDApCisgICAgICAgIHJldHVybiBQeUVycl9TZXRGcm9tV2luZG93c0VycigwKTsKKworICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTEwpIiwgdG90YWwuUXVhZFBhcnQsIGZyZWUuUXVhZFBhcnQpOworfQorI2VuZGlmCisKKwogLyogVGhpcyBpcyB1c2VkIGZvciBmcGF0aGNvbmYoKSwgcGF0aGNvbmYoKSwgY29uZnN0cigpIGFuZCBzeXNjb25mKCkuCiAgKiBJdCBtYXBzIHN0cmluZ3MgcmVwcmVzZW50aW5nIGNvbmZpZ3VyYXRpb24gdmFyaWFibGUgbmFtZXMgdG8KICAqIGludGVnZXIgdmFsdWVzLCBhbGxvd2luZyB0aG9zZSBmdW5jdGlvbnMgdG8gYmUgY2FsbGVkIHdpdGggdGhlCkBAIC03NTQwLDkgKzkyNTAsMTAgQEAKICAgICBQeU9iamVjdCAqb2ZpbGVwYXRoOwogICAgIGNoYXIgKmZpbGVwYXRoOwogICAgIGNoYXIgKm9wZXJhdGlvbiA9IE5VTEw7CisgICAgd2NoYXJfdCAqd3BhdGgsICp3b3BlcmF0aW9uOwogICAgIEhJTlNUQU5DRSByYzsKIAotICAgIFB5T2JqZWN0ICp1bmlwYXRoLCAqd29wZXJhdGlvbiA9IE5VTEw7CisgICAgUHlPYmplY3QgKnVuaXBhdGgsICp1b3BlcmF0aW9uID0gTlVMTDsKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlV8czpzdGFydGZpbGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAmdW5pcGF0aCwgJm9wZXJhdGlvbikpIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKQEAgLTc1NTAsMjYgKzkyNjEsMzUgQEAKICAgICB9CiAKICAgICBpZiAob3BlcmF0aW9uKSB7Ci0gICAgICAgIHdvcGVyYXRpb24gPSBQeVVuaWNvZGVfRGVjb2RlQVNDSUkob3BlcmF0aW9uLAorICAgICAgICB1b3BlcmF0aW9uID0gUHlVbmljb2RlX0RlY29kZUFTQ0lJKG9wZXJhdGlvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJsZW4ob3BlcmF0aW9uKSwgTlVMTCk7Ci0gICAgICAgIGlmICghd29wZXJhdGlvbikgeworICAgICAgICBpZiAoIXVvcGVyYXRpb24pIHsKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgICAgICBvcGVyYXRpb24gPSBOVUxMOwogICAgICAgICAgICAgZ290byBub3JtYWw7CiAgICAgICAgIH0KICAgICB9CiAKKyAgICB3cGF0aCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUodW5pcGF0aCk7CisgICAgaWYgKHdwYXRoID09IE5VTEwpCisgICAgICAgIGdvdG8gbm9ybWFsOworICAgIGlmICh1b3BlcmF0aW9uKSB7CisgICAgICAgIHdvcGVyYXRpb24gPSBQeVVuaWNvZGVfQXNVbmljb2RlKHVvcGVyYXRpb24pOworICAgICAgICBpZiAod29wZXJhdGlvbiA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBub3JtYWw7CisgICAgfQorICAgIGVsc2UKKyAgICAgICAgd29wZXJhdGlvbiA9IE5VTEw7CisKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCi0gICAgcmMgPSBTaGVsbEV4ZWN1dGVXKChIV05EKTAsIHdvcGVyYXRpb24gPyBQeVVuaWNvZGVfQVNfVU5JQ09ERSh3b3BlcmF0aW9uKSA6IDAsCi0gICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHVuaXBhdGgpLAotICAgICAgICBOVUxMLCBOVUxMLCBTV19TSE9XTk9STUFMKTsKKyAgICByYyA9IFNoZWxsRXhlY3V0ZVcoKEhXTkQpMCwgd29wZXJhdGlvbiwgd3BhdGgsCisgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIFNXX1NIT1dOT1JNQUwpOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAKLSAgICBQeV9YREVDUkVGKHdvcGVyYXRpb24pOworICAgIFB5X1hERUNSRUYodW9wZXJhdGlvbik7CiAgICAgaWYgKHJjIDw9IChISU5TVEFOQ0UpMzIpIHsKLSAgICAgICAgUHlPYmplY3QgKmVycnZhbCA9IHdpbjMyX2Vycm9yX3VuaWNvZGUoInN0YXJ0ZmlsZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHVuaXBhdGgpKTsKLSAgICAgICAgcmV0dXJuIGVycnZhbDsKKyAgICAgICAgd2luMzJfZXJyb3Jfb2JqZWN0KCJzdGFydGZpbGUiLCB1bmlwYXRoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICByZXR1cm4gUHlfTm9uZTsKQEAgLTc1NzksNiArOTI5OSwxMCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvZmlsZXBhdGgsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZvcGVyYXRpb24pKQogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAod2luMzJfd2Fybl9ieXRlc19hcGkoKSkgeworICAgICAgICBQeV9ERUNSRUYob2ZpbGVwYXRoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogICAgIGZpbGVwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvZmlsZXBhdGgpOwogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICAgICByYyA9IFNoZWxsRXhlY3V0ZSgoSFdORCkwLCBvcGVyYXRpb24sIGZpbGVwYXRoLApAQCAtNzY1MCw3ICs5Mzc0LDcgQEAKIAogICAgICAgICAvKiBPYnRhaW4gaGFuZGxlIHRvIHRoZSBETEwgY29udGFpbmluZyBDcnlwdG9BUEkKICAgICAgICAgICAgVGhpcyBzaG91bGQgbm90IGZhaWwgICAgICAgICAqLwotICAgICAgICBoQWR2QVBJMzIgPSBHZXRNb2R1bGVIYW5kbGUoImFkdmFwaTMyLmRsbCIpOworICAgICAgICBoQWR2QVBJMzIgPSBHZXRNb2R1bGVIYW5kbGVXKEwiYWR2YXBpMzIuZGxsIik7CiAgICAgICAgIGlmKGhBZHZBUEkzMiA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIHdpbjMyX2Vycm9yKCJHZXRNb2R1bGVIYW5kbGUiLCBOVUxMKTsKIApAQCAtNzY5OSw2ICs5NDIzLDkgQEAKIGRldmljZV9lbmNvZGluZyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgaW50IGZkOworI2lmIGRlZmluZWQoTVNfV0lORE9XUykgfHwgZGVmaW5lZChNU19XSU42NCkKKyAgICBVSU5UIGNwOworI2VuZGlmCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpOmRldmljZV9lbmNvZGluZyIsICZmZCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmICghX1B5VmVyaWZ5X2ZkKGZkKSB8fCAhaXNhdHR5KGZkKSkgewpAQCAtNzcwNiwxNiArOTQzMywxNiBAQAogICAgICAgICByZXR1cm4gUHlfTm9uZTsKICAgICB9CiAjaWYgZGVmaW5lZChNU19XSU5ET1dTKSB8fCBkZWZpbmVkKE1TX1dJTjY0KQotICAgIGlmIChmZCA9PSAwKSB7Ci0gICAgICAgIGNoYXIgYnVmWzEwMF07Ci0gICAgICAgIHNwcmludGYoYnVmLCAiY3AlZCIsIEdldENvbnNvbGVDUCgpKTsKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKGJ1Zik7Ci0gICAgfQotICAgIGlmIChmZCA9PSAxIHx8IGZkID09IDIpIHsKLSAgICAgICAgY2hhciBidWZbMTAwXTsKLSAgICAgICAgc3ByaW50ZihidWYsICJjcCVkIiwgR2V0Q29uc29sZU91dHB1dENQKCkpOwotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoYnVmKTsKLSAgICB9CisgICAgaWYgKGZkID09IDApCisgICAgICAgIGNwID0gR2V0Q29uc29sZUNQKCk7CisgICAgZWxzZSBpZiAoZmQgPT0gMSB8fCBmZCA9PSAyKQorICAgICAgICBjcCA9IEdldENvbnNvbGVPdXRwdXRDUCgpOworICAgIGVsc2UKKyAgICAgICAgY3AgPSAwOworICAgIC8qIEdldENvbnNvbGVDUCgpIGFuZCBHZXRDb25zb2xlT3V0cHV0Q1AoKSByZXR1cm4gMCBpZiB0aGUgYXBwbGljYXRpb24KKyAgICAgICBoYXMgbm8gY29uc29sZSAqLworICAgIGlmIChjcCAhPSAwKQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoImNwJXUiLCAodW5zaWduZWQgaW50KWNwKTsKICNlbGlmIGRlZmluZWQoQ09ERVNFVCkKICAgICB7CiAgICAgICAgIGNoYXIgKmNvZGVzZXQgPSBubF9sYW5naW5mbyhDT0RFU0VUKTsKQEAgLTc4MzksNiArOTU2Niw5NTAgQEAKIH0KICNlbmRpZgogCisvKiBQb3NpeCAqYXQgZmFtaWx5IG9mIGZ1bmN0aW9uczoKKyAgICBmYWNjZXNzYXQsIGZjaG1vZGF0LCBmY2hvd25hdCwgZnN0YXRhdCwgZnV0aW1lc2F0LAorICAgIGxpbmthdCwgbWtkaXJhdCwgbWtub2RhdCwgb3BlbmF0LCByZWFkbGlua2F0LCByZW5hbWVhdCwgc3ltbGlua2F0LAorICAgIHVubGlua2F0LCB1dGltZW5zYXQsIG1rZmlmb2F0ICovCisKKyNpZmRlZiBIQVZFX0ZBQ0NFU1NBVAorUHlEb2NfU1RSVkFSKHBvc2l4X2ZhY2Nlc3NhdF9fZG9jX18sCisiZmFjY2Vzc2F0KGRpcmZkLCBwYXRoLCBtb2RlLCBmbGFncz0wKSAtPiBUcnVlIGlmIGdyYW50ZWQsIEZhbHNlIG90aGVyd2lzZVxuXG5cCitMaWtlIGFjY2VzcygpIGJ1dCBpZiBwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkaXJmZC5cblwKK2ZsYWdzIGlzIG9wdGlvbmFsIGFuZCBjYW4gYmUgY29uc3RydWN0ZWQgYnkgT1JpbmcgdG9nZXRoZXIgemVybyBvciBtb3JlXG5cCitvZiB0aGVzZSB2YWx1ZXM6IEFUX1NZTUxJTktfTk9GT0xMT1csIEFUX0VBQ0NFU1MuXG5cCitJZiBwYXRoIGlzIHJlbGF0aXZlIGFuZCBkaXJmZCBpcyB0aGUgc3BlY2lhbCB2YWx1ZSBBVF9GRENXRCwgdGhlbiBwYXRoXG5cCitpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2ZhY2Nlc3NhdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9wYXRoOworICAgIGNoYXIgKnBhdGg7CisgICAgaW50IG1vZGU7CisgICAgaW50IHJlczsKKyAgICBpbnQgZGlyZmQsIGZsYWdzID0gMDsKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlPJml8aTpmYWNjZXNzYXQiLAorICAgICAgICAgICAgJmRpcmZkLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJm1vZGUsICZmbGFncykpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gZmFjY2Vzc2F0KGRpcmZkLCBwYXRoLCBtb2RlLCBmbGFncyk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcocmVzID09IDApOworfQorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0ZDSE1PREFUCitQeURvY19TVFJWQVIocG9zaXhfZmNobW9kYXRfX2RvY19fLAorImZjaG1vZGF0KGRpcmZkLCBwYXRoLCBtb2RlLCBmbGFncz0wKVxuXG5cCitMaWtlIGNobW9kKCkgYnV0IGlmIHBhdGggaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvIGRpcmZkLlxuXAorZmxhZ3MgaXMgb3B0aW9uYWwgYW5kIG1heSBiZSAwIG9yIEFUX1NZTUxJTktfTk9GT0xMT1cuXG5cCitJZiBwYXRoIGlzIHJlbGF0aXZlIGFuZCBkaXJmZCBpcyB0aGUgc3BlY2lhbCB2YWx1ZSBBVF9GRENXRCwgdGhlbiBwYXRoXG5cCitpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2ZjaG1vZGF0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgZGlyZmQsIG1vZGUsIHJlczsKKyAgICBpbnQgZmxhZ3MgPSAwOworICAgIFB5T2JqZWN0ICpvcGF0aDsKKyAgICBjaGFyICpwYXRoOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZpfGk6ZmNobW9kYXQiLAorICAgICAgICAgICAgJmRpcmZkLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJm1vZGUsICZmbGFncykpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IGZjaG1vZGF0KGRpcmZkLCBwYXRoLCBtb2RlLCBmbGFncyk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZiAvKiBIQVZFX0ZDSE1PREFUICovCisKKyNpZmRlZiBIQVZFX0ZDSE9XTkFUCitQeURvY19TVFJWQVIocG9zaXhfZmNob3duYXRfX2RvY19fLAorImZjaG93bmF0KGRpcmZkLCBwYXRoLCB1aWQsIGdpZCwgZmxhZ3M9MClcblxuXAorTGlrZSBjaG93bigpIGJ1dCBpZiBwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkaXJmZC5cblwKK2ZsYWdzIGlzIG9wdGlvbmFsIGFuZCBtYXkgYmUgMCBvciBBVF9TWU1MSU5LX05PRk9MTE9XLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mY2hvd25hdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9wYXRoOworICAgIGludCBkaXJmZCwgcmVzOworICAgIGxvbmcgdWlkLCBnaWQ7CisgICAgaW50IGZsYWdzID0gMDsKKyAgICBjaGFyICpwYXRoOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZsbHxpOmZjaG93bmF0IiwKKyAgICAgICAgICAgICZkaXJmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsICZ1aWQsICZnaWQsICZmbGFncykpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IGZjaG93bmF0KGRpcmZkLCBwYXRoLCAodWlkX3QpIHVpZCwgKGdpZF90KSBnaWQsIGZsYWdzKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgaWYgKHJlcyA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmIC8qIEhBVkVfRkNIT1dOQVQgKi8KKworI2lmZGVmIEhBVkVfRlNUQVRBVAorUHlEb2NfU1RSVkFSKHBvc2l4X2ZzdGF0YXRfX2RvY19fLAorImZzdGF0YXQoZGlyZmQsIHBhdGgsIGZsYWdzPTApIC0+IHN0YXQgcmVzdWx0XG5cblwKK0xpa2Ugc3RhdCgpIGJ1dCBpZiBwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkaXJmZC5cblwKK2ZsYWdzIGlzIG9wdGlvbmFsIGFuZCBtYXkgYmUgMCBvciBBVF9TWU1MSU5LX05PRk9MTE9XLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mc3RhdGF0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgY2hhciAqcGF0aDsKKyAgICBTVFJVQ1RfU1RBVCBzdDsKKyAgICBpbnQgZGlyZmQsIHJlcywgZmxhZ3MgPSAwOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZ8aTpmc3RhdGF0IiwKKyAgICAgICAgICAgICZkaXJmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsICZmbGFncykpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSBmc3RhdGF0KGRpcmZkLCBwYXRoLCAmc3QsIGZsYWdzKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgaWYgKHJlcyAhPSAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKworICAgIHJldHVybiBfcHlzdGF0X2Zyb21zdHJ1Y3RzdGF0KCZzdCk7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfRlVUSU1FU0FUCitQeURvY19TVFJWQVIocG9zaXhfZnV0aW1lc2F0X19kb2NfXywKKyJmdXRpbWVzYXQoZGlyZmQsIHBhdGhbLCAoYXRpbWUsIG10aW1lKV0pXG5cCitMaWtlIHV0aW1lKCkgYnV0IGlmIHBhdGggaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvIGRpcmZkLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mdXRpbWVzYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpvcGF0aDsKKyAgICBjaGFyICpwYXRoOworICAgIGludCByZXMsIGRpcmZkOworICAgIFB5T2JqZWN0KiBhcmcgPSBQeV9Ob25lOworICAgIHRpbWVfdCBhdGltZSwgbXRpbWU7CisgICAgbG9uZyBhdXNlYywgbXVzZWM7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlPJnxPOmZ1dGltZXNhdCIsCisgICAgICAgICAgICAmZGlyZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmYXJnKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpOworICAgIGlmIChhcmcgPT0gUHlfTm9uZSkgeworICAgICAgICAvKiBvcHRpb25hbCB0aW1lIHZhbHVlcyBub3QgZ2l2ZW4gKi8KKyAgICAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgICAgICByZXMgPSBmdXRpbWVzYXQoZGlyZmQsIHBhdGgsIE5VTEwpOworICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIH0KKyAgICBlbHNlIGlmICghUHlUdXBsZV9DaGVjayhhcmcpIHx8IFB5VHVwbGVfU2l6ZShhcmcpICE9IDIpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAiZnV0aW1lc2F0KCkgYXJnIDMgbXVzdCBiZSBhIHR1cGxlIChhdGltZSwgbXRpbWUpIik7CisgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKGV4dHJhY3RfdGltZShQeVR1cGxlX0dFVF9JVEVNKGFyZywgMCksCisgICAgICAgICAgICAgICAgICAgICAgICAgJmF0aW1lLCAmYXVzZWMpID09IC0xKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGV4dHJhY3RfdGltZShQeVR1cGxlX0dFVF9JVEVNKGFyZywgMSksCisgICAgICAgICAgICAgICAgICAgICAgICAgJm10aW1lLCAmbXVzZWMpID09IC0xKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHsKKyNpZmRlZiBIQVZFX1VUSU1FTlNBVAorICAgICAgICBzdHJ1Y3QgdGltZXNwZWMgYnVmWzJdOworICAgICAgICBidWZbMF0udHZfc2VjID0gYXRpbWU7CisgICAgICAgIGJ1ZlswXS50dl9uc2VjID0gYXVzZWM7CisgICAgICAgIGJ1ZlsxXS50dl9zZWMgPSBtdGltZTsKKyAgICAgICAgYnVmWzFdLnR2X25zZWMgPSBtdXNlYzsKKyAgICAgICAgcmVzID0gdXRpbWVuc2F0KGRpcmZkLCBwYXRoLCBidWYsIDApOworI2Vsc2UKKyAgICAgICAgc3RydWN0IHRpbWV2YWwgYnVmWzJdOworICAgICAgICBidWZbMF0udHZfc2VjID0gYXRpbWU7CisgICAgICAgIGJ1ZlswXS50dl91c2VjID0gYXVzZWM7CisgICAgICAgIGJ1ZlsxXS50dl9zZWMgPSBtdGltZTsKKyAgICAgICAgYnVmWzFdLnR2X3VzZWMgPSBtdXNlYzsKKyAgICAgICAgcmVzID0gZnV0aW1lc2F0KGRpcmZkLCBwYXRoLCBidWYpOworI2VuZGlmCisgICAgICAgIH0KKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICBpZiAocmVzIDwgMCkgeworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfTElOS0FUCitQeURvY19TVFJWQVIocG9zaXhfbGlua2F0X19kb2NfXywKKyJsaW5rYXQoc3JjZmQsIHNyY3BhdGgsIGRzdGZkLCBkc3RwYXRoLCBmbGFncz0wKVxuXG5cCitMaWtlIGxpbmsoKSBidXQgaWYgc3JjcGF0aCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gc3JjZmRcblwKK2FuZCBpZiBkc3RwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkc3RmZC5cblwKK2ZsYWdzIGlzIG9wdGlvbmFsIGFuZCBtYXkgYmUgMCBvciBBVF9TWU1MSU5LX0ZPTExPVy5cblwKK0lmIHNyY3BhdGggaXMgcmVsYXRpdmUgYW5kIHNyY2ZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuXG5cCitzcmNwYXRoIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiBUaGlzXG5cCithbHNvIGFwcGxpZXMgZm9yIGRzdHBhdGguIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9saW5rYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpvc3JjLCAqb2RzdDsKKyAgICBjaGFyICpzcmMsICpkc3Q7CisgICAgaW50IHJlcywgc3JjZmQsIGRzdGZkOworICAgIGludCBmbGFncyA9IDA7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlPJmlPJnxpOmxpbmthdCIsCisgICAgICAgICAgICAmc3JjZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9zcmMsICZkc3RmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb2RzdCwgJmZsYWdzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgc3JjID0gUHlCeXRlc19Bc1N0cmluZyhvc3JjKTsKKyAgICBkc3QgPSBQeUJ5dGVzX0FzU3RyaW5nKG9kc3QpOworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSBsaW5rYXQoc3JjZmQsIHNyYywgZHN0ZmQsIGRzdCwgZmxhZ3MpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfREVDUkVGKG9zcmMpOworICAgIFB5X0RFQ1JFRihvZHN0KTsKKyAgICBpZiAocmVzIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYgLyogSEFWRV9MSU5LQVQgKi8KKworI2lmZGVmIEhBVkVfTUtESVJBVAorUHlEb2NfU1RSVkFSKHBvc2l4X21rZGlyYXRfX2RvY19fLAorIm1rZGlyYXQoZGlyZmQsIHBhdGgsIG1vZGU9MG83NzcpXG5cblwKK0xpa2UgbWtkaXIoKSBidXQgaWYgcGF0aCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gZGlyZmQuXG5cCitJZiBwYXRoIGlzIHJlbGF0aXZlIGFuZCBkaXJmZCBpcyB0aGUgc3BlY2lhbCB2YWx1ZSBBVF9GRENXRCwgdGhlbiBwYXRoXG5cCitpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X21rZGlyYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCByZXMsIGRpcmZkOworICAgIFB5T2JqZWN0ICpvcGF0aDsKKyAgICBjaGFyICpwYXRoOworICAgIGludCBtb2RlID0gMDc3NzsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8mfGk6bWtkaXJhdCIsCisgICAgICAgICAgICAmZGlyZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmbW9kZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gbWtkaXJhdChkaXJmZCwgcGF0aCwgbW9kZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCisjaWYgZGVmaW5lZChIQVZFX01LTk9EQVQpICYmIGRlZmluZWQoSEFWRV9NQUtFREVWKQorUHlEb2NfU1RSVkFSKHBvc2l4X21rbm9kYXRfX2RvY19fLAorIm1rbm9kYXQoZGlyZmQsIHBhdGgsIG1vZGU9MG82MDAsIGRldmljZT0wKVxuXG5cCitMaWtlIG1rbm9kKCkgYnV0IGlmIHBhdGggaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvIGRpcmZkLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9ta25vZGF0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgY2hhciAqZmlsZW5hbWU7CisgICAgaW50IG1vZGUgPSAwNjAwOworICAgIGludCBkZXZpY2UgPSAwOworICAgIGludCByZXMsIGRpcmZkOworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8mfGlpOm1rbm9kYXQiLCAmZGlyZmQsCisgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJm1vZGUsICZkZXZpY2UpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBmaWxlbmFtZSA9IFB5Qnl0ZXNfQVNfU1RSSU5HKG9wYXRoKTsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgcmVzID0gbWtub2RhdChkaXJmZCwgZmlsZW5hbWUsIG1vZGUsIGRldmljZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCisjaWZkZWYgSEFWRV9PUEVOQVQKK1B5RG9jX1NUUlZBUihwb3NpeF9vcGVuYXRfX2RvY19fLAorIm9wZW5hdChkaXJmZCwgcGF0aCwgZmxhZywgbW9kZT0wbzc3NykgLT4gZmRcblxuXAorTGlrZSBvcGVuKCkgYnV0IGlmIHBhdGggaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvIGRpcmZkLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9vcGVuYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpvZmlsZTsKKyAgICBjaGFyICpmaWxlOworICAgIGludCBmbGFnLCBkaXJmZCwgZmQ7CisgICAgaW50IG1vZGUgPSAwNzc3OworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZpfGk6b3BlbmF0IiwKKyAgICAgICAgICAgICZkaXJmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb2ZpbGUsCisgICAgICAgICAgICAmZmxhZywgJm1vZGUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBmaWxlID0gUHlCeXRlc19Bc1N0cmluZyhvZmlsZSk7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIGZkID0gb3BlbmF0KGRpcmZkLCBmaWxlLCBmbGFnLCBtb2RlKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIFB5X0RFQ1JFRihvZmlsZSk7CisgICAgaWYgKGZkIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZygobG9uZylmZCk7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfUkVBRExJTktBVAorUHlEb2NfU1RSVkFSKHBvc2l4X3JlYWRsaW5rYXRfX2RvY19fLAorInJlYWRsaW5rYXQoZGlyZmQsIHBhdGgpIC0+IHBhdGhcblxuXAorTGlrZSByZWFkbGluaygpIGJ1dCBpZiBwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkaXJmZC5cblwKK0lmIHBhdGggaXMgcmVsYXRpdmUgYW5kIGRpcmZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuIHBhdGhcblwKK2lzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfcmVhZGxpbmthdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnYsICpvcGF0aDsKKyAgICBjaGFyIGJ1ZltNQVhQQVRITEVOXTsKKyAgICBjaGFyICpwYXRoOworICAgIGludCBuLCBkaXJmZDsKKyAgICBpbnQgYXJnX2lzX3VuaWNvZGUgPSAwOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyY6cmVhZGxpbmthdCIsCisgICAgICAgICAgICAmZGlyZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGgpOworICAgIHYgPSBQeVNlcXVlbmNlX0dldEl0ZW0oYXJncywgMSk7CisgICAgaWYgKHYgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYob3BhdGgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoUHlVbmljb2RlX0NoZWNrKHYpKSB7CisgICAgICAgIGFyZ19pc191bmljb2RlID0gMTsKKyAgICB9CisgICAgUHlfREVDUkVGKHYpOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIG4gPSByZWFkbGlua2F0KGRpcmZkLCBwYXRoLCBidWYsIChpbnQpIHNpemVvZiBidWYpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICBpZiAobiA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworCisgICAgaWYgKGFyZ19pc191bmljb2RlKQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemUoYnVmLCBuKTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKGJ1Ziwgbik7Cit9CisjZW5kaWYgLyogSEFWRV9SRUFETElOS0FUICovCisKKyNpZmRlZiBIQVZFX1JFTkFNRUFUCitQeURvY19TVFJWQVIocG9zaXhfcmVuYW1lYXRfX2RvY19fLAorInJlbmFtZWF0KG9sZGRpcmZkLCBvbGRwYXRoLCBuZXdkaXJmZCwgbmV3cGF0aClcblxuXAorTGlrZSByZW5hbWUoKSBidXQgaWYgb2xkcGF0aCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG9cblwKK29sZGRpcmZkIGFuZCBpZiBuZXdwYXRoIGlzIHJlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBuZXdkaXJmZC5cblwKK0lmIG9sZHBhdGggaXMgcmVsYXRpdmUgYW5kIG9sZGRpcmZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuXG5cCitvbGRwYXRoIGlzIGludGVycHJldGVkIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiBUaGlzXG5cCithbHNvIGFwcGxpZXMgZm9yIG5ld3BhdGguIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9yZW5hbWVhdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IHJlczsKKyAgICBQeU9iamVjdCAqb3BhdGhvbGQsICpvcGF0aG5ldzsKKyAgICBjaGFyICpvcGF0aCwgKm5wYXRoOworICAgIGludCBvbGRmZCwgbmV3ZmQ7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlPJmlPJjpyZW5hbWVhdCIsCisgICAgICAgICAgICAmb2xkZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRob2xkLCAmbmV3ZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRobmV3KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgb3BhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRob2xkKTsKKyAgICBucGF0aCA9IFB5Qnl0ZXNfQXNTdHJpbmcob3BhdGhuZXcpOworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICByZXMgPSByZW5hbWVhdChvbGRmZCwgb3BhdGgsIG5ld2ZkLCBucGF0aCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGhvbGQpOworICAgIFB5X0RFQ1JFRihvcGF0aG5ldyk7CisgICAgaWYgKHJlcyA8IDApCisgICAgICAgIHJldHVybiBwb3NpeF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCisKKyNpZiBIQVZFX1NZTUxJTktBVAorUHlEb2NfU1RSVkFSKHBvc2l4X3N5bWxpbmthdF9fZG9jX18sCisic3ltbGlua2F0KHNyYywgZHN0ZmQsIGRzdClcblxuXAorTGlrZSBzeW1saW5rKCkgYnV0IGlmIGRzdCBpcyByZWxhdGl2ZSwgaXQgaXMgdGFrZW4gYXMgcmVsYXRpdmUgdG8gZHN0ZmQuXG5cCitJZiBkc3QgaXMgcmVsYXRpdmUgYW5kIGRzdGZkIGlzIHRoZSBzcGVjaWFsIHZhbHVlIEFUX0ZEQ1dELCB0aGVuIGRzdFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zeW1saW5rYXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCByZXMsIGRzdGZkOworICAgIFB5T2JqZWN0ICpvc3JjLCAqb2RzdDsKKyAgICBjaGFyICpzcmMsICpkc3Q7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8maU8mOnN5bWxpbmthdCIsCisgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvc3JjLCAmZHN0ZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9kc3QpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBzcmMgPSBQeUJ5dGVzX0FzU3RyaW5nKG9zcmMpOworICAgIGRzdCA9IFB5Qnl0ZXNfQXNTdHJpbmcob2RzdCk7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IHN5bWxpbmthdChzcmMsIGRzdGZkLCBkc3QpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgUHlfREVDUkVGKG9zcmMpOworICAgIFB5X0RFQ1JFRihvZHN0KTsKKyAgICBpZiAocmVzIDwgMCkKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYgLyogSEFWRV9TWU1MSU5LQVQgKi8KKworI2lmZGVmIEhBVkVfVU5MSU5LQVQKK1B5RG9jX1NUUlZBUihwb3NpeF91bmxpbmthdF9fZG9jX18sCisidW5saW5rYXQoZGlyZmQsIHBhdGgsIGZsYWdzPTApXG5cblwKK0xpa2UgdW5saW5rKCkgYnV0IGlmIHBhdGggaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvIGRpcmZkLlxuXAorZmxhZ3MgaXMgb3B0aW9uYWwgYW5kIG1heSBiZSAwIG9yIEFUX1JFTU9WRURJUi4gSWYgQVRfUkVNT1ZFRElSIGlzXG5cCitzcGVjaWZpZWQsIHVubGlua2F0KCkgYmVoYXZlcyBsaWtlIHJtZGlyKCkuXG5cCitJZiBwYXRoIGlzIHJlbGF0aXZlIGFuZCBkaXJmZCBpcyB0aGUgc3BlY2lhbCB2YWx1ZSBBVF9GRENXRCwgdGhlbiBwYXRoXG5cCitpcyBpbnRlcnByZXRlZCByZWxhdGl2ZSB0byB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X3VubGlua2F0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgZGlyZmQsIHJlcywgZmxhZ3MgPSAwOworICAgIFB5T2JqZWN0ICpvcGF0aDsKKyAgICBjaGFyICpwYXRoOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyZ8aTp1bmxpbmthdCIsCisgICAgICAgICAgICAmZGlyZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm9wYXRoLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBwYXRoID0gUHlCeXRlc19Bc1N0cmluZyhvcGF0aCk7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IHVubGlua2F0KGRpcmZkLCBwYXRoLCBmbGFncyk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCisjaWZkZWYgSEFWRV9VVElNRU5TQVQKK1B5RG9jX1NUUlZBUihwb3NpeF91dGltZW5zYXRfX2RvY19fLAorInV0aW1lbnNhdChkaXJmZCwgcGF0aFssIGF0aW1lPShhdGltZV9zZWMsIGF0aW1lX25zZWMpLFxuXAorICAgIG10aW1lPShtdGltZV9zZWMsIG10aW1lX25zZWMpLCBmbGFncz0wXSlcblwKK3V0aW1lbnNhdChkaXJmZCwgcGF0aCwgTm9uZSwgTm9uZSwgZmxhZ3MpXG5cblwKK1VwZGF0ZXMgdGhlIHRpbWVzdGFtcHMgb2YgYSBmaWxlIHdpdGggbmFub3NlY29uZCBwcmVjaXNpb24uIElmIHBhdGggaXNcblwKK3JlbGF0aXZlLCBpdCBpcyB0YWtlbiBhcyByZWxhdGl2ZSB0byBkaXJmZC5cblwKK0lmIGF0aW1lIGFuZCBtdGltZSBhcmUgYm90aCBOb25lLCB3aGljaCBpcyB0aGUgZGVmYXVsdCwgc2V0IGF0aW1lIGFuZFxuXAorbXRpbWUgdG8gdGhlIGN1cnJlbnQgdGltZS5cblwKK2ZsYWdzIGlzIG9wdGlvbmFsIGFuZCBtYXkgYmUgMCBvciBBVF9TWU1MSU5LX05PRk9MTE9XLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuXG5cCitJZiAqX25zZWMgaXMgc3BlY2lmaWVkIGFzIFVUSU1FX05PVywgdGhlIHRpbWVzdGFtcCBpcyB1cGRhdGVkIHRvIHRoZVxuXAorY3VycmVudCB0aW1lLlxuXAorSWYgKl9uc2VjIGlzIHNwZWNpZmllZCBhcyBVVElNRV9PTUlULCB0aGUgdGltZXN0YW1wIGlzIG5vdCB1cGRhdGVkLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfdXRpbWVuc2F0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKK3sKKyAgICBQeU9iamVjdCAqb3BhdGg7CisgICAgY2hhciAqcGF0aDsKKyAgICBpbnQgcmVzLCBkaXJmZCwgZmxhZ3MgPSAwOworICAgIFB5T2JqZWN0ICphdGltZSA9IFB5X05vbmU7CisgICAgUHlPYmplY3QgKm10aW1lID0gUHlfTm9uZTsKKworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiZGlyZmQiLCAicGF0aCIsICJhdGltZSIsICJtdGltZSIsICJmbGFncyIsIE5VTEx9OworCisgICAgc3RydWN0IHRpbWVzcGVjIGJ1ZlsyXTsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgImlPJnxPT2k6dXRpbWVuc2F0Iiwga3dsaXN0LAorICAgICAgICAgICAgJmRpcmZkLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZvcGF0aCwgJmF0aW1lLCAmbXRpbWUsICZmbGFncykpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGggPSBQeUJ5dGVzX0FzU3RyaW5nKG9wYXRoKTsKKyAgICBpZiAoYXRpbWUgPT0gUHlfTm9uZSAmJiBtdGltZSA9PSBQeV9Ob25lKSB7CisgICAgICAgIC8qIG9wdGlvbmFsIHRpbWUgdmFsdWVzIG5vdCBnaXZlbiAqLworICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgICAgIHJlcyA9IHV0aW1lbnNhdChkaXJmZCwgcGF0aCwgTlVMTCwgZmxhZ3MpOworICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIH0KKyAgICBlbHNlIGlmICghUHlUdXBsZV9DaGVjayhhdGltZSkgfHwgUHlUdXBsZV9TaXplKGF0aW1lKSAhPSAyKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAidXRpbWVuc2F0KCkgYXJnIDMgbXVzdCBiZSBhIHR1cGxlIChhdGltZV9zZWMsIGF0aW1lX25zZWMpIik7CisgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIGlmICghUHlUdXBsZV9DaGVjayhtdGltZSkgfHwgUHlUdXBsZV9TaXplKG10aW1lKSAhPSAyKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAidXRpbWVuc2F0KCkgYXJnIDQgbXVzdCBiZSBhIHR1cGxlIChtdGltZV9zZWMsIG10aW1lX25zZWMpIik7CisgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGF0aW1lLCAibGw6dXRpbWVuc2F0IiwKKyAgICAgICAgICAgICAgICAmKGJ1ZlswXS50dl9zZWMpLCAmKGJ1ZlswXS50dl9uc2VjKSkpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihvcGF0aCk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUobXRpbWUsICJsbDp1dGltZW5zYXQiLAorICAgICAgICAgICAgICAgICYoYnVmWzFdLnR2X3NlYyksICYoYnVmWzFdLnR2X25zZWMpKSkgeworICAgICAgICAgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICAgICAgcmVzID0gdXRpbWVuc2F0KGRpcmZkLCBwYXRoLCBidWYsIGZsYWdzKTsKKyAgICAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICB9CisgICAgUHlfREVDUkVGKG9wYXRoKTsKKyAgICBpZiAocmVzIDwgMCkgeworICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICB9CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfTUtGSUZPQVQKK1B5RG9jX1NUUlZBUihwb3NpeF9ta2ZpZm9hdF9fZG9jX18sCisibWtmaWZvYXQoZGlyZmQsIHBhdGgsIG1vZGU9MG82NjYpXG5cblwKK0xpa2UgbWtmaWZvKCkgYnV0IGlmIHBhdGggaXMgcmVsYXRpdmUsIGl0IGlzIHRha2VuIGFzIHJlbGF0aXZlIHRvIGRpcmZkLlxuXAorSWYgcGF0aCBpcyByZWxhdGl2ZSBhbmQgZGlyZmQgaXMgdGhlIHNwZWNpYWwgdmFsdWUgQVRfRkRDV0QsIHRoZW4gcGF0aFxuXAoraXMgaW50ZXJwcmV0ZWQgcmVsYXRpdmUgdG8gdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9ta2ZpZm9hdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9wYXRoOworICAgIGNoYXIgKmZpbGVuYW1lOworICAgIGludCBtb2RlID0gMDY2NjsKKyAgICBpbnQgcmVzLCBkaXJmZDsKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImlPJnxpOm1rZmlmb2F0IiwKKyAgICAgICAgICAgICZkaXJmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb3BhdGgsICZtb2RlKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgZmlsZW5hbWUgPSBQeUJ5dGVzX0FTX1NUUklORyhvcGF0aCk7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIHJlcyA9IG1rZmlmb2F0KGRpcmZkLCBmaWxlbmFtZSwgbW9kZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBQeV9ERUNSRUYob3BhdGgpOworICAgIGlmIChyZXMgPCAwKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKyNlbmRpZgorCisjaWZkZWYgVVNFX1hBVFRSUworCitzdGF0aWMgaW50Cit0cnlfZ2V0eGF0dHIoY29uc3QgY2hhciAqcGF0aCwgY29uc3QgY2hhciAqbmFtZSwKKyAgICAgICAgICAgICBzc2l6ZV90ICgqZ2V0KShjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgdm9pZCAqLCBzaXplX3QpLAorICAgICAgICAgICAgIFB5X3NzaXplX3QgYnVmX3NpemUsIFB5T2JqZWN0ICoqcmVzKQoreworICAgIFB5T2JqZWN0ICp2YWx1ZTsKKyAgICBQeV9zc2l6ZV90IGxlbjsKKworICAgIGFzc2VydChidWZfc2l6ZSA8PSBYQVRUUl9TSVpFX01BWCk7CisgICAgdmFsdWUgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGJ1Zl9zaXplKTsKKyAgICBpZiAoIXZhbHVlKQorICAgICAgICByZXR1cm4gMDsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTOworICAgIGxlbiA9IGdldChwYXRoLCBuYW1lLCBQeUJ5dGVzX0FTX1NUUklORyh2YWx1ZSksIGJ1Zl9zaXplKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUzsKKyAgICBpZiAobGVuIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYodmFsdWUpOworICAgICAgICBpZiAoZXJybm8gPT0gRVJBTkdFKSB7CisgICAgICAgICAgICB2YWx1ZSA9IE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBwb3NpeF9lcnJvcigpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSBpZiAobGVuICE9IGJ1Zl9zaXplKSB7CisgICAgICAgIC8qIENhbiBvbmx5IHNocmluay4gKi8KKyAgICAgICAgX1B5Qnl0ZXNfUmVzaXplKCZ2YWx1ZSwgbGVuKTsKKyAgICB9CisgICAgKnJlcyA9IHZhbHVlOworICAgIHJldHVybiAxOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorZ2V0eGF0dHJfY29tbW9uKGNvbnN0IGNoYXIgKnBhdGgsIFB5T2JqZWN0ICpuYW1lX29iaiwKKyAgICAgICAgICAgICAgICBzc2l6ZV90ICgqZ2V0KShjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgdm9pZCAqLCBzaXplX3QpKQoreworICAgIFB5T2JqZWN0ICp2YWx1ZTsKKyAgICBjb25zdCBjaGFyICpuYW1lID0gUHlCeXRlc19BU19TVFJJTkcobmFtZV9vYmopOworCisgICAgLyogVHJ5IGEgc21hbGwgdmFsdWUgZmlyc3QuICovCisgICAgaWYgKCF0cnlfZ2V0eGF0dHIocGF0aCwgbmFtZSwgZ2V0LCAxMjgsICZ2YWx1ZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICh2YWx1ZSkKKyAgICAgICAgcmV0dXJuIHZhbHVlOworICAgIC8qIE5vdyB0aGUgbWF4aW11bSBwb3NzaWJsZSBvbmUuICovCisgICAgaWYgKCF0cnlfZ2V0eGF0dHIocGF0aCwgbmFtZSwgZ2V0LCBYQVRUUl9TSVpFX01BWCwgJnZhbHVlKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgYXNzZXJ0KHZhbHVlKTsKKyAgICByZXR1cm4gdmFsdWU7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9nZXR4YXR0cl9fZG9jX18sCisiZ2V0eGF0dHIocGF0aCwgYXR0cikgLT4gdmFsdWVcblxuXAorUmV0dXJuIHRoZSB2YWx1ZSBvZiBleHRlbmRlZCBhdHRyaWJ1dGUgKm5hbWUqIG9uICpwYXRoKi4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3Bvc2l4X2dldHhhdHRyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqcGF0aCwgKnJlcywgKm5hbWU7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyY6Z2V0eGF0dHIiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZuYW1lKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzID0gZ2V0eGF0dHJfY29tbW9uKFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGgpLCBuYW1lLCBnZXR4YXR0cik7CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIFB5X0RFQ1JFRihuYW1lKTsKKyAgICByZXR1cm4gcmVzOworfQorCitQeURvY19TVFJWQVIocG9zaXhfbGdldHhhdHRyX19kb2NfXywKKyJsZ2V0eGF0dHIocGF0aCwgYXR0cikgLT4gdmFsdWVcblxuXAorTGlrZSBnZXR4YXR0ciBidXQgZG9uJ3QgZm9sbG93IHN5bWxpbmtzLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfbGdldHhhdHRyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqcGF0aCwgKnJlcywgKm5hbWU7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyY6bGdldHhhdHRyIiwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmcGF0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmbmFtZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJlcyA9IGdldHhhdHRyX2NvbW1vbihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgbmFtZSwgbGdldHhhdHRyKTsKKyAgICBQeV9ERUNSRUYocGF0aCk7CisgICAgUHlfREVDUkVGKG5hbWUpOworICAgIHJldHVybiByZXM7Cit9CisKK3N0YXRpYyBzc2l6ZV90Cit3cmFwX2ZnZXR4YXR0cihjb25zdCBjaGFyICpwYXRoLCBjb25zdCBjaGFyICpuYW1lLCB2b2lkICp2YWx1ZSwgc2l6ZV90IHNpemUpCit7CisgICAgLyogSGFjayB0byBzaGFyZSBjb2RlLiAqLworICAgIHJldHVybiBmZ2V0eGF0dHIoKGludCkoUHlfdWludHB0cl90KXBhdGgsIG5hbWUsIHZhbHVlLCBzaXplKTsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X2ZnZXR4YXR0cl9fZG9jX18sCisiZmdldHhhdHRyKGZkLCBhdHRyKSAtPiB2YWx1ZVxuXG5cCitMaWtlIGdldHhhdHRyIGJ1dCBvcGVyYXRlIG9uIGEgZmQgaW5zdGVhZCBvZiBhIHBhdGguIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mZ2V0eGF0dHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpyZXMsICpuYW1lOworICAgIGludCBmZDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8mOmZnZXR4YXR0ciIsICZmZCwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmbmFtZSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJlcyA9IGdldHhhdHRyX2NvbW1vbigoY29uc3QgY2hhciAqKShQeV91aW50cHRyX3QpZmQsIG5hbWUsIHdyYXBfZmdldHhhdHRyKTsKKyAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgcmV0dXJuIHJlczsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X3NldHhhdHRyX19kb2NfXywKKyJzZXR4YXR0cihwYXRoLCBhdHRyLCB2YWx1ZSwgZmxhZ3M9MClcblxuXAorU2V0IGV4dGVuZGVkIGF0dHJpYnV0ZSAqYXR0ciogb24gKnBhdGgqIHRvICp2YWx1ZSouIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9zZXR4YXR0cihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnBhdGgsICpuYW1lOworICAgIFB5X2J1ZmZlciBkYXRhOworICAgIGludCBmbGFncyA9IDAsIGVycjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZPJnkqfGk6c2V0eGF0dHIiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICZwYXRoLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZuYW1lLCAmZGF0YSwgJmZsYWdzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUzsKKyAgICBlcnIgPSBzZXR4YXR0cihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgUHlCeXRlc19BU19TVFJJTkcobmFtZSksCisgICAgICAgICAgICAgICAgICAgZGF0YS5idWYsIGRhdGEubGVuLCBmbGFncyk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFM7CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIFB5X0RFQ1JFRihuYW1lKTsKKyAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZkYXRhKTsKKyAgICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X2xzZXR4YXR0cl9fZG9jX18sCisibHNldHhhdHRyKHBhdGgsIGF0dHIsIHZhbHVlLCBmbGFncz0wKVxuXG5cCitMaWtlIHNldHhhdHRyIGJ1dCBkb24ndCBmb2xsb3cgc3ltbGlua3MuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9sc2V0eGF0dHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpwYXRoLCAqbmFtZTsKKyAgICBQeV9idWZmZXIgZGF0YTsKKyAgICBpbnQgZmxhZ3MgPSAwLCBlcnI7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyZ5KnxpOmxzZXR4YXR0ciIsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJnBhdGgsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm5hbWUsICZkYXRhLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTOworICAgIGVyciA9IGxzZXR4YXR0cihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgUHlCeXRlc19BU19TVFJJTkcobmFtZSksCisgICAgICAgICAgICAgICAgICAgIGRhdGEuYnVmLCBkYXRhLmxlbiwgZmxhZ3MpOworICAgIFB5X0VORF9BTExPV19USFJFQURTOworICAgIFB5X0RFQ1JFRihwYXRoKTsKKyAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgUHlCdWZmZXJfUmVsZWFzZSgmZGF0YSk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9mc2V0eGF0dHJfX2RvY19fLAorImZzZXR4YXR0cihmZCwgYXR0ciwgdmFsdWUsIGZsYWdzPTApXG5cblwKK0xpa2Ugc2V0eGF0dHIgYnV0IG9wZXJhdGVzIG9uICpmZCogaW5zdGVhZCBvZiBhIHBhdGguIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mc2V0eGF0dHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5X2J1ZmZlciBkYXRhOworICAgIGNvbnN0IGNoYXIgKm5hbWU7CisgICAgaW50IGZkLCBmbGFncyA9IDAsIGVycjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaU8meSp8aTpmc2V0eGF0dHIiLCAmZmQsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hbWUsICZkYXRhLCAmZmxhZ3MpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTOworICAgIGVyciA9IGZzZXR4YXR0cihmZCwgUHlCeXRlc19BU19TVFJJTkcobmFtZSksIGRhdGEuYnVmLCBkYXRhLmxlbiwgZmxhZ3MpOworICAgIFB5X0VORF9BTExPV19USFJFQURTOworICAgIFB5X0RFQ1JFRihuYW1lKTsKKyAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZkYXRhKTsKKyAgICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gcG9zaXhfZXJyb3IoKTsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKHBvc2l4X3JlbW92ZXhhdHRyX19kb2NfXywKKyJyZW1vdmV4YXR0cihwYXRoLCBhdHRyKVxuXG5cCitSZW1vdmUgZXh0ZW5kZWQgYXR0cmlidXRlICphdHRyKiBvbiAqcGF0aCouIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9yZW1vdmV4YXR0cihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnBhdGgsICpuYW1lOworICAgIGludCBlcnI7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mTyY6cmVtb3ZleGF0dHIiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZuYW1lKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUzsKKyAgICBlcnIgPSByZW1vdmV4YXR0cihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgUHlCeXRlc19BU19TVFJJTkcobmFtZSkpOworICAgIFB5X0VORF9BTExPV19USFJFQURTOworICAgIFB5X0RFQ1JFRihwYXRoKTsKKyAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9scmVtb3ZleGF0dHJfX2RvY19fLAorImxyZW1vdmV4YXR0cihwYXRoLCBhdHRyKVxuXG5cCitMaWtlIHJlbW92ZXhhdHRyIGJ1dCBkb24ndCBmb2xsb3cgc3ltbGlua3MuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9scmVtb3ZleGF0dHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpwYXRoLCAqbmFtZTsKKyAgICBpbnQgZXJyOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJk8mOmxyZW1vdmV4YXR0ciIsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJnBhdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm5hbWUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTOworICAgIGVyciA9IGxyZW1vdmV4YXR0cihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgUHlCeXRlc19BU19TVFJJTkcobmFtZSkpOworICAgIFB5X0VORF9BTExPV19USFJFQURTOworICAgIFB5X0RFQ1JFRihwYXRoKTsKKyAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9mcmVtb3ZleGF0dHJfX2RvY19fLAorImZyZW1vdmV4YXR0cihmZCwgYXR0cilcblxuXAorTGlrZSByZW1vdmV4YXR0ciBidXQgb3BlcmF0ZXMgb24gYSBmaWxlIGRlc2NyaXB0b3IuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitwb3NpeF9mcmVtb3ZleGF0dHIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpuYW1lOworICAgIGludCBmZCwgZXJyOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTyY6ZnJlbW92ZXhhdHRyIiwgJmZkLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZuYW1lKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUzsKKyAgICBlcnIgPSBmcmVtb3ZleGF0dHIoZmQsIFB5Qnl0ZXNfQVNfU1RSSU5HKG5hbWUpKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUzsKKyAgICBQeV9ERUNSRUYobmFtZSk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIHBvc2l4X2Vycm9yKCk7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK3N0YXRpYyBQeV9zc2l6ZV90Cit0cnlfbGlzdHhhdHRyKGNvbnN0IGNoYXIgKnBhdGgsIHNzaXplX3QgKCpsaXN0KShjb25zdCBjaGFyICosIGNoYXIgKiwgc2l6ZV90KSwKKyAgICAgICAgICAgICAgUHlfc3NpemVfdCBidWZfc2l6ZSwgY2hhciAqKmJ1ZikKK3sKKyAgICBQeV9zc2l6ZV90IGxlbjsKKworICAgICpidWYgPSBQeU1lbV9NQUxMT0MoYnVmX3NpemUpOworICAgIGlmICghKmJ1ZikgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFM7CisgICAgbGVuID0gbGlzdChwYXRoLCAqYnVmLCBidWZfc2l6ZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFM7CisgICAgaWYgKGxlbiA8IDApIHsKKyAgICAgICAgUHlNZW1fRlJFRSgqYnVmKTsKKyAgICAgICAgaWYgKGVycm5vICE9IEVSQU5HRSkKKyAgICAgICAgICAgIHBvc2l4X2Vycm9yKCk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgcmV0dXJuIGxlbjsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2xpc3R4YXR0cl9jb21tb24oY29uc3QgY2hhciAqcGF0aCwgc3NpemVfdCAoKmxpc3QpKGNvbnN0IGNoYXIgKiwgY2hhciAqLCBzaXplX3QpKQoreworICAgIFB5T2JqZWN0ICpyZXMsICphdHRyOworICAgIFB5X3NzaXplX3QgbGVuLCBlcnIsIHN0YXJ0LCBpOworICAgIGNoYXIgKmJ1ZjsKKworICAgIGxlbiA9IHRyeV9saXN0eGF0dHIocGF0aCwgbGlzdCwgMjU2LCAmYnVmKTsKKyAgICBpZiAobGVuIDwgMCkgeworICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBsZW4gPSB0cnlfbGlzdHhhdHRyKHBhdGgsIGxpc3QsIFhBVFRSX0xJU1RfTUFYLCAmYnVmKTsKKyAgICAgICAgaWYgKGxlbiA8IDApCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcmVzID0gUHlMaXN0X05ldygwKTsKKyAgICBpZiAoIXJlcykgeworICAgICAgICBQeU1lbV9GUkVFKGJ1Zik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBmb3IgKHN0YXJ0ID0gaSA9IDA7IGkgPCBsZW47IGkrKykgeworICAgICAgICBpZiAoIWJ1ZltpXSkgeworICAgICAgICAgICAgYXR0ciA9IFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHRBbmRTaXplKCZidWZbc3RhcnRdLCBpIC0gc3RhcnQpOworICAgICAgICAgICAgaWYgKCFhdHRyKSB7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcyk7CisgICAgICAgICAgICAgICAgUHlNZW1fRlJFRShidWYpOworICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZXJyID0gUHlMaXN0X0FwcGVuZChyZXMsIGF0dHIpOworICAgICAgICAgICAgUHlfREVDUkVGKGF0dHIpOworICAgICAgICAgICAgaWYgKGVycikgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXMpOworICAgICAgICAgICAgICAgIFB5TWVtX0ZSRUUoYnVmKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHN0YXJ0ID0gaSArIDE7CisgICAgICAgIH0KKyAgICB9CisgICAgUHlNZW1fRlJFRShidWYpOworICAgIHJldHVybiByZXM7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9saXN0eGF0dHJfX2RvY19fLAorImxpc3R4YXR0cihwYXRoKVxuXG5cCitSZXR1cm4gYSBsaXN0IG9mIGV4dGVuZGVkIGF0dHJpYnV0ZXMgb24gKnBhdGgqLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfbGlzdHhhdHRyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqcGF0aCwgKnJlczsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyY6bGlzdHhhdHRyIiwgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmcGF0aCkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJlcyA9IGxpc3R4YXR0cl9jb21tb24oUHlCeXRlc19BU19TVFJJTkcocGF0aCksIGxpc3R4YXR0cik7CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIHJldHVybiByZXM7Cit9CisKK1B5RG9jX1NUUlZBUihwb3NpeF9sbGlzdHhhdHRyX19kb2NfXywKKyJsbGlzdHhhdHRyKHBhdGgpXG5cblwKK0xpa2UgbGlzdHhhdHRyIGJ1dCBkb24ndCBmb2xsb3cgc3ltbGlua3MuLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfbGxpc3R4YXR0cihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnBhdGgsICpyZXM7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mOmxsaXN0eGF0dHIiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzID0gbGlzdHhhdHRyX2NvbW1vbihQeUJ5dGVzX0FTX1NUUklORyhwYXRoKSwgbGxpc3R4YXR0cik7CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIHJldHVybiByZXM7Cit9CisKK3N0YXRpYyBzc2l6ZV90Cit3cmFwX2ZsaXN0eGF0dHIoY29uc3QgY2hhciAqcGF0aCwgY2hhciAqYnVmLCBzaXplX3QgbGVuKQoreworICAgIC8qIEhhY2sgdG8gc2hhcmUgY29kZS4gKi8KKyAgICByZXR1cm4gZmxpc3R4YXR0cigoaW50KShQeV91aW50cHRyX3QpcGF0aCwgYnVmLCBsZW4pOworfQorCitQeURvY19TVFJWQVIocG9zaXhfZmxpc3R4YXR0cl9fZG9jX18sCisiZmxpc3R4YXR0cihwYXRoKVxuXG5cCitMaWtlIGZsaXN0eGF0dHIgYnV0IG9wZXJhdGVzIG9uIGEgZmlsZSBkZXNjcmlwdG9yLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorcG9zaXhfZmxpc3R4YXR0cihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgbG9uZyBmZDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaTpmbGlzdHhhdHRyIiwgJmZkKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIGxpc3R4YXR0cl9jb21tb24oKGNvbnN0IGNoYXIgKikoUHlfdWludHB0cl90KWZkLCB3cmFwX2ZsaXN0eGF0dHIpOworfQorCisjZW5kaWYgLyogVVNFX1hBVFRSUyAqLworCiBzdGF0aWMgUHlNZXRob2REZWYgcG9zaXhfbWV0aG9kc1tdID0gewogICAgIHsiYWNjZXNzIiwgICAgICAgICAgcG9zaXhfYWNjZXNzLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2FjY2Vzc19fZG9jX199LAogI2lmZGVmIEhBVkVfVFRZTkFNRQpAQCAtNzg4MywxMSArMTA1NTQsMjAgQEAKICAgICB7ImxpbmsiLCAgICAgICAgICAgIHBvc2l4X2xpbmssIE1FVEhfVkFSQVJHUywgcG9zaXhfbGlua19fZG9jX199LAogI2VuZGlmIC8qIEhBVkVfTElOSyAqLwogICAgIHsibGlzdGRpciIsICAgICAgICAgcG9zaXhfbGlzdGRpciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9saXN0ZGlyX19kb2NfX30sCisjaWZkZWYgSEFWRV9GRE9QRU5ESVIKKyAgICB7ImZkbGlzdGRpciIsICAgICAgIHBvc2l4X2ZkbGlzdGRpciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mZGxpc3RkaXJfX2RvY19ffSwKKyNlbmRpZgogICAgIHsibHN0YXQiLCAgICAgICAgICAgcG9zaXhfbHN0YXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfbHN0YXRfX2RvY19ffSwKICAgICB7Im1rZGlyIiwgICAgICAgICAgIHBvc2l4X21rZGlyLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X21rZGlyX19kb2NfX30sCiAjaWZkZWYgSEFWRV9OSUNFCiAgICAgeyJuaWNlIiwgICAgICAgICAgICBwb3NpeF9uaWNlLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X25pY2VfX2RvY19ffSwKICNlbmRpZiAvKiBIQVZFX05JQ0UgKi8KKyNpZmRlZiBIQVZFX0dFVFBSSU9SSVRZCisgICAgeyJnZXRwcmlvcml0eSIsICAgICBwb3NpeF9nZXRwcmlvcml0eSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9nZXRwcmlvcml0eV9fZG9jX199LAorI2VuZGlmIC8qIEhBVkVfR0VUUFJJT1JJVFkgKi8KKyNpZmRlZiBIQVZFX1NFVFBSSU9SSVRZCisgICAgeyJzZXRwcmlvcml0eSIsICAgICBwb3NpeF9zZXRwcmlvcml0eSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9zZXRwcmlvcml0eV9fZG9jX199LAorI2VuZGlmIC8qIEhBVkVfU0VUUFJJT1JJVFkgKi8KICNpZmRlZiBIQVZFX1JFQURMSU5LCiAgICAgeyJyZWFkbGluayIsICAgICAgICBwb3NpeF9yZWFkbGluaywgTUVUSF9WQVJBUkdTLCBwb3NpeF9yZWFkbGlua19fZG9jX199LAogI2VuZGlmIC8qIEhBVkVfUkVBRExJTksgKi8KQEAgLTc4OTUsNiArMTA1NzUsNyBAQAogICAgIHsicmVhZGxpbmsiLCAgICAgICAgd2luX3JlYWRsaW5rLCBNRVRIX1ZBUkFSR1MsIHdpbl9yZWFkbGlua19fZG9jX199LAogI2VuZGlmIC8qICFkZWZpbmVkKEhBVkVfUkVBRExJTkspICYmIGRlZmluZWQoTVNfV0lORE9XUykgKi8KICAgICB7InJlbmFtZSIsICAgICAgICAgIHBvc2l4X3JlbmFtZSwgTUVUSF9WQVJBUkdTLCBwb3NpeF9yZW5hbWVfX2RvY19ffSwKKyAgICB7InJlcGxhY2UiLCAgICAgICAgIHBvc2l4X3JlcGxhY2UsIE1FVEhfVkFSQVJHUywgcG9zaXhfcmVwbGFjZV9fZG9jX199LAogICAgIHsicm1kaXIiLCAgICAgICAgICAgcG9zaXhfcm1kaXIsIE1FVEhfVkFSQVJHUywgcG9zaXhfcm1kaXJfX2RvY19ffSwKICAgICB7InN0YXQiLCAgICAgICAgICAgIHBvc2l4X3N0YXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfc3RhdF9fZG9jX199LAogICAgIHsic3RhdF9mbG9hdF90aW1lcyIsIHN0YXRfZmxvYXRfdGltZXMsIE1FVEhfVkFSQVJHUywgc3RhdF9mbG9hdF90aW1lc19fZG9jX199LApAQCAtNzkxNSw2ICsxMDU5NiwxNSBAQAogICAgIHsidW5saW5rIiwgICAgICAgICAgcG9zaXhfdW5saW5rLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3VubGlua19fZG9jX199LAogICAgIHsicmVtb3ZlIiwgICAgICAgICAgcG9zaXhfdW5saW5rLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3JlbW92ZV9fZG9jX199LAogICAgIHsidXRpbWUiLCAgICAgICAgICAgcG9zaXhfdXRpbWUsIE1FVEhfVkFSQVJHUywgcG9zaXhfdXRpbWVfX2RvY19ffSwKKyNpZmRlZiBIQVZFX0ZVVElNRVMKKyAgICB7ImZ1dGltZXMiLCAgICAgICAgIHBvc2l4X2Z1dGltZXMsIE1FVEhfVkFSQVJHUywgcG9zaXhfZnV0aW1lc19fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9MVVRJTUVTCisgICAgeyJsdXRpbWVzIiwgICAgICAgICBwb3NpeF9sdXRpbWVzLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2x1dGltZXNfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfRlVUSU1FTlMKKyAgICB7ImZ1dGltZW5zIiwgICAgICAgIHBvc2l4X2Z1dGltZW5zLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2Z1dGltZW5zX19kb2NfX30sCisjZW5kaWYKICNpZmRlZiBIQVZFX1RJTUVTCiAgICAgeyJ0aW1lcyIsICAgICAgICAgICBwb3NpeF90aW1lcywgTUVUSF9OT0FSR1MsIHBvc2l4X3RpbWVzX19kb2NfX30sCiAjZW5kaWYgLyogSEFWRV9USU1FUyAqLwpAQCAtNzkyMyw2ICsxMDYxMyw5IEBACiAgICAgeyJleGVjdiIsICAgICAgICAgICBwb3NpeF9leGVjdiwgTUVUSF9WQVJBUkdTLCBwb3NpeF9leGVjdl9fZG9jX199LAogICAgIHsiZXhlY3ZlIiwgICAgICAgICAgcG9zaXhfZXhlY3ZlLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2V4ZWN2ZV9fZG9jX199LAogI2VuZGlmIC8qIEhBVkVfRVhFQ1YgKi8KKyNpZmRlZiBIQVZFX0ZFWEVDVkUKKyAgICB7ImZleGVjdmUiLCAgICAgICAgICBwb3NpeF9mZXhlY3ZlLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2ZleGVjdmVfX2RvY19ffSwKKyNlbmRpZgogI2lmZGVmIEhBVkVfU1BBV05WCiAgICAgeyJzcGF3bnYiLCAgICAgICAgICBwb3NpeF9zcGF3bnYsIE1FVEhfVkFSQVJHUywgcG9zaXhfc3Bhd252X19kb2NfX30sCiAgICAgeyJzcGF3bnZlIiwgICAgICAgICBwb3NpeF9zcGF3bnZlLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3NwYXdudmVfX2RvY19ffSwKQEAgLTc5MzcsNiArMTA2MzAsMzIgQEAKICNpZmRlZiBIQVZFX0ZPUksKICAgICB7ImZvcmsiLCAgICAgICAgICAgIHBvc2l4X2ZvcmssIE1FVEhfTk9BUkdTLCBwb3NpeF9mb3JrX19kb2NfX30sCiAjZW5kaWYgLyogSEFWRV9GT1JLICovCisjaWZkZWYgSEFWRV9TQ0hFRF9ICisjaWZkZWYgSEFWRV9TQ0hFRF9HRVRfUFJJT1JJVFlfTUFYCisgICAgeyJzY2hlZF9nZXRfcHJpb3JpdHlfbWF4IiwgcG9zaXhfc2NoZWRfZ2V0X3ByaW9yaXR5X21heCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9zY2hlZF9nZXRfcHJpb3JpdHlfbWF4X19kb2NfX30sCisgICAgeyJzY2hlZF9nZXRfcHJpb3JpdHlfbWluIiwgcG9zaXhfc2NoZWRfZ2V0X3ByaW9yaXR5X21pbiwgTUVUSF9WQVJBUkdTLCBwb3NpeF9zY2hlZF9nZXRfcHJpb3JpdHlfbWluX19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVFBBUkFNCisgICAgeyJzY2hlZF9nZXRwYXJhbSIsIHBvc2l4X3NjaGVkX2dldHBhcmFtLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3NjaGVkX2dldHBhcmFtX19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVFNDSEVEVUxFUgorICAgIHsic2NoZWRfZ2V0c2NoZWR1bGVyIiwgcG9zaXhfc2NoZWRfZ2V0c2NoZWR1bGVyLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3NjaGVkX2dldHNjaGVkdWxlcl9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9TQ0hFRF9SUl9HRVRfSU5URVJWQUwKKyAgICB7InNjaGVkX3JyX2dldF9pbnRlcnZhbCIsIHBvc2l4X3NjaGVkX3JyX2dldF9pbnRlcnZhbCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9zY2hlZF9ycl9nZXRfaW50ZXJ2YWxfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfU0NIRURfU0VUUEFSQU0KKyAgICB7InNjaGVkX3NldHBhcmFtIiwgcG9zaXhfc2NoZWRfc2V0cGFyYW0sIE1FVEhfVkFSQVJHUywgcG9zaXhfc2NoZWRfc2V0cGFyYW1fX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfU0NIRURfU0VUU0NIRURVTEVSCisgICAgeyJzY2hlZF9zZXRzY2hlZHVsZXIiLCBwb3NpeF9zY2hlZF9zZXRzY2hlZHVsZXIsIE1FVEhfVkFSQVJHUywgcG9zaXhfc2NoZWRfc2V0c2NoZWR1bGVyX19kb2NfX30sCisjZW5kaWYKKyAgICB7InNjaGVkX3lpZWxkIiwgICAgIHBvc2l4X3NjaGVkX3lpZWxkLCBNRVRIX05PQVJHUywgcG9zaXhfc2NoZWRfeWllbGRfX2RvY19ffSwKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVEFGRklOSVRZCisgICAgeyJzY2hlZF9zZXRhZmZpbml0eSIsIHBvc2l4X3NjaGVkX3NldGFmZmluaXR5LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3NjaGVkX3NldGFmZmluaXR5X19kb2NfX30sCisgICAgeyJzY2hlZF9nZXRhZmZpbml0eSIsIHBvc2l4X3NjaGVkX2dldGFmZmluaXR5LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3NjaGVkX2dldGFmZmluaXR5X19kb2NfX30sCisjZW5kaWYKKyNlbmRpZiAvKiBIQVZFX1NDSEVEX0ggKi8KICNpZiBkZWZpbmVkKEhBVkVfT1BFTlBUWSkgfHwgZGVmaW5lZChIQVZFX19HRVRQVFkpIHx8IGRlZmluZWQoSEFWRV9ERVZfUFRNWCkKICAgICB7Im9wZW5wdHkiLCAgICAgICAgIHBvc2l4X29wZW5wdHksIE1FVEhfTk9BUkdTLCBwb3NpeF9vcGVucHR5X19kb2NfX30sCiAjZW5kaWYgLyogSEFWRV9PUEVOUFRZIHx8IEhBVkVfX0dFVFBUWSB8fCBIQVZFX0RFVl9QVE1YICovCkBAIC03OTUyLDYgKzEwNjcxLDkgQEAKICNpZmRlZiBIQVZFX0dFVEdJRAogICAgIHsiZ2V0Z2lkIiwgICAgICAgICAgcG9zaXhfZ2V0Z2lkLCBNRVRIX05PQVJHUywgcG9zaXhfZ2V0Z2lkX19kb2NfX30sCiAjZW5kaWYgLyogSEFWRV9HRVRHSUQgKi8KKyNpZmRlZiBIQVZFX0dFVEdST1VQTElTVAorICAgIHsiZ2V0Z3JvdXBsaXN0IiwgICAgcG9zaXhfZ2V0Z3JvdXBsaXN0LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2dldGdyb3VwbGlzdF9fZG9jX199LAorI2VuZGlmCiAjaWZkZWYgSEFWRV9HRVRHUk9VUFMKICAgICB7ImdldGdyb3VwcyIsICAgICAgIHBvc2l4X2dldGdyb3VwcywgTUVUSF9OT0FSR1MsIHBvc2l4X2dldGdyb3Vwc19fZG9jX199LAogI2VuZGlmCkBAIC04MDIxLDYgKzEwNzQzLDkgQEAKICNpZmRlZiBIQVZFX1dBSVQ0CiAgICAgeyJ3YWl0NCIsICAgICAgICAgICBwb3NpeF93YWl0NCwgTUVUSF9WQVJBUkdTLCBwb3NpeF93YWl0NF9fZG9jX199LAogI2VuZGlmIC8qIEhBVkVfV0FJVDQgKi8KKyNpZiBkZWZpbmVkKEhBVkVfV0FJVElEKSAmJiAhZGVmaW5lZChfX0FQUExFX18pCisgICAgeyJ3YWl0aWQiLCAgICAgICAgICBwb3NpeF93YWl0aWQsIE1FVEhfVkFSQVJHUywgcG9zaXhfd2FpdGlkX19kb2NfX30sCisjZW5kaWYKICNpZiBkZWZpbmVkKEhBVkVfV0FJVFBJRCkgfHwgZGVmaW5lZChIQVZFX0NXQUlUKQogICAgIHsid2FpdHBpZCIsICAgICAgICAgcG9zaXhfd2FpdHBpZCwgTUVUSF9WQVJBUkdTLCBwb3NpeF93YWl0cGlkX19kb2NfX30sCiAjZW5kaWYgLyogSEFWRV9XQUlUUElEICovCkBAIC04MDQ1LDE0ICsxMDc3MCwzNiBAQAogICAgIHsiZGV2aWNlX2VuY29kaW5nIiwgZGV2aWNlX2VuY29kaW5nLCBNRVRIX1ZBUkFSR1MsIGRldmljZV9lbmNvZGluZ19fZG9jX199LAogICAgIHsiZHVwIiwgICAgICAgICAgICAgcG9zaXhfZHVwLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2R1cF9fZG9jX199LAogICAgIHsiZHVwMiIsICAgICAgICAgICAgcG9zaXhfZHVwMiwgTUVUSF9WQVJBUkdTLCBwb3NpeF9kdXAyX19kb2NfX30sCisjaWZkZWYgSEFWRV9MT0NLRgorICAgIHsibG9ja2YiLCAgICAgICAgICAgcG9zaXhfbG9ja2YsIE1FVEhfVkFSQVJHUywgcG9zaXhfbG9ja2ZfX2RvY19ffSwKKyNlbmRpZgogICAgIHsibHNlZWsiLCAgICAgICAgICAgcG9zaXhfbHNlZWssIE1FVEhfVkFSQVJHUywgcG9zaXhfbHNlZWtfX2RvY19ffSwKICAgICB7InJlYWQiLCAgICAgICAgICAgIHBvc2l4X3JlYWQsIE1FVEhfVkFSQVJHUywgcG9zaXhfcmVhZF9fZG9jX199LAorI2lmZGVmIEhBVkVfUkVBRFYKKyAgICB7InJlYWR2IiwgICAgICAgICAgIHBvc2l4X3JlYWR2LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3JlYWR2X19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX1BSRUFECisgICAgeyJwcmVhZCIsICAgICAgICAgICBwb3NpeF9wcmVhZCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9wcmVhZF9fZG9jX199LAorI2VuZGlmCiAgICAgeyJ3cml0ZSIsICAgICAgICAgICBwb3NpeF93cml0ZSwgTUVUSF9WQVJBUkdTLCBwb3NpeF93cml0ZV9fZG9jX199LAorI2lmZGVmIEhBVkVfV1JJVEVWCisgICAgeyJ3cml0ZXYiLCAgICAgICAgICBwb3NpeF93cml0ZXYsIE1FVEhfVkFSQVJHUywgcG9zaXhfd3JpdGV2X19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX1BXUklURQorICAgIHsicHdyaXRlIiwgICAgICAgICAgcG9zaXhfcHdyaXRlLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3B3cml0ZV9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9TRU5ERklMRQorICAgIHsic2VuZGZpbGUiLCAgICAgICAgKFB5Q0Z1bmN0aW9uKXBvc2l4X3NlbmRmaWxlLCBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l4X3NlbmRmaWxlX19kb2NfX30sCisjZW5kaWYKICAgICB7ImZzdGF0IiwgICAgICAgICAgIHBvc2l4X2ZzdGF0LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2ZzdGF0X19kb2NfX30sCiAgICAgeyJpc2F0dHkiLCAgICAgICAgICBwb3NpeF9pc2F0dHksIE1FVEhfVkFSQVJHUywgcG9zaXhfaXNhdHR5X19kb2NfX30sCiAjaWZkZWYgSEFWRV9QSVBFCiAgICAgeyJwaXBlIiwgICAgICAgICAgICBwb3NpeF9waXBlLCBNRVRIX05PQVJHUywgcG9zaXhfcGlwZV9fZG9jX199LAogI2VuZGlmCisjaWZkZWYgSEFWRV9QSVBFMgorICAgIHsicGlwZTIiLCAgICAgICAgICAgcG9zaXhfcGlwZTIsIE1FVEhfTywgcG9zaXhfcGlwZTJfX2RvY19ffSwKKyNlbmRpZgogI2lmZGVmIEhBVkVfTUtGSUZPCiAgICAgeyJta2ZpZm8iLCAgICAgICAgICBwb3NpeF9ta2ZpZm8sIE1FVEhfVkFSQVJHUywgcG9zaXhfbWtmaWZvX19kb2NfX30sCiAjZW5kaWYKQEAgLTgwNjcsNiArMTA4MTQsMTUgQEAKICNpZmRlZiBIQVZFX0ZUUlVOQ0FURQogICAgIHsiZnRydW5jYXRlIiwgICAgICAgcG9zaXhfZnRydW5jYXRlLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2Z0cnVuY2F0ZV9fZG9jX199LAogI2VuZGlmCisjaWZkZWYgSEFWRV9UUlVOQ0FURQorICAgIHsidHJ1bmNhdGUiLCAgICAgICAgcG9zaXhfdHJ1bmNhdGUsIE1FVEhfVkFSQVJHUywgcG9zaXhfdHJ1bmNhdGVfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfUE9TSVhfRkFMTE9DQVRFCisgICAgeyJwb3NpeF9mYWxsb2NhdGUiLCBwb3NpeF9wb3NpeF9mYWxsb2NhdGUsIE1FVEhfVkFSQVJHUywgcG9zaXhfcG9zaXhfZmFsbG9jYXRlX19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX1BPU0lYX0ZBRFZJU0UKKyAgICB7InBvc2l4X2ZhZHZpc2UiLCAgIHBvc2l4X3Bvc2l4X2ZhZHZpc2UsIE1FVEhfVkFSQVJHUywgcG9zaXhfcG9zaXhfZmFkdmlzZV9fZG9jX199LAorI2VuZGlmCiAjaWZkZWYgSEFWRV9QVVRFTlYKICAgICB7InB1dGVudiIsICAgICAgICAgIHBvc2l4X3B1dGVudiwgTUVUSF9WQVJBUkdTLCBwb3NpeF9wdXRlbnZfX2RvY19ffSwKICNlbmRpZgpAQCAtODA4MCw2ICsxMDgzNiw5IEBACiAjaWZkZWYgSEFWRV9GU1lOQwogICAgIHsiZnN5bmMiLCAgICAgICBwb3NpeF9mc3luYywgTUVUSF9PLCBwb3NpeF9mc3luY19fZG9jX199LAogI2VuZGlmCisjaWZkZWYgSEFWRV9TWU5DCisgICAgeyJzeW5jIiwgICAgICAgIHBvc2l4X3N5bmMsIE1FVEhfTk9BUkdTLCBwb3NpeF9zeW5jX19kb2NfX30sCisjZW5kaWYKICNpZmRlZiBIQVZFX0ZEQVRBU1lOQwogICAgIHsiZmRhdGFzeW5jIiwgICBwb3NpeF9mZGF0YXN5bmMsICBNRVRIX08sIHBvc2l4X2ZkYXRhc3luY19fZG9jX199LAogI2VuZGlmCkBAIC04MTMzLDYgKzEwODkyLDcgQEAKICAgICB7Il9nZXRmaW5hbHBhdGhuYW1lIiwgICAgICAgcG9zaXhfX2dldGZpbmFscGF0aG5hbWUsIE1FVEhfVkFSQVJHUywgTlVMTH0sCiAgICAgeyJfZ2V0ZmlsZWluZm9ybWF0aW9uIiwgICAgIHBvc2l4X19nZXRmaWxlaW5mb3JtYXRpb24sIE1FVEhfVkFSQVJHUywgTlVMTH0sCiAgICAgeyJfaXNkaXIiLCAgICAgICAgICAgICAgICAgIHBvc2l4X19pc2RpciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9faXNkaXJfX2RvY19ffSwKKyAgICB7Il9nZXRkaXNrdXNhZ2UiLCAgICAgICAgICAgd2luMzJfX2dldGRpc2t1c2FnZSwgTUVUSF9WQVJBUkdTLCB3aW4zMl9fZ2V0ZGlza3VzYWdlX19kb2NfX30sCiAjZW5kaWYKICNpZmRlZiBIQVZFX0dFVExPQURBVkcKICAgICB7ImdldGxvYWRhdmciLCAgICAgIHBvc2l4X2dldGxvYWRhdmcsIE1FVEhfTk9BUkdTLCBwb3NpeF9nZXRsb2FkYXZnX19kb2NfX30sCkBAIC04MTU2LDYgKzEwOTE2LDY4IEBACiAgICAgeyJnZXRyZXNnaWQiLCAgICAgICBwb3NpeF9nZXRyZXNnaWQsIE1FVEhfTk9BUkdTLCBwb3NpeF9nZXRyZXNnaWRfX2RvY19ffSwKICNlbmRpZgogCisvKiBwb3NpeCAqYXQgZmFtaWx5IG9mIGZ1bmN0aW9ucyAqLworI2lmZGVmIEhBVkVfRkFDQ0VTU0FUCisgICAgeyJmYWNjZXNzYXQiLCAgICAgICBwb3NpeF9mYWNjZXNzYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfZmFjY2Vzc2F0X19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX0ZDSE1PREFUCisgICAgeyJmY2htb2RhdCIsICAgICAgICBwb3NpeF9mY2htb2RhdCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mY2htb2RhdF9fZG9jX199LAorI2VuZGlmIC8qIEhBVkVfRkNITU9EQVQgKi8KKyNpZmRlZiBIQVZFX0ZDSE9XTkFUCisgICAgeyJmY2hvd25hdCIsICAgICAgICBwb3NpeF9mY2hvd25hdCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mY2hvd25hdF9fZG9jX199LAorI2VuZGlmIC8qIEhBVkVfRkNIT1dOQVQgKi8KKyNpZmRlZiBIQVZFX0ZTVEFUQVQKKyAgICB7ImZzdGF0YXQiLCAgICAgICAgIHBvc2l4X2ZzdGF0YXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfZnN0YXRhdF9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9GVVRJTUVTQVQKKyAgICB7ImZ1dGltZXNhdCIsICAgICAgIHBvc2l4X2Z1dGltZXNhdCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mdXRpbWVzYXRfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfTElOS0FUCisgICAgeyJsaW5rYXQiLCAgICAgICAgICBwb3NpeF9saW5rYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfbGlua2F0X19kb2NfX30sCisjZW5kaWYgLyogSEFWRV9MSU5LQVQgKi8KKyNpZmRlZiBIQVZFX01LRElSQVQKKyAgICB7Im1rZGlyYXQiLCAgICAgICAgIHBvc2l4X21rZGlyYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfbWtkaXJhdF9fZG9jX199LAorI2VuZGlmCisjaWYgZGVmaW5lZChIQVZFX01LTk9EQVQpICYmIGRlZmluZWQoSEFWRV9NQUtFREVWKQorICAgIHsibWtub2RhdCIsICAgICAgICAgcG9zaXhfbWtub2RhdCwgTUVUSF9WQVJBUkdTLCBwb3NpeF9ta25vZGF0X19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX09QRU5BVAorICAgIHsib3BlbmF0IiwgICAgICBwb3NpeF9vcGVuYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfb3BlbmF0X19kb2NfX30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX1JFQURMSU5LQVQKKyAgICB7InJlYWRsaW5rYXQiLCAgICAgIHBvc2l4X3JlYWRsaW5rYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfcmVhZGxpbmthdF9fZG9jX199LAorI2VuZGlmIC8qIEhBVkVfUkVBRExJTktBVCAqLworI2lmZGVmIEhBVkVfUkVOQU1FQVQKKyAgICB7InJlbmFtZWF0IiwgICAgICAgIHBvc2l4X3JlbmFtZWF0LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3JlbmFtZWF0X19kb2NfX30sCisjZW5kaWYKKyNpZiBIQVZFX1NZTUxJTktBVAorICAgIHsic3ltbGlua2F0IiwgICAgICAgcG9zaXhfc3ltbGlua2F0LCBNRVRIX1ZBUkFSR1MsIHBvc2l4X3N5bWxpbmthdF9fZG9jX199LAorI2VuZGlmIC8qIEhBVkVfU1lNTElOS0FUICovCisjaWZkZWYgSEFWRV9VTkxJTktBVAorICAgIHsidW5saW5rYXQiLCAgICAgICAgcG9zaXhfdW5saW5rYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfdW5saW5rYXRfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfVVRJTUVOU0FUCisgICAgeyJ1dGltZW5zYXQiLCAgICAgICAoUHlDRnVuY3Rpb24pcG9zaXhfdXRpbWVuc2F0LAorICAgICAgICAgICAgICAgICAgICAgICAgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUywKKyAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l4X3V0aW1lbnNhdF9fZG9jX199LAorI2VuZGlmCisjaWZkZWYgSEFWRV9NS0ZJRk9BVAorICAgIHsibWtmaWZvYXQiLCAgICAgICAgcG9zaXhfbWtmaWZvYXQsIE1FVEhfVkFSQVJHUywgcG9zaXhfbWtmaWZvYXRfX2RvY19ffSwKKyNlbmRpZgorI2lmZGVmIFVTRV9YQVRUUlMKKyAgICB7InNldHhhdHRyIiwgcG9zaXhfc2V0eGF0dHIsIE1FVEhfVkFSQVJHUywgcG9zaXhfc2V0eGF0dHJfX2RvY19ffSwKKyAgICB7ImxzZXR4YXR0ciIsIHBvc2l4X2xzZXR4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9sc2V0eGF0dHJfX2RvY19ffSwKKyAgICB7ImZzZXR4YXR0ciIsIHBvc2l4X2ZzZXR4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mc2V0eGF0dHJfX2RvY19ffSwKKyAgICB7ImdldHhhdHRyIiwgcG9zaXhfZ2V0eGF0dHIsIE1FVEhfVkFSQVJHUywgcG9zaXhfZ2V0eGF0dHJfX2RvY19ffSwKKyAgICB7ImxnZXR4YXR0ciIsIHBvc2l4X2xnZXR4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9sZ2V0eGF0dHJfX2RvY19ffSwKKyAgICB7ImZnZXR4YXR0ciIsIHBvc2l4X2ZnZXR4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mZ2V0eGF0dHJfX2RvY19ffSwKKyAgICB7InJlbW92ZXhhdHRyIiwgcG9zaXhfcmVtb3ZleGF0dHIsIE1FVEhfVkFSQVJHUywgcG9zaXhfcmVtb3ZleGF0dHJfX2RvY19ffSwKKyAgICB7ImxyZW1vdmV4YXR0ciIsIHBvc2l4X2xyZW1vdmV4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9scmVtb3ZleGF0dHJfX2RvY19ffSwKKyAgICB7ImZyZW1vdmV4YXR0ciIsIHBvc2l4X2ZyZW1vdmV4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9mcmVtb3ZleGF0dHJfX2RvY19ffSwKKyAgICB7Imxpc3R4YXR0ciIsIHBvc2l4X2xpc3R4YXR0ciwgTUVUSF9WQVJBUkdTLCBwb3NpeF9saXN0eGF0dHJfX2RvY19ffSwKKyAgICB7ImxsaXN0eGF0dHIiLCBwb3NpeF9sbGlzdHhhdHRyLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2xsaXN0eGF0dHJfX2RvY19ffSwKKyAgICB7ImZsaXN0eGF0dHIiLCBwb3NpeF9mbGlzdHhhdHRyLCBNRVRIX1ZBUkFSR1MsIHBvc2l4X2ZsaXN0eGF0dHJfX2RvY19ffSwKKyNlbmRpZgogICAgIHtOVUxMLCAgICAgICAgICAgICAgTlVMTH0gICAgICAgICAgICAvKiBTZW50aW5lbCAqLwogfTsKIApAQCAtODMzMiw2ICsxMTE1NCw0MSBAQAogI2lmZGVmIE9fRVhMT0NLCiAgICAgaWYgKGlucyhkLCAiT19FWExPQ0siLCAobG9uZylPX0VYTE9DSykpIHJldHVybiAtMTsKICNlbmRpZgorI2lmZGVmIFBSSU9fUFJPQ0VTUworICAgIGlmIChpbnMoZCwgIlBSSU9fUFJPQ0VTUyIsIChsb25nKVBSSU9fUFJPQ0VTUykpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFBSSU9fUEdSUAorICAgIGlmIChpbnMoZCwgIlBSSU9fUEdSUCIsIChsb25nKVBSSU9fUEdSUCkpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFBSSU9fVVNFUgorICAgIGlmIChpbnMoZCwgIlBSSU9fVVNFUiIsIChsb25nKVBSSU9fVVNFUikpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIE9fQ0xPRVhFQworICAgIGlmIChpbnMoZCwgIk9fQ0xPRVhFQyIsIChsb25nKU9fQ0xPRVhFQykpIHJldHVybiAtMTsKKyNlbmRpZgorLyogcG9zaXggLSBjb25zdGFudHMgZm9yICphdCBmdW5jdGlvbnMgKi8KKyNpZmRlZiBBVF9TWU1MSU5LX05PRk9MTE9XCisgICAgICAgIGlmIChpbnMoZCwgIkFUX1NZTUxJTktfTk9GT0xMT1ciLCAobG9uZylBVF9TWU1MSU5LX05PRk9MTE9XKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgQVRfRUFDQ0VTUworICAgICAgICBpZiAoaW5zKGQsICJBVF9FQUNDRVNTIiwgKGxvbmcpQVRfRUFDQ0VTUykpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIEFUX0ZEQ1dECisgICAgICAgIGlmIChpbnMoZCwgIkFUX0ZEQ1dEIiwgKGxvbmcpQVRfRkRDV0QpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBBVF9SRU1PVkVESVIKKyAgICAgICAgaWYgKGlucyhkLCAiQVRfUkVNT1ZFRElSIiwgKGxvbmcpQVRfUkVNT1ZFRElSKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgQVRfU1lNTElOS19GT0xMT1cKKyAgICAgICAgaWYgKGlucyhkLCAiQVRfU1lNTElOS19GT0xMT1ciLCAobG9uZylBVF9TWU1MSU5LX0ZPTExPVykpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFVUSU1FX05PVworICAgICAgICBpZiAoaW5zKGQsICJVVElNRV9OT1ciLCAobG9uZylVVElNRV9OT1cpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBVVElNRV9PTUlUCisgICAgICAgIGlmIChpbnMoZCwgIlVUSU1FX09NSVQiLCAobG9uZylVVElNRV9PTUlUKSkgcmV0dXJuIC0xOworI2VuZGlmCisKIAogLyogTVMgV2luZG93cyAqLwogI2lmZGVmIE9fTk9JTkhFUklUCkBAIC04NDQwLDYgKzExMjk3LDg3IEBACiAgICAgaWYgKGlucyhkLCAiU1RfTk9TVUlEIiwgKGxvbmcpU1RfTk9TVUlEKSkgcmV0dXJuIC0xOwogI2VuZGlmIC8qIFNUX05PU1VJRCAqLwogCisgICAgLyogRnJlZUJTRCBzZW5kZmlsZSgpIGNvbnN0YW50cyAqLworI2lmZGVmIFNGX05PRElTS0lPCisgICAgaWYgKGlucyhkLCAiU0ZfTk9ESVNLSU8iLCAobG9uZylTRl9OT0RJU0tJTykpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFNGX01OT1dBSVQKKyAgICBpZiAoaW5zKGQsICJTRl9NTk9XQUlUIiwgKGxvbmcpU0ZfTU5PV0FJVCkpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFNGX1NZTkMKKyAgICBpZiAoaW5zKGQsICJTRl9TWU5DIiwgKGxvbmcpU0ZfU1lOQykpIHJldHVybiAtMTsKKyNlbmRpZgorCisgICAgLyogY29uc3RhbnRzIGZvciBwb3NpeF9mYWR2aXNlICovCisjaWZkZWYgUE9TSVhfRkFEVl9OT1JNQUwKKyAgICBpZiAoaW5zKGQsICJQT1NJWF9GQURWX05PUk1BTCIsIChsb25nKVBPU0lYX0ZBRFZfTk9STUFMKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUE9TSVhfRkFEVl9TRVFVRU5USUFMCisgICAgaWYgKGlucyhkLCAiUE9TSVhfRkFEVl9TRVFVRU5USUFMIiwgKGxvbmcpUE9TSVhfRkFEVl9TRVFVRU5USUFMKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUE9TSVhfRkFEVl9SQU5ET00KKyAgICBpZiAoaW5zKGQsICJQT1NJWF9GQURWX1JBTkRPTSIsIChsb25nKVBPU0lYX0ZBRFZfUkFORE9NKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUE9TSVhfRkFEVl9OT1JFVVNFCisgICAgaWYgKGlucyhkLCAiUE9TSVhfRkFEVl9OT1JFVVNFIiwgKGxvbmcpUE9TSVhfRkFEVl9OT1JFVVNFKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUE9TSVhfRkFEVl9XSUxMTkVFRAorICAgIGlmIChpbnMoZCwgIlBPU0lYX0ZBRFZfV0lMTE5FRUQiLCAobG9uZylQT1NJWF9GQURWX1dJTExORUVEKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUE9TSVhfRkFEVl9ET05UTkVFRAorICAgIGlmIChpbnMoZCwgIlBPU0lYX0ZBRFZfRE9OVE5FRUQiLCAobG9uZylQT1NJWF9GQURWX0RPTlRORUVEKSkgcmV0dXJuIC0xOworI2VuZGlmCisKKyAgICAvKiBjb25zdGFudHMgZm9yIHdhaXRpZCAqLworI2lmIGRlZmluZWQoSEFWRV9TWVNfV0FJVF9IKSAmJiBkZWZpbmVkKEhBVkVfV0FJVElEKQorICAgIGlmIChpbnMoZCwgIlBfUElEIiwgKGxvbmcpUF9QSUQpKSByZXR1cm4gLTE7CisgICAgaWYgKGlucyhkLCAiUF9QR0lEIiwgKGxvbmcpUF9QR0lEKSkgcmV0dXJuIC0xOworICAgIGlmIChpbnMoZCwgIlBfQUxMIiwgKGxvbmcpUF9BTEwpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBXRVhJVEVECisgICAgaWYgKGlucyhkLCAiV0VYSVRFRCIsIChsb25nKVdFWElURUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBXTk9XQUlUCisgICAgaWYgKGlucyhkLCAiV05PV0FJVCIsIChsb25nKVdOT1dBSVQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBXU1RPUFBFRAorICAgIGlmIChpbnMoZCwgIldTVE9QUEVEIiwgKGxvbmcpV1NUT1BQRUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBDTERfRVhJVEVECisgICAgaWYgKGlucyhkLCAiQ0xEX0VYSVRFRCIsIChsb25nKUNMRF9FWElURUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBDTERfRFVNUEVECisgICAgaWYgKGlucyhkLCAiQ0xEX0RVTVBFRCIsIChsb25nKUNMRF9EVU1QRUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBDTERfVFJBUFBFRAorICAgIGlmIChpbnMoZCwgIkNMRF9UUkFQUEVEIiwgKGxvbmcpQ0xEX1RSQVBQRUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBDTERfQ09OVElOVUVECisgICAgaWYgKGlucyhkLCAiQ0xEX0NPTlRJTlVFRCIsIChsb25nKUNMRF9DT05USU5VRUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKworICAgIC8qIGNvbnN0YW50cyBmb3IgbG9ja2YgKi8KKyNpZmRlZiBGX0xPQ0sKKyAgICBpZiAoaW5zKGQsICJGX0xPQ0siLCAobG9uZylGX0xPQ0spKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBGX1RMT0NLCisgICAgaWYgKGlucyhkLCAiRl9UTE9DSyIsIChsb25nKUZfVExPQ0spKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBGX1VMT0NLCisgICAgaWYgKGlucyhkLCAiRl9VTE9DSyIsIChsb25nKUZfVUxPQ0spKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBGX1RFU1QKKyAgICBpZiAoaW5zKGQsICJGX1RFU1QiLCAobG9uZylGX1RFU1QpKSByZXR1cm4gLTE7CisjZW5kaWYKKworICAgIC8qIGNvbnN0YW50cyBmb3IgZnV0aW1lbnMgKi8KKyNpZmRlZiBVVElNRV9OT1cKKyAgICBpZiAoaW5zKGQsICJVVElNRV9OT1ciLCAobG9uZylVVElNRV9OT1cpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBVVElNRV9PTUlUCisgICAgaWYgKGlucyhkLCAiVVRJTUVfT01JVCIsIChsb25nKVVUSU1FX09NSVQpKSByZXR1cm4gLTE7CisjZW5kaWYKKwogI2lmZGVmIEhBVkVfU1BBV05WCiAjaWYgZGVmaW5lZChQWU9TX09TMikgJiYgZGVmaW5lZChQWUNDX0dDQykKICAgICBpZiAoaW5zKGQsICJQX1dBSVQiLCAobG9uZylQX1dBSVQpKSByZXR1cm4gLTE7CkBAIC04NDcxLDYgKzExNDA5LDY0IEBACiAjZW5kaWYKICNlbmRpZgogCisjaWZkZWYgSEFWRV9TQ0hFRF9ICisgICAgaWYgKGlucyhkLCAiU0NIRURfT1RIRVIiLCAobG9uZylTQ0hFRF9PVEhFUikpIHJldHVybiAtMTsKKyAgICBpZiAoaW5zKGQsICJTQ0hFRF9GSUZPIiwgKGxvbmcpU0NIRURfRklGTykpIHJldHVybiAtMTsKKyAgICBpZiAoaW5zKGQsICJTQ0hFRF9SUiIsIChsb25nKVNDSEVEX1JSKSkgcmV0dXJuIC0xOworI2lmZGVmIFNDSEVEX1NQT1JBRElDCisgICAgaWYgKGlucyhkLCAiU0NIRURfU1BPUkFESUMiLCAobG9uZylTQ0hFRF9TUE9SQURJQykgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfQkFUQ0gKKyAgICBpZiAoaW5zKGQsICJTQ0hFRF9CQVRDSCIsIChsb25nKVNDSEVEX0JBVENIKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfSURMRQorICAgIGlmIChpbnMoZCwgIlNDSEVEX0lETEUiLCAobG9uZylTQ0hFRF9JRExFKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfUkVTRVRfT05fRk9SSworICAgIGlmIChpbnMoZCwgIlNDSEVEX1JFU0VUX09OX0ZPUksiLCAobG9uZylTQ0hFRF9SRVNFVF9PTl9GT1JLKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfU1lTCisgICAgaWYgKGlucyhkLCAiU0NIRURfU1lTIiwgKGxvbmcpU0NIRURfU1lTKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfSUEKKyAgICBpZiAoaW5zKGQsICJTQ0hFRF9JQSIsIChsb25nKVNDSEVEX0lBKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfRlNTCisgICAgaWYgKGlucyhkLCAiU0NIRURfRlNTIiwgKGxvbmcpU0NIRURfRlNTKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgU0NIRURfRlgKKyAgICBpZiAoaW5zKGQsICJTQ0hFRF9GWCIsIChsb25nKVNDSEVEX0ZTUykpIHJldHVybiAtMTsKKyNlbmRpZgorI2VuZGlmCisKKyNpZmRlZiBVU0VfWEFUVFJTCisgICAgaWYgKGlucyhkLCAiWEFUVFJfQ1JFQVRFIiwgKGxvbmcpWEFUVFJfQ1JFQVRFKSkgcmV0dXJuIC0xOworICAgIGlmIChpbnMoZCwgIlhBVFRSX1JFUExBQ0UiLCAobG9uZylYQVRUUl9SRVBMQUNFKSkgcmV0dXJuIC0xOworICAgIGlmIChpbnMoZCwgIlhBVFRSX1NJWkVfTUFYIiwgKGxvbmcpWEFUVFJfU0laRV9NQVgpKSByZXR1cm4gLTE7CisjZW5kaWYKKworI2lmZGVmIFJUTERfTEFaWQorICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhkLCBSVExEX0xBWlkpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBSVExEX05PVworICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhkLCBSVExEX05PVykpIHJldHVybiAtMTsKKyNlbmRpZgorI2lmZGVmIFJUTERfR0xPQkFMCisgICAgaWYgKFB5TW9kdWxlX0FkZEludE1hY3JvKGQsIFJUTERfR0xPQkFMKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUlRMRF9MT0NBTAorICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhkLCBSVExEX0xPQ0FMKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUlRMRF9OT0RFTEVURQorICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhkLCBSVExEX05PREVMRVRFKSkgcmV0dXJuIC0xOworI2VuZGlmCisjaWZkZWYgUlRMRF9OT0xPQUQKKyAgICBpZiAoUHlNb2R1bGVfQWRkSW50TWFjcm8oZCwgUlRMRF9OT0xPQUQpKSByZXR1cm4gLTE7CisjZW5kaWYKKyNpZmRlZiBSVExEX0RFRVBCSU5ECisgICAgaWYgKFB5TW9kdWxlX0FkZEludE1hY3JvKGQsIFJUTERfREVFUEJJTkQpKSByZXR1cm4gLTE7CisjZW5kaWYKKwogI2lmIGRlZmluZWQoUFlPU19PUzIpCiAgICAgaWYgKGluc2VydHZhbHVlcyhkKSkgcmV0dXJuIC0xOwogI2VuZGlmCkBAIC04NTMzLDEyICsxMTUyOSwyNCBAQAogICAgIFB5X0lOQ1JFRihQeUV4Y19PU0Vycm9yKTsKICAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgImVycm9yIiwgUHlFeGNfT1NFcnJvcik7CiAKKyNpZmRlZiBIQVZFX1NDSEVEX1NFVEFGRklOSVRZCisgICAgaWYgKFB5VHlwZV9SZWFkeSgmY3B1X3NldF90eXBlKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworICAgIFB5X0lOQ1JFRigmY3B1X3NldF90eXBlKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgImNwdV9zZXQiLCAoUHlPYmplY3QgKikmY3B1X3NldF90eXBlKTsKKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9QVVRFTlYKICAgICBpZiAocG9zaXhfcHV0ZW52X2dhcmJhZ2UgPT0gTlVMTCkKICAgICAgICAgcG9zaXhfcHV0ZW52X2dhcmJhZ2UgPSBQeURpY3RfTmV3KCk7CiAjZW5kaWYKIAogICAgIGlmICghaW5pdGlhbGl6ZWQpIHsKKyNpZiBkZWZpbmVkKEhBVkVfV0FJVElEKSAmJiAhZGVmaW5lZChfX0FQUExFX18pCisgICAgICAgIHdhaXRpZF9yZXN1bHRfZGVzYy5uYW1lID0gTU9ETkFNRSAiLndhaXRpZF9yZXN1bHQiOworICAgICAgICBQeVN0cnVjdFNlcXVlbmNlX0luaXRUeXBlKCZXYWl0aWRSZXN1bHRUeXBlLCAmd2FpdGlkX3Jlc3VsdF9kZXNjKTsKKyNlbmRpZgorCiAgICAgICAgIHN0YXRfcmVzdWx0X2Rlc2MubmFtZSA9IE1PRE5BTUUgIi5zdGF0X3Jlc3VsdCI7CiAgICAgICAgIHN0YXRfcmVzdWx0X2Rlc2MuZmllbGRzWzddLm5hbWUgPSBQeVN0cnVjdFNlcXVlbmNlX1VubmFtZWRGaWVsZDsKICAgICAgICAgc3RhdF9yZXN1bHRfZGVzYy5maWVsZHNbOF0ubmFtZSA9IFB5U3RydWN0U2VxdWVuY2VfVW5uYW1lZEZpZWxkOwpAQCAtODU1OCwxMiArMTE1NjYsMjcgQEAKICAgICAgICAgdGlja3NfcGVyX3NlY29uZCA9IDYwOyAvKiBtYWdpYyBmYWxsYmFjayB2YWx1ZTsgbWF5IGJlIGJvZ3VzICovCiAjICBlbmRpZgogI2VuZGlmCisKKyNpZiBkZWZpbmVkKEhBVkVfU0NIRURfU0VUUEFSQU0pIHx8IGRlZmluZWQoSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIpCisgICAgICAgIHNjaGVkX3BhcmFtX2Rlc2MubmFtZSA9IE1PRE5BTUUgIi5zY2hlZF9wYXJhbSI7CisgICAgICAgIFB5U3RydWN0U2VxdWVuY2VfSW5pdFR5cGUoJlNjaGVkUGFyYW1UeXBlLCAmc2NoZWRfcGFyYW1fZGVzYyk7CisgICAgICAgIFNjaGVkUGFyYW1UeXBlLnRwX25ldyA9IHNjaGVkX3BhcmFtX25ldzsKKyNlbmRpZgogICAgIH0KKyNpZiBkZWZpbmVkKEhBVkVfV0FJVElEKSAmJiAhZGVmaW5lZChfX0FQUExFX18pCisgICAgUHlfSU5DUkVGKChQeU9iamVjdCopICZXYWl0aWRSZXN1bHRUeXBlKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgIndhaXRpZF9yZXN1bHQiLCAoUHlPYmplY3QqKSAmV2FpdGlkUmVzdWx0VHlwZSk7CisjZW5kaWYKICAgICBQeV9JTkNSRUYoKFB5T2JqZWN0KikgJlN0YXRSZXN1bHRUeXBlKTsKICAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgInN0YXRfcmVzdWx0IiwgKFB5T2JqZWN0KikgJlN0YXRSZXN1bHRUeXBlKTsKICAgICBQeV9JTkNSRUYoKFB5T2JqZWN0KikgJlN0YXRWRlNSZXN1bHRUeXBlKTsKICAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgInN0YXR2ZnNfcmVzdWx0IiwKICAgICAgICAgICAgICAgICAgICAgICAgKFB5T2JqZWN0KikgJlN0YXRWRlNSZXN1bHRUeXBlKTsKKworI2lmIGRlZmluZWQoSEFWRV9TQ0hFRF9TRVRQQVJBTSkgfHwgZGVmaW5lZChIQVZFX1NDSEVEX1NFVFNDSEVEVUxFUikKKyAgICBQeV9JTkNSRUYoJlNjaGVkUGFyYW1UeXBlKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgInNjaGVkX3BhcmFtIiwgKFB5T2JqZWN0ICopJlNjaGVkUGFyYW1UeXBlKTsKKyNlbmRpZgogICAgIGluaXRpYWxpemVkID0gMTsKIAogI2lmZGVmIF9fQVBQTEVfXwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy9weWV4cGF0LmMgYi9Nb2R1bGVzL3B5ZXhwYXQuYwppbmRleCA4NDk0MjNmLi4xYmM0ZmZhIDEwMDY0NAotLS0gYS9Nb2R1bGVzL3B5ZXhwYXQuYworKysgYi9Nb2R1bGVzL3B5ZXhwYXQuYwpAQCAtMTAwLDE2ICsxMDAsMTcgQEAKIHNldF9lcnJvcih4bWxwYXJzZW9iamVjdCAqc2VsZiwgZW51bSBYTUxfRXJyb3IgY29kZSkKIHsKICAgICBQeU9iamVjdCAqZXJyOwotICAgIGNoYXIgYnVmZmVyWzI1Nl07CisgICAgUHlPYmplY3QgKmJ1ZmZlcjsKICAgICBYTUxfUGFyc2VyIHBhcnNlciA9IHNlbGYtPml0c2VsZjsKICAgICBpbnQgbGluZW5vID0gWE1MX0dldEVycm9yTGluZU51bWJlcihwYXJzZXIpOwogICAgIGludCBjb2x1bW4gPSBYTUxfR2V0RXJyb3JDb2x1bW5OdW1iZXIocGFyc2VyKTsKIAotICAgIC8qIFRoZXJlIGlzIG5vIHJpc2sgb2Ygb3ZlcmZsb3dpbmcgdGhpcyBidWZmZXIsIHNpbmNlCi0gICAgICAgZXZlbiBmb3IgNjQtYml0IGludGVnZXJzLCB0aGVyZSBpcyBzdWZmaWNpZW50IHNwYWNlLiAqLwotICAgIHNwcmludGYoYnVmZmVyLCAiJS4yMDBzOiBsaW5lICVpLCBjb2x1bW4gJWkiLAotICAgICAgICAgICAgWE1MX0Vycm9yU3RyaW5nKGNvZGUpLCBsaW5lbm8sIGNvbHVtbik7Ci0gICAgZXJyID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uKEVycm9yT2JqZWN0LCAicyIsIGJ1ZmZlcik7CisgICAgYnVmZmVyID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVzOiBsaW5lICVpLCBjb2x1bW4gJWkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhNTF9FcnJvclN0cmluZyhjb2RlKSwgbGluZW5vLCBjb2x1bW4pOworICAgIGlmIChidWZmZXIgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgZXJyID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uKEVycm9yT2JqZWN0LCAiTyIsIGJ1ZmZlcik7CisgICAgUHlfREVDUkVGKGJ1ZmZlcik7CiAgICAgaWYgKCAgZXJyICE9IE5VTEwKICAgICAgICAgICAmJiBzZXRfZXJyb3JfYXR0cihlcnIsICJjb2RlIiwgY29kZSkKICAgICAgICAgICAmJiBzZXRfZXJyb3JfYXR0cihlcnIsICJvZmZzZXQiLCBjb2x1bW4pCkBAIC04NDIsOSArODQzLDkgQEAKIHsKICAgICBpbnQgcnYgPSAxOwogICAgIFB5T2JqZWN0ICpyZWFkbWV0aG9kID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihyZWFkKTsKIAotCi0gICAgcmVhZG1ldGhvZCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZiwgInJlYWQiKTsKKyAgICByZWFkbWV0aG9kID0gX1B5T2JqZWN0X0dldEF0dHJJZChmLCAmUHlJZF9yZWFkKTsKICAgICBpZiAocmVhZG1ldGhvZCA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAiYXJndW1lbnQgbXVzdCBoYXZlICdyZWFkJyBhdHRyaWJ1dGUiKTsKQEAgLTExMDEsMTcgKzExMDIsMjIgQEAKICAgICBQeVVuaWNvZGVPYmplY3QgKl91X3N0cmluZyA9IE5VTEw7CiAgICAgaW50IHJlc3VsdCA9IDA7CiAgICAgaW50IGk7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKIAogICAgIC8qIFllcywgc3VwcG9ydHMgb25seSA4Yml0IGVuY29kaW5ncyAqLwogICAgIF91X3N0cmluZyA9IChQeVVuaWNvZGVPYmplY3QgKikKICAgICAgICAgUHlVbmljb2RlX0RlY29kZSh0ZW1wbGF0ZV9idWZmZXIsIDI1NiwgbmFtZSwgInJlcGxhY2UiKTsKIAotICAgIGlmIChfdV9zdHJpbmcgPT0gTlVMTCkKKyAgICBpZiAoX3Vfc3RyaW5nID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKF91X3N0cmluZykgPT0gLTEpCiAgICAgICAgIHJldHVybiByZXN1bHQ7CiAKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoX3Vfc3RyaW5nKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoX3Vfc3RyaW5nKTsKKwogICAgIGZvciAoaSA9IDA7IGkgPCAyNTY7IGkrKykgewogICAgICAgICAvKiBTdHVwaWQgdG8gYWNjZXNzIGRpcmVjdGx5LCBidXQgZmFzdCAqLwotICAgICAgICBQeV9VTklDT0RFIGMgPSBfdV9zdHJpbmctPnN0cltpXTsKKyAgICAgICAgUHlfVUNTNCBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CiAgICAgICAgIGlmIChjID09IFB5X1VOSUNPREVfUkVQTEFDRU1FTlRfQ0hBUkFDVEVSKQogICAgICAgICAgICAgaW5mby0+bWFwW2ldID0gLTE7CiAgICAgICAgIGVsc2UKQEAgLTEyMjgsMTEgKzEyMzQsMTMgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiB4bWxwYXJzZV9nZXRhdHRybyh4bWxwYXJzZW9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm5hbWVvYmopCiB7Ci0gICAgUHlfVU5JQ09ERSAqbmFtZTsKKyAgICBQeV9VQ1M0IGZpcnN0X2NoYXI7CiAgICAgaW50IGhhbmRsZXJudW0gPSAtMTsKIAogICAgIGlmICghUHlVbmljb2RlX0NoZWNrKG5hbWVvYmopKQogICAgICAgICBnb3RvIGdlbmVyaWM7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShuYW1lb2JqKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBoYW5kbGVybnVtID0gaGFuZGxlcm5hbWUyaW50KG5hbWVvYmopOwogCkBAIC0xMjQ0LDggKzEyNTIsOCBAQAogICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0KIAotICAgIG5hbWUgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShuYW1lb2JqKTsKLSAgICBpZiAobmFtZVswXSA9PSAnRScpIHsKKyAgICBmaXJzdF9jaGFyID0gUHlVbmljb2RlX1JFQURfQ0hBUihuYW1lb2JqLCAwKTsKKyAgICBpZiAoZmlyc3RfY2hhciA9PSAnRScpIHsKICAgICAgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKG5hbWVvYmosICJFcnJvckNvZGUiKSA9PSAwKQogICAgICAgICAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZygobG9uZykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBYTUxfR2V0RXJyb3JDb2RlKHNlbGYtPml0c2VsZikpOwpAQCAtMTI1OSw3ICsxMjY3LDcgQEAKICAgICAgICAgICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWE1MX0dldEVycm9yQnl0ZUluZGV4KHNlbGYtPml0c2VsZikpOwogICAgIH0KLSAgICBpZiAobmFtZVswXSA9PSAnQycpIHsKKyAgICBpZiAoZmlyc3RfY2hhciA9PSAnQycpIHsKICAgICAgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKG5hbWVvYmosICJDdXJyZW50TGluZU51bWJlciIpID09IDApCiAgICAgICAgICAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKChsb25nKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhNTF9HZXRDdXJyZW50TGluZU51bWJlcihzZWxmLT5pdHNlbGYpKTsKQEAgLTEyNzAsNyArMTI3OCw3IEBACiAgICAgICAgICAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKChsb25nKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhNTF9HZXRDdXJyZW50Qnl0ZUluZGV4KHNlbGYtPml0c2VsZikpOwogICAgIH0KLSAgICBpZiAobmFtZVswXSA9PSAnYicpIHsKKyAgICBpZiAoZmlyc3RfY2hhciA9PSAnYicpIHsKICAgICAgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKG5hbWVvYmosICJidWZmZXJfc2l6ZSIpID09IDApCiAgICAgICAgICAgICByZXR1cm4gUHlMb25nX0Zyb21Mb25nKChsb25nKSBzZWxmLT5idWZmZXJfc2l6ZSk7CiAgICAgICAgIGlmIChQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhuYW1lb2JqLCAiYnVmZmVyX3RleHQiKSA9PSAwKQpAQCAtMTY2MSw3ICsxNjY5LDYgQEAKICAgICBQeU9iamVjdCAqZXJyb3JzX21vZHVsZTsKICAgICBQeU9iamVjdCAqbW9kZWxtb2RfbmFtZTsKICAgICBQeU9iamVjdCAqbW9kZWxfbW9kdWxlOwotICAgIFB5T2JqZWN0ICp2ZXJzaW9uOwogICAgIFB5T2JqZWN0ICpzeXNfbW9kdWxlczsKICAgICBQeU9iamVjdCAqdG1wbnVtLCAqdG1wc3RyOwogICAgIFB5T2JqZWN0ICpjb2Rlc19kaWN0OwpAQCAtMTY5OCwxMCArMTcwNSw2IEBACiAgICAgUHlfSU5DUkVGKCZYbWxwYXJzZXR5cGUpOwogICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiWE1MUGFyc2VyVHlwZSIsIChQeU9iamVjdCAqKSAmWG1scGFyc2V0eXBlKTsKIAotICAgIHZlcnNpb24gPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhQWV9WRVJTSU9OKTsKLSAgICBpZiAoIXZlcnNpb24pCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiX192ZXJzaW9uX18iLCB2ZXJzaW9uKTsKICAgICBQeU1vZHVsZV9BZGRTdHJpbmdDb25zdGFudChtLCAiRVhQQVRfVkVSU0lPTiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYXIgKikgWE1MX0V4cGF0VmVyc2lvbigpKTsKICAgICB7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL3JlYWRsaW5lLmMgYi9Nb2R1bGVzL3JlYWRsaW5lLmMKaW5kZXggNGQ1NGRhZC4uYTcxMDY1MiAxMDA2NDQKLS0tIGEvTW9kdWxlcy9yZWFkbGluZS5jCisrKyBiL01vZHVsZXMvcmVhZGxpbmUuYwpAQCAtMjM1LDEwICsyMzUsOSBAQAogICAgICAgICBQeV9YREVDUkVGKHRtcCk7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICBQeU9TX3NucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksCi0gICAgICAgICAgICAgICAgICAgICAgInNldF8lLjUwcyhmdW5jKTogYXJndW1lbnQgbm90IGNhbGxhYmxlIiwKLSAgICAgICAgICAgICAgICAgICAgICBmdW5jbmFtZSk7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsIGJ1Zik7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAic2V0XyUuNTBzKGZ1bmMpOiBhcmd1bWVudCBub3QgY2FsbGFibGUiLAorICAgICAgICAgICAgICAgICAgICAgZnVuY25hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgUHlfUkVUVVJOX05PTkU7CkBAIC04OTIsNyArODkxLDcgQEAKICNlbmRpZgogCiAjaWZkZWYgX19BUFBMRV9fCi0gICAgLyogdGhlIGxpYmVkaXQgcmVhZGxpbmUgZW11bGF0aW9uIHJlc2V0cyBrZXkgYmluZGluZ3MgZXRjIAorICAgIC8qIHRoZSBsaWJlZGl0IHJlYWRsaW5lIGVtdWxhdGlvbiByZXNldHMga2V5IGJpbmRpbmdzIGV0YwogICAgICAqIHdoZW4gY2FsbGluZyBybF9pbml0aWFsaXplLiAgU28gY2FsbCBpdCB1cGZyb250CiAgICAgICovCiAgICAgaWYgKHVzaW5nX2xpYmVkaXRfZW11bGF0aW9uKQpAQCAtOTMyLDExICs5MzEsMTEgQEAKICAgICAgKi8KICNpZmRlZiBfX0FQUExFX18KICAgICBpZiAodXNpbmdfbGliZWRpdF9lbXVsYXRpb24pCi0JcmxfcmVhZF9pbml0X2ZpbGUoTlVMTCk7CisgICAgICAgIHJsX3JlYWRfaW5pdF9maWxlKE5VTEwpOwogICAgIGVsc2UKICNlbmRpZiAvKiBfX0FQUExFX18gKi8KICAgICAgICAgcmxfaW5pdGlhbGl6ZSgpOwotICAgIAorCiAgICAgUkVTVE9SRV9MT0NBTEUoc2F2ZWRfbG9jYWxlKQogfQogCmRpZmYgLS1naXQgYS9Nb2R1bGVzL3Jlc291cmNlLmMgYi9Nb2R1bGVzL3Jlc291cmNlLmMKaW5kZXggMTg3NWU0OC4uMWFlZDQ5NyAxMDA2NDQKLS0tIGEvTW9kdWxlcy9yZXNvdXJjZS5jCisrKyBiL01vZHVsZXMvcmVzb3VyY2UuYwpAQCAtMTgsOCArMTgsNiBAQAogCiAjZGVmaW5lIGRvdWJsZXRpbWUoVFYpICgoZG91YmxlKShUVikudHZfc2VjICsgKFRWKS50dl91c2VjICogMC4wMDAwMDEpCiAKLXN0YXRpYyBQeU9iamVjdCAqUmVzb3VyY2VFcnJvcjsKLQogUHlEb2NfU1RSVkFSKHN0cnVjdF9ydXNhZ2VfX2RvY19fLAogInN0cnVjdF9ydXNhZ2U6IFJlc3VsdCBmcm9tIGdldHJ1c2FnZS5cblxuIgogIlRoaXMgb2JqZWN0IG1heSBiZSBhY2Nlc3NlZCBlaXRoZXIgYXMgYSB0dXBsZSBvZlxuIgpAQCAtNzMsNyArNzEsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbnZhbGlkIHdobyBwYXJhbWV0ZXIiKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhSZXNvdXJjZUVycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKQEAgLTEyNSw3ICsxMjMsNyBAQAogICAgIH0KIAogICAgIGlmIChnZXRybGltaXQocmVzb3VyY2UsICZybCkgPT0gLTEpIHsKLSAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFJlc291cmNlRXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIApAQCAtMTgzLDcgKzE4MSw3IEBACiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibm90IGFsbG93ZWQgdG8gcmFpc2UgbWF4aW11bSBsaW1pdCIpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUmVzb3VyY2VFcnJvcik7CisgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CkBAIC0yNDYsMTIgKzI0NCw4IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgLyogQWRkIHNvbWUgc3ltYm9saWMgY29uc3RhbnRzIHRvIHRoZSBtb2R1bGUgKi8KLSAgICBpZiAoUmVzb3VyY2VFcnJvciA9PSBOVUxMKSB7Ci0gICAgICAgIFJlc291cmNlRXJyb3IgPSBQeUVycl9OZXdFeGNlcHRpb24oInJlc291cmNlLmVycm9yIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMKTsKLSAgICB9Ci0gICAgUHlfSU5DUkVGKFJlc291cmNlRXJyb3IpOwotICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiZXJyb3IiLCBSZXNvdXJjZUVycm9yKTsKKyAgICBQeV9JTkNSRUYoUHlFeGNfT1NFcnJvcik7CisgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJlcnJvciIsIFB5RXhjX09TRXJyb3IpOwogICAgIGlmICghaW5pdGlhbGl6ZWQpCiAgICAgICAgIFB5U3RydWN0U2VxdWVuY2VfSW5pdFR5cGUoJlN0cnVjdFJVc2FnZVR5cGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0cnVjdF9ydXNhZ2VfZGVzYyk7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL3NlbGVjdG1vZHVsZS5jIGIvTW9kdWxlcy9zZWxlY3Rtb2R1bGUuYwppbmRleCAyNDUyYTY1Li45NDUwNTVmIDEwMDY0NAotLS0gYS9Nb2R1bGVzL3NlbGVjdG1vZHVsZS5jCisrKyBiL01vZHVsZXMvc2VsZWN0bW9kdWxlLmMKQEAgLTcsNiArNywxNCBAQAogI2luY2x1ZGUgIlB5dGhvbi5oIgogI2luY2x1ZGUgPHN0cnVjdG1lbWJlci5oPgogCisjaWZkZWYgSEFWRV9TWVNfREVWUE9MTF9ICisjaW5jbHVkZSA8c3lzL3Jlc291cmNlLmg+CisjaW5jbHVkZSA8c3lzL2RldnBvbGwuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjZW5kaWYKKwogI2lmZGVmIF9fQVBQTEVfXwogICAgIC8qIFBlcmZvcm0gcnVudGltZSB0ZXN0aW5nIGZvciBhIGJyb2tlbiBwb2xsIG9uIE9TWCB0byBtYWtlIGl0IGVhc2llcgogICAgICAqIHRvIHVzZSB0aGUgc2FtZSBiaW5hcnkgb24gbXVsdGlwbGUgcmVsZWFzZXMgb2YgdGhlIE9TLgpAQCAtNTQsOCArNjIsNiBAQAogIyAgZW5kaWYKICNlbmRpZgogCi1zdGF0aWMgUHlPYmplY3QgKlNlbGVjdEVycm9yOwotCiAvKiBsaXN0IG9mIFB5dGhvbiBvYmplY3RzIGFuZCB0aGVpciBmaWxlIGRlc2NyaXB0b3IgKi8KIHR5cGVkZWYgc3RydWN0IHsKICAgICBQeU9iamVjdCAqb2JqOyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG93bmVkIHJlZmVyZW5jZSAqLwpAQCAtMjI3LDYgKzIzMywxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aW1lb3V0IHBlcmlvZCB0b28gbG9uZyIpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KKyAgICAgICAgaWYgKHRpbWVvdXQgPCAwKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJ0aW1lb3V0IG11c3QgYmUgbm9uLW5lZ2F0aXZlIik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQogICAgICAgICBzZWNvbmRzID0gKGxvbmcpdGltZW91dDsKICAgICAgICAgdGltZW91dCA9IHRpbWVvdXQgLSAoZG91YmxlKXNlY29uZHM7CiAgICAgICAgIHR2LnR2X3NlYyA9IHNlY29uZHM7CkBAIC0yNjksMTEgKzI4MCwxMSBAQAogCiAjaWZkZWYgTVNfV0lORE9XUwogICAgIGlmIChuID09IFNPQ0tFVF9FUlJPUikgewotICAgICAgICBQeUVycl9TZXRFeGNGcm9tV2luZG93c0VycihTZWxlY3RFcnJvciwgV1NBR2V0TGFzdEVycm9yKCkpOworICAgICAgICBQeUVycl9TZXRFeGNGcm9tV2luZG93c0VycihQeUV4Y19PU0Vycm9yLCBXU0FHZXRMYXN0RXJyb3IoKSk7CiAgICAgfQogI2Vsc2UKICAgICBpZiAobiA8IDApIHsKLSAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFNlbGVjdEVycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgIH0KICNlbmRpZgogICAgIGVsc2UgewpAQCAtNDIwLDcgKzQzMSw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChQeURpY3RfR2V0SXRlbShzZWxmLT5kaWN0LCBrZXkpID09IE5VTEwpIHsKICAgICAgICAgZXJybm8gPSBFTk9FTlQ7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgdmFsdWUgPSBQeUxvbmdfRnJvbUxvbmcoZXZlbnRzKTsKQEAgLTUxOSw3ICs1MzAsNyBAQAogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAKICAgICBpZiAocG9sbF9yZXN1bHQgPCAwKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhTZWxlY3RFcnJvcik7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCkBAIC02NDUsNiArNjU2LDMzOSBAQAogICAgIHBvbGxfbWV0aG9kcywgICAgICAgICAgICAgICAvKnRwX21ldGhvZHMqLwogfTsKIAorI2lmZGVmIEhBVkVfU1lTX0RFVlBPTExfSAordHlwZWRlZiBzdHJ1Y3QgeworICAgIFB5T2JqZWN0X0hFQUQKKyAgICBpbnQgZmRfZGV2cG9sbDsKKyAgICBpbnQgbWF4X25fZmRzOworICAgIGludCBuX2ZkczsKKyAgICBzdHJ1Y3QgcG9sbGZkICpmZHM7Cit9IGRldnBvbGxPYmplY3Q7CisKK3N0YXRpYyBQeVR5cGVPYmplY3QgZGV2cG9sbF9UeXBlOworCitzdGF0aWMgaW50IGRldnBvbGxfZmx1c2goZGV2cG9sbE9iamVjdCAqc2VsZikKK3sKKyAgICBpbnQgc2l6ZSwgbjsKKworICAgIGlmICghc2VsZi0+bl9mZHMpIHJldHVybiAwOworCisgICAgc2l6ZSA9IHNpemVvZihzdHJ1Y3QgcG9sbGZkKSpzZWxmLT5uX2ZkczsKKyAgICBzZWxmLT5uX2ZkcyA9IDA7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgbiA9IHdyaXRlKHNlbGYtPmZkX2RldnBvbGwsIHNlbGYtPmZkcywgc2l6ZSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKworICAgIGlmIChuID09IC0xICkgeworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgaWYgKG4gPCBzaXplKSB7CisgICAgICAgIC8qCisgICAgICAgICoqIERhdGEgd3JpdGVkIHRvIC9kZXYvcG9sbCBpcyBhIGJpbmFyeSBkYXRhIHN0cnVjdHVyZS4gSXQgaXMgbm90CisgICAgICAgICoqIGNsZWFyIHdoYXQgdG8gZG8gaWYgYSBwYXJ0aWFsIHdyaXRlIG9jY3VycmVkLiBGb3Igbm93LCByYWlzZQorICAgICAgICAqKiBhbiBleGNlcHRpb24gYW5kIHNlZSBpZiB3ZSBhY3R1YWxseSBmb3VuZCB0aGlzIHByb2JsZW0gaW4KKyAgICAgICAgKiogdGhlIHdpbGQuCisgICAgICAgICoqIFNlZSBodHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlNjM5Ny4KKyAgICAgICAgKi8KKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0lPRXJyb3IsICJmYWlsZWQgdG8gd3JpdGUgYWxsIHBvbGxmZHMuICIKKyAgICAgICAgICAgICAgICAiUGxlYXNlLCByZXBvcnQgYXQgaHR0cDovL2J1Z3MucHl0aG9uLm9yZy8uICIKKyAgICAgICAgICAgICAgICAiRGF0YSB0byByZXBvcnQ6IFNpemUgdHJpZWQ6ICVkLCBhY3R1YWwgc2l6ZSB3cml0dGVuOiAlZC4iLAorICAgICAgICAgICAgICAgIHNpemUsIG4pOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIHJldHVybiAwOworfQorCitzdGF0aWMgUHlPYmplY3QgKgoraW50ZXJuYWxfZGV2cG9sbF9yZWdpc3RlcihkZXZwb2xsT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgaW50IHJlbW92ZSkKK3sKKyAgICBQeU9iamVjdCAqbzsKKyAgICBpbnQgZmQsIGV2ZW50cyA9IFBPTExJTiB8IFBPTExQUkkgfCBQT0xMT1VUOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPfGk6cmVnaXN0ZXIiLCAmbywgJmV2ZW50cykpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgZmQgPSBQeU9iamVjdF9Bc0ZpbGVEZXNjcmlwdG9yKG8pOworICAgIGlmIChmZCA9PSAtMSkgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAocmVtb3ZlKSB7CisgICAgICAgIHNlbGYtPmZkc1tzZWxmLT5uX2Zkc10uZmQgPSBmZDsKKyAgICAgICAgc2VsZi0+ZmRzW3NlbGYtPm5fZmRzXS5ldmVudHMgPSBQT0xMUkVNT1ZFOworCisgICAgICAgIGlmICgrK3NlbGYtPm5fZmRzID09IHNlbGYtPm1heF9uX2ZkcykgeworICAgICAgICAgICAgaWYgKGRldnBvbGxfZmx1c2goc2VsZikpCisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBzZWxmLT5mZHNbc2VsZi0+bl9mZHNdLmZkID0gZmQ7CisgICAgc2VsZi0+ZmRzW3NlbGYtPm5fZmRzXS5ldmVudHMgPSBldmVudHM7CisKKyAgICBpZiAoKytzZWxmLT5uX2ZkcyA9PSBzZWxmLT5tYXhfbl9mZHMpIHsKKyAgICAgICAgaWYgKGRldnBvbGxfZmx1c2goc2VsZikpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKGRldnBvbGxfcmVnaXN0ZXJfZG9jLAorInJlZ2lzdGVyKGZkIFssIGV2ZW50bWFza10gKSAtPiBOb25lXG5cblwKK1JlZ2lzdGVyIGEgZmlsZSBkZXNjcmlwdG9yIHdpdGggdGhlIHBvbGxpbmcgb2JqZWN0LlxuXAorZmQgLS0gZWl0aGVyIGFuIGludGVnZXIsIG9yIGFuIG9iamVjdCB3aXRoIGEgZmlsZW5vKCkgbWV0aG9kIHJldHVybmluZyBhblxuXAorICAgICAgaW50LlxuXAorZXZlbnRzIC0tIGFuIG9wdGlvbmFsIGJpdG1hc2sgZGVzY3JpYmluZyB0aGUgdHlwZSBvZiBldmVudHMgdG8gY2hlY2sgZm9yIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitkZXZwb2xsX3JlZ2lzdGVyKGRldnBvbGxPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIHJldHVybiBpbnRlcm5hbF9kZXZwb2xsX3JlZ2lzdGVyKHNlbGYsIGFyZ3MsIDApOworfQorCitQeURvY19TVFJWQVIoZGV2cG9sbF9tb2RpZnlfZG9jLAorIm1vZGlmeShmZFssIGV2ZW50bWFza10pIC0+IE5vbmVcblxuXAorTW9kaWZ5IGEgcG9zc2libGUgYWxyZWFkeSByZWdpc3RlcmVkIGZpbGUgZGVzY3JpcHRvci5cblwKK2ZkIC0tIGVpdGhlciBhbiBpbnRlZ2VyLCBvciBhbiBvYmplY3Qgd2l0aCBhIGZpbGVubygpIG1ldGhvZCByZXR1cm5pbmcgYW5cblwKKyAgICAgIGludC5cblwKK2V2ZW50cyAtLSBhbiBvcHRpb25hbCBiaXRtYXNrIGRlc2NyaWJpbmcgdGhlIHR5cGUgb2YgZXZlbnRzIHRvIGNoZWNrIGZvciIpOworCitzdGF0aWMgUHlPYmplY3QgKgorZGV2cG9sbF9tb2RpZnkoZGV2cG9sbE9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgcmV0dXJuIGludGVybmFsX2RldnBvbGxfcmVnaXN0ZXIoc2VsZiwgYXJncywgMSk7Cit9CisKKworUHlEb2NfU1RSVkFSKGRldnBvbGxfdW5yZWdpc3Rlcl9kb2MsCisidW5yZWdpc3RlcihmZCkgLT4gTm9uZVxuXG5cCitSZW1vdmUgYSBmaWxlIGRlc2NyaXB0b3IgYmVpbmcgdHJhY2tlZCBieSB0aGUgcG9sbGluZyBvYmplY3QuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitkZXZwb2xsX3VucmVnaXN0ZXIoZGV2cG9sbE9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm8pCit7CisgICAgaW50IGZkOworCisgICAgZmQgPSBQeU9iamVjdF9Bc0ZpbGVEZXNjcmlwdG9yKCBvICk7CisgICAgaWYgKGZkID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHNlbGYtPmZkc1tzZWxmLT5uX2Zkc10uZmQgPSBmZDsKKyAgICBzZWxmLT5mZHNbc2VsZi0+bl9mZHNdLmV2ZW50cyA9IFBPTExSRU1PVkU7CisKKyAgICBpZiAoKytzZWxmLT5uX2ZkcyA9PSBzZWxmLT5tYXhfbl9mZHMpIHsKKyAgICAgICAgaWYgKGRldnBvbGxfZmx1c2goc2VsZikpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKGRldnBvbGxfcG9sbF9kb2MsCisicG9sbCggW3RpbWVvdXRdICkgLT4gbGlzdCBvZiAoZmQsIGV2ZW50KSAyLXR1cGxlc1xuXG5cCitQb2xscyB0aGUgc2V0IG9mIHJlZ2lzdGVyZWQgZmlsZSBkZXNjcmlwdG9ycywgcmV0dXJuaW5nIGEgbGlzdCBjb250YWluaW5nIFxuXAorYW55IGRlc2NyaXB0b3JzIHRoYXQgaGF2ZSBldmVudHMgb3IgZXJyb3JzIHRvIHJlcG9ydC4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2RldnBvbGxfcG9sbChkZXZwb2xsT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBzdHJ1Y3QgZHZwb2xsIGR2cDsKKyAgICBQeU9iamVjdCAqcmVzdWx0X2xpc3QgPSBOVUxMLCAqdG91dCA9IE5VTEw7CisgICAgaW50IHBvbGxfcmVzdWx0LCBpOworICAgIGxvbmcgdGltZW91dDsKKyAgICBQeU9iamVjdCAqdmFsdWUsICpudW0xLCAqbnVtMjsKKworICAgIGlmICghUHlBcmdfVW5wYWNrVHVwbGUoYXJncywgInBvbGwiLCAwLCAxLCAmdG91dCkpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgLyogQ2hlY2sgdmFsdWVzIGZvciB0aW1lb3V0ICovCisgICAgaWYgKHRvdXQgPT0gTlVMTCB8fCB0b3V0ID09IFB5X05vbmUpCisgICAgICAgIHRpbWVvdXQgPSAtMTsKKyAgICBlbHNlIGlmICghUHlOdW1iZXJfQ2hlY2sodG91dCkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJ0aW1lb3V0IG11c3QgYmUgYW4gaW50ZWdlciBvciBOb25lIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgdG91dCA9IFB5TnVtYmVyX0xvbmcodG91dCk7CisgICAgICAgIGlmICghdG91dCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB0aW1lb3V0ID0gUHlMb25nX0FzTG9uZyh0b3V0KTsKKyAgICAgICAgUHlfREVDUkVGKHRvdXQpOworICAgICAgICBpZiAodGltZW91dCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKCh0aW1lb3V0IDwgLTEpIHx8ICh0aW1lb3V0ID4gSU5UX01BWCkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAidGltZW91dCBpcyBvdXQgb2YgcmFuZ2UiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKGRldnBvbGxfZmx1c2goc2VsZikpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgZHZwLmRwX2ZkcyA9IHNlbGYtPmZkczsKKyAgICBkdnAuZHBfbmZkcyA9IHNlbGYtPm1heF9uX2ZkczsKKyAgICBkdnAuZHBfdGltZW91dCA9IHRpbWVvdXQ7CisKKyAgICAvKiBjYWxsIGRldnBvbGwoKSAqLworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICBwb2xsX3Jlc3VsdCA9IGlvY3RsKHNlbGYtPmZkX2RldnBvbGwsIERQX1BPTEwsICZkdnApOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisKKyAgICBpZiAocG9sbF9yZXN1bHQgPCAwKSB7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgLyogYnVpbGQgdGhlIHJlc3VsdCBsaXN0ICovCisKKyAgICByZXN1bHRfbGlzdCA9IFB5TGlzdF9OZXcocG9sbF9yZXN1bHQpOworICAgIGlmICghcmVzdWx0X2xpc3QpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGVsc2UgeworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgcG9sbF9yZXN1bHQ7IGkrKykgeworICAgICAgICAgICAgbnVtMSA9IFB5TG9uZ19Gcm9tTG9uZyhzZWxmLT5mZHNbaV0uZmQpOworICAgICAgICAgICAgbnVtMiA9IFB5TG9uZ19Gcm9tTG9uZyhzZWxmLT5mZHNbaV0ucmV2ZW50cyk7CisgICAgICAgICAgICBpZiAoKG51bTEgPT0gTlVMTCkgfHwgKG51bTIgPT0gTlVMTCkpIHsKKyAgICAgICAgICAgICAgICBQeV9YREVDUkVGKG51bTEpOworICAgICAgICAgICAgICAgIFB5X1hERUNSRUYobnVtMik7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHZhbHVlID0gUHlUdXBsZV9QYWNrKDIsIG51bTEsIG51bTIpOworICAgICAgICAgICAgUHlfREVDUkVGKG51bTEpOworICAgICAgICAgICAgUHlfREVDUkVGKG51bTIpOworICAgICAgICAgICAgaWYgKHZhbHVlID09IE5VTEwpCisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIGlmICgoUHlMaXN0X1NldEl0ZW0ocmVzdWx0X2xpc3QsIGksIHZhbHVlKSkgPT0gLTEpIHsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gcmVzdWx0X2xpc3Q7CisKKyAgZXJyb3I6CisgICAgUHlfREVDUkVGKHJlc3VsdF9saXN0KTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworc3RhdGljIFB5TWV0aG9kRGVmIGRldnBvbGxfbWV0aG9kc1tdID0geworICAgIHsicmVnaXN0ZXIiLCAgICAgICAgKFB5Q0Z1bmN0aW9uKWRldnBvbGxfcmVnaXN0ZXIsCisgICAgIE1FVEhfVkFSQVJHUywgIGRldnBvbGxfcmVnaXN0ZXJfZG9jfSwKKyAgICB7Im1vZGlmeSIsICAgICAgICAgIChQeUNGdW5jdGlvbilkZXZwb2xsX21vZGlmeSwKKyAgICAgTUVUSF9WQVJBUkdTLCAgZGV2cG9sbF9tb2RpZnlfZG9jfSwKKyAgICB7InVucmVnaXN0ZXIiLCAgICAgIChQeUNGdW5jdGlvbilkZXZwb2xsX3VucmVnaXN0ZXIsCisgICAgIE1FVEhfTywgICAgICAgIGRldnBvbGxfdW5yZWdpc3Rlcl9kb2N9LAorICAgIHsicG9sbCIsICAgICAgICAgICAgKFB5Q0Z1bmN0aW9uKWRldnBvbGxfcG9sbCwKKyAgICAgTUVUSF9WQVJBUkdTLCAgZGV2cG9sbF9wb2xsX2RvY30sCisgICAge05VTEwsICAgICAgICAgICAgICBOVUxMfSAgICAgICAgICAgLyogc2VudGluZWwgKi8KK307CisKK3N0YXRpYyBkZXZwb2xsT2JqZWN0ICoKK25ld0RldlBvbGxPYmplY3Qodm9pZCkKK3sKKyAgICBkZXZwb2xsT2JqZWN0ICpzZWxmOworICAgIGludCBmZF9kZXZwb2xsLCBsaW1pdF9yZXN1bHQ7CisgICAgc3RydWN0IHBvbGxmZCAqZmRzOworICAgIHN0cnVjdCBybGltaXQgbGltaXQ7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgLyoKKyAgICAqKiBJZiB3ZSB0cnkgdG8gcHJvY2VzcyBtb3JlIHRoYXQgZ2V0cmxpbWl0KCkKKyAgICAqKiBmZHMsIHRoZSBrZXJuZWwgd2lsbCBnaXZlIGFuIGVycm9yLCBzbworICAgICoqIHdlIHNldCB0aGUgbGltaXQgaGVyZS4gSXQgaXMgYSBkeW5hbWljCisgICAgKiogdmFsdWUsIGJlY2F1c2Ugd2UgY2FuIGNoYW5nZSBybGltaXQoKSBhbnl0aW1lLgorICAgICovCisgICAgbGltaXRfcmVzdWx0ID0gZ2V0cmxpbWl0KFJMSU1JVF9OT0ZJTEUsICZsaW1pdCk7CisgICAgaWYgKGxpbWl0X3Jlc3VsdCAhPSAtMSkKKyAgICAgICAgZmRfZGV2cG9sbCA9IG9wZW4oIi9kZXYvcG9sbCIsIE9fUkRXUik7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKworICAgIGlmIChsaW1pdF9yZXN1bHQgPT0gLTEpIHsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKGZkX2RldnBvbGwgPT0gLTEpIHsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vV2l0aEZpbGVuYW1lKFB5RXhjX0lPRXJyb3IsICIvZGV2L3BvbGwiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgZmRzID0gUHlNZW1fTkVXKHN0cnVjdCBwb2xsZmQsIGxpbWl0LnJsaW1fY3VyKTsKKyAgICBpZiAoZmRzID09IE5VTEwpIHsKKyAgICAgICAgY2xvc2UoZmRfZGV2cG9sbCk7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHNlbGYgPSBQeU9iamVjdF9OZXcoZGV2cG9sbE9iamVjdCwgJmRldnBvbGxfVHlwZSk7CisgICAgaWYgKHNlbGYgPT0gTlVMTCkgeworICAgICAgICBjbG9zZShmZF9kZXZwb2xsKTsKKyAgICAgICAgUHlNZW1fREVMKGZkcyk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBzZWxmLT5mZF9kZXZwb2xsID0gZmRfZGV2cG9sbDsKKyAgICBzZWxmLT5tYXhfbl9mZHMgPSBsaW1pdC5ybGltX2N1cjsKKyAgICBzZWxmLT5uX2ZkcyA9IDA7CisgICAgc2VsZi0+ZmRzID0gZmRzOworCisgICAgcmV0dXJuIHNlbGY7Cit9CisKK3N0YXRpYyB2b2lkCitkZXZwb2xsX2RlYWxsb2MoZGV2cG9sbE9iamVjdCAqc2VsZikKK3sKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgY2xvc2Uoc2VsZi0+ZmRfZGV2cG9sbCk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKworICAgIFB5TWVtX0RFTChzZWxmLT5mZHMpOworCisgICAgUHlPYmplY3RfRGVsKHNlbGYpOworfQorCitzdGF0aWMgUHlUeXBlT2JqZWN0IGRldnBvbGxfVHlwZSA9IHsKKyAgICAvKiBUaGUgb2JfdHlwZSBmaWVsZCBtdXN0IGJlIGluaXRpYWxpemVkIGluIHRoZSBtb2R1bGUgaW5pdCBmdW5jdGlvbgorICAgICAqIHRvIGJlIHBvcnRhYmxlIHRvIFdpbmRvd3Mgd2l0aG91dCB1c2luZyBDKysuICovCisgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApCisgICAgInNlbGVjdC5kZXZwb2xsIiwgICAgICAgICAgIC8qdHBfbmFtZSovCisgICAgc2l6ZW9mKGRldnBvbGxPYmplY3QpLCAgICAgIC8qdHBfYmFzaWNzaXplKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9pdGVtc2l6ZSovCisgICAgLyogbWV0aG9kcyAqLworICAgIChkZXN0cnVjdG9yKWRldnBvbGxfZGVhbGxvYywgLyp0cF9kZWFsbG9jKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9wcmludCovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0YXR0ciovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfc2V0YXR0ciovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcmVzZXJ2ZWQqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3JlcHIqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX251bWJlciovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfYXNfc2VxdWVuY2UqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2FzX21hcHBpbmcqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2hhc2gqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX2NhbGwqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3N0ciovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0YXR0cm8qLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3NldGF0dHJvKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9hc19idWZmZXIqLworICAgIFB5X1RQRkxBR1NfREVGQVVMVCwgICAgICAgICAvKnRwX2ZsYWdzKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9kb2MqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3RyYXZlcnNlKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9jbGVhciovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qdHBfcmljaGNvbXBhcmUqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKnRwX3dlYWtsaXN0b2Zmc2V0Ki8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9pdGVyKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyp0cF9pdGVybmV4dCovCisgICAgZGV2cG9sbF9tZXRob2RzLCAgICAgICAgICAgIC8qdHBfbWV0aG9kcyovCit9OworI2VuZGlmICAvKiBIQVZFX1NZU19ERVZQT0xMX0ggKi8KKworCisKIFB5RG9jX1NUUlZBUihwb2xsX2RvYywKICJSZXR1cm5zIGEgcG9sbGluZyBvYmplY3QsIHdoaWNoIHN1cHBvcnRzIHJlZ2lzdGVyaW5nIGFuZFxuXAogdW5yZWdpc3RlcmluZyBmaWxlIGRlc2NyaXB0b3JzLCBhbmQgdGhlbiBwb2xsaW5nIHRoZW0gZm9yIEkvTyBldmVudHMuIik7CkBAIC02NTUsNiArOTk5LDE5IEBACiAgICAgcmV0dXJuIChQeU9iamVjdCAqKW5ld1BvbGxPYmplY3QoKTsKIH0KIAorI2lmZGVmIEhBVkVfU1lTX0RFVlBPTExfSAorUHlEb2NfU1RSVkFSKGRldnBvbGxfZG9jLAorIlJldHVybnMgYSBwb2xsaW5nIG9iamVjdCwgd2hpY2ggc3VwcG9ydHMgcmVnaXN0ZXJpbmcgYW5kXG5cCit1bnJlZ2lzdGVyaW5nIGZpbGUgZGVzY3JpcHRvcnMsIGFuZCB0aGVuIHBvbGxpbmcgdGhlbSBmb3IgSS9PIGV2ZW50cy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3NlbGVjdF9kZXZwb2xsKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQoreworICAgIHJldHVybiAoUHlPYmplY3QgKiluZXdEZXZQb2xsT2JqZWN0KCk7Cit9CisjZW5kaWYKKworCiAjaWZkZWYgX19BUFBMRV9fCiAvKgogICogT24gc29tZSBzeXN0ZW1zIHBvbGwoKSBzZXRzIGVycm5vIG9uIGludmFsaWQgZmlsZSBkZXNjcmlwdG9ycy4gV2UgdGVzdApAQCAtNzMwLDIwICsxMDg3LDEwIEBACiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCi1uZXdQeUVwb2xsX09iamVjdChQeVR5cGVPYmplY3QgKnR5cGUsIGludCBzaXplaGludCwgU09DS0VUIGZkKQorbmV3UHlFcG9sbF9PYmplY3QoUHlUeXBlT2JqZWN0ICp0eXBlLCBpbnQgc2l6ZWhpbnQsIGludCBmbGFncywgU09DS0VUIGZkKQogewogICAgIHB5RXBvbGxfT2JqZWN0ICpzZWxmOwogCi0gICAgaWYgKHNpemVoaW50ID09IC0xKSB7Ci0gICAgICAgIHNpemVoaW50ID0gRkRfU0VUU0laRS0xOwotICAgIH0KLSAgICBlbHNlIGlmIChzaXplaGludCA8IDEpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAic2l6ZWhpbnQgbXVzdCBiZSBncmVhdGVyIHplcm8sIGdvdCAlZCIsCi0gICAgICAgICAgICAgICAgICAgICBzaXplaGludCk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLQogICAgIGFzc2VydCh0eXBlICE9IE5VTEwgJiYgdHlwZS0+dHBfYWxsb2MgIT0gTlVMTCk7CiAgICAgc2VsZiA9IChweUVwb2xsX09iamVjdCAqKSB0eXBlLT50cF9hbGxvYyh0eXBlLCAwKTsKICAgICBpZiAoc2VsZiA9PSBOVUxMKQpAQCAtNzUxLDYgKzEwOTgsMTEgQEAKIAogICAgIGlmIChmZCA9PSAtMSkgewogICAgICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisjaWZkZWYgSEFWRV9FUE9MTF9DUkVBVEUxCisgICAgICAgIGlmIChmbGFncykKKyAgICAgICAgICAgIHNlbGYtPmVwZmQgPSBlcG9sbF9jcmVhdGUxKGZsYWdzKTsKKyAgICAgICAgZWxzZQorI2VuZGlmCiAgICAgICAgIHNlbGYtPmVwZmQgPSBlcG9sbF9jcmVhdGUoc2l6ZWhpbnQpOwogICAgICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIH0KQEAgLTc1OSw3ICsxMTExLDcgQEAKICAgICB9CiAgICAgaWYgKHNlbGYtPmVwZmQgPCAwKSB7CiAgICAgICAgIFB5X0RFQ1JFRihzZWxmKTsKLSAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICByZXR1cm4gKFB5T2JqZWN0ICopc2VsZjsKQEAgLTc2OSwxNCArMTEyMSwxOCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHB5ZXBvbGxfbmV3KFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewotICAgIGludCBzaXplaGludCA9IC0xOwotICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsic2l6ZWhpbnQiLCBOVUxMfTsKKyAgICBpbnQgZmxhZ3MgPSAwLCBzaXplaGludCA9IEZEX1NFVFNJWkUgLSAxOworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsic2l6ZWhpbnQiLCAiZmxhZ3MiLCBOVUxMfTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8aTplcG9sbCIsIGt3bGlzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2l6ZWhpbnQpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8aWk6ZXBvbGwiLCBrd2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnNpemVoaW50LCAmZmxhZ3MpKQogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoc2l6ZWhpbnQgPCAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAibmVnYXRpdmUgc2l6ZWhpbnQiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogCi0gICAgcmV0dXJuIG5ld1B5RXBvbGxfT2JqZWN0KHR5cGUsIHNpemVoaW50LCAtMSk7CisgICAgcmV0dXJuIG5ld1B5RXBvbGxfT2JqZWN0KHR5cGUsIHNpemVoaW50LCBmbGFncywgLTEpOwogfQogCiAKQEAgLTc5Miw3ICsxMTQ4LDcgQEAKIHsKICAgICBlcnJubyA9IHB5ZXBvbGxfaW50ZXJuYWxfY2xvc2Uoc2VsZik7CiAgICAgaWYgKGVycm5vIDwgMCkgewotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIFB5X1JFVFVSTl9OT05FOwpAQCAtODM0LDcgKzExOTAsNyBAQAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaTpmcm9tZmQiLCAmZmQpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJldHVybiBuZXdQeUVwb2xsX09iamVjdCgoUHlUeXBlT2JqZWN0KiljbHMsIC0xLCBmZCk7CisgICAgcmV0dXJuIG5ld1B5RXBvbGxfT2JqZWN0KChQeVR5cGVPYmplY3QqKWNscywgRkRfU0VUU0laRSAtIDEsIDAsIGZkKTsKIH0KIAogUHlEb2NfU1RSVkFSKHB5ZXBvbGxfZnJvbWZkX2RvYywKQEAgLTg4NSw3ICsxMjQxLDcgQEAKICAgICB9CiAKICAgICBpZiAocmVzdWx0IDwgMCkgewotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIFB5X1JFVFVSTl9OT05FOwpAQCAtOTA5LDcgKzEyNjUsNyBAQAogUHlEb2NfU1RSVkFSKHB5ZXBvbGxfcmVnaXN0ZXJfZG9jLAogInJlZ2lzdGVyKGZkWywgZXZlbnRtYXNrXSkgLT4gTm9uZVxuXAogXG5cCi1SZWdpc3RlcnMgYSBuZXcgZmQgb3IgcmFpc2VzIGFuIElPRXJyb3IgaWYgdGhlIGZkIGlzIGFscmVhZHkgcmVnaXN0ZXJlZC5cblwKK1JlZ2lzdGVycyBhIG5ldyBmZCBvciByYWlzZXMgYW4gT1NFcnJvciBpZiB0aGUgZmQgaXMgYWxyZWFkeSByZWdpc3RlcmVkLlxuXAogZmQgaXMgdGhlIHRhcmdldCBmaWxlIGRlc2NyaXB0b3Igb2YgdGhlIG9wZXJhdGlvbi5cblwKIGV2ZW50cyBpcyBhIGJpdCBzZXQgY29tcG9zZWQgb2YgdGhlIHZhcmlvdXMgRVBPTEwgY29uc3RhbnRzOyB0aGUgZGVmYXVsdFxuXAogaXMgRVBPTExfSU4gfCBFUE9MTF9PVVQgfCBFUE9MTF9QUkkuXG5cCkBAIC0xMDA4LDcgKzEzNjQsNyBAQAogICAgIG5mZHMgPSBlcG9sbF93YWl0KHNlbGYtPmVwZmQsIGV2cywgbWF4ZXZlbnRzLCB0aW1lb3V0KTsKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChuZmRzIDwgMCkgewotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CiAKQEAgLTEwNjMsNyArMTQxOSw3IEBACiB9OwogCiBQeURvY19TVFJWQVIocHllcG9sbF9kb2MsCi0ic2VsZWN0LmVwb2xsKFtzaXplaGludD0tMV0pXG5cCisic2VsZWN0LmVwb2xsKHNpemVoaW50PS0xLCBmbGFncz0wKVxuXAogXG5cCiBSZXR1cm5zIGFuIGVwb2xsaW5nIG9iamVjdFxuXAogXG5cCkBAIC0xMzk5LDcgKzE3NTUsNyBAQAogICAgIH0KICAgICBpZiAoc2VsZi0+a3FmZCA8IDApIHsKICAgICAgICAgUHlfREVDUkVGKHNlbGYpOwotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CisgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiAoUHlPYmplY3QgKilzZWxmOwpAQCAtMTQzMSw3ICsxNzg3LDcgQEAKIHsKICAgICBlcnJubyA9IGtxdWV1ZV9xdWV1ZV9pbnRlcm5hbF9jbG9zZShzZWxmKTsKICAgICBpZiAoZXJybm8gPCAwKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgUHlfUkVUVVJOX05PTkU7CkBAIC0xNzEyLDYgKzIwNjgsMTEgQEAKIH07CiAKICNlbmRpZiAvKiBIQVZFX0tRVUVVRSAqLworCisKKworCisKIC8qICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAqLwogCiBQeURvY19TVFJWQVIoc2VsZWN0X2RvYywKQEAgLTE3NDMsNiArMjEwNCw5IEBACiAjaWZkZWYgSEFWRV9QT0xMCiAgICAgeyJwb2xsIiwgICAgICAgICAgICBzZWxlY3RfcG9sbCwgICAgTUVUSF9OT0FSR1MsICAgIHBvbGxfZG9jfSwKICNlbmRpZiAvKiBIQVZFX1BPTEwgKi8KKyNpZmRlZiBIQVZFX1NZU19ERVZQT0xMX0gKKyAgICB7ImRldnBvbGwiLCAgICAgICAgIHNlbGVjdF9kZXZwb2xsLCBNRVRIX05PQVJHUywgICAgZGV2cG9sbF9kb2N9LAorI2VuZGlmCiAgICAgezAsICAgICAgICAgMH0sICAgICAvKiBzZW50aW5lbCAqLwogfTsKIApAQCAtMTc2NSw2ICsyMTI5LDkgQEAKICAgICBOVUxMCiB9OwogCisKKworCiBQeU1PRElOSVRfRlVOQwogUHlJbml0X3NlbGVjdCh2b2lkKQogewpAQCAtMTc3Myw5ICsyMTQwLDggQEAKICAgICBpZiAobSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIFNlbGVjdEVycm9yID0gUHlFcnJfTmV3RXhjZXB0aW9uKCJzZWxlY3QuZXJyb3IiLCBOVUxMLCBOVUxMKTsKLSAgICBQeV9JTkNSRUYoU2VsZWN0RXJyb3IpOwotICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiZXJyb3IiLCBTZWxlY3RFcnJvcik7CisgICAgUHlfSU5DUkVGKFB5RXhjX09TRXJyb3IpOworICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiZXJyb3IiLCBQeUV4Y19PU0Vycm9yKTsKIAogI2lmZGVmIFBJUEVfQlVGCiAjaWZkZWYgSEFWRV9CUk9LRU5fUElQRV9CVUYKQEAgLTE4MjIsNiArMjE4OCwxMSBAQAogICAgIH0KICNlbmRpZiAvKiBIQVZFX1BPTEwgKi8KIAorI2lmZGVmIEhBVkVfU1lTX0RFVlBPTExfSAorICAgIGlmIChQeVR5cGVfUmVhZHkoJmRldnBvbGxfVHlwZSkgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9FUE9MTAogICAgIFB5X1RZUEUoJnB5RXBvbGxfVHlwZSkgPSAmUHlUeXBlX1R5cGU7CiAgICAgaWYgKFB5VHlwZV9SZWFkeSgmcHlFcG9sbF9UeXBlKSA8IDApCkBAIC0xODQ2LDYgKzIyMTcsMTAgQEAKICAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiRVBPTExXUk5PUk0iLCBFUE9MTFdSTk9STSk7CiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkVQT0xMV1JCQU5EIiwgRVBPTExXUkJBTkQpOwogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJFUE9MTE1TRyIsIEVQT0xMTVNHKTsKKworI2lmZGVmIEVQT0xMX0NMT0VYRUMKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiRVBPTExfQ0xPRVhFQyIsIEVQT0xMX0NMT0VYRUMpOworI2VuZGlmCiAjZW5kaWYgLyogSEFWRV9FUE9MTCAqLwogCiAjaWZkZWYgSEFWRV9LUVVFVUUKZGlmZiAtLWdpdCBhL01vZHVsZXMvc2hhMW1vZHVsZS5jIGIvTW9kdWxlcy9zaGExbW9kdWxlLmMKaW5kZXggYjI1YmQ0NC4uMzBlNWM1MCAxMDA2NDQKLS0tIGEvTW9kdWxlcy9zaGExbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9zaGExbW9kdWxlLmMKQEAgLTIxOCw3ICsyMTgsNyBAQAogICAgICAgICAgICBpbiAgICAgICAgICAgICArPSBTSEExX0JMT0NLU0laRTsKICAgICAgICAgICAgaW5sZW4gICAgICAgICAgLT0gU0hBMV9CTE9DS1NJWkU7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgIG4gPSBNSU4oaW5sZW4sIChTSEExX0JMT0NLU0laRSAtIHNoYTEtPmN1cmxlbikpOworICAgICAgICAgICBuID0gTUlOKGlubGVuLCAoUHlfc3NpemVfdCkoU0hBMV9CTE9DS1NJWkUgLSBzaGExLT5jdXJsZW4pKTsKICAgICAgICAgICAgbWVtY3B5KHNoYTEtPmJ1ZiArIHNoYTEtPmN1cmxlbiwgaW4sIChzaXplX3Qpbik7CiAgICAgICAgICAgIHNoYTEtPmN1cmxlbiAgICs9IG47CiAgICAgICAgICAgIGluICAgICAgICAgICAgICs9IG47CkBAIC0zNTIsNyArMzUyLDcgQEAKICAgICB1bnNpZ25lZCBjaGFyIGRpZ2VzdFtTSEExX0RJR0VTVFNJWkVdOwogICAgIHN0cnVjdCBzaGExX3N0YXRlIHRlbXA7CiAgICAgUHlPYmplY3QgKnJldHZhbDsKLSAgICBQeV9VTklDT0RFICpoZXhfZGlnZXN0OworICAgIFB5X1VDUzEgKmhleF9kaWdlc3Q7CiAgICAgaW50IGksIGo7CiAKICAgICAvKiBHZXQgdGhlIHJhdyAoYmluYXJ5KSBkaWdlc3QgdmFsdWUgKi8KQEAgLTM2MCwyNCArMzYwLDE4IEBACiAgICAgc2hhMV9kb25lKCZ0ZW1wLCBkaWdlc3QpOwogCiAgICAgLyogQ3JlYXRlIGEgbmV3IHN0cmluZyAqLwotICAgIHJldHZhbCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBTSEExX0RJR0VTVFNJWkUgKiAyKTsKKyAgICByZXR2YWwgPSBQeVVuaWNvZGVfTmV3KFNIQTFfRElHRVNUU0laRSAqIDIsIDEyNyk7CiAgICAgaWYgKCFyZXR2YWwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBoZXhfZGlnZXN0ID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmV0dmFsKTsKLSAgICBpZiAoIWhleF9kaWdlc3QpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXR2YWwpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQorICAgIGhleF9kaWdlc3QgPSBQeVVuaWNvZGVfMUJZVEVfREFUQShyZXR2YWwpOwogCiAgICAgLyogTWFrZSBoZXggdmVyc2lvbiBvZiB0aGUgZGlnZXN0ICovCiAgICAgZm9yKGk9aj0wOyBpPFNIQTFfRElHRVNUU0laRTsgaSsrKSB7Ci0gICAgICAgIGNoYXIgYzsKKyAgICAgICAgdW5zaWduZWQgY2hhciBjOwogICAgICAgICBjID0gKGRpZ2VzdFtpXSA+PiA0KSAmIDB4ZjsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBjOworICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgICAgIGMgPSAoZGlnZXN0W2ldICYgMHhmKTsKLSAgICAgICAgYyA9IChjPjkpID8gYysnYSctMTAgOiBjICsgJzAnOwotICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBjOworICAgICAgICBoZXhfZGlnZXN0W2orK10gPSBQeV9oZXhkaWdpdHNbY107CiAgICAgfQogICAgIHJldHVybiByZXR2YWw7CiB9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL3NoYTI1Nm1vZHVsZS5jIGIvTW9kdWxlcy9zaGEyNTZtb2R1bGUuYwppbmRleCA4NjE3MjEwLi5mMWVmMzI5IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3NoYTI1Nm1vZHVsZS5jCisrKyBiL01vZHVsZXMvc2hhMjU2bW9kdWxlLmMKQEAgLTQ0NSw3ICs0NDUsNyBAQAogICAgIHVuc2lnbmVkIGNoYXIgZGlnZXN0W1NIQV9ESUdFU1RTSVpFXTsKICAgICBTSEFvYmplY3QgdGVtcDsKICAgICBQeU9iamVjdCAqcmV0dmFsOwotICAgIFB5X1VOSUNPREUgKmhleF9kaWdlc3Q7CisgICAgUHlfVUNTMSAqaGV4X2RpZ2VzdDsKICAgICBpbnQgaSwgajsKIAogICAgIC8qIEdldCB0aGUgcmF3IChiaW5hcnkpIGRpZ2VzdCB2YWx1ZSAqLwpAQCAtNDUzLDI0ICs0NTMsMTggQEAKICAgICBzaGFfZmluYWwoZGlnZXN0LCAmdGVtcCk7CiAKICAgICAvKiBDcmVhdGUgYSBuZXcgc3RyaW5nICovCi0gICAgcmV0dmFsID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIHNlbGYtPmRpZ2VzdHNpemUgKiAyKTsKKyAgICByZXR2YWwgPSBQeVVuaWNvZGVfTmV3KHNlbGYtPmRpZ2VzdHNpemUgKiAyLCAxMjcpOwogICAgIGlmICghcmV0dmFsKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaGV4X2RpZ2VzdCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJldHZhbCk7Ci0gICAgaWYgKCFoZXhfZGlnZXN0KSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocmV0dmFsKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KKyAgICBoZXhfZGlnZXN0ID0gUHlVbmljb2RlXzFCWVRFX0RBVEEocmV0dmFsKTsKIAogICAgIC8qIE1ha2UgaGV4IHZlcnNpb24gb2YgdGhlIGRpZ2VzdCAqLwogICAgIGZvcihpPWo9MDsgaTxzZWxmLT5kaWdlc3RzaXplOyBpKyspIHsKLSAgICAgICAgY2hhciBjOworICAgICAgICB1bnNpZ25lZCBjaGFyIGM7CiAgICAgICAgIGMgPSAoZGlnZXN0W2ldID4+IDQpICYgMHhmOwotICAgICAgICBjID0gKGM+OSkgPyBjKydhJy0xMCA6IGMgKyAnMCc7Ci0gICAgICAgIGhleF9kaWdlc3RbaisrXSA9IGM7CisgICAgICAgIGhleF9kaWdlc3RbaisrXSA9IFB5X2hleGRpZ2l0c1tjXTsKICAgICAgICAgYyA9IChkaWdlc3RbaV0gJiAweGYpOwotICAgICAgICBjID0gKGM+OSkgPyBjKydhJy0xMCA6IGMgKyAnMCc7Ci0gICAgICAgIGhleF9kaWdlc3RbaisrXSA9IGM7CisgICAgICAgIGhleF9kaWdlc3RbaisrXSA9IFB5X2hleGRpZ2l0c1tjXTsKICAgICB9CiAgICAgcmV0dXJuIHJldHZhbDsKIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvc2hhNTEybW9kdWxlLmMgYi9Nb2R1bGVzL3NoYTUxMm1vZHVsZS5jCmluZGV4IDBmYWFmNWMuLjRmNWExMTMgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvc2hhNTEybW9kdWxlLmMKKysrIGIvTW9kdWxlcy9zaGE1MTJtb2R1bGUuYwpAQCAtNTExLDcgKzUxMSw3IEBACiAgICAgdW5zaWduZWQgY2hhciBkaWdlc3RbU0hBX0RJR0VTVFNJWkVdOwogICAgIFNIQW9iamVjdCB0ZW1wOwogICAgIFB5T2JqZWN0ICpyZXR2YWw7Ci0gICAgUHlfVU5JQ09ERSAqaGV4X2RpZ2VzdDsKKyAgICBQeV9VQ1MxICpoZXhfZGlnZXN0OwogICAgIGludCBpLCBqOwogCiAgICAgLyogR2V0IHRoZSByYXcgKGJpbmFyeSkgZGlnZXN0IHZhbHVlICovCkBAIC01MTksMjQgKzUxOSwxOCBAQAogICAgIHNoYTUxMl9maW5hbChkaWdlc3QsICZ0ZW1wKTsKIAogICAgIC8qIENyZWF0ZSBhIG5ldyBzdHJpbmcgKi8KLSAgICByZXR2YWwgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgc2VsZi0+ZGlnZXN0c2l6ZSAqIDIpOworICAgIHJldHZhbCA9IFB5VW5pY29kZV9OZXcoc2VsZi0+ZGlnZXN0c2l6ZSAqIDIsIDEyNyk7CiAgICAgaWYgKCFyZXR2YWwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBoZXhfZGlnZXN0ID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmV0dmFsKTsKLSAgICBpZiAoIWhleF9kaWdlc3QpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXR2YWwpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQorICAgIGhleF9kaWdlc3QgPSBQeVVuaWNvZGVfMUJZVEVfREFUQShyZXR2YWwpOwogCiAgICAgLyogTWFrZSBoZXggdmVyc2lvbiBvZiB0aGUgZGlnZXN0ICovCiAgICAgZm9yIChpPWo9MDsgaTxzZWxmLT5kaWdlc3RzaXplOyBpKyspIHsKLSAgICAgICAgY2hhciBjOworICAgICAgICB1bnNpZ25lZCBjaGFyIGM7CiAgICAgICAgIGMgPSAoZGlnZXN0W2ldID4+IDQpICYgMHhmOwotICAgICAgICBjID0gKGM+OSkgPyBjKydhJy0xMCA6IGMgKyAnMCc7Ci0gICAgICAgIGhleF9kaWdlc3RbaisrXSA9IGM7CisgICAgICAgIGhleF9kaWdlc3RbaisrXSA9IFB5X2hleGRpZ2l0c1tjXTsKICAgICAgICAgYyA9IChkaWdlc3RbaV0gJiAweGYpOwotICAgICAgICBjID0gKGM+OSkgPyBjKydhJy0xMCA6IGMgKyAnMCc7Ci0gICAgICAgIGhleF9kaWdlc3RbaisrXSA9IGM7CisgICAgICAgIGhleF9kaWdlc3RbaisrXSA9IFB5X2hleGRpZ2l0c1tjXTsKICAgICB9CiAgICAgcmV0dXJuIHJldHZhbDsKIH0KZGlmZiAtLWdpdCBhL01vZHVsZXMvc2lnbmFsbW9kdWxlLmMgYi9Nb2R1bGVzL3NpZ25hbG1vZHVsZS5jCmluZGV4IDMyY2Q4YmIuLmU0NmY4Y2YgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvc2lnbmFsbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9zaWduYWxtb2R1bGUuYwpAQCAtMjIsNiArMjIsMTQgQEAKICNpbmNsdWRlIDxzeXMvdGltZS5oPgogI2VuZGlmCiAKKyNpZiBkZWZpbmVkKEhBVkVfUFRIUkVBRF9TSUdNQVNLKSAmJiAhZGVmaW5lZChIQVZFX0JST0tFTl9QVEhSRUFEX1NJR01BU0spCisjICBkZWZpbmUgUFlQVEhSRUFEX1NJR01BU0sKKyNlbmRpZgorCisjaWYgZGVmaW5lZChQWVBUSFJFQURfU0lHTUFTSykgJiYgZGVmaW5lZChIQVZFX1BUSFJFQURfSCkKKyMgIGluY2x1ZGUgPHB0aHJlYWQuaD4KKyNlbmRpZgorCiAjaWZuZGVmIFNJR19FUlIKICNkZWZpbmUgU0lHX0VSUiAoKFB5T1Nfc2lnaGFuZGxlcl90KSgtMSkpCiAjZW5kaWYKQEAgLTEwMSw2ICsxMDksMTAgQEAKIAogc3RhdGljIFB5T1Nfc2lnaGFuZGxlcl90IG9sZF9zaWdpbnRoYW5kbGVyID0gU0lHX0RGTDsKIAorI2lmZGVmIE1TX1dJTkRPV1MKK3N0YXRpYyBIQU5ETEUgc2lnaW50X2V2ZW50ID0gTlVMTDsKKyNlbmRpZgorCiAjaWZkZWYgSEFWRV9HRVRJVElNRVIKIHN0YXRpYyBQeU9iamVjdCAqSXRpbWVyRXJyb3I7CiAKQEAgLTE2OCwxNSArMTgwLDE5IEBACiBzdGF0aWMgdm9pZAogdHJpcF9zaWduYWwoaW50IHNpZ19udW0pCiB7CisgICAgdW5zaWduZWQgY2hhciBieXRlOworCiAgICAgSGFuZGxlcnNbc2lnX251bV0udHJpcHBlZCA9IDE7CisgICAgaWYgKHdha2V1cF9mZCAhPSAtMSkgeworICAgICAgICBieXRlID0gKHVuc2lnbmVkIGNoYXIpc2lnX251bTsKKyAgICAgICAgd3JpdGUod2FrZXVwX2ZkLCAmYnl0ZSwgMSk7CisgICAgfQogICAgIGlmIChpc190cmlwcGVkKQogICAgICAgICByZXR1cm47CiAgICAgLyogU2V0IGlzX3RyaXBwZWQgYWZ0ZXIgc2V0dGluZyAudHJpcHBlZCwgYXMgaXQgZ2V0cwogICAgICAgIGNsZWFyZWQgaW4gUHlFcnJfQ2hlY2tTaWduYWxzKCkgYmVmb3JlIC50cmlwcGVkLiAqLwogICAgIGlzX3RyaXBwZWQgPSAxOwogICAgIFB5X0FkZFBlbmRpbmdDYWxsKGNoZWNrc2lnbmFsc193aXRoYXJnLCBOVUxMKTsKLSAgICBpZiAod2FrZXVwX2ZkICE9IC0xKQotICAgICAgICB3cml0ZSh3YWtldXBfZmQsICJcMCIsIDEpOwogfQogCiBzdGF0aWMgdm9pZApAQCAtMjE3LDYgKzIzMywxMSBAQAogICAgIC8qIElzc3VlICMxMDMxMTogYXN5bmNocm9ub3VzbHkgZXhlY3V0aW5nIHNpZ25hbCBoYW5kbGVycyBzaG91bGQgbm90CiAgICAgICAgbXV0YXRlIGVycm5vIHVuZGVyIHRoZSBmZWV0IG9mIHVuc3VzcGVjdGluZyBDIGNvZGUuICovCiAgICAgZXJybm8gPSBzYXZlX2Vycm5vOworCisjaWZkZWYgTVNfV0lORE9XUworICAgIGlmIChzaWdfbnVtID09IFNJR0lOVCkKKyAgICAgICAgU2V0RXZlbnQoc2lnaW50X2V2ZW50KTsKKyNlbmRpZgogfQogCiAKQEAgLTMxMyw3ICszMzQsNyBAQAogICAgIGVsc2UKICAgICAgICAgZnVuYyA9IHNpZ25hbF9oYW5kbGVyOwogICAgIGlmIChQeU9TX3NldHNpZyhzaWdfbnVtLCBmdW5jKSA9PSBTSUdfRVJSKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19SdW50aW1lRXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBvbGRfaGFuZGxlciA9IEhhbmRsZXJzW3NpZ19udW1dLmZ1bmM7CkBAIC0zODIsNyArNDAzLDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIGlmIChzaWdpbnRlcnJ1cHQoc2lnX251bSwgZmxhZyk8MCkgewotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfUnVudGltZUVycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKQEAgLTQ5NSw2ICs1MTYsMzQ2IEBACiBSZXR1cm5zIGN1cnJlbnQgdmFsdWUgb2YgZ2l2ZW4gaXRpbWVyLiIpOwogI2VuZGlmCiAKKyNpZiBkZWZpbmVkKFBZUFRIUkVBRF9TSUdNQVNLKSB8fCBkZWZpbmVkKEhBVkVfU0lHV0FJVCkgfHwgXAorICAgICAgICBkZWZpbmVkKEhBVkVfU0lHV0FJVElORk8pIHx8IGRlZmluZWQoSEFWRV9TSUdUSU1FRFdBSVQpCisvKiBDb252ZXJ0IGFuIGl0ZXJhYmxlIHRvIGEgc2lnc2V0LgorICAgUmV0dXJuIDAgb24gc3VjY2VzcywgcmV0dXJuIC0xIGFuZCByYWlzZSBhbiBleGNlcHRpb24gb24gZXJyb3IuICovCisKK3N0YXRpYyBpbnQKK2l0ZXJhYmxlX3RvX3NpZ3NldChQeU9iamVjdCAqaXRlcmFibGUsIHNpZ3NldF90ICptYXNrKQoreworICAgIGludCByZXN1bHQgPSAtMTsKKyAgICBQeU9iamVjdCAqaXRlcmF0b3IsICppdGVtOworICAgIGxvbmcgc2lnbnVtOworICAgIGludCBlcnI7CisKKyAgICBzaWdlbXB0eXNldChtYXNrKTsKKworICAgIGl0ZXJhdG9yID0gUHlPYmplY3RfR2V0SXRlcihpdGVyYWJsZSk7CisgICAgaWYgKGl0ZXJhdG9yID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICB3aGlsZSAoMSkKKyAgICB7CisgICAgICAgIGl0ZW0gPSBQeUl0ZXJfTmV4dChpdGVyYXRvcik7CisgICAgICAgIGlmIChpdGVtID09IE5VTEwpIHsKKyAgICAgICAgICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAgICBzaWdudW0gPSBQeUxvbmdfQXNMb25nKGl0ZW0pOworICAgICAgICBQeV9ERUNSRUYoaXRlbSk7CisgICAgICAgIGlmIChzaWdudW0gPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIGlmICgwIDwgc2lnbnVtICYmIHNpZ251bSA8IE5TSUcpCisgICAgICAgICAgICBlcnIgPSBzaWdhZGRzZXQobWFzaywgKGludClzaWdudW0pOworICAgICAgICBlbHNlCisgICAgICAgICAgICBlcnIgPSAxOworICAgICAgICBpZiAoZXJyKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAic2lnbmFsIG51bWJlciAlbGQgb3V0IG9mIHJhbmdlIiwgc2lnbnVtKTsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIH0KKyAgICB9CisgICAgcmVzdWx0ID0gMDsKKworZXJyb3I6CisgICAgUHlfWERFQ1JFRihpdGVyYXRvcik7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKyNlbmRpZgorCisjaWYgZGVmaW5lZChQWVBUSFJFQURfU0lHTUFTSykgfHwgZGVmaW5lZChIQVZFX1NJR1BFTkRJTkcpCitzdGF0aWMgUHlPYmplY3QqCitzaWdzZXRfdG9fc2V0KHNpZ3NldF90IG1hc2spCit7CisgICAgUHlPYmplY3QgKnNpZ251bSwgKnJlc3VsdDsKKyAgICBpbnQgc2lnOworCisgICAgcmVzdWx0ID0gUHlTZXRfTmV3KDApOworICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBmb3IgKHNpZyA9IDE7IHNpZyA8IE5TSUc7IHNpZysrKSB7CisgICAgICAgIGlmIChzaWdpc21lbWJlcigmbWFzaywgc2lnKSAhPSAxKQorICAgICAgICAgICAgY29udGludWU7CisKKyAgICAgICAgLyogSGFuZGxlIHRoZSBjYXNlIHdoZXJlIGl0IGlzIGEgbWVtYmVyIGJ5IGFkZGluZyB0aGUgc2lnbmFsIHRvCisgICAgICAgICAgIHRoZSByZXN1bHQgbGlzdC4gIElnbm9yZSB0aGUgb3RoZXIgY2FzZXMgYmVjYXVzZSB0aGV5IG1lYW4gdGhlCisgICAgICAgICAgIHNpZ25hbCBpc24ndCBhIG1lbWJlciBvZiB0aGUgbWFzayBvciB0aGUgc2lnbmFsIHdhcyBpbnZhbGlkLAorICAgICAgICAgICBhbmQgYW4gaW52YWxpZCBzaWduYWwgbXVzdCBoYXZlIGJlZW4gb3VyIGZhdWx0IGluIGNvbnN0cnVjdGluZworICAgICAgICAgICB0aGUgbG9vcCBib3VuZGFyaWVzLiAqLworICAgICAgICBzaWdudW0gPSBQeUxvbmdfRnJvbUxvbmcoc2lnKTsKKyAgICAgICAgaWYgKHNpZ251bSA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIGlmIChQeVNldF9BZGQocmVzdWx0LCBzaWdudW0pID09IC0xKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoc2lnbnVtKTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgUHlfREVDUkVGKHNpZ251bSk7CisgICAgfQorICAgIHJldHVybiByZXN1bHQ7Cit9CisjZW5kaWYKKworI2lmZGVmIFBZUFRIUkVBRF9TSUdNQVNLCitzdGF0aWMgUHlPYmplY3QgKgorc2lnbmFsX3B0aHJlYWRfc2lnbWFzayhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IGhvdzsKKyAgICBQeU9iamVjdCAqc2lnbmFsczsKKyAgICBzaWdzZXRfdCBtYXNrLCBwcmV2aW91czsKKyAgICBpbnQgZXJyOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpTzpwdGhyZWFkX3NpZ21hc2siLCAmaG93LCAmc2lnbmFscykpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKGl0ZXJhYmxlX3RvX3NpZ3NldChzaWduYWxzLCAmbWFzaykpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgZXJyID0gcHRocmVhZF9zaWdtYXNrKGhvdywgJm1hc2ssICZwcmV2aW91cyk7CisgICAgaWYgKGVyciAhPSAwKSB7CisgICAgICAgIGVycm5vID0gZXJyOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIC8qIGlmIHNpZ25hbHMgd2FzIHVuYmxvY2tlZCwgc2lnbmFsIGhhbmRsZXJzIGhhdmUgYmVlbiBjYWxsZWQgKi8KKyAgICBpZiAoUHlFcnJfQ2hlY2tTaWduYWxzKCkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcmV0dXJuIHNpZ3NldF90b19zZXQocHJldmlvdXMpOworfQorCitQeURvY19TVFJWQVIoc2lnbmFsX3B0aHJlYWRfc2lnbWFza19kb2MsCisicHRocmVhZF9zaWdtYXNrKGhvdywgbWFzaykgLT4gb2xkIG1hc2tcblwKK1xuXAorRmV0Y2ggYW5kL29yIGNoYW5nZSB0aGUgc2lnbmFsIG1hc2sgb2YgdGhlIGNhbGxpbmcgdGhyZWFkLiIpOworI2VuZGlmICAgLyogI2lmZGVmIFBZUFRIUkVBRF9TSUdNQVNLICovCisKKworI2lmZGVmIEhBVkVfU0lHUEVORElORworc3RhdGljIFB5T2JqZWN0ICoKK3NpZ25hbF9zaWdwZW5kaW5nKFB5T2JqZWN0ICpzZWxmKQoreworICAgIGludCBlcnI7CisgICAgc2lnc2V0X3QgbWFzazsKKyAgICBlcnIgPSBzaWdwZW5kaW5nKCZtYXNrKTsKKyAgICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworICAgIHJldHVybiBzaWdzZXRfdG9fc2V0KG1hc2spOworfQorCitQeURvY19TVFJWQVIoc2lnbmFsX3NpZ3BlbmRpbmdfZG9jLAorInNpZ3BlbmRpbmcoKSAtPiBsaXN0XG5cCitcblwKK0V4YW1pbmUgcGVuZGluZyBzaWduYWxzLiIpOworI2VuZGlmICAgLyogI2lmZGVmIEhBVkVfU0lHUEVORElORyAqLworCisKKyNpZmRlZiBIQVZFX1NJR1dBSVQKK3N0YXRpYyBQeU9iamVjdCAqCitzaWduYWxfc2lnd2FpdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKnNpZ25hbHM7CisgICAgc2lnc2V0X3Qgc2V0OworICAgIGludCBlcnIsIHNpZ251bTsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTzpzaWd3YWl0IiwgJnNpZ25hbHMpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChpdGVyYWJsZV90b19zaWdzZXQoc2lnbmFscywgJnNldCkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworICAgIGVyciA9IHNpZ3dhaXQoJnNldCwgJnNpZ251bSk7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAoZXJyKSB7CisgICAgICAgIGVycm5vID0gZXJyOworICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworICAgIH0KKworICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoc2lnbnVtKTsKK30KKworUHlEb2NfU1RSVkFSKHNpZ25hbF9zaWd3YWl0X2RvYywKKyJzaWd3YWl0KHNpZ3NldCkgLT4gc2lnbnVtXG5cCitcblwKK1dhaXQgYSBzaWduYWwuIik7CisjZW5kaWYgICAvKiAjaWZkZWYgSEFWRV9TSUdQRU5ESU5HICovCisKKyNpZiBkZWZpbmVkKEhBVkVfU0lHV0FJVElORk8pIHx8IGRlZmluZWQoSEFWRV9TSUdUSU1FRFdBSVQpCitzdGF0aWMgaW50IGluaXRpYWxpemVkOworc3RhdGljIFB5U3RydWN0U2VxdWVuY2VfRmllbGQgc3RydWN0X3NpZ2luZm9fZmllbGRzW10gPSB7CisgICAgeyJzaV9zaWdubyIsICAgICAgICAic2lnbmFsIG51bWJlciJ9LAorICAgIHsic2lfY29kZSIsICAgICAgICAgInNpZ25hbCBjb2RlIn0sCisgICAgeyJzaV9lcnJubyIsICAgICAgICAiZXJybm8gYXNzb2NpYXRlZCB3aXRoIHRoaXMgc2lnbmFsIn0sCisgICAgeyJzaV9waWQiLCAgICAgICAgICAic2VuZGluZyBwcm9jZXNzIElEIn0sCisgICAgeyJzaV91aWQiLCAgICAgICAgICAicmVhbCB1c2VyIElEIG9mIHNlbmRpbmcgcHJvY2VzcyJ9LAorICAgIHsic2lfc3RhdHVzIiwgICAgICAgImV4aXQgdmFsdWUgb3Igc2lnbmFsIn0sCisgICAgeyJzaV9iYW5kIiwgICAgICAgICAiYmFuZCBldmVudCBmb3IgU0lHUE9MTCJ9LAorICAgIHswfQorfTsKKworUHlEb2NfU1RSVkFSKHN0cnVjdF9zaWdpbmZvX19kb2NfXywKKyJzdHJ1Y3Rfc2lnaW5mbzogUmVzdWx0IGZyb20gc2lnd2FpdGluZm8gb3Igc2lndGltZWR3YWl0LlxuXG5cCitUaGlzIG9iamVjdCBtYXkgYmUgYWNjZXNzZWQgZWl0aGVyIGFzIGEgdHVwbGUgb2ZcblwKKyhzaV9zaWdubywgc2lfY29kZSwgc2lfZXJybm8sIHNpX3BpZCwgc2lfdWlkLCBzaV9zdGF0dXMsIHNpX2JhbmQpLFxuXAorb3IgdmlhIHRoZSBhdHRyaWJ1dGVzIHNpX3NpZ25vLCBzaV9jb2RlLCBhbmQgc28gb24uIik7CisKK3N0YXRpYyBQeVN0cnVjdFNlcXVlbmNlX0Rlc2Mgc3RydWN0X3NpZ2luZm9fZGVzYyA9IHsKKyAgICAic2lnbmFsLnN0cnVjdF9zaWdpbmZvIiwgICAgICAgICAgIC8qIG5hbWUgKi8KKyAgICBzdHJ1Y3Rfc2lnaW5mb19fZG9jX18sICAgICAgIC8qIGRvYyAqLworICAgIHN0cnVjdF9zaWdpbmZvX2ZpZWxkcywgICAgICAgLyogZmllbGRzICovCisgICAgNyAgICAgICAgICAvKiBuX2luX3NlcXVlbmNlICovCit9OworCitzdGF0aWMgUHlUeXBlT2JqZWN0IFNpZ2luZm9UeXBlOworCitzdGF0aWMgUHlPYmplY3QgKgorZmlsbF9zaWdpbmZvKHNpZ2luZm9fdCAqc2kpCit7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IFB5U3RydWN0U2VxdWVuY2VfTmV3KCZTaWdpbmZvVHlwZSk7CisgICAgaWYgKCFyZXN1bHQpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXN1bHQsIDAsIFB5TG9uZ19Gcm9tTG9uZygobG9uZykoc2ktPnNpX3NpZ25vKSkpOworICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0ocmVzdWx0LCAxLCBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpKHNpLT5zaV9jb2RlKSkpOworICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0ocmVzdWx0LCAyLCBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpKHNpLT5zaV9lcnJubykpKTsKKyAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHJlc3VsdCwgMywgUHlMb25nX0Zyb21QaWQoc2ktPnNpX3BpZCkpOworICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0ocmVzdWx0LCA0LCBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpKHNpLT5zaV91aWQpKSk7CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTShyZXN1bHQsIDUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5TG9uZ19Gcm9tTG9uZygobG9uZykoc2ktPnNpX3N0YXR1cykpKTsKKyAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHJlc3VsdCwgNiwgUHlMb25nX0Zyb21Mb25nKHNpLT5zaV9iYW5kKSk7CisgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpIHsKKyAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldHVybiByZXN1bHQ7Cit9CisjZW5kaWYKKworI2lmZGVmIEhBVkVfU0lHV0FJVElORk8KK3N0YXRpYyBQeU9iamVjdCAqCitzaWduYWxfc2lnd2FpdGluZm8oUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpzaWduYWxzOworICAgIHNpZ3NldF90IHNldDsKKyAgICBzaWdpbmZvX3Qgc2k7CisgICAgaW50IGVycjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTzpzaWd3YWl0aW5mbyIsICZzaWduYWxzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoaXRlcmFibGVfdG9fc2lnc2V0KHNpZ25hbHMsICZzZXQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKKyAgICBlcnIgPSBzaWd3YWl0aW5mbygmc2V0LCAmc2kpOworICAgIFB5X0VORF9BTExPV19USFJFQURTCisgICAgaWYgKGVyciA9PSAtMSkKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKKworICAgIHJldHVybiBmaWxsX3NpZ2luZm8oJnNpKTsKK30KKworUHlEb2NfU1RSVkFSKHNpZ25hbF9zaWd3YWl0aW5mb19kb2MsCisic2lnd2FpdGluZm8oc2lnc2V0KSAtPiBzdHJ1Y3Rfc2lnaW5mb1xuXAorXG5cCitXYWl0IHN5bmNocm9ub3VzbHkgZm9yIGEgc2lnbmFsIHVudGlsIG9uZSBvZiB0aGUgc2lnbmFscyBpbiAqc2lnc2V0KiBpc1xuXAorZGVsaXZlcmVkLlxuXAorUmV0dXJucyBhIHN0cnVjdF9zaWdpbmZvIGNvbnRhaW5pbmcgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNpZ25hbC4iKTsKKyNlbmRpZiAgIC8qICNpZmRlZiBIQVZFX1NJR1dBSVRJTkZPICovCisKKyNpZmRlZiBIQVZFX1NJR1RJTUVEV0FJVAorc3RhdGljIFB5T2JqZWN0ICoKK3NpZ25hbF9zaWd0aW1lZHdhaXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpzaWduYWxzLCAqdGltZW91dDsKKyAgICBzdHJ1Y3QgdGltZXNwZWMgYnVmOworICAgIHNpZ3NldF90IHNldDsKKyAgICBzaWdpbmZvX3Qgc2k7CisgICAgaW50IGVycjsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT086c2lndGltZWR3YWl0IiwgJnNpZ25hbHMsICZ0aW1lb3V0KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoIVB5VHVwbGVfQ2hlY2sodGltZW91dCkgfHwgUHlUdXBsZV9TaXplKHRpbWVvdXQpICE9IDIpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICJzaWd0aW1lZHdhaXQoKSBhcmcgMiBtdXN0IGJlIGEgdHVwbGUgIgorICAgICAgICAgICAgIih0aW1lb3V0X3NlYywgdGltZW91dF9uc2VjKSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9IGVsc2UgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKHRpbWVvdXQsICJsbDpzaWd0aW1lZHdhaXQiLAorICAgICAgICAgICAgICAgICAgICAmKGJ1Zi50dl9zZWMpLCAmKGJ1Zi50dl9uc2VjKSkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKGJ1Zi50dl9zZWMgPCAwIHx8IGJ1Zi50dl9uc2VjIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInRpbWVvdXQgbXVzdCBiZSBub24tbmVnYXRpdmUiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgaWYgKGl0ZXJhYmxlX3RvX3NpZ3NldChzaWduYWxzLCAmc2V0KSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCisgICAgZXJyID0gc2lndGltZWR3YWl0KCZzZXQsICZzaSwgJmJ1Zik7CisgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKKyAgICBpZiAoZXJyID09IC0xKSB7CisgICAgICAgIGlmIChlcnJubyA9PSBFQUdBSU4pCisgICAgICAgICAgICBQeV9SRVRVUk5fTk9ORTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19PU0Vycm9yKTsKKyAgICB9CisKKyAgICByZXR1cm4gZmlsbF9zaWdpbmZvKCZzaSk7Cit9CisKK1B5RG9jX1NUUlZBUihzaWduYWxfc2lndGltZWR3YWl0X2RvYywKKyJzaWd0aW1lZHdhaXQoc2lnc2V0LCAodGltZW91dF9zZWMsIHRpbWVvdXRfbnNlYykpIC0+IHN0cnVjdF9zaWdpbmZvXG5cCitcblwKK0xpa2Ugc2lnd2FpdGluZm8oKSwgYnV0IHdpdGggYSB0aW1lb3V0IHNwZWNpZmllZCBhcyBhIHR1cGxlIG9mIChzZWNvbmRzLFxuXAorbmFub3NlY29uZHMpLiIpOworI2VuZGlmICAgLyogI2lmZGVmIEhBVkVfU0lHVElNRURXQUlUICovCisKKworI2lmIGRlZmluZWQoSEFWRV9QVEhSRUFEX0tJTEwpICYmIGRlZmluZWQoV0lUSF9USFJFQUQpCitzdGF0aWMgUHlPYmplY3QgKgorc2lnbmFsX3B0aHJlYWRfa2lsbChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgbG9uZyB0aWQ7CisgICAgaW50IHNpZ251bTsKKyAgICBpbnQgZXJyOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJsaTpwdGhyZWFkX2tpbGwiLCAmdGlkLCAmc2lnbnVtKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBlcnIgPSBwdGhyZWFkX2tpbGwoKHB0aHJlYWRfdCl0aWQsIHNpZ251bSk7CisgICAgaWYgKGVyciAhPSAwKSB7CisgICAgICAgIGVycm5vID0gZXJyOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIC8qIHRoZSBzaWduYWwgbWF5IGhhdmUgYmVlbiBzZW5kIHRvIHRoZSBjdXJyZW50IHRocmVhZCAqLworICAgIGlmIChQeUVycl9DaGVja1NpZ25hbHMoKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKHNpZ25hbF9wdGhyZWFkX2tpbGxfZG9jLAorInB0aHJlYWRfa2lsbCh0aHJlYWRfaWQsIHNpZ251bSlcblwKK1xuXAorU2VuZCBhIHNpZ25hbCB0byBhIHRocmVhZC4iKTsKKyNlbmRpZiAgIC8qICNpZiBkZWZpbmVkKEhBVkVfUFRIUkVBRF9LSUxMKSAmJiBkZWZpbmVkKFdJVEhfVEhSRUFEKSAqLworCisKIAogLyogTGlzdCBvZiBmdW5jdGlvbnMgZGVmaW5lZCBpbiB0aGUgbW9kdWxlICovCiBzdGF0aWMgUHlNZXRob2REZWYgc2lnbmFsX21ldGhvZHNbXSA9IHsKQEAgLTUxNSwxMCArODc2LDM0IEBACiAjZW5kaWYKICNpZmRlZiBIQVZFX1BBVVNFCiAgICAgeyJwYXVzZSIsICAgICAgICAgICAgICAgICAgIChQeUNGdW5jdGlvbilzaWduYWxfcGF1c2UsCi0gICAgIE1FVEhfTk9BUkdTLHBhdXNlX2RvY30sCisgICAgIE1FVEhfTk9BUkdTLCBwYXVzZV9kb2N9LAogI2VuZGlmCiAgICAgeyJkZWZhdWx0X2ludF9oYW5kbGVyIiwgc2lnbmFsX2RlZmF1bHRfaW50X2hhbmRsZXIsCiAgICAgIE1FVEhfVkFSQVJHUywgZGVmYXVsdF9pbnRfaGFuZGxlcl9kb2N9LAorI2lmIGRlZmluZWQoSEFWRV9QVEhSRUFEX0tJTEwpICYmIGRlZmluZWQoV0lUSF9USFJFQUQpCisgICAgeyJwdGhyZWFkX2tpbGwiLCAgICAgICAgICAgIChQeUNGdW5jdGlvbilzaWduYWxfcHRocmVhZF9raWxsLAorICAgICBNRVRIX1ZBUkFSR1MsIHNpZ25hbF9wdGhyZWFkX2tpbGxfZG9jfSwKKyNlbmRpZgorI2lmZGVmIFBZUFRIUkVBRF9TSUdNQVNLCisgICAgeyJwdGhyZWFkX3NpZ21hc2siLCAgICAgICAgIChQeUNGdW5jdGlvbilzaWduYWxfcHRocmVhZF9zaWdtYXNrLAorICAgICBNRVRIX1ZBUkFSR1MsIHNpZ25hbF9wdGhyZWFkX3NpZ21hc2tfZG9jfSwKKyNlbmRpZgorI2lmZGVmIEhBVkVfU0lHUEVORElORworICAgIHsic2lncGVuZGluZyIsICAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pc2lnbmFsX3NpZ3BlbmRpbmcsCisgICAgIE1FVEhfTk9BUkdTLCBzaWduYWxfc2lncGVuZGluZ19kb2N9LAorI2VuZGlmCisjaWZkZWYgSEFWRV9TSUdXQUlUCisgICAgeyJzaWd3YWl0IiwgICAgICAgICAgICAgICAgIChQeUNGdW5jdGlvbilzaWduYWxfc2lnd2FpdCwKKyAgICAgTUVUSF9WQVJBUkdTLCBzaWduYWxfc2lnd2FpdF9kb2N9LAorI2VuZGlmCisjaWZkZWYgSEFWRV9TSUdXQUlUSU5GTworICAgIHsic2lnd2FpdGluZm8iLCAgICAgICAgICAgICAoUHlDRnVuY3Rpb24pc2lnbmFsX3NpZ3dhaXRpbmZvLAorICAgICBNRVRIX1ZBUkFSR1MsIHNpZ25hbF9zaWd3YWl0aW5mb19kb2N9LAorI2VuZGlmCisjaWZkZWYgSEFWRV9TSUdUSU1FRFdBSVQKKyAgICB7InNpZ3RpbWVkd2FpdCIsICAgICAgICAgICAgKFB5Q0Z1bmN0aW9uKXNpZ25hbF9zaWd0aW1lZHdhaXQsCisgICAgIE1FVEhfVkFSQVJHUywgc2lnbmFsX3NpZ3RpbWVkd2FpdF9kb2N9LAorI2VuZGlmCiAgICAge05VTEwsICAgICAgICAgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAvKiBzZW50aW5lbCAqLwogfTsKIApAQCAtNTg3LDYgKzk3MiwxNSBAQAogICAgIGlmIChtID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCisjaWYgZGVmaW5lZChIQVZFX1NJR1dBSVRJTkZPKSB8fCBkZWZpbmVkKEhBVkVfU0lHVElNRURXQUlUKQorICAgIGlmICghaW5pdGlhbGl6ZWQpCisgICAgICAgIFB5U3RydWN0U2VxdWVuY2VfSW5pdFR5cGUoJlNpZ2luZm9UeXBlLCAmc3RydWN0X3NpZ2luZm9fZGVzYyk7CisKKyAgICBQeV9JTkNSRUYoKFB5T2JqZWN0KikgJlNpZ2luZm9UeXBlKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgInN0cnVjdF9zaWdpbmZvIiwgKFB5T2JqZWN0KikgJlNpZ2luZm9UeXBlKTsKKyAgICBpbml0aWFsaXplZCA9IDE7CisjZW5kaWYKKwogICAgIC8qIEFkZCBzb21lIHN5bWJvbGljIGNvbnN0YW50cyB0byB0aGUgbW9kdWxlICovCiAgICAgZCA9IFB5TW9kdWxlX0dldERpY3QobSk7CiAKQEAgLTYwMyw2ICs5OTcsMTkgQEAKICAgICAgICAgZ290byBmaW5hbGx5OwogICAgIFB5X0RFQ1JFRih4KTsKIAorI2lmZGVmIFNJR19CTE9DSworICAgIGlmIChQeU1vZHVsZV9BZGRJbnRNYWNybyhtLCBTSUdfQkxPQ0spKQorICAgICAgICAgZ290byBmaW5hbGx5OworI2VuZGlmCisjaWZkZWYgU0lHX1VOQkxPQ0sKKyAgICBpZiAoUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgU0lHX1VOQkxPQ0spKQorICAgICAgICAgZ290byBmaW5hbGx5OworI2VuZGlmCisjaWZkZWYgU0lHX1NFVE1BU0sKKyAgICBpZiAoUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgU0lHX1NFVE1BU0spKQorICAgICAgICAgZ290byBmaW5hbGx5OworI2VuZGlmCisKICAgICB4ID0gSW50SGFuZGxlciA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKGQsICJkZWZhdWx0X2ludF9oYW5kbGVyIik7CiAgICAgaWYgKCF4KQogICAgICAgICBnb3RvIGZpbmFsbHk7CkBAIC04NTUsNiArMTI2MiwxMSBAQAogICAgIFB5X0RFQ1JFRih4KTsKICNlbmRpZgogCisjaWZkZWYgTVNfV0lORE9XUworICAgIC8qIENyZWF0ZSBtYW51YWwtcmVzZXQgZXZlbnQsIGluaXRpYWxseSB1bnNldCAqLworICAgIHNpZ2ludF9ldmVudCA9IENyZWF0ZUV2ZW50KE5VTEwsIFRSVUUsIEZBTFNFLCBGQUxTRSk7CisjZW5kaWYKKwogICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKSB7CiAgICAgICAgIFB5X0RFQ1JFRihtKTsKICAgICAgICAgbSA9IE5VTEw7CkBAIC0xMDAxLDMgKzE0MTMsMjUgQEAKICAgICBfUHlJbXBvcnRfUmVJbml0TG9jaygpOwogI2VuZGlmCiB9CisKK2ludAorX1B5T1NfSXNNYWluVGhyZWFkKHZvaWQpCit7CisjaWZkZWYgV0lUSF9USFJFQUQKKyAgICByZXR1cm4gUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpID09IG1haW5fdGhyZWFkOworI2Vsc2UKKyAgICByZXR1cm4gMTsKKyNlbmRpZgorfQorCisjaWZkZWYgTVNfV0lORE9XUwordm9pZCAqX1B5T1NfU2lnaW50RXZlbnQodm9pZCkKK3sKKyAgICAvKiBSZXR1cm5zIGEgbWFudWFsLXJlc2V0IGV2ZW50IHdoaWNoIGdldHMgdHJpcHBlZCB3aGVuZXZlcgorICAgICAgIFNJR0lOVCBpcyByZWNlaXZlZC4KKworICAgICAgIFB5dGhvbi5oIGRvZXMgbm90IGluY2x1ZGUgd2luZG93cy5oIHNvIHdlIGRvIGNhbm5vdCB1c2UgSEFORExFCisgICAgICAgYXMgdGhlIHJldHVybiB0eXBlIG9mIHRoaXMgZnVuY3Rpb24uICBXZSB1c2Ugdm9pZCogaW5zdGVhZC4gKi8KKyAgICByZXR1cm4gc2lnaW50X2V2ZW50OworfQorI2VuZGlmCmRpZmYgLS1naXQgYS9Nb2R1bGVzL3NvY2tldG1vZHVsZS5jIGIvTW9kdWxlcy9zb2NrZXRtb2R1bGUuYwppbmRleCAzMjAyMjdmLi5iMmFiNWU5IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3NvY2tldG1vZHVsZS5jCisrKyBiL01vZHVsZXMvc29ja2V0bW9kdWxlLmMKQEAgLTQyLDYgKzQyLDkgQEAKIC0gc29ja2V0LmluZXRfbnRvYShwYWNrZWQgSVApIC0+IElQIGFkZHJlc3Mgc3RyaW5nCiAtIHNvY2tldC5nZXRkZWZhdWx0dGltZW91dCgpIC0+IE5vbmUgfCBmbG9hdAogLSBzb2NrZXQuc2V0ZGVmYXVsdHRpbWVvdXQoTm9uZSB8IGZsb2F0KQorLSBzb2NrZXQuaWZfbmFtZWluZGV4KCkgLT4gbGlzdCBvZiB0dXBsZXMgKGlmX2luZGV4LCBpZl9uYW1lKQorLSBzb2NrZXQuaWZfbmFtZXRvaW5kZXgobmFtZSkgLT4gY29ycmVzcG9uZGluZyBpbnRlcmZhY2UgaW5kZXgKKy0gc29ja2V0LmlmX2luZGV4dG9uYW1lKGluZGV4KSAtPiBjb3JyZXNwb25kaW5nIGludGVyZmFjZSBuYW1lCiAtIGFuIEludGVybmV0IHNvY2tldCBhZGRyZXNzIGlzIGEgcGFpciAoaG9zdG5hbWUsIHBvcnQpCiAgIHdoZXJlIGhvc3RuYW1lIGNhbiBiZSBhbnl0aGluZyByZWNvZ25pemVkIGJ5IGdldGhvc3RieW5hbWUoKQogICAoaW5jbHVkaW5nIHRoZSBkZC5kZC5kZC5kZCBub3RhdGlvbikgYW5kIHBvcnQgaXMgaW4gaG9zdCBieXRlIG9yZGVyCkBAIC0xMzMsNiArMTM2LDkgQEAKIHNldHNvY2tvcHQobGV2ZWwsIG9wdG5hbWUsIHZhbHVlKSAtLSBzZXQgc29ja2V0IG9wdGlvbnNcblwKIHNldHRpbWVvdXQoTm9uZSB8IGZsb2F0KSAtLSBzZXQgb3IgY2xlYXIgdGhlIHRpbWVvdXRcblwKIHNodXRkb3duKGhvdykgLS0gc2h1dCBkb3duIHRyYWZmaWMgaW4gb25lIG9yIGJvdGggZGlyZWN0aW9uc1xuXAoraWZfbmFtZWluZGV4KCkgLS0gcmV0dXJuIGFsbCBuZXR3b3JrIGludGVyZmFjZSBpbmRpY2VzIGFuZCBuYW1lc1xuXAoraWZfbmFtZXRvaW5kZXgobmFtZSkgLS0gcmV0dXJuIHRoZSBjb3JyZXNwb25kaW5nIGludGVyZmFjZSBpbmRleFxuXAoraWZfaW5kZXh0b25hbWUoaW5kZXgpIC0tIHJldHVybiB0aGUgY29ycmVzcG9uZGluZyBpbnRlcmZhY2UgbmFtZVxuXAogXG5cCiAgWypdIG5vdCBhdmFpbGFibGUgb24gYWxsIHBsYXRmb3JtcyEiKTsKIApAQCAtMTUwLDEyICsxNTYsMTYgQEAKICMgdW5kZWYgSEFWRV9HRVRIT1NUQllOQU1FX1JfNl9BUkcKICNlbmRpZgogCisjaWYgZGVmaW5lZChfX09wZW5CU0RfXykKKyMgaW5jbHVkZSA8c3lzL3Vpby5oPgorI2VuZGlmCisKICNpZm5kZWYgV0lUSF9USFJFQUQKICMgdW5kZWYgSEFWRV9HRVRIT1NUQllOQU1FX1IKICNlbmRpZgogCiAjaWZkZWYgSEFWRV9HRVRIT1NUQllOQU1FX1IKLSMgaWYgZGVmaW5lZChfQUlYKSB8fCBkZWZpbmVkKF9fb3NmX18pCisjIGlmIGRlZmluZWQoX0FJWCkKICMgIGRlZmluZSBIQVZFX0dFVEhPU1RCWU5BTUVfUl8zX0FSRwogIyBlbGlmIGRlZmluZWQoX19zdW4pIHx8IGRlZmluZWQoX19zZ2kpCiAjICBkZWZpbmUgSEFWRV9HRVRIT1NUQllOQU1FX1JfNV9BUkcKQEAgLTI1MCw2ICsyNjAsMTQgQEAKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNlbmRpZgogCisjaWZkZWYgSEFWRV9TWVNfU09DS0VUX0gKKyNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CisjZW5kaWYKKworI2lmZGVmIEhBVkVfTkVUX0lGX0gKKyNpbmNsdWRlIDxuZXQvaWYuaD4KKyNlbmRpZgorCiAvKiBHZW5lcmljIHNvY2tldCBvYmplY3QgZGVmaW5pdGlvbnMgYW5kIGluY2x1ZGVzICovCiAjZGVmaW5lIFB5U29ja2V0X0JVSUxESU5HX1NPQ0tFVAogI2luY2x1ZGUgInNvY2tldG1vZHVsZS5oIgpAQCAtMjYwLDYgKzI3OCw3IEBACiAKIC8qIE5vbi1NUyBXSU5ET1dTIGluY2x1ZGVzICovCiAjIGluY2x1ZGUgPG5ldGRiLmg+CisjIGluY2x1ZGUgPHVuaXN0ZC5oPgogCiAvKiBIZWFkZXJzIG5lZWRlZCBmb3IgaW5ldF9udG9hKCkgYW5kIGluZXRfYWRkcigpICovCiAjIGlmIGRlZmluZWQoUFlPU19PUzIpICYmIGRlZmluZWQoUFlDQ19WQUNQUCkKQEAgLTQxNyw3ICs0MzYsOCBAQAogI2RlZmluZSBTRUdNRU5UX1NJWkUgKDMyICogMTAyNCAtMSkKICNlbmRpZgogCi0jZGVmaW5lIFNBUzJTQSh4KSAgICAgICAoKHN0cnVjdCBzb2NrYWRkciAqKSh4KSkKKy8qIENvbnZlcnQgInNvY2tfYWRkcl90ICoiIHRvICJzdHJ1Y3Qgc29ja2FkZHIgKiIuICovCisjZGVmaW5lIFNBUzJTQSh4KSAgICAgICAoJigoeCktPnNhKSkKIAogLyoKICAqIENvbnN0YW50cyBmb3IgZ2V0bmFtZWluZm8oKQpAQCAtNDM4LDcgKzQ1OCw2IEBACiAKIC8qIEdsb2JhbCB2YXJpYWJsZSBob2xkaW5nIHRoZSBleGNlcHRpb24gdHlwZSBmb3IgZXJyb3JzIGRldGVjdGVkCiAgICBieSB0aGlzIG1vZHVsZSAoYnV0IG5vdCBhcmd1bWVudCB0eXBlIG9yIG1lbW9yeSBlcnJvcnMsIGV0Yy4pLiAqLwotc3RhdGljIFB5T2JqZWN0ICpzb2NrZXRfZXJyb3I7CiBzdGF0aWMgUHlPYmplY3QgKnNvY2tldF9oZXJyb3I7CiBzdGF0aWMgUHlPYmplY3QgKnNvY2tldF9nYWllcnJvcjsKIHN0YXRpYyBQeU9iamVjdCAqc29ja2V0X3RpbWVvdXQ7CkBAIC00NTUsNiArNDc0LDE3IEBACiAjaW5jbHVkZSA8c3lzL3BvbGwuaD4KICNlbmRpZgogCisvKiBMYXJnZXN0IHZhbHVlIHRvIHRyeSB0byBzdG9yZSBpbiBhIHNvY2tsZW5fdCAodXNlZCB3aGVuIGhhbmRsaW5nCisgICBhbmNpbGxhcnkgZGF0YSkuICBQT1NJWCByZXF1aXJlcyBzb2NrbGVuX3QgdG8gaG9sZCBhdCBsZWFzdAorICAgKDIqKjMxKS0xIGFuZCByZWNvbW1lbmRzIGFnYWluc3Qgc3RvcmluZyBsYXJnZXIgdmFsdWVzLCBidXQKKyAgIHNvY2tsZW5fdCB3YXMgb3JpZ2luYWxseSBpbnQgaW4gdGhlIEJTRCBpbnRlcmZhY2UsIHNvIHRvIGJlIG9uIHRoZQorICAgc2FmZSBzaWRlIHdlIHVzZSB0aGUgc21hbGxlciBvZiAoMioqMzEpLTEgYW5kIElOVF9NQVguICovCisjaWYgSU5UX01BWCA+IDB4N2ZmZmZmZmYKKyNkZWZpbmUgU09DS0xFTl9UX0xJTUlUIDB4N2ZmZmZmZmYKKyNlbHNlCisjZGVmaW5lIFNPQ0tMRU5fVF9MSU1JVCBJTlRfTUFYCisjZW5kaWYKKwogI2lmZGVmIEhBVkVfUE9MTAogLyogSW5zdGVhZCBvZiBzZWxlY3QoKSwgd2UnbGwgdXNlIHBvbGwoKSBzaW5jZSBwb2xsKCkgd29ya3Mgb24gYW55IGZkLiAqLwogI2RlZmluZSBJU19TRUxFQ1RBQkxFKHMpIDEKQEAgLTQ2OCw3ICs0OTgsNyBAQAogc3RhdGljIFB5T2JqZWN0Kgogc2VsZWN0X2Vycm9yKHZvaWQpCiB7Ci0gICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgInVuYWJsZSB0byBzZWxlY3Qgb24gc29ja2V0Iik7CisgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJ1bmFibGUgdG8gc2VsZWN0IG9uIHNvY2tldCIpOwogICAgIHJldHVybiBOVUxMOwogfQogCkBAIC00OTUsNyArNTI1LDcgQEAKICAgICAgICByZWNvZ25pemVzIHRoZSBlcnJvciBjb2RlcyB1c2VkIGJ5IGJvdGggR2V0TGFzdEVycm9yKCkgYW5kCiAgICAgICAgV1NBR2V0TGFzdEVycm9yICovCiAgICAgaWYgKGVycl9ubykKLSAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKHNvY2tldF9lcnJvciwgZXJyX25vKTsKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEV4Y0Zyb21XaW5kb3dzRXJyKFB5RXhjX09TRXJyb3IsIGVycl9ubyk7CiAjZW5kaWYKIAogI2lmIGRlZmluZWQoUFlPU19PUzIpICYmICFkZWZpbmVkKFBZQ0NfR0NDKQpAQCAtNTI2LDcgKzU1Niw3IEBACiAgICAgICAgICAgICB9CiAgICAgICAgICAgICB2ID0gUHlfQnVpbGRWYWx1ZSgiKGlzKSIsIG15ZXJyb3Jjb2RlLCBvdXRidWYpOwogICAgICAgICAgICAgaWYgKHYgIT0gTlVMTCkgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldE9iamVjdChzb2NrZXRfZXJyb3IsIHYpOworICAgICAgICAgICAgICAgIFB5RXJyX1NldE9iamVjdChQeUV4Y19PU0Vycm9yLCB2KTsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTUzNCw3ICs1NjQsNyBAQAogICAgIH0KICNlbmRpZgogCi0gICAgcmV0dXJuIFB5RXJyX1NldEZyb21FcnJubyhzb2NrZXRfZXJyb3IpOworICAgIHJldHVybiBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiB9CiAKIApAQCAtODUzLDEzICs4ODMsMTMgQEAKICNlbmRpZgogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgZnJlZWFkZHJpbmZvKHJlcyk7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAgICAgInVuc3VwcG9ydGVkIGFkZHJlc3MgZmFtaWx5Iik7CiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIH0KICAgICAgICAgaWYgKHJlcy0+YWlfbmV4dCkgewogICAgICAgICAgICAgZnJlZWFkZHJpbmZvKHJlcyk7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAgICAgIndpbGRjYXJkIHJlc29sdmVkIHRvIG11bHRpcGxlIGFkZHJlc3MiKTsKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgfQpAQCAtODcyLDcgKzkwMiw3IEBACiAgICAgaWYgKG5hbWVbMF0gPT0gJzwnICYmIHN0cmNtcChuYW1lLCAiPGJyb2FkY2FzdD4iKSA9PSAwKSB7CiAgICAgICAgIHN0cnVjdCBzb2NrYWRkcl9pbiAqc2luOwogICAgICAgICBpZiAoYWYgIT0gQUZfSU5FVCAmJiBhZiAhPSBBRl9VTlNQRUMpIHsKLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsCisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICAgICAiYWRkcmVzcyBmYW1pbHkgbWlzbWF0Y2hlZCIpOwogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICB9CkBAIC05MzAsNyArOTYwLDcgQEAKICAgICAgICAgcmV0dXJuIDE2OwogI2VuZGlmCiAgICAgZGVmYXVsdDoKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgInVua25vd24gYWRkcmVzcyBmYW1pbHkiKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJ1bmtub3duIGFkZHJlc3MgZmFtaWx5Iik7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiB9CkBAIC05NzksNyArMTAwOSw3IEBACiAgICAgICAgIGJkYWRkci0+Yls1XSA9IGI1OwogICAgICAgICByZXR1cm4gNjsKICAgICB9IGVsc2UgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAiYmFkIGJsdWV0b290aCBhZGRyZXNzIik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAiYmFkIGJsdWV0b290aCBhZGRyZXNzIik7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiB9CkBAIC0xMDQ0LDcgKzEwNzQsNyBAQAogI2VuZGlmIC8qIGxpbnV4ICovCiAgICAgICAgIHsKICAgICAgICAgICAgIC8qIHJlZ3VsYXIgTlVMTC10ZXJtaW5hdGVkIHN0cmluZyAqLwotICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKGEtPnN1bl9wYXRoKTsKKyAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGEtPnN1bl9wYXRoKTsKICAgICAgICAgfQogICAgIH0KICNlbmRpZiAvKiBBRl9VTklYICovCkBAIC0xMTkwLDYgKzEyMjAsMjUgQEAKICAgICB9CiAjZW5kaWYKIAorI2lmZGVmIEFGX0NBTgorICAgIGNhc2UgQUZfQ0FOOgorICAgIHsKKyAgICAgICAgc3RydWN0IHNvY2thZGRyX2NhbiAqYSA9IChzdHJ1Y3Qgc29ja2FkZHJfY2FuICopYWRkcjsKKyAgICAgICAgY2hhciAqaWZuYW1lID0gIiI7CisgICAgICAgIHN0cnVjdCBpZnJlcSBpZnI7CisgICAgICAgIC8qIG5lZWQgdG8gbG9vayB1cCBpbnRlcmZhY2UgbmFtZSBnaXZlbiBpbmRleCAqLworICAgICAgICBpZiAoYS0+Y2FuX2lmaW5kZXgpIHsKKyAgICAgICAgICAgIGlmci5pZnJfaWZpbmRleCA9IGEtPmNhbl9pZmluZGV4OworICAgICAgICAgICAgaWYgKGlvY3RsKHNvY2tmZCwgU0lPQ0dJRk5BTUUsICZpZnIpID09IDApCisgICAgICAgICAgICAgICAgaWZuYW1lID0gaWZyLmlmcl9uYW1lOworICAgICAgICB9CisKKyAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIk8maCIsIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhLT5jYW5fZmFtaWx5KTsKKyAgICB9CisjZW5kaWYKKwogICAgIC8qIE1vcmUgY2FzZXMgaGVyZS4uLiAqLwogCiAgICAgZGVmYXVsdDoKQEAgLTEyMjEsMTcgKzEyNzAsMjcgQEAKICAgICAgICAgc3RydWN0IHNvY2thZGRyX3VuKiBhZGRyOwogICAgICAgICBjaGFyICpwYXRoOwogICAgICAgICBpbnQgbGVuOwotICAgICAgICBpZiAoIVB5QXJnX1BhcnNlKGFyZ3MsICJzIyIsICZwYXRoLCAmbGVuKSkKLSAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBpbnQgcmV0dmFsID0gMDsKKworICAgICAgICAvKiBQRVAgMzgzLiAgTm90IHVzaW5nIFB5VW5pY29kZV9GU0NvbnZlcnRlciBzaW5jZSB3ZSBuZWVkIHRvCisgICAgICAgICAgIGFsbG93IGVtYmVkZGVkIG51bGxzIG9uIExpbnV4LiAqLworICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKGFyZ3MpKSB7CisgICAgICAgICAgICBpZiAoKGFyZ3MgPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KGFyZ3MpKSA9PSBOVUxMKQorICAgICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIFB5X0lOQ1JFRihhcmdzKTsKKyAgICAgICAgaWYgKCFQeUFyZ19QYXJzZShhcmdzLCAieSMiLCAmcGF0aCwgJmxlbikpCisgICAgICAgICAgICBnb3RvIHVuaXhfb3V0OwogCiAgICAgICAgIGFkZHIgPSAoc3RydWN0IHNvY2thZGRyX3VuKilhZGRyX3JldDsKICNpZmRlZiBsaW51eAogICAgICAgICBpZiAobGVuID4gMCAmJiBwYXRoWzBdID09IDApIHsKICAgICAgICAgICAgIC8qIExpbnV4IGFic3RyYWN0IG5hbWVzcGFjZSBleHRlbnNpb24gKi8KICAgICAgICAgICAgIGlmIChsZW4gPiBzaXplb2YgYWRkci0+c3VuX3BhdGgpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQUZfVU5JWCBwYXRoIHRvbyBsb25nIik7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICAgICAgZ290byB1bml4X291dDsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICBlbHNlCkBAIC0xMjM5LDkgKzEyOTgsOSBAQAogICAgICAgICB7CiAgICAgICAgICAgICAvKiByZWd1bGFyIE5VTEwtdGVybWluYXRlZCBzdHJpbmcgKi8KICAgICAgICAgICAgIGlmIChsZW4gPj0gc2l6ZW9mIGFkZHItPnN1bl9wYXRoKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkFGX1VOSVggcGF0aCB0b28gbG9uZyIpOwotICAgICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICAgICAgICAgIGdvdG8gdW5peF9vdXQ7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBhZGRyLT5zdW5fcGF0aFtsZW5dID0gMDsKICAgICAgICAgfQpAQCAtMTI1Miw3ICsxMzExLDEwIEBACiAjZWxzZQogICAgICAgICAqbGVuX3JldCA9IGxlbiArIG9mZnNldG9mKHN0cnVjdCBzb2NrYWRkcl91biwgc3VuX3BhdGgpOwogI2VuZGlmCi0gICAgICAgIHJldHVybiAxOworICAgICAgICByZXR2YWwgPSAxOworICAgIHVuaXhfb3V0OgorICAgICAgICBQeV9ERUNSRUYoYXJncyk7CisgICAgICAgIHJldHVybiByZXR2YWw7CiAgICAgfQogI2VuZGlmIC8qIEFGX1VOSVggKi8KIApAQCAtMTI4MCw2ICsxMzQyLDExIEBACiAgICAgfQogI2VuZGlmCiAKKyNpZmRlZiBBRl9SRFMKKyAgICBjYXNlIEFGX1JEUzoKKyAgICAgICAgLyogUkRTIHNvY2tldHMgdXNlIHNvY2thZGRyX2luOiBmYWxsLXRocm91Z2ggKi8KKyNlbmRpZgorCiAgICAgY2FzZSBBRl9JTkVUOgogICAgIHsKICAgICAgICAgc3RydWN0IHNvY2thZGRyX2luKiBhZGRyOwpAQCAtMTM3Niw3ICsxNDQzLDcgQEAKICAgICAgICAgICAgIF9CVF9MMl9NRU1CKGFkZHIsIGZhbWlseSkgPSBBRl9CTFVFVE9PVEg7CiAgICAgICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInNpIiwgJnN0cmFkZHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJl9CVF9MMl9NRU1CKGFkZHIsIHBzbSkpKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgImdldHNvY2thZGRyYXJnOiAiCisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJnZXRzb2NrYWRkcmFyZzogIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid3JvbmcgZm9ybWF0Iik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICB9CkBAIC0xMzk1LDcgKzE0NjIsNyBAQAogICAgICAgICAgICAgX0JUX1JDX01FTUIoYWRkciwgZmFtaWx5KSA9IEFGX0JMVUVUT09USDsKICAgICAgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAic2kiLCAmc3RyYWRkciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmX0JUX1JDX01FTUIoYWRkciwgY2hhbm5lbCkpKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgImdldHNvY2thZGRyYXJnOiAiCisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJnZXRzb2NrYWRkcmFyZzogIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid3JvbmcgZm9ybWF0Iik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICB9CkBAIC0xNDEzLDcgKzE0ODAsNyBAQAogCiAgICAgICAgICAgICAgICAgICAgICAgICBfQlRfSENJX01FTUIoYWRkciwgZmFtaWx5KSA9IEFGX0JMVUVUT09USDsKICAgICAgICAgICAgIGlmIChzdHJhZGRyID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAiZ2V0c29ja2FkZHJhcmc6ICIKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgImdldHNvY2thZGRyYXJnOiAiCiAgICAgICAgICAgICAgICAgICAgICJ3cm9uZyBmb3JtYXQiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgICAgIH0KQEAgLTE0MjIsNyArMTQ4OSw3IEBACiAjZWxzZQogICAgICAgICAgICAgX0JUX0hDSV9NRU1CKGFkZHIsIGZhbWlseSkgPSBBRl9CTFVFVE9PVEg7CiAgICAgICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgImkiLCAmX0JUX0hDSV9NRU1CKGFkZHIsIGRldikpKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgImdldHNvY2thZGRyYXJnOiAiCisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJnZXRzb2NrYWRkcmFyZzogIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid3JvbmcgZm9ybWF0Iik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICB9CkBAIC0xNDM5LDcgKzE1MDYsNyBAQAogICAgICAgICAgICAgYWRkciA9IChzdHJ1Y3Qgc29ja2FkZHJfc2NvICopYWRkcl9yZXQ7CiAgICAgICAgICAgICBfQlRfU0NPX01FTUIoYWRkciwgZmFtaWx5KSA9IEFGX0JMVUVUT09USDsKICAgICAgICAgICAgIGlmICghUHlCeXRlc19DaGVjayhhcmdzKSkgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsICJnZXRzb2NrYWRkcmFyZzogIgorICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAiZ2V0c29ja2FkZHJhcmc6ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIndyb25nIGZvcm1hdCIpOwogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgfQpAQCAtMTQ1Miw3ICsxNTE5LDcgQEAKICAgICAgICAgfQogI2VuZGlmCiAgICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAiZ2V0c29ja2FkZHJhcmc6IHVua25vd24gQmx1ZXRvb3RoIHByb3RvY29sIik7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgImdldHNvY2thZGRyYXJnOiB1bmtub3duIEJsdWV0b290aCBwcm90b2NvbCIpOwogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KICAgICB9CkBAIC0xNTY0LDEwICsxNjMxLDU3IEBACiAgICAgfQogI2VuZGlmCiAKKyNpZmRlZiBBRl9DQU4KKyAgICBjYXNlIEFGX0NBTjoKKyAgICAgICAgc3dpdGNoIChzLT5zb2NrX3Byb3RvKSB7CisgICAgICAgIGNhc2UgQ0FOX1JBVzoKKyAgICAgICAgeworICAgICAgICAgICAgc3RydWN0IHNvY2thZGRyX2NhbiAqYWRkcjsKKyAgICAgICAgICAgIFB5T2JqZWN0ICppbnRlcmZhY2VOYW1lOworICAgICAgICAgICAgc3RydWN0IGlmcmVxIGlmcjsKKyAgICAgICAgICAgIGFkZHIgPSAoc3RydWN0IHNvY2thZGRyX2NhbiAqKWFkZHJfcmV0OworICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CisKKyAgICAgICAgICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyYiLCBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmludGVyZmFjZU5hbWUpKQorICAgICAgICAgICAgICAgIHJldHVybiAwOworCisgICAgICAgICAgICBsZW4gPSBQeUJ5dGVzX0dFVF9TSVpFKGludGVyZmFjZU5hbWUpOworCisgICAgICAgICAgICBpZiAobGVuID09IDApIHsKKyAgICAgICAgICAgICAgICBpZnIuaWZyX2lmaW5kZXggPSAwOworICAgICAgICAgICAgfSBlbHNlIGlmIChsZW4gPCBzaXplb2YoaWZyLmlmcl9uYW1lKSkgeworICAgICAgICAgICAgICAgIHN0cmNweShpZnIuaWZyX25hbWUsIFB5Qnl0ZXNfQVNfU1RSSU5HKGludGVyZmFjZU5hbWUpKTsKKyAgICAgICAgICAgICAgICBpZiAoaW9jdGwocy0+c29ja19mZCwgU0lPQ0dJRklOREVYLCAmaWZyKSA8IDApIHsKKyAgICAgICAgICAgICAgICAgICAgcy0+ZXJyb3JoYW5kbGVyKCk7CisgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihpbnRlcmZhY2VOYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkFGX0NBTiBpbnRlcmZhY2UgbmFtZSB0b28gbG9uZyIpOworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihpbnRlcmZhY2VOYW1lKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgYWRkci0+Y2FuX2ZhbWlseSA9IEFGX0NBTjsKKyAgICAgICAgICAgIGFkZHItPmNhbl9pZmluZGV4ID0gaWZyLmlmcl9pZmluZGV4OworCisgICAgICAgICAgICAqbGVuX3JldCA9IHNpemVvZigqYWRkcik7CisgICAgICAgICAgICBQeV9ERUNSRUYoaW50ZXJmYWNlTmFtZSk7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgfQorICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdldHNvY2thZGRyYXJnOiB1bnN1cHBvcnRlZCBDQU4gcHJvdG9jb2wiKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisjZW5kaWYKKwogICAgIC8qIE1vcmUgY2FzZXMgaGVyZS4uLiAqLwogCiAgICAgZGVmYXVsdDoKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgImdldHNvY2thZGRyYXJnOiBiYWQgZmFtaWx5Iik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAiZ2V0c29ja2FkZHJhcmc6IGJhZCBmYW1pbHkiKTsKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICB9CkBAIC0xNTk4LDYgKzE3MTIsMTEgQEAKICAgICAgICB9CiAjZW5kaWYKIAorI2lmZGVmIEFGX1JEUworICAgIGNhc2UgQUZfUkRTOgorICAgICAgICAvKiBSRFMgc29ja2V0cyB1c2Ugc29ja2FkZHJfaW46IGZhbGwtdGhyb3VnaCAqLworI2VuZGlmCisKICAgICBjYXNlIEFGX0lORVQ6CiAgICAgewogICAgICAgICAqbGVuX3JldCA9IHNpemVvZiAoc3RydWN0IHNvY2thZGRyX2luKTsKQEAgLTE2MzMsNyArMTc1Miw3IEBACiAgICAgICAgICAgICByZXR1cm4gMTsKICNlbmRpZgogICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgImdldHNvY2thZGRybGVuOiAiCisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwgImdldHNvY2thZGRybGVuOiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVua25vd24gQlQgcHJvdG9jb2wiKTsKICAgICAgICAgICAgIHJldHVybiAwOwogCkBAIC0xNjU3LDE2ICsxNzc2LDEzNiBAQAogICAgIH0KICNlbmRpZgogCisjaWZkZWYgQUZfQ0FOCisgICAgY2FzZSBBRl9DQU46CisgICAgeworICAgICAgICAqbGVuX3JldCA9IHNpemVvZiAoc3RydWN0IHNvY2thZGRyX2Nhbik7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyNlbmRpZgorCiAgICAgLyogTW9yZSBjYXNlcyBoZXJlLi4uICovCiAKICAgICBkZWZhdWx0OgotICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAiZ2V0c29ja2FkZHJsZW46IGJhZCBmYW1pbHkiKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJnZXRzb2NrYWRkcmxlbjogYmFkIGZhbWlseSIpOwogICAgICAgICByZXR1cm4gMDsKIAogICAgIH0KIH0KIAogCisvKiBTdXBwb3J0IGZ1bmN0aW9ucyBmb3IgdGhlIHNlbmRtc2coKSBhbmQgcmVjdm1zZ1tfaW50b10oKSBtZXRob2RzLgorICAgQ3VycmVudGx5LCB0aGVzZSBtZXRob2RzIGFyZSBvbmx5IGNvbXBpbGVkIGlmIHRoZSBSRkMgMjI5Mi8zNTQyCisgICBDTVNHX0xFTigpIG1hY3JvIGlzIGF2YWlsYWJsZS4gIE9sZGVyIHN5c3RlbXMgc2VlbSB0byBoYXZlIHVzZWQKKyAgIHNpemVvZihzdHJ1Y3QgY21zZ2hkcikgKyAobGVuZ3RoKSB3aGVyZSBDTVNHX0xFTigpIGlzIHVzZWQgbm93LCBzbworICAgaXQgbWF5IGJlIHBvc3NpYmxlIHRvIGRlZmluZSBDTVNHX0xFTigpIHRoYXQgd2F5IGlmIGl0J3Mgbm90CisgICBwcm92aWRlZC4gIFNvbWUgYXJjaGl0ZWN0dXJlcyBtaWdodCBuZWVkIGV4dHJhIHBhZGRpbmcgYWZ0ZXIgdGhlCisgICBjbXNnaGRyLCBob3dldmVyLCBhbmQgQ01TR19MRU4oKSB3b3VsZCBoYXZlIHRvIHRha2UgYWNjb3VudCBvZgorICAgdGhpcy4gKi8KKyNpZmRlZiBDTVNHX0xFTgorLyogSWYgbGVuZ3RoIGlzIGluIHJhbmdlLCBzZXQgKnJlc3VsdCB0byBDTVNHX0xFTihsZW5ndGgpIGFuZCByZXR1cm4KKyAgIHRydWU7IG90aGVyd2lzZSwgcmV0dXJuIGZhbHNlLiAqLworc3RhdGljIGludAorZ2V0X0NNU0dfTEVOKHNpemVfdCBsZW5ndGgsIHNpemVfdCAqcmVzdWx0KQoreworICAgIHNpemVfdCB0bXA7CisKKyAgICBpZiAobGVuZ3RoID4gKFNPQ0tMRU5fVF9MSU1JVCAtIENNU0dfTEVOKDApKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgdG1wID0gQ01TR19MRU4obGVuZ3RoKTsKKyAgICBpZiAodG1wID4gU09DS0xFTl9UX0xJTUlUIHx8IHRtcCA8IGxlbmd0aCkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgKnJlc3VsdCA9IHRtcDsKKyAgICByZXR1cm4gMTsKK30KKworI2lmZGVmIENNU0dfU1BBQ0UKKy8qIElmIGxlbmd0aCBpcyBpbiByYW5nZSwgc2V0ICpyZXN1bHQgdG8gQ01TR19TUEFDRShsZW5ndGgpIGFuZCByZXR1cm4KKyAgIHRydWU7IG90aGVyd2lzZSwgcmV0dXJuIGZhbHNlLiAqLworc3RhdGljIGludAorZ2V0X0NNU0dfU1BBQ0Uoc2l6ZV90IGxlbmd0aCwgc2l6ZV90ICpyZXN1bHQpCit7CisgICAgc2l6ZV90IHRtcDsKKworICAgIC8qIFVzZSBDTVNHX1NQQUNFKDEpIGhlcmUgaW4gb3JkZXIgdG8gdGFrZSBhY2NvdW50IG9mIHRoZSBwYWRkaW5nCisgICAgICAgbmVjZXNzYXJ5IGJlZm9yZSAqYW5kKiBhZnRlciB0aGUgZGF0YS4gKi8KKyAgICBpZiAobGVuZ3RoID4gKFNPQ0tMRU5fVF9MSU1JVCAtIENNU0dfU1BBQ0UoMSkpKQorICAgICAgICByZXR1cm4gMDsKKyAgICB0bXAgPSBDTVNHX1NQQUNFKGxlbmd0aCk7CisgICAgaWYgKHRtcCA+IFNPQ0tMRU5fVF9MSU1JVCB8fCB0bXAgPCBsZW5ndGgpCisgICAgICAgIHJldHVybiAwOworICAgICpyZXN1bHQgPSB0bXA7CisgICAgcmV0dXJuIDE7Cit9CisjZW5kaWYKKworLyogUmV0dXJuIHRydWUgaWZmIG1zZy0+bXNnX2NvbnRyb2xsZW4gaXMgdmFsaWQsIGNtc2doIGlzIGEgdmFsaWQKKyAgIHBvaW50ZXIgaW4gbXNnLT5tc2dfY29udHJvbCB3aXRoIGF0IGxlYXN0ICJzcGFjZSIgYnl0ZXMgYWZ0ZXIgaXQsCisgICBhbmQgaXRzIGNtc2dfbGVuIG1lbWJlciBpbnNpZGUgdGhlIGJ1ZmZlci4gKi8KK3N0YXRpYyBpbnQKK2Ntc2dfbWluX3NwYWNlKHN0cnVjdCBtc2doZHIgKm1zZywgc3RydWN0IGNtc2doZHIgKmNtc2doLCBzaXplX3Qgc3BhY2UpCit7CisgICAgc2l6ZV90IGNtc2dfb2Zmc2V0OworICAgIHN0YXRpYyBjb25zdCBzaXplX3QgY21zZ19sZW5fZW5kID0gKG9mZnNldG9mKHN0cnVjdCBjbXNnaGRyLCBjbXNnX2xlbikgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihjbXNnaC0+Y21zZ19sZW4pKTsKKworICAgIC8qIE5vdGUgdGhhdCBQT1NJWCBhbGxvd3MgbXNnX2NvbnRyb2xsZW4gdG8gYmUgb2Ygc2lnbmVkIHR5cGUuICovCisgICAgaWYgKGNtc2doID09IE5VTEwgfHwgbXNnLT5tc2dfY29udHJvbCA9PSBOVUxMIHx8IG1zZy0+bXNnX2NvbnRyb2xsZW4gPCAwKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoc3BhY2UgPCBjbXNnX2xlbl9lbmQpCisgICAgICAgIHNwYWNlID0gY21zZ19sZW5fZW5kOworICAgIGNtc2dfb2Zmc2V0ID0gKGNoYXIgKiljbXNnaCAtIChjaGFyICopbXNnLT5tc2dfY29udHJvbDsKKyAgICByZXR1cm4gKGNtc2dfb2Zmc2V0IDw9IChzaXplX3QpLTEgLSBzcGFjZSAmJgorICAgICAgICAgICAgY21zZ19vZmZzZXQgKyBzcGFjZSA8PSBtc2ctPm1zZ19jb250cm9sbGVuKTsKK30KKworLyogSWYgcG9pbnRlciBDTVNHX0RBVEEoY21zZ2gpIGlzIGluIGJ1ZmZlciBtc2ctPm1zZ19jb250cm9sLCBzZXQKKyAgICpzcGFjZSB0byBudW1iZXIgb2YgYnl0ZXMgZm9sbG93aW5nIGl0IGluIHRoZSBidWZmZXIgYW5kIHJldHVybgorICAgdHJ1ZTsgb3RoZXJ3aXNlLCByZXR1cm4gZmFsc2UuICBBc3N1bWVzIGNtc2doLCBtc2ctPm1zZ19jb250cm9sIGFuZAorICAgbXNnLT5tc2dfY29udHJvbGxlbiBhcmUgdmFsaWQuICovCitzdGF0aWMgaW50CitnZXRfY21zZ19kYXRhX3NwYWNlKHN0cnVjdCBtc2doZHIgKm1zZywgc3RydWN0IGNtc2doZHIgKmNtc2doLCBzaXplX3QgKnNwYWNlKQoreworICAgIHNpemVfdCBkYXRhX29mZnNldDsKKyAgICBjaGFyICpkYXRhX3B0cjsKKworICAgIGlmICgoZGF0YV9wdHIgPSAoY2hhciAqKUNNU0dfREFUQShjbXNnaCkpID09IE5VTEwpCisgICAgICAgIHJldHVybiAwOworICAgIGRhdGFfb2Zmc2V0ID0gZGF0YV9wdHIgLSAoY2hhciAqKW1zZy0+bXNnX2NvbnRyb2w7CisgICAgaWYgKGRhdGFfb2Zmc2V0ID4gbXNnLT5tc2dfY29udHJvbGxlbikKKyAgICAgICAgcmV0dXJuIDA7CisgICAgKnNwYWNlID0gbXNnLT5tc2dfY29udHJvbGxlbiAtIGRhdGFfb2Zmc2V0OworICAgIHJldHVybiAxOworfQorCisvKiBJZiBjbXNnaCBpcyBpbnZhbGlkIG9yIG5vdCBjb250YWluZWQgaW4gdGhlIGJ1ZmZlciBwb2ludGVkIHRvIGJ5CisgICBtc2ctPm1zZ19jb250cm9sLCByZXR1cm4gLTEuICBJZiBjbXNnaCBpcyB2YWxpZCBhbmQgaXRzIGFzc29jaWF0ZWQKKyAgIGRhdGEgaXMgZW50aXJlbHkgY29udGFpbmVkIGluIHRoZSBidWZmZXIsIHNldCAqZGF0YV9sZW4gdG8gdGhlCisgICBsZW5ndGggb2YgdGhlIGFzc29jaWF0ZWQgZGF0YSBhbmQgcmV0dXJuIDAuICBJZiBvbmx5IHBhcnQgb2YgdGhlCisgICBhc3NvY2lhdGVkIGRhdGEgaXMgY29udGFpbmVkIGluIHRoZSBidWZmZXIgYnV0IGNtc2doIGlzIG90aGVyd2lzZQorICAgdmFsaWQsIHNldCAqZGF0YV9sZW4gdG8gdGhlIGxlbmd0aCBjb250YWluZWQgaW4gdGhlIGJ1ZmZlciBhbmQKKyAgIHJldHVybiAxLiAqLworc3RhdGljIGludAorZ2V0X2Ntc2dfZGF0YV9sZW4oc3RydWN0IG1zZ2hkciAqbXNnLCBzdHJ1Y3QgY21zZ2hkciAqY21zZ2gsIHNpemVfdCAqZGF0YV9sZW4pCit7CisgICAgc2l6ZV90IHNwYWNlLCBjbXNnX2RhdGFfbGVuOworCisgICAgaWYgKCFjbXNnX21pbl9zcGFjZShtc2csIGNtc2doLCBDTVNHX0xFTigwKSkgfHwKKyAgICAgICAgY21zZ2gtPmNtc2dfbGVuIDwgQ01TR19MRU4oMCkpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBjbXNnX2RhdGFfbGVuID0gY21zZ2gtPmNtc2dfbGVuIC0gQ01TR19MRU4oMCk7CisgICAgaWYgKCFnZXRfY21zZ19kYXRhX3NwYWNlKG1zZywgY21zZ2gsICZzcGFjZSkpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBpZiAoc3BhY2UgPj0gY21zZ19kYXRhX2xlbikgeworICAgICAgICAqZGF0YV9sZW4gPSBjbXNnX2RhdGFfbGVuOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgKmRhdGFfbGVuID0gc3BhY2U7CisgICAgcmV0dXJuIDE7Cit9CisjZW5kaWYgICAgLyogQ01TR19MRU4gKi8KKworCiAvKiBzLl9hY2NlcHQoKSAtPiAoZmQsIGFkZHJlc3MpICovCiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xODg5LDcgKzIxMjgsNyBAQAogI2Vsc2UKICAgICBpZiAoYnVmbGVuIDw9IDAgfHwgYnVmbGVuID4gMTAyNCkgewogI2VuZGlmCi0gICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsCisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgImdldHNvY2tvcHQgYnVmbGVuIG91dCBvZiByYW5nZSIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC0yNjIwLDYgKzI4NTksMzMxIEBACiBMaWtlIHJlY3ZfaW50byhidWZmZXJbLCBuYnl0ZXNbLCBmbGFnc11dKSBidXQgYWxzbyByZXR1cm4gdGhlIHNlbmRlcidzIGFkZHJlc3MgaW5mby4iKTsKIAogCisvKiBUaGUgc2VuZG1zZygpIGFuZCByZWN2bXNnW19pbnRvXSgpIG1ldGhvZHMgcmVxdWlyZSBhIHdvcmtpbmcKKyAgIENNU0dfTEVOKCkuICBTZWUgdGhlIGNvbW1lbnQgbmVhciBnZXRfQ01TR19MRU4oKS4gKi8KKyNpZmRlZiBDTVNHX0xFTgorLyoKKyAqIENhbGwgcmVjdm1zZygpIHdpdGggdGhlIHN1cHBsaWVkIGlvdmVjIHN0cnVjdHVyZXMsIGZsYWdzLCBhbmQKKyAqIGFuY2lsbGFyeSBkYXRhIGJ1ZmZlciBzaXplIChjb250cm9sbGVuKS4gIFJldHVybnMgdGhlIHR1cGxlIHJldHVybgorICogdmFsdWUgZm9yIHJlY3Ztc2coKSBvciByZWN2bXNnX2ludG8oKSwgd2l0aCB0aGUgZmlyc3QgaXRlbSBwcm92aWRlZAorICogYnkgdGhlIHN1cHBsaWVkIG1ha2V2YWwoKSBmdW5jdGlvbi4gIG1ha2V2YWwoKSB3aWxsIGJlIGNhbGxlZCB3aXRoCisgKiB0aGUgbGVuZ3RoIHJlYWQgYW5kIG1ha2V2YWxfZGF0YSBhcyBhcmd1bWVudHMsIGFuZCBtdXN0IHJldHVybiBhCisgKiBuZXcgcmVmZXJlbmNlICh3aGljaCB3aWxsIGJlIGRlY3JlZmVkIGlmIHRoZXJlIGlzIGEgc3Vic2VxdWVudAorICogZXJyb3IpLiAgT24gZXJyb3IsIGNsb3NlcyBhbnkgZmlsZSBkZXNjcmlwdG9ycyByZWNlaXZlZCB2aWEKKyAqIFNDTV9SSUdIVFMuCisgKi8KK3N0YXRpYyBQeU9iamVjdCAqCitzb2NrX3JlY3Ztc2dfZ3V0cyhQeVNvY2tldFNvY2tPYmplY3QgKnMsIHN0cnVjdCBpb3ZlYyAqaW92LCBpbnQgaW92bGVuLAorICAgICAgICAgICAgICAgICAgaW50IGZsYWdzLCBQeV9zc2l6ZV90IGNvbnRyb2xsZW4sCisgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKCptYWtldmFsKShzc2l6ZV90LCB2b2lkICopLCB2b2lkICptYWtldmFsX2RhdGEpCit7CisgICAgc3NpemVfdCBieXRlc19yZWNlaXZlZCA9IC0xOworICAgIGludCB0aW1lb3V0OworICAgIHNvY2tfYWRkcl90IGFkZHJidWY7CisgICAgc29ja2xlbl90IGFkZHJidWZsZW47CisgICAgc3RydWN0IG1zZ2hkciBtc2cgPSB7MH07CisgICAgUHlPYmplY3QgKmNtc2dfbGlzdCA9IE5VTEwsICpyZXR2YWwgPSBOVUxMOworICAgIHZvaWQgKmNvbnRyb2xidWYgPSBOVUxMOworICAgIHN0cnVjdCBjbXNnaGRyICpjbXNnaDsKKyAgICBzaXplX3QgY21zZ2RhdGFsZW4gPSAwOworICAgIGludCBjbXNnX3N0YXR1czsKKworICAgIC8qIFhYWDogUE9TSVggc2F5cyB0aGF0IG1zZ19uYW1lIGFuZCBtc2dfbmFtZWxlbiAic2hhbGwgYmUKKyAgICAgICBpZ25vcmVkIiB3aGVuIHRoZSBzb2NrZXQgaXMgY29ubmVjdGVkIChMaW51eCBmaWxscyB0aGVtIGluCisgICAgICAgYW55d2F5IGZvciBBRl9VTklYIHNvY2tldHMgYXQgbGVhc3QpLiAgTm9ybWFsbHkgbXNnX25hbWVsZW4KKyAgICAgICBzZWVtcyB0byBiZSBzZXQgdG8gMCBpZiB0aGVyZSdzIG5vIGFkZHJlc3MsIGJ1dCB0cnkgdG8KKyAgICAgICBpbml0aWFsaXplIG1zZ19uYW1lIHRvIHNvbWV0aGluZyB0aGF0IHdvbid0IGJlIG1pc3Rha2VuIGZvciBhCisgICAgICAgcmVhbCBhZGRyZXNzIGlmIHRoYXQgZG9lc24ndCBoYXBwZW4uICovCisgICAgaWYgKCFnZXRzb2NrYWRkcmxlbihzLCAmYWRkcmJ1ZmxlbikpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIG1lbXNldCgmYWRkcmJ1ZiwgMCwgYWRkcmJ1Zmxlbik7CisgICAgU0FTMlNBKCZhZGRyYnVmKS0+c2FfZmFtaWx5ID0gQUZfVU5TUEVDOworCisgICAgaWYgKGNvbnRyb2xsZW4gPCAwIHx8IGNvbnRyb2xsZW4gPiBTT0NLTEVOX1RfTElNSVQpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiaW52YWxpZCBhbmNpbGxhcnkgZGF0YSBidWZmZXIgbGVuZ3RoIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoY29udHJvbGxlbiA+IDAgJiYgKGNvbnRyb2xidWYgPSBQeU1lbV9NYWxsb2MoY29udHJvbGxlbikpID09IE5VTEwpCisgICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOworCisgICAgLyogTWFrZSB0aGUgc3lzdGVtIGNhbGwuICovCisgICAgaWYgKCFJU19TRUxFQ1RBQkxFKHMpKSB7CisgICAgICAgIHNlbGVjdF9lcnJvcigpOworICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgfQorCisgICAgQkVHSU5fU0VMRUNUX0xPT1AocykKKyAgICBQeV9CRUdJTl9BTExPV19USFJFQURTOworICAgIG1zZy5tc2dfbmFtZSA9IFNBUzJTQSgmYWRkcmJ1Zik7CisgICAgbXNnLm1zZ19uYW1lbGVuID0gYWRkcmJ1ZmxlbjsKKyAgICBtc2cubXNnX2lvdiA9IGlvdjsKKyAgICBtc2cubXNnX2lvdmxlbiA9IGlvdmxlbjsKKyAgICBtc2cubXNnX2NvbnRyb2wgPSBjb250cm9sYnVmOworICAgIG1zZy5tc2dfY29udHJvbGxlbiA9IGNvbnRyb2xsZW47CisgICAgdGltZW91dCA9IGludGVybmFsX3NlbGVjdF9leChzLCAwLCBpbnRlcnZhbCk7CisgICAgaWYgKCF0aW1lb3V0KQorICAgICAgICBieXRlc19yZWNlaXZlZCA9IHJlY3Ztc2cocy0+c29ja19mZCwgJm1zZywgZmxhZ3MpOworICAgIFB5X0VORF9BTExPV19USFJFQURTOworICAgIGlmICh0aW1lb3V0ID09IDEpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF90aW1lb3V0LCAidGltZWQgb3V0Iik7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisgICAgRU5EX1NFTEVDVF9MT09QKHMpCisKKyAgICBpZiAoYnl0ZXNfcmVjZWl2ZWQgPCAwKSB7CisgICAgICAgIHMtPmVycm9yaGFuZGxlcigpOworICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgfQorCisgICAgLyogTWFrZSBsaXN0IG9mIChsZXZlbCwgdHlwZSwgZGF0YSkgdHVwbGVzIGZyb20gY29udHJvbCBtZXNzYWdlcy4gKi8KKyAgICBpZiAoKGNtc2dfbGlzdCA9IFB5TGlzdF9OZXcoMCkpID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyX2Nsb3NlZmRzOworICAgIC8qIENoZWNrIGZvciBlbXB0eSBhbmNpbGxhcnkgZGF0YSBhcyBvbGQgQ01TR19GSVJTVEhEUigpCisgICAgICAgaW1wbGVtZW50YXRpb25zIGRpZG4ndCBkbyBzby4gKi8KKyAgICBmb3IgKGNtc2doID0gKChtc2cubXNnX2NvbnRyb2xsZW4gPiAwKSA/IENNU0dfRklSU1RIRFIoJm1zZykgOiBOVUxMKTsKKyAgICAgICAgIGNtc2doICE9IE5VTEw7IGNtc2doID0gQ01TR19OWFRIRFIoJm1zZywgY21zZ2gpKSB7CisgICAgICAgIFB5T2JqZWN0ICpieXRlcywgKnR1cGxlOworICAgICAgICBpbnQgdG1wOworCisgICAgICAgIGNtc2dfc3RhdHVzID0gZ2V0X2Ntc2dfZGF0YV9sZW4oJm1zZywgY21zZ2gsICZjbXNnZGF0YWxlbik7CisgICAgICAgIGlmIChjbXNnX3N0YXR1cyAhPSAwKSB7CisgICAgICAgICAgICBpZiAoUHlFcnJfV2FybkV4KFB5RXhjX1J1bnRpbWVXYXJuaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmVjZWl2ZWQgbWFsZm9ybWVkIG9yIGltcHJvcGVybHktdHJ1bmNhdGVkICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFuY2lsbGFyeSBkYXRhIiwgMSkgPT0gLTEpCisgICAgICAgICAgICAgICAgZ290byBlcnJfY2xvc2VmZHM7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGNtc2dfc3RhdHVzIDwgMCkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBpZiAoY21zZ2RhdGFsZW4gPiBQWV9TU0laRV9UX01BWCkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJjb250cm9sIG1lc3NhZ2UgdG9vIGxvbmciKTsKKyAgICAgICAgICAgIGdvdG8gZXJyX2Nsb3NlZmRzOworICAgICAgICB9CisKKyAgICAgICAgYnl0ZXMgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKChjaGFyICopQ01TR19EQVRBKGNtc2doKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNtc2dkYXRhbGVuKTsKKyAgICAgICAgdHVwbGUgPSBQeV9CdWlsZFZhbHVlKCJpaU4iLCAoaW50KWNtc2doLT5jbXNnX2xldmVsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGludCljbXNnaC0+Y21zZ190eXBlLCBieXRlcyk7CisgICAgICAgIGlmICh0dXBsZSA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBlcnJfY2xvc2VmZHM7CisgICAgICAgIHRtcCA9IFB5TGlzdF9BcHBlbmQoY21zZ19saXN0LCB0dXBsZSk7CisgICAgICAgIFB5X0RFQ1JFRih0dXBsZSk7CisgICAgICAgIGlmICh0bXAgIT0gMCkKKyAgICAgICAgICAgIGdvdG8gZXJyX2Nsb3NlZmRzOworCisgICAgICAgIGlmIChjbXNnX3N0YXR1cyAhPSAwKQorICAgICAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgcmV0dmFsID0gUHlfQnVpbGRWYWx1ZSgiTk9pTiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAoKm1ha2V2YWwpKGJ5dGVzX3JlY2VpdmVkLCBtYWtldmFsX2RhdGEpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY21zZ19saXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgKGludCltc2cubXNnX2ZsYWdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZXNvY2thZGRyKHMtPnNvY2tfZmQsIFNBUzJTQSgmYWRkcmJ1ZiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChtc2cubXNnX25hbWVsZW4gPiBhZGRyYnVmbGVuKSA/CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZHJidWZsZW4gOiBtc2cubXNnX25hbWVsZW4pLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMtPnNvY2tfcHJvdG8pKTsKKyAgICBpZiAocmV0dmFsID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyX2Nsb3NlZmRzOworCitmaW5hbGx5OgorICAgIFB5X1hERUNSRUYoY21zZ19saXN0KTsKKyAgICBQeU1lbV9GcmVlKGNvbnRyb2xidWYpOworICAgIHJldHVybiByZXR2YWw7CisKK2Vycl9jbG9zZWZkczoKKyNpZmRlZiBTQ01fUklHSFRTCisgICAgLyogQ2xvc2UgYWxsIGRlc2NyaXB0b3JzIGNvbWluZyBmcm9tIFNDTV9SSUdIVFMsIHNvIHRoZXkgZG9uJ3QgbGVhay4gKi8KKyAgICBmb3IgKGNtc2doID0gKChtc2cubXNnX2NvbnRyb2xsZW4gPiAwKSA/IENNU0dfRklSU1RIRFIoJm1zZykgOiBOVUxMKTsKKyAgICAgICAgIGNtc2doICE9IE5VTEw7IGNtc2doID0gQ01TR19OWFRIRFIoJm1zZywgY21zZ2gpKSB7CisgICAgICAgIGNtc2dfc3RhdHVzID0gZ2V0X2Ntc2dfZGF0YV9sZW4oJm1zZywgY21zZ2gsICZjbXNnZGF0YWxlbik7CisgICAgICAgIGlmIChjbXNnX3N0YXR1cyA8IDApCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgaWYgKGNtc2doLT5jbXNnX2xldmVsID09IFNPTF9TT0NLRVQgJiYKKyAgICAgICAgICAgIGNtc2doLT5jbXNnX3R5cGUgPT0gU0NNX1JJR0hUUykgeworICAgICAgICAgICAgc2l6ZV90IG51bWZkczsKKyAgICAgICAgICAgIGludCAqZmRwOworCisgICAgICAgICAgICBudW1mZHMgPSBjbXNnZGF0YWxlbiAvIHNpemVvZihpbnQpOworICAgICAgICAgICAgZmRwID0gKGludCAqKUNNU0dfREFUQShjbXNnaCk7CisgICAgICAgICAgICB3aGlsZSAobnVtZmRzLS0gPiAwKQorICAgICAgICAgICAgICAgIGNsb3NlKCpmZHArKyk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGNtc2dfc3RhdHVzICE9IDApCisgICAgICAgICAgICBicmVhazsKKyAgICB9CisjZW5kaWYgLyogU0NNX1JJR0hUUyAqLworICAgIGdvdG8gZmluYWxseTsKK30KKworCitzdGF0aWMgUHlPYmplY3QgKgorbWFrZXZhbF9yZWN2bXNnKHNzaXplX3QgcmVjZWl2ZWQsIHZvaWQgKmRhdGEpCit7CisgICAgUHlPYmplY3QgKipidWYgPSBkYXRhOworCisgICAgaWYgKHJlY2VpdmVkIDwgUHlCeXRlc19HRVRfU0laRSgqYnVmKSkKKyAgICAgICAgX1B5Qnl0ZXNfUmVzaXplKGJ1ZiwgcmVjZWl2ZWQpOworICAgIFB5X1hJTkNSRUYoKmJ1Zik7CisgICAgcmV0dXJuICpidWY7Cit9CisKKy8qIHMucmVjdm1zZyhidWZzaXplWywgYW5jYnVmc2l6ZVssIGZsYWdzXV0pIG1ldGhvZCAqLworCitzdGF0aWMgUHlPYmplY3QgKgorc29ja19yZWN2bXNnKFB5U29ja2V0U29ja09iamVjdCAqcywgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlfc3NpemVfdCBidWZzaXplLCBhbmNidWZzaXplID0gMDsKKyAgICBpbnQgZmxhZ3MgPSAwOworICAgIHN0cnVjdCBpb3ZlYyBpb3Y7CisgICAgUHlPYmplY3QgKmJ1ZiA9IE5VTEwsICpyZXR2YWwgPSBOVUxMOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJufG5pOnJlY3Ztc2ciLCAmYnVmc2l6ZSwgJmFuY2J1ZnNpemUsICZmbGFncykpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKGJ1ZnNpemUgPCAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAibmVnYXRpdmUgYnVmZmVyIHNpemUgaW4gcmVjdm1zZygpIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoKGJ1ZiA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgYnVmc2l6ZSkpID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlvdi5pb3ZfYmFzZSA9IFB5Qnl0ZXNfQVNfU1RSSU5HKGJ1Zik7CisgICAgaW92Lmlvdl9sZW4gPSBidWZzaXplOworCisgICAgLyogTm90ZSB0aGF0IHdlJ3JlIHBhc3NpbmcgYSBwb2ludGVyIHRvICpvdXIgcG9pbnRlciogdG8gdGhlIGJ5dGVzCisgICAgICAgb2JqZWN0IGhlcmUgKCZidWYpOyBtYWtldmFsX3JlY3Ztc2coKSBtYXkgaW5jcmVmIHRoZSBvYmplY3QsIG9yCisgICAgICAgZGVhbGxvY2F0ZSBpdCBhbmQgc2V0IG91ciBwb2ludGVyIHRvIE5VTEwuICovCisgICAgcmV0dmFsID0gc29ja19yZWN2bXNnX2d1dHMocywgJmlvdiwgMSwgZmxhZ3MsIGFuY2J1ZnNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1ha2V2YWxfcmVjdm1zZywgJmJ1Zik7CisgICAgUHlfWERFQ1JFRihidWYpOworICAgIHJldHVybiByZXR2YWw7Cit9CisKK1B5RG9jX1NUUlZBUihyZWN2bXNnX2RvYywKKyJyZWN2bXNnKGJ1ZnNpemVbLCBhbmNidWZzaXplWywgZmxhZ3NdXSkgLT4gKGRhdGEsIGFuY2RhdGEsIG1zZ19mbGFncywgYWRkcmVzcylcblwKK1xuXAorUmVjZWl2ZSBub3JtYWwgZGF0YSAodXAgdG8gYnVmc2l6ZSBieXRlcykgYW5kIGFuY2lsbGFyeSBkYXRhIGZyb20gdGhlXG5cCitzb2NrZXQuICBUaGUgYW5jYnVmc2l6ZSBhcmd1bWVudCBzZXRzIHRoZSBzaXplIGluIGJ5dGVzIG9mIHRoZVxuXAoraW50ZXJuYWwgYnVmZmVyIHVzZWQgdG8gcmVjZWl2ZSB0aGUgYW5jaWxsYXJ5IGRhdGE7IGl0IGRlZmF1bHRzIHRvIDAsXG5cCittZWFuaW5nIHRoYXQgbm8gYW5jaWxsYXJ5IGRhdGEgd2lsbCBiZSByZWNlaXZlZC4gIEFwcHJvcHJpYXRlIGJ1ZmZlclxuXAorc2l6ZXMgZm9yIGFuY2lsbGFyeSBkYXRhIGNhbiBiZSBjYWxjdWxhdGVkIHVzaW5nIENNU0dfU1BBQ0UoKSBvclxuXAorQ01TR19MRU4oKSwgYW5kIGl0ZW1zIHdoaWNoIGRvIG5vdCBmaXQgaW50byB0aGUgYnVmZmVyIG1pZ2h0IGJlXG5cCit0cnVuY2F0ZWQgb3IgZGlzY2FyZGVkLiAgVGhlIGZsYWdzIGFyZ3VtZW50IGRlZmF1bHRzIHRvIDAgYW5kIGhhcyB0aGVcblwKK3NhbWUgbWVhbmluZyBhcyBmb3IgcmVjdigpLlxuXAorXG5cCitUaGUgcmV0dXJuIHZhbHVlIGlzIGEgNC10dXBsZTogKGRhdGEsIGFuY2RhdGEsIG1zZ19mbGFncywgYWRkcmVzcykuXG5cCitUaGUgZGF0YSBpdGVtIGlzIGEgYnl0ZXMgb2JqZWN0IGhvbGRpbmcgdGhlIG5vbi1hbmNpbGxhcnkgZGF0YVxuXAorcmVjZWl2ZWQuICBUaGUgYW5jZGF0YSBpdGVtIGlzIGEgbGlzdCBvZiB6ZXJvIG9yIG1vcmUgdHVwbGVzXG5cCisoY21zZ19sZXZlbCwgY21zZ190eXBlLCBjbXNnX2RhdGEpIHJlcHJlc2VudGluZyB0aGUgYW5jaWxsYXJ5IGRhdGFcblwKKyhjb250cm9sIG1lc3NhZ2VzKSByZWNlaXZlZDogY21zZ19sZXZlbCBhbmQgY21zZ190eXBlIGFyZSBpbnRlZ2Vyc1xuXAorc3BlY2lmeWluZyB0aGUgcHJvdG9jb2wgbGV2ZWwgYW5kIHByb3RvY29sLXNwZWNpZmljIHR5cGUgcmVzcGVjdGl2ZWx5LFxuXAorYW5kIGNtc2dfZGF0YSBpcyBhIGJ5dGVzIG9iamVjdCBob2xkaW5nIHRoZSBhc3NvY2lhdGVkIGRhdGEuICBUaGVcblwKK21zZ19mbGFncyBpdGVtIGlzIHRoZSBiaXR3aXNlIE9SIG9mIHZhcmlvdXMgZmxhZ3MgaW5kaWNhdGluZ1xuXAorY29uZGl0aW9ucyBvbiB0aGUgcmVjZWl2ZWQgbWVzc2FnZTsgc2VlIHlvdXIgc3lzdGVtIGRvY3VtZW50YXRpb24gZm9yXG5cCitkZXRhaWxzLiAgSWYgdGhlIHJlY2VpdmluZyBzb2NrZXQgaXMgdW5jb25uZWN0ZWQsIGFkZHJlc3MgaXMgdGhlXG5cCithZGRyZXNzIG9mIHRoZSBzZW5kaW5nIHNvY2tldCwgaWYgYXZhaWxhYmxlOyBvdGhlcndpc2UsIGl0cyB2YWx1ZSBpc1xuXAordW5zcGVjaWZpZWQuXG5cCitcblwKK0lmIHJlY3Ztc2coKSByYWlzZXMgYW4gZXhjZXB0aW9uIGFmdGVyIHRoZSBzeXN0ZW0gY2FsbCByZXR1cm5zLCBpdFxuXAord2lsbCBmaXJzdCBhdHRlbXB0IHRvIGNsb3NlIGFueSBmaWxlIGRlc2NyaXB0b3JzIHJlY2VpdmVkIHZpYSB0aGVcblwKK1NDTV9SSUdIVFMgbWVjaGFuaXNtLiIpOworCisKK3N0YXRpYyBQeU9iamVjdCAqCittYWtldmFsX3JlY3Ztc2dfaW50byhzc2l6ZV90IHJlY2VpdmVkLCB2b2lkICpkYXRhKQoreworICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3QocmVjZWl2ZWQpOworfQorCisvKiBzLnJlY3Ztc2dfaW50byhidWZmZXJzWywgYW5jYnVmc2l6ZVssIGZsYWdzXV0pIG1ldGhvZCAqLworCitzdGF0aWMgUHlPYmplY3QgKgorc29ja19yZWN2bXNnX2ludG8oUHlTb2NrZXRTb2NrT2JqZWN0ICpzLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeV9zc2l6ZV90IGFuY2J1ZnNpemUgPSAwOworICAgIGludCBmbGFncyA9IDA7CisgICAgc3RydWN0IGlvdmVjICppb3ZzID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGksIG5pdGVtcywgbmJ1ZnMgPSAwOworICAgIFB5X2J1ZmZlciAqYnVmcyA9IE5VTEw7CisgICAgUHlPYmplY3QgKmJ1ZmZlcnNfYXJnLCAqZmFzdCwgKnJldHZhbCA9IE5VTEw7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk98bmk6cmVjdm1zZ19pbnRvIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJmJ1ZmZlcnNfYXJnLCAmYW5jYnVmc2l6ZSwgJmZsYWdzKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoKGZhc3QgPSBQeVNlcXVlbmNlX0Zhc3QoYnVmZmVyc19hcmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZWN2bXNnX2ludG8oKSBhcmd1bWVudCAxIG11c3QgYmUgYW4gIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlcmFibGUiKSkgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbml0ZW1zID0gUHlTZXF1ZW5jZV9GYXN0X0dFVF9TSVpFKGZhc3QpOworICAgIGlmIChuaXRlbXMgPiBJTlRfTUFYKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAicmVjdm1zZ19pbnRvKCkgYXJndW1lbnQgMSBpcyB0b28gbG9uZyIpOworICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgfQorCisgICAgLyogRmlsbCBpbiBhbiBpb3ZlYyBmb3IgZWFjaCBpdGVtLCBhbmQgc2F2ZSB0aGUgUHlfYnVmZmVyCisgICAgICAgc3RydWN0cyB0byByZWxlYXNlIGFmdGVyd2FyZHMuICovCisgICAgaWYgKG5pdGVtcyA+IDAgJiYgKChpb3ZzID0gUHlNZW1fTmV3KHN0cnVjdCBpb3ZlYywgbml0ZW1zKSkgPT0gTlVMTCB8fAorICAgICAgICAgICAgICAgICAgICAgICAoYnVmcyA9IFB5TWVtX05ldyhQeV9idWZmZXIsIG5pdGVtcykpID09IE5VTEwpKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisgICAgZm9yICg7IG5idWZzIDwgbml0ZW1zOyBuYnVmcysrKSB7CisgICAgICAgIGlmICghUHlBcmdfUGFyc2UoUHlTZXF1ZW5jZV9GYXN0X0dFVF9JVEVNKGZhc3QsIG5idWZzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAidyo7cmVjdm1zZ19pbnRvKCkgYXJndW1lbnQgMSBtdXN0IGJlIGFuIGl0ZXJhYmxlICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAib2Ygc2luZ2xlLXNlZ21lbnQgcmVhZC13cml0ZSBidWZmZXJzIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAmYnVmc1tuYnVmc10pKQorICAgICAgICAgICAgZ290byBmaW5hbGx5OworICAgICAgICBpb3ZzW25idWZzXS5pb3ZfYmFzZSA9IGJ1ZnNbbmJ1ZnNdLmJ1ZjsKKyAgICAgICAgaW92c1tuYnVmc10uaW92X2xlbiA9IGJ1ZnNbbmJ1ZnNdLmxlbjsKKyAgICB9CisKKyAgICByZXR2YWwgPSBzb2NrX3JlY3Ztc2dfZ3V0cyhzLCBpb3ZzLCBuaXRlbXMsIGZsYWdzLCBhbmNidWZzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtYWtldmFsX3JlY3Ztc2dfaW50bywgTlVMTCk7CitmaW5hbGx5OgorICAgIGZvciAoaSA9IDA7IGkgPCBuYnVmczsgaSsrKQorICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZidWZzW2ldKTsKKyAgICBQeU1lbV9GcmVlKGJ1ZnMpOworICAgIFB5TWVtX0ZyZWUoaW92cyk7CisgICAgUHlfREVDUkVGKGZhc3QpOworICAgIHJldHVybiByZXR2YWw7Cit9CisKK1B5RG9jX1NUUlZBUihyZWN2bXNnX2ludG9fZG9jLAorInJlY3Ztc2dfaW50byhidWZmZXJzWywgYW5jYnVmc2l6ZVssIGZsYWdzXV0pIC0+IChuYnl0ZXMsIGFuY2RhdGEsIG1zZ19mbGFncywgYWRkcmVzcylcblwKK1xuXAorUmVjZWl2ZSBub3JtYWwgZGF0YSBhbmQgYW5jaWxsYXJ5IGRhdGEgZnJvbSB0aGUgc29ja2V0LCBzY2F0dGVyaW5nIHRoZVxuXAorbm9uLWFuY2lsbGFyeSBkYXRhIGludG8gYSBzZXJpZXMgb2YgYnVmZmVycy4gIFRoZSBidWZmZXJzIGFyZ3VtZW50XG5cCittdXN0IGJlIGFuIGl0ZXJhYmxlIG9mIG9iamVjdHMgdGhhdCBleHBvcnQgd3JpdGFibGUgYnVmZmVyc1xuXAorKGUuZy4gYnl0ZWFycmF5IG9iamVjdHMpOyB0aGVzZSB3aWxsIGJlIGZpbGxlZCB3aXRoIHN1Y2Nlc3NpdmUgY2h1bmtzXG5cCitvZiB0aGUgbm9uLWFuY2lsbGFyeSBkYXRhIHVudGlsIGl0IGhhcyBhbGwgYmVlbiB3cml0dGVuIG9yIHRoZXJlIGFyZVxuXAorbm8gbW9yZSBidWZmZXJzLiAgVGhlIGFuY2J1ZnNpemUgYXJndW1lbnQgc2V0cyB0aGUgc2l6ZSBpbiBieXRlcyBvZlxuXAordGhlIGludGVybmFsIGJ1ZmZlciB1c2VkIHRvIHJlY2VpdmUgdGhlIGFuY2lsbGFyeSBkYXRhOyBpdCBkZWZhdWx0cyB0b1xuXAorMCwgbWVhbmluZyB0aGF0IG5vIGFuY2lsbGFyeSBkYXRhIHdpbGwgYmUgcmVjZWl2ZWQuICBBcHByb3ByaWF0ZVxuXAorYnVmZmVyIHNpemVzIGZvciBhbmNpbGxhcnkgZGF0YSBjYW4gYmUgY2FsY3VsYXRlZCB1c2luZyBDTVNHX1NQQUNFKClcblwKK29yIENNU0dfTEVOKCksIGFuZCBpdGVtcyB3aGljaCBkbyBub3QgZml0IGludG8gdGhlIGJ1ZmZlciBtaWdodCBiZVxuXAordHJ1bmNhdGVkIG9yIGRpc2NhcmRlZC4gIFRoZSBmbGFncyBhcmd1bWVudCBkZWZhdWx0cyB0byAwIGFuZCBoYXMgdGhlXG5cCitzYW1lIG1lYW5pbmcgYXMgZm9yIHJlY3YoKS5cblwKK1xuXAorVGhlIHJldHVybiB2YWx1ZSBpcyBhIDQtdHVwbGU6IChuYnl0ZXMsIGFuY2RhdGEsIG1zZ19mbGFncywgYWRkcmVzcykuXG5cCitUaGUgbmJ5dGVzIGl0ZW0gaXMgdGhlIHRvdGFsIG51bWJlciBvZiBieXRlcyBvZiBub24tYW5jaWxsYXJ5IGRhdGFcblwKK3dyaXR0ZW4gaW50byB0aGUgYnVmZmVycy4gIFRoZSBhbmNkYXRhIGl0ZW0gaXMgYSBsaXN0IG9mIHplcm8gb3IgbW9yZVxuXAordHVwbGVzIChjbXNnX2xldmVsLCBjbXNnX3R5cGUsIGNtc2dfZGF0YSkgcmVwcmVzZW50aW5nIHRoZSBhbmNpbGxhcnlcblwKK2RhdGEgKGNvbnRyb2wgbWVzc2FnZXMpIHJlY2VpdmVkOiBjbXNnX2xldmVsIGFuZCBjbXNnX3R5cGUgYXJlXG5cCitpbnRlZ2VycyBzcGVjaWZ5aW5nIHRoZSBwcm90b2NvbCBsZXZlbCBhbmQgcHJvdG9jb2wtc3BlY2lmaWMgdHlwZVxuXAorcmVzcGVjdGl2ZWx5LCBhbmQgY21zZ19kYXRhIGlzIGEgYnl0ZXMgb2JqZWN0IGhvbGRpbmcgdGhlIGFzc29jaWF0ZWRcblwKK2RhdGEuICBUaGUgbXNnX2ZsYWdzIGl0ZW0gaXMgdGhlIGJpdHdpc2UgT1Igb2YgdmFyaW91cyBmbGFnc1xuXAoraW5kaWNhdGluZyBjb25kaXRpb25zIG9uIHRoZSByZWNlaXZlZCBtZXNzYWdlOyBzZWUgeW91ciBzeXN0ZW1cblwKK2RvY3VtZW50YXRpb24gZm9yIGRldGFpbHMuICBJZiB0aGUgcmVjZWl2aW5nIHNvY2tldCBpcyB1bmNvbm5lY3RlZCxcblwKK2FkZHJlc3MgaXMgdGhlIGFkZHJlc3Mgb2YgdGhlIHNlbmRpbmcgc29ja2V0LCBpZiBhdmFpbGFibGU7IG90aGVyd2lzZSxcblwKK2l0cyB2YWx1ZSBpcyB1bnNwZWNpZmllZC5cblwKK1xuXAorSWYgcmVjdm1zZ19pbnRvKCkgcmFpc2VzIGFuIGV4Y2VwdGlvbiBhZnRlciB0aGUgc3lzdGVtIGNhbGwgcmV0dXJucyxcblwKK2l0IHdpbGwgZmlyc3QgYXR0ZW1wdCB0byBjbG9zZSBhbnkgZmlsZSBkZXNjcmlwdG9ycyByZWNlaXZlZCB2aWEgdGhlXG5cCitTQ01fUklHSFRTIG1lY2hhbmlzbS4iKTsKKyNlbmRpZiAgICAvKiBDTVNHX0xFTiAqLworCisKIC8qIHMuc2VuZChkYXRhIFssZmxhZ3NdKSBtZXRob2QgKi8KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI3NzEsNiArMzMzNSw3IEBACiAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICJzZW5kdG8oKSB0YWtlcyAyIG9yIDMgYXJndW1lbnRzICglZCBnaXZlbikiLAogICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ2xlbik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjgxNCw2ICszMzc5LDIzNCBAQAogRm9yIElQIHNvY2tldHMsIHRoZSBhZGRyZXNzIGlzIGEgcGFpciAoaG9zdGFkZHIsIHBvcnQpLiIpOwogCiAKKy8qIFRoZSBzZW5kbXNnKCkgYW5kIHJlY3Ztc2dbX2ludG9dKCkgbWV0aG9kcyByZXF1aXJlIGEgd29ya2luZworICAgQ01TR19MRU4oKS4gIFNlZSB0aGUgY29tbWVudCBuZWFyIGdldF9DTVNHX0xFTigpLiAqLworI2lmZGVmIENNU0dfTEVOCisvKiBzLnNlbmRtc2coYnVmZmVyc1ssIGFuY2RhdGFbLCBmbGFnc1ssIGFkZHJlc3NdXV0pIG1ldGhvZCAqLworCitzdGF0aWMgUHlPYmplY3QgKgorc29ja19zZW5kbXNnKFB5U29ja2V0U29ja09iamVjdCAqcywgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlfc3NpemVfdCBpLCBuZGF0YXBhcnRzLCBuZGF0YWJ1ZnMgPSAwLCBuY21zZ3MsIG5jbXNnYnVmcyA9IDA7CisgICAgUHlfYnVmZmVyICpkYXRhYnVmcyA9IE5VTEw7CisgICAgc3RydWN0IGlvdmVjICppb3ZzID0gTlVMTDsKKyAgICBzb2NrX2FkZHJfdCBhZGRyYnVmOworICAgIHN0cnVjdCBtc2doZHIgbXNnID0gezB9OworICAgIHN0cnVjdCBjbXNnaW5mbyB7CisgICAgICAgIGludCBsZXZlbDsKKyAgICAgICAgaW50IHR5cGU7CisgICAgICAgIFB5X2J1ZmZlciBkYXRhOworICAgIH0gKmNtc2dzID0gTlVMTDsKKyAgICB2b2lkICpjb250cm9sYnVmID0gTlVMTDsKKyAgICBzaXplX3QgY29udHJvbGxlbiwgY29udHJvbGxlbl9sYXN0OworICAgIHNzaXplX3QgYnl0ZXNfc2VudCA9IC0xOworICAgIGludCBhZGRybGVuLCB0aW1lb3V0LCBmbGFncyA9IDA7CisgICAgUHlPYmplY3QgKmRhdGFfYXJnLCAqY21zZ19hcmcgPSBOVUxMLCAqYWRkcl9hcmcgPSBOVUxMLCAqZGF0YV9mYXN0ID0gTlVMTCwKKyAgICAgICAgKmNtc2dfZmFzdCA9IE5VTEwsICpyZXR2YWwgPSBOVUxMOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPfE9pTzpzZW5kbXNnIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJmRhdGFfYXJnLCAmY21zZ19hcmcsICZmbGFncywgJmFkZHJfYXJnKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAvKiBQYXJzZSBkZXN0aW5hdGlvbiBhZGRyZXNzLiAqLworICAgIGlmIChhZGRyX2FyZyAhPSBOVUxMICYmIGFkZHJfYXJnICE9IFB5X05vbmUpIHsKKyAgICAgICAgaWYgKCFnZXRzb2NrYWRkcmFyZyhzLCBhZGRyX2FyZywgU0FTMlNBKCZhZGRyYnVmKSwgJmFkZHJsZW4pKQorICAgICAgICAgICAgZ290byBmaW5hbGx5OworICAgICAgICBtc2cubXNnX25hbWUgPSAmYWRkcmJ1ZjsKKyAgICAgICAgbXNnLm1zZ19uYW1lbGVuID0gYWRkcmxlbjsKKyAgICB9CisKKyAgICAvKiBGaWxsIGluIGFuIGlvdmVjIGZvciBlYWNoIG1lc3NhZ2UgcGFydCwgYW5kIHNhdmUgdGhlIFB5X2J1ZmZlcgorICAgICAgIHN0cnVjdHMgdG8gcmVsZWFzZSBhZnRlcndhcmRzLiAqLworICAgIGlmICgoZGF0YV9mYXN0ID0gUHlTZXF1ZW5jZV9GYXN0KGRhdGFfYXJnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzZW5kbXNnKCkgYXJndW1lbnQgMSBtdXN0IGJlIGFuICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlcmFibGUiKSkgPT0gTlVMTCkKKyAgICAgICAgZ290byBmaW5hbGx5OworICAgIG5kYXRhcGFydHMgPSBQeVNlcXVlbmNlX0Zhc3RfR0VUX1NJWkUoZGF0YV9mYXN0KTsKKyAgICBpZiAobmRhdGFwYXJ0cyA+IElOVF9NQVgpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJzZW5kbXNnKCkgYXJndW1lbnQgMSBpcyB0b28gbG9uZyIpOworICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgfQorICAgIG1zZy5tc2dfaW92bGVuID0gbmRhdGFwYXJ0czsKKyAgICBpZiAobmRhdGFwYXJ0cyA+IDAgJiYKKyAgICAgICAgKChtc2cubXNnX2lvdiA9IGlvdnMgPSBQeU1lbV9OZXcoc3RydWN0IGlvdmVjLCBuZGF0YXBhcnRzKSkgPT0gTlVMTCB8fAorICAgICAgICAgKGRhdGFidWZzID0gUHlNZW1fTmV3KFB5X2J1ZmZlciwgbmRhdGFwYXJ0cykpID09IE5VTEwpKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICB9CisgICAgZm9yICg7IG5kYXRhYnVmcyA8IG5kYXRhcGFydHM7IG5kYXRhYnVmcysrKSB7CisgICAgICAgIGlmICghUHlBcmdfUGFyc2UoUHlTZXF1ZW5jZV9GYXN0X0dFVF9JVEVNKGRhdGFfZmFzdCwgbmRhdGFidWZzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAieSo7c2VuZG1zZygpIGFyZ3VtZW50IDEgbXVzdCBiZSBhbiBpdGVyYWJsZSBvZiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgImJ1ZmZlci1jb21wYXRpYmxlIG9iamVjdHMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICZkYXRhYnVmc1tuZGF0YWJ1ZnNdKSkKKyAgICAgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICAgICAgaW92c1tuZGF0YWJ1ZnNdLmlvdl9iYXNlID0gZGF0YWJ1ZnNbbmRhdGFidWZzXS5idWY7CisgICAgICAgIGlvdnNbbmRhdGFidWZzXS5pb3ZfbGVuID0gZGF0YWJ1ZnNbbmRhdGFidWZzXS5sZW47CisgICAgfQorCisgICAgaWYgKGNtc2dfYXJnID09IE5VTEwpCisgICAgICAgIG5jbXNncyA9IDA7CisgICAgZWxzZSB7CisgICAgICAgIGlmICgoY21zZ19mYXN0ID0gUHlTZXF1ZW5jZV9GYXN0KGNtc2dfYXJnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2VuZG1zZygpIGFyZ3VtZW50IDIgbXVzdCBiZSBhbiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpdGVyYWJsZSIpKSA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBmaW5hbGx5OworICAgICAgICBuY21zZ3MgPSBQeVNlcXVlbmNlX0Zhc3RfR0VUX1NJWkUoY21zZ19mYXN0KTsKKyAgICB9CisKKyNpZm5kZWYgQ01TR19TUEFDRQorICAgIGlmIChuY21zZ3MgPiAxKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgInNlbmRpbmcgbXVsdGlwbGUgY29udHJvbCBtZXNzYWdlcyBpcyBub3Qgc3VwcG9ydGVkICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJvbiB0aGlzIHN5c3RlbSIpOworICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgfQorI2VuZGlmCisgICAgLyogU2F2ZSBsZXZlbCwgdHlwZSBhbmQgUHlfYnVmZmVyIGZvciBlYWNoIGNvbnRyb2wgbWVzc2FnZSwKKyAgICAgICBhbmQgY2FsY3VsYXRlIHRvdGFsIHNpemUuICovCisgICAgaWYgKG5jbXNncyA+IDAgJiYgKGNtc2dzID0gUHlNZW1fTmV3KHN0cnVjdCBjbXNnaW5mbywgbmNtc2dzKSkgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgfQorICAgIGNvbnRyb2xsZW4gPSBjb250cm9sbGVuX2xhc3QgPSAwOworICAgIHdoaWxlIChuY21zZ2J1ZnMgPCBuY21zZ3MpIHsKKyAgICAgICAgc2l6ZV90IGJ1ZnNpemUsIHNwYWNlOworCisgICAgICAgIGlmICghUHlBcmdfUGFyc2UoUHlTZXF1ZW5jZV9GYXN0X0dFVF9JVEVNKGNtc2dfZmFzdCwgbmNtc2didWZzKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiKGlpeSopOltzZW5kbXNnKCkgYW5jaWxsYXJ5IGRhdGEgaXRlbXNdIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAmY21zZ3NbbmNtc2didWZzXS5sZXZlbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAmY21zZ3NbbmNtc2didWZzXS50eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICZjbXNnc1tuY21zZ2J1ZnNdLmRhdGEpKQorICAgICAgICAgICAgZ290byBmaW5hbGx5OworICAgICAgICBidWZzaXplID0gY21zZ3NbbmNtc2didWZzKytdLmRhdGEubGVuOworCisjaWZkZWYgQ01TR19TUEFDRQorICAgICAgICBpZiAoIWdldF9DTVNHX1NQQUNFKGJ1ZnNpemUsICZzcGFjZSkpIHsKKyNlbHNlCisgICAgICAgIGlmICghZ2V0X0NNU0dfTEVOKGJ1ZnNpemUsICZzcGFjZSkpIHsKKyNlbmRpZgorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJhbmNpbGxhcnkgZGF0YSBpdGVtIHRvbyBsYXJnZSIpOworICAgICAgICAgICAgZ290byBmaW5hbGx5OworICAgICAgICB9CisgICAgICAgIGNvbnRyb2xsZW4gKz0gc3BhY2U7CisgICAgICAgIGlmIChjb250cm9sbGVuID4gU09DS0xFTl9UX0xJTUlUIHx8IGNvbnRyb2xsZW4gPCBjb250cm9sbGVuX2xhc3QpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAidG9vIG11Y2ggYW5jaWxsYXJ5IGRhdGEiKTsKKyAgICAgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICAgICAgfQorICAgICAgICBjb250cm9sbGVuX2xhc3QgPSBjb250cm9sbGVuOworICAgIH0KKworICAgIC8qIENvbnN0cnVjdCBhbmNpbGxhcnkgZGF0YSBibG9jayBmcm9tIGNvbnRyb2wgbWVzc2FnZSBpbmZvLiAqLworICAgIGlmIChuY21zZ2J1ZnMgPiAwKSB7CisgICAgICAgIHN0cnVjdCBjbXNnaGRyICpjbXNnaCA9IE5VTEw7CisKKyAgICAgICAgaWYgKChtc2cubXNnX2NvbnRyb2wgPSBjb250cm9sYnVmID0KKyAgICAgICAgICAgICBQeU1lbV9NYWxsb2MoY29udHJvbGxlbikpID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgICAgIH0KKyAgICAgICAgbXNnLm1zZ19jb250cm9sbGVuID0gY29udHJvbGxlbjsKKworICAgICAgICAvKiBOZWVkIHRvIHplcm8gb3V0IHRoZSBidWZmZXIgYXMgYSB3b3JrYXJvdW5kIGZvciBnbGliYydzCisgICAgICAgICAgIENNU0dfTlhUSERSKCkgaW1wbGVtZW50YXRpb24uICBBZnRlciBnZXR0aW5nIHRoZSBwb2ludGVyIHRvCisgICAgICAgICAgIHRoZSBuZXh0IGhlYWRlciwgaXQgY2hlY2tzIGl0cyAodW5pbml0aWFsaXplZCkgY21zZ19sZW4KKyAgICAgICAgICAgbWVtYmVyIHRvIHNlZSBpZiB0aGUgIm1lc3NhZ2UiIGZpdHMgaW4gdGhlIGJ1ZmZlciwgYW5kCisgICAgICAgICAgIHJldHVybnMgTlVMTCBpZiBpdCBkb2Vzbid0LiAgWmVyby1maWxsaW5nIHRoZSBidWZmZXIKKyAgICAgICAgICAgZW5zdXJlcyB0aGF0IHRoYXQgZG9lc24ndCBoYXBwZW4uICovCisgICAgICAgIG1lbXNldChjb250cm9sYnVmLCAwLCBjb250cm9sbGVuKTsKKworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbmNtc2didWZzOyBpKyspIHsKKyAgICAgICAgICAgIHNpemVfdCBtc2dfbGVuLCBkYXRhX2xlbiA9IGNtc2dzW2ldLmRhdGEubGVuOworICAgICAgICAgICAgaW50IGVub3VnaF9zcGFjZSA9IDA7CisKKyAgICAgICAgICAgIGNtc2doID0gKGkgPT0gMCkgPyBDTVNHX0ZJUlNUSERSKCZtc2cpIDogQ01TR19OWFRIRFIoJm1zZywgY21zZ2gpOworICAgICAgICAgICAgaWYgKGNtc2doID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidW5leHBlY3RlZCBOVUxMIHJlc3VsdCBmcm9tICVzKCkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaSA9PSAwKSA/ICJDTVNHX0ZJUlNUSERSIiA6ICJDTVNHX05YVEhEUiIpOworICAgICAgICAgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmICghZ2V0X0NNU0dfTEVOKGRhdGFfbGVuLCAmbXNnX2xlbikpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXRlbSBzaXplIG91dCBvZiByYW5nZSBmb3IgQ01TR19MRU4oKSIpOworICAgICAgICAgICAgICAgIGdvdG8gZmluYWxseTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChjbXNnX21pbl9zcGFjZSgmbXNnLCBjbXNnaCwgbXNnX2xlbikpIHsKKyAgICAgICAgICAgICAgICBzaXplX3Qgc3BhY2U7CisKKyAgICAgICAgICAgICAgICBjbXNnaC0+Y21zZ19sZW4gPSBtc2dfbGVuOworICAgICAgICAgICAgICAgIGlmIChnZXRfY21zZ19kYXRhX3NwYWNlKCZtc2csIGNtc2doLCAmc3BhY2UpKQorICAgICAgICAgICAgICAgICAgICBlbm91Z2hfc3BhY2UgPSAoc3BhY2UgPj0gZGF0YV9sZW4pOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKCFlbm91Z2hfc3BhY2UpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYW5jaWxsYXJ5IGRhdGEgZG9lcyBub3QgZml0IGluIGNhbGN1bGF0ZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3BhY2UiKTsKKyAgICAgICAgICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBjbXNnaC0+Y21zZ19sZXZlbCA9IGNtc2dzW2ldLmxldmVsOworICAgICAgICAgICAgY21zZ2gtPmNtc2dfdHlwZSA9IGNtc2dzW2ldLnR5cGU7CisgICAgICAgICAgICBtZW1jcHkoQ01TR19EQVRBKGNtc2doKSwgY21zZ3NbaV0uZGF0YS5idWYsIGRhdGFfbGVuKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8qIE1ha2UgdGhlIHN5c3RlbSBjYWxsLiAqLworICAgIGlmICghSVNfU0VMRUNUQUJMRShzKSkgeworICAgICAgICBzZWxlY3RfZXJyb3IoKTsKKyAgICAgICAgZ290byBmaW5hbGx5OworICAgIH0KKworICAgIEJFR0lOX1NFTEVDVF9MT09QKHMpCisgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUzsKKyAgICB0aW1lb3V0ID0gaW50ZXJuYWxfc2VsZWN0X2V4KHMsIDEsIGludGVydmFsKTsKKyAgICBpZiAoIXRpbWVvdXQpCisgICAgICAgIGJ5dGVzX3NlbnQgPSBzZW5kbXNnKHMtPnNvY2tfZmQsICZtc2csIGZsYWdzKTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUzsKKyAgICBpZiAodGltZW91dCA9PSAxKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfdGltZW91dCwgInRpbWVkIG91dCIpOworICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgfQorICAgIEVORF9TRUxFQ1RfTE9PUChzKQorCisgICAgaWYgKGJ5dGVzX3NlbnQgPCAwKSB7CisgICAgICAgIHMtPmVycm9yaGFuZGxlcigpOworICAgICAgICBnb3RvIGZpbmFsbHk7CisgICAgfQorICAgIHJldHZhbCA9IFB5TG9uZ19Gcm9tU3NpemVfdChieXRlc19zZW50KTsKKworZmluYWxseToKKyAgICBQeU1lbV9GcmVlKGNvbnRyb2xidWYpOworICAgIGZvciAoaSA9IDA7IGkgPCBuY21zZ2J1ZnM7IGkrKykKKyAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmY21zZ3NbaV0uZGF0YSk7CisgICAgUHlNZW1fRnJlZShjbXNncyk7CisgICAgUHlfWERFQ1JFRihjbXNnX2Zhc3QpOworICAgIGZvciAoaSA9IDA7IGkgPCBuZGF0YWJ1ZnM7IGkrKykKKyAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmZGF0YWJ1ZnNbaV0pOworICAgIFB5TWVtX0ZyZWUoZGF0YWJ1ZnMpOworICAgIFB5TWVtX0ZyZWUoaW92cyk7CisgICAgUHlfWERFQ1JFRihkYXRhX2Zhc3QpOworICAgIHJldHVybiByZXR2YWw7Cit9CisKK1B5RG9jX1NUUlZBUihzZW5kbXNnX2RvYywKKyJzZW5kbXNnKGJ1ZmZlcnNbLCBhbmNkYXRhWywgZmxhZ3NbLCBhZGRyZXNzXV1dKSAtPiBjb3VudFxuXAorXG5cCitTZW5kIG5vcm1hbCBhbmQgYW5jaWxsYXJ5IGRhdGEgdG8gdGhlIHNvY2tldCwgZ2F0aGVyaW5nIHRoZVxuXAorbm9uLWFuY2lsbGFyeSBkYXRhIGZyb20gYSBzZXJpZXMgb2YgYnVmZmVycyBhbmQgY29uY2F0ZW5hdGluZyBpdCBpbnRvXG5cCithIHNpbmdsZSBtZXNzYWdlLiAgVGhlIGJ1ZmZlcnMgYXJndW1lbnQgc3BlY2lmaWVzIHRoZSBub24tYW5jaWxsYXJ5XG5cCitkYXRhIGFzIGFuIGl0ZXJhYmxlIG9mIGJ1ZmZlci1jb21wYXRpYmxlIG9iamVjdHMgKGUuZy4gYnl0ZXMgb2JqZWN0cykuXG5cCitUaGUgYW5jZGF0YSBhcmd1bWVudCBzcGVjaWZpZXMgdGhlIGFuY2lsbGFyeSBkYXRhIChjb250cm9sIG1lc3NhZ2VzKVxuXAorYXMgYW4gaXRlcmFibGUgb2YgemVybyBvciBtb3JlIHR1cGxlcyAoY21zZ19sZXZlbCwgY21zZ190eXBlLFxuXAorY21zZ19kYXRhKSwgd2hlcmUgY21zZ19sZXZlbCBhbmQgY21zZ190eXBlIGFyZSBpbnRlZ2VycyBzcGVjaWZ5aW5nIHRoZVxuXAorcHJvdG9jb2wgbGV2ZWwgYW5kIHByb3RvY29sLXNwZWNpZmljIHR5cGUgcmVzcGVjdGl2ZWx5LCBhbmQgY21zZ19kYXRhXG5cCitpcyBhIGJ1ZmZlci1jb21wYXRpYmxlIG9iamVjdCBob2xkaW5nIHRoZSBhc3NvY2lhdGVkIGRhdGEuICBUaGUgZmxhZ3NcblwKK2FyZ3VtZW50IGRlZmF1bHRzIHRvIDAgYW5kIGhhcyB0aGUgc2FtZSBtZWFuaW5nIGFzIGZvciBzZW5kKCkuICBJZlxuXAorYWRkcmVzcyBpcyBzdXBwbGllZCBhbmQgbm90IE5vbmUsIGl0IHNldHMgYSBkZXN0aW5hdGlvbiBhZGRyZXNzIGZvclxuXAordGhlIG1lc3NhZ2UuICBUaGUgcmV0dXJuIHZhbHVlIGlzIHRoZSBudW1iZXIgb2YgYnl0ZXMgb2Ygbm9uLWFuY2lsbGFyeVxuXAorZGF0YSBzZW50LiIpOworI2VuZGlmICAgIC8qIENNU0dfTEVOICovCisKKwogLyogcy5zaHV0ZG93bihob3cpIG1ldGhvZCAqLwogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMjk0MCw2ICszNzMzLDE0IEBACiAgICAgICAgICAgICAgICAgICAgICAgc2V0c29ja29wdF9kb2N9LAogICAgIHsic2h1dGRvd24iLCAgICAgICAgICAoUHlDRnVuY3Rpb24pc29ja19zaHV0ZG93biwgTUVUSF9PLAogICAgICAgICAgICAgICAgICAgICAgIHNodXRkb3duX2RvY30sCisjaWZkZWYgQ01TR19MRU4KKyAgICB7InJlY3Ztc2ciLCAgICAgICAgICAgKFB5Q0Z1bmN0aW9uKXNvY2tfcmVjdm1zZywgTUVUSF9WQVJBUkdTLAorICAgICAgICAgICAgICAgICAgICAgIHJlY3Ztc2dfZG9jfSwKKyAgICB7InJlY3Ztc2dfaW50byIsICAgICAgKFB5Q0Z1bmN0aW9uKXNvY2tfcmVjdm1zZ19pbnRvLCBNRVRIX1ZBUkFSR1MsCisgICAgICAgICAgICAgICAgICAgICAgcmVjdm1zZ19pbnRvX2RvYyx9LAorICAgIHsic2VuZG1zZyIsICAgICAgICAgICAoUHlDRnVuY3Rpb24pc29ja19zZW5kbXNnLCBNRVRIX1ZBUkFSR1MsCisgICAgICAgICAgICAgICAgICAgICAgc2VuZG1zZ19kb2N9LAorI2VuZGlmCiAgICAge05VTEwsICAgICAgICAgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAvKiBzZW50aW5lbCAqLwogfTsKIApAQCAtMzExNSwyNSArMzkxNiwzNSBAQAogICAgICAgIHZlcnNpb24gb2YgdGhlIGhvc3RuYW1lLCB3aGVyZWFzIHdlIG5lZWQgYSBVbmljb2RlIHN0cmluZy4KICAgICAgICBPdGhlcndpc2UsIGdldGhvc3RuYW1lIGFwcGFyZW50bHkgYWxzbyByZXR1cm5zIHRoZSBETlMgbmFtZS4gKi8KICAgICB3Y2hhcl90IGJ1ZltNQVhfQ09NUFVURVJOQU1FX0xFTkdUSCArIDFdOwotICAgIERXT1JEIHNpemUgPSBzaXplb2YoYnVmKSAvIHNpemVvZih3Y2hhcl90KTsKKyAgICBEV09SRCBzaXplID0gUHlfQVJSQVlfTEVOR1RIKGJ1Zik7CisgICAgd2NoYXJfdCAqbmFtZTsKICAgICBQeU9iamVjdCAqcmVzdWx0OwotICAgIGlmICghR2V0Q29tcHV0ZXJOYW1lRXhXKENvbXB1dGVyTmFtZVBoeXNpY2FsRG5zSG9zdG5hbWUsIGJ1ZiwgJnNpemUpKSB7Ci0gICAgICAgIGlmIChHZXRMYXN0RXJyb3IoKSA9PSBFUlJPUl9NT1JFX0RBVEEpIHsKLSAgICAgICAgICAgIC8qIE1TRE4gc2F5cyB0aGlzIG1heSBvY2N1ciAiYmVjYXVzZSBETlMgYWxsb3dzIGxvbmdlciBuYW1lcyAqLwotICAgICAgICAgICAgaWYgKHNpemUgPT0gMCkgLyogWFhYOiBJJ20gbm90IHN1cmUgaG93IHRvIGhhbmRsZSB0aGlzICovCi0gICAgICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCAwKTsKLSAgICAgICAgICAgIHJlc3VsdCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBzaXplIC0gMSk7Ci0gICAgICAgICAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIGlmIChHZXRDb21wdXRlck5hbWVFeFcoQ29tcHV0ZXJOYW1lUGh5c2ljYWxEbnNIb3N0bmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnNpemUpKQotICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4gUHlFcnJfU2V0RXhjRnJvbVdpbmRvd3NFcnIoUHlFeGNfV2luZG93c0Vycm9yLCBHZXRMYXN0RXJyb3IoKSk7CisKKyAgICBpZiAoR2V0Q29tcHV0ZXJOYW1lRXhXKENvbXB1dGVyTmFtZVBoeXNpY2FsRG5zSG9zdG5hbWUsIGJ1ZiwgJnNpemUpKQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihidWYsIHNpemUpOworCisgICAgaWYgKEdldExhc3RFcnJvcigpICE9IEVSUk9SX01PUkVfREFUQSkKKyAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKDApOworCisgICAgaWYgKHNpemUgPT0gMCkKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9OZXcoMCwgMCk7CisKKyAgICAvKiBNU0ROIHNheXMgRVJST1JfTU9SRV9EQVRBIG1heSBvY2N1ciBiZWNhdXNlIEROUyBhbGxvd3MgbG9uZ2VyCisgICAgICAgbmFtZXMgKi8KKyAgICBuYW1lID0gUHlNZW1fTWFsbG9jKHNpemUgKiBzaXplb2Yod2NoYXJfdCkpOworICAgIGlmICghbmFtZSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKCFHZXRDb21wdXRlck5hbWVFeFcoQ29tcHV0ZXJOYW1lUGh5c2ljYWxEbnNIb3N0bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2l6ZSkpCisgICAgeworICAgICAgICBQeU1lbV9GcmVlKG5hbWUpOworICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnIoMCk7CiAgICAgfQotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoYnVmLCBzaXplKTsgICAgICAgICAgICAKKworICAgIHJlc3VsdCA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIobmFtZSwgc2l6ZSk7CisgICAgUHlNZW1fRnJlZShuYW1lKTsKKyAgICByZXR1cm4gcmVzdWx0OwogI2Vsc2UKICAgICBjaGFyIGJ1ZlsxMDI0XTsKICAgICBpbnQgcmVzOwpAQCAtMzE1Miw2ICszOTYzLDM3IEBACiBcblwKIFJldHVybiB0aGUgY3VycmVudCBob3N0IG5hbWUuIik7CiAKKyNpZmRlZiBIQVZFX1NFVEhPU1ROQU1FCitQeURvY19TVFJWQVIoc2V0aG9zdG5hbWVfZG9jLAorInNldGhvc3RuYW1lKG5hbWUpXG5cblwKK1NldHMgdGhlIGhvc3RuYW1lIHRvIG5hbWUuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitzb2NrZXRfc2V0aG9zdG5hbWUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5T2JqZWN0ICpobm9iajsKKyAgICBQeV9idWZmZXIgYnVmOworICAgIGludCByZXMsIGZsYWcgPSAwOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJTOnNldGhvc3RuYW1lIiwgJmhub2JqKSkgeworICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mOnNldGhvc3RuYW1lIiwKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZobm9iaikpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgZmxhZyA9IDE7CisgICAgfQorICAgIHJlcyA9IFB5T2JqZWN0X0dldEJ1ZmZlcihobm9iaiwgJmJ1ZiwgUHlCVUZfU0lNUExFKTsKKyAgICBpZiAoIXJlcykgeworICAgICAgICByZXMgPSBzZXRob3N0bmFtZShidWYuYnVmLCBidWYubGVuKTsKKyAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmYnVmKTsKKyAgICB9CisgICAgaWYgKGZsYWcpCisgICAgICAgIFB5X0RFQ1JFRihobm9iaik7CisgICAgaWYgKHJlcykKKyAgICAgICAgcmV0dXJuIHNldF9lcnJvcigpOworICAgIFB5X1JFVFVSTl9OT05FOworfQorI2VuZGlmCiAKIC8qIFB5dGhvbiBpbnRlcmZhY2UgdG8gZ2V0aG9zdGJ5bmFtZShuYW1lKS4gKi8KIApAQCAtMzE5OCw5ICs0MDQwLDggQEAKIAogICAgIGlmIChoLT5oX2FkZHJ0eXBlICE9IGFmKSB7CiAgICAgICAgIC8qIExldCdzIGdldCByZWFsIGVycm9yIG1lc3NhZ2UgdG8gcmV0dXJuICovCi0gICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAoY2hhciAqKXN0cmVycm9yKEVBRk5PU1VQUE9SVCkpOwotCisgICAgICAgIGVycm5vID0gRUFGTk9TVVBQT1JUOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIApAQCAtMzI4Myw3ICs0MTI0LDcgQEAKICNlbmRpZgogCiAgICAgICAgIGRlZmF1bHQ6ICAgICAgICAgICAgICAgIC8qIGNhbid0IGhhcHBlbiAqLwotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1bnN1cHBvcnRlZCBhZGRyZXNzIGZhbWlseSIpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KQEAgLTMzMTUsMTEgKzQxNTYsNyBAQAogewogICAgIGNoYXIgKm5hbWU7CiAgICAgc3RydWN0IGhvc3RlbnQgKmg7Ci0jaWZkZWYgRU5BQkxFX0lQVjYKLSAgICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBhZGRyOwotI2Vsc2UKLSAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsKLSNlbmRpZgorICAgIHNvY2tfYWRkcl90IGFkZHI7CiAgICAgc3RydWN0IHNvY2thZGRyICpzYTsKICAgICBQeU9iamVjdCAqcmV0ID0gTlVMTDsKICNpZmRlZiBIQVZFX0dFVEhPU1RCWU5BTUVfUgpAQCAtMzMzOCw3ICs0MTc1LDcgQEAKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiZXQ6Z2V0aG9zdGJ5bmFtZV9leCIsICJpZG5hIiwgJm5hbWUpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoc2V0aXBhZGRyKG5hbWUsIChzdHJ1Y3Qgc29ja2FkZHIgKikmYWRkciwgc2l6ZW9mKGFkZHIpLCBBRl9JTkVUKSA8IDApCisgICAgaWYgKHNldGlwYWRkcihuYW1lLCBTQVMyU0EoJmFkZHIpLCBzaXplb2YoYWRkciksIEFGX0lORVQpIDwgMCkKICAgICAgICAgZ290byBmaW5hbGx5OwogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKICNpZmRlZiBIQVZFX0dFVEhPU1RCWU5BTUVfUgpAQCAtMzM2Myw4ICs0MjAwLDggQEAKICAgICAgICBhZGRyLnNzX2ZhbWlseS4KICAgICAgICBUaGVyZWZvcmUsIHdlIGNhc3QgdGhlIHNvY2thZGRyX3N0b3JhZ2UgaW50byBzb2NrYWRkciB0bwogICAgICAgIGFjY2VzcyBzYV9mYW1pbHkuICovCi0gICAgc2EgPSAoc3RydWN0IHNvY2thZGRyKikmYWRkcjsKLSAgICByZXQgPSBnZXRob3N0X2NvbW1vbihoLCAoc3RydWN0IHNvY2thZGRyICopJmFkZHIsIHNpemVvZihhZGRyKSwKKyAgICBzYSA9IFNBUzJTQSgmYWRkcik7CisgICAgcmV0ID0gZ2V0aG9zdF9jb21tb24oaCwgU0FTMlNBKCZhZGRyKSwgc2l6ZW9mKGFkZHIpLAogICAgICAgICAgICAgICAgICAgICAgICAgIHNhLT5zYV9mYW1pbHkpOwogI2lmZGVmIFVTRV9HRVRIT1NUQllOQU1FX0xPQ0sKICAgICBQeVRocmVhZF9yZWxlYXNlX2xvY2sobmV0ZGJfbG9jayk7CkBAIC0zMzg3LDEyICs0MjI0LDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzb2NrZXRfZ2V0aG9zdGJ5YWRkcihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0jaWZkZWYgRU5BQkxFX0lQVjYKLSAgICBzdHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBhZGRyOwotI2Vsc2UKLSAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsKLSNlbmRpZgotICAgIHN0cnVjdCBzb2NrYWRkciAqc2EgPSAoc3RydWN0IHNvY2thZGRyICopJmFkZHI7CisgICAgc29ja19hZGRyX3QgYWRkcjsKKyAgICBzdHJ1Y3Qgc29ja2FkZHIgKnNhID0gU0FTMlNBKCZhZGRyKTsKICAgICBjaGFyICppcF9udW07CiAgICAgc3RydWN0IGhvc3RlbnQgKmg7CiAgICAgUHlPYmplY3QgKnJldCA9IE5VTEw7CkBAIC0zNDI0LDcgKzQyNTcsNyBAQAogICAgICAgICBnb3RvIGZpbmFsbHk7CiAgICAgYWYgPSBzYS0+c2FfZmFtaWx5OwogICAgIGFwID0gTlVMTDsKLSAgICBhbCA9IDA7CisgICAgLyogYWwgPSAwOyAqLwogICAgIHN3aXRjaCAoYWYpIHsKICAgICBjYXNlIEFGX0lORVQ6CiAgICAgICAgIGFwID0gKGNoYXIgKikmKChzdHJ1Y3Qgc29ja2FkZHJfaW4gKilzYSktPnNpbl9hZGRyOwpAQCAtMzQzNyw3ICs0MjcwLDcgQEAKICAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICBkZWZhdWx0OgotICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLCAidW5zdXBwb3J0ZWQgYWRkcmVzcyBmYW1pbHkiKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJ1bnN1cHBvcnRlZCBhZGRyZXNzIGZhbWlseSIpOwogICAgICAgICBnb3RvIGZpbmFsbHk7CiAgICAgfQogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKQEAgLTM0NjEsNyArNDI5NCw3IEBACiAgICAgaCA9IGdldGhvc3RieWFkZHIoYXAsIGFsLCBhZik7CiAjZW5kaWYgLyogSEFWRV9HRVRIT1NUQllOQU1FX1IgKi8KICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwotICAgIHJldCA9IGdldGhvc3RfY29tbW9uKGgsIChzdHJ1Y3Qgc29ja2FkZHIgKikmYWRkciwgc2l6ZW9mKGFkZHIpLCBhZik7CisgICAgcmV0ID0gZ2V0aG9zdF9jb21tb24oaCwgU0FTMlNBKCZhZGRyKSwgc2l6ZW9mKGFkZHIpLCBhZik7CiAjaWZkZWYgVVNFX0dFVEhPU1RCWU5BTUVfTE9DSwogICAgIFB5VGhyZWFkX3JlbGVhc2VfbG9jayhuZXRkYl9sb2NrKTsKICNlbmRpZgpAQCAtMzQ5Myw3ICs0MzI2LDcgQEAKICAgICBzcCA9IGdldHNlcnZieW5hbWUobmFtZSwgcHJvdG8pOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgaWYgKHNwID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgInNlcnZpY2UvcHJvdG8gbm90IGZvdW5kIik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAic2VydmljZS9wcm90byBub3QgZm91bmQiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpIG50b2hzKHNwLT5zX3BvcnQpKTsKQEAgLTM1MzAsNyArNDM2Myw3IEBACiAgICAgc3AgPSBnZXRzZXJ2Ynlwb3J0KGh0b25zKChzaG9ydClwb3J0KSwgcHJvdG8pOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgaWYgKHNwID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgInBvcnQvcHJvdG8gbm90IGZvdW5kIik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAicG9ydC9wcm90byBub3QgZm91bmQiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhzcC0+c19uYW1lKTsKQEAgLTM1NTksNyArNDM5Miw3IEBACiAgICAgc3AgPSBnZXRwcm90b2J5bmFtZShuYW1lKTsKICAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUwogICAgIGlmIChzcCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsICJwcm90b2NvbCBub3QgZm91bmQiKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJwcm90b2NvbCBub3QgZm91bmQiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpIHNwLT5wX3Byb3RvKTsKQEAgLTM4MTQsNyArNDY0Nyw3IEBACiAgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKChjaGFyICopKCZidWYpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGJ1ZikpOwogCi0gICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwKKyAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICAgICAgICAgImlsbGVnYWwgSVAgYWRkcmVzcyBzdHJpbmcgcGFzc2VkIHRvIGluZXRfYXRvbiIpOwogICAgIHJldHVybiBOVUxMOwogCkBAIC0zODM1LDcgKzQ2NjgsNyBAQAogICAgICAgICBwYWNrZWRfYWRkciA9IGluZXRfYWRkcihpcF9hZGRyKTsKIAogICAgICAgICBpZiAocGFja2VkX2FkZHIgPT0gSU5BRERSX05PTkUpIHsgICAgICAgICAgICAgICAvKiBpbnZhbGlkIGFkZHJlc3MgKi8KLSAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsCisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICAgICAiaWxsZWdhbCBJUCBhZGRyZXNzIHN0cmluZyBwYXNzZWQgdG8gaW5ldF9hdG9uIik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQpAQCAtMzg2Nyw3ICs0NzAwLDcgQEAKICAgICB9CiAKICAgICBpZiAoYWRkcl9sZW4gIT0gc2l6ZW9mKHBhY2tlZF9hZGRyKSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICJwYWNrZWQgSVAgd3JvbmcgbGVuZ3RoIGZvciBpbmV0X250b2EiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMzkwMiw3ICs0NzM1LDcgQEAKIAogI2lmICFkZWZpbmVkKEVOQUJMRV9JUFY2KSAmJiBkZWZpbmVkKEFGX0lORVQ2KQogICAgIGlmKGFmID09IEFGX0lORVQ2KSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsCisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgImNhbid0IHVzZSBBRl9JTkVUNiwgSVB2NiBpcyBkaXNhYmxlZCIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC0zOTEwLDEwICs0NzQzLDEwIEBACiAKICAgICByZXR2YWwgPSBpbmV0X3B0b24oYWYsIGlwLCBwYWNrZWQpOwogICAgIGlmIChyZXR2YWwgPCAwKSB7Ci0gICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhzb2NrZXRfZXJyb3IpOworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0gZWxzZSBpZiAocmV0dmFsID09IDApIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAiaWxsZWdhbCBJUCBhZGRyZXNzIHN0cmluZyBwYXNzZWQgdG8gaW5ldF9wdG9uIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0gZWxzZSBpZiAoYWYgPT0gQUZfSU5FVCkgewpAQCAtMzkyNSw3ICs0NzU4LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihzdHJ1Y3QgaW42X2FkZHIpKTsKICNlbmRpZgogICAgIH0gZWxzZSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhzb2NrZXRfZXJyb3IsICJ1bmtub3duIGFkZHJlc3MgZmFtaWx5Iik7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PU0Vycm9yLCAidW5rbm93biBhZGRyZXNzIGZhbWlseSIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiB9CkBAIC0zOTc3LDcgKzQ4MTAsNyBAQAogCiAgICAgcmV0dmFsID0gaW5ldF9udG9wKGFmLCBwYWNrZWQsIGlwLCBzaXplb2YoaXApKTsKICAgICBpZiAoIXJldHZhbCkgewotICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oc29ja2V0X2Vycm9yKTsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9IGVsc2UgewogICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcocmV0dmFsKTsKQEAgLTM5OTYsNyArNDgyOSw3IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc29ja2V0X2dldGFkZHJpbmZvKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QqIGt3YXJncykKIHsKLSAgICBzdGF0aWMgY2hhcioga3duYW1lc1tdID0geyJob3N0IiwgInBvcnQiLCAiZmFtaWx5IiwgInR5cGUiLCAicHJvdG8iLCAKKyAgICBzdGF0aWMgY2hhcioga3duYW1lc1tdID0geyJob3N0IiwgInBvcnQiLCAiZmFtaWx5IiwgInR5cGUiLCAicHJvdG8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZsYWdzIiwgMH07CiAgICAgc3RydWN0IGFkZHJpbmZvIGhpbnRzLCAqcmVzOwogICAgIHN0cnVjdCBhZGRyaW5mbyAqcmVzMCA9IE5VTEw7CkBAIC00MDExLDcgKzQ4NDQsNyBAQAogCiAgICAgZmFtaWx5ID0gc29ja3R5cGUgPSBwcm90b2NvbCA9IGZsYWdzID0gMDsKICAgICBmYW1pbHkgPSBBRl9VTlNQRUM7Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dhcmdzLCAiT098aWlpaTpnZXRhZGRyaW5mbyIsIAorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3YXJncywgIk9PfGlpaWk6Z2V0YWRkcmluZm8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICBrd25hbWVzLCAmaG9iaiwgJnBvYmosICZmYW1pbHksICZzb2NrdHlwZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJnByb3RvY29sLCAmZmxhZ3MpKSB7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNDAxOSw3ICs0ODUyLDkgQEAKICAgICBpZiAoaG9iaiA9PSBQeV9Ob25lKSB7CiAgICAgICAgIGhwdHIgPSBOVUxMOwogICAgIH0gZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrKGhvYmopKSB7Ci0gICAgICAgIGlkbmEgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGhvYmosICJlbmNvZGUiLCAicyIsICJpZG5hIik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKGVuY29kZSk7CisKKyAgICAgICAgaWRuYSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoaG9iaiwgJlB5SWRfZW5jb2RlLCAicyIsICJpZG5hIik7CiAgICAgICAgIGlmICghaWRuYSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBhc3NlcnQoUHlCeXRlc19DaGVjayhpZG5hKSk7CkBAIC00MDQ2LDcgKzQ4ODEsNyBAQAogICAgIH0gZWxzZSBpZiAocG9iaiA9PSBQeV9Ob25lKSB7CiAgICAgICAgIHBwdHIgPSAoY2hhciAqKU5VTEw7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKHNvY2tldF9lcnJvciwgIkludCBvciBTdHJpbmcgZXhwZWN0ZWQiKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJJbnQgb3IgU3RyaW5nIGV4cGVjdGVkIik7CiAgICAgICAgIGdvdG8gZXJyOwogICAgIH0KICAgICBtZW1zZXQoJmhpbnRzLCAwLCBzaXplb2YoaGludHMpKTsKQEAgLTQxNDksNyArNDk4NCw3IEBACiAgICAgICAgIGdvdG8gZmFpbDsKICAgICB9CiAgICAgaWYgKHJlcy0+YWlfbmV4dCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT1NFcnJvciwKICAgICAgICAgICAgICJzb2NrYWRkciByZXNvbHZlZCB0byBtdWx0aXBsZSBhZGRyZXNzZXMiKTsKICAgICAgICAgZ290byBmYWlsOwogICAgIH0KQEAgLTQxNTcsNyArNDk5Miw3IEBACiAgICAgY2FzZSBBRl9JTkVUOgogICAgICAgICB7CiAgICAgICAgIGlmIChQeVR1cGxlX0dFVF9TSVpFKHNhKSAhPSAyKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoc29ja2V0X2Vycm9yLAorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsCiAgICAgICAgICAgICAgICAgIklQdjQgc29ja2FkZHIgbXVzdCBiZSAyIHR1cGxlIik7CiAgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgIH0KQEAgLTQyNDQsNiArNTA3OSwxNjMgQEAKIEEgdmFsdWUgb2YgTm9uZSBpbmRpY2F0ZXMgdGhhdCBuZXcgc29ja2V0IG9iamVjdHMgaGF2ZSBubyB0aW1lb3V0LlxuXAogV2hlbiB0aGUgc29ja2V0IG1vZHVsZSBpcyBmaXJzdCBpbXBvcnRlZCwgdGhlIGRlZmF1bHQgaXMgTm9uZS4iKTsKIAorI2lmZGVmIEhBVkVfSUZfTkFNRUlOREVYCisvKiBQeXRob24gQVBJIGZvciBnZXR0aW5nIGludGVyZmFjZSBpbmRpY2VzIGFuZCBuYW1lcyAqLworCitzdGF0aWMgUHlPYmplY3QgKgorc29ja2V0X2lmX25hbWVpbmRleChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZykKK3sKKyAgICBQeU9iamVjdCAqbGlzdDsKKyAgICBpbnQgaTsKKyAgICBzdHJ1Y3QgaWZfbmFtZWluZGV4ICpuaTsKKworICAgIG5pID0gaWZfbmFtZWluZGV4KCk7CisgICAgaWYgKG5pID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBsaXN0ID0gUHlMaXN0X05ldygwKTsKKyAgICBpZiAobGlzdCA9PSBOVUxMKSB7CisgICAgICAgIGlmX2ZyZWVuYW1laW5kZXgobmkpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBmb3IgKGkgPSAwOyBuaVtpXS5pZl9pbmRleCAhPSAwICYmIGkgPCBJTlRfTUFYOyBpKyspIHsKKyAgICAgICAgUHlPYmplY3QgKm5pX3R1cGxlID0gUHlfQnVpbGRWYWx1ZSgiSU8mIiwKKyAgICAgICAgICAgICAgICBuaVtpXS5pZl9pbmRleCwgUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdCwgbmlbaV0uaWZfbmFtZSk7CisKKyAgICAgICAgaWYgKG5pX3R1cGxlID09IE5VTEwgfHwgUHlMaXN0X0FwcGVuZChsaXN0LCBuaV90dXBsZSkgPT0gLTEpIHsKKyAgICAgICAgICAgIFB5X1hERUNSRUYobmlfdHVwbGUpOworICAgICAgICAgICAgUHlfREVDUkVGKGxpc3QpOworICAgICAgICAgICAgaWZfZnJlZW5hbWVpbmRleChuaSk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYobmlfdHVwbGUpOworICAgIH0KKworICAgIGlmX2ZyZWVuYW1laW5kZXgobmkpOworICAgIHJldHVybiBsaXN0OworfQorCitQeURvY19TVFJWQVIoaWZfbmFtZWluZGV4X2RvYywKKyJpZl9uYW1laW5kZXgoKVxuXAorXG5cCitSZXR1cm5zIGEgbGlzdCBvZiBuZXR3b3JrIGludGVyZmFjZSBpbmZvcm1hdGlvbiAoaW5kZXgsIG5hbWUpIHR1cGxlcy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3NvY2tldF9pZl9uYW1ldG9pbmRleChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKm9uYW1lOworICAgIHVuc2lnbmVkIGxvbmcgaW5kZXg7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk8mOmlmX25hbWV0b2luZGV4IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmb25hbWUpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGluZGV4ID0gaWZfbmFtZXRvaW5kZXgoUHlCeXRlc19BU19TVFJJTkcob25hbWUpKTsKKyAgICBQeV9ERUNSRUYob25hbWUpOworICAgIGlmIChpbmRleCA9PSAwKSB7CisgICAgICAgIC8qIGlmX25hbWV0b2luZGV4KCkgZG9lc24ndCBzZXQgZXJybm8gKi8KKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX09TRXJyb3IsICJubyBpbnRlcmZhY2Ugd2l0aCB0aGlzIG5hbWUiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tVW5zaWduZWRMb25nKGluZGV4KTsKK30KKworUHlEb2NfU1RSVkFSKGlmX25hbWV0b2luZGV4X2RvYywKKyJpZl9uYW1ldG9pbmRleChpZl9uYW1lKVxuXAorXG5cCitSZXR1cm5zIHRoZSBpbnRlcmZhY2UgaW5kZXggY29ycmVzcG9uZGluZyB0byB0aGUgaW50ZXJmYWNlIG5hbWUgaWZfbmFtZS4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3NvY2tldF9pZl9pbmRleHRvbmFtZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZykKK3sKKyAgICB1bnNpZ25lZCBsb25nIGluZGV4OworICAgIGNoYXIgbmFtZVtJRl9OQU1FU0laRSArIDFdOworCisgICAgaW5kZXggPSBQeUxvbmdfQXNVbnNpZ25lZExvbmcoYXJnKTsKKyAgICBpZiAoaW5kZXggPT0gKHVuc2lnbmVkIGxvbmcpIC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChpZl9pbmRleHRvbmFtZShpbmRleCwgbmFtZSkgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KG5hbWUpOworfQorCitQeURvY19TVFJWQVIoaWZfaW5kZXh0b25hbWVfZG9jLAorImlmX2luZGV4dG9uYW1lKGlmX2luZGV4KVxuXAorXG5cCitSZXR1cm5zIHRoZSBpbnRlcmZhY2UgbmFtZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBpbnRlcmZhY2UgaW5kZXggaWZfaW5kZXguIik7CisKKyNlbmRpZiAgLyogSEFWRV9JRl9OQU1FSU5ERVggKi8KKworCisjaWZkZWYgQ01TR19MRU4KKy8qIFB5dGhvbiBpbnRlcmZhY2UgdG8gQ01TR19MRU4obGVuZ3RoKS4gKi8KKworc3RhdGljIFB5T2JqZWN0ICoKK3NvY2tldF9DTVNHX0xFTihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlfc3NpemVfdCBsZW5ndGg7CisgICAgc2l6ZV90IHJlc3VsdDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAibjpDTVNHX0xFTiIsICZsZW5ndGgpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAobGVuZ3RoIDwgMCB8fCAhZ2V0X0NNU0dfTEVOKGxlbmd0aCwgJnJlc3VsdCkpIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX092ZXJmbG93RXJyb3IsICJDTVNHX0xFTigpIGFyZ3VtZW50IG91dCBvZiByYW5nZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU2l6ZV90KHJlc3VsdCk7Cit9CisKK1B5RG9jX1NUUlZBUihDTVNHX0xFTl9kb2MsCisiQ01TR19MRU4obGVuZ3RoKSAtPiBjb250cm9sIG1lc3NhZ2UgbGVuZ3RoXG5cCitcblwKK1JldHVybiB0aGUgdG90YWwgbGVuZ3RoLCB3aXRob3V0IHRyYWlsaW5nIHBhZGRpbmcsIG9mIGFuIGFuY2lsbGFyeVxuXAorZGF0YSBpdGVtIHdpdGggYXNzb2NpYXRlZCBkYXRhIG9mIHRoZSBnaXZlbiBsZW5ndGguICBUaGlzIHZhbHVlIGNhblxuXAorb2Z0ZW4gYmUgdXNlZCBhcyB0aGUgYnVmZmVyIHNpemUgZm9yIHJlY3Ztc2coKSB0byByZWNlaXZlIGEgc2luZ2xlXG5cCitpdGVtIG9mIGFuY2lsbGFyeSBkYXRhLCBidXQgUkZDIDM1NDIgcmVxdWlyZXMgcG9ydGFibGUgYXBwbGljYXRpb25zIHRvXG5cCit1c2UgQ01TR19TUEFDRSgpIGFuZCB0aHVzIGluY2x1ZGUgc3BhY2UgZm9yIHBhZGRpbmcsIGV2ZW4gd2hlbiB0aGVcblwKK2l0ZW0gd2lsbCBiZSB0aGUgbGFzdCBpbiB0aGUgYnVmZmVyLiAgUmFpc2VzIE92ZXJmbG93RXJyb3IgaWYgbGVuZ3RoXG5cCitpcyBvdXRzaWRlIHRoZSBwZXJtaXNzaWJsZSByYW5nZSBvZiB2YWx1ZXMuIik7CisKKworI2lmZGVmIENNU0dfU1BBQ0UKKy8qIFB5dGhvbiBpbnRlcmZhY2UgdG8gQ01TR19TUEFDRShsZW5ndGgpLiAqLworCitzdGF0aWMgUHlPYmplY3QgKgorc29ja2V0X0NNU0dfU1BBQ0UoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIFB5X3NzaXplX3QgbGVuZ3RoOworICAgIHNpemVfdCByZXN1bHQ7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIm46Q01TR19TUEFDRSIsICZsZW5ndGgpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAobGVuZ3RoIDwgMCB8fCAhZ2V0X0NNU0dfU1BBQ0UobGVuZ3RoLCAmcmVzdWx0KSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJDTVNHX1NQQUNFKCkgYXJndW1lbnQgb3V0IG9mIHJhbmdlIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICByZXR1cm4gUHlMb25nX0Zyb21TaXplX3QocmVzdWx0KTsKK30KKworUHlEb2NfU1RSVkFSKENNU0dfU1BBQ0VfZG9jLAorIkNNU0dfU1BBQ0UobGVuZ3RoKSAtPiBidWZmZXIgc2l6ZVxuXAorXG5cCitSZXR1cm4gdGhlIGJ1ZmZlciBzaXplIG5lZWRlZCBmb3IgcmVjdm1zZygpIHRvIHJlY2VpdmUgYW4gYW5jaWxsYXJ5XG5cCitkYXRhIGl0ZW0gd2l0aCBhc3NvY2lhdGVkIGRhdGEgb2YgdGhlIGdpdmVuIGxlbmd0aCwgYWxvbmcgd2l0aCBhbnlcblwKK3RyYWlsaW5nIHBhZGRpbmcuICBUaGUgYnVmZmVyIHNwYWNlIG5lZWRlZCB0byByZWNlaXZlIG11bHRpcGxlIGl0ZW1zXG5cCitpcyB0aGUgc3VtIG9mIHRoZSBDTVNHX1NQQUNFKCkgdmFsdWVzIGZvciB0aGVpciBhc3NvY2lhdGVkIGRhdGFcblwKK2xlbmd0aHMuICBSYWlzZXMgT3ZlcmZsb3dFcnJvciBpZiBsZW5ndGggaXMgb3V0c2lkZSB0aGUgcGVybWlzc2libGVcblwKK3JhbmdlIG9mIHZhbHVlcy4iKTsKKyNlbmRpZiAgICAvKiBDTVNHX1NQQUNFICovCisjZW5kaWYgICAgLyogQ01TR19MRU4gKi8KKwogCiAvKiBMaXN0IG9mIGZ1bmN0aW9ucyBleHBvcnRlZCBieSB0aGlzIG1vZHVsZS4gKi8KIApAQCAtNDI1Niw2ICs1MjQ4LDEwIEBACiAgICAgIE1FVEhfVkFSQVJHUywgZ2V0aG9zdGJ5YWRkcl9kb2N9LAogICAgIHsiZ2V0aG9zdG5hbWUiLCAgICAgICAgICAgICBzb2NrZXRfZ2V0aG9zdG5hbWUsCiAgICAgIE1FVEhfTk9BUkdTLCAgZ2V0aG9zdG5hbWVfZG9jfSwKKyNpZmRlZiBIQVZFX1NFVEhPU1ROQU1FCisgICAgeyJzZXRob3N0bmFtZSIsICAgICAgICAgICAgIHNvY2tldF9zZXRob3N0bmFtZSwKKyAgICAgTUVUSF9WQVJBUkdTLCAgc2V0aG9zdG5hbWVfZG9jfSwKKyNlbmRpZgogICAgIHsiZ2V0c2VydmJ5bmFtZSIsICAgICAgICAgICBzb2NrZXRfZ2V0c2VydmJ5bmFtZSwKICAgICAgTUVUSF9WQVJBUkdTLCBnZXRzZXJ2YnluYW1lX2RvY30sCiAgICAgeyJnZXRzZXJ2Ynlwb3J0IiwgICAgICAgICAgIHNvY2tldF9nZXRzZXJ2Ynlwb3J0LApAQCAtNDI5Niw2ICs1MjkyLDIyIEBACiAgICAgIE1FVEhfTk9BUkdTLCBnZXRkZWZhdWx0dGltZW91dF9kb2N9LAogICAgIHsic2V0ZGVmYXVsdHRpbWVvdXQiLCAgICAgICBzb2NrZXRfc2V0ZGVmYXVsdHRpbWVvdXQsCiAgICAgIE1FVEhfTywgc2V0ZGVmYXVsdHRpbWVvdXRfZG9jfSwKKyNpZmRlZiBIQVZFX0lGX05BTUVJTkRFWAorICAgIHsiaWZfbmFtZWluZGV4Iiwgc29ja2V0X2lmX25hbWVpbmRleCwKKyAgICAgTUVUSF9OT0FSR1MsIGlmX25hbWVpbmRleF9kb2N9LAorICAgIHsiaWZfbmFtZXRvaW5kZXgiLCBzb2NrZXRfaWZfbmFtZXRvaW5kZXgsCisgICAgIE1FVEhfVkFSQVJHUywgaWZfbmFtZXRvaW5kZXhfZG9jfSwKKyAgICB7ImlmX2luZGV4dG9uYW1lIiwgc29ja2V0X2lmX2luZGV4dG9uYW1lLAorICAgICBNRVRIX08sIGlmX2luZGV4dG9uYW1lX2RvY30sCisjZW5kaWYKKyNpZmRlZiBDTVNHX0xFTgorICAgIHsiQ01TR19MRU4iLCAgICAgICAgICAgICAgICBzb2NrZXRfQ01TR19MRU4sCisgICAgIE1FVEhfVkFSQVJHUywgQ01TR19MRU5fZG9jfSwKKyNpZmRlZiBDTVNHX1NQQUNFCisgICAgeyJDTVNHX1NQQUNFIiwgICAgICAgICAgICAgIHNvY2tldF9DTVNHX1NQQUNFLAorICAgICBNRVRIX1ZBUkFSR1MsIENNU0dfU1BBQ0VfZG9jfSwKKyNlbmRpZgorI2VuZGlmCiAgICAge05VTEwsICAgICAgICAgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAgLyogU2VudGluZWwgKi8KIH07CiAKQEAgLTQ0MjgsMjcgKzU0NDAsMjQgQEAKICAgICBpZiAobSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHNvY2tldF9lcnJvciA9IFB5RXJyX05ld0V4Y2VwdGlvbigic29ja2V0LmVycm9yIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFeGNfSU9FcnJvciwgTlVMTCk7Ci0gICAgaWYgKHNvY2tldF9lcnJvciA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBQeVNvY2tldE1vZHVsZUFQSS5lcnJvciA9IHNvY2tldF9lcnJvcjsKLSAgICBQeV9JTkNSRUYoc29ja2V0X2Vycm9yKTsKLSAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgImVycm9yIiwgc29ja2V0X2Vycm9yKTsKKyAgICBQeV9JTkNSRUYoUHlFeGNfT1NFcnJvcik7CisgICAgUHlTb2NrZXRNb2R1bGVBUEkuZXJyb3IgPSBQeUV4Y19PU0Vycm9yOworICAgIFB5X0lOQ1JFRihQeUV4Y19PU0Vycm9yKTsKKyAgICBQeU1vZHVsZV9BZGRPYmplY3QobSwgImVycm9yIiwgUHlFeGNfT1NFcnJvcik7CiAgICAgc29ja2V0X2hlcnJvciA9IFB5RXJyX05ld0V4Y2VwdGlvbigic29ja2V0LmhlcnJvciIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb2NrZXRfZXJyb3IsIE5VTEwpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFeGNfT1NFcnJvciwgTlVMTCk7CiAgICAgaWYgKHNvY2tldF9oZXJyb3IgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgUHlfSU5DUkVGKHNvY2tldF9oZXJyb3IpOwogICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiaGVycm9yIiwgc29ja2V0X2hlcnJvcik7Ci0gICAgc29ja2V0X2dhaWVycm9yID0gUHlFcnJfTmV3RXhjZXB0aW9uKCJzb2NrZXQuZ2FpZXJyb3IiLCBzb2NrZXRfZXJyb3IsCisgICAgc29ja2V0X2dhaWVycm9yID0gUHlFcnJfTmV3RXhjZXB0aW9uKCJzb2NrZXQuZ2FpZXJyb3IiLCBQeUV4Y19PU0Vycm9yLAogICAgICAgICBOVUxMKTsKICAgICBpZiAoc29ja2V0X2dhaWVycm9yID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0lOQ1JFRihzb2NrZXRfZ2FpZXJyb3IpOwogICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiZ2FpZXJyb3IiLCBzb2NrZXRfZ2FpZXJyb3IpOwogICAgIHNvY2tldF90aW1lb3V0ID0gUHlFcnJfTmV3RXhjZXB0aW9uKCJzb2NrZXQudGltZW91dCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc29ja2V0X2Vycm9yLCBOVUxMKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUV4Y19PU0Vycm9yLCBOVUxMKTsKICAgICBpZiAoc29ja2V0X3RpbWVvdXQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgUHlTb2NrZXRNb2R1bGVBUEkudGltZW91dF9lcnJvciA9IHNvY2tldF90aW1lb3V0OwpAQCAtNDYzNCw2ICs1NjQzLDIzIEBACiAgICAgUHlNb2R1bGVfQWRkU3RyaW5nQ29uc3RhbnQobSwgIkJEQUREUl9MT0NBTCIsICIwMDowMDowMDpGRjpGRjpGRiIpOwogI2VuZGlmCiAKKyNpZmRlZiBBRl9DQU4KKyAgICAvKiBDb250cm9sbGVyIEFyZWEgTmV0d29yayAqLworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJBRl9DQU4iLCBBRl9DQU4pOworI2VuZGlmCisjaWZkZWYgUEZfQ0FOCisgICAgLyogQ29udHJvbGxlciBBcmVhIE5ldHdvcmsgKi8KKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUEZfQ0FOIiwgUEZfQ0FOKTsKKyNlbmRpZgorCisvKiBSZWxpYWJsZSBEYXRhZ3JhbSBTb2NrZXRzICovCisjaWZkZWYgQUZfUkRTCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkFGX1JEUyIsIEFGX1JEUyk7CisjZW5kaWYKKyNpZmRlZiBQRl9SRFMKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUEZfUkRTIiwgUEZfUkRTKTsKKyNlbmRpZgorCiAjaWZkZWYgQUZfUEFDS0VUCiAgICAgUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgQUZfUEFDS0VUKTsKICNlbmRpZgpAQCAtNDc4Myw2ICs1ODA5LDE4IEBACiAjaWZkZWYgIFNPX1NFVEZJQgogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJTT19TRVRGSUIiLCBTT19TRVRGSUIpOwogI2VuZGlmCisjaWZkZWYgIFNPX1BBU1NDUkVECisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlNPX1BBU1NDUkVEIiwgU09fUEFTU0NSRUQpOworI2VuZGlmCisjaWZkZWYgIFNPX1BFRVJDUkVECisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlNPX1BFRVJDUkVEIiwgU09fUEVFUkNSRUQpOworI2VuZGlmCisjaWZkZWYgIExPQ0FMX1BFRVJDUkVECisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkxPQ0FMX1BFRVJDUkVEIiwgTE9DQUxfUEVFUkNSRUQpOworI2VuZGlmCisjaWZkZWYgIFNPX0JJTkRUT0RFVklDRQorICAgIFB5TW9kdWxlX0FkZEludE1hY3JvKG0sIFNPX0JJTkRUT0RFVklDRSk7CisjZW5kaWYKIAogICAgIC8qIE1heGltdW0gbnVtYmVyIG9mIGNvbm5lY3Rpb25zIGZvciAibGlzdGVuIiAqLwogI2lmZGVmICBTT01BWENPTk4KQEAgLTQ3OTEsNiArNTgyOSwxNyBAQAogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJTT01BWENPTk4iLCA1KTsgLyogQ29tbW9uIHZhbHVlICovCiAjZW5kaWYKIAorICAgIC8qIEFuY2lsbGlhcnkgbWVzc2FnZSB0eXBlcyAqLworI2lmZGVmICBTQ01fUklHSFRTCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlNDTV9SSUdIVFMiLCBTQ01fUklHSFRTKTsKKyNlbmRpZgorI2lmZGVmICBTQ01fQ1JFREVOVElBTFMKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiU0NNX0NSRURFTlRJQUxTIiwgU0NNX0NSRURFTlRJQUxTKTsKKyNlbmRpZgorI2lmZGVmICBTQ01fQ1JFRFMKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiU0NNX0NSRURTIiwgU0NNX0NSRURTKTsKKyNlbmRpZgorCiAgICAgLyogRmxhZ3MgZm9yIHNlbmQsIHJlY3YgKi8KICNpZmRlZiAgTVNHX09PQgogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJNU0dfT09CIiwgTVNHX09PQik7CkBAIC00ODIyLDYgKzU4NzEsMzMgQEAKICNpZmRlZiAgTVNHX0VUQUcKICAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiTVNHX0VUQUciLCBNU0dfRVRBRyk7CiAjZW5kaWYKKyNpZmRlZiAgTVNHX05PU0lHTkFMCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk1TR19OT1NJR05BTCIsIE1TR19OT1NJR05BTCk7CisjZW5kaWYKKyNpZmRlZiAgTVNHX05PVElGSUNBVElPTgorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJNU0dfTk9USUZJQ0FUSU9OIiwgTVNHX05PVElGSUNBVElPTik7CisjZW5kaWYKKyNpZmRlZiAgTVNHX0NNU0dfQ0xPRVhFQworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJNU0dfQ01TR19DTE9FWEVDIiwgTVNHX0NNU0dfQ0xPRVhFQyk7CisjZW5kaWYKKyNpZmRlZiAgTVNHX0VSUlFVRVVFCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk1TR19FUlJRVUVVRSIsIE1TR19FUlJRVUVVRSk7CisjZW5kaWYKKyNpZmRlZiAgTVNHX0NPTkZJUk0KKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiTVNHX0NPTkZJUk0iLCBNU0dfQ09ORklSTSk7CisjZW5kaWYKKyNpZmRlZiAgTVNHX01PUkUKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiTVNHX01PUkUiLCBNU0dfTU9SRSk7CisjZW5kaWYKKyNpZmRlZiAgTVNHX0VPRgorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJNU0dfRU9GIiwgTVNHX0VPRik7CisjZW5kaWYKKyNpZmRlZiAgTVNHX0JDQVNUCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk1TR19CQ0FTVCIsIE1TR19CQ0FTVCk7CisjZW5kaWYKKyNpZmRlZiAgTVNHX01DQVNUCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIk1TR19NQ0FTVCIsIE1TR19NQ0FTVCk7CisjZW5kaWYKIAogICAgIC8qIFByb3RvY29sIGxldmVsIGFuZCBudW1iZXJzLCB1c2FibGUgZm9yIFtnc11ldHNvY2tvcHQgKi8KICNpZmRlZiAgU09MX1NPQ0tFVApAQCAtNDg1Nyw2ICs1OTMzLDQ5IEBACiAjZWxzZQogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJTT0xfVURQIiwgMTcpOwogI2VuZGlmCisjaWZkZWYgU09MX0NBTl9CQVNFCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlNPTF9DQU5fQkFTRSIsIFNPTF9DQU5fQkFTRSk7CisjZW5kaWYKKyNpZmRlZiBTT0xfQ0FOX1JBVworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJTT0xfQ0FOX1JBVyIsIFNPTF9DQU5fUkFXKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiQ0FOX1JBVyIsIENBTl9SQVcpOworI2VuZGlmCisjaWZkZWYgSEFWRV9MSU5VWF9DQU5fSAorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJDQU5fRUZGX0ZMQUciLCBDQU5fRUZGX0ZMQUcpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJDQU5fUlRSX0ZMQUciLCBDQU5fUlRSX0ZMQUcpOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJDQU5fRVJSX0ZMQUciLCBDQU5fRVJSX0ZMQUcpOworCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkNBTl9TRkZfTUFTSyIsIENBTl9TRkZfTUFTSyk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkNBTl9FRkZfTUFTSyIsIENBTl9FRkZfTUFTSyk7CisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIkNBTl9FUlJfTUFTSyIsIENBTl9FUlJfTUFTSyk7CisjZW5kaWYKKyNpZmRlZiBIQVZFX0xJTlVYX0NBTl9SQVdfSAorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJDQU5fUkFXX0ZJTFRFUiIsIENBTl9SQVdfRklMVEVSKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiQ0FOX1JBV19FUlJfRklMVEVSIiwgQ0FOX1JBV19FUlJfRklMVEVSKTsKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiQ0FOX1JBV19MT09QQkFDSyIsIENBTl9SQVdfTE9PUEJBQ0spOworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJDQU5fUkFXX1JFQ1ZfT1dOX01TR1MiLCBDQU5fUkFXX1JFQ1ZfT1dOX01TR1MpOworI2VuZGlmCisjaWZkZWYgU09MX1JEUworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJTT0xfUkRTIiwgU09MX1JEUyk7CisjZW5kaWYKKyNpZmRlZiBSRFNfQ0FOQ0VMX1NFTlRfVE8KKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX0NBTkNFTF9TRU5UX1RPIiwgUkRTX0NBTkNFTF9TRU5UX1RPKTsKKyNlbmRpZgorI2lmZGVmIFJEU19HRVRfTVIKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX0dFVF9NUiIsIFJEU19HRVRfTVIpOworI2VuZGlmCisjaWZkZWYgUkRTX0ZSRUVfTVIKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX0ZSRUVfTVIiLCBSRFNfRlJFRV9NUik7CisjZW5kaWYKKyNpZmRlZiBSRFNfUkVDVkVSUgorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfUkVDVkVSUiIsIFJEU19SRUNWRVJSKTsKKyNlbmRpZgorI2lmZGVmIFJEU19DT05HX01PTklUT1IKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX0NPTkdfTU9OSVRPUiIsIFJEU19DT05HX01PTklUT1IpOworI2VuZGlmCisjaWZkZWYgUkRTX0dFVF9NUl9GT1JfREVTVAorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfR0VUX01SX0ZPUl9ERVNUIiwgUkRTX0dFVF9NUl9GT1JfREVTVCk7CisjZW5kaWYKICNpZmRlZiAgSVBQUk9UT19JUAogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJJUFBST1RPX0lQIiwgSVBQUk9UT19JUCk7CiAjZWxzZQpAQCAtNDk2MSw2ICs2MDgwLDkgQEAKICNpZmRlZiAgSVBQUk9UT19WUlJQCiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIklQUFJPVE9fVlJSUCIsIElQUFJPVE9fVlJSUCk7CiAjZW5kaWYKKyNpZmRlZiAgSVBQUk9UT19TQ1RQCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIklQUFJPVE9fU0NUUCIsIElQUFJPVE9fU0NUUCk7CisjZW5kaWYKICNpZmRlZiAgSVBQUk9UT19CSVAKICAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiSVBQUk9UT19CSVAiLCBJUFBST1RPX0JJUCk7CiAjZW5kaWYKQEAgLTUwNzYsNiArNjE5OCw5IEBACiAjaWZkZWYgIElQX01BWF9NRU1CRVJTSElQUwogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJJUF9NQVhfTUVNQkVSU0hJUFMiLCBJUF9NQVhfTUVNQkVSU0hJUFMpOwogI2VuZGlmCisjaWZkZWYgIElQX1RSQU5TUEFSRU5UCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIklQX1RSQU5TUEFSRU5UIiwgSVBfVFJBTlNQQVJFTlQpOworI2VuZGlmCiAKICAgICAvKiBJUHY2IFtnc11ldHNvY2tvcHQgb3B0aW9ucywgZGVmaW5lZCBpbiBSRkMyNTUzICovCiAjaWZkZWYgIElQVjZfSk9JTl9HUk9VUApAQCAtNTIwNiw2ICs2MzMxLDQ0IEBACiAgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIklQWF9UWVBFIiwgSVBYX1RZUEUpOwogI2VuZGlmCiAKKy8qIFJlbGlhYmxlIERhdGFncmFtIFNvY2tldHMgKi8KKyNpZmRlZiBSRFNfQ01TR19SRE1BX0FSR1MKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX0NNU0dfUkRNQV9BUkdTIiwgUkRTX0NNU0dfUkRNQV9BUkdTKTsKKyNlbmRpZgorI2lmZGVmIFJEU19DTVNHX1JETUFfREVTVAorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfQ01TR19SRE1BX0RFU1QiLCBSRFNfQ01TR19SRE1BX0RFU1QpOworI2VuZGlmCisjaWZkZWYgUkRTX0NNU0dfUkRNQV9NQVAKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX0NNU0dfUkRNQV9NQVAiLCBSRFNfQ01TR19SRE1BX01BUCk7CisjZW5kaWYKKyNpZmRlZiBSRFNfQ01TR19SRE1BX1NUQVRVUworICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfQ01TR19SRE1BX1NUQVRVUyIsIFJEU19DTVNHX1JETUFfU1RBVFVTKTsKKyNlbmRpZgorI2lmZGVmIFJEU19DTVNHX1JETUFfVVBEQVRFCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlJEU19DTVNHX1JETUFfVVBEQVRFIiwgUkRTX0NNU0dfUkRNQV9VUERBVEUpOworI2VuZGlmCisjaWZkZWYgUkRTX1JETUFfUkVBRFdSSVRFCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlJEU19SRE1BX1JFQURXUklURSIsIFJEU19SRE1BX1JFQURXUklURSk7CisjZW5kaWYKKyNpZmRlZiBSRFNfUkRNQV9GRU5DRQorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfUkRNQV9GRU5DRSIsIFJEU19SRE1BX0ZFTkNFKTsKKyNlbmRpZgorI2lmZGVmIFJEU19SRE1BX0lOVkFMSURBVEUKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX1JETUFfSU5WQUxJREFURSIsIFJEU19SRE1BX0lOVkFMSURBVEUpOworI2VuZGlmCisjaWZkZWYgUkRTX1JETUFfVVNFX09OQ0UKKyAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUkRTX1JETUFfVVNFX09OQ0UiLCBSRFNfUkRNQV9VU0VfT05DRSk7CisjZW5kaWYKKyNpZmRlZiBSRFNfUkRNQV9ET05UV0FJVAorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfUkRNQV9ET05UV0FJVCIsIFJEU19SRE1BX0RPTlRXQUlUKTsKKyNlbmRpZgorI2lmZGVmIFJEU19SRE1BX05PVElGWV9NRQorICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJSRFNfUkRNQV9OT1RJRllfTUUiLCBSRFNfUkRNQV9OT1RJRllfTUUpOworI2VuZGlmCisjaWZkZWYgUkRTX1JETUFfU0lMRU5UCisgICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgIlJEU19SRE1BX1NJTEVOVCIsIFJEU19SRE1BX1NJTEVOVCk7CisjZW5kaWYKKwogICAgIC8qIGdldHthZGRyLG5hbWV9aW5mbyBwYXJhbWV0ZXJzICovCiAjaWZkZWYgRUFJX0FERFJGQU1JTFkKICAgICBQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiRUFJX0FERFJGQU1JTFkiLCBFQUlfQUREUkZBTUlMWSk7CkBAIC01MzMyLDcgKzY0OTUsNyBAQAogICAgICAgICBEV09SRCBjb2Rlc1tdID0ge1NJT19SQ1ZBTEwsIFNJT19LRUVQQUxJVkVfVkFMU307CiAgICAgICAgIGNvbnN0IGNoYXIgKm5hbWVzW10gPSB7IlNJT19SQ1ZBTEwiLCAiU0lPX0tFRVBBTElWRV9WQUxTIn07CiAgICAgICAgIGludCBpOwotICAgICAgICBmb3IoaSA9IDA7IGk8c2l6ZW9mKGNvZGVzKS9zaXplb2YoKmNvZGVzKTsgKytpKSB7CisgICAgICAgIGZvcihpID0gMDsgaTxQeV9BUlJBWV9MRU5HVEgoY29kZXMpOyArK2kpIHsKICAgICAgICAgICAgIFB5T2JqZWN0ICp0bXA7CiAgICAgICAgICAgICB0bXAgPSBQeUxvbmdfRnJvbVVuc2lnbmVkTG9uZyhjb2Rlc1tpXSk7CiAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpCmRpZmYgLS1naXQgYS9Nb2R1bGVzL3NvY2tldG1vZHVsZS5oIGIvTW9kdWxlcy9zb2NrZXRtb2R1bGUuaAppbmRleCBmMDY0Nzk1Li41OWQ0Y2IxIDEwMDY0NAotLS0gYS9Nb2R1bGVzL3NvY2tldG1vZHVsZS5oCisrKyBiL01vZHVsZXMvc29ja2V0bW9kdWxlLmgKQEAgLTU5LDkgKzU5LDEyIEBACiAjaW5jbHVkZSA8Ymx1ZXRvb3RoLmg+CiAjZW5kaWYKIAorI2lmZGVmIEhBVkVfTkVUX0lGX0gKKyMgaW5jbHVkZSA8bmV0L2lmLmg+CisjZW5kaWYKKwogI2lmZGVmIEhBVkVfTkVUUEFDS0VUX1BBQ0tFVF9ICiAjIGluY2x1ZGUgPHN5cy9pb2N0bC5oPgotIyBpbmNsdWRlIDxuZXQvaWYuaD4KICMgaW5jbHVkZSA8bmV0cGFja2V0L3BhY2tldC5oPgogI2VuZGlmCiAKQEAgLTY5LDYgKzcyLDE0IEBACiAjIGluY2x1ZGUgPGxpbnV4L3RpcGMuaD4KICNlbmRpZgogCisjaWZkZWYgSEFWRV9MSU5VWF9DQU5fSAorI2luY2x1ZGUgPGxpbnV4L2Nhbi5oPgorI2VuZGlmCisKKyNpZmRlZiBIQVZFX0xJTlVYX0NBTl9SQVdfSAorI2luY2x1ZGUgPGxpbnV4L2Nhbi9yYXcuaD4KKyNlbmRpZgorCiAjaWZuZGVmIFB5X19TT0NLRVRfSAogI2RlZmluZSBQeV9fU09DS0VUX0gKICNpZmRlZiBfX2NwbHVzcGx1cwpAQCAtMTA0LDYgKzExNSw3IEBACiAvKiBTb2NrZXQgYWRkcmVzcyAqLwogdHlwZWRlZiB1bmlvbiBzb2NrX2FkZHIgewogICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBpbjsKKyAgICBzdHJ1Y3Qgc29ja2FkZHIgc2E7CiAjaWZkZWYgQUZfVU5JWAogICAgIHN0cnVjdCBzb2NrYWRkcl91biB1bjsKICNlbmRpZgpAQCAtMTIzLDYgKzEzNSw5IEBACiAjaWZkZWYgSEFWRV9ORVRQQUNLRVRfUEFDS0VUX0gKICAgICBzdHJ1Y3Qgc29ja2FkZHJfbGwgbGw7CiAjZW5kaWYKKyNpZmRlZiBIQVZFX0xJTlVYX0NBTl9ICisgICAgc3RydWN0IHNvY2thZGRyX2NhbiBjYW47CisjZW5kaWYKIH0gc29ja19hZGRyX3Q7CiAKIC8qIFRoZSBvYmplY3QgaG9sZGluZyBhIHNvY2tldC4gIEl0IGhvbGRzIHNvbWUgZXh0cmEgaW5mb3JtYXRpb24sCmRpZmYgLS1naXQgYS9Nb2R1bGVzL3NyZS5oIGIvTW9kdWxlcy9zcmUuaAppbmRleCA1MThjMTFkLi4wZDkxZjI1IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3NyZS5oCisrKyBiL01vZHVsZXMvc3JlLmgKQEAgLTMwLDcgKzMwLDggQEAKICAgICBQeU9iamVjdCogcGF0dGVybjsgLyogcGF0dGVybiBzb3VyY2UgKG9yIE5vbmUpICovCiAgICAgaW50IGZsYWdzOyAvKiBmbGFncyB1c2VkIHdoZW4gY29tcGlsaW5nIHBhdHRlcm4gc291cmNlICovCiAgICAgUHlPYmplY3QgKndlYWtyZWZsaXN0OyAvKiBMaXN0IG9mIHdlYWsgcmVmZXJlbmNlcyAqLwotCWludCBjaGFyc2l6ZTsgLyogcGF0dGVybiBjaGFyc2l6ZSAob3IgLTEpICovCisgICAgaW50IGxvZ2ljYWxfY2hhcnNpemU7IC8qIHBhdHRlcm4gY2hhcnNpemUgKG9yIC0xKSAqLworICAgIGludCBjaGFyc2l6ZTsKICAgICAvKiBwYXR0ZXJuIGNvZGUgKi8KICAgICBQeV9zc2l6ZV90IGNvZGVzaXplOwogICAgIFNSRV9DT0RFIGNvZGVbMV07CkBAIC03MSw2ICs3Miw3IEBACiAgICAgUHlPYmplY3QqIHN0cmluZzsKICAgICBQeV9zc2l6ZV90IHBvcywgZW5kcG9zOwogICAgIC8qIGNoYXJhY3RlciBzaXplICovCisgICAgaW50IGxvZ2ljYWxfY2hhcnNpemU7IC8qIGtpbmQgb2YgdGhpbmc6IDEgLSBieXRlcywgMi80IC0gdW5pY29kZSAqLwogICAgIGludCBjaGFyc2l6ZTsKICAgICAvKiByZWdpc3RlcnMgKi8KICAgICBQeV9zc2l6ZV90IGxhc3RpbmRleDsKZGlmZiAtLWdpdCBhL01vZHVsZXMvc3lzbG9nbW9kdWxlLmMgYi9Nb2R1bGVzL3N5c2xvZ21vZHVsZS5jCmluZGV4IDViODY5NjMuLmM3YTI0ODcgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvc3lzbG9nbW9kdWxlLmMKKysrIGIvTW9kdWxlcy9zeXNsb2dtb2R1bGUuYwpAQCAtNzAsNyArNzAsNyBAQAogCiAgICAgUHlfc3NpemVfdCBhcmd2X2xlbiwgc2NyaXB0bGVuOwogICAgIFB5T2JqZWN0ICpzY3JpcHRvYmo7Ci0gICAgUHlfVU5JQ09ERSAqYXRzbGFzaCwgKmF0c3RhcnQ7CisgICAgUHlfc3NpemVfdCBzbGFzaDsKICAgICBQeU9iamVjdCAqYXJndiA9IFB5U3lzX0dldE9iamVjdCgiYXJndiIpOwogCiAgICAgaWYgKGFyZ3YgPT0gTlVMTCkgewpAQCAtOTAsMTYgKzkwLDE2IEBACiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2soc2NyaXB0b2JqKSkgewogICAgICAgICByZXR1cm4oTlVMTCk7CiAgICAgfQotICAgIHNjcmlwdGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShzY3JpcHRvYmopOworICAgIHNjcmlwdGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNjcmlwdG9iaik7CiAgICAgaWYgKHNjcmlwdGxlbiA9PSAwKSB7CiAgICAgICAgIHJldHVybihOVUxMKTsKICAgICB9CiAKLSAgICBhdHN0YXJ0ID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2NyaXB0b2JqKTsKLSAgICBhdHNsYXNoID0gUHlfVU5JQ09ERV9zdHJyY2hyKGF0c3RhcnQsIFNFUCk7Ci0gICAgaWYgKGF0c2xhc2gpIHsKLSAgICAgICAgcmV0dXJuKFB5VW5pY29kZV9Gcm9tVW5pY29kZShhdHNsYXNoICsgMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JpcHRsZW4gLSAoYXRzbGFzaCAtIGF0c3RhcnQpIC0gMSkpOworICAgIHNsYXNoID0gUHlVbmljb2RlX0ZpbmRDaGFyKHNjcmlwdG9iaiwgU0VQLCAwLCBzY3JpcHRsZW4sIC0xKTsKKyAgICBpZiAoc2xhc2ggPT0gLTIpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChzbGFzaCAhPSAtMSkgeworICAgICAgICByZXR1cm4gUHlVbmljb2RlX1N1YnN0cmluZyhzY3JpcHRvYmosIHNsYXNoLCBzY3JpcHRsZW4pOwogICAgIH0gZWxzZSB7CiAgICAgICAgIFB5X0lOQ1JFRihzY3JpcHRvYmopOwogICAgICAgICByZXR1cm4oc2NyaXB0b2JqKTsKZGlmZiAtLWdpdCBhL01vZHVsZXMvdGVybWlvcy5jIGIvTW9kdWxlcy90ZXJtaW9zLmMKaW5kZXggZWRlYjZmNS4uYjc4ZDMzZSAxMDA2NDQKLS0tIGEvTW9kdWxlcy90ZXJtaW9zLmMKKysrIGIvTW9kdWxlcy90ZXJtaW9zLmMKQEAgLTksMTEgKzksNiBAQAogI2VuZGlmCiAKICNpbmNsdWRlIDx0ZXJtaW9zLmg+Ci0jaWZkZWYgX19vc2ZfXwotLyogT24gT1NGLCBzeXMvaW9jdGwuaCByZXF1aXJlcyB0aGF0IHN0cnVjdCB0ZXJtaW8gYWxyZWFkeSBiZSBkZWZpbmVkLAotICogc28gdGhpcyBuZWVkcyB0byBiZSBpbmNsdWRlZCBmaXJzdCBvbiB0aGF0IHBsYXRmb3JtLiAqLwotI2luY2x1ZGUgPHRlcm1pby5oPgotI2VuZGlmCiAjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CiAKIC8qIEhQLVVYIHJlcXVpcmVzIHRoYXQgdGhpcyBiZSBpbmNsdWRlZCB0byBwaWNrIHVwIE1EQ0QsIE1DVFMsIE1EU1IsCmRpZmYgLS1naXQgYS9Nb2R1bGVzL3Rlc3RjYXBpX2xvbmcuaCBiL01vZHVsZXMvdGVzdGNhcGlfbG9uZy5oCmluZGV4IGZhOTRmZDYuLjZiZGRhZDcgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvdGVzdGNhcGlfbG9uZy5oCisrKyBiL01vZHVsZXMvdGVzdGNhcGlfbG9uZy5oCkBAIC0zMyw4ICszMyw3IEBACiAgICAgICAgICAgICB1bnNpZ25lZCBUWVBFTkFNRSB1aW4sIHVvdXQ7CiAKICAgICAgICAgICAgIC8qIEZvciAwLCAxLCAyIHVzZSBiYXNlOyBmb3IgMywgNCwgNSB1c2UgLWJhc2UgKi8KLSAgICAgICAgICAgIHVpbiA9IGogPCAzID8gYmFzZQotICAgICAgICAgICAgICAgICAgICAgICAgOiAodW5zaWduZWQgVFlQRU5BTUUpKC0oVFlQRU5BTUUpYmFzZSk7CisgICAgICAgICAgICB1aW4gPSBqIDwgMyA/IGJhc2UgOiAwVSAtIGJhc2U7CiAKICAgICAgICAgICAgIC8qIEZvciAwICYgMywgc3VidHJhY3QgMS4KICAgICAgICAgICAgICAqIEZvciAxICYgNCwgbGVhdmUgYWxvbmUuCkBAIC0xNzcsNiArMTc2LDMyIEBACiAgICAgICAgIFB5X0RFQ1JFRihvbmUpOwogICAgIH0KIAorICAgIC8qIFRlc3QgRl9QWV9UT197UyxVfSBvbiBub24tcHlsb25nIGlucHV0LiBUaGlzIHNob3VsZCByYWlzZSBhIFR5cGVFcnJvci4gKi8KKyAgICB7CisgICAgICAgIFRZUEVOQU1FIG91dDsKKyAgICAgICAgdW5zaWduZWQgVFlQRU5BTUUgdW91dDsKKworICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CisKKyAgICAgICAgb3V0ID0gRl9QWV9UT19TKFB5X05vbmUpOworICAgICAgICBpZiAob3V0ICE9IChUWVBFTkFNRSktMSB8fCAhUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBlcnJvcigiUHlMb25nX0FzWFhYKE5vbmUpIGRpZG4ndCBjb21wbGFpbiIpOworICAgICAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfVHlwZUVycm9yKSkKKyAgICAgICAgICAgIHJldHVybiBlcnJvcigiUHlMb25nX0FzWFhYKE5vbmUpIHJhaXNlZCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgInNvbWV0aGluZyBvdGhlciB0aGFuIFR5cGVFcnJvciIpOworICAgICAgICBQeUVycl9DbGVhcigpOworCisgICAgICAgIHVvdXQgPSBGX1BZX1RPX1UoUHlfTm9uZSk7CisgICAgICAgIGlmICh1b3V0ICE9ICh1bnNpZ25lZCBUWVBFTkFNRSktMSB8fCAhUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBlcnJvcigiUHlMb25nX0FzWFhYKE5vbmUpIGRpZG4ndCBjb21wbGFpbiIpOworICAgICAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfVHlwZUVycm9yKSkKKyAgICAgICAgICAgIHJldHVybiBlcnJvcigiUHlMb25nX0FzWFhYKE5vbmUpIHJhaXNlZCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgInNvbWV0aGluZyBvdGhlciB0aGFuIFR5cGVFcnJvciIpOworICAgICAgICBQeUVycl9DbGVhcigpOworCisgICAgICAgIFB5X0RFQ1JFRihQeV9Ob25lKTsKKyAgICB9CisKICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgcmV0dXJuIFB5X05vbmU7CiB9CmRpZmYgLS1naXQgYS9Nb2R1bGVzL3RpbWVtb2R1bGUuYyBiL01vZHVsZXMvdGltZW1vZHVsZS5jCmluZGV4IDNhYjZlOWIuLjMwYTAxZjUgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvdGltZW1vZHVsZS5jCisrKyBiL01vZHVsZXMvdGltZW1vZHVsZS5jCkBAIC0yMSwxOSArMjEsNiBAQAogI2luY2x1ZGUgPHdpbmRvd3MuaD4KICNpbmNsdWRlICJweXRocmVhZC5oIgogCi0vKiBoZWxwZXIgdG8gYWxsb3cgdXMgdG8gaW50ZXJydXB0IHNsZWVwKCkgb24gV2luZG93cyovCi1zdGF0aWMgSEFORExFIGhJbnRlcnJ1cHRFdmVudCA9IE5VTEw7Ci1zdGF0aWMgQk9PTCBXSU5BUEkgUHlDdHJsSGFuZGxlcihEV09SRCBkd0N0cmxUeXBlKQotewotICAgIFNldEV2ZW50KGhJbnRlcnJ1cHRFdmVudCk7Ci0gICAgLyogYWxsb3cgb3RoZXIgZGVmYXVsdCBoYW5kbGVycyB0byBiZSBjYWxsZWQuCi0gICAgICAgRGVmYXVsdCBQeXRob24gaGFuZGxlciB3aWxsIHNldHVwIHRoZQotICAgICAgIEtleWJvYXJkSW50ZXJydXB0IGV4Y2VwdGlvbi4KLSAgICAqLwotICAgIHJldHVybiBGQUxTRTsKLX0KLXN0YXRpYyBsb25nIG1haW5fdGhyZWFkOwotCiAjaWYgZGVmaW5lZChfX0JPUkxBTkRDX18pCiAvKiBUaGVzZSBvdmVycmlkZXMgbm90IG5lZWRlZCBmb3IgV2luMzIgKi8KICNkZWZpbmUgdGltZXpvbmUgX3RpbWV6b25lCkBAIC00MywxMSArMzAsNiBAQAogI2VuZGlmIC8qIE1TX1dJTkRPV1MgKi8KICNlbmRpZiAvKiAhX19XQVRDT01DX18gfHwgX19RTlhfXyAqLwogCi0jaWYgZGVmaW5lZChNU19XSU5ET1dTKSAmJiAhZGVmaW5lZChfX0JPUkxBTkRDX18pCi0vKiBXaW4zMiBoYXMgYmV0dGVyIGNsb2NrIHJlcGxhY2VtZW50OyB3ZSBoYXZlIG91ciBvd24gdmVyc2lvbiBiZWxvdy4gKi8KLSN1bmRlZiBIQVZFX0NMT0NLCi0jZW5kaWYgLyogTVNfV0lORE9XUyAmJiAhZGVmaW5lZChfX0JPUkxBTkRDX18pICovCi0KICNpZiBkZWZpbmVkKFBZT1NfT1MyKQogI2RlZmluZSBJTkNMX0RPUwogI2RlZmluZSBJTkNMX0VSUk9SUwpAQCAtNjIsOSArNDQsNiBAQAogc3RhdGljIGludCBmbG9hdHNsZWVwKGRvdWJsZSk7CiBzdGF0aWMgZG91YmxlIGZsb2F0dGltZSh2b2lkKTsKIAotLyogRm9yIFkySyBjaGVjayAqLwotc3RhdGljIFB5T2JqZWN0ICptb2RkaWN0OwotCiBzdGF0aWMgUHlPYmplY3QgKgogdGltZV90aW1lKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQogewpAQCAtODMsNyArNjIsNyBAQAogUmV0dXJuIHRoZSBjdXJyZW50IHRpbWUgaW4gc2Vjb25kcyBzaW5jZSB0aGUgRXBvY2guXG5cCiBGcmFjdGlvbnMgb2YgYSBzZWNvbmQgbWF5IGJlIHByZXNlbnQgaWYgdGhlIHN5c3RlbSBjbG9jayBwcm92aWRlcyB0aGVtLiIpOwogCi0jaWZkZWYgSEFWRV9DTE9DSworI2lmIGRlZmluZWQoSEFWRV9DTE9DSykKIAogI2lmbmRlZiBDTE9DS1NfUEVSX1NFQwogI2lmZGVmIENMS19UQ0sKQEAgLTk0LDE0ICs3MywyMyBAQAogI2VuZGlmCiAKIHN0YXRpYyBQeU9iamVjdCAqCi10aW1lX2Nsb2NrKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQorcHljbG9jayh2b2lkKQogewotICAgIHJldHVybiBQeUZsb2F0X0Zyb21Eb3VibGUoKChkb3VibGUpY2xvY2soKSkgLyBDTE9DS1NfUEVSX1NFQyk7CisgICAgY2xvY2tfdCB2YWx1ZTsKKyAgICB2YWx1ZSA9IGNsb2NrKCk7CisgICAgaWYgKHZhbHVlID09IChjbG9ja190KS0xKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsCisgICAgICAgICAgICAgICAgInRoZSBwcm9jZXNzb3IgdGltZSB1c2VkIGlzIG5vdCBhdmFpbGFibGUgIgorICAgICAgICAgICAgICAgICJvciBpdHMgdmFsdWUgY2Fubm90IGJlIHJlcHJlc2VudGVkIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICByZXR1cm4gUHlGbG9hdF9Gcm9tRG91YmxlKChkb3VibGUpdmFsdWUgLyBDTE9DS1NfUEVSX1NFQyk7CiB9CiAjZW5kaWYgLyogSEFWRV9DTE9DSyAqLwogCiAjaWYgZGVmaW5lZChNU19XSU5ET1dTKSAmJiAhZGVmaW5lZChfX0JPUkxBTkRDX18pCi0vKiBEdWUgdG8gTWFyayBIYW1tb25kIGFuZCBUaW0gUGV0ZXJzICovCisvKiBXaW4zMiBoYXMgYmV0dGVyIGNsb2NrIHJlcGxhY2VtZW50OyB3ZSBoYXZlIG91ciBvd24gdmVyc2lvbiwgZHVlIHRvIE1hcmsKKyAgIEhhbW1vbmQgYW5kIFRpbSBQZXRlcnMgKi8KIHN0YXRpYyBQeU9iamVjdCAqCiB0aW1lX2Nsb2NrKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQogewpAQCAtMTE2LDggKzEwNCw3IEBACiAgICAgICAgIGlmICghUXVlcnlQZXJmb3JtYW5jZUZyZXF1ZW5jeSgmZnJlcSkgfHwgZnJlcS5RdWFkUGFydCA9PSAwKSB7CiAgICAgICAgICAgICAvKiBVbmxpa2VseSB0byBoYXBwZW4gLSB0aGlzIHdvcmtzIG9uIGFsbCBpbnRlbAogICAgICAgICAgICAgICAgbWFjaGluZXMgYXQgbGVhc3QhICBSZXZlcnQgdG8gY2xvY2soKSAqLwotICAgICAgICAgICAgcmV0dXJuIFB5RmxvYXRfRnJvbURvdWJsZSgoKGRvdWJsZSljbG9jaygpKSAvCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENMT0NLU19QRVJfU0VDKTsKKyAgICAgICAgICAgIHJldHVybiBweWNsb2NrKCk7CiAgICAgICAgIH0KICAgICAgICAgZGl2aXNvciA9IChkb3VibGUpZnJlcS5RdWFkUGFydDsKICAgICB9CkBAIC0xMjYsOCArMTEzLDE1IEBACiAgICAgcmV0dXJuIFB5RmxvYXRfRnJvbURvdWJsZShkaWZmIC8gZGl2aXNvcik7CiB9CiAKLSNkZWZpbmUgSEFWRV9DTE9DSyAvKiBTbyBpdCBnZXRzIGluY2x1ZGVkIGluIHRoZSBtZXRob2RzICovCi0jZW5kaWYgLyogTVNfV0lORE9XUyAmJiAhZGVmaW5lZChfX0JPUkxBTkRDX18pICovCisjZWxpZiBkZWZpbmVkKEhBVkVfQ0xPQ0spCisKK3N0YXRpYyBQeU9iamVjdCAqCit0aW1lX2Nsb2NrKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQoreworICAgIHJldHVybiBweWNsb2NrKCk7Cit9CisjZW5kaWYgLyogSEFWRV9DTE9DSyAqLworCiAKICNpZmRlZiBIQVZFX0NMT0NLCiBQeURvY19TVFJWQVIoY2xvY2tfZG9jLApAQCAtMTM4LDEyICsxMzIsNjkgQEAKIHJlY29yZHMuIik7CiAjZW5kaWYKIAorI2lmZGVmIEhBVkVfQ0xPQ0tfR0VUVElNRQorc3RhdGljIFB5T2JqZWN0ICoKK3RpbWVfY2xvY2tfZ2V0dGltZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgaW50IHJldDsKKyAgICBjbG9ja2lkX3QgY2xrX2lkOworICAgIHN0cnVjdCB0aW1lc3BlYyB0cDsKKworICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiaTpjbG9ja19nZXR0aW1lIiwgJmNsa19pZCkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcmV0ID0gY2xvY2tfZ2V0dGltZSgoY2xvY2tpZF90KWNsa19pZCwgJnRwKTsKKyAgICBpZiAocmV0ICE9IDApIHsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICByZXR1cm4gUHlGbG9hdF9Gcm9tRG91YmxlKHRwLnR2X3NlYyArIHRwLnR2X25zZWMgKiAxZS05KTsKK30KKworUHlEb2NfU1RSVkFSKGNsb2NrX2dldHRpbWVfZG9jLAorImNsb2NrX2dldHRpbWUoY2xrX2lkKSAtPiBmbG9hdGluZyBwb2ludCBudW1iZXJcblwKK1xuXAorUmV0dXJuIHRoZSB0aW1lIG9mIHRoZSBzcGVjaWZpZWQgY2xvY2sgY2xrX2lkLiIpOworI2VuZGlmCisKKyNpZmRlZiBIQVZFX0NMT0NLX0dFVFJFUworc3RhdGljIFB5T2JqZWN0ICoKK3RpbWVfY2xvY2tfZ2V0cmVzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBpbnQgcmV0OworICAgIGNsb2NraWRfdCBjbGtfaWQ7CisgICAgc3RydWN0IHRpbWVzcGVjIHRwOworCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpOmNsb2NrX2dldHJlcyIsICZjbGtfaWQpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHJldCA9IGNsb2NrX2dldHJlcygoY2xvY2tpZF90KWNsa19pZCwgJnRwKTsKKyAgICBpZiAocmV0ICE9IDApIHsKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICByZXR1cm4gUHlGbG9hdF9Gcm9tRG91YmxlKHRwLnR2X3NlYyArIHRwLnR2X25zZWMgKiAxZS05KTsKK30KKworUHlEb2NfU1RSVkFSKGNsb2NrX2dldHJlc19kb2MsCisiY2xvY2tfZ2V0cmVzKGNsa19pZCkgLT4gZmxvYXRpbmcgcG9pbnQgbnVtYmVyXG5cCitcblwKK1JldHVybiB0aGUgcmVzb2x1dGlvbiAocHJlY2lzaW9uKSBvZiB0aGUgc3BlY2lmaWVkIGNsb2NrIGNsa19pZC4iKTsKKyNlbmRpZgorCiBzdGF0aWMgUHlPYmplY3QgKgogdGltZV9zbGVlcChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgZG91YmxlIHNlY3M7CiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJkOnNsZWVwIiwgJnNlY3MpKQogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoc2VjcyA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAic2xlZXAgbGVuZ3RoIG11c3QgYmUgbm9uLW5lZ2F0aXZlIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KICAgICBpZiAoZmxvYXRzbGVlcChzZWNzKSAhPSAwKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CkBAIC0yMTIsNTUgKzI2Myw1MyBAQAogICAgIHJldHVybiB2OwogfQogCi1zdGF0aWMgUHlPYmplY3QgKgotdGltZV9jb252ZXJ0KGRvdWJsZSB3aGVuLCBzdHJ1Y3QgdG0gKiAoKmZ1bmN0aW9uKShjb25zdCB0aW1lX3QgKikpCi17Ci0gICAgc3RydWN0IHRtICpwOwotICAgIHRpbWVfdCB3aGVudCA9IF9QeVRpbWVfRG91YmxlVG9UaW1ldCh3aGVuKTsKLQotICAgIGlmICh3aGVudCA9PSAodGltZV90KS0xICYmIFB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGVycm5vID0gMDsKLSAgICBwID0gZnVuY3Rpb24oJndoZW50KTsKLSAgICBpZiAocCA9PSBOVUxMKSB7Ci0jaWZkZWYgRUlOVkFMCi0gICAgICAgIGlmIChlcnJubyA9PSAwKQotICAgICAgICAgICAgZXJybm8gPSBFSU5WQUw7Ci0jZW5kaWYKLSAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19WYWx1ZUVycm9yKTsKLSAgICB9Ci0gICAgcmV0dXJuIHRtdG90dXBsZShwKTsKLX0KLQogLyogUGFyc2UgYXJnIHR1cGxlIHRoYXQgY2FuIGNvbnRhaW4gYW4gb3B0aW9uYWwgZmxvYXQtb3ItTm9uZSB2YWx1ZTsKICAgIGZvcm1hdCBuZWVkcyB0byBiZSAifE86bmFtZSIuCiAgICBSZXR1cm5zIG5vbi16ZXJvIG9uIHN1Y2Nlc3MgKHBhcmFsbGVscyBQeUFyZ19QYXJzZVR1cGxlKS4KICovCiBzdGF0aWMgaW50Ci1wYXJzZV90aW1lX2RvdWJsZV9hcmdzKFB5T2JqZWN0ICphcmdzLCBjaGFyICpmb3JtYXQsIGRvdWJsZSAqcHdoZW4pCitwYXJzZV90aW1lX3RfYXJncyhQeU9iamVjdCAqYXJncywgY2hhciAqZm9ybWF0LCB0aW1lX3QgKnB3aGVuKQogewogICAgIFB5T2JqZWN0ICpvdCA9IE5VTEw7CisgICAgdGltZV90IHdoZW50OwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsIGZvcm1hdCwgJm90KSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgaWYgKG90ID09IE5VTEwgfHwgb3QgPT0gUHlfTm9uZSkKLSAgICAgICAgKnB3aGVuID0gZmxvYXR0aW1lKCk7CisgICAgaWYgKG90ID09IE5VTEwgfHwgb3QgPT0gUHlfTm9uZSkgeworICAgICAgICB3aGVudCA9IHRpbWUoTlVMTCk7CisgICAgfQogICAgIGVsc2UgewotICAgICAgICBkb3VibGUgd2hlbiA9IFB5RmxvYXRfQXNEb3VibGUob3QpOworICAgICAgICBkb3VibGUgZCA9IFB5RmxvYXRfQXNEb3VibGUob3QpOwogICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAqcHdoZW4gPSB3aGVuOworICAgICAgICB3aGVudCA9IF9QeVRpbWVfRG91YmxlVG9UaW1ldChkKTsKKyAgICAgICAgaWYgKHdoZW50ID09ICh0aW1lX3QpLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiAwOwogICAgIH0KKyAgICAqcHdoZW4gPSB3aGVudDsKICAgICByZXR1cm4gMTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKIHRpbWVfZ210aW1lKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBkb3VibGUgd2hlbjsKLSAgICBpZiAoIXBhcnNlX3RpbWVfZG91YmxlX2FyZ3MoYXJncywgInxPOmdtdGltZSIsICZ3aGVuKSkKKyAgICB0aW1lX3Qgd2hlbjsKKyAgICBzdHJ1Y3QgdG0gYnVmLCAqbG9jYWw7CisKKyAgICBpZiAoIXBhcnNlX3RpbWVfdF9hcmdzKGFyZ3MsICJ8TzpnbXRpbWUiLCAmd2hlbikpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJldHVybiB0aW1lX2NvbnZlcnQod2hlbiwgZ210aW1lKTsKKworICAgIGVycm5vID0gMDsKKyAgICBsb2NhbCA9IGdtdGltZSgmd2hlbik7CisgICAgaWYgKGxvY2FsID09IE5VTEwpIHsKKyNpZmRlZiBFSU5WQUwKKyAgICAgICAgaWYgKGVycm5vID09IDApCisgICAgICAgICAgICBlcnJubyA9IEVJTlZBTDsKKyNlbmRpZgorICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworICAgIH0KKyAgICBidWYgPSAqbG9jYWw7CisgICAgcmV0dXJuIHRtdG90dXBsZSgmYnVmKTsKIH0KIAogUHlEb2NfU1RSVkFSKGdtdGltZV9kb2MsCkBAIC0yNzAsMTMgKzMxOSwzNyBAQAogQ29udmVydCBzZWNvbmRzIHNpbmNlIHRoZSBFcG9jaCB0byBhIHRpbWUgdHVwbGUgZXhwcmVzc2luZyBVVEMgKGEuay5hLlxuXAogR01UKS4gIFdoZW4gJ3NlY29uZHMnIGlzIG5vdCBwYXNzZWQgaW4sIGNvbnZlcnQgdGhlIGN1cnJlbnQgdGltZSBpbnN0ZWFkLiIpOwogCitzdGF0aWMgaW50CitweWxvY2FsdGltZSh0aW1lX3QgKnRpbWVwLCBzdHJ1Y3QgdG0gKnJlc3VsdCkKK3sKKyAgICBzdHJ1Y3QgdG0gKmxvY2FsOworCisgICAgYXNzZXJ0ICh0aW1lcCAhPSBOVUxMKTsKKyAgICBsb2NhbCA9IGxvY2FsdGltZSh0aW1lcCk7CisgICAgaWYgKGxvY2FsID09IE5VTEwpIHsKKyAgICAgICAgLyogdW5jb252ZXJ0aWJsZSB0aW1lICovCisjaWZkZWYgRUlOVkFMCisgICAgICAgIGlmIChlcnJubyA9PSAwKQorICAgICAgICAgICAgZXJybm8gPSBFSU5WQUw7CisjZW5kaWYKKyAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX09TRXJyb3IpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgICpyZXN1bHQgPSAqbG9jYWw7CisgICAgcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBQeU9iamVjdCAqCiB0aW1lX2xvY2FsdGltZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgZG91YmxlIHdoZW47Ci0gICAgaWYgKCFwYXJzZV90aW1lX2RvdWJsZV9hcmdzKGFyZ3MsICJ8Tzpsb2NhbHRpbWUiLCAmd2hlbikpCisgICAgdGltZV90IHdoZW47CisgICAgc3RydWN0IHRtIGJ1ZjsKKworICAgIGlmICghcGFyc2VfdGltZV90X2FyZ3MoYXJncywgInxPOmxvY2FsdGltZSIsICZ3aGVuKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmV0dXJuIHRpbWVfY29udmVydCh3aGVuLCBsb2NhbHRpbWUpOworICAgIGlmIChweWxvY2FsdGltZSgmd2hlbiwgJmJ1ZikgPT0gMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIHRtdG90dXBsZSgmYnVmKTsKIH0KIAogUHlEb2NfU1RSVkFSKGxvY2FsdGltZV9kb2MsCkBAIC0zMDcsNDkgKzM4MCw2IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICZwLT50bV9ob3VyLCAmcC0+dG1fbWluLCAmcC0+dG1fc2VjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAmcC0+dG1fd2RheSwgJnAtPnRtX3lkYXksICZwLT50bV9pc2RzdCkpCiAgICAgICAgIHJldHVybiAwOwotCi0gICAgLyogSWYgeWVhciBpcyBzcGVjaWZpZWQgd2l0aCBsZXNzIHRoYW4gNCBkaWdpdHMsIGl0cyBpbnRlcnByZXRhdGlvbgotICAgICAqIGRlcGVuZHMgb24gdGhlIGFjY2VwdDJkeWVhciB2YWx1ZS4KLSAgICAgKgotICAgICAqIElmIGFjY2VwdDJkeWVhciBpcyB0cnVlIChkZWZhdWx0KSwgYSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGJlaGF2aW9yIGlzCi0gICAgICogaW52b2tlZCBhcyBmb2xsb3dzOgotICAgICAqCi0gICAgICogICAtIGZvciAyLWRpZ2l0IHllYXIsIGNlbnR1cnkgaXMgZ3Vlc3NlZCBhY2NvcmRpbmcgdG8gUE9TSVggcnVsZXMgZm9yCi0gICAgICogICAgICAleSBzdHJwdGltZSBmb3JtYXQ6IDIxc3QgY2VudHVyeSBmb3IgeSA8IDY5LCAyMHRoIGNlbnR1cnkKLSAgICAgKiAgICAgIG90aGVyd2lzZS4gIEEgZGVwcmVjYXRpb24gd2FybmluZyBpcyBpc3N1ZWQgd2hlbiBjZW50dXJ5Ci0gICAgICogICAgICBpbmZvcm1hdGlvbiBpcyBndWVzc2VkIGluIHRoaXMgd2F5LgotICAgICAqCi0gICAgICogICAtIGZvciAzLWRpZ2l0IG9yIG5lZ2F0aXZlIHllYXIsIGEgVmFsdWVFcnJvciBleGNlcHRpb24gaXMgcmFpc2VkLgotICAgICAqCi0gICAgICogSWYgYWNjZXB0MmR5ZWFyIGlzIGZhbHNlIChzZXQgYnkgdGhlIHByb2dyYW0gb3IgYXMgYSByZXN1bHQgb2YgYQotICAgICAqIG5vbi1lbXB0eSB2YWx1ZSBhc3NpZ25lZCB0byBQWVRIT05ZMksgZW52aXJvbm1lbnQgdmFyaWFibGUpIGFsbCB5ZWFyCi0gICAgICogdmFsdWVzIGFyZSBpbnRlcnByZXRlZCBhcyBnaXZlbi4KLSAgICAgKi8KLSAgICBpZiAoeSA8IDEwMDApIHsKLSAgICAgICAgUHlPYmplY3QgKmFjY2VwdCA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKG1vZGRpY3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYWNjZXB0MmR5ZWFyIik7Ci0gICAgICAgIGlmIChhY2NlcHQgIT0gTlVMTCkgewotICAgICAgICAgICAgaW50IGFjY2VwdHZhbCA9ICBQeU9iamVjdF9Jc1RydWUoYWNjZXB0KTsKLSAgICAgICAgICAgIGlmIChhY2NlcHR2YWwgPT0gLTEpCi0gICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICBpZiAoYWNjZXB0dmFsKSB7Ci0gICAgICAgICAgICAgICAgaWYgKDAgPD0geSAmJiB5IDwgNjkpCi0gICAgICAgICAgICAgICAgICAgIHkgKz0gMjAwMDsKLSAgICAgICAgICAgICAgICBlbHNlIGlmICg2OSA8PSB5ICYmIHkgPCAxMDApCi0gICAgICAgICAgICAgICAgICAgIHkgKz0gMTkwMDsKLSAgICAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAieWVhciBvdXQgb2YgcmFuZ2UiKTsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeUVycl9XYXJuRXgoUHlFeGNfRGVwcmVjYXRpb25XYXJuaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNlbnR1cnkgaW5mbyBndWVzc2VkIGZvciBhIDItZGlnaXQgeWVhci4iLCAxKSAhPSAwKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICB9CiAgICAgcC0+dG1feWVhciA9IHkgLSAxOTAwOwogICAgIHAtPnRtX21vbi0tOwogICAgIHAtPnRtX3dkYXkgPSAocC0+dG1fd2RheSArIDEpICUgNzsKQEAgLTQ3MCw3ICs1MDAsOCBAQAogCiAgICAgaWYgKHR1cCA9PSBOVUxMKSB7CiAgICAgICAgIHRpbWVfdCB0dCA9IHRpbWUoTlVMTCk7Ci0gICAgICAgIGJ1ZiA9ICpsb2NhbHRpbWUoJnR0KTsKKyAgICAgICAgaWYgKHB5bG9jYWx0aW1lKCZ0dCwgJmJ1ZikgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgZWxzZSBpZiAoIWdldHRtYXJnKHR1cCwgJmJ1ZikgfHwgIWNoZWNrdG0oJmJ1ZikpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNDk4LDcgKzUyOSw3IEBACiAgICAgZm10ID0gZm9ybWF0OwogI2Vsc2UKICAgICAvKiBDb252ZXJ0IHRoZSB1bmljb2RlIHN0cmluZyB0byBhbiBhc2NpaSBvbmUgKi8KLSAgICBmb3JtYXQgPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KGZvcm1hdF9hcmcpOworICAgIGZvcm1hdCA9IFB5VW5pY29kZV9FbmNvZGVMb2NhbGUoZm9ybWF0X2FyZywgInN1cnJvZ2F0ZWVzY2FwZSIpOwogICAgIGlmIChmb3JtYXQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgZm10ID0gUHlCeXRlc19BU19TVFJJTkcoZm9ybWF0KTsKQEAgLTU0OCw3ICs1NzksOCBAQAogI2lmZGVmIEhBVkVfV0NTRlRJTUUKICAgICAgICAgICAgIHJldCA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIob3V0YnVmLCBidWZsZW4pOwogI2Vsc2UKLSAgICAgICAgICAgIHJldCA9IFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHRBbmRTaXplKG91dGJ1ZiwgYnVmbGVuKTsKKyAgICAgICAgICAgIHJldCA9IFB5VW5pY29kZV9EZWNvZGVMb2NhbGVBbmRTaXplKG91dGJ1ZiwgYnVmbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN1cnJvZ2F0ZWVzY2FwZSIpOwogI2VuZGlmCiAgICAgICAgICAgICBQeU1lbV9GcmVlKG91dGJ1Zik7CiAgICAgICAgICAgICBicmVhazsKQEAgLTU4NiwxMSArNjE4LDEyIEBACiB7CiAgICAgUHlPYmplY3QgKnN0cnB0aW1lX21vZHVsZSA9IFB5SW1wb3J0X0ltcG9ydE1vZHVsZU5vQmxvY2soIl9zdHJwdGltZSIpOwogICAgIFB5T2JqZWN0ICpzdHJwdGltZV9yZXN1bHQ7CisgICAgX1B5X0lERU5USUZJRVIoX3N0cnB0aW1lX3RpbWUpOwogCiAgICAgaWYgKCFzdHJwdGltZV9tb2R1bGUpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHN0cnB0aW1lX3Jlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2Qoc3RycHRpbWVfbW9kdWxlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX3N0cnB0aW1lX3RpbWUiLCAiTyIsIGFyZ3MpOworICAgIHN0cnB0aW1lX3Jlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoc3RycHRpbWVfbW9kdWxlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlB5SWRfX3N0cnB0aW1lX3RpbWUsICJPIiwgYXJncyk7CiAgICAgUHlfREVDUkVGKHN0cnB0aW1lX21vZHVsZSk7CiAgICAgcmV0dXJuIHN0cnB0aW1lX3Jlc3VsdDsKIH0KQEAgLTYwNywzMSArNjQwLDIwIEBACiB7CiAgICAgLyogSW5zcGlyZWQgYnkgT3BlbiBHcm91cCByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24gYXZhaWxhYmxlIGF0CiAgICAgICogaHR0cDovL3B1YnMub3Blbmdyb3VwLm9yZy9vbmxpbmVwdWJzLzAwOTY5NTM5OS9mdW5jdGlvbnMvYXNjdGltZS5odG1sICovCi0gICAgc3RhdGljIGNoYXIgd2RheV9uYW1lWzddWzNdID0geworICAgIHN0YXRpYyBjaGFyIHdkYXlfbmFtZVs3XVs0XSA9IHsKICAgICAgICAgIlN1biIsICJNb24iLCAiVHVlIiwgIldlZCIsICJUaHUiLCAiRnJpIiwgIlNhdCIKICAgICB9OwotICAgIHN0YXRpYyBjaGFyIG1vbl9uYW1lWzEyXVszXSA9IHsKKyAgICBzdGF0aWMgY2hhciBtb25fbmFtZVsxMl1bNF0gPSB7CiAgICAgICAgICJKYW4iLCAiRmViIiwgIk1hciIsICJBcHIiLCAiTWF5IiwgIkp1biIsCiAgICAgICAgICJKdWwiLCAiQXVnIiwgIlNlcCIsICJPY3QiLCAiTm92IiwgIkRlYyIKICAgICB9OwotICAgIGNoYXIgYnVmWzIwXTsgLyogJ1N1biBTZXAgMTYgMDE6MDM6NTJcMCcgKi8KLSAgICBpbnQgbjsKLQotICAgIG4gPSBQeU9TX3NucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksICIlLjNzICUuM3MlM2QgJS4yZDolLjJkOiUuMmQiLAotICAgICAgICAgICAgICAgICAgICAgIHdkYXlfbmFtZVt0aW1lcHRyLT50bV93ZGF5XSwKLSAgICAgICAgICAgICAgICAgICAgICBtb25fbmFtZVt0aW1lcHRyLT50bV9tb25dLAotICAgICAgICAgICAgICAgICAgICAgIHRpbWVwdHItPnRtX21kYXksIHRpbWVwdHItPnRtX2hvdXIsCi0gICAgICAgICAgICAgICAgICAgICAgdGltZXB0ci0+dG1fbWluLCB0aW1lcHRyLT50bV9zZWMpOwotICAgIC8qIFhYWDogc2luY2UgdGhlIGZpZWxkcyB1c2VkIGJ5IHNucHJpbnRmIGFib3ZlIGFyZSB2YWxpZGF0ZWQgaW4gY2hlY2t0bSwKLSAgICAgKiB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbiBzaG91bGQgbmV2ZXIgdHJpZ2dlci4gV2Uga2VlcCB0aGUgY2hlY2sgYmVjYXVzZQotICAgICAqIGhpc3RvcmljYWxseSBmaXhlZCBzaXplIGJ1ZmZlciB1c2VkIGluIGFzY3RpbWUgd2FzIHRoZSBzb3VyY2Ugb2YKLSAgICAgKiBjcmFzaGVzLiAqLwotICAgIGlmIChuICsgMSAhPSBzaXplb2YoYnVmKSkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInVuY29udmVydGlibGUgdGltZSIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0KLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVzICVkIiwgYnVmLCAxOTAwICsgdGltZXB0ci0+dG1feWVhcik7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KAorICAgICAgICAiJXMgJXMlM2QgJS4yZDolLjJkOiUuMmQgJWQiLAorICAgICAgICB3ZGF5X25hbWVbdGltZXB0ci0+dG1fd2RheV0sCisgICAgICAgIG1vbl9uYW1lW3RpbWVwdHItPnRtX21vbl0sCisgICAgICAgIHRpbWVwdHItPnRtX21kYXksIHRpbWVwdHItPnRtX2hvdXIsCisgICAgICAgIHRpbWVwdHItPnRtX21pbiwgdGltZXB0ci0+dG1fc2VjLAorICAgICAgICAxOTAwICsgdGltZXB0ci0+dG1feWVhcik7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC02NDQsNyArNjY2LDkgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKHR1cCA9PSBOVUxMKSB7CiAgICAgICAgIHRpbWVfdCB0dCA9IHRpbWUoTlVMTCk7Ci0gICAgICAgIGJ1ZiA9ICpsb2NhbHRpbWUoJnR0KTsKKyAgICAgICAgaWYgKHB5bG9jYWx0aW1lKCZ0dCwgJmJ1ZikgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIH0gZWxzZSBpZiAoIWdldHRtYXJnKHR1cCwgJmJ1ZikgfHwgIWNoZWNrdG0oJmJ1ZikpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHJldHVybiBfYXNjdGltZSgmYnVmKTsKQEAgLTY2MCwyOCArNjg0LDEzIEBACiBzdGF0aWMgUHlPYmplY3QgKgogdGltZV9jdGltZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlPYmplY3QgKm90ID0gTlVMTDsKICAgICB0aW1lX3QgdHQ7Ci0gICAgc3RydWN0IHRtICp0aW1lcHRyOwotCi0gICAgaWYgKCFQeUFyZ19VbnBhY2tUdXBsZShhcmdzLCAiY3RpbWUiLCAwLCAxLCAmb3QpKQorICAgIHN0cnVjdCB0bSBidWY7CisgICAgaWYgKCFwYXJzZV90aW1lX3RfYXJncyhhcmdzLCAifE86Y3RpbWUiLCAmdHQpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAob3QgPT0gTlVMTCB8fCBvdCA9PSBQeV9Ob25lKQotICAgICAgICB0dCA9IHRpbWUoTlVMTCk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIGRvdWJsZSBkdCA9IFB5RmxvYXRfQXNEb3VibGUob3QpOwotICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB0dCA9IF9QeVRpbWVfRG91YmxlVG9UaW1ldChkdCk7Ci0gICAgICAgIGlmICh0dCA9PSAodGltZV90KS0xICYmIFB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgdGltZXB0ciA9IGxvY2FsdGltZSgmdHQpOwotICAgIGlmICh0aW1lcHRyID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJ1bmNvbnZlcnRpYmxlIHRpbWUiKTsKKyAgICBpZiAocHlsb2NhbHRpbWUoJnR0LCAmYnVmKSA9PSAtMSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIHJldHVybiBfYXNjdGltZSh0aW1lcHRyKTsKKyAgICByZXR1cm4gX2FzY3RpbWUoJmJ1Zik7CiB9CiAKIFB5RG9jX1NUUlZBUihjdGltZV9kb2MsCkBAIC03NTQsNiArNzYzLDUyIEBACiBzaG91bGQgbm90IGJlIHJlbGllZCBvbi4iKTsKICNlbmRpZiAvKiBIQVZFX1dPUktJTkdfVFpTRVQgKi8KIAorc3RhdGljIFB5T2JqZWN0ICoKK3RpbWVfd2FsbGNsb2NrKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQoreworI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgIWRlZmluZWQoX19CT1JMQU5EQ19fKQorICAgIHJldHVybiB0aW1lX2Nsb2NrKHNlbGYsIE5VTEwpOworI2VsaWYgZGVmaW5lZChIQVZFX0NMT0NLX0dFVFRJTUUpICYmIGRlZmluZWQoQ0xPQ0tfTU9OT1RPTklDKQorICAgIHN0YXRpYyBpbnQgY2xrX2luZGV4ID0gMDsKKyAgICBjbG9ja2lkX3QgY2xrX2lkc1tdID0geworI2lmZGVmIENMT0NLX01PTk9UT05JQ19SQVcKKyAgICAgICAgQ0xPQ0tfTU9OT1RPTklDX1JBVywKKyNlbmRpZgorICAgICAgICBDTE9DS19NT05PVE9OSUMKKyNpZmRlZiBDTE9DS19SRUFMVElNRQorICAgICAgICAgIC8qIE9uIExpbnV4LCBDTE9DS19SRUFMVElNRSB1c2VzIHRoZSBzYW1lIGNsb2NrIHRoYW4gZ2V0dGltZW9mZGF5KCksCisgICAgICAgICAgICAgYnV0IGNsb2NrX2dldHRpbWUoKSBoYXMgYSBuYW5vc2Vjb25kIHJlc29sdXRpb24uICovCisgICAgICAgICwgQ0xPQ0tfUkVBTFRJTUUKKyNlbmRpZgorICAgIH07CisgICAgaW50IHJldDsKKyAgICBzdHJ1Y3QgdGltZXNwZWMgdHA7CisKKyAgICB3aGlsZSAoMCA8PSBjbGtfaW5kZXgpIHsKKyAgICAgICAgY2xvY2tpZF90IGNsa19pZCA9IGNsa19pZHNbY2xrX2luZGV4XTsKKyAgICAgICAgcmV0ID0gY2xvY2tfZ2V0dGltZShjbGtfaWQsICZ0cCk7CisgICAgICAgIGlmIChyZXQgPT0gMCkKKyAgICAgICAgICAgIHJldHVybiBQeUZsb2F0X0Zyb21Eb3VibGUodHAudHZfc2VjICsgdHAudHZfbnNlYyAqIDFlLTkpOworCisgICAgICAgIGNsa19pbmRleCsrOworICAgICAgICBpZiAoUHlfQVJSQVlfTEVOR1RIKGNsa19pZHMpIDw9IGNsa19pbmRleCkKKyAgICAgICAgICAgIGNsa19pbmRleCA9IC0xOworICAgIH0KKyAgICByZXR1cm4gdGltZV90aW1lKHNlbGYsIE5VTEwpOworI2Vsc2UKKyAgICByZXR1cm4gdGltZV90aW1lKHNlbGYsIE5VTEwpOworI2VuZGlmCit9CisKK1B5RG9jX1NUUlZBUih3YWxsY2xvY2tfZG9jLAorIndhbGxjbG9jaygpIC0+IGZsb2F0XG5cCitcblwKK1JldHVybiB0aGUgY3VycmVudCB0aW1lIGluIGZyYWN0aW9ucyBvZiBhIHNlY29uZCB0byB0aGUgc3lzdGVtJ3MgYmVzdFxuXAorYWJpbGl0eS4gVXNlIHRoaXMgd2hlbiB0aGUgbW9zdCBhY2N1cmF0ZSByZXByZXNlbnRhdGlvbiBvZiB3YWxsLWNsb2NrIGlzXG5cCityZXF1aXJlZCwgaS5lLiB3aGVuIFwicHJvY2Vzc29yIHRpbWVcIiBpcyBpbmFwcHJvcHJpYXRlLiBUaGUgcmVmZXJlbmNlIHBvaW50XG5cCitvZiB0aGUgcmV0dXJuZWQgdmFsdWUgaXMgdW5kZWZpbmVkIHNvIG9ubHkgdGhlIGRpZmZlcmVuY2Ugb2YgY29uc2VjdXRpdmVcblwKK2NhbGxzIGlzIHZhbGlkLiIpOworCiBzdGF0aWMgdm9pZAogUHlJbml0X3RpbWV6b25lKFB5T2JqZWN0ICptKSB7CiAgICAgLyogVGhpcyBjb2RlIG1vdmVkIGZyb20gUHlJbml0X3RpbWUgd2hvbGVzYWxlIHRvIGFsbG93IGNhbGxpbmcgaXQgZnJvbQpAQCAtNzkwLDggKzg0NSw4IEBACiAjZW5kaWYgLyogUFlPU19PUzIgKi8KICNlbmRpZgogICAgIFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJkYXlsaWdodCIsIGRheWxpZ2h0KTsKLSAgICBvdHowID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemUodHpuYW1lWzBdLCBzdHJsZW4odHpuYW1lWzBdKSk7Ci0gICAgb3R6MSA9IFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHRBbmRTaXplKHR6bmFtZVsxXSwgc3RybGVuKHR6bmFtZVsxXSkpOworICAgIG90ejAgPSBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKHR6bmFtZVswXSwgInN1cnJvZ2F0ZWVzY2FwZSIpOworICAgIG90ejEgPSBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlKHR6bmFtZVsxXSwgInN1cnJvZ2F0ZWVzY2FwZSIpOwogICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAidHpuYW1lIiwgUHlfQnVpbGRWYWx1ZSgiKE5OKSIsIG90ejAsIG90ejEpKTsKICNlbHNlIC8qICFIQVZFX1RaTkFNRSB8fCBfX0dMSUJDX18gfHwgX19DWUdXSU5fXyovCiAjaWZkZWYgSEFWRV9TVFJVQ1RfVE1fVE1fWk9ORQpAQCAtODQyLDE0ICs4OTcsMzggQEAKICAgICAgICAgICAgICAgICAgICAgICAgUHlfQnVpbGRWYWx1ZSgiKHp6KSIsIF90em5hbWVbMF0sIF90em5hbWVbMV0pKTsKICNlbmRpZiAvKiBfX0NZR1dJTl9fICovCiAjZW5kaWYgLyogIUhBVkVfVFpOQU1FIHx8IF9fR0xJQkNfXyB8fCBfX0NZR1dJTl9fKi8KKworI2lmIGRlZmluZWQoSEFWRV9DTE9DS19HRVRUSU1FKSB8fCBkZWZpbmVkKEhBVkVfQ0xPQ0tfR0VUUkVTKQorI2lmZGVmIENMT0NLX1JFQUxUSU1FCisgICAgUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgQ0xPQ0tfUkVBTFRJTUUpOworI2VuZGlmCisjaWZkZWYgQ0xPQ0tfTU9OT1RPTklDCisgICAgUHlNb2R1bGVfQWRkSW50TWFjcm8obSwgQ0xPQ0tfTU9OT1RPTklDKTsKKyNlbmRpZgorI2lmZGVmIENMT0NLX01PTk9UT05JQ19SQVcKKyAgICBQeU1vZHVsZV9BZGRJbnRNYWNybyhtLCBDTE9DS19NT05PVE9OSUNfUkFXKTsKKyNlbmRpZgorI2lmZGVmIENMT0NLX1BST0NFU1NfQ1BVVElNRV9JRAorICAgIFB5TW9kdWxlX0FkZEludE1hY3JvKG0sIENMT0NLX1BST0NFU1NfQ1BVVElNRV9JRCk7CisjZW5kaWYKKyNpZmRlZiBDTE9DS19USFJFQURfQ1BVVElNRV9JRAorICAgIFB5TW9kdWxlX0FkZEludE1hY3JvKG0sIENMT0NLX1RIUkVBRF9DUFVUSU1FX0lEKTsKKyNlbmRpZgorI2VuZGlmIC8qIEhBVkVfQ0xPQ0tfR0VUVElNRSAqLwogfQogCiAKIHN0YXRpYyBQeU1ldGhvZERlZiB0aW1lX21ldGhvZHNbXSA9IHsKICAgICB7InRpbWUiLCAgICAgICAgICAgIHRpbWVfdGltZSwgTUVUSF9OT0FSR1MsIHRpbWVfZG9jfSwKLSNpZmRlZiBIQVZFX0NMT0NLCisjaWYgKGRlZmluZWQoTVNfV0lORE9XUykgJiYgIWRlZmluZWQoX19CT1JMQU5EQ19fKSkgfHwgZGVmaW5lZChIQVZFX0NMT0NLKQogICAgIHsiY2xvY2siLCAgICAgICAgICAgdGltZV9jbG9jaywgTUVUSF9OT0FSR1MsIGNsb2NrX2RvY30sCiAjZW5kaWYKKyNpZmRlZiBIQVZFX0NMT0NLX0dFVFRJTUUKKyAgICB7ImNsb2NrX2dldHRpbWUiLCAgIHRpbWVfY2xvY2tfZ2V0dGltZSwgTUVUSF9WQVJBUkdTLCBjbG9ja19nZXR0aW1lX2RvY30sCisjZW5kaWYKKyNpZmRlZiBIQVZFX0NMT0NLX0dFVFJFUworICAgIHsiY2xvY2tfZ2V0cmVzIiwgICAgdGltZV9jbG9ja19nZXRyZXMsIE1FVEhfVkFSQVJHUywgY2xvY2tfZ2V0cmVzX2RvY30sCisjZW5kaWYKICAgICB7InNsZWVwIiwgICAgICAgICAgIHRpbWVfc2xlZXAsIE1FVEhfVkFSQVJHUywgc2xlZXBfZG9jfSwKICAgICB7ImdtdGltZSIsICAgICAgICAgIHRpbWVfZ210aW1lLCBNRVRIX1ZBUkFSR1MsIGdtdGltZV9kb2N9LAogICAgIHsibG9jYWx0aW1lIiwgICAgICAgdGltZV9sb2NhbHRpbWUsIE1FVEhfVkFSQVJHUywgbG9jYWx0aW1lX2RvY30sCkBAIC04NjUsNiArOTQ0LDcgQEAKICNpZmRlZiBIQVZFX1dPUktJTkdfVFpTRVQKICAgICB7InR6c2V0IiwgICAgICAgICAgIHRpbWVfdHpzZXQsIE1FVEhfTk9BUkdTLCB0enNldF9kb2N9LAogI2VuZGlmCisgICAgeyJ3YWxsY2xvY2siLCAgICAgICB0aW1lX3dhbGxjbG9jaywgTUVUSF9OT0FSR1MsIHdhbGxjbG9ja19kb2N9LAogICAgIHtOVUxMLCAgICAgICAgICAgICAgTlVMTH0gICAgICAgICAgIC8qIHNlbnRpbmVsICovCiB9OwogCkBAIC04ODAsNyArOTYwLDcgQEAKIFxuXAogVGhlIG90aGVyIHJlcHJlc2VudGF0aW9uIGlzIGEgdHVwbGUgb2YgOSBpbnRlZ2VycyBnaXZpbmcgbG9jYWwgdGltZS5cblwKIFRoZSB0dXBsZSBpdGVtcyBhcmU6XG5cCi0gIHllYXIgKGZvdXIgZGlnaXRzLCBlLmcuIDE5OTgpXG5cCisgIHllYXIgKGluY2x1ZGluZyBjZW50dXJ5LCBlLmcuIDE5OTgpXG5cCiAgIG1vbnRoICgxLTEyKVxuXAogICBkYXkgKDEtMzEpXG5cCiAgIGhvdXJzICgwLTIzKVxuXApAQCAtOTMyLDMwICsxMDEyLDEzIEBACiBQeUluaXRfdGltZSh2b2lkKQogewogICAgIFB5T2JqZWN0ICptOwotICAgIGNoYXIgKnA7CiAgICAgbSA9IFB5TW9kdWxlX0NyZWF0ZSgmdGltZW1vZHVsZSk7CiAgICAgaWYgKG0gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICAvKiBBY2NlcHQgMi1kaWdpdCBkYXRlcyB1bmxlc3MgUFlUSE9OWTJLIGlzIHNldCBhbmQgbm9uLWVtcHR5ICovCi0gICAgcCA9IFB5X0dFVEVOVigiUFlUSE9OWTJLIik7Ci0gICAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQobSwgImFjY2VwdDJkeWVhciIsIChsb25nKSAoIXAgfHwgISpwKSk7Ci0gICAgLyogU3F1aXJyZWwgYXdheSB0aGUgbW9kdWxlJ3MgZGljdGlvbmFyeSBmb3IgdGhlIHkyayBjaGVjayAqLwotICAgIG1vZGRpY3QgPSBQeU1vZHVsZV9HZXREaWN0KG0pOwotICAgIFB5X0lOQ1JFRihtb2RkaWN0KTsKLQogICAgIC8qIFNldCwgb3IgcmVzZXQsIG1vZHVsZSB2YXJpYWJsZXMgbGlrZSB0aW1lLnRpbWV6b25lICovCiAgICAgUHlJbml0X3RpbWV6b25lKG0pOwogCi0jaWZkZWYgTVNfV0lORE9XUwotICAgIC8qIEhlbHBlciB0byBhbGxvdyBpbnRlcnJ1cHRzIGZvciBXaW5kb3dzLgotICAgICAgIElmIEN0cmwrQyBldmVudCBkZWxpdmVyZWQgd2hpbGUgbm90IHNsZWVwaW5nCi0gICAgICAgaXQgd2lsbCBiZSBpZ25vcmVkLgotICAgICovCi0gICAgbWFpbl90aHJlYWQgPSBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KCk7Ci0gICAgaEludGVycnVwdEV2ZW50ID0gQ3JlYXRlRXZlbnQoTlVMTCwgVFJVRSwgRkFMU0UsIE5VTEwpOwotICAgIFNldENvbnNvbGVDdHJsSGFuZGxlciggUHlDdHJsSGFuZGxlciwgVFJVRSk7Ci0jZW5kaWYgLyogTVNfV0lORE9XUyAqLwogICAgIGlmICghaW5pdGlhbGl6ZWQpIHsKICAgICAgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9Jbml0VHlwZSgmU3RydWN0VGltZVR5cGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0cnVjdF90aW1lX3R5cGVfZGVzYyk7CkBAIC05ODYsMjMgKzEwNDksMjggQEAKICNpZiBkZWZpbmVkKEhBVkVfU0VMRUNUKSAmJiAhZGVmaW5lZChfX0VNWF9fKQogICAgIHN0cnVjdCB0aW1ldmFsIHQ7CiAgICAgZG91YmxlIGZyYWM7CisgICAgaW50IGVycjsKKwogICAgIGZyYWMgPSBmbW9kKHNlY3MsIDEuMCk7CiAgICAgc2VjcyA9IGZsb29yKHNlY3MpOwogICAgIHQudHZfc2VjID0gKGxvbmcpc2VjczsKICAgICB0LnR2X3VzZWMgPSAobG9uZykoZnJhYyoxMDAwMDAwLjApOwogICAgIFB5X0JFR0lOX0FMTE9XX1RIUkVBRFMKLSAgICBpZiAoc2VsZWN0KDAsIChmZF9zZXQgKikwLCAoZmRfc2V0ICopMCwgKGZkX3NldCAqKTAsICZ0KSAhPSAwKSB7CisgICAgZXJyID0gc2VsZWN0KDAsIChmZF9zZXQgKikwLCAoZmRfc2V0ICopMCwgKGZkX3NldCAqKTAsICZ0KTsKKyAgICBQeV9FTkRfQUxMT1dfVEhSRUFEUworICAgIGlmIChlcnIgIT0gMCkgewogI2lmZGVmIEVJTlRSCi0gICAgICAgIGlmIChlcnJubyAhPSBFSU5UUikgewotI2Vsc2UKLSAgICAgICAgaWYgKDEpIHsKKyAgICAgICAgaWYgKGVycm5vID09IEVJTlRSKSB7CisgICAgICAgICAgICBpZiAoUHlFcnJfQ2hlY2tTaWduYWxzKCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIGVsc2UKICNlbmRpZgotICAgICAgICAgICAgUHlfQkxPQ0tfVEhSRUFEUworICAgICAgICB7CiAgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIH0KICAgICB9Ci0gICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKICNlbGlmIGRlZmluZWQoX19XQVRDT01DX18pICYmICFkZWZpbmVkKF9fUU5YX18pCiAgICAgLyogWFhYIENhbid0IGludGVycnVwdCB0aGlzIHNsZWVwICovCiAgICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUwpAQCAtMTAyMywxOCArMTA5MSwxNCBAQAogICAgICAgICAgKiBieSBHdWlkbywgb25seSB0aGUgbWFpbiB0aHJlYWQgY2FuIGJlIGludGVycnVwdGVkLgogICAgICAgICAgKi8KICAgICAgICAgdWxfbWlsbGlzID0gKHVuc2lnbmVkIGxvbmcpbWlsbGlzZWNzOwotICAgICAgICBpZiAodWxfbWlsbGlzID09IDAgfHwKLSAgICAgICAgICAgIG1haW5fdGhyZWFkICE9IFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQoKSkKKyAgICAgICAgaWYgKHVsX21pbGxpcyA9PSAwIHx8ICFfUHlPU19Jc01haW5UaHJlYWQoKSkKICAgICAgICAgICAgIFNsZWVwKHVsX21pbGxpcyk7CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgRFdPUkQgcmM7CisgICAgICAgICAgICBIQU5ETEUgaEludGVycnVwdEV2ZW50ID0gX1B5T1NfU2lnaW50RXZlbnQoKTsKICAgICAgICAgICAgIFJlc2V0RXZlbnQoaEludGVycnVwdEV2ZW50KTsKICAgICAgICAgICAgIHJjID0gV2FpdEZvclNpbmdsZU9iamVjdChoSW50ZXJydXB0RXZlbnQsIHVsX21pbGxpcyk7CiAgICAgICAgICAgICBpZiAocmMgPT0gV0FJVF9PQkpFQ1RfMCkgewotICAgICAgICAgICAgICAgIC8qIFlpZWxkIHRvIG1ha2Ugc3VyZSByZWFsIFB5dGhvbiBzaWduYWwKLSAgICAgICAgICAgICAgICAgKiBoYW5kbGVyIGNhbGxlZC4KLSAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAgICBTbGVlcCgxKTsKICAgICAgICAgICAgICAgICBQeV9CTE9DS19USFJFQURTCiAgICAgICAgICAgICAgICAgZXJybm8gPSBFSU5UUjsKICAgICAgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfSU9FcnJvcik7CmRpZmYgLS1naXQgYS9Nb2R1bGVzL3VuaWNvZGVkYXRhLmMgYi9Nb2R1bGVzL3VuaWNvZGVkYXRhLmMKaW5kZXggNTNlNDhkZi4uNjY0MjJkOSAxMDA2NDQKLS0tIGEvTW9kdWxlcy91bmljb2RlZGF0YS5jCisrKyBiL01vZHVsZXMvdW5pY29kZWRhdGEuYwpAQCAtOTMsMTYgKzkzLDEzIEBACiAKIHN0YXRpYyBQeV9VQ1M0IGdldHVjaGFyKFB5VW5pY29kZU9iamVjdCAqb2JqKQogewotICAgIFB5X1VOSUNPREUgKnYgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShvYmopOwotCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShvYmopID09IDEpCi0gICAgICAgIHJldHVybiAqdjsKLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgZWxzZSBpZiAoKFB5VW5pY29kZV9HRVRfU0laRShvYmopID09IDIpICYmCi0gICAgICAgICAgICAgKDB4RDgwMCA8PSB2WzBdICYmIHZbMF0gPD0gMHhEQkZGKSAmJgotICAgICAgICAgICAgICgweERDMDAgPD0gdlsxXSAmJiB2WzFdIDw9IDB4REZGRikpCi0gICAgICAgIHJldHVybiAoKCh2WzBdICYgMHgzRkYpPDwxMCkgfCAodlsxXSAmIDB4M0ZGKSkgKyAweDEwMDAwOwotI2VuZGlmCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShvYmopKQorICAgICAgICByZXR1cm4gKFB5X1VDUzQpLTE7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKG9iaikgPT0gMSkgeworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKG9iaikpCisgICAgICAgICAgICByZXR1cm4gKFB5X1VDUzQpLTE7CisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfUkVBRF9DSEFSKG9iaiwgMCk7CisgICAgfQogICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICJuZWVkIGEgc2luZ2xlIFVuaWNvZGUgY2hhcmFjdGVyIGFzIHBhcmFtZXRlciIpOwogICAgIHJldHVybiAoUHlfVUNTNCktMTsKQEAgLTQ0Myw3ICs0NDAsNyBAQAogICAgICAgIGZyb20gVG9vbHMvdW5pY29kZS9tYWtldW5pY29kZWRhdGEucHksIGl0IHNob3VsZCBub3QgYmUgcG9zc2libGUKICAgICAgICB0byBvdmVyZmxvdyBkZWNvbXBfcHJlZml4LiAqLwogICAgIHByZWZpeF9pbmRleCA9IGRlY29tcF9kYXRhW2luZGV4XSAmIDI1NTsKLSAgICBhc3NlcnQocHJlZml4X2luZGV4IDwgKHNpemVvZihkZWNvbXBfcHJlZml4KS9zaXplb2YoKmRlY29tcF9wcmVmaXgpKSk7CisgICAgYXNzZXJ0KHByZWZpeF9pbmRleCA8IFB5X0FSUkFZX0xFTkdUSChkZWNvbXBfcHJlZml4KSk7CiAKICAgICAvKiBjb3B5IHByZWZpeCAqLwogICAgIGkgPSBzdHJsZW4oZGVjb21wX3ByZWZpeFtwcmVmaXhfaW5kZXhdKTsKQEAgLTQ5OCwzNiArNDk1LDQ0IEBACiBuZmRfbmZrZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmlucHV0LCBpbnQgaykKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0OwotICAgIFB5X1VOSUNPREUgKmksICplbmQsICpvOworICAgIFB5X1VDUzQgKm91dHB1dDsKKyAgICBQeV9zc2l6ZV90IGksIG8sIG9zaXplOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CiAgICAgLyogTG9uZ2VzdCBkZWNvbXBvc2l0aW9uIGluIFVuaWNvZGUgMy4yOiBVK0ZERkEgKi8KLSAgICBQeV9VTklDT0RFIHN0YWNrWzIwXTsKKyAgICBQeV9VQ1M0IHN0YWNrWzIwXTsKICAgICBQeV9zc2l6ZV90IHNwYWNlLCBpc2l6ZTsKICAgICBpbnQgaW5kZXgsIHByZWZpeCwgY291bnQsIHN0YWNrcHRyOwogICAgIHVuc2lnbmVkIGNoYXIgcHJldiwgY3VyOwogCiAgICAgc3RhY2twdHIgPSAwOwotICAgIGlzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKGlucHV0KTsKKyAgICBpc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGlucHV0KTsKICAgICAvKiBPdmVyYWxsb2NhdGUgYXRtb3N0IDEwIGNoYXJhY3RlcnMuICovCiAgICAgc3BhY2UgPSAoaXNpemUgPiAxMCA/IDEwIDogaXNpemUpICsgaXNpemU7Ci0gICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHNwYWNlKTsKLSAgICBpZiAoIXJlc3VsdCkKKyAgICBvc2l6ZSA9IHNwYWNlOworICAgIG91dHB1dCA9IFB5TWVtX01hbGxvYyhzcGFjZSAqIHNpemVvZihQeV9VQ1M0KSk7CisgICAgaWYgKCFvdXRwdXQpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaSA9IFB5VW5pY29kZV9BU19VTklDT0RFKGlucHV0KTsKLSAgICBlbmQgPSBpICsgaXNpemU7Ci0gICAgbyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCk7CisgICAgfQorICAgIGkgPSBvID0gMDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoaW5wdXQpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShpbnB1dCk7CiAKLSAgICB3aGlsZSAoaSA8IGVuZCkgewotICAgICAgICBzdGFja1tzdGFja3B0cisrXSA9ICppKys7CisgICAgd2hpbGUgKGkgPCBpc2l6ZSkgeworICAgICAgICBzdGFja1tzdGFja3B0cisrXSA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkrKyk7CiAgICAgICAgIHdoaWxlKHN0YWNrcHRyKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIGNvZGUgPSBzdGFja1stLXN0YWNrcHRyXTsKKyAgICAgICAgICAgIFB5X1VDUzQgY29kZSA9IHN0YWNrWy0tc3RhY2twdHJdOwogICAgICAgICAgICAgLyogSGFuZ3VsIERlY29tcG9zaXRpb24gYWRkcyB0aHJlZSBjaGFyYWN0ZXJzIGluCiAgICAgICAgICAgICAgICBhIHNpbmdsZSBzdGVwLCBzbyB3ZSBuZWVkIGF0bGVhc3QgdGhhdCBtdWNoIHJvb20uICovCiAgICAgICAgICAgICBpZiAoc3BhY2UgPCAzKSB7Ci0gICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuZXdzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKHJlc3VsdCkgKyAxMDsKKyAgICAgICAgICAgICAgICBvc2l6ZSArPSAxMDsKICAgICAgICAgICAgICAgICBzcGFjZSArPSAxMDsKLSAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1Jlc2l6ZSgmcmVzdWx0LCBuZXdzaXplKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBvdXRwdXQgPSBQeU1lbV9SZWFsbG9jKG91dHB1dCwgb3NpemUqc2l6ZW9mKFB5X1VDUzQpKTsKKyAgICAgICAgICAgICAgICBpZiAob3V0cHV0ID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICAgICAgbyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCkgKyBuZXdzaXplIC0gc3BhY2U7CisgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAgICAgLyogSGFuZ3VsIERlY29tcG9zaXRpb24uICovCiAgICAgICAgICAgICBpZiAoU0Jhc2UgPD0gY29kZSAmJiBjb2RlIDwgKFNCYXNlK1NDb3VudCkpIHsKQEAgLTUzNSwxMSArNTQwLDExIEBACiAgICAgICAgICAgICAgICAgaW50IEwgPSBMQmFzZSArIFNJbmRleCAvIE5Db3VudDsKICAgICAgICAgICAgICAgICBpbnQgViA9IFZCYXNlICsgKFNJbmRleCAlIE5Db3VudCkgLyBUQ291bnQ7CiAgICAgICAgICAgICAgICAgaW50IFQgPSBUQmFzZSArIFNJbmRleCAlIFRDb3VudDsKLSAgICAgICAgICAgICAgICAqbysrID0gTDsKLSAgICAgICAgICAgICAgICAqbysrID0gVjsKKyAgICAgICAgICAgICAgICBvdXRwdXRbbysrXSA9IEw7CisgICAgICAgICAgICAgICAgb3V0cHV0W28rK10gPSBWOwogICAgICAgICAgICAgICAgIHNwYWNlIC09IDI7CiAgICAgICAgICAgICAgICAgaWYgKFQgIT0gVEJhc2UpIHsKLSAgICAgICAgICAgICAgICAgICAgKm8rKyA9IFQ7CisgICAgICAgICAgICAgICAgICAgIG91dHB1dFtvKytdID0gVDsKICAgICAgICAgICAgICAgICAgICAgc3BhY2UgLS07CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtNTU5LDcgKzU2NCw3IEBACiAgICAgICAgICAgICAvKiBDb3B5IGNoYXJhY3RlciBpZiBpdCBpcyBub3QgZGVjb21wb3NhYmxlLCBvciBoYXMgYQogICAgICAgICAgICAgICAgY29tcGF0aWJpbGl0eSBkZWNvbXBvc2l0aW9uLCBidXQgd2UgZG8gTkZELiAqLwogICAgICAgICAgICAgaWYgKCFjb3VudCB8fCAocHJlZml4ICYmICFrKSkgewotICAgICAgICAgICAgICAgICpvKysgPSBjb2RlOworICAgICAgICAgICAgICAgIG91dHB1dFtvKytdID0gY29kZTsKICAgICAgICAgICAgICAgICBzcGFjZS0tOwogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgfQpAQCAtNTcyLDE1ICs1NzcsMjAgQEAKICAgICAgICAgfQogICAgIH0KIAotICAgIC8qIERyb3Agb3ZlcmFsbG9jYXRpb24uIENhbm5vdCBmYWlsLiAqLwotICAgIFB5VW5pY29kZV9SZXNpemUoJnJlc3VsdCwgUHlVbmljb2RlX0dFVF9TSVpFKHJlc3VsdCkgLSBzcGFjZSk7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCwgbyk7CisgICAgUHlNZW1fRnJlZShvdXRwdXQpOworICAgIGlmICghcmVzdWx0KQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAvKiByZXN1bHQgaXMgZ3VhcmFudGVlZCB0byBiZSByZWFkeSwgYXMgaXQgaXMgY29tcGFjdC4gKi8KKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQocmVzdWx0KTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEocmVzdWx0KTsKIAogICAgIC8qIFNvcnQgY2Fub25pY2FsbHkuICovCi0gICAgaSA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCk7Ci0gICAgcHJldiA9IF9nZXRyZWNvcmRfZXgoKmkpLT5jb21iaW5pbmc7Ci0gICAgZW5kID0gaSArIFB5VW5pY29kZV9HRVRfU0laRShyZXN1bHQpOwotICAgIGZvciAoaSsrOyBpIDwgZW5kOyBpKyspIHsKLSAgICAgICAgY3VyID0gX2dldHJlY29yZF9leCgqaSktPmNvbWJpbmluZzsKKyAgICBpID0gMDsKKyAgICBwcmV2ID0gX2dldHJlY29yZF9leChQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSktPmNvbWJpbmluZzsKKyAgICBmb3IgKGkrKzsgaSA8IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlc3VsdCk7IGkrKykgeworICAgICAgICBjdXIgPSBfZ2V0cmVjb3JkX2V4KFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKS0+Y29tYmluaW5nOwogICAgICAgICBpZiAocHJldiA9PSAwIHx8IGN1ciA9PSAwIHx8IHByZXYgPD0gY3VyKSB7CiAgICAgICAgICAgICBwcmV2ID0gY3VyOwogICAgICAgICAgICAgY29udGludWU7CkBAIC01ODgsMzEgKzU5OCwzMiBAQAogICAgICAgICAvKiBOb24tY2Fub25pY2FsIG9yZGVyLiBOZWVkIHRvIHN3aXRjaCAqaSB3aXRoIHByZXZpb3VzLiAqLwogICAgICAgICBvID0gaSAtIDE7CiAgICAgICAgIHdoaWxlICgxKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIHRtcCA9IG9bMV07Ci0gICAgICAgICAgICBvWzFdID0gb1swXTsKLSAgICAgICAgICAgIG9bMF0gPSB0bXA7CisgICAgICAgICAgICBQeV9VQ1M0IHRtcCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIG8rMSk7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgbysxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIG8pKTsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBvLCB0bXApOwogICAgICAgICAgICAgby0tOwotICAgICAgICAgICAgaWYgKG8gPCBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXN1bHQpKQorICAgICAgICAgICAgaWYgKG8gPCAwKQogICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgcHJldiA9IF9nZXRyZWNvcmRfZXgoKm8pLT5jb21iaW5pbmc7CisgICAgICAgICAgICBwcmV2ID0gX2dldHJlY29yZF9leChQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBvKSktPmNvbWJpbmluZzsKICAgICAgICAgICAgIGlmIChwcmV2ID09IDAgfHwgcHJldiA8PSBjdXIpCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSAgICAgICAgcHJldiA9IF9nZXRyZWNvcmRfZXgoKmkpLT5jb21iaW5pbmc7CisgICAgICAgIHByZXYgPSBfZ2V0cmVjb3JkX2V4KFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKS0+Y29tYmluaW5nOwogICAgIH0KICAgICByZXR1cm4gcmVzdWx0OwogfQogCiBzdGF0aWMgaW50Ci1maW5kX25mY19pbmRleChQeU9iamVjdCAqc2VsZiwgc3RydWN0IHJlaW5kZXgqIG5mYywgUHlfVU5JQ09ERSBjb2RlKQorZmluZF9uZmNfaW5kZXgoUHlPYmplY3QgKnNlbGYsIHN0cnVjdCByZWluZGV4KiBuZmMsIFB5X1VDUzQgY29kZSkKIHsKLSAgICBpbnQgaW5kZXg7CisgICAgdW5zaWduZWQgaW50IGluZGV4OwogICAgIGZvciAoaW5kZXggPSAwOyBuZmNbaW5kZXhdLnN0YXJ0OyBpbmRleCsrKSB7Ci0gICAgICAgIGludCBzdGFydCA9IG5mY1tpbmRleF0uc3RhcnQ7CisgICAgICAgIHVuc2lnbmVkIGludCBzdGFydCA9IG5mY1tpbmRleF0uc3RhcnQ7CiAgICAgICAgIGlmIChjb2RlIDwgc3RhcnQpCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIGlmIChjb2RlIDw9IHN0YXJ0ICsgbmZjW2luZGV4XS5jb3VudCkgewotICAgICAgICAgICAgaW50IGRlbHRhID0gY29kZSAtIHN0YXJ0OworICAgICAgICAgICAgdW5zaWduZWQgaW50IGRlbHRhID0gY29kZSAtIHN0YXJ0OwogICAgICAgICAgICAgcmV0dXJuIG5mY1tpbmRleF0uaW5kZXggKyBkZWx0YTsKICAgICAgICAgfQogICAgIH0KQEAgLTYyMywyNyArNjM0LDM2IEBACiBuZmNfbmZrYyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmlucHV0LCBpbnQgaykKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0OwotICAgIFB5X1VOSUNPREUgKmksICppMSwgKm8sICplbmQ7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKyAgICBQeV9VQ1M0ICpvdXRwdXQ7CisgICAgUHlfc3NpemVfdCBpLCBpMSwgbywgbGVuOwogICAgIGludCBmLGwsaW5kZXgsaW5kZXgxLGNvbWI7Ci0gICAgUHlfVU5JQ09ERSBjb2RlOwotICAgIFB5X1VOSUNPREUgKnNraXBwZWRbMjBdOworICAgIFB5X1VDUzQgY29kZTsKKyAgICBQeV9zc2l6ZV90IHNraXBwZWRbMjBdOwogICAgIGludCBjc2tpcHBlZCA9IDA7CiAKICAgICByZXN1bHQgPSBuZmRfbmZrZChzZWxmLCBpbnB1dCwgayk7CiAgICAgaWYgKCFyZXN1bHQpCiAgICAgICAgIHJldHVybiBOVUxMOworICAgIC8qIHJlc3VsdCB3aWxsIGJlICJyZWFkeSIuICovCisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHJlc3VsdCk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHJlc3VsdCk7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocmVzdWx0KTsKIAotICAgIC8qIFdlIGFyZSBnb2luZyB0byBtb2RpZnkgcmVzdWx0IGluLXBsYWNlLgotICAgICAgIElmIG5mZF9uZmtkIGlzIGNoYW5nZWQgdG8gc29tZXRpbWVzIHJldHVybiB0aGUgaW5wdXQsCi0gICAgICAgdGhpcyBjb2RlIG5lZWRzIHRvIGJlIHJldmlld2VkLiAqLwotICAgIGFzc2VydChyZXN1bHQgIT0gaW5wdXQpOwotCi0gICAgaSA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCk7Ci0gICAgZW5kID0gaSArIFB5VW5pY29kZV9HRVRfU0laRShyZXN1bHQpOwotICAgIG8gPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXN1bHQpOworICAgIC8qIFdlIGFsbG9jYXRlIGEgYnVmZmVyIGZvciB0aGUgb3V0cHV0LgorICAgICAgIElmIHdlIGZpbmQgdGhhdCB3ZSBtYWRlIG5vIGNoYW5nZXMsIHdlIHN0aWxsIHJldHVybgorICAgICAgIHRoZSBORkQgcmVzdWx0LiAqLworICAgIG91dHB1dCA9IFB5TWVtX01hbGxvYyhsZW4gKiBzaXplb2YoUHlfVUNTNCkpOworICAgIGlmICghb3V0cHV0KSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgaSA9IG8gPSAwOwogCiAgIGFnYWluOgotICAgIHdoaWxlIChpIDwgZW5kKSB7CisgICAgd2hpbGUgKGkgPCBsZW4pIHsKICAgICAgIGZvciAoaW5kZXggPSAwOyBpbmRleCA8IGNza2lwcGVkOyBpbmRleCsrKSB7CiAgICAgICAgICAgaWYgKHNraXBwZWRbaW5kZXhdID09IGkpIHsKICAgICAgICAgICAgICAgLyogKmkgY2hhcmFjdGVyIGlzIHNraXBwZWQuCkBAIC02NTYsMzMgKzY3Niw0MSBAQAogICAgICAgfQogICAgICAgLyogSGFuZ3VsIENvbXBvc2l0aW9uLiBXZSBkb24ndCBuZWVkIHRvIGNoZWNrIGZvciA8TFYsVD4KICAgICAgICAgIHBhaXJzLCBzaW5jZSB3ZSBhbHdheXMgaGF2ZSBkZWNvbXBvc2VkIGRhdGEuICovCi0gICAgICBpZiAoTEJhc2UgPD0gKmkgJiYgKmkgPCAoTEJhc2UrTENvdW50KSAmJgotICAgICAgICAgIGkgKyAxIDwgZW5kICYmCi0gICAgICAgICAgVkJhc2UgPD0gaVsxXSAmJiBpWzFdIDw9IChWQmFzZStWQ291bnQpKSB7CisgICAgICBjb2RlID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICBpZiAoTEJhc2UgPD0gY29kZSAmJiBjb2RlIDwgKExCYXNlK0xDb3VudCkgJiYKKyAgICAgICAgICBpICsgMSA8IGxlbiAmJgorICAgICAgICAgIFZCYXNlIDw9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkrMSkgJiYKKyAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKzEpIDw9IChWQmFzZStWQ291bnQpKSB7CiAgICAgICAgICAgaW50IExJbmRleCwgVkluZGV4OwotICAgICAgICAgIExJbmRleCA9IGlbMF0gLSBMQmFzZTsKLSAgICAgICAgICBWSW5kZXggPSBpWzFdIC0gVkJhc2U7CisgICAgICAgICAgTEluZGV4ID0gY29kZSAtIExCYXNlOworICAgICAgICAgIFZJbmRleCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkrMSkgLSBWQmFzZTsKICAgICAgICAgICBjb2RlID0gU0Jhc2UgKyAoTEluZGV4KlZDb3VudCtWSW5kZXgpKlRDb3VudDsKICAgICAgICAgICBpKz0yOwotICAgICAgICAgIGlmIChpIDwgZW5kICYmCi0gICAgICAgICAgICAgIFRCYXNlIDw9ICppICYmICppIDw9IChUQmFzZStUQ291bnQpKSB7Ci0gICAgICAgICAgICAgIGNvZGUgKz0gKmktVEJhc2U7CisgICAgICAgICAgaWYgKGkgPCBsZW4gJiYKKyAgICAgICAgICAgICAgVEJhc2UgPD0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkgJiYKKyAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkgPD0gKFRCYXNlK1RDb3VudCkpIHsKKyAgICAgICAgICAgICAgY29kZSArPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKS1UQmFzZTsKICAgICAgICAgICAgICAgaSsrOwogICAgICAgICAgIH0KLSAgICAgICAgICAqbysrID0gY29kZTsKKyAgICAgICAgICBvdXRwdXRbbysrXSA9IGNvZGU7CiAgICAgICAgICAgY29udGludWU7CiAgICAgICB9CiAKLSAgICAgIGYgPSBmaW5kX25mY19pbmRleChzZWxmLCBuZmNfZmlyc3QsICppKTsKKyAgICAgIC8qIGNvZGUgaXMgc3RpbGwgaW5wdXRbaV0gaGVyZSAqLworICAgICAgZiA9IGZpbmRfbmZjX2luZGV4KHNlbGYsIG5mY19maXJzdCwgY29kZSk7CiAgICAgICBpZiAoZiA9PSAtMSkgewotICAgICAgICAgICpvKysgPSAqaSsrOworICAgICAgICAgIG91dHB1dFtvKytdID0gY29kZTsKKyAgICAgICAgICBpKys7CiAgICAgICAgICAgY29udGludWU7CiAgICAgICB9CiAgICAgICAvKiBGaW5kIG5leHQgdW5ibG9ja2VkIGNoYXJhY3Rlci4gKi8KICAgICAgIGkxID0gaSsxOwogICAgICAgY29tYiA9IDA7Ci0gICAgICB3aGlsZSAoaTEgPCBlbmQpIHsKLSAgICAgICAgICBpbnQgY29tYjEgPSBfZ2V0cmVjb3JkX2V4KCppMSktPmNvbWJpbmluZzsKKyAgICAgIC8qIG91dHB1dCBiYXNlIGNoYXJhY3RlciBmb3Igbm93OyBtaWdodCBiZSB1cGRhdGVkIGxhdGVyLiAqLworICAgICAgb3V0cHV0W29dID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICB3aGlsZSAoaTEgPCBsZW4pIHsKKyAgICAgICAgICBQeV9VQ1M0IGNvZGUxID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaTEpOworICAgICAgICAgIGludCBjb21iMSA9IF9nZXRyZWNvcmRfZXgoY29kZTEpLT5jb21iaW5pbmc7CiAgICAgICAgICAgaWYgKGNvbWIpIHsKICAgICAgICAgICAgICAgaWYgKGNvbWIxID09IDApCiAgICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTY5Miw4ICs3MjAsOCBAQAogICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgIH0KICAgICAgICAgICB9Ci0gICAgICAgICAgbCA9IGZpbmRfbmZjX2luZGV4KHNlbGYsIG5mY19sYXN0LCAqaTEpOwotICAgICAgICAgIC8qICppMSBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCAqaS4gSWYgKmkxCisgICAgICAgICAgbCA9IGZpbmRfbmZjX2luZGV4KHNlbGYsIG5mY19sYXN0LCBjb2RlMSk7CisgICAgICAgICAgLyogaTEgY2Fubm90IGJlIGNvbWJpbmVkIHdpdGggaS4gSWYgaTEKICAgICAgICAgICAgICBpcyBhIHN0YXJ0ZXIsIHdlIGRvbid0IG5lZWQgdG8gbG9vayBmdXJ0aGVyLgogICAgICAgICAgICAgIE90aGVyd2lzZSwgcmVjb3JkIHRoZSBjb21iaW5pbmcgY2xhc3MuICovCiAgICAgICAgICAgaWYgKGwgPT0gLTEpIHsKQEAgLTcxMiwxOSArNzQwLDI4IEBACiAgICAgICAgICAgICAgIGdvdG8gbm90X2NvbWJpbmFibGU7CiAKICAgICAgICAgICAvKiBSZXBsYWNlIHRoZSBvcmlnaW5hbCBjaGFyYWN0ZXIuICovCi0gICAgICAgICAgKmkgPSBjb2RlOworICAgICAgICAgIG91dHB1dFtvXSA9IGNvZGU7CiAgICAgICAgICAgLyogTWFyayB0aGUgc2Vjb25kIGNoYXJhY3RlciB1bnVzZWQuICovCiAgICAgICAgICAgYXNzZXJ0KGNza2lwcGVkIDwgMjApOwogICAgICAgICAgIHNraXBwZWRbY3NraXBwZWQrK10gPSBpMTsKICAgICAgICAgICBpMSsrOwotICAgICAgICAgIGYgPSBmaW5kX25mY19pbmRleChzZWxmLCBuZmNfZmlyc3QsICppKTsKKyAgICAgICAgICBmID0gZmluZF9uZmNfaW5kZXgoc2VsZiwgbmZjX2ZpcnN0LCBvdXRwdXRbb10pOwogICAgICAgICAgIGlmIChmID09IC0xKQogICAgICAgICAgICAgICBicmVhazsKICAgICAgIH0KLSAgICAgICpvKysgPSAqaSsrOworICAgICAgLyogT3V0cHV0IGNoYXJhY3RlciB3YXMgYWxyZWFkeSB3cml0dGVuLgorICAgICAgICAgSnVzdCBhZHZhbmNlIHRoZSBpbmRpY2VzLiAqLworICAgICAgbysrOyBpKys7CiAgICAgfQotICAgIGlmIChvICE9IGVuZCkKLSAgICAgICAgUHlVbmljb2RlX1Jlc2l6ZSgmcmVzdWx0LCBvIC0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KSk7CisgICAgaWYgKG8gPT0gbGVuKSB7CisgICAgICAgIC8qIE5vIGNoYW5nZXMuIFJldHVybiBvcmlnaW5hbCBzdHJpbmcuICovCisgICAgICAgIFB5TWVtX0ZyZWUob3V0cHV0KTsKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICB9CisgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dCwgbyk7CisgICAgUHlNZW1fRnJlZShvdXRwdXQpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKQEAgLTczMiw3ICs3NjksOSBAQAogc3RhdGljIGludAogaXNfbm9ybWFsaXplZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmlucHV0LCBpbnQgbmZjLCBpbnQgaykKIHsKLSAgICBQeV9VTklDT0RFICppLCAqZW5kOworICAgIFB5X3NzaXplX3QgaSwgbGVuOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CiAgICAgdW5zaWduZWQgY2hhciBwcmV2X2NvbWJpbmluZyA9IDAsIHF1aWNrY2hlY2tfbWFzazsKIAogICAgIC8qIEFuIG9sZGVyIHZlcnNpb24gb2YgdGhlIGRhdGFiYXNlIGlzIHJlcXVlc3RlZCwgcXVpY2tjaGVja3MgbXVzdCBiZQpAQCAtNzQ0LDEwICs3ODMsMTMgQEAKICAgICAgICBhcyBkZXNjcmliZWQgaW4gaHR0cDovL3VuaWNvZGUub3JnL3JlcG9ydHMvdHIxNS8jQW5uZXg4LiAqLwogICAgIHF1aWNrY2hlY2tfbWFzayA9IDMgPDwgKChuZmMgPyA0IDogMCkgKyAoayA/IDIgOiAwKSk7CiAKLSAgICBpID0gUHlVbmljb2RlX0FTX1VOSUNPREUoaW5wdXQpOwotICAgIGVuZCA9IGkgKyBQeVVuaWNvZGVfR0VUX1NJWkUoaW5wdXQpOwotICAgIHdoaWxlIChpIDwgZW5kKSB7Ci0gICAgICAgIGNvbnN0IF9QeVVuaWNvZGVfRGF0YWJhc2VSZWNvcmQgKnJlY29yZCA9IF9nZXRyZWNvcmRfZXgoKmkrKyk7CisgICAgaSA9IDA7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKGlucHV0KTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoaW5wdXQpOworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGlucHV0KTsKKyAgICB3aGlsZSAoaSA8IGxlbikgeworICAgICAgICBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSsrKTsKKyAgICAgICAgY29uc3QgX1B5VW5pY29kZV9EYXRhYmFzZVJlY29yZCAqcmVjb3JkID0gX2dldHJlY29yZF9leChjaCk7CiAgICAgICAgIHVuc2lnbmVkIGNoYXIgY29tYmluaW5nID0gcmVjb3JkLT5jb21iaW5pbmc7CiAgICAgICAgIHVuc2lnbmVkIGNoYXIgcXVpY2tjaGVjayA9IHJlY29yZC0+bm9ybWFsaXphdGlvbl9xdWlja19jaGVjazsKIApAQCAtNzc2LDcgKzgxOCwxMCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICZmb3JtLCAmUHlVbmljb2RlX1R5cGUsICZpbnB1dCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKFB5VW5pY29kZV9HZXRTaXplKGlucHV0KSA9PSAwKSB7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShpbnB1dCkgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGlucHV0KSA9PSAwKSB7CiAgICAgICAgIC8qIFNwZWNpYWwgY2FzZSBlbXB0eSBpbnB1dCBzdHJpbmdzLCBzaW5jZSByZXNpemluZwogICAgICAgICAgICB0aGVtICBsYXRlciB3b3VsZCBjYXVzZSBpbnRlcm5hbCBlcnJvcnMuICovCiAgICAgICAgIFB5X0lOQ1JFRihpbnB1dCk7CkBAIC04ODIsOSArOTI3LDE5IEBACiAgICAgICAgICgweDJCNzQwIDw9IGNvZGUgJiYgY29kZSA8PSAweDJCODFEKTsgICAvKiBDSksgSWRlb2dyYXBoIEV4dGVuc2lvbiBEICovCiB9CiAKKy8qIG1hY3JvcyB1c2VkIHRvIGRldGVybWluZSBpZiB0aGUgZ2l2ZW4gY29kZXBvaW50IGlzIGluIHRoZSBQVUEgcmFuZ2UgdGhhdAorICogd2UgYXJlIHVzaW5nIHRvIHN0b3JlIGFsaWFzZXMgYW5kIG5hbWVkIHNlcXVlbmNlcyAqLworI2RlZmluZSBJU19BTElBUyhjcCkgKChjcCA+PSBhbGlhc2VzX3N0YXJ0KSAmJiAoY3AgPCBhbGlhc2VzX2VuZCkpCisjZGVmaW5lIElTX05BTUVEX1NFUShjcCkgKChjcCA+PSBuYW1lZF9zZXF1ZW5jZXNfc3RhcnQpICYmIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGNwIDwgbmFtZWRfc2VxdWVuY2VzX2VuZCkpCisKIHN0YXRpYyBpbnQKLV9nZXR1Y25hbWUoUHlPYmplY3QgKnNlbGYsIFB5X1VDUzQgY29kZSwgY2hhciogYnVmZmVyLCBpbnQgYnVmbGVuKQorX2dldHVjbmFtZShQeU9iamVjdCAqc2VsZiwgUHlfVUNTNCBjb2RlLCBjaGFyKiBidWZmZXIsIGludCBidWZsZW4sCisgICAgICAgICAgIGludCB3aXRoX2FsaWFzX2FuZF9zZXEpCiB7CisgICAgLyogRmluZCB0aGUgbmFtZSBhc3NvY2lhdGVkIHdpdGggdGhlIGdpdmVuIGNvZGVwb2ludC4KKyAgICAgKiBJZiB3aXRoX2FsaWFzX2FuZF9zZXEgaXMgMSwgY2hlY2sgZm9yIG5hbWVzIGluIHRoZSBQcml2YXRlIFVzZSBBcmVhIDE1CisgICAgICogdGhhdCB3ZSBhcmUgdXNpbmcgZm9yIGFsaWFzZXMgYW5kIG5hbWVkIHNlcXVlbmNlcy4gKi8KICAgICBpbnQgb2Zmc2V0OwogICAgIGludCBpOwogICAgIGludCB3b3JkOwpAQCAtODkzLDggKzk0OCwxNiBAQAogICAgIGlmIChjb2RlID49IDB4MTEwMDAwKQogICAgICAgICByZXR1cm4gMDsKIAorICAgIC8qIFhYWCBzaG91bGQgd2UganVzdCBza2lwIGFsbCB0aGUgY29kZXBvaW50cyBpbiB0aGUgUFVBcyBoZXJlPyAqLworICAgIGlmICghd2l0aF9hbGlhc19hbmRfc2VxICYmIChJU19BTElBUyhjb2RlKSB8fCBJU19OQU1FRF9TRVEoY29kZSkpKQorICAgICAgICByZXR1cm4gMDsKKwogICAgIGlmIChzZWxmICYmIFVDRF9DaGVjayhzZWxmKSkgewotICAgICAgICBjb25zdCBjaGFuZ2VfcmVjb3JkICpvbGQgPSBnZXRfb2xkX3JlY29yZChzZWxmLCBjb2RlKTsKKyAgICAgICAgLyogaW4gMy4yLjAgdGhlcmUgYXJlIG5vIGFsaWFzZXMgYW5kIG5hbWVkIHNlcXVlbmNlcyAqLworICAgICAgICBjb25zdCBjaGFuZ2VfcmVjb3JkICpvbGQ7CisgICAgICAgIGlmIChJU19BTElBUyhjb2RlKSB8fCBJU19OQU1FRF9TRVEoY29kZSkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgb2xkID0gZ2V0X29sZF9yZWNvcmQoc2VsZiwgY29kZSk7CiAgICAgICAgIGlmIChvbGQtPmNhdGVnb3J5X2NoYW5nZWQgPT0gMCkgewogICAgICAgICAgICAgLyogdW5hc3NpZ25lZCAqLwogICAgICAgICAgICAgcmV0dXJuIDA7CkBAIC05NzgsNyArMTA0MSw3IEBACiAgICAgLyogY2hlY2sgaWYgY29kZSBjb3JyZXNwb25kcyB0byB0aGUgZ2l2ZW4gbmFtZSAqLwogICAgIGludCBpOwogICAgIGNoYXIgYnVmZmVyW05BTUVfTUFYTEVOXTsKLSAgICBpZiAoIV9nZXR1Y25hbWUoc2VsZiwgY29kZSwgYnVmZmVyLCBzaXplb2YoYnVmZmVyKSkpCisgICAgaWYgKCFfZ2V0dWNuYW1lKHNlbGYsIGNvZGUsIGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlciksIDEpKQogICAgICAgICByZXR1cm4gMDsKICAgICBmb3IgKGkgPSAwOyBpIDwgbmFtZWxlbjsgaSsrKSB7CiAgICAgICAgIGlmIChQeV9UT1VQUEVSKFB5X0NIQVJNQVNLKG5hbWVbaV0pKSAhPSBidWZmZXJbaV0pCkBAIC05OTQsNyArMTA1Nyw3IEBACiAgICAgKmxlbiA9IC0xOwogICAgIGZvciAoaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7CiAgICAgICAgIGNoYXIgKnMgPSBoYW5ndWxfc3lsbGFibGVzW2ldW2NvbHVtbl07Ci0gICAgICAgIGxlbjEgPSBzdHJsZW4ocyk7CisgICAgICAgIGxlbjEgPSBQeV9TQUZFX0RPV05DQVNUKHN0cmxlbihzKSwgc2l6ZV90LCBpbnQpOwogICAgICAgICBpZiAobGVuMSA8PSAqbGVuKQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIGlmIChzdHJuY21wKHN0ciwgcywgbGVuMSkgPT0gMCkgewpAQCAtMTAwOCw4ICsxMDcxLDI4IEBACiB9CiAKIHN0YXRpYyBpbnQKLV9nZXRjb2RlKFB5T2JqZWN0KiBzZWxmLCBjb25zdCBjaGFyKiBuYW1lLCBpbnQgbmFtZWxlbiwgUHlfVUNTNCogY29kZSkKK19jaGVja19hbGlhc19hbmRfc2VxKHVuc2lnbmVkIGludCBjcCwgUHlfVUNTNCogY29kZSwgaW50IHdpdGhfbmFtZWRfc2VxKQogeworICAgIC8qIGNoZWNrIGlmIG5hbWVkIHNlcXVlbmNlcyBhcmUgYWxsb3dlZCAqLworICAgIGlmICghd2l0aF9uYW1lZF9zZXEgJiYgSVNfTkFNRURfU0VRKGNwKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgLyogaWYgdGhlIGNvZGVwb2ludCBpcyBpbiB0aGUgUFVBIHJhbmdlIHRoYXQgd2UgdXNlIGZvciBhbGlhc2VzLAorICAgICAqIGNvbnZlcnQgaXQgdG8gb2J0YWluIHRoZSByaWdodCBjb2RlcG9pbnQgKi8KKyAgICBpZiAoSVNfQUxJQVMoY3ApKQorICAgICAgICAqY29kZSA9IG5hbWVfYWxpYXNlc1tjcC1hbGlhc2VzX3N0YXJ0XTsKKyAgICBlbHNlCisgICAgICAgICpjb2RlID0gY3A7CisgICAgcmV0dXJuIDE7Cit9CisKK3N0YXRpYyBpbnQKK19nZXRjb2RlKFB5T2JqZWN0KiBzZWxmLCBjb25zdCBjaGFyKiBuYW1lLCBpbnQgbmFtZWxlbiwgUHlfVUNTNCogY29kZSwKKyAgICAgICAgIGludCB3aXRoX25hbWVkX3NlcSkKK3sKKyAgICAvKiBSZXR1cm4gdGhlIGNvZGVwb2ludCBhc3NvY2lhdGVkIHdpdGggdGhlIGdpdmVuIG5hbWUuCisgICAgICogTmFtZWQgYWxpYXNlcyBhcmUgcmVzb2x2ZWQgdG9vICh1bmxlc3Mgc2VsZiAhPSBOVUxMIChpLmUuIHdlIGFyZSB1c2luZworICAgICAqIDMuMi4wKSkuICBJZiB3aXRoX25hbWVkX3NlcSBpcyAxLCByZXR1cm5zIHRoZSBQVUEgY29kZXBvaW50IHRoYXQgd2UgYXJlCisgICAgICogdXNpbmcgZm9yIHRoZSBuYW1lZCBzZXF1ZW5jZSwgYW5kIHRoZSBjYWxsZXIgbXVzdCB0aGVuIGNvbnZlcnQgaXQuICovCiAgICAgdW5zaWduZWQgaW50IGgsIHY7CiAgICAgdW5zaWduZWQgaW50IG1hc2sgPSBjb2RlX3NpemUtMTsKICAgICB1bnNpZ25lZCBpbnQgaSwgaW5jcjsKQEAgLTEwNjUsMTAgKzExNDgsOCBAQAogICAgIHYgPSBjb2RlX2hhc2hbaV07CiAgICAgaWYgKCF2KQogICAgICAgICByZXR1cm4gMDsKLSAgICBpZiAoX2NtcG5hbWUoc2VsZiwgdiwgbmFtZSwgbmFtZWxlbikpIHsKLSAgICAgICAgKmNvZGUgPSB2OwotICAgICAgICByZXR1cm4gMTsKLSAgICB9CisgICAgaWYgKF9jbXBuYW1lKHNlbGYsIHYsIG5hbWUsIG5hbWVsZW4pKQorICAgICAgICByZXR1cm4gX2NoZWNrX2FsaWFzX2FuZF9zZXEodiwgY29kZSwgd2l0aF9uYW1lZF9zZXEpOwogICAgIGluY3IgPSAoaCBeIChoID4+IDMpKSAmIG1hc2s7CiAgICAgaWYgKCFpbmNyKQogICAgICAgICBpbmNyID0gbWFzazsKQEAgLTEwNzcsMTAgKzExNTgsOCBAQAogICAgICAgICB2ID0gY29kZV9oYXNoW2ldOwogICAgICAgICBpZiAoIXYpCiAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgaWYgKF9jbXBuYW1lKHNlbGYsIHYsIG5hbWUsIG5hbWVsZW4pKSB7Ci0gICAgICAgICAgICAqY29kZSA9IHY7Ci0gICAgICAgICAgICByZXR1cm4gMTsKLSAgICAgICAgfQorICAgICAgICBpZiAoX2NtcG5hbWUoc2VsZiwgdiwgbmFtZSwgbmFtZWxlbikpCisgICAgICAgICAgICByZXR1cm4gX2NoZWNrX2FsaWFzX2FuZF9zZXEodiwgY29kZSwgd2l0aF9uYW1lZF9zZXEpOwogICAgICAgICBpbmNyID0gaW5jciA8PCAxOwogICAgICAgICBpZiAoaW5jciA+IG1hc2spCiAgICAgICAgICAgICBpbmNyID0gaW5jciBeIGNvZGVfcG9seTsKQEAgLTExMTgsNyArMTE5Nyw3IEBACiAgICAgaWYgKGMgPT0gKFB5X1VDUzQpLTEpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKCFfZ2V0dWNuYW1lKHNlbGYsIGMsIG5hbWUsIHNpemVvZihuYW1lKSkpIHsKKyAgICBpZiAoIV9nZXR1Y25hbWUoc2VsZiwgYywgbmFtZSwgc2l6ZW9mKG5hbWUpLCAwKSkgewogICAgICAgICBpZiAoZGVmb2JqID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAibm8gc3VjaCBuYW1lIik7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTExNDMsMjggKzEyMjIsMjYgQEAKIHVuaWNvZGVkYXRhX2xvb2t1cChQeU9iamVjdCogc2VsZiwgUHlPYmplY3QqIGFyZ3MpCiB7CiAgICAgUHlfVUNTNCBjb2RlOwotICAgIFB5X1VOSUNPREUgc3RyWzJdOwogCiAgICAgY2hhciogbmFtZTsKICAgICBpbnQgbmFtZWxlbjsKKyAgICB1bnNpZ25lZCBpbnQgaW5kZXg7CiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzIzpsb29rdXAiLCAmbmFtZSwgJm5hbWVsZW4pKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGlmICghX2dldGNvZGUoc2VsZiwgbmFtZSwgbmFtZWxlbiwgJmNvZGUpKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19LZXlFcnJvciwgInVuZGVmaW5lZCBjaGFyYWN0ZXIgbmFtZSAnJXMnIiwKLSAgICAgICAgICAgICAgICAgICAgIG5hbWUpOworICAgIGlmICghX2dldGNvZGUoc2VsZiwgbmFtZSwgbmFtZWxlbiwgJmNvZGUsIDEpKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19LZXlFcnJvciwgInVuZGVmaW5lZCBjaGFyYWN0ZXIgbmFtZSAnJXMnIiwgbmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLQotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICBpZiAoY29kZSA+PSAweDEwMDAwKSB7Ci0gICAgICAgIHN0clswXSA9IDB4ZDgwMCArICgoY29kZSAtIDB4MTAwMDApID4+IDEwKTsKLSAgICAgICAgc3RyWzFdID0gMHhkYzAwICsgKChjb2RlIC0gMHgxMDAwMCkgJiAweDNmZik7Ci0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoc3RyLCAyKTsKKyAgICAvLyBjaGVjayBpZiBjb2RlIGlzIGluIHRoZSBQVUEgcmFuZ2UgdGhhdCB3ZSB1c2UgZm9yIG5hbWVkIHNlcXVlbmNlcworICAgIC8vIGFuZCBjb252ZXJ0IGl0CisgICAgaWYgKElTX05BTUVEX1NFUShjb2RlKSkgeworICAgICAgICBpbmRleCA9IGNvZGUtbmFtZWRfc2VxdWVuY2VzX3N0YXJ0OworICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfMkJZVEVfS0lORCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZWRfc2VxdWVuY2VzW2luZGV4XS5zZXEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWVkX3NlcXVlbmNlc1tpbmRleF0uc2VxbGVuKTsKICAgICB9Ci0jZW5kaWYKLSAgICBzdHJbMF0gPSAoUHlfVU5JQ09ERSkgY29kZTsKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHN0ciwgMSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tT3JkaW5hbChjb2RlKTsKIH0KIAogLyogWFhYIEFkZCBkb2Mgc3RyaW5ncy4gKi8KZGlmZiAtLWdpdCBhL01vZHVsZXMvdW5pY29kZW5hbWVfZGIuaCBiL01vZHVsZXMvdW5pY29kZW5hbWVfZGIuaAppbmRleCA4ODMwNTYwLi43NGQ3Y2M3IDEwMDY0NAotLS0gYS9Nb2R1bGVzL3VuaWNvZGVuYW1lX2RiLmgKKysrIGIvTW9kdWxlcy91bmljb2RlbmFtZV9kYi5oCkBAIC00LDI1NyArNCwyNTggQEAKIAogLyogbGV4aWNvbiAqLwogc3RhdGljIHVuc2lnbmVkIGNoYXIgbGV4aWNvbltdID0gewotICAgIDc2LCA2OSwgODQsIDg0LCA2OSwgMjEwLCA4NywgNzMsIDg0LCAyMDAsIDgzLCA3NywgNjUsIDc2LCAyMDQsIDgzLCA4OSwgCi0gICAgNzYsIDc2LCA2NSwgNjYsIDc2LCAxOTcsIDgzLCA3MywgNzEsIDIwNiwgNjcsIDY1LCA4MCwgNzMsIDg0LCA2NSwgMjA0LCAKKyAgICA3NiwgNjksIDg0LCA4NCwgNjksIDIxMCwgODcsIDczLCA4NCwgMjAwLCA4MywgODksIDc2LCA3NiwgNjUsIDY2LCA3NiwgCisgICAgMTk3LCA4MywgNzcsIDY1LCA3NiwgMjA0LCA4MywgNzMsIDcxLCAyMDYsIDY3LCA2NSwgODAsIDczLCA4NCwgNjUsIDIwNCwgCiAgICAgNzYsIDY1LCA4NCwgNzMsIDIwNiwgODksIDIwMSwgNjcsIDc0LCAyMDMsIDY5LCA3MSwgODksIDgwLCA4NCwgNzMsIDY1LCAKICAgICAyMDYsIDcyLCA3MywgNjksIDgyLCA3OSwgNzEsIDc2LCA4OSwgODAsIDIwMCwgNjUsIDgyLCA2NSwgNjYsIDczLCAxOTUsIAogICAgIDY3LCA3OSwgNzcsIDgwLCA2NSwgODQsIDczLCA2NiwgNzMsIDc2LCA3MywgODQsIDIxNywgNzcsIDY1LCA4NCwgNzIsIDY5LCAKICAgICA3NywgNjUsIDg0LCA3MywgNjcsIDY1LCAyMDQsIDY3LCA4NSwgNzgsIDY5LCA3MywgNzAsIDc5LCA4MiwgMjA1LCA4MywgODksIAogICAgIDc3LCA2NiwgNzksIDIwNCwgNzAsIDc5LCA4MiwgNzcsIDEyOCwgNjcsIDY1LCA3OCwgNjUsIDY4LCA3MywgNjUsIDIwNiwgCiAgICAgODMsIDg5LCA3NiwgNzYsIDY1LCA2NiwgNzMsIDY3LCAyMTEsIDY2LCA2NSwgNzcsIDg1LCAyMDUsIDY4LCA3MywgNzEsIDczLCAKLSAgICAyMTIsIDY2LCA3OSwgNzYsIDE5NiwgNzIsIDY1LCA3OCwgNzEsIDg1LCAyMDQsIDY1LCA3OCwgMTk2LCA3MSwgODIsIDY5LCAKKyAgICAyMTIsIDY1LCA3OCwgMTk2LCA2NiwgNzksIDc2LCAxOTYsIDcyLCA2NSwgNzgsIDcxLCA4NSwgMjA0LCA3MSwgODIsIDY5LCAKICAgICA2OSwgMjAzLCA3NiwgNzMsIDcxLCA2NSwgODQsIDg1LCA4MiwgMTk3LCA3NywgODUsIDgzLCA3MywgNjcsIDY1LCAyMDQsIAogICAgIDY5LCA4NCwgNzIsIDczLCA3OSwgODAsIDczLCAxOTUsIDg0LCA3MywgNzcsIDY5LCAyMTEsIDg2LCA3OSwgODcsIDY5LCAKICAgICAyMDQsIDcwLCA3OSwgMjEwLCA3MywgODQsIDY1LCA3NiwgNzMsIDE5NSwgNjcsIDg5LCA4MiwgNzMsIDc2LCA3NiwgNzMsIAogICAgIDE5NSwgODIsIDY1LCA2OCwgNzMsIDY3LCA2NSwgMjA0LCA4MywgNjUsIDc4LCA4MywgNDUsIDgzLCA2OSwgODIsIDczLCAKLSAgICAxOTgsIDY3LCA3MywgODIsIDY3LCA3NiwgNjksIDE5NiwgNjcsIDc5LCA3NywgNjYsIDczLCA3OCwgNzMsIDc4LCAxOTksIAotICAgIDg0LCA2NSwgMjAxLCA4NiwgNjUsIDIwMSwgNzAsIDczLCA3OCwgNjUsIDIwNCwgODMsIDgxLCA4NSwgNjUsIDgyLCAxOTcsIAotICAgIDc2LCA2OSwgNzAsIDIxMiwgODYsIDY1LCA4MiwgNzMsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY2LCA4MiwgNjUsIDczLCA3NiwgCi0gICAgNzYsIDE5NywgODAsIDY1LCA4NCwgODQsIDY5LCA4MiwgMjA2LCA4MiwgNzMsIDcxLCA3MiwgMjEyLCA2NiwgODksIDkwLCAKLSAgICA2NSwgNzgsIDg0LCA3MywgNzgsIDE5NywgNzMsIDgzLCA3OSwgNzYsIDY1LCA4NCwgNjksIDE5NiwgNjUsIDY2LCA3OSwgODYsIAotICAgIDY5LCAxMjgsIDc4LCA4NSwgNzcsIDY2LCA2OSwgMjEwLCA2OCwgNzksIDg1LCA2NiwgNzYsIDE5NywgODMsIDczLCA3MSwgCi0gICAgNzgsIDEyOCwgMTk0LCA2NiwgNjksIDc2LCA3OSwgODcsIDEyOCwgNzUsIDY1LCA4NCwgNjUsIDc1LCA2NSwgNzgsIDE5MywgCi0gICAgNzUsIDY1LCA3OCwgNzEsIDg4LCAyMDEsIDc2LCA3MywgNzgsIDY5LCA2NSwgMjEwLCA3NywgNzksIDY4LCA3MywgNzAsIDczLCAKLSAgICA2OSwgMjEwLCA4NCwgNzMsIDY2LCA2OSwgODQsIDY1LCAyMDYsIDY1LCAxMjgsIDY4LCA3OSwgMjEyLCA3NywgNjksIDY5LCAKLSAgICAyMDUsIDc3LCA4OSwgNjUsIDc4LCA3NywgNjUsIDIxMCwgNzksIDE5OCwgNjcsIDY1LCA4MiwgODIsIDczLCA2OSwgMjEwLCAKLSAgICA4NywgNzIsIDczLCA4NCwgMTk3LCA2NSwgODIsIDgyLCA3OSwgODcsIDEyOCwgODUsIDEyOCwgNzMsIDc4LCA3MywgODQsIAotICAgIDczLCA2NSwgMjA0LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgMjA0LCA3MywgMTI4LCA4OSwgNjksIDIwMCwgNzksIAotICAgIDEyOCwgNjUsIDgyLCA4MiwgNzksIDIxNSwgNzcsIDY1LCA4MiwgNzUsIDEyOCwgNjUsIDY2LCA3OSwgODYsIDE5NywgNjcsIAotICAgIDc5LCA4MCwgODQsIDczLCAxOTUsIDgwLCA3MiwgNjUsIDgzLCA2OSwgNDUsIDE5NywgNzcsIDc5LCA3OCwgNzEsIDc5LCA3NiwgCi0gICAgNzMsIDY1LCAyMDYsIDY4LCA2OSwgODYsIDY1LCA3OCwgNjUsIDcxLCA2NSwgODIsIDIwMSwgNjYsIDc2LCA2NSwgNjcsIAotICAgIDIwMywgNzUsIDcyLCA3NywgNjksIDIxMCwgODQsIDczLCA3NiwgMTk3LCA4MCwgNjUsIDgyLCA2OSwgNzgsIDg0LCA3MiwgCi0gICAgNjksIDgzLCA3MywgOTAsIDY5LCAxOTYsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDEyOCwgODQsIDcyLCA2NSwgMjA1LCAKLSAgICA3NCwgNzksIDc4LCA3MSwgODMsIDY5LCA3OSwgNzgsIDE5OSwgODMsIDg0LCA4MiwgNzksIDc1LCA2OSwgMTI4LCA4MywgODEsIAotICAgIDg1LCA2NSwgODIsIDY5LCAxOTYsIDY2LCA3OSwgMjE2LCA3MiwgNjksIDY2LCA4MiwgNjksIDIxNSwgODAsIDc2LCA4NSwgCi0gICAgMjExLCA4MiwgNzMsIDcxLCA3MiwgODQsIDg3LCA2NSwgODIsIDY4LCAyMTEsIDY4LCA4MiwgNjUsIDg3LCA3MywgNzgsIDcxLCAKLSAgICAyMTEsIDY3LCA3MiwgNzksIDgzLCA2OSwgNzksIDc4LCAxOTksIDcyLCA2NSwgNzYsIDcwLCA4NywgNzMsIDY4LCA4NCwgCi0gICAgMjAwLCA2NiwgNjUsIDc2LCA3MywgNzgsIDY5LCA4MywgMTk3LCA3MSwgNjksIDc5LCA4MiwgNzEsIDczLCA2NSwgMjA2LCAKLSAgICA3MiwgNzksIDc5LCA3NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgMjA1LCA4MCwgNzIsIDY1LCA4MywgNjksIAotICAgIDQ1LCAxOTYsIDY1LCA3NiwgNjcsIDcyLCA2OSwgNzcsIDczLCA2NywgNjUsIDIwNCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNzMsIDE5NSwgNjUsIDc2LCA2OSwgMTk4LCA3MiwgNjksIDY1LCA4NiwgMjE3LCA4NCwgNzksIDEyOCwgCi0gICAgODQsIDg3LCA3OSwgMTI4LCA3OSwgODYsIDY5LCAyMTAsIDIxMywgNjYsIDgyLCA2NSwgNzIsIDc3LCAyMDEsIDgzLCA2NywgCi0gICAgODIsIDczLCA4MCwgMjEyLCA4NSwgMjA4LCA3NiwgNzksIDIxNSwgNzksIDc4LCA2OSwgMTI4LCA4NCwgODcsIDIwNywgNjgsIAorICAgIDE5OCwgODQsIDY1LCA3NywgNzMsIDIwNCwgNjcsIDczLCA4MiwgNjcsIDc2LCA2OSwgMTk2LCA2NywgNzksIDc3LCA2NiwgCisgICAgNzMsIDc4LCA3MywgNzgsIDE5OSwgODQsIDY1LCAyMDEsIDg2LCA2NSwgMjAxLCA3MCwgNzMsIDc4LCA2NSwgMjA0LCA4MywgCisgICAgODEsIDg1LCA2NSwgODIsIDE5NywgNzYsIDY5LCA3MCwgMjEyLCA4NiwgNjUsIDgyLCA3MywgNjUsIDg0LCA3MywgNzksIAorICAgIDIwNiwgNjYsIDgyLCA2NSwgNzMsIDc2LCA3NiwgMTk3LCA4MCwgNjUsIDg0LCA4NCwgNjksIDgyLCAyMDYsIDgyLCA3MywgCisgICAgNzEsIDcyLCAyMTIsIDY2LCA4OSwgOTAsIDY1LCA3OCwgODQsIDczLCA3OCwgMTk3LCA3MywgODMsIDc5LCA3NiwgNjUsIDg0LCAKKyAgICA2OSwgMTk2LCA2NSwgNjYsIDc5LCA4NiwgNjksIDEyOCwgNzgsIDg1LCA3NywgNjYsIDY5LCAyMTAsIDY4LCA3OSwgODUsIAorICAgIDY2LCA3NiwgMTk3LCA4MywgNzMsIDcxLCA3OCwgMTI4LCA2NiwgNjksIDc2LCA3OSwgODcsIDEyOCwgNzUsIDY1LCA4NCwgCisgICAgNjUsIDc1LCA2NSwgNzgsIDE5MywgMTk0LCA3NSwgNjUsIDc4LCA3MSwgODgsIDIwMSwgNzcsIDc5LCA2OCwgNzMsIDcwLCAKKyAgICA3MywgNjksIDIxMCwgNzYsIDczLCA3OCwgNjksIDY1LCAyMTAsIDg0LCA3MywgNjYsIDY5LCA4NCwgNjUsIDIwNiwgNjgsIAorICAgIDc5LCAyMTIsIDY1LCAxMjgsIDc3LCA2OSwgNjksIDIwNSwgNzcsIDg5LCA2NSwgNzgsIDc3LCA2NSwgMjEwLCA4NiwgNjksIAorICAgIDgyLCA4NCwgNzMsIDY3LCA2NSwgMjA0LCA3NSwgNzIsIDc3LCA2OSwgMjEwLCA3OSwgMTk4LCA4NywgNzIsIDczLCA4NCwgCisgICAgMTk3LCA2NywgNjUsIDgyLCA4MiwgNzMsIDY5LCAyMTAsIDY1LCA4MiwgODIsIDc5LCA4NywgMTI4LCA4NSwgMTI4LCA3MywgCisgICAgNzgsIDczLCA4NCwgNzMsIDY1LCAyMDQsIDY1LCA2NiwgNzksIDg2LCAxOTcsIDczLCAxMjgsIDg5LCA2OSwgMjAwLCA3OSwgCisgICAgMTI4LCA3NywgNjUsIDgyLCA3NSwgMTI4LCA2NSwgODIsIDgyLCA3OSwgMjE1LCA2NywgNzksIDgwLCA4NCwgNzMsIDE5NSwgCisgICAgODAsIDcyLCA2NSwgODMsIDY5LCA0NSwgMTk3LCA3NywgNzksIDc4LCA3MSwgNzksIDc2LCA3MywgNjUsIDIwNiwgNjgsIDY5LCAKKyAgICA4NiwgNjUsIDc4LCA2NSwgNzEsIDY1LCA4MiwgMjAxLCA2NiwgNzYsIDY1LCA2NywgMjAzLCA4NCwgNzMsIDc2LCAxOTcsIAorICAgIDgwLCA2NSwgODIsIDY5LCA3OCwgODQsIDcyLCA2OSwgODMsIDczLCA5MCwgNjksIDE5NiwgODMsIDg5LCA3NywgNjYsIDc5LCAKKyAgICA3NiwgMTI4LCA4NCwgNzIsIDY1LCAyMDUsIDc0LCA3OSwgNzgsIDcxLCA4MywgNjksIDc5LCA3OCwgMTk5LCA4MywgODQsIAorICAgIDgyLCA3OSwgNzUsIDY5LCAxMjgsIDgzLCA4MSwgODUsIDY1LCA4MiwgNjksIDE5NiwgNjYsIDc5LCAyMTYsIDcyLCA2OSwgCisgICAgNjYsIDgyLCA2OSwgMjE1LCA4MCwgNzYsIDg1LCAyMTEsIDgyLCA3MywgNzEsIDcyLCA4NCwgODcsIDY1LCA4MiwgNjgsIAorICAgIDIxMSwgNjgsIDgyLCA2NSwgODcsIDczLCA3OCwgNzEsIDIxMSwgNjcsIDcyLCA3OSwgODMsIDY5LCA3OSwgNzgsIDE5OSwgCisgICAgNzEsIDY5LCA3OSwgODIsIDcxLCA3MywgNjUsIDIwNiwgNzIsIDY1LCA3NiwgNzAsIDg3LCA3MywgNjgsIDg0LCAyMDAsIDY2LCAKKyAgICA2NSwgNzYsIDczLCA3OCwgNjksIDgzLCAxOTcsIDcyLCA3OSwgNzksIDc1LCAxMjgsIDIxMywgNzMsIDY4LCA2OSwgNzksIAorICAgIDcxLCA4MiwgNjUsIDIwNSwgODAsIDcyLCA2NSwgODMsIDY5LCA0NSwgMTk2LCA2NSwgNzYsIDY3LCA3MiwgNjksIDc3LCA3MywgCisgICAgNjcsIDY1LCAyMDQsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDczLCAxOTUsIDY1LCA3NiwgNjksIAorICAgIDE5OCwgODQsIDc5LCAxMjgsIDcyLCA2OSwgNjUsIDg2LCAyMTcsIDg0LCA4NywgNzksIDEyOCwgNzksIDg2LCA2OSwgMjEwLCAKKyAgICA2NiwgODIsIDY1LCA3MiwgNzcsIDIwMSwgODMsIDY3LCA4MiwgNzMsIDgwLCAyMTIsIDg1LCAyMDgsIDc2LCA3OSwgMjE1LCAKKyAgICA3OSwgNzgsIDY5LCAxMjgsIDg0LCA4NywgMjA3LCA2NywgNzksIDc4LCA4MywgNzksIDc4LCA2NSwgNzgsIDIxMiwgNjgsIAogICAgIDc5LCA4NywgMjA2LCA3MCwgODUsIDc2LCA3NiwgODcsIDczLCA2OCwgODQsIDIwMCwgNzIsIDY1LCAyMDAsIDc5LCA3OCwgCi0gICAgMTk3LCA2OSwgODEsIDg1LCA2NSwgMjA0LCA3MiwgNzMsIDcxLCAyMDAsIDY2LCA4MiwgNjUsIDY3LCA3NSwgNjksIDg0LCAKLSAgICAxMjgsIDg0LCA2NSwgMTk5LCA2OCwgNzksIDc3LCA3MywgNzgsIDIwNywgNzgsIDg1LCA3NywgNjksIDgyLCA3MywgMTk1LCAKKyAgICAxOTcsIDY2LCA4MiwgNjUsIDY3LCA3NSwgNjksIDg0LCAxMjgsIDY5LCA4MSwgODUsIDY1LCAyMDQsIDcyLCA3MywgNzEsIAorICAgIDIwMCwgODQsIDY1LCAxOTksIDY4LCA3OSwgNzcsIDczLCA3OCwgMjA3LCA3OCwgODUsIDc3LCA2OSwgODIsIDczLCAxOTUsIAogICAgIDcwLCA4MiwgNjUsIDc1LCA4NCwgODUsIDIxMCwgNzcsIDY1LCA3NiwgNjUsIDg5LCA2NSwgNzYsIDY1LCAyMDUsIDgwLCA3MiwgCi0gICAgNjUsIDgzLCA2OSwgNDUsIDE5NSwgNzYsIDY5LCA3MCwgODQsIDg3LCA2NSwgODIsIDY4LCAyMTEsIDg0LCA3MiwgODIsIDY5LCAKLSAgICAxOTcsIDY2LCA2NSwgODIsIDEyOCwgNzQsIDg1LCA3OCwgNzEsIDgzLCA2OSwgNzksIDc4LCAxOTksIDcxLCA3NiwgNjUsIAotICAgIDcxLCA3OSwgNzYsIDczLCA4NCwgNzMsIDE5NSwgNjcsIDcyLCA2NSwgODIsIDY1LCA2NywgODQsIDY5LCAyMTAsIDc3LCA2OSwgCi0gICAgNjgsIDczLCA2NSwgMjA0LCA4NCwgNjksIDc2LCA4NSwgNzEsIDIxMywgNjYsIDY5LCA3OCwgNzEsIDY1LCA3NiwgMjAxLCAKLSAgICA2NSwgODIsIDc3LCA2OSwgNzgsIDczLCA2NSwgMjA2LCA3MiwgNzMsIDgyLCA2NSwgNzEsIDY1LCA3OCwgMTkzLCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDIwMCwgNzQsIDY1LCA4NiwgNjUsIDc4LCA2OSwgODMsIDE5NywgNzQsIDY5LCA2OSwgCi0gICAgMjA1LCA3OCwgNjksIDcxLCA2NSwgODQsIDczLCA4NiwgMTk3LCA3OSwgODIsIDczLCA4OSwgMTkzLCA4NywgNjksIDgzLCAKLSAgICA4NCwgNDUsIDY3LCA4MiwgNjksIDE5NywgNzIsIDY1LCA3NiwgMTk4LCA3NywgNjUsIDgyLCAyMDMsIDgwLCA3MiwgNjUsIAotICAgIDgzLCA2OSwgNDUsIDE5MywgODQsIDcyLCA2NSwgMjAxLCA3NSwgNjUsIDc4LCA3OCwgNjUsIDY4LCAxOTMsIDc4LCA2OSwgCi0gICAgMjE1LCA2NywgNzIsIDY5LCA4MiwgNzksIDc1LCA2OSwgMTk3LCA3MiwgNjUsIDEyOCwgODQsIDc5LCA3OCwgMTk3LCA4NiwgCi0gICAgNzksIDY3LCA2NSwgNzYsIDczLCAxOTUsIDY3LCA3MiwgNjUsIDIwNSwgNzAsIDc5LCA4NSwgODIsIDEyOCwgNzEsIDg1LCAKLSAgICA3NCwgNjUsIDgyLCA2NSwgODQsIDIwMSwgNzYsIDg1LCAxOTcsIDg0LCA3MiwgODIsIDY5LCA2OSwgMTI4LCA4MiwgODUsIAotICAgIDc4LCA3MywgMTk1LCA4MywgNjUsIDg1LCA4MiwgNjUsIDgzLCA3MiwgODQsIDgyLCAxOTMsIDg0LCA2OSwgODQsIDgyLCA2NSwgCi0gICAgNzEsIDgyLCA2NSwgMjA1LCA2OCwgNjksIDgzLCA2OSwgODIsIDY5LCAyMTIsIDgzLCA3MywgNzgsIDcyLCA2NSwgNzYsIAotICAgIDE5MywgNzEsIDg1LCA4MiwgNzcsIDg1LCA3NSwgNzIsIDIwMSwgNzgsIDc5LCA4NCwgNjUsIDg0LCA3MywgNzksIDIwNiwgCi0gICAgODMsIDg5LCA4MiwgNzMsIDY1LCAxOTUsIDY4LCA3OSwgODQsIDIxMSwgNzYsIDczLCA3MSwgNzIsIDIxMiwgODQsIDY1LCAKLSAgICA3NywgNzMsIDIwNCwgNjUsIDY3LCA4NSwgODQsIDY5LCAxMjgsIDcwLCA3MywgODYsIDY5LCAxMjgsIDc1LCA2NSwgMTI4LCAKLSAgICA3NiwgNjksIDgwLCA2NywgNzIsIDE5MywgNzYsIDc5LCA3OCwgMTk5LCA4NCwgODUsIDgyLCA3NSwgNzMsIDE5NSwgODksIAotICAgIDY1LCAxMjgsIDY4LCA3OSwgODUsIDY2LCA3NiwgNjksIDQ1LCA4MywgODQsIDgyLCA4NSwgNjcsIDIwMywgNzcsIDY1LCAKKyAgICA2NSwgODMsIDY5LCA0NSwgMTk1LCA2NiwgNjUsIDgyLCAxMjgsIDc2LCA2OSwgNzAsIDg0LCA4NywgNjUsIDgyLCA2OCwgCisgICAgMjExLCA3MiwgNzMsIDgyLCA2NSwgNzEsIDY1LCA3OCwgMTkzLCA4NCwgNzIsIDgyLCA2OSwgMTk3LCA2NSwgNjcsIDg1LCAKKyAgICA4NCwgNjksIDEyOCwgNzQsIDg1LCA3OCwgNzEsIDgzLCA2OSwgNzksIDc4LCAxOTksIDcxLCA3NiwgNjUsIDcxLCA3OSwgNzYsIAorICAgIDczLCA4NCwgNzMsIDE5NSwgNjYsIDY5LCA3OCwgNzEsIDY1LCA3NiwgMjAxLCA2NywgNzIsIDY1LCA4MiwgNjUsIDY3LCA4NCwgCisgICAgNjksIDIxMCwgNzcsIDY5LCA2OCwgNzMsIDY1LCAyMDQsIDg0LCA2OSwgNzYsIDg1LCA3MSwgMjEzLCA2NSwgODIsIDc3LCAKKyAgICA2OSwgNzgsIDczLCA2NSwgMjA2LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDIwMCwgNzQsIDY1LCA4NiwgNjUsIAorICAgIDc4LCA2OSwgODMsIDE5NywgNzQsIDY5LCA2OSwgMjA1LCA3OCwgNjksIDcxLCA2NSwgODQsIDczLCA4NiwgMTk3LCA3OSwgCisgICAgODIsIDczLCA4OSwgMTkzLCA4NywgNjksIDgzLCA4NCwgNDUsIDY3LCA4MiwgNjksIDE5NywgNzcsIDY1LCA4MiwgMjAzLCAKKyAgICA3MiwgNjUsIDc2LCAxOTgsIDc1LCA2NSwgNzgsIDc4LCA2NSwgNjgsIDE5MywgODAsIDcyLCA2NSwgODMsIDY5LCA0NSwgCisgICAgMTkzLCA4NCwgNzIsIDY1LCAyMDEsIDg0LCA3OSwgNzgsIDE5NywgNzIsIDY1LCAxMjgsIDc4LCA2OSwgMjE1LCA2NywgNzIsIAorICAgIDY5LCA4MiwgNzksIDc1LCA2OSwgMTk3LCA4NiwgNzksIDY3LCA2NSwgNzYsIDczLCAxOTUsIDY3LCA3MiwgNjUsIDIwNSwgCisgICAgNzAsIDc5LCA4NSwgODIsIDEyOCwgNzEsIDg1LCA3NCwgNjUsIDgyLCA2NSwgODQsIDIwMSwgNzYsIDg1LCAxOTcsIDg0LCAKKyAgICA3MiwgODIsIDY5LCA2OSwgMTI4LCA4MiwgODUsIDc4LCA3MywgMTk1LCA4MywgNjUsIDg1LCA4MiwgNjUsIDgzLCA3MiwgODQsIAorICAgIDgyLCAxOTMsIDg0LCA2OSwgODQsIDgyLCA2NSwgNzEsIDgyLCA2NSwgMjA1LCA2OCwgNjksIDgzLCA2OSwgODIsIDY5LCAKKyAgICAyMTIsIDgzLCA3MywgNzgsIDcyLCA2NSwgNzYsIDE5MywgODQsIDczLCA3NiwgNjgsIDY5LCAxMjgsIDcxLCA4NSwgODIsIAorICAgIDc3LCA4NSwgNzUsIDcyLCAyMDEsIDc4LCA3OSwgODQsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDgzLCA4OSwgODIsIDczLCA2NSwgCisgICAgMTk1LCA2OCwgNzksIDg0LCAyMTEsIDc2LCA3MywgNzEsIDcyLCAyMTIsIDc1LCA2NSwgMTI4LCA3MCwgNzMsIDg2LCA2OSwgCisgICAgMTI4LCA3NiwgNjksIDgwLCA2NywgNzIsIDE5MywgNzYsIDc5LCA3OCwgMTk5LCA4NCwgODUsIDgyLCA3NSwgNzMsIDE5NSwgCisgICAgODksIDY1LCAxMjgsIDY4LCA3OSwgODUsIDY2LCA3NiwgNjksIDQ1LCA4MywgODQsIDgyLCA4NSwgNjcsIDIwMywgNzcsIDY1LCAKICAgICAxMjgsIDgzLCA3MywgODgsIDEyOCwgODYsIDczLCA2OSwgMjEyLCA3MiwgNjUsIDc3LCA5MCwgMTkzLCA4MCwgNjUsIDEyOCwgCi0gICAgNjUsIDgwLCAyMDQsIDY5LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA3MCwgODUsIDc4LCA2NywgODQsIDczLCA3OSwgNzgsIDY1LCAKLSAgICAyMDQsIDgzLCAxMjgsIDgzLCA2OSwgODYsIDY5LCA3OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIAotICAgIDY1LCAyMDQsIDc4LCA3MywgNzgsIDY5LCAxMjgsIDg0LCA2OSwgNzYsIDY5LCA3MSwgODIsIDY1LCA4MCwgMjAwLCA2NiwgCi0gICAgNzksIDgwLCA3OSwgNzcsIDc5LCA3MCwgMjA3LCA4MiwgNjUsIDEyOCwgNzgsIDY1LCAxMjgsIDY2LCA2NSwgODIsIDE5NCwgCi0gICAgNjgsIDY1LCA4MywgNzMsIDE5MywgNzUsIDY1LCA3MywgODQsIDcyLCAyMDEsIDc2LCA3MywgNzcsIDY2LCAyMTMsIDc3LCAKLSAgICA2NSwgNzUsIDgzLCA4NSwgODIsIDE5MywgODQsIDIwNywgOTAsIDkwLCA4OSwgODgsIDEyOCwgOTAsIDkwLCA4OSwgODQsIAotICAgIDEyOCwgOTAsIDkwLCA4OSwgODIsIDg4LCAxMjgsIDkwLCA5MCwgODksIDgyLCAxMjgsIDkwLCA5MCwgODksIDgwLCAxMjgsIAotICAgIDkwLCA5MCwgODksIDEyOCwgOTAsIDkwLCA4NSwgODgsIDEyOCwgOTAsIDkwLCA4NSwgODIsIDg4LCAxMjgsIDkwLCA5MCwgCi0gICAgODUsIDgyLCAxMjgsIDkwLCA5MCwgODUsIDgwLCAxMjgsIDkwLCA5MCwgODUsIDEyOCwgOTAsIDkwLCA3OSwgODgsIDEyOCwgCi0gICAgOTAsIDkwLCA3OSwgODAsIDEyOCwgOTAsIDkwLCA3OSwgMTI4LCA5MCwgOTAsIDczLCA4OCwgMTI4LCA5MCwgOTAsIDczLCAKLSAgICA4NCwgMTI4LCA5MCwgOTAsIDczLCA4MCwgMTI4LCA5MCwgOTAsIDczLCA2OSwgODgsIDEyOCwgOTAsIDkwLCA3MywgNjksIAotICAgIDg0LCAxMjgsIDkwLCA5MCwgNzMsIDY5LCA4MCwgMTI4LCA5MCwgOTAsIDczLCA2OSwgMTI4LCA5MCwgOTAsIDczLCAxMjgsIAotICAgIDkwLCA5MCwgNjksIDg4LCAxMjgsIDkwLCA5MCwgNjksIDgwLCAxMjgsIDkwLCA5MCwgNjksIDY5LCAxMjgsIDkwLCA5MCwgCi0gICAgNjksIDEyOCwgOTAsIDkwLCA2NSwgODgsIDEyOCwgOTAsIDkwLCA2NSwgODQsIDEyOCwgOTAsIDkwLCA2NSwgODAsIDEyOCwgCi0gICAgOTAsIDkwLCA2NSwgNjUsIDEyOCwgOTAsIDkwLCA2NSwgMTI4LCA5MCwgODksIDcxLCA3OSwgODMsIDEyOCwgOTAsIDg3LCAKLSAgICA2NSwgODIsIDY1LCA3NSwgNjUsIDg5LCAxMjgsIDkwLCA4NywgNjUsIDEyOCwgOTAsIDg1LCA4NCwgMTI4LCA5MCwgODUsIAotICAgIDc5LCA4OCwgMTI4LCA5MCwgODUsIDc5LCA4MCwgMTI4LCA5MCwgODUsIDc5LCAxMjgsIDkwLCA4NSwgNzcsIDEyOCwgOTAsIAotICAgIDg1LCA2NiwgODUsIDgyLCAxMjgsIDkwLCA4NSwgNTMsIDEyOCwgOTAsIDg1LCAxODEsIDkwLCA4MiwgNjUsIDEyOCwgOTAsIAotICAgIDgxLCA2NSwgODAsIDcyLCAxOTMsIDkwLCA3OSwgODQsIDEyOCwgOTAsIDc5LCA3OSwgMTI4LCA5MCwgNzksIDY1LCAxMjgsIAotICAgIDkwLCA3NiwgNjUsIDc3LCAxOTMsIDkwLCA3NiwgNjUsIDEyOCwgOTAsIDc2LCAxOTMsIDkwLCA3NCwgNjksIDEyOCwgOTAsIAotICAgIDczLCA5MCwgNTAsIDEyOCwgOTAsIDczLCA4MSwgNjUsIDY1LCAxMjgsIDkwLCA3MywgNzgsIDc5LCA4MiwgMTI4LCA5MCwgCi0gICAgNzMsIDc2LCA2OCwgNjksIDEyOCwgOTAsIDczLCA3MSwgOTAsIDY1LCAxOTksIDkwLCA3MywgNzEsIDEyOCwgOTAsIDczLCAKLSAgICA2OCwgMTkzLCA5MCwgNzMsIDY2LCAxMjgsIDkwLCA3MywgMTk0LCA5MCwgNzMsIDUxLCAxMjgsIDkwLCAyMDEsIDkwLCA3MiwgCi0gICAgODksIDg4LCAxMjgsIDkwLCA3MiwgODksIDg0LCAxMjgsIDkwLCA3MiwgODksIDgyLCA4OCwgMTI4LCA5MCwgNzIsIDg5LCAKLSAgICA4MiwgMTI4LCA5MCwgNzIsIDg5LCA4MCwgMTI4LCA5MCwgNzIsIDg5LCAxMjgsIDkwLCA3MiwgODcsIDY5LCAxMjgsIDkwLCAKLSAgICA3MiwgODcsIDY1LCAxMjgsIDkwLCA3MiwgODUsIDg4LCAxMjgsIDkwLCA3MiwgODUsIDg0LCAxMjgsIDkwLCA3MiwgODUsIAotICAgIDgyLCA4OCwgMTI4LCA5MCwgNzIsIDg1LCA4MiwgMTI4LCA5MCwgNzIsIDg1LCA4MCwgMTI4LCA5MCwgNzIsIDg1LCA3OSwgCi0gICAgODgsIDEyOCwgOTAsIDcyLCA4NSwgNzksIDgwLCAxMjgsIDkwLCA3MiwgODUsIDc5LCAxMjgsIDkwLCA3MiwgODUsIDEyOCwgCi0gICAgOTAsIDcyLCA3OSwgODgsIDEyOCwgOTAsIDcyLCA3OSwgODQsIDEyOCwgOTAsIDcyLCA3OSwgODAsIDEyOCwgOTAsIDcyLCAKLSAgICA3OSwgNzksIDEyOCwgOTAsIDcyLCA3OSwgMTI4LCA5MCwgNzIsIDczLCA4NiwgNjksIDg0LCA2OSwgMTI4LCA5MCwgNzIsIAotICAgIDczLCAxMjgsIDkwLCA3MiwgNjksIDg4LCAxMjgsIDkwLCA3MiwgNjksIDg0LCAxMjgsIDkwLCA3MiwgNjksIDgwLCAxMjgsIAotICAgIDkwLCA3MiwgNjksIDY5LCAxMjgsIDkwLCA3MiwgNjksIDEyOCwgOTAsIDcyLCAxOTcsIDkwLCA3MiwgNjUsIDg4LCAxMjgsIAotICAgIDkwLCA3MiwgNjUsIDg0LCAxMjgsIDkwLCA3MiwgNjUsIDgyLCAxMjgsIDkwLCA3MiwgNjUsIDgwLCAxMjgsIDkwLCA3MiwgCi0gICAgNjUsIDczLCA3OCwgMTI4LCA5MCwgNzIsIDY1LCA2NSwgMTI4LCA5MCwgNzIsIDY1LCAxMjgsIDkwLCA3MiwgMTI4LCA5MCwgCi0gICAgNjksIDg0LCA2NSwgMTI4LCA5MCwgNjksIDgyLCA3OSwgMTI4LCA5MCwgNjksIDgyLCAyMDcsIDkwLCA2OSwgNzgsIDEyOCwgCi0gICAgOTAsIDY5LCA3NywgNzYsIDg5LCA2NSwgMTI4LCA5MCwgNjksIDc3LCA3NiwgNzQsIDY1LCAxMjgsIDkwLCA2OSwgNTAsIAotICAgIDEyOCwgOTAsIDE5NywgOTAsIDY1LCA4OSwgNzgsIDEyOCwgOTAsIDY1LCA4OSwgNzMsIDc4LCAxMjgsIDkwLCA2NSwgODksIAotICAgIDczLCAyMDYsIDkwLCA2NSwgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA5MCwgNjUsIDg0LCA2NSwgMTI4LCA5MCwgCi0gICAgNjUsIDgyLCA4MSwgNjUsIDEyOCwgOTAsIDY1LCA4MSwgNjksIDE5OCwgOTAsIDY1LCA3NywgODgsIDEyOCwgOTAsIDY1LCAKLSAgICAyMDQsIDkwLCA2NSwgNzMsIDc4LCAxMjgsIDkwLCA2NSwgNzMsIDIwNiwgOTAsIDY1LCA3MywgMTI4LCA5MCwgNjUsIDcyLCAKLSAgICAxMjgsIDkwLCA2NSwgMjAwLCA5MCwgNjUsIDcxLCAxMjgsIDkwLCA2NSwgNjksIDcwLCAxMjgsIDkwLCA0OCwgNDksIDU0LCAKLSAgICA3MiwgMTI4LCA5MCwgNDgsIDQ5LCA1NCwgNzEsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDcwLCAxMjgsIDkwLCA0OCwgNDksIAotICAgIDU0LCA2OSwgMTI4LCA5MCwgNDgsIDQ5LCA1NCwgNjgsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDY3LCAxMjgsIDkwLCA0OCwgCi0gICAgNDksIDU0LCA2NiwgMTI4LCA5MCwgNDgsIDQ5LCA1NCwgNjUsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDEyOCwgOTAsIDQ4LCAKLSAgICA0OSwgNTMsIDczLCAxMjgsIDkwLCA0OCwgNDksIDUzLCA3MiwgMTI4LCA5MCwgNDgsIDQ5LCA1MywgNzEsIDEyOCwgOTAsIAotICAgIDQ4LCA0OSwgNTMsIDcwLCAxMjgsIDkwLCA0OCwgNDksIDUzLCA2OSwgMTI4LCA5MCwgNDgsIDQ5LCA1MywgNjgsIDEyOCwgCi0gICAgOTAsIDQ4LCA0OSwgNTMsIDY3LCAxMjgsIDkwLCA0OCwgNDksIDUzLCA2NiwgMTI4LCA5MCwgNDgsIDQ5LCA1MywgNjUsIAotICAgIDEyOCwgOTAsIDQ4LCA0OSwgNTMsIDEyOCwgOTAsIDQ4LCA0OSwgNTIsIDEyOCwgOTAsIDQ4LCA0OSwgNTEsIDEyOCwgOTAsIAotICAgIDQ4LCA0OSwgNTAsIDEyOCwgOTAsIDQ4LCA0OSwgNDksIDEyOCwgOTAsIDQ4LCA0OSwgNDgsIDEyOCwgOTAsIDQ4LCA0OCwgCi0gICAgNTcsIDEyOCwgOTAsIDQ4LCA0OCwgNTYsIDEyOCwgOTAsIDQ4LCA0OCwgNTUsIDEyOCwgOTAsIDQ4LCA0OCwgNTQsIDEyOCwgCi0gICAgOTAsIDQ4LCA0OCwgNTMsIDY1LCAxMjgsIDkwLCA0OCwgNDgsIDUzLCAxMjgsIDkwLCA0OCwgNDgsIDUyLCA2NSwgMTI4LCAKLSAgICA5MCwgNDgsIDQ4LCA1MiwgMTI4LCA5MCwgNDgsIDQ4LCA1MSwgNjYsIDEyOCwgOTAsIDQ4LCA0OCwgNTEsIDY1LCAxMjgsIAotICAgIDkwLCA0OCwgNDgsIDUxLCAxMjgsIDkwLCA0OCwgNDgsIDUwLCA2OCwgMTI4LCA5MCwgNDgsIDQ4LCA1MCwgNjcsIDEyOCwgCi0gICAgOTAsIDQ4LCA0OCwgNTAsIDY2LCAxMjgsIDkwLCA0OCwgNDgsIDUwLCA2NSwgMTI4LCA5MCwgNDgsIDQ4LCA1MCwgMTI4LCAKLSAgICA5MCwgNDgsIDQ4LCA0OSwgMTI4LCA5MCwgMTI4LCAyMTgsIDg5LCA4OSwgODgsIDEyOCwgODksIDg5LCA4NCwgMTI4LCA4OSwgCi0gICAgODksIDgyLCA4OCwgMTI4LCA4OSwgODksIDgyLCAxMjgsIDg5LCA4OSwgODAsIDEyOCwgODksIDg5LCA2OSwgMTI4LCA4OSwgCi0gICAgODksIDY1LCAxMjgsIDg5LCA4OSwgMTI4LCA4OSwgODcsIDc5LCA3OSwgMTI4LCA4OSwgODcsIDc5LCAxMjgsIDg5LCA4NywgCi0gICAgNzMsIDczLCAxMjgsIDg5LCA4NywgNzMsIDEyOCwgODksIDg3LCA2OSwgMTI4LCA4OSwgODcsIDY1LCA2NSwgMTI4LCA4OSwgCi0gICAgODcsIDY1LCAxMjgsIDg5LCA4NiwgMTI4LCA4OSwgODUsIDg4LCAxMjgsIDg5LCA4NSwgODcsIDc5LCA4MSwgMTI4LCA4OSwgCi0gICAgODUsIDg1LCA3NSwgNjUsIDc2LCA2OSwgNjUsIDgwLCA3MywgNzgsIDg0LCA4NSwgMTI4LCA4OSwgODUsIDg0LCAxMjgsIDg5LCAKLSAgICA4NSwgODMsIDEyOCwgODksIDg1LCAyMTEsIDg5LCA4NSwgODIsIDg4LCAxMjgsIDg5LCA4NSwgODIsIDEyOCwgODksIDg1LCAKLSAgICA4MSwgMTI4LCA4OSwgODUsIDIwOSwgODksIDg1LCA4MCwgMTI4LCA4OSwgODUsIDc5LCA4OCwgMTI4LCA4OSwgODUsIDc5LCAKLSAgICA4NCwgMTI4LCA4OSwgODUsIDc5LCA4MCwgMTI4LCA4OSwgODUsIDc5LCA3NywgMTI4LCA4OSwgODUsIDc5LCAxMjgsIDg5LCAKLSAgICA4NSwgNzgsIDEyOCwgODksIDg1LCA3NywgMTI4LCA4OSwgODUsIDY5LCA4MSwgMTI4LCA4OSwgODUsIDY5LCAxMjgsIDg5LCAKLSAgICA4NSwgNjgsIDcyLCAxMjgsIDg5LCA4NSwgNjgsIDIwMCwgODksIDg1LCA2NSwgNzgsIDEyOCwgODksIDg1LCA2NSwgNjksIAotICAgIDc4LCAxMjgsIDg5LCA4NSwgNDUsIDg5LCA2OSwgNzksIDEyOCwgODksIDg1LCA0NSwgODksIDY5LCAxMjgsIDg5LCA4NSwgCi0gICAgNDUsIDg1LCAxMjgsIDg5LCA4NSwgNDUsIDc5LCAxMjgsIDg5LCA4NSwgNDUsIDczLCAxMjgsIDg5LCA4NSwgNDUsIDY5LCAKLSAgICA3OSwgMTI4LCA4OSwgODUsIDQ1LCA2OSwgMTI4LCA4OSwgODUsIDQ1LCA2NSwgNjksIDEyOCwgODksIDg1LCA0NSwgNjUsIAotICAgIDEyOCwgODksIDg1LCAxMjgsIDg5LCAyMTMsIDg5LCA4MCwgODMsIDczLCA3NiwgNzMsIDEyOCwgODksIDgwLCA3OSwgODIsIAotICAgIDgyLCA3OSwgNzMsIDEyOCwgODksIDgwLCA3OSwgNzUsIDgyLCA3MywgODMsIDczLCA4MywgMTI4LCA4OSwgODAsIDc5LCA3NSwgCi0gICAgODIsIDczLCA4MywgNzMsIDIxMSwgODksIDgwLCA3OSwgNzEsIDY5LCA3MSwgODIsIDY1LCA3NywgNzcsIDY5LCA3OCwgNzMsIAotICAgIDEyOCwgODksIDc5LCA4OSwgMTI4LCA4OSwgNzksIDg4LCAxMjgsIDg5LCA3OSwgODUsIDg0LCA3MiwgNzAsIDg1LCA3NiwgCi0gICAgNzgsIDY5LCA4MywgODMsIDEyOCwgODksIDc5LCA4NSwgODQsIDcyLCA3MCwgODUsIDIwNCwgODksIDc5LCA4NCwgMTI4LCAKLSAgICA4OSwgNzksIDgyLCA3MywgMTI4LCA4OSwgNzksIDgxLCAxMjgsIDg5LCA3OSwgMjA5LCA4OSwgNzksIDgwLCAxMjgsIDg5LCAKLSAgICA3OSwgNzksIDEyOCwgODksIDc5LCA3NywgNzksIDEyOCwgODksIDc5LCA3MSwgNzIsIDEyOCwgODksIDc5LCA2OCwgNzIsIAotICAgIDEyOCwgODksIDc5LCA2OCwgMTI4LCA4OSwgNzksIDE5NiwgODksIDc5LCA2NSwgMTI4LCA4OSwgNzksIDQ1LCA4OSwgNjksIAotICAgIDc5LCAxMjgsIDg5LCA3OSwgNDUsIDg5LCA2NSwgNjksIDEyOCwgODksIDc5LCA0NSwgODksIDY1LCAxMjgsIDg5LCA3OSwgCi0gICAgNDUsIDc5LCAxMjgsIDg5LCA3OSwgNDUsIDczLCAxMjgsIDg5LCA3OSwgNDUsIDY5LCA3OSwgMTI4LCA4OSwgNzksIDQ1LCAKLSAgICA2NSwgNjksIDEyOCwgODksIDc5LCA0NSwgNjUsIDEyOCwgODksIDc5LCAxMjgsIDg5LCAyMDcsIDg5LCA3MywgOTAsIDY5LCAKLSAgICA4NCwgMTI4LCA4OSwgNzMsIDg4LCAxMjgsIDg5LCA3MywgODcsIDc4LCAxMjgsIDg5LCA3MywgODQsIDEyOCwgODksIDczLCAKLSAgICA4MCwgMTI4LCA4OSwgNzMsIDc4LCA3MSwgMTI4LCA4OSwgNzMsIDczLCAxMjgsIDg5LCA3MywgMTk5LCA4OSwgNzMsIDY5LCAKLSAgICA4OCwgMTI4LCA4OSwgNzMsIDY5LCA4NCwgMTI4LCA4OSwgNzMsIDY5LCA4MCwgMTI4LCA4OSwgNzMsIDY5LCA2OSwgMTI4LCAKLSAgICA4OSwgNzMsIDY5LCAxMjgsIDg5LCA3MywgNjgsIDY4LCA3MywgODMsIDIwMCwgODksIDczLCA0NSwgODUsIDEyOCwgODksIAotICAgIDczLCAxMjgsIDg5LCA3MCwgNjksIDgzLCA3MywgODMsIDEyOCwgODksIDcwLCA2OSwgODMsIDczLCAyMTEsIDg5LCA3MCwgCi0gICAgNjksIDIwNiwgODksIDY5LCA4OSwgMTI4LCA4OSwgNjksIDg3LCAxMjgsIDg5LCA2OSwgODUsIDg4LCAxMjgsIDg5LCA2OSwgCi0gICAgODUsIDgyLCA2NSwgNjksIDEyOCwgODksIDY5LCA4NSwgODEsIDEyOCwgODksIDY5LCA4NSwgNzcsIDEyOCwgODksIDY5LCAKLSAgICA4NSwgNjUsIDY5LCA4NCwgMTI4LCA4OSwgNjksIDg1LCA2NSwgNjksIDEyOCwgODksIDY5LCA4NCwgNzMsIDg2LCAxMjgsIAotICAgIDg5LCA2OSwgODMsIDg0LCA4NSwgMTI4LCA4OSwgNjksIDgzLCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA4MywgNzMsIDc5LCAKLSAgICA4MywgMTI4LCA4OSwgNjksIDgzLCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA4MCwgNjUsIDc4LCA4MywgNzMsIDc5LCA4MywgCi0gICAgMTI4LCA4OSwgNjksIDgzLCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA3NywgNzMsIDY5LCA4NSwgNzcsIDEyOCwgODksIDY5LCAKLSAgICA4MywgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDg5LCA2OSwgODMsIDczLCA2OSwgCi0gICAgODUsIDc4LCA3MSwgMTI4LCA4OSwgNjksIDgyLCA4NSwgMTI4LCA4OSwgNjksIDgyLCAyMTMsIDg5LCA2OSwgODIsIDczLCAKLSAgICAxMjgsIDg5LCA2OSwgODIsIDY1LCAyMDAsIDg5LCA2OSwgODIsIDEyOCwgODksIDY5LCA3OSwgODIsIDczLCA3OCwgNzIsIAotICAgIDczLCA2OSwgODUsIDcyLCAxMjgsIDg5LCA2OSwgNzksIDQ1LCA4OSwgNjUsIDEyOCwgODksIDY5LCA3OSwgNDUsIDg1LCAKLSAgICAxMjgsIDg5LCA2OSwgNzksIDQ1LCA3OSwgMTI4LCA4OSwgNjksIDc4LCA3MywgODMsIDY5LCAyMDEsIDg5LCA2OSwgNzgsIAotICAgIDY1LCA4MCwgMTI4LCA4OSwgNjksIDc4LCAxMjgsIDg5LCA2OSwgMjA2LCA4OSwgNjksIDc2LCA3NiwgNzksIDg3LCAxMjgsIAotICAgIDg5LCA2OSwgNzYsIDc2LCA3OSwgMjE1LCA4OSwgNjksIDcyLCAxMjgsIDg5LCA2OSwgNjksIDEyOCwgODksIDY5LCA2NSwgCi0gICAgMjEwLCA4OSwgNjksIDY1LCAxMjgsIDg5LCA2NSwgOTAsIDkwLCAxMjgsIDg5LCA2NSwgOTAsIDcyLCAxMjgsIDg5LCA2NSwgCi0gICAgOTAsIDEyOCwgODksIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgODksIDY1LCA4OSwgMTI4LCA4OSwgNjUsIDg3LCAKLSAgICAxMjgsIDg5LCA2NSwgODYsIDEyOCwgODksIDY1LCA4NCwgODQsIDEyOCwgODksIDY1LCA4NCwgNzMsIDEyOCwgODksIDY1LCAKLSAgICA4NCwgNzIsIDEyOCwgODksIDY1LCA4NCwgMTI4LCA4OSwgNjUsIDgzLCA4MywgMTI4LCA4OSwgNjUsIDgzLCA3MiwgMTI4LCAKLSAgICA4OSwgNjUsIDgzLCAxMjgsIDg5LCA2NSwgODIsIDgyLCAxMjgsIDg5LCA2NSwgODIsIDEyOCwgODksIDY1LCAyMTAsIDg5LCAKLSAgICA2NSwgODEsIDEyOCwgODksIDY1LCA4MCwgMTI4LCA4OSwgNjUsIDc4LCA3MSwgMTI4LCA4OSwgNjUsIDc4LCAxOTksIDg5LCAKLSAgICA2NSwgNzgsIDEyOCwgODksIDY1LCA3NywgNzksIDc1LCAxMjgsIDg5LCA2NSwgNzcsIDY1LCA3NSwgNzUsIDY1LCA3OCwgCi0gICAgMTI4LCA4OSwgNjUsIDc3LCAxMjgsIDg5LCA2NSwgNzYsIDEyOCwgODksIDY1LCA3NSwgNzIsIDcyLCAxMjgsIDg5LCA2NSwgCi0gICAgNzUsIDcyLCAxMjgsIDg5LCA2NSwgNzUsIDY1LCA4MywgNzIsIDEyOCwgODksIDY1LCA3NSwgMTI4LCA4OSwgNjUsIDc0LCAKLSAgICA4NSwgODIsIDg2LCA2OSwgNjgsIDczLCAxOTUsIDg5LCA2NSwgNzQsIDEyOCwgODksIDY1LCA3MiwgNzIsIDEyOCwgODksIAotICAgIDY1LCA3MiwgMTI4LCA4OSwgNjUsIDcxLCA3OCwgMTI4LCA4OSwgNjUsIDcxLCA3MiwgNzIsIDEyOCwgODksIDY1LCA3MSwgCi0gICAgNzIsIDEyOCwgODksIDY1LCA3MSwgMTI4LCA4OSwgNjUsIDcwLCAyMTMsIDg5LCA2NSwgNzAsIDEyOCwgODksIDY1LCA2OSwgCi0gICAgNzcsIDc3LCA2NSwgNjksIDEyOCwgODksIDY1LCA2OCwgNzIsIDEyOCwgODksIDY1LCA2OCwgNjgsIDcyLCAxMjgsIDg5LCAKLSAgICA2NSwgNjgsIDY4LCAxMjgsIDg5LCA2NSwgNjgsIDEyOCwgODksIDY1LCA2NywgNzIsIDEyOCwgODksIDY1LCA2NiwgNzIsIAotICAgIDEyOCwgODksIDY1LCA2NiwgMTI4LCA4OSwgNjUsIDY1LCA4MiwgODUsIDEyOCwgODksIDY1LCA2NSwgNzMsIDEyOCwgODksIAotICAgIDY1LCA2NSwgNjgsIDc5LCAxMjgsIDg5LCA2NSwgNjUsIDEyOCwgODksIDY1LCA0NSwgODksIDc5LCAxMjgsIDg5LCA2NSwgCi0gICAgNDUsIDg1LCAxMjgsIDg5LCA2NSwgNDUsIDc5LCAxMjgsIDg5LCA0OCwgNDgsIDU2LCAxMjgsIDg5LCA0OCwgNDgsIDU1LCAKLSAgICAxMjgsIDg5LCA0OCwgNDgsIDU0LCAxMjgsIDg5LCA0OCwgNDgsIDUzLCAxMjgsIDg5LCA0OCwgNDgsIDUyLCAxMjgsIDg5LCAKLSAgICA0OCwgNDgsIDUxLCAxMjgsIDg5LCA0OCwgNDgsIDUwLCAxMjgsIDg5LCA0OCwgNDgsIDQ5LCA2NSwgMTI4LCA4OSwgNDgsIAotICAgIDQ4LCA0OSwgMTI4LCA4OSwgNDUsIDY3LCA4MiwgNjksIDE5NywgODgsIDg5LCA4OCwgMTI4LCA4OCwgODksIDg1LCAxMjgsIAotICAgIDg4LCA4OSwgODQsIDEyOCwgODgsIDg5LCA4MiwgODgsIDEyOCwgODgsIDg5LCA4MiwgMTI4LCA4OCwgODksIDgwLCAxMjgsIAotICAgIDg4LCA4OSwgNzksIDEyOCwgODgsIDg5LCA3MywgMTI4LCA4OCwgODksIDY5LCA2OSwgMTI4LCA4OCwgODksIDY5LCAxMjgsIAotICAgIDg4LCA4OSwgNjUsIDY1LCAxMjgsIDg4LCA4OSwgNjUsIDEyOCwgODgsIDg5LCAxMjgsIDg4LCA4NywgNzMsIDEyOCwgODgsIAotICAgIDg3LCA2OSwgNjksIDEyOCwgODgsIDg3LCA2OSwgMTI4LCA4OCwgODcsIDY1LCA2NSwgMTI4LCA4OCwgODcsIDY1LCAxMjgsIAotICAgIDg4LCA4NiwgNjksIDEyOCwgODgsIDg2LCA2NSwgMTI4LCA4OCwgODUsIDc5LCA4OCwgMTI4LCA4OCwgODUsIDc5LCAxMjgsIAotICAgIDg4LCA4NSwgMTI4LCA4OCwgODMsIDcyLCA2NSwgNjUsIDg5LCA2NSwgODQsIDcyLCA3MywgODksIDY1LCAxMjgsIDg4LCA3OSwgCi0gICAgODgsIDEyOCwgODgsIDc5LCA4NCwgMTI4LCA4OCwgNzksIDgyLCAxMjgsIDg4LCA3OSwgODAsIDEyOCwgODgsIDc5LCA2NSwgCi0gICAgMTI4LCA4OCwgNzksIDEyOCwgODgsIDczLCA4OCwgMTI4LCA4OCwgNzMsIDg0LCAxMjgsIDg4LCA3MywgODIsIDc5LCAyMDYsIAotICAgIDg4LCA3MywgODAsIDEyOCwgODgsIDczLCA2OSwgODgsIDEyOCwgODgsIDczLCA2OSwgODQsIDEyOCwgODgsIDczLCA2OSwgCi0gICAgODAsIDEyOCwgODgsIDczLCA2OSwgMTI4LCA4OCwgNzMsIDEyOCwgODgsIDcxLCAxMjgsIDg4LCA2OSwgODMsIDg0LCA2OSwgCi0gICAgMjExLCA4OCwgNjksIDcyLCAxMjgsIDg4LCA2OSwgNjksIDEyOCwgODgsIDY5LCAxMjgsIDg4LCA2NSwgNzgsIDEyOCwgODgsIAotICAgIDY1LCA2NSwgMTI4LCA4OCwgNjUsIDEyOCwgODgsIDQ4LCA0OCwgNTYsIDY1LCAxMjgsIDg4LCA0OCwgNDgsIDU2LCAxMjgsIAotICAgIDg4LCA0OCwgNDgsIDU1LCAxMjgsIDg4LCA0OCwgNDgsIDU0LCA2NSwgMTI4LCA4OCwgNDgsIDQ4LCA1NCwgMTI4LCA4OCwgCi0gICAgNDgsIDQ4LCA1MywgMTI4LCA4OCwgNDgsIDQ4LCA1MiwgNjYsIDEyOCwgODgsIDQ4LCA0OCwgNTIsIDY1LCAxMjgsIDg4LCAKLSAgICA0OCwgNDgsIDUyLCAxMjgsIDg4LCA0OCwgNDgsIDUxLCAxMjgsIDg4LCA0OCwgNDgsIDUwLCAxMjgsIDg4LCA0OCwgNDgsIAotICAgIDQ5LCAxMjgsIDg3LCA5MCwgMTI4LCA4NywgODksIDc4LCA3OCwgMTI4LCA4NywgODksIDc4LCAyMDYsIDg3LCA4NiwgMTI4LCAKLSAgICA4NywgODUsIDgwLCAxMjgsIDg3LCA4NSwgNzksIDg4LCAxMjgsIDg3LCA4NSwgNzksIDgwLCAxMjgsIDg3LCA4NSwgNzksIAotICAgIDEyOCwgODcsIDg1LCA3OCwgNzQsIDIwNywgODcsIDg1LCA3OCwgMTI4LCA4NywgODUsIDc2LCA4NSwgMTI4LCA4NywgODUsIAotICAgIDc2LCAyMTMsIDg3LCA4NSwgNjksIDEyOCwgODcsIDg1LCA2NSwgNjksIDg0LCAxMjgsIDg3LCA4NSwgNjUsIDY5LCA3OCwgCi0gICAgMTI4LCA4NywgODUsIDEyOCwgODcsIDgyLCAyMTcsIDg3LCA4MiwgNzksIDc4LCA3MSwgMTI4LCA4NywgODIsIDczLCA4NCwgCi0gICAgNzMsIDc4LCAxOTksIDg3LCA4MiwgNjksIDc4LCA2NywgNzIsIDEyOCwgODcsIDgyLCA2OSwgNjUsIDg0LCAyMDAsIDg3LCAKLSAgICA4MiwgNjUsIDgwLCA4MCwgNjksIDE5NiwgODcsIDgyLCA2NSwgODAsIDEyOCwgODcsIDc5LCA4OCwgMTI4LCA4NywgNzksIAotICAgIDgyLCA3NSwgNjksIDgyLCAxMjgsIDg3LCA3OSwgODIsIDc1LCAxMjgsIDg3LCA3OSwgODIsIDIwMywgODcsIDc5LCA4MiwgCi0gICAgNjgsIDgzLCA4MCwgNjUsIDY3LCA2OSwgMTI4LCA4NywgNzksIDgyLCAxOTYsIDg3LCA3OSwgODAsIDEyOCwgODcsIDc5LCAKLSAgICA3OSwgNzgsIDEyOCwgODcsIDc5LCA3OSwgNzYsIDEyOCwgODcsIDc5LCA3OSwgNjgsIDgzLCA0NSwgNjcsIDgyLCA2OSwgCi0gICAgMTk3LCA4NywgNzksIDc5LCA2OCwgMTI4LCA4NywgNzksIDc4LCAxMjgsIDg3LCA3OSwgMjA2LCA4NywgNzksIDc3LCA2OSwgCi0gICAgNzgsIDIxMSwgODcsIDc5LCA3NywgNjksIDIwNiwgODcsIDc5LCA3NywgNjUsIDc4LCAyMTEsIDg3LCA3OSwgNzcsIDY1LCAKLSAgICA3OCwgMTI4LCA4NywgNzksIDc3LCA2NSwgMjA2LCA4NywgNzksIDc2LCA3OSwgODMsIDc5LCAxMjgsIDg3LCA3OSwgNzYsIAotICAgIDE5OCwgODcsIDc5LCA2OSwgMTI4LCA4NywgNzksIDY1LCAxMjgsIDg3LCA3MywgODQsIDcyLCA3OSwgODUsIDIxMiwgODcsIAotICAgIDczLCA3OCwgODQsIDY5LCA4MiwgMTI4LCA4NywgNzMsIDc4LCA3NSwgNzMsIDc4LCAxOTksIDg3LCA3MywgNzgsIDc0LCA2NSwgCi0gICAgMTI4LCA4NywgNzMsIDc4LCA3MSwgODMsIDEyOCwgODcsIDczLCA3OCwgNjksIDEyOCwgODcsIDczLCA3OCwgMTk3LCA4NywgCi0gICAgNzMsIDc4LCA2OCwgODUsIDEyOCwgODcsIDczLCA3OCwgNjgsIDEyOCwgODcsIDczLCA3OCwgMTk2LCA4NywgNzMsIDc4LCAKLSAgICAxMjgsIDg3LCA3MywgNzEsIDc4LCA4OSwgNjUsIDc4LCAxMjgsIDg3LCA3MywgNzEsIDcxLCA3NiwgMjE3LCA4NywgNzMsIAotICAgIDY4LCA2OSwgNDUsIDcyLCA2OSwgNjUsIDY4LCA2OSwgMTk2LCA4NywgNzMsIDY4LCAxOTcsIDg3LCA3MywgNjUsIDc4LCA3MSwgCi0gICAgODcsIDY1LCA2NSwgNzUsIDEyOCwgODcsIDczLCA2NSwgNzgsIDcxLCAxMjgsIDg3LCA3MiwgNzksIDc2LCAxOTcsIDg3LCAKLSAgICA3MiwgNzMsIDg0LCA2OSwgNDUsIDcwLCA2OSwgNjUsIDg0LCA3MiwgNjksIDgyLCA2OSwgMTk2LCA4NywgNzIsIDczLCA4NCwgCi0gICAgNjksIDEyOCwgODcsIDcyLCA2OSwgNjksIDc2LCA2OSwgMTk2LCA4NywgNzIsIDY5LCA2OSwgNzYsIDY3LCA3MiwgNjUsIDczLCAKLSAgICAyMTAsIDg3LCA3MiwgNjksIDY5LCA3NiwgMTI4LCA4NywgNzIsIDY5LCA2OSwgMjA0LCA4NywgNzIsIDY5LCA2NSwgODQsIAotICAgIDEyOCwgODcsIDcyLCA2NSwgNzYsIDY5LCAxMjgsIDg3LCA3MSwgMTI4LCA4NywgNjksIDg4LCAxMjgsIDg3LCA2OSwgODUsIAotICAgIDg4LCAxMjgsIDg3LCA2OSwgODMsIDg0LCA2OSwgODIsIDIwNiwgODcsIDY5LCA4MywgODQsIDEyOCwgODcsIDY5LCA4MywgCi0gICAgMjEyLCA4NywgNjksIDgwLCAxMjgsIDg3LCA2OSwgNzksIDEyOCwgODcsIDY5LCA3OCwgMTI4LCA4NywgNjksIDc2LCA3NiwgCi0gICAgMTI4LCA4NywgNjksIDczLCA3MSwgNzIsIDIxMiwgODcsIDY5LCA2OSwgNzgsIDEyOCwgODcsIDY5LCA2OCwgNzEsIDY5LCAKLSAgICA0NSwgODQsIDY1LCA3MywgNzYsIDY5LCAxOTYsIDg3LCA2OSwgNjgsIDY4LCA3MywgNzgsIDcxLCAxMjgsIDg3LCA2OSwgNjUsIAotICAgIDgyLCAyMTcsIDg3LCA2OSwgNjUsIDgwLCA3OSwgNzgsIDEyOCwgODcsIDY3LCAxMjgsIDg3LCA2NiwgMTI4LCA4NywgNjUsIAotICAgIDg5LCAxMjgsIDg3LCA2NSwgMjE3LCA4NywgNjUsIDg4LCA3MywgNzgsIDE5OSwgODcsIDY1LCA4OCwgMTI4LCA4NywgNjUsIAotICAgIDg3LCA0NSwgNjUsIDg5LCA3MywgNzgsIDQ1LCA4MiwgNjksIDgzLCA3MiwgMTI4LCA4NywgNjUsIDg3LCAxMjgsIDg3LCA2NSwgCi0gICAgMjE1LCA4NywgNjUsIDg2LCAyMTcsIDg3LCA2NSwgODYsIDczLCA3OCwgMTk5LCA4NywgNjUsIDg2LCA2OSwgODMsIDEyOCwgCi0gICAgODcsIDY1LCA4NiwgNjksIDEyOCwgODcsIDY1LCA4NiwgMTk3LCA4NywgNjUsIDg1LCAxMjgsIDg3LCA2NSwgODQsIDg0LCAKLSAgICA3OSwgMTI4LCA4NywgNjUsIDg0LCA2OSwgODIsIDc3LCA2OSwgNzYsIDc5LCA3OCwgMTI4LCA4NywgNjUsIDg0LCA2OSwgODIsIAotICAgIDEyOCwgODcsIDY1LCA4NCwgNjksIDIxMCwgODcsIDY1LCA4NCwgNjcsIDcyLCAxMjgsIDg3LCA2NSwgODQsIDEyOCwgODcsIAotICAgIDY1LCA4MywgODQsIDczLCA3OCwgNzEsIDEyOCwgODcsIDY1LCA4MywgODMsIDY1LCA3NiwgNzYsIDY1LCA3NywgMTI4LCA4NywgCi0gICAgNjUsIDgzLCA3NiwgNjUsIDEyOCwgODcsIDY1LCA4MywgNzYsIDE5MywgODcsIDY1LCA4MywgNjUsIDc2LCA3NiwgNjUsIDc3LCAKLSAgICAxMjgsIDg3LCA2NSwgODMsIDY1LCA3NiwgNzYsIDY1LCAyMDUsIDg3LCA2NSwgODIsIDc4LCA3MywgNzgsIDE5OSwgODcsIAotICAgIDY1LCA4MCwgMTI4LCA4NywgNjUsIDc4LCA3MywgNzgsIDE5OSwgODcsIDY1LCA3OCwgNzEsIDc1LCA4NSwgNzksIDgxLCAKLSAgICAxMjgsIDg3LCA2NSwgNzgsIDY4LCA2OSwgODIsIDY5LCA4MiwgMTI4LCA4NywgNjUsIDc4LCAxMjgsIDg3LCA2NSwgNzYsIAotICAgIDc2LCAxMjgsIDg3LCA2NSwgNzYsIDc1LCAxMjgsIDg3LCA2NSwgNzYsIDIwMywgODcsIDY1LCA3MywgODQsIDczLCA3OCwgCi0gICAgNzEsIDEyOCwgODcsIDY1LCA3MywgMTI4LCA4NywgNjUsIDY5LCA3OCwgMTI4LCA4NywgNjUsIDY5LCAxMjgsIDg3LCA2NSwgCi0gICAgNjUsIDg2LCA4NSwgMTI4LCA4NywgNDgsIDUwLCA1MywgMTI4LCA4NywgNDgsIDUwLCA1MiwgNjUsIDEyOCwgODcsIDQ4LCAKLSAgICA1MCwgNTIsIDEyOCwgODcsIDQ4LCA1MCwgNTEsIDEyOCwgODcsIDQ4LCA1MCwgNTAsIDEyOCwgODcsIDQ4LCA1MCwgNDksIAotICAgIDEyOCwgODcsIDQ4LCA1MCwgNDgsIDEyOCwgODcsIDQ4LCA0OSwgNTcsIDEyOCwgODcsIDQ4LCA0OSwgNTYsIDY1LCAxMjgsIAotICAgIDg3LCA0OCwgNDksIDU2LCAxMjgsIDg3LCA0OCwgNDksIDU1LCA2NSwgMTI4LCA4NywgNDgsIDQ5LCA1NSwgMTI4LCA4NywgCi0gICAgNDgsIDQ5LCA1NCwgMTI4LCA4NywgNDgsIDQ5LCA1MywgMTI4LCA4NywgNDgsIDQ5LCA1MiwgNjUsIDEyOCwgODcsIDQ4LCAKLSAgICA0OSwgNTIsIDEyOCwgODcsIDQ4LCA0OSwgNTEsIDEyOCwgODcsIDQ4LCA0OSwgNTAsIDEyOCwgODcsIDQ4LCA0OSwgNDksIAotICAgIDEyOCwgODcsIDQ4LCA0OSwgNDgsIDY1LCAxMjgsIDg3LCA0OCwgNDksIDQ4LCAxMjgsIDg3LCA0OCwgNDgsIDU3LCA2NSwgCi0gICAgMTI4LCA4NywgNDgsIDQ4LCA1NywgMTI4LCA4NywgNDgsIDQ4LCA1NiwgMTI4LCA4NywgNDgsIDQ4LCA1NSwgMTI4LCA4NywgCi0gICAgNDgsIDQ4LCA1NCwgMTI4LCA4NywgNDgsIDQ4LCA1MywgMTI4LCA4NywgNDgsIDQ4LCA1MiwgMTI4LCA4NywgNDgsIDQ4LCAKLSAgICA1MSwgNjUsIDEyOCwgODcsIDQ4LCA0OCwgNTEsIDEyOCwgODcsIDQ4LCA0OCwgNTAsIDEyOCwgODcsIDQ4LCA0OCwgNDksIAotICAgIDEyOCwgODYsIDkwLCA3NywgNjksIDg0LCAxMjgsIDg2LCA4OSwgODgsIDEyOCwgODYsIDg5LCA4NCwgMTI4LCA4NiwgODksIAotICAgIDgyLCA4OCwgMTI4LCA4NiwgODksIDgyLCAxMjgsIDg2LCA4OSwgODAsIDEyOCwgODYsIDg5LCAxMjgsIDg2LCA4NywgNjUsIAotICAgIDEyOCwgODYsIDg1LCA4OCwgMTI4LCA4NiwgODUsIDg0LCAxMjgsIDg2LCA4NSwgODIsIDg4LCAxMjgsIDg2LCA4NSwgODIsIAorICAgIDgzLCAxMjgsIDY1LCA4MCwgMjA0LCA2OSwgNzMsIDcxLCA3MiwgODQsIDEyOCwgNzAsIDg1LCA3OCwgNjcsIDg0LCA3MywgCisgICAgNzksIDc4LCA2NSwgMjA0LCA4MywgNjksIDg2LCA2OSwgNzgsIDEyOCwgNzIsIDc5LCA4MiwgNzMsIDkwLCA3OSwgNzgsIDg0LCAKKyAgICA2NSwgMjA0LCA3NiwgNjUsIDIwNywgNzgsIDczLCA3OCwgNjksIDEyOCwgODQsIDY5LCA3NiwgNjksIDcxLCA4MiwgNjUsIAorICAgIDgwLCAyMDAsIDY2LCA3OSwgODAsIDc5LCA3NywgNzksIDcwLCAyMDcsIDc4LCA2NSwgMTI4LCA4MiwgNjUsIDEyOCwgNzEsIAorICAgIDgyLCA2NSwgODYsIDY5LCAxMjgsIDc5LCA4MCwgNjksIDIwNiwgODYsIDEyOCwgOTAsIDkwLCA4OSwgODgsIDEyOCwgOTAsIAorICAgIDkwLCA4OSwgODQsIDEyOCwgOTAsIDkwLCA4OSwgODIsIDg4LCAxMjgsIDkwLCA5MCwgODksIDgyLCAxMjgsIDkwLCA5MCwgCisgICAgODksIDgwLCAxMjgsIDkwLCA5MCwgODksIDEyOCwgOTAsIDkwLCA4NSwgODgsIDEyOCwgOTAsIDkwLCA4NSwgODIsIDg4LCAKKyAgICAxMjgsIDkwLCA5MCwgODUsIDgyLCAxMjgsIDkwLCA5MCwgODUsIDgwLCAxMjgsIDkwLCA5MCwgODUsIDEyOCwgOTAsIDkwLCAKKyAgICA3OSwgODgsIDEyOCwgOTAsIDkwLCA3OSwgODAsIDEyOCwgOTAsIDkwLCA3OSwgMTI4LCA5MCwgOTAsIDczLCA4OCwgMTI4LCAKKyAgICA5MCwgOTAsIDczLCA4NCwgMTI4LCA5MCwgOTAsIDczLCA4MCwgMTI4LCA5MCwgOTAsIDczLCA2OSwgODgsIDEyOCwgOTAsIAorICAgIDkwLCA3MywgNjksIDg0LCAxMjgsIDkwLCA5MCwgNzMsIDY5LCA4MCwgMTI4LCA5MCwgOTAsIDczLCA2OSwgMTI4LCA5MCwgCisgICAgOTAsIDczLCAxMjgsIDkwLCA5MCwgNjksIDg4LCAxMjgsIDkwLCA5MCwgNjksIDgwLCAxMjgsIDkwLCA5MCwgNjksIDY5LCAKKyAgICAxMjgsIDkwLCA5MCwgNjksIDEyOCwgOTAsIDkwLCA2NSwgODgsIDEyOCwgOTAsIDkwLCA2NSwgODQsIDEyOCwgOTAsIDkwLCAKKyAgICA2NSwgODAsIDEyOCwgOTAsIDkwLCA2NSwgNjUsIDEyOCwgOTAsIDkwLCA2NSwgMTI4LCA5MCwgODksIDcxLCA3OSwgODMsIAorICAgIDEyOCwgOTAsIDg3LCA2NSwgODIsIDY1LCA3NSwgNjUsIDg5LCAxMjgsIDkwLCA4NywgNjUsIDEyOCwgOTAsIDg1LCA4NCwgCisgICAgMTI4LCA5MCwgODUsIDc5LCA4OCwgMTI4LCA5MCwgODUsIDc5LCA4MCwgMTI4LCA5MCwgODUsIDc5LCAxMjgsIDkwLCA4NSwgCisgICAgNzcsIDEyOCwgOTAsIDg1LCA2NiwgODUsIDgyLCAxMjgsIDkwLCA4NSwgNTMsIDEyOCwgOTAsIDg1LCAxODEsIDkwLCA4MiwgCisgICAgNjUsIDEyOCwgOTAsIDgxLCA2NSwgODAsIDcyLCAxOTMsIDkwLCA3OSwgODQsIDEyOCwgOTAsIDc5LCA3OSwgMTI4LCA5MCwgCisgICAgNzksIDY1LCAxMjgsIDkwLCA3NiwgNjUsIDc3LCAxOTMsIDkwLCA3NiwgNjUsIDEyOCwgOTAsIDc2LCAxOTMsIDkwLCA3NCwgCisgICAgNjksIDEyOCwgOTAsIDczLCA5MCwgNTAsIDEyOCwgOTAsIDczLCA4MSwgNjUsIDY1LCAxMjgsIDkwLCA3MywgNzgsIDc5LCAKKyAgICA4MiwgMTI4LCA5MCwgNzMsIDc2LCA2OCwgNjksIDEyOCwgOTAsIDczLCA3MSwgOTAsIDY1LCAxOTksIDkwLCA3MywgNzEsIAorICAgIDEyOCwgOTAsIDczLCA2OCwgMTkzLCA5MCwgNzMsIDY2LCAxMjgsIDkwLCA3MywgMTk0LCA5MCwgNzMsIDUxLCAxMjgsIDkwLCAKKyAgICAyMDEsIDkwLCA3MiwgODksIDg4LCAxMjgsIDkwLCA3MiwgODksIDg0LCAxMjgsIDkwLCA3MiwgODksIDgyLCA4OCwgMTI4LCAKKyAgICA5MCwgNzIsIDg5LCA4MiwgMTI4LCA5MCwgNzIsIDg5LCA4MCwgMTI4LCA5MCwgNzIsIDg5LCAxMjgsIDkwLCA3MiwgODcsIAorICAgIDY5LCAxMjgsIDkwLCA3MiwgODcsIDY1LCAxMjgsIDkwLCA3MiwgODUsIDg4LCAxMjgsIDkwLCA3MiwgODUsIDg0LCAxMjgsIAorICAgIDkwLCA3MiwgODUsIDgyLCA4OCwgMTI4LCA5MCwgNzIsIDg1LCA4MiwgMTI4LCA5MCwgNzIsIDg1LCA4MCwgMTI4LCA5MCwgCisgICAgNzIsIDg1LCA3OSwgODgsIDEyOCwgOTAsIDcyLCA4NSwgNzksIDgwLCAxMjgsIDkwLCA3MiwgODUsIDc5LCAxMjgsIDkwLCAKKyAgICA3MiwgODUsIDEyOCwgOTAsIDcyLCA3OSwgODgsIDEyOCwgOTAsIDcyLCA3OSwgODQsIDEyOCwgOTAsIDcyLCA3OSwgODAsIAorICAgIDEyOCwgOTAsIDcyLCA3OSwgNzksIDEyOCwgOTAsIDcyLCA3OSwgMTI4LCA5MCwgNzIsIDczLCA4NiwgNjksIDg0LCA2OSwgCisgICAgMTI4LCA5MCwgNzIsIDczLCAxMjgsIDkwLCA3MiwgNjksIDg4LCAxMjgsIDkwLCA3MiwgNjksIDg0LCAxMjgsIDkwLCA3MiwgCisgICAgNjksIDgwLCAxMjgsIDkwLCA3MiwgNjksIDY5LCAxMjgsIDkwLCA3MiwgNjksIDEyOCwgOTAsIDcyLCAxOTcsIDkwLCA3MiwgCisgICAgNjUsIDg4LCAxMjgsIDkwLCA3MiwgNjUsIDg0LCAxMjgsIDkwLCA3MiwgNjUsIDgyLCAxMjgsIDkwLCA3MiwgNjUsIDgwLCAKKyAgICAxMjgsIDkwLCA3MiwgNjUsIDczLCA3OCwgMTI4LCA5MCwgNzIsIDY1LCA2NSwgMTI4LCA5MCwgNzIsIDY1LCAxMjgsIDkwLCAKKyAgICA3MiwgMTI4LCA5MCwgNjksIDg0LCA2NSwgMTI4LCA5MCwgNjksIDgyLCA3OSwgMTI4LCA5MCwgNjksIDgyLCAyMDcsIDkwLCAKKyAgICA2OSwgNzgsIDEyOCwgOTAsIDY5LCA3NywgNzYsIDg5LCA2NSwgMTI4LCA5MCwgNjksIDc3LCA3NiwgNzQsIDY1LCAxMjgsIAorICAgIDkwLCA2OSwgNTAsIDEyOCwgOTAsIDE5NywgOTAsIDY1LCA4OSwgNzgsIDEyOCwgOTAsIDY1LCA4OSwgNzMsIDc4LCAxMjgsIAorICAgIDkwLCA2NSwgODksIDczLCAyMDYsIDkwLCA2NSwgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA5MCwgNjUsIDg0LCA2NSwgCisgICAgMTI4LCA5MCwgNjUsIDgyLCA4MSwgNjUsIDEyOCwgOTAsIDY1LCA4MSwgNjksIDE5OCwgOTAsIDY1LCA3NywgODgsIDEyOCwgCisgICAgOTAsIDY1LCAyMDQsIDkwLCA2NSwgNzMsIDc4LCAxMjgsIDkwLCA2NSwgNzMsIDIwNiwgOTAsIDY1LCA3MywgMTI4LCA5MCwgCisgICAgNjUsIDcyLCAxMjgsIDkwLCA2NSwgMjAwLCA5MCwgNjUsIDcxLCAxMjgsIDkwLCA2NSwgNjksIDcwLCAxMjgsIDkwLCA0OCwgCisgICAgNDksIDU0LCA3MiwgMTI4LCA5MCwgNDgsIDQ5LCA1NCwgNzEsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDcwLCAxMjgsIDkwLCAKKyAgICA0OCwgNDksIDU0LCA2OSwgMTI4LCA5MCwgNDgsIDQ5LCA1NCwgNjgsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDY3LCAxMjgsIAorICAgIDkwLCA0OCwgNDksIDU0LCA2NiwgMTI4LCA5MCwgNDgsIDQ5LCA1NCwgNjUsIDEyOCwgOTAsIDQ4LCA0OSwgNTQsIDEyOCwgCisgICAgOTAsIDQ4LCA0OSwgNTMsIDczLCAxMjgsIDkwLCA0OCwgNDksIDUzLCA3MiwgMTI4LCA5MCwgNDgsIDQ5LCA1MywgNzEsIAorICAgIDEyOCwgOTAsIDQ4LCA0OSwgNTMsIDcwLCAxMjgsIDkwLCA0OCwgNDksIDUzLCA2OSwgMTI4LCA5MCwgNDgsIDQ5LCA1MywgCisgICAgNjgsIDEyOCwgOTAsIDQ4LCA0OSwgNTMsIDY3LCAxMjgsIDkwLCA0OCwgNDksIDUzLCA2NiwgMTI4LCA5MCwgNDgsIDQ5LCAKKyAgICA1MywgNjUsIDEyOCwgOTAsIDQ4LCA0OSwgNTMsIDEyOCwgOTAsIDQ4LCA0OSwgNTIsIDEyOCwgOTAsIDQ4LCA0OSwgNTEsIAorICAgIDEyOCwgOTAsIDQ4LCA0OSwgNTAsIDEyOCwgOTAsIDQ4LCA0OSwgNDksIDEyOCwgOTAsIDQ4LCA0OSwgNDgsIDEyOCwgOTAsIAorICAgIDQ4LCA0OCwgNTcsIDEyOCwgOTAsIDQ4LCA0OCwgNTYsIDEyOCwgOTAsIDQ4LCA0OCwgNTUsIDEyOCwgOTAsIDQ4LCA0OCwgCisgICAgNTQsIDEyOCwgOTAsIDQ4LCA0OCwgNTMsIDY1LCAxMjgsIDkwLCA0OCwgNDgsIDUzLCAxMjgsIDkwLCA0OCwgNDgsIDUyLCAKKyAgICA2NSwgMTI4LCA5MCwgNDgsIDQ4LCA1MiwgMTI4LCA5MCwgNDgsIDQ4LCA1MSwgNjYsIDEyOCwgOTAsIDQ4LCA0OCwgNTEsIAorICAgIDY1LCAxMjgsIDkwLCA0OCwgNDgsIDUxLCAxMjgsIDkwLCA0OCwgNDgsIDUwLCA2OCwgMTI4LCA5MCwgNDgsIDQ4LCA1MCwgCisgICAgNjcsIDEyOCwgOTAsIDQ4LCA0OCwgNTAsIDY2LCAxMjgsIDkwLCA0OCwgNDgsIDUwLCA2NSwgMTI4LCA5MCwgNDgsIDQ4LCAKKyAgICA1MCwgMTI4LCA5MCwgNDgsIDQ4LCA0OSwgMTI4LCA5MCwgMTI4LCAyMTgsIDg5LCA4OSwgODgsIDEyOCwgODksIDg5LCA4NCwgCisgICAgMTI4LCA4OSwgODksIDgyLCA4OCwgMTI4LCA4OSwgODksIDgyLCAxMjgsIDg5LCA4OSwgODAsIDEyOCwgODksIDg5LCA2OSwgCisgICAgMTI4LCA4OSwgODksIDY1LCAxMjgsIDg5LCA4OSwgMTI4LCA4OSwgODcsIDc5LCA3OSwgMTI4LCA4OSwgODcsIDc5LCAxMjgsIAorICAgIDg5LCA4NywgNzMsIDczLCAxMjgsIDg5LCA4NywgNzMsIDEyOCwgODksIDg3LCA2OSwgMTI4LCA4OSwgODcsIDY1LCA2NSwgCisgICAgMTI4LCA4OSwgODcsIDY1LCAxMjgsIDg5LCA4NiwgMTI4LCA4OSwgODUsIDg4LCAxMjgsIDg5LCA4NSwgODcsIDc5LCA4MSwgCisgICAgMTI4LCA4OSwgODUsIDg1LCA3NSwgNjUsIDc2LCA2OSwgNjUsIDgwLCA3MywgNzgsIDg0LCA4NSwgMTI4LCA4OSwgODUsIDg1LCAKKyAgICAxMjgsIDg5LCA4NSwgODQsIDEyOCwgODksIDg1LCA4MywgMTI4LCA4OSwgODUsIDIxMSwgODksIDg1LCA4MiwgODgsIDEyOCwgCisgICAgODksIDg1LCA4MiwgMTI4LCA4OSwgODUsIDgxLCAxMjgsIDg5LCA4NSwgMjA5LCA4OSwgODUsIDgwLCAxMjgsIDg5LCA4NSwgCisgICAgNzksIDg4LCAxMjgsIDg5LCA4NSwgNzksIDg0LCAxMjgsIDg5LCA4NSwgNzksIDgwLCAxMjgsIDg5LCA4NSwgNzksIDc3LCAKKyAgICAxMjgsIDg5LCA4NSwgNzksIDEyOCwgODksIDg1LCA3OCwgMTI4LCA4OSwgODUsIDc3LCAxMjgsIDg5LCA4NSwgNjksIDgxLCAKKyAgICAxMjgsIDg5LCA4NSwgNjksIDEyOCwgODksIDg1LCA2OCwgNzIsIDEyOCwgODksIDg1LCA2OCwgMjAwLCA4OSwgODUsIDY1LCAKKyAgICA3OCwgMTI4LCA4OSwgODUsIDY1LCA2OSwgNzgsIDEyOCwgODksIDg1LCA0NSwgODksIDY5LCA3OSwgMTI4LCA4OSwgODUsIAorICAgIDQ1LCA4OSwgNjksIDEyOCwgODksIDg1LCA0NSwgODUsIDEyOCwgODksIDg1LCA0NSwgNzksIDEyOCwgODksIDg1LCA0NSwgCisgICAgNzMsIDEyOCwgODksIDg1LCA0NSwgNjksIDc5LCAxMjgsIDg5LCA4NSwgNDUsIDY5LCAxMjgsIDg5LCA4NSwgNDUsIDY1LCAKKyAgICA2OSwgMTI4LCA4OSwgODUsIDQ1LCA2NSwgMTI4LCA4OSwgODUsIDEyOCwgODksIDIxMywgODksIDgwLCA4MywgNzMsIDc2LCAKKyAgICA3MywgMTI4LCA4OSwgODAsIDc5LCA4MiwgODIsIDc5LCA3MywgMTI4LCA4OSwgODAsIDc5LCA3NSwgODIsIDczLCA4MywgNzMsIAorICAgIDgzLCAxMjgsIDg5LCA4MCwgNzksIDc1LCA4MiwgNzMsIDgzLCA3MywgMjExLCA4OSwgODAsIDc5LCA3MSwgNjksIDcxLCA4MiwgCisgICAgNjUsIDc3LCA3NywgNjksIDc4LCA3MywgMTI4LCA4OSwgNzksIDg5LCAxMjgsIDg5LCA3OSwgODgsIDEyOCwgODksIDc5LCAKKyAgICA4NSwgODQsIDcyLCA3MCwgODUsIDc2LCA3OCwgNjksIDgzLCA4MywgMTI4LCA4OSwgNzksIDg1LCA4NCwgNzIsIDcwLCA4NSwgCisgICAgMjA0LCA4OSwgNzksIDg0LCAxMjgsIDg5LCA3OSwgODIsIDczLCAxMjgsIDg5LCA3OSwgODEsIDEyOCwgODksIDc5LCAyMDksIAorICAgIDg5LCA3OSwgODAsIDEyOCwgODksIDc5LCA3OSwgMTI4LCA4OSwgNzksIDc3LCA3OSwgMTI4LCA4OSwgNzksIDcxLCA3MiwgCisgICAgMTI4LCA4OSwgNzksIDY4LCA3MiwgMTI4LCA4OSwgNzksIDY4LCAxMjgsIDg5LCA3OSwgMTk2LCA4OSwgNzksIDY1LCAxMjgsIAorICAgIDg5LCA3OSwgNDUsIDg5LCA2OSwgNzksIDEyOCwgODksIDc5LCA0NSwgODksIDY1LCA2OSwgMTI4LCA4OSwgNzksIDQ1LCA4OSwgCisgICAgNjUsIDEyOCwgODksIDc5LCA0NSwgNzksIDEyOCwgODksIDc5LCA0NSwgNzMsIDEyOCwgODksIDc5LCA0NSwgNjksIDc5LCAKKyAgICAxMjgsIDg5LCA3OSwgNDUsIDY1LCA2OSwgMTI4LCA4OSwgNzksIDQ1LCA2NSwgMTI4LCA4OSwgNzksIDEyOCwgODksIDIwNywgCisgICAgODksIDczLCA5MCwgNjksIDg0LCAxMjgsIDg5LCA3MywgODgsIDEyOCwgODksIDczLCA4NywgNzgsIDEyOCwgODksIDczLCAKKyAgICA4NCwgMTI4LCA4OSwgNzMsIDgwLCAxMjgsIDg5LCA3MywgNzgsIDcxLCAxMjgsIDg5LCA3MywgNzMsIDEyOCwgODksIDczLCAKKyAgICAxOTksIDg5LCA3MywgNjksIDg4LCAxMjgsIDg5LCA3MywgNjksIDg0LCAxMjgsIDg5LCA3MywgNjksIDgwLCAxMjgsIDg5LCAKKyAgICA3MywgNjksIDY5LCAxMjgsIDg5LCA3MywgNjksIDEyOCwgODksIDczLCA2OCwgNjgsIDczLCA4MywgMjAwLCA4OSwgNzMsIAorICAgIDQ1LCA4NSwgMTI4LCA4OSwgNzMsIDEyOCwgODksIDcwLCA2OSwgODMsIDczLCA4MywgMTI4LCA4OSwgNzAsIDY5LCA4MywgCisgICAgNzMsIDIxMSwgODksIDcwLCA2OSwgMjA2LCA4OSwgNjksIDg5LCAxMjgsIDg5LCA2OSwgODcsIDEyOCwgODksIDY5LCA4NSwgCisgICAgODgsIDEyOCwgODksIDY5LCA4NSwgODIsIDY1LCA2OSwgMTI4LCA4OSwgNjksIDg1LCA4MSwgMTI4LCA4OSwgNjksIDg1LCAKKyAgICA3NywgMTI4LCA4OSwgNjksIDg1LCA2NSwgNjksIDg0LCAxMjgsIDg5LCA2OSwgODUsIDY1LCA2OSwgMTI4LCA4OSwgNjksIAorICAgIDg0LCA3MywgODYsIDEyOCwgODksIDY5LCA4MywgODQsIDg1LCAxMjgsIDg5LCA2OSwgODMsIDczLCA2OSwgODUsIDc4LCA3MSwgCisgICAgNDUsIDgzLCA3MywgNzksIDgzLCAxMjgsIDg5LCA2OSwgODMsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDgwLCA2NSwgNzgsIAorICAgIDgzLCA3MywgNzksIDgzLCAxMjgsIDg5LCA2OSwgODMsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDc3LCA3MywgNjksIDg1LCAKKyAgICA3NywgMTI4LCA4OSwgNjksIDgzLCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgODksIAorICAgIDY5LCA4MywgNzMsIDY5LCA4NSwgNzgsIDcxLCAxMjgsIDg5LCA2OSwgODIsIDg1LCAxMjgsIDg5LCA2OSwgODIsIDIxMywgCisgICAgODksIDY5LCA4MiwgNzMsIDEyOCwgODksIDY5LCA4MiwgNjUsIDIwMCwgODksIDY5LCA4MiwgMTI4LCA4OSwgNjksIDc5LCAKKyAgICA4MiwgNzMsIDc4LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgODksIDY5LCA3OSwgNDUsIDg5LCA2NSwgMTI4LCA4OSwgNjksIAorICAgIDc5LCA0NSwgODUsIDEyOCwgODksIDY5LCA3OSwgNDUsIDc5LCAxMjgsIDg5LCA2OSwgNzgsIDczLCA4MywgNjksIDIwMSwgCisgICAgODksIDY5LCA3OCwgNjUsIDgwLCAxMjgsIDg5LCA2OSwgNzgsIDEyOCwgODksIDY5LCAyMDYsIDg5LCA2OSwgNzYsIDc2LCAKKyAgICA3OSwgODcsIDEyOCwgODksIDY5LCA3NiwgNzYsIDc5LCAyMTUsIDg5LCA2OSwgNzIsIDEyOCwgODksIDY5LCA2OSwgMTI4LCAKKyAgICA4OSwgNjksIDY1LCAyMTAsIDg5LCA2OSwgNjUsIDEyOCwgODksIDY1LCA5MCwgOTAsIDEyOCwgODksIDY1LCA5MCwgNzIsIAorICAgIDEyOCwgODksIDY1LCA5MCwgMTI4LCA4OSwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA4OSwgNjUsIDg5LCAxMjgsIAorICAgIDg5LCA2NSwgODcsIDEyOCwgODksIDY1LCA4NiwgMTI4LCA4OSwgNjUsIDg1LCAxMjgsIDg5LCA2NSwgODQsIDg0LCAxMjgsIAorICAgIDg5LCA2NSwgODQsIDczLCAxMjgsIDg5LCA2NSwgODQsIDcyLCAxMjgsIDg5LCA2NSwgODQsIDEyOCwgODksIDY1LCA4MywgCisgICAgODMsIDEyOCwgODksIDY1LCA4MywgNzIsIDEyOCwgODksIDY1LCA4MywgMTI4LCA4OSwgNjUsIDgyLCA4MiwgMTI4LCA4OSwgCisgICAgNjUsIDgyLCAxMjgsIDg5LCA2NSwgMjEwLCA4OSwgNjUsIDgxLCAxMjgsIDg5LCA2NSwgODAsIDEyOCwgODksIDY1LCA3OCwgCisgICAgNzEsIDEyOCwgODksIDY1LCA3OCwgMTk5LCA4OSwgNjUsIDc4LCAxMjgsIDg5LCA2NSwgNzcsIDc5LCA3NSwgMTI4LCA4OSwgCisgICAgNjUsIDc3LCA2NSwgNzUsIDc1LCA2NSwgNzgsIDEyOCwgODksIDY1LCA3NywgMTI4LCA4OSwgNjUsIDc2LCAxMjgsIDg5LCAKKyAgICA2NSwgNzUsIDcyLCA3MiwgMTI4LCA4OSwgNjUsIDc1LCA3MiwgMTI4LCA4OSwgNjUsIDc1LCA2NSwgODMsIDcyLCAxMjgsIAorICAgIDg5LCA2NSwgNzUsIDEyOCwgODksIDY1LCA3NCwgODUsIDgyLCA4NiwgNjksIDY4LCA3MywgMTk1LCA4OSwgNjUsIDc0LCAKKyAgICAxMjgsIDg5LCA2NSwgNzMsIDEyOCwgODksIDY1LCA3MiwgNzIsIDEyOCwgODksIDY1LCA3MiwgMTI4LCA4OSwgNjUsIDcxLCAKKyAgICA3OCwgMTI4LCA4OSwgNjUsIDcxLCA3MiwgNzIsIDEyOCwgODksIDY1LCA3MSwgNzIsIDEyOCwgODksIDY1LCA3MSwgMTI4LCAKKyAgICA4OSwgNjUsIDcwLCAyMTMsIDg5LCA2NSwgNzAsIDEyOCwgODksIDY1LCA2OSwgNzcsIDc3LCA2NSwgNjksIDEyOCwgODksIAorICAgIDY1LCA2OCwgNzIsIDEyOCwgODksIDY1LCA2OCwgNjgsIDcyLCAxMjgsIDg5LCA2NSwgNjgsIDY4LCAxMjgsIDg5LCA2NSwgCisgICAgNjgsIDEyOCwgODksIDY1LCA2NywgNzIsIDEyOCwgODksIDY1LCA2NiwgNzIsIDEyOCwgODksIDY1LCA2NiwgMTI4LCA4OSwgCisgICAgNjUsIDY1LCA4MiwgODUsIDEyOCwgODksIDY1LCA2NSwgNzMsIDEyOCwgODksIDY1LCA2NSwgNjgsIDc5LCAxMjgsIDg5LCAKKyAgICA2NSwgNjUsIDEyOCwgODksIDY1LCA0NSwgODksIDc5LCAxMjgsIDg5LCA2NSwgNDUsIDg1LCAxMjgsIDg5LCA2NSwgNDUsIAorICAgIDc5LCAxMjgsIDg5LCA0OCwgNDgsIDU2LCAxMjgsIDg5LCA0OCwgNDgsIDU1LCAxMjgsIDg5LCA0OCwgNDgsIDU0LCAxMjgsIAorICAgIDg5LCA0OCwgNDgsIDUzLCAxMjgsIDg5LCA0OCwgNDgsIDUyLCAxMjgsIDg5LCA0OCwgNDgsIDUxLCAxMjgsIDg5LCA0OCwgCisgICAgNDgsIDUwLCAxMjgsIDg5LCA0OCwgNDgsIDQ5LCA2NSwgMTI4LCA4OSwgNDgsIDQ4LCA0OSwgMTI4LCA4OSwgNDUsIDY3LCAKKyAgICA4MiwgNjksIDE5NywgODgsIDg5LCA4OCwgMTI4LCA4OCwgODksIDg1LCAxMjgsIDg4LCA4OSwgODQsIDEyOCwgODgsIDg5LCAKKyAgICA4MiwgODgsIDEyOCwgODgsIDg5LCA4MiwgMTI4LCA4OCwgODksIDgwLCAxMjgsIDg4LCA4OSwgNzksIDEyOCwgODgsIDg5LCAKKyAgICA3MywgMTI4LCA4OCwgODksIDY5LCA2OSwgMTI4LCA4OCwgODksIDY5LCAxMjgsIDg4LCA4OSwgNjUsIDY1LCAxMjgsIDg4LCAKKyAgICA4OSwgNjUsIDEyOCwgODgsIDg5LCAxMjgsIDg4LCA4NywgNzMsIDEyOCwgODgsIDg3LCA2OSwgNjksIDEyOCwgODgsIDg3LCAKKyAgICA2OSwgMTI4LCA4OCwgODcsIDY1LCA2NSwgMTI4LCA4OCwgODcsIDY1LCAxMjgsIDg4LCA4NiwgNjksIDEyOCwgODgsIDg2LCAKKyAgICA2NSwgMTI4LCA4OCwgODUsIDc5LCA4OCwgMTI4LCA4OCwgODUsIDc5LCAxMjgsIDg4LCA4NSwgMTI4LCA4OCwgODMsIDcyLCAKKyAgICA2NSwgNjUsIDg5LCA2NSwgODQsIDcyLCA3MywgODksIDY1LCAxMjgsIDg4LCA3OSwgODgsIDEyOCwgODgsIDc5LCA4NCwgCisgICAgMTI4LCA4OCwgNzksIDgyLCAxMjgsIDg4LCA3OSwgODAsIDEyOCwgODgsIDc5LCA2NSwgMTI4LCA4OCwgNzksIDEyOCwgODgsIAorICAgIDczLCA4OCwgMTI4LCA4OCwgNzMsIDg0LCAxMjgsIDg4LCA3MywgODIsIDc5LCAyMDYsIDg4LCA3MywgODAsIDEyOCwgODgsIAorICAgIDczLCA2OSwgODgsIDEyOCwgODgsIDczLCA2OSwgODQsIDEyOCwgODgsIDczLCA2OSwgODAsIDEyOCwgODgsIDczLCA2OSwgCisgICAgMTI4LCA4OCwgNzMsIDEyOCwgODgsIDcxLCAxMjgsIDg4LCA2OSwgODMsIDg0LCA2OSwgMjExLCA4OCwgNjksIDcyLCAxMjgsIAorICAgIDg4LCA2OSwgNjksIDEyOCwgODgsIDY5LCAxMjgsIDg4LCA2NSwgNzgsIDEyOCwgODgsIDY1LCA2NSwgMTI4LCA4OCwgNjUsIAorICAgIDEyOCwgODgsIDQ4LCA0OCwgNTYsIDY1LCAxMjgsIDg4LCA0OCwgNDgsIDU2LCAxMjgsIDg4LCA0OCwgNDgsIDU1LCAxMjgsIAorICAgIDg4LCA0OCwgNDgsIDU0LCA2NSwgMTI4LCA4OCwgNDgsIDQ4LCA1NCwgMTI4LCA4OCwgNDgsIDQ4LCA1MywgMTI4LCA4OCwgCisgICAgNDgsIDQ4LCA1MiwgNjYsIDEyOCwgODgsIDQ4LCA0OCwgNTIsIDY1LCAxMjgsIDg4LCA0OCwgNDgsIDUyLCAxMjgsIDg4LCAKKyAgICA0OCwgNDgsIDUxLCAxMjgsIDg4LCA0OCwgNDgsIDUwLCAxMjgsIDg4LCA0OCwgNDgsIDQ5LCAxMjgsIDg3LCA5MCwgMTI4LCAKKyAgICA4NywgODksIDc4LCA3OCwgMTI4LCA4NywgODksIDc4LCAyMDYsIDg3LCA4NiwgMTI4LCA4NywgODUsIDgwLCAxMjgsIDg3LCAKKyAgICA4NSwgNzksIDg4LCAxMjgsIDg3LCA4NSwgNzksIDgwLCAxMjgsIDg3LCA4NSwgNzksIDEyOCwgODcsIDg1LCA3OCwgNzQsIAorICAgIDIwNywgODcsIDg1LCA3OCwgMTI4LCA4NywgODUsIDc2LCA4NSwgMTI4LCA4NywgODUsIDc2LCAyMTMsIDg3LCA4NSwgNjksIAorICAgIDEyOCwgODcsIDg1LCA2NSwgNjksIDg0LCAxMjgsIDg3LCA4NSwgNjUsIDY5LCA3OCwgMTI4LCA4NywgODUsIDEyOCwgODcsIAorICAgIDgyLCAyMTcsIDg3LCA4MiwgNzksIDc4LCA3MSwgMTI4LCA4NywgODIsIDczLCA4NCwgNzMsIDc4LCAxOTksIDg3LCA4MiwgCisgICAgNjksIDc4LCA2NywgNzIsIDEyOCwgODcsIDgyLCA2OSwgNjUsIDg0LCAyMDAsIDg3LCA4MiwgNjUsIDgwLCA4MCwgNjksIAorICAgIDE5NiwgODcsIDgyLCA2NSwgODAsIDEyOCwgODcsIDc5LCA4OCwgMTI4LCA4NywgNzksIDgyLCA3NSwgNjksIDgyLCAxMjgsIAorICAgIDg3LCA3OSwgODIsIDc1LCAxMjgsIDg3LCA3OSwgODIsIDIwMywgODcsIDc5LCA4MiwgNjgsIDgzLCA4MCwgNjUsIDY3LCA2OSwgCisgICAgMTI4LCA4NywgNzksIDgyLCAxOTYsIDg3LCA3OSwgODAsIDEyOCwgODcsIDc5LCA3OSwgNzgsIDEyOCwgODcsIDc5LCA3OSwgCisgICAgNzYsIDEyOCwgODcsIDc5LCA3OSwgNjgsIDgzLCA0NSwgNjcsIDgyLCA2OSwgMTk3LCA4NywgNzksIDc5LCA2OCwgMTI4LCAKKyAgICA4NywgNzksIDc4LCAxMjgsIDg3LCA3OSwgMjA2LCA4NywgNzksIDc3LCA2OSwgNzgsIDIxMSwgODcsIDc5LCA3NywgNjksIAorICAgIDIwNiwgODcsIDc5LCA3NywgNjUsIDc4LCAyMTEsIDg3LCA3OSwgNzcsIDY1LCA3OCwgMTI4LCA4NywgNzksIDc3LCA2NSwgCisgICAgMjA2LCA4NywgNzksIDc2LCA3OSwgODMsIDc5LCAxMjgsIDg3LCA3OSwgNzYsIDE5OCwgODcsIDc5LCA2OSwgMTI4LCA4NywgCisgICAgNzksIDY1LCAxMjgsIDg3LCA3MywgODQsIDcyLCA3OSwgODUsIDIxMiwgODcsIDczLCA3OCwgODQsIDY5LCA4MiwgMTI4LCAKKyAgICA4NywgNzMsIDc4LCA3NSwgNzMsIDc4LCAxOTksIDg3LCA3MywgNzgsIDc0LCA2NSwgMTI4LCA4NywgNzMsIDc4LCA3MSwgODMsIAorICAgIDEyOCwgODcsIDczLCA3OCwgNjksIDEyOCwgODcsIDczLCA3OCwgMTk3LCA4NywgNzMsIDc4LCA2OCwgODUsIDEyOCwgODcsIAorICAgIDczLCA3OCwgNjgsIDEyOCwgODcsIDczLCA3OCwgMTk2LCA4NywgNzMsIDc4LCAxMjgsIDg3LCA3MywgNzEsIDc4LCA4OSwgCisgICAgNjUsIDc4LCAxMjgsIDg3LCA3MywgNzEsIDcxLCA3NiwgMjE3LCA4NywgNzMsIDY4LCA2OSwgNDUsIDcyLCA2OSwgNjUsIDY4LCAKKyAgICA2OSwgMTk2LCA4NywgNzMsIDY4LCAxOTcsIDg3LCA3MywgNjUsIDc4LCA3MSwgODcsIDY1LCA2NSwgNzUsIDEyOCwgODcsIAorICAgIDczLCA2NSwgNzgsIDcxLCAxMjgsIDg3LCA3MiwgNzksIDc2LCAxOTcsIDg3LCA3MiwgNzMsIDg0LCA2OSwgNDUsIDcwLCA2OSwgCisgICAgNjUsIDg0LCA3MiwgNjksIDgyLCA2OSwgMTk2LCA4NywgNzIsIDczLCA4NCwgNjksIDEyOCwgODcsIDcyLCA2OSwgNjksIDc2LCAKKyAgICA2OSwgMTk2LCA4NywgNzIsIDY5LCA2OSwgNzYsIDY3LCA3MiwgNjUsIDczLCAyMTAsIDg3LCA3MiwgNjksIDY5LCA3NiwgCisgICAgMTI4LCA4NywgNzIsIDY5LCA2OSwgMjA0LCA4NywgNzIsIDY5LCA2NSwgODQsIDEyOCwgODcsIDcyLCA2NSwgNzYsIDY5LCAKKyAgICAxMjgsIDg3LCA3MSwgMTI4LCA4NywgNjksIDg4LCAxMjgsIDg3LCA2OSwgODUsIDg4LCAxMjgsIDg3LCA2OSwgODMsIDg0LCAKKyAgICA2OSwgODIsIDIwNiwgODcsIDY5LCA4MywgODQsIDEyOCwgODcsIDY5LCA4MywgMjEyLCA4NywgNjksIDgwLCAxMjgsIDg3LCAKKyAgICA2OSwgNzksIDEyOCwgODcsIDY5LCA3OCwgMTI4LCA4NywgNjksIDc2LCA3NiwgMTI4LCA4NywgNjksIDczLCA3MSwgNzIsIAorICAgIDIxMiwgODcsIDY5LCA2OSwgNzgsIDEyOCwgODcsIDY5LCA2OCwgNzEsIDY5LCA0NSwgODQsIDY1LCA3MywgNzYsIDY5LCAKKyAgICAxOTYsIDg3LCA2OSwgNjgsIDY4LCA3MywgNzgsIDcxLCAxMjgsIDg3LCA2OSwgNjUsIDgyLCAyMTcsIDg3LCA2OSwgNjUsIAorICAgIDgwLCA3OSwgNzgsIDEyOCwgODcsIDY3LCAxMjgsIDg3LCA2NiwgMTI4LCA4NywgNjUsIDg5LCAxMjgsIDg3LCA2NSwgMjE3LCAKKyAgICA4NywgNjUsIDg4LCA3MywgNzgsIDE5OSwgODcsIDY1LCA4OCwgMTI4LCA4NywgNjUsIDg3LCA0NSwgNjUsIDg5LCA3MywgNzgsIAorICAgIDQ1LCA4MiwgNjksIDgzLCA3MiwgMTI4LCA4NywgNjUsIDg3LCAxMjgsIDg3LCA2NSwgMjE1LCA4NywgNjUsIDg2LCAyMTcsIAorICAgIDg3LCA2NSwgODYsIDczLCA3OCwgMTk5LCA4NywgNjUsIDg2LCA2OSwgODMsIDEyOCwgODcsIDY1LCA4NiwgNjksIDEyOCwgCisgICAgODcsIDY1LCA4NiwgMTk3LCA4NywgNjUsIDg1LCAxMjgsIDg3LCA2NSwgODQsIDg0LCA3OSwgMTI4LCA4NywgNjUsIDg0LCAKKyAgICA2OSwgODIsIDc3LCA2OSwgNzYsIDc5LCA3OCwgMTI4LCA4NywgNjUsIDg0LCA2OSwgODIsIDEyOCwgODcsIDY1LCA4NCwgNjksIAorICAgIDIxMCwgODcsIDY1LCA4NCwgNjcsIDcyLCAxMjgsIDg3LCA2NSwgODQsIDEyOCwgODcsIDY1LCA4MywgODQsIDczLCA3OCwgCisgICAgNzEsIDEyOCwgODcsIDY1LCA4MywgODMsIDY1LCA3NiwgNzYsIDY1LCA3NywgMTI4LCA4NywgNjUsIDgzLCA3NiwgNjUsIAorICAgIDEyOCwgODcsIDY1LCA4MywgNzYsIDE5MywgODcsIDY1LCA4MywgNjUsIDc2LCA3NiwgNjUsIDc3LCAxMjgsIDg3LCA2NSwgCisgICAgODMsIDY1LCA3NiwgNzYsIDY1LCAyMDUsIDg3LCA2NSwgODIsIDc4LCA3MywgNzgsIDE5OSwgODcsIDY1LCA4MCwgMTI4LCAKKyAgICA4NywgNjUsIDc4LCA3MywgNzgsIDE5OSwgODcsIDY1LCA3OCwgNzEsIDc1LCA4NSwgNzksIDgxLCAxMjgsIDg3LCA2NSwgNzgsIAorICAgIDY4LCA2OSwgODIsIDY5LCA4MiwgMTI4LCA4NywgNjUsIDc4LCAxMjgsIDg3LCA2NSwgNzYsIDc2LCAxMjgsIDg3LCA2NSwgCisgICAgNzYsIDc1LCAxMjgsIDg3LCA2NSwgNzYsIDIwMywgODcsIDY1LCA3MywgODQsIDczLCA3OCwgNzEsIDEyOCwgODcsIDY1LCAKKyAgICA3MywgMTI4LCA4NywgNjUsIDY5LCA3OCwgMTI4LCA4NywgNjUsIDY5LCAxMjgsIDg3LCA2NSwgNjUsIDg2LCA4NSwgMTI4LCAKKyAgICA4NywgNDgsIDUwLCA1MywgMTI4LCA4NywgNDgsIDUwLCA1MiwgNjUsIDEyOCwgODcsIDQ4LCA1MCwgNTIsIDEyOCwgODcsIAorICAgIDQ4LCA1MCwgNTEsIDEyOCwgODcsIDQ4LCA1MCwgNTAsIDEyOCwgODcsIDQ4LCA1MCwgNDksIDEyOCwgODcsIDQ4LCA1MCwgCisgICAgNDgsIDEyOCwgODcsIDQ4LCA0OSwgNTcsIDEyOCwgODcsIDQ4LCA0OSwgNTYsIDY1LCAxMjgsIDg3LCA0OCwgNDksIDU2LCAKKyAgICAxMjgsIDg3LCA0OCwgNDksIDU1LCA2NSwgMTI4LCA4NywgNDgsIDQ5LCA1NSwgMTI4LCA4NywgNDgsIDQ5LCA1NCwgMTI4LCAKKyAgICA4NywgNDgsIDQ5LCA1MywgMTI4LCA4NywgNDgsIDQ5LCA1MiwgNjUsIDEyOCwgODcsIDQ4LCA0OSwgNTIsIDEyOCwgODcsIAorICAgIDQ4LCA0OSwgNTEsIDEyOCwgODcsIDQ4LCA0OSwgNTAsIDEyOCwgODcsIDQ4LCA0OSwgNDksIDEyOCwgODcsIDQ4LCA0OSwgCisgICAgNDgsIDY1LCAxMjgsIDg3LCA0OCwgNDksIDQ4LCAxMjgsIDg3LCA0OCwgNDgsIDU3LCA2NSwgMTI4LCA4NywgNDgsIDQ4LCAKKyAgICA1NywgMTI4LCA4NywgNDgsIDQ4LCA1NiwgMTI4LCA4NywgNDgsIDQ4LCA1NSwgMTI4LCA4NywgNDgsIDQ4LCA1NCwgMTI4LCAKKyAgICA4NywgNDgsIDQ4LCA1MywgMTI4LCA4NywgNDgsIDQ4LCA1MiwgMTI4LCA4NywgNDgsIDQ4LCA1MSwgNjUsIDEyOCwgODcsIAorICAgIDQ4LCA0OCwgNTEsIDEyOCwgODcsIDQ4LCA0OCwgNTAsIDEyOCwgODcsIDQ4LCA0OCwgNDksIDEyOCwgODYsIDkwLCA3NywgCisgICAgNjksIDg0LCAxMjgsIDg2LCA4OSwgODgsIDEyOCwgODYsIDg5LCA4NCwgMTI4LCA4NiwgODksIDgyLCA4OCwgMTI4LCA4NiwgCisgICAgODksIDgyLCAxMjgsIDg2LCA4OSwgODAsIDEyOCwgODYsIDg5LCAxMjgsIDg2LCA4NywgNjUsIDEyOCwgODYsIDg1LCA4OCwgCisgICAgMTI4LCA4NiwgODUsIDg1LCAxMjgsIDg2LCA4NSwgODQsIDEyOCwgODYsIDg1LCA4MiwgODgsIDEyOCwgODYsIDg1LCA4MiwgCiAgICAgMTI4LCA4NiwgODUsIDgwLCAxMjgsIDg2LCA4NSwgNzYsIDcxLCA2NSwgMjEwLCA4NiwgODUsIDY5LCA4MSwgMTI4LCA4NiwgCiAgICAgODMsIDEyOCwgODYsIDgyLCA2NSwgNjcsIDcyLCA4OSwgMTI4LCA4NiwgNzksIDg4LCAxMjgsIDg2LCA3OSwgODcsIDY5LCAKICAgICA3NiwgNDUsIDY3LCA2NSwgODIsIDgyLCA3MywgNjksIDIxMCwgODYsIDc5LCA4NywgMTI4LCA4NiwgNzksIDg1LCAxMjgsIApAQCAtMjcyLDIxMyArMjczLDIxNiBAQAogICAgIDc2LCA3MywgNzgsIDEyOCwgODYsIDczLCA3OCwgNjksIDcxLCA2NSwgODIsIDQ1LCA1MSwgMTI4LCA4NiwgNzMsIDc4LCA2OSwgCiAgICAgNzEsIDY1LCA4MiwgNDUsIDUwLCAxMjgsIDg2LCA3MywgNzgsIDY5LCA3MSwgNjUsIDgyLCAxMjgsIDg2LCA3MywgNzgsIDY5LCAKICAgICA3MSwgNjUsIDIxMCwgODYsIDczLCA3OCwgNjksIDEyOCwgODYsIDczLCA3OCwgMTI4LCA4NiwgNzMsIDc2LCA3NiwgNjUsIAotICAgIDcxLCA2OSwgMTI4LCA4NiwgNzMsIDY5LCA4OCwgMTI4LCA4NiwgNzMsIDY5LCA4NywgNzMsIDc4LCAxOTksIDg2LCA3MywgCi0gICAgNjksIDg3LCA2OCwgNjUsIDg0LCAxOTMsIDg2LCA3MywgNjksIDg0LCAxMjgsIDg2LCA3MywgNjksIDgwLCAxMjgsIDg2LCAKLSAgICA3MywgNjksIDEyOCwgODYsIDczLCA2OCwgNjksIDc5LCA2NywgNjUsIDgzLCA4MywgNjksIDg0LCA4NCwgNjksIDEyOCwgODYsIAotICAgIDczLCA2OCwgNjksIDIwNywgODYsIDczLCA2OCwgNjUsIDEyOCwgODYsIDczLCA2NywgODQsIDc5LCA4MiwgMjE3LCA4NiwgCi0gICAgNzMsIDY2LCA4MiwgNjUsIDg0LCA3MywgNzksIDIwNiwgODYsIDczLCAxMjgsIDg2LCA2OSwgODgsIDEyOCwgODYsIDY5LCAKLSAgICA4NywgMTI4LCA4NiwgNjksIDIxNSwgODYsIDY5LCA4NSwgODgsIDEyOCwgODYsIDY5LCA4NSwgNzcsIDEyOCwgODYsIDY5LCAKLSAgICA4NSwgNjUsIDY5LCA4MCwgNjksIDc4LCAxMjgsIDg2LCA2OSwgODUsIDY1LCA2OSwgMTI4LCA4NiwgNjksIDgzLCA4NCwgNjUsIAotICAgIDEyOCwgODYsIDY5LCA4MywgODMsIDY5LCAyMDQsIDg2LCA2OSwgODIsIDIxNywgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA3NiwgODksIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA3NiwgMjE3LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTQsIDQ1LCA0OCwgNTQsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDU0LCA0NSwgNDgsIDUzLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1NCwgNDUsIDQ4LCA1MiwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTQsIDQ1LCAKLSAgICA0OCwgNTEsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDU0LCA0NSwgNDgsIDUwLCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA0OSwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTQsIDQ1LCA0OCwgNDgsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDUzLCA0NSwgNDgsIDU0LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MywgNDUsIDQ4LCA1MywgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTMsIDQ1LCAKLSAgICA0OCwgNTIsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUzLCA0NSwgNDgsIDUxLCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1MCwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTMsIDQ1LCA0OCwgNDksIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDUzLCA0NSwgNDgsIDQ4LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MiwgNDUsIDQ4LCA1NCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTIsIDQ1LCAKLSAgICA0OCwgNTMsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUyLCA0NSwgNDgsIDUyLCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1MSwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTIsIDQ1LCA0OCwgNTAsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDUyLCA0NSwgNDgsIDQ5LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MiwgNDUsIDQ4LCA0OCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTEsIDQ1LCAKLSAgICA0OCwgNTQsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUxLCA0NSwgNDgsIDUzLCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MiwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTEsIDQ1LCA0OCwgNTEsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDUxLCA0NSwgNDgsIDUwLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MSwgNDUsIDQ4LCA0OSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTEsIDQ1LCAKLSAgICA0OCwgNDgsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUwLCA0NSwgNDgsIDU0LCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA1MywgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTAsIDQ1LCA0OCwgNTIsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDUwLCA0NSwgNDgsIDUxLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA1MCwgNDUsIDQ4LCA1MCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTAsIDQ1LCAKLSAgICA0OCwgNDksIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUwLCA0NSwgNDgsIDQ4LCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1NCwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDksIDQ1LCA0OCwgNTMsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDQ5LCA0NSwgNDgsIDUyLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA0OSwgNDUsIDQ4LCA1MSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDksIDQ1LCAKLSAgICA0OCwgNTAsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ5LCA0NSwgNDgsIDQ5LCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA0OCwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDgsIDQ1LCA0OCwgNTQsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCA0NSwgNDgsIDQ4LCA0NSwgNDgsIDUzLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIAotICAgIDQ4LCA0OCwgNDUsIDQ4LCA1MiwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDgsIDQ1LCAKLSAgICA0OCwgNTEsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ4LCA0NSwgNDgsIDUwLCAxMjgsIAotICAgIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA0OSwgMTI4LCA4NiwgNjksIDgyLCAKLSAgICA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDgsIDQ1LCA0OCwgNDgsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgCi0gICAgNjUsIDc2LCAxMjgsIDg2LCA2OSwgODIsIDgzLCA3MywgNjcsIDc2LCA2OSwgMTI4LCA4NiwgNjksIDgyLCA4MywgMTk3LCAKLSAgICA4NiwgNjksIDgyLCA3MSwgNjksIDEyOCwgODYsIDY5LCA4MiwgNjgsIDczLCA3MSwgODIsIDczLCA4MywgMTI4LCA4NiwgNjksIAotICAgIDgwLCAxMjgsIDg2LCA2OSwgNzgsIDY4LCAxMjgsIDg2LCA2OSwgNzMsIDc2LCAxMjgsIDg2LCA2OSwgNzIsIDczLCA2NywgCi0gICAgNzYsIDY5LCAxMjgsIDg2LCA2OSwgNzIsIDEyOCwgODYsIDY5LCAyMDAsIDg2LCA2OSwgNjksIDEyOCwgODYsIDY5LCAxOTcsIAotICAgIDg2LCA2OSwgNjgsIDY5LCAxMjgsIDg2LCA2OSwgNjcsIDg0LCA3OSwgMjEwLCA4NiwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgCi0gICAgMTI4LCA4NiwgNjUsIDg4LCAxMjgsIDg2LCA2NSwgODYsIDEyOCwgODYsIDY1LCAyMTQsIDg2LCA2NSwgODQsIDcyLCA4OSwgCi0gICAgMTI4LCA4NiwgNjUsIDg0LCAxMjgsIDg2LCA2NSwgODMsIDg0LCA3OCwgNjksIDgzLCAyMTEsIDg2LCA2NSwgODMsIDczLCAKLSAgICA4MywgMTI4LCA4NiwgNjUsIDgyLCA4OSwgMjExLCA4NiwgNjUsIDgyLCA3MywgNzUsIDY1LCAxMjgsIDg2LCA2NSwgODIsIAotICAgIDczLCA2NSwgNzgsIDIxMiwgODYsIDY1LCA4MiwgNzMsIDY1LCAxMjgsIDg2LCA2NSwgODIsIDczLCAxOTMsIDg2LCA2NSwgCi0gICAgODIsIDY5LCA3MywgNjUsIDIwMSwgODYsIDY1LCA4MiwgNjksIDczLCAxOTMsIDg2LCA2NSwgODAsIDc5LCA4NSwgODIsIDgzLCAKLSAgICAxMjgsIDg2LCA2NSwgODAsIDEyOCwgODYsIDY1LCA3OCwgNjksIDEyOCwgODYsIDY1LCA3NywgNjUsIDcxLCA3OSwgNzcsIAotICAgIDg1LCA3NSwgNzIsIDY1LCAxMjgsIDg2LCA2NSwgNzcsIDY1LCA3MSwgNzksIDc3LCA4NSwgNzUsIDcyLCAxOTMsIDg2LCA2NSwgCi0gICAgNzYsIDc2LCA2OSwgODksIDEyOCwgODYsIDY1LCA2NSwgODYsIDg1LCAxMjgsIDg2LCA2NSwgNjUsIDEyOCwgODYsIDQ4LCAKLSAgICA1MiwgNDgsIDY1LCAxMjgsIDg2LCA0OCwgNTIsIDQ4LCAxMjgsIDg2LCA0OCwgNTEsIDU3LCAxMjgsIDg2LCA0OCwgNTEsIAotICAgIDU2LCAxMjgsIDg2LCA0OCwgNTEsIDU1LCA2NSwgMTI4LCA4NiwgNDgsIDUxLCA1NSwgMTI4LCA4NiwgNDgsIDUxLCA1NCwgCi0gICAgMTI4LCA4NiwgNDgsIDUxLCA1MywgMTI4LCA4NiwgNDgsIDUxLCA1MiwgMTI4LCA4NiwgNDgsIDUxLCA1MSwgNjUsIDEyOCwgCi0gICAgODYsIDQ4LCA1MSwgNTEsIDEyOCwgODYsIDQ4LCA1MSwgNTAsIDEyOCwgODYsIDQ4LCA1MSwgNDksIDY1LCAxMjgsIDg2LCAKLSAgICA0OCwgNTEsIDQ5LCAxMjgsIDg2LCA0OCwgNTEsIDQ4LCA2NSwgMTI4LCA4NiwgNDgsIDUxLCA0OCwgMTI4LCA4NiwgNDgsIAotICAgIDUwLCA1NywgNjUsIDEyOCwgODYsIDQ4LCA1MCwgNTcsIDEyOCwgODYsIDQ4LCA1MCwgNTYsIDY1LCAxMjgsIDg2LCA0OCwgCi0gICAgNTAsIDU2LCAxMjgsIDg2LCA0OCwgNTAsIDU1LCAxMjgsIDg2LCA0OCwgNTAsIDU0LCAxMjgsIDg2LCA0OCwgNTAsIDUzLCAKLSAgICAxMjgsIDg2LCA0OCwgNTAsIDUyLCAxMjgsIDg2LCA0OCwgNTAsIDUxLCA2NSwgMTI4LCA4NiwgNDgsIDUwLCA1MSwgMTI4LCAKLSAgICA4NiwgNDgsIDUwLCA1MCwgMTI4LCA4NiwgNDgsIDUwLCA0OSwgMTI4LCA4NiwgNDgsIDUwLCA0OCwgNzYsIDEyOCwgODYsIAotICAgIDQ4LCA1MCwgNDgsIDc1LCAxMjgsIDg2LCA0OCwgNTAsIDQ4LCA3NCwgMTI4LCA4NiwgNDgsIDUwLCA0OCwgNzMsIDEyOCwgCi0gICAgODYsIDQ4LCA1MCwgNDgsIDcyLCAxMjgsIDg2LCA0OCwgNTAsIDQ4LCA3MSwgMTI4LCA4NiwgNDgsIDUwLCA0OCwgNzAsIAotICAgIDEyOCwgODYsIDQ4LCA1MCwgNDgsIDY5LCAxMjgsIDg2LCA0OCwgNTAsIDQ4LCA2OCwgMTI4LCA4NiwgNDgsIDUwLCA0OCwgCi0gICAgNjcsIDEyOCwgODYsIDQ4LCA1MCwgNDgsIDY2LCAxMjgsIDg2LCA0OCwgNTAsIDQ4LCA2NSwgMTI4LCA4NiwgNDgsIDUwLCAKLSAgICA0OCwgMTI4LCA4NiwgNDgsIDQ5LCA1NywgMTI4LCA4NiwgNDgsIDQ5LCA1NiwgMTI4LCA4NiwgNDgsIDQ5LCA1NSwgMTI4LCAKLSAgICA4NiwgNDgsIDQ5LCA1NCwgMTI4LCA4NiwgNDgsIDQ5LCA1MywgMTI4LCA4NiwgNDgsIDQ5LCA1MiwgMTI4LCA4NiwgNDgsIAotICAgIDQ5LCA1MSwgMTI4LCA4NiwgNDgsIDQ5LCA1MCwgNjYsIDEyOCwgODYsIDQ4LCA0OSwgNTAsIDY1LCAxMjgsIDg2LCA0OCwgCi0gICAgNDksIDUwLCAxMjgsIDg2LCA0OCwgNDksIDQ5LCA2NywgMTI4LCA4NiwgNDgsIDQ5LCA0OSwgNjYsIDEyOCwgODYsIDQ4LCAKLSAgICA0OSwgNDksIDY1LCAxMjgsIDg2LCA0OCwgNDksIDQ5LCAxMjgsIDg2LCA0OCwgNDksIDQ4LCAxMjgsIDg2LCA0OCwgNDgsIAotICAgIDU3LCAxMjgsIDg2LCA0OCwgNDgsIDU2LCAxMjgsIDg2LCA0OCwgNDgsIDU1LCA2NiwgMTI4LCA4NiwgNDgsIDQ4LCA1NSwgCi0gICAgNjUsIDEyOCwgODYsIDQ4LCA0OCwgNTUsIDEyOCwgODYsIDQ4LCA0OCwgNTQsIDEyOCwgODYsIDQ4LCA0OCwgNTMsIDEyOCwgCi0gICAgODYsIDQ4LCA0OCwgNTIsIDEyOCwgODYsIDQ4LCA0OCwgNTEsIDEyOCwgODYsIDQ4LCA0OCwgNTAsIDY1LCAxMjgsIDg2LCAKLSAgICA0OCwgNDgsIDUwLCAxMjgsIDg2LCA0OCwgNDgsIDQ5LCA3MywgMTI4LCA4NiwgNDgsIDQ4LCA0OSwgNzIsIDEyOCwgODYsIAotICAgIDQ4LCA0OCwgNDksIDcxLCAxMjgsIDg2LCA0OCwgNDgsIDQ5LCA3MCwgMTI4LCA4NiwgNDgsIDQ4LCA0OSwgNjksIDEyOCwgCi0gICAgODYsIDQ4LCA0OCwgNDksIDY4LCAxMjgsIDg2LCA0OCwgNDgsIDQ5LCA2NywgMTI4LCA4NiwgNDgsIDQ4LCA0OSwgNjYsIAotICAgIDEyOCwgODYsIDQ4LCA0OCwgNDksIDY1LCAxMjgsIDg2LCA0OCwgNDgsIDQ5LCAxMjgsIDg1LCA5MCwgODUsIDEyOCwgODUsIAotICAgIDkwLCA1MSwgMTI4LCA4NSwgOTAsIDE3OSwgODUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA4NSwgODksIDEyOCwgODUsIAotICAgIDg1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgODUsIDg1LCA4NSwgODUsIDEyOCwgODUsIDg1LCA4NSwgNTEsIDEyOCwgCi0gICAgODUsIDg1LCA4NSwgNTAsIDEyOCwgODUsIDg1LCA2OSwgMTI4LCA4NSwgODQsIDg1LCA3NSwgNzMsIDEyOCwgODUsIDgzLCAKLSAgICA4MywgODUsIDUxLCAxMjgsIDg1LCA4MywgODMsIDg1LCAxMjgsIDg1LCA4MywgNzIsIDg4LCAxMjgsIDg1LCA4MywgNzIsIAotICAgIDg1LCA3NywgODgsIDEyOCwgODUsIDgzLCA3MiwgNjksIDc4LCA3OCwgNjUsIDEyOCwgODUsIDgzLCA3MiwgNTAsIDEyOCwgCi0gICAgODUsIDgzLCA3MiwgMTI4LCA4NSwgODMsIDIwMCwgODUsIDgzLCA2OSwgMTk2LCA4NSwgODMsIDY5LCAxMjgsIDg1LCA4MiwgCi0gICAgODUsIDIxOCwgODUsIDgyLCA4NSwgODMsIDEyOCwgODUsIDgyLCA4NSwgNjgsIDY1LCAxMjgsIDg1LCA4MiwgODUsIDY4LCAKLSAgICAxOTMsIDg1LCA4MiwgODUsIDEyOCwgODUsIDgyLCAyMTMsIDg1LCA4MiwgNzgsIDEyOCwgODUsIDgyLCA3MywgNzgsIDY5LCAKLSAgICAxMjgsIDg1LCA4MiwgNzMsIDUxLCAxMjgsIDg1LCA4MiwgNzMsIDEyOCwgODUsIDgyLCA2NSwgNzgsIDg1LCA4MywgMTI4LCAKLSAgICA4NSwgODIsIDY1LCAxMjgsIDg1LCA4MiwgNTIsIDEyOCwgODUsIDgyLCA1MCwgMTI4LCA4NSwgODIsIDE3OCwgODUsIDgwLCAKLSAgICA4NywgNjUsIDgyLCA2OCwgODMsIDEyOCwgODUsIDgwLCA4NywgNjUsIDgyLCA2OCwgMjExLCA4NSwgODAsIDg3LCA2NSwgODIsIAotICAgIDY4LCAxMjgsIDg1LCA4MCwgODcsIDY1LCA4MiwgMTk2LCA4NSwgODAsIDg0LCA4NSwgODIsIDc4LCAxMjgsIDg1LCA4MCwgCi0gICAgODMsIDczLCA3NiwgNzksIDc4LCAxMjgsIDg1LCA4MCwgODMsIDczLCA3NiwgNzksIDIwNiwgODUsIDgwLCA4MiwgNzMsIDcxLCAKLSAgICA3MiwgMjEyLCA4NSwgODAsIDgwLCA2OSwgMjEwLCA4NSwgODAsIDY1LCA2OCwgNzIsIDc3LCA2NSwgNzgsIDczLCA4OSwgNjUsIAotICAgIDEyOCwgODUsIDgwLCA0NSwgODAsIDc5LCA3MywgNzgsIDg0LCA3MywgNzgsIDE5OSwgODUsIDc5LCA3OCwgMTI4LCA4NSwgCi0gICAgNzgsIDc4LCAxMjgsIDg1LCA3OCwgNzcsIDY1LCA4MiwgODIsIDczLCA2OSwgMTk2LCA4NSwgNzgsIDc1LCA3OCwgNzksIDg3LCAKLSAgICA3OCwgMTI4LCA4NSwgNzgsIDczLCA4NiwgNjksIDgyLCA4MywgNjUsIDIwNCwgODUsIDc4LCA3MywgODQsIDg5LCAxMjgsIAotICAgIDg1LCA3OCwgNzMsIDg0LCAxMjgsIDg1LCA3OCwgNzMsIDIxMiwgODUsIDc4LCA3MywgNzksIDc4LCAxMjgsIDg1LCA3OCwgCi0gICAgNzMsIDc5LCAyMDYsIDg1LCA3OCwgNzMsIDcwLCA3MywgNjksIDE5NiwgODUsIDc4LCA2OCwgMjA3LCA4NSwgNzgsIDY4LCAKLSAgICA2OSwgODIsIDg0LCA3MywgNjksIDEyOCwgODUsIDc4LCA2OCwgNjksIDgyLCA3NiwgNzMsIDc4LCAxOTcsIDg1LCA3OCwgNjgsIAotICAgIDY5LCA4MiwgNjgsIDc5LCA4NCwgMTI4LCA4NSwgNzgsIDY4LCA2OSwgODIsIDY2LCA2NSwgODIsIDEyOCwgODUsIDc4LCA2OCwgCi0gICAgNjksIDIxMCwgODUsIDc4LCA2NywgNzMsIDE5MywgODUsIDc4LCA2NSwgODMsIDgwLCA3MywgODIsIDY1LCA4NCwgNjksIDY4LCAKLSAgICAxMjgsIDg1LCA3OCwgNjUsIDgwLCAxMjgsIDg1LCA3OCwgNjUsIDc3LCA4NSwgODMsIDY5LCAxOTYsIDg1LCA3OCwgNjUsIAotICAgIDEyOCwgODUsIDIwNiwgODUsIDc3LCA4NSwgNzcsIDEyOCwgODUsIDc3LCA4NSwgMjA1LCA4NSwgNzcsIDY2LCA4MiwgNjksIAotICAgIDc2LCA3NiwgNjUsIDEyOCwgODUsIDc3LCA2NiwgODIsIDY5LCA3NiwgNzYsIDE5MywgODUsIDc3LCA2NiwgNzMsIDc4LCAKLSAgICAxMjgsIDg1LCA3NSwgODUsIDEyOCwgODUsIDc1LCA4MiwgNjUsIDczLCA3OCwgNzMsIDY1LCAyMDYsIDg1LCA3NSwgNjUsIAotICAgIDgyLCA2NSwgMTI4LCA4NSwgNzUsIDY1LCA4MiwgMTkzLCA4NSwgNzUsIDEyOCwgODUsIDczLCA3NiwgNzYsIDY5LCA2NSwgCi0gICAgNzgsIDc4LCAxMjgsIDg1LCA3MywgNzEsIDcyLCA4NSwgMjEwLCA4NSwgNzEsIDY1LCA4MiwgNzMsIDg0LCA3MywgMTk1LCAKLSAgICA4NSwgNjksIDg5LCAxMjgsIDg1LCA2OSwgNjksIDEyOCwgODUsIDY5LCA2NSwgMTI4LCA4NSwgNjgsIDg1LCA3MSwgMTI4LCAKLSAgICA4NSwgNjgsIDY1LCA4NCwgODQsIDY1LCAxMjgsIDg1LCA2OCwgNjUsIDg0LCA4NCwgMTkzLCA4NSwgNjgsIDY1LCA2NSwgODQsIAotICAgIDEyOCwgODUsIDY4LCAxMjgsIDg1LCAxOTYsIDg1LCA2NywgMTI4LCA4NSwgNjYsIDg1LCA3MCwgNzMsIDc2LCA3MywgMTI4LCAKLSAgICA4NSwgNjYsIDcyLCA2NSwgODksIDY1LCA4NCwgMjA3LCA4NSwgNjYsIDY1LCA2OCwgNjUsIDc3LCA2NSwgMTI4LCA4NSwgNjYsIAotICAgIDEyOCwgODUsIDY1LCA4NCwgNzIsIDEyOCwgODUsIDY1LCAxMjgsIDg1LCAxNzgsIDg1LCA0OCwgNTIsIDUwLCAxMjgsIDg1LCAKLSAgICA0OCwgNTIsIDQ5LCAxMjgsIDg1LCA0OCwgNTIsIDQ4LCAxMjgsIDg1LCA0OCwgNTEsIDU3LCAxMjgsIDg1LCA0OCwgNTEsIAotICAgIDU2LCAxMjgsIDg1LCA0OCwgNTEsIDU1LCAxMjgsIDg1LCA0OCwgNTEsIDU0LCAxMjgsIDg1LCA0OCwgNTEsIDUzLCAxMjgsIAotICAgIDg1LCA0OCwgNTEsIDUyLCAxMjgsIDg1LCA0OCwgNTEsIDUxLCAxMjgsIDg1LCA0OCwgNTEsIDUwLCA2NSwgMTI4LCA4NSwgCi0gICAgNDgsIDUxLCA1MCwgMTI4LCA4NSwgNDgsIDUxLCA0OSwgMTI4LCA4NSwgNDgsIDUxLCA0OCwgMTI4LCA4NSwgNDgsIDUwLCAKLSAgICA1NywgNjUsIDEyOCwgODUsIDQ4LCA1MCwgNTcsIDEyOCwgODUsIDQ4LCA1MCwgNTYsIDEyOCwgODUsIDQ4LCA1MCwgNTUsIAotICAgIDEyOCwgODUsIDQ4LCA1MCwgNTQsIDEyOCwgODUsIDQ4LCA1MCwgNTMsIDEyOCwgODUsIDQ4LCA1MCwgNTIsIDEyOCwgODUsIAotICAgIDQ4LCA1MCwgNTEsIDY1LCAxMjgsIDg1LCA0OCwgNTAsIDUxLCAxMjgsIDg1LCA0OCwgNTAsIDUwLCAxMjgsIDg1LCA0OCwgCi0gICAgNTAsIDQ5LCAxMjgsIDg1LCA0OCwgNTAsIDQ4LCAxMjgsIDg1LCA0OCwgNDksIDU3LCAxMjgsIDg1LCA0OCwgNDksIDU2LCAKLSAgICAxMjgsIDg1LCA0OCwgNDksIDU1LCAxMjgsIDg1LCA0OCwgNDksIDU0LCAxMjgsIDg1LCA0OCwgNDksIDUzLCAxMjgsIDg1LCAKLSAgICA0OCwgNDksIDUyLCAxMjgsIDg1LCA0OCwgNDksIDUxLCAxMjgsIDg1LCA0OCwgNDksIDUwLCAxMjgsIDg1LCA0OCwgNDksIAotICAgIDQ5LCAxMjgsIDg1LCA0OCwgNDksIDQ4LCAxMjgsIDg1LCA0OCwgNDgsIDU3LCAxMjgsIDg1LCA0OCwgNDgsIDU2LCAxMjgsIAotICAgIDg1LCA0OCwgNDgsIDU1LCAxMjgsIDg1LCA0OCwgNDgsIDU0LCA2NiwgMTI4LCA4NSwgNDgsIDQ4LCA1NCwgNjUsIDEyOCwgCi0gICAgODUsIDQ4LCA0OCwgNTQsIDEyOCwgODUsIDQ4LCA0OCwgNTMsIDEyOCwgODUsIDQ4LCA0OCwgNTIsIDEyOCwgODUsIDQ4LCAKLSAgICA0OCwgNTEsIDEyOCwgODUsIDQ4LCA0OCwgNTAsIDEyOCwgODUsIDQ4LCA0OCwgNDksIDEyOCwgODUsIDQ1LCA3MywgNDUsIAotICAgIDczLCAxMjgsIDg1LCA0NSwgNjksIDc5LCA0NSwgNjksIDg1LCAxMjgsIDg0LCA5MCwgODUsIDEyOCwgODQsIDkwLCA3OSwgCi0gICAgNjUsIDEyOCwgODQsIDkwLCA3OSwgMTI4LCA4NCwgOTAsIDczLCAyMTAsIDg0LCA5MCwgNzMsIDEyOCwgODQsIDkwLCA2OSwgCi0gICAgNjksIDEyOCwgODQsIDkwLCA2OSwgMTI4LCA4NCwgOTAsIDY1LCA2NSwgMTI4LCA4NCwgOTAsIDY1LCAxMjgsIDg0LCA5MCwgCi0gICAgMTI4LCA4NCwgODksIDIxMCwgODQsIDg5LCA4MCwgNjksIDQ1LCAxODMsIDg0LCA4OSwgODAsIDY5LCA0NSwgMTgyLCA4NCwgCi0gICAgODksIDgwLCA2OSwgNDUsIDE4MSwgODQsIDg5LCA4MCwgNjksIDQ1LCAxODAsIDg0LCA4OSwgODAsIDY5LCA0NSwgMTc5LCAKLSAgICA4NCwgODksIDgwLCA2OSwgNDUsIDE3OCwgODQsIDg5LCA4MCwgNjksIDQ1LCAxNzcsIDg0LCA4OSwgODAsIDE5NywgODQsIAotICAgIDg5LCA3OSwgMTI4LCA4NCwgODksIDczLCAxMjgsIDg0LCA4OSwgNjksIDEyOCwgODQsIDg5LCA2NSwgMTI4LCA4NCwgODcsIAotICAgIDc5LCA3OSwgMTI4LCA4NCwgODcsIDc5LCA0NSwgODcsIDY1LCAyMTcsIDg0LCA4NywgNzksIDQ1LCA4NCwgNzIsIDczLCA4MiwgCi0gICAgODQsIDg5LCAxMjgsIDg0LCA4NywgNzksIDQ1LCA3NiwgNzMsIDc4LCAxOTcsIDg0LCA4NywgNzksIDQ1LCA3MiwgNjksIDY1LCAKLSAgICA2OCwgNjksIDE5NiwgODQsIDg3LCA3MywgODMsIDg0LCA2OSwgMTk2LCA4NCwgODcsIDczLCA3MywgMTI4LCA4NCwgODcsIAotICAgIDczLCAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDQ1LCA4NCwgODcsIDc5LCAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgCi0gICAgODksIDQ1LCA4NCwgNzIsIDgyLCA2OSwgNjksIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCA4OSwgNDUsIDgzLCA3MywgODgsIAotICAgIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCA4OSwgNDUsIDgzLCA2OSwgODYsIDY5LCA3OCwgMTI4LCA4NCwgODcsIDY5LCA3OCwgCi0gICAgODQsIDg5LCA0NSwgNzksIDc4LCA2OSwgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDg5LCA0NSwgNzgsIDczLCA3OCwgNjksIAotICAgIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCA4OSwgNDUsIDcwLCA3OSwgODUsIDgyLCAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgCi0gICAgODksIDQ1LCA3MCwgNzMsIDg2LCA2OSwgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDg5LCA0NSwgNjksIDczLCA3MSwgNzIsIAotICAgIDg0LCAyMDAsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDQ1LCA2OSwgNzMsIDcxLCA3MiwgODQsIDEyOCwgODQsIDg3LCA2OSwgCi0gICAgNzgsIDg0LCA4OSwgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDIxNywgODQsIDg3LCA2OSwgNzYsIDg2LCA2OSwgNDUsIDg0LCAKLSAgICA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgODQsIDg3LCA2OSwgNzYsIDg2LCA2OSwgMTI4LCA4NCwgODcsIDY5LCA3NiwgODYsIAotICAgIDE5NywgODQsIDg3LCA2OSwgMTI4LCA4NCwgODcsIDY1LCA2NSwgMTI4LCA4NCwgODcsIDY1LCAxMjgsIDg0LCA4NiwgODIsIAotICAgIDczLCA2OCwgNzksIDEyOCwgODQsIDg2LCA3MywgNzcsIDY1LCA2OCwgODUsIDIxMCwgODQsIDg1LCA4OCwgMTI4LCA4NCwgCi0gICAgODUsIDg1LCA3NywgODUsIDEyOCwgODQsIDg1LCA4NCwgODQsIDg5LCAxMjgsIDg0LCA4NSwgODQsIDY5LCA4OSwgNjUsIDgzLCAKLSAgICA2NSwgODQsIDEyOCwgODQsIDg1LCA4NCwgMTI4LCA4NCwgODUsIDgyLCA4OCwgMTI4LCA4NCwgODUsIDgyLCA4NSwgMTI4LCAKLSAgICA4NCwgODUsIDgyLCA4NCwgNzYsIDY5LCAxMjgsIDg0LCA4NSwgODIsIDc5LCA1MCwgMTI4LCA4NCwgODUsIDgyLCA3OCwgODMsIAotICAgIDg0LCA3MywgNzYsIDY5LCAxMjgsIDg0LCA4NSwgODIsIDc4LCA2OSwgMTk2LCA4NCwgODUsIDgyLCAyMDYsIDg0LCA4NSwgCi0gICAgODIsIDY2LCA2NSwgNzgsIDEyOCwgODQsIDg1LCA4MiwgMTI4LCA4NCwgODUsIDgwLCAxMjgsIDg0LCA4NSwgNzksIDg4LCAKLSAgICAxMjgsIDg0LCA4NSwgNzksIDg0LCAxMjgsIDg0LCA4NSwgNzksIDgwLCAxMjgsIDg0LCA4NSwgNzksIDEyOCwgODQsIDg1LCAKLSAgICA3OCwgNzgsIDg5LCAxMjgsIDg0LCA4NSwgNzcsIDY5LCA4NCwgNjksIDgzLCAxMjgsIDg0LCA4NSwgNzcsIDY1LCA2OSwgCi0gICAgMTI4LCA4NCwgODUsIDc3LCAxMjgsIDg0LCA4NSwgNzYsIDczLCA4MCwgMTI4LCA4NCwgODUsIDc1LCA4NywgNjksIDc4LCAKLSAgICA4NCwgNzMsIDgzLCAxMjgsIDg0LCA4NSwgNzUsIDEyOCwgODQsIDg1LCA3MSwgODIsIDczLCAyMDMsIDg0LCA4NSwgNzEsIAotICAgIDUwLCAxMjgsIDg0LCA4NSwgNzEsIDE3OCwgODQsIDg1LCA2NSwgODIsIDY5LCAxOTksIDg0LCA4NSwgNjUsIDY5LCA4MCwgCi0gICAgMTI4LCA4NCwgODUsIDY1LCA2OSwgMTI4LCA4NCwgMjEzLCA4NCwgODQsIDg1LCA2OCwgNjgsIDY1LCA3MSwgMTI4LCA4NCwgCi0gICAgODQsIDg1LCA2OCwgNjgsIDY1LCA2NSwgNzEsIDEyOCwgODQsIDg0LCA4NSwgMTI4LCA4NCwgODQsIDg0LCA3MiwgNjUsIAotICAgIDEyOCwgODQsIDg0LCA4NCwgNjUsIDEyOCwgODQsIDg0LCA4MywgODUsIDEyOCwgODQsIDg0LCA4MywgNzksIDEyOCwgODQsIAotICAgIDg0LCA4MywgNzMsIDEyOCwgODQsIDg0LCA4MywgNjksIDY5LCAxMjgsIDg0LCA4NCwgODMsIDY5LCAxMjgsIDg0LCA4NCwgCi0gICAgODMsIDY1LCAxMjgsIDg0LCA4NCwgNzMsIDEyOCwgODQsIDg0LCA3MiwgODcsIDY5LCAxMjgsIDg0LCA4NCwgNzIsIDg1LCAKLSAgICAxMjgsIDg0LCA4NCwgNzIsIDc5LCA3OSwgMTI4LCA4NCwgODQsIDcyLCA3OSwgMTI4LCA4NCwgODQsIDcyLCA3MywgMTI4LCAKLSAgICA4NCwgODQsIDcyLCA2OSwgNjksIDEyOCwgODQsIDg0LCA3MiwgNjksIDEyOCwgODQsIDg0LCA3MiwgNjUsIDY1LCAxMjgsIAotICAgIDg0LCA4NCwgNzIsIDEyOCwgODQsIDg0LCA2OSwgNzIsIDY5LCA3MiwgMTI4LCA4NCwgODQsIDY5LCA3MiwgNjksIDIwMCwgCi0gICAgODQsIDg0LCA2OSwgNzIsIDEyOCwgODQsIDg0LCA2OSwgMjAwLCA4NCwgODQsIDY5LCA2OSwgMTI4LCA4NCwgODQsIDY1LCAKLSAgICA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgODQsIDg0LCA2NSwgNjUsIDEyOCwgODQsIDg0LCA1MCwgMTI4LCA4NCwgODMsIAotICAgIDg3LCA2OSwgMTI4LCA4NCwgODMsIDg3LCA2NSwgMTI4LCA4NCwgODMsIDg2LCAxMjgsIDg0LCA4MywgODMsIDY5LCAxMjgsIAotICAgIDg0LCA4MywgNzIsIDg1LCA3MSwgODMsIDEyOCwgODQsIDgzLCA3MiwgNzksIDc5LCA3NSwgMTI4LCA4NCwgODMsIDcyLCA3OSwgCi0gICAgNzksIDIwMywgODQsIDgzLCA3MiwgNjksIDgzLCAxMjgsIDg0LCA4MywgNzIsIDY5LCA3MSwgMTI4LCA4NCwgODMsIDcyLCAKLSAgICA2OSwgMTk5LCA4NCwgODMsIDcyLCA2OSwgMTI4LCA4NCwgODMsIDcyLCA2NSwgMTI4LCA4NCwgODMsIDY5LCA4MiwgNjksIAotICAgIDEyOCwgODQsIDgzLCA2NSwgNjgsIDczLCAxMjgsIDg0LCA4MywgNjUsIDY4LCAyMDEsIDg0LCA4MywgNjUsIDY1LCA2OCwgCi0gICAgNzMsIDg5LCAxMjgsIDg0LCA4MywgNjUsIDY1LCAxMjgsIDg0LCA4MywgMTkzLCA4NCwgODIsIDg5LCA2NiwgNzYsIDczLCAKLSAgICA3OSwgMjA2LCA4NCwgODIsIDg1LCA4NCwgNzIsIDEyOCwgODQsIDgyLCA4NSwgNzgsIDc1LCAxMjgsIDg0LCA4MiwgODUsIAotICAgIDc4LCA2NywgNjUsIDg0LCA2OSwgMTk2LCA4NCwgODIsIDg1LCA3NywgODAsIDY5LCA4NCwgMTI4LCA4NCwgODIsIDg1LCA2OSwgCi0gICAgMTI4LCA4NCwgODIsIDg1LCA2NywgNzUsIDEyOCwgODQsIDgyLCA3OSwgODAsIDczLCA2NywgNjUsIDIwNCwgODQsIDgyLCAKLSAgICA3OSwgODAsIDcyLCA4OSwgMTI4LCA4NCwgODIsIDc5LCA3NywgNzMsIDc1LCA3OSwgODMsIDg5LCA3OCwgNjUsIDcxLCA3NywgCi0gICAgNjUsIDEyOCwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIDgwLCA4MywgNzMsIDcwLCA3MywgODMsIDg0LCA3OSwgNzgsIAotICAgIDEyOCwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIDgwLCA2NSwgODIsIDY1LCA3NSwgNjUsIDc2LCA2OSwgODMsIDc3LCAKLSAgICA2NSwgMTI4LCA4NCwgODIsIDc5LCA3NywgNzMsIDc1LCA3OSwgNzgsIDEyOCwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIAotICAgIDIwNiwgODQsIDgyLCA3OSwgNzcsIDczLCA3NSwgNzksIDc2LCA4OSwgNzEsIDczLCA4MywgNzcsIDY1LCAxMjgsIDg0LCA4MiwgCi0gICAgNzksIDc2LCA3NiwgNjksIDg5LCA2NiwgODUsIDgzLCAxMjgsIDg0LCA4MiwgNzksIDc1LCA4NSwgODQsIDY1LCA4MywgODQsIAotICAgIDIwMSwgODQsIDgyLCA3OSwgNjksIDkwLCA2OSwgNzgsIDczLCA2NSwgMjA2LCA4NCwgODIsIDczLCA4NSwgNzcsIDgwLCA3MiwgCi0gICAgMTI4LCA4NCwgODIsIDczLCA4NCwgNzksIDIxMSwgODQsIDgyLCA3MywgODQsIDczLCA3NywgNzksIDgyLCA3MywgNzksIDc4LCAKLSAgICAxMjgsIDg0LCA4MiwgNzMsIDgzLCA3MywgNzcsIDc5LCA4NSwgMTI4LCA4NCwgODIsIDczLCA4MywgNjksIDc3LCA2OSwgCi0gICAgMTI4LCA4NCwgODIsIDczLCA4MCwgNzksIDY4LCAxMjgsIDg0LCA4MiwgNzMsIDgwLCA3NiwgNzMsIDEyOCwgODQsIDgyLCAKLSAgICA3MywgODAsIDc2LCAxOTcsIDg0LCA4MiwgNzMsIDc5LCAyMDYsIDg0LCA4MiwgNzMsIDczLCA4MywgNjUsIDgwLCAxMjgsIAotICAgIDg0LCA4MiwgNzMsIDcxLCA4MiwgNjUsIDc3LCA3NywgNzksIDIxMSwgODQsIDgyLCA3MywgNzEsIDgyLCA2NSwgMjA1LCA4NCwgCi0gICAgODIsIDczLCA3MSwgNzksIDgyLCA3MSwgNzksIDc4LCAxMjgsIDg0LCA4MiwgNzMsIDcwLCA3OSwgNzgsIDczLCA2NSwgODMsIAotICAgIDEyOCwgODQsIDgyLCA3MywgNzAsIDc5LCA3NiwgNzMsIDY1LCA4NCwgMTk3LCA4NCwgODIsIDczLCA2OCwgNjksIDc4LCA4NCwgCi0gICAgMTI4LCA4NCwgODIsIDczLCA2OCwgNjksIDc4LCAyMTIsIDg0LCA4MiwgNzMsIDY3LCA3OSwgNzYsIDc5LCA3OCwgMTI4LCAKLSAgICA4NCwgODIsIDczLCA2NSwgNzgsIDcxLCA4NSwgNzYsIDY1LCAyMTAsIDg0LCA4MiwgNzMsIDY1LCA3OCwgNzEsIDc2LCA2OSwgCi0gICAgNDUsIDgyLCA3OSwgODUsIDc4LCAxOTYsIDg0LCA4MiwgNzMsIDY1LCA3OCwgNzEsIDc2LCA2OSwgNDUsIDcyLCA2OSwgNjUsIAotICAgIDY4LCA2OSwgMTk2LCA4NCwgODIsIDczLCA2NSwgNzgsIDcxLCA3NiwgNjksIDEyOCwgODQsIDgyLCA3MywgNjUsIDc4LCA3MSwgCi0gICAgNzYsIDE5NywgODQsIDgyLCA3MywgNjUsIDEyOCwgODQsIDgyLCA3MywgMTI4LCA4NCwgODIsIDY5LCA4MywgNzMsIDc2LCAKLSAgICA3NiwgNzksIDEyOCwgODQsIDgyLCA2OSwgNzgsIDY4LCAxMjgsIDg0LCA4MiwgNjksIDc4LCAxOTYsIDg0LCA4MiwgNjksIAotICAgIDc3LCA3OSwgNzYsIDc5LCA0NSwgNTEsIDEyOCwgODQsIDgyLCA2OSwgNzcsIDc5LCA3NiwgNzksIDQ1LCA1MCwgMTI4LCA4NCwgCi0gICAgODIsIDY5LCA3NywgNzksIDc2LCA3OSwgNDUsIDQ5LCAxMjgsIDg0LCA4MiwgNjksIDY5LCAxMjgsIDg0LCA4MiwgNjksIAorICAgIDcxLCA2OSwgMTI4LCA4NiwgNzMsIDczLCAxMjgsIDg2LCA3MywgNjksIDg4LCAxMjgsIDg2LCA3MywgNjksIDg3LCA3MywgCisgICAgNzgsIDE5OSwgODYsIDczLCA2OSwgODcsIDY4LCA2NSwgODQsIDE5MywgODYsIDczLCA2OSwgODQsIDEyOCwgODYsIDczLCAKKyAgICA2OSwgODAsIDEyOCwgODYsIDczLCA2OSwgMTI4LCA4NiwgNzMsIDY4LCA2OSwgNzksIDY3LCA2NSwgODMsIDgzLCA2OSwgODQsIAorICAgIDg0LCA2OSwgMTI4LCA4NiwgNzMsIDY4LCA2OSwgMjA3LCA4NiwgNzMsIDY4LCA2NSwgMTI4LCA4NiwgNzMsIDY3LCA4NCwgCisgICAgNzksIDgyLCAyMTcsIDg2LCA3MywgNjYsIDgyLCA2NSwgODQsIDczLCA3OSwgMjA2LCA4NiwgNzMsIDEyOCwgODYsIDY5LCAKKyAgICA4OCwgMTI4LCA4NiwgNjksIDg3LCAxMjgsIDg2LCA2OSwgMjE1LCA4NiwgNjksIDg1LCA4OCwgMTI4LCA4NiwgNjksIDg1LCAKKyAgICA3NywgMTI4LCA4NiwgNjksIDg1LCA2NSwgNjksIDgwLCA2OSwgNzgsIDEyOCwgODYsIDY5LCA4NSwgNjUsIDY5LCAxMjgsIAorICAgIDg2LCA2OSwgODMsIDg0LCA2NSwgMTI4LCA4NiwgNjksIDgzLCA4MywgNjksIDIwNCwgODYsIDY5LCA4MiwgMjE3LCA4NiwgCisgICAgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDc2LCA4OSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIAorICAgIDc2LCAyMTcsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA1NCwgMTI4LCA4NiwgCisgICAgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTQsIDQ1LCA0OCwgNTMsIDEyOCwgODYsIDY5LCA4MiwgODQsIAorICAgIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDU0LCA0NSwgNDgsIDUyLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCAKKyAgICA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA1MSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgCisgICAgNTQsIDQ1LCA0OCwgNTAsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDU0LCA0NSwgNDgsIAorICAgIDQ5LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1NCwgNDUsIDQ4LCA0OCwgMTI4LCA4NiwgCisgICAgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTMsIDQ1LCA0OCwgNTQsIDEyOCwgODYsIDY5LCA4MiwgODQsIAorICAgIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUzLCA0NSwgNDgsIDUzLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCAKKyAgICA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA1MiwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgCisgICAgNTMsIDQ1LCA0OCwgNTEsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUzLCA0NSwgNDgsIAorICAgIDUwLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MywgNDUsIDQ4LCA0OSwgMTI4LCA4NiwgCisgICAgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTMsIDQ1LCA0OCwgNDgsIDEyOCwgODYsIDY5LCA4MiwgODQsIAorICAgIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUyLCA0NSwgNDgsIDU0LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCAKKyAgICA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1MywgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgCisgICAgNTIsIDQ1LCA0OCwgNTIsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUyLCA0NSwgNDgsIAorICAgIDUxLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MiwgNDUsIDQ4LCA1MCwgMTI4LCA4NiwgCisgICAgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTIsIDQ1LCA0OCwgNDksIDEyOCwgODYsIDY5LCA4MiwgODQsIAorICAgIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUyLCA0NSwgNDgsIDQ4LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCAKKyAgICA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1NCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgCisgICAgNTEsIDQ1LCA0OCwgNTMsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUxLCA0NSwgNDgsIAorICAgIDUyLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA1MSwgMTI4LCA4NiwgCisgICAgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTEsIDQ1LCA0OCwgNTAsIDEyOCwgODYsIDY5LCA4MiwgODQsIAorICAgIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUxLCA0NSwgNDgsIDQ5LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCAKKyAgICA3NiwgNDUsIDQ4LCA1MSwgNDUsIDQ4LCA0OCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgCisgICAgNTAsIDQ1LCA0OCwgNTQsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUwLCA0NSwgNDgsIAorICAgIDUzLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA1MiwgMTI4LCA4NiwgCisgICAgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNTAsIDQ1LCA0OCwgNTEsIDEyOCwgODYsIDY5LCA4MiwgODQsIAorICAgIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDUwLCA0NSwgNDgsIDUwLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCAKKyAgICA3NiwgNDUsIDQ4LCA1MCwgNDUsIDQ4LCA0OSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgCisgICAgNTAsIDQ1LCA0OCwgNDgsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ5LCA0NSwgNDgsIAorICAgIDU0LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1MywgMTI4LCA4NiwgCisgICAgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDksIDQ1LCA0OCwgNTIsIDEyOCwgODYsIDY5LCA4MiwgODQsIAorICAgIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ5LCA0NSwgNDgsIDUxLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCAKKyAgICA3NiwgNDUsIDQ4LCA0OSwgNDUsIDQ4LCA1MCwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgCisgICAgNDksIDQ1LCA0OCwgNDksIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ5LCA0NSwgNDgsIAorICAgIDQ4LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1NCwgMTI4LCA4NiwgCisgICAgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgNDgsIDQ1LCA0OCwgNTMsIDEyOCwgODYsIDY5LCA4MiwgODQsIAorICAgIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ4LCA0NSwgNDgsIDUyLCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCAKKyAgICA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA1MSwgMTI4LCA4NiwgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDQ1LCA0OCwgCisgICAgNDgsIDQ1LCA0OCwgNTAsIDEyOCwgODYsIDY5LCA4MiwgODQsIDczLCA2NywgNjUsIDc2LCA0NSwgNDgsIDQ4LCA0NSwgNDgsIAorICAgIDQ5LCAxMjgsIDg2LCA2OSwgODIsIDg0LCA3MywgNjcsIDY1LCA3NiwgNDUsIDQ4LCA0OCwgNDUsIDQ4LCA0OCwgMTI4LCA4NiwgCisgICAgNjksIDgyLCA4NCwgNzMsIDY3LCA2NSwgNzYsIDEyOCwgODYsIDY5LCA4MiwgODMsIDczLCA2NywgNzYsIDY5LCAxMjgsIDg2LCAKKyAgICA2OSwgODIsIDgzLCAxOTcsIDg2LCA2OSwgODIsIDcxLCA2OSwgMTI4LCA4NiwgNjksIDgyLCA2OCwgNzMsIDcxLCA4MiwgNzMsIAorICAgIDgzLCAxMjgsIDg2LCA2OSwgODAsIDEyOCwgODYsIDY5LCA3OCwgNjgsIDEyOCwgODYsIDY5LCA3MywgNzYsIDEyOCwgODYsIAorICAgIDY5LCA3MiwgNzMsIDY3LCA3NiwgNjksIDEyOCwgODYsIDY5LCA3MiwgMTI4LCA4NiwgNjksIDIwMCwgODYsIDY5LCA2OSwgCisgICAgMTI4LCA4NiwgNjksIDE5NywgODYsIDY5LCA2OCwgNjksIDEyOCwgODYsIDY5LCA2NywgODQsIDc5LCAyMTAsIDg2LCA2NSwgCisgICAgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDg2LCA2NSwgODgsIDEyOCwgODYsIDY1LCA4NiwgMTI4LCA4NiwgNjUsIDIxNCwgCisgICAgODYsIDY1LCA4NSwgMTI4LCA4NiwgNjUsIDg0LCA3MiwgODksIDEyOCwgODYsIDY1LCA4NCwgMTI4LCA4NiwgNjUsIDgzLCAKKyAgICA4NCwgNzgsIDY5LCA4MywgMjExLCA4NiwgNjUsIDgzLCA3MywgODMsIDEyOCwgODYsIDY1LCA4MiwgODksIDIxMSwgODYsIAorICAgIDY1LCA4MiwgNzMsIDc1LCA2NSwgMTI4LCA4NiwgNjUsIDgyLCA3MywgNjUsIDc4LCAyMTIsIDg2LCA2NSwgODIsIDczLCA2NSwgCisgICAgMTI4LCA4NiwgNjUsIDgyLCA3MywgMTkzLCA4NiwgNjUsIDgyLCA2OSwgNzMsIDY1LCAyMDEsIDg2LCA2NSwgODIsIDY5LCAKKyAgICA3MywgMTkzLCA4NiwgNjUsIDgwLCA3OSwgODUsIDgyLCA4MywgMTI4LCA4NiwgNjUsIDgwLCAxMjgsIDg2LCA2NSwgNzgsIAorICAgIDY5LCAxMjgsIDg2LCA2NSwgNzcsIDY1LCA3MSwgNzksIDc3LCA4NSwgNzUsIDcyLCA2NSwgMTI4LCA4NiwgNjUsIDc3LCA2NSwgCisgICAgNzEsIDc5LCA3NywgODUsIDc1LCA3MiwgMTkzLCA4NiwgNjUsIDc2LCA3NiwgNjksIDg5LCAxMjgsIDg2LCA2NSwgNzMsIAorICAgIDEyOCwgODYsIDY1LCA2NSwgODYsIDg1LCAxMjgsIDg2LCA2NSwgNjUsIDEyOCwgODYsIDQ4LCA1MiwgNDgsIDY1LCAxMjgsIAorICAgIDg2LCA0OCwgNTIsIDQ4LCAxMjgsIDg2LCA0OCwgNTEsIDU3LCAxMjgsIDg2LCA0OCwgNTEsIDU2LCAxMjgsIDg2LCA0OCwgCisgICAgNTEsIDU1LCA2NSwgMTI4LCA4NiwgNDgsIDUxLCA1NSwgMTI4LCA4NiwgNDgsIDUxLCA1NCwgMTI4LCA4NiwgNDgsIDUxLCAKKyAgICA1MywgMTI4LCA4NiwgNDgsIDUxLCA1MiwgMTI4LCA4NiwgNDgsIDUxLCA1MSwgNjUsIDEyOCwgODYsIDQ4LCA1MSwgNTEsIAorICAgIDEyOCwgODYsIDQ4LCA1MSwgNTAsIDEyOCwgODYsIDQ4LCA1MSwgNDksIDY1LCAxMjgsIDg2LCA0OCwgNTEsIDQ5LCAxMjgsIAorICAgIDg2LCA0OCwgNTEsIDQ4LCA2NSwgMTI4LCA4NiwgNDgsIDUxLCA0OCwgMTI4LCA4NiwgNDgsIDUwLCA1NywgNjUsIDEyOCwgCisgICAgODYsIDQ4LCA1MCwgNTcsIDEyOCwgODYsIDQ4LCA1MCwgNTYsIDY1LCAxMjgsIDg2LCA0OCwgNTAsIDU2LCAxMjgsIDg2LCAKKyAgICA0OCwgNTAsIDU1LCAxMjgsIDg2LCA0OCwgNTAsIDU0LCAxMjgsIDg2LCA0OCwgNTAsIDUzLCAxMjgsIDg2LCA0OCwgNTAsIAorICAgIDUyLCAxMjgsIDg2LCA0OCwgNTAsIDUxLCA2NSwgMTI4LCA4NiwgNDgsIDUwLCA1MSwgMTI4LCA4NiwgNDgsIDUwLCA1MCwgCisgICAgMTI4LCA4NiwgNDgsIDUwLCA0OSwgMTI4LCA4NiwgNDgsIDUwLCA0OCwgNzYsIDEyOCwgODYsIDQ4LCA1MCwgNDgsIDc1LCAKKyAgICAxMjgsIDg2LCA0OCwgNTAsIDQ4LCA3NCwgMTI4LCA4NiwgNDgsIDUwLCA0OCwgNzMsIDEyOCwgODYsIDQ4LCA1MCwgNDgsIAorICAgIDcyLCAxMjgsIDg2LCA0OCwgNTAsIDQ4LCA3MSwgMTI4LCA4NiwgNDgsIDUwLCA0OCwgNzAsIDEyOCwgODYsIDQ4LCA1MCwgCisgICAgNDgsIDY5LCAxMjgsIDg2LCA0OCwgNTAsIDQ4LCA2OCwgMTI4LCA4NiwgNDgsIDUwLCA0OCwgNjcsIDEyOCwgODYsIDQ4LCAKKyAgICA1MCwgNDgsIDY2LCAxMjgsIDg2LCA0OCwgNTAsIDQ4LCA2NSwgMTI4LCA4NiwgNDgsIDUwLCA0OCwgMTI4LCA4NiwgNDgsIAorICAgIDQ5LCA1NywgMTI4LCA4NiwgNDgsIDQ5LCA1NiwgMTI4LCA4NiwgNDgsIDQ5LCA1NSwgMTI4LCA4NiwgNDgsIDQ5LCA1NCwgCisgICAgMTI4LCA4NiwgNDgsIDQ5LCA1MywgMTI4LCA4NiwgNDgsIDQ5LCA1MiwgMTI4LCA4NiwgNDgsIDQ5LCA1MSwgMTI4LCA4NiwgCisgICAgNDgsIDQ5LCA1MCwgNjYsIDEyOCwgODYsIDQ4LCA0OSwgNTAsIDY1LCAxMjgsIDg2LCA0OCwgNDksIDUwLCAxMjgsIDg2LCAKKyAgICA0OCwgNDksIDQ5LCA2NywgMTI4LCA4NiwgNDgsIDQ5LCA0OSwgNjYsIDEyOCwgODYsIDQ4LCA0OSwgNDksIDY1LCAxMjgsIAorICAgIDg2LCA0OCwgNDksIDQ5LCAxMjgsIDg2LCA0OCwgNDksIDQ4LCAxMjgsIDg2LCA0OCwgNDgsIDU3LCAxMjgsIDg2LCA0OCwgCisgICAgNDgsIDU2LCAxMjgsIDg2LCA0OCwgNDgsIDU1LCA2NiwgMTI4LCA4NiwgNDgsIDQ4LCA1NSwgNjUsIDEyOCwgODYsIDQ4LCAKKyAgICA0OCwgNTUsIDEyOCwgODYsIDQ4LCA0OCwgNTQsIDEyOCwgODYsIDQ4LCA0OCwgNTMsIDEyOCwgODYsIDQ4LCA0OCwgNTIsIAorICAgIDEyOCwgODYsIDQ4LCA0OCwgNTEsIDEyOCwgODYsIDQ4LCA0OCwgNTAsIDY1LCAxMjgsIDg2LCA0OCwgNDgsIDUwLCAxMjgsIAorICAgIDg2LCA0OCwgNDgsIDQ5LCA3MywgMTI4LCA4NiwgNDgsIDQ4LCA0OSwgNzIsIDEyOCwgODYsIDQ4LCA0OCwgNDksIDcxLCAKKyAgICAxMjgsIDg2LCA0OCwgNDgsIDQ5LCA3MCwgMTI4LCA4NiwgNDgsIDQ4LCA0OSwgNjksIDEyOCwgODYsIDQ4LCA0OCwgNDksIAorICAgIDY4LCAxMjgsIDg2LCA0OCwgNDgsIDQ5LCA2NywgMTI4LCA4NiwgNDgsIDQ4LCA0OSwgNjYsIDEyOCwgODYsIDQ4LCA0OCwgCisgICAgNDksIDY1LCAxMjgsIDg2LCA0OCwgNDgsIDQ5LCAxMjgsIDg1LCA5MCwgODUsIDEyOCwgODUsIDkwLCA1MSwgMTI4LCA4NSwgCisgICAgOTAsIDE3OSwgODUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA4NSwgODksIDEyOCwgODUsIDg1LCA4OSwgNjUsIDc4LCAKKyAgICA3OCwgNjUsIDEyOCwgODUsIDg1LCA4NSwgODUsIDEyOCwgODUsIDg1LCA4NSwgNTEsIDEyOCwgODUsIDg1LCA4NSwgNTAsIAorICAgIDEyOCwgODUsIDg1LCA2OSwgMTI4LCA4NSwgODQsIDg1LCA3NSwgNzMsIDEyOCwgODUsIDgzLCA4MywgODUsIDUxLCAxMjgsIAorICAgIDg1LCA4MywgODMsIDg1LCAxMjgsIDg1LCA4MywgNzIsIDg4LCAxMjgsIDg1LCA4MywgNzIsIDg1LCA3NywgODgsIDEyOCwgCisgICAgODUsIDgzLCA3MiwgNjksIDc4LCA3OCwgNjUsIDEyOCwgODUsIDgzLCA3MiwgNTAsIDEyOCwgODUsIDgzLCA3MiwgMTI4LCAKKyAgICA4NSwgODMsIDIwMCwgODUsIDgzLCA2OSwgMTk2LCA4NSwgODMsIDY5LCAxMjgsIDg1LCA4MiwgODUsIDIxOCwgODUsIDgyLCAKKyAgICA4NSwgODMsIDEyOCwgODUsIDgyLCA4NSwgNjgsIDY1LCAxMjgsIDg1LCA4MiwgODUsIDY4LCAxOTMsIDg1LCA4MiwgODUsIAorICAgIDEyOCwgODUsIDgyLCAyMTMsIDg1LCA4MiwgNzgsIDEyOCwgODUsIDgyLCA3MywgNzgsIDY5LCAxMjgsIDg1LCA4MiwgNzMsIAorICAgIDUxLCAxMjgsIDg1LCA4MiwgNzMsIDEyOCwgODUsIDgyLCA2NSwgNzgsIDg1LCA4MywgMTI4LCA4NSwgODIsIDY1LCAxMjgsIAorICAgIDg1LCA4MiwgNTIsIDEyOCwgODUsIDgyLCA1MCwgMTI4LCA4NSwgODIsIDE3OCwgODUsIDgwLCA4NywgNjUsIDgyLCA2OCwgCisgICAgODMsIDEyOCwgODUsIDgwLCA4NywgNjUsIDgyLCA2OCwgMjExLCA4NSwgODAsIDg3LCA2NSwgODIsIDY4LCAxMjgsIDg1LCAKKyAgICA4MCwgODcsIDY1LCA4MiwgMTk2LCA4NSwgODAsIDg0LCA4NSwgODIsIDc4LCAxMjgsIDg1LCA4MCwgODMsIDczLCA3NiwgNzksIAorICAgIDc4LCAxMjgsIDg1LCA4MCwgODMsIDczLCA3NiwgNzksIDIwNiwgODUsIDgwLCA4MiwgNzMsIDcxLCA3MiwgMjEyLCA4NSwgCisgICAgODAsIDgwLCA2OSwgMjEwLCA4NSwgODAsIDY1LCA2OCwgNzIsIDc3LCA2NSwgNzgsIDczLCA4OSwgNjUsIDEyOCwgODUsIDgwLCAKKyAgICA0NSwgODAsIDc5LCA3MywgNzgsIDg0LCA3MywgNzgsIDE5OSwgODUsIDc5LCA3OCwgMTI4LCA4NSwgNzgsIDc4LCAxMjgsIAorICAgIDg1LCA3OCwgNzcsIDY1LCA4MiwgODIsIDczLCA2OSwgMTk2LCA4NSwgNzgsIDc1LCA3OCwgNzksIDg3LCA3OCwgMTI4LCA4NSwgCisgICAgNzgsIDczLCA4NiwgNjksIDgyLCA4MywgNjUsIDIwNCwgODUsIDc4LCA3MywgODQsIDg5LCAxMjgsIDg1LCA3OCwgNzMsIDg0LCAKKyAgICAxMjgsIDg1LCA3OCwgNzMsIDIxMiwgODUsIDc4LCA3MywgNzksIDc4LCAxMjgsIDg1LCA3OCwgNzMsIDc5LCAyMDYsIDg1LCAKKyAgICA3OCwgNzMsIDcwLCA3MywgNjksIDE5NiwgODUsIDc4LCA2OCwgMjA3LCA4NSwgNzgsIDY4LCA2OSwgODIsIDg0LCA3MywgNjksIAorICAgIDEyOCwgODUsIDc4LCA2OCwgNjksIDgyLCA3NiwgNzMsIDc4LCAxOTcsIDg1LCA3OCwgNjgsIDY5LCA4MiwgNjgsIDc5LCA4NCwgCisgICAgMTI4LCA4NSwgNzgsIDY4LCA2OSwgODIsIDY2LCA2NSwgODIsIDEyOCwgODUsIDc4LCA2OCwgNjksIDIxMCwgODUsIDc4LCAKKyAgICA2NywgNzMsIDE5MywgODUsIDc4LCA2NSwgODMsIDgwLCA3MywgODIsIDY1LCA4NCwgNjksIDY4LCAxMjgsIDg1LCA3OCwgNjUsIAorICAgIDgwLCAxMjgsIDg1LCA3OCwgNjUsIDc3LCA4NSwgODMsIDY5LCAxOTYsIDg1LCA3OCwgNjUsIDEyOCwgODUsIDIwNiwgODUsIAorICAgIDc3LCA4NSwgNzcsIDEyOCwgODUsIDc3LCA4NSwgMjA1LCA4NSwgNzcsIDY2LCA4MiwgNjksIDc2LCA3NiwgNjUsIDEyOCwgCisgICAgODUsIDc3LCA2NiwgODIsIDY5LCA3NiwgNzYsIDE5MywgODUsIDc3LCA2NiwgNzMsIDc4LCAxMjgsIDg1LCA3NSwgODUsIAorICAgIDEyOCwgODUsIDc1LCA4MiwgNjUsIDczLCA3OCwgNzMsIDY1LCAyMDYsIDg1LCA3NSwgNjUsIDgyLCA2NSwgMTI4LCA4NSwgCisgICAgNzUsIDY1LCA4MiwgMTkzLCA4NSwgNzUsIDEyOCwgODUsIDczLCA3NiwgNzYsIDY5LCA2NSwgNzgsIDc4LCAxMjgsIDg1LCAKKyAgICA3MywgNzEsIDcyLCA4NSwgMjEwLCA4NSwgNzEsIDY1LCA4MiwgNzMsIDg0LCA3MywgMTk1LCA4NSwgNjksIDg5LCAxMjgsIAorICAgIDg1LCA2OSwgNjksIDEyOCwgODUsIDY5LCA2NSwgMTI4LCA4NSwgNjgsIDg1LCA3MSwgMTI4LCA4NSwgNjgsIDY1LCA4NCwgCisgICAgODQsIDY1LCAxMjgsIDg1LCA2OCwgNjUsIDg0LCA4NCwgMTkzLCA4NSwgNjgsIDY1LCA2NSwgODQsIDEyOCwgODUsIDY4LCAKKyAgICAxMjgsIDg1LCAxOTYsIDg1LCA2NywgMTI4LCA4NSwgNjYsIDg1LCA3MCwgNzMsIDc2LCA3MywgMTI4LCA4NSwgNjYsIDcyLCAKKyAgICA2NSwgODksIDY1LCA4NCwgMjA3LCA4NSwgNjYsIDY1LCA2OCwgNjUsIDc3LCA2NSwgMTI4LCA4NSwgNjYsIDEyOCwgODUsIAorICAgIDY1LCA4NCwgNzIsIDEyOCwgODUsIDY1LCAxMjgsIDg1LCAxNzgsIDg1LCA0OCwgNTIsIDUwLCAxMjgsIDg1LCA0OCwgNTIsIAorICAgIDQ5LCAxMjgsIDg1LCA0OCwgNTIsIDQ4LCAxMjgsIDg1LCA0OCwgNTEsIDU3LCAxMjgsIDg1LCA0OCwgNTEsIDU2LCAxMjgsIAorICAgIDg1LCA0OCwgNTEsIDU1LCAxMjgsIDg1LCA0OCwgNTEsIDU0LCAxMjgsIDg1LCA0OCwgNTEsIDUzLCAxMjgsIDg1LCA0OCwgCisgICAgNTEsIDUyLCAxMjgsIDg1LCA0OCwgNTEsIDUxLCAxMjgsIDg1LCA0OCwgNTEsIDUwLCA2NSwgMTI4LCA4NSwgNDgsIDUxLCAKKyAgICA1MCwgMTI4LCA4NSwgNDgsIDUxLCA0OSwgMTI4LCA4NSwgNDgsIDUxLCA0OCwgMTI4LCA4NSwgNDgsIDUwLCA1NywgNjUsIAorICAgIDEyOCwgODUsIDQ4LCA1MCwgNTcsIDEyOCwgODUsIDQ4LCA1MCwgNTYsIDEyOCwgODUsIDQ4LCA1MCwgNTUsIDEyOCwgODUsIAorICAgIDQ4LCA1MCwgNTQsIDEyOCwgODUsIDQ4LCA1MCwgNTMsIDEyOCwgODUsIDQ4LCA1MCwgNTIsIDEyOCwgODUsIDQ4LCA1MCwgCisgICAgNTEsIDY1LCAxMjgsIDg1LCA0OCwgNTAsIDUxLCAxMjgsIDg1LCA0OCwgNTAsIDUwLCAxMjgsIDg1LCA0OCwgNTAsIDQ5LCAKKyAgICAxMjgsIDg1LCA0OCwgNTAsIDQ4LCAxMjgsIDg1LCA0OCwgNDksIDU3LCAxMjgsIDg1LCA0OCwgNDksIDU2LCAxMjgsIDg1LCAKKyAgICA0OCwgNDksIDU1LCAxMjgsIDg1LCA0OCwgNDksIDU0LCAxMjgsIDg1LCA0OCwgNDksIDUzLCAxMjgsIDg1LCA0OCwgNDksIAorICAgIDUyLCAxMjgsIDg1LCA0OCwgNDksIDUxLCAxMjgsIDg1LCA0OCwgNDksIDUwLCAxMjgsIDg1LCA0OCwgNDksIDQ5LCAxMjgsIAorICAgIDg1LCA0OCwgNDksIDQ4LCAxMjgsIDg1LCA0OCwgNDgsIDU3LCAxMjgsIDg1LCA0OCwgNDgsIDU2LCAxMjgsIDg1LCA0OCwgCisgICAgNDgsIDU1LCAxMjgsIDg1LCA0OCwgNDgsIDU0LCA2NiwgMTI4LCA4NSwgNDgsIDQ4LCA1NCwgNjUsIDEyOCwgODUsIDQ4LCAKKyAgICA0OCwgNTQsIDEyOCwgODUsIDQ4LCA0OCwgNTMsIDEyOCwgODUsIDQ4LCA0OCwgNTIsIDEyOCwgODUsIDQ4LCA0OCwgNTEsIAorICAgIDEyOCwgODUsIDQ4LCA0OCwgNTAsIDEyOCwgODUsIDQ4LCA0OCwgNDksIDEyOCwgODUsIDQ1LCA3MywgNDUsIDczLCAxMjgsIAorICAgIDg1LCA0NSwgNjksIDc5LCA0NSwgNjksIDg1LCAxMjgsIDg1LCA0NSwgNjYsIDgyLCA3NCwgNzEsIDg1LCAxMjgsIDg0LCA5MCwgCisgICAgODUsIDEyOCwgODQsIDkwLCA3OSwgNjUsIDEyOCwgODQsIDkwLCA3OSwgMTI4LCA4NCwgOTAsIDczLCAyMTAsIDg0LCA5MCwgCisgICAgNzMsIDEyOCwgODQsIDkwLCA2OSwgNjksIDEyOCwgODQsIDkwLCA2OSwgMTI4LCA4NCwgOTAsIDY1LCA2NSwgMTI4LCA4NCwgCisgICAgOTAsIDY1LCAxMjgsIDg0LCA5MCwgMTI4LCA4NCwgODksIDIxMCwgODQsIDg5LCA4MCwgNjksIDQ1LCAxODMsIDg0LCA4OSwgCisgICAgODAsIDY5LCA0NSwgMTgyLCA4NCwgODksIDgwLCA2OSwgNDUsIDE4MSwgODQsIDg5LCA4MCwgNjksIDQ1LCAxODAsIDg0LCAKKyAgICA4OSwgODAsIDY5LCA0NSwgMTc5LCA4NCwgODksIDgwLCA2OSwgNDUsIDE3OCwgODQsIDg5LCA4MCwgNjksIDQ1LCAxNzcsIAorICAgIDg0LCA4OSwgODAsIDE5NywgODQsIDg5LCA3OSwgMTI4LCA4NCwgODksIDczLCAxMjgsIDg0LCA4OSwgNjksIDEyOCwgODQsIAorICAgIDg5LCA2NSwgMTI4LCA4NCwgODcsIDc5LCA3OSwgMTI4LCA4NCwgODcsIDc5LCA0NSwgODcsIDY1LCAyMTcsIDg0LCA4NywgCisgICAgNzksIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDg0LCA4NywgNzksIDQ1LCA3NiwgNzMsIDc4LCAxOTcsIDg0LCAKKyAgICA4NywgNzksIDQ1LCA3MiwgNjksIDY1LCA2OCwgNjksIDE5NiwgODQsIDg3LCA3MywgODMsIDg0LCA2OSwgMTk2LCA4NCwgODcsIAorICAgIDczLCA3MywgMTI4LCA4NCwgODcsIDczLCAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDQ1LCA4NCwgODcsIDc5LCAKKyAgICAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDQ1LCA4NCwgNzIsIDgyLCA2OSwgNjksIDEyOCwgODQsIDg3LCA2OSwgNzgsIAorICAgIDg0LCA4OSwgNDUsIDgzLCA3MywgODgsIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCA4OSwgNDUsIDgzLCA2OSwgODYsIDY5LCAKKyAgICA3OCwgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDg5LCA0NSwgNzksIDc4LCA2OSwgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIAorICAgIDg5LCA0NSwgNzgsIDczLCA3OCwgNjksIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCA4OSwgNDUsIDcwLCA3OSwgODUsIDgyLCAKKyAgICAxMjgsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDQ1LCA3MCwgNzMsIDg2LCA2OSwgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIAorICAgIDg5LCA0NSwgNjksIDczLCA3MSwgNzIsIDg0LCAyMDAsIDg0LCA4NywgNjksIDc4LCA4NCwgODksIDQ1LCA2OSwgNzMsIDcxLCAKKyAgICA3MiwgODQsIDEyOCwgODQsIDg3LCA2OSwgNzgsIDg0LCA4OSwgMTI4LCA4NCwgODcsIDY5LCA3OCwgODQsIDIxNywgODQsIAorICAgIDg3LCA2OSwgNzYsIDg2LCA2OSwgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgODQsIDg3LCA2OSwgNzYsIDg2LCAKKyAgICA2OSwgMTI4LCA4NCwgODcsIDY5LCA3NiwgODYsIDE5NywgODQsIDg3LCA2OSwgMTI4LCA4NCwgODcsIDY1LCA2NSwgMTI4LCAKKyAgICA4NCwgODcsIDY1LCAxMjgsIDg0LCA4NiwgODIsIDczLCA2OCwgNzksIDEyOCwgODQsIDg2LCA3MywgNzcsIDY1LCA2OCwgODUsIAorICAgIDIxMCwgODQsIDg1LCA4OCwgMTI4LCA4NCwgODUsIDg1LCA3NywgODUsIDEyOCwgODQsIDg1LCA4NSwgMTI4LCA4NCwgODUsIAorICAgIDg0LCA4NCwgODksIDEyOCwgODQsIDg1LCA4NCwgNjksIDg5LCA2NSwgODMsIDY1LCA4NCwgMTI4LCA4NCwgODUsIDg0LCAKKyAgICAxMjgsIDg0LCA4NSwgODIsIDg4LCAxMjgsIDg0LCA4NSwgODIsIDg1LCAxMjgsIDg0LCA4NSwgODIsIDg0LCA3NiwgNjksIAorICAgIDEyOCwgODQsIDg1LCA4MiwgNzksIDUwLCAxMjgsIDg0LCA4NSwgODIsIDc4LCA4MywgODQsIDczLCA3NiwgNjksIDEyOCwgCisgICAgODQsIDg1LCA4MiwgNzgsIDY5LCAxOTYsIDg0LCA4NSwgODIsIDIwNiwgODQsIDg1LCA4MiwgNjYsIDY1LCA3OCwgMTI4LCAKKyAgICA4NCwgODUsIDgyLCAxMjgsIDg0LCA4NSwgODAsIDEyOCwgODQsIDg1LCA3OSwgODgsIDEyOCwgODQsIDg1LCA3OSwgODQsIAorICAgIDEyOCwgODQsIDg1LCA3OSwgODAsIDEyOCwgODQsIDg1LCA3OSwgMTI4LCA4NCwgODUsIDc4LCA3OCwgODksIDEyOCwgODQsIAorICAgIDg1LCA3NywgNjksIDg0LCA2OSwgODMsIDEyOCwgODQsIDg1LCA3NywgNjUsIDY5LCAxMjgsIDg0LCA4NSwgNzcsIDEyOCwgCisgICAgODQsIDg1LCA3NiwgNzMsIDgwLCAxMjgsIDg0LCA4NSwgNzUsIDg3LCA2OSwgNzgsIDg0LCA3MywgODMsIDEyOCwgODQsIDg1LCAKKyAgICA3NSwgMTI4LCA4NCwgODUsIDcxLCA4MiwgNzMsIDIwMywgODQsIDg1LCA3MSwgNTAsIDEyOCwgODQsIDg1LCA3MSwgMTc4LCAKKyAgICA4NCwgODUsIDY1LCA4MiwgNjksIDE5OSwgODQsIDg1LCA2NSwgNjksIDgwLCAxMjgsIDg0LCA4NSwgNjUsIDY5LCAxMjgsIAorICAgIDg0LCAyMTMsIDg0LCA4NCwgODUsIDg1LCAxMjgsIDg0LCA4NCwgODUsIDY4LCA2OCwgNjUsIDcxLCAxMjgsIDg0LCA4NCwgCisgICAgODUsIDY4LCA2OCwgNjUsIDY1LCA3MSwgMTI4LCA4NCwgODQsIDg1LCAxMjgsIDg0LCA4NCwgODQsIDcyLCA2NSwgMTI4LCAKKyAgICA4NCwgODQsIDg0LCA2NSwgMTI4LCA4NCwgODQsIDgzLCA4NSwgMTI4LCA4NCwgODQsIDgzLCA3OSwgMTI4LCA4NCwgODQsIAorICAgIDgzLCA3MywgMTI4LCA4NCwgODQsIDgzLCA2OSwgNjksIDEyOCwgODQsIDg0LCA4MywgNjksIDEyOCwgODQsIDg0LCA4MywgCisgICAgNjUsIDEyOCwgODQsIDg0LCA3OSwgNzksIDEyOCwgODQsIDg0LCA3MywgNzMsIDEyOCwgODQsIDg0LCA3MywgMTI4LCA4NCwgCisgICAgODQsIDcyLCA4NywgNjksIDEyOCwgODQsIDg0LCA3MiwgODUsIDEyOCwgODQsIDg0LCA3MiwgNzksIDc5LCAxMjgsIDg0LCAKKyAgICA4NCwgNzIsIDc5LCAxMjgsIDg0LCA4NCwgNzIsIDczLCAxMjgsIDg0LCA4NCwgNzIsIDY5LCA2OSwgMTI4LCA4NCwgODQsIAorICAgIDcyLCA2OSwgMTI4LCA4NCwgODQsIDcyLCA2NSwgNjUsIDEyOCwgODQsIDg0LCA3MiwgMTI4LCA4NCwgODQsIDY5LCA3MiwgCisgICAgNjksIDcyLCAxMjgsIDg0LCA4NCwgNjksIDcyLCA2OSwgMjAwLCA4NCwgODQsIDY5LCA3MiwgMTI4LCA4NCwgODQsIDY5LCAKKyAgICAyMDAsIDg0LCA4NCwgNjksIDY5LCAxMjgsIDg0LCA4NCwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA4NCwgODQsIAorICAgIDY1LCA4NSwgMTI4LCA4NCwgODQsIDY1LCA3MywgMTI4LCA4NCwgODQsIDY1LCA2NSwgMTI4LCA4NCwgODQsIDUwLCAxMjgsIAorICAgIDg0LCA4MywgODcsIDY5LCAxMjgsIDg0LCA4MywgODcsIDY1LCAxMjgsIDg0LCA4MywgODYsIDEyOCwgODQsIDgzLCA4MywgCisgICAgNjksIDEyOCwgODQsIDgzLCA3MiwgODUsIDcxLCA4MywgMTI4LCA4NCwgODMsIDcyLCA3OSwgNzksIDc1LCAxMjgsIDg0LCAKKyAgICA4MywgNzIsIDc5LCA3OSwgMjAzLCA4NCwgODMsIDcyLCA2OSwgODMsIDEyOCwgODQsIDgzLCA3MiwgNjksIDcxLCAxMjgsIAorICAgIDg0LCA4MywgNzIsIDY5LCAxOTksIDg0LCA4MywgNzIsIDY5LCAxMjgsIDg0LCA4MywgNzIsIDY1LCAxMjgsIDg0LCA4MywgCisgICAgNjksIDgyLCA2OSwgMTI4LCA4NCwgODMsIDY1LCA2OCwgNzMsIDEyOCwgODQsIDgzLCA2NSwgNjgsIDIwMSwgODQsIDgzLCAKKyAgICA2NSwgNjUsIDY4LCA3MywgODksIDEyOCwgODQsIDgzLCA2NSwgNjUsIDEyOCwgODQsIDgzLCAxOTMsIDg0LCA4MiwgODksIAorICAgIDY2LCA3NiwgNzMsIDc5LCAyMDYsIDg0LCA4MiwgODUsIDg0LCA3MiwgMTI4LCA4NCwgODIsIDg1LCA3OCwgNzUsIDEyOCwgCisgICAgODQsIDgyLCA4NSwgNzgsIDY3LCA2NSwgODQsIDY5LCAxOTYsIDg0LCA4MiwgODUsIDc3LCA4MCwgNjksIDg0LCAxMjgsIDg0LCAKKyAgICA4MiwgODUsIDY5LCAxMjgsIDg0LCA4MiwgODUsIDY3LCA3NSwgMTI4LCA4NCwgODIsIDc5LCA4MCwgNzMsIDY3LCA2NSwgCisgICAgMjA0LCA4NCwgODIsIDc5LCA4MCwgNzIsIDg5LCAxMjgsIDg0LCA4MiwgNzksIDc3LCA3MywgNzUsIDc5LCA4MywgODksIDc4LCAKKyAgICA2NSwgNzEsIDc3LCA2NSwgMTI4LCA4NCwgODIsIDc5LCA3NywgNzMsIDc1LCA3OSwgODAsIDgzLCA3MywgNzAsIDczLCA4MywgCisgICAgODQsIDc5LCA3OCwgMTI4LCA4NCwgODIsIDc5LCA3NywgNzMsIDc1LCA3OSwgODAsIDY1LCA4MiwgNjUsIDc1LCA2NSwgNzYsIAorICAgIDY5LCA4MywgNzcsIDY1LCAxMjgsIDg0LCA4MiwgNzksIDc3LCA3MywgNzUsIDc5LCA3OCwgMTI4LCA4NCwgODIsIDc5LCA3NywgCisgICAgNzMsIDc1LCA3OSwgMjA2LCA4NCwgODIsIDc5LCA3NywgNzMsIDc1LCA3OSwgNzYsIDg5LCA3MSwgNzMsIDgzLCA3NywgNjUsIAorICAgIDEyOCwgODQsIDgyLCA3OSwgNzYsIDc2LCA2OSwgODksIDY2LCA4NSwgODMsIDEyOCwgODQsIDgyLCA3OSwgNzUsIDg1LCA4NCwgCisgICAgNjUsIDgzLCA4NCwgMjAxLCA4NCwgODIsIDc5LCA2OSwgOTAsIDY5LCA3OCwgNzMsIDY1LCAyMDYsIDg0LCA4MiwgNzMsIDg1LCAKKyAgICA3NywgODAsIDcyLCAxMjgsIDg0LCA4MiwgNzMsIDg0LCA3OSwgMjExLCA4NCwgODIsIDczLCA4NCwgNzMsIDc3LCA3OSwgODIsIAorICAgIDczLCA3OSwgNzgsIDEyOCwgODQsIDgyLCA3MywgODMsIDczLCA3NywgNzksIDg1LCAxMjgsIDg0LCA4MiwgNzMsIDgzLCA2OSwgCisgICAgNzcsIDY5LCAxMjgsIDg0LCA4MiwgNzMsIDgwLCA3OSwgNjgsIDEyOCwgODQsIDgyLCA3MywgODAsIDc2LCA3MywgMTI4LCAKKyAgICA4NCwgODIsIDczLCA4MCwgNzYsIDE5NywgODQsIDgyLCA3MywgNzksIDIwNiwgODQsIDgyLCA3MywgNzMsIDgzLCA2NSwgODAsIAorICAgIDEyOCwgODQsIDgyLCA3MywgNzEsIDgyLCA2NSwgNzcsIDc3LCA3OSwgMjExLCA4NCwgODIsIDczLCA3MSwgODIsIDY1LCAKKyAgICAyMDUsIDg0LCA4MiwgNzMsIDcxLCA3OSwgODIsIDcxLCA3OSwgNzgsIDEyOCwgODQsIDgyLCA3MywgNzAsIDc5LCA3OCwgNzMsIAorICAgIDY1LCA4MywgMTI4LCA4NCwgODIsIDczLCA3MCwgNzksIDc2LCA3MywgNjUsIDg0LCAxOTcsIDg0LCA4MiwgNzMsIDY4LCA2OSwgCisgICAgNzgsIDg0LCAxMjgsIDg0LCA4MiwgNzMsIDY4LCA2OSwgNzgsIDIxMiwgODQsIDgyLCA3MywgNjcsIDc5LCA3NiwgNzksIDc4LCAKKyAgICAxMjgsIDg0LCA4MiwgNzMsIDY1LCA3OCwgNzEsIDg1LCA3NiwgNjUsIDIxMCwgODQsIDgyLCA3MywgNjUsIDc4LCA3MSwgNzYsIAorICAgIDY5LCA0NSwgODIsIDc5LCA4NSwgNzgsIDE5NiwgODQsIDgyLCA3MywgNjUsIDc4LCA3MSwgNzYsIDY5LCA0NSwgNzIsIDY5LCAKKyAgICA2NSwgNjgsIDY5LCAxOTYsIDg0LCA4MiwgNzMsIDY1LCA3OCwgNzEsIDc2LCA2OSwgMTI4LCA4NCwgODIsIDczLCA2NSwgNzgsIAorICAgIDcxLCA3NiwgMTk3LCA4NCwgODIsIDczLCA2NSwgMTI4LCA4NCwgODIsIDczLCAxMjgsIDg0LCA4MiwgNjksIDgzLCA3MywgCisgICAgNzYsIDc2LCA3OSwgMTI4LCA4NCwgODIsIDY5LCA3OCwgNjgsIDEyOCwgODQsIDgyLCA2OSwgNzgsIDE5NiwgODQsIDgyLCAKKyAgICA2OSwgNzcsIDc5LCA3NiwgNzksIDQ1LCA1MSwgMTI4LCA4NCwgODIsIDY5LCA3NywgNzksIDc2LCA3OSwgNDUsIDUwLCAxMjgsIAorICAgIDg0LCA4MiwgNjksIDc3LCA3OSwgNzYsIDc5LCA0NSwgNDksIDEyOCwgODQsIDgyLCA2OSwgNjksIDEyOCwgODQsIDgyLCA2OSwgCiAgICAgMTk3LCA4NCwgODIsIDY5LCA2NSwgNjgsIDczLCA3OCwgNzEsIDEyOCwgODQsIDgyLCA2NSwgODksIDEyOCwgODQsIDgyLCAKICAgICA2NSwgODAsIDY5LCA5MCwgNzMsIDg1LCA3NywgMTI4LCA4NCwgODIsIDY1LCA3OCwgODMsIDg2LCA2OSwgODIsIDgzLCA2NSwgCiAgICAgMjA0LCA4NCwgODIsIDY1LCA3OCwgODMsIDgwLCA3OSwgODMsIDczLCA4NCwgNzMsIDc5LCAyMDYsIDg0LCA4MiwgNjUsIDc4LCAKQEAgLTQ5Myw1NyArNDk3LDU2IEBACiAgICAgNzksIDgyLCA2NywgODUsIDc2LCA4NSwgMjExLCA4NCwgNzksIDgyLCA2NywgNzIsIDEyOCwgODQsIDc5LCA4MSwgMTI4LCAKICAgICA4NCwgNzksIDgwLCA2NiwgNjUsIDgyLCAxMjgsIDg0LCA3OSwgODAsIDQ1LCA3NiwgNzMsIDcxLCA3MiwgODQsIDY5LCAxOTYsIAogICAgIDg0LCA3OSwgODAsIDEyOCwgODQsIDc5LCAyMDgsIDg0LCA3OSwgNzksIDg0LCA3MiwgMTI4LCA4NCwgNzksIDc5LCA3OCwgCi0gICAgMTI4LCA4NCwgNzksIDc5LCAxMjgsIDg0LCA3OSwgNzgsIDc5LCA4MywgMTI4LCA4NCwgNzksIDc4LCA3MSwgODUsIDY5LCAKLSAgICAxMjgsIDg0LCA3OSwgNzgsIDcxLCA4NSwgMTk3LCA4NCwgNzksIDc4LCA3MSwgMTI4LCA4NCwgNzksIDc4LCA2OSwgNDUsIAotICAgIDU0LCAxMjgsIDg0LCA3OSwgNzgsIDY5LCA0NSwgNTMsIDEyOCwgODQsIDc5LCA3OCwgNjksIDQ1LCA1MiwgMTI4LCA4NCwgCi0gICAgNzksIDc4LCA2OSwgNDUsIDUxLCAxMjgsIDg0LCA3OSwgNzgsIDY5LCA0NSwgNTAsIDEyOCwgODQsIDc5LCA3OCwgNjksIDQ1LCAKLSAgICA0OSwgMTI4LCA4NCwgNzksIDc4LCA2OSwgMTI4LCA4NCwgNzksIDc4LCA2NSwgMjA0LCA4NCwgNzksIDc3LCA4MCwgNzMsIAotICAgIDEyOCwgODQsIDc5LCA3NywgNjUsIDg0LCA3OSwgMTI4LCA4NCwgNzksIDc2LCA3OSwgNzgsIDcxLCAxMjgsIDg0LCA3OSwgCi0gICAgNzUsIDg5LCAyMDcsIDg0LCA3OSwgNzMsIDc2LCA2OSwgODQsIDEyOCwgODQsIDc5LCA3MSwgNjksIDg0LCA3MiwgNjksIDgyLCAKLSAgICAxMjgsIDg0LCA3OSwgNjgsIDIwNywgODQsIDc5LCA2NSwgNzgsIDY4LCA2NSwgNzUsIDcyLCA3MywgNjUsIDg0LCAxMjgsIAotICAgIDg0LCA3OSwgNjUsIDEyOCwgODQsIDc4LCAxMjgsIDg0LCA3NiwgODYsIDEyOCwgODQsIDc2LCA4NSwgMTI4LCA4NCwgNzYsIAotICAgIDc5LCAxMjgsIDg0LCA3NiwgNzMsIDEyOCwgODQsIDc2LCA3MiwgODcsIDY5LCAxMjgsIDg0LCA3NiwgNzIsIDg1LCAxMjgsIAotICAgIDg0LCA3NiwgNzIsIDc5LCA3OSwgMTI4LCA4NCwgNzYsIDcyLCA3OSwgMTI4LCA4NCwgNzYsIDcyLCA3MywgMTI4LCA4NCwgCi0gICAgNzYsIDcyLCA2OSwgNjksIDEyOCwgODQsIDc2LCA3MiwgNjksIDEyOCwgODQsIDc2LCA3MiwgNjUsIDEyOCwgODQsIDc2LCAKLSAgICA2OSwgNjksIDEyOCwgODQsIDc2LCA2NSwgMTI4LCA4NCwgNzQsIDY5LCAxMjgsIDg0LCA3MywgODgsIDEyOCwgODQsIDczLCAKLSAgICA4NywgNzgsIDEyOCwgODQsIDczLCA4NywgNjUsIDIxOCwgODQsIDczLCA4NCwgODUsIDY1LCA2OSwgODAsIDEyOCwgODQsIAotICAgIDczLCA4NCwgNzYsIDc5LCAxMjgsIDg0LCA3MywgODQsIDE5MywgODQsIDczLCA4NCwgMTI4LCA4NCwgNzMsIDgyLCA4OSwgCi0gICAgNjUsIDc1LCAxMjgsIDg0LCA3MywgODIsIDg0LCAxOTMsIDg0LCA3MywgODIsIDc5LCA3OCwgNzMsIDY1LCAyMDYsIDg0LCAKLSAgICA3MywgODIsIDY5LCAxOTYsIDg0LCA3MywgODIsIDEyOCwgODQsIDczLCAyMTAsIDg0LCA3MywgODAsIDgwLCA3MywgMTI4LCAKLSAgICA4NCwgNzMsIDgwLCA2OSwgNzIsIDY1LCAxMjgsIDg0LCA3MywgODAsIDEyOCwgODQsIDczLCAyMDgsIDg0LCA3MywgNzgsIAotICAgIDg5LCAxMjgsIDg0LCA3MywgNzgsIDIxNywgODQsIDczLCA3OCwgNzgsIDY5LCAxMjgsIDg0LCA3MywgNzgsIDY3LCA4NCwgCi0gICAgODUsIDgyLCA2OSwgMTI4LCA4NCwgNzMsIDc4LCA2NSwgNzEsIDc3LCA2NSwgMTI4LCA4NCwgNzMsIDc3LCA2OSwgODMsIAotICAgIDEyOCwgODQsIDczLCA3NywgNjksIDIxMCwgODQsIDczLCA3NywgNjksIDEyOCwgODQsIDczLCA3NiwgNjgsIDY5LCAxMjgsIAotICAgIDg0LCA3MywgNzYsIDY4LCAxOTcsIDg0LCA3MywgNzYsIDEyOCwgODQsIDczLCAyMDQsIDg0LCA3MywgNzUsIDY5LCA4NSwgCi0gICAgODQsIDQ1LCA4NCwgNzIsIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgODMsIAotICAgIDczLCA3OSwgODMsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCAKLSAgICA4MywgNzMsIDc5LCA4MywgMTI4LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgODIsIDczLCA2OSwgODUsIDc2LCAxMjgsIAotICAgIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgODQsIDczLCA3NSwgNjksIDg1LCAKLSAgICA4NCwgNDUsIDc3LCA3MywgNjksIDg1LCA3NywgMTI4LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgNzUsIDczLCA4OSwgCi0gICAgNjksIDc5LCA3NSwgMTI4LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgNjcsIDczLCA2OSwgODUsIDY3LCAxMjgsIDg0LCAKLSAgICA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCA3MiwgMTI4LCA4NCwgNzMsIDc1LCA2OSwgCi0gICAgODUsIDg0LCAxMjgsIDg0LCA3MywgNzUsIDY5LCA4NSwgMjEyLCA4NCwgNzMsIDczLCAxMjgsIDg0LCA3MywgNzEsIDcyLCAKLSAgICA4NCwgNzYsIDg5LCA0NSwgNjcsIDc2LCA3OSwgODMsIDY5LCAxOTYsIDg0LCA3MywgNzEsIDcyLCAyMTIsIDg0LCA3MywgNzEsIAotICAgIDY5LCA4MiwgMTI4LCA4NCwgNzMsIDcxLCA2OSwgMjEwLCA4NCwgNzMsIDcwLCA3MywgNzgsIDY1LCA3MSwgMjAwLCA4NCwgCi0gICAgNzMsIDY5LCA4OCwgMTI4LCA4NCwgNzMsIDY5LCA4MCwgMTI4LCA4NCwgNzMsIDE5NywgODQsIDczLCA2NywgNzUsIDY5LCAKLSAgICA4NCwgMTI4LCA4NCwgNzMsIDY3LCA3NSwgMTI4LCA4NCwgNzMsIDY3LCAyMDMsIDg0LCA3MywgNjUsIDgyLCA2NSwgMTI4LCAKLSAgICA4NCwgNzIsIDkwLCAxMjgsIDg0LCA3MiwgODksIDc5LCA3OSwgMjA1LCA4NCwgNzIsIDg3LCA3OSwgNzksIDEyOCwgODQsIAotICAgIDcyLCA4NywgNzksIDEyOCwgODQsIDcyLCA4NywgNzMsIDczLCAxMjgsIDg0LCA3MiwgODcsIDczLCAxMjgsIDg0LCA3MiwgCi0gICAgODcsIDY5LCA2OSwgMTI4LCA4NCwgNzIsIDg3LCA2NSwgNjUsIDEyOCwgODQsIDcyLCA4NywgNjUsIDEyOCwgODQsIDcyLCAKLSAgICA4NSwgODIsIDIxMSwgODQsIDcyLCA4NSwgODIsIDczLCA4MywgNjUsIDIxOCwgODQsIDcyLCA4NSwgNzgsIDcxLCAxMjgsIAotICAgIDg0LCA3MiwgODUsIDc4LCA2OCwgNjksIDgyLCA4MywgODQsIDc5LCA4MiwgNzcsIDEyOCwgODQsIDcyLCA4NSwgNzgsIDY4LCAKLSAgICA2OSwgODIsIDEyOCwgODQsIDcyLCA4NSwgNzgsIDY4LCA2OSwgMjEwLCA4NCwgNzIsIDg1LCA3NywgNjYsIDIxMSwgODQsIAotICAgIDcyLCA4MiwgNzksIDg3LCA3MywgNzgsIDE5OSwgODQsIDcyLCA4MiwgNzksIDg1LCA3MSwgNzIsIDEyOCwgODQsIDcyLCA4MiwgCi0gICAgNzksIDg1LCA3MSwgMjAwLCA4NCwgNzIsIDgyLCA2OSwgNjksIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDg0LCAKLSAgICA3MiwgODIsIDY5LCA2OSwgNDUsIDgwLCA2OSwgODIsIDQ1LCA2OSwgMjA1LCA4NCwgNzIsIDgyLCA2OSwgNjksIDQ1LCA3NiwgCi0gICAgNzMsIDc4LCAxOTcsIDg0LCA3MiwgODIsIDY5LCA2OSwgNDUsIDE5NiwgODQsIDcyLCA4MiwgNjksIDY1LCA2OCwgMTI4LCAKLSAgICA4NCwgNzIsIDc5LCA4NSwgODMsIDY1LCA3OCwgNjgsIDIxMSwgODQsIDcyLCA3OSwgODUsIDgzLCA2NSwgNzgsIDY4LCAxMjgsIAotICAgIDg0LCA3MiwgNzksIDg1LCA4MywgNjUsIDc4LCAxOTYsIDg0LCA3MiwgNzksIDg1LCA3MSwgNzIsIDIxMiwgODQsIDcyLCA3OSwgCi0gICAgODUsIDEyOCwgODQsIDcyLCA3OSwgODIsIDc4LCAxMjgsIDg0LCA3MiwgNzksIDgyLCAyMDYsIDg0LCA3MiwgNzksIDc4LCAKLSAgICA3MSwgMTI4LCA4NCwgNzIsIDc5LCA2NSwgMTI4LCA4NCwgNzIsIDIwNywgODQsIDcyLCA3MywgODUsIDg0LCA3MiwgMTI4LCAKLSAgICA4NCwgNzIsIDczLCA4NCwgNjUsIDEyOCwgODQsIDcyLCA3MywgODIsIDg0LCA4OSwgNDUsIDgzLCA2OSwgNjcsIDc5LCA3OCwgCi0gICAgMTk2LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCA0NSwgNzksIDc4LCA2OSwgMTI4LCA4NCwgNzIsIDczLCA4MiwgODQsIAotICAgIDIxNywgODQsIDcyLCA3MywgODIsIDg0LCA2OSwgNjksIDc4LCAxMjgsIDg0LCA3MiwgNzMsIDgyLCA4NCwgNjksIDY5LCAKKyAgICAxMjgsIDg0LCA3OSwgNzgsIDc5LCA4MywgMTI4LCA4NCwgNzksIDc4LCA3MSwgODUsIDY5LCAxMjgsIDg0LCA3OSwgNzgsIAorICAgIDcxLCA4NSwgMTk3LCA4NCwgNzksIDc4LCA3MSwgMTI4LCA4NCwgNzksIDc4LCA2OSwgNDUsIDU0LCAxMjgsIDg0LCA3OSwgCisgICAgNzgsIDY5LCA0NSwgNTMsIDEyOCwgODQsIDc5LCA3OCwgNjksIDQ1LCA1MiwgMTI4LCA4NCwgNzksIDc4LCA2OSwgNDUsIDUxLCAKKyAgICAxMjgsIDg0LCA3OSwgNzgsIDY5LCA0NSwgNTAsIDEyOCwgODQsIDc5LCA3OCwgNjksIDQ1LCA0OSwgMTI4LCA4NCwgNzksIAorICAgIDc4LCA2OSwgMTI4LCA4NCwgNzksIDc4LCA2NSwgMjA0LCA4NCwgNzksIDc3LCA4MCwgNzMsIDEyOCwgODQsIDc5LCA3NywgCisgICAgNjUsIDg0LCA3OSwgMTI4LCA4NCwgNzksIDc2LCA3OSwgNzgsIDcxLCAxMjgsIDg0LCA3OSwgNzUsIDg5LCAyMDcsIDg0LCAKKyAgICA3OSwgNzMsIDc2LCA2OSwgODQsIDEyOCwgODQsIDc5LCA3MSwgNjksIDg0LCA3MiwgNjksIDgyLCAxMjgsIDg0LCA3OSwgNjgsIAorICAgIDIwNywgODQsIDc5LCA2NSwgNzgsIDY4LCA2NSwgNzUsIDcyLCA3MywgNjUsIDg0LCAxMjgsIDg0LCA3OSwgNjUsIDEyOCwgCisgICAgODQsIDc4LCAxMjgsIDg0LCA3NiwgODYsIDEyOCwgODQsIDc2LCA4NSwgMTI4LCA4NCwgNzYsIDc5LCAxMjgsIDg0LCA3NiwgCisgICAgNzMsIDEyOCwgODQsIDc2LCA3MiwgODcsIDY5LCAxMjgsIDg0LCA3NiwgNzIsIDg1LCAxMjgsIDg0LCA3NiwgNzIsIDc5LCAKKyAgICA3OSwgMTI4LCA4NCwgNzYsIDcyLCA3OSwgMTI4LCA4NCwgNzYsIDcyLCA3MywgMTI4LCA4NCwgNzYsIDcyLCA2OSwgNjksIAorICAgIDEyOCwgODQsIDc2LCA3MiwgNjksIDEyOCwgODQsIDc2LCA3MiwgNjUsIDEyOCwgODQsIDc2LCA2OSwgNjksIDEyOCwgODQsIAorICAgIDc2LCA2NSwgMTI4LCA4NCwgNzQsIDY5LCAxMjgsIDg0LCA3MywgODgsIDEyOCwgODQsIDczLCA4NywgNzgsIDEyOCwgODQsIAorICAgIDczLCA4NywgNjUsIDIxOCwgODQsIDczLCA4NCwgODUsIDY1LCA2OSwgODAsIDEyOCwgODQsIDczLCA4NCwgNzYsIDc5LCAKKyAgICAxMjgsIDg0LCA3MywgODQsIDE5MywgODQsIDczLCA4NCwgMTI4LCA4NCwgNzMsIDgyLCA4OSwgNjUsIDc1LCAxMjgsIDg0LCAKKyAgICA3MywgODIsIDg0LCAxOTMsIDg0LCA3MywgODIsIDc5LCA3OCwgNzMsIDY1LCAyMDYsIDg0LCA3MywgODIsIDY5LCAxOTYsIAorICAgIDg0LCA3MywgODIsIDEyOCwgODQsIDczLCAyMTAsIDg0LCA3MywgODAsIDgwLCA3MywgMTI4LCA4NCwgNzMsIDgwLCA2OSwgCisgICAgNzIsIDY1LCAxMjgsIDg0LCA3MywgODAsIDEyOCwgODQsIDczLCAyMDgsIDg0LCA3MywgNzgsIDg5LCAxMjgsIDg0LCA3MywgCisgICAgNzgsIDIxNywgODQsIDczLCA3OCwgNzgsIDY5LCAxMjgsIDg0LCA3MywgNzgsIDY3LCA4NCwgODUsIDgyLCA2OSwgMTI4LCAKKyAgICA4NCwgNzMsIDc4LCA2NSwgNzEsIDc3LCA2NSwgMTI4LCA4NCwgNzMsIDc3LCA2OSwgODMsIDEyOCwgODQsIDczLCA3NywgNjksIAorICAgIDIxMCwgODQsIDczLCA3NywgNjksIDEyOCwgODQsIDczLCA3NiwgNjgsIDE5NywgODQsIDczLCA3NiwgMTI4LCA4NCwgNzMsIAorICAgIDIwNCwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDg0LCA3MiwgNzMsIDY5LCA4NSwgODQsIDcyLCAxMjgsIDg0LCA3MywgCisgICAgNzUsIDY5LCA4NSwgODQsIDQ1LCA4MywgNzMsIDc5LCA4MywgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgODQsIAorICAgIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDgzLCA3MywgNzksIDgzLCAxMjgsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCAKKyAgICA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgCisgICAgMTI4LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgNzcsIDczLCA2OSwgODUsIDc3LCAxMjgsIDg0LCA3MywgNzUsIDY5LCAKKyAgICA4NSwgODQsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCA2NywgCisgICAgNzMsIDY5LCA4NSwgNjcsIDEyOCwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDY3LCA3MiwgNzMsIDY5LCA4NSwgNjcsIAorICAgIDcyLCAxMjgsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgODQsIDczLCA3NSwgNjksIDg1LCAyMTIsIDg0LCA3MywgCisgICAgNzEsIDcyLCA4NCwgNzYsIDg5LCA0NSwgNjcsIDc2LCA3OSwgODMsIDY5LCAxOTYsIDg0LCA3MywgNzEsIDcyLCAyMTIsIDg0LCAKKyAgICA3MywgNzEsIDY5LCA4MiwgMTI4LCA4NCwgNzMsIDcxLCA2OSwgMjEwLCA4NCwgNzMsIDcwLCA3MywgNzgsIDY1LCA3MSwgCisgICAgMjAwLCA4NCwgNzMsIDY5LCA4OCwgMTI4LCA4NCwgNzMsIDY5LCA4MCwgMTI4LCA4NCwgNzMsIDE5NywgODQsIDczLCA2NywgCisgICAgNzUsIDY5LCA4NCwgMTI4LCA4NCwgNzMsIDY3LCA3NSwgMTI4LCA4NCwgNzMsIDY3LCAyMDMsIDg0LCA3MywgNjUsIDgyLCAKKyAgICA2NSwgMTI4LCA4NCwgNzIsIDkwLCAxMjgsIDg0LCA3MiwgODksIDc5LCA3OSwgMjA1LCA4NCwgNzIsIDg3LCA3OSwgNzksIAorICAgIDEyOCwgODQsIDcyLCA4NywgNzksIDEyOCwgODQsIDcyLCA4NywgNzMsIDczLCAxMjgsIDg0LCA3MiwgODcsIDczLCAxMjgsIAorICAgIDg0LCA3MiwgODcsIDY5LCA2OSwgMTI4LCA4NCwgNzIsIDg3LCA2NSwgNjUsIDEyOCwgODQsIDcyLCA4NywgNjUsIDEyOCwgCisgICAgODQsIDcyLCA4NSwgODIsIDIxMSwgODQsIDcyLCA4NSwgODIsIDczLCA4MywgNjUsIDIxOCwgODQsIDcyLCA4NSwgNzgsIDcxLCAKKyAgICAxMjgsIDg0LCA3MiwgODUsIDc4LCA2OCwgNjksIDgyLCA4MywgODQsIDc5LCA4MiwgNzcsIDEyOCwgODQsIDcyLCA4NSwgNzgsIAorICAgIDY4LCA2OSwgODIsIDEyOCwgODQsIDcyLCA4NSwgNzgsIDY4LCA2OSwgMjEwLCA4NCwgNzIsIDg1LCA3NywgNjYsIDIxMSwgCisgICAgODQsIDcyLCA4MiwgNzksIDg3LCA3MywgNzgsIDE5OSwgODQsIDcyLCA4MiwgNzksIDg1LCA3MSwgNzIsIDEyOCwgODQsIDcyLCAKKyAgICA4MiwgNzksIDg1LCA3MSwgMjAwLCA4NCwgNzIsIDgyLCA2OSwgNjksIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIAorICAgIDg0LCA3MiwgODIsIDY5LCA2OSwgNDUsIDgwLCA2OSwgODIsIDQ1LCA2OSwgMjA1LCA4NCwgNzIsIDgyLCA2OSwgNjksIDQ1LCAKKyAgICA3NiwgNzMsIDc4LCAxOTcsIDg0LCA3MiwgODIsIDY5LCA2OSwgNDUsIDE5NiwgODQsIDcyLCA4MiwgNjksIDY1LCA2OCwgCisgICAgMTI4LCA4NCwgNzIsIDc5LCA4NSwgODMsIDY1LCA3OCwgNjgsIDIxMSwgODQsIDcyLCA3OSwgODUsIDgzLCA2NSwgNzgsIDY4LCAKKyAgICAxMjgsIDg0LCA3MiwgNzksIDg1LCA4MywgNjUsIDc4LCAxOTYsIDg0LCA3MiwgNzksIDg1LCA3MSwgNzIsIDIxMiwgODQsIAorICAgIDcyLCA3OSwgODUsIDEyOCwgODQsIDcyLCA3OSwgODIsIDc4LCAxMjgsIDg0LCA3MiwgNzksIDgyLCAyMDYsIDg0LCA3MiwgCisgICAgNzksIDc4LCA3MSwgMTI4LCA4NCwgNzIsIDc5LCA2NSwgMTI4LCA4NCwgNzIsIDIwNywgODQsIDcyLCA3MywgODUsIDg0LCAKKyAgICA3MiwgMTI4LCA4NCwgNzIsIDczLCA4NCwgNjUsIDEyOCwgODQsIDcyLCA3MywgODIsIDg0LCA4OSwgNDUsIDgzLCA2OSwgNjcsIAorICAgIDc5LCA3OCwgMTk2LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCA0NSwgNzksIDc4LCA2OSwgMTI4LCA4NCwgNzIsIDczLCA4MiwgCisgICAgODQsIDIxNywgODQsIDcyLCA3MywgODIsIDg0LCA2OSwgNjksIDc4LCAxMjgsIDg0LCA3MiwgNzMsIDgyLCA4NCwgNjksIDY5LCAKICAgICAyMDYsIDg0LCA3MiwgNzMsIDgyLCA2OCwgODMsIDEyOCwgODQsIDcyLCA3MywgODIsIDY4LCAyMTEsIDg0LCA3MiwgNzMsIAogICAgIDgyLCA2OCwgMTI4LCA4NCwgNzIsIDczLCA4MiwgMTk2LCA4NCwgNzIsIDczLCAyMDYsIDg0LCA3MiwgNzMsIDczLCAxMjgsIAogICAgIDg0LCA3MiwgNzMsIDcxLCA3MiwgMTI4LCA4NCwgNzIsIDczLCA2OSwgODUsIDg0LCAyMDAsIDg0LCA3MiwgNjksIDg5LCAKQEAgLTU4Nyw4MyArNTkwLDgzIEBACiAgICAgODQsIDY1LCA4OCwgNzMsIDEyOCwgODQsIDY1LCA4OCwgMTI4LCA4NCwgNjUsIDg3LCA2OSwgNzYsIDc2LCA2OSwgNzcsIDY5LCAKICAgICAyMTIsIDg0LCA2NSwgODcsIDY1LCAxMjgsIDg0LCA2NSwgODcsIDEyOCwgODQsIDY1LCA4NiwgNzMsIDg5LCA2NSwgNzgsIAogICAgIDczLCAxMjgsIDg0LCA2NSwgODYsIDEyOCwgODQsIDY1LCAyMTQsIDg0LCA2NSwgODUsIDgyLCA4NSwgODMsIDEyOCwgODQsIAotICAgIDY1LCA4NSwgMTI4LCA4NCwgNjUsIDIxMywgODQsIDY1LCA4NCwgODcsIDY5LCA2OSwgNzYsIDEyOCwgODQsIDY1LCA4NCwgCi0gICAgODcsIDY5LCA2OSwgMjA0LCA4NCwgNjUsIDg0LCA4NCwgNzksIDc5LCA2OSwgMTk2LCA4NCwgNjUsIDg0LCAxMjgsIDg0LCAKLSAgICA2NSwgODIsIDg1LCA3OCwgNzEsIDEyOCwgODQsIDY1LCA4MiwgODQsIDY1LCA4MiwgNDUsIDUwLCAxMjgsIDg0LCA2NSwgODIsIAotICAgIDg0LCA2NSwgODIsIDEyOCwgODQsIDY1LCA4MSwgMTI4LCA4NCwgNjUsIDgwLCA2OSwgODIsIDEyOCwgODQsIDY1LCA4MCwgCi0gICAgMTk3LCA4NCwgNjUsIDgwLCAxMjgsIDg0LCA2NSwgNzksIDEyOCwgODQsIDY1LCA3OCwgNzgsIDY5LCAxOTYsIDg0LCA2NSwgCi0gICAgNzgsIDcxLCA2OSwgODIsIDczLCA3OCwgNjksIDEyOCwgODQsIDY1LCA3OCwgMTk5LCA4NCwgNjUsIDc4LCA2NSwgNjYsIDY1LCAKLSAgICA4NCwgMTkzLCA4NCwgNjUsIDc4LCAxMjgsIDg0LCA2NSwgNzcsIDczLCA3OCwgNzEsIDEyOCwgODQsIDY1LCA3NywgMTI4LCAKLSAgICA4NCwgNjUsIDc2LCA3NiwgMTI4LCA4NCwgNjUsIDc2LCAyMDQsIDg0LCA2NSwgNzYsIDczLCA3OCwgNzEsIDEyOCwgODQsIAotICAgIDY1LCA3NiwgNzMsIDc4LCAxOTksIDg0LCA2NSwgNzYsIDY5LCA3OCwgODQsIDgzLCAxMjgsIDg0LCA2NSwgNzYsIDY5LCA3OCwgCi0gICAgMjEyLCA4NCwgNjUsIDc1LCA3MiwgNjUsIDc2LCA3NiwgODUsIDgzLCAxMjgsIDg0LCA2NSwgNzUsIDY5LCAxMjgsIDg0LCAKLSAgICA2NSwgNzUsIDUyLCAxMjgsIDg0LCA2NSwgNzUsIDEyOCwgODQsIDY1LCA3MywgODMsIDg5LCA3OSwgODUsIDEyOCwgODQsIAotICAgIDY1LCA3MywgNzYsIDc2LCA2OSwgODMsIDIxMSwgODQsIDY1LCA3MywgNzYsIDEyOCwgODQsIDY1LCA3MywgMjA0LCA4NCwgCi0gICAgNjUsIDcyLCAxMjgsIDg0LCA2NSwgMjAwLCA4NCwgNjUsIDcxLCA2NiwgNjUsIDc4LCA4NywgMTkzLCA4NCwgNjUsIDcxLCAKLSAgICA2NSwgNzYsIDc5LCAxOTksIDg0LCA2NSwgNzEsIDEyOCwgODQsIDY1LCA2OSwgMjA2LCA4NCwgNjUsIDY3LCA3NSwgMTI4LCAKLSAgICA4NCwgNjUsIDY3LCAyMDMsIDg0LCA2NSwgNjYsIDg1LCA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDg0LCA2NSwgNjYsIAotICAgIDgzLCAxMjgsIDg0LCA2NSwgNjYsIDc2LCA2OSwgMTI4LCA4NCwgNjUsIDY2LCAxMjgsIDg0LCA2NSwgMTk0LCA4NCwgNjUsIAotICAgIDY1LCA4MywgNzIsIDY1LCA2OSwgMTI4LCA4NCwgNjUsIDY1LCA4MSwgMTI4LCA4NCwgNjUsIDY1LCA3NywgMTI4LCA4NCwgCi0gICAgNjUsIDY1LCA3NiwgODUsIDc0LCAxOTMsIDg0LCA2NSwgNjUsIDczLCAxMjgsIDg0LCA2NSwgNjUsIDcwLCAxMjgsIDg0LCAKLSAgICA2NSwgNTAsIDEyOCwgODQsIDY1LCA0NSwgODIsIDc5LCA3NiwgMTI4LCA4NCwgNDgsIDUxLCA1NCwgMTI4LCA4NCwgNDgsIAotICAgIDUxLCA1MywgMTI4LCA4NCwgNDgsIDUxLCA1MiwgMTI4LCA4NCwgNDgsIDUxLCA1MSwgNjUsIDEyOCwgODQsIDQ4LCA1MSwgCi0gICAgNTEsIDEyOCwgODQsIDQ4LCA1MSwgNTAsIDY1LCAxMjgsIDg0LCA0OCwgNTEsIDUwLCAxMjgsIDg0LCA0OCwgNTEsIDQ5LCAKLSAgICAxMjgsIDg0LCA0OCwgNTEsIDQ4LCAxMjgsIDg0LCA0OCwgNTAsIDU3LCAxMjgsIDg0LCA0OCwgNTAsIDU2LCAxMjgsIDg0LCAKLSAgICA0OCwgNTAsIDU1LCAxMjgsIDg0LCA0OCwgNTAsIDU0LCAxMjgsIDg0LCA0OCwgNTAsIDUzLCAxMjgsIDg0LCA0OCwgNTAsIAotICAgIDUyLCAxMjgsIDg0LCA0OCwgNTAsIDUxLCAxMjgsIDg0LCA0OCwgNTAsIDUwLCAxMjgsIDg0LCA0OCwgNTAsIDQ5LCAxMjgsIAotICAgIDg0LCA0OCwgNTAsIDQ4LCAxMjgsIDg0LCA0OCwgNDksIDU3LCAxMjgsIDg0LCA0OCwgNDksIDU2LCAxMjgsIDg0LCA0OCwgCi0gICAgNDksIDU1LCAxMjgsIDg0LCA0OCwgNDksIDU0LCA2NSwgMTI4LCA4NCwgNDgsIDQ5LCA1NCwgMTI4LCA4NCwgNDgsIDQ5LCAKLSAgICA1MywgMTI4LCA4NCwgNDgsIDQ5LCA1MiwgMTI4LCA4NCwgNDgsIDQ5LCA1MSwgMTI4LCA4NCwgNDgsIDQ5LCA1MCwgMTI4LCAKLSAgICA4NCwgNDgsIDQ5LCA0OSwgNjUsIDEyOCwgODQsIDQ4LCA0OSwgNDksIDEyOCwgODQsIDQ4LCA0OSwgNDgsIDEyOCwgODQsIAotICAgIDQ4LCA0OCwgNTcsIDY1LCAxMjgsIDg0LCA0OCwgNDgsIDU3LCAxMjgsIDg0LCA0OCwgNDgsIDU2LCA2NSwgMTI4LCA4NCwgCi0gICAgNDgsIDQ4LCA1NiwgMTI4LCA4NCwgNDgsIDQ4LCA1NSwgNjUsIDEyOCwgODQsIDQ4LCA0OCwgNTUsIDEyOCwgODQsIDQ4LCAKLSAgICA0OCwgNTQsIDEyOCwgODQsIDQ4LCA0OCwgNTMsIDEyOCwgODQsIDQ4LCA0OCwgNTIsIDEyOCwgODQsIDQ4LCA0OCwgNTEsIAotICAgIDY1LCAxMjgsIDg0LCA0OCwgNDgsIDUxLCAxMjgsIDg0LCA0OCwgNDgsIDUwLCAxMjgsIDg0LCA0OCwgNDgsIDQ5LCAxMjgsIAotICAgIDg0LCA0NSwgODMsIDcyLCA3MywgODIsIDg0LCAxMjgsIDgzLCA5MCwgOTAsIDEyOCwgODMsIDkwLCA4NywgNzEsIDEyOCwgCi0gICAgODMsIDkwLCA4NywgNjUsIDEyOCwgODMsIDkwLCA4NSwgMTI4LCA4MywgOTAsIDc5LCAxMjgsIDgzLCA5MCwgNzMsIDEyOCwgCi0gICAgODMsIDkwLCA2OSwgNjksIDEyOCwgODMsIDkwLCA2OSwgMTI4LCA4MywgOTAsIDY1LCA2NSwgMTI4LCA4MywgOTAsIDY1LCAKLSAgICAxMjgsIDgzLCA5MCwgMTI4LCA4MywgODksIDg4LCAxMjgsIDgzLCA4OSwgODQsIDEyOCwgODMsIDg5LCA4MiwgODgsIDEyOCwgCi0gICAgODMsIDg5LCA4MiwgNzcsIDY1LCA4NCwgNzMsIDc1LCA3MywgMTI4LCA4MywgODksIDgyLCA3NywgNjUsIDEyOCwgODMsIDg5LCAKLSAgICA4MiwgNzMsIDc4LCA3MSwgNjksIDEyOCwgODMsIDg5LCA4MiwgMTI4LCA4MywgODksIDgwLCAxMjgsIDgzLCA4OSwgNzksIAotICAgIDg1LCA4NywgNjUsIDEyOCwgODMsIDg5LCA3OCwgNjksIDg2LCA3NywgNjUsIDEyOCwgODMsIDg5LCA3OCwgNjgsIDY5LCA4MywgCi0gICAgNzcsIDc5LCAyMTEsIDgzLCA4OSwgNzgsIDY3LCA3MiwgODIsIDc5LCA3OCwgNzksIDg1LCAyMTEsIDgzLCA4OSwgNzgsIDY1LCAKLSAgICA3MSwgNzcsIDE5MywgODMsIDg5LCA3OCwgNjUsIDcwLCA3MywgMTI4LCA4MywgODksIDc3LCA3NywgNjksIDg0LCA4MiwgODksIAotICAgIDEyOCwgODMsIDg5LCA3NywgNzcsIDY5LCA4NCwgODIsIDczLCAxOTUsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDgzLCAKLSAgICAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1NywgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTYsIAotICAgIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDU1LCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1NCwgCi0gICAgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTMsIDUyLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCAKLSAgICA1MywgNTEsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUzLCA1MCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIAotICAgIDc2LCA0NSwgNTMsIDQ5LCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MywgNDgsIDEyOCwgODMsIDg5LCA3NywgCi0gICAgNjYsIDc5LCA3NiwgNDUsIDUzLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MiwgNTcsIDEyOCwgODMsIDg5LCAKLSAgICA3NywgNjYsIDc5LCA3NiwgNDUsIDUyLCA1NiwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTIsIDU1LCAxMjgsIAotICAgIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MiwgNTMsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUyLCAKLSAgICA1MSwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTIsIDUwLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIAotICAgIDQ1LCA1MiwgNDgsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUyLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgCi0gICAgNzYsIDQ1LCA1MSwgNTcsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUxLCA1NiwgMTI4LCA4MywgODksIDc3LCAKLSAgICA2NiwgNzksIDc2LCA0NSwgNTEsIDU1LCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MSwgNTQsIDEyOCwgODMsIAotICAgIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUxLCA1MCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTEsIDQ4LCAKLSAgICAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MSwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTAsIAotICAgIDU3LCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MCwgNTUsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgCi0gICAgNDUsIDUwLCA1NCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTAsIDUzLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCAKLSAgICA3OSwgNzYsIDQ1LCA1MCwgNTIsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUwLCA1MSwgMTI4LCA4MywgODksIAotICAgIDc3LCA2NiwgNzksIDc2LCA0NSwgNTAsIDUwLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MCwgNDksIDEyOCwgCi0gICAgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUwLCA0OCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTAsIAotICAgIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDQ5LCA1NywgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgCi0gICAgNDksIDU2LCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA0OSwgNTUsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCAKLSAgICA3NiwgNDUsIDQ5LCA1NCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNDksIDUzLCAxMjgsIDgzLCA4OSwgNzcsIAotICAgIDY2LCA3OSwgNzYsIDQ1LCA0OSwgNTIsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDQ5LCA1MSwgMTI4LCA4MywgCi0gICAgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNDksIDUwLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA0OSwgNDksIAotICAgIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDQ5LCA0OCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgCi0gICAgNDksIDEyOCwgODMsIDg5LCA3NiwgNzksIDg0LCAyMDEsIDgzLCA4OSwgNjUsIDEyOCwgODMsIDg5LCAxMjgsIDgzLCA4NywgCi0gICAgOTAsIDEyOCwgODMsIDg3LCA4NSwgNzgsIDE5OSwgODMsIDg3LCA3OSwgODIsIDY4LCA4MywgMTI4LCA4MywgODcsIDc5LCAKLSAgICA4MiwgNjgsIDEyOCwgODMsIDg3LCA3OSwgNzksIDEyOCwgODMsIDg3LCA3OSwgMTI4LCA4MywgODcsIDczLCA4MiwgMjA0LCAKLSAgICA4MywgODcsIDczLCA3NywgNzcsIDczLCA3OCwgNzEsIDEyOCwgODMsIDg3LCA3MywgNzcsIDc3LCA2OSwgODIsIDEyOCwgODMsIAotICAgIDg3LCA3MywgNzMsIDEyOCwgODMsIDg3LCA3MywgMTI4LCA4MywgODcsIDcxLCAxMjgsIDgzLCA4NywgNjksIDY5LCA4NCwgCi0gICAgMTI4LCA4MywgODcsIDY5LCA2OSwgMjEyLCA4MywgODcsIDY5LCA2NSwgODQsIDEyOCwgODMsIDg3LCA2OSwgNjUsIDIxMiwgCi0gICAgODMsIDg3LCA2NSwgODMsIDIwMCwgODMsIDg3LCA2NSwgODAsIDgwLCA3MywgNzgsIDcxLCAxMjgsIDgzLCA4NywgNjUsIDY1LCAKLSAgICAxMjgsIDgzLCA4NywgMTI4LCA4MywgODYsIDY1LCA4MywgODQsIDIwMSwgODMsIDg2LCA2NSwgODIsIDczLCA4NCwgNjUsIAotICAgIDEyOCwgODMsIDg2LCA2NSwgODIsIDczLCA4NCwgMTkzLCA4MywgODUsIDg4LCAxMjgsIDgzLCA4NSwgODUsIDEyOCwgODMsIAotICAgIDg1LCA4NCwgMTI4LCA4MywgODUsIDgzLCA4MCwgNjksIDc4LCA4MywgNzMsIDc5LCAyMDYsIDgzLCA4NSwgODMsIDcyLCA3MywgCisgICAgNjUsIDIxMywgODQsIDY1LCA4NCwgODcsIDY5LCA2OSwgNzYsIDEyOCwgODQsIDY1LCA4NCwgODcsIDY5LCA2OSwgMjA0LCAKKyAgICA4NCwgNjUsIDg0LCA4NCwgNzksIDc5LCA2OSwgMTk2LCA4NCwgNjUsIDg0LCAxMjgsIDg0LCA2NSwgODIsIDg1LCA3OCwgNzEsIAorICAgIDEyOCwgODQsIDY1LCA4MiwgODQsIDY1LCA4MiwgNDUsIDUwLCAxMjgsIDg0LCA2NSwgODIsIDg0LCA2NSwgODIsIDEyOCwgCisgICAgODQsIDY1LCA4MSwgMTI4LCA4NCwgNjUsIDgwLCA2OSwgODIsIDEyOCwgODQsIDY1LCA4MCwgMTk3LCA4NCwgNjUsIDgwLCAKKyAgICAxMjgsIDg0LCA2NSwgNzksIDEyOCwgODQsIDY1LCA3OCwgNzgsIDY5LCAxOTYsIDg0LCA2NSwgNzgsIDcxLCA2OSwgODIsIAorICAgIDczLCA3OCwgNjksIDEyOCwgODQsIDY1LCA3OCwgMTk5LCA4NCwgNjUsIDc4LCA2NSwgNjYsIDY1LCA4NCwgMTkzLCA4NCwgCisgICAgNjUsIDc4LCAxMjgsIDg0LCA2NSwgNzcsIDczLCA3OCwgNzEsIDEyOCwgODQsIDY1LCA3NywgMTI4LCA4NCwgNjUsIDc2LCAKKyAgICA3NiwgMTI4LCA4NCwgNjUsIDc2LCAyMDQsIDg0LCA2NSwgNzYsIDczLCA3OCwgNzEsIDEyOCwgODQsIDY1LCA3NiwgNzMsIAorICAgIDc4LCAxOTksIDg0LCA2NSwgNzYsIDY5LCA3OCwgODQsIDgzLCAxMjgsIDg0LCA2NSwgNzYsIDY5LCA3OCwgMjEyLCA4NCwgCisgICAgNjUsIDc1LCA3MiwgNjUsIDc2LCA3NiwgODUsIDgzLCAxMjgsIDg0LCA2NSwgNzUsIDY5LCAxMjgsIDg0LCA2NSwgNzUsIDUyLCAKKyAgICAxMjgsIDg0LCA2NSwgNzUsIDEyOCwgODQsIDY1LCA3MywgODMsIDg5LCA3OSwgODUsIDEyOCwgODQsIDY1LCA3MywgNzYsIAorICAgIDc2LCA2OSwgODMsIDIxMSwgODQsIDY1LCA3MywgNzYsIDEyOCwgODQsIDY1LCA3MywgMjA0LCA4NCwgNjUsIDcyLCAxMjgsIAorICAgIDg0LCA2NSwgMjAwLCA4NCwgNjUsIDcxLCA2NiwgNjUsIDc4LCA4NywgMTkzLCA4NCwgNjUsIDcxLCA2NSwgNzYsIDc5LCAKKyAgICAxOTksIDg0LCA2NSwgNzEsIDEyOCwgODQsIDY1LCA2OSwgMjA2LCA4NCwgNjUsIDY3LCA3NSwgMTI4LCA4NCwgNjUsIDY3LCAKKyAgICAyMDMsIDg0LCA2NSwgNjYsIDg1LCA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDg0LCA2NSwgNjYsIDgzLCAxMjgsIAorICAgIDg0LCA2NSwgNjYsIDc2LCA2OSwgMTI4LCA4NCwgNjUsIDY2LCAxMjgsIDg0LCA2NSwgMTk0LCA4NCwgNjUsIDY1LCA4MywgCisgICAgNzIsIDY1LCA2OSwgMTI4LCA4NCwgNjUsIDY1LCA4MSwgMTI4LCA4NCwgNjUsIDY1LCA3NywgMTI4LCA4NCwgNjUsIDY1LCAKKyAgICA3NiwgODUsIDc0LCAxOTMsIDg0LCA2NSwgNjUsIDczLCAxMjgsIDg0LCA2NSwgNjUsIDcwLCAxMjgsIDg0LCA2NSwgNTAsIAorICAgIDEyOCwgODQsIDY1LCA0NSwgODIsIDc5LCA3NiwgMTI4LCA4NCwgNDgsIDUxLCA1NCwgMTI4LCA4NCwgNDgsIDUxLCA1MywgCisgICAgMTI4LCA4NCwgNDgsIDUxLCA1MiwgMTI4LCA4NCwgNDgsIDUxLCA1MSwgNjUsIDEyOCwgODQsIDQ4LCA1MSwgNTEsIDEyOCwgCisgICAgODQsIDQ4LCA1MSwgNTAsIDY1LCAxMjgsIDg0LCA0OCwgNTEsIDUwLCAxMjgsIDg0LCA0OCwgNTEsIDQ5LCAxMjgsIDg0LCAKKyAgICA0OCwgNTEsIDQ4LCAxMjgsIDg0LCA0OCwgNTAsIDU3LCAxMjgsIDg0LCA0OCwgNTAsIDU2LCAxMjgsIDg0LCA0OCwgNTAsIAorICAgIDU1LCAxMjgsIDg0LCA0OCwgNTAsIDU0LCAxMjgsIDg0LCA0OCwgNTAsIDUzLCAxMjgsIDg0LCA0OCwgNTAsIDUyLCAxMjgsIAorICAgIDg0LCA0OCwgNTAsIDUxLCAxMjgsIDg0LCA0OCwgNTAsIDUwLCAxMjgsIDg0LCA0OCwgNTAsIDQ5LCAxMjgsIDg0LCA0OCwgCisgICAgNTAsIDQ4LCAxMjgsIDg0LCA0OCwgNDksIDU3LCAxMjgsIDg0LCA0OCwgNDksIDU2LCAxMjgsIDg0LCA0OCwgNDksIDU1LCAKKyAgICAxMjgsIDg0LCA0OCwgNDksIDU0LCA2NSwgMTI4LCA4NCwgNDgsIDQ5LCA1NCwgMTI4LCA4NCwgNDgsIDQ5LCA1MywgMTI4LCAKKyAgICA4NCwgNDgsIDQ5LCA1MiwgMTI4LCA4NCwgNDgsIDQ5LCA1MSwgMTI4LCA4NCwgNDgsIDQ5LCA1MCwgMTI4LCA4NCwgNDgsIAorICAgIDQ5LCA0OSwgNjUsIDEyOCwgODQsIDQ4LCA0OSwgNDksIDEyOCwgODQsIDQ4LCA0OSwgNDgsIDEyOCwgODQsIDQ4LCA0OCwgCisgICAgNTcsIDY1LCAxMjgsIDg0LCA0OCwgNDgsIDU3LCAxMjgsIDg0LCA0OCwgNDgsIDU2LCA2NSwgMTI4LCA4NCwgNDgsIDQ4LCAKKyAgICA1NiwgMTI4LCA4NCwgNDgsIDQ4LCA1NSwgNjUsIDEyOCwgODQsIDQ4LCA0OCwgNTUsIDEyOCwgODQsIDQ4LCA0OCwgNTQsIAorICAgIDEyOCwgODQsIDQ4LCA0OCwgNTMsIDEyOCwgODQsIDQ4LCA0OCwgNTIsIDEyOCwgODQsIDQ4LCA0OCwgNTEsIDY1LCAxMjgsIAorICAgIDg0LCA0OCwgNDgsIDUxLCAxMjgsIDg0LCA0OCwgNDgsIDUwLCAxMjgsIDg0LCA0OCwgNDgsIDQ5LCAxMjgsIDg0LCA0NSwgCisgICAgODMsIDcyLCA3MywgODIsIDg0LCAxMjgsIDgzLCA5MCwgOTAsIDEyOCwgODMsIDkwLCA4NywgNzEsIDEyOCwgODMsIDkwLCAKKyAgICA4NywgNjUsIDEyOCwgODMsIDkwLCA4NSwgMTI4LCA4MywgOTAsIDc5LCAxMjgsIDgzLCA5MCwgNzMsIDEyOCwgODMsIDkwLCAKKyAgICA2OSwgNjksIDEyOCwgODMsIDkwLCA2OSwgMTI4LCA4MywgOTAsIDY1LCA2NSwgMTI4LCA4MywgOTAsIDY1LCAxMjgsIDgzLCAKKyAgICA5MCwgMTI4LCA4MywgODksIDg4LCAxMjgsIDgzLCA4OSwgODQsIDEyOCwgODMsIDg5LCA4MiwgODgsIDEyOCwgODMsIDg5LCAKKyAgICA4MiwgNzcsIDY1LCA4NCwgNzMsIDc1LCA3MywgMTI4LCA4MywgODksIDgyLCA3NywgNjUsIDEyOCwgODMsIDg5LCA4MiwgNzMsIAorICAgIDc4LCA3MSwgNjksIDEyOCwgODMsIDg5LCA4MiwgMTI4LCA4MywgODksIDgwLCAxMjgsIDgzLCA4OSwgNzksIDg1LCA4NywgCisgICAgNjUsIDEyOCwgODMsIDg5LCA3OCwgNjksIDg2LCA3NywgNjUsIDEyOCwgODMsIDg5LCA3OCwgNjgsIDY5LCA4MywgNzcsIDc5LCAKKyAgICAyMTEsIDgzLCA4OSwgNzgsIDY3LCA3MiwgODIsIDc5LCA3OCwgNzksIDg1LCAyMTEsIDgzLCA4OSwgNzgsIDY1LCA3MSwgNzcsIAorICAgIDE5MywgODMsIDg5LCA3OCwgNjUsIDcwLCA3MywgMTI4LCA4MywgODksIDc3LCA3NywgNjksIDg0LCA4MiwgODksIDEyOCwgCisgICAgODMsIDg5LCA3NywgNzcsIDY5LCA4NCwgODIsIDczLCAxOTUsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDgzLCAxMjgsIDgzLCAKKyAgICA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1NywgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTYsIDEyOCwgODMsIAorICAgIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDU1LCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1NCwgMTI4LCA4MywgCisgICAgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTMsIDUyLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MywgNTEsIAorICAgIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUzLCA1MCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgCisgICAgNTMsIDQ5LCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MywgNDgsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCAKKyAgICA3NiwgNDUsIDUzLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MiwgNTcsIDEyOCwgODMsIDg5LCA3NywgNjYsIAorICAgIDc5LCA3NiwgNDUsIDUyLCA1NiwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTIsIDU1LCAxMjgsIDgzLCA4OSwgCisgICAgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MiwgNTMsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUyLCA1MSwgMTI4LCAKKyAgICA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTIsIDUwLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MiwgCisgICAgNDgsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUyLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCAKKyAgICA1MSwgNTcsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUxLCA1NiwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIAorICAgIDc2LCA0NSwgNTEsIDU1LCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MSwgNTQsIDEyOCwgODMsIDg5LCA3NywgCisgICAgNjYsIDc5LCA3NiwgNDUsIDUxLCA1MCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTEsIDQ4LCAxMjgsIDgzLCAKKyAgICA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MSwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTAsIDU3LCAxMjgsIAorICAgIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MCwgNTUsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUwLCAKKyAgICA1NCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTAsIDUzLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIAorICAgIDQ1LCA1MCwgNTIsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDUwLCA1MSwgMTI4LCA4MywgODksIDc3LCA2NiwgCisgICAgNzksIDc2LCA0NSwgNTAsIDUwLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA1MCwgNDksIDEyOCwgODMsIDg5LCAKKyAgICA3NywgNjYsIDc5LCA3NiwgNDUsIDUwLCA0OCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNTAsIDEyOCwgODMsIAorICAgIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDQ5LCA1NywgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNDksIDU2LCAKKyAgICAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA0OSwgNTUsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIAorICAgIDQ5LCA1NCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNDksIDUzLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgCisgICAgNzYsIDQ1LCA0OSwgNTIsIDEyOCwgODMsIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDQ5LCA1MSwgMTI4LCA4MywgODksIDc3LCAKKyAgICA2NiwgNzksIDc2LCA0NSwgNDksIDUwLCAxMjgsIDgzLCA4OSwgNzcsIDY2LCA3OSwgNzYsIDQ1LCA0OSwgNDksIDEyOCwgODMsIAorICAgIDg5LCA3NywgNjYsIDc5LCA3NiwgNDUsIDQ5LCA0OCwgMTI4LCA4MywgODksIDc3LCA2NiwgNzksIDc2LCA0NSwgNDksIDEyOCwgCisgICAgODMsIDg5LCA3NiwgNzksIDg0LCAyMDEsIDgzLCA4OSwgNjUsIDEyOCwgODMsIDg5LCAxMjgsIDgzLCA4NywgOTAsIDEyOCwgCisgICAgODMsIDg3LCA4NSwgNzgsIDE5OSwgODMsIDg3LCA3OSwgODIsIDY4LCA4MywgMTI4LCA4MywgODcsIDc5LCA4MiwgNjgsIAorICAgIDEyOCwgODMsIDg3LCA3OSwgNzksIDEyOCwgODMsIDg3LCA3OSwgMTI4LCA4MywgODcsIDczLCA4MiwgMjA0LCA4MywgODcsIAorICAgIDczLCA3NywgNzcsIDczLCA3OCwgNzEsIDEyOCwgODMsIDg3LCA3MywgNzcsIDc3LCA2OSwgODIsIDEyOCwgODMsIDg3LCA3MywgCisgICAgNzMsIDEyOCwgODMsIDg3LCA3MywgMTI4LCA4MywgODcsIDcxLCAxMjgsIDgzLCA4NywgNjksIDY5LCA4NCwgMTI4LCA4MywgCisgICAgODcsIDY5LCA2OSwgMjEyLCA4MywgODcsIDY5LCA2NSwgODQsIDEyOCwgODMsIDg3LCA2OSwgNjUsIDIxMiwgODMsIDg3LCAKKyAgICA2NSwgODMsIDIwMCwgODMsIDg3LCA2NSwgODAsIDgwLCA3MywgNzgsIDcxLCAxMjgsIDgzLCA4NywgNjUsIDY1LCAxMjgsIAorICAgIDgzLCA4NywgMTI4LCA4MywgODYsIDY1LCA4MywgODQsIDIwMSwgODMsIDg2LCA2NSwgODIsIDczLCA4NCwgNjUsIDEyOCwgCisgICAgODMsIDg2LCA2NSwgODIsIDczLCA4NCwgMTkzLCA4MywgODUsIDg4LCAxMjgsIDgzLCA4NSwgODUsIDEyOCwgODMsIDg1LCAKKyAgICA4NCwgMTI4LCA4MywgODUsIDgzLCA4MCwgNjksIDc4LCA4MywgNzMsIDc5LCAyMDYsIDgzLCA4NSwgODMsIDcyLCA3MywgCiAgICAgMTI4LCA4MywgODUsIDgyLCA4OCwgMTI4LCA4MywgODUsIDgyLCA4MiwgNzksIDg1LCA3OCwgNjgsIDEyOCwgODMsIDg1LCAKICAgICA4MiwgODIsIDc5LCA4NSwgNzgsIDE5NiwgODMsIDg1LCA4MiwgNzAsIDY5LCA4MiwgMTI4LCA4MywgODUsIDgyLCA3MCwgNjUsIAogICAgIDY3LCAxOTcsIDgzLCA4NSwgODIsIDY5LCAxMjgsIDgzLCA4NSwgODIsIDY1LCA3OCwgNzEsIDEyOCwgODMsIDg1LCA4MiwgCkBAIC03MzEsMTYyICs3MzQsMTY0IEBACiAgICAgMTI4LCA4MywgODQsIDY1LCA2NywgNjcsIDY1LCA4NCwgNzMsIDgzLCA4MywgNzMsIDc3LCA3OSwgMTI4LCA4MywgODQsIDUwLCAKICAgICAxMjgsIDgzLCA4MywgODksIDg4LCAxMjgsIDgzLCA4MywgODksIDg0LCAxMjgsIDgzLCA4MywgODksIDgyLCA4OCwgMTI4LCAKICAgICA4MywgODMsIDg5LCA4MiwgMTI4LCA4MywgODMsIDg5LCA4MCwgMTI4LCA4MywgODMsIDg5LCAxMjgsIDgzLCA4MywgODUsIAotICAgIDg4LCAxMjgsIDgzLCA4MywgODUsIDg0LCAxMjgsIDgzLCA4MywgODUsIDgwLCAxMjgsIDgzLCA4MywgNzksIDg4LCAxMjgsIAotICAgIDgzLCA4MywgNzksIDg0LCAxMjgsIDgzLCA4MywgNzksIDgwLCAxMjgsIDgzLCA4MywgNzksIDEyOCwgODMsIDgzLCA3MywgCi0gICAgODgsIDEyOCwgODMsIDgzLCA3MywgODQsIDEyOCwgODMsIDgzLCA3MywgODAsIDEyOCwgODMsIDgzLCA3MywgNjksIDg4LCAKLSAgICAxMjgsIDgzLCA4MywgNzMsIDY5LCA4MCwgMTI4LCA4MywgODMsIDczLCA2OSwgMTI4LCA4MywgODMsIDczLCAxMjgsIDgzLCAKLSAgICA4MywgNzIsIDY5LCAxMjgsIDgzLCA4MywgNjksIDg4LCAxMjgsIDgzLCA4MywgNjksIDgwLCAxMjgsIDgzLCA4MywgNjksIAotICAgIDY5LCAxMjgsIDgzLCA4MywgNjUsIDg4LCAxMjgsIDgzLCA4MywgNjUsIDg0LCAxMjgsIDgzLCA4MywgNjUsIDgwLCAxMjgsIAotICAgIDgzLCA4MywgNjUsIDc4LCA3MSwgODksIDY5LCA3OSwgODIsIDczLCA3OCwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgzLCAKLSAgICA4MywgNjUsIDc4LCA3MSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA4MywgCi0gICAgODMsIDY1LCA3OCwgNzEsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4NCwgNzIsIAotICAgIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCA0NSwgODQsIDczLCAKLSAgICA3NSwgNjksIDg1LCA4NCwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCA0NSwgODAsIDczLCA2OSwgCi0gICAgODUsIDgwLCAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgODMsIDczLCA3OSwgODMsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIAotICAgIDc1LCAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgODMsIDczLCA3OSwgODMsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MiwgCi0gICAgNzMsIDY5LCA4NSwgNzYsIDQ1LCA3NSwgNzIsIDczLCA2OSwgODUsIDc1LCA3MiwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIAotICAgIDgyLCA3MywgNjksIDg1LCA3NiwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA4MywgCi0gICAgODMsIDY1LCA3OCwgNzEsIDc4LCA3MywgNjksIDg1LCA3OCwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDc3LCA3MywgNjksIAotICAgIDg1LCA3NywgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgODMsIDgzLCA2NSwgCi0gICAgNzgsIDcxLCA3MywgNjksIDg1LCA3OCwgNzEsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA3MiwgNzMsIDY5LCA4NSwgNzIsIAotICAgIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA2NywgNzMsIDY5LCA4NSwgNjcsIDQ1LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgCi0gICAgODMsIDgzLCA2NSwgNzgsIDcxLCA2NywgNzMsIDY5LCA4NSwgNjcsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA2NSwgODIsIAotICAgIDY1LCA2OSwgNjUsIDEyOCwgODMsIDgzLCA2NSwgNjUsIDEyOCwgODMsIDgzLCA2NSwgMTI4LCA4MywgODIsIDEyOCwgODMsIAotICAgIDgxLCA4NSwgNzMsIDgzLCAyMDAsIDgzLCA4MSwgODUsIDczLCA4MiwgODIsIDY5LCAyMDQsIDgzLCA4MSwgODUsIDczLCA3MSwgCi0gICAgNzEsIDc2LCAxOTcsIDgzLCA4MSwgODUsIDY1LCAyMTIsIDgzLCA4MSwgODUsIDY1LCA4MiwgNjksIDgzLCAxMjgsIDgzLCAKLSAgICA4MSwgODUsIDY1LCA4MiwgNjksIDY4LCAxMjgsIDgzLCA4MSwgODUsIDY1LCA4MiwgNjksIDEyOCwgODMsIDgwLCA4NywgNjUsIAotICAgIDEyOCwgODMsIDgwLCA4NSwgNzgsIDcxLCAyMTEsIDgzLCA4MCwgODIsIDc5LCA4NSwgODQsIDEyOCwgODMsIDgwLCA4MiwgCi0gICAgNzMsIDc4LCA3MSwgODMsIDEyOCwgODMsIDgwLCA4MiwgNzMsIDc4LCA3MSwgMTI4LCA4MywgODAsIDgyLCA2OSwgNjcsIDcyLCAKLSAgICA3MSwgNjksIDgzLCA2NSwgNzgsIDE5OSwgODMsIDgwLCA3OSwgODUsIDg0LCA3MywgNzgsIDE5OSwgODMsIDgwLCA3OSwgODQsIAotICAgIDEyOCwgODMsIDgwLCA3OSwgNzksIDc4LCAxMjgsIDgzLCA4MCwgNzYsIDczLCA4NCwgODQsIDczLCA3OCwgMTk5LCA4MywgCi0gICAgODAsIDc2LCA2NSwgODMsIDcyLCA3MywgNzgsIDE5OSwgODMsIDgwLCA3MywgODIsIDczLCA4NCwgODUsIDIxMSwgODMsIDgwLCAKLSAgICA3MywgODIsIDczLCA4NCwgMTI4LCA4MywgODAsIDczLCA4MiwgNzMsIDIxMiwgODMsIDgwLCA3MywgODIsIDY1LCA3OCwgODQsIAotICAgIDEyOCwgODMsIDgwLCA3MywgODIsIDY1LCA3NiwgMTI4LCA4MywgODAsIDczLCA4MiwgNjUsIDIwNCwgODMsIDgwLCA3MywgCi0gICAgNjgsIDY5LCA4MiwgMjE3LCA4MywgODAsIDczLCA2NywgNjksIDEyOCwgODMsIDgwLCA3MiwgNjksIDgyLCA3MywgNjcsIDY1LCAKLSAgICAyMDQsIDgzLCA4MCwgNjksIDgzLCA3NywgNzMsIDc2LCAyMDcsIDgzLCA4MCwgNjksIDY5LCA2OCwgNjYsIDc5LCA2NSwgODQsIAotICAgIDEyOCwgODMsIDgwLCA2OSwgNjksIDY3LCA3MiwgMTI4LCA4MywgODAsIDY5LCA2OSwgNjcsIDIwMCwgODMsIDgwLCA2OSwgCi0gICAgNjcsIDczLCA2NSwgNzYsIDEyOCwgODMsIDgwLCA2OSwgNjUsIDgyLCAxMjgsIDgzLCA4MCwgNjksIDY1LCA3NSwgNjksIDgyLCAKLSAgICAxMjgsIDgzLCA4MCwgNjksIDY1LCA3NSwgNjksIDIxMCwgODMsIDgwLCA2OSwgNjUsIDc1LCA0NSwgNzgsIDc5LCA0NSwgNjksIAotICAgIDg2LCA3MywgMjA0LCA4MywgODAsIDY1LCA4NCwgNzIsIDczLCAxMjgsIDgzLCA4MCwgNjUsIDgyLCA3NSwgNzYsIDczLCA3OCwgCi0gICAgMTk5LCA4MywgODAsIDY1LCA4MiwgNzUsIDc2LCA2OSwgODMsIDEyOCwgODMsIDgwLCA2NSwgODIsIDc1LCA3NiwgNjksIDgyLCAKLSAgICAxMjgsIDgzLCA4MCwgNjUsIDgyLCA3NSwgNzYsIDY5LCAxMjgsIDgzLCA4MCwgNjUsIDcxLCA3MiwgNjksIDg0LCA4NCwgNzMsIAotICAgIDEyOCwgODMsIDgwLCA2NSwgNjgsIDY5LCA4MywgMTI4LCA4MywgODAsIDY1LCA2OCwgMTk3LCA4MywgODAsIDY1LCA2NywgCi0gICAgNzMsIDc4LCAxOTksIDgzLCA4MCwgNjUsIDY3LCAxOTcsIDgzLCA4MCwgMTI4LCA4MywgNzksIDg5LCAxMjgsIDgzLCA3OSwgCi0gICAgODcsIDczLCA3NiwgMjA3LCA4MywgNzksIDg3LCAxMjgsIDgzLCA3OSwgODUsIDg0LCA3MiwgNjksIDgyLCAyMDYsIDgzLCAKLSAgICA3OSwgODUsIDg0LCA3MiwgNDUsIDgzLCA3NiwgNjUsIDg2LCA2OSwgMjE3LCA4MywgNzksIDg1LCA4NCwgMjAwLCA4MywgNzksIAotICAgIDg1LCA4MiwgNjcsIDY5LCAxMjgsIDgzLCA3OSwgODUsIDc4LCA2OCwgMTI4LCA4MywgNzksIDg1LCA3OCwgMTk2LCA4MywgCi0gICAgNzksIDg1LCA3OCwgNjUsIDgwLCAxMjgsIDgzLCA3OSwgODUsIDEyOCwgODMsIDc5LCA4MywgMTI4LCA4MywgNzksIDgxLCAKLSAgICAxMjgsIDgzLCA3OSwgNzksIDIwNiwgODMsIDc5LCA3OSwgMTI4LCA4MywgNzksIDc4LCA3NCwgNjUsIDc3LCAxMjgsIDgzLCAKLSAgICA3OSwgNzgsIDcxLCAxMjgsIDgzLCA3OSwgNzgsIDEyOCwgODMsIDc5LCA3NywgMTI4LCA4MywgNzksIDc2LCA3MywgNjgsIAotICAgIDg1LCA4MywgMTI4LCA4MywgNzksIDc2LCA3MywgNjgsIDg1LCAyMTEsIDgzLCA3OSwgNzEsIDY4LCA3MywgNjUsIDIwNiwgCi0gICAgODMsIDc5LCA3MCwgODQsIDg3LCA2NSwgODIsIDY5LCA0NSwgNzAsIDg1LCA3OCwgNjcsIDg0LCA3MywgNzksIDIwNiwgODMsIAotICAgIDc5LCA3MCwgODQsIDc4LCA2OSwgODMsIDgzLCAxMjgsIDgzLCA3OSwgNzAsIDIxMiwgODMsIDc5LCAxOTgsIDgzLCA3OSwgCi0gICAgNjcsIDczLCA2OSwgODQsIDg5LCAxMjgsIDgzLCA3OSwgNjcsIDY3LCA2OSwgMjEwLCA4MywgNzksIDY1LCA4MCwgMTI4LCAKLSAgICA4MywgNzksIDY1LCAxMjgsIDgzLCAyMDcsIDgzLCA3OCwgNzksIDg3LCA3NywgNjUsIDc4LCAxMjgsIDgzLCA3OCwgNzksIAotICAgIDg3LCA3NywgNjUsIDIwNiwgODMsIDc4LCA3OSwgODcsIDcwLCA3NiwgNjUsIDc1LCA2OSwgMTI4LCA4MywgNzgsIDc5LCA4NywgCi0gICAgNjYsIDc5LCA2NSwgODIsIDY4LCA2OSwgODIsIDEyOCwgODMsIDc4LCA3OSwgODcsIDEyOCwgODMsIDc4LCA3OSwgODUsIDg0LCAKLSAgICAxMjgsIDgzLCA3OCwgNzksIDg1LCAyMTIsIDgzLCA3OCwgNjUsIDIwOCwgODMsIDc4LCA2NSwgNzUsIDY5LCAxMjgsIDgzLCAKLSAgICA3OCwgNjUsIDc1LCAxOTcsIDgzLCA3OCwgNjUsIDczLCA3NiwgMTI4LCA4MywgNzgsIDE5MywgODMsIDc3LCA3OSwgNzUsIAotICAgIDczLCA3OCwgMTk5LCA4MywgNzcsIDczLCA4MiwgNzUsIDczLCA3OCwgMTk5LCA4MywgNzcsIDczLCA3NiwgNzMsIDc4LCAKLSAgICAxOTksIDgzLCA3NywgNzMsIDc2LCA2OSwgMTI4LCA4MywgNzcsIDY5LCA2NSwgODIsIDEyOCwgODMsIDc3LCA2NSwgODMsIAotICAgIDIwMCwgODMsIDc3LCA2NSwgNzYsIDc2LCA2OSwgMjEwLCA4MywgNzcsIDY1LCA3NiwgNzYsIDEyOCwgODMsIDc2LCA4NSwgCi0gICAgODIsIDEyOCwgODMsIDc2LCA3OSwgODcsIDc2LCA4OSwgMTI4LCA4MywgNzYsIDc5LCAyMTUsIDgzLCA3NiwgNzksIDg2LCAKLSAgICA3OSwgMTI4LCA4MywgNzYsIDc5LCAyMTIsIDgzLCA3NiwgNzksIDgwLCA3MywgNzgsIDE5OSwgODMsIDc2LCA3OSwgODAsIAotICAgIDY5LCAxMjgsIDgzLCA3NiwgNzMsIDc4LCA3MSwgMTI4LCA4MywgNzYsIDczLCA2OCwgNzMsIDc4LCA3MSwgMTI4LCA4MywgCi0gICAgNzYsIDczLCA2NywgNjksIDEyOCwgODMsIDc2LCA3MywgNjcsIDE5NywgODMsIDc2LCA2OSwgNjksIDgwLCAyMTcsIDgzLCAKLSAgICA3NiwgNjksIDY5LCA4MCwgNzMsIDc4LCAxOTksIDgzLCA3NiwgNjUsIDg2LCA3OSwgNzgsIDczLCAxOTUsIDgzLCA3NiwgNjUsIAotICAgIDg2LCA2OSwgMTI4LCA4MywgNzYsIDY1LCA4MywgNzIsIDEyOCwgODMsIDc2LCA2NSwgODMsIDIwMCwgODMsIDc2LCA2NSwgCi0gICAgNzgsIDg0LCA2OSwgMTk2LCA4MywgNzUsIDg3LCA2NSwgMTI4LCA4MywgNzUsIDg3LCAxMjgsIDgzLCA3NSwgODUsIDc2LCAKLSAgICA3NiwgMTI4LCA4MywgNzUsIDg1LCA3NiwgMjA0LCA4MywgNzUsIDc2LCA3MywgODIsIDc5LCAyMDYsIDgzLCA3NSwgNzMsIAotICAgIDc4LCAxMjgsIDgzLCA3NSwgNzMsIDY5LCA4MiwgMTI4LCA4MywgNzUsIDIwMSwgODMsIDc1LCA2OSwgODcsIDY5LCAxOTYsIAotICAgIDgzLCA3NSwgNjUsIDg0LCA2OSwgMTI4LCA4MywgNzUsIDEyOCwgODMsIDc0LCA2OSwgMTI4LCA4MywgNzMsIDg4LCA4NCwgCi0gICAgODksIDQ1LCA3MCwgNzksIDg1LCA4MiwgODQsIDIwMCwgODMsIDczLCA4OCwgODQsIDg5LCAxMjgsIDgzLCA3MywgODgsIDg0LCAKLSAgICAyMTcsIDgzLCA3MywgODgsIDg0LCA3MiwgODMsIDEyOCwgODMsIDczLCA4OCwgODQsIDcyLCAyMTEsIDgzLCA3MywgODgsIAotICAgIDg0LCA3MiwgMTI4LCA4MywgNzMsIDg4LCA4NCwgNjksIDY5LCA3OCwgODQsIDcyLCA4MywgMTI4LCA4MywgNzMsIDg4LCA4NCwgCi0gICAgNjksIDY5LCA3OCwgODQsIDcyLCAxMjgsIDgzLCA3MywgODgsIDg0LCA2OSwgNjksIDc4LCA4NCwgMjAwLCA4MywgNzMsIDg4LCAKLSAgICA4NCwgNjksIDY5LCA3OCwgMTI4LCA4MywgNzMsIDg4LCA4NCwgNjksIDY5LCAyMDYsIDgzLCA3MywgODgsIDQ1LCA4NCwgNzIsIAotICAgIDczLCA4MiwgODQsIDg5LCAxMjgsIDgzLCA3MywgODgsIDQ1LCA4MywgODQsIDgyLCA3MywgNzgsIDE5OSwgODMsIDczLCA4OCwgCi0gICAgNDUsIDgwLCA2OSwgODIsIDQ1LCA2OSwgMjA1LCA4MywgNzMsIDg4LCA0NSwgNzYsIDczLCA3OCwgMTk3LCA4MywgNzMsIAotICAgIDIxNiwgODMsIDczLCA4NCwgNjksIDEyOCwgODMsIDczLCA4MywgNjUsIDEyOCwgODMsIDczLCA4MiwgNzMsIDc4LCA3MSwgCi0gICAgODUsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCA4NCwgNzIsIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA4MywgNzMsIDc5LCAKLSAgICA4MywgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgODMsIDczLCA3OSwgODMsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCA4MiwgCi0gICAgNzMsIDY5LCA4NSwgNzYsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA3NSwgNzMsIAotICAgIDg5LCA2OSwgNzksIDc1LCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDEyOCwgCi0gICAgODMsIDczLCA3OSwgODMsIDQ1LCA4MCwgNjUsIDc4LCA4MywgNzMsIDc5LCA4MywgMTI4LCA4MywgNzMsIDc5LCA4MywgNDUsIAotICAgIDc4LCA3MywgNjksIDg1LCA3OCwgMTI4LCA4MywgNzMsIDc5LCA4MywgNDUsIDc3LCA3MywgNjksIDg1LCA3NywgMTI4LCA4MywgCi0gICAgNzMsIDc5LCA4MywgNDUsIDc1LCA3MiwgNzMsIDY5LCA4NSwgNzUsIDcyLCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgNzUsIAotICAgIDY1LCA4MCwgODksIDY5LCA3OSwgODUsIDc4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCAKLSAgICA3MywgNjksIDg1LCA3OCwgNzEsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgODMsIAotICAgIDczLCA3OSwgODMsIDQ1LCA2NywgNzMsIDY5LCA4NSwgNjcsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCA2NywgNzIsIDczLCAKLSAgICA2OSwgODUsIDY3LCA3MiwgMTI4LCA4MywgNzMsIDc5LCAyMTEsIDgzLCA3MywgNzgsIDc1LCA3MywgNzgsIDcxLCAxMjgsIAotICAgIDgzLCA3MywgNzgsIDcxLCA3NiwgNjksIDQ1LCA3NiwgNzMsIDc4LCAxOTcsIDgzLCA3MywgNzgsIDcxLCA3NiwgNjksIDEyOCwgCi0gICAgODMsIDczLCA3OCwgNzEsIDc2LCAxOTcsIDgzLCA3MywgNzgsIDcxLCA2NSwgNjUsIDg0LCAxMjgsIDgzLCA3MywgNzgsIAotICAgIDE5NywgODMsIDczLCA3OCwgNjgsIDcyLCAyMDEsIDgzLCA3MywgMjA2LCA4MywgNzMsIDc3LCA4MCwgNzYsIDczLCA3MCwgCi0gICAgNzMsIDY5LCAxOTYsIDgzLCA3MywgNzcsIDczLCA3NiwgNjUsIDgyLCAxMjgsIDgzLCA3MywgNzcsIDczLCA3NiwgNjUsIAotICAgIDIxMCwgODMsIDczLCA3NywgNjUsIDc4LCA4MywgNzMsIDIxMSwgODMsIDczLCA3NywgNjUsIDc2LCA4NSwgNzgsIDcxLCA4NSwgCi0gICAgMjA2LCA4MywgNzMsIDc3LCA2NSwgMTI4LCA4MywgNzMsIDc2LCA4NiwgNjksIDgyLCAxMjgsIDgzLCA3MywgNzYsIDc1LCAKLSAgICAxMjgsIDgzLCA3MywgNzYsIDczLCA4MSwgODUsIDE5MywgODMsIDczLCA3NiwgNzIsIDc5LCA4NSwgNjksIDg0LCA4NCwgNjksIAotICAgIDEyOCwgODMsIDczLCA3NiwgNzIsIDc5LCA4NSwgNjksIDg0LCA4NCwgMTk3LCA4MywgNzMsIDc2LCA2NSwgNTEsIDEyOCwgCi0gICAgODMsIDczLCA3NSwgNzMsIDEyOCwgODMsIDczLCA3NSwgNTAsIDEyOCwgODMsIDczLCA3NSwgMTc4LCA4MywgNzMsIDczLCAKLSAgICAxMjgsIDgzLCA3MywgNzEsIDc4LCA4MywgMTI4LCA4MywgNzMsIDcxLCA3NywgNjUsIDEyOCwgODMsIDczLCA3MSwgNzcsIAotICAgIDE5MywgODMsIDczLCA3MSwgNjksIDIwNCwgODMsIDczLCA3MSwgNTIsIDEyOCwgODMsIDczLCA3MSwgMTgwLCA4MywgNzMsIAotICAgIDcxLCAxMjgsIDgzLCA3MywgNjksIDY5LCAxMjgsIDgzLCA3MywgNjgsIDY5LCA4NywgNjUsIDg5LCAyMTEsIDgzLCA3MywgCi0gICAgNjcsIDc1LCA3OCwgNjksIDgzLCA4MywgMTI4LCA4MywgNzMsIDY3LCA3NSwgNzYsIDY5LCAxMjgsIDgzLCA3MywgNjYsIAotICAgIDE5NywgODMsIDIwMSwgODMsIDcyLCA4OSwgODgsIDEyOCwgODMsIDcyLCA4OSwgODQsIDEyOCwgODMsIDcyLCA4OSwgODIsIAotICAgIDg4LCAxMjgsIDgzLCA3MiwgODksIDgyLCAxMjgsIDgzLCA3MiwgODksIDgwLCAxMjgsIDgzLCA3MiwgODksIDY5LCAxMjgsIAotICAgIDgzLCA3MiwgODksIDY1LCAxMjgsIDgzLCA3MiwgODksIDEyOCwgODMsIDcyLCA4NywgNzksIDg5LCAxMjgsIDgzLCA3MiwgCi0gICAgODcsIDc5LCA3OSwgMTI4LCA4MywgNzIsIDg3LCA3OSwgMTI4LCA4MywgNzIsIDg3LCA3MywgNzMsIDEyOCwgODMsIDcyLCAKLSAgICA4NywgNzMsIDEyOCwgODMsIDcyLCA4NywgNjksIDEyOCwgODMsIDcyLCA4NywgNjUsIDY1LCAxMjgsIDgzLCA3MiwgODcsIAotICAgIDY1LCAxMjgsIDgzLCA3MiwgODUsIDg4LCAxMjgsIDgzLCA3MiwgODUsIDg0LCAxMjgsIDgzLCA3MiwgODUsIDgyLCA4OCwgCi0gICAgMTI4LCA4MywgNzIsIDg1LCA4MiwgMTI4LCA4MywgNzIsIDg1LCA4MCwgMTI4LCA4MywgNzIsIDg1LCA3OSwgODgsIDEyOCwgCi0gICAgODMsIDcyLCA4NSwgNzksIDgwLCAxMjgsIDgzLCA3MiwgODUsIDc5LCAxMjgsIDgzLCA3MiwgODUsIDc3LCAxMjgsIDgzLCAKLSAgICA3MiwgODUsIDcwLCA3MCwgNzYsIDE5NywgODMsIDcyLCA4NSwgNjksIDgxLCAxMjgsIDgzLCA3MiwgODUsIDY5LCA3OCwgODMsIAotICAgIDcyLCA4NSwgNjksIDg0LCAxMjgsIDgzLCA3MiwgODUsIDY2LCA4NSwgODIsIDEyOCwgODMsIDcyLCA4NSwgNTAsIDEyOCwgCi0gICAgODMsIDcyLCA4NSwgMTc4LCA4MywgNzIsIDg1LCAxMjgsIDgzLCA3MiwgMjEzLCA4MywgNzIsIDg0LCA2NSwgODAsIDczLCAKLSAgICA2NywgMTI4LCA4MywgNzIsIDg0LCA2NSwgMTI4LCA4MywgNzIsIDgyLCA3MywgNzgsIDY5LCAxMjgsIDgzLCA3MiwgODIsIAotICAgIDczLCA3NywgODAsIDEyOCwgODMsIDcyLCA3OSwgODksIDEyOCwgODMsIDcyLCA3OSwgODgsIDEyOCwgODMsIDcyLCA3OSwgCi0gICAgODcsIDY5LCA4MiwgMTI4LCA4MywgNzIsIDc5LCA4NSwgNzYsIDY4LCA2OSwgODIsIDY5LCAxOTYsIDgzLCA3MiwgNzksIDg0LCAKLSAgICAxMjgsIDgzLCA3MiwgNzksIDgyLCA4NCwgODMsIDEyOCwgODMsIDcyLCA3OSwgODIsIDg0LCAyMTEsIDgzLCA3MiwgNzksIAotICAgIDgyLCA4NCwgNjksIDc4LCA2OSwgODIsIDEyOCwgODMsIDcyLCA3OSwgODIsIDg0LCA2NywgNjUsIDc1LCA2OSwgMTI4LCA4MywgCi0gICAgNzIsIDc5LCA4MiwgODQsIDQ1LCA4NCwgODcsIDczLCA3MSwgNDUsIDg5LCA4MiwgMTI4LCA4MywgNzIsIDc5LCA4MiwgODQsIAotICAgIDQ1LCA4NCwgODcsIDczLCA3MSwgNDUsIDg0LCA4OSwgMjEwLCA4MywgNzIsIDc5LCA4MiwgODQsIDQ1LCA4NCwgODcsIDczLCAKLSAgICA3MSwgNDUsIDgzLCA3OSwgMjA0LCA4MywgNzIsIDc5LCA4MiwgODQsIDQ1LCA4NCwgODcsIDczLCA3MSwgNDUsIDc5LCA4MywgCi0gICAgMjExLCA4MywgNzIsIDc5LCA4MiwgODQsIDQ1LCA4NCwgODcsIDczLCA3MSwgNDUsIDc4LCA2NSwgODUsIDE5NiwgODMsIDcyLCAKLSAgICA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA3NywgNjUsIDY4LCAyMTAsIDgzLCA3MiwgNzksIDgyLCA4NCwgCi0gICAgNDUsIDg0LCA4NywgNzMsIDcxLCA0NSwgNzIsIDY1LCA3MSwgNjUsIDc2LCAyMDQsIDgzLCA3MiwgNzksIDgyLCA4NCwgNDUsIAotICAgIDg0LCA4NywgNzMsIDcxLCA0NSwgNjYsIDc0LCA2NSwgODIsIDc1LCA2NSwgMjA2LCA4MywgNzIsIDc5LCA4MiwgODQsIDQ1LCAKLSAgICA4NCwgODcsIDczLCA3MSwgNDUsIDY1LCAyMTAsIDgzLCA3MiwgNzksIDgyLCA4NCwgMTI4LCA4MywgNzIsIDc5LCA4MiwgCi0gICAgMjEyLCA4MywgNzIsIDc5LCA4MSwgMTI4LCA4MywgNzIsIDc5LCAyMDksIDgzLCA3MiwgNzksIDgwLCAxMjgsIDgzLCA3MiwgCi0gICAgNzksIDc5LCA4NCwgNzMsIDc4LCAxOTksIDgzLCA3MiwgNzksIDc5LCA4NCwgMTI4LCA4MywgNzIsIDc5LCA3OSwgMTI4LCAKLSAgICA4MywgNzIsIDc5LCA3MSwgMjAxLCA4MywgNzIsIDc5LCAxOTksIDgzLCA3MiwgNzksIDY5LCAxMjgsIDgzLCA3MiwgNzksIAotICAgIDE5NywgODMsIDcyLCA3OSwgNjUsIDEyOCwgODMsIDcyLCA3OSwgMTI4LCA4MywgNzIsIDczLCA4OSwgODksIDY1LCA2NSwgCi0gICAgNzYsIDY1LCA2NSwgMTI4LCA4MywgNzIsIDczLCA4NCwgNjUsIDEyOCwgODMsIDcyLCA3MywgODQsIDE5MywgODMsIDcyLCAKLSAgICA3MywgODIsIDIxMiwgODMsIDcyLCA3MywgODIsIDY1LCA2OSwgMTI4LCA4MywgNzIsIDczLCA4MiwgMTI4LCA4MywgNzIsIAotICAgIDczLCAyMTAsIDgzLCA3MiwgNzMsIDgxLCAxMjgsIDgzLCA3MiwgNzMsIDgwLCAxMjgsIDgzLCA3MiwgNzMsIDc4LCA4NCwgCi0gICAgMjA3LCA4MywgNzIsIDczLCA3OCwgNzMsIDcxLCAxMjgsIDgzLCA3MiwgNzMsIDc4LCA2OCwgMTkzLCA4MywgNzIsIDczLCAKLSAgICA3OCwgMTI4LCA4MywgNzIsIDczLCAyMDYsIDgzLCA3MiwgNzMsIDc3LCA2NSwgMTI4LCA4MywgNzIsIDczLCA3NywgMTkzLCAKLSAgICA4MywgNzIsIDczLCA3NywgMTI4LCA4MywgNzIsIDczLCAyMDUsIDgzLCA3MiwgNzMsIDczLCA3OCwgMTI4LCA4MywgNzIsIAotICAgIDczLCA3MywgMTI4LCA4MywgNzIsIDczLCA3MCwgMjEyLCA4MywgNzIsIDczLCA2OSwgNzYsIDY4LCAxMjgsIDgzLCA3MiwgCi0gICAgNzMsIDY4LCAxMjgsIDgzLCA3MiwgNzMsIDE5NiwgODMsIDcyLCA3MiwgNjUsIDEyOCwgODMsIDcyLCA3MiwgMTkzLCA4MywgCi0gICAgNzIsIDY5LCA4OCwgMTI4LCA4MywgNzIsIDY5LCA4NiwgNjUsIDEyOCwgODMsIDcyLCA2OSwgODUsIDg4LCAxMjgsIDgzLCAKLSAgICA3MiwgNjksIDg1LCA3OSwgODEsIDEyOCwgODMsIDcyLCA2OSwgODUsIDY1LCA2OSwgODEsIDg0LCA4NSwgMTI4LCA4MywgNzIsIAotICAgIDY5LCA4NSwgNjUsIDY5LCA4MSwgMTI4LCA4MywgNzIsIDY5LCA4NSwgNjUsIDY5LCAxMjgsIDgzLCA3MiwgNjksIDg0LCAKLSAgICAxMjgsIDgzLCA3MiwgNjksIDIxMiwgODMsIDcyLCA2OSwgODMsIDcyLCA3NiwgNjUsIDc3LCAxMjgsIDgzLCA3MiwgNjksIAotICAgIDgzLCA3MiwgNzMsIDcxLCAxMjgsIDgzLCA3MiwgNjksIDgzLCA3MiwgNzMsIDE5OSwgODMsIDcyLCA2OSwgODMsIDcyLCA1MCwgCi0gICAgMTI4LCA4MywgNzIsIDY5LCA4MywgNzIsIDEyOCwgODMsIDcyLCA2OSwgODEsIDY5LCAyMDQsIDgzLCA3MiwgNjksIDgwLCAKLSAgICAxMjgsIDgzLCA3MiwgNjksIDc4LCAxMjgsIDgzLCA3MiwgNjksIDc2LCA3NiwgMTI4LCA4MywgNzIsIDY5LCA3NiwgMjA0LCAKLSAgICA4MywgNzIsIDY5LCA3NiwgNzAsIDEyOCwgODMsIDcyLCA2OSwgNzMsIDEyOCwgODMsIDcyLCA2OSwgNzEsIDU3LCAxMjgsIAotICAgIDgzLCA3MiwgNjksIDY5LCA4MCwgMTI4LCA4MywgNzIsIDY5LCA2OSwgNzgsIDg1LCAxMjgsIDgzLCA3MiwgNjksIDY5LCA3OCwgCi0gICAgMTI4LCA4MywgNzIsIDY5LCA2OSwgMjA2LCA4MywgNzIsIDY5LCA2OSwgMTI4LCA4MywgNzIsIDY5LCA0NSwgNzEsIDc5LCAKLSAgICA2NSwgODQsIDEyOCwgODMsIDcyLCAxOTcsIDgzLCA3MiwgNjcsIDcyLCA2NSwgMTI4LCA4MywgNzIsIDY1LCA4OSwgMTI4LCAKLSAgICA4MywgNzIsIDY1LCA4OCwgMTI4LCA4MywgNzIsIDY1LCA4NiwgNzMsIDg5LCA2NSwgNzgsIDczLCAxMjgsIDgzLCA3MiwgNjUsIAotICAgIDg2LCA3MywgNjUsIDIwNiwgODMsIDcyLCA2NSwgODYsIDY5LCAxOTYsIDgzLCA3MiwgNjUsIDg0LCAxMjgsIDgzLCA3MiwgCi0gICAgNjUsIDgyLCA4NSwgMTI4LCA4MywgNzIsIDY1LCA4MiwgMjEzLCA4MywgNzIsIDY1LCA4MiwgODAsIDEyOCwgODMsIDcyLCAKLSAgICA2NSwgODIsIDIwOCwgODMsIDcyLCA2NSwgODIsIDY1LCAxMjgsIDgzLCA3MiwgNjUsIDgyLCA1MCwgMTI4LCA4MywgNzIsIAotICAgIDY1LCA4MiwgMTc4LCA4MywgNzIsIDY1LCA4MCwgNzMsIDc4LCA3MSwgMTI4LCA4MywgNzIsIDY1LCA4MCwgNjksIDgzLCAKLSAgICAxMjgsIDgzLCA3MiwgNjUsIDgwLCAxOTcsIDgzLCA3MiwgNjUsIDgwLCAxMjgsIDgzLCA3MiwgNjUsIDc4LCA3MSwgMTI4LCAKLSAgICA4MywgNzIsIDY1LCA3OCwgMTI4LCA4MywgNzIsIDY1LCAyMDYsIDgzLCA3MiwgNjUsIDc3LCA4MiwgNzksIDY3LCA3NSwgCi0gICAgMTI4LCA4MywgNzIsIDY1LCA3NiwgODMsIDcyLCA2OSwgNzYsIDY5LCA4NCwgMTI4LCA4MywgNzIsIDY1LCA3NSwgODQsIDczLCAKKyAgICA4OCwgMTI4LCA4MywgODMsIDg1LCA4NSwgMTI4LCA4MywgODMsIDg1LCA4NCwgMTI4LCA4MywgODMsIDg1LCA4MCwgMTI4LCAKKyAgICA4MywgODMsIDc5LCA4OCwgMTI4LCA4MywgODMsIDc5LCA4NCwgMTI4LCA4MywgODMsIDc5LCA4MCwgMTI4LCA4MywgODMsIAorICAgIDc5LCA3OSwgMTI4LCA4MywgODMsIDc5LCAxMjgsIDgzLCA4MywgNzMsIDg4LCAxMjgsIDgzLCA4MywgNzMsIDg0LCAxMjgsIAorICAgIDgzLCA4MywgNzMsIDgwLCAxMjgsIDgzLCA4MywgNzMsIDczLCAxMjgsIDgzLCA4MywgNzMsIDY5LCA4OCwgMTI4LCA4MywgCisgICAgODMsIDczLCA2OSwgODAsIDEyOCwgODMsIDgzLCA3MywgNjksIDEyOCwgODMsIDgzLCA3MywgMTI4LCA4MywgODMsIDcyLCAKKyAgICA2OSwgMTI4LCA4MywgODMsIDY5LCA4OCwgMTI4LCA4MywgODMsIDY5LCA4MCwgMTI4LCA4MywgODMsIDY5LCA2OSwgMTI4LCAKKyAgICA4MywgODMsIDY1LCA4OCwgMTI4LCA4MywgODMsIDY1LCA4NSwgMTI4LCA4MywgODMsIDY1LCA4NCwgMTI4LCA4MywgODMsIAorICAgIDY1LCA4MCwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDg5LCA2OSwgNzksIDgyLCA3MywgNzgsIDcyLCA3MywgNjksIDg1LCAKKyAgICA3MiwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDQ1LCA4MCwgNzMsIDY5LCA4NSwgCisgICAgODAsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAxMjgsIDgzLCA4MywgNjUsIDc4LCAKKyAgICA3MSwgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgNzIsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MywgNzMsIDc5LCA4MywgCisgICAgNDUsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MywgNzMsIDc5LCA4MywgNDUsIAorICAgIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCA0NSwgNzUsIDczLCAKKyAgICA4OSwgNjksIDc5LCA3NSwgMTI4LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIDgzLCA4MywgNjUsIAorICAgIDc4LCA3MSwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzUsIDcyLCA3MywgNjksIDg1LCA3NSwgNzIsIDEyOCwgODMsIDgzLCAKKyAgICA2NSwgNzgsIDcxLCA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MCwgNzMsIDY5LCA4NSwgCisgICAgODAsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA3OCwgNzMsIDY5LCA4NSwgNzgsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCAKKyAgICA3NywgNzMsIDY5LCA4NSwgNzcsIDEyOCwgODMsIDgzLCA2NSwgNzgsIDcxLCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIAorICAgIDgzLCA4MywgNjUsIDc4LCA3MSwgNzMsIDY5LCA4NSwgNzgsIDcxLCAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgNzIsIDczLCAKKyAgICA2OSwgODUsIDcyLCAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgNjcsIDczLCA2OSwgODUsIDY3LCA0NSwgNzIsIDczLCA2OSwgCisgICAgODUsIDcyLCAxMjgsIDgzLCA4MywgNjUsIDc4LCA3MSwgNjcsIDczLCA2OSwgODUsIDY3LCAxMjgsIDgzLCA4MywgNjUsIDc4LCAKKyAgICA3MSwgNjUsIDgyLCA2NSwgNjksIDY1LCAxMjgsIDgzLCA4MywgNjUsIDczLCAxMjgsIDgzLCA4MywgNjUsIDY1LCAxMjgsIAorICAgIDgzLCA4MywgNjUsIDEyOCwgODMsIDgyLCAxMjgsIDgzLCA4MSwgODUsIDczLCA4MywgMjAwLCA4MywgODEsIDg1LCA3MywgCisgICAgODIsIDgyLCA2OSwgMjA0LCA4MywgODEsIDg1LCA3MywgNzEsIDcxLCA3NiwgMTk3LCA4MywgODEsIDg1LCA2NSwgMjEyLCAKKyAgICA4MywgODEsIDg1LCA2NSwgODIsIDY5LCA4MywgMTI4LCA4MywgODEsIDg1LCA2NSwgODIsIDY5LCA2OCwgMTI4LCA4MywgODEsIAorICAgIDg1LCA2NSwgODIsIDY5LCAxMjgsIDgzLCA4MCwgODcsIDY1LCAxMjgsIDgzLCA4MCwgODUsIDc4LCA3MSwgMjExLCA4MywgCisgICAgODAsIDgyLCA3OSwgODUsIDg0LCAxMjgsIDgzLCA4MCwgODIsIDczLCA3OCwgNzEsIDgzLCAxMjgsIDgzLCA4MCwgODIsIDczLCAKKyAgICA3OCwgNzEsIDEyOCwgODMsIDgwLCA4MiwgNjksIDY3LCA3MiwgNzEsIDY5LCA4MywgNjUsIDc4LCAxOTksIDgzLCA4MCwgNzksIAorICAgIDg1LCA4NCwgNzMsIDc4LCAxOTksIDgzLCA4MCwgNzksIDg0LCAxMjgsIDgzLCA4MCwgNzksIDc5LCA3OCwgMTI4LCA4MywgCisgICAgODAsIDc2LCA3MywgODQsIDg0LCA3MywgNzgsIDE5OSwgODMsIDgwLCA3NiwgNjUsIDgzLCA3MiwgNzMsIDc4LCAxOTksIDgzLCAKKyAgICA4MCwgNzMsIDgyLCA3MywgODQsIDg1LCAyMTEsIDgzLCA4MCwgNzMsIDgyLCA3MywgODQsIDEyOCwgODMsIDgwLCA3MywgODIsIAorICAgIDczLCAyMTIsIDgzLCA4MCwgNzMsIDgyLCA2NSwgNzgsIDg0LCAxMjgsIDgzLCA4MCwgNzMsIDgyLCA2NSwgNzYsIDEyOCwgCisgICAgODMsIDgwLCA3MywgODIsIDY1LCAyMDQsIDgzLCA4MCwgNzMsIDY4LCA2OSwgODIsIDIxNywgODMsIDgwLCA3MywgNjcsIDY5LCAKKyAgICAxMjgsIDgzLCA4MCwgNzIsIDY5LCA4MiwgNzMsIDY3LCA2NSwgMjA0LCA4MywgODAsIDY5LCA4MywgNzcsIDczLCA3NiwgCisgICAgMjA3LCA4MywgODAsIDY5LCA2OSwgNjgsIDY2LCA3OSwgNjUsIDg0LCAxMjgsIDgzLCA4MCwgNjksIDY5LCA2NywgNzIsIAorICAgIDEyOCwgODMsIDgwLCA2OSwgNjksIDY3LCAyMDAsIDgzLCA4MCwgNjksIDY3LCA3MywgNjUsIDc2LCAxMjgsIDgzLCA4MCwgCisgICAgNjksIDY1LCA4MiwgMTI4LCA4MywgODAsIDY5LCA2NSwgNzUsIDY5LCA4MiwgMTI4LCA4MywgODAsIDY5LCA2NSwgNzUsIDY5LCAKKyAgICAyMTAsIDgzLCA4MCwgNjksIDY1LCA3NSwgNDUsIDc4LCA3OSwgNDUsIDY5LCA4NiwgNzMsIDIwNCwgODMsIDgwLCA2NSwgODQsIAorICAgIDcyLCA3MywgMTI4LCA4MywgODAsIDY1LCA4MiwgNzUsIDc2LCA3MywgNzgsIDE5OSwgODMsIDgwLCA2NSwgODIsIDc1LCA3NiwgCisgICAgNjksIDgzLCAxMjgsIDgzLCA4MCwgNjUsIDgyLCA3NSwgNzYsIDY5LCA4MiwgMTI4LCA4MywgODAsIDY1LCA4MiwgNzUsIDc2LCAKKyAgICA2OSwgMTI4LCA4MywgODAsIDY1LCA3MSwgNzIsIDY5LCA4NCwgODQsIDczLCAxMjgsIDgzLCA4MCwgNjUsIDY4LCA2OSwgODMsIAorICAgIDEyOCwgODMsIDgwLCA2NSwgNjgsIDE5NywgODMsIDgwLCA2NSwgNjcsIDczLCA3OCwgMTk5LCA4MywgODAsIDY1LCA2NywgCisgICAgMTk3LCA4MywgODAsIDEyOCwgODMsIDc5LCA4OSwgMTI4LCA4MywgNzksIDg3LCA3MywgNzYsIDIwNywgODMsIDc5LCA4NywgCisgICAgMTI4LCA4MywgNzksIDg1LCA4NCwgNzIsIDY5LCA4MiwgMjA2LCA4MywgNzksIDg1LCA4NCwgNzIsIDQ1LCA4MywgNzYsIDY1LCAKKyAgICA4NiwgNjksIDIxNywgODMsIDc5LCA4NSwgODQsIDIwMCwgODMsIDc5LCA4NSwgODIsIDY3LCA2OSwgMTI4LCA4MywgNzksIAorICAgIDg1LCA3OCwgNjgsIDEyOCwgODMsIDc5LCA4NSwgNzgsIDE5NiwgODMsIDc5LCA4NSwgNzgsIDY1LCA4MCwgMTI4LCA4MywgCisgICAgNzksIDg1LCAxMjgsIDgzLCA3OSwgODMsIDEyOCwgODMsIDc5LCA4MSwgMTI4LCA4MywgNzksIDc5LCAyMDYsIDgzLCA3OSwgCisgICAgNzgsIDc0LCA2NSwgNzcsIDEyOCwgODMsIDc5LCA3OCwgNzEsIDEyOCwgODMsIDc5LCA3OCwgMTI4LCA4MywgNzksIDc3LCAKKyAgICAxMjgsIDgzLCA3OSwgNzYsIDczLCA2OCwgODUsIDgzLCAxMjgsIDgzLCA3OSwgNzYsIDczLCA2OCwgODUsIDIxMSwgODMsIAorICAgIDc5LCA3MSwgNjgsIDczLCA2NSwgMjA2LCA4MywgNzksIDcwLCA4NCwgODcsIDY1LCA4MiwgNjksIDQ1LCA3MCwgODUsIDc4LCAKKyAgICA2NywgODQsIDczLCA3OSwgMjA2LCA4MywgNzksIDcwLCA4NCwgNzgsIDY5LCA4MywgODMsIDEyOCwgODMsIDc5LCA3MCwgCisgICAgMjEyLCA4MywgNzksIDE5OCwgODMsIDc5LCA2NywgNzMsIDY5LCA4NCwgODksIDEyOCwgODMsIDc5LCA2NywgNjcsIDY5LCAKKyAgICAyMTAsIDgzLCA3OSwgNjUsIDgwLCAxMjgsIDgzLCA3OSwgNjUsIDEyOCwgODMsIDIwNywgODMsIDc4LCA3OSwgODcsIDc3LCAKKyAgICA2NSwgNzgsIDEyOCwgODMsIDc4LCA3OSwgODcsIDc3LCA2NSwgMjA2LCA4MywgNzgsIDc5LCA4NywgNzAsIDc2LCA2NSwgNzUsIAorICAgIDY5LCAxMjgsIDgzLCA3OCwgNzksIDg3LCA2NiwgNzksIDY1LCA4MiwgNjgsIDY5LCA4MiwgMTI4LCA4MywgNzgsIDc5LCA4NywgCisgICAgMTI4LCA4MywgNzgsIDc5LCA4NSwgODQsIDEyOCwgODMsIDc4LCA3OSwgODUsIDIxMiwgODMsIDc4LCA2NSwgMjA4LCA4MywgCisgICAgNzgsIDY1LCA3NSwgNjksIDEyOCwgODMsIDc4LCA2NSwgNzUsIDE5NywgODMsIDc4LCA2NSwgNzMsIDc2LCAxMjgsIDgzLCAKKyAgICA3OCwgMTkzLCA4MywgNzcsIDc5LCA3NSwgNzMsIDc4LCAxOTksIDgzLCA3NywgNzMsIDgyLCA3NSwgNzMsIDc4LCAxOTksIAorICAgIDgzLCA3NywgNzMsIDc2LCA3MywgNzgsIDE5OSwgODMsIDc3LCA3MywgNzYsIDY5LCAxMjgsIDgzLCA3NywgNjksIDY1LCA4MiwgCisgICAgMTI4LCA4MywgNzcsIDY1LCA4MywgMjAwLCA4MywgNzcsIDY1LCA3NiwgNzYsIDY5LCAyMTAsIDgzLCA3NywgNjUsIDc2LCAKKyAgICA3NiwgMTI4LCA4MywgNzYsIDg1LCA4MiwgMTI4LCA4MywgNzYsIDc5LCA4NywgNzYsIDg5LCAxMjgsIDgzLCA3NiwgNzksIAorICAgIDIxNSwgODMsIDc2LCA3OSwgODYsIDc5LCAxMjgsIDgzLCA3NiwgNzksIDIxMiwgODMsIDc2LCA3OSwgODAsIDczLCA3OCwgCisgICAgMTk5LCA4MywgNzYsIDc5LCA4MCwgNjksIDEyOCwgODMsIDc2LCA3MywgNzgsIDcxLCAxMjgsIDgzLCA3NiwgNzMsIDY4LCAKKyAgICA3MywgNzgsIDcxLCAxMjgsIDgzLCA3NiwgNzMsIDY3LCA2OSwgMTI4LCA4MywgNzYsIDczLCA2NywgMTk3LCA4MywgNzYsIAorICAgIDY5LCA2OSwgODAsIDIxNywgODMsIDc2LCA2OSwgNjksIDgwLCA3MywgNzgsIDE5OSwgODMsIDc2LCA2NSwgODYsIDc5LCA3OCwgCisgICAgNzMsIDE5NSwgODMsIDc2LCA2NSwgODYsIDY5LCAxMjgsIDgzLCA3NiwgNjUsIDgzLCA3MiwgMTI4LCA4MywgNzYsIDY1LCAKKyAgICA4MywgMjAwLCA4MywgNzYsIDY1LCA3OCwgODQsIDY5LCAxOTYsIDgzLCA3NSwgODcsIDY1LCAxMjgsIDgzLCA3NSwgODcsIAorICAgIDEyOCwgODMsIDc1LCA4NSwgNzYsIDc2LCAxMjgsIDgzLCA3NSwgODUsIDc2LCAyMDQsIDgzLCA3NSwgNzYsIDczLCA4MiwgCisgICAgNzksIDIwNiwgODMsIDc1LCA3MywgNzgsIDEyOCwgODMsIDc1LCA3MywgNjksIDgyLCAxMjgsIDgzLCA3NSwgMjAxLCA4MywgCisgICAgNzUsIDY5LCA4NywgNjksIDE5NiwgODMsIDc1LCA2NSwgODQsIDY5LCAxMjgsIDgzLCA3NSwgMTI4LCA4MywgNzQsIDY5LCAKKyAgICAxMjgsIDgzLCA3MywgODgsIDg0LCA4OSwgNDUsIDcwLCA3OSwgODUsIDgyLCA4NCwgMjAwLCA4MywgNzMsIDg4LCA4NCwgODksIAorICAgIDEyOCwgODMsIDczLCA4OCwgODQsIDIxNywgODMsIDczLCA4OCwgODQsIDcyLCA4MywgMTI4LCA4MywgNzMsIDg4LCA4NCwgCisgICAgNzIsIDIxMSwgODMsIDczLCA4OCwgODQsIDcyLCAxMjgsIDgzLCA3MywgODgsIDg0LCA2OSwgNjksIDc4LCA4NCwgNzIsIDgzLCAKKyAgICAxMjgsIDgzLCA3MywgODgsIDg0LCA2OSwgNjksIDc4LCA4NCwgNzIsIDEyOCwgODMsIDczLCA4OCwgODQsIDY5LCA2OSwgNzgsIAorICAgIDg0LCAyMDAsIDgzLCA3MywgODgsIDg0LCA2OSwgNjksIDc4LCAxMjgsIDgzLCA3MywgODgsIDg0LCA2OSwgNjksIDIwNiwgCisgICAgODMsIDczLCA4OCwgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgODMsIDczLCA4OCwgNDUsIDgzLCA4NCwgODIsIAorICAgIDczLCA3OCwgMTk5LCA4MywgNzMsIDg4LCA0NSwgODAsIDY5LCA4MiwgNDUsIDY5LCAyMDUsIDgzLCA3MywgODgsIDQ1LCA3NiwgCisgICAgNzMsIDc4LCAxOTcsIDgzLCA3MywgMjE2LCA4MywgNzMsIDg0LCA2OSwgMTI4LCA4MywgNzMsIDgzLCA2NSwgMTI4LCA4MywgCisgICAgNzMsIDgyLCA3MywgNzgsIDcxLCA4NSwgMTI4LCA4MywgNzMsIDc5LCA4MywgNDUsIDg0LCA3MiwgNzMsIDY5LCA4NSwgODQsIAorICAgIDcyLCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MywgNzMsIDc5LCA4MywgMTI4LCA4MywgCisgICAgNzMsIDc5LCA4MywgNDUsIDgyLCA3MywgNjksIDg1LCA3NiwgMTI4LCA4MywgNzMsIDc5LCA4MywgNDUsIDgwLCA3MywgNjksIAorICAgIDg1LCA4MCwgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgODMsIDczLCA3OSwgODMsIDQ1LCA4MCwgNzIsIDczLCAKKyAgICA2OSwgODUsIDgwLCA3MiwgMTI4LCA4MywgNzMsIDc5LCA4MywgNDUsIDgwLCA2NSwgNzgsIDgzLCA3MywgNzksIDgzLCAxMjgsIAorICAgIDgzLCA3MywgNzksIDgzLCA0NSwgNzgsIDczLCA2OSwgODUsIDc4LCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgNzcsIDczLCAKKyAgICA2OSwgODUsIDc3LCAxMjgsIDgzLCA3MywgNzksIDgzLCA0NSwgNzUsIDcyLCA3MywgNjksIDg1LCA3NSwgNzIsIDEyOCwgODMsIAorICAgIDczLCA3OSwgODMsIDQ1LCA3NSwgNjUsIDgwLCA4OSwgNjksIDc5LCA4NSwgNzgsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCAKKyAgICA4MywgNzMsIDc5LCA4MywgNDUsIDczLCA2OSwgODUsIDc4LCA3MSwgMTI4LCA4MywgNzMsIDc5LCA4MywgNDUsIDcyLCA3MywgCisgICAgNjksIDg1LCA3MiwgMTI4LCA4MywgNzMsIDc5LCA4MywgNDUsIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA4MywgNzMsIDc5LCAKKyAgICA4MywgNDUsIDY3LCA3MiwgNzMsIDY5LCA4NSwgNjcsIDcyLCAxMjgsIDgzLCA3MywgNzksIDIxMSwgODMsIDczLCA3OCwgNzUsIAorICAgIDczLCA3OCwgNzEsIDEyOCwgODMsIDczLCA3OCwgNzEsIDc2LCA2OSwgNDUsIDc2LCA3MywgNzgsIDE5NywgODMsIDczLCA3OCwgCisgICAgNzEsIDc2LCA2OSwgMTI4LCA4MywgNzMsIDc4LCA3MSwgNzYsIDE5NywgODMsIDczLCA3OCwgNzEsIDY1LCA2NSwgODQsIAorICAgIDEyOCwgODMsIDczLCA3OCwgMTk3LCA4MywgNzMsIDc4LCA2OCwgNzIsIDIwMSwgODMsIDczLCAyMDYsIDgzLCA3MywgNzcsIAorICAgIDgwLCA3NiwgNzMsIDcwLCA3MywgNjksIDE5NiwgODMsIDczLCA3NywgNzMsIDc2LCA2NSwgODIsIDEyOCwgODMsIDczLCA3NywgCisgICAgNzMsIDc2LCA2NSwgMjEwLCA4MywgNzMsIDc3LCA2NSwgNzgsIDgzLCA3MywgMjExLCA4MywgNzMsIDc3LCA2NSwgNzYsIDg1LCAKKyAgICA3OCwgNzEsIDg1LCAyMDYsIDgzLCA3MywgNzcsIDY1LCAxMjgsIDgzLCA3MywgNzYsIDg2LCA2OSwgODIsIDEyOCwgODMsIAorICAgIDczLCA3NiwgNzUsIDEyOCwgODMsIDczLCA3NiwgNzMsIDgxLCA4NSwgMTkzLCA4MywgNzMsIDc2LCA3MiwgNzksIDg1LCA2OSwgCisgICAgODQsIDg0LCA2OSwgMTI4LCA4MywgNzMsIDc2LCA3MiwgNzksIDg1LCA2OSwgODQsIDg0LCAxOTcsIDgzLCA3MywgNzYsIDY1LCAKKyAgICA1MSwgMTI4LCA4MywgNzMsIDc1LCA3MywgMTI4LCA4MywgNzMsIDc1LCA1MCwgMTI4LCA4MywgNzMsIDc1LCAxNzgsIDgzLCAKKyAgICA3MywgNzEsIDc4LCA4MywgMTI4LCA4MywgNzMsIDcxLCA3NywgNjUsIDEyOCwgODMsIDczLCA3MSwgNzcsIDE5MywgODMsIAorICAgIDczLCA3MSwgNjksIDIwNCwgODMsIDczLCA3MSwgNTIsIDEyOCwgODMsIDczLCA3MSwgMTgwLCA4MywgNzMsIDcxLCAxMjgsIAorICAgIDgzLCA3MywgNjksIDY5LCAxMjgsIDgzLCA3MywgNjgsIDY5LCA4NywgNjUsIDg5LCAyMTEsIDgzLCA3MywgNjcsIDc1LCA3OCwgCisgICAgNjksIDgzLCA4MywgMTI4LCA4MywgNzMsIDY3LCA3NSwgNzYsIDY5LCAxMjgsIDgzLCA3MywgNjYsIDE5NywgODMsIDIwMSwgCisgICAgODMsIDcyLCA4OSwgODgsIDEyOCwgODMsIDcyLCA4OSwgODQsIDEyOCwgODMsIDcyLCA4OSwgODIsIDg4LCAxMjgsIDgzLCAKKyAgICA3MiwgODksIDgyLCAxMjgsIDgzLCA3MiwgODksIDgwLCAxMjgsIDgzLCA3MiwgODksIDY5LCAxMjgsIDgzLCA3MiwgODksIAorICAgIDY1LCAxMjgsIDgzLCA3MiwgODksIDEyOCwgODMsIDcyLCA4NywgNzksIDg5LCAxMjgsIDgzLCA3MiwgODcsIDc5LCA3OSwgCisgICAgMTI4LCA4MywgNzIsIDg3LCA3OSwgMTI4LCA4MywgNzIsIDg3LCA3MywgNzMsIDEyOCwgODMsIDcyLCA4NywgNzMsIDEyOCwgCisgICAgODMsIDcyLCA4NywgNjksIDEyOCwgODMsIDcyLCA4NywgNjUsIDY1LCAxMjgsIDgzLCA3MiwgODcsIDY1LCAxMjgsIDgzLCAKKyAgICA3MiwgODUsIDg4LCAxMjgsIDgzLCA3MiwgODUsIDg1LCAxMjgsIDgzLCA3MiwgODUsIDg0LCAxMjgsIDgzLCA3MiwgODUsIAorICAgIDgyLCA4OCwgMTI4LCA4MywgNzIsIDg1LCA4MiwgMTI4LCA4MywgNzIsIDg1LCA4MCwgMTI4LCA4MywgNzIsIDg1LCA3OSwgCisgICAgODgsIDEyOCwgODMsIDcyLCA4NSwgNzksIDgwLCAxMjgsIDgzLCA3MiwgODUsIDc5LCAxMjgsIDgzLCA3MiwgODUsIDc3LCAKKyAgICAxMjgsIDgzLCA3MiwgODUsIDcwLCA3MCwgNzYsIDE5NywgODMsIDcyLCA4NSwgNjksIDgxLCAxMjgsIDgzLCA3MiwgODUsIAorICAgIDY5LCA3OCwgODMsIDcyLCA4NSwgNjksIDg0LCAxMjgsIDgzLCA3MiwgODUsIDY2LCA4NSwgODIsIDEyOCwgODMsIDcyLCA4NSwgCisgICAgNTAsIDEyOCwgODMsIDcyLCA4NSwgMTc4LCA4MywgNzIsIDg1LCAxMjgsIDgzLCA3MiwgMjEzLCA4MywgNzIsIDg0LCA2NSwgCisgICAgODAsIDczLCA2NywgMTI4LCA4MywgNzIsIDg0LCA2NSwgMTI4LCA4MywgNzIsIDgyLCA3MywgNzgsIDY5LCAxMjgsIDgzLCAKKyAgICA3MiwgODIsIDczLCA3NywgODAsIDEyOCwgODMsIDcyLCA4MiwgNzMsIDczLCAxMjgsIDgzLCA3MiwgNzksIDg5LCAxMjgsIAorICAgIDgzLCA3MiwgNzksIDg4LCAxMjgsIDgzLCA3MiwgNzksIDg3LCA2OSwgODIsIDEyOCwgODMsIDcyLCA3OSwgODUsIDc2LCA2OCwgCisgICAgNjksIDgyLCA2OSwgMTk2LCA4MywgNzIsIDc5LCA4NCwgMTI4LCA4MywgNzIsIDc5LCA4MiwgODQsIDgzLCAxMjgsIDgzLCAKKyAgICA3MiwgNzksIDgyLCA4NCwgMjExLCA4MywgNzIsIDc5LCA4MiwgODQsIDY5LCA3OCwgNjksIDgyLCAxMjgsIDgzLCA3MiwgNzksIAorICAgIDgyLCA4NCwgNjcsIDY1LCA3NSwgNjksIDEyOCwgODMsIDcyLCA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCAKKyAgICA4OSwgODIsIDEyOCwgODMsIDcyLCA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA4NCwgODksIDIxMCwgODMsIAorICAgIDcyLCA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA4MywgNzksIDIwNCwgODMsIDcyLCA3OSwgODIsIDg0LCAKKyAgICA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA3OSwgODMsIDIxMSwgODMsIDcyLCA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgCisgICAgNzEsIDQ1LCA3OCwgNjUsIDg1LCAxOTYsIDgzLCA3MiwgNzksIDgyLCA4NCwgNDUsIDg0LCA4NywgNzMsIDcxLCA0NSwgNzcsIAorICAgIDY1LCA2OCwgMjEwLCA4MywgNzIsIDc5LCA4MiwgODQsIDQ1LCA4NCwgODcsIDczLCA3MSwgNDUsIDcyLCA2NSwgNzEsIDY1LCAKKyAgICA3NiwgMjA0LCA4MywgNzIsIDc5LCA4MiwgODQsIDQ1LCA4NCwgODcsIDczLCA3MSwgNDUsIDY2LCA3NCwgNjUsIDgyLCA3NSwgCisgICAgNjUsIDIwNiwgODMsIDcyLCA3OSwgODIsIDg0LCA0NSwgODQsIDg3LCA3MywgNzEsIDQ1LCA2NSwgMjEwLCA4MywgNzIsIDc5LCAKKyAgICA4MiwgODQsIDEyOCwgODMsIDcyLCA3OSwgODIsIDIxMiwgODMsIDcyLCA3OSwgODEsIDEyOCwgODMsIDcyLCA3OSwgMjA5LCAKKyAgICA4MywgNzIsIDc5LCA4MCwgMTI4LCA4MywgNzIsIDc5LCA3OSwgODQsIDczLCA3OCwgMTk5LCA4MywgNzIsIDc5LCA3OSwgODQsIAorICAgIDEyOCwgODMsIDcyLCA3OSwgNzksIDEyOCwgODMsIDcyLCA3OSwgNzEsIDIwMSwgODMsIDcyLCA3OSwgMTk5LCA4MywgNzIsIAorICAgIDc5LCA2OSwgMTI4LCA4MywgNzIsIDc5LCAxOTcsIDgzLCA3MiwgNzksIDY1LCAxMjgsIDgzLCA3MiwgNzksIDEyOCwgODMsIAorICAgIDcyLCA3MywgODksIDg5LCA2NSwgNjUsIDc2LCA2NSwgNjUsIDEyOCwgODMsIDcyLCA3MywgODQsIDY1LCAxMjgsIDgzLCA3MiwgCisgICAgNzMsIDg0LCAxOTMsIDgzLCA3MiwgNzMsIDgyLCAyMTIsIDgzLCA3MiwgNzMsIDgyLCA2NSwgNjksIDEyOCwgODMsIDcyLCAKKyAgICA3MywgODIsIDEyOCwgODMsIDcyLCA3MywgMjEwLCA4MywgNzIsIDczLCA4MSwgMTI4LCA4MywgNzIsIDczLCA4MCwgMTI4LCAKKyAgICA4MywgNzIsIDczLCA3OCwgODQsIDIwNywgODMsIDcyLCA3MywgNzgsIDczLCA3MSwgMTI4LCA4MywgNzIsIDczLCA3OCwgNjgsIAorICAgIDE5MywgODMsIDcyLCA3MywgNzgsIDEyOCwgODMsIDcyLCA3MywgMjA2LCA4MywgNzIsIDczLCA3NywgNjUsIDEyOCwgODMsIAorICAgIDcyLCA3MywgNzcsIDE5MywgODMsIDcyLCA3MywgNzcsIDEyOCwgODMsIDcyLCA3MywgMjA1LCA4MywgNzIsIDczLCA3MywgCisgICAgNzgsIDEyOCwgODMsIDcyLCA3MywgNzMsIDEyOCwgODMsIDcyLCA3MywgNzAsIDIxMiwgODMsIDcyLCA3MywgNjksIDc2LCAKKyAgICA2OCwgMTI4LCA4MywgNzIsIDczLCA2OCwgMTI4LCA4MywgNzIsIDczLCAxOTYsIDgzLCA3MiwgNzIsIDY1LCAxMjgsIDgzLCAKKyAgICA3MiwgNzIsIDE5MywgODMsIDcyLCA2OSwgODgsIDEyOCwgODMsIDcyLCA2OSwgODYsIDY1LCAxMjgsIDgzLCA3MiwgNjksIAorICAgIDg1LCA4OCwgMTI4LCA4MywgNzIsIDY5LCA4NSwgNzksIDgxLCAxMjgsIDgzLCA3MiwgNjksIDg1LCA2NSwgNjksIDgxLCA4NCwgCisgICAgODUsIDEyOCwgODMsIDcyLCA2OSwgODUsIDY1LCA2OSwgODEsIDEyOCwgODMsIDcyLCA2OSwgODUsIDY1LCA2OSwgMTI4LCAKKyAgICA4MywgNzIsIDY5LCA4NCwgMTI4LCA4MywgNzIsIDY5LCAyMTIsIDgzLCA3MiwgNjksIDgzLCA3MiwgNzYsIDY1LCA3NywgCisgICAgMTI4LCA4MywgNzIsIDY5LCA4MywgNzIsIDczLCA3MSwgMTI4LCA4MywgNzIsIDY5LCA4MywgNzIsIDczLCAxOTksIDgzLCAKKyAgICA3MiwgNjksIDgzLCA3MiwgNTAsIDEyOCwgODMsIDcyLCA2OSwgODMsIDcyLCAxMjgsIDgzLCA3MiwgNjksIDgxLCA2OSwgCisgICAgMjA0LCA4MywgNzIsIDY5LCA4MCwgMTI4LCA4MywgNzIsIDY5LCA3OCwgMTI4LCA4MywgNzIsIDY5LCA3NiwgNzYsIDEyOCwgCisgICAgODMsIDcyLCA2OSwgNzYsIDIwNCwgODMsIDcyLCA2OSwgNzYsIDcwLCAxMjgsIDgzLCA3MiwgNjksIDczLCAxMjgsIDgzLCAKKyAgICA3MiwgNjksIDcxLCA1NywgMTI4LCA4MywgNzIsIDY5LCA2OSwgODAsIDEyOCwgODMsIDcyLCA2OSwgNjksIDc4LCA4NSwgCisgICAgMTI4LCA4MywgNzIsIDY5LCA2OSwgNzgsIDEyOCwgODMsIDcyLCA2OSwgNjksIDIwNiwgODMsIDcyLCA2OSwgNjksIDEyOCwgCisgICAgODMsIDcyLCA2OSwgNDUsIDcxLCA3OSwgNjUsIDg0LCAxMjgsIDgzLCA3MiwgMTk3LCA4MywgNzIsIDY3LCA3MiwgNjUsIAorICAgIDEyOCwgODMsIDcyLCA2NSwgODksIDEyOCwgODMsIDcyLCA2NSwgODgsIDEyOCwgODMsIDcyLCA2NSwgODYsIDczLCA4OSwgCisgICAgNjUsIDc4LCA3MywgMTI4LCA4MywgNzIsIDY1LCA4NiwgNzMsIDY1LCAyMDYsIDgzLCA3MiwgNjUsIDg2LCA2OSwgMTk2LCAKKyAgICA4MywgNzIsIDY1LCA4NSwgMTI4LCA4MywgNzIsIDY1LCA4NCwgMTI4LCA4MywgNzIsIDY1LCA4MiwgODUsIDEyOCwgODMsIAorICAgIDcyLCA2NSwgODIsIDIxMywgODMsIDcyLCA2NSwgODIsIDgwLCAxMjgsIDgzLCA3MiwgNjUsIDgyLCAyMDgsIDgzLCA3MiwgCisgICAgNjUsIDgyLCA2NSwgMTI4LCA4MywgNzIsIDY1LCA4MiwgNTAsIDEyOCwgODMsIDcyLCA2NSwgODIsIDE3OCwgODMsIDcyLCAKKyAgICA2NSwgODAsIDczLCA3OCwgNzEsIDEyOCwgODMsIDcyLCA2NSwgODAsIDY5LCA4MywgMTI4LCA4MywgNzIsIDY1LCA4MCwgCisgICAgMTk3LCA4MywgNzIsIDY1LCA4MCwgMTI4LCA4MywgNzIsIDY1LCA3OCwgNzEsIDEyOCwgODMsIDcyLCA2NSwgNzgsIDEyOCwgCisgICAgODMsIDcyLCA2NSwgMjA2LCA4MywgNzIsIDY1LCA3NywgODIsIDc5LCA2NywgNzUsIDEyOCwgODMsIDcyLCA2NSwgNzYsIDgzLCAKKyAgICA3MiwgNjksIDc2LCA2OSwgODQsIDEyOCwgODMsIDcyLCA2NSwgNzUsIDg0LCA3MywgMTI4LCA4MywgNzIsIDY1LCA3MywgCiAgICAgMTI4LCA4MywgNzIsIDY1LCA2OCwgNzksIDg3LCA2OSwgMTk2LCA4MywgNzIsIDY1LCA2OCwgNjksIDEyOCwgODMsIDcyLCAKICAgICA2NSwgNjgsIDY4LCA2NSwgMTI4LCA4MywgNzIsIDY1LCA2OCwgNjgsIDE5MywgODMsIDcyLCA2NSwgNjgsIDEyOCwgODMsIAogICAgIDcyLCA2NSwgMTk2LCA4MywgNzIsIDY1LCA2NiwgNTQsIDEyOCwgODMsIDcyLCA2NSwgNjUsIDEyOCwgODMsIDcyLCA2NSwgCkBAIC0xMTU2LDEyNSArMTE2MSwxMjcgQEAKICAgICA4MiwgODksIDY1LCAxMjgsIDgyLCA4NywgNzksIDc5LCAxMjgsIDgyLCA4NywgNzksIDEyOCwgODIsIDg3LCA3MywgNzMsIAogICAgIDEyOCwgODIsIDg3LCA3MywgMTI4LCA4MiwgODcsIDY5LCA2OSwgMTI4LCA4MiwgODcsIDY5LCAxMjgsIDgyLCA4NywgNjUsIAogICAgIDcyLCA2NSwgMTI4LCA4MiwgODcsIDY1LCA2NSwgMTI4LCA4MiwgODcsIDY1LCAxMjgsIDgyLCA4NSwgODgsIDEyOCwgODIsIAotICAgIDg1LCA4NSwgNjYsIDg1LCA4MiwgODUsIDEyOCwgODIsIDg1LCA4NCwgMTI4LCA4MiwgODUsIDgzLCA3MywgMTI4LCA4MiwgCi0gICAgODUsIDgyLCA4OCwgMTI4LCA4MiwgODUsIDgyLCAxMjgsIDgyLCA4NSwgODAsIDczLCA3MywgMTI4LCA4MiwgODUsIDgwLCAKLSAgICA2OSwgMTk3LCA4MiwgODUsIDgwLCAxMjgsIDgyLCA4NSwgNzksIDg4LCAxMjgsIDgyLCA4NSwgNzksIDgwLCAxMjgsIDgyLCAKLSAgICA4NSwgNzksIDEyOCwgODIsIDg1LCA3OCwgNzksIDg1LCA4NCwgMTI4LCA4MiwgODUsIDc4LCA3OCwgNzMsIDc4LCAxOTksIAotICAgIDgyLCA4NSwgNzgsIDc4LCA2OSwgODIsIDEyOCwgODIsIDg1LCA3OCwgMTI4LCA4MiwgODUsIDc3LCAyMDEsIDgyLCA4NSwgCi0gICAgNzcsIDY1LCAyMDEsIDgyLCA4NSwgNzcsIDEyOCwgODIsIDg1LCAyMDUsIDgyLCA4NSwgNzYsIDY5LCA4MiwgMTI4LCA4MiwgCi0gICAgODUsIDc2LCA2OSwgNDUsIDY4LCA2OSwgNzYsIDY1LCA4OSwgNjksIDY4LCAxMjgsIDgyLCA4NSwgNzYsIDY5LCAxMjgsIDgyLCAKLSAgICA4NSwgNzUsIDc1LCA2NSwgNzUsIDcyLCA2NSwgMTI4LCA4MiwgODUsIDczLCA4MywgMTI4LCA4MiwgODUsIDcxLCA2NiwgCi0gICAgMjE3LCA4MiwgODUsIDE5NCwgODIsIDg1LCA2NSwgMTI4LCA4MiwgODQsIDcyLCA2NSwgNzgsIDE5OSwgODIsIDg0LCA2NSwgCi0gICAgNzEsIDgzLCAxMjgsIDgyLCA4NCwgNjUsIDcxLCAyMTEsIDgyLCA4MiwgODksIDg4LCAxMjgsIDgyLCA4MiwgODksIDg0LCAKLSAgICAxMjgsIDgyLCA4MiwgODksIDgyLCA4OCwgMTI4LCA4MiwgODIsIDg5LCA4MiwgMTI4LCA4MiwgODIsIDg5LCA4MCwgMTI4LCAKLSAgICA4MiwgODIsIDg1LCA4OCwgMTI4LCA4MiwgODIsIDg1LCA4NCwgMTI4LCA4MiwgODIsIDg1LCA4MiwgODgsIDEyOCwgODIsIAotICAgIDgyLCA4NSwgODIsIDEyOCwgODIsIDgyLCA4NSwgODAsIDEyOCwgODIsIDgyLCA4NSwgNzksIDg4LCAxMjgsIDgyLCA4MiwgCi0gICAgODUsIDc5LCAxMjgsIDgyLCA4MiwgODUsIDEyOCwgODIsIDgyLCA3OSwgODgsIDEyOCwgODIsIDgyLCA3OSwgODQsIDEyOCwgCi0gICAgODIsIDgyLCA3OSwgODAsIDEyOCwgODIsIDgyLCA3OSwgMTI4LCA4MiwgODIsIDY5LCA4OCwgMTI4LCA4MiwgODIsIDY5LCAKLSAgICA4NCwgMTI4LCA4MiwgODIsIDY5LCA4MCwgMTI4LCA4MiwgODIsIDY5LCA3MiwgMTI4LCA4MiwgODIsIDY5LCAyMDAsIDgyLCAKLSAgICA4MiwgNjksIDEyOCwgODIsIDgyLCA2NSwgODgsIDEyOCwgODIsIDgyLCA2NSwgMTI4LCA4MiwgNzksIDg3LCA2NiwgNzksIAotICAgIDY1LCA4NCwgMTI4LCA4MiwgNzksIDg1LCA3OCwgNjgsIDY5LCAxOTYsIDgyLCA3OSwgODUsIDc4LCA2OCwgNDUsIDg0LCA3MywgCi0gICAgODAsIDgwLCA2OSwgMTk2LCA4MiwgNzksIDg0LCA4NSwgNzgsIDY4LCA2NSwgMTI4LCA4MiwgNzksIDg0LCA2NSwgODQsIDY5LCAKLSAgICAxOTYsIDgyLCA3OSwgODMsIDcyLCAxMjgsIDgyLCA3OSwgODMsIDY5LCA4NCwgODQsIDY5LCAxMjgsIDgyLCA3OSwgODMsIAotICAgIDY5LCAxMjgsIDgyLCA3OSwgNzksIDg0LCAxMjgsIDgyLCA3OSwgNzksIDgzLCA4NCwgNjksIDgyLCAxMjgsIDgyLCA3OSwgCi0gICAgNzksIDc1LCAxMjgsIDgyLCA3OSwgNzksIDcwLCAxMjgsIDgyLCA3OSwgNzksIDEyOCwgODIsIDc5LCA3NywgNjUsIDIwNiwgCi0gICAgODIsIDc5LCA3NywgMTI4LCA4MiwgNzksIDc2LCA3NiwgNjksIDIxMCwgODIsIDc5LCAxOTYsIDgyLCA3OSwgNjcsIDc1LCAKLSAgICA2OSwgODQsIDEyOCwgODIsIDc5LCA2NywgMjAzLCA4MiwgNzksIDY3LCAxMjgsIDgyLCA3OSwgNjYsIDY1LCA4NCwgMTI4LCAKLSAgICA4MiwgNzksIDY1LCA4MywgODQsIDY5LCAxOTYsIDgyLCA3OSwgNjUsIDgyLCAxMjgsIDgyLCA3OSwgNjUsIDEyOCwgODIsIAotICAgIDc4LCA4OSwgNzMsIDc4LCAxOTksIDgyLCA3OCwgNzksIDc5LCA3OCwgMTI4LCA4MiwgNzgsIDc5LCA3OSwgMjA2LCA4MiwgCi0gICAgNzgsIDY1LCAyMDUsIDgyLCA3NCwgNjksIDIxMSwgODIsIDc0LCA2OSwgMTI4LCA4MiwgNzQsIDE5NywgODIsIDczLCA4NiwgCi0gICAgNjksIDgyLCAxMjgsIDgyLCA3MywgODQsIDg1LCA2NSwgNzYsIDEyOCwgODIsIDczLCA4NCwgODQsIDc5LCA4MiwgODUsIAotICAgIDEyOCwgODIsIDczLCA4NCwgODMsIDczLCAxMjgsIDgyLCA3MywgODMsIDczLCA3OCwgMTk5LCA4MiwgNzMsIDgzLCA3MiwgCi0gICAgMTI4LCA4MiwgNzMsIDgyLCA2NSwgMTI4LCA4MiwgNzMsIDgwLCAxMjgsIDgyLCA3MywgNzgsIDcxLCAyMTEsIDgyLCA3MywgCi0gICAgNzgsIDcwLCA3OSwgODIsIDkwLCA2NSwgNzgsIDY4LCA3OSwgMTI4LCA4MiwgNzMsIDIwNiwgODIsIDczLCA3NywgNzEsIDY2LCAKLSAgICA2NSwgMTI4LCA4MiwgNzMsIDc1LCA4MiwgNzMsIDc1LCAxMjgsIDgyLCA3MywgNzMsIDEyOCwgODIsIDczLCA3MSwgODYsIAotICAgIDY5LCA2OCwgNzMsIDE5NSwgODIsIDczLCA3MSwgNzIsIDg0LCA4NywgNjUsIDgyLCA2OCwgODMsIDEyOCwgODIsIDczLCA3MSwgCi0gICAgNzIsIDg0LCA3MiwgNjUsIDc4LCAxOTYsIDgyLCA3MywgNzEsIDcyLCA4NCwgNDUsIDg0LCA3OSwgNDUsIDc2LCA2OSwgNzAsIAotICAgIDIxMiwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgODMsIDczLCA2OCwgMTk3LCA4MiwgNzMsIDcxLCA3MiwgODQsIDQ1LCA4MywgCi0gICAgNzIsIDY1LCA2OCwgNzksIDg3LCA2OSwgMTk2LCA4MiwgNzMsIDcxLCA3MiwgODQsIDQ1LCA4MywgNzIsIDY1LCA2OCwgNjksIAotICAgIDE5NiwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgODAsIDc5LCA3MywgNzgsIDg0LCA3MywgNzgsIDE5OSwgODIsIDczLCA3MSwgCi0gICAgNzIsIDg0LCA0NSwgNzIsIDY1LCA3OCwgNjgsIDY5LCAxOTYsIDgyLCA3MywgNzEsIDcyLCA4NCwgNDUsIDcyLCA2NSwgNzgsIAotICAgIDE5NiwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgNzAsIDY1LCA2NywgNzMsIDc4LCAxOTksIDgyLCA3MywgNzEsIDcyLCA4NCwgCi0gICAgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4OSwgNjksIDgzLCA3MywgNjksIDg1LCA3OCwgNzEsIDEyOCwgODIsIDczLCAKLSAgICA2OSwgODUsIDc2LCA0NSwgODksIDY5LCA3OSwgODIsIDczLCA3OCwgNzIsIDczLCA2OSwgODUsIDcyLCA0NSwgNzIsIDczLCAKLSAgICA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDg5LCA2OSwgNzksIDgyLCA3MywgNzgsIDcyLCA3MywgCi0gICAgNjksIDg1LCA3MiwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCA0NSwgNzIsIAotICAgIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgCi0gICAgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgNzIsIDEyOCwgODIsIDczLCA2OSwgODUsIAotICAgIDc2LCA0NSwgODMsIDgzLCA2NSwgNzgsIDcxLCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAxMjgsIDgyLCA3MywgNjksIDg1LCAKLSAgICA3NiwgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgODMsIDczLCA3OSwgODMsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgCi0gICAgODMsIDgzLCA2NSwgNzgsIDcxLCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODMsIAotICAgIDgzLCA2NSwgNzgsIDcxLCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgzLCAKLSAgICA3MywgNzksIDgzLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDg0LCA3MywgCi0gICAgNzUsIDY5LCA4NSwgODQsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgODMsIAotICAgIDczLCA3OSwgODMsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgODAsIDcyLCAKLSAgICA3MywgNjksIDg1LCA4MCwgNzIsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgCi0gICAgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCAKLSAgICA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgCi0gICAgNzYsIDQ1LCA4MCwgNjUsIDc4LCA4MywgNzMsIDc5LCA4MywgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA3OCwgNzMsIAotICAgIDY5LCA4NSwgNzgsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgODMsIDczLCAKLSAgICA3OSwgODMsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgNzUsIDczLCA4OSwgCi0gICAgNjksIDc5LCA3NSwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA3MiwgNzMsIAotICAgIDY5LCA4NSwgNzIsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzcsIDczLCA2OSwgODUsIDc3LCAxMjgsIDgyLCA3MywgCi0gICAgNjksIDg1LCA3NiwgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA4MywgNzMsIDc5LCA4MywgMTI4LCA4MiwgNzMsIAotICAgIDY5LCA4NSwgNzYsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCAKLSAgICA3MywgNjksIDg1LCA3NiwgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgCi0gICAgNzUsIDY1LCA4MCwgODksIDY5LCA3OSwgODUsIDc4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgODIsIDczLCA2OSwgODUsIAotICAgIDc2LCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDY3LCA3MywgNjksIDg1LCAKLSAgICA2NywgMTI4LCA4MiwgNzMsIDY5LCA4NSwgMjA0LCA4MiwgNzMsIDY5LCA3NiwgMTI4LCA4MiwgNzMsIDY5LCA2OSwgMTI4LCAKLSAgICA4MiwgNzMsIDY3LCA2OSwgNzcsIDEyOCwgODIsIDczLCA2NywgNjksIDEyOCwgODIsIDczLCA2NywgMTk3LCA4MiwgNzMsIAotICAgIDY2LCA2NiwgNzksIDc4LCAxMjgsIDgyLCA3MywgNjUsIDIwNCwgODIsIDcyLCA3OSwgODQsIDczLCAxOTUsIDgyLCA3MiwgCi0gICAgNzksIDEyOCwgODIsIDcyLCAyMDcsIDgyLCA3MiwgNjUsIDEyOCwgODIsIDcxLCA4OSwgNzMsIDc4LCA3MSwgODMsIDEyOCwgCi0gICAgODIsIDcxLCA4OSwgNjUsIDc4LCAxMjgsIDgyLCA3MSwgODksIDE5MywgODIsIDY5LCA4NiwgNzksIDc2LCA4NiwgNzMsIDc4LCAKLSAgICAxOTksIDgyLCA2OSwgODYsIDc5LCA3NiwgODUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgyLCA2OSwgODYsIDc3LCA2NSwgCi0gICAgMTI4LCA4MiwgNjksIDg2LCA3MywgNjUsIDEyOCwgODIsIDY5LCA4NiwgNjksIDgyLCA4MywgNjksIDY4LCAxMjgsIDgyLCAKLSAgICA2OSwgODYsIDY5LCA4MiwgODMsIDY5LCAxOTYsIDgyLCA2OSwgODYsIDY5LCA4MiwgODMsIDE5NywgODIsIDY5LCA4NSwgODgsIAotICAgIDEyOCwgODIsIDY5LCA4NCwgODUsIDgyLCA3OCwgMTI4LCA4MiwgNjksIDg0LCA4NSwgODIsIDIwNiwgODIsIDY5LCA4NCwgCi0gICAgODIsIDc5LCA3MCwgNzYsIDY5LCAyMTYsIDgyLCA2OSwgODQsIDgyLCA2OSwgNjUsIDg0LCAxMjgsIDgyLCA2OSwgODQsIDc5LCAKLSAgICA4MiwgODQsIDEyOCwgODIsIDY5LCA4MywgODUsIDgwLCA3MywgNzgsIDg1LCA4MywgMTI4LCA4MiwgNjksIDgzLCA4NCwgODIsIAotICAgIDc5LCA3OSwgNzcsIDEyOCwgODIsIDY5LCA4MywgODQsIDgyLCA3MywgNjcsIDg0LCA2OSwgMTk2LCA4MiwgNjksIDgzLCA4NCwgCi0gICAgMTI4LCA4MiwgNjksIDgzLCA4MCwgNzksIDc4LCA4MywgNjksIDEyOCwgODIsIDY5LCA4MywgNzksIDg1LCA4MiwgNjcsIDY5LCAKLSAgICAxMjgsIDgyLCA2OSwgODMsIDc5LCA3NiwgODUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgyLCA2OSwgODMsIDczLCA4MywgODQsIAotICAgIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDgyLCA2OSwgODMsIDczLCA2OCwgNjksIDc4LCA2NywgNjksIDEyOCwgODIsIDY5LCA4MywgCi0gICAgMjAwLCA4MiwgNjksIDgyLCA2OSwgNzgsIDcxLCA3MSwgNjUsIDc4LCAxMjgsIDgyLCA2OSwgODIsIDY5LCA3NSwgNjUsIDc4LCAKLSAgICAxMjgsIDgyLCA2OSwgODAsIDgyLCA2OSwgODMsIDY5LCA3OCwgODQsIDEyOCwgODIsIDY5LCA4MCwgNzYsIDY1LCA2NywgNjksIAotICAgIDc3LCA2OSwgNzgsIDIxMiwgODIsIDY5LCA4MCwgNzIsIDEyOCwgODIsIDY5LCA4MCwgNjksIDY1LCA4NCwgNjksIDE5NiwgCi0gICAgODIsIDY5LCA4MCwgNjksIDY1LCA4NCwgMTI4LCA4MiwgNjksIDgwLCA2OSwgNjUsIDIxMiwgODIsIDY5LCA4MCwgNjUsIAotICAgIDEyOCwgODIsIDY5LCA4MCwgMTkzLCA4MiwgNjksIDc4LCA4NCwgNzksIDcxLCA2OSwgNzgsIDEyOCwgODIsIDY5LCA3OCwgCi0gICAgMTI4LCA4MiwgNjksIDIwNiwgODIsIDY5LCA3NywgODUsIDEyOCwgODIsIDY5LCA3NywgNjksIDY4LCA4OSwgMTI4LCA4MiwgCi0gICAgNjksIDc2LCA3MywgNzEsIDczLCA3OSwgNzgsIDEyOCwgODIsIDY5LCA3NiwgNzMsIDY5LCA4NiwgNjksIDE5NiwgODIsIDY5LCAKLSAgICA3NiwgNjksIDY1LCA4MywgNjksIDEyOCwgODIsIDY5LCA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCA2NSwgMjA0LCA4MiwgNjksIAotICAgIDc2LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgODIsIDY5LCA3NiwgNjUsIDY1LCAxMjgsIDgyLCA2OSwgNzQsIDY1LCA3OCwgCi0gICAgMTk5LCA4MiwgNjksIDczLCAxOTYsIDgyLCA2OSwgNzEsIDg1LCA3NiwgODUsIDgzLCA0NSwgNTIsIDEyOCwgODIsIDY5LCAKLSAgICA3MSwgODUsIDc2LCA4NSwgODMsIDQ1LCA1MSwgMTI4LCA4MiwgNjksIDcxLCA4NSwgNzYsIDg1LCA4MywgNDUsIDUwLCAxMjgsIAotICAgIDgyLCA2OSwgNzEsIDg1LCA3NiwgODUsIDgzLCAxMjgsIDgyLCA2OSwgNzEsIDg1LCA3NiwgODUsIDIxMSwgODIsIDY5LCA3MSwgCi0gICAgNzMsIDgzLCA4NCwgNjksIDgyLCA2OSwgMTk2LCA4MiwgNjksIDcxLCA3MywgNzksIDc4LCA2NSwgMjA0LCA4MiwgNjksIDcxLCAKLSAgICA3MywgNjUsIDQ1LCA1MCwgMTI4LCA4MiwgNjksIDcxLCA3MywgNjUsIDEyOCwgODIsIDY5LCA3MCwgNjksIDgyLCA2OSwgNzgsIAotICAgIDY3LCAxOTcsIDgyLCA2OSwgNjgsIDg1LCA4MCwgNzYsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgyLCA2OSwgCi0gICAgNjcsIDg5LCA2NywgNzYsIDczLCA3OCwgMTk5LCA4MiwgNjksIDY3LCA4OSwgNjcsIDc2LCA2OSwgMTk2LCA4MiwgNjksIDY3LCAKLSAgICA4NCwgNzMsIDc2LCA3MywgNzgsIDY5LCA2NSwgMjEwLCA4MiwgNjksIDY3LCA4NCwgNjUsIDc4LCA3MSwgODUsIDc2LCA2NSwgCi0gICAgMjEwLCA4MiwgNjksIDY3LCA4NCwgNjUsIDc4LCA3MSwgNzYsIDY5LCAxMjgsIDgyLCA2OSwgNjcsIDg0LCA2NSwgNzgsIDcxLCAKLSAgICA3NiwgMTk3LCA4MiwgNjksIDY3LCA4MiwgNjksIDY1LCA4NCwgNzMsIDc5LCA3OCwgNjUsIDIwNCwgODIsIDY5LCA2NywgNzksIAotICAgIDgyLCA2OCwgNzMsIDc4LCAxOTksIDgyLCA2OSwgNjcsIDc5LCA4MiwgNjgsIDY5LCA4MiwgMTI4LCA4MiwgNjksIDY3LCA3OSwgCi0gICAgODIsIDE5NiwgODIsIDY5LCA2NywgNjksIDgwLCA4NCwgNzMsIDg2LCAxOTcsIDgyLCA2OSwgNjcsIDY5LCA3MywgODYsIDY5LCAKLSAgICA4MiwgMTI4LCA4MiwgNjksIDY1LCA3NiwgNzEsIDY1LCA4MiwgNDUsIDUwLCAxMjgsIDgyLCA2OSwgNjUsIDc2LCA3MSwgNjUsIAotICAgIDgyLCAxMjgsIDgyLCA2OSwgNjUsIDcyLCA3NywgODUsIDc1LCAxMjgsIDgyLCA2OSwgNjUsIDY3LCA3MiwgMTI4LCA4MiwgCi0gICAgNjgsIDIwNywgODIsIDY4LCA2OSwgMjA0LCA4MiwgNjYsIDY1LCA4MywgMTkzLCA4MiwgNjUsIDg5LCA4MywgMTI4LCA4MiwgCi0gICAgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA4MiwgNjUsIDg0LCA3MywgNzksIDEyOCwgODIsIDY1LCA4NCwgNzIsIDY1LCAKLSAgICAxMjgsIDgyLCA2NSwgODQsIDcyLCAxOTMsIDgyLCA2NSwgODQsIDY1LCAxMjgsIDgyLCA2NSwgODQsIDEyOCwgODIsIDY1LCAKLSAgICA4MywgODcsIDY1LCA2OCwgNzMsIDEyOCwgODIsIDY1LCA4MywgNzksIDg1LCAyMDQsIDgyLCA2NSwgODMsIDcyLCA2NSwgCi0gICAgMTI4LCA4MiwgNjUsIDgxLCAxMjgsIDgyLCA2NSwgODAsIDczLCA4MywgNzcsIDY1LCAxMjgsIDgyLCA2NSwgNzgsIDcxLCAKLSAgICAxOTcsIDgyLCA2NSwgNzgsIDY1LCAxMjgsIDgyLCA2NSwgNzgsIDEyOCwgODIsIDY1LCA3NywgMjExLCA4MiwgNjUsIDc3LCAKLSAgICA2NiwgNjUsIDg0LCAxMjgsIDgyLCA2NSwgNzUsIDcyLCA2NSwgNzgsIDcxLCAxMjgsIDgyLCA2NSwgNzMsIDgzLCA3MywgNzgsIAotICAgIDE5OSwgODIsIDY1LCA3MywgODMsIDY5LCAxOTYsIDgyLCA2NSwgNzMsIDc4LCA2NiwgNzksIDg3LCAxMjgsIDgyLCA2NSwgCi0gICAgNzMsIDc2LCA4NywgNjUsIDg5LCAxMjgsIDgyLCA2NSwgNzMsIDc2LCA4NywgNjUsIDIxNywgODIsIDY1LCA3MywgNzYsIAotICAgIDEyOCwgODIsIDY1LCA3MywgNjgsIDIwNywgODIsIDY1LCA3MywgNjgsIDY1LCAxMjgsIDgyLCA2NSwgNzMsIDEyOCwgODIsIAotICAgIDY1LCA3MiwgNzcsIDY1LCA4NCwgODUsIDc2LCA3NiwgNjUsIDIwMCwgODIsIDY1LCA3MCwgNjksIDEyOCwgODIsIDY1LCA2OSwgCi0gICAgNzcsIDEyOCwgODIsIDY1LCA2OCwgNzMsIDc5LCA2NSwgNjcsIDg0LCA3MywgODYsIDE5NywgODIsIDY1LCA2OCwgNzMsIDc5LCAKLSAgICAxMjgsIDgyLCA2NSwgNjgsIDczLCAyMDcsIDgyLCA2NSwgNjgsIDIwMSwgODIsIDY1LCA2OCwgMTI4LCA4MiwgNjUsIDE5NiwgCi0gICAgODIsIDY1LCA2NywgODEsIDg1LCA2OSwgMjEyLCA4MiwgNjUsIDY3LCA3MywgNzgsIDcxLCAxMjgsIDgyLCA2NSwgNjYsIDY2LCAKLSAgICA3MywgODQsIDEyOCwgODIsIDY1LCA2NiwgNjYsIDczLCAyMTIsIDgyLCA2NSwgNjYsIDEyOCwgODIsIDY1LCA2NSwgNzMsIAotICAgIDEyOCwgODIsIDY1LCA2NSwgMTI4LCA4MiwgNjUsIDUxLCAxMjgsIDgyLCA2NSwgNTAsIDEyOCwgODIsIDQ4LCA1MCwgNTcsIAorICAgIDg1LCA4NSwgNjYsIDg1LCA4MiwgODUsIDEyOCwgODIsIDg1LCA4NSwgMTI4LCA4MiwgODUsIDg0LCAxMjgsIDgyLCA4NSwgCisgICAgODMsIDczLCAxMjgsIDgyLCA4NSwgODIsIDg4LCAxMjgsIDgyLCA4NSwgODIsIDEyOCwgODIsIDg1LCA4MCwgNzMsIDczLCAKKyAgICAxMjgsIDgyLCA4NSwgODAsIDY5LCAxOTcsIDgyLCA4NSwgODAsIDEyOCwgODIsIDg1LCA3OSwgODgsIDEyOCwgODIsIDg1LCAKKyAgICA3OSwgODAsIDEyOCwgODIsIDg1LCA3OSwgMTI4LCA4MiwgODUsIDc4LCA3OSwgODUsIDg0LCAxMjgsIDgyLCA4NSwgNzgsIAorICAgIDc4LCA3MywgNzgsIDE5OSwgODIsIDg1LCA3OCwgNzgsIDY5LCA4MiwgMTI4LCA4MiwgODUsIDc4LCAxMjgsIDgyLCA4NSwgCisgICAgNzcsIDIwMSwgODIsIDg1LCA3NywgNjUsIDIwMSwgODIsIDg1LCA3NywgMTI4LCA4MiwgODUsIDIwNSwgODIsIDg1LCA3NiwgCisgICAgNjksIDgyLCAxMjgsIDgyLCA4NSwgNzYsIDY5LCA0NSwgNjgsIDY5LCA3NiwgNjUsIDg5LCA2OSwgNjgsIDEyOCwgODIsIDg1LCAKKyAgICA3NiwgNjksIDEyOCwgODIsIDg1LCA3NSwgNzUsIDY1LCA3NSwgNzIsIDY1LCAxMjgsIDgyLCA4NSwgNzMsIDgzLCAxMjgsIAorICAgIDgyLCA4NSwgNzEsIDY2LCAyMTcsIDgyLCA4NSwgMTk0LCA4MiwgODUsIDY1LCAxMjgsIDgyLCA4NCwgNzIsIDY1LCA3OCwgCisgICAgMTk5LCA4MiwgODQsIDY1LCA3MSwgODMsIDEyOCwgODIsIDg0LCA2NSwgNzEsIDIxMSwgODIsIDgyLCA4OSwgODgsIDEyOCwgCisgICAgODIsIDgyLCA4OSwgODQsIDEyOCwgODIsIDgyLCA4OSwgODIsIDg4LCAxMjgsIDgyLCA4MiwgODksIDgyLCAxMjgsIDgyLCAKKyAgICA4MiwgODksIDgwLCAxMjgsIDgyLCA4MiwgODUsIDg4LCAxMjgsIDgyLCA4MiwgODUsIDg1LCAxMjgsIDgyLCA4MiwgODUsIAorICAgIDg0LCAxMjgsIDgyLCA4MiwgODUsIDgyLCA4OCwgMTI4LCA4MiwgODIsIDg1LCA4MiwgMTI4LCA4MiwgODIsIDg1LCA4MCwgCisgICAgMTI4LCA4MiwgODIsIDg1LCA3OSwgODgsIDEyOCwgODIsIDgyLCA4NSwgNzksIDEyOCwgODIsIDgyLCA4NSwgMTI4LCA4MiwgCisgICAgODIsIDc5LCA4OCwgMTI4LCA4MiwgODIsIDc5LCA4NCwgMTI4LCA4MiwgODIsIDc5LCA4MCwgMTI4LCA4MiwgODIsIDc5LCAKKyAgICA3OSwgMTI4LCA4MiwgODIsIDc5LCAxMjgsIDgyLCA4MiwgNzMsIDczLCAxMjgsIDgyLCA4MiwgNzMsIDEyOCwgODIsIDgyLCAKKyAgICA2OSwgODgsIDEyOCwgODIsIDgyLCA2OSwgODQsIDEyOCwgODIsIDgyLCA2OSwgODAsIDEyOCwgODIsIDgyLCA2OSwgNzIsIAorICAgIDEyOCwgODIsIDgyLCA2OSwgMjAwLCA4MiwgODIsIDY5LCA2OSwgMTI4LCA4MiwgODIsIDY5LCAxMjgsIDgyLCA4MiwgNjUsIAorICAgIDg4LCAxMjgsIDgyLCA4MiwgNjUsIDg1LCAxMjgsIDgyLCA4MiwgNjUsIDczLCAxMjgsIDgyLCA4MiwgNjUsIDY1LCAxMjgsIAorICAgIDgyLCA4MiwgNjUsIDEyOCwgODIsIDc5LCA4NywgNjYsIDc5LCA2NSwgODQsIDEyOCwgODIsIDc5LCA4NSwgNzgsIDY4LCA2OSwgCisgICAgMTk2LCA4MiwgNzksIDg1LCA3OCwgNjgsIDQ1LCA4NCwgNzMsIDgwLCA4MCwgNjksIDE5NiwgODIsIDc5LCA4NCwgODUsIDc4LCAKKyAgICA2OCwgNjUsIDEyOCwgODIsIDc5LCA4NCwgNjUsIDg0LCA2OSwgMTk2LCA4MiwgNzksIDgzLCA3MiwgMTI4LCA4MiwgNzksIAorICAgIDgzLCA2OSwgODQsIDg0LCA2OSwgMTI4LCA4MiwgNzksIDgzLCA2OSwgMTI4LCA4MiwgNzksIDc5LCA4NCwgMTI4LCA4MiwgCisgICAgNzksIDc5LCA4MywgODQsIDY5LCA4MiwgMTI4LCA4MiwgNzksIDc5LCA3NSwgMTI4LCA4MiwgNzksIDc5LCA3MCwgMTI4LCAKKyAgICA4MiwgNzksIDc3LCA2NSwgMjA2LCA4MiwgNzksIDc3LCAxMjgsIDgyLCA3OSwgNzYsIDc2LCA2OSwgMjEwLCA4MiwgNzksIAorICAgIDE5NiwgODIsIDc5LCA2NywgNzUsIDY5LCA4NCwgMTI4LCA4MiwgNzksIDY3LCAyMDMsIDgyLCA3OSwgNjcsIDEyOCwgODIsIAorICAgIDc5LCA2NiwgNjUsIDg0LCAxMjgsIDgyLCA3OSwgNjUsIDgzLCA4NCwgNjksIDE5NiwgODIsIDc5LCA2NSwgODIsIDEyOCwgCisgICAgODIsIDc5LCA2NSwgMTI4LCA4MiwgNzgsIDg5LCA3MywgNzgsIDE5OSwgODIsIDc4LCA3OSwgNzksIDc4LCAxMjgsIDgyLCAKKyAgICA3OCwgNzksIDc5LCAyMDYsIDgyLCA3OCwgNjUsIDIwNSwgODIsIDc0LCA2OSwgMjExLCA4MiwgNzQsIDY5LCAxMjgsIDgyLCAKKyAgICA3NCwgMTk3LCA4MiwgNzMsIDg2LCA2OSwgODIsIDEyOCwgODIsIDczLCA4NCwgODUsIDY1LCA3NiwgMTI4LCA4MiwgNzMsIAorICAgIDg0LCA4NCwgNzksIDgyLCA4NSwgMTI4LCA4MiwgNzMsIDg0LCA4MywgNzMsIDEyOCwgODIsIDczLCA4MywgNzMsIDc4LCAKKyAgICAxOTksIDgyLCA3MywgODMsIDcyLCAxMjgsIDgyLCA3MywgODIsIDY1LCAxMjgsIDgyLCA3MywgODAsIDEyOCwgODIsIDczLCAKKyAgICA3OCwgNzEsIDIxMSwgODIsIDczLCA3OCwgNzAsIDc5LCA4MiwgOTAsIDY1LCA3OCwgNjgsIDc5LCAxMjgsIDgyLCA3MywgCisgICAgMjA2LCA4MiwgNzMsIDc3LCA3MSwgNjYsIDY1LCAxMjgsIDgyLCA3MywgNzUsIDgyLCA3MywgNzUsIDEyOCwgODIsIDczLCAKKyAgICA3MSwgODYsIDY5LCA2OCwgNzMsIDE5NSwgODIsIDczLCA3MSwgNzIsIDg0LCA4NywgNjUsIDgyLCA2OCwgODMsIDEyOCwgODIsIAorICAgIDczLCA3MSwgNzIsIDg0LCA3MiwgNjUsIDc4LCAxOTYsIDgyLCA3MywgNzEsIDcyLCA4NCwgNDUsIDg0LCA3OSwgNDUsIDc2LCAKKyAgICA2OSwgNzAsIDIxMiwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgODMsIDczLCA2OCwgMTk3LCA4MiwgNzMsIDcxLCA3MiwgODQsIAorICAgIDQ1LCA4MywgNzIsIDY1LCA2OCwgNzksIDg3LCA2OSwgMTk2LCA4MiwgNzMsIDcxLCA3MiwgODQsIDQ1LCA4MywgNzIsIDY1LCAKKyAgICA2OCwgNjksIDE5NiwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgODAsIDc5LCA3MywgNzgsIDg0LCA3MywgNzgsIDE5OSwgODIsIAorICAgIDczLCA3MSwgNzIsIDg0LCA0NSwgNzIsIDY1LCA3OCwgNjgsIDY5LCAxOTYsIDgyLCA3MywgNzEsIDcyLCA4NCwgNDUsIDcyLCAKKyAgICA2NSwgNzgsIDE5NiwgODIsIDczLCA3MSwgNzIsIDg0LCA0NSwgNzAsIDY1LCA2NywgNzMsIDc4LCAxOTksIDgyLCA3MywgNzEsIAorICAgIDcyLCA4NCwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4OSwgNjksIDgzLCA3MywgNjksIDg1LCA3OCwgNzEsIDEyOCwgCisgICAgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODksIDY5LCA3OSwgODIsIDczLCA3OCwgNzIsIDczLCA2OSwgODUsIDcyLCA0NSwgCisgICAgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDg5LCA2OSwgNzksIDgyLCA3MywgNzgsIAorICAgIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAKKyAgICA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDg0LCA3MywgNzUsIDY5LCA4NSwgCisgICAgODQsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODQsIDcyLCA3MywgNjksIDg1LCA4NCwgNzIsIDEyOCwgODIsIDczLCAKKyAgICA2OSwgODUsIDc2LCA0NSwgODMsIDgzLCA2NSwgNzgsIDcxLCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAxMjgsIDgyLCA3MywgCisgICAgNjksIDg1LCA3NiwgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgODMsIDczLCA3OSwgODMsIDEyOCwgODIsIDczLCA2OSwgODUsIAorICAgIDc2LCA0NSwgODMsIDgzLCA2NSwgNzgsIDcxLCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCAKKyAgICA0NSwgODMsIDgzLCA2NSwgNzgsIDcxLCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgCisgICAgNDUsIDgzLCA3MywgNzksIDgzLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIAorICAgIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAKKyAgICA0NSwgODMsIDczLCA3OSwgODMsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgCisgICAgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgODAsIDczLCA2OSwgODUsIAorICAgIDgwLCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDgwLCA3MywgNjksIDg1LCAKKyAgICA4MCwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgMTI4LCA4MiwgNzMsIAorICAgIDY5LCA4NSwgNzYsIDQ1LCA4MCwgNjUsIDc4LCA4MywgNzMsIDc5LCA4MywgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCAKKyAgICA3OCwgNzMsIDY5LCA4NSwgNzgsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgCisgICAgODMsIDczLCA3OSwgODMsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgNzUsIAorICAgIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCAKKyAgICA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgODIsIDczLCA2OSwgODUsIDc2LCA0NSwgNzcsIDczLCA2OSwgODUsIDc3LCAxMjgsIAorICAgIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA4MywgNzMsIDc5LCA4MywgMTI4LCAKKyAgICA4MiwgNzMsIDY5LCA4NSwgNzYsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAKKyAgICAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgODIsIDczLCA2OSwgODUsIAorICAgIDc2LCA0NSwgNzUsIDY1LCA4MCwgODksIDY5LCA3OSwgODUsIDc4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgODIsIDczLCAKKyAgICA2OSwgODUsIDc2LCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgyLCA3MywgNjksIDg1LCA3NiwgNDUsIDY3LCA3MywgCisgICAgNjksIDg1LCA2NywgMTI4LCA4MiwgNzMsIDY5LCA4NSwgMjA0LCA4MiwgNzMsIDY5LCA3NiwgMTI4LCA4MiwgNzMsIDY5LCAKKyAgICA2OSwgMTI4LCA4MiwgNzMsIDY3LCA2OSwgNzcsIDEyOCwgODIsIDczLCA2NywgNjksIDEyOCwgODIsIDczLCA2NywgMTk3LCAKKyAgICA4MiwgNzMsIDY2LCA2NiwgNzksIDc4LCAxMjgsIDgyLCA3MywgNjUsIDIwNCwgODIsIDcyLCA3OSwgODQsIDczLCAxOTUsIAorICAgIDgyLCA3MiwgNzksIDEyOCwgODIsIDcyLCAyMDcsIDgyLCA3MiwgNjUsIDEyOCwgODIsIDcxLCA4OSwgNzMsIDc4LCA3MSwgCisgICAgODMsIDEyOCwgODIsIDcxLCA4OSwgNjUsIDc4LCAxMjgsIDgyLCA3MSwgODksIDE5MywgODIsIDY5LCA4NiwgNzksIDc2LCAKKyAgICA4NiwgNzMsIDc4LCAxOTksIDgyLCA2OSwgODYsIDc5LCA3NiwgODUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgyLCA2OSwgODYsIAorICAgIDc3LCA2NSwgMTI4LCA4MiwgNjksIDg2LCA3MywgNjUsIDEyOCwgODIsIDY5LCA4NiwgNjksIDgyLCA4MywgNjksIDY4LCAKKyAgICAxMjgsIDgyLCA2OSwgODYsIDY5LCA4MiwgODMsIDY5LCAxOTYsIDgyLCA2OSwgODYsIDY5LCA4MiwgODMsIDE5NywgODIsIAorICAgIDY5LCA4NSwgODgsIDEyOCwgODIsIDY5LCA4NCwgODUsIDgyLCA3OCwgMTI4LCA4MiwgNjksIDg0LCA4NSwgODIsIDIwNiwgCisgICAgODIsIDY5LCA4NCwgODIsIDc5LCA3MCwgNzYsIDY5LCAyMTYsIDgyLCA2OSwgODQsIDgyLCA2OSwgNjUsIDg0LCAxMjgsIDgyLCAKKyAgICA2OSwgODQsIDc5LCA4MiwgODQsIDEyOCwgODIsIDY5LCA4MywgODUsIDgwLCA3MywgNzgsIDg1LCA4MywgMTI4LCA4MiwgNjksIAorICAgIDgzLCA4NCwgODIsIDc5LCA3OSwgNzcsIDEyOCwgODIsIDY5LCA4MywgODQsIDgyLCA3MywgNjcsIDg0LCA2OSwgMTk2LCA4MiwgCisgICAgNjksIDgzLCA4NCwgMTI4LCA4MiwgNjksIDgzLCA4MCwgNzksIDc4LCA4MywgNjksIDEyOCwgODIsIDY5LCA4MywgNzksIDg1LCAKKyAgICA4MiwgNjcsIDY5LCAxMjgsIDgyLCA2OSwgODMsIDc5LCA3NiwgODUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgyLCA2OSwgODMsIAorICAgIDczLCA4MywgODQsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDgyLCA2OSwgODMsIDczLCA2OCwgNjksIDc4LCA2NywgNjksIDEyOCwgCisgICAgODIsIDY5LCA4MywgMjAwLCA4MiwgNjksIDgyLCA2OSwgNzgsIDcxLCA3MSwgNjUsIDc4LCAxMjgsIDgyLCA2OSwgODIsIDY5LCAKKyAgICA3NSwgNjUsIDc4LCAxMjgsIDgyLCA2OSwgODAsIDgyLCA2OSwgODMsIDY5LCA3OCwgODQsIDEyOCwgODIsIDY5LCA4MCwgNzYsIAorICAgIDY1LCA2NywgNjksIDc3LCA2OSwgNzgsIDIxMiwgODIsIDY5LCA4MCwgNzIsIDEyOCwgODIsIDY5LCA4MCwgNjksIDY1LCA4NCwgCisgICAgNjksIDE5NiwgODIsIDY5LCA4MCwgNjksIDY1LCA4NCwgMTI4LCA4MiwgNjksIDgwLCA2OSwgNjUsIDIxMiwgODIsIDY5LCAKKyAgICA4MCwgNjUsIDEyOCwgODIsIDY5LCA4MCwgMTkzLCA4MiwgNjksIDc4LCA4NCwgNzksIDcxLCA2OSwgNzgsIDEyOCwgODIsIAorICAgIDY5LCA3OCwgMTI4LCA4MiwgNjksIDIwNiwgODIsIDY5LCA3NywgODUsIDEyOCwgODIsIDY5LCA3NywgNjksIDY4LCA4OSwgCisgICAgMTI4LCA4MiwgNjksIDc2LCA3MywgNzEsIDczLCA3OSwgNzgsIDEyOCwgODIsIDY5LCA3NiwgNzMsIDY5LCA4NiwgNjksIAorICAgIDE5NiwgODIsIDY5LCA3NiwgNjksIDY1LCA4MywgNjksIDEyOCwgODIsIDY5LCA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCA2NSwgCisgICAgMjA0LCA4MiwgNjksIDc2LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgODIsIDY5LCA3NiwgNjUsIDY1LCAxMjgsIDgyLCAKKyAgICA2OSwgNzQsIDY1LCA3OCwgMTk5LCA4MiwgNjksIDczLCAxOTYsIDgyLCA2OSwgNzEsIDg1LCA3NiwgODUsIDgzLCA0NSwgNTIsIAorICAgIDEyOCwgODIsIDY5LCA3MSwgODUsIDc2LCA4NSwgODMsIDQ1LCA1MSwgMTI4LCA4MiwgNjksIDcxLCA4NSwgNzYsIDg1LCA4MywgCisgICAgNDUsIDUwLCAxMjgsIDgyLCA2OSwgNzEsIDg1LCA3NiwgODUsIDgzLCAxMjgsIDgyLCA2OSwgNzEsIDg1LCA3NiwgODUsIAorICAgIDIxMSwgODIsIDY5LCA3MSwgNzMsIDgzLCA4NCwgNjksIDgyLCA2OSwgMTk2LCA4MiwgNjksIDcxLCA3MywgNzksIDc4LCA2NSwgCisgICAgMjA0LCA4MiwgNjksIDcxLCA3MywgNjUsIDQ1LCA1MCwgMTI4LCA4MiwgNjksIDcxLCA3MywgNjUsIDEyOCwgODIsIDY5LCAKKyAgICA3MCwgNjksIDgyLCA2OSwgNzgsIDY3LCAxOTcsIDgyLCA2OSwgNjgsIDg1LCA4MCwgNzYsIDczLCA2NywgNjUsIDg0LCA3MywgCisgICAgNzksIDc4LCAxMjgsIDgyLCA2OSwgNjcsIDg5LCA2NywgNzYsIDczLCA3OCwgMTk5LCA4MiwgNjksIDY3LCA4OSwgNjcsIDc2LCAKKyAgICA2OSwgMTk2LCA4MiwgNjksIDY3LCA4NCwgNzMsIDc2LCA3MywgNzgsIDY5LCA2NSwgMjEwLCA4MiwgNjksIDY3LCA4NCwgNjUsIAorICAgIDc4LCA3MSwgODUsIDc2LCA2NSwgMjEwLCA4MiwgNjksIDY3LCA4NCwgNjUsIDc4LCA3MSwgNzYsIDY5LCAxMjgsIDgyLCA2OSwgCisgICAgNjcsIDg0LCA2NSwgNzgsIDcxLCA3NiwgMTk3LCA4MiwgNjksIDY3LCA4MiwgNjksIDY1LCA4NCwgNzMsIDc5LCA3OCwgNjUsIAorICAgIDIwNCwgODIsIDY5LCA2NywgNzksIDgyLCA2OCwgNzMsIDc4LCAxOTksIDgyLCA2OSwgNjcsIDc5LCA4MiwgNjgsIDY5LCA4MiwgCisgICAgMTI4LCA4MiwgNjksIDY3LCA3OSwgODIsIDE5NiwgODIsIDY5LCA2NywgNjksIDgwLCA4NCwgNzMsIDg2LCAxOTcsIDgyLCAKKyAgICA2OSwgNjcsIDY5LCA3MywgODYsIDY5LCA4MiwgMTI4LCA4MiwgNjksIDY1LCA3NiwgNzEsIDY1LCA4MiwgNDUsIDUwLCAxMjgsIAorICAgIDgyLCA2OSwgNjUsIDc2LCA3MSwgNjUsIDgyLCAxMjgsIDgyLCA2OSwgNjUsIDcyLCA3NywgODUsIDc1LCAxMjgsIDgyLCA2OSwgCisgICAgNjUsIDY3LCA3MiwgMTI4LCA4MiwgNjgsIDIwNywgODIsIDY4LCA2OSwgMjA0LCA4MiwgNjYsIDY1LCA4MywgMTkzLCA4MiwgCisgICAgNjUsIDg5LCA4MywgMTI4LCA4MiwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA4MiwgNjUsIDg0LCA3MywgNzksIAorICAgIDEyOCwgODIsIDY1LCA4NCwgNzIsIDY1LCAxMjgsIDgyLCA2NSwgODQsIDcyLCAxOTMsIDgyLCA2NSwgODQsIDY1LCAxMjgsIAorICAgIDgyLCA2NSwgODQsIDEyOCwgODIsIDY1LCA4MywgODcsIDY1LCA2OCwgNzMsIDEyOCwgODIsIDY1LCA4MywgNzksIDg1LCAKKyAgICAyMDQsIDgyLCA2NSwgODMsIDcyLCA2NSwgMTI4LCA4MiwgNjUsIDgxLCAxMjgsIDgyLCA2NSwgODAsIDczLCA4MywgNzcsIAorICAgIDY1LCAxMjgsIDgyLCA2NSwgNzgsIDcxLCAxOTcsIDgyLCA2NSwgNzgsIDY1LCAxMjgsIDgyLCA2NSwgNzgsIDEyOCwgODIsIAorICAgIDY1LCA3NywgMjExLCA4MiwgNjUsIDc3LCA2NiwgNjUsIDg0LCAxMjgsIDgyLCA2NSwgNzUsIDcyLCA2NSwgNzgsIDcxLCAKKyAgICAxMjgsIDgyLCA2NSwgNzMsIDgzLCA3MywgNzgsIDE5OSwgODIsIDY1LCA3MywgODMsIDY5LCAxOTYsIDgyLCA2NSwgNzMsIAorICAgIDc4LCA2NiwgNzksIDg3LCAxMjgsIDgyLCA2NSwgNzMsIDc2LCA4NywgNjUsIDg5LCAxMjgsIDgyLCA2NSwgNzMsIDc2LCA4NywgCisgICAgNjUsIDIxNywgODIsIDY1LCA3MywgNzYsIDEyOCwgODIsIDY1LCA3MywgNjgsIDIwNywgODIsIDY1LCA3MywgNjgsIDY1LCAKKyAgICAxMjgsIDgyLCA2NSwgNzIsIDc3LCA2NSwgODQsIDg1LCA3NiwgNzYsIDY1LCAyMDAsIDgyLCA2NSwgNzAsIDY5LCAxMjgsIAorICAgIDgyLCA2NSwgNjksIDc3LCAxMjgsIDgyLCA2NSwgNjgsIDczLCA3OSwgNjUsIDY3LCA4NCwgNzMsIDg2LCAxOTcsIDgyLCA2NSwgCisgICAgNjgsIDczLCA3OSwgMTI4LCA4MiwgNjUsIDY4LCA3MywgMjA3LCA4MiwgNjUsIDY4LCAyMDEsIDgyLCA2NSwgNjgsIDEyOCwgCisgICAgODIsIDY1LCAxOTYsIDgyLCA2NSwgNjcsIDgxLCA4NSwgNjksIDIxMiwgODIsIDY1LCA2NywgNzMsIDc4LCA3MSwgMTI4LCAKKyAgICA4MiwgNjUsIDY2LCA2NiwgNzMsIDg0LCAxMjgsIDgyLCA2NSwgNjYsIDY2LCA3MywgMjEyLCA4MiwgNjUsIDY2LCAxMjgsIAorICAgIDgyLCA2NSwgNjUsIDczLCAxMjgsIDgyLCA2NSwgNTEsIDEyOCwgODIsIDY1LCA1MCwgMTI4LCA4MiwgNDgsIDUwLCA1NywgCiAgICAgMTI4LCA4MiwgNDgsIDUwLCA1NiwgMTI4LCA4MiwgNDgsIDUwLCA1NSwgMTI4LCA4MiwgNDgsIDUwLCA1NCwgMTI4LCA4MiwgCiAgICAgNDgsIDUwLCA1MywgMTI4LCA4MiwgNDgsIDUwLCA1MiwgMTI4LCA4MiwgNDgsIDUwLCA1MSwgMTI4LCA4MiwgNDgsIDUwLCAKICAgICA1MCwgMTI4LCA4MiwgNDgsIDUwLCA0OSwgMTI4LCA4MiwgNDgsIDUwLCA0OCwgMTI4LCA4MiwgNDgsIDQ5LCA1NywgMTI4LCAKQEAgLTEzMjgsMTI5ICsxMzM1LDEyOSBAQAogICAgIDg3LCA3OSwgNzksIDEyOCwgODAsIDg3LCA3OSwgMTI4LCA4MCwgODcsIDIwNywgODAsIDg3LCA3MywgNzMsIDEyOCwgODAsIAogICAgIDg3LCA3MywgMTI4LCA4MCwgODcsIDY5LCA2OSwgMTI4LCA4MCwgODcsIDY5LCAxMjgsIDgwLCA4NywgNjUsIDY1LCAxMjgsIAogICAgIDgwLCA4NywgMTI4LCA4MCwgODYsIDEyOCwgODAsIDg1LCA4OCwgMTI4LCA4MCwgODUsIDg1LCA4NCwgMTI4LCA4MCwgODUsIAotICAgIDg0LCA4MiwgNjksIDcwLCA2NSwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgwLCA4NSwgODQsIDEyOCwgODAsIDg1LCAKLSAgICAyMTIsIDgwLCA4NSwgODMsIDcyLCA4MCwgNzMsIDc4LCAxMjgsIDgwLCA4NSwgODMsIDcyLCA4MCwgNzMsIDc1LCA2NSwgCi0gICAgMTI4LCA4MCwgODUsIDgzLCA3MiwgNzMsIDc4LCAxOTksIDgwLCA4NSwgODIsIDg4LCAxMjgsIDgwLCA4NSwgODIsIDgzLCAKLSAgICA2OSwgMTI4LCA4MCwgODUsIDgyLCA4MCwgNzYsIDE5NywgODAsIDg1LCA4MiwgNzMsIDg0LCA4OSwgMTI4LCA4MCwgODUsIAotICAgIDgyLCA3MywgNzAsIDg5LCAxMjgsIDgwLCA4NSwgODIsIDEyOCwgODAsIDg1LCA4MSwgMTI4LCA4MCwgODUsIDgwLCAxMjgsIAotICAgIDgwLCA4NSwgNzksIDg4LCAxMjgsIDgwLCA4NSwgNzksIDgwLCAxMjgsIDgwLCA4NSwgNzksIDEyOCwgODAsIDg1LCA3OCwgCi0gICAgNzEsIDY1LCA2NSwgNzcsIDEyOCwgODAsIDg1LCA3OCwgNzEsIDEyOCwgODAsIDg1LCA3OCwgNjcsIDg0LCA4NSwgNjUsIDg0LCAKLSAgICA3MywgNzksIDc4LCAxMjgsIDgwLCA4NSwgNzgsIDY3LCA4NCwgODUsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDgwLCA4NSwgNzcsIAotICAgIDgwLCAxMjgsIDgwLCA4NSwgNzcsIDEyOCwgODAsIDg1LCA2OSwgMTI4LCA4MCwgODUsIDY2LCA3NiwgNzMsIDE5NSwgODAsIAotICAgIDg1LCA2NSwgODEsIDEyOCwgODAsIDg1LCA2NSwgNjksIDEyOCwgODAsIDg1LCA1MCwgMTI4LCA4MCwgODUsIDEyOCwgODAsIAotICAgIDg0LCA3MiwgNjUsIDcyLCAxOTMsIDgwLCA4NCwgNjksIDEyOCwgODAsIDgzLCA3MywgNzYsIDIwMSwgODAsIDgzLCA3MywgCi0gICAgNzAsIDczLCA4MywgODQsIDc5LCA4MywgODksIDc4LCA2NSwgNzEsIDc3LCA2NSwgMTI4LCA4MCwgODMsIDczLCA3MCwgNzMsIAotICAgIDgzLCA4NCwgNzksIDgwLCA2NSwgODIsIDY1LCA3NSwgNjUsIDc2LCA2OSwgODMsIDc3LCA2NSwgMTI4LCA4MCwgODMsIDczLCAKLSAgICA3MCwgNzMsIDgzLCA4NCwgNzksIDIwNiwgODAsIDgzLCA3MywgNzAsIDczLCA4MywgODQsIDc5LCA3NiwgODksIDcxLCA3MywgCi0gICAgODMsIDc3LCA2NSwgMTI4LCA4MCwgODMsIDczLCAxMjgsIDgwLCA4MywgMTI4LCA4MCwgODIsIDc5LCA4NiwgNjksIDEyOCwgCi0gICAgODAsIDgyLCA3OSwgODQsIDc5LCA4NiwgNjUsIDgyLCA4OSwgMjExLCA4MCwgODIsIDc5LCA4NCwgNzksIDIxMSwgODAsIDgyLCAKLSAgICA3OSwgODMsIDcxLCA2OSwgNzEsIDgyLCA2NSwgNzcsIDc3LCA2OSwgNzgsIDczLCAxMjgsIDgwLCA4MiwgNzksIDgwLCA3OSwgCi0gICAgODIsIDg0LCA3MywgNzksIDc4LCA2NSwgMjA0LCA4MCwgODIsIDc5LCA4MCwgNzksIDgyLCA4NCwgNzMsIDc5LCA3OCwgMTI4LCAKLSAgICA4MCwgODIsIDc5LCA4MCwgNjksIDgyLCA4NCwgMjE3LCA4MCwgODIsIDc5LCA4MCwgNjksIDc2LCA3NiwgNjksIDIxMCwgODAsIAotICAgIDgyLCA3OSwgNzksIDcwLCAxMjgsIDgwLCA4MiwgNzksIDc2LCA3OSwgNzgsIDcxLCA2OSwgMTk2LCA4MCwgODIsIDc5LCA3NiwgCi0gICAgNjUsIDg0LCA3MywgNzksIDc4LCAxOTcsIDgwLCA4MiwgNzksIDc0LCA2OSwgNjcsIDg0LCA3MywgODYsIDY5LCAxMjgsIDgwLCAKLSAgICA4MiwgNzksIDc0LCA2OSwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgwLCA4MiwgNzksIDcxLCA4MiwgNjksIDgzLCA4MywgCi0gICAgMTI4LCA4MCwgODIsIDc5LCA3MCwgNzksIDg1LCA3OCwgNjgsIDEyOCwgODAsIDgyLCA3OSwgNjgsIDg1LCA2NywgODQsIAotICAgIDEyOCwgODAsIDgyLCA3OSwgNjgsIDg1LCA2NywgMjEyLCA4MCwgODIsIDczLCA4NiwgNjUsIDg0LCA2OSwgMTI4LCA4MCwgCi0gICAgODIsIDczLCA4MywgNzIsIDg0LCA3MiwgNjUsIDc3LCA2NSwgODQsIDgyLCAxOTMsIDgwLCA4MiwgNzMsIDc4LCA4NCwgODMsIAotICAgIDEyOCwgODAsIDgyLCA3MywgNzgsIDg0LCAxMjgsIDgwLCA4MiwgNzMsIDc4LCAyMTIsIDgwLCA4MiwgNzMsIDc4LCA2NywgCi0gICAgNjksIDgzLCA4MywgMTI4LCA4MCwgODIsIDczLCA3NywgNjksIDEyOCwgODAsIDgyLCA3MywgNzcsIDE5NywgODAsIDgyLCAKLSAgICA2OSwgODYsIDczLCA3OSwgODUsIDIxMSwgODAsIDgyLCA2OSwgODMsIDY5LCA3OCwgODQsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIAotICAgIDgwLCA4MiwgNjksIDgzLCA2NywgODIsIDczLCA4MCwgODQsIDczLCA3OSwgMjA2LCA4MCwgODIsIDY5LCA4MCwgNzksIDc4LCAKLSAgICA2OCwgNjksIDgyLCA2NSwgNzgsIDY3LCA2OSwgMTI4LCA4MCwgODIsIDY5LCA3OCwgNzUsIDcyLCA2NSwgMTI4LCA4MCwgODIsIAotICAgIDY5LCA3MCwgNjUsIDY3LCAxOTcsIDgwLCA4MiwgNjksIDY3LCA3MywgODAsIDczLCA4NCwgNjUsIDg0LCA2OSwgMTI4LCA4MCwgCi0gICAgODIsIDY5LCA2NywgNjksIDY4LCA3MywgNzgsIDE5OSwgODAsIDgyLCA2OSwgNjcsIDY5LCA2OCwgNjksIDgzLCAxMjgsIDgwLCAKLSAgICA4MiwgNjksIDY3LCA2OSwgNjgsIDY5LCAyMTEsIDgwLCA4MiwgNjksIDY3LCA2OSwgNjgsIDY5LCAxOTYsIDgwLCA4MiwgNjksIAotICAgIDY3LCA2OSwgNjgsIDY5LCAxMjgsIDgwLCA4MiwgNjksIDY3LCA2OSwgNjgsIDE5NywgODAsIDgyLCA2NSwgNzcsIDQ1LCA4MCwgCi0gICAgNzMsIDczLCAxMjgsIDgwLCA4MiwgNjUsIDc3LCA0NSwgODAsIDczLCAyMDEsIDgwLCA4MiwgNjUsIDc3LCA0NSwgNzcsIDg1LCAKLSAgICA3OSwgODksIDEyOCwgODAsIDgyLCA2NSwgNzcsIDQ1LCA3NywgODUsIDc5LCAyMTcsIDgwLCA4MiwgNjUsIDc3LCA0NSwgNjYsIAotICAgIDg1LCA3OSwgNzgsIDEyOCwgODAsIDgyLCA2NSwgNzcsIDQ1LCA2NiwgODUsIDc5LCAyMDYsIDgwLCA4MiwgNjUsIDc3LCA0NSwgCi0gICAgNjYsIDY5LCA3MywgMTI4LCA4MCwgODIsIDY1LCA3NywgNDUsIDY2LCA2OSwgMjAxLCA4MCwgODIsIDY1LCA3NywgMTI4LCAKLSAgICA4MCwgODIsIDY1LCAyMDUsIDgwLCA4MiwgMTI4LCA4MCwgODAsIDg2LCAxMjgsIDgwLCA4MCwgNzcsIDEyOCwgODAsIDgwLCAKLSAgICA2NSwgMTI4LCA4MCwgNzksIDg5LCAxMjgsIDgwLCA3OSwgODgsIDEyOCwgODAsIDc5LCA4NywgNjksIDgyLCAyMTEsIDgwLCAKLSAgICA3OSwgODcsIDY5LCA4MiwgMTI4LCA4MCwgNzksIDg3LCA2OCwgNjksIDgyLCA2OSwgMTk2LCA4MCwgNzksIDg3LCA2OCwgNjksIAotICAgIDgyLCAxMjgsIDgwLCA3OSwgODUsIDc4LCAxOTYsIDgwLCA3OSwgODUsIDc2LCA4NCwgODIsIDIxNywgODAsIDc5LCA4NSwgCi0gICAgNjcsIDcyLCAxMjgsIDgwLCA3OSwgODQsIDY1LCA4NCwgNzksIDEyOCwgODAsIDc5LCA4NCwgNjUsIDY2LCA3NiwgMTk3LCAKLSAgICA4MCwgNzksIDIxMiwgODAsIDc5LCA4MywgODQsIDgwLCA3OSwgODMsIDczLCA4NCwgNzMsIDc5LCAyMDYsIDgwLCA3OSwgODMsIAotICAgIDg0LCA2NiwgNzksIDg4LCAxMjgsIDgwLCA3OSwgODMsIDg0LCA2NSwgMjA0LCA4MCwgNzksIDgzLCA4NCwgMTI4LCA4MCwgCi0gICAgNzksIDgzLCAyMTIsIDgwLCA3OSwgODMsIDgzLCA2OSwgODMsIDgzLCA3MywgNzksIDc4LCAxMjgsIDgwLCA3OSwgODIsIDgyLCAKLSAgICA2OSwgNjcsIDg0LCA4NSwgODMsIDEyOCwgODAsIDc5LCA4MiwgODIsIDY5LCA2NywgODQsIDg1LCAyMTEsIDgwLCA3OSwgODAsIAotICAgIDgwLCA2OSwgODIsIDEyOCwgODAsIDc5LCA4MCwgMTI4LCA4MCwgNzksIDIwOCwgODAsIDc5LCA3OSwgNjgsIDc2LCA2OSwgCi0gICAgMTI4LCA4MCwgNzksIDc5LCAxMjgsIDgwLCA3OSwgNzgsIDY4LCA3OSwgMTI4LCA4MCwgNzksIDIwNiwgODAsIDc5LCA3NiwgCi0gICAgNzMsIDgzLCA3MiwgMTI4LCA4MCwgNzksIDc2LCA3MywgNjcsIDE5NywgODAsIDc5LCA3NiwgMjAxLCA4MCwgNzksIDc2LCAKLSAgICA2OSwgMTI4LCA4MCwgNzksIDc2LCAxOTcsIDgwLCA3OSwgNzUsIDgyLCA4OSwgODQsIDczLCA2OSwgMTI4LCA4MCwgNzksIAotICAgIDc1LCA3OSwgNzQsIDczLCAxMjgsIDgwLCA3OSwgNzMsIDc4LCA4NCwgMjExLCA4MCwgNzksIDczLCA3OCwgODQsIDc5LCAKLSAgICAxMjgsIDgwLCA3OSwgNzMsIDc4LCA4NCwgNjksIDgyLCAxMjgsIDgwLCA3OSwgNzMsIDc4LCA4NCwgNjksIDE5NiwgODAsIAotICAgIDc5LCA3MywgNzgsIDg0LCAxMjgsIDgwLCA3OSwgNzMsIDc4LCAyMTIsIDgwLCA3OSwgNjksIDg0LCA4MiwgMjE3LCA4MCwgCi0gICAgNzksIDY5LCA4NCwgNzMsIDE5NSwgODAsIDc5LCA2OCwgNjUsIDg0LCA4NSwgODMsIDEyOCwgODAsIDc5LCA2NSwgMTI4LCAKLSAgICA4MCwgNzksIDEyOCwgODAsIDIwNywgODAsIDc4LCA2OSwgODUsIDc3LCA2NSwgODQsIDY1LCAxMjgsIDgwLCA3NiwgODUsIAotICAgIDg0LCA3OSwgMTI4LCA4MCwgNzYsIDg1LCA4MywgNDUsIDc3LCA3MywgNzgsIDg1LCAyMTEsIDgwLCA3NiwgODUsIDgzLCAKLSAgICAxMjgsIDgwLCA3NiwgODUsIDgyLCA2NSwgNzYsIDEyOCwgODAsIDc2LCA4NSwgNzcsIDY5LCAxOTYsIDgwLCA3NiwgODUsIAotICAgIDc3LCAxMjgsIDgwLCA3NiwgODUsIDc1LCAxMjgsIDgwLCA3NiwgODUsIDcxLCAxMjgsIDgwLCA3NiwgNzksIDg3LCAxMjgsIAotICAgIDgwLCA3NiwgNzksIDgwLCA3MiwgODUsIDEyOCwgODAsIDc2LCA2OSwgODQsIDcyLCA4MiwgNzksIDc4LCAxMjgsIDgwLCA3NiwgCi0gICAgNjUsIDg5LCA3MywgNzgsIDE5OSwgODAsIDc2LCA2NSwgODMsIDg0LCA3MywgNjcsIDgzLCAxMjgsIDgwLCA3NiwgNjUsIDc4LCAKLSAgICA2OSwgMTI4LCA4MCwgNzYsIDY1LCA3OCwgMTk3LCA4MCwgNzYsIDY1LCA3OCwgNjcsIDIwMywgODAsIDc2LCA2NSwgNzUsIAotICAgIDEyOCwgODAsIDc2LCA2NSwgNzEsIDczLCA3OSwgMjExLCA4MCwgNzYsIDY1LCA2NywgNjksIDcyLCA3OSwgNzYsIDY4LCA2OSwgCi0gICAgMjEwLCA4MCwgNzYsIDY1LCA2NywgMTk3LCA4MCwgNzYsIDY1LCAxMjgsIDgwLCA3MywgOTAsIDkwLCA3MywgNjcsIDY1LCAKLSAgICA4NCwgNzksIDEyOCwgODAsIDczLCA5MCwgOTAsIDY1LCAxMjgsIDgwLCA3MywgODgsIDEyOCwgODAsIDczLCA4NywgODIsIAotICAgIDEyOCwgODAsIDczLCA4NCwgNjcsIDcyLCA3MCwgNzksIDgyLCA3NSwgMTI4LCA4MCwgNzMsIDg0LCA2NywgNzIsIDcwLCA3OSwgCi0gICAgODIsIDIwMywgODAsIDczLCA4NCwgMTI4LCA4MCwgNzMsIDgzLCA4NCwgNzksIDc2LCAxMjgsIDgwLCA3MywgODMsIDY5LCAKLSAgICA3NiwgNjksIDcyLCAxMjgsIDgwLCA3MywgODMsIDY3LCA2OSwgODMsIDEyOCwgODAsIDczLCA4MiwgNzMsIDcxLCAxMjgsIAotICAgIDgwLCA3MywgODIsIDczLCAxOTksIDgwLCA3MywgODIsIDczLCA2OSwgNjksIDc4LCAxMjgsIDgwLCA3MywgODAsIDczLCA3OCwgCi0gICAgNzEsIDEyOCwgODAsIDczLCA4MCwgNjUsIDY5LCA3NywgNzEsIDY2LCA3MywgNjksIDY5LCAxMjgsIDgwLCA3MywgODAsIDY1LCAKLSAgICA2OSwgNzcsIDY2LCA2NSwgMTI4LCA4MCwgNzMsIDgwLCAxMjgsIDgwLCA3MywgNzgsIDg3LCA3MiwgNjksIDY5LCAyMDQsIAotICAgIDgwLCA3MywgNzgsIDY5LCA2NSwgODAsIDgwLCA3NiwgNjksIDEyOCwgODAsIDczLCA3OCwgMTk3LCA4MCwgNzMsIDc4LCA2NSwgCi0gICAgODIsIDY2LCA3OSwgODIsIDY1LCA4MywgMTI4LCA4MCwgNzMsIDc2LCA3NiwgMTI4LCA4MCwgNzMsIDc2LCAxOTcsIDgwLCAKLSAgICA3MywgNzYsIDY3LCA4MiwgNzksIDIxNSwgODAsIDczLCA3NSwgODUsIDgyLCA4NSwgMTI4LCA4MCwgNzMsIDc1LCA3OSwgCi0gICAgMTI4LCA4MCwgNzMsIDcxLCAxMjgsIDgwLCA3MywgMTk5LCA4MCwgNzMsIDY5LCA4OCwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgCi0gICAgODAsIDQ1LCA4NCwgNzIsIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgODMsIAotICAgIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgzLCA3MywgNzksIDgzLCAKLSAgICA0NSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIDc5LCA4MywgCi0gICAgNDUsIDg0LCA3MiwgNzMsIDY5LCA4NSwgODQsIDcyLCAxMjgsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgzLCA3MywgNzksIAotICAgIDgzLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgzLCA3MywgNzksIDgzLCAKLSAgICA0NSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIDc5LCA4MywgCi0gICAgNDUsIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MiwgNzMsIDY5LCA4NSwgNzYsIAotICAgIDQ1LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MiwgNzMsIDY5LCAKLSAgICA4NSwgNzYsIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgNzgsIDczLCA2OSwgODUsIDc4LCAxMjgsIDgwLCA3MywgNjksIAotICAgIDg1LCA4MCwgNDUsIDc3LCA3MywgNjksIDg1LCA3NywgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA3NSwgNzIsIDczLCAKLSAgICA2OSwgODUsIDc1LCA3MiwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA2NywgNzMsIDY5LCA4NSwgNjcsIDEyOCwgODAsIAotICAgIDczLCA2OSwgODUsIDgwLCA0NSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgODAsIDczLCA2OSwgODUsIDIwOCwgCi0gICAgODAsIDczLCA2OSwgODQsIDEyOCwgODAsIDczLCA2OSwgODAsIDEyOCwgODAsIDczLCA2OSwgNjksIDg0LCAxMjgsIDgwLCAKLSAgICA3MywgNjksIDY5LCA4MSwgMTI4LCA4MCwgNzMsIDY5LCA2NywgNjksIDEyOCwgODAsIDczLCA2OSwgMTI4LCA4MCwgNzMsIAotICAgIDY3LCA3NSwgNjksIDg0LCAxMjgsIDgwLCA3MywgNjcsIDc1LCAxMjgsIDgwLCA3MywgNjUsIDgzLCA4NSwgODQsIDc5LCA4MiwgCi0gICAgODUsIDEyOCwgODAsIDczLCA2NSwgODMsIDc3LCAxOTMsIDgwLCA3MywgNjUsIDc4LCA3OSwgMTI4LCA4MCwgMjAxLCA4MCwgCi0gICAgNzIsIDg3LCA2NSwgMTI4LCA4MCwgNzIsIDg1LCA4NCwgNzIsIDY1LCA3OSwgMTI4LCA4MCwgNzIsIDg1LCAyMTAsIDgwLCAKLSAgICA3MiwgODUsIDc4LCA3MSwgMTI4LCA4MCwgNzIsIDgyLCA2NSwgODMsIDY5LCAxMjgsIDgwLCA3MiwgNzksIDc4LCA2OSwgODMsIAotICAgIDEyOCwgODAsIDcyLCA3OSwgNjksIDc4LCA3MywgNjcsIDczLCA2NSwgMjA2LCA4MCwgNzIsIDc5LCA2NSwgMTI4LCA4MCwgCi0gICAgNzIsIDc5LCAxMjgsIDgwLCA3MiwgMjA3LCA4MCwgNzIsIDc4LCA2NSwgNjksIDIwMywgODAsIDcyLCA3MywgNzgsIDg0LCAKLSAgICA3MiwgODUsIDEyOCwgODAsIDcyLCA3MywgNzYsIDc5LCA4MywgNzksIDgwLCA3MiwgNjksIDgyLCAyMTEsIDgwLCA3MiwgNzMsIAotICAgIDc2LCA3MywgODAsIDgwLCA3MywgNzgsIDE5NywgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDQ1LCA4NCwgNzIsIDczLCAKLSAgICA2OSwgODUsIDg0LCA3MiwgMTI4LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgNDUsIDgzLCA3MywgNzksIDgzLCAxMjgsIAotICAgIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIDcyLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgwLCA3MiwgNzMsIDY5LCAKLSAgICA4NSwgODAsIDcyLCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIDIwMCwgODAsIAotICAgIDcyLCA3MywgMTI4LCA4MCwgNzIsIDIwMSwgODAsIDcyLCA2OSwgNjksIDEyOCwgODAsIDcyLCA2OSwgMTI4LCA4MCwgNzIsIAotICAgIDY1LCA4MywgNjksIDQ1LCAxOTgsIDgwLCA3MiwgNjUsIDgzLCA2OSwgNDUsIDE5NCwgODAsIDcyLCA2NSwgODIsIDg5LCA3OCwgCi0gICAgNzEsIDY5LCA2NSwgMjA0LCA4MCwgNzIsIDY1LCA4MiwgMTI4LCA4MCwgNzIsIDY1LCA3OCwgMTI4LCA4MCwgNzIsIDY1LCAKLSAgICA3NywgMTI4LCA4MCwgNzIsIDY1LCA3MywgODMsIDg0LCA3OSwgMjExLCA4MCwgNzIsIDY1LCA3MSwgODMsIDQ1LCA4MCwgCi0gICAgMTkzLCA4MCwgNzIsIDY1LCA2NSwgODIsIDc1LCA2NSwgNjUsIDEyOCwgODAsIDcyLCA2NSwgNjUsIDEyOCwgODAsIDcyLCAKLSAgICA2NSwgMTI4LCA4MCwgNzEsIDEyOCwgODAsIDcwLCAxMjgsIDgwLCA2OSwgODUsIDg4LCAxMjgsIDgwLCA2OSwgODUsIDg0LCAKLSAgICA2NSwgNjksIDEyOCwgODAsIDY5LCA4NSwgODQsIDEyOCwgODAsIDY5LCA4NCwgNjUsIDgzLCA4NCwgNzksIDc1LCA3OSwgODUsIAotICAgIDcwLCA3MywgODMsIDc3LCA2NSwgMTI4LCA4MCwgNjksIDg0LCA2NSwgODMsIDg0LCA3MywgMTI4LCA4MCwgNjksIDg0LCA2NSwgCi0gICAgODMsIDc3LCA2NSwgMTI4LCA4MCwgNjksIDg0LCA2NSwgNzYsIDc2LCA2OSwgMTk2LCA4MCwgNjksIDgzLCA3OSwgMTI4LCAKLSAgICA4MCwgNjksIDgzLCAyMDcsIDgwLCA2OSwgODMsIDcyLCA1MCwgMTI4LCA4MCwgNjksIDgzLCA2OSwgODQsIDE5MywgODAsIAotICAgIDY5LCAyMTEsIDgwLCA2OSwgODIsIDg0LCA3MiwgMjA3LCA4MCwgNjksIDgyLCA4MywgODAsIDY5LCA2NywgODQsIDczLCA4NiwgCi0gICAgNjksIDEyOCwgODAsIDY5LCA4MiwgODMsIDc5LCA3OCwgNjUsIDIwNCwgODAsIDY5LCA4MiwgODMsIDc5LCA3OCwgMTI4LCAKLSAgICA4MCwgNjksIDgyLCA4MywgNzksIDIwNiwgODAsIDY5LCA4MiwgODMsIDczLCA2NSwgMjA2LCA4MCwgNjksIDgyLCA4MywgNjksIAotICAgIDg2LCA2OSwgODIsIDczLCA3OCwgMTk5LCA4MCwgNjksIDgyLCA4MCwgNjksIDc4LCA2OCwgNzMsIDY3LCA4NSwgNzYsIDY1LCAKLSAgICA4MiwgMTI4LCA4MCwgNjksIDgyLCA4MCwgNjksIDc4LCA2OCwgNzMsIDY3LCA4NSwgNzYsIDY1LCAyMTAsIDgwLCA2OSwgODIsIAotICAgIDc3LCA2NSwgNzgsIDY5LCA3OCwgMjEyLCA4MCwgNjksIDgyLCA3MywgODMsIDgwLCA3OSwgNzcsIDY5LCA3OCwgNzMsIDEyOCwgCi0gICAgODAsIDY5LCA4MiwgNzMsIDgzLCA4MCwgNzksIDc3LCA2OSwgNzgsIDIwMSwgODAsIDY5LCA4MiwgNzAsIDc5LCA4MiwgNzcsIAotICAgIDczLCA3OCwgMTk5LCA4MCwgNjksIDgyLCA3MCwgNjksIDY3LCA4NCwgODUsIDIwNSwgODAsIDY5LCA4MiwgNzAsIDY5LCA2NywgCi0gICAgODQsIDY1LCAxMjgsIDgwLCA2OSwgODIsIDcwLCA2OSwgNjcsIDg0LCAxOTMsIDgwLCA2OSwgODIsIDY3LCA4NSwgODMsIDgzLCAKLSAgICA3MywgODYsIDY5LCAxMjgsIDgwLCA2OSwgODIsIDY3LCA2OSwgNzgsIDIxMiwgODAsIDY5LCA4MCwgNjksIDg0LCAxMjgsIAotICAgIDgwLCA2OSwgODAsIDY5LCAyMTIsIDgwLCA2OSwgNzksIDgyLCA4NCwgMjAwLCA4MCwgNjksIDc5LCA4MCwgNzYsIDY5LCAKLSAgICAxMjgsIDgwLCA2OSwgNzgsIDg0LCA2NSwgODMsIDY5LCA3NywgNjksIDEyOCwgODAsIDY5LCA3OCwgODQsIDY1LCA3MSwgODIsIAotICAgIDY1LCA3NywgMTI4LCA4MCwgNjksIDc4LCA4NCwgNjUsIDcxLCA3OSwgNzgsIDEyOCwgODAsIDY5LCA3OCwgODMsIDg1LCAKKyAgICA4NSwgMTI4LCA4MCwgODUsIDg0LCA4MiwgNjksIDcwLCA2NSwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgwLCA4NSwgODQsIAorICAgIDEyOCwgODAsIDg1LCAyMTIsIDgwLCA4NSwgODMsIDcyLCA4MCwgNzMsIDc4LCAxMjgsIDgwLCA4NSwgODMsIDcyLCA4MCwgCisgICAgNzMsIDc1LCA2NSwgMTI4LCA4MCwgODUsIDgzLCA3MiwgNzMsIDc4LCAxOTksIDgwLCA4NSwgODIsIDg4LCAxMjgsIDgwLCAKKyAgICA4NSwgODIsIDgzLCA2OSwgMTI4LCA4MCwgODUsIDgyLCA4MCwgNzYsIDE5NywgODAsIDg1LCA4MiwgNzMsIDg0LCA4OSwgCisgICAgMTI4LCA4MCwgODUsIDgyLCA3MywgNzAsIDg5LCAxMjgsIDgwLCA4NSwgODIsIDEyOCwgODAsIDg1LCA4MSwgMTI4LCA4MCwgCisgICAgODUsIDgwLCAxMjgsIDgwLCA4NSwgNzksIDg4LCAxMjgsIDgwLCA4NSwgNzksIDgwLCAxMjgsIDgwLCA4NSwgNzksIDEyOCwgCisgICAgODAsIDg1LCA3OCwgNzEsIDY1LCA2NSwgNzcsIDEyOCwgODAsIDg1LCA3OCwgNzEsIDEyOCwgODAsIDg1LCA3OCwgNjcsIDg0LCAKKyAgICA4NSwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgwLCA4NSwgNzgsIDY3LCA4NCwgODUsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIAorICAgIDgwLCA4NSwgNzcsIDgwLCAxMjgsIDgwLCA4NSwgNzcsIDEyOCwgODAsIDg1LCA2OSwgMTI4LCA4MCwgODUsIDY2LCA3NiwgCisgICAgNzMsIDE5NSwgODAsIDg1LCA2NSwgODEsIDEyOCwgODAsIDg1LCA2NSwgNjksIDEyOCwgODAsIDg1LCA1MCwgMTI4LCA4MCwgCisgICAgODUsIDEyOCwgODAsIDg0LCA3MiwgNjUsIDcyLCAxOTMsIDgwLCA4NCwgNjksIDEyOCwgODAsIDgzLCA3MywgNzYsIDIwMSwgCisgICAgODAsIDgzLCA3MywgNzAsIDczLCA4MywgODQsIDc5LCA4MywgODksIDc4LCA2NSwgNzEsIDc3LCA2NSwgMTI4LCA4MCwgODMsIAorICAgIDczLCA3MCwgNzMsIDgzLCA4NCwgNzksIDgwLCA2NSwgODIsIDY1LCA3NSwgNjUsIDc2LCA2OSwgODMsIDc3LCA2NSwgMTI4LCAKKyAgICA4MCwgODMsIDczLCA3MCwgNzMsIDgzLCA4NCwgNzksIDIwNiwgODAsIDgzLCA3MywgNzAsIDczLCA4MywgODQsIDc5LCA3NiwgCisgICAgODksIDcxLCA3MywgODMsIDc3LCA2NSwgMTI4LCA4MCwgODMsIDczLCAxMjgsIDgwLCA4MywgMTI4LCA4MCwgODIsIDc5LCAKKyAgICA4NiwgNjksIDEyOCwgODAsIDgyLCA3OSwgODQsIDc5LCA4NiwgNjUsIDgyLCA4OSwgMjExLCA4MCwgODIsIDc5LCA4NCwgNzksIAorICAgIDIxMSwgODAsIDgyLCA3OSwgODMsIDcxLCA2OSwgNzEsIDgyLCA2NSwgNzcsIDc3LCA2OSwgNzgsIDczLCAxMjgsIDgwLCA4MiwgCisgICAgNzksIDgwLCA3OSwgODIsIDg0LCA3MywgNzksIDc4LCA2NSwgMjA0LCA4MCwgODIsIDc5LCA4MCwgNzksIDgyLCA4NCwgNzMsIAorICAgIDc5LCA3OCwgMTI4LCA4MCwgODIsIDc5LCA4MCwgNjksIDgyLCA4NCwgMjE3LCA4MCwgODIsIDc5LCA4MCwgNjksIDc2LCA3NiwgCisgICAgNjksIDIxMCwgODAsIDgyLCA3OSwgNzksIDcwLCAxMjgsIDgwLCA4MiwgNzksIDc2LCA3OSwgNzgsIDcxLCA2OSwgMTk2LCAKKyAgICA4MCwgODIsIDc5LCA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCAxOTcsIDgwLCA4MiwgNzksIDc0LCA2OSwgNjcsIDg0LCA3MywgCisgICAgODYsIDY5LCAxMjgsIDgwLCA4MiwgNzksIDc0LCA2OSwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDgwLCA4MiwgNzksIDcxLCAKKyAgICA4MiwgNjksIDgzLCA4MywgMTI4LCA4MCwgODIsIDc5LCA3MCwgNzksIDg1LCA3OCwgNjgsIDEyOCwgODAsIDgyLCA3OSwgNjgsIAorICAgIDg1LCA2NywgODQsIDEyOCwgODAsIDgyLCA3OSwgNjgsIDg1LCA2NywgMjEyLCA4MCwgODIsIDczLCA4NiwgNjUsIDg0LCA2OSwgCisgICAgMTI4LCA4MCwgODIsIDczLCA4MywgNzIsIDg0LCA3MiwgNjUsIDc3LCA2NSwgODQsIDgyLCAxOTMsIDgwLCA4MiwgNzMsIDc4LCAKKyAgICA4NCwgODMsIDEyOCwgODAsIDgyLCA3MywgNzgsIDg0LCAxMjgsIDgwLCA4MiwgNzMsIDc4LCAyMTIsIDgwLCA4MiwgNzMsIAorICAgIDc4LCA2NywgNjksIDgzLCA4MywgMTI4LCA4MCwgODIsIDczLCA3NywgNjksIDEyOCwgODAsIDgyLCA3MywgNzcsIDE5NywgCisgICAgODAsIDgyLCA2OSwgODYsIDczLCA3OSwgODUsIDIxMSwgODAsIDgyLCA2OSwgODMsIDY5LCA3OCwgODQsIDY1LCA4NCwgNzMsIAorICAgIDc5LCAyMDYsIDgwLCA4MiwgNjksIDgzLCA2NywgODIsIDczLCA4MCwgODQsIDczLCA3OSwgMjA2LCA4MCwgODIsIDY5LCA4MCwgCisgICAgNzksIDc4LCA2OCwgNjksIDgyLCA2NSwgNzgsIDY3LCA2OSwgMTI4LCA4MCwgODIsIDY5LCA3OCwgNzUsIDcyLCA2NSwgMTI4LCAKKyAgICA4MCwgODIsIDY5LCA3MCwgNjUsIDY3LCAxOTcsIDgwLCA4MiwgNjksIDY3LCA3MywgODAsIDczLCA4NCwgNjUsIDg0LCA2OSwgCisgICAgMTI4LCA4MCwgODIsIDY5LCA2NywgNjksIDY4LCA3MywgNzgsIDE5OSwgODAsIDgyLCA2OSwgNjcsIDY5LCA2OCwgNjksIDgzLCAKKyAgICAxMjgsIDgwLCA4MiwgNjksIDY3LCA2OSwgNjgsIDY5LCAyMTEsIDgwLCA4MiwgNjksIDY3LCA2OSwgNjgsIDY5LCAxOTYsIAorICAgIDgwLCA4MiwgNjksIDY3LCA2OSwgNjgsIDY5LCAxMjgsIDgwLCA4MiwgNjksIDY3LCA2OSwgNjgsIDE5NywgODAsIDgyLCA2NSwgCisgICAgNzcsIDQ1LCA4MCwgNzMsIDczLCAxMjgsIDgwLCA4MiwgNjUsIDc3LCA0NSwgODAsIDczLCAyMDEsIDgwLCA4MiwgNjUsIDc3LCAKKyAgICA0NSwgNzcsIDg1LCA3OSwgODksIDEyOCwgODAsIDgyLCA2NSwgNzcsIDQ1LCA3NywgODUsIDc5LCAyMTcsIDgwLCA4MiwgNjUsIAorICAgIDc3LCA0NSwgNjYsIDg1LCA3OSwgNzgsIDEyOCwgODAsIDgyLCA2NSwgNzcsIDQ1LCA2NiwgODUsIDc5LCAyMDYsIDgwLCA4MiwgCisgICAgNjUsIDc3LCA0NSwgNjYsIDY5LCA3MywgMTI4LCA4MCwgODIsIDY1LCA3NywgNDUsIDY2LCA2OSwgMjAxLCA4MCwgODIsIDY1LCAKKyAgICA3NywgMTI4LCA4MCwgODIsIDY1LCAyMDUsIDgwLCA4MiwgMTI4LCA4MCwgODAsIDg2LCAxMjgsIDgwLCA4MCwgNzcsIDEyOCwgCisgICAgODAsIDgwLCA2NSwgMTI4LCA4MCwgNzksIDg5LCAxMjgsIDgwLCA3OSwgODgsIDEyOCwgODAsIDc5LCA4NywgNjksIDgyLCAKKyAgICAyMTEsIDgwLCA3OSwgODcsIDY5LCA4MiwgMTI4LCA4MCwgNzksIDg3LCA2OCwgNjksIDgyLCA2OSwgMTk2LCA4MCwgNzksIAorICAgIDg3LCA2OCwgNjksIDgyLCAxMjgsIDgwLCA3OSwgODUsIDc4LCAxOTYsIDgwLCA3OSwgODUsIDc2LCA4NCwgODIsIDIxNywgCisgICAgODAsIDc5LCA4NSwgNjcsIDcyLCAxMjgsIDgwLCA3OSwgODQsIDY1LCA4NCwgNzksIDEyOCwgODAsIDc5LCA4NCwgNjUsIDY2LCAKKyAgICA3NiwgMTk3LCA4MCwgNzksIDIxMiwgODAsIDc5LCA4MywgODQsIDgwLCA3OSwgODMsIDczLCA4NCwgNzMsIDc5LCAyMDYsIAorICAgIDgwLCA3OSwgODMsIDg0LCA2NiwgNzksIDg4LCAxMjgsIDgwLCA3OSwgODMsIDg0LCA2NSwgMjA0LCA4MCwgNzksIDgzLCA4NCwgCisgICAgMTI4LCA4MCwgNzksIDgzLCAyMTIsIDgwLCA3OSwgODMsIDgzLCA2OSwgODMsIDgzLCA3MywgNzksIDc4LCAxMjgsIDgwLCAKKyAgICA3OSwgODIsIDgyLCA2OSwgNjcsIDg0LCA4NSwgODMsIDEyOCwgODAsIDc5LCA4MiwgODIsIDY5LCA2NywgODQsIDg1LCAyMTEsIAorICAgIDgwLCA3OSwgODAsIDgwLCA2OSwgODIsIDEyOCwgODAsIDc5LCA4MCwgMTI4LCA4MCwgNzksIDIwOCwgODAsIDc5LCA3OSwgCisgICAgNjgsIDc2LCA2OSwgMTI4LCA4MCwgNzksIDc5LCAxMjgsIDgwLCA3OSwgNzgsIDY4LCA3OSwgMTI4LCA4MCwgNzksIDIwNiwgCisgICAgODAsIDc5LCA3NiwgNzMsIDgzLCA3MiwgMTI4LCA4MCwgNzksIDc2LCA3MywgNjcsIDE5NywgODAsIDc5LCA3NiwgMjAxLCAKKyAgICA4MCwgNzksIDc2LCA2OSwgMTI4LCA4MCwgNzksIDc2LCAxOTcsIDgwLCA3OSwgNzUsIDgyLCA4OSwgODQsIDczLCA2OSwgCisgICAgMTI4LCA4MCwgNzksIDc1LCA3OSwgNzQsIDczLCAxMjgsIDgwLCA3OSwgNzMsIDc4LCA4NCwgMjExLCA4MCwgNzksIDczLCAKKyAgICA3OCwgODQsIDc5LCAxMjgsIDgwLCA3OSwgNzMsIDc4LCA4NCwgNjksIDgyLCAxMjgsIDgwLCA3OSwgNzMsIDc4LCA4NCwgNjksIAorICAgIDE5NiwgODAsIDc5LCA3MywgNzgsIDg0LCAxMjgsIDgwLCA3OSwgNzMsIDc4LCAyMTIsIDgwLCA3OSwgNjksIDg0LCA4MiwgCisgICAgMjE3LCA4MCwgNzksIDY5LCA4NCwgNzMsIDE5NSwgODAsIDc5LCA2OCwgNjUsIDg0LCA4NSwgODMsIDEyOCwgODAsIDc5LCAKKyAgICA2NSwgMTI4LCA4MCwgNzksIDEyOCwgODAsIDIwNywgODAsIDc4LCA2OSwgODUsIDc3LCA2NSwgODQsIDY1LCAxMjgsIDgwLCAKKyAgICA3NiwgODUsIDg0LCA3OSwgMTI4LCA4MCwgNzYsIDg1LCA4MywgNDUsIDc3LCA3MywgNzgsIDg1LCAyMTEsIDgwLCA3NiwgODUsIAorICAgIDgzLCAxMjgsIDgwLCA3NiwgODUsIDgyLCA2NSwgNzYsIDEyOCwgODAsIDc2LCA4NSwgNzcsIDY5LCAxOTYsIDgwLCA3NiwgCisgICAgODUsIDc3LCAxMjgsIDgwLCA3NiwgODUsIDc1LCAxMjgsIDgwLCA3NiwgODUsIDcxLCAxMjgsIDgwLCA3NiwgNzksIDg3LCAKKyAgICAxMjgsIDgwLCA3NiwgNzksIDgwLCA3MiwgODUsIDEyOCwgODAsIDc2LCA2OSwgODQsIDcyLCA4MiwgNzksIDc4LCAxMjgsIAorICAgIDgwLCA3NiwgNjUsIDg5LCA3MywgNzgsIDE5OSwgODAsIDc2LCA2NSwgODMsIDg0LCA3MywgNjcsIDgzLCAxMjgsIDgwLCA3NiwgCisgICAgNjUsIDc4LCA2OSwgMTI4LCA4MCwgNzYsIDY1LCA3OCwgMTk3LCA4MCwgNzYsIDY1LCA3OCwgNjcsIDIwMywgODAsIDc2LCAKKyAgICA2NSwgNzUsIDEyOCwgODAsIDc2LCA2NSwgNzEsIDczLCA3OSwgMjExLCA4MCwgNzYsIDY1LCA2NywgNjksIDcyLCA3OSwgNzYsIAorICAgIDY4LCA2OSwgMjEwLCA4MCwgNzYsIDY1LCA2NywgMTk3LCA4MCwgNzYsIDY1LCAxMjgsIDgwLCA3MywgOTAsIDkwLCA3MywgCisgICAgNjcsIDY1LCA4NCwgNzksIDEyOCwgODAsIDczLCA5MCwgOTAsIDY1LCAxMjgsIDgwLCA3MywgODgsIDEyOCwgODAsIDczLCAKKyAgICA4NywgODIsIDEyOCwgODAsIDczLCA4NCwgNjcsIDcyLCA3MCwgNzksIDgyLCA3NSwgMTI4LCA4MCwgNzMsIDg0LCA2NywgNzIsIAorICAgIDcwLCA3OSwgODIsIDIwMywgODAsIDczLCA4NCwgMTI4LCA4MCwgNzMsIDgzLCA4NCwgNzksIDc2LCAxMjgsIDgwLCA3MywgCisgICAgODMsIDY5LCA3NiwgNjksIDcyLCAxMjgsIDgwLCA3MywgODMsIDY3LCA2OSwgODMsIDEyOCwgODAsIDczLCA4MiwgNzMsIDcxLCAKKyAgICAxMjgsIDgwLCA3MywgODIsIDczLCAxOTksIDgwLCA3MywgODIsIDczLCA2OSwgNjksIDc4LCAxMjgsIDgwLCA3MywgODAsIAorICAgIDczLCA3OCwgNzEsIDEyOCwgODAsIDczLCA4MCwgNjUsIDY5LCA3NywgNzEsIDY2LCA3MywgNjksIDY5LCAxMjgsIDgwLCA3MywgCisgICAgODAsIDY1LCA2OSwgNzcsIDY2LCA2NSwgMTI4LCA4MCwgNzMsIDgwLCAxMjgsIDgwLCA3MywgNzgsIDg3LCA3MiwgNjksIDY5LCAKKyAgICAyMDQsIDgwLCA3MywgNzgsIDY5LCA2NSwgODAsIDgwLCA3NiwgNjksIDEyOCwgODAsIDczLCA3OCwgMTk3LCA4MCwgNzMsIAorICAgIDc4LCA2NSwgODIsIDY2LCA3OSwgODIsIDY1LCA4MywgMTI4LCA4MCwgNzMsIDc2LCA3NiwgMTI4LCA4MCwgNzMsIDc2LCAKKyAgICAxOTcsIDgwLCA3MywgNzYsIDY3LCA4MiwgNzksIDIxNSwgODAsIDczLCA3NSwgODUsIDgyLCA4NSwgMTI4LCA4MCwgNzMsIAorICAgIDc1LCA3OSwgMTI4LCA4MCwgNzMsIDcxLCAxMjgsIDgwLCA3MywgMTk5LCA4MCwgNzMsIDY5LCA4OCwgMTI4LCA4MCwgNzMsIAorICAgIDY5LCA4NSwgODAsIDQ1LCA4NCwgNzIsIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCAKKyAgICA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgzLCA3MywgCisgICAgNzksIDgzLCA0NSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIAorICAgIDc5LCA4MywgNDUsIDg0LCA3MiwgNzMsIDY5LCA4NSwgODQsIDcyLCAxMjgsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgzLCAKKyAgICA3MywgNzksIDgzLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgwLCA3MywgNjksIDg1LCA4MCwgNDUsIDgzLCA3MywgCisgICAgNzksIDgzLCA0NSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIAorICAgIDc5LCA4MywgNDUsIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MiwgNzMsIDY5LCAKKyAgICA4NSwgNzYsIDQ1LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MiwgCisgICAgNzMsIDY5LCA4NSwgNzYsIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgNzgsIDczLCA2OSwgODUsIDc4LCAxMjgsIDgwLCAKKyAgICA3MywgNjksIDg1LCA4MCwgNDUsIDc3LCA3MywgNjksIDg1LCA3NywgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA3NSwgCisgICAgNzIsIDczLCA2OSwgODUsIDc1LCA3MiwgMTI4LCA4MCwgNzMsIDY5LCA4NSwgODAsIDQ1LCA2NywgNzMsIDY5LCA4NSwgNjcsIAorICAgIDEyOCwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgODAsIDczLCA2OSwgCisgICAgODUsIDIwOCwgODAsIDczLCA2OSwgODQsIDEyOCwgODAsIDczLCA2OSwgODAsIDEyOCwgODAsIDczLCA2OSwgNjksIDg0LCAKKyAgICAxMjgsIDgwLCA3MywgNjksIDY5LCA4MSwgMTI4LCA4MCwgNzMsIDY5LCA2NywgNjksIDEyOCwgODAsIDczLCA2OSwgMTI4LCAKKyAgICA4MCwgNzMsIDY3LCA3NSwgNjksIDg0LCAxMjgsIDgwLCA3MywgNjcsIDc1LCAxMjgsIDgwLCA3MywgNjUsIDgzLCA4NSwgODQsIAorICAgIDc5LCA4MiwgODUsIDEyOCwgODAsIDczLCA2NSwgODMsIDc3LCAxOTMsIDgwLCA3MywgNjUsIDc4LCA3OSwgMTI4LCA4MCwgCisgICAgMjAxLCA4MCwgNzIsIDg3LCA2NSwgMTI4LCA4MCwgNzIsIDg1LCA4NCwgNzIsIDY1LCA3OSwgMTI4LCA4MCwgNzIsIDg1LCAKKyAgICAyMTAsIDgwLCA3MiwgODUsIDc4LCA3MSwgMTI4LCA4MCwgNzIsIDgyLCA2NSwgODMsIDY5LCAxMjgsIDgwLCA3MiwgNzksIAorICAgIDc4LCA2OSwgODMsIDEyOCwgODAsIDcyLCA3OSwgNjksIDc4LCA3MywgNjcsIDczLCA2NSwgMjA2LCA4MCwgNzIsIDc5LCA2NSwgCisgICAgMTI4LCA4MCwgNzIsIDc5LCAxMjgsIDgwLCA3MiwgMjA3LCA4MCwgNzIsIDc4LCA2NSwgNjksIDIwMywgODAsIDcyLCA3MywgCisgICAgNzgsIDg0LCA3MiwgODUsIDEyOCwgODAsIDcyLCA3MywgNzYsIDc5LCA4MywgNzksIDgwLCA3MiwgNjksIDgyLCAyMTEsIDgwLCAKKyAgICA3MiwgNzMsIDc2LCA3MywgODAsIDgwLCA3MywgNzgsIDE5NywgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDQ1LCA4NCwgCisgICAgNzIsIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgNDUsIDgzLCA3MywgNzksIAorICAgIDgzLCAxMjgsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIDcyLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgwLCA3MiwgCisgICAgNzMsIDY5LCA4NSwgODAsIDcyLCA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIAorICAgIDIwMCwgODAsIDcyLCA3MywgMTI4LCA4MCwgNzIsIDIwMSwgODAsIDcyLCA2OSwgNjksIDEyOCwgODAsIDcyLCA2OSwgMTI4LCAKKyAgICA4MCwgNzIsIDY1LCA4MywgNjksIDQ1LCAxOTgsIDgwLCA3MiwgNjUsIDgzLCA2OSwgNDUsIDE5NCwgODAsIDcyLCA2NSwgODIsIAorICAgIDg5LCA3OCwgNzEsIDY5LCA2NSwgMjA0LCA4MCwgNzIsIDY1LCA4MiwgMTI4LCA4MCwgNzIsIDY1LCA3OCwgMTI4LCA4MCwgCisgICAgNzIsIDY1LCA3NywgMTI4LCA4MCwgNzIsIDY1LCA3MywgODMsIDg0LCA3OSwgMjExLCA4MCwgNzIsIDY1LCA3MSwgODMsIDQ1LCAKKyAgICA4MCwgMTkzLCA4MCwgNzIsIDY1LCA2NSwgODIsIDc1LCA2NSwgNjUsIDEyOCwgODAsIDcyLCA2NSwgNjUsIDEyOCwgODAsIAorICAgIDcyLCA2NSwgMTI4LCA4MCwgNzEsIDEyOCwgODAsIDcwLCAxMjgsIDgwLCA2OSwgODUsIDg4LCAxMjgsIDgwLCA2OSwgODUsIAorICAgIDg0LCA2NSwgNjksIDEyOCwgODAsIDY5LCA4NSwgODQsIDEyOCwgODAsIDY5LCA4NCwgNjUsIDgzLCA4NCwgNzksIDc1LCA3OSwgCisgICAgODUsIDcwLCA3MywgODMsIDc3LCA2NSwgMTI4LCA4MCwgNjksIDg0LCA2NSwgODMsIDg0LCA3MywgMTI4LCA4MCwgNjksIDg0LCAKKyAgICA2NSwgODMsIDc3LCA2NSwgMTI4LCA4MCwgNjksIDg0LCA2NSwgNzYsIDc2LCA2OSwgMTk2LCA4MCwgNjksIDgzLCA3OSwgCisgICAgMTI4LCA4MCwgNjksIDgzLCAyMDcsIDgwLCA2OSwgODMsIDcyLCA1MCwgMTI4LCA4MCwgNjksIDgzLCA2OSwgODQsIDE5MywgCisgICAgODAsIDY5LCAyMTEsIDgwLCA2OSwgODIsIDg0LCA3MiwgMjA3LCA4MCwgNjksIDgyLCA4MywgODAsIDY5LCA2NywgODQsIDczLCAKKyAgICA4NiwgNjksIDEyOCwgODAsIDY5LCA4MiwgODMsIDc5LCA3OCwgNjUsIDIwNCwgODAsIDY5LCA4MiwgODMsIDc5LCA3OCwgCisgICAgMTI4LCA4MCwgNjksIDgyLCA4MywgNzksIDIwNiwgODAsIDY5LCA4MiwgODMsIDczLCA2NSwgMjA2LCA4MCwgNjksIDgyLCAKKyAgICA4MywgNjksIDg2LCA2OSwgODIsIDczLCA3OCwgMTk5LCA4MCwgNjksIDgyLCA4MCwgNjksIDc4LCA2OCwgNzMsIDY3LCA4NSwgCisgICAgNzYsIDY1LCA4MiwgMTI4LCA4MCwgNjksIDgyLCA4MCwgNjksIDc4LCA2OCwgNzMsIDY3LCA4NSwgNzYsIDY1LCAyMTAsIDgwLCAKKyAgICA2OSwgODIsIDc3LCA2NSwgNzgsIDY5LCA3OCwgMjEyLCA4MCwgNjksIDgyLCA3MywgODMsIDgwLCA3OSwgNzcsIDY5LCA3OCwgCisgICAgNzMsIDEyOCwgODAsIDY5LCA4MiwgNzMsIDgzLCA4MCwgNzksIDc3LCA2OSwgNzgsIDIwMSwgODAsIDY5LCA4MiwgNzAsIDc5LCAKKyAgICA4MiwgNzcsIDczLCA3OCwgMTk5LCA4MCwgNjksIDgyLCA3MCwgNjksIDY3LCA4NCwgODUsIDIwNSwgODAsIDY5LCA4MiwgNzAsIAorICAgIDY5LCA2NywgODQsIDY1LCAxMjgsIDgwLCA2OSwgODIsIDcwLCA2OSwgNjcsIDg0LCAxOTMsIDgwLCA2OSwgODIsIDY3LCA4NSwgCisgICAgODMsIDgzLCA3MywgODYsIDY5LCAxMjgsIDgwLCA2OSwgODIsIDY3LCA2OSwgNzgsIDIxMiwgODAsIDY5LCA4MCwgNjksIDg0LCAKKyAgICAxMjgsIDgwLCA2OSwgODAsIDY5LCAyMTIsIDgwLCA2OSwgNzksIDgyLCA4NCwgMjAwLCA4MCwgNjksIDc5LCA4MCwgNzYsIAorICAgIDY5LCAxMjgsIDgwLCA2OSwgNzgsIDg0LCA2NSwgODMsIDY5LCA3NywgNjksIDEyOCwgODAsIDY5LCA3OCwgODQsIDY1LCA3MSwgCisgICAgODIsIDY1LCA3NywgMTI4LCA4MCwgNjksIDc4LCA4NCwgNjUsIDcxLCA3OSwgNzgsIDEyOCwgODAsIDY5LCA3OCwgODMsIDg1LCAKICAgICAxMjgsIDgwLCA2OSwgNzgsIDgzLCA3MywgODYsIDE5NywgODAsIDY5LCA3OCwgNzgsIDIxNywgODAsIDY5LCA3OCwgNzMsIAogICAgIDcyLCA3MywgMTI4LCA4MCwgNjksIDc4LCA3MSwgODUsIDczLCA3OCwgMTI4LCA4MCwgNjksIDc4LCA3MSwgNzUsIDY1LCA3NiwgCiAgICAgMTI4LCA4MCwgNjksIDc4LCA2OSwgODQsIDgyLCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgODAsIDY5LCA3OCwgNjcsIDczLCAKQEAgLTE0NjQsODQgKzE0NzEsODQgQEAKICAgICA2OSwgNjUsIDY3LCA2OSwgMTI4LCA4MCwgNjksIDY1LCA2NywgMTk3LCA4MCwgNjgsIDEyOCwgODAsIDY3LCAxMjgsIDgwLCAKICAgICA2NSwgOTAsIDY5LCA4MiwgMTI4LCA4MCwgNjUsIDg5LCA2OSwgODIsIDc5LCA3NSwgMTI4LCA4MCwgNjUsIDg5LCA2NSwgNzgsIAogICAgIDc4LCA2NSwgMTI4LCA4MCwgNjUsIDg5LCAxMjgsIDgwLCA2NSwgODgsIDEyOCwgODAsIDY1LCA4NywgNzgsIDEyOCwgODAsIAotICAgIDY1LCAyMTUsIDgwLCA2NSwgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA4MCwgNjUsIDg0LCA4NCwgNjksIDgyLCA3OCwgCi0gICAgMTI4LCA4MCwgNjUsIDg0LCA3MiwgNjUsIDc3LCA2NSwgODMsIDY1LCA4NCwgMTI4LCA4MCwgNjUsIDg0LCAyMDAsIDgwLCAKLSAgICA2NSwgODQsIDY1LCA3NSwgMTI4LCA4MCwgNjUsIDg0LCA2NSwgNzIsIDEyOCwgODAsIDY1LCA4NCwgMTI4LCA4MCwgNjUsIAotICAgIDgzLCA4NSwgODEsIDEyOCwgODAsIDY1LCA4MywgODMsIDgwLCA3OSwgODIsIDIxMiwgODAsIDY1LCA4MywgODMsIDczLCA4NiwgCi0gICAgNjksIDQ1LCA4MCwgODUsIDc2LCA3NiwgNDUsIDg1LCA4MCwgNDUsIDc5LCA4NSwgODQsIDgwLCA4NSwgMjEyLCA4MCwgNjUsIAotICAgIDgzLCA4MywgNzMsIDg2LCA2OSwgNDUsIDgwLCA4NSwgNzYsIDc2LCA0NSwgNjgsIDc5LCA4NywgNzgsIDQ1LCA3OSwgODUsIAotICAgIDg0LCA4MCwgODUsIDIxMiwgODAsIDY1LCA4MywgNzIsIDg0LCA2NSwgMTI4LCA4MCwgNjUsIDgzLCA3MiwgNjUsIDY5LCAKLSAgICAxMjgsIDgwLCA2NSwgODMsIDY5LCA4MSwgMTI4LCA4MCwgNjUsIDgyLCA4NSwgNzcsIDEyOCwgODAsIDY1LCA4MiwgODQsIAotICAgIDIxNywgODAsIDY1LCA4MiwgODQsIDc4LCA2OSwgODIsIDgzLCA3MiwgNzMsIDIwOCwgODAsIDY1LCA4MiwgODQsIDczLCA2NSwgCi0gICAgNzYsIDc2LCA4OSwgNDUsIDgyLCA2OSwgNjcsIDg5LCA2NywgNzYsIDY5LCAxOTYsIDgwLCA2NSwgODIsIDg0LCA3MywgNjUsIAotICAgIDIwNCwgODAsIDY1LCA4MiwgODQsIDcyLCA3MywgNjUsIDIwNiwgODAsIDY1LCA4MiwgMjEyLCA4MCwgNjUsIDgyLCA3MywgCi0gICAgNjcsIDcyLCA3OSwgNzgsIDEyOCwgODAsIDY1LCA4MiwgNjksIDgzLCA4NCwgNzMsIDcxLCA3NywgNjksIDc4LCA3OSwgMjA2LCAKLSAgICA4MCwgNjUsIDgyLCA2OSwgODIsIDY5LCA3OCwgMTI4LCA4MCwgNjUsIDgyLCA2OSwgNzgsIDg0LCA3MiwgNjksIDgzLCA3MywgCi0gICAgODMsIDEyOCwgODAsIDY1LCA4MiwgNjksIDc4LCA4NCwgNzIsIDY5LCA4MywgNzMsIDIxMSwgODAsIDY1LCA4MiwgNjUsIDgwLCAKLSAgICA3MiwgODIsIDY1LCA4MywgMTk3LCA4MCwgNjUsIDgyLCA2NSwgNzYsIDc2LCA2OSwgNzYsIDc5LCA3MSwgODIsIDY1LCA3NywgCi0gICAgMTI4LCA4MCwgNjUsIDgyLCA2NSwgNzYsIDc2LCA2OSwgNzYsIDEyOCwgODAsIDY1LCA4MiwgNjUsIDc2LCA3NiwgNjksIAotICAgIDIwNCwgODAsIDY1LCA4MiwgNjUsIDc1LCA3NiwgNzMsIDg0LCA3MywgNzUsIDczLCAxMjgsIDgwLCA2NSwgODIsIDY1LCA3NSwgCi0gICAgNzYsIDczLCA4NCwgNzMsIDc1LCAyMDEsIDgwLCA2NSwgODIsIDY1LCA3NSwgNjUsIDc2LCA2OSwgODMsIDc3LCAxOTMsIDgwLCAKLSAgICA2NSwgODIsIDY1LCA3MSwgODIsIDY1LCA4MCwgNzIsIDc5LCA4MywgMTI4LCA4MCwgNjUsIDgyLCA2NSwgNzEsIDgyLCA2NSwgCi0gICAgODAsIDcyLCAxMjgsIDgwLCA2NSwgODIsIDY1LCA3MSwgODIsIDY1LCA4MCwgMjAwLCA4MCwgNjUsIDgyLCA2NSwgMTI4LCAKLSAgICA4MCwgNjUsIDgyLCAxMjgsIDgwLCA2NSwgODAsIDg5LCA4MiwgODUsIDgzLCAxMjgsIDgwLCA2NSwgODAsIDY5LCA4MiwgNjcsIAotICAgIDc2LCA3MywgODAsIDEyOCwgODAsIDY1LCA4MCwgNjksIDIxMCwgODAsIDY1LCA4MCwgMTI4LCA4MCwgNjUsIDIwOCwgODAsIAotICAgIDY1LCAyMDcsIDgwLCA2NSwgNzgsIDg5LCA4NSwgNzUsIDg1LCAxMjgsIDgwLCA2NSwgNzgsIDg5LCA3MywgNzUsIDg1LCAKLSAgICAxMjgsIDgwLCA2NSwgNzgsIDg5LCA2OSwgNjcsIDY5LCA3NSwgMTI4LCA4MCwgNjUsIDc4LCA4OSwgNjUsIDc4LCA3MSwgNzEsIAotICAgIDY1LCAxMjgsIDgwLCA2NSwgNzgsIDg5LCA2NSwgNzUsIDgyLCA2NSwgMTI4LCA4MCwgNjUsIDc4LCA4NCwgNzMsIDEyOCwgCi0gICAgODAsIDY1LCA3OCwgODMsIDczLCA3OSwgODMsIDQ1LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgODAsIDY1LCA3OCwgODMsIAotICAgIDczLCA3OSwgODMsIDQ1LCA3NSwgNjUsIDgwLCA4OSwgNjksIDc5LCA4NSwgNzgsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCAKLSAgICA4MCwgNjUsIDc4LCA3OSwgNzgsIDcxLCA3OSwgNzgsIDY1LCA3OCwgMTI4LCA4MCwgNjUsIDc4LCA3OSwgNzYsIDc5LCA3OCwgCi0gICAgNzEsIDEyOCwgODAsIDY1LCA3OCwgNzEsIDg3LCA3MywgODMsIDY1LCA2OCwgMTI4LCA4MCwgNjUsIDc4LCA3MSwgODIsIDY1LCAKLSAgICA3OCwgNzEsIDc1LCA2OSwgODAsIDEyOCwgODAsIDY1LCA3OCwgNzEsIDc5LCA3NiwgNjUsIDg0LCAxMjgsIDgwLCA2NSwgNzgsIAotICAgIDcxLCA3NiwgNjUsIDg5LCA2NSwgODIsIDEyOCwgODAsIDY1LCA3OCwgNzEsIDc1LCA3OSwgNzgsIDEyOCwgODAsIDY1LCA3OCwgCi0gICAgNzEsIDc1LCA2NSwgODQsIDEyOCwgODAsIDY1LCA3OCwgNzEsIDcyLCA4NSwgNzYsIDg1LCAxMjgsIDgwLCA2NSwgNzgsIDcxLCAKLSAgICAxMjgsIDgwLCA2NSwgNzgsIDY5LCA4NSwgNzYsIDY5LCA4NSwgNzgsIDcxLCAxMjgsIDgwLCA2NSwgNzgsIDY4LCAxOTMsIAotICAgIDgwLCA2NSwgNzgsIDY1LCA2OSwgNzYsIDY1LCA2OSwgNzgsIDcxLCAxMjgsIDgwLCA2NSwgNzgsIDEyOCwgODAsIDY1LCA3NywgCi0gICAgODUsIDc4LCA3MSwgNzUsIDY1LCA3MiwgMTI4LCA4MCwgNjUsIDc3LCA4NSwgNjgsIDgwLCA3OSwgNjgsIDEyOCwgODAsIDY1LCAKLSAgICA3NywgODMsIDcyLCA2NSwgNjksIDEyOCwgODAsIDY1LCA3NywgODAsIDcyLCA4OSwgNzYsIDczLCA2NSwgMjA2LCA4MCwgNjUsIAotICAgIDc3LCA3MywgNzgsIDcxLCA3NSwgNjUsIDc2LCAxMjgsIDgwLCA2NSwgNzcsIDY5LCA4MCwgNjksIDg0LCAxMjgsIDgwLCA2NSwgCi0gICAgNzcsIDY5LCA3OCwgNjksIDc4LCA3MSwgMTI4LCA4MCwgNjUsIDc3LCA2NSwgNjgsIDY1LCAxMjgsIDgwLCA2NSwgNzcsIDY1LCAKLSAgICA2NSwgNjksIDcyLCAxMjgsIDgwLCA2NSwgNzYsIDg1LCA4NCwgNjUsIDEyOCwgODAsIDY1LCA3NiwgNzksIDY3LCA3MiwgNzUsIAotICAgIDY1LCAxMjgsIDgwLCA2NSwgNzYsIDIwNSwgODAsIDY1LCA3NiwgNzYsIDY1LCA4NywgNjUsIDEyOCwgODAsIDY1LCA3NiwgCi0gICAgNzYsIDY1LCA4MywgMTI4LCA4MCwgNjUsIDc2LCA2OSwgODQsIDg0LCA2OSwgMTI4LCA4MCwgNjUsIDc2LCA2NSwgODUsIDc4LCAKLSAgICAxOTksIDgwLCA2NSwgNzYsIDY1LCA4NCwgNjUsIDc2LCA3MywgOTAsIDY5LCAxOTYsIDgwLCA2NSwgNzYsIDY1LCA4NCwgNjUsIAotICAgIDc2LCA3MywgOTAsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA4MCwgNjUsIDc2LCA2NSwgODQsIDY1LCAyMDQsIDgwLCA2NSwgCi0gICAgNzUsIDgwLCA2NSwgMjAzLCA4MCwgNjUsIDczLCA4OSwgNjUsIDc4LCA3OCwgNzksIDczLCAxMjgsIDgwLCA2NSwgNzMsIDgyLCAKLSAgICA4NCwgNzIsIDgyLCA2NSwgMTI4LCA4MCwgNjUsIDczLCA4MiwgNjksIDE5NiwgODAsIDY1LCA3MiwgNzYsIDY1LCA4NiwgCi0gICAgMjAxLCA4MCwgNjUsIDcxLCA2OSwgODIsIDEyOCwgODAsIDY1LCA3MSwgMTk3LCA4MCwgNjUsIDY4LCA3NywgMTkzLCA4MCwgCi0gICAgNjUsIDY4LCAxOTMsIDgwLCA2NSwgNjgsIDEyOCwgODAsIDY1LCA2NywgNzUsIDczLCA3OCwgNzEsIDEyOCwgODAsIDY1LCAKLSAgICA2NywgNzUsIDY1LCA3MSwgNjksIDEyOCwgODAsIDY1LCA2NSwgODQsIDg1LCAxMjgsIDgwLCA2NSwgNjUsIDgzLCA2OSwgNzgsIAotICAgIDg0LCA3OSwgMTI4LCA4MCwgNjUsIDY1LCA4MiwgNjUsIDY5LCAxMjgsIDgwLCA2NSwgNjUsIDc3LCAxMjgsIDgwLCA2NSwgCi0gICAgNjUsIDczLCAxMjgsIDgwLCA2NSwgNjUsIDQ1LCA4MCwgNzMsIDc2LCA3NiwgNjUsIDEyOCwgODAsIDY1LCA2NSwgMTI4LCAKLSAgICA4MCwgNTAsIDEyOCwgODAsIDQ4LCA0OSwgNDksIDEyOCwgODAsIDQ4LCA0OSwgNDgsIDEyOCwgODAsIDQ4LCA0OCwgNTcsIAotICAgIDEyOCwgODAsIDQ4LCA0OCwgNTYsIDEyOCwgODAsIDQ4LCA0OCwgNTUsIDEyOCwgODAsIDQ4LCA0OCwgNTQsIDEyOCwgODAsIAotICAgIDQ4LCA0OCwgNTMsIDEyOCwgODAsIDQ4LCA0OCwgNTIsIDEyOCwgODAsIDQ4LCA0OCwgNTEsIDY1LCAxMjgsIDgwLCA0OCwgCi0gICAgNDgsIDUxLCAxMjgsIDgwLCA0OCwgNDgsIDUwLCAxMjgsIDgwLCA0OCwgNDgsIDQ5LCA2NSwgMTI4LCA4MCwgNDgsIDQ4LCAKLSAgICA0OSwgMTI4LCA3OSwgODksIDgyLCA2NSwgNzgsIDczLCA4MywgNzcsIDE5MywgNzksIDg5LCA2NSwgNzgsIDc4LCA2NSwgCi0gICAgMTI4LCA3OSwgODgsIDczLCA2NSwgMTI4LCA3OSwgODgsIDczLCAxOTMsIDc5LCA4OCwgNjksIDczLCA2NSwgMjAxLCA3OSwgCi0gICAgODgsIDY5LCA3MywgMTkzLCA3OSwgODYsIDY5LCA4MiwgODIsIDczLCA2OCwgNjksIDEyOCwgNzksIDg2LCA2OSwgODIsIDc2LCAKLSAgICA3OSwgNzgsIDE5OSwgNzksIDg2LCA2OSwgODIsIDc2LCA3MywgNzgsIDY5LCAxMjgsIDc5LCA4NiwgNjksIDgyLCA3NiwgNjUsIAotICAgIDg5LCAxMjgsIDc5LCA4NiwgNjksIDgyLCA3NiwgNjUsIDgwLCA4MCwgNzMsIDc4LCAxOTksIDc5LCA4NiwgNjksIDgyLCA3NiwgCi0gICAgNjUsIDczLCA2OCwgMTI4LCA3OSwgODYsIDY5LCA4MiwgNjYsIDY1LCA4MiwgMTI4LCA3OSwgODYsIDY1LCAyMDQsIDc5LCAKLSAgICA4NiwgMTI4LCA3OSwgODUsIDg0LCA3NiwgNzMsIDc4LCA2OSwgMTk2LCA3OSwgODUsIDg0LCA3NiwgNzMsIDc4LCA2OSwgCi0gICAgMTI4LCA3OSwgODUsIDg0LCA2OSwgMjEwLCA3OSwgODUsIDg0LCA2NiwgNzksIDIxNiwgNzksIDg1LCA3OCwgNzUsIDczLCAKLSAgICAxOTMsIDc5LCA4NSwgNzgsIDY3LCA2OSwgMTI4LCA3OSwgODUsIDc4LCA2NywgMTk3LCA3OSwgODQsIDg1LCAxMjgsIDc5LCAKLSAgICA4NCwgODQsIDY1LCA4NiwgMTkzLCA3OSwgODQsIDg0LCAxMjgsIDc5LCA4NCwgNzIsIDY1LCA3NiwgNjUsIDIwNiwgNzksIAotICAgIDg0LCA3MiwgNjUsIDc2LCAxMjgsIDc5LCA4MywgNzcsIDY1LCA3OCwgODksIDE5MywgNzksIDgyLCA4NCwgNzIsIDc5LCA3MSwgCi0gICAgNzksIDc4LCA2NSwgMjA0LCA3OSwgODIsIDg0LCA3MiwgNzksIDY4LCA3OSwgMjE2LCA3OSwgODIsIDc4LCA2NSwgODQsIAotICAgIDE5NywgNzksIDgyLCA3OCwgNjUsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDc5LCA4MiwgNzgsIDY1LCA3NywgNjksIDc4LCAKLSAgICAyMTIsIDc5LCA4MiwgNzUsIDcyLCA3OSwgMjA2LCA3OSwgODIsIDczLCA3MSwgNzMsIDc4LCA2NSwgMjA0LCA3OSwgODIsIAotICAgIDczLCA3MSwgNzMsIDc4LCAxMjgsIDc5LCA4MiwgNjksIDQ1LCA1MCwgMTI4LCA3OSwgODIsIDY4LCA3MywgNzgsIDY1LCAKLSAgICAyMDQsIDc5LCA4MiwgNjcsIDcyLCA3MywgNjgsIDEyOCwgNzksIDgyLCA2NSwgNzgsIDcxLCAxOTcsIDc5LCA4MCwgODQsIAotICAgIDczLCA3OSwgMjA2LCA3OSwgODAsIDg0LCA3MywgNjcsIDY1LCAyMDQsIDc5LCA4MCwgODAsIDgyLCA2OSwgODMsIDgzLCA3MywgCi0gICAgNzksIDc4LCAxMjgsIDc5LCA4MCwgODAsIDc5LCA4MywgNzMsIDg0LCA3MywgNzksIDc4LCAxMjgsIDc5LCA4MCwgODAsIDc5LCAKLSAgICA4MywgNzMsIDc4LCAxOTksIDc5LCA4MCwgODAsIDc5LCA4MywgNjksIDEyOCwgNzksIDgwLCA3MiwgNzMsIDg1LCA2NywgNzIsIAotICAgIDg1LCA4MywgMTI4LCA3OSwgODAsIDY5LCA4MiwgNjUsIDg0LCA3OSwgODIsIDEyOCwgNzksIDgwLCA2OSwgODIsIDY1LCA4NCwgCi0gICAgNzksIDIxMCwgNzksIDgwLCA2OSwgNzgsIDczLCA3OCwgMTk5LCA3OSwgODAsIDY5LCA3OCwgNDUsIDgwLCAxMjgsIDc5LCAKLSAgICA4MCwgNjksIDc4LCA0NSwgNzksIDg1LCA4NCwgNzYsIDczLCA3OCwgNjksIDE5NiwgNzksIDgwLCA2OSwgNzgsIDQ1LCA3MiwgCi0gICAgNjksIDY1LCA2OCwgNjksIDE5NiwgNzksIDgwLCA2OSwgNzgsIDQ1LCA2NywgNzMsIDgyLCA2NywgODUsIDczLCA4NCwgNDUsIAotICAgIDc5LCA4NSwgODQsIDgwLCA4NSwgMjEyLCA3OSwgODAsIDY5LCAyMDYsIDc5LCA3OSwgOTAsIDY5LCAxMjgsIDc5LCA3OSwgCisgICAgNjUsIDIxNSwgODAsIDY1LCA4NiwgNzMsIDg5LCA2NSwgNzgsIDczLCAxMjgsIDgwLCA2NSwgODUsIDEyOCwgODAsIDY1LCAKKyAgICA4NCwgODQsIDY5LCA4MiwgNzgsIDEyOCwgODAsIDY1LCA4NCwgNzIsIDY1LCA3NywgNjUsIDgzLCA2NSwgODQsIDEyOCwgODAsIAorICAgIDY1LCA4NCwgMjAwLCA4MCwgNjUsIDg0LCA2NSwgNzUsIDEyOCwgODAsIDY1LCA4NCwgNjUsIDcyLCAxMjgsIDgwLCA2NSwgCisgICAgODQsIDEyOCwgODAsIDY1LCA4MywgODUsIDgxLCAxMjgsIDgwLCA2NSwgODMsIDgzLCA4MCwgNzksIDgyLCAyMTIsIDgwLCAKKyAgICA2NSwgODMsIDgzLCA3MywgODYsIDY5LCA0NSwgODAsIDg1LCA3NiwgNzYsIDQ1LCA4NSwgODAsIDQ1LCA3OSwgODUsIDg0LCAKKyAgICA4MCwgODUsIDIxMiwgODAsIDY1LCA4MywgODMsIDczLCA4NiwgNjksIDQ1LCA4MCwgODUsIDc2LCA3NiwgNDUsIDY4LCA3OSwgCisgICAgODcsIDc4LCA0NSwgNzksIDg1LCA4NCwgODAsIDg1LCAyMTIsIDgwLCA2NSwgODMsIDcyLCA4NCwgNjUsIDEyOCwgODAsIDY1LCAKKyAgICA4MywgNzIsIDY1LCA2OSwgMTI4LCA4MCwgNjUsIDgzLCA2OSwgODEsIDEyOCwgODAsIDY1LCA4MiwgODUsIDc3LCAxMjgsIAorICAgIDgwLCA2NSwgODIsIDg0LCAyMTcsIDgwLCA2NSwgODIsIDg0LCA3OCwgNjksIDgyLCA4MywgNzIsIDczLCAyMDgsIDgwLCA2NSwgCisgICAgODIsIDg0LCA3MywgNjUsIDc2LCA3NiwgODksIDQ1LCA4MiwgNjksIDY3LCA4OSwgNjcsIDc2LCA2OSwgMTk2LCA4MCwgNjUsIAorICAgIDgyLCA4NCwgNzMsIDY1LCAyMDQsIDgwLCA2NSwgODIsIDg0LCA3MiwgNzMsIDY1LCAyMDYsIDgwLCA2NSwgODIsIDIxMiwgCisgICAgODAsIDY1LCA4MiwgNzMsIDY3LCA3MiwgNzksIDc4LCAxMjgsIDgwLCA2NSwgODIsIDY5LCA4MywgODQsIDczLCA3MSwgNzcsIAorICAgIDY5LCA3OCwgNzksIDIwNiwgODAsIDY1LCA4MiwgNjksIDgyLCA2OSwgNzgsIDEyOCwgODAsIDY1LCA4MiwgNjksIDc4LCA4NCwgCisgICAgNzIsIDY5LCA4MywgNzMsIDgzLCAxMjgsIDgwLCA2NSwgODIsIDY5LCA3OCwgODQsIDcyLCA2OSwgODMsIDczLCAyMTEsIDgwLCAKKyAgICA2NSwgODIsIDY1LCA4MCwgNzIsIDgyLCA2NSwgODMsIDE5NywgODAsIDY1LCA4MiwgNjUsIDc2LCA3NiwgNjksIDc2LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgNzcsIDEyOCwgODAsIDY1LCA4MiwgNjUsIDc2LCA3NiwgNjksIDc2LCAxMjgsIDgwLCA2NSwgODIsIDY1LCAKKyAgICA3NiwgNzYsIDY5LCAyMDQsIDgwLCA2NSwgODIsIDY1LCA3NSwgNzYsIDczLCA4NCwgNzMsIDc1LCA3MywgMTI4LCA4MCwgNjUsIAorICAgIDgyLCA2NSwgNzUsIDc2LCA3MywgODQsIDczLCA3NSwgMjAxLCA4MCwgNjUsIDgyLCA2NSwgNzUsIDY1LCA3NiwgNjksIDgzLCAKKyAgICA3NywgMTkzLCA4MCwgNjUsIDgyLCA2NSwgNzEsIDgyLCA2NSwgODAsIDcyLCA3OSwgODMsIDEyOCwgODAsIDY1LCA4MiwgNjUsIAorICAgIDcxLCA4MiwgNjUsIDgwLCA3MiwgMTI4LCA4MCwgNjUsIDgyLCA2NSwgNzEsIDgyLCA2NSwgODAsIDIwMCwgODAsIDY1LCA4MiwgCisgICAgNjUsIDEyOCwgODAsIDY1LCA4MiwgMTI4LCA4MCwgNjUsIDgwLCA4OSwgODIsIDg1LCA4MywgMTI4LCA4MCwgNjUsIDgwLCAKKyAgICA2OSwgODIsIDY3LCA3NiwgNzMsIDgwLCAxMjgsIDgwLCA2NSwgODAsIDY5LCAyMTAsIDgwLCA2NSwgODAsIDEyOCwgODAsIAorICAgIDY1LCAyMDgsIDgwLCA2NSwgMjA3LCA4MCwgNjUsIDc4LCA4OSwgODUsIDc1LCA4NSwgMTI4LCA4MCwgNjUsIDc4LCA4OSwgCisgICAgNzMsIDc1LCA4NSwgMTI4LCA4MCwgNjUsIDc4LCA4OSwgNjksIDY3LCA2OSwgNzUsIDEyOCwgODAsIDY1LCA3OCwgODksIDY1LCAKKyAgICA3OCwgNzEsIDcxLCA2NSwgMTI4LCA4MCwgNjUsIDc4LCA4OSwgNjUsIDc1LCA4MiwgNjUsIDEyOCwgODAsIDY1LCA3OCwgODQsIAorICAgIDczLCAxMjgsIDgwLCA2NSwgNzgsIDgzLCA3MywgNzksIDgzLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDgwLCA2NSwgCisgICAgNzgsIDgzLCA3MywgNzksIDgzLCA0NSwgNzUsIDY1LCA4MCwgODksIDY5LCA3OSwgODUsIDc4LCA4MCwgNzMsIDY5LCA4NSwgCisgICAgODAsIDEyOCwgODAsIDY1LCA3OCwgNzksIDc4LCA3MSwgNzksIDc4LCA2NSwgNzgsIDEyOCwgODAsIDY1LCA3OCwgNzksIDc2LCAKKyAgICA3OSwgNzgsIDcxLCAxMjgsIDgwLCA2NSwgNzgsIDcxLCA4NywgNzMsIDgzLCA2NSwgNjgsIDEyOCwgODAsIDY1LCA3OCwgNzEsIAorICAgIDgyLCA2NSwgNzgsIDcxLCA3NSwgNjksIDgwLCAxMjgsIDgwLCA2NSwgNzgsIDcxLCA3OSwgNzYsIDY1LCA4NCwgMTI4LCA4MCwgCisgICAgNjUsIDc4LCA3MSwgNzYsIDY1LCA4OSwgNjUsIDgyLCAxMjgsIDgwLCA2NSwgNzgsIDcxLCA3NSwgNzksIDc4LCAxMjgsIDgwLCAKKyAgICA2NSwgNzgsIDcxLCA3NSwgNjUsIDg0LCAxMjgsIDgwLCA2NSwgNzgsIDcxLCA3MiwgODUsIDc2LCA4NSwgMTI4LCA4MCwgNjUsIAorICAgIDc4LCA3MSwgMTI4LCA4MCwgNjUsIDc4LCA2OSwgODUsIDc2LCA2OSwgODUsIDc4LCA3MSwgMTI4LCA4MCwgNjUsIDc4LCA2OCwgCisgICAgMTkzLCA4MCwgNjUsIDc4LCA2NSwgNjksIDc2LCA2NSwgNjksIDc4LCA3MSwgMTI4LCA4MCwgNjUsIDc4LCAxMjgsIDgwLCAKKyAgICA2NSwgNzcsIDg1LCA3OCwgNzEsIDc1LCA2NSwgNzIsIDEyOCwgODAsIDY1LCA3NywgODUsIDY4LCA4MCwgNzksIDY4LCAxMjgsIAorICAgIDgwLCA2NSwgNzcsIDgzLCA3MiwgNjUsIDY5LCAxMjgsIDgwLCA2NSwgNzcsIDgwLCA3MiwgODksIDc2LCA3MywgNjUsIDIwNiwgCisgICAgODAsIDY1LCA3NywgNzMsIDc4LCA3MSwgNzUsIDY1LCA3NiwgMTI4LCA4MCwgNjUsIDc3LCA2OSwgODAsIDY5LCA4NCwgMTI4LCAKKyAgICA4MCwgNjUsIDc3LCA2OSwgNzgsIDY5LCA3OCwgNzEsIDEyOCwgODAsIDY1LCA3NywgNjUsIDY4LCA2NSwgMTI4LCA4MCwgNjUsIAorICAgIDc3LCA2NSwgNjUsIDY5LCA3MiwgMTI4LCA4MCwgNjUsIDc2LCA4NSwgODQsIDY1LCAxMjgsIDgwLCA2NSwgNzYsIDc5LCA2NywgCisgICAgNzIsIDc1LCA2NSwgMTI4LCA4MCwgNjUsIDc2LCAyMDUsIDgwLCA2NSwgNzYsIDc2LCA2NSwgODcsIDY1LCAxMjgsIDgwLCAKKyAgICA2NSwgNzYsIDc2LCA2NSwgODMsIDEyOCwgODAsIDY1LCA3NiwgNjksIDg0LCA4NCwgNjksIDEyOCwgODAsIDY1LCA3NiwgNjUsIAorICAgIDg1LCA3OCwgMTk5LCA4MCwgNjUsIDc2LCA2NSwgODQsIDY1LCA3NiwgNzMsIDkwLCA2OSwgMTk2LCA4MCwgNjUsIDc2LCA2NSwgCisgICAgODQsIDY1LCA3NiwgNzMsIDkwLCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgODAsIDY1LCA3NiwgNjUsIDg0LCA2NSwgMjA0LCAKKyAgICA4MCwgNjUsIDc1LCA4MCwgNjUsIDIwMywgODAsIDY1LCA3MywgODksIDY1LCA3OCwgNzgsIDc5LCA3MywgMTI4LCA4MCwgNjUsIAorICAgIDczLCA4MiwgODQsIDcyLCA4MiwgNjUsIDEyOCwgODAsIDY1LCA3MywgODIsIDY5LCAxOTYsIDgwLCA2NSwgNzMsIDEyOCwgCisgICAgODAsIDY1LCA3MiwgNzYsIDY1LCA4NiwgMjAxLCA4MCwgNjUsIDcxLCA2OSwgODIsIDEyOCwgODAsIDY1LCA3MSwgMTk3LCAKKyAgICA4MCwgNjUsIDY4LCA3NywgMTkzLCA4MCwgNjUsIDY4LCAxOTMsIDgwLCA2NSwgNjgsIDEyOCwgODAsIDY1LCA2NywgNzUsIAorICAgIDczLCA3OCwgNzEsIDEyOCwgODAsIDY1LCA2NywgNzUsIDY1LCA3MSwgNjksIDEyOCwgODAsIDY1LCA2NSwgODQsIDg1LCAKKyAgICAxMjgsIDgwLCA2NSwgNjUsIDgzLCA2OSwgNzgsIDg0LCA3OSwgMTI4LCA4MCwgNjUsIDY1LCA4MiwgNjUsIDY5LCAxMjgsIAorICAgIDgwLCA2NSwgNjUsIDc3LCAxMjgsIDgwLCA2NSwgNjUsIDczLCAxMjgsIDgwLCA2NSwgNjUsIDQ1LCA4MCwgNzMsIDc2LCA3NiwgCisgICAgNjUsIDEyOCwgODAsIDY1LCA2NSwgMTI4LCA4MCwgNTAsIDEyOCwgODAsIDQ4LCA0OSwgNDksIDEyOCwgODAsIDQ4LCA0OSwgCisgICAgNDgsIDEyOCwgODAsIDQ4LCA0OCwgNTcsIDEyOCwgODAsIDQ4LCA0OCwgNTYsIDEyOCwgODAsIDQ4LCA0OCwgNTUsIDEyOCwgCisgICAgODAsIDQ4LCA0OCwgNTQsIDEyOCwgODAsIDQ4LCA0OCwgNTMsIDEyOCwgODAsIDQ4LCA0OCwgNTIsIDEyOCwgODAsIDQ4LCAKKyAgICA0OCwgNTEsIDY1LCAxMjgsIDgwLCA0OCwgNDgsIDUxLCAxMjgsIDgwLCA0OCwgNDgsIDUwLCAxMjgsIDgwLCA0OCwgNDgsIAorICAgIDQ5LCA2NSwgMTI4LCA4MCwgNDgsIDQ4LCA0OSwgMTI4LCA3OSwgODksIDgyLCA2NSwgNzgsIDczLCA4MywgNzcsIDE5MywgCisgICAgNzksIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3OSwgODgsIDczLCA2NSwgMTI4LCA3OSwgODgsIDczLCAxOTMsIDc5LCAKKyAgICA4OCwgNjksIDczLCA2NSwgMjAxLCA3OSwgODgsIDY5LCA3MywgMTkzLCA3OSwgODYsIDY5LCA4MiwgODIsIDczLCA2OCwgNjksIAorICAgIDEyOCwgNzksIDg2LCA2OSwgODIsIDc2LCA3OSwgNzgsIDE5OSwgNzksIDg2LCA2OSwgODIsIDc2LCA3MywgNzgsIDY5LCAKKyAgICAxMjgsIDc5LCA4NiwgNjksIDgyLCA3NiwgNjUsIDg5LCAxMjgsIDc5LCA4NiwgNjksIDgyLCA3NiwgNjUsIDgwLCA4MCwgNzMsIAorICAgIDc4LCAxOTksIDc5LCA4NiwgNjksIDgyLCA3NiwgNjUsIDczLCA2OCwgMTI4LCA3OSwgODYsIDY5LCA4MiwgNjYsIDY1LCA4MiwgCisgICAgMTI4LCA3OSwgODYsIDY1LCAyMDQsIDc5LCA4NiwgMTI4LCA3OSwgODUsIDg0LCA3NiwgNzMsIDc4LCA2OSwgMTk2LCA3OSwgCisgICAgODUsIDg0LCA3NiwgNzMsIDc4LCA2OSwgMTI4LCA3OSwgODUsIDg0LCA2OSwgMjEwLCA3OSwgODUsIDg0LCA2NiwgNzksIAorICAgIDIxNiwgNzksIDg1LCA3OCwgNzUsIDczLCAxOTMsIDc5LCA4NSwgNzgsIDY3LCA2OSwgMTI4LCA3OSwgODUsIDc4LCA2NywgCisgICAgMTk3LCA3OSwgODQsIDg1LCAxMjgsIDc5LCA4NCwgODQsIDY1LCA4NiwgMTkzLCA3OSwgODQsIDg0LCAxMjgsIDc5LCA4NCwgCisgICAgNzIsIDY1LCA3NiwgNjUsIDIwNiwgNzksIDg0LCA3MiwgNjUsIDc2LCAxMjgsIDc5LCA4MywgNzcsIDY1LCA3OCwgODksIAorICAgIDE5MywgNzksIDgyLCA4NCwgNzIsIDc5LCA3MSwgNzksIDc4LCA2NSwgMjA0LCA3OSwgODIsIDg0LCA3MiwgNzksIDY4LCA3OSwgCisgICAgMjE2LCA3OSwgODIsIDc4LCA2NSwgODQsIDE5NywgNzksIDgyLCA3OCwgNjUsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDc5LCAKKyAgICA4MiwgNzgsIDY1LCA3NywgNjksIDc4LCAyMTIsIDc5LCA4MiwgNzUsIDcyLCA3OSwgMjA2LCA3OSwgODIsIDczLCA3MSwgNzMsIAorICAgIDc4LCA2NSwgMjA0LCA3OSwgODIsIDczLCA3MSwgNzMsIDc4LCAxMjgsIDc5LCA4MiwgNjksIDQ1LCA1MCwgMTI4LCA3OSwgCisgICAgODIsIDY4LCA3MywgNzgsIDY1LCAyMDQsIDc5LCA4MiwgNjcsIDcyLCA3MywgNjgsIDEyOCwgNzksIDgyLCA2NSwgNzgsIDcxLCAKKyAgICAxOTcsIDc5LCA4MCwgODQsIDczLCA3OSwgMjA2LCA3OSwgODAsIDg0LCA3MywgNjcsIDY1LCAyMDQsIDc5LCA4MCwgODAsIAorICAgIDgyLCA2OSwgODMsIDgzLCA3MywgNzksIDc4LCAxMjgsIDc5LCA4MCwgODAsIDc5LCA4MywgNzMsIDg0LCA3MywgNzksIDc4LCAKKyAgICAxMjgsIDc5LCA4MCwgODAsIDc5LCA4MywgNzMsIDc4LCAxOTksIDc5LCA4MCwgODAsIDc5LCA4MywgNjksIDEyOCwgNzksIAorICAgIDgwLCA3MiwgNzMsIDg1LCA2NywgNzIsIDg1LCA4MywgMTI4LCA3OSwgODAsIDY5LCA4MiwgNjUsIDg0LCA3OSwgODIsIDEyOCwgCisgICAgNzksIDgwLCA2OSwgODIsIDY1LCA4NCwgNzksIDIxMCwgNzksIDgwLCA2OSwgNzgsIDczLCA3OCwgMTk5LCA3OSwgODAsIDY5LCAKKyAgICA3OCwgNDUsIDgwLCAxMjgsIDc5LCA4MCwgNjksIDc4LCA0NSwgNzksIDg1LCA4NCwgNzYsIDczLCA3OCwgNjksIDE5NiwgNzksIAorICAgIDgwLCA2OSwgNzgsIDQ1LCA3MiwgNjksIDY1LCA2OCwgNjksIDE5NiwgNzksIDgwLCA2OSwgNzgsIDQ1LCA2NywgNzMsIDgyLCAKKyAgICA2NywgODUsIDczLCA4NCwgNDUsIDc5LCA4NSwgODQsIDgwLCA4NSwgMjEyLCA3OSwgNzksIDkwLCA2OSwgMTI4LCA3OSwgNzksIAogICAgIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3OSwgNzksIDg1LCAxMjgsIDc5LCA3OSwgNzcsIDg1LCAxMjgsIDc5LCA3OSwgCiAgICAgNjksIDEyOCwgNzksIDc5LCA2NiwgNzksIDc5LCA3MCwgNzMsIDc2LCA3MywgMTI4LCA3OSwgNzgsIDg1LCAxMjgsIDc5LCAKICAgICA3OCwgODMsIDg1LCAxMjgsIDc5LCA3OCwgNzgsIDEyOCwgNzksIDc4LCA3NSwgNjUsIDgyLCAxMjgsIDc5LCA3OCwgNjksIApAQCAtMTU5OCwzMTcgKzE2MDUsMzI0IEBACiAgICAgNjksIDg4LCAxMjgsIDc4LCA5MCwgNjksIDg1LCA3NywgMTI4LCA3OCwgOTAsIDY5LCAxMjgsIDc4LCA5MCwgNjUsIDg4LCAKICAgICAxMjgsIDc4LCA5MCwgNjUsIDg0LCAxMjgsIDc4LCA5MCwgNjUsIDgxLCAxMjgsIDc4LCA5MCwgNjUsIDgwLCAxMjgsIDc4LCAKICAgICA5MCwgNjUsIDEyOCwgNzgsIDkwLCAxOTMsIDc4LCA4OSwgODcsIDY1LCAxMjgsIDc4LCA4OSwgODUsIDg4LCAxMjgsIDc4LCAKLSAgICA4OSwgODUsIDg0LCAxMjgsIDc4LCA4OSwgODUsIDgwLCAxMjgsIDc4LCA4OSwgODUsIDc5LCA4OCwgMTI4LCA3OCwgODksIAotICAgIDg1LCA3OSwgODAsIDEyOCwgNzgsIDg5LCA4NSwgNzksIDEyOCwgNzgsIDg5LCA4NSwgNjksIDEyOCwgNzgsIDg5LCA4NSwgCi0gICAgMTI4LCA3OCwgODksIDc5LCA4OCwgMTI4LCA3OCwgODksIDc5LCA4NCwgMTI4LCA3OCwgODksIDc5LCA4MCwgMTI4LCA3OCwgCi0gICAgODksIDc5LCA3OSwgMTI4LCA3OCwgODksIDc5LCA2NSwgMTI4LCA3OCwgODksIDc5LCAxMjgsIDc4LCA4OSwgNzQsIDY1LCAKLSAgICAxMjgsIDc4LCA4OSwgNzMsIDg4LCAxMjgsIDc4LCA4OSwgNzMsIDg0LCAxMjgsIDc4LCA4OSwgNzMsIDIxMiwgNzgsIDg5LCAKLSAgICA3MywgMjExLCA3OCwgODksIDczLCAyMTAsIDc4LCA4OSwgNzMsIDgwLCAxMjgsIDc4LCA4OSwgNzMsIDc4LCA0NSwgNjgsIAotICAgIDc5LCAxMjgsIDc4LCA4OSwgNzMsIDY5LCA4OCwgMTI4LCA3OCwgODksIDczLCA2OSwgODQsIDEyOCwgNzgsIDg5LCA3MywgCi0gICAgNjksIDgwLCAxMjgsIDc4LCA4OSwgNzMsIDY5LCAxMjgsIDc4LCA4OSwgNzMsIDEyOCwgNzgsIDg5LCAyMDEsIDc4LCA4OSwgCi0gICAgNjksIDg0LCAxMjgsIDc4LCA4OSwgNjksIDIxMiwgNzgsIDg5LCA2OSwgNzIsIDEyOCwgNzgsIDg5LCA2OSwgMjAwLCA3OCwgCi0gICAgODksIDY5LCA2OSwgMTI4LCA3OCwgODksIDY5LCAxMjgsIDc4LCA4OSwgMTk2LCA3OCwgODksIDY3LCA2NSwgMTI4LCA3OCwgCi0gICAgODksIDY1LCA2OSwgNzcsIDY1LCA2OSwgMTI4LCA3OCwgODksIDY1LCA2NSwgMTI4LCA3OCwgODcsIDc5LCA3OSwgMTI4LCAKLSAgICA3OCwgODcsIDc5LCAxMjgsIDc4LCA4NywgNzMsIDczLCAxMjgsIDc4LCA4NywgNzMsIDEyOCwgNzgsIDg3LCA2OSwgMTI4LCAKLSAgICA3OCwgODcsIDY1LCA2NSwgMTI4LCA3OCwgODcsIDY1LCAxMjgsIDc4LCA4NywgMTI4LCA3OCwgODYsIDEyOCwgNzgsIDg1LCAKLSAgICA4OCwgMTI4LCA3OCwgODUsIDg1LCA3OCwgMTI4LCA3OCwgODUsIDg0LCA3MywgNzYsIDc2LCA4NSwgMTI4LCA3OCwgODUsIAotICAgIDg0LCAxMjgsIDc4LCA4NSwgMjEyLCA3OCwgODUsIDgyLCA4OCwgMTI4LCA3OCwgODUsIDgyLCAxMjgsIDc4LCA4NSwgODAsIAotICAgIDEyOCwgNzgsIDg1LCA3OSwgODgsIDEyOCwgNzgsIDg1LCA3OSwgODAsIDEyOCwgNzgsIDg1LCA3OSwgMTI4LCA3OCwgODUsIAotICAgIDc4LCA4NSwgOTAsIDEyOCwgNzgsIDg1LCA3OCwgODUsIDIxOCwgNzgsIDg1LCA3OCwgNzEsIDEyOCwgNzgsIDg1LCA3OCwgCi0gICAgNjUsIDg2LCA4NSwgMjEyLCA3OCwgODUsIDc4LCA2NSwgODYsIDczLCAyMDMsIDc4LCA4NSwgNzgsIDEyOCwgNzgsIDg1LCAKLSAgICAyMDYsIDc4LCA4NSwgNzcsIDY5LCA4MiwgMjA3LCA3OCwgODUsIDc3LCA2OSwgODIsIDY1LCA4NCwgNzksIDIxMCwgNzgsIAotICAgIDg1LCA3NywgNjksIDgyLCA2NSwgMjA0LCA3OCwgODUsIDc3LCA2NiwgNjksIDgyLCA4MywgMTI4LCA3OCwgODUsIDc3LCA2NiwgCi0gICAgNjksIDgyLCAxMjgsIDc4LCA4NSwgNzcsIDEyOCwgNzgsIDg1LCA3NiwgNzYsIDEyOCwgNzgsIDg1LCA3NiwgMjA0LCA3OCwgCi0gICAgODUsIDc1LCA4NCwgNjUsIDEyOCwgNzgsIDg1LCA2OSwgNzgsIDcxLCAxMjgsIDc4LCA4NSwgNjksIDEyOCwgNzgsIDg1LCAKLSAgICA2NiwgNzMsIDY1LCAyMDYsIDc4LCA4NSwgNjUsIDY5LCAxMjgsIDc4LCA4NSwgNDksIDQ5LCAxMjgsIDc4LCA4NSwgNDgsIAotICAgIDUwLCA1MCwgNjUsIDEyOCwgNzgsIDg1LCA0OCwgNTAsIDUwLCAxMjgsIDc4LCA4NSwgNDgsIDUwLCA0OSwgMTI4LCA3OCwgCi0gICAgODUsIDQ4LCA1MCwgNDgsIDEyOCwgNzgsIDg1LCA0OCwgNDksIDU3LCAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA1NiwgNjUsIAotICAgIDEyOCwgNzgsIDg1LCA0OCwgNDksIDU2LCAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA1NSwgMTI4LCA3OCwgODUsIDQ4LCA0OSwgCi0gICAgNTQsIDEyOCwgNzgsIDg1LCA0OCwgNDksIDUzLCAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA1MiwgMTI4LCA3OCwgODUsIDQ4LCAKLSAgICA0OSwgNTEsIDEyOCwgNzgsIDg1LCA0OCwgNDksIDUwLCAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA0OSwgNjUsIDEyOCwgNzgsIAotICAgIDg1LCA0OCwgNDksIDQ5LCAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA0OCwgNjUsIDEyOCwgNzgsIDg1LCA0OCwgNDksIDQ4LCAKLSAgICAxMjgsIDc4LCA4NSwgNDgsIDQ4LCA1NywgMTI4LCA3OCwgODUsIDQ4LCA0OCwgNTYsIDEyOCwgNzgsIDg1LCA0OCwgNDgsIAotICAgIDU1LCAxMjgsIDc4LCA4NSwgNDgsIDQ4LCA1NCwgMTI4LCA3OCwgODUsIDQ4LCA0OCwgNTMsIDEyOCwgNzgsIDg1LCA0OCwgCi0gICAgNDgsIDUyLCAxMjgsIDc4LCA4NSwgNDgsIDQ4LCA1MSwgMTI4LCA3OCwgODUsIDQ4LCA0OCwgNTAsIDEyOCwgNzgsIDg1LCAKLSAgICA0OCwgNDgsIDQ5LCAxMjgsIDc4LCA4NCwgODUsIDg1LCAxMjgsIDc4LCA4NCwgODUsIDc3LCAxMjgsIDc4LCA4NCwgMjEzLCAKLSAgICA3OCwgODQsIDc5LCA4MSwgODAsIDY5LCA3OCwgMTI4LCA3OCwgODQsIDczLCA2OSwgMTk3LCA3OCwgODQsIDY5LCA4NSwgNzgsIAotICAgIDcxLCA2NiwgNjUsIDEyOCwgNzgsIDg0LCA2OSwgODUsIDc3LCAxMjgsIDc4LCA4NCwgNjksIDc4LCAxMjgsIDc4LCA4NCwgCi0gICAgNjksIDY5LCAxMjgsIDc4LCA4NCwgNjUsIDgwLCAxMjgsIDc4LCA4NCwgNjUsIDIwOCwgNzgsIDg0LCA2NSwgNjUsIDEyOCwgCi0gICAgNzgsIDgzLCA4NSwgNzksIDIxMiwgNzgsIDgzLCA4NSwgNzgsIDEyOCwgNzgsIDgzLCA4NSwgNzcsIDEyOCwgNzgsIDgzLCAKLSAgICA3OSwgNzcsIDEyOCwgNzgsIDgzLCA3MywgNjksIDY5LCA4NCwgMTI4LCA3OCwgODMsIDczLCA2OSwgNjksIDgwLCAxMjgsIAotICAgIDc4LCA4MywgNzMsIDY5LCA2OSwgMTI4LCA3OCwgODMsIDcyLCA4NSwgODQsIDEyOCwgNzgsIDgzLCA3MiwgODUsIDIxMiwgCi0gICAgNzgsIDgzLCA3MiwgODUsIDc5LCA4MCwgMTI4LCA3OCwgODMsIDcyLCA4NSwgNjksIDEyOCwgNzgsIDgzLCA3MiwgNzMsIDY5LCAKLSAgICA2OSwgMTI4LCA3OCwgODMsIDcyLCA2OSwgNjksIDEyOCwgNzgsIDgzLCA3MiwgNjUsIDgxLCAxMjgsIDc4LCA4MywgNzIsIAotICAgIDY1LCAxMjgsIDc4LCA4MywgNjksIDg1LCA2NSwgNjksIDc4LCAxMjgsIDc4LCA4MywgNjksIDc4LCAxMjgsIDc4LCA4MywgCi0gICAgNjUsIDEyOCwgNzgsIDgyLCA4OSwgODgsIDEyOCwgNzgsIDgyLCA4OSwgODQsIDEyOCwgNzgsIDgyLCA4OSwgODIsIDg4LCAKLSAgICAxMjgsIDc4LCA4MiwgODksIDgyLCAxMjgsIDc4LCA4MiwgODksIDgwLCAxMjgsIDc4LCA4MiwgODksIDEyOCwgNzgsIDgyLCAKLSAgICA4NSwgODgsIDEyOCwgNzgsIDgyLCA4NSwgODQsIDEyOCwgNzgsIDgyLCA4NSwgODIsIDg4LCAxMjgsIDc4LCA4MiwgODUsIAotICAgIDgyLCAxMjgsIDc4LCA4MiwgODUsIDgwLCAxMjgsIDc4LCA4MiwgODUsIDEyOCwgNzgsIDgyLCA3OSwgODgsIDEyOCwgNzgsIAotICAgIDgyLCA3OSwgODAsIDEyOCwgNzgsIDgyLCA3OSwgMTI4LCA3OCwgODIsIDY5LCA4OCwgMTI4LCA3OCwgODIsIDY5LCA4NCwgCi0gICAgMTI4LCA3OCwgODIsIDY5LCA4MCwgMTI4LCA3OCwgODIsIDY5LCAxMjgsIDc4LCA4MiwgNjUsIDg4LCAxMjgsIDc4LCA4MiwgCi0gICAgNjUsIDg0LCAxMjgsIDc4LCA4MiwgNjUsIDgwLCAxMjgsIDc4LCA4MiwgNjUsIDEyOCwgNzgsIDc5LCA4OSwgMTI4LCA3OCwgCi0gICAgNzksIDg4LCAxMjgsIDc4LCA3OSwgODYsIDY5LCA3NywgNjYsIDY5LCA4MiwgMTI4LCA3OCwgNzksIDg0LCA4NCwgNzksIAotICAgIDEyOCwgNzgsIDc5LCA4NCwgNjksIDgzLCAxMjgsIDc4LCA3OSwgODQsIDY5LCA3MiwgNjksIDY1LCA2OCwgMTI4LCA3OCwgCi0gICAgNzksIDg0LCA2OSwgNzIsIDY5LCA2NSwgMTk2LCA3OCwgNzksIDg0LCA2OSwgNjYsIDc5LCA3OSwgNzUsIDEyOCwgNzgsIDc5LCAKLSAgICA4NCwgNjksIDY2LCA3OSwgNzksIDIwMywgNzgsIDc5LCA4NCwgNjksIDEyOCwgNzgsIDc5LCA4NCwgMTk3LCA3OCwgNzksIAotICAgIDg0LCA2NywgNzIsIDY5LCAxOTYsIDc4LCA3OSwgODQsIDY3LCA3MiwgMTI4LCA3OCwgNzksIDg0LCAxMjgsIDc4LCA3OSwgCi0gICAgMjEyLCA3OCwgNzksIDgzLCA2OSwgMTI4LCA3OCwgNzksIDgyLCA4NCwgNzIsIDg3LCA2OSwgODMsIDIxMiwgNzgsIDc5LCAKLSAgICA4MiwgODQsIDcyLCA2OSwgODIsIDIwNiwgNzgsIDc5LCA4MiwgODQsIDIwMCwgNzgsIDc5LCA4MiwgNzcsIDY1LCAyMDQsIAotICAgIDc4LCA3OSwgMjEwLCA3OCwgNzksIDgwLCAxMjgsIDc4LCA3OSwgNzksIDc4LCA4NSwgMTI4LCA3OCwgNzksIDc5LCAxMjgsIAotICAgIDc4LCA3OSwgNzgsIDcwLCA3OSwgODIsIDc1LCA3MywgNzgsIDcxLCAxMjgsIDc4LCA3OSwgNzgsIDQ1LCA4MCwgNzksIDg0LCAKLSAgICA2NSwgNjYsIDc2LCAxOTcsIDc4LCA3OSwgNzgsIDQ1LCA3NCwgNzksIDczLCA3OCwgNjksIDgyLCAxMjgsIDc4LCA3OSwgNzgsIAotICAgIDQ1LCA2NiwgODIsIDY5LCA2NSwgNzUsIDczLCA3OCwgMTk5LCA3OCwgNzksIDc3LCA3MywgNzgsIDY1LCAyMDQsIDc4LCA3OSwgCi0gICAgNzUsIDcyLCA4NSwgNzUsIDEyOCwgNzgsIDc5LCA2OCwgNjksIDEyOCwgNzgsIDc5LCA2NSwgMTI4LCA3OCwgNzksIDQ1LCAKLSAgICA2NiwgODIsIDY5LCA2NSwgMjAzLCA3OCwgNzgsIDc5LCAxMjgsIDc4LCA3OCwgNzgsIDY1LCAxMjgsIDc4LCA3OCwgNzEsIAotICAgIDc5LCA3OSwgMTI4LCA3OCwgNzgsIDcxLCA3OSwgMTI4LCA3OCwgNzgsIDcxLCA3MywgNzMsIDEyOCwgNzgsIDc4LCA3MSwgCi0gICAgNzMsIDEyOCwgNzgsIDc4LCA3MSwgNjUsIDY1LCAxMjgsIDc4LCA3OCwgNzEsIDY1LCAxMjgsIDc4LCA3OCwgNzEsIDEyOCwgCi0gICAgNzgsIDc3LCAxMjgsIDc4LCA3NiwgNDgsIDUwLCA0OCwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTcsIDEyOCwgNzgsIDc2LCAKLSAgICA0OCwgNDksIDU2LCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA1NSwgNjUsIDEyOCwgNzgsIDc2LCA0OCwgNDksIDU1LCAxMjgsIAotICAgIDc4LCA3NiwgNDgsIDQ5LCA1NCwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTMsIDEyOCwgNzgsIDc2LCA0OCwgNDksIDUyLCAKLSAgICAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA1MSwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTAsIDEyOCwgNzgsIDc2LCA0OCwgNDksIAotICAgIDQ5LCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA0OCwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTcsIDEyOCwgNzgsIDc2LCA0OCwgCi0gICAgNDgsIDU2LCAxMjgsIDc4LCA3NiwgNDgsIDQ4LCA1NSwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTQsIDEyOCwgNzgsIDc2LCAKLSAgICA0OCwgNDgsIDUzLCA2NSwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTMsIDEyOCwgNzgsIDc2LCA0OCwgNDgsIDUyLCAxMjgsIAotICAgIDc4LCA3NiwgNDgsIDQ4LCA1MSwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTAsIDEyOCwgNzgsIDc2LCA0OCwgNDgsIDQ5LCAKLSAgICAxMjgsIDc4LCA3NSwgNzksIDc3LCAxMjgsIDc4LCA3NSwgMjA3LCA3OCwgNzUsIDczLCA3OCwgNjgsIDczLCAxMjgsIDc4LCAKLSAgICA3NSwgNjUsIDY1LCA4MiwgNjUsIDY5LCAxMjgsIDc4LCA3NCwgODksIDg4LCAxMjgsIDc4LCA3NCwgODksIDg0LCAxMjgsIAotICAgIDc4LCA3NCwgODksIDgyLCA4OCwgMTI4LCA3OCwgNzQsIDg5LCA4MiwgMTI4LCA3OCwgNzQsIDg5LCA4MCwgMTI4LCA3OCwgCi0gICAgNzQsIDg5LCAxMjgsIDc4LCA3NCwgODUsIDg4LCAxMjgsIDc4LCA3NCwgODUsIDgyLCA4OCwgMTI4LCA3OCwgNzQsIDg1LCAKLSAgICA4MiwgMTI4LCA3OCwgNzQsIDg1LCA4MSwgNjUsIDEyOCwgNzgsIDc0LCA4NSwgODAsIDEyOCwgNzgsIDc0LCA4NSwgNzksIAotICAgIDg4LCAxMjgsIDc4LCA3NCwgODUsIDc5LCAxMjgsIDc4LCA3NCwgODUsIDY5LCA4MSwgMTI4LCA3OCwgNzQsIDg1LCA2NSwgCi0gICAgNjksIDEyOCwgNzgsIDc0LCA4NSwgMTI4LCA3OCwgNzQsIDc5LCA4OCwgMTI4LCA3OCwgNzQsIDc5LCA4NCwgMTI4LCA3OCwgCi0gICAgNzQsIDc5LCA4MCwgMTI4LCA3OCwgNzQsIDc5LCA3OSwgMTI4LCA3OCwgNzQsIDc5LCAxMjgsIDc4LCA3NCwgNzMsIDg4LCAKLSAgICAxMjgsIDc4LCA3NCwgNzMsIDg0LCAxMjgsIDc4LCA3NCwgNzMsIDgwLCAxMjgsIDc4LCA3NCwgNzMsIDY5LCA4OCwgMTI4LCAKLSAgICA3OCwgNzQsIDczLCA2OSwgODQsIDEyOCwgNzgsIDc0LCA3MywgNjksIDgwLCAxMjgsIDc4LCA3NCwgNzMsIDY5LCA2OSwgCi0gICAgMTI4LCA3OCwgNzQsIDczLCA2OSwgMTI4LCA3OCwgNzQsIDczLCAxMjgsIDc4LCA3NCwgMjAxLCA3OCwgNzQsIDY5LCA4NSwgCi0gICAgODgsIDEyOCwgNzgsIDc0LCA2OSwgODUsIDg0LCAxMjgsIDc4LCA3NCwgNjksIDg1LCA2NSwgNjksIDc4LCA2NSwgMTI4LCAKLSAgICA3OCwgNzQsIDY5LCA4NSwgNjUsIDY5LCA3NywgMTI4LCA3OCwgNzQsIDY5LCA2OSwgNjksIDY5LCAxMjgsIDc4LCA3NCwgNjksIAotICAgIDY5LCAxMjgsIDc4LCA3NCwgNjksIDE5NywgNzgsIDc0LCA2OSwgMTI4LCA3OCwgNzQsIDY1LCA4MSwgMTI4LCA3OCwgNzQsIAotICAgIDY1LCA4MCwgMTI4LCA3OCwgNzQsIDY1LCA2OSwgNzcsIDc2LCA3MywgMTI4LCA3OCwgNzQsIDY1LCA2OSwgNzcsIDEyOCwgCi0gICAgNzgsIDc0LCA2NSwgNjUsIDEyOCwgNzgsIDc0LCAxMjgsIDc4LCA3MywgODgsIDEyOCwgNzgsIDczLCA4NCwgODIsIDY5LCAKLSAgICAxMjgsIDc4LCA3MywgODMsIDY1LCA3MSwgMTI4LCA3OCwgNzMsIDgyLCA4NSwgNzEsIDg1LCAxMjgsIDc4LCA3MywgODAsIAotICAgIDEyOCwgNzgsIDczLCA3OCwgODQsIDcyLCAxMjgsIDc4LCA3MywgNzgsIDY5LCA4NCwgODksIDEyOCwgNzgsIDczLCA3OCwgCi0gICAgNjksIDg0LCAyMTcsIDc4LCA3MywgNzgsIDY5LCA4NCwgNjksIDY5LCA3OCwgMTI4LCA3OCwgNzMsIDc4LCA2OSwgODQsIDY5LCAKLSAgICA2OSwgMjA2LCA3OCwgNzMsIDc4LCA2OSwgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgNzgsIDczLCA3OCwgCi0gICAgMTk3LCA3OCwgNzMsIDc4LCA2OCwgNjUsIDUwLCAxMjgsIDc4LCA3MywgNzgsIDY4LCA2NSwgMTc4LCA3OCwgNzMsIDc3LCAKLSAgICAxMjgsIDc4LCA3MywgMjA1LCA3OCwgNzMsIDc1LCA3MiwgNjUsIDcyLCA3MywgODQsIDEyOCwgNzgsIDczLCA3NSwgNjUsIAotICAgIDcyLCA3MywgODQsIDEyOCwgNzgsIDczLCA3NSwgNjUsIDEyOCwgNzgsIDczLCA3MywgMTI4LCA3OCwgNzMsIDcyLCA4MywgCi0gICAgNzIsIDg2LCA2NSwgODMsIDY1LCAxMjgsIDc4LCA3MywgNzEsIDczLCA2OCwgNjUsIDc3LCA3MywgNzgsIDEyOCwgNzgsIDczLCAKLSAgICA3MSwgNzMsIDY4LCA2NSwgNjksIDgzLCA3MiwgMTI4LCA3OCwgNzMsIDcxLCA3MiwgODQsIDEyOCwgNzgsIDczLCA3MSwgNzIsIAotICAgIDIxMiwgNzgsIDczLCA3MSwgNzEsIDY1LCA3MiwgNzMsIDg0LCA2NSwgMTI4LCA3OCwgNzMsIDY5LCA4OCwgMTI4LCA3OCwgCi0gICAgNzMsIDY5LCA4NSwgNzgsIDQ1LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAxMjgsIDc4LCA3MywgNjksIDg1LCA3OCwgNDUsIAotICAgIDg0LCA3MiwgNzMsIDY5LCA4NSwgODQsIDcyLCAxMjgsIDc4LCA3MywgNjksIDg1LCA3OCwgNDUsIDgzLCA3MywgNzksIDgzLCAKLSAgICAxMjgsIDc4LCA3MywgNjksIDg1LCA3OCwgNDUsIDgyLCA3MywgNjksIDg1LCA3NiwgMTI4LCA3OCwgNzMsIDY5LCA4NSwgNzgsIAotICAgIDQ1LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgODAsIDY1LCA3OCwgODMsIDczLCAKLSAgICA3OSwgODMsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA3OCwgNzMsIAotICAgIDY5LCA4NSwgNzgsIDQ1LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgNjcsIDczLCAKLSAgICA2OSwgODUsIDY3LCAxMjgsIDc4LCA3MywgNjksIDg1LCA3OCwgNDUsIDY3LCA3MiwgNzMsIDY5LCA4NSwgNjcsIDcyLCAxMjgsIAotICAgIDc4LCA3MywgNjksIDg1LCAyMDYsIDc4LCA3MywgNjksIDgwLCAxMjgsIDc4LCA3MywgNjksIDEyOCwgNzgsIDczLCA2NiwgCi0gICAgMTI4LCA3OCwgNzMsIDY1LCAxMjgsIDc4LCA3MywgNTAsIDEyOCwgNzgsIDcyLCA4NSwgNjksIDEyOCwgNzgsIDcyLCA3NCwgCi0gICAgNjUsIDEyOCwgNzgsIDcyLCA2NSwgMTI4LCA3OCwgNzIsIDEyOCwgNzgsIDcxLCA4OSwgNjksIDEyOCwgNzgsIDcxLCA4NiwgCi0gICAgNjksIDEyOCwgNzgsIDcxLCA4NSwgNzksIDg4LCAxMjgsIDc4LCA3MSwgODUsIDc5LCA4NCwgMTI4LCA3OCwgNzEsIDg1LCAKLSAgICA3OSwgMTI4LCA3OCwgNzEsIDg1LCA2NSwgNjksIDg0LCAxMjgsIDc4LCA3MSwgODUsIDY1LCA2OSwgMTI4LCA3OCwgNzEsIAotICAgIDc5LCA4OCwgMTI4LCA3OCwgNzEsIDc5LCA4NSwgMTI4LCA3OCwgNzEsIDc5LCAyMTMsIDc4LCA3MSwgNzksIDg0LCAxMjgsIAotICAgIDc4LCA3MSwgNzksIDgxLCAxMjgsIDc4LCA3MSwgNzksIDgwLCAxMjgsIDc4LCA3MSwgNzksIDc4LCAxMjgsIDc4LCA3MSwgCi0gICAgNzksIDc3LCAxMjgsIDc4LCA3MSwgNzksIDY5LCA3MiwgMTI4LCA3OCwgNzEsIDc5LCA2OSwgMjAwLCA3OCwgNzEsIDIwNywgCi0gICAgNzgsIDcxLCA3NSwgODksIDY5LCA2OSwgMTI4LCA3OCwgNzEsIDc1LCA4NywgNjUsIDY5LCA3OCwgMTI4LCA3OCwgNzEsIDc1LCAKLSAgICA4NSwgODAsIDEyOCwgNzgsIDcxLCA3NSwgODUsIDc4LCAxMjgsIDc4LCA3MSwgNzUsIDg1LCA3NywgMTI4LCA3OCwgNzEsIAotICAgIDc1LCA4NSwgNjksIDc4LCA5MCwgNjksIDg1LCA3NywgMTI4LCA3OCwgNzEsIDc1LCA4NSwgMTk3LCA3OCwgNzEsIDc1LCA3MywgCi0gICAgNzgsIDY4LCAyMDEsIDc4LCA3MSwgNzUsIDczLCA2OSwgNjksIDEyOCwgNzgsIDcxLCA3NSwgNjksIDg1LCA4OCwgMTI4LCAKLSAgICA3OCwgNzEsIDc1LCA2OSwgODUsIDgyLCA3MywgMTI4LCA3OCwgNzEsIDc1LCA2OSwgODUsIDY1LCA2OSwgODEsIDEyOCwgNzgsIAotICAgIDcxLCA3NSwgNjksIDg1LCA2NSwgNjksIDc3LCAxMjgsIDc4LCA3MSwgNzUsIDY1LCA4MSwgMTI4LCA3OCwgNzEsIDc1LCA2NSwgCi0gICAgODAsIDEyOCwgNzgsIDcxLCA3NSwgNjUsIDY1LCA3NywgNzMsIDEyOCwgNzgsIDcxLCA3NSwgNjUsIDEyOCwgNzgsIDcxLCAKLSAgICA3MywgNjksIDg4LCAxMjgsIDc4LCA3MSwgNzMsIDY5LCA4MCwgMTI4LCA3OCwgNzEsIDczLCA2OSwgMTI4LCA3OCwgNzEsIAotICAgIDcxLCA4NywgNjUsIDY5LCA3OCwgMTI4LCA3OCwgNzEsIDcxLCA4NSwgODIsIDY1LCA2OSwgMTI4LCA3OCwgNzEsIDcxLCA4NSwgCi0gICAgODAsIDEyOCwgNzgsIDcxLCA3MSwgODUsIDc5LCA4MSwgMTI4LCA3OCwgNzEsIDcxLCA4NSwgNzksIDIwOSwgNzgsIDcxLCAKLSAgICA3MSwgODUsIDc5LCA3OCwgMTI4LCA3OCwgNzEsIDcxLCA4NSwgNzksIDc3LCAxMjgsIDc4LCA3MSwgNzEsIDg1LCA3NywgCi0gICAgMTI4LCA3OCwgNzEsIDcxLCA4NSwgNjksIDY5LCA4NCwgMTI4LCA3OCwgNzEsIDcxLCA4NSwgNjUsIDY5LCA4MywgNzIsIDY1LCAKLSAgICAxOTcsIDc4LCA3MSwgNzEsIDg1LCA2NSwgNjksIDIwNiwgNzgsIDcxLCA3MSwgODUsIDEyOCwgNzgsIDcxLCA3MSwgNzksIAotICAgIDc5LCAxMjgsIDc4LCA3MSwgNzEsIDc5LCAxMjgsIDc4LCA3MSwgNzEsIDczLCAxMjgsIDc4LCA3MSwgNzEsIDY5LCA4NSwgCi0gICAgODgsIDEyOCwgNzgsIDcxLCA3MSwgNjksIDg1LCA2NSwgNjksIDg0LCAxMjgsIDc4LCA3MSwgNzEsIDY5LCA4NSwgNjUsIDY5LCAKLSAgICAxMjgsIDc4LCA3MSwgNzEsIDY5LCAyMTMsIDc4LCA3MSwgNzEsIDY5LCA3OCwgMTI4LCA3OCwgNzEsIDcxLCA2OSwgNjksIAotICAgIDg0LCAxMjgsIDc4LCA3MSwgNzEsIDY5LCA2OSwgNjksIDY5LCAxMjgsIDc4LCA3MSwgNzEsIDY5LCA2OSwgMTI4LCA3OCwgCi0gICAgNzEsIDcxLCA2OSwgMTI4LCA3OCwgNzEsIDcxLCA2NSwgODAsIDEyOCwgNzgsIDcxLCA3MSwgNjUsIDY1LCA3NywgNjUsIDY5LCAKLSAgICAxMjgsIDc4LCA3MSwgNzEsIDY1LCA2NSwgNzcsIDEyOCwgNzgsIDcxLCA3MSwgMTI4LCA3OCwgNzEsIDY5LCA4OCwgMTI4LCAKLSAgICA3OCwgNzEsIDY5LCA4NSwgODIsIDY5LCA4NSwgODQsIDEyOCwgNzgsIDcxLCA2OSwgODAsIDEyOCwgNzgsIDcxLCA2OSwgNzgsIAotICAgIDEyOCwgNzgsIDcxLCA2OSwgNjUsIDY4LCA2NSwgNzYsIDEyOCwgNzgsIDcxLCA2NSwgODgsIDEyOCwgNzgsIDcxLCA2NSwgCi0gICAgODQsIDEyOCwgNzgsIDcxLCA2NSwgMjExLCA3OCwgNzEsIDY1LCA4MSwgMTI4LCA3OCwgNzEsIDY1LCA4MCwgMTI4LCA3OCwgCi0gICAgNzEsIDY1LCA3OCwgNzEsIDg1LCAxMjgsIDc4LCA3MSwgNjUsIDc4LCAxMjgsIDc4LCA3MSwgNjUsIDczLCAxMjgsIDc4LCAKLSAgICA3MSwgNjUsIDY1LCA3MywgMTI4LCA3OCwgNzEsIDE5MywgNzgsIDcwLCAxMjgsIDc4LCA2OSwgODgsIDIxMiwgNzgsIDY5LCAKLSAgICA4OCwgMTI4LCA3OCwgNjksIDg3LCA4MywgODAsIDY1LCA4MCwgNjksIDgyLCAxMjgsIDc4LCA2OSwgODcsIDc2LCA3MywgNzgsIAotICAgIDY5LCAxMjgsIDc4LCA2OSwgODcsIDEyOCwgNzgsIDY5LCA4NSwgODQsIDgyLCA2NSwgMjA0LCA3OCwgNjksIDg1LCA4NCwgCi0gICAgNjksIDgyLCAxMjgsIDc4LCA2OSwgODQsIDEyOCwgNzgsIDY5LCAyMTIsIDc4LCA2OSwgODMsIDg0LCA2OSwgMTk2LCA3OCwgCi0gICAgNjksIDgxLCA4NSwgNjgsIDY1LCA2NSwgMTI4LCA3OCwgNjksIDgwLCA4NCwgODUsIDc4LCA2OSwgMTI4LCA3OCwgNjksIDgwLCAKLSAgICAxMjgsIDc4LCA2OSwgNzksIDEyOCwgNzgsIDY5LCAyMDcsIDc4LCA2OSwgNzgsIDY1LCA3OCwgNzksIDEyOCwgNzgsIDY5LCAKLSAgICA3OCwgMTI4LCA3OCwgNjksIDczLCA4NCwgNzIsIDY5LCAyMTAsIDc4LCA2OSwgNzEsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIAotICAgIDc4LCA2OSwgNzEsIDY1LCA4NCwgNjksIDE5NiwgNzgsIDY5LCA2OSwgMTI4LCA3OCwgNjksIDY3LCA3NSwgODQsIDczLCA2OSwgCi0gICAgMTI4LCA3OCwgNjksIDY2LCA2OSwgNzgsIDgzLCA4NCwgNzMsIDc3LCA3NywgNjksIDEyOCwgNzgsIDY4LCA4NSwgODgsIAotICAgIDEyOCwgNzgsIDY4LCA4NSwgODQsIDEyOCwgNzgsIDY4LCA4NSwgODIsIDg4LCAxMjgsIDc4LCA2OCwgODUsIDgyLCAxMjgsIAotICAgIDc4LCA2OCwgODUsIDgwLCAxMjgsIDc4LCA2OCwgODUsIDc4LCAxMjgsIDc4LCA2OCwgMjEzLCA3OCwgNjgsIDc5LCA4OCwgCi0gICAgMTI4LCA3OCwgNjgsIDc5LCA4NCwgMTI4LCA3OCwgNjgsIDc5LCA4MCwgMTI4LCA3OCwgNjgsIDc5LCA3OSwgMTI4LCA3OCwgCi0gICAgNjgsIDc5LCA3OCwgMTI4LCA3OCwgNjgsIDc5LCA3NywgNjYsIDg1LCAxMjgsIDc4LCA2OCwgNzksIDc2LCAxOTcsIDc4LCAKLSAgICA2OCwgNzMsIDg4LCAxMjgsIDc4LCA2OCwgNzMsIDg0LCAxMjgsIDc4LCA2OCwgNzMsIDgxLCAxMjgsIDc4LCA2OCwgNzMsIAotICAgIDgwLCAxMjgsIDc4LCA2OCwgNzMsIDY5LCA4OCwgMTI4LCA3OCwgNjgsIDczLCA2OSwgMTI4LCA3OCwgNjgsIDczLCA2OCwgCi0gICAgNjUsIDEyOCwgNzgsIDY4LCA3MywgNjUsIDgxLCAxMjgsIDc4LCA2OCwgNjksIDg4LCAxMjgsIDc4LCA2OCwgNjksIDg1LCAKLSAgICA4OCwgMTI4LCA3OCwgNjgsIDY5LCA4NSwgODQsIDEyOCwgNzgsIDY4LCA2OSwgODUsIDY1LCA2OSwgODIsIDY5LCA2OSwgCi0gICAgMTI4LCA3OCwgNjgsIDY5LCA4MCwgMTI4LCA3OCwgNjgsIDY5LCA2OSwgMTI4LCA3OCwgNjgsIDY5LCAxMjgsIDc4LCA2OCwgCi0gICAgNjUsIDg4LCAxMjgsIDc4LCA2OCwgNjUsIDg0LCAxMjgsIDc4LCA2OCwgNjUsIDgwLCAxMjgsIDc4LCA2OCwgNjUsIDc3LCAKLSAgICAxMjgsIDc4LCA2OCwgNjUsIDY1LCA3OCwgNzEsIDcxLCA2OSwgODUsIDY1LCA2OSwgODQsIDEyOCwgNzgsIDY4LCA2NSwgNjUsIAotICAgIDEyOCwgNzgsIDY4LCA2NSwgMTkzLCA3OCwgNjYsIDg5LCA4OCwgMTI4LCA3OCwgNjYsIDg5LCA4NCwgMTI4LCA3OCwgNjYsIAotICAgIDg5LCA4MiwgODgsIDEyOCwgNzgsIDY2LCA4OSwgODIsIDEyOCwgNzgsIDY2LCA4OSwgODAsIDEyOCwgNzgsIDY2LCA4OSwgCi0gICAgMTI4LCA3OCwgNjYsIDg1LCA4OCwgMTI4LCA3OCwgNjYsIDg1LCA4NCwgMTI4LCA3OCwgNjYsIDg1LCA4MiwgODgsIDEyOCwgCi0gICAgNzgsIDY2LCA4NSwgODIsIDEyOCwgNzgsIDY2LCA4NSwgODAsIDEyOCwgNzgsIDY2LCA4NSwgMTI4LCA3OCwgNjYsIDc5LCAKLSAgICA4OCwgMTI4LCA3OCwgNjYsIDc5LCA4NCwgMTI4LCA3OCwgNjYsIDc5LCA4MCwgMTI4LCA3OCwgNjYsIDc5LCAxMjgsIDc4LCAKLSAgICA2NiwgNzMsIDg4LCAxMjgsIDc4LCA2NiwgNzMsIDg0LCAxMjgsIDc4LCA2NiwgNzMsIDgwLCAxMjgsIDc4LCA2NiwgNzMsIAotICAgIDY5LCA4OCwgMTI4LCA3OCwgNjYsIDczLCA2OSwgODAsIDEyOCwgNzgsIDY2LCA3MywgNjksIDEyOCwgNzgsIDY2LCA3MywgCi0gICAgMTI4LCA3OCwgNjYsIDY1LCA4OCwgMTI4LCA3OCwgNjYsIDY1LCA4NCwgMTI4LCA3OCwgNjYsIDY1LCA4MCwgMTI4LCA3OCwgCi0gICAgNjYsIDY1LCAxMjgsIDc4LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDc4LCA2NSwgODksIDEyOCwgNzgsIDY1LCAKLSAgICA4OCwgNzMsIDY1LCAyMDYsIDc4LCA2NSwgODgsIDEyOCwgNzgsIDY1LCA4NSwgODQsIDcyLCA4MywgMTI4LCA3OCwgNjUsIAotICAgIDg1LCA2OCwgNzMsIDIxOCwgNzgsIDY1LCA4NCwgODUsIDgyLCA2NSwgMjA0LCA3OCwgNjUsIDg0LCA3MywgNzksIDc4LCA2NSwgCi0gICAgMjA0LCA3OCwgNjUsIDgzLCA3NSwgNjUsIDgwLCAyMDEsIDc4LCA2NSwgODMsIDcyLCA3MywgMTI4LCA3OCwgNjUsIDgzLCAKLSAgICA2NSwgNzYsIDczLCA5MCwgNjUsIDg0LCA3MywgNzksIDIwNiwgNzgsIDY1LCA4MiwgODIsIDc5LCAyMTUsIDc4LCA2NSwgODIsIAotICAgIDEyOCwgNzgsIDY1LCA4MSwgMTI4LCA3OCwgNjUsIDc5LCAyMTEsIDc4LCA2NSwgNzgsIDgzLCA2NSwgNzgsIDY1LCA4MSwgCi0gICAgMTI4LCA3OCwgNjUsIDc4LCA3MSwgNzcsIDc5LCA3OCwgODQsIDcyLCA3OSwgMTI4LCA3OCwgNjUsIDc4LCA2OCwgMTI4LCAKLSAgICA3OCwgNjUsIDc4LCA2NSwgMTI4LCA3OCwgNjUsIDc3LCA2OSwgMTI4LCA3OCwgNjUsIDc3LCAxOTcsIDc4LCA2NSwgNzcsIAotICAgIDUwLCAxMjgsIDc4LCA2NSwgNzcsIDEyOCwgNzgsIDY1LCA3MywgODIsIDE5MywgNzgsIDY1LCA3MywgMjA0LCA3OCwgNjUsIAotICAgIDcxLCA4MiwgMjAxLCA3OCwgNjUsIDcxLCA2NSwgODIsIDEyOCwgNzgsIDY1LCA3MSwgNjUsIDEyOCwgNzgsIDY1LCA3MSwgCi0gICAgMTkzLCA3OCwgNjUsIDcxLCAxMjgsIDc4LCA2NSwgMTk5LCA3OCwgNjUsIDY5LCAxMjgsIDc4LCA2NSwgNjYsIDc2LCA2NSwgCi0gICAgMTI4LCA3OCwgNjUsIDY1LCA4MywgNzMsIDc1LCA4OSwgNjUsIDg5LCA2NSwgMTI4LCA3OCwgNjUsIDY1LCA3NSwgODMsIDczLCAKLSAgICA3NSwgODksIDY1LCA4OSwgNjUsIDEyOCwgNzgsIDY1LCA2NSwgNzMsIDEyOCwgNzgsIDY1LCA2NSwgMTI4LCA3OCwgNjUsIAotICAgIDE5MywgNzgsIDY1LCA1MCwgMTI4LCA3OCwgNDgsIDUyLCA1MCwgMTI4LCA3OCwgNDgsIDUyLCA0OSwgMTI4LCA3OCwgNDgsIAotICAgIDUyLCA0OCwgMTI4LCA3OCwgNDgsIDUxLCA1NywgMTI4LCA3OCwgNDgsIDUxLCA1NiwgMTI4LCA3OCwgNDgsIDUxLCA1NSwgCi0gICAgNjUsIDEyOCwgNzgsIDQ4LCA1MSwgNTUsIDEyOCwgNzgsIDQ4LCA1MSwgNTQsIDEyOCwgNzgsIDQ4LCA1MSwgNTMsIDY1LCAKLSAgICAxMjgsIDc4LCA0OCwgNTEsIDUzLCAxMjgsIDc4LCA0OCwgNTEsIDUyLCA2NSwgMTI4LCA3OCwgNDgsIDUxLCA1MiwgMTI4LCAKLSAgICA3OCwgNDgsIDUxLCA1MSwgNjUsIDEyOCwgNzgsIDQ4LCA1MSwgNTEsIDEyOCwgNzgsIDQ4LCA1MSwgNTAsIDEyOCwgNzgsIAotICAgIDQ4LCA1MSwgNDksIDEyOCwgNzgsIDQ4LCA1MSwgNDgsIDEyOCwgNzgsIDQ4LCA1MCwgNTcsIDEyOCwgNzgsIDQ4LCA1MCwgCi0gICAgNTYsIDEyOCwgNzgsIDQ4LCA1MCwgNTUsIDEyOCwgNzgsIDQ4LCA1MCwgNTQsIDEyOCwgNzgsIDQ4LCA1MCwgNTMsIDY1LCAKLSAgICAxMjgsIDc4LCA0OCwgNTAsIDUzLCAxMjgsIDc4LCA0OCwgNTAsIDUyLCAxMjgsIDc4LCA0OCwgNTAsIDUxLCAxMjgsIDc4LCAKLSAgICA0OCwgNTAsIDUwLCAxMjgsIDc4LCA0OCwgNTAsIDQ5LCAxMjgsIDc4LCA0OCwgNTAsIDQ4LCAxMjgsIDc4LCA0OCwgNDksIAotICAgIDU3LCAxMjgsIDc4LCA0OCwgNDksIDU2LCA2NiwgMTI4LCA3OCwgNDgsIDQ5LCA1NiwgNjUsIDEyOCwgNzgsIDQ4LCA0OSwgCi0gICAgNTYsIDEyOCwgNzgsIDQ4LCA0OSwgNTUsIDEyOCwgNzgsIDQ4LCA0OSwgNTQsIDEyOCwgNzgsIDQ4LCA0OSwgNTMsIDEyOCwgCi0gICAgNzgsIDQ4LCA0OSwgNTIsIDEyOCwgNzgsIDQ4LCA0OSwgNTEsIDEyOCwgNzgsIDQ4LCA0OSwgNTAsIDEyOCwgNzgsIDQ4LCAKLSAgICA0OSwgNDksIDEyOCwgNzgsIDQ4LCA0OSwgNDgsIDEyOCwgNzgsIDQ4LCA0OCwgNTcsIDEyOCwgNzgsIDQ4LCA0OCwgNTYsIAotICAgIDEyOCwgNzgsIDQ4LCA0OCwgNTUsIDEyOCwgNzgsIDQ4LCA0OCwgNTQsIDEyOCwgNzgsIDQ4LCA0OCwgNTMsIDEyOCwgNzgsIAotICAgIDQ4LCA0OCwgNTIsIDEyOCwgNzgsIDQ4LCA0OCwgNTEsIDEyOCwgNzgsIDQ4LCA0OCwgNTAsIDEyOCwgNzgsIDQ4LCA0OCwgCi0gICAgNDksIDEyOCwgNzgsIDQ1LCA2NywgODIsIDY5LCAxOTcsIDc4LCA0NSwgNjUsIDgyLCAyMTcsIDc3LCA4OSwgODgsIDEyOCwgCi0gICAgNzcsIDg5LCA4NCwgMTI4LCA3NywgODksIDgzLCA3NiwgNzMsIDg0LCA2OSwgMTI4LCA3NywgODksIDgwLCAxMjgsIDc3LCAKLSAgICA4OSwgNjUsIDEyOCwgNzcsIDg5LCAxOTMsIDc3LCA4OSwgMTI4LCA3NywgMjE3LCA3NywgODcsIDc5LCA3OSwgMTI4LCA3NywgCi0gICAgODcsIDc5LCAxMjgsIDc3LCA4NywgNzMsIDczLCAxMjgsIDc3LCA4NywgNzMsIDEyOCwgNzcsIDg3LCA2OSwgNjksIDEyOCwgCi0gICAgNzcsIDg3LCA2OSwgMTI4LCA3NywgODcsIDY1LCA2NSwgMTI4LCA3NywgODcsIDY1LCAxMjgsIDc3LCA4NywgMTI4LCA3NywgCi0gICAgMjE1LCA3NywgODYsIDc5LCA4MCwgMTI4LCA3NywgODYsIDczLCAxMjgsIDc3LCA4NiwgNjksIDg1LCA2NSwgNjksIDc4LCAKLSAgICA3MSwgNjUsIDc3LCAxMjgsIDc3LCA4NiwgMTI4LCA3NywgMjE0LCA3NywgODUsIDg4LCAxMjgsIDc3LCA4NSwgODUsIDgzLCAKLSAgICA3MywgNzUsIDY1LCA4NCwgNzksIDY1LCA3OCwgMTI4LCA3NywgODUsIDg1LCA4MiwgNjgsIDcyLCA2NSwgNzQsIDE5MywgNzcsIAotICAgIDg1LCA4NCwgMTI4LCA3NywgODUsIDgzLCA3MywgNjcsIDEyOCwgNzcsIDg1LCA4MywgNzMsIDE5NSwgNzcsIDg1LCA4MywgCi0gICAgNzIsIDgyLCA3OSwgNzksIDc3LCAxMjgsIDc3LCA4NSwgODMsIDcyLCA1MSwgMTI4LCA3NywgODUsIDgzLCA3MiwgMTc5LCAKLSAgICA3NywgODUsIDgzLCA3MiwgMTI4LCA3NywgODUsIDgzLCAyMDAsIDc3LCA4NSwgODIsIDg4LCAxMjgsIDc3LCA4NSwgODIsIAotICAgIDcxLCA4NSwgNTAsIDEyOCwgNzcsIDg1LCA4MiwgNjksIDEyOCwgNzcsIDg1LCA4MiwgNjgsIDY1LCAxMjgsIDc3LCA4NSwgCi0gICAgODIsIDY4LCAxOTMsIDc3LCA4NSwgODIsIDEyOCwgNzcsIDg1LCA4MSwgNjgsIDY1LCA3NywgMTI4LCA3NywgODUsIDgwLCAKLSAgICAxMjgsIDc3LCA4NSwgNzksIDg4LCAxMjgsIDc3LCA4NSwgNzksIDg0LCAxMjgsIDc3LCA4NSwgNzksIDgwLCAxMjgsIDc3LCAKLSAgICA4NSwgNzksIDc3LCA2NSwgNjksIDEyOCwgNzcsIDg1LCA3OSwgMTI4LCA3NywgODUsIDc4LCA4MywgODUsIDY2LCAxMjgsIAotICAgIDc3LCA4NSwgNzgsIDY1LCA3MiwgMTI4LCA3NywgODUsIDc2LCA4NCwgNzMsIDgzLCA2OSwgODQsIDEyOCwgNzcsIDg1LCA3NiwgCi0gICAgODQsIDczLCA4MywgNjksIDIxMiwgNzcsIDg1LCA3NiwgODQsIDczLCA4MCwgNzYsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIAotICAgIDc4LCAxMjgsIDc3LCA4NSwgNzYsIDg0LCA3MywgODAsIDc2LCA3MywgNjcsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDc3LCA4NSwgCi0gICAgNzYsIDg0LCA3MywgODAsIDc2LCAxOTcsIDc3LCA4NSwgNzYsIDg0LCA3MywgNzksIDY3LCA4NSwgNzYsIDY1LCAyMTAsIDc3LCAKLSAgICA4NSwgNzYsIDg0LCA3MywgNzcsIDY1LCA4MCwgMTI4LCA3NywgODUsIDc2LCA4NCwgMjAxLCA3NywgODUsIDc1LCA4MCwgNzIsIAotICAgIDgyLCA2OSwgNzgsIDcxLCAxMjgsIDc3LCA4NSwgNzMsIDc4LCAxMjgsIDc3LCA4NSwgNzEsIDgzLCAxMjgsIDc3LCA4NSwgCi0gICAgNzEsIDEyOCwgNzcsIDg1LCAxOTksIDc3LCA4NSwgNjksIDEyOCwgNzcsIDg1LCA2NywgNzIsIDEyOCwgNzcsIDg1LCA2NywgCi0gICAgMjAwLCA3NywgODUsIDY3LCA2NSwgNjUsIDY4LCAxMjgsIDc3LCA4NSwgNjUsIDc4LCAxMjgsIDc3LCA4NSwgNjUsIDY5LCAKLSAgICAxMjgsIDc3LCA4NSwgNDUsIDcxLCA2NSwgNjUsIDcyLCA3NiwgNjUsIDE5MywgNzcsIDIxMywgNzcsIDgzLCAxMjgsIDc3LCAKLSAgICA4MCwgNjUsIDEyOCwgNzcsIDc5LCA4OSwgNjUsIDczLCAxMjgsIDc3LCA3OSwgODgsIDEyOCwgNzcsIDc5LCA4NiwgNzMsIAotICAgIDE5NywgNzcsIDc5LCA4NiwgNjksIDE5NiwgNzcsIDc5LCA4NSwgODQsIDcyLCAxMjgsIDc3LCA3OSwgODUsIDg0LCAyMDAsIAotICAgIDc3LCA3OSwgODUsIDgzLCA2OSwgMTI4LCA3NywgNzksIDg1LCA4MywgMTk3LCA3NywgNzksIDg1LCA3OCwgODQsIDY1LCA3MywgCi0gICAgNzgsIDgzLCAxMjgsIDc3LCA3OSwgODUsIDc4LCA4NCwgNjUsIDczLCA3OCwgMTI4LCA3NywgNzksIDg1LCA3OCwgODQsIDY1LCAKLSAgICA3MywgMjA2LCA3NywgNzksIDg1LCA3OCwgMjEyLCA3NywgNzksIDg1LCA3OCwgNjgsIDEyOCwgNzcsIDc5LCA4NSwgNzgsIAotICAgIDE5NiwgNzcsIDc5LCA4NCwgNzIsIDY5LCA4MiwgMTI4LCA3NywgNzksIDg0LCAxMjgsIDc3LCA3OSwgODIsIDg0LCA4NSwgCi0gICAgODUsIDc3LCAxMjgsIDc3LCA3OSwgODIsIDg0LCA2NSwgODIsIDEyOCwgNzcsIDc5LCA4MiwgODAsIDcyLCA3OSwgNzYsIDc5LCAKLSAgICA3MSwgNzMsIDY3LCA2NSwgMjA0LCA3NywgNzksIDgyLCA3OCwgNzMsIDc4LCA3MSwgMTI4LCA3NywgNzksIDgwLCAxMjgsIAotICAgIDc3LCA3OSwgNzksIDgzLCA2OSwgNDUsIDY3LCA4MiwgNjksIDE5NywgNzcsIDc5LCA3OSwgNzgsIDEyOCwgNzcsIDc5LCA3OSwgCi0gICAgMjA2LCA3NywgNzksIDc5LCA3NywgODAsIDg1LCA4MSwgMTI4LCA3NywgNzksIDc5LCA3NywgNjksIDg1LCA4NCwgMTI4LCAKLSAgICA3NywgNzksIDc5LCAxMjgsIDc3LCA3OSwgNzgsIDg0LCA3MywgNjksIDY5LCA3OCwgMTI4LCA3NywgNzksIDc4LCA4NCwgNzIsIAotICAgIDEyOCwgNzcsIDc5LCA3OCwgODQsIDIwMCwgNzcsIDc5LCA3OCwgODMsIDg0LCA2OSwgODIsIDEyOCwgNzcsIDc5LCA3OCwgCi0gICAgNzksIDgzLCA4NCwgNjUsIDY2LCA3NiwgMTk3LCA3NywgNzksIDc4LCA3OSwgODMsIDgwLCA2NSwgNjcsIDE5NywgNzcsIDc5LCAKLSAgICA3OCwgNzksIDgyLCA2NSwgNzMsIDc2LCAxMjgsIDc3LCA3OSwgNzgsIDc5LCA3MSwgODIsIDY1LCA4MCwgMjAwLCA3NywgNzksIAotICAgIDc4LCA3OSwgNzEsIDgyLCA2NSwgNzcsIDc3LCA3OSwgMjExLCA3NywgNzksIDc4LCA3OSwgNzEsIDgyLCA2NSwgMjA1LCA3NywgCi0gICAgNzksIDc4LCA3OSwgNzAsIDc5LCA3OCwgNzMsIDY1LCA4MywgMTI4LCA3NywgNzksIDc4LCA3OSwgNjcsIDg1LCA3NiwgNjUsIAotICAgIDIxMCwgNzcsIDc5LCA3OCwgNzUsIDY5LCA4OSwgMTI4LCA3NywgNzksIDc4LCA3NSwgNjksIDIxNywgNzcsIDc5LCA3OCwgCi0gICAgNzMsIDEyOCwgNzcsIDc5LCA3OCwgNzEsIDc1LCA2OSwgODUsIDY1LCA2OSwgODEsIDEyOCwgNzcsIDc5LCA3OCwgNjksIAotICAgIDIxNywgNzcsIDc5LCA3OCwgMTI4LCA3NywgNzksIDIwNiwgNzcsIDc5LCA3NiwgMTI4LCA3NywgNzksIDcyLCA2NSwgNzcsIAotICAgIDc3LCA2NSwgMTk2LCA3NywgNzksIDY4LCA4NSwgNzYsIDIwNywgNzcsIDc5LCA2OCwgNjksIDgzLCA4NCwgODksIDEyOCwgCi0gICAgNzcsIDc5LCA2OCwgNjksIDc2LCA4MywgMTI4LCA3NywgNzksIDY4LCA2OSwgNzYsIDEyOCwgNzcsIDc5LCA2OCwgNjksIAotICAgIDEyOCwgNzcsIDc5LCA2NiwgNzMsIDc2LCAxOTcsIDc3LCA3OSwgNjUsIDEyOCwgNzcsIDIwNywgNzcsIDc4LCA4OSwgNjUsIAotICAgIDIwNSwgNzcsIDc4LCA2NSwgODMsIDEyOCwgNzcsIDc3LCAxMjgsIDc3LCAyMDUsIDc3LCA3NiwgNjUsIDEyOCwgNzcsIDc2LCAKLSAgICAxMjgsIDc3LCA3NSwgODAsIDY1LCA4MiwgNjUsIDIwOSwgNzcsIDczLCA4OCwgMTI4LCA3NywgNzMsIDg0LCAxMjgsIDc3LCAKLSAgICA3MywgMjEyLCA3NywgNzMsIDgzLCA4MiwgNjUsIDEyOCwgNzcsIDczLCA4MiwgNzMsIDY2LCA2NSwgNjUsIDgyLCA4NSwgCi0gICAgMTI4LCA3NywgNzMsIDgyLCA3MywgMTI4LCA3NywgNzMsIDgyLCA2OSwgNjgsIDEyOCwgNzcsIDczLCA4MCwgMTI4LCA3NywgCi0gICAgNzMsIDc4LCA4OSwgMTI4LCA3NywgNzMsIDc4LCA4NSwgODMsIDQ1LCA3OSwgODIsIDQ1LCA4MCwgNzYsIDg1LCAyMTEsIDc3LCAKLSAgICA3MywgNzgsIDg1LCA4MywgMTI4LCA3NywgNzMsIDc4LCA3MywgODMsIDg0LCA2OSwgODIsIDEyOCwgNzcsIDczLCA3OCwgNzMsIAotICAgIDc3LCA2NSwgMTI4LCA3NywgNzMsIDc4LCA3MywgNjgsIDczLCA4MywgNjcsIDEyOCwgNzcsIDczLCA3OCwgNzMsIDY2LCA4NSwgCi0gICAgODMsIDEyOCwgNzcsIDczLCA3NywgNjksIDEyOCwgNzcsIDczLCA3NywgMTI4LCA3NywgNzMsIDc2LCA3NiwgNzMsIDc5LCAKLSAgICA3OCwgMjExLCA3NywgNzMsIDc2LCA3NiwgNjksIDg0LCAxMjgsIDc3LCA3MywgNzYsIDc2LCAxOTcsIDc3LCA3MywgNzYsIAotICAgIDIwNCwgNzcsIDczLCA3NiwgNzUsIDIxNywgNzcsIDczLCA3NiwgMTI4LCA3NywgNzMsIDc1LCA4NSwgODIsIDc5LCA3OCwgCi0gICAgMTI4LCA3NywgNzMsIDc1LCA4MiwgNzksIDIwNiwgNzcsIDczLCA3NSwgODIsIDczLCAxMjgsIDc3LCA3MywgNzMsIDc4LCAKLSAgICAxMjgsIDc3LCA3MywgNzMsIDEyOCwgNzcsIDczLCAxOTksIDc3LCA3MywgNjksIDg4LCAxMjgsIDc3LCA3MywgNjksIDg1LCAKLSAgICA3NywgNDUsIDg0LCA3MywgNzUsIDY5LCA4NSwgODQsIDEyOCwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgODMsIDgzLCA2NSwgCi0gICAgNzgsIDcxLCA4MywgNzMsIDc5LCA4MywgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA4MywgODMsIDY1LCA3OCwgNzEsIAotICAgIDc4LCA3MywgNjksIDg1LCA3OCwgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgCi0gICAgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCA0NSwgODMsIDczLCA3OSwgODMsIDEyOCwgNzcsIAotICAgIDczLCA2OSwgODUsIDc3LCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDgwLCAKLSAgICA2NSwgNzgsIDgzLCA3MywgNzksIDgzLCAxMjgsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDc4LCA3MywgNjksIDg1LCA3OCwgCi0gICAgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA2NywgNzMsIDY5LCA4NSwgNjcsIDEyOCwgNzcsIDczLCA2OSwgODUsIDc3LCAKLSAgICA0NSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgNzcsIDczLCA2OSwgODUsIDIwNSwgNzcsIDczLCA2OSwgODAsIAotICAgIDEyOCwgNzcsIDczLCA2OSwgNjksIDEyOCwgNzcsIDczLCA2OSwgMTI4LCA3NywgNzMsIDY4LCA3NiwgNzMsIDc4LCAxOTcsIAotICAgIDc3LCA3MywgNjgsIDY4LCA3NiwgNjksIDQ1LCA4NywgNjksIDc2LCA4MywgMjAwLCA3NywgNzMsIDY4LCA2OCwgNzYsIDE5NywgCi0gICAgNzcsIDczLCAxOTYsIDc3LCA3MywgNjcsIDgyLCA3OSwgODMsIDY3LCA3OSwgODAsIDY5LCAxMjgsIDc3LCA3MywgNjcsIDgyLCAKLSAgICA3OSwgODAsIDcyLCA3OSwgNzgsIDY5LCAxMjgsIDc3LCA3MywgNjcsIDgyLCAyMDcsIDc3LCA3MiwgOTAsIDEyOCwgNzcsIAotICAgIDcyLCAxMjgsIDc3LCA3MSwgODUsIDg4LCAxMjgsIDc3LCA3MSwgODUsIDg0LCAxMjgsIDc3LCA3MSwgODUsIDgyLCA4OCwgCi0gICAgMTI4LCA3NywgNzEsIDg1LCA4MiwgMTI4LCA3NywgNzEsIDg1LCA4MCwgMTI4LCA3NywgNzEsIDg1LCA3OSwgODgsIDEyOCwgCi0gICAgNzcsIDcxLCA4NSwgNzksIDgwLCAxMjgsIDc3LCA3MSwgODUsIDc5LCAxMjgsIDc3LCA3MSwgODUsIDEyOCwgNzcsIDcxLCAKLSAgICA3OSwgODgsIDEyOCwgNzcsIDcxLCA3OSwgODQsIDEyOCwgNzcsIDcxLCA3OSwgODAsIDEyOCwgNzcsIDcxLCA3OSwgMTI4LCAKLSAgICA3NywgNzEsIDIwNywgNzcsIDcxLCA3MywgNjksIDg4LCAxMjgsIDc3LCA3MSwgNzMsIDY5LCAxMjgsIDc3LCA3MSwgNjksIAotICAgIDg4LCAxMjgsIDc3LCA3MSwgNjksIDgwLCAxMjgsIDc3LCA3MSwgNjksIDEyOCwgNzcsIDcxLCA2NiwgODUsIDEyOCwgNzcsIAotICAgIDcxLCA2NiwgNzksIDc5LCAxMjgsIDc3LCA3MSwgNjYsIDc5LCA3MCwgODUsIDc3LCAxMjgsIDc3LCA3MSwgNjYsIDc5LCAKLSAgICAxMjgsIDc3LCA3MSwgNjYsIDczLCAxMjgsIDc3LCA3MSwgNjYsIDY5LCA4NSwgNzgsIDEyOCwgNzcsIDcxLCA2NiwgNjksIAotICAgIDc4LCAxMjgsIDc3LCA3MSwgNjYsIDY5LCA2OSwgMTI4LCA3NywgNzEsIDY2LCA2OSwgMTI4LCA3NywgNzEsIDY2LCA2NSwgCi0gICAgODMsIDY1LCA4MSwgMTI4LCA3NywgNzEsIDY2LCA2NSwgODMsIDY1LCAxMjgsIDc3LCA3MSwgNjUsIDg4LCAxMjgsIDc3LCAKLSAgICA3MSwgNjUsIDg0LCAxMjgsIDc3LCA3MSwgNjUsIDgwLCAxMjgsIDc3LCA3MSwgNjUsIDEyOCwgNzcsIDcxLCAxMjgsIDc3LCAKLSAgICA3MCwgNzksIDc4LCAxMjgsIDc3LCA3MCwgNzksIDIwNiwgNzcsIDcwLCA3OSwgMTI4LCA3NywgNzAsIDczLCA4OSwgNjUsIAotICAgIDgxLCAxMjgsIDc3LCA3MCwgNzMsIDY5LCA2OSwgMTI4LCA3NywgNzAsIDY5LCA4NSwgODQsIDEyOCwgNzcsIDcwLCA2OSwgCi0gICAgODUsIDgxLCAxMjgsIDc3LCA3MCwgNjksIDg1LCA2NSwgNjksIDEyOCwgNzcsIDcwLCA2NSwgNjUsIDEyOCwgNzcsIDY5LCAKLSAgICA5MCwgOTAsIDc5LCAxMjgsIDc3LCA2OSwgODgsIDEyOCwgNzcsIDY5LCA4NSwgMjEyLCA3NywgNjksIDg1LCA4MSwgMTI4LCAKLSAgICA3NywgNjksIDg1LCA3OCwgNzQsIDc5LCA3NywgNzgsIDY4LCA2OSwgODUsIDgxLCAxMjgsIDc3LCA2OSwgODUsIDc4LCAxMjgsIAotICAgIDc3LCA2OSwgODQsIDgyLCA3OSwgMTI4LCA3NywgNjksIDg0LCA4MiwgNzMsIDY3LCA2NSwgMjA0LCA3NywgNjksIDg0LCA4MiwgCi0gICAgNzMsIDY1LCAxMjgsIDc3LCA2OSwgODQsIDgyLCA2OSwgODQsIDY5LCAyMTEsIDc3LCA2OSwgODQsIDc5LCA2NiwgNjksIDc2LCAKLSAgICA4NSwgODMsIDEyOCwgNzcsIDY5LCA4NCwgNjksIDc1LCAxMjgsIDc3LCA2OSwgODQsIDY5LCA3MSwgMTI4LCA3NywgNjksIAotICAgIDg0LCA2NSwgNzYsIDEyOCwgNzcsIDY5LCA4NCwgMTkzLCA3NywgNjksIDgzLCA4MywgNjksIDc4LCA3MywgNjUsIDIwNiwgCi0gICAgNzcsIDY5LCA4MywgNzksIDEyOCwgNzcsIDY5LCA4MywgNzMsIDEyOCwgNzcsIDY5LCA4MywgNzIsIDEyOCwgNzcsIDY5LCAKLSAgICA4MiwgNzUsIDcyLCA2NSwgMTI4LCA3NywgNjksIDgyLCA3NSwgNzIsIDE5MywgNzcsIDY5LCA4MiwgNzMsIDY4LCA3MywgNjUsIAotICAgIDc4LCA4MywgMTI4LCA3NywgNjksIDgyLCA3MywgMTI4LCA3NywgNjksIDgyLCA3MSwgNjksIDEyOCwgNzcsIDY5LCA4MiwgCi0gICAgNjcsIDg1LCA4MiwgODksIDEyOCwgNzcsIDY5LCA4MiwgNjcsIDg1LCA4MiwgMjE3LCA3NywgNjksIDc4LCA2OCwgODUsIDg0LCAKLSAgICAxMjgsIDc3LCA2OSwgNzgsIDEyOCwgNzcsIDY5LCA3NywgNzksIDEyOCwgNzcsIDY5LCA3NywgNjYsIDY5LCA4MiwgODMsIAotICAgIDcyLCA3MywgODAsIDEyOCwgNzcsIDY5LCA3NywgNjYsIDY5LCA4MiwgMTI4LCA3NywgNjksIDc3LCA2NiwgNjksIDIxMCwgCi0gICAgNzcsIDY5LCA3NywgNDUsIDgxLCA3OSwgODAsIDcyLCAxMjgsIDc3LCA2OSwgNzcsIDEyOCwgNzcsIDY5LCAyMDUsIDc3LCAKLSAgICA2OSwgNzYsIDc5LCA2OCwgNzMsIDE5NSwgNzcsIDY5LCA3NiwgNzMsIDc1LCAxMjgsIDc3LCA2OSwgNzMsIDkwLCA3MywgCi0gICAgMTI4LCA3NywgNjksIDcxLCA2NSwgODQsIDc5LCA3OCwgMTI4LCA3NywgNjksIDcxLCA2NSwgODAsIDcyLCA3OSwgNzgsIDY5LCAKLSAgICAxMjgsIDc3LCA2OSwgNzEsIDY1LCA3NiwgNzMsIDEyOCwgNzcsIDY5LCA2OSwgODQsIDc5LCA4MiwgODUsIDEyOCwgNzcsIAotICAgIDY5LCA2OSwgODQsIDY5LCAyMDEsIDc3LCA2OSwgNjksIDg0LCAxMjgsIDc3LCA2OSwgNjksIDc3LCA4NSwgMTI4LCA3NywgCi0gICAgNjksIDY5LCA3NywgMTI4LCA3NywgNjksIDY5LCA2OSwgNjksIDEyOCwgNzcsIDY5LCA2OSwgMTI4LCA3NywgNjksIDY4LCAKLSAgICA3MywgODUsIDc3LCAxMjgsIDc3LCA2OSwgNjgsIDczLCA4NSwgMjA1LCA3NywgNjksIDY4LCA3MywgNjcsIDczLCA3OCwgNjksIAotICAgIDEyOCwgNzcsIDY5LCA2OCwgNzMsIDY3LCA2NSwgMjA0LCA3NywgNjksIDY1LCA4NCwgMTI4LCA3NywgNjksIDY1LCAyMTIsIAotICAgIDc3LCA2OSwgNjUsIDgzLCA4NSwgODIsIDY5LCAxOTYsIDc3LCA2OSwgNjUsIDgzLCA4NSwgODIsIDY5LCAxMjgsIDc3LCA2OSwgCi0gICAgNjUsIDgzLCA4NSwgODIsIDE5NywgNzcsIDY4LCA4NSwgMjA2LCA3NywgNjcsIDcyLCAyMTMsIDc3LCA2NywgNzIsIDY1LCAKLSAgICAyMDYsIDc3LCA2NiwgODUsIDc5LCA4MSwgMTI4LCA3NywgNjYsIDg1LCA3OSwgMTI4LCA3NywgNjYsIDg1LCA2OSwgMTI4LCAKLSAgICA3NywgNjYsIDg1LCA2NSwgNjksIDc3LCAxMjgsIDc3LCA2NiwgODUsIDY1LCA2OSwgMTI4LCA3NywgNjYsIDc5LCA3OSwgCi0gICAgMTI4LCA3NywgNjYsIDc5LCAxMjgsIDc3LCA2NiwgNzMsIDg0LCAxMjgsIDc3LCA2NiwgNzMsIDIxMiwgNzcsIDY2LCA3MywgCi0gICAgODIsIDczLCA2OSwgNjksIDc4LCAxMjgsIDc3LCA2NiwgNzMsIDEyOCwgNzcsIDY2LCA2OSwgODUsIDg4LCAxMjgsIDc3LCAKLSAgICA2NiwgNjksIDg1LCA4MiwgNzMsIDEyOCwgNzcsIDY2LCA2OSwgODUsIDc3LCAxMjgsIDc3LCA2NiwgNjksIDgyLCA2NSwgNjksIAotICAgIDEyOCwgNzcsIDY2LCA2OSwgNzgsIDEyOCwgNzcsIDY2LCA2OSwgNjksIDc1LCA2OSwgNjksIDg0LCAxMjgsIDc3LCA2NiwgCi0gICAgNjksIDY5LCAxMjgsIDc3LCA2NiwgNjksIDEyOCwgNzcsIDY2LCA2NSwgODEsIDEyOCwgNzcsIDY2LCA2NSwgNzgsIDg5LCAKLSAgICA3MywgMTI4LCA3NywgNjYsIDY1LCA2NSwgODIsIDY1LCA2OSwgMTI4LCA3NywgNjYsIDY1LCA2NSwgNzUsIDY5LCA4NCwgCi0gICAgMTI4LCA3NywgNjYsIDY1LCA2NSwgMTI4LCA3NywgNjYsIDY1LCAxOTMsIDc3LCA2NiwgMTkzLCA3NywgNjYsIDUyLCAxMjgsIAotICAgIDc3LCA2NiwgNTEsIDEyOCwgNzcsIDY2LCA1MCwgMTI4LCA3NywgNjYsIDEyOCwgNzcsIDE5NCwgNzcsIDY1LCA4OSwgNjksIAotICAgIDIwMywgNzcsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzcsIDY1LCA4OSwgMTI4LCA3NywgNjUsIDg4LCA3MywgCi0gICAgNzcsIDY1LCAxMjgsIDc3LCA2NSwgODgsIDEyOCwgNzcsIDY1LCA4NCwgODQsIDc5LCA2NywgNzUsIDEyOCwgNzcsIDY1LCAKLSAgICA4NCwgODIsIDczLCA4OCwgMTI4LCA3NywgNjUsIDg0LCA2OSwgODIsIDczLCA2NSwgNzYsIDgzLCAxMjgsIDc3LCA2NSwgODQsIAorICAgIDg5LCA4NSwgODUsIDEyOCwgNzgsIDg5LCA4NSwgODQsIDEyOCwgNzgsIDg5LCA4NSwgODAsIDEyOCwgNzgsIDg5LCA4NSwgCisgICAgNzksIDg4LCAxMjgsIDc4LCA4OSwgODUsIDc5LCA4MCwgMTI4LCA3OCwgODksIDg1LCA3OSwgMTI4LCA3OCwgODksIDg1LCAKKyAgICA2OSwgMTI4LCA3OCwgODksIDg1LCAxMjgsIDc4LCA4OSwgNzksIDg4LCAxMjgsIDc4LCA4OSwgNzksIDg0LCAxMjgsIDc4LCAKKyAgICA4OSwgNzksIDgwLCAxMjgsIDc4LCA4OSwgNzksIDc5LCAxMjgsIDc4LCA4OSwgNzksIDY1LCAxMjgsIDc4LCA4OSwgNzksIAorICAgIDEyOCwgNzgsIDg5LCA3NCwgNjUsIDEyOCwgNzgsIDg5LCA3MywgODgsIDEyOCwgNzgsIDg5LCA3MywgODQsIDEyOCwgNzgsIAorICAgIDg5LCA3MywgMjEyLCA3OCwgODksIDczLCAyMTEsIDc4LCA4OSwgNzMsIDIxMCwgNzgsIDg5LCA3MywgODAsIDEyOCwgNzgsIAorICAgIDg5LCA3MywgNzgsIDQ1LCA2OCwgNzksIDEyOCwgNzgsIDg5LCA3MywgNzMsIDEyOCwgNzgsIDg5LCA3MywgNjksIDg4LCAKKyAgICAxMjgsIDc4LCA4OSwgNzMsIDY5LCA4NCwgMTI4LCA3OCwgODksIDczLCA2OSwgODAsIDEyOCwgNzgsIDg5LCA3MywgNjksIAorICAgIDEyOCwgNzgsIDg5LCA3MywgMTI4LCA3OCwgODksIDIwMSwgNzgsIDg5LCA2OSwgODQsIDEyOCwgNzgsIDg5LCA2OSwgMjEyLCAKKyAgICA3OCwgODksIDY5LCA3MiwgMTI4LCA3OCwgODksIDY5LCAyMDAsIDc4LCA4OSwgNjksIDY5LCAxMjgsIDc4LCA4OSwgNjksIAorICAgIDEyOCwgNzgsIDg5LCAxOTYsIDc4LCA4OSwgNjcsIDY1LCAxMjgsIDc4LCA4OSwgNjUsIDg1LCAxMjgsIDc4LCA4OSwgNjUsIAorICAgIDczLCAxMjgsIDc4LCA4OSwgNjUsIDY5LCA3NywgNjUsIDY5LCAxMjgsIDc4LCA4OSwgNjUsIDY1LCAxMjgsIDc4LCA4NywgCisgICAgNzksIDc5LCAxMjgsIDc4LCA4NywgNzksIDEyOCwgNzgsIDg3LCA3MywgNzMsIDEyOCwgNzgsIDg3LCA3MywgMTI4LCA3OCwgCisgICAgODcsIDY5LCAxMjgsIDc4LCA4NywgNjUsIDY1LCAxMjgsIDc4LCA4NywgNjUsIDEyOCwgNzgsIDg3LCAxMjgsIDc4LCA4NiwgCisgICAgMTI4LCA3OCwgODUsIDg4LCAxMjgsIDc4LCA4NSwgODUsIDc4LCAxMjgsIDc4LCA4NSwgODUsIDEyOCwgNzgsIDg1LCA4NCwgCisgICAgNzMsIDc2LCA3NiwgODUsIDEyOCwgNzgsIDg1LCA4NCwgMTI4LCA3OCwgODUsIDIxMiwgNzgsIDg1LCA4MiwgODgsIDEyOCwgCisgICAgNzgsIDg1LCA4MiwgMTI4LCA3OCwgODUsIDgwLCAxMjgsIDc4LCA4NSwgNzksIDg4LCAxMjgsIDc4LCA4NSwgNzksIDgwLCAKKyAgICAxMjgsIDc4LCA4NSwgNzksIDEyOCwgNzgsIDg1LCA3OCwgODUsIDkwLCAxMjgsIDc4LCA4NSwgNzgsIDg1LCAyMTgsIDc4LCAKKyAgICA4NSwgNzgsIDcxLCAxMjgsIDc4LCA4NSwgNzgsIDY1LCA4NiwgODUsIDIxMiwgNzgsIDg1LCA3OCwgNjUsIDg2LCA3MywgCisgICAgMjAzLCA3OCwgODUsIDc4LCAxMjgsIDc4LCA4NSwgMjA2LCA3OCwgODUsIDc3LCA2OSwgODIsIDIwNywgNzgsIDg1LCA3NywgCisgICAgNjksIDgyLCA2NSwgODQsIDc5LCAyMTAsIDc4LCA4NSwgNzcsIDY5LCA4MiwgNjUsIDIwNCwgNzgsIDg1LCA3NywgNjYsIDY5LCAKKyAgICA4MiwgODMsIDEyOCwgNzgsIDg1LCA3NywgNjYsIDY5LCA4MiwgMTI4LCA3OCwgODUsIDc3LCAxMjgsIDc4LCA4NSwgNzYsIAorICAgIDc2LCAxMjgsIDc4LCA4NSwgNzYsIDIwNCwgNzgsIDg1LCA3NSwgODQsIDY1LCAxMjgsIDc4LCA4NSwgNjksIDc4LCA3MSwgCisgICAgMTI4LCA3OCwgODUsIDY5LCAxMjgsIDc4LCA4NSwgNjYsIDczLCA2NSwgMjA2LCA3OCwgODUsIDY1LCA2OSwgMTI4LCA3OCwgCisgICAgODUsIDQ5LCA0OSwgMTI4LCA3OCwgODUsIDQ4LCA1MCwgNTAsIDY1LCAxMjgsIDc4LCA4NSwgNDgsIDUwLCA1MCwgMTI4LCAKKyAgICA3OCwgODUsIDQ4LCA1MCwgNDksIDEyOCwgNzgsIDg1LCA0OCwgNTAsIDQ4LCAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA1NywgCisgICAgMTI4LCA3OCwgODUsIDQ4LCA0OSwgNTYsIDY1LCAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA1NiwgMTI4LCA3OCwgODUsIDQ4LCAKKyAgICA0OSwgNTUsIDEyOCwgNzgsIDg1LCA0OCwgNDksIDU0LCAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA1MywgMTI4LCA3OCwgODUsIAorICAgIDQ4LCA0OSwgNTIsIDEyOCwgNzgsIDg1LCA0OCwgNDksIDUxLCAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA1MCwgMTI4LCA3OCwgCisgICAgODUsIDQ4LCA0OSwgNDksIDY1LCAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA0OSwgMTI4LCA3OCwgODUsIDQ4LCA0OSwgNDgsIDY1LCAKKyAgICAxMjgsIDc4LCA4NSwgNDgsIDQ5LCA0OCwgMTI4LCA3OCwgODUsIDQ4LCA0OCwgNTcsIDEyOCwgNzgsIDg1LCA0OCwgNDgsIAorICAgIDU2LCAxMjgsIDc4LCA4NSwgNDgsIDQ4LCA1NSwgMTI4LCA3OCwgODUsIDQ4LCA0OCwgNTQsIDEyOCwgNzgsIDg1LCA0OCwgCisgICAgNDgsIDUzLCAxMjgsIDc4LCA4NSwgNDgsIDQ4LCA1MiwgMTI4LCA3OCwgODUsIDQ4LCA0OCwgNTEsIDEyOCwgNzgsIDg1LCAKKyAgICA0OCwgNDgsIDUwLCAxMjgsIDc4LCA4NSwgNDgsIDQ4LCA0OSwgMTI4LCA3OCwgODQsIDg1LCA4NSwgMTI4LCA3OCwgODQsIAorICAgIDg1LCA3NywgMTI4LCA3OCwgODQsIDIxMywgNzgsIDg0LCA3OSwgODEsIDgwLCA2OSwgNzgsIDEyOCwgNzgsIDg0LCA3MywgCisgICAgNjksIDE5NywgNzgsIDg0LCA2OSwgODUsIDc4LCA3MSwgNjYsIDY1LCAxMjgsIDc4LCA4NCwgNjksIDg1LCA3NywgMTI4LCAKKyAgICA3OCwgODQsIDY5LCA3OCwgMTI4LCA3OCwgODQsIDY5LCA2OSwgMTI4LCA3OCwgODQsIDY1LCA4MCwgMTI4LCA3OCwgODQsIAorICAgIDY1LCAyMDgsIDc4LCA4NCwgNjUsIDY1LCAxMjgsIDc4LCA4MywgODUsIDc5LCAyMTIsIDc4LCA4MywgODUsIDc4LCAxMjgsIAorICAgIDc4LCA4MywgODUsIDc3LCAxMjgsIDc4LCA4MywgNzksIDc3LCAxMjgsIDc4LCA4MywgNzMsIDY5LCA2OSwgODQsIDEyOCwgCisgICAgNzgsIDgzLCA3MywgNjksIDY5LCA4MCwgMTI4LCA3OCwgODMsIDczLCA2OSwgNjksIDEyOCwgNzgsIDgzLCA3MiwgODUsIDg0LCAKKyAgICAxMjgsIDc4LCA4MywgNzIsIDg1LCAyMTIsIDc4LCA4MywgNzIsIDg1LCA3OSwgODAsIDEyOCwgNzgsIDgzLCA3MiwgODUsIAorICAgIDY5LCAxMjgsIDc4LCA4MywgNzIsIDczLCA2OSwgNjksIDEyOCwgNzgsIDgzLCA3MiwgNjksIDY5LCAxMjgsIDc4LCA4MywgCisgICAgNzIsIDY1LCA4MSwgMTI4LCA3OCwgODMsIDcyLCA2NSwgMTI4LCA3OCwgODMsIDY5LCA4NSwgNjUsIDY5LCA3OCwgMTI4LCAKKyAgICA3OCwgODMsIDY5LCA3OCwgMTI4LCA3OCwgODMsIDY1LCAxMjgsIDc4LCA4MiwgODksIDg4LCAxMjgsIDc4LCA4MiwgODksIAorICAgIDg0LCAxMjgsIDc4LCA4MiwgODksIDgyLCA4OCwgMTI4LCA3OCwgODIsIDg5LCA4MiwgMTI4LCA3OCwgODIsIDg5LCA4MCwgCisgICAgMTI4LCA3OCwgODIsIDg5LCAxMjgsIDc4LCA4MiwgODUsIDg4LCAxMjgsIDc4LCA4MiwgODUsIDg0LCAxMjgsIDc4LCA4MiwgCisgICAgODUsIDgyLCA4OCwgMTI4LCA3OCwgODIsIDg1LCA4MiwgMTI4LCA3OCwgODIsIDg1LCA4MCwgMTI4LCA3OCwgODIsIDg1LCAKKyAgICAxMjgsIDc4LCA4MiwgNzksIDg4LCAxMjgsIDc4LCA4MiwgNzksIDgwLCAxMjgsIDc4LCA4MiwgNzksIDEyOCwgNzgsIDgyLCAKKyAgICA2OSwgODgsIDEyOCwgNzgsIDgyLCA2OSwgODQsIDEyOCwgNzgsIDgyLCA2OSwgODAsIDEyOCwgNzgsIDgyLCA2OSwgMTI4LCAKKyAgICA3OCwgODIsIDY1LCA4OCwgMTI4LCA3OCwgODIsIDY1LCA4NCwgMTI4LCA3OCwgODIsIDY1LCA4MCwgMTI4LCA3OCwgODIsIAorICAgIDY1LCAxMjgsIDc4LCA3OSwgODksIDEyOCwgNzgsIDc5LCA4OCwgMTI4LCA3OCwgNzksIDg2LCA2OSwgNzcsIDY2LCA2OSwgCisgICAgODIsIDEyOCwgNzgsIDc5LCA4NCwgODQsIDc5LCAxMjgsIDc4LCA3OSwgODQsIDY5LCA4MywgMTI4LCA3OCwgNzksIDg0LCAKKyAgICA2OSwgNzIsIDY5LCA2NSwgNjgsIDEyOCwgNzgsIDc5LCA4NCwgNjksIDcyLCA2OSwgNjUsIDE5NiwgNzgsIDc5LCA4NCwgNjksIAorICAgIDY2LCA3OSwgNzksIDc1LCAxMjgsIDc4LCA3OSwgODQsIDY5LCA2NiwgNzksIDc5LCAyMDMsIDc4LCA3OSwgODQsIDY5LCAKKyAgICAxMjgsIDc4LCA3OSwgODQsIDE5NywgNzgsIDc5LCA4NCwgNjcsIDcyLCA2OSwgMTk2LCA3OCwgNzksIDg0LCA2NywgNzIsIAorICAgIDEyOCwgNzgsIDc5LCA4NCwgMTI4LCA3OCwgNzksIDIxMiwgNzgsIDc5LCA4MywgNjksIDEyOCwgNzgsIDc5LCA4MiwgODQsIAorICAgIDcyLCA4NywgNjksIDgzLCAyMTIsIDc4LCA3OSwgODIsIDg0LCA3MiwgNjksIDgyLCAyMDYsIDc4LCA3OSwgODIsIDg0LCAKKyAgICAyMDAsIDc4LCA3OSwgODIsIDc3LCA2NSwgMjA0LCA3OCwgNzksIDIxMCwgNzgsIDc5LCA4MCwgMTI4LCA3OCwgNzksIDc5LCAKKyAgICA3OCwgODUsIDEyOCwgNzgsIDc5LCA3OSwgMTI4LCA3OCwgNzksIDc4LCA3MCwgNzksIDgyLCA3NSwgNzMsIDc4LCA3MSwgCisgICAgMTI4LCA3OCwgNzksIDc4LCA0NSwgODAsIDc5LCA4NCwgNjUsIDY2LCA3NiwgMTk3LCA3OCwgNzksIDc4LCA0NSwgNzQsIDc5LCAKKyAgICA3MywgNzgsIDY5LCA4MiwgMTI4LCA3OCwgNzksIDc4LCA0NSwgNjYsIDgyLCA2OSwgNjUsIDc1LCA3MywgNzgsIDE5OSwgNzgsIAorICAgIDc5LCA3NywgNzMsIDc4LCA2NSwgMjA0LCA3OCwgNzksIDc1LCA3MiwgODUsIDc1LCAxMjgsIDc4LCA3OSwgNjgsIDY5LCAKKyAgICAxMjgsIDc4LCA3OSwgNjUsIDEyOCwgNzgsIDc5LCA0NSwgNjYsIDgyLCA2OSwgNjUsIDIwMywgNzgsIDc4LCA4NSwgODUsIAorICAgIDEyOCwgNzgsIDc4LCA4NSwgMTI4LCA3OCwgNzgsIDc5LCA3OSwgMTI4LCA3OCwgNzgsIDc5LCAxMjgsIDc4LCA3OCwgNzgsIAorICAgIDg1LCA4NSwgMTI4LCA3OCwgNzgsIDc4LCA4NSwgMTI4LCA3OCwgNzgsIDc4LCA3OSwgNzksIDEyOCwgNzgsIDc4LCA3OCwgCisgICAgNzksIDEyOCwgNzgsIDc4LCA3OCwgNzMsIDczLCAxMjgsIDc4LCA3OCwgNzgsIDczLCAxMjgsIDc4LCA3OCwgNzgsIDY5LCAKKyAgICA2OSwgMTI4LCA3OCwgNzgsIDc4LCA2OSwgMTI4LCA3OCwgNzgsIDc4LCA2NSwgODUsIDEyOCwgNzgsIDc4LCA3OCwgNjUsIAorICAgIDczLCAxMjgsIDc4LCA3OCwgNzgsIDY1LCA2NSwgMTI4LCA3OCwgNzgsIDc4LCA2NSwgMTI4LCA3OCwgNzgsIDc4LCAxMjgsIAorICAgIDc4LCA3OCwgNzEsIDc5LCA3OSwgMTI4LCA3OCwgNzgsIDcxLCA3OSwgMTI4LCA3OCwgNzgsIDcxLCA3MywgNzMsIDEyOCwgCisgICAgNzgsIDc4LCA3MSwgNzMsIDEyOCwgNzgsIDc4LCA3MSwgNjUsIDY1LCAxMjgsIDc4LCA3OCwgNzEsIDY1LCAxMjgsIDc4LCAKKyAgICA3OCwgNzEsIDEyOCwgNzgsIDc3LCAxMjgsIDc4LCA3NiwgNDgsIDUwLCA0OCwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTcsIAorICAgIDEyOCwgNzgsIDc2LCA0OCwgNDksIDU2LCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA1NSwgNjUsIDEyOCwgNzgsIDc2LCA0OCwgCisgICAgNDksIDU1LCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA1NCwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTMsIDEyOCwgNzgsIDc2LCAKKyAgICA0OCwgNDksIDUyLCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA1MSwgMTI4LCA3OCwgNzYsIDQ4LCA0OSwgNTAsIDEyOCwgNzgsIAorICAgIDc2LCA0OCwgNDksIDQ5LCAxMjgsIDc4LCA3NiwgNDgsIDQ5LCA0OCwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTcsIDEyOCwgCisgICAgNzgsIDc2LCA0OCwgNDgsIDU2LCAxMjgsIDc4LCA3NiwgNDgsIDQ4LCA1NSwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTQsIAorICAgIDEyOCwgNzgsIDc2LCA0OCwgNDgsIDUzLCA2NSwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTMsIDEyOCwgNzgsIDc2LCA0OCwgCisgICAgNDgsIDUyLCAxMjgsIDc4LCA3NiwgNDgsIDQ4LCA1MSwgMTI4LCA3OCwgNzYsIDQ4LCA0OCwgNTAsIDEyOCwgNzgsIDc2LCAKKyAgICA0OCwgNDgsIDQ5LCAxMjgsIDc4LCA3NSwgNzksIDc3LCAxMjgsIDc4LCA3NSwgMjA3LCA3OCwgNzUsIDczLCA3OCwgNjgsIAorICAgIDczLCAxMjgsIDc4LCA3NSwgNjUsIDY1LCA4MiwgNjUsIDY5LCAxMjgsIDc4LCA3NCwgODksIDg4LCAxMjgsIDc4LCA3NCwgCisgICAgODksIDg0LCAxMjgsIDc4LCA3NCwgODksIDgyLCA4OCwgMTI4LCA3OCwgNzQsIDg5LCA4MiwgMTI4LCA3OCwgNzQsIDg5LCAKKyAgICA4MCwgMTI4LCA3OCwgNzQsIDg5LCAxMjgsIDc4LCA3NCwgODUsIDg4LCAxMjgsIDc4LCA3NCwgODUsIDgyLCA4OCwgMTI4LCAKKyAgICA3OCwgNzQsIDg1LCA4MiwgMTI4LCA3OCwgNzQsIDg1LCA4MSwgNjUsIDEyOCwgNzgsIDc0LCA4NSwgODAsIDEyOCwgNzgsIAorICAgIDc0LCA4NSwgNzksIDg4LCAxMjgsIDc4LCA3NCwgODUsIDc5LCAxMjgsIDc4LCA3NCwgODUsIDY5LCA4MSwgMTI4LCA3OCwgCisgICAgNzQsIDg1LCA2NSwgNjksIDEyOCwgNzgsIDc0LCA4NSwgMTI4LCA3OCwgNzQsIDc5LCA4OCwgMTI4LCA3OCwgNzQsIDc5LCAKKyAgICA4NCwgMTI4LCA3OCwgNzQsIDc5LCA4MCwgMTI4LCA3OCwgNzQsIDc5LCA3OSwgMTI4LCA3OCwgNzQsIDc5LCAxMjgsIDc4LCAKKyAgICA3NCwgNzMsIDg4LCAxMjgsIDc4LCA3NCwgNzMsIDg0LCAxMjgsIDc4LCA3NCwgNzMsIDgwLCAxMjgsIDc4LCA3NCwgNzMsIAorICAgIDY5LCA4OCwgMTI4LCA3OCwgNzQsIDczLCA2OSwgODQsIDEyOCwgNzgsIDc0LCA3MywgNjksIDgwLCAxMjgsIDc4LCA3NCwgCisgICAgNzMsIDY5LCA2OSwgMTI4LCA3OCwgNzQsIDczLCA2OSwgMTI4LCA3OCwgNzQsIDczLCAxMjgsIDc4LCA3NCwgMjAxLCA3OCwgCisgICAgNzQsIDY5LCA4NSwgODgsIDEyOCwgNzgsIDc0LCA2OSwgODUsIDg0LCAxMjgsIDc4LCA3NCwgNjksIDg1LCA2NSwgNjksIDc4LCAKKyAgICA2NSwgMTI4LCA3OCwgNzQsIDY5LCA4NSwgNjUsIDY5LCA3NywgMTI4LCA3OCwgNzQsIDY5LCA2OSwgNjksIDY5LCAxMjgsIAorICAgIDc4LCA3NCwgNjksIDY5LCAxMjgsIDc4LCA3NCwgNjksIDE5NywgNzgsIDc0LCA2OSwgMTI4LCA3OCwgNzQsIDY1LCA4MSwgCisgICAgMTI4LCA3OCwgNzQsIDY1LCA4MCwgMTI4LCA3OCwgNzQsIDY1LCA2OSwgNzcsIDc2LCA3MywgMTI4LCA3OCwgNzQsIDY1LCAKKyAgICA2OSwgNzcsIDEyOCwgNzgsIDc0LCA2NSwgNjUsIDEyOCwgNzgsIDc0LCAxMjgsIDc4LCA3MywgODgsIDEyOCwgNzgsIDczLCAKKyAgICA4NCwgODIsIDY5LCAxMjgsIDc4LCA3MywgODMsIDY1LCA3MSwgMTI4LCA3OCwgNzMsIDgyLCA4NSwgNzEsIDg1LCAxMjgsIAorICAgIDc4LCA3MywgODAsIDEyOCwgNzgsIDczLCA3OCwgODQsIDcyLCAxMjgsIDc4LCA3MywgNzgsIDY5LCA4NCwgODksIDEyOCwgCisgICAgNzgsIDczLCA3OCwgNjksIDg0LCAyMTcsIDc4LCA3MywgNzgsIDY5LCA4NCwgNjksIDY5LCA3OCwgMTI4LCA3OCwgNzMsIDc4LCAKKyAgICA2OSwgODQsIDY5LCA2OSwgMjA2LCA3OCwgNzMsIDc4LCA2OSwgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgNzgsIAorICAgIDczLCA3OCwgMTk3LCA3OCwgNzMsIDc4LCA2OCwgNjUsIDUwLCAxMjgsIDc4LCA3MywgNzgsIDY4LCA2NSwgMTc4LCA3OCwgCisgICAgNzMsIDc3LCAxMjgsIDc4LCA3MywgMjA1LCA3OCwgNzMsIDc1LCA3MiwgNjUsIDcyLCA3MywgODQsIDEyOCwgNzgsIDczLCAKKyAgICA3NSwgNjUsIDcyLCA3MywgODQsIDEyOCwgNzgsIDczLCA3NSwgNjUsIDEyOCwgNzgsIDczLCA3MiwgODMsIDcyLCA4NiwgNjUsIAorICAgIDgzLCA2NSwgMTI4LCA3OCwgNzMsIDcxLCA3MywgNjgsIDY1LCA3NywgNzMsIDc4LCAxMjgsIDc4LCA3MywgNzEsIDczLCA2OCwgCisgICAgNjUsIDY5LCA4MywgNzIsIDEyOCwgNzgsIDczLCA3MSwgNzIsIDg0LCAxMjgsIDc4LCA3MywgNzEsIDcyLCAyMTIsIDc4LCAKKyAgICA3MywgNzEsIDcxLCA2NSwgNzIsIDczLCA4NCwgNjUsIDEyOCwgNzgsIDczLCA2OSwgODgsIDEyOCwgNzgsIDczLCA2OSwgODUsIAorICAgIDc4LCA0NSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgMTI4LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDQ1LCA4NCwgNzIsIDczLCAKKyAgICA2OSwgODUsIDg0LCA3MiwgMTI4LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDQ1LCA4MywgNzMsIDc5LCA4MywgMTI4LCA3OCwgNzMsIAorICAgIDY5LCA4NSwgNzgsIDQ1LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCA0NSwgODAsIDczLCAKKyAgICA2OSwgODUsIDgwLCAxMjgsIDc4LCA3MywgNjksIDg1LCA3OCwgNDUsIDgwLCA2NSwgNzgsIDgzLCA3MywgNzksIDgzLCAxMjgsIAorICAgIDc4LCA3MywgNjksIDg1LCA3OCwgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgNzgsIDczLCA2OSwgODUsIDc4LCAKKyAgICA0NSwgNzIsIDczLCA2OSwgODUsIDcyLCAxMjgsIDc4LCA3MywgNjksIDg1LCA3OCwgNDUsIDY3LCA3MywgNjksIDg1LCA2NywgCisgICAgMTI4LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDQ1LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCA3MiwgMTI4LCA3OCwgNzMsIDY5LCAKKyAgICA4NSwgMjA2LCA3OCwgNzMsIDY5LCA4MCwgMTI4LCA3OCwgNzMsIDY5LCAxMjgsIDc4LCA3MywgNjYsIDEyOCwgNzgsIDczLCAKKyAgICA2NSwgMTI4LCA3OCwgNzMsIDUwLCAxMjgsIDc4LCA3MiwgODUsIDY5LCAxMjgsIDc4LCA3MiwgNzQsIDY1LCAxMjgsIDc4LCAKKyAgICA3MiwgNjUsIDEyOCwgNzgsIDcyLCAxMjgsIDc4LCA3MSwgODksIDY5LCAxMjgsIDc4LCA3MSwgODYsIDY5LCAxMjgsIDc4LCAKKyAgICA3MSwgODUsIDg1LCAxMjgsIDc4LCA3MSwgODUsIDc5LCA4OCwgMTI4LCA3OCwgNzEsIDg1LCA3OSwgODQsIDEyOCwgNzgsIAorICAgIDcxLCA4NSwgNzksIDEyOCwgNzgsIDcxLCA4NSwgNjUsIDY5LCA4NCwgMTI4LCA3OCwgNzEsIDg1LCA2NSwgNjksIDEyOCwgCisgICAgNzgsIDcxLCA3OSwgODgsIDEyOCwgNzgsIDcxLCA3OSwgODUsIDEyOCwgNzgsIDcxLCA3OSwgMjEzLCA3OCwgNzEsIDc5LCAKKyAgICA4NCwgMTI4LCA3OCwgNzEsIDc5LCA4MSwgMTI4LCA3OCwgNzEsIDc5LCA4MCwgMTI4LCA3OCwgNzEsIDc5LCA3OCwgMTI4LCAKKyAgICA3OCwgNzEsIDc5LCA3NywgMTI4LCA3OCwgNzEsIDc5LCA2OSwgNzIsIDEyOCwgNzgsIDcxLCA3OSwgNjksIDIwMCwgNzgsIAorICAgIDcxLCAyMDcsIDc4LCA3MSwgNzUsIDg5LCA2OSwgNjksIDEyOCwgNzgsIDcxLCA3NSwgODcsIDY1LCA2OSwgNzgsIDEyOCwgCisgICAgNzgsIDcxLCA3NSwgODUsIDgwLCAxMjgsIDc4LCA3MSwgNzUsIDg1LCA3OCwgMTI4LCA3OCwgNzEsIDc1LCA4NSwgNzcsIAorICAgIDEyOCwgNzgsIDcxLCA3NSwgODUsIDY5LCA3OCwgOTAsIDY5LCA4NSwgNzcsIDEyOCwgNzgsIDcxLCA3NSwgODUsIDE5NywgCisgICAgNzgsIDcxLCA3NSwgNzMsIDc4LCA2OCwgMjAxLCA3OCwgNzEsIDc1LCA3MywgNjksIDY5LCAxMjgsIDc4LCA3MSwgNzUsIDY5LCAKKyAgICA4NSwgODgsIDEyOCwgNzgsIDcxLCA3NSwgNjksIDg1LCA4MiwgNzMsIDEyOCwgNzgsIDcxLCA3NSwgNjksIDg1LCA2NSwgNjksIAorICAgIDgxLCAxMjgsIDc4LCA3MSwgNzUsIDY5LCA4NSwgNjUsIDY5LCA3NywgMTI4LCA3OCwgNzEsIDc1LCA2NSwgODEsIDEyOCwgCisgICAgNzgsIDcxLCA3NSwgNjUsIDgwLCAxMjgsIDc4LCA3MSwgNzUsIDY1LCA2NSwgNzcsIDczLCAxMjgsIDc4LCA3MSwgNzUsIDY1LCAKKyAgICAxMjgsIDc4LCA3MSwgNzMsIDY5LCA4OCwgMTI4LCA3OCwgNzEsIDczLCA2OSwgODAsIDEyOCwgNzgsIDcxLCA3MywgNjksIAorICAgIDEyOCwgNzgsIDcxLCA3MSwgODcsIDY1LCA2OSwgNzgsIDEyOCwgNzgsIDcxLCA3MSwgODUsIDgyLCA2NSwgNjksIDEyOCwgCisgICAgNzgsIDcxLCA3MSwgODUsIDgwLCAxMjgsIDc4LCA3MSwgNzEsIDg1LCA3OSwgODEsIDEyOCwgNzgsIDcxLCA3MSwgODUsIDc5LCAKKyAgICAyMDksIDc4LCA3MSwgNzEsIDg1LCA3OSwgNzgsIDEyOCwgNzgsIDcxLCA3MSwgODUsIDc5LCA3NywgMTI4LCA3OCwgNzEsIAorICAgIDcxLCA4NSwgNzcsIDEyOCwgNzgsIDcxLCA3MSwgODUsIDY5LCA2OSwgODQsIDEyOCwgNzgsIDcxLCA3MSwgODUsIDY1LCA2OSwgCisgICAgODMsIDcyLCA2NSwgMTk3LCA3OCwgNzEsIDcxLCA4NSwgNjUsIDY5LCAyMDYsIDc4LCA3MSwgNzEsIDg1LCAxMjgsIDc4LCAKKyAgICA3MSwgNzEsIDc5LCA3OSwgMTI4LCA3OCwgNzEsIDcxLCA3OSwgMTI4LCA3OCwgNzEsIDcxLCA3MywgMTI4LCA3OCwgNzEsIAorICAgIDcxLCA2OSwgODUsIDg4LCAxMjgsIDc4LCA3MSwgNzEsIDY5LCA4NSwgNjUsIDY5LCA4NCwgMTI4LCA3OCwgNzEsIDcxLCA2OSwgCisgICAgODUsIDY1LCA2OSwgMTI4LCA3OCwgNzEsIDcxLCA2OSwgMjEzLCA3OCwgNzEsIDcxLCA2OSwgNzgsIDEyOCwgNzgsIDcxLCAKKyAgICA3MSwgNjksIDY5LCA4NCwgMTI4LCA3OCwgNzEsIDcxLCA2OSwgNjksIDY5LCA2OSwgMTI4LCA3OCwgNzEsIDcxLCA2OSwgNjksIAorICAgIDEyOCwgNzgsIDcxLCA3MSwgNjksIDEyOCwgNzgsIDcxLCA3MSwgNjUsIDgwLCAxMjgsIDc4LCA3MSwgNzEsIDY1LCA2NSwgCisgICAgNzcsIDY1LCA2OSwgMTI4LCA3OCwgNzEsIDcxLCA2NSwgNjUsIDc3LCAxMjgsIDc4LCA3MSwgNzEsIDEyOCwgNzgsIDcxLCAKKyAgICA2OSwgODgsIDEyOCwgNzgsIDcxLCA2OSwgODUsIDgyLCA2OSwgODUsIDg0LCAxMjgsIDc4LCA3MSwgNjksIDgwLCAxMjgsIAorICAgIDc4LCA3MSwgNjksIDc4LCAxMjgsIDc4LCA3MSwgNjksIDY5LCAxMjgsIDc4LCA3MSwgNjksIDY1LCA2OCwgNjUsIDc2LCAKKyAgICAxMjgsIDc4LCA3MSwgNjUsIDg4LCAxMjgsIDc4LCA3MSwgNjUsIDg1LCAxMjgsIDc4LCA3MSwgNjUsIDg0LCAxMjgsIDc4LCAKKyAgICA3MSwgNjUsIDIxMSwgNzgsIDcxLCA2NSwgODEsIDEyOCwgNzgsIDcxLCA2NSwgODAsIDEyOCwgNzgsIDcxLCA2NSwgNzgsIAorICAgIDcxLCA4NSwgMTI4LCA3OCwgNzEsIDY1LCA3OCwgMTI4LCA3OCwgNzEsIDY1LCA3MywgMTI4LCA3OCwgNzEsIDY1LCA2NSwgCisgICAgNzMsIDEyOCwgNzgsIDcxLCAxOTMsIDc4LCA3MCwgMTI4LCA3OCwgNjksIDg4LCAyMTIsIDc4LCA2OSwgODgsIDEyOCwgNzgsIAorICAgIDY5LCA4NywgODMsIDgwLCA2NSwgODAsIDY5LCA4MiwgMTI4LCA3OCwgNjksIDg3LCA3NiwgNzMsIDc4LCA2OSwgMTI4LCA3OCwgCisgICAgNjksIDg3LCAxMjgsIDc4LCA2OSwgODUsIDg0LCA4MiwgNjUsIDIwNCwgNzgsIDY5LCA4NSwgODQsIDY5LCA4MiwgMTI4LCAKKyAgICA3OCwgNjksIDg0LCAxMjgsIDc4LCA2OSwgMjEyLCA3OCwgNjksIDgzLCA4NCwgNjksIDE5NiwgNzgsIDY5LCA4MSwgODUsIAorICAgIDY4LCA2NSwgNjUsIDEyOCwgNzgsIDY5LCA4MCwgODQsIDg1LCA3OCwgNjksIDEyOCwgNzgsIDY5LCA4MCwgMTI4LCA3OCwgCisgICAgNjksIDc5LCAxMjgsIDc4LCA2OSwgMjA3LCA3OCwgNjksIDc4LCA2NSwgNzgsIDc5LCAxMjgsIDc4LCA2OSwgNzgsIDEyOCwgCisgICAgNzgsIDY5LCA3MywgODQsIDcyLCA2OSwgMjEwLCA3OCwgNjksIDcxLCA2NSwgODQsIDczLCA3OSwgMjA2LCA3OCwgNjksIDcxLCAKKyAgICA2NSwgODQsIDY5LCAxOTYsIDc4LCA2OSwgNjcsIDc1LCA4NCwgNzMsIDY5LCAxMjgsIDc4LCA2OSwgNjYsIDY5LCA3OCwgODMsIAorICAgIDg0LCA3MywgNzcsIDc3LCA2OSwgMTI4LCA3OCwgNjgsIDg1LCA4OCwgMTI4LCA3OCwgNjgsIDg1LCA4NCwgMTI4LCA3OCwgCisgICAgNjgsIDg1LCA4MiwgODgsIDEyOCwgNzgsIDY4LCA4NSwgODIsIDEyOCwgNzgsIDY4LCA4NSwgODAsIDEyOCwgNzgsIDY4LCAKKyAgICA4NSwgNzgsIDEyOCwgNzgsIDY4LCAyMTMsIDc4LCA2OCwgNzksIDg4LCAxMjgsIDc4LCA2OCwgNzksIDg0LCAxMjgsIDc4LCAKKyAgICA2OCwgNzksIDgwLCAxMjgsIDc4LCA2OCwgNzksIDc5LCAxMjgsIDc4LCA2OCwgNzksIDc4LCAxMjgsIDc4LCA2OCwgNzksIAorICAgIDc3LCA2NiwgODUsIDEyOCwgNzgsIDY4LCA3OSwgNzYsIDE5NywgNzgsIDY4LCA3MywgODgsIDEyOCwgNzgsIDY4LCA3MywgCisgICAgODQsIDEyOCwgNzgsIDY4LCA3MywgODEsIDEyOCwgNzgsIDY4LCA3MywgODAsIDEyOCwgNzgsIDY4LCA3MywgNjksIDg4LCAKKyAgICAxMjgsIDc4LCA2OCwgNzMsIDY5LCAxMjgsIDc4LCA2OCwgNzMsIDY4LCA2NSwgMTI4LCA3OCwgNjgsIDczLCA2NSwgODEsIAorICAgIDEyOCwgNzgsIDY4LCA2OSwgODgsIDEyOCwgNzgsIDY4LCA2OSwgODUsIDg4LCAxMjgsIDc4LCA2OCwgNjksIDg1LCA4NCwgCisgICAgMTI4LCA3OCwgNjgsIDY5LCA4NSwgNjUsIDY5LCA4MiwgNjksIDY5LCAxMjgsIDc4LCA2OCwgNjksIDgwLCAxMjgsIDc4LCAKKyAgICA2OCwgNjksIDY5LCAxMjgsIDc4LCA2OCwgNjksIDEyOCwgNzgsIDY4LCA2NSwgODgsIDEyOCwgNzgsIDY4LCA2NSwgODQsIAorICAgIDEyOCwgNzgsIDY4LCA2NSwgODAsIDEyOCwgNzgsIDY4LCA2NSwgNzcsIDEyOCwgNzgsIDY4LCA2NSwgNjUsIDc4LCA3MSwgCisgICAgNzEsIDY5LCA4NSwgNjUsIDY5LCA4NCwgMTI4LCA3OCwgNjgsIDY1LCA2NSwgMTI4LCA3OCwgNjgsIDY1LCAxOTMsIDc4LCAKKyAgICA2NiwgODksIDg4LCAxMjgsIDc4LCA2NiwgODksIDg0LCAxMjgsIDc4LCA2NiwgODksIDgyLCA4OCwgMTI4LCA3OCwgNjYsIAorICAgIDg5LCA4MiwgMTI4LCA3OCwgNjYsIDg5LCA4MCwgMTI4LCA3OCwgNjYsIDg5LCAxMjgsIDc4LCA2NiwgODUsIDg4LCAxMjgsIAorICAgIDc4LCA2NiwgODUsIDg0LCAxMjgsIDc4LCA2NiwgODUsIDgyLCA4OCwgMTI4LCA3OCwgNjYsIDg1LCA4MiwgMTI4LCA3OCwgCisgICAgNjYsIDg1LCA4MCwgMTI4LCA3OCwgNjYsIDg1LCAxMjgsIDc4LCA2NiwgNzksIDg4LCAxMjgsIDc4LCA2NiwgNzksIDg0LCAKKyAgICAxMjgsIDc4LCA2NiwgNzksIDgwLCAxMjgsIDc4LCA2NiwgNzksIDEyOCwgNzgsIDY2LCA3MywgODgsIDEyOCwgNzgsIDY2LCAKKyAgICA3MywgODQsIDEyOCwgNzgsIDY2LCA3MywgODAsIDEyOCwgNzgsIDY2LCA3MywgNjksIDg4LCAxMjgsIDc4LCA2NiwgNzMsIAorICAgIDY5LCA4MCwgMTI4LCA3OCwgNjYsIDczLCA2OSwgMTI4LCA3OCwgNjYsIDczLCAxMjgsIDc4LCA2NiwgNjUsIDg4LCAxMjgsIAorICAgIDc4LCA2NiwgNjUsIDg0LCAxMjgsIDc4LCA2NiwgNjUsIDgwLCAxMjgsIDc4LCA2NiwgNjUsIDEyOCwgNzgsIDY1LCA4OSwgCisgICAgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzgsIDY1LCA4OSwgMTI4LCA3OCwgNjUsIDg4LCA3MywgNjUsIDIwNiwgNzgsIDY1LCAKKyAgICA4OCwgMTI4LCA3OCwgNjUsIDg1LCA4NCwgNzIsIDgzLCAxMjgsIDc4LCA2NSwgODUsIDY4LCA3MywgMjE4LCA3OCwgNjUsIAorICAgIDg0LCA4NSwgODIsIDY1LCAyMDQsIDc4LCA2NSwgODQsIDczLCA3OSwgNzgsIDY1LCAyMDQsIDc4LCA2NSwgODMsIDc1LCA2NSwgCisgICAgODAsIDIwMSwgNzgsIDY1LCA4MywgNzIsIDczLCAxMjgsIDc4LCA2NSwgODMsIDY1LCA3NiwgNzMsIDkwLCA2NSwgODQsIDczLCAKKyAgICA3OSwgMjA2LCA3OCwgNjUsIDgyLCA4MiwgNzksIDIxNSwgNzgsIDY1LCA4MiwgMTI4LCA3OCwgNjUsIDgxLCAxMjgsIDc4LCAKKyAgICA2NSwgNzksIDIxMSwgNzgsIDY1LCA3OCwgODMsIDY1LCA3OCwgNjUsIDgxLCAxMjgsIDc4LCA2NSwgNzgsIDcxLCA3NywgNzksIAorICAgIDc4LCA4NCwgNzIsIDc5LCAxMjgsIDc4LCA2NSwgNzgsIDY4LCAxMjgsIDc4LCA2NSwgNzgsIDY1LCAxMjgsIDc4LCA2NSwgCisgICAgNzcsIDY5LCAxMjgsIDc4LCA2NSwgNzcsIDE5NywgNzgsIDY1LCA3NywgNTAsIDEyOCwgNzgsIDY1LCA3NywgMTI4LCA3OCwgCisgICAgNjUsIDczLCA4MiwgMTkzLCA3OCwgNjUsIDczLCAyMDQsIDc4LCA2NSwgNzEsIDgyLCAyMDEsIDc4LCA2NSwgNzEsIDY1LCAKKyAgICA4MiwgMTI4LCA3OCwgNjUsIDcxLCA2NSwgMTI4LCA3OCwgNjUsIDcxLCAxOTMsIDc4LCA2NSwgNzEsIDEyOCwgNzgsIDY1LCAKKyAgICAxOTksIDc4LCA2NSwgNjksIDEyOCwgNzgsIDY1LCA2NiwgNzYsIDY1LCAxMjgsIDc4LCA2NSwgNjUsIDgzLCA3MywgNzUsIAorICAgIDg5LCA2NSwgODksIDY1LCAxMjgsIDc4LCA2NSwgNjUsIDc1LCA4MywgNzMsIDc1LCA4OSwgNjUsIDg5LCA2NSwgMTI4LCA3OCwgCisgICAgNjUsIDY1LCA3MywgMTI4LCA3OCwgNjUsIDE5MywgNzgsIDY1LCA1MCwgMTI4LCA3OCwgNDgsIDUyLCA1MCwgMTI4LCA3OCwgCisgICAgNDgsIDUyLCA0OSwgMTI4LCA3OCwgNDgsIDUyLCA0OCwgMTI4LCA3OCwgNDgsIDUxLCA1NywgMTI4LCA3OCwgNDgsIDUxLCAKKyAgICA1NiwgMTI4LCA3OCwgNDgsIDUxLCA1NSwgNjUsIDEyOCwgNzgsIDQ4LCA1MSwgNTUsIDEyOCwgNzgsIDQ4LCA1MSwgNTQsIAorICAgIDEyOCwgNzgsIDQ4LCA1MSwgNTMsIDY1LCAxMjgsIDc4LCA0OCwgNTEsIDUzLCAxMjgsIDc4LCA0OCwgNTEsIDUyLCA2NSwgCisgICAgMTI4LCA3OCwgNDgsIDUxLCA1MiwgMTI4LCA3OCwgNDgsIDUxLCA1MSwgNjUsIDEyOCwgNzgsIDQ4LCA1MSwgNTEsIDEyOCwgCisgICAgNzgsIDQ4LCA1MSwgNTAsIDEyOCwgNzgsIDQ4LCA1MSwgNDksIDEyOCwgNzgsIDQ4LCA1MSwgNDgsIDEyOCwgNzgsIDQ4LCAKKyAgICA1MCwgNTcsIDEyOCwgNzgsIDQ4LCA1MCwgNTYsIDEyOCwgNzgsIDQ4LCA1MCwgNTUsIDEyOCwgNzgsIDQ4LCA1MCwgNTQsIAorICAgIDEyOCwgNzgsIDQ4LCA1MCwgNTMsIDY1LCAxMjgsIDc4LCA0OCwgNTAsIDUzLCAxMjgsIDc4LCA0OCwgNTAsIDUyLCAxMjgsIAorICAgIDc4LCA0OCwgNTAsIDUxLCAxMjgsIDc4LCA0OCwgNTAsIDUwLCAxMjgsIDc4LCA0OCwgNTAsIDQ5LCAxMjgsIDc4LCA0OCwgCisgICAgNTAsIDQ4LCAxMjgsIDc4LCA0OCwgNDksIDU3LCAxMjgsIDc4LCA0OCwgNDksIDU2LCA2NiwgMTI4LCA3OCwgNDgsIDQ5LCAKKyAgICA1NiwgNjUsIDEyOCwgNzgsIDQ4LCA0OSwgNTYsIDEyOCwgNzgsIDQ4LCA0OSwgNTUsIDEyOCwgNzgsIDQ4LCA0OSwgNTQsIAorICAgIDEyOCwgNzgsIDQ4LCA0OSwgNTMsIDEyOCwgNzgsIDQ4LCA0OSwgNTIsIDEyOCwgNzgsIDQ4LCA0OSwgNTEsIDEyOCwgNzgsIAorICAgIDQ4LCA0OSwgNTAsIDEyOCwgNzgsIDQ4LCA0OSwgNDksIDEyOCwgNzgsIDQ4LCA0OSwgNDgsIDEyOCwgNzgsIDQ4LCA0OCwgCisgICAgNTcsIDEyOCwgNzgsIDQ4LCA0OCwgNTYsIDEyOCwgNzgsIDQ4LCA0OCwgNTUsIDEyOCwgNzgsIDQ4LCA0OCwgNTQsIDEyOCwgCisgICAgNzgsIDQ4LCA0OCwgNTMsIDEyOCwgNzgsIDQ4LCA0OCwgNTIsIDEyOCwgNzgsIDQ4LCA0OCwgNTEsIDEyOCwgNzgsIDQ4LCAKKyAgICA0OCwgNTAsIDEyOCwgNzgsIDQ4LCA0OCwgNDksIDEyOCwgNzgsIDQ1LCA2NywgODIsIDY5LCAxOTcsIDc4LCA0NSwgNjUsIAorICAgIDgyLCAyMTcsIDc3LCA4OSwgODgsIDEyOCwgNzcsIDg5LCA4NCwgMTI4LCA3NywgODksIDgzLCA3NiwgNzMsIDg0LCA2OSwgCisgICAgMTI4LCA3NywgODksIDgwLCAxMjgsIDc3LCA4OSwgNjUsIDEyOCwgNzcsIDg5LCAxOTMsIDc3LCA4OSwgMTI4LCA3NywgMjE3LCAKKyAgICA3NywgODcsIDc5LCA3OSwgMTI4LCA3NywgODcsIDc5LCAxMjgsIDc3LCA4NywgNzMsIDczLCAxMjgsIDc3LCA4NywgNzMsIAorICAgIDEyOCwgNzcsIDg3LCA2OSwgNjksIDEyOCwgNzcsIDg3LCA2OSwgMTI4LCA3NywgODcsIDY1LCA2NSwgMTI4LCA3NywgODcsIAorICAgIDY1LCAxMjgsIDc3LCA4NywgMTI4LCA3NywgMjE1LCA3NywgODYsIDc5LCA4MCwgMTI4LCA3NywgODYsIDczLCAxMjgsIDc3LCAKKyAgICA4NiwgNjksIDg1LCA2NSwgNjksIDc4LCA3MSwgNjUsIDc3LCAxMjgsIDc3LCA4NiwgMTI4LCA3NywgMjE0LCA3NywgODUsIAorICAgIDg4LCAxMjgsIDc3LCA4NSwgODUsIDgzLCA3MywgNzUsIDY1LCA4NCwgNzksIDY1LCA3OCwgMTI4LCA3NywgODUsIDg1LCA4MiwgCisgICAgNjgsIDcyLCA2NSwgNzQsIDE5MywgNzcsIDg1LCA4NSwgMTI4LCA3NywgODUsIDg0LCAxMjgsIDc3LCA4NSwgODMsIDczLCAKKyAgICA2NywgMTI4LCA3NywgODUsIDgzLCA3MywgMTk1LCA3NywgODUsIDgzLCA3MiwgODIsIDc5LCA3OSwgNzcsIDEyOCwgNzcsIAorICAgIDg1LCA4MywgNzIsIDUxLCAxMjgsIDc3LCA4NSwgODMsIDcyLCAxNzksIDc3LCA4NSwgODMsIDcyLCAxMjgsIDc3LCA4NSwgCisgICAgODMsIDIwMCwgNzcsIDg1LCA4MiwgODgsIDEyOCwgNzcsIDg1LCA4MiwgNzEsIDg1LCA1MCwgMTI4LCA3NywgODUsIDgyLCAKKyAgICA2OSwgMTI4LCA3NywgODUsIDgyLCA2OCwgNjUsIDEyOCwgNzcsIDg1LCA4MiwgNjgsIDE5MywgNzcsIDg1LCA4MiwgMTI4LCAKKyAgICA3NywgODUsIDgxLCA2OCwgNjUsIDc3LCAxMjgsIDc3LCA4NSwgODAsIDEyOCwgNzcsIDg1LCA3OSwgODgsIDEyOCwgNzcsIAorICAgIDg1LCA3OSwgODQsIDEyOCwgNzcsIDg1LCA3OSwgODAsIDEyOCwgNzcsIDg1LCA3OSwgNzcsIDY1LCA2OSwgMTI4LCA3NywgCisgICAgODUsIDc5LCAxMjgsIDc3LCA4NSwgNzgsIDgzLCA4NSwgNjYsIDEyOCwgNzcsIDg1LCA3OCwgNjUsIDcyLCAxMjgsIDc3LCAKKyAgICA4NSwgNzYsIDg0LCA3MywgODMsIDY5LCA4NCwgMTI4LCA3NywgODUsIDc2LCA4NCwgNzMsIDgzLCA2OSwgMjEyLCA3NywgODUsIAorICAgIDc2LCA4NCwgNzMsIDgwLCA3NiwgNzMsIDY3LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNzcsIDg1LCA3NiwgODQsIDczLCAKKyAgICA4MCwgNzYsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIDIwNiwgNzcsIDg1LCA3NiwgODQsIDczLCA4MCwgNzYsIDE5NywgNzcsIAorICAgIDg1LCA3NiwgODQsIDczLCA3OSwgNjcsIDg1LCA3NiwgNjUsIDIxMCwgNzcsIDg1LCA3NiwgODQsIDczLCA3NywgNjUsIDgwLCAKKyAgICAxMjgsIDc3LCA4NSwgNzYsIDg0LCAyMDEsIDc3LCA4NSwgNzUsIDgwLCA3MiwgODIsIDY5LCA3OCwgNzEsIDEyOCwgNzcsIAorICAgIDg1LCA3MywgNzgsIDEyOCwgNzcsIDg1LCA3MSwgODMsIDEyOCwgNzcsIDg1LCA3MSwgMTI4LCA3NywgODUsIDE5OSwgNzcsIAorICAgIDg1LCA2OSwgMTI4LCA3NywgODUsIDY3LCA3MiwgMTI4LCA3NywgODUsIDY3LCAyMDAsIDc3LCA4NSwgNjcsIDY1LCA2NSwgCisgICAgNjgsIDEyOCwgNzcsIDg1LCA2NSwgNzgsIDEyOCwgNzcsIDg1LCA2NSwgNjksIDEyOCwgNzcsIDg1LCA0NSwgNzEsIDY1LCAKKyAgICA2NSwgNzIsIDc2LCA2NSwgMTkzLCA3NywgMjEzLCA3NywgODMsIDEyOCwgNzcsIDgwLCA2NSwgMTI4LCA3NywgNzksIDg5LCAKKyAgICA2NSwgNzMsIDEyOCwgNzcsIDc5LCA4OCwgMTI4LCA3NywgNzksIDg2LCA3MywgMTk3LCA3NywgNzksIDg2LCA2OSwgMTk2LCAKKyAgICA3NywgNzksIDg1LCA4NCwgNzIsIDEyOCwgNzcsIDc5LCA4NSwgODQsIDIwMCwgNzcsIDc5LCA4NSwgODMsIDY5LCAxMjgsIAorICAgIDc3LCA3OSwgODUsIDgzLCAxOTcsIDc3LCA3OSwgODUsIDc4LCA4NCwgNjUsIDczLCA3OCwgODMsIDEyOCwgNzcsIDc5LCA4NSwgCisgICAgNzgsIDg0LCA2NSwgNzMsIDc4LCAxMjgsIDc3LCA3OSwgODUsIDc4LCA4NCwgNjUsIDczLCAyMDYsIDc3LCA3OSwgODUsIDc4LCAKKyAgICAyMTIsIDc3LCA3OSwgODUsIDc4LCA2OCwgMTI4LCA3NywgNzksIDg1LCA3OCwgMTk2LCA3NywgNzksIDg0LCA3MiwgNjksIAorICAgIDgyLCAxMjgsIDc3LCA3OSwgODQsIDEyOCwgNzcsIDc5LCA4MiwgODQsIDg1LCA4NSwgNzcsIDEyOCwgNzcsIDc5LCA4MiwgCisgICAgODQsIDY1LCA4MiwgMTI4LCA3NywgNzksIDgyLCA4MCwgNzIsIDc5LCA3NiwgNzksIDcxLCA3MywgNjcsIDY1LCAyMDQsIDc3LCAKKyAgICA3OSwgODIsIDc4LCA3MywgNzgsIDcxLCAxMjgsIDc3LCA3OSwgODAsIDEyOCwgNzcsIDc5LCA3OSwgODMsIDY5LCA0NSwgNjcsIAorICAgIDgyLCA2OSwgMTk3LCA3NywgNzksIDc5LCA3OCwgMTI4LCA3NywgNzksIDc5LCAyMDYsIDc3LCA3OSwgNzksIDc3LCA4MCwgCisgICAgODUsIDgxLCAxMjgsIDc3LCA3OSwgNzksIDc3LCA2OSwgODUsIDg0LCAxMjgsIDc3LCA3OSwgNzksIDEyOCwgNzcsIDc5LCAKKyAgICA3OCwgODQsIDczLCA2OSwgNjksIDc4LCAxMjgsIDc3LCA3OSwgNzgsIDg0LCA3MiwgMTI4LCA3NywgNzksIDc4LCA4NCwgCisgICAgMjAwLCA3NywgNzksIDc4LCA4MywgODQsIDY5LCA4MiwgMTI4LCA3NywgNzksIDc4LCA3OSwgODMsIDg0LCA2NSwgNjYsIDc2LCAKKyAgICAxOTcsIDc3LCA3OSwgNzgsIDc5LCA4MywgODAsIDY1LCA2NywgMTk3LCA3NywgNzksIDc4LCA3OSwgODIsIDY1LCA3MywgNzYsIAorICAgIDEyOCwgNzcsIDc5LCA3OCwgNzksIDcxLCA4MiwgNjUsIDgwLCAyMDAsIDc3LCA3OSwgNzgsIDc5LCA3MSwgODIsIDY1LCA3NywgCisgICAgNzcsIDc5LCAyMTEsIDc3LCA3OSwgNzgsIDc5LCA3MSwgODIsIDY1LCAyMDUsIDc3LCA3OSwgNzgsIDc5LCA3MCwgNzksIDc4LCAKKyAgICA3MywgNjUsIDgzLCAxMjgsIDc3LCA3OSwgNzgsIDc5LCA2NywgODUsIDc2LCA2NSwgMjEwLCA3NywgNzksIDc4LCA3NSwgNjksIAorICAgIDg5LCAxMjgsIDc3LCA3OSwgNzgsIDc1LCA2OSwgMjE3LCA3NywgNzksIDc4LCA3MywgMTI4LCA3NywgNzksIDc4LCA3MSwgCisgICAgNzUsIDY5LCA4NSwgNjUsIDY5LCA4MSwgMTI4LCA3NywgNzksIDc4LCA2OSwgMjE3LCA3NywgNzksIDc4LCAxMjgsIDc3LCAKKyAgICA3OSwgMjA2LCA3NywgNzksIDc2LCAxMjgsIDc3LCA3OSwgNzIsIDY1LCA3NywgNzcsIDY1LCAxOTYsIDc3LCA3OSwgNjgsIAorICAgIDg1LCA3NiwgMjA3LCA3NywgNzksIDY4LCA2OSwgODMsIDg0LCA4OSwgMTI4LCA3NywgNzksIDY4LCA2OSwgNzYsIDgzLCAKKyAgICAxMjgsIDc3LCA3OSwgNjgsIDY5LCA3NiwgMTI4LCA3NywgNzksIDY4LCA2OSwgMTI4LCA3NywgNzksIDY2LCA3MywgNzYsIAorICAgIDE5NywgNzcsIDc5LCA2NSwgMTI4LCA3NywgMjA3LCA3NywgNzgsIDg5LCA2NSwgMjA1LCA3NywgNzgsIDY1LCA4MywgMTI4LCAKKyAgICA3NywgNzcsIDEyOCwgNzcsIDIwNSwgNzcsIDc2LCA2NSwgMTI4LCA3NywgNzYsIDEyOCwgNzcsIDc1LCA4MCwgNjUsIDgyLCAKKyAgICA2NSwgMjA5LCA3NywgNzMsIDg4LCAxMjgsIDc3LCA3MywgODQsIDEyOCwgNzcsIDczLCAyMTIsIDc3LCA3MywgODMsIDgyLCAKKyAgICA2NSwgMTI4LCA3NywgNzMsIDgyLCA3MywgNjYsIDY1LCA2NSwgODIsIDg1LCAxMjgsIDc3LCA3MywgODIsIDczLCAxMjgsIAorICAgIDc3LCA3MywgODIsIDY5LCA2OCwgMTI4LCA3NywgNzMsIDgwLCAxMjgsIDc3LCA3MywgNzgsIDg5LCAxMjgsIDc3LCA3MywgCisgICAgNzgsIDg1LCA4MywgNDUsIDc5LCA4MiwgNDUsIDgwLCA3NiwgODUsIDIxMSwgNzcsIDczLCA3OCwgODUsIDgzLCAxMjgsIDc3LCAKKyAgICA3MywgNzgsIDczLCA4MywgODQsIDY5LCA4MiwgMTI4LCA3NywgNzMsIDc4LCA3MywgNzcsIDY1LCAxMjgsIDc3LCA3MywgNzgsIAorICAgIDczLCA2OCwgNzMsIDgzLCA2NywgMTI4LCA3NywgNzMsIDc4LCA3MywgNjYsIDg1LCA4MywgMTI4LCA3NywgNzMsIDc3LCA2OSwgCisgICAgMTI4LCA3NywgNzMsIDc3LCAxMjgsIDc3LCA3MywgNzYsIDc2LCA3MywgNzksIDc4LCAyMTEsIDc3LCA3MywgNzYsIDc2LCAKKyAgICA2OSwgODQsIDEyOCwgNzcsIDczLCA3NiwgNzYsIDE5NywgNzcsIDczLCA3NiwgMjA0LCA3NywgNzMsIDc2LCA3NSwgMjE3LCAKKyAgICA3NywgNzMsIDc2LCAxMjgsIDc3LCA3MywgNzUsIDg1LCA4MiwgNzksIDc4LCAxMjgsIDc3LCA3MywgNzUsIDgyLCA3OSwgCisgICAgMjA2LCA3NywgNzMsIDc1LCA4MiwgNzMsIDEyOCwgNzcsIDczLCA3MywgNzgsIDEyOCwgNzcsIDczLCA3MywgMTI4LCA3NywgCisgICAgNzMsIDE5OSwgNzcsIDczLCA2OSwgODgsIDEyOCwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgODQsIDczLCA3NSwgNjksIDg1LCAKKyAgICA4NCwgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA4MywgODMsIDY1LCA3OCwgNzEsIDgzLCA3MywgNzksIDgzLCAxMjgsIAorICAgIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgNzgsIDczLCA2OSwgODUsIDc4LCAxMjgsIDc3LCAKKyAgICA3MywgNjksIDg1LCA3NywgNDUsIDgyLCA3MywgNjksIDg1LCA3NiwgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA4MCwgCisgICAgNzMsIDY5LCA4NSwgODAsIDQ1LCA4MywgNzMsIDc5LCA4MywgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA4MCwgNzMsIAorICAgIDY5LCA4NSwgODAsIDEyOCwgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgODAsIDY1LCA3OCwgODMsIDczLCA3OSwgODMsIDEyOCwgCisgICAgNzcsIDczLCA2OSwgODUsIDc3LCA0NSwgNzgsIDczLCA2OSwgODUsIDc4LCAxMjgsIDc3LCA3MywgNjksIDg1LCA3NywgNDUsIAorICAgIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDQ1LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCAKKyAgICA3MiwgMTI4LCA3NywgNzMsIDY5LCA4NSwgMjA1LCA3NywgNzMsIDY5LCA4MCwgMTI4LCA3NywgNzMsIDY5LCA2OSwgMTI4LCAKKyAgICA3NywgNzMsIDY5LCAxMjgsIDc3LCA3MywgNjgsIDc2LCA3MywgNzgsIDE5NywgNzcsIDczLCA2OCwgNjgsIDc2LCA2OSwgNDUsIAorICAgIDg3LCA2OSwgNzYsIDgzLCAyMDAsIDc3LCA3MywgNjgsIDY4LCA3NiwgMTk3LCA3NywgNzMsIDE5NiwgNzcsIDczLCA2NywgCisgICAgODIsIDc5LCA4MywgNjcsIDc5LCA4MCwgNjksIDEyOCwgNzcsIDczLCA2NywgODIsIDc5LCA4MCwgNzIsIDc5LCA3OCwgNjksIAorICAgIDEyOCwgNzcsIDczLCA2NywgODIsIDIwNywgNzcsIDcyLCA5MCwgMTI4LCA3NywgNzIsIDEyOCwgNzcsIDcxLCA4NSwgODgsIAorICAgIDEyOCwgNzcsIDcxLCA4NSwgODQsIDEyOCwgNzcsIDcxLCA4NSwgODIsIDg4LCAxMjgsIDc3LCA3MSwgODUsIDgyLCAxMjgsIAorICAgIDc3LCA3MSwgODUsIDgwLCAxMjgsIDc3LCA3MSwgODUsIDc5LCA4OCwgMTI4LCA3NywgNzEsIDg1LCA3OSwgODAsIDEyOCwgCisgICAgNzcsIDcxLCA4NSwgNzksIDEyOCwgNzcsIDcxLCA4NSwgMTI4LCA3NywgNzEsIDc5LCA4OCwgMTI4LCA3NywgNzEsIDc5LCAKKyAgICA4NCwgMTI4LCA3NywgNzEsIDc5LCA4MCwgMTI4LCA3NywgNzEsIDc5LCAxMjgsIDc3LCA3MSwgMjA3LCA3NywgNzEsIDczLCAKKyAgICA2OSwgODgsIDEyOCwgNzcsIDcxLCA3MywgNjksIDEyOCwgNzcsIDcxLCA2OSwgODgsIDEyOCwgNzcsIDcxLCA2OSwgODAsIAorICAgIDEyOCwgNzcsIDcxLCA2OSwgMTI4LCA3NywgNzEsIDY2LCA4NSwgMTI4LCA3NywgNzEsIDY2LCA3OSwgNzksIDEyOCwgNzcsIAorICAgIDcxLCA2NiwgNzksIDcwLCA4NSwgNzcsIDEyOCwgNzcsIDcxLCA2NiwgNzksIDEyOCwgNzcsIDcxLCA2NiwgNzMsIDEyOCwgCisgICAgNzcsIDcxLCA2NiwgNjksIDg1LCA3OCwgMTI4LCA3NywgNzEsIDY2LCA2OSwgNzgsIDEyOCwgNzcsIDcxLCA2NiwgNjksIDY5LCAKKyAgICAxMjgsIDc3LCA3MSwgNjYsIDY5LCAxMjgsIDc3LCA3MSwgNjYsIDY1LCA4MywgNjUsIDgxLCAxMjgsIDc3LCA3MSwgNjYsIAorICAgIDY1LCA4MywgNjUsIDEyOCwgNzcsIDcxLCA2NSwgODgsIDEyOCwgNzcsIDcxLCA2NSwgODQsIDEyOCwgNzcsIDcxLCA2NSwgCisgICAgODAsIDEyOCwgNzcsIDcxLCA2NSwgMTI4LCA3NywgNzEsIDEyOCwgNzcsIDcwLCA3OSwgNzgsIDEyOCwgNzcsIDcwLCA3OSwgCisgICAgMjA2LCA3NywgNzAsIDc5LCAxMjgsIDc3LCA3MCwgNzMsIDg5LCA2NSwgODEsIDEyOCwgNzcsIDcwLCA3MywgNjksIDY5LCAKKyAgICAxMjgsIDc3LCA3MCwgNjksIDg1LCA4NCwgMTI4LCA3NywgNzAsIDY5LCA4NSwgODEsIDEyOCwgNzcsIDcwLCA2OSwgODUsIAorICAgIDY1LCA2OSwgMTI4LCA3NywgNzAsIDY1LCA2NSwgMTI4LCA3NywgNjksIDkwLCA5MCwgNzksIDEyOCwgNzcsIDY5LCA4OCwgCisgICAgMTI4LCA3NywgNjksIDg1LCAyMTIsIDc3LCA2OSwgODUsIDgxLCAxMjgsIDc3LCA2OSwgODUsIDc4LCA3NCwgNzksIDc3LCAKKyAgICA3OCwgNjgsIDY5LCA4NSwgODEsIDEyOCwgNzcsIDY5LCA4NSwgNzgsIDEyOCwgNzcsIDY5LCA4NCwgODIsIDc5LCAxMjgsIAorICAgIDc3LCA2OSwgODQsIDgyLCA3MywgNjcsIDY1LCAyMDQsIDc3LCA2OSwgODQsIDgyLCA3MywgNjUsIDEyOCwgNzcsIDY5LCA4NCwgCisgICAgODIsIDY5LCA4NCwgNjksIDIxMSwgNzcsIDY5LCA4NCwgNzksIDY2LCA2OSwgNzYsIDg1LCA4MywgMTI4LCA3NywgNjksIDg0LCAKKyAgICA2OSwgNzUsIDEyOCwgNzcsIDY5LCA4NCwgNjksIDcxLCAxMjgsIDc3LCA2OSwgODQsIDY1LCA3NiwgMTI4LCA3NywgNjksIAorICAgIDg0LCAxOTMsIDc3LCA2OSwgODMsIDgzLCA2OSwgNzgsIDczLCA2NSwgMjA2LCA3NywgNjksIDgzLCA3OSwgMTI4LCA3NywgCisgICAgNjksIDgzLCA3MywgMTI4LCA3NywgNjksIDgzLCA3MiwgMTI4LCA3NywgNjksIDgyLCA3NSwgNzIsIDY1LCAxMjgsIDc3LCAKKyAgICA2OSwgODIsIDc1LCA3MiwgMTkzLCA3NywgNjksIDgyLCA3MywgNjgsIDczLCA2NSwgNzgsIDgzLCAxMjgsIDc3LCA2OSwgODIsIAorICAgIDczLCAxMjgsIDc3LCA2OSwgODIsIDcxLCA2OSwgMTI4LCA3NywgNjksIDgyLCA2NywgODUsIDgyLCA4OSwgMTI4LCA3NywgCisgICAgNjksIDgyLCA2NywgODUsIDgyLCAyMTcsIDc3LCA2OSwgNzgsIDY4LCA4NSwgODQsIDEyOCwgNzcsIDY5LCA3OCwgMTI4LCAKKyAgICA3NywgNjksIDc3LCA3OSwgMTI4LCA3NywgNjksIDc3LCA2NiwgNjksIDgyLCA4MywgNzIsIDczLCA4MCwgMTI4LCA3NywgNjksIAorICAgIDc3LCA2NiwgNjksIDgyLCAxMjgsIDc3LCA2OSwgNzcsIDY2LCA2OSwgMjEwLCA3NywgNjksIDc3LCA0NSwgODEsIDc5LCA4MCwgCisgICAgNzIsIDEyOCwgNzcsIDY5LCA3NywgMTI4LCA3NywgNjksIDIwNSwgNzcsIDY5LCA3NiwgNzksIDY4LCA3MywgMTk1LCA3NywgCisgICAgNjksIDc2LCA3MywgNzUsIDEyOCwgNzcsIDY5LCA3MywgOTAsIDczLCAxMjgsIDc3LCA2OSwgNzEsIDY1LCA4NCwgNzksIDc4LCAKKyAgICAxMjgsIDc3LCA2OSwgNzEsIDY1LCA4MCwgNzIsIDc5LCA3OCwgNjksIDEyOCwgNzcsIDY5LCA3MSwgNjUsIDc2LCA3MywgCisgICAgMTI4LCA3NywgNjksIDY5LCA4NCwgNzksIDgyLCA4NSwgMTI4LCA3NywgNjksIDY5LCA4NCwgNjksIDIwMSwgNzcsIDY5LCAKKyAgICA2OSwgODQsIDEyOCwgNzcsIDY5LCA2OSwgNzcsIDg1LCAxMjgsIDc3LCA2OSwgNjksIDc3LCAxMjgsIDc3LCA2OSwgNjksIAorICAgIDY5LCA2OSwgMTI4LCA3NywgNjksIDY5LCAxMjgsIDc3LCA2OSwgNjgsIDczLCA4NSwgNzcsIDEyOCwgNzcsIDY5LCA2OCwgCisgICAgNzMsIDg1LCAyMDUsIDc3LCA2OSwgNjgsIDczLCA2NywgNzMsIDc4LCA2OSwgMTI4LCA3NywgNjksIDY4LCA3MywgNjcsIDY1LCAKKyAgICAyMDQsIDc3LCA2OSwgNjUsIDg0LCAxMjgsIDc3LCA2OSwgNjUsIDIxMiwgNzcsIDY5LCA2NSwgODMsIDg1LCA4MiwgNjksIAorICAgIDE5NiwgNzcsIDY5LCA2NSwgODMsIDg1LCA4MiwgNjksIDEyOCwgNzcsIDY5LCA2NSwgODMsIDg1LCA4MiwgMTk3LCA3NywgCisgICAgNjgsIDg1LCAyMDYsIDc3LCA2NywgNzIsIDIxMywgNzcsIDY3LCA3MiwgNjUsIDIwNiwgNzcsIDY2LCA4NSwgNzksIDgxLCAKKyAgICAxMjgsIDc3LCA2NiwgODUsIDc5LCAxMjgsIDc3LCA2NiwgODUsIDY5LCAxMjgsIDc3LCA2NiwgODUsIDY1LCA2OSwgNzcsIAorICAgIDEyOCwgNzcsIDY2LCA4NSwgNjUsIDY5LCAxMjgsIDc3LCA2NiwgNzksIDc5LCAxMjgsIDc3LCA2NiwgNzksIDEyOCwgNzcsIAorICAgIDY2LCA3MywgODQsIDEyOCwgNzcsIDY2LCA3MywgMjEyLCA3NywgNjYsIDczLCA4MiwgNzMsIDY5LCA2OSwgNzgsIDEyOCwgCisgICAgNzcsIDY2LCA3MywgMTI4LCA3NywgNjYsIDY5LCA4NSwgODgsIDEyOCwgNzcsIDY2LCA2OSwgODUsIDgyLCA3MywgMTI4LCAKKyAgICA3NywgNjYsIDY5LCA4NSwgNzcsIDEyOCwgNzcsIDY2LCA2OSwgODIsIDY1LCA2OSwgMTI4LCA3NywgNjYsIDY5LCA3OCwgCisgICAgMTI4LCA3NywgNjYsIDY5LCA2OSwgNzUsIDY5LCA2OSwgODQsIDEyOCwgNzcsIDY2LCA2OSwgNjksIDEyOCwgNzcsIDY2LCAKKyAgICA2OSwgMTI4LCA3NywgNjYsIDY1LCA4MSwgMTI4LCA3NywgNjYsIDY1LCA3OCwgODksIDczLCAxMjgsIDc3LCA2NiwgNjUsIAorICAgIDY1LCA4MiwgNjUsIDY5LCAxMjgsIDc3LCA2NiwgNjUsIDY1LCA3NSwgNjksIDg0LCAxMjgsIDc3LCA2NiwgNjUsIDY1LCAKKyAgICAxMjgsIDc3LCA2NiwgNjUsIDE5MywgNzcsIDY2LCAxOTMsIDc3LCA2NiwgNTIsIDEyOCwgNzcsIDY2LCA1MSwgMTI4LCA3NywgCisgICAgNjYsIDUwLCAxMjgsIDc3LCA2NiwgMTI4LCA3NywgMTk0LCA3NywgNjUsIDg5LCA2OSwgMjAzLCA3NywgNjUsIDg5LCA2NSwgCisgICAgNzgsIDc4LCA2NSwgMTI4LCA3NywgNjUsIDg5LCAxMjgsIDc3LCA2NSwgODgsIDczLCA3NywgNjUsIDEyOCwgNzcsIDY1LCAKKyAgICA4OCwgMTI4LCA3NywgNjUsIDg1LCAxMjgsIDc3LCA2NSwgODQsIDg0LCA3OSwgNjcsIDc1LCAxMjgsIDc3LCA2NSwgODQsIAorICAgIDgyLCA3MywgODgsIDEyOCwgNzcsIDY1LCA4NCwgNjksIDgyLCA3MywgNjUsIDc2LCA4MywgMTI4LCA3NywgNjUsIDg0LCAKICAgICAxMjgsIDc3LCA2NSwgODMsIDIxMywgNzcsIDY1LCA4MywgODMsIDczLCA3OCwgNzEsIDEyOCwgNzcsIDY1LCA4MywgODMsIAogICAgIDY1LCA3MSwgNjksIDEyOCwgNzcsIDY1LCA4MywgNzksIDgyLCAxOTMsIDc3LCA2NSwgODMsIDc1LCAxMjgsIDc3LCA2NSwgCiAgICAgODMsIDcyLCA3MCwgNjUsIDY1LCA4NCwgMTI4LCA3NywgNjUsIDgzLCA3MiwgNTAsIDEyOCwgNzcsIDY1LCA4MywgNjcsIDg1LCAKQEAgLTE5MjcsMTM3ICsxOTQxLDE0MiBAQAogICAgIDY1LCA3MywgNzYsIDczLCA3OCwgMTk5LCA3NywgNjUsIDc4LCA2OCwgNjUsIDczLCAxOTUsIDc3LCA2NSwgNzgsIDY3LCA3MiwgCiAgICAgMjEzLCA3NywgNjUsIDc4LCA2NSwgNjcsIDc2LCA2OSwgODMsIDEyOCwgNzcsIDY1LCA3NiwgODQsIDY5LCA4MywgMTk3LCAKICAgICA3NywgNjUsIDc2LCA2OSwgNjksIDgyLCA3MywgMTI4LCA3NywgNjUsIDc2LCA2OSwgMTI4LCA3NywgNjUsIDc2LCAxOTcsIAotICAgIDc3LCA2NSwgNzYsIDY1LCA3NSwgNzksIDIwNiwgNzcsIDY1LCA3NSwgODMsIDg1LCA4MiwgNjUsIDEyOCwgNzcsIDY1LCA3MywgCi0gICAgOTAsIDY5LCAxMjgsIDc3LCA2NSwgNzMsIDg5LCA2NSwgNzcsIDc5LCA3NSwgMTI4LCA3NywgNjUsIDczLCA4NCwgNjUsIDczLCAKLSAgICA3NSwgNzIsIDg1LCAxMjgsIDc3LCA2NSwgNzMsIDgyLCA4NSwgMTI4LCA3NywgNjUsIDczLCA3NywgODUsIDY1LCA3OCwgCi0gICAgMTI4LCA3NywgNjUsIDczLCA3NywgNjUsIDc2LCA2NSwgNzMsIDEyOCwgNzcsIDY1LCA3MywgNzYsIDY2LCA3OSwgMjE2LCAKLSAgICA3NywgNjUsIDczLCA3NSwgODUsIDgyLCA3OSwgMTI4LCA3NywgNjUsIDczLCA2OCwgNjksIDc4LCAxMjgsIDc3LCA2NSwgNzIsIAotICAgIDc0LCA3OSwgNzgsIDE5OSwgNzcsIDY1LCA3MiwgNzIsIDY1LCAxMjgsIDc3LCA2NSwgNzIsIDY1LCA4MCwgODIsIDY1LCA3OCwgCi0gICAgNjUsIDEyOCwgNzcsIDY1LCA3MiwgNjUsIDgwLCA2NSwgNzUsIDcyLCAxMjgsIDc3LCA2NSwgNzIsIDY1LCA2NSwgODAsIDgyLCAKLSAgICA2NSwgNjUsIDc4LCAxOTMsIDc3LCA2NSwgNzIsIDEyOCwgNzcsIDY1LCA3MSwgNzgsIDczLCA3MCwgODksIDczLCA3OCwgCi0gICAgMTk5LCA3NywgNjUsIDY5LCA4MywgNzMsIDEyOCwgNzcsIDY1LCA2OSwgNzgsIDg5LCA3MywgMTI4LCA3NywgNjUsIDY5LCAKLSAgICA3OCwgNzQsIDY5LCA4NCwgMTI4LCA3NywgNjUsIDY5LCA3NywgODYsIDY5LCA4NSwgODgsIDEyOCwgNzcsIDY1LCA2OSwgNzcsIAotICAgIDc1LCA4MCwgNjksIDc4LCAxMjgsIDc3LCA2NSwgNjksIDc3LCA3MSwgNjYsIDczLCA2OSwgNjksIDEyOCwgNzcsIDY1LCA2OSwgCi0gICAgNzcsIDY2LCA3MSwgNjYsIDczLCA2OSwgNjksIDEyOCwgNzcsIDY1LCA2OSwgNzcsIDY2LCA2NSwgMTI4LCA3NywgNjUsIDY5LCAKLSAgICA3NywgMTI4LCA3NywgNjUsIDY5LCA3NiwgNjksIDY5LCAxMjgsIDc3LCA2NSwgNjksIDc1LCA2OSwgODUsIDgwLCAxMjgsIAotICAgIDc3LCA2NSwgNjgsIDg5LCA2NSwgMTI4LCA3NywgNjUsIDY4LCA4NSwgMTI4LCA3NywgNjUsIDY4LCA2OCwgNjUsIDIwMCwgCi0gICAgNzcsIDY1LCA2OCwgNjgsIDY1LCAxMjgsIDc3LCA2NSwgNjgsIDY4LCAxOTMsIDc3LCA2NSwgNjcsIDgyLCA3OSwgNzgsIDQ1LCAKLSAgICA3MSwgODIsIDY1LCA4NiwgNjksIDEyOCwgNzcsIDY1LCA2NywgODIsIDc5LCA3OCwgNDUsIDY2LCA4MiwgNjksIDg2LCA2OSwgCi0gICAgMTI4LCA3NywgNjUsIDY3LCA4MiwgNzksIDc4LCA0NSwgNjUsIDY3LCA4NSwgODQsIDY5LCAxMjgsIDc3LCA2NSwgNjcsIDgyLCAKLSAgICA3OSwgNzgsIDEyOCwgNzcsIDY1LCA2NywgODIsIDc5LCAyMDYsIDc3LCA2NSwgNjcsIDcyLCA3MywgNzgsIDY5LCAxMjgsIAotICAgIDc3LCA2NSwgNjUsIDczLCAxMjgsIDc3LCA2NSwgNjUsIDEyOCwgNzcsIDY1LCA1MCwgMTI4LCA3NywgNDgsIDUyLCA1MiwgCi0gICAgMTI4LCA3NywgNDgsIDUyLCA1MSwgMTI4LCA3NywgNDgsIDUyLCA1MCwgMTI4LCA3NywgNDgsIDUyLCA0OSwgMTI4LCA3NywgCi0gICAgNDgsIDUyLCA0OCwgNjUsIDEyOCwgNzcsIDQ4LCA1MiwgNDgsIDEyOCwgNzcsIDQ4LCA1MSwgNTcsIDEyOCwgNzcsIDQ4LCAKLSAgICA1MSwgNTYsIDEyOCwgNzcsIDQ4LCA1MSwgNTUsIDEyOCwgNzcsIDQ4LCA1MSwgNTQsIDEyOCwgNzcsIDQ4LCA1MSwgNTMsIAotICAgIDEyOCwgNzcsIDQ4LCA1MSwgNTIsIDEyOCwgNzcsIDQ4LCA1MSwgNTEsIDY2LCAxMjgsIDc3LCA0OCwgNTEsIDUxLCA2NSwgCi0gICAgMTI4LCA3NywgNDgsIDUxLCA1MSwgMTI4LCA3NywgNDgsIDUxLCA1MCwgMTI4LCA3NywgNDgsIDUxLCA0OSwgNjUsIDEyOCwgCi0gICAgNzcsIDQ4LCA1MSwgNDksIDEyOCwgNzcsIDQ4LCA1MSwgNDgsIDEyOCwgNzcsIDQ4LCA1MCwgNTcsIDEyOCwgNzcsIDQ4LCAKLSAgICA1MCwgNTYsIDY1LCAxMjgsIDc3LCA0OCwgNTAsIDU2LCAxMjgsIDc3LCA0OCwgNTAsIDU1LCAxMjgsIDc3LCA0OCwgNTAsIAotICAgIDU0LCAxMjgsIDc3LCA0OCwgNTAsIDUzLCAxMjgsIDc3LCA0OCwgNTAsIDUyLCA2NSwgMTI4LCA3NywgNDgsIDUwLCA1MiwgCi0gICAgMTI4LCA3NywgNDgsIDUwLCA1MSwgMTI4LCA3NywgNDgsIDUwLCA1MCwgNjUsIDEyOCwgNzcsIDQ4LCA1MCwgNTAsIDEyOCwgCi0gICAgNzcsIDQ4LCA1MCwgNDksIDEyOCwgNzcsIDQ4LCA1MCwgNDgsIDEyOCwgNzcsIDQ4LCA0OSwgNTcsIDEyOCwgNzcsIDQ4LCAKLSAgICA0OSwgNTYsIDEyOCwgNzcsIDQ4LCA0OSwgNTUsIDY1LCAxMjgsIDc3LCA0OCwgNDksIDU1LCAxMjgsIDc3LCA0OCwgNDksIAotICAgIDU0LCA2NSwgMTI4LCA3NywgNDgsIDQ5LCA1NCwgMTI4LCA3NywgNDgsIDQ5LCA1MywgNjUsIDEyOCwgNzcsIDQ4LCA0OSwgCi0gICAgNTMsIDEyOCwgNzcsIDQ4LCA0OSwgNTIsIDEyOCwgNzcsIDQ4LCA0OSwgNTEsIDEyOCwgNzcsIDQ4LCA0OSwgNTAsIDcyLCAKLSAgICAxMjgsIDc3LCA0OCwgNDksIDUwLCA3MSwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgNzAsIDEyOCwgNzcsIDQ4LCA0OSwgNTAsIAotICAgIDY5LCAxMjgsIDc3LCA0OCwgNDksIDUwLCA2OCwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgNjcsIDEyOCwgNzcsIDQ4LCA0OSwgCi0gICAgNTAsIDY2LCAxMjgsIDc3LCA0OCwgNDksIDUwLCA2NSwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgMTI4LCA3NywgNDgsIDQ5LCAKLSAgICA0OSwgMTI4LCA3NywgNDgsIDQ5LCA0OCwgNjUsIDEyOCwgNzcsIDQ4LCA0OSwgNDgsIDEyOCwgNzcsIDQ4LCA0OCwgNTcsIAotICAgIDEyOCwgNzcsIDQ4LCA0OCwgNTYsIDEyOCwgNzcsIDQ4LCA0OCwgNTUsIDEyOCwgNzcsIDQ4LCA0OCwgNTQsIDEyOCwgNzcsIAotICAgIDQ4LCA0OCwgNTMsIDEyOCwgNzcsIDQ4LCA0OCwgNTIsIDEyOCwgNzcsIDQ4LCA0OCwgNTEsIDY1LCAxMjgsIDc3LCA0OCwgCi0gICAgNDgsIDUxLCAxMjgsIDc3LCA0OCwgNDgsIDUwLCAxMjgsIDc3LCA0OCwgNDgsIDQ5LCA2NiwgMTI4LCA3NywgNDgsIDQ4LCAKLSAgICA0OSwgNjUsIDEyOCwgNzcsIDQ4LCA0OCwgNDksIDEyOCwgNzYsIDIxOCwgNzYsIDg5LCA4OSwgMTI4LCA3NiwgODksIDg4LCAKLSAgICAxMjgsIDc2LCA4OSwgODQsIDEyOCwgNzYsIDg5LCA4MiwgODgsIDEyOCwgNzYsIDg5LCA4MiwgMTI4LCA3NiwgODksIDgwLCAKLSAgICAxMjgsIDc2LCA4OSwgNjgsIDczLCA2NSwgMjA2LCA3NiwgODksIDY3LCA3MywgNjUsIDIwNiwgNzYsIDg4LCAxMjgsIDc2LCAKLSAgICA4NywgNzksIDc5LCAxMjgsIDc2LCA4NywgNzksIDEyOCwgNzYsIDg3LCA3MywgNzMsIDEyOCwgNzYsIDg3LCA3MywgMTI4LCAKLSAgICA3NiwgODcsIDY5LCAxMjgsIDc2LCA4NywgNjUsIDY1LCAxMjgsIDc2LCA4NywgNjUsIDEyOCwgNzYsIDg1LCA4OCwgMTI4LCAKLSAgICA3NiwgODUsIDg0LCAxMjgsIDc2LCA4NSwgODIsIDg4LCAxMjgsIDc2LCA4NSwgODAsIDEyOCwgNzYsIDg1LCA3OSwgODgsIAotICAgIDEyOCwgNzYsIDg1LCA3OSwgODQsIDEyOCwgNzYsIDg1LCA3OSwgODAsIDEyOCwgNzYsIDg1LCA3OSwgMTI4LCA3NiwgODUsIAotICAgIDc4LCA3MSwgODMsIDczLCAxMjgsIDc2LCA4NSwgNzgsIDY1LCA4NCwgMTk3LCA3NiwgODUsIDIwNSwgNzYsIDg1LCA3NiwgCi0gICAgMTI4LCA3NiwgODUsIDczLCA4MywgMTI4LCA3NiwgODUsIDcyLCA4NSwgODIsIDEyOCwgNzYsIDg1LCA3MiwgMTI4LCA3NiwgCi0gICAgODUsIDcxLCA3MSwgNjUsIDcxLCA2OSwgMTI4LCA3NiwgODUsIDcxLCA2NSwgNzYsIDEyOCwgNzYsIDg1LCA3MSwgNjUsIAotICAgIDIwNCwgNzYsIDg1LCA2OSwgMTI4LCA3NiwgODUsIDY1LCA2OSwgODAsIDEyOCwgNzYsIDg1LCA1MSwgMTI4LCA3NiwgODUsIAotICAgIDUwLCAxMjgsIDc2LCA4NSwgMTc4LCA3NiwgNzksIDkwLCA2OSwgNzgsIDcxLCA2OSwgMTI4LCA3NiwgNzksIDkwLCA2OSwgCi0gICAgNzgsIDcxLCAxOTcsIDc2LCA3OSwgODgsIDEyOCwgNzYsIDc5LCA4NywgNjksIDgyLCA2OSwgMTk2LCA3NiwgNzksIDg3LCAKLSAgICA2OSwgMjEwLCA3NiwgNzksIDg3LCA0NSwgMTg1LCA3NiwgNzksIDg2LCAxOTcsIDc2LCA3OSwgODUsIDgyLCA2OSwgMTI4LCAKLSAgICA3NiwgNzksIDg1LCA2OCwgODMsIDgwLCA2OSwgNjUsIDc1LCA2OSwgODIsIDEyOCwgNzYsIDc5LCA4NSwgNjgsIDc2LCAyMTcsIAotICAgIDc2LCA3OSwgODQsIDg1LCA4MywgMTI4LCA3NiwgNzksIDg0LCAxMjgsIDc2LCA3OSwgODIsIDgyLCA4OSwgMTI4LCA3NiwgCi0gICAgNzksIDgyLCA4MiwgNjUsIDczLCA3OCwgNjksIDEyOCwgNzYsIDc5LCA4MSwgMTI4LCA3NiwgNzksIDgwLCAxMjgsIDc2LCAKLSAgICA3OSwgNzksIDg0LCAxMjgsIDc2LCA3OSwgNzksIDgwLCAxMjgsIDc2LCA3OSwgNzksIDc4LCAxMjgsIDc2LCA3OSwgNzksIAotICAgIDIwMywgNzYsIDc5LCA3OSwgMTI4LCA3NiwgNzksIDc4LCA4MywgODUsIDc3LCAxMjgsIDc2LCA3OSwgNzgsIDcxLCA2NSwgCi0gICAgMTI4LCA3NiwgNzksIDc4LCA3MSwgMTkzLCA3NiwgNzksIDc4LCA3MSwgNDUsIDY2LCA4MiwgNjUsIDc4LCA2NywgNzIsIDQ1LCAKLSAgICA4OSwgODIsIDEyOCwgNzYsIDc5LCA3OCwgNzEsIDQ1LCA2NiwgODIsIDY1LCA3OCwgNjcsIDcyLCA0NSwgODMsIDc5LCAyMDQsIAotICAgIDc2LCA3OSwgNzgsIDcxLCA0NSwgNjYsIDgyLCA2NSwgNzgsIDY3LCA3MiwgNDUsIDc5LCA4MywgMjExLCA3NiwgNzksIDc4LCAKLSAgICA3MSwgNDUsIDY2LCA4MiwgNjUsIDc4LCA2NywgNzIsIDQ1LCA3NywgNjUsIDY4LCAyMTAsIDc2LCA3OSwgNzgsIDcxLCA0NSwgCi0gICAgNjYsIDgyLCA2NSwgNzgsIDY3LCA3MiwgNDUsIDcyLCA2NSwgNzEsIDY1LCA3NiwgMjA0LCA3NiwgNzksIDc4LCA3MSwgNDUsIAotICAgIDY2LCA4MiwgNjUsIDc4LCA2NywgNzIsIDQ1LCA2NSwgMjEwLCA3NiwgNzksIDc3LCA3NywgNjUsIDY5LCAxMjgsIDc2LCA3OSwgCi0gICAgNzcsIDEyOCwgNzYsIDc5LCAyMDUsIDc2LCA3OSwgNzYsIDc2LCA3MywgODAsIDc5LCA4MCwgMTI4LCA3NiwgNzksIDc2LCAKLSAgICA3NiwgMTI4LCA3NiwgNzksIDcxLCAyMTAsIDc2LCA3OSwgNzEsIDc5LCA4NCwgODksIDgwLCAxOTcsIDc2LCA3OSwgNzEsIAotICAgIDc5LCA3MSwgODIsIDY1LCAyMDUsIDc2LCA3OSwgNzEsIDEyOCwgNzYsIDc5LCA2OCwgNjksIDgzLCA4NCwgNzksIDc4LCA2OSwgCi0gICAgMTI4LCA3NiwgNzksIDY3LCA3OSwgNzcsIDc5LCA4NCwgNzMsIDg2LCA2OSwgMTI4LCA3NiwgNzksIDY3LCAyMDMsIDc2LCAKLSAgICA3OSwgNjcsIDY1LCA4NCwgNzMsIDg2LCA2OSwgMTI4LCA3NiwgNzksIDY3LCA2NSwgODQsIDczLCA3OSwgMjA2LCA3NiwgNzksIAotICAgIDY1LCAxMjgsIDc2LCA3OCwgMTI4LCA3NiwgNzcsIDEyOCwgNzYsIDc2LCA3NiwgNjUsIDEyOCwgNzYsIDc0LCA4NSwgNjgsIAotICAgIDczLCA3NCwgNjksIDEyOCwgNzYsIDc0LCA2OSwgMTI4LCA3NiwgNzQsIDEyOCwgNzYsIDczLCA4OCwgMTI4LCA3NiwgNzMsIAotICAgIDg3LCA3OCwgMTI4LCA3NiwgNzMsIDg2LCA4MiwgMTk3LCA3NiwgNzMsIDg0LCA4NCwgNzYsIDE5NywgNzYsIDczLCA4NCwgCi0gICAgODQsIDY5LCAyMTAsIDc2LCA3MywgODQsIDgyLCAxOTMsIDc2LCA3MywgODQsIDEyOCwgNzYsIDczLCA4MywgMjEzLCA3NiwgCi0gICAgNzMsIDgyLCAxOTMsIDc2LCA3MywgODEsIDg1LCA3MywgMTk2LCA3NiwgNzMsIDgxLCAxMjgsIDc2LCA3MywgODAsIDgzLCAKLSAgICA4NCwgNzMsIDY3LCA3NSwgMTI4LCA3NiwgNzMsIDc4LCA3NSwgNzMsIDc4LCAxOTksIDc2LCA3MywgNzgsIDIwMywgNzYsIAotICAgIDczLCA3OCwgNzEsIDgzLCA2NSwgMTI4LCA3NiwgNzMsIDc4LCA2OSwgODMsIDEyOCwgNzYsIDczLCA3OCwgNjksIDIxMSwgCi0gICAgNzYsIDczLCA3OCwgNjksIDQ1LCA1NywgMTI4LCA3NiwgNzMsIDc4LCA2OSwgNDUsIDU1LCAxMjgsIDc2LCA3MywgNzgsIDY5LCAKLSAgICA0NSwgNTEsIDEyOCwgNzYsIDczLCA3OCwgNjksIDQ1LCA0OSwgMTI4LCA3NiwgNzMsIDc3LCA3NywgODUsIDUyLCAxMjgsIAotICAgIDc2LCA3MywgNzcsIDc3LCA4NSwgNTAsIDEyOCwgNzYsIDczLCA3NywgNzcsIDg1LCAxMjgsIDc2LCA3MywgNzcsIDc3LCAKLSAgICAyMTMsIDc2LCA3MywgNzcsIDczLCA4NCwgNjksIDE5NiwgNzYsIDczLCA3NywgNzMsIDg0LCA2NSwgODQsIDczLCA3OSwgNzgsIAotICAgIDEyOCwgNzYsIDczLCA3NywgNzMsIDg0LCAxMjgsIDc2LCA3MywgNzcsIDY5LCAxMjgsIDc2LCA3MywgNzYsIDg5LCAxMjgsIAotICAgIDc2LCA3MywgNzYsIDczLCA4NCwgNzIsIDEyOCwgNzYsIDczLCA3NiwgMTI4LCA3NiwgNzMsIDczLCAxMjgsIDc2LCA3MywgCi0gICAgNzEsIDcyLCA4NCwgNzgsIDczLCA3OCwgNzEsIDEyOCwgNzYsIDczLCA3MSwgNzIsIDg0LCA3MiwgNzksIDg1LCA4MywgNjksIAotICAgIDEyOCwgNzYsIDczLCA3MSwgNzIsIDg0LCAxMjgsIDc2LCA3MywgNzAsIDY5LCAxMjgsIDc2LCA3MywgNjksIDg4LCAxMjgsIAotICAgIDc2LCA3MywgNjksIDg0LCAxMjgsIDc2LCA3MywgNjksIDgwLCAxMjgsIDc2LCA3MywgNjksIDY5LCAxMjgsIDc2LCA3MywgCi0gICAgNjksIDEyOCwgNzYsIDczLCA2OCwgMTI4LCA3NiwgNzMsIDY2LCA4MiwgNjUsIDEyOCwgNzYsIDczLCA2NiwgNjksIDgyLCAKLSAgICA4NCwgODksIDEyOCwgNzYsIDczLCA2NSwgNjYsIDczLCA3NiwgNzMsIDg0LCAyMTcsIDc2LCA3MiwgNzMsIDczLCAxMjgsIAotICAgIDc2LCA3MiwgNjUsIDg2LCA3MywgODksIDY1LCA3OCwgNzMsIDEyOCwgNzYsIDcyLCA2NSwgMTk5LCA3NiwgNzIsIDY1LCA2NSwgCi0gICAgMTI4LCA3NiwgNzIsIDEyOCwgNzYsIDY5LCA5MCwgNzIsIDEyOCwgNzYsIDY5LCA4OCwgMTI4LCA3NiwgNjksIDg2LCA2OSwgCi0gICAgMjA0LCA3NiwgNjksIDg1LCA3NywgMTI4LCA3NiwgNjksIDg1LCA2NSwgNjksIDgwLCAxMjgsIDc2LCA2OSwgODUsIDY1LCAKLSAgICA2OSwgNzcsIDEyOCwgNzYsIDY5LCA4NCwgODQsIDY5LCA4MiwgODMsIDEyOCwgNzYsIDY5LCA4NCwgODQsIDY5LCA4MiwgCi0gICAgMTI4LCA3NiwgNjksIDIxMiwgNzYsIDY5LCA4MywgODMsIDY5LCAyMTAsIDc2LCA2OSwgODMsIDgzLCA0NSwgODQsIDcyLCAKLSAgICA2NSwgNzgsIDEyOCwgNzYsIDY5LCA4MywgODMsIDQ1LCA4NCwgNzIsIDY1LCAyMDYsIDc2LCA2OSwgODAsIDEyOCwgNzYsIAotICAgIDY5LCA3OSwgODAsIDY1LCA4MiwgNjgsIDEyOCwgNzYsIDY5LCA3OSwgMTI4LCA3NiwgNjksIDc4LCA4NCwgNzMsIDY3LCA4NSwgCi0gICAgNzYsIDY1LCAyMTAsIDc2LCA2OSwgNzgsIDczLCA4MywgMTI4LCA3NiwgNjksIDc4LCA3MSwgODQsIDcyLCA2OSwgNzgsIDY5LCAKLSAgICA4MiwgMTI4LCA3NiwgNjksIDc4LCA3MSwgODQsIDIwMCwgNzYsIDY5LCA3OCwgNzEsIDY1LCAxMjgsIDc2LCA2OSwgNzgsIAotICAgIDcxLCAxOTMsIDc2LCA2OSwgNzcsIDc5LCA3OCwgMTI4LCA3NiwgNjksIDc3LCA3OSwgNzMsIDEyOCwgNzYsIDY5LCA3NiwgCi0gICAgNjksIDg0LCAxMjgsIDc2LCA2OSwgNzYsIDY5LCAyMTIsIDc2LCA2OSwgMjAzLCA3NiwgNjksIDczLCA3NywgNzcsIDY1LCAKLSAgICAxMjgsIDc2LCA2OSwgNzMsIDc3LCA3NywgMTkzLCA3NiwgNjksIDcxLCA4MywgMTI4LCA3NiwgNjksIDcxLCA3MywgNzksIAotICAgIDc4LCAxMjgsIDc2LCA2OSwgNzEsIDY5LCA4NCwgNzksIDIxMSwgNzYsIDY5LCA3MSwgMTI4LCA3NiwgNjksIDcwLCA4NCwgCi0gICAgODcsIDY1LCA4MiwgNjgsIDgzLCAxMjgsIDc2LCA2OSwgNzAsIDg0LCA0NSwgODQsIDc5LCA0NSwgODIsIDczLCA3MSwgNzIsIAotICAgIDIxMiwgNzYsIDY5LCA3MCwgODQsIDQ1LCA4MywgODQsIDY5LCAyMDUsIDc2LCA2OSwgNzAsIDg0LCA0NSwgODMsIDczLCA2OCwgCi0gICAgMTk3LCA3NiwgNjksIDcwLCA4NCwgNDUsIDgzLCA3MiwgNjUsIDY4LCA2OSwgMTk2LCA3NiwgNjksIDcwLCA4NCwgNDUsIDgwLCAKLSAgICA3OSwgNzMsIDc4LCA4NCwgNzMsIDc4LCAxOTksIDc2LCA2OSwgNzAsIDg0LCA0NSwgNzIsIDY1LCA3OCwgNjgsIDY5LCAxOTYsIAotICAgIDc2LCA2OSwgNzAsIDg0LCA0NSwgNzIsIDY1LCA3OCwgMTk2LCA3NiwgNjksIDcwLCA4NCwgNDUsIDcwLCA2NSwgNjcsIDczLCAKLSAgICA3OCwgMTk5LCA3NiwgNjksIDcwLCA4NCwgMTI4LCA3NiwgNjksIDY5LCA4MiwgNjUsIDY5LCA4NywgNjUsIDEyOCwgNzYsIAotICAgIDY5LCA2OSwgNzUsIDEyOCwgNzYsIDY5LCA2OSwgNjksIDY5LCAxMjgsIDc2LCA2OSwgNjgsIDcxLCA2OSwgODIsIDEyOCwgCi0gICAgNzYsIDY5LCA2NSwgODQsIDcyLCA2OSwgODIsIDEyOCwgNzYsIDY5LCA2NSwgNzAsIDEyOCwgNzYsIDY5LCA2NSwgMTk4LCAKLSAgICA3NiwgNjksIDY1LCA2OCwgNzMsIDc4LCAxOTksIDc2LCA2OSwgNjUsIDY4LCA2OSwgODIsIDEyOCwgNzYsIDY5LCA2NSwgCi0gICAgMTk2LCA3NiwgNjgsIDY1LCA3OCwgMTI4LCA3NiwgNjgsIDUwLCAxMjgsIDc2LCA2NywgMjAxLCA3NiwgNjcsIDE5NywgNzYsIAotICAgIDY1LCA5MCwgMjE3LCA3NiwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3NiwgNjUsIDg4LCAxMjgsIDc2LCA2NSwgCi0gICAgODcsIDEyOCwgNzYsIDY1LCAyMTUsIDc2LCA2NSwgODUsIDc2LCA2NSwgMTI4LCA3NiwgNjUsIDg1LCA3NSwgNjUsIDIxOCwgCi0gICAgNzYsIDY1LCA4NCwgNzMsIDc4LCA2NSwgODQsIDE5NywgNzYsIDY1LCA4NCwgNzMsIDc1LCAxMjgsIDc2LCA2NSwgODQsIDY5LCAKLSAgICA4MiwgNjUsIDIwNCwgNzYsIDY1LCA4NCwgMTk3LCA3NiwgNjUsIDgzLCAyMTIsIDc2LCA2NSwgODIsIDg5LCA3OCwgNzEsIAotICAgIDY5LCA2NSwgMjA0LCA3NiwgNjUsIDgyLCA3MSwgNjksIDIxMCwgNzYsIDY1LCA4MiwgNzEsIDY5LCAxMjgsIDc2LCA2NSwgCi0gICAgODIsIDcxLCAxOTcsIDc2LCA2NSwgODEsIDEyOCwgNzYsIDY1LCA4MCwgNjUsIDgxLCAxMjgsIDc2LCA2NSwgODAsIDEyOCwgCi0gICAgNzYsIDY1LCAyMDcsIDc2LCA2NSwgNzgsIDg0LCA2OSwgODIsIDc4LCAxMjgsIDc2LCA2NSwgNzgsIDcxLCA4NSwgNjUsIDcxLCAKLSAgICAxOTcsIDc2LCA2NSwgNzgsIDY5LCA4MywgMTI4LCA3NiwgNjUsIDc3LCA2OSwgNjgsIDcyLCAxMjgsIDc2LCA2NSwgNzcsIAotICAgIDY5LCA2OCwgMTI4LCA3NiwgNjUsIDc3LCA2OSwgMTk2LCA3NiwgNjUsIDc3LCA2OSwgMTI4LCA3NiwgNjUsIDc3LCAxOTcsIAotICAgIDc2LCA2NSwgNzcsIDY4LCA2NSwgMTI4LCA3NiwgNjUsIDc3LCA2OCwgMTI4LCA3NiwgNjUsIDc3LCA2NiwgNjgsIDE5MywgCi0gICAgNzYsIDY1LCA3NywgNjUsIDY4LCA3MiwgMTI4LCA3NiwgNjUsIDc2LCAxMjgsIDc2LCA2NSwgMjA0LCA3NiwgNjUsIDc1LCAKLSAgICA3NSwgNzIsIDY1LCA3OCwgNzEsIDg5LCA2NSwgNzksIDEyOCwgNzYsIDY1LCA3NCwgNjUsIDc4LCA4OSwgNjUsIDc2LCA2NSwgCi0gICAgNzgsIDEyOCwgNzYsIDY1LCAyMDEsIDc2LCA2NSwgNzIsIDgzLCA3MiwgODUsIDEyOCwgNzYsIDY1LCA3MSwgODUsIDgzLCAKLSAgICAxMjgsIDc2LCA2NSwgNzEsIDIxMywgNzYsIDY1LCA3MSwgNjUsIDgyLCAxMjgsIDc2LCA2NSwgNzEsIDY1LCAyMTAsIDc2LCAKLSAgICA2NSwgNzEsIDY1LCA2NiwgMTI4LCA3NiwgNjUsIDcxLCA2NSwgMTk0LCA3NiwgNjUsIDY5LCA4NiwgMTI4LCA3NiwgNjUsIAotICAgIDY5LCAxMjgsIDc2LCA2NSwgNjgsIDIxNywgNzYsIDY1LCA2NywgNzUsIDEyOCwgNzYsIDY1LCA2NywgNjUsIDEyOCwgNzYsIAotICAgIDY1LCA2NiwgNzksIDg1LCA4MiwgNzMsIDc4LCA3MSwgMTI4LCA3NiwgNjUsIDY2LCA3OSwgODIsIDEyOCwgNzYsIDY1LCA2NiwgCi0gICAgNzMsIDY1LCA3NiwgNzMsIDkwLCA2NSwgODQsIDczLCA3OSwgMjA2LCA3NiwgNjUsIDY2LCA2NSwgODQsIDEyOCwgNzYsIDY1LCAKLSAgICA2NSwgNzgsIDY1LCA2OSwgMTI4LCA3NiwgNjUsIDY1LCA3OCwgMTI4LCA3NiwgNjUsIDY1LCA3NywgODUsIDEyOCwgNzYsIAotICAgIDY1LCA2NSwgNzcsIDEyOCwgNzYsIDY1LCA2NSwgNzMsIDEyOCwgNzYsIDQ4LCA0OCwgNTQsIDY1LCAxMjgsIDc2LCA0OCwgCi0gICAgNDgsIDUwLCA2NSwgMTI4LCA3NiwgNDUsIDg0LCA4OSwgODAsIDE5NywgNzYsIDQ1LCA4MywgNzIsIDY1LCA4MCwgNjksIAorICAgIDc3LCA2NSwgNzYsIDY1LCA3NSwgNzksIDIwNiwgNzcsIDY1LCA3NSwgODMsIDg1LCA4MiwgNjUsIDEyOCwgNzcsIDY1LCA3NSwgCisgICAgODMsIDg1LCA4MiwgMTkzLCA3NywgNjUsIDczLCA5MCwgNjksIDEyOCwgNzcsIDY1LCA3MywgODksIDY1LCA3NywgNzksIDc1LCAKKyAgICAxMjgsIDc3LCA2NSwgNzMsIDg0LCA2NSwgNzMsIDc1LCA3MiwgODUsIDEyOCwgNzcsIDY1LCA3MywgODIsIDg1LCAxMjgsIAorICAgIDc3LCA2NSwgNzMsIDc3LCA4NSwgNjUsIDc4LCAxMjgsIDc3LCA2NSwgNzMsIDc3LCA2NSwgNzYsIDY1LCA3MywgMTI4LCA3NywgCisgICAgNjUsIDczLCA3NiwgNjYsIDc5LCAyMTYsIDc3LCA2NSwgNzMsIDc1LCA4NSwgODIsIDc5LCAxMjgsIDc3LCA2NSwgNzMsIDY4LCAKKyAgICA2OSwgNzgsIDEyOCwgNzcsIDY1LCA3MywgMTI4LCA3NywgNjUsIDcyLCA3NCwgNzksIDc4LCAxOTksIDc3LCA2NSwgNzIsIAorICAgIDcyLCA2NSwgMTI4LCA3NywgNjUsIDcyLCA2NSwgODAsIDgyLCA2NSwgNzgsIDY1LCAxMjgsIDc3LCA2NSwgNzIsIDY1LCA4MCwgCisgICAgNjUsIDc1LCA3MiwgMTI4LCA3NywgNjUsIDcyLCA2NSwgNjUsIDgwLCA4MiwgNjUsIDY1LCA3OCwgMTkzLCA3NywgNjUsIDcyLCAKKyAgICAxMjgsIDc3LCA2NSwgNzEsIDc4LCA3MywgNzAsIDg5LCA3MywgNzgsIDE5OSwgNzcsIDY1LCA2OSwgODMsIDczLCAxMjgsIAorICAgIDc3LCA2NSwgNjksIDc4LCA4OSwgNzMsIDEyOCwgNzcsIDY1LCA2OSwgNzgsIDc0LCA2OSwgODQsIDEyOCwgNzcsIDY1LCA2OSwgCisgICAgNzcsIDg2LCA2OSwgODUsIDg4LCAxMjgsIDc3LCA2NSwgNjksIDc3LCA3NSwgODAsIDY5LCA3OCwgMTI4LCA3NywgNjUsIDY5LCAKKyAgICA3NywgNzEsIDY2LCA3MywgNjksIDY5LCAxMjgsIDc3LCA2NSwgNjksIDc3LCA2NiwgNzEsIDY2LCA3MywgNjksIDY5LCAxMjgsIAorICAgIDc3LCA2NSwgNjksIDc3LCA2NiwgNjUsIDEyOCwgNzcsIDY1LCA2OSwgNzcsIDEyOCwgNzcsIDY1LCA2OSwgNzYsIDY5LCA2OSwgCisgICAgMTI4LCA3NywgNjUsIDY5LCA3NSwgNjksIDg1LCA4MCwgMTI4LCA3NywgNjUsIDY4LCA4OSwgNjUsIDEyOCwgNzcsIDY1LCAKKyAgICA2OCwgODUsIDEyOCwgNzcsIDY1LCA2OCwgNjgsIDY1LCAyMDAsIDc3LCA2NSwgNjgsIDY4LCA2NSwgMTI4LCA3NywgNjUsIAorICAgIDY4LCA2OCwgMTkzLCA3NywgNjUsIDY3LCA4MiwgNzksIDc4LCA0NSwgNzEsIDgyLCA2NSwgODYsIDY5LCAxMjgsIDc3LCA2NSwgCisgICAgNjcsIDgyLCA3OSwgNzgsIDQ1LCA2NiwgODIsIDY5LCA4NiwgNjksIDEyOCwgNzcsIDY1LCA2NywgODIsIDc5LCA3OCwgNDUsIAorICAgIDY1LCA2NywgODUsIDg0LCA2OSwgMTI4LCA3NywgNjUsIDY3LCA4MiwgNzksIDc4LCAxMjgsIDc3LCA2NSwgNjcsIDgyLCA3OSwgCisgICAgMjA2LCA3NywgNjUsIDY3LCA3MiwgNzMsIDc4LCA2OSwgMTI4LCA3NywgNjUsIDY1LCA3MywgMTI4LCA3NywgNjUsIDY1LCAKKyAgICAxMjgsIDc3LCA2NSwgNTAsIDEyOCwgNzcsIDQ4LCA1MiwgNTIsIDEyOCwgNzcsIDQ4LCA1MiwgNTEsIDEyOCwgNzcsIDQ4LCAKKyAgICA1MiwgNTAsIDEyOCwgNzcsIDQ4LCA1MiwgNDksIDEyOCwgNzcsIDQ4LCA1MiwgNDgsIDY1LCAxMjgsIDc3LCA0OCwgNTIsIAorICAgIDQ4LCAxMjgsIDc3LCA0OCwgNTEsIDU3LCAxMjgsIDc3LCA0OCwgNTEsIDU2LCAxMjgsIDc3LCA0OCwgNTEsIDU1LCAxMjgsIAorICAgIDc3LCA0OCwgNTEsIDU0LCAxMjgsIDc3LCA0OCwgNTEsIDUzLCAxMjgsIDc3LCA0OCwgNTEsIDUyLCAxMjgsIDc3LCA0OCwgCisgICAgNTEsIDUxLCA2NiwgMTI4LCA3NywgNDgsIDUxLCA1MSwgNjUsIDEyOCwgNzcsIDQ4LCA1MSwgNTEsIDEyOCwgNzcsIDQ4LCAKKyAgICA1MSwgNTAsIDEyOCwgNzcsIDQ4LCA1MSwgNDksIDY1LCAxMjgsIDc3LCA0OCwgNTEsIDQ5LCAxMjgsIDc3LCA0OCwgNTEsIAorICAgIDQ4LCAxMjgsIDc3LCA0OCwgNTAsIDU3LCAxMjgsIDc3LCA0OCwgNTAsIDU2LCA2NSwgMTI4LCA3NywgNDgsIDUwLCA1NiwgCisgICAgMTI4LCA3NywgNDgsIDUwLCA1NSwgMTI4LCA3NywgNDgsIDUwLCA1NCwgMTI4LCA3NywgNDgsIDUwLCA1MywgMTI4LCA3NywgCisgICAgNDgsIDUwLCA1MiwgNjUsIDEyOCwgNzcsIDQ4LCA1MCwgNTIsIDEyOCwgNzcsIDQ4LCA1MCwgNTEsIDEyOCwgNzcsIDQ4LCAKKyAgICA1MCwgNTAsIDY1LCAxMjgsIDc3LCA0OCwgNTAsIDUwLCAxMjgsIDc3LCA0OCwgNTAsIDQ5LCAxMjgsIDc3LCA0OCwgNTAsIAorICAgIDQ4LCAxMjgsIDc3LCA0OCwgNDksIDU3LCAxMjgsIDc3LCA0OCwgNDksIDU2LCAxMjgsIDc3LCA0OCwgNDksIDU1LCA2NSwgCisgICAgMTI4LCA3NywgNDgsIDQ5LCA1NSwgMTI4LCA3NywgNDgsIDQ5LCA1NCwgNjUsIDEyOCwgNzcsIDQ4LCA0OSwgNTQsIDEyOCwgCisgICAgNzcsIDQ4LCA0OSwgNTMsIDY1LCAxMjgsIDc3LCA0OCwgNDksIDUzLCAxMjgsIDc3LCA0OCwgNDksIDUyLCAxMjgsIDc3LCAKKyAgICA0OCwgNDksIDUxLCAxMjgsIDc3LCA0OCwgNDksIDUwLCA3MiwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgNzEsIDEyOCwgNzcsIAorICAgIDQ4LCA0OSwgNTAsIDcwLCAxMjgsIDc3LCA0OCwgNDksIDUwLCA2OSwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgNjgsIDEyOCwgCisgICAgNzcsIDQ4LCA0OSwgNTAsIDY3LCAxMjgsIDc3LCA0OCwgNDksIDUwLCA2NiwgMTI4LCA3NywgNDgsIDQ5LCA1MCwgNjUsIAorICAgIDEyOCwgNzcsIDQ4LCA0OSwgNTAsIDEyOCwgNzcsIDQ4LCA0OSwgNDksIDEyOCwgNzcsIDQ4LCA0OSwgNDgsIDY1LCAxMjgsIAorICAgIDc3LCA0OCwgNDksIDQ4LCAxMjgsIDc3LCA0OCwgNDgsIDU3LCAxMjgsIDc3LCA0OCwgNDgsIDU2LCAxMjgsIDc3LCA0OCwgCisgICAgNDgsIDU1LCAxMjgsIDc3LCA0OCwgNDgsIDU0LCAxMjgsIDc3LCA0OCwgNDgsIDUzLCAxMjgsIDc3LCA0OCwgNDgsIDUyLCAKKyAgICAxMjgsIDc3LCA0OCwgNDgsIDUxLCA2NSwgMTI4LCA3NywgNDgsIDQ4LCA1MSwgMTI4LCA3NywgNDgsIDQ4LCA1MCwgMTI4LCAKKyAgICA3NywgNDgsIDQ4LCA0OSwgNjYsIDEyOCwgNzcsIDQ4LCA0OCwgNDksIDY1LCAxMjgsIDc3LCA0OCwgNDgsIDQ5LCAxMjgsIAorICAgIDc2LCAyMTgsIDc2LCA4OSwgODksIDEyOCwgNzYsIDg5LCA4OCwgMTI4LCA3NiwgODksIDg0LCAxMjgsIDc2LCA4OSwgODIsIAorICAgIDg4LCAxMjgsIDc2LCA4OSwgODIsIDEyOCwgNzYsIDg5LCA4MCwgMTI4LCA3NiwgODksIDY4LCA3MywgNjUsIDIwNiwgNzYsIAorICAgIDg5LCA2NywgNzMsIDY1LCAyMDYsIDc2LCA4OCwgMTI4LCA3NiwgODcsIDc5LCA3OSwgMTI4LCA3NiwgODcsIDc5LCAxMjgsIAorICAgIDc2LCA4NywgNzMsIDczLCAxMjgsIDc2LCA4NywgNzMsIDEyOCwgNzYsIDg3LCA2OSwgMTI4LCA3NiwgODcsIDY1LCA2NSwgCisgICAgMTI4LCA3NiwgODcsIDY1LCAxMjgsIDc2LCA4NSwgODgsIDEyOCwgNzYsIDg1LCA4NSwgMTI4LCA3NiwgODUsIDg0LCAxMjgsIAorICAgIDc2LCA4NSwgODIsIDg4LCAxMjgsIDc2LCA4NSwgODAsIDEyOCwgNzYsIDg1LCA3OSwgODgsIDEyOCwgNzYsIDg1LCA3OSwgCisgICAgODQsIDEyOCwgNzYsIDg1LCA3OSwgODAsIDEyOCwgNzYsIDg1LCA3OSwgMTI4LCA3NiwgODUsIDc4LCA3MSwgODMsIDczLCAKKyAgICAxMjgsIDc2LCA4NSwgNzgsIDY1LCA4NCwgMTk3LCA3NiwgODUsIDIwNSwgNzYsIDg1LCA3NiwgMTI4LCA3NiwgODUsIDczLCAKKyAgICA4MywgMTI4LCA3NiwgODUsIDcyLCA4NSwgODIsIDEyOCwgNzYsIDg1LCA3MiwgMTI4LCA3NiwgODUsIDcxLCA3MSwgNjUsIAorICAgIDcxLCA2OSwgMTI4LCA3NiwgODUsIDcxLCA2NSwgNzYsIDEyOCwgNzYsIDg1LCA3MSwgNjUsIDIwNCwgNzYsIDg1LCA2OSwgCisgICAgMTI4LCA3NiwgODUsIDY1LCA2OSwgODAsIDEyOCwgNzYsIDg1LCA1MSwgMTI4LCA3NiwgODUsIDUwLCAxMjgsIDc2LCA4NSwgCisgICAgMTc4LCA3NiwgNzksIDkwLCA2OSwgNzgsIDcxLCA2OSwgMTI4LCA3NiwgNzksIDkwLCA2OSwgNzgsIDcxLCAxOTcsIDc2LCAKKyAgICA3OSwgODgsIDEyOCwgNzYsIDc5LCA4NywgNjksIDgyLCA2OSwgMTk2LCA3NiwgNzksIDg3LCA2OSwgMjEwLCA3NiwgNzksIAorICAgIDg3LCA0NSwgMTg1LCA3NiwgNzksIDg2LCAxOTcsIDc2LCA3OSwgODUsIDgyLCA2OSwgMTI4LCA3NiwgNzksIDg1LCA2OCwgCisgICAgODMsIDgwLCA2OSwgNjUsIDc1LCA2OSwgODIsIDEyOCwgNzYsIDc5LCA4NSwgNjgsIDc2LCAyMTcsIDc2LCA3OSwgODQsIDg1LCAKKyAgICA4MywgMTI4LCA3NiwgNzksIDg0LCAxMjgsIDc2LCA3OSwgODIsIDgyLCA4OSwgMTI4LCA3NiwgNzksIDgyLCA4MiwgNjUsIAorICAgIDczLCA3OCwgNjksIDEyOCwgNzYsIDc5LCA4MSwgMTI4LCA3NiwgNzksIDgwLCAxMjgsIDc2LCA3OSwgNzksIDg0LCAxMjgsIAorICAgIDc2LCA3OSwgNzksIDgwLCAxMjgsIDc2LCA3OSwgNzksIDc4LCAxMjgsIDc2LCA3OSwgNzksIDIwMywgNzYsIDc5LCA3OSwgCisgICAgMTI4LCA3NiwgNzksIDc4LCA4MywgODUsIDc3LCAxMjgsIDc2LCA3OSwgNzgsIDcxLCA2NSwgMTI4LCA3NiwgNzksIDc4LCAKKyAgICA3MSwgMTkzLCA3NiwgNzksIDc4LCA3MSwgNDUsIDY2LCA4MiwgNjUsIDc4LCA2NywgNzIsIDQ1LCA4OSwgODIsIDEyOCwgNzYsIAorICAgIDc5LCA3OCwgNzEsIDQ1LCA2NiwgODIsIDY1LCA3OCwgNjcsIDcyLCA0NSwgODMsIDc5LCAyMDQsIDc2LCA3OSwgNzgsIDcxLCAKKyAgICA0NSwgNjYsIDgyLCA2NSwgNzgsIDY3LCA3MiwgNDUsIDc5LCA4MywgMjExLCA3NiwgNzksIDc4LCA3MSwgNDUsIDY2LCA4MiwgCisgICAgNjUsIDc4LCA2NywgNzIsIDQ1LCA3NywgNjUsIDY4LCAyMTAsIDc2LCA3OSwgNzgsIDcxLCA0NSwgNjYsIDgyLCA2NSwgNzgsIAorICAgIDY3LCA3MiwgNDUsIDcyLCA2NSwgNzEsIDY1LCA3NiwgMjA0LCA3NiwgNzksIDc4LCA3MSwgNDUsIDY2LCA4MiwgNjUsIDc4LCAKKyAgICA2NywgNzIsIDQ1LCA2NSwgMjEwLCA3NiwgNzksIDc3LCA3NywgNjUsIDY5LCAxMjgsIDc2LCA3OSwgNzcsIDEyOCwgNzYsIAorICAgIDc5LCAyMDUsIDc2LCA3OSwgNzYsIDc2LCA3MywgODAsIDc5LCA4MCwgMTI4LCA3NiwgNzksIDc2LCA3NiwgMTI4LCA3NiwgCisgICAgNzksIDcxLCAyMTAsIDc2LCA3OSwgNzEsIDc5LCA4NCwgODksIDgwLCAxOTcsIDc2LCA3OSwgNzEsIDc5LCA3MSwgODIsIDY1LCAKKyAgICAyMDUsIDc2LCA3OSwgNzEsIDEyOCwgNzYsIDc5LCA2OCwgNjksIDgzLCA4NCwgNzksIDc4LCA2OSwgMTI4LCA3NiwgNzksIAorICAgIDY3LCA3OSwgNzcsIDc5LCA4NCwgNzMsIDg2LCA2OSwgMTI4LCA3NiwgNzksIDY3LCAyMDMsIDc2LCA3OSwgNjcsIDY1LCA4NCwgCisgICAgNzMsIDg2LCA2OSwgMTI4LCA3NiwgNzksIDY3LCA2NSwgODQsIDczLCA3OSwgMjA2LCA3NiwgNzksIDY1LCAxMjgsIDc2LCAKKyAgICA3OCwgMTI4LCA3NiwgNzcsIDEyOCwgNzYsIDc2LCA4NSwgODUsIDEyOCwgNzYsIDc2LCA3OSwgNzksIDEyOCwgNzYsIDc2LCAKKyAgICA3NiwgODUsIDg1LCAxMjgsIDc2LCA3NiwgNzYsIDg1LCAxMjgsIDc2LCA3NiwgNzYsIDc5LCA3OSwgMTI4LCA3NiwgNzYsIAorICAgIDc2LCA3OSwgMTI4LCA3NiwgNzYsIDc2LCA3MywgNzMsIDEyOCwgNzYsIDc2LCA3NiwgNzMsIDEyOCwgNzYsIDc2LCA3NiwgCisgICAgNjksIDY5LCAxMjgsIDc2LCA3NiwgNzYsIDY5LCAxMjgsIDc2LCA3NiwgNzYsIDY1LCA4NSwgMTI4LCA3NiwgNzYsIDc2LCAKKyAgICA2NSwgNzMsIDEyOCwgNzYsIDc2LCA3NiwgNjUsIDY1LCAxMjgsIDc2LCA3NiwgNzYsIDY1LCAxMjgsIDc2LCA3NiwgNzYsIAorICAgIDEyOCwgNzYsIDc0LCA4NSwgNjgsIDczLCA3NCwgNjksIDEyOCwgNzYsIDc0LCA2OSwgMTI4LCA3NiwgNzQsIDEyOCwgNzYsIAorICAgIDczLCA4OCwgMTI4LCA3NiwgNzMsIDg3LCA3OCwgMTI4LCA3NiwgNzMsIDg2LCA4MiwgMTk3LCA3NiwgNzMsIDg0LCA4NCwgCisgICAgNzYsIDE5NywgNzYsIDczLCA4NCwgODQsIDY5LCAyMTAsIDc2LCA3MywgODQsIDgyLCAxOTMsIDc2LCA3MywgODQsIDEyOCwgCisgICAgNzYsIDczLCA4MywgMjEzLCA3NiwgNzMsIDgyLCAxOTMsIDc2LCA3MywgODEsIDg1LCA3MywgMTk2LCA3NiwgNzMsIDgxLCAKKyAgICAxMjgsIDc2LCA3MywgODAsIDgzLCA4NCwgNzMsIDY3LCA3NSwgMTI4LCA3NiwgNzMsIDc4LCA3NSwgNzMsIDc4LCAxOTksIAorICAgIDc2LCA3MywgNzgsIDIwMywgNzYsIDczLCA3OCwgNzEsIDgzLCA2NSwgMTI4LCA3NiwgNzMsIDc4LCA2OSwgODMsIDEyOCwgCisgICAgNzYsIDczLCA3OCwgNjksIDIxMSwgNzYsIDczLCA3OCwgNjksIDQ1LCA1NywgMTI4LCA3NiwgNzMsIDc4LCA2OSwgNDUsIDU1LCAKKyAgICAxMjgsIDc2LCA3MywgNzgsIDY5LCA0NSwgNTEsIDEyOCwgNzYsIDczLCA3OCwgNjksIDQ1LCA0OSwgMTI4LCA3NiwgNzMsIAorICAgIDc3LCA3NywgODUsIDUyLCAxMjgsIDc2LCA3MywgNzcsIDc3LCA4NSwgNTAsIDEyOCwgNzYsIDczLCA3NywgNzcsIDg1LCAKKyAgICAxMjgsIDc2LCA3MywgNzcsIDc3LCAyMTMsIDc2LCA3MywgNzcsIDczLCA4NCwgNjksIDE5NiwgNzYsIDczLCA3NywgNzMsIAorICAgIDg0LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNzYsIDczLCA3NywgNzMsIDg0LCAxMjgsIDc2LCA3MywgNzcsIDY5LCAKKyAgICAxMjgsIDc2LCA3MywgNzcsIDY2LCAyMTMsIDc2LCA3MywgNzYsIDg5LCAxMjgsIDc2LCA3MywgNzYsIDczLCA4NCwgNzIsIAorICAgIDEyOCwgNzYsIDczLCA3NiwgMTI4LCA3NiwgNzMsIDcxLCA3MiwgODQsIDc4LCA3MywgNzgsIDcxLCAxMjgsIDc2LCA3MywgCisgICAgNzEsIDcyLCA4NCwgNzIsIDc5LCA4NSwgODMsIDY5LCAxMjgsIDc2LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA3NiwgNzMsIDcwLCAKKyAgICA2OSwgMTI4LCA3NiwgNzMsIDY5LCA4OCwgMTI4LCA3NiwgNzMsIDY5LCA4NCwgMTI4LCA3NiwgNzMsIDY5LCA4MCwgMTI4LCAKKyAgICA3NiwgNzMsIDY5LCA2OSwgMTI4LCA3NiwgNzMsIDY5LCAxMjgsIDc2LCA3MywgNjgsIDEyOCwgNzYsIDczLCA2NiwgODIsIAorICAgIDY1LCAxMjgsIDc2LCA3MywgNjYsIDY5LCA4MiwgODQsIDg5LCAxMjgsIDc2LCA3MywgNjUsIDY2LCA3MywgNzYsIDczLCA4NCwgCisgICAgMjE3LCA3NiwgNzIsIDczLCA3MywgMTI4LCA3NiwgNzIsIDY1LCA4NiwgNzMsIDg5LCA2NSwgNzgsIDczLCAxMjgsIDc2LCAKKyAgICA3MiwgNjUsIDE5OSwgNzYsIDcyLCA2NSwgNjUsIDEyOCwgNzYsIDcyLCAxMjgsIDc2LCA2OSwgOTAsIDcyLCAxMjgsIDc2LCAKKyAgICA2OSwgODgsIDEyOCwgNzYsIDY5LCA4NiwgNjksIDIwNCwgNzYsIDY5LCA4NSwgNzcsIDEyOCwgNzYsIDY5LCA4NSwgNjUsIAorICAgIDY5LCA4MCwgMTI4LCA3NiwgNjksIDg1LCA2NSwgNjksIDc3LCAxMjgsIDc2LCA2OSwgODQsIDg0LCA2OSwgODIsIDgzLCAKKyAgICAxMjgsIDc2LCA2OSwgODQsIDg0LCA2OSwgODIsIDEyOCwgNzYsIDY5LCAyMTIsIDc2LCA2OSwgODMsIDgzLCA2OSwgMjEwLCAKKyAgICA3NiwgNjksIDgzLCA4MywgNDUsIDg0LCA3MiwgNjUsIDc4LCAxMjgsIDc2LCA2OSwgODMsIDgzLCA0NSwgODQsIDcyLCA2NSwgCisgICAgMjA2LCA3NiwgNjksIDgwLCAxMjgsIDc2LCA2OSwgNzksIDgwLCA2NSwgODIsIDY4LCAxMjgsIDc2LCA2OSwgNzksIDEyOCwgCisgICAgNzYsIDY5LCA3OCwgODQsIDczLCA2NywgODUsIDc2LCA2NSwgMjEwLCA3NiwgNjksIDc4LCA3MywgODMsIDEyOCwgNzYsIDY5LCAKKyAgICA3OCwgNzEsIDg0LCA3MiwgNjksIDc4LCA2OSwgODIsIDEyOCwgNzYsIDY5LCA3OCwgNzEsIDg0LCAyMDAsIDc2LCA2OSwgNzgsIAorICAgIDcxLCA2NSwgMTI4LCA3NiwgNjksIDc4LCA3MSwgMTkzLCA3NiwgNjksIDc3LCA3OSwgNzgsIDEyOCwgNzYsIDY5LCA3NywgCisgICAgNzksIDczLCAxMjgsIDc2LCA2OSwgNzYsIDY5LCA4NCwgMTI4LCA3NiwgNjksIDc2LCA2OSwgMjEyLCA3NiwgNjksIDIwMywgCisgICAgNzYsIDY5LCA3MywgNzcsIDc3LCA2NSwgMTI4LCA3NiwgNjksIDczLCA3NywgNzcsIDE5MywgNzYsIDY5LCA3MSwgODMsIAorICAgIDEyOCwgNzYsIDY5LCA3MSwgNzMsIDc5LCA3OCwgMTI4LCA3NiwgNjksIDcxLCA2OSwgODQsIDc5LCAyMTEsIDc2LCA2OSwgCisgICAgNzEsIDEyOCwgNzYsIDY5LCA3MCwgODQsIDg3LCA2NSwgODIsIDY4LCA4MywgMTI4LCA3NiwgNjksIDcwLCA4NCwgNDUsIDg0LCAKKyAgICA3OSwgNDUsIDgyLCA3MywgNzEsIDcyLCAyMTIsIDc2LCA2OSwgNzAsIDg0LCA0NSwgODMsIDg0LCA2OSwgMjA1LCA3NiwgNjksIAorICAgIDcwLCA4NCwgNDUsIDgzLCA3MywgNjgsIDE5NywgNzYsIDY5LCA3MCwgODQsIDQ1LCA4MywgNzIsIDY1LCA2OCwgNjksIDE5NiwgCisgICAgNzYsIDY5LCA3MCwgODQsIDQ1LCA4MCwgNzksIDczLCA3OCwgODQsIDczLCA3OCwgMTk5LCA3NiwgNjksIDcwLCA4NCwgNDUsIAorICAgIDcyLCA2NSwgNzgsIDY4LCA2OSwgMTk2LCA3NiwgNjksIDcwLCA4NCwgNDUsIDcyLCA2NSwgNzgsIDE5NiwgNzYsIDY5LCA3MCwgCisgICAgODQsIDQ1LCA3MCwgNjUsIDY3LCA3MywgNzgsIDE5OSwgNzYsIDY5LCA3MCwgODQsIDEyOCwgNzYsIDY5LCA2OSwgODIsIDY1LCAKKyAgICA2OSwgODcsIDY1LCAxMjgsIDc2LCA2OSwgNjksIDc1LCAxMjgsIDc2LCA2OSwgNjksIDY5LCA2OSwgMTI4LCA3NiwgNjksIAorICAgIDY4LCA3MSwgNjksIDgyLCAxMjgsIDc2LCA2OSwgNjUsIDg0LCA3MiwgNjksIDgyLCAxMjgsIDc2LCA2OSwgNjUsIDcwLCAKKyAgICAxMjgsIDc2LCA2OSwgNjUsIDE5OCwgNzYsIDY5LCA2NSwgNjgsIDczLCA3OCwgMTk5LCA3NiwgNjksIDY1LCA2OCwgNjksIAorICAgIDgyLCAxMjgsIDc2LCA2OSwgNjUsIDE5NiwgNzYsIDY4LCA2NSwgNzgsIDEyOCwgNzYsIDY4LCA1MCwgMTI4LCA3NiwgNjcsIAorICAgIDIwMSwgNzYsIDY3LCAxOTcsIDc2LCA2NSwgOTAsIDIxNywgNzYsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzYsIAorICAgIDY1LCA4OCwgMTI4LCA3NiwgNjUsIDg3LCAxMjgsIDc2LCA2NSwgMjE1LCA3NiwgNjUsIDg1LCA3NiwgNjUsIDEyOCwgNzYsIAorICAgIDY1LCA4NSwgNzUsIDY1LCAyMTgsIDc2LCA2NSwgODQsIDczLCA3OCwgNjUsIDg0LCAxOTcsIDc2LCA2NSwgODQsIDczLCA3NSwgCisgICAgMTI4LCA3NiwgNjUsIDg0LCA2OSwgODIsIDY1LCAyMDQsIDc2LCA2NSwgODQsIDE5NywgNzYsIDY1LCA4MywgMjEyLCA3NiwgCisgICAgNjUsIDgyLCA4OSwgNzgsIDcxLCA2OSwgNjUsIDIwNCwgNzYsIDY1LCA4MiwgNzEsIDY5LCAyMTAsIDc2LCA2NSwgODIsIDcxLCAKKyAgICA2OSwgMTI4LCA3NiwgNjUsIDgyLCA3MSwgMTk3LCA3NiwgNjUsIDgxLCAxMjgsIDc2LCA2NSwgODAsIDY1LCA4MSwgMTI4LCAKKyAgICA3NiwgNjUsIDgwLCAxMjgsIDc2LCA2NSwgNzgsIDg0LCA2OSwgODIsIDc4LCAxMjgsIDc2LCA2NSwgNzgsIDcxLCA4NSwgNjUsIAorICAgIDcxLCAxOTcsIDc2LCA2NSwgNzgsIDY5LCA4MywgMTI4LCA3NiwgNjUsIDc3LCA2OSwgNjgsIDcyLCAxMjgsIDc2LCA2NSwgCisgICAgNzcsIDY5LCA2OCwgMTI4LCA3NiwgNjUsIDc3LCA2OSwgMTk2LCA3NiwgNjUsIDc3LCA2OSwgMTI4LCA3NiwgNjUsIDc3LCAKKyAgICAxOTcsIDc2LCA2NSwgNzcsIDY4LCA2NSwgMTI4LCA3NiwgNjUsIDc3LCA2OCwgMTI4LCA3NiwgNjUsIDc3LCA2NiwgNjgsIAorICAgIDE5MywgNzYsIDY1LCA3NywgNjUsIDY4LCA3MiwgMTI4LCA3NiwgNjUsIDc2LCAxMjgsIDc2LCA2NSwgMjA0LCA3NiwgNjUsIAorICAgIDc1LCA3NSwgNzIsIDY1LCA3OCwgNzEsIDg5LCA2NSwgNzksIDEyOCwgNzYsIDY1LCA3NCwgNjUsIDc4LCA4OSwgNjUsIDc2LCAKKyAgICA2NSwgNzgsIDEyOCwgNzYsIDY1LCAyMDEsIDc2LCA2NSwgNzIsIDgzLCA3MiwgODUsIDEyOCwgNzYsIDY1LCA3MSwgODUsIAorICAgIDgzLCAxMjgsIDc2LCA2NSwgNzEsIDIxMywgNzYsIDY1LCA3MSwgNjUsIDgyLCAxMjgsIDc2LCA2NSwgNzEsIDY1LCAyMTAsIAorICAgIDc2LCA2NSwgNzEsIDY1LCA2NiwgMTI4LCA3NiwgNjUsIDcxLCA2NSwgMTk0LCA3NiwgNjUsIDY5LCA4NiwgMTI4LCA3NiwgCisgICAgNjUsIDY5LCAxMjgsIDc2LCA2NSwgNjgsIDIxNywgNzYsIDY1LCA2NywgNzUsIDEyOCwgNzYsIDY1LCA2NywgNjUsIDEyOCwgCisgICAgNzYsIDY1LCA2NiwgNzksIDg1LCA4MiwgNzMsIDc4LCA3MSwgMTI4LCA3NiwgNjUsIDY2LCA3OSwgODIsIDEyOCwgNzYsIDY1LCAKKyAgICA2NiwgNzMsIDY1LCA3NiwgNzMsIDkwLCA2NSwgODQsIDczLCA3OSwgMjA2LCA3NiwgNjUsIDY2LCA2NSwgODQsIDEyOCwgNzYsIAorICAgIDY1LCA2NSwgNzgsIDY1LCA2OSwgMTI4LCA3NiwgNjUsIDY1LCA3OCwgMTI4LCA3NiwgNjUsIDY1LCA3NywgODUsIDEyOCwgCisgICAgNzYsIDY1LCA2NSwgNzcsIDEyOCwgNzYsIDY1LCA2NSwgNzMsIDEyOCwgNzYsIDQ4LCA0OCwgNTQsIDY1LCAxMjgsIDc2LCAKKyAgICA0OCwgNDgsIDUwLCA2NSwgMTI4LCA3NiwgNDUsIDg0LCA4OSwgODAsIDE5NywgNzYsIDQ1LCA4MywgNzIsIDY1LCA4MCwgNjksIAogICAgIDE5NiwgNzUsIDg5LCA4NSwgODIsIDczLCA3MywgMTI4LCA3NSwgODksIDg1LCAxMjgsIDc1LCA4OSwgNzksIDEyOCwgNzUsIAogICAgIDg5LCA3NiwgNzMsIDgzLCA3NywgNjUsIDEyOCwgNzUsIDg5LCA3MywgMTI4LCA3NSwgODksIDY5LCAxMjgsIDc1LCA4OSwgCiAgICAgNjUsIDg0LCA3MiwgNzksIDIxMSwgNzUsIDg5LCA2NSwgNjUsIDEyOCwgNzUsIDg5LCA2NSwgMTI4LCA3NSwgODgsIDg3LCAKQEAgLTIwNzUsMTEwMiArMjA5NCwxMTA3IEBACiAgICAgODUsIDc5LCAyMDgsIDc1LCA4NSwgNzksIDc3LCAxMjgsIDc1LCA4NSwgNzksIDEyOCwgNzUsIDg1LCA3OCwgNzEsIDEyOCwgCiAgICAgNzUsIDg1LCA3OCwgNjgsIDY4LCA2NSwgNzYsIDczLCA4OSwgNjUsIDEyOCwgNzUsIDg1LCA3NiwgMTI4LCA3NSwgODUsIAogICAgIDIwNCwgNzUsIDg1LCA2OSwgODQsIDEyOCwgNzUsIDg1LCA1NSwgMTI4LCA3NSwgODUsIDUyLCAxMjgsIDc1LCA4NSwgMTgwLCAKLSAgICA3NSwgODUsIDUxLCAxMjgsIDc1LCA4NSwgMTc5LCA3NSwgODQsIDEyOCwgNzUsIDgzLCA4MywgNjUsIDEyOCwgNzUsIDgzLCAKLSAgICA3MywgMTI4LCA3NSwgODIsIDY5LCA3NywgNjUsIDgzLCA4NCwgNzMsIDEyOCwgNzUsIDgyLCA2NSwgODQsIDczLCA3NywgNzksIAotICAgIDg5LCA4MCwgNzksIDgyLCA4MiwgNzksIDc5LCA3OCwgMTI4LCA3NSwgODIsIDY1LCA4NCwgNzMsIDc3LCA3OSwgNzUsIDc5LCAKLSAgICA4NSwgNzAsIDczLCA4MywgNzcsIDY1LCAxMjgsIDc1LCA4MiwgNjUsIDg0LCA3MywgNzcsIDY1LCA4NCwgNjUsIDEyOCwgNzUsIAotICAgIDgyLCA2NSwgODQsIDczLCA3NywgMTkzLCA3NSwgODAsIDg1LCAxMjgsIDc1LCA4MCwgNzksIDgxLCAxMjgsIDc1LCA4MCwgCi0gICAgNzksIDc5LCAxMjgsIDc1LCA4MCwgNzksIDEyOCwgNzUsIDgwLCA3MywgMTI4LCA3NSwgODAsIDY5LCA4NSwgODgsIDEyOCwgCi0gICAgNzUsIDgwLCA2OSwgNjksIDEyOCwgNzUsIDgwLCA2OSwgMTI4LCA3NSwgODAsIDY1LCA4MiwgNjUsIDgxLCAxMjgsIDc1LCAKLSAgICA4MCwgNjUsIDc4LCAxMjgsIDc1LCA4MCwgNjUsIDEyOCwgNzUsIDc5LCA4OCwgMTI4LCA3NSwgNzksIDg2LCA4NSwgODUsIAotICAgIDEyOCwgNzUsIDc5LCA4NCwgNzksIDEyOCwgNzUsIDc5LCA4MiwgODUsIDc4LCA2NSwgMTI4LCA3NSwgNzksIDgyLCA3OSwgCi0gICAgNzgsIDczLCA4MywgMTI4LCA3NSwgNzksIDgyLCA2OSwgNjUsIDIwNiwgNzUsIDc5LCA4MiwgNjUsIDc4LCA3MywgMTk1LCAKLSAgICA3NSwgNzksIDgxLCA3OCwgNjgsIDc5LCA3OCwgMTI4LCA3NSwgNzksIDgwLCA4MCwgNjUsIDEyOCwgNzUsIDc5LCA4MCwgCi0gICAgMTI4LCA3NSwgNzksIDc5LCA4MCwgNzksIDEyOCwgNzUsIDc5LCA3OSwgNzcsIDg1LCA4NSwgODQsIDEyOCwgNzUsIDc5LCAKLSAgICA3OSwgMTI4LCA3NSwgNzksIDc4LCA4NCwgNjksIDg2LCA3NywgNjUsIDEyOCwgNzUsIDc5LCA3OCwgODQsIDY5LCA4NiwgNzcsIAotICAgIDE5MywgNzUsIDc5LCA3NywgMjAxLCA3NSwgNzksIDc3LCA2NiwgODUsIDg2LCA2NSwgMTI4LCA3NSwgNzksIDc3LCA2NiwgCi0gICAgODUsIDg2LCAxOTMsIDc1LCA3OSwgNzcsIDY2LCAyMTMsIDc1LCA3OSwgNzUsIDc5LCAxMjgsIDc1LCA3OSwgNzUsIDEyOCwgCi0gICAgNzUsIDc5LCAyMDMsIDc1LCA3OSwgNzMsIDEyOCwgNzUsIDc5LCAyMDEsIDc1LCA3OSwgNzIsIDEyOCwgNzUsIDc5LCA3MSwgCi0gICAgNzIsIDc5LCA3NywgMTI4LCA3NSwgNzksIDY5LCA4NCwgMTI4LCA3NSwgNzksIDY1LCA3NiwgNjUsIDEyOCwgNzUsIDc5LCAKLSAgICA2NSwgMTI4LCA3NSwgNzgsIDczLCA3MSwgNzIsIDg0LCAxMjgsIDc1LCA3OCwgNzMsIDcxLCA3MiwgMjEyLCA3NSwgNzgsIAotICAgIDczLCA3MCwgNjksIDEyOCwgNzUsIDc4LCA3MywgNzAsIDE5NywgNzUsIDc3LCAxMjgsIDc1LCAyMDUsIDc1LCA3NiwgNzMsIAotICAgIDg0LCA3OSwgNzgsIDEyOCwgNzUsIDc2LCA2NSwgODMsIDc3LCA2NSwgMTI4LCA3NSwgNzYsIDY1LCA4MywgNzcsIDE5MywgCi0gICAgNzUsIDc2LCA2NSwgMTI4LCA3NSwgNzYsIDEyOCwgNzUsIDc1LCA4NSwgMTI4LCA3NSwgNzUsIDc5LCAxMjgsIDc1LCA3NSwgCi0gICAgNzMsIDEyOCwgNzUsIDc1LCA2OSwgNjksIDEyOCwgNzUsIDc1LCA2OSwgMTI4LCA3NSwgNzUsIDY1LCAxMjgsIDc1LCA3NSwgCi0gICAgMTI4LCA3NSwgNzQsIDY5LCAxMjgsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAKLSAgICAxMjgsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA4MywgNzMsIDc5LCA4MywgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgCi0gICAgNzUsIDEyOCwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgNDUsIDgyLCA3MywgNjksIDg1LCA3NiwgMTI4LCA3NSwgNzMsIDg5LCAKLSAgICA2OSwgNzksIDc1LCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA3OCwgCi0gICAgNzMsIDY5LCA4NSwgNzgsIDEyOCwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgNDUsIDc1LCA3MiwgNzMsIDY5LCA4NSwgNzUsIAotICAgIDcyLCAxMjgsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCA3MiwgMTI4LCA3NSwgCi0gICAgNzMsIDg5LCA2OSwgNzksIDIwMywgNzUsIDczLCA4OCwgMTI4LCA3NSwgNzMsIDg0LCAxMjgsIDc1LCA3MywgODMsIDgzLCAKLSAgICA3MywgNzgsIDE5OSwgNzUsIDczLCA4MywgODMsIDEyOCwgNzUsIDczLCA4MywgMjExLCA3NSwgNzMsIDgzLCA3MywgNzcsIAotICAgIDUzLCAxMjgsIDc1LCA3MywgODMsIDczLCA3NywgMTgxLCA3NSwgNzMsIDgzLCA3MiwgMTI4LCA3NSwgNzMsIDgzLCA2NSwgCi0gICAgNzYsIDEyOCwgNzUsIDczLCA4MiwgNzksIDg3LCA2NSwgODQsIDg0LCA3OSwgMTI4LCA3NSwgNzMsIDgyLCA3OSwgNzcsIDY5LCAKLSAgICA2OSwgODQsIDc5LCA4MiwgODUsIDEyOCwgNzUsIDczLCA4MiwgNzksIDcxLCA4NSwgODIsIDY1LCA3NywgODUsIDEyOCwgNzUsIAotICAgIDczLCA4MiwgNzksIDEyOCwgNzUsIDczLCA4MiwgNzEsIDcyLCA3MywgMjE4LCA3NSwgNzMsIDgxLCAxMjgsIDc1LCA3MywgCi0gICAgODAsIDEyOCwgNzUsIDczLCAyMDgsIDc1LCA3MywgNzgsIDgzLCA3MiwgNzMsIDgwLCAxMjgsIDc1LCA3MywgNzgsIDY4LCAKLSAgICA2OSwgODIsIDcxLCA2NSwgODIsIDg0LCA2OSwgNzgsIDEyOCwgNzUsIDczLCA3NywgNzksIDc4LCA3OSwgMTI4LCA3NSwgNzMsIAotICAgIDczLCAxMjgsIDc1LCA3MywgNzIsIDEyOCwgNzUsIDczLCA2OSwgODgsIDEyOCwgNzUsIDczLCA2OSwgODAsIDEyOCwgNzUsIAotICAgIDczLCA2OSwgNjksIDc3LCAxMjgsIDc1LCA3MywgNjksIDEyOCwgNzUsIDczLCA2OCwgMTI4LCA3NSwgNzMsIDE5NiwgNzUsIAotICAgIDczLCA2NywgNzUsIDEyOCwgNzUsIDcyLCA5MCwgMTI4LCA3NSwgNzIsIDg3LCA2NSwgNzMsIDEyOCwgNzUsIDcyLCA4NSwgCi0gICAgNjksIDc4LCA0NSwgNzYsIDg1LCAxOTcsIDc1LCA3MiwgODUsIDY5LCAyMDYsIDc1LCA3MiwgODUsIDY1LCA4NCwgMTI4LCAKLSAgICA3NSwgNzIsIDc5LCA4NSwgMTI4LCA3NSwgNzIsIDc5LCAyMTIsIDc1LCA3MiwgNzksIDc4LCAxMjgsIDc1LCA3MiwgNzksIAotICAgIDc3LCA4NSwgODQsIDEyOCwgNzUsIDcyLCA3OSwgMTI4LCA3NSwgNzIsIDIwNywgNzUsIDcyLCA3MywgODQsIDEyOCwgNzUsIAotICAgIDcyLCA3MywgNjksIDg1LCA3NSwgMjAwLCA3NSwgNzIsIDczLCAxMjgsIDc1LCA3MiwgNzIsIDc5LCAxMjgsIDc1LCA3MiwgCi0gICAgNzIsIDY1LCAxMjgsIDc1LCA3MiwgNjksIDg0LCA3MiwgMTI4LCA3NSwgNzIsIDY5LCA3MywgMTI4LCA3NSwgNzIsIDY5LCAKLSAgICA2OSwgMTI4LCA3NSwgNzIsIDY5LCAxMjgsIDc1LCA3MiwgNjUsIDgyLCA3OSwgODMsIDcyLCA4NCwgNzIsIDIwMSwgNzUsIAotICAgIDcyLCA2NSwgODIsIDEyOCwgNzUsIDcyLCA2NSwgODAsIDcyLCAxMjgsIDc1LCA3MiwgNjUsIDc4LCAxOTksIDc1LCA3MiwgCi0gICAgNjUsIDc4LCA2OCwgMTkzLCA3NSwgNzIsIDY1LCA3OCwgMTI4LCA3NSwgNzIsIDY1LCA3NywgODQsIDIwMSwgNzUsIDcyLCAKLSAgICA2NSwgNzUsIDY1LCA4MywgODMsIDczLCA2NSwgMjA2LCA3NSwgNzIsIDY1LCA3MywgMTI4LCA3NSwgNzIsIDY1LCA3MiwgCi0gICAgMTI4LCA3NSwgNzIsIDY1LCAyMDAsIDc1LCA3MiwgNjUsIDY1LCAxMjgsIDc1LCA3MSwgMTI4LCA3NSwgNjksIDg5LCA2NywgCi0gICAgNjUsIDgwLCAxMjgsIDc1LCA2OSwgODksIDY3LCA2NSwgMjA4LCA3NSwgNjksIDg5LCA2NiwgNzksIDY1LCA4MiwgNjgsIAotICAgIDEyOCwgNzUsIDY5LCA4OCwgMTI4LCA3NSwgNjksIDg1LCA4OSwgNjksIDg1LCA4OCwgMTI4LCA3NSwgNjksIDg1LCA4MywgCi0gICAgNzIsIDY5LCA4NSwgNjUsIDY5LCA4MCwgMTI4LCA3NSwgNjksIDg1LCA4MywgNjksIDg1LCA4OCwgMTI4LCA3NSwgNjksIDg1LCAKLSAgICA4MCwgODUsIDgxLCAxMjgsIDc1LCA2OSwgODUsIDc5LCAyMTIsIDc1LCA2OSwgODUsIDc3LCAxMjgsIDc1LCA2OSwgODUsIAotICAgIDc1LCA2OSwgODUsIDg0LCA3OCwgNjgsIDY1LCAxMjgsIDc1LCA2OSwgODUsIDc1LCA2NSwgODEsIDEyOCwgNzUsIDY5LCA4NSwgCi0gICAgNjUsIDY5LCA4NCwgNzcsIDY5LCA4NSwgNzgsIDEyOCwgNzUsIDY5LCA4NSwgNjUsIDY5LCA4MiwgNzMsIDEyOCwgNzUsIDY5LCAKLSAgICA4NCwgODQsIDIwMSwgNzUsIDY5LCA4MywgNzIsIDUwLCAxMjgsIDc1LCA2OSwgODIsIDY5LCA4NCwgMTI4LCA3NSwgNjksIAotICAgIDc5LCA4NywgMTI4LCA3NSwgNjksIDc4LCA4NCwgNzMsIDc3LCA2NSwgODQsIDY1LCAxMjgsIDc1LCA2OSwgNzgsIDg0LCA3MywgCi0gICAgNzcsIDY1LCA4NCwgMTkzLCA3NSwgNjksIDc4LCA4NCwgNzMsIDc3LCAxOTMsIDc1LCA2OSwgNzgsIDY1LCA4NCwgMTI4LCAKLSAgICA3NSwgNjksIDc4LCAxMjgsIDc1LCA2OSwgMjA2LCA3NSwgNjksIDc3LCA4MCwgODUsIDc2LCAxMjgsIDc1LCA2OSwgNzcsIAotICAgIDgwLCA4NSwgMjA0LCA3NSwgNjksIDc3LCA4MCwgNzYsIDczLCAxMjgsIDc1LCA2OSwgNzcsIDgwLCA3NiwgMjAxLCA3NSwgCi0gICAgNjksIDc3LCA4MCwgNzIsIDgyLCA2OSwgNzgsIDcxLCAxMjgsIDc1LCA2OSwgNzcsIDY2LCA2NSwgNzgsIDcxLCAxMjgsIDc1LCAKLSAgICA2OSwgNzYsIDg2LCA3MywgMjA2LCA3NSwgNjksIDcyLCA2OSwgNzIsIDEyOCwgNzUsIDY5LCA3MiwgNjksIDIwMCwgNzUsIAotICAgIDY5LCA3MiwgMTI4LCA3NSwgNjksIDcwLCA4NSwgNzYsIDY1LCAxMjgsIDc1LCA2OSwgNjksIDgzLCA4NSwgMTI4LCA3NSwgCi0gICAgNjksIDY5LCA4MCwgNzMsIDc4LCAxOTksIDc1LCA2OSwgNjksIDc4LCA3MSwgMTI4LCA3NSwgNjcsIDY1LCA3NiwgMTI4LCAKLSAgICA3NSwgNjYsIDEyOCwgNzUsIDY1LCA5MCwgNjUsIDc1LCAyMDAsIDc1LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIAotICAgIDc1LCA2NSwgODksIDY1LCAyMDAsIDc1LCA2NSwgODgsIDEyOCwgNzUsIDY1LCA4NywgNzMsIDEyOCwgNzUsIDY1LCA4NiwgCi0gICAgODksIDc1LCA2NSwgMTI4LCA3NSwgNjUsIDg1LCA3OCwgNjUsIDEyOCwgNzUsIDY1LCA4NSwgMjA2LCA3NSwgNjUsIDg0LCAKLSAgICA3OSwgMTI4LCA3NSwgNjUsIDg0LCA3MiwgNzMsIDgzLCA4NCwgNzMsIDEyOCwgNzUsIDY1LCA4NCwgNzIsIDY1LCA3NSwgCi0gICAgMTkzLCA3NSwgNjUsIDg0LCA2NSwgODYsIDY1LCA4MywgNzcsIDY1LCAxMjgsIDc1LCA2NSwgODQsIDY1LCA4NiwgMTkzLCAKLSAgICA3NSwgNjUsIDg0LCA2NSwgNzUsIDY1LCA3OCwgNjUsIDQ1LCA3MiwgNzMsIDgyLCA2NSwgNzEsIDY1LCA3OCwgMTkzLCA3NSwgCi0gICAgNjUsIDgzLCA4MiwgNjUsIDg0LCA2NSwgNzgsIDEyOCwgNzUsIDY1LCA4MywgODIsIDY1LCA4NCwgNjUsIDIwNiwgNzUsIDY1LCAKLSAgICA4MywgODIsIDY1LCAxMjgsIDc1LCA2NSwgODMsIDgyLCAxOTMsIDc1LCA2NSwgODMsIDc1LCA2NSwgNzYsIDEyOCwgNzUsIAotICAgIDY1LCA4MywgNzUsIDY1LCAyMDQsIDc1LCA2NSwgODMsIDcyLCA3NywgNzMsIDgyLCAyMDEsIDc1LCA2NSwgODIsIDgzLCA3MiwgCi0gICAgNjUsIDc4LCA2NSwgMTI4LCA3NSwgNjUsIDgyLCA3OSwgODIsIDczLCA3MywgMTI4LCA3NSwgNjUsIDgyLCAyMDcsIDc1LCAKLSAgICA2NSwgODIsIDY5LCAyMDYsIDc1LCA2NSwgODIsIDY1LCA4NCwgODQsIDc5LCAxMjgsIDc1LCA2NSwgODIsIDY1LCA3OCwgCi0gICAgMTI4LCA3NSwgNjUsIDgwLCA4OSwgNjksIDc5LCA4NSwgNzgsIDgzLCA4MywgNjUsIDc4LCA3MSwgODAsIDczLCA2OSwgODUsIAotICAgIDgwLCAxMjgsIDc1LCA2NSwgODAsIDg5LCA2OSwgNzksIDg1LCA3OCwgODIsIDczLCA2OSwgODUsIDc2LCAxMjgsIDc1LCA2NSwgCi0gICAgODAsIDg5LCA2OSwgNzksIDg1LCA3OCwgODAsIDcyLCA3MywgNjksIDg1LCA4MCwgNzIsIDEyOCwgNzUsIDY1LCA4MCwgODksIAotICAgIDY5LCA3OSwgODUsIDc4LCA3NywgNzMsIDY5LCA4NSwgNzcsIDEyOCwgNzUsIDY1LCA4MCwgODAsIDY1LCAxMjgsIDc1LCA2NSwgCi0gICAgODAsIDgwLCAxOTMsIDc1LCA2NSwgODAsIDc5LCAxMjgsIDc1LCA2NSwgODAsIDcyLCAxMjgsIDc1LCA2NSwgODAsIDY1LCAKLSAgICA3NiwgMTI4LCA3NSwgNjUsIDgwLCA2NSwgMTI4LCA3NSwgNjUsIDc4LCA4NCwgNjUsIDc0LCAxOTMsIDc1LCA2NSwgNzgsIAotICAgIDcxLCAxMjgsIDc1LCA2NSwgNzgsIDE5OSwgNzUsIDY1LCA3OCwgNjUsIDc1LCA3OSwgMTI4LCA3NSwgNjUsIDc3LCA1MiwgCi0gICAgMTI4LCA3NSwgNjUsIDc3LCA1MCwgMTI4LCA3NSwgNjUsIDc3LCAxMjgsIDc1LCA2NSwgNzUsIDc5LCAxMjgsIDc1LCA2NSwgCi0gICAgNzUsIDY1LCA2NiwgNjUsIDg0LCAxMjgsIDc1LCA2NSwgNzUsIDEyOCwgNzUsIDY1LCAyMDMsIDc1LCA2NSwgNzMsIDgyLCAKLSAgICA3MywgMTI4LCA3NSwgNjUsIDczLCAxMjgsIDc1LCA2NSwgMjAxLCA3NSwgNjUsIDcwLCA2NSwgMTI4LCA3NSwgNjUsIDcwLCAKLSAgICAxMjgsIDc1LCA2NSwgMTk4LCA3NSwgNjUsIDY4LCA1MywgMTI4LCA3NSwgNjUsIDY4LCAxODEsIDc1LCA2NSwgNjgsIDUyLCAKLSAgICAxMjgsIDc1LCA2NSwgNjgsIDUxLCAxMjgsIDc1LCA2NSwgNjgsIDE3OSwgNzUsIDY1LCA2OCwgNTAsIDEyOCwgNzUsIDY1LCAKLSAgICA2OCwgMTI4LCA3NSwgNjUsIDY2LCAxOTMsIDc1LCA2NSwgNjYsIDEyOCwgNzUsIDY1LCA2NSwgNzMsIDEyOCwgNzUsIDY1LCAKLSAgICA2NSwgNzAsIDg1LCAxMjgsIDc1LCA2NSwgNjUsIDcwLCAxMjgsIDc1LCA2NSwgNTAsIDEyOCwgNzUsIDY1LCAxNzgsIDc1LCAKLSAgICA0OCwgNDgsIDU2LCAxMjgsIDc1LCA0OCwgNDgsIDU1LCAxMjgsIDc1LCA0OCwgNDgsIDU0LCAxMjgsIDc1LCA0OCwgNDgsIAotICAgIDUzLCAxMjgsIDc1LCA0OCwgNDgsIDUyLCAxMjgsIDc1LCA0OCwgNDgsIDUxLCAxMjgsIDc1LCA0OCwgNDgsIDUwLCAxMjgsIAotICAgIDc1LCA0OCwgNDgsIDQ5LCAxMjgsIDc0LCA4NywgNjUsIDEyOCwgNzQsIDg1LCA4NSwgMTI4LCA3NCwgODUsIDg0LCAxMjgsIAotICAgIDc0LCA4NSwgODAsIDczLCA4NCwgNjksIDgyLCAxMjgsIDc0LCA4NSwgNzksIDg0LCAxMjgsIDc0LCA4NSwgNzksIDgwLCAKLSAgICAxMjgsIDc0LCA4NSwgNzgsIDc5LCAxMjgsIDc0LCA4NSwgNzgsIDY5LCAxMjgsIDc0LCA4NSwgNzYsIDg5LCAxMjgsIDc0LCAKLSAgICA4NSwgNjksIDg1LCA3MywgMTI4LCA3NCwgODUsIDY4LCA4NSwgNzYsIDEyOCwgNzQsIDg1LCA2OCwgNzEsIDY5LCAxMjgsIAotICAgIDc0LCA4NSwgNjgsIDY5LCA3OSwgNDUsIDgzLCA4MCwgNjUsIDc4LCA3MywgODMsIDIwMCwgNzQsIDc5LCA4OSwgNzksIDg1LCAKLSAgICAyMTEsIDc0LCA3OSwgODksIDEyOCwgNzQsIDc5LCA4NiwgNjksIDEyOCwgNzQsIDc5LCAyMTIsIDc0LCA3OSwgNzgsIDcxLCAKLSAgICAxMjgsIDc0LCA3OSwgNzgsIDE5MywgNzQsIDc5LCA3NSwgNjksIDgyLCAxMjgsIDc0LCA3OSwgNzMsIDc4LCA2OSwgNjgsIAotICAgIDEyOCwgNzQsIDc5LCA3MywgNzgsIDEyOCwgNzQsIDc5LCA2NSwgMTI4LCA3NCwgNzQsIDg5LCA4OCwgMTI4LCA3NCwgNzQsIAotICAgIDg5LCA4NCwgMTI4LCA3NCwgNzQsIDg5LCA4MCwgMTI4LCA3NCwgNzQsIDg5LCAxMjgsIDc0LCA3NCwgODUsIDg4LCAxMjgsIAotICAgIDc0LCA3NCwgODUsIDg0LCAxMjgsIDc0LCA3NCwgODUsIDgyLCA4OCwgMTI4LCA3NCwgNzQsIDg1LCA4MiwgMTI4LCA3NCwgCi0gICAgNzQsIDg1LCA4MCwgMTI4LCA3NCwgNzQsIDg1LCA3OSwgODgsIDEyOCwgNzQsIDc0LCA4NSwgNzksIDgwLCAxMjgsIDc0LCAKLSAgICA3NCwgODUsIDc5LCAxMjgsIDc0LCA3NCwgODUsIDEyOCwgNzQsIDc0LCA3OSwgODgsIDEyOCwgNzQsIDc0LCA3OSwgODQsIAotICAgIDEyOCwgNzQsIDc0LCA3OSwgODAsIDEyOCwgNzQsIDc0LCA3OSwgMTI4LCA3NCwgNzQsIDczLCA4OCwgMTI4LCA3NCwgNzQsIAotICAgIDczLCA4NCwgMTI4LCA3NCwgNzQsIDczLCA4MCwgMTI4LCA3NCwgNzQsIDczLCA2OSwgODgsIDEyOCwgNzQsIDc0LCA3MywgCi0gICAgNjksIDg0LCAxMjgsIDc0LCA3NCwgNzMsIDY5LCA4MCwgMTI4LCA3NCwgNzQsIDczLCA2OSwgMTI4LCA3NCwgNzQsIDczLCAKLSAgICAxMjgsIDc0LCA3NCwgNjksIDY5LCAxMjgsIDc0LCA3NCwgNjksIDEyOCwgNzQsIDc0LCA2NSwgMTI4LCA3NCwgNzMsIDc2LCAKLSAgICAxMjgsIDc0LCA3MywgNzIsIDg2LCA2NSwgNzcsIDg1LCA3NiwgNzMsIDg5LCA2NSwgMTI4LCA3NCwgNzMsIDY1LCAxMjgsIAotICAgIDc0LCA3MiwgNzksIDEyOCwgNzQsIDcyLCA2OSwgNzIsIDEyOCwgNzQsIDcyLCA2NSwgNzgsIDEyOCwgNzQsIDcyLCA2NSwgCi0gICAgNzcsIDEyOCwgNzQsIDcyLCA2NSwgMTI4LCA3NCwgNjksIDg1LCAxMjgsIDc0LCA2OSwgODIsIDg1LCA4MywgNjUsIDc2LCAKLSAgICA2OSwgNzcsIDEyOCwgNzQsIDY5LCA4MiwgNjUsIDIwNiwgNzQsIDY5LCA4MiwgNjUsIDEyOCwgNzQsIDY5LCA4MiwgMTI4LCAKLSAgICA3NCwgNjksIDcyLCAxMjgsIDc0LCA2OSwgMjAwLCA3NCwgNjksIDcxLCA3OSwgNzEsIDY1LCA3OCwgMTI4LCA3NCwgNjksIAotICAgIDY5LCA3NywgMTI4LCA3NCwgNjksIDY1LCA3OCwgODMsIDEyOCwgNzQsIDY1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgCi0gICAgNzQsIDY1LCA4NiwgNzMsIDg5LCA2NSwgNzgsIDczLCAxMjgsIDc0LCA2NSwgODIsIDEyOCwgNzQsIDY1LCA4MCwgNjUsIDc4LCAKLSAgICA2OSwgODMsIDE5NywgNzQsIDY1LCA4MCwgNjUsIDc4LCAxMjgsIDc0LCA2NSwgNzgsIDg1LCA2NSwgODIsIDg5LCAxMjgsIAotICAgIDc0LCA2NSwgNzYsIDc2LCA2NSwgNzQsIDY1LCA3NiwgNjUsIDc2LCA3OSwgODUsIDcyLCA3OSwgODUsIDEyOCwgNzQsIDY1LCAKLSAgICA2OCwgNjksIDEyOCwgNzQsIDY1LCA2NywgNzUsIDQ1LCA3OSwgNDUsIDc2LCA2NSwgNzgsIDg0LCA2OSwgODIsIDc4LCAxMjgsIAotICAgIDc0LCA2NSwgNjcsIDIwMywgNzQsIDQ1LCA4MywgNzMsIDc3LCA4MCwgNzYsIDczLCA3MCwgNzMsIDY5LCAxOTYsIDIwMiwgCi0gICAgNzMsIDkwLCA3MiwgNzMsIDg0LCA4MywgNjUsIDEyOCwgNzMsIDkwLCA3MiwgNzMsIDg0LCA4MywgMTkzLCA3MywgOTAsIDcyLCAKLSAgICA2OSwgMTI4LCA3MywgOTAsIDY1LCA3NSwgNjUsIDg5LCAxOTMsIDczLCA4OSwgNjksIDc1LCAxMjgsIDczLCA4OSwgNjUsIAotICAgIDc4LCA3OCwgNjUsIDEyOCwgNzMsIDg1LCA3NCwgNjUsIDEyOCwgNzMsIDg1LCAxMjgsIDczLCA4NCwgMjExLCA3MywgODQsIAotICAgIDY5LCA4MiwgNjUsIDg0LCA3MywgNzksIDIwNiwgNzMsIDg0LCA2OSwgNzcsIDEyOCwgNzMsIDgzLCA4MywgNzIsIDY1LCA4MiwgCi0gICAgMTI4LCA3MywgODMsIDc5LCA3OCwgMTI4LCA3MywgODMsIDc5LCAyMDYsIDczLCA4MywgNjksIDc4LCA0NSwgNzMsIDgzLCAKLSAgICA2OSwgNzgsIDEyOCwgNzMsIDgzLCA2NSwgNzUsIDczLCAxOTMsIDczLCA4MywgNDUsIDgwLCA3MywgNzYsIDc2LCA2NSwgCi0gICAgMTI4LCA3MywgODIsIDg1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzMsIDgyLCA4NSwgODUsIDg5LCA2NSwgNzgsIDc4LCAKLSAgICA2NSwgMTI4LCA3MywgODIsIDc5LCA3OCwgNDUsIDY3LCA3OSwgODAsIDgwLCA2OSwgMjEwLCA3MywgODIsIDc5LCA3OCwgCi0gICAgMTI4LCA3MywgNzksIDg0LCA3MywgNzAsIDczLCA2OSwgMTk2LCA3MywgNzksIDg0LCA2NSwgODQsIDY5LCAxOTYsIDczLCAKLSAgICA3OSwgODQsIDY1LCAxMjgsIDczLCA3OSwgODQsIDE5MywgNzMsIDc5LCA4MiwgMTI4LCA3MywgNzksIDY4LCA3MiwgNjUsIAotICAgIDY4LCA3MiwgMTI4LCA3MywgNzgsIDg2LCA3MywgODMsIDczLCA2NiwgNzYsIDE5NywgNzMsIDc4LCA4NiwgNjksIDgyLCA4NCwgCi0gICAgNjksIDY4LCAxMjgsIDczLCA3OCwgODYsIDY5LCA4MiwgODQsIDY5LCAxOTYsIDczLCA3OCwgODYsIDY5LCA4MiwgODMsIAotICAgIDE5NywgNzMsIDc4LCA4NCwgNzMsIDEyOCwgNzMsIDc4LCA4NCwgNjksIDgyLCA4MywgODksIDc2LCA3NiwgNjUsIDY2LCA3MywgCi0gICAgMTk1LCA3MywgNzgsIDg0LCA2OSwgODIsIDgzLCA2OSwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDczLCA3OCwgODQsIDY5LCAKLSAgICA4MiwgODMsIDY5LCA2NywgODQsIDczLCA3OSwgMjA2LCA3MywgNzgsIDg0LCA2OSwgODIsIDgzLCA2OSwgNjcsIDg0LCA3MywgCi0gICAgNzgsIDE5OSwgNzMsIDc4LCA4NCwgNjksIDgyLCA4MiwgNzksIDY2LCA2NSwgNzgsIDcxLCAxMjgsIDczLCA3OCwgODQsIDY5LCAKLSAgICA4MiwgODAsIDc5LCA3NiwgNjUsIDg0LCA3MywgNzksIDIwNiwgNzMsIDc4LCA4NCwgNjksIDgyLCA3NiwgNzksIDY3LCA3NSwgCi0gICAgNjksIDE5NiwgNzMsIDc4LCA4NCwgNjksIDgyLCA3NiwgNzMsIDc4LCA2OSwgNjUsIDIxMCwgNzMsIDc4LCA4NCwgNjksIDgyLCAKLSAgICA3NiwgNjUsIDY3LCA2OSwgMTk2LCA3MywgNzgsIDg0LCA2OSwgODIsIDczLCA3OSwgMjEwLCA3MywgNzgsIDg0LCA2OSwgODIsIAotICAgIDY5LCA4MywgMjEyLCA3MywgNzgsIDg0LCA2OSwgODIsIDY3LCA2NSwgNzYsIDY1LCA4NCwgNjksIDEyOCwgNzMsIDc4LCA4NCwgCi0gICAgNjksIDcxLCA4MiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDczLCA3OCwgODQsIDY5LCA3MSwgODIsIDY1LCA4NCwgNzMsIAotICAgIDc5LCAyMDYsIDczLCA3OCwgODQsIDY5LCA3MSwgODIsIDY1LCA3NiwgMTI4LCA3MywgNzgsIDg0LCA2OSwgNzEsIDgyLCA2NSwgCi0gICAgMjA0LCA3MywgNzgsIDgzLCA4NSwgNzYsIDY1LCAyMTAsIDczLCA3OCwgODMsIDg0LCA4MiwgODUsIDc3LCA2OSwgNzgsIDg0LCAKLSAgICA2NSwgMjA0LCA3MywgNzgsIDgzLCA3MywgNjgsIDY5LCAxMjgsIDczLCA3OCwgODMsIDY5LCA4MiwgODQsIDczLCA3OSwgCi0gICAgMjA2LCA3MywgNzgsIDgzLCA2OSwgNjcsIDg0LCAxMjgsIDczLCA3OCwgODMsIDY3LCA4MiwgNzMsIDgwLCA4NCwgNzMsIDc5LCAKLSAgICA3OCwgNjUsIDIwNCwgNzMsIDc4LCA4MCwgODUsIDIxMiwgNzMsIDc4LCA3OCwgNzksIDY3LCA2OSwgNzgsIDY3LCA2OSwgCi0gICAgMTI4LCA3MywgNzgsIDc4LCA3OCwgMTI4LCA3MywgNzgsIDc4LCA2OSwgODIsIDEyOCwgNzMsIDc4LCA3OCwgNjksIDIxMCwgCi0gICAgNzMsIDc4LCA3OCwgMTI4LCA3MywgNzgsIDczLCA3OCwgNzEsIDg1LCAxMjgsIDczLCA3OCwgNzMsIDEyOCwgNzMsIDc4LCAKLSAgICA3MiwgNzMsIDY2LCA3MywgMjEyLCA3MywgNzgsIDcyLCA2OSwgODIsIDY5LCA3OCwgMjEyLCA3MywgNzgsIDcxLCA4NywgNjUsIAotICAgIDkwLCAxMjgsIDczLCA3OCwgNzAsIDc5LCA4MiwgNzcsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDczLCA3OCwgNzAsIDc2LCA4NSwgCi0gICAgNjksIDc4LCA2NywgNjksIDEyOCwgNzMsIDc4LCA3MCwgNzMsIDc4LCA3MywgODQsIDg5LCAxMjgsIDczLCA3OCwgNzAsIDczLCAKLSAgICA3OCwgNzMsIDg0LCAyMTcsIDczLCA3OCwgNjgsIDg1LCA4MywgODQsIDgyLCA3MywgNjUsIDIwNCwgNzMsIDc4LCA2OCwgNzMsIAotICAgIDgyLCA2OSwgNjcsIDIxMiwgNzMsIDc4LCA2OCwgNzMsIDY3LCA2NSwgODQsIDc5LCA4MiwgMTI4LCA3MywgNzgsIDY4LCA3MywgCi0gICAgNjcsIDY1LCA4NCwgNzksIDIxMCwgNzMsIDc4LCA2OCwgNzMsIDE5NSwgNzMsIDc4LCA2OCwgNzMsIDY1LCAyMDYsIDczLCAKLSAgICA3OCwgNjgsIDY5LCA4OCwgMTI4LCA3MywgNzgsIDY4LCA2OSwgODAsIDY5LCA3OCwgNjgsIDY5LCA3OCwgMjEyLCA3MywgNzgsIAotICAgIDY3LCA4MiwgNjksIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDczLCA3OCwgNjcsIDgyLCA2OSwgNjUsIDgzLCA2OSwgMjExLCA3MywgCi0gICAgNzgsIDY3LCA4MiwgNjksIDY1LCA4MywgNjksIDEyOCwgNzMsIDc4LCA2NywgNzksIDc3LCA4MCwgNzYsIDY5LCA4NCwgMTk3LCAKLSAgICA3MywgNzgsIDY3LCA3OSwgNzcsIDczLCA3OCwgMTk5LCA3MywgNzgsIDY3LCA3NiwgODUsIDY4LCA3MywgNzgsIDE5OSwgNzMsIAotICAgIDc4LCA2NywgNzIsIDEyOCwgNzMsIDc4LCA2NiwgNzksIDIxNiwgNzMsIDc4LCA2NSwgODAsIDEyOCwgNzMsIDc4LCA0NSwgCi0gICAgNjUsIDc2LCA2NSwgNzAsIDEyOCwgNzMsIDc3LCA4MCwgNjksIDgyLCA3MywgNjUsIDIwNCwgNzMsIDc3LCA4MCwgNjksIDgyLCAKLSAgICA3MCwgNjksIDY3LCA4NCwgODUsIDIwNSwgNzMsIDc3LCA4MCwgNjksIDgyLCA3MCwgNjksIDY3LCA4NCwgNjUsIDEyOCwgNzMsIAotICAgIDc3LCA4MCwgNjksIDgyLCA3MCwgNjksIDY3LCA4NCwgMTkzLCA3MywgNzcsIDczLCA4MywgNjksIDc5LCAyMTEsIDczLCA3NywgCi0gICAgNzMsIDc4LCA1MSwgMTI4LCA3MywgNzcsIDczLCA3OCwgMTI4LCA3MywgNzcsIDczLCAyMDYsIDczLCA3NywgNzMsIDcwLCAKLSAgICA4NCwgNzIsIDc5LCA4MiwgNzksIDc4LCAxMjgsIDczLCA3NywgNzMsIDcwLCA4NCwgNzIsIDc5LCA4MiwgNjUsIDEyOCwgNzMsIAotICAgIDc3LCA3MywgNzAsIDc5LCA3OCwgNzksIDc4LCAxMjgsIDczLCA3NywgNzMsIDY4LCA3MywgNjUsIDgyLCA3MSwgNzksIDc4LCAKLSAgICAxMjgsIDczLCA3NywgNjUsIDcxLCAxOTcsIDczLCA3NiwgODUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MywgNzYsIAotICAgIDg1LCA4OSwgMTI4LCA3MywgNzYsIDg1LCA4NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDczLCA3NiwgODUsIDg0LCAKLSAgICAxMjgsIDczLCA3NiwgNzMsIDc3LCA3NywgODUsIDUyLCAxMjgsIDczLCA3NiwgNzMsIDc3LCA3NywgODUsIDUxLCAxMjgsIAotICAgIDczLCA3NiwgNzMsIDc3LCA3NywgODUsIDEyOCwgNzMsIDc2LCA3MywgNzcsIDc3LCAyMTMsIDczLCA3NiwgNTAsIDEyOCwgCi0gICAgNzMsIDc1LCA2NSwgODIsIDY1LCAxMjgsIDczLCA3NSwgNjUsIDgyLCAxOTMsIDczLCA3NCwgMTI4LCA3MywgNzMsIDg5LCAKLSAgICA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MywgNzEsIDczLCAxMjgsIDczLCA3MSwgMjAxLCA3MywgNzEsIDcxLCA4NywgODMsIAotICAgIDEyOCwgNzMsIDcwLCA3MywgNzgsIDEyOCwgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgODQsIDczLCA3NSwgNjksIDg1LCA4NCwgCi0gICAgMTI4LCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA4NCwgNzIsIDczLCA2OSwgODUsIDg0LCA3MiwgMTI4LCA3MywgNjksIDg1LCAKLSAgICA3OCwgNzEsIDQ1LCA4MywgODMsIDY1LCA3OCwgNzEsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgNzMsIDY5LCA4NSwgCi0gICAgNzgsIDcxLCA0NSwgODIsIDczLCA2OSwgODUsIDc2LCAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDgwLCA3MywgNjksIAotICAgIDg1LCA4MCwgMTI4LCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA4MCwgNzIsIDczLCA2OSwgODUsIDgwLCA3MiwgMTI4LCA3MywgCi0gICAgNjksIDg1LCA3OCwgNzEsIDQ1LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIAotICAgIDc1LCA3MiwgNzMsIDY5LCA4NSwgNzUsIDcyLCAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDY3LCA3MywgNjksIDg1LCAKLSAgICA2NywgMTI4LCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCA3MiwgMTI4LCA3MywgNjksIAotICAgIDg1LCA3OCwgMTk5LCA3MywgNjgsIDc2LCA2OSwgMTI4LCA3MywgNjgsIDczLCA3NywgMTI4LCA3MywgNjgsIDczLCAyMDUsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY4LCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDY4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA2OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDUyLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2OCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDY4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA2NywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDY5LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDY3LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA2NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDU2LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDY3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA2NywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDY2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA2NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDY3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA2NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDY2LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA2NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA1MywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDY2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA2NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDQ4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA3MCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDY1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA2NSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDY1LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDY1LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA2NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDUyLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA1MSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDY1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDY5LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDU3LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDU2LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDU3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDU2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDY3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA2NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDU2LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA1MywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDU2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDQ4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA3MCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDU1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDY1LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDU1LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDUyLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA1MSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDU1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDY3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU0LCA2NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDU0LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU0LCA1MywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDU0LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1NCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDQ4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA3MCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDUzLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1MywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDY1LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDUzLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1MywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDUyLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA1MSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDUzLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1MiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDY5LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDUyLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1MiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDU2LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDUyLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1MiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDUxLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1MSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDY3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA2NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDUxLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1MSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA1MywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDUxLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1MSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDQ4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDUwLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDU2LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDUwLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA1MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDQ5LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA0OSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDY3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA2NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDQ5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA0OSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA1MywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDQ5LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA0OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDQ4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA3MCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDQ4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA0OCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDY1LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDQ4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCAKLSAgICA0OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDUyLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNjUsIDQ4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA3MCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDY5LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDcwLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA3MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDU2LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDcwLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA3MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY5LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2OSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDY3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA2NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2OSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA1MywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY5LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDQ4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA3MCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2OCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDY1LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDUyLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2NywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDY5LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY3LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDU2LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2NywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDY3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA2NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY2LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA1MywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDQ4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA3MCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2NSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDY1LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY1LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA2NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDUyLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA1MSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDY1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDY5LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDU3LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDU2LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDU3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDU2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDY3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA2NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDU2LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA1MywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDU2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDQ4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA3MCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDU1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDY1LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDU1LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDUyLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA1MSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDU1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDY5LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDU0LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDU2LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDU0LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1NCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUzLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MywgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDY3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA2NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUzLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MywgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA1MywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUzLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MywgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDQ4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA3MCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUyLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MiwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDY1LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUyLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MiwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDUyLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA1MSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUyLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDY5LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUxLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDU2LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUxLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUwLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDY3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA2NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUwLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA1MywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDUwLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA1MCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDQ4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA3MCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDQ5LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA0OSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDY1LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDQ5LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA0OSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDUyLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA1MSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDQ5LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA0OCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDY5LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDQ4LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA0OCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDU2LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA3MCwgNTcsIDQ4LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCAKLSAgICA0OCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDU3LCA0OCwgNTIsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA1NiwgNjgsIDU1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTYsIDY3LCAKLSAgICA2NSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU2LCA1NywgNjksIDUxLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NSwgNjgsIDUyLCA1MCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTUsIDY1LCA1NSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDU1LCA1NywgNTYsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA1NSwgNTQsIDY4LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTUsIDUzLCAKLSAgICA1MSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU1LCA1MywgNDksIDcwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NSwgNDksIDUwLCA0OSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTUsIDQ4LCA2NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDU0LCA3MCwgNDksIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA1NCwgNjksIDU2LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDU1LCAKLSAgICA1MCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA1NSwgNDgsIDU3LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NCwgNTUsIDQ4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDU0LCA1MCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDU0LCA1MywgNjYsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA1NCwgNTMsIDU3LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDUzLCAKLSAgICA1MywgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA1MSwgNTMsIDUzLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NCwgNTEsIDQ4LCA1NSwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDUwLCA1NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDU0LCA1MCwgNTMsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA1NCwgNTAsIDUyLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDcwLCAKLSAgICA1NiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA2OCwgNjksIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNjYsIDU2LCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDY2LCA1MywgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUzLCA1NywgNTAsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA1MywgNTcsIDQ5LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDU2LCAKLSAgICA3MCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA1MywgNjYsIDU0LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNTIsIDUxLCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDUyLCA0OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUzLCA1MSwgNzAsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA1MywgNTEsIDY3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDUwLCAKLSAgICA2OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA1MCwgNTUsIDUwLCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNTAsIDUyLCA2OCwgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDUwLCA0OSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUzLCA0OSwgNTYsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIAotICAgIDQ1LCA1MiwgNjksIDY1LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTIsIDY5LCAKLSAgICA1NiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUyLCA2OSwgNTAsIDY4LCAxMjgsIAotICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MiwgNjksIDQ4LCA1NywgMTI4LCA3MywgNjgsIDY5LCAKLSAgICA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTIsIDY5LCA0OCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDY1LCA0OSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNjUsIDQ5LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIAotICAgIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCA1NSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDY1LCA0OSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNjUsIDQ5LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIAotICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNzAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA2OSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDY1LCA0OCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNjUsIDQ4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIAotICAgIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA1MywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDY1LCA0OCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDcwLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIAotICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNjgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA2NywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA3MCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDcwLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIAotICAgIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA1MSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA2OSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDY5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIAotICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNjYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA2NSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA2OSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDY5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIAotICAgIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA0OSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA2OCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDY4LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIAotICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNTcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA1NiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA2OCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDY4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIAotICAgIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA3MCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA2NywgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDY3LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIAotICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNTUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA1NCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA2NywgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDY3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIAotICAgIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA2OCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA2NiwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDY2LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIAotICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNTMsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA1MiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA2NSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDY1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIAotICAgIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA2NiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA2NSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDY1LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIAotICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNTEsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA1MCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1NywgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDU3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIAotICAgIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA1NywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1NywgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDU3LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIAotICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNDksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA0OCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1NiwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDU2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIAotICAgIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA1NSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1NiwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDU2LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIAotICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNzAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA2OSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1NSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDU1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIAotICAgIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA1MywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1NSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDU0LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIAotICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNjgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA2NywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1NCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDU0LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIAotICAgIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA1MSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1MywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDUzLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIAotICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNjYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA2NSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1MywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDUzLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIAotICAgIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA0OSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1MiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDUyLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIAotICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNTcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA1NiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1MiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDUyLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIAotICAgIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA3MCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1MSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDUxLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIAotICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNTUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA1NCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1MSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDUxLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIAotICAgIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA2OCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA1MCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDUwLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIAotICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNTMsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA1MiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA0OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDQ5LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIAotICAgIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA2NiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA0OSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDQ5LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIAotICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNTEsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA1MCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA0OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDQ4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIAotICAgIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA1NywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU3LCA0OCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTcsIDQ4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIAotICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNDksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA0OCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA3MCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDcwLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIAotICAgIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA1NSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA3MCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDcwLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIAotICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNzAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA2OSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA2OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDY5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIAotICAgIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA1MywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA2OSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDY4LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIAotICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNjgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA2NywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA2OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDY4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIAotICAgIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA1MSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA2NywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDY3LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIAotICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNjYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA2NSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA2NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDY3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIAotICAgIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA0OSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA2NiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDY2LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIAotICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNTcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA1NiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA2NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDY2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIAotICAgIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA3MCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA2NSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDY1LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIAotICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNTUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA1NCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA2NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDY1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIAotICAgIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA2OCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1NywgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDU3LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIAotICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNTMsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA1MiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDU2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIAotICAgIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNjcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA2NiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1NiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDU2LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIAotICAgIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNTEsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA1MCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDU1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIAotICAgIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNjUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA1NywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1NSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDU1LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIAotICAgIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNDksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA0OCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1NCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDU0LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIAotICAgIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNTYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA1NSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1NCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDU0LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIAotICAgIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNzAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA2OSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1MywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDUzLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIAotICAgIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNTQsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA1MywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1MywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDUyLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIAotICAgIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNjgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA2NywgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1MiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDUyLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIAotICAgIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNTIsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA1MSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1MSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDUxLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIAotICAgIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNjYsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA2NSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1MSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDUxLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIAotICAgIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNTAsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA0OSwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1MCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDUwLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIAotICAgIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNTcsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA1NiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA1MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDUwLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIAotICAgIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNDgsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA3MCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA0OSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDQ5LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIAotICAgIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNTUsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA1NCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA0OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDQ5LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIAotICAgIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNjksIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA2OCwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKLSAgICA1MCwgNzAsIDU2LCA0OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgCi0gICAgNTYsIDQ4LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIAotICAgIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNTMsIDEyOCwgCi0gICAgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA1MiwgMTI4LCA3MywgNjgsIAotICAgIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCAKLSAgICA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIAotICAgIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc4LCA4NCwgNzMsIDcwLCA3MywgNjcsIDY1LCAKLSAgICA4NCwgNzMsIDc5LCA3OCwgMTI4LCA3MywgNjgsIDY5LCA3OCwgODQsIDczLCA2NywgNjUsIDIwNCwgNzMsIDY3LCA3MiwgNzksIAotICAgIDg1LCAxMjgsIDczLCA2NywgNzIsIDc5LCA4MywgMTI4LCA3MywgNjcsIDcyLCA3MywgNzcsIDY1LCA4NCwgNzksIDgzLCAKLSAgICAxMjgsIDczLCA2NywgNzIsIDY1LCA2OCwgNzMsIDc4LCAxMjgsIDczLCA2NywgNjksIDc2LCA2NSwgNzgsIDY4LCA3MywgNjcsIAotICAgIDQ1LCA4OSwgODIsIDEyOCwgNzMsIDY2LCA3MywgNzAsIDczLCA3NiwgNzMsIDEyOCwgNzMsIDY1LCA4NSwgNjgsIDY1LCAKKyAgICA3NSwgODUsIDUxLCAxMjgsIDc1LCA4NSwgMTc5LCA3NSwgODQsIDEyOCwgNzUsIDgzLCA4MywgODUsIDg1LCAxMjgsIDc1LCAKKyAgICA4MywgODMsIDg1LCAxMjgsIDc1LCA4MywgODMsIDc5LCA3OSwgMTI4LCA3NSwgODMsIDgzLCA3OSwgMTI4LCA3NSwgODMsIAorICAgIDgzLCA3MywgNzMsIDEyOCwgNzUsIDgzLCA4MywgNzMsIDEyOCwgNzUsIDgzLCA4MywgNjksIDY5LCAxMjgsIDc1LCA4MywgCisgICAgODMsIDY5LCAxMjgsIDc1LCA4MywgODMsIDY1LCA4NSwgMTI4LCA3NSwgODMsIDgzLCA2NSwgNzMsIDEyOCwgNzUsIDgzLCAKKyAgICA4MywgNjUsIDY1LCAxMjgsIDc1LCA4MywgODMsIDY1LCAxMjgsIDc1LCA4MywgODMsIDEyOCwgNzUsIDgzLCA3MywgMTI4LCAKKyAgICA3NSwgODIsIDY5LCA3NywgNjUsIDgzLCA4NCwgNzMsIDEyOCwgNzUsIDgyLCA2NSwgODQsIDczLCA3NywgNzksIDg5LCA4MCwgCisgICAgNzksIDgyLCA4MiwgNzksIDc5LCA3OCwgMTI4LCA3NSwgODIsIDY1LCA4NCwgNzMsIDc3LCA3OSwgNzUsIDc5LCA4NSwgNzAsIAorICAgIDczLCA4MywgNzcsIDY1LCAxMjgsIDc1LCA4MiwgNjUsIDg0LCA3MywgNzcsIDY1LCA4NCwgNjUsIDEyOCwgNzUsIDgyLCA2NSwgCisgICAgODQsIDczLCA3NywgMTkzLCA3NSwgODAsIDg1LCAxMjgsIDc1LCA4MCwgNzksIDgxLCAxMjgsIDc1LCA4MCwgNzksIDc5LCAKKyAgICAxMjgsIDc1LCA4MCwgNzksIDEyOCwgNzUsIDgwLCA3MywgMTI4LCA3NSwgODAsIDY5LCA4NSwgODgsIDEyOCwgNzUsIDgwLCAKKyAgICA2OSwgNjksIDEyOCwgNzUsIDgwLCA2OSwgMTI4LCA3NSwgODAsIDY1LCA4MiwgNjUsIDgxLCAxMjgsIDc1LCA4MCwgNjUsIAorICAgIDc4LCAxMjgsIDc1LCA4MCwgNjUsIDEyOCwgNzUsIDc5LCA4OCwgMTI4LCA3NSwgNzksIDg2LCA4NSwgODUsIDEyOCwgNzUsIAorICAgIDc5LCA4NCwgNzksIDEyOCwgNzUsIDc5LCA4MiwgODUsIDc4LCA2NSwgMTI4LCA3NSwgNzksIDgyLCA3OSwgNzgsIDczLCA4MywgCisgICAgMTI4LCA3NSwgNzksIDgyLCA2OSwgNjUsIDIwNiwgNzUsIDc5LCA4MiwgNjUsIDc4LCA3MywgMTk1LCA3NSwgNzksIDgxLCAKKyAgICA3OCwgNjgsIDc5LCA3OCwgMTI4LCA3NSwgNzksIDgwLCA4MCwgNjUsIDEyOCwgNzUsIDc5LCA4MCwgMTI4LCA3NSwgNzksIAorICAgIDc5LCA4MCwgNzksIDEyOCwgNzUsIDc5LCA3OSwgNzcsIDg1LCA4NSwgODQsIDEyOCwgNzUsIDc5LCA3OSwgMTI4LCA3NSwgCisgICAgNzksIDc4LCA4NCwgNjksIDg2LCA3NywgNjUsIDEyOCwgNzUsIDc5LCA3OCwgODQsIDY5LCA4NiwgNzcsIDE5MywgNzUsIDc5LCAKKyAgICA3NywgMjAxLCA3NSwgNzksIDc3LCA2NiwgODUsIDg2LCA2NSwgMTI4LCA3NSwgNzksIDc3LCA2NiwgODUsIDg2LCAxOTMsIAorICAgIDc1LCA3OSwgNzcsIDY2LCAyMTMsIDc1LCA3OSwgNzUsIDc5LCAxMjgsIDc1LCA3OSwgNzUsIDEyOCwgNzUsIDc5LCAyMDMsIAorICAgIDc1LCA3OSwgNzMsIDEyOCwgNzUsIDc5LCAyMDEsIDc1LCA3OSwgNzIsIDEyOCwgNzUsIDc5LCA3MSwgNzIsIDc5LCA3NywgCisgICAgMTI4LCA3NSwgNzksIDY5LCA4NCwgMTI4LCA3NSwgNzksIDY1LCA3NiwgNjUsIDEyOCwgNzUsIDc5LCA2NSwgMTI4LCA3NSwgCisgICAgNzgsIDczLCA3MSwgNzIsIDg0LCAxMjgsIDc1LCA3OCwgNzMsIDcxLCA3MiwgMjEyLCA3NSwgNzgsIDczLCA3MCwgNjksIAorICAgIDEyOCwgNzUsIDc4LCA3MywgNzAsIDE5NywgNzUsIDc3LCAxMjgsIDc1LCAyMDUsIDc1LCA3NiwgNzMsIDg0LCA3OSwgNzgsIAorICAgIDEyOCwgNzUsIDc2LCA2NSwgODMsIDc3LCA2NSwgMTI4LCA3NSwgNzYsIDY1LCA4MywgNzcsIDE5MywgNzUsIDc2LCA2NSwgCisgICAgMTI4LCA3NSwgNzYsIDEyOCwgNzUsIDc1LCA4NSwgMTI4LCA3NSwgNzUsIDc5LCAxMjgsIDc1LCA3NSwgNzMsIDEyOCwgNzUsIAorICAgIDc1LCA2OSwgNjksIDEyOCwgNzUsIDc1LCA2OSwgMTI4LCA3NSwgNzUsIDY1LCAxMjgsIDc1LCA3NSwgMTI4LCA3NSwgNzQsIAorICAgIDY5LCAxMjgsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA4NCwgNzMsIDc1LCA2OSwgODUsIDg0LCAxMjgsIDc1LCA3MywgCisgICAgODksIDY5LCA3OSwgNzUsIDQ1LCA4MywgNzMsIDc5LCA4MywgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgNzUsIAorICAgIDczLCA4OSwgNjksIDc5LCA3NSwgNDUsIDgyLCA3MywgNjksIDg1LCA3NiwgMTI4LCA3NSwgNzMsIDg5LCA2OSwgNzksIDc1LCAKKyAgICA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA3OCwgNzMsIDY5LCA4NSwgCisgICAgNzgsIDEyOCwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgNDUsIDc1LCA3MiwgNzMsIDY5LCA4NSwgNzUsIDcyLCAxMjgsIDc1LCAKKyAgICA3MywgODksIDY5LCA3OSwgNzUsIDQ1LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCA3MiwgMTI4LCA3NSwgNzMsIDg5LCA2OSwgCisgICAgNzksIDIwMywgNzUsIDczLCA4OCwgMTI4LCA3NSwgNzMsIDg0LCAxMjgsIDc1LCA3MywgODMsIDgzLCA3MywgNzgsIDE5OSwgCisgICAgNzUsIDczLCA4MywgODMsIDEyOCwgNzUsIDczLCA4MywgMjExLCA3NSwgNzMsIDgzLCA3MywgNzcsIDUzLCAxMjgsIDc1LCAKKyAgICA3MywgODMsIDczLCA3NywgMTgxLCA3NSwgNzMsIDgzLCA3MiwgMTI4LCA3NSwgNzMsIDgzLCA2NSwgNzYsIDEyOCwgNzUsIAorICAgIDczLCA4MiwgNzksIDg3LCA2NSwgODQsIDg0LCA3OSwgMTI4LCA3NSwgNzMsIDgyLCA3OSwgNzcsIDY5LCA2OSwgODQsIDc5LCAKKyAgICA4MiwgODUsIDEyOCwgNzUsIDczLCA4MiwgNzksIDcxLCA4NSwgODIsIDY1LCA3NywgODUsIDEyOCwgNzUsIDczLCA4MiwgNzksIAorICAgIDEyOCwgNzUsIDczLCA4MiwgNzEsIDcyLCA3MywgMjE4LCA3NSwgNzMsIDgxLCAxMjgsIDc1LCA3MywgODAsIDEyOCwgNzUsIAorICAgIDczLCAyMDgsIDc1LCA3MywgNzgsIDgzLCA3MiwgNzMsIDgwLCAxMjgsIDc1LCA3MywgNzgsIDY4LCA2OSwgODIsIDcxLCA2NSwgCisgICAgODIsIDg0LCA2OSwgNzgsIDEyOCwgNzUsIDczLCA3NywgNzksIDc4LCA3OSwgMTI4LCA3NSwgNzMsIDczLCAxMjgsIDc1LCAKKyAgICA3MywgNzIsIDEyOCwgNzUsIDczLCA2OSwgODgsIDEyOCwgNzUsIDczLCA2OSwgODAsIDEyOCwgNzUsIDczLCA2OSwgNjksIAorICAgIDc3LCAxMjgsIDc1LCA3MywgNjksIDEyOCwgNzUsIDczLCA2OCwgMTI4LCA3NSwgNzMsIDE5NiwgNzUsIDczLCA2NywgNzUsIAorICAgIDEyOCwgNzUsIDcyLCA5MCwgMTI4LCA3NSwgNzIsIDg3LCA2NSwgNzMsIDEyOCwgNzUsIDcyLCA4NSwgNjksIDc4LCA0NSwgCisgICAgNzYsIDg1LCAxOTcsIDc1LCA3MiwgODUsIDY5LCAyMDYsIDc1LCA3MiwgODUsIDY1LCA4NCwgMTI4LCA3NSwgNzIsIDc5LCAKKyAgICA4NSwgMTI4LCA3NSwgNzIsIDc5LCAyMTIsIDc1LCA3MiwgNzksIDc4LCAxMjgsIDc1LCA3MiwgNzksIDc3LCA4NSwgODQsIAorICAgIDEyOCwgNzUsIDcyLCA3OSwgMTI4LCA3NSwgNzIsIDIwNywgNzUsIDcyLCA3MywgODQsIDEyOCwgNzUsIDcyLCA3MywgNzgsIAorICAgIDg5LCA2NSwgMTI4LCA3NSwgNzIsIDczLCA2OSwgODUsIDc1LCAyMDAsIDc1LCA3MiwgNzMsIDEyOCwgNzUsIDcyLCA3MiwgCisgICAgNzksIDEyOCwgNzUsIDcyLCA3MiwgNjUsIDEyOCwgNzUsIDcyLCA2OSwgODQsIDcyLCAxMjgsIDc1LCA3MiwgNjksIDczLCAKKyAgICAxMjgsIDc1LCA3MiwgNjksIDY5LCAxMjgsIDc1LCA3MiwgNjksIDEyOCwgNzUsIDcyLCA2NSwgODIsIDc5LCA4MywgNzIsIAorICAgIDg0LCA3MiwgMjAxLCA3NSwgNzIsIDY1LCA4MiwgMTI4LCA3NSwgNzIsIDY1LCA4MCwgNzIsIDEyOCwgNzUsIDcyLCA2NSwgCisgICAgNzgsIDE5OSwgNzUsIDcyLCA2NSwgNzgsIDY4LCAxOTMsIDc1LCA3MiwgNjUsIDc4LCAxMjgsIDc1LCA3MiwgNjUsIDc3LCAKKyAgICA4NCwgMjAxLCA3NSwgNzIsIDY1LCA3NSwgNjUsIDgzLCA4MywgNzMsIDY1LCAyMDYsIDc1LCA3MiwgNjUsIDczLCAxMjgsIAorICAgIDc1LCA3MiwgNjUsIDcyLCAxMjgsIDc1LCA3MiwgNjUsIDIwMCwgNzUsIDcyLCA2NSwgNjUsIDEyOCwgNzUsIDcxLCAxMjgsIAorICAgIDc1LCA2OSwgODksIDY3LCA2NSwgODAsIDEyOCwgNzUsIDY5LCA4OSwgNjcsIDY1LCAyMDgsIDc1LCA2OSwgODksIDY2LCA3OSwgCisgICAgNjUsIDgyLCA2OCwgMTI4LCA3NSwgNjksIDg4LCAxMjgsIDc1LCA2OSwgODUsIDg5LCA2OSwgODUsIDg4LCAxMjgsIDc1LCAKKyAgICA2OSwgODUsIDgzLCA3MiwgNjksIDg1LCA2NSwgNjksIDgwLCAxMjgsIDc1LCA2OSwgODUsIDgzLCA2OSwgODUsIDg4LCAxMjgsIAorICAgIDc1LCA2OSwgODUsIDgwLCA4NSwgODEsIDEyOCwgNzUsIDY5LCA4NSwgNzksIDIxMiwgNzUsIDY5LCA4NSwgNzcsIDEyOCwgCisgICAgNzUsIDY5LCA4NSwgNzUsIDY5LCA4NSwgODQsIDc4LCA2OCwgNjUsIDEyOCwgNzUsIDY5LCA4NSwgNzUsIDY1LCA4MSwgMTI4LCAKKyAgICA3NSwgNjksIDg1LCA2NSwgNjksIDg0LCA3NywgNjksIDg1LCA3OCwgMTI4LCA3NSwgNjksIDg1LCA2NSwgNjksIDgyLCA3MywgCisgICAgMTI4LCA3NSwgNjksIDg0LCA4NCwgMjAxLCA3NSwgNjksIDgzLCA3MiwgNTAsIDEyOCwgNzUsIDY5LCA4MiwgNjksIDg0LCAKKyAgICAxMjgsIDc1LCA2OSwgNzksIDg3LCAxMjgsIDc1LCA2OSwgNzgsIDg0LCA3MywgNzcsIDY1LCA4NCwgNjUsIDEyOCwgNzUsIAorICAgIDY5LCA3OCwgODQsIDczLCA3NywgNjUsIDg0LCAxOTMsIDc1LCA2OSwgNzgsIDg0LCA3MywgNzcsIDE5MywgNzUsIDY5LCA3OCwgCisgICAgNjUsIDg0LCAxMjgsIDc1LCA2OSwgNzgsIDEyOCwgNzUsIDY5LCAyMDYsIDc1LCA2OSwgNzcsIDgwLCA4NSwgNzYsIDEyOCwgCisgICAgNzUsIDY5LCA3NywgODAsIDg1LCAyMDQsIDc1LCA2OSwgNzcsIDgwLCA3NiwgNzMsIDEyOCwgNzUsIDY5LCA3NywgODAsIDc2LCAKKyAgICAyMDEsIDc1LCA2OSwgNzcsIDgwLCA3MiwgODIsIDY5LCA3OCwgNzEsIDEyOCwgNzUsIDY5LCA3NywgNjYsIDY1LCA3OCwgNzEsIAorICAgIDEyOCwgNzUsIDY5LCA3NiwgODYsIDczLCAyMDYsIDc1LCA2OSwgNzIsIDY5LCA3MiwgMTI4LCA3NSwgNjksIDcyLCA2OSwgCisgICAgMjAwLCA3NSwgNjksIDcyLCAxMjgsIDc1LCA2OSwgNzAsIDg1LCA3NiwgNjUsIDEyOCwgNzUsIDY5LCA2OSwgODMsIDg1LCAKKyAgICAxMjgsIDc1LCA2OSwgNjksIDgwLCA3MywgNzgsIDE5OSwgNzUsIDY5LCA2OSwgNzgsIDcxLCAxMjgsIDc1LCA2NywgNjUsIAorICAgIDc2LCAxMjgsIDc1LCA2NiwgMTI4LCA3NSwgNjUsIDkwLCA2NSwgNzUsIDIwMCwgNzUsIDY1LCA4OSwgNjUsIDc4LCA3OCwgCisgICAgNjUsIDEyOCwgNzUsIDY1LCA4OSwgNjUsIDIwMCwgNzUsIDY1LCA4OCwgMTI4LCA3NSwgNjUsIDg3LCA3MywgMTI4LCA3NSwgCisgICAgNjUsIDg2LCA4OSwgNzUsIDY1LCAxMjgsIDc1LCA2NSwgODUsIDc4LCA2NSwgMTI4LCA3NSwgNjUsIDg1LCAyMDYsIDc1LCAKKyAgICA2NSwgODUsIDEyOCwgNzUsIDY1LCA4NCwgNzksIDEyOCwgNzUsIDY1LCA4NCwgNzIsIDczLCA4MywgODQsIDczLCAxMjgsIAorICAgIDc1LCA2NSwgODQsIDcyLCA2NSwgNzUsIDE5MywgNzUsIDY1LCA4NCwgNjUsIDg2LCA2NSwgODMsIDc3LCA2NSwgMTI4LCA3NSwgCisgICAgNjUsIDg0LCA2NSwgODYsIDE5MywgNzUsIDY1LCA4NCwgNjUsIDc1LCA2NSwgNzgsIDY1LCA0NSwgNzIsIDczLCA4MiwgNjUsIAorICAgIDcxLCA2NSwgNzgsIDE5MywgNzUsIDY1LCA4MywgODIsIDY1LCA4NCwgNjUsIDc4LCAxMjgsIDc1LCA2NSwgODMsIDgyLCA2NSwgCisgICAgODQsIDY1LCAyMDYsIDc1LCA2NSwgODMsIDgyLCA2NSwgMTI4LCA3NSwgNjUsIDgzLCA4MiwgMTkzLCA3NSwgNjUsIDgzLCAKKyAgICA3NSwgNjUsIDc2LCAxMjgsIDc1LCA2NSwgODMsIDc1LCA2NSwgMjA0LCA3NSwgNjUsIDgzLCA3MiwgNzcsIDczLCA4MiwgCisgICAgMjAxLCA3NSwgNjUsIDgyLCA4MywgNzIsIDY1LCA3OCwgNjUsIDEyOCwgNzUsIDY1LCA4MiwgNzksIDgyLCA3MywgNzMsIAorICAgIDEyOCwgNzUsIDY1LCA4MiwgMjA3LCA3NSwgNjUsIDgyLCA2OSwgMjA2LCA3NSwgNjUsIDgyLCA2NSwgODQsIDg0LCA3OSwgCisgICAgMTI4LCA3NSwgNjUsIDgyLCA2NSwgNzgsIDEyOCwgNzUsIDY1LCA4MCwgODksIDY5LCA3OSwgODUsIDc4LCA4MywgODMsIDY1LCAKKyAgICA3OCwgNzEsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA3NSwgNjUsIDgwLCA4OSwgNjksIDc5LCA4NSwgNzgsIDgyLCA3MywgCisgICAgNjksIDg1LCA3NiwgMTI4LCA3NSwgNjUsIDgwLCA4OSwgNjksIDc5LCA4NSwgNzgsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIAorICAgIDcyLCAxMjgsIDc1LCA2NSwgODAsIDg5LCA2OSwgNzksIDg1LCA3OCwgNzcsIDczLCA2OSwgODUsIDc3LCAxMjgsIDc1LCA2NSwgCisgICAgODAsIDgwLCA2NSwgMTI4LCA3NSwgNjUsIDgwLCA4MCwgMTkzLCA3NSwgNjUsIDgwLCA3OSwgMTI4LCA3NSwgNjUsIDgwLCAKKyAgICA3MiwgMTI4LCA3NSwgNjUsIDgwLCA2NSwgNzYsIDEyOCwgNzUsIDY1LCA4MCwgNjUsIDEyOCwgNzUsIDY1LCA3OCwgODQsIAorICAgIDY1LCA3NCwgMTkzLCA3NSwgNjUsIDc4LCA3MSwgMTI4LCA3NSwgNjUsIDc4LCAxOTksIDc1LCA2NSwgNzgsIDY1LCA3NSwgCisgICAgNzksIDEyOCwgNzUsIDY1LCA3NywgNTIsIDEyOCwgNzUsIDY1LCA3NywgNTAsIDEyOCwgNzUsIDY1LCA3NywgMTI4LCA3NSwgCisgICAgNjUsIDc1LCA3OSwgMTI4LCA3NSwgNjUsIDc1LCA2NSwgNjYsIDY1LCA4NCwgMTI4LCA3NSwgNjUsIDc1LCAxMjgsIDc1LCAKKyAgICA2NSwgMjAzLCA3NSwgNjUsIDczLCA4NCwgNzIsIDIwMSwgNzUsIDY1LCA3MywgODIsIDczLCAxMjgsIDc1LCA2NSwgNzMsIAorICAgIDEyOCwgNzUsIDY1LCAyMDEsIDc1LCA2NSwgNzAsIDY1LCAxMjgsIDc1LCA2NSwgNzAsIDEyOCwgNzUsIDY1LCAxOTgsIDc1LCAKKyAgICA2NSwgNjgsIDUzLCAxMjgsIDc1LCA2NSwgNjgsIDE4MSwgNzUsIDY1LCA2OCwgNTIsIDEyOCwgNzUsIDY1LCA2OCwgNTEsIAorICAgIDEyOCwgNzUsIDY1LCA2OCwgMTc5LCA3NSwgNjUsIDY4LCA1MCwgMTI4LCA3NSwgNjUsIDY4LCAxMjgsIDc1LCA2NSwgNjYsIAorICAgIDE5MywgNzUsIDY1LCA2NiwgMTI4LCA3NSwgNjUsIDY1LCA3MywgMTI4LCA3NSwgNjUsIDY1LCA3MCwgODUsIDEyOCwgNzUsIAorICAgIDY1LCA2NSwgNzAsIDEyOCwgNzUsIDY1LCA1MCwgMTI4LCA3NSwgNjUsIDE3OCwgNzUsIDQ4LCA0OCwgNTYsIDEyOCwgNzUsIAorICAgIDQ4LCA0OCwgNTUsIDEyOCwgNzUsIDQ4LCA0OCwgNTQsIDEyOCwgNzUsIDQ4LCA0OCwgNTMsIDEyOCwgNzUsIDQ4LCA0OCwgCisgICAgNTIsIDEyOCwgNzUsIDQ4LCA0OCwgNTEsIDEyOCwgNzUsIDQ4LCA0OCwgNTAsIDEyOCwgNzUsIDQ4LCA0OCwgNDksIDEyOCwgCisgICAgNzQsIDg3LCA2NSwgMTI4LCA3NCwgODUsIDg1LCAxMjgsIDc0LCA4NSwgODQsIDEyOCwgNzQsIDg1LCA4MCwgNzMsIDg0LCAKKyAgICA2OSwgODIsIDEyOCwgNzQsIDg1LCA3OSwgODQsIDEyOCwgNzQsIDg1LCA3OSwgODAsIDEyOCwgNzQsIDg1LCA3OCwgNzksIAorICAgIDEyOCwgNzQsIDg1LCA3OCwgNjksIDEyOCwgNzQsIDg1LCA3NiwgODksIDEyOCwgNzQsIDg1LCA2OSwgODUsIDczLCAxMjgsIAorICAgIDc0LCA4NSwgNjgsIDg1LCA3NiwgMTI4LCA3NCwgODUsIDY4LCA3MSwgNjksIDEyOCwgNzQsIDg1LCA2OCwgNjksIDc5LCA0NSwgCisgICAgODMsIDgwLCA2NSwgNzgsIDczLCA4MywgMjAwLCA3NCwgNzksIDg5LCA3OSwgODUsIDIxMSwgNzQsIDc5LCA4OSwgMTI4LCAKKyAgICA3NCwgNzksIDg2LCA2OSwgMTI4LCA3NCwgNzksIDIxMiwgNzQsIDc5LCA3OCwgNzEsIDEyOCwgNzQsIDc5LCA3OCwgMTkzLCAKKyAgICA3NCwgNzksIDc1LCA2OSwgODIsIDEyOCwgNzQsIDc5LCA3MywgNzgsIDY5LCA2OCwgMTI4LCA3NCwgNzksIDczLCA3OCwgCisgICAgMTI4LCA3NCwgNzksIDY1LCAxMjgsIDc0LCA3NCwgODksIDg4LCAxMjgsIDc0LCA3NCwgODksIDg0LCAxMjgsIDc0LCA3NCwgCisgICAgODksIDgwLCAxMjgsIDc0LCA3NCwgODksIDEyOCwgNzQsIDc0LCA4NSwgODgsIDEyOCwgNzQsIDc0LCA4NSwgODQsIDEyOCwgCisgICAgNzQsIDc0LCA4NSwgODIsIDg4LCAxMjgsIDc0LCA3NCwgODUsIDgyLCAxMjgsIDc0LCA3NCwgODUsIDgwLCAxMjgsIDc0LCAKKyAgICA3NCwgODUsIDc5LCA4OCwgMTI4LCA3NCwgNzQsIDg1LCA3OSwgODAsIDEyOCwgNzQsIDc0LCA4NSwgNzksIDEyOCwgNzQsIAorICAgIDc0LCA4NSwgMTI4LCA3NCwgNzQsIDc5LCA4OCwgMTI4LCA3NCwgNzQsIDc5LCA4NCwgMTI4LCA3NCwgNzQsIDc5LCA4MCwgCisgICAgMTI4LCA3NCwgNzQsIDc5LCAxMjgsIDc0LCA3NCwgNzMsIDg4LCAxMjgsIDc0LCA3NCwgNzMsIDg0LCAxMjgsIDc0LCA3NCwgCisgICAgNzMsIDgwLCAxMjgsIDc0LCA3NCwgNzMsIDY5LCA4OCwgMTI4LCA3NCwgNzQsIDczLCA2OSwgODQsIDEyOCwgNzQsIDc0LCAKKyAgICA3MywgNjksIDgwLCAxMjgsIDc0LCA3NCwgNzMsIDY5LCAxMjgsIDc0LCA3NCwgNzMsIDEyOCwgNzQsIDc0LCA2OSwgNjksIAorICAgIDEyOCwgNzQsIDc0LCA2OSwgMTI4LCA3NCwgNzQsIDY1LCAxMjgsIDc0LCA3MywgNzYsIDEyOCwgNzQsIDczLCA3MywgMTI4LCAKKyAgICA3NCwgNzMsIDcyLCA4NiwgNjUsIDc3LCA4NSwgNzYsIDczLCA4OSwgNjUsIDEyOCwgNzQsIDczLCA2NSwgMTI4LCA3NCwgNzIsIAorICAgIDc5LCAxMjgsIDc0LCA3MiwgNjksIDcyLCAxMjgsIDc0LCA3MiwgNjUsIDc4LCAxMjgsIDc0LCA3MiwgNjUsIDc3LCAxMjgsIAorICAgIDc0LCA3MiwgNjUsIDEyOCwgNzQsIDY5LCA4NSwgMTI4LCA3NCwgNjksIDgyLCA4NSwgODMsIDY1LCA3NiwgNjksIDc3LCAKKyAgICAxMjgsIDc0LCA2OSwgODIsIDY1LCAyMDYsIDc0LCA2OSwgODIsIDY1LCAxMjgsIDc0LCA2OSwgODIsIDEyOCwgNzQsIDY5LCAKKyAgICA3MiwgMTI4LCA3NCwgNjksIDIwMCwgNzQsIDY5LCA3MSwgNzksIDcxLCA2NSwgNzgsIDEyOCwgNzQsIDY5LCA2OSwgNzcsIAorICAgIDEyOCwgNzQsIDY5LCA2NSwgNzgsIDgzLCAxMjgsIDc0LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDc0LCA2NSwgCisgICAgODYsIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA3NCwgNjUsIDg1LCAxMjgsIDc0LCA2NSwgODIsIDEyOCwgNzQsIDY1LCAKKyAgICA4MCwgNjUsIDc4LCA2OSwgODMsIDE5NywgNzQsIDY1LCA4MCwgNjUsIDc4LCAxMjgsIDc0LCA2NSwgNzgsIDg1LCA2NSwgODIsIAorICAgIDg5LCAxMjgsIDc0LCA2NSwgNzYsIDc2LCA2NSwgNzQsIDY1LCA3NiwgNjUsIDc2LCA3OSwgODUsIDcyLCA3OSwgODUsIDEyOCwgCisgICAgNzQsIDY1LCA3MywgMTI4LCA3NCwgNjUsIDY4LCA2OSwgMTI4LCA3NCwgNjUsIDY3LCA3NSwgNDUsIDc5LCA0NSwgNzYsIDY1LCAKKyAgICA3OCwgODQsIDY5LCA4MiwgNzgsIDEyOCwgNzQsIDY1LCA2NywgMjAzLCA3NCwgNDUsIDgzLCA3MywgNzcsIDgwLCA3NiwgNzMsIAorICAgIDcwLCA3MywgNjksIDE5NiwgMjAyLCA3MywgOTAsIDcyLCA3MywgODQsIDgzLCA2NSwgMTI4LCA3MywgOTAsIDcyLCA3MywgCisgICAgODQsIDgzLCAxOTMsIDczLCA5MCwgNzIsIDY5LCAxMjgsIDczLCA5MCwgNjUsIDc1LCA2NSwgODksIDE5MywgNzMsIDg5LCAKKyAgICA2OSwgNzUsIDEyOCwgNzMsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MywgODUsIDc0LCA2NSwgMTI4LCA3MywgODUsIAorICAgIDEyOCwgNzMsIDg0LCAyMTEsIDczLCA4NCwgNjksIDgyLCA2NSwgODQsIDczLCA3OSwgMjA2LCA3MywgODQsIDY5LCA3NywgCisgICAgMTI4LCA3MywgODMsIDgzLCA3MiwgNjUsIDgyLCAxMjgsIDczLCA4MywgNzksIDc4LCAxMjgsIDczLCA4MywgNzksIDIwNiwgCisgICAgNzMsIDgzLCA2OSwgNzgsIDQ1LCA3MywgODMsIDY5LCA3OCwgMTI4LCA3MywgODMsIDY1LCA3NSwgNzMsIDE5MywgNzMsIDgzLCAKKyAgICA0NSwgODAsIDczLCA3NiwgNzYsIDY1LCAxMjgsIDczLCA4MiwgODUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MywgODIsIAorICAgIDg1LCA4NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDczLCA4MiwgNzksIDc4LCA0NSwgNjcsIDc5LCA4MCwgODAsIDY5LCAKKyAgICAyMTAsIDczLCA4MiwgNzksIDc4LCAxMjgsIDczLCA3OSwgODQsIDczLCA3MCwgNzMsIDY5LCAxOTYsIDczLCA3OSwgODQsIAorICAgIDY1LCA4NCwgNjksIDE5NiwgNzMsIDc5LCA4NCwgNjUsIDEyOCwgNzMsIDc5LCA4NCwgMTkzLCA3MywgNzksIDgyLCAxMjgsIAorICAgIDczLCA3OSwgNjgsIDcyLCA2NSwgNjgsIDcyLCAxMjgsIDczLCA3OCwgODYsIDczLCA4MywgNzMsIDY2LCA3NiwgMTk3LCA3MywgCisgICAgNzgsIDg2LCA2OSwgODIsIDg0LCA2OSwgNjgsIDEyOCwgNzMsIDc4LCA4NiwgNjksIDgyLCA4NCwgNjksIDE5NiwgNzMsIDc4LCAKKyAgICA4NiwgNjksIDgyLCA4MywgMTk3LCA3MywgNzgsIDg0LCA3MywgMTI4LCA3MywgNzgsIDg0LCA2OSwgODIsIDgzLCA4OSwgNzYsIAorICAgIDc2LCA2NSwgNjYsIDczLCAxOTUsIDczLCA3OCwgODQsIDY5LCA4MiwgODMsIDY5LCA2NywgODQsIDczLCA3OSwgNzgsIDEyOCwgCisgICAgNzMsIDc4LCA4NCwgNjksIDgyLCA4MywgNjksIDY3LCA4NCwgNzMsIDc5LCAyMDYsIDczLCA3OCwgODQsIDY5LCA4MiwgODMsIAorICAgIDY5LCA2NywgODQsIDczLCA3OCwgMTk5LCA3MywgNzgsIDg0LCA2OSwgODIsIDgyLCA3OSwgNjYsIDY1LCA3OCwgNzEsIDEyOCwgCisgICAgNzMsIDc4LCA4NCwgNjksIDgyLCA4MCwgNzksIDc2LCA2NSwgODQsIDczLCA3OSwgMjA2LCA3MywgNzgsIDg0LCA2OSwgODIsIAorICAgIDc2LCA3OSwgNjcsIDc1LCA2OSwgMTk2LCA3MywgNzgsIDg0LCA2OSwgODIsIDc2LCA3MywgNzgsIDY5LCA2NSwgMjEwLCA3MywgCisgICAgNzgsIDg0LCA2OSwgODIsIDc2LCA2NSwgNjcsIDY5LCAxOTYsIDczLCA3OCwgODQsIDY5LCA4MiwgNzMsIDc5LCAyMTAsIDczLCAKKyAgICA3OCwgODQsIDY5LCA4MiwgNjksIDgzLCAyMTIsIDczLCA3OCwgODQsIDY5LCA4MiwgNjcsIDY1LCA3NiwgNjUsIDg0LCA2OSwgCisgICAgMTI4LCA3MywgNzgsIDg0LCA2OSwgNzEsIDgyLCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNzMsIDc4LCA4NCwgNjksIDcxLCAKKyAgICA4MiwgNjUsIDg0LCA3MywgNzksIDIwNiwgNzMsIDc4LCA4NCwgNjksIDcxLCA4MiwgNjUsIDc2LCAxMjgsIDczLCA3OCwgODQsIAorICAgIDY5LCA3MSwgODIsIDY1LCAyMDQsIDczLCA3OCwgODMsIDg1LCA3NiwgNjUsIDIxMCwgNzMsIDc4LCA4MywgODQsIDgyLCA4NSwgCisgICAgNzcsIDY5LCA3OCwgODQsIDY1LCAyMDQsIDczLCA3OCwgODMsIDczLCA2OCwgNjksIDEyOCwgNzMsIDc4LCA4MywgNjksIDgyLCAKKyAgICA4NCwgNzMsIDc5LCAyMDYsIDczLCA3OCwgODMsIDY5LCA2NywgODQsIDEyOCwgNzMsIDc4LCA4MywgNjcsIDgyLCA3MywgODAsIAorICAgIDg0LCA3MywgNzksIDc4LCA2NSwgMjA0LCA3MywgNzgsIDgwLCA4NSwgMjEyLCA3MywgNzgsIDc4LCA3OSwgNjcsIDY5LCA3OCwgCisgICAgNjcsIDY5LCAxMjgsIDczLCA3OCwgNzgsIDc4LCAxMjgsIDczLCA3OCwgNzgsIDY5LCA4MiwgMTI4LCA3MywgNzgsIDc4LCAKKyAgICA2OSwgMjEwLCA3MywgNzgsIDc4LCAxMjgsIDczLCA3OCwgNzMsIDc4LCA3MSwgODUsIDEyOCwgNzMsIDc4LCA3MywgMTI4LCAKKyAgICA3MywgNzgsIDcyLCA3MywgNjYsIDczLCAyMTIsIDczLCA3OCwgNzIsIDY5LCA4MiwgNjksIDc4LCAyMTIsIDczLCA3OCwgNzEsIAorICAgIDg3LCA2NSwgOTAsIDEyOCwgNzMsIDc4LCA3MCwgNzksIDgyLCA3NywgNjUsIDg0LCA3MywgNzksIDIwNiwgNzMsIDc4LCA3MCwgCisgICAgNzYsIDg1LCA2OSwgNzgsIDY3LCA2OSwgMTI4LCA3MywgNzgsIDcwLCA3MywgNzgsIDczLCA4NCwgODksIDEyOCwgNzMsIDc4LCAKKyAgICA3MCwgNzMsIDc4LCA3MywgODQsIDIxNywgNzMsIDc4LCA2OCwgODUsIDgzLCA4NCwgODIsIDczLCA2NSwgMjA0LCA3MywgNzgsIAorICAgIDY4LCA3MywgODIsIDY5LCA2NywgMjEyLCA3MywgNzgsIDY4LCA3MywgNjcsIDY1LCA4NCwgNzksIDgyLCAxMjgsIDczLCA3OCwgCisgICAgNjgsIDczLCA2NywgNjUsIDg0LCA3OSwgMjEwLCA3MywgNzgsIDY4LCA3MywgMTk1LCA3MywgNzgsIDY4LCA3MywgNjUsIAorICAgIDIwNiwgNzMsIDc4LCA2OCwgNjksIDg4LCAxMjgsIDczLCA3OCwgNjgsIDY5LCA4MCwgNjksIDc4LCA2OCwgNjksIDc4LCAKKyAgICAyMTIsIDczLCA3OCwgNjcsIDgyLCA2OSwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNzMsIDc4LCA2NywgODIsIDY5LCA2NSwgODMsIAorICAgIDY5LCAyMTEsIDczLCA3OCwgNjcsIDgyLCA2OSwgNjUsIDgzLCA2OSwgMTI4LCA3MywgNzgsIDY3LCA3OSwgNzcsIDgwLCA3NiwgCisgICAgNjksIDg0LCAxOTcsIDczLCA3OCwgNjcsIDc5LCA3NywgNzMsIDc4LCAxOTksIDczLCA3OCwgNjcsIDc2LCA4NSwgNjgsIDczLCAKKyAgICA3OCwgMTk5LCA3MywgNzgsIDY3LCA3MiwgMTI4LCA3MywgNzgsIDY2LCA3OSwgMjE2LCA3MywgNzgsIDY1LCA4MCwgMTI4LCAKKyAgICA3MywgNzgsIDQ1LCA2NSwgNzYsIDY1LCA3MCwgMTI4LCA3MywgNzcsIDgwLCA2OSwgODIsIDczLCA2NSwgMjA0LCA3MywgNzcsIAorICAgIDgwLCA2OSwgODIsIDcwLCA2OSwgNjcsIDg0LCA4NSwgMjA1LCA3MywgNzcsIDgwLCA2OSwgODIsIDcwLCA2OSwgNjcsIDg0LCAKKyAgICA2NSwgMTI4LCA3MywgNzcsIDgwLCA2OSwgODIsIDcwLCA2OSwgNjcsIDg0LCAxOTMsIDczLCA3NywgNzMsIDgzLCA2OSwgNzksIAorICAgIDIxMSwgNzMsIDc3LCA3MywgNzgsIDUxLCAxMjgsIDczLCA3NywgNzMsIDc4LCAxMjgsIDczLCA3NywgNzMsIDIwNiwgNzMsIAorICAgIDc3LCA3MywgNzAsIDg0LCA3MiwgNzksIDgyLCA3OSwgNzgsIDEyOCwgNzMsIDc3LCA3MywgNzAsIDg0LCA3MiwgNzksIDgyLCAKKyAgICA2NSwgMTI4LCA3MywgNzcsIDczLCA3MCwgNzksIDc4LCA3OSwgNzgsIDEyOCwgNzMsIDc3LCA3MywgNjgsIDczLCA2NSwgODIsIAorICAgIDcxLCA3OSwgNzgsIDEyOCwgNzMsIDc3LCA2NSwgNzEsIDE5NywgNzMsIDc2LCA4NSwgODksIDY1LCA3OCwgNzgsIDY1LCAKKyAgICAxMjgsIDczLCA3NiwgODUsIDg5LCAxMjgsIDczLCA3NiwgODUsIDg1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNzMsIAorICAgIDc2LCA4NSwgODQsIDEyOCwgNzMsIDc2LCA3MywgNzcsIDc3LCA4NSwgNTIsIDEyOCwgNzMsIDc2LCA3MywgNzcsIDc3LCA4NSwgCisgICAgNTEsIDEyOCwgNzMsIDc2LCA3MywgNzcsIDc3LCA4NSwgMTI4LCA3MywgNzYsIDczLCA3NywgNzcsIDIxMywgNzMsIDc2LCAKKyAgICA1MCwgMTI4LCA3MywgNzUsIDY1LCA4MiwgNjUsIDEyOCwgNzMsIDc1LCA2NSwgODIsIDE5MywgNzMsIDc0LCAxMjgsIDczLCAKKyAgICA3MywgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDczLCA3MSwgNzMsIDEyOCwgNzMsIDcxLCAyMDEsIDczLCA3MSwgNzEsIAorICAgIDg3LCA4MywgMTI4LCA3MywgNzAsIDczLCA3OCwgMTI4LCA3MywgNjksIDg1LCA3OCwgNzEsIDQ1LCA4NCwgNzMsIDc1LCA2OSwgCisgICAgODUsIDg0LCAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDg0LCA3MiwgNzMsIDY5LCA4NSwgODQsIDcyLCAxMjgsIDczLCAKKyAgICA2OSwgODUsIDc4LCA3MSwgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgNzUsIDczLCA4OSwgNjksIDc5LCA3NSwgMTI4LCA3MywgCisgICAgNjksIDg1LCA3OCwgNzEsIDQ1LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgODAsIAorICAgIDczLCA2OSwgODUsIDgwLCAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDgwLCA3MiwgNzMsIDY5LCA4NSwgODAsIDcyLCAKKyAgICAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDc1LCA3MywgODksIDY5LCA3OSwgNzUsIDEyOCwgNzMsIDY5LCA4NSwgNzgsIAorICAgIDcxLCA0NSwgNzUsIDcyLCA3MywgNjksIDg1LCA3NSwgNzIsIDEyOCwgNzMsIDY5LCA4NSwgNzgsIDcxLCA0NSwgNjcsIDczLCAKKyAgICA2OSwgODUsIDY3LCAxMjgsIDczLCA2OSwgODUsIDc4LCA3MSwgNDUsIDY3LCA3MiwgNzMsIDY5LCA4NSwgNjcsIDcyLCAxMjgsIAorICAgIDczLCA2OSwgODUsIDc4LCAxOTksIDczLCA2OCwgNzYsIDY5LCAxMjgsIDczLCA2OCwgNzMsIDc3LCAxMjgsIDczLCA2OCwgCisgICAgNzMsIDIwNSwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDY4LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2OCwgCisgICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDUxLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDY3LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgCisgICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDY3LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgCisgICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDY3LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NywgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjcsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDY2LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgCisgICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDY2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDY2LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDUzLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDY2LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NiwgCisgICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDcwLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDY1LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgCisgICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDY1LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgCisgICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDUxLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDY1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA2NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNjUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU3LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgCisgICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU3LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgCisgICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU3LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NywgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTcsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU2LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgCisgICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDY2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU2LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDUzLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU2LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NiwgCisgICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDcwLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU1LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgCisgICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU1LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgCisgICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDUxLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU0LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgCisgICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDY2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU0LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU0LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDUzLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDU0LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTQsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDU0LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1NCwgCisgICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDcwLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDUzLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgCisgICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDUzLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgCisgICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDUxLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUzLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MywgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTMsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDUyLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgCisgICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDUyLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgCisgICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDUyLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MiwgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTIsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUyLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDUxLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgCisgICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDY2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDUxLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDUzLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUxLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTEsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDUxLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MSwgCisgICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDUwLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgCisgICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDUwLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA1MCwgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNTAsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDUwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDQ5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgCisgICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDY2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDQ5LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDUzLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDksIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDQ5LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OSwgCisgICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDcwLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDQ4LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgCisgICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNjUsIDQ4LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgCisgICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDUxLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNjUsIDQ4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDY1LCA0OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA2NSwgNDgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDcwLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgCisgICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDcwLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgCisgICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDcwLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA3MCwgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNzAsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDcwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgCisgICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDY2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY5LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDUzLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjksIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY5LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OSwgCisgICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDcwLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY4LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgCisgICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY4LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgCisgICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDUxLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY3LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgCisgICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY3LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgCisgICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY3LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NywgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjcsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY2LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgCisgICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDY2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY2LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDUzLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY2LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NiwgCisgICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDcwLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY1LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgCisgICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDY1LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgCisgICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDUxLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDY1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA2NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNjUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU3LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgCisgICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU3LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgCisgICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU3LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NywgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTcsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU3LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU2LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgCisgICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDY2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU2LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDUzLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU2LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU2LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NiwgCisgICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDcwLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU1LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgCisgICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU1LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgCisgICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDUxLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU1LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU0LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgCisgICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU0LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgCisgICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDU0LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1NCwgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTQsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDU0LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUzLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgCisgICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDY2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUzLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDUzLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUzLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTMsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUzLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MywgCisgICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDcwLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUyLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgCisgICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUyLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgCisgICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDUxLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUyLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTIsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUxLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgCisgICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUxLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgCisgICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUxLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MSwgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTEsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUxLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUwLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgCisgICAgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDY2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUwLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDUzLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDUwLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNTAsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDUwLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA1MCwgCisgICAgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDcwLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDQ5LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgCisgICAgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDQ5LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgCisgICAgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDUxLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ5LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNDksIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDQ4LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgCisgICAgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDQ4LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgCisgICAgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA3MCwgNTcsIDQ4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNzAsIDU3LCA0OCwgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDcwLCA1NywgNDgsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA3MCwgNTcsIDQ4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTcsIDQ4LCA1MiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDU2LCA2OCwgNTUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA1NiwgNjcsIDY1LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTYsIDU3LCA2OSwgCisgICAgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU1LCA2OCwgNTIsIDUwLCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NSwgNjUsIDU1LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTUsIDU3LCA1NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDU1LCA1NCwgNjgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA1NSwgNTMsIDUxLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTUsIDUzLCA0OSwgCisgICAgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU1LCA0OSwgNTAsIDQ5LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NSwgNDgsIDY2LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDcwLCA0OSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDU0LCA2OSwgNTYsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA1NCwgNTUsIDUwLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDU1LCA0OCwgCisgICAgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA1NSwgNDgsIDU2LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NCwgNTQsIDUwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDUzLCA2NiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDU0LCA1MywgNTcsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA1NCwgNTMsIDUzLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDUxLCA1MywgCisgICAgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDU0LCA1MSwgNDgsIDU1LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1NCwgNTAsIDU3LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTQsIDUwLCA1MywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDU0LCA1MCwgNTIsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA1MywgNzAsIDU2LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDY4LCA2OSwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA2NiwgNTYsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNjYsIDUzLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDU3LCA1MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDUzLCA1NywgNDksIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA1MywgNTYsIDcwLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDUzLCA2NiwgCisgICAgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA1MiwgNTEsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNTIsIDQ4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDUxLCA3MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDUzLCA1MSwgNjcsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA1MywgNTAsIDY4LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDUwLCA1NSwgCisgICAgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUzLCA1MCwgNTIsIDY4LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MywgNTAsIDQ5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTMsIDQ5LCA1NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIAorICAgIDgwLCA3MiwgNDUsIDUyLCA2OSwgNjUsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCAKKyAgICA1MiwgNjksIDU2LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTIsIDY5LCA1MCwgCisgICAgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUyLCA2OSwgNDgsIDU3LCAxMjgsIDczLCAKKyAgICA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MiwgNjksIDQ4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA2NSwgNDksIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDY1LCA0OSwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCAKKyAgICA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDU1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNTQsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDksIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ5LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA2NSwgNDksIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDY1LCA0OSwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCAKKyAgICA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDY5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNjgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA2NSwgNDgsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDY1LCA0OCwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCAKKyAgICA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDUzLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNTIsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA2NSwgNDgsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDY1LCA0OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNjUsIDQ4LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNzAsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA3MCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCAKKyAgICA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDY3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNjYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNzAsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA3MCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCAKKyAgICA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDUxLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA3MCwgNTAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDcwLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNzAsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjksIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2OSwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCAKKyAgICA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDY1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNTcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjksIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2OSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY5LCAKKyAgICA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjksIDQ5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OSwgNDgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjgsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2OCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCAKKyAgICA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDU2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNTUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjgsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2OCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjgsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2OCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY4LCAKKyAgICA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDcwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNjksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjcsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2NywgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCAKKyAgICA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDU0LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNTMsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjcsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NywgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY3LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjcsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2NiwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCAKKyAgICA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDY4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNjcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjYsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2NiwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCAKKyAgICA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDUyLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNTEsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjYsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjUsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2NSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCAKKyAgICA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDY2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNjUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNjUsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA2NSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCAKKyAgICA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNjUsIDUwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA2NSwgNDksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDY1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTcsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NywgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCAKKyAgICA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDU3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNTYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NywgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTcsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NywgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU3LCAKKyAgICA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTcsIDQ4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNzAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTYsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NiwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCAKKyAgICA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDU1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNTQsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTYsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NiwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU2LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTYsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NiwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCAKKyAgICA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDY5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNjgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTUsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCAKKyAgICA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDUzLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNTIsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTUsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU1LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTQsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCAKKyAgICA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDY3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNjYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTQsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1NCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCAKKyAgICA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDUxLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1NCwgNTAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDU0LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTQsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTMsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCAKKyAgICA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDY1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNTcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTMsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUzLCAKKyAgICA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTMsIDQ5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MywgNDgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTIsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCAKKyAgICA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDU2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNTUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTIsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTIsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUyLCAKKyAgICA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDcwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNjksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTEsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCAKKyAgICA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDU0LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNTMsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTEsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUxLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTEsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCAKKyAgICA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDY4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNjcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNTAsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA1MCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCAKKyAgICA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDUyLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNTEsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDUwLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNTAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA1MCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNDksIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA0OSwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCAKKyAgICA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDY2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNjUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNDksIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA0OSwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCAKKyAgICA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDksIDUwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OSwgNDksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ5LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNDgsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA0OCwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCAKKyAgICA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDU3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNTYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU3LCA0OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NywgNDgsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU3LCA0OCwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTcsIDQ4LCAKKyAgICA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NywgNDgsIDQ4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNzAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNzAsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA3MCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCAKKyAgICA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDU1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNTQsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNzAsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA3MCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDcwLCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNzAsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA3MCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCAKKyAgICA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDY5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNjgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjksIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2OSwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCAKKyAgICA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDUzLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNTIsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjksIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OSwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY5LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjgsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2OCwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCAKKyAgICA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDY3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNjYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjgsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2OCwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCAKKyAgICA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDUxLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2OCwgNTAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY4LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjgsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjcsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NywgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCAKKyAgICA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDY1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNTcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjcsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NywgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY3LCAKKyAgICA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjcsIDQ5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NywgNDgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjYsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NiwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCAKKyAgICA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDU2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNTUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjYsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjYsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NiwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY2LCAKKyAgICA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDcwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNjksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjUsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA2NSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCAKKyAgICA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDU0LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNTMsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNjUsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA2NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDY1LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNjUsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NywgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCAKKyAgICA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDY4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNjcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTcsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NywgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCAKKyAgICA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDUyLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNTEsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU3LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTcsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NywgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTYsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NiwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCAKKyAgICA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDY2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNjUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTYsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NiwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCAKKyAgICA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTYsIDUwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NiwgNDksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU2LCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTUsIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCAKKyAgICA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDU3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNTYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NSwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTUsIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU1LCAKKyAgICA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTUsIDQ4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNzAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTQsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCAKKyAgICA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDU1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNTQsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTQsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1NCwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDU0LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTQsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1NCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCAKKyAgICA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDY5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNjgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTMsIDU2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MywgNTUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCAKKyAgICA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDUzLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNTIsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTMsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MywgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUzLCA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTIsIDcwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MiwgNjksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCAKKyAgICA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDY3LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNjYsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTIsIDU0LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MiwgNTMsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCAKKyAgICA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDUxLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MiwgNTAsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUyLCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTIsIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTEsIDY4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MSwgNjcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCAKKyAgICA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDY1LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNTcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTEsIDUyLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MSwgNTEsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUxLCAKKyAgICA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTEsIDQ5LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MSwgNDgsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA3MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDY5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNjgsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA2NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTAsIDY2LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MCwgNjUsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCAKKyAgICA1NywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDU2LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNTUsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA1NCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNTAsIDUzLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA1MCwgNTIsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCA1MSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNTAsIDUwLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA1MCwgNDksIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDUwLCAKKyAgICA0OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDcwLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNjksIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA2OCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDY3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNjYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA2NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNDksIDU3LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA0OSwgNTYsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCAKKyAgICA1NSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDU0LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNTMsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA1MiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDksIDUxLCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OSwgNTAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ5LCA0OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNDksIDQ4LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA0OCwgNzAsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCAKKyAgICA2OSwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDY4LCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNjcsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA2NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDY1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNTcsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCAKKyAgICA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA1NiwgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgCisgICAgNTAsIDcwLCA1NiwgNDgsIDU1LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIAorICAgIDU2LCA0OCwgNTQsIDEyOCwgNzMsIDY4LCA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCAKKyAgICA1MywgMTI4LCA3MywgNjgsIDY5LCA3OSwgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDUyLCAxMjgsIAorICAgIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNTEsIDEyOCwgNzMsIDY4LCAKKyAgICA2OSwgNzksIDcxLCA4MiwgNjUsIDgwLCA3MiwgNDUsIDUwLCA3MCwgNTYsIDQ4LCA1MCwgMTI4LCA3MywgNjgsIDY5LCA3OSwgCisgICAgNzEsIDgyLCA2NSwgODAsIDcyLCA0NSwgNTAsIDcwLCA1NiwgNDgsIDQ5LCAxMjgsIDczLCA2OCwgNjksIDc5LCA3MSwgODIsIAorICAgIDY1LCA4MCwgNzIsIDQ1LCA1MCwgNzAsIDU2LCA0OCwgNDgsIDEyOCwgNzMsIDY4LCA2OSwgNzgsIDg0LCA3MywgNzAsIDczLCAKKyAgICA2NywgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDczLCA2OCwgNjksIDc4LCA4NCwgNzMsIDY3LCA2NSwgMjA0LCA3MywgNjcsIAorICAgIDcyLCA3OSwgODUsIDEyOCwgNzMsIDY3LCA3MiwgNzksIDgzLCAxMjgsIDczLCA2NywgNzIsIDczLCA3NywgNjUsIDg0LCA3OSwgCisgICAgODMsIDEyOCwgNzMsIDY3LCA3MiwgNjUsIDY4LCA3MywgNzgsIDEyOCwgNzMsIDY3LCA2OSwgNzYsIDY1LCA3OCwgNjgsIDczLCAKKyAgICA2NywgNDUsIDg5LCA4MiwgMTI4LCA3MywgNjYsIDczLCA3MCwgNzMsIDc2LCA3MywgMTI4LCA3MywgNjUsIDg1LCA2OCwgNjUsIAogICAgIDEyOCwgNzMsIDQ4LCA0OSwgNTMsIDEyOCwgNzMsIDQ4LCA0OSwgNTIsIDEyOCwgNzMsIDQ4LCA0OSwgNTEsIDEyOCwgNzMsIAogICAgIDQ4LCA0OSwgNTAsIDEyOCwgNzMsIDQ4LCA0OSwgNDksIDY1LCAxMjgsIDczLCA0OCwgNDksIDQ5LCAxMjgsIDczLCA0OCwgCiAgICAgNDksIDQ4LCA2NSwgMTI4LCA3MywgNDgsIDQ5LCA0OCwgMTI4LCA3MywgNDgsIDQ4LCA1NywgNjUsIDEyOCwgNzMsIDQ4LCAKQEAgLTMyNTMsODAxICszMjc3LDgwMiBAQAogICAgIDQ4LCA0OCwgNDUsIDQ4LCA0OSwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgNDUsIDQ4LCAKICAgICA0OCwgNDUsIDQ4LCA0OCwgMTI4LCA3MiwgNzksIDgyLCA3MywgOTAsIDc5LCA3OCwgODQsIDY1LCA3NiwgMTI4LCA3MiwgNzksIAogICAgIDgyLCA3MywgMTI4LCA3MiwgNzksIDgyLCAxOTMsIDcyLCA3OSwgNzksIDgyLCA4NSwgMTI4LCA3MiwgNzksIDc5LCA4MCwgCi0gICAgMTI4LCA3MiwgNzksIDc5LCA3OCwgMTI4LCA3MiwgNzksIDc4LCA2OSwgODksIDY2LCA2OSwgNjksIDEyOCwgNzIsIDc5LCAKLSAgICA3OCwgNjksIDIxNywgNzIsIDc5LCA3NywgNzksIDg0LCA3MiwgNjksIDg0LCA3MywgNjcsIDEyOCwgNzIsIDc5LCA3NywgNzksIAotICAgIDg0LCA3MiwgNjksIDg0LCA3MywgMTk1LCA3MiwgNzksIDc2LCA2OSwgMTI4LCA3MiwgNzksIDc2LCA2OCwgNzMsIDc4LCAKLSAgICAxOTksIDcyLCA3OSwgNzYsIDY1LCA3NywgMTI4LCA3MiwgNzksIDc2LCA2NSwgMjA1LCA3MiwgNzksIDc1LCA2NSwgMTI4LCAKLSAgICA3MiwgNzksIDczLCAxMjgsIDcyLCA3OSwgNjcsIDcyLCA3OSwgMTI4LCA3MiwgNzgsIDg1LCA4NCwgMTI4LCA3MiwgNzgsIAotICAgIDg1LCA3OSwgODgsIDEyOCwgNzIsIDc4LCA4NSwgNzksIDEyOCwgNzIsIDc4LCA3OSwgODgsIDEyOCwgNzIsIDc4LCA3OSwgCi0gICAgODQsIDEyOCwgNzIsIDc4LCA3OSwgODAsIDEyOCwgNzIsIDc4LCA3MywgODgsIDEyOCwgNzIsIDc4LCA3MywgODQsIDEyOCwgCi0gICAgNzIsIDc4LCA3MywgODAsIDEyOCwgNzIsIDc4LCA3MywgNjksIDg4LCAxMjgsIDcyLCA3OCwgNzMsIDY5LCA4NCwgMTI4LCAKLSAgICA3MiwgNzgsIDczLCA2OSwgODAsIDEyOCwgNzIsIDc4LCA3MywgNjksIDEyOCwgNzIsIDc4LCA3MywgMTI4LCA3MiwgNzgsIAotICAgIDY5LCA4OCwgMTI4LCA3MiwgNzgsIDY5LCA4MCwgMTI4LCA3MiwgNzgsIDY5LCAxMjgsIDcyLCA3OCwgNjUsIDg4LCAxMjgsIAotICAgIDcyLCA3OCwgNjUsIDg0LCAxMjgsIDcyLCA3OCwgNjUsIDgwLCAxMjgsIDcyLCA3OCwgNjUsIDEyOCwgNzIsIDc3LCA4OSwgCi0gICAgODgsIDEyOCwgNzIsIDc3LCA4OSwgODIsIDg4LCAxMjgsIDcyLCA3NywgODksIDgyLCAxMjgsIDcyLCA3NywgODksIDgwLCAKLSAgICAxMjgsIDcyLCA3NywgODksIDEyOCwgNzIsIDc3LCA4NSwgODgsIDEyOCwgNzIsIDc3LCA4NSwgODQsIDEyOCwgNzIsIDc3LCAKLSAgICA4NSwgODIsIDg4LCAxMjgsIDcyLCA3NywgODUsIDgyLCAxMjgsIDcyLCA3NywgODUsIDgwLCAxMjgsIDcyLCA3NywgODUsIAotICAgIDc5LCA4OCwgMTI4LCA3MiwgNzcsIDg1LCA3OSwgODAsIDEyOCwgNzIsIDc3LCA4NSwgNzksIDEyOCwgNzIsIDc3LCA4NSwgCi0gICAgMTI4LCA3MiwgNzcsIDc5LCA4OCwgMTI4LCA3MiwgNzcsIDc5LCA4NCwgMTI4LCA3MiwgNzcsIDc5LCA4MCwgMTI4LCA3MiwgCi0gICAgNzcsIDc5LCAxMjgsIDcyLCA3NywgNzMsIDg4LCAxMjgsIDcyLCA3NywgNzMsIDg0LCAxMjgsIDcyLCA3NywgNzMsIDgwLCAKLSAgICAxMjgsIDcyLCA3NywgNzMsIDY5LCA4OCwgMTI4LCA3MiwgNzcsIDczLCA2OSwgODAsIDEyOCwgNzIsIDc3LCA3MywgNjksIAotICAgIDEyOCwgNzIsIDc3LCA3MywgMTI4LCA3MiwgNzcsIDY5LCAxMjgsIDcyLCA3NywgNjUsIDg4LCAxMjgsIDcyLCA3NywgNjUsIAotICAgIDg0LCAxMjgsIDcyLCA3NywgNjUsIDgwLCAxMjgsIDcyLCA3NywgNjUsIDEyOCwgNzIsIDc2LCA4OSwgODgsIDEyOCwgNzIsIAotICAgIDc2LCA4OSwgODQsIDEyOCwgNzIsIDc2LCA4OSwgODIsIDg4LCAxMjgsIDcyLCA3NiwgODksIDgyLCAxMjgsIDcyLCA3NiwgCi0gICAgODksIDgwLCAxMjgsIDcyLCA3NiwgODksIDEyOCwgNzIsIDc2LCA4NSwgODgsIDEyOCwgNzIsIDc2LCA4NSwgODQsIDEyOCwgCi0gICAgNzIsIDc2LCA4NSwgODIsIDg4LCAxMjgsIDcyLCA3NiwgODUsIDgyLCAxMjgsIDcyLCA3NiwgODUsIDgwLCAxMjgsIDcyLCAKLSAgICA3NiwgODUsIDc5LCA4OCwgMTI4LCA3MiwgNzYsIDg1LCA3OSwgODAsIDEyOCwgNzIsIDc2LCA4NSwgNzksIDEyOCwgNzIsIAotICAgIDc2LCA4NSwgMTI4LCA3MiwgNzYsIDc5LCA4OCwgMTI4LCA3MiwgNzYsIDc5LCA4MCwgMTI4LCA3MiwgNzYsIDc5LCAxMjgsIAotICAgIDcyLCA3NiwgNzMsIDg4LCAxMjgsIDcyLCA3NiwgNzMsIDg0LCAxMjgsIDcyLCA3NiwgNzMsIDgwLCAxMjgsIDcyLCA3NiwgCi0gICAgNzMsIDY5LCA4OCwgMTI4LCA3MiwgNzYsIDczLCA2OSwgODAsIDEyOCwgNzIsIDc2LCA3MywgNjksIDEyOCwgNzIsIDc2LCAKLSAgICA3MywgMTI4LCA3MiwgNzYsIDY5LCA4OCwgMTI4LCA3MiwgNzYsIDY5LCA4MCwgMTI4LCA3MiwgNzYsIDY5LCAxMjgsIDcyLCAKLSAgICA3NiwgNjUsIDg4LCAxMjgsIDcyLCA3NiwgNjUsIDg0LCAxMjgsIDcyLCA3NiwgNjUsIDgwLCAxMjgsIDcyLCA3NiwgNjUsIAotICAgIDEyOCwgNzIsIDc1LCAxMjgsIDcyLCA3MywgOTAsIDY2LCAxMjgsIDcyLCA3MywgODMsIDg0LCA3OSwgODIsIDczLCAxOTUsIAotICAgIDcyLCA3MywgODIsIDczLCA4MSwgMTI4LCA3MiwgNzMsIDcxLCA3MiwgNDUsIDgzLCA4MCwgNjksIDY5LCAxOTYsIDcyLCA3MywgCi0gICAgNzEsIDcyLCA0NSwgODIsIDY5LCA4NiwgNjksIDgyLCA4MywgNjksIDY4LCA0NSwgMTg1LCA3MiwgNzMsIDcxLCA3MiwgNDUsIAotICAgIDcyLCA2OSwgNjksIDc2LCA2OSwgMTk2LCA3MiwgNzMsIDY5LCA4OCwgMTI4LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDQ1LCA4MywgCi0gICAgNzMsIDc5LCA4MywgMTI4LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDQ1LCA4MiwgNzMsIDY5LCA4NSwgNzYsIDEyOCwgNzIsIDczLCAKLSAgICA2OSwgODUsIDcyLCA0NSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDcyLCA3MywgNjksIDg1LCA3MiwgNDUsIDc4LCA3MywgCi0gICAgNjksIDg1LCA3OCwgMTI4LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDQ1LCA3NywgNzMsIDY5LCA4NSwgNzcsIDEyOCwgNzIsIDczLCAKLSAgICA2OSwgODUsIDIwMCwgNzIsIDczLCA2OSwgMTI4LCA3MiwgNzMsIDY4LCA3MywgNzgsIDE5OSwgNzIsIDczLCA2OCwgNjksIAotICAgIDg0LCAxMjgsIDcyLCA3MywgNjgsIDY5LCAxMjgsIDcyLCA3MywgNjYsIDczLCA4MywgNjcsIDg1LCA4MywgMTI4LCA3MiwgCi0gICAgNzIsIDg3LCA2NSwgMTI4LCA3MiwgNzIsIDg1LCAxMjgsIDcyLCA3MiwgNzMsIDEyOCwgNzIsIDcyLCA2OSwgNjksIDEyOCwgCi0gICAgNzIsIDcyLCA2OSwgMTI4LCA3MiwgNzIsIDY1LCA2NSwgMTI4LCA3MiwgNzEsIDEyOCwgNzIsIDY5LCA4OCwgNzMsIDcwLCAKLSAgICA3OSwgODIsIDIwNSwgNzIsIDY5LCA4OCwgNjUsIDcxLCA4MiwgNjUsIDIwNSwgNzIsIDY5LCA4OCwgNjUsIDcxLCA3OSwgNzgsIAotICAgIDEyOCwgNzIsIDY5LCA4MiwgODUsIDg0LCA4NSwgMTI4LCA3MiwgNjksIDgyLCA4NSwgMTI4LCA3MiwgNjksIDgyLCA3NywgCi0gICAgNzMsIDg0LCA3MywgNjUsIDIwNiwgNzIsIDY5LCA4MiwgNzcsIDczLCA3OSwgNzgsIDczLCA2NSwgMjA2LCA3MiwgNjksIDgyLCAKLSAgICA3NywgNjksIDgzLCAxMjgsIDcyLCA2OSwgODIsIDY2LCAxMjgsIDcyLCA2OSwgODIsIDY1LCA2OSwgODUsIDIwNSwgNzIsIAotICAgIDY5LCA3OCwgNzEsIDEyOCwgNzIsIDY5LCA3OCwgMTk5LCA3MiwgNjksIDc3LCA4MCwgMTI4LCA3MiwgNjksIDc2LCA3NywgCi0gICAgNjksIDg0LCAxMjgsIDcyLCA2OSwgNzYsIDc3LCA2OSwgMjEyLCA3MiwgNjksIDc2LCAyMDUsIDcyLCA2OSwgNzYsIDczLCAKLSAgICA2NywgNzksIDgwLCA4NCwgNjksIDgyLCAxMjgsIDcyLCA2OSwgNzUsIDg1LCA4NCwgNjUsIDY1LCA4MiwgODUsIDEyOCwgNzIsIAotICAgIDY5LCA3MywgODMsIDY5LCA3MywgMTI4LCA3MiwgNjksIDY1LCA4NiwgODksIDEyOCwgNzIsIDY5LCA2NSwgODYsIDY5LCA3OCwgCi0gICAgNzYsIDIxNywgNzIsIDY5LCA2NSwgODYsIDY5LCA3OCwgMTI4LCA3MiwgNjksIDY1LCA4NiwgNjksIDIwNiwgNzIsIDY5LCAKLSAgICA2NSwgODIsIDg0LCA4MywgMTI4LCA3MiwgNjksIDY1LCA4MiwgODQsIDQ1LCA4MywgNzIsIDY1LCA4MCwgNjksIDE5NiwgNzIsIAotICAgIDY5LCA2NSwgODIsIDg0LCAxMjgsIDcyLCA2OSwgNjUsIDgyLCAyMTIsIDcyLCA2OSwgNjUsIDgyLCA0NSwgNzgsIDc5LCA0NSwgCi0gICAgNjksIDg2LCA3MywgMjA0LCA3MiwgNjksIDY1LCA2OCwgODMsIDg0LCA4MiwgNzksIDc1LCA2OSwgMTI4LCA3MiwgNjksIDY1LCAKLSAgICA2OCwgODMsIDg0LCA3OSwgNzgsIDE5NywgNzIsIDY5LCA2NSwgNjgsIDgwLCA3MiwgNzksIDc4LCA2OSwgMTI4LCA3MiwgNjksIAotICAgIDY1LCA2OCwgNzMsIDc4LCA3MSwgMTI4LCA3MiwgNjYsIDY1LCA4MywgNjUsIDQ1LCA2OSwgODMsIDY1LCA4MywgMTkzLCA3MiwgCi0gICAgNjYsIDY1LCA4MywgMTkzLCA3MiwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MiwgNjUsIDg2LCA2OSwgMTI4LCAKLSAgICA3MiwgNjUsIDg1LCA4MCwgODQsIDgzLCA4NCwgNzMsIDc3LCA3NywgNjksIDEyOCwgNzIsIDY1LCA4NCwgNzIsIDczLCAxMjgsIAotICAgIDcyLCA2NSwgODQsIDY5LCAxMjgsIDcyLCA2NSwgODQsIDY3LCA3MiwgNzMsIDc4LCAxOTksIDcyLCA2NSwgODQsIDY1LCAKLSAgICAxOTgsIDcyLCA2NSwgODMsIDY5LCAyMTAsIDcyLCA2NSwgODMsIDY1LCA3OCwgODQsIDY1LCAxMjgsIDcyLCA2NSwgODIsIAotICAgIDgwLCA3OSwgNzksIDc4LCAxMjgsIDcyLCA2NSwgODIsIDgwLCA3OSwgNzksIDIwNiwgNzIsIDY1LCA4MiwgNzcsIDc5LCA3OCwgCi0gICAgNzMsIDY3LCAxMjgsIDcyLCA2NSwgODIsIDc1LCA3NiwgNjksIDY1LCAyMDYsIDcyLCA2NSwgODIsIDY4LCA3OCwgNjksIDgzLCAKLSAgICA4MywgMTI4LCA3MiwgNjUsIDgyLCAxOTYsIDcyLCA2NSwgODAsIDgwLCAyMTcsIDcyLCA2NSwgNzgsIDg1LCA3OCwgNzksIAotICAgIDIwNywgNzIsIDY1LCA3OCwgNzEsIDkwLCA3MiwgNzksIDIxMywgNzIsIDY1LCA3OCwgNjgsIDgzLCAxMjgsIDcyLCA2NSwgCi0gICAgNzgsIDY4LCAyMTEsIDcyLCA2NSwgNzgsIDY4LCA3NiwgNjksIDgzLCAxMjgsIDcyLCA2NSwgNzgsIDY4LCA3NiwgNjksIAotICAgIDEyOCwgNzIsIDY1LCA3OCwgNjgsIDY2LCA2NSwgNzEsIDEyOCwgNzIsIDY1LCA3OCwgNjgsIDEyOCwgNzIsIDY1LCA3OCwgCi0gICAgNDUsIDY1LCA3NSwgNjUsIDg0LCAxMjgsIDcyLCA2NSwgNzcsIDkwLCA2NSwgMTI4LCA3MiwgNjUsIDc3LCA4MywgODQsIDY5LCAKLSAgICAyMTAsIDcyLCA2NSwgNzcsIDc3LCA2OSwgODIsIDEyOCwgNzIsIDY1LCA3NywgNzcsIDY5LCAyMTAsIDcyLCA2NSwgNzcsIAotICAgIDY2LCA4NSwgODIsIDcxLCA2OSwgODIsIDEyOCwgNzIsIDY1LCA3NiwgODEsIDY1LCAxMjgsIDcyLCA2NSwgNzYsIDc5LCAKLSAgICAxMjgsIDcyLCA2NSwgNzYsIDcwLCAxMjgsIDcyLCA2NSwgNzYsIDY2LCA2OSwgODIsIDY4LCAxMjgsIDcyLCA2NSwgNzYsIAotICAgIDY1LCA3OCwgODQsIDY1LCAxMjgsIDcyLCA2NSwgNzMsIDg0LCA4NSwgMTI4LCA3MiwgNjUsIDczLCA4MiwgNjcsIDg1LCA4NCwgCi0gICAgMTI4LCA3MiwgNjUsIDczLCA4MiwgMTI4LCA3MiwgNjUsIDcxLCA3NiwgNjUsIDIxOCwgNzIsIDY1LCA3MSwgNzYsIDEyOCwgCi0gICAgNzIsIDY1LCA3MCwgODUsIDc1LCA3MiwgNjUsIDEyOCwgNzIsIDY1LCA3MCwgODUsIDc1LCA3MiwgMTI4LCA3MiwgNjUsIDY5LCAKLSAgICA3MSwgMjA0LCA3MiwgNjUsIDY1LCA4MiwgODUsIDEyOCwgNzIsIDY1LCA2NSwgNzcsIDEyOCwgNzIsIDY1LCAxOTMsIDcyLCAKLSAgICA2NSwgNDUsIDcyLCA2NSwgMTI4LCA3MiwgNDgsIDQ4LCA1NiwgMTI4LCA3MiwgNDgsIDQ4LCA1NSwgMTI4LCA3MiwgNDgsIAotICAgIDQ4LCA1NCwgNjUsIDEyOCwgNzIsIDQ4LCA0OCwgNTQsIDEyOCwgNzIsIDQ4LCA0OCwgNTMsIDEyOCwgNzIsIDQ4LCA0OCwgCi0gICAgNTIsIDEyOCwgNzIsIDQ4LCA0OCwgNTEsIDEyOCwgNzIsIDQ4LCA0OCwgNTAsIDEyOCwgNzIsIDQ4LCA0OCwgNDksIDEyOCwgCi0gICAgNzIsIDQ1LCA4NCwgODksIDgwLCAxOTcsIDcxLCA4OSwgODUsIDEyOCwgNzEsIDg5LCA3OSwgNzgsIDEyOCwgNzEsIDg5LCAKLSAgICA3OSwgMTI4LCA3MSwgODksIDczLCAxMjgsIDcxLCA4OSwgNzAsIDIxMywgNzEsIDg5LCA2OSwgNjksIDEyOCwgNzEsIDg5LCAKLSAgICA2NSwgODMsIDEyOCwgNzEsIDg5LCA2NSwgNjUsIDEyOCwgNzEsIDg5LCA2NSwgMTI4LCA3MSwgODksIDEyOCwgNzEsIDg3LCAKLSAgICA4NSwgMTI4LCA3MSwgODcsIDczLCAxMjgsIDcxLCA4NywgNjksIDY5LCAxMjgsIDcxLCA4NywgNjksIDEyOCwgNzEsIDg3LCAKLSAgICA2NSwgNjUsIDEyOCwgNzEsIDg3LCA2NSwgMTI4LCA3MSwgODYsIDEyOCwgNzEsIDg1LCA4MiwgODUsIDgzLCA3MiwgMTI4LCAKLSAgICA3MSwgODUsIDgyLCA4NSwgNzgsIDEyOCwgNzEsIDg1LCA4MiwgNjUsIDc3LCA4NSwgODQsIDc5LCA3OCwgMTI4LCA3MSwgODUsIAotICAgIDgyLCA1NSwgMTI4LCA3MSwgODUsIDc4LCA4NSwgMTI4LCA3MSwgODUsIDc4LCAyMTMsIDcxLCA4NSwgMjA1LCA3MSwgODUsIAotICAgIDc2LCAxMjgsIDcxLCA4NSwgNzMsIDg0LCA2NSwgODIsIDEyOCwgNzEsIDg1LCAxOTksIDcxLCA4NSwgNjksIDcyLCAxMjgsIAotICAgIDcxLCA4NSwgNjksIDIwMCwgNzEsIDg1LCA2OCwgMTI4LCA3MSwgODUsIDE5NiwgNzEsIDg1LCA2NSwgODIsIDY4LCA4MywgCi0gICAgNzcsIDY1LCA3OCwgMTI4LCA3MSwgODUsIDY1LCA4MiwgNjgsIDY5LCA2OCwgNzgsIDY5LCA4MywgODMsIDEyOCwgNzEsIDg1LCAKLSAgICA2NSwgODIsIDY1LCA3OCwgMjAxLCA3MSwgODUsIDE5MywgNzEsIDg1LCAxNzgsIDcxLCA4NCwgNjksIDIxMCwgNzEsIDgzLCAKLSAgICA4NSwgNzcsIDEyOCwgNzEsIDgzLCA4NSwgMjA1LCA3MSwgODIsIDIxMywgNzEsIDgyLCA3OSwgODcsIDczLCA3OCwgMTk5LCAKLSAgICA3MSwgODIsIDc5LCA4NSwgNzgsIDY4LCAxMjgsIDcxLCA4MiwgNzksIDc4LCA4NCwgNzIsIDczLCA4MywgNzcsIDY1LCA4NCwgCi0gICAgNjUsIDEyOCwgNzEsIDgyLCA3MywgNzgsIDc4LCA3MywgNzgsIDE5OSwgNzEsIDgyLCA2OSwgNzEsIDc5LCA4MiwgNzMsIDY1LCAKLSAgICAyMDYsIDcxLCA4MiwgNjksIDY5LCAyMDYsIDcxLCA4MiwgNjksIDY1LCA4NCwgNzgsIDY5LCA4MywgODMsIDEyOCwgNzEsIAotICAgIDgyLCA2OSwgNjUsIDg0LCA2OSwgODIsIDQ1LCA4NCwgNzIsIDY1LCA3OCwgMTI4LCA3MSwgODIsIDY5LCA2NSwgODQsIDY5LCAKLSAgICA4MiwgNDUsIDg0LCA3MiwgNjUsIDIwNiwgNzEsIDgyLCA2OSwgNjUsIDg0LCA2OSwgMjEwLCA3MSwgODIsIDY5LCA2NSwgCi0gICAgMjEyLCA3MSwgODIsIDY1LCA4NiwgNjksIDg5LCA2NSwgODIsIDE5NiwgNzEsIDgyLCA2NSwgODYsIDY5LCA0NSwgNzcsIDY1LCAKLSAgICA2NywgODIsIDc5LCA3OCwgMTI4LCA3MSwgODIsIDY1LCA4NiwgNjksIDQ1LCA2NSwgNjcsIDg1LCA4NCwgNjksIDQ1LCA3MSwgCi0gICAgODIsIDY1LCA4NiwgNjksIDEyOCwgNzEsIDgyLCA2NSwgODYsIDE5NywgNzEsIDgyLCA2NSwgODQsIDY5LCA4MiwgMTI4LCAKLSAgICA3MSwgODIsIDY1LCA4MywgODMsIDEyOCwgNzEsIDgyLCA2NSwgODMsIDIxMSwgNzEsIDgyLCA2NSwgODAsIDcyLCA2OSwgNzcsIAotICAgIDE5NywgNzEsIDgyLCA2NSwgODAsIDY5LCA4MywgMTI4LCA3MSwgODIsIDY1LCA3NywgNzcsIDE5MywgNzEsIDgyLCA2NSwgCi0gICAgNzMsIDc4LCAxMjgsIDcxLCA4MiwgNjUsIDY4LCA4NSwgNjUsIDg0LCA3MywgNzksIDIwNiwgNzEsIDgyLCA2NSwgNjcsIDY5LCAKLSAgICAxMjgsIDcxLCA4MiwgNjUsIDY3LCAxOTcsIDcxLCA4MCwgNjUsIDEyOCwgNzEsIDc5LCA4MiwgODQsIDcyLCA3NywgNzMsIAotICAgIDc1LCA3OSwgMjA2LCA3MSwgNzksIDgyLCA4NCwgMTI4LCA3MSwgNzksIDgyLCA3MSwgNzksIDg0LCA2OSwgODIsIDczLCAKLSAgICAxMjgsIDcxLCA3OSwgODIsIDcxLCA3OSwgODMsIDg5LCA3OCwgODQsIDcyLCA2OSwgODQsIDc5LCA3OCwgMTI4LCA3MSwgNzksIAotICAgIDgyLCA3MSwgNzksIDIwNiwgNzEsIDc5LCA4MiwgNzEsIDczLCAxMjgsIDcxLCA3OSwgODIsIDY1LCAxMjgsIDcxLCA3OSwgCi0gICAgNzksIDE5NiwgNzEsIDc5LCA3OCwgNzEsIDEyOCwgNzEsIDc5LCA3NiwgNjgsIDEyOCwgNzEsIDc5LCA3NSwgMTI4LCA3MSwgCi0gICAgNzksIDczLCA3OCwgMTk5LCA3MSwgNzksIDY2LCA3NiwgNzMsIDc4LCAxMjgsIDcxLCA3OSwgNjUsIDc2LCAxMjgsIDcxLCAKLSAgICA3OSwgNjUsIDIwNCwgNzEsIDc5LCA2NSwgMTI4LCA3MSwgNzgsIDg5LCA3MywgODMsIDEyOCwgNzEsIDc4LCA2NSwgODYsIAotICAgIDczLCA4OSwgNjUsIDc4LCA3MywgMTI4LCA3MSwgNzYsIDc5LCA4NywgNzMsIDc4LCAxOTksIDcxLCA3NiwgNzksIDg0LCA4NCwgCi0gICAgNjUsIDIwNCwgNzEsIDc2LCA3OSwgNjYsIDE5NywgNzEsIDc2LCA3MywgODMsIDgzLCA2NSwgNzgsIDY4LCAyMDcsIDcxLCAKLSAgICA3NiwgNjksIDczLCA2NywgMjAwLCA3MSwgNzYsIDY1LCA3MSwgNzksIDc2LCA3MywgMTI4LCA3MSwgNzYsIDY1LCAxMjgsIAotICAgIDcxLCA3NCwgNjksIDEyOCwgNzEsIDczLCA4OCwgMTI4LCA3MSwgNzMsIDg0LCAxMjgsIDcxLCA3MywgODMsIDcyLCAxMjgsIAotICAgIDcxLCA3MywgODMsIDIwMCwgNzEsIDczLCA4MywgNjUsIDc2LCAxMjgsIDcxLCA3MywgODIsIDg1LCA2OCwgNjUsIDY1LCAKLSAgICAxMjgsIDcxLCA3MywgODIsIDc2LCAxMjgsIDcxLCA3MywgODIsIDUxLCAxMjgsIDcxLCA3MywgODIsIDE3OSwgNzEsIDczLCAKLSAgICA4MiwgNTAsIDEyOCwgNzEsIDczLCA4MiwgMTc4LCA3MSwgNzMsIDgwLCAxMjgsIDcxLCA3MywgNzgsIDczLCA3MywgMTI4LCAKLSAgICA3MSwgNzMsIDc3LCA2OSwgNzYsIDEyOCwgNzEsIDczLCA3NywgNjksIDIwNCwgNzEsIDczLCA3NywgMTI4LCA3MSwgNzMsIAotICAgIDcxLCA2NSwgMTI4LCA3MSwgNzMsIDY5LCA4NCwgMTI4LCA3MSwgNzMsIDY4LCA3MywgNzcsIDEyOCwgNzEsIDczLCA2NiwgCi0gICAgNjYsIDc5LCA4NSwgMjExLCA3MSwgNzMsIDY2LCA2NSwgMTI4LCA3MSwgNzMsIDUyLCAxMjgsIDcxLCA3MywgMTgwLCA3MSwgCi0gICAgNzIsIDkwLCAxMjgsIDcxLCA3MiwgODcsIDY1LCAxMjgsIDcxLCA3MiwgODUsIDc4LCA3OCwgNjUsIDEyOCwgNzEsIDcyLCAKLSAgICA4NSwgNzgsIDc4LCAxOTMsIDcxLCA3MiwgODUsIDEyOCwgNzEsIDcyLCA3OSwgODUsIDEyOCwgNzEsIDcyLCA3OSwgODMsIAotICAgIDg0LCAxMjgsIDcxLCA3MiwgNzksIDEyOCwgNzEsIDcyLCA3MywgMTI4LCA3MSwgNzIsIDcyLCA2NSwgMTI4LCA3MSwgNzIsIAotICAgIDY5LCA4NSwgODgsIDEyOCwgNzEsIDcyLCA2OSwgODUsIDc4LCAxMjgsIDcxLCA3MiwgNjksIDg1LCA3MSwgNzIsIDY5LCA4NSwgCi0gICAgNjUsIDY5LCA3NywgMTI4LCA3MSwgNzIsIDY5LCA4NSwgNzEsIDcyLCA2OSwgNzgsIDEyOCwgNzEsIDcyLCA2OSwgODUsIDY1LCAKLSAgICA2OSwgODIsIDY1LCA2OSwgMTI4LCA3MSwgNzIsIDY5LCA4NSwgNjUsIDY5LCA3MSwgNzIsIDY5LCA4NSwgNjUsIDY5LCAxMjgsIAotICAgIDcxLCA3MiwgNjksIDg0LCAxMjgsIDcxLCA3MiwgNjksIDY5LCAxMjgsIDcxLCA3MiwgNjksIDEyOCwgNzEsIDcyLCAxOTcsIAotICAgIDcxLCA3MiwgNjUsIDg5LCA3OCwgMTI4LCA3MSwgNzIsIDY1LCA4MiwgNjUsIDY5LCAxMjgsIDcxLCA3MiwgNjUsIDgwLCAKLSAgICAxMjgsIDcxLCA3MiwgNjUsIDc4LCAxMjgsIDcxLCA3MiwgNjUsIDc3LCA2NSwgNzYsIDEyOCwgNzEsIDcyLCA2NSwgNzMsIAotICAgIDc4LCA4NSwgMTI4LCA3MSwgNzIsIDY1LCA3MywgNzgsIDEyOCwgNzEsIDcyLCA2NSwgNzMsIDIwNiwgNzEsIDcyLCA2NSwgCi0gICAgNjgsIDEyOCwgNzEsIDcyLCA2NSwgNjUsIDc3LCA2NSwgNjksIDEyOCwgNzEsIDcyLCA2NSwgNjUsIDEyOCwgNzEsIDcyLCAKLSAgICA2NSwgMTI4LCA3MSwgNzEsIDg3LCA3MywgMTI4LCA3MSwgNzEsIDg3LCA2OSwgNjksIDEyOCwgNzEsIDcxLCA4NywgNjksIAotICAgIDEyOCwgNzEsIDcxLCA4NywgNjUsIDY1LCAxMjgsIDcxLCA3MSwgODcsIDY1LCAxMjgsIDcxLCA3MSwgODUsIDg4LCAxMjgsIAotICAgIDcxLCA3MSwgODUsIDg0LCAxMjgsIDcxLCA3MSwgODUsIDgyLCA4OCwgMTI4LCA3MSwgNzEsIDg1LCA4MiwgMTI4LCA3MSwgCi0gICAgNzEsIDg1LCA3OSwgODgsIDEyOCwgNzEsIDcxLCA4NSwgNzksIDg0LCAxMjgsIDcxLCA3MSwgODUsIDc5LCA4MCwgMTI4LCAKLSAgICA3MSwgNzEsIDg1LCA3OSwgMTI4LCA3MSwgNzEsIDc5LCA4OCwgMTI4LCA3MSwgNzEsIDc5LCA4NCwgMTI4LCA3MSwgNzEsIAotICAgIDc5LCA4MCwgMTI4LCA3MSwgNzEsIDczLCA4OCwgMTI4LCA3MSwgNzEsIDczLCA4NCwgMTI4LCA3MSwgNzEsIDczLCA2OSwgCi0gICAgODgsIDEyOCwgNzEsIDcxLCA3MywgNjksIDgwLCAxMjgsIDcxLCA3MSwgNzMsIDY5LCAxMjgsIDcxLCA3MSwgNjksIDg4LCAKLSAgICAxMjgsIDcxLCA3MSwgNjksIDg0LCAxMjgsIDcxLCA3MSwgNjksIDgwLCAxMjgsIDcxLCA3MSwgNjUsIDg4LCAxMjgsIDcxLCAKLSAgICA3MSwgNjUsIDg0LCAxMjgsIDcxLCA3MSwgNjUsIDY1LCAxMjgsIDcxLCA2OSwgODQsIDE5MywgNzEsIDY5LCA4MywgODQsIAotICAgIDg1LCA4MiwgNjksIDEyOCwgNzEsIDY5LCA4MywgNzIsIDg1LCAxMjgsIDcxLCA2OSwgODMsIDcyLCA4NCwgNzMsIDc4LCAKLSAgICAxMjgsIDcxLCA2OSwgODMsIDcyLCA4NCwgNzMsIDIwNiwgNzEsIDY5LCA4MywgNzIsIDUwLCAxMjgsIDcxLCA2OSwgODIsIAotICAgIDgzLCA3MiwgNjUsIDg5LCA3MywgNzcsIDEyOCwgNzEsIDY5LCA4MiwgNzcsIDY1LCAyMDYsIDcxLCA2OSwgODIsIDY5LCA4MywgCi0gICAgNzIsIDEyOCwgNzEsIDY5LCA4MiwgNjksIDgzLCAyMDAsIDcxLCA2OSwgNzksIDc3LCA2OSwgODQsIDgyLCA3MywgNjcsIDY1LCAKLSAgICA3NiwgNzYsIDIxNywgNzEsIDY5LCA3OSwgNzcsIDY5LCA4NCwgODIsIDczLCAxOTUsIDcxLCA2OSwgNzgsIDg0LCA3NiwgCi0gICAgMTk3LCA3MSwgNjksIDc4LCA3MywgODQsIDczLCA4NiwgNjksIDEyOCwgNzEsIDY5LCA3OCwgNzMsIDc1LCAyMDEsIDcxLCAKLSAgICA2OSwgNzgsIDY5LCA4MiwgNzMsIDE5NSwgNzEsIDY5LCA3NywgNzMsIDc4LCA3MywgMTI4LCA3MSwgNjksIDc3LCA3MywgNzgsIAotICAgIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDcxLCA2OSwgMjA1LCA3MSwgNjksIDY4LCA3OSwgNzYsIDY1LCAxMjgsIDcxLCA2OSwgCi0gICAgNjgsIDY5LCAxMjgsIDcxLCA2OSwgNjYsIDIwNywgNzEsIDY5LCA2NiwgMTkzLCA3MSwgNjksIDY1LCA4MiwgMTI4LCA3MSwgCi0gICAgNjksIDY1LCAyMTAsIDcxLCA2OCwgNjUsIDc4LCAxMjgsIDcxLCA2NywgNzMsIDcxLCAxMjgsIDcxLCA2NywgNjUsIDIwNiwgCi0gICAgNzEsIDY2LCA3OSwgNzgsIDEyOCwgNzEsIDY2LCA3MywgNjksIDE5NywgNzEsIDY2LCA2OSwgODUsIDg4LCAxMjgsIDcxLCAKLSAgICA2NiwgNjksIDg0LCAxMjgsIDcxLCA2NiwgNjUsIDg5LCA3MywgMTI4LCA3MSwgNjYsIDY1LCA3NSwgODUsIDgyLCA4NSwgNzgsIAotICAgIDY5LCA3OCwgMTI4LCA3MSwgNjYsIDEyOCwgNzEsIDY1LCA4OSwgNjUsIDc4LCA4NSwgNzUsIDczLCA4NCwgODQsIDY1LCAKLSAgICAxMjgsIDcxLCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDcxLCA2NSwgODksIDEyOCwgNzEsIDY1LCA4NSwgNzgsIAotICAgIDg0LCA3NiwgNjksIDg0LCAxMjgsIDcxLCA2NSwgODQsIDcyLCA2OSwgODIsIDczLCA3OCwgNzEsIDEyOCwgNzEsIDY1LCA4NCwgCi0gICAgNzIsIDY5LCA4MiwgNzMsIDc4LCAxOTksIDcxLCA2NSwgODQsIDY5LCAxMjgsIDcxLCA2NSwgODMsIDcyLCA2NSwgNzgsIAotICAgIDEyOCwgNzEsIDY1LCA4MiwgODMsIDcyLCA4NSwgNzgsIDczLCAxMjgsIDcxLCA2NSwgODIsIDc5LCA3OCwgMTI4LCA3MSwgCi0gICAgNjUsIDgyLCA3NywgNjksIDc4LCA4NCwgMTI4LCA3MSwgNjUsIDgyLCA2OCwgNjksIDc4LCAxMjgsIDcxLCA2NSwgODIsIDUxLCAKLSAgICAxMjgsIDcxLCA2NSwgODAsIDgwLCA2OSwgMTk2LCA3MSwgNjUsIDIwOCwgNzEsIDY1LCA3OCwgNzcsIDY1LCAxMjgsIDcxLCAKLSAgICA2NSwgNzgsIDcxLCA3MywgNjUsIDEyOCwgNzEsIDY1LCA3OCwgNjgsIDE5MywgNzEsIDY1LCA3OCwgNTAsIDEyOCwgNzEsIAotICAgIDY1LCA3OCwgMTc4LCA3MSwgNjUsIDc3LCA3NywgNjUsIDEyOCwgNzEsIDY1LCA3NywgNzYsIDY1LCAxMjgsIDcxLCA2NSwgCi0gICAgNzcsIDc2LCAxMjgsIDcxLCA2NSwgNzcsIDY5LCAxMjgsIDcxLCA2NSwgNzcsIDE5NywgNzEsIDY1LCA3NywgNjUsIDc4LCAKLSAgICAxMjgsIDcxLCA2NSwgNzcsIDY1LCA3NiwgMTI4LCA3MSwgNjUsIDc3LCA2NSwgMjA0LCA3MSwgNjUsIDcxLCAxMjgsIDcxLCAKLSAgICA2NSwgNzAsIDEyOCwgNzEsIDY1LCAxOTgsIDcxLCA2NSwgNjksIDg0LCA4NCwgNjUsIDQ1LCA4MCwgNzMsIDc2LCA3NiwgNjUsIAotICAgIDEyOCwgNzEsIDY1LCA2OCwgNzksIDc2LCAxMjgsIDcxLCA2NSwgNjgsIDEyOCwgNzEsIDY1LCAxOTYsIDcxLCA2NSwgNjYsIAotICAgIDY1LCAxMjgsIDcxLCA2NSwgNjYsIDE5MywgNzEsIDY1LCA2NSwgNzAsIDg1LCAxMjgsIDcxLCA2NSwgMTc4LCA3MSwgNDgsIAotICAgIDUzLCA1MiwgMTI4LCA3MSwgNDgsIDUzLCA1MSwgMTI4LCA3MSwgNDgsIDUzLCA1MCwgMTI4LCA3MSwgNDgsIDUzLCA0OSwgCi0gICAgMTI4LCA3MSwgNDgsIDUzLCA0OCwgMTI4LCA3MSwgNDgsIDUyLCA1NywgMTI4LCA3MSwgNDgsIDUyLCA1NiwgMTI4LCA3MSwgCi0gICAgNDgsIDUyLCA1NSwgMTI4LCA3MSwgNDgsIDUyLCA1NCwgMTI4LCA3MSwgNDgsIDUyLCA1MywgNjUsIDEyOCwgNzEsIDQ4LCAKLSAgICA1MiwgNTMsIDEyOCwgNzEsIDQ4LCA1MiwgNTIsIDEyOCwgNzEsIDQ4LCA1MiwgNTEsIDY1LCAxMjgsIDcxLCA0OCwgNTIsIAotICAgIDUxLCAxMjgsIDcxLCA0OCwgNTIsIDUwLCAxMjgsIDcxLCA0OCwgNTIsIDQ5LCAxMjgsIDcxLCA0OCwgNTIsIDQ4LCAxMjgsIAotICAgIDcxLCA0OCwgNTEsIDU3LCAxMjgsIDcxLCA0OCwgNTEsIDU2LCAxMjgsIDcxLCA0OCwgNTEsIDU1LCA2NSwgMTI4LCA3MSwgCi0gICAgNDgsIDUxLCA1NSwgMTI4LCA3MSwgNDgsIDUxLCA1NCwgNjUsIDEyOCwgNzEsIDQ4LCA1MSwgNTQsIDEyOCwgNzEsIDQ4LCAKLSAgICA1MSwgNTMsIDEyOCwgNzEsIDQ4LCA1MSwgNTIsIDEyOCwgNzEsIDQ4LCA1MSwgNTEsIDEyOCwgNzEsIDQ4LCA1MSwgNTAsIAotICAgIDEyOCwgNzEsIDQ4LCA1MSwgNDksIDEyOCwgNzEsIDQ4LCA1MSwgNDgsIDEyOCwgNzEsIDQ4LCA1MCwgNTcsIDEyOCwgNzEsIAotICAgIDQ4LCA1MCwgNTYsIDEyOCwgNzEsIDQ4LCA1MCwgNTUsIDEyOCwgNzEsIDQ4LCA1MCwgNTQsIDY1LCAxMjgsIDcxLCA0OCwgCi0gICAgNTAsIDU0LCAxMjgsIDcxLCA0OCwgNTAsIDUzLCAxMjgsIDcxLCA0OCwgNTAsIDUyLCAxMjgsIDcxLCA0OCwgNTAsIDUxLCAKLSAgICAxMjgsIDcxLCA0OCwgNTAsIDUwLCAxMjgsIDcxLCA0OCwgNTAsIDQ5LCAxMjgsIDcxLCA0OCwgNTAsIDQ4LCA2NSwgMTI4LCAKLSAgICA3MSwgNDgsIDUwLCA0OCwgMTI4LCA3MSwgNDgsIDQ5LCA1NywgMTI4LCA3MSwgNDgsIDQ5LCA1NiwgMTI4LCA3MSwgNDgsIAotICAgIDQ5LCA1NSwgMTI4LCA3MSwgNDgsIDQ5LCA1NCwgMTI4LCA3MSwgNDgsIDQ5LCA1MywgMTI4LCA3MSwgNDgsIDQ5LCA1MiwgCi0gICAgMTI4LCA3MSwgNDgsIDQ5LCA1MSwgMTI4LCA3MSwgNDgsIDQ5LCA1MCwgMTI4LCA3MSwgNDgsIDQ5LCA0OSwgNjUsIDEyOCwgCi0gICAgNzEsIDQ4LCA0OSwgNDksIDEyOCwgNzEsIDQ4LCA0OSwgNDgsIDEyOCwgNzEsIDQ4LCA0OCwgNTcsIDEyOCwgNzEsIDQ4LCAKLSAgICA0OCwgNTYsIDEyOCwgNzEsIDQ4LCA0OCwgNTUsIDY2LCAxMjgsIDcxLCA0OCwgNDgsIDU1LCA2NSwgMTI4LCA3MSwgNDgsIAotICAgIDQ4LCA1NSwgMTI4LCA3MSwgNDgsIDQ4LCA1NCwgNjUsIDEyOCwgNzEsIDQ4LCA0OCwgNTQsIDEyOCwgNzEsIDQ4LCA0OCwgCi0gICAgNTMsIDEyOCwgNzEsIDQ4LCA0OCwgNTIsIDEyOCwgNzEsIDQ4LCA0OCwgNTEsIDEyOCwgNzEsIDQ4LCA0OCwgNTAsIDEyOCwgCi0gICAgNzEsIDQ4LCA0OCwgNDksIDEyOCwgNzAsIDg5LCA4OCwgMTI4LCA3MCwgODksIDg0LCAxMjgsIDcwLCA4OSwgODAsIDEyOCwgCi0gICAgNzAsIDg5LCA2NSwgMTI4LCA3MCwgODcsIDczLCAxMjgsIDcwLCA4NywgNjksIDY5LCAxMjgsIDcwLCA4NywgNjksIDEyOCwgCi0gICAgNzAsIDg3LCA2NSwgNjUsIDEyOCwgNzAsIDg3LCA2NSwgMTI4LCA3MCwgODUsIDg4LCAxMjgsIDcwLCA4NSwgODQsIDEyOCwgCi0gICAgNzAsIDg1LCA4MywgNjksIDEyOCwgNzAsIDg1LCA4MywgMTkzLCA3MCwgODUsIDgyLCA4OCwgMTI4LCA3MCwgODUsIDgwLCAKLSAgICAxMjgsIDcwLCA4NSwgNzgsIDY5LCA4MiwgNjUsIDIwNCwgNzAsIDg1LCA3OCwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIAotICAgIDcwLCA4NSwgNzYsIDc2LCA3OCwgNjksIDgzLCA4MywgMTI4LCA3MCwgODUsIDc2LCAyMDQsIDcwLCA4NSwgNzQsIDczLCAKLSAgICAxMjgsIDcwLCA4NSwgNjksIDg0LCAxMjgsIDcwLCA4NSwgNjksIDIwNCwgNzAsIDg1LCA2OSwgMTI4LCA3MCwgODQsIDcyLCAKLSAgICA3OSwgODIsIDE5MywgNzAsIDgyLCA3OSwgODcsIDc4LCA3MywgNzgsIDcxLCAxMjgsIDcwLCA4MiwgNzksIDg3LCA3OCwgNzMsIAotICAgIDc4LCAxOTksIDcwLCA4MiwgNzksIDg3LCA3OCwgMTI4LCA3MCwgODIsIDc5LCA3OCwgODQsIDQ1LCA4NCwgNzMsIDc2LCA4NCwgCi0gICAgNjksIDE5NiwgNzAsIDgyLCA3OSwgNzgsIDg0LCA0NSwgNzAsIDY1LCA2NywgNzMsIDc4LCAxOTksIDcwLCA4MiwgNzksIAotICAgIDIwNSwgNzAsIDgyLCA3OSwgNzEsIDEyOCwgNzAsIDgyLCA3OSwgMTk5LCA3MCwgODIsIDczLCA4NCwgODUsIDEyOCwgNzAsIAotICAgIDgyLCA3MywgNjksIDgzLCAxMjgsIDcwLCA4MiwgNzMsIDY5LCAxOTYsIDcwLCA4MiwgNzMsIDY3LCA2NSwgODQsIDczLCA4NiwgCi0gICAgNjksIDEyOCwgNzAsIDgyLCA2OSwgODQsIDY2LCA3OSwgNjUsIDgyLCA2OCwgMTI4LCA3MCwgODIsIDY5LCA3OCwgNjcsIAotICAgIDIwMCwgNzAsIDgyLCA2OSwgNjksIDEyOCwgNzAsIDgyLCA2OSwgMTk3LCA3MCwgODIsIDY1LCA3OCwgMTk1LCA3MCwgODIsIAotICAgIDY1LCA3NywgNjksIDEyOCwgNzAsIDgyLCA2NSwgNzEsIDgyLCA2NSwgNzgsIDg0LCAxMjgsIDcwLCA4MiwgNjUsIDcxLCA3NywgCi0gICAgNjksIDc4LCA4NCwgMTI4LCA3MCwgODIsIDY1LCA2NywgODQsIDczLCA3OSwgMjA2LCA3MCwgNzksIDg4LCAxMjgsIDcwLCAKLSAgICA3OSwgODUsIDgyLCA4NCwgNjksIDY5LCA3OCwgMTI4LCA3MCwgNzksIDg1LCA4MiwgODQsIDY5LCA2OSwgMjA2LCA3MCwgNzksIAotICAgIDg1LCA4MiwgNDUsIDg0LCA3MiwgNzMsIDgyLCA4NCwgODksIDEyOCwgNzAsIDc5LCA4NSwgODIsIDQ1LCA4MywgODQsIDgyLCAKLSAgICA3MywgNzgsIDE5OSwgNzAsIDc5LCA4NSwgODIsIDQ1LCA4MCwgNjksIDgyLCA0NSwgNjksIDIwNSwgNzAsIDc5LCA4NSwgODIsIAotICAgIDQ1LCA3NiwgNzMsIDc4LCAxOTcsIDcwLCA3OSwgODUsIDIxMCwgNzAsIDc5LCA4NSwgNzgsIDg0LCA2NSwgNzMsIDc4LCAKLSAgICAxMjgsIDcwLCA3OSwgODMsIDg0LCA2OSwgODIsIDczLCA3OCwgNzEsIDEyOCwgNzAsIDc5LCA4MiwgODQsIDg5LCAxMjgsIAotICAgIDcwLCA3OSwgODIsIDg0LCAyMTcsIDcwLCA3OSwgODIsIDg0LCA2OSwgMTI4LCA3MCwgNzksIDgyLCA3NywgMjExLCA3MCwgCi0gICAgNzksIDgyLCA3NywgNjUsIDg0LCA4NCwgNzMsIDc4LCA3MSwgMTI4LCA3MCwgNzksIDgyLCA3NSwgNjksIDE5NiwgNzAsIDc5LCAKLSAgICA4MiwgNjcsIDY5LCA4MywgMTI4LCA3MCwgNzksIDgyLCA2NywgNjksIDEyOCwgNzAsIDc5LCA4MCwgMTI4LCA3MCwgNzksIAotICAgIDc5LCA4NCwgODMsIDg0LCA3OSwgNzksIDc2LCAxMjgsIDcwLCA3OSwgNzksIDg0LCA4MCwgODIsIDczLCA3OCwgODQsIDgzLCAKLSAgICAxMjgsIDcwLCA3OSwgNzksIDg0LCA3OCwgNzksIDg0LCAxOTcsIDcwLCA3OSwgNzksIDg0LCA2NiwgNjUsIDc2LCA3NiwgCi0gICAgMTI4LCA3MCwgNzksIDc5LCA4NCwgMTI4LCA3MCwgNzksIDc5LCA2OCwgMTI4LCA3MCwgNzksIDc5LCAxMjgsIDcwLCA3OSwgCi0gICAgNzgsIDcxLCA3NywgNjUsIDc4LCAxMjgsIDcwLCA3OSwgNzcsIDEyOCwgNzAsIDc5LCA3NiwgNzYsIDg5LCAxMjgsIDcwLCAKLSAgICA3OSwgNzYsIDc2LCA3OSwgODcsIDczLCA3OCwgNzEsIDEyOCwgNzAsIDc5LCA3NiwgNjgsIDY5LCA4MiwgMTI4LCA3MCwgNzksIAotICAgIDc2LCA2OCwgNjksIDE5NiwgNzAsIDc5LCA3MSwgNzEsIDg5LCAxMjgsIDcwLCA3NywgMTI4LCA3MCwgNzYsIDg5LCAxMjgsIAotICAgIDcwLCA3NiwgODUsIDg0LCA4NCwgNjksIDgyLCA3MywgNzgsIDE5OSwgNzAsIDc2LCA4NSwgODQsIDY5LCAxMjgsIDcwLCA3NiwgCi0gICAgODUsIDgzLCA3MiwgNjksIDE5NiwgNzAsIDc2LCA3OSwgODcsIDczLCA3OCwgMTk5LCA3MCwgNzYsIDc5LCA4NywgNjksIAotICAgIDIxMCwgNzAsIDc2LCA3OSwgODUsIDgyLCA3MywgODMsIDcyLCAxMjgsIDcwLCA3NiwgNzksIDgyLCA2OSwgODQsIDg0LCA2OSwgCi0gICAgMTI4LCA3MCwgNzYsIDc5LCA4MiwgNjUsIDIwNCwgNzAsIDc2LCA3OSwgODAsIDgwLCAyMTcsIDcwLCA3NiwgNzksIDc5LCAKLSAgICA4MiwgMTI4LCA3MCwgNzYsIDczLCA4MCwgMTI4LCA3MCwgNzYsIDczLCA3MSwgNzIsIDg0LCAxMjgsIDcwLCA3NiwgNjksIAotICAgIDg4LCA4NSwgODMsIDEyOCwgNzAsIDc2LCA2OSwgODgsIDY5LCAxOTYsIDcwLCA3NiwgNjksIDg1LCA4MiwgNDUsIDY4LCA2OSwgCi0gICAgNDUsIDc2LCA3MywgODMsIDEyOCwgNzAsIDc2LCA2NSwgODQsIDg0LCA2OSwgNzgsIDY5LCAxOTYsIDcwLCA3NiwgNjUsIDg0LCAKLSAgICA3OCwgNjksIDgzLCA4MywgMTI4LCA3MCwgNzYsIDY1LCA4NCwgMTI4LCA3MCwgNzYsIDY1LCAyMTIsIDcwLCA3NiwgNjUsIAotICAgIDcxLCA4MywgMTI4LCA3MCwgNzYsIDY1LCA3MSwgNDUsIDUzLCAxMjgsIDcwLCA3NiwgNjUsIDcxLCA0NSwgNTIsIDEyOCwgCi0gICAgNzAsIDc2LCA2NSwgNzEsIDQ1LCA1MSwgMTI4LCA3MCwgNzYsIDY1LCA3MSwgNDUsIDUwLCAxMjgsIDcwLCA3NiwgNjUsIDcxLCAKLSAgICA0NSwgNDksIDEyOCwgNzAsIDc2LCA2NSwgNzEsIDEyOCwgNzAsIDc2LCA2NSwgMTk5LCA3MCwgNzYsIDY1LCAxMjgsIDcwLCAKLSAgICA3NiwgMTI4LCA3MCwgNzMsIDg4LCA2OSwgNjgsIDQ1LCA3MCwgNzksIDgyLCAyMDUsIDcwLCA3MywgODgsIDEyOCwgNzAsIAotICAgIDczLCA4NiwgNjksIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDcwLCA3MywgODYsIDY5LCA0NSwgNzYsIDczLCAKLSAgICA3OCwgMTk3LCA3MCwgNzMsIDg2LCAxOTcsIDcwLCA3MywgODQsIDY1LCAxMjgsIDcwLCA3MywgODQsIDEyOCwgNzAsIDczLCAKLSAgICA4MywgODQsIDY5LCAxOTYsIDcwLCA3MywgODMsIDg0LCAxMjgsIDcwLCA3MywgODMsIDcyLCA3MywgNzgsIDE5OSwgNzAsIAotICAgIDczLCA4MywgNzIsIDcyLCA3OSwgNzksIDc1LCAxMjgsIDcwLCA3MywgODMsIDcyLCA3MiwgNzksIDc5LCAyMDMsIDcwLCA3MywgCi0gICAgODMsIDcyLCA2OSwgODksIDY5LCAxMjgsIDcwLCA3MywgODMsIDcyLCAxMjgsIDcwLCA3MywgODMsIDIwMCwgNzAsIDczLCAKLSAgICA4MiwgODMsIDIxMiwgNzAsIDczLCA4MiwgNzMsIDEyOCwgNzAsIDczLCA4MiwgNjksIDg3LCA3OSwgODIsIDc1LCA4MywgCi0gICAgMTI4LCA3MCwgNzMsIDgyLCA2OSwgODcsIDc5LCA4MiwgMjAzLCA3MCwgNzMsIDgyLCA2OSwgMTI4LCA3MCwgNzMsIDgyLCAKLSAgICAxOTcsIDcwLCA3MywgODAsIDEyOCwgNzAsIDczLCA3OCwgNzMsIDg0LCAxOTcsIDcwLCA3MywgNzgsIDcxLCA2OSwgODIsIAotICAgIDc4LCA2NSwgNzMsIDc2LCA4MywgMTI4LCA3MCwgNzMsIDc4LCA3MSwgNjksIDgyLCA2OSwgMTk2LCA3MCwgNzMsIDc4LCA2NSwgCi0gICAgNzgsIDY3LCA3MywgNjUsIDc2LCAxMjgsIDcwLCA3MywgNzYsIDc2LCA2OSwgODIsIDEyOCwgNzAsIDczLCA3NiwgNzYsIDY5LCAKLSAgICAxOTYsIDcwLCA3MywgNzYsIDc2LCAxMjgsIDcwLCA3MywgNzYsIDIwNCwgNzAsIDczLCA3NiwgMTk3LCA3MCwgNzMsIDczLCAKLSAgICAxMjgsIDcwLCA3MywgNzEsIDg1LCA4MiwgNjksIDQ1LCA1MSwgMTI4LCA3MCwgNzMsIDcxLCA4NSwgODIsIDY5LCA0NSwgNTAsIAotICAgIDEyOCwgNzAsIDczLCA3MSwgODUsIDgyLCA2OSwgNDUsIDQ5LCAxMjgsIDcwLCA3MywgNzEsIDg1LCA4MiwgMTk3LCA3MCwgCi0gICAgNzMsIDcxLCA3MiwgODQsIDEyOCwgNzAsIDczLCA3MCwgODQsIDg5LCAxMjgsIDcwLCA3MywgNzAsIDg0LCAyMTcsIDcwLCAKLSAgICA3MywgNzAsIDg0LCA3MiwgODMsIDEyOCwgNzAsIDczLCA3MCwgODQsIDcyLCAxMjgsIDcwLCA3MywgNzAsIDg0LCA2OSwgNjksIAotICAgIDc4LCAxMjgsIDcwLCA3MywgNzAsIDg0LCA2OSwgNjksIDIwNiwgNzAsIDczLCA2OSwgNzYsIDY4LCAxMjgsIDcwLCA3MiwgCi0gICAgODQsIDc5LCA4MiwgMTkzLCA3MCwgNzAsIDc2LCAxMjgsIDcwLCA3MCwgNzMsIDEyOCwgNzAsIDY5LCA4NSwgODgsIDEyOCwgCi0gICAgNzAsIDY5LCA4NSwgNzAsIDY5LCA4NSwgNjUsIDY5LCA4NCwgMTI4LCA3MCwgNjksIDgzLCA4NCwgNzMsIDg2LCA2NSwgNzYsIAotICAgIDEyOCwgNzAsIDY5LCA4MiwgODIsIDg5LCAxMjgsIDcwLCA2OSwgODIsIDgyLCA3MywgMjExLCA3MCwgNjksIDgyLCA3NywgCi0gICAgNjUsIDg0LCA2NSwgMTI4LCA3MCwgNjksIDgyLCA3NywgNjUsIDg0LCAxOTMsIDcwLCA2OSwgNzksIDIwMCwgNzAsIDY5LCAKLSAgICA3OCwgMTk5LCA3MCwgNjksIDc4LCA2NywgNjksIDEyOCwgNzAsIDY5LCA3NywgNzMsIDc4LCA3MywgNzgsIDE5NywgNzAsIAotICAgIDY5LCA3NywgNjUsIDc2LCA2OSwgMTI4LCA3MCwgNjksIDc3LCA2NSwgNzYsIDE5NywgNzAsIDY5LCA3NiwgNzYsIDc5LCA4NywgCi0gICAgODMsIDcyLCA3MywgODAsIDEyOCwgNzAsIDY5LCA3MywgMTI4LCA3MCwgNjksIDcyLCAyMTMsIDcwLCA2OSwgNzIsIDEyOCwgCi0gICAgNzAsIDY5LCAyMDAsIDcwLCA2OSwgNjksIDc4LCA3MSwgMTI4LCA3MCwgNjksIDY5LCA2OCwgMTI4LCA3MCwgNjksIDY5LCAKLSAgICAxOTYsIDcwLCA2OSwgNjksIDEyOCwgNzAsIDY5LCA2NiwgODIsIDg1LCA2NSwgODIsIDg5LCAxMjgsIDcwLCA2OSwgNjUsIAotICAgIDg0LCA3MiwgNjksIDgyLCAxMjgsIDcwLCA2OSwgNjUsIDg0LCA3MiwgNjksIDIxMCwgNzAsIDY5LCA2NSwgODIsIDc4LCAKLSAgICAxMjgsIDcwLCA2OSwgNjUsIDgyLCA3MCwgODUsIDIwNCwgNzAsIDY5LCA2NSwgODIsIDEyOCwgNzAsIDY1LCA4OSwgNjUsIAotICAgIDc4LCA3OCwgNjUsIDEyOCwgNzAsIDY1LCA4OCwgMTI4LCA3MCwgNjUsIDIxNiwgNzAsIDY1LCA4NCwgNzMsIDcxLCA4NSwgCi0gICAgNjksIDEyOCwgNzAsIDY1LCA4NCwgNzIsIDY5LCA4MiwgMTI4LCA3MCwgNjUsIDg0LCA3MiwgNjksIDIxMCwgNzAsIDY1LCAKLSAgICA4NCwgNzIsIDY1LCA4NCwgNjUsIDc4LCAxMjgsIDcwLCA2NSwgODQsIDcyLCA2NSwgODQsIDY1LCAyMDYsIDcwLCA2NSwgODQsIAotICAgIDcyLCA2NSwgMTI4LCA3MCwgNjUsIDg0LCA3MiwgMTkzLCA3MCwgNjUsIDg0LCAxMjgsIDcwLCA2NSwgODIsIDgzLCAyMDEsIAotICAgIDcwLCA2NSwgODEsIDEyOCwgNzAsIDY1LCA4MCwgMTI4LCA3MCwgNjUsIDc4LCA3MSwgMTI4LCA3MCwgNjUsIDc4LCA2OSwgCi0gICAgODIsIDc5LCA4MywgNzMsIDIxMSwgNzAsIDY1LCA3OCwgMTI4LCA3MCwgNjUsIDc3LCA3MywgNzYsIDg5LCAxMjgsIDcwLCAKLSAgICA2NSwgNzYsIDc2LCA3MywgNzgsIDE5OSwgNzAsIDY1LCA3NiwgNzYsIDY5LCAyMDYsIDcwLCA2NSwgNzMsIDc2LCA4NSwgODIsIAotICAgIDY5LCAxMjgsIDcwLCA2NSwgNzMsIDcyLCA4NSwgMTI4LCA3MCwgNjUsIDcyLCA4MiwgNjksIDc4LCA3MiwgNjksIDczLCA4NCwgCi0gICAgMTI4LCA3MCwgNjUsIDY3LCA4NCwgNzksIDgyLCA4OSwgMTI4LCA3MCwgNjUsIDY3LCA4NCwgNzksIDIxMCwgNzAsIDY1LCAKLSAgICA2NywgODMsIDczLCA3NywgNzMsIDc2LCAxOTcsIDcwLCA2NSwgNjcsIDY5LCA0NSwgNTQsIDEyOCwgNzAsIDY1LCA2NywgNjksIAotICAgIDQ1LCA1MywgMTI4LCA3MCwgNjUsIDY3LCA2OSwgNDUsIDUyLCAxMjgsIDcwLCA2NSwgNjcsIDY5LCA0NSwgNTEsIDEyOCwgCi0gICAgNzAsIDY1LCA2NywgNjksIDQ1LCA1MCwgMTI4LCA3MCwgNjUsIDY3LCA2OSwgNDUsIDQ5LCAxMjgsIDcwLCA2NSwgNjUsIDc3LCAKLSAgICA2NSwgNjksIDEyOCwgNzAsIDY1LCA2NSwgNzMsIDEyOCwgNzAsIDY1LCA2NSwgNzAsIDg1LCAxMjgsIDcwLCA0OCwgNTMsIAotICAgIDUxLCAxMjgsIDcwLCA0OCwgNTMsIDUwLCAxMjgsIDcwLCA0OCwgNTMsIDQ5LCA2NywgMTI4LCA3MCwgNDgsIDUzLCA0OSwgCi0gICAgNjYsIDEyOCwgNzAsIDQ4LCA1MywgNDksIDY1LCAxMjgsIDcwLCA0OCwgNTMsIDQ5LCAxMjgsIDcwLCA0OCwgNTMsIDQ4LCAKLSAgICAxMjgsIDcwLCA0OCwgNTIsIDU3LCAxMjgsIDcwLCA0OCwgNTIsIDU2LCAxMjgsIDcwLCA0OCwgNTIsIDU1LCA2NSwgMTI4LCAKLSAgICA3MCwgNDgsIDUyLCA1NSwgMTI4LCA3MCwgNDgsIDUyLCA1NCwgNjUsIDEyOCwgNzAsIDQ4LCA1MiwgNTQsIDEyOCwgNzAsIAotICAgIDQ4LCA1MiwgNTMsIDY1LCAxMjgsIDcwLCA0OCwgNTIsIDUzLCAxMjgsIDcwLCA0OCwgNTIsIDUyLCAxMjgsIDcwLCA0OCwgCi0gICAgNTIsIDUxLCAxMjgsIDcwLCA0OCwgNTIsIDUwLCAxMjgsIDcwLCA0OCwgNTIsIDQ5LCAxMjgsIDcwLCA0OCwgNTIsIDQ4LCAKLSAgICAxMjgsIDcwLCA0OCwgNTEsIDU3LCAxMjgsIDcwLCA0OCwgNTEsIDU2LCA2NSwgMTI4LCA3MCwgNDgsIDUxLCA1NiwgMTI4LCAKLSAgICA3MCwgNDgsIDUxLCA1NSwgNjUsIDEyOCwgNzAsIDQ4LCA1MSwgNTUsIDEyOCwgNzAsIDQ4LCA1MSwgNTQsIDEyOCwgNzAsIAotICAgIDQ4LCA1MSwgNTMsIDEyOCwgNzAsIDQ4LCA1MSwgNTIsIDEyOCwgNzAsIDQ4LCA1MSwgNTEsIDEyOCwgNzAsIDQ4LCA1MSwgCi0gICAgNTAsIDEyOCwgNzAsIDQ4LCA1MSwgNDksIDY1LCAxMjgsIDcwLCA0OCwgNTEsIDQ5LCAxMjgsIDcwLCA0OCwgNTEsIDQ4LCAKLSAgICAxMjgsIDcwLCA0OCwgNTAsIDU3LCAxMjgsIDcwLCA0OCwgNTAsIDU2LCAxMjgsIDcwLCA0OCwgNTAsIDU1LCAxMjgsIDcwLCAKLSAgICA0OCwgNTAsIDU0LCAxMjgsIDcwLCA0OCwgNTAsIDUzLCAxMjgsIDcwLCA0OCwgNTAsIDUyLCAxMjgsIDcwLCA0OCwgNTAsIAotICAgIDUxLCAxMjgsIDcwLCA0OCwgNTAsIDUwLCAxMjgsIDcwLCA0OCwgNTAsIDQ5LCA2NSwgMTI4LCA3MCwgNDgsIDUwLCA0OSwgCi0gICAgMTI4LCA3MCwgNDgsIDUwLCA0OCwgMTI4LCA3MCwgNDgsIDQ5LCA1NywgMTI4LCA3MCwgNDgsIDQ5LCA1NiwgMTI4LCA3MCwgCi0gICAgNDgsIDQ5LCA1NSwgMTI4LCA3MCwgNDgsIDQ5LCA1NCwgMTI4LCA3MCwgNDgsIDQ5LCA1MywgMTI4LCA3MCwgNDgsIDQ5LCAKLSAgICA1MiwgMTI4LCA3MCwgNDgsIDQ5LCA1MSwgNjUsIDEyOCwgNzAsIDQ4LCA0OSwgNTEsIDEyOCwgNzAsIDQ4LCA0OSwgNTAsIAotICAgIDEyOCwgNzAsIDQ4LCA0OSwgNDksIDEyOCwgNzAsIDQ4LCA0OSwgNDgsIDEyOCwgNzAsIDQ4LCA0OCwgNTcsIDEyOCwgNzAsIAotICAgIDQ4LCA0OCwgNTYsIDEyOCwgNzAsIDQ4LCA0OCwgNTUsIDEyOCwgNzAsIDQ4LCA0OCwgNTQsIDEyOCwgNzAsIDQ4LCA0OCwgCi0gICAgNTMsIDEyOCwgNzAsIDQ4LCA0OCwgNTIsIDEyOCwgNzAsIDQ4LCA0OCwgNTEsIDEyOCwgNzAsIDQ4LCA0OCwgNTAsIDEyOCwgCi0gICAgNzAsIDQ4LCA0OCwgNDksIDY1LCAxMjgsIDcwLCA0OCwgNDgsIDQ5LCAxMjgsIDY5LCA5MCwgMjAwLCA2OSwgOTAsIDY5LCAKLSAgICA3OCwgMTI4LCA2OSwgOTAsIDY5LCAyMDYsIDY5LCA5MCwgMTI4LCA2OSwgODksIDY5LCA4MywgMTI4LCA2OSwgODksIDY5LCAKLSAgICA3MSwgNzYsIDY1LCA4MywgODMsIDY5LCA4MywgMTI4LCA2OSwgODksIDY2LCA2OSwgODksIDcwLCA3MywgNzYsIDczLCAxMjgsIAotICAgIDY5LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNjksIDg4LCA4NCwgODIsIDY1LCA4NCwgNjksIDgyLCA4MiwgNjksIDgzLCAKLSAgICA4NCwgODIsIDczLCA2NSwgMjA0LCA2OSwgODgsIDg0LCA4MiwgNjUsIDQ1LCA3NiwgNzksIDIxNSwgNjksIDg4LCA4NCwgODIsIAotICAgIDY1LCA0NSwgNzIsIDczLCA3MSwgMjAwLCA2OSwgODgsIDg0LCA2OSwgNzgsIDgzLCA3MywgNzksIDc4LCAxMjgsIDY5LCA4OCwgCi0gICAgODQsIDY5LCA3OCwgNjgsIDY5LCAxOTYsIDY5LCA4OCwgODAsIDc5LCA3OCwgNjksIDc4LCAyMTIsIDY5LCA4OCwgNzksIAotICAgIDEyOCwgNjksIDg4LCAyMDcsIDY5LCA4OCwgNzMsIDgzLCA4NCwgODMsIDEyOCwgNjksIDg4LCA3MywgODMsIDg0LCAxMjgsIAotICAgIDY5LCA4OCwgNzIsIDY1LCA4NSwgODMsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY5LCA4OCwgNjcsIDc2LCA2NSwgNzcsIDY1LCAKLSAgICA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2OSwgODgsIDY3LCA3NiwgNjUsIDc3LCA2NSwgODQsIDczLCA3OSwgMjA2LCA2OSwgODgsIAotICAgIDY3LCA3MiwgNjUsIDc4LCA3MSwgNjksIDEyOCwgNjksIDg4LCA2NywgNjksIDgzLCA4MywgMTI4LCA2OSwgODgsIDY3LCA2OSwgCi0gICAgNzYsIDc2LCA2OSwgNzgsIDg0LCAxMjgsIDY5LCA4NywgNjksIDEyOCwgNjksIDg2LCA2OSwgODIsIDcxLCA4MiwgNjksIDY5LCAKLSAgICAyMDYsIDY5LCA4NiwgNjksIDc4LCA3MywgNzgsIDcxLCAxMjgsIDY5LCA4NSwgODIsIDc5LCA4MCwgNjksIDY1LCAyMDYsIAotICAgIDY5LCA4NSwgODIsIDc5LCA4MCwgNjksIDQ1LCA2NSwgNzAsIDgyLCA3MywgNjcsIDY1LCAxMjgsIDY5LCA4NSwgODIsIDc5LCAKLSAgICA0NSwgNjcsIDg1LCA4MiwgODIsIDY5LCA3OCwgNjcsIDIxNywgNjksIDg1LCA4MiwgMjA3LCA2OSwgODUsIDc2LCA2OSwgCi0gICAgMjEwLCA2OSwgODUsIDQ1LCA4NSwgMTI4LCA2OSwgODUsIDQ1LCA3OSwgMTI4LCA2OSwgODUsIDQ1LCA2OSwgODUsIDEyOCwgCi0gICAgNjksIDg1LCA0NSwgNjksIDc5LCAxMjgsIDY5LCA4NSwgNDUsIDY5LCAxMjgsIDY5LCA4NSwgNDUsIDY1LCAxMjgsIDY5LCAKLSAgICA4NCwgNzgsIDY1LCA3MiwgODQsIDY1LCAxMjgsIDY5LCA4NCwgNzIsIDY5LCAyMDQsIDY5LCA4NCwgNjksIDgyLCA3OSwgCi0gICAgMjA2LCA2OSwgODQsIDY5LCA4MiwgNzgsIDczLCA4NCwgODksIDEyOCwgNjksIDgzLCA4NSwgNzUsIDg1LCA4NSwgNjgsIDc5LCAKLSAgICAxMjgsIDY5LCA4MywgODQsIDczLCA3NywgNjUsIDg0LCA2OSwgODMsIDEyOCwgNjksIDgzLCA4NCwgNzMsIDc3LCA2NSwgODQsIAotICAgIDY5LCAxOTYsIDY5LCA4MywgNzIsIDY5LCA1MSwgMTI4LCA2OSwgODMsIDcyLCA1MCwgNDksIDEyOCwgNjksIDgzLCA3MiwgCi0gICAgMTc4LCA2OSwgODMsIDcyLCA0OSwgNTQsIDEyOCwgNjksIDgzLCA2NywgNjUsIDgwLCA2OSwgMTI4LCA2OSwgODMsIDQ1LCAKLSAgICA4NCwgNjksIDEyOCwgNjksIDgyLCA4MiwgNzksIDgyLCA0NSwgNjYsIDY1LCA4MiwgODIsIDY5LCAxOTYsIDY5LCA4MiwgODIsIAotICAgIDEyOCwgNjksIDgyLCA3MywgNzgsIDUwLCAxMjgsIDY5LCA4MiwgNzEsIDEyOCwgNjksIDgyLCA2NSwgODMsIDE5NywgNjksIAotICAgIDgxLCA4NSwgNzMsIDg2LCA2NSwgNzYsIDY5LCA3OCwgMjEyLCA2OSwgODEsIDg1LCA3MywgNjgsIDEyOCwgNjksIDgxLCA4NSwgCi0gICAgNzMsIDY1LCA3OCwgNzEsIDg1LCA3NiwgNjUsIDIxMCwgNjksIDgxLCA4NSwgNjUsIDc2LCA4MywgMTI4LCA2OSwgODEsIDg1LCAKLSAgICA2NSwgNzYsIDIxMSwgNjksIDgxLCA4NSwgNjUsIDc2LCAxMjgsIDY5LCA4MCwgODMsIDczLCA3NiwgNzksIDc4LCAxMjgsIAotICAgIDY5LCA4MCwgODMsIDczLCA3NiwgNzksIDIwNiwgNjksIDgwLCA3OSwgNjcsIDcyLCAxMjgsIDY5LCA4MCwgNzMsIDcxLCA4MiwgCi0gICAgNjUsIDgwLCA3MiwgNzMsIDE5NSwgNjksIDgwLCA3MywgNjgsIDY1LCA4NSwgODIsIDY5LCA2NSwgMjA2LCA2OSwgODAsIDY5LCAKLSAgICA3OCwgODQsIDcyLCA2OSwgODQsIDczLCAxOTUsIDY5LCA4MCwgNjksIDcxLCA2OSwgODIsIDc3LCA2NSwgMTI4LCA2OSwgNzksIAotICAgIDc2LCA3MiwgODgsIDEyOCwgNjksIDc5LCA3MiwgMTI4LCA2OSwgNzgsIDg5LCAxMjgsIDY5LCA3OCwgODYsIDY5LCA3NiwgCi0gICAgNzksIDgwLCA2OSwgMTI4LCA2OSwgNzgsIDg2LCA2OSwgNzYsIDc5LCA4MCwgMTk3LCA2OSwgNzgsIDg1LCA3NywgNjksIDgyLCAKLSAgICA2NSwgODQsIDczLCA3OSwgMjA2LCA2OSwgNzgsIDg0LCA4MiwgODksIDQ1LCA1MCwgMTI4LCA2OSwgNzgsIDg0LCA4MiwgODksIAotICAgIDQ1LCA0OSwgMTI4LCA2OSwgNzgsIDg0LCA4MiwgODksIDEyOCwgNjksIDc4LCA4NCwgODIsIDIxNywgNjksIDc4LCA4NCwgCi0gICAgNzIsIDg1LCA4MywgNzMsIDY1LCA4MywgNzcsIDEyOCwgNjksIDc4LCA4NCwgNjksIDgyLCA4MCwgODIsIDczLCA4MywgNjksIAotICAgIDEyOCwgNjksIDc4LCA4NCwgNjksIDgyLCA3MywgNzgsIDE5OSwgNjksIDc4LCA4NCwgNjksIDgyLCAxMjgsIDY5LCA3OCwgCi0gICAgODQsIDY5LCAyMTAsIDY5LCA3OCwgODEsIDg1LCA3MywgODIsIDg5LCAxMjgsIDY5LCA3OCwgNzksIDIxMSwgNjksIDc4LCAKLSAgICA3OCwgMTI4LCA2OSwgNzgsIDc2LCA2NSwgODIsIDcxLCA2OSwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNjksIDc4LCA3MSwgNzMsIAotICAgIDc4LCA2OSwgMTI4LCA2OSwgNzgsIDY4LCA3OSwgNzAsIDc5LCA3OCwgNzksIDc4LCAxMjgsIDY5LCA3OCwgNjgsIDczLCA3OCwgCi0gICAgMTk5LCA2OSwgNzgsIDY4LCA2OSwgODAsIDEyOCwgNjksIDc4LCA2OCwgNjksIDY1LCA4NiwgNzksIDg1LCA4MiwgMTI4LCAKLSAgICA2OSwgNzgsIDY3LCA3OSwgODUsIDc4LCA4NCwgNjksIDgyLCA4MywgMTI4LCA2OSwgNzgsIDY3LCA3NiwgNzksIDgzLCA4NSwgCi0gICAgODIsIDY5LCAxMjgsIDY5LCA3OCwgNjcsIDc2LCA3OSwgODMsIDczLCA3OCwgMTk5LCA2OSwgNzgsIDY3LCAxMjgsIDY5LCAKLSAgICA3OCwgNjUsIDgyLCA4OCwgNzMsIDIxMSwgNjksIDc4LCA2NSwgODIsIDc3LCA3OSwgNzgsIDczLCA3OSwgMjExLCA2OSwgNzcsIAotICAgIDgwLCA4NCwgMjE3LCA2OSwgNzcsIDgwLCA3MiwgNjUsIDg0LCA3MywgMTk1LCA2OSwgNzcsIDgwLCA3MiwgNjUsIDgzLCA3MywgCi0gICAgMjExLCA2OSwgNzcsIDY2LCA4MiwgNzksIDczLCA2OCwgNjksIDgyLCA4OSwgMTI4LCA2OSwgNzcsIDY2LCA3NiwgNjksIDc3LCAKLSAgICAxMjgsIDY5LCA3NywgNjYsIDY5LCA3NiwgNzYsIDczLCA4MywgNzIsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDY5LCA3NywgNjYsIAotICAgIDY5LCA2OCwgNjgsIDczLCA3OCwgNzEsIDEyOCwgNjksIDc2LCA4NCwgMTI4LCA2OSwgNzYsIDc2LCA3MywgODAsIDgzLCA3MywgCi0gICAgODMsIDEyOCwgNjksIDc2LCA3NiwgNzMsIDgwLCA4MywgNjksIDEyOCwgNjksIDc2LCA3MywgNzAsIDczLCAxMjgsIDY5LCAKLSAgICA3NiwgNjksIDg2LCA2OSwgNzgsIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDY5LCA3NiwgNjksIDg2LCA2OSwgCi0gICAgNzgsIDEyOCwgNjksIDc2LCA2OSwgODYsIDY5LCAyMDYsIDY5LCA3NiwgNjksIDgwLCA3MiwgNjUsIDc4LCA4NCwgMTI4LCAKLSAgICA2OSwgNzYsIDY5LCA3NywgNjksIDc4LCAyMTIsIDY5LCA3NiwgNjksIDY3LCA4NCwgODIsIDczLCA2NywgNjUsIDIwNCwgNjksIAotICAgIDc2LCA2OSwgNjcsIDg0LCA4MiwgNzMsIDE5NSwgNjksIDc2LCA2NSwgNzAsIDgyLCA3OSwgNzgsIDEyOCwgNjksIDc1LCA4MywgCi0gICAgODQsIDgyLCA2OSwgODAsIDg0LCA3OSwgNzgsIDEyOCwgNjksIDc1LCA4MywgMTI4LCA2OSwgNzUsIDcwLCA3OSwgNzgsIDczLCAKLSAgICA4NCwgNzMsIDc1LCA3OSwgNzgsIDEyOCwgNjksIDc1LCA2NSwgODIsIDY1LCAxMjgsIDY5LCA3NCwgNjksIDY3LCAyMTIsIAotICAgIDY5LCA3MywgODMsIDEyOCwgNjksIDczLCA3MSwgNzIsIDg0LCA4OSwgMTI4LCA2OSwgNzMsIDcxLCA3MiwgODQsIDIxNywgCi0gICAgNjksIDczLCA3MSwgNzIsIDg0LCA3MiwgODMsIDEyOCwgNjksIDczLCA3MSwgNzIsIDg0LCA3MiwgMjExLCA2OSwgNzMsIDcxLCAKLSAgICA3MiwgODQsIDcyLCAxMjgsIDY5LCA3MywgNzEsIDcyLCA4NCwgNjksIDY5LCA3OCwgMTI4LCA2OSwgNzMsIDcxLCA3MiwgODQsIAotICAgIDY5LCA2OSwgMjA2LCA2OSwgNzMsIDcxLCA3MiwgODQsIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDY5LCA3MywgCi0gICAgNjksIDEyOCwgNjksIDcyLCA4NywgNjUsIDIxOCwgNjksIDcxLCA4OSwgODAsIDg0LCA3OSwgNzYsIDc5LCA3MSwgNzMsIDY3LCAKLSAgICA2NSwgMjA0LCA2OSwgNzEsIDczLCA4MiwgMTI4LCA2OSwgNzEsIDcxLCAxMjgsIDY5LCA2OSwgODksIDY1LCA3OCwgNzgsIAotICAgIDY1LCAxMjgsIDY5LCA2OSwgNzUsIDY1LCA2NSwgMTI4LCA2OSwgNjksIDY2LCA2OSwgNjksIDcwLCA3MywgNzYsIDczLCAKLSAgICAxMjgsIDY5LCA2OCwgNzMsIDg0LCA3OSwgODIsIDczLCA2NSwgMjA0LCA2OSwgNjgsIDczLCA3OCwgMTI4LCA2OSwgNjgsIAotICAgIDY4LCAxMjgsIDY5LCA2NiwgNjksIDcwLCA3MywgNzYsIDczLCAxMjgsIDY5LCA2NSwgODMsIDg0LCA2OSwgODIsIDIwNiwgCi0gICAgNjksIDY1LCA4MywgMjEyLCA2OSwgNjUsIDgyLCA4NCwgNzIsIDc2LCAyMTcsIDY5LCA2NSwgODIsIDg0LCA3MiwgMTI4LCAKLSAgICA2OSwgNjUsIDgyLCA4NCwgMjAwLCA2OSwgNjUsIDgyLCA4MywgMTI4LCA2OSwgNjUsIDgyLCA3NiwgMjE3LCA2OSwgNjUsIAotICAgIDc3LCA3MiwgNjUsIDc4LCA2NywgNzIsIDc5LCA3NiwgNzYsIDEyOCwgNjksIDY1LCA3MSwgNzYsIDY5LCAxMjgsIDY5LCA2NSwgCi0gICAgNjgsIDcyLCA2NSwgNjgsIDcyLCAxMjgsIDY5LCA2NSwgNjYsIDcyLCA2NSwgNjgsIDcyLCAxMjgsIDY5LCAxNzgsIDY5LCAKLSAgICA0OCwgNTEsIDU2LCAxMjgsIDY5LCA0OCwgNTEsIDU1LCAxMjgsIDY5LCA0OCwgNTEsIDU0LCAxMjgsIDY5LCA0OCwgNTEsIAotICAgIDUyLCA2NSwgMTI4LCA2OSwgNDgsIDUxLCA1MiwgMTI4LCA2OSwgNDgsIDUxLCA1MSwgMTI4LCA2OSwgNDgsIDUxLCA1MCwgCi0gICAgMTI4LCA2OSwgNDgsIDUxLCA0OSwgMTI4LCA2OSwgNDgsIDUxLCA0OCwgMTI4LCA2OSwgNDgsIDUwLCA1NywgMTI4LCA2OSwgCi0gICAgNDgsIDUwLCA1NiwgNjUsIDEyOCwgNjksIDQ4LCA1MCwgNTYsIDEyOCwgNjksIDQ4LCA1MCwgNTUsIDEyOCwgNjksIDQ4LCAKLSAgICA1MCwgNTQsIDEyOCwgNjksIDQ4LCA1MCwgNTMsIDEyOCwgNjksIDQ4LCA1MCwgNTIsIDEyOCwgNjksIDQ4LCA1MCwgNTEsIAotICAgIDEyOCwgNjksIDQ4LCA1MCwgNTAsIDEyOCwgNjksIDQ4LCA1MCwgNDksIDEyOCwgNjksIDQ4LCA1MCwgNDgsIDY1LCAxMjgsIAotICAgIDY5LCA0OCwgNTAsIDQ4LCAxMjgsIDY5LCA0OCwgNDksIDU3LCAxMjgsIDY5LCA0OCwgNDksIDU2LCAxMjgsIDY5LCA0OCwgCi0gICAgNDksIDU1LCA2NSwgMTI4LCA2OSwgNDgsIDQ5LCA1NSwgMTI4LCA2OSwgNDgsIDQ5LCA1NCwgNjUsIDEyOCwgNjksIDQ4LCAKLSAgICA0OSwgNTQsIDEyOCwgNjksIDQ4LCA0OSwgNTMsIDEyOCwgNjksIDQ4LCA0OSwgNTIsIDEyOCwgNjksIDQ4LCA0OSwgNTEsIAotICAgIDEyOCwgNjksIDQ4LCA0OSwgNTAsIDEyOCwgNjksIDQ4LCA0OSwgNDksIDEyOCwgNjksIDQ4LCA0OSwgNDgsIDEyOCwgNjksIAotICAgIDQ4LCA0OCwgNTcsIDY1LCAxMjgsIDY5LCA0OCwgNDgsIDU3LCAxMjgsIDY5LCA0OCwgNDgsIDU2LCA2NSwgMTI4LCA2OSwgCi0gICAgNDgsIDQ4LCA1NiwgMTI4LCA2OSwgNDgsIDQ4LCA1NSwgMTI4LCA2OSwgNDgsIDQ4LCA1NCwgMTI4LCA2OSwgNDgsIDQ4LCAKLSAgICA1MywgMTI4LCA2OSwgNDgsIDQ4LCA1MiwgMTI4LCA2OSwgNDgsIDQ4LCA1MSwgMTI4LCA2OSwgNDgsIDQ4LCA1MCwgMTI4LCAKLSAgICA2OSwgNDgsIDQ4LCA0OSwgMTI4LCA2OSwgNDUsIDc3LCA2NSwgNzMsIDIwNCwgNjgsIDkwLCA5MCwgNjksIDEyOCwgNjgsIAotICAgIDkwLCA4NywgNjksIDEyOCwgNjgsIDkwLCA4NSwgMTI4LCA2OCwgOTAsIDc5LCAxMjgsIDY4LCA5MCwgNzQsIDY5LCAxMjgsIAotICAgIDY4LCA5MCwgNzMsIDEyOCwgNjgsIDkwLCA3MiwgNjksIDEyOCwgNjgsIDkwLCA3MiwgNjUsIDEyOCwgNjgsIDkwLCA2OSwgCi0gICAgNzYsIDc5LCAxMjgsIDY4LCA5MCwgNjksIDY5LCAxMjgsIDY4LCA5MCwgNjksIDEyOCwgNjgsIDkwLCA2NSwgNjUsIDEyOCwgCi0gICAgNjgsIDkwLCA2NSwgMTI4LCA2OCwgOTAsIDEyOCwgNjgsIDIxOCwgNjgsIDg5LCA3OSwgMTI4LCA2OCwgODksIDIwNywgNjgsIAotICAgIDg5LCA2OSwgNzIsIDEyOCwgNjgsIDg5LCA2OSwgMjAwLCA2OCwgODcsIDc5LCAxMjgsIDY4LCA4NywgNjksIDEyOCwgNjgsIAotICAgIDg3LCA2NSwgMTI4LCA2OCwgODYsIDczLCA4MywgODYsIDY1LCA4MiwgNjUsIDEyOCwgNjgsIDg2LCA2OCwgMTI4LCA2OCwgCi0gICAgODYsIDEyOCwgNjgsIDg1LCA4NCwgNzMsIDY5LCA4MywgMTI4LCA2OCwgODUsIDgzLCA3NSwgMTI4LCA2OCwgODUsIDgzLCAKLSAgICA3MiwgNjksIDc4LCA3OCwgNjUsIDEyOCwgNjgsIDg1LCA4MiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY4LCA4NSwgODIsIAotICAgIDUwLCAxMjgsIDY4LCA4NSwgODAsIDc5LCA3OCwgNjgsIDczLCA4NSwgMjExLCA2OCwgODUsIDc5LCA4OCwgMTI4LCA2OCwgCi0gICAgODUsIDc5LCAxMjgsIDY4LCA4NSwgNzgsIDUyLCAxMjgsIDY4LCA4NSwgNzgsIDUxLCAxMjgsIDY4LCA4NSwgNzgsIDE3OSwgCi0gICAgNjgsIDg1LCA3NywgMTI4LCA2OCwgODUsIDIwNCwgNjgsIDg1LCA3MiwgMTI4LCA2OCwgODUsIDcxLCA4NSwgNjgsIDEyOCwgCi0gICAgNjgsIDg1LCA2NiwgNTAsIDEyOCwgNjgsIDg1LCA2NiwgMTI4LCA2OCwgODUsIDE5NCwgNjgsIDgyLCA4OSwgMTI4LCA2OCwgCi0gICAgODIsIDIxNywgNjgsIDgyLCA4NSwgNzcsIDEyOCwgNjgsIDgyLCA4NSwgMjA1LCA2OCwgODIsIDc5LCA4MCwgODMsIDEyOCwgCi0gICAgNjgsIDgyLCA3OSwgODAsIDc2LCA2OSwgODQsIDEyOCwgNjgsIDgyLCA3OSwgODAsIDQ1LCA4MywgNzIsIDY1LCA2OCwgNzksIAotICAgIDg3LCA2OSwgMTk2LCA2OCwgODIsIDc5LCA3NywgNjksIDY4LCA2NSwgODIsIDIxNywgNjgsIDgyLCA3MywgODYsIDY5LCAKLSAgICAxMjgsIDY4LCA4MiwgNzMsIDg2LCAxOTcsIDY4LCA4MiwgNzMsIDc4LCA3NSwgMTI4LCA2OCwgODIsIDczLCAyMDQsIDY4LCAKLSAgICA4MiwgNjksIDgzLCA4MywgMTI4LCA2OCwgODIsIDY1LCA4NSwgNzEsIDcyLCA4NCwgMjExLCA2OCwgODIsIDY1LCA3NywgCi0gICAgMTI4LCA2OCwgODIsIDY1LCA3MSwgNzksIDc4LCAxMjgsIDY4LCA4MiwgNjUsIDcxLCA3OSwgMjA2LCA2OCwgODIsIDY1LCAKLSAgICA3MCwgODQsIDczLCA3OCwgMTk5LCA2OCwgODIsIDY1LCA2NywgNzIsIDc3LCA2NSwgODMsIDEyOCwgNjgsIDgyLCA2NSwgNjcsIAotICAgIDcyLCA3NywgNjUsIDEyOCwgNjgsIDgyLCA2NSwgNjcsIDcyLCA3NywgMTkzLCA2OCwgNzksIDg3LCA3OCwgODcsIDY1LCA4MiwgCi0gICAgNjgsIDgzLCAxMjgsIDY4LCA3OSwgODcsIDc4LCA4NywgNjUsIDgyLCA2OCwgMjExLCA2OCwgNzksIDg3LCA3OCwgNDUsIDgwLCAKLSAgICA3OSwgNzMsIDc4LCA4NCwgNzMsIDc4LCAxOTksIDY4LCA3OSwgODcsIDc4LCAxMjgsIDY4LCA3OSwgODYsIDY5LCAxMjgsIAotICAgIDY4LCA3OSwgODUsIDcxLCA3MiwgNzgsIDg1LCA4NCwgMTI4LCA2OCwgNzksIDg1LCA2NiwgODQsIDEyOCwgNjgsIDc5LCA4NSwgCi0gICAgNjYsIDc2LCA2OSwgMTk2LCA2OCwgNzksIDg1LCA2NiwgNzYsIDY5LCA0NSwgNzYsIDczLCA3OCwgMTk3LCA2OCwgNzksIDg1LCAKLSAgICA2NiwgNzYsIDY5LCA0NSwgNjksIDc4LCA2OCwgNjksIDE5NiwgNjgsIDc5LCA4NSwgNjYsIDc2LCA2OSwgMTI4LCA2OCwgNzksIAotICAgIDg0LCA4NCwgNjksIDY4LCA0NSwgODAsIDEyOCwgNjgsIDc5LCA4NCwgODQsIDY5LCA2OCwgNDUsIDc4LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDg0LCA2OSwgNjgsIDQ1LCA3NiwgMTI4LCA2OCwgNzksIDg0LCA4NCwgNjksIDY4LCAxMjgsIDY4LCA3OSwgODQsIDg0LCAKLSAgICA2OSwgMTk2LCA2OCwgNzksIDg0LCA4MywgNDUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTUsIDU2LCAxMjgsIAotICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKLSAgICA0NSwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MywgNTUsIAotICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTMsIDU0LCA1NiwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTMsIDU0LCAKLSAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUzLCAxMjgsIAotICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDU1LCA1NiwgMTI4LCA2OCwgCi0gICAgNzksIDg0LCA4MywgNDUsIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCAKLSAgICA4NCwgODMsIDQ1LCA1MiwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCA1NCwgNTUsIDEyOCwgNjgsIAotICAgIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNTIsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU1LCAxMjgsIDY4LCAKLSAgICA3OSwgODQsIDgzLCA0NSwgNTIsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU0LCA1NSwgCi0gICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCAKLSAgICA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1NSwgNTYsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTQsIDU2LCAKLSAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTQsIAotICAgIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCA1NiwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCAKLSAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIAotICAgIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA1MSwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKLSAgICA0NSwgNTEsIDUyLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIAotICAgIDgzLCA0NSwgNTEsIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNTEsIDUyLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1NCwgNTUsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1MywgCi0gICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA1MSwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIAotICAgIDg0LCA4MywgNDUsIDUxLCA1MiwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDUzLCAKLSAgICA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAotICAgIDUxLCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1NSwgNTYsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTQsIDU2LCAKLSAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTQsIAotICAgIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCA1NiwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCAKLSAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIAotICAgIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA1MCwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKLSAgICA0NSwgNTAsIDUyLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIAotICAgIDgzLCA0NSwgNTAsIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNTAsIDUyLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1NCwgNTUsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1MywgCi0gICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA1MCwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIAotICAgIDg0LCA4MywgNDUsIDUwLCA1MiwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDUzLCAKLSAgICA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAotICAgIDUwLCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgCi0gICAgNTEsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA1MCwgNTEsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAotICAgIDQ1LCA1MCwgNTEsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDU0LCA1NSwgMTI4LCA2OCwgCi0gICAgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUzLCA1NiwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgCi0gICAgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKLSAgICA0NSwgNTAsIDUxLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDU0LCA1NSwgCi0gICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCAKLSAgICA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIAotICAgIDUxLCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA1MCwgNTEsIDUyLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1NCwgNTUsIAotICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCi0gICAgNTAsIDUxLCA1MiwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1MywgNTYsIDEyOCwgNjgsIDc5LCAKLSAgICA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgCi0gICAgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCAKLSAgICA4MywgNDUsIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgCi0gICAgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCAKLSAgICA4MywgNDUsIDUwLCA1MSwgNTIsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgMTI4LCA2OCwgNzksIAotICAgIDg0LCA4MywgNDUsIDUwLCA1MSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCi0gICAgNDksIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCAKLSAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTQsIAotICAgIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCi0gICAgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUzLCAKLSAgICA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAotICAgIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA0OSwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MywgNTQsIDEyOCwgNjgsIDc5LCAKLSAgICA4NCwgODMsIDQ1LCA0OSwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU2LCAxMjgsIDY4LCA3OSwgODQsIAotICAgIDgzLCA0NSwgNDksIDUyLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU1LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNDksIDUyLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU0LCA1NSwgNTYsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgCi0gICAgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCAKLSAgICA1MiwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIAotICAgIDgzLCA0NSwgNDksIDUyLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUyLCA1MywgNTQsIDU1LCAKLSAgICA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAotICAgIDQ5LCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUyLCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgCi0gICAgNDUsIDQ5LCA1MiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA0OSwgNTEsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAotICAgIDQ1LCA0OSwgNTEsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgCi0gICAgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1NCwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MywgCi0gICAgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA0OSwgNTEsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIAotICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCAKLSAgICA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAotICAgIDUxLCA1MiwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA0OSwgNTEsIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDU0LCA1NiwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCi0gICAgNTEsIDUyLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1NCwgMTI4LCA2OCwgNzksIDg0LCAKLSAgICA4MywgNDUsIDQ5LCA1MSwgNTIsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDUzLCA1NSwgCi0gICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKLSAgICA0OSwgNTEsIDUyLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTMsIDU0LCA1NSwgCi0gICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKLSAgICA0NSwgNDksIDUxLCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTMsIDEyOCwgNjgsIAotICAgIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNDksIDUwLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTUsIDU2LCAxMjgsIDY4LCAKLSAgICA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTQsIDU2LCAxMjgsIAotICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCAKLSAgICA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAotICAgIDUwLCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA0OSwgNTAsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTMsIDU0LCA1NiwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCi0gICAgNTAsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCAKLSAgICA4MywgNDUsIDQ5LCA1MCwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1NiwgMTI4LCA2OCwgNzksIAotICAgIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU1LCAKLSAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAotICAgIDUwLCA1MiwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU0LCA1NSwgMTI4LCA2OCwgCi0gICAgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTMsIAotICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgCi0gICAgNDUsIDQ5LCA1MCwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDUzLCA1NCwgNTYsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgCi0gICAgNDUsIDQ5LCA1MCwgNTIsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1MywgNTQsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgCi0gICAgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCAKLSAgICA1MCwgNTEsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDU1LCAxMjgsIDY4LCA3OSwgODQsIAotICAgIDgzLCA0NSwgNDksIDUwLCA1MSwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTQsIDU1LCAKLSAgICA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAotICAgIDQ5LCA1MCwgNTEsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIAotICAgIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIAotICAgIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgCi0gICAgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1NiwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCi0gICAgNTAsIDUxLCA1MiwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCAKLSAgICA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCi0gICAgNTAsIDUxLCA1MiwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDU0LCAxMjgsIDY4LCAKLSAgICA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgCi0gICAgNTEsIDUyLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NSwgMTI4LCAKLSAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCi0gICAgNDksIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIAotICAgIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgCi0gICAgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIAotICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCAKLSAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDEyOCwgNjgsIDc5LCA4NCwgODMsIDEyOCwgNjgsIDc5LCA4NCwgNzYsIAotICAgIDY5LCA4MywgMjExLCA2OCwgNzksIDgyLCA4NSwgMTI4LCA2OCwgNzksIDc5LCA4MiwgMTI4LCA2OCwgNzksIDc5LCA3OCwgCi0gICAgNzEsIDEyOCwgNjgsIDc5LCA3OCwgNzEsIDEyOCwgNjgsIDc5LCA3NywgNjUsIDczLCAyMDYsIDY4LCA3OSwgNzYsIDgwLCAKLSAgICA3MiwgNzMsIDc4LCAxMjgsIDY4LCA3OSwgNzYsIDc2LCA4MywgMTI4LCA2OCwgNzksIDc2LCA3NiwgNjUsIDIxMCwgNjgsIAotICAgIDc5LCA3NiwgNzMsIDg1LCA3NywgMTI4LCA2OCwgNzksIDc1LCA3NywgNjUsIDczLCAxMjgsIDY4LCA3OSwgNzMsIDg0LCAKLSAgICAxMjgsIDY4LCA3OSwgNzEsIDEyOCwgNjgsIDc5LCAxOTksIDY4LCA3OSwgNjksIDIxMSwgNjgsIDc5LCA2OCwgNjksIDc1LCAKLSAgICA2NSwgODQsIDY1LCAxMjgsIDY4LCA3OSwgNjYsIDgyLCA3OSwgMTI4LCA2OCwgNzksIDY1LCA2NywgNzIsIDY1LCA4MywgNzIsIAotICAgIDc3LCA2OSwgNjksIDEyOCwgNjgsIDc5LCA2NSwgNjcsIDcyLCA2NSwgODMsIDcyLCA3NywgNjksIDE5NywgNjgsIDc5LCA2NSwgCi0gICAgMTI4LCA2OCwgNzksIDQ1LCA3OSwgMTI4LCA2OCwgNzcsIDEyOCwgNjgsIDIwNSwgNjgsIDc2LCA4NSwgMTI4LCA2OCwgNzYsIAotICAgIDc5LCAxMjgsIDY4LCA3NiwgNzMsIDEyOCwgNjgsIDc2LCA2OSwgNjksIDEyOCwgNjgsIDc2LCA2NSwgMTI4LCA2OCwgNzYsIAotICAgIDEyOCwgNjgsIDc1LCA2NSwgODIsIDEyOCwgNjgsIDc1LCA2NSwgMjEwLCA2OCwgNzQsIDY5LCA4MiwgODYsIDczLCAxMjgsIAotICAgIDY4LCA3NCwgNjksIDgyLCA4NiwgMTI4LCA2OCwgNzQsIDY5LCAxMjgsIDY4LCA3NCwgNjUsIDEyOCwgNjgsIDc0LCAxMjgsIAotICAgIDY4LCA3MywgOTAsIDkwLCAyMTcsIDY4LCA3MywgODYsIDc5LCA4MiwgNjcsIDE5NywgNjgsIDczLCA4NiwgNzMsIDgzLCA3MywgCi0gICAgNzksIDc4LCAxMjgsIDY4LCA3MywgODYsIDczLCA4MywgNzMsIDc5LCAyMDYsIDY4LCA3MywgODYsIDczLCA3OCwgNjUsIDg0LCAKLSAgICA3MywgNzksIDc4LCAxMjgsIDY4LCA3MywgODYsIDczLCA2OCwgNjksIDgzLCAxMjgsIDY4LCA3MywgODYsIDczLCA2OCwgNjksIAotICAgIDgyLCAxMjgsIDY4LCA3MywgODYsIDczLCA2OCwgNjksIDE5NiwgNjgsIDczLCA4NiwgNzMsIDY4LCA2OSwgMTI4LCA2OCwgCi0gICAgNzMsIDg2LCA3MywgNjgsIDE5NywgNjgsIDczLCA4NiwgNjksIDgyLCA3MSwgNjksIDc4LCA2NywgNjksIDEyOCwgNjgsIDczLCAKLSAgICA4NCwgODQsIDIwNywgNjgsIDczLCA4MywgODQsIDc5LCA4MiwgODQsIDczLCA3OSwgNzgsIDEyOCwgNjgsIDczLCA4MywgODQsIAotICAgIDczLCA3OCwgNzEsIDg1LCA3MywgODMsIDcyLCAxMjgsIDY4LCA3MywgODMsIDg0LCA3MywgNzYsIDc2LCAxMjgsIDY4LCA3MywgCi0gICAgODMsIDgzLCA3OSwgNzYsIDg2LCA2OSwgNDUsIDUwLCAxMjgsIDY4LCA3MywgODMsIDgzLCA3OSwgNzYsIDg2LCA2OSwgMTI4LCAKLSAgICA2OCwgNzMsIDgzLCA4MCwgNjksIDgyLCA4MywgNzMsIDc5LCA3OCwgMTI4LCA2OCwgNzMsIDgzLCA3NSwgMTI4LCA2OCwgNzMsIAotICAgIDgzLCA3MywgNzcsIDc5LCA4NSwgMTI4LCA2OCwgNzMsIDgzLCA3MiwgMTI4LCA2OCwgNzMsIDgzLCA2NywgNzksIDc4LCA4NCwgCi0gICAgNzMsIDc4LCA4NSwgNzksIDg1LCAyMTEsIDY4LCA3MywgODMsIDE5NSwgNjgsIDczLCA4MywgNjUsIDgwLCA4MCwgNzksIDczLCAKLSAgICA3OCwgODQsIDY5LCAxOTYsIDY4LCA3MywgODMsIDY1LCA2NiwgNzYsIDY5LCAxOTYsIDY4LCA3MywgODIsIDcxLCAxOTMsIAotICAgIDY4LCA3MywgODIsIDY5LCA2NywgODQsIDc2LCAyMTcsIDY4LCA3MywgODIsIDY5LCA2NywgODQsIDczLCA3OSwgNzgsIDY1LCAKLSAgICAyMDQsIDY4LCA3MywgODAsIDg0LCA2OSwgMTI4LCA2OCwgNzMsIDgwLCA4MCwgNjksIDgyLCAxMjgsIDY4LCA3MywgODAsIAotICAgIDc2LCA3OSwgODUsIDc4LCAxMjgsIDY4LCA3MywgODAsIDc2LCA3MywgMTI4LCA2OCwgNzMsIDgwLCA3NiwgMjAxLCA2OCwgCi0gICAgNzMsIDc4LCA3MSwgNjYsIDY1LCAyMTIsIDY4LCA3MywgMjA2LCA2OCwgNzMsIDc3LCA3NywgNzMsIDc4LCA3MSwgMTI4LCAKLSAgICA2OCwgNzMsIDc3LCA3MywgNzgsIDg1LCA4NCwgNzMsIDc5LCA3OCwgNDUsIDUxLCAxMjgsIDY4LCA3MywgNzcsIDczLCA3OCwgCi0gICAgODUsIDg0LCA3MywgNzksIDc4LCA0NSwgNTAsIDEyOCwgNjgsIDczLCA3NywgNzMsIDc4LCA4NSwgODQsIDczLCA3OSwgNzgsIAotICAgIDQ1LCA0OSwgMTI4LCA2OCwgNzMsIDc3LCA3MywgNzgsIDczLCA4MywgNzIsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDY4LCA3MywgCi0gICAgNzcsIDczLCA2OCwgNzMsIDE5MywgNjgsIDczLCA3NywgNjksIDc4LCA4MywgNzMsIDc5LCA3OCwgNjUsIDIwNCwgNjgsIDczLCAKLSAgICA3NywgNjksIDc4LCA4MywgNzMsIDc5LCAyMDYsIDY4LCA3MywgNzcsIDUwLCAxMjgsIDY4LCA3MywgNzYsIDEyOCwgNjgsIAotICAgIDczLCA3MSwgODIsIDY1LCA4MCwgNzIsIDEyOCwgNjgsIDczLCA3MSwgODIsIDY1LCA4MCwgMjAwLCA2OCwgNzMsIDcxLCA4MiwgCi0gICAgNjUsIDc3LCA3NywgNzksIDIxMSwgNjgsIDczLCA3MSwgODIsIDY1LCA3NywgNzcsIDE5MywgNjgsIDczLCA3MSwgODIsIDY1LCAKLSAgICAyMDUsIDY4LCA3MywgNzEsIDc5LCA4MiwgNzEsIDc5LCA3OCwgMTI4LCA2OCwgNzMsIDcxLCA3OSwgODIsIDcxLCA3OSwgCi0gICAgMjA2LCA2OCwgNzMsIDcxLCA2NSwgNzcsIDc3LCA2NSwgMTI4LCA2OCwgNzMsIDcxLCAxOTMsIDY4LCA3MywgNzAsIDg0LCAKLSAgICA3OSwgNzEsIDcxLCA3OSwgMjExLCA2OCwgNzMsIDcwLCA3OSwgNzgsIDczLCA2NSwgODMsIDEyOCwgNjgsIDczLCA3MCwgNzAsIAotICAgIDczLCA2NywgODUsIDc2LCA4NCwgMjE3LCA2OCwgNzMsIDcwLCA3MCwgNzMsIDY3LCA4NSwgNzYsIDg0LCA3MywgNjksIDgzLCAKLSAgICAxMjgsIDY4LCA3MywgNzAsIDcwLCA2OSwgODIsIDY5LCA3OCwgODQsIDczLCA2NSwgNzYsIDEyOCwgNjgsIDczLCA3MCwgNzAsIAotICAgIDY5LCA4MiwgNjksIDc4LCA2NywgMTk3LCA2OCwgNzMsIDcwLCA2NSwgODQsIDEyOCwgNjgsIDczLCA2OSwgODMsIDczLCA4MywgCi0gICAgMTI4LCA2OCwgNzMsIDY5LCA4MywgNzMsIDIxMSwgNjgsIDczLCA2OSwgODAsIDEyOCwgNjgsIDczLCAxOTcsIDY4LCA3MywgCi0gICAgNjYsIDEyOCwgNjgsIDczLCA2NSwgODQsIDc5LCA3OCwgNzksIDIwNiwgNjgsIDczLCA2NSwgODQsIDc5LCA3OCwgNzMsIDc1LCAKLSAgICAyMDEsIDY4LCA3MywgNjUsIDgzLCA4NCwgNzksIDc2LCAyMDEsIDY4LCA3MywgNjUsIDc3LCA3OSwgNzgsIDY4LCA4MywgCi0gICAgMTI4LCA2OCwgNzMsIDY1LCA3NywgNzksIDc4LCA2OCwgMTI4LCA2OCwgNzMsIDY1LCA3NywgNzksIDc4LCAxOTYsIDY4LCAKLSAgICA3MywgNjUsIDc3LCA2OSwgODQsIDY5LCAyMTAsIDY4LCA3MywgNjUsIDc2LCA4OSwgODQsIDczLCA3NSwgNjUsIDEyOCwgNjgsIAotICAgIDczLCA2NSwgNzYsIDg5LCA4NCwgNzMsIDc1LCAxOTMsIDY4LCA3MywgNjUsIDc2LCA2OSwgNjcsIDg0LCA0NSwgMjA4LCA2OCwgCi0gICAgNzMsIDY1LCA3MSwgNzksIDc4LCA2NSwgNzYsIDEyOCwgNjgsIDczLCA2NSwgNzEsIDc5LCA3OCwgNjUsIDIwNCwgNjgsIDczLCAKLSAgICA2NSwgNjksIDgyLCA2OSwgODMsIDczLCA5MCwgNjksIDE5NiwgNjgsIDczLCA2NSwgNjksIDgyLCA2OSwgODMsIDczLCA4MywgCi0gICAgMTI4LCA2OCwgNzMsIDY1LCA2OSwgODIsIDY5LCA4MywgNzMsIDIxMSwgNjgsIDcyLCA3OSwgODUsIDEyOCwgNjgsIDcyLCAKLSAgICA3OSwgNzksIDEyOCwgNjgsIDcyLCA3OSwgMTI4LCA2OCwgNzIsIDczLCAxMjgsIDY4LCA3MiwgNzIsIDg1LCAxMjgsIDY4LCAKLSAgICA3MiwgNzIsIDc5LCA3OSwgMTI4LCA2OCwgNzIsIDcyLCA3OSwgMTI4LCA2OCwgNzIsIDcyLCA3MywgMTI4LCA2OCwgNzIsIAotICAgIDcyLCA2OSwgNjksIDEyOCwgNjgsIDcyLCA3MiwgNjksIDEyOCwgNjgsIDcyLCA3MiwgNjUsIDEyOCwgNjgsIDcyLCA2OSwgCi0gICAgNjksIDEyOCwgNjgsIDcyLCA2NSwgODIsIDc3LCA2NSwgMTI4LCA2OCwgNzIsIDY1LCA3NiwgNjksIDg0LCA3MiwgMTI4LCAKLSAgICA2OCwgNzIsIDY1LCA3NiwgNjUsIDg0LCA3MiwgMTI4LCA2OCwgNzIsIDY1LCA3NiwgMTI4LCA2OCwgNzIsIDY1LCA2OCwgNzIsIAotICAgIDY5LCAxMjgsIDY4LCA3MiwgNjUsIDY1LCA3NiwgODUsIDEyOCwgNjgsIDcyLCA2NSwgMTI4LCA2OCwgNjksIDkwLCAyMDAsIAotICAgIDY4LCA2OSwgODksIDg0LCA2OSwgODIsIDc5LCAyMTMsIDY4LCA2OSwgODksIDg0LCA2OSwgODIsIDc5LCAyMTEsIDY4LCA2OSwgCi0gICAgODgsIDczLCA2NSwgMTI4LCA2OCwgNjksIDg2LCA3MywgNjcsIDE5NywgNjgsIDY5LCA4NiwgNjksIDc2LCA3OSwgODAsIDc3LCAKLSAgICA2OSwgNzgsIDg0LCAxMjgsIDY4LCA2OSwgODUsIDc4LCA3MSwgMTI4LCA2OCwgNjksIDgzLCAyMDMsIDY4LCA2OSwgODMsIAotICAgIDczLCA3MSwgNzgsIDEyOCwgNjgsIDY5LCA4MywgNzMsIDEyOCwgNjgsIDY5LCA4MywgNjcsIDgyLCA3MywgODAsIDg0LCA3MywgCi0gICAgNzksIDIwNiwgNjgsIDY5LCA4MywgNjcsIDY5LCA3OCwgNjgsIDczLCA3OCwgMTk5LCA2OCwgNjksIDgzLCA2NywgNjksIDc4LCAKLSAgICA2OCwgNjksIDgyLCAxMjgsIDY4LCA2OSwgODIsIDY5LCA4NCwgNDUsIDcyLCA3MywgNjgsIDY5LCA4NCwgMTI4LCA2OCwgNjksIAotICAgIDgyLCA2OSwgODQsIDEyOCwgNjgsIDY5LCA4MCwgNjUsIDgyLCA4NCwgODUsIDgyLCA2OSwgMTI4LCA2OCwgNjksIDgwLCA2NSwgCi0gICAgODIsIDg0LCA3NywgNjksIDc4LCAyMTIsIDY4LCA2OSwgODAsIDY1LCA4MiwgODQsIDczLCA3OCwgMTk5LCA2OCwgNjksIDc4LCAKLSAgICA4NCwgNzMsIDgzLCA4NCwgODIsIDIxNywgNjgsIDY5LCA3OCwgODQsIDY1LCAyMDQsIDY4LCA2OSwgNzgsIDc5LCA3NywgNzMsIAotICAgIDc4LCA2NSwgODQsIDc5LCA4MiwgMTI4LCA2OCwgNjksIDc4LCA3OSwgNzcsIDczLCA3OCwgNjUsIDg0LCA3OSwgMjEwLCA2OCwgCi0gICAgNjksIDc4LCA3OCwgNjksIDc4LCAxMjgsIDY4LCA2OSwgNzgsIDcxLCAxMjgsIDY4LCA2OSwgNzgsIDE5NywgNjgsIDY5LCAKLSAgICA3OCwgNjUsIDgyLCA3MywgODUsIDIxMSwgNjgsIDY5LCA3NiwgODQsIDY1LCAxMjgsIDY4LCA2OSwgNzYsIDg0LCAxOTMsIAotICAgIDY4LCA2OSwgNzYsIDg0LCAxMjgsIDY4LCA2OSwgNzYsIDgwLCA3MiwgNzMsIDE5NSwgNjgsIDY5LCA3NiwgNzMsIDg2LCA2OSwgCi0gICAgODIsIDIxNywgNjgsIDY5LCA3NiwgNzMsIDg2LCA2OSwgODIsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDY4LCA2OSwgNzYsIDczLCAKLSAgICA3NywgNzMsIDg0LCA2OSwgODIsIDEyOCwgNjgsIDY5LCA3NiwgNzMsIDc3LCA3MywgODQsIDY5LCAyMTAsIDY4LCA2OSwgNzYsIAotICAgIDczLCA2NywgNzMsIDc5LCA4NSwgMjExLCA2OCwgNjksIDc2LCA2OSwgODQsIDY5LCAxMjgsIDY4LCA2OSwgNzYsIDY5LCA4NCwgCi0gICAgMTk3LCA2OCwgNjksIDc1LCA2NSwgMTI4LCA2OCwgNjksIDc1LCAxMjgsIDY4LCA2OSwgNzMsIDEyOCwgNjgsIDY5LCA3MiwgCi0gICAgNzMsIDEyOCwgNjgsIDY5LCA3MSwgODIsIDY5LCAxOTcsIDY4LCA2OSwgNzAsIDczLCA3OCwgNzMsIDg0LCA3MywgNzksIDc4LCAKLSAgICAxMjgsIDY4LCA2OSwgNzAsIDY5LCA2NywgODQsIDczLCA4NiwgNjksIDc4LCA2OSwgODMsIDIxMSwgNjgsIDY5LCA2OSwgODIsIAotICAgIDEyOCwgNjgsIDY5LCA2OSwgODAsIDc2LCA4OSwgMTI4LCA2OCwgNjksIDY5LCA3NiwgMTI4LCA2OCwgNjksIDY3LCA4MiwgCi0gICAgNjksIDgzLCA2NywgNjksIDc4LCA2OCwgNzksIDEyOCwgNjgsIDY5LCA2NywgODIsIDY5LCA2NSwgODMsIDY5LCAxMjgsIDY4LCAKLSAgICA2OSwgNjcsIDc5LCA4MiwgNjUsIDg0LCA3MywgODYsIDE5NywgNjgsIDY5LCA2NywgNzksIDgyLCA2NSwgODQsIDczLCA3OSwgCi0gICAgNzgsIDEyOCwgNjgsIDY5LCA2NywgNzMsIDgzLCA3MywgODYsIDY5LCA3OCwgNjksIDgzLCA4MywgMTI4LCA2OCwgNjksIDY3LCAKLSAgICA3MywgNzcsIDY1LCAyMDQsIDY4LCA2OSwgNjcsIDczLCA2OCwgODUsIDc5LCA4NSwgMjExLCA2OCwgNjksIDY3LCA2OSwgNzcsIAotICAgIDY2LCA2OSwgODIsIDEyOCwgNjgsIDY5LCA2NywgNjUsIDg5LCA2OSwgNjgsIDEyOCwgNjgsIDY5LCA2NiwgNzMsIDIxMiwgCi0gICAgNjgsIDY5LCA2NSwgODQsIDcyLCAxMjgsIDY4LCA2OSwgNjUsIDY4LCAxMjgsIDY4LCA2OCwgODcsIDY1LCAxMjgsIDY4LCAKLSAgICA2OCwgODUsIDg4LCAxMjgsIDY4LCA2OCwgODUsIDg0LCAxMjgsIDY4LCA2OCwgODUsIDgyLCA4OCwgMTI4LCA2OCwgNjgsIAotICAgIDg1LCA4MiwgMTI4LCA2OCwgNjgsIDg1LCA4MCwgMTI4LCA2OCwgNjgsIDg1LCA3OSwgODgsIDEyOCwgNjgsIDY4LCA4NSwgCi0gICAgNzksIDgwLCAxMjgsIDY4LCA2OCwgODUsIDc5LCAxMjgsIDY4LCA2OCwgODUsIDEyOCwgNjgsIDY4LCA3OSwgODgsIDEyOCwgCi0gICAgNjgsIDY4LCA3OSwgODQsIDEyOCwgNjgsIDY4LCA3OSwgODAsIDEyOCwgNjgsIDY4LCA3OSwgNjUsIDEyOCwgNjgsIDY4LCAKLSAgICA3MywgODgsIDEyOCwgNjgsIDY4LCA3MywgODQsIDEyOCwgNjgsIDY4LCA3MywgODAsIDEyOCwgNjgsIDY4LCA3MywgNjksIAotICAgIDg4LCAxMjgsIDY4LCA2OCwgNzMsIDY5LCA4MCwgMTI4LCA2OCwgNjgsIDczLCA2OSwgMTI4LCA2OCwgNjgsIDczLCAxMjgsIAotICAgIDY4LCA2OCwgNzIsIDg1LCAxMjgsIDY4LCA2OCwgNzIsIDc5LCAxMjgsIDY4LCA2OCwgNzIsIDczLCAxMjgsIDY4LCA2OCwgCi0gICAgNzIsIDY5LCA2OSwgMTI4LCA2OCwgNjgsIDcyLCA2OSwgMTI4LCA2OCwgNjgsIDcyLCA2NSwgNjUsIDEyOCwgNjgsIDY4LCAKLSAgICA3MiwgNjUsIDEyOCwgNjgsIDY4LCA2OSwgODgsIDEyOCwgNjgsIDY4LCA2OSwgODAsIDEyOCwgNjgsIDY4LCA2OSwgNjksIAotICAgIDEyOCwgNjgsIDY4LCA2OSwgMTI4LCA2OCwgNjgsIDY4LCA3MiwgNjUsIDEyOCwgNjgsIDY4LCA2OCwgNjUsIDEyOCwgNjgsIAotICAgIDY4LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY4LCA2OCwgNjUsIDg4LCAxMjgsIDY4LCA2OCwgNjUsIDg0LCAKLSAgICAxMjgsIDY4LCA2OCwgNjUsIDgwLCAxMjgsIDY4LCA2OCwgNjUsIDc2LCAxMjgsIDY4LCA2OCwgNjUsIDIwNCwgNjgsIDY4LCAKLSAgICA2NSwgNzIsIDY1LCA3NiwgMTI4LCA2OCwgNjgsIDY1LCA3MiwgNjUsIDIwNCwgNjgsIDY4LCA2NSwgNjUsIDEyOCwgNjgsIAotICAgIDE5NCwgNjgsIDY1LCA4OSwgNDUsIDc4LCA3MywgNzEsIDcyLCA4NCwgMTI4LCA2OCwgNjUsIDIxNywgNjgsIDY1LCA4NiwgCi0gICAgNzMsIDg5LCA2NSwgNzgsIDczLCAxMjgsIDY4LCA2NSwgODYsIDczLCA2OCwgMTI4LCA2OCwgNjUsIDg0LCAxOTcsIDY4LCAKLSAgICA2NSwgODMsIDczLCA2NSwgMTI4LCA2OCwgNjUsIDgzLCA3MiwgNjksIDE5NiwgNjgsIDY1LCA4MywgNzIsIDEyOCwgNjgsIAotICAgIDY1LCA4MywgMjAwLCA2OCwgNjUsIDgzLCA2OSwgNzMsIDY1LCAxMjgsIDY4LCA2NSwgODIsIDg0LCAxMjgsIDY4LCA2NSwgCi0gICAgODIsIDc1LCA2OSwgNzgsIDczLCA3OCwgNzEsIDEyOCwgNjgsIDY1LCA4MiwgNzUsIDY5LCA3OCwgNzMsIDc4LCAxOTksIDY4LCAKLSAgICA2NSwgODIsIDIwMywgNjgsIDY1LCA4MiwgNzEsIDY1LCAxMjgsIDY4LCA2NSwgODIsIDY1LCA1MiwgMTI4LCA2OCwgNjUsIAotICAgIDgyLCA2NSwgNTEsIDEyOCwgNjgsIDY1LCA4MiwgMTI4LCA2OCwgNjUsIDgwLCA0NSwgODAsIDgyLCA2NSwgMjA1LCA2OCwgCi0gICAgNjUsIDgwLCA0NSwgODAsIDczLCAyMDEsIDY4LCA2NSwgODAsIDQ1LCA3NywgODUsIDc5LCAyMTcsIDY4LCA2NSwgODAsIDQ1LCAKLSAgICA2NiwgODUsIDc5LCAyMDYsIDY4LCA2NSwgODAsIDQ1LCA2NiwgNjksIDIwMSwgNjgsIDY1LCAyMDgsIDY4LCA2NSwgNzgsIAotICAgIDg0LCA2NSwgNzQsIDE5MywgNjgsIDY1LCA3OCwgNzEsIDc5LCAxMjgsIDY4LCA2NSwgNzgsIDcxLCAxMjgsIDY4LCA2NSwgCi0gICAgNzgsIDE5OSwgNjgsIDY1LCA3OCwgNjgsIDY1LCAxMjgsIDY4LCA2NSwgNzgsIDY3LCA2OSwgODIsIDEyOCwgNjgsIDY1LCAKLSAgICA3NywgODAsIDEyOCwgNjgsIDY1LCA3NywgMjA4LCA2OCwgNjUsIDc3LCA3NywgNjUsIDg0LCA2NSwgNzgsIDEyOCwgNjgsIAotICAgIDY1LCA3NywgNzcsIDY1LCA4NCwgNjUsIDIwNiwgNjgsIDY1LCA3NywgNzcsIDY1LCAxMjgsIDY4LCA2NSwgNzcsIDc3LCAKLSAgICAxOTMsIDY4LCA2NSwgNzcsIDY1LCA4MiwgODUsIDEyOCwgNjgsIDY1LCA3NiwgNjksIDg0LCA3MiwgMTI4LCA2OCwgNjUsIAotICAgIDc2LCA2OSwgODQsIDEyOCwgNjgsIDY1LCA3NiwgNjksIDIxMiwgNjgsIDY1LCA3NiwgNjgsIDY1LCAxMjgsIDY4LCA2NSwgCi0gICAgNzYsIDY1LCA4NCwgNzIsIDEyOCwgNjgsIDY1LCA3NiwgNjUsIDg0LCAyMDAsIDY4LCA2NSwgNzYsIDY1LCA4NCwgMTI4LCAKLSAgICA2OCwgNjUsIDczLCA4MiwgMTI4LCA2OCwgNjUsIDczLCA3OCwgNzEsIDEyOCwgNjgsIDY1LCA3MiwgODksIDY1LCA2NSwgODUsIAotICAgIDgzLCA3MiwgNDUsIDUwLCAxMjgsIDY4LCA2NSwgNzIsIDg5LCA2NSwgNjUsIDg1LCA4MywgNzIsIDEyOCwgNjgsIDY1LCA3MSwgCi0gICAgODMsIDEyOCwgNjgsIDY1LCA3MSwgNzEsIDY5LCA4MiwgMTI4LCA2OCwgNjUsIDcxLCA2OSwgODMsIDcyLCAxMjgsIDY4LCAKLSAgICA2NSwgNzEsIDY5LCA4MywgMjAwLCA2OCwgNjUsIDcxLCA2NiwgNjUsIDgzLCA3MywgNzgsIDc4LCA2NSwgMTI4LCA2OCwgNjUsIAotICAgIDcxLCA2NSwgMjE4LCA2OCwgNjUsIDcxLCA2NSwgNzYsIDcxLCA2NSwgMTI4LCA2OCwgNjUsIDE5OSwgNjgsIDY1LCA2OSwgCi0gICAgNzgsIDcxLCAxMjgsIDY4LCA2NSwgNjksIDE5OSwgNjgsIDY1LCA2OCwgMTI4LCA2OCwgNjUsIDE5NiwgNjgsIDY1LCA2NSwgCi0gICAgODMsIDg1LCAxMjgsIDY4LCA2NSwgNjUsIDY4LCA3MiwgODUsIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIDcyLCAxMjgsIDY4LCAKLSAgICA0OCwgNTQsIDU1LCA3MSwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgNzAsIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIDY5LCAxMjgsIAotICAgIDY4LCA0OCwgNTQsIDU1LCA2OCwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgNjcsIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIDY2LCAKLSAgICAxMjgsIDY4LCA0OCwgNTQsIDU1LCA2NSwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgMTI4LCA2OCwgNDgsIDU0LCA1NCwgMTI4LCAKLSAgICA2OCwgNDgsIDU0LCA1MywgMTI4LCA2OCwgNDgsIDU0LCA1MiwgMTI4LCA2OCwgNDgsIDU0LCA1MSwgMTI4LCA2OCwgNDgsIAotICAgIDU0LCA1MCwgMTI4LCA2OCwgNDgsIDU0LCA0OSwgMTI4LCA2OCwgNDgsIDU0LCA0OCwgMTI4LCA2OCwgNDgsIDUzLCA1NywgCi0gICAgMTI4LCA2OCwgNDgsIDUzLCA1NiwgMTI4LCA2OCwgNDgsIDUzLCA1NSwgMTI4LCA2OCwgNDgsIDUzLCA1NCwgMTI4LCA2OCwgCi0gICAgNDgsIDUzLCA1MywgMTI4LCA2OCwgNDgsIDUzLCA1MiwgNjUsIDEyOCwgNjgsIDQ4LCA1MywgNTIsIDEyOCwgNjgsIDQ4LCAKLSAgICA1MywgNTEsIDEyOCwgNjgsIDQ4LCA1MywgNTAsIDY1LCAxMjgsIDY4LCA0OCwgNTMsIDUwLCAxMjgsIDY4LCA0OCwgNTMsIAotICAgIDQ5LCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA3MywgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNzIsIDEyOCwgNjgsIDQ4LCA1MywgCi0gICAgNDgsIDcxLCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA3MCwgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNjksIDEyOCwgNjgsIDQ4LCAKLSAgICA1MywgNDgsIDY4LCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA2NywgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNjYsIDEyOCwgNjgsIAotICAgIDQ4LCA1MywgNDgsIDY1LCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCAxMjgsIDY4LCA0OCwgNTIsIDU3LCAxMjgsIDY4LCA0OCwgCi0gICAgNTIsIDU2LCA2NSwgMTI4LCA2OCwgNDgsIDUyLCA1NiwgMTI4LCA2OCwgNDgsIDUyLCA1NSwgMTI4LCA2OCwgNDgsIDUyLCAKLSAgICA1NCwgNjUsIDEyOCwgNjgsIDQ4LCA1MiwgNTQsIDEyOCwgNjgsIDQ4LCA1MiwgNTMsIDEyOCwgNjgsIDQ4LCA1MiwgNTIsIAotICAgIDEyOCwgNjgsIDQ4LCA1MiwgNTEsIDEyOCwgNjgsIDQ4LCA1MiwgNTAsIDEyOCwgNjgsIDQ4LCA1MiwgNDksIDEyOCwgNjgsIAotICAgIDQ4LCA1MiwgNDgsIDEyOCwgNjgsIDQ4LCA1MSwgNTcsIDEyOCwgNjgsIDQ4LCA1MSwgNTYsIDEyOCwgNjgsIDQ4LCA1MSwgCi0gICAgNTUsIDEyOCwgNjgsIDQ4LCA1MSwgNTQsIDEyOCwgNjgsIDQ4LCA1MSwgNTMsIDEyOCwgNjgsIDQ4LCA1MSwgNTIsIDY1LCAKLSAgICAxMjgsIDY4LCA0OCwgNTEsIDUyLCAxMjgsIDY4LCA0OCwgNTEsIDUxLCAxMjgsIDY4LCA0OCwgNTEsIDUwLCAxMjgsIDY4LCAKLSAgICA0OCwgNTEsIDQ5LCA2NSwgMTI4LCA2OCwgNDgsIDUxLCA0OSwgMTI4LCA2OCwgNDgsIDUxLCA0OCwgMTI4LCA2OCwgNDgsIAotICAgIDUwLCA1NywgMTI4LCA2OCwgNDgsIDUwLCA1NiwgMTI4LCA2OCwgNDgsIDUwLCA1NSwgNjUsIDEyOCwgNjgsIDQ4LCA1MCwgCi0gICAgNTUsIDEyOCwgNjgsIDQ4LCA1MCwgNTQsIDEyOCwgNjgsIDQ4LCA1MCwgNTMsIDEyOCwgNjgsIDQ4LCA1MCwgNTIsIDEyOCwgCi0gICAgNjgsIDQ4LCA1MCwgNTEsIDEyOCwgNjgsIDQ4LCA1MCwgNTAsIDEyOCwgNjgsIDQ4LCA1MCwgNDksIDEyOCwgNjgsIDQ4LCAKLSAgICA1MCwgNDgsIDEyOCwgNjgsIDQ4LCA0OSwgNTcsIDEyOCwgNjgsIDQ4LCA0OSwgNTYsIDEyOCwgNjgsIDQ4LCA0OSwgNTUsIAotICAgIDEyOCwgNjgsIDQ4LCA0OSwgNTQsIDEyOCwgNjgsIDQ4LCA0OSwgNTMsIDEyOCwgNjgsIDQ4LCA0OSwgNTIsIDEyOCwgNjgsIAotICAgIDQ4LCA0OSwgNTEsIDEyOCwgNjgsIDQ4LCA0OSwgNTAsIDEyOCwgNjgsIDQ4LCA0OSwgNDksIDEyOCwgNjgsIDQ4LCA0OSwgCi0gICAgNDgsIDEyOCwgNjgsIDQ4LCA0OCwgNTcsIDEyOCwgNjgsIDQ4LCA0OCwgNTYsIDY1LCAxMjgsIDY4LCA0OCwgNDgsIDU2LCAKLSAgICAxMjgsIDY4LCA0OCwgNDgsIDU1LCAxMjgsIDY4LCA0OCwgNDgsIDU0LCAxMjgsIDY4LCA0OCwgNDgsIDUzLCAxMjgsIDY4LCAKLSAgICA0OCwgNDgsIDUyLCAxMjgsIDY4LCA0OCwgNDgsIDUxLCAxMjgsIDY4LCA0OCwgNDgsIDUwLCAxMjgsIDY4LCA0OCwgNDgsIAotICAgIDQ5LCAxMjgsIDY3LCA4OSwgODgsIDEyOCwgNjcsIDg5LCA4NCwgMTI4LCA2NywgODksIDgyLCA4OCwgMTI4LCA2NywgODksIAotICAgIDgyLCA2OSwgNzgsIDY1LCA3MywgMTk1LCA2NywgODksIDgyLCAxMjgsIDY3LCA4OSwgODAsIDgyLCA3MywgNzksIDIxMiwgCi0gICAgNjcsIDg5LCA4MCwgNjksIDgyLCA4NSwgODMsIDEyOCwgNjcsIDg5LCA4MCwgMTI4LCA2NywgODksIDc2LCA3MywgNzgsIDY4LCAKLSAgICA4MiwgNzMsIDY3LCA3MywgODQsIDg5LCAxMjgsIDY3LCA4OSwgNjcsIDc2LCA3OSwgNzgsIDY5LCAxMjgsIDY3LCA4OSwgNjUsIAotICAgIDEyOCwgNjcsIDg5LCAxMjgsIDY3LCA4NywgNzksIDc5LCAxMjgsIDY3LCA4NywgNzksIDEyOCwgNjcsIDg3LCA3MywgNzMsIAotICAgIDEyOCwgNjcsIDg3LCA3MywgMTI4LCA2NywgODcsIDY5LCA3OSwgODIsIDg0LCA3MiwgMTI4LCA2NywgODcsIDY5LCAxMjgsIAotICAgIDY3LCA4NywgNjUsIDY1LCAxMjgsIDY3LCA4NSwgODgsIDEyOCwgNjcsIDg1LCAyMTIsIDY3LCA4NSwgODMsIDg0LCA3OSwgCi0gICAgNzcsIDgzLCAxMjgsIDY3LCA4NSwgODMsIDg0LCA3OSwgNzcsIDY5LCAyMTAsIDY3LCA4NSwgODMsIDg0LCA2NSwgODIsIDY4LCAKLSAgICAxMjgsIDY3LCA4NSwgODIsIDg4LCAxMjgsIDY3LCA4NSwgODIsIDg2LCA3MywgNzgsIDE5OSwgNjcsIDg1LCA4MiwgODYsIAotICAgIDY5LCAxOTYsIDY3LCA4NSwgODIsIDg2LCA2OSwgMTI4LCA2NywgODUsIDgyLCA4NiwgMTk3LCA2NywgODUsIDgyLCA4MiwgCi0gICAgMjE3LCA2NywgODUsIDgyLCA4MiwgNjksIDc4LCA4NCwgMTI4LCA2NywgODUsIDgyLCA4MiwgNjksIDc4LCAyMTIsIDY3LCAKLSAgICA4NSwgODIsIDc2LCAyMTcsIDY3LCA4NSwgODIsIDc2LCAxMjgsIDY3LCA4NSwgODIsIDEyOCwgNjcsIDg1LCA4MCwgMTI4LCAKLSAgICA2NywgODUsIDc5LCA4OCwgMTI4LCA2NywgODUsIDc5LCA4MCwgMTI4LCA2NywgODUsIDc5LCAxMjgsIDY3LCA4NSwgMjA1LCAKLSAgICA2NywgODUsIDY2LCA2OSwgNjgsIDEyOCwgNjcsIDg1LCA2NiwgMTk3LCA2NywgODUsIDY1LCA4NCwgODIsIDczLCA3NiwgNzYsIAotICAgIDc5LCAxMjgsIDY3LCA4NSwgNjUsIDg0LCA4MiwgNzMsIDc2LCA3NiwgMjA3LCA2NywgODUsIDEyOCwgNjcsIDgyLCA4OSwgCi0gICAgODMsIDg0LCA2NSwgMjA0LCA2NywgODIsIDg5LCA4MCwgODQsIDc5LCA3MSwgODIsIDY1LCA3NywgNzcsIDczLCAxOTUsIDY3LCAKLSAgICA4MiwgODksIDczLCA3OCwgMTk5LCA2NywgODIsIDg1LCA5MCwgNjksIDczLCA4MiwgMjA3LCA2NywgODIsIDg1LCA2NywgNzMsIAotICAgIDY2LCA3NiwgNjksIDQ1LCA1MywgMTI4LCA2NywgODIsIDg1LCA2NywgNzMsIDY2LCA3NiwgNjksIDQ1LCA1MiwgMTI4LCA2NywgCi0gICAgODIsIDg1LCA2NywgNzMsIDY2LCA3NiwgNjksIDQ1LCA1MSwgMTI4LCA2NywgODIsIDg1LCA2NywgNzMsIDY2LCA3NiwgNjksIAotICAgIDQ1LCA1MCwgMTI4LCA2NywgODIsIDg1LCA2NywgNzMsIDY2LCA3NiwgNjksIDEyOCwgNjcsIDgyLCA3OSwgODcsIDc4LCAKLSAgICAxMjgsIDY3LCA4MiwgNzksIDgzLCA4MywgNzMsIDc4LCA3MSwgMTI4LCA2NywgODIsIDc5LCA4MywgODMsIDczLCA3OCwgCi0gICAgMTk5LCA2NywgODIsIDc5LCA4MywgODMsIDcyLCA2NSwgODQsIDY3LCAyMDAsIDY3LCA4MiwgNzksIDgzLCA4MywgNjksIDY4LCAKLSAgICA0NSwgODQsIDY1LCA3MywgNzYsIDEyOCwgNjcsIDgyLCA3OSwgODMsIDgzLCA2OSwgMTk2LCA2NywgODIsIDc5LCA4MywgODMsIAotICAgIDY2LCA3OSwgNzgsIDY5LCA4MywgMTI4LCA2NywgODIsIDc5LCA4MywgODMsIDEyOCwgNjcsIDgyLCA3OSwgODMsIDIxMSwgCi0gICAgNjcsIDgyLCA3OSwgODAsIDEyOCwgNjcsIDgyLCA3OSwgNzMsIDg4LCAxMjgsIDY3LCA4MiwgNzksIDY3LCA4NSwgMjExLCAKLSAgICA2NywgODIsIDc5LCA2NywgNzksIDY4LCA3MywgNzYsIDY5LCAxMjgsIDY3LCA4MiwgNjksIDgzLCA2NywgNjksIDc4LCA4NCwgCi0gICAgMTI4LCA2NywgODIsIDY5LCA4MywgNjcsIDY5LCA3OCwgMjEyLCA2NywgODIsIDY5LCA2OCwgNzMsIDIxMiwgNjcsIDgyLCAKLSAgICA2OSwgNjUsIDg0LCA3MywgODYsIDE5NywgNjcsIDgyLCA2OSwgNjUsIDc3LCAxMjgsIDY3LCA4MiwgNjUsIDY3LCA3NSwgNjksIAotICAgIDgyLCAxMjgsIDY3LCA3OSwgODgsIDEyOCwgNjcsIDc5LCA4NywgMTI4LCA2NywgNzksIDIxNSwgNjcsIDc5LCA4NiwgNjksIAotICAgIDgyLCAxMjgsIDY3LCA3OSwgODUsIDgwLCA3NiwgMTk3LCA2NywgNzksIDg1LCA3OCwgODQsIDczLCA3OCwgMTk5LCA2NywgCi0gICAgNzksIDg1LCA3OCwgODQsIDY5LCA4MiwgODMsIDczLCA3OCwgNzUsIDEyOCwgNjcsIDc5LCA4NSwgNzgsIDg0LCA2OSwgODIsIAotICAgIDY2LCA3OSwgODIsIDY5LCAxMjgsIDY3LCA3OSwgODUsIDc4LCA2NywgNzMsIDIwNCwgNjcsIDc5LCA4NCwgMTI4LCA2NywgCi0gICAgNzksIDgyLCA4MiwgNjksIDgzLCA4MCwgNzksIDc4LCA2OCwgMjExLCA2NywgNzksIDgyLCA4MiwgNjksIDY3LCA4NCwgMTI4LCAKLSAgICA2NywgNzksIDgyLCA4MCwgODMsIDY5LCAxMjgsIDY3LCA3OSwgODIsIDgwLCA3OSwgODIsIDY1LCA4NCwgNzMsIDc5LCA3OCwgCi0gICAgMTI4LCA2NywgNzksIDgyLCA3OSwgNzgsIDczLCA4MywgMTI4LCA2NywgNzksIDgyLCA3OCwgNjksIDgyLCA4MywgMTI4LCAKLSAgICA2NywgNzksIDgyLCA3OCwgNjksIDgyLCAxMjgsIDY3LCA3OSwgODIsIDc4LCA2OSwgMjEwLCA2NywgNzksIDgwLCA4OSwgODIsIAotICAgIDczLCA3MSwgNzIsIDg0LCAxMjgsIDY3LCA3OSwgODAsIDg5LCA4MiwgNzMsIDcxLCA3MiwgMjEyLCA2NywgNzksIDgwLCA4OSwgCi0gICAgMTI4LCA2NywgNzksIDgwLCA4MiwgNzksIDY4LCA4NSwgNjcsIDg0LCAxMjgsIDY3LCA3OSwgODAsIDgwLCA2OSwgODIsIDQ1LCAKLSAgICA1MCwgMTI4LCA2NywgNzksIDgwLCA4MCwgNjksIDgyLCAxMjgsIDY3LCA3OSwgODAsIDEyOCwgNjcsIDc5LCA3OSwgNzYsIAotICAgIDEyOCwgNjcsIDc5LCA3OSwgNzUsIDczLCA3OCwgNzEsIDEyOCwgNjcsIDc5LCA3OSwgNzUsIDczLCA2OSwgMTI4LCA2NywgCi0gICAgNzksIDc5LCA3NSwgNjksIDE5NiwgNjcsIDc5LCA3OSwgMTI4LCA2NywgNzksIDc4LCA4NiwgNjksIDgyLCA3MSwgNzMsIDc4LCAKLSAgICAxOTksIDY3LCA3OSwgNzgsIDg2LCA2OSwgNzgsIDczLCA2OSwgNzgsIDY3LCAxOTcsIDY3LCA3OSwgNzgsIDg0LCA4MiwgNzksIAotICAgIDc2LCAxMjgsIDY3LCA3OSwgNzgsIDg0LCA4MiwgNzksIDIwNCwgNjcsIDc5LCA3OCwgODQsIDgyLCA2NSwgODIsIDczLCA2OSwgCi0gICAgODQsIDg5LCAxMjgsIDY3LCA3OSwgNzgsIDg0LCA4MiwgNjUsIDY3LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NywgNzksIDc4LCAKLSAgICA4NCwgNzksIDg1LCA4MiwgNjksIDE5NiwgNjcsIDc5LCA3OCwgODQsIDc5LCA4NSwgMjEwLCA2NywgNzksIDc4LCA4NCwgNjksIAotICAgIDc4LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NywgNzksIDc4LCA4NCwgNjksIDc3LCA4MCwgNzYsIDY1LCA4NCwgNzMsIDc5LCAKLSAgICA3OCwgMTI4LCA2NywgNzksIDc4LCA4NCwgNjUsIDczLCA3OCwgMjExLCA2NywgNzksIDc4LCA4NCwgNjUsIDczLCA3OCwgNzMsIAotICAgIDc4LCAxOTksIDY3LCA3OSwgNzgsIDg0LCA2NSwgNzMsIDIwNiwgNjcsIDc5LCA3OCwgODQsIDY1LCA2NywgODQsIDEyOCwgCi0gICAgNjcsIDc5LCA3OCwgODMsIDg0LCA4MiwgODUsIDY3LCA4NCwgNzMsIDc5LCAyMDYsIDY3LCA3OSwgNzgsIDgzLCA4NCwgNjUsIAotICAgIDc4LCA4NCwgMTI4LCA2NywgNzksIDc4LCA4MywgODQsIDY1LCA3OCwgMjEyLCA2NywgNzksIDc4LCA4MywgODQsIDY1LCA3OCwgCi0gICAgNjcsIDg5LCAxMjgsIDY3LCA3OSwgNzgsIDgzLCA3OSwgNzgsIDY1LCA3OCwgMjEyLCA2NywgNzksIDc4LCA4MywgNjksIDY3LCAKLSAgICA4NSwgODQsIDczLCA4NiwgMTk3LCA2NywgNzksIDc4LCA3NCwgODUsIDc4LCA2NywgODQsIDczLCA3OSwgNzgsIDEyOCwgNjcsIAotICAgIDc5LCA3OCwgNzQsIDg1LCA3MSwgNjUsIDg0LCAxOTcsIDY3LCA3OSwgNzgsIDc0LCA3OSwgNzMsIDc4LCA3MywgNzgsIDE5OSwgCi0gICAgNjcsIDc5LCA3OCwgNzMsIDY3LCA2NSwgMjA0LCA2NywgNzksIDc4LCA3MSwgODIsIDg1LCA2OSwgNzgsIDIxMiwgNjcsIDc5LCAKLSAgICA3OCwgNzEsIDgyLCA2NSwgODQsIDg1LCA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY3LCA3OSwgNzgsIDcwLCA3OSwgCi0gICAgODUsIDc4LCA2OCwgNjksIDE5NiwgNjcsIDc5LCA3OCwgNzAsIDc2LCA3MywgNjcsIDg0LCAxMjgsIDY3LCA3OSwgNzgsIDcwLCAKLSAgICA2OSwgODQsIDg0LCAyMDEsIDY3LCA3OSwgNzgsIDY3LCA2NSwgODYsIDY5LCA0NSwgODMsIDczLCA2OCwgNjksIDE5NiwgNjcsIAotICAgIDc5LCA3OCwgNjcsIDY1LCA4NiwgNjksIDQ1LCA4MCwgNzksIDczLCA3OCwgODQsIDY5LCAxOTYsIDY3LCA3OSwgNzgsIDEyOCwgCi0gICAgNjcsIDc5LCA3NywgODAsIDg1LCA4NCwgNjksIDgyLCAxMjgsIDY3LCA3OSwgNzcsIDgwLCA3OSwgODMsIDczLCA4NCwgNzMsIAotICAgIDc5LCA3OCwgMTI4LCA2NywgNzksIDc3LCA4MCwgNzksIDgzLCA3MywgODQsIDczLCA3OSwgMjA2LCA2NywgNzksIDc3LCA4MCwgCi0gICAgNzYsIDczLCA2NSwgNzgsIDY3LCA2OSwgMTI4LCA2NywgNzksIDc3LCA4MCwgNzYsIDY5LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCAKLSAgICA2NywgNzksIDc3LCA4MCwgNzYsIDY5LCA4NCwgNjksIDY4LCAxMjgsIDY3LCA3OSwgNzcsIDgwLCA3NiwgNjksIDc3LCA2OSwgCi0gICAgNzgsIDg0LCAxMjgsIDY3LCA3OSwgNzcsIDgwLCA2NSwgODIsIDY5LCAxMjgsIDY3LCA3OSwgNzcsIDc3LCA3OSwgMjA2LCAKLSAgICA2NywgNzksIDc3LCA3NywgNjksIDgyLCA2NywgNzMsIDY1LCAyMDQsIDY3LCA3OSwgNzcsIDc3LCA2NSwgMTI4LCA2NywgNzksIAotICAgIDc3LCA3NywgMTkzLCA2NywgNzksIDc3LCA2OSwgODQsIDEyOCwgNjcsIDc5LCA3NywgNjYsIDEyOCwgNjcsIDc5LCA3NiwgCi0gICAgODUsIDc3LCA3OCwgMTI4LCA2NywgNzksIDc2LCA3OSwgODIsIDEyOCwgNjcsIDc5LCA3NiwgNzYsIDczLCA4MywgNzMsIDc5LCAKLSAgICAyMDYsIDY3LCA3OSwgNzYsIDc2LCAxMjgsIDY3LCA3OSwgNzYsIDE5NiwgNjcsIDc5LCA3MCwgNzAsIDczLCA3OCwgMTI4LCAKLSAgICA2NywgNzksIDY5LCA3OCwgNzEsIDEyOCwgNjcsIDc5LCA2OCwgNjUsIDEyOCwgNjcsIDc5LCA2NywgNzUsIDg0LCA2NSwgNzMsIAotICAgIDIwNCwgNjcsIDc5LCA2NSwgODMsIDg0LCA2OSwgODIsIDEyOCwgNjcsIDc5LCA2NSwgMTI4LCA2NywgNzksIDEyOCwgNjcsIAotICAgIDc3LCAxMjgsIDY3LCAyMDUsIDY3LCA3NiwgODUsIDgzLCA4NCwgNjksIDIxMCwgNjcsIDc2LCA4NSwgNjYsIDgzLCAxMjgsIAotICAgIDY3LCA3NiwgODUsIDY2LCA0NSwgODMsIDgwLCA3OSwgNzUsIDY5LCAxOTYsIDY3LCA3NiwgODUsIDY2LCAxMjgsIDY3LCA3NiwgCi0gICAgODUsIDE5NCwgNjcsIDc2LCA3OSwgODYsIDY5LCA4MiwgMTI4LCA2NywgNzYsIDc5LCA4NSwgNjgsIDEyOCwgNjcsIDc2LCAKLSAgICA3OSwgODUsIDE5NiwgNjcsIDc2LCA3OSwgODQsIDcyLCA2OSwgODMsIDEyOCwgNjcsIDc2LCA3OSwgODQsIDcyLCAxMjgsIAotICAgIDY3LCA3NiwgNzksIDgzLCA2OSwgODQsIDEyOCwgNjcsIDc2LCA3OSwgODMsIDY5LCA3OCwgNjksIDgzLCA4MywgMTI4LCA2NywgCi0gICAgNzYsIDc5LCA4MywgNjksIDY4LCAxMjgsIDY3LCA3NiwgNzksIDgzLCAxOTcsIDY3LCA3NiwgNzksIDY3LCA3NSwgODcsIDczLCAKLSAgICA4MywgMTk3LCA2NywgNzYsIDc5LCA2NywgMjAzLCA2NywgNzYsIDczLCA4NiwgNzMsIDgzLCAxMjgsIDY3LCA3NiwgNzMsIAotICAgIDgwLCA2NiwgNzksIDY1LCA4MiwgNjgsIDEyOCwgNjcsIDc2LCA3MywgNzgsIDc1LCA3MywgNzgsIDE5OSwgNjcsIDc2LCA3MywgCi0gICAgNzgsIDcxLCA3MywgNzgsIDE5OSwgNjcsIDc2LCA3MywgNzcsIDY1LCA2NywgODUsIDgzLCAxMjgsIDY3LCA3NiwgNzMsIDcwLCAKLSAgICA3MCwgMTI4LCA2NywgNzYsIDczLCA2NywgNzUsIDEyOCwgNjcsIDc2LCA2OSwgNzAsIDQ1LCA1MCwgMTI4LCA2NywgNzYsIAotICAgIDY5LCA3MCwgNDUsIDQ5LCAxMjgsIDY3LCA3NiwgNjksIDcwLCAxMjgsIDY3LCA3NiwgNjksIDE5OCwgNjcsIDc2LCA2OSwgCi0gICAgNjUsIDg2LCA2OSwgODIsIDEyOCwgNjcsIDc2LCA2OSwgNjUsIDIxMCwgNjcsIDc2LCA2NSwgODcsIDEyOCwgNjcsIDc2LCAKLSAgICA2NSwgODAsIDgwLCA3MywgNzgsIDE5OSwgNjcsIDc2LCA2NSwgODAsIDgwLCA2OSwgMjEwLCA2NywgNzYsIDY1LCA3OCwgCi0gICAgMTI4LCA2NywgNzYsIDY1LCA3MywgNzcsIDEyOCwgNjcsIDc2LCAxMjgsIDY3LCA3MywgODgsIDEyOCwgNjcsIDczLCA4NiwgCi0gICAgNzMsIDc2LCA3MywgNjUsIDc4LCAxMjgsIDY3LCA3MywgODQsIDg5LCA4MywgNjcsIDY1LCA4MCwgMTk3LCA2NywgNzMsIDg0LCAKLSAgICAxMjgsIDY3LCA3MywgODIsIDY3LCA4NSwgMjExLCA2NywgNzMsIDgyLCA2NywgODUsIDc3LCA3MCwgNzYsIDY5LCA4OCwgCi0gICAgMTI4LCA2NywgNzMsIDgyLCA2NywgODUsIDc3LCA3MCwgNzYsIDY5LCAyMTYsIDY3LCA3MywgODIsIDY3LCA4NSwgNzYsIDY1LCAKLSAgICA4NCwgNzMsIDc5LCAyMDYsIDY3LCA3MywgODIsIDY3LCA3NiwgNjksIDgzLCAxMjgsIDY3LCA3MywgODIsIDY3LCA3NiwgNjksIAotICAgIDEyOCwgNjcsIDczLCA4MCwgMTI4LCA2NywgNzMsIDc4LCA3OCwgNjUsIDY2LCA2NSwgODIsIDEyOCwgNjcsIDczLCA3OCwgCi0gICAgNjksIDc3LCA2NSwgMTI4LCA2NywgNzMsIDczLCAxMjgsIDY3LCA3MywgNjksIDg4LCAxMjgsIDY3LCA3MywgNjksIDg1LCAKLSAgICA2NywgNDUsIDgzLCA4MywgNjUsIDc4LCA3MSwgODAsIDczLCA2OSwgODUsIDgwLCAxMjgsIDY3LCA3MywgNjksIDg1LCA2NywgCi0gICAgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA2NywgNzMsIDY5LCA4NSwgNjcsIDQ1LCA3MywgNjksIDg1LCA3OCwgNzEsIAotICAgIDEyOCwgNjcsIDczLCA2OSwgODUsIDE5NSwgNjcsIDczLCA2OSwgODQsIDEyOCwgNjcsIDczLCA2OSwgODAsIDEyOCwgNjcsIAotICAgIDczLCA2OSwgMTI4LCA2NywgNzMsIDEyOCwgNjcsIDcyLCA4OSwgODgsIDEyOCwgNjcsIDcyLCA4OSwgODQsIDEyOCwgNjcsIAotICAgIDcyLCA4OSwgODIsIDg4LCAxMjgsIDY3LCA3MiwgODksIDgyLCAxMjgsIDY3LCA3MiwgODksIDgwLCAxMjgsIDY3LCA3MiwgCi0gICAgODUsIDg4LCAxMjgsIDY3LCA3MiwgODUsIDgyLCA4OCwgMTI4LCA2NywgNzIsIDg1LCA4MiwgNjcsIDcyLCAxMjgsIDY3LCAKLSAgICA3MiwgODUsIDgyLCAxMjgsIDY3LCA3MiwgODUsIDgwLCAxMjgsIDY3LCA3MiwgODUsIDc5LCA4OCwgMTI4LCA2NywgNzIsIAotICAgIDg1LCA3OSwgODQsIDEyOCwgNjcsIDcyLCA4NSwgNzksIDgwLCAxMjgsIDY3LCA3MiwgODUsIDc5LCAxMjgsIDY3LCA3MiwgCi0gICAgODUsIDc2LCA2NSwgMTI4LCA2NywgNzIsIDg1LCAxMjgsIDY3LCA3MiwgODIsIDg5LCA4MywgNjUsIDc4LCA4NCwgNzIsIDY5LCAKLSAgICA3NywgODUsIDc3LCAxMjgsIDY3LCA3MiwgODIsIDc5LCA3OCwgNzksIDg1LCAxMjgsIDY3LCA3MiwgODIsIDc5LCA3OCwgNzksIAotICAgIDc4LCAxMjgsIDY3LCA3MiwgODIsIDc5LCA3NywgMTkzLCA2NywgNzIsIDgyLCA3OSwgMTkzLCA2NywgNzIsIDgyLCA3MywgCi0gICAgODYsIDczLCAxMjgsIDY3LCA3MiwgODIsIDczLCA4MywgODQsIDc3LCA2NSwgODMsIDEyOCwgNjcsIDcyLCA4MiwgNzMsIDgzLCAKLSAgICA4NCwgNzcsIDY1LCAyMTEsIDY3LCA3MiwgNzksIDg4LCAxMjgsIDY3LCA3MiwgNzksIDg0LCAxMjgsIDY3LCA3MiwgNzksIAotICAgIDgyLCA2OSwgODYsIDc3LCAxOTMsIDY3LCA3MiwgNzksIDgwLCAxMjgsIDY3LCA3MiwgNzksIDc1LCA2OSwgMTI4LCA2NywgCi0gICAgNzIsIDc5LCA2OSwgMTI4LCA2NywgNzIsIDc5LCA2NywgNzksIDc2LCA2NSwgODQsIDE5NywgNjcsIDcyLCA3OSwgNjUsIAotICAgIDEyOCwgNjcsIDcyLCAyMDcsIDY3LCA3MiwgNzMsIDg0LCA4NSwgNjksIDg1LCA3NywgODMsIDgzLCA2NSwgNzgsIDcxLCA4MywgCi0gICAgNzMsIDc5LCA4MywgMTI4LCA2NywgNzIsIDczLCA4NCwgODUsIDY5LCA4NSwgNzcsIDgzLCA4MywgNjUsIDc4LCA3MSwgNjcsIAotICAgIDczLCA2OSwgODUsIDY3LCAxMjgsIDY3LCA3MiwgNzMsIDg0LCA4NSwgNjksIDg1LCA3NywgODMsIDczLCA3OSwgODMsIDEyOCwgCi0gICAgNjcsIDcyLCA3MywgODQsIDg1LCA2OSwgODUsIDc3LCA2NywgNzMsIDY5LCA4NSwgNjcsIDEyOCwgNjcsIDcyLCA3MywgODQsIAotICAgIDg1LCA2OSwgODUsIDc3LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCA3MiwgMTI4LCA2NywgNzIsIDczLCA4MiwgNzksIDc4LCAKLSAgICAxMjgsIDY3LCA3MiwgNzMsIDgyLCA2OSwgODQsIDEyOCwgNjcsIDcyLCA3MywgNzgsIDcxLCAxMjgsIDY3LCA3MiwgNzMsIAotICAgIDc4LCA2OSwgODMsIDE5NywgNjcsIDcyLCA3MywgNzgsIDEyOCwgNjcsIDcyLCA3MywgNzcsIDY5LCAxMjgsIDY3LCA3MiwgCi0gICAgNzMsIDc2LCA3NiwgMjEzLCA2NywgNzIsIDczLCA3NiwgNjgsIDgyLCA2OSwgMjA2LCA2NywgNzIsIDczLCA3NiwgNjgsIAotICAgIDEyOCwgNjcsIDcyLCA3MywgNzYsIDEyOCwgNjcsIDcyLCA3MywgNzUsIDIwMSwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgCi0gICAgNzIsIDQ1LCA3NSwgNzIsIDczLCA2OSwgODUsIDc1LCA3MiwgMTI4LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCA3MiwgNDUsIAotICAgIDcyLCA3MywgNjksIDg1LCA3MiwgMTI4LCA2NywgNzIsIDczLCA2OSwgODUsIDY3LCAyMDAsIDY3LCA3MiwgNzMsIDY3LCA3NSwgCi0gICAgNjksIDc4LCAxMjgsIDY3LCA3MiwgNzMsIDY3LCA3NSwgMTI4LCA2NywgNzIsIDczLCAxMjgsIDY3LCA3MiwgMjAxLCA2NywgCi0gICAgNzIsIDcyLCA2NSwgMTI4LCA2NywgNzIsIDY5LCA4OCwgMTI4LCA2NywgNzIsIDY5LCA4NiwgODIsIDc5LCAyMDYsIDY3LCAKLSAgICA3MiwgNjksIDg0LCAxMjgsIDY3LCA3MiwgNjksIDgzLCA4NCwgNzgsIDg1LCA4NCwgMTI4LCA2NywgNzIsIDY5LCA4MywgCisgICAgMTI4LCA3MiwgNzksIDc5LCA3OCwgMTI4LCA3MiwgNzksIDc5LCA3NSwgNjksIDE5NiwgNzIsIDc5LCA3OCwgNjksIDg5LCAKKyAgICA2NiwgNjksIDY5LCAxMjgsIDcyLCA3OSwgNzgsIDY5LCAyMTcsIDcyLCA3OSwgNzcsIDc5LCA4NCwgNzIsIDY5LCA4NCwgNzMsIAorICAgIDY3LCAxMjgsIDcyLCA3OSwgNzcsIDc5LCA4NCwgNzIsIDY5LCA4NCwgNzMsIDE5NSwgNzIsIDc5LCA3NiwgNjksIDEyOCwgCisgICAgNzIsIDc5LCA3NiwgNjgsIDczLCA3OCwgMTk5LCA3MiwgNzksIDc2LCA2NSwgNzcsIDEyOCwgNzIsIDc5LCA3NiwgNjUsIAorICAgIDIwNSwgNzIsIDc5LCA3NSwgNjUsIDEyOCwgNzIsIDc5LCA3MywgMTI4LCA3MiwgNzksIDY3LCA3MiwgNzksIDEyOCwgNzIsIAorICAgIDc4LCA4NSwgODQsIDEyOCwgNzIsIDc4LCA4NSwgNzksIDg4LCAxMjgsIDcyLCA3OCwgODUsIDc5LCAxMjgsIDcyLCA3OCwgCisgICAgNzksIDg4LCAxMjgsIDcyLCA3OCwgNzksIDg0LCAxMjgsIDcyLCA3OCwgNzksIDgwLCAxMjgsIDcyLCA3OCwgNzMsIDg4LCAKKyAgICAxMjgsIDcyLCA3OCwgNzMsIDg0LCAxMjgsIDcyLCA3OCwgNzMsIDgwLCAxMjgsIDcyLCA3OCwgNzMsIDY5LCA4OCwgMTI4LCAKKyAgICA3MiwgNzgsIDczLCA2OSwgODQsIDEyOCwgNzIsIDc4LCA3MywgNjksIDgwLCAxMjgsIDcyLCA3OCwgNzMsIDY5LCAxMjgsIAorICAgIDcyLCA3OCwgNzMsIDEyOCwgNzIsIDc4LCA2OSwgODgsIDEyOCwgNzIsIDc4LCA2OSwgODAsIDEyOCwgNzIsIDc4LCA2OSwgCisgICAgMTI4LCA3MiwgNzgsIDY1LCA4OCwgMTI4LCA3MiwgNzgsIDY1LCA4NCwgMTI4LCA3MiwgNzgsIDY1LCA4MCwgMTI4LCA3MiwgCisgICAgNzgsIDY1LCAxMjgsIDcyLCA3NywgODksIDg4LCAxMjgsIDcyLCA3NywgODksIDgyLCA4OCwgMTI4LCA3MiwgNzcsIDg5LCAKKyAgICA4MiwgMTI4LCA3MiwgNzcsIDg5LCA4MCwgMTI4LCA3MiwgNzcsIDg5LCAxMjgsIDcyLCA3NywgODUsIDg4LCAxMjgsIDcyLCAKKyAgICA3NywgODUsIDg0LCAxMjgsIDcyLCA3NywgODUsIDgyLCA4OCwgMTI4LCA3MiwgNzcsIDg1LCA4MiwgMTI4LCA3MiwgNzcsIAorICAgIDg1LCA4MCwgMTI4LCA3MiwgNzcsIDg1LCA3OSwgODgsIDEyOCwgNzIsIDc3LCA4NSwgNzksIDgwLCAxMjgsIDcyLCA3NywgCisgICAgODUsIDc5LCAxMjgsIDcyLCA3NywgODUsIDEyOCwgNzIsIDc3LCA3OSwgODgsIDEyOCwgNzIsIDc3LCA3OSwgODQsIDEyOCwgCisgICAgNzIsIDc3LCA3OSwgODAsIDEyOCwgNzIsIDc3LCA3OSwgMTI4LCA3MiwgNzcsIDczLCA4OCwgMTI4LCA3MiwgNzcsIDczLCAKKyAgICA4NCwgMTI4LCA3MiwgNzcsIDczLCA4MCwgMTI4LCA3MiwgNzcsIDczLCA2OSwgODgsIDEyOCwgNzIsIDc3LCA3MywgNjksIAorICAgIDgwLCAxMjgsIDcyLCA3NywgNzMsIDY5LCAxMjgsIDcyLCA3NywgNzMsIDEyOCwgNzIsIDc3LCA2OSwgMTI4LCA3MiwgNzcsIAorICAgIDY1LCA4OCwgMTI4LCA3MiwgNzcsIDY1LCA4NCwgMTI4LCA3MiwgNzcsIDY1LCA4MCwgMTI4LCA3MiwgNzcsIDY1LCAxMjgsIAorICAgIDcyLCA3NiwgODksIDg4LCAxMjgsIDcyLCA3NiwgODksIDg0LCAxMjgsIDcyLCA3NiwgODksIDgyLCA4OCwgMTI4LCA3MiwgCisgICAgNzYsIDg5LCA4MiwgMTI4LCA3MiwgNzYsIDg5LCA4MCwgMTI4LCA3MiwgNzYsIDg5LCAxMjgsIDcyLCA3NiwgODUsIDg4LCAKKyAgICAxMjgsIDcyLCA3NiwgODUsIDg0LCAxMjgsIDcyLCA3NiwgODUsIDgyLCA4OCwgMTI4LCA3MiwgNzYsIDg1LCA4MiwgMTI4LCAKKyAgICA3MiwgNzYsIDg1LCA4MCwgMTI4LCA3MiwgNzYsIDg1LCA3OSwgODgsIDEyOCwgNzIsIDc2LCA4NSwgNzksIDgwLCAxMjgsIAorICAgIDcyLCA3NiwgODUsIDc5LCAxMjgsIDcyLCA3NiwgODUsIDEyOCwgNzIsIDc2LCA3OSwgODgsIDEyOCwgNzIsIDc2LCA3OSwgCisgICAgODAsIDEyOCwgNzIsIDc2LCA3OSwgMTI4LCA3MiwgNzYsIDczLCA4OCwgMTI4LCA3MiwgNzYsIDczLCA4NCwgMTI4LCA3MiwgCisgICAgNzYsIDczLCA4MCwgMTI4LCA3MiwgNzYsIDczLCA2OSwgODgsIDEyOCwgNzIsIDc2LCA3MywgNjksIDgwLCAxMjgsIDcyLCAKKyAgICA3NiwgNzMsIDY5LCAxMjgsIDcyLCA3NiwgNzMsIDEyOCwgNzIsIDc2LCA2OSwgODgsIDEyOCwgNzIsIDc2LCA2OSwgODAsIAorICAgIDEyOCwgNzIsIDc2LCA2OSwgMTI4LCA3MiwgNzYsIDY1LCA4OCwgMTI4LCA3MiwgNzYsIDY1LCA4NCwgMTI4LCA3MiwgNzYsIAorICAgIDY1LCA4MCwgMTI4LCA3MiwgNzYsIDY1LCAxMjgsIDcyLCA3NSwgMTI4LCA3MiwgNzMsIDkwLCA2NiwgMTI4LCA3MiwgNzMsIAorICAgIDgzLCA4NCwgNzksIDgyLCA3MywgMTk1LCA3MiwgNzMsIDgyLCA3MywgODEsIDEyOCwgNzIsIDczLCA3MSwgNzIsIDQ1LCA4MywgCisgICAgODAsIDY5LCA2OSwgMTk2LCA3MiwgNzMsIDcxLCA3MiwgNDUsIDgyLCA2OSwgODYsIDY5LCA4MiwgODMsIDY5LCA2OCwgNDUsIAorICAgIDE4NSwgNzIsIDczLCA3MSwgNzIsIDQ1LCA3MiwgNjksIDY5LCA3NiwgNjksIDE5NiwgNzIsIDczLCA2OSwgODgsIDEyOCwgCisgICAgNzIsIDczLCA2OSwgODUsIDcyLCA0NSwgODMsIDczLCA3OSwgODMsIDEyOCwgNzIsIDczLCA2OSwgODUsIDcyLCA0NSwgODIsIAorICAgIDczLCA2OSwgODUsIDc2LCAxMjgsIDcyLCA3MywgNjksIDg1LCA3MiwgNDUsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA3MiwgCisgICAgNzMsIDY5LCA4NSwgNzIsIDQ1LCA3OCwgNzMsIDY5LCA4NSwgNzgsIDEyOCwgNzIsIDczLCA2OSwgODUsIDcyLCA0NSwgNzcsIAorICAgIDczLCA2OSwgODUsIDc3LCAxMjgsIDcyLCA3MywgNjksIDg1LCAyMDAsIDcyLCA3MywgNjksIDEyOCwgNzIsIDczLCA2OCwgCisgICAgNzMsIDc4LCAxOTksIDcyLCA3MywgNjgsIDY5LCA4NCwgMTI4LCA3MiwgNzMsIDY4LCA2OSwgMTI4LCA3MiwgNzMsIDY2LCAKKyAgICA3MywgODMsIDY3LCA4NSwgODMsIDEyOCwgNzIsIDcyLCA4NywgNjUsIDEyOCwgNzIsIDcyLCA4NSwgMTI4LCA3MiwgNzIsIAorICAgIDczLCAxMjgsIDcyLCA3MiwgNjksIDY5LCAxMjgsIDcyLCA3MiwgNjksIDEyOCwgNzIsIDcyLCA2NSwgNjUsIDEyOCwgNzIsIAorICAgIDcxLCAxMjgsIDcyLCA2OSwgODgsIDczLCA3MCwgNzksIDgyLCAyMDUsIDcyLCA2OSwgODgsIDY1LCA3MSwgODIsIDY1LCAKKyAgICAyMDUsIDcyLCA2OSwgODgsIDY1LCA3MSwgNzksIDc4LCAxMjgsIDcyLCA2OSwgODIsIDg1LCA4NCwgODUsIDEyOCwgNzIsIAorICAgIDY5LCA4MiwgODUsIDEyOCwgNzIsIDY5LCA4MiwgNzcsIDczLCA4NCwgNzMsIDY1LCAyMDYsIDcyLCA2OSwgODIsIDc3LCA3MywgCisgICAgNzksIDc4LCA3MywgNjUsIDIwNiwgNzIsIDY5LCA4MiwgNzcsIDY5LCA4MywgMTI4LCA3MiwgNjksIDgyLCA2NiwgMTI4LCAKKyAgICA3MiwgNjksIDgyLCA2NSwgNjksIDg1LCAyMDUsIDcyLCA2OSwgNzgsIDcxLCAxMjgsIDcyLCA2OSwgNzgsIDE5OSwgNzIsIAorICAgIDY5LCA3NywgODAsIDEyOCwgNzIsIDY5LCA3NiwgNzcsIDY5LCA4NCwgMTI4LCA3MiwgNjksIDc2LCA3NywgNjksIDIxMiwgCisgICAgNzIsIDY5LCA3NiwgMjA1LCA3MiwgNjksIDc2LCA3MywgNjcsIDc5LCA4MCwgODQsIDY5LCA4MiwgMTI4LCA3MiwgNjksIDc1LCAKKyAgICA4NSwgODQsIDY1LCA2NSwgODIsIDg1LCAxMjgsIDcyLCA2OSwgNzMsIDgzLCA2OSwgNzMsIDEyOCwgNzIsIDY5LCA2NSwgODYsIAorICAgIDg5LCAxMjgsIDcyLCA2OSwgNjUsIDg2LCA2OSwgNzgsIDc2LCAyMTcsIDcyLCA2OSwgNjUsIDg2LCA2OSwgNzgsIDEyOCwgCisgICAgNzIsIDY5LCA2NSwgODYsIDY5LCAyMDYsIDcyLCA2OSwgNjUsIDgyLCA4NCwgODMsIDEyOCwgNzIsIDY5LCA2NSwgODIsIDg0LCAKKyAgICA0NSwgODMsIDcyLCA2NSwgODAsIDY5LCAxOTYsIDcyLCA2OSwgNjUsIDgyLCA4NCwgMTI4LCA3MiwgNjksIDY1LCA4MiwgCisgICAgMjEyLCA3MiwgNjksIDY1LCA4MiwgNDUsIDc4LCA3OSwgNDUsIDY5LCA4NiwgNzMsIDIwNCwgNzIsIDY5LCA2NSwgNjgsIDgzLCAKKyAgICA4NCwgODIsIDc5LCA3NSwgNjksIDEyOCwgNzIsIDY5LCA2NSwgNjgsIDgzLCA4NCwgNzksIDc4LCAxOTcsIDcyLCA2OSwgNjUsIAorICAgIDY4LCA4MCwgNzIsIDc5LCA3OCwgNjksIDEyOCwgNzIsIDY5LCA2NSwgNjgsIDczLCA3OCwgNzEsIDEyOCwgNzIsIDY2LCA2NSwgCisgICAgODMsIDY1LCA0NSwgNjksIDgzLCA2NSwgODMsIDE5MywgNzIsIDY2LCA2NSwgODMsIDE5MywgNzIsIDY1LCA4OSwgNjUsIDc4LCAKKyAgICA3OCwgNjUsIDEyOCwgNzIsIDY1LCA4NiwgNjksIDEyOCwgNzIsIDY1LCA4NSwgODAsIDg0LCA4MywgODQsIDczLCA3NywgNzcsIAorICAgIDY5LCAxMjgsIDcyLCA2NSwgODQsIDcyLCA3MywgMTI4LCA3MiwgNjUsIDg0LCA2OSwgMTI4LCA3MiwgNjUsIDg0LCA2NywgCisgICAgNzIsIDczLCA3OCwgMTk5LCA3MiwgNjUsIDg0LCA2NSwgMTk4LCA3MiwgNjUsIDgzLCA2OSwgMjEwLCA3MiwgNjUsIDgzLCAKKyAgICA2NSwgNzgsIDg0LCA2NSwgMTI4LCA3MiwgNjUsIDgyLCA4MCwgNzksIDc5LCA3OCwgMTI4LCA3MiwgNjUsIDgyLCA4MCwgNzksIAorICAgIDc5LCAyMDYsIDcyLCA2NSwgODIsIDc3LCA3OSwgNzgsIDczLCA2NywgMTI4LCA3MiwgNjUsIDgyLCA3NSwgNzYsIDY5LCA2NSwgCisgICAgMjA2LCA3MiwgNjUsIDgyLCA2OCwgNzgsIDY5LCA4MywgODMsIDEyOCwgNzIsIDY1LCA4MiwgMTk2LCA3MiwgNjUsIDgwLCAKKyAgICA4MCwgMjE3LCA3MiwgNjUsIDc4LCA4NSwgNzgsIDc5LCAyMDcsIDcyLCA2NSwgNzgsIDcxLCA5MCwgNzIsIDc5LCAyMTMsIAorICAgIDcyLCA2NSwgNzgsIDY4LCA4MywgMTI4LCA3MiwgNjUsIDc4LCA2OCwgMjExLCA3MiwgNjUsIDc4LCA2OCwgNzYsIDY5LCA4MywgCisgICAgMTI4LCA3MiwgNjUsIDc4LCA2OCwgNzYsIDY5LCAxMjgsIDcyLCA2NSwgNzgsIDY4LCA2NiwgNjUsIDcxLCAxMjgsIDcyLCAKKyAgICA2NSwgNzgsIDY4LCAxMjgsIDcyLCA2NSwgNzgsIDQ1LCA2NSwgNzUsIDY1LCA4NCwgMTI4LCA3MiwgNjUsIDc3LCA5MCwgNjUsIAorICAgIDEyOCwgNzIsIDY1LCA3NywgODMsIDg0LCA2OSwgMjEwLCA3MiwgNjUsIDc3LCA3NywgNjksIDgyLCAxMjgsIDcyLCA2NSwgCisgICAgNzcsIDc3LCA2OSwgMjEwLCA3MiwgNjUsIDc3LCA2NiwgODUsIDgyLCA3MSwgNjksIDgyLCAxMjgsIDcyLCA2NSwgNzYsIDgxLCAKKyAgICA2NSwgMTI4LCA3MiwgNjUsIDc2LCA3OSwgMTI4LCA3MiwgNjUsIDc2LCA3MCwgMTI4LCA3MiwgNjUsIDc2LCA2NiwgNjksIAorICAgIDgyLCA2OCwgMTI4LCA3MiwgNjUsIDc2LCA2NSwgNzgsIDg0LCA2NSwgMTI4LCA3MiwgNjUsIDczLCA4NCwgODUsIDEyOCwgCisgICAgNzIsIDY1LCA3MywgODIsIDY3LCA4NSwgODQsIDEyOCwgNzIsIDY1LCA3MywgODIsIDEyOCwgNzIsIDY1LCA3MSwgNzYsIDY1LCAKKyAgICAyMTgsIDcyLCA2NSwgNzEsIDc2LCAxMjgsIDcyLCA2NSwgNzAsIDg1LCA3NSwgNzIsIDY1LCAxMjgsIDcyLCA2NSwgNzAsIAorICAgIDg1LCA3NSwgNzIsIDEyOCwgNzIsIDY1LCA2OSwgNzEsIDIwNCwgNzIsIDY1LCA2NSwgODIsIDg1LCAxMjgsIDcyLCA2NSwgCisgICAgNjUsIDc3LCAxMjgsIDcyLCA2NSwgMTkzLCA3MiwgNjUsIDQ1LCA3MiwgNjUsIDEyOCwgNzIsIDQ4LCA0OCwgNTYsIDEyOCwgCisgICAgNzIsIDQ4LCA0OCwgNTUsIDEyOCwgNzIsIDQ4LCA0OCwgNTQsIDY1LCAxMjgsIDcyLCA0OCwgNDgsIDU0LCAxMjgsIDcyLCAKKyAgICA0OCwgNDgsIDUzLCAxMjgsIDcyLCA0OCwgNDgsIDUyLCAxMjgsIDcyLCA0OCwgNDgsIDUxLCAxMjgsIDcyLCA0OCwgNDgsIAorICAgIDUwLCAxMjgsIDcyLCA0OCwgNDgsIDQ5LCAxMjgsIDcyLCA0NSwgODQsIDg5LCA4MCwgMTk3LCA3MSwgODksIDg1LCAxMjgsIAorICAgIDcxLCA4OSwgNzksIDc4LCAxMjgsIDcxLCA4OSwgNzksIDEyOCwgNzEsIDg5LCA3MywgMTI4LCA3MSwgODksIDcwLCAyMTMsIAorICAgIDcxLCA4OSwgNjksIDY5LCAxMjgsIDcxLCA4OSwgNjUsIDgzLCAxMjgsIDcxLCA4OSwgNjUsIDY1LCAxMjgsIDcxLCA4OSwgCisgICAgNjUsIDEyOCwgNzEsIDg5LCAxMjgsIDcxLCA4NywgODUsIDEyOCwgNzEsIDg3LCA3MywgMTI4LCA3MSwgODcsIDY5LCA2OSwgCisgICAgMTI4LCA3MSwgODcsIDY5LCAxMjgsIDcxLCA4NywgNjUsIDY1LCAxMjgsIDcxLCA4NywgNjUsIDEyOCwgNzEsIDg2LCAxMjgsIAorICAgIDcxLCA4NSwgODIsIDg1LCA4MywgNzIsIDEyOCwgNzEsIDg1LCA4MiwgODUsIDc4LCAxMjgsIDcxLCA4NSwgODIsIDY1LCA3NywgCisgICAgODUsIDg0LCA3OSwgNzgsIDEyOCwgNzEsIDg1LCA4MiwgNTUsIDEyOCwgNzEsIDg1LCA3OCwgODUsIDEyOCwgNzEsIDg1LCAKKyAgICA3OCwgMjEzLCA3MSwgODUsIDIwNSwgNzEsIDg1LCA3NiwgMTI4LCA3MSwgODUsIDczLCA4NCwgNjUsIDgyLCAxMjgsIDcxLCAKKyAgICA4NSwgMTk5LCA3MSwgODUsIDY5LCA3MiwgMTI4LCA3MSwgODUsIDY5LCAyMDAsIDcxLCA4NSwgNjgsIDEyOCwgNzEsIDg1LCAKKyAgICAxOTYsIDcxLCA4NSwgNjUsIDgyLCA2OCwgODMsIDc3LCA2NSwgNzgsIDEyOCwgNzEsIDg1LCA2NSwgODIsIDY4LCA2OSwgNjgsIAorICAgIDc4LCA2OSwgODMsIDgzLCAxMjgsIDcxLCA4NSwgNjUsIDgyLCA2NSwgNzgsIDIwMSwgNzEsIDg1LCAxOTMsIDcxLCA4NSwgCisgICAgMTc4LCA3MSwgODQsIDY5LCAyMTAsIDcxLCA4MywgODUsIDc3LCAxMjgsIDcxLCA4MywgODUsIDIwNSwgNzEsIDgyLCAyMTMsIAorICAgIDcxLCA4MiwgNzksIDg3LCA3MywgNzgsIDE5OSwgNzEsIDgyLCA3OSwgODUsIDc4LCA2OCwgMTI4LCA3MSwgODIsIDc5LCA3OCwgCisgICAgODQsIDcyLCA3MywgODMsIDc3LCA2NSwgODQsIDY1LCAxMjgsIDcxLCA4MiwgNzMsIDc4LCA3OCwgNzMsIDc4LCAxOTksIDcxLCAKKyAgICA4MiwgNjksIDcxLCA3OSwgODIsIDczLCA2NSwgMjA2LCA3MSwgODIsIDY5LCA2OSwgMjA2LCA3MSwgODIsIDY5LCA2NSwgODQsIAorICAgIDc4LCA2OSwgODMsIDgzLCAxMjgsIDcxLCA4MiwgNjksIDY1LCA4NCwgNjksIDgyLCA0NSwgODQsIDcyLCA2NSwgNzgsIDEyOCwgCisgICAgNzEsIDgyLCA2OSwgNjUsIDg0LCA2OSwgODIsIDQ1LCA4NCwgNzIsIDY1LCAyMDYsIDcxLCA4MiwgNjksIDY1LCA4NCwgNjksIAorICAgIDIxMCwgNzEsIDgyLCA2OSwgNjUsIDIxMiwgNzEsIDgyLCA2NSwgODYsIDY5LCA4OSwgNjUsIDgyLCAxOTYsIDcxLCA4MiwgCisgICAgNjUsIDg2LCA2OSwgNDUsIDc3LCA2NSwgNjcsIDgyLCA3OSwgNzgsIDEyOCwgNzEsIDgyLCA2NSwgODYsIDY5LCA0NSwgNjUsIAorICAgIDY3LCA4NSwgODQsIDY5LCA0NSwgNzEsIDgyLCA2NSwgODYsIDY5LCAxMjgsIDcxLCA4MiwgNjUsIDg2LCAxOTcsIDcxLCA4MiwgCisgICAgNjUsIDg0LCA2OSwgODIsIDEyOCwgNzEsIDgyLCA2NSwgODMsIDgzLCAxMjgsIDcxLCA4MiwgNjUsIDgzLCAyMTEsIDcxLCAKKyAgICA4MiwgNjUsIDgwLCA3MiwgNjksIDc3LCAxOTcsIDcxLCA4MiwgNjUsIDgwLCA2OSwgODMsIDEyOCwgNzEsIDgyLCA2NSwgNzcsIAorICAgIDc3LCAxOTMsIDcxLCA4MiwgNjUsIDczLCA3OCwgMTI4LCA3MSwgODIsIDY1LCA2OCwgODUsIDY1LCA4NCwgNzMsIDc5LCAKKyAgICAyMDYsIDcxLCA4MiwgNjUsIDY3LCA2OSwgMTI4LCA3MSwgODIsIDY1LCA2NywgMTk3LCA3MSwgODAsIDY1LCAxMjgsIDcxLCAKKyAgICA3OSwgODIsIDg0LCA3MiwgNzcsIDczLCA3NSwgNzksIDIwNiwgNzEsIDc5LCA4MiwgODQsIDEyOCwgNzEsIDc5LCA4MiwgNzEsIAorICAgIDc5LCA4NCwgNjksIDgyLCA3MywgMTI4LCA3MSwgNzksIDgyLCA3MSwgNzksIDgzLCA4OSwgNzgsIDg0LCA3MiwgNjksIDg0LCAKKyAgICA3OSwgNzgsIDEyOCwgNzEsIDc5LCA4MiwgNzEsIDc5LCAyMDYsIDcxLCA3OSwgODIsIDcxLCA3MywgMTI4LCA3MSwgNzksIAorICAgIDgyLCA2NSwgMTI4LCA3MSwgNzksIDc5LCAxOTYsIDcxLCA3OSwgNzgsIDcxLCAxMjgsIDcxLCA3OSwgNzYsIDY4LCAxMjgsIAorICAgIDcxLCA3OSwgNzUsIDEyOCwgNzEsIDc5LCA3MywgNzgsIDE5OSwgNzEsIDc5LCA2NiwgNzYsIDczLCA3OCwgMTI4LCA3MSwgCisgICAgNzksIDY1LCA3NiwgMTI4LCA3MSwgNzksIDY1LCAyMDQsIDcxLCA3OSwgNjUsIDEyOCwgNzEsIDc4LCA4OSwgNzMsIDgzLCAKKyAgICAxMjgsIDcxLCA3OCwgNjUsIDg2LCA3MywgODksIDY1LCA3OCwgNzMsIDEyOCwgNzEsIDc2LCA3OSwgODcsIDczLCA3OCwgCisgICAgMTk5LCA3MSwgNzYsIDc5LCA4NCwgODQsIDY1LCAyMDQsIDcxLCA3NiwgNzksIDY2LCAxOTcsIDcxLCA3NiwgNzMsIDgzLCAKKyAgICA4MywgNjUsIDc4LCA2OCwgMjA3LCA3MSwgNzYsIDY5LCA3MywgNjcsIDIwMCwgNzEsIDc2LCA2NSwgNzEsIDc5LCA3NiwgNzMsIAorICAgIDEyOCwgNzEsIDc2LCA2NSwgMTI4LCA3MSwgNzQsIDY5LCAxMjgsIDcxLCA3MywgODgsIDEyOCwgNzEsIDczLCA4NCwgMTI4LCAKKyAgICA3MSwgNzMsIDgzLCA3MiwgMTI4LCA3MSwgNzMsIDgzLCAyMDAsIDcxLCA3MywgODMsIDY1LCA3NiwgMTI4LCA3MSwgNzMsIAorICAgIDgyLCA4NSwgNjgsIDY1LCA2NSwgMTI4LCA3MSwgNzMsIDgyLCA3NiwgMTI4LCA3MSwgNzMsIDgyLCA1MSwgMTI4LCA3MSwgCisgICAgNzMsIDgyLCAxNzksIDcxLCA3MywgODIsIDUwLCAxMjgsIDcxLCA3MywgODIsIDE3OCwgNzEsIDczLCA4MCwgMTI4LCA3MSwgCisgICAgNzMsIDc4LCA3MywgNzMsIDEyOCwgNzEsIDczLCA3NywgNjksIDc2LCAxMjgsIDcxLCA3MywgNzcsIDY5LCAyMDQsIDcxLCAKKyAgICA3MywgNzcsIDEyOCwgNzEsIDczLCA3MSwgNjUsIDEyOCwgNzEsIDczLCA2OSwgODQsIDEyOCwgNzEsIDczLCA2OCwgNzMsIAorICAgIDc3LCAxMjgsIDcxLCA3MywgNjYsIDY2LCA3OSwgODUsIDIxMSwgNzEsIDczLCA2NiwgNjUsIDEyOCwgNzEsIDczLCA1MiwgCisgICAgMTI4LCA3MSwgNzMsIDE4MCwgNzEsIDcyLCA5MCwgMTI4LCA3MSwgNzIsIDg3LCA2NSwgMTI4LCA3MSwgNzIsIDg1LCA3OCwgCisgICAgNzgsIDY1LCAxMjgsIDcxLCA3MiwgODUsIDc4LCA3OCwgMTkzLCA3MSwgNzIsIDg1LCAxMjgsIDcxLCA3MiwgNzksIDg1LCAKKyAgICAxMjgsIDcxLCA3MiwgNzksIDgzLCA4NCwgMTI4LCA3MSwgNzIsIDc5LCAxMjgsIDcxLCA3MiwgNzMsIDEyOCwgNzEsIDcyLCAKKyAgICA3MiwgNjUsIDEyOCwgNzEsIDcyLCA2OSwgODUsIDg4LCAxMjgsIDcxLCA3MiwgNjksIDg1LCA3OCwgMTI4LCA3MSwgNzIsIAorICAgIDY5LCA4NSwgNzEsIDcyLCA2OSwgODUsIDY1LCA2OSwgNzcsIDEyOCwgNzEsIDcyLCA2OSwgODUsIDcxLCA3MiwgNjksIDc4LCAKKyAgICAxMjgsIDcxLCA3MiwgNjksIDg1LCA2NSwgNjksIDgyLCA2NSwgNjksIDEyOCwgNzEsIDcyLCA2OSwgODUsIDY1LCA2OSwgNzEsIAorICAgIDcyLCA2OSwgODUsIDY1LCA2OSwgMTI4LCA3MSwgNzIsIDY5LCA4NCwgMTI4LCA3MSwgNzIsIDY5LCA2OSwgMTI4LCA3MSwgCisgICAgNzIsIDY5LCAxMjgsIDcxLCA3MiwgMTk3LCA3MSwgNzIsIDY1LCA4OSwgNzgsIDEyOCwgNzEsIDcyLCA2NSwgODIsIDY1LCAKKyAgICA2OSwgMTI4LCA3MSwgNzIsIDY1LCA4MCwgMTI4LCA3MSwgNzIsIDY1LCA3OCwgMTI4LCA3MSwgNzIsIDY1LCA3NywgNjUsIAorICAgIDc2LCAxMjgsIDcxLCA3MiwgNjUsIDczLCA3OCwgODUsIDEyOCwgNzEsIDcyLCA2NSwgNzMsIDc4LCAxMjgsIDcxLCA3MiwgCisgICAgNjUsIDczLCAyMDYsIDcxLCA3MiwgNjUsIDY4LCAxMjgsIDcxLCA3MiwgNjUsIDY1LCA3NywgNjUsIDY5LCAxMjgsIDcxLCAKKyAgICA3MiwgNjUsIDY1LCAxMjgsIDcxLCA3MiwgNjUsIDEyOCwgNzEsIDcxLCA4NywgNzMsIDEyOCwgNzEsIDcxLCA4NywgNjksIAorICAgIDY5LCAxMjgsIDcxLCA3MSwgODcsIDY5LCAxMjgsIDcxLCA3MSwgODcsIDY1LCA2NSwgMTI4LCA3MSwgNzEsIDg3LCA2NSwgCisgICAgMTI4LCA3MSwgNzEsIDg1LCA4OCwgMTI4LCA3MSwgNzEsIDg1LCA4NCwgMTI4LCA3MSwgNzEsIDg1LCA4MiwgODgsIDEyOCwgCisgICAgNzEsIDcxLCA4NSwgODIsIDEyOCwgNzEsIDcxLCA4NSwgNzksIDg4LCAxMjgsIDcxLCA3MSwgODUsIDc5LCA4NCwgMTI4LCAKKyAgICA3MSwgNzEsIDg1LCA3OSwgODAsIDEyOCwgNzEsIDcxLCA4NSwgNzksIDEyOCwgNzEsIDcxLCA3OSwgODgsIDEyOCwgNzEsIAorICAgIDcxLCA3OSwgODQsIDEyOCwgNzEsIDcxLCA3OSwgODAsIDEyOCwgNzEsIDcxLCA3MywgODgsIDEyOCwgNzEsIDcxLCA3MywgCisgICAgODQsIDEyOCwgNzEsIDcxLCA3MywgNjksIDg4LCAxMjgsIDcxLCA3MSwgNzMsIDY5LCA4MCwgMTI4LCA3MSwgNzEsIDczLCAKKyAgICA2OSwgMTI4LCA3MSwgNzEsIDY5LCA4OCwgMTI4LCA3MSwgNzEsIDY5LCA4NCwgMTI4LCA3MSwgNzEsIDY5LCA4MCwgMTI4LCAKKyAgICA3MSwgNzEsIDY1LCA4OCwgMTI4LCA3MSwgNzEsIDY1LCA4NCwgMTI4LCA3MSwgNzEsIDY1LCA2NSwgMTI4LCA3MSwgNjksIAorICAgIDg0LCAxOTMsIDcxLCA2OSwgODMsIDg0LCA4NSwgODIsIDY5LCAxMjgsIDcxLCA2OSwgODMsIDcyLCA4NSwgMTI4LCA3MSwgCisgICAgNjksIDgzLCA3MiwgODQsIDczLCA3OCwgMTI4LCA3MSwgNjksIDgzLCA3MiwgODQsIDczLCAyMDYsIDcxLCA2OSwgODMsIDcyLCAKKyAgICA1MCwgMTI4LCA3MSwgNjksIDgyLCA4MywgNzIsIDY1LCA4OSwgNzMsIDc3LCAxMjgsIDcxLCA2OSwgODIsIDc3LCA2NSwgCisgICAgMjA2LCA3MSwgNjksIDgyLCA2OSwgODMsIDcyLCAxMjgsIDcxLCA2OSwgODIsIDY5LCA4MywgMjAwLCA3MSwgNjksIDc5LCAKKyAgICA3NywgNjksIDg0LCA4MiwgNzMsIDY3LCA2NSwgNzYsIDc2LCAyMTcsIDcxLCA2OSwgNzksIDc3LCA2OSwgODQsIDgyLCA3MywgCisgICAgMTk1LCA3MSwgNjksIDc4LCA4NCwgNzYsIDE5NywgNzEsIDY5LCA3OCwgNzMsIDg0LCA3MywgODYsIDY5LCAxMjgsIDcxLCAKKyAgICA2OSwgNzgsIDczLCA3NSwgMjAxLCA3MSwgNjksIDc4LCA2OSwgODIsIDczLCAxOTUsIDcxLCA2OSwgNzcsIDczLCA3OCwgNzMsIAorICAgIDEyOCwgNzEsIDY5LCA3NywgNzMsIDc4LCA2NSwgODQsIDczLCA3OSwgMjA2LCA3MSwgNjksIDIwNSwgNzEsIDY5LCA2OCwgCisgICAgNzksIDc2LCA2NSwgMTI4LCA3MSwgNjksIDY4LCA2OSwgMTI4LCA3MSwgNjksIDY2LCAyMDcsIDcxLCA2OSwgNjYsIDE5MywgCisgICAgNzEsIDY5LCA2NSwgODIsIDEyOCwgNzEsIDY5LCA2NSwgMjEwLCA3MSwgNjgsIDY1LCA3OCwgMTI4LCA3MSwgNjcsIDczLCAKKyAgICA3MSwgMTI4LCA3MSwgNjcsIDY1LCAyMDYsIDcxLCA2NiwgNzksIDc4LCAxMjgsIDcxLCA2NiwgNzMsIDY5LCAxOTcsIDcxLCAKKyAgICA2NiwgNjksIDg1LCA4OCwgMTI4LCA3MSwgNjYsIDY5LCA4NCwgMTI4LCA3MSwgNjYsIDY1LCA4OSwgNzMsIDEyOCwgNzEsIAorICAgIDY2LCA2NSwgNzUsIDg1LCA4MiwgODUsIDc4LCA2OSwgNzgsIDEyOCwgNzEsIDY2LCAxMjgsIDcxLCA2NSwgODksIDY1LCA3OCwgCisgICAgODUsIDc1LCA3MywgODQsIDg0LCA2NSwgMTI4LCA3MSwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA3MSwgNjUsIDg5LCAKKyAgICAxMjgsIDcxLCA2NSwgODUsIDc4LCA4NCwgNzYsIDY5LCA4NCwgMTI4LCA3MSwgNjUsIDg0LCA3MiwgNjksIDgyLCA3MywgNzgsIAorICAgIDcxLCAxMjgsIDcxLCA2NSwgODQsIDcyLCA2OSwgODIsIDczLCA3OCwgMTk5LCA3MSwgNjUsIDg0LCA2OSwgMTI4LCA3MSwgCisgICAgNjUsIDgzLCA3MiwgNjUsIDc4LCAxMjgsIDcxLCA2NSwgODIsIDgzLCA3MiwgODUsIDc4LCA3MywgMTI4LCA3MSwgNjUsIDgyLCAKKyAgICA3OSwgNzgsIDEyOCwgNzEsIDY1LCA4MiwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNzEsIDY1LCA4MiwgNjgsIDY5LCA3OCwgCisgICAgMTI4LCA3MSwgNjUsIDgyLCA1MSwgMTI4LCA3MSwgNjUsIDgwLCA4MCwgNjksIDE5NiwgNzEsIDY1LCAyMDgsIDcxLCA2NSwgCisgICAgNzgsIDc3LCA2NSwgMTI4LCA3MSwgNjUsIDc4LCA3MSwgNzMsIDY1LCAxMjgsIDcxLCA2NSwgNzgsIDY4LCAxOTMsIDcxLCAKKyAgICA2NSwgNzgsIDUwLCAxMjgsIDcxLCA2NSwgNzgsIDE3OCwgNzEsIDY1LCA3NywgNzcsIDY1LCAxMjgsIDcxLCA2NSwgNzcsIAorICAgIDc2LCA2NSwgMTI4LCA3MSwgNjUsIDc3LCA3NiwgMTI4LCA3MSwgNjUsIDc3LCA2OSwgMTI4LCA3MSwgNjUsIDc3LCAxOTcsIAorICAgIDcxLCA2NSwgNzcsIDY1LCA3OCwgMTI4LCA3MSwgNjUsIDc3LCA2NSwgNzYsIDEyOCwgNzEsIDY1LCA3NywgNjUsIDIwNCwgCisgICAgNzEsIDY1LCA3MSwgMTI4LCA3MSwgNjUsIDcwLCAxMjgsIDcxLCA2NSwgMTk4LCA3MSwgNjUsIDY5LCA4NCwgODQsIDY1LCAKKyAgICA0NSwgODAsIDczLCA3NiwgNzYsIDY1LCAxMjgsIDcxLCA2NSwgNjgsIDc5LCA3NiwgMTI4LCA3MSwgNjUsIDY4LCAxMjgsIAorICAgIDcxLCA2NSwgMTk2LCA3MSwgNjUsIDY2LCA2NSwgMTI4LCA3MSwgNjUsIDY2LCAxOTMsIDcxLCA2NSwgNjUsIDcwLCA4NSwgCisgICAgMTI4LCA3MSwgNjUsIDE3OCwgNzEsIDQ4LCA1MywgNTIsIDEyOCwgNzEsIDQ4LCA1MywgNTEsIDEyOCwgNzEsIDQ4LCA1MywgCisgICAgNTAsIDEyOCwgNzEsIDQ4LCA1MywgNDksIDEyOCwgNzEsIDQ4LCA1MywgNDgsIDEyOCwgNzEsIDQ4LCA1MiwgNTcsIDEyOCwgCisgICAgNzEsIDQ4LCA1MiwgNTYsIDEyOCwgNzEsIDQ4LCA1MiwgNTUsIDEyOCwgNzEsIDQ4LCA1MiwgNTQsIDEyOCwgNzEsIDQ4LCAKKyAgICA1MiwgNTMsIDY1LCAxMjgsIDcxLCA0OCwgNTIsIDUzLCAxMjgsIDcxLCA0OCwgNTIsIDUyLCAxMjgsIDcxLCA0OCwgNTIsIAorICAgIDUxLCA2NSwgMTI4LCA3MSwgNDgsIDUyLCA1MSwgMTI4LCA3MSwgNDgsIDUyLCA1MCwgMTI4LCA3MSwgNDgsIDUyLCA0OSwgCisgICAgMTI4LCA3MSwgNDgsIDUyLCA0OCwgMTI4LCA3MSwgNDgsIDUxLCA1NywgMTI4LCA3MSwgNDgsIDUxLCA1NiwgMTI4LCA3MSwgCisgICAgNDgsIDUxLCA1NSwgNjUsIDEyOCwgNzEsIDQ4LCA1MSwgNTUsIDEyOCwgNzEsIDQ4LCA1MSwgNTQsIDY1LCAxMjgsIDcxLCAKKyAgICA0OCwgNTEsIDU0LCAxMjgsIDcxLCA0OCwgNTEsIDUzLCAxMjgsIDcxLCA0OCwgNTEsIDUyLCAxMjgsIDcxLCA0OCwgNTEsIAorICAgIDUxLCAxMjgsIDcxLCA0OCwgNTEsIDUwLCAxMjgsIDcxLCA0OCwgNTEsIDQ5LCAxMjgsIDcxLCA0OCwgNTEsIDQ4LCAxMjgsIAorICAgIDcxLCA0OCwgNTAsIDU3LCAxMjgsIDcxLCA0OCwgNTAsIDU2LCAxMjgsIDcxLCA0OCwgNTAsIDU1LCAxMjgsIDcxLCA0OCwgCisgICAgNTAsIDU0LCA2NSwgMTI4LCA3MSwgNDgsIDUwLCA1NCwgMTI4LCA3MSwgNDgsIDUwLCA1MywgMTI4LCA3MSwgNDgsIDUwLCAKKyAgICA1MiwgMTI4LCA3MSwgNDgsIDUwLCA1MSwgMTI4LCA3MSwgNDgsIDUwLCA1MCwgMTI4LCA3MSwgNDgsIDUwLCA0OSwgMTI4LCAKKyAgICA3MSwgNDgsIDUwLCA0OCwgNjUsIDEyOCwgNzEsIDQ4LCA1MCwgNDgsIDEyOCwgNzEsIDQ4LCA0OSwgNTcsIDEyOCwgNzEsIAorICAgIDQ4LCA0OSwgNTYsIDEyOCwgNzEsIDQ4LCA0OSwgNTUsIDEyOCwgNzEsIDQ4LCA0OSwgNTQsIDEyOCwgNzEsIDQ4LCA0OSwgCisgICAgNTMsIDEyOCwgNzEsIDQ4LCA0OSwgNTIsIDEyOCwgNzEsIDQ4LCA0OSwgNTEsIDEyOCwgNzEsIDQ4LCA0OSwgNTAsIDEyOCwgCisgICAgNzEsIDQ4LCA0OSwgNDksIDY1LCAxMjgsIDcxLCA0OCwgNDksIDQ5LCAxMjgsIDcxLCA0OCwgNDksIDQ4LCAxMjgsIDcxLCAKKyAgICA0OCwgNDgsIDU3LCAxMjgsIDcxLCA0OCwgNDgsIDU2LCAxMjgsIDcxLCA0OCwgNDgsIDU1LCA2NiwgMTI4LCA3MSwgNDgsIAorICAgIDQ4LCA1NSwgNjUsIDEyOCwgNzEsIDQ4LCA0OCwgNTUsIDEyOCwgNzEsIDQ4LCA0OCwgNTQsIDY1LCAxMjgsIDcxLCA0OCwgCisgICAgNDgsIDU0LCAxMjgsIDcxLCA0OCwgNDgsIDUzLCAxMjgsIDcxLCA0OCwgNDgsIDUyLCAxMjgsIDcxLCA0OCwgNDgsIDUxLCAKKyAgICAxMjgsIDcxLCA0OCwgNDgsIDUwLCAxMjgsIDcxLCA0OCwgNDgsIDQ5LCAxMjgsIDcwLCA4OSwgODgsIDEyOCwgNzAsIDg5LCAKKyAgICA4NCwgMTI4LCA3MCwgODksIDgwLCAxMjgsIDcwLCA4OSwgNjUsIDEyOCwgNzAsIDg3LCA3MywgMTI4LCA3MCwgODcsIDY5LCAKKyAgICA2OSwgMTI4LCA3MCwgODcsIDY5LCAxMjgsIDcwLCA4NywgNjUsIDY1LCAxMjgsIDcwLCA4NywgNjUsIDEyOCwgNzAsIDg1LCAKKyAgICA4OCwgMTI4LCA3MCwgODUsIDg0LCAxMjgsIDcwLCA4NSwgODMsIDY5LCAxMjgsIDcwLCA4NSwgODMsIDE5MywgNzAsIDg1LCAKKyAgICA4MiwgODgsIDEyOCwgNzAsIDg1LCA4MCwgMTI4LCA3MCwgODUsIDc4LCA2OSwgODIsIDY1LCAyMDQsIDcwLCA4NSwgNzgsIAorICAgIDY3LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA3MCwgODUsIDc2LCA3NiwgNzgsIDY5LCA4MywgODMsIDEyOCwgNzAsIDg1LCA3NiwgCisgICAgMjA0LCA3MCwgODUsIDc0LCA3MywgMTI4LCA3MCwgODUsIDY5LCA4NCwgMTI4LCA3MCwgODUsIDY5LCAyMDQsIDcwLCA4NSwgCisgICAgNjksIDEyOCwgNzAsIDg0LCA3MiwgNzksIDgyLCAxOTMsIDcwLCA4MiwgNzksIDg3LCA3OCwgNzMsIDc4LCA3MSwgMTI4LCAKKyAgICA3MCwgODIsIDc5LCA4NywgNzgsIDczLCA3OCwgMTk5LCA3MCwgODIsIDc5LCA4NywgNzgsIDEyOCwgNzAsIDgyLCA3OSwgNzgsIAorICAgIDg0LCA0NSwgODQsIDczLCA3NiwgODQsIDY5LCAxOTYsIDcwLCA4MiwgNzksIDc4LCA4NCwgNDUsIDcwLCA2NSwgNjcsIDczLCAKKyAgICA3OCwgMTk5LCA3MCwgODIsIDc5LCAyMDUsIDcwLCA4MiwgNzksIDcxLCAxMjgsIDcwLCA4MiwgNzksIDE5OSwgNzAsIDgyLCAKKyAgICA3MywgODQsIDg1LCAxMjgsIDcwLCA4MiwgNzMsIDY5LCA4MywgMTI4LCA3MCwgODIsIDczLCA2OSwgMTk2LCA3MCwgODIsIAorICAgIDczLCA2NywgNjUsIDg0LCA3MywgODYsIDY5LCAxMjgsIDcwLCA4MiwgNjksIDg0LCA2NiwgNzksIDY1LCA4MiwgNjgsIDEyOCwgCisgICAgNzAsIDgyLCA2OSwgNzgsIDY3LCAyMDAsIDcwLCA4MiwgNjksIDY5LCAxMjgsIDcwLCA4MiwgNjksIDE5NywgNzAsIDgyLCAKKyAgICA2NSwgNzgsIDE5NSwgNzAsIDgyLCA2NSwgNzcsIDY5LCAxMjgsIDcwLCA4MiwgNjUsIDcxLCA4MiwgNjUsIDc4LCA4NCwgCisgICAgMTI4LCA3MCwgODIsIDY1LCA3MSwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNzAsIDgyLCA2NSwgNjcsIDg0LCA3MywgNzksIAorICAgIDIwNiwgNzAsIDc5LCA4OCwgMTI4LCA3MCwgNzksIDg1LCA4MiwgODQsIDY5LCA2OSwgNzgsIDEyOCwgNzAsIDc5LCA4NSwgCisgICAgODIsIDg0LCA2OSwgNjksIDIwNiwgNzAsIDc5LCA4NSwgODIsIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDcwLCAKKyAgICA3OSwgODUsIDgyLCA0NSwgODMsIDg0LCA4MiwgNzMsIDc4LCAxOTksIDcwLCA3OSwgODUsIDgyLCA0NSwgODAsIDY5LCA4MiwgCisgICAgNDUsIDY5LCAyMDUsIDcwLCA3OSwgODUsIDgyLCA0NSwgNzYsIDczLCA3OCwgMTk3LCA3MCwgNzksIDg1LCAyMTAsIDcwLCAKKyAgICA3OSwgODUsIDc4LCA4NCwgNjUsIDczLCA3OCwgMTI4LCA3MCwgNzksIDgzLCA4NCwgNjksIDgyLCA3MywgNzgsIDcxLCAxMjgsIAorICAgIDcwLCA3OSwgODIsIDg0LCA4OSwgMTI4LCA3MCwgNzksIDgyLCA4NCwgMjE3LCA3MCwgNzksIDgyLCA4NCwgNjksIDEyOCwgCisgICAgNzAsIDc5LCA4MiwgNzcsIDIxMSwgNzAsIDc5LCA4MiwgNzcsIDY1LCA4NCwgODQsIDczLCA3OCwgNzEsIDEyOCwgNzAsIDc5LCAKKyAgICA4MiwgNzUsIDY5LCAxOTYsIDcwLCA3OSwgODIsIDY3LCA2OSwgODMsIDEyOCwgNzAsIDc5LCA4MiwgNjcsIDY5LCAxMjgsIAorICAgIDcwLCA3OSwgODAsIDEyOCwgNzAsIDc5LCA3OSwgODQsIDgzLCA4NCwgNzksIDc5LCA3NiwgMTI4LCA3MCwgNzksIDc5LCA4NCwgCisgICAgODAsIDgyLCA3MywgNzgsIDg0LCA4MywgMTI4LCA3MCwgNzksIDc5LCA4NCwgNzgsIDc5LCA4NCwgMTk3LCA3MCwgNzksIDc5LCAKKyAgICA4NCwgNjYsIDY1LCA3NiwgNzYsIDEyOCwgNzAsIDc5LCA3OSwgODQsIDEyOCwgNzAsIDc5LCA3OSwgNjgsIDEyOCwgNzAsIAorICAgIDc5LCA3OSwgMTI4LCA3MCwgNzksIDc4LCA3MSwgNzcsIDY1LCA3OCwgMTI4LCA3MCwgNzksIDc3LCAxMjgsIDcwLCA3OSwgCisgICAgNzYsIDc2LCA4OSwgMTI4LCA3MCwgNzksIDc2LCA3NiwgNzksIDg3LCA3MywgNzgsIDcxLCAxMjgsIDcwLCA3OSwgNzYsIDY4LCAKKyAgICA2OSwgODIsIDEyOCwgNzAsIDc5LCA3NiwgNjgsIDY5LCAxOTYsIDcwLCA3OSwgNzEsIDcxLCA4OSwgMTI4LCA3MCwgNzcsIAorICAgIDEyOCwgNzAsIDc2LCA4OSwgMTI4LCA3MCwgNzYsIDg1LCA4NCwgODQsIDY5LCA4MiwgNzMsIDc4LCAxOTksIDcwLCA3NiwgCisgICAgODUsIDg0LCA2OSwgMTI4LCA3MCwgNzYsIDg1LCA4MywgNzIsIDY5LCAxOTYsIDcwLCA3NiwgNzksIDg3LCA3MywgNzgsIAorICAgIDE5OSwgNzAsIDc2LCA3OSwgODcsIDY5LCAyMTAsIDcwLCA3NiwgNzksIDg1LCA4MiwgNzMsIDgzLCA3MiwgMTI4LCA3MCwgCisgICAgNzYsIDc5LCA4MiwgNjksIDg0LCA4NCwgNjksIDEyOCwgNzAsIDc2LCA3OSwgODIsIDY1LCAyMDQsIDcwLCA3NiwgNzksIDgwLCAKKyAgICA4MCwgMjE3LCA3MCwgNzYsIDc5LCA3OSwgODIsIDEyOCwgNzAsIDc2LCA3MywgODAsIDEyOCwgNzAsIDc2LCA3MywgNzEsIAorICAgIDcyLCA4NCwgMTI4LCA3MCwgNzYsIDY5LCA4OCwgODUsIDgzLCAxMjgsIDcwLCA3NiwgNjksIDg4LCA2OSwgMTk2LCA3MCwgCisgICAgNzYsIDY5LCA4NSwgODIsIDQ1LCA2OCwgNjksIDQ1LCA3NiwgNzMsIDgzLCAxMjgsIDcwLCA3NiwgNjUsIDg0LCA4NCwgNjksIAorICAgIDc4LCA2OSwgMTk2LCA3MCwgNzYsIDY1LCA4NCwgNzgsIDY5LCA4MywgODMsIDEyOCwgNzAsIDc2LCA2NSwgODQsIDEyOCwgCisgICAgNzAsIDc2LCA2NSwgMjEyLCA3MCwgNzYsIDY1LCA3MSwgODMsIDEyOCwgNzAsIDc2LCA2NSwgNzEsIDQ1LCA1MywgMTI4LCAKKyAgICA3MCwgNzYsIDY1LCA3MSwgNDUsIDUyLCAxMjgsIDcwLCA3NiwgNjUsIDcxLCA0NSwgNTEsIDEyOCwgNzAsIDc2LCA2NSwgNzEsIAorICAgIDQ1LCA1MCwgMTI4LCA3MCwgNzYsIDY1LCA3MSwgNDUsIDQ5LCAxMjgsIDcwLCA3NiwgNjUsIDcxLCAxMjgsIDcwLCA3NiwgCisgICAgNjUsIDE5OSwgNzAsIDc2LCA2NSwgMTI4LCA3MCwgNzYsIDEyOCwgNzAsIDczLCA4OCwgNjksIDY4LCA0NSwgNzAsIDc5LCAKKyAgICA4MiwgMjA1LCA3MCwgNzMsIDg4LCAxMjgsIDcwLCA3MywgODYsIDY5LCA0NSwgODQsIDcyLCA3MywgODIsIDg0LCA4OSwgCisgICAgMTI4LCA3MCwgNzMsIDg2LCA2OSwgNDUsIDc2LCA3MywgNzgsIDE5NywgNzAsIDczLCA4NiwgMTk3LCA3MCwgNzMsIDg0LCAKKyAgICA2NSwgMTI4LCA3MCwgNzMsIDg0LCAxMjgsIDcwLCA3MywgODMsIDg0LCA2OSwgMTk2LCA3MCwgNzMsIDgzLCA4NCwgMTI4LCAKKyAgICA3MCwgNzMsIDgzLCA3MiwgNzMsIDc4LCAxOTksIDcwLCA3MywgODMsIDcyLCA3MiwgNzksIDc5LCA3NSwgMTI4LCA3MCwgNzMsIAorICAgIDgzLCA3MiwgNzIsIDc5LCA3OSwgMjAzLCA3MCwgNzMsIDgzLCA3MiwgNjksIDg5LCA2OSwgMTI4LCA3MCwgNzMsIDgzLCA3MiwgCisgICAgMTI4LCA3MCwgNzMsIDgzLCAyMDAsIDcwLCA3MywgODIsIDgzLCAyMTIsIDcwLCA3MywgODIsIDczLCAxMjgsIDcwLCA3MywgCisgICAgODIsIDY5LCA4NywgNzksIDgyLCA3NSwgODMsIDEyOCwgNzAsIDczLCA4MiwgNjksIDg3LCA3OSwgODIsIDIwMywgNzAsIDczLCAKKyAgICA4MiwgNjksIDEyOCwgNzAsIDczLCA4MiwgMTk3LCA3MCwgNzMsIDgwLCAxMjgsIDcwLCA3MywgNzgsIDczLCA4NCwgMTk3LCAKKyAgICA3MCwgNzMsIDc4LCA3MSwgNjksIDgyLCA3OCwgNjUsIDczLCA3NiwgODMsIDEyOCwgNzAsIDczLCA3OCwgNzEsIDY5LCA4MiwgCisgICAgNjksIDE5NiwgNzAsIDczLCA3OCwgNjUsIDc4LCA2NywgNzMsIDY1LCA3NiwgMTI4LCA3MCwgNzMsIDc2LCA3NiwgNjksIDgyLCAKKyAgICAxMjgsIDcwLCA3MywgNzYsIDc2LCA2OSwgMTk2LCA3MCwgNzMsIDc2LCA3NiwgMTI4LCA3MCwgNzMsIDc2LCAyMDQsIDcwLCAKKyAgICA3MywgNzYsIDE5NywgNzAsIDczLCA3MywgMTI4LCA3MCwgNzMsIDcxLCA4NSwgODIsIDY5LCA0NSwgNTEsIDEyOCwgNzAsIAorICAgIDczLCA3MSwgODUsIDgyLCA2OSwgNDUsIDUwLCAxMjgsIDcwLCA3MywgNzEsIDg1LCA4MiwgNjksIDQ1LCA0OSwgMTI4LCA3MCwgCisgICAgNzMsIDcxLCA4NSwgODIsIDE5NywgNzAsIDczLCA3MSwgNzIsIDg0LCAxMjgsIDcwLCA3MywgNzAsIDg0LCA4OSwgMTI4LCAKKyAgICA3MCwgNzMsIDcwLCA4NCwgMjE3LCA3MCwgNzMsIDcwLCA4NCwgNzIsIDgzLCAxMjgsIDcwLCA3MywgNzAsIDg0LCA3MiwgCisgICAgMTI4LCA3MCwgNzMsIDcwLCA4NCwgNjksIDY5LCA3OCwgMTI4LCA3MCwgNzMsIDcwLCA4NCwgNjksIDY5LCAyMDYsIDcwLCAKKyAgICA3MywgNjksIDc2LCA2OCwgMTI4LCA3MCwgNzIsIDg0LCA3OSwgODIsIDE5MywgNzAsIDcwLCA3NiwgMTI4LCA3MCwgNzAsIAorICAgIDczLCAxMjgsIDcwLCA2OSwgODUsIDg4LCAxMjgsIDcwLCA2OSwgODUsIDcwLCA2OSwgODUsIDY1LCA2OSwgODQsIDEyOCwgCisgICAgNzAsIDY5LCA4MywgODQsIDczLCA4NiwgNjUsIDc2LCAxMjgsIDcwLCA2OSwgODIsIDgyLCA4OSwgMTI4LCA3MCwgNjksIDgyLCAKKyAgICA4MiwgNzMsIDIxMSwgNzAsIDY5LCA4MiwgNzcsIDY1LCA4NCwgNjUsIDEyOCwgNzAsIDY5LCA4MiwgNzcsIDY1LCA4NCwgCisgICAgMTkzLCA3MCwgNjksIDc5LCAyMDAsIDcwLCA2OSwgNzgsIDE5OSwgNzAsIDY5LCA3OCwgNjcsIDY5LCAxMjgsIDcwLCA2OSwgCisgICAgNzcsIDczLCA3OCwgNzMsIDc4LCAxOTcsIDcwLCA2OSwgNzcsIDY1LCA3NiwgNjksIDEyOCwgNzAsIDY5LCA3NywgNjUsIDc2LCAKKyAgICAxOTcsIDcwLCA2OSwgNzYsIDc2LCA3OSwgODcsIDgzLCA3MiwgNzMsIDgwLCAxMjgsIDcwLCA2OSwgNzMsIDEyOCwgNzAsIAorICAgIDY5LCA3MiwgMjEzLCA3MCwgNjksIDcyLCAxMjgsIDcwLCA2OSwgMjAwLCA3MCwgNjksIDY5LCA3OCwgNzEsIDEyOCwgNzAsIAorICAgIDY5LCA2OSwgNjgsIDEyOCwgNzAsIDY5LCA2OSwgMTk2LCA3MCwgNjksIDY5LCAxMjgsIDcwLCA2OSwgNjYsIDgyLCA4NSwgCisgICAgNjUsIDgyLCA4OSwgMTI4LCA3MCwgNjksIDY1LCA4NCwgNzIsIDY5LCA4MiwgMTI4LCA3MCwgNjksIDY1LCA4NCwgNzIsIDY5LCAKKyAgICAyMTAsIDcwLCA2OSwgNjUsIDgyLCA3OCwgMTI4LCA3MCwgNjksIDY1LCA4MiwgNzAsIDg1LCAyMDQsIDcwLCA2OSwgNjUsIAorICAgIDgyLCAxMjgsIDcwLCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDcwLCA2NSwgODksIDEyOCwgNzAsIDY1LCA4OCwgCisgICAgMTI4LCA3MCwgNjUsIDIxNiwgNzAsIDY1LCA4NCwgNzMsIDcxLCA4NSwgNjksIDEyOCwgNzAsIDY1LCA4NCwgNzIsIDY5LCAKKyAgICA4MiwgMTI4LCA3MCwgNjUsIDg0LCA3MiwgNjksIDIxMCwgNzAsIDY1LCA4NCwgNzIsIDY1LCA4NCwgNjUsIDc4LCAxMjgsIAorICAgIDcwLCA2NSwgODQsIDcyLCA2NSwgODQsIDY1LCAyMDYsIDcwLCA2NSwgODQsIDcyLCA2NSwgMTI4LCA3MCwgNjUsIDg0LCA3MiwgCisgICAgMTkzLCA3MCwgNjUsIDg0LCAxMjgsIDcwLCA2NSwgODIsIDgzLCAyMDEsIDcwLCA2NSwgODEsIDEyOCwgNzAsIDY1LCA4MCwgCisgICAgMTI4LCA3MCwgNjUsIDc4LCA3MSwgMTI4LCA3MCwgNjUsIDc4LCA2OSwgODIsIDc5LCA4MywgNzMsIDIxMSwgNzAsIDY1LCAKKyAgICA3OCwgMTI4LCA3MCwgNjUsIDc3LCA3MywgNzYsIDg5LCAxMjgsIDcwLCA2NSwgNzYsIDc2LCA3MywgNzgsIDE5OSwgNzAsIAorICAgIDY1LCA3NiwgNzYsIDY5LCAyMDYsIDcwLCA2NSwgNzMsIDc2LCA4NSwgODIsIDY5LCAxMjgsIDcwLCA2NSwgNzMsIDcyLCA4NSwgCisgICAgMTI4LCA3MCwgNjUsIDcyLCA4MiwgNjksIDc4LCA3MiwgNjksIDczLCA4NCwgMTI4LCA3MCwgNjUsIDY3LCA4NCwgNzksIDgyLCAKKyAgICA4OSwgMTI4LCA3MCwgNjUsIDY3LCA4NCwgNzksIDIxMCwgNzAsIDY1LCA2NywgODMsIDczLCA3NywgNzMsIDc2LCAxOTcsIAorICAgIDcwLCA2NSwgNjcsIDY5LCA0NSwgNTQsIDEyOCwgNzAsIDY1LCA2NywgNjksIDQ1LCA1MywgMTI4LCA3MCwgNjUsIDY3LCA2OSwgCisgICAgNDUsIDUyLCAxMjgsIDcwLCA2NSwgNjcsIDY5LCA0NSwgNTEsIDEyOCwgNzAsIDY1LCA2NywgNjksIDQ1LCA1MCwgMTI4LCAKKyAgICA3MCwgNjUsIDY3LCA2OSwgNDUsIDQ5LCAxMjgsIDcwLCA2NSwgNjUsIDc3LCA2NSwgNjksIDEyOCwgNzAsIDY1LCA2NSwgNzMsIAorICAgIDEyOCwgNzAsIDY1LCA2NSwgNzAsIDg1LCAxMjgsIDcwLCA0OCwgNTMsIDUxLCAxMjgsIDcwLCA0OCwgNTMsIDUwLCAxMjgsIAorICAgIDcwLCA0OCwgNTMsIDQ5LCA2NywgMTI4LCA3MCwgNDgsIDUzLCA0OSwgNjYsIDEyOCwgNzAsIDQ4LCA1MywgNDksIDY1LCAKKyAgICAxMjgsIDcwLCA0OCwgNTMsIDQ5LCAxMjgsIDcwLCA0OCwgNTMsIDQ4LCAxMjgsIDcwLCA0OCwgNTIsIDU3LCAxMjgsIDcwLCAKKyAgICA0OCwgNTIsIDU2LCAxMjgsIDcwLCA0OCwgNTIsIDU1LCA2NSwgMTI4LCA3MCwgNDgsIDUyLCA1NSwgMTI4LCA3MCwgNDgsIAorICAgIDUyLCA1NCwgNjUsIDEyOCwgNzAsIDQ4LCA1MiwgNTQsIDEyOCwgNzAsIDQ4LCA1MiwgNTMsIDY1LCAxMjgsIDcwLCA0OCwgCisgICAgNTIsIDUzLCAxMjgsIDcwLCA0OCwgNTIsIDUyLCAxMjgsIDcwLCA0OCwgNTIsIDUxLCAxMjgsIDcwLCA0OCwgNTIsIDUwLCAKKyAgICAxMjgsIDcwLCA0OCwgNTIsIDQ5LCAxMjgsIDcwLCA0OCwgNTIsIDQ4LCAxMjgsIDcwLCA0OCwgNTEsIDU3LCAxMjgsIDcwLCAKKyAgICA0OCwgNTEsIDU2LCA2NSwgMTI4LCA3MCwgNDgsIDUxLCA1NiwgMTI4LCA3MCwgNDgsIDUxLCA1NSwgNjUsIDEyOCwgNzAsIAorICAgIDQ4LCA1MSwgNTUsIDEyOCwgNzAsIDQ4LCA1MSwgNTQsIDEyOCwgNzAsIDQ4LCA1MSwgNTMsIDEyOCwgNzAsIDQ4LCA1MSwgCisgICAgNTIsIDEyOCwgNzAsIDQ4LCA1MSwgNTEsIDEyOCwgNzAsIDQ4LCA1MSwgNTAsIDEyOCwgNzAsIDQ4LCA1MSwgNDksIDY1LCAKKyAgICAxMjgsIDcwLCA0OCwgNTEsIDQ5LCAxMjgsIDcwLCA0OCwgNTEsIDQ4LCAxMjgsIDcwLCA0OCwgNTAsIDU3LCAxMjgsIDcwLCAKKyAgICA0OCwgNTAsIDU2LCAxMjgsIDcwLCA0OCwgNTAsIDU1LCAxMjgsIDcwLCA0OCwgNTAsIDU0LCAxMjgsIDcwLCA0OCwgNTAsIAorICAgIDUzLCAxMjgsIDcwLCA0OCwgNTAsIDUyLCAxMjgsIDcwLCA0OCwgNTAsIDUxLCAxMjgsIDcwLCA0OCwgNTAsIDUwLCAxMjgsIAorICAgIDcwLCA0OCwgNTAsIDQ5LCA2NSwgMTI4LCA3MCwgNDgsIDUwLCA0OSwgMTI4LCA3MCwgNDgsIDUwLCA0OCwgMTI4LCA3MCwgCisgICAgNDgsIDQ5LCA1NywgMTI4LCA3MCwgNDgsIDQ5LCA1NiwgMTI4LCA3MCwgNDgsIDQ5LCA1NSwgMTI4LCA3MCwgNDgsIDQ5LCAKKyAgICA1NCwgMTI4LCA3MCwgNDgsIDQ5LCA1MywgMTI4LCA3MCwgNDgsIDQ5LCA1MiwgMTI4LCA3MCwgNDgsIDQ5LCA1MSwgNjUsIAorICAgIDEyOCwgNzAsIDQ4LCA0OSwgNTEsIDEyOCwgNzAsIDQ4LCA0OSwgNTAsIDEyOCwgNzAsIDQ4LCA0OSwgNDksIDEyOCwgNzAsIAorICAgIDQ4LCA0OSwgNDgsIDEyOCwgNzAsIDQ4LCA0OCwgNTcsIDEyOCwgNzAsIDQ4LCA0OCwgNTYsIDEyOCwgNzAsIDQ4LCA0OCwgCisgICAgNTUsIDEyOCwgNzAsIDQ4LCA0OCwgNTQsIDEyOCwgNzAsIDQ4LCA0OCwgNTMsIDEyOCwgNzAsIDQ4LCA0OCwgNTIsIDEyOCwgCisgICAgNzAsIDQ4LCA0OCwgNTEsIDEyOCwgNzAsIDQ4LCA0OCwgNTAsIDEyOCwgNzAsIDQ4LCA0OCwgNDksIDY1LCAxMjgsIDcwLCAKKyAgICA0OCwgNDgsIDQ5LCAxMjgsIDY5LCA5MCwgMjAwLCA2OSwgOTAsIDY5LCA3OCwgMTI4LCA2OSwgOTAsIDY5LCAyMDYsIDY5LCAKKyAgICA5MCwgMTI4LCA2OSwgODksIDY5LCA4MywgMTI4LCA2OSwgODksIDY5LCA3MSwgNzYsIDY1LCA4MywgODMsIDY5LCA4MywgCisgICAgMTI4LCA2OSwgODksIDY2LCA2OSwgODksIDcwLCA3MywgNzYsIDczLCAxMjgsIDY5LCA4OSwgNjUsIDc4LCA3OCwgNjUsIAorICAgIDEyOCwgNjksIDg4LCA4NCwgODIsIDY1LCA4NCwgNjksIDgyLCA4MiwgNjksIDgzLCA4NCwgODIsIDczLCA2NSwgMjA0LCA2OSwgCisgICAgODgsIDg0LCA4MiwgNjUsIDQ1LCA3NiwgNzksIDIxNSwgNjksIDg4LCA4NCwgODIsIDY1LCA0NSwgNzIsIDczLCA3MSwgMjAwLCAKKyAgICA2OSwgODgsIDg0LCA2OSwgNzgsIDgzLCA3MywgNzksIDc4LCAxMjgsIDY5LCA4OCwgODQsIDY5LCA3OCwgNjgsIDY5LCAxOTYsIAorICAgIDY5LCA4OCwgODAsIDc5LCA3OCwgNjksIDc4LCAyMTIsIDY5LCA4OCwgNzksIDEyOCwgNjksIDg4LCAyMDcsIDY5LCA4OCwgCisgICAgNzMsIDgzLCA4NCwgODMsIDEyOCwgNjksIDg4LCA3MywgODMsIDg0LCAxMjgsIDY5LCA4OCwgNzIsIDY1LCA4NSwgODMsIDg0LCAKKyAgICA3MywgNzksIDc4LCAxMjgsIDY5LCA4OCwgNjcsIDc2LCA2NSwgNzcsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2OSwgODgsIAorICAgIDY3LCA3NiwgNjUsIDc3LCA2NSwgODQsIDczLCA3OSwgMjA2LCA2OSwgODgsIDY3LCA3MiwgNjUsIDc4LCA3MSwgNjksIDEyOCwgCisgICAgNjksIDg4LCA2NywgNjksIDgzLCA4MywgMTI4LCA2OSwgODgsIDY3LCA2OSwgNzYsIDc2LCA2OSwgNzgsIDg0LCAxMjgsIDY5LCAKKyAgICA4NywgNjksIDEyOCwgNjksIDg2LCA2OSwgODIsIDcxLCA4MiwgNjksIDY5LCAyMDYsIDY5LCA4NiwgNjksIDc4LCA3MywgNzgsIAorICAgIDcxLCAxMjgsIDY5LCA4NSwgODIsIDc5LCA4MCwgNjksIDY1LCAyMDYsIDY5LCA4NSwgODIsIDc5LCA4MCwgNjksIDQ1LCA2NSwgCisgICAgNzAsIDgyLCA3MywgNjcsIDY1LCAxMjgsIDY5LCA4NSwgODIsIDc5LCA0NSwgNjcsIDg1LCA4MiwgODIsIDY5LCA3OCwgNjcsIAorICAgIDIxNywgNjksIDg1LCA4MiwgMjA3LCA2OSwgODUsIDc2LCA2OSwgMjEwLCA2OSwgODUsIDQ1LCA4NSwgMTI4LCA2OSwgODUsIAorICAgIDQ1LCA3OSwgMTI4LCA2OSwgODUsIDQ1LCA2OSwgODUsIDEyOCwgNjksIDg1LCA0NSwgNjksIDc5LCAxMjgsIDY5LCA4NSwgCisgICAgNDUsIDY5LCAxMjgsIDY5LCA4NSwgNDUsIDY1LCAxMjgsIDY5LCA4NCwgNzgsIDY1LCA3MiwgODQsIDY1LCAxMjgsIDY5LCAKKyAgICA4NCwgNzIsIDY5LCAyMDQsIDY5LCA4NCwgNjksIDgyLCA3OSwgMjA2LCA2OSwgODQsIDY5LCA4MiwgNzgsIDczLCA4NCwgODksIAorICAgIDEyOCwgNjksIDgzLCA4NSwgNzUsIDg1LCA4NSwgNjgsIDc5LCAxMjgsIDY5LCA4MywgODQsIDczLCA3NywgNjUsIDg0LCA2OSwgCisgICAgODMsIDEyOCwgNjksIDgzLCA4NCwgNzMsIDc3LCA2NSwgODQsIDY5LCAxOTYsIDY5LCA4MywgNzIsIDY5LCA1MSwgMTI4LCAKKyAgICA2OSwgODMsIDcyLCA1MCwgNDksIDEyOCwgNjksIDgzLCA3MiwgMTc4LCA2OSwgODMsIDcyLCA0OSwgNTQsIDEyOCwgNjksIAorICAgIDgzLCA2NywgNjUsIDgwLCA2OSwgMTI4LCA2OSwgODMsIDQ1LCA4NCwgNjksIDEyOCwgNjksIDgyLCA4MiwgNzksIDgyLCA0NSwgCisgICAgNjYsIDY1LCA4MiwgODIsIDY5LCAxOTYsIDY5LCA4MiwgODIsIDEyOCwgNjksIDgyLCA3MywgNzgsIDUwLCAxMjgsIDY5LCAKKyAgICA4MiwgNzEsIDEyOCwgNjksIDgyLCA2NSwgODMsIDE5NywgNjksIDgxLCA4NSwgNzMsIDg2LCA2NSwgNzYsIDY5LCA3OCwgCisgICAgMjEyLCA2OSwgODEsIDg1LCA3MywgNjgsIDEyOCwgNjksIDgxLCA4NSwgNzMsIDY1LCA3OCwgNzEsIDg1LCA3NiwgNjUsIAorICAgIDIxMCwgNjksIDgxLCA4NSwgNjUsIDc2LCA4MywgMTI4LCA2OSwgODEsIDg1LCA2NSwgNzYsIDIxMSwgNjksIDgxLCA4NSwgCisgICAgNjUsIDc2LCAxMjgsIDY5LCA4MCwgODMsIDczLCA3NiwgNzksIDc4LCAxMjgsIDY5LCA4MCwgODMsIDczLCA3NiwgNzksIAorICAgIDIwNiwgNjksIDgwLCA3OSwgNjcsIDcyLCAxMjgsIDY5LCA4MCwgNzMsIDcxLCA4MiwgNjUsIDgwLCA3MiwgNzMsIDE5NSwgCisgICAgNjksIDgwLCA3MywgNjgsIDY1LCA4NSwgODIsIDY5LCA2NSwgMjA2LCA2OSwgODAsIDY5LCA3OCwgODQsIDcyLCA2OSwgODQsIAorICAgIDczLCAxOTUsIDY5LCA4MCwgNjksIDcxLCA2OSwgODIsIDc3LCA2NSwgMTI4LCA2OSwgNzksIDc2LCA3MiwgODgsIDEyOCwgCisgICAgNjksIDc5LCA3MiwgMTI4LCA2OSwgNzgsIDg5LCAxMjgsIDY5LCA3OCwgODYsIDY5LCA3NiwgNzksIDgwLCA2OSwgMTI4LCAKKyAgICA2OSwgNzgsIDg2LCA2OSwgNzYsIDc5LCA4MCwgMTk3LCA2OSwgNzgsIDg1LCA3NywgNjksIDgyLCA2NSwgODQsIDczLCA3OSwgCisgICAgMjA2LCA2OSwgNzgsIDg0LCA4MiwgODksIDQ1LCA1MCwgMTI4LCA2OSwgNzgsIDg0LCA4MiwgODksIDQ1LCA0OSwgMTI4LCAKKyAgICA2OSwgNzgsIDg0LCA4MiwgODksIDEyOCwgNjksIDc4LCA4NCwgODIsIDIxNywgNjksIDc4LCA4NCwgNzIsIDg1LCA4MywgNzMsIAorICAgIDY1LCA4MywgNzcsIDEyOCwgNjksIDc4LCA4NCwgNjksIDgyLCA4MCwgODIsIDczLCA4MywgNjksIDEyOCwgNjksIDc4LCA4NCwgCisgICAgNjksIDgyLCA3MywgNzgsIDE5OSwgNjksIDc4LCA4NCwgNjksIDgyLCAxMjgsIDY5LCA3OCwgODQsIDY5LCAyMTAsIDY5LCAKKyAgICA3OCwgODEsIDg1LCA3MywgODIsIDg5LCAxMjgsIDY5LCA3OCwgNzksIDIxMSwgNjksIDc4LCA3OCwgMTI4LCA2OSwgNzgsIAorICAgIDc2LCA2NSwgODIsIDcxLCA2OSwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNjksIDc4LCA3MSwgNzMsIDc4LCA2OSwgMTI4LCA2OSwgCisgICAgNzgsIDY4LCA3OSwgNzAsIDc5LCA3OCwgNzksIDc4LCAxMjgsIDY5LCA3OCwgNjgsIDczLCA3OCwgMTk5LCA2OSwgNzgsIDY4LCAKKyAgICA2OSwgODAsIDEyOCwgNjksIDc4LCA2OCwgNjksIDY1LCA4NiwgNzksIDg1LCA4MiwgMTI4LCA2OSwgNzgsIDY3LCA3OSwgODUsIAorICAgIDc4LCA4NCwgNjksIDgyLCA4MywgMTI4LCA2OSwgNzgsIDY3LCA3NiwgNzksIDgzLCA4NSwgODIsIDY5LCAxMjgsIDY5LCA3OCwgCisgICAgNjcsIDc2LCA3OSwgODMsIDczLCA3OCwgMTk5LCA2OSwgNzgsIDY3LCAxMjgsIDY5LCA3OCwgNjUsIDgyLCA4OCwgNzMsIAorICAgIDIxMSwgNjksIDc4LCA2NSwgODIsIDc3LCA3OSwgNzgsIDczLCA3OSwgMjExLCA2OSwgNzcsIDgwLCA4NCwgMjE3LCA2OSwgCisgICAgNzcsIDgwLCA3MiwgNjUsIDg0LCA3MywgMTk1LCA2OSwgNzcsIDgwLCA3MiwgNjUsIDgzLCA3MywgMjExLCA2OSwgNzcsIDY2LCAKKyAgICA4MiwgNzksIDczLCA2OCwgNjksIDgyLCA4OSwgMTI4LCA2OSwgNzcsIDY2LCA3NiwgNjksIDc3LCAxMjgsIDY5LCA3NywgNjYsIAorICAgIDY5LCA3NiwgNzYsIDczLCA4MywgNzIsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDY5LCA3NywgNjYsIDY5LCA2OCwgNjgsIDczLCAKKyAgICA3OCwgNzEsIDEyOCwgNjksIDc2LCA4NCwgMTI4LCA2OSwgNzYsIDc2LCA3MywgODAsIDgzLCA3MywgODMsIDEyOCwgNjksIAorICAgIDc2LCA3NiwgNzMsIDgwLCA4MywgNjksIDEyOCwgNjksIDc2LCA3MywgNzAsIDczLCAxMjgsIDY5LCA3NiwgNjksIDg2LCA2OSwgCisgICAgNzgsIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDY5LCA3NiwgNjksIDg2LCA2OSwgNzgsIDEyOCwgNjksIDc2LCAKKyAgICA2OSwgODYsIDY5LCAyMDYsIDY5LCA3NiwgNjksIDgwLCA3MiwgNjUsIDc4LCA4NCwgMTI4LCA2OSwgNzYsIDY5LCA3NywgNjksIAorICAgIDc4LCAyMTIsIDY5LCA3NiwgNjksIDY3LCA4NCwgODIsIDczLCA2NywgNjUsIDIwNCwgNjksIDc2LCA2OSwgNjcsIDg0LCA4MiwgCisgICAgNzMsIDE5NSwgNjksIDc2LCA2NSwgNzAsIDgyLCA3OSwgNzgsIDEyOCwgNjksIDc1LCA4MywgODQsIDgyLCA2OSwgODAsIDg0LCAKKyAgICA3OSwgNzgsIDEyOCwgNjksIDc1LCA4MywgMTI4LCA2OSwgNzUsIDcwLCA3OSwgNzgsIDczLCA4NCwgNzMsIDc1LCA3OSwgNzgsIAorICAgIDEyOCwgNjksIDc1LCA2NSwgODIsIDY1LCAxMjgsIDY5LCA3NCwgNjksIDY3LCAyMTIsIDY5LCA3MywgODMsIDEyOCwgNjksIAorICAgIDczLCA3MSwgNzIsIDg0LCA4OSwgMTI4LCA2OSwgNzMsIDcxLCA3MiwgODQsIDIxNywgNjksIDczLCA3MSwgNzIsIDg0LCA3MiwgCisgICAgODMsIDEyOCwgNjksIDczLCA3MSwgNzIsIDg0LCA3MiwgMjExLCA2OSwgNzMsIDcxLCA3MiwgODQsIDcyLCAxMjgsIDY5LCAKKyAgICA3MywgNzEsIDcyLCA4NCwgNjksIDY5LCA3OCwgMTI4LCA2OSwgNzMsIDcxLCA3MiwgODQsIDY5LCA2OSwgMjA2LCA2OSwgNzMsIAorICAgIDcxLCA3MiwgODQsIDQ1LCA4NCwgNzIsIDczLCA4MiwgODQsIDg5LCAxMjgsIDY5LCA3MywgNjksIDEyOCwgNjksIDcyLCA4NywgCisgICAgNjUsIDIxOCwgNjksIDcxLCA4OSwgODAsIDg0LCA3OSwgNzYsIDc5LCA3MSwgNzMsIDY3LCA2NSwgMjA0LCA2OSwgNzEsIDczLCAKKyAgICA4MiwgMTI4LCA2OSwgNzEsIDcxLCAxMjgsIDY5LCA2OSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY5LCA2OSwgNzUsIAorICAgIDY1LCA2NSwgMTI4LCA2OSwgNjksIDY2LCA2OSwgNjksIDcwLCA3MywgNzYsIDczLCAxMjgsIDY5LCA2OCwgNzMsIDg0LCA3OSwgCisgICAgODIsIDczLCA2NSwgMjA0LCA2OSwgNjgsIDczLCA3OCwgMTI4LCA2OSwgNjgsIDY4LCAxMjgsIDY5LCA2NiwgNjksIDcwLCAKKyAgICA3MywgNzYsIDczLCAxMjgsIDY5LCA2NSwgODMsIDg0LCA2OSwgODIsIDIwNiwgNjksIDY1LCA4MywgMjEyLCA2OSwgNjUsIAorICAgIDgyLCA4NCwgNzIsIDc2LCAyMTcsIDY5LCA2NSwgODIsIDg0LCA3MiwgMTI4LCA2OSwgNjUsIDgyLCA4NCwgMjAwLCA2OSwgCisgICAgNjUsIDgyLCA4MywgMTI4LCA2OSwgNjUsIDgyLCA3NiwgMjE3LCA2OSwgNjUsIDc3LCA3MiwgNjUsIDc4LCA2NywgNzIsIDc5LCAKKyAgICA3NiwgNzYsIDEyOCwgNjksIDY1LCA3MSwgNzYsIDY5LCAxMjgsIDY5LCA2NSwgNjgsIDcyLCA2NSwgNjgsIDcyLCAxMjgsIAorICAgIDY5LCA2NSwgNjYsIDcyLCA2NSwgNjgsIDcyLCAxMjgsIDY5LCAxNzgsIDY5LCA0OCwgNTEsIDU2LCAxMjgsIDY5LCA0OCwgCisgICAgNTEsIDU1LCAxMjgsIDY5LCA0OCwgNTEsIDU0LCAxMjgsIDY5LCA0OCwgNTEsIDUyLCA2NSwgMTI4LCA2OSwgNDgsIDUxLCAKKyAgICA1MiwgMTI4LCA2OSwgNDgsIDUxLCA1MSwgMTI4LCA2OSwgNDgsIDUxLCA1MCwgMTI4LCA2OSwgNDgsIDUxLCA0OSwgMTI4LCAKKyAgICA2OSwgNDgsIDUxLCA0OCwgMTI4LCA2OSwgNDgsIDUwLCA1NywgMTI4LCA2OSwgNDgsIDUwLCA1NiwgNjUsIDEyOCwgNjksIAorICAgIDQ4LCA1MCwgNTYsIDEyOCwgNjksIDQ4LCA1MCwgNTUsIDEyOCwgNjksIDQ4LCA1MCwgNTQsIDEyOCwgNjksIDQ4LCA1MCwgCisgICAgNTMsIDEyOCwgNjksIDQ4LCA1MCwgNTIsIDEyOCwgNjksIDQ4LCA1MCwgNTEsIDEyOCwgNjksIDQ4LCA1MCwgNTAsIDEyOCwgCisgICAgNjksIDQ4LCA1MCwgNDksIDEyOCwgNjksIDQ4LCA1MCwgNDgsIDY1LCAxMjgsIDY5LCA0OCwgNTAsIDQ4LCAxMjgsIDY5LCAKKyAgICA0OCwgNDksIDU3LCAxMjgsIDY5LCA0OCwgNDksIDU2LCAxMjgsIDY5LCA0OCwgNDksIDU1LCA2NSwgMTI4LCA2OSwgNDgsIAorICAgIDQ5LCA1NSwgMTI4LCA2OSwgNDgsIDQ5LCA1NCwgNjUsIDEyOCwgNjksIDQ4LCA0OSwgNTQsIDEyOCwgNjksIDQ4LCA0OSwgCisgICAgNTMsIDEyOCwgNjksIDQ4LCA0OSwgNTIsIDEyOCwgNjksIDQ4LCA0OSwgNTEsIDEyOCwgNjksIDQ4LCA0OSwgNTAsIDEyOCwgCisgICAgNjksIDQ4LCA0OSwgNDksIDEyOCwgNjksIDQ4LCA0OSwgNDgsIDEyOCwgNjksIDQ4LCA0OCwgNTcsIDY1LCAxMjgsIDY5LCAKKyAgICA0OCwgNDgsIDU3LCAxMjgsIDY5LCA0OCwgNDgsIDU2LCA2NSwgMTI4LCA2OSwgNDgsIDQ4LCA1NiwgMTI4LCA2OSwgNDgsIAorICAgIDQ4LCA1NSwgMTI4LCA2OSwgNDgsIDQ4LCA1NCwgMTI4LCA2OSwgNDgsIDQ4LCA1MywgMTI4LCA2OSwgNDgsIDQ4LCA1MiwgCisgICAgMTI4LCA2OSwgNDgsIDQ4LCA1MSwgMTI4LCA2OSwgNDgsIDQ4LCA1MCwgMTI4LCA2OSwgNDgsIDQ4LCA0OSwgMTI4LCA2OSwgCisgICAgNDUsIDc3LCA2NSwgNzMsIDIwNCwgNjgsIDkwLCA5MCwgNjksIDEyOCwgNjgsIDkwLCA4NywgNjksIDEyOCwgNjgsIDkwLCAKKyAgICA4NSwgMTI4LCA2OCwgOTAsIDc5LCAxMjgsIDY4LCA5MCwgNzQsIDY5LCAxMjgsIDY4LCA5MCwgNzMsIDEyOCwgNjgsIDkwLCAKKyAgICA3MiwgNjksIDEyOCwgNjgsIDkwLCA3MiwgNjUsIDEyOCwgNjgsIDkwLCA2OSwgNzYsIDc5LCAxMjgsIDY4LCA5MCwgNjksIAorICAgIDY5LCAxMjgsIDY4LCA5MCwgNjksIDEyOCwgNjgsIDkwLCA2NSwgNjUsIDEyOCwgNjgsIDkwLCA2NSwgMTI4LCA2OCwgOTAsIAorICAgIDEyOCwgNjgsIDIxOCwgNjgsIDg5LCA3OSwgMTI4LCA2OCwgODksIDIwNywgNjgsIDg5LCA2OSwgNzIsIDEyOCwgNjgsIDg5LCAKKyAgICA2OSwgMjAwLCA2OCwgODcsIDc5LCAxMjgsIDY4LCA4NywgNjksIDEyOCwgNjgsIDg3LCA2NSwgMTI4LCA2OCwgODYsIDczLCAKKyAgICA4MywgODYsIDY1LCA4MiwgNjUsIDEyOCwgNjgsIDg2LCA2OCwgMTI4LCA2OCwgODYsIDEyOCwgNjgsIDg1LCA4NCwgNzMsIAorICAgIDY5LCA4MywgMTI4LCA2OCwgODUsIDgzLCA3NSwgMTI4LCA2OCwgODUsIDgzLCA3MiwgNjksIDc4LCA3OCwgNjUsIDEyOCwgCisgICAgNjgsIDg1LCA4MiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY4LCA4NSwgODIsIDUwLCAxMjgsIDY4LCA4NSwgODAsIDc5LCAKKyAgICA3OCwgNjgsIDczLCA4NSwgMjExLCA2OCwgODUsIDc5LCA4OCwgMTI4LCA2OCwgODUsIDc5LCAxMjgsIDY4LCA4NSwgNzgsIAorICAgIDUyLCAxMjgsIDY4LCA4NSwgNzgsIDUxLCAxMjgsIDY4LCA4NSwgNzgsIDE3OSwgNjgsIDg1LCA3NywgMTI4LCA2OCwgODUsIAorICAgIDIwNCwgNjgsIDg1LCA3MiwgMTI4LCA2OCwgODUsIDcxLCA4NSwgNjgsIDEyOCwgNjgsIDg1LCA2NiwgNTAsIDEyOCwgNjgsIAorICAgIDg1LCA2NiwgMTI4LCA2OCwgODUsIDE5NCwgNjgsIDgyLCA4OSwgMTI4LCA2OCwgODIsIDIxNywgNjgsIDgyLCA4NSwgNzcsIAorICAgIDEyOCwgNjgsIDgyLCA4NSwgMjA1LCA2OCwgODIsIDc5LCA4MCwgODMsIDEyOCwgNjgsIDgyLCA3OSwgODAsIDc2LCA2OSwgCisgICAgODQsIDEyOCwgNjgsIDgyLCA3OSwgODAsIDQ1LCA4MywgNzIsIDY1LCA2OCwgNzksIDg3LCA2OSwgMTk2LCA2OCwgODIsIDc5LCAKKyAgICA3NywgNjksIDY4LCA2NSwgODIsIDIxNywgNjgsIDgyLCA3MywgODYsIDY5LCAxMjgsIDY4LCA4MiwgNzMsIDg2LCAxOTcsIAorICAgIDY4LCA4MiwgNzMsIDc4LCA3NSwgMTI4LCA2OCwgODIsIDczLCAyMDQsIDY4LCA4MiwgNjksIDgzLCA4MywgMTI4LCA2OCwgCisgICAgODIsIDY1LCA4NSwgNzEsIDcyLCA4NCwgMjExLCA2OCwgODIsIDY1LCA3NywgMTI4LCA2OCwgODIsIDY1LCA3MSwgNzksIDc4LCAKKyAgICAxMjgsIDY4LCA4MiwgNjUsIDcxLCA3OSwgMjA2LCA2OCwgODIsIDY1LCA3MCwgODQsIDczLCA3OCwgMTk5LCA2OCwgODIsIAorICAgIDY1LCA2NywgNzIsIDc3LCA2NSwgODMsIDEyOCwgNjgsIDgyLCA2NSwgNjcsIDcyLCA3NywgNjUsIDEyOCwgNjgsIDgyLCA2NSwgCisgICAgNjcsIDcyLCA3NywgMTkzLCA2OCwgNzksIDg3LCA3OCwgODcsIDY1LCA4MiwgNjgsIDgzLCAxMjgsIDY4LCA3OSwgODcsIDc4LCAKKyAgICA4NywgNjUsIDgyLCA2OCwgMjExLCA2OCwgNzksIDg3LCA3OCwgNDUsIDgwLCA3OSwgNzMsIDc4LCA4NCwgNzMsIDc4LCAxOTksIAorICAgIDY4LCA3OSwgODcsIDc4LCAxMjgsIDY4LCA3OSwgODYsIDY5LCAxMjgsIDY4LCA3OSwgODUsIDcxLCA3MiwgNzgsIDg1LCA4NCwgCisgICAgMTI4LCA2OCwgNzksIDg1LCA2NiwgODQsIDEyOCwgNjgsIDc5LCA4NSwgNjYsIDc2LCA2OSwgMTk2LCA2OCwgNzksIDg1LCAKKyAgICA2NiwgNzYsIDY5LCA0NSwgNzYsIDczLCA3OCwgMTk3LCA2OCwgNzksIDg1LCA2NiwgNzYsIDY5LCA0NSwgNjksIDc4LCA2OCwgCisgICAgNjksIDE5NiwgNjgsIDc5LCA4NSwgNjYsIDc2LCA2OSwgMTI4LCA2OCwgNzksIDg0LCA4NCwgNjksIDY4LCA0NSwgODAsIAorICAgIDEyOCwgNjgsIDc5LCA4NCwgODQsIDY5LCA2OCwgNDUsIDc4LCAxMjgsIDY4LCA3OSwgODQsIDg0LCA2OSwgNjgsIDQ1LCA3NiwgCisgICAgMTI4LCA2OCwgNzksIDg0LCA4NCwgNjksIDY4LCAxMjgsIDY4LCA3OSwgODQsIDg0LCA2OSwgMTk2LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTUsIAorICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1NCwgNTUsIDU2LCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTQsIDEyOCwgNjgsIAorICAgIDc5LCA4NCwgODMsIDQ1LCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgCisgICAgODQsIDgzLCA0NSwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCisgICAgNTIsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCAKKyAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTQsIAorICAgIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgCisgICAgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIDUzLCAKKyAgICA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTIsIAorICAgIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA1MiwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUyLCA1MywgNTQsIDEyOCwgNjgsIDc5LCAKKyAgICA4NCwgODMsIDQ1LCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAorICAgIDUxLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgCisgICAgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDU0LCAKKyAgICA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIAorICAgIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MywgCisgICAgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCAKKyAgICA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIAorICAgIDgzLCA0NSwgNTEsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgCisgICAgODQsIDgzLCA0NSwgNTEsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1NiwgMTI4LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDUxLCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1NSwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDUxLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1NCwgNTUsIDU2LCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIAorICAgIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTEsIDUyLCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgCisgICAgNTIsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDUxLCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTMsIDU0LCA1NSwgCisgICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgNTIsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA1MSwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUxLCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAorICAgIDQ1LCA1MSwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1NiwgCisgICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTUsIAorICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDU0LCA1NSwgCisgICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDU0LCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MywgNTUsIAorICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MywgCisgICAgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKKyAgICA0NSwgNTAsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIAorICAgIDgzLCA0NSwgNTAsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgCisgICAgNDUsIDUwLCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1NSwgMTI4LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDUwLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1NCwgNTUsIDU2LCAxMjgsIAorICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDU0LCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUyLCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIAorICAgIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgCisgICAgNDUsIDUwLCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTMsIDU0LCA1NSwgNTYsIAorICAgIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTIsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgCisgICAgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA1MCwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIAorICAgIDUxLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgCisgICAgNTAsIDUxLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCAKKyAgICA4NCwgODMsIDQ1LCA1MCwgNTEsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTQsIDEyOCwgNjgsIAorICAgIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDU1LCAKKyAgICA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIAorICAgIDUxLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTMsIAorICAgIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgCisgICAgNTIsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKKyAgICA0NSwgNTAsIDUxLCA1MiwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1NCwgNTYsIDEyOCwgNjgsIAorICAgIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCAKKyAgICA1MiwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAorICAgIDQ1LCA1MCwgNTEsIDUyLCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA1MCwgNTEsIDUyLCA1MywgNTUsIDU2LCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIAorICAgIDUxLCA1MiwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAorICAgIDUwLCA1MSwgNTIsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgNTIsIDUzLCAxMjgsIDY4LCA3OSwgCisgICAgODQsIDgzLCA0NSwgNTAsIDUxLCA1MiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDUwLCA1MSwgMTI4LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDUwLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAorICAgIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1NCwgCisgICAgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCAKKyAgICA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTMsIAorICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCisgICAgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA0OSwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDQ5LCA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA0OSwgNTIsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUyLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCAKKyAgICA4NCwgODMsIDQ1LCA0OSwgNTIsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUyLCA1NCwgNTYsIDEyOCwgNjgsIAorICAgIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIDU0LCAKKyAgICA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTIsIAorICAgIDUzLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgCisgICAgNDUsIDQ5LCA1MiwgNTMsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUyLCA1MywgNTQsIDU2LCAxMjgsIDY4LCAKKyAgICA3OSwgODQsIDgzLCA0NSwgNDksIDUyLCA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgCisgICAgNTMsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKKyAgICA0NSwgNDksIDUyLCA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIAorICAgIDQ5LCA1MSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgCisgICAgNDUsIDQ5LCA1MSwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDQ5LCA1MSwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTQsIDU1LCAxMjgsIAorICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTMsIDU2LCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIAorICAgIDUxLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA0OSwgNTEsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MywgNTQsIAorICAgIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCisgICAgNTEsIDUzLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA0OSwgNTEsIDUyLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1NSwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDU0LCAKKyAgICA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAorICAgIDQ1LCA0OSwgNTEsIDUyLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDUzLCA1NiwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDQ5LCA1MSwgNTIsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIAorICAgIDUyLCA1MywgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgCisgICAgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTMsIDU0LCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIAorICAgIDUyLCA1MywgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgCisgICAgODQsIDgzLCA0NSwgNDksIDUxLCA1MiwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTEsIDUyLCAxMjgsIDY4LCAKKyAgICA3OSwgODQsIDgzLCA0NSwgNDksIDUxLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1NiwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1NSwgMTI4LCA2OCwgCisgICAgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1NCwgNTUsIAorICAgIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgCisgICAgNTAsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MywgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA0OSwgNTAsIDUzLCA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUzLCA1NSwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTMsIDU0LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTMsIDU0LCAKKyAgICA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAorICAgIDQ1LCA0OSwgNTAsIDUzLCA1NCwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTMsIDEyOCwgNjgsIDc5LCA4NCwgCisgICAgODMsIDQ1LCA0OSwgNTAsIDUyLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU1LCA1NiwgMTI4LCAKKyAgICA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgCisgICAgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCAKKyAgICA4MywgNDUsIDQ5LCA1MCwgNTIsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDU0LCAxMjgsIAorICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MiwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCAKKyAgICA1MiwgNTMsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCAKKyAgICA1MywgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIAorICAgIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUyLCAKKyAgICA1MywgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIAorICAgIDUxLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgCisgICAgNDUsIDQ5LCA1MCwgNTEsIDU1LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTQsIDU2LCAxMjgsIDY4LCAKKyAgICA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTQsIDU1LCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgCisgICAgNTEsIDU0LCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCAKKyAgICA0NSwgNDksIDUwLCA1MSwgNTMsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTMsIDU1LCA1NiwgCisgICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCAKKyAgICA1MCwgNTEsIDUzLCA1NCwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MywgNTQsIDU1LCA1NiwgCisgICAgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA0OSwgNTAsIDUxLCA1MywgNTQsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MywgMTI4LCA2OCwgNzksIAorICAgIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCAKKyAgICA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIAorICAgIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDU0LCAKKyAgICA1NSwgNTYsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCA1MiwgNTQsIDU1LCAxMjgsIDY4LCA3OSwgODQsIAorICAgIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCAKKyAgICA1NiwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCA1MywgNTUsIDU2LCAxMjgsIDY4LCA3OSwgODQsIAorICAgIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NSwgMTI4LCA2OCwgNzksIDg0LCA4MywgNDUsIDQ5LCA1MCwgNTEsIDUyLCAKKyAgICA1MywgNTQsIDU2LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDU2LCAxMjgsIAorICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCA1NCwgNTUsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCAKKyAgICA0OSwgNTAsIDUxLCA1MiwgNTMsIDU0LCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDUzLCAxMjgsIAorICAgIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCA1MSwgNTIsIDEyOCwgNjgsIDc5LCA4NCwgODMsIDQ1LCA0OSwgNTAsIDUxLCAKKyAgICAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDUwLCAxMjgsIDY4LCA3OSwgODQsIDgzLCA0NSwgNDksIDEyOCwgNjgsIAorICAgIDc5LCA4NCwgODMsIDEyOCwgNjgsIDc5LCA4NCwgNzYsIDY5LCA4MywgMjExLCA2OCwgNzksIDgyLCA4NSwgMTI4LCA2OCwgCisgICAgNzksIDc5LCA4MiwgMTI4LCA2OCwgNzksIDc5LCA3OCwgNzEsIDEyOCwgNjgsIDc5LCA3OCwgNzEsIDEyOCwgNjgsIDc5LCAKKyAgICA3NywgNjUsIDczLCAyMDYsIDY4LCA3OSwgNzYsIDgwLCA3MiwgNzMsIDc4LCAxMjgsIDY4LCA3OSwgNzYsIDc2LCA4MywgCisgICAgMTI4LCA2OCwgNzksIDc2LCA3NiwgNjUsIDIxMCwgNjgsIDc5LCA3NiwgNzMsIDg1LCA3NywgMTI4LCA2OCwgNzksIDc1LCAKKyAgICA3NywgNjUsIDczLCAxMjgsIDY4LCA3OSwgNzMsIDg0LCAxMjgsIDY4LCA3OSwgNzEsIDEyOCwgNjgsIDc5LCAxOTksIDY4LCAKKyAgICA3OSwgNjksIDIxMSwgNjgsIDc5LCA2OCwgNjksIDc1LCA2NSwgODQsIDY1LCAxMjgsIDY4LCA3OSwgNjYsIDgyLCA3OSwgCisgICAgMTI4LCA2OCwgNzksIDY1LCA2NywgNzIsIDY1LCA4MywgNzIsIDc3LCA2OSwgNjksIDEyOCwgNjgsIDc5LCA2NSwgNjcsIDcyLCAKKyAgICA2NSwgODMsIDcyLCA3NywgNjksIDE5NywgNjgsIDc5LCA2NSwgMTI4LCA2OCwgNzksIDQ1LCA3OSwgMTI4LCA2OCwgNzcsIAorICAgIDEyOCwgNjgsIDIwNSwgNjgsIDc2LCA4NSwgMTI4LCA2OCwgNzYsIDc5LCAxMjgsIDY4LCA3NiwgNzMsIDEyOCwgNjgsIDc2LCAKKyAgICA2OSwgNjksIDEyOCwgNjgsIDc2LCA2NSwgMTI4LCA2OCwgNzYsIDEyOCwgNjgsIDc1LCA2NSwgODIsIDEyOCwgNjgsIDc1LCAKKyAgICA2NSwgMjEwLCA2OCwgNzQsIDY5LCA4MiwgODYsIDczLCAxMjgsIDY4LCA3NCwgNjksIDgyLCA4NiwgMTI4LCA2OCwgNzQsIAorICAgIDY5LCAxMjgsIDY4LCA3NCwgNjUsIDEyOCwgNjgsIDc0LCAxMjgsIDY4LCA3MywgOTAsIDkwLCAyMTcsIDY4LCA3MywgODYsIAorICAgIDc5LCA4MiwgNjcsIDE5NywgNjgsIDczLCA4NiwgNzMsIDgzLCA3MywgNzksIDc4LCAxMjgsIDY4LCA3MywgODYsIDczLCA4MywgCisgICAgNzMsIDc5LCAyMDYsIDY4LCA3MywgODYsIDczLCA3OCwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY4LCA3MywgODYsIDczLCAKKyAgICA2OCwgNjksIDgzLCAxMjgsIDY4LCA3MywgODYsIDczLCA2OCwgNjksIDgyLCAxMjgsIDY4LCA3MywgODYsIDczLCA2OCwgNjksIAorICAgIDE5NiwgNjgsIDczLCA4NiwgNzMsIDY4LCA2OSwgMTI4LCA2OCwgNzMsIDg2LCA3MywgNjgsIDE5NywgNjgsIDczLCA4NiwgCisgICAgNjksIDgyLCA3MSwgNjksIDc4LCA2NywgNjksIDEyOCwgNjgsIDczLCA4NCwgODQsIDIwNywgNjgsIDczLCA4MywgODQsIDc5LCAKKyAgICA4MiwgODQsIDczLCA3OSwgNzgsIDEyOCwgNjgsIDczLCA4MywgODQsIDczLCA3OCwgNzEsIDg1LCA3MywgODMsIDcyLCAxMjgsIAorICAgIDY4LCA3MywgODMsIDg0LCA3MywgNzYsIDc2LCAxMjgsIDY4LCA3MywgODMsIDgzLCA3OSwgNzYsIDg2LCA2OSwgNDUsIDUwLCAKKyAgICAxMjgsIDY4LCA3MywgODMsIDgzLCA3OSwgNzYsIDg2LCA2OSwgMTI4LCA2OCwgNzMsIDgzLCA4MCwgNjksIDgyLCA4MywgNzMsIAorICAgIDc5LCA3OCwgMTI4LCA2OCwgNzMsIDgzLCA3NSwgMTI4LCA2OCwgNzMsIDgzLCA3MywgNzcsIDc5LCA4NSwgMTI4LCA2OCwgCisgICAgNzMsIDgzLCA3MiwgMTI4LCA2OCwgNzMsIDgzLCA2NywgNzksIDc4LCA4NCwgNzMsIDc4LCA4NSwgNzksIDg1LCAyMTEsIDY4LCAKKyAgICA3MywgODMsIDE5NSwgNjgsIDczLCA4MywgNjUsIDgwLCA4MCwgNzksIDczLCA3OCwgODQsIDY5LCAxOTYsIDY4LCA3MywgODMsIAorICAgIDY1LCA2NiwgNzYsIDY5LCAxOTYsIDY4LCA3MywgODIsIDcxLCAxOTMsIDY4LCA3MywgODIsIDY5LCA2NywgODQsIDc2LCAKKyAgICAyMTcsIDY4LCA3MywgODIsIDY5LCA2NywgODQsIDczLCA3OSwgNzgsIDY1LCAyMDQsIDY4LCA3MywgODAsIDg0LCA2OSwgCisgICAgMTI4LCA2OCwgNzMsIDgwLCA4MCwgNjksIDgyLCAxMjgsIDY4LCA3MywgODAsIDc2LCA3OSwgODUsIDc4LCAxMjgsIDY4LCAKKyAgICA3MywgODAsIDc2LCA3MywgMTI4LCA2OCwgNzMsIDgwLCA3NiwgMjAxLCA2OCwgNzMsIDc4LCA3MSwgNjYsIDY1LCAyMTIsIAorICAgIDY4LCA3MywgMjA2LCA2OCwgNzMsIDc3LCA3NywgNzMsIDc4LCA3MSwgMTI4LCA2OCwgNzMsIDc3LCA3MywgNzgsIDg1LCA4NCwgCisgICAgNzMsIDc5LCA3OCwgNDUsIDUxLCAxMjgsIDY4LCA3MywgNzcsIDczLCA3OCwgODUsIDg0LCA3MywgNzksIDc4LCA0NSwgNTAsIAorICAgIDEyOCwgNjgsIDczLCA3NywgNzMsIDc4LCA4NSwgODQsIDczLCA3OSwgNzgsIDQ1LCA0OSwgMTI4LCA2OCwgNzMsIDc3LCA3MywgCisgICAgNzgsIDczLCA4MywgNzIsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDY4LCA3MywgNzcsIDczLCA2OCwgNzMsIDE5MywgNjgsIDczLCAKKyAgICA3NywgNjksIDc4LCA4MywgNzMsIDc5LCA3OCwgNjUsIDIwNCwgNjgsIDczLCA3NywgNjksIDc4LCA4MywgNzMsIDc5LCAyMDYsIAorICAgIDY4LCA3MywgNzcsIDUwLCAxMjgsIDY4LCA3MywgNzYsIDEyOCwgNjgsIDczLCA3MSwgODIsIDY1LCA4MCwgNzIsIDEyOCwgCisgICAgNjgsIDczLCA3MSwgODIsIDY1LCA4MCwgMjAwLCA2OCwgNzMsIDcxLCA4MiwgNjUsIDc3LCA3NywgNzksIDIxMSwgNjgsIDczLCAKKyAgICA3MSwgODIsIDY1LCA3NywgNzcsIDE5MywgNjgsIDczLCA3MSwgODIsIDY1LCAyMDUsIDY4LCA3MywgNzEsIDc5LCA4MiwgNzEsIAorICAgIDc5LCA3OCwgMTI4LCA2OCwgNzMsIDcxLCA3OSwgODIsIDcxLCA3OSwgMjA2LCA2OCwgNzMsIDcxLCA2NSwgNzcsIDc3LCA2NSwgCisgICAgMTI4LCA2OCwgNzMsIDcxLCAxOTMsIDY4LCA3MywgNzAsIDg0LCA3OSwgNzEsIDcxLCA3OSwgMjExLCA2OCwgNzMsIDcwLCAKKyAgICA3OSwgNzgsIDczLCA2NSwgODMsIDEyOCwgNjgsIDczLCA3MCwgNzAsIDczLCA2NywgODUsIDc2LCA4NCwgMjE3LCA2OCwgNzMsIAorICAgIDcwLCA3MCwgNzMsIDY3LCA4NSwgNzYsIDg0LCA3MywgNjksIDgzLCAxMjgsIDY4LCA3MywgNzAsIDcwLCA2OSwgODIsIDY5LCAKKyAgICA3OCwgODQsIDczLCA2NSwgNzYsIDEyOCwgNjgsIDczLCA3MCwgNzAsIDY5LCA4MiwgNjksIDc4LCA2NywgMTk3LCA2OCwgNzMsIAorICAgIDcwLCA2NSwgODQsIDEyOCwgNjgsIDczLCA2OSwgODMsIDczLCA4MywgMTI4LCA2OCwgNzMsIDY5LCA4MywgNzMsIDIxMSwgCisgICAgNjgsIDczLCA2OSwgODAsIDEyOCwgNjgsIDczLCAxOTcsIDY4LCA3MywgNjYsIDEyOCwgNjgsIDczLCA2NSwgODQsIDc5LCAKKyAgICA3OCwgNzksIDIwNiwgNjgsIDczLCA2NSwgODQsIDc5LCA3OCwgNzMsIDc1LCAyMDEsIDY4LCA3MywgNjUsIDgzLCA4NCwgNzksIAorICAgIDc2LCAyMDEsIDY4LCA3MywgNjUsIDc3LCA3OSwgNzgsIDY4LCA4MywgMTI4LCA2OCwgNzMsIDY1LCA3NywgNzksIDc4LCA2OCwgCisgICAgMTI4LCA2OCwgNzMsIDY1LCA3NywgNzksIDc4LCAxOTYsIDY4LCA3MywgNjUsIDc3LCA2OSwgODQsIDY5LCAyMTAsIDY4LCAKKyAgICA3MywgNjUsIDc2LCA4OSwgODQsIDczLCA3NSwgNjUsIDEyOCwgNjgsIDczLCA2NSwgNzYsIDg5LCA4NCwgNzMsIDc1LCAxOTMsIAorICAgIDY4LCA3MywgNjUsIDc2LCA2OSwgNjcsIDg0LCA0NSwgMjA4LCA2OCwgNzMsIDY1LCA3MSwgNzksIDc4LCA2NSwgNzYsIDEyOCwgCisgICAgNjgsIDczLCA2NSwgNzEsIDc5LCA3OCwgNjUsIDIwNCwgNjgsIDczLCA2NSwgNjksIDgyLCA2OSwgODMsIDczLCA5MCwgNjksIAorICAgIDE5NiwgNjgsIDczLCA2NSwgNjksIDgyLCA2OSwgODMsIDczLCA4MywgMTI4LCA2OCwgNzMsIDY1LCA2OSwgODIsIDY5LCA4MywgCisgICAgNzMsIDIxMSwgNjgsIDcyLCA3OSwgODUsIDEyOCwgNjgsIDcyLCA3OSwgNzksIDEyOCwgNjgsIDcyLCA3OSwgMTI4LCA2OCwgCisgICAgNzIsIDczLCAxMjgsIDY4LCA3MiwgNzIsIDg1LCAxMjgsIDY4LCA3MiwgNzIsIDc5LCA3OSwgMTI4LCA2OCwgNzIsIDcyLCAKKyAgICA3OSwgMTI4LCA2OCwgNzIsIDcyLCA3MywgMTI4LCA2OCwgNzIsIDcyLCA2OSwgNjksIDEyOCwgNjgsIDcyLCA3MiwgNjksIAorICAgIDEyOCwgNjgsIDcyLCA3MiwgNjUsIDEyOCwgNjgsIDcyLCA2OSwgNjksIDEyOCwgNjgsIDcyLCA2NSwgODIsIDc3LCA2NSwgCisgICAgMTI4LCA2OCwgNzIsIDY1LCA3NiwgNjksIDg0LCA3MiwgMTI4LCA2OCwgNzIsIDY1LCA3NiwgNjUsIDg0LCA3MiwgMTI4LCAKKyAgICA2OCwgNzIsIDY1LCA3NiwgMTI4LCA2OCwgNzIsIDY1LCA2OCwgNzIsIDY5LCAxMjgsIDY4LCA3MiwgNjUsIDY1LCA3NiwgODUsIAorICAgIDEyOCwgNjgsIDcyLCA2NSwgMTI4LCA2OCwgNjksIDkwLCAyMDAsIDY4LCA2OSwgODksIDg0LCA2OSwgODIsIDc5LCAyMTMsIAorICAgIDY4LCA2OSwgODksIDg0LCA2OSwgODIsIDc5LCAyMTEsIDY4LCA2OSwgODgsIDczLCA2NSwgMTI4LCA2OCwgNjksIDg2LCA3MywgCisgICAgNjcsIDE5NywgNjgsIDY5LCA4NiwgNjksIDc2LCA3OSwgODAsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDY4LCA2OSwgODUsIDc4LCAKKyAgICA3MSwgMTI4LCA2OCwgNjksIDgzLCAyMDMsIDY4LCA2OSwgODMsIDczLCA3MSwgNzgsIDEyOCwgNjgsIDY5LCA4MywgNzMsIAorICAgIDEyOCwgNjgsIDY5LCA4MywgNjcsIDgyLCA3MywgODAsIDg0LCA3MywgNzksIDIwNiwgNjgsIDY5LCA4MywgNjcsIDY5LCA3OCwgCisgICAgNjgsIDczLCA3OCwgMTk5LCA2OCwgNjksIDgzLCA2NywgNjksIDc4LCA2OCwgNjksIDgyLCAxMjgsIDY4LCA2OSwgODIsIDY5LCAKKyAgICA4NCwgNDUsIDcyLCA3MywgNjgsIDY5LCA4NCwgMTI4LCA2OCwgNjksIDgyLCA2OSwgODQsIDEyOCwgNjgsIDY5LCA4MCwgNjUsIAorICAgIDgyLCA4NCwgODUsIDgyLCA2OSwgMTI4LCA2OCwgNjksIDgwLCA2NSwgODIsIDg0LCA3NywgNjksIDc4LCAyMTIsIDY4LCA2OSwgCisgICAgODAsIDY1LCA4MiwgODQsIDczLCA3OCwgMTk5LCA2OCwgNjksIDc4LCA4NCwgNzMsIDgzLCA4NCwgODIsIDIxNywgNjgsIDY5LCAKKyAgICA3OCwgODQsIDY1LCAyMDQsIDY4LCA2OSwgNzgsIDc5LCA3NywgNzMsIDc4LCA2NSwgODQsIDc5LCA4MiwgMTI4LCA2OCwgNjksIAorICAgIDc4LCA3OSwgNzcsIDczLCA3OCwgNjUsIDg0LCA3OSwgMjEwLCA2OCwgNjksIDc4LCA3OCwgNjksIDc4LCAxMjgsIDY4LCA2OSwgCisgICAgNzgsIDcxLCAxMjgsIDY4LCA2OSwgNzgsIDE5NywgNjgsIDY5LCA3OCwgNjUsIDgyLCA3MywgODUsIDIxMSwgNjgsIDY5LCAKKyAgICA3NiwgODQsIDY1LCAxMjgsIDY4LCA2OSwgNzYsIDg0LCAxOTMsIDY4LCA2OSwgNzYsIDg0LCAxMjgsIDY4LCA2OSwgNzYsIAorICAgIDgwLCA3MiwgNzMsIDE5NSwgNjgsIDY5LCA3NiwgNzMsIDg2LCA2OSwgODIsIDIxNywgNjgsIDY5LCA3NiwgNzMsIDg2LCA2OSwgCisgICAgODIsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDY4LCA2OSwgNzYsIDczLCA3NywgNzMsIDg0LCA2OSwgODIsIDEyOCwgNjgsIDY5LCAKKyAgICA3NiwgNzMsIDc3LCA3MywgODQsIDY5LCAyMTAsIDY4LCA2OSwgNzYsIDczLCA2NywgNzMsIDc5LCA4NSwgMjExLCA2OCwgNjksIAorICAgIDc2LCA2OSwgODQsIDY5LCAxMjgsIDY4LCA2OSwgNzYsIDY5LCA4NCwgMTk3LCA2OCwgNjksIDc1LCA2NSwgMTI4LCA2OCwgCisgICAgNjksIDc1LCAxMjgsIDY4LCA2OSwgNzMsIDEyOCwgNjgsIDY5LCA3MiwgNzMsIDEyOCwgNjgsIDY5LCA3MSwgODIsIDY5LCAKKyAgICAxOTcsIDY4LCA2OSwgNzAsIDczLCA3OCwgNzMsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY4LCA2OSwgNzAsIDY5LCA2NywgODQsIAorICAgIDczLCA4NiwgNjksIDc4LCA2OSwgODMsIDIxMSwgNjgsIDY5LCA2OSwgODIsIDEyOCwgNjgsIDY5LCA2OSwgODAsIDc2LCA4OSwgCisgICAgMTI4LCA2OCwgNjksIDY5LCA3NiwgMTI4LCA2OCwgNjksIDY3LCA4MiwgNjksIDgzLCA2NywgNjksIDc4LCA2OCwgNzksIAorICAgIDEyOCwgNjgsIDY5LCA2NywgODIsIDY5LCA2NSwgODMsIDY5LCAxMjgsIDY4LCA2OSwgNjcsIDc5LCA4MiwgNjUsIDg0LCA3MywgCisgICAgODYsIDE5NywgNjgsIDY5LCA2NywgNzksIDgyLCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNjgsIDY5LCA2NywgNzMsIDgzLCAKKyAgICA3MywgODYsIDY5LCA3OCwgNjksIDgzLCA4MywgMTI4LCA2OCwgNjksIDY3LCA3MywgNzcsIDY1LCAyMDQsIDY4LCA2OSwgNjcsIAorICAgIDczLCA2OCwgODUsIDc5LCA4NSwgMjExLCA2OCwgNjksIDY3LCA2OSwgNzcsIDY2LCA2OSwgODIsIDEyOCwgNjgsIDY5LCA2NywgCisgICAgNjUsIDg5LCA2OSwgNjgsIDEyOCwgNjgsIDY5LCA2NiwgNzMsIDIxMiwgNjgsIDY5LCA2NSwgODQsIDcyLCAxMjgsIDY4LCAKKyAgICA2OSwgNjUsIDY4LCAxMjgsIDY4LCA2OCwgODcsIDY1LCAxMjgsIDY4LCA2OCwgODUsIDg4LCAxMjgsIDY4LCA2OCwgODUsIAorICAgIDg0LCAxMjgsIDY4LCA2OCwgODUsIDgyLCA4OCwgMTI4LCA2OCwgNjgsIDg1LCA4MiwgMTI4LCA2OCwgNjgsIDg1LCA4MCwgCisgICAgMTI4LCA2OCwgNjgsIDg1LCA3OSwgODgsIDEyOCwgNjgsIDY4LCA4NSwgNzksIDgwLCAxMjgsIDY4LCA2OCwgODUsIDc5LCAKKyAgICAxMjgsIDY4LCA2OCwgODUsIDEyOCwgNjgsIDY4LCA3OSwgODgsIDEyOCwgNjgsIDY4LCA3OSwgODQsIDEyOCwgNjgsIDY4LCAKKyAgICA3OSwgODAsIDEyOCwgNjgsIDY4LCA3OSwgNjUsIDEyOCwgNjgsIDY4LCA3MywgODgsIDEyOCwgNjgsIDY4LCA3MywgODQsIAorICAgIDEyOCwgNjgsIDY4LCA3MywgODAsIDEyOCwgNjgsIDY4LCA3MywgNjksIDg4LCAxMjgsIDY4LCA2OCwgNzMsIDY5LCA4MCwgCisgICAgMTI4LCA2OCwgNjgsIDczLCA2OSwgMTI4LCA2OCwgNjgsIDczLCAxMjgsIDY4LCA2OCwgNzIsIDg1LCAxMjgsIDY4LCA2OCwgCisgICAgNzIsIDc5LCAxMjgsIDY4LCA2OCwgNzIsIDczLCAxMjgsIDY4LCA2OCwgNzIsIDY5LCA2OSwgMTI4LCA2OCwgNjgsIDcyLCAKKyAgICA2OSwgMTI4LCA2OCwgNjgsIDcyLCA2NSwgNjUsIDEyOCwgNjgsIDY4LCA3MiwgNjUsIDEyOCwgNjgsIDY4LCA2OSwgODgsIAorICAgIDEyOCwgNjgsIDY4LCA2OSwgODAsIDEyOCwgNjgsIDY4LCA2OSwgNjksIDEyOCwgNjgsIDY4LCA2OSwgMTI4LCA2OCwgNjgsIAorICAgIDY4LCA3MiwgNjUsIDEyOCwgNjgsIDY4LCA2OCwgNjUsIDEyOCwgNjgsIDY4LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAKKyAgICAxMjgsIDY4LCA2OCwgNjUsIDg4LCAxMjgsIDY4LCA2OCwgNjUsIDg0LCAxMjgsIDY4LCA2OCwgNjUsIDgwLCAxMjgsIDY4LCAKKyAgICA2OCwgNjUsIDc2LCAxMjgsIDY4LCA2OCwgNjUsIDIwNCwgNjgsIDY4LCA2NSwgNzIsIDY1LCA3NiwgMTI4LCA2OCwgNjgsIAorICAgIDY1LCA3MiwgNjUsIDIwNCwgNjgsIDY4LCA2NSwgNjUsIDEyOCwgNjgsIDE5NCwgNjgsIDY1LCA4OSwgNDUsIDc4LCA3MywgCisgICAgNzEsIDcyLCA4NCwgMTI4LCA2OCwgNjUsIDIxNywgNjgsIDY1LCA4NiwgNzMsIDg5LCA2NSwgNzgsIDczLCAxMjgsIDY4LCAKKyAgICA2NSwgODYsIDczLCA2OCwgMTI4LCA2OCwgNjUsIDg0LCAxOTcsIDY4LCA2NSwgODMsIDczLCA2NSwgMTI4LCA2OCwgNjUsIAorICAgIDgzLCA3MywgMTkzLCA2OCwgNjUsIDgzLCA3MiwgNjksIDE5NiwgNjgsIDY1LCA4MywgNzIsIDEyOCwgNjgsIDY1LCA4MywgCisgICAgMjAwLCA2OCwgNjUsIDgzLCA2OSwgNzMsIDY1LCAxMjgsIDY4LCA2NSwgODIsIDg0LCAxMjgsIDY4LCA2NSwgODIsIDc1LCAKKyAgICA2OSwgNzgsIDczLCA3OCwgNzEsIDEyOCwgNjgsIDY1LCA4MiwgNzUsIDY5LCA3OCwgNzMsIDc4LCAxOTksIDY4LCA2NSwgODIsIAorICAgIDIwMywgNjgsIDY1LCA4MiwgNzEsIDY1LCAxMjgsIDY4LCA2NSwgODIsIDY1LCA1MiwgMTI4LCA2OCwgNjUsIDgyLCA2NSwgCisgICAgNTEsIDEyOCwgNjgsIDY1LCA4MiwgMTI4LCA2OCwgNjUsIDgwLCA0NSwgODAsIDgyLCA2NSwgMjA1LCA2OCwgNjUsIDgwLCAKKyAgICA0NSwgODAsIDczLCAyMDEsIDY4LCA2NSwgODAsIDQ1LCA3NywgODUsIDc5LCAyMTcsIDY4LCA2NSwgODAsIDQ1LCA2NiwgODUsIAorICAgIDc5LCAyMDYsIDY4LCA2NSwgODAsIDQ1LCA2NiwgNjksIDIwMSwgNjgsIDY1LCAyMDgsIDY4LCA2NSwgNzgsIDg0LCA2NSwgCisgICAgNzQsIDE5MywgNjgsIDY1LCA3OCwgNzEsIDc5LCAxMjgsIDY4LCA2NSwgNzgsIDcxLCAxMjgsIDY4LCA2NSwgNzgsIDE5OSwgCisgICAgNjgsIDY1LCA3OCwgNjgsIDY1LCAxMjgsIDY4LCA2NSwgNzgsIDY3LCA2OSwgODIsIDEyOCwgNjgsIDY1LCA3NywgODAsIAorICAgIDEyOCwgNjgsIDY1LCA3NywgMjA4LCA2OCwgNjUsIDc3LCA3NywgNjUsIDg0LCA2NSwgNzgsIDEyOCwgNjgsIDY1LCA3NywgCisgICAgNzcsIDY1LCA4NCwgNjUsIDIwNiwgNjgsIDY1LCA3NywgNzcsIDY1LCAxMjgsIDY4LCA2NSwgNzcsIDc3LCAxOTMsIDY4LCAKKyAgICA2NSwgNzcsIDY1LCA4MiwgODUsIDEyOCwgNjgsIDY1LCA3NiwgNjksIDg0LCA3MiwgMTI4LCA2OCwgNjUsIDc2LCA2OSwgODQsIAorICAgIDEyOCwgNjgsIDY1LCA3NiwgNjksIDIxMiwgNjgsIDY1LCA3NiwgNjgsIDY1LCAxMjgsIDY4LCA2NSwgNzYsIDY1LCA4NCwgCisgICAgNzIsIDEyOCwgNjgsIDY1LCA3NiwgNjUsIDg0LCAyMDAsIDY4LCA2NSwgNzYsIDY1LCA4NCwgMTI4LCA2OCwgNjUsIDczLCAKKyAgICA4MiwgMTI4LCA2OCwgNjUsIDczLCA3OCwgNzEsIDEyOCwgNjgsIDY1LCA3MiwgODksIDY1LCA2NSwgODUsIDgzLCA3MiwgNDUsIAorICAgIDUwLCAxMjgsIDY4LCA2NSwgNzIsIDg5LCA2NSwgNjUsIDg1LCA4MywgNzIsIDEyOCwgNjgsIDY1LCA3MSwgODMsIDEyOCwgCisgICAgNjgsIDY1LCA3MSwgNzEsIDY5LCA4MiwgMTI4LCA2OCwgNjUsIDcxLCA2OSwgODMsIDcyLCAxMjgsIDY4LCA2NSwgNzEsIDY5LCAKKyAgICA4MywgMjAwLCA2OCwgNjUsIDcxLCA2NiwgNjUsIDgzLCA3MywgNzgsIDc4LCA2NSwgMTI4LCA2OCwgNjUsIDcxLCA2NSwgCisgICAgMjE4LCA2OCwgNjUsIDcxLCA2NSwgNzYsIDcxLCA2NSwgMTI4LCA2OCwgNjUsIDE5OSwgNjgsIDY1LCA2OSwgNzgsIDcxLCAKKyAgICAxMjgsIDY4LCA2NSwgNjksIDE5OSwgNjgsIDY1LCA2OCwgMTI4LCA2OCwgNjUsIDE5NiwgNjgsIDY1LCA2NSwgODMsIDg1LCAKKyAgICAxMjgsIDY4LCA2NSwgNjUsIDY4LCA3MiwgODUsIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIDcyLCAxMjgsIDY4LCA0OCwgNTQsIAorICAgIDU1LCA3MSwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgNzAsIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIDY5LCAxMjgsIDY4LCA0OCwgCisgICAgNTQsIDU1LCA2OCwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgNjcsIDEyOCwgNjgsIDQ4LCA1NCwgNTUsIDY2LCAxMjgsIDY4LCAKKyAgICA0OCwgNTQsIDU1LCA2NSwgMTI4LCA2OCwgNDgsIDU0LCA1NSwgMTI4LCA2OCwgNDgsIDU0LCA1NCwgMTI4LCA2OCwgNDgsIAorICAgIDU0LCA1MywgMTI4LCA2OCwgNDgsIDU0LCA1MiwgMTI4LCA2OCwgNDgsIDU0LCA1MSwgMTI4LCA2OCwgNDgsIDU0LCA1MCwgCisgICAgMTI4LCA2OCwgNDgsIDU0LCA0OSwgMTI4LCA2OCwgNDgsIDU0LCA0OCwgMTI4LCA2OCwgNDgsIDUzLCA1NywgMTI4LCA2OCwgCisgICAgNDgsIDUzLCA1NiwgMTI4LCA2OCwgNDgsIDUzLCA1NSwgMTI4LCA2OCwgNDgsIDUzLCA1NCwgMTI4LCA2OCwgNDgsIDUzLCAKKyAgICA1MywgMTI4LCA2OCwgNDgsIDUzLCA1MiwgNjUsIDEyOCwgNjgsIDQ4LCA1MywgNTIsIDEyOCwgNjgsIDQ4LCA1MywgNTEsIAorICAgIDEyOCwgNjgsIDQ4LCA1MywgNTAsIDY1LCAxMjgsIDY4LCA0OCwgNTMsIDUwLCAxMjgsIDY4LCA0OCwgNTMsIDQ5LCAxMjgsIAorICAgIDY4LCA0OCwgNTMsIDQ4LCA3MywgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNzIsIDEyOCwgNjgsIDQ4LCA1MywgNDgsIDcxLCAKKyAgICAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA3MCwgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNjksIDEyOCwgNjgsIDQ4LCA1MywgNDgsIAorICAgIDY4LCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCA2NywgMTI4LCA2OCwgNDgsIDUzLCA0OCwgNjYsIDEyOCwgNjgsIDQ4LCA1MywgCisgICAgNDgsIDY1LCAxMjgsIDY4LCA0OCwgNTMsIDQ4LCAxMjgsIDY4LCA0OCwgNTIsIDU3LCAxMjgsIDY4LCA0OCwgNTIsIDU2LCAKKyAgICA2NSwgMTI4LCA2OCwgNDgsIDUyLCA1NiwgMTI4LCA2OCwgNDgsIDUyLCA1NSwgMTI4LCA2OCwgNDgsIDUyLCA1NCwgNjUsIAorICAgIDEyOCwgNjgsIDQ4LCA1MiwgNTQsIDEyOCwgNjgsIDQ4LCA1MiwgNTMsIDEyOCwgNjgsIDQ4LCA1MiwgNTIsIDEyOCwgNjgsIAorICAgIDQ4LCA1MiwgNTEsIDEyOCwgNjgsIDQ4LCA1MiwgNTAsIDEyOCwgNjgsIDQ4LCA1MiwgNDksIDEyOCwgNjgsIDQ4LCA1MiwgCisgICAgNDgsIDEyOCwgNjgsIDQ4LCA1MSwgNTcsIDEyOCwgNjgsIDQ4LCA1MSwgNTYsIDEyOCwgNjgsIDQ4LCA1MSwgNTUsIDEyOCwgCisgICAgNjgsIDQ4LCA1MSwgNTQsIDEyOCwgNjgsIDQ4LCA1MSwgNTMsIDEyOCwgNjgsIDQ4LCA1MSwgNTIsIDY1LCAxMjgsIDY4LCAKKyAgICA0OCwgNTEsIDUyLCAxMjgsIDY4LCA0OCwgNTEsIDUxLCAxMjgsIDY4LCA0OCwgNTEsIDUwLCAxMjgsIDY4LCA0OCwgNTEsIAorICAgIDQ5LCA2NSwgMTI4LCA2OCwgNDgsIDUxLCA0OSwgMTI4LCA2OCwgNDgsIDUxLCA0OCwgMTI4LCA2OCwgNDgsIDUwLCA1NywgCisgICAgMTI4LCA2OCwgNDgsIDUwLCA1NiwgMTI4LCA2OCwgNDgsIDUwLCA1NSwgNjUsIDEyOCwgNjgsIDQ4LCA1MCwgNTUsIDEyOCwgCisgICAgNjgsIDQ4LCA1MCwgNTQsIDEyOCwgNjgsIDQ4LCA1MCwgNTMsIDEyOCwgNjgsIDQ4LCA1MCwgNTIsIDEyOCwgNjgsIDQ4LCAKKyAgICA1MCwgNTEsIDEyOCwgNjgsIDQ4LCA1MCwgNTAsIDEyOCwgNjgsIDQ4LCA1MCwgNDksIDEyOCwgNjgsIDQ4LCA1MCwgNDgsIAorICAgIDEyOCwgNjgsIDQ4LCA0OSwgNTcsIDEyOCwgNjgsIDQ4LCA0OSwgNTYsIDEyOCwgNjgsIDQ4LCA0OSwgNTUsIDEyOCwgNjgsIAorICAgIDQ4LCA0OSwgNTQsIDEyOCwgNjgsIDQ4LCA0OSwgNTMsIDEyOCwgNjgsIDQ4LCA0OSwgNTIsIDEyOCwgNjgsIDQ4LCA0OSwgCisgICAgNTEsIDEyOCwgNjgsIDQ4LCA0OSwgNTAsIDEyOCwgNjgsIDQ4LCA0OSwgNDksIDEyOCwgNjgsIDQ4LCA0OSwgNDgsIDEyOCwgCisgICAgNjgsIDQ4LCA0OCwgNTcsIDEyOCwgNjgsIDQ4LCA0OCwgNTYsIDY1LCAxMjgsIDY4LCA0OCwgNDgsIDU2LCAxMjgsIDY4LCAKKyAgICA0OCwgNDgsIDU1LCAxMjgsIDY4LCA0OCwgNDgsIDU0LCAxMjgsIDY4LCA0OCwgNDgsIDUzLCAxMjgsIDY4LCA0OCwgNDgsIAorICAgIDUyLCAxMjgsIDY4LCA0OCwgNDgsIDUxLCAxMjgsIDY4LCA0OCwgNDgsIDUwLCAxMjgsIDY4LCA0OCwgNDgsIDQ5LCAxMjgsIAorICAgIDY3LCA4OSwgODgsIDEyOCwgNjcsIDg5LCA4NCwgMTI4LCA2NywgODksIDgyLCA4OCwgMTI4LCA2NywgODksIDgyLCA2OSwgCisgICAgNzgsIDY1LCA3MywgMTk1LCA2NywgODksIDgyLCAxMjgsIDY3LCA4OSwgODAsIDgyLCA3MywgNzksIDIxMiwgNjcsIDg5LCAKKyAgICA4MCwgNjksIDgyLCA4NSwgODMsIDEyOCwgNjcsIDg5LCA4MCwgMTI4LCA2NywgODksIDc2LCA3MywgNzgsIDY4LCA4MiwgNzMsIAorICAgIDY3LCA3MywgODQsIDg5LCAxMjgsIDY3LCA4OSwgNjcsIDc2LCA3OSwgNzgsIDY5LCAxMjgsIDY3LCA4OSwgNjUsIDEyOCwgCisgICAgNjcsIDg5LCAxMjgsIDY3LCA4NywgNzksIDc5LCAxMjgsIDY3LCA4NywgNzksIDEyOCwgNjcsIDg3LCA3MywgNzMsIDEyOCwgCisgICAgNjcsIDg3LCA3MywgMTI4LCA2NywgODcsIDY5LCA3OSwgODIsIDg0LCA3MiwgMTI4LCA2NywgODcsIDY5LCAxMjgsIDY3LCAKKyAgICA4NywgNjUsIDY1LCAxMjgsIDY3LCA4NSwgODgsIDEyOCwgNjcsIDg1LCA4NSwgMTI4LCA2NywgODUsIDIxMiwgNjcsIDg1LCAKKyAgICA4MywgODQsIDc5LCA3NywgODMsIDEyOCwgNjcsIDg1LCA4MywgODQsIDc5LCA3NywgNjksIDIxMCwgNjcsIDg1LCA4MywgODQsIAorICAgIDY1LCA4MiwgNjgsIDEyOCwgNjcsIDg1LCA4MiwgODgsIDEyOCwgNjcsIDg1LCA4MiwgODYsIDczLCA3OCwgMTk5LCA2NywgCisgICAgODUsIDgyLCA4NiwgNjksIDE5NiwgNjcsIDg1LCA4MiwgODYsIDY5LCAxMjgsIDY3LCA4NSwgODIsIDg2LCAxOTcsIDY3LCAKKyAgICA4NSwgODIsIDgyLCAyMTcsIDY3LCA4NSwgODIsIDgyLCA2OSwgNzgsIDg0LCAxMjgsIDY3LCA4NSwgODIsIDgyLCA2OSwgNzgsIAorICAgIDIxMiwgNjcsIDg1LCA4MiwgNzYsIDIxNywgNjcsIDg1LCA4MiwgNzYsIDEyOCwgNjcsIDg1LCA4MiwgMTI4LCA2NywgODUsIAorICAgIDgwLCAxMjgsIDY3LCA4NSwgNzksIDg4LCAxMjgsIDY3LCA4NSwgNzksIDgwLCAxMjgsIDY3LCA4NSwgNzksIDEyOCwgNjcsIAorICAgIDg1LCAyMDUsIDY3LCA4NSwgNjYsIDY5LCA2OCwgMTI4LCA2NywgODUsIDY2LCAxOTcsIDY3LCA4NSwgNjUsIDg0LCA4MiwgCisgICAgNzMsIDc2LCA3NiwgNzksIDEyOCwgNjcsIDg1LCA2NSwgODQsIDgyLCA3MywgNzYsIDc2LCAyMDcsIDY3LCA4NSwgMTI4LCAKKyAgICA2NywgODIsIDg5LCA4MywgODQsIDY1LCAyMDQsIDY3LCA4MiwgODksIDgwLCA4NCwgNzksIDcxLCA4MiwgNjUsIDc3LCA3NywgCisgICAgNzMsIDE5NSwgNjcsIDgyLCA4OSwgNzMsIDc4LCAxOTksIDY3LCA4MiwgODUsIDkwLCA2OSwgNzMsIDgyLCAyMDcsIDY3LCAKKyAgICA4MiwgODUsIDY3LCA3MywgNjYsIDc2LCA2OSwgNDUsIDUzLCAxMjgsIDY3LCA4MiwgODUsIDY3LCA3MywgNjYsIDc2LCA2OSwgCisgICAgNDUsIDUyLCAxMjgsIDY3LCA4MiwgODUsIDY3LCA3MywgNjYsIDc2LCA2OSwgNDUsIDUxLCAxMjgsIDY3LCA4MiwgODUsIDY3LCAKKyAgICA3MywgNjYsIDc2LCA2OSwgNDUsIDUwLCAxMjgsIDY3LCA4MiwgODUsIDY3LCA3MywgNjYsIDc2LCA2OSwgMTI4LCA2NywgODIsIAorICAgIDc5LCA4NywgNzgsIDEyOCwgNjcsIDgyLCA3OSwgODMsIDgzLCA3MywgNzgsIDcxLCAxMjgsIDY3LCA4MiwgNzksIDgzLCA4MywgCisgICAgNzMsIDc4LCAxOTksIDY3LCA4MiwgNzksIDgzLCA4MywgNzIsIDY1LCA4NCwgNjcsIDIwMCwgNjcsIDgyLCA3OSwgODMsIDgzLCAKKyAgICA2OSwgNjgsIDQ1LCA4NCwgNjUsIDczLCA3NiwgMTI4LCA2NywgODIsIDc5LCA4MywgODMsIDY5LCAxOTYsIDY3LCA4MiwgNzksIAorICAgIDgzLCA4MywgNjYsIDc5LCA3OCwgNjksIDgzLCAxMjgsIDY3LCA4MiwgNzksIDgzLCA4MywgMTI4LCA2NywgODIsIDc5LCA4MywgCisgICAgMjExLCA2NywgODIsIDc5LCA4MCwgMTI4LCA2NywgODIsIDc5LCA3MywgODgsIDEyOCwgNjcsIDgyLCA3OSwgNjcsIDg1LCAKKyAgICAyMTEsIDY3LCA4MiwgNzksIDY3LCA3OSwgNjgsIDczLCA3NiwgNjksIDEyOCwgNjcsIDgyLCA2OSwgODMsIDY3LCA2OSwgNzgsIAorICAgIDg0LCAxMjgsIDY3LCA4MiwgNjksIDgzLCA2NywgNjksIDc4LCAyMTIsIDY3LCA4MiwgNjksIDY4LCA3MywgMjEyLCA2NywgCisgICAgODIsIDY5LCA2NSwgODQsIDczLCA4NiwgMTk3LCA2NywgODIsIDY5LCA2NSwgNzcsIDEyOCwgNjcsIDgyLCA2NSwgNjcsIDc1LCAKKyAgICA2OSwgODIsIDEyOCwgNjcsIDc5LCA4OCwgMTI4LCA2NywgNzksIDg3LCAxMjgsIDY3LCA3OSwgMjE1LCA2NywgNzksIDg2LCAKKyAgICA2OSwgODIsIDEyOCwgNjcsIDc5LCA4NSwgODAsIDc2LCAxOTcsIDY3LCA3OSwgODUsIDc4LCA4NCwgNzMsIDc4LCAxOTksIAorICAgIDY3LCA3OSwgODUsIDc4LCA4NCwgNjksIDgyLCA4MywgNzMsIDc4LCA3NSwgMTI4LCA2NywgNzksIDg1LCA3OCwgODQsIDY5LCAKKyAgICA4MiwgNjYsIDc5LCA4MiwgNjksIDEyOCwgNjcsIDc5LCA4NSwgNzgsIDY3LCA3MywgMjA0LCA2NywgNzksIDg0LCAxMjgsIAorICAgIDY3LCA3OSwgODIsIDgyLCA2OSwgODMsIDgwLCA3OSwgNzgsIDY4LCAyMTEsIDY3LCA3OSwgODIsIDgyLCA2OSwgNjcsIDg0LCAKKyAgICAxMjgsIDY3LCA3OSwgODIsIDgwLCA4MywgNjksIDEyOCwgNjcsIDc5LCA4MiwgODAsIDc5LCA4MiwgNjUsIDg0LCA3MywgNzksIAorICAgIDc4LCAxMjgsIDY3LCA3OSwgODIsIDc5LCA3OCwgNzMsIDgzLCAxMjgsIDY3LCA3OSwgODIsIDc4LCA2OSwgODIsIDgzLCAKKyAgICAxMjgsIDY3LCA3OSwgODIsIDc4LCA2OSwgODIsIDEyOCwgNjcsIDc5LCA4MiwgNzgsIDY5LCAyMTAsIDY3LCA3OSwgODAsIAorICAgIDg5LCA4MiwgNzMsIDcxLCA3MiwgODQsIDEyOCwgNjcsIDc5LCA4MCwgODksIDgyLCA3MywgNzEsIDcyLCAyMTIsIDY3LCA3OSwgCisgICAgODAsIDg5LCAxMjgsIDY3LCA3OSwgODAsIDgyLCA3OSwgNjgsIDg1LCA2NywgODQsIDEyOCwgNjcsIDc5LCA4MCwgODAsIDY5LCAKKyAgICA4MiwgNDUsIDUwLCAxMjgsIDY3LCA3OSwgODAsIDgwLCA2OSwgODIsIDEyOCwgNjcsIDc5LCA4MCwgMTI4LCA2NywgNzksIAorICAgIDc5LCA3NiwgMTI4LCA2NywgNzksIDc5LCA3NSwgNzMsIDc4LCA3MSwgMTI4LCA2NywgNzksIDc5LCA3NSwgNzMsIDY5LCAKKyAgICAxMjgsIDY3LCA3OSwgNzksIDc1LCA2OSwgMTk2LCA2NywgNzksIDc5LCAxMjgsIDY3LCA3OSwgNzgsIDg2LCA2OSwgODIsIAorICAgIDcxLCA3MywgNzgsIDE5OSwgNjcsIDc5LCA3OCwgODYsIDY5LCA3OCwgNzMsIDY5LCA3OCwgNjcsIDE5NywgNjcsIDc5LCA3OCwgCisgICAgODQsIDgyLCA3OSwgNzYsIDEyOCwgNjcsIDc5LCA3OCwgODQsIDgyLCA3OSwgMjA0LCA2NywgNzksIDc4LCA4NCwgODIsIDY1LCAKKyAgICA4MiwgNzMsIDY5LCA4NCwgODksIDEyOCwgNjcsIDc5LCA3OCwgODQsIDgyLCA2NSwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIAorICAgIDY3LCA3OSwgNzgsIDg0LCA3OSwgODUsIDgyLCA2OSwgMTk2LCA2NywgNzksIDc4LCA4NCwgNzksIDg1LCAyMTAsIDY3LCA3OSwgCisgICAgNzgsIDg0LCA2OSwgNzgsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY3LCA3OSwgNzgsIDg0LCA2OSwgNzcsIDgwLCA3NiwgNjUsIAorICAgIDg0LCA3MywgNzksIDc4LCAxMjgsIDY3LCA3OSwgNzgsIDg0LCA2NSwgNzMsIDc4LCAyMTEsIDY3LCA3OSwgNzgsIDg0LCA2NSwgCisgICAgNzMsIDc4LCA3MywgNzgsIDE5OSwgNjcsIDc5LCA3OCwgODQsIDY1LCA3MywgMjA2LCA2NywgNzksIDc4LCA4NCwgNjUsIDY3LCAKKyAgICA4NCwgMTI4LCA2NywgNzksIDc4LCA4MywgODQsIDgyLCA4NSwgNjcsIDg0LCA3MywgNzksIDIwNiwgNjcsIDc5LCA3OCwgODMsIAorICAgIDg0LCA2NSwgNzgsIDg0LCAxMjgsIDY3LCA3OSwgNzgsIDgzLCA4NCwgNjUsIDc4LCAyMTIsIDY3LCA3OSwgNzgsIDgzLCA4NCwgCisgICAgNjUsIDc4LCA2NywgODksIDEyOCwgNjcsIDc5LCA3OCwgODMsIDY5LCA2NywgODUsIDg0LCA3MywgODYsIDE5NywgNjcsIDc5LCAKKyAgICA3OCwgNzQsIDg1LCA3OCwgNjcsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY3LCA3OSwgNzgsIDc0LCA4NSwgNzEsIDY1LCA4NCwgCisgICAgMTk3LCA2NywgNzksIDc4LCA3NCwgNzksIDczLCA3OCwgNzMsIDc4LCAxOTksIDY3LCA3OSwgNzgsIDczLCA2NywgNjUsIAorICAgIDIwNCwgNjcsIDc5LCA3OCwgNzEsIDgyLCA4NSwgNjksIDc4LCAyMTIsIDY3LCA3OSwgNzgsIDcxLCA4MiwgNjUsIDg0LCA4NSwgCisgICAgNzYsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NywgNzksIDc4LCA3MCwgNzksIDg1LCA3OCwgNjgsIDY5LCAxOTYsIDY3LCAKKyAgICA3OSwgNzgsIDcwLCA3NiwgNzMsIDY3LCA4NCwgMTI4LCA2NywgNzksIDc4LCA3MCwgNjksIDg0LCA4NCwgMjAxLCA2NywgNzksIAorICAgIDc4LCA2NywgNjUsIDg2LCA2OSwgNDUsIDgzLCA3MywgNjgsIDY5LCAxOTYsIDY3LCA3OSwgNzgsIDY3LCA2NSwgODYsIDY5LCAKKyAgICA0NSwgODAsIDc5LCA3MywgNzgsIDg0LCA2OSwgMTk2LCA2NywgNzksIDc4LCAxMjgsIDY3LCA3OSwgNzcsIDgwLCA4NSwgODQsIAorICAgIDY5LCA4MiwgMTI4LCA2NywgNzksIDc3LCA4MCwgNzksIDgzLCA3MywgODQsIDczLCA3OSwgNzgsIDEyOCwgNjcsIDc5LCA3NywgCisgICAgODAsIDc5LCA4MywgNzMsIDg0LCA3MywgNzksIDIwNiwgNjcsIDc5LCA3NywgODAsIDc2LCA3MywgNjUsIDc4LCA2NywgNjksIAorICAgIDEyOCwgNjcsIDc5LCA3NywgODAsIDc2LCA2OSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNjcsIDc5LCA3NywgODAsIDc2LCA2OSwgCisgICAgODQsIDY5LCA2OCwgMTI4LCA2NywgNzksIDc3LCA4MCwgNzYsIDY5LCA3NywgNjksIDc4LCA4NCwgMTI4LCA2NywgNzksIDc3LCAKKyAgICA4MCwgNjUsIDgyLCA2OSwgMTI4LCA2NywgNzksIDc3LCA3NywgNzksIDIwNiwgNjcsIDc5LCA3NywgNzcsIDY5LCA4MiwgNjcsIAorICAgIDczLCA2NSwgMjA0LCA2NywgNzksIDc3LCA3NywgNjUsIDEyOCwgNjcsIDc5LCA3NywgNzcsIDE5MywgNjcsIDc5LCA3NywgCisgICAgNjksIDg0LCAxMjgsIDY3LCA3OSwgNzcsIDY2LCAxMjgsIDY3LCA3OSwgNzYsIDg1LCA3NywgNzgsIDEyOCwgNjcsIDc5LCAKKyAgICA3NiwgNzksIDgyLCAxMjgsIDY3LCA3OSwgNzYsIDc2LCA3MywgODMsIDczLCA3OSwgMjA2LCA2NywgNzksIDc2LCA3NiwgCisgICAgMTI4LCA2NywgNzksIDc2LCAxOTYsIDY3LCA3OSwgNzAsIDcwLCA3MywgNzgsIDEyOCwgNjcsIDc5LCA2OSwgNzgsIDcxLCAKKyAgICAxMjgsIDY3LCA3OSwgNjksIDc4LCAxOTksIDY3LCA3OSwgNjgsIDY1LCAxMjgsIDY3LCA3OSwgNjcsIDc1LCA4NCwgNjUsIAorICAgIDczLCAyMDQsIDY3LCA3OSwgNjUsIDgzLCA4NCwgNjksIDgyLCAxMjgsIDY3LCA3OSwgNjUsIDEyOCwgNjcsIDc5LCAxMjgsIAorICAgIDY3LCA3NywgMTI4LCA2NywgMjA1LCA2NywgNzYsIDg1LCA4MywgODQsIDY5LCAyMTAsIDY3LCA3NiwgODUsIDY2LCA4MywgCisgICAgMTI4LCA2NywgNzYsIDg1LCA2NiwgNDUsIDgzLCA4MCwgNzksIDc1LCA2OSwgMTk2LCA2NywgNzYsIDg1LCA2NiwgMTI4LCAKKyAgICA2NywgNzYsIDg1LCAxOTQsIDY3LCA3NiwgNzksIDg2LCA2OSwgODIsIDEyOCwgNjcsIDc2LCA3OSwgODUsIDY4LCAxMjgsIAorICAgIDY3LCA3NiwgNzksIDg1LCAxOTYsIDY3LCA3NiwgNzksIDg0LCA3MiwgNjksIDgzLCAxMjgsIDY3LCA3NiwgNzksIDg0LCA3MiwgCisgICAgMTI4LCA2NywgNzYsIDc5LCA4MywgNjksIDg0LCAxMjgsIDY3LCA3NiwgNzksIDgzLCA2OSwgNzgsIDY5LCA4MywgODMsIAorICAgIDEyOCwgNjcsIDc2LCA3OSwgODMsIDY5LCA2OCwgMTI4LCA2NywgNzYsIDc5LCA4MywgMTk3LCA2NywgNzYsIDc5LCA2NywgCisgICAgNzUsIDg3LCA3MywgODMsIDE5NywgNjcsIDc2LCA3OSwgNjcsIDIwMywgNjcsIDc2LCA3MywgODYsIDczLCA4MywgMTI4LCAKKyAgICA2NywgNzYsIDczLCA4MCwgNjYsIDc5LCA2NSwgODIsIDY4LCAxMjgsIDY3LCA3NiwgNzMsIDc4LCA3NSwgNzMsIDc4LCAxOTksIAorICAgIDY3LCA3NiwgNzMsIDc4LCA3MSwgNzMsIDc4LCAxOTksIDY3LCA3NiwgNzMsIDc3LCA2NSwgNjcsIDg1LCA4MywgMTI4LCA2NywgCisgICAgNzYsIDczLCA3MCwgNzAsIDEyOCwgNjcsIDc2LCA3MywgNjcsIDc1LCAxMjgsIDY3LCA3NiwgNjksIDcwLCA0NSwgNTAsIAorICAgIDEyOCwgNjcsIDc2LCA2OSwgNzAsIDQ1LCA0OSwgMTI4LCA2NywgNzYsIDY5LCA3MCwgMTI4LCA2NywgNzYsIDY5LCAxOTgsIAorICAgIDY3LCA3NiwgNjksIDY1LCA4NiwgNjksIDgyLCAxMjgsIDY3LCA3NiwgNjksIDY1LCAyMTAsIDY3LCA3NiwgNjUsIDg3LCAKKyAgICAxMjgsIDY3LCA3NiwgNjUsIDgwLCA4MCwgNzMsIDc4LCAxOTksIDY3LCA3NiwgNjUsIDgwLCA4MCwgNjksIDIxMCwgNjcsIAorICAgIDc2LCA2NSwgNzgsIDEyOCwgNjcsIDc2LCA2NSwgNzMsIDc3LCAxMjgsIDY3LCA3NiwgMTI4LCA2NywgNzMsIDg4LCAxMjgsIAorICAgIDY3LCA3MywgODYsIDczLCA3NiwgNzMsIDY1LCA3OCwgMTI4LCA2NywgNzMsIDg0LCA4OSwgODMsIDY3LCA2NSwgODAsIDE5NywgCisgICAgNjcsIDczLCA4NCwgMTI4LCA2NywgNzMsIDgyLCA2NywgODUsIDIxMSwgNjcsIDczLCA4MiwgNjcsIDg1LCA3NywgNzAsIDc2LCAKKyAgICA2OSwgODgsIDEyOCwgNjcsIDczLCA4MiwgNjcsIDg1LCA3NywgNzAsIDc2LCA2OSwgMjE2LCA2NywgNzMsIDgyLCA2NywgODUsIAorICAgIDc2LCA2NSwgODQsIDczLCA3OSwgMjA2LCA2NywgNzMsIDgyLCA2NywgNzYsIDY5LCA4MywgMTI4LCA2NywgNzMsIDgyLCA2NywgCisgICAgNzYsIDY5LCAxMjgsIDY3LCA3MywgODAsIDEyOCwgNjcsIDczLCA3OCwgNzgsIDY1LCA2NiwgNjUsIDgyLCAxMjgsIDY3LCAKKyAgICA3MywgNzgsIDY5LCA3NywgNjUsIDEyOCwgNjcsIDczLCA3MywgMTI4LCA2NywgNzMsIDY5LCA4OCwgMTI4LCA2NywgNzMsIAorICAgIDY5LCA4NSwgNjcsIDQ1LCA4MywgODMsIDY1LCA3OCwgNzEsIDgwLCA3MywgNjksIDg1LCA4MCwgMTI4LCA2NywgNzMsIDY5LCAKKyAgICA4NSwgNjcsIDQ1LCA4MCwgNzMsIDY5LCA4NSwgODAsIDEyOCwgNjcsIDczLCA2OSwgODUsIDY3LCA0NSwgNzMsIDY5LCA4NSwgCisgICAgNzgsIDcxLCAxMjgsIDY3LCA3MywgNjksIDg1LCAxOTUsIDY3LCA3MywgNjksIDg0LCAxMjgsIDY3LCA3MywgNjksIDgwLCAKKyAgICAxMjgsIDY3LCA3MywgNjksIDEyOCwgNjcsIDczLCAxMjgsIDY3LCA3MiwgODksIDg4LCAxMjgsIDY3LCA3MiwgODksIDg0LCAKKyAgICAxMjgsIDY3LCA3MiwgODksIDgyLCA4OCwgMTI4LCA2NywgNzIsIDg5LCA4MiwgMTI4LCA2NywgNzIsIDg5LCA4MCwgMTI4LCAKKyAgICA2NywgNzIsIDg1LCA4OCwgMTI4LCA2NywgNzIsIDg1LCA4MiwgODgsIDEyOCwgNjcsIDcyLCA4NSwgODIsIDY3LCA3MiwgCisgICAgMTI4LCA2NywgNzIsIDg1LCA4MiwgMTI4LCA2NywgNzIsIDg1LCA4MCwgMTI4LCA2NywgNzIsIDg1LCA3OSwgODgsIDEyOCwgCisgICAgNjcsIDcyLCA4NSwgNzksIDg0LCAxMjgsIDY3LCA3MiwgODUsIDc5LCA4MCwgMTI4LCA2NywgNzIsIDg1LCA3OSwgMTI4LCAKKyAgICA2NywgNzIsIDg1LCA3NiwgNjUsIDEyOCwgNjcsIDcyLCA4NSwgMTI4LCA2NywgNzIsIDgyLCA4OSwgODMsIDY1LCA3OCwgODQsIAorICAgIDcyLCA2OSwgNzcsIDg1LCA3NywgMTI4LCA2NywgNzIsIDgyLCA3OSwgNzgsIDc5LCA4NSwgMTI4LCA2NywgNzIsIDgyLCA3OSwgCisgICAgNzgsIDc5LCA3OCwgMTI4LCA2NywgNzIsIDgyLCA3OSwgNzcsIDE5MywgNjcsIDcyLCA4MiwgNzksIDE5MywgNjcsIDcyLCAKKyAgICA4MiwgNzMsIDg2LCA3MywgMTI4LCA2NywgNzIsIDgyLCA3MywgODMsIDg0LCA3NywgNjUsIDgzLCAxMjgsIDY3LCA3MiwgODIsIAorICAgIDczLCA4MywgODQsIDc3LCA2NSwgMjExLCA2NywgNzIsIDc5LCA4OCwgMTI4LCA2NywgNzIsIDc5LCA4NCwgMTI4LCA2NywgCisgICAgNzIsIDc5LCA4MiwgNjksIDg2LCA3NywgMTkzLCA2NywgNzIsIDc5LCA4MCwgMTI4LCA2NywgNzIsIDc5LCA3NSwgNjksIAorICAgIDEyOCwgNjcsIDcyLCA3OSwgNjksIDEyOCwgNjcsIDcyLCA3OSwgNjcsIDc5LCA3NiwgNjUsIDg0LCAxOTcsIDY3LCA3MiwgCisgICAgNzksIDY1LCAxMjgsIDY3LCA3MiwgMjA3LCA2NywgNzIsIDczLCA4NCwgODUsIDY5LCA4NSwgNzcsIDgzLCA4MywgNjUsIDc4LCAKKyAgICA3MSwgODMsIDczLCA3OSwgODMsIDEyOCwgNjcsIDcyLCA3MywgODQsIDg1LCA2OSwgODUsIDc3LCA4MywgODMsIDY1LCA3OCwgCisgICAgNzEsIDY3LCA3MywgNjksIDg1LCA2NywgMTI4LCA2NywgNzIsIDczLCA4NCwgODUsIDY5LCA4NSwgNzcsIDgzLCA3MywgNzksIAorICAgIDgzLCAxMjgsIDY3LCA3MiwgNzMsIDg0LCA4NSwgNjksIDg1LCA3NywgNjcsIDczLCA2OSwgODUsIDY3LCAxMjgsIDY3LCA3MiwgCisgICAgNzMsIDg0LCA4NSwgNjksIDg1LCA3NywgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIDEyOCwgNjcsIDcyLCA3MywgODIsIAorICAgIDc5LCA3OCwgMTI4LCA2NywgNzIsIDczLCA4MiwgNjksIDg0LCAxMjgsIDY3LCA3MiwgNzMsIDc4LCA3MSwgMTI4LCA2NywgCisgICAgNzIsIDczLCA3OCwgNjksIDgzLCAxOTcsIDY3LCA3MiwgNzMsIDc4LCAxMjgsIDY3LCA3MiwgNzMsIDc3LCA2OSwgMTI4LCAKKyAgICA2NywgNzIsIDczLCA3NiwgNzYsIDIxMywgNjcsIDcyLCA3MywgNzYsIDY4LCA4MiwgNjksIDIwNiwgNjcsIDcyLCA3MywgNzYsIAorICAgIDY4LCAxMjgsIDY3LCA3MiwgNzMsIDc2LCAxMjgsIDY3LCA3MiwgNzMsIDc1LCAyMDEsIDY3LCA3MiwgNzMsIDY5LCA4NSwgCisgICAgNjcsIDcyLCA0NSwgNzUsIDcyLCA3MywgNjksIDg1LCA3NSwgNzIsIDEyOCwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgNzIsIAorICAgIDQ1LCA3MiwgNzMsIDY5LCA4NSwgNzIsIDEyOCwgNjcsIDcyLCA3MywgNjksIDg1LCA2NywgMjAwLCA2NywgNzIsIDczLCA2NywgCisgICAgNzUsIDY5LCA3OCwgMTI4LCA2NywgNzIsIDczLCA2NywgNzUsIDEyOCwgNjcsIDcyLCA3MywgMTI4LCA2NywgNzIsIDIwMSwgCisgICAgNjcsIDcyLCA3MiwgNjUsIDEyOCwgNjcsIDcyLCA2OSwgODgsIDEyOCwgNjcsIDcyLCA2OSwgODYsIDgyLCA3OSwgMjA2LCAKKyAgICA2NywgNzIsIDY5LCA4NCwgMTI4LCA2NywgNzIsIDY5LCA4MywgODQsIDc4LCA4NSwgODQsIDEyOCwgNjcsIDcyLCA2OSwgODMsIAogICAgIDIxMSwgNjcsIDcyLCA2OSwgODIsIDgyLCAyMTcsIDY3LCA3MiwgNjksIDgyLCA4MiwgNzMsIDY5LCA4MywgMTI4LCA2NywgCiAgICAgNzIsIDY5LCA4MSwgODUsIDY5LCA4MiwgNjksIDE5NiwgNjcsIDcyLCA2OSwgODAsIDEyOCwgNjcsIDcyLCA2OSwgMjA2LCAKICAgICA2NywgNzIsIDY5LCA3MywgNzgsIDY1LCA4MCwgMTI4LCA2NywgNzIsIDY5LCA3MywgNzUsIDcyLCA2OSwgNzMsIDEyOCwgNjcsIApAQCAtNDA4NCwyOTAgKzQxMDksMjkxIEBACiAgICAgNjcsIDY3LCA2OSwgNjksIDEyOCwgNjcsIDY3LCA2OSwgMTI4LCA2NywgNjcsIDY1LCA2NSwgMTI4LCA2NywgNjcsIDY1LCAKICAgICAxMjgsIDY3LCA2NSwgODksIDc4LCAxMjgsIDY3LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY3LCA2NSwgODgsIAogICAgIDEyOCwgNjcsIDY1LCA4NiwgNjksIDEyOCwgNjcsIDY1LCA4NSwgODQsIDczLCA3OSwgMjA2LCA2NywgNjUsIDg1LCA3NiwgCi0gICAgNjgsIDgyLCA3OSwgNzgsIDEyOCwgNjcsIDY1LCA4NSwgNjgsIDY1LCAxMjgsIDY3LCA2NSwgODQsIDY1LCA4NywgNjUsIAotICAgIDEyOCwgNjcsIDY1LCA4NCwgMTI4LCA2NywgNjUsIDIxMiwgNjcsIDY1LCA4MywgODQsIDc2LCA2OSwgMTI4LCA2NywgNjUsIAotICAgIDgyLCA4OSwgODMsIDg0LCA3MywgNjUsIDIwNiwgNjcsIDY1LCA4MiwgODQsIDEyOCwgNjcsIDY1LCA4MiwgMjExLCA2NywgCi0gICAgNjUsIDgyLCA4MiwgNzMsIDY1LCA3MSwgMTk3LCA2NywgNjUsIDgyLCA4MCwgNjksIDc4LCA4NCwgODIsIDIxNywgNjcsIDY1LCAKLSAgICA4MiwgMjA4LCA2NywgNjUsIDgyLCA3OSwgODUsIDgzLCA2OSwgMjA0LCA2NywgNjUsIDgyLCA3OSwgNzgsIDEyOCwgNjcsIAotICAgIDY1LCA4MiwgNzksIDIwNiwgNjcsIDY1LCA4MiwgNzMsIDIwMywgNjcsIDY1LCA4MiwgNzMsIDY1LCAyMDYsIDY3LCA2NSwgCi0gICAgODIsIDY5LCA4NCwgMTI4LCA2NywgNjUsIDgyLCA2OSwgMjEyLCA2NywgNjUsIDgyLCAxOTcsIDY3LCA2NSwgODIsIDY4LCAKLSAgICA4MywgMTI4LCA2NywgNjUsIDgyLCA2OCwgMTI4LCA2NywgNjUsIDgyLCAxOTYsIDY3LCA2NSwgODIsIDEyOCwgNjcsIDY1LCAKLSAgICAyMTAsIDY3LCA2NSwgODAsIDg1LCAyMTIsIDY3LCA2NSwgODAsIDg0LCA3MywgODYsIDY5LCAxMjgsIDY3LCA2NSwgODAsIAotICAgIDgyLCA3MywgNjcsIDc5LCA4MiwgNzgsIDEyOCwgNjcsIDY1LCA4MCwgNzksIDEyOCwgNjcsIDY1LCA4MCwgNzMsIDg0LCA2NSwgCi0gICAgNzYsIDEyOCwgNjcsIDY1LCA3OCwgODQsIDczLCA3NiwgNzYsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY3LCA2NSwgNzgsIAotICAgIDE5OSwgNjcsIDY1LCA3OCwgNjgsIDg5LCAxMjgsIDY3LCA2NSwgNzgsIDY4LCA4MiwgNjUsIDY2LCA3MywgNzgsIDY4LCA4NSwgCi0gICAgMTI4LCA2NywgNjUsIDc4LCA2OCwgODIsIDY1LCA2NiwgNzMsIDc4LCA2OCwgMjEzLCA2NywgNjUsIDc4LCA2OCwgODIsIDY1LCAKLSAgICAxMjgsIDY3LCA2NSwgNzgsIDY4LCA4MiwgMTkzLCA2NywgNjUsIDc4LCA2NywgNjksIDgyLCAxMjgsIDY3LCA2NSwgNzgsIAotICAgIDY3LCA2OSwgNzYsIDc2LCA2NSwgODQsIDczLCA3OSwgMjA2LCA2NywgNjUsIDc4LCA2NywgNjksIDc2LCAxMjgsIDY3LCA2NSwgCi0gICAgNzgsIDY3LCA2OSwgMjA0LCA2NywgNjUsIDc4LCAxMjgsIDY3LCA2NSwgNzcsIDc4LCA4NSwgMTk1LCA2NywgNjUsIDc3LCAKLSAgICA2OSwgODIsIDY1LCAxMjgsIDY3LCA2NSwgNzcsIDY5LCA3NiwgMTI4LCA2NywgNjUsIDc2LCA4OSwgNjUsIDEyOCwgNjcsIAotICAgIDY1LCA3NiwgODksIDE5MywgNjcsIDY1LCA3NiwgODgsIDEyOCwgNjcsIDY1LCA3NiwgNzYsIDEyOCwgNjcsIDY1LCA3NiwgCi0gICAgNjksIDc4LCA2OCwgNjUsIDgyLCAxMjgsIDY3LCA2NSwgNzYsIDY3LCAxMjgsIDY3LCA2NSwgNzUsIDgyLCA2NSwgMTI4LCAKLSAgICA2NywgNjUsIDc1LCAxOTcsIDY3LCA2NSwgNjksIDgzLCA4NSwgODIsIDY1LCAxMjgsIDY3LCA2NSwgNjgsIDg1LCA2NywgNjksIAotICAgIDg1LCA4MywgMTI4LCA2NywgNjUsIDY4LCAxOTMsIDY3LCA2NSwgNjcsIDg0LCA4NSwgODMsIDEyOCwgNjcsIDY1LCA2NiwgCi0gICAgNzYsIDY5LCA4NywgNjUsIDg5LCAxMjgsIDY3LCA2NSwgNjYsIDY2LCA2NSwgNzEsIDY5LCA0NSwgODQsIDgyLCA2OSwgNjksIAotICAgIDEyOCwgNjcsIDY1LCA2NSwgNzgsIDcxLCAxMjgsIDY3LCA2NSwgNjUsIDczLCAxMjgsIDY3LCAxOTMsIDY3LCA0OCwgNTAsIAotICAgIDUyLCAxMjgsIDY3LCA0OCwgNTAsIDUxLCAxMjgsIDY3LCA0OCwgNTAsIDUwLCAxMjgsIDY3LCA0OCwgNTAsIDQ5LCAxMjgsIAotICAgIDY3LCA0OCwgNTAsIDQ4LCAxMjgsIDY3LCA0OCwgNDksIDU3LCAxMjgsIDY3LCA0OCwgNDksIDU2LCAxMjgsIDY3LCA0OCwgCi0gICAgNDksIDU1LCAxMjgsIDY3LCA0OCwgNDksIDU0LCAxMjgsIDY3LCA0OCwgNDksIDUzLCAxMjgsIDY3LCA0OCwgNDksIDUyLCAKLSAgICAxMjgsIDY3LCA0OCwgNDksIDUxLCAxMjgsIDY3LCA0OCwgNDksIDUwLCAxMjgsIDY3LCA0OCwgNDksIDQ5LCAxMjgsIDY3LCAKLSAgICA0OCwgNDksIDQ4LCA2NSwgMTI4LCA2NywgNDgsIDQ5LCA0OCwgMTI4LCA2NywgNDgsIDQ4LCA1NywgMTI4LCA2NywgNDgsIAotICAgIDQ4LCA1NiwgMTI4LCA2NywgNDgsIDQ4LCA1NSwgMTI4LCA2NywgNDgsIDQ4LCA1NCwgMTI4LCA2NywgNDgsIDQ4LCA1MywgCi0gICAgMTI4LCA2NywgNDgsIDQ4LCA1MiwgMTI4LCA2NywgNDgsIDQ4LCA1MSwgMTI4LCA2NywgNDgsIDQ4LCA1MCwgNjcsIDEyOCwgCi0gICAgNjcsIDQ4LCA0OCwgNTAsIDY2LCAxMjgsIDY3LCA0OCwgNDgsIDUwLCA2NSwgMTI4LCA2NywgNDgsIDQ4LCA1MCwgMTI4LCAKLSAgICA2NywgNDgsIDQ4LCA0OSwgMTI4LCA2NywgNDUsIDgzLCA3MywgNzcsIDgwLCA3NiwgNzMsIDcwLCA3MywgNjksIDE5NiwgNjcsIAotICAgIDQ1LCA1MSwgNTcsIDEyOCwgNjcsIDQ1LCA0OSwgNTYsIDEyOCwgNjYsIDkwLCA4NSwgNzgsIDE5OSwgNjYsIDkwLCA3MiwgCi0gICAgMjAxLCA2NiwgODksIDY5LCA3NiwgNzksIDgyLCA4NSwgODMsIDgzLCA3MywgNjUsIDc4LCA0NSwgODUsIDc1LCA4MiwgNjUsIAotICAgIDczLCA3OCwgNzMsIDY1LCAyMDYsIDY2LCA4OCwgNzEsIDEyOCwgNjYsIDg3LCA3MywgMTI4LCA2NiwgODcsIDY5LCA2OSwgCi0gICAgMTI4LCA2NiwgODcsIDY5LCAxMjgsIDY2LCA4NywgNjUsIDEyOCwgNjYsIDg1LCA4NSwgNzcsIDczLCA4MywgNzIsIDEyOCwgCi0gICAgNjYsIDg1LCA4NCwgODQsIDc5LCA3OCwgMTI4LCA2NiwgODUsIDIxMiwgNjYsIDg1LCA4MywgODQsIDIxMSwgNjYsIDg1LCAKLSAgICA4MywgMjEyLCA2NiwgODUsIDgzLCA4MywgODksIDY5LCA4MiwgODUsIDEyOCwgNjYsIDg1LCAyMTEsIDY2LCA4NSwgODIsIAotICAgIDIxMywgNjYsIDg1LCA4MiwgNTAsIDEyOCwgNjYsIDg1LCAyMTAsIDY2LCA4NSwgNzksIDg4LCAxMjgsIDY2LCA4NSwgNzksIAotICAgIDgwLCAxMjgsIDY2LCA4NSwgNzgsIDc4LCAyMTcsIDY2LCA4NSwgNzgsIDcxLCAxMjgsIDY2LCA4NSwgNzcsIDgwLCAyMTcsIAotICAgIDY2LCA4NSwgNzYsIDg1LCA3MSwgMTI4LCA2NiwgODUsIDc2LCA4NSwgMTk5LCA2NiwgODUsIDc2LCA3NiwgODMsIDY5LCA4OSwgCi0gICAgNjksIDEyOCwgNjYsIDg1LCA3NiwgNzYsIDIxMSwgNjYsIDg1LCA3NiwgNzYsIDY5LCA4NCwgMTI4LCA2NiwgODUsIDc2LCAKLSAgICA3NiwgNjksIDIxMiwgNjYsIDg1LCA3NiwgNzYsIDEyOCwgNjYsIDg1LCA3NiwgNjYsIDEyOCwgNjYsIDg1LCA3NSwgODksIAotICAgIDEyOCwgNjYsIDg1LCA3MywgNzYsIDY4LCA3MywgNzgsIDcxLCA4MywgMTI4LCA2NiwgODUsIDczLCA3NiwgNjgsIDczLCA3OCwgCi0gICAgNzEsIDEyOCwgNjYsIDg1LCA3MiwgNzMsIDE5NiwgNjYsIDg1LCA3MSwgNzMsIDc4LCA2OSwgODMsIDE5NywgNjYsIDg1LCAKLSAgICA3MSwgMTI4LCA2NiwgODUsIDcwLCA3MCwgNjUsIDc2LCA3OSwgMTI4LCA2NiwgODUsIDY3LCA3NSwgNzYsIDY5LCAxMjgsIAotICAgIDY2LCA4MywgODQsIDY1LCA4MiwgMTI4LCA2NiwgODMsIDc1LCA4NSwgMjEwLCA2NiwgODMsIDc1LCA2NSwgMTczLCA2NiwgCi0gICAgODMsIDY4LCA4NSwgMjExLCA2NiwgODIsIDg1LCA4MywgNzIsIDEyOCwgNjYsIDgyLCA4NSwgODMsIDIwMCwgNjYsIDgyLCAKLSAgICA3OSwgNzgsIDkwLCA2OSwgMTI4LCA2NiwgODIsIDc5LCA3NSwgNjksIDIwNiwgNjYsIDgyLCA3OSwgNjUsIDE5NiwgNjYsIAotICAgIDgyLCA3MywgODMsIDg0LCA3NiwgNjksIDEyOCwgNjYsIDgyLCA3MywgNzEsIDcyLCA4NCwgNzgsIDY5LCA4MywgMjExLCA2NiwgCi0gICAgODIsIDczLCA2OSwgNzAsIDY3LCA2NSwgODMsIDY5LCAxMjgsIDY2LCA4MiwgNzMsIDY4LCA3MSwgMTk3LCA2NiwgODIsIDczLCAKLSAgICA2OCwgMTk3LCA2NiwgODIsIDczLCA2NywgNzUsIDEyOCwgNjYsIDgyLCA2OSwgODYsIDczLCA4MywgMTI4LCA2NiwgODIsIAotICAgIDY5LCA4NiwgNjksIDQ1LCA3NywgNjUsIDY3LCA4MiwgNzksIDc4LCAxMjgsIDY2LCA4MiwgNjksIDg2LCAxOTcsIDY2LCA4MiwgCi0gICAgNjksIDY1LCA4NCwgMjAwLCA2NiwgODIsIDY5LCA2NSwgNzUsIDg0LCA3MiwgODIsIDc5LCA4NSwgNzEsIDcyLCAxMjgsIDY2LCAKLSAgICA4MiwgNjksIDY1LCA2OCwgMTI4LCA2NiwgODIsIDY4LCAxOTMsIDY2LCA4MiwgNjUsIDc4LCA2NywgNzIsIDczLCA3OCwgCi0gICAgMTk5LCA2NiwgODIsIDY1LCA3OCwgNjcsIDcyLCAxMjgsIDY2LCA4MiwgNjUsIDc4LCA2NywgMjAwLCA2NiwgODIsIDY1LCAKLSAgICA3NSwgNjcsIDY5LCA4NCwgMTI4LCA2NiwgODIsIDY1LCA2NywgNzUsIDY5LCA4NCwgNjksIDE5NiwgNjYsIDgyLCA2NSwgNjcsIAotICAgIDc1LCA2OSwgMjEyLCA2NiwgODIsIDY1LCA2NywgNjksIDEyOCwgNjYsIDgxLCAxMjgsIDY2LCA3OSwgODksIDEyOCwgNjYsIAotICAgIDc5LCA4NywgODQsIDczLCA2OSwgMTI4LCA2NiwgNzksIDg3LCA4NCwgNzMsIDE5NywgNjYsIDc5LCA4NywgNzYsIDczLCA3OCwgCi0gICAgNzEsIDEyOCwgNjYsIDc5LCA4NywgNzYsIDEyOCwgNjYsIDc5LCA4NywgNzMsIDc4LCAxOTksIDY2LCA3OSwgMjE1LCA2NiwgCi0gICAgNzksIDg1LCA4MSwgODUsIDY5LCA4NCwgMTI4LCA2NiwgNzksIDg1LCA3OCwgNjgsIDY1LCA4MiwgMjE3LCA2NiwgNzksIDg0LCAKLSAgICA4NCwgNzksIDc3LCA0NSwgNzYsIDczLCA3MSwgNzIsIDg0LCA2OSwgMTk2LCA2NiwgNzksIDg0LCA4NCwgNzksIDc3LCAxMjgsIAotICAgIDY2LCA3OSwgODQsIDg0LCA3OSwgMjA1LCA2NiwgNzksIDg0LCA4NCwgNzYsIDY5LCAxMjgsIDY2LCA3OSwgODQsIDg0LCA3NiwgCi0gICAgMTk3LCA2NiwgNzksIDg0LCAyMDAsIDY2LCA3OSwgODIsIDg1LCA4NCwgNzksIDEyOCwgNjYsIDc5LCA4MiwgNjUsIDg4LCAKLSAgICA0NSwgNTEsIDEyOCwgNjYsIDc5LCA4MiwgNjUsIDg4LCA0NSwgNTAsIDEyOCwgNjYsIDc5LCA4MiwgNjUsIDg4LCAxMjgsIAotICAgIDY2LCA3OSwgNzksIDg0LCA4MywgMTI4LCA2NiwgNzksIDc5LCA4NCwgMTI4LCA2NiwgNzksIDc5LCA3NywgNjksIDgyLCA2NSwgCi0gICAgNzgsIDcxLCAxMjgsIDY2LCA3OSwgNzksIDc1LCA4MywgMTI4LCA2NiwgNzksIDc5LCA3NSwgNzcsIDY1LCA4MiwgNzUsIAotICAgIDEyOCwgNjYsIDc5LCA3OSwgNzUsIDc3LCA2NSwgODIsIDIwMywgNjYsIDc5LCA3OCwgNjksIDEyOCwgNjYsIDc5LCA3NywgCi0gICAgNjYsIDEyOCwgNjYsIDc5LCA3NiwgODQsIDEyOCwgNjYsIDc5LCA3NiwgMjEyLCA2NiwgNzksIDY4LCA4OSwgMTI4LCA2NiwgCi0gICAgNzksIDY1LCA4MiwgMTI4LCA2NiwgNzksIDY1LCAxMjgsIDY2LCA3NiwgODUsIDY5LCAxMjgsIDY2LCA3NiwgODUsIDE5NywgCi0gICAgNjYsIDc2LCA3OSwgODcsIDcwLCA3MywgODMsIDcyLCAxMjgsIDY2LCA3NiwgNzksIDgzLCA4MywgNzksIDc3LCAxMjgsIDY2LCAKLSAgICA3NiwgNzksIDc5LCA2OCwgMTI4LCA2NiwgNzYsIDc5LCA3OCwgMTk2LCA2NiwgNzYsIDc5LCA2NywgNzUsIDEyOCwgNjYsIAotICAgIDc2LCA2OSwgNzgsIDY4LCA2OSwgMTk2LCA2NiwgNzYsIDY1LCA3OCwgNzUsIDEyOCwgNjYsIDc2LCA2NSwgNzgsIDIwMywgCi0gICAgNjYsIDc2LCA2NSwgNjgsIDE5NywgNjYsIDc2LCA2NSwgNjcsIDc1LCA3MCwgNzksIDc5LCAyMTIsIDY2LCA3NiwgNjUsIDY3LCAKLSAgICA3NSwgNDUsIDc2LCA2OSwgODQsIDg0LCA2OSwgMjEwLCA2NiwgNzYsIDY1LCA2NywgNzUsIDQ1LCA3MCwgNjksIDY1LCA4NCwgCi0gICAgNzIsIDY5LCA4MiwgNjksIDE5NiwgNjYsIDc2LCA2NSwgNjcsIDc1LCAxMjgsIDY2LCA3NSwgNjUsIDE3MywgNjYsIDczLCAKLSAgICA4NCwgODQsIDY5LCA4MiwgMTI4LCA2NiwgNzMsIDg0LCA3MywgNzgsIDE5OSwgNjYsIDczLCA4MywgNzcsIDg1LCA4NCwgCi0gICAgMjAwLCA2NiwgNzMsIDgzLCA3NywgNzMsIDc2LCA3NiwgNjUsIDIwMCwgNjYsIDczLCA4MywgNzIsIDc5LCA4MCwgMTI4LCAKLSAgICA2NiwgNzMsIDgzLCA2OSwgNjcsIDg0LCA3MywgNzgsIDE5OSwgNjYsIDczLCA4MywgNjUsIDcyLCAxMjgsIDY2LCA3MywgODIsIAotICAgIDg1LCAxMjgsIDY2LCA3MywgODIsIDg0LCA3MiwgNjgsIDY1LCAyMTcsIDY2LCA3MywgODIsIDcxLCA2NSwgMTI4LCA2NiwgCi0gICAgNzMsIDgyLCA2OCwgMTI4LCA2NiwgNzMsIDc5LCA3MiwgNjUsIDkwLCA2NSwgODIsIDE5NiwgNjYsIDczLCA3OCwgNzksIDY3LCAKLSAgICA4NSwgNzYsIDY1LCAyMTAsIDY2LCA3MywgNzgsIDY4LCA3MywgNzgsIDE5OSwgNjYsIDczLCA3OCwgNjgsIDczLCAxMjgsIAotICAgIDY2LCA3MywgNzgsIDY1LCA4MiwgMjE3LCA2NiwgNzMsIDc2LCA3NiwgNzMsIDY1LCA4MiwgNjgsIDgzLCAxMjgsIDY2LCA3MywgCi0gICAgNzYsIDY1LCA2NiwgNzMsIDY1LCAyMDQsIDY2LCA3MywgNzUsIDczLCA3OCwgNzMsIDEyOCwgNjYsIDczLCA3MSwgMTI4LCAKLSAgICA2NiwgNzMsIDE5OSwgNjYsIDczLCA2OSwgODQsIDEyOCwgNjYsIDczLCA2OCwgNjksIDc4LCA4NCwgNjUsIDIwNCwgNjYsIAotICAgIDczLCA2NywgODksIDY3LCA3NiwgNzMsIDgzLCA4NCwgMTI4LCA2NiwgNzMsIDY3LCA4OSwgNjcsIDc2LCA2OSwgODMsIDEyOCwgCi0gICAgNjYsIDczLCA2NywgODksIDY3LCA3NiwgNjksIDEyOCwgNjYsIDczLCA2NywgNjksIDgwLCA4MywgMTI4LCA2NiwgNzMsIDY2LCAKLSAgICA3NiwgNjksIDQ1LCA2NywgODIsIDY5LCAxOTcsIDY2LCA3MywgNjYsIDEyOCwgNjYsIDIwMSwgNjYsIDcyLCA4NSwgMTI4LCAKLSAgICA2NiwgNzIsIDc5LCA3OSwgMTI4LCA2NiwgNzIsIDc5LCAxMjgsIDY2LCA3MiwgNzMsIDEyOCwgNjYsIDcyLCA2OSwgODQsIAotICAgIDcyLCAxMjgsIDY2LCA3MiwgNjksIDY5LCAxMjgsIDY2LCA3MiwgNjksIDEyOCwgNjYsIDcyLCA2NSwgODQsIDg0LCA3MywgCi0gICAgODAsIDgyLCA3OSwgNzYsIDIxMywgNjYsIDcyLCA2NSwgNzcsIDEyOCwgNjYsIDcyLCA2NSwgMTI4LCA2NiwgNjksIDg5LCAKLSAgICA4OSwgNjUsIDc2LCAxMjgsIDY2LCA2OSwgODgsIDEyOCwgNjYsIDY5LCA4NiwgNjksIDgyLCA2NSwgNzEsIDY5LCAxMjgsIAotICAgIDY2LCA2OSwgODQsIDg3LCA2OSwgNjksIDc4LCAxMjgsIDY2LCA2OSwgODQsIDg3LCA2OSwgNjksIDIwNiwgNjYsIDY5LCA4NCwgCi0gICAgNzIsIDEyOCwgNjYsIDY5LCA4NCwgNjUsIDEyOCwgNjYsIDY5LCA4NCwgMTkzLCA2NiwgNjksIDIxMiwgNjYsIDY5LCA4MywgCi0gICAgNzMsIDY4LCAxOTcsIDY2LCA2OSwgODIsIDc1LCA2NSwgNzgsIDY1LCAyMDYsIDY2LCA2OSwgODIsIDY2LCA2OSwgMjEwLCAKLSAgICA2NiwgNjksIDgwLCAxMjgsIDY2LCA2OSwgNzksIDgyLCAxOTUsIDY2LCA2OSwgNzgsIDkwLCA2OSwgNzgsIDE5NywgNjYsIAotICAgIDY5LCA3OCwgODQsIDIwNywgNjYsIDY5LCA3OCwgNjgsIDY5LCAxMjgsIDY2LCA2OSwgNzgsIDY4LCAxMjgsIDY2LCA2OSwgCi0gICAgMjA2LCA2NiwgNjksIDc2LCA4NCwgMTI4LCA2NiwgNjksIDc2LCAyMTIsIDY2LCA2OSwgNzYsIDc5LCAyMTUsIDY2LCA2OSwgCi0gICAgNzYsIDc2LCAxMjgsIDY2LCA2OSwgNzYsIDIwNCwgNjYsIDY5LCA3NiwgNzEsIDg0LCA3MiwgNzksIDIxMCwgNjYsIDY5LCAKLSAgICA3MywgODQsIDcyLCAxMjgsIDY2LCA2OSwgNzIsIDczLCA3OCwgMTk2LCA2NiwgNjksIDcyLCA2OSwgNzIsIDEyOCwgNjYsIAotICAgIDY5LCA3MiwgNjksIDIwMCwgNjYsIDY5LCA3MiwgMTI4LCA2NiwgNjksIDIwMCwgNjYsIDY5LCA3MSwgNzMsIDc4LCA3OCwgCi0gICAgNzMsIDc4LCA3MSwgMTI4LCA2NiwgNjksIDcxLCA3MywgNzgsIDc4LCA2OSwgODIsIDEyOCwgNjYsIDY5LCA3MSwgNzMsIAotICAgIDIwNiwgNjYsIDY5LCA3MCwgNzksIDgyLCAxOTcsIDY2LCA2OSwgNjksIDg0LCA3NiwgNjksIDEyOCwgNjYsIDY5LCA2OSwgCi0gICAgODQsIDY1LCAxMjgsIDY2LCA2OSwgNjksIDIxMCwgNjYsIDY5LCA2OSwgNzIsIDczLCA4NiwgNjksIDEyOCwgNjYsIDY5LCAKLSAgICA2OSwgNzIsIDEyOCwgNjYsIDY5LCA2OSwgMjAwLCA2NiwgNjksIDY3LCA2NSwgODUsIDgzLCA2OSwgMTI4LCA2NiwgNjksIAotICAgIDY1LCA4NiwgNjksIDIxMCwgNjYsIDY5LCA2NSwgODQsIDczLCA3OCwgMTk5LCA2NiwgNjksIDY1LCA4NCwgMTI4LCA2NiwgCi0gICAgNjksIDY1LCAyMTAsIDY2LCA2OSwgNjUsIDc4LCAxMjgsIDY2LCA2OSwgNjUsIDc3LCA2OSwgMTk2LCA2NiwgNjcsIDY1LCAKLSAgICA2OCwgMTI4LCA2NiwgNjcsIDY1LCAxOTYsIDY2LCA2NiwgODksIDg4LCAxMjgsIDY2LCA2NiwgODksIDg0LCAxMjgsIDY2LCAKLSAgICA2NiwgODksIDgwLCAxMjgsIDY2LCA2NiwgODksIDEyOCwgNjYsIDY2LCA4NSwgODgsIDEyOCwgNjYsIDY2LCA4NSwgODQsIAotICAgIDEyOCwgNjYsIDY2LCA4NSwgODIsIDg4LCAxMjgsIDY2LCA2NiwgODUsIDgyLCAxMjgsIDY2LCA2NiwgODUsIDgwLCAxMjgsIAotICAgIDY2LCA2NiwgODUsIDc5LCA4OCwgMTI4LCA2NiwgNjYsIDg1LCA3OSwgODAsIDEyOCwgNjYsIDY2LCA4NSwgNzksIDEyOCwgCi0gICAgNjYsIDY2LCA4NSwgMTI4LCA2NiwgNjYsIDc5LCA4OCwgMTI4LCA2NiwgNjYsIDc5LCA4NCwgMTI4LCA2NiwgNjYsIDc5LCAKLSAgICA4MCwgMTI4LCA2NiwgNjYsIDc5LCAxMjgsIDY2LCA2NiwgNzMsIDg4LCAxMjgsIDY2LCA2NiwgNzMsIDgwLCAxMjgsIDY2LCAKLSAgICA2NiwgNzMsIDY5LCA4OCwgMTI4LCA2NiwgNjYsIDczLCA2OSwgODQsIDEyOCwgNjYsIDY2LCA3MywgNjksIDgwLCAxMjgsIAotICAgIDY2LCA2NiwgNzMsIDY5LCAxMjgsIDY2LCA2NiwgNzMsIDEyOCwgNjYsIDY2LCA2OSwgODgsIDEyOCwgNjYsIDY2LCA2OSwgCi0gICAgODAsIDEyOCwgNjYsIDY2LCA2OSwgNjksIDEyOCwgNjYsIDY2LCA2OSwgMTI4LCA2NiwgNjYsIDY1LCA4OCwgMTI4LCA2NiwgCi0gICAgNjYsIDY1LCA4NCwgMTI4LCA2NiwgNjYsIDY1LCA4MCwgMTI4LCA2NiwgNjYsIDY1LCA2NSwgMTI4LCA2NiwgNjYsIDY1LCAKLSAgICAxMjgsIDY2LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY2LCA2NSwgODUsIDEyOCwgNjYsIDY1LCA4NCwgODQsIAotICAgIDY5LCA4MiwgODksIDEyOCwgNjYsIDY1LCA4NCwgNzIsIDg0LCA4NSwgNjYsIDEyOCwgNjYsIDY1LCA4NCwgNzIsIDY1LCA3NywgCi0gICAgNjUsIDgzLCA2NSwgODQsIDEyOCwgNjYsIDY1LCA4NCwgNzIsIDEyOCwgNjYsIDY1LCA4NCwgMjAwLCA2NiwgNjUsIDg0LCAKLSAgICA2NSwgMjAzLCA2NiwgNjUsIDgzLCA4MywgNjUsIDEyOCwgNjYsIDY1LCA4MywgNzUsIDY5LCA4NCwgNjYsIDY1LCA3NiwgCisgICAgNjgsIDgyLCA3OSwgNzgsIDEyOCwgNjcsIDY1LCA4NSwgNjgsIDY1LCAxMjgsIDY3LCA2NSwgODUsIDEyOCwgNjcsIDY1LCAKKyAgICA4NCwgNjUsIDg3LCA2NSwgMTI4LCA2NywgNjUsIDg0LCAxMjgsIDY3LCA2NSwgMjEyLCA2NywgNjUsIDgzLCA4NCwgNzYsIAorICAgIDY5LCAxMjgsIDY3LCA2NSwgODIsIDg5LCA4MywgODQsIDczLCA2NSwgMjA2LCA2NywgNjUsIDgyLCA4NCwgMTI4LCA2NywgCisgICAgNjUsIDgyLCAyMTEsIDY3LCA2NSwgODIsIDgyLCA3MywgNjUsIDcxLCAxOTcsIDY3LCA2NSwgODIsIDgwLCA2OSwgNzgsIDg0LCAKKyAgICA4MiwgMjE3LCA2NywgNjUsIDgyLCAyMDgsIDY3LCA2NSwgODIsIDc5LCA4NSwgODMsIDY5LCAyMDQsIDY3LCA2NSwgODIsIAorICAgIDc5LCA3OCwgMTI4LCA2NywgNjUsIDgyLCA3OSwgMjA2LCA2NywgNjUsIDgyLCA3MywgMjAzLCA2NywgNjUsIDgyLCA3MywgCisgICAgNjUsIDIwNiwgNjcsIDY1LCA4MiwgNjksIDg0LCAxMjgsIDY3LCA2NSwgODIsIDY5LCAyMTIsIDY3LCA2NSwgODIsIDE5NywgCisgICAgNjcsIDY1LCA4MiwgNjgsIDgzLCAxMjgsIDY3LCA2NSwgODIsIDY4LCAxMjgsIDY3LCA2NSwgODIsIDE5NiwgNjcsIDY1LCAKKyAgICA4MiwgMTI4LCA2NywgNjUsIDIxMCwgNjcsIDY1LCA4MCwgODUsIDIxMiwgNjcsIDY1LCA4MCwgODQsIDczLCA4NiwgNjksIAorICAgIDEyOCwgNjcsIDY1LCA4MCwgODIsIDczLCA2NywgNzksIDgyLCA3OCwgMTI4LCA2NywgNjUsIDgwLCA3OSwgMTI4LCA2NywgCisgICAgNjUsIDgwLCA3MywgODQsIDY1LCA3NiwgMTI4LCA2NywgNjUsIDc4LCA4NCwgNzMsIDc2LCA3NiwgNjUsIDg0LCA3MywgNzksIAorICAgIDIwNiwgNjcsIDY1LCA3OCwgMTk5LCA2NywgNjUsIDc4LCA2OCwgODksIDEyOCwgNjcsIDY1LCA3OCwgNjgsIDgyLCA2NSwgCisgICAgNjYsIDczLCA3OCwgNjgsIDg1LCAxMjgsIDY3LCA2NSwgNzgsIDY4LCA4MiwgNjUsIDY2LCA3MywgNzgsIDY4LCAyMTMsIDY3LCAKKyAgICA2NSwgNzgsIDY4LCA4MiwgNjUsIDEyOCwgNjcsIDY1LCA3OCwgNjgsIDgyLCAxOTMsIDY3LCA2NSwgNzgsIDY3LCA2OSwgODIsIAorICAgIDEyOCwgNjcsIDY1LCA3OCwgNjcsIDY5LCA3NiwgNzYsIDY1LCA4NCwgNzMsIDc5LCAyMDYsIDY3LCA2NSwgNzgsIDY3LCA2OSwgCisgICAgNzYsIDEyOCwgNjcsIDY1LCA3OCwgNjcsIDY5LCAyMDQsIDY3LCA2NSwgNzgsIDEyOCwgNjcsIDY1LCA3NywgNzgsIDg1LCAKKyAgICAxOTUsIDY3LCA2NSwgNzcsIDY5LCA4MiwgNjUsIDEyOCwgNjcsIDY1LCA3NywgNjksIDc2LCAxMjgsIDY3LCA2NSwgNzYsIAorICAgIDg5LCA2NSwgMTI4LCA2NywgNjUsIDc2LCA4OSwgMTkzLCA2NywgNjUsIDc2LCA4OCwgMTI4LCA2NywgNjUsIDc2LCA3NiwgCisgICAgMTI4LCA2NywgNjUsIDc2LCA2OSwgNzgsIDY4LCA2NSwgODIsIDEyOCwgNjcsIDY1LCA3NiwgNjcsIDEyOCwgNjcsIDY1LCAKKyAgICA3NSwgODIsIDY1LCAxMjgsIDY3LCA2NSwgNzUsIDE5NywgNjcsIDY1LCA3MywgMTI4LCA2NywgNjUsIDY5LCA4MywgODUsIAorICAgIDgyLCA2NSwgMTI4LCA2NywgNjUsIDY4LCA4NSwgNjcsIDY5LCA4NSwgODMsIDEyOCwgNjcsIDY1LCA2OCwgMTkzLCA2NywgCisgICAgNjUsIDY3LCA4NCwgODUsIDgzLCAxMjgsIDY3LCA2NSwgNjYsIDc2LCA2OSwgODcsIDY1LCA4OSwgMTI4LCA2NywgNjUsIDY2LCAKKyAgICA2NiwgNjUsIDcxLCA2OSwgNDUsIDg0LCA4MiwgNjksIDY5LCAxMjgsIDY3LCA2NSwgNjUsIDc4LCA3MSwgMTI4LCA2NywgNjUsIAorICAgIDY1LCA3MywgMTI4LCA2NywgMTkzLCA2NywgNDgsIDUwLCA1MiwgMTI4LCA2NywgNDgsIDUwLCA1MSwgMTI4LCA2NywgNDgsIAorICAgIDUwLCA1MCwgMTI4LCA2NywgNDgsIDUwLCA0OSwgMTI4LCA2NywgNDgsIDUwLCA0OCwgMTI4LCA2NywgNDgsIDQ5LCA1NywgCisgICAgMTI4LCA2NywgNDgsIDQ5LCA1NiwgMTI4LCA2NywgNDgsIDQ5LCA1NSwgMTI4LCA2NywgNDgsIDQ5LCA1NCwgMTI4LCA2NywgCisgICAgNDgsIDQ5LCA1MywgMTI4LCA2NywgNDgsIDQ5LCA1MiwgMTI4LCA2NywgNDgsIDQ5LCA1MSwgMTI4LCA2NywgNDgsIDQ5LCAKKyAgICA1MCwgMTI4LCA2NywgNDgsIDQ5LCA0OSwgMTI4LCA2NywgNDgsIDQ5LCA0OCwgNjUsIDEyOCwgNjcsIDQ4LCA0OSwgNDgsIAorICAgIDEyOCwgNjcsIDQ4LCA0OCwgNTcsIDEyOCwgNjcsIDQ4LCA0OCwgNTYsIDEyOCwgNjcsIDQ4LCA0OCwgNTUsIDEyOCwgNjcsIAorICAgIDQ4LCA0OCwgNTQsIDEyOCwgNjcsIDQ4LCA0OCwgNTMsIDEyOCwgNjcsIDQ4LCA0OCwgNTIsIDEyOCwgNjcsIDQ4LCA0OCwgCisgICAgNTEsIDEyOCwgNjcsIDQ4LCA0OCwgNTAsIDY3LCAxMjgsIDY3LCA0OCwgNDgsIDUwLCA2NiwgMTI4LCA2NywgNDgsIDQ4LCAKKyAgICA1MCwgNjUsIDEyOCwgNjcsIDQ4LCA0OCwgNTAsIDEyOCwgNjcsIDQ4LCA0OCwgNDksIDEyOCwgNjcsIDQ1LCA4MywgNzMsIAorICAgIDc3LCA4MCwgNzYsIDczLCA3MCwgNzMsIDY5LCAxOTYsIDY3LCA0NSwgNTEsIDU3LCAxMjgsIDY3LCA0NSwgNDksIDU2LCAKKyAgICAxMjgsIDY2LCA5MCwgODUsIDc4LCAxOTksIDY2LCA5MCwgNzIsIDIwMSwgNjYsIDg5LCA2OSwgNzYsIDc5LCA4MiwgODUsIAorICAgIDgzLCA4MywgNzMsIDY1LCA3OCwgNDUsIDg1LCA3NSwgODIsIDY1LCA3MywgNzgsIDczLCA2NSwgMjA2LCA2NiwgODgsIDcxLCAKKyAgICAxMjgsIDY2LCA4NywgNzMsIDEyOCwgNjYsIDg3LCA2OSwgNjksIDEyOCwgNjYsIDg3LCA2OSwgMTI4LCA2NiwgODcsIDY1LCAKKyAgICAxMjgsIDY2LCA4NSwgODUsIDc3LCA3MywgODMsIDcyLCAxMjgsIDY2LCA4NSwgODQsIDg0LCA3OSwgNzgsIDEyOCwgNjYsIAorICAgIDg1LCAyMTIsIDY2LCA4NSwgODMsIDg0LCAyMTEsIDY2LCA4NSwgODMsIDIxMiwgNjYsIDg1LCA4MywgODMsIDg5LCA2OSwgCisgICAgODIsIDg1LCAxMjgsIDY2LCA4NSwgMjExLCA2NiwgODUsIDgyLCAyMTMsIDY2LCA4NSwgODIsIDUwLCAxMjgsIDY2LCA4NSwgCisgICAgMjEwLCA2NiwgODUsIDc5LCA4OCwgMTI4LCA2NiwgODUsIDc5LCA4MCwgMTI4LCA2NiwgODUsIDc4LCA3OCwgMjE3LCA2NiwgCisgICAgODUsIDc4LCA3MSwgMTI4LCA2NiwgODUsIDc3LCA4MCwgMjE3LCA2NiwgODUsIDc2LCA4NSwgNzEsIDEyOCwgNjYsIDg1LCAKKyAgICA3NiwgODUsIDE5OSwgNjYsIDg1LCA3NiwgNzYsIDgzLCA2OSwgODksIDY5LCAxMjgsIDY2LCA4NSwgNzYsIDc2LCAyMTEsIAorICAgIDY2LCA4NSwgNzYsIDc2LCA2OSwgODQsIDEyOCwgNjYsIDg1LCA3NiwgNzYsIDY5LCAyMTIsIDY2LCA4NSwgNzYsIDc2LCAKKyAgICAxMjgsIDY2LCA4NSwgNzYsIDY2LCAxMjgsIDY2LCA4NSwgNzUsIDg5LCAxMjgsIDY2LCA4NSwgNzMsIDc2LCA2OCwgNzMsIAorICAgIDc4LCA3MSwgODMsIDEyOCwgNjYsIDg1LCA3MywgNzYsIDY4LCA3MywgNzgsIDcxLCAxMjgsIDY2LCA4NSwgNzIsIDczLCAKKyAgICAxOTYsIDY2LCA4NSwgNzEsIDczLCA3OCwgNjksIDgzLCAxOTcsIDY2LCA4NSwgNzEsIDEyOCwgNjYsIDg1LCA3MCwgNzAsIAorICAgIDY1LCA3NiwgNzksIDEyOCwgNjYsIDg1LCA2NywgNzUsIDc2LCA2OSwgMTI4LCA2NiwgODMsIDg0LCA2NSwgODIsIDEyOCwgCisgICAgNjYsIDgzLCA3NSwgODUsIDIxMCwgNjYsIDgzLCA3NSwgNjUsIDE3MywgNjYsIDgzLCA2OCwgODUsIDIxMSwgNjYsIDgyLCAKKyAgICA4NSwgODMsIDcyLCAxMjgsIDY2LCA4MiwgODUsIDgzLCAyMDAsIDY2LCA4MiwgNzksIDc4LCA5MCwgNjksIDEyOCwgNjYsIAorICAgIDgyLCA3OSwgNzUsIDY5LCAyMDYsIDY2LCA4MiwgNzksIDY1LCAxOTYsIDY2LCA4MiwgNzMsIDgzLCA4NCwgNzYsIDY5LCAKKyAgICAxMjgsIDY2LCA4MiwgNzMsIDcxLCA3MiwgODQsIDc4LCA2OSwgODMsIDIxMSwgNjYsIDgyLCA3MywgNjksIDcwLCA2NywgNjUsIAorICAgIDgzLCA2OSwgMTI4LCA2NiwgODIsIDczLCA2OCwgNzEsIDE5NywgNjYsIDgyLCA3MywgNjgsIDE5NywgNjYsIDgyLCA3MywgCisgICAgNjcsIDc1LCAxMjgsIDY2LCA4MiwgNjksIDg2LCA3MywgODMsIDEyOCwgNjYsIDgyLCA2OSwgODYsIDY5LCA0NSwgNzcsIDY1LCAKKyAgICA2NywgODIsIDc5LCA3OCwgMTI4LCA2NiwgODIsIDY5LCA4NiwgMTk3LCA2NiwgODIsIDY5LCA2NSwgODQsIDIwMCwgNjYsIAorICAgIDgyLCA2OSwgNjUsIDc1LCA4NCwgNzIsIDgyLCA3OSwgODUsIDcxLCA3MiwgMTI4LCA2NiwgODIsIDY5LCA2NSwgNjgsIDEyOCwgCisgICAgNjYsIDgyLCA2OCwgMTkzLCA2NiwgODIsIDY1LCA3OCwgNjcsIDcyLCA3MywgNzgsIDE5OSwgNjYsIDgyLCA2NSwgNzgsIDY3LCAKKyAgICA3MiwgMTI4LCA2NiwgODIsIDY1LCA3OCwgNjcsIDIwMCwgNjYsIDgyLCA2NSwgNzUsIDY3LCA2OSwgODQsIDEyOCwgNjYsIAorICAgIDgyLCA2NSwgNjcsIDc1LCA2OSwgODQsIDY5LCAxOTYsIDY2LCA4MiwgNjUsIDY3LCA3NSwgNjksIDIxMiwgNjYsIDgyLCA2NSwgCisgICAgNjcsIDY5LCAxMjgsIDY2LCA4MSwgMTI4LCA2NiwgNzksIDg5LCAxMjgsIDY2LCA3OSwgODcsIDg0LCA3MywgNjksIDEyOCwgCisgICAgNjYsIDc5LCA4NywgODQsIDczLCAxOTcsIDY2LCA3OSwgODcsIDc2LCA3MywgNzgsIDcxLCAxMjgsIDY2LCA3OSwgODcsIDc2LCAKKyAgICAxMjgsIDY2LCA3OSwgODcsIDczLCA3OCwgMTk5LCA2NiwgNzksIDIxNSwgNjYsIDc5LCA4NSwgODEsIDg1LCA2OSwgODQsIAorICAgIDEyOCwgNjYsIDc5LCA4NSwgNzgsIDY4LCA2NSwgODIsIDIxNywgNjYsIDc5LCA4NCwgODQsIDc5LCA3NywgNDUsIDc2LCA3MywgCisgICAgNzEsIDcyLCA4NCwgNjksIDE5NiwgNjYsIDc5LCA4NCwgODQsIDc5LCA3NywgMTI4LCA2NiwgNzksIDg0LCA4NCwgNzksIAorICAgIDIwNSwgNjYsIDc5LCA4NCwgODQsIDc2LCA2OSwgMTI4LCA2NiwgNzksIDg0LCA4NCwgNzYsIDE5NywgNjYsIDc5LCA4NCwgCisgICAgMjAwLCA2NiwgNzksIDgyLCA4NSwgODQsIDc5LCAxMjgsIDY2LCA3OSwgODIsIDY1LCA4OCwgNDUsIDUxLCAxMjgsIDY2LCAKKyAgICA3OSwgODIsIDY1LCA4OCwgNDUsIDUwLCAxMjgsIDY2LCA3OSwgODIsIDY1LCA4OCwgMTI4LCA2NiwgNzksIDc5LCA4NCwgODMsIAorICAgIDEyOCwgNjYsIDc5LCA3OSwgODQsIDEyOCwgNjYsIDc5LCA3OSwgNzcsIDY5LCA4MiwgNjUsIDc4LCA3MSwgMTI4LCA2NiwgCisgICAgNzksIDc5LCA3NSwgODMsIDEyOCwgNjYsIDc5LCA3OSwgNzUsIDc3LCA2NSwgODIsIDc1LCAxMjgsIDY2LCA3OSwgNzksIDc1LCAKKyAgICA3NywgNjUsIDgyLCAyMDMsIDY2LCA3OSwgNzgsIDY5LCAxMjgsIDY2LCA3OSwgNzcsIDY2LCAxMjgsIDY2LCA3OSwgNzYsIAorICAgIDg0LCAxMjgsIDY2LCA3OSwgNzYsIDIxMiwgNjYsIDc5LCA2OCwgODksIDEyOCwgNjYsIDc5LCA2NSwgODIsIDEyOCwgNjYsIAorICAgIDc5LCA2NSwgMTI4LCA2NiwgNzYsIDg1LCA2OSwgMTI4LCA2NiwgNzYsIDg1LCAxOTcsIDY2LCA3NiwgNzksIDg3LCA3MCwgCisgICAgNzMsIDgzLCA3MiwgMTI4LCA2NiwgNzYsIDc5LCA4MywgODMsIDc5LCA3NywgMTI4LCA2NiwgNzYsIDc5LCA3OSwgNjgsIAorICAgIDEyOCwgNjYsIDc2LCA3OSwgNzgsIDE5NiwgNjYsIDc2LCA3OSwgNjcsIDc1LCAxMjgsIDY2LCA3NiwgNjksIDc4LCA2OCwgCisgICAgNjksIDE5NiwgNjYsIDc2LCA2NSwgNzgsIDc1LCAxMjgsIDY2LCA3NiwgNjUsIDc4LCAyMDMsIDY2LCA3NiwgNjUsIDY4LCAKKyAgICAxOTcsIDY2LCA3NiwgNjUsIDY3LCA3NSwgNzAsIDc5LCA3OSwgMjEyLCA2NiwgNzYsIDY1LCA2NywgNzUsIDQ1LCA3NiwgNjksIAorICAgIDg0LCA4NCwgNjksIDIxMCwgNjYsIDc2LCA2NSwgNjcsIDc1LCA0NSwgNzAsIDY5LCA2NSwgODQsIDcyLCA2OSwgODIsIDY5LCAKKyAgICAxOTYsIDY2LCA3NiwgNjUsIDY3LCA3NSwgMTI4LCA2NiwgNzUsIDY1LCAxNzMsIDY2LCA3MywgODQsIDg0LCA2OSwgODIsIAorICAgIDEyOCwgNjYsIDczLCA4NCwgNzMsIDc4LCAxOTksIDY2LCA3MywgODMsIDc3LCA4NSwgODQsIDIwMCwgNjYsIDczLCA4MywgCisgICAgNzcsIDczLCA3NiwgNzYsIDY1LCAyMDAsIDY2LCA3MywgODMsIDcyLCA3OSwgODAsIDEyOCwgNjYsIDczLCA4MywgNjksIDY3LCAKKyAgICA4NCwgNzMsIDc4LCAxOTksIDY2LCA3MywgODMsIDY1LCA3MiwgMTI4LCA2NiwgNzMsIDgyLCA4NSwgMTI4LCA2NiwgNzMsIAorICAgIDgyLCA4NCwgNzIsIDY4LCA2NSwgMjE3LCA2NiwgNzMsIDgyLCA3MSwgNjUsIDEyOCwgNjYsIDczLCA4MiwgNjgsIDEyOCwgCisgICAgNjYsIDczLCA3OSwgNzIsIDY1LCA5MCwgNjUsIDgyLCAxOTYsIDY2LCA3MywgNzgsIDc5LCA2NywgODUsIDc2LCA2NSwgMjEwLCAKKyAgICA2NiwgNzMsIDc4LCA2OCwgNzMsIDc4LCAxOTksIDY2LCA3MywgNzgsIDY4LCA3MywgMTI4LCA2NiwgNzMsIDc4LCA2NSwgODIsIAorICAgIDIxNywgNjYsIDczLCA3NiwgNzYsIDczLCA2NSwgODIsIDY4LCA4MywgMTI4LCA2NiwgNzMsIDc2LCA2NSwgNjYsIDczLCA2NSwgCisgICAgMjA0LCA2NiwgNzMsIDc1LCA3MywgNzgsIDczLCAxMjgsIDY2LCA3MywgNzEsIDEyOCwgNjYsIDczLCAxOTksIDY2LCA3MywgCisgICAgNjksIDg0LCAxMjgsIDY2LCA3MywgNjgsIDY5LCA3OCwgODQsIDY1LCAyMDQsIDY2LCA3MywgNjgsIDY1LCA3NSwgODUsIDc5LCAKKyAgICAyMDYsIDY2LCA3MywgNjcsIDg5LCA2NywgNzYsIDczLCA4MywgODQsIDEyOCwgNjYsIDczLCA2NywgODksIDY3LCA3NiwgNjksIAorICAgIDgzLCAxMjgsIDY2LCA3MywgNjcsIDg5LCA2NywgNzYsIDY5LCAxMjgsIDY2LCA3MywgNjcsIDY5LCA4MCwgODMsIDEyOCwgCisgICAgNjYsIDczLCA2NiwgNzYsIDY5LCA0NSwgNjcsIDgyLCA2OSwgMTk3LCA2NiwgNzMsIDY2LCAxMjgsIDY2LCAyMDEsIDY2LCAKKyAgICA3MiwgODUsIDEyOCwgNjYsIDcyLCA3OSwgNzksIDEyOCwgNjYsIDcyLCA3OSwgMTI4LCA2NiwgNzIsIDczLCAxMjgsIDY2LCAKKyAgICA3MiwgNjksIDg0LCA3MiwgMTI4LCA2NiwgNzIsIDY5LCA2OSwgMTI4LCA2NiwgNzIsIDY5LCAxMjgsIDY2LCA3MiwgNjUsIAorICAgIDg0LCA4NCwgNzMsIDgwLCA4MiwgNzksIDc2LCAyMTMsIDY2LCA3MiwgNjUsIDc3LCAxMjgsIDY2LCA3MiwgNjUsIDEyOCwgCisgICAgNjYsIDY5LCA4OSwgODksIDY1LCA3NiwgMTI4LCA2NiwgNjksIDg4LCAxMjgsIDY2LCA2OSwgODYsIDY5LCA4MiwgNjUsIDcxLCAKKyAgICA2OSwgMTI4LCA2NiwgNjksIDg0LCA4NywgNjksIDY5LCA3OCwgMTI4LCA2NiwgNjksIDg0LCA4NywgNjksIDY5LCAyMDYsIAorICAgIDY2LCA2OSwgODQsIDcyLCAxMjgsIDY2LCA2OSwgODQsIDY1LCAxMjgsIDY2LCA2OSwgODQsIDE5MywgNjYsIDY5LCAyMTIsIAorICAgIDY2LCA2OSwgODMsIDczLCA2OCwgMTk3LCA2NiwgNjksIDgyLCA3NSwgNjUsIDc4LCA2NSwgMjA2LCA2NiwgNjksIDgyLCA2NiwgCisgICAgNjksIDIxMCwgNjYsIDY5LCA4MCwgMTI4LCA2NiwgNjksIDc5LCA4MiwgMTk1LCA2NiwgNjksIDc4LCA5MCwgNjksIDc4LCAKKyAgICAxOTcsIDY2LCA2OSwgNzgsIDg0LCAyMDcsIDY2LCA2OSwgNzgsIDY4LCA2OSwgMTI4LCA2NiwgNjksIDc4LCA2OCwgMTI4LCAKKyAgICA2NiwgNjksIDIwNiwgNjYsIDY5LCA3NiwgODQsIDEyOCwgNjYsIDY5LCA3NiwgMjEyLCA2NiwgNjksIDc2LCA3OSwgMjE1LCAKKyAgICA2NiwgNjksIDc2LCA3NiwgMTI4LCA2NiwgNjksIDc2LCAyMDQsIDY2LCA2OSwgNzYsIDcxLCA4NCwgNzIsIDc5LCAyMTAsIAorICAgIDY2LCA2OSwgNzMsIDg0LCA3MiwgMTI4LCA2NiwgNjksIDcyLCA3MywgNzgsIDE5NiwgNjYsIDY5LCA3MiwgNjksIDcyLCAKKyAgICAxMjgsIDY2LCA2OSwgNzIsIDY5LCAyMDAsIDY2LCA2OSwgNzIsIDEyOCwgNjYsIDY5LCAyMDAsIDY2LCA2OSwgNzEsIDczLCAKKyAgICA3OCwgNzgsIDczLCA3OCwgNzEsIDEyOCwgNjYsIDY5LCA3MSwgNzMsIDc4LCA3OCwgNjksIDgyLCAxMjgsIDY2LCA2OSwgNzEsIAorICAgIDczLCAyMDYsIDY2LCA2OSwgNzAsIDc5LCA4MiwgMTk3LCA2NiwgNjksIDY5LCA4NCwgNzYsIDY5LCAxMjgsIDY2LCA2OSwgCisgICAgNjksIDg0LCA2NSwgMTI4LCA2NiwgNjksIDY5LCAyMTAsIDY2LCA2OSwgNjksIDcyLCA3MywgODYsIDY5LCAxMjgsIDY2LCAKKyAgICA2OSwgNjksIDcyLCAxMjgsIDY2LCA2OSwgNjksIDIwMCwgNjYsIDY5LCA2NywgNjUsIDg1LCA4MywgNjksIDEyOCwgNjYsIAorICAgIDY5LCA2NSwgODYsIDY5LCAyMTAsIDY2LCA2OSwgNjUsIDg0LCA3MywgNzgsIDE5OSwgNjYsIDY5LCA2NSwgODQsIDEyOCwgCisgICAgNjYsIDY5LCA2NSwgMjEwLCA2NiwgNjksIDY1LCA3OCwgMTI4LCA2NiwgNjksIDY1LCA3NywgNjksIDE5NiwgNjYsIDY3LCAKKyAgICA2NSwgNjgsIDEyOCwgNjYsIDY3LCA2NSwgMTk2LCA2NiwgNjYsIDg5LCA4OCwgMTI4LCA2NiwgNjYsIDg5LCA4NCwgMTI4LCAKKyAgICA2NiwgNjYsIDg5LCA4MCwgMTI4LCA2NiwgNjYsIDg5LCAxMjgsIDY2LCA2NiwgODUsIDg4LCAxMjgsIDY2LCA2NiwgODUsIAorICAgIDg0LCAxMjgsIDY2LCA2NiwgODUsIDgyLCA4OCwgMTI4LCA2NiwgNjYsIDg1LCA4MiwgMTI4LCA2NiwgNjYsIDg1LCA4MCwgCisgICAgMTI4LCA2NiwgNjYsIDg1LCA3OSwgODgsIDEyOCwgNjYsIDY2LCA4NSwgNzksIDgwLCAxMjgsIDY2LCA2NiwgODUsIDc5LCAKKyAgICAxMjgsIDY2LCA2NiwgODUsIDEyOCwgNjYsIDY2LCA3OSwgODgsIDEyOCwgNjYsIDY2LCA3OSwgODQsIDEyOCwgNjYsIDY2LCAKKyAgICA3OSwgODAsIDEyOCwgNjYsIDY2LCA3OSwgMTI4LCA2NiwgNjYsIDczLCA4OCwgMTI4LCA2NiwgNjYsIDczLCA4MCwgMTI4LCAKKyAgICA2NiwgNjYsIDczLCA2OSwgODgsIDEyOCwgNjYsIDY2LCA3MywgNjksIDg0LCAxMjgsIDY2LCA2NiwgNzMsIDY5LCA4MCwgCisgICAgMTI4LCA2NiwgNjYsIDczLCA2OSwgMTI4LCA2NiwgNjYsIDczLCAxMjgsIDY2LCA2NiwgNjksIDg4LCAxMjgsIDY2LCA2NiwgCisgICAgNjksIDgwLCAxMjgsIDY2LCA2NiwgNjksIDY5LCAxMjgsIDY2LCA2NiwgNjksIDEyOCwgNjYsIDY2LCA2NSwgODgsIDEyOCwgCisgICAgNjYsIDY2LCA2NSwgODQsIDEyOCwgNjYsIDY2LCA2NSwgODAsIDEyOCwgNjYsIDY2LCA2NSwgNjUsIDEyOCwgNjYsIDY2LCAKKyAgICA2NSwgMTI4LCA2NiwgNjUsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA2NiwgNjUsIDg1LCAxMjgsIDY2LCA2NSwgODQsIAorICAgIDg0LCA2OSwgODIsIDg5LCAxMjgsIDY2LCA2NSwgODQsIDcyLCA4NCwgODUsIDY2LCAxMjgsIDY2LCA2NSwgODQsIDcyLCA2NSwgCisgICAgNzcsIDY1LCA4MywgNjUsIDg0LCAxMjgsIDY2LCA2NSwgODQsIDcyLCAxMjgsIDY2LCA2NSwgODQsIDIwMCwgNjYsIDY1LCAKKyAgICA4NCwgNjUsIDIwMywgNjYsIDY1LCA4MywgODMsIDY1LCAxMjgsIDY2LCA2NSwgODMsIDc1LCA2OSwgODQsIDY2LCA2NSwgNzYsIAogICAgIDIwNCwgNjYsIDY1LCA4MywgNzIsIDc1LCA3MywgMjEwLCA2NiwgNjUsIDgzLCA3MiwgMTI4LCA2NiwgNjUsIDgzLCA2OSwgCiAgICAgNjYsIDY1LCA3NiwgNzYsIDEyOCwgNjYsIDY1LCA4MywgNjksIDEyOCwgNjYsIDY1LCA4MywgMTk3LCA2NiwgNjUsIDgyLCAKICAgICA4MywgMTI4LCA2NiwgNjUsIDgyLCA4MiwgNzMsIDY5LCA4MiwgMTI4LCA2NiwgNjUsIDgyLCA4MiwgNjksIDc1LCA3MiwgCiAgICAgMTI4LCA2NiwgNjUsIDgyLCA4MiwgNjksIDY5LCAxMjgsIDY2LCA2NSwgODIsIDgyLCA2OSwgMTk3LCA2NiwgNjUsIDgyLCAKICAgICA3NiwgNzMsIDc4LCA2OSwgMTI4LCA2NiwgNjUsIDgyLCA3NiwgNjksIDg5LCAxMjgsIDY2LCA2NSwgODIsIDczLCA4OSwgNzksIAotICAgIDc5LCA4MywgNjUsIDc4LCAxMjgsIDY2LCA2NSwgODIsIDY2LCA2OSwgMjEwLCA2NiwgNjUsIDgyLCA2NSwgNTAsIDEyOCwgCi0gICAgNjYsIDY1LCAyMTAsIDY2LCA2NSwgNzgsIDg0LCA3OSwgNjcsIDEyOCwgNjYsIDY1LCA3OCwgNzUsIDc4LCA3OSwgODQsIAotICAgIDE5NywgNjYsIDY1LCA3OCwgNzUsIDEyOCwgNjYsIDY1LCA3OCwgMjAzLCA2NiwgNjUsIDc4LCA2OCwgMTI4LCA2NiwgNjUsIAotICAgIDc4LCA2NSwgNzgsIDY1LCAxMjgsIDY2LCA2NSwgNzgsIDUwLCAxMjgsIDY2LCA2NSwgNzgsIDE3OCwgNjYsIDY1LCA3NywgCi0gICAgNjYsIDc5LCA3OSwgODMsIDEyOCwgNjYsIDY1LCA3NywgNjYsIDc5LCA3OSwgMTI4LCA2NiwgNjUsIDc2LCA4NSwgNjgsIDY1LCAKLSAgICAxMjgsIDY2LCA2NSwgNzYsIDc2LCA3OSwgMjEyLCA2NiwgNjUsIDc2LCA3NiwgNzksIDc5LCA3OCwgNDUsIDgzLCA4MCwgNzksIAotICAgIDc1LCA2OSwgMTk2LCA2NiwgNjUsIDc2LCA3NiwgNzksIDc5LCA3OCwgMTI4LCA2NiwgNjUsIDc2LCA2NSwgNzEsIDEyOCwgCi0gICAgNjYsIDY1LCA3NiwgMTI4LCA2NiwgNjUsIDIwNCwgNjYsIDY1LCA3MywgODIsIDc1LCA2NSwgNzgsIDEyOCwgNjYsIDY1LCAKLSAgICA3MywgNzcsIDY1LCA3MywgMTI4LCA2NiwgNjUsIDcyLCA4NCwgMTI4LCA2NiwgNjUsIDcyLCA3MywgODIsIDcxLCA3OSwgNzcsIAotICAgIDg1LCA3NSwgNzIsIDY1LCAxMjgsIDY2LCA2NSwgNzIsIDY1LCA4MiwgNTAsIDEyOCwgNjYsIDY1LCA3MSwgNzEsIDY1LCA3MSwgCi0gICAgMTk3LCA2NiwgNjUsIDcxLCA2NSwgMTI4LCA2NiwgNjUsIDcxLCA1MSwgMTI4LCA2NiwgNjUsIDE5OSwgNjYsIDY1LCA2OCwgCi0gICAgNzEsIDY5LCA4MiwgMTI4LCA2NiwgNjUsIDY4LCA3MSwgNjksIDEyOCwgNjYsIDY1LCA2OCwgMTI4LCA2NiwgNjUsIDY3LCAKLSAgICA4NCwgODIsIDczLCA2NSwgMjA2LCA2NiwgNjUsIDY3LCA3NSwgODMsIDgwLCA2NSwgNjcsIDY5LCAxMjgsIDY2LCA2NSwgNjcsIAotICAgIDc1LCA4MywgNzYsIDY1LCA4MywgNzIsIDEyOCwgNjYsIDY1LCA2NywgNzUsIDgzLCA3NiwgNjUsIDgzLCAyMDAsIDY2LCA2NSwgCi0gICAgNjcsIDc1LCA3MiwgNjUsIDc4LCAxOTYsIDY2LCA2NSwgNjcsIDc1LCA0NSwgODQsIDczLCA3NiwgODQsIDY5LCAxOTYsIDY2LCAKLSAgICA2NSwgNjcsIDc1LCAxMjgsIDY2LCA2NSwgNjcsIDIwMywgNjYsIDY1LCA2NiwgODksIDEyOCwgNjYsIDY1LCA2NiwgMjE3LCAKLSAgICA2NiwgNjUsIDY1LCA4MiwgNjksIDgyLCA4NSwgMTI4LCA2NiwgNTEsIDQ4LCA1MywgMTI4LCA2NiwgNTAsIDUzLCA1NywgCi0gICAgMTI4LCA2NiwgNTAsIDUzLCA1NiwgMTI4LCA2NiwgNTAsIDUzLCA1NSwgMTI4LCA2NiwgNTAsIDUzLCA1NCwgMTI4LCA2NiwgCi0gICAgNTAsIDUzLCA1MywgMTI4LCA2NiwgNTAsIDUzLCAxODAsIDY2LCA1MCwgNTMsIDUxLCAxMjgsIDY2LCA1MCwgNTMsIDUwLCAKLSAgICAxMjgsIDY2LCA1MCwgNTMsIDQ5LCAxMjgsIDY2LCA1MCwgNTMsIDQ4LCAxMjgsIDY2LCA1MCwgNTIsIDU3LCAxMjgsIDY2LCAKLSAgICA1MCwgNTIsIDU2LCAxMjgsIDY2LCA1MCwgNTIsIDE4MywgNjYsIDUwLCA1MiwgNTQsIDEyOCwgNjYsIDUwLCA1MiwgNTMsIAotICAgIDEyOCwgNjYsIDUwLCA1MiwgMTc5LCA2NiwgNTAsIDUyLCAxNzgsIDY2LCA1MCwgNTIsIDE3NywgNjYsIDUwLCA1MiwgMTc2LCAKLSAgICA2NiwgNTAsIDUxLCA1NCwgMTI4LCA2NiwgNTAsIDUxLCA1MiwgMTI4LCA2NiwgNTAsIDUxLCAxNzksIDY2LCA1MCwgNTEsIAotICAgIDUwLCAxMjgsIDY2LCA1MCwgNTEsIDE3NywgNjYsIDUwLCA1MSwgMTc2LCA2NiwgNTAsIDUwLCA1NywgMTI4LCA2NiwgNTAsIAotICAgIDUwLCA1NiwgMTI4LCA2NiwgNTAsIDUwLCA1NSwgMTI4LCA2NiwgNTAsIDUwLCA1NCwgMTI4LCA2NiwgNTAsIDUwLCAxODEsIAotICAgIDY2LCA1MCwgNTAsIDUwLCAxMjgsIDY2LCA1MCwgNTAsIDQ5LCAxMjgsIDY2LCA1MCwgNTAsIDE3NiwgNjYsIDUwLCA0OSwgCi0gICAgNTcsIDEyOCwgNjYsIDUwLCA0OSwgNTYsIDEyOCwgNjYsIDUwLCA0OSwgNTUsIDEyOCwgNjYsIDUwLCA0OSwgNTQsIDEyOCwgCi0gICAgNjYsIDUwLCA0OSwgNTMsIDEyOCwgNjYsIDUwLCA0OSwgNTIsIDEyOCwgNjYsIDUwLCA0OSwgNTEsIDEyOCwgNjYsIDUwLCAKLSAgICA0OSwgNTAsIDEyOCwgNjYsIDUwLCA0OSwgNDksIDEyOCwgNjYsIDUwLCA0OSwgNDgsIDEyOCwgNjYsIDUwLCA0OCwgNTcsIAotICAgIDEyOCwgNjYsIDUwLCA0OCwgNTYsIDEyOCwgNjYsIDUwLCA0OCwgNTUsIDEyOCwgNjYsIDUwLCA0OCwgNTQsIDEyOCwgNjYsIAotICAgIDUwLCA0OCwgNTMsIDEyOCwgNjYsIDUwLCA0OCwgNTIsIDEyOCwgNjYsIDUwLCA0OCwgNTEsIDEyOCwgNjYsIDUwLCA0OCwgCi0gICAgNTAsIDEyOCwgNjYsIDUwLCA0OCwgNDksIDEyOCwgNjYsIDUwLCA0OCwgNDgsIDEyOCwgNjYsIDQ5LCA1NywgMTc3LCA2NiwgCi0gICAgNDksIDU3LCA0OCwgMTI4LCA2NiwgNDksIDU2LCA1NywgMTI4LCA2NiwgNDksIDU2LCA1MywgMTI4LCA2NiwgNDksIDU2LCAKLSAgICA1MiwgMTI4LCA2NiwgNDksIDU2LCA1MSwgMTI4LCA2NiwgNDksIDU2LCA1MCwgMTI4LCA2NiwgNDksIDU2LCA0OSwgMTI4LCAKLSAgICA2NiwgNDksIDU2LCA0OCwgMTI4LCA2NiwgNDksIDU1LCA1NywgMTI4LCA2NiwgNDksIDU1LCA1NiwgMTI4LCA2NiwgNDksIAotICAgIDU1LCA1NSwgMTI4LCA2NiwgNDksIDU1LCAxODIsIDY2LCA0OSwgNTUsIDUyLCAxMjgsIDY2LCA0OSwgNTUsIDE3OSwgNjYsIAotICAgIDQ5LCA1NSwgNTAsIDEyOCwgNjYsIDQ5LCA1NSwgNDksIDEyOCwgNjYsIDQ5LCA1NSwgNDgsIDEyOCwgNjYsIDQ5LCA1NCwgCi0gICAgNTcsIDEyOCwgNjYsIDQ5LCA1NCwgNTYsIDEyOCwgNjYsIDQ5LCA1NCwgNTUsIDEyOCwgNjYsIDQ5LCA1NCwgNTQsIDEyOCwgCi0gICAgNjYsIDQ5LCA1NCwgNTMsIDEyOCwgNjYsIDQ5LCA1NCwgNTIsIDEyOCwgNjYsIDQ5LCA1NCwgMTc5LCA2NiwgNDksIDU0LCAKLSAgICAxNzgsIDY2LCA0OSwgNTQsIDQ5LCAxMjgsIDY2LCA0OSwgNTQsIDQ4LCAxMjgsIDY2LCA0OSwgNTMsIDE4NSwgNjYsIDQ5LCAKLSAgICA1MywgNTYsIDEyOCwgNjYsIDQ5LCA1MywgNTUsIDEyOCwgNjYsIDQ5LCA1MywgMTgyLCA2NiwgNDksIDUzLCA1MywgMTI4LCAKLSAgICA2NiwgNDksIDUzLCA1MiwgMTI4LCA2NiwgNDksIDUzLCA1MSwgMTI4LCA2NiwgNDksIDUzLCA1MCwgMTI4LCA2NiwgNDksIAotICAgIDUzLCAxNzcsIDY2LCA0OSwgNTMsIDQ4LCAxMjgsIDY2LCA0OSwgNTIsIDU0LCAxMjgsIDY2LCA0OSwgNTIsIDE4MSwgNjYsIAotICAgIDQ5LCA1MiwgNTAsIDEyOCwgNjYsIDQ5LCA1MiwgMTc3LCA2NiwgNDksIDUyLCAxNzYsIDY2LCA0OSwgNTEsIDE4MSwgNjYsIAotICAgIDQ5LCA1MSwgMTc5LCA2NiwgNDksIDUxLCA1MCwgMTI4LCA2NiwgNDksIDUxLCAxNzcsIDY2LCA0OSwgNTEsIDE3NiwgNjYsIAotICAgIDQ5LCA1MCwgMTg0LCA2NiwgNDksIDUwLCAxODMsIDY2LCA0OSwgNTAsIDE4MSwgNjYsIDQ5LCA1MCwgMTc5LCA2NiwgNDksIAotICAgIDUwLCAxNzgsIDY2LCA0OSwgNTAsIDE3NywgNjYsIDQ5LCA1MCwgMTc2LCA2NiwgNDksIDQ4LCA1NywgMjA1LCA2NiwgNDksIAotICAgIDQ4LCA1NywgMTk4LCA2NiwgNDksIDQ4LCA1NiwgMjA1LCA2NiwgNDksIDQ4LCA1NiwgMTk4LCA2NiwgNDksIDQ4LCA1NSwgCi0gICAgMjA1LCA2NiwgNDksIDQ4LCA1NSwgMTk4LCA2NiwgNDksIDQ4LCA1NCwgMjA1LCA2NiwgNDksIDQ4LCA1NCwgMTk4LCA2NiwgCi0gICAgNDksIDQ4LCA1MywgMjA1LCA2NiwgNDksIDQ4LCA1MywgMTk4LCA2NiwgNDksIDQ4LCAxODEsIDY2LCA0OSwgNDgsIDE4MCwgCi0gICAgNjYsIDQ5LCA0OCwgMTc4LCA2NiwgNDksIDQ4LCAxNzYsIDY2LCA0OCwgNTcsIDE3NywgNjYsIDQ4LCA1NywgMTc2LCA2NiwgCi0gICAgNDgsIDU2LCA1NywgMTI4LCA2NiwgNDgsIDU2LCAxODMsIDY2LCA0OCwgNTYsIDU0LCAxMjgsIDY2LCA0OCwgNTYsIDE4MSwgCi0gICAgNjYsIDQ4LCA1NiwgNTEsIDEyOCwgNjYsIDQ4LCA1NiwgNTAsIDEyOCwgNjYsIDQ4LCA1NiwgMTc3LCA2NiwgNDgsIDU2LCAKLSAgICAxNzYsIDY2LCA0OCwgNTUsIDU3LCAxMjgsIDY2LCA0OCwgNTUsIDE4NCwgNjYsIDQ4LCA1NSwgMTgzLCA2NiwgNDgsIDU1LCAKLSAgICAxODIsIDY2LCA0OCwgNTUsIDE4MSwgNjYsIDQ4LCA1NSwgMTgwLCA2NiwgNDgsIDU1LCAxNzksIDY2LCA0OCwgNTUsIDE3OCwgCi0gICAgNjYsIDQ4LCA1NSwgMTc3LCA2NiwgNDgsIDU1LCAxNzYsIDY2LCA0OCwgNTQsIDE4NSwgNjYsIDQ4LCA1NCwgMTg0LCA2NiwgCi0gICAgNDgsIDU0LCAxODMsIDY2LCA0OCwgNTQsIDE4MiwgNjYsIDQ4LCA1NCwgMTgxLCA2NiwgNDgsIDU0LCA1MiwgMTI4LCA2NiwgCi0gICAgNDgsIDU0LCA1MSwgMTI4LCA2NiwgNDgsIDU0LCAxNzgsIDY2LCA0OCwgNTQsIDE3NywgNjYsIDQ4LCA1NCwgMTc2LCA2NiwgCi0gICAgNDgsIDUzLCAxODUsIDY2LCA0OCwgNTMsIDE4NCwgNjYsIDQ4LCA1MywgMTgzLCA2NiwgNDgsIDUzLCA1NCwgMTI4LCA2NiwgCi0gICAgNDgsIDUzLCAxODEsIDY2LCA0OCwgNTMsIDE4MCwgNjYsIDQ4LCA1MywgMTc5LCA2NiwgNDgsIDUzLCAxNzgsIDY2LCA0OCwgCi0gICAgNTMsIDE3NywgNjYsIDQ4LCA1MywgMTc2LCA2NiwgNDgsIDUyLCA1NywgMTI4LCA2NiwgNDgsIDUyLCAxODQsIDY2LCA0OCwgCi0gICAgNTIsIDU1LCAxMjgsIDY2LCA0OCwgNTIsIDE4MiwgNjYsIDQ4LCA1MiwgMTgxLCA2NiwgNDgsIDUyLCAxODAsIDY2LCA0OCwgCi0gICAgNTIsIDE3OSwgNjYsIDQ4LCA1MiwgMTc4LCA2NiwgNDgsIDUyLCAxNzcsIDY2LCA0OCwgNTIsIDE3NiwgNjYsIDQ4LCA1MSwgCi0gICAgMTg1LCA2NiwgNDgsIDUxLCAxODQsIDY2LCA0OCwgNTEsIDE4MywgNjYsIDQ4LCA1MSwgMTgyLCA2NiwgNDgsIDUxLCA1MiwgCi0gICAgMTI4LCA2NiwgNDgsIDUxLCAxNzksIDY2LCA0OCwgNTEsIDE3OCwgNjYsIDQ4LCA1MSwgMTc3LCA2NiwgNDgsIDUxLCAxNzYsIAotICAgIDY2LCA0OCwgNTAsIDE4NSwgNjYsIDQ4LCA1MCwgMTg0LCA2NiwgNDgsIDUwLCAxODMsIDY2LCA0OCwgNTAsIDE4MiwgNjYsIAotICAgIDQ4LCA1MCwgMTgxLCA2NiwgNDgsIDUwLCAxODAsIDY2LCA0OCwgNTAsIDE3OSwgNjYsIDQ4LCA1MCwgNTAsIDEyOCwgNjYsIAotICAgIDQ4LCA1MCwgMTc3LCA2NiwgNDgsIDUwLCAxNzYsIDY2LCA0OCwgNDksIDU3LCAxMjgsIDY2LCA0OCwgNDksIDU2LCAxMjgsIAotICAgIDY2LCA0OCwgNDksIDE4MywgNjYsIDQ4LCA0OSwgMTgyLCA2NiwgNDgsIDQ5LCAxODEsIDY2LCA0OCwgNDksIDE4MCwgNjYsIAotICAgIDQ4LCA0OSwgMTc5LCA2NiwgNDgsIDQ5LCAxNzgsIDY2LCA0OCwgNDksIDE3NywgNjYsIDQ4LCA0OSwgMTc2LCA2NiwgNDgsIAotICAgIDQ4LCA1NywgMTI4LCA2NiwgNDgsIDQ4LCAxODUsIDY2LCA0OCwgNDgsIDU2LCAxMjgsIDY2LCA0OCwgNDgsIDE4NCwgNjYsIAotICAgIDQ4LCA0OCwgNTUsIDEyOCwgNjYsIDQ4LCA0OCwgMTgzLCA2NiwgNDgsIDQ4LCA1NCwgMTI4LCA2NiwgNDgsIDQ4LCAxODIsIAotICAgIDY2LCA0OCwgNDgsIDUzLCA2NSwgMTI4LCA2NiwgNDgsIDQ4LCA1MywgMTI4LCA2NiwgNDgsIDQ4LCAxODEsIDY2LCA0OCwgCi0gICAgNDgsIDUyLCAxMjgsIDY2LCA0OCwgNDgsIDE4MCwgNjYsIDQ4LCA0OCwgNTEsIDEyOCwgNjYsIDQ4LCA0OCwgMTc5LCA2NiwgCi0gICAgNDgsIDQ4LCA1MCwgMTI4LCA2NiwgNDgsIDQ4LCAxNzgsIDY2LCA0OCwgNDgsIDQ5LCAxMjgsIDY2LCA0OCwgNDgsIDE3NywgCi0gICAgNjUsIDkwLCA4NSwgMTI4LCA2NSwgODksIDY5LCAyMTAsIDY1LCA4OSwgNjYsIDEyOCwgNjUsIDg5LCA2NSwgNzIsIDEyOCwgCi0gICAgNjUsIDg4LCA2OSwgMTI4LCA2NSwgODcsIDY5LCAxMjgsIDY1LCA4NiwgNjksIDgzLCA4NCwgNjUsIDIwNiwgNjUsIDg2LCAKLSAgICA2OSwgODIsIDY1LCA3MSwgMTk3LCA2NSwgODYsIDY1LCA3NSwgODIsIDY1LCA3MiwgNjUsIDgzLCA2NSwgNzgsIDg5LCA2NSwgCi0gICAgMTI4LCA2NSwgODYsIDY1LCA3MSwgODIsIDY1LCA3MiwgNjUsIDEyOCwgNjUsIDg1LCA4OSwgNjUsIDc4LCA3OCwgNjUsIAotICAgIDEyOCwgNjUsIDg1LCA4NCwgODUsIDc3LCA3OCwgMTI4LCA2NSwgODUsIDg0LCA3OSwgNzcsIDc5LCA2NiwgNzMsIDc2LCA2OSwgCi0gICAgMTI4LCA2NSwgODUsIDg0LCA3OSwgNzcsIDY1LCA4NCwgNjksIDE5NiwgNjUsIDg1LCA4MywgODQsIDgyLCA2NSwgMjA0LCAKLSAgICA2NSwgODUsIDgyLCA3MywgODAsIDczLCA3MSwgNzcsIDY5LCA3OCwgODQsIDEyOCwgNjUsIDg1LCA4MiwgNjUsIDc3LCA2NSwgCi0gICAgOTAsIDY4LCA2NSwgNjUsIDcyLCA2NSwgMTI4LCA2NSwgODUsIDgyLCA2NSwgNzcsIDY1LCA5MCwgNjgsIDY1LCA2NSwgNDUsIAotICAgIDUwLCAxMjgsIDY1LCA4NSwgODIsIDY1LCA3NywgNjUsIDkwLCA2OCwgNjUsIDY1LCAxMjgsIDY1LCA4NSwgNzgsIDc4LCAKLSAgICAxMjgsIDY1LCA4NSwgNzEsIDg1LCA4MywgODQsIDEyOCwgNjUsIDg1LCA3MSwgNzcsIDY5LCA3OCwgODQsIDY1LCA4NCwgNzMsIAotICAgIDc5LCAyMDYsIDY1LCA4NSwgNjksIDEyOCwgNjUsIDg1LCA2NiwgNjksIDgyLCA3MSwgNzMsIDc4LCA2OSwgMTI4LCA2NSwgCi0gICAgODQsIDg0LCA3MywgMTk1LCA2NSwgODQsIDg0LCA3MiwgNjUsIDY3LCA2NSwgNzgsIDEyOCwgNjUsIDg0LCA4NCwgNjksIDc4LCAKLSAgICA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NSwgODQsIDg0LCA2NSwgMjAzLCA2NSwgODQsIDc5LCAyMDUsIDY1LCA4NCwgNzgsIAotICAgIDY1LCAyMDAsIDY1LCA4NCwgNzcsIDY1LCA2NSwgODUsIDEyOCwgNjUsIDg0LCA3MywgODksIDY1LCAxMjgsIDY1LCA4NCwgCi0gICAgNzIsIDc2LCA2OSwgODQsIDczLCAxOTUsIDY1LCA4NCwgNzIsIDY1LCA4MiwgODYsIDY1LCA4NiwgNjksIDY4LCA3MywgMTk1LCAKLSAgICA2NSwgODQsIDcyLCA2NSwgODAsIDY1LCA4MywgNjcsIDY1LCAyMDYsIDY1LCA4MywgOTAsIDEyOCwgNjUsIDgzLCA4OSwgODUsIAotICAgIDgyLCAxOTMsIDY1LCA4MywgODksIDc3LCA4MCwgODQsIDc5LCA4NCwgNzMsIDY3LCA2NSwgNzYsIDc2LCAyMTcsIDY1LCA4MywgCi0gICAgODQsIDgyLCA3OSwgNzgsIDc5LCA3NywgNzMsIDY3LCA2NSwgMjA0LCA2NSwgODMsIDg0LCA4MiwgNzksIDc2LCA3OSwgNzEsIAotICAgIDczLCA2NywgNjUsIDIwNCwgNjUsIDgzLCA4NCwgNzksIDc4LCA3MywgODMsIDcyLCA2OSwgMTk2LCA2NSwgODMsIDg0LCA2OSwgCi0gICAgODIsIDczLCA4MywgNzcsIDEyOCwgNjUsIDgzLCA4NCwgNjksIDgyLCA3MywgODMsIDc1LCAyMTEsIDY1LCA4MywgODQsIDY5LCAKLSAgICA4MiwgNzMsIDgzLCA3NSwgMTI4LCA2NSwgODMsIDg0LCA2OSwgODIsIDczLCA4MywgMjAzLCA2NSwgODMsIDg0LCA2OSwgODIsIAotICAgIDczLCA4MywgNjcsIDg1LCA4MywgMTI4LCA2NSwgODMsIDgzLCA4OSwgODIsIDczLCA2NSwgMjA2LCA2NSwgODMsIDgzLCA2OSwgCi0gICAgODIsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY1LCA4MywgODAsIDczLCA4MiwgNjUsIDg0LCA2OSwgMTk2LCA2NSwgODMsIDgwLCAKLSAgICA2OSwgODIsIDEyOCwgNjUsIDgzLCA3MywgNjUsIDQ1LCA2NSwgODUsIDgzLCA4NCwgODIsIDY1LCA3NiwgNzMsIDY1LCAxMjgsIAotICAgIDY1LCA4MywgNzIsIDcxLCA2NSwgNjYsIDEyOCwgNjUsIDgzLCA3MiwgNjksIDgzLCAxMjgsIDY1LCA4MywgNzIsIDU3LCAKLSAgICAxMjgsIDY1LCA4MywgNzIsIDE3OCwgNjUsIDgzLCA2NywgNjksIDc4LCA4NCwgMTI4LCA2NSwgODMsIDY3LCA2OSwgNzgsIAotICAgIDY4LCA3MywgNzgsIDE5OSwgNjUsIDgzLCA2NSwgNzYsIDUwLCAxMjgsIDY1LCA4MiwgODUsIDcyLCA4NSwgNjUsIDEyOCwgCi0gICAgNjUsIDgyLCA4NCwgNzMsIDgzLCAyMTIsIDY1LCA4MiwgODQsIDczLCA2NywgODUsIDc2LCA2NSwgODQsIDY5LCAxOTYsIDY1LCAKLSAgICA4MiwgODQsIDY1LCA2NiwgMTk3LCA2NSwgODIsIDgzLCA2OSwgNzksIDgzLCAxMjgsIDY1LCA4MiwgODMsIDY5LCA3OSwgCi0gICAgMjExLCA2NSwgODIsIDgzLCA2OSwgNzgsIDczLCA2NywgMTI4LCA2NSwgODIsIDgyLCA3OSwgODcsIDgzLCAxMjgsIDY1LCAKLSAgICA4MiwgODIsIDc5LCA4NywgMjExLCA2NSwgODIsIDgyLCA3OSwgODcsIDcyLCA2OSwgNjUsIDY4LCAxMjgsIDY1LCA4MiwgODIsIAotICAgIDc5LCA4NywgNzIsIDY5LCA2NSwgMTk2LCA2NSwgODIsIDgyLCA3OSwgODcsIDQ1LCA4NCwgNjUsIDczLCA3NiwgMTI4LCA2NSwgCi0gICAgODIsIDgyLCA3MywgODYsIDY5LCAxMjgsIDY1LCA4MiwgODIsIDY1LCA4OSwgMTI4LCA2NSwgODIsIDgwLCA2OSwgNzEsIDcxLCAKLSAgICA3MywgNjUsIDg0LCAyMDcsIDY1LCA4MiwgNzksIDg1LCA4MywgNzMsIDc4LCAxOTksIDY1LCA4MiwgNzksIDg1LCA4MiwgCi0gICAgMTkzLCA2NSwgODIsIDc5LCA4NSwgNzgsIDY4LCA0NSwgODAsIDgyLCA3OSwgNzAsIDczLCA3NiwgNjksIDEyOCwgNjUsIDgyLCAKLSAgICA3OSwgODUsIDc4LCAxOTYsIDY1LCA4MiwgNzcsIDg5LCAxMjgsIDY1LCA4MiwgNzcsIDc5LCA4NSwgODIsIDEyOCwgNjUsIAotICAgIDgyLCAyMDUsIDY1LCA4MiwgNzYsIDY1LCA4NSwgMTk5LCA2NSwgODIsIDc1LCA4NCwgNzMsIDc1LCAyMDcsIDY1LCA4MiwgCi0gICAgNzUsIDY1LCA2NiwgMTI4LCA2NSwgODIsIDc1LCA2NSwgNjUsIDc4LCA4NSwgMTI4LCA2NSwgODIsIDczLCA4MywgODQsIDY5LCAKLSAgICA4MiwgNjUsIDEyOCwgNjUsIDgyLCA3MywgODMsIDg0LCA2OSwgODIsIDE5MywgNjUsIDgyLCA3MywgNjksIDgzLCAxMjgsIAotICAgIDY1LCA4MiwgNzEsIDc5LCA4NCwgNjksIDgyLCA3MywgMTI4LCA2NSwgODIsIDcxLCA3OSwgODMsIDg5LCA3OCwgODQsIDcyLCAKLSAgICA2OSwgODQsIDc5LCA3OCwgMTI4LCA2NSwgODIsIDcxLCA3MywgMTI4LCA2NSwgODIsIDY5LCA4MCwgNjUsIDEyOCwgNjUsIAotICAgIDgyLCA2OCwgNzIsIDY1LCA4NiwgNzMsIDgzLCA2NSwgODIsIDcxLCA2NSwgMTI4LCA2NSwgODIsIDY3LCA3MiwgNjUsIDczLCAKLSAgICA3OSwgNzgsIDEyOCwgNjUsIDgyLCA2NywgNzIsIDY1LCA3MywgNzksIDIwNiwgNjUsIDgyLCA2NywgNzIsIDY1LCA3MywgCi0gICAgMTk1LCA2NSwgODIsIDY3LCAyMDAsIDY1LCA4MiwgNjcsIDEyOCwgNjUsIDgyLCAxOTUsIDY1LCA4MiwgNjUsIDc3LCA2NSwgCi0gICAgNzMsIDE5NSwgNjUsIDgyLCA2NSwgNjksIDY1LCA2OSwgMTI4LCA2NSwgODIsIDY1LCA2OSwgNjUsIDQ1LCA4NSwgMTI4LCAKLSAgICA2NSwgODIsIDY1LCA2OSwgNjUsIDQ1LCA3MywgMTI4LCA2NSwgODIsIDY1LCA2OSwgNjUsIDQ1LCA2OSwgNzksIDEyOCwgNjUsIAotICAgIDgyLCA2NSwgNjksIDY1LCA0NSwgNjksIDEyOCwgNjUsIDgyLCA2NSwgNjksIDY1LCA0NSwgNjUsIDEyOCwgNjUsIDgyLCA2NSwgCi0gICAgNjgsIDEyOCwgNjUsIDgyLCA2NSwgMTk2LCA2NSwgODIsIDY1LCA2NiwgNzMsIDY3LCA0NSwgNzMsIDc4LCA2OCwgNzMsIAotICAgIDE5NSwgNjUsIDgyLCA2NSwgNjYsIDczLCA2NSwgMjA2LCA2NSwgODIsIDQ1LCA4MiwgNjUsIDcyLCA3NywgNjUsIDIwNiwgCi0gICAgNjUsIDgyLCA0NSwgODIsIDY1LCA3MiwgNjksIDY5LCA3NywgMTI4LCA2NSwgODEsIDg1LCA2NSwgODIsIDczLCA4NSwgODMsIAotICAgIDEyOCwgNjUsIDgxLCA4NSwgNjUsIDcwLCA3OSwgODIsIDg0LCA3MywgODMsIDEyOCwgNjUsIDgxLCA4NSwgMTkzLCA2NSwgCi0gICAgODAsIDg1LCAyMDYsIDY1LCA4MCwgODIsIDczLCA3NiwgMTI4LCA2NSwgODAsIDgwLCA4MiwgNzksIDg4LCA3MywgNzcsIDY1LCAKLSAgICA4NCwgNjksIDc2LCAyMTcsIDY1LCA4MCwgODAsIDgyLCA3OSwgODgsIDczLCA3NywgNjUsIDg0LCA2OSwgMTI4LCA2NSwgODAsIAotICAgIDgwLCA4MiwgNzksIDY1LCA2NywgNzIsIDY5LCAyMTEsIDY1LCA4MCwgODAsIDgyLCA3OSwgNjUsIDY3LCA3MiwgMTI4LCA2NSwgCi0gICAgODAsIDgwLCA3NiwgNzMsIDY3LCA2NSwgODQsIDczLCA3OSwgNzgsIDEyOCwgNjUsIDgwLCA3OSwgODQsIDcyLCA2OSwgODMsIAotICAgIDEyOCwgNjUsIDgwLCA3OSwgODQsIDcyLCA2OSwgNzcsIDY1LCAxMjgsIDY1LCA4MCwgNzksIDgzLCA4NCwgODIsIDc5LCA4MCwgCi0gICAgNzIsIDY5LCAxMjgsIDY1LCA4MCwgNzksIDgzLCA4NCwgODIsIDc5LCA3MCwgNzksIDgzLCAxMjgsIDY1LCA4MCwgNzksIDgzLCAKLSAgICA4NCwgODIsIDc5LCA3MCwgNzksIDIxMSwgNjUsIDgwLCA3OSwgODMsIDg0LCA4MiwgNzksIDcwLCA3OSwgMjAxLCA2NSwgODAsIAotICAgIDc5LCA2OCwgNjksIDg4LCA3MywgNjUsIDEyOCwgNjUsIDgwLCA3OSwgNjgsIDY5LCA4MiwgNzcsIDE5MywgNjUsIDgwLCA3NiwgCi0gICAgNzksIDg1LCA3OCwgMTI4LCA2NSwgODAsIDc2LCAyMDEsIDY1LCA4MCwgNzMsIDc4LCAxMjgsIDY1LCA4MCwgNjksIDgzLCAKLSAgICAyMDcsIDY1LCA4MCwgNjUsIDgyLCA4NCwgMTI4LCA2NSwgODAsIDY1LCA2NSwgODQsIDc5LCAxMjgsIDY1LCA3OCwgODUsIAotICAgIDgzLCA4NiwgNjUsIDgyLCA2NSwgODksIDY1LCAxMjgsIDY1LCA3OCwgODUsIDgzLCA4NiwgNjUsIDgyLCA2NSwgMTI4LCA2NSwgCi0gICAgNzgsIDg1LCA4MywgODYsIDY1LCA4MiwgMTkzLCA2NSwgNzgsIDg1LCA2OCwgNjUsIDg0LCA4NCwgNjUsIDEyOCwgNjUsIDc4LCAKLSAgICA4NSwgNjgsIDY1LCA4NCwgODQsIDE5MywgNjUsIDc4LCA4NCwgNzMsIDgyLCA2OSwgODMsIDg0LCA4MiwgNzMsIDY3LCA4NCwgCi0gICAgNzMsIDc5LCA3OCwgMTI4LCA2NSwgNzgsIDg0LCA3MywgNzcsIDc5LCA3OCwgODksIDQ1LCA1MCwgMTI4LCA2NSwgNzgsIDg0LCAKLSAgICA3MywgNzcsIDc5LCA3OCwgODksIDEyOCwgNjUsIDc4LCA4NCwgNzMsIDc3LCA3OSwgNzgsIDIxNywgNjUsIDc4LCA4NCwgNzMsIAotICAgIDc3LCA3OSwgNzgsIDczLCA2NSwgODQsIDY5LCAxMjgsIDY1LCA3OCwgODQsIDczLCA3NSwgNjksIDc4LCA3OSwgNzcsIDY1LCAKLSAgICAxMjgsIDY1LCA3OCwgODQsIDczLCA3NSwgNjksIDc4LCA3OSwgNzUsIDg5LCA3NiwgNzMsIDgzLCA3NywgNjUsIDEyOCwgNjUsIAotICAgIDc4LCA4NCwgNzMsIDcwLCA3OSwgNzgsIDczLCA2NSwgMTI4LCA2NSwgNzgsIDg0LCA3MywgNjcsIDc2LCA3OSwgNjcsIDc1LCAKLSAgICA4NywgNzMsIDgzLCA2OSwgNDUsIDgyLCA3OSwgODQsIDY1LCA4NCwgNjksIDE5NiwgNjUsIDc4LCA4NCwgNzMsIDY3LCA3NiwgCi0gICAgNzksIDY3LCA3NSwgODcsIDczLCA4MywgMTk3LCA2NSwgNzgsIDg0LCA2OSwgNzgsIDc4LCA2NSwgMTI4LCA2NSwgNzgsIDg0LCAKLSAgICA2OSwgNzgsIDc4LCAxOTMsIDY1LCA3OCwgODQsIDY1LCA4MiwgNzEsIDc5LCA3NywgODUsIDc1LCA3MiwgNjUsIDEyOCwgNjUsIAotICAgIDc4LCA4MywgODUsIDIxOCwgNjUsIDc4LCA4MywgNzIsIDY5LCAxMjgsIDY1LCA3OCwgODAsIDY5LCA2NSwgMTI4LCA2NSwgCi0gICAgNzgsIDIwNywgNjUsIDc4LCA3OCwgODUsIDczLCA4NCwgMjE3LCA2NSwgNzgsIDc4LCA3OSwgODQsIDY1LCA4NCwgNzMsIDc5LCAKLSAgICAyMDYsIDY1LCA3OCwgNzgsIDY1LCA2NSwgODUsIDEyOCwgNjUsIDc4LCA3NSwgNzIsIDEyOCwgNjUsIDc4LCA3MiwgODUsIAotICAgIDEyOCwgNjUsIDc4LCA3MSwgODUsIDc2LCA2NSwgODIsIDEyOCwgNjUsIDc4LCA3MSwgODMsIDg0LCA4MiwgNzksIDIwNSwgCi0gICAgNjUsIDc4LCA3MSwgODIsIDIxNywgNjUsIDc4LCA3MSwgNzUsIDcyLCA2NSwgNzgsIDc1LCA3MiwgODUsIDEyOCwgNjUsIDc4LCAKLSAgICA3MSwgNjksIDIxMCwgNjUsIDc4LCA3MSwgNjksIDc2LCAxMjgsIDY1LCA3OCwgNzEsIDY5LCA2OCwgMTI4LCA2NSwgNzgsIAotICAgIDY4LCA2NSwgODAsIDEyOCwgNjUsIDc4LCA2NywgNzksIDgyLCA2NSwgMTI4LCA2NSwgNzgsIDY3LCA3MiwgNzksIDgyLCAKLSAgICAxMjgsIDY1LCA3OCwgNjUsIDg0LCA4MiwgNzMsIDY3LCA3MiwgNzMsIDgzLCA3NywgNjUsIDEyOCwgNjUsIDc4LCA2NSwgODAsIAotICAgIDEyOCwgNjUsIDc3LCA4MCwgODMsIDEyOCwgNjUsIDc3LCA4MCwgNjksIDgyLCA4MywgNjUsIDc4LCA2OCwgMTI4LCA2NSwgCi0gICAgNzcsIDc5LCA4NSwgNzgsIDIxMiwgNjUsIDc3LCA2OSwgODIsIDczLCA2NywgNjUsIDgzLCAxMjgsIDY1LCA3NywgNjksIDgyLCAKLSAgICA3MywgNjcsIDY1LCAyMDYsIDY1LCA3NywgNjYsIDg1LCA3NiwgNjUsIDc4LCA2NywgNjksIDEyOCwgNjUsIDc3LCA2NiwgCisgICAgNzksIDgzLCA2NSwgNzgsIDEyOCwgNjYsIDY1LCA4MiwgNjYsIDY5LCAyMTAsIDY2LCA2NSwgODIsIDE5NCwgNjYsIDY1LCAKKyAgICA4MiwgNjUsIDUwLCAxMjgsIDY2LCA2NSwgMjEwLCA2NiwgNjUsIDc4LCA4NCwgNzksIDY3LCAxMjgsIDY2LCA2NSwgNzgsIAorICAgIDc1LCA3OCwgNzksIDg0LCAxOTcsIDY2LCA2NSwgNzgsIDc1LCAxMjgsIDY2LCA2NSwgNzgsIDIwMywgNjYsIDY1LCA3OCwgCisgICAgNjgsIDEyOCwgNjYsIDY1LCA3OCwgNjUsIDc4LCA2NSwgMTI4LCA2NiwgNjUsIDc4LCA1MCwgMTI4LCA2NiwgNjUsIDc4LCAKKyAgICAxNzgsIDY2LCA2NSwgNzcsIDY2LCA3OSwgNzksIDgzLCAxMjgsIDY2LCA2NSwgNzcsIDY2LCA3OSwgNzksIDEyOCwgNjYsIAorICAgIDY1LCA3NiwgODUsIDY4LCA2NSwgMTI4LCA2NiwgNjUsIDc2LCA3NiwgNzksIDIxMiwgNjYsIDY1LCA3NiwgNzYsIDc5LCA3OSwgCisgICAgNzgsIDQ1LCA4MywgODAsIDc5LCA3NSwgNjksIDE5NiwgNjYsIDY1LCA3NiwgNzYsIDc5LCA3OSwgNzgsIDEyOCwgNjYsIDY1LCAKKyAgICA3NiwgNjUsIDcxLCAxMjgsIDY2LCA2NSwgNzYsIDEyOCwgNjYsIDY1LCAyMDQsIDY2LCA2NSwgNzMsIDgyLCA3NSwgNjUsIAorICAgIDc4LCAxMjgsIDY2LCA2NSwgNzMsIDc3LCA2NSwgNzMsIDEyOCwgNjYsIDY1LCA3MiwgODQsIDEyOCwgNjYsIDY1LCA3MiwgCisgICAgNzMsIDgyLCA3MSwgNzksIDc3LCA4NSwgNzUsIDcyLCA2NSwgMTI4LCA2NiwgNjUsIDcyLCA2NSwgODIsIDUwLCAxMjgsIDY2LCAKKyAgICA2NSwgNzEsIDcxLCA2NSwgNzEsIDE5NywgNjYsIDY1LCA3MSwgNjUsIDEyOCwgNjYsIDY1LCA3MSwgNTEsIDEyOCwgNjYsIAorICAgIDY1LCAxOTksIDY2LCA2NSwgNjgsIDcxLCA2OSwgODIsIDEyOCwgNjYsIDY1LCA2OCwgNzEsIDY5LCAxMjgsIDY2LCA2NSwgCisgICAgNjgsIDEyOCwgNjYsIDY1LCA2NywgODQsIDgyLCA3MywgNjUsIDIwNiwgNjYsIDY1LCA2NywgNzUsIDgzLCA4MCwgNjUsIDY3LCAKKyAgICA2OSwgMTI4LCA2NiwgNjUsIDY3LCA3NSwgODMsIDc2LCA2NSwgODMsIDcyLCAxMjgsIDY2LCA2NSwgNjcsIDc1LCA4MywgNzYsIAorICAgIDY1LCA4MywgMjAwLCA2NiwgNjUsIDY3LCA3NSwgNzIsIDY1LCA3OCwgMTk2LCA2NiwgNjUsIDY3LCA3NSwgNDUsIDg0LCA3MywgCisgICAgNzYsIDg0LCA2OSwgMTk2LCA2NiwgNjUsIDY3LCA3NSwgMTI4LCA2NiwgNjUsIDY3LCAyMDMsIDY2LCA2NSwgNjYsIDg5LCAKKyAgICAxMjgsIDY2LCA2NSwgNjYsIDIxNywgNjYsIDY1LCA2NSwgODIsIDY5LCA4MiwgODUsIDEyOCwgNjYsIDUxLCA0OCwgNTMsIAorICAgIDEyOCwgNjYsIDUwLCA1MywgNTcsIDEyOCwgNjYsIDUwLCA1MywgNTYsIDEyOCwgNjYsIDUwLCA1MywgNTUsIDEyOCwgNjYsIAorICAgIDUwLCA1MywgNTQsIDEyOCwgNjYsIDUwLCA1MywgNTMsIDEyOCwgNjYsIDUwLCA1MywgMTgwLCA2NiwgNTAsIDUzLCA1MSwgCisgICAgMTI4LCA2NiwgNTAsIDUzLCA1MCwgMTI4LCA2NiwgNTAsIDUzLCA0OSwgMTI4LCA2NiwgNTAsIDUzLCA0OCwgMTI4LCA2NiwgCisgICAgNTAsIDUyLCA1NywgMTI4LCA2NiwgNTAsIDUyLCA1NiwgMTI4LCA2NiwgNTAsIDUyLCAxODMsIDY2LCA1MCwgNTIsIDU0LCAKKyAgICAxMjgsIDY2LCA1MCwgNTIsIDUzLCAxMjgsIDY2LCA1MCwgNTIsIDE3OSwgNjYsIDUwLCA1MiwgMTc4LCA2NiwgNTAsIDUyLCAKKyAgICAxNzcsIDY2LCA1MCwgNTIsIDE3NiwgNjYsIDUwLCA1MSwgNTQsIDEyOCwgNjYsIDUwLCA1MSwgNTIsIDEyOCwgNjYsIDUwLCAKKyAgICA1MSwgMTc5LCA2NiwgNTAsIDUxLCA1MCwgMTI4LCA2NiwgNTAsIDUxLCAxNzcsIDY2LCA1MCwgNTEsIDE3NiwgNjYsIDUwLCAKKyAgICA1MCwgNTcsIDEyOCwgNjYsIDUwLCA1MCwgNTYsIDEyOCwgNjYsIDUwLCA1MCwgNTUsIDEyOCwgNjYsIDUwLCA1MCwgNTQsIAorICAgIDEyOCwgNjYsIDUwLCA1MCwgMTgxLCA2NiwgNTAsIDUwLCA1MCwgMTI4LCA2NiwgNTAsIDUwLCA0OSwgMTI4LCA2NiwgNTAsIAorICAgIDUwLCAxNzYsIDY2LCA1MCwgNDksIDU3LCAxMjgsIDY2LCA1MCwgNDksIDU2LCAxMjgsIDY2LCA1MCwgNDksIDU1LCAxMjgsIAorICAgIDY2LCA1MCwgNDksIDU0LCAxMjgsIDY2LCA1MCwgNDksIDUzLCAxMjgsIDY2LCA1MCwgNDksIDUyLCAxMjgsIDY2LCA1MCwgCisgICAgNDksIDUxLCAxMjgsIDY2LCA1MCwgNDksIDUwLCAxMjgsIDY2LCA1MCwgNDksIDQ5LCAxMjgsIDY2LCA1MCwgNDksIDQ4LCAKKyAgICAxMjgsIDY2LCA1MCwgNDgsIDU3LCAxMjgsIDY2LCA1MCwgNDgsIDU2LCAxMjgsIDY2LCA1MCwgNDgsIDU1LCAxMjgsIDY2LCAKKyAgICA1MCwgNDgsIDU0LCAxMjgsIDY2LCA1MCwgNDgsIDUzLCAxMjgsIDY2LCA1MCwgNDgsIDUyLCAxMjgsIDY2LCA1MCwgNDgsIAorICAgIDUxLCAxMjgsIDY2LCA1MCwgNDgsIDUwLCAxMjgsIDY2LCA1MCwgNDgsIDQ5LCAxMjgsIDY2LCA1MCwgNDgsIDQ4LCAxMjgsIAorICAgIDY2LCA0OSwgNTcsIDE3NywgNjYsIDQ5LCA1NywgNDgsIDEyOCwgNjYsIDQ5LCA1NiwgNTcsIDEyOCwgNjYsIDQ5LCA1NiwgCisgICAgNTMsIDEyOCwgNjYsIDQ5LCA1NiwgNTIsIDEyOCwgNjYsIDQ5LCA1NiwgNTEsIDEyOCwgNjYsIDQ5LCA1NiwgNTAsIDEyOCwgCisgICAgNjYsIDQ5LCA1NiwgNDksIDEyOCwgNjYsIDQ5LCA1NiwgNDgsIDEyOCwgNjYsIDQ5LCA1NSwgNTcsIDEyOCwgNjYsIDQ5LCAKKyAgICA1NSwgNTYsIDEyOCwgNjYsIDQ5LCA1NSwgNTUsIDEyOCwgNjYsIDQ5LCA1NSwgMTgyLCA2NiwgNDksIDU1LCA1MiwgMTI4LCAKKyAgICA2NiwgNDksIDU1LCAxNzksIDY2LCA0OSwgNTUsIDUwLCAxMjgsIDY2LCA0OSwgNTUsIDQ5LCAxMjgsIDY2LCA0OSwgNTUsIAorICAgIDQ4LCAxMjgsIDY2LCA0OSwgNTQsIDU3LCAxMjgsIDY2LCA0OSwgNTQsIDU2LCAxMjgsIDY2LCA0OSwgNTQsIDU1LCAxMjgsIAorICAgIDY2LCA0OSwgNTQsIDU0LCAxMjgsIDY2LCA0OSwgNTQsIDUzLCAxMjgsIDY2LCA0OSwgNTQsIDUyLCAxMjgsIDY2LCA0OSwgCisgICAgNTQsIDE3OSwgNjYsIDQ5LCA1NCwgMTc4LCA2NiwgNDksIDU0LCA0OSwgMTI4LCA2NiwgNDksIDU0LCA0OCwgMTI4LCA2NiwgCisgICAgNDksIDUzLCAxODUsIDY2LCA0OSwgNTMsIDU2LCAxMjgsIDY2LCA0OSwgNTMsIDU1LCAxMjgsIDY2LCA0OSwgNTMsIDE4MiwgCisgICAgNjYsIDQ5LCA1MywgNTMsIDEyOCwgNjYsIDQ5LCA1MywgNTIsIDEyOCwgNjYsIDQ5LCA1MywgNTEsIDEyOCwgNjYsIDQ5LCAKKyAgICA1MywgNTAsIDEyOCwgNjYsIDQ5LCA1MywgMTc3LCA2NiwgNDksIDUzLCA0OCwgMTI4LCA2NiwgNDksIDUyLCA1NCwgMTI4LCAKKyAgICA2NiwgNDksIDUyLCAxODEsIDY2LCA0OSwgNTIsIDUwLCAxMjgsIDY2LCA0OSwgNTIsIDE3NywgNjYsIDQ5LCA1MiwgMTc2LCAKKyAgICA2NiwgNDksIDUxLCAxODEsIDY2LCA0OSwgNTEsIDE3OSwgNjYsIDQ5LCA1MSwgNTAsIDEyOCwgNjYsIDQ5LCA1MSwgMTc3LCAKKyAgICA2NiwgNDksIDUxLCAxNzYsIDY2LCA0OSwgNTAsIDE4NCwgNjYsIDQ5LCA1MCwgMTgzLCA2NiwgNDksIDUwLCAxODEsIDY2LCAKKyAgICA0OSwgNTAsIDE3OSwgNjYsIDQ5LCA1MCwgMTc4LCA2NiwgNDksIDUwLCAxNzcsIDY2LCA0OSwgNTAsIDE3NiwgNjYsIDQ5LCAKKyAgICA0OCwgNTcsIDIwNSwgNjYsIDQ5LCA0OCwgNTcsIDE5OCwgNjYsIDQ5LCA0OCwgNTYsIDIwNSwgNjYsIDQ5LCA0OCwgNTYsIAorICAgIDE5OCwgNjYsIDQ5LCA0OCwgNTUsIDIwNSwgNjYsIDQ5LCA0OCwgNTUsIDE5OCwgNjYsIDQ5LCA0OCwgNTQsIDIwNSwgNjYsIAorICAgIDQ5LCA0OCwgNTQsIDE5OCwgNjYsIDQ5LCA0OCwgNTMsIDIwNSwgNjYsIDQ5LCA0OCwgNTMsIDE5OCwgNjYsIDQ5LCA0OCwgCisgICAgMTgxLCA2NiwgNDksIDQ4LCAxODAsIDY2LCA0OSwgNDgsIDE3OCwgNjYsIDQ5LCA0OCwgMTc2LCA2NiwgNDgsIDU3LCAxNzcsIAorICAgIDY2LCA0OCwgNTcsIDE3NiwgNjYsIDQ4LCA1NiwgNTcsIDEyOCwgNjYsIDQ4LCA1NiwgMTgzLCA2NiwgNDgsIDU2LCA1NCwgCisgICAgMTI4LCA2NiwgNDgsIDU2LCAxODEsIDY2LCA0OCwgNTYsIDUxLCAxMjgsIDY2LCA0OCwgNTYsIDUwLCAxMjgsIDY2LCA0OCwgCisgICAgNTYsIDE3NywgNjYsIDQ4LCA1NiwgMTc2LCA2NiwgNDgsIDU1LCA1NywgMTI4LCA2NiwgNDgsIDU1LCAxODQsIDY2LCA0OCwgCisgICAgNTUsIDE4MywgNjYsIDQ4LCA1NSwgMTgyLCA2NiwgNDgsIDU1LCAxODEsIDY2LCA0OCwgNTUsIDE4MCwgNjYsIDQ4LCA1NSwgCisgICAgMTc5LCA2NiwgNDgsIDU1LCAxNzgsIDY2LCA0OCwgNTUsIDE3NywgNjYsIDQ4LCA1NSwgMTc2LCA2NiwgNDgsIDU0LCAxODUsIAorICAgIDY2LCA0OCwgNTQsIDE4NCwgNjYsIDQ4LCA1NCwgMTgzLCA2NiwgNDgsIDU0LCAxODIsIDY2LCA0OCwgNTQsIDE4MSwgNjYsIAorICAgIDQ4LCA1NCwgNTIsIDEyOCwgNjYsIDQ4LCA1NCwgNTEsIDEyOCwgNjYsIDQ4LCA1NCwgMTc4LCA2NiwgNDgsIDU0LCAxNzcsIAorICAgIDY2LCA0OCwgNTQsIDE3NiwgNjYsIDQ4LCA1MywgMTg1LCA2NiwgNDgsIDUzLCAxODQsIDY2LCA0OCwgNTMsIDE4MywgNjYsIAorICAgIDQ4LCA1MywgNTQsIDEyOCwgNjYsIDQ4LCA1MywgMTgxLCA2NiwgNDgsIDUzLCAxODAsIDY2LCA0OCwgNTMsIDE3OSwgNjYsIAorICAgIDQ4LCA1MywgMTc4LCA2NiwgNDgsIDUzLCAxNzcsIDY2LCA0OCwgNTMsIDE3NiwgNjYsIDQ4LCA1MiwgNTcsIDEyOCwgNjYsIAorICAgIDQ4LCA1MiwgMTg0LCA2NiwgNDgsIDUyLCA1NSwgMTI4LCA2NiwgNDgsIDUyLCAxODIsIDY2LCA0OCwgNTIsIDE4MSwgNjYsIAorICAgIDQ4LCA1MiwgMTgwLCA2NiwgNDgsIDUyLCAxNzksIDY2LCA0OCwgNTIsIDE3OCwgNjYsIDQ4LCA1MiwgMTc3LCA2NiwgNDgsIAorICAgIDUyLCAxNzYsIDY2LCA0OCwgNTEsIDE4NSwgNjYsIDQ4LCA1MSwgMTg0LCA2NiwgNDgsIDUxLCAxODMsIDY2LCA0OCwgNTEsIAorICAgIDE4MiwgNjYsIDQ4LCA1MSwgNTIsIDEyOCwgNjYsIDQ4LCA1MSwgMTc5LCA2NiwgNDgsIDUxLCAxNzgsIDY2LCA0OCwgNTEsIAorICAgIDE3NywgNjYsIDQ4LCA1MSwgMTc2LCA2NiwgNDgsIDUwLCAxODUsIDY2LCA0OCwgNTAsIDE4NCwgNjYsIDQ4LCA1MCwgMTgzLCAKKyAgICA2NiwgNDgsIDUwLCAxODIsIDY2LCA0OCwgNTAsIDE4MSwgNjYsIDQ4LCA1MCwgMTgwLCA2NiwgNDgsIDUwLCAxNzksIDY2LCAKKyAgICA0OCwgNTAsIDUwLCAxMjgsIDY2LCA0OCwgNTAsIDE3NywgNjYsIDQ4LCA1MCwgMTc2LCA2NiwgNDgsIDQ5LCA1NywgMTI4LCAKKyAgICA2NiwgNDgsIDQ5LCA1NiwgMTI4LCA2NiwgNDgsIDQ5LCAxODMsIDY2LCA0OCwgNDksIDE4MiwgNjYsIDQ4LCA0OSwgMTgxLCAKKyAgICA2NiwgNDgsIDQ5LCAxODAsIDY2LCA0OCwgNDksIDE3OSwgNjYsIDQ4LCA0OSwgMTc4LCA2NiwgNDgsIDQ5LCAxNzcsIDY2LCAKKyAgICA0OCwgNDksIDE3NiwgNjYsIDQ4LCA0OCwgNTcsIDEyOCwgNjYsIDQ4LCA0OCwgMTg1LCA2NiwgNDgsIDQ4LCA1NiwgMTI4LCAKKyAgICA2NiwgNDgsIDQ4LCAxODQsIDY2LCA0OCwgNDgsIDU1LCAxMjgsIDY2LCA0OCwgNDgsIDE4MywgNjYsIDQ4LCA0OCwgNTQsIAorICAgIDEyOCwgNjYsIDQ4LCA0OCwgMTgyLCA2NiwgNDgsIDQ4LCA1MywgNjUsIDEyOCwgNjYsIDQ4LCA0OCwgNTMsIDEyOCwgNjYsIAorICAgIDQ4LCA0OCwgMTgxLCA2NiwgNDgsIDQ4LCA1MiwgMTI4LCA2NiwgNDgsIDQ4LCAxODAsIDY2LCA0OCwgNDgsIDUxLCAxMjgsIAorICAgIDY2LCA0OCwgNDgsIDE3OSwgNjYsIDQ4LCA0OCwgNTAsIDEyOCwgNjYsIDQ4LCA0OCwgMTc4LCA2NiwgNDgsIDQ4LCA0OSwgCisgICAgMTI4LCA2NiwgNDgsIDQ4LCAxNzcsIDY1LCA5MCwgODUsIDEyOCwgNjUsIDg5LCA2OSwgMjEwLCA2NSwgODksIDY2LCAxMjgsIAorICAgIDY1LCA4OSwgNjUsIDcyLCAxMjgsIDY1LCA4OCwgNjksIDEyOCwgNjUsIDg3LCA2OSwgMTI4LCA2NSwgODYsIDY5LCA4MywgCisgICAgODQsIDY1LCAyMDYsIDY1LCA4NiwgNjksIDgyLCA2NSwgNzEsIDE5NywgNjUsIDg2LCA2NSwgNzUsIDgyLCA2NSwgNzIsIDY1LCAKKyAgICA4MywgNjUsIDc4LCA4OSwgNjUsIDEyOCwgNjUsIDg2LCA2NSwgNzEsIDgyLCA2NSwgNzIsIDY1LCAxMjgsIDY1LCA4NSwgODksIAorICAgIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY1LCA4NSwgODQsIDg1LCA3NywgNzgsIDEyOCwgNjUsIDg1LCA4NCwgNzksIDc3LCA3OSwgCisgICAgNjYsIDczLCA3NiwgNjksIDEyOCwgNjUsIDg1LCA4NCwgNzksIDc3LCA2NSwgODQsIDY5LCAxOTYsIDY1LCA4NSwgODMsIDg0LCAKKyAgICA4MiwgNjUsIDIwNCwgNjUsIDg1LCA4MiwgNzMsIDgwLCA3MywgNzEsIDc3LCA2OSwgNzgsIDg0LCAxMjgsIDY1LCA4NSwgODIsIAorICAgIDY1LCA3NywgNjUsIDkwLCA2OCwgNjUsIDY1LCA3MiwgNjUsIDEyOCwgNjUsIDg1LCA4MiwgNjUsIDc3LCA2NSwgOTAsIDY4LCAKKyAgICA2NSwgNjUsIDQ1LCA1MCwgMTI4LCA2NSwgODUsIDgyLCA2NSwgNzcsIDY1LCA5MCwgNjgsIDY1LCA2NSwgMTI4LCA2NSwgODUsIAorICAgIDc4LCA3OCwgMTI4LCA2NSwgODUsIDcxLCA4NSwgODMsIDg0LCAxMjgsIDY1LCA4NSwgNzEsIDc3LCA2OSwgNzgsIDg0LCA2NSwgCisgICAgODQsIDczLCA3OSwgMjA2LCA2NSwgODUsIDY5LCAxMjgsIDY1LCA4NSwgNjYsIDY5LCA4MiwgNzEsIDczLCA3OCwgNjksIAorICAgIDEyOCwgNjUsIDg0LCA4NCwgNzMsIDE5NSwgNjUsIDg0LCA4NCwgNzIsIDY1LCA2NywgNjUsIDc4LCAxMjgsIDY1LCA4NCwgCisgICAgODQsIDY5LCA3OCwgODQsIDczLCA3OSwgNzgsIDEyOCwgNjUsIDg0LCA4NCwgNjUsIDIwMywgNjUsIDg0LCA3OSwgMjA1LCAKKyAgICA2NSwgODQsIDc4LCA2NSwgMjAwLCA2NSwgODQsIDc3LCA2NSwgNjUsIDg1LCAxMjgsIDY1LCA4NCwgNzMsIDg5LCA2NSwgCisgICAgMTI4LCA2NSwgODQsIDcyLCA3NiwgNjksIDg0LCA3MywgMTk1LCA2NSwgODQsIDcyLCA2NSwgODIsIDg2LCA2NSwgODYsIDY5LCAKKyAgICA2OCwgNzMsIDE5NSwgNjUsIDg0LCA3MiwgNjUsIDgwLCA2NSwgODMsIDY3LCA2NSwgMjA2LCA2NSwgODMsIDkwLCAxMjgsIAorICAgIDY1LCA4MywgODksIDg1LCA4MiwgMTkzLCA2NSwgODMsIDg5LCA3NywgODAsIDg0LCA3OSwgODQsIDczLCA2NywgNjUsIDc2LCAKKyAgICA3NiwgMjE3LCA2NSwgODMsIDg0LCA4MiwgNzksIDc4LCA3OSwgNzcsIDczLCA2NywgNjUsIDIwNCwgNjUsIDgzLCA4NCwgODIsIAorICAgIDc5LCA3NiwgNzksIDcxLCA3MywgNjcsIDY1LCAyMDQsIDY1LCA4MywgODQsIDc5LCA3OCwgNzMsIDgzLCA3MiwgNjksIDE5NiwgCisgICAgNjUsIDgzLCA4NCwgNjksIDgyLCA3MywgODMsIDc3LCAxMjgsIDY1LCA4MywgODQsIDY5LCA4MiwgNzMsIDgzLCA3NSwgMjExLCAKKyAgICA2NSwgODMsIDg0LCA2OSwgODIsIDczLCA4MywgNzUsIDEyOCwgNjUsIDgzLCA4NCwgNjksIDgyLCA3MywgODMsIDIwMywgNjUsIAorICAgIDgzLCA4NCwgNjksIDgyLCA3MywgODMsIDY3LCA4NSwgODMsIDEyOCwgNjUsIDgzLCA4MywgODksIDgyLCA3MywgNjUsIDIwNiwgCisgICAgNjUsIDgzLCA4MywgNjksIDgyLCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NSwgODMsIDgwLCA3MywgODIsIDY1LCA4NCwgNjksIAorICAgIDE5NiwgNjUsIDgzLCA4MCwgNjksIDgyLCAxMjgsIDY1LCA4MywgNzMsIDY1LCA0NSwgNjUsIDg1LCA4MywgODQsIDgyLCA2NSwgCisgICAgNzYsIDczLCA2NSwgMTI4LCA2NSwgODMsIDcyLCA3MSwgNjUsIDY2LCAxMjgsIDY1LCA4MywgNzIsIDY5LCA4MywgMTI4LCAKKyAgICA2NSwgODMsIDcyLCA1NywgMTI4LCA2NSwgODMsIDcyLCAxNzgsIDY1LCA4MywgNjcsIDY5LCA3OCwgODQsIDEyOCwgNjUsIAorICAgIDgzLCA2NywgNjksIDc4LCA2OCwgNzMsIDc4LCAxOTksIDY1LCA4MywgNjUsIDc2LCA1MCwgMTI4LCA2NSwgODIsIDg1LCA3MiwgCisgICAgODUsIDY1LCAxMjgsIDY1LCA4MiwgODQsIDczLCA4MywgMjEyLCA2NSwgODIsIDg0LCA3MywgNjcsIDg1LCA3NiwgNjUsIDg0LCAKKyAgICA2OSwgMTk2LCA2NSwgODIsIDg0LCA2NSwgNjYsIDE5NywgNjUsIDgyLCA4MywgNjksIDc5LCA4MywgMTI4LCA2NSwgODIsIAorICAgIDgzLCA2OSwgNzksIDIxMSwgNjUsIDgyLCA4MywgNjksIDc4LCA3MywgNjcsIDEyOCwgNjUsIDgyLCA4MiwgNzksIDg3LCA4MywgCisgICAgMTI4LCA2NSwgODIsIDgyLCA3OSwgODcsIDIxMSwgNjUsIDgyLCA4MiwgNzksIDg3LCA3MiwgNjksIDY1LCA2OCwgMTI4LCAKKyAgICA2NSwgODIsIDgyLCA3OSwgODcsIDcyLCA2OSwgNjUsIDE5NiwgNjUsIDgyLCA4MiwgNzksIDg3LCA0NSwgODQsIDY1LCA3MywgCisgICAgNzYsIDEyOCwgNjUsIDgyLCA4MiwgNzMsIDg2LCA2OSwgMTI4LCA2NSwgODIsIDgyLCA2NSwgODksIDEyOCwgNjUsIDgyLCAKKyAgICA4MCwgNjksIDcxLCA3MSwgNzMsIDY1LCA4NCwgMjA3LCA2NSwgODIsIDc5LCA4NSwgODMsIDczLCA3OCwgMTk5LCA2NSwgODIsIAorICAgIDc5LCA4NSwgODIsIDE5MywgNjUsIDgyLCA3OSwgODUsIDc4LCA2OCwgNDUsIDgwLCA4MiwgNzksIDcwLCA3MywgNzYsIDY5LCAKKyAgICAxMjgsIDY1LCA4MiwgNzksIDg1LCA3OCwgMTk2LCA2NSwgODIsIDc3LCA4OSwgMTI4LCA2NSwgODIsIDc3LCA3OSwgODUsIAorICAgIDgyLCAxMjgsIDY1LCA4MiwgMjA1LCA2NSwgODIsIDc2LCA2NSwgODUsIDE5OSwgNjUsIDgyLCA3NSwgODQsIDczLCA3NSwgCisgICAgMjA3LCA2NSwgODIsIDc1LCA2NSwgNjYsIDEyOCwgNjUsIDgyLCA3NSwgNjUsIDY1LCA3OCwgODUsIDEyOCwgNjUsIDgyLCAKKyAgICA3MywgODMsIDg0LCA2OSwgODIsIDY1LCAxMjgsIDY1LCA4MiwgNzMsIDgzLCA4NCwgNjksIDgyLCAxOTMsIDY1LCA4MiwgNzMsIAorICAgIDY5LCA4MywgMTI4LCA2NSwgODIsIDcxLCA3OSwgODQsIDY5LCA4MiwgNzMsIDEyOCwgNjUsIDgyLCA3MSwgNzksIDgzLCA4OSwgCisgICAgNzgsIDg0LCA3MiwgNjksIDg0LCA3OSwgNzgsIDEyOCwgNjUsIDgyLCA3MSwgNzMsIDEyOCwgNjUsIDgyLCA2OSwgODAsIDY1LCAKKyAgICAxMjgsIDY1LCA4MiwgNjgsIDcyLCA2NSwgODYsIDczLCA4MywgNjUsIDgyLCA3MSwgNjUsIDEyOCwgNjUsIDgyLCA2NywgNzIsIAorICAgIDY1LCA3MywgNzksIDc4LCAxMjgsIDY1LCA4MiwgNjcsIDcyLCA2NSwgNzMsIDc5LCAyMDYsIDY1LCA4MiwgNjcsIDcyLCA2NSwgCisgICAgNzMsIDE5NSwgNjUsIDgyLCA2NywgMjAwLCA2NSwgODIsIDY3LCAxMjgsIDY1LCA4MiwgMTk1LCA2NSwgODIsIDY1LCA3NywgCisgICAgNjUsIDczLCAxOTUsIDY1LCA4MiwgNjUsIDY5LCA2NSwgNjksIDEyOCwgNjUsIDgyLCA2NSwgNjksIDY1LCA0NSwgODUsIAorICAgIDEyOCwgNjUsIDgyLCA2NSwgNjksIDY1LCA0NSwgNzMsIDEyOCwgNjUsIDgyLCA2NSwgNjksIDY1LCA0NSwgNjksIDc5LCAKKyAgICAxMjgsIDY1LCA4MiwgNjUsIDY5LCA2NSwgNDUsIDY5LCAxMjgsIDY1LCA4MiwgNjUsIDY5LCA2NSwgNDUsIDY1LCAxMjgsIAorICAgIDY1LCA4MiwgNjUsIDY4LCAxMjgsIDY1LCA4MiwgNjUsIDE5NiwgNjUsIDgyLCA2NSwgNjYsIDczLCA2NywgNDUsIDczLCA3OCwgCisgICAgNjgsIDczLCAxOTUsIDY1LCA4MiwgNjUsIDY2LCA3MywgNjUsIDIwNiwgNjUsIDgyLCA0NSwgODIsIDY1LCA3MiwgNzcsIDY1LCAKKyAgICAyMDYsIDY1LCA4MiwgNDUsIDgyLCA2NSwgNzIsIDY5LCA2OSwgNzcsIDEyOCwgNjUsIDgxLCA4NSwgNjUsIDgyLCA3MywgODUsIAorICAgIDgzLCAxMjgsIDY1LCA4MSwgODUsIDY1LCA3MCwgNzksIDgyLCA4NCwgNzMsIDgzLCAxMjgsIDY1LCA4MSwgODUsIDE5MywgCisgICAgNjUsIDgwLCA4NSwgMjA2LCA2NSwgODAsIDgyLCA3MywgNzYsIDEyOCwgNjUsIDgwLCA4MCwgODIsIDc5LCA4OCwgNzMsIDc3LCAKKyAgICA2NSwgODQsIDY5LCA3NiwgMjE3LCA2NSwgODAsIDgwLCA4MiwgNzksIDg4LCA3MywgNzcsIDY1LCA4NCwgNjksIDEyOCwgNjUsIAorICAgIDgwLCA4MCwgODIsIDc5LCA2NSwgNjcsIDcyLCA2OSwgMjExLCA2NSwgODAsIDgwLCA4MiwgNzksIDY1LCA2NywgNzIsIDEyOCwgCisgICAgNjUsIDgwLCA4MCwgNzYsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY1LCA4MCwgNzksIDg0LCA3MiwgNjksIAorICAgIDgzLCAxMjgsIDY1LCA4MCwgNzksIDg0LCA3MiwgNjksIDc3LCA2NSwgMTI4LCA2NSwgODAsIDc5LCA4MywgODQsIDgyLCA3OSwgCisgICAgODAsIDcyLCA2OSwgMTI4LCA2NSwgODAsIDc5LCA4MywgODQsIDgyLCA3OSwgNzAsIDc5LCA4MywgMTI4LCA2NSwgODAsIDc5LCAKKyAgICA4MywgODQsIDgyLCA3OSwgNzAsIDc5LCAyMTEsIDY1LCA4MCwgNzksIDgzLCA4NCwgODIsIDc5LCA3MCwgNzksIDIwMSwgNjUsIAorICAgIDgwLCA3OSwgNjgsIDY5LCA4OCwgNzMsIDY1LCAxMjgsIDY1LCA4MCwgNzksIDY4LCA2OSwgODIsIDc3LCAxOTMsIDY1LCA4MCwgCisgICAgNzYsIDc5LCA4NSwgNzgsIDEyOCwgNjUsIDgwLCA3NiwgMjAxLCA2NSwgODAsIDczLCA3OCwgMTI4LCA2NSwgODAsIDY5LCAKKyAgICA4MywgMjA3LCA2NSwgODAsIDY1LCA4MiwgODQsIDEyOCwgNjUsIDgwLCA2NSwgNjUsIDg0LCA3OSwgMTI4LCA2NSwgNzgsIAorICAgIDg1LCA4MywgODYsIDY1LCA4MiwgNjUsIDg5LCA2NSwgMTI4LCA2NSwgNzgsIDg1LCA4MywgODYsIDY1LCA4MiwgNjUsIDEyOCwgCisgICAgNjUsIDc4LCA4NSwgODMsIDg2LCA2NSwgODIsIDE5MywgNjUsIDc4LCA4NSwgNjgsIDY1LCA4NCwgODQsIDY1LCAxMjgsIDY1LCAKKyAgICA3OCwgODUsIDY4LCA2NSwgODQsIDg0LCAxOTMsIDY1LCA3OCwgODQsIDczLCA4MiwgNjksIDgzLCA4NCwgODIsIDczLCA2NywgCisgICAgODQsIDczLCA3OSwgNzgsIDEyOCwgNjUsIDc4LCA4NCwgNzMsIDc3LCA3OSwgNzgsIDg5LCA0NSwgNTAsIDEyOCwgNjUsIDc4LCAKKyAgICA4NCwgNzMsIDc3LCA3OSwgNzgsIDg5LCAxMjgsIDY1LCA3OCwgODQsIDczLCA3NywgNzksIDc4LCAyMTcsIDY1LCA3OCwgODQsIAorICAgIDczLCA3NywgNzksIDc4LCA3MywgNjUsIDg0LCA2OSwgMTI4LCA2NSwgNzgsIDg0LCA3MywgNzUsIDY5LCA3OCwgNzksIDc3LCAKKyAgICA2NSwgMTI4LCA2NSwgNzgsIDg0LCA3MywgNzUsIDY5LCA3OCwgNzksIDc1LCA4OSwgNzYsIDczLCA4MywgNzcsIDY1LCAxMjgsIAorICAgIDY1LCA3OCwgODQsIDczLCA3MCwgNzksIDc4LCA3MywgNjUsIDEyOCwgNjUsIDc4LCA4NCwgNzMsIDY3LCA3NiwgNzksIDY3LCAKKyAgICA3NSwgODcsIDczLCA4MywgNjksIDQ1LCA4MiwgNzksIDg0LCA2NSwgODQsIDY5LCAxOTYsIDY1LCA3OCwgODQsIDczLCA2NywgCisgICAgNzYsIDc5LCA2NywgNzUsIDg3LCA3MywgODMsIDE5NywgNjUsIDc4LCA4NCwgNjksIDc4LCA3OCwgNjUsIDEyOCwgNjUsIDc4LCAKKyAgICA4NCwgNjksIDc4LCA3OCwgMTkzLCA2NSwgNzgsIDg0LCA2NSwgODIsIDcxLCA3OSwgNzcsIDg1LCA3NSwgNzIsIDY1LCAxMjgsIAorICAgIDY1LCA3OCwgODMsIDg1LCAyMTgsIDY1LCA3OCwgODMsIDcyLCA2OSwgMTI4LCA2NSwgNzgsIDgwLCA2OSwgNjUsIDEyOCwgCisgICAgNjUsIDc4LCAyMDcsIDY1LCA3OCwgNzgsIDg1LCA3MywgODQsIDIxNywgNjUsIDc4LCA3OCwgNzksIDg0LCA2NSwgODQsIDczLCAKKyAgICA3OSwgMjA2LCA2NSwgNzgsIDc4LCA2NSwgNjUsIDg1LCAxMjgsIDY1LCA3OCwgNzUsIDcyLCAxMjgsIDY1LCA3OCwgNzIsIAorICAgIDg1LCAxMjgsIDY1LCA3OCwgNzEsIDg1LCA3NiwgNjUsIDgyLCAxMjgsIDY1LCA3OCwgNzEsIDgzLCA4NCwgODIsIDc5LCAKKyAgICAyMDUsIDY1LCA3OCwgNzEsIDgyLCAyMTcsIDY1LCA3OCwgNzEsIDc1LCA3MiwgNjUsIDc4LCA3NSwgNzIsIDg1LCAxMjgsIAorICAgIDY1LCA3OCwgNzEsIDY5LCAyMTAsIDY1LCA3OCwgNzEsIDY5LCA3NiwgMTI4LCA2NSwgNzgsIDcxLCA2OSwgNjgsIDEyOCwgCisgICAgNjUsIDc4LCA2OCwgNjUsIDgwLCAxMjgsIDY1LCA3OCwgNjcsIDc5LCA4MiwgNjUsIDEyOCwgNjUsIDc4LCA2NywgNzIsIDc5LCAKKyAgICA4MiwgMTI4LCA2NSwgNzgsIDY1LCA4NCwgODIsIDczLCA2NywgNzIsIDczLCA4MywgNzcsIDY1LCAxMjgsIDY1LCA3OCwgNjUsIAorICAgIDgwLCAxMjgsIDY1LCA3NywgODAsIDgzLCAxMjgsIDY1LCA3NywgODAsIDY5LCA4MiwgODMsIDY1LCA3OCwgNjgsIDEyOCwgCisgICAgNjUsIDc3LCA3OSwgODUsIDc4LCAyMTIsIDY1LCA3NywgNjksIDgyLCA3MywgNjcsIDY1LCA4MywgMTI4LCA2NSwgNzcsIDY5LCAKKyAgICA4MiwgNzMsIDY3LCA2NSwgMjA2LCA2NSwgNzcsIDY2LCA4NSwgNzYsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDY1LCA3NywgNjYsIAogICAgIDE5MywgNjUsIDc3LCA2NSwgODIsIDEyOCwgNjUsIDc3LCA2NSwgMjEwLCA2NSwgNzcsIDY1LCA3NiwgNzEsIDY1LCA3NywgCiAgICAgNjUsIDg0LCA3MywgNzksIDIwNiwgNjUsIDc3LCA2NSwgNzYsIDcxLCA2NSwgNzcsIDEyOCwgNjUsIDc2LCA4NiwgNjksIDc5LCAKICAgICA3NiwgNjUsIDIxMCwgNjUsIDc2LCA4NSwgNzcsIDEyOCwgNjUsIDc2LCA4NCwgNjksIDgyLCA3OCwgNjUsIDg0LCA3MywgODYsIApAQCAtNDM4Niw3Mjg5ICs0NDEyLDczMDYgQEAKICAgICA3NSwgNjUsIDY2LCAxMjgsIDY1LCA3NSwgODMsIDY1LCAxMjgsIDY1LCA3NSwgNzIsIDc3LCA3MywgNzcsIDczLCAxOTUsIAogICAgIDY1LCA3NSwgNjYsIDY1LCAyMTAsIDY1LCA3NSwgNjUsIDgyLCA2NSwgMTI4LCA2NSwgNzUsIDY1LCA4MiwgMTkzLCA2NSwgCiAgICAgNzMsIDg5LCA2NSwgNzgsIDc4LCA2NSwgMTI4LCA2NSwgNzMsIDg2LCA3MywgNzYsIDczLCAyMDMsIDY1LCA3MywgODQsIDc5LCAKLSAgICAyMDYsIDY1LCA3MywgODIsIDgwLCA3NiwgNjUsIDc4LCA2OSwgMTI4LCA2NSwgNzMsIDc4LCA3OCwgMTI4LCA2NSwgNzMsIAotICAgIDc2LCA3NywgMTI4LCA2NSwgNzMsIDc1LCA2NSwgODIsIDY1LCAxMjgsIDY1LCA3MywgNzIsIDg2LCA4NSwgODMsIDEyOCwgCi0gICAgNjUsIDcyLCA4MywgNjgsIDY1LCAxMjgsIDY1LCA3MiwgODMsIDY1LCAxMjgsIDY1LCA3MiwgNjUsIDcxLCA3MSwgNjUsIAotICAgIDIxMCwgNjUsIDcyLCA2NSwgNjgsIDEyOCwgNjUsIDcxLCA4NSwgNzgsIDcxLCAxMjgsIDY1LCA3MSwgNzksIDcxLCAyMDEsIAotICAgIDY1LCA3MSwgNzEsIDgyLCA2NSwgODYsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NSwgNzEsIDcxLCA4MiwgNjUsIDg2LCAKLSAgICA2NSwgODQsIDY5LCAxOTYsIDY1LCA3MSwgNjUsIDczLCA3OCwgMTI4LCA2NSwgNzAsIDg0LCA2OSwgMjEwLCA2NSwgNzAsIAotICAgIDgzLCA2NSwgNjUsIDgxLCAxMjgsIDY1LCA3MCwgODIsIDczLCA2NywgNjUsIDIwNiwgNjUsIDcwLCA3OSwgODIsIDY5LCA3NywgCi0gICAgNjksIDc4LCA4NCwgNzMsIDc5LCA3OCwgNjksIDY4LCAxMjgsIDY1LCA3MCwgNzEsIDcyLCA2NSwgNzgsIDIwMSwgNjUsIDcwLCAKLSAgICA3MCwgODIsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIDIwNiwgNjUsIDY5LCA4OSwgNjUsIDc4LCA3OCwgNjUsIDEyOCwgNjUsIAotICAgIDY5LCA4OSwgMTI4LCA2NSwgNjksIDgzLCA2NywgODUsIDc2LCA2NSwgODAsIDczLCA4NSwgODMsIDEyOCwgNjUsIDY5LCA4MywgCi0gICAgNjcsIDEyOCwgNjUsIDY5LCA4MywgMTI4LCA2NSwgNjksIDgyLCA3MywgNjUsIDIwNCwgNjUsIDY5LCA4MiwgMTI4LCA2NSwgCi0gICAgNjksIDc2LCA2NSwgNDUsIDgwLCA3MywgNzYsIDc2LCA2NSwgMTI4LCA2NSwgNjksIDc2LCAxMjgsIDY1LCA2OSwgNzUsIAotICAgIDEyOCwgNjUsIDY5LCA3MSwgNjksIDY1LCAyMDYsIDY1LCA2OSwgNzEsIDEyOCwgNjUsIDY5LCA2OSwgODksIDY1LCA3OCwgCi0gICAgNzgsIDY1LCAxMjgsIDY1LCA2OSwgNjksIDEyOCwgNjUsIDY5LCA2OCwgNjUsIDQ1LCA4MCwgNzMsIDc2LCA3NiwgNjUsIAotICAgIDEyOCwgNjUsIDY5LCA2OCwgMTI4LCA2NSwgNjksIDY2LCAxMjgsIDY1LCA2OCwgODYsIDY1LCA3OCwgODQsIDY1LCA3MSwgCi0gICAgNjksIDEyOCwgNjUsIDY4LCA4NiwgNjUsIDc4LCA2NywgNjksIDEyOCwgNjUsIDY4LCA2OSwgNzEsIDEyOCwgNjUsIDY4LCAKLSAgICA2OSwgMTk5LCA2NSwgNjgsIDY4LCA4MiwgNjksIDgzLCA4MywgNjksIDE5NiwgNjUsIDY4LCA2OCwgODIsIDY5LCA4MywgCi0gICAgMjExLCA2NSwgNjgsIDY4LCA2NSwgNzUsIDEyOCwgNjUsIDY4LCA2NSwgMjAzLCA2NSwgNjcsIDg1LCA4NCwgNjksIDQ1LCAKLSAgICA3NywgNjUsIDY3LCA4MiwgNzksIDc4LCAxMjgsIDY1LCA2NywgODUsIDg0LCA2OSwgNDUsIDcxLCA4MiwgNjUsIDg2LCA2OSwgCi0gICAgNDUsIDY1LCA2NywgODUsIDg0LCA2OSwgMTI4LCA2NSwgNjcsIDg1LCA4NCwgMTk3LCA2NSwgNjcsIDg0LCA4NSwgNjUsIDc2LCAKLSAgICA3NiwgMjE3LCA2NSwgNjcsIDg0LCA3MywgODYsIDY1LCA4NCwgMTk3LCA2NSwgNjcsIDgyLCA3OSwgODAsIDcyLCA3OSwgNzgsIAotICAgIDczLCAxOTUsIDY1LCA2NywgNzUsIDc4LCA3OSwgODcsIDc2LCA2OSwgNjgsIDcxLCA2OSwgMTI4LCA2NSwgNjcsIDY3LCA4NSwgCi0gICAgNzcsIDg1LCA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY1LCA2NywgNjcsIDc5LCA4NSwgNzgsIDIxMiwgNjUsIDY3LCAKLSAgICA2NywgNjksIDgwLCA4NCwgMTI4LCA2NSwgNjcsIDY3LCA2OSwgNzgsIDg0LCA0NSwgODMsIDg0LCA2NSwgNjcsIDY3LCA2NSwgCi0gICAgODQsIDc5LCAxMjgsIDY1LCA2NywgNjcsIDY5LCA3OCwgODQsIDEyOCwgNjUsIDY3LCA2NywgNjksIDc4LCAyMTIsIDY1LCAKLSAgICA2NywgNjUsIDY4LCA2OSwgNzcsIDIxNywgNjUsIDY2LCA4OSwgODMsIDc3LCA2NSwgMjA0LCA2NSwgNjYsIDg1LCA3OCwgNjgsIAotICAgIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDY1LCA2NiwgNzUsIDcyLCA2NSwgODMsIDczLCA2NSwgMjA2LCA2NSwgNjYsIDY2LCA4MiwgCi0gICAgNjksIDg2LCA3MywgNjUsIDg0LCA3MywgNzksIDIwNiwgNjUsIDY2LCA2NSwgNzAsIDczLCA3NiwgNzMsIDEyOCwgNjUsIDY2LCAKLSAgICAxNzgsIDY1LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY1LCA2NSwgODksIDEyOCwgNjUsIDY1LCA4NywgMTI4LCAKLSAgICA2NSwgNjUsIDc5LCAxMjgsIDY1LCA2NSwgNzQsIDEyOCwgNjUsIDY1LCA2NiwgNjUsIDY1LCA3MCwgNzMsIDc2LCA3MywgCi0gICAgMTI4LCA2NSwgNjUsIDQ4LCA1MSwgNTAsIDEyOCwgNjUsIDY1LCA0OCwgNTEsIDQ5LCAxMjgsIDY1LCA2NSwgNDgsIDUxLCAKLSAgICA0OCwgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNTcsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDU2LCAxMjgsIDY1LCA2NSwgNDgsIAotICAgIDUwLCA1NSwgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNTQsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDUzLCAxMjgsIDY1LCA2NSwgCi0gICAgNDgsIDUwLCA1MiwgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNTEsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDUwLCAxMjgsIDY1LCAKLSAgICA2NSwgNDgsIDUwLCA0OSwgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNDgsIDEyOCwgNjUsIDY1LCA0OCwgNDksIDU3LCAxMjgsIAotICAgIDY1LCA2NSwgNDgsIDQ5LCA1NiwgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNTUsIDEyOCwgNjUsIDY1LCA0OCwgNDksIDU0LCAKLSAgICAxMjgsIDY1LCA2NSwgNDgsIDQ5LCA1MywgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNTIsIDEyOCwgNjUsIDY1LCA0OCwgNDksIAotICAgIDUxLCAxMjgsIDY1LCA2NSwgNDgsIDQ5LCA1MCwgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNDksIDEyOCwgNjUsIDY1LCA0OCwgCi0gICAgNDksIDQ4LCAxMjgsIDY1LCA2NSwgNDgsIDQ4LCA1NywgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTYsIDEyOCwgNjUsIDY1LCAKLSAgICA0OCwgNDgsIDU1LCA2NiwgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTUsIDY1LCAxMjgsIDY1LCA2NSwgNDgsIDQ4LCA1NSwgCi0gICAgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTQsIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDUzLCAxMjgsIDY1LCA2NSwgNDgsIDQ4LCAKLSAgICA1MiwgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTEsIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDUwLCAxMjgsIDY1LCA2NSwgNDgsIAotICAgIDQ4LCA0OSwgMTI4LCA2NSwgNDgsIDU1LCA0OCwgMTI4LCA2NSwgNDgsIDU0LCA1NywgMTI4LCA2NSwgNDgsIDU0LCA1NiwgCi0gICAgMTI4LCA2NSwgNDgsIDU0LCA1NSwgMTI4LCA2NSwgNDgsIDU0LCA1NCwgMTI4LCA2NSwgNDgsIDU0LCA1MywgMTI4LCA2NSwgCi0gICAgNDgsIDU0LCA1MiwgMTI4LCA2NSwgNDgsIDU0LCA1MSwgMTI4LCA2NSwgNDgsIDU0LCA1MCwgMTI4LCA2NSwgNDgsIDU0LCAKLSAgICA0OSwgMTI4LCA2NSwgNDgsIDU0LCA0OCwgMTI4LCA2NSwgNDgsIDUzLCA1NywgMTI4LCA2NSwgNDgsIDUzLCA1NiwgMTI4LCAKLSAgICA2NSwgNDgsIDUzLCA1NSwgMTI4LCA2NSwgNDgsIDUzLCA1NCwgMTI4LCA2NSwgNDgsIDUzLCA1MywgMTI4LCA2NSwgNDgsIAotICAgIDUzLCA1MiwgMTI4LCA2NSwgNDgsIDUzLCA1MSwgMTI4LCA2NSwgNDgsIDUzLCA1MCwgMTI4LCA2NSwgNDgsIDUzLCA0OSwgCi0gICAgMTI4LCA2NSwgNDgsIDUzLCA0OCwgMTI4LCA2NSwgNDgsIDUyLCA1NywgMTI4LCA2NSwgNDgsIDUyLCA1NiwgMTI4LCA2NSwgCi0gICAgNDgsIDUyLCA1NSwgMTI4LCA2NSwgNDgsIDUyLCA1NCwgMTI4LCA2NSwgNDgsIDUyLCA1MywgNjUsIDEyOCwgNjUsIDQ4LCAKLSAgICA1MiwgNTMsIDEyOCwgNjUsIDQ4LCA1MiwgNTIsIDEyOCwgNjUsIDQ4LCA1MiwgNTEsIDY1LCAxMjgsIDY1LCA0OCwgNTIsIAotICAgIDUxLCAxMjgsIDY1LCA0OCwgNTIsIDUwLCA2NSwgMTI4LCA2NSwgNDgsIDUyLCA1MCwgMTI4LCA2NSwgNDgsIDUyLCA0OSwgCi0gICAgMTI4LCA2NSwgNDgsIDUyLCA0OCwgNjUsIDEyOCwgNjUsIDQ4LCA1MiwgNDgsIDEyOCwgNjUsIDQ4LCA1MSwgNTcsIDEyOCwgCi0gICAgNjUsIDQ4LCA1MSwgNTYsIDEyOCwgNjUsIDQ4LCA1MSwgNTUsIDEyOCwgNjUsIDQ4LCA1MSwgNTQsIDEyOCwgNjUsIDQ4LCAKLSAgICA1MSwgNTMsIDEyOCwgNjUsIDQ4LCA1MSwgNTIsIDEyOCwgNjUsIDQ4LCA1MSwgNTEsIDEyOCwgNjUsIDQ4LCA1MSwgNTAsIAotICAgIDY1LCAxMjgsIDY1LCA0OCwgNDksIDU1LCA2NSwgMTI4LCA2NSwgNDgsIDQ5LCA1MiwgNjUsIDEyOCwgNjUsIDQ4LCA0OCwgCi0gICAgNTQsIDY2LCAxMjgsIDY1LCA0OCwgNDgsIDU0LCA2NSwgMTI4LCA2NSwgNDgsIDQ4LCA1MywgNjUsIDEyOCwgNjUsIDQ1LCAKLSAgICA2OSwgODUsIDEyOCwgNDUsIDg1LCAyMDUsIDQ1LCA4MCwgNzIsIDgyLCA4NSwgMTI4LCA0NSwgNzUsIDcyLCA4OSwgODUsIAotICAgIDE5NiwgNDUsIDc1LCA3MiwgODksIDczLCA3NiwgMTI4LCA0NSwgNjgsIDkwLCA4NSwgMTk2LCA0NSwgNjcsIDcyLCA2NSwgCi0gICAgMjEwLCA0NSwgNjcsIDcyLCA2NSwgNzYsIDEyOCwgCisgICAgMjA2LCA2NSwgNzMsIDgyLCA4MCwgNzYsIDY1LCA3OCwgNjksIDEyOCwgNjUsIDczLCA3OCwgMjEzLCA2NSwgNzMsIDc4LCAKKyAgICA3OCwgMTI4LCA2NSwgNzMsIDc2LCA3NywgMTI4LCA2NSwgNzMsIDc1LCA2NSwgODIsIDY1LCAxMjgsIDY1LCA3MywgNzIsIAorICAgIDg2LCA4NSwgODMsIDEyOCwgNjUsIDcyLCA4MywgNjgsIDY1LCAxMjgsIDY1LCA3MiwgODMsIDY1LCAxMjgsIDY1LCA3MiwgCisgICAgNjUsIDcxLCA3MSwgNjUsIDIxMCwgNjUsIDcyLCA2NSwgNjgsIDEyOCwgNjUsIDcxLCA4NSwgNzgsIDcxLCAxMjgsIDY1LCAKKyAgICA3MSwgNzksIDcxLCAyMDEsIDY1LCA3MSwgNzEsIDgyLCA2NSwgODYsIDY1LCA4NCwgNzMsIDc5LCA3OCwgMTI4LCA2NSwgNzEsIAorICAgIDcxLCA4MiwgNjUsIDg2LCA2NSwgODQsIDY5LCAxOTYsIDY1LCA3MSwgNjUsIDczLCA3OCwgMTI4LCA2NSwgNzAsIDg0LCA2OSwgCisgICAgMjEwLCA2NSwgNzAsIDgzLCA2NSwgNjUsIDgxLCAxMjgsIDY1LCA3MCwgODIsIDczLCA2NywgNjUsIDIwNiwgNjUsIDcwLCAKKyAgICA3OSwgODIsIDY5LCA3NywgNjksIDc4LCA4NCwgNzMsIDc5LCA3OCwgNjksIDY4LCAxMjgsIDY1LCA3MCwgNzEsIDcyLCA2NSwgCisgICAgNzgsIDIwMSwgNjUsIDcwLCA3MCwgODIsIDczLCA2NywgNjUsIDg0LCA3MywgNzksIDIwNiwgNjUsIDY5LCA4OSwgNjUsIDc4LCAKKyAgICA3OCwgNjUsIDEyOCwgNjUsIDY5LCA4OSwgMTI4LCA2NSwgNjksIDgzLCA2NywgODUsIDc2LCA2NSwgODAsIDczLCA4NSwgODMsIAorICAgIDEyOCwgNjUsIDY5LCA4MywgNjcsIDEyOCwgNjUsIDY5LCA4MywgMTI4LCA2NSwgNjksIDgyLCA3MywgNjUsIDIwNCwgNjUsIAorICAgIDY5LCA4MiwgMTI4LCA2NSwgNjksIDc2LCA2NSwgNDUsIDgwLCA3MywgNzYsIDc2LCA2NSwgMTI4LCA2NSwgNjksIDc2LCAKKyAgICAxMjgsIDY1LCA2OSwgNzUsIDEyOCwgNjUsIDY5LCA3MSwgNjksIDY1LCAyMDYsIDY1LCA2OSwgNzEsIDEyOCwgNjUsIDY5LCAKKyAgICA2OSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY1LCA2OSwgNjksIDEyOCwgNjUsIDY5LCA2OCwgNjUsIDQ1LCA4MCwgNzMsIAorICAgIDc2LCA3NiwgNjUsIDEyOCwgNjUsIDY5LCA2OCwgMTI4LCA2NSwgNjksIDY2LCAxMjgsIDY1LCA2OCwgODYsIDY1LCA3OCwgCisgICAgODQsIDY1LCA3MSwgNjksIDEyOCwgNjUsIDY4LCA4NiwgNjUsIDc4LCA2NywgNjksIDEyOCwgNjUsIDY4LCA2OSwgNzEsIAorICAgIDEyOCwgNjUsIDY4LCA2OSwgMTk5LCA2NSwgNjgsIDY4LCA4MiwgNjksIDgzLCA4MywgNjksIDE5NiwgNjUsIDY4LCA2OCwgCisgICAgODIsIDY5LCA4MywgMjExLCA2NSwgNjgsIDY4LCA2NSwgNzUsIDEyOCwgNjUsIDY4LCA2NSwgMjAzLCA2NSwgNjcsIDg1LCAKKyAgICA4NCwgNjksIDQ1LCA3NywgNjUsIDY3LCA4MiwgNzksIDc4LCAxMjgsIDY1LCA2NywgODUsIDg0LCA2OSwgNDUsIDcxLCA4MiwgCisgICAgNjUsIDg2LCA2OSwgNDUsIDY1LCA2NywgODUsIDg0LCA2OSwgMTI4LCA2NSwgNjcsIDg1LCA4NCwgMTk3LCA2NSwgNjcsIDg0LCAKKyAgICA4NSwgNjUsIDc2LCA3NiwgMjE3LCA2NSwgNjcsIDg0LCA3MywgODYsIDY1LCA4NCwgMTk3LCA2NSwgNjcsIDgyLCA3OSwgODAsIAorICAgIDcyLCA3OSwgNzgsIDczLCAxOTUsIDY1LCA2NywgNzUsIDc4LCA3OSwgODcsIDc2LCA2OSwgNjgsIDcxLCA2OSwgMTI4LCA2NSwgCisgICAgNjcsIDY3LCA4NSwgNzcsIDg1LCA3NiwgNjUsIDg0LCA3MywgNzksIDc4LCAxMjgsIDY1LCA2NywgNjcsIDc5LCA4NSwgNzgsIAorICAgIDIxMiwgNjUsIDY3LCA2NywgNjksIDgwLCA4NCwgMTI4LCA2NSwgNjcsIDY3LCA2OSwgNzgsIDg0LCA0NSwgODMsIDg0LCA2NSwgCisgICAgNjcsIDY3LCA2NSwgODQsIDc5LCAxMjgsIDY1LCA2NywgNjcsIDY5LCA3OCwgODQsIDEyOCwgNjUsIDY3LCA2NywgNjksIDc4LCAKKyAgICAyMTIsIDY1LCA2NywgNjUsIDY4LCA2OSwgNzcsIDIxNywgNjUsIDY2LCA4OSwgODMsIDc3LCA2NSwgMjA0LCA2NSwgNjYsIAorICAgIDg1LCA3OCwgNjgsIDY1LCA3OCwgNjcsIDY5LCAxMjgsIDY1LCA2NiwgNzUsIDcyLCA2NSwgODMsIDczLCA2NSwgMjA2LCA2NSwgCisgICAgNjYsIDY2LCA4MiwgNjksIDg2LCA3MywgNjUsIDg0LCA3MywgNzksIDIwNiwgNjUsIDY2LCA2NSwgNzAsIDczLCA3NiwgNzMsIAorICAgIDEyOCwgNjUsIDY2LCAxNzgsIDY1LCA2NSwgODksIDY1LCA3OCwgNzgsIDY1LCAxMjgsIDY1LCA2NSwgODksIDEyOCwgNjUsIAorICAgIDY1LCA4NywgMTI4LCA2NSwgNjUsIDc5LCAxMjgsIDY1LCA2NSwgNzQsIDEyOCwgNjUsIDY1LCA2NiwgNjUsIDY1LCA3MCwgCisgICAgNzMsIDc2LCA3MywgMTI4LCA2NSwgNjUsIDQ4LCA1MSwgNTAsIDEyOCwgNjUsIDY1LCA0OCwgNTEsIDQ5LCAxMjgsIDY1LCAKKyAgICA2NSwgNDgsIDUxLCA0OCwgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNTcsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDU2LCAxMjgsIAorICAgIDY1LCA2NSwgNDgsIDUwLCA1NSwgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNTQsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIDUzLCAKKyAgICAxMjgsIDY1LCA2NSwgNDgsIDUwLCA1MiwgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNTEsIDEyOCwgNjUsIDY1LCA0OCwgNTAsIAorICAgIDUwLCAxMjgsIDY1LCA2NSwgNDgsIDUwLCA0OSwgMTI4LCA2NSwgNjUsIDQ4LCA1MCwgNDgsIDEyOCwgNjUsIDY1LCA0OCwgCisgICAgNDksIDU3LCAxMjgsIDY1LCA2NSwgNDgsIDQ5LCA1NiwgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNTUsIDEyOCwgNjUsIDY1LCAKKyAgICA0OCwgNDksIDU0LCAxMjgsIDY1LCA2NSwgNDgsIDQ5LCA1MywgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNTIsIDEyOCwgNjUsIAorICAgIDY1LCA0OCwgNDksIDUxLCAxMjgsIDY1LCA2NSwgNDgsIDQ5LCA1MCwgMTI4LCA2NSwgNjUsIDQ4LCA0OSwgNDksIDEyOCwgCisgICAgNjUsIDY1LCA0OCwgNDksIDQ4LCAxMjgsIDY1LCA2NSwgNDgsIDQ4LCA1NywgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTYsIAorICAgIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDU1LCA2NiwgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTUsIDY1LCAxMjgsIDY1LCA2NSwgCisgICAgNDgsIDQ4LCA1NSwgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTQsIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDUzLCAxMjgsIDY1LCAKKyAgICA2NSwgNDgsIDQ4LCA1MiwgMTI4LCA2NSwgNjUsIDQ4LCA0OCwgNTEsIDEyOCwgNjUsIDY1LCA0OCwgNDgsIDUwLCAxMjgsIAorICAgIDY1LCA2NSwgNDgsIDQ4LCA0OSwgMTI4LCA2NSwgNDgsIDU1LCA0OCwgMTI4LCA2NSwgNDgsIDU0LCA1NywgMTI4LCA2NSwgCisgICAgNDgsIDU0LCA1NiwgMTI4LCA2NSwgNDgsIDU0LCA1NSwgMTI4LCA2NSwgNDgsIDU0LCA1NCwgMTI4LCA2NSwgNDgsIDU0LCAKKyAgICA1MywgMTI4LCA2NSwgNDgsIDU0LCA1MiwgMTI4LCA2NSwgNDgsIDU0LCA1MSwgMTI4LCA2NSwgNDgsIDU0LCA1MCwgMTI4LCAKKyAgICA2NSwgNDgsIDU0LCA0OSwgMTI4LCA2NSwgNDgsIDU0LCA0OCwgMTI4LCA2NSwgNDgsIDUzLCA1NywgMTI4LCA2NSwgNDgsIAorICAgIDUzLCA1NiwgMTI4LCA2NSwgNDgsIDUzLCA1NSwgMTI4LCA2NSwgNDgsIDUzLCA1NCwgMTI4LCA2NSwgNDgsIDUzLCA1MywgCisgICAgMTI4LCA2NSwgNDgsIDUzLCA1MiwgMTI4LCA2NSwgNDgsIDUzLCA1MSwgMTI4LCA2NSwgNDgsIDUzLCA1MCwgMTI4LCA2NSwgCisgICAgNDgsIDUzLCA0OSwgMTI4LCA2NSwgNDgsIDUzLCA0OCwgMTI4LCA2NSwgNDgsIDUyLCA1NywgMTI4LCA2NSwgNDgsIDUyLCAKKyAgICA1NiwgMTI4LCA2NSwgNDgsIDUyLCA1NSwgMTI4LCA2NSwgNDgsIDUyLCA1NCwgMTI4LCA2NSwgNDgsIDUyLCA1MywgNjUsIAorICAgIDEyOCwgNjUsIDQ4LCA1MiwgNTMsIDEyOCwgNjUsIDQ4LCA1MiwgNTIsIDEyOCwgNjUsIDQ4LCA1MiwgNTEsIDY1LCAxMjgsIAorICAgIDY1LCA0OCwgNTIsIDUxLCAxMjgsIDY1LCA0OCwgNTIsIDUwLCA2NSwgMTI4LCA2NSwgNDgsIDUyLCA1MCwgMTI4LCA2NSwgCisgICAgNDgsIDUyLCA0OSwgMTI4LCA2NSwgNDgsIDUyLCA0OCwgNjUsIDEyOCwgNjUsIDQ4LCA1MiwgNDgsIDEyOCwgNjUsIDQ4LCAKKyAgICA1MSwgNTcsIDEyOCwgNjUsIDQ4LCA1MSwgNTYsIDEyOCwgNjUsIDQ4LCA1MSwgNTUsIDEyOCwgNjUsIDQ4LCA1MSwgNTQsIAorICAgIDEyOCwgNjUsIDQ4LCA1MSwgNTMsIDEyOCwgNjUsIDQ4LCA1MSwgNTIsIDEyOCwgNjUsIDQ4LCA1MSwgNTEsIDEyOCwgNjUsIAorICAgIDQ4LCA1MSwgNTAsIDY1LCAxMjgsIDY1LCA0OCwgNDksIDU1LCA2NSwgMTI4LCA2NSwgNDgsIDQ5LCA1MiwgNjUsIDEyOCwgCisgICAgNjUsIDQ4LCA0OCwgNTQsIDY2LCAxMjgsIDY1LCA0OCwgNDgsIDU0LCA2NSwgMTI4LCA2NSwgNDgsIDQ4LCA1MywgNjUsIAorICAgIDEyOCwgNjUsIDQ1LCA2OSwgODUsIDEyOCwgNDUsIDg1LCAyMDUsIDQ1LCA4MCwgNzIsIDgyLCA4NSwgMTI4LCA0NSwgNzUsIAorICAgIDcyLCA4OSwgODUsIDE5NiwgNDUsIDc1LCA3MiwgODksIDczLCA3NiwgMTI4LCA0NSwgNjgsIDkwLCA4NSwgMTk2LCA0NSwgCisgICAgNjcsIDcyLCA2NSwgMjEwLCA0NSwgNjcsIDcyLCA2NSwgNzYsIDEyOCwgCiB9OwogCiBzdGF0aWMgdW5zaWduZWQgaW50IGxleGljb25fb2Zmc2V0W10gPSB7Ci0gICAgMCwgMCwgNiwgMTAsIDE1LCAyMywgMjcsIDM0LCAzOSwgNDEsIDQ0LCA1MiwgNjIsIDY4LCA4MSwgOTMsIDEwMiwgMTA4LCAKLSAgICAxMTMsIDEyMSwgMTMwLCAxMzUsIDE0MCwgMTQ0LCAxNTAsIDE1MywgMTU4LCAxNjYsIDE3MywgMTgxLCAxODYsIDE5MSwgCi0gICAgMTk0LCAyMDAsIDIwOCwgMjE1LCAyMjUsIDIzMiwgMjQxLCAyNDQsIDI0NywgMjUyLCAyNTgsIDI2MiwgMjcxLCAyNzgsIAotICAgIDI4NSwgMjkwLCAyOTksIDMwNywgMzEzLCAzMTksIDMyNSwgMTQxLCAzMzAsIDMzMSwgMzM3LCAzNDUsIDM1MSwgMzU3LCAKLSAgICAzNjUsIDM3MiwgMzc0LCAzNzcsIDM4MSwgMzg4LCAzOTAsIDM5NywgNDAyLCA0MDgsIDQxMCwgNDE3LCA0MjUsIDQyNywgCi0gICAgMzExLCA0MzAsIDQzMiwgNDM3LCA0NDIsIDQ0NywgNDUzLCA0NjAsIDQ2OSwgNDc5LCA0ODQsIDQ4OSwgNDkzLCA1MDYsIAotICAgIDUxMywgNTE3LCA1MjYsIDUzMywgNTQwLCA1NDMsIDU0OSwgNTUzLCA1NjMsIDU3MSwgNTc5LCA1ODgsIDU5NiwgNjA0LCAKLSAgICA2MDksIDYxNywgNjI0LCA2MzQsIDY0NSwgNjQ5LCA2NTQsIDY1NywgNjYxLCA2NjUsIDY2NiwgNjcyLCA2NzgsIDY4MCwgCi0gICAgNjgzLCA2ODcsIDM0NCwgNjkwLCA2OTQsIDcwMywgNzA2LCA3MDksIDcxNCwgNzE4LCA3MjYsIDcyOSwgNzM1LCA3NDIsIAotICAgIDc0OSwgNzU4LCA3NjUsIDc3NCwgNzc5LCA3ODMsIDc5MiwgODAyLCA4MTEsIDgxNywgODIzLCA4MzAsIDgzOCwgODQ2LCAKLSAgICA4NTUsIDg2MywgODY3LCA4NzUsIDg4MCwgNzgxLCA1MTEsIDg4OSwgODkzLCA4OTcsIDkwNCwgOTA4LCA5MTUsIDY4OSwgCi0gICAgOTE4LCA5MjYsIDkyOSwgOTMzLCA5NDAsIDk0NCwgOTQ5LCA5NTcsIDk2MCwgMTkyLCA5NjYsIDk3MSwgOTgxLCA5OTAsIAotICAgIDk5NywgMTAwNCwgMTAxMiwgMTAyMCwgMTAyNiwgMTAzMCwgMTAzNSwgMTA0MCwgMTA0NiwgMTA1MSwgMTA1NCwgMTExLCAKLSAgICAxMDYwLCAxMDY0LCAxMDcwLCAxMDczLCAxMDg2LCAxMDg5LCAxMDkzLCAyMiwgMTA5NywgMTEwMiwgMTEwNSwgMTEwOCwgCi0gICAgMTExNCwgMTEyNCwgMTEyNiwgMTEzMiwgMTE0MiwgMTE0NywgMTE1NiwgMTE2NCwgMzI4LCAxMTY3LCAxMTcwLCAxMTc0LCAKLSAgICAxMTc5LCAxMTg1LCAxMTkwLCAxMTk3LCAxMTk5LCAxMjA0LCAxMjA5LCAxMjE1LCAxMjIwLCAxMjI1LCAxMjI5LCAxMjM0LCAKLSAgICAxMjQwLCAxMjQ1LCAxMjUwLCAxMjU0LCAxMjU5LCAxMjY0LCAxMjY4LCAxMjczLCAxMjc4LCAxMjgzLCAxMjg5LCAxMjk1LCAKLSAgICAxMzAxLCAxMzA2LCAxMzEwLCAxMzE1LCAxMzIwLCAxMzI1LCAxMzI5LCAxMzM0LCAxMzM5LCAxMzQ0LCAxMzQ5LCAxMjAwLCAKLSAgICAxMjA1LCAxMjEwLCAxMjE2LCAxMjIxLCAxMzUzLCAxMjI2LCAxMzU5LCAxMzY4LCAxMjMwLCAxMzcyLCAxMjM1LCAxMjQxLCAKLSAgICAxMjQ2LCAxMzc2LCAxMzgxLCAxMzg2LCAxMzkwLCAxMzk0LCAxNDAwLCAxNDA0LCAxMjUxLCAxNDA3LCAxNDExLCAxMjU1LCAKLSAgICAxNDE3LCAxMjYwLCAxNDIxLCAxNDI1LCAxMjY1LCAxNDI5LCAxNDM0LCAxNDM4LCAxNDQxLCAxNDQ1LCAxMjY5LCAxMjc0LCAKLSAgICAxNDUwLCAxMjc5LCAxNDU2LCAxNDYyLCAxNDY4LCAxNDc0LCAxMjg0LCAxMjk2LCAxMzAyLCAxNDc4LCAxNDgyLCAxNDg2LCAKLSAgICAxNDg5LCAxMzA3LCAxNDkzLCAxNDk1LCAxNTAwLCAxNTA1LCAxNTExLCAxNTE2LCAxNTIxLCAxNTI1LCAxNTMwLCAxNTM1LCAKLSAgICAxNTQwLCAxNTQ1LCAxNTUxLCAxNTU2LCAxNTYxLCAxNTY3LCAxNTczLCAxNTc4LCAxNTgyLCAxNTg3LCAxNTkyLCAxNTk3LCAKLSAgICAxNjAyLCAxNjA2LCAxNjE0LCAxNjE4LCAxNjIzLCAxNjI4LCAxNjMzLCAxNjM4LCAxNjQyLCAxNjQ1LCAxNjUwLCAxNjU1LCAKLSAgICAxNjYwLCAxNjY1LCAxNjcxLCAxNjc2LCAxNjgwLCAxMzExLCAxNjgzLCAxNjg4LCAxNjkzLCAxMzE2LCAxNjk3LCAxNzAxLCAKLSAgICAxNzA4LCAxMzIxLCAxNzE1LCAxMzI2LCAxNzE5LCAxNzIxLCAxNzI2LCAxNzMyLCAxMzMwLCAxNzM3LCAxNzQ2LCAxMzM1LCAKLSAgICAxNzUxLCAxNzU3LCAxMzQwLCAxNzYyLCAxNzY3LCAxNzcwLCAxNzc1LCAxNzc5LCAxNzgzLCAxNzg3LCAxNzkwLCAxNzk0LCAKLSAgICAxMzQ1LCAxMzUwLCAxMTAwLCAxNzk5LCAxODA1LCAxODExLCAxODE3LCAxODIzLCAxODI5LCAxODM1LCAxODQxLCAxODQ3LCAKLSAgICAxODUyLCAxODU4LCAxODY0LCAxODcwLCAxODc2LCAxODgyLCAxODg4LCAxODk0LCAxOTAwLCAxOTA2LCAxOTExLCAxOTE2LCAKLSAgICAxOTIxLCAxOTI2LCAxOTMxLCAxOTM2LCAxOTQxLCAxOTQ2LCAxOTUxLCAxOTU2LCAxOTYyLCAxOTY3LCAxOTczLCAxOTc4LCAKLSAgICAxOTg0LCAxOTkwLCAxOTk1LCAyMDAxLCAyMDA3LCAyMDEzLCAyMDE5LCAyMDI0LCAyMDI5LCAyMDMxLCAyMDMyLCAyMDM2LCAKLSAgICAyMDQwLCAyMDQ1LCAyMDQ5LCAyMDUzLCAyMDU3LCAyMDYxLCAyMDY0LCAyMDY5LCAyMDczLCAyMDc4LCAyMDgyLCAyMDg2LCAKLSAgICAyMDkxLCAyMDk1LCAyMDk4LCAyMTAyLCAyMTA4LCAyMTIyLCAyMTI2LCAyMTMwLCAyMTMzLCAyMTM4LCAyMTQyLCAyMTQ2LCAKLSAgICAyMTQ5LCAyMTUzLCAyMTU4LCAyMTYzLCAyMTY4LCAyMTczLCAyMTc3LCAyMTgxLCAyMTg1LCAyMTkwLCAyMTk0LCAyMTk5LCAKLSAgICAyMjAzLCAyMjA4LCAyMjE0LCAyMjIxLCAyMjI3LCAyMjMyLCAyMjM3LCAyMjQyLCAyMjQ4LCAyMjUzLCAyMjU5LCAyMjY0LCAKLSAgICAyMjY3LCAxMjE3LCAyMjY5LCAyMjc2LCAyMjg0LCAyMjk0LCAyMzAzLCAyMzE3LCAyMzIxLCAyMzI1LCAyMzM4LCAyMzQ2LCAKLSAgICAyMzUwLCAyMzU1LCAyMzU5LCAyMzYyLCAyMzY2LCAyMzcwLCAyMzc1LCAyMzgwLCAyMzg1LCAyMzg5LCAyMzkyLCAyMzk2LCAKLSAgICAyNDAzLCAyNDEwLCAyNDE2LCAyNDIxLCAyNDI2LCAyNDMyLCAyNDM4LCAyNDQzLCAyNDQ2LCAxNzIzLCAyNDQ4LCAyNDU0LCAKLSAgICAyNDU4LCAyNDYzLCAyNDY3LCAyNDcxLCAxNzI4LCAxNzM0LCAyNDc2LCAyNDgwLCAyNDgzLCAyNDg4LCAyNDkzLCAyNDk4LCAKLSAgICAyNTAzLCAyNTA3LCAyNTE0LCAyNTE5LCAyNTIyLCAyNTI5LCAyNTM1LCAyNTM5LCAyNTQzLCAyNTQ3LCAyNTUyLCAyNTU5LCAKLSAgICAyNTY0LCAyNTY5LCAyNTc2LCAyNTgyLCAyNTg4LCAyNTk0LCAyNjA4LCAyNjI1LCAyNjQwLCAyNjU1LCAyNjY0LCAyNjY5LCAKLSAgICAyNjczLCAyNjc4LCAyNjgzLCAyNjg3LCAyNjk5LCAyNzA2LCAyNzEyLCAyMjE3LCAyNzE4LCAyNzI1LCAyNzMxLCAyNzM1LCAKLSAgICAyNzM4LCAyNzQ1LCAyNzUxLCAyNzU1LCAyNzU5LCAyNzYzLCAyMDU0LCAyNzY3LCAyNzcyLCAyNzc3LCAyNzgxLCAyNzg5LCAKLSAgICAyNzkzLCAyNzk3LCAyODAxLCAyODA2LCAyODExLCAyODE2LCAyODIwLCAyODI1LCAyODMwLCAyODM0LCAyODM5LCAyODQzLCAKLSAgICAyODQ2LCAyODUwLCAyODU0LCAyODU5LCAyODYzLCAyODY3LCAyODczLCAyODgyLCAyODg2LCAyODkwLCAyODk2LCAyOTAxLCAKLSAgICAyOTA4LCAyOTEyLCAyOTIyLCAyOTI2LCAyOTMxLCAyOTM1LCAyOTQwLCAyOTQ2LCAyOTUxLCAyOTU1LCAyOTU5LCAyOTYzLCAKLSAgICAyNDA2LCAyOTcxLCAyOTc2LCAyOTgyLCAyOTg3LCAyOTkxLCAyOTk2LCAzMDAxLCAzMDA1LCAzMDExLCAzMDE2LCAzMDIyLCAKLSAgICAzMDI2LCAzMDMyLCAzMDM3LCAzMDQyLCAzMDQ3LCAzMDUyLCAzMDU3LCAzMDYyLCAzMDY3LCAzMDcyLCAzMDc3LCAzMDgzLCAKLSAgICAzMDg4LCAxMjI3LCA4MCwgMzA5NCwgMzA5OCwgMzEwMiwgMzEwNiwgMzExMSwgMzExNSwgMzExOSwgMzEyMywgMzEyNywgCi0gICAgMzEzMiwgMzEzNiwgMzE0MSwgMzE0NSwgMzE0OCwgMzE1MiwgMzE1NywgMzE2MSwgMzE2NiwgMzE3MCwgMzE3NCwgMzE3OCwgCi0gICAgMzE4MywgMzE4NywgMzE5MCwgMzIwMywgMzIwNywgMzIxMSwgMzIxNSwgMzIxOSwgMzIyMywgMzIyNiwgMzIzMCwgMzIzNCwgCi0gICAgMzIzOSwgMzI0MywgMzI0OCwgMzI1MywgMzI1OCwgMzI2MiwgMzI2NSwgMzI2OCwgMzI3NCwgMzI3OCwgMzI4MiwgMzI4NSwgCi0gICAgMzI4OSwgMzI5MywgMzI5NiwgMzMwMiwgMzMwNywgMzMxMiwgMzMxOCwgMzMyMywgMzMyOCwgMzMzNCwgMzM0MCwgMzM0NSwgCi0gICAgMzM1MCwgMzM1NSwgMTA5MSwgNTQyLCAzMzYwLCAzMzYzLCAzMzY4LCAzMzcyLCAzMzc1LCAzMzc5LCAzMzg0LCAzMzg5LCAKLSAgICAzMzkzLCAzMzk4LCAzNDAyLCAzNDA3LCAzNDExLCAzNDE1LCAzNDIxLCAzNDI3LCAzNDMwLCAzNDMzLCAzNDM5LCAzNDQ2LCAKLSAgICAzNDUzLCAzNDU5LCAzNDY2LCAzNDcxLCAzNDc1LCAzNDgyLCAzNDg3LCAzNDkxLCAzNTAxLCAzNTA1LCAzNTA5LCAzNTE0LCAKLSAgICAzNTE5LCAzNTI5LCAyMDY1LCAzNTM0LCAzNTM4LCAzNTQxLCAzNTQ3LCAzNTUyLCAzNTU4LCAzNTY0LCAzNTY5LCAzNTc2LCAKLSAgICAzNTgwLCAzNTg0LCA2NTgsIDY4OCwgMzU4OCwgMzU5NSwgMzYwMiwgMzYwOSwgMzYxNSwgMzYyMSwgMzYyNiwgMzYzMCwgCi0gICAgMzYzNiwgMzY0MSwgMzY0NSwgMjA3NCwgMzY0OSwgMzY1NywgNTgzLCAzNjYzLCAzNjc0LCAzNjc4LCAzNjg4LCAyMDc5LCAKLSAgICAzNjk0LCAzNjk5LCAzNzE0LCAzNzIwLCAzNzI3LCAzNzM3LCAzNzQzLCAzNzQ4LCAzNzU0LCAzNzYwLCAzNzYzLCAzNzY3LCAKLSAgICAzNzcyLCAzNzc5LCAzNzg0LCAzNzg4LCAzNzkyLCAzNzk2LCAzODAwLCAzODA1LCAzODExLCAzMTUzLCAzODE2LCAzODI4LCAKLSAgICAzODM2LCAzODQxLCAxNTI3LCAzODQ4LCAzODUxLCAzODU0LCAzODU4LCAzODYxLCAzODY3LCAzODcxLCAzODg1LCAzODg5LCAKLSAgICAzODkyLCAzODk2LCAzOTAyLCAzOTA4LCAzOTEzLCAzOTE3LCAzOTIxLCAzOTI3LCAzOTM4LCAzOTQ0LCAzOTQ5LCAzOTU1LCAKLSAgICAzOTU5LCAzOTY3LCAzOTc3LCAzOTgzLCAzOTg4LCAzOTk3LCA0MDA1LCA0MDEyLCA0MDE2LCA0MDIyLCA0MDMxLCA0MDQwLCAKLSAgICA0MDQ0LCA0MDQ5LCA0MDU0LCA0MDU4LCA0MDY2LCA0MDcwLCA0MDc1LCA0MDc5LCAyMDg3LCAxMzY5LCA0MDg1LCA0MDkwLCAKLSAgICA0MDk2LCA0MTAxLCA0MTA2LCA0MTExLCA0MTE2LCA0MTIxLCA0MTI2LCA0MTMyLCA0MTM3LCA0MTQzLCA0MTQ4LCA0MTUzLCAKLSAgICA0MTU4LCA0MTY0LCA0MTY5LCA0MTc0LCA0MTc5LCA0MTg0LCA0MTkwLCA0MTk1LCA0MjAxLCA0MjA2LCA0MjExLCA0MjE2LCAKLSAgICA0MjIxLCA0MjI2LCA0MjMxLCA0MjM3LCA0MjQyLCA0MjQ3LCAzMzUsIDQzNiwgNDI1MiwgNDI1OCwgNDI2MiwgNDI2NiwgCi0gICAgNDI3MSwgNDI3NSwgNDI3OSwgNDI4MiwgNDI4NiwgNDI5MCwgNDI5NCwgNDI5OSwgNDMwMywgNDMwNywgNDMxMywgNDA4MiwgCi0gICAgNDMxOCwgNDMyMSwgNDMyOCwgNDMzMiwgNDM0NSwgNDM0OSwgNDM1MywgNDM1NywgNDM2MSwgNDM2NSwgNDM2OSwgNDM3NSwgCi0gICAgNDM4MiwgNDM5MCwgNDM5NCwgNDQwMiwgNDQxMSwgNDQxNywgNDQyOSwgNDQzNCwgNDQzNywgNDQ0MSwgNDQ1MSwgNDQ1OSwgCi0gICAgNDQ2NywgNDQ3MywgNDQ3NywgNDQ4NywgNDQ5NywgNDUwNSwgNDUxMiwgNDUxOSwgNDUyNSwgNDUzMSwgNDUzOCwgNDU0MiwgCi0gICAgNDU0OSwgNDU1OSwgNDU2OSwgNDU3NywgNDU4NCwgNDU4OSwgNDU5MywgNDYwMSwgNDYwNiwgNDYxMywgNDYyMSwgNDYyNiwgCi0gICAgNDYzMSwgNDYzNSwgNDY0OSwgNDY1NCwgNDY1OSwgNDY2NiwgNDY3NSwgNDY3OCwgNDY4MiwgNDY4NiwgNDY4OSwgNDY5NCwgCi0gICAgNDY5OSwgNDcwOCwgNDcxNCwgNDcyMCwgNDcyNiwgNDczMCwgNDc0MSwgNDc1MSwgNDc2NiwgNDc4MSwgNDc5NiwgNDgxMSwgCi0gICAgNDgyNiwgNDg0MSwgNDg1NiwgNDg3MSwgNDg4NiwgNDkwMSwgNDkxNiwgNDkzMSwgNDk0NiwgNDk2MSwgNDk3NiwgNDk5MSwgCi0gICAgNTAwNiwgNTAyMSwgNTAzNiwgNTA1MSwgNTA2NiwgNTA4MSwgNTA5NiwgNTExMSwgNTEyNiwgNTE0MSwgNTE1NiwgNTE3MSwgCi0gICAgNTE4NiwgNTIwMSwgNTIxNiwgNTIzMSwgNTI0NiwgNTI2MSwgNTI3NiwgNTI5MSwgNTMwNiwgNTMyMSwgNTMzNiwgNTM1MSwgCi0gICAgNTM2NiwgNTM4MSwgNTM5NiwgNTQxMSwgNTQyNiwgNTQ0MSwgNTQ1NiwgNTQ3MSwgNTQ4NiwgNTQ5NSwgNTUwNCwgNTUwOSwgCi0gICAgNTUxNSwgNTUyNSwgNTUyOSwgNTUzNCwgNTUzOSwgNTU0NywgNTU1MSwgNTU1NCwgNTU1OCwgMjkxNywgNTU2MSwgNTU2NiwgCi0gICAgMzEwLCA0NDUsIDU1NzIsIDU1ODAsIDU1ODQsIDU1ODgsIDU1OTEsIDU1OTcsIDU2MDEsIDU2MDksIDU2MTUsIDU2MjAsIAotICAgIDU2MjcsIDU2MzQsIDU2NDAsIDU2NDUsIDU2NTIsIDU2NTgsIDU2NjYsIDU2NzAsIDU2NzUsIDU2ODcsIDU2OTgsIDU3MDUsIAotICAgIDU3MTEsIDMxNzUsIDU3MTUsIDU3MjEsIDU3MjYsIDU3MzEsIDU3MzYsIDU3NDIsIDU3NDcsIDU3NTIsIDU3NTcsIDU3NjIsIAotICAgIDU3NjgsIDU3NzMsIDU3NzgsIDU3ODQsIDU3ODksIDU3OTUsIDU4MDAsIDU4MDYsIDU4MTEsIDU4MTcsIDU4MjIsIDU4MjcsIAotICAgIDU4MzIsIDU4MzcsIDU4NDIsIDU4NDgsIDU4NTMsIDU4NTgsIDU4NjMsIDU4NjksIDU4NzUsIDU4ODEsIDU4ODcsIDU4OTMsIAotICAgIDU4OTksIDU5MDUsIDU5MTEsIDU5MTcsIDU5MjMsIDU5MjksIDU5MzUsIDU5NDAsIDU5NDUsIDU5NTAsIDU5NTUsIDU5NjAsIAotICAgIDU5NjUsIDU5NzAsIDU5NzUsIDU5ODEsIDU5ODcsIDU5OTIsIDU5OTgsIDYwMDQsIDYwMTAsIDYwMTUsIDYwMjAsIDYwMjUsIAotICAgIDYwMzAsIDYwMzYsIDYwNDIsIDYwNDcsIDYwNTIsIDYwNTcsIDYwNjIsIDYwNjcsIDYwNzMsIDYwNzgsIDYwODQsIDYwOTAsIAotICAgIDYwOTYsIDYxMDIsIDYxMDgsIDYxMTQsIDYxMjAsIDYxMjYsIDYxMzIsIDIwOTYsIDU1OTAsIDYxMzcsIDYxNDEsIDYxNDUsIAotICAgIDYxNDgsIDYxNTUsIDYxNTgsIDYxNjYsIDYxNzEsIDYxNzYsIDYxNjcsIDYxODEsIDYxNjgsIDYxODUsIDYxOTEsIDYxOTcsIAotICAgIDYyMDIsIDYyMDcsIDYyMTQsIDYyMjIsIDYyMjcsIDYyMzEsIDYyMzQsIDYyMzgsIDIxMjcsIDU1MSwgNjI0MiwgNjI0NiwgCi0gICAgNjI1MSwgNjI1NywgNjI2MiwgNjI2NiwgNjI2OSwgNjI3MywgNjI3OSwgNjI4NCwgNjI4OCwgNjI5NSwgNjI5OSwgNjMwMywgCi0gICAgNjMwNywgOTQ2LCA3NDcsIDYzMTAsIDYzMTgsIDYzMjUsIDYzMzIsIDYzMzgsIDYzNDUsIDYzNTMsIDYzNjAsIDYzNjcsIAotICAgIDYzNzIsIDYzODQsIDEyNDcsIDEzNzcsIDEzODIsIDYzOTUsIDEzODcsIDYzOTksIDY0MDMsIDY0MTIsIDY0MjAsIDY0MjksIAotICAgIDY0MzUsIDY0NDAsIDY0NDQsIDY0NTAsIDY0NTUsIDY0NjIsIDY0NjYsIDY0NzUsIDY0ODQsIDY0OTMsIDY1MDIsIDY1MDcsIAotICAgIDY1MTIsIDY1MjQsIDY1MjksIDY1MzcsIDIxNzgsIDY1NDEsIDY1NDMsIDY1NDgsIDY1NTIsIDY1NjEsIDY1NjksIDEzOTEsIAotICAgIDEzMywgMzQwMywgMzQwOCwgNjU3NSwgNjU3OSwgNjU4OCwgNjU5NCwgNjU5OSwgNjYwMiwgNjYxMSwgMjY1MiwgNjYxNywgCi0gICAgNjYyNSwgNjYyOSwgNjYzMywgMjE5MSwgNjYzNywgNjY0MiwgNjY0OSwgNjY1NSwgNjY2MSwgNjY2NCwgNjY2NiwgNjY2OSwgCi0gICAgNjY3NywgNjY4NSwgNjY5MywgNjY5NiwgNjcwMSwgNjE3OCwgNjcwNCwgNjcwNiwgNjcxMSwgNjcxNiwgNjcyMSwgNjcyNiwgCi0gICAgNjczMSwgNjczNiwgNjc0MSwgNjc0NiwgNjc1MSwgNjc1NiwgNjc2MiwgNjc2NywgNjc3MiwgNjc3NywgNjc4MywgNjc4OCwgCi0gICAgNjc5MywgNjc5OCwgNjgwMywgNjgwOCwgNjgxMywgNjgxOSwgNjgyNCwgNjgyOSwgNjgzNCwgNjgzOSwgNjg0NCwgNjg0OSwgCi0gICAgNjg1NCwgNjg1OSwgNjg2NCwgNjg2OSwgNjg3NCwgNjg3OSwgNjg4NCwgNjg4OSwgNjg5NCwgNjg5OSwgNjkwNCwgNjkxMCwgCi0gICAgNjkxNiwgNjkyMSwgNjkyNiwgNjkzMSwgNjkzNiwgNjk0MSwgMjIxNSwgMjIyMiwgMjIyOCwgNjk0NiwgNjk1MiwgMjI1NCwgCi0gICAgMjI2MCwgNjk2MCwgNjk2NCwgNjk2OSwgNjk3MywgNjk3NywgNjk4MSwgNjk4NiwgNjk5MCwgNjk5NSwgNjk5OSwgNzAwMiwgCi0gICAgNzAwNSwgNzAxMSwgNzAxNywgNzAyMywgNzAyOSwgNzAzNSwgNzA0MSwgNzA0NywgNzA1MSwgNzA1NSwgNzA1OSwgNzA2MywgCi0gICAgNzA2NywgNzA3MiwgNzA3OSwgNzA5MCwgNzA5OCwgNzEwOCwgNzExNSwgNzEyMCwgNzEyNCwgNzEzNSwgNzE0OCwgNzE1OSwgCi0gICAgNzE3MiwgNzE4MywgNzE5NSwgNzIwNywgNzIxOSwgNzIzMiwgNzI0NSwgNzI1MiwgNzI1OCwgNzI3MiwgNzI3OSwgNzI4NSwgCi0gICAgNzI4OSwgNzI5NCwgNzI5OCwgNzMwNSwgNzMxMywgNzMxNywgNzMyMywgNzMyOSwgNzMzOSwgNzM0MywgNzM0OCwgNzM1MywgCi0gICAgNzM2MCwgNzM2NiwgNzM3NiwgNjM0MCwgNzM4MiwgNzM4NiwgNzM5MywgNzQ2LCA3Mzk3LCA3NDAxLCA3NDA2LCA3NDExLCAKLSAgICA3NDE2LCA3NDIwLCA3NDI2LCA3NDM0LCA3NDQwLCA3NDQ0LCA3NDUwLCA3NDYwLCA3NDY0LCA3NDcwLCA3NDc1LCA3NDc5LCAKLSAgICA3NDg1LCA3NDkxLCAyMTE5LCA3NDk2LCA3NDk4LCA3NTA2LCA3NTE1LCA3NTE5LCA3NTI1LCA3NTMwLCA3NTM1LCA3NTQwLCAKLSAgICA3NTQ1LCA3NTUxLCA3NTU2LCAzOTIzLCA3NTYxLCA3NTY1LCA3NTcxLCA3NTc2LCA3NTgyLCA3NTg3LCA3NTkyLCA3NTk4LCAKLSAgICA3NjAzLCA3NTIwLCA3NjA5LCA3NjEzLCA3NjIwLCA3NjI2LCA3NjMxLCA3NjM1LCA0NjQ1LCA3NjQwLCA3NjQ5LCA2NjQ1LCAKLSAgICA2NjUyLCA3NjU0LCAyODAzLCA3NjU4LCA3NjYzLCA3NjY4LCA3NTMxLCA3NjcyLCA3NTM2LCA3NTQxLCA3Njc3LCA3Njg0LCAKLSAgICA3NjkxLCA3Njk3LCA3NzAzLCA3NzA5LCA3NzE0LCA3NzE5LCA3NzI0LCA3NTQ2LCA3NTUyLCA3NzMwLCA3NzM2LCA3NzQxLCAKLSAgICA3NzQ5LCA3NTU3LCA3NzU0LCAxMDI4LCA3NzU3LCA3NzY1LCA3NzcxLCA3Nzc3LCA3Nzg2LCA3Nzk0LCA3Nzk5LCA3ODA1LCAKLSAgICA3ODEzLCA3ODIwLCA3ODM1LCA3ODUyLCA3ODcxLCA3ODgwLCA3ODg4LCA3OTAzLCA3OTE0LCA3OTI0LCA3OTM0LCA3OTQyLCAKLSAgICA3OTQ4LCA3OTYwLCA3OTY5LCA3OTc3LCA3OTg0LCA3OTkxLCA3OTk3LCA4MDAyLCA4MDEwLCA4MDIwLCA4MDI3LCA4MDM3LCAKLSAgICA4MDQ3LCA4MDU3LCA4MDY1LCA4MDcyLCA4MDgxLCA4MDkxLCA4MTA1LCA4MTIwLCA4MTI5LCA4MTM3LCA4MTQyLCA4MTQ2LCAKLSAgICA4MTU1LCA4MTYxLCA4MTY2LCA4MTc2LCA4MTg2LCA4MTk2LCA4MjAxLCA4MjA1LCA4MjE0LCA4MjE5LCA4MjI5LCA4MjQwLCAKLSAgICA4MjUzLCA4MjY2LCA4Mjc4LCA4Mjg2LCA4MjkxLCA4Mjk1LCA4MzAxLCA4MzA2LCA4MzE0LCA4MzIyLCA4MzI5LCA4MzM0LCAKLSAgICA4MzQyLCA4MzQ4LCA4MzUxLCA4MzU1LCA4MzYxLCA4MzY5LCA4Mzc0LCA4Mzc4LCA4Mzg2LCA4Mzk1LCA4NDAzLCA4NDA5LCAKLSAgICA4NDEzLCA4NDIwLCA4NDMxLCA4NDM1LCA4NDM4LCA4NDQ0LCA4NDQ5LCA4NDUzLCA4NDU5LCA4NDY2LCA4NDcyLCA4NDc3LCAKLSAgICA4NDg0LCA4NDkxLCA4NDk4LCA4NTA1LCA4NTEyLCA4NTE5LCA4NTI0LCA3ODQ4LCA4NTI5LCA4NTM1LCA4NTQyLCA4NTQ5LCAKLSAgICA4NTU0LCA4NTYxLCA4NTcwLCA4NTc0LCA4NTg2LCA4NTkwLCA4NTkzLCA4NTk3LCA4NjAxLCA4NjA1LCA4NjA5LCA4NjE1LCAKLSAgICA4NjIwLCA4NjI2LCA4NjMxLCA4NjM2LCA4NjQyLCA4NjQ3LCA4NjUyLCA3MzU2LCA4NjU3LCA4NjYxLCA4NjY1LCA4NjY5LCAKLSAgICA4Njc0LCA4Njc5LCA4Njg3LCA4NjkzLCA4Njk3LCA4NzAxLCA4NzA4LCA4NzEzLCA4NzIxLCA4NzI2LCA4NzMwLCA4NzMzLCAKLSAgICA4NzM5LCA4NzQ2LCA4NzUwLCA4NzUzLCA4NzU4LCA4NzYyLCAzOTYyLCA4NzY4LCA4Nzc3LCAzNiwgODc4NSwgODc5MSwgCi0gICAgODc5NiwgNzM3MSwgODgwMSwgODgwNywgODgxMiwgODgxNiwgODgxOSwgODgzNCwgODg1MywgODg2NSwgODg3OCwgODg5MSwgCi0gICAgODkwNCwgODkxOCwgODkzMSwgODk0NiwgODk1MywgODk1OSwgODk2MywgODk3NywgODk4MiwgODk4OCwgODk5MywgOTAwMSwgCi0gICAgOTAwNiwgNjQ3MSwgOTAxMSwgOTAxNCwgOTAyMSwgOTAyNiwgOTAzMCwgMjgwOCwgOTU1LCA5MDM2LCA5MDQwLCA5MDQ2LCAKLSAgICA5MDUyLCA5MDU3LCA5MDYzLCA5MDY4LCA3NTY2LCA5MDc0LCA5MDgwLCA5MDg1LCA5MDkwLCA5MDk4LCA5MTA0LCA5MTE3LCAKLSAgICA5MTI1LCA5MTMyLCA3NTcyLCA5MTM4LCA5MTQ2LCA5MTU0LCA5MTYxLCA5MTc0LCA5MTg2LCA5MTk2LCA5MjAzLCA5MjEwLCAKLSAgICA5MjE5LCA5MjI4LCA5MjM2LCA5MjQzLCA5MjQ4LCA5MjU0LCA3NTc3LCA5MjU5LCA5MjY1LCA3NTgzLCA5MjcwLCA5MjczLCAKLSAgICA5MjgwLCA5Mjg2LCA5Mjk5LCA3MDgzLCA5MzEwLCA5MzE2LCA5MzI1LCA5MzMzLCA5MzQwLCA5MzQ2LCA5MzUyLCA5MzU3LCAKLSAgICA5MzYxLCA5MzY2LCA4ODI2LCA5MzcyLCA3NTg4LCA5Mzc5LCA5Mzg0LCA5MzkxLCA5Mzk3LCA5NDAzLCA5NDA4LCA5NDE2LCAKLSAgICA5NDI0LCA5NDMxLCA5NDM1LCA5NDQ5LCA5NDU5LCA5NDY0LCA5NDY4LCA5NDc5LCA5NDg1LCA5NDkwLCA5NDk1LCA3NTkzLCAKLSAgICA3NTk5LCA5NDk5LCA5NTAyLCA5NTA3LCA5NTE5LCA5NTI2LCA5NTMxLCA5NTM1LCA5NTQwLCA5NTQ0LCA5NTUxLCA5NTU3LCAKLSAgICA3NjA0LCA3NTIxLCA5NTY0LCAyODEzLCA4LCA5NTcxLCA5NTc2LCA5NTgwLCA5NTg2LCA5NTk0LCA5NjA0LCA5NjA5LCAKLSAgICA5NjE0LCA5NjIxLCA5NjI4LCA5NjMyLCA5NjQzLCA5NjUzLCA5NjYyLCA5Njc0LCA5Njc5LCA5NjgzLCA5NjkxLCA5NzA1LCAKLSAgICA5NzA5LCA5NzEyLCA5NzIwLCA5NzI3LCA5NzM1LCA5NzM5LCA5NzUwLCA5NzU0LCA5NzYxLCA5NzY2LCA5NzcwLCA5Nzc2LCAKLSAgICA5NzgxLCA5Nzg1LCA5NzkxLCA5Nzk2LCA5ODA3LCA5ODExLCA5ODE0LCA5ODIwLCA5ODI1LCA5ODMxLCA5ODM3LCA5ODQ0LCAKLSAgICA5ODU1LCA5ODY1LCA5ODc1LCA5ODg0LCA5ODkxLCA3NjE0LCA3NjIxLCA3NjI3LCA3NjMyLCA5ODk3LCA5OTAzLCA3NjM2LCAKLSAgICA5OTA5LCA5OTEyLCA5OTE5LCA5OTI0LCA5OTM5LCA5OTU1LCA5OTcwLCA5OTc4LCA5OTg0LCAxMDQzLCA0MDAsIDk5ODksIAotICAgIDk5OTcsIDEwMDA0LCAxMDAxMCwgMTAwMTUsIDEwMDIwLCA3NjQxLCAxMDAyMiwgMTAwMjYsIDEwMDMxLCAxMDAzNSwgCi0gICAgMTAwNDUsIDEwMDUwLCAxMDA1NCwgMTAwNjMsIDEwMDY3LCAxMDA3MCwgMTAwNzcsIDEwMDgxLCAxMDA4NCwgMTAwOTIsIAotICAgIDEwMDk5LCAxMDEwNywgMTAxMTEsIDEwMTE4LCAxMDEyNywgMTAxMzAsIDEwMTM0LCAxMDEzOCwgMTAxNDQsIDEwMTQ4LCAKLSAgICAxMDE1MiwgMTAxNTYsIDEwMTYyLCAxMDE3MiwgMTAxNzYsIDEwMTg0LCAxMDE4OCwgMTAxOTUsIDEwMTk5LCAxMDIwNCwgCi0gICAgMTAyMDgsIDEwMjE1LCAxMDIyMSwgMTAyMjksIDEwMjM1LCAxMDI0NSwgMTAyNTAsIDEwMjU1LCAxMDI1OSwgMTAyNjcsIAotICAgIDM4MjIsIDEwMjc1LCAxMDI4MCwgMTAyODQsIDEwMjg4LCAxMDI5MSwgMTAyOTksIDEwMzA2LCAxMDMxMCwgNDQ2OSwgCi0gICAgMTAzMTQsIDEwMzE5LCAxMDMyMywgMTAzMzQsIDEwMzM5LCAxMDM0NSwgMTAzNDksIDEwMzUyLCAxMDM2MCwgMTAzNjUsIAotICAgIDEwMzcwLCAxMDM3NywgMTAzODIsIDc2NTAsIDEwMzg3LCAxMDM5MSwgMTY4NSwgNDYxOSwgMTAzOTgsIDEwNDAzLCAxMDQwOCwgCi0gICAgMTA0MTMsIDEwNDE5LCAxMDQyNCwgMTA0MzAsIDEwNDM1LCAxMDQ0MCwgMTA0NDUsIDEwNDUwLCAxMDQ1NSwgMTA0NjAsIAotICAgIDEwNDY1LCAxMDQ3MCwgMTA0NzUsIDEwNDgwLCAxMDQ4NSwgMTA0OTAsIDEwNDk1LCAxMDUwMCwgMTA1MDUsIDEwNTEwLCAKLSAgICAxMDUxNiwgMTA1MjEsIDEwNTI2LCAxMDUzMSwgMTA1MzYsIDEwNTQxLCAxMDU0NywgMTA1NTIsIDEwNTU3LCAxMDU2MywgCi0gICAgMTA1NjgsIDEwNTc0LCAxMDU3OSwgMTA1ODUsIDEwNTkwLCAxMDU5NSwgMTA2MDAsIDEwNjA1LCAxMDYxMSwgMTA2MTYsIAotICAgIDEwNjIxLCAxMDYyNiwgNzI0LCAxMzksIDEwNjM0LCAxMDYzOCwgMTA2NDMsIDEwNjQ4LCAxMDY1MiwgMTA2NTYsIDEwNjYwLCAKLSAgICAxMDY2NSwgMTA2NjksIDEwNjc0LCAxMDY3OCwgMTA2ODEsIDEwNjg1LCAxMDY4OSwgMTA2OTQsIDEwNzA0LCAxMDcxMCwgCi0gICAgMTA3MTgsIDEwNzIyLCAxMDcyNiwgMTA3MzMsIDEwNzQxLCAxMDc1MCwgMTA3NjEsIDEwNzY4LCAxMDc3NSwgMTA3ODQsIAotICAgIDEwNzkzLCAxMDgwMSwgMTA4MTAsIDEwODE5LCAxMDgyOCwgMTA4MzcsIDEwODQ3LCAxMDg1NywgMTA4NjcsIDEwODc3LCAKLSAgICAxMDg4NywgMTA4OTYsIDEwOTA2LCAxMDkxNiwgMTA5MjYsIDEwOTM2LCAxMDk0NiwgMTA5NTYsIDEwOTY2LCAxMDk3NSwgCi0gICAgMTA5ODUsIDEwOTk1LCAxMTAwNSwgMTEwMTUsIDExMDI1LCAxMTAzNSwgMTEwNDQsIDExMDU0LCAxMTA2NCwgMTEwNzQsIAotICAgIDExMDg0LCAxMTA5NCwgMTExMDQsIDExMTE0LCAxMTEyNCwgMTExMzQsIDExMTQzLCAxMTE1MywgMTExNjMsIDExMTczLCAKLSAgICAxMTE4MywgMTExOTMsIDExMjAzLCAxMTIxMywgMTEyMjMsIDExMjMzLCAxMTI0MywgMTEyNTIsIDExMjU4LCAxMTI2MiwgCi0gICAgMTEyNjUsIDExMjY5LCAxMTI3NCwgMTEyODEsIDExMjg3LCAxMTI5MiwgMTEyOTYsIDExMzAxLCAxMTMxMCwgMTEzMTgsIAotICAgIDExMzIzLCAxMTMyNywgMTEzMzEsIDExMzM3LCAxMTM0MiwgMTEzNDgsIDc2NTksIDExMzUzLCAxMTM1OCwgMTEzNjcsIAotICAgIDc2NjQsIDExMzcyLCAxMTM3NSwgMTEzODEsIDExMzg5LCA3NjY5LCAxMTM5NiwgMTE0MDAsIDExNDA0LCAxMTQwOCwgCi0gICAgMTE0MTgsIDExNDI0LCAxMTQyOSwgMTE0MzgsIDExNDQ2LCAxMTQ1MywgMTE0NjAsIDExNDY1LCAxMTQ3MiwgMTE0NzcsIAotICAgIDExNDgxLCAxMTQ4NCwgMTE0OTUsIDExNTA1LCAxMTUxNCwgMTE1MjIsIDExNTMzLCAxMTU0NSwgMTE1NTUsIDExNTYwLCAKLSAgICAxMTU2NCwgMTE1NjksIDExNTc0LCAxMTU3OCwgMTE1ODQsIDExNTkyLCAxMTU5OSwgMTE2MTAsIDExNjE1LCAxMTYyNSwgCi0gICAgMTE2MzQsIDExNjM4LCAxMTY0MSwgMTE2NDgsIDExNjU4LCAxMTY2NywgMTE2NzQsIDExNjc4LCAxMTY4NSwgMTE2OTEsIAotICAgIDExNjk2LCAxMTcwMSwgMTE3MDUsIDExNzE0LCAxMTcxOSwgMTE3MjUsIDExNzI5LCAxMTczNCwgMTE3MzgsIDExNzQ3LCAKLSAgICAxMTc1NSwgMTE3NjMsIDExNzcwLCAxMTc3OCwgMTE3OTAsIDExODAxLCAxMTgxMSwgMTE4MTgsIDExODI0LCAxMTgzMywgCi0gICAgMTE4NDQsIDExODUzLCAxMTg2NSwgMTE4NzcsIDExODg5LCAxMTg5OSwgMTE5MDgsIDExOTE3LCAxMTkyNSwgMTE5MzIsIAotICAgIDExOTQxLCAxMTk0OSwgMTE5NTUsIDExOTYxLCAxMTk2NiwgNjE5OSwgMTE5NzAsIDExOTcyLCAxMTk3NywgMTE5ODMsIAotICAgIDExOTkyLCAxMjAwMCwgMTIwMDcsIDEyMDE2LCAxMjAyNSwgMTIwMzQsIDEyMDQzLCAxMjA1MiwgMTIwNjEsIDEyMDcwLCAKLSAgICAxMjA3OSwgMTIwODksIDEyMDk5LCAxMjEwOCwgMTIxMTQsIDEyMTIxLCAxMjEzNSwgMTIxNDIsIDEyMTUwLCAxMjE1OSwgCi0gICAgMTIxNjUsIDEyMTc0LCAxMjE4MywgMTIxOTQsIDEyMjA0LCAxMjIxMiwgMTIyMTksIDEyMjI3LCAxMjIzNiwgMTIyNDksIAotICAgIDEyMjU3LCAxMjI2NCwgMTIyNzcsIDEyMjgzLCAxMjI4OSwgMTIyOTksIDEyMzA4LCAxMjMxNywgMTIzMjIsIDEyMzI2LCAKLSAgICAxMjMzMiwgMTIzMzgsIDEyMzQ1LCA3MzcwLCAxMjM1MCwgMTIzNTUsIDEyMzYyLCAxMjM2NywgMTIzNzIsIDEyMzc2LCAKLSAgICAxMjM4NCwgMTIzOTAsIDEyMzk1LCAxMjQwMywgMTI0MTEsIDEyNDE4LCAxMjQyNiwgMTI0MzIsIDEyNDQwLCAxMjQ0OCwgCi0gICAgMTI0NTMsIDEyNDU5LCAxMjQ2NiwgMTI0NzIsIDEyNDc3LCAxMjQ4MSwgMTI0OTIsIDEyNTAwLCAxMjUwNiwgMTI1MTEsIAotICAgIDEyNTIwLCAxMjUyNiwgMTI1MzEsIDEyNTQwLCAxMjU1NCwgMzc4MSwgMTI1NTgsIDEyNTYzLCAxMjU2OCwgMTI1NzQsIAotICAgIDEyNTc5LCAxMjU4NCwgMTI1ODgsIDEyNTkzLCAxMjU5OCwgNjE5OCwgMTI2MDMsIDEyNjA4LCAxMjYxMywgMTI2MTgsIAotICAgIDEyNjIyLCAxMjYyNywgMTI2MzIsIDEyNjM3LCAxMjY0MywgMTI2NDksIDEyNjU0LCAxMjY1OCwgMTI2NjMsIDEyNjY4LCAKLSAgICAxMjY3MywgNzY3MywgMTI2NzgsIDEyNjgzLCAxMjY4OCwgMTI2OTMsIDEyNzEwLCAxMjcyOCwgMTI3NDAsIDEyNzUzLCAKLSAgICAxMjc3MCwgMTI3ODYsIDEyODAzLCAxMjgxMywgMTI4MzIsIDEyODQzLCAxMjg1NCwgMTI4NjUsIDEyODc2LCAxMjg4OCwgCi0gICAgMTI4OTksIDEyOTEwLCAxMjkyNywgMTI5MzgsIDEyOTQ5LCAxMjk1NCwgMjMzNSwgMTI5NTgsIDEyOTYxLCAxMjk2NywgCi0gICAgMTI5NzUsIDEyOTgzLCAxMjk4OCwgMTI5OTYsIDEzMDA0LCAxMzAxMSwgMTMwMTYsIDEzMDIyLCAxMzAyOSwgMTMwMzcsIAotICAgIDEzMDQ0LCAxMzA1NiwgMTMwNjQsIDEzMDY5LCA5OTMzLCAxMzA3NSwgMTMwODQsIDEzMDkzLCAxMzEwMSwgMTMxMDgsIAotICAgIDEzMTE0LCAxMzEyMiwgMTMxMjksIDEzMTM1LCAxMzE0MiwgMTMxNDgsIDEzMTU3LCAxMzE2NSwgMTMxNzUsIDEzMTgyLCAKLSAgICAxMzE4OCwgMTMxOTYsIDEzMjAyLCAxMzIxMCwgMTMyMTcsIDEzMjMwLCAxMzIzNywgMTMyNDYsIDEzMjU1LCAxMzI2NCwgCi0gICAgMTMyNzIsIDEzMjgyLCAxMzI4OSwgMTMyOTQsIDM0OTUsIDEzMzAxLCAxMzMwNiwgMTMzMDksIDEyNjA0LCAxMzMxMywgCi0gICAgMTMzMTksIDEzMzIzLCAxMzMzMSwgMTMzNDMsIDEzMzQ4LCAxMzM1NSwgMTMzNjEsIDEzMzY2LCAxMzM3MywgMTI2MDksIAotICAgIDEzMzc3LCAxMzM4MSwgMTI2MTQsIDEzMzg1LCAxMzM4OSwgMTMzOTMsIDEzNDAwLCAxMzQwNSwgMTM0MDksIDEzNDEzLCAKLSAgICAxMzQyMSwgMTM0MjgsIDEzNDM1LCAxMzQ1MiwgMTM0NjEsIDEzNDY1LCAxMzQ2OCwgMTM0NzYsIDEzNDgyLCAxMzQ4NywgCi0gICAgMzU3MywgMTM0OTEsIDEzNDkzLCAxMzUwMSwgMTM1MDgsIDEzNTE4LCAxMzUzMCwgMTM1MzUsIDEzNTQxLCAxMzU0NiwgCi0gICAgMTM1NTAsIDEzNTU2LCAxMzU2MSwgMTM1NjcsIDEzNTcwLCAxMzU3NywgMTM1ODUsIDEzNTkyLCAxMzU5OCwgMTM2MDQsIAotICAgIDEzNjA5LCAxMzYxNiwgMTM2MjIsIDEzNjI3LCAxMzYzNCwgMTM2MzgsIDEzNjQ0LCAxMzY0OCwgMTM2NTUsIDEzNjYxLCAKLSAgICAxMzY2NywgMTM2NzUsIDEzNjgxLCAxMzY4NiwgMTM2OTIsIDEzNzAwLCAxMzcwOCwgMTM3MTQsIDEzNzIwLCAxMzcyNSwgCi0gICAgMTM3MzIsIDEzNzM3LCAxMzc0MSwgMTM3NDcsIDEzNzUyLCAxMzc1OSwgMTM3NjQsIDEzNzcwLCAxMzc3MywgMTM3NzksIAotICAgIDEzNzg1LCAxMzc4OCwgMTM3OTIsIDEzODA0LCAxMzgxMCwgMTM4MTUsIDEzODIyLCAxMzgyOCwgMTM4MzQsIDEzODQ1LCAKLSAgICAxMzg1NSwgMTM4NjQsIDEzODcyLCAxMzg3OSwgMTM4OTAsIDEzOTAwLCAxMzkxMCwgMTM5MTgsIDEzOTIxLCAxMjYyOCwgCi0gICAgMTM5MjYsIDEzOTMxLCAxMjYzMywgMTI3NTgsIDEzOTM5LCAxMzk1MiwgMTM5NjcsIDEzOTc4LCAxMjc3NSwgMTM5OTYsIAotICAgIDE0MDA5LCAxNDAyMiwgMTQwMzMsIDg4NDEsIDE0MDQ0LCAxNDA1NywgMTQwNzYsIDE0MDg3LCAxNDA5OCwgMTQxMDksIAotICAgIDI2MDMsIDE0MTIyLCAxNDEyNiwgMTQxMzQsIDE0MTQ1LCAxNDE1MiwgMTQxNTgsIDE0MTY2LCAxNDE3MCwgMTQxNzYsIAotICAgIDE0MTc5LCAxNDE4OSwgMTQxOTcsIDE0MjA0LCAxNDIxMiwgMTQyMjIsIDE0MjI3LCAxNDIzNCwgMTQyMzksIDE0MjQ2LCAKLSAgICAxNDI1NywgMTQyNjcsIDE0MjczLCAxNDI3OCwgMTQyODMsIDE0Mjg3LCAxNDI5MSwgMTQyOTcsIDE0MzAzLCAxNDMwOCwgCi0gICAgMTQzMTMsIDE0MzE4LCAxNDMyMiwgMTI2MzgsIDEyNjQ0LCAxNDMyNiwgMTI2NTAsIDE0MzMxLCAxNDMzOSwgMTQzNDgsIAotICAgIDE0MzU1LCA3NTQyLCAxNDM1OSwgMTQzNjEsIDE0MzY2LCAxNDM3MSwgMTQzNzcsIDE0MzgyLCAxNDM4NywgMTQzOTIsIAotICAgIDE0Mzk3LCAxNDQwMSwgMTQ0MDcsIDE0NDEzLCAxNDQxOCwgMTQ0MjQsIDE0NDI5LCAxNDQzNCwgMTQ0NDAsIDE0NDQ1LCAKLSAgICAxNDQ1MCwgMTQ0NTUsIDE0NDYxLCAxNDQ2NiwgMTQ0NzEsIDE0NDc3LCAxNDQ4MywgMTQ0ODgsIDE0NDkzLCAxNDUwMCwgCi0gICAgMTQ1MDYsIDE0NTE3LCAxNDUyNCwgMTQ1MjksIDE0NTMzLCAxNDUzNywgMTQ1NDAsIDE0NTQ4LCAxNDU1MywgMTQ1NjAsIAotICAgIDE0NTY3LCAxNDU3MiwgMTQ1NzcsIDE0NTg0LCAxNDU5NCwgMTQ1OTksIDE0NjA2LCAxNDYxMiwgMTQ2MjIsIDE0NjMyLCAKLSAgICAxNDY0NiwgMTQ2NjAsIDE0Njc0LCAxNDY4OCwgMTQ3MDMsIDE0NzE4LCAxNDczNSwgMTQ3NTMsIDE0NzY2LCAxNDc3MiwgCi0gICAgMTQ3NzcsIDE0NzgyLCAxNDc4NiwgMTQ3OTEsIDE0Nzk5LCAxNDgwNSwgMTQ4MTAsIDE0ODE1LCAxNDgxOSwgMTQ4MjQsIAotICAgIDE0ODI4LCAxNDgzMywgMTQ4MzcsIDE0ODQ4LCAxNDg1NCwgMTQ4NTksIDE0ODY0LCAxNDg3MSwgMTQ4NzYsIDE0ODgwLCAKLSAgICAxNDg4NSwgMTQ4OTAsIDE0ODk2LCAxNDkwMywgMTQ5MDksIDE0OTE0LCAxNDkxOCwgMTQ5MjQsIDE0OTI5LCAxNDkzNCwgCi0gICAgMTQ5MzgsIDE0OTQ0LCAxNDk0OSwgMTQ5NTQsIDE0OTYxLCAxNDk2NiwgMTE0MjAsIDE0OTcwLCAxNDk3NSwgMTQ5NzksIAotICAgIDE0OTg0LCAxNDk5MCwgMTQ5OTYsIDE1MDAzLCAxNTAxMywgMTUwMjEsIDE1MDI4LCAxNTAzMywgMTUwMzcsIDE1MDQ2LCAKLSAgICAxNTA1NCwgMTUwNjEsIDE1MDY4LCAxNTA3NCwgMTUwODAsIDE1MDg1LCAxNTA5MCwgMTUwOTYsIDE1MTAxLCAxNTEwNywgCi0gICAgMTUxMTIsIDE1MTE4LCAxNTEyNCwgMTUxMzEsIDE1MTM3LCAxNTE0MiwgMTUxNDcsIDc3MTUsIDE1MTU2LCAxNTE1OSwgCi0gICAgMTUxNjUsIDE1MTcwLCAxNTE3NSwgMTUxODUsIDE1MTkyLCAxNTE5OCwgMTUyMDMsIDE1MjA5LCAxNTIxNCwgMTUyMjAsIAotICAgIDE1MjI1LCAxNTIzMSwgMTUyMzcsIDE1MjQyLCAxNTI1MCwgMTUyNTcsIDE1MjYyLCAxNTI2NywgMTUyNzMsIDE1Mjc4LCAKLSAgICAxNTI4MiwgMTUyOTEsIDE1MzAyLCAxNTMwOSwgMTUzMTcsIDE1MzIzLCAxNTMzMCwgMTUzMzYsIDE1MzQxLCAxNTM0NSwgCi0gICAgMTUzNTEsIDE1MzU2LCAxNTM2MSwgMTUzNjYsIDc3MjAsIDYyMjMsIDI4MjcsIDE1MzcwLCAxNTM3NCwgMTUzNzgsIDE1MzgyLCAKLSAgICAxNTM4NiwgMTUzODksIDE1Mzk2LCAxNTQwNCwgMTI2NjQsIDE1NDExLCAxNTQyMSwgMTU0MjksIDE1NDM2LCAxNTQ0NCwgCi0gICAgMTU0NTQsIDE1NDYzLCAxNTQ3NiwgMTU0ODEsIDE1NDg2LCAxNTQ5NCwgMTU1MDEsIDExNTEwLCAxMTUxOSwgMTU1MDgsIAotICAgIDE1NTE4LCAxNTUzMywgMTU1MzksIDE1NTQ2LCAxNTU1MywgMTU1NTksIDE1NTY5LCAxNTU3OSwgMTI2NjksIDE1NTg4LCAKLSAgICAxNTU5NCwgMTU2MDAsIDE1NjA4LCAxNTYxNiwgMTU2MjEsIDE1NjMwLCAxNTYzOCwgMTU2NTAsIDE1NjYwLCAxNTY3MCwgCi0gICAgMTU2ODAsIDE1Njg5LCAxNTcwMSwgMTU3MTEsIDE1NzIxLCAxNTczMiwgMTU3MzcsIDE1NzQ5LCAxNTc2MSwgMTU3NzMsIAotICAgIDE1Nzg1LCAxNTc5NywgMTU4MDksIDE1ODIxLCAxNTgzMywgMTU4NDUsIDE1ODU3LCAxNTg2OCwgMTU4ODAsIDE1ODkyLCAKLSAgICAxNTkwNCwgMTU5MTYsIDE1OTI4LCAxNTk0MCwgMTU5NTIsIDE1OTY0LCAxNTk3NiwgMTU5ODgsIDE1OTk5LCAxNjAxMSwgCi0gICAgMTYwMjMsIDE2MDM1LCAxNjA0NywgMTYwNTksIDE2MDcxLCAxNjA4MywgMTYwOTUsIDE2MTA3LCAxNjExOSwgMTYxMzAsIAotICAgIDE2MTQyLCAxNjE1NCwgMTYxNjYsIDE2MTc4LCAxNjE5MCwgMTYyMDIsIDE2MjE0LCAxNjIyNiwgMTYyMzgsIDE2MjUwLCAKLSAgICAxNjI2MSwgMTYyNzMsIDE2Mjg1LCAxNjI5NywgMTYzMDksIDE2MzIxLCAxNjMzMywgMTYzNDUsIDE2MzU3LCAxNjM2OSwgCi0gICAgMTYzODEsIDE2MzkyLCAxNjQwNCwgMTY0MTYsIDE2NDI4LCAxNjQ0MCwgMTY0NTIsIDE2NDY0LCAxNjQ3NiwgMTY0ODgsIAotICAgIDE2NTAwLCAxNjUxMiwgMTY1MjMsIDE2NTM1LCAxNjU0NywgMTY1NTksIDE2NTcxLCAxNjU4MywgMTY1OTUsIDE2NjA3LCAKLSAgICAxNjYxOSwgMTY2MzEsIDE2NjQzLCAxNjY1NCwgMTY2NjYsIDE2Njc4LCAxNjY5MCwgMTY3MDIsIDE2NzE1LCAxNjcyOCwgCi0gICAgMTY3NDEsIDE2NzU0LCAxNjc2NywgMTY3ODAsIDE2NzkzLCAxNjgwNSwgMTY4MTgsIDE2ODMxLCAxNjg0NCwgMTY4NTcsIAotICAgIDE2ODcwLCAxNjg4MywgMTY4OTYsIDE2OTA5LCAxNjkyMiwgMTY5MzUsIDE2OTQ3LCAxNjk2MCwgMTY5NzMsIDE2OTg2LCAKLSAgICAxNjk5OSwgMTcwMTIsIDE3MDI1LCAxNzAzOCwgMTcwNTEsIDE3MDY0LCAxNzA3NywgMTcwODksIDE3MTAyLCAxNzExNSwgCi0gICAgMTcxMjgsIDE3MTQxLCAxNzE1NCwgMTcxNjcsIDE3MTgwLCAxNzE5MywgMTcyMDYsIDE3MjE5LCAxNzIzMSwgMTcyNDQsIAotICAgIDE3MjU3LCAxNzI3MCwgMTcyODMsIDE3Mjk2LCAxNzMwOSwgMTczMjIsIDE3MzM1LCAxNzM0OCwgMTczNjEsIDE3MzczLCAKLSAgICAxNzM4NiwgMTczOTksIDE3NDEyLCAxNzQyNSwgMTc0MzgsIDE3NDUxLCAxNzQ2NCwgMTc0NzcsIDE3NDkwLCAxNzUwMywgCi0gICAgMTc1MTUsIDE3NTI2LCAxNzUzOSwgMTc1NTIsIDE3NTY1LCAxNzU3OCwgMTc1OTEsIDE3NjA0LCAxNzYxNywgMTc2MzAsIAotICAgIDE3NjQzLCAxNzY1NiwgMTc2NjgsIDE3NjgxLCAxNzY5NCwgMTc3MDcsIDE3NzIwLCAxNzczMywgMTc3NDYsIDE3NzU5LCAKLSAgICAxNzc3MiwgMTc3ODUsIDE3Nzk4LCAxNzgxMCwgMTc4MjMsIDE3ODM2LCAxNzg0OSwgMTc4NjIsIDE3ODc1LCAxNzg4OCwgCi0gICAgMTc5MDEsIDE3OTE0LCAxNzkyNywgMTc5NDAsIDE3OTUyLCAxNzk2NSwgMTc5NzgsIDE3OTkxLCAxODAwNCwgMTgwMTcsIAotICAgIDE4MDMwLCAxODA0MywgMTgwNTYsIDE4MDY5LCAxODA4MiwgMTgwOTQsIDE4MTA3LCAxODEyMCwgMTgxMzMsIDE4MTQ2LCAKLSAgICAxODE1OSwgMTgxNzIsIDE4MTg1LCAxODE5OCwgMTgyMTEsIDE4MjI0LCAxODIzNiwgMTgyNDksIDE4MjYyLCAxODI3NSwgCi0gICAgMTgyODgsIDE4MzAxLCAxODMxNCwgMTgzMjcsIDE4MzQwLCAxODM1MywgMTgzNjYsIDE4Mzc4LCAxODM5MSwgMTg0MDQsIAotICAgIDE4NDE3LCAxODQzMCwgMTg0NDMsIDE4NDU2LCAxODQ2OSwgMTg0ODIsIDE4NDk1LCAxODUwOCwgMTg1MjAsIDE4NTMzLCAKLSAgICAxODU0NiwgMTg1NTksIDE4NTcyLCAxODU4NSwgMTg1OTgsIDE4NjExLCAxODYyNCwgMTg2MzcsIDE4NjUwLCAxODY2MiwgCi0gICAgMTg2NzUsIDE4Njg4LCAxODcwMSwgMTg3MTQsIDE4NzI3LCAxODc0MCwgMTg3NTMsIDE4NzY2LCAxODc3OSwgMTg3OTIsIAotICAgIDE4ODA0LCAxODgxNywgMTg4MzAsIDE4ODQzLCAxODg1NiwgMTg4NjksIDE4ODgyLCAxODg5NSwgMTg5MDgsIDE4OTIxLCAKLSAgICAxODkzNCwgMTg5NDYsIDE4OTU3LCAxODk2NSwgMTg5NzIsIDE4OTc4LCAxODk4MiwgMTg5ODgsIDE4OTk0LCAxOTAwMiwgCi0gICAgMTkwMDgsIDE5MDEzLCAxOTAxNywgMTkwMjYsIDc1NDcsIDE5MDM3LCAxOTA0NCwgMTkwNTIsIDE5MDU5LCAxOTA2NiwgCi0gICAgOTI5MywgMTkwNzMsIDE5MDgyLCAxOTA4NywgMTkwOTIsIDYyMzksIDE5MDk5LCAxOTEwNCwgMTkxMDcsIDE5MTEyLCAKLSAgICAxOTEyMCwgMTkxMjcsIDE5MTM0LCAxOTE0MSwgMTkxNDcsIDE5MTU2LCAxOTE2NSwgMTkxNzEsIDE5MTgwLCAxOTE4NiwgCi0gICAgMTkxOTEsIDE5MjAxLCAxOTIwOCwgMTkyMTQsIDE5MjIyLCAxOTIyOCwgMTkyMzUsIDE5MjQ1LCAxOTI1NCwgMTkyNTgsIAotICAgIDE5MjY1LCAxOTI2OSwgMTkyNzQsIDE5MjgwLCAxOTI4OCwgMTkyOTIsIDE5MzAyLCAxMjY3OSwgMTkzMTEsIDE5MzE3LCAKLSAgICAxOTMyMSwgMTkzMzAsIDE5MzM2LCAxOTM0MywgMTkzNTQsIDE5MzYyLCAxOTM3MSwgNzMzNSwgMTkzNzksIDE5Mzg0LCAKLSAgICAxOTM5MCwgMTkzOTUsIDE5Mzk5LCAxOTQwMywgMTk0MDcsIDgwMDYsIDE5NDEyLCAxOTQyMCwgMTk0MjcsIDE5NDM2LCAKLSAgICAxOTQ0MywgMTk0NTAsIDkyMjMsIDE5NDU3LCAxOTQ2MywgMTk0NjcsIDE5NDczLCAxOTQ3OSwgMTk0ODcsIDE5NDkzLCAKLSAgICAxOTUwMCwgMTk1MDYsIDE5NTEyLCAxOTUyMSwgMTk1MjUsIDE5NTMzLCAxOTU0MiwgMTk1NDksIDE5NTU0LCAxOTU1OCwgCi0gICAgMTk1NjksIDE5NTc0LCAxOTU3OSwgMTk1ODQsIDE5NTk3LCA2NDI2LCAxOTYwMSwgMTk2MDcsIDE5NjE1LCAxOTYxOSwgCi0gICAgMTk2MjYsIDE5NjM1LCAxOTY0MCwgMTk2NDgsIDE5NjYwLCAxOTY2NSwgMTk2NjksIDE5NjcyLCAxOTY3OCwgMTk2ODQsIAotICAgIDE5Njg5LCAxOTY5MywgMTk2OTYsIDE5NzA3LCAxOTcxMiwgNzc1MCwgMTk3MTksIDc1NTgsIDc3NTUsIDE5NzI0LCAxOTcyOSwgCi0gICAgMTk3MzQsIDE5NzM5LCAxOTc0NCwgMTk3NDksIDE5NzU0LCAxOTc1OSwgMTk3NjQsIDE5NzY5LCAxOTc3NCwgMTk3NzksIAotICAgIDE5Nzg1LCAxOTc5MCwgMTk3OTUsIDE5ODAwLCAxOTgwNSwgMTk4MTAsIDE5ODE1LCAxOTgyMCwgMTk4MjUsIDE5ODMwLCAKLSAgICAxOTgzNiwgMTk4NDIsIDE5ODQ3LCAxOTg1MiwgMTk4NTcsIDE5ODYyLCAxOTg2NywgMTk4NzIsIDE5ODc3LCAxOTg4MiwgCi0gICAgMTk4ODcsIDE5ODkzLCAxOTg5OCwgMTk5MDMsIDE5OTA4LCAxOTkxNCwgMTk5MjAsIDE5OTI1LCAxOTkzMCwgMTk5MzUsIAotICAgIDE5OTQwLCAxOTk0NSwgMTk5NTAsIDE5OTU1LCAxOTk2MCwgMTk5NjYsIDE5OTcxLCAxOTk3NiwgMTk5ODEsIDE5OTg2LCAKLSAgICAxOTk5MiwgMTk5OTcsIDIwMDAyLCAyMDAwNiwgMTI5LCAyMDAxNCwgMjAwMTgsIDIwMDIyLCAyMDAyNiwgMjAwMzEsIAotICAgIDIwMDM1LCAyMDAzOSwgMTA3ODEsIDIwMDQzLCAyMDA0OCwgMjAwNTIsIDIwMDU3LCAyMDA2MSwgMjAwNjYsIDIwMDcwLCAKLSAgICAyMDA3NiwgMjAwODEsIDIwMDg1LCAyMDA4OSwgMjAwOTcsIDIwMTAxLCAyMDEwNiwgMjAxMTEsIDIwMTE1LCAyMDEyMSwgCi0gICAgMjAxMjYsIDIwMTMwLCAyMDEzNSwgMjAxNDAsIDIwMTQ0LCAyMDE1MSwgMjAxNTgsIDIwMTY1LCAyMDE2OSwgMjAxNzMsIAotICAgIDIwMTc4LCAyMDE4MiwgMjAxODUsIDIwMTkxLCAyMDIwNCwgMjAyMDksIDIwMjE4LCAyMDIyMywgNzc5NSwgMjAyMjgsIAotICAgIDIwMjMxLCAyNjY2LCAyNjcxLCAyMDIzNSwgMjAyNDEsIDIwMjQ3LCAyMDI1MiwgMjAyNTcsIDIwMjYyLCAyMDI2OCwgCi0gICAgMjAyNzMsIDEyMTkwLCAyMDI3OCwgMjAyODMsIDIwMjg4LCAyMDI5NCwgMjAyOTksIDIwMzA0LCAyMDMxMCwgMjAzMTUsIAotICAgIDIwMzE5LCAyMDMyNCwgMjAzMjksIDIwMzM0LCAyMDMzOCwgMjAzNDMsIDIwMzQ4LCAyMDM1MywgMjAzNTgsIDIwMzYyLCAKLSAgICAyMDM2NiwgMjAzNzEsIDI4MzYsIDIwMzIwLCAyMDM3NSwgMjAzODMsIDIwMzkwLCA4MTAwLCAyMDQwMiwgMjA0MTAsIAotICAgIDIwMzI1LCAyMDQxNywgMjA0MjIsIDIwNDMwLCAyMDMzMCwgMjA0MzUsIDIwNDQwLCAyMDQ0OCwgMjA0NTMsIDIwNDU4LCAKLSAgICAyMDQ2MiwgMjA0NjcsIDIwNDcxLCAyMDQ3NywgMjA0ODAsIDIwNDg3LCAyMDQ5MSwgMjA0OTUsIDIwNTAxLCAyMDUwOCwgCi0gICAgMjA1MTMsIDczNjIsIDE2OTAsIDE2OTUsIDIwNTE3LCAyMDUyMywgMjA1MjksIDIwNTM0LCAyMDUzOCwgMjA1NDIsIDIwNTQ2LCAKLSAgICAyMDU0OSwgMjA1NTUsIDIwNTYyLCAyMDU3MCwgMjA1NzYsIDIwNTgyLCAyMDU4NywgMjA1OTIsIDIwNTk2LCAxMzAzOSwgCi0gICAgMTM4OTYsIDIwNjAxLCAyMDYxMywgMjA2MTYsIDIwNjIzLCAyMDYzMCwgMjA2MzQsIDIwNjQyLCAyMDY1MywgMjA2NjIsIAotICAgIDIwNjc1LCAyMDY4NSwgMjA2OTksIDIwNzExLCAyMDcyNSwgMjA3MzcsIDIwNzQ3LCAyMDc1OSwgMjA3NjUsIDIwNzgwLCAKLSAgICAyMDgwNCwgMjA4MjIsIDIwODQxLCAyMDg1NCwgMjA4NjgsIDIwODg2LCAyMDkwMiwgMjA5MTksIDIwOTM3LCAyMDk0OCwgCi0gICAgMjA5NjcsIDIwOTg0LCAyMTAwNCwgMjEwMjIsIDIxMDM0LCAyMTA0OCwgMjEwNjIsIDIxMDc0LCAyMTA5MSwgMjExMTAsIAotICAgIDIxMTI4LCAyMTE0MCwgMjExNTgsIDIxMTc3LCAxMjgxOCwgMjExOTAsIDIxMjEwLCAyMTIyMiwgODg3MiwgMjEyMzQsIAotICAgIDIxMjM5LCAyMTI0NCwgMjEyNDksIDIxMjU1LCAyMTI2MCwgMjEyNjQsIDIxMjcxLCAyMzUyLCAyMTI3NSwgMjEyODEsIAotICAgIDIxMjg1LCAyMTI4OCwgMjEyOTIsIDIxMzAwLCAyMTMwNiwgMjAzMzksIDIxMzEwLCAyMTMxOSwgMjEzMzAsIDIxMzM2LCAKLSAgICAyMTM0MiwgMjEzNTEsIDIxMzU5LCAyMTM2NiwgMjEzNzEsIDIxMzc4LCAyMTM4NCwgMjEzOTMsIDIxNDAxLCAyMTQwOCwgCi0gICAgMjE0MTgsIDIxNDI3LCAyMTQzNywgMjE0NDIsIDIxNDUxLCAyMTQ2MCwgMjE0NzEsIDIxNDgyLCAzODgwLCAyMTQ5MiwgCi0gICAgMjE0OTYsIDIxNTA2LCAyMTUxNCwgMjE1MjQsIDIxNTM1LCAyMTU0MCwgMjE1NDgsIDIxNTU1LCAyMTU2MSwgMjE1NjYsIAotICAgIDIwMzQ5LCAyMTU3MCwgMjE1NzksIDIxNTgzLCAyMTU4NiwgMjE1OTEsIDIxNTk4LCAyMTYwNywgMjE2MTUsIDIxNjIzLCAKLSAgICAyMTYzMywgMjE2NDIsIDIxNjQ4LCAyMTY1NCwgMjAzNTQsIDIwMzU5LCAyMTY1OCwgMjE2NjgsIDIxNjc4LCAyMTY4OCwgCi0gICAgMjE2OTYsIDIxNzAzLCAyMTcxMywgMjE3MjEsIDIxNzI5LCAyMTczNSwgOTYyLCAyMTc0NCwgMTMwMDAsIDUzNywgMjE3NTgsIAotICAgIDIxNzY3LCAyMTc3NSwgMjE3ODYsIDIxNzk3LCAyMTgwNywgMjE4MTYsIDIxODI4LCAyMTgzNywgMjE4NDYsIDIxODUyLCAKLSAgICAyMTg2MSwgMjE4NzAsIDIxODgwLCAyMTg4OCwgMjE4OTYsIDc3MjcsIDIxOTAyLCAyMTkwNSwgMjE5MDksIDIxOTE0LCAKLSAgICAyMTkxOSwgODIxNSwgMjAzNjcsIDIxOTI3LCAyMTkzMywgMjE5MzksIDIxOTQ0LCAyMTk0OSwgMjE5NTMsIDIxOTYxLCAKLSAgICAyMTk2NywgMjE5NzMsIDIxOTc3LCAzNDY3LCAyMTk4NSwgMjE5OTAsIDIxOTk1LCAyMTk5OSwgMjIwMDMsIDgyODcsIAotICAgIDIyMDEwLCAyMjAxOCwgMjIwMjUsIDIyMDMxLCA4Mjk2LCA4MzAyLCAyMjAzOSwgMjIwNDcsIDIyMDU0LCAyMjA1OSwgCi0gICAgMjIwNjQsIDIyMDcwLCAyMjA3NCwgMjIwODUsIDIyMDkwLCAyNTU1LCAyMjA5NSwgMjIxMDYsIDIyMTEyLCAyMjExNywgCi0gICAgMjIxMjEsIDIyMTI1LCAyMjEyOCwgMjIxMzUsIDIyMTQyLCAyMjE0OSwgMjIxNTUsIDIyMTU5LCAyMjE2NCwgMjIxNjgsIAotICAgIDIyMTcyLCA5NzksIDIyMTc2LCAyMjE4MSwgMjIxODYsIDIyMTkxLCAyMjE5NiwgMjIyMDEsIDIyMjA2LCAyMjIxMSwgCi0gICAgMjIyMTYsIDIyMjIxLCAyMjIyNiwgMjIyMzEsIDIyMjM2LCAyMjI0MSwgMjIyNDcsIDIyMjUyLCAyMjI1NywgMjIyNjIsIAotICAgIDIyMjY3LCAyMjI3MiwgMjIyNzcsIDIyMjgzLCAyMjI4OCwgMjIyOTMsIDIyMjk4LCAyMjMwMywgMjIzMDgsIDIyMzEzLCAKLSAgICAyMjMxOCwgMjIzMjQsIDIyMzMwLCAyMjMzNSwgMjIzNDEsIDIyMzQ2LCAyMjM1MSwgNSwgMjIzNTcsIDIyMzYxLCAyMjM2NSwgCi0gICAgMjIzNjksIDIyMzc0LCAyMjM3OCwgMjIzODIsIDIyMzg2LCAyMjM5MCwgMjIzOTUsIDIyMzk5LCAyMjQwNCwgMjI0MDgsIAotICAgIDIyNDExLCAyMjQxNSwgMjI0MjAsIDIyNDI0LCAyMjQyOSwgMjI0MzMsIDIyNDM3LCAyMjQ0MSwgMjI0NDYsIDIyNDUwLCAKLSAgICAyMjQ1NCwgMjI0NjQsIDIyNDY5LCAyMjQ3MywgMjI0NzcsIDIyNDgyLCAyMjQ4NywgMjI0OTYsIDIyNTAxLCAyMjUwNiwgCi0gICAgMjI1MTAsIDIyNTE0LCAyMjUyNywgMjI1MzksIDIyNTQ4LCAyMjU1NywgMjI1NjMsIDIyNTY4LCAyMjU3MiwgMjI1NzYsIAotICAgIDIyNTg2LCAyMjU5NSwgMjI2MDMsIDIyNjA5LCAyMjYxNCwgMjI2MTgsIDIyNjI1LCAyMjYzNSwgMjI2NDQsIDIyNjUyLCAKLSAgICAyMjY2MCwgMjI2NjcsIDIyNjc1LCAyMjY4NCwgMjI2OTMsIDIyNzAxLCAyMjcwNiwgMjI3MTAsIDIyNzE0LCAyMjcxNywgCi0gICAgMjI3MTksIDIyNzIzLCAyMjcyNywgMjI3MzIsIDIyNzM3LCAyMjc0MSwgMjI3NDUsIDIyNzQ4LCAyMjc1MiwgMjI3NTUsIAotICAgIDIyNzU5LCAyMjc2MiwgMjI3NjUsIDIyNzY5LCAyMjc3NSwgMjI3NzksIDIyNzgzLCAyMjc4NywgMjI3OTIsIDIyNzk3LCAKLSAgICAyMjgwMiwgMjI4MDYsIDIyODA5LCAyMjgxNCwgMjI4MjAsIDIyODI1LCAyMjgzMSwgMjI4MzYsIDIyODQwLCAyMjg0NCwgCi0gICAgMjI4NDgsIDIyODUzLCAyMjg1NywgMjI4NjIsIDIyODY2LCAyMjg3MywgMjI4NzcsIDIyODgwLCAyMjg4NCwgMjI4OTAsIAotICAgIDIyODk2LCAyMjkwMCwgMjI5MDQsIDIyOTA5LCAyMjkxNiwgMjI5MjIsIDIyOTI2LCAyMjkzNSwgMjI5MzksIDIyOTQzLCAKLSAgICAyMjk0NiwgMjI5NTIsIDIyOTU3LCAyMjk2MywgMTQ1MiwgMTc1NCwgMjI5NjgsIDIyOTczLCAyMjk3OCwgMjI5ODMsIAotICAgIDIyOTg4LCAyMjk5MywgMjI5OTgsIDIxMDYsIDIxNDgsIDIzMDAzLCAyMzAwNiwgMjMwMTAsIDIzMDE0LCAyMzAxOSwgCi0gICAgMjMwMjMsIDIzMDI3LCAyMzAzMCwgMjMwMzUsIDIzMDQwLCAyMzA0NCwgMjMwNDcsIDIzMDUyLCAyMzA1NiwgMjMwNjEsIAotICAgIDIzMDY1LCAxMzAxMiwgMjMwNzAsIDIzMDczLCAyMzA3NiwgMjMwODAsIDIzMDg1LCAyMzA5OCwgMjMxMDIsIDIzMTA1LCAKLSAgICAyMzExMywgMjMxMjIsIDIzMTI5LCAyMzEzNCwgMjMxNDAsIDIzMTQ2LCAyMzE1MywgMjMxNjAsIDIzMTY0LCAyMzE2OCwgCi0gICAgMjMxNzIsIDIzMTc3LCAyMzE4MiwgMjMxODYsIDIzMTk0LCAyMzE5OSwgMjMyMTEsIDIzMjIyLCAyMzIyNywgMjMyMzEsIAotICAgIDIzMjM1LCAyMzI0MSwgMjMyNDYsIDIzMjUxLCAyMzI1NSwgMjMyNTgsIDIzMjY0LCA2MzQ2LCAyMjcwLCAyMzI2OCwgCi0gICAgMjMyNzMsIDIzMjg5LCA3ODQyLCAyMzMwOSwgMjMzMTgsIDIzMzM0LCAyMzMzOCwgMjMzNDEsIDIzMzQ3LCAyMzM1NywgCi0gICAgMjMzNjMsIDIzMzc4LCAyMzM5MCwgMjM0MDEsIDIzNDA5LCAyMzQxOCwgMjM0MjQsIDIzNDMzLCAyMzQ0MywgMjM0NTQsIAotICAgIDIzNDY1LCAyMzQ3NCwgMjM0ODMsIDIzNDkxLCAyMzQ5OCwgMjM1MDYsIDIzNTE5LCAyMzUyNiwgMjM1MzIsIDIzNTM3LCAKLSAgICAyMzU0NiwgMjM1NTIsIDIzNTU3LCAyMzU2NSwgMjE1MTYsIDIzNTc3LCAyMzU4OSwgMjM2MDMsIDIzNjExLCAyMzYxOCwgCi0gICAgMjM2MzAsIDIzNjM5LCAyMzY0OCwgMjM2NTYsIDIzNjY0LCAyMzY3MiwgMjM2NzksIDIzNjg4LCAyMzY5NiwgMjM3MDYsIAotICAgIDIzNzE1LCAyMzcyNSwgMjM3MzQsIDIzNzQzLCAyMzc1MSwgMjM3NTYsIDIzNzYwLCAyMzc2MywgMjM3NjcsIDIzNzcxLCAKLSAgICAyMzc3NSwgMjM3NzksIDIzNzgzLCAyMzc4OSwgMjM3OTUsIDIzODAzLCAxMzA1NywgMjM4MTAsIDIzODE1LCAyMzgyMiwgCi0gICAgMjM4MjgsIDIzODM1LCAxMzA2NSwgMjM4NDIsIDIzODQ1LCAyMzg1NywgMjM4NjUsIDIzODcxLCAyMzg3NiwgMjM4ODAsIAotICAgIDgyNDUsIDIzODkxLCAyMzkwMSwgMjM5MTAsIDIzOTE3LCAyMzkyMSwgMTMwNzAsIDIzOTI0LCAyMzkzMSwgMjM5MzUsIAotICAgIDIzOTQxLCAyMzk0NCwgMjM5NTEsIDIzOTU3LCAyMzk2MSwgMjM5NjYsIDIzOTcwLCAyMzk3OSwgMjM5ODYsIDIzOTkyLCAKLSAgICA2Mzg3LCAyMzk5OSwgMjQwMDcsIDI0MDE0LCAyNDAyMCwgMjQwMjUsIDI0MDMxLCAyNDAzNywgMjQwNDUsIDI0MDQ5LCAKLSAgICAyNDA1MiwgMjQwNTQsIDIzNzY4LCAyNDA2MywgMjQwNjksIDI0MDc5LCAyNDA4NCwgMjQwOTEsIDI0MDk3LCAyNDEwMiwgCi0gICAgMjQxMDcsIDI0MTEyLCAyNDExNywgMjQxMjQsIDI0MTMzLCAyNDE0MCwgMjQxNDksIDI0MTU1LCAyNDE2MCwgMjQxNjYsIAotICAgIDI0MTcxLCAyNDE3OCwgMjQxODksIDI0MTk0LCAyNDE5OCwgMjQyMDgsIDI0MjE0LCAyNDIxOCwgMjQyMjMsIDI0MjMzLCAKLSAgICAyNDI0MiwgMjQyNDYsIDI0MjUzLCAyNDI2MSwgMjQyNjgsIDI0Mjc0LCAyNDI3OSwgMjQyODcsIDI0Mjk0LCAyNDMwNiwgCi0gICAgMjQzMTUsIDI0MzE5LCAxMTM2MiwgMjQzMjcsIDI0MzM3LCAyNDM0MSwgMjMxMDksIDI0MzUyLCAyNDM1NywgMjQzNjEsIAotICAgIDI0MzY4LCAyNDM3NSwgMjAxMTcsIDIzNjkzLCAyNDM4MCwgMjQzODQsIDI0Mzg3LCAyMDk1NCwgMjQzOTIsIDI0NDA2LCAKLSAgICAyNDQyMiwgMjQ0NDAsIDI0NDU5LCAyNDQ3NiwgMjQ0OTQsIDIwOTczLCAyNDUxMSwgMjQ1MzEsIDIwOTkwLCAyNDU0MywgCi0gICAgMjQ1NTUsIDEzOTgzLCAyNDU2NywgMjEwMTAsIDI0NTgxLCAyNDU5MywgODg4NSwgMjQ2MDcsIDI0NjEyLCAyNDYxNywgCi0gICAgMjQ2MjIsIDI0NjI4LCAyNDYzNCwgMjQ2NDAsIDI0NjQ0LCAyNDY1MSwgMjQ2NTYsIDI0NjY2LCAyNDY3MiwgODUzMiwgCi0gICAgMjQ2NzgsIDI0NjgwLCAyNDY4NSwgMjQ2OTMsIDI0Njk3LCAyNDEyMCwgMjQ3MDMsIDI0NzEwLCA5ODY5LCA5ODc5LCAKLSAgICAyNDcxNywgMjQ3MjcsIDI0NzMyLCAyNDczNiwgMjQ3MzksIDI0NzQ1LCAyNDc1MywgMjQ3NjUsIDI0Nzc1LCAyNDc5MSwgCi0gICAgMjQ4MDQsIDI0ODE4LCAxNDAwMSwgMjQ4MzIsIDI0ODM5LCAyNDg0MywgMjQ4NDYsIDI0ODUxLCAyNDg1NSwgMjQ4NjIsIAotICAgIDI0ODY5LCAyNDg3OSwgMjQ4ODQsIDI0ODg5LCAyNDg5NCwgMjQ5MDIsIDI0OTEwLCAyNDkxOSwgMjQ5MjQsIDc5MzksIAotICAgIDI0OTI4LCAyNDkzMSwgMjQ5MzQsIDI0OTM5LCAyNDk0NiwgMjQ5NTEsIDI0OTY3LCAyNDk3NSwgMjQ5ODMsIDc3OTAsIAotICAgIDI0OTkxLCAyNDk5NiwgMjUwMDAsIDI1MDA2LCAyNTAxMiwgMjUwMTUsIDI1MDIxLCAyNTAzMywgMjUwNDEsIDI1MDQ4LCAKLSAgICAyNTA1NCwgMjUwNjEsIDI1MDcyLCAyNTA4NiwgMjUwOTksIDI1MTA4LCAyNTEyMCwgMjUxMzEsIDI1MTQxLCAyNTE1MCwgCi0gICAgMjUxNTksIDI1MTY3LCAyNTE3OCwgNjM2OSwgMjUxODUsIDI1MTkxLCAyNTE5NiwgMjUyMDIsIDI1MjA5LCAyNTIxOSwgCi0gICAgMjUyMjksIDI1MjM4LCAyNTI0NCwgMjUyNTEsIDI1MjU2LCAyNTI2MywgMjUyNzEsIDI1Mjc5LCAyNTI5MSwgNDcwNCwgCi0gICAgMjUyOTgsIDI1MzA3LCAyNTMxNSwgMjUzMjEsIDI1MzI3LCAyNTMzMiwgMjUzMzYsIDI1MzM5LCAyNTM0NSwgMjUzNTIsIAotICAgIDI1MzU3LCAyNTM2MiwgMjUzNjYsIDI1Mzc4LCAyNTM4OSwgMjUzOTgsIDI1NDA2LCAxMzE5NywgMjU0MTEsIDI1NDE3LCAKLSAgICAyNTQyMywgOTg2MiwgNzA0OSwgMjU0MjgsIDI1NDMxLCAyNTQzNCwgMjU0NDAsIDI1NDQ4LCAyNTQ1NiwgMjU0NjAsIAotICAgIDI1NDY0LCAyNTQ2OSwgMjU0NzIsIDI1NDgxLCAyNTQ4OSwgMjU1MDAsIDI1NTA0LCAyNTUxMCwgMjU1MTYsIDI1NTIwLCAKLSAgICAyNTUyNiwgMjU1MzQsIDI1NTU2LCAyNTU4MCwgMjU1ODcsIDI1NTk0LCAyNTYwMCwgMjU2MDYsIDI1NjExLCAyNTYyMiwgCi0gICAgMjU2NDAsIDI1NjQ3LCAyNTY1NSwgMjU2NTksIDI1NjY4LCAyNTY4MSwgMjU2ODksIDI1NzAxLCAyNTcxMiwgMjU3MjIsIAotICAgIDI1NzM2LCAyNTc0NSwgMjU3NTMsIDI1NzY1LCA3ODU5LCAyNTc3NiwgMjU3ODcsIDI1Nzk5LCAyNTgwOSwgMjU4MTgsIAotICAgIDI1ODIzLCAyNTgyNywgMjU4MzUsIDI1ODQ1LCAyNTg1MCwgMjU4NTQsIDI1ODU3LCAyNTg2MCwgMjU4NjgsIDI1ODc2LCAKLSAgICAyNTg4NSwgMjU4OTUsIDI1OTA0LCAyNTkxMCwgMjU5MjQsIDI2MTcsIDI1OTQ2LCAyNTk1NywgMjU5NjYsIDI1OTc2LCAKLSAgICAyNTk4OCwgMjU5OTcsIDI2MDA3LCAyNjAxNSwgMjYwMjMsIDI2MDMyLCAyNjAzNywgMjYwNDgsIDI2MDUzLCAyNjA2NCwgCi0gICAgMjYwNjgsIDI2MDc4LCAyNjA4NywgMjYwOTUsIDI2MTA1LCAyNjExNSwgMjYxMjMsIDI2MTMyLCAyNjEzOSwgMjYxNDcsIAotICAgIDI2MTU0LCAyNjE2MywgMjYxNjcsIDI2MTc1LCAyNjE4MiwgMjYxOTAsIDI2MTk3LCAyNjIwOCwgMjYyMjMsIDI2MjMwLCAKLSAgICAyNjIzNiwgMjYyNDYsIDI2MjU1LCAyNjI2MSwgMjYyNjgsIDEyMzEyLCAyNjI3NCwgMjYyNzgsIDI2MjgzLCAyNjI4NywgCi0gICAgMjYyOTEsIDI2Mjk5LCAyNjMwNywgMjYzMTMsIDI2MzIyLCAyNjMyOSwgMjYzMzQsIDI2MzM5LCAyNjM0OSwgMjE1NjgsIAotICAgIDI2MzUzLCAyNjM1NiwgMjYzNjEsIDI2MzY2LCAyNjM3MSwgMjYzNzYsIDI2MzgxLCAyNjM4NiwgMjYzOTEsIDI2Mzk2LCAKLSAgICAyNjQwMiwgMjY0MDcsIDI2NDEyLCAyNjQxOCwgMTIyMywgNjc5LCAyNjQyMywgMjY0MzIsIDIzMTgsIDI2NDM5LCAyNjQ0NCwgCi0gICAgMjY0NDgsIDI2NDU0LCAxMjU2LCA1NDEsIDMzNCwgMjY0NTksIDI2NDY4LCAyNjQ3NiwgMjY0ODUsIDI2NDkzLCAyNjUwNCwgCi0gICAgMjY1MTMsIDI2NTIxLCAyNjUyNSwgMjY1MjgsIDI2NTM2LCAyNjU0NCwgMjY1NDksIDEzMDI1LCAyNjU1NSwgMjY1NjEsIAotICAgIDI2NTY3LCA0MzUwLCAyNjU3MiwgMjY1NzYsIDI2NTgyLCAyNjU4NiwgMjY1OTMsIDE0MTgsIDI2NTk5LCA3OTQ2LCAyNjYwNiwgCi0gICAgMjY2MTYsIDI2NjI0LCAyNjYzMCwgMjY2MzksIDI2NjQ3LCAyNjY1MywgMjY2NjEsIDI2NjY4LCA5NDU1LCAyNjY3NCwgCi0gICAgMjY2ODEsIDI2Njg4LCAxNDU5LCAyMTA1LCAyNjY5NCwgMjY3MDAsIDI2NzA3LCAyNjcxOCwgMjY3MjksIDI2NzM3LCAKLSAgICAyNjc0NCwgMjY3NTQsIDI2NzYzLCAyNjc3MSwgMjY3NzgsIDI2Nzg1LCAyNjc5OCwgMjY4MDksIDI2ODI4LCAxMjYxLCAKLSAgICAyNjgzMiwgMjY4MzcsIDI2ODQ1LCAzNTEwLCAyNjg0OSwgMjY4NTQsIDI2ODU4LCAxNDIyLCAyMjc0NiwgMjY4NjgsIAotICAgIDI2ODcyLCAyNjg3NywgMjY4ODEsIDM0MzUsIDI2ODg3LCAyNjg5NSwgMjY5MDIsIDI2OTEzLCAyNjkyMSwgMjY5MjksIAotICAgIDM1MTEsIDI2OSwgMjY5MzQsIDI2OTQyLCAyNjk1MCwgMjY5NTcsIDI2OTYzLCAyNjk2OCwgMjE3MCwgMjY5NzUsIDI2OTgxLCAKLSAgICAyMzk2MiwgMjQxODQsIDI2OTg3LCAxMDYsIDI2OTkxLCAyNjk5NSwgMjcwMDEsIDYwNiwgNzY5NSwgMjcwMDYsIDI3MDEzLCAKLSAgICAyNzAxOSwgMjI4MSwgMjcwMjMsIDI3MDI3LCAyNzAzMCwgMjcwMzMsIDI3MDM4LCAyNzA0NSwgMjcwNTEsIDI3MDU2LCAKLSAgICAyNzA2NCwgMjcwNzEsIDI3MDc3LCAyMDQ1NSwgMjcwODEsIDM1ODEsIDE0ODI2LCAyNzA4NSwgMjcwOTAsIDI3MDkzLCAKLSAgICAyNzEwMSwgMjcxMDksIDI3MTEyLCAyNzExOSwgMjcxMjksIDI3MTQxLCAyNzE0NiwgMjcxNTAsIDI3MTU4LCAyNzE2NSwgCi0gICAgMjcxNzEsIDI3MTc4LCAyNzE4NSwgMjcxODgsIDI3MTkyLCAyNzE5NiwgMTQyNiwgMjcyMDYsIDI3MjA4LCAyNzIxMywgCi0gICAgMjcyMTksIDI3MjI1LCAyNzIzMCwgMjcyMzUsIDI3MjQwLCAyNzI0NSwgMjcyNTAsIDI3MjU1LCAyNzI2MCwgMjcyNjUsIAotICAgIDI3MjcwLCAyNzI3NSwgMjcyODAsIDI3Mjg1LCAyNzI5MCwgMjcyOTUsIDI3MzAxLCAyNzMwNywgMjczMTMsIDI3MzE5LCAKLSAgICAyNzMyNCwgMjczMjksIDI3MzM0LCAyNzM0MCwgMjczNDUsIDI3MzUwLCAyNzM1NSwgMjczNjEsIDI3MzY2LCAyNzM3MiwgCi0gICAgMjczNzcsIDI3MzgyLCAyNzM4NywgMjczOTIsIDI3Mzk4LCAyNzQwMywgMjc0MDksIDI3NDE0LCAyNzQxOSwgMjc0MjQsIAotICAgIDI3NDI5LCAyNzQzNSwgMjc0NDAsIDI3NDQ2LCAyNzQ1MSwgMjc0NTYsIDI3NDYxLCAyNzQ2NiwgMjc0NzEsIDI3NDc2LCAKLSAgICAyNzQ4MSwgMjc0ODYsIDI3NDkxLCAyNzQ5NywgMjc1MDMsIDI3NTA5LCAyNzUxNCwgMjc1MTksIDI3NTI0LCAyNzUyOSwgCi0gICAgMjc1MzUsIDI3NTQxLCAyNzU0NywgMjc1NTMsIDI3NTU5LCAyNzU2NSwgMjc1NzAsIDI3NTc2LCAyNzU4MSwgMjc1ODYsIAotICAgIDI3NTkxLCAyNzU5NiwgMjc2MDIsIDIzOTcsIDI3NjA3LCAyNDA0LCAyNDExLCAyNzA4LCAyNzYxMiwgMjQxNywgMjQyNywgCi0gICAgMjc2MTgsIDI3NjIyLCAyNzYyNywgMjc2MzIsIDI3NjM4LCAyNzY0MywgMjc2NDgsIDI3NjUyLCAyNzY1NywgMjc2NjMsIAotICAgIDI3NjY4LCAyNzY3MywgMjc2NzgsIDI3Njg0LCAyNzY4OSwgMjc2OTMsIDI3Njk3LCAyNzcwMiwgMjc3MDcsIDI3NzEyLCAKLSAgICAyNzcxNywgMjc3MjIsIDI3NzI4LCAyNzczNCwgMjc3MzksIDI3NzQzLCAyNzc0OCwgMjc3NTQsIDI3NzU4LCAyNzc2MywgCi0gICAgMjc3NjgsIDI3NzczLCAyNzc3OCwgMjc3ODIsIDI3Nzg1LCAyNzc5MCwgMjc3OTUsIDI3ODAwLCAyNzgwNSwgMjc4MTEsIAotICAgIDI3ODE3LCAyNzgyMiwgMjc4MjcsIDI3ODMxLCAyNzgzNiwgMjc4NDEsIDI3ODQ2LCAyNzg1MSwgMjc4NTYsIDI3ODYwLCAKLSAgICAyNzg2NSwgMjc4NzAsIDI3ODc1LCAyNzg3OSwgMjc4ODMsIDI3ODg3LCAyNzg5MiwgMjc5MDAsIDI3OTA2LCAyNzkxMiwgCi0gICAgMjc5MTgsIDI3OTIzLCAyNzkyNywgMjc5MzAsIDI3OTM1LCAyNzkzOSwgMjc5NDQsIDI3OTQ4LCAyNzk1MywgMjc5NTcsIAotICAgIDI3OTYwLCAxNTQ4OSwgMjc5NjUsIDI3OTczLCAxOTQzOSwgMjY2MDMsIDI3OTc4LCAyNzk4MywgMjc5ODcsIDI3OTkyLCAKLSAgICAyNzk5NiwgMjgwMDAsIDI4MDA1LCAyODAwOSwgMjgwMTIsIDI4MDE1LCAyODAxOSwgMjgwMjQsIDI4MDMyLCAyODAzNiwgCi0gICAgMjgwMzksIDI4MDQ0LCAyODA0OCwgMjgwNTIsIDI4MDU3LCAyODA2MiwgMjgwNjYsIDI4MDcyLCAyODA3NywgMjgwODIsIAotICAgIDI4MDg5LCAyODA5NiwgMjgxMDAsIDI4MTAzLCAyODEwOSwgMjgxMTgsIDI4MTI1LCAyODEzMywgMjgxNDAsIDI4MTQ0LCAKLSAgICAyODE0OSwgMjgxNTMsIDI4MTU5LCAyODE2NSwgMjgxNjksIDI4MTc1LCAyODE4MCwgMjgxODUsIDI4MTkyLCAyODE5OCwgCi0gICAgMjgyMDQsIDI4MjEwLCAyODIxNiwgMjgyMjMsIDI4MjI5LCAyODIzNSwgMjgyNDEsIDI4MjQ3LCAyODI1MywgMjgyNTksIAotICAgIDI4MjY1LCAyODI3MiwgMjgyNzgsIDI4Mjg1LCAyODI5MSwgMjgyOTcsIDI4MzAzLCAyODMwOSwgMjgzMTUsIDI4MzIxLCAKLSAgICAyODMyNywgMjgzMzMsIDI4MzM5LCA5NzYzLCAyODM0NSwgMjgzNTAsIDI4MzU1LCAyODM1OCwgMjgzNjYsIDI4MzcxLCAKLSAgICAyODM4MCwgMjgzODYsIDI4MzkxLCAyODM5NiwgMjg0MDEsIDI4NDA1LCAyODQxMCwgMjg0MTUsIDI4NDIwLCAyODQyNSwgCi0gICAgMjg0MzAsIDI4NDM3LCAyODQ0NCwgMjg0NTAsIDI4NDU2LCAyODQ2MSwgMTQ1MTAsIDI4NDY4LCAyODQ3NCwgMjg0ODEsIAotICAgIDI4NDg3LCAyODQ5MywgMjg0OTgsIDI4NTA2LCAyODUxMSwgMTQyOTQsIDI4NTE1LCAyODUyMCwgMjg1MjUsIDI4NTMxLCAKLSAgICAyODUzNiwgMjg1NDEsIDI4NTQ1LCAyODU1MCwgMjg1NTUsIDI4NTYxLCAyODU2NiwgMjg1NzEsIDI4NTc1LCAyODU4MCwgCi0gICAgMjg1ODUsIDI4NTg5LCAyODU5NCwgMjg1OTksIDI4NjA0LCAyODYwOCwgMjg2MTMsIDI4NjE4LCAyODYyMywgMjg2MjcsIAotICAgIDI4NjMxLCAxMzUzMSwgMjg2MzUsIDI4NjQ0LCAyODY1MCwgMjg2NTYsIDI4NjY1LCAyODY3MywgMjg2ODIsIDI4NjkwLCAKLSAgICAyODY5NSwgMjg2OTksIDI4NzA2LCAyODcxMiwgMjg3MTYsIDI4NzE5LCAyODcyNCwgMjg3MzMsIDI4NzQxLCAyODc0NiwgCi0gICAgMTQ1OCwgMjg3NTIsIDI4NzU1LCAyODc1OSwgMjA1MjQsIDIwNTMwLCAyODc2NSwgMjg3NjksIDI4NzgwLCAyODc5MSwgCi0gICAgMjg4MDIsIDI4ODE0LCAyODgyMSwgMjg4MjgsIDI4ODMzLCAyODgzNywgNDM4NywgNzMzLCAxOTQzOCwgMjg4NDUsIDI4ODQ5LCAKLSAgICAyODg1NCwgMjg4NjAsIDI4ODY1LCAyODg3MSwgMjg4NzYsIDI4ODgyLCAyODg4NywgODc2NCwgMjc4NSwgMzM2NSwgMjg4OTEsIAotICAgIDI4ODk0LCAyODkwMCwgMjg5MDYsIDI4OTEyLCAyODkxOSwgMjg5MjUsIDI4OTMxLCAyODkzNywgMjg5NDMsIDI4OTQ5LCAKLSAgICAyODk1NSwgMjg5NjEsIDI4OTY3LCAyODk3MywgMjg5NzksIDI4OTg1LCAyODk5MSwgMjg5OTgsIDI5MDA0LCAyOTAxMCwgCi0gICAgMjkwMTYsIDI5MDIyLCAyOTAyOCwgMjkwMzMsIDI5MDM2LCAyOTA0MywgMjkwNTEsIDI5MDU2LCAyOTA2MSwgMjkwNjcsIAotICAgIDI5MDcyLCAyOTA3NywgMjkwODEsIDI5MDg2LCAyOTA5MiwgMjkwOTcsIDI5MTAzLCAyOTEwOCwgMjkxMTQsIDI5MTE5LCAKLSAgICAyOTEyNSwgMjkxMzEsIDI5MTM1LCAyOTE0MCwgMjkxNDUsIDI5MTUwLCAyOTE1NSwgMjkxNTksIDI5MTY0LCAyOTE2OSwgCi0gICAgMjkxNzQsIDI5MTgwLCAyOTE4NiwgMjkxOTIsIDI5MTk4LCAyOTIwMywgMjkyMDcsIDI5MjEwLCAyOTIxNiwgMjkyMjIsIAotICAgIDI5MjMxLCAyOTIzOSwgMjkyNDYsIDI5MjUxLCAyOTI1NSwgMjkyNTksIDI5MjY0LCAxMzM5NSwgMjkyNjksIDI5Mjc3LCAKLSAgICAyOTI4MywgMzYxMSwgMjkyODgsIDI5MjkxLCAyOTI5NSwgNjQzNiwgMjkzMDEsIDI5MzA3LCAyOTMxNCwgNjQ0NSwgMjkzMTgsIAotICAgIDI5MzI0LCAyOTMzMSwgMjkzMzcsIDI5MzQ2LCAyOTM1NCwgMjkzNjYsIDI5MzcwLCAyOTM3NywgMjkzODMsIDI5Mzg3LCAKLSAgICAyOTM5MCwgMjkzOTksIDI5NDA3LCAyOTQxMiwgMjk0MTYsIDI5NDI2LCAyOTQzNiwgMjk0NDYsIDI5NDUyLCAyOTQ1NywgCi0gICAgMjk0NjcsIDI5NDcyLCAyOTQ4NSwgMjk0OTksIDI5NTEwLCAyOTUyMiwgMjk1MzQsIDI5NTQ4LCAyOTU2MSwgMjk1NzMsIAotICAgIDI5NTg1LCAxMjg1OSwgMjk1OTksIDI5NjA0LCAyOTYwOSwgMjk2MTMsIDI5NjE3LCAyOTYyMSwgMTc0MywgMjUxMjksIAotICAgIDI5NjI1LCAyOTYzMCwgMjk2MzUsIDI5NjM5LCAyOTY0MiwgMjk2NDcsIDI5NjUyLCAyOTY1OCwgMjk2NjQsIDg0NjEsIAotICAgIDI5NjY5LCAyOTY3NiwgMTM5MzUsIDI5NjgyLCAyOTY4NywgMjk2OTIsIDI5Njk2LCAyOTcwMSwgMjk3MDYsIDI4ODU1LCAKLSAgICAyOTcxMSwgMjk3MTYsIDI5NzIxLCAyOTcyNywgMjg4NjEsIDI5NzMyLCAyOTczNSwgMjk3NDIsIDI5NzUwLCAyOTc1NiwgCi0gICAgMjk3NjIsIDI5NzY4LCAyOTc3OSwgMjk3ODQsIDI5NzkxLCAyOTc5OCwgMjk4MDUsIDI5ODEzLCAyOTgyMiwgMjk4MzEsIAotICAgIDI5ODM3LCAyOTg0MywgMjk4NTEsIDI4ODY2LCAyOTg1NiwgMjk4NjIsIDI5ODY4LCAyODg3MiwgMjk4NzMsIDI5ODgxLCAKLSAgICAyOTg4OSwgMjk4OTUsIDI5OTAyLCAyOTkwOCwgMjk5MTUsIDI5OTIyLCAyOTkyOCwgMjk5MzYsIDI5OTQ2LCAyOTk1MywgCi0gICAgMjk5NTgsIDI5OTY0LCAyOTk2OSwgMjk5NzQsIDI5OTgxLCAyOTk5MCwgMjk5OTgsIDMwMDAzLCAzMDAwOSwgMzAwMTYsIAotICAgIDMwMDI0LCAzMDAzMCwgMzAwMzUsIDMwMDQxLCAzMDA1MCwgMjU4OTAsIDMwMDU3LCAzMDA2MSwgMzAwNjYsIDMwMDc1LCAKLSAgICAzMDA4MCwgMzAwODUsIDEwNzE0LCAzMDA5MywgMzAwOTgsIDMwMTAzLCAzMDEwNywgMzAxMTIsIDMwMTE3LCAzMDEyNCwgCi0gICAgMzAxMjksIDMwMTM0LCAyODg3NywgMjg4ODMsIDMwMTQwLCAyNDczLCAyMzksIDMwMTQzLCAzMDE0NiwgMzAxNTAsIDMwMTU0LCAKLSAgICAzMDE2NCwgMzAxNzIsIDMwMTc2LCAzMDE4MywgMzAxOTAsIDMwMTk0LCAzMDE5NywgMzAyMDMsIDMwMjExLCAzMDIxOSwgCi0gICAgMzAyMjMsIDMwMjI3LCAzMDIzMCwgMzAyMzcsIDMwMjQxLCAzMDI0OCwgMzAyNTYsIDMwMjYzLCAzMDI2NywgMzAyNzUsIAotICAgIDY4NCwgMjk3LCAzMDI4NywgMzAyOTIsIDMwMjk3LCAzMDMwMywgMzAzMDgsIDMwMzEzLCAzNjMyLCAzMDMxOCwgMzAzMjEsIAotICAgIDMwMzI2LCAzMDMzMSwgMzAzMzYsIDMwMzQxLCAzMDM0NiwgMzAzNTMsIDIwNjA5LCAzMDM1OCwgMzAzNjMsIDMwMzY4LCAKLSAgICAzMDM3MywgMzAzNzgsIDMwMzg0LCAzMDM4OSwgMzAzOTUsIDI5MDM5LCAzMDQwMSwgMzA0MDYsIDMwNDEyLCAzMDQxOCwgCi0gICAgMzA0MjgsIDMwNDMzLCAzMDQzOCwgMzA0NDIsIDMwNDQ3LCAzMDQ1MiwgMzA0NTcsIDMwNDYyLCAzMDQ3NSwgMzA0ODAsIAotICAgIDIwNDA2LCAxNDkwNiwgMzYzOCwgMzA0ODQsIDMwNDg5LCAzMDQ5NCwgMzA1MDAsIDMwNTA1LCAzMDUxMCwgMzA1MTQsIAotICAgIDMwNTE5LCAzMDUyNCwgMzA1MzAsIDMwNTM1LCAzMDU0MCwgMzA1NDQsIDMwNTQ5LCAzMDU1NCwgMzA1NTksIDMwNTYzLCAKLSAgICAzMDU2OCwgMzA1NzMsIDMwNTc4LCAzMDU4NCwgMzA1OTAsIDMwNTk1LCAzMDU5OSwgMzA2MDQsIDMwNjA5LCAzMDYxNCwgCi0gICAgMzA2MTgsIDMwNjI2LCAzMDYzMCwgMzA2MzYsIDMwNjQwLCAzMDY0NywgMTQ2OTksIDMwNjUzLCAzMDY2MCwgMzA2NjgsIAotICAgIDMwNjc1LCAzMDY4MSwgMzA2OTMsIDMwNjk5LCAzMDcwMywgMjcyNywgMzA3MDcsIDMwNzExLCAzMDIzMiwgMzA3MjAsIAotICAgIDMwNzMxLCAzMDczNiwgMzA3NDEsIDMwNzQ2LCAzMDc1MCwgMzA3NTUsIDIwNTM1LCAzMDc1OSwgMzA3NjQsIDE5NDU5LCAKLSAgICAzMDc2OCwgMzA3NzMsIDMwNzc5LCAzMDc4NCwgMzA3ODgsIDMwNzkyLCAzMDc5NSwgMzA3OTksIDMwODA1LCAzMDgxNiwgCi0gICAgMzA4MjgsIDMwODMzLCAzMDgzNywgMzA4NDAsIDM0MywgMzA4NDQsIDMwODQ5LCAzMDg1NCwgMzA4NTksIDMwODY0LCAKLSAgICAzMDg2OSwgMzA4NzUsIDMwODgwLCAzMDg4NSwgMzA4OTEsIDMwODk2LCAzMDkwMiwgMzA5MDcsIDMwOTEzLCAzMDkxOCwgCi0gICAgMzA5MjMsIDMwOTI4LCAzMDkzMywgMzA5MzgsIDMwOTQzLCAzMDk0OCwgMzA5NTMsIDMwOTU5LCAzMDk2NCwgMzA5NjksIAotICAgIDMwOTc0LCAzMDk3OSwgMzA5ODQsIDMwOTg5LCAzMDk5NCwgMzEwMDAsIDMxMDA2LCAzMTAxMSwgMzEwMTYsIDMxMDIxLCAKLSAgICAzMTAyNiwgMzEwMzEsIDMxMDM2LCAzMTA0MSwgMzEwNDYsIDMxMDUxLCAzMTA1NiwgMzEwNjEsIDMxMDY2LCAzMTA3MSwgCi0gICAgMzEwNzYsIDMxMDgxLCAzMTA4NiwgMzEwOTEsIDMxMDk2LCAzMTEwMiwgMjYsIDMxMTA3LCAzMTExMSwgMzExMTUsIDMxMTIzLCAKLSAgICAzMTEyNywgMzExMzEsIDMxMTM0LCAzMTEzNywgMzExMzksIDMxMTQ0LCAzMTE0OCwgMzExNTMsIDMxMTU3LCAzMTE2MiwgCi0gICAgMzExNjYsIDMxMTcxLCAzMTE3NSwgMzExNzgsIDMxMTgwLCAzMTE4NSwgMzExODksIDMxMjAwLCAzMTIwMywgMzEyMDUsIAotICAgIDMxMjA5LCAzMTIyMSwgMzEyMzAsIDMxMjM0LCAzMTI0MCwgMzEyNDUsIDMxMjU0LCAzMTI2MCwgMzEyNjUsIDMxMjcwLCAKLSAgICAzMTI3NCwgMzEyNzksIDMxMjg2LCAzMTI5MSwgMzEyOTcsIDMxMzAyLCAzMTMwNiwgMzEzMTMsIDIzNzAxLCAyMzcxMSwgCi0gICAgMzEzMTcsIDMxMzIyLCAzMTMyNywgMzEzMzIsIDMxMzM5LCAzMTM0MywgMzEzNTAsIDY1NDQsIDMxMzU2LCAzMTM2NSwgCi0gICAgMzEzNzMsIDMxMzg4LCAzMTQwMiwgMzE0MTAsIDMxNDIxLCAzMTQzMCwgMzE0MzUsIDU2ODEsIDMxNDQ1LCAzMTQ1MCwgCi0gICAgMzE0NTUsIDMxNDU5LCAzMTQ2MiwgMzE0NjYsIDMxNDcxLCAzMTQ3NSwgMzE0ODIsIDMxNDg3LCAzMTQ5MiwgNzMyMCwgCi0gICAgMzE1MDIsIDMxNTA0LCAzMTUwNywgMzE1MTEsIDMxNTE3LCAzMTUyMSwgMzE1MjYsIDMxNTMxLCAzMTUzNywgMzE1NDIsIAotICAgIDMxNTQ4LCAzMTU1MywgMzE1NjMsIDMxNTcyLCAzMTU4MCwgMzE1ODUsIDMxNTkxLCAzMTU5NiwgMzE2MDMsIDMxNjA3LCAKLSAgICAzMTYxNSwgMzE2MjIsIDMxNjM1LCAzMTY0MywgMzE2NDcsIDMxNjU3LCAzMTY2MiwgMzE2NjYsIDMxNjc0LCAzMTY4MiwgCi0gICAgMzE2ODYsIDMxNjk1LCAzMTcwMSwgMzE3MDYsIDMxNzE0LCAzMTcyNCwgMzE3MzMsIDMxNzQyLCAzMTc1MSwgMzE3NjIsIAotICAgIDMxNzcwLCAzMTc4MSwgMzE3OTAsIDMxNzk3LCAzMTgwMywgMzE4MDgsIDMxODE5LCAzMTgyNCwgMzE4MjgsIDMxODMxLCAKLSAgICAzMTgzNSwgMzE4NDMsIDMxODQ5LCAzMTg1NywgMzE4NjQsIDMxODcwLCAzMTg3NSwgMzE4ODEsIDIzNzIsIDMxODg1LCAKLSAgICAzMTg4NywgMzE4OTIsIDMxODk3LCAzMTkwMCwgMzE5MDIsIDMxOTA2LCAzMTkwOSwgMzE5MTYsIDMxOTIwLCAzMTkyNCwgCi0gICAgMzE5MjcsIDMxOTMzLCAzMTk0MywgMzE5NDgsIDMxOTU0LCAzMTk1OCwgMzE5NjMsIDMxOTc2LCAyNDA3NCwgMzE5ODIsIAotICAgIDMxOTkxLCAxNTY1NCwgMzE5OTgsIDMyMDA3LCAyOTQzMiwgMzIwMTUsIDMyMDIwLCAzMjAyNCwgMzIwMzIsIDMyMDM5LCAKLSAgICAzMjA0NCwgMzIwNDgsIDMyMDUzLCAzMjA1NywgMzIwNjUsIDMyMDcxLCAzMjA3NywgMzIwODIsIDMyMDg2LCAzMjA4OSwgCi0gICAgMzIwOTQsIDMyMTA3LCAzMjEyMywgMjEwODAsIDMyMTQwLCAzMjE1MiwgMzIxNjksIDMyMTgxLCAzMjE5NSwgMjEwOTcsIAotICAgIDIxMTE2LCAzMjIwNywgMzIyMTksIDI2MzQsIDMyMjMzLCAzMjIzOCwgMzIyNDMsIDMyMjQ4LCAzMjI1MiwgMzIyNTksIAotICAgIDMyMjcxLCAzMjI3NywgMzIyODAsIDMyMjkxLCAzMjMwMiwgMjk4NDgsIDY3MCwgMzIzMDcsIDMyMzExLCAzMjMxNCwgCi0gICAgMzIzMTksIDMyMzI0LCAzMjMzMCwgMzIzMzUsIDMyMzQwLCAzMjM0NiwgMzIzNTIsIDMyMzU3LCAzMjM2MSwgMzIzNjYsIAotICAgIDMyMzcxLCAzMjM3NiwgMzIzODAsIDMyMzgzLCAzMjM4OSwgMzIzOTQsIDMyMzk5LCAzMjQwNCwgMzI0MDgsIDMyNDEzLCAKLSAgICAzMjQxOSwgMzI0MjcsIDI0Mjk5LCAzMjQzMiwgMzI0MzcsIDMyNDQ0LCAzMjQ1MCwgMzI0NTYsIDMyNDYxLCAzMjQ2OSwgCi0gICAgMjA2MTgsIDMyNDc2LCAzMjQ4MSwgMzI0ODYsIDMyNDkxLCAzMjQ5NSwgMzI0OTgsIDMyNTAzLCAzMjUwNywgMzI1MTEsIAotICAgIDMyNTE4LCAzMjUyNCwgMzI1MzAsIDMyNTM2LCAzMjU0MywgMzI1NDgsIDMyNTU0LCAzMTY3NywgMzI1NTgsIDMyNTYyLCAKLSAgICAzMjU2NywgMzI1ODAsIDMyNTg1LCAzMjU5MSwgMzI1OTksIDMyNjA2LCAzMjYxNCwgMzI2MjQsIDMyNjMwLCAzMjYzNiwgCi0gICAgMzI2NDIsIDMyNjQ2LCAzMjY1NSwgMzI2NjAsIDMyNjY1LCA4Nzg3LCAzMjY3MCwgMzI2NzcsIDMyNjgzLCAzMjY5MywgCi0gICAgMzI2OTgsIDMyNzA0LCAzMjcxMiwgMzU0MywgMzI3MTksIDMyNzI2LCAzNTQ5LCAzMjczMCwgMzI3MzUsIDMyNzQ2LCAKLSAgICAzMjc1MywgMzI3NTksIDMyNzY4LCAzMjc3MiwgMzkzMiwgMzI3NzUsIDMyNzgyLCAzMjc4OCwgMzI3OTQsIDMyODAyLCAKLSAgICAzMjgxMiwgMjY5NTgsIDMyODE5LCAzMjgyNywgMzI4MzMsIDMyODM4LCAzMjg0NCwgMzI4NDksIDMyODU1LCAzMjg1OSwgCi0gICAgMzI4NjYsIDMyODcyLCAzMjg4MSwgMjQwOTQsIDMyODg4LCAzMjg5MywgMzI4OTcsIDMyOTA1LCAzMjkxMywgNzk3NCwgCi0gICAgNDM3MywgMzI5MjAsIDMyOTI0LCAzMjkyOCwgMzI5MzMsIDMyOTM5LCAzMjk0NCwgMzI5NDksIDMyOTU2LCAzMDM0OSwgCi0gICAgMzI5NjIsIDMyOTY3LCAzMjk3MSwgMzI5NzYsIDMyOTgwLCAzMjk4OSwgMzI5OTMsIDMyOTk5LCAzMzAwNiwgMzMwMTIsIAotICAgIDMzMDE5LCAzMzAyNCwgMzMwMzMsIDMzMDM4LCAzMzA0MiwgMzMwNDcsIDMzMDU0LCAzMzA2MiwgMzMwNzAsIDMzMDc1LCAKLSAgICAxOTUwOCwgMzMwNzksIDMzMDgyLCAzMzA4NiwgMzMwOTAsIDMzMDk0LCAzMzA5NywgMzMwOTksIDMzMTA0LCAzMzExMiwgCi0gICAgMzMxMTYsIDMzMTIzLCAzMzEyNywgMzMxMzUsIDMzMTQyLCAzMzE1MiwgMzMxNTYsIDMzMTYwLCAzMzE2OCwgMzMxNzYsIAotICAgIDMzMTgyLCAzMzE4NywgMzMxOTYsIDExNjY5LCAzMzIwMiwgMzMyMTEsIDMzMjE2LCAzMzIyMywgMzMyMzEsIDMzMjM5LCAKLSAgICAzMzI0NywgMzMyNTQsIDMzMjYxLCAzMzI2OCwgMzMyNzUsIDMzMjgyLCAzMzI4NywgMzMyOTMsIDMzMzEwLCAzMzMxOCwgCi0gICAgMzMzMjgsIDMzMzM2LCAzMzM0MywgMzg1LCAzMzM0NywgMzMzNTMsIDMzMzU3LCAzMzM2MiwgMzE0MjYsIDMzMzY4LCAKLSAgICAzMzM3MSwgMzMzNzUsIDMzMzgzLCAzNTU0LCAzMzM5MSwgMzMzOTcsIDMzNDAzLCAzMzQxMiwgMzM0MjIsIDMzNDI5LCAKLSAgICAzMzQzNSwgMzU2MCwgMzU2NiwgMzM0NDQsIDMzNDUxLCAzMzQ1OSwgMzM0NjQsIDMzNDY4LCAzMzQ3NSwgMzM0ODMsIAotICAgIDMzNDg5LCAzMzQ5OCwgMzM1MDgsIDMzNTE0LCAzMzUyMiwgMzM1MzEsIDMzNTM4LCAzMzU0NiwgMjAxNzUsIDMzNTUzLCAKLSAgICAzMzU2MCwgMzM1NjYsIDMzNTc2LCAzMzU4NSwgMzM1OTYsIDMzNjAwLCAzMzYxMCwgMzM2MTYsIDMzNjIzLCAzMzYzMSwgCi0gICAgMzM2NDAsIDMzNjQ5LCAzMzY1OSwgMzM2NzAsIDMzNjc3LCAzMzY4MiwgMzM2ODksIDI5NjcsIDMzNjk3LCAzMzcwMywgCi0gICAgMzM3MDgsIDMzNzE0LCAzMzcyMCwgMzM3MjUsIDMzNzM4LCAzMzc1MSwgMzM3NjQsIDMzNzcxLCAzMzc3NywgMzM3ODUsIAotICAgIDMzNzkwLCAzMzc5NCwgMTQzMiwgMzM3OTgsIDMzODAzLCAzMzgwOCwgMzM4MTMsIDMzODE4LCAzMzgyNCwgMzM4MjksIAotICAgIDMzODM0LCAzMzgzOSwgMzM4NDQsIDMzODQ5LCAzMzg1NCwgMzM4NTksIDMzODY1LCAzMzg3MSwgMzM4NzYsIDMzODgxLCAKLSAgICAzMzg4NywgMzM4OTIsIDMzODk3LCAzMzkwMiwgMzM5MDgsIDMzOTEzLCAzMzkxOCwgMzM5MjMsIDMzOTI4LCAzMzkzNCwgCi0gICAgMzM5MzksIDMzOTQ0LCAzMzk1MCwgMzM5NTUsIDMzOTYwLCAzMzk2NSwgMzM5NzAsIDMzOTc1LCAzMzk4MSwgMzM5ODYsIAotICAgIDMzOTkyLCAzMzk5NywgMzQwMDMsIDM0MDA4LCAzNDAxMywgMzQwMTgsIDM0MDI0LCAzNDAzMCwgMzQwMzYsIDM0MDQyLCAKLSAgICAzNDA0OCwgMzQwNTQsIDM0MDYwLCAzNDA2NiwgMzQwNzEsIDM0MDc2LCAzNDA4MiwgMzQwODcsIDM0MDkyLCAzNDA5NywgCi0gICAgMzQxMDIsIDM0MTA3LCAzNDExMiwgMzQxMTcsIDM0MTIzLCAzNDEyOCwgMzQxMzMsIDM0MTM5LCAzNDE0NSwgMTAxLCAKLSAgICAzNDE1MCwgMzQxNTIsIDM0MTU2LCAzNDE2MCwgMzQxNjQsIDM0MTY5LCAzNDE3MywgNzg5NSwgMzQxNzcsIDM0MTgzLCAKLSAgICA0NzM4LCAzNDE4OSwgMzQxOTIsIDM0MTk3LCAzNDIwMSwgMzQyMDYsIDM0MjEwLCAzNDIxNCwgMzQyMTksIDg1OTQsIAotICAgIDM0MjIzLCAzNDIyNywgMzQyMzEsIDEzNjIzLCAzNDIzNiwgMzQyNDAsIDM0MjQ1LCAzNDI1MCwgMzQyNTUsIDM0MjU5LCAKLSAgICAzNDI2NiwgMjQwOTgsIDM0MjcyLCAzNDI3NSwgMzQyNzksIDM0Mjg0LCAzNDI5MCwgMzQyOTQsIDM0MzAyLCAzNDMwOCwgCi0gICAgMzQzMTMsIDM0MzE3LCAzNDMyMywgMzQzMjcsIDM0MzMxLCAzNDA0LCAzNDA5LCAyNzE0NCwgMzQzMzQsIDM0MzQyLCAKLSAgICAzNDM0OSwgMzQzNTMsIDM0MzYwLCAzNDM2NSwgMzMzLCAzNDM3MCwgMzQzNzQsIDM0MzgwLCAzNDM5MiwgMzQzOTgsIAotICAgIDM0NDA0LCAzNDQwOCwgMzQ0MTQsIDM0NDIzLCAzNDQyNywgMzQ0MzEsIDM0NDM2LCAzNDQ0MSwgMzQ0NDYsIDM0NDUwLCAKLSAgICAzNDQ1NCwgMzQ0NjEsIDM0NDY3LCAzNDQ3MiwgMzQ0ODcsIDM0NTAyLCAzNDUxNywgMzQ1MzMsIDM0NTUxLCA4NTQ0LCAKLSAgICAzNDU2NSwgMzQ1NzIsIDM0NTc2LCAzNDU3OSwgMzQ1ODgsIDM0NTkzLCAzNDU5NywgMzQ2MDUsIDMxNjI4LCAzNDYxMywgCi0gICAgMzQ2MTcsIDM0NjI3LCAyNzExNCwgMzQ2MzgsIDM0NjQyLCAzNDY1MSwgMzQ2NTksIDgxNTIsIDEzMTYzLCAzNDY2MywgCi0gICAgMzQ2NjYsIDM0NjY5LCA2NTU3LCAzODAyLCAzNDY3NCwgMzQ2ODIsIDM0Njg2LCAzNDY4OSwgMzQ2OTMsIDM0Njk4LCAKLSAgICAzNDcwMywgMzQ3MDksIDM0NzE1LCAzNDcyMCwgMzQ3MjQsIDIzOTQ2LCAzNDcyOCwgMzQ3MzIsIDM0NzM4LCAzNDc0MiwgCi0gICAgNzQ0NiwgMzQ3NTEsIDM0NzU4LCAzNDc2MiwgMTAyMTAsIDM0NzY5LCAzNDc3NSwgMzQ3ODAsIDM0Nzg3LCAzNDc5NCwgCi0gICAgMzQ4MDEsIDI2NDgwLCA2NDgwLCAzNDgwOCwgMzQ4MTUsIDM0ODIyLCAzNDgyOCwgMzQ4MzMsIDM0ODQwLCAzNDg1MSwgCi0gICAgMzQ4NTcsIDM0ODYyLCAzNDg2NywgMzQ4NzQsIDM0ODc4LCAzNDg4MiwgMzQ4OTIsIDM0OTAzLCAzNDkwOSwgMzQ5MTQsIAotICAgIDM0OTE5LCAzNDkyNCwgMzQ5MjksIDM0OTM0LCAzNDkzOCwgMzQ5NDIsIDM0OTQ4LCAzNDk1NiwgMjI3MywgODI4LCA4NjE2LCAKLSAgICA4NjIxLCA4NjI3LCAzNDk2NSwgODYzMiwgODYzNywgODY0MywgMzQ5NzAsIDM0OTgwLCAzNDk4NCwgODY0OCwgMzQ5ODksIAotICAgIDM0OTkyLCAzNDk5NywgMzUwMDEsIDM1MDA2LCAzNTAxMSwgMzUwMTgsIDM1MDI1LCAzNTAzMywgODU1NywgMzUwNDAsIAotICAgIDM1MDQzLCAzNTA0OSwgMzUwNTksIDQ0MDcsIDM1MDY4LCAzNTA3MiwgMzUwODAsIDM1MDg0LCAzNTA5NCwgMzUxMDAsIAotICAgIDM1MTExLCAzNTExNywgMzUxMjMsIDM1MTI4LCAzNTEzNCwgMzUxNDAsIDM1MTQ2LCAzNTE1MSwgMzUxNTQsIDM1MTYxLCAKLSAgICAzNTE2NywgMzUxNzIsIDM1MTc5LCAzNTE4NiwgMzUxOTAsIDM1MjAwLCAzNTIxMywgMzUyMjIsIDM1MjMxLCAzNTI0MiwgCi0gICAgMzUyNTUsIDM1MjY2LCAzNTI3NSwgMzUyODYsIDM1MjkxLCAzNTMwMCwgMzUzMDUsIDg2NTMsIDM1MzExLCAzNTMxOCwgCi0gICAgMzUzMjYsIDM1MzMxLCAzNTMzNSwgMzUzNDIsIDM1MzQ5LCAzNzU3LCAyMSwgMzUzNTMsIDM1MzU4LCAxNDk1OCwgMzUzNjIsIAotICAgIDM1MzY1LCAzNTM2OCwgMjYwMDEsIDM1MzcyLCAyNjQ4OSwgMzUzODAsIDM1Mzg0LCAzNTM4OCwgMzUzOTEsIDM1Mzk3LCAKLSAgICAzNTQwMywgMzU0MTEsIDM1NDE3LCAzNTQyNCwgMjU5OTMsIDM1NDI4LCAyNjE3OCwgMzU0MzIsIDM1NDQxLCAzNTQ0NywgCi0gICAgMzU0NTMsIDM1NDU4LCAzNTQ2MiwgMzU0NjgsIDM1NDcyLCAzNTQ3NSwgMzU0ODMsIDM1NDkxLCAyNDE1NiwgMzU0OTcsIAotICAgIDM1NTA0LCAzNTUxMCwgMzU1MTUsIDM1NTIwLCAzNTUyNCwgMzU1MzAsIDM1NTM1LCAzNTU0MSwgMzk3MywgNzU1LCAzNTU0OCwgCi0gICAgMzU1NTIsIDM1NTU1LCAxMzUxMywgMzU1NjcsIDMzNTI3LCAzNTU3OCwgMzU1ODEsIDM1NTg4LCAzNTU5NCwgMzU1OTgsIAotICAgIDM1NjA0LCAzNTYwOSwgMzU2MTUsIDM1NjIwLCAzNTYyNSwgMzU2MjksIDM1NjMzLCAzNTYzOCwgMzU2NDMsIDM1NjUzLCAKLSAgICAzNTY1OSwgMzU2NzIsIDM1Njc4LCAzNTY4NSwgMzU2OTAsIDM1Njk2LCAzNTcwMSwgMTQ4NDQsIDE0MzUsIDEwMDIsIAotICAgIDI4OTc0LCAyODk4MCwgMzU3MDYsIDI4OTg2LCAyODk5OSwgMjkwMDUsIDI5MDExLCAzNTcxMiwgMjkwMTcsIDI5MDIzLCAKLSAgICAzNTcxOCwgMzU3MjQsIDE0LCAzNTczMiwgMzU3MzksIDM1NzQzLCAzNTc0NywgMzU3NTUsIDI5NzM3LCAzNTc1OSwgMzU3NjMsIAotICAgIDM1NzcwLCAzNTc3NSwgMzU3NzksIDM1Nzg0LCAzNTc5MCwgMzU3OTUsIDM1ODAxLCAzNTgwNiwgMzU4MTAsIDM1ODE0LCAKLSAgICAzNTgxOCwgMzU4MjMsIDM1ODI3LCAzNTgzMiwgMzU4MzYsIDM1ODQzLCAzNTg0OCwgMzU4NTIsIDM1ODU3LCAzNTg2MSwgCi0gICAgMzU4NjYsIDM1ODcwLCAzNTg3NSwgMzU4ODEsIDEzNzMzLCAxMzczOCwgMzU4ODYsIDM1ODkwLCAzNTg5MywgMzU4OTcsIAotICAgIDM1OTAyLCAzNTkwNiwgMzU5MTIsIDM1OTE5LCAzNTkyNCwgMzU5MzQsIDM1OTM5LCAzNTk0NywgMzU5NTEsIDM1OTU0LCAKLSAgICAyOTc1MiwgMzU5NTgsIDQwMjYsIDM1OTYzLCAzNTk2OCwgMzU5NzIsIDM1OTc3LCAzNTk4MSwgMzU5ODYsIDExNjg3LCAKLSAgICAzNTk5NywgMzYwMDEsIDM2MDA0LCAzNjAwOSwgMzYwMTMsIDM2MDE3LCAzNjAyMCwgMzYwMjQsIDY1NzYsIDExNzAzLCAKLSAgICAzNjAyNywgMzYwMzAsIDM2MDM1LCAzNjAzOSwgMzYwNDgsIDM2MDY0LCAzNjA4MCwgMzYwOTAsIDI1OTAwLCAzNjA5NywgCi0gICAgMzYxMDEsIDM2MTA2LCAzNjExMSwgMzYxMTUsIDM2MTE5LCAzMzY0NCwgMzYxMjUsIDM2MTMwLCAzNjEzNCwgMzYxNDEsIAotICAgIDM2MTQ2LCAzNjE1MCwgMzYxNTQsIDI0OTU4LCAzNjE2MCwgMTk2MDMsIDM2MTY1LCAzNjE3MiwgMzYxODAsIDM2MTg2LCAKLSAgICAzNjE5MywgMzYyMDEsIDM2MjA3LCAzNjIxMSwgMzYyMTcsIDM2MjI1LCAzNjIyOSwgMzYyMzgsIDc4NzYsIDM2MjQ2LCAKLSAgICAzNjI1MCwgMzYyNTgsIDM2MjY1LCAzNjI3MCwgMzYyNzUsIDM2Mjc5LCAzNjI4MiwgMzYyODYsIDM2Mjg5LCAzNjI5MywgCi0gICAgMzYzMDAsIDM2MzA1LCAzNjMxMSwgMjQzNzcsIDI5MDM0LCAzNjMxNSwgMzYzMjIsIDM2MzI4LCAzNjMzNCwgMzYzMzksIAotICAgIDM2MzQyLCAzNjM0NCwgMzYzNTEsIDM2MzU4LCAzNjM2NCwgMzYzNjgsIDM2MzcxLCAzNjM3NSwgMzYzNzksIDM2MzgzLCAKLSAgICAzNjM4OCwgMzYzOTIsIDM2Mzk2LCAzNjM5OSwgMzY0MDMsIDM2NDE3LCAyMTE0NiwgMzY0MzYsIDM2NDQ5LCAzNjQ2MiwgCi0gICAgMzY0NzUsIDIxMTY0LCAzNjQ5MCwgODg0NiwgMzY1MDUsIDM2NTExLCAzNjUxNSwgMzY1MTksIDM2NTI2LCAzNjUzMSwgCi0gICAgMzY1MzUsIDM2NTQyLCAzNjU0OCwgMzY1NTMsIDM2NTU5LCAzNjU2OSwgMzY1ODEsIDM2NTkyLCAzNjU5NywgMzY2MDQsIAotICAgIDM2NjA4LCAzNjYxMiwgMzY2MTUsIDE0MTI5LCAzNjA1LCAzNjYyMywgMTM3NjAsIDM2NjM2LCAzNjY0MywgMzY2NDcsIAotICAgIDM2NjUxLCAzNjY1NiwgMzY2NjEsIDM2NjY3LCAzNjY3MSwgMzY2NzUsIDM2Njc4LCA2MTg4LCAxMzc3MSwgMzY2ODMsIAotICAgIDM2Njg3LCAzNjY5MywgMzY3MDIsIDM2NzA3LCAzMzUwNCwgMzY3MTMsIDM2NzE4LCAzNjcyMiwgMzY3MjcsIDM2NzM0LCAKLSAgICAzNjczOCwgMzY3NDEsIDEyODI0LCAzNjc0NiwgMzY3NTMsIDEwMDksIDM2NzU3LCAzNjc2MiwgMzY3NjcsIDM2NzczLCAKLSAgICAzNjc3OCwgMzY3ODMsIDM2Nzg3LCAzNjc5NywgMzY4MDIsIDM2ODA4LCAzNjgxMywgMzY4MTksIDM2ODI0LCAzNjgzMCwgCi0gICAgMzY4NDAsIDM2ODQ1LCAzNjg1MCwgMzY4NTQsIDU2ODMsIDU2OTUsIDM2ODU5LCAzNjg2MiwgMzY4NjksIDM2ODc1LCAKLSAgICAzMTc5MywgMzE4MDAsIDM2ODg0LCAzNjg4OCwgMjk4MDAsIDM2ODk2LCAzNjkwNywgMzY5MTUsIDMzNjkyLCAzNjkyMiwgCi0gICAgMzY5MjcsIDM2OTMyLCAzNjk0MywgMzY5NTAsIDM2OTYxLCAyOTgyNCwgMTk2MDksIDM2OTY5LCA3MjIsIDM2OTc0LCAKLSAgICAzNjk4MCwgMjU5ODQsIDM2OTg2LCAzNjk5MSwgMzcwMDEsIDM3MDEwLCAzNzAxNywgMzcwMjMsIDM3MDI3LCAzNzAzMCwgCi0gICAgMzcwMzcsIDM3MDQzLCAzNzA1MCwgMzcwNTYsIDM3MDY2LCAzNzA3NCwgMzcwODAsIDM3MDg2LCAzNzA5MSwgMzcwOTUsIAotICAgIDM3MTAyLCAzNzEwOCwgMzcxMTUsIDM2Mzg0LCA1MzAsIDEyMTEyLCAzNzEyMSwgMzcxMjYsIDM3MTI5LCAzNzEzNSwgCi0gICAgMzcxNDMsIDEzNjQsIDM3MTQ4LCAzNzE1MiwgMzcxNTcsIDM3MTY0LCAzNzE3MCwgMzcxNzQsIDM3MTc5LCAzNzE4OCwgCi0gICAgMzcxOTUsIDM3MjA1LCAzNzIxMSwgMjYwMTksIDM3MjI4LCAzNzIzNywgMzcyNDUsIDM3MjUxLCAzNzI1NiwgMzcyNjMsIAotICAgIDM3MjY5LCAzNzI3NywgMzcyODYsIDM3Mjk0LCAzNzI5OCwgMzczMDMsIDM3MzExLCAyOTgzMywgMzczMTcsIDM3MzM2LCAKLSAgICAxNDA2MiwgMzczNTAsIDM3MzY2LCAzNzM4MCwgMzczODYsIDM3MzkxLCAzNzM5NiwgMzc0MDEsIDM3NDA3LCAyOTgzOSwgCi0gICAgMzc0MTIsIDM3NDE5LCAzNzQyNCwgMzc0MjgsIDM0MSwgMjg3OCwgMzc0MzUsIDM3NDQwLCAzNzQ0NSwgMjUyNzUsIDM3MjY2LCAKLSAgICAzNzQ0OSwgMzc0NTQsIDM3NDYyLCAzNzQ2NiwgMzc0NjksIDM3NDc1LCAzNzQ3OSwgMjYwNzQsIDM3NDgyLCAzNzQ4NywgCi0gICAgMzc0OTEsIDM3NDk0LCAzNzQ5OSwgMzc1MDMsIDM3NTA4LCAzNzUxMywgMzc1MTcsIDM3NTIyLCAzNzUyNiwgMzc1MzAsIAotICAgIDE5MzQ2LCAxOTM1NywgMzc1MzQsIDM3NTM5LCAzNzU0NSwgMjQ5MTUsIDM3NTUwLCAzNzU1NCwgMTk0MjUsIDE0MjgwLCAKLSAgICAzNzU1NywgMzc1NjIsIDM3NTY3LCAzNzU3MiwgMzc1NzcsIDM3NTgyLCAzNzU4NywgMzc1OTIsIDQ0MCwgNDMsIDI5MDUyLCAKLSAgICAyOTA1NywgMjkwNjIsIDI5MDY4LCAyOTA3MywgMjkwNzgsIDM3NTk3LCAyOTA4MiwgMzc2MDEsIDM3NjA1LCAyOTA4NywgCi0gICAgMjkwOTMsIDM3NjA5LCAyOTEwNCwgMjkxMDksIDM3NjE3LCAzNzYyMiwgMjkxMTUsIDM3NjI3LCAzNzYzMiwgMzc2MzcsIAotICAgIDM3NjQyLCAzNzY0OCwgMzc2NTQsIDM3NjYwLCAyOTEzMiwgMzc2NzMsIDM3Njc5LCAyOTEzNiwgMzc2ODMsIDI5MTQxLCAKLSAgICAzNzY4OCwgMjkxNDYsIDI5MTUxLCAzNzY5MSwgMzc2OTYsIDM3NzAwLCAyODc5NSwgMzc3MDYsIDExOTExLCAzNzcxMywgCi0gICAgMzc3MTgsIDI5MTU2LCAzNzcyMiwgMzc3MjcsIDM3NzMyLCAzNzczNywgMzc3NDEsIDM3NzQ2LCAzNzc1MSwgMzc3NTcsIAotICAgIDM3NzYyLCAzNzc2NywgMzc3NzMsIDM3Nzc5LCAzNzc4NCwgMzc3ODgsIDM3NzkzLCAzNzc5OCwgMzc4MDMsIDM3ODA3LCAKLSAgICAzNzgxMiwgMzc4MTcsIDM3ODIyLCAzNzgyOCwgMzc4MzQsIDM3ODQwLCAzNzg0NSwgMzc4NDksIDM3ODU0LCAzNzg1OCwgCi0gICAgMjkxNjAsIDI5MTY1LCAyOTE3MCwgMzc4NjIsIDM3ODY2LCAyOTE3NSwgMjkxODEsIDI5MTg3LCAyOTE5OSwgMzc4NzgsIAotICAgIDIzOTgzLCAzNzg4MiwgMzc4ODYsIDM3ODkxLCAzNzg5NiwgMzc5MDEsIDM3OTA1LCAzNzkwOSwgMzc5MTksIDM3OTI0LCAKLSAgICAzNzkyOSwgMzc5MzMsIDM3OTM3LCAzNzk0MCwgMzc5NDgsIDI5MjQ3LCAzNzk1MywgMTQ0MiwgMzc5NTksIDM3OTY3LCAKLSAgICAzNzk3NiwgMzc5ODAsIDM3OTg4LCAzNzk5NCwgMzgwMDIsIDM4MDE4LCAzODAyMywgMzgwMzgsIDI5Mjg0LCAxNzEyLCAKLSAgICAxMDM3NSwgMzgwNDIsIDI5MjQsIDM4MDU0LCAzODA1NSwgMzgwNjMsIDM4MDcwLCAzODA3NSwgMzgwODIsIDM4MDg3LCAKLSAgICA3NzQ2LCAxMDkwLCA4Njc1LCAzODA5NCwgMzgwOTksIDM4MTAyLCAzODEwNSwgMzgxMTQsIDEyNzUsIDM4MTE5LCAzNjUzMiwgCi0gICAgMzgxMjYsIDM4MTMxLCAyMDU4MywgMjUxMSwgMzgxMzUsIDkwOTQsIDM4MTQ1LCAzODE1MSwgMjI5MSwgMjMwMSwgMzgxNjAsIAotICAgIDM4MTY5LCAzODE3OSwgMzgxOTAsIDMyMzUsIDMxOTQ0LCA4NzI3LCAzNzM1LCAxNDg4MiwgMTI4MCwgMzgxOTUsIDM4MjAzLCAKLSAgICAzODIxMCwgMzgyMTUsIDM4MjE5LCAzODIyMywgMjE5MzAsIDg3NTQsIDM4MjMxLCAzODI0MCwgMzgyNDksIDM4MjU3LCAKLSAgICAzODI2NCwgMzgyNjksIDM4MjgyLCAzODI5NSwgMzgzMDcsIDM4MzE5LCAzODMzMSwgMzgzNDQsIDM4MzU1LCAzODM2NiwgCi0gICAgMzgzNzYsIDM4Mzg0LCAzODM5MiwgMzg0MDQsIDM4NDE2LCAzODQyNywgMzg0MzYsIDM4NDQ0LCAzODQ1MSwgMzg0NjMsIAotICAgIDM4NDcwLCAzODQ3OSwgMzg0ODYsIDM4NDk5LCAzODUwNCwgMzg1MTQsIDM4NTE5LCAzODUyNSwgMzg1MzAsIDM0NzU5LCAKLSAgICAzODUzNCwgMzg1NDEsIDM4NTQ1LCAzODU1MiwgMzg1NjAsIDI0NzIsIDM4NTY3LCAzODU3OCwgMzg1ODgsIDM4NTk3LCAKLSAgICAzODYwNSwgMzg2MTUsIDM4NjIzLCAzODYzMywgMzg2NDIsIDM4NjQ3LCAzODY1MywgMzg2NTksIDM4NjcwLCAzODY4MCwgCi0gICAgMzg2ODksIDM4Njk4LCAzODcwOCwgMzg3MTYsIDM4NzI1LCAzODczMCwgMzg3MzUsIDM4NzQwLCAxNjY4LCAzNywgMzg3NDgsIAotICAgIDM4NzU2LCAzODc2NywgMzg3NzgsIDE0NTYzLCAzODc4OCwgMzg3OTUsIDM4ODAxLCAzODgwNiwgMzg4MTAsIDM4ODIxLCAKLSAgICAzODgzMSwgMzg4NDAsIDM4ODUxLCAxNDkzMSwgMTQ5MzYsIDM4ODU2LCAzODg2NSwgMzg4NzAsIDM4ODgwLCAzODg4NSwgCi0gICAgMzg4OTMsIDM4OTAxLCAzODkwOCwgMzg5MTQsIDU1MzYsIDEwMzgsIDM4OTE4LCAzODkyNCwgMzg5MjksIDM4OTMyLCAyMDc1LCAKLSAgICAzNjY0OCwgMzg5NDAsIDM4OTQ0LCAzODk0NywgMTQ3NSwgMzg5NTMsIDEyMjYxLCAxMjg1LCAzODk1OCwgMzg5NzEsIAotICAgIDM4OTg1LCAyNTk3LCAzOTAwMywgMzkwMTUsIDM5MDI3LCAyNjExLCAyNjI4LCAzOTA0MSwgMzkwNTQsIDI2NDMsIDM5MDY4LCAKLSAgICAzOTA4MCwgMjY1OCwgMzkwOTQsIDEyOTEsIDEyOTcsIDEzMDMsIDkwMTIsIDM5MDk5LCAzOTEwNCwgMzkxMDksIDM5MTEzLCAKLSAgICAzOTEyOCwgMzkxNDMsIDM5MTU4LCAzOTE3MywgMzkxODgsIDM5MjAzLCAzOTIxOCwgMzkyMzMsIDM5MjQ4LCAzOTI2MywgCi0gICAgMzkyNzgsIDM5MjkzLCAzOTMwOCwgMzkzMjMsIDM5MzM4LCAzOTM1MywgMzkzNjgsIDM5MzgzLCAzOTM5OCwgMzk0MTMsIAotICAgIDM5NDI4LCAzOTQ0MywgMzk0NTgsIDM5NDczLCAzOTQ4OCwgMzk1MDMsIDM5NTE4LCAzOTUzMywgMzk1NDgsIDM5NTYzLCAKLSAgICAzOTU3OCwgMzk1OTMsIDM5NjA4LCAzOTYyMywgMzk2MzgsIDM5NjUzLCAzOTY2OCwgMzk2ODMsIDM5Njk4LCAzOTcxMywgCi0gICAgMzk3MjgsIDM5NzQzLCAzOTc1OCwgMzk3NzMsIDM5Nzg4LCAzOTgwMywgMzk4MTgsIDM5ODMzLCAzOTg0OCwgMzk4NjMsIAotICAgIDM5ODc4LCAzOTg5MywgMzk5MDgsIDM5OTIzLCAzOTkzOCwgMzk5NTMsIDM5OTY4LCAzOTk4MywgMzk5OTgsIDQwMDEzLCAKLSAgICA0MDAyOCwgNDAwNDMsIDQwMDU4LCA0MDA3MywgNDAwODgsIDQwMTAzLCA0MDExOCwgNDAxMzMsIDQwMTQ4LCA0MDE2MywgCi0gICAgNDAxNzgsIDQwMTkzLCA0MDIwOCwgNDAyMjMsIDQwMjM4LCA0MDI1MywgNDAyNjgsIDQwMjgzLCA0MDI5OCwgNDAzMTMsIAotICAgIDQwMzI4LCA0MDM0MywgNDAzNTgsIDQwMzczLCA0MDM4OCwgNDA0MDMsIDQwNDE4LCA0MDQzMywgNDA0NDgsIDQwNDYzLCAKLSAgICA0MDQ3OCwgNDA0OTMsIDQwNTA4LCA0MDUyMywgNDA1MzgsIDQwNTUzLCA0MDU2OCwgNDA1ODMsIDQwNTk4LCA0MDYxMywgCi0gICAgNDA2MjgsIDQwNjQzLCA0MDY1OCwgNDA2NzMsIDQwNjg4LCA0MDcwMywgNDA3MTgsIDQwNzMzLCA0MDc0OCwgNDA3NjMsIAotICAgIDQwNzc4LCA0MDc5MywgNDA4MDgsIDQwODIzLCA0MDgzOCwgNDA4NTMsIDQwODY4LCA0MDg4MywgNDA4OTgsIDQwOTEzLCAKLSAgICA0MDkyOCwgNDA5NDMsIDQwOTU4LCA0MDk3MywgNDA5ODgsIDQxMDAzLCA0MTAxOCwgNDEwMzMsIDQxMDQ4LCA0MTA2MywgCi0gICAgNDEwNzgsIDQxMDkzLCA0MTEwOCwgNDExMjMsIDQxMTM4LCA0MTE1MywgNDExNjgsIDQxMTgzLCA0MTE5OCwgNDEyMTMsIAotICAgIDQxMjI4LCA0MTI0MywgNDEyNTgsIDQxMjczLCA0MTI4OCwgNDEzMDMsIDQxMzE4LCA0MTMzMywgNDEzNDgsIDQxMzYzLCAKLSAgICA0MTM3OCwgNDEzOTMsIDQxNDA4LCA0MTQyMywgNDE0MzgsIDQxNDUzLCA0MTQ2OCwgNDE0ODMsIDQxNDk4LCA0MTUxMywgCi0gICAgNDE1MjgsIDQxNTQzLCA0MTU1OCwgNDE1NzMsIDQxNTg4LCA0MTYwMywgNDE2MTgsIDQxNjMzLCA0MTY0OCwgNDE2NjMsIAotICAgIDQxNjc4LCA0MTY5MywgNDE3MDgsIDQxNzIzLCA0MTczOCwgNDE3NTMsIDQxNzY4LCA0MTc4MywgNDE3OTgsIDQxODEzLCAKLSAgICA0MTgyOCwgNDE4NDMsIDQxODU4LCA0MTg3MywgNDE4ODgsIDQxOTAzLCA0MTkxOCwgNDE5MzMsIDQxOTQ4LCA0MTk2MywgCi0gICAgNDE5NzgsIDQxOTkzLCA0MjAwOCwgNDIwMjMsIDQyMDM4LCA0MjA1MywgNDIwNjgsIDQyMDgzLCA0MjA5OCwgNDIxMTMsIAotICAgIDQyMTI4LCA0MjE0MywgNDIxNTgsIDQyMTczLCA0MjE4OCwgNDIyMDMsIDQyMjE4LCA0MjIzMywgNDIyNDgsIDQyMjYzLCAKLSAgICA0MjI3OCwgNDIyOTMsIDQyMzA4LCA0MjMyMywgNDIzMzgsIDQyMzUzLCA0MjM2OCwgNDIzODMsIDQyMzk4LCA0MjQxMywgCi0gICAgNDI0MjgsIDQyNDQzLCA0MjQ1OCwgNDI0NzMsIDQyNDg4LCA0MjUwMywgNDI1MTgsIDQyNTMzLCA0MjU0OCwgNDI1NjMsIAotICAgIDQyNTc4LCA0MjU5MywgNDI2MDgsIDQyNjIzLCA0MjYzOCwgNDI2NTMsIDQyNjY4LCA0MjY4MywgNDI2OTgsIDQyNzEzLCAKLSAgICA0MjcyOCwgNDI3NDMsIDQyNzU4LCA0Mjc3MywgNDI3ODgsIDQyODAzLCA0MjgxOCwgNDI4MzMsIDQyODQ4LCA0Mjg2MywgCi0gICAgNDI4NzgsIDQyODkzLCA0MjkwOCwgNDI5MjMsIDQyOTM4LCA0Mjk1MywgNDI5NjgsIDQyOTgzLCA0Mjk5OCwgNDMwMTMsIAotICAgIDQzMDI4LCA0MzA0MywgNDMwNTgsIDQzMDczLCA0MzA4OCwgNDMxMDMsIDQzMTE4LCA0MzEzMywgNDMxNDgsIDQzMTYzLCAKLSAgICA0MzE3OCwgNDMxOTMsIDQzMjA4LCA0MzIyMywgNDMyMzgsIDQzMjUzLCA0MzI2OCwgNDMyODMsIDQzMjk4LCA0MzMxMywgCi0gICAgNDMzMjgsIDQzMzQzLCA0MzM1OCwgNDMzNzMsIDQzMzg4LCA0MzQwMywgNDM0MTgsIDQzNDMzLCA0MzQ0OCwgNDM0NjMsIAotICAgIDQzNDc4LCA0MzQ5MywgNDM1MDgsIDQzNTIzLCA0MzUzOCwgNDM1NTMsIDQzNTY4LCA0MzU4MywgNDM1OTgsIDQzNjEzLCAKLSAgICA0MzYyOCwgNDM2NDMsIDQzNjU4LCA0MzY3MywgNDM2ODgsIDQzNzAzLCA0MzcxOCwgNDM3MzMsIDQzNzQ4LCA0Mzc2MywgCi0gICAgNDM3NzgsIDQzNzkzLCA0MzgwOCwgNDM4MjMsIDQzODM4LCA0Mzg1MywgNDM4NjgsIDQzODgzLCA0Mzg5OCwgNDM5MTMsIAotICAgIDQzOTI4LCA0Mzk0MywgNDM5NTgsIDQzOTczLCA0Mzk4OCwgNDQwMDMsIDQ0MDE4LCA0NDAzMywgNDQwNDgsIDQ0MDYzLCAKLSAgICA0NDA3OCwgNDQwOTMsIDQ0MTA4LCA0NDEyMywgNDQxMzgsIDQ0MTUzLCA0NDE2OCwgNDQxODMsIDQ0MTk4LCA0NDIxMywgCi0gICAgNDQyMjgsIDQ0MjQzLCA0NDI1OCwgNDQyNzMsIDQ0Mjg4LCA0NDMwMywgNDQzMTgsIDQ0MzMzLCA0NDM0OCwgNDQzNjMsIAotICAgIDQ0Mzc4LCA0NDM5MywgNDQ0MDgsIDQ0NDIzLCA0NDQzOCwgNDQ0NTMsIDQ0NDY4LCA0NDQ4MywgNDQ0OTgsIDQ0NTEzLCAKLSAgICA0NDUyOCwgNDQ1NDMsIDQ0NTU4LCA0NDU3MywgNDQ1ODgsIDQ0NjAzLCA0NDYxOCwgNDQ2MzMsIDQ0NjQ4LCA0NDY2MywgCi0gICAgNDQ2NzgsIDQ0NjkzLCA0NDcwOCwgNDQ3MjMsIDQ0NzM4LCA0NDc1MywgNDQ3NjgsIDQ0NzgzLCA0NDc5OCwgNDQ4MTMsIAotICAgIDQ0ODI4LCA0NDg0MywgNDQ4NTgsIDQ0ODczLCA0NDg4OCwgNDQ5MDMsIDQ0OTE4LCA0NDkzMywgNDQ5NDgsIDQ0OTYzLCAKLSAgICA0NDk3OCwgNDQ5OTMsIDQ1MDA4LCA0NTAyMywgNDUwMzgsIDQ1MDUzLCA0NTA2OCwgNDUwODMsIDQ1MDk4LCA0NTExMywgCi0gICAgNDUxMjgsIDQ1MTQzLCA0NTE1OCwgNDUxNzMsIDQ1MTg4LCA0NTIwMywgNDUyMTgsIDQ1MjMzLCA0NTI0OCwgNDUyNjMsIAotICAgIDQ1Mjc4LCA0NTI5MywgNDUzMDgsIDQ1MzIzLCA0NTMzOCwgNDUzNTMsIDQ1MzY4LCA0NTM4MywgNDUzOTgsIDQ1NDEzLCAKLSAgICA0NTQyOCwgNDU0NDMsIDQ1NDU4LCA0NTQ3MywgNDU0ODgsIDQ1NTAzLCA0NTUxOCwgNDU1MzMsIDQ1NTQ4LCA0NTU2MywgCi0gICAgNDU1NzgsIDQ1NTkzLCA0NTYwOCwgNDU2MjMsIDQ1NjM4LCA0NTY1MywgNDU2NjgsIDQ1NjgzLCA0NTY5OCwgNDU3MTMsIAotICAgIDQ1NzI4LCA0NTc0MywgNDU3NTgsIDQ1NzczLCA0NTc4OCwgNDU4MDMsIDQ1ODE4LCA0NTgzMywgNDU4NDgsIDQ1ODYzLCAKLSAgICA0NTg3OCwgNDU4OTMsIDQ1OTA4LCA0NTkyMywgNDU5MzgsIDQ1OTUzLCA0NTk2OCwgNDU5ODMsIDQ1OTk4LCA0NjAxMywgCi0gICAgNDYwMjgsIDQ2MDQzLCA0NjA1OCwgNDYwNzMsIDQ2MDg4LCA0NjEwMywgNDYxMTgsIDQ2MTMzLCA0NjE0OCwgNDYxNjMsIAotICAgIDQ2MTc4LCA0NjE5MywgNDYyMDgsIDQ2MjIzLCA0NjIzOCwgNDYyNTMsIDQ2MjY4LCA0NjI4MywgNDYyOTgsIDQ2MzEzLCAKLSAgICA0NjMyOCwgNDYzNDMsIDQ2MzU4LCA0NjM3MywgNDYzODgsIDQ2NDAzLCA0NjQxOCwgNDY0MzMsIDQ2NDQ4LCA0NjQ2MywgCi0gICAgNDY0NzgsIDQ2NDkzLCA0NjUwOCwgNDY1MjMsIDQ2NTM4LCA0NjU1MywgNDY1NjgsIDQ2NTgzLCA0NjU5OCwgNDY2MTMsIAotICAgIDQ2NjI4LCA0NjY0MywgNDY2NTgsIDQ2NjczLCA0NjY4OCwgNDY3MDMsIDQ2NzE4LCA0NjczMywgNDY3NDgsIDQ2NzYzLCAKLSAgICA0Njc3OCwgNDY3OTMsIDQ2ODA4LCA0NjgyMywgNDY4MzgsIDQ2ODUzLCA0Njg2OCwgNDY4ODMsIDQ2ODk5LCA0NjkxNSwgCi0gICAgNDY5MzEsIDQ2OTQ3LCA0Njk2MywgNDY5NzksIDQ2OTk1LCA0NzAxMSwgNDcwMjcsIDQ3MDQzLCA0NzA1OSwgNDcwNzUsIAotICAgIDQ3MDkxLCA0NzEwNywgNDcxMjMsIDQ3MTM5LCA0NzE1NSwgNDcxNzEsIDQ3MTg3LCA0NzIwMywgNDcyMTksIDQ3MjM1LCAKLSAgICA0NzI1MSwgNDcyNjcsIDQ3MjgzLCA0NzI5OSwgNDczMTUsIDQ3MzMxLCA0NzM0NywgNDczNjMsIDQ3Mzc5LCA0NzM5NSwgCi0gICAgNDc0MTEsIDQ3NDI3LCA0NzQ0MywgNDc0NTksIDQ3NDc1LCA0NzQ5MSwgNDc1MDcsIDQ3NTIzLCA0NzUzOSwgNDc1NTUsIAotICAgIDQ3NTcxLCA0NzU4NywgNDc2MDMsIDQ3NjE5LCA0NzYzNSwgNDc2NTEsIDQ3NjY3LCA0NzY4MywgNDc2OTksIDQ3NzE1LCAKLSAgICA0NzczMSwgNDc3NDcsIDQ3NzYzLCA0Nzc3OSwgNDc3OTUsIDQ3ODExLCA0NzgyNywgNDc4NDMsIDQ3ODU5LCA0Nzg3NSwgCi0gICAgNDc4OTEsIDQ3OTA3LCA0NzkyMywgNDc5MzksIDQ3OTU1LCA0Nzk3MSwgNDc5ODcsIDQ4MDAzLCA0ODAxOSwgNDgwMzUsIAotICAgIDQ4MDUxLCA0ODA2NywgNDgwODMsIDQ4MDk5LCA0ODExNSwgNDgxMzEsIDQ4MTQ3LCA0ODE2MywgNDgxNzksIDQ4MTk1LCAKLSAgICA0ODIxMSwgNDgyMjcsIDQ4MjQzLCA0ODI1OSwgNDgyNzUsIDQ4MjkxLCA0ODMwNywgNDgzMjMsIDQ4MzM5LCA0ODM1NSwgCi0gICAgNDgzNzEsIDQ4Mzg3LCA0ODQwMywgNDg0MTksIDQ4NDM1LCA0ODQ1MSwgNDg0NjcsIDQ4NDgzLCA0ODQ5OSwgNDg1MTUsIAotICAgIDQ4NTMxLCA0ODU0NywgNDg1NjMsIDQ4NTc5LCA0ODU5NSwgNDg2MTEsIDQ4NjI3LCA0ODY0MywgNDg2NTksIDQ4Njc1LCAKLSAgICA0ODY5MSwgNDg3MDcsIDQ4NzIzLCA0ODczOSwgNDg3NTUsIDQ4NzcxLCA0ODc4NywgNDg4MDMsIDQ4ODE5LCA0ODgzNSwgCi0gICAgNDg4NTEsIDQ4ODY3LCA0ODg4MywgNDg4OTksIDQ4OTE1LCA0ODkzMSwgNDg5NDcsIDQ4OTYzLCA0ODk3OSwgNDg5OTUsIAotICAgIDQ5MDExLCA0OTAyNywgNDkwNDMsIDQ5MDU5LCA0OTA3NSwgNDkwOTEsIDQ5MTA3LCA0OTEyMywgNDkxMzksIDQ5MTU1LCAKLSAgICA0OTE3MSwgNDkxODcsIDQ5MjAzLCA0OTIxOSwgNDkyMzUsIDQ5MjUxLCA0OTI2NywgNDkyODMsIDQ5Mjk5LCA0OTMxNSwgCi0gICAgNDkzMzEsIDQ5MzQ3LCA0OTM2MywgNDkzNzksIDQ5Mzk1LCA0OTQxMSwgNDk0MjcsIDQ5NDQzLCA0OTQ1OSwgNDk0NzUsIAotICAgIDQ5NDkxLCA0OTUwNywgNDk1MjMsIDQ5NTM5LCA0OTU1NSwgNDk1NzEsIDQ5NTg3LCA0OTYwMywgNDk2MTksIDQ5NjM1LCAKLSAgICA0OTY1MSwgNDk2NjcsIDQ5NjgzLCA0OTY5OSwgNDk3MTUsIDQ5NzMxLCA0OTc0NywgNDk3NjMsIDQ5Nzc5LCA0OTc5NSwgCi0gICAgNDk4MTEsIDQ5ODI3LCA0OTg0MywgNDk4NTksIDQ5ODc1LCA0OTg5MSwgNDk5MDcsIDQ5OTIzLCA0OTkzOSwgNDk5NTUsIAotICAgIDQ5OTcxLCA0OTk4NywgNTAwMDMsIDUwMDE5LCA1MDAzNSwgNTAwNTEsIDUwMDY3LCA1MDA4MywgNTAwOTksIDUwMTE1LCAKLSAgICA1MDEzMSwgNTAxNDcsIDUwMTYzLCA1MDE3OSwgNTAxOTUsIDUwMjExLCA1MDIyNywgNTAyNDMsIDUwMjU5LCA1MDI3NSwgCi0gICAgNTAyOTEsIDUwMzA3LCA1MDMyMywgNTAzMzksIDUwMzU1LCA1MDM3MSwgNTAzODcsIDUwNDAzLCA1MDQxOSwgNTA0MzUsIAotICAgIDUwNDUxLCA1MDQ2NywgNTA0ODMsIDUwNDk5LCA1MDUxNSwgNTA1MzEsIDUwNTQ3LCA1MDU2MywgNTA1NzksIDUwNTk1LCAKLSAgICA1MDYxMSwgNTA2MjcsIDUwNjQzLCA1MDY1OSwgNTA2NzUsIDUwNjkxLCA1MDcwNywgNTA3MjMsIDUwNzM5LCA1MDc1NSwgCi0gICAgNTA3NzEsIDUwNzg3LCA1MDgwMywgNTA4MTksIDUwODM1LCA1MDg1MSwgNTA4NjcsIDUwODgzLCA1MDg5OSwgNTA5MTUsIAotICAgIDUwOTMxLCA1MDk0NywgNTA5NjMsIDUwOTc5LCA1MDk5NSwgNTEwMTEsIDUxMDI3LCA1MTA0MywgNTEwNTksIDUxMDc1LCAKLSAgICA1MTA5MSwgNTExMDcsIDUxMTIzLCA1MTEzOSwgNTExNTUsIDUxMTcxLCA1MTE4NywgNTEyMDMsIDUxMjE5LCA1MTIzNSwgCi0gICAgNTEyNTEsIDUxMjY3LCA1MTI4MywgNTEyOTksIDUxMzE1LCA1MTMzMSwgNTEzNDcsIDUxMzYzLCA1MTM3OSwgNTEzOTUsIAotICAgIDUxNDExLCA1MTQyNywgNTE0NDMsIDUxNDU5LCA1MTQ3NSwgNTE0OTEsIDUxNTA3LCA1MTUyMywgNTE1MzksIDUxNTU1LCAKLSAgICA1MTU3MSwgNTE1ODcsIDUxNjAzLCA1MTYxOSwgNTE2MzUsIDUxNjUxLCA1MTY2NywgNTE2ODMsIDUxNjk5LCA1MTcxNSwgCi0gICAgNTE3MzEsIDUxNzQ3LCA1MTc2MywgNTE3NzksIDUxNzk1LCA1MTgxMSwgNTE4MjcsIDUxODQzLCA1MTg1OSwgNTE4NzUsIAotICAgIDUxODkxLCA1MTkwNywgNTE5MjMsIDUxOTM5LCA1MTk1NSwgNTE5NzEsIDUxOTg3LCA1MjAwMywgNTIwMTksIDUyMDM1LCAKLSAgICA1MjA1MSwgNTIwNjcsIDUyMDgzLCA1MjA5OSwgNTIxMTUsIDUyMTMxLCA1MjE0NywgNTIxNjMsIDUyMTc5LCA1MjE5NSwgCi0gICAgNTIyMTEsIDUyMjI3LCA1MjI0MywgNTIyNTksIDUyMjc1LCA1MjI5MSwgNTIzMDcsIDUyMzIzLCA1MjMzOSwgNTIzNTUsIAotICAgIDUyMzcxLCA1MjM4NywgNTI0MDMsIDUyNDE5LCA1MjQzNSwgNTI0NTEsIDUyNDY3LCA1MjQ4MywgNTI0OTksIDUyNTE1LCAKLSAgICA1MjUzMSwgNTI1NDcsIDUyNTYzLCA1MjU3OSwgNTI1OTUsIDUyNjExLCA1MjYyNywgNTI2NDMsIDUyNjU5LCA1MjY3NSwgCi0gICAgNTI2OTEsIDUyNzA3LCA1MjcyMywgNTI3MzksIDUyNzU1LCA1Mjc3MSwgNTI3ODcsIDUyODAzLCA1MjgxOSwgNTI4MzUsIAotICAgIDUyODUxLCA1Mjg2NywgNTI4ODMsIDUyODk5LCA1MjkxNSwgNTI5MzEsIDUyOTQ3LCA1Mjk2MywgNTI5NzksIDUyOTk1LCAKLSAgICA1MzAxMSwgNTMwMjcsIDUzMDQzLCA1MzA1OSwgNTMwNzUsIDUzMDkxLCA1MzEwNywgNTMxMjMsIDUzMTM5LCA1MzE1NSwgCi0gICAgNTMxNzEsIDUzMTg3LCA1MzIwMywgNTMyMTksIDUzMjM1LCA1MzI1MSwgNTMyNjcsIDUzMjgzLCA1MzI5OSwgNTMzMTUsIAotICAgIDUzMzMxLCA1MzM0NywgNTMzNjMsIDUzMzc5LCA1MzM5NSwgNTM0MTEsIDUzNDI3LCA1MzQ0MywgNTM0NTksIDUzNDc1LCAKLSAgICA1MzQ5MSwgNTM1MDcsIDUzNTIzLCA1MzUzOSwgNTM1NTUsIDUzNTcxLCA1MzU4NywgNTM2MDMsIDUzNjE5LCA1MzYzNSwgCi0gICAgNTM2NTEsIDUzNjY3LCA1MzY4MywgNTM2OTksIDUzNzE1LCA1MzczMSwgNTM3NDcsIDUzNzYzLCA1Mzc3OSwgNTM3OTUsIAotICAgIDUzODExLCA1MzgyNywgNTM4NDMsIDUzODU5LCA1Mzg3NSwgNTM4OTEsIDUzOTA3LCA1MzkyMywgNTM5MzksIDUzOTU1LCAKLSAgICA1Mzk3MSwgNTM5ODcsIDU0MDAzLCA1NDAxOSwgNTQwMzUsIDU0MDUxLCA1NDA2NywgNTQwODMsIDU0MDk5LCA1NDExNSwgCi0gICAgNTQxMzEsIDU0MTQ3LCA1NDE2MywgNTQxNzksIDU0MTk1LCA1NDIxMSwgNTQyMjcsIDU0MjQzLCA1NDI1OSwgNTQyNzUsIAotICAgIDU0MjkxLCA1NDMwNywgNTQzMjMsIDU0MzM5LCA1NDM1NSwgNTQzNzEsIDU0Mzg3LCA1NDQwMywgNTQ0MTksIDU0NDM1LCAKLSAgICA1NDQ1MSwgNTQ0NjcsIDU0NDgzLCA1NDQ5OSwgNTQ1MTUsIDU0NTMxLCA1NDU0NywgNTQ1NjMsIDU0NTc5LCA1NDU5NSwgCi0gICAgNTQ2MTEsIDU0NjI3LCA1NDY0MywgNTQ2NTksIDU0Njc1LCA1NDY5MSwgNTQ3MDcsIDU0NzIzLCA1NDczOSwgNTQ3NTUsIAotICAgIDU0NzcxLCA1NDc4NywgNTQ4MDMsIDU0ODE5LCA1NDgzNSwgNTQ4NTEsIDU0ODY3LCA1NDg4MywgNTQ4OTksIDU0OTE1LCAKLSAgICA1NDkzMSwgNTQ5NDcsIDU0OTYzLCA1NDk3OSwgNTQ5OTUsIDU1MDExLCA1NTAyNywgNTUwNDMsIDU1MDU5LCA1NTA3NSwgCi0gICAgNTUwOTEsIDU1MTA3LCA1NTEyMywgNTUxMzksIDU1MTU1LCA1NTE3MSwgNTUxODcsIDU1MjAzLCA1NTIxOSwgNTUyMzUsIAotICAgIDU1MjUxLCA1NTI2NywgNTUyODMsIDU1Mjk5LCA1NTMxNSwgNTUzMzEsIDU1MzQ3LCA1NTM2MywgNTUzNzksIDU1Mzk1LCAKLSAgICA1NTQxMSwgNTU0MjcsIDU1NDQzLCA1NTQ1OSwgNTU0NzUsIDU1NDkxLCA1NTUwNywgNTU1MjMsIDU1NTM5LCA1NTU1NSwgCi0gICAgNTU1NzAsIDE0OTYzLCA1NTU3OSwgNTU1ODUsIDU1NTkxLCA1NTYwMSwgNTU2MDksIDEzMTQ0LCAxMzY4MywgODMxOSwgCi0gICAgNTU2MjIsIDE0ODMsIDU1NjMwLCAyNTM4NSwgNTYzNywgNTU2MzYsIDU1NjQxLCA1NTY0NiwgNTU2NTEsIDU1NjU2LCAKLSAgICA1NTY2MiwgNTU2NjcsIDU1NjczLCA1NTY3OCwgNTU2ODQsIDU1Njg5LCA1NTY5NCwgNTU2OTksIDU1NzA0LCA1NTcxMCwgCi0gICAgNTU3MTUsIDU1NzIwLCA1NTcyNSwgNTU3MzAsIDU1NzM1LCA1NTc0MCwgNTU3NDUsIDU1NzUxLCA1NTc1NiwgNTU3NjIsIAotICAgIDU1NzY5LCAyNTE1LCA1NTc3NCwgNTU3ODAsIDY5NDgsIDU1Nzg0LCA1NTc4OSwgNTU3OTYsIDU1ODA0LCA0MCwgNTU4MDgsIAotICAgIDU1ODE0LCA1NTgxOSwgNTU4MjQsIDU1ODI4LCA1NTgzMywgNTU4MzcsIDU1ODQxLCA5MDM3LCA1NTg0NSwgNTU4NTUsIAotICAgIDU1ODY4LCA1NTg3OSwgNTU4OTIsIDU1ODk5LCA1NTkwNSwgNTU5MTAsIDU1OTE2LCA1NTkyMiwgNTU5MjgsIDU1OTMzLCAKLSAgICA1NTkzOCwgNTU5NDMsIDU1OTQ4LCA1NTk1MiwgNTU5NTcsIDU1OTYyLCA1NTk2NywgNTU5NzMsIDU1OTc5LCA1NTk4NSwgCi0gICAgNTU5OTAsIDU1OTk0LCA1NTk5OSwgNTYwMDQsIDU2MDA4LCA1NjAxMywgNTYwMTgsIDU2MDIzLCA1NjAyNywgOTA1MywgCi0gICAgOTA2NCwgOTA2OSwgMTUyNiwgNTYwMzEsIDE1MzEsIDU2MDM3LCA1NjA0MCwgMTU2MiwgNTYwNDYsIDE1NjgsIDE1NzQsIAotICAgIDkwOTksIDU2MDUxLCA1NjA1OSwgNTYwNjYsIDU2MDcwLCA1NjA3NiwgNTYwODEsIDI4ODI0LCA1NjA4NiwgNTYwOTMsIAotICAgIDU2MDk4LCA1NjEwMiwgNTYxMDYsIDE1NzksIDE0NTM4LCAxNDU0OSwgNTYxMTUsIDU2MTIyLCA1NjEyNywgNTYxMzEsIAotICAgIDE0NTY4LCAxNTgzLCAzNDg5NywgNTYxMzQsIDU2MTM5LCA1NjE0OSwgNTYxNTgsIDU2MTYzLCA1NjE2NywgNTYxNzMsIAotICAgIDE1ODgsIDM2NzE5LCA1NjE3OCwgNTYxODcsIDU2MTkzLCA1NjE5OCwgOTI0OSwgOTI1NSwgNTYyMDQsIDU2MjE2LCA1NjIzMywgCi0gICAgNTYyNTAsIDU2MjY3LCA1NjI4NCwgNTYzMDEsIDU2MzE4LCA1NjMzNSwgNTYzNTIsIDU2MzY5LCA1NjM4NiwgNTY0MDMsIAotICAgIDU2NDIwLCA1NjQzNywgNTY0NTQsIDU2NDcxLCA1NjQ4OCwgNTY1MDUsIDU2NTIyLCA1NjUzOSwgNTY1NTYsIDU2NTczLCAKLSAgICA1NjU5MCwgNTY2MDcsIDU2NjI0LCA1NjY0MSwgNTY2NTgsIDU2Njc1LCA1NjY5MiwgNTY3MDksIDU2NzI2LCA1Njc0MywgCi0gICAgNTY3NjAsIDU2Nzc3LCA1Njc5NCwgNTY4MTEsIDU2ODI4LCA1Njg0NSwgNTY4NjIsIDU2ODc5LCA1Njg5NiwgNTY5MTMsIAotICAgIDU2OTMwLCA1Njk0NywgNTY5NjQsIDU2OTgxLCA1Njk5OCwgNTcwMTUsIDU3MDMyLCA1NzA0OSwgNTcwNjAsIDU3MDY1LCAKLSAgICAxNTkzLCA1NzA2OSwgNTcwNzUsIDU3MDgwLCA3NjkzLCAxNTk4LCA1NzA4NSwgNTcwOTQsIDI1NjY0LCA1NzA5OSwgNTcxMTAsIAotICAgIDU3MTIwLCA1NzEyNSwgNTcxMzIsIDU3MTM4LCA1NzE0MywgNTcxNDgsIDE0ODIwLCA1NzE1MiwgOTI2NiwgMTYwMywgOTI3MSwgCi0gICAgNTcxNTgsIDU3MTYzLCA1NzE2OSwgNTcxNzQsIDU3MTc5LCA1NzE4NCwgNTcxODksIDU3MTk0LCA1NzE5OSwgNTcyMDQsIAotICAgIDU3MjEwLCA1NzIxNiwgNTcyMjIsIDU3MjI3LCA1NzIzMSwgNTcyMzYsIDU3MjQxLCA1NzI0NSwgNTcyNTAsIDU3MjU1LCAKLSAgICA1NzI2MCwgNTcyNjQsIDU3MjY5LCA1NzI3NSwgNTcyODAsIDU3Mjg1LCA1NzI4OSwgNTcyOTQsIDU3Mjk5LCA1NzMwNSwgCi0gICAgNTczMTAsIDU3MzE1LCA1NzMyMSwgNTczMjcsIDU3MzMyLCA1NzMzNiwgNTczNDEsIDU3MzQ2LCA1NzM1MSwgNTczNTUsIAotICAgIDU3MzYwLCA1NzM2NSwgNTczNzAsIDU3Mzc2LCA1NzM4MiwgNTczODcsIDU3MzkxLCA1NzM5NSwgNTc0MDAsIDU3NDA1LCAKLSAgICA1NzQxMCwgMjcwMjQsIDU3NDE0LCA1NzQxOSwgNTc0MjQsIDU3NDMwLCA1NzQzNSwgNTc0NDAsIDU3NDQ0LCA1NzQ0OSwgCi0gICAgNTc0NTQsIDU3NDYwLCA1NzQ2NSwgNTc0NzAsIDU3NDc2LCA1NzQ4MiwgNTc0ODcsIDU3NDkxLCA1NzQ5NiwgNTc1MDEsIAotICAgIDU3NTA1LCA1NzUxMCwgNTc1MTUsIDU3NTIwLCA1NzUyNiwgNTc1MzIsIDU3NTM3LCA1NzU0MSwgNTc1NDYsIDU3NTUxLCAKLSAgICA1NzU1NSwgNTc1NjAsIDU3NTY1LCA1NzU3MCwgNTc1NzQsIDU3NTc3LCAyOTM5NSwgNTc1ODIsIDU3NTkwLCAxNDg4NiwgCi0gICAgMTQ5MTAsIDkzNjIsIDU3NTk2LCA1NzYwNiwgNTc2MjEsIDkzNjcsIDU3NjMyLCA1NzYzNywgNTc2NDgsIDU3NjYwLCAKLSAgICA1NzY3MiwgNTc2ODQsIDI2NDksIDU3Njk2LCA1NzcwMSwgNTc3MDUsIDU3NzExLCA1NzcxNywgNTc3MjIsIDE2MTUsIDEwMTAsIAotICAgIDU3NzMxLCA1NzczNiwgMzY3NTgsIDU3NzQwLCA1Nzc0NCwgNTc3NDksIDU3NzUzLCAxNDk3MSwgNTc3NTgsIDU3NzYxLCAKLSAgICA1Nzc2OSwgNTc3NzcsIDE2MTksIDkzOTIsIDkzOTgsIDE2MjQsIDU3Nzg1LCA1Nzc5MiwgNTc3OTcsIDU3ODA2LCA1NzgxNiwgCi0gICAgNTc4MjMsIDU3ODI4LCAxNjI5LCA1NzgzNSwgNTc4NDAsIDE1MDg2LCA1Nzg0NCwgNTc4NDksIDU3ODU2LCA1Nzg2MiwgCi0gICAgNTc4NjYsIDU3ODc3LCA1Nzg4NywgMTUxMDgsIDc2MTYsIDc2MjMsIDE2MzQsIDU3ODk0LCA1NzkwMCwgNTc5MDgsIDU3OTE1LCAKLSAgICA1NzkyMSwgNTc5MjgsIDU3OTQwLCA1Nzk0NiwgNTc5NTEsIDU3OTYzLCA1Nzk3NCwgNTc5ODMsIDU3OTkzLCAzNjY4LCAKLSAgICAyODY2MCwgMjg2NjksIDE1MTQ4LCAxNjM5LCAxNjQzLCA1ODAwMSwgNTgwMTIsIDU4MDE3LCAxNjQ2LCA1ODAyNSwgNTgwMzAsIAotICAgIDU4MDQyLCA1ODA0OCwgNTgwNTMsIDU4MDYxLCAxNjUxLCA1ODA2NiwgNTgwNzEsIDU4MDc5LCA1ODA4NywgNTgwOTQsIAotICAgIDU4MTAzLCA1ODExMSwgNTgxMjAsIDE2NTYsIDU4MTI0LCAxNjYxLCA1ODEyOSwgNTgxMzYsIDE1MjY4LCA1ODE0NCwgCi0gICAgNTgxNTAsIDU4MTU1LCA1ODE2MywgNTgxNzAsIDU4MTc4LCAyMDY1OCwgNTgxODMsIDk1MjcsIDU4MTkyLCA1ODE5OCwgCi0gICAgNTgyMDUsIDU4MjEyLCA1ODIxOCwgNTgyMjgsIDU4MjM0LCA1ODIzOSwgNTgyNDQsIDU4MjUyLCA5NTM2LCA5NTQxLCAKLSAgICA1ODI2MCwgNTgyNjYsIDU4Mjc0LCAzNzMzLCAzNjg0NiwgNTgyNzksIDU4Mjg1LCA1ODI5MCwgNTgyOTgsIDU4MzA1LCAKLSAgICAxMDM1NiwgNTgzMTAsIDU4MzE2LCAxNjcyLCA1ODMyMSwgNTgzMjQsIDEwNTgsIDU4MzMwLCA1ODMzNSwgNTgzNDAsIAotICAgIDU4MzQ2LCA1ODM1MSwgNTgzNTYsIDU4MzYxLCA1ODM2NiwgNTgzNzEsIDU4Mzc2LCAxNjgxLCA5LCA1ODM4MiwgNTgzODYsIAotICAgIDU4MzkxLCA1ODM5NSwgNTgzOTksIDU4NDAzLCAyOTY0MywgNTg0MDgsIDU4NDEzLCA1ODQxOCwgNTg0MjIsIDU4NDI1LCAKLSAgICA1ODQyOSwgNTg0MzMsIDU4NDM4LCA1ODQ0MiwgNTg0NDcsIDU4NDUxLCAzMjMxNSwgMzIzMjAsIDMyMzI1LCA1ODQ1NCwgCi0gICAgNTg0NjEsIDU4NDY3LCAzNjU4NSwgNTg0NzcsIDMyMzMxLCAyOTg5MSwgMjk2NTMsIDI5NjU5LCAzMjM0NywgMjk2NjUsIAotICAgIDU4NDgyLCA1ODQ4NywgMjk5MjQsIDU4NDkxLCA1ODQ5NCwgNTg0OTgsIDU4NTA1LCA1ODUwOCwgNTg1MTMsIDU4NTE3LCAKLSAgICA1ODUyMSwgNTg1MjQsIDU4NTM0LCA1ODU0NiwgNTg1NTMsIDMxMjgyLCA1ODU1NiwgMTM5MzYsIDgyMSwgNTg1NTksIAotICAgIDU4NTYzLCA1ODU2OCwgNTg1NzIsIDU4NTc1LCAxMTk0NCwgNTg1ODIsIDU4NTg5LCA1ODYwMiwgNTg2MTAsIDU4NjE5LCAKLSAgICA1ODYyNCwgNTg2MzQsIDU4NjQ3LCA1ODY1OSwgNTg2NjYsIDU4NjcxLCA1ODY4MCwgNTg2OTMsIDMzNzMyLCA1ODcxMSwgCi0gICAgNTg3MTYsIDU4NzIzLCA1ODcyOSwgNTg3MzQsIDU4NzQyLCA1ODc0OSwgMjUyMjQsIDYxMywgNTg3NTUsIDU4NzYxLCAKLSAgICA1ODc3MSwgNTg3NzcsIDU4NzgyLCAyOTY4MywgNDQ4MSwgMjk2OTcsIDU4Nzg2LCA1ODc5NiwgNTg4MDEsIDU4ODExLCAKLSAgICA1ODgyNiwgNTg4MzIsIDU4ODM4LCAyOTcwNywgNTg4NDMsIDI4ODU2LCA1ODg0NywgNTg4NTIsIDU4ODU3LCA1ODg2MSwgCi0gICAgNTg4NjYsIDE1MTUxLCA1ODg3MywgNTg4NzgsIDU4ODgyLCA0NTIyLCAyOTczMywgNTg4ODYsIDU4ODkyLCAzMjcsIDU4OTAyLCAKLSAgICA1ODkwOSwgNTg5MTYsIDU4OTIxLCA1ODkzMCwgNTYxNDMsIDU4OTM2LCA1ODk0NCwgNTg5NDgsIDU4OTUyLCA1ODk1NiwgCi0gICAgNTg5NjAsIDU4OTY1LCA1ODk2OSwgNTg5NzUsIDU4OTgzLCA1ODk4OCwgNTg5OTMsIDU4OTk3LCA1OTAwMiwgNTkwMDYsIAotICAgIDU5MDEwLCA1OTAxNiwgNTkwMjIsIDU5MDI3LCA1OTAzMSwgMjk4NTcsIDU5MDM2LCAyOTg2MywgMjk4NjksIDU5MDQxLCAKLSAgICA1OTA0NywgNTkwNTQsIDU5MDU5LCA1OTA2MywgMjg4NzMsIDE0ODEzLCA1OTA2NiwgNTkwNzAsIDU5MDc1LCA1OTA4MiwgCi0gICAgNTkwODgsIDU5MDkyLCA1OTA5NywgMzYyOTUsIDU5MTAzLCA1OTEwNywgNTkxMTEsIDU5MTE2LCA1OTEyMiwgNTkxMjgsIAotICAgIDU5MTQwLCA1OTE0OSwgNTkxNTksIDU5MTY1LCA1OTE3MiwgNTkxNzcsIDU5MTgyLCA1OTE4NiwgNTkxODksIDU5MTk1LCAKLSAgICA1OTIwMiwgNTkyMDcsIDU5MjEyLCA1OTIxOSwgNTkyMjYsIDU5MjMyLCA1OTIzNywgNTkyNDIsIDU5MjUwLCA1OTI1NSwgCi0gICAgMjM3NywgNTkyNTksIDU5MjY0LCA1OTI3MCwgNTkyNzUsIDU5MjgxLCA1OTI4NiwgNTkyOTEsIDU5Mjk2LCA1OTMwMiwgCi0gICAgMjk4OTAsIDU5MzA3LCA1OTMxMywgNTkzMTksIDU5MzI1LCAyOTk1NCwgNTkzMzAsIDU5MzM1LCA1OTM0MCwgMjk5NjUsIAotICAgIDU5MzQ1LCA1OTM1MCwgNTkzNTUsIDU5MzYxLCA1OTM2NywgMjk5NzAsIDU5MzcyLCA1OTM3NywgNTkzODIsIDMwMDI1LCAKLSAgICAzMDAzMSwgNTkzODcsIDU5MzkyLCAzMDAzNiwgNTkzOTcsIDI1ODkxLCAzMDA1OCwgMzAwNjIsIDU5NDAyLCA1OTM3OCwgCi0gICAgNTk0MDYsIDU5NDE0LCA1OTQyMCwgNTk0MjgsIDU5NDM1LCA1OTQ0MSwgNTk0NTEsIDU5NDU3LCA1OTQ2NCwgODk4NCwgCi0gICAgMzAwNzYsIDU5NDcwLCA1OTQ4MywgNTk0OTIsIDU5NDk4LCA1OTUwNywgNTk1MTMsIDIxNTc1LCA1OTUyMCwgNTk1MjcsIAotICAgIDU5NTM3LCAzMDAyNiwgNTk1NDAsIDU5NTQ3LCA1OTU1MiwgNTk1NTYsIDU5NTYwLCA1OTU2NSwgNDU5OCwgNTk1NjksIAotICAgIDU5NTc0LCA1OTU3OSwgMzI0MDksIDMyNDE0LCA1OTU4MywgMzI0MjgsIDU5NTg4LCAzMjQzMywgNTk1OTMsIDU5NTk5LCAKLSAgICAzMjQ0NSwgMzI0NTEsIDMyNDU3LCA1OTYwNCwgNTk2MTAsIDIwNjE5LCA1OTYyMSwgNTk2MjQsIDU5NjM2LCA1OTY0NCwgCi0gICAgMzAwOTQsIDU5NjQ4LCA1OTY1NywgNTk2NjcsIDU5Njc2LCAzMDA5OSwgNTk2ODEsIDU5Njg4LCA1OTY5NywgNTk3MDMsIAotICAgIDU5NzExLCA1OTcxOCwgNDU3MywgNDMxMCwgNTk3MjMsIDMwMDM3LCA1OTcyOSwgNTk3MzIsIDU5NzM4LCA1OTc0NSwgCi0gICAgNTk3NTAsIDU5NzU1LCAyMTUwMiwgNTk3NTksIDU5NzY1LCA1OTc3MSwgNTk3NzYsIDU5NzgxLCA1OTc4NSwgNTk3OTEsIAotICAgIDU5Nzk3LCAzMTE5NiwgODI2LCAzMzQwNiwgMzQzMDQsIDM0MzEwLCA1OTgwMiwgNTk4MDYsIDU5ODEwLCA1OTgxMywgCi0gICAgNTk4MjYsIDU5ODMyLCA1OTgzNiwgNTk4MzksIDU5ODQ0LCAzMTQ5NSwgNTk4NDgsIDI4ODc4LCAxOTQ0NiwgNTk4NTQsIAotICAgIDQ1MDIsIDQ1MTAsIDc0NzIsIDU5ODU3LCA1OTg2MiwgNTk4NjcsIDU5ODcyLCA1OTg3NywgNTk4ODIsIDU5ODg3LCA1OTg5MiwgCi0gICAgNTk4OTcsIDU5OTAyLCA1OTkwOCwgNTk5MTMsIDU5OTE4LCA1OTkyNCwgNTk5MjksIDU5OTM0LCA1OTkzOSwgNTk5NDQsIAotICAgIDU5OTQ5LCA1OTk1NCwgNTk5NjAsIDU5OTY1LCA1OTk3MSwgNTk5NzYsIDU5OTgxLCA1OTk4NiwgNTk5OTEsIDU5OTk2LCAKLSAgICA2MDAwMSwgNjAwMDYsIDYwMDExLCA2MDAxNiwgNjAwMjEsIDYwMDI3LCA2MDAzMiwgNjAwMzcsIDYwMDQyLCA2MDA0NywgCi0gICAgNjAwNTIsIDYwMDU3LCA2MDA2MywgNjAwNjgsIDYwMDczLCA2MDA3OCwgNjAwODMsIDYwMDg4LCA2MDA5MywgNjAwOTgsIAotICAgIDYwMTAzLCA2MDEwOCwgNjAxMTQsIDYwMTE5LCA2MDEyNCwgNjAxMjksIDYwMTM0LCA2MDE0MCwgNjAxNDYsIDYwMTUxLCAKLSAgICA2MDE1NywgNjAxNjIsIDYwMTY3LCA2MDE3MiwgNjAxNzcsIDYwMTgyLCAxNDc2LCAyNDAsIDYwMTg3LCA2MDE5MSwgNjAxOTUsIAotICAgIDYwMTk5LCAyMzE1NywgNjAyMDMsIDYwMjA3LCA2MDIxMiwgNjAyMTYsIDYwMjIxLCA2MDIyNSwgNjAyMjksIDYwMjMzLCAKLSAgICA2MDIzOCwgNjAyNDIsIDExNjgxLCA2MDI0NywgNjAyNTEsIDYwMjU4LCAxMzQ0NCwgNjAyNjcsIDYwMjc2LCA2MDI4MCwgCi0gICAgNjAyODUsIDYwMjkwLCA2MDI5NCwgMjI5NjAsIDI5NTcsIDYwMjk4LCA2MDMwNCwgNjAzMTMsIDYwMzIxLCA2MDMyNywgCi0gICAgNjAzMzksIDYwMzUxLCA2MDM1NSwgNjAzNjAsIDYwMzY0LCA2MDM3MCwgNjAzNzYsIDYwMzgxLCA2MDM5MSwgNjA0MDEsIAotICAgIDYwNDA3LCA2MDQxMiwgNjA0MTYsIDYwNDIxLCA2MDQyNywgNjA0MzYsIDYwNDQ1LCA2MDQ1MywgMTM3OTgsIDYwNDU3LCAKLSAgICA2MDQ2NiwgNjA0NzQsIDYwNDg2LCA2MDQ5NywgNjA1MDgsIDYwNTE3LCA2MDUyMSwgNjA1MzAsIDYwNTQwLCA2MDU0NiwgCi0gICAgNjA1NTEsIDYwNTU3LCA2MDU2MiwgOTgsIDI4NzcyLCA2MDU3MywgMjQyMjgsIDI0MjM4LCA2MDU3OSwgNjA1ODYsIDYwNTkyLCAKLSAgICA2MDU5NiwgNjA2MDYsIDYwNjE3LCA2MDYyNSwgNjA2MzQsIDYwNjM5LCA2MDY0NCwgNjA2NDgsIDE1NTA0LCA2MDY1NiwgCi0gICAgNjA2NjAsIDYwNjY2LCA2MDY3NiwgNjA2ODMsIDYwNjg5LCAzMjUwOCwgMTE2MiwgNjA2OTUsIDYwNjk4LCA2MDcwMiwgCi0gICAgNjA3MTIsIDYwNzE4LCA2MDcyNSwgMTE2MTgsIDYwNzMyLCA2MDczOCwgNjA3NDcsIDYwNzU2LCA2MDc2MiwgNjA3NjgsIAotICAgIDYwNzc0LCA2MDc3OSwgNjA3ODYsIDYwNzkzLCA2MDc5OSwgNjA4MTIsIDYwODIxLCA2MDgzMCwgNjA4MzUsIDYwODM5LCAKLSAgICA2MDg0NSwgNjA4NTIsIDYwODU5LCA2MDg2NiwgNjA4NzMsIDYwODgwLCA2MDg4NSwgNjA4ODksIDYwODkzLCA2MDg5NiwgCi0gICAgNjA5MDYsIDYwOTEwLCA2MDkyMiwgNjA5MzEsIDYwOTM1LCA2MDk0MCwgNjA5NDQsIDYwOTUwLCA2MDk1NSwgNjA5NjIsIAotICAgIDYwOTcxLCA2MDk3OSwgNjA5ODcsIDYwOTkyLCA2MDk5NiwgNjEwMDEsIDYxMDA2LCA2MTAxNiwgNjEwMjQsIDYxMDI5LCAKLSAgICA2MTAzMywgNjEwMzcsIDYxMDQzLCA2MTA1NSwgNjEwNjMsIDYxMDczLCA2MTA4MCwgNjEwODYsIDYxMDkxLCA2MTA5NSwgCi0gICAgNjEwOTksIDYxMTAzLCA2MTExMiwgNjExMjEsIDYxMTMwLCA2MTEzNiwgNjExNDIsIDYxMTQ4LCA2MTE1MywgNjExNjAsIAotICAgIDYxMTY2LCA2MTE3NCwgNjExODEsIDEwNzcyLCA2MTE4NywgNjExOTMsIDYxMTk3LCAxMjUyMywgNjEyMDEsIDYxMjA2LCAKLSAgICA2MTIxNiwgNjEyMjUsIDYxMjMxLCA2MTIzNywgNjEyNDUsIDYxMjUyLCA2MTI1NiwgNjEyNjAsIDYxMjY2LCA2MTI3NCwgCi0gICAgNjEyODEsIDYxMjg3LCA2MTI5OCwgNjEzMDIsIDYxMzA2LCA2MTMxMCwgNjEzMTMsIDYxMzE5LCA2MTMyNCwgNjEzMjgsIAotICAgIDYxMzMyLCA2MTM0MSwgNjEzNDksIDYxMzU2LCA2MTM2MiwgNjEzNjksIDIyMDg3LCAzNjMzNywgNjEzNzQsIDYxMzgyLCAKLSAgICA2MTM4NiwgNjEzODksIDYxMzk3LCA2MTQwNCwgNjE0MTAsIDYxNDE5LCA2MTQyNywgNjE0MzMsIDYxNDM4LCA2MTQ0MiwgCi0gICAgNjE0NDcsIDYxNDUxLCA2MTQ1NSwgNjE0NjAsIDYxNDY5LCA2MTQ3MywgNjE0ODAsIDYxNDg3LCA2MTQ5MywgNjE1MDEsIAotICAgIDYxNTA3LCA2MTUxOCwgNjE1MjYsIDYxNTMyLCAyMDc1MywgNjE1NDEsIDYxNTQ4LCA2MTU1NSwgNjE1NjIsIDYxNTY5LCAKLSAgICA2MTU3NiwgMzkyODgsIDExNDU2LCA2MTU4MywgNjE1OTAsIDYxNTk1LCAzMjU0NCwgMzc0ODQsIDYxNjAxLCA2MTYwNiwgCi0gICAgNjE2MTEsIDYxNjE3LCA2MTYyMywgNjE2MjksIDYxNjM0LCA2MTYzOSwgNjE2NDQsIDYxNjQ5LCA2MTY1NSwgNjE2NjAsIAotICAgIDYxNjY2LCA2MTY3MSwgNjE2NzcsIDYxNjgyLCA2MTY4NywgNjE2OTIsIDYxNjk3LCA2MTcwMiwgNjE3MDcsIDYxNzEyLCAKLSAgICA2MTcxOCwgNjE3MjMsIDYxNzI5LCA2MTczNCwgNjE3MzksIDYxNzQ0LCA2MTc0OSwgNjE3NTQsIDYxNzU5LCA2MTc2NSwgCi0gICAgNjE3NzAsIDYxNzc1LCA2MTc4MCwgNjE3ODUsIDYxNzkwLCA2MTc5NSwgNjE4MDAsIDYxODA1LCA2MTgxMCwgNjE4MTUsIAotICAgIDYxODIxLCA2MTgyNiwgNjE4MzEsIDYxODM2LCA2MTg0MSwgNjE4NDYsIDYxODUxLCA2MTg1NiwgNjE4NjEsIDYxODY3LCAKLSAgICA2MTg3MiwgNjE4NzcsIDYxODgyLCA2MTg4NywgNjE4OTIsIDYxODk3LCA2MTkwMiwgNjE5MDcsIDYxOTEyLCA2MTkxNywgCi0gICAgNjE5MjIsIDYxOTI3LCA2MTkzMywgMTc5NywgMjI0LCAzNDk5MywgNjE5MzgsIDYxOTQxLCA2MTk0NiwgNjE5NTAsIDYxOTUzLCAKLSAgICA2MTk1OCwgNjA5ODMsIDYxOTY5LCA2MTk3OSwgNjE5ODYsIDYyMDAyLCA2MjAxMSwgNjIwMjEsIDYyMDMxLCA2MjAzOSwgCi0gICAgNjIwNDcsIDYyMDUxLCA2MjA1NCwgNjIwNjEsIDYyMDY3LCA2MjA3OCwgNjIwOTAsIDYyMTAxLCA2MjExMCwgNjIxMTcsIAotICAgIDEyODYsIDIxMzkxLCA2MjEyNywgMjU0NCwgNjIxMzEsIDYyMTQwLCAxMTI3LCAxNTQ3NywgMzU2MjIsIDYyMTQ4LCA2MjE1NiwgCi0gICAgNjIxNzAsIDYyMTgzLCA2MjE4NywgNjIxOTIsIDYyMTk3LCA2MjIwMiwgNjIyMDgsIDYyMjE0LCA2MjIxOSwgNjk1NywgCi0gICAgNjIyMjQsIDYyMjMyLCA5MzkzLCA2MjIzNywgNjIyNDMsIDE2ODQsIDk0MDUsIDcyMywgNjIyNTIsIDYyMjYxLCA2MjI3MSwgCi0gICAgMjQ5OTIsIDYyMjgwLCA2MjI4NiwgMTUwNjMsIDYyMjkyLCA2MjI5NiwgMzg4MSwgOTczNiwgNjIzMDIsIDU4MDA3LCAKLSAgICA2MjMwOSwgMzkwNSwgMTg0LCAxMjQ0NCwgNjIzMTUsIDYyMzI3LCA2MjMzMSwgNjIzMzcsIDI1Njg0LCA2MjM0MSwgOTcyNCwgCi0gICAgMjY4NCwgNCwgNjIzNDYsIDYyMzU2LCA2MjM2MiwgNjIzNzMsIDYyMzgwLCA2MjM4NiwgNjIzOTIsIDYyNDAwLCA2MjQwNywgCi0gICAgNjI0MTMsIDYyNDIzLCA2MjQzMywgNjI0NDMsIDEyOTgsIDYyNDUyLCA2MjQ1OCwgMjcwNywgMjcxMywgNjk1NCwgMjIxOCwgCi0gICAgNjI0NjIsIDYyNDY2LCA2MjQ3NSwgNjI0ODMsIDYyNDk0LCA2MjUwMiwgNjI1MTAsIDYyNTE2LCA2MjUyMSwgNjI1MzIsIAotICAgIDYyNTQzLCA2MjU1MSwgNjI1NTcsIDgwNjEsIDYyNTYyLCA2MjU3MCwgNjI1NzQsIDYyNTc4LCA2MjU5MCwgMjYwNjAsIAotICAgIDYyNTk3LCA2MjYwNywgNjI2MTMsIDYyNjE5LCA4MTYzLCA2MjYyOSwgNjI2NDAsIDYyNjUwLCA2MjY1OSwgNjI2NjMsIAotICAgIDYyNjcwLCAxMTI5LCAyNTM3LCA2MjY4MCwgNjI2ODUsIDYyNjkzLCA2MjcwMSwgNjI3MTIsIDYyNzE5LCA2MjczMywgCi0gICAgMTIzNjksIDM3OSwgNjI3NDMsIDYyNzQ3LCA2Mjc1NiwgNjI3NjQsIDYyNzcwLCA2Mjc4NCwgNjI3OTEsIDYyNzk3LCAKLSAgICA2MjgwNiwgNjI4MTMsIDYyODIzLCA2MjgzMSwgMzc0MCwgMTg5LCA2MjgzOSwgNjI4NTAsIDYyODU0LCA2Mjg2NiwgMjU4ODIsIAotICAgIDE1NiwgNjI4NzIsIDYyODc3LCA2Mjg4MSwgNjI4ODgsIDYyODk0LCA2MjkwMiwgNjI5MDksIDcyMjYsIDYyOTE2LCA2MjkyNSwgCi0gICAgNjI5MzMsIDM4MDYsIDYyOTQ2LCAxNTEwOSwgNjI5NTAsIDI3NTIsIDQyOCwgNjI5NTUsIDYyOTY4LCA2Mjk3MywgMTc5NiwgCi0gICAgNjQ3LCA2Mjk3NywgMzgxMiwgNjI5ODUsIDYyOTkxLCA5NjMsIDYzMDAxLCA2MzAxMCwgNjMwMTUsIDEzMTc4LCAxMzE4NSwgCi0gICAgNDI2MjAsIDYzMDE5LCAzNzUwLCAxMTM1MCwgNjMwMjcsIDYzMDM0LCAyMTYxOCwgNjMwMzgsIDYzMDQ1LCA2MzA1MSwgCi0gICAgNjMwNTYsIDYzMDYxLCAxMzE5OCwgMzU0LCA2MzA2NiwgNjMwNzgsIDYzMDg0LCA2MzA5MiwgMjc2NCwgMTcxNiwgNjMxMDAsIAotICAgIDYzMTAyLCA2MzEwNywgNjMxMTIsIDYzMTE3LCA2MzEyMywgNjMxMjgsIDYzMTMzLCA2MzEzOCwgNjMxNDMsIDYzMTQ4LCAKLSAgICA2MzE1MywgNjMxNTksIDYzMTY0LCA2MzE2OSwgNjMxNzQsIDYzMTc5LCA2MzE4NCwgNjMxODksIDYzMTk0LCA2MzE5OSwgCi0gICAgNjMyMDUsIDYzMjEwLCA2MzIxNSwgNjMyMjAsIDYzMjI2LCA2MzIzMSwgNjMyMzcsIDYzMjQyLCA2MzI0NywgNjMyNTIsIAotICAgIDYzMjU3LCA2MzI2MiwgNjMyNjcsIDYzMjcyLCA2MzI3OCwgNjMyODMsIDYzMjg5LCA2MzI5NCwgNjMyOTksIDYzMzA0LCAKLSAgICA2MzMwOSwgNjMzMTQsIDYzMzE5LCA2MzMyNCwgNjMzMjksIDYzMzM1LCA2MzM0MCwgNjMzNDUsIDYzMzQ5LCA2MzM1MywgCi0gICAgNjMzNTgsIDYzMzYyLCA2MzM2NywgNjMzNzIsIDYzMzc4LCA2MzM4MywgNjMzODcsIDYzMzkyLCA2MzM5NiwgNjMzOTksIAotICAgIDYzNDAxLCA2MzQwNSwgNjM0MDgsIDYzNDEzLCA2MzQxNywgNjM0MjEsIDYzNDI1LCA2MzQyOSwgNjM0MzgsIDYzNDQyLCAKLSAgICAzMDI4OCwgNjM0NDUsIDMwMjkzLCA2MzQ1MiwgNjM0NTcsIDMwMjk4LCA2MzQ2NiwgNjM0NzUsIDMwMzA0LCA2MzQ4MCwgCi0gICAgMzAzMDksIDYzNDg5LCA2MzQ5NCwgOTkxNCwgNjM0OTgsIDYzNTAzLCA2MzUwOCwgMzAzMTQsIDYzNTEyLCAzNzY1MCwgCi0gICAgNjM1MTYsIDYzNTE5LCA2MzUyMywgNjYzOCwgNjM1MjksIDYzNTM0LCA2MzUzOCwgMzYzMywgMzAzMTksIDYzNTQxLCAKLSAgICA2MzU0NSwgNjM1NDgsIDYzNTUzLCA2MzU1NywgNjM1NjMsIDYzNTcxLCA2MzU4NCwgNjM1OTMsIDYzNTk5LCA2MzYwNCwgCi0gICAgNjM2MTAsIDYzNjE0LCA2MzYyMCwgNjM2MjgsIDYzNjMzLCA2MzY0MCwgNjM2NDYsIDYzNjU0LCA2MzY2MywgNjM2NzEsIAotICAgIDMwMzIyLCA2MzY3OCwgNjM2ODgsIDYzNjk3LCA2MzcxMCwgNjM3MTUsIDYzNzIwLCA2MzcyOSwgNjM3MzUsIDYzNzQyLCAKLSAgICA2Mzc1MywgNjM3NjUsIDYzNzcyLCA2Mzc4MSwgNjM3OTAsIDYzNzk5LCA2MzgwNiwgNjM4MTIsIDYzODE5LCA2MzgyNywgCi0gICAgNjM4MzQsIDYzODQyLCA2Mzg1MSwgNjM4NTksIDYzODY2LCA2Mzg3NCwgNjM4ODMsIDYzODkxLCA2MzkwMCwgNjM5MTAsIAotICAgIDYzOTE5LCA2MzkyNywgNjM5MzQsIDYzOTQyLCA2Mzk1MSwgNjM5NTksIDYzOTY4LCA2Mzk3OCwgNjM5ODcsIDYzOTk1LCAKLSAgICA2NDAwNCwgNjQwMTQsIDY0MDIzLCA2NDAzMywgNjQwNDQsIDY0MDU0LCA2NDA2MywgNjQwNzEsIDY0MDc4LCA2NDA4NiwgCi0gICAgNjQwOTUsIDY0MTAzLCA2NDExMiwgNjQxMjIsIDY0MTMxLCA2NDEzOSwgNjQxNDgsIDY0MTU4LCA2NDE2NywgNjQxNzcsIAotICAgIDY0MTg4LCA2NDE5OCwgNjQyMDcsIDY0MjE1LCA2NDIyNCwgNjQyMzQsIDY0MjQzLCA2NDI1MywgNjQyNjQsIDY0Mjc0LCAKLSAgICA2NDI4MywgNjQyOTMsIDY0MzA0LCA2NDMxNCwgNjQzMjUsIDY0MzM3LCA2NDM0OCwgNjQzNTgsIDY0MzY3LCA2NDM3NSwgCi0gICAgNjQzODIsIDY0MzkwLCA2NDM5OSwgNjQ0MDcsIDY0NDE2LCA2NDQyNiwgNjQ0MzUsIDY0NDQzLCA2NDQ1MiwgNjQ0NjIsIAotICAgIDY0NDcxLCA2NDQ4MSwgNjQ0OTIsIDY0NTAyLCA2NDUxMSwgNjQ1MTksIDY0NTI4LCA2NDUzOCwgNjQ1NDcsIDY0NTU3LCAKLSAgICA2NDU2OCwgNjQ1NzgsIDY0NTg3LCA2NDU5NywgNjQ2MDgsIDY0NjE4LCA2NDYyOSwgNjQ2NDEsIDY0NjUyLCA2NDY2MiwgCi0gICAgNjQ2NzEsIDY0Njc5LCA2NDY4OCwgNjQ2OTgsIDY0NzA3LCA2NDcxNywgNjQ3MjgsIDY0NzM4LCA2NDc0NywgNjQ3NTcsIAotICAgIDY0NzY4LCA2NDc3OCwgNjQ3ODksIDY0ODAxLCA2NDgxMiwgNjQ4MjIsIDY0ODMxLCA2NDg0MSwgNjQ4NTIsIDY0ODYyLCAKLSAgICA2NDg3MywgNjQ4ODUsIDY0ODk2LCA2NDkwNiwgNjQ5MTcsIDY0OTI5LCA2NDk0MCwgNjQ5NTIsIDY0OTY1LCA2NDk3NywgCi0gICAgNjQ5ODgsIDY0OTk4LCA2NTAwNywgNjUwMTUsIDY1MDIyLCA2NTAzMCwgNjUwMzksIDY1MDQ3LCA2NTA1NiwgNjUwNjYsIAotICAgIDY1MDc1LCA2NTA4MywgNjUwOTIsIDY1MTAyLCA2NTExMSwgNjUxMjEsIDY1MTMyLCA2NTE0MiwgNjUxNTEsIDY1MTU5LCAKLSAgICA2NTE2OCwgNjUxNzgsIDY1MTg3LCA2NTE5NywgNjUyMDgsIDY1MjE4LCA2NTIyNywgNjUyMzcsIDY1MjQ4LCA2NTI1OCwgCi0gICAgNjUyNjksIDY1MjgxLCA2NTI5MiwgNjUzMDIsIDY1MzExLCA2NTMxOSwgNjUzMjgsIDY1MzM4LCA2NTM0NywgNjUzNTcsIAotICAgIDY1MzY4LCA2NTM3OCwgNjUzODcsIDY1Mzk3LCA2NTQwOCwgNjU0MTgsIDY1NDI5LCA2NTQ0MSwgNjU0NTIsIDY1NDYyLCAKLSAgICA2NTQ3MSwgNjU0ODEsIDY1NDkyLCA2NTUwMiwgNjU1MTMsIDY1NTI1LCA2NTUzNiwgNjU1NDYsIDY1NTU3LCA2NTU2OSwgCi0gICAgNjU1ODAsIDY1NTkyLCA2NTYwNSwgNjU2MTcsIDY1NjI4LCA2NTYzOCwgNjU2NDcsIDY1NjU1LCA2NTY2NCwgNjU2NzQsIAotICAgIDY1NjgzLCA2NTY5MywgNjU3MDQsIDY1NzE0LCA2NTcyMywgNjU3MzMsIDY1NzQ0LCA2NTc1NCwgNjU3NjUsIDY1Nzc3LCAKLSAgICA2NTc4OCwgNjU3OTgsIDY1ODA3LCA2NTgxNywgNjU4MjgsIDY1ODM4LCA2NTg0OSwgNjU4NjEsIDY1ODcyLCA2NTg4MiwgCi0gICAgNjU4OTMsIDY1OTA1LCA2NTkxNiwgNjU5MjgsIDY1OTQxLCA2NTk1MywgNjU5NjQsIDY1OTc0LCA2NTk4MywgNjU5OTMsIAotICAgIDY2MDA0LCA2NjAxNCwgNjYwMjUsIDY2MDM3LCA2NjA0OCwgNjYwNTgsIDY2MDY5LCA2NjA4MSwgNjYwOTIsIDY2MTA0LCAKLSAgICA2NjExNywgNjYxMjksIDY2MTQwLCA2NjE1MCwgNjYxNjEsIDY2MTczLCA2NjE4NCwgNjYxOTYsIDY2MjA5LCA2NjIyMSwgCi0gICAgNjYyMzIsIDY2MjQ0LCA2NjI1NywgNjYyNjksIDY2MjgyLCA2NjI5NiwgNjYzMDksIDY2MzIxLCA2NjMzMiwgNjYzNDIsIAotICAgIDY2MzUxLCA2NjM1OSwgNjYzNjYsIDY2MzcxLCA2NDg5LCA2NjM3OCwgMzAzMzIsIDY2MzgzLCA2NjM4OCwgMzAzMzcsIAotICAgIDY2Mzk0LCAxOTEwMCwgMzAzNDIsIDY2Mzk5LCA2NjQwNSwgNjY0MTMsIDY2NDE5LCA2NjQyNSwgNjY0MzIsIDY2NDM5LCAKLSAgICA2NjQ0NCwgNjY0NDgsIDY2NDUxLCA2NjQ1NSwgNjY0NjQsIDY2NDcwLCA2NjQ4MiwgNjY0OTMsIDY2NDk3LCAzMDE5LCAKLSAgICA2NDY0LCA2NjUwMiwgNjY1MDUsIDY2NTA3LCA2NjUxMSwgNjY1MTUsIDY2NTE5LCAyMzkyNywgNjY1MjQsIDY2NTI4LCAKLSAgICA2NjUzMSwgNjY1MzYsIDY2NTQwLCA2NjU0NywgNjY1NTMsIDY2NTU3LCA2NjU2MSwgNjY1NjQsIDMwMzU5LCA2NjU2OSwgCi0gICAgNjY1NzYsIDY2NTg1LCA2NjU5MywgNjY2MDQsIDY2NjEyLCA2NjYyMCwgNjY2MjcsIDY2NjM0LCA2NjY0MCwgNjY2NTEsIAotICAgIDMwMzY0LCA2NjY1NiwgNjY2NjcsIDY2Njc5LCA2NjY4NywgNjY2OTgsIDY2NzA3LCA2NjcxOCwgNjY3MjMsIDY2NzMxLCAKLSAgICAyNTEwLCA2NjczNiwgMzIwMDIsIDY2NzQ5LCA2Njc1MywgNjY3NjUsIDY2NzczLCA2Njc3OCwgNjY3ODYsIDE1NjY0LCAKLSAgICA2Njc5NywgNjY4MDMsIDY2ODEwLCA2NjgxOCwgNjY4MjQsIDMwMzc0LCA2NjgyOSwgMzgzMSwgNTU2MDUsIDY2ODM2LCAKLSAgICA2NjgzOSwgNjY4NDcsIDY2ODYwLCA2Njg3MywgNjY4ODYsIDY2ODk5LCA2NjkwNiwgNjY5MTcsIDY2OTI2LCAzOTEwNSwgCi0gICAgMzkxMTAsIDY2OTMxLCA2NjkzNSwgNjY5NDMsIDY2OTUwLCA2Njk1OSwgNjY5NjcsIDY2OTczLCA2Njk4MiwgNjY5OTAsIAotICAgIDY2OTk4LCA2NzAwMiwgNjcwMTEsIDY3MDIwLCA2NzAzMCwgNjcwNDMsIDY3MDU2LCA2NzA2NiwgMzAzNzksIDY3MDcyLCAKLSAgICA2NzA3OSwgNjcwODUsIDMwMzg1LCA2NzA5MCwgNjcwOTMsIDY3MDk3LCA2NzEwNSwgNjcxMTQsIDM4ODQzLCA2NzEyMiwgCi0gICAgNjcxMzEsIDY3MTM5LCA2NzE0NiwgNjcxNTQsIDY3MTY0LCA2NzE3MywgNjcxODIsIDY3MTkxLCA2NzE5OSwgNjcyMTAsIAotICAgIDY3MjIwLCA3NzMzLCAxOTcxNSwgNjcyMjksIDY3MjM0LCA2NzIzOSwgNjcyNDMsIDY3MjQ3LCA2NzI1MiwgNjcyNTgsIAotICAgIDY3MjYzLCA2NzI2OCwgNjcyNzQsIDY3Mjc5LCA2NzI4NCwgMTk2ODAsIDY3Mjg5LCA2NzI5NiwgNjczMDQsIDY3MzEyLCAKLSAgICA2NzMxNywgNjczMjQsIDY3MzMxLCA2NzMzNSwgNjczMzksIDY3MzQ3LCA2NzM1NSwgMzA0MDIsIDY3MzYxLCA2NzM2NywgCi0gICAgNjczNzksIDY3Mzg1LCA2NzM4OSwgNjczOTYsIDY3NDAxLCA2NzQxMiwgNjc0MjIsIDY3NDMyLCA2NzQ0NCwgNjc0NTAsIAotICAgIDY3NDYwLCA2NzQ3MCwgMzA0MjksIDY3NDc5LCA2NzQ4OCwgNjc0OTQsIDY3NTA2LCA2NzUxNywgNjc1MjQsIDY3NTI5LCAKLSAgICA2NzUzMywgNjc1NDEsIDY3NTQ3LCA2NzU1MiwgNjc1NTcsIDY3NTY0LCA2NzU3MiwgNjc1ODQsIDY3NTk0LCA2NzYwMywgCi0gICAgNjc2MTIsIDY3NjE5LCAzMTg2NiwgMjE5MDYsIDY3NjI1LCA2NzYzMCwgNjc2MzQsIDY3NjM4LCA2NzY0MywgNjc2NDksIAotICAgIDY3NjYwLCA2NzY3MywgNjc2NzgsIDY3Njg1LCAzMDQzNCwgNjc2OTAsIDY3NzAyLCA2NzcxMSwgNjc3MjEsIDY3NzMyLCAKLSAgICA2Nzc0NSwgNjc3NTIsIDY3NzYxLCA2Nzc3MCwgNjc3NzgsIDY3NzgzLCA2Nzc4OSwgMTQ2NSwgNjc3OTQsIDY3Nzk5LCAKLSAgICA2NzgwNCwgNjc4MDksIDY3ODE1LCA2NzgyMCwgNjc4MjUsIDY3ODMxLCA2NzgzNywgNjc4NDIsIDY3ODQ2LCA2Nzg1MSwgCi0gICAgNjc4NTYsIDY3ODYxLCA1NjExMSwgNjc4NjYsIDY3ODcxLCA2Nzg3NiwgNjc4ODEsIDY3ODg3LCA2Nzg5MywgNjc4OTgsIAotICAgIDY3OTAyLCA2NzkwNywgNjc5MTIsIDY3OTE3LCA2NzkyMywgNjc5MjgsIDY3OTM0LCA2NzkzOSwgNjc5NDQsIDY3OTQ5LCAKLSAgICA2Nzk1NCwgNjc5NTgsIDY3OTY0LCA2Nzk2OSwgNjc5NzgsIDY3OTgzLCA2Nzk4OCwgNjc5OTMsIDY3OTk4LCA2ODAwMiwgCi0gICAgNjgwMDksIDY4MDE1LCAxNTMyNiwgMTUzMzMsIDQyODc1LCA2ODAyMCwgNjc5NzAsIDY4MDIyLCA2ODAzMiwgMzA0NDMsIAotICAgIDY4MDM1LCA2ODA0NCwgNjgwNTAsIDQ2MTcsIDMwNDQ4LCA2ODA1NCwgNjgwNjAsIDY4MDY2LCA2ODA3MSwgNjgwNzUsIAotICAgIDY4MDgyLCA2ODA4NywgNjgwOTcsIDY4MTA2LCA2ODExMCwgNjgxMTYsIDY4MTIyLCA2ODEyOCwgNjgxMzIsIDY4MTQwLCAKLSAgICA2ODE0NywgNjgxNTUsIDY4MTYzLCAzMDQ1MywgNjgxNzAsIDY4MTczLCA2ODE4MCwgNjgxODYsIDY4MTkxLCA2ODE5NSwgCi0gICAgNjgyMDEsIDY4MjA4LCA2ODIxMywgNjgyMTcsIDY4MjI2LCA2ODIzNCwgNjgyNDAsIDY4MjQ1LCAzMDQ1OCwgNjgyNTIsIAotICAgIDY4MjU5LCA2ODI2NSwgNjgyNzAsIDY4Mjc2LCA2ODI4MywgNjgyODksIDE5NDUzLCAyNTQwOCwgNjgyOTUsIDY4MzAwLCAKLSAgICA2ODMwNiwgNjgzMTgsIDY4MDAzLCA2ODAxMCwgNjgzMjgsIDY4MzMzLCA2ODM0MCwgNjgzNDcsIDY4MzUzLCA2ODM2NCwgCi0gICAgNjgzNjksIDc1MDIsIDY4Mzc3LCA2ODM4MCwgNjgzODYsIDY4MzkwLCA2ODM5NCwgNjgzOTcsIDY4NDAzLCAzMDIwNywgCi0gICAgNDY1NiwgOTEzLCAxMTczMSwgNjg0MTAsIDY4NDE2LCA2ODQyMiwgNjg0MjgsIDY4NDM0LCA2ODQ0MCwgNjg0NDYsIDY4NDUyLCAKLSAgICA2ODQ1OCwgNjg0NjMsIDY4NDY4LCA2ODQ3MywgNjg0NzgsIDY4NDgzLCA2ODQ4OCwgNjg0OTMsIDY4NDk4LCA2ODUwMywgCi0gICAgNjg1MDgsIDY4NTEzLCA2ODUxOCwgNjg1MjMsIDY4NTI5LCA2ODUzNCwgNjg1MzksIDY4NTQ1LCA2ODU1MCwgNjg1NTUsIAotICAgIDY4NTYxLCA2ODU2NywgNjg1NzMsIDY4NTc5LCA2ODU4NSwgNjg1OTEsIDY4NTk3LCA2ODYwMywgNjg2MDksIDY4NjE0LCAKLSAgICA2ODYxOSwgNjg2MjUsIDY4NjMwLCA2ODYzNSwgNjg2NDEsIDY4NjQ2LCA2ODY1MSwgNjg2NTYsIDY4NjYxLCA2ODY2NiwgCi0gICAgNjg2NzEsIDY4Njc2LCA2ODY4MSwgNjg2ODYsIDY4NjkxLCA2ODY5NiwgNjg3MDEsIDY4NzA3LCA2ODcxMiwgNjg3MTcsIAotICAgIDY4NzIyLCA2ODcyOCwgNjg3MzMsIDY4NzM4LCA2ODc0MywgNjg3NDgsIDY4NzU0LCA2ODc1OSwgNjg3NjQsIDY4NzY5LCAKLSAgICA2ODc3NCwgNjg3NzksIDY4Nzg0LCA2ODc4OSwgNjg3OTQsIDY4Nzk5LCA2ODgwNCwgNjg4MDksIDY4ODE0LCA2ODgxOSwgCi0gICAgNjg4MjQsIDY4ODI5LCA2ODgzNCwgNjg4MzksIDY4ODQ0LCA2ODg0OSwgNjg4NTUsIDY4ODYwLCA2ODg2NSwgNjg4NzAsIAotICAgIDY4ODc1LCA2ODg4MCwgNjg4ODUsIDY4ODkwLCAxODI3LCAxNDMsIDY4ODk1LCA2ODg5OSwgNjg5MDMsIDY4OTA4LCA2ODkxNiwgCi0gICAgNjg5MjAsIDY4OTI3LCA2ODkzNSwgNjg5MzksIDY4OTUyLCA2ODk2MCwgNjg5NjQsIDY4OTY3LCA2ODk3MiwgNjg5NzYsIAotICAgIDY4OTgxLCA2ODk4NSwgNjg5OTMsIDY4OTk3LCAxOTEwOCwgNjkwMDIsIDU4MjcwLCA2OTAwNiwgNjkwMDksIDY5MDE3LCAKLSAgICA2OTAyNSwgNjkwMzMsIDY5MDM4LCA2OTA0NSwgNjkwNTEsIDY5MDU3LCA2OTA2MiwgNjkwNjcsIDY5MDc1LCA2MjE3NSwgCi0gICAgNjkwODIsIDY5MDg3LCA2OTA5MiwgNjkwOTYsIDk5ODEsIDY5MTAwLCA2OTEwNSwgNjkxMTAsIDY5MTE0LCA2OTExNywgCi0gICAgNjkxMjMsIDY5MTI3LCA2OTEzNywgNjkxNDYsIDY5MTQ5LCA2OTE1NiwgNjkxNjksIDY5MTc1LCA2OTE4MywgNjkxOTQsIAotICAgIDY5MjA1LCA2OTIxNiwgNjkyMjcsIDY5MjM2LCA2OTI0MiwgNjkyNTEsIDY5MjU5LCA2OTI2OSwgNjkyODIsIDY5Mjg5LCAKLSAgICA2OTMwMCwgNjkzMDYsIDY5MzExLCA2OTMxNiwgNjkzMjIsIDY5MzI4LCA2OTMzOCwgNjkzNDcsIDY3NjkyLCA2OTM1NSwgCi0gICAgNjkzNjEsIDY5MzY5LCA2OTM3NSwgNjkzODMsIDY5Mzg3LCA2OTM5MSwgNjkzOTQsIDY5NDAwLCA2OTQwNiwgNjk0MTQsIAotICAgIDY5NDI2LCA2OTQzOCwgNjk0NDUsIDY5NDQ5LCA2OTQ2MCwgNjk0NjgsIDY5NDc1LCA2OTQ4NywgNjk0OTUsIDY5NTAzLCAKLSAgICA2OTUxMCwgNjk1MTYsIDY5NTI2LCA2OTUzNSwgNjk1NDAsIDY5NTUwLCA2OTU1OSwgMzgxODQsIDY5NTY2LCA2OTU3MCwgCi0gICAgNjk1NzUsIDY5NTgzLCA2OTU5MCwgNjk1OTYsIDY5NjAwLCA2OTYxMCwgNjk2MjEsIDY5NjI5LCA2OTYzNiwgNjk2NDgsIAotICAgIDY5NjYwLCA2OTY2OSwgNjY3MzksIDY5Njc2LCA2OTY4NywgNjk3MDEsIDY5NzA5LCA2OTcxOSwgNjk3MjYsIDY5NzM0LCAKLSAgICA2OTc0NiwgNjk3NTUsIDY5NzYzLCA2OTc3MywgNjk3ODIsIDY5NzkzLCA2OTgwNSwgNjk4MTQsIDY5ODI0LCA2OTgzMSwgCi0gICAgNjk4NDAsIDY5ODU1LCA2OTg2NSwgNjk4NzQsIDY5ODgyLCA2OTg5NSwgNjk5MTAsIDY5OTE0LCA2OTkyMywgNjk5MzUsIAotICAgIDY5OTQ2LCA2OTk1NywgNjk5NjgsIDY5OTc4LCA2OTk4OSwgNjk5OTcsIDcwMDAzLCA3MDAxMywgNzAwMTksIDI2OTIzLCAKLSAgICA3MDAyNCwgNzAwMzAsIDcwMDM1LCA3MDA0MiwgODA3NSwgMTU2ODQsIDcwMDQ4LCA3MDA1NywgNzAwNjIsIDcwMDY2LCAKLSAgICA3MDA3MywgNzAwNzksIDcwMDg0LCA3MDA5MiwgNzAxMDAsIDcwMTA0LCA3MDEwNywgNzAxMTAsIDcwMTEyLCA3MDExOSwgCi0gICAgNzAxMjUsIDcwMTM2LCA3MDE0MSwgNzAxNDUsIDcwMTUyLCA3MDE1OCwgNzAxNjMsIDcwMTcxLCA2MjY0MiwgNjI2NTIsIAotICAgIDcwMTc3LCA3MDE4NCwgNzAxOTQsIDg5NzEsIDcwMjAxLCA3MDIwNiwgMjcxMTMsIDcwMjE1LCA3MDIyMCwgNzAyMjcsIAotICAgIDcwMjM3LCA3MDI0NSwgNzAyNTMsIDcwMjYyLCA3MDI2OCwgNzAyNzQsIDcwMjgxLCA3MDI4OCwgNzAyOTMsIDcwMjk3LCAKLSAgICA3MDMwNSwgNzAzMTAsIDcwMzE1LCA3MDMyMywgNzAzMzAsIDcwMzM1LCA3MDM0MSwgNzAzNDQsIDcwMzQ4LCA3MDM1NywgCi0gICAgNjg5NDcsIDcwMzY2LCA3MDM3MCwgNzAzNzYsIDcwMzg3LCA3MDM5NywgMTU2OTMsIDcwNDA4LCA3MDQxNiwgMTU3MDUsIAotICAgIDcwNDIzLCA3MDQyNywgNzA0MzYsIDI1Mjk0LCA3MDQ0MywgNzA0NDcsIDcwNDUyLCA3MDQ2OSwgNzA0ODEsIDg5MjUsIAotICAgIDcwNDkzLCA3MDQ5OCwgNzA1MDMsIDcwNTA4LCA3MDUxMiwgNzA1MTUsIDcwNTIwLCA3MDUyNSwgNzA1MzEsIDcwNTM2LCAKLSAgICA0MzI0LCAxOTE4MSwgNzA1NDEsIDcwNTQ2LCA3MDU1MiwgNzA1NTksIDcwNTY0LCA3MDU2OSwgNzA1NzUsIDcwNTgxLCAKLSAgICA3MDU4NywgNzA1OTIsIDcwNTk4LCA3MDYwMiwgNzA2MTYsIDcwNjI0LCA3MDYzMiwgNzA2MzgsIDcwNjQzLCA3MDY1MCwgCi0gICAgNzA2NjAsIDcwNjY5LCA3MDY3NCwgNzA2NzksIDcwNjg3LCA3MDY5MiwgNzA2OTgsIDcwNzAzLCA3MDcxMiwgNTcxNTQsIAotICAgIDcwNzE3LCA3MDcyMCwgNzA3MzgsIDcwNzU3LCA3MDc3MCwgNzA3ODQsIDcwODAwLCA3MDgwNywgNzA4MTQsIDcwODIwLCAKLSAgICA3MDgyNywgNzA4MzIsIDcwODM4LCA3MDg0NCwgNzA4NTIsIDcwODU4LCA3MDg2MywgNzA4NjgsIDcwODg0LCA4OTM4LCAKLSAgICA3MDg5OCwgNzA5MDUsIDcwOTEzLCA3MDkxOSwgNzA5MjMsIDcwOTI2LCA3MDkzMSwgNzA5MzYsIDcwOTQzLCA3MDk0OCwgCi0gICAgNzA5NTcsIDcwOTYyLCA3MDk2OCwgNzA5NzcsIDcwOTg2LCA3MDk5MSwgNzA5OTUsIDcxMDAzLCAxMDAwNSwgNzEwMTIsIAotICAgIDcxMDIwLCA3MTAyNSwgNzEwMzEsIDEwMDE2LCA3MTAzNiwgNzEwMzksIDcxMDQ0LCA3MTA1NCwgNzEwNjMsIDcxMDY4LCAKLSAgICA3MTA3NCwgNzEwNzksIDcxMDg3LCA3MTA5NCwgNzExMDUsIDcxMTE1LCA3MTEyMCwgNjIxMDMsIDcxMTI1LCA3MTEzMSwgCi0gICAgNzExMzYsIDcxMTQzLCA3MTE1MiwgNzExNjAsIDcxMTY2LCA3MTE3MywgNzExNzksIDcxMTgzLCAxNTE2MSwgMjk5MywgCi0gICAgNzExODgsIDcxMTkyLCA3MTE5OCwgNzEyMDcsIDcxMjEzLCA3MTIyMCwgNzEyMjQsIDcxMjQ1LCA3MTI2NywgNzEyODMsIAotICAgIDcxMzAwLCA3MTMxOSwgNzEzMjgsIDcxMzM4LCA3MTM0NSwgNzEzNTIsIDI1MTgxLCA3MTM1OCwgNzEzNjIsIDcxMzcwLCAKLSAgICA3MTM4MiwgNzEzODgsIDcxMzk2LCA3MTQwMCwgNzE0MDgsIDcxNDE1LCA3MTQxOSwgNzE0MjUsIDcxNDMxLCA3MTQzNiwgCi0gICAgMzQ5OCwgMzkzMDUsIDcxNDQyLCA3MTQ0NiwgNzE0NTAsIDcxNDU0LCA3MTQ1OSwgNzE0NjQsIDcxNDY5LCA3MTQ3NSwgCi0gICAgNzE0ODEsIDcxNDg3LCA3MTQ5NCwgNzE1MDAsIDcxNTA3LCA3MTUxMywgNzE1MTksIDcxNTI0LCA3MTUzMCwgNzE1MzUsIAotICAgIDcxNTQwLCA3MTU0NCwgNzE1NDksIDM5MzIwLCA3MTU1MywgNzE1NTgsIDcxNTY2LCA3MTU3MCwgNzE1NzUsIDcxNTgyLCAKLSAgICA3MTU5MSwgNzE1OTcsIDcxNjA0LCA3MTYwOCwgNzE2MTEsIDcxNjE4LCA3MTYyNywgNzE2MzIsIDcxNjM2LCA3MTY0NCwgCi0gICAgNzE2NTMsIDcxNjU3LCA3MTY2NSwgNzE2NzEsIDcxNjc2LCA3MTY4MSwgNzE2ODcsIDcxNjkzLCA3MTY5OCwgNzE3MDIsIAotICAgIDcxNzA4LCA3MTcxMywgNzE3MTcsIDcxNzIxLCA3MTcyNCwgNzE3MjksIDcxNzM3LCA3MTc0NywgNzE3NTIsIDM2ODY1LCAKLSAgICA3MTc2MCwgNzE3NzIsIDcxNzc2LCA3MTc4MiwgNzE3OTQsIDcxODA1LCA3MTgxMiwgNzE4MTgsIDcxODI1LCA3MTgzNywgCi0gICAgNzE4NDQsIDcxODUwLCAxOTI1NSwgNzE4NTQsIDcxODYwLCA3MTg2NywgNzE4NzMsIDcxODc5LCA3MTg4NCwgNzE4ODksIAotICAgIDcxODk0LCA3MTkwMywgNTQ5MSwgNzE5MDgsIDE0NjI3LCA3MTkxNCwgNzE5MTgsIDcxOTI2LCA3MTkzNSwgNzE5MzksIAotICAgIDcxOTQ2LCA3MTk1NSwgNzE5NjgsIDcxOTc0LCA3MTU0NSwgMjc5NjIsIDcxOTc5LCA3MTk4MSwgNzE5ODYsIDcxOTkxLCAKLSAgICA3MTk5NiwgNzIwMDEsIDcyMDA2LCA3MjAxMSwgNzIwMTYsIDcyMDIxLCA3MjAyNiwgNzIwMzEsIDcyMDM2LCA3MjA0MSwgCi0gICAgNzIwNDYsIDcyMDUxLCA3MjA1NywgNzIwNjIsIDcyMDY3LCA3MjA3MiwgNzIwNzcsIDcyMDgyLCA3MjA4NywgNzIwOTIsIAotICAgIDcyMDk3LCA3MjEwMywgNzIxMDksIDcyMTE1LCA3MjEyMCwgNzIxMjUsIDcyMTM3LCA3MjE0MiwgMTgzMywgNjcsIDcyMTQ3LCAKLSAgICA3MjE1MiwgMzA0ODUsIDMwNDkwLCAzMDQ5NSwgMzA1MDEsIDMwNTA2LCA3MjE1NiwgMzA1MTEsIDIwMjI2LCA3MjE3OCwgCi0gICAgNzIxODIsIDcyMTg2LCA3MjE5MSwgNzIxOTUsIDMwNTE1LCA3MjE5OSwgNzIyMDcsIDMwNTIwLCA3MjIxNCwgNzIyMTcsIAotICAgIDcyMjIyLCA3MjIyNiwgNzkxMCwgNzIyMzUsIDMwNTI1LCAyMDA5MiwgNzIyMzgsIDcyMjQyLCAxMzk2LCA3MjI0NywgCi0gICAgMzA1MzYsIDcyMjUwLCA3MjI1NSwgMjM3MjAsIDIzNzMwLCAzMjk0MCwgNzIyNjAsIDcyMjY1LCA3MjI3MCwgNzIyNzUsIAotICAgIDcyMjgxLCA3MjI4NiwgNzIyOTUsIDcyMzAwLCA3MjMwNywgNzIzMTMsIDcyMzE4LCA3MjMyMywgNzIzMjgsIDcyMzM4LCAKLSAgICA3MjM0NywgNzIzNTIsIDcyMzYwLCA3MjM2NCwgNzIzNzIsIDMwMzUwLCAxMTg4LCA3MjM3OSwgNzIzODUsIDcyMzkwLCAKLSAgICA3MjM5NSwgNzI0MDAsIDcyNDA2LCA3MjQxMSwgNzI0MTgsIDcyNDI0LCA3MjQyOSwgNzI0MzcsIDcyNDQ3LCA3MjQ1NywgCi0gICAgNzI0NjMsIDcyNDY4LCA3MjQ3NCwgMTU3MTUsIDcyNDgxLCAzMzc0NSwgNzI0OTQsIDcyNDk5LCA3MjUwNSwgNzI1MTgsIAotICAgIDcyNTI0LCA3MjUyOCwgNzI1MzcsIDcyNTQ0LCA3MjU1MCwgNzI1NTgsIDcyNTY3LCA3MjU3NCwgNzI1ODAsIDcyNTgzLCAKLSAgICAyMzg2MSwgNzI1ODcsIDcyNTk0LCA3MjYwMCwgNzI2MDgsIDcyNjEzLCAyMjAzNSwgNzI2MTksIDcyNjIyLCA3MjYzMCwgCi0gICAgNzI2MzgsIDcyNjUyLCA3MjY1OSwgNzI2NjUsIDcyNjcyLCA3MjY3OCwgMzA1NTAsIDcyNjgyLCA3MjY4OSwgNzI2OTcsIAotICAgIDcyNzA1LCAzMDU1NSwgNzI3MTEsIDcyNzE3LCA3MjcyMiwgNzI3MzIsIDcyNzM4LCA3Mjc0NywgMjg2NzcsIDMyNDE1LCAKLSAgICA3Mjc1NSwgNzI3NjAsIDcyNzY1LCA3Mjc3MCwgNzI3NzQsIDEzMTcwLCAzNjg3OCwgNzI3NzksIDcyNzg0LCAzMDU2MCwgCi0gICAgNTk1NTQsIDcyNzg4LCA3Mjc5MywgNzI3OTcsIDcyODA2LCA3MjgxNCwgNzI4MjAsIDcyODI1LCA3MjgzMSwgNzI4MzgsIAotICAgIDcyODQ0LCA3Mjg0OSwgNzI4NTQsIDcyODYzLCA3Mjg3NSwgNzI4OTAsIDMwODAxLCA3Mjg5NiwgMTQ3NDYsIDMwNTY0LCAKLSAgICA3MjkwMCwgNzI5MDcsIDIyMTQ1LCA3MjkxMywgNzI5MjAsIDcyOTI5LCA3MjkzNiwgNzI5NDUsIDcyOTUxLCA3Mjk1NiwgCi0gICAgNzI5NjQsIDcyOTcwLCAzMDU3NCwgNzI5NzUsIDcyOTg0LCA3MTgwMCwgNzI5OTMsIDczMDAwLCA3MzAwNiwgNzMwMTIsIAotICAgIDczMDIyLCA3MzAzMCwgNzMwMzcsIDczMDQxLCAzMDU3OSwgNzMwNDQsIDMwNTg1LCAzMDU5MSwgNzMwNDksIDczMDU3LCAKLSAgICA3MzA2NywgNzMwNzYsIDczMDg0LCA3MzA5MSwgNzMxMDEsIDMwNTk2LCA3MzEwNSwgNzMxMDcsIDczMTExLCA3MzExNiwgCi0gICAgNzMxMjAsIDczMTI0LCA3MzEzMCwgNzMxMzUsIDczMTM5LCA3MzE1MCwgNzMxNTUsIDI5OTgsIDczMTU5LCA3MzE2NiwgCi0gICAgNzMxNzAsIDczMTc5LCA3MzE4NywgNzMxOTQsIDczMTk5LCA3MzIwNCwgNTk2MDAsIDczMjA4LCA3MzIxMSwgNzMyMTcsIAotICAgIDczMjI1LCA3MzIzMSwgNzMyMzUsIDczMjQwLCA3MzI0NywgNzMyNTIsIDczMjU4LCAzMjQ0NiwgNzMyNjMsIDczMjY2LCAKLSAgICA3MzI3MSwgNzMyNzUsIDczMjgwLCA3MzI4NSwgNzMyODksIDczMjk3LCAyMzczOSwgMjM3NDgsIDczMzAzLCA3MzMwOSwgCi0gICAgNzMzMTUsIDczMzIwLCA3MzMyNCwgNzMzMjcsIDczMzM3LCA3MzM0NiwgNzMzNTEsIDczMzU3LCA3MzM2NCwgNzMzNzAsIAotICAgIDczMzc0LCA3MzM4MiwgNzMzODcsIDMyNDUyLCA3MzM5MSwgNzMzOTksIDczNDA1LCA3MzQxMiwgNzM0MTcsIDczNDIxLCAKLSAgICA3MzQyNiwgNTU3OTEsIDMyNDU4LCA3MzQzMiwgNzM0MzcsIDczNDQxLCA3MzQ0NiwgNzM0NTEsIDczNDU2LCA3MzQ2MCwgCi0gICAgNzM0NjUsIDczNDcwLCA3MzQ3NiwgNzM0ODEsIDczNDg2LCA3MzQ5MiwgNzM0OTgsIDczNTAzLCA3MzUwNywgNzM1MTIsIAotICAgIDczNTE3LCA3MzUyMiwgNzM1MjYsIDIyMTQ0LCA3MzUzMSwgNzM1MzYsIDczNTQyLCA3MzU0OCwgNzM1NTQsIDczNTU5LCAKLSAgICA3MzU2MywgNzM1NjgsIDczNTczLCA3MzU3OCwgNzM1ODIsIDczNTg3LCA3MzU5MiwgNzM1OTcsIDczNjAyLCA3MzYwNiwgCi0gICAgMzA2MDAsIDczNjE0LCA3MzYxOCwgNzM2MjYsIDczNjM0LCA3MzY0NSwgNzM2NTAsIDczNjU0LCAyMDQ5NywgNzM2NTksIAotICAgIDczNjY1LCA3MzY3NSwgNzM2ODIsIDczNjg3LCA3MzY5NiwgNzM3MDEsIDczNzA1LCA3MzcxMCwgNzM3MTgsIDczNzI2LCAKLSAgICA3MzczMywgNjIzMjEsIDczNzM5LCA3Mzc0NywgNzM3NTQsIDczNzY1LCA3Mzc3MSwgNzM3NzcsIDMwNjEwLCA3Mzc4MCwgCi0gICAgNzM3ODcsIDczNzk1LCA3MzgwMCwgMzcwNjksIDczODA0LCA3MzgwOSwgNzM4MTYsIDczODIxLCA3Mzg5LCA3MzgyNSwgCi0gICAgNzM4MzMsIDczODQwLCA3Mzg0NywgNzM4NTMsIDczODY3LCA2MDYyOSwgNzM4NzUsIDczODgxLCA3Mzg4NSwgNzM4ODgsIAotICAgIDczODk2LCA3MzkwMywgNzM5MDgsIDczOTIxLCA3MzkyOCwgNzM5MzUsIDczOTQwLCA1ODE3NCwgNzM5NDUsIDczOTQ4LCAKLSAgICA3Mzk1NSwgNzM5NjEsIDczOTY1LCA3Mzk3MywgNzM5ODMsIDczOTkzLCA3NDAwMiwgNzQwMTAsIDc0MDIxLCA3NDAyNiwgCi0gICAgNzQwMzAsIDc0MDM1LCA3NDAzOSwgMzMwNzEsIDE5NTA5LCAzMzA4MCwgNzQwNDcsIDc0MDUyLCA3NDA1NywgNzQwNjIsIAotICAgIDc0MDY3LCA3NDA3MiwgNzQwNzcsIDc0MDgxLCA3NDA4NiwgNzQwOTEsIDc0MDk2LCA3NDEwMSwgNzQxMDYsIDc0MTExLCAKLSAgICA3NDExNSwgNzQxMjAsIDc0MTI1LCA3NDEyOSwgNzQxMzMsIDc0MTM3LCA3NDE0MSwgNzQxNDYsIDc0MTUxLCA3NDE1NSwgCi0gICAgNzQxNjAsIDc0MTY0LCA3NDE2OCwgNzQxNzMsIDc0MTc4LCA3NDE4MywgNzQxODgsIDc0MTkyLCA3NDE5NywgNzQyMDIsIAotICAgIDc0MjA2LCA3NDIxMSwgNzQyMTYsIDc0MjIxLCA3NDIyNiwgNzQyMzEsIDc0MjM2LCA3NDI0MSwgNzQyNDYsIDc0MjUxLCAKLSAgICA3NDI1NiwgNzQyNjEsIDc0MjY2LCA3NDI3MSwgNzQyNzYsIDc0MjgxLCA3NDI4NiwgNzQyOTEsIDc0Mjk2LCA3NDMwMSwgCi0gICAgNzQzMDYsIDc0MzEwLCA3NDMxNSwgNzQzMjAsIDc0MzI1LCA3NDMzMCwgNzQzMzUsIDc0MzQwLCA3NDM0NSwgNzQzNTAsIAotICAgIDc0MzU1LCA3NDM2MCwgNzQzNjUsIDc0MzY5LCA3NDM3NCwgNzQzNzgsIDc0MzgzLCA3NDM4OCwgNzQzOTMsIDc0Mzk4LCAKLSAgICA3NDQwMywgNzQ0MDgsIDc0NDEzLCA3NDQxOCwgNzQ0MjMsIDc0NDI3LCA3NDQzMSwgNzQ0MzYsIDc0NDQxLCA3NDQ0NSwgCi0gICAgNzQ0NTAsIDc0NDU1LCA3NDQ1OSwgNzQ0NjQsIDc0NDY5LCA3NDQ3NCwgNzQ0NzksIDc0NDgzLCA3NDQ4OCwgNzQ0OTMsIAotICAgIDc0NDk3LCA3NDUwMiwgNzQ1MDYsIDc0NTEwLCA3NDUxNCwgNzQ1MTgsIDc0NTIzLCA3NDUyNywgNzQ1MzEsIDc0NTM1LCAKLSAgICA3NDUzOSwgNzQ1NDMsIDc0NTQ3LCA3NDU1MSwgNzQ1NTUsIDc0NTU5LCA3NDU2NCwgNzQ1NjksIDc0NTc0LCA3NDU3OSwgCi0gICAgNzQ1ODQsIDc0NTg5LCA3NDU5NCwgNzQ1OTksIDc0NjA0LCA3NDYwOSwgNzQ2MTMsIDc0NjE3LCA3NDYyMSwgNzQ2MjUsIAotICAgIDc0NjI5LCA3NDYzMywgNzQ2MzgsIDc0NjQyLCA3NDY0NywgNzQ2NTEsIDc0NjU2LCA3NDY2MSwgNzQ2NjUsIDc0NjY5LCAKLSAgICA3NDY3NCwgNzQ2NzgsIDc0NjgyLCA3NDY4NiwgNzQ2OTAsIDc0Njk0LCA3NDY5OCwgNzQ3MDIsIDc0NzA2LCA3NDcxMCwgCi0gICAgNzQ3MTQsIDc0NzE4LCA3NDcyMiwgNzQ3MjYsIDc0NzMwLCA3NDczNSwgNzQ3NDAsIDc0NzQ0LCA3NDc0OCwgNzQ3NTIsIAotICAgIDc0NzU2LCA3NDc2MCwgNzQ3NjQsIDc0NzY5LCA3NDc3MywgNzQ3NzcsIDc0NzgxLCA3NDc4NSwgNzQ3ODksIDc0NzkzLCAKLSAgICA3NDc5OCwgNzQ4MDIsIDc0ODA3LCA3NDgxMSwgNzQ4MTUsIDc0ODE5LCA3NDgyMywgNzQ4MjcsIDc0ODMxLCA3NDgzNSwgCi0gICAgNzQ4MzksIDc0ODQzLCA3NDg0NywgNzQ4NTEsIDc0ODU2LCA3NDg2MCwgNzQ4NjQsIDc0ODY4LCA3NDg3MiwgNzQ4NzYsIAotICAgIDc0ODgwLCA3NDg4NCwgNzQ4ODgsIDc0ODkyLCA3NDg5NiwgNzQ5MDAsIDc0OTA1LCA3NDkwOSwgNzQ5MTMsIDc0OTE4LCAKLSAgICA3NDkyMywgNzQ5MjcsIDc0OTMxLCA3NDkzNSwgNzQ5MzksIDc0OTQzLCA3NDk0NywgNzQ5NTEsIDc0OTU1LCA3NDk2MCwgCi0gICAgNzQ5NjQsIDc0OTY5LCA3NDk3MywgNzQ5NzgsIDc0OTgyLCA3NDk4NywgNzQ5OTEsIDc0OTk3LCA3NTAwMiwgNzUwMDYsIAotICAgIDc1MDExLCA3NTAxNSwgNzUwMjAsIDc1MDI0LCA3NTAyOSwgNzUwMzMsIDc1MDM4LCAxNDg0LCA3NTA0MiwgMjc3OCwgMTcyMiwgCi0gICAgMTcyNywgNzUwNDYsIDc1MDUwLCAyNzgyLCA3NTA1NCwgMTM2NSwgNzUwNTksIDEzMzEsIDc1MDYzLCAyNzk0LCA3NTA2NywgCi0gICAgNzUwNzQsIDc1MDgxLCA3NTA5NSwgMjc5OCwgNTU4OSwgNzUxMDQsIDc1MTEyLCA3NTExOSwgNzUxMzAsIDc1MTM5LCAKLSAgICA3NTE0NiwgNzUxNTgsIDc1MTcxLCA3NTE4NCwgNzUxOTUsIDc1MjAwLCA3NTIwNywgNzUyMTksIDc1MjIzLCAzOTE4LCAKLSAgICAxMDA4MiwgNzUyMzMsIDc1MjM4LCA3NTI0NywgNzUyNTcsIDI4MDIsIDc1MjYyLCA3NTI2NiwgNzUyNzEsIDc1Mjc4LCAKLSAgICA3NTI4NCwgNzUyOTIsIDc1MzA0LCAxMzM2LCAxMTM1MSwgNzUzMTQsIDc1MzE4LCA3NTMyNCwgNzUzMzgsIDc1MzUwLCAKLSAgICA3NTM2MiwgNzUzNzIsIDc1MzgxLCA3NTM5MCwgNzUzOTksIDc1NDA3LCA3NTQxOCwgNzU0MjYsIDM5NjgsIDc1NDM2LCAKLSAgICA3NTQ0NSwgNzU0NTEsIDc1NDY2LCA3NTQ3MywgNzU0NzksIDMzMTk3LCA3NTQ4NCwgMjgyNiwgMTEzNTUsIDc1NDg4LCAKLSAgICA3NTQ5NSwgNzMzNCwgNzU1MDQsIDI4MzEsIDMwMTA1LCA3NTUxMCwgNTc5MjMsIDc1NTE3LCA3NTUyMywgNzU1MzQsIAotICAgIDc1NTQwLCA3NTU0NywgNzU1NTMsIDc1NTYxLCA3NTU2OCwgNzU1NzQsIDc1NTg0LCA3NTU5MywgNzU2MDQsIDc1NjExLCAKLSAgICA3NTYxNywgNzU2MjcsIDc1NjM1LCA3NTY0MSwgNzU2NTYsIDc1NjYyLCA3NTY2NywgNzU2NzQsIDc1Njc3LCA3NTY4MywgCi0gICAgNzU2OTAsIDc1Njk2LCA3NTcwNCwgNzU3MTMsIDc1NzIxLCA3NTcyNywgNzU3MzYsIDM4ODQ1LCA3NTc1MCwgNzU3NTUsIAotICAgIDEzMDA3LCA3NTc2MSwgNzU3NzQsIDc1NzgzLCA3NTc5MSwgNzU3OTgsIDc1ODAyLCA3NTgwNiwgNzU4MDksIDc1ODE2LCAKLSAgICA3NTgyMywgNzU4MzEsIDc1ODM5LCA3NTg0OCwgNzU4NTYsIDEyOTQzLCA3NTg2NCwgNzU4NjksIDc1ODczLCA3NTg4NSwgCi0gICAgNzU4OTIsIDc1OTAxLCA3ODAsIDc1OTExLCA3NTkyMCwgNzU5MzEsIDI4NDcsIDc1OTM1LCA3NTkzOSwgNzU5NDUsIDc1OTU4LCAKLSAgICA3NTk3MCwgNzU5ODAsIDc1OTg5LCAyNDMzMSwgNzYwMDEsIDc2MDA5LCA3NjAxOCwgNzYwMjksIDc2MDQwLCA3NjA1MCwgCi0gICAgNzYwNjAsIDc2MDY5LCA3NjA3NywgOTY1NywgNzYwODQsIDc2MDg4LCA3NjA5MywgNzYwOTgsIDc2MTA0LCAxMzQxLCAKLSAgICAxMDE1MywgNzYxMTEsIDc2MTIyLCA3NjEzMSwgNzYxMzksIDc2MTQ4LCA3NjE1NiwgNzYxNzIsIDc2MTgzLCA3NjE5MiwgCi0gICAgNzYyMDAsIDc2MjEyLCA3NjIyMywgNzYyMzksIDc2MjQ5LCA3NjI3MCwgNzYyODMsIDc2MjkxLCA3NjI5OCwgMTMxMTgsIAotICAgIDc2MzExLCA3NjMxNiwgNzYzMjIsIDQzODYsIDc2MzI4LCA3NjMzMSwgNzYzMzgsIDc2MzQ4LCA2NjA3LCA3NjM1NSwgCi0gICAgNzYzNjAsIDc2MzY1LCA3NjM3MywgNzYzODEsIDgxMjMsIDgxMzIsIDc2Mzg2LCA3NjM5NywgNzY0MDIsIDc2NDA4LCAyODU1LCAKLSAgICAyODYwLCA3NjQxNCwgOTIyNCwgNzY0MjAsIDc2NDI3LCA3NjQzNCwgNzY0NDcsIDIyMDUsIDUwLCA3NjQ1MiwgNzY0NTcsIAotICAgIDc2NDY3LCA3NjQ3MywgNzY0ODIsIDc2NDkwLCA3NjUwMCwgNzY1MDQsIDc2NTA5LCA3NjUxMywgNzY1MjUsIDI4ODMsIAotICAgIDc2NTMzLCA3NjU0MSwgNzY1NDYsIDc2NTU3LCA3NjU2OCwgNzY1NzcsIDc2NTgyLCA3NjU4OCwgNzY1OTMsIDc2NjAzLCAKLSAgICA3NjYxMywgNzY2MTgsIDc2NjI0LCA3NjYyOSwgNzY2MzgsIDE5NTYyLCA3NjY0MiwgNDA0NSwgMTIsIDc2NjQ3LCA3NjY1NiwgCi0gICAgNzY2NjMsIDc2NjcwLCA3NjY3NiwgNzY2ODIsIDgyNywgNzY2ODcsIDc2NjkyLCA1ODI0MCwgNzY2OTcsIDc2NzAyLCAKLSAgICA3NjcwOCwgNzY3MTYsIDc2NzIxLCA3NjcyOCwgNzY3MzQsIDc2NzM5LCAzNTU3MywgMzg3NDMsIDc2NzQ1LCAyODg3LCAzMiwgCi0gICAgNzY3NTUsIDc2NzY4LCA3Njc3MywgNzY3ODEsIDc2Nzg2LCA3Njc5MiwgMjkwOSwgMjYyMzQsIDc2Nzk3LCA3NjgwNSwgCi0gICAgNzY4MTIsIDc2ODE3LCA1NjAzMywgNTkyMjEsIDc2ODI2LCAxNjY3LCAxNzc2LCA3NjgzMSwgNzY4MzYsIDc2ODQzLCAxNzgwLCAKLSAgICAyNDIsIDc2ODUwLCA3Njg1NiwgNzY4NjEsIDc2ODY4LCAxNzg0LCA3Njg3MywgNzY4NzksIDc2ODg0LCA3Njg5NiwgNDU5NywgCi0gICAgNzY5MDYsIDE3OTEsIDc2OTEyLCA3NjkxNywgNzY5MjQsIDc2OTMxLCA3Njk0NiwgNzY5NTMsIDc2OTY0LCA3Njk3MiwgCi0gICAgMjU3MiwgNzY5NzYsIDc2OTg4LCA3Njk5MywgNzY5OTcsIDc3MDAzLCAyNjA1OSwgMjIxMCwgNzcwMDcsIDc3MDE4LCAKLSAgICA3NzAyMiwgNzcwMjYsIDc3MDMyLCA3NzAzNiwgNzcwNDUsIDc3MDQ5LCA3NzA2MCwgNzcwNjQsIDIyNTYsIDI5OTQ0LCAKLSAgICA3NzA2OCwgNzcwNzgsIDMwMTgsIDc3MzgsIDc3MDg2LCA3NzA5MSwgNzcwOTUsIDc3MTA0LCA3NzExMSwgNzcxMTcsIDI5ODgsIAotICAgIDE1MzQzLCA3NzEyMSwgNzcxMzQsIDc3MTUyLCA3NzE1NywgNzcxNjUsIDc3MTczLCA3NzE4MywgMTE0NTcsIDc3MTk1LCAKLSAgICA3NzIwOCwgNzcyMTUsIDc3MjIyLCA3NzIzOCwgNzcyNDUsIDc3MjUxLCAxMDI0LCA3NzI1OCwgNzcyNjUsIDc3Mjc1LCAKLSAgICA3NzI4NCwgNzcyOTYsIDM5NzA5LCA3NzMwNCwgMzAwMiwgMTAzNTAsIDc3MzA3LCA3NzMxNSwgNzczMTksIDMwMDYsIAotICAgIDc3MzIzLCAxOTM1OCwgMTAzNjYsIDM2ODQsIDc3MzI3LCAzMDEyLCA3NzMzMSwgNzczNDEsIDc3MzQ3LCA3NzM1MywgCi0gICAgNzczNTksIDc3MzY1LCA3NzM3MSwgNzczNzcsIDc3MzgzLCA3NzM4OSwgNzczOTUsIDc3NDAxLCA3NzQwNywgNzc0MTMsIAotICAgIDc3NDE5LCA3NzQyNSwgNzc0MzEsIDc3NDM3LCA3NzQ0MywgNzc0NDksIDc3NDU1LCA3NzQ2MSwgNzc0NjcsIDc3NDczLCAKLSAgICA3NzQ3OSwgNzc0ODUsIDc3NDkxLCA3NzQ5OCwgNzc1MDUsIDc3NTExLCA3NzUxNywgNzc1MjMsIDc3NTI5LCA3NzUzNSwgCi0gICAgNzc1NDEsIDEzNDYsIDE0MjcwLCAxMDM4OCwgNzc1NDcsIDc3NTUyLCA3NzU1NywgNzc1NjIsIDc3NTY3LCA3NzU3MiwgCi0gICAgNzc1NzcsIDc3NTgyLCA3NzU4NywgNzc1OTIsIDc3NTk3LCA3NzYwMiwgNzc2MDcsIDc3NjEyLCA3NzYxNywgNzc2MjIsIAotICAgIDc3NjI3LCA3NzYzMiwgNzc2MzcsIDc3NjQyLCA3NzY0NywgNzc2NTIsIDc3NjU3LCA3NzY2MiwgNzc2NjcsIDc3NjcyLCAKLSAgICA3NzY3OCwgNzc2ODMsIDc3Njg4LCA3NzY5NCwgNzc2OTksIDc3NzA1LCA3NzcxMCwgNzc3MTUsIDc3NzIxLCA3NzcyNiwgCi0gICAgNzc3MzEsIDc3NzM2LCA3Nzc0MSwgNzc3NDYsIDc3NzUxLCA3Nzc1NiwgNzc3NjEsIDc3MzQyLCA3NzM0OCwgNzczNTQsIAotICAgIDc3MzYwLCA3NzM2NiwgNzczNzIsIDc3Mzc4LCA3NzM4NCwgNzczOTAsIDc3Mzk2LCA3NzQwMiwgNzc0MDgsIDc3NDE0LCAKLSAgICA3NzQyMCwgNzc0MjYsIDc3NzY3LCA3NzQzMiwgNzc0MzgsIDc3NDQ0LCA3Nzc3MywgNzc0NTAsIDc3NDU2LCA3NzQ2MiwgCi0gICAgNzc0NjgsIDc3NDc0LCA3NzQ4MCwgNzc0ODYsIDc3NTA2LCA3Nzc3OSwgNzc3ODUsIDc3NTEyLCA3Nzc5MSwgNzc1MTgsIAotICAgIDc3NTI0LCA3NzUzMCwgNzc1MzYsIDc3NTQyLCAzMDMzLCAzMDM4LCA3Nzc5NywgNzc4MDIsIDc3ODA1LCA3NzgxMSwgCi0gICAgNzc4MTcsIDc3ODI0LCA3NzgyOSwgNzc4MzQsIDIyNjEsIAorICAgIDAsIDAsIDYsIDEwLCAxOCwgMjMsIDI3LCAzNCwgMzksIDQxLCA0NCwgNTIsIDYyLCA2OCwgODEsIDkzLCAxMDIsIDEwOCwgCisgICAgMTEzLCAxMjEsIDEzMCwgMTM1LCAxNDAsIDE0MywgMTQ3LCAxNTMsIDE1OCwgMTY2LCAxNzMsIDE4MSwgMTg2LCAxOTEsIAorICAgIDE5NCwgMjAwLCAyMDgsIDIxNSwgMjI1LCAyMzAsIDIzNywgMjQ2LCAyNDksIDI1MiwgMjU3LCAyNjMsIDI2NywgMjc2LCAKKyAgICAyODMsIDI5MCwgMjk1LCAzMDQsIDMxMiwgMzE4LCAzMjQsIDMzMCwgMTQ0LCAzMzUsIDM0MSwgMzQ5LCAzNTAsIDM1NiwgCisgICAgMzY0LCAzNzAsIDM3NywgMzgwLCAzODIsIDM4NiwgMzkzLCA0MDEsIDQwNiwgNDA4LCA0MTMsIDQyMCwgNDI2LCA0MjgsIAorICAgIDQzNSwgNDQwLCA0NDIsIDMxNiwgNDQ1LCA0NDcsIDQ1MiwgNDU3LCA0NjMsIDQ3MCwgNDc5LCA0ODksIDQ5NCwgNDk4LCAKKyAgICA1MTEsIDUxOCwgNTIyLCA1MzEsIDUzOCwgNTQ1LCA1NDgsIDU1NCwgNTU4LCA1NjgsIDU3NiwgNTg0LCA1OTIsIDYwMSwgCisgICAgNjA5LCA2MTQsIDYxNSwgNjIzLCA2MzAsIDY0MCwgNjUxLCA2NTUsIDY1OCwgMzQ4LCA2NjMsIDY2NywgNjcxLCA2NzcsIAorICAgIDY4MywgNjg1LCA2ODgsIDY5MiwgNjk1LCA3MDQsIDcwOCwgNzE3LCA3MjAsIDcyMywgNzMxLCA3MzYsIDc0MCwgNzQzLCAKKyAgICA3NDksIDc1NiwgNzYzLCA3NzIsIDc3OSwgNzgzLCA3OTIsIDgwMCwgODA1LCA4MTEsIDgyMCwgNjk0LCA4MzAsIDgzNywgCisgICAgODQ2LCA4NTIsIDg1OCwgODY2LCA4NzUsIDg4MywgODg3LCA4OTUsIDc4MSwgOTAwLCAxNywgNTE2LCA5MDksIDkxMywgOTE3LCAKKyAgICA5MjQsIDkzMSwgOTM1LCA5MzksIDk0MiwgOTQ1LCA5NTMsIDk2MCwgOTY0LCA5NjksIDk3NywgOTgwLCAxOTIsIDk4NiwgCisgICAgOTkxLCAxMDAxLCAxMDEwLCAxMDE3LCAxMDI0LCAxMDMwLCAxMDM4LCAxMDQ2LCAxMDUyLCAxMDU2LCAxMDYxLCAxMTEsIAorICAgIDEwNjQsIDEwNjksIDEwNzUsIDEwNzksIDEwODUsIDEwODgsIDExMDEsIDExMDQsIDExMDgsIDExMTIsIDExMTcsIDExMjAsIAorICAgIDExMjIsIDExMjUsIDExMzEsIDExNDEsIDExNDcsIDExNTcsIDExNjAsIDExNjUsIDExNzQsIDMzMywgMTE4MiwgMTE4NSwgCisgICAgMTE4OCwgMTE5NCwgMTE5OCwgMTIwMCwgMTIwNSwgMTIxMCwgMTIxNiwgMTIyMSwgMTIyNiwgMTIzMCwgMTIzNSwgMTI0MSwgCisgICAgMTI0NiwgMTI1MSwgMTI1NSwgMTI2MCwgMTI2NSwgMTI2OSwgMTI3NCwgMTI3OSwgMTI4NCwgMTI5MCwgMTI5NiwgMTMwMiwgCisgICAgMTMwNywgMTMxMSwgMTMxNiwgMTMyMSwgMTMyNiwgMTMzMCwgMTMzNSwgMTM0MCwgMTM0NSwgMTM1MCwgMTIwMSwgMTIwNiwgCisgICAgMTIxMSwgMTIxNywgMTIyMiwgMTM1NCwgMTIyNywgMTM2MCwgMTM2OSwgMTIzMSwgMTM3MywgMTIzNiwgMTI0MiwgMTI0NywgCisgICAgMTM3NywgMTM4MiwgMTM4NywgMTM5MSwgMTM5NSwgMTQwMSwgMTQwNSwgMTI1MiwgMTQwOCwgMTQxMiwgMTI1NiwgMTQxOCwgCisgICAgMTI2MSwgMTQyMiwgMTQyNiwgMTI2NiwgMTQzMCwgMTQzNSwgMTQzOSwgMTQ0MiwgMTQ0NiwgMTI3MCwgMTI3NSwgMTQ1MSwgCisgICAgMTI4MCwgMTQ1NywgMTQ2MywgMTQ2OSwgMTQ3NSwgMTI4NSwgMTI5NywgMTMwMywgMTQ3OSwgMTQ4MywgMTQ4NywgMTQ5MCwgCisgICAgMTMwOCwgMTQ5NCwgMTQ5NiwgMTUwMSwgMTUwNiwgMTUxMiwgMTUxNywgMTUyMiwgMTUyNiwgMTUzMSwgMTUzNiwgMTU0MSwgCisgICAgMTU0NiwgMTU1MiwgMTU1NywgMTU2MiwgMTU2OCwgMTU3NCwgMTU3OSwgMTU4MywgMTU4OCwgMTU5MywgMTU5OCwgMTYwMywgCisgICAgMTYwNywgMTYxNSwgMTYxOSwgMTYyNCwgMTYyOSwgMTYzNCwgMTYzOSwgMTY0MywgMTY0NiwgMTY1MSwgMTY1NiwgMTY2MSwgCisgICAgMTY2NiwgMTY3MiwgMTY3NywgMTY4MSwgMTMxMiwgMTY4NCwgMTY4OSwgMTY5NCwgMTMxNywgMTY5OCwgMTcwMiwgMTcwOSwgCisgICAgMTMyMiwgMTcxNiwgMTMyNywgMTcyMCwgMTcyMiwgMTcyNywgMTczMywgMTMzMSwgMTczOCwgMTc0NywgMTMzNiwgMTc1MiwgCisgICAgMTc1OCwgMTM0MSwgMTc2MywgMTc2OCwgMTc3MSwgMTc3NiwgMTc4MCwgMTc4NCwgMTc4OCwgMTc5MSwgMTc5NSwgMTM0NiwgCisgICAgMTM1MSwgMTExNSwgMTgwMCwgMTgwNiwgMTgxMiwgMTgxOCwgMTgyNCwgMTgzMCwgMTgzNiwgMTg0MiwgMTg0OCwgMTg1MywgCisgICAgMTg1OSwgMTg2NSwgMTg3MSwgMTg3NywgMTg4MywgMTg4OSwgMTg5NSwgMTkwMSwgMTkwNywgMTkxMiwgMTkxNywgMTkyMiwgCisgICAgMTkyNywgMTkzMiwgMTkzNywgMTk0MiwgMTk0NywgMTk1MiwgMTk1NywgMTk2MywgMTk2OCwgMTk3NCwgMTk3OSwgMTk4NSwgCisgICAgMTk5MSwgMTk5NiwgMjAwMiwgMjAwOCwgMjAxNCwgMjAyMCwgMjAyNSwgMjAzMCwgMjAzMiwgMjAzMywgMjAzNywgMjA0MSwgCisgICAgMjA0NiwgMjA1MCwgMjA1NCwgMjA1OCwgMjA2MiwgMjA2NSwgMjA3MCwgMjA3NCwgMjA3OSwgMjA4MywgMjA4NywgMjA5MiwgCisgICAgMjA5NiwgMjA5OSwgMjEwMywgMjEwOSwgMjEyMywgMjEyNywgMjEzMSwgMjEzNSwgMjEzOCwgMjE0MywgMjE0NywgMjE1MSwgCisgICAgMjE1NCwgMjE1OCwgMjE2MywgMjE2OCwgMjE3MywgMjE3OCwgMjE4MiwgMjE4NiwgMjE5MCwgMjE5NSwgMjE5OSwgMjIwNCwgCisgICAgMjIwOCwgMjIxMywgMjIxOSwgMjIyNiwgMjIzMiwgMjIzNywgMjI0MiwgMjI0NywgMjI1MywgMjI1OCwgMjI2NCwgMjI2OSwgCisgICAgMjI3MiwgMTIxOCwgMjI3NCwgMjI4MSwgMjI4OSwgMjI5OSwgMjMwOCwgMjMyMiwgMjMyNiwgMjMzMCwgMjM0MywgMjM1MSwgCisgICAgMjM1NSwgMjM2MCwgMjM2NCwgMjM2NywgMjM3MSwgMjM3NSwgMjM4MCwgMjM4NSwgMjM5MCwgMjM5NCwgMjM5NywgMjQwMSwgCisgICAgMjQwOCwgMjQxNSwgMjQyMSwgMjQyNiwgMjQzMSwgMjQzNywgMjQ0MywgMjQ0OCwgMjQ1MSwgMTcyNCwgMjQ1MywgMjQ1OSwgCisgICAgMjQ2MywgMjQ2OCwgMjQ3MiwgMjQ3NiwgMTcyOSwgMTczNSwgMjQ4MSwgMjQ4NSwgMjQ4OCwgMjQ5MywgMjQ5OCwgMjUwMywgCisgICAgMjUwOCwgMjUxMiwgMjUxOSwgMjUyNCwgMjUyNywgMjUzNCwgMjU0MCwgMjU0NCwgMjU0OCwgMjU1MiwgMjU1NywgMjU2NCwgCisgICAgMjU2OSwgMjU3NCwgMjU4MSwgMjU4NywgMjU5MywgMjU5OSwgMjYxMywgMjYzMCwgMjY0NSwgMjY2MCwgMjY2OSwgMjY3NCwgCisgICAgMjY3OCwgMjY4MywgMjY4OCwgMjY5MiwgMjcwNCwgMjcxMSwgMjcxNywgMjIyMiwgMjcyMywgMjczMCwgMjczNiwgMjc0MCwgCisgICAgMjc0MywgMjc1MCwgMjc1NiwgMjc2MCwgMjc2NCwgMjc2OCwgMjA1NSwgMjc3MiwgMjc3NywgMjc4MiwgMjc4NiwgMjc5NCwgCisgICAgMjc5OCwgMjgwMiwgMjgwNiwgMjgxMCwgMjgxNSwgMjgyMCwgMjgyNSwgMjgyOSwgMjgzNCwgMjgzOSwgMjg0MywgMjg0OCwgCisgICAgMjg1MiwgMjg1NSwgMjg1OSwgMjg2MywgMjg2OCwgMjg3MiwgMjg3NiwgMjg4MiwgMjg5MSwgMjg5NSwgMjg5OSwgMjkwNSwgCisgICAgMjkxMCwgMjkxNywgMjkyMSwgMjkzMSwgMjkzNSwgMjkzOSwgMjk0NCwgMjk0OCwgMjk1MywgMjk1OSwgMjk2NCwgMjk2OCwgCisgICAgMjk3MiwgMjk3NiwgMjQxMSwgMjk4NCwgMjk4OSwgMjk5NSwgMzAwMCwgMzAwNCwgMzAwOSwgMzAxNCwgMzAxOCwgMzAyNCwgCisgICAgMzAyOSwgMzAzNSwgMzAzOSwgMzA0NSwgMzA1MCwgMzA1NSwgMzA2MCwgMzA2NSwgMzA3MCwgMzA3NSwgMzA4MCwgMzA4NSwgCisgICAgMzA5MCwgMzA5NiwgMzEwMSwgMTIyOCwgODAsIDMxMDcsIDMxMTEsIDMxMTUsIDMxMTksIDMxMjQsIDMxMjgsIDMxMzIsIAorICAgIDMxMzYsIDMxNDAsIDMxNDUsIDMxNDksIDMxNTQsIDMxNTgsIDMxNjEsIDMxNjUsIDMxNzAsIDMxNzQsIDMxNzksIDMxODMsIAorICAgIDMxODcsIDMxOTEsIDMxOTYsIDMyMDAsIDMyMDMsIDMyMTYsIDMyMjAsIDMyMjQsIDMyMjgsIDMyMzIsIDMyMzYsIDMyMzksIAorICAgIDMyNDMsIDMyNDcsIDMyNTIsIDMyNTYsIDMyNjEsIDMyNjYsIDMyNzEsIDMyNzUsIDMyNzgsIDMyODEsIDMyODcsIDMyOTEsIAorICAgIDMyOTUsIDMyOTgsIDMzMDIsIDMzMDYsIDMzMDksIDMzMTUsIDMzMjAsIDMzMjUsIDMzMzEsIDMzMzYsIDMzNDEsIDMzNDcsIAorICAgIDMzNTMsIDMzNTgsIDMzNjMsIDMzNjgsIDExMDYsIDU0NywgMzM3MywgMzM3NiwgMzM4MSwgMzM4NSwgMzM4OCwgMzM5MiwgCisgICAgMzM5NywgMzQwMiwgMzQwNiwgMzQxMSwgMzQxNSwgMzQyMCwgMzQyNCwgMzQyOCwgMzQzNCwgMzQ0MCwgMzQ0MywgMzQ0NiwgCisgICAgMzQ1MiwgMzQ1OSwgMzQ2NiwgMzQ3MiwgMzQ3OSwgMzQ4NCwgMzQ4OCwgMzQ5NSwgMzUwMCwgMzUwNCwgMzUxNCwgMzUxOCwgCisgICAgMzUyMiwgMzUyNywgMzUzMiwgMzU0MiwgMjA2NiwgMzU0NywgMzU1MSwgMzU1NCwgMzU2MCwgMzU2NSwgMzU3MSwgMzU3NywgCisgICAgMzU4MiwgMzU4OSwgMzU5MywgMzU5NywgNjY0LCA2OTMsIDM2MDEsIDM2MDgsIDM2MTUsIDM2MjIsIDM2MjgsIDM2MzQsIAorICAgIDM2MzksIDM2NDMsIDM2NDksIDM2NTQsIDM2NTgsIDIwNzUsIDM2NjIsIDM2NzAsIDU5NiwgMzY3NiwgMzY4NywgMzY5MSwgCisgICAgMzcwMSwgMjA4MCwgMzcwNywgMzcxMiwgMzcyNywgMzczMywgMzc0MCwgMzc1MCwgMzc1NiwgMzc2MSwgMzc2NywgMzc3MywgCisgICAgMzc3NiwgMzc4MCwgMzc4NSwgMzc5MiwgMzc5NywgMzgwMSwgMzgwNSwgMzgwOSwgMzgxMywgMzgxOCwgMzgyNCwgMzE2NiwgCisgICAgMzgyOSwgMzg0MSwgMzg0OSwgMzg1NCwgMTUyOCwgMzg2MSwgMzg2NCwgMzg2NywgMzg3MSwgMzg3NCwgMzg4MCwgMzg4NCwgCisgICAgMzg5OCwgMzkwMiwgMzkwNSwgMzkwOSwgMzkxNSwgMzkyMSwgMzkyNiwgMzkzMCwgMzkzNCwgMzk0MCwgMzk1MSwgMzk1NywgCisgICAgMzk2MiwgMzk2OCwgMzk3MiwgMzk4MCwgMzk5MCwgMzk5NiwgNDAwMSwgNDAxMCwgNDAxOCwgNDAyNSwgNDAyOSwgNDAzNSwgCisgICAgNDA0NCwgNDA1MywgNDA1NywgNDA2MiwgNDA2NywgNDA3MSwgNDA3OSwgNDA4MywgNDA4OCwgNDA5MiwgMjA4OCwgMTM3MCwgCisgICAgNDA5OCwgNDEwMywgNDEwOSwgNDExNCwgNDExOSwgNDEyNCwgNDEyOSwgNDEzNCwgNDEzOSwgNDE0NSwgNDE1MCwgNDE1NiwgCisgICAgNDE2MSwgNDE2NiwgNDE3MSwgNDE3NywgNDE4MiwgNDE4NywgNDE5MiwgNDE5NywgNDIwMywgNDIwOCwgNDIxNCwgNDIxOSwgCisgICAgNDIyNCwgNDIyOSwgNDIzNCwgNDIzOSwgNDI0NCwgNDI1MCwgNDI1NSwgNDI2MCwgMzM5LCA0NTYsIDQyNjUsIDQyNzEsIAorICAgIDQyNzUsIDQyNzksIDQyODQsIDQyODgsIDQyOTIsIDQyOTUsIDQyOTksIDQzMDMsIDQzMDcsIDQzMTEsIDQzMTYsIDQzMjAsIAorICAgIDQzMjQsIDQzMzAsIDQwOTUsIDQzMzUsIDQzMzgsIDQzNDUsIDQzNDksIDQzNjIsIDQzNjYsIDQzNzAsIDQzNzQsIDQzNzgsIAorICAgIDQzODIsIDQzODYsIDQzOTIsIDQzOTksIDQ0MDcsIDQ0MTEsIDQ0MTksIDQ0MjgsIDQ0MzQsIDQ0NDYsIDQ0NTEsIDQ0NTQsIAorICAgIDQ0NTgsIDQ0NjgsIDQ0NzYsIDQ0ODQsIDQ0OTAsIDQ0OTQsIDQ1MDQsIDQ1MTQsIDQ1MjIsIDQ1MjksIDQ1MzYsIDQ1NDIsIAorICAgIDQ1NDgsIDQ1NTUsIDQ1NTksIDQ1NjYsIDQ1NzYsIDQ1ODYsIDQ1OTQsIDQ2MDEsIDQ2MDYsIDQ2MTAsIDQ2MTgsIDQ2MjIsIAorICAgIDQ2MjcsIDQ2MzQsIDQ2NDIsIDQ2NDcsIDQ2NTIsIDQ2NTYsIDQ2NzAsIDQ2NzUsIDQ2ODAsIDQ2ODcsIDQ2OTYsIDQ2OTksIAorICAgIDQ3MDMsIDQ3MDcsIDQ3MTAsIDQ3MTUsIDQ3MjAsIDQ3MjksIDQ3MzUsIDQ3NDEsIDQ3NDcsIDQ3NTEsIDQ3NjIsIDQ3NzIsIAorICAgIDQ3ODcsIDQ4MDIsIDQ4MTcsIDQ4MzIsIDQ4NDcsIDQ4NjIsIDQ4NzcsIDQ4OTIsIDQ5MDcsIDQ5MjIsIDQ5MzcsIDQ5NTIsIAorICAgIDQ5NjcsIDQ5ODIsIDQ5OTcsIDUwMTIsIDUwMjcsIDUwNDIsIDUwNTcsIDUwNzIsIDUwODcsIDUxMDIsIDUxMTcsIDUxMzIsIAorICAgIDUxNDcsIDUxNjIsIDUxNzcsIDUxOTIsIDUyMDcsIDUyMjIsIDUyMzcsIDUyNTIsIDUyNjcsIDUyODIsIDUyOTcsIDUzMTIsIAorICAgIDUzMjcsIDUzNDIsIDUzNTcsIDUzNzIsIDUzODcsIDU0MDIsIDU0MTcsIDU0MzIsIDU0NDcsIDU0NjIsIDU0NzcsIDU0OTIsIAorICAgIDU1MDcsIDU1MTYsIDU1MjUsIDU1MzAsIDU1MzYsIDU1NDYsIDU1NTAsIDU1NTUsIDU1NjAsIDU1NjgsIDU1NzIsIDU1NzUsIAorICAgIDU1NzksIDI5MjYsIDU1ODIsIDU1ODcsIDMxNSwgNDM4LCA1NTkzLCA1NjAxLCA1NjA1LCA1NjA5LCA1NjEyLCA1NjE2LCAKKyAgICA1NjIyLCA1NjI2LCA1NjM0LCA1NjQwLCA1NjQ1LCA1NjUyLCA1NjU5LCA1NjY1LCA1NjcwLCA1Njc3LCA1NjgzLCA1NjkxLCAKKyAgICA1Njk1LCA1NzAwLCA1NzEyLCA1NzIzLCA1NzMwLCA1NzM0LCA1NzQwLCAzMTg4LCA1NzQ0LCA1NzUwLCA1NzU1LCA1NzYwLCAKKyAgICA1NzY1LCA1NzcxLCA1Nzc2LCA1NzgxLCA1Nzg2LCA1NzkxLCA1Nzk3LCA1ODAyLCA1ODA3LCA1ODEzLCA1ODE4LCA1ODI0LCAKKyAgICA1ODI5LCA1ODM1LCA1ODQwLCA1ODQ2LCA1ODUxLCA1ODU2LCA1ODYxLCA1ODY2LCA1ODcxLCA1ODc3LCA1ODgyLCA1ODg3LCAKKyAgICA1ODkyLCA1ODk4LCA1OTA0LCA1OTEwLCA1OTE2LCA1OTIyLCA1OTI4LCA1OTM0LCA1OTQwLCA1OTQ2LCA1OTUyLCA1OTU4LCAKKyAgICA1OTY0LCA1OTY5LCA1OTc0LCA1OTc5LCA1OTg0LCA1OTg5LCA1OTk0LCA1OTk5LCA2MDA0LCA2MDEwLCA2MDE2LCA2MDIxLCAKKyAgICA2MDI3LCA2MDMzLCA2MDM5LCA2MDQ0LCA2MDQ5LCA2MDU0LCA2MDU5LCA2MDY1LCA2MDcxLCA2MDc2LCA2MDgxLCA2MDg2LCAKKyAgICA2MDkxLCA2MDk2LCA2MTAyLCA2MTA3LCA2MTEzLCA2MTE5LCA2MTI1LCA2MTMxLCA2MTM3LCA2MTQzLCA2MTQ5LCA2MTU1LCAKKyAgICA2MTYxLCA1NjExLCA2MTY2LCA2MTcwLCA2MTc0LCA2MTc3LCA2MTg0LCA2MTg3LCA2MTk1LCA2MjAwLCA2MjA1LCA2MTk2LCAKKyAgICA2MjEwLCAyMTI0LCA2MjE0LCA2MjIwLCA2MjI2LCA2MjMxLCA2MjM2LCA2MjQzLCA2MjUxLCA2MjU2LCA2MjYwLCA2MjYzLCAKKyAgICA2MjY3LCAyMTMyLCA1NTYsIDYyNzEsIDYyNzUsIDYyODAsIDYyODYsIDYyOTEsIDYyOTUsIDYyOTgsIDYzMDIsIDYzMDgsIAorICAgIDYzMTMsIDYzMTcsIDYzMjQsIDYzMjgsIDYzMzIsIDYzMzYsIDk2NiwgNzYxLCA2MzM5LCA2MzQ3LCA2MzU0LCA2MzYxLCAKKyAgICA2MzY3LCA2Mzc0LCA2MzgyLCA2Mzg5LCA2Mzk2LCA2NDAxLCA2NDEzLCAxMjQ4LCAxMzc4LCAxMzgzLCA2NDI0LCAxMzg4LCAKKyAgICA2NDI4LCA2NDMyLCA2NDQxLCA2NDQ5LCA2NDU4LCA2NDY0LCA2NDY5LCA2NDczLCA2NDc5LCA2NDg0LCA2NDkxLCA2NDk1LCAKKyAgICA2NTA0LCA2NTEzLCA2NTIyLCA2NTMxLCA2NTM2LCA2NTQxLCA2NTUzLCA2NTU4LCA2NTY2LCAyMTgzLCA2NTcwLCA2NTcyLCAKKyAgICA2NTc3LCA2NTgxLCA2NTkwLCA2NTk4LCAxMzkyLCAxMzMsIDM0MTYsIDM0MjEsIDY2MDQsIDY2MDgsIDY2MTcsIDY2MjMsIAorICAgIDY2MjgsIDY2MzEsIDY2NDAsIDI2NTcsIDY2NDYsIDY2NTQsIDY2NTgsIDY2NjIsIDIxOTYsIDY2NjYsIDY2NzEsIDY2NzgsIAorICAgIDY2ODQsIDY2OTAsIDY2OTMsIDY2OTUsIDY2OTgsIDY3MDYsIDY3MTQsIDY3MjIsIDY3MjUsIDY3MzAsIDYyMDcsIDY3MzMsIAorICAgIDY3MzUsIDY3NDAsIDY3NDUsIDY3NTAsIDY3NTUsIDY3NjAsIDY3NjUsIDY3NzAsIDY3NzUsIDY3ODAsIDY3ODUsIDY3OTEsIAorICAgIDY3OTYsIDY4MDEsIDY4MDYsIDY4MTIsIDY4MTcsIDY4MjIsIDY4MjcsIDY4MzIsIDY4MzcsIDY4NDIsIDY4NDgsIDY4NTMsIAorICAgIDY4NTgsIDY4NjMsIDY4NjgsIDY4NzMsIDY4NzgsIDY4ODMsIDY4ODgsIDY4OTMsIDY4OTgsIDY5MDMsIDY5MDgsIDY5MTMsIAorICAgIDY5MTgsIDY5MjMsIDY5MjgsIDY5MzMsIDY5MzksIDY5NDUsIDY5NTAsIDY5NTUsIDY5NjAsIDY5NjUsIDY5NzAsIDIyMjAsIAorICAgIDIyMjcsIDIyMzMsIDY5NzUsIDY5ODEsIDY5ODksIDIyNTksIDIyNjUsIDY5OTcsIDcwMDEsIDcwMDYsIDcwMTAsIDcwMTQsIAorICAgIDcwMTgsIDcwMjMsIDcwMjcsIDcwMzIsIDcwMzYsIDcwMzksIDcwNDIsIDcwNDgsIDcwNTQsIDcwNjAsIDcwNjYsIDcwNzIsIAorICAgIDcwNzgsIDcwODQsIDcwODgsIDcwOTIsIDcwOTYsIDcxMDAsIDcxMDQsIDcxMDksIDcxMTYsIDcxMjcsIDcxMzUsIDcxNDUsIAorICAgIDcxNTIsIDcxNTcsIDcxNjEsIDcxNzIsIDcxODUsIDcxOTYsIDcyMDksIDcyMjAsIDcyMzIsIDcyNDQsIDcyNTYsIDcyNjksIAorICAgIDcyODIsIDcyODksIDcyOTUsIDczMDksIDczMTYsIDczMjIsIDczMjYsIDczMzEsIDczMzUsIDczNDIsIDczNTAsIDczNTQsIAorICAgIDczNjAsIDczNjQsIDczNzAsIDczODAsIDczODQsIDczODksIDczOTQsIDc0MDEsIDc0MDcsIDc0MTcsIDYzNjksIDc0MjMsIAorICAgIDc0MjcsIDc0MzQsIDc2MCwgNzQzOCwgNzQ0MiwgNzQ0NywgNzQ1MiwgNzQ1NywgNzQ2MSwgNzQ2NywgNzQ3NSwgNzQ4MSwgCisgICAgNzQ4NSwgNzQ5MSwgNzUwMSwgNzUwNSwgNzUxMSwgNzUxNiwgNzUyMCwgNzUyNiwgNzUzMiwgMjEyMCwgNzUzNywgNzUzOSwgCisgICAgNzU0NCwgNzU1MiwgNzU2MSwgNzU2NSwgNzU3MSwgNzU3NiwgNzU4MSwgNzU4NiwgNzU5MSwgNzU5NywgNzYwMiwgNzYwNywgCisgICAgMzkzNiwgNzYxMiwgNzYxNywgNzYyMSwgNzYyNywgNzYzMiwgNzYzOCwgNzY0MywgNzY0OCwgNzY1NCwgNzY1OSwgNzU2NiwgCisgICAgNzY2NSwgNzY2OSwgNzY3NiwgNzY4MiwgNzY4NywgNzY5MSwgNDY2NiwgNzY5NiwgNzcwNSwgNzcxMCwgNzcxNSwgNjY3NCwgCisgICAgNjY4MSwgNzcyMCwgMjgxMiwgNzcyNCwgNzcyOSwgNzczNCwgNzU3NywgNzczOCwgNzU4MiwgNzU4NywgNzc0MywgNzc1MCwgCisgICAgNzc1NywgNzc2MywgNzc2OSwgNzc3NSwgNzc4MCwgNzc4NSwgNzc5MCwgNzU5MiwgNzU5OCwgNzc5NiwgNzgwMiwgNzgwNywgCisgICAgNzgxNSwgNzYwMywgNzgyMCwgMTA1NCwgNzgyMywgNzgzMSwgNzgzNywgNzg0MywgNzg1MiwgNzg2MCwgNzg2NSwgNzg3MSwgCisgICAgNzg3OSwgNzg4NiwgNzkwMSwgNzkxOCwgNzkzNywgNzk0NiwgNzk1NCwgNzk2OSwgNzk4MCwgNzk5MCwgODAwMCwgODAwOCwgCisgICAgODAxNCwgODAyNiwgODAzNSwgODA0MywgODA1MCwgODA1NywgODA2MywgODA2OCwgODA3NiwgODA4NiwgODA5MywgODEwMywgCisgICAgODExMywgODEyMywgODEzMSwgODEzOCwgODE0NywgODE1NywgODE3MSwgODE4NiwgODE5NSwgODIwMywgODIwOCwgODIxMiwgCisgICAgODIyMSwgODIyNywgODIzMiwgODI0MiwgODI1MiwgODI2MiwgODI2NywgODI3MSwgODI4MCwgODI4NSwgODI5NSwgODMwNiwgCisgICAgODMxOSwgODMzMiwgODM0NCwgODM1MiwgODM1NywgODM2MSwgODM2NywgODM3MiwgODM4MCwgODM4OCwgODM5NSwgODQwMCwgCisgICAgODQwOCwgODQxNCwgODQxNywgODQyMSwgODQyNywgODQzNSwgODQ0MCwgODQ0NCwgODQ1MiwgODQ2MSwgODQ2OSwgODQ3NSwgCisgICAgODQ3OSwgODQ4NiwgODQ5NywgODUwMSwgODUwNCwgODUxMCwgNzYwOCwgODUxNSwgODUyMSwgODUyOCwgODUzNCwgODUzOSwgCisgICAgODU0NiwgODU1MywgODU2MCwgODU2NywgODU3NCwgODU4MSwgODU4NiwgNzkxNCwgODU5MSwgODU5NywgODYwNCwgODYxMSwgCisgICAgODYxNiwgODYyMywgODYzMiwgODYzNiwgODY0OCwgNjcxMiwgODY1MiwgODY1NSwgODY1OSwgODY2MywgODY2NywgODY3MSwgCisgICAgODY3NywgODY4MiwgODY4OCwgODY5MywgODY5OCwgODcwNCwgODcwOSwgODcxNCwgNzM5NywgODcxOSwgODcyMywgODcyNywgCisgICAgODczMSwgODczNiwgODc0MSwgODc0OSwgODc1NSwgODc1OSwgODc2MywgODc3MCwgODc3NSwgODc4MywgODc4OCwgODc5MiwgCisgICAgODc5NSwgODgwMSwgODgwOCwgODgxMiwgODgxNSwgODgyMCwgODgyNCwgMzk3NSwgODgzMCwgODgzOSwgMzYsIDg4NDcsIAorICAgIDg4NTMsIDg4NTgsIDc0MTIsIDg4NjMsIDg4NjgsIDg4NzIsIDg4NzUsIDg4OTAsIDg5MDksIDg5MjEsIDg5MzQsIDg5NDcsIAorICAgIDg5NjAsIDg5NzQsIDg5ODcsIDkwMDIsIDkwMDksIDc2MTMsIDkwMTUsIDkwMjksIDkwMzQsIDkwNDAsIDkwNDUsIDkwNTMsIAorICAgIDkwNTgsIDY1MDAsIDkwNjMsIDkwNjYsIDkwNzMsIDkwNzgsIDkwODIsIDI4MTcsIDk3NSwgOTA4OCwgOTA5MiwgOTA5OCwgCisgICAgOTEwNCwgOTEwOSwgOTExNSwgOTEyMCwgNzYyMiwgOTEyNiwgOTEzMiwgOTEzNywgOTE0MiwgOTE1MCwgOTE1NiwgOTE2OSwgCisgICAgOTE3NywgOTE4NCwgNzYyOCwgOTE5MCwgOTE5OCwgOTIwNiwgOTIxMywgOTIyNiwgOTIzOCwgOTI0OCwgOTI1NSwgOTI2MiwgCisgICAgOTI3MSwgOTI4MCwgOTI4OCwgOTI5NSwgOTMwMCwgOTMwNiwgNzYzMywgOTMxMSwgOTMxNywgNzYzOSwgOTMyMiwgOTMyNSwgCisgICAgOTMzMiwgOTMzOCwgOTM1MSwgNzEyMCwgOTM2MiwgOTM2OCwgOTM3NywgOTM4NSwgOTM5MiwgOTM5OCwgOTQwNCwgOTQwOSwgCisgICAgOTQxMywgOTQxOCwgODg4MiwgOTQyNCwgNzY0NCwgOTQzMSwgOTQzNiwgOTQ0MywgOTQ0OSwgOTQ1NSwgOTQ2MCwgOTQ2OCwgCisgICAgOTQ3NiwgOTQ4MywgOTQ4NywgOTUwMSwgOTUxMSwgOTUxNiwgOTUyMCwgOTUzMSwgOTUzNywgOTU0MiwgOTU0NywgNzY0OSwgCisgICAgNzY1NSwgOTU1MSwgOTU1NCwgOTU1OSwgOTU3MSwgOTU3OCwgOTU4MywgOTU4NywgOTU5MiwgOTU5NiwgOTYwMywgOTYwOSwgCisgICAgNzY2MCwgNzU2NywgOTYxNiwgMjgyMiwgOCwgOTYyMywgOTYyOCwgOTYzMiwgOTYzOCwgOTY0NiwgOTY1NiwgOTY2MSwgCisgICAgOTY2NiwgOTY3MywgOTY4MCwgOTY4NCwgOTY5NSwgOTcwNSwgOTcxNCwgOTcyNiwgOTczMSwgOTczNSwgOTc0MywgOTc1NywgCisgICAgOTc2MSwgOTc2NCwgOTc3MiwgOTc3OSwgOTc4NywgOTc5MSwgOTgwMiwgOTgwNiwgOTgxMywgOTgxOCwgOTgyMiwgOTgyOCwgCisgICAgOTgzMywgOTgzNywgOTg0MywgOTg0OCwgOTg1OSwgOTg2MywgOTg2NiwgOTg3MiwgOTg3NywgOTg4MywgOTg4OSwgOTg5NiwgCisgICAgOTkwNywgOTkxNywgOTkyNywgOTkzNiwgOTk0MywgNzY3MCwgNzY3NywgNzY4MywgNzY4OCwgOTk0OSwgOTk1NSwgNzY5MiwgCisgICAgOTk2MSwgOTk2NCwgOTk3MSwgOTk3NiwgOTk5MSwgMTAwMDcsIDEwMDIyLCAxMDAzMCwgMTAwMzYsIDgwOCwgNDExLCAKKyAgICAxMDA0MSwgMTAwNDksIDEwMDU2LCAxMDA2MiwgMTAwNjcsIDEwMDcyLCA3Njk3LCAxMDA3NCwgMTAwNzgsIDEwMDgzLCAKKyAgICAxMDA4NywgMTAwOTcsIDEwMTAyLCAxMDEwNiwgMTAxMTUsIDEwMTE5LCAxMDEyMiwgNzcwNiwgMTAxMjksIDEwMTMyLCAKKyAgICAxMDE0MCwgMTAxNDcsIDEwMTU1LCAxMDE1OSwgMTAxNjYsIDEwMTc1LCAxMDE3OCwgMTAxODIsIDEwMTg2LCAxMDE5MiwgCisgICAgMTAxOTYsIDEwMjAwLCAxMDIwNCwgMTAyMTAsIDEwMjIwLCAxMDIyNCwgMTAyMzIsIDEwMjM2LCAxMDI0MywgMTAyNDcsIAorICAgIDEwMjUyLCAxMDI1NiwgMTAyNjMsIDEwMjY5LCAxMDI3NywgMTAyODMsIDEwMjkzLCAxMDI5OCwgMTAzMDMsIDEwMzA3LCAKKyAgICAxMDMxNSwgMzgzNSwgMTAzMjMsIDEwMzI4LCA3NzExLCAxMDMzMiwgMTAzMzYsIDEwMzM5LCAxMDM0NywgMTAzNTQsIAorICAgIDEwMzU4LCA0NDg2LCAxMDM2MiwgMTAzNjcsIDEwMzcxLCAxMDM4MiwgMTAzODcsIDEwMzkzLCAxMDM5NywgMTA0MDAsIAorICAgIDEwNDA4LCAxMDQxMywgMTA0MTgsIDEwNDI1LCAxMDQzMCwgNzcxNiwgMTA0MzUsIDEwNDM5LCAxNjg2LCA0NjQwLCAxMDQ0NiwgCisgICAgMTA0NTEsIDEwNDU2LCAxMDQ2MSwgMTA0NjcsIDEwNDcyLCAxMDQ3OCwgMTA0ODMsIDEwNDg4LCAxMDQ5MywgMTA0OTgsIAorICAgIDEwNTAzLCAxMDUwOCwgMTA1MTMsIDEwNTE4LCAxMDUyMywgMTA1MjgsIDEwNTMzLCAxMDUzOCwgMTA1NDMsIDEwNTQ4LCAKKyAgICAxMDU1MywgMTA1NTgsIDEwNTY0LCAxMDU2OSwgMTA1NzQsIDEwNTc5LCAxMDU4NCwgMTA1ODksIDEwNTk1LCAxMDYwMCwgCisgICAgMTA2MDUsIDEwNjExLCAxMDYxNiwgMTA2MjIsIDEwNjI3LCAxMDYzMywgMTA2MzgsIDEwNjQzLCAxMDY0OCwgMTA2NTMsIAorICAgIDEwNjU5LCAxMDY2NCwgMTA2NjksIDEwNjc0LCA3MjksIDEzOSwgMTA2ODIsIDEwNjg2LCAxMDY5MSwgMTA2OTYsIDEwNzAwLCAKKyAgICAxMDcwNCwgMTA3MDgsIDEwNzEzLCAxMDcxNywgMTA3MjIsIDEwNzI2LCAxMDcyOSwgMTA3MzMsIDEwNzM3LCAxMDc0MiwgCisgICAgMTA3NTIsIDEwNzU4LCAxMDc2NiwgMTA3NzAsIDEwNzc0LCAxMDc4MSwgMTA3ODksIDEwNzk4LCAxMDgwOSwgMTA4MTYsIAorICAgIDEwODIzLCAxMDgzMiwgMTA4NDEsIDEwODQ5LCAxMDg1OCwgMTA4NjcsIDEwODc2LCAxMDg4NSwgMTA4OTUsIDEwOTA1LCAKKyAgICAxMDkxNSwgMTA5MjUsIDEwOTM1LCAxMDk0NCwgMTA5NTQsIDEwOTY0LCAxMDk3NCwgMTA5ODQsIDEwOTk0LCAxMTAwNCwgCisgICAgMTEwMTQsIDExMDIzLCAxMTAzMywgMTEwNDMsIDExMDUzLCAxMTA2MywgMTEwNzMsIDExMDgzLCAxMTA5MiwgMTExMDIsIAorICAgIDExMTEyLCAxMTEyMiwgMTExMzIsIDExMTQyLCAxMTE1MiwgMTExNjIsIDExMTcyLCAxMTE4MiwgMTExOTEsIDExMjAxLCAKKyAgICAxMTIxMSwgMTEyMjEsIDExMjMxLCAxMTI0MSwgMTEyNTEsIDExMjYxLCAxMTI3MSwgMTEyODEsIDExMjkxLCAxMTMwMCwgCisgICAgMTEzMDYsIDExMzEwLCAxMTMxMywgMTEzMTcsIDExMzIyLCAxMTMyOSwgMTEzMzUsIDExMzQwLCAxMTM0NCwgMTEzNDksIAorICAgIDExMzU4LCAxMTM2NiwgMTEzNzEsIDExMzc1LCAxMTM3OSwgMTEzODUsIDExMzkwLCAxMTM5NiwgNzcyNSwgMTE0MDEsIAorICAgIDExNDA2LCAxMTQxNSwgNzczMCwgMTE0MjAsIDExNDIzLCAxMTQyOSwgMTE0MzcsIDc3MzUsIDExNDQ0LCAxMTQ0OCwgCisgICAgMTE0NTIsIDExNDU2LCAxMTQ2NiwgMTE0NzIsIDExNDc3LCAxMTQ4NiwgMTE0OTQsIDExNTAxLCAxMTUwOCwgMTE1MTMsIAorICAgIDExNTIwLCAxMTUyNSwgMTE1MjksIDExNTMyLCAxMTU0MywgMTE1NTMsIDExNTYyLCAxMTU3MCwgMTE1ODEsIDExNTkzLCAKKyAgICAxMTYwMywgMTE2MDgsIDExNjEyLCAxMTYxNywgMTE2MjIsIDExNjI2LCAxMTYzMiwgMTE2NDAsIDExNjQ3LCAxMTY1OCwgCisgICAgMTE2NjMsIDExNjczLCAxMTY4MiwgMTE2ODYsIDExNjg5LCAxMTY5NiwgMTE3MDYsIDExNzE1LCAxMTcyMiwgMTE3MjYsIAorICAgIDExNzMzLCAxMTczOSwgMTE3NDQsIDExNzQ5LCAxMTc1MywgMTE3NjIsIDExNzY3LCAxMTc3MywgMTE3NzcsIDExNzgyLCAKKyAgICAxMTc4NiwgMTE3OTUsIDExODAzLCAxMTgxMSwgMTE4MTgsIDExODI2LCAxMTgzOCwgMTE4NDksIDExODU5LCAxMTg2NiwgCisgICAgMTE4NzIsIDExODgxLCAxMTg5MiwgMTE5MDEsIDExOTEzLCAxMTkyNSwgMTE5MzcsIDExOTQ3LCAxMTk1NiwgMTE5NjUsIAorICAgIDExOTczLCAxMTk4MCwgMTE5ODksIDExOTk3LCAxMjAwMywgMTIwMDksIDEyMDE0LCA2MjI4LCAxMjAxOCwgMTIwMjAsIAorICAgIDEyMDI1LCAxMjAzMSwgMTIwNDAsIDEyMDQ4LCAxMjA1NSwgMTIwNjQsIDEyMDczLCAxMjA4MiwgMTIwOTEsIDEyMTAwLCAKKyAgICAxMjEwOSwgMTIxMTgsIDEyMTI3LCAxMjEzNywgMTIxNDcsIDEyMTU2LCAxMjE2MiwgMTIxNjksIDEyMTgzLCAxMjE5MCwgCisgICAgMTIxOTgsIDEyMjA3LCAxMjIxMywgMTIyMjIsIDEyMjMxLCAxMjI0MiwgMTIyNTIsIDEyMjYwLCAxMjI2NywgMTIyNzUsIAorICAgIDEyMjg0LCAxMjI5NywgMTIzMDUsIDEyMzEyLCAxMjMyNSwgMTIzMzEsIDEyMzM3LCAxMjM0NywgMTIzNTYsIDEyMzY1LCAKKyAgICAxMjM3MCwgMTIzNzQsIDEyMzgwLCAxMjM4NiwgMTIzOTMsIDc0MTEsIDEyMzk4LCAxMjQwMywgMTI0MTAsIDEyNDE1LCAKKyAgICAxMjQyMCwgMTI0MjQsIDEyNDMyLCAxMjQzOCwgMTI0NDMsIDEyNDUxLCAxMjQ1OSwgMTI0NjYsIDEyNDc0LCAxMjQ4MCwgCisgICAgMTI0ODgsIDEyNDk2LCAxMjUwMSwgMTI1MDcsIDEyNTE0LCAxMjUyMCwgMTI1MjUsIDEyNTI5LCAxMjU0MCwgMTI1NDgsIAorICAgIDEyNTU0LCAxMjU1OSwgMTI1NjgsIDEyNTc0LCAxMjU3OSwgMTI1ODgsIDEyNjAyLCAzNzk0LCAxMjYwNiwgMTI2MTEsIAorICAgIDEyNjE2LCAxMjYyMiwgMTI2MjcsIDEyNjMyLCAxMjYzNiwgMTI2NDEsIDEyNjQ2LCAxMjY1MSwgNjIyNywgMTI2NTYsIAorICAgIDEyNjYxLCAxMjY2NiwgMTI2NzEsIDEyNjc2LCAxMjY4MCwgMTI2ODUsIDEyNjkwLCAxMjY5NSwgMTI3MDAsIDEyNzA2LCAKKyAgICAxMjcxMiwgMTI3MTcsIDEyNzIxLCAxMjcyNiwgMTI3MzEsIDEyNzM2LCA3NzM5LCAxMjc0MSwgMTI3NDYsIDEyNzUxLCAKKyAgICAxMjc1NiwgMTI3NjEsIDEyNzc4LCAxMjc5NiwgMTI4MDgsIDEyODIxLCAxMjgzOCwgMTI4NTQsIDEyODcxLCAxMjg4MSwgCisgICAgMTI5MDAsIDEyOTExLCAxMjkyMiwgMTI5MzMsIDEyOTQ0LCAxMjk1NiwgMTI5NjcsIDEyOTc4LCAxMjk5NSwgMTMwMDYsIAorICAgIDEzMDE3LCAxMzAyMiwgMTMwMjcsIDIzNDAsIDEzMDMxLCAxMzAzNCwgMTMwNDAsIDEzMDQ4LCAxMzA1NiwgMTMwNjEsIAorICAgIDEzMDY5LCAxMzA3NywgMTMwODQsIDEzMDg5LCAxMzA5NSwgMTMxMDIsIDEzMTEwLCAxMzExNywgMTMxMjksIDEzMTM3LCAKKyAgICAxMzE0MiwgOTk4NSwgMTMxNDgsIDEzMTU3LCAxMzE2NiwgMTMxNzQsIDEzMTgxLCAxMzE4NywgMTMxOTUsIDEzMjAyLCAKKyAgICAxMzIwOCwgMTMyMTUsIDEzMjIxLCAxMzIzMCwgMTMyMzgsIDEzMjQ4LCAxMzI1NSwgMTMyNjEsIDEzMjY5LCAxMzI3NSwgCisgICAgMTMyODMsIDEzMjkwLCAxMzMwMywgMTMzMTAsIDEzMzE5LCAxMzMyOCwgMTMzMzcsIDEzMzQ1LCAxMzM1NSwgMTMzNjIsIAorICAgIDEzMzY3LCAzNTA4LCAxMzM3NCwgMTMzNzksIDEzMzgyLCAxMjY1NywgMTMzODYsIDEzMzkyLCAxMzM5NiwgMTM0MDQsIAorICAgIDEzNDE2LCAxMzQyMSwgMTM0MjgsIDEzNDM0LCAxMzQzOSwgMTM0NDYsIDEyNjYyLCAxMzQ1MCwgMTM0NTQsIDEyNjY3LCAKKyAgICAxMzQ1OCwgMTI2NzIsIDEzNDYyLCAxMzQ2OSwgMTM0NzQsIDEzNDc4LCAxMzQ4MiwgMTM0OTAsIDEzNDk3LCAxMzUwNCwgCisgICAgMTM1MjEsIDEzNTMwLCAxMzUzNCwgMTM1MzcsIDEzNTQ1LCAxMzU1MSwgMTM1NTYsIDM1ODYsIDEzNTYwLCAxMzU2MiwgCisgICAgMTM1NzAsIDEzNTc3LCAxMzU4NywgMTM1OTksIDEzNjA0LCAxMzYxMCwgMTM2MTUsIDEzNjE5LCAxMzYyNSwgMTM2MzAsIAorICAgIDEzNjM2LCAxMzYzOSwgMTM2NDYsIDEzNjU0LCAxMzY2MSwgMTM2NjcsIDEzNjczLCAxMzY3OCwgMTM2ODUsIDEzNjkxLCAKKyAgICAxMzY5NiwgMTM3MDMsIDEzNzA3LCAxMzcxMywgMTM3MTcsIDEzNzI0LCAxMzczMCwgMTM3MzYsIDEzNzQ0LCAxMzc1MCwgCisgICAgMTM3NTUsIDEzNzYxLCAxMzc2OSwgMTM3NzcsIDEzNzgzLCAxMzc4OSwgMTM3OTQsIDEzODAxLCAxMzgwNiwgMTM4MTAsIAorICAgIDEzODE2LCAxMzgyMSwgMTM4MjgsIDEzODMzLCAxMzgzOSwgMTM4NDIsIDEzODQ4LCAxMzg1NCwgMTM4NTcsIDEzODYxLCAKKyAgICAxMzg3MywgMTM4NzksIDEzODg0LCAxMzg5MSwgMTM4OTcsIDEzOTAzLCAxMzkxNCwgMTM5MjQsIDEzOTMzLCAxMzk0MSwgCisgICAgMTM5NDgsIDEzOTU5LCAxMzk2OSwgMTM5NzksIDEzOTg3LCAxMzk5MCwgMTI2ODYsIDEzOTk1LCAxNDAwMCwgMTI2OTEsIAorICAgIDEyODI2LCAxNDAwOCwgMTQwMjEsIDE0MDM2LCAxNDA0NywgMTI4NDMsIDE0MDY1LCAxNDA3OCwgMTQwOTEsIDE0MTAyLCAKKyAgICA4ODk3LCAxNDExMywgMTQxMjYsIDE0MTQ1LCAxNDE1NiwgMTQxNjcsIDE0MTc4LCAyNjA4LCAxNDE5MSwgMTQxOTUsIAorICAgIDE0MjAzLCAxNDIxNCwgMTQyMjEsIDE0MjI3LCAxNDIzNSwgMTQyMzksIDE0MjQ1LCAxNDI0OCwgMTQyNTgsIDE0MjY2LCAKKyAgICAxNDI3MywgMTQyODEsIDE0MjkxLCAxNDI5NiwgMTQzMDMsIDE0MzA4LCAxNDMxNSwgMTQzMjYsIDE0MzM2LCAxNDM0MiwgCisgICAgMTQzNDcsIDE0MzUyLCAxMjY5NiwgMTQzNTYsIDE0MzYyLCAxNDM2OCwgMTQzNzMsIDE0Mzc4LCAxNDM4MywgMTQzODcsIAorICAgIDEyNzAxLCAxMjcwNywgMTQzOTEsIDEyNzEzLCAxNDM5NiwgMTQ0MDQsIDE0NDEzLCAxNDQyMCwgNzU4OCwgMTQ0MjQsIAorICAgIDE0NDI2LCAxNDQzMSwgMTQ0MzYsIDE0NDQyLCAxNDQ0NywgMTQ0NTIsIDE0NDU3LCAxNDQ2MiwgMTQ0NjYsIDE0NDcyLCAKKyAgICAxNDQ3OCwgMTQ0ODMsIDE0NDg5LCAxNDQ5NCwgMTQ0OTksIDE0NTA1LCAxNDUxMCwgMTQ1MTUsIDE0NTIwLCAxNDUyNSwgCisgICAgMTQ1MzEsIDE0NTM2LCAxNDU0MSwgMTQ1NDcsIDE0NTUzLCAxNDU1OCwgMTQ1NjMsIDE0NTcwLCAxNDU3NiwgMTQ1ODcsIAorICAgIDE0NTk0LCAxNDU5OSwgMTQ2MDMsIDE0NjA3LCAxNDYxMCwgMTQ2MTgsIDE0NjIzLCAxNDYzMCwgMTQ2MzcsIDE0NjQzLCAKKyAgICAxNDY0OCwgMTQ2NTMsIDE0NjYwLCAxNDY3MCwgMTQ2NzUsIDE0NjgyLCAxNDY4OCwgMTQ2OTgsIDE0NzA4LCAxNDcyMiwgCisgICAgMTQ3MzYsIDE0NzUwLCAxNDc2NCwgMTQ3NzksIDE0Nzk0LCAxNDgxMSwgMTQ4MjksIDE0ODQyLCAxNDg0OCwgMTQ4NTMsIAorICAgIDE0ODU4LCAxNDg2MiwgMTQ4NjcsIDE0ODc1LCAxNDg4MSwgMTQ4ODYsIDE0ODkxLCAxNDg5NSwgMTQ5MDAsIDE0OTA0LCAKKyAgICAxNDkwOSwgMTQ5MTMsIDE0OTI0LCAxNDkzMCwgMTQ5MzUsIDE0OTQwLCAxNDk0NywgMTQ5NTIsIDE0OTU2LCAxNDk2MSwgCisgICAgMTQ5NjYsIDE0OTcyLCAxNDk3OSwgMTQ5ODUsIDE0OTkwLCAxNDk5NCwgMTUwMDAsIDE1MDA1LCAxNTAxMCwgMTUwMTQsIAorICAgIDE1MDIwLCAxNTAyNSwgMTUwMzAsIDE1MDM3LCAxNTA0MiwgMTE0NjgsIDE1MDQ2LCAxNTA1MSwgMTUwNTUsIDE1MDYwLCAKKyAgICAxNTA2NiwgMTUwNzIsIDE1MDc5LCAxNTA4OSwgMTUwOTcsIDE1MTA0LCAxNTEwOSwgMTUxMTMsIDE1MTIyLCAxNTEzMCwgCisgICAgMTUxMzcsIDE1MTQ0LCAxNTE1MCwgMTUxNTYsIDE1MTYxLCAxNTE2NiwgMTUxNzIsIDE1MTc3LCAxNTE4MywgMTUxODgsIAorICAgIDE1MTk0LCAxNTIwMCwgMTUyMDcsIDE1MjEzLCAxNTIxOCwgMTUyMjMsIDc3ODEsIDE1MjMyLCAxNTIzNSwgMTUyNDEsIAorICAgIDE1MjQ2LCAxNTI1MSwgMTUyNjEsIDE1MjY4LCAxNTI3NCwgMTUyNzksIDE1Mjg0LCAxNTI5MCwgMTUyOTUsIDE1MzAxLCAKKyAgICAxNTMwNiwgMTUzMTIsIDE1MzE4LCAxNTMyMywgMTUzMzEsIDE1MzM4LCAxNTM0MywgMTUzNDgsIDE1MzU0LCAxNTM1OSwgCisgICAgMTUzNjMsIDE1MzcyLCAxNTM4MywgMTUzOTAsIDE1Mzk1LCAxNTQwMywgMTU0MDksIDE1NDE2LCAxNTQyMiwgMTU0MjcsIAorICAgIDE1NDMxLCAxNTQzNywgMTU0NDIsIDE1NDQ3LCAxNTQ1MiwgNzc4NiwgNjI1MiwgMjgzNiwgMTU0NTYsIDE1NDYwLCAxNTQ2NCwgCisgICAgMTU0NjgsIDE1NDcyLCAxNTQ3NSwgMTU0ODIsIDE1NDkwLCAxMjcyNywgMTU0OTcsIDE1NTA3LCAxNTUxNSwgMTU1MjIsIAorICAgIDE1NTMwLCAxNTU0MCwgMTU1NDksIDE1NTYyLCAxNTU2NywgMTU1NzIsIDE1NTgwLCAxNTU4NywgMTE1NTgsIDExNTY3LCAKKyAgICAxNTU5NCwgMTU2MDQsIDE1NjE5LCAxNTYyNSwgMTU2MzIsIDE1NjM5LCAxNTY0NSwgMTU2NTUsIDE1NjY1LCAxMjczMiwgCisgICAgMTU2NzQsIDE1NjgwLCAxNTY4NiwgMTU2OTQsIDE1NzAyLCAxNTcwNywgMTU3MTYsIDE1NzI0LCAxNTczNiwgMTU3NDYsIAorICAgIDE1NzU2LCAxNTc2NiwgMTU3NzUsIDE1Nzg3LCAxNTc5NywgMTU4MDcsIDE1ODE4LCAxNTgyMywgMTU4MzUsIDE1ODQ3LCAKKyAgICAxNTg1OSwgMTU4NzEsIDE1ODgzLCAxNTg5NSwgMTU5MDcsIDE1OTE5LCAxNTkzMSwgMTU5NDMsIDE1OTU0LCAxNTk2NiwgCisgICAgMTU5NzgsIDE1OTkwLCAxNjAwMiwgMTYwMTQsIDE2MDI2LCAxNjAzOCwgMTYwNTAsIDE2MDYyLCAxNjA3NCwgMTYwODUsIAorICAgIDE2MDk3LCAxNjEwOSwgMTYxMjEsIDE2MTMzLCAxNjE0NSwgMTYxNTcsIDE2MTY5LCAxNjE4MSwgMTYxOTMsIDE2MjA1LCAKKyAgICAxNjIxNiwgMTYyMjgsIDE2MjQwLCAxNjI1MiwgMTYyNjQsIDE2Mjc2LCAxNjI4OCwgMTYzMDAsIDE2MzEyLCAxNjMyNCwgCisgICAgMTYzMzYsIDE2MzQ3LCAxNjM1OSwgMTYzNzEsIDE2MzgzLCAxNjM5NSwgMTY0MDcsIDE2NDE5LCAxNjQzMSwgMTY0NDMsIAorICAgIDE2NDU1LCAxNjQ2NywgMTY0NzgsIDE2NDkwLCAxNjUwMiwgMTY1MTQsIDE2NTI2LCAxNjUzOCwgMTY1NTAsIDE2NTYyLCAKKyAgICAxNjU3NCwgMTY1ODYsIDE2NTk4LCAxNjYwOSwgMTY2MjEsIDE2NjMzLCAxNjY0NSwgMTY2NTcsIDE2NjY5LCAxNjY4MSwgCisgICAgMTY2OTMsIDE2NzA1LCAxNjcxNywgMTY3MjksIDE2NzQwLCAxNjc1MiwgMTY3NjQsIDE2Nzc2LCAxNjc4OCwgMTY4MDEsIAorICAgIDE2ODE0LCAxNjgyNywgMTY4NDAsIDE2ODUzLCAxNjg2NiwgMTY4NzksIDE2ODkxLCAxNjkwNCwgMTY5MTcsIDE2OTMwLCAKKyAgICAxNjk0MywgMTY5NTYsIDE2OTY5LCAxNjk4MiwgMTY5OTUsIDE3MDA4LCAxNzAyMSwgMTcwMzMsIDE3MDQ2LCAxNzA1OSwgCisgICAgMTcwNzIsIDE3MDg1LCAxNzA5OCwgMTcxMTEsIDE3MTI0LCAxNzEzNywgMTcxNTAsIDE3MTYzLCAxNzE3NSwgMTcxODgsIAorICAgIDE3MjAxLCAxNzIxNCwgMTcyMjcsIDE3MjQwLCAxNzI1MywgMTcyNjYsIDE3Mjc5LCAxNzI5MiwgMTczMDUsIDE3MzE3LCAKKyAgICAxNzMzMCwgMTczNDMsIDE3MzU2LCAxNzM2OSwgMTczODIsIDE3Mzk1LCAxNzQwOCwgMTc0MjEsIDE3NDM0LCAxNzQ0NywgCisgICAgMTc0NTksIDE3NDcyLCAxNzQ4NSwgMTc0OTgsIDE3NTExLCAxNzUyNCwgMTc1MzcsIDE3NTUwLCAxNzU2MywgMTc1NzYsIAorICAgIDE3NTg5LCAxNzYwMSwgMTc2MTIsIDE3NjI1LCAxNzYzOCwgMTc2NTEsIDE3NjY0LCAxNzY3NywgMTc2OTAsIDE3NzAzLCAKKyAgICAxNzcxNiwgMTc3MjksIDE3NzQyLCAxNzc1NCwgMTc3NjcsIDE3NzgwLCAxNzc5MywgMTc4MDYsIDE3ODE5LCAxNzgzMiwgCisgICAgMTc4NDUsIDE3ODU4LCAxNzg3MSwgMTc4ODQsIDE3ODk2LCAxNzkwOSwgMTc5MjIsIDE3OTM1LCAxNzk0OCwgMTc5NjEsIAorICAgIDE3OTc0LCAxNzk4NywgMTgwMDAsIDE4MDEzLCAxODAyNiwgMTgwMzgsIDE4MDUxLCAxODA2NCwgMTgwNzcsIDE4MDkwLCAKKyAgICAxODEwMywgMTgxMTYsIDE4MTI5LCAxODE0MiwgMTgxNTUsIDE4MTY4LCAxODE4MCwgMTgxOTMsIDE4MjA2LCAxODIxOSwgCisgICAgMTgyMzIsIDE4MjQ1LCAxODI1OCwgMTgyNzEsIDE4Mjg0LCAxODI5NywgMTgzMTAsIDE4MzIyLCAxODMzNSwgMTgzNDgsIAorICAgIDE4MzYxLCAxODM3NCwgMTgzODcsIDE4NDAwLCAxODQxMywgMTg0MjYsIDE4NDM5LCAxODQ1MiwgMTg0NjQsIDE4NDc3LCAKKyAgICAxODQ5MCwgMTg1MDMsIDE4NTE2LCAxODUyOSwgMTg1NDIsIDE4NTU1LCAxODU2OCwgMTg1ODEsIDE4NTk0LCAxODYwNiwgCisgICAgMTg2MTksIDE4NjMyLCAxODY0NSwgMTg2NTgsIDE4NjcxLCAxODY4NCwgMTg2OTcsIDE4NzEwLCAxODcyMywgMTg3MzYsIAorICAgIDE4NzQ4LCAxODc2MSwgMTg3NzQsIDE4Nzg3LCAxODgwMCwgMTg4MTMsIDE4ODI2LCAxODgzOSwgMTg4NTIsIDE4ODY1LCAKKyAgICAxODg3OCwgMTg4OTAsIDE4OTAzLCAxODkxNiwgMTg5MjksIDE4OTQyLCAxODk1NSwgMTg5NjgsIDE4OTgxLCAxODk5NCwgCisgICAgMTkwMDcsIDE5MDIwLCAxOTAzMiwgMTkwNDMsIDE5MDUxLCAxOTA1OCwgMTkwNjQsIDE5MDY4LCAxOTA3NCwgMTkwODAsIAorICAgIDE5MDg4LCAxOTA5NCwgMTkwOTksIDE5MTAzLCAxOTExMiwgNzU5MywgMTkxMjMsIDE5MTMwLCAxOTEzOCwgMTkxNDUsIAorICAgIDE5MTUyLCA5MzQ1LCAxOTE1OSwgMTkxNjgsIDE5MTczLCAxOTE3OCwgNjI2OCwgMTkxODUsIDE5MTkwLCAxOTE5MywgCisgICAgMTkxOTgsIDE5MjA2LCAxOTIxMywgMTkyMjAsIDE5MjI3LCAxOTIzMywgMTkyNDIsIDE5MjUxLCAxOTI1NywgMTkyNjYsIAorICAgIDE5MjcyLCAxOTI3NywgMTkyODcsIDE5Mjk0LCAxOTMwMCwgMTkzMDgsIDE5MzE0LCAxOTMyMSwgMTkzMzEsIDE5MzQwLCAKKyAgICAxOTM0NCwgMTkzNTEsIDE5MzU1LCAxOTM2MCwgMTkzNjYsIDE5Mzc0LCAxOTM3OCwgMTkzODgsIDEyNzQyLCAxOTM5NywgCisgICAgMTk0MDMsIDE5NDA3LCAxOTQxNiwgMTI3NDcsIDE5NDIyLCAxOTQyOSwgMTk0NDAsIDE5NDQ4LCAxOTQ1NywgNzM3NiwgCisgICAgMTk0NjUsIDE5NDcwLCAxOTQ3NiwgMTk0ODEsIDE5NDg1LCAxOTQ4OSwgMTk0OTMsIDgwNzIsIDE5NDk4LCAxOTUwNiwgCisgICAgMTk1MTMsIDE5NTIyLCAxOTUyOSwgMTk1MzYsIDkyNzUsIDE5NTQzLCAxOTU0OSwgMTk1NTMsIDE5NTU5LCAxOTU2NSwgCisgICAgMTk1NzMsIDE5NTc5LCAxOTU4NiwgMTk1OTIsIDE5NTk4LCAxOTYwNywgMTk2MTEsIDE5NjE5LCAxOTYyOCwgMTk2MzUsIAorICAgIDE5NjQwLCAxOTY0NCwgMTk2NTUsIDE5NjYwLCAxOTY2NSwgMTk2NzAsIDE5NjgzLCA2NDU1LCAxOTY4NywgMTk2OTMsIAorICAgIDE5NzAxLCAxOTcwNSwgMTk3MTIsIDE5NzIxLCAxOTcyNiwgMTMwMTgsIDE5NzM0LCAxOTc0NiwgMTk3NTEsIDE5NzU1LCAKKyAgICAxOTc1OCwgMTk3NjQsIDE5NzcwLCAxOTc3NSwgMTk3NzksIDE5NzgyLCAxOTc5MywgMTk3OTgsIDc4MTYsIDE5ODA1LCAKKyAgICA3NjA0LCA3ODIxLCAxOTgxMCwgMTk4MTUsIDE5ODIwLCAxOTgyNSwgMTk4MzAsIDE5ODM1LCAxOTg0MCwgMTk4NDUsIAorICAgIDE5ODUwLCAxOTg1NSwgMTk4NjAsIDE5ODY1LCAxOTg3MSwgMTk4NzYsIDE5ODgxLCAxOTg4NiwgMTk4OTEsIDE5ODk2LCAKKyAgICAxOTkwMSwgMTk5MDYsIDE5OTExLCAxOTkxNiwgMTk5MjIsIDE5OTI4LCAxOTkzMywgMTk5MzgsIDE5OTQzLCAxOTk0OCwgCisgICAgMTk5NTMsIDE5OTU4LCAxOTk2MywgMTk5NjgsIDE5OTczLCAxOTk3OSwgMTk5ODQsIDE5OTg5LCAxOTk5NCwgMjAwMDAsIAorICAgIDIwMDA2LCAyMDAxMSwgMjAwMTYsIDIwMDIxLCAyMDAyNiwgMjAwMzEsIDIwMDM2LCAyMDA0MSwgMjAwNDYsIDIwMDUyLCAKKyAgICAyMDA1NywgMjAwNjIsIDIwMDY3LCAyMDA3MiwgMjAwNzgsIDIwMDgzLCAyMDA4OCwgMjAwOTIsIDEyOSwgMjAxMDAsIAorICAgIDIwMTA0LCAyMDEwOCwgMjAxMTIsIDIwMTE3LCAyMDEyMSwgMjAxMjUsIDEwODI5LCAyMDEyOSwgMjAxMzQsIDIwMTM4LCAKKyAgICAyMDE0MywgMjAxNDcsIDIwMTUyLCAyMDE1NiwgMjAxNjIsIDIwMTY3LCAyMDE3MSwgMjAxNzUsIDIwMTgzLCAyMDE4NywgCisgICAgMjAxOTEsIDIwMTk2LCAyMDIwMSwgMjAyMDUsIDIwMjExLCAyMDIxNiwgMjAyMjAsIDIwMjI1LCAyMDIzMCwgMjAyMzQsIAorICAgIDIwMjQxLCAyMDI0OCwgMjAyNTUsIDIwMjU5LCAyMDI2MywgMjAyNjgsIDIwMjcyLCAyMDI3NSwgMjAyODEsIDIwMjk0LCAKKyAgICAyMDI5OSwgMjAzMDgsIDIwMzEzLCA3ODYxLCAyMDMxOCwgMjAzMjEsIDI2NzEsIDI2NzYsIDIwMzI1LCAyMDMzMSwgMjAzMzcsIAorICAgIDIwMzQyLCAyMDM0NywgMjAzNTIsIDIwMzU4LCAyMDM2MywgMTIyMzgsIDIwMzY4LCAyMDM3MywgMjAzNzgsIDIwMzgzLCAKKyAgICAyMDM4OSwgMjAzOTQsIDIwMzk5LCAyMDQwNSwgMjA0MTAsIDIwNDE0LCAyMDQxOSwgMjA0MjQsIDIwNDI5LCAyMDQzNCwgCisgICAgMjA0MzgsIDIwNDQzLCAyMDQ0NywgMjA0NTIsIDIwNDU3LCAyMDQ2MiwgMjA0NjcsIDIwNDcxLCAyMDQ3NiwgMjA0ODAsIAorICAgIDIwNDg1LCAyMDQ5MCwgMjA0OTUsIDIwNTAwLCAyODQ1LCAyMDQxNSwgMjA1MDQsIDIwNTEyLCAyMDUxOSwgODE2NiwgCisgICAgMjA1MzEsIDIwNTM5LCAyMDQyMCwgMjA1NDYsIDIwNTUxLCAyMDU1OSwgMjA0MjUsIDIwNTY0LCAyMDU2OSwgMjA1NzcsIAorICAgIDIwNTgyLCAyMDQzMCwgMjA1ODcsIDIwNTkyLCAyMDU5NiwgMjA2MDIsIDIwNjA1LCAyMDYxMiwgMjA2MTYsIDIwNjIwLCAKKyAgICAyMDYyNiwgMjA2MzMsIDIwNjM4LCA3NDAzLCAxNjkxLCAxNjk2LCAyMDY0MiwgMjA2NDgsIDIwNjU0LCAyMDY1OSwgMjA2NjMsIAorICAgIDIwNjY3LCAyMDY3MSwgMjA2NzQsIDIwNjgwLCAyMDY4NywgMjA2OTUsIDIwNzAxLCAyMDcwNywgMjA3MTIsIDIwNzE3LCAKKyAgICAyMDcyMSwgMTMxMTIsIDEzOTY1LCAyMDcyNiwgMjA3MzgsIDIwNzQxLCAyMDc0OCwgMTQ2MzksIDIwNzU1LCAyMDc2MywgCisgICAgMjA3NzQsIDIwNzgzLCAyMDc5NiwgMjA4MDYsIDIwODIwLCAyMDgzMiwgMjA4NDYsIDIwODU4LCAyMDg2OCwgMjA4ODAsIAorICAgIDIwODg2LCAyMDkwMSwgMjA5MjUsIDIwOTQzLCAyMDk2MiwgMjA5NzUsIDIwOTg5LCAyMTAwNywgMjEwMjMsIDIxMDQwLCAKKyAgICAyMTA1OCwgMjEwNjksIDIxMDg4LCAyMTEwNSwgMjExMjUsIDIxMTQzLCAyMTE1NSwgMjExNjksIDIxMTgzLCAyMTE5NSwgCisgICAgMjEyMTIsIDIxMjMxLCAyMTI0OSwgMjEyNjEsIDIxMjc5LCAyMTI5OCwgMTI4ODYsIDIxMzExLCAyMTMzMSwgMjEzNDMsIAorICAgIDg5MjgsIDIxMzU1LCAyMTM2MCwgMjEzNjUsIDIxMzcwLCAyMTM3NiwgMjEzODEsIDIxMzg1LCAyMTM5MiwgMjM1NywgCisgICAgMjEzOTYsIDIxNDAyLCAyMTQwNiwgMjE0MDksIDIxNDEzLCAyMTQyMSwgMjE0MjcsIDIwNDQ4LCAyMTQzMSwgMjE0NDAsIAorICAgIDIxNDUxLCAyMTQ1NywgMjE0NjMsIDIxNDcyLCAyMTQ4MCwgMjE0ODcsIDIxNDkyLCAyMTQ5OSwgMjE1MDUsIDIxNTE0LCAKKyAgICAyMTUyMiwgMjE1MjksIDIxNTM5LCAyMTU0OCwgMjE1NTgsIDIxNTYzLCAyMTU3MiwgMjE1ODEsIDIxNTkyLCAyMTYwMywgCisgICAgMzg5MywgMjE2MTMsIDIxNjE3LCAyMTYyNywgMjE2MzUsIDIxNjQ1LCAyMTY1NiwgMjE2NjEsIDIxNjY5LCAyMTY3NiwgCisgICAgMjE2ODIsIDIxNjg3LCAyMDQ1OCwgMjE2OTEsIDIxNzAwLCAyMTcwNCwgMjE3MDcsIDIxNzEyLCAyMTcxOSwgMjE3MjgsIAorICAgIDIxNzM2LCAyMTc0NCwgMjE3NTQsIDIxNzYzLCAyMTc2OSwgMjE3NzUsIDIwNDYzLCAyMDQ2OCwgMjE3NzksIDIxNzg5LCAKKyAgICAyMTc5OSwgMjE4MDksIDIxODE3LCAyMTgyNCwgMjE4MzQsIDIxODQyLCAyMTg1MCwgMjE4NTYsIDk4MiwgMjE4NjUsIAorICAgIDEzMDczLCA1NDIsIDIxODc5LCAyMTg4OCwgMjE4OTYsIDIxOTA3LCAyMTkxOCwgMjE5MjgsIDIxOTM3LCAyMTk0OSwgCisgICAgMjE5NTgsIDIxOTY3LCAyMTk3MywgMjE5ODIsIDIxOTkxLCAyMjAwMSwgMjIwMDksIDIyMDE3LCA3NzkzLCAyMjAyMywgCisgICAgMjIwMjYsIDIyMDMwLCAyMjAzNSwgMjIwNDAsIDgyODEsIDIwNDgxLCAyMDQ4NiwgMjIwNDgsIDIyMDU0LCAyMjA2MCwgCisgICAgMjIwNjUsIDIyMDcwLCAyMjA3NCwgMjIwODIsIDIyMDg4LCAyMjA5NCwgMjIwOTgsIDM0ODAsIDIyMTA2LCAyMjExMSwgCisgICAgMjIxMTYsIDIyMTIwLCAyMjEyNCwgODM1MywgMjIxMzEsIDIyMTM5LCAyMjE0NiwgMjIxNTIsIDgzNjIsIDgzNjgsIDIyMTYwLCAKKyAgICAyMjE2OCwgMjIxNzUsIDIyMTgwLCAyMjE4NSwgMjA0OTEsIDIyMTkxLCAyMjIwMiwgMjIyMDcsIDI1NjAsIDIyMjEyLCAKKyAgICAyMjIyMywgMjIyMjksIDIyMjM0LCAyMjIzOCwgMjIyNDIsIDIyMjQ1LCAyMjI1MiwgMjIyNTksIDIyMjY2LCAyMjI3MiwgCisgICAgMjIyNzYsIDIwNDk2LCAyMjI4MSwgMjIyODUsIDk5OSwgMjIyODksIDIyMjk0LCAyMjI5OSwgMjIzMDQsIDIyMzA5LCAKKyAgICAyMjMxNCwgMjIzMTksIDIyMzI0LCAyMjMyOSwgMjIzMzQsIDIyMzM5LCAyMjM0NCwgMjIzNDksIDIyMzU0LCAyMjM2MCwgCisgICAgMjIzNjUsIDIyMzcwLCAyMjM3NSwgMjIzODAsIDIyMzg1LCAyMjM5MCwgMjIzOTYsIDIyNDAxLCAyMjQwNiwgMjI0MTEsIAorICAgIDIyNDE2LCAyMjQyMSwgMjI0MjYsIDIyNDMxLCAyMjQzNywgMjI0NDMsIDIyNDQ4LCAyMjQ1NCwgMjI0NTksIDIyNDY0LCA1LCAKKyAgICAyMjQ3MCwgMjI0NzQsIDIyNDc4LCAyMjQ4MiwgMjI0ODcsIDIyNDkxLCAyMjQ5NSwgMjI0OTksIDIyNTAzLCAyMjUwOCwgCisgICAgMjI1MTIsIDIyNTE3LCAyMjUyMSwgMjI1MjQsIDIyNTI4LCAyMjUzMywgMjI1MzcsIDIyNTQyLCAyMjU0NiwgMjI1NTAsIAorICAgIDIyNTU0LCAyMjU1OSwgMjI1NjMsIDIyNTY3LCAyMjU3NywgMjI1ODIsIDIyNTg2LCAyMjU5MCwgMjI1OTUsIDIyNjAwLCAKKyAgICAyMjYwOSwgMjI2MTQsIDIyNjE5LCAyMjYyMywgMjI2MjcsIDIyNjQwLCAyMjY1MiwgMjI2NjEsIDIyNjcwLCAyMjY3NiwgCisgICAgMjI2ODEsIDIyNjg1LCAyMjY4OSwgMjI2OTksIDIyNzA4LCAyMjcxNiwgMjI3MjIsIDIyNzI3LCAyMjczMSwgMjI3MzgsIAorICAgIDIyNzQ4LCAyMjc1NywgMjI3NjUsIDIyNzczLCAyMjc4MCwgMjI3ODgsIDIyNzk3LCAyMjgwNiwgMjI4MTQsIDIyODE5LCAKKyAgICAyMjgyMywgMjI4MjcsIDIyODMwLCAyMjgzMiwgMjI4MzYsIDIyODQwLCAyMjg0NSwgMjI4NTAsIDIyODU0LCAyMjg1OCwgCisgICAgMjI4NjEsIDIyODY1LCAyMjg2OCwgMjI4NzIsIDIyODc1LCAyMjg3OCwgMjI4ODIsIDIyODg4LCAyMjg5MiwgMjI4OTYsIAorICAgIDIyOTAwLCAyMjkwNSwgMjI5MTAsIDIyOTE1LCAyMjkxOSwgMjI5MjIsIDIyOTI3LCAyMjkzMywgMjI5MzgsIDIyOTQ0LCAKKyAgICAyMjk0OSwgMjI5NTMsIDIyOTU3LCAyMjk2MSwgMjI5NjYsIDIyOTcwLCAyMjk3NSwgMjI5NzksIDIyOTg2LCAyMjk5MCwgCisgICAgMjI5OTMsIDIyOTk3LCAyMzAwMywgMjMwMDksIDIzMDEzLCAyMzAxNywgMjMwMjIsIDIzMDI5LCAyMzAzNSwgMjMwMzksIAorICAgIDIzMDQ4LCAyMzA1MiwgMjMwNTYsIDIzMDU5LCAyMzA2NSwgMjMwNzAsIDIzMDc2LCAxNDUzLCAxNzU1LCAyMzA4MSwgCisgICAgMjMwODYsIDIzMDkxLCAyMzA5NiwgMjMxMDEsIDIzMTA2LCAyMzExMSwgMjEwNywgMjE1MywgMjMxMTYsIDIzMTE5LCAKKyAgICAyMzEyMywgMjMxMjcsIDIzMTMyLCAyMzEzNiwgMjMxNDAsIDIzMTQzLCAyMzE0OCwgMjMxNTMsIDIzMTU3LCAyMzE2MCwgCisgICAgMjMxNjUsIDIzMTY5LCAyMzE3NCwgMjMxNzgsIDEzMDg1LCAyMzE4MywgMjMxODYsIDIzMTg5LCAyMzE5MywgMjMxOTgsIAorICAgIDIzMjAyLCAyMzIxNSwgMjMyMTksIDIzMjIyLCAyMzIzMCwgMjMyMzksIDIzMjQ2LCAyMzI1MSwgMjMyNTcsIDIzMjYzLCAKKyAgICAyMzI3MCwgMjMyNzcsIDIzMjgxLCAyMzI4NSwgMjMyODksIDIzMjk0LCAyMzI5OSwgMjMzMDMsIDIzMzExLCAyMzMxNiwgCisgICAgMjMzMjgsIDIzMzM5LCAyMzM0NCwgMjMzNDgsIDIzMzUyLCAyMzM1OCwgMjMzNjMsIDIzMzY4LCAyMzM3MiwgMjMzNzUsIAorICAgIDIzMzgxLCA2Mzc1LCAyMjc1LCAyMzM4NSwgMjMzOTAsIDIzNDA2LCA3OTA4LCAyMzQyNiwgMjM0MzUsIDIzNDUxLCAyMzQ1NSwgCisgICAgMjM0NTgsIDIzNDY0LCAyMzQ3NCwgMjM0ODAsIDIzNDk1LCAyMzUwNywgMjM1MTgsIDIzNTI2LCAyMzUzNSwgMjM1NDEsIAorICAgIDIzNTUwLCAyMzU2MCwgMjM1NzEsIDIzNTgyLCAyMzU5MSwgMjM2MDAsIDIzNjA4LCAyMzYxNSwgMjM2MjMsIDIzNjM2LCAKKyAgICAyMzY0MywgMjM2NDksIDIzNjU0LCAyMzY2MywgMjM2NjksIDIzNjc0LCAyMzY4MiwgMjE2MzcsIDIzNjk0LCAyMzcwNiwgCisgICAgMjM3MjAsIDIzNzI4LCAyMzczNSwgMjM3NDcsIDIzNzU2LCAyMzc2NSwgMjM3NzMsIDIzNzgxLCAyMzc4OSwgMjM3OTYsIAorICAgIDIzODA1LCAyMzgxMywgMjM4MjMsIDIzODMyLCAyMzg0MiwgMjM4NTEsIDIzODYwLCAyMzg2OCwgMjM4NzMsIDIzODc3LCAKKyAgICAyMzg4MCwgMjM4ODQsIDIzODg4LCAyMzg5MiwgMjM4OTYsIDIzOTAwLCAyMzkwNiwgMjM5MTIsIDIzOTIwLCAxMzEzMCwgCisgICAgMjM5MjcsIDIzOTMyLCAyMzkzOSwgMjM5NDUsIDIzOTUyLCAxMzEzOCwgMjM5NTksIDIzOTYyLCAyMzk3NCwgMjM5ODIsIAorICAgIDIzOTg4LCAyMzk5MywgMjM5OTcsIDgzMTEsIDI0MDA4LCAyNDAxOCwgMjQwMjcsIDI0MDM0LCAyNDAzOCwgMTMxNDMsIAorICAgIDI0MDQxLCAyNDA0OCwgMjQwNTIsIDI0MDU4LCAyNDA2MSwgMjQwNjgsIDI0MDc0LCAyNDA3OCwgMjQwODMsIDI0MDg3LCAKKyAgICAyNDA5NiwgMjQxMDMsIDI0MTA5LCA2NDE2LCAyNDExNiwgMjQxMjQsIDI0MTMxLCAyNDEzNywgMjQxNDIsIDI0MTQ4LCAKKyAgICAyNDE1NCwgMjQxNjIsIDI0MTY2LCAyNDE2OSwgMjQxNzEsIDIzODg1LCAyNDE4MCwgMjQxODYsIDI0MTk2LCAyNDIwMSwgCisgICAgMjQyMDgsIDI0MjE0LCAyNDIxOSwgMjQyMjQsIDI0MjI5LCAyNDIzNCwgMjQyNDEsIDI0MjUwLCAyNDI1NywgMjQyNjYsIAorICAgIDI0MjcyLCAyNDI3NywgMjQyODMsIDI0Mjg4LCAyNDI5NSwgMjQzMDYsIDI0MzExLCAyNDMxNSwgMjQzMjUsIDI0MzMxLCAKKyAgICAyNDMzNSwgMjQzNDAsIDI0MzUwLCAyNDM1OSwgMjQzNjMsIDI0MzcwLCAyNDM3OCwgMjQzODUsIDI0MzkxLCAyNDM5NiwgCisgICAgMjQ0MDQsIDI0NDExLCAyNDQyMywgMjQ0MzIsIDI0NDM2LCAxMTQxMCwgMjQ0NDQsIDI0NDU0LCAyNDQ1OCwgMjMyMjYsIAorICAgIDI0NDY5LCAyNDQ3NCwgMjQ0NzgsIDI0NDg1LCAyNDQ5MiwgMjAyMDcsIDIzODEwLCAyNDQ5NywgMjQ1MDEsIDI0NTA0LCAKKyAgICAyMTA3NSwgMjQ1MDksIDI0NTIzLCAyNDUzOSwgMjQ1NTcsIDI0NTc2LCAyNDU5MywgMjQ2MTEsIDIxMDk0LCAyNDYyOCwgCisgICAgMjQ2NDgsIDIxMTExLCAyNDY2MCwgMjQ2NzIsIDE0MDUyLCAyNDY4NCwgMjExMzEsIDI0Njk4LCAyNDcxMCwgODk0MSwgCisgICAgMjQ3MjQsIDI0NzI5LCAyNDczNCwgMjQ3MzksIDI0NzQ1LCAyNDc1MSwgMjQ3NTcsIDI0NzYxLCAyNDc2OCwgMjQ3NzMsIAorICAgIDI0NzgzLCAyNDc4OSwgODU5NCwgMjQ3OTUsIDI0Nzk3LCAyNDgwMiwgMjQ4MTAsIDI0ODE0LCAyNDIzNywgMjQ4MjAsIAorICAgIDI0ODI3LCA5OTIxLCA5OTMxLCAyNDgzNCwgMjQ4NDQsIDI0ODQ5LCAyNDg1MywgMjQ4NTYsIDI0ODYyLCAyNDg3MCwgCisgICAgMjQ4ODIsIDI0ODkyLCAyNDkwOCwgMjQ5MjEsIDI0OTM1LCAxNDA3MCwgMjQ5NDksIDI0OTU2LCAyNDk2MCwgMjQ5NjMsIAorICAgIDI0OTY4LCAyNDk3MiwgMjQ5NzksIDI0OTg2LCAyNDk5NiwgMjUwMDEsIDI1MDA2LCAyNTAxMSwgMjUwMTksIDI1MDI3LCAKKyAgICAyNTAzNiwgMjUwNDEsIDgwMDUsIDI1MDQ1LCAyNTA0OCwgMjUwNTEsIDI1MDU2LCAyNTA2MywgMjUwNjgsIDI1MDg0LCAKKyAgICAyNTA5MiwgMjUxMDAsIDc4NTYsIDI1MTA4LCAyNTExMywgMjUxMTcsIDI1MTIzLCAyNTEyOSwgMjUxMzIsIDI1MTM4LCAKKyAgICAyNTE1MCwgMjUxNTgsIDI1MTY1LCAyNTE3MSwgMjUxNzgsIDI1MTg5LCAyNTIwMywgMjUyMTYsIDI1MjI1LCAyNTIzNywgCisgICAgMjUyNDgsIDI1MjU4LCAyNTI2NywgMjUyNzYsIDI1Mjg0LCAyNTI5NSwgNjM5OCwgMjUzMDIsIDI1MzA4LCAyNTMxMywgCisgICAgMjUzMTksIDI1MzI2LCAyNTMzNiwgMjUzNDYsIDI1MzU1LCAyNTM2MSwgMjUzNjgsIDI1MzczLCAyNTM4MCwgMjUzODgsIAorICAgIDI1Mzk2LCAyNTQwOCwgNDcyNSwgMjU0MTUsIDI1NDI0LCAyNTQzMiwgMjU0MzgsIDI1NDQ0LCAyNTQ0OSwgMjU0NTMsIAorICAgIDI1NDU2LCAyNTQ2MiwgMjU0NjksIDI1NDc0LCAyNTQ3OSwgMjU0ODMsIDI1NDk1LCAyNTUwNiwgMjU1MTUsIDI1NTIzLCAKKyAgICAxMzI3MCwgMjU1MjgsIDI1NTM0LCAyNTU0MCwgOTkxNCwgNzA4NiwgMjU1NDUsIDI1NTQ4LCAyNTU1MSwgMjU1NTcsIAorICAgIDI1NTY1LCAyNTU3MywgMjU1NzcsIDI1NTgxLCAyNTU4NiwgMjU1ODksIDI1NTk4LCAyNTYwMiwgMjU2MTAsIDI1NjIxLCAKKyAgICAyNTYyNSwgMjU2MzEsIDI1NjM3LCAyNTY0MSwgMjU2NDcsIDI1NjU1LCAyNTY3NywgMjU3MDEsIDI1NzA4LCAyNTcxNSwgCisgICAgMjU3MjEsIDI1NzI3LCAyNTczMiwgMjU3NDMsIDI1NzYxLCAyNTc2OCwgMjU3NzYsIDI1NzgwLCAyNTc4OSwgMjU4MDIsIAorICAgIDI1ODEwLCAyNTgyMiwgMjU4MzMsIDI1ODQzLCAyNTg1NywgMjU4NjYsIDI1ODc0LCAyNTg4NiwgNzkyNSwgMjU4OTcsIAorICAgIDI1OTA4LCAyNTkyMCwgMjU5MzAsIDI1OTM5LCAyNTk0NCwgMjU5NDgsIDI1OTU2LCAyNTk2NiwgMjU5NzEsIDI1OTc1LCAKKyAgICAyNTk3OCwgMjU5ODEsIDI1OTg5LCAyNTk5NywgMjYwMDYsIDI2MDE2LCAyNjAyNSwgMjYwMzEsIDI2MDQ1LCAyNjIyLCAKKyAgICAyNjA2NywgMjYwNzgsIDI2MDg3LCAyNjA5NywgMjYxMDksIDI2MTE4LCAyNjEyOCwgMjYxMzYsIDI2MTQ0LCAyNjE1MywgCisgICAgMjYxNTgsIDI2MTY5LCAyNjE3NCwgMjYxODUsIDI2MTg5LCAyNjE5OSwgMjYyMDgsIDI2MjE2LCAyNjIyNiwgMjYyMzYsIAorICAgIDI2MjQ0LCAyNjI1MywgMjYyNjAsIDI2MjY4LCAyNjI3NSwgMjYyODQsIDI2Mjg4LCAyNjI5NiwgMjYzMDMsIDI2MzExLCAKKyAgICAyNjMxOCwgMjYzMjksIDI2MzQ0LCAyNjM1MSwgMjYzNTcsIDI2MzY3LCAyNjM3NiwgMjYzODIsIDI2Mzg2LCAyNjM5MywgCisgICAgMTIzNjAsIDI2Mzk5LCAyNjQwMywgMjY0MDgsIDI2NDEyLCAyNjQxNiwgMjY0MjQsIDI2NDMyLCAyNjQzOCwgMjY0NDcsIAorICAgIDI2NDU0LCAyNjQ1OSwgMjY0NjQsIDI2NDc0LCAyMTY4OSwgMjY0NzgsIDI2NDgxLCAyNjQ4NiwgMjY0OTEsIDI2NDk2LCAKKyAgICAyNjUwMSwgMjY1MDYsIDI2NTExLCAyNjUxNiwgMjY1MjEsIDI2NTI3LCAyNjUzMiwgMjY1MzcsIDI2NTQzLCAxMjI0LCA2ODQsIAorICAgIDI2NTQ4LCAyNjU1NywgMjMyMywgMjY1NjQsIDI2NTY5LCAyNjU3MywgMjY1NzksIDEyNTcsIDU0NiwgMzM4LCAyNjU4NCwgCisgICAgMjY1OTMsIDI2NjAxLCAyNjYxMCwgMjY2MTgsIDI2NjI5LCAyNjYzOCwgMjY2NDYsIDI2NjUwLCAyNjY1MywgMjY2NjEsIAorICAgIDI2NjY5LCAyNjY3NCwgMTMwOTgsIDI2NjgwLCAyNjY4NiwgMjY2OTIsIDQzNjcsIDI2Njk3LCAyNjcwMSwgMjY3MDcsIAorICAgIDI2NzExLCAyNjcxOCwgMTQxOSwgMjY3MjQsIDgwMTIsIDI2NzMxLCAyNjc0MSwgMjY3NDksIDI2NzU1LCAyNjc2NCwgCisgICAgMjY3NzIsIDI2Nzc4LCAyNjc4NiwgMjY3OTMsIDk1MDcsIDI2Nzk5LCAyNjgwNiwgMjY4MTMsIDE0NjAsIDIxMDYsIDI2ODE5LCAKKyAgICAyNjgyNSwgMjY4MzIsIDI2ODQzLCAyNjg1NCwgMjY4NjIsIDI2ODY5LCAyNjg3OSwgMjY4ODgsIDI2ODk2LCAyNjkwMywgCisgICAgMjY5MTAsIDI2OTIzLCAyNjkzNCwgMTI2MiwgMjY5NTMsIDI2OTU4LCAyNjk2NiwgMzUyMywgMjY5NzAsIDI2OTc1LCAKKyAgICAyNjk3OSwgMTQyMywgMjI4NTksIDI2OTg5LCAyNjk5MywgMjY5OTgsIDI3MDAyLCAzNDQ4LCAyNzAwOCwgMjcwMTYsIAorICAgIDI3MDIzLCAyNzAzNCwgMjcwNDIsIDI3MDUwLCAzNTI0LCAyNzQsIDI3MDU1LCAyNzA2MywgMjcwNzEsIDI3MDc4LCAyNzA4NCwgCisgICAgMjcwODksIDIxNzUsIDI3MDk2LCAyNzEwMiwgMjQwNzksIDI0MzAxLCAyNzEwOCwgMTA2LCAyNzExMiwgMjcxMTYsIDI3MTIyLCAKKyAgICA2MTEsIDc3NjEsIDI3MTI3LCAyNzEzNCwgMjcxNDAsIDIyODYsIDI3MTQ0LCAyNzE0OCwgMjcxNTEsIDI3MTU0LCAyNzE1OSwgCisgICAgMjcxNjYsIDI3MTcyLCAyNzE3NywgMjcxODUsIDI3MTkyLCAyNzE5OCwgMjA1ODQsIDI3MjAyLCAzNTk0LCAxNDkwMiwgCisgICAgMjcyMDYsIDI3MjExLCAyNzIxNCwgMjcyMjIsIDI3MjMwLCAyNzIzMywgMjcyNDAsIDI3MjUwLCAyNzI2MiwgMjcyNjcsIAorICAgIDI3MjcxLCAyNzI3OSwgMjcyODYsIDI3MjkyLCAyNzI5OSwgMjczMDYsIDI3MzA5LCAyNzMxMywgMjczMTcsIDE0MjcsIAorICAgIDI3MzI3LCAyNzMyOSwgMjczMzQsIDI3MzQwLCAyNzM0NiwgMjczNTEsIDI3MzU2LCAyNzM2MSwgMjczNjYsIDI3MzcxLCAKKyAgICAyNzM3NiwgMjczODEsIDI3Mzg2LCAyNzM5MSwgMjczOTYsIDI3NDAxLCAyNzQwNiwgMjc0MTEsIDI3NDE2LCAyNzQyMiwgCisgICAgMjc0MjgsIDI3NDM0LCAyNzQ0MCwgMjc0NDUsIDI3NDUwLCAyNzQ1NSwgMjc0NjEsIDI3NDY2LCAyNzQ3MSwgMjc0NzYsIAorICAgIDI3NDgyLCAyNzQ4NywgMjc0OTMsIDI3NDk4LCAyNzUwMywgMjc1MDgsIDI3NTEzLCAyNzUxOSwgMjc1MjQsIDI3NTMwLCAKKyAgICAyNzUzNSwgMjc1NDAsIDI3NTQ1LCAyNzU1MCwgMjc1NTYsIDI3NTYxLCAyNzU2NywgMjc1NzIsIDI3NTc3LCAyNzU4MiwgCisgICAgMjc1ODcsIDI3NTkyLCAyNzU5NywgMjc2MDIsIDI3NjA3LCAyNzYxMiwgMjc2MTgsIDI3NjI0LCAyNzYzMCwgMjc2MzUsIAorICAgIDI3NjQwLCAyNzY0NSwgMjc2NTAsIDI3NjU2LCAyNzY2MiwgMjc2NjgsIDI3Njc0LCAyNzY4MCwgMjc2ODYsIDI3NjkxLCAKKyAgICAyNzY5NywgMjc3MDIsIDI3NzA3LCAyNzcxMiwgMjc3MTcsIDI3NzIzLCAyNDAyLCAyNzcyOCwgMjQwOSwgMjQxNiwgMjcxMywgCisgICAgMjc3MzMsIDI0MjIsIDI0MzIsIDI3NzM5LCAyNzc0MywgMjc3NDgsIDI3NzUzLCAyNzc1OSwgMjc3NjQsIDI3NzY5LCAKKyAgICAyNzc3MywgMjc3NzgsIDI3Nzg0LCAyNzc4OSwgMjc3OTQsIDI3Nzk5LCAyNzgwNSwgMjc4MTAsIDI3ODE0LCAyNzgxOCwgCisgICAgMjc4MjMsIDI3ODI4LCAyNzgzMywgMjc4MzgsIDI3ODQzLCAyNzg0OSwgMjc4NTUsIDI3ODYwLCAyNzg2NCwgMjc4NjksIAorICAgIDI3ODc1LCAyNzg3OSwgMjc4ODQsIDI3ODg5LCAyNzg5NCwgMjc4OTksIDI3OTAzLCAyNzkwNiwgMjc5MTEsIDI3OTE2LCAKKyAgICAyNzkyMSwgMjc5MjYsIDI3OTMxLCAyNzkzNywgMjc5NDMsIDI3OTQ4LCAyNzk1MywgMjc5NTcsIDI3OTYyLCAyNzk2NywgCisgICAgMjc5NzIsIDI3OTc3LCAyNzk4MiwgMjc5ODYsIDI3OTkxLCAyNzk5NiwgMjgwMDEsIDI4MDA1LCAyODAwOSwgMjgwMTMsIAorICAgIDI4MDE4LCAyODAyNiwgMjgwMzEsIDI4MDM3LCAyODA0MywgMjgwNDksIDI4MDU0LCAyODA1OCwgMjgwNjEsIDI4MDY2LCAKKyAgICAyODA3MCwgMjgwNzUsIDI4MDc5LCAyODA4NCwgMjgwODgsIDI4MDkxLCAyODA5NiwgMTU1NzUsIDI4MTAxLCAyODEwNiwgCisgICAgMjgxMTQsIDE5NTI1LCAyNjcyOCwgNzQ2NCwgMjgxMTksIDI4MTI0LCAyODEyOCwgMjgxMzMsIDI4MTM3LCAyODE0MSwgCisgICAgMjgxNDYsIDI4MTUwLCAyODE1MywgMjgxNTYsIDI4MTYwLCAyODE2NSwgMjgxNjksIDI4MTc3LCAyODE4MSwgMjgxODQsIAorICAgIDI4MTg5LCAyODE5MywgMjgxOTcsIDI4MjAyLCAyODIwNywgMjgyMTEsIDI4MjE3LCAyODIyMiwgMjgyMjcsIDI4MjM0LCAKKyAgICAyODI0MSwgMjgyNDUsIDI4MjQ4LCAyODI1NCwgMjgyNjMsIDI4MjcwLCAyODI3OCwgMjgyODUsIDI4Mjg5LCAyODI5NCwgCisgICAgMjgyOTgsIDI4MzA0LCAyODMxMCwgMjgzMTQsIDI4MzIwLCAyODMyNSwgMjgzMzAsIDI4MzM3LCAyODM0MywgMjgzNDksIAorICAgIDI4MzU1LCAyODM2MSwgMjgzNjgsIDI4Mzc0LCAyODM4MCwgMjgzODYsIDI4MzkyLCAyODM5OCwgMjg0MDQsIDI4NDEwLCAKKyAgICAyODQxNywgMjg0MjMsIDI4NDMwLCAyODQzNiwgMjg0NDIsIDI4NDQ4LCAyODQ1NCwgMjg0NjAsIDI4NDY2LCAyODQ3MiwgCisgICAgMjg0NzgsIDI4NDg0LCA5ODE1LCAyODQ5MCwgMjg0OTUsIDI4NTAwLCAyODUwMywgMjg1MTEsIDI4NTE2LCAyODUyNSwgCisgICAgMjg1MzEsIDI4NTM2LCAyODU0MSwgMjg1NDYsIDI4NTUwLCAyODU1NSwgMjg1NjAsIDI4NTY1LCAyODU3MCwgMjg1NzUsIAorICAgIDI4NTgyLCAyODU4OSwgMjg1OTUsIDI4NjAxLCAyODYwNiwgMTQ1ODAsIDI4NjEzLCAyODYxOSwgMjg2MjYsIDI4NjMyLCAKKyAgICAyODYzOCwgMjg2NDMsIDI4NjUxLCAyODY1NiwgMTQzNTksIDI4NjYwLCAyODY2NSwgMjg2NzAsIDI4Njc2LCAyODY4MSwgCisgICAgMjg2ODYsIDI4NjkwLCAyODY5NSwgMjg3MDAsIDI4NzA2LCAyODcxMSwgMjg3MTYsIDI4NzIwLCAyODcyNSwgMjg3MzAsIAorICAgIDI4NzM0LCAyODczOSwgMjg3NDQsIDI4NzQ5LCAyODc1MywgMjg3NTgsIDI4NzYzLCAyODc2OCwgMjg3NzIsIDI4Nzc2LCAKKyAgICAxMzYwMCwgMjg3ODAsIDI4Nzg5LCAyODc5NSwgMjg4MDEsIDI4ODEwLCAyODgxOCwgMjg4MjcsIDI4ODM1LCAyODg0MCwgCisgICAgMjg4NDQsIDI4ODUxLCAyODg1NywgMjg4NjEsIDI4ODY0LCAyODg2OSwgMjg4NzgsIDI4ODg2LCAyODg5MSwgMTQ1OSwgCisgICAgMjg4OTcsIDI4OTAwLCAyODkwNCwgMjA2NDksIDIwNjU1LCAyODkxMCwgMjg5MTQsIDI4OTI1LCAyODkzNiwgMjg5NDcsIAorICAgIDI4OTU5LCAyODk2NiwgMjg5NzMsIDI4OTc4LCAyODk4MiwgNDQwNCwgNzQ3LCAxOTUyNCwgMjg5OTAsIDI4OTk1LCAyODk5OSwgCisgICAgMjkwMDQsIDI5MDA4LCAyOTAxNCwgMjkwMTksIDI5MDI1LCAyOTAzMCwgMjkwMzYsIDI5MDQxLCAyOTA0NywgMjkwNTIsIAorICAgIDI5MDU4LCAyOTA2NCwgMjkwNzAsIDI5MDc1LCAyOTAzMSwgMjkwMzcsIDI5MDc5LCAyOTA4NSwgMjkwOTAsIDI5MDk2LCAKKyAgICAyOTEwMSwgMjkxMDcsIDI5MTEyLCAyOTA0MiwgODgyNiwgMjkwNTMsIDI5MDU5LCAyOTA2NSwgMjc5MCwgMzM3OCwgMjkxMTYsIAorICAgIDI5MTE5LCAyOTEyNSwgMjkxMzEsIDI5MTM3LCAyOTE0NCwgMjkxNTAsIDI5MTU2LCAyOTE2MiwgMjkxNjgsIDI5MTc0LCAKKyAgICAyOTE4MCwgMjkxODYsIDI5MTkyLCAyOTE5OCwgMjkyMDQsIDI5MjEwLCAyOTIxNiwgMjkyMjMsIDI5MjI5LCAyOTIzNSwgCisgICAgMjkyNDEsIDI5MjQ3LCAyOTI1MywgMjkyNTgsIDI5MjYxLCAyOTI2OCwgMjkyNzYsIDI5MjgxLCAyOTI4NiwgMjkyOTIsIAorICAgIDI5Mjk3LCAyOTMwMiwgMjkzMDYsIDI5MzExLCAyOTMxNywgMjkzMjIsIDI5MzI4LCAyOTMzMywgMjkzMzksIDI5MzQ0LCAKKyAgICAyOTM1MCwgMjkzNTYsIDI5MzYwLCAyOTM2NSwgMjkzNzAsIDI5Mzc1LCAyOTM4MCwgMjkzODQsIDI5Mzg5LCAyOTM5NCwgCisgICAgMjkzOTksIDI5NDA1LCAyOTQxMSwgMjk0MTcsIDI5NDIzLCAyOTQyOCwgMjk0MzIsIDI5NDM1LCAyOTQ0MSwgMjk0NDcsIAorICAgIDI5NDU2LCAyOTQ2NCwgMjk0NzEsIDI5NDc2LCAyOTQ4MCwgMjk0ODQsIDI5NDg5LCAxMzQ2NCwgMjk0OTQsIDI5NTAyLCAKKyAgICAyOTUwOCwgMzYyNCwgMjk1MTMsIDI5NTE2LCAyOTUyMCwgNjQ2NSwgMjk1MjYsIDI5NTMyLCAyOTUzOSwgNjQ3NCwgMjk1NDMsIAorICAgIDI5NTQ5LCAyOTU1NiwgMjk1NjIsIDI5NTcxLCAyOTU3OSwgMjk1OTEsIDI5NTk1LCAyOTYwMiwgMjk2MDgsIDI5NjEyLCAKKyAgICAyOTYxNSwgMjk2MjQsIDI5NjMyLCAyOTAzMiwgMjk2MzcsIDI5NjQ3LCAyOTY1NywgMjk2NjcsIDI5NjczLCAyOTY3OCwgCisgICAgMjk2ODgsIDI5NjkzLCAyOTcwNiwgMjk3MjAsIDI5NzMxLCAyOTc0MywgMjk3NTUsIDI5NzY5LCAyOTc4MiwgMjk3OTQsIAorICAgIDI5ODA2LCAxMjkyNywgMjk4MjAsIDI5ODI1LCAyOTgzMCwgMjk4MzQsIDI5ODM4LCAyOTg0MiwgMTc0NCwgMjUyNDYsIAorICAgIDI5ODQ2LCAyOTg1MSwgMjk4NTYsIDI5ODYwLCAyOTg2MywgMjk4NjgsIDI5ODczLCAyOTg3OCwgMjk4ODQsIDI5ODkwLCAKKyAgICA4NTIzLCAyOTg5NSwgMjk5MDIsIDE0MDA0LCAyOTkwOCwgMjk5MTMsIDI5OTE4LCAyOTkyMiwgMjk5MjcsIDI5OTMyLCAKKyAgICAyOTA4MCwgMjk5MzcsIDI5OTQyLCAyOTk0NywgMjk5NTMsIDI5MDg2LCAyOTk1OCwgMjk5NjEsIDI5OTY4LCAyOTk3NiwgCisgICAgMjk5ODIsIDI5OTg4LCAyOTk5NCwgMzAwMDUsIDMwMDEwLCAzMDAxNywgMzAwMjQsIDMwMDMxLCAzMDAzOSwgMzAwNDgsIAorICAgIDMwMDU3LCAzMDA2MywgMzAwNjksIDMwMDc3LCAyOTA5MSwgMzAwODIsIDMwMDg4LCAzMDA5NCwgMjkwOTcsIDMwMDk5LCAKKyAgICAzMDEwNywgMzAxMTUsIDMwMTIxLCAzMDEyOCwgMzAxMzQsIDMwMTQxLCAzMDE0OCwgMzAxNTQsIDMwMTYyLCAzMDE3MiwgCisgICAgMzAxNzksIDMwMTg0LCAzMDE5MCwgMzAxOTUsIDMwMjAwLCAzMDIwNywgMzAyMTYsIDMwMjI0LCAzMDIyOSwgMzAyMzUsIAorICAgIDMwMjQyLCAzMDI1MCwgMzAyNTYsIDMwMjYxLCAzMDI2NywgMzAyNzYsIDI2MDExLCAzMDI4MywgMzAyODcsIDMwMjkyLCAKKyAgICAzMDMwMSwgMzAzMDYsIDMwMzExLCAzMDMxNiwgMTA3NjIsIDMwMzI0LCAzMDMyOSwgMzAzMzQsIDMwMzM5LCAzMDM0MywgCisgICAgMzAzNDgsIDMwMzUzLCAzMDM2MCwgMzAzNjUsIDMwMzcwLCAyOTEwMiwgMjkxMDgsIDMwMzc2LCAyNDc4LCAyNDQsIDMwMzc5LCAKKyAgICAzMDM4MiwgMzAzODYsIDMwMzkwLCAzMDQwMCwgMzA0MDgsIDMwNDEyLCAzMDQxOSwgMzA0MjYsIDMwNDMwLCAzMDQzMywgCisgICAgMzA0MzksIDMwNDQ3LCAzMDQ1NSwgMzA0NTksIDMwNDYzLCAzMDQ2NiwgMzA0NzMsIDMwNDc3LCAzMDQ4NCwgMzA0OTIsIAorICAgIDI5MDQzLCAzMDQ5OSwgMzA1MDcsIDY4OSwgMzAyLCAzMDUxOSwgMzA1MjQsIDMwNTI5LCAzMDUzNSwgMzA1NDAsIDMwNTQ1LCAKKyAgICAzNjQ1LCAzMDU1MCwgMzA1NTMsIDMwNTU4LCAzMDU2MywgMzA1NjgsIDMwNTczLCAzMDU3OCwgMzA1ODUsIDIwNzM0LCAKKyAgICAzMDU5MCwgMzA1OTUsIDMwNjAwLCAzMDYwNSwgMzA2MTAsIDMwNjE2LCAzMDYyMSwgMzA2MjcsIDI5MjY0LCAzMDYzMywgCisgICAgMzA2MzgsIDMwNjQ0LCAzMDY1MCwgMzA2NjAsIDMwNjY1LCAzMDY3MCwgMzA2NzQsIDMwNjc5LCAzMDY4NCwgMzA2ODksIAorICAgIDMwNjk0LCAzMDcwNywgMzA3MTIsIDIwNTM1LCAxNDk4MiwgMzY1MSwgMzA3MTYsIDMwNzIxLCAzMDcyNiwgMzA3MzIsIAorICAgIDMwNzM3LCAzMDc0MiwgMzA3NDYsIDMwNzUxLCAzMDc1NiwgMzA3NjIsIDMwNzY3LCAzMDc3MiwgMzA3NzYsIDMwNzgxLCAKKyAgICAzMDc4NiwgMzA3OTEsIDMwNzk1LCAzMDgwMCwgMzA4MDUsIDMwODEwLCAzMDgxNiwgMzA4MjIsIDMwODI3LCAzMDgzMSwgCisgICAgMzA4MzYsIDMwODQxLCAzMDg0NiwgMzA4NTAsIDMwODU4LCAzMDg2MiwgMzA4NjgsIDMwODcyLCAzMDg3OSwgMTQ3NzUsIAorICAgIDI5MDU0LCAzMDg4NSwgMzA4OTIsIDMwOTAwLCAzMDkwNywgMzA5MTMsIDMwOTI1LCAzMDkzMSwgMzA5MzUsIDI3MzIsIAorICAgIDMwOTM5LCAzMDk0MywgMzA0NjgsIDMwOTUyLCAzMDk2MywgMzA5NjgsIDMwOTczLCAzMDk3OCwgMzA5ODIsIDMwOTg3LCAKKyAgICAyMDY2MCwgMzA5OTEsIDMwOTk2LCAyOTA2MCwgMTk1NDUsIDMxMDAwLCAzMTAwNSwgMzEwMTEsIDMxMDE2LCAzMTAyMCwgCisgICAgMzEwMjQsIDMxMDI3LCAzMTAzMSwgMzEwMzcsIDMxMDQ4LCAzMTA2MCwgMjkwNjYsIDMxMDY1LCAzMTA2OCwgMzQ3LCAKKyAgICAzMTA3MiwgMzEwNzcsIDMxMDgyLCAzMTA4NywgMzEwOTIsIDMxMDk3LCAzMTEwMywgMzExMDgsIDMxMTEzLCAzMTExOSwgCisgICAgMzExMjQsIDMxMTMwLCAzMTEzNSwgMzExNDEsIDMxMTQ2LCAzMTE1MSwgMzExNTYsIDMxMTYxLCAzMTE2NiwgMzExNzEsIAorICAgIDMxMTc2LCAzMTE4MSwgMzExODcsIDMxMTkyLCAzMTE5NywgMzEyMDIsIDMxMjA3LCAzMTIxMiwgMzEyMTcsIDMxMjIyLCAKKyAgICAzMTIyOCwgMzEyMzQsIDMxMjM5LCAzMTI0NCwgMzEyNDksIDMxMjU0LCAzMTI1OSwgMzEyNjQsIDMxMjY5LCAzMTI3NCwgCisgICAgMzEyNzksIDMxMjg0LCAzMTI4OSwgMzEyOTQsIDMxMjk5LCAzMTMwNCwgMzEzMDksIDMxMzE0LCAzMTMxOSwgMzEzMjQsIAorICAgIDMxMzMwLCAyNiwgMzEzMzUsIDMxMzM5LCAzMTM0MywgMzEzNTEsIDMxMzU1LCAzMTM1OSwgMzEzNjIsIDMxMzY1LCAzMTM2NywgCisgICAgMzEzNzIsIDMxMzc2LCAzMTM4MSwgMzEzODUsIDMxMzkwLCAzMTM5NCwgMzEzOTksIDMxNDAzLCAzMTQwNiwgMzE0MDgsIAorICAgIDMxNDEzLCAzMTQxNywgMzE0MjgsIDMxNDMxLCAzMTQzMywgMzE0MzcsIDMxNDQ5LCAzMTQ1OCwgMzE0NjIsIDMxNDY2LCAKKyAgICAzMTQ3MiwgMzE0NzcsIDMxNDg2LCAzMTQ5MiwgMzE0OTcsIDMxNTAyLCAzMTUwNiwgMzE1MTEsIDMxNTE4LCAzMTUyMywgCisgICAgMzE1MjksIDMxNTM0LCAzMTUzOCwgMzE1NDUsIDIzODE4LCAyMzgyOCwgMzE1NDksIDMxNTU0LCAzMTU1OSwgMzE1NjQsIAorICAgIDMxNTcxLCAzMTU3NSwgMzE1ODIsIDY1NzMsIDMxNTg4LCAzMTU5NywgMzE2MDUsIDMxNjIwLCAzMTYzNCwgMzE2NDIsIAorICAgIDMxNjUzLCAzMTY2MiwgMzE2NjcsIDU3MDYsIDMxNjc3LCAzMTY4MiwgMzE2ODcsIDMxNjkxLCAzMTY5NCwgMzE2OTgsIAorICAgIDMxNzAzLCAzMTcwNywgMzE3MTQsIDMxNzE5LCAzMTcyNCwgNzM1NywgMzE3MzQsIDMxNzM2LCAzMTczOSwgMzE3NDMsIAorICAgIDMxNzQ5LCAzMTc1MywgMzE3NTgsIDMxNzYzLCAzMTc2OSwgMzE3NzQsIDMxNzgwLCAzMTc4NSwgMzE3OTUsIDMxODA0LCAKKyAgICAzMTgxMiwgMzE4MTcsIDMxODIzLCAzMTgyOCwgMzE4MzUsIDMxODM5LCAzMTg0NywgMzE4NTQsIDMxODY3LCAzMTg3NSwgCisgICAgMzE4NzksIDMxODg5LCAzMTg5NCwgMzE4OTgsIDMxOTA2LCAzMTkxNCwgMzE5MTgsIDMxOTI3LCAzMTkzMywgMzE5MzgsIAorICAgIDMxOTQ2LCAzMTk1NiwgMzE5NjUsIDMxOTc0LCAzMTk4MywgMzE5OTQsIDMyMDAyLCAzMjAxMywgMzIwMjIsIDMyMDI5LCAKKyAgICAzMjAzNSwgMzIwNDAsIDMyMDUxLCAzMjA1NiwgMzIwNjAsIDMyMDYzLCAzMjA2NywgMzIwNzUsIDMyMDgxLCAzMjA4OSwgCisgICAgMzIwOTYsIDMyMTAyLCAzMjEwNywgMzIxMTMsIDIzNzcsIDMyMTE3LCAzMjExOSwgMzIxMjQsIDMyMTI5LCAzMjEzMiwgCisgICAgMzIxMzQsIDMyMTM4LCAzMjE0MSwgMzIxNDgsIDMyMTUyLCAzMjE1NiwgMzIxNTksIDMyMTY1LCAzMjE3NSwgMzIxODAsIAorICAgIDMyMTg2LCAzMjE5MCwgMzIxOTUsIDMyMjA4LCAyNDE5MSwgMzIyMTQsIDMyMjIzLCAxNTc0MCwgMzIyMzAsIDMyMjM5LCAKKyAgICAyOTY1MywgMzIyNDcsIDMyMjUyLCAzMjI1NiwgMzIyNjQsIDMyMjcxLCAzMjI3NiwgMzIyODAsIDMyMjg1LCAzMjI4OSwgCisgICAgMzIyOTcsIDMyMzAzLCAzMjMwOSwgMzIzMTQsIDMyMzE4LCAzMjMyMSwgMzIzMjYsIDMyMzM5LCAzMjM1NSwgMjEyMDEsIAorICAgIDMyMzcyLCAzMjM4NCwgMzI0MDEsIDMyNDEzLCAzMjQyNywgMjEyMTgsIDIxMjM3LCAzMjQzOSwgMzI0NTEsIDI2MzksIAorICAgIDMyNDY1LCAzMjQ3MCwgMzI0NzUsIDMyNDgwLCAzMjQ4NCwgMzI0OTEsIDMyNTAzLCAzMjUwOSwgMzI1MTIsIDMyNTIzLCAKKyAgICAzMjUzNCwgMzAwNzQsIDY3NSwgMzI1MzksIDMyNTQzLCAzMjU0NiwgMzI1NTEsIDMyNTU2LCAzMjU2MiwgMzI1NjcsIAorICAgIDMyNTcyLCAzMjU3OCwgMzI1ODQsIDMyNTg5LCAzMjU5MywgMzI1OTgsIDMyNjAzLCAzMjYwOCwgMzI2MTIsIDMyNjE1LCAKKyAgICAzMjYyMSwgMzI2MjYsIDMyNjMxLCAzMjYzNiwgMzI2NDAsIDMyNjQ1LCAzMjY1MSwgMzI2NTksIDI0NDE2LCAzMjY2NCwgCisgICAgMzI2NjksIDMyNjc2LCAzMjY4MiwgMzI2ODgsIDMyNjkzLCAzMjcwMSwgMjA3NDMsIDMyNzA4LCAzMjcxMywgMzI3MTgsIAorICAgIDMyNzIzLCAzMjcyNywgMzI3MzAsIDMyNzM1LCAzMjczOSwgMzI3NDMsIDMyNzUwLCAzMjc1NiwgMzI3NjIsIDMyNzY4LCAKKyAgICAzMjc3NSwgMzI3ODAsIDMyNzg2LCAzMTkwOSwgMzI3OTAsIDMyNzk0LCAzMjc5OSwgMzI4MTIsIDMyODE3LCAzMjgyMywgCisgICAgMzI4MzEsIDMyODM4LCAzMjg0NiwgMzI4NTYsIDMyODYyLCAzMjg2OCwgMzI4NzQsIDMyODc4LCAzMjg4NywgMzI4OTIsIAorICAgIDMyODk3LCA4ODQ5LCAzMjkwMiwgMzI5MDksIDMyOTE1LCAzMjkyNSwgMzI5MzAsIDMyOTM2LCAzMjk0NCwgMzU1NiwgCisgICAgMzI5NTEsIDMyOTU4LCAzNTYyLCAzMjk2MiwgMzI5NjcsIDMyOTc4LCAzMjk4NSwgMzI5OTEsIDMzMDAwLCAzMzAwNCwgCisgICAgMzk0NSwgMzMwMDcsIDMzMDE0LCAzMzAyMCwgMzMwMjYsIDMzMDM0LCAzMzA0NCwgMjcwNzksIDMzMDUxLCAzMzA1OSwgCisgICAgMzMwNjUsIDMzMDcwLCAzMzA3NiwgMzMwODEsIDMzMDg3LCAzMzA5MSwgMzMwOTgsIDMzMTA0LCAzMzExMywgMjQyMTEsIAorICAgIDMzMTIwLCAzMzEyNSwgMzMxMjksIDMzMTM3LCAzMzE0NSwgODA0MCwgNDM5MCwgMzMxNTIsIDMzMTU2LCAzMzE2MCwgCisgICAgMzMxNjUsIDMzMTcxLCAzMzE3NiwgMzMxODEsIDMzMTg4LCAzMDU4MSwgMzMxOTQsIDMzMTk5LCAzMzIwMywgMzMyMDgsIAorICAgIDMzMjEyLCAzMzIyMSwgMzMyMjUsIDMzMjMxLCAzMzIzOCwgMzMyNDQsIDMzMjUxLCAzMzI1NiwgMzMyNjUsIDMzMjcwLCAKKyAgICAzMzI3NCwgMzMyNzksIDMzMjg2LCAzMzI5NCwgMzMzMDIsIDMzMzA3LCAxOTU5NCwgMzMzMTEsIDMzMzE0LCAzMzMxOCwgCisgICAgMzMzMjIsIDMzMzI2LCAzMzMyOSwgMzMzMzEsIDMzMzM2LCAzMzM0NCwgMzMzNDgsIDMzMzU1LCAzMzM1OSwgMzMzNjMsIAorICAgIDMzMzcxLCAzMzM3OCwgMzMzODgsIDMzMzkyLCAzMzM5NiwgMzM0MDQsIDMzNDEyLCAzMzQxOCwgMzM0MjMsIDMzNDMyLCAKKyAgICAxMTcxNywgMzM0MzgsIDMzNDQ3LCAzMzQ1MiwgMzM0NTksIDMzNDY3LCAzMzQ3NSwgMzM0ODMsIDMzNDkwLCAzMzQ5NywgCisgICAgMzM1MDQsIDMzNTExLCAzMzUxOCwgMzM1MjMsIDMzNTI5LCAzMzU0NiwgMzM1NTQsIDMzNTY0LCAzMzU3MiwgMzM1NzksIAorICAgIDM5MCwgMzM1ODMsIDMzNTg5LCAzMzU5MywgMzM1OTgsIDMxNjU4LCAzMzYwNCwgMzM2MDcsIDMzNjExLCAzMzYxOSwgMzU2NywgCisgICAgMzM2MjcsIDMzNjMzLCAzMzYzOSwgMzM2NDgsIDMzNjU4LCAzMzY2NSwgMzM2NzEsIDM1NzMsIDM1NzksIDMzNjgwLCAKKyAgICAzMzY4NywgMzM2OTUsIDMzNzAwLCAzMzcwNCwgMzM3MTEsIDMzNzE5LCAzMzcyNiwgMzM3MzIsIDMzNzQxLCAzMzc1MSwgCisgICAgMzM3NTcsIDMzNzY1LCAzMzc3NCwgMzM3ODEsIDMzNzg5LCAzMzc5NiwgMjAyNjUsIDMzODAwLCAzMzgwNywgMzM4MTMsIAorICAgIDMzODIzLCAzMzgzMiwgMzM4NDMsIDMzODQ3LCAzMzg1NywgMzM4NjMsIDMzODcwLCAzMzg3OCwgMzM4ODcsIDMzODk2LCAKKyAgICAzMzkwNiwgMzM5MTcsIDMzOTI0LCAzMzkyOSwgMzM5MzYsIDI5ODAsIDMzOTQ0LCAzMzk1MCwgMzM5NTUsIDMzOTYxLCAKKyAgICAzMzk2NywgMzM5NzIsIDMzOTg1LCAzMzk5OCwgMzQwMTEsIDM0MDE4LCAzNDAyNCwgMzQwMzIsIDM0MDM3LCAzNDA0MSwgCisgICAgMTQzMywgMzQwNDUsIDM0MDUwLCAzNDA1NSwgMzQwNjAsIDM0MDY1LCAzNDA3MSwgMzQwNzYsIDM0MDgxLCAzNDA4NiwgCisgICAgMzQwOTEsIDM0MDk2LCAzNDEwMSwgMzQxMDYsIDM0MTEyLCAzNDExOCwgMzQxMjMsIDM0MTI4LCAzNDEzNCwgMzQxMzksIAorICAgIDM0MTQ0LCAzNDE0OSwgMzQxNTUsIDM0MTYwLCAzNDE2NSwgMzQxNzAsIDM0MTc1LCAzNDE4MSwgMzQxODYsIDM0MTkxLCAKKyAgICAzNDE5NywgMzQyMDIsIDM0MjA3LCAzNDIxMiwgMzQyMTcsIDM0MjIyLCAzNDIyOCwgMzQyMzMsIDM0MjM5LCAzNDI0NCwgCisgICAgMzQyNTAsIDM0MjU1LCAzNDI2MCwgMzQyNjUsIDM0MjcxLCAzNDI3NywgMzQyODMsIDM0Mjg5LCAzNDI5NSwgMzQzMDEsIAorICAgIDM0MzA3LCAzNDMxMywgMzQzMTgsIDM0MzIzLCAzNDMyOSwgMzQzMzQsIDM0MzM5LCAzNDM0NCwgMzQzNDksIDM0MzU0LCAKKyAgICAzNDM1OSwgMzQzNjQsIDM0MzcwLCAzNDM3NSwgMzQzODAsIDM0Mzg2LCAzNDM5MiwgMTAxLCAzNDM5NywgMzQzOTksIAorICAgIDM0NDAzLCAzNDQwNywgMzQ0MTEsIDM0NDE2LCAzNDQyMCwgNzk2MSwgMzQ0MjQsIDM0NDMwLCA0NzU5LCAzNDQzNiwgCisgICAgMzQ0MzksIDM0NDQ0LCAzNDQ0OCwgMzQ0NTMsIDM0NDU3LCAzNDQ2MSwgMzQ0NjYsIDg2NTYsIDM0NDcwLCAzNDQ3NCwgCisgICAgMzQ0NzgsIDM0NDgyLCAxMzY5MiwgMzQ0ODcsIDM0NDkxLCAzNDQ5NiwgMzQ1MDEsIDM0NTA2LCAzNDUxMCwgMzQ1MTcsIAorICAgIDI0MjE1LCAzNDUyMywgMzQ1MjYsIDM0NTMwLCAzNDUzNSwgMzQ1NDEsIDM0NTQ1LCAzNDU1MywgMzQ1NTksIDM0NTY0LCAKKyAgICAzNDU2OCwgMzQ1NzQsIDM0NTc4LCAzNDU4MiwgMzQxNywgMzQyMiwgMjcyNjUsIDM0NTg1LCAzNDU5MywgMzQ2MDAsIAorICAgIDM0NjA0LCAzNDYxMSwgMzQ2MTYsIDMzNywgMzQ2MjEsIDM0NjI1LCAzNDYzMSwgMzQ2NDMsIDM0NjQ5LCAzNDY1NSwgCisgICAgMzQ2NTksIDM0NjY1LCAzNDY3NCwgMzQ2NzgsIDM0NjgyLCAzNDY4NywgMzQ2OTIsIDM0Njk3LCAzNDcwMSwgMzQ3MDUsIAorICAgIDM0NzEyLCAzNDcxOCwgMzQ3MjMsIDM0NzM4LCAzNDc1MywgMzQ3NjgsIDM0Nzg0LCAzNDgwMiwgODYwNiwgMzQ4MTYsIAorICAgIDM0ODIzLCAzNDgyNywgMzQ4MzAsIDM0ODM5LCAzNDg0NCwgMzQ4NDgsIDM0ODU2LCAzMTg2MCwgMzQ4NjQsIDM0ODY4LCAKKyAgICAzNDg3OCwgMjcyMzUsIDM0ODg5LCAzNDg5MywgMzQ5MDIsIDM0OTEwLCA4MjE4LCAxMzIzNiwgMzQ5MTQsIDM0OTE3LCAKKyAgICAzNDkyMCwgMjgxNzMsIDM0OTI1LCA4MjE3LCAzNDkzMCwgMzQ5MzYsIDM0OTQxLCAzNDk0NywgMzQ5NTIsIDM0OTU4LCAKKyAgICAzNDk2MywgMzQ5NjksIDM0OTc0LCAzNDk4MCwgMzQ5ODYsIDM0OTkyLCAzNDk5NywgMzQ5NTMsIDM0OTU5LCAzNDk2NCwgCisgICAgMzQ5NzAsIDM0OTc1LCAzNDk4MSwgMzQ5ODcsIDY1ODYsIDM4MTUsIDM1MDAxLCAzNTAwOSwgMzUwMTMsIDM1MDE2LCAKKyAgICAzNTAyMCwgMzUwMjUsIDM1MDMwLCAzNTAzNiwgMzUwNDIsIDM1MDQ3LCAzNTA1MSwgMjQwNjMsIDM1MDU1LCAzNTA1OSwgCisgICAgMzUwNjUsIDM1MDY5LCA3NDg3LCAzNTA3OCwgMzUwODUsIDM1MDg5LCAxMDI1OCwgMzUwOTYsIDM1MTAyLCAzNTEwNywgCisgICAgMzUxMTQsIDM1MTIxLCAzNTEyOCwgMjY2MDUsIDY1MDksIDM1MTM1LCAzNTE0MiwgMzUxNDksIDM1MTU1LCAzNTE2MCwgCisgICAgMzUxNjcsIDM1MTc4LCAzNTE4NCwgMzUxODksIDM1MTk0LCAzNTE5OSwgMzUyMDYsIDM0OTU0LCAzNTIxMCwgMzUyMjAsIAorICAgIDM1MjMxLCAzNTIzNywgMzUyNDIsIDM1MjQ3LCAzNTI1MiwgMzUyNTcsIDM1MjYyLCAzNTI2NiwgMzUyNzAsIDM1Mjc2LCAKKyAgICAzNTI4NCwgMjI3OCwgODM1LCA4Njc4LCA4NjgzLCA4Njg5LCAzNTI5MywgODY5NCwgODY5OSwgODcwNSwgMzUyOTgsIAorICAgIDM1MzA4LCAzNTMxMiwgODcxMCwgMzUzMTcsIDM1MzIwLCAzNTMyNSwgMzUzMjksIDM1MzM0LCAzNTMzOSwgMzUzNDYsIAorICAgIDM1MzUzLCAzNTM2MSwgODYxOSwgMzUzNjgsIDM1MzcxLCAzNTM3NywgMzUzODcsIDQ0MjQsIDM1Mzk2LCAzNTQwMCwgCisgICAgMzU0MDgsIDM1NDEyLCAzNTQyMiwgMzU0MjgsIDM1NDM5LCAzNTQ0NSwgMzU0NTEsIDM1NDU2LCAzNTQ2MiwgMzU0NjgsIAorICAgIDM1NDc0LCAzNTQ3OSwgMzU0ODIsIDM1NDg5LCAzNTQ5NSwgMzU1MDAsIDM1NTA3LCAzNTUxNCwgMzU1MTgsIDM1NTI4LCAKKyAgICAzNTU0MSwgMzU1NTAsIDM1NTU5LCAzNTU3MCwgMzU1ODMsIDM1NTk0LCAzNTYwMywgMzU2MTQsIDM1NjE5LCAzNTYyOCwgCisgICAgMzU2MzMsIDg3MTUsIDM1NjM5LCAzNTY0NiwgMzU2NTQsIDM1NjU5LCAzNTY2MywgMzU2NzAsIDM1Njc3LCAzNzcwLCAxNiwgCisgICAgMzU2ODEsIDM1Njg2LCAxNTAzNCwgMzU2OTAsIDM1NjkzLCAzNTY5NiwgMjYxMjIsIDM1NzAwLCAyNjYxNCwgMzU3MDgsIAorICAgIDM1NzEyLCAzNTcxNiwgMzU3MTksIDM1NzI1LCAzNDk3NiwgMzU3MzEsIDM1NzM5LCAzNTc0NSwgMzU3NTIsIDI2MTE0LCAKKyAgICAzNTc1NiwgMjYyOTksIDM1NzYwLCAzNTc2OSwgMzU3NzUsIDM1NzgxLCAzNTc4NiwgMzU3OTAsIDM1Nzk2LCAzNTgwMCwgCisgICAgMzU4MDgsIDM1ODE2LCAyNDI3MywgMzU4MjIsIDM1ODI5LCAzNTgzNSwgMzU4NDAsIDM1ODQ1LCAzNTg0OSwgMzU4NTUsIAorICAgIDM1ODYwLCAzNTg2NiwgMzk4NiwgNzY5LCAzNTg3MywgMzU4NzcsIDM1ODgwLCAxMzU4MiwgMzU4OTIsIDMzNzcwLCAzNTkwMywgCisgICAgMzU5MDYsIDM1OTEzLCAzNTkxOSwgMzU5MjMsIDM1OTI5LCAzNTkzNCwgMzU5NDAsIDM1OTQ1LCAzNTk1MCwgMzU5NTQsIAorICAgIDM1OTU4LCAzNTk2MywgMzU5NjgsIDM1OTc4LCAzNTk4NCwgMzU5OTcsIDM2MDAzLCAzNjAxMCwgMzYwMTUsIDM2MDIxLCAKKyAgICAzNjAyNiwgMTQ5MjAsIDE0MzYsIDEwMjIsIDI5MTk5LCAyOTIwNSwgMzYwMzEsIDI5MjExLCAyOTIyNCwgMjkyMzAsIAorICAgIDI5MjM2LCAzNjAzNywgMjkyNDIsIDI5MjQ4LCAzNjA0MywgMzYwNDksIDIyLCAzNjA1NywgMzYwNjQsIDM2MDY4LCAzNjA3MiwgCisgICAgMzYwODAsIDI5OTYzLCAzNjA4NCwgMzYwODgsIDM2MDk1LCAzNjEwMCwgMzYxMDQsIDM2MTA5LCAzNjExNSwgMzYxMjAsIAorICAgIDM2MTI2LCAzNjEzMSwgMzYxMzUsIDM2MTM5LCAzNjE0MywgMzYxNDgsIDM2MTUyLCAzNjE1NywgMzYxNjEsIDM2MTY4LCAKKyAgICAzNjE3MywgMzYxNzcsIDM2MTgyLCAzNjE4NiwgMzYxOTEsIDM2MTk1LCAzNjIwMCwgMzYyMDYsIDEzODAyLCAxMzgwNywgCisgICAgMzYyMTEsIDM2MjE1LCAzNjIxOCwgMzYyMjIsIDE5NDM2LCAzNjIyNywgMzYyMzEsIDM2MjM3LCAzNjI0NCwgMzYyNDksIAorICAgIDM2MjU5LCAzNjI2NCwgMzYyNzIsIDM2Mjc2LCAzNjI3OSwgMjk5NzgsIDM2MjgzLCA0MDM5LCAzNjI4OCwgMzYyOTMsIAorICAgIDM2Mjk3LCAzNjMwMiwgMzYzMDYsIDM2MzExLCAxMTczNSwgMzYzMjIsIDM2MzI2LCAzNjMyOSwgMzYzMzQsIDM2MzM4LCAKKyAgICAzNjM0MiwgMzYzNDUsIDM2MzQ5LCA2NjA1LCAxMTc1MSwgMzYzNTIsIDM2MzU1LCAzNjM2MSwgMzYzNjYsIDM2MzcyLCAKKyAgICAzNjM3NywgMzYzODMsIDM2Mzg4LCAzNjM5NCwgMzYzOTksIDM2NDA1LCAzNjQxMSwgMzY0MTcsIDM2NDIyLCAzNjQyNiwgCisgICAgMzY0MzAsIDM2NDM5LCAzNjQ1NSwgMzY0NzEsIDM2NDgxLCAyNjAyMSwgMzY0ODgsIDM2NDkyLCAzNjQ5NywgMzY1MDIsIAorICAgIDM2NTA2LCAzNjUxMCwgMzM4OTEsIDM2NTE2LCAzNjUyMSwgMzY1MjUsIDM2NTMyLCAzNjUzNywgMzY1NDEsIDM2NTQ1LCAKKyAgICAyNTA3NSwgMzY1NTEsIDE5Njg5LCAzNjU1NiwgMzY1NjMsIDM2NTcxLCAzNjU3NywgMzY1ODQsIDM2NTkyLCAzNjU5OCwgCisgICAgMzY2MDIsIDM2NjA4LCAzNjYxNiwgMzY2MjAsIDM2NjI5LCA3OTQyLCAzNjYzNywgMzY2NDEsIDM2NjQ5LCAzNjY1NiwgCisgICAgMzY2NjEsIDM2NjY2LCAzNjY3MCwgMzY2NzMsIDM2Njc3LCAzNjY4MCwgMzY2ODQsIDM2NjkxLCAzNjY5NiwgMzY3MDIsIAorICAgIDI0NDk0LCAyOTI1OSwgMzY3MDYsIDM2NzEzLCAzNjcxOSwgMzY3MjUsIDM2NzMwLCAzNjczMywgMzY3MzUsIDM2NzQyLCAKKyAgICAzNjc0OSwgMzY3NTUsIDM2NzU5LCAzNjc2MiwgMzY3NjYsIDM2NzcwLCAzNjc3NCwgMzY3NzksIDM2NzgzLCAzNjc4NywgCisgICAgMzY3OTAsIDM2Nzk0LCAzNjgwOCwgMjEyNjcsIDM2ODI3LCAzNjg0MCwgMzY4NTMsIDM2ODY2LCAyMTI4NSwgMzY4ODEsIAorICAgIDg5MDIsIDM2ODk2LCAzNjkwMiwgMzY5MDYsIDM2OTEwLCAzNjkxNywgMzY5MjIsIDM2OTI2LCAzNjkzMywgMzY5MzksIAorICAgIDM2OTQ0LCAzNjk1MCwgMzY5NjAsIDM2OTcyLCAzNjk4MywgMzY5ODgsIDM2OTk1LCAzNjk5OSwgMzcwMDMsIDM3MDA2LCAKKyAgICAxNDE5OCwgMzYxOCwgMzcwMTQsIDEzODI5LCAzNzAyNywgMzcwMzQsIDM3MDM4LCAzNzA0MiwgMzcwNDcsIDM3MDUyLCAKKyAgICAzNzA1OCwgMzcwNjIsIDM3MDY2LCAzNzA2OSwgNjIxNywgMTM4NDAsIDM3MDc0LCAzNzA3OCwgMzcwODQsIDM3MDkzLCAKKyAgICAzNzA5OCwgMzM3NDcsIDM3MTA0LCAzNzEwOSwgMzcxMTMsIDM3MTE4LCAzNzEyNSwgMzcxMjksIDM3MTMyLCAzNzEzNywgCisgICAgMTI4OTIsIDM3MTQ0LCAzNzE1MSwgMTAzNSwgMzcxNTUsIDM3MTYwLCAzNzE2NSwgMzcxNzEsIDM3MTc2LCAzNzE4MSwgCisgICAgMzcxODUsIDM3MTk1LCAzNzIwMCwgMzcyMDYsIDM3MjExLCAzNzIxNywgMzcyMjIsIDM3MjI4LCAzNzIzOCwgMzcyNDMsIAorICAgIDM3MjQ4LCAzNzI1MiwgNTcwOCwgNTcyMCwgMzcyNTcsIDM3MjYwLCAzNzI2NywgMzcyNzMsIDMyMDI1LCAzMjAzMiwgCisgICAgMzcyODIsIDM3Mjg2LCAzMDAyNiwgMzcyOTQsIDM3MzA1LCAzNzMxMywgMzM5MzksIDM3MzIwLCAzNzMyNSwgMzczMzAsIAorICAgIDM3MzQxLCAzNzM0OCwgMzczNTksIDMwMDUwLCAxOTY5NSwgMzczNjcsIDcyNywgMzczNzIsIDM3Mzc4LCAyNjEwNSwgCisgICAgMzczODQsIDM3Mzg5LCAzNzM5OSwgMzc0MDgsIDM3NDE1LCAzNzQyMSwgMzc0MjUsIDM3NDI4LCAzNzQzNSwgMzc0NDEsIAorICAgIDM3NDQ4LCAzNzQ1NCwgMzc0NjQsIDM3NDcyLCAzNzQ3OCwgMzc0ODQsIDM3NDg5LCAzNzQ5MywgMzc1MDAsIDM3NTA2LCAKKyAgICAzNzUxMywgMzY3NzUsIDUzNSwgMTIxNjAsIDM3NTE5LCAzNzUyNCwgMzc1MjcsIDM3NTMzLCAzNzU0MSwgMTM2NSwgMzc1NDYsIAorICAgIDM3NTUwLCAzNzU1NSwgMzc1NjIsIDM3NTY4LCAzNzU3MiwgMzc1NzYsIDM3NTgxLCAzNzU5MCwgMzc1OTcsIDM3NjA3LCAKKyAgICAzNzYxMywgMjYxNDAsIDM3NjMwLCAzNzYzOSwgMzc2NDcsIDM3NjUzLCAzNzY1OCwgMzc2NjUsIDM3NjcxLCAzNzY3OSwgCisgICAgMzc2ODgsIDM3Njk2LCAzNzcwMCwgMzc3MDUsIDM3NzEzLCAzMDA1OSwgMzc3MTksIDM3NzM4LCAxNDEzMSwgMzc3NTIsIAorICAgIDM3NzY4LCAzNzc4MiwgMzc3ODgsIDM3NzkzLCAzNzc5OCwgMzc4MDMsIDM3ODA5LCAzMDA2NSwgMzc4MTQsIDM3ODIxLCAKKyAgICAzNzgyNiwgMzc4MzAsIDM0NSwgMjg4NywgMzc4MzcsIDM3ODQyLCAzNzg0NywgMjUzOTIsIDM3NjY4LCAzNzg1MSwgMzc4NTYsIAorICAgIDM3ODY0LCAzNzg2OCwgMzc4NzEsIDM3ODc3LCAzNzg4MywgMzc4ODcsIDI2MTk1LCAzNzg5MCwgMzc4OTUsIDM3ODk5LCAKKyAgICAzNzkwMiwgMzc5MDcsIDM3OTExLCAzNzkxNiwgMzc5MjEsIDM3OTI1LCAzNzkzMCwgMzc5MzQsIDM3OTM4LCAxOTQzMiwgCisgICAgMTk0NDMsIDM3OTQyLCAzNzk0NywgMzc5NTMsIDI1MDMyLCAzNzk1OCwgMzc5NjIsIDE5NTExLCAxNDM0OSwgMzc5NjUsIAorICAgIDM3OTcwLCAzNzk3NSwgMzc5ODAsIDM3OTg1LCAzNzk5MCwgMzc5OTUsIDM4MDAwLCA0NTAsIDQzLCAyOTI3NywgMjkyODIsIAorICAgIDI5Mjg3LCAyOTI5MywgMjkyOTgsIDI5MzAzLCAzODAwNSwgMjkzMDcsIDM4MDA5LCAzODAxMywgMjkzMTIsIDI5MzE4LCAKKyAgICAzODAxNywgMjkzMjksIDI5MzM0LCAzODAyNSwgMzgwMzAsIDI5MzQwLCAzODAzNSwgMzgwNDAsIDM4MDQ1LCAzODA1MCwgCisgICAgMzgwNTYsIDM4MDYyLCAzODA2OCwgMjkzNTcsIDM4MDgxLCAzODA4NywgMjkzNjEsIDM4MDkxLCAyOTM2NiwgMzgwOTYsIAorICAgIDI5MzcxLCAyOTM3NiwgMzgwOTksIDM4MTA0LCAzODEwOCwgMjg5NDAsIDM4MTE0LCAxMTk1OSwgMzgxMjEsIDM4MTI2LCAKKyAgICAyOTM4MSwgMzgxMzAsIDM4MTM1LCAzODE0MCwgMzgxNDUsIDM4MTQ5LCAzODE1NCwgMzgxNTksIDM4MTY1LCAzODE3MCwgCisgICAgMzgxNzUsIDM4MTgxLCAzODE4NywgMzgxOTIsIDM4MTk2LCAzODIwMSwgMzgyMDYsIDM4MjExLCAzODIxNSwgMzgyMjAsIAorICAgIDM4MjI1LCAzODIzMCwgMzgyMzYsIDM4MjQyLCAzODI0OCwgMzgyNTMsIDM4MjU3LCAzODI2MiwgMzgyNjYsIDI5Mzg1LCAKKyAgICAyOTM5MCwgMjkzOTUsIDM4MjcwLCAzODI3NCwgMzgyNzgsIDI5NDAwLCAyOTQwNiwgMjk0MTIsIDI5NDI0LCAzODI5MCwgCisgICAgMjQxMDAsIDM4Mjk0LCAzODI5OCwgMzgzMDMsIDM4MzA4LCAzODMxMywgMzgzMTcsIDM4MzIxLCAzODMzMSwgMzgzMzYsIAorICAgIDM4MzQxLCAzODM0NSwgMzgzNDksIDM4MzUyLCAzODM2MCwgMjk0NzIsIDM4MzY1LCAxNDQzLCAzODM3MSwgMzgzNzksIAorICAgIDM4Mzg4LCAzODM5MiwgMzgzOTYsIDM4NDA0LCAzODQxMCwgMzg0MTgsIDM4NDM0LCAzODQzOCwgMzg0NDMsIDM4NDU4LCAKKyAgICAyOTUwOSwgMTcxMywgMTA0MjMsIDM4NDYyLCAyOTMzLCAzODQ3NCwgMzg0NzUsIDM4NDgzLCAzODQ5MCwgMzg0OTUsIAorICAgIDM4NTAyLCAzODUwNywgNzgxMiwgMTEwNSwgODczNywgMzg1MTQsIDM4NTE5LCAzODUyMiwgMzg1MjUsIDM4NTM0LCAxMjc2LCAKKyAgICAzODUzOSwgMzY5MjMsIDM4NTQ2LCAzODU1MSwgMjA3MDgsIDI1MTYsIDM4NTU1LCA5MTQ2LCAzODU2NSwgMzg1NzEsIDIyOTYsIAorICAgIDIzMDYsIDM4NTgwLCAzODU4OSwgMzg1OTksIDM4NjEwLCAzMjQ4LCAzMjE3NiwgODc4OSwgMzc0OCwgMTQ5NTgsIDEyODEsIAorICAgIDM4NjE1LCAzODYyMywgMzg2MzAsIDM4NjM1LCAzODYzOSwgMzg2NDMsIDIyMDUxLCA4ODE2LCAzODY1MSwgMzg2NjAsIAorICAgIDM4NjY5LCAzODY3NywgMzg2ODQsIDM4Njg5LCAzODcwMiwgMzg3MTUsIDM4NzI3LCAzODczOSwgMzg3NTEsIDM4NzY0LCAKKyAgICAzODc3NSwgMzg3ODYsIDM4Nzk2LCAzODgwNCwgMzg4MTIsIDM4ODI0LCAzODgzNiwgMzg4NDcsIDM4ODU2LCAzODg2NCwgCisgICAgMzg4NzEsIDM4ODgzLCAzODg5MCwgMzg4OTksIDM4OTA2LCAzODkxOSwgMzg5MjQsIDM4OTM0LCAzODkzOSwgMzg5NDUsIAorICAgIDM4OTUwLCAzNTA4NiwgMzg5NTQsIDM4OTYxLCAzODk2NSwgMzg5NzIsIDM4OTgwLCAyNDc3LCAzODk4NywgMzg5OTgsIAorICAgIDM5MDA4LCAzOTAxNywgMzkwMjUsIDM5MDM1LCAzOTA0MywgMzkwNTMsIDM5MDYyLCAzOTA2NywgMzkwNzMsIDM5MDc5LCAKKyAgICAzOTA5MCwgMzkxMDAsIDM5MTA5LCAzOTExOCwgMzkxMjgsIDM5MTM2LCAzOTE0NSwgMzkxNTAsIDM5MTU1LCAzOTE2MCwgCisgICAgMTY2OSwgMzcsIDM5MTY4LCAzOTE3NiwgMzkxODcsIDM5MTk4LCAxNDYzMywgMzkyMDgsIDM5MjE1LCAzOTIyMSwgMzkyMjYsIAorICAgIDM5MjMwLCAzOTI0MSwgMzkyNTEsIDM5MjYwLCAzOTI3MSwgMTUwMDcsIDE1MDEyLCAzOTI3NiwgMzkyODUsIDM5MjkwLCAKKyAgICAzOTMwMCwgMzkzMDUsIDM5MzEzLCAzOTMyMSwgMzkzMjgsIDM5MzM0LCA1NTU3LCAyMjgsIDM5MzM4LCAzOTM0NCwgMzkzNDksIAorICAgIDM5MzUyLCAyMDc2LCAzNzAzOSwgMzkzNjAsIDM5MzY0LCAzOTM2NywgMTQ3NiwgMzkzNzMsIDEyMzA5LCAxMjg2LCAzOTM3OCwgCisgICAgMzkzOTEsIDM5NDA1LCAyNjAyLCAzOTQyMywgMzk0MzUsIDM5NDQ3LCAyNjE2LCAyNjMzLCAzOTQ2MSwgMzk0NzQsIDI2NDgsIAorICAgIDM5NDg4LCAzOTUwMCwgMjY2MywgMzk1MTQsIDEyOTIsIDEyOTgsIDEzMDQsIDkwNjQsIDM5NTE5LCAzOTUyNCwgMzk1MjksIAorICAgIDM5NTMzLCAzOTU0OCwgMzk1NjMsIDM5NTc4LCAzOTU5MywgMzk2MDgsIDM5NjIzLCAzOTYzOCwgMzk2NTMsIDM5NjY4LCAKKyAgICAzOTY4MywgMzk2OTgsIDM5NzEzLCAzOTcyOCwgMzk3NDMsIDM5NzU4LCAzOTc3MywgMzk3ODgsIDM5ODAzLCAzOTgxOCwgCisgICAgMzk4MzMsIDM5ODQ4LCAzOTg2MywgMzk4NzgsIDM5ODkzLCAzOTkwOCwgMzk5MjMsIDM5OTM4LCAzOTk1MywgMzk5NjgsIAorICAgIDM5OTgzLCAzOTk5OCwgNDAwMTMsIDQwMDI4LCA0MDA0MywgNDAwNTgsIDQwMDczLCA0MDA4OCwgNDAxMDMsIDQwMTE4LCAKKyAgICA0MDEzMywgNDAxNDgsIDQwMTYzLCA0MDE3OCwgNDAxOTMsIDQwMjA4LCA0MDIyMywgNDAyMzgsIDQwMjUzLCA0MDI2OCwgCisgICAgNDAyODMsIDQwMjk4LCA0MDMxMywgNDAzMjgsIDQwMzQzLCA0MDM1OCwgNDAzNzMsIDQwMzg4LCA0MDQwMywgNDA0MTgsIAorICAgIDQwNDMzLCA0MDQ0OCwgNDA0NjMsIDQwNDc4LCA0MDQ5MywgNDA1MDgsIDQwNTIzLCA0MDUzOCwgNDA1NTMsIDQwNTY4LCAKKyAgICA0MDU4MywgNDA1OTgsIDQwNjEzLCA0MDYyOCwgNDA2NDMsIDQwNjU4LCA0MDY3MywgNDA2ODgsIDQwNzAzLCA0MDcxOCwgCisgICAgNDA3MzMsIDQwNzQ4LCA0MDc2MywgNDA3NzgsIDQwNzkzLCA0MDgwOCwgNDA4MjMsIDQwODM4LCA0MDg1MywgNDA4NjgsIAorICAgIDQwODgzLCA0MDg5OCwgNDA5MTMsIDQwOTI4LCA0MDk0MywgNDA5NTgsIDQwOTczLCA0MDk4OCwgNDEwMDMsIDQxMDE4LCAKKyAgICA0MTAzMywgNDEwNDgsIDQxMDYzLCA0MTA3OCwgNDEwOTMsIDQxMTA4LCA0MTEyMywgNDExMzgsIDQxMTUzLCA0MTE2OCwgCisgICAgNDExODMsIDQxMTk4LCA0MTIxMywgNDEyMjgsIDQxMjQzLCA0MTI1OCwgNDEyNzMsIDQxMjg4LCA0MTMwMywgNDEzMTgsIAorICAgIDQxMzMzLCA0MTM0OCwgNDEzNjMsIDQxMzc4LCA0MTM5MywgNDE0MDgsIDQxNDIzLCA0MTQzOCwgNDE0NTMsIDQxNDY4LCAKKyAgICA0MTQ4MywgNDE0OTgsIDQxNTEzLCA0MTUyOCwgNDE1NDMsIDQxNTU4LCA0MTU3MywgNDE1ODgsIDQxNjAzLCA0MTYxOCwgCisgICAgNDE2MzMsIDQxNjQ4LCA0MTY2MywgNDE2NzgsIDQxNjkzLCA0MTcwOCwgNDE3MjMsIDQxNzM4LCA0MTc1MywgNDE3NjgsIAorICAgIDQxNzgzLCA0MTc5OCwgNDE4MTMsIDQxODI4LCA0MTg0MywgNDE4NTgsIDQxODczLCA0MTg4OCwgNDE5MDMsIDQxOTE4LCAKKyAgICA0MTkzMywgNDE5NDgsIDQxOTYzLCA0MTk3OCwgNDE5OTMsIDQyMDA4LCA0MjAyMywgNDIwMzgsIDQyMDUzLCA0MjA2OCwgCisgICAgNDIwODMsIDQyMDk4LCA0MjExMywgNDIxMjgsIDQyMTQzLCA0MjE1OCwgNDIxNzMsIDQyMTg4LCA0MjIwMywgNDIyMTgsIAorICAgIDQyMjMzLCA0MjI0OCwgNDIyNjMsIDQyMjc4LCA0MjI5MywgNDIzMDgsIDQyMzIzLCA0MjMzOCwgNDIzNTMsIDQyMzY4LCAKKyAgICA0MjM4MywgNDIzOTgsIDQyNDEzLCA0MjQyOCwgNDI0NDMsIDQyNDU4LCA0MjQ3MywgNDI0ODgsIDQyNTAzLCA0MjUxOCwgCisgICAgNDI1MzMsIDQyNTQ4LCA0MjU2MywgNDI1NzgsIDQyNTkzLCA0MjYwOCwgNDI2MjMsIDQyNjM4LCA0MjY1MywgNDI2NjgsIAorICAgIDQyNjgzLCA0MjY5OCwgNDI3MTMsIDQyNzI4LCA0Mjc0MywgNDI3NTgsIDQyNzczLCA0Mjc4OCwgNDI4MDMsIDQyODE4LCAKKyAgICA0MjgzMywgNDI4NDgsIDQyODYzLCA0Mjg3OCwgNDI4OTMsIDQyOTA4LCA0MjkyMywgNDI5MzgsIDQyOTUzLCA0Mjk2OCwgCisgICAgNDI5ODMsIDQyOTk4LCA0MzAxMywgNDMwMjgsIDQzMDQzLCA0MzA1OCwgNDMwNzMsIDQzMDg4LCA0MzEwMywgNDMxMTgsIAorICAgIDQzMTMzLCA0MzE0OCwgNDMxNjMsIDQzMTc4LCA0MzE5MywgNDMyMDgsIDQzMjIzLCA0MzIzOCwgNDMyNTMsIDQzMjY4LCAKKyAgICA0MzI4MywgNDMyOTgsIDQzMzEzLCA0MzMyOCwgNDMzNDMsIDQzMzU4LCA0MzM3MywgNDMzODgsIDQzNDAzLCA0MzQxOCwgCisgICAgNDM0MzMsIDQzNDQ4LCA0MzQ2MywgNDM0NzgsIDQzNDkzLCA0MzUwOCwgNDM1MjMsIDQzNTM4LCA0MzU1MywgNDM1NjgsIAorICAgIDQzNTgzLCA0MzU5OCwgNDM2MTMsIDQzNjI4LCA0MzY0MywgNDM2NTgsIDQzNjczLCA0MzY4OCwgNDM3MDMsIDQzNzE4LCAKKyAgICA0MzczMywgNDM3NDgsIDQzNzYzLCA0Mzc3OCwgNDM3OTMsIDQzODA4LCA0MzgyMywgNDM4MzgsIDQzODUzLCA0Mzg2OCwgCisgICAgNDM4ODMsIDQzODk4LCA0MzkxMywgNDM5MjgsIDQzOTQzLCA0Mzk1OCwgNDM5NzMsIDQzOTg4LCA0NDAwMywgNDQwMTgsIAorICAgIDQ0MDMzLCA0NDA0OCwgNDQwNjMsIDQ0MDc4LCA0NDA5MywgNDQxMDgsIDQ0MTIzLCA0NDEzOCwgNDQxNTMsIDQ0MTY4LCAKKyAgICA0NDE4MywgNDQxOTgsIDQ0MjEzLCA0NDIyOCwgNDQyNDMsIDQ0MjU4LCA0NDI3MywgNDQyODgsIDQ0MzAzLCA0NDMxOCwgCisgICAgNDQzMzMsIDQ0MzQ4LCA0NDM2MywgNDQzNzgsIDQ0MzkzLCA0NDQwOCwgNDQ0MjMsIDQ0NDM4LCA0NDQ1MywgNDQ0NjgsIAorICAgIDQ0NDgzLCA0NDQ5OCwgNDQ1MTMsIDQ0NTI4LCA0NDU0MywgNDQ1NTgsIDQ0NTczLCA0NDU4OCwgNDQ2MDMsIDQ0NjE4LCAKKyAgICA0NDYzMywgNDQ2NDgsIDQ0NjYzLCA0NDY3OCwgNDQ2OTMsIDQ0NzA4LCA0NDcyMywgNDQ3MzgsIDQ0NzUzLCA0NDc2OCwgCisgICAgNDQ3ODMsIDQ0Nzk4LCA0NDgxMywgNDQ4MjgsIDQ0ODQzLCA0NDg1OCwgNDQ4NzMsIDQ0ODg4LCA0NDkwMywgNDQ5MTgsIAorICAgIDQ0OTMzLCA0NDk0OCwgNDQ5NjMsIDQ0OTc4LCA0NDk5MywgNDUwMDgsIDQ1MDIzLCA0NTAzOCwgNDUwNTMsIDQ1MDY4LCAKKyAgICA0NTA4MywgNDUwOTgsIDQ1MTEzLCA0NTEyOCwgNDUxNDMsIDQ1MTU4LCA0NTE3MywgNDUxODgsIDQ1MjAzLCA0NTIxOCwgCisgICAgNDUyMzMsIDQ1MjQ4LCA0NTI2MywgNDUyNzgsIDQ1MjkzLCA0NTMwOCwgNDUzMjMsIDQ1MzM4LCA0NTM1MywgNDUzNjgsIAorICAgIDQ1MzgzLCA0NTM5OCwgNDU0MTMsIDQ1NDI4LCA0NTQ0MywgNDU0NTgsIDQ1NDczLCA0NTQ4OCwgNDU1MDMsIDQ1NTE4LCAKKyAgICA0NTUzMywgNDU1NDgsIDQ1NTYzLCA0NTU3OCwgNDU1OTMsIDQ1NjA4LCA0NTYyMywgNDU2MzgsIDQ1NjUzLCA0NTY2OCwgCisgICAgNDU2ODMsIDQ1Njk4LCA0NTcxMywgNDU3MjgsIDQ1NzQzLCA0NTc1OCwgNDU3NzMsIDQ1Nzg4LCA0NTgwMywgNDU4MTgsIAorICAgIDQ1ODMzLCA0NTg0OCwgNDU4NjMsIDQ1ODc4LCA0NTg5MywgNDU5MDgsIDQ1OTIzLCA0NTkzOCwgNDU5NTMsIDQ1OTY4LCAKKyAgICA0NTk4MywgNDU5OTgsIDQ2MDEzLCA0NjAyOCwgNDYwNDMsIDQ2MDU4LCA0NjA3MywgNDYwODgsIDQ2MTAzLCA0NjExOCwgCisgICAgNDYxMzMsIDQ2MTQ4LCA0NjE2MywgNDYxNzgsIDQ2MTkzLCA0NjIwOCwgNDYyMjMsIDQ2MjM4LCA0NjI1MywgNDYyNjgsIAorICAgIDQ2MjgzLCA0NjI5OCwgNDYzMTMsIDQ2MzI4LCA0NjM0MywgNDYzNTgsIDQ2MzczLCA0NjM4OCwgNDY0MDMsIDQ2NDE4LCAKKyAgICA0NjQzMywgNDY0NDgsIDQ2NDYzLCA0NjQ3OCwgNDY0OTMsIDQ2NTA4LCA0NjUyMywgNDY1MzgsIDQ2NTUzLCA0NjU2OCwgCisgICAgNDY1ODMsIDQ2NTk4LCA0NjYxMywgNDY2MjgsIDQ2NjQzLCA0NjY1OCwgNDY2NzMsIDQ2Njg4LCA0NjcwMywgNDY3MTgsIAorICAgIDQ2NzMzLCA0Njc0OCwgNDY3NjMsIDQ2Nzc4LCA0Njc5MywgNDY4MDgsIDQ2ODIzLCA0NjgzOCwgNDY4NTMsIDQ2ODY4LCAKKyAgICA0Njg4MywgNDY4OTgsIDQ2OTEzLCA0NjkyOCwgNDY5NDMsIDQ2OTU4LCA0Njk3MywgNDY5ODgsIDQ3MDAzLCA0NzAxOCwgCisgICAgNDcwMzMsIDQ3MDQ4LCA0NzA2MywgNDcwNzgsIDQ3MDkzLCA0NzEwOCwgNDcxMjMsIDQ3MTM4LCA0NzE1MywgNDcxNjgsIAorICAgIDQ3MTgzLCA0NzE5OCwgNDcyMTMsIDQ3MjI4LCA0NzI0MywgNDcyNTgsIDQ3MjczLCA0NzI4OCwgNDczMDMsIDQ3MzE5LCAKKyAgICA0NzMzNSwgNDczNTEsIDQ3MzY3LCA0NzM4MywgNDczOTksIDQ3NDE1LCA0NzQzMSwgNDc0NDcsIDQ3NDYzLCA0NzQ3OSwgCisgICAgNDc0OTUsIDQ3NTExLCA0NzUyNywgNDc1NDMsIDQ3NTU5LCA0NzU3NSwgNDc1OTEsIDQ3NjA3LCA0NzYyMywgNDc2MzksIAorICAgIDQ3NjU1LCA0NzY3MSwgNDc2ODcsIDQ3NzAzLCA0NzcxOSwgNDc3MzUsIDQ3NzUxLCA0Nzc2NywgNDc3ODMsIDQ3Nzk5LCAKKyAgICA0NzgxNSwgNDc4MzEsIDQ3ODQ3LCA0Nzg2MywgNDc4NzksIDQ3ODk1LCA0NzkxMSwgNDc5MjcsIDQ3OTQzLCA0Nzk1OSwgCisgICAgNDc5NzUsIDQ3OTkxLCA0ODAwNywgNDgwMjMsIDQ4MDM5LCA0ODA1NSwgNDgwNzEsIDQ4MDg3LCA0ODEwMywgNDgxMTksIAorICAgIDQ4MTM1LCA0ODE1MSwgNDgxNjcsIDQ4MTgzLCA0ODE5OSwgNDgyMTUsIDQ4MjMxLCA0ODI0NywgNDgyNjMsIDQ4Mjc5LCAKKyAgICA0ODI5NSwgNDgzMTEsIDQ4MzI3LCA0ODM0MywgNDgzNTksIDQ4Mzc1LCA0ODM5MSwgNDg0MDcsIDQ4NDIzLCA0ODQzOSwgCisgICAgNDg0NTUsIDQ4NDcxLCA0ODQ4NywgNDg1MDMsIDQ4NTE5LCA0ODUzNSwgNDg1NTEsIDQ4NTY3LCA0ODU4MywgNDg1OTksIAorICAgIDQ4NjE1LCA0ODYzMSwgNDg2NDcsIDQ4NjYzLCA0ODY3OSwgNDg2OTUsIDQ4NzExLCA0ODcyNywgNDg3NDMsIDQ4NzU5LCAKKyAgICA0ODc3NSwgNDg3OTEsIDQ4ODA3LCA0ODgyMywgNDg4MzksIDQ4ODU1LCA0ODg3MSwgNDg4ODcsIDQ4OTAzLCA0ODkxOSwgCisgICAgNDg5MzUsIDQ4OTUxLCA0ODk2NywgNDg5ODMsIDQ4OTk5LCA0OTAxNSwgNDkwMzEsIDQ5MDQ3LCA0OTA2MywgNDkwNzksIAorICAgIDQ5MDk1LCA0OTExMSwgNDkxMjcsIDQ5MTQzLCA0OTE1OSwgNDkxNzUsIDQ5MTkxLCA0OTIwNywgNDkyMjMsIDQ5MjM5LCAKKyAgICA0OTI1NSwgNDkyNzEsIDQ5Mjg3LCA0OTMwMywgNDkzMTksIDQ5MzM1LCA0OTM1MSwgNDkzNjcsIDQ5MzgzLCA0OTM5OSwgCisgICAgNDk0MTUsIDQ5NDMxLCA0OTQ0NywgNDk0NjMsIDQ5NDc5LCA0OTQ5NSwgNDk1MTEsIDQ5NTI3LCA0OTU0MywgNDk1NTksIAorICAgIDQ5NTc1LCA0OTU5MSwgNDk2MDcsIDQ5NjIzLCA0OTYzOSwgNDk2NTUsIDQ5NjcxLCA0OTY4NywgNDk3MDMsIDQ5NzE5LCAKKyAgICA0OTczNSwgNDk3NTEsIDQ5NzY3LCA0OTc4MywgNDk3OTksIDQ5ODE1LCA0OTgzMSwgNDk4NDcsIDQ5ODYzLCA0OTg3OSwgCisgICAgNDk4OTUsIDQ5OTExLCA0OTkyNywgNDk5NDMsIDQ5OTU5LCA0OTk3NSwgNDk5OTEsIDUwMDA3LCA1MDAyMywgNTAwMzksIAorICAgIDUwMDU1LCA1MDA3MSwgNTAwODcsIDUwMTAzLCA1MDExOSwgNTAxMzUsIDUwMTUxLCA1MDE2NywgNTAxODMsIDUwMTk5LCAKKyAgICA1MDIxNSwgNTAyMzEsIDUwMjQ3LCA1MDI2MywgNTAyNzksIDUwMjk1LCA1MDMxMSwgNTAzMjcsIDUwMzQzLCA1MDM1OSwgCisgICAgNTAzNzUsIDUwMzkxLCA1MDQwNywgNTA0MjMsIDUwNDM5LCA1MDQ1NSwgNTA0NzEsIDUwNDg3LCA1MDUwMywgNTA1MTksIAorICAgIDUwNTM1LCA1MDU1MSwgNTA1NjcsIDUwNTgzLCA1MDU5OSwgNTA2MTUsIDUwNjMxLCA1MDY0NywgNTA2NjMsIDUwNjc5LCAKKyAgICA1MDY5NSwgNTA3MTEsIDUwNzI3LCA1MDc0MywgNTA3NTksIDUwNzc1LCA1MDc5MSwgNTA4MDcsIDUwODIzLCA1MDgzOSwgCisgICAgNTA4NTUsIDUwODcxLCA1MDg4NywgNTA5MDMsIDUwOTE5LCA1MDkzNSwgNTA5NTEsIDUwOTY3LCA1MDk4MywgNTA5OTksIAorICAgIDUxMDE1LCA1MTAzMSwgNTEwNDcsIDUxMDYzLCA1MTA3OSwgNTEwOTUsIDUxMTExLCA1MTEyNywgNTExNDMsIDUxMTU5LCAKKyAgICA1MTE3NSwgNTExOTEsIDUxMjA3LCA1MTIyMywgNTEyMzksIDUxMjU1LCA1MTI3MSwgNTEyODcsIDUxMzAzLCA1MTMxOSwgCisgICAgNTEzMzUsIDUxMzUxLCA1MTM2NywgNTEzODMsIDUxMzk5LCA1MTQxNSwgNTE0MzEsIDUxNDQ3LCA1MTQ2MywgNTE0NzksIAorICAgIDUxNDk1LCA1MTUxMSwgNTE1MjcsIDUxNTQzLCA1MTU1OSwgNTE1NzUsIDUxNTkxLCA1MTYwNywgNTE2MjMsIDUxNjM5LCAKKyAgICA1MTY1NSwgNTE2NzEsIDUxNjg3LCA1MTcwMywgNTE3MTksIDUxNzM1LCA1MTc1MSwgNTE3NjcsIDUxNzgzLCA1MTc5OSwgCisgICAgNTE4MTUsIDUxODMxLCA1MTg0NywgNTE4NjMsIDUxODc5LCA1MTg5NSwgNTE5MTEsIDUxOTI3LCA1MTk0MywgNTE5NTksIAorICAgIDUxOTc1LCA1MTk5MSwgNTIwMDcsIDUyMDIzLCA1MjAzOSwgNTIwNTUsIDUyMDcxLCA1MjA4NywgNTIxMDMsIDUyMTE5LCAKKyAgICA1MjEzNSwgNTIxNTEsIDUyMTY3LCA1MjE4MywgNTIxOTksIDUyMjE1LCA1MjIzMSwgNTIyNDcsIDUyMjYzLCA1MjI3OSwgCisgICAgNTIyOTUsIDUyMzExLCA1MjMyNywgNTIzNDMsIDUyMzU5LCA1MjM3NSwgNTIzOTEsIDUyNDA3LCA1MjQyMywgNTI0MzksIAorICAgIDUyNDU1LCA1MjQ3MSwgNTI0ODcsIDUyNTAzLCA1MjUxOSwgNTI1MzUsIDUyNTUxLCA1MjU2NywgNTI1ODMsIDUyNTk5LCAKKyAgICA1MjYxNSwgNTI2MzEsIDUyNjQ3LCA1MjY2MywgNTI2NzksIDUyNjk1LCA1MjcxMSwgNTI3MjcsIDUyNzQzLCA1Mjc1OSwgCisgICAgNTI3NzUsIDUyNzkxLCA1MjgwNywgNTI4MjMsIDUyODM5LCA1Mjg1NSwgNTI4NzEsIDUyODg3LCA1MjkwMywgNTI5MTksIAorICAgIDUyOTM1LCA1Mjk1MSwgNTI5NjcsIDUyOTgzLCA1Mjk5OSwgNTMwMTUsIDUzMDMxLCA1MzA0NywgNTMwNjMsIDUzMDc5LCAKKyAgICA1MzA5NSwgNTMxMTEsIDUzMTI3LCA1MzE0MywgNTMxNTksIDUzMTc1LCA1MzE5MSwgNTMyMDcsIDUzMjIzLCA1MzIzOSwgCisgICAgNTMyNTUsIDUzMjcxLCA1MzI4NywgNTMzMDMsIDUzMzE5LCA1MzMzNSwgNTMzNTEsIDUzMzY3LCA1MzM4MywgNTMzOTksIAorICAgIDUzNDE1LCA1MzQzMSwgNTM0NDcsIDUzNDYzLCA1MzQ3OSwgNTM0OTUsIDUzNTExLCA1MzUyNywgNTM1NDMsIDUzNTU5LCAKKyAgICA1MzU3NSwgNTM1OTEsIDUzNjA3LCA1MzYyMywgNTM2MzksIDUzNjU1LCA1MzY3MSwgNTM2ODcsIDUzNzAzLCA1MzcxOSwgCisgICAgNTM3MzUsIDUzNzUxLCA1Mzc2NywgNTM3ODMsIDUzNzk5LCA1MzgxNSwgNTM4MzEsIDUzODQ3LCA1Mzg2MywgNTM4NzksIAorICAgIDUzODk1LCA1MzkxMSwgNTM5MjcsIDUzOTQzLCA1Mzk1OSwgNTM5NzUsIDUzOTkxLCA1NDAwNywgNTQwMjMsIDU0MDM5LCAKKyAgICA1NDA1NSwgNTQwNzEsIDU0MDg3LCA1NDEwMywgNTQxMTksIDU0MTM1LCA1NDE1MSwgNTQxNjcsIDU0MTgzLCA1NDE5OSwgCisgICAgNTQyMTUsIDU0MjMxLCA1NDI0NywgNTQyNjMsIDU0Mjc5LCA1NDI5NSwgNTQzMTEsIDU0MzI3LCA1NDM0MywgNTQzNTksIAorICAgIDU0Mzc1LCA1NDM5MSwgNTQ0MDcsIDU0NDIzLCA1NDQzOSwgNTQ0NTUsIDU0NDcxLCA1NDQ4NywgNTQ1MDMsIDU0NTE5LCAKKyAgICA1NDUzNSwgNTQ1NTEsIDU0NTY3LCA1NDU4MywgNTQ1OTksIDU0NjE1LCA1NDYzMSwgNTQ2NDcsIDU0NjYzLCA1NDY3OSwgCisgICAgNTQ2OTUsIDU0NzExLCA1NDcyNywgNTQ3NDMsIDU0NzU5LCA1NDc3NSwgNTQ3OTEsIDU0ODA3LCA1NDgyMywgNTQ4MzksIAorICAgIDU0ODU1LCA1NDg3MSwgNTQ4ODcsIDU0OTAzLCA1NDkxOSwgNTQ5MzUsIDU0OTUxLCA1NDk2NywgNTQ5ODMsIDU0OTk5LCAKKyAgICA1NTAxNSwgNTUwMzEsIDU1MDQ3LCA1NTA2MywgNTUwNzksIDU1MDk1LCA1NTExMSwgNTUxMjcsIDU1MTQzLCA1NTE1OSwgCisgICAgNTUxNzUsIDU1MTkxLCA1NTIwNywgNTUyMjMsIDU1MjM5LCA1NTI1NSwgNTUyNzEsIDU1Mjg3LCA1NTMwMywgNTUzMTksIAorICAgIDU1MzM1LCA1NTM1MSwgNTUzNjcsIDU1MzgzLCA1NTM5OSwgNTU0MTUsIDU1NDMxLCA1NTQ0NywgNTU0NjMsIDU1NDc5LCAKKyAgICA1NTQ5NSwgNTU1MTEsIDU1NTI3LCA1NTU0MywgNTU1NTksIDU1NTc1LCA1NTU5MSwgNTU2MDcsIDU1NjIzLCA1NTYzOSwgCisgICAgNTU2NTUsIDU1NjcxLCA1NTY4NywgNTU3MDMsIDU1NzE5LCA1NTczNSwgNTU3NTEsIDU1NzY3LCA1NTc4MywgNTU3OTksIAorICAgIDU1ODE1LCA1NTgzMSwgNTU4NDcsIDU1ODYzLCA1NTg3OSwgNTU4OTUsIDU1OTExLCA1NTkyNywgNTU5NDMsIDU1OTU5LCAKKyAgICA1NTk3NSwgNTU5OTAsIDE1MDM5LCA1NTk5OSwgNTYwMDUsIDU2MDExLCA1NjAyMSwgNTYwMjksIDEzMjE3LCAxMzc1MiwgCisgICAgODM4NSwgNTYwNDIsIDE0ODQsIDU2MDUwLCAyNTUwMiwgNTY2MiwgNTYwNTYsIDU2MDYxLCA1NjA2NiwgNTYwNzEsIDU2MDc2LCAKKyAgICA1NjA4MiwgNTYwODcsIDU2MDkzLCA1NjA5OCwgNTYxMDQsIDU2MTA5LCA1NjExNCwgNTYxMTksIDU2MTI0LCA1NjEzMCwgCisgICAgNTYxMzUsIDU2MTQwLCA1NjE0NSwgNTYxNTAsIDU2MTU1LCA1NjE2MCwgNTYxNjUsIDU2MTcxLCA1NjE3NiwgNTYxODIsIAorICAgIDU2MTg5LCAyNTIwLCA1NjE5NCwgNTYyMDAsIDY5NzcsIDU2MjA0LCA1NjIwOSwgNTYyMTYsIDU2MjI0LCA0MCwgNTYyMjgsIAorICAgIDU2MjM0LCA1NjIzOSwgNTYyNDQsIDU2MjQ4LCA1NjI1MywgNTYyNTcsIDU2MjYxLCA5MDg5LCA1NjI2NSwgNTYyNzUsIAorICAgIDU2Mjg4LCA1NjI5OSwgNTYzMTIsIDU2MzE5LCA1NjMyNSwgNTYzMzAsIDU2MzM2LCA1NjM0MiwgNTYzNDgsIDU2MzUzLCAKKyAgICA1NjM1OCwgNTYzNjMsIDU2MzY4LCA1NjM3MiwgNTYzNzcsIDU2MzgyLCA1NjM4NywgNTYzOTMsIDU2Mzk5LCA1NjQwNSwgCisgICAgNTY0MTAsIDU2NDE0LCA1NjQxOSwgNTY0MjQsIDU2NDI4LCA1NjQzMywgNTY0MzgsIDU2NDQzLCA1NjQ0NywgOTEwNSwgCisgICAgOTExNiwgOTEyMSwgMTUyNywgNTY0NTEsIDE1MzIsIDU2NDU3LCAxNDUxNiwgNTY0NjAsIDE1NjMsIDU2NDY2LCAxNTY5LCAKKyAgICAxNTc1LCA5MTUxLCA1NjQ3MSwgNTY0NzksIDU2NDg2LCA1NjQ5MCwgNTY0OTYsIDU2NTAxLCAyODk2OSwgNTY1MDYsIAorICAgIDU2NTEzLCA1NjUxOCwgNTY1MjIsIDU2NTI2LCAxNTgwLCAxNDYwOCwgMTQ2MTksIDU2NTM1LCA1NjU0MiwgNTY1NDcsIAorICAgIDU2NTUxLCAxNDY0NCwgMTU4NCwgMzUyMjUsIDU2NTU0LCA1NjU1OSwgNTY1NjksIDU2NTc4LCA1NjU4MywgNTY1ODcsIAorICAgIDU2NTkzLCAxNTg5LCAzNzExMCwgNTY1OTgsIDU2NjA3LCA1NjYxMywgNTY2MTgsIDkzMDEsIDkzMDcsIDU2NjI0LCA1NjYzNiwgCisgICAgNTY2NTMsIDU2NjcwLCA1NjY4NywgNTY3MDQsIDU2NzIxLCA1NjczOCwgNTY3NTUsIDU2NzcyLCA1Njc4OSwgNTY4MDYsIAorICAgIDU2ODIzLCA1Njg0MCwgNTY4NTcsIDU2ODc0LCA1Njg5MSwgNTY5MDgsIDU2OTI1LCA1Njk0MiwgNTY5NTksIDU2OTc2LCAKKyAgICA1Njk5MywgNTcwMTAsIDU3MDI3LCA1NzA0NCwgNTcwNjEsIDU3MDc4LCA1NzA5NSwgNTcxMTIsIDU3MTI5LCA1NzE0NiwgCisgICAgNTcxNjMsIDU3MTgwLCA1NzE5NywgNTcyMTQsIDU3MjMxLCA1NzI0OCwgNTcyNjUsIDU3MjgyLCA1NzI5OSwgNTczMTYsIAorICAgIDU3MzMzLCA1NzM1MCwgNTczNjcsIDU3Mzg0LCA1NzQwMSwgNTc0MTgsIDU3NDM1LCA1NzQ1MiwgNTc0NjksIDU3NDgwLCAKKyAgICA1NzQ4NSwgMTU5NCwgNTc0ODksIDU3NDk1LCA1NzUwMCwgNTc1MDUsIDc3NTksIDE1OTksIDU3NTExLCA1NzUyMCwgMjU3ODUsIAorICAgIDU3NTI1LCA1NzUzNiwgNTc1NDYsIDU3NTUxLCA1NzU1OCwgNTc1NjQsIDU3NTY5LCA1NzU3NCwgMTQ4OTYsIDU3NTc4LCAKKyAgICA5MzE4LCAxNjA0LCA5MzIzLCA1NzU4NCwgNTc1ODksIDU3NTk1LCA1NzYwMCwgNTc2MDUsIDU3NjEwLCA1NzYxNSwgNTc2MjAsIAorICAgIDU3NjI1LCA1NzYzMCwgNTc2MzYsIDU3NjQyLCA1NzY0OCwgNTc2NTMsIDU3NjU3LCA1NzY2MiwgNTc2NjcsIDU3NjcxLCAKKyAgICA1NzY3NiwgNTc2ODEsIDU3Njg2LCA1NzY5MCwgNTc2OTUsIDU3NzAxLCA1NzcwNiwgNTc3MTEsIDU3NzE1LCA1NzcyMCwgCisgICAgNTc3MjUsIDU3NzMxLCA1NzczNiwgNTc3NDEsIDU3NzQ3LCA1Nzc1MywgNTc3NTgsIDU3NzYyLCA1Nzc2NywgNTc3NzIsIAorICAgIDU3Nzc3LCA1Nzc4MSwgNTc3ODYsIDU3NzkxLCA1Nzc5NiwgNTc4MDIsIDU3ODA4LCA1NzgxMywgNTc4MTcsIDU3ODIxLCAKKyAgICA1NzgyNiwgNTc4MzEsIDU3ODM2LCAyNzE0NSwgNTc4NDAsIDU3ODQ1LCA1Nzg1MCwgNTc4NTYsIDU3ODYxLCA1Nzg2NiwgCisgICAgNTc4NzAsIDU3ODc1LCA1Nzg4MCwgNTc4ODYsIDU3ODkxLCA1Nzg5NiwgNTc5MDIsIDU3OTA4LCA1NzkxMywgNTc5MTcsIAorICAgIDU3OTIyLCA1NzkyNywgNTc5MzEsIDU3OTM2LCA1Nzk0MSwgNTc5NDYsIDU3OTUyLCA1Nzk1OCwgNTc5NjMsIDU3OTY3LCAKKyAgICA1Nzk3MiwgNTc5NzcsIDU3OTgxLCA1Nzk4NiwgNTc5OTEsIDU3OTk2LCA1ODAwMCwgNTgwMDMsIDI5NjIwLCA1ODAwOCwgCisgICAgNTgwMTYsIDE0OTYyLCAxNDk4NiwgOTQxNCwgNTgwMjIsIDU4MDMyLCA1ODA0NywgOTQxOSwgNTgwNTgsIDU4MDYzLCAKKyAgICA1ODA3NCwgNTgwODYsIDU4MDk4LCA1ODExMCwgMjY1NCwgNTgxMjIsIDU4MTI3LCA1ODEzMSwgNTgxMzcsIDU4MTQzLCAKKyAgICA1ODE0OCwgMTYxNiwgMTAzNiwgNTgxNTcsIDU4MTYyLCAzNzE1NiwgNTgxNjYsIDU4MTcwLCA1ODE3NSwgNTgxNzksIAorICAgIDE1MDQ3LCA1ODE4NCwgNTgxODcsIDU4MTk1LCA1ODIwMywgMTYyMCwgOTQ0NCwgOTQ1MCwgMTYyNSwgNTgyMTEsIDU4MjE4LCAKKyAgICA1ODIyMywgNTgyMzIsIDU4MjQyLCA1ODI0OSwgNTgyNTQsIDE2MzAsIDU4MjYxLCA1ODI2NiwgMTUxNjIsIDU4MjcwLCAKKyAgICA1ODI3NSwgNTgyODIsIDU4Mjg4LCA1ODI5MiwgNTgzMDMsIDU4MzEzLCAxNTE4NCwgNzY3MiwgNzY3OSwgMTYzNSwgNTgzMjAsIAorICAgIDU4MzI2LCA1ODMzNCwgNTgzNDEsIDU4MzQ3LCA1ODM1NCwgNTgzNjYsIDU4MzcyLCA1ODM3NywgNTgzODksIDU4NDAwLCAKKyAgICA1ODQwOSwgNTg0MTksIDM2ODEsIDI4ODA1LCAyODgxNCwgMTUyMjQsIDE2NDAsIDE2NDQsIDU4NDI3LCA1ODQzOCwgNTg0NDMsIAorICAgIDE2NDcsIDU4NDUxLCA1ODQ1NiwgMTUyNzUsIDU4NDY4LCA1ODQ3NCwgNTg0NzksIDU4NDg3LCAxNjUyLCA1ODQ5MiwgCisgICAgNTg0OTcsIDU4NTA1LCA1ODUxMywgNTg1MjAsIDU4NTI5LCA1ODUzNywgNTg1NDYsIDE2NTcsIDU4NTUwLCAxNjYyLCAKKyAgICA1ODU1NSwgNTg1NjIsIDE1MzQ5LCA1ODU3MCwgNTg1NzYsIDU4NTgxLCA1ODU4OSwgNTg1OTYsIDU4NjA0LCAyMDc3OSwgCisgICAgNTg2MDksIDk1NzksIDU4NjE4LCA1ODYyNCwgNTg2MzEsIDU4NjM4LCA1ODY0NCwgNTg2NTQsIDU4NjYwLCA1ODY2NSwgCisgICAgNTg2NzAsIDU4Njc4LCA5NTg4LCA5NTkzLCA1ODY4NiwgNTg2OTIsIDU4NzAwLCAzNzQ2LCAxNTM5MSwgMzcyNDQsIDU4NzA1LCAKKyAgICA1ODcxMSwgNTg3MTYsIDU4NzI0LCA1ODczMSwgMTA0MDQsIDU4NzM2LCA1ODc0MiwgMTY3MywgNTg3NDcsIDU4NzUwLCAKKyAgICAxMDczLCA1ODc1NiwgNTg3NjEsIDU4NzY2LCA1ODc3MiwgNTg3NzcsIDU4NzgyLCA1ODc4NywgNTg3OTIsIDU4Nzk3LCAKKyAgICA1ODgwMiwgMTY4MiwgOSwgNTg4MDgsIDU4ODEyLCA1ODgxNywgNTg4MjEsIDU4ODI1LCA1ODgyOSwgMjk4NjQsIDU4ODM0LCAKKyAgICA1ODgzOSwgNTg4NDQsIDU4ODQ4LCA1ODg1MSwgNTg4NTUsIDU4ODU5LCA1ODg2NCwgNTg4NjgsIDU4ODczLCA1ODg3NywgCisgICAgMzI1NDcsIDMyNTUyLCAzMjU1NywgNTg4ODAsIDU4ODg3LCA1ODg5MywgMzY5NzYsIDU4OTAzLCAzMjU2MywgMzAxMTcsIAorICAgIDI5ODc5LCAyOTg4NSwgMzI1NzksIDI5ODkxLCA1ODkwOCwgNTg5MTMsIDMwMTUwLCA1ODkxNywgNTg5MjAsIDU4OTI0LCAKKyAgICA1ODkzMSwgNTg5MzQsIDU4OTM5LCA1ODk0MywgNTg5NDcsIDU4OTUwLCA1ODk2MCwgNTg5NzIsIDU4OTc5LCAzMTUxNCwgCisgICAgNTg5ODIsIDY5OTQsIDg1NiwgNTg5ODUsIDU4OTg5LCA1ODk5NCwgNTg5OTgsIDU5MDAxLCAxMTk5MiwgNTkwMDgsIDU5MDE1LCAKKyAgICA1OTAyOCwgNTkwMzYsIDU5MDQ1LCA1OTA1MCwgNTkwNjAsIDU5MDczLCA1OTA4NSwgNTkwOTIsIDU5MDk3LCA1OTEwNiwgCisgICAgNTkxMTksIDU5MTM3LCA1OTE0MiwgNTkxNDksIDU5MTU1LCA1OTE2MCwgNTkxNjgsIDU5MTc1LCAyNTM0MSwgNjE5LCAKKyAgICA1OTE4MSwgNTkxODcsIDU5MTk3LCA1OTIwMywgNTkyMDgsIDI5OTA5LCA0NDk4LCAyOTkyMywgNTkyMTIsIDU5MjIyLCAKKyAgICA1OTIyNywgNTkyMzcsIDU5MjUyLCA1OTI1OCwgNTkyNjQsIDI5OTMzLCA1OTI2OSwgMjkwODEsIDU5MjczLCA1OTI3OCwgCisgICAgNTkyODMsIDU5Mjg3LCA1OTI5MiwgMTUyMjcsIDU5Mjk5LCA1OTMwNCwgNTkzMDgsIDQ1MzksIDI5OTU5LCA1OTMxMiwgCisgICAgNTkzMTgsIDMzMiwgNTkzMjgsIDU5MzM1LCA1OTM0MiwgNTkzNDcsIDU5MzU2LCA1NjU2MywgNTkzNjIsIDU5MzcwLCAKKyAgICA1OTM3NCwgNTkzNzgsIDU5MzgyLCA1OTM4NiwgNTkzOTEsIDU5Mzk1LCA1OTQwMSwgNTk0MDksIDU5NDE0LCA1OTQxOSwgCisgICAgNTk0MjMsIDU5NDI4LCA1OTQzMiwgNTk0MzYsIDU5NDQyLCA1OTQ0OCwgNTk0NTMsIDU5NDU3LCAzMDA4MywgNTk0NjIsIAorICAgIDMwMDg5LCAzMDA5NSwgNTk0NjcsIDU5NDczLCA1OTQ4MCwgNTk0ODUsIDU5NDg5LCAyOTA5OCwgMTQ4ODksIDU5NDkyLCAKKyAgICA1OTQ5NiwgNTk1MDEsIDU5NTA4LCA1OTUxNCwgNTk1MTgsIDU5NTIzLCAzNjY4NiwgNTk1MjksIDU5NTMzLCA1OTUzNywgCisgICAgNTk1NDIsIDU5NTQ4LCA1OTU1NCwgNTk1NjYsIDU5NTc1LCA1OTU4NSwgNTk1OTEsIDU5NTk4LCA1OTYwMywgNTk2MDgsIAorICAgIDU5NjEyLCA1OTYxNSwgNTk2MjEsIDU5NjI4LCA1OTYzMywgNTk2MzgsIDU5NjQ1LCA1OTY1MiwgNTk2NTgsIDU5NjYzLCAKKyAgICA1OTY2OCwgNTk2NzYsIDU5NjgxLCAyMzgyLCA1OTY4NSwgNTk2OTAsIDU5Njk2LCA1OTcwMSwgNTk3MDcsIDU5NzEyLCAKKyAgICA1OTcxNywgNTk3MjIsIDU5NzI4LCAzMDExNiwgNTk3MzMsIDU5NzM5LCA1OTc0NSwgNTk3NTEsIDMwMTgwLCA1OTc1NiwgCisgICAgNTk3NjEsIDU5NzY2LCAzMDE5MSwgNTk3NzEsIDU5Nzc2LCA1OTc4MSwgNTk3ODcsIDU5NzkzLCAzMDE5NiwgNTk3OTgsIAorICAgIDU5ODAzLCA1OTgwOCwgMzAyNTEsIDMwMjU3LCA1OTgxMywgNTk4MTgsIDMwMjYyLCA1OTgyMywgMjYwMTIsIDMwMjg0LCAKKyAgICAzMDI4OCwgNTk4MjgsIDU5ODA0LCA1OTgzMiwgNTk4NDAsIDU5ODQ2LCA1OTg1NCwgNTk4NjEsIDU5ODY3LCA1OTg3NywgCisgICAgNTk4ODMsIDU5ODkwLCA5MDM2LCAzMDMwMiwgNTk4OTYsIDU5OTA5LCA1OTkxOCwgNTk5MjQsIDU5OTMzLCA1OTkzOSwgCisgICAgMjE2OTYsIDU5OTQ2LCA1OTk1MywgNTk5NjMsIDMwMjUyLCA1OTk2NiwgNTk5NzMsIDU5OTc4LCA1OTk4MiwgNTk5ODYsIAorICAgIDU5OTkxLCA0NjE1LCA1OTk5NSwgNjAwMDAsIDYwMDA1LCAzMjY0MSwgMzI2NDYsIDYwMDA5LCAzMjY2MCwgNjAwMTQsIAorICAgIDMyNjY1LCA2MDAxOSwgNjAwMjUsIDMyNjc3LCAzMjY4MywgMzI2ODksIDYwMDMwLCA2MDAzNiwgMjA3NDQsIDYwMDQ3LCAKKyAgICA2MDA1MCwgNjAwNjIsIDYwMDcwLCAzMDMyNSwgNjAwNzQsIDYwMDgzLCA2MDA5MywgNjAxMDIsIDMwMzM1LCA2MDEwNywgCisgICAgNjAxMTQsIDYwMTIzLCA2MDEyOSwgNjAxMzcsIDYwMTQ0LCA0NTkwLCA0MzI3LCA2MDE0OSwgMzAyNjMsIDYwMTU1LCAKKyAgICA2MDE1OCwgNjAxNjQsIDYwMTcxLCA2MDE3NiwgNjAxODEsIDIxNjIzLCA2MDE4NSwgNjAxOTEsIDYwMTk3LCA2MDIwMiwgCisgICAgNjAyMDcsIDYwMjExLCA2MDIxNywgNjAyMjMsIDMxNDI0LCA4MzMsIDMzNjQyLCAzNDU1NSwgMzQ1NjEsIDYwMjI4LCAKKyAgICA2MDIzMiwgNjAyMzYsIDYwMjM5LCA2MDI1MiwgNjAyNTgsIDYwMjYyLCA2MDI2NSwgNjAyNzAsIDMxNzI3LCA2MDI3NCwgCisgICAgMjkxMDMsIDE5NTMyLCA2MDI4MCwgNDUxOSwgNDUyNywgNzUxMywgNjAyODMsIDYwMjg4LCA2MDI5MywgNjAyOTgsIDYwMzAzLCAKKyAgICA2MDMwOCwgNjAzMTMsIDYwMzE4LCA2MDMyMywgNjAzMjgsIDYwMzM0LCA2MDMzOSwgNjAzNDQsIDYwMzUwLCA2MDM1NSwgCisgICAgNjAzNjAsIDYwMzY1LCA2MDM3MCwgNjAzNzUsIDYwMzgwLCA2MDM4NiwgNjAzOTEsIDYwMzk3LCA2MDQwMiwgNjA0MDcsIAorICAgIDYwNDEyLCA2MDQxNywgNjA0MjIsIDYwNDI3LCA2MDQzMiwgNjA0MzcsIDYwNDQyLCA2MDQ0NywgNjA0NTMsIDYwNDU4LCAKKyAgICA2MDQ2MywgNjA0NjgsIDYwNDczLCA2MDQ3OCwgNjA0ODMsIDYwNDg5LCA2MDQ5NCwgNjA0OTksIDYwNTA0LCA2MDUwOSwgCisgICAgNjA1MTQsIDYwNTE5LCA2MDUyNCwgNjA1MjksIDYwNTM0LCA2MDU0MCwgNjA1NDUsIDYwNTUwLCA2MDU1NSwgNjA1NjAsIAorICAgIDYwNTY2LCA2MDU3MiwgNjA1NzcsIDYwNTgzLCA2MDU4OCwgNjA1OTMsIDYwNTk4LCA2MDYwMywgNjA2MDgsIDE0NzcsIDI0NSwgCisgICAgNjA2MTMsIDYwNjE3LCA2MDYyMSwgNjA2MjUsIDIzMjc0LCA2MDYyOSwgNjA2MzMsIDYwNjM4LCA2MDY0MiwgNjA2NDcsIAorICAgIDYwNjUxLCA2MDY1NSwgNjA2NTksIDYwNjY0LCA2MDY2OCwgMTE3MjksIDYwNjczLCA2MDY3NywgNjA2ODQsIDEzNTEzLCAKKyAgICA2MDY5MywgNjA3MDIsIDYwNzA2LCA2MDcxMSwgNjA3MTYsIDYwNzIwLCAyMzA3MywgMjk3MCwgNjA3MjQsIDYwNzMwLCAKKyAgICA2MDczOSwgNjA3NDcsIDYwNzUzLCA2MDc2NSwgNjA3NzcsIDYwNzgxLCA2MDc4NiwgNjA3OTAsIDYwNzk2LCA2MDgwMiwgCisgICAgNjA4MDcsIDYwODE3LCA2MDgyNywgNjA4MzMsIDYwODM4LCA2MDg0MiwgNjA4NDcsIDYwODUzLCA2MDg2MiwgNjA4NzEsIAorICAgIDYwODc5LCAxMzg2NywgNjA4ODMsIDYwODkyLCA2MDkwMCwgNjA5MTIsIDYwOTIzLCA2MDkzNCwgNjA5NDMsIDYwOTQ3LCAKKyAgICA2MDk1NiwgNjA5NjYsIDYwOTcyLCA2MDk3NywgNjA5ODMsIDYwOTg4LCA5OCwgMjg5MTcsIDYwOTk5LCAyNDM0NSwgMjQzNTUsIAorICAgIDYxMDA1LCA2MTAxMiwgNjEwMTgsIDYxMDIyLCA2MTAzMiwgNjEwNDMsIDYxMDUxLCA2MTA2MCwgNjEwNjUsIDYxMDcwLCAKKyAgICA2MTA3NCwgMTU1OTAsIDYxMDgyLCA2MTA4NiwgNjEwOTIsIDYxMTAyLCA2MTEwOSwgNjExMTUsIDMyNzQwLCAxMTgwLCAKKyAgICA2MTEyMSwgNjExMjQsIDYxMTI4LCA2MTEzOCwgNjExNDQsIDYxMTUxLCAxMTY2NiwgNjExNTgsIDYxMTY0LCA2MTE3MywgCisgICAgNjExODIsIDYxMTg4LCA2MTE5NCwgNjEyMDAsIDYxMjA1LCA2MTIxMiwgNjEyMTksIDYxMjI1LCA2MTIzOCwgNjEyNDcsIAorICAgIDYxMjU2LCA2MTI2MSwgNjEyNjUsIDYxMjcxLCA2MTI3OCwgNjEyODUsIDYxMjkyLCA2MTI5OSwgNjEzMDYsIDYxMzExLCAKKyAgICA2MTMxNSwgNjEzMTksIDYxMzIyLCA2MTMzMiwgNjEzMzYsIDYxMzQ4LCA2MTM1NywgNjEzNjEsIDYxMzY2LCA2MTM3MCwgCisgICAgNjEzNzYsIDYxMzgxLCA2MTM4OCwgNjEzOTcsIDYxNDA1LCA2MTQxMywgNjE0MTgsIDYxNDIyLCA2MTQyNywgNjE0MzIsIAorICAgIDYxNDQyLCA2MTQ1MCwgNjE0NTUsIDYxNDU5LCA2MTQ2MywgNjE0NjksIDYxNDgxLCA2MTQ4OSwgNjE0OTksIDYxNTA2LCAKKyAgICA2MTUxMiwgNjE1MTcsIDYxNTIxLCA2MTUyNSwgNjE1MjksIDYxNTM4LCA2MTU0NywgNjE1NTYsIDYxNTYyLCA2MTU2OCwgCisgICAgNjE1NzQsIDYxNTc5LCA2MTU4NiwgNjE1OTIsIDYxNjAwLCA2MTYwNywgMTA4MjAsIDYxNjEzLCA2MTYxOSwgNjE2MjMsIAorICAgIDEyNTcxLCA2MTYyNywgNjE2MzIsIDYxNjQyLCA2MTY1MSwgNjE2NTcsIDYxNjYzLCA2MTY3MSwgNjE2NzgsIDYxNjgyLCAKKyAgICA2MTY4NiwgNjE2OTIsIDYxNzAwLCA2MTcwNywgNjE3MTMsIDYxNzI0LCA2MTcyOCwgNjE3MzIsIDYxNzM2LCA2MTczOSwgCisgICAgNjE3NDUsIDYxNzUwLCA2MTc1NCwgNjE3NTgsIDYxNzY3LCA2MTc3NSwgNjE3ODIsIDYxNzg4LCA2MTc5NSwgMjIyMDQsIAorICAgIDM2NzI4LCA2MTgwMCwgNjE4MDgsIDYxODEyLCA2MTgxNiwgNjE4MTksIDYxODI3LCA2MTgzNCwgNjE4NDAsIDYxODQ5LCAKKyAgICA2MTg1NywgNjE4NjMsIDYxODY4LCA2MTg3MiwgNjE4NzcsIDYxODgxLCA2MTg4NSwgNjE4OTAsIDYxODk5LCA2MTkwMywgCisgICAgNjE5MTAsIDYxOTE3LCA2MTkyMywgNjE5MzEsIDYxOTM3LCA2MTk0OCwgNjE5NTYsIDYxOTYyLCAyMDg3NCwgNjE5NzEsIAorICAgIDYxOTc4LCA2MTk4NSwgNjE5OTIsIDYxOTk5LCA2MjAwNiwgMzk3MDgsIDExNTA0LCA2MjAxMywgNjIwMjAsIDYyMDI1LCAKKyAgICAzMjc3NiwgMzc4OTIsIDYyMDMxLCA2MjAzNiwgNjIwNDEsIDYyMDQ3LCA2MjA1MywgNjIwNTksIDYyMDY0LCA2MjA2OSwgCisgICAgNjIwNzQsIDYyMDc5LCA2MjA4NSwgNjIwOTAsIDYyMDk2LCA2MjEwMSwgNjIxMDcsIDYyMTEyLCA2MjExNywgNjIxMjIsIAorICAgIDYyMTI3LCA2MjEzMiwgNjIxMzcsIDYyMTQyLCA2MjE0OCwgNjIxNTMsIDYyMTU5LCA2MjE2NCwgNjIxNjksIDYyMTc0LCAKKyAgICA2MjE3OSwgNjIxODQsIDYyMTg5LCA2MjE5NSwgNjIyMDAsIDYyMjA1LCA2MjIxMCwgNjIyMTUsIDYyMjIwLCA2MjIyNSwgCisgICAgNjIyMzAsIDYyMjM1LCA2MjI0MCwgNjIyNDUsIDYyMjUxLCA2MjI1NiwgNjIyNjEsIDYyMjY2LCA2MjI3MSwgNjIyNzYsIAorICAgIDYyMjgxLCA2MjI4NiwgNjIyOTEsIDYyMjk3LCA2MjMwMiwgNjIzMDcsIDYyMzEyLCA2MjMxNywgNjIzMjIsIDYyMzI3LCAKKyAgICA2MjMzMiwgNjIzMzcsIDYyMzQyLCA2MjM0NywgNjIzNTIsIDYyMzU3LCA2MjM2MywgMTc5OCwgMjI0LCAzNTMyMSwgNjIzNjgsIAorICAgIDYyMzcxLCA2MjM3NiwgNjIzODAsIDYyMzgzLCA2MjM4OCwgNjE0MDksIDYyMzk5LCA2MjQwOSwgNjI0MTYsIDYyNDMyLCAKKyAgICA2MjQ0MSwgNjI0NTEsIDYyNDYxLCA2MjQ2OSwgNjI0NzcsIDYyNDgxLCA2MjQ4NCwgNjI0OTEsIDYyNDk3LCA2MjUwOCwgCisgICAgNjI1MjAsIDYyNTMxLCA2MjU0MCwgNjI1NDcsIDEyODcsIDIxNTEyLCA2MjU1NywgMjU0OSwgNjI1NjEsIDYyNTcwLCAxMTQyLCAKKyAgICAxNTU2MywgMzU5NDcsIDYyNTc4LCA2MjU4NiwgNjI2MDAsIDYyNjEzLCA2MjYxNywgNjI2MjIsIDYyNjI3LCA2MjYzMiwgCisgICAgNjI2MzgsIDYyNjQ0LCA2MjY0OSwgNjk4NiwgNjI2NTQsIDYyNjYyLCA5NDQ1LCA2MjY2NywgNjI2NzMsIDE2ODUsIDk0NTcsIAorICAgIDcyOCwgNjI2ODIsIDYyNjkxLCA2MjcwMSwgMjUxMDksIDYyNzEwLCA2MjcxNiwgMTUxMzksIDYyNzIyLCA2MjcyNiwgMzg5NCwgCisgICAgOTc4OCwgNjI3MzIsIDU4NDMzLCA2MjczOSwgMzkxOCwgMTg0LCAxMjQ5MiwgNjI3NDUsIDYyNzU3LCA2Mjc2MSwgNjI3NjcsIAorICAgIDI1ODA1LCA2Mjc3MSwgOTc3NiwgMjY4OSwgNCwgNjI3NzYsIDYyNzg2LCA2Mjc5MiwgNjI4MDMsIDYyODEwLCA2MjgxNiwgCisgICAgNjI4MjIsIDYyODMwLCA2MjgzNywgNjI4NDMsIDYyODUzLCA2Mjg2MywgNjI4NzMsIDEyOTksIDYyODgyLCA2Mjg4OCwgCisgICAgMjcxMiwgMjcxOCwgNjk4MywgMjIyMywgNjI4OTIsIDYyODk2LCA2MjkwNSwgNjI5MTMsIDYyOTI0LCA2MjkzMiwgNjI5NDAsIAorICAgIDYyOTQ2LCA2Mjk1MSwgNjI5NjIsIDYyOTczLCA2Mjk4MSwgNjI5ODcsIDgxMjcsIDYyOTkyLCA2MzAwMCwgNjMwMDQsIAorICAgIDYzMDA4LCA2MzAyMCwgMjYxODEsIDYzMDI3LCA2MzAzNywgNjMwNDMsIDYzMDQ5LCA4MjI5LCA2MzA1OSwgNjMwNzAsIAorICAgIDYzMDgwLCA2MzA4OSwgNjMwOTMsIDYzMTAwLCAxMTQ0LCAxMTk2LCA2MzExMCwgNjMxMTUsIDYzMTIzLCA2MzEzMSwgCisgICAgNjMxNDIsIDYzMTQ5LCA2MzE2MywgMTI0MTcsIDM4NCwgNjMxNzMsIDYzMTc3LCA2MzE4NiwgNjMxOTQsIDYzMjAwLCAKKyAgICA2MzIxNCwgNjMyMjEsIDYzMjI3LCA2MzIzNiwgNjMyNDMsIDYzMjUzLCA2MzI2MSwgMzc1MywgMTg5LCA2MzI2OSwgNjMyODAsIAorICAgIDYzMjg0LCA2MzI5NiwgMjYwMDMsIDE1NiwgNjMzMDIsIDYzMzA3LCA2MzMxMSwgNjMzMTgsIDYzMzI0LCA2MzMzMiwgCisgICAgNjMzMzksIDcyNjMsIDYzMzQ2LCA2MzM1NSwgNjMzNjMsIDM4MTksIDYzMzc2LCAxNTE4NSwgNjMzODAsIDI3NTcsIDQ0MywgCisgICAgNjMzODUsIDYzMzk4LCA2MzQwMywgMTc5NywgNjUzLCA2MzQwNywgMzgyNSwgNjM0MTUsIDYzNDIxLCA5ODMsIDYzNDMxLCAKKyAgICA2MzQ0MCwgNjM0NDUsIDEzMjUxLCAxMzI1OCwgNDMwNDAsIDYzNDQ5LCAzNzYzLCAxMTM5OCwgNjM0NTcsIDYzNDY0LCAKKyAgICAyMTczOSwgNjM0NjgsIDYzNDc1LCA2MzQ4MSwgNjM0ODYsIDYzNDkxLCAxMzI3MSwgMzY3LCA2MzQ5NiwgNjM1MDgsIAorICAgIDYzNTE0LCA2MzUyMiwgMjc2OSwgMTcxNywgNjM1MzAsIDYzNTMyLCA2MzUzNywgNjM1NDIsIDYzNTQ3LCA2MzU1MywgCisgICAgNjM1NTgsIDYzNTYzLCA2MzU2OCwgNjM1NzMsIDYzNTc4LCA2MzU4MywgNjM1ODksIDYzNTk0LCA2MzU5OSwgNjM2MDQsIAorICAgIDYzNjA5LCA2MzYxNCwgNjM2MTksIDYzNjI0LCA2MzYyOSwgNjM2MzUsIDYzNjQwLCA2MzY0NSwgNjM2NTAsIDYzNjU2LCAKKyAgICA2MzY2MSwgNjM2NjcsIDYzNjcyLCA2MzY3NywgNjM2ODIsIDYzNjg3LCA2MzY5MiwgNjM2OTcsIDYzNzAyLCA2MzcwOCwgCisgICAgNjM3MTMsIDYzNzE5LCA2MzcyNCwgNjM3MjksIDYzNzM0LCA2MzczOSwgNjM3NDQsIDYzNzQ5LCA2Mzc1NCwgNjM3NTksIAorICAgIDYzNzY1LCA2Mzc3MCwgNjM3NzUsIDYzNzc5LCA2Mzc4MywgNjM3ODgsIDYzNzkyLCA2Mzc5NywgNjM4MDIsIDYzODA4LCAKKyAgICA2MzgxMywgNjM4MTcsIDYzODIyLCA2MzgyNiwgNjM4MjksIDYzODMxLCA2MzgzNSwgNjM4MzgsIDYzODQzLCA2Mzg0NywgCisgICAgNjM4NTEsIDYzODU1LCA2Mzg1OSwgNjM4NjgsIDYzODcyLCAzMDUyMCwgNjM4NzUsIDMwNTI1LCA2Mzg4MiwgNjM4ODcsIAorICAgIDMwNTMwLCA2Mzg5NiwgNjM5MDUsIDMwNTM2LCA2MzkxMCwgMzA1NDEsIDYzOTE5LCA2MzkyNCwgOTk2NiwgNjM5MjgsIAorICAgIDYzOTMzLCA2MzkzOCwgMzA1NDYsIDYzOTQyLCAzODA1OCwgNjM5NDYsIDYzOTQ5LCA2Mzk1MywgNjY2NywgNjM5NTksIAorICAgIDYzOTY0LCA2Mzk2OCwgMzY0NiwgMzA1NTEsIDYzOTcxLCA2Mzk3NSwgNjM5NzgsIDYzOTgzLCA2Mzk4NywgNjM5OTMsIAorICAgIDY0MDAxLCA2NDAxNCwgNjQwMjMsIDY0MDI5LCA2NDAzNCwgNjQwNDAsIDY0MDQ0LCA2NDA1MCwgNjQwNTgsIDY0MDYzLCAKKyAgICA2NDA3MCwgNjQwNzYsIDY0MDg0LCA2NDA5MywgNjQxMDEsIDMwNTU0LCA2NDEwOCwgNjQxMTgsIDY0MTI3LCA2NDE0MCwgCisgICAgNjQxNDUsIDY0MTUwLCA2NDE1OSwgNjQxNjUsIDY0MTcyLCA2NDE4MywgNjQxOTUsIDY0MjAyLCA2NDIxMSwgNjQyMjAsIAorICAgIDY0MjI5LCA2NDIzNiwgNjQyNDIsIDY0MjQ5LCA2NDI1NywgNjQyNjQsIDY0MjcyLCA2NDI4MSwgNjQyODksIDY0Mjk2LCAKKyAgICA2NDMwNCwgNjQzMTMsIDY0MzIxLCA2NDMzMCwgNjQzNDAsIDY0MzQ5LCA2NDM1NywgNjQzNjQsIDY0MzcyLCA2NDM4MSwgCisgICAgNjQzODksIDY0Mzk4LCA2NDQwOCwgNjQ0MTcsIDY0NDI1LCA2NDQzNCwgNjQ0NDQsIDY0NDUzLCA2NDQ2MywgNjQ0NzQsIAorICAgIDY0NDg0LCA2NDQ5MywgNjQ1MDEsIDY0NTA4LCA2NDUxNiwgNjQ1MjUsIDY0NTMzLCA2NDU0MiwgNjQ1NTIsIDY0NTYxLCAKKyAgICA2NDU2OSwgNjQ1NzgsIDY0NTg4LCA2NDU5NywgNjQ2MDcsIDY0NjE4LCA2NDYyOCwgNjQ2MzcsIDY0NjQ1LCA2NDY1NCwgCisgICAgNjQ2NjQsIDY0NjczLCA2NDY4MywgNjQ2OTQsIDY0NzA0LCA2NDcxMywgNjQ3MjMsIDY0NzM0LCA2NDc0NCwgNjQ3NTUsIAorICAgIDY0NzY3LCA2NDc3OCwgNjQ3ODgsIDY0Nzk3LCA2NDgwNSwgNjQ4MTIsIDY0ODIwLCA2NDgyOSwgNjQ4MzcsIDY0ODQ2LCAKKyAgICA2NDg1NiwgNjQ4NjUsIDY0ODczLCA2NDg4MiwgNjQ4OTIsIDY0OTAxLCA2NDkxMSwgNjQ5MjIsIDY0OTMyLCA2NDk0MSwgCisgICAgNjQ5NDksIDY0OTU4LCA2NDk2OCwgNjQ5NzcsIDY0OTg3LCA2NDk5OCwgNjUwMDgsIDY1MDE3LCA2NTAyNywgNjUwMzgsIAorICAgIDY1MDQ4LCA2NTA1OSwgNjUwNzEsIDY1MDgyLCA2NTA5MiwgNjUxMDEsIDY1MTA5LCA2NTExOCwgNjUxMjgsIDY1MTM3LCAKKyAgICA2NTE0NywgNjUxNTgsIDY1MTY4LCA2NTE3NywgNjUxODcsIDY1MTk4LCA2NTIwOCwgNjUyMTksIDY1MjMxLCA2NTI0MiwgCisgICAgNjUyNTIsIDY1MjYxLCA2NTI3MSwgNjUyODIsIDY1MjkyLCA2NTMwMywgNjUzMTUsIDY1MzI2LCA2NTMzNiwgNjUzNDcsIAorICAgIDY1MzU5LCA2NTM3MCwgNjUzODIsIDY1Mzk1LCA2NTQwNywgNjU0MTgsIDY1NDI4LCA2NTQzNywgNjU0NDUsIDY1NDUyLCAKKyAgICA2NTQ2MCwgNjU0NjksIDY1NDc3LCA2NTQ4NiwgNjU0OTYsIDY1NTA1LCA2NTUxMywgNjU1MjIsIDY1NTMyLCA2NTU0MSwgCisgICAgNjU1NTEsIDY1NTYyLCA2NTU3MiwgNjU1ODEsIDY1NTg5LCA2NTU5OCwgNjU2MDgsIDY1NjE3LCA2NTYyNywgNjU2MzgsIAorICAgIDY1NjQ4LCA2NTY1NywgNjU2NjcsIDY1Njc4LCA2NTY4OCwgNjU2OTksIDY1NzExLCA2NTcyMiwgNjU3MzIsIDY1NzQxLCAKKyAgICA2NTc0OSwgNjU3NTgsIDY1NzY4LCA2NTc3NywgNjU3ODcsIDY1Nzk4LCA2NTgwOCwgNjU4MTcsIDY1ODI3LCA2NTgzOCwgCisgICAgNjU4NDgsIDY1ODU5LCA2NTg3MSwgNjU4ODIsIDY1ODkyLCA2NTkwMSwgNjU5MTEsIDY1OTIyLCA2NTkzMiwgNjU5NDMsIAorICAgIDY1OTU1LCA2NTk2NiwgNjU5NzYsIDY1OTg3LCA2NTk5OSwgNjYwMTAsIDY2MDIyLCA2NjAzNSwgNjYwNDcsIDY2MDU4LCAKKyAgICA2NjA2OCwgNjYwNzcsIDY2MDg1LCA2NjA5NCwgNjYxMDQsIDY2MTEzLCA2NjEyMywgNjYxMzQsIDY2MTQ0LCA2NjE1MywgCisgICAgNjYxNjMsIDY2MTc0LCA2NjE4NCwgNjYxOTUsIDY2MjA3LCA2NjIxOCwgNjYyMjgsIDY2MjM3LCA2NjI0NywgNjYyNTgsIAorICAgIDY2MjY4LCA2NjI3OSwgNjYyOTEsIDY2MzAyLCA2NjMxMiwgNjYzMjMsIDY2MzM1LCA2NjM0NiwgNjYzNTgsIDY2MzcxLCAKKyAgICA2NjM4MywgNjYzOTQsIDY2NDA0LCA2NjQxMywgNjY0MjMsIDY2NDM0LCA2NjQ0NCwgNjY0NTUsIDY2NDY3LCA2NjQ3OCwgCisgICAgNjY0ODgsIDY2NDk5LCA2NjUxMSwgNjY1MjIsIDY2NTM0LCA2NjU0NywgNjY1NTksIDY2NTcwLCA2NjU4MCwgNjY1OTEsIAorICAgIDY2NjAzLCA2NjYxNCwgNjY2MjYsIDY2NjM5LCA2NjY1MSwgNjY2NjIsIDY2Njc0LCA2NjY4NywgNjY2OTksIDY2NzEyLCAKKyAgICA2NjcyNiwgNjY3MzksIDY2NzUxLCA2Njc2MiwgNjY3NzIsIDY2NzgxLCA2Njc4OSwgNjY3OTYsIDY2ODAxLCA2NTE4LCAKKyAgICA2NjgwOCwgMzA1NjQsIDY2ODEzLCA2NjgxOCwgMzA1NjksIDY2ODI0LCAxOTE4NiwgMzA1NzQsIDY2ODI5LCA2NjgzNSwgCisgICAgNjY4NDMsIDY2ODQ5LCA2Njg1NSwgNjY4NjIsIDY2ODY5LCA2Njg3NCwgNjY4NzgsIDY2ODgxLCA2Njg4NSwgNjY4OTQsIAorICAgIDY2OTAwLCA2NjkxMiwgNjY5MjMsIDY2OTI3LCAzMDMyLCA2NDkzLCA2NjkzMiwgNjY5MzUsIDY2OTM3LCA2Njk0MSwgCisgICAgNjY5NDUsIDY2OTQ5LCAyNDA0NCwgNjY5NTQsIDY2OTU4LCA2Njk2MSwgNjY5NjYsIDY2OTcwLCA2Njk3NywgNjY5ODMsIAorICAgIDY2OTg3LCA2Njk5MSwgNjY5OTQsIDMwNTkxLCA2Njk5OSwgNjcwMDYsIDY3MDE1LCA2NzAyMywgNjcwMzQsIDY3MDQyLCAKKyAgICA2NzA1MCwgNjcwNTcsIDY3MDY0LCA2NzA3MCwgNjcwODEsIDMwNTk2LCA2NzA4NiwgNjcwOTcsIDY3MTA5LCA2NzExNywgCisgICAgNjcxMjgsIDY3MTM3LCA2NzE0OCwgNjcxNTMsIDY3MTYxLCAyNTE1LCA2NzE2NiwgMzIyMzQsIDY3MTc5LCA2NzE4MywgCisgICAgNjcxOTUsIDY3MjAzLCA2NzIwOCwgNjcyMTYsIDE1NzUwLCA2NzIyNywgNjcyMzMsIDY3MjQwLCA2NzI0OCwgNjcyNTQsIAorICAgIDMwNjA2LCA2NzI1OSwgMzg0NCwgNTYwMjUsIDY3MjY2LCA2NzI2OSwgNjcyNzcsIDY3MjkwLCA2NzMwMywgNjczMTYsIAorICAgIDY3MzI5LCA2NzMzNiwgNjczNDcsIDY3MzU2LCAzOTUyNSwgMzk1MzAsIDY3MzYxLCA2NzM2NSwgNjczNzMsIDY3MzgwLCAKKyAgICA2NzM4OSwgNjczOTcsIDY3NDAzLCA2NzQxMiwgNjc0MjAsIDY3NDI4LCA2NzQzMiwgNjc0NDEsIDY3NDUwLCA2NzQ2MCwgCisgICAgNjc0NzMsIDY3NDg2LCA2NzQ5NiwgMzA2MTEsIDY3NTAyLCA2NzUwOSwgNjc1MTUsIDMwNjE3LCA2NzUyMCwgNjc1MjMsIAorICAgIDY3NTI3LCA2NzUzNSwgNjc1NDQsIDM5MjYzLCA2NzU1MiwgNjc1NjEsIDY3NTY5LCA2NzU3NiwgNjc1ODQsIDY3NTk0LCAKKyAgICA2NzYwMywgNjc2MTIsIDY3NjIxLCA2NzYyOSwgNjc2NDAsIDY3NjUwLCA3Nzk5LCAxOTgwMSwgNjc2NTksIDY3NjY0LCAKKyAgICA2NzY2OSwgNjc2NzMsIDY3Njc3LCA2NzY4MiwgNjc2ODgsIDY3NjkzLCA2NzY5OCwgNjc3MDQsIDY3NzA5LCA2NzcxNCwgCisgICAgMTk3NjYsIDY3NzE5LCA2NzcyNiwgNjc3MzQsIDY3NzQyLCA2Nzc0NywgNjc3NTQsIDY3NzYxLCA2Nzc2NSwgNjc3NjksIAorICAgIDY3Nzc3LCA2Nzc4NSwgMzA2MzQsIDY3NzkxLCA2Nzc5NywgNjc4MDksIDY3ODE1LCA2NzgxOSwgNjc4MjYsIDY3ODMxLCAKKyAgICA2Nzg0MiwgNjc4NTIsIDY3ODYyLCA2Nzg3NCwgNjc4ODAsIDY3ODkwLCA2NzkwMCwgMzA2NjEsIDY3OTA5LCA2NzkxOCwgCisgICAgNjc5MjQsIDY3OTM2LCA2Nzk0NywgNjc5NTQsIDY3OTU5LCA2Nzk2MywgNjc5NzEsIDY3OTc3LCA2Nzk4MiwgNjc5ODcsIAorICAgIDY3OTk0LCA2ODAwMiwgNjgwMTQsIDY4MDI0LCA2ODAzMywgNjgwNDIsIDY4MDQ5LCAzMjA5OCwgMjIwMjcsIDY4MDU1LCAKKyAgICA2ODA2MCwgNjgwNjQsIDY4MDY4LCA2ODA3MywgNjgwNzksIDY4MDkwLCA2ODEwMywgNjgxMDgsIDY4MTE1LCAzMDY2NiwgCisgICAgNjgxMjAsIDY4MTMyLCA2ODE0MSwgNjgxNTEsIDY4MTYyLCA2ODE3NSwgNjgxODIsIDY4MTkxLCA2ODIwMCwgNjgyMDgsIAorICAgIDY4MjEzLCA2ODIxOSwgMTAyNywgNjgyMjQsIDY4MjI5LCA2ODIzNCwgNjgyMzksIDY4MjQ1LCA2ODI1MCwgNjgyNTUsIAorICAgIDY4MjYxLCA2ODI2NywgNjgyNzIsIDY4Mjc2LCA2ODI4MSwgNjgyODYsIDY4MjkxLCA1NjUzMSwgNjgyOTYsIDY4MzAxLCAKKyAgICA2ODMwNiwgNjgzMTEsIDY4MzE3LCA2ODMyMywgNjgzMjgsIDY4MzMyLCA2ODMzNywgNjgzNDIsIDY4MzQ3LCA2ODM1MywgCisgICAgNjgzNTgsIDY4MzY0LCA2ODM2OSwgNjgzNzQsIDY4Mzc5LCA2ODM4NCwgNjgzODgsIDY4Mzk0LCA2ODM5OSwgNjg0MDgsIAorICAgIDY4NDEzLCA2ODQxOCwgNjg0MjMsIDY4NDI4LCA2ODQzMiwgNjg0MzksIDY4NDQ1LCAxNTQxMiwgMTU0MTksIDQzMjk1LCAKKyAgICA2ODQ1MCwgNjg0MDAsIDY4NDUyLCA2ODQ2MiwgMzA2NzUsIDY4NDY1LCA2ODQ3NCwgNjg0ODAsIDQ2MzgsIDMwNjgwLCAKKyAgICA2ODQ4NCwgNjg0OTAsIDY4NDk1LCA2ODUwMSwgNjg1MDYsIDY4NTEwLCA2ODUxNywgNjg1MjIsIDY4NTMyLCA2ODU0MSwgCisgICAgNjg1NDUsIDY4NTUxLCA2ODU1NywgNjg1NjMsIDY4NTY3LCA2ODU3NSwgNjg1ODIsIDY4NTkwLCA2ODU5OCwgMzA2ODUsIAorICAgIDY4NjA1LCA2ODYwOCwgNjg2MTUsIDY4NjIxLCA2ODYyNiwgNjg2MzAsIDY4NjM2LCA2ODY0MywgNjg2NDgsIDY4NjUyLCAKKyAgICA2ODY2MSwgNjg2NjksIDY4Njc1LCA2ODY4MCwgMzA2OTAsIDY4Njg3LCA2ODY5NCwgNjg3MDAsIDY4NzA1LCA2ODcxMSwgCisgICAgNjg3MTgsIDY4NzI0LCAxOTUzOSwgMjU1MjUsIDY4NzMwLCA2ODczNSwgNjg3NDEsIDY4NzUzLCA2ODQzMywgNjg0NDAsIAorICAgIDY4NzYzLCA2ODc2OCwgNjg3NzUsIDY4NzgyLCA2ODc4OCwgNjg3OTksIDY4ODA0LCA3NTQ4LCA2ODgxMiwgNjg4MTUsIAorICAgIDY4ODIxLCA2ODgyNSwgNjg4MjksIDY4ODMyLCA2ODgzOCwgMzA0NDMsIDQ2NzcsIDkyMiwgMTE3NzksIDY4ODQ1LCA2ODg1MSwgCisgICAgNjg4NTcsIDY4ODYzLCA2ODg2OSwgNjg4NzUsIDY4ODgxLCA2ODg4NywgNjg4OTMsIDY4ODk4LCA2ODkwMywgNjg5MDgsIAorICAgIDY4OTEzLCA2ODkxOCwgNjg5MjMsIDY4OTI4LCA2ODkzMywgNjg5MzgsIDY4OTQzLCA2ODk0OCwgNjg5NTMsIDY4OTU4LCAKKyAgICA2ODk2NCwgNjg5NjksIDY4OTc0LCA2ODk4MCwgNjg5ODUsIDY4OTkwLCA2ODk5NiwgNjkwMDIsIDY5MDA4LCA2OTAxNCwgCisgICAgNjkwMjAsIDY5MDI2LCA2OTAzMiwgNjkwMzgsIDY5MDQ0LCA2OTA0OSwgNjkwNTQsIDY5MDYwLCA2OTA2NSwgNjkwNzAsIAorICAgIDY5MDc2LCA2OTA4MSwgNjkwODYsIDY5MDkxLCA2OTA5NiwgNjkxMDEsIDY5MTA2LCA2OTExMSwgNjkxMTYsIDY5MTIxLCAKKyAgICA2OTEyNiwgNjkxMzEsIDY5MTM2LCA2OTE0MiwgNjkxNDcsIDY5MTUyLCA2OTE1NywgNjkxNjMsIDY5MTY4LCA2OTE3MywgCisgICAgNjkxNzgsIDY5MTgzLCA2OTE4OSwgNjkxOTQsIDY5MTk5LCA2OTIwNCwgNjkyMDksIDY5MjE0LCA2OTIxOSwgNjkyMjQsIAorICAgIDY5MjI5LCA2OTIzNCwgNjkyMzksIDY5MjQ0LCA2OTI0OSwgNjkyNTQsIDY5MjU5LCA2OTI2NCwgNjkyNjksIDY5Mjc0LCAKKyAgICA2OTI3OSwgNjkyODQsIDY5MjkwLCA2OTI5NSwgNjkzMDAsIDY5MzA1LCA2OTMxMCwgNjkzMTUsIDY5MzIwLCA2OTMyNSwgCisgICAgMTgyOCwgMTQyLCA2OTMzMCwgNjkzMzQsIDY5MzM4LCA2OTM0MywgNjkzNTEsIDY5MzU1LCA2OTM2MiwgNjkzNzAsIDY5Mzc0LCAKKyAgICA2OTM4NywgNjkzOTUsIDY5Mzk5LCA2OTQwMiwgNjk0MDcsIDY5NDExLCA2OTQxNiwgNjk0MjAsIDY5NDI4LCA2OTQzMiwgCisgICAgMTkxOTQsIDY5NDM3LCA2OTQ0MSwgNTg2OTYsIDY5NDQ1LCA2OTQ0OCwgNjk0NTYsIDY5NDY0LCA2OTQ3MiwgNjk0NzcsIAorICAgIDY5NDg0LCA2OTQ5MCwgNjk0OTYsIDY5NTAxLCA2OTUwNiwgNjk1MTQsIDYyNjA1LCA2OTUyMSwgNjk1MjYsIDY5NTMxLCAKKyAgICA2OTUzNSwgMTAwMzMsIDY5NTM5LCA2OTU0NCwgNjk1NDksIDY5NTUzLCA2OTU1NiwgNjk1NjIsIDY5NTY2LCA2OTU3NiwgCisgICAgNjk1ODUsIDY5NTg4LCA2OTU5NSwgNjk2MDgsIDY5NjE0LCA2OTYyMiwgNjk2MzMsIDY5NjQ0LCA2OTY1NSwgNjk2NjYsIAorICAgIDY5Njc1LCA2OTY4MSwgNjk2OTAsIDY5Njk4LCA2OTcwOCwgNjk3MjEsIDY5NzI4LCA2OTczOSwgNjk3NDUsIDY5NzUwLCAKKyAgICA2OTc1NSwgNjk3NjEsIDY5NzY3LCA2OTc3NywgNjk3ODYsIDY4MTIyLCA2OTc5NCwgNjk4MDAsIDY5ODA4LCA2OTgxNCwgCisgICAgNjk4MjIsIDY5ODI2LCA2OTgzMCwgNjk4MzMsIDY5ODM5LCA2OTg0NSwgNjk4NTMsIDY5ODY1LCA2OTg3NywgNjk4ODQsIAorICAgIDY5ODg4LCA2OTg5OSwgNjk5MDcsIDY5OTE0LCA2OTkyNiwgNjk5MzQsIDY5OTQyLCA2OTk0OSwgNjk5NTUsIDY5OTY1LCAKKyAgICA2OTk3NCwgNjk5NzksIDY5OTg5LCA2OTk5OCwgMzg2MDQsIDcwMDA1LCA3MDAwOSwgNzAwMTQsIDcwMDIyLCA3MDAyOSwgCisgICAgNzAwMzUsIDcwMDM5LCA3MDA0OSwgNzAwNjAsIDcwMDY4LCA3MDA3NSwgNzAwODcsIDcwMDk5LCA3MDEwOCwgNjcxNjksIAorICAgIDcwMTE1LCA3MDEyNiwgNzAxNDAsIDcwMTQ4LCA3MDE1OCwgNzAxNjUsIDcwMTczLCA3MDE4NSwgNzAxOTQsIDcwMjAyLCAKKyAgICA3MDIxMiwgNzAyMjMsIDcwMjM1LCA3MDI0NCwgNzAyNTQsIDcwMjYxLCA3MDI3MCwgNzAyODUsIDcwMjk1LCA3MDMwNCwgCisgICAgNzAzMTIsIDcwMzI1LCA3MDM0MCwgNzAzNDQsIDcwMzUzLCA3MDM2NSwgNzAzNzYsIDcwMzg3LCA3MDM5OCwgNzA0MDgsIAorICAgIDcwNDE5LCA3MDQyNywgNzA0MzMsIDcwNDQzLCA3MDQ0OSwgMjcwNDQsIDcwNDU0LCA3MDQ2MCwgNzA0NjUsIDcwNDcyLCAKKyAgICA4MTQxLCAxNTc3MCwgNzA0NzgsIDcwNDg3LCA3MDQ5MiwgNzA0OTYsIDcwNTAzLCA3MDUwOSwgNzA1MTQsIDcwNTE5LCAKKyAgICA3MDUyNywgNzA1MzUsIDcwNTM5LCA3MDU0MiwgNzA1NDUsIDcwNTQ3LCA3MDU1NCwgNzA1NjAsIDcwNTcxLCA3MDU3NiwgCisgICAgNzA1ODAsIDcwNTg3LCA3MDU5MywgNzA1OTgsIDcwNjA2LCA2MzA3MiwgNjMwODIsIDcwNjEyLCA3MDYxOSwgNzA2MjksIAorICAgIDkwMjMsIDcwNjM2LCA3MDY0MSwgMjcyMzQsIDcwNjUwLCA3MDY1NSwgNzA2NjIsIDcwNjcyLCA3MDY4MCwgNzA2ODgsIAorICAgIDcwNjk3LCA3MDcwMywgNzA3MDksIDcwNzE2LCA3MDcyMywgNzA3MjgsIDcwNzMyLCA3MDc0MCwgNzA3NDUsIDcwNzUwLCAKKyAgICA3MDc1OCwgNzA3NjUsIDcwNzcwLCA3MDc3NiwgNzA3NzksIDcwNzgzLCA3MDc5MiwgNjkzODIsIDcwODAxLCA3MDgwNSwgCisgICAgNzA4MTEsIDcwODIyLCA3MDgzMiwgMTU3NzksIDcwODQzLCA3MDg1MSwgMTU3OTEsIDcwODU4LCA3MDg2MiwgNzA4NzEsIAorICAgIDI1NDExLCA3MDg3OCwgNzA4ODIsIDcwODg3LCA3MDkwNCwgNzA5MTYsIDg5ODEsIDcwOTI4LCA3MDkzMywgNzA5MzgsIAorICAgIDcwOTQzLCA3MDk0NywgNzA5NTAsIDcwOTU1LCA3MDk2MCwgNzA5NjYsIDcwOTcxLCA0MzQxLCAxOTI2NywgNzA5NzYsIAorICAgIDcwOTgxLCA3MDk4NywgNzA5OTQsIDcwOTk5LCA3MTAwNCwgNzEwMTAsIDcxMDE2LCA3MTAyMiwgNzEwMjcsIDcxMDMzLCAKKyAgICA3MTAzNywgNzEwNTEsIDcxMDU5LCA3MTA2NywgNzEwNzMsIDcxMDc4LCA3MTA4NSwgNzEwOTUsIDcxMTA0LCA3MTEwOSwgCisgICAgNzExMTQsIDcxMTIyLCA3MTEyNywgNzExMzMsIDcxMTM4LCA3MTE0NywgNTc1ODAsIDcxMTUyLCA3MTE1NSwgNzExNzMsIAorICAgIDcxMTkyLCA3MTIwNSwgNzEyMTksIDcxMjM1LCA3MTI0MiwgNzEyNDksIDcxMjU1LCA3MTI2MiwgNzEyNjcsIDcxMjczLCAKKyAgICA3MTI3OSwgNzEyODcsIDcxMjkzLCA3MTI5OCwgNzEzMDMsIDcxMzE5LCA4OTk0LCA3MTMzMywgNzEzNDAsIDcxMzQ4LCAKKyAgICA3MTM1NCwgNzEzNTgsIDcxMzYxLCA3MTM2NiwgNzEzNzEsIDcxMzc4LCA3MTM4MywgNzEzOTIsIDcxMzk3LCA3MTQwMywgCisgICAgNzE0MTIsIDcxNDIxLCA3MTQyNiwgNzE0MzAsIDcxNDM4LCAxMDA1NywgNzE0NDcsIDcxNDU1LCA3MTQ2MCwgNzE0NjYsIAorICAgIDEwMDY4LCA3MTQ3MSwgNzE0NzQsIDcxNDc5LCA3MTQ4OSwgNzE0OTgsIDcxNTAzLCA3MTUwOSwgNzE1MTQsIDcxNTIyLCAKKyAgICA3MTUyOSwgNzE1NDAsIDcxNTUwLCA3MTU1NSwgNjI1MzMsIDcxNTYwLCA3MTU2NiwgNzE1NzEsIDcxNTc4LCA3MTU4NywgCisgICAgNzE1OTUsIDcxNjAxLCA3MTYwOCwgNzE2MTQsIDcxNjE4LCAxNTIzNywgMzAwNiwgNzE2MjMsIDcxNjI3LCA3MTYzMywgCisgICAgNzE2NDIsIDcxNjQ4LCA3MTY1NSwgNzE2NTksIDcxNjgwLCA3MTcwMiwgNzE3MTgsIDcxNzM1LCA3MTc1NCwgNzE3NjMsIAorICAgIDcxNzczLCA3MTc4MCwgNzE3ODcsIDI1Mjk4LCA3MTc5MywgNzE3OTcsIDcxODA1LCA3MTgxNywgNzE4MjMsIDcxODMxLCAKKyAgICA3MTgzNSwgNzE4NDMsIDcxODUwLCA3MTg1NCwgNzE4NjAsIDcxODY2LCA3MTg3MSwgMzUxMSwgMzk3MjUsIDcxODc3LCAKKyAgICA3MTg4MSwgNzE4ODUsIDcxODg5LCA3MTg5NCwgNzE4OTksIDcxOTA0LCA3MTkxMCwgNzE5MTYsIDcxOTIyLCA3MTkyOSwgCisgICAgNzE5MzUsIDcxOTQyLCA3MTk0OCwgNzE5NTQsIDcxOTU5LCA3MTk2NSwgNzE5NzAsIDcxOTc1LCA3MTk3OSwgNzE5ODQsIAorICAgIDM5NzQwLCA3MTk4OCwgNzE5OTMsIDcyMDAxLCA3MjAwNSwgNzIwMTAsIDcyMDE3LCA3MjAyNiwgNzIwMzIsIDcyMDM2LCAKKyAgICA3MjA0MywgNzIwNDcsIDcyMDUwLCA3MjA1NywgNzIwNjYsIDcyMDcxLCA3MjA3NSwgNzIwODMsIDcyMDkyLCA3MjA5NiwgCisgICAgNzIxMDQsIDcyMTEwLCA3MjExNSwgNzIxMjAsIDcyMTI2LCA3MjEzMiwgNzIxMzcsIDcyMTQxLCA3MjE0NywgNzIxNTIsIAorICAgIDcyMTU2LCA3MjE2MCwgNzIxNjMsIDcyMTY4LCA3MjE3NiwgNzIxODYsIDcyMTkxLCAzNzI2MywgNzIxOTksIDcyMjExLCAKKyAgICA3MjIxNSwgNzIyMjEsIDcyMjMzLCA3MjI0NCwgNzIyNTEsIDcyMjU3LCA3MjI2NCwgNzIyNzYsIDcyMjgzLCA3MjI4OSwgCisgICAgMTkzNDEsIDcyMjkzLCA3MjI5OSwgNzIzMDYsIDcyMzEyLCA3MjMxOCwgNzIzMjMsIDcyMzI4LCA3MjMzMywgNzIzNDIsIAorICAgIDU1MTIsIDcyMzQ3LCAxNDcwMywgNzIzNTMsIDcyMzU3LCA3MjM2MSwgNzIzNjksIDcyMzc4LCA3MjM4MiwgNzIzODksIAorICAgIDcyMzk4LCA3MjQxMSwgNzI0MTcsIDcxOTgwLCAyODA5MywgNzI0MjIsIDcyNDI0LCA3MjQyOSwgNzI0MzQsIDcyNDM5LCAKKyAgICA3MjQ0NCwgNzI0NDksIDcyNDU0LCA3MjQ1OSwgNzI0NjQsIDcyNDY5LCA3MjQ3NCwgNzI0NzksIDcyNDg0LCA3MjQ4OSwgCisgICAgNzI0OTQsIDcyNTAwLCA3MjUwNSwgNzI1MTAsIDcyNTE1LCA3MjUyMCwgNzI1MjUsIDcyNTMwLCA3MjUzNSwgNzI1NDAsIAorICAgIDcyNTQ2LCA3MjU1MiwgNzI1NTgsIDcyNTYzLCA3MjU2OCwgNzI1ODAsIDcyNTg1LCAxODM0LCA2NywgNzI1OTAsIDcyNTk1LCAKKyAgICAzMDcxNywgMzA3MjIsIDMwNzI3LCAzMDczMywgMzA3MzgsIDcyNTk5LCAzMDc0MywgMjAzMTYsIDcyNjIxLCA3MjYyNSwgCisgICAgNzI2MjksIDcyNjM0LCA3MjYzOCwgMzA3NDcsIDcyNjQyLCA3MjY1MCwgMzA3NTIsIDcyNjU3LCA3MjY2MCwgNzI2NjUsIAorICAgIDcyNjY5LCA3OTc2LCA3MjY3OCwgMzA3NTcsIDIwMTc4LCA3MjY4MSwgNzI2ODUsIDEzOTcsIDcyNjkwLCAzMDc2OCwgCisgICAgNzI2OTMsIDcyNjk4LCAyMzgzNywgMjM4NDcsIDMzMTcyLCA3MjcwMywgNzI3MDgsIDcyNzEzLCA3MjcxOCwgNzI3MjQsIAorICAgIDcyNzI5LCA3MjczOCwgNzI3NDMsIDcyNzUwLCA3Mjc1NiwgNzI3NjEsIDcyNzY2LCA3Mjc3MSwgNzI3ODEsIDcyNzkwLCAKKyAgICA3Mjc5NSwgNzI4MDMsIDcyODA3LCA3MjgxNSwgMzA1ODIsIDM1MTkyLCA3MjgyMiwgNzI4MjgsIDcyODMzLCA3MjgzOCwgCisgICAgNzI4NDMsIDcyODQ5LCA3Mjg1NCwgNzI4NjEsIDcyODY3LCA3Mjg3MiwgNzI4ODAsIDcyODkwLCA3MjkwMCwgNzI5MDYsIAorICAgIDcyOTExLCA3MjkxNywgMTU4MDEsIDcyOTI0LCAzMzk5MiwgNzI5MzcsIDcyOTQyLCA3Mjk0OCwgNzI5NjEsIDcyOTY3LCAKKyAgICA3Mjk3MSwgNzI5ODAsIDcyOTg3LCA3Mjk5MywgNzMwMDEsIDczMDEwLCA3MzAxNywgNzMwMjMsIDczMDI2LCAyMzk3OCwgCisgICAgNzMwMzAsIDczMDM3LCA3MzA0MywgNzMwNTEsIDczMDU2LCAyMjE1NiwgNzMwNjIsIDczMDY1LCA3MzA3MywgNzMwODEsIAorICAgIDczMDk1LCA3MzEwMiwgNzMxMDgsIDczMTE1LCA3MzEyMSwgMzA3ODIsIDczMTI1LCA3MzEzMiwgNzMxNDAsIDczMTQ4LCAKKyAgICAzMDc4NywgNzMxNTQsIDczMTYwLCA3MzE2NSwgNzMxNzUsIDczMTgxLCA3MzE5MCwgMjg4MjIsIDMyNjQ3LCA3MzE5OCwgCisgICAgNzMyMDMsIDczMjA4LCA3MzIxMywgNzMyMTcsIDEzMjQzLCAzNzI3NiwgNzMyMjIsIDczMjI3LCAzMDc5MiwgNTk5ODAsIAorICAgIDczMjMxLCA3MzIzNiwgNzMyNDAsIDczMjQ5LCA3MzI1NywgNzMyNjMsIDczMjY4LCA3MzI3NCwgNzMyODEsIDczMjg3LCAKKyAgICA3MzI5MiwgNzMyOTcsIDczMzA2LCA3MzMxOCwgNzMzMzMsIDMxMDMzLCA3MzMzOSwgMTQ4MjIsIDMwNzk2LCA3MzM0MywgCisgICAgNzMzNTAsIDIyMjYyLCA3MzM1NiwgNzMzNjMsIDczMzcyLCA3MzM3OSwgNzMzODgsIDczMzk0LCA3MzM5OSwgNzM0MDcsIAorICAgIDczNDEzLCAzMDgwNiwgNzM0MTgsIDczNDI3LCA3MjIzOSwgNzM0MzYsIDczNDQzLCA3MzQ0OSwgNzM0NTUsIDczNDY1LCAKKyAgICA3MzQ3MywgNzM0ODAsIDczNDg0LCAzMDgxMSwgNzM0ODcsIDMwODE3LCAzMDgyMywgNzM0OTIsIDczNTAwLCA3MzUwOCwgCisgICAgNzM1MTgsIDczNTI3LCA3MzUzNSwgNzM1NDIsIDczNTUyLCAzMDgyOCwgNzM1NTYsIDczNTU4LCA3MzU2MiwgNzM1NjcsIAorICAgIDczNTcxLCA3MzU3NSwgNzM1ODEsIDczNTg2LCA3MzU5MCwgNzM2MDEsIDczNjA2LCAzMDExLCA3MzYxMCwgNzM2MTcsIAorICAgIDczNjIxLCA3MzYzMCwgNzM2MzgsIDczNjQ1LCA3MzY1MCwgNzM2NTUsIDYwMDI2LCA3MzY1OSwgNzM2NjIsIDczNjY4LCAKKyAgICA3MzY3NiwgNzM2ODIsIDczNjg2LCA3MzY5MSwgNzM2OTgsIDczNzAzLCA3MzcwOSwgMzI2NzgsIDczNzE0LCA3MzcxNywgCisgICAgNzM3MjIsIDczNzI2LCA3MzczMSwgNzM3MzYsIDczNzQwLCA3Mzc0OCwgMjM4NTYsIDIzODY1LCA3Mzc1NCwgNzM3NjAsIAorICAgIDczNzY2LCA3Mzc3MSwgNzM3NzUsIDczNzc4LCA3Mzc4OCwgNzM3OTcsIDczODAyLCA3MzgwOCwgNzM4MTUsIDczODIxLCAKKyAgICA3MzgyNSwgNzM4MzMsIDczODM4LCAzMjY4NCwgNzM4NDIsIDczODUwLCA3Mzg1NiwgNzM4NjMsIDczODY4LCA3Mzg3MiwgCisgICAgNzM4NzcsIDU2MjExLCAzMjY5MCwgNzM4ODMsIDczODg4LCA3Mzg5MiwgNzM4OTcsIDczOTAyLCA3MzkwNywgNzM5MTEsIAorICAgIDczOTE2LCA3MzkyMSwgNzM5MjcsIDczOTMyLCA3MzkzNywgNzM5NDMsIDczOTQ5LCA3Mzk1NCwgNzM5NTgsIDczOTYzLCAKKyAgICA3Mzk2OCwgNzM5NzMsIDczOTc3LCAyMjI2MSwgNzM5ODIsIDczOTg3LCA3Mzk5MywgNzM5OTksIDc0MDA1LCA3NDAxMCwgCisgICAgNzQwMTQsIDc0MDE5LCA3NDAyNCwgNzQwMjksIDc0MDMzLCA3NDAzOCwgNzQwNDMsIDc0MDQ4LCA3NDA1MywgNzQwNTcsIAorICAgIDMwODMyLCA3NDA2NSwgNzQwNjksIDc0MDc3LCA3NDA4NSwgNzQwOTYsIDc0MTAxLCA3NDEwNSwgMjA2MjIsIDc0MTEwLCAKKyAgICA3NDExNiwgNzQxMjYsIDc0MTMzLCA3NDEzOCwgNzQxNDcsIDc0MTUyLCA3NDE1NiwgNzQxNjEsIDc0MTY5LCA3NDE3NywgCisgICAgNzQxODQsIDYyNzUxLCA3NDE5MCwgNzQxOTgsIDc0MjA1LCA3NDIxNiwgNzQyMjIsIDc0MjI2LCA3NDIzMiwgMzA4NDIsIAorICAgIDc0MjM1LCA3NDI0MiwgNzQyNTAsIDc0MjU1LCAzNzQ2NywgNzQyNTksIDc0MjY0LCA3NDI3MSwgNzQyNzYsIDc0MzAsIAorICAgIDc0MjgwLCA3NDI4OCwgNzQyOTUsIDc0MzAyLCA3NDMwOCwgNzQzMjIsIDYxMDU1LCA3NDMzMCwgNzQzMzYsIDc0MzQwLCAKKyAgICA3NDM0MywgNzQzNTEsIDc0MzU4LCA3NDM2MywgNzQzNzYsIDc0MzgzLCA3NDM5MCwgNzQzOTUsIDU4NjAwLCA3NDQwMCwgCisgICAgNzQ0MDMsIDc0NDEwLCA3NDQxNiwgNzQ0MjAsIDc0NDI4LCA3NDQzOCwgNzQ0NDgsIDc0NDU3LCA3NDQ2NSwgNzQ0NzYsIAorICAgIDc0NDgxLCA3NDQ4NSwgNzQ0OTAsIDc0NDk0LCAzMzMwMywgMTk1OTUsIDMzMzEyLCA3NDUwMiwgNzQ1MDcsIDc0NTEyLCAKKyAgICA3NDUxNywgNzQ1MjIsIDc0NTI3LCA3NDUzMiwgNzQ1MzYsIDc0NTQxLCA3NDU0NiwgNzQ1NTEsIDc0NTU2LCA3NDU2MSwgCisgICAgNzQ1NjYsIDc0NTcwLCA3NDU3NSwgNzQ1ODAsIDc0NTg0LCA3NDU4OCwgNzQ1OTIsIDc0NTk2LCA3NDYwMSwgNzQ2MDYsIAorICAgIDc0NjEwLCA3NDYxNSwgNzQ2MTksIDc0NjIzLCA3NDYyOCwgNzQ2MzMsIDc0NjM4LCA3NDY0MywgNzQ2NDcsIDc0NjUyLCAKKyAgICA3NDY1NywgNzQ2NjEsIDc0NjY2LCA3NDY3MSwgNzQ2NzYsIDc0NjgxLCA3NDY4NiwgNzQ2OTEsIDc0Njk2LCA3NDcwMSwgCisgICAgNzQ3MDYsIDc0NzExLCA3NDcxNiwgNzQ3MjEsIDc0NzI2LCA3NDczMSwgNzQ3MzYsIDc0NzQxLCA3NDc0NiwgNzQ3NTEsIAorICAgIDc0NzU2LCA3NDc2MSwgNzQ3NjUsIDc0NzcwLCA3NDc3NSwgNzQ3ODAsIDc0Nzg1LCA3NDc5MCwgNzQ3OTUsIDc0ODAwLCAKKyAgICA3NDgwNSwgNzQ4MTAsIDc0ODE1LCA3NDgyMCwgNzQ4MjQsIDc0ODI5LCA3NDgzMywgNzQ4MzgsIDc0ODQzLCA3NDg0OCwgCisgICAgNzQ4NTMsIDc0ODU4LCA3NDg2MywgNzQ4NjgsIDc0ODczLCA3NDg3OCwgNzQ4ODIsIDc0ODg2LCA3NDg5MSwgNzQ4OTYsIAorICAgIDc0OTAwLCA3NDkwNSwgNzQ5MTAsIDc0OTE0LCA3NDkxOSwgNzQ5MjQsIDc0OTI5LCA3NDkzNCwgNzQ5MzgsIDc0OTQzLCAKKyAgICA3NDk0OCwgNzQ5NTIsIDc0OTU3LCA3NDk2MSwgNzQ5NjUsIDc0OTY5LCA3NDk3MywgNzQ5NzgsIDc0OTgyLCA3NDk4NiwgCisgICAgNzQ5OTAsIDc0OTk0LCA3NDk5OCwgNzUwMDIsIDc1MDA2LCA3NTAxMCwgNzUwMTQsIDc1MDE5LCA3NTAyNCwgNzUwMjksIAorICAgIDc1MDM0LCA3NTAzOSwgNzUwNDQsIDc1MDQ5LCA3NTA1NCwgNzUwNTksIDc1MDY0LCA3NTA2OCwgNzUwNzIsIDc1MDc2LCAKKyAgICA3NTA4MCwgNzUwODQsIDc1MDg4LCA3NTA5MywgNzUwOTcsIDc1MTAyLCA3NTEwNiwgNzUxMTEsIDc1MTE2LCA3NTEyMCwgCisgICAgNzUxMjQsIDc1MTI5LCA3NTEzMywgNzUxMzcsIDc1MTQxLCA3NTE0NSwgNzUxNDksIDc1MTUzLCA3NTE1NywgNzUxNjEsIAorICAgIDc1MTY1LCA3NTE2OSwgNzUxNzMsIDc1MTc3LCA3NTE4MSwgNzUxODUsIDc1MTkwLCA3NTE5NSwgNzUxOTksIDc1MjAzLCAKKyAgICA3NTIwNywgNzUyMTEsIDc1MjE1LCA3NTIxOSwgNzUyMjQsIDc1MjI4LCA3NTIzMiwgNzUyMzYsIDc1MjQwLCA3NTI0NCwgCisgICAgNzUyNDgsIDc1MjUzLCA3NTI1NywgNzUyNjIsIDc1MjY2LCA3NTI3MCwgNzUyNzQsIDc1Mjc4LCA3NTI4MiwgNzUyODYsIAorICAgIDc1MjkwLCA3NTI5NCwgNzUyOTgsIDc1MzAyLCA3NTMwNiwgNzUzMTEsIDc1MzE1LCA3NTMxOSwgNzUzMjMsIDc1MzI3LCAKKyAgICA3NTMzMSwgNzUzMzUsIDc1MzM5LCA3NTM0MywgNzUzNDcsIDc1MzUxLCA3NTM1NSwgNzUzNjAsIDc1MzY0LCA3NTM2OCwgCisgICAgNzUzNzMsIDc1Mzc4LCA3NTM4MiwgNzUzODYsIDc1MzkwLCA3NTM5NCwgNzUzOTgsIDc1NDAyLCA3NTQwNiwgNzU0MTAsIAorICAgIDc1NDE1LCA3NTQxOSwgNzU0MjQsIDc1NDI4LCA3NTQzMywgNzU0MzcsIDc1NDQyLCA3NTQ0NiwgNzU0NTIsIDc1NDU3LCAKKyAgICA3NTQ2MSwgNzU0NjYsIDc1NDcwLCA3NTQ3NSwgNzU0NzksIDc1NDg0LCA3NTQ4OCwgNzU0OTMsIDE0ODUsIDc1NDk3LCAKKyAgICAyNzgzLCAxNzIzLCAxNzI4LCA3NTUwMSwgNzU1MDUsIDI3ODcsIDc1NTA5LCAxMzY2LCA3NTUxNCwgMTMzMiwgNzU1MTgsIAorICAgIDI3OTksIDc1NTIyLCA3NTUyOSwgNzU1MzYsIDc1NTUwLCAyODAzLCA1NjEwLCA3NTU1OSwgNzU1NjcsIDc1NTc0LCA3NTU4NSwgCisgICAgNzU1OTQsIDc1NjAxLCA3NTYxMywgNzU2MjYsIDc1NjM5LCA3NTY1MCwgNzU2NTUsIDc1NjYyLCA3NTY3NCwgNzU2NzgsIAorICAgIDI4MDcsIDEwMTMwLCA3NTY4OCwgNzU2OTMsIDc1NzAyLCA3NTcxMiwgMjgxMSwgNzU3MTcsIDc1NzIxLCA3NTcyNiwgCisgICAgNzU3MzMsIDc1NzM5LCA3NTc0NywgNzU3NTksIDEzMzcsIDExMzk5LCA3NTc2OSwgNzU3NzMsIDc1Nzc5LCA3NTc5MywgCisgICAgNzU4MDUsIDc1ODE3LCA3NTgyNywgNzU4MzYsIDc1ODQ1LCA3NTg1NCwgNzU4NjIsIDc1ODczLCA3NTg4MSwgMzk4MSwgCisgICAgNzU4OTEsIDc1OTAwLCA3NTkwNiwgNzU5MjEsIDc1OTI4LCA3NTkzNCwgMzM0MzMsIDc1OTM5LCAyODM1LCAxMTQwMywgCisgICAgNzU5NDMsIDc1OTUwLCA3Mzc1LCA3NTk1OSwgMjg0MCwgMzAzNDEsIDc1OTY1LCA1ODM0OSwgNzU5NzIsIDc1OTc4LCAKKyAgICA3NTk4OSwgNzU5OTUsIDc2MDAyLCA3NjAwOCwgNzYwMTYsIDc2MDIzLCA3NjAyOSwgNzYwMzksIDc2MDQ4LCA3NjA1OSwgCisgICAgNzYwNjYsIDc2MDcyLCA3NjA4MiwgNzYwOTAsIDc2MDk2LCA3NjExMSwgNzYxMTcsIDc2MTIyLCA3NjEyOSwgNzYxMzIsIAorICAgIDc2MTM4LCA3NjE0NSwgNzYxNTEsIDc2MTU5LCA3NjE2OCwgNzYxNzYsIDc2MTgyLCA3NjE5MSwgMzkyNjUsIDc2MjA1LCAKKyAgICA3NjIxMCwgMTMwODAsIDc2MjE2LCA3NjIyOSwgNzYyMzgsIDc2MjQ2LCA3NjI1MywgNzYyNTcsIDc2MjYxLCA3NjI2NCwgCisgICAgNzYyNzEsIDc2Mjc4LCA3NjI4NiwgNzYyOTQsIDc2MzAzLCA3NjMxMSwgMTMwMTEsIDc2MzE5LCA3NjMyNCwgNzYzMjgsIAorICAgIDc2MzQwLCA3NjM0NywgNzYzNTYsIDc4MCwgNzYzNjYsIDc2Mzc1LCA3NjM4NiwgMjg1NiwgNzYzOTAsIDc2Mzk0LCA3NjQwMCwgCisgICAgNzY0MTMsIDc2NDI1LCA3NjQzNSwgNzY0NDQsIDI0NDQ4LCA3NjQ1NiwgNzY0NjQsIDc2NDczLCA3NjQ4NCwgNzY0OTUsIAorICAgIDc2NTA1LCA3NjUxNSwgNzY1MjQsIDc2NTMyLCA5NzA5LCA3NjUzOSwgNzY1NDMsIDc2NTQ4LCA3NjU1MywgNzY1NTksIAorICAgIDEzNDIsIDEwMjAxLCA3NjU2NiwgNzY1NzcsIDc2NTg2LCA3NjU5NCwgNzY2MDMsIDc2NjExLCA3NjYyNywgNzY2MzgsIAorICAgIDc2NjQ3LCA3NjY1NSwgNzY2NjcsIDc2Njc4LCA3NjY5NCwgNzY3MDQsIDc2NzI1LCA3NjczOCwgNzY3NDYsIDc2NzUzLCAKKyAgICAxMzE5MSwgNzY3NjYsIDc2NzcxLCA3Njc3NywgNDQwMywgNzY3ODMsIDc2Nzg2LCA3Njc5MywgNzY4MDMsIDY2MzYsIAorICAgIDc2ODEwLCA3NjgxNSwgNzY4MjAsIDc2ODI4LCA3NjgzNiwgODE4OSwgODE5OCwgNzY4NDEsIDc2ODUyLCA3Njg1NywgCisgICAgNzY4NjMsIDI4NjQsIDI4NjksIDc2ODY5LCA5Mjc2LCA3Njg3NSwgNzY4ODIsIDc2ODg5LCA3NjkwMiwgMjIxMCwgNTAsIAorICAgIDc2OTA3LCA3NjkxMiwgNzY5MjIsIDc2OTI4LCA3NjkzNywgNzY5NDUsIDc2OTU1LCA3Njk1OSwgNzY5NjQsIDc2OTY4LCAKKyAgICA3Njk4MCwgMjg5MiwgNzY5ODgsIDc2OTk2LCA3NzAwMSwgNzcwMTIsIDc3MDIzLCA3NzAzMiwgNzcwMzcsIDc3MDQzLCAKKyAgICA3NzA0OCwgNzcwNTgsIDc3MDY4LCA3NzA3MywgNzcwNzksIDc3MDg0LCA3NzA5MywgMTk2NDgsIDc3MDk3LCA0MDU4LCAyMCwgCisgICAgNzcxMDIsIDc3MTExLCA3NzExOCwgNzcxMjUsIDc3MTMxLCA3NzEzNywgODM0LCA3NzE0MiwgNzcxNDcsIDU4NjY2LCAKKyAgICA3NzE1MiwgNzcxNTcsIDc3MTYzLCA3NzE3MSwgNzcxNzYsIDc3MTgzLCA3NzE4OSwgNzcxOTQsIDM1ODk4LCAzOTE2MywgCisgICAgNzcyMDAsIDI4OTYsIDMyLCA3NzIxMCwgNzcyMjMsIDc3MjI4LCA3NzIzNiwgNzcyNDEsIDc3MjQ3LCAyOTE4LCAyNjM1NSwgCisgICAgNzcyNTIsIDc3MjYwLCA3NzI2NywgNzcyNzIsIDU2NDUzLCA1OTY0NywgNzcyODEsIDc3Mjg1LCAxNjY4LCAxNzc3LCAKKyAgICA3NzI5MCwgNzcyOTUsIDc3MzAyLCAxNzgxLCAyNDcsIDc3MzA5LCA3NzMxNSwgNzczMjAsIDc3MzI3LCAxNzg1LCA3NzMzMiwgCisgICAgNzczMzgsIDc3MzQzLCA3NzM1NSwgNDYxNCwgNzczNjUsIDE3OTIsIDc3MzcxLCA3NzM3NiwgNzczODMsIDc3MzkwLCAKKyAgICA3NzQwNSwgNzc0MTIsIDc3NDIzLCA3NzQzMSwgMjU3NywgNzc0MzUsIDc3NDQ3LCA3NzQ1MiwgNzc0NTYsIDc3NDYyLCAKKyAgICAyNjE4MCwgMjIxNSwgNzc0NjYsIDc3NDc3LCA3NzQ4MSwgNzc0ODUsIDc3NDkxLCA3NzQ5NSwgNzc1MDQsIDc3NTA4LCAKKyAgICA3NzUxOSwgNzc1MjMsIDIyNjEsIDMwMTcwLCA3NzUyNywgNzc1MzcsIDMwMzEsIDc4MDQsIDc3NTQ1LCA3NzU1MCwgNzc1NTQsIAorICAgIDc3NTYzLCA3NzU3MCwgNzc1NzYsIDMwMDEsIDE1NDI5LCA3NzU4MCwgNzc1OTMsIDc3NjExLCA3NzYxNiwgNzc2MjQsIAorICAgIDc3NjMyLCA3NzY0MiwgMTE1MDUsIDc3NjU0LCA3NzY2NywgNzc2NzQsIDc3NjgxLCA3NzY5NywgNzc3MDQsIDc3NzEwLCAKKyAgICAxMDUwLCA3NzcxNywgNzc3MjQsIDc3NzM0LCA3Nzc0MywgNzc3NTUsIDQwMTI5LCA3Nzc2MywgMzAxNSwgMTAzOTgsIAorICAgIDc3NzY2LCA3Nzc3NCwgNzc3NzgsIDMwMTksIDc3NzgyLCAxOTQ0NCwgMTA0MTQsIDM2OTcsIDc3Nzg2LCAzMDI1LCA3Nzc5MCwgCisgICAgNzc4MDAsIDc3ODA2LCA3NzgxMiwgNzc4MTgsIDc3ODI0LCA3NzgzMCwgNzc4MzYsIDc3ODQyLCA3Nzg0OCwgNzc4NTQsIAorICAgIDc3ODYwLCA3Nzg2NiwgNzc4NzIsIDc3ODc4LCA3Nzg4NCwgNzc4OTAsIDc3ODk2LCA3NzkwMiwgNzc5MDgsIDc3OTE0LCAKKyAgICA3NzkyMCwgNzc5MjYsIDc3OTMyLCA3NzkzOCwgNzc5NDQsIDc3OTUwLCA3Nzk1NywgNzc5NjQsIDc3OTcwLCA3Nzk3NiwgCisgICAgNzc5ODIsIDc3OTg4LCA3Nzk5NCwgNzgwMDAsIDEzNDcsIDE0MzM5LCAxMDQzNiwgNzgwMDYsIDc4MDExLCA3ODAxNiwgCisgICAgNzgwMjEsIDc4MDI2LCA3ODAzMSwgNzgwMzYsIDc4MDQxLCA3ODA0NiwgNzgwNTEsIDc4MDU2LCA3ODA2MSwgNzgwNjYsIAorICAgIDc4MDcxLCA3ODA3NiwgNzgwODEsIDc4MDg2LCA3ODA5MSwgNzgwOTYsIDc4MTAxLCA3ODEwNiwgNzgxMTEsIDc4MTE2LCAKKyAgICA3ODEyMSwgNzgxMjYsIDc4MTMxLCA3ODEzNywgNzgxNDIsIDc4MTQ3LCA3ODE1MywgNzgxNTgsIDc4MTY0LCA3ODE2OSwgCisgICAgNzgxNzQsIDc4MTgwLCA3ODE4NSwgNzgxOTAsIDc4MTk1LCA3ODIwMCwgNzgyMDUsIDc4MjEwLCA3ODIxNSwgNzgyMjAsIAorICAgIDc3ODAxLCA3NzgwNywgNzc4MTMsIDc3ODE5LCA3NzgyNSwgNzc4MzEsIDc3ODM3LCA3Nzg0MywgNzc4NDksIDc3ODU1LCAKKyAgICA3Nzg2MSwgNzc4NjcsIDc3ODczLCA3Nzg3OSwgNzc4ODUsIDc4MjI2LCA3Nzg5MSwgNzc4OTcsIDc3OTAzLCA3ODIzMiwgCisgICAgNzc5MDksIDc3OTE1LCA3NzkyMSwgNzc5MjcsIDc3OTMzLCA3NzkzOSwgNzc5NDUsIDc3OTY1LCA3ODIzOCwgNzgyNDQsIAorICAgIDc3OTcxLCA3ODI1MCwgNzc5NzcsIDc3OTgzLCA3Nzk4OSwgNzc5OTUsIDc4MDAxLCAzMDQ2LCAzMDUxLCA3ODI1NiwgCisgICAgNzgyNjEsIDc4MjY0LCA3ODI3MCwgNzgyNzYsIDc4MjgzLCA3ODI4OCwgNzgyOTMsIDIyNjYsIAogfTsKIAogLyogY29kZS0+bmFtZSBwaHJhc2Vib29rICovCiAjZGVmaW5lIHBocmFzZWJvb2tfc2hpZnQgNwogI2RlZmluZSBwaHJhc2Vib29rX3Nob3J0IDIxMQogc3RhdGljIHVuc2lnbmVkIGNoYXIgcGhyYXNlYm9va1tdID0gewotICAgIDAsIDIxOSwgMjA2LCAyNDQsIDI1NCwgNzcsIDIyNCwgMTQzLCA3NywgNTAsIDUyLCAyNDcsIDg2LCA1MiwgMjI2LCA1NywgCi0gICAgNTIsIDI1NCwgMzUsIDI1MywgMjI2LCA0MiwgMjI2LCAxMzEsIDQ2LCAyMjYsIDEzMSwgMjUzLCAxMzIsIDk0LCA1MiwgMjQ5LCAKLSAgICAxNTcsIDI0MCwgMTU5LCAyNDMsIDIwMCwgMjE5LCA2OSwgMjE5LCAyMzEsIDIxLCAyMTIsIDc5LCAyMSwgMTE2LCAyMSwgCi0gICAgMTA5LCAyMSwgMTY2LCAyMSwgMTYzLCAyMSwgMTgwLCAyMSwgMTg5LCAyMSwgMTk4LCAyMSwgMTk1LCAyMSwgMjAwLCAyNDksIAotICAgIDE2NCwgMjIxLCA3MCwgMjMzLCAzOSwgNTIsIDI0NSwgNjEsIDUyLCAyNDIsIDEwNywgNTIsIDIyNCwgMTU4LCA3NywgMjQ5LCAKLSAgICAxNTYsIDI1MywgMTIyLCA3LCA2LCAxLCA2MSwgNywgNiwgMSwgMjUzLCA3NCwgNywgNiwgMSwgMjUwLCAyNTIsIDcsIDYsIDEsIAotICAgIDI0OSwgMywgNywgNiwgMSwgNzQsIDcsIDYsIDEsIDI0NCwgMjMwLCA3LCA2LCAxLCAyNDMsIDE3NywgNywgNiwgMSwgMjQyLCAKLSAgICA0MSwgNywgNiwgMSwgNzIsIDcsIDYsIDEsIDIzNSwgMTQyLCA3LCA2LCAxLCAyMzUsIDI3LCA3LCA2LCAxLCAxNTAsIDcsIDYsIAotICAgIDEsIDE4MywgNywgNiwgMSwgMjA0LCA3LCA2LCAxLCA3NSwgNywgNiwgMSwgMjI2LCAyMjksIDcsIDYsIDEsIDIyNCwgMjQwLCAKLSAgICA3LCA2LCAxLCAxNDksIDcsIDYsIDEsIDE5NywgNywgNiwgMSwgMjE4LCA5OSwgNywgNiwgMSwgNjksIDcsIDYsIDEsIDIxNSwgCi0gICAgNzksIDcsIDYsIDEsIDIxNCwgODIsIDcsIDYsIDEsIDIxMywgMTY2LCA3LCA2LCAxLCAyMTMsIDEwNSwgNywgNiwgMSwgMjEyLCAKLSAgICAxNTIsIDQyLCA0MSwgMTI1LCAyMjMsIDIwMywgMjE5LCAyMzEsIDQ2LCA0MSwgMTI1LCAyNDksIDIyNCwgMjU0LCAxNzQsIAotICAgIDExNSwgMjMyLCAyNDIsIDI0MiwgMTE0LCAyNTQsIDE3NCwgNywgMywgMSwgNjEsIDcsIDMsIDEsIDI1MywgNzQsIDcsIDMsIAotICAgIDEsIDI1MCwgMjUyLCA3LCAzLCAxLCAyNDksIDMsIDcsIDMsIDEsIDc0LCA3LCAzLCAxLCAyNDQsIDIzMCwgNywgMywgMSwgCi0gICAgMjQzLCAxNzcsIDcsIDMsIDEsIDI0MiwgNDEsIDcsIDMsIDEsIDcyLCA3LCAzLCAxLCAyMzUsIDE0MiwgNywgMywgMSwgMjM1LCAKLSAgICAyNywgNywgMywgMSwgMTUwLCA3LCAzLCAxLCAxODMsIDcsIDMsIDEsIDIwNCwgNywgMywgMSwgNzUsIDcsIDMsIDEsIDIyNiwgCi0gICAgMjI5LCA3LCAzLCAxLCAyMjQsIDI0MCwgNywgMywgMSwgMTQ5LCA3LCAzLCAxLCAxOTcsIDcsIDMsIDEsIDIxOCwgOTksIDcsIAotICAgIDMsIDEsIDY5LCA3LCAzLCAxLCAyMTUsIDc5LCA3LCAzLCAxLCAyMTQsIDgyLCA3LCAzLCAxLCAyMTMsIDE2NiwgNywgMywgMSwgCi0gICAgMjEzLCAxMDUsIDcsIDMsIDEsIDIxMiwgMTUyLCA0MiwgMjQ5LCA0MCwgMTI1LCA3MSwgMjMyLCAyNDIsIDQ2LCAyNDksIDQwLCAKLSAgICAxMjUsIDIxNywgNDIsIDIyOCwgMTg0LCAyMTksIDIwNiwgMjM1LCAxOTEsIDI0NCwgMjU0LCA3NywgMjUwLCAxMTAsIDUyLCAKLSAgICAyMjUsIDEwOCwgNTIsIDI0OSwgMzksIDUyLCAyMTMsIDMxLCA1MiwgMjUxLCA2MywgMTM0LCAyMjIsIDkyLCA1MiwgMjQ3LCAKLSAgICAyMDksIDI0OSwgMTAyLCA1MiwgMjQ0LCAxMDUsIDIyNywgMjEsIDIzNSwgMjM1LCAyMzMsIDY2LCA1MSwgMjU0LCAxOSwgCi0gICAgMjI0LCAxNDMsIDc3LCAyMjgsIDE2MywgNTIsIDIxOSwgMjM2LCAyNDAsIDE2MCwgMjIzLCAyNTIsIDUyLCAyMzIsIDM3LCAKLSAgICAyNDgsIDIyLCA1MiwgMjI1LCAxNTUsIDUyLCAyMTgsIDIyMywgMTA5LCAyMTgsIDIyMywgMTY2LCAyNTQsIDE2NCwgMjU0LCAKLSAgICAxNzQsIDIzMSwgNDEsIDUyLCAyMjUsIDIwMCwgNTIsIDIzMSwgMzcsIDI0NywgNzQsIDI1MCwgMTE3LCAyMTgsIDIyMywgCi0gICAgMTE2LCAyMzEsIDIxMSwgMjI3LCAyMSwgMjM1LCAyMzUsIDIyMywgMTQ0LCA1MSwgMjU0LCAxOSwgMjI0LCAxNDMsIDc3LCAKLSAgICAyMTQsIDk3LCAyNDMsIDIyOCwgMTIyLCAyMjQsIDE2NiwgMjE0LCA5NywgMjQzLCAyMjgsIDEyMiwgMjQyLCA5LCAyMTQsIAotICAgIDk3LCAyNDMsIDIyOCwgMTMzLCAyMjQsIDE2NCwgMjM1LCAxOTEsIDIyNCwgMTU4LCA3NywgNywgNiwgMSwgMTE4LCAyLCAKLSAgICAyNDIsIDExMywgNywgNiwgMSwgMTE4LCAyLCAxNzksIDcsIDYsIDEsIDExOCwgMiwgMjQ5LCAyMjMsIDcsIDYsIDEsIDExOCwgCi0gICAgMiwgMjE3LCA0MiwgNywgNiwgMSwgMTE4LCAyLCAyNDcsIDIwOSwgNywgNiwgMSwgMTE4LCAyLCAyMjMsIDEzMSwgNDksIDcsIAotICAgIDYsIDEsIDI1NCwgMTQ4LCA3LCA2LCAxLCAyNTAsIDI1MywgMiwgMjUwLCAxMTcsIDcsIDYsIDEsIDE5MSwgMiwgMjQyLCAKLSAgICAxMTMsIDcsIDYsIDEsIDE5MSwgMiwgMTc5LCA3LCA2LCAxLCAxOTEsIDIsIDI0OSwgMjIzLCA3LCA2LCAxLCAxOTEsIDIsIAotICAgIDI0NywgMjA5LCA3LCA2LCAxLCAyNDAsIDE0NiwgMiwgMjQyLCAxMTMsIDcsIDYsIDEsIDI0MCwgMTQ2LCAyLCAxNzksIDcsIAotICAgIDYsIDEsIDI0MCwgMTQ2LCAyLCAyNDksIDIyMywgNywgNiwgMSwgMjQwLCAxNDYsIDIsIDI0NywgMjA5LCA3LCA2LCAxLCAKLSAgICAyNDUsIDI1LCA3LCA2LCAxLCAyMzAsIDk4LCAyLCAyMTcsIDQyLCA3LCA2LCAxLCAxNTcsIDIsIDI0MiwgMTEzLCA3LCA2LCAKLSAgICAxLCAxNTcsIDIsIDE3OSwgNywgNiwgMSwgMTU3LCAyLCAyNDksIDIyMywgNywgNiwgMSwgMTU3LCAyLCAyMTcsIDQyLCA3LCAKLSAgICA2LCAxLCAxNTcsIDIsIDI0NywgMjA5LCAyMzAsIDE1NCwgNTIsIDcsIDYsIDEsIDE1NywgMiwgOTAsIDcsIDYsIDEsIDExMSwgCi0gICAgMiwgMjQyLCAxMTMsIDcsIDYsIDEsIDExMSwgMiwgMTc5LCA3LCA2LCAxLCAxMTEsIDIsIDI0OSwgMjIzLCA3LCA2LCAxLCAKLSAgICAxMTEsIDIsIDI0NywgMjA5LCA3LCA2LCAxLCAyMTMsIDEwNiwgMiwgMTc5LCA3LCA2LCAxLCAyMTcsIDEwNCwgNywgMywgMSwgCi0gICAgMjIwLCAyNTUsIDE5NywgNywgMywgMSwgMTE4LCAyLCAyNDIsIDExMywgNywgMywgMSwgMTE4LCAyLCAxNzksIDcsIDMsIDEsIAotICAgIDExOCwgMiwgMjQ5LCAyMjMsIDcsIDMsIDEsIDExOCwgMiwgMjE3LCA0MiwgNywgMywgMSwgMTE4LCAyLCAyNDcsIDIwOSwgNywgCi0gICAgMywgMSwgMTE4LCAyLCAyMjMsIDEzMSwgNDksIDcsIDMsIDEsIDI1NCwgMTQ4LCA3LCAzLCAxLCAyNTAsIDI1MywgMiwgMjUwLCAKLSAgICAxMTcsIDcsIDMsIDEsIDE5MSwgMiwgMjQyLCAxMTMsIDcsIDMsIDEsIDE5MSwgMiwgMTc5LCA3LCAzLCAxLCAxOTEsIDIsIAotICAgIDI0OSwgMjIzLCA3LCAzLCAxLCAxOTEsIDIsIDI0NywgMjA5LCA3LCAzLCAxLCAyNDAsIDE0NiwgMiwgMjQyLCAxMTMsIDcsIAotICAgIDMsIDEsIDI0MCwgMTQ2LCAyLCAxNzksIDcsIDMsIDEsIDI0MCwgMTQ2LCAyLCAyNDksIDIyMywgNywgMywgMSwgMjQwLCAKLSAgICAxNDYsIDIsIDI0NywgMjA5LCA3LCAzLCAxLCAyNDUsIDI1LCA3LCAzLCAxLCAyMzAsIDk4LCAyLCAyMTcsIDQyLCA3LCAzLCAKLSAgICAxLCAxNTcsIDIsIDI0MiwgMTEzLCA3LCAzLCAxLCAxNTcsIDIsIDE3OSwgNywgMywgMSwgMTU3LCAyLCAyNDksIDIyMywgNywgCi0gICAgMywgMSwgMTU3LCAyLCAyMTcsIDQyLCA3LCAzLCAxLCAxNTcsIDIsIDI0NywgMjA5LCAyNDcsIDEyMSwgNTIsIDcsIDMsIDEsIAotICAgIDE1NywgMiwgOTAsIDcsIDMsIDEsIDExMSwgMiwgMjQyLCAxMTMsIDcsIDMsIDEsIDExMSwgMiwgMTc5LCA3LCAzLCAxLCAKLSAgICAxMTEsIDIsIDI0OSwgMjIzLCA3LCAzLCAxLCAxMTEsIDIsIDI0NywgMjA5LCA3LCAzLCAxLCAyMTMsIDEwNiwgMiwgMTc5LCAKLSAgICA3LCAzLCAxLCAyMTcsIDEwNCwgNywgMywgMSwgMjEzLCAxMDYsIDIsIDI0NywgMjA5LCA3LCA2LCAxLCAxMTgsIDIsIDIzMiwgCi0gICAgMzcsIDcsIDMsIDEsIDExOCwgMiwgMjMyLCAzNywgNywgNiwgMSwgMTE4LCAyLCAyNTEsIDc0LCA3LCAzLCAxLCAxMTgsIDIsIAotICAgIDI1MSwgNzQsIDcsIDYsIDEsIDExOCwgMiwgMjI3LCA5MCwgNywgMywgMSwgMTE4LCAyLCAyMjcsIDkwLCA3LCA2LCAxLCAKLSAgICAyNTAsIDI1MywgMiwgMTc5LCA3LCAzLCAxLCAyNTAsIDI1MywgMiwgMTc5LCA3LCA2LCAxLCAyNTAsIDI1MywgMiwgMjQ5LCAKLSAgICAyMjMsIDcsIDMsIDEsIDI1MCwgMjUzLCAyLCAyNDksIDIyMywgNywgNiwgMSwgMjUwLCAyNTMsIDIsIDYyLCA0OSwgNywgMywgCi0gICAgMSwgMjUwLCAyNTMsIDIsIDYyLCA0OSwgNywgNiwgMSwgMjUwLCAyNTMsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAyNTAsIAotICAgIDI1MywgMiwgMjUwLCAxNjYsIDcsIDYsIDEsIDI0OSwgNCwgMiwgMjUwLCAxNjYsIDcsIDMsIDEsIDI0OSwgNCwgMiwgMjUwLCAKLSAgICAxNjYsIDcsIDYsIDEsIDI0OSwgNCwgMiwgOTAsIDcsIDMsIDEsIDI0OSwgNCwgMiwgOTAsIDcsIDYsIDEsIDE5MSwgMiwgCi0gICAgMjMyLCAzNywgNywgMywgMSwgMTkxLCAyLCAyMzIsIDM3LCA3LCA2LCAxLCAxOTEsIDIsIDI1MSwgNzQsIDcsIDMsIDEsIAotICAgIDE5MSwgMiwgMjUxLCA3NCwgNywgNiwgMSwgMTkxLCAyLCA2MiwgNDksIDcsIDMsIDEsIDE5MSwgMiwgNjIsIDQ5LCA3LCA2LCAKLSAgICAxLCAxOTEsIDIsIDIyNywgOTAsIDcsIDMsIDEsIDE5MSwgMiwgMjI3LCA5MCwgNywgNiwgMSwgMTkxLCAyLCAyNTAsIDE2NiwgCi0gICAgNywgMywgMSwgMTkxLCAyLCAyNTAsIDE2NiwgNywgNiwgMSwgMjQzLCAxNzgsIDIsIDI0OSwgMjIzLCA3LCAzLCAxLCAyNDMsIAotICAgIDE3OCwgMiwgMjQ5LCAyMjMsIDcsIDYsIDEsIDI0MywgMTc4LCAyLCAyNTEsIDc0LCA3LCAzLCAxLCAyNDMsIDE3OCwgMiwgCi0gICAgMjUxLCA3NCwgNywgNiwgMSwgMjQzLCAxNzgsIDIsIDYyLCA0OSwgNywgMywgMSwgMjQzLCAxNzgsIDIsIDYyLCA0OSwgNywgCi0gICAgNiwgMSwgMjQzLCAxNzgsIDIsIDI1MCwgMTE3LCA3LCAzLCAxLCAyNDMsIDE3OCwgMiwgMjUwLCAxMTcsIDcsIDYsIDEsIAotICAgIDI0MiwgNDIsIDIsIDI0OSwgMjIzLCA3LCAzLCAxLCAyNDIsIDQyLCAyLCAyNDksIDIyMywgNywgNiwgMSwgMjQyLCA0MiwgMiwgCi0gICAgOTAsIDcsIDMsIDEsIDI0MiwgNDIsIDIsIDkwLCA3LCA2LCAxLCAyNDAsIDE0NiwgMiwgMjE3LCA0MiwgNywgMywgMSwgMjQwLCAKLSAgICAxNDYsIDIsIDIxNywgNDIsIDcsIDYsIDEsIDI0MCwgMTQ2LCAyLCAyMzIsIDM3LCA3LCAzLCAxLCAyNDAsIDE0NiwgMiwgCi0gICAgMjMyLCAzNywgNywgNiwgMSwgMjQwLCAxNDYsIDIsIDI1MSwgNzQsIDcsIDMsIDEsIDI0MCwgMTQ2LCAyLCAyNTEsIDc0LCA3LCAKLSAgICA2LCAxLCAyNDAsIDE0NiwgMiwgMjI3LCA5MCwgNywgMywgMSwgMjQwLCAxNDYsIDIsIDIyNywgOTAsIDcsIDYsIDEsIDI0MCwgCi0gICAgMTQ2LCAyLCA2MiwgNDksIDcsIDMsIDEsIDI0NywgNzMsIDcyLCA3LCA2LCAyNiwgMjM2LCAyNiwgNywgMywgMjYsIDIzNiwgCi0gICAgMjYsIDcsIDYsIDEsIDIzNSwgMTQzLCAyLCAyNDksIDIyMywgNywgMywgMSwgMjM1LCAxNDMsIDIsIDI0OSwgMjIzLCA3LCA2LCAKLSAgICAxLCAyMzUsIDI4LCAyLCAyNTAsIDExNywgNywgMywgMSwgMjM1LCAyOCwgMiwgMjUwLCAxMTcsIDcsIDMsIDEsIDIzMywgCi0gICAgMjQ4LCA3LCA2LCAxLCAyMzMsIDE3MSwgMiwgMTc5LCA3LCAzLCAxLCAyMzMsIDE3MSwgMiwgMTc5LCA3LCA2LCAxLCAyMzMsIAotICAgIDE3MSwgMiwgMjUwLCAxMTcsIDcsIDMsIDEsIDIzMywgMTcxLCAyLCAyNTAsIDExNywgNywgNiwgMSwgMjMzLCAxNzEsIDIsIAotICAgIDI1MCwgMTY2LCA3LCAzLCAxLCAyMzMsIDE3MSwgMiwgMjUwLCAxNjYsIDcsIDYsIDEsIDIzMywgMTcxLCAyLCAyMzEsIDM3LCAKLSAgICAyNDcsIDc0LCA3LCAzLCAxLCAyMzMsIDE3MSwgMiwgMjMxLCAzNywgMjQ3LCA3NCwgNywgNiwgMSwgMjMzLCAxNzEsIDIsIAotICAgIDkwLCA3LCAzLCAxLCAyMzMsIDE3MSwgMiwgOTAsIDcsIDYsIDEsIDIzMCwgOTgsIDIsIDE3OSwgNywgMywgMSwgMjMwLCA5OCwgCi0gICAgMiwgMTc5LCA3LCA2LCAxLCAyMzAsIDk4LCAyLCAyNTAsIDExNywgNywgMywgMSwgMjMwLCA5OCwgMiwgMjUwLCAxMTcsIDcsIAotICAgIDYsIDEsIDIzMCwgOTgsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAyMzAsIDk4LCAyLCAyNTAsIDE2NiwgNywgMywgMSwgMjMwLCAKLSAgICA5OCwgMjI1LCA4NCwgMjUxLCA3LCAyNTMsIDIyNiwgNywgNiwgMSwgMjQ1LCA5NiwgNywgMywgMSwgMjQ1LCA5NiwgNywgNiwgCi0gICAgMSwgMTU3LCAyLCAyMzIsIDM3LCA3LCAzLCAxLCAxNTcsIDIsIDIzMiwgMzcsIDcsIDYsIDEsIDE1NywgMiwgMjUxLCA3NCwgCi0gICAgNywgMywgMSwgMTU3LCAyLCAyNTEsIDc0LCA3LCA2LCAxLCAxNTcsIDIsIDUxLCAxNzksIDcsIDMsIDEsIDE1NywgMiwgNTEsIAotICAgIDE3OSwgNywgNiwgMjYsIDIyNywgOTksIDcsIDMsIDI2LCAyMjcsIDk5LCA3LCA2LCAxLCAyMjQsIDExMywgMiwgMTc5LCA3LCAKLSAgICAzLCAxLCAyMjQsIDExMywgMiwgMTc5LCA3LCA2LCAxLCAyMjQsIDExMywgMiwgMjUwLCAxMTcsIDcsIDMsIDEsIDIyNCwgCi0gICAgMTEzLCAyLCAyNTAsIDExNywgNywgNiwgMSwgMjI0LCAxMTMsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAyMjQsIDExMywgMiwgCi0gICAgMjUwLCAxNjYsIDcsIDYsIDEsIDIyMywgNCwgMiwgMTc5LCA3LCAzLCAxLCAyMjMsIDQsIDIsIDE3OSwgNywgNiwgMSwgMjIzLCAKLSAgICA0LCAyLCAyNDksIDIyMywgNywgMywgMSwgMjIzLCA0LCAyLCAyNDksIDIyMywgNywgNiwgMSwgMjIzLCA0LCAyLCAyNTAsIAotICAgIDExNywgNywgMywgMSwgMjIzLCA0LCAyLCAyNTAsIDExNywgNywgNiwgMSwgMjIzLCA0LCAyLCAyNTAsIDE2NiwgNywgMywgMSwgCi0gICAgMjIzLCA0LCAyLCAyNTAsIDE2NiwgNywgNiwgMSwgMjE4LCAxMDAsIDIsIDI1MCwgMTE3LCA3LCAzLCAxLCAyMTgsIDEwMCwgCi0gICAgMiwgMjUwLCAxMTcsIDcsIDYsIDEsIDIxOCwgMTAwLCAyLCAyNTAsIDE2NiwgNywgMywgMSwgMjE4LCAxMDAsIDIsIDI1MCwgCi0gICAgMTY2LCA3LCA2LCAxLCAyMTgsIDEwMCwgMiwgOTAsIDcsIDMsIDEsIDIxOCwgMTAwLCAyLCA5MCwgNywgNiwgMSwgMTExLCAyLCAKLSAgICAyMTcsIDQyLCA3LCAzLCAxLCAxMTEsIDIsIDIxNywgNDIsIDcsIDYsIDEsIDExMSwgMiwgMjMyLCAzNywgNywgMywgMSwgCi0gICAgMTExLCAyLCAyMzIsIDM3LCA3LCA2LCAxLCAxMTEsIDIsIDI1MSwgNzQsIDcsIDMsIDEsIDExMSwgMiwgMjUxLCA3NCwgNywgCi0gICAgNiwgMSwgMTExLCAyLCAyMjMsIDEzMSwgNDksIDcsIDMsIDEsIDExMSwgMiwgMjIzLCAxMzEsIDQ5LCA3LCA2LCAxLCAxMTEsIAotICAgIDIsIDUxLCAxNzksIDcsIDMsIDEsIDExMSwgMiwgNTEsIDE3OSwgNywgNiwgMSwgMTExLCAyLCAyMjcsIDkwLCA3LCAzLCAxLCAKLSAgICAxMTEsIDIsIDIyNywgOTAsIDcsIDYsIDEsIDIxNCwgODMsIDIsIDI0OSwgMjIzLCA3LCAzLCAxLCAyMTQsIDgzLCAyLCAyNDksIAotICAgIDIyMywgNywgNiwgMSwgMjEzLCAxMDYsIDIsIDI0OSwgMjIzLCA3LCAzLCAxLCAyMTMsIDEwNiwgMiwgMjQ5LCAyMjMsIDcsIAotICAgIDYsIDEsIDIxMywgMTA2LCAyLCAyNDcsIDIwOSwgNywgNiwgMSwgMjEyLCAxNTMsIDIsIDE3OSwgNywgMywgMSwgMjEyLCAKLSAgICAxNTMsIDIsIDE3OSwgNywgNiwgMSwgMjEyLCAxNTMsIDIsIDYyLCA0OSwgNywgMywgMSwgMjEyLCAxNTMsIDIsIDYyLCA0OSwgCi0gICAgNywgNiwgMSwgMjEyLCAxNTMsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAyMTIsIDE1MywgMiwgMjUwLCAxNjYsIDcsIDMsIDEsIAotICAgIDE4NCwgMTk3LCA3LCAzLCAxLCA1NCwgMiwgOTAsIDcsIDYsIDEsIDU0LCAyLCAxMDEsIDcsIDYsIDEsIDU0LCAyLCAyMTYsIAotICAgIDIyNCwgNywgMywgMSwgNTQsIDIsIDIxNiwgMjI0LCA3LCA2LCAxLCAxNjAsIDE4OSwgNywgMywgMSwgMTYwLCAxODksIDcsIAotICAgIDYsIDEsIDIyNywgNDAsIDc1LCA3LCA2LCAxLCAyNTAsIDI1MywgMiwgMTAxLCA3LCAzLCAxLCAyNTAsIDI1MywgMiwgMTAxLCAKLSAgICA3LCA2LCAxLCAyNTQsIDEyNCwgMjQ5LCAzLCA3LCA2LCAxLCAyNDksIDQsIDIsIDEwMSwgNywgNiwgMSwgMjQ5LCA0LCAyLCAKLSAgICAyMTYsIDIyNCwgNywgMywgMSwgMjQ5LCA0LCAyLCAyMTYsIDIyNCwgNywgMywgMSwgMjE2LCA1OCwgMjQ4LCA1LCA3LCA2LCAKLSAgICAxLCAyMjMsIDIwMiwgNzQsIDcsIDYsIDEsIDIyMiwgMTEzLCA3LCA2LCAxLCAyMjcsIDQwLCA3NCwgNywgNiwgMSwgMjQ0LCAKLSAgICAyMzEsIDIsIDEwMSwgNywgMywgMSwgMjQ0LCAyMzEsIDIsIDEwMSwgNywgNiwgMSwgMjQzLCAxNzgsIDIsIDEwMSwgNywgNiwgCi0gICAgMSwgMjQzLCA4MywgNywgMywgMSwgMjQwLCAxOTMsIDcsIDYsIDEsIDIzNSwgMTgzLCA3LCA2LCAxLCAyNDAsIDE0NiwgMiwgCi0gICAgOTAsIDcsIDYsIDEsIDIzNSwgMjgsIDIsIDEwMSwgNywgMywgMSwgMjM1LCAyOCwgMiwgMTAxLCA3LCAzLCAxLCAyMzMsIAotICAgIDE3MSwgMiwgMTM0LCA3LCAzLCAxLCAyMzMsIDEyNCwgMiwgOTAsIDcsIDYsIDEsIDIxNiwgNTgsIDE4MywgNywgNiwgMSwgCi0gICAgMjMwLCA5OCwgMiwgNDIsIDEwMSwgNywgMywgMSwgMjMwLCA5OCwgMiwgMTg0LCA0NiwgMjMzLCA2MCwgNywgNiwgMSwgMTU3LCAKLSAgICAyLCAyMzEsIDM3LCAyMTcsIDQyLCA3LCA2LCAxLCAxNTcsIDIsIDI0MCwgMjM1LCA3LCAzLCAxLCAxNTcsIDIsIDI0MCwgCi0gICAgMjM1LCA3LCA2LCAxLCAyMjcsIDg1LCA3LCAzLCAxLCAyMjcsIDg1LCA3LCA2LCAxLCAyMjYsIDIzMCwgMiwgMTAxLCA3LCAzLCAKLSAgICAxLCAyMjYsIDIzMCwgMiwgMTAxLCA3LCAxLCAyMTIsIDIwNSwgNywgNiwgMSwgMTYwLCAxMDksIDcsIDMsIDEsIDE2MCwgCi0gICAgMTA5LCA3LCA2LCAxLCAyNDUsIDQwLCA3LCAxLCAyMjMsIDIwMiwgMjQ1LCA0MSwgMjMyLCAxNzcsIDcsIDMsIDEsIDIxOCwgCi0gICAgMTAwLCAyLCAyMjYsIDE5MywgMTAxLCA3LCA2LCAxLCAyMTgsIDEwMCwgMiwgMTAxLCA3LCAzLCAxLCAyMTgsIDEwMCwgMiwgCi0gICAgMTAxLCA3LCA2LCAxLCAyMTgsIDEwMCwgMiwgMjIzLCAyMDcsIDEwMSwgNywgNiwgMSwgMTExLCAyLCAyNDAsIDIzNSwgNywgCi0gICAgMywgMSwgMTExLCAyLCAyNDAsIDIzNSwgNywgNiwgMSwgMjE1LCAxMjgsIDcsIDYsIDEsIDIxNSwgODAsIDIsIDEwMSwgNywgCi0gICAgNiwgMSwgMjEzLCAxMDYsIDIsIDEwMSwgNywgMywgMSwgMjEzLCAxMDYsIDIsIDEwMSwgNywgNiwgMSwgMjEyLCAxNTMsIDIsIAotICAgIDkwLCA3LCAzLCAxLCAyMTIsIDE1MywgMiwgOTAsIDcsIDYsIDEsIDI0NCwgMjMyLCA3LCA2LCAxLCAyNDQsIDIzMywgMjIzLCAKLSAgICAyMDEsIDcsIDMsIDEsIDI0NCwgMjMzLCAyMjMsIDIwMSwgNywgMywgMSwgMjQ0LCAyMzMsIDIsIDIxOCwgMjcsIDcsIDEsIAotICAgIDExNywgMiwgOTAsIDcsIDYsIDEsIDE2MCwgMTgwLCA3LCAzLCAxLCAxNjAsIDE4MCwgNywgMSwgMjM1LCAxOTEsIDI0MiwgCi0gICAgMTU2LCAyMTksIDcwLCAyLCA5MCwgNywgMSwgMjEzLCAxNjksIDcsIDEsIDI0NywgMjU0LCAyNDksIDIwNCwgNywgMSwgMjMzLCAKLSAgICAxMDAsIDI0OSwgMjA0LCA3LCAxLCAyNTQsIDQ2LCAyNDksIDIwNCwgNywgMSwgMjIzLCAyMDcsIDI0OSwgMjA0LCA3LCA2LCAKLSAgICAxLCAyNDUsIDI1MSwgMiwgMjUwLCAxNjYsIDcsIDYsIDEsIDI0OSwgNCwgMiwgMywgMSwgMjEyLCAxNTMsIDIsIDI1MCwgCi0gICAgMTY2LCA3LCAzLCAxLCAyNDUsIDI1MSwgMiwgMjUwLCAxNjYsIDcsIDYsIDEsIDIzMiwgMjE3LCA3LCA2LCAxLCAyMzMsIAotICAgIDE3MSwgMiwgMywgMSwgMjM1LCAxNDIsIDcsIDMsIDEsIDIzMiwgMjE3LCA3LCA2LCAxLCAyMjksIDE3LCA3LCA2LCAxLCAKLSAgICAyMzAsIDk4LCAyLCAzLCAxLCAyMzUsIDE0MiwgNywgMywgMSwgMjI5LCAxNywgNywgNiwgMSwgMTE4LCAyLCAyNTAsIDE2NiwgCi0gICAgNywgMywgMSwgMTE4LCAyLCAyNTAsIDE2NiwgNywgNiwgMSwgMjQwLCAxNDYsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAyNDAsIAotICAgIDE0NiwgMiwgMjUwLCAxNjYsIDcsIDYsIDEsIDE1NywgMiwgMjUwLCAxNjYsIDcsIDMsIDEsIDE1NywgMiwgMjUwLCAxNjYsIAotICAgIDcsIDYsIDEsIDExMSwgMiwgMjUwLCAxNjYsIDcsIDMsIDEsIDExMSwgMiwgMjUwLCAxNjYsIDcsIDYsIDEsIDExMSwgMiwgCi0gICAgMjQ3LCAyMTAsIDI0LCAyMzIsIDM3LCA3LCAzLCAxLCAxMTEsIDIsIDI0NywgMjEwLCAyNCwgMjMyLCAzNywgNywgNiwgMSwgCi0gICAgMTExLCAyLCAyNDcsIDIxMCwgMjQsIDE3OSwgNywgMywgMSwgMTExLCAyLCAyNDcsIDIxMCwgMjQsIDE3OSwgNywgNiwgMSwgCi0gICAgMTExLCAyLCAyNDcsIDIxMCwgMjQsIDI1MCwgMTY2LCA3LCAzLCAxLCAxMTEsIDIsIDI0NywgMjEwLCAyNCwgMjUwLCAxNjYsIAotICAgIDcsIDYsIDEsIDExMSwgMiwgMjQ3LCAyMTAsIDI0LCAyNDIsIDExMywgNywgMywgMSwgMTExLCAyLCAyNDcsIDIxMCwgMjQsIAotICAgIDI0MiwgMTEzLCA3LCAzLCAxLCAyMTYsIDU4LCA3NCwgNywgNiwgMSwgMTE4LCAyLCAyNDcsIDIxMCwgMjQsIDIzMiwgMzcsIAotICAgIDcsIDMsIDEsIDExOCwgMiwgMjQ3LCAyMTAsIDI0LCAyMzIsIDM3LCA3LCA2LCAxLCAxMTgsIDIsIDYyLCA3OCwgMjQsIDIzMiwgCi0gICAgMzcsIDcsIDMsIDEsIDExOCwgMiwgNjIsIDc4LCAyNCwgMjMyLCAzNywgNywgNiwgMSwgMjU0LCAxNDksIDIsIDIzMiwgMzcsIAotICAgIDcsIDMsIDEsIDI1NCwgMTQ5LCAyLCAyMzIsIDM3LCA3LCA2LCAxLCAyNDMsIDE3OCwgMiwgOTAsIDcsIDMsIDEsIDI0MywgCi0gICAgMTc4LCAyLCA5MCwgNywgNiwgMSwgMjQzLCAxNzgsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAyNDMsIDE3OCwgMiwgMjUwLCAKLSAgICAxNjYsIDcsIDYsIDEsIDIzNSwgMjgsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAyMzUsIDI4LCAyLCAyNTAsIDE2NiwgNywgNiwgCi0gICAgMSwgMTU3LCAyLCAyMjcsIDkwLCA3LCAzLCAxLCAxNTcsIDIsIDIyNywgOTAsIDcsIDYsIDEsIDE1NywgMiwgMjI3LCA5MSwgCi0gICAgMjQsIDIzMiwgMzcsIDcsIDMsIDEsIDE1NywgMiwgMjI3LCA5MSwgMjQsIDIzMiwgMzcsIDcsIDYsIDEsIDI0NCwgMjMzLCAyLCAKLSAgICAyNTAsIDE2NiwgNywgMywgMSwgMjQ0LCAyMzMsIDIsIDI1MCwgMTY2LCA3LCAzLCAxLCAyMzUsIDE0MywgMiwgMjUwLCAxNjYsIAotICAgIDcsIDYsIDEsIDI0NSwgMjUwLCA3LCA2LCAxLCAyNDksIDQsIDIsIDMsIDEsIDIxMiwgMTUyLCA3LCAzLCAxLCAyNDUsIDI1MCwgCi0gICAgNywgNiwgMSwgMjQzLCAxNzgsIDIsIDE3OSwgNywgMywgMSwgMjQzLCAxNzgsIDIsIDE3OSwgNywgNiwgMSwgMjQwLCAxOTEsIAotICAgIDcsIDYsIDEsIDIxMywgMTY5LCA3LCA2LCAxLCAyMzAsIDk4LCAyLCAyNDIsIDExMywgNywgMywgMSwgMjMwLCA5OCwgMiwgCi0gICAgMjQyLCAxMTMsIDcsIDYsIDEsIDExOCwgMiwgMjIzLCAxMzEsIDc4LCAyNCwgMTc5LCA3LCAzLCAxLCAxMTgsIDIsIDIyMywgCi0gICAgMTMxLCA3OCwgMjQsIDE3OSwgNywgNiwgMSwgMjU0LCAxNDksIDIsIDE3OSwgNywgMywgMSwgMjU0LCAxNDksIDIsIDE3OSwgCi0gICAgNywgNiwgMSwgMTU3LCAyLCAyMTksIDQ1LCAyNCwgMTc5LCA3LCAzLCAxLCAxNTcsIDIsIDIxOSwgNDUsIDI0LCAxNzksIDcsIAotICAgIDYsIDEsIDExOCwgMiwgNTEsIDI0MiwgMTEzLCA3LCAzLCAxLCAxMTgsIDIsIDUxLCAyNDIsIDExMywgNywgNiwgMSwgMTE4LCAKLSAgICAyLCAyMzUsIDE5MSwgMjUxLCA3NCwgNywgMywgMSwgMTE4LCAyLCAyMzUsIDE5MSwgMjUxLCA3NCwgNywgNiwgMSwgMTkxLCAKLSAgICAyLCA1MSwgMjQyLCAxMTMsIDcsIDMsIDEsIDE5MSwgMiwgNTEsIDI0MiwgMTEzLCA3LCA2LCAxLCAxOTEsIDIsIDIzNSwgCi0gICAgMTkxLCAyNTEsIDc0LCA3LCAzLCAxLCAxOTEsIDIsIDIzNSwgMTkxLCAyNTEsIDc0LCA3LCA2LCAxLCAyNDAsIDE0NiwgMiwgCi0gICAgNTEsIDI0MiwgMTEzLCA3LCAzLCAxLCAyNDAsIDE0NiwgMiwgNTEsIDI0MiwgMTEzLCA3LCA2LCAxLCAyNDAsIDE0NiwgMiwgCi0gICAgMjM1LCAxOTEsIDI1MSwgNzQsIDcsIDMsIDEsIDI0MCwgMTQ2LCAyLCAyMzUsIDE5MSwgMjUxLCA3NCwgNywgNiwgMSwgMTU3LCAKLSAgICAyLCA1MSwgMjQyLCAxMTMsIDcsIDMsIDEsIDE1NywgMiwgNTEsIDI0MiwgMTEzLCA3LCA2LCAxLCAxNTcsIDIsIDIzNSwgCi0gICAgMTkxLCAyNTEsIDc0LCA3LCAzLCAxLCAxNTcsIDIsIDIzNSwgMTkxLCAyNTEsIDc0LCA3LCA2LCAxLCAyMjQsIDExMywgMiwgCi0gICAgNTEsIDI0MiwgMTEzLCA3LCAzLCAxLCAyMjQsIDExMywgMiwgNTEsIDI0MiwgMTEzLCA3LCA2LCAxLCAyMjQsIDExMywgMiwgCi0gICAgMjM1LCAxOTEsIDI1MSwgNzQsIDcsIDMsIDEsIDIyNCwgMTEzLCAyLCAyMzUsIDE5MSwgMjUxLCA3NCwgNywgNiwgMSwgMTExLCAKLSAgICAyLCA1MSwgMjQyLCAxMTMsIDcsIDMsIDEsIDExMSwgMiwgNTEsIDI0MiwgMTEzLCA3LCA2LCAxLCAxMTEsIDIsIDIzNSwgCi0gICAgMTkxLCAyNTEsIDc0LCA3LCAzLCAxLCAxMTEsIDIsIDIzNSwgMTkxLCAyNTEsIDc0LCA3LCA2LCAxLCAyMjMsIDQsIDIsIAotICAgIDI0OSwgMTU4LCA1NSwgNywgMywgMSwgMjIzLCA0LCAyLCAyNDksIDE1OCwgNTUsIDcsIDYsIDEsIDIxOCwgMTAwLCAyLCAKLSAgICAyNDksIDE1OCwgNTUsIDcsIDMsIDEsIDIxOCwgMTAwLCAyLCAyNDksIDE1OCwgNTUsIDcsIDYsIDEsIDIxMiwgMjIyLCA3LCAKLSAgICAzLCAxLCAyMTIsIDIyMiwgNywgNiwgMSwgMjQyLCA0MiwgMiwgMjUwLCAxNjYsIDcsIDMsIDEsIDI0MiwgNDIsIDIsIDI1MCwgCi0gICAgMTY2LCA3LCA2LCAxLCAyMzAsIDk4LCAyLCAxODQsIDQ2LCAyMzMsIDYwLCA3LCAzLCAxLCAyNDksIDQsIDIsIDI0OSwgNDEsIAotICAgIDcsIDYsIDEsIDIyNywgMiwgNywgMywgMSwgMjI3LCAyLCA3LCA2LCAxLCAyMTIsIDE1MywgMiwgMTAxLCA3LCAzLCAxLCAKLSAgICAyMTIsIDE1MywgMiwgMTAxLCA3LCA2LCAxLCAxMTgsIDIsIDYyLCA0OSwgNywgMywgMSwgMTE4LCAyLCA2MiwgNDksIDcsIDYsIAotICAgIDEsIDE5MSwgMiwgMjUwLCAxMTcsIDcsIDMsIDEsIDE5MSwgMiwgMjUwLCAxMTcsIDcsIDYsIDEsIDE1NywgMiwgMjQ3LCAKLSAgICAyMTAsIDI0LCAyMzIsIDM3LCA3LCAzLCAxLCAxNTcsIDIsIDI0NywgMjEwLCAyNCwgMjMyLCAzNywgNywgNiwgMSwgMTU3LCAKLSAgICAyLCAyMTcsIDQzLCAyNCwgMjMyLCAzNywgNywgMywgMSwgMTU3LCAyLCAyMTcsIDQzLCAyNCwgMjMyLCAzNywgNywgNiwgMSwgCi0gICAgMTU3LCAyLCA2MiwgNDksIDcsIDMsIDEsIDE1NywgMiwgNjIsIDQ5LCA3LCA2LCAxLCAxNTcsIDIsIDYyLCA3OCwgMjQsIAotICAgIDIzMiwgMzcsIDcsIDMsIDEsIDE1NywgMiwgNjIsIDc4LCAyNCwgMjMyLCAzNywgNywgNiwgMSwgMjEzLCAxMDYsIDIsIDIzMiwgCi0gICAgMzcsIDcsIDMsIDEsIDIxMywgMTA2LCAyLCAyMzIsIDM3LCA3LCAzLCAxLCAyMzMsIDE3MSwgMiwgMjQ5LCA0MSwgNywgMywgCi0gICAgMSwgMjMwLCA5OCwgMiwgMjQ5LCA0MSwgNywgMywgMSwgMjE4LCAxMDAsIDIsIDI0OSwgNDEsIDcsIDMsIDEsIDI0NywgNzMsIAotICAgIDIzNSwgMTQyLCA3LCAzLCAxLCAyNDgsIDg5LCAyNDcsIDE3MiwgNywgMywgMSwgMjI0LCAxNzYsIDI0NywgMTcyLCA3LCA2LCAKLSAgICAxLCAxMTgsIDIsIDkwLCA3LCA2LCAxLCAyNTAsIDI1MywgMiwgOTAsIDcsIDMsIDEsIDI1MCwgMjUzLCAyLCA5MCwgNywgNiwgCi0gICAgMSwgMjMzLCAxNzEsIDIsIDEzNCwgNywgNiwgMSwgMjE4LCAxMDAsIDIsIDI0NywgMjA3LCA5MCwgNywgMywgMSwgMjIzLCA0LCAKLSAgICAyLCAyMTgsIDE5NSwgMjE4LCAyNywgNywgMywgMSwgMjEyLCAxNTMsIDIsIDIxOCwgMTk1LCAyMTgsIDI3LCA3LCA2LCAxLCAKLSAgICAyNDIsIDE1NiwgMjE5LCA2OSwgNywgMywgMSwgMjQyLCAxNTYsIDIxOSwgNjksIDcsIDYsIDEsIDU0LCAyLCA5MCwgNywgNiwgCi0gICAgMSwgMTExLCAxMzQsIDcsIDYsIDEsIDIxNiwgNTgsIDIxNSwgNzksIDcsIDYsIDEsIDE5MSwgMiwgOTAsIDcsIDMsIDEsIAotICAgIDE5MSwgMiwgOTAsIDcsIDYsIDEsIDIzNSwgMTQzLCAyLCA5MCwgNywgMywgMSwgMjM1LCAxNDMsIDIsIDkwLCA3LCA2LCAxLCAKLSAgICAzLCAyMjQsIDI0MSwgMiwgMjQxLCAzOCwgMjE4LCAyNywgNywgMywgMSwgMjI0LCAyNDEsIDIsIDI0MSwgMzgsIDIxOCwgMjcsIAotICAgIDcsIDYsIDEsIDIyNCwgMTEzLCAyLCA5MCwgNywgMywgMSwgMjI0LCAxMTMsIDIsIDkwLCA3LCA2LCAxLCAyMTMsIDEwNiwgMiwgCi0gICAgOTAsIDcsIDMsIDEsIDIxMywgMTA2LCAyLCA5MCwgNywgMywgMSwgMjE2LCA1OCwgNjEsIDcsIDMsIDEsIDI1NCwgNTIsIDcsIAotICAgIDMsIDEsIDIxNiwgNTgsIDI1NCwgNTIsIDcsIDMsIDEsIDU0LCAyLCAxMDEsIDcsIDMsIDEsIDIyNywgNDAsIDc1LCA3LCAzLCAKLSAgICAxLCAyNTAsIDI1MywgMiwgMjQ5LCA0MSwgNywgMywgMSwgMjQ5LCA0LCAyLCAyMTgsIDI3LCA3LCAzLCAxLCAyNDksIDQsIDIsIAotICAgIDEwMSwgNywgMywgMSwgMjIzLCAyMDIsIDc0LCA3LCAzLCAxLCAyMjIsIDExMywgNywgMywgMSwgMjIyLCAxMTQsIDIsIDEwMSwgCi0gICAgNywgMywgMSwgMjI3LCA0MCwgNzQsIDcsIDMsIDEsIDIyMywgMjAyLCAyMjcsIDQwLCA3NCwgNywgMywgMSwgMjIzLCAyMDIsIAotICAgIDIyNywgNDAsIDE5MSwgMiwgMTAxLCA3LCAzLCAxLCAyNDksIDE5MywgMjIzLCAyMDIsIDIyNywgNDAsIDc0LCA3LCAzLCAxLCAKLSAgICAyNDcsIDczLCAyMzUsIDE0MywgMiwgOTAsIDcsIDMsIDEsIDI0MywgMTc4LCAyLCAxMDEsIDcsIDMsIDEsIDExMywgMjQzLCAKLSAgICAxNzcsIDcsIDEsIDMsIDYsIDI0MywgMTc3LCA3LCAzLCAxLCAyNDMsIDgzLCA3LCAzLCAxLCAyMjQsIDQzLCAyNDAsIDIzNSwgCi0gICAgNywgMywgMSwgMjE2LCA1OCwgMjQyLCA0MSwgNywgMywgMSwgMjQyLCA0MiwgMiwgMTAxLCA3LCAzLCAxLCAyNDEsIDE5MiwgCi0gICAgMiwgMTAxLCA3LCAzLCAxLCAyNDAsIDE0NiwgMiwgOTAsIDcsIDMsIDEsIDIzNSwgMTgzLCA3LCAxLCAzLCA2LCA3MiwgNywgCi0gICAgMywgMSwgMjMzLCAxNzEsIDIsIDIzMSwgMzcsIDIxNywgNDIsIDcsIDMsIDEsIDIzMywgMTcxLCAyLCAyNTEsIDIxOCwgNywgCi0gICAgMywgMSwgMjMzLCAxNzEsIDIsIDIyMywgMjA3LCAxMDEsIDcsIDMsIDEsIDIzMywgMjcsIDcsIDMsIDEsIDIxNiwgNTgsIAotICAgIDE4MywgNywgMywgMSwgMjE2LCA1OCwgMjMyLCAxMTAsIDIsIDE4NCwgMjMzLCA2MCwgNywgMywgMSwgMjMyLCAxMTAsIDIsIAotICAgIDEwMSwgNywgMywgMSwgMjMwLCA5OCwgMiwgNDIsIDEwMSwgNywgMywgMSwgMjMwLCA5OCwgMiwgMjIzLCAyMDcsIDEwMSwgNywgCi0gICAgMSwgMywgNiwgMjA0LCA3LCAzLCAxLCAyNTIsIDU0LCA3NSwgNywgMSwgMywgNiwgMjI3LCA5OSwgNywgMywgMSwgMjQ5LCAKLSAgICAxOTMsIDIyNywgNjcsIDcsIDMsIDEsIDIyNiwgOSwgNywgMywgMSwgMjE2LCA1OCwgMTQ5LCA3LCAzLCAxLCAyMTYsIDU4LCAKLSAgICAyMjQsIDExMywgMiwgMTg0LCAyMzMsIDYwLCA3LCAzLCAxLCAyMTYsIDU4LCAyMjQsIDExMywgMiwgMTAxLCA3LCAzLCAxLCAKLSAgICAyMjQsIDExMywgMiwgMTg0LCAyMzMsIDYwLCA3LCAzLCAxLCAyMjQsIDExMywgMiwgMjE4LCAyNywgNywgMywgMSwgMjI0LCAKLSAgICAxMTMsIDIsIDI0NCwgNTYsIDcsIDMsIDEsIDIyMywgMjAyLCAyMjQsIDExMywgMiwgMjQ0LCA1NiwgNywgMSwgMywgNiwgCi0gICAgMTQ5LCA3LCAxLCAzLCA2LCAyMzUsIDE5MSwgMTQ5LCA3LCAzLCAxLCAyMjMsIDQsIDIsIDEwMSwgNywgMywgMSwgMjQ1LCAKLSAgICA0MCwgNywgMywgMSwgMjQ3LCA3MywgMjM1LCAxNDMsIDIsIDIxOSwgNDUsIDI0LCAxMDEsIDcsIDMsIDEsIDIxOSwgMTYzLCAKLSAgICAyMjMsIDIwMiwgMjQ1LCA0MCwgNywgMywgMSwgMjQ1LCA0MSwgMiwgMjQ5LCA0MSwgNywgMywgMSwgMjE2LCA1OCwgMjE4LCAKLSAgICA5OSwgNywgMywgMSwgMjE4LCAxMDAsIDIsIDIyMywgMjA3LCAxMDEsIDcsIDMsIDEsIDExMSwgMTM0LCA3LCAzLCAxLCAyMTUsIAotICAgIDEyOCwgNywgMywgMSwgMjE1LCA4MCwgMiwgMTAxLCA3LCAzLCAxLCAyMTYsIDU4LCAyMTUsIDc5LCA3LCAzLCAxLCAyMTYsIAotICAgIDU4LCAyMTQsIDgyLCA3LCAzLCAxLCAyMTYsIDU4LCAyMTMsIDEwNSwgNywgMSwgMywgNiwgMjEzLCAxMDUsIDcsIDMsIDEsIAotICAgIDIxMiwgMTUzLCAyLCAyMjMsIDIwNywgMTAxLCA3LCAzLCAxLCAyMTIsIDE1MywgMiwgMjQ5LCA0MSwgNywgMywgMSwgMjQ0LCAKLSAgICAyMzIsIDcsIDMsIDEsIDI0NCwgMjMzLCAyLCAyNDksIDQxLCA3LCAxLCAyNDIsIDE1NiwgMjE5LCA2OSwgNywgMSwgMjI2LCAKLSAgICAxNSwgMjE0LCAxMTYsIDI0MywgMjE5LCA3LCAxLCAyMzUsIDE5MSwgMjQyLCAxNTYsIDIxOSwgNjksIDcsIDEsIDIxOSwgNTAsIAotICAgIDI1MCwgMjUyLCA3LCAxLCAyNTEsIDE2OSwgMjQ5LCAyMDQsIDcsIDEsIDMsIDYsIDI1MywgNzQsIDcsIDMsIDEsIDI0OSwgCi0gICAgMTkzLCAyMjcsIDQwLCA3NCwgNywgMSwgMywgNiwgMjQzLCAxNzgsIDIsIDEwMSwgNywgMSwgMywgNiwgMjQyLCA0MSwgNywgCi0gICAgMywgMSwgMjM1LCAxNDMsIDIsIDI0OSwgNjcsIDcsIDMsIDEsIDIxNiwgNTgsIDIzNSwgMjcsIDcsIDEsIDMsIDYsIDE1MCwgCi0gICAgNywgMywgMSwgMjI0LCAyNDEsIDIsIDEwMSwgNywgMSwgMjQyLCAxNTYsIDIxOSwgNzAsIDIsIDkwLCA3LCAxLCAyMjMsIAotICAgIDIwMiwgMjQyLCAxNTYsIDIxOSwgNzAsIDIsIDkwLCA3LCAzLCAxLCAyNDUsIDI1MSwgMjQ3LCAxNzIsIDcsIDMsIDEsIDI0NywgCi0gICAgMjMzLCAyNDcsIDE3MiwgNywgMywgMSwgMjQ1LCAyNTEsIDI0NywgMTczLCAyLCAyNDksIDQxLCA3LCAzLCAxLCAyMTYsIAotICAgIDE0MywgMjQ3LCAxNzIsIDcsIDMsIDEsIDIxNywgMTg4LCAyNDcsIDE3MiwgNywgMywgMSwgMjE3LCAyMzYsIDI0NywgMTczLCAKLSAgICAyLCAyNDksIDQxLCA3LCAzLCAxLCAyNDQsIDEwMywgMjQ3LCAxNzIsIDcsIDMsIDEsIDIzMiwgMTU4LCAyNDcsIDE3MiwgNywgCi0gICAgMywgMSwgMjMyLCAxMTEsIDI0NywgMTcyLCA3LCAxLCAyNTEsIDE2OSwgMjI2LCA1NiwgNywgMSwgMjUxLCAxNzcsIDIyNiwgCi0gICAgNTYsIDcsIDMsIDEsIDIxNiwgNTgsIDI0MiwgNDIsIDIsIDI0NCwgNTYsIDcsIDMsIDEsIDIxNiwgNTgsIDI0MiwgNDIsIDIsIAotICAgIDI0NCwgNTcsIDI0LCAyMTgsIDI3LCA1OSwgMSwgMywgMjQyLCA0MSwgNTksIDEsIDMsIDI0MiwgNDIsIDIsIDEwMSwgNTksIAotICAgIDEsIDMsIDIzNSwgMTQyLCA1OSwgMSwgMywgMTQ5LCA1OSwgMSwgMywgMjE2LCA1OCwgMTQ5LCA1OSwgMSwgMywgMjE2LCA1OCwgCi0gICAgMjI0LCAxMTMsIDIsIDEwMSwgNTksIDEsIDMsIDYsIDIzNSwgMTkxLCAxNDksIDU5LCAxLCAzLCAyMTQsIDgyLCA1OSwgMSwgCi0gICAgMywgMjEzLCAxMDUsIDU5LCAxLCAyMjUsIDcxLCA1OSwgMSwgNTEsIDIyNSwgNzEsIDU5LCAxLCAyMTYsIDU4LCAyNDksIAotICAgIDE1NywgNTksIDEsIDI1MywgMjI2LCA1OSwgMSwgMjIzLCAyMDIsIDI0OSwgMTU3LCA1OSwgMSwgNDYsIDE1MSwgMjIzLCAKLSAgICAxMzAsIDU5LCAxLCA0MiwgMTUxLCAyMjMsIDEzMCwgNTksIDEsIDI0MiwgMTU2LCAyMTksIDY5LCA1OSwgMSwgMjIzLCAyMDIsIAotICAgIDI0MiwgMTU2LCAyMTksIDY5LCA1OSwgMSwgNDIsIDI1MywgMTY0LCA1OSwgMSwgNDYsIDI1MywgMTY0LCA1OSwgMSwgMTE0LCAKLSAgICAyNTMsIDE2NCwgNTksIDEsIDExOSwgMjUzLCAxNjQsIDU5LCAxLCAyNDksIDIyNCwgMjU0LCAxNzQsIDI1MCwgMTY2LCA1OSwgCi0gICAgMSwgNzEsIDIzMiwgMjQyLCA1OSwgMSwgMjMyLCAzNywgNTksIDEsIDI1NCwgMTY0LCAyNTQsIDE3NCwgNTksIDEsIDI0MiwgCi0gICAgMTE0LCAyNTQsIDE3NCwgNTksIDEsIDExNSwgNzEsIDIzMiwgMjQyLCA1OSwgMSwgMTE1LCAyMzIsIDM3LCA1OSwgMSwgMTE1LCAKLSAgICAyNDIsIDExNCwgMjU0LCAxNzQsIDU5LCAxLCAxMTUsIDI1NCwgMTY0LCAyNTQsIDE3NCwgNTksIDEsIDIxNiwgMTgwLCAyNDksIAotICAgIDE2NCwgNTksIDEsIDE1MSwgMjE2LCAxODAsIDI0OSwgMTY0LCA1OSwgMSwgMjUwLCAxMDcsIDQ2LCAxNTEsIDIyMywgMTMwLCAKLSAgICA1OSwgMSwgMjUwLCAxMDcsIDQyLCAxNTEsIDIyMywgMTMwLCA1OSwgMSwgMTE0LCAyMTgsIDM2LCA1OSwgMSwgMTE5LCAyMTgsIAotICAgIDM2LCA1OSwgMSwgOTQsIDUyLCA1OSwgMSwgMjMwLCAyNTEsIDUyLCAyNTEsIDc0LCA2MiwgNDksIDIyMywgMTMxLCA0OSwgCi0gICAgMjI3LCA5MCwgMywgMjE3LCA0MiwgNTEsIDI1NCwgMTY0LCAyNTQsIDE3NCwgNTksIDEsIDIyMywgMTg5LCAxMDEsIDU5LCAxLCAKLSAgICAyNDksIDcxLCAyNTQsIDE3NCwgNTksIDEsIDMsIDI0MywgODMsIDU5LCAxLCAzLCAxNTAsIDU5LCAxLCAzLCAxOTcsIDU5LCAKLSAgICAxLCAzLCAyMTMsIDE2NiwgNTksIDEsIDMsIDIyMywgMjAyLCAyNDIsIDE1NiwgMjE5LCA2OSwgNTksIDEsIDI0NCwgMjQ0LCAKLSAgICAxNjAsIDEzNCwgNTksIDEsIDEyNCwgMTYwLCAxMzQsIDU5LCAxLCAyMzEsIDM4LCAxNjAsIDEzNCwgNTksIDEsIDExNSwgCi0gICAgMTYwLCAxMzQsIDU5LCAxLCAyNDQsIDI0MywgMTYwLCAxMzQsIDU5LCAxLCAyMTIsIDI0NSwgMjQ3LCAyNTEsIDE2MCwgNzcsIAotICAgIDU5LCAxLCAyMTMsIDU5LCAyNDcsIDI1MSwgMTYwLCA3NywgNTksIDEsIDIxNCwgMTE0LCA1OSwgMSwgMjE1LCAxNTYsIDU5LCAKLSAgICAxLCA1MSwgMjUzLCAyMjYsIDU5LCAxLCAxMTUsIDExOSwgMjUzLCAxNjQsIDU5LCAxLCAxMTUsIDExNCwgMjUzLCAxNjQsIAotICAgIDU5LCAxLCAxMTUsIDQyLCAyNTMsIDE2NCwgNTksIDEsIDExNSwgNDYsIDI1MywgMTY0LCA1OSwgMSwgMTE1LCAyMjMsIDEzMCwgCi0gICAgNTksIDEsIDIzMSwgMzcsIDI0MiwgMTE0LCAyNTQsIDE3NCwgNTksIDEsIDIzMSwgMzcsIDUxLCAyNDIsIDExNCwgMjU0LCAKLSAgICAxNzQsIDU5LCAxLCAyMzEsIDM3LCA1MSwgMjU0LCAxNjQsIDI1NCwgMTc0LCA1OSwgMSwgMTE1LCAyMTcsIDQyLCA1OSwgMSwgCi0gICAgMjI0LCA0OCwgMjQ5LCAxNjQsIDU5LCAxLCAyNTEsIDIzNCwgMTI0LCAyMTYsIDI0MSwgNTksIDEsIDI0NSwgMTAxLCAxMjQsIAotICAgIDIxNiwgMjQxLCA1OSwgMSwgMjUxLCAyMzQsIDExNSwgMjE2LCAyNDEsIDU5LCAxLCAyNDUsIDEwMSwgMTE1LCAyMTYsIDI0MSwgCi0gICAgNTksIDEsIDIyMCwgMjM0LCA1OSwgMSwgMjI3LCA0MCwgMjIwLCAyMzQsIDU5LCAxLCAxMTUsIDQyLCA2OCwgMzcsIDI0MiwgCi0gICAgMTE0LCAyNTQsIDE3NCwgMzcsIDI1NCwgMTY0LCAyNTQsIDE3NCwgMzcsIDI0OSwgMjI0LCAyNTQsIDE3NCwgMzcsIDIxNywgCi0gICAgNDIsIDM3LCAyMzIsIDM3LCAzNywgMjI2LCAyNDMsIDM3LCAyNTEsIDc0LCAzNywgNjIsIDQ5LCAzNywgMjQ3LCAyMDksIDM3LCAKLSAgICAyNDEsIDM4LCA0OSwgMzcsIDIyMywgMTMxLCA0OSwgMzcsIDUxLCAyNTQsIDE2NCwgMjU0LCAxNzQsIDM3LCAyNTAsIDE2NiwgCi0gICAgMzcsIDcxLCAyMzIsIDI0MywgNDksIDM3LCA1MSwgNzEsIDIzMiwgMjQzLCA0OSwgMzcsIDUxLCAyNDIsIDExNCwgMjU0LCAKLSAgICAxNzQsIDM3LCAyNTAsIDE4NywgMzcsIDIzNSwgMTkxLCAyNTEsIDc0LCAzNywgMjE2LCA1OCwgMjQ5LCAxNTgsIDQ5LCAzNywgCi0gICAgMjQ5LCAxNTgsIDQ5LCAzNywgMjIzLCAyMDIsIDI0OSwgMTU4LCA0OSwgMzcsIDI0OSwgMTU4LCA3OCwgMjIzLCAxNDgsIDM3LCAKLSAgICAyNDIsIDExNCwgMjU0LCAxNzUsIDU1LCAzNywgMjU0LCAxNjQsIDI1NCwgMTc1LCA1NSwgMzcsIDQyLCAyMTgsIDM3LCA1NSwgCi0gICAgMzcsIDQ2LCAyMTgsIDM3LCA1NSwgMzcsIDQyLCAyNTQsIDE5LCA0OSwgMzcsIDI0MCwgMjM1LCAzNywgNDIsIDE1MSwgMjIzLCAKLSAgICAxMzEsIDU1LCAzNywgMTE0LCAyMTgsIDM3LCA1NSwgMzcsIDExOSwgMjE4LCAzNywgNTUsIDM3LCA5NCwgNSwgNTUsIDM3LCAKLSAgICAyMzAsIDI1MSwgNSwgNTUsIDM3LCAyMjYsIDE5MSwgMjQxLCAzOCwgNTUsIDM3LCAyMjMsIDIwNywgMjQxLCAzOCwgNTUsIAotICAgIDM3LCA2MiwgNTUsIDM3LCAyNDcsIDIxMCwgNTUsIDM3LCAyMjMsIDEzMSwgNTUsIDM3LCAyNDksIDE1OCwgNTUsIDM3LCAKLSAgICAyNTAsIDExNywgMzcsIDIyNywgOTAsIDM3LCA3MSwgMjMyLCAyNDMsIDU1LCAzNywgMjUxLCA2OCwgNTUsIDM3LCAyMzUsIAotICAgIDE5MSwgNTEsIDI1MywgMTk0LCA1NSwgMzcsIDI1MCwgMTY3LCA1NSwgMzcsIDI0OSwgMjI0LCAyNTQsIDE3NSwgNTUsIDM3LCAKLSAgICAyNTEsIDc1LCA1NSwgMzcsIDIzNSwgMTkxLCAyNTEsIDc1LCA1NSwgMzcsIDIxNywgNDMsIDU1LCAzNywgMjMyLCAzOCwgNTUsIAotICAgIDM3LCAxMTUsIDIzMiwgMjQyLCAzNywgNTEsIDExNSwgMjMyLCAyNDIsIDM3LCAyMTcsIDQzLCAyMjYsIDI0NCwgMzcsIDIyMCwgCi0gICAgMTc1LCAyMTksIDQ1LCAyMjYsIDI0NCwgMzcsIDE4NCwgMjE5LCA0NSwgMjI2LCAyNDQsIDM3LCAyMjAsIDE3NSwgMjE5LCAKLSAgICAyMzIsIDIyNiwgMjQ0LCAzNywgMTg0LCAyMTksIDIzMiwgMjI2LCAyNDQsIDM3LCA0NiwgMTUxLCAyMjMsIDEzMSwgNTUsIAotICAgIDM3LCAyMzUsIDE5MSwgMjUxLCA2OCwgNTUsIDM3LCA0MSwgNTUsIDM3LCAyMjIsIDk5LCA1NSwgMzcsIDIxMywgMTY3LCA0OSwgCi0gICAgMzcsIDcxLCAyMTcsIDQyLCAzNywgNTEsIDIyNiwgMjQzLCAzNywgMjQyLCAxMTQsIDE2MCwgNzcsIDM3LCAyNTQsIDE2NCwgCi0gICAgMTYwLCA3NywgMzcsIDI1LCAyMjYsIDUwLCAzNywgMjUsIDIzNCwgMTEsIDM3LCAyNSwgMjQ3LCAyMDQsIDIxNiwgMjMxLCAKLSAgICAzNywgMjUsIDIxMiwgMjEwLCAzNywgMjUxLCA2OCwgNDksIDM3LCAyNDUsIDYxLCA1LCA1NSwgMzcsIDUxLCA3MSwgMjMyLCAKLSAgICAyNDMsIDU1LCAzNywgNDIsIDI1NCwgMTksIDU1LCAzNywgMjI4LCAxNjMsIDIxNywgNDMsIDQ5LCAzNywgMjQxLCA0NCwgNDksIAotICAgIDM3LCAyNTQsIDU3LCAxMjMsIDIxMSwgMjExLCA0OSwgMzcsIDQyLCA0NiwgNzYsIDU1LCAzNywgMjE1LCAxMjQsIDc2LCA1NSwgCi0gICAgMzcsIDI0MiwgMTE4LCAyMzUsIDY2LCAzNywgNDYsIDI1MywgMTY1LCA0OSwgMzcsIDQyLCAxNTEsIDIyMywgMTMxLCA0OSwgCi0gICAgMzcsIDI0NCwgMTAwLCAzNywgMjEzLCAxNjcsIDU1LCAzNywgNDIsIDI1MywgMTY1LCA1NSwgMzcsIDQ2LCAyNTMsIDE2NSwgCi0gICAgNTUsIDM3LCA0NiwgMjUzLCAxNjUsIDI0LCAxMTQsIDI1MywgMTY1LCA1NSwgMzcsIDQ2LCAxNTEsIDIyMywgMTMxLCA0OSwgCi0gICAgMzcsIDYyLCA3OCwgMjIzLCAxNDgsIDM3LCAyNTMsIDEzMywgNTUsIDM3LCA1MSwgMjIzLCAxMzEsIDU1LCAzNywgMjEyLCAKLSAgICAyOCwgNDksIDM3LCA1MSwgMjUxLCA3NSwgNTUsIDM3LCA1MSwgMjUxLCA3NCwgMzcsIDUxLCAyMzIsIDM3LCAzNywgNTEsIAotICAgIDIzMiwgMzgsIDU1LCAzNywgNTEsIDIxNywgNDIsIDM3LCA1MSwgMjM1LCAxOTEsIDI1MSwgNzQsIDM3LCA1MSwgOTUsIDc2LCAKLSAgICA1NSwgMzcsIDcsIDMsIDEsIDYxLCAzNywgNywgMywgMSwgNzQsIDM3LCA3LCAzLCAxLCA3MiwgMzcsIDcsIDMsIDEsIDc1LCAKLSAgICAzNywgNywgMywgMSwgNjksIDM3LCA3LCAzLCAxLCAyNTAsIDI1MiwgMzcsIDcsIDMsIDEsIDI0OSwgMywgMzcsIDcsIDMsIDEsIAotICAgIDI0MiwgNDEsIDM3LCA3LCAzLCAxLCAxODMsIDM3LCA3LCAzLCAxLCAxNDksIDM3LCA3LCAzLCAxLCAyMTgsIDk5LCAzNywgNywgCi0gICAgMywgMSwgMjE1LCA3OSwgMzcsIDcsIDMsIDEsIDIxMywgMTY2LCAyNSwgNiwgMSwgMjQxLCAxODEsIDI1LCAzLCAxLCAyNDEsIAotICAgIDE4MSwgMjUsIDYsIDEsIDI1MywgMTkzLCAyMjIsIDE2MSwgMjUsIDMsIDEsIDI1MywgMTkzLCAyMjIsIDE2MSwgMjUsIDIyOCwgCi0gICAgNTQsIDUyLCAyNSwgMjMyLCAxNjMsIDIyOCwgNTQsIDUyLCAyNSwgNiwgMSwgMjI2LCAxNzgsIDI0NywgMTc5LCAyNSwgMywgCi0gICAgMSwgMjI2LCAxNzgsIDI0NywgMTc5LCAyNSwgMjEyLCAyMTAsIDI1LCAzLCAyMjMsIDIwMiwgMjMyLCAxNDEsIDIyMCwgMTA0LCAKLSAgICA4NywgMjUsIDMsIDI0NiwgNzIsIDIzMiwgMTQxLCAyMjAsIDEwNCwgODcsIDI1LCAzLCAyMjMsIDIwMiwgMjQ2LCA3MiwgCi0gICAgMjMyLCAxNDEsIDIyMCwgMTA0LCA4NywgMjUsIDIyNCwgMTU4LCA3NywgMjUsIDIxNiwgMjMxLCAyNSwgMjQ3LCAyMDQsIAotICAgIDIxNiwgMjMxLCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjE2LCAyMzEsIDI1LCAyNTQsIDgsIDIxNywgMjExLCAyNSwgNiwgMSwgCi0gICAgMjQ1LCA2NCwgMiwgMjE2LCAyMzEsIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAyMTYsIDIzMSwgMjUsIDYsIDEsIDIzNSwgMTg0LCAKLSAgICAyLCAyMTYsIDIzMSwgMjUsIDYsIDEsIDIyNywgNjYsIDIsIDIxNiwgMjMxLCAyNSwgNiwgMSwgMjE1LCAxMjksIDIsIDIxNiwgCi0gICAgMjMxLCAyNSwgNiwgMSwgMjI3LCA2OCwgMiwgMjE2LCAyMzEsIDI1LCAzLCAxLCAyMzUsIDE4NCwgMiwgMjQ3LCAyMDQsIDI0LCAKLSAgICAyMTYsIDIzMSwgMjUsIDYsIDEsIDI1NCwgNTIsIDI1LCA2LCAxLCAyNTEsIDIwMywgMjUsIDYsIDEsIDI0MywgODMsIDI1LCAKLSAgICA2LCAxLCAyNDgsIDUsIDI1LCA2LCAxLCAyNDUsIDYzLCAyNSwgNiwgMSwgMjEyLCA3OCwgMjUsIDYsIDEsIDI0NSwgMjgsIAotICAgIDI1LCA2LCAxLCAyMTcsIDEzMiwgMjUsIDYsIDEsIDIzNSwgMTgzLCAyNSwgNiwgMSwgMjM0LCAyMjcsIDI1LCA2LCAxLCAKLSAgICAyMzMsIDEyMiwgMjUsIDYsIDEsIDIzMCwgMTcyLCAyNSwgNiwgMSwgMjI4LCA5MiwgMjUsIDYsIDEsIDIxMywgMTQ1LCAyNSwgCi0gICAgNiwgMSwgMjI3LCA2NSwgMjUsIDYsIDEsIDIyNSwgMjQwLCAyNSwgNiwgMSwgMjIzLCAxOTAsIDI1LCA2LCAxLCAyMjAsIAotICAgIDEwMywgMjUsIDYsIDEsIDIxNywgMjQ4LCAyNSwgNiwgMSwgMjE1LCAxMjgsIDI1LCA2LCAxLCAyMjYsIDksIDI1LCA2LCAxLCAKLSAgICAyNTAsIDQ3LCAyNSwgNiwgMSwgMjI1LCA0NiwgMjUsIDYsIDEsIDIyNywgNjcsIDI1LCA2LCAxLCAyMzUsIDE4NCwgMiwgCi0gICAgMjQ3LCAyMDMsIDI1LCA2LCAxLCAyMTUsIDEyOSwgMiwgMjQ3LCAyMDMsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMTYsIAotICAgIDIzMSwgMjUsIDMsIDEsIDI0NSwgNjQsIDIsIDIxNiwgMjMxLCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjE2LCAyMzEsIDI1LCAKLSAgICAzLCAxLCAyMzUsIDE4NCwgMiwgMjE2LCAyMzEsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjQ3LCAyMDQsIDI0LCAyMTYsIAotICAgIDIzMSwgMjUsIDMsIDEsIDI1NCwgNTIsIDI1LCAzLCAxLCAyNTEsIDIwMywgMjUsIDMsIDEsIDI0MywgODMsIDI1LCAzLCAxLCAKLSAgICAyNDgsIDUsIDI1LCAzLCAxLCAyNDUsIDYzLCAyNSwgMywgMSwgMjEyLCA3OCwgMjUsIDMsIDEsIDI0NSwgMjgsIDI1LCAzLCAKLSAgICAxLCAyMTcsIDEzMiwgMjUsIDMsIDEsIDIzNSwgMTgzLCAyNSwgMywgMSwgMjM0LCAyMjcsIDI1LCAzLCAxLCAyMzMsIDEyMiwgCi0gICAgMjUsIDMsIDEsIDIzMCwgMTcyLCAyNSwgMywgMSwgMjI4LCA5MiwgMjUsIDMsIDEsIDIxMywgMTQ1LCAyNSwgMywgMSwgMjI3LCAKLSAgICA2NSwgMjUsIDMsIDEsIDIyNSwgMjQwLCAyNSwgMywgMSwgMjIzLCAxOTAsIDI1LCAzLCAxLCA0MCwgMjIwLCAxMDMsIDI1LCAKLSAgICAzLCAxLCAyMjAsIDEwMywgMjUsIDMsIDEsIDIxNywgMjQ4LCAyNSwgMywgMSwgMjE1LCAxMjgsIDI1LCAzLCAxLCAyMjYsIDksIAotICAgIDI1LCAzLCAxLCAyNTAsIDQ3LCAyNSwgMywgMSwgMjI1LCA0NiwgMjUsIDMsIDEsIDIyNywgNjcsIDI1LCAzLCAxLCAyMzUsIAotICAgIDE4NCwgMiwgMjQ3LCAyMDMsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjQ3LCAyMDMsIDI1LCAzLCAxLCAyMjcsIDY2LCAyLCAKLSAgICAyMTYsIDIzMSwgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAyMTYsIDIzMSwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIxNiwgCi0gICAgMjMxLCAyNSwgNiwgMjM0LCAyNTEsIDg3LCAyNSwgMjUxLCAyMDQsIDg3LCAyNSwgMjE3LCAxMzMsIDg3LCAyNSwgMjE1LCAKLSAgICAxMjksIDIsIDI0MSwgMzgsIDg3LCAyNSwgMjE1LCAxMjksIDIsIDI1NCwgMTY0LCAyNCwgMjQxLCAzOCwgODcsIDI1LCAyMTUsIAotICAgIDEyOSwgMiwgMjQ3LCAyMTAsIDI0LCAyNDEsIDM4LCA4NywgMjUsIDIyNiwgMTAsIDg3LCAyNSwgMjI1LCAyNDEsIDg3LCAyNSwgCi0gICAgMjM0LCAyNTEsIDg3LCAyNSwgMSwgMjUzLCAxOTMsIDIzNCwgMTUsIDI1LCAzLCAxLCAyNTMsIDE5MywgMjM0LCAxNSwgMjUsIAotICAgIDEsIDIxOSwgNzcsIDI1LCAzLCAxLCAyMTksIDc3LCAyNSwgMSwgMjQ3LCAxNzksIDI1LCAzLCAxLCAyNDcsIDE3OSwgMjUsIAotICAgIDEsIDIzNCwgMTUsIDI1LCAzLCAxLCAyMzQsIDE1LCAyNSwgMSwgMjIyLCAxNjEsIDI1LCAzLCAxLCAyMjIsIDE2MSwgNzksIAotICAgIDYsIDEsIDIyMCwgMjM1LCA3OSwgMywgMSwgMjIwLCAyMzUsIDc5LCA2LCAxLCAyNDQsIDEwOSwgNzksIDMsIDEsIDI0NCwgCi0gICAgMTA5LCA3OSwgNiwgMSwgMjM0LCAxMjMsIDc5LCAzLCAxLCAyMzQsIDEyMywgNzksIDYsIDEsIDI0MSwgMzIsIDc5LCAzLCAxLCAKLSAgICAyNDEsIDMyLCA3OSwgNiwgMSwgMjQzLCA3OCwgNzksIDMsIDEsIDI0MywgNzgsIDc5LCA2LCAxLCAyMjAsIDIwMiwgNzksIDMsIAotICAgIDEsIDIyMCwgMjAyLCA3OSwgNiwgMSwgMjQ4LCAyMCwgNzksIDMsIDEsIDI0OCwgMjAsIDI1LCAyMzQsIDIyOCwgODcsIDI1LCAKLSAgICAyMjMsIDE5MSwgODcsIDI1LCAyMzIsIDE0MSwgMjIwLCAxMDQsIDg3LCAyNSwgMSwgMjEyLCAyMTUsIDI1LCA2LCAyMTcsIAotICAgIDEzMywgODcsIDI1LCAyMzIsIDE0MSwgMjQ1LCA2NCwgODcsIDI1LCAyMjMsIDIwMiwgMjMyLCAxNDEsIDI0NSwgNjQsIDg3LCAKLSAgICAyNSwgNiwgMSwgMjIwLCAxODcsIDI1LCAzLCAxLCAyMjAsIDE4NywgMjUsIDYsIDIzMiwgMTQxLCAyMjAsIDEwNCwgODcsIAotICAgIDI1LCA2LCAxLCAyMjIsIDE1OSwgMjUsIDMsIDEsIDIyMiwgMTU5LCAyNSwgMjIzLCAxOTEsIDIsIDIxOSwgNDUsIDg3LCAyNSwgCi0gICAgNiwgMjIzLCAyMDIsIDIzMiwgMTQxLCAyMjAsIDEwNCwgODcsIDI1LCA2LCAyNDYsIDcyLCAyMzIsIDE0MSwgMjIwLCAxMDQsIAotICAgIDg3LCAyNSwgNiwgMjIzLCAyMDIsIDI0NiwgNzIsIDIzMiwgMTQxLCAyMjAsIDEwNCwgODcsIDMzLCA2LCAxLCAyMzYsIDU2LCAKLSAgICAyLCAyNDIsIDExMywgMzMsIDYsIDEsIDIzNSwgMTg3LCAzMywgNiwgMSwgMjQ3LCAxMTQsIDMzLCA2LCAxLCAyNDIsIDE2MywgCi0gICAgMzMsIDYsIDEsIDIxNSwgMTcyLCAyMzYsIDU1LCAzMywgNiwgMSwgMjQ1LCAyNDcsIDMzLCA2LCAxLCAyNTEsIDUsIDcyLCAKLSAgICAzMywgNiwgMSwgMjEyLCAyNTUsIDMzLCA2LCAxLCAyMzUsIDEyNywgMzMsIDYsIDEsIDIzMiwgMjE2LCAzMywgNiwgMSwgCi0gICAgMjI5LCA5LCAzMywgNiwgMSwgMjE2LCAxMzIsIDMzLCA2LCAxLCAyMzQsIDU3LCAzMywgNiwgMSwgMjQwLCAxNDYsIDIsIAotICAgIDI0MiwgMTEzLCAzMywgNiwgMSwgMjIwLCAxNzUsIDY5LCAzMywgNiwgMSwgMjQ1LCAyNDMsIDMzLCA2LCAxLCA2MSwgMzMsIAotICAgIDYsIDEsIDI1MSwgMjUxLCAzMywgNiwgMSwgMjE0LCAyMzIsIDMzLCA2LCAxLCAyNDIsIDIxMiwgMzMsIDYsIDEsIDI0OCwgCi0gICAgNDEsIDMzLCA2LCAxLCAyMzYsIDU1LCAzMywgNiwgMSwgMjEyLCA2NywgMzMsIDYsIDEsIDIxMiwgODcsIDMzLCA2LCAxLCAKLSAgICA3MiwgMzMsIDYsIDEsIDIyMCwgMTc1LCA3MiwgMzMsIDYsIDEsIDE4MSwgMzMsIDYsIDEsIDI0NSwgMTMxLCAzMywgNiwgMSwgCi0gICAgMjQ1LCAxMTcsIDMzLCA2LCAxLCAyNDUsIDEwOCwgMzMsIDYsIDEsIDc1LCAzMywgNiwgMSwgMjI2LCA5NiwgMzMsIDYsIDEsIAotICAgIDI0NSwgNTUsIDMzLCA2LCAxLCAyNDUsIDQ1LCAzMywgNiwgMSwgMjE3LCAyMjksIDMzLCA2LCAxLCA2OSwgMzMsIDYsIDEsIAotICAgIDI0NSwgMTU5LCAzMywgNiwgMSwgMTU5LCAzMywgNiwgMSwgMjE2LCAxMzYsIDMzLCA2LCAxLCAyNTAsIDY3LCAzMywgNiwgMSwgCi0gICAgMjIxLCAyNCwgMzMsIDYsIDEsIDIyMCwgMjQ1LCAzMywgNiwgMSwgMjQxLCAyNDIsIDUyLCAzMywgNiwgMSwgMjEzLCAxOCwgCi0gICAgMzMsIDYsIDEsIDIxOSwgMjM2LCA1MiwgMzMsIDYsIDEsIDc0LCAzMywgNiwgMSwgMjEyLCAyMDMsIDMzLCA2LCAxLCAxODYsIAotICAgIDMzLCAzLCAxLCA2MSwgMzMsIDMsIDEsIDI1MSwgMjUxLCAzMywgMywgMSwgMjE0LCAyMzIsIDMzLCAzLCAxLCAyNDIsIDIxMiwgCi0gICAgMzMsIDMsIDEsIDI0OCwgNDEsIDMzLCAzLCAxLCAyMzYsIDU1LCAzMywgMywgMSwgMjEyLCA2NywgMzMsIDMsIDEsIDIxMiwgCi0gICAgODcsIDMzLCAzLCAxLCA3MiwgMzMsIDMsIDEsIDIyMCwgMTc1LCA3MiwgMzMsIDMsIDEsIDE4MSwgMzMsIDMsIDEsIDI0NSwgCi0gICAgMTMxLCAzMywgMywgMSwgMjQ1LCAxMTcsIDMzLCAzLCAxLCAyNDUsIDEwOCwgMzMsIDMsIDEsIDc1LCAzMywgMywgMSwgMjI2LCAKLSAgICA5NiwgMzMsIDMsIDEsIDI0NSwgNTUsIDMzLCAzLCAxLCAyNDUsIDQ1LCAzMywgMywgMSwgMjE3LCAyMjksIDMzLCAzLCAxLCAKLSAgICA2OSwgMzMsIDMsIDEsIDI0NSwgMTU5LCAzMywgMywgMSwgMTU5LCAzMywgMywgMSwgMjE2LCAxMzYsIDMzLCAzLCAxLCAyNTAsIAotICAgIDY3LCAzMywgMywgMSwgMjIxLCAyNCwgMzMsIDMsIDEsIDIyMCwgMjQ1LCAzMywgMywgMSwgMjQxLCAyNDIsIDUyLCAzMywgMywgCi0gICAgMSwgMjEzLCAxOCwgMzMsIDMsIDEsIDIxOSwgMjM2LCA1MiwgMzMsIDMsIDEsIDc0LCAzMywgMywgMSwgMjEyLCAyMDMsIDMzLCAKLSAgICAzLCAxLCAxODYsIDMzLCAzLCAxLCAyMzYsIDU2LCAyLCAyNDIsIDExMywgMzMsIDMsIDEsIDIzNSwgMTg3LCAzMywgMywgMSwgCi0gICAgMjQ3LCAxMTQsIDMzLCAzLCAxLCAyNDIsIDE2MywgMzMsIDMsIDEsIDIxNSwgMTcyLCAyMzYsIDU1LCAzMywgMywgMSwgMjQ1LCAKLSAgICAyNDcsIDMzLCAzLCAxLCAyNTEsIDUsIDcyLCAzMywgMywgMSwgMjEyLCAyNTUsIDMzLCAzLCAxLCAyMzUsIDEyNywgMzMsIDMsIAotICAgIDEsIDIzMiwgMjE2LCAzMywgMywgMSwgMjI5LCA5LCAzMywgMywgMSwgMjE2LCAxMzIsIDMzLCAzLCAxLCAyMzQsIDU3LCAzMywgCi0gICAgMywgMSwgMjQwLCAxNDYsIDIsIDI0MiwgMTEzLCAzMywgMywgMSwgMjIwLCAxNzUsIDY5LCAzMywgMywgMSwgMjQ1LCAyNDMsIAotICAgIDMzLCA2LCAxLCAyMjcsIDY3LCAzMywgMywgMSwgMjI3LCA2NywgMzMsIDYsIDEsIDIxMywgNDksIDMzLCAzLCAxLCAyMTMsIAotICAgIDQ5LCAzMywgNiwgMSwgMjM1LCAxODEsIDc0LCAzMywgMywgMSwgMjM1LCAxODEsIDc0LCAzMywgNiwgMSwgMjMyLCAyMjEsIAotICAgIDIxMiwgMTc0LCAzMywgMywgMSwgMjMyLCAyMjEsIDIxMiwgMTc0LCAzMywgNiwgMSwgMjM1LCAxODEsIDIzMiwgMjIxLCAKLSAgICAyMTIsIDE3NCwgMzMsIDMsIDEsIDIzNSwgMTgxLCAyMzIsIDIyMSwgMjEyLCAxNzQsIDMzLCA2LCAxLCAyNTEsIDE3MiwgCi0gICAgMjEyLCAxNzQsIDMzLCAzLCAxLCAyNTEsIDE3MiwgMjEyLCAxNzQsIDMzLCA2LCAxLCAyMzUsIDE4MSwgMjUxLCAxNzIsIAotICAgIDIxMiwgMTc0LCAzMywgMywgMSwgMjM1LCAxODEsIDI1MSwgMTcyLCAyMTIsIDE3NCwgMzMsIDYsIDEsIDIzMywgMjQyLCAzMywgCi0gICAgMywgMSwgMjMzLCAyNDIsIDMzLCA2LCAxLCAyMjUsIDQ2LCAzMywgMywgMSwgMjI1LCA0NiwgMzMsIDYsIDEsIDI0NCwgNTEsIAotICAgIDMzLCAzLCAxLCAyNDQsIDUxLCAzMywgNiwgMSwgMjM1LCAxNDQsIDMzLCAzLCAxLCAyMzUsIDE0NCwgMzMsIDYsIDEsIDIzNSwgCi0gICAgMTQ1LCAyLCA1MSwgMjQyLCAxMTQsIDI1NCwgMTc0LCAzMywgMywgMSwgMjM1LCAxNDUsIDIsIDUxLCAyNDIsIDExNCwgMjU0LCAKLSAgICAxNzQsIDMzLCA2LCAxLCAyMTUsIDE3NSwgMzMsIDMsIDEsIDIxNSwgMTc1LCAzMywgNiwgMSwgMjIzLCA4NywgMjI3LCA2NywgCi0gICAgMzMsIDMsIDEsIDIyMywgODcsIDIyNywgNjcsIDMzLCA2LCAxLCAyMjcsIDY4LCAyLCAyMTcsIDE4LCAzMywgMywgMSwgMjI3LCAKLSAgICA2OCwgMiwgMjE3LCAxOCwgMzMsIDYsIDEsIDIyNywgOCwgMzMsIDMsIDEsIDIyNywgOCwgMzMsIDYsIDEsIDIzNCwgMTUsIAotICAgIDMzLCAzLCAxLCAyMzQsIDE1LCAzMywgMjE3LCA5OSwgNTIsIDM3LCAzMywgMjE3LCAxOCwgMzcsIDMzLCAyMjYsIDE5MiwgCi0gICAgMzcsIDMzLCAyMDcsIDIyNSwgMTUyLCAzNywgMzMsIDIyNSwgNDAsIDIyNSwgMTUyLCAzNywgMzMsIDIyNSwgMTM3LCAzNywgCi0gICAgMzMsIDI0MCwgMjAxLCAyMTcsIDk5LCA1MiwgMzcsIDMzLCAyMzEsIDQsIDUyLCAzMywgNiwgMSwgMjIwLCAxNzUsIDI0MCwgCi0gICAgMTQ2LCAyLCAyMTgsIDI3LCAzMywgMywgMSwgMjIwLCAxNzUsIDI0MCwgMTQ2LCAyLCAyMTgsIDI3LCAzMywgNiwgMSwgMjIxLCAKLSAgICA2NiwgNTIsIDMzLCAzLCAxLCAyMjEsIDY2LCA1MiwgMzMsIDYsIDEsIDI0NSwgNTYsIDIsIDIxNywgNjgsIDMzLCAzLCAxLCAKLSAgICAyNDUsIDU2LCAyLCAyMTcsIDY4LCAzMywgNiwgMSwgMjQyLCAyMTMsIDIsIDIxNSwgMTI3LCAzMywgMywgMSwgMjQyLCAyMTMsIAotICAgIDIsIDIxNSwgMTI3LCAzMywgNiwgMSwgMjQyLCAyMTMsIDIsIDkwLCAzMywgMywgMSwgMjQyLCAyMTMsIDIsIDkwLCAzMywgNiwgCi0gICAgMSwgMjQyLCAyMTMsIDIsIDIzMSwgMzcsIDEwMSwgMzMsIDMsIDEsIDI0MiwgMjEzLCAyLCAyMzEsIDM3LCAxMDEsIDMzLCA2LCAKLSAgICAxLCAyMTIsIDY4LCAyLCAyNDcsIDI0NiwgMzMsIDMsIDEsIDIxMiwgNjgsIDIsIDI0NywgMjQ2LCAzMywgNiwgMSwgMjEyLCAKLSAgICA4OCwgMiwgMjQ3LCAyNDYsIDMzLCAzLCAxLCAyMTIsIDg4LCAyLCAyNDcsIDI0NiwgMzMsIDYsIDEsIDIzNSwgMTcsIDIsIAotICAgIDI0NywgMjQ2LCAzMywgMywgMSwgMjM1LCAxNywgMiwgMjQ3LCAyNDYsIDMzLCA2LCAxLCAyMzUsIDE3LCAyLCA3MSwgOTAsIAotICAgIDMzLCAzLCAxLCAyMzUsIDE3LCAyLCA3MSwgOTAsIDMzLCA2LCAxLCAyMzUsIDE3LCAyLCA5MCwgMzMsIDMsIDEsIDIzNSwgCi0gICAgMTcsIDIsIDkwLCAzMywgNiwgMSwgMjUyLCA0NCwgMTgxLCAzMywgMywgMSwgMjUyLCA0NCwgMTgxLCAzMywgNiwgMSwgMjQ1LCAKLSAgICAxMDksIDIsIDI0NywgMjQ2LCAzMywgMywgMSwgMjQ1LCAxMDksIDIsIDI0NywgMjQ2LCAzMywgNiwgMjYsIDI0NSwgMTA5LCAKLSAgICAyNDIsIDIxMiwgMzMsIDMsIDI2LCAyNDUsIDEwOSwgMjQyLCAyMTIsIDMzLCA2LCAxLCAyMjYsIDk3LCAyLCAyMzEsIDM3LCAKLSAgICAxMDEsIDMzLCAzLCAxLCAyMjYsIDk3LCAyLCAyMzEsIDM3LCAxMDEsIDMzLCA2LCAxLCAyNTQsIDE4MCwgMTU5LCAzMywgMywgCi0gICAgMSwgMjU0LCAxODAsIDE1OSwgMzMsIDYsIDEsIDI0NSwgNDYsIDIsIDI0NywgMjQ2LCAzMywgMywgMSwgMjQ1LCA0NiwgMiwgCi0gICAgMjQ3LCAyNDYsIDMzLCA2LCAxLCAyMTcsIDIzMCwgMiwgMjQ3LCAyNDYsIDMzLCAzLCAxLCAyMTcsIDIzMCwgMiwgMjQ3LCAKLSAgICAyNDYsIDMzLCA2LCAxLCAyMTksIDYxLCA2OSwgMzMsIDMsIDEsIDIxOSwgNjEsIDY5LCAzMywgNiwgMSwgMjE5LCA2MSwgCi0gICAgMTExLCAyLCA5MCwgMzMsIDMsIDEsIDIxOSwgNjEsIDExMSwgMiwgOTAsIDMzLCA2LCAxLCAyNDIsIDMwLCAyLCAyNDcsIAotICAgIDI0NiwgMzMsIDMsIDEsIDI0MiwgMzAsIDIsIDI0NywgMjQ2LCAzMywgNiwgMjYsIDIxNywgMjMwLCAyMTYsIDEzNiwgMzMsIAotICAgIDMsIDI2LCAyMTcsIDIzMCwgMjE2LCAxMzYsIDMzLCA2LCAxLCAyNTAsIDY4LCAyLCAyNDcsIDI0NiwgMzMsIDMsIDEsIDI1MCwgCi0gICAgNjgsIDIsIDI0NywgMjQ2LCAzMywgNiwgMSwgMjUwLCA2OCwgMiwgNzEsIDkwLCAzMywgMywgMSwgMjUwLCA2OCwgMiwgNzEsIAotICAgIDkwLCAzMywgNiwgMSwgMjIwLCAyMTMsIDMzLCAzLCAxLCAyMjAsIDIxMywgMzMsIDYsIDEsIDI1NCwgMTgwLCAyNTAsIDY3LCAKLSAgICAzMywgMywgMSwgMjU0LCAxODAsIDI1MCwgNjcsIDMzLCA2LCAxLCAyNTQsIDE4MCwgMjUwLCA2OCwgMiwgMjQ3LCAyNDYsIAotICAgIDMzLCAzLCAxLCAyNTQsIDE4MCwgMjUwLCA2OCwgMiwgMjQ3LCAyNDYsIDMzLCAxLCAyMjYsIDE4NSwgMzMsIDYsIDEsIDIxMiwgCi0gICAgNjgsIDIsIDI1MSwgNzQsIDMzLCAzLCAxLCAyMTIsIDY4LCAyLCAyNTEsIDc0LCAzMywgNiwgMSwgMjM1LCAxNywgMiwgMTAxLCAKLSAgICAzMywgMywgMSwgMjM1LCAxNywgMiwgMTAxLCAzMywgNiwgMSwgMjQ1LCAxMzIsIDIsIDIxOCwgMjcsIDMzLCAzLCAxLCAyNDUsIAotICAgIDEzMiwgMiwgMjE4LCAyNywgMzMsIDYsIDEsIDI0NSwgMTA5LCAyLCAxMDEsIDMzLCAzLCAxLCAyNDUsIDEwOSwgMiwgMTAxLCAKLSAgICAzMywgNiwgMSwgMjQ1LCAxMDksIDIsIDIxOCwgMjcsIDMzLCAzLCAxLCAyNDUsIDEwOSwgMiwgMjE4LCAyNywgMzMsIDYsIDEsIAotICAgIDIzNCwgMTMzLCAyNTAsIDY3LCAzMywgMywgMSwgMjM0LCAxMzMsIDI1MCwgNjcsIDMzLCA2LCAxLCAyNDUsIDExOCwgMiwgCi0gICAgMjE4LCAyNywgMzMsIDMsIDEsIDI0NSwgMTE4LCAyLCAyMTgsIDI3LCAzMywgMywgMSwgMjI2LCAxODUsIDMzLCA2LCAxLCAKLSAgICAxMTgsIDIsIDI1MSwgNzQsIDMzLCAzLCAxLCAxMTgsIDIsIDI1MSwgNzQsIDMzLCA2LCAxLCAxMTgsIDIsIDI0NywgMjA5LCAKLSAgICAzMywgMywgMSwgMTE4LCAyLCAyNDcsIDIwOSwgMzMsIDYsIDI2LCAxMTgsIDIzNiwgNTUsIDMzLCAzLCAyNiwgMTE4LCAyMzYsIAotICAgIDU1LCAzMywgNiwgMSwgMjM2LCA1NiwgMiwgMjUxLCA3NCwgMzMsIDMsIDEsIDIzNiwgNTYsIDIsIDI1MSwgNzQsIDMzLCA2LCAKLSAgICAxLCAyMjIsIDExMywgMzMsIDMsIDEsIDIyMiwgMTEzLCAzMywgNiwgMSwgMjIyLCAxMTQsIDIsIDI0NywgMjA5LCAzMywgMywgCi0gICAgMSwgMjIyLCAxMTQsIDIsIDI0NywgMjA5LCAzMywgNiwgMSwgMjEyLCA2OCwgMiwgMjQ3LCAyMDksIDMzLCAzLCAxLCAyMTIsIAotICAgIDY4LCAyLCAyNDcsIDIwOSwgMzMsIDYsIDEsIDIxMiwgODgsIDIsIDI0NywgMjA5LCAzMywgMywgMSwgMjEyLCA4OCwgMiwgCi0gICAgMjQ3LCAyMDksIDMzLCA2LCAxLCAyNTQsIDE4MCwgMjQ1LCAyNDcsIDMzLCAzLCAxLCAyNTQsIDE4MCwgMjQ1LCAyNDcsIDMzLCAKLSAgICA2LCAxLCAyNDAsIDE0NiwgMiwgMjMyLCAzNywgMzMsIDMsIDEsIDI0MCwgMTQ2LCAyLCAyMzIsIDM3LCAzMywgNiwgMSwgCi0gICAgMjQwLCAxNDYsIDIsIDI0NywgMjA5LCAzMywgMywgMSwgMjQwLCAxNDYsIDIsIDI0NywgMjA5LCAzMywgNiwgMSwgMTU3LCAyLCAKLSAgICAyNDcsIDIwOSwgMzMsIDMsIDEsIDE1NywgMiwgMjQ3LCAyMDksIDMzLCA2LCAxLCAyNTIsIDU0LCA3NSwgMzMsIDMsIDEsIAotICAgIDI1MiwgNTQsIDc1LCAzMywgNiwgMSwgMjUyLCA1NCwgMTU3LCAyLCAyNDcsIDIwOSwgMzMsIDMsIDEsIDI1MiwgNTQsIDE1NywgCi0gICAgMiwgMjQ3LCAyMDksIDMzLCA2LCAxLCAxOTEsIDIsIDI0NywgMjA5LCAzMywgMywgMSwgMTkxLCAyLCAyNDcsIDIwOSwgMzMsIAotICAgIDYsIDEsIDExMSwgMiwgMjMyLCAzNywgMzMsIDMsIDEsIDExMSwgMiwgMjMyLCAzNywgMzMsIDYsIDEsIDExMSwgMiwgMjQ3LCAKLSAgICAyMDksIDMzLCAzLCAxLCAxMTEsIDIsIDI0NywgMjA5LCAzMywgNiwgMSwgMTExLCAyLCA1MSwgMTc5LCAzMywgMywgMSwgCi0gICAgMTExLCAyLCA1MSwgMTc5LCAzMywgNiwgMSwgMjUwLCA2OCwgMiwgMjQ3LCAyMDksIDMzLCAzLCAxLCAyNTAsIDY4LCAyLCAKLSAgICAyNDcsIDIwOSwgMzMsIDYsIDEsIDI0MiwgMjEzLCAyLCAyNDcsIDI0NiwgMzMsIDMsIDEsIDI0MiwgMjEzLCAyLCAyNDcsIAotICAgIDI0NiwgMzMsIDYsIDEsIDIxMywgMTksIDIsIDI0NywgMjA5LCAzMywgMywgMSwgMjEzLCAxOSwgMiwgMjQ3LCAyMDksIDMzLCAKLSAgICA2LCAxLCAyNDIsIDIxMywgMiwgMjE5LCA0NSwgMjQsIDEwMSwgMzMsIDMsIDEsIDI0MiwgMjEzLCAyLCAyMTksIDQ1LCAyNCwgCi0gICAgMTAxLCAzMywgNiwgMSwgMjQyLCAzMCwgMiwgMTAxLCAzMywgMywgMSwgMjQyLCAzMCwgMiwgMTAxLCAzMywgNiwgMSwgMjQyLCAKLSAgICAzMCwgMiwgOTAsIDMzLCAzLCAxLCAyNDIsIDMwLCAyLCA5MCwgMzMsIDYsIDEsIDIzNCwgMjMsIDI0OCwgNDEsIDMzLCAzLCAKLSAgICAxLCAyMzQsIDIzLCAyNDgsIDQxLCAzMywgNiwgMSwgMjM0LCAyMywgMjQ3LCAxMTQsIDMzLCAzLCAxLCAyMzQsIDIzLCAyNDcsIAotICAgIDExNCwgMzMsIDYsIDEsIDIzNCwgMjMsIDIxMiwgMjAsIDMzLCAzLCAxLCAyMzQsIDIzLCAyMTIsIDIwLCAzMywgNiwgMSwgCi0gICAgMjM0LCAyMywgMjQ1LCAyNDEsIDMzLCAzLCAxLCAyMzQsIDIzLCAyNDUsIDI0MSwgMzMsIDYsIDEsIDIzNCwgMjMsIDIzMiwgCi0gICAgMjE2LCAzMywgMywgMSwgMjM0LCAyMywgMjMyLCAyMTYsIDMzLCA2LCAxLCAyMzQsIDIzLCAyMjksIDksIDMzLCAzLCAxLCAKLSAgICAyMzQsIDIzLCAyMjksIDksIDMzLCA2LCAxLCAyMzQsIDIzLCAyMjAsIDM3LCAzMywgMywgMSwgMjM0LCAyMywgMjIwLCAzNywgCi0gICAgMzMsIDYsIDEsIDIzNCwgMjMsIDIxNywgMTMsIDMzLCAzLCAxLCAyMzQsIDIzLCAyMTcsIDEzLCAzMywgNiwgMSwgMjIzLCAKLSAgICAyMDIsIDIxMiwgODcsIDMzLCAzLCAxLCAyMjMsIDIwMiwgMjEyLCA4NywgMzMsIDYsIDEsIDI0NSwgMTMyLCAyLCAxMDEsIAotICAgIDMzLCAzLCAxLCAyNDUsIDEzMiwgMiwgMTAxLCAzMywgNiwgMSwgMjMzLCAyNSwgMzMsIDMsIDEsIDIzMywgMjUsIDMzLCA2LCAKLSAgICAxLCAyMjMsIDE5MiwgMzMsIDMsIDEsIDIyMywgMTkyLCAzMywgNiwgMSwgMjEzLCA4MCwgMzMsIDMsIDEsIDIxMywgODAsIAotICAgIDMzLCA2LCAxLCAyMjQsIDIzMiwgMzMsIDMsIDEsIDIyNCwgMjMyLCAzMywgNiwgMSwgMjE0LCA2LCAzMywgMywgMSwgMjE0LCAKLSAgICA2LCAzMywgNiwgMSwgMjU0LCA3NSwgMTgxLCAzMywgMywgMSwgMjU0LCA3NSwgMTgxLCAzMywgNiwgMSwgMjQ1LCAxMzIsIDIsIAotICAgIDIzMSwgMzcsIDEwMSwgMzMsIDMsIDEsIDI0NSwgMTMyLCAyLCAyMzEsIDM3LCAxMDEsIDMzLCA2LCAxLCAyNDUsIDEwOSwgMiwgCi0gICAgMjMxLCAzNywgMTAxLCAzMywgMywgMSwgMjQ1LCAxMDksIDIsIDIzMSwgMzcsIDEwMSwgMzMsIDYsIDEsIDIyNiwgOTcsIDIsIAotICAgIDI0NywgMjQ2LCAzMywgMywgMSwgMjI2LCA5NywgMiwgMjQ3LCAyNDYsIDMzLCA2LCAxLCAyMjAsIDIxNCwgMiwgMjQ3LCAKLSAgICAyNDYsIDMzLCAzLCAxLCAyMjAsIDIxNCwgMiwgMjQ3LCAyNDYsIDE0MSwgNiwgMSwgMjUzLCA4MCwgMTQxLCA2LCAxLCAyNTEsIAotICAgIDIxNiwgMTQxLCA2LCAxLCAyNDIsIDE3OSwgMTQxLCA2LCAxLCAyNDgsIDE2NCwgMTQxLCA2LCAxLCAyNDUsIDE2OSwgMTQxLCAKLSAgICA2LCAxLCAyMTIsIDEwOSwgMTQxLCA2LCAxLCAyNDUsIDE1NCwgMTQxLCA2LCAxLCAyNDUsIDMwLCAxNDEsIDYsIDEsIDEwOCwgCi0gICAgMTQxLCA2LCAxLCAyMTIsIDY3LCAxNDEsIDYsIDEsIDIzNSwgMjI0LCAxNDEsIDYsIDEsIDIzMiwgMjE5LCAxNDEsIDYsIDEsIAotICAgIDIxMywgMTQ4LCAxNDEsIDYsIDEsIDI1MCwgMjE5LCAxNDEsIDYsIDEsIDIzNCwgMTcxLCAxNDEsIDYsIDEsIDI0MSwgNTQsIAotICAgIDE0MSwgNiwgMSwgMjM1LCAxMzksIDE0MSwgNiwgMSwgMjQyLCAyMjIsIDE0MSwgNiwgMSwgMjUwLCA2MiwgMTQxLCA2LCAxLCAKLSAgICAyMzEsIDEyMiwgMTQxLCA2LCAxLCAyMTIsIDI1NSwgMTQxLCA2LCAxLCAyMjgsIDE1MCwgMTQxLCA2LCAxLCAyMjEsIDI0LCAKLSAgICAxNDEsIDYsIDEsIDIxNCwgMTE5LCAxNDEsIDYsIDEsIDI1MCwgOTIsIDE0MSwgNiwgMSwgMjI2LCA4MCwgMTQxLCA2LCAxLCAKLSAgICAyMzUsIDExMiwgMTQxLCA2LCAxLCAyMDMsIDE0MSwgNiwgMSwgMjIyLCA4MCwgMTQxLCA2LCAxLCAyMTQsIDE1NiwgMTQxLCAKLSAgICA2LCAxLCAyMTcsIDE1LCAxNDEsIDYsIDEsIDIyMywgMjQ1LCAxNDEsIDYsIDEsIDI0OSwgMTc1LCAxNDEsIDYsIDEsIDIxMiwgCi0gICAgMjQwLCAxNDEsIDYsIDEsIDIyNSwgMTc4LCAxNDEsIDYsIDEsIDIzNCwgMTgyLCAxNDEsIDYsIDEsIDIyNywgODgsIDE0MSwgCi0gICAgNiwgMSwgMjQ0LCAxMTEsIDE0MSwgNTksIDEsIDQyLCAxNTEsIDIyMywgMTMwLCAxNDEsIDI1MywgMjI2LCAxNDEsIDI0NSwgCi0gICAgMTEyLCA3NywgMTQxLCAyNDQsIDI1NCwgNzcsIDE0MSwgMjQ5LCAxNTcsIDE0MSwgMjI0LCAxNTgsIDc3LCAxNDEsIDI1NCwgCi0gICAgMTgxLCA3NywgMTQxLCAzLCAxLCAyNTMsIDgwLCAxNDEsIDMsIDEsIDI1MSwgMjE2LCAxNDEsIDMsIDEsIDI0MiwgMTc5LCAKLSAgICAxNDEsIDMsIDEsIDI0OCwgMTY0LCAxNDEsIDMsIDEsIDI0NSwgMTY5LCAxNDEsIDMsIDEsIDIxMiwgMTA5LCAxNDEsIDMsIDEsIAotICAgIDI0NSwgMTU0LCAxNDEsIDMsIDEsIDI0NSwgMzAsIDE0MSwgMywgMSwgMTA4LCAxNDEsIDMsIDEsIDIxMiwgNjcsIDE0MSwgMywgCi0gICAgMSwgMjM1LCAyMjQsIDE0MSwgMywgMSwgMjMyLCAyMTksIDE0MSwgMywgMSwgMjEzLCAxNDgsIDE0MSwgMywgMSwgMjUwLCAKLSAgICAyMTksIDE0MSwgMywgMSwgMjM0LCAxNzEsIDE0MSwgMywgMSwgMjQxLCA1NCwgMTQxLCAzLCAxLCAyMzUsIDEzOSwgMTQxLCAKLSAgICAzLCAxLCAyNDIsIDIyMiwgMTQxLCAzLCAxLCAyNTAsIDYyLCAxNDEsIDMsIDEsIDIzMSwgMTIyLCAxNDEsIDMsIDEsIDIxMiwgCi0gICAgMjU1LCAxNDEsIDMsIDEsIDIyOCwgMTUwLCAxNDEsIDMsIDEsIDIyMSwgMjQsIDE0MSwgMywgMSwgMjE0LCAxMTksIDE0MSwgCi0gICAgMywgMSwgMjUwLCA5MiwgMTQxLCAzLCAxLCAyMjYsIDgwLCAxNDEsIDMsIDEsIDIzNSwgMTEyLCAxNDEsIDMsIDEsIDIwMywgCi0gICAgMTQxLCAzLCAxLCAyMjIsIDgwLCAxNDEsIDMsIDEsIDIxNCwgMTU2LCAxNDEsIDMsIDEsIDIxNywgMTUsIDE0MSwgMywgMSwgCi0gICAgMjIzLCAyNDUsIDE0MSwgMywgMSwgMjQ5LCAxNzUsIDE0MSwgMywgMSwgMjEyLCAyNDAsIDE0MSwgMywgMSwgMjI1LCAxNzgsIAotICAgIDE0MSwgMywgMSwgMjM0LCAxODIsIDE0MSwgMywgMSwgMjI3LCA4OCwgMTQxLCAzLCAxLCAyNDQsIDExMSwgMTQxLCAzLCAyNiwgCi0gICAgMjQ1LCAxNzAsIDIxMiwgMjQwLCAxNDEsIDI0MywgMjAwLCAyMTksIDY5LCAxNDEsIDI0MCwgMTYwLCA5MywgMjU0LCAxNzUsIAotICAgIDI0NSwgMjMsIDkzLCAyNTQsIDE3NSwgMjIyLCA4MSwgOTMsIDI1NCwgMTc1LCAyMjEsIDExLCA5MywgMjU0LCAxNzUsIDIxMiwgCi0gICAgOTcsIDIyNCwgMjE1LCA5MywgMjU0LCAxNzUsIDIxMiwgOTcsIDI0MywgMTAwLCA5MywgMjU0LCAxNzUsIDIxNywgMjgsIDkzLCAKLSAgICAyNTQsIDE3NSwgMjIzLCAyMDAsIDkzLCAyNTQsIDE3NSwgMjEyLCA5NiwgOTMsIDI1NCwgMTc1LCAyMjYsIDExOCwgOTMsIAotICAgIDI1NCwgMTc1LCAyMTMsIDExLCA5MywgMjU0LCAxNzUsIDIxNywgMTY3LCA5MywgMjU0LCAxNzUsIDI0MywgMTcsIDkzLCAKLSAgICAyNTQsIDE3NSwgMjQzLCAxOCwgMjMwLCAxMzksIDkzLCAyNTQsIDE3NSwgMjQzLCAxNSwgOTMsIDI1NCwgMTc1LCAyMjQsIAotICAgIDIxNiwgMjI2LCAxNDQsIDkzLCAyNTQsIDE3NSwgMjE3LCAyMDYsIDI0MywgMzIsIDkzLCAyNTQsIDE3NSwgMjI2LCAxMDAsIAotICAgIDkzLCAyNTQsIDE3NSwgMjUzLCAxMTYsIDI0MiwgMjIsIDkzLCAyNTQsIDE3NSwgMjMwLCAxNDksIDkzLCAyNTQsIDE3NSwgCi0gICAgMjMyLCAxMywgOTMsIDI1NCwgMTc1LCAyMzEsIDExMywgOTMsIDI1NCwgMTc1LCAyMzEsIDExNCwgMjM0LCAxODMsIDkzLCAKLSAgICAyNTQsIDE3NSwgMjQ4LCAxMDgsIDkzLCAyNTQsIDE3NSwgMjI0LCAyMjcsIDkzLCAyNTQsIDE3NSwgMjE3LCAyMDYsIDIyNCwgCi0gICAgMjExLCA5MywgMjU0LCAxNzUsIDIxMywgMjEsIDI1MSwgMjE3LCAyMTIsIDIyMSwgOTMsIDI1NCwgMTc1LCAyMjcsIDczLCAKLSAgICA5MywgMjU0LCAxNzUsIDIzNiwgMTQsIDkzLCAyNTQsIDE3NSwgMjQ4LCAyMSwgOTMsIDI1NCwgMTc1LCAyMTIsIDI2LCA5MywgCi0gICAgMTUyLCAyMzEsIDIwNiwgMjQ5LCAyMjgsIDkzLCAyMjUsIDE0NSwgMjIwLCAyMTYsIDkzLCAyMjUsIDE0NSwgMjQxLCAyMzMsIAotICAgIDIyMiwgODEsIDkzLCAyMjUsIDE0NSwgMjQxLCAyMzMsIDIyNiwgMTEyLCA5MywgMjI1LCAxNDUsIDI0MSwgMjMzLCAyMjQsIAotICAgIDIyMCwgOTMsIDIyNSwgMTQ1LCAyNDEsIDE0NCwgOTMsIDIyNSwgMTQ1LCAyMTYsIDEzNCwgOTMsIDIyNSwgMTQ1LCAyMjIsIAotICAgIDgxLCA5MywgMjI1LCAxNDUsIDIyNiwgMTEyLCA5MywgMjI1LCAxNDUsIDIyNCwgMjIwLCA5MywgMjI1LCAxNDUsIDI0MSwgCi0gICAgNDcsIDkzLCAyMjUsIDE0NSwgMjQxLCA0OCwgMjQxLCAyMzUsIDMxLCAyMTQsIDIzNiwgOTMsIDIyNSwgMTQ1LCAyMjQsIAotICAgIDE2MiwgOTMsIDIyNSwgMTQ1LCAyNDgsIDE1MSwgMTY3LCAyMzEsIDIzNCwgOTMsIDIyNSwgMTQ1LCAyMzEsIDEwNSwgOTMsIAotICAgIDIyNSwgMjcsIDIzMSwgMjMxLCA5MywgMjI1LCAxNDUsIDIyNCwgNTksIDkzLCAyMjUsIDI3LCAyMjYsIDEyMCwgOTMsIDIyNSwgCi0gICAgMTQ1LCAyMjAsIDIwMSwgMjQ3LCA3NCwgOTMsIDIyNSwgMTQ1LCAyMjAsIDg1LCAyNDcsIDc0LCA5MywgMjI1LCAyNywgMjE5LCAKLSAgICAyMzcsIDIyNiwgMTE0LCA5MywgMTUyLCAyMTUsIDEzMSwgMjQ3LCA3NCwgOTMsIDE1MiwgMjMyLCAxNjMsIDI0NywgNzQsIAotICAgIDkzLCAyMjUsIDI3LCAyMjgsIDUxLCAyNDIsIDIxLCA5MywgMjI1LCAxNDUsIDIyNCwgMjIxLCAyMjQsIDIxNSwgOTMsIDEsIAotICAgIDI1NCwgNzgsIDkzLCAxLCAyNTEsIDIwNSwgOTMsIDEsIDI0MiwgMTc3LCA5MywgMSwgMjQ4LCAxMzQsIDkzLCAxLCAyNDEsIAotICAgIDIyMiwgOTMsIDEsIDIxNCwgMjM2LCA5MywgMSwgMjEyLCA5MCwgOTMsIDEsIDI0MSwgMTgyLCA5MywgMSwgMjE3LCAxODMsIAotICAgIDkzLCAxLCAyMTIsIDIyNCwgOTMsIDEsIDQwLCAyMzQsIDI1NCwgOTMsIDEsIDIzNCwgMjU0LCA5MywgMSwgMjMzLCAxMTgsIAotICAgIDkzLCAxLCA0MCwgMjMxLCAxMjksIDkzLCAxLCAyMzEsIDEyOSwgOTMsIDEsIDQwLCAyMjgsIDUwLCA5MywgMSwgMjI4LCA1MCwgCi0gICAgOTMsIDEsIDIyMiwgMTY0LCA5MywgMSwgMjUzLCA3OCwgOTMsIDEsIDQwLCAyMjYsIDk2LCA5MywgMSwgMjI2LCA5NiwgOTMsIAotICAgIDEsIDQwLCAyMTYsIDEzNywgOTMsIDEsIDIxNiwgMTM3LCA5MywgMSwgMjI0LCAxODQsIDkzLCAxLCAyMjMsIDIxOSwgOTMsIAotICAgIDEsIDIyMCwgMjAwLCA5MywgMSwgMjE3LCAyNDUsIDkzLCAyNiwgMjEyLCAyNTMsIDUxLCAyMTQsIDIzNiwgOTMsIDI2LCAKLSAgICAyMTIsIDI1MywgMjE0LCAyMzcsIDIxMiwgMjI0LCA5MywgMjYsIDIxMiwgMjUzLCA1MSwgMjEyLCAyMjQsIDkzLCAyMjUsIAotICAgIDI3LCAyNDMsIDE3LCA5MywgMjI1LCAyNywgMjQzLCAxNSwgMTIsIDUwLCA1MiwgMTIsIDUsIDIyMiwgMTU4LCAxMiwgMjQzLCAKLSAgICAyNTUsIDIzMSwgMjE3LCAxMiwgNSwgMjIyLCAxOTIsIDI1MywgMjA3LCAyNDksIDUwLCAyMjMsIDk1LCAyNTMsIDIwNywgCi0gICAgMjQzLCAyMzAsIDIyMywgOTUsIDEyLCAyMjQsIDI3LCAyNTMsIDIwNywgMjI2LCA1OCwgMjMxLCA2LCA1MiwgMjUzLCAyMDcsIAotICAgIDIyNiwgNTgsIDIxNywgMjAxLCAyMTcsIDEwMSwgNTIsIDI1NCwgMTI2LCA1MiwgMTIsIDI0OSwgMTU3LCAxMiwgMjQ4LCA5NiwgCi0gICAgMjIxLCA1NywgMTIsIDIyNSwgMTQ3LCAyMTQsIDIxOCwgNTIsIDEyLCA1LCAyMzAsIDI0MywgMTIsIDUsIDIyMiwgMTc0LCAKLSAgICAyNTQsIDgwLCAyMTQsIDI5LCAxMiwgNSwgMjU0LCA4MCwgMjUzLCAxMzcsIDEyLCA1LCAyMjQsIDU4LCAyNTQsIDc5LCAxMiwgCi0gICAgNSwgMjI0LCA2NSwgMjU0LCA2MSwgMjU0LCAxNCwgMTIsIDUsIDIxOCwgMjAsIDEyLCAzLCAxMjQsIDIxOCwgMjksIDEyLCAzLCAKLSAgICAxMjQsIDI2LCAxMDYsIDIsIDIzMywgMTI3LCAyLCAyMTMsIDM0LCAxMiwgMywgMTI0LCAyMTIsIDEwMSwgMTIsIDMsIDI0NCwgCi0gICAgMTMzLCAxMiwgMywgMjQ4LCAxMjksIDEyLCAzLCAyMzQsIDIxMCwgMTIsIDIyMSwgNzAsIDEyLCAyMTYsIDE2OSwgNjIsIAotICAgIDIyNSwgMjcsIDc3LCAxMiwgMjI0LCAxNTgsIDc3LCAxMiwgMSwgMjM0LCAyMTQsIDIxMywgMzQsIDEyLCAxLCAyNDIsIDIsIAotICAgIDEyLCAxLCAxMDYsIDIsIDIzMiwgMzMsIDQ5LCAxMiwgMSwgMTA2LCAyLCAxOTIsIDQ5LCAxMiwgMSwgMjE0LCAxNSwgMiwgCi0gICAgMTkyLCA0OSwgMTIsIDEsIDEwNiwgMiwgMTkyLCA1NSwgMTIsIDEsIDczLCAyLCAxOTIsIDQ5LCAxMiwgMSwgMjU0LCA3OCwgCi0gICAgMTIsIDEsIDI1MSwgMjMwLCAxMiwgMSwgMjE3LCAyMTYsIDIzMSwgMjI3LCAxMiwgMSwgMjE3LCAyMTUsIDEyLCAxLCAyMTcsIAotICAgIDE0NSwgMTIsIDEsIDIzNSwgMTI0LCAxMiwgMSwgMjQyLCAxOCwgMTIsIDEsIDIzNCwgMTM1LCAxMiwgMSwgMjQ4LCAxNDAsIAotICAgIDEyLCAxLCAyMTcsIDE1NSwgMTIsIDEsIDIyMywgMjQ1LCAxMiwgMSwgMjEyLCAxMDEsIDEyLCAxLCAyMjIsIDg1LCAxMiwgMSwgCi0gICAgMjIwLCAyMzksIDEyLCAxLCAyMjIsIDE5NSwgMTIsIDEsIDI0OCwgMTU5LCAxMiwgMSwgMjE4LCAyOSwgMTIsIDEsIDIxMiwgCi0gICAgMTA0LCAxMiwgMSwgMjU0LCAxMDMsIDEyLCAxLCAyNDIsIDIyMCwgMTIsIDEsIDIzNCwgMTgxLCAyLCAxMTcsIDE3NiwgNDksIAotICAgIDEyLCAxLCAyMzQsIDE4MSwgMiwgMTMzLCAxNzYsIDU1LCAxMiwgMSwgMjQ0LCAxMzYsIDczLCAyLCAyMzUsIDE5MSwgMjE1LCAKLSAgICA3OSwgMTIsIDEsIDI0NCwgMTM2LCA3MywgMiwgMTE3LCAxNzYsIDQ5LCAxMiwgMSwgMjQ0LCAxMzYsIDczLCAyLCAxMzMsIAotICAgIDE3NiwgNDksIDEyLCAyMTcsIDI1MCwgMTIsIDEsIDI0NCwgMTExLCAxMiwgMSwgMjI0LCAyMjUsIDEyLCAxLCAyMzQsIDI1NCwgCi0gICAgMTIsIDEsIDIzMywgMTI2LCAxMiwgMSwgMjMxLCAxNDMsIDEyLCAxLCAyMjgsIDE3MywgMTIsIDEsIDI0MSwgMjAyLCAxMiwgCi0gICAgMSwgMjE0LCAxNCwgMTIsIDEsIDEwNiwgMjMxLCAyNTUsIDEyLCAxLCAyMTMsIDM0LCAxMiwgMjQ0LCAxMzEsIDEyLCAyNDgsIAotICAgIDEyNywgMTIsIDIzNCwgMjA4LCAxMiwgMjQ0LCAxMzMsIDEyLCAyNDgsIDEyOSwgMTIsIDIzNCwgMjEwLCAxMiwgMjIxLCAxNSwgCi0gICAgMTIsIDIxOCwgMjQ2LCAxMiwgMjMyLCAzMSwgNDksIDEyLCAxOTIsIDQ5LCAxMiwgMTkyLCA1NSwgMTIsIDIxOSwgMTAsIAotICAgIDI1NCwgNzgsIDEyLCAyMzUsIDE5MSwgMjQ4LCAxMjksIDEyLCAxNTIsIDIyOCwgMTc0LCAyNDIsIDE5NCwgMTIsIDIxMSwgCi0gICAgMjUwLCAxMiwgMzAsIDUsIDMsIDIxNSwgODAsIDQ5LCAxMiwgMzAsIDUsIDIzNSwgMTkxLCAzLCAyMTUsIDgwLCA0OSwgMTIsIAotICAgIDMwLCA1LCA2MiwgNTUsIDEyLCAyMjMsIDIwMiwgMjQ4LCAxMjksIDEyLCAyNDQsIDEzNCwgMiwgMTE3LCAyNDcsIDcyLCAxMiwgCi0gICAgMjE0LCAxNiwgMTkyLCA1NSwgMjUzLCAyMDcsIDIxLCAyMTIsIDc5LCAyNTMsIDIwNywgMjEsIDExNiwgMjUzLCAyMDcsIDIxLCAKLSAgICAxMDksIDI1MywgMjA3LCAyMSwgMTY2LCAyNTMsIDIwNywgMjEsIDE2MywgMjUzLCAyMDcsIDIxLCAxODAsIDI1MywgMjA3LCAKLSAgICAyMSwgMTg5LCAyNTMsIDIwNywgMjEsIDE5OCwgMjUzLCAyMDcsIDIxLCAxOTUsIDI1MywgMjA3LCAyMSwgMjAwLCAxMiwgCi0gICAgMjI2LCA1NywgNTIsIDEyLCAyNDgsIDM0LCAyMjEsIDU3LCAxMiwgMjE3LCA5OSwgMjIxLCA1NywgMTIsIDI0NCwgNTAsIAotICAgIDIyNSwgMTQzLCAyMTksIDk1LCAxMiwgMSwgMjQ3LCA3MywgMjUxLCAyMzAsIDEyLCAxLCAyNDcsIDczLCAyMjQsIDIyNSwgCi0gICAgMTIsIDEsIDIxOCwgMjIzLCAyNTQsIDc4LCAxMiwgMSwgMTA2LCAyMTQsIDMwLCAxMiwgMSwgMTA2LCAyLCAyMTQsIDE2LCAKLSAgICAxOTIsIDQ5LCAxMiwgMSwgMTA2LCAyLCAyMTQsIDE2LCAxOTIsIDU1LCAxMiwgMSwgMTI0LCAyNDIsIDIsIDEyLCAxLCAxMjQsIAotICAgIDE5MiwgMjU0LCA3OCwgMTIsIDEsIDEyNCwgMTkyLCAyMTQsIDE0LCAxMiwgMSwgMTExLCAyLCAxOTIsIDQ5LCAxMiwgMSwgCi0gICAgMTI0LCAxOTIsIDIxMywgMzQsIDEyLCAxLCAyMTYsIDEwOSwgMTIsIDEsIDIxNiwgMTA3LCAxMiwgMSwgMjUxLCAyNDAsIDEyLCAKLSAgICAxLCAyMTcsIDIxNiwgMiwgMjIzLCAxMzAsIDEyLCAxLCAyMTcsIDIxNiwgMiwgMTMzLCAxNzYsIDc4LCAyNDYsIDU3LCAxMiwgCi0gICAgMSwgMjI2LCA4MCwgMTIsIDEsIDIxNywgMjEzLCAxMiwgMSwgMjUxLCAyMjgsIDEyLCAxLCAxMjEsIDIsIDE5MiwgNDksIDEyLCAKLSAgICAxLCAxMjEsIDIsIDExNywgMTc2LCA3MSwgNDksIDEyLCAxLCAyMjgsIDE0LCAxMiwgMSwgMjQ1LCAyNTQsIDEyLCAxLCAxMjEsIAotICAgIDIsIDEzMywgMTc2LCA0OSwgMTIsIDEsIDIxNywgMjMzLCAxMiwgMSwgMjE3LCAyMzEsIDEyLCAxLCAyNDgsIDgxLCAxMiwgMSwgCi0gICAgMjQ4LCAxNDEsIDIsIDIyMywgMTMwLCAxMiwgMSwgMjQ4LCAxNDEsIDIsIDYyLCA1NSwgMTIsIDEsIDI0OCwgMTQxLCAyLCAKLSAgICA2MiwgMjUxLCAyMjAsIDI0LCAzLCAyMTgsIDI5LCAxMiwgMSwgMjQ4LCAxNDYsIDEyLCAxLCAyNDgsIDgzLCAxMiwgMSwgCi0gICAgMjQ2LCAyNSwgMTIsIDEsIDI0OCwgMTQxLCAyLCAxMzMsIDE3NiwgNzgsIDI0NiwgNTcsIDEyLCAxLCAyNDgsIDE0MSwgMiwgCi0gICAgMjQzLCAyMzcsIDE3NiwgNDksIDEyLCAxLCAyMjMsIDc3LCAxMiwgMSwgMjIzLCAyNDYsIDIsIDMsIDIxNSwgNzksIDEyLCAxLCAKLSAgICAyMjMsIDI0NiwgMiwgMjIzLCAxMzAsIDEyLCAxLCAyMjMsIDI0NiwgMiwgNjIsIDU1LCAxMiwgMSwgMjIzLCAyNDYsIDIsIDMsIAotICAgIDIxNSwgODAsIDU1LCAxMiwgMSwgMjIzLCAyNDYsIDIsIDYyLCAyNTEsIDIyMCwgMjQsIDYyLCA0OSwgMTIsIDEsIDIyMywgCi0gICAgMjQ2LCAyLCAxMTcsIDE3NiwgNDksIDEyLCAxLCAyMzUsIDEyMSwgMTIsIDEsIDIyMywgMjQ2LCAyLCAyNDMsIDIzNywgMTc2LCAKLSAgICA0OSwgMTIsIDEsIDIyMiwgODYsIDIsIDYyLCAyNTEsIDIyMCwgMjQsIDYyLCA0OSwgMTIsIDEsIDIyMiwgODYsIDIsIDEzMywgCi0gICAgMTc2LCA1NSwgMTIsIDEsIDIyMiwgODYsIDIsIDEzMywgMTc2LCAyNTEsIDIyMCwgMjQsIDEzMywgMTc2LCA0OSwgMTIsIDEsIAotICAgIDIyMiwgMTk2LCAyLCAxMTcsIDE3NiwgNTUsIDEyLCAxLCAyMjIsIDE5NiwgMiwgMTMzLCAxNzYsIDQ5LCAxMiwgMSwgMjE4LCAKLSAgICAzMCwgMiwgMTMzLCAxNzYsIDQ5LCAxMiwgMSwgMjU0LCAxMDQsIDIsIDEzMywgMTc2LCA0OSwgMTIsIDEsIDI0NywgNzMsIAotICAgIDI0NCwgMTExLCAxMiwgMSwgMjQ0LCAxMTIsIDIsIDYyLCAyMzAsIDE3OSwgNTUsIDEyLCAxLCAyNDQsIDExMiwgMiwgNjIsIAotICAgIDU1LCAxMiwgMSwgMjE0LCAyMjUsIDEyLCAxLCAyNDQsIDExMiwgMiwgMTMzLCAxNzYsIDU1LCAxMiwgMSwgMjI2LCA3OCwgCi0gICAgMTIsIDEsIDIyNCwgMjI2LCAyLCA2MiwgNDksIDEyLCAxLCAyMjQsIDIyNiwgMiwgMTMzLCAxNzYsIDQ5LCAxMiwgMSwgMjM0LCAKLSAgICAxODAsIDEyLCAxLCAyMTgsIDE5NSwgMjM0LCAyNTQsIDEyLCAxLCAyMzQsIDI1NSwgMiwgMjIzLCAxMzAsIDEyLCAxLCAyMzQsIAotICAgIDI1NSwgMiwgNjIsIDQ5LCAxMiwgMSwgMjI5LCAxNjEsIDEyLCAxLCAyMzQsIDI1NSwgMiwgMTMzLCAxNzYsIDU1LCAxMiwgMSwgCi0gICAgMjQzLCA5NywgMTIsIDEsIDI0MywgOTgsIDIsIDIyMywgMTMwLCAxMiwgMSwgMjI5LCA4OCwgMTIsIDEsIDI0MywgOTgsIDIsIAotICAgIDExNywgMTc2LCA1NSwgMTIsIDEsIDI0MiwgODIsIDEyLCAxLCAyNDMsIDk4LCAyLCAxMzMsIDE3NiwgNDksIDEyLCAxLCAKLSAgICAyMzMsIDEyNywgMiwgMywgMjE1LCA3OSwgMTIsIDEsIDIzMywgMTI3LCAyLCA2MiwgNDksIDEyLCAxLCAyMzMsIDEyNywgMiwgCi0gICAgMTMzLCAxNzYsIDQ5LCAxMiwgMSwgMjMzLCAxMjcsIDIsIDEzMywgMTc2LCA1NSwgMTIsIDEsIDIyOCwgMTc0LCAyLCA2MiwgCi0gICAgNTUsIDEyLCAxLCAyMjgsIDE3NCwgMjQyLCAxOTQsIDEyLCAxLCAyMjMsIDExNSwgMTIsIDEsIDIyOCwgMTc0LCAyLCAyMjMsIAotICAgIDEzMCwgMTIsIDEsIDIyOCwgMTc0LCAyLCAxMzMsIDE3NiwgNDksIDEyLCAxLCAyNDEsIDIwMywgMjQ3LCA5NSwgMTIsIDEsIAotICAgIDIxNywgMjM0LCAyLCA2MiwgNDksIDEyLCAxLCAyNDEsIDIwMywgMiwgNzMsIDQ5LCAxMiwgMSwgMjQxLCAyMDMsIDI0MiwgCi0gICAgMTQ3LCAxMiwgMSwgMjQxLCAyMDMsIDI0MiwgMTQ4LCAyLCAxOTIsIDQ5LCAxMiwgMSwgMjE3LCAyMTYsIDIzMSwgMjI4LCAKLSAgICAyNDIsIDE0NywgMTIsIDEsIDIxNCwgMTUsIDIsIDIyMywgMTMwLCAxMiwgMSwgMjM0LCA4MiwgMjI3LCA5OSwgMTIsIDEsIAotICAgIDIyNywgOTksIDEyLCAxLCA2OSwgMTIsIDEsIDIxMiwgMjAzLCAxMiwgMSwgMjM0LCA4MiwgMjEyLCAyMDMsIDEyLCAxLCAKLSAgICAyMTQsIDE1LCAyLCAxMTcsIDE3NiwgNDksIDEyLCAxLCAyMTQsIDIzMiwgMTIsIDEsIDI0NCwgMTM2LCAyMTMsIDM0LCAxMiwgCi0gICAgMSwgNzMsIDIsIDIxOCwgMjcsIDEyLCAxLCA3MywgMiwgMywgMjE1LCA3OSwgMTIsIDEsIDIxNCwgMTUsIDIsIDYyLCA0OSwgCi0gICAgMTIsIDEsIDc0LCAxMiwgMSwgNzMsIDIsIDEzMywgMTc2LCA1NSwgMTIsIDEsIDczLCAyNTIsIDUyLCAxMiwgMSwgNzMsIAotICAgIDI1MiwgNTMsIDIsIDE5MiwgNDksIDEyLCAyNDMsIDIwMCwgMjE5LCA2OSwgMTIsIDEsIDI1NCwgMTQ4LCAxMiwgMywgMTI0LCAKLSAgICAyNiwgMjIyLCAxOTYsIDIsIDIzMywgMTI3LCAyLCAxMDYsIDIzMSwgMjU1LCAxMiwgMywgMTI0LCAyNiwgMjI0LCAyMjYsIDIsIAotICAgIDIzMywgMTI3LCAyLCAxMDYsIDIzMSwgMjU1LCAxMiwgMywgMTI0LCA2MywgNzAsIDE3LCAxMiwgMywgMTI0LCAyMzMsIDEyNywgCi0gICAgMjU0LCA3OCwgMTIsIDMsIDEyNCwgMjM1LCAxMjQsIDEyLCAzLCAxMjQsIDEzMywgMjQ3LCA3MiwgMTIsIDMsIDEyNCwgMjIyLCAKLSAgICA4NSwgMTIsIDI0NSwgMTAxLCA2NSwgMjUzLCA4MiwgMTIsIDIxOSwgOTEsIDY1LCAyMjMsIDQ5LCAyNDUsIDEzMiwgMjQxLCAKLSAgICAxNDEsIDEyLCAzLCAxMjQsIDIyMywgODUsIDIxMiwgNzksIDEyLCAzLCAxMjQsIDIxNSwgMTMwLCAyMjQsIDgsIDIxMiwgNzksIAotICAgIDEyLCAzLCAxMjQsIDI0NywgNzMsIDI0MSwgMjIwLCA2NSwgMjM0LCAxMzUsIDEyLCAzLCAxMjQsIDYzLCA0OCwgMTcsIDEyLCAKLSAgICAzLCAxMTUsIDIyMiwgODUsIDEyLCAzLCAxMjQsIDIzMiwgMzIsIDEyLCAzLCAyMTQsIDE0LCAxMiwgMywgMjEzLCAzNCwgMTIsIAotICAgIDMsIDEyNCwgMjEzLCAzNCwgMTIsIDMsIDEyNCwgMjI4LCAxNzMsIDEyLCAyMjUsIDE3MywgNjUsIDIyMiwgMTg0LCAxMiwgCi0gICAgMjQ1LCAxMTAsIDI1MCwgMTA5LCAxMTUsIDIxOSwgNjksIDEyLCAyNDUsIDExMCwgMjUwLCAxMDksIDEyNCwgMjE5LCA2OSwgCi0gICAgMTIsIDIyMywgODUsIDEyNCwgMjE5LCA3MCwgMiwgMjQ0LCA3MywgMjUwLCAxMDgsIDEyLCAzLCAxMTUsIDIzMSwgMTQzLCAKLSAgICAxMiwgMSwgMjQ4LCAxNDEsIDIsIDIzNSwgMTkxLCAyMTUsIDc5LCAxMiwgMSwgMjIzLCAyNDYsIDIsIDIzNSwgMTkxLCAyMTUsIAotICAgIDc5LCAyNDQsIDI0NiwgMjUzLCAyMDcsIDIxLCAyMTIsIDc5LCAyNDQsIDI0NiwgMjUzLCAyMDcsIDIxLCAxMTYsIDI0NCwgCi0gICAgMjQ2LCAyNTMsIDIwNywgMjEsIDEwOSwgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgMTY2LCAyNDQsIDI0NiwgMjUzLCAyMDcsIAotICAgIDIxLCAxNjMsIDI0NCwgMjQ2LCAyNTMsIDIwNywgMjEsIDE4MCwgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgMTg5LCAyNDQsIAotICAgIDI0NiwgMjUzLCAyMDcsIDIxLCAxOTgsIDI0NCwgMjQ2LCAyNTMsIDIwNywgMjEsIDE5NSwgMjQ0LCAyNDYsIDI1MywgMjA3LCAKLSAgICAyMSwgMjAwLCAxMiwgMSwgMjIwLCAyNDAsIDIsIDYyLCA1NSwgMTIsIDEsIDI0OCwgMTYwLCAyLCA2MiwgNTUsIDEyLCAxLCAKLSAgICAyNDIsIDIyMSwgMiwgNjIsIDU1LCAxMiwgNSwgMjIwLCA4NCwgMjU0LCAzNSwgMTIsIDUsIDIyMCwgODQsIDIyNSwgMTE1LCAKLSAgICAyMzEsIDEyMiwgMTIsIDEsIDI0MSwgMjAzLCAyLCAyMzUsIDE5MSwgMjE1LCA3OSwgMTc1LCAyNDUsIDEwMSwgNjUsIDIyNiwgCi0gICAgMTQyLCAxNzUsIDIxOCwgMjE5LCAyNDMsIDIwMCwgMjE5LCA2OSwgMTc1LCAyMTksIDEyLCAyNDMsIDIwMCwgMjE5LCA2OSwgCi0gICAgMTc1LCAyMTgsIDIxOSwgMjQ5LCAxNjQsIDE3NSwgMjE5LCAxMiwgMjQ5LCAxNjQsIDE3NSwgMTk5LCAyNDksIDE2NCwgMTc1LCAKLSAgICAyNDksIDE2NSwgMjIwLCAzNCwgMjMzLCA3MCwgMTc1LCAyNDksIDE2NSwgMjIwLCAzNCwgMjIzLCAxNDgsIDE3NSwgMjE4LCAKLSAgICAyMTksIDI0OSwgMTY1LCAyMjAsIDM0LCAyMzMsIDcwLCAxNzUsIDIxOSwgMTIsIDI0OSwgMTY1LCAyMjAsIDM0LCAyMjMsIAotICAgIDE0OCwgMTc1LCAyNDksIDExOSwgMTc1LCAyNDEsIDI0MCwgMjI3LCAxMTQsIDE3NSwgMjQxLCAyNDAsIDIzMSwgMTAzLCAKLSAgICAxNzUsIDI0MSwgMjQwLCAyNTMsIDEzNCwgMTc1LCAyNTQsIDE4MSwgNzcsIDE3NSwgMSwgMjU0LCA4MiwgMTc1LCAxLCAyMTgsIAotICAgIDIyMywgMjU0LCA4MiwgMTc1LCAxLCAyNTEsIDIwMiwgMTc1LCAxLCAyNDMsIDg5LCAxNzUsIDEsIDI0MywgOTAsIDI0MywgCi0gICAgNjcsIDE3NSwgMSwgMjQ4LCAxMzcsIDE3NSwgMSwgMjQ3LCA3MywgMjQ4LCAxMzgsIDIyMywgMTI2LCAxNzUsIDEsIDI0MSwgCi0gICAgMjIyLCAxNzUsIDEsIDIxNCwgMTQsIDE3NSwgMSwgMjEyLCAxMDEsIDE3NSwgMSwgMjQxLCAxODAsIDE3NSwgMSwgMjE3LCAKLSAgICAxNzksIDE3NSwgMSwgMjE3LCAxODAsIDI0MywgNjcsIDE3NSwgMSwgMjEyLCAxOTAsIDE3NSwgMSwgMjEyLCAxOTEsIDI0MSwgCi0gICAgMjIyLCAxNzUsIDEsIDIzNCwgMjMwLCAxNzUsIDEsIDIzMywgMTI1LCAxNzUsIDEsIDIzMSwgMywgMTc1LCAxLCAyMjgsIDUwLCAKLSAgICAxNzUsIDEsIDIyMSwgNjMsIDE3NSwgMSwgNDAsIDIyMSwgNjMsIDE3NSwgMSwgNzQsIDE3NSwgMSwgMjI2LCA5NiwgMTc1LCAKLSAgICAxLCAyMjMsIDIwMiwgMjI2LCA5NiwgMTc1LCAxLCAyMjIsIDE5MywgMTc1LCAxLCAyMjQsIDIxOSwgMTc1LCAxLCAyMjMsIAotICAgIDEyNiwgMTc1LCAxLCAyMjAsIDIwMCwgMTc1LCAxLCAyMTcsIDI0MywgMTc1LCAxLCAyMjYsIDQ1LCAyNTEsIDE5MCwgMTc1LCAKLSAgICAxLCAyMjYsIDQ1LCAyNDIsIDIxOCwgMTc1LCAxLCAyMjYsIDQ1LCAyNDcsIDIyOCwgMTc1LCAyMjUsIDM2LCA0OSwgMTc1LCAKLSAgICAyMjUsIDM2LCA1NSwgMTc1LCAyMjUsIDM2LCAyNDYsIDcxLCAxNzUsIDIxMiwgMTAsIDQ5LCAxNzUsIDIxMiwgMTAsIDU1LCAKLSAgICAxNzUsIDIxMiwgMTAsIDI0NiwgNzEsIDE3NSwgMjI0LCAyNCwgNDksIDE3NSwgMjI0LCAyNCwgNTUsIDE3NSwgMjQ2LCA3MiwgCi0gICAgMjEyLCAxNywgMjQxLCAzMSwgMTc1LCAyNDYsIDcyLCAyMTIsIDE3LCAyNTQsIDE1LCAxNzUsIDI0MSwgMjI1LCA0OSwgMTc1LCAKLSAgICAyNDEsIDIyNSwgNTUsIDE3NSwgMjQxLCAyMjQsIDI0NiwgNzEsIDE3NSwgMjQ1LCA0MywgNDksIDE3NSwgMjQ1LCA0MywgNTUsIAotICAgIDE3NSwgMjIzLCAxOSwgMTc1LCAyNDQsIDEwNSwgMjQ3LCA3NCwgMTc1LCAyMjQsIDEzNywgMTc1LCAyMjMsIDQ1LCAxNzUsIAotICAgIDExNywgNzEsIDE3NiwgNDksIDE3NSwgMTE3LCA3MSwgMTc2LCA1NSwgMTc1LCAxMzMsIDE3NiwgNDksIDE3NSwgMTMzLCAKLSAgICAxNzYsIDU1LCAxNzUsIDIyNywgMTEyLCAyMzIsIDI0MywgNDksIDE3NSwgMjI3LCAxMTIsIDIzMiwgMjQzLCA1NSwgMTc1LCAKLSAgICAyMzAsIDEyNiwgMTc1LCAyNTIsIDUxLCAxNzUsIDEsIDIxOSwgMjMzLCAyMTIsIDczLCAxNzUsIDEsIDIxOSwgMjMzLCAyMzQsIAotICAgIDEyOCwgMTc1LCAxLCAyMTksIDIzMywgMjQ0LCAxMjMsIDEyLCAxLCAyNTEsIDIzMSwgMiwgMTMzLCAxNzYsIDI0MCwgMjM3LCAKLSAgICA1NSwgMTIsIDEsIDI1MSwgMjMxLCAyLCA2MiwgMjUxLCAyMjAsIDI0LCAxMzMsIDE3NiwgNDksIDEyLCAxLCAyNTEsIDIzMSwgCi0gICAgMiwgMTMzLCAxNzYsIDIyNSwgMTQxLCAyMTUsIDEyNCwgNTUsIDEyLCAxLCAyNTEsIDIzMSwgMiwgMTMzLCAxNzYsIDIyNSwgCi0gICAgMTQxLCAyMTUsIDEyNCwgMjUxLCAyMjAsIDI0LCAxMTcsIDE3NiwgNDksIDEyLCAxLCAyNTEsIDIzMSwgMiwgMTE3LCAxNzYsIAotICAgIDI1MSwgMjIwLCAyNCwgNjIsIDQ5LCAxMiwgMSwgMjUxLCAyMzEsIDIsIDIzNSwgMTkxLCAzLCAyMTUsIDgwLCA1NSwgMTIsIAotICAgIDEsIDI1MSwgMjMxLCAyLCAzLCAyMTUsIDc5LCAxMiwgMSwgMTIxLCAyLCAxMTcsIDE3NiwgNDksIDEyLCAxLCAxMjEsIDIsIAotICAgIDEzMywgMTc2LCAyMjUsIDE0MSwgMjE1LCAxMjQsIDU1LCAxMiwgMSwgMjQ4LCAxNDEsIDIsIDExNywgMTc2LCAyMTQsIDE2NiwgCi0gICAgMjUxLCAyMjAsIDI0LCAzLCAyMTgsIDI5LCAxMiwgMSwgMjQ4LCAxNDEsIDIsIDIzNSwgMTkxLCAzLCAyMTUsIDgwLCA1NSwgCi0gICAgMTIsIDEsIDIyMywgMjQ2LCAyLCA5MCwgMTIsIDEsIDIyMiwgODYsIDIsIDI0MywgMjM3LCAxNzYsIDQ5LCAxMiwgMSwgMjU0LCAKLSAgICAxMDQsIDIsIDExNywgMTc2LCA0OSwgMTIsIDEsIDI1NCwgMTA0LCAyLCAxMzMsIDE3NiwgMjI1LCAxNDEsIDI0NiwgNTgsIAotICAgIDQ5LCAxMiwgMSwgMjU0LCAxMDQsIDIsIDExNywgMTc2LCAyMTQsIDE2NiwgNDksIDEyLCAxLCAyNDQsIDExMiwgMiwgMTE3LCAKLSAgICAxNzYsIDU1LCAxMiwgMSwgMjQ0LCAxMTIsIDIsIDEzMywgMTc2LCAyMjUsIDE0MSwgMjE1LCAxMjQsIDU1LCAxMiwgMSwgCi0gICAgMjM0LCAxODEsIDIsIDYyLCA0OSwgMTIsIDEsIDIzNCwgMTgxLCAyLCAxMzMsIDE3NiwgNDksIDEyLCAxLCAyMzQsIDE4MSwgCi0gICAgMiwgMTMzLCAxNzYsIDIyNSwgMTQxLCAyMTUsIDEyNCwgNTUsIDEyLCAxLCA2MywgMiwgNjIsIDQ5LCAxMiwgMSwgNjMsIDIsIAotICAgIDYyLCA1NSwgMTIsIDEsIDIyOCwgMTc0LCAyLCAxMTcsIDE3NiwgNTUsIDEyLCAxLCAyMjgsIDE3NCwgMiwgMywgMjE4LCAyOSwgCi0gICAgMTIsIDEsIDIyOCwgMTc0LCAyLCAzLCAyMTUsIDc5LCAxMiwgMSwgMjMzLCAxMjcsIDIsIDEzNCwgMTIsIDEsIDIyMywgMjQ2LCAKLSAgICAyLCAxMTcsIDE3NiwgMjE0LCAxNjYsIDQ5LCAxMiwgMSwgMjIzLCAyNDYsIDIsIDE5MiwgNDksIDEyLCAxLCAyMjIsIDg2LCAKLSAgICAyLCAxMTcsIDE3NiwgMjE0LCAxNjYsIDQ5LCAxMiwgMSwgMTIxLCAyLCAzLCAxMiwgMSwgMjE4LCAzMCwgNTUsIDEyLCAxLCAKLSAgICAxMjEsIDIsIDMsIDEyLCAxLCAyMTgsIDMwLCAyNCwgMTE3LCAyNDcsIDcyLCAxMiwgMSwgMjIyLCA4NiwgMiwgMywgMTIsIDEsIAotICAgIDIxOCwgMzAsIDI0LCAxMTcsIDI0NywgNzIsIDEyLCAxLCAyMjMsIDI0NiwgMiwgMywgMTIsIDEsIDIxOCwgMzAsIDI0LCAKLSAgICAxMTcsIDI0NywgNzIsIDEyLCAxLCAxMjEsIDIsIDMsIDEyLCAxLCAyMTgsIDMwLCA0OSwgMTIsIDEsIDEwNiwgMiwgMjQ0LCAKLSAgICAyNDYsIDI1MywgMjA3LCAyMSwgMTE3LCA0OSwgMTIsIDEsIDEwNiwgMiwgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgMTMzLCAKLSAgICA0OSwgMTIsIDEsIDI0NCwgMTM2LCA3MywgMiwgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgMTE3LCA0OSwgMTIsIDEsIDI0NCwgCi0gICAgMTM2LCA3MywgMiwgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgMTMzLCA0OSwgMTIsIDEsIDI0NCwgMTM2LCA3MywgMiwgMjQ0LCAKLSAgICAyNDYsIDI1MywgMjA3LCAyMSwgMjQzLCAyMzcsIDU1LCAxMiwgMSwgMjE0LCAxNSwgMiwgMjQ0LCAyNDYsIDI1MywgMjA3LCAKLSAgICAyMSwgMTE3LCA0OSwgMTIsIDEsIDIxNCwgMTUsIDIsIDI0NCwgMjQ2LCAyNTMsIDIwNywgMjEsIDEzMywgNDksIDEyLCAxLCAKLSAgICA3MywgMjUyLCA1MywgMiwgMjQ0LCAyNDYsIDI1MywgMjA3LCAyMSwgMTE3LCA0OSwgMTIsIDEsIDczLCAyNTIsIDUzLCAyLCAKLSAgICAyNDQsIDI0NiwgMjUzLCAyMDcsIDIxLCAxMzMsIDQ5LCAxMiwgMSwgMTIxLCAyLCAyNDQsIDI0NiwgMjUzLCAyMDcsIDIxLCAKLSAgICAyNDMsIDIzNywgNTUsIDEyLCAxLCAyMjIsIDg2LCAyLCAyNDQsIDI0NiwgMjUzLCAyMDcsIDIxLCAyNDMsIDIzNywgNDksIAotICAgIDEyLCAxLCAyMjIsIDg2LCAyLCAyMzUsIDE5MSwgMjE1LCA3OSwgMTIsIDEsIDIzNCwgMjU1LCAyLCAxMTcsIDE3NiwgNDksIAotICAgIDIxNywgMTU4LCAxLCAyNDIsIDI3LCAyMTcsIDE1OCwgMSwgMjIwLCAyNDgsIDIxNywgMTU4LCAxLCAyMjgsIDE3MiwgMjE3LCAKLSAgICAxNTgsIDEsIDIyNCwgNzQsIDIxNywgMTU4LCAxLCAyNTIsIDEwNiwgMjE3LCAxNTgsIDEsIDIzMywgMjIsIDIxNywgMTU4LCAKLSAgICAxLCAyMzUsIDEyLCAyMTcsIDE1OCwgMSwgMjU0LCA2OCwgMjE3LCAxNTgsIDEsIDIxNCwgMjU1LCAyMTcsIDE1OCwgMSwgCi0gICAgMjMxLCAxNDIsIDIxNywgMTU4LCAxLCAyNDQsIDE2MiwgMjE3LCAxNTgsIDEsIDI0NywgMjMxLCAyMTcsIDE1OCwgMSwgMjE3LCAKLSAgICAxNjAsIDIxNywgMTU4LCAxLCAyMzMsIDE1MywgMjE3LCAxNTgsIDEsIDI0MywgMTA2LCAyMTcsIDE1OCwgMSwgMjQyLCAxNTMsIAotICAgIDIxNywgMTU4LCAxLCAyMjIsIDg0LCAyMTcsIDE1OCwgMSwgMjQ4LCA5NCwgMjE3LCAxNTgsIDEsIDIxMiwgOTMsIDIxNywgCi0gICAgMTU4LCAxLCAyMTcsIDI0NCwgMjE3LCAxNTgsIDEsIDIxMywgOTEsIDIxNywgMTU4LCAxLCAyMjYsIDEwNywgMjE3LCAxNTgsIAotICAgIDEsIDIzNSwgMTI5LCAyMTcsIDE1OCwgMSwgMjUwLCA3MCwgMjE3LCAxNTgsIDEsIDIxNiwgMTE0LCAyMTcsIDE1OCwgMSwgCi0gICAgMjQxLCAxNzMsIDIxNywgMTU4LCAxLCAyMzQsIDEzNywgMjE3LCAxNTgsIDEsIDIxNywgMTU5LCAyMTcsIDE1OCwgMSwgMjEyLCAKLSAgICAxMDgsIDIxNywgMTU4LCAxLCAyMjAsIDIzOCwgMjE3LCAxNTgsIDEsIDIyMiwgMTk5LCAyMTcsIDE1OCwgMSwgMjQ4LCAxNjIsIAotICAgIDIxNywgMTU4LCAxLCAxMDgsIDIxNywgMTU4LCAxLCAyMTIsIDE2LCAyMTcsIDE1OCwgMSwgMjU0LCAxMDEsIDIxNywgMTU4LCAKLSAgICAxLCAyNDIsIDIxOSwgMjE3LCAxNTgsIDEsIDIyNCwgMjI5LCAyMTcsIDE1OCwgMSwgMjE0LCA0NywgMjE3LCAxNTgsIDI1NCwgCi0gICAgMTgyLCAyMTcsIDE1OCwgMjU0LCAxOTcsIDIxNywgMTU4LCAyNDAsIDEwNywgMjE3LCAxNTgsIDI0NSwgMTY0LCAyMTcsIAotICAgIDE1OCwgMjE1LCAxOTEsIDIxNywgMTU4LCAyMjcsIDQ4LCAyMTcsIDE1OCwgMjQ1LCAxNzIsIDIxNywgMTU4LCAyNDQsIDI0MCwgCi0gICAgMjE3LCAxNTgsIDIyNywgMTExLCAyMTcsIDE1OCwgMjI3LCAxMTksIDIxNywgMTU4LCAyMTgsIDI0NiwgMjE3LCAxNTgsIDEsIAotICAgIDIzMCwgNDMsIDIyOCwgMjI0LCAyMSwgMjEyLCA3OSwgMjI4LCAyMjQsIDIxLCAxMTYsIDIyOCwgMjI0LCAyMSwgMTA5LCAKLSAgICAyMjgsIDIyNCwgMjEsIDE2NiwgMjI4LCAyMjQsIDIxLCAxNjMsIDIyOCwgMjI0LCAyMSwgMTgwLCAyMjgsIDIyNCwgMjEsIAotICAgIDE4OSwgMjI4LCAyMjQsIDIxLCAxOTgsIDIyOCwgMjI0LCAyMSwgMTk1LCAyMjgsIDIyNCwgMjEsIDIwMCwgMjI4LCAyMjQsIAotICAgIDEsIDYxLCAyMjgsIDIyNCwgMSwgMjQ1LCAxNjUsIDIyOCwgMjI0LCAxLCA3MiwgMjI4LCAyMjQsIDEsIDc0LCAyMjgsIDIyNCwgCi0gICAgMSwgNjksIDIyOCwgMjI0LCAxLCAyMjcsIDQ5LCAyMjgsIDIyNCwgMSwgNzUsIDIyOCwgMjI0LCAxLCAyNDgsIDE1MiwgMjI4LCAKLSAgICAyMjQsIDEsIDIwNCwgMjI4LCAyMjQsIDEsIDI1MiwgMTA3LCAyMjgsIDIyNCwgMSwgMTkzLCAyMjgsIDIyNCwgMSwgMjE4LCAKLSAgICA1MiwgMjI4LCAyMjQsIDEsIDIzNSwgMTM5LCAyMjgsIDIyNCwgMSwgMjUwLCA5MiwgMjI4LCAyMjQsIDEsIDI0OCwgMTY0LCAKLSAgICAyMjgsIDIyNCwgMSwgMjAzLCAyMjgsIDIyNCwgMSwgMjIzLCA4MSwgMjI4LCAyMjQsIDEsIDIyMiwgMjAyLCAyMjgsIDIyNCwgCi0gICAgMSwgMjQzLCA1NSwgMjI4LCAyMjQsIDEsIDI0NCwgMTY0LCAyMjgsIDIyNCwgMSwgMTgxLCAyMjgsIDIyNCwgMSwgMjMzLCAKLSAgICAxNTcsIDIyOCwgMjI0LCAxLCAyMzAsIDQ2LCAyMTMsIDIxMCwgMjI4LCAyMjQsIDEsIDE4OCwgMjI4LCAyMjQsIDEsIDIyOCwgCi0gICAgMjMsIDIyOCwgMjI0LCAxLCAyMDUsIDIyOCwgMjI0LCAxLCAxNTksIDIyOCwgMjI0LCAxLCAyMTQsIDQ5LCAyMjgsIDIyNCwgCi0gICAgMSwgMTg2LCAyMjgsIDIyNCwgMSwgMjI4LCAyNCwgMjEzLCAyMTAsIDIyOCwgMjI0LCAxLCAyMzUsIDY0LCAyMzUsIDEzOSwgCi0gICAgMjI4LCAyMjQsIDEsIDIzNSwgNjQsIDI1MCwgOTIsIDIyOCwgMjI0LCAxLCAyMzUsIDY0LCAyMDMsIDIyOCwgMjI0LCAzNywgCi0gICAgMjIwLCAxNzUsIDEyNCwgMjE2LCAyNDEsIDIyOCwgMjI0LCAzNywgMjIwLCAxNzUsIDExNSwgMjE2LCAyNDEsIDIyOCwgMjI0LCAKLSAgICAzNywgMjIwLCAxNzUsIDIyMywgMTI1LCAyMTYsIDI0MSwgMjI4LCAyMjQsIDM3LCAxODQsIDI0NywgMjQ1LCAyMTYsIDI0MSwgCi0gICAgMjI4LCAyMjQsIDM3LCAxODQsIDEyNCwgMjE2LCAyNDEsIDIyOCwgMjI0LCAzNywgMTg0LCAxMTUsIDIxNiwgMjQxLCAyMjgsIAotICAgIDIyNCwgMzcsIDE4NCwgMjIzLCAxMjUsIDIxNiwgMjQxLCAyMjgsIDIyNCwgMzcsIDIzMCwgMTMsIDc3LCAyMjgsIDIyNCwgCi0gICAgMzcsIDUxLCA2MiwgNDksIDIyOCwgMjI0LCAxMjQsIDE2MCwgMjUzLCAyMjYsIDIyOCwgMjI0LCAxMTUsIDE2MCwgMjUzLCAKLSAgICAyMjYsIDIyOCwgMjI0LCAxNiwgMjI3LCA1MCwgMjQ4LCAxLCAyMjgsIDIyNCwgMTYsIDI0MywgNTQsIDIyOCwgMjI0LCAyNDksIAotICAgIDE1NywgMjI4LCAyMjQsIDI0NCwgMjU0LCA3NywgMjI4LCAyMjQsIDIzMywgMTMyLCAyMjIsIDE2NywgMSwgMjU0LCA4NCwgCi0gICAgMjIyLCAxNjcsIDEsIDI1MSwgMTUxLCAyMjIsIDE2NywgMSwgMjQzLCA4OCwgMjIyLCAxNjcsIDEsIDI0OCwgMTM5LCAyMjIsIAotICAgIDE2NywgMSwgMjM1LCAxNTAsIDIyMiwgMTY3LCAxLCAyNTIsIDEwNiwgMjIyLCAxNjcsIDEsIDIxMiwgODIsIDIyMiwgMTY3LCAKLSAgICAxLCAyMzUsIDE1OCwgMjIyLCAxNjcsIDEsIDIxNywgMjAsIDIyMiwgMTY3LCAxLCAyMTIsIDE3MywgMjIyLCAxNjcsIDEsIAotICAgIDIzNSwgMTMsIDIyMiwgMTY3LCAxLCAyMzMsIDE1MCwgMjIyLCAxNjcsIDEsIDIzMSwgMywgMjIyLCAxNjcsIDEsIDIyOCwgCi0gICAgNTAsIDIyMiwgMTY3LCAxLCAyMjAsIDgyLCAyMjIsIDE2NywgMSwgMjM1LCAyNTEsIDIyMiwgMTY3LCAxLCAyNDQsIDkwLCAKLSAgICAyMjIsIDE2NywgMSwgMjE2LCAxMzksIDIyMiwgMTY3LCAxLCAyMjQsIDE1NSwgMjIyLCAxNjcsIDEsIDIyMywgMTI2LCAyMjIsIAotICAgIDE2NywgMSwgMjIxLCA4LCAyMjIsIDE2NywgMSwgMjE4LCA0OCwgMjIyLCAxNjcsIDE1MiwgMjM1LCAyNTEsIDIyMiwgMTY3LCAKLSAgICAxNTIsIDIzNSwgMjUwLCAyMjIsIDE2NywgMTUyLCAyMjcsIDEwNywgMjIyLCAxNjcsIDE1MiwgMjQ4LCAxNTAsIDIyMiwgCi0gICAgMTY3LCA1OSwgMSwgMjQ1LCA2OCwgMjEyLCAxNzMsIDIyMiwgMTY3LCAxNTIsIDI0NSwgNjgsIDIxMiwgMTczLCAyMjIsIAotICAgIDE2NywgMzAsIDUsIDE4NCwgNzQsIDIyMiwgMTY3LCAzMCwgNSwgNzQsIDIyMiwgMTY3LCAzMCwgNSwgMjI2LCAyNDIsIDI1NCwgCi0gICAgMjMyLCAyMjIsIDE2NywgMzAsIDUsIDE4NCwgMjU0LCAyMzIsIDIyMiwgMTY3LCAzMCwgNSwgMjU0LCAyMzIsIDIyMiwgMTY3LCAKLSAgICAzMCwgNSwgMjI2LCAyNDIsIDYxLCAyMjIsIDE2NywgMzAsIDUsIDE4NCwgNjEsIDIyMiwgMTY3LCAzMCwgNSwgNjEsIDIyMiwgCi0gICAgMTY3LCA1OSwgMSwgMjIwLCAxNzUsIDYxLCAyMjIsIDE2NywgMzAsIDUsIDIyMCwgMTc1LCA2MSwgMjIyLCAxNjcsIDMwLCA1LCAKLSAgICAxODQsIDY5LCAyMjIsIDE2NywgMzAsIDUsIDY5LCAyMjIsIDE2NywgNTksIDEsIDcyLCAyMjIsIDE2NywgMzAsIDUsIDE4NCwgCi0gICAgNzIsIDIyMiwgMTY3LCAzMCwgNSwgNzIsIDIyMiwgMTY3LCAzMCwgNSwgNzUsIDIyMiwgMTY3LCAzMCwgNSwgMjE4LCAyNDYsIAotICAgIDIyMiwgMTY3LCAxNTIsIDIyOSwgMTc0LCAyMjIsIDE2NywgMjI1LCAyNywgMjI5LCAxNzQsIDIyMiwgMTY3LCAyMjUsIDI3LCAKLSAgICAyNTQsIDEyMywgMjIyLCAxNjcsIDIyNSwgMjcsIDI1NCwgMjMsIDIyMiwgMTY3LCAyMjUsIDI3LCAyNTIsIDM0LCAyMjIsIAotICAgIDE2NywgMjI1LCAyNywgMjUzLCAxMTcsIDIyMiwgMTY3LCAyMjUsIDI3LCAyMjAsIDE4OCwgMjIyLCAxNjcsIDI1NCwgMTgxLCAKLSAgICA3NywgMjIyLCAxNjcsIDIyNSwgMjcsIDIzMSwgMTMyLCAyMjQsIDE5MCwgMjIyLCAxNjcsIDIyNSwgMjcsIDIxMiwgMjQsIAotICAgIDIyMiwgMTY3LCAyMjUsIDI3LCAyMjQsIDE5MCwgMjIyLCAxNjcsIDIyNSwgMjcsIDIxMiwgMTA3LCAyMjIsIDE2NywgMjI1LCAKLSAgICAyNywgMjE2LCA1NCwgMjIyLCAxNjcsIDIyNSwgMjcsIDI1MywgMTgwLCAyMjIsIDE2NywgMjI1LCAyNywgMjE5LCAyMzcsIAotICAgIDIzMSwgMjA4LCAyMjIsIDE2NywgMjI1LCAyNywgMjU0LCAxMSwgMjMxLCAyNDUsIDEsIDI0MiwgNywgMjMxLCAyNDUsIDEsIAotICAgIDI1NCwgMTg1LCAyMzEsIDI0NSwgMSwgMjU0LCAxMjEsIDIzMSwgMjQ1LCAxLCAyNTQsIDE2MCwgMjMxLCAyNDUsIDEsIDI1NCwgCi0gICAgMTE0LCAyMzEsIDI0NSwgMSwgMjE1LCA5OCwgMjMxLCAyNDUsIDEsIDI1MywgNzYsIDIzMSwgMjQ1LCAxLCAyMzUsIDE1OCwgCi0gICAgMjMxLCAyNDUsIDEsIDI1MywgMTE0LCAyMzEsIDI0NSwgMSwgMjU0LCA4OSwgMjMxLCAyNDUsIDEsIDI1NCwgOTQsIDIzMSwgCi0gICAgMjQ1LCAxLCAyNTQsIDg2LCAyMzEsIDI0NSwgMSwgMjU0LCA0NSwgMjMxLCAyNDUsIDEsIDI1NCwgMzIsIDIzMSwgMjQ1LCAxLCAKLSAgICAyNTMsIDE1MiwgMjMxLCAyNDUsIDEsIDIzNSwgMjUxLCAyMzEsIDI0NSwgMSwgMjUzLCAyMzksIDIzMSwgMjQ1LCAxLCAyNTMsIAotICAgIDEyNCwgMjMxLCAyNDUsIDEsIDI1MywgMjE1LCAyMzEsIDI0NSwgMSwgMjUzLCAyMTEsIDIzMSwgMjQ1LCAxLCAyNTMsIDE0NiwgCi0gICAgMjMxLCAyNDUsIDEsIDI1MywgMTIyLCAyMzEsIDI0NSwgMSwgMjQ2LCAxMCwgMjMxLCAyNDUsIDEsIDIzNSwgNiwgMjMxLCAKLSAgICAyNDUsIDEsIDI1NCwgMTAzLCAyMzEsIDI0NSwgMjU0LCAxMjcsIDc3LCAyMzEsIDI0NSwgMjE0LCAxMTcsIDc3LCAyMzEsIAotICAgIDI0NSwgMjQzLCAyOSwgNzcsIDIzMSwgMjQ1LCAyMjUsIDI2LCA4MiwgNSwgMjM1LCAxOTEsIDI1MCwgMTg3LCA4MiwgNSwgCi0gICAgMjUwLCAxODcsIDgyLCA1LCAyNTMsIDI0MiwgODIsIDUsIDIxNCwgMTI4LCA4MiwgMSwgMjIwLCAxNzUsIDYxLCA4MiwgMSwgCi0gICAgNjEsIDgyLCAxLCAyNTQsIDIzMiwgODIsIDEsIDcyLCA4MiwgMSwgMjM2LCAyOCwgODIsIDEsIDY5LCA4MiwgMSwgMjE1LCAKLSAgICA5MiwgODIsIDEsIDE2MSwgMTQ5LCA4MiwgMSwgMTYxLCAxNTAsIDgyLCAxLCAyNTAsIDE5MCwgNzQsIDgyLCAxLCAyMjAsIAotICAgIDE3NSwgNzQsIDgyLCAxLCA3NCwgODIsIDEsIDI1NCwgMTA4LCA4MiwgMSwgMjUwLCAxOTAsIDc1LCA4MiwgMSwgMjIwLCAKLSAgICAxNzUsIDc1LCA4MiwgMSwgNzUsIDgyLCAxLCAyNTMsIDEwOCwgODIsIDEsIDE4MSwgODIsIDEsIDIzNCwgMTM4LCA4MiwgMSwgCi0gICAgMjQzLCAxMTAsIDgyLCAxLCAyNDIsIDIyNSwgODIsIDEsIDIyOSwgMTU5LCA4MiwgMSwgMjUwLCAyMTksIDgyLCAxLCAyNTAsIAotICAgIDkyLCA4MiwgMSwgMjM1LCAxMzksIDgyLCAxLCAyMzUsIDExNSwgODIsIDEsIDIyOCwgMjMsIDgyLCAxLCAyMTYsIDExNSwgCi0gICAgODIsIDEsIDIxNiwgMTA1LCA4MiwgMSwgMjQ4LCA4NiwgODIsIDEsIDI0OCwgNzAsIDgyLCAxLCAyMjgsIDE5OCwgODIsIDEsIAotICAgIDIxOCwgNTIsIDgyLCAxLCAyMTcsIDE2MSwgODIsIDEsIDI0OCwgMTY0LCA4MiwgMSwgMjQ3LCAyMzIsIDgyLCAxLCAyMDUsIAotICAgIDgyLCAxLCAyMjgsIDE4OSwgODIsIDEsIDE5MywgODIsIDEsIDIyNiwgMjMsIDgyLCAxLCAyNTIsIDEwNywgODIsIDEsIDI1MSwgCi0gICAgMTk1LCA4MiwgMSwgMTg4LCA4MiwgMSwgMTg2LCA4MiwgMSwgMjAzLCA4MiwgMSwgMjIzLCA4MSwgODIsIDEsIDIzMywgMTU3LCAKLSAgICA4MiwgMSwgMjMyLCAyMTMsIDgyLCAxLCAyMzIsIDIxMiwgODIsIDEsIDIxNSwgMSwgODIsIDEsIDIyMSwgMjQsIDgyLCAxLCAKLSAgICAyMTksIDE1NywgODIsIDEsIDIyMiwgMjAyLCA4MiwgMSwgMTU5LCA4MiwgMzAsIDUsIDIyNywgOTksIDgyLCAzMCwgNSwgCi0gICAgMjI3LCA0NywgODIsIDUsIDIyOCwgNjAsIDgyLCA1LCAyNTMsIDkxLCA4MiwgMzAsIDUsIDI1NCwgMjMyLCA4MiwgMzAsIDUsIAotICAgIDcyLCA4MiwgMzAsIDUsIDIzNiwgMjgsIDgyLCAzMCwgNSwgNjksIDgyLCAzMCwgNSwgMjE1LCA5MiwgODIsIDMwLCA1LCAKLSAgICAxNjEsIDE0OSwgODIsIDMwLCA1LCAxNjEsIDIyMywgODIsIDgyLCAzMCwgNSwgMjUwLCAxOTAsIDc0LCA4MiwgMzAsIDUsIAotICAgIDIyMCwgMTc1LCA3NCwgODIsIDMwLCA1LCA3NCwgODIsIDMwLCA1LCAyNTQsIDEwOCwgODIsIDMwLCA1LCAyNTAsIDE5MCwgCi0gICAgNzUsIDgyLCAzMCwgNSwgMjIwLCAxNzUsIDc1LCA4MiwgMzAsIDUsIDc1LCA4MiwgMzAsIDUsIDI1MywgMTA4LCA4MiwgNSwgCi0gICAgMjE0LCAxMzMsIDgyLCAzMCwgNSwgMjI1LCA2NiwgNzQsIDgyLCAzMCwgNSwgMjUzLCA4NywgODIsIDIyNywgNzAsIDgyLCAKLSAgICAyMTksIDUxLCA1LCAyMTUsIDE4NSwgODIsIDIxOSwgNTEsIDUsIDI1MywgMjQ0LCA4MiwgMjQyLCAxMTQsIDI1NCwgMTc0LCAKLSAgICA4MiwgMjU0LCAxNjQsIDI1NCwgMTc0LCA4MiwgMzAsIDUsIDI1MCwgMTkwLCAxODQsIDc0LCA4MiwgMzAsIDUsIDIxNSwgCi0gICAgMTgzLCA4MiwgMzAsIDUsIDIxNSwgOTEsIDgyLCAxLCAyMjQsIDIzMiwgODIsIDEsIDIzNCwgMTIxLCA4MiwgMSwgMjQyLCAKLSAgICAyMDIsIDgyLCAxLCAyMTIsIDEwOSwgODIsIDEsIDI0OCwgNzUsIDgyLCAxLCAyMjMsIDE5MiwgODIsIDEsIDI0NCwgMTY0LCAKLSAgICA4MiwgMSwgMjEyLCAxNjAsIDgyLCAxLCAxNjEsIDIyMywgODIsIDgyLCAxLCAxNjEsIDIzMiwgMjE0LCA4MiwgMzAsIDUsIAotICAgIDE2MSwgMTUwLCA4MiwgMzAsIDUsIDE2MSwgMjMyLCAyMTQsIDgyLCAyNDgsIDEyMywgODIsIDUxLCAyNDgsIDEyMywgODIsIAotICAgIDIxLCAyMTIsIDc5LCA4MiwgMjEsIDExNiwgODIsIDIxLCAxMDksIDgyLCAyMSwgMTY2LCA4MiwgMjEsIDE2MywgODIsIDIxLCAKLSAgICAxODAsIDgyLCAyMSwgMTg5LCA4MiwgMjEsIDE5OCwgODIsIDIxLCAxOTUsIDgyLCAyMSwgMjAwLCA4MiwgMjU0LCAxODEsIAotICAgIDUyLCA4MiwgNSwgMTI0LCAyMTksIDIwNSwgMjQ3LCA3NCwgODIsIDEsIDI1MCwgMTkwLCA2MSwgODIsIDEsIDIyNywgOTksIAotICAgIDgyLCAxLCAyMjcsIDQ3LCA4MiwgMSwgMjUzLCA4NywgODIsIDEsIDIxNSwgMTgzLCA4MiwgMSwgMjE1LCA5MSwgODIsIDEsIAotICAgIDIxMiwgNzUsIDgyLCAxLCAxMDcsIDE4NiwgODIsIDEsIDI0MywgNSwgODIsIDEsIDIzNSwgOTksIDgyLCAxLCAyNDIsIDE1NiwgCi0gICAgMjE5LCA2OSwgODIsIDEsIDI0OCwgNzYsIDgyLCAxLCAyNTIsIDMxLCAxNDAsIDUsIDI1MCwgMTg3LCAxNDAsIDUsIDI1MywgCi0gICAgMjQyLCAxNDAsIDUsIDIxNCwgMTI4LCAxNDAsIDEsIDYxLCAxNDAsIDEsIDI1NCwgMjMyLCAxNDAsIDEsIDcyLCAxNDAsIDEsIAotICAgIDIzNiwgMjgsIDE0MCwgMSwgNjksIDE0MCwgMSwgMjE1LCA5MiwgMTQwLCAxLCAxNjEsIDE0OSwgMTQwLCAxLCAxNjEsIDE1MCwgCi0gICAgMTQwLCAxLCA3NCwgMTQwLCAxLCAyNTQsIDEwOCwgMTQwLCAxLCA3NSwgMTQwLCAxLCAyNTMsIDEwOCwgMTQwLCAxLCAxODEsIAotICAgIDE0MCwgMSwgMjM0LCAxMzgsIDE0MCwgMSwgMjQzLCAxMTAsIDE0MCwgMSwgMjQyLCAyMjUsIDE0MCwgMSwgMjI5LCAxNTksIAotICAgIDE0MCwgMSwgMjUwLCAyMTksIDE0MCwgMSwgMjUwLCA5MiwgMTQwLCAxLCAyMzUsIDEzOSwgMTQwLCAxLCAyMzUsIDExNSwgCi0gICAgMTQwLCAxLCAyMjgsIDIzLCAxNDAsIDEsIDIxNiwgMTE1LCAxNDAsIDEsIDIxNiwgMTA1LCAxNDAsIDEsIDI0OCwgODYsIAotICAgIDE0MCwgMSwgMjQ4LCA3MCwgMTQwLCAxLCAyMjgsIDE5OCwgMTQwLCAxLCAyMTgsIDUyLCAxNDAsIDEsIDIxNywgMTYxLCAKLSAgICAxNDAsIDEsIDI0OCwgMTY0LCAxNDAsIDEsIDI0NywgMjMyLCAxNDAsIDEsIDIwNSwgMTQwLCAxLCAxOTMsIDE0MCwgMSwgCi0gICAgMjI2LCAyMywgMTQwLCAxLCAyNTIsIDEwNywgMTQwLCAxLCAyNTEsIDE5NSwgMTQwLCAxLCAxODgsIDE0MCwgMSwgMTg2LCAKLSAgICAxNDAsIDEsIDIwMywgMTQwLCAxLCAyMzMsIDE1NywgMTQwLCAxLCAyMjEsIDI0LCAxNDAsIDEsIDIxOSwgMTU3LCAxNDAsIDEsIAotICAgIDIyMiwgMjAyLCAxNDAsIDEsIDE1OSwgMTQwLCA1LCAyMjgsIDYwLCAxNDAsIDUsIDI1MywgOTEsIDE0MCwgMzAsIDUsIDI1NCwgCi0gICAgMjMyLCAxNDAsIDMwLCA1LCA3MiwgMTQwLCAzMCwgNSwgMjM2LCAyOCwgMTQwLCAzMCwgNSwgNjksIDE0MCwgMzAsIDUsIAotICAgIDIxNSwgOTIsIDE0MCwgMzAsIDUsIDE2MSwgMTQ5LCAxNDAsIDMwLCA1LCAxNjEsIDIyMywgODIsIDE0MCwgMzAsIDUsIDc0LCAKLSAgICAxNDAsIDMwLCA1LCAyNTQsIDEwOCwgMTQwLCAzMCwgNSwgNzUsIDE0MCwgMzAsIDUsIDI1MywgMTA4LCAxNDAsIDUsIDIxNCwgCi0gICAgMTMzLCAxNDAsIDEsIDIzNCwgMTMwLCAyMTgsIDUyLCAxNDAsIDI1MywgMTA5LCAyMzMsIDQ3LCA3NywgMTQwLCAxLCAyMjMsIAotICAgIDgxLCAxNDAsIDEsIDIyMywgMTkyLCAxNDAsIDEsIDIxMiwgMTYwLCAxNDAsIDEsIDE2MSwgMjIzLCA4MiwgMTQwLCAxLCAKLSAgICAxNjEsIDIzMiwgMjE0LCAxNDAsIDMwLCA1LCAxNjEsIDE1MCwgMTQwLCAzMCwgNSwgMTYxLCAyMzIsIDIxNCwgMTQwLCAyMSwgCi0gICAgMjEyLCA3OSwgMTQwLCAyMSwgMTE2LCAxNDAsIDIxLCAxMDksIDE0MCwgMjEsIDE2NiwgMTQwLCAyMSwgMTYzLCAxNDAsIDIxLCAKLSAgICAxODAsIDE0MCwgMjEsIDE4OSwgMTQwLCAyMSwgMTk4LCAxNDAsIDIxLCAxOTUsIDE0MCwgMjEsIDIwMCwgMTQwLCAxLCAyMjQsIAotICAgIDc3LCAyLCAyMzEsIDM3LCAyNDcsIDIwNiwgMTQwLCAxLCAyMjQsIDc3LCAyLCAyMzIsIDE2MywgMjQ3LCAyMDYsIDE0MCwgCi0gICAgMjIzLCAyOSwgNzcsIDE0MCwgMjIzLCAyOSwgNTIsIDE0MCwgMjQ5LCAzOSwgMjI4LCA1MywgMTE2LCAxNDAsIDI0OSwgMzksIAotICAgIDIyOCwgNTMsIDEwOSwgMTQwLCAyNDksIDM5LCAyMjgsIDUzLCAxNjYsIDE0MCwgMjQ5LCAzOSwgMjI4LCA1MywgMTYzLCAKLSAgICAxNDAsIDI0OSwgMzksIDIyOCwgNTMsIDEyMiwgMjMzLCA0MCwgMjE3LCAxNTQsIDIxNywgMTQ5LCAyNDcsIDI1NSwgMTQwLCAKLSAgICAyNDksIDM5LCAyNDgsIDAsIDIyMCwgNDcsIDE0MCwgMjM1LCAxNTksIDE0MCwgMjQzLCA3OSwgNzcsIDE3MywgNSwgMjU0LCAKLSAgICAxNTksIDI1MSwgMTY2LCAxNzMsIDUsIDI1MSwgMTY2LCAxNzMsIDUsIDIxNCwgMTI4LCAxNzMsIDEsIDYxLCAxNzMsIDEsIAotICAgIDI1NCwgMjMyLCAxNzMsIDEsIDcyLCAxNzMsIDEsIDIzNiwgMjgsIDE3MywgMSwgNjksIDE3MywgMSwgMjE1LCA5MiwgMTczLCAKLSAgICAxLCAyNDUsIDE2NSwgMTczLCAxLCAyNTQsIDEwOCwgMTczLCAxLCAyMjcsIDQ5LCAxNzMsIDEsIDI1MywgMTA4LCAxNzMsIDEsIAotICAgIDE4MSwgMTczLCAxLCAyMzQsIDEzOCwgMTczLCAxLCAyNDMsIDExMCwgMTczLCAxLCAyNDIsIDIyNSwgMTczLCAxLCAyMjksIAotICAgIDE1OSwgMTczLCAxLCAyNTAsIDIxOSwgMTczLCAxLCAyNTAsIDkyLCAxNzMsIDEsIDIzNSwgMTM5LCAxNzMsIDEsIDIzNSwgCi0gICAgMTE1LCAxNzMsIDEsIDIyOCwgMjMsIDE3MywgMSwgMjE2LCAxMTUsIDE3MywgMSwgMjE2LCAxMDUsIDE3MywgMSwgMjQ4LCAKLSAgICA4NiwgMTczLCAxLCAyNDgsIDcwLCAxNzMsIDEsIDIyOCwgMTk4LCAxNzMsIDEsIDIxOCwgNTIsIDE3MywgMSwgMjE3LCAxNjEsIAotICAgIDE3MywgMSwgMjQ4LCAxNjQsIDE3MywgMSwgMjQ3LCAyMzIsIDE3MywgMSwgMjA1LCAxNzMsIDEsIDE5MywgMTczLCAxLCAKLSAgICAyMjYsIDIzLCAxNzMsIDEsIDI1MiwgMTA3LCAxNzMsIDEsIDI1MSwgMTk1LCAxNzMsIDEsIDE4OCwgMTczLCAxLCAxODYsIAotICAgIDE3MywgMSwgMjAzLCAxNzMsIDEsIDIzMywgMTU3LCAxNzMsIDEsIDIzMiwgMjEzLCAxNzMsIDEsIDIxNSwgMSwgMTczLCAxLCAKLSAgICAyMjEsIDI0LCAxNzMsIDEsIDIyMiwgMjAyLCAxNzMsIDEsIDE1OSwgMTczLCA1LCAyMjgsIDYwLCAxNzMsIDMwLCA1LCAyNTQsIAotICAgIDIzMiwgMTczLCAzMCwgNSwgNzIsIDE3MywgMzAsIDUsIDIzNiwgMjgsIDE3MywgMzAsIDUsIDY5LCAxNzMsIDMwLCA1LCAKLSAgICAyMTUsIDkyLCAxNzMsIDMwLCA1LCAyNDUsIDE2NSwgMTczLCAzMCwgNSwgMjU0LCAxMDgsIDE3MywgMzAsIDUsIDIyNywgNDksIAotICAgIDE3MywgMzAsIDUsIDI1MywgMTA4LCAxNzMsIDUsIDIxNCwgMTMzLCAxNzMsIDUsIDIxNSwgMTg3LCAxNzMsIDEsIDIzNCwgCi0gICAgMTIxLCAxNzMsIDEsIDI0MiwgMjAyLCAxNzMsIDEsIDIxMiwgMTA5LCAxNzMsIDEsIDIyMywgODEsIDE3MywgMSwgMjQ0LCAKLSAgICAxNjQsIDE3MywgMjEsIDIxMiwgNzksIDE3MywgMjEsIDExNiwgMTczLCAyMSwgMTA5LCAxNzMsIDIxLCAxNjYsIDE3MywgMjEsIAotICAgIDE2MywgMTczLCAyMSwgMTgwLCAxNzMsIDIxLCAxODksIDE3MywgMjEsIDE5OCwgMTczLCAyMSwgMTk1LCAxNzMsIDIxLCAKLSAgICAyMDAsIDE3MywgMjE3LCAyNywgMTczLCAyNTQsIDE1OCwgMTczLCAyMzUsIDE3NiwgMTczLCAyMTUsIDExNywgMTczLCAyNDUsIAotICAgIDEzOCwgMjI3LCA1NCwgMTczLCA1LCAyMTMsIDY3LCAxNjQsIDUsIDI1MCwgMTg3LCAxNjQsIDUsIDI1MywgMjQyLCAxNjQsIAotICAgIDUsIDIxNCwgMTI4LCAxNjQsIDEsIDYxLCAxNjQsIDEsIDI1NCwgMjMyLCAxNjQsIDEsIDcyLCAxNjQsIDEsIDIzNiwgMjgsIAotICAgIDE2NCwgMSwgNjksIDE2NCwgMSwgMjE1LCA5MiwgMTY0LCAxLCAxNjEsIDE0OSwgMTY0LCAxLCAxNjEsIDE1MCwgMTY0LCAzMCwgCi0gICAgMjUwLCAxOTAsIDc0LCAxNjQsIDEsIDc0LCAxNjQsIDEsIDI1NCwgMTA4LCAxNjQsIDMwLCAyNTAsIDE5MCwgNzUsIDE2NCwgCi0gICAgMSwgNzUsIDE2NCwgMSwgMjUzLCAxMDgsIDE2NCwgMSwgMTgxLCAxNjQsIDEsIDIzNCwgMTM4LCAxNjQsIDEsIDI0MywgMTEwLCAKLSAgICAxNjQsIDEsIDI0MiwgMjI1LCAxNjQsIDEsIDIyOSwgMTU5LCAxNjQsIDEsIDI1MCwgMjE5LCAxNjQsIDEsIDI1MCwgOTIsIAotICAgIDE2NCwgMSwgMjM1LCAxMzksIDE2NCwgMSwgMjM1LCAxMTUsIDE2NCwgMSwgMjI4LCAyMywgMTY0LCAxLCAyMTYsIDExNSwgCi0gICAgMTY0LCAxLCAyMTYsIDEwNSwgMTY0LCAxLCAyNDgsIDg2LCAxNjQsIDEsIDI0OCwgNzAsIDE2NCwgMSwgMjI4LCAxOTgsIAotICAgIDE2NCwgMSwgMjE4LCA1MiwgMTY0LCAxLCAyMTcsIDE2MSwgMTY0LCAxLCAyNDgsIDE2NCwgMTY0LCAxLCAyNDcsIDIzMiwgCi0gICAgMTY0LCAxLCAyMDUsIDE2NCwgMSwgMTkzLCAxNjQsIDEsIDIyNiwgMjMsIDE2NCwgMSwgMjUyLCAxMDcsIDE2NCwgMSwgMjUxLCAKLSAgICAxOTUsIDE2NCwgMSwgMTg4LCAxNjQsIDEsIDE4NiwgMTY0LCAxLCAyMDMsIDE2NCwgMSwgMjMzLCAxNTcsIDE2NCwgMSwgCi0gICAgMjMyLCAyMTMsIDE2NCwgMSwgMjE1LCAxLCAxNjQsIDEsIDIyMSwgMjQsIDE2NCwgMSwgMjE5LCAxNTcsIDE2NCwgMSwgMjIyLCAKLSAgICAyMDIsIDE2NCwgMSwgMTU5LCAxNjQsIDUsIDIyOCwgNjAsIDE2NCwgNSwgMjUzLCA5MSwgMTY0LCAzMCwgNSwgMjU0LCAyMzIsIAotICAgIDE2NCwgMzAsIDUsIDcyLCAxNjQsIDMwLCA1LCAyMzYsIDI4LCAxNjQsIDMwLCA1LCA2OSwgMTY0LCAzMCwgNSwgMjE1LCA5MiwgCi0gICAgMTY0LCAzMCwgNSwgMTYxLCAxNDksIDE2NCwgMzAsIDUsIDE2MSwgMjIzLCA4MiwgMTY0LCAzMCwgNSwgMjUwLCAxOTAsIDc0LCAKLSAgICAxNjQsIDMwLCA1LCA3NCwgMTY0LCAzMCwgNSwgMjU0LCAxMDgsIDE2NCwgMzAsIDUsIDI1MCwgMTkwLCA3NSwgMTY0LCAzMCwgCi0gICAgNSwgNzUsIDE2NCwgMzAsIDUsIDI1MywgMTA4LCAxNjQsIDUsIDIxNCwgMTMzLCAxNjQsIDIyNywgNzAsIDE2NCwgMSwgMTYxLCAKLSAgICAyMjMsIDgyLCAxNjQsIDEsIDE2MSwgMjMyLCAyMTQsIDE2NCwgMzAsIDUsIDE2MSwgMTUwLCAxNjQsIDMwLCA1LCAxNjEsIAotICAgIDIzMiwgMjE0LCAxNjQsIDIxLCAyMTIsIDc5LCAxNjQsIDIxLCAxMTYsIDE2NCwgMjEsIDEwOSwgMTY0LCAyMSwgMTY2LCAKLSAgICAxNjQsIDIxLCAxNjMsIDE2NCwgMjEsIDE4MCwgMTY0LCAyMSwgMTg5LCAxNjQsIDIxLCAxOTgsIDE2NCwgMjEsIDE5NSwgCi0gICAgMTY0LCAyMSwgMjAwLCAxNjQsIDIyMywgMjksIDUyLCAxNDcsIDUsIDI1MCwgMTg3LCAxNDcsIDUsIDI1MywgMjQyLCAxNDcsIAotICAgIDUsIDIxNCwgMTI4LCAxNDcsIDEsIDYxLCAxNDcsIDEsIDI1NCwgMjMyLCAxNDcsIDEsIDcyLCAxNDcsIDEsIDIzNiwgMjgsIAotICAgIDE0NywgMSwgNjksIDE0NywgMSwgMjE1LCA5MiwgMTQ3LCAxLCAxNjEsIDE0OSwgMTQ3LCAxLCAxNjEsIDE1MCwgMTQ3LCAxLCAKLSAgICA3NCwgMTQ3LCAxLCAyNTQsIDEwOCwgMTQ3LCAxLCA3NSwgMTQ3LCAxLCAyNTMsIDEwOCwgMTQ3LCAxLCAxODEsIDE0NywgMSwgCi0gICAgMjM0LCAxMzgsIDE0NywgMSwgMjQzLCAxMTAsIDE0NywgMSwgMjQyLCAyMjUsIDE0NywgMSwgMjI5LCAxNTksIDE0NywgMSwgCi0gICAgMjUwLCAyMTksIDE0NywgMSwgMjUwLCA5MiwgMTQ3LCAxLCAyMzUsIDEzOSwgMTQ3LCAxLCAyMzUsIDExNSwgMTQ3LCAxLCAKLSAgICAyMjgsIDIzLCAxNDcsIDEsIDIxNiwgMTE1LCAxNDcsIDEsIDIxNiwgMTA1LCAxNDcsIDEsIDI0OCwgODYsIDE0NywgMSwgCi0gICAgMjQ4LCA3MCwgMTQ3LCAxLCAyMjgsIDE5OCwgMTQ3LCAxLCAyMTgsIDUyLCAxNDcsIDEsIDIxNywgMTYxLCAxNDcsIDEsIAotICAgIDI0OCwgMTY0LCAxNDcsIDEsIDI0NywgMjMyLCAxNDcsIDEsIDIwNSwgMTQ3LCAxLCAxOTMsIDE0NywgMSwgMjI2LCAyMywgCi0gICAgMTQ3LCAxLCAyNTIsIDEwNywgMTQ3LCAxLCAyNTEsIDE5NSwgMTQ3LCAxLCAxODgsIDE0NywgMSwgMTg2LCAxNDcsIDEsIAotICAgIDIwMywgMTQ3LCAxLCAyMzMsIDE1NywgMTQ3LCAxLCAyMzIsIDIxMywgMTQ3LCAxLCAyMTUsIDEsIDE0NywgMSwgMjIxLCAyNCwgCi0gICAgMTQ3LCAxLCAyMTksIDE1NywgMTQ3LCAxLCAyMjIsIDIwMiwgMTQ3LCAxLCAxNTksIDE0NywgNSwgMjI4LCA2MCwgMTQ3LCA1LCAKLSAgICAyNTMsIDkxLCAxNDcsIDMwLCA1LCAyNTQsIDIzMiwgMTQ3LCAzMCwgNSwgNzIsIDE0NywgMzAsIDUsIDIzNiwgMjgsIDE0NywgCi0gICAgMzAsIDUsIDY5LCAxNDcsIDMwLCA1LCAyMTUsIDkyLCAxNDcsIDMwLCA1LCAxNjEsIDE0OSwgMTQ3LCAzMCwgNSwgMTYxLCAKLSAgICAyMjMsIDgyLCAxNDcsIDMwLCA1LCA3NCwgMTQ3LCAzMCwgNSwgMjU0LCAxMDgsIDE0NywgMzAsIDUsIDc1LCAxNDcsIDMwLCAKLSAgICA1LCAyNTMsIDEwOCwgMTQ3LCA1LCAyMTQsIDEzMywgMTQ3LCAyNTQsIDEwOSwgMjMzLCA0NywgNzcsIDE0NywgMjUzLCAxMDksIAotICAgIDIzMywgNDcsIDc3LCAxNDcsIDEsIDIyMywgODEsIDE0NywgMSwgMjIzLCAxOTIsIDE0NywgMSwgMjEyLCAxNjAsIDE0NywgMSwgCi0gICAgMTYxLCAyMjMsIDgyLCAxNDcsIDEsIDE2MSwgMjMyLCAyMTQsIDE0NywgMzAsIDUsIDE2MSwgMTUwLCAxNDcsIDMwLCA1LCAKLSAgICAxNjEsIDIzMiwgMjE0LCAxNDcsIDIxLCAyMTIsIDc5LCAxNDcsIDIxLCAxMTYsIDE0NywgMjEsIDEwOSwgMTQ3LCAyMSwgCi0gICAgMTY2LCAxNDcsIDIxLCAxNjMsIDE0NywgMjEsIDE4MCwgMTQ3LCAyMSwgMTg5LCAxNDcsIDIxLCAxOTgsIDE0NywgMjEsIAotICAgIDE5NSwgMTQ3LCAyMSwgMjAwLCAxNDcsIDIzNSwgMTU5LCAxNDcsIDEsIDIxNCwgNDksIDE0NywgMjQzLCAyMjgsIDEyMiwgCi0gICAgMjI0LCAxNjYsIDE0NywgMjQzLCAyMjgsIDEyMiwgMjQyLCA5LCAxNDcsIDI0MywgMjI4LCAxMzMsIDIyNCwgMTY0LCAxNDcsIAotICAgIDI0MywgMjI4LCAxMjIsIDIyMCwgNDUsIDE0NywgMjQzLCAyMjgsIDEyMiwgMjQ1LCAxNDUsIDE0NywgMjQzLCAyMjgsIDEzMywgCi0gICAgMjIwLCA0NCwgMTc4LCA1LCAyNTMsIDI0MiwgMTc4LCA1LCAyMTQsIDEyOCwgMTc4LCAxLCA2MSwgMTc4LCAxLCAyNTQsIAotICAgIDIzMiwgMTc4LCAxLCA3MiwgMTc4LCAxLCAyMzYsIDI4LCAxNzgsIDEsIDY5LCAxNzgsIDEsIDIxNSwgOTIsIDE3OCwgMSwgCi0gICAgNzQsIDE3OCwgMSwgMjQ1LCAxNjUsIDE3OCwgMSwgMjU0LCAxMDgsIDE3OCwgMSwgNzUsIDE3OCwgMSwgMjI3LCA0OSwgMTc4LCAKLSAgICAxLCAyNTMsIDEwOCwgMTc4LCAxLCAxODEsIDE3OCwgMSwgMjI5LCAxNTksIDE3OCwgMSwgMjUwLCAyMTksIDE3OCwgMSwgCi0gICAgMjM1LCAxMzksIDE3OCwgMSwgMjI4LCAyMywgMTc4LCAxLCAyMTYsIDExNSwgMTc4LCAxLCAyMjgsIDE5OCwgMTc4LCAxLCAKLSAgICAyMTgsIDUyLCAxNzgsIDEsIDIwNSwgMTc4LCAxLCAyMjgsIDE4OSwgMTc4LCAxLCAxOTMsIDE3OCwgMSwgMTg4LCAxNzgsIDEsIAotICAgIDE4NiwgMTc4LCAxLCAyMDMsIDE3OCwgMSwgMjIzLCA4MSwgMTc4LCAxLCAyMzMsIDE1NywgMTc4LCAxLCAyMzIsIDIxMywgCi0gICAgMTc4LCAxLCAyMzIsIDIxMiwgMTc4LCAxLCAyMTUsIDEsIDE3OCwgMSwgMjIxLCAyNCwgMTc4LCAxLCAyMTksIDE1NywgMTc4LCAKLSAgICAxLCAyMjIsIDIwMiwgMTc4LCAxLCAxNTksIDE3OCwgMzAsIDUsIDI1NCwgMjMyLCAxNzgsIDMwLCA1LCA3MiwgMTc4LCAzMCwgCi0gICAgNSwgMjM2LCAyOCwgMTc4LCAzMCwgNSwgNjksIDE3OCwgMzAsIDUsIDIxNSwgOTIsIDE3OCwgMzAsIDUsIDc0LCAxNzgsIDMwLCAKLSAgICA1LCAyNDUsIDE2NSwgMTc4LCAzMCwgNSwgMjU0LCAxMDgsIDE3OCwgMzAsIDUsIDc1LCAxNzgsIDMwLCA1LCAyMjcsIDQ5LCAKLSAgICAxNzgsIDMwLCA1LCAyNTMsIDEwOCwgMTc4LCA1LCAyMTQsIDEzMywgMTc4LCAyMjcsIDcwLCAxNzgsIDI1MywgMTA5LCAyMzMsIAotICAgIDQ3LCA3NywgMTc4LCAyMSwgMjEyLCA3OSwgMTc4LCAyMSwgMTE2LCAxNzgsIDIxLCAxMDksIDE3OCwgMjEsIDE2NiwgMTc4LCAKLSAgICAyMSwgMTYzLCAxNzgsIDIxLCAxODAsIDE3OCwgMjEsIDE4OSwgMTc4LCAyMSwgMTk4LCAxNzgsIDIxLCAxOTUsIDE3OCwgMjEsIAotICAgIDIwMCwgMTc4LCA1MCwgMjE3LCAyMDAsIDE3OCwgNTAsIDEyMiwgMjQwLCAyMDAsIDE3OCwgNTAsIDEyMiwgMjE3LCAxMDAsIAotICAgIDE3OCwgMjQ4LCA5MiwgNTIsIDE3OCwgMjMwLCAyMDUsIDUyLCAxNzgsIDIxMywgMzYsIDUyLCAxNzgsIDI0OCwgMzgsIDUyLCAKLSAgICAxNzgsIDI0OSwgNzksIDUyLCAxNzgsIDI1MywgMTUzLCA3OCwgNTIsIDE3OCwgMjIzLCAyOSwgNTIsIDE3OCwgNTAsIDUyLCAKLSAgICAxMzksIDUsIDI1MCwgMTg3LCAxMzksIDUsIDI1MywgMjQyLCAxMzksIDUsIDIxNCwgMTI4LCAxMzksIDEsIDYxLCAxMzksIDEsIAotICAgIDI1NCwgMjMyLCAxMzksIDEsIDcyLCAxMzksIDEsIDIzNiwgMjgsIDEzOSwgMSwgNjksIDEzOSwgMSwgMjE1LCA5MiwgMTM5LCAKLSAgICAxLCAxNjEsIDE0OSwgMTM5LCAxLCAxNjEsIDE1MCwgMTM5LCAxLCA3NCwgMTM5LCAxLCAyNDUsIDE2NSwgMTM5LCAxLCAyNTQsIAotICAgIDEwOCwgMTM5LCAxLCA3NSwgMTM5LCAxLCAyMjcsIDQ5LCAxMzksIDEsIDI1MywgMTA4LCAxMzksIDEsIDE4MSwgMTM5LCAxLCAKLSAgICAyMzQsIDEzOCwgMTM5LCAxLCAyNDMsIDExMCwgMTM5LCAxLCAyNDIsIDIyNSwgMTM5LCAxLCAyMjksIDE1OSwgMTM5LCAxLCAKLSAgICAyNTAsIDIxOSwgMTM5LCAxLCAyNTAsIDkyLCAxMzksIDEsIDIzNSwgMTM5LCAxMzksIDEsIDIzNSwgMTE1LCAxMzksIDEsIAotICAgIDIyOCwgMjMsIDEzOSwgMSwgMjE2LCAxMTUsIDEzOSwgMSwgMjE2LCAxMDUsIDEzOSwgMSwgMjQ4LCA4NiwgMTM5LCAxLCAKLSAgICAyNDgsIDcwLCAxMzksIDEsIDIyOCwgMTk4LCAxMzksIDEsIDIxOCwgNTIsIDEzOSwgMSwgMjE3LCAxNjEsIDEzOSwgMSwgCi0gICAgMjQ4LCAxNjQsIDEzOSwgMSwgMjQ3LCAyMzIsIDEzOSwgMSwgMjA1LCAxMzksIDEsIDE5MywgMTM5LCAxLCAyMjYsIDIzLCAKLSAgICAxMzksIDEsIDI1MiwgMTA3LCAxMzksIDEsIDI1MSwgMTk1LCAxMzksIDEsIDE4OCwgMTM5LCAxLCAxODYsIDEzOSwgMSwgCi0gICAgMjAzLCAxMzksIDEsIDIyMywgODEsIDEzOSwgMSwgMjMzLCAxNTcsIDEzOSwgMSwgMjMyLCAyMTMsIDEzOSwgMSwgMjE1LCAxLCAKLSAgICAxMzksIDEsIDIyMSwgMjQsIDEzOSwgMSwgMjE5LCAxNTcsIDEzOSwgMSwgMjIyLCAyMDIsIDEzOSwgMSwgMTU5LCAxMzksIDUsIAotICAgIDI1MywgOTEsIDEzOSwgMzAsIDUsIDI1NCwgMjMyLCAxMzksIDMwLCA1LCA3MiwgMTM5LCAzMCwgNSwgMjM2LCAyOCwgMTM5LCAKLSAgICAzMCwgNSwgNjksIDEzOSwgMzAsIDUsIDIxNSwgOTIsIDEzOSwgMzAsIDUsIDE2MSwgMTQ5LCAxMzksIDMwLCA1LCAxNjEsIAotICAgIDIyMywgODIsIDEzOSwgMzAsIDUsIDc0LCAxMzksIDMwLCA1LCAyNDUsIDE2NSwgMTM5LCAzMCwgNSwgMjU0LCAxMDgsIDEzOSwgCi0gICAgMzAsIDUsIDc1LCAxMzksIDMwLCA1LCAyMjcsIDQ5LCAxMzksIDMwLCA1LCAyNTMsIDEwOCwgMTM5LCA1LCAyMTQsIDEzMywgCi0gICAgMTM5LCAyMzMsIDQ3LCA3NywgMTM5LCAyNTQsIDEwOSwgMjMzLCA0NywgNzcsIDEzOSwgMSwgMjE2LCAxNDEsIDEzOSwgMSwgCi0gICAgMjQ1LCAyNDksIDEzOSwgMSwgMTYxLCAyMjMsIDgyLCAxMzksIDEsIDE2MSwgMjMyLCAyMTQsIDEzOSwgMzAsIDUsIDE2MSwgCi0gICAgMTUwLCAxMzksIDMwLCA1LCAxNjEsIDIzMiwgMjE0LCAxMzksIDIxLCAyMTIsIDc5LCAxMzksIDIxLCAxMTYsIDEzOSwgMjEsIAotICAgIDEwOSwgMTM5LCAyMSwgMTY2LCAxMzksIDIxLCAxNjMsIDEzOSwgMjEsIDE4MCwgMTM5LCAyMSwgMTg5LCAxMzksIDIxLCAKLSAgICAxOTgsIDEzOSwgMjEsIDE5NSwgMTM5LCAyMSwgMjAwLCAxMzksIDI0MywgMjI4LCAyMSwgMjEyLCA4MCwgMzEsIDIyNywgCi0gICAgMTAyLCAyMjUsIDEwMywgNjUsIDE2MywgMTM5LCAyNDMsIDIyOCwgMjEsIDEyMiwgMzEsIDIyNywgMTAyLCAyMjUsIDEwMywgCi0gICAgNjUsIDE2MywgMTM5LCAyNDMsIDIyOCwgMjEsIDExNywgMzEsIDIyNywgMTAyLCAyMjUsIDEwMywgNjUsIDE2MywgMTM5LCAKLSAgICAyNDMsIDIyOCwgMjEsIDEzMywgMzEsIDIyNywgMTAyLCAyMjUsIDEwMywgNjUsIDE2MywgMTM5LCAyNDMsIDIyOCwgMjEsIAotICAgIDEyMiwgMzEsIDI0NSwgOSwgMjI1LCAxMDMsIDY1LCAxNjMsIDEzOSwgMjQzLCAyMjgsIDIxLCAxMTcsIDMxLCAyNDUsIDksIAotICAgIDIyNSwgMTAzLCA2NSwgMTYzLCAxMzksIDI0MywgMjI4LCAyMSwgMTMzLCAzMSwgMjQ1LCA5LCAyMjUsIDEwMywgNjUsIDE2MywgCi0gICAgMTM5LCA1LCAyMTYsIDQ5LCAxNTUsIDUsIDI1MywgMjQyLCAxNTUsIDUsIDIxNCwgMTI4LCAxNTUsIDEsIDYxLCAxNTUsIDEsIAotICAgIDI1NCwgMjMyLCAxNTUsIDEsIDcyLCAxNTUsIDEsIDIzNiwgMjgsIDE1NSwgMSwgNjksIDE1NSwgMSwgMjE1LCA5MiwgMTU1LCAKLSAgICAxLCAxNjEsIDE0OSwgMTU1LCAxLCAxNjEsIDE1MCwgMTU1LCAxLCA3NCwgMTU1LCAxLCAyNDUsIDE2NSwgMTU1LCAxLCAyNTQsIAotICAgIDEwOCwgMTU1LCAxLCA3NSwgMTU1LCAxLCAyMjcsIDQ5LCAxNTUsIDEsIDI1MywgMTA4LCAxNTUsIDEsIDE4MSwgMTU1LCAxLCAKLSAgICAyMzQsIDEzOCwgMTU1LCAxLCAyNDMsIDExMCwgMTU1LCAxLCAyNDIsIDIyNSwgMTU1LCAxLCAyMjksIDE1OSwgMTU1LCAxLCAKLSAgICAyNTAsIDIxOSwgMTU1LCAxLCAyNTAsIDkyLCAxNTUsIDEsIDIzNSwgMTM5LCAxNTUsIDEsIDIzNSwgMTE1LCAxNTUsIDEsIAotICAgIDIyOCwgMjMsIDE1NSwgMSwgMjE2LCAxMTUsIDE1NSwgMSwgMjE2LCAxMDUsIDE1NSwgMSwgMjQ4LCA4NiwgMTU1LCAxLCAKLSAgICAyNDgsIDcwLCAxNTUsIDEsIDIyOCwgMTk4LCAxNTUsIDEsIDIxOCwgNTIsIDE1NSwgMSwgMjE3LCAxNjEsIDE1NSwgMSwgCi0gICAgMjQ4LCAxNjQsIDE1NSwgMSwgMjQ3LCAyMzIsIDE1NSwgMSwgMjA1LCAxNTUsIDEsIDE5MywgMTU1LCAxLCAyMjYsIDIzLCAKLSAgICAxNTUsIDEsIDI1MiwgMTA3LCAxNTUsIDEsIDI1MSwgMTk1LCAxNTUsIDEsIDE4OCwgMTU1LCAxLCAxODYsIDE1NSwgMSwgCi0gICAgMjAzLCAxNTUsIDEsIDIyMywgODEsIDE1NSwgMSwgMjMzLCAxNTcsIDE1NSwgMSwgMjMyLCAyMTMsIDE1NSwgMSwgMjE1LCAxLCAKLSAgICAxNTUsIDEsIDIyMSwgMjQsIDE1NSwgMSwgMjE5LCAxNTcsIDE1NSwgMSwgMjIyLCAyMDIsIDE1NSwgMSwgMTU5LCAxNTUsIDUsIAotICAgIDIyOCwgNjAsIDE1NSwgNSwgMjUzLCA5MSwgMTU1LCAzMCwgNSwgMjU0LCAyMzIsIDE1NSwgMzAsIDUsIDcyLCAxNTUsIDMwLCAKLSAgICA1LCAyMzYsIDI4LCAxNTUsIDMwLCA1LCA2OSwgMTU1LCAzMCwgNSwgMjE1LCA5MiwgMTU1LCAzMCwgNSwgMTYxLCAxNDksIAotICAgIDE1NSwgMzAsIDUsIDE2MSwgMjIzLCA4MiwgMTU1LCAzMCwgNSwgNzQsIDE1NSwgMzAsIDUsIDI0NSwgMTY1LCAxNTUsIDMwLCAKLSAgICA1LCAyNTQsIDEwOCwgMTU1LCAzMCwgNSwgNzUsIDE1NSwgMzAsIDUsIDIyNywgNDksIDE1NSwgMzAsIDUsIDI1MywgMTA4LCAKLSAgICAxNTUsIDUsIDIxNCwgMTMzLCAxNTUsIDIzMywgNDcsIDc3LCAxNTUsIDI1NCwgMTA5LCAyMzMsIDQ3LCA3NywgMTU1LCAxLCAKLSAgICAyNDQsIDE2NCwgMTU1LCAxLCAxNjEsIDIyMywgODIsIDE1NSwgMSwgMTYxLCAyMzIsIDIxNCwgMTU1LCAzMCwgNSwgMTYxLCAKLSAgICAxNTAsIDE1NSwgMzAsIDUsIDE2MSwgMjMyLCAyMTQsIDE1NSwgMjEsIDIxMiwgNzksIDE1NSwgMjEsIDExNiwgMTU1LCAyMSwgCi0gICAgMTA5LCAxNTUsIDIxLCAxNjYsIDE1NSwgMjEsIDE2MywgMTU1LCAyMSwgMTgwLCAxNTUsIDIxLCAxODksIDE1NSwgMjEsIAotICAgIDE5OCwgMTU1LCAyMSwgMTk1LCAxNTUsIDIxLCAyMDAsIDE1NSwgNSwgMjM1LCAxMDQsIDE1NSwgNSwgMjE1LCAxMzIsIDEzMCwgCi0gICAgNSwgMjUzLCAyNDIsIDEzMCwgNSwgMjE0LCAxMjgsIDEzMCwgMSwgNjEsIDEzMCwgMSwgMjU0LCAyMzIsIDEzMCwgMSwgNzIsIAotICAgIDEzMCwgMSwgMjM2LCAyOCwgMTMwLCAxLCA2OSwgMTMwLCAxLCAyMTUsIDkyLCAxMzAsIDEsIDE2MSwgMTQ5LCAxMzAsIDEsIAotICAgIDE2MSwgMTUwLCAxMzAsIDEsIDc0LCAxMzAsIDEsIDI0NSwgMTY1LCAxMzAsIDEsIDI1NCwgMTA4LCAxMzAsIDEsIDc1LCAKLSAgICAxMzAsIDEsIDIyNywgNDksIDEzMCwgMSwgMjUzLCAxMDgsIDEzMCwgMSwgMTgxLCAxMzAsIDEsIDIzNCwgMTM4LCAxMzAsIDEsIAotICAgIDI0MywgMTEwLCAxMzAsIDEsIDI0MiwgMjI1LCAxMzAsIDEsIDIyOSwgMTU5LCAxMzAsIDEsIDI1MCwgMjE5LCAxMzAsIDEsIAotICAgIDI1MCwgOTIsIDEzMCwgMSwgMjM1LCAxMzksIDEzMCwgMSwgMjM1LCAxMTUsIDEzMCwgMSwgMjI4LCAyMywgMTMwLCAxLCAKLSAgICAyMTYsIDExNSwgMTMwLCAxLCAyMTYsIDEwNSwgMTMwLCAxLCAyNDgsIDg2LCAxMzAsIDEsIDI0OCwgNzAsIDEzMCwgMSwgCi0gICAgMjI4LCAxOTgsIDEzMCwgMSwgMjE4LCA1MiwgMTMwLCAxLCAyMTcsIDE2MSwgMTMwLCAxLCAyNDgsIDE2NCwgMTMwLCAxLCAKLSAgICAyNDcsIDIzMiwgMTMwLCAxLCAyMDUsIDEzMCwgMSwgMjI4LCAxODksIDEzMCwgMSwgMTkzLCAxMzAsIDEsIDIyNiwgMjMsIAotICAgIDEzMCwgMSwgMjUyLCAxMDcsIDEzMCwgMSwgMjUxLCAxOTUsIDEzMCwgMSwgMTg4LCAxMzAsIDEsIDE4NiwgMTMwLCAxLCAKLSAgICAyMDMsIDEzMCwgMSwgMjIzLCA4MSwgMTMwLCAxLCAyMzMsIDE1NywgMTMwLCAxLCAyMzIsIDIxMywgMTMwLCAxLCAyMzIsIAotICAgIDIxMiwgMTMwLCAxLCAyMTUsIDEsIDEzMCwgMSwgMjIxLCAyNCwgMTMwLCAxLCAyMTksIDE1NywgMTMwLCAxLCAyMjIsIDIwMiwgCi0gICAgMTMwLCAxLCAxNTksIDEzMCwgMSwgMjE2LCA4OCwgMTMwLCA1LCAyNTMsIDkxLCAxMzAsIDMwLCA1LCAyNTQsIDIzMiwgMTMwLCAKLSAgICAzMCwgNSwgNzIsIDEzMCwgMzAsIDUsIDIzNiwgMjgsIDEzMCwgMzAsIDUsIDY5LCAxMzAsIDMwLCA1LCAyMTUsIDkyLCAxMzAsIAotICAgIDMwLCA1LCAxNjEsIDE0OSwgMTMwLCAzMCwgNSwgMTYxLCAyMjMsIDgyLCAxMzAsIDMwLCA1LCA3NCwgMTMwLCAzMCwgNSwgCi0gICAgMjQ1LCAxNjUsIDEzMCwgMzAsIDUsIDI1NCwgMTA4LCAxMzAsIDMwLCA1LCA3NSwgMTMwLCAzMCwgNSwgMjI3LCA0OSwgMTMwLCAKLSAgICAzMCwgNSwgMjUzLCAxMDgsIDEzMCwgNSwgMjE0LCAxMzMsIDEzMCwgMSwgNjIsIDIyMywgMjI1LCAxMzAsIDI1MywgMTA5LCAKLSAgICAyMzMsIDQ3LCA3NywgMTMwLCAxLCAxNjEsIDIyMywgODIsIDEzMCwgMSwgMTYxLCAyMzIsIDIxNCwgMTMwLCAzMCwgNSwgCi0gICAgMTYxLCAxNTAsIDEzMCwgMzAsIDUsIDE2MSwgMjMyLCAyMTQsIDEzMCwgMjEsIDIxMiwgNzksIDEzMCwgMjEsIDExNiwgMTMwLCAKLSAgICAyMSwgMTA5LCAxMzAsIDIxLCAxNjYsIDEzMCwgMjEsIDE2MywgMTMwLCAyMSwgMTgwLCAxMzAsIDIxLCAxODksIDEzMCwgMjEsIAotICAgIDE5OCwgMTMwLCAyMSwgMTk1LCAxMzAsIDIxLCAyMDAsIDEzMCwgNTAsIDIxNywgMjAwLCAxMzAsIDUwLCAxMjIsIDI0MCwgCi0gICAgMjAwLCAxMzAsIDUwLCAxMjIsIDIxNywgMTAwLCAxMzAsIDI0MywgMjI4LCAxMjIsIDIyNCwgMTY2LCAxMzAsIDI0MywgMjI4LCAKLSAgICAxMjIsIDI0MiwgOSwgMTMwLCAyNDMsIDIyOCwgMTMzLCAyMjQsIDE2NCwgMTMwLCAyNDgsIDk2LCA3NywgMTMwLCAxLCAyNTAsIAotICAgIDM2LCAyMjgsIDE5OSwgMTMwLCAxLCAyNTAsIDM2LCAyMDQsIDEzMCwgMSwgMjUwLCAzNiwgMjIzLCA4MiwgMTMwLCAxLCAKLSAgICAyNTAsIDM2LCAxNTAsIDEzMCwgMSwgMjUwLCAzNiwgMjMyLCAyMTQsIDEzMCwgMSwgMjUwLCAzNiwgMjM1LCAyNywgMTcyLCAKLSAgICA1LCAyNTMsIDI0MSwgMTcyLCA1LCAyMTQsIDEyNywgMTcyLCAxLCAyNTMsIDgxLCAxNzIsIDEsIDI1NCwgMTg3LCAxNzIsIDEsIAotICAgIDI1NCwgMTI4LCAxNzIsIDEsIDI1NCwgMTQzLCAxNzIsIDEsIDIzNSwgMTQ5LCAxNzIsIDEsIDIzNiwgMjcsIDE3MiwgMSwgCi0gICAgMjE1LCA4NCwgMTcyLCAxLCAyMTUsIDg2LCAxNzIsIDEsIDIzNSwgMTcxLCAxNzIsIDEsIDIzNSwgMTcyLCAxNzIsIDEsIAotICAgIDIzNiwgMTMsIDE3MiwgMSwgMjM2LCAxNSwgMTcyLCAxLCAyNDQsIDI0MSwgMTcyLCAxLCAyNDUsIDE2MSwgMTcyLCAxLCAKLSAgICAyNTQsIDk2LCAxNzIsIDEsIDIyNiwgMjMyLCAxNzIsIDEsIDIyNywgNDMsIDE3MiwgMSwgMjUzLCA5NCwgMTcyLCAxLCAyNTQsIAotICAgIDU1LCAyMzQsIDE5MywgMTcyLCAxLCAyMzIsIDE0LCAyMzQsIDE5MywgMTcyLCAxLCAyNTQsIDU1LCAyNDMsIDU4LCAxNzIsIAotICAgIDEsIDIzMiwgMTQsIDI0MywgNTgsIDE3MiwgMSwgMjM0LCAyMzQsIDIzMCwgNDAsIDE3MiwgMSwgMjIyLCAxNTIsIDI0MywgCi0gICAgNTgsIDE3MiwgMSwgMjU0LCA1NSwgMjUwLCAxNDksIDE3MiwgMSwgMjMyLCAxNCwgMjUwLCAxNDksIDE3MiwgMSwgMjU0LCAKLSAgICA1NSwgMjM1LCAxMjgsIDE3MiwgMSwgMjMyLCAxNCwgMjM1LCAxMjgsIDE3MiwgMSwgMjE4LCA0NiwgMjMwLCA0MCwgMTcyLCAKLSAgICAxLCAyMTgsIDQ2LCAyMjIsIDE1MSwgMjMwLCA0MSwgMTcyLCAxLCAyMjIsIDE1MiwgMjM1LCAxMjgsIDE3MiwgMSwgMjU0LCAKLSAgICA1NSwgMjE2LCAxMTMsIDE3MiwgMSwgMjMyLCAxNCwgMjE2LCAxMTMsIDE3MiwgMSwgMjU0LCA1NSwgMjQ4LCA3NywgMTcyLCAKLSAgICAxLCAyMzIsIDE0LCAyNDgsIDc3LCAxNzIsIDEsIDIzMCwgMTI0LCAyMzAsIDIsIDE3MiwgMSwgMjIyLCAxNTIsIDI0OCwgNzcsIAotICAgIDE3MiwgMSwgMjU0LCA1NSwgMjE3LCAyMzcsIDE3MiwgMSwgMjMyLCAxNCwgMjE3LCAyMzcsIDE3MiwgMSwgMjU0LCA1NSwgCi0gICAgMjQ4LCA5MCwgMTcyLCAxLCAyMzIsIDE0LCAyNDgsIDkwLCAxNzIsIDEsIDI0OCwgMTE5LCAyMzAsIDIsIDE3MiwgMSwgMjIyLCAKLSAgICAxNTIsIDI0OCwgOTAsIDE3MiwgMSwgMjU0LCA1NSwgMjI2LCAxMDIsIDE3MiwgMSwgMjMyLCAxNCwgMjI2LCAxMDIsIDE3MiwgCi0gICAgMSwgMjU0LCA1NSwgMjUyLCAzMiwgMTcyLCAxLCAyMzIsIDE0LCAyNTIsIDMyLCAxNzIsIDEsIDIzMSwgMTk1LCAxNzIsIDEsIAotICAgIDI1NCwgNDAsIDI1MiwgMzIsIDE3MiwgMSwgMjEzLCA0MiwgMTcyLCAxLCAyMjQsIDI2LCAxNzIsIDEsIDI0OCwgMTE5LCAKLSAgICAyMzMsIDkxLCAxNzIsIDEsIDIxNCwgMjM0LCAxNzIsIDEsIDIxOCwgNDYsIDIyMiwgMTI4LCAxNzIsIDEsIDIzMCwgMTI0LCAKLSAgICAyMjIsIDEyOCwgMTcyLCAxLCAyNDgsIDExOSwgMjIyLCAxMjgsIDE3MiwgMSwgMjQxLCAyMjYsIDE3MiwgMSwgMjMwLCAxMjQsIAotICAgIDIzMywgOTEsIDE3MiwgMSwgMjQ0LCAxMjUsIDE3MiwgNSwgMjU0LCA4NSwgMTcyLCAzMCwgNSwgMjU0LCAxMzgsIDE3MiwgCi0gICAgMzAsIDUsIDIzNCwgMTYxLCAyNTQsIDE0NSwgMTcyLCAzMCwgNSwgMjQ3LCAxODAsIDI1NCwgMTQ1LCAxNzIsIDMwLCA1LCAKLSAgICAyMzQsIDE2MSwgMjM1LCAxNjgsIDE3MiwgMzAsIDUsIDI0NywgMTgwLCAyMzUsIDE2OCwgMTcyLCAzMCwgNSwgMjM0LCAxNjEsIAotICAgIDIyNiwgMjEyLCAxNzIsIDMwLCA1LCAyNDcsIDE4MCwgMjI2LCAyMTIsIDE3MiwgMzAsIDUsIDI0MywgOTksIDE3MiwgMzAsIAotICAgIDUsIDIzNCwgMjQsIDE3MiwgMzAsIDUsIDI0NywgMTgwLCAyMzQsIDI0LCAxNzIsIDMwLCA1LCAyMzQsIDI2LCAyNDgsIDE4LCAKLSAgICAxNzIsIDMwLCA1LCAyMzQsIDI1LCAyNDIsIDI4LCAyNTQsIDEzOCwgMTcyLCAzMCwgNSwgMjM0LCAyNSwgMjQyLCAyOCwgCi0gICAgMjQ3LCAxODAsIDI1NCwgMTM4LCAxNzIsIDMwLCA1LCAyMzQsIDI1LCAyNDIsIDI4LCAyNDMsIDU3LCAxNzIsIDMwLCA1LCAKLSAgICAyNDMsIDU3LCAxNzIsIDMwLCA1LCAyNDcsIDE4MCwgMjQzLCA5OSwgMTcyLCAzMCwgNSwgMjQ3LCAxODAsIDI0MywgNTcsIAotICAgIDE3MiwgMjI1LCAyNywgMjMzLCAyMjgsIDE1NCwgMTM3LCAyMzQsIDM4LCAyMzQsIDI1MCwgMTU0LCAxMzcsIDIzNCwgMTE0LCAKLSAgICAyMzQsIDEzNCwgMTU0LCAxMzcsIDIzNCwgMTE0LCAyMzQsIDEwNywgMTU0LCAxMzcsIDIzNCwgMTE0LCAyMzQsIDEwNCwgCi0gICAgMTU0LCAxMzcsIDIzNCwgMTE0LCAyMzQsIDExMSwgMTU0LCAxMzcsIDIzNCwgMTE0LCAyMjQsIDQ2LCAxNTQsIDEzNywgMjI5LCAKLSAgICA5MSwgMjI5LCA3OCwgMTU0LCAxMzcsIDI1MCwgMjQsIDI1MCwgODMsIDE1NCwgMTM3LCAyNTAsIDI0LCAyNTAsIDMyLCAxNTQsIAotICAgIDEzNywgMjUwLCAyNCwgMjUwLCA4MiwgMTU0LCAxMzcsIDIxOSwgMjQzLCAyMTksIDI0MiwgMTU0LCAxMzcsIDI1MCwgMjQsIAotICAgIDI1MCwgMjAsIDE1NCwgMTM3LCAyMTIsIDIzNiwgMjEyLCAyNDMsIDE1NCwgMTM3LCAyNDcsIDEwMCwgMjUwLCA4OSwgMTU0LCAKLSAgICAxMzcsIDIxMSwgMjExLCAyMjYsIDExMSwgMTU0LCAxMzcsIDIxNywgMTEwLCAyMTcsIDE1MywgMTU0LCAxMzcsIDIxNywgCi0gICAgMTEwLCAyMzAsIDIxLCAxNTQsIDEzNywgMjE3LCAxMTAsIDIyNSwgMjQzLCAxNTQsIDEzNywgMjI4LCAxODYsIDIyOSwgMTgwLCAKLSAgICAxNTQsIDEzNywgMjQ3LCAxMDAsIDI0OCwgMTksIDE1NCwgMTM3LCAyMTEsIDIxMSwgMjE4LCA2LCAxNTQsIDEzNywgMjE3LCAKLSAgICAxMTAsIDIxNywgODUsIDE1NCwgMTM3LCAyMTcsIDExMCwgMjE3LCAxNTcsIDE1NCwgMTM3LCAyMTcsIDExMCwgMjE3LCAxMDcsIAotICAgIDE1NCwgMTM3LCAyMjgsIDE4NiwgMjI4LCA5MiwgMTU0LCAxMzcsIDI1MSwgMTI5LCAyNTIsIDgzLCAxNTQsIDEzNywgMjI1LCAKLSAgICAxNTEsIDIyNSwgMTc0LCAxNTQsIDEzNywgMjI1LCAyNTQsIDIyNSwgMjQ1LCAxNTQsIDEzNywgMjQ0LCAxMywgMjQ0LCAxNjQsIAotICAgIDE1NCwgMTM3LCAyMjUsIDI1NCwgMjI2LCAxNywgMTU0LCAxMzcsIDI0NCwgMTMsIDI0NCwgMTQxLCAxNTQsIDEzNywgMjI1LCAKLSAgICAyNTQsIDIyMiwgMTYyLCAxNTQsIDEzNywgMjMwLCAyMzIsIDE4OCwgMTU0LCAxMzcsIDIxMiwgMjM2LCAyMTMsIDY4LCAxNTQsIAotICAgIDEzNywgMjIzLCAxMTMsIDIyMywgNTAsIDE1NCwgMTM3LCAyMjMsIDUxLCAxNTQsIDEzNywgMjMyLCAyMDksIDIzMiwgMjM1LCAKLSAgICAxNTQsIDEzNywgMjMyLCAxNTYsIDE1NCwgMTM3LCAyMTMsIDIxNSwgMjE0LCA0NSwgMTU0LCAxMzcsIDIxOSwgMjQzLCAyMjIsIAotICAgIDE3NywgMTU0LCAxMzcsIDIxOSwgMjQzLCAyMjMsIDI1LCAxNTQsIDEzNywgMjE5LCAyNDMsIDIxOSwgMjYsIDE1NCwgMTM3LCAKLSAgICAyNDEsIDU1LCAyNDEsIDE0NSwgMTU0LCAxMzcsIDIzMiwgMjA5LCAyNTAsIDUsIDE1NCwgMTM3LCAxNTcsIDI1NCwgMjQsIAotICAgIDE1NCwgMTM3LCAyNDEsIDU1LCAyMjgsIDE4MSwgMTU0LCAxMzcsIDIyNiwgMTk1LCAxNTQsIDEzNywgMjIyLCAxNDYsIDYxLCAKLSAgICAxNTQsIDEzNywgMjMyLCA5LCAyNDIsIDAsIDE1NCwgMTM3LCAyMjIsIDE0NiwgMjU0LCAyMzIsIDE1NCwgMTM3LCAyMjIsIAotICAgIDE0NiwgMjU0LCA0NSwgMTU0LCAxMzcsIDIyMiwgMTQ2LCA3MiwgMTU0LCAxMzcsIDIyMiwgMTQ2LCAyMzYsIDI4LCAxNTQsIAotICAgIDEzNywgMjIyLCAxNDYsIDIxNSwgMTgzLCAxNTQsIDEzNywgMjIyLCAxNDYsIDIxNSwgMTgxLCAxNTQsIDEzNywgMjIyLCAKLSAgICAxNDYsIDY5LCAxNTQsIDEzNywgMjIyLCAxNDYsIDIxNSwgOTIsIDE1NCwgMTM3LCAyMjYsIDAsIDE1NCwgMjQ5LCAzOSwgMTYsIAotICAgIDI1MiwgODQsIDE1NCwgMTM3LCAyMjIsIDE0NiwgNzQsIDE1NCwgMTM3LCAyMjIsIDE0NiwgMjU0LCAxNDgsIDE1NCwgMTM3LCAKLSAgICAyMjIsIDE0NiwgNzUsIDE1NCwgMTM3LCAyMjIsIDE0NiwgMjU0LCAxMDksIDIzMiwgNCwgMTU0LCAxMzcsIDIyMiwgMTQ2LCAKLSAgICAyNTQsIDEwOSwgMjMyLCA1LCAxNTQsIDEzNywgMjMzLCAxMzAsIDE1NCwgMTM3LCAyMzIsIDEsIDE1NCwgMTM3LCAyMzIsIDIsIAotICAgIDE1NCwgMTM3LCAyMzIsIDksIDI0NSwgMTM3LCAxNTQsIDEzNywgMjMyLCA5LCAyMTcsIDEwOSwgMTU0LCAxMzcsIDIzMiwgOSwgCi0gICAgMjE2LCAxODYsIDE1NCwgMTM3LCAyMzIsIDksIDI1MCwgNzEsIDE1NCwgMTM3LCAyMTcsIDE1MSwgMTU0LCAxMzcsIDIyOSwgCi0gICAgMzYsIDE1NCwgMTM3LCAyMTMsIDYyLCAxNTQsIDEzNywgMjQ0LCA0LCAxNTQsIDIxLCAyMTIsIDc5LCAxNTQsIDIxLCAxMTYsIAotICAgIDE1NCwgMjEsIDEwOSwgMTU0LCAyMSwgMTY2LCAxNTQsIDIxLCAxNjMsIDE1NCwgMjEsIDE4MCwgMTU0LCAyMSwgMTg5LCAKLSAgICAxNTQsIDIxLCAxOTgsIDE1NCwgMjEsIDE5NSwgMTU0LCAyMSwgMjAwLCAxNTQsIDEzNywgMjU0LCAyMCwgMTU0LCAxMzcsIAotICAgIDIzNCwgMTEyLCAyMzMsIDExMiwgMSwgMjM0LCAzNywgMjMzLCAxMTIsIDEsIDIzNCwgMTE0LCAyMTgsIDIzNSwgMjMzLCAKLSAgICAxMTIsIDEsIDIzNCwgMTE0LCAyMTgsIDEzLCAyMzMsIDExMiwgMSwgMjI5LCA5MCwgMjMzLCAxMTIsIDEsIDI0OSwgMTc1LCAKLSAgICAyMzMsIDExMiwgMSwgMjE5LCAyNDMsIDIxOCwgMTMsIDIzMywgMTEyLCAxLCAyMjcsIDI1MywgMjMzLCAxMTIsIDEsIDI0NywgCi0gICAgOTksIDIzMywgMTEyLCAxLCAxMDgsIDIzMywgMTEyLCAxLCAyMTcsIDExMCwgMjE4LCAyMzUsIDIzMywgMTEyLCAxLCAyMTcsIAotICAgIDExMCwgMjE4LCAxMywgMjMzLCAxMTIsIDEsIDIyOCwgMTg1LCAyMzMsIDExMiwgMSwgMjUxLCAxMjgsIDIzMywgMTEyLCAxLCAKLSAgICAyMjUsIDE1MCwgMjMzLCAxMTIsIDEsIDIyNSwgMjU0LCAyMTgsIDIzNSwgMjMzLCAxMTIsIDEsIDI0NCwgMTMsIDIxOCwgMTMsIAotICAgIDIzMywgMTEyLCAxLCAyMjUsIDI1NCwgMjE4LCAxMywgMjMzLCAxMTIsIDEsIDI0NCwgMTMsIDIxOCwgMjM1LCAyMzMsIDExMiwgCi0gICAgMSwgMjMwLCAyMzEsIDIzMywgMTEyLCAxLCAyMTIsIDIzNSwgMjMzLCAxMTIsIDEsIDIzMiwgMjA5LCAyMzIsIDIzNSwgMjMzLCAKLSAgICAxMTIsIDEsIDIzMiwgMjA5LCAyMzIsIDE3NiwgMjMzLCAxMTIsIDEsIDIxMywgMjE0LCAyMzMsIDExMiwgMSwgMjE5LCAyNDMsIAotICAgIDIxOCwgMjM1LCAyMzMsIDExMiwgMSwgMjQxLCA1NSwgMjE4LCAyMzUsIDIzMywgMTEyLCAxLCA3NSwgMjMzLCAxMTIsIDEsIAotICAgIDI0MSwgNTUsIDIxOCwgMTMsIDIzMywgMTEyLCAyNDUsIDEyMCwgMjMzLCAxMTIsIDMwLCA1LCA2MSwgMjMzLCAxMTIsIDMwLCAKLSAgICA1LCAyMzIsIDksIDIzNCwgMjM5LCAyMzMsIDExMiwgMzAsIDUsIDI1NCwgMjMyLCAyMzMsIDExMiwgMzAsIDUsIDI1NCwgNDUsIAotICAgIDIzMywgMTEyLCAzMCwgNSwgNzIsIDIzMywgMTEyLCAzMCwgNSwgMjM2LCAyOCwgMjMzLCAxMTIsIDMwLCA1LCAyMTMsIDEwNSwgCi0gICAgMjMzLCAxMTIsIDMwLCA1LCAyMTIsIDE2MSwgMjMzLCAxMTIsIDMwLCA1LCA2OSwgMjMzLCAxMTIsIDMwLCA1LCAyMTUsIDkyLCAKLSAgICAyMzMsIDExMiwgMzAsIDUsIDIzMiwgOSwgMjM0LCAyMiwgMjMzLCAxMTIsIDIyMSwgNjUsIDUsIDIzMiwgMjA4LCAyMzMsIAotICAgIDExMiwgMjIxLCA2NSwgNSwgMjI3LCAyNTMsIDIzMywgMTEyLCAzMCwgNSwgNzQsIDIzMywgMTEyLCAzMCwgNSwgMjQ1LCAKLSAgICAxNTIsIDIzMywgMTEyLCAzMCwgNSwgNzUsIDIzMywgMTEyLCAzMCwgNSwgMjUzLCA4MywgMjMzLCAxMTIsIDMwLCA1LCAyNTQsIAotICAgIDEwOCwgMjMzLCAxMTIsIDIzNCwgMzgsIDIzMywgMTU3LCAyMzMsIDExMiwgMTYwLCAyMzIsIDksIDI0NSwgMTM3LCAyMzMsIAotICAgIDExMiwgMTYwLCAyMzIsIDksIDIxNywgMTA5LCAyMzMsIDExMiwgMTYwLCAyMzIsIDksIDIxNywgNzEsIDIzMywgMTEyLCAKLSAgICAxNjAsIDIzMiwgOSwgMjUwLCAxNTUsIDIzMywgMTEyLCAyNTAsIDE5MiwgNzcsIDIzMywgMTEyLCAyMjksIDQ1LCAyMzMsIAotICAgIDExMiwgMjEsIDIxMiwgNzksIDIzMywgMTEyLCAyMSwgMTE2LCAyMzMsIDExMiwgMjEsIDEwOSwgMjMzLCAxMTIsIDIxLCAKLSAgICAxNjYsIDIzMywgMTEyLCAyMSwgMTYzLCAyMzMsIDExMiwgMjEsIDE4MCwgMjMzLCAxMTIsIDIxLCAxODksIDIzMywgMTEyLCAKLSAgICAyMSwgMTk4LCAyMzMsIDExMiwgMjEsIDE5NSwgMjMzLCAxMTIsIDIxLCAyMDAsIDIzMywgMTEyLCAyNDEsIDU1LCAyMjgsIAotICAgIDE4NSwgMjMzLCAxMTIsIDI0MSwgNTUsIDIzMCwgMjMxLCA2MCwgNCwgMjI3LCA3MCwgNjAsIDE1MiwgMjQyLCA5NCwgMjEyLCAKLSAgICAyNDcsIDIzMSwgNTksIDIxNiwgMTQ3LCA2MSwgNjAsIDE1MiwgMjQyLCA5NCwgMjEyLCAyNDcsIDIzMSwgNTksIDI1NSwgNjIsIAotICAgIDIyMywgMTE3LCAyNTEsIDI1MywgMTg4LCA2MCwgMTUyLCAyNDIsIDk0LCAyMTIsIDI0NywgMjMxLCA1OSwgMjU1LCA2MiwgCi0gICAgMjQyLCA5NCwgMjE2LCAxMzEsIDE4OCwgNjAsIDE1MiwgNzAsIDIxMiwgMjQ3LCAyMzEsIDU5LCAyMzEsIDE1OCwgMTg4LCAKLSAgICA2MCwgMTUyLCAyNDksIDE4OSwgMjEyLCAyNDcsIDIzMSwgNTksIDIyMSwgMzAsIDE4OCwgNjAsIDE1MiwgMjUwLCAxNzEsIAotICAgIDIxMiwgMjQ3LCAyMzEsIDU5LCAyMjUsIDI0NCwgMjIxLCAxOCwgMTg4LCA2MCwgMTUyLCAyMTIsIDI0NywgMjMxLCA1OSwgCi0gICAgMjE2LCAxMzEsIDIyMSwgMTgsIDE4OCwgNjAsIDE1MiwgMjIyLCAxMjYsIDIyMSwgMTcsIDYwLCAxNTIsIDI1MSwgNTcsIAotICAgIDIxMiwgMjQ3LCAyMzEsIDU4LCA2MCwgMTUyLCAyNTEsIDE0NiwgMjIwLCAxODMsIDIxMiwgMjQ3LCAyMzEsIDU4LCA2MCwgCi0gICAgMTUyLCAyMzUsIDE5NCwgMjE2LCAxMzAsIDYwLCAxNTIsIDI0OCwgMTIsIDIxNiwgMTMxLCAyNTEsIDU2LCA2MCwgMTUyLCAKLSAgICAyMjEsIDE3LCA2MCwgMTUyLCAyMjgsIDIsIDIyMSwgMTcsIDYwLCAxNTIsIDIxNiwgMTMxLCAyMjEsIDE3LCA2MCwgMTUyLCAKLSAgICAyMjgsIDIsIDIxNiwgMTMxLCAyMjEsIDE3LCA2MCwgMTUyLCAyMjMsIDEzMywgMjUwLCA1OSwgMjE5LCAxNjgsIDIyMSwgMTcsIAotICAgIDYwLCAxNTIsIDIyMywgMTk1LCAyNDIsIDEyMiwgMjIxLCAxNywgNjAsIDE1MiwgMjUwLCAxNzEsIDI1NSwgNjYsIDIyMywgCi0gICAgNTUsIDIzMSwgMTU3LCAxODQsIDI1MCwgMTk1LCA2MCwgMTUyLCAyNDIsIDk0LCAyMTYsIDEzMCwgNjAsIDIzMiwgMTk3LCA1LCAKLSAgICAyNTAsIDkwLCAyMjMsIDU0LCA2MCwgMjMyLCAxOTcsIDUsIDIzMywgMjMsIDIyMywgNTQsIDYwLCAyNTMsIDEyOCwgNSwgCi0gICAgMjIxLCAyNywgMjQzLCA0MSwgMjU1LCA2NywgMjIzLCA1NCwgNjAsIDI1MywgMTI4LCA1LCAyNTUsIDY0LCAxOTMsIDYwLCAKLSAgICAyNTMsIDEyOCwgNSwgMjIyLCAxMDEsIDIxNiwgMTI2LCA2MCwgNSwgMjI0LCAyMywgMjQ3LCAxMTEsIDI0MywgNDAsIDYwLCAKLSAgICA1LCAyMjQsIDIzLCAyNDcsIDExMSwgMjQyLCAxNTIsIDYwLCA1LCAyMjQsIDIzLCAyNDcsIDExMSwgMjQyLCA5NSwgNjAsIDUsIAotICAgIDIyNCwgMjMsIDIzMCwgMzcsIDI0MywgNDAsIDYwLCA1LCAyMjQsIDIzLCAyMzAsIDM3LCAyNDIsIDE1MiwgNjAsIDUsIDIyNCwgCi0gICAgMjMsIDI0NywgMTExLCAyMjQsIDIzLCAyMzAsIDM2LCA2MCwgMjEsIDIxMiwgNzksIDYwLCAyMSwgMTE2LCA2MCwgMjEsIAotICAgIDEwOSwgNjAsIDIxLCAxNjYsIDYwLCAyMSwgMTYzLCA2MCwgMjEsIDE4MCwgNjAsIDIxLCAxODksIDYwLCAyMSwgMTk4LCA2MCwgCi0gICAgMjEsIDE5NSwgNjAsIDIxLCAyMDAsIDYwLCAyMSwgMTUxLCAxMTYsIDYwLCAyMSwgMTUxLCAxMDksIDYwLCAyMSwgMTUxLCAKLSAgICAxNjYsIDYwLCAyMSwgMTUxLCAxNjMsIDYwLCAyMSwgMTUxLCAxODAsIDYwLCAyMSwgMTUxLCAxODksIDYwLCAyMSwgMTUxLCAKLSAgICAxOTgsIDYwLCAyMSwgMTUxLCAxOTUsIDYwLCAyMSwgMTUxLCAyMDAsIDYwLCAyMSwgMTUxLCAyMTIsIDc5LCA2MCwgMTUyLCAKLSAgICAyNTEsIDU5LCAyMjMsIDU0LCA2MCwgMTUyLCAyMjksIDE1MSwgMjUwLCAyNTQsIDIyOCwgMTEsIDIxMiwgMTgsIDYwLCAxNTIsIAotICAgIDI1MCwgMTcxLCAyNTUsIDY2LCAyMjMsIDU1LCAyNTAsIDI1NSwgMjMxLCAxNSwgMjUwLCAxOTUsIDYwLCAxNTIsIDIyOSwgCi0gICAgMTUxLCAyNTAsIDI1NCwgMjIxLCAyOCwgMjIzLCA1NCwgNjAsIDE1MiwgMjUwLCA2OCwgMjMxLCA1OCwgNjAsIDE1MiwgMjE2LCAKLSAgICAxNDIsIDI1NSwgNjMsIDYwLCAxNTIsIDI0MiwgODEsIDIyMywgNTUsIDI0MiwgNDQsIDYwLCAxNTIsIDI0MiwgODEsIDIyMywgCi0gICAgNTUsIDI0MiwgNTAsIDYwLCAxNTIsIDI1NCwgMjUsIDIzNCwgMTI5LCAyNDIsIDQ0LCA2MCwgMTUyLCAyNTQsIDI1LCAyMzQsIAotICAgIDEyOSwgMjQyLCA1MCwgNjAsIDUsIDIxMywgNTUsIDIxNiwgMTI5LCA2MCwgNSwgMjMxLCAyMzAsIDIxNiwgMTI5LCA2MCwgMSwgCi0gICAgMTgxLCA2MCwgMSwgMjM0LCAxMzgsIDYwLCAxLCAyNDMsIDExMCwgNjAsIDEsIDI0MiwgMjI1LCA2MCwgMSwgMjI5LCAxNTksIAotICAgIDYwLCAxLCAyNTAsIDIxOSwgNjAsIDEsIDI1MCwgOTIsIDYwLCAxLCAyMzUsIDEzOSwgNjAsIDEsIDIyOCwgMjMsIDYwLCAxLCAKLSAgICAyMTYsIDExNSwgNjAsIDEsIDIxNiwgMTA1LCA2MCwgMSwgMjQ4LCA4NiwgNjAsIDEsIDI0OCwgNzAsIDYwLCAxLCAyMjgsIAotICAgIDE5OCwgNjAsIDEsIDIxOCwgNTIsIDYwLCAxLCAyMTcsIDE2MSwgNjAsIDEsIDI0OCwgMTY0LCA2MCwgMSwgMjQ3LCAyMzIsIAotICAgIDYwLCAxLCAyMDUsIDYwLCAxLCAxOTMsIDYwLCAxLCAyMjYsIDIzLCA2MCwgMSwgMjUyLCAxMDcsIDYwLCAxLCAyNTEsIDE5NSwgCi0gICAgNjAsIDEsIDE4OCwgNjAsIDEsIDIxNiwgMTQxLCA2MCwgMSwgMjE2LCAxMzMsIDYwLCAxLCAyNDUsIDI0OSwgNjAsIDEsIAotICAgIDI0NSwgMjQ0LCA2MCwgMSwgMjE0LCA0OSwgNjAsIDEsIDIxMiwgNzUsIDYwLCAxLCAyMTIsIDEwOSwgNjAsIDEsIDI1NSwgCi0gICAgNjksIDYwLCAxLCAxODYsIDYwLCAxLCAyMDMsIDYwLCAxLCAyMzMsIDE1NywgNjAsIDEsIDIyMSwgMjQsIDYwLCAxLCAyMTksIAotICAgIDE1NywgNjAsIDEsIDIyMiwgMjAyLCA2MCwgMSwgMTU5LCA2MCwgMSwgNjEsIDYwLCAxLCAyMzMsIDI0MSwgNjAsIDEsIDI0NCwgCi0gICAgNDYsIDIwMywgNjAsIDEsIDIzNCwgNTUsIDYwLCAxLCAyMjMsIDgxLCA2MCwgMzAsIDUsIDI1NCwgMjMyLCA2MCwgMzAsIDUsIAotICAgIDcyLCA2MCwgMzAsIDUsIDIzNiwgMjgsIDYwLCAzMCwgNSwgNjksIDYwLCAzMCwgNSwgMjE1LCA5MiwgNjAsIDMwLCA1LCAKLSAgICAxNjEsIDE0OSwgNjAsIDMwLCA1LCAxNjEsIDIyMywgODIsIDYwLCAzMCwgNSwgMTYxLCAxNTAsIDYwLCAzMCwgNSwgMTYxLCAKLSAgICAyMzIsIDIxNCwgNjAsIDMwLCA1LCA3NCwgNjAsIDMwLCA1LCAyNDUsIDE2NSwgNjAsIDMwLCA1LCA3NSwgNjAsIDMwLCA1LCAKLSAgICAyMjcsIDQ5LCA2MCwgNSwgMjIzLCAxMTgsIDIxOSwgMjgsIDIyOSwgMTYwLCAyMjMsIDExMiwgNjAsIDUsIDIyMywgMTE3LCAKLSAgICAyNTEsIDI1MiwgNjAsIDMwLCA1LCAyMjMsIDIwMiwgNzIsIDYwLCAzMCwgNSwgMjIzLCAyMDIsIDIzNiwgMjgsIDYwLCA1LCAKLSAgICAyMjgsIDExLCAyMTIsIDE5LCAyMzAsIDQ0LCAyNDgsIDE2NCwgNjAsIDUsIDIxOSwgMjU1LCAyMzMsIDg0LCA2MCwgMTUyLCAKLSAgICAyNDIsIDExLCA2MCwgMTUyLCAyMjYsIDE4NCwgNjAsIDUsIDIzMywgODcsIDIyMywgNTQsIDYwLCA1LCAyMTMsIDU5LCAyMjMsIAotICAgIDU0LCA2MCwgNSwgMjMzLCA4OCwgMjE2LCAxNDIsIDI1MCwgMTk1LCA2MCwgNSwgMjMxLCAxNTksIDI1MCwgMTk1LCA2MCwgNSwgCi0gICAgMjQyLCA5NywgMjUwLCAxOTYsIDIyMywgMTkzLCA2MCwgNSwgMjQyLCA5NywgMjMxLCAxNTAsIDIyMywgMTkzLCA2MCwgNSwgCi0gICAgMjM1LCAxOTEsIDIzMSwgMTU5LCAyNTAsIDE5NSwgNjAsIDIxOSwgMTgsIDUsIDIzMywgODgsIDIxNiwgMTQyLCAyNTAsIAotICAgIDE5NSwgNjAsIDIxOSwgMTgsIDUsIDIzMSwgMTU5LCAyNTAsIDE5NSwgNjAsIDIxOSwgMTgsIDUsIDIzNSwgMTkxLCAyMzEsIAotICAgIDE1OSwgMjUwLCAxOTUsIDYwLCAyMTksIDE4LCAxLCAxODEsIDYwLCAyMTksIDE4LCAxLCAyMzQsIDEzOCwgNjAsIDIxOSwgCi0gICAgMTgsIDEsIDI0MywgMTEwLCA2MCwgMjE5LCAxOCwgMSwgMjQyLCAyMjUsIDYwLCAyMTksIDE4LCAxLCAyMjksIDE1OSwgNjAsIAotICAgIDIxOSwgMTgsIDEsIDI1MCwgMjE5LCA2MCwgMjE5LCAxOCwgMSwgMjUwLCA5MiwgNjAsIDIxOSwgMTgsIDEsIDIzNSwgMTM5LCAKLSAgICA2MCwgMjE5LCAxOCwgMSwgMjI4LCAyMywgNjAsIDIxOSwgMTgsIDEsIDIxNiwgMTE1LCA2MCwgMjE5LCAxOCwgMSwgMjE2LCAKLSAgICAxMDUsIDYwLCAyMTksIDE4LCAxLCAyNDgsIDg2LCA2MCwgMjE5LCAxOCwgMSwgMjQ4LCA3MCwgNjAsIDIxOSwgMTgsIDEsIAotICAgIDIyOCwgMTk4LCA2MCwgMjE5LCAxOCwgMSwgMjE4LCA1MiwgNjAsIDIxOSwgMTgsIDEsIDIxNywgMTYxLCA2MCwgMjE5LCAxOCwgCi0gICAgMSwgMjQ4LCAxNjQsIDYwLCAyMTksIDE4LCAxLCAyNDcsIDIzMiwgNjAsIDIxOSwgMTgsIDEsIDIwNSwgNjAsIDIxOSwgMTgsIAotICAgIDEsIDE5MywgNjAsIDIxOSwgMTgsIDEsIDIyNiwgMjMsIDYwLCAyMTksIDE4LCAxLCAyNTIsIDEwNywgNjAsIDIxOSwgMTgsIAotICAgIDEsIDI1MSwgMTk1LCA2MCwgMjE5LCAxOCwgMSwgMTg4LCA2MCwgMjE5LCAxOCwgMSwgMjE2LCAxNDEsIDYwLCAyMTksIDE4LCAKLSAgICAxLCAyMTYsIDEzMywgNjAsIDIxOSwgMTgsIDEsIDI0NSwgMjQ5LCA2MCwgMjE5LCAxOCwgMSwgMjQ1LCAyNDQsIDYwLCAyMTksIAotICAgIDE4LCAxLCAyMTQsIDQ5LCA2MCwgMjE5LCAxOCwgMSwgMjEyLCA3NSwgNjAsIDIxOSwgMTgsIDEsIDIxMiwgMTA5LCA2MCwgCi0gICAgMjE5LCAxOCwgMSwgMjU1LCA2OSwgNjAsIDIxOSwgMTgsIDEsIDE4NiwgNjAsIDIxOSwgMTgsIDEsIDIwMywgNjAsIDIxOSwgCi0gICAgMTgsIDEsIDIzMywgMTU3LCA2MCwgMjE5LCAxOCwgMSwgMjIxLCAyNCwgNjAsIDIxOSwgMTgsIDEsIDIxOSwgMTU3LCA2MCwgCi0gICAgMjE5LCAxOCwgMSwgMjIyLCAyMDIsIDYwLCAyMTksIDE4LCAxLCAxNTksIDYwLCAyMTksIDE4LCAxLCA2MSwgNjAsIDIxOSwgCi0gICAgMTgsIDEsIDIzMywgMjQxLCA2MCwgMjE5LCAxOCwgMSwgMjQ0LCA0NiwgMjE0LCA0OSwgNjAsIDIxOSwgMTgsIDEsIDI0NCwgCi0gICAgNDYsIDE4NiwgNjAsIDIxOSwgMTgsIDEsIDI0NCwgNDYsIDIwMywgNjAsIDIzMywgMjM5LCAyMjMsIDUyLCAyMzQsIDEzOCwgCi0gICAgNjAsIDIzMywgMjM5LCAyMjMsIDUyLCAyMzQsIDEzOSwgMjUwLCAyNTUsIDIzMSwgMTUsIDI1MCwgMTk1LCA2MCwgMjUwLCAKLSAgICAxODQsIDUsIDEwNywgMjUxLCAyNDYsIDYwLCAyNTAsIDE4NCwgNSwgMTc3LCAyNTEsIDI0NiwgNjAsIDI1MCwgMTg0LCA1LCAKLSAgICAyNTAsIDE4NSwgMjE3LCAyMjgsIDYwLCAyNTAsIDE4NCwgNSwgMjIyLCAxMjUsIDI1NSwgNjgsIDYwLCAxNiwgMjQ2LCA0NiwgCi0gICAgMjUxLCA1NCwgNjAsIDE2LCAyMjQsIDIyLCAyMjMsIDExOSwgNjAsIDE2LCAyMjYsIDIwMiwgMjQzLCAzOSwgNjAsIDE2LCAKLSAgICAyMjQsIDIyLCAyMjMsIDEyMCwgMjIzLCAxOTUsIDI0MiwgMTIxLCA2MCwgMTYsIDIyNSwgMjQ0LCAxOTMsIDYwLCAxNiwgCi0gICAgMjI4LCAxNzAsIDI1MSwgNTQsIDYwLCAxNiwgMjI4LCAxNzAsIDI1MSwgNTUsIDIyOCwgMiwgMjU1LCA2NSwgNjAsIDE2LCAKLSAgICAyMjgsIDE3MCwgMjUxLCA1NSwgMjQyLCA5NiwgMjU1LCA2NSwgNjAsIDE2LCAyMjgsIDE3MCwgMjUxLCA1NSwgMjUwLCAyNTUsIAotICAgIDI1NSwgNjUsIDYwLCA1LCAyMjQsIDIzLCAyMzAsIDM3LCAyMjQsIDIzLCAyNDcsIDExMCwgNjAsIDUsIDIyNCwgMjMsIDIzMCwgCi0gICAgMzcsIDI0MiwgOTUsIDYwLCAxNTIsIDI1MSwgNTgsIDIyMCwgMTgzLCAyNDIsIDE5MSwgMjMxLCA1OSwgMjIzLCAxOTQsIDYwLCAKLSAgICAxNTIsIDIzMCwgMjMzLCAyMTIsIDI0NywgMjQyLCAxOTEsIDIzMSwgNTksIDIyMywgMTk0LCA2MCwgMTUyLCAyMjgsIDIsIAotICAgIDIxNiwgMTMwLCA2MCwgMTUyLCA3MCwgMjUxLCA3OSwgMjIzLCAxMTQsIDIxMiwgMjQ3LCAyMzEsIDU5LCAyMzEsIDE1OCwgCi0gICAgMTg4LCA2MCwgMTUyLCAyNDksIDE4OSwgMjUxLCA3OSwgMjIzLCAxMTQsIDIxMiwgMjQ3LCAyMzEsIDU5LCAyMjEsIDMwLCAKLSAgICAxODgsIDIyMywgMTQ3LCAyMTgsIDIwMCwgNTIsIDIzMywgNjksIDIxOCwgMjAwLCA1MiwgMjIzLCAxNDcsIDIxOCwgMjAwLCAKLSAgICA1LCAyLCAyNDcsIDcyLCAyMzMsIDY5LCAyMTgsIDIwMCwgNSwgMiwgMjQ3LCA3MiwgNjAsIDE1MiwgMjMzLCA3OSwgMjMxLCAKLSAgICAxNjAsIDIyMywgNTQsIDYwLCAxNTIsIDIxNiwgMjA3LCAyMzEsIDE2MCwgMjIzLCA1NCwgNjQsIDEsIDE4MSwgNjQsIDEsIAotICAgIDIzNCwgMTM4LCA2NCwgMSwgMjQzLCAxMTAsIDY0LCAxLCAyNDIsIDIyNSwgNjQsIDEsIDIyOSwgMTU5LCA2NCwgMSwgMjUwLCAKLSAgICAyMTksIDY0LCAxLCAyNTAsIDkyLCA2NCwgMSwgMjM1LCAxMzksIDY0LCAxLCAyMzUsIDExNSwgNjQsIDEsIDIyOCwgMjMsIAotICAgIDY0LCAxLCAyMjgsIDE4NywgNjQsIDEsIDIxNiwgMTE1LCA2NCwgMSwgMjE2LCAxMDUsIDY0LCAxLCAyNDgsIDg2LCA2NCwgMSwgCi0gICAgMjQ4LCA3MCwgNjQsIDEsIDIyOCwgMTk4LCA2NCwgMSwgMjE4LCA1MiwgNjQsIDEsIDIxNywgMTYxLCA2NCwgMSwgMjQ4LCAKLSAgICAxNjQsIDY0LCAxLCAyNDcsIDIzMiwgNjQsIDEsIDIwNSwgNjQsIDEsIDE5MywgNjQsIDEsIDIyNiwgMjMsIDY0LCAxLCAyNTIsIAotICAgIDEwNywgNjQsIDEsIDI1MSwgMTk1LCA2NCwgMSwgMTg4LCA2NCwgMSwgMTg2LCA2NCwgMSwgMjAzLCA2NCwgMSwgMjMzLCAKLSAgICAxNTcsIDY0LCAxLCAyMTQsIDQ5LCA2NCwgMSwgMjIyLCAyMDIsIDY0LCAxLCAxNTksIDY0LCAxLCAyMzIsIDIxMywgNjQsIDEsIAotICAgIDYxLCA2NCwgMSwgMjIxLCA5LCA2MSwgNjQsIDEsIDcyLCA2NCwgMSwgMjM2LCAyOCwgNjQsIDEsIDY5LCA2NCwgMSwgMjE1LCAKLSAgICA5MiwgNjQsIDEsIDc0LCA2NCwgMSwgMjMwLCAyMjEsIDc0LCA2NCwgMSwgNzUsIDY0LCAxLCAyNTMsIDEwOCwgNjQsIDMwLCAKLSAgICA1LCAyMTgsIDE1LCAyNTQsIDIzMiwgNjQsIDMwLCA1LCAyNTQsIDIzMiwgNjQsIDMwLCA1LCA3MiwgNjQsIDMwLCA1LCAyMzYsIAotICAgIDI4LCA2NCwgMzAsIDUsIDY5LCA2NCwgMzAsIDUsIDIxNSwgOTIsIDY0LCAzMCwgNSwgNzQsIDY0LCAzMCwgNSwgMjU0LCAKLSAgICAxMDgsIDY0LCAzMCwgNSwgMjMwLCAyMjEsIDIzNiwgMjgsIDY0LCAzMCwgNSwgMjMwLCAyMjEsIDc1LCA2NCwgMzAsIDUsIAotICAgIDE5MSwgNDksIDY0LCA1LCAyNTMsIDI0MiwgNjQsIDUsIDYyLCA1NSwgNjQsIDUsIDIxNCwgMTI4LCA2NCwgNSwgMjE0LCAKLSAgICAxMzMsIDY0LCA1LCAyNTMsIDE1MCwgNjQsIDI0OSwgMTMzLCA1LCAxMzgsIDE4NiwgNjQsIDI0OSwgMTMzLCA1LCAxMzgsIAotICAgIDIwMywgNjQsIDI0OSwgMTMzLCA1LCAxMzgsIDIxNCwgNDksIDY0LCAyNDksIDEzMywgNSwgMTM4LCAxNTksIDY0LCAxLCAKLSAgICAyNDIsIDEwOSwgMjIyLCAyMDIsIDY0LCAyMSwgMjEyLCA3OSwgNjQsIDIxLCAxMTYsIDY0LCAyMSwgMTA5LCA2NCwgMjEsIAotICAgIDE2NiwgNjQsIDIxLCAxNjMsIDY0LCAyMSwgMTgwLCA2NCwgMjEsIDE4OSwgNjQsIDIxLCAxOTgsIDY0LCAyMSwgMTk1LCA2NCwgCi0gICAgMjEsIDIwMCwgNjQsIDUsIDIzMiwgMjIxLCAyMjIsIDkxLCA2NCwgNSwgMjIyLCA5MSwgNjQsIDE2LCAyMzIsIDIwNSwgNjQsIAotICAgIDE2LCAyNDksIDE1MiwgNjQsIDE2LCAyNTQsIDEyNSwgNjQsIDE2LCAyNDMsIDI0LCA2NCwgMSwgMjIxLCAyNCwgNjQsIDEsIAotICAgIDIxOSwgMTU3LCA2NCwgMSwgMTYxLCAxNDksIDY0LCAxLCAxNjEsIDIyMywgODIsIDY0LCAxLCAxNjEsIDE1MCwgNjQsIDEsIAotICAgIDE2MSwgMjMyLCAyMTQsIDY0LCAzMCwgNSwgMTYxLCAxNDksIDY0LCAzMCwgNSwgMTYxLCAyMjMsIDgyLCA2NCwgMzAsIDUsIAotICAgIDE2MSwgMTUwLCA2NCwgMzAsIDUsIDE2MSwgMjMyLCAyMTQsIDY0LCAxLCAyMzAsIDIyMSwgMjI5LCAxNTksIDY0LCAxLCAKLSAgICAyMzAsIDIyMSwgMjM1LCAxMTUsIDY0LCAxLCAyMzAsIDIyMSwgMjUyLCAzMSwgNjQsIDEsIDIzMCwgMjIxLCAyNTIsIDI2LCAKLSAgICA2NCwgMjQ5LCAxMzMsIDUsIDIzMCwgMjIxLCAxMzgsIDIwNSwgNjQsIDI0OSwgMTMzLCA1LCAyMzAsIDIyMSwgMTM4LCAxODgsIAotICAgIDY0LCAyNDksIDEzMywgNSwgMjMwLCAyMjEsIDEzOCwgMjMzLCAxNTcsIDY0LCAxLCAyMjEsIDI5LCAyMzQsIDIxOCwgMjIxLCAKLSAgICAyNCwgNjQsIDMwLCA1LCAyMjEsIDI5LCAyMzQsIDIxOCwgMjQ1LCAyMiwgNjQsIDE2MCwgMTUyLCAyMjEsIDI5LCAyMzQsIAotICAgIDIxOCwgMjQxLCAyMzAsIDY0LCAxNjAsIDE1MiwgMjIxLCAyOSwgMjM0LCAyMTgsIDIzNCwgMTg5LCAyMjUsIDI1MywgNjQsIAotICAgIDEsIDIxMywgMjQ4LCAyMjQsIDI1MiwgMjM0LCAyMTgsIDIxNywgMTYxLCA2NCwgMSwgMjEzLCAyNDgsIDIyNCwgMjUyLCAKLSAgICAyMzQsIDIxOCwgMjI1LCAyLCA2NCwgMzAsIDUsIDIxMywgMjQ4LCAyMjQsIDI1MiwgMjM0LCAyMTgsIDI0NSwgMjIsIDY0LCAKLSAgICAzMCwgNSwgMjEzLCAyNDgsIDIyNCwgMjUyLCAyMzQsIDIxOCwgMjE1LCAxODMsIDY0LCA1LCAyMTMsIDI0OCwgMjI0LCAyNTIsIAotICAgIDIzNCwgMjE4LCAyMTYsIDI0MCwgNjQsIDUsIDIxMywgMjQ4LCAyMjQsIDI1MiwgMjM0LCAyMTgsIDIxNiwgMjM5LCA2NCwgNSwgCi0gICAgMjEzLCAyNDgsIDIyNCwgMjUyLCAyMzQsIDIxOCwgMjE2LCAyMzgsIDY0LCA1LCAyMTMsIDI0OCwgMjI0LCAyNTIsIDIzNCwgCi0gICAgMjE4LCAyMTYsIDIzNywgNjQsIDUsIDIxMywgMjQ4LCAyMjQsIDI1MiwgMjM0LCAyMTgsIDIxNiwgMjM2LCA2NCwgMSwgMjQ1LCAKLSAgICAxNzUsIDIyNCwgMjUyLCAyMzQsIDIxOCwgMjI4LCAxOTgsIDY0LCAxLCAyNDUsIDE3NSwgMjI0LCAyNTIsIDIzNCwgMjE4LCAKLSAgICAyMTIsIDE2OCwgNjQsIDEsIDI0NSwgMTc1LCAyMjQsIDI1MiwgMjM0LCAyMTgsIDI0MiwgMTkzLCA2NCwgMzAsIDUsIDI0MywgCi0gICAgMzUsIDIzNCwgMjE4LCA3MiwgNjQsIDMwLCA1LCAyMzQsIDE5NCwgMjI3LCA5OSwgNjQsIDMwLCA1LCAyMzQsIDE5NCwgNjksIAotICAgIDY0LCAzMCwgNSwgMjM0LCAxOTQsIDI0NSwgMTY1LCA2NCwgMSwgMjIxLCA5LCAxODEsIDY0LCAxLCAyMjEsIDksIDIzNCwgCi0gICAgMTM4LCA2NCwgMSwgMjIxLCA5LCAyNDMsIDExMCwgNjQsIDEsIDIyMSwgOSwgMjUwLCAyMTksIDY0LCAxLCAyMjEsIDksIAotICAgIDIxMiwgMTA5LCA2NCwgMSwgMjIxLCA5LCAyMjgsIDIzLCA2NCwgMSwgMjIxLCA5LCAyNDgsIDE2NCwgNjQsIDEsIDIyMSwgOSwgCi0gICAgMjA1LCA2NCwgMSwgMjIxLCA5LCAyMjYsIDIzLCA2NCwgMSwgMjIxLCA5LCAyNDQsIDE2NCwgNjQsIDEsIDIyMSwgOSwgMjUyLCAKLSAgICAxMDcsIDY0LCAxLCAyMjEsIDksIDIxNywgMTYxLCA2NCwgMSwgMjIxLCA5LCAxNTksIDY0LCAyNDksIDEzMywgNSwgMjIxLCAKLSAgICA5LCAxMzgsIDIxNCwgNDksIDY0LCAzMCwgNSwgMjIxLCA5LCAyNTQsIDIzMiwgNjQsIDMwLCA1LCAyMjEsIDksIDc0LCA2NCwgCi0gICAgMzAsIDUsIDIyMSwgOSwgMTkxLCA0OSwgNjQsIDMwLCA1LCAyMjEsIDksIDQwLCAyMTMsIDEwNSwgNjQsIDUsIDIyMSwgOSwgCi0gICAgMjE2LCAyMzksIDY0LCA1LCAyMjEsIDksIDIxNiwgMjM4LCA2NCwgNSwgMjIxLCA5LCAyMTYsIDIzNiwgNjQsIDUsIDIyMSwgCi0gICAgOSwgMjE2LCAyMzUsIDY0LCA1LCAyMjEsIDksIDI0OSwgOTEsIDIxNiwgMjM5LCA2NCwgNSwgMjIxLCA5LCAyNDksIDkxLCAKLSAgICAyMTYsIDIzOCwgNjQsIDUsIDIyMSwgOSwgMjQ5LCA5MSwgMjQ1LCAxMTEsIDIxNiwgMjQxLCA2NCwgMSwgMjIzLCAzOSwgCi0gICAgMjI2LCAxOTAsIDI0NCwgMTY0LCA2NCwgNSwgMjIzLCAzOSwgMjI2LCAxOTAsIDIxNiwgMjM2LCA2NCwgMjIxLCA5LCAyMSwgCi0gICAgMjEyLCA3OSwgNjQsIDIyMSwgOSwgMjEsIDExNiwgNjQsIDIyMSwgOSwgMjEsIDEwOSwgNjQsIDIyMSwgOSwgMjEsIDE2NiwgCi0gICAgNjQsIDIyMSwgOSwgMjEsIDE2MywgNjQsIDIyMSwgOSwgMjEsIDE4MCwgNjQsIDIyMSwgOSwgMjEsIDE4OSwgNjQsIDIyMSwgCi0gICAgOSwgMjEsIDE5OCwgNjQsIDIyMSwgOSwgMjEsIDE5NSwgNjQsIDIyMSwgOSwgMjEsIDIwMCwgNjQsIDUsIDIzNCwgMTMyLCAKLSAgICAyMTYsIDI0MCwgNjQsIDUsIDIzNCwgMTMyLCAyMTYsIDIzOCwgNjQsIDMwLCA1LCAyNTQsIDk4LCA2MSwgNjQsIDMwLCA1LCAKLSAgICAyNTQsIDk4LCAyNTQsIDEwOCwgNjQsIDE2LCAyMjEsIDksIDExNiwgNjQsIDE2LCAyMjEsIDksIDI0NCwgMjUzLCAxMDAsIDYsIAotICAgIDEsIDI1NCwgMzIsIDEwMCwgNiwgMSwgMjUyLCA3MSwgMTAwLCA2LCAxLCAyNDMsIDgyLCAxMDAsIDYsIDEsIDI0NywgODIsIAotICAgIDEwMCwgNiwgMSwgMjQ1LCAxMDgsIDEwMCwgNiwgMSwgMjE0LCAxNDEsIDEwMCwgNiwgMSwgMjEyLCA4MiwgMTAwLCA2LCAxLCAKLSAgICAyMTgsIDExLCAxMDAsIDYsIDEsIDIzNSwgMjUxLCAxMDAsIDYsIDEsIDIzNCwgMjM5LCAxMDAsIDYsIDEsIDIzMywgMTA0LCAKLSAgICAxMDAsIDYsIDEsIDIzMSwgMjQ4LCAxMDAsIDYsIDEsIDIzMCwgMTUsIDEwMCwgNiwgMSwgMjI3LCA2MiwgMTAwLCA2LCAxLCAKLSAgICAyMjYsIDE0NSwgMTAwLCA2LCAxLCAyMTIsIDcxLCAxMDAsIDYsIDEsIDIyNCwgNjEsIDEwMCwgNiwgMSwgMjIyLCAxNTksIAotICAgIDEwMCwgNiwgMSwgMjE4LCAxLCAxMDAsIDYsIDEsIDIxNSwgMTYwLCAxMDAsIDYsIDEsIDIyNiwgMTYsIDEwMCwgNiwgMSwgCi0gICAgMjM0LCAxMjcsIDEwMCwgNiwgMSwgMjQyLCAyMTcsIDEwMCwgNiwgMSwgMjI0LCAyMTcsIDEwMCwgNiwgMSwgMjIwLCAyMDAsIAotICAgIDEwMCwgNiwgMSwgMjUwLCAzNCwgMTAwLCA2LCAxLCAyNTAsIDE5NSwgMTAwLCA2LCAxLCAyMzUsIDEwMywgMTAwLCA2LCAxLCAKLSAgICAyNDksIDIzMywgMTAwLCA2LCAxLCAyNTAsIDc5LCAxMDAsIDYsIDEsIDIxMywgMTUxLCAxMDAsIDYsIDEsIDIzNSwgMTEzLCAKLSAgICAxMDAsIDYsIDEsIDI0MiwgMjQsIDEwMCwgNiwgMSwgMjQxLCAyMjIsIDEwMCwgNiwgMSwgMjQxLCAxNjAsIDEwMCwgNiwgMSwgCi0gICAgMjE0LCA2LCAxMDAsIDYsIDEsIDI0MSwgMjQzLCAxMDAsIDYsIDEsIDI0MSwgNTEsIDEwMCwgMSwgMjU0LCAzMiwgMTAwLCAxLCAKLSAgICAyNTIsIDcxLCAxMDAsIDEsIDI0MywgODIsIDEwMCwgMSwgMjQ3LCA4MiwgMTAwLCAxLCAyNDUsIDEwOCwgMTAwLCAxLCAyMTQsIAotICAgIDE0MSwgMTAwLCAxLCAyMTIsIDgyLCAxMDAsIDEsIDIxOCwgMTEsIDEwMCwgMSwgMjM1LCAyNTEsIDEwMCwgMSwgMjM0LCAKLSAgICAyMzksIDEwMCwgMSwgMjMzLCAxMDQsIDEwMCwgMSwgMjMxLCAyNDgsIDEwMCwgMSwgMjMwLCAxNSwgMTAwLCAxLCAyMjcsIAotICAgIDYyLCAxMDAsIDEsIDIyNiwgMTQ1LCAxMDAsIDEsIDIxMiwgNzEsIDEwMCwgMSwgMjI0LCA2MSwgMTAwLCAxLCAyMjIsIDE1OSwgCi0gICAgMTAwLCAxLCAyMTgsIDEsIDEwMCwgMSwgMjE1LCAxNjAsIDEwMCwgMSwgMjI2LCAxNiwgMTAwLCAxLCAyMzQsIDEyNywgMTAwLCAKLSAgICAxLCAyNDIsIDIxNywgMTAwLCAxLCAyMjQsIDIxNywgMTAwLCAxLCAyMjAsIDIwMCwgMTAwLCAxLCAyNTAsIDM0LCAxMDAsIDEsIAotICAgIDI1MCwgMTk1LCAxMDAsIDEsIDIzNSwgMTAzLCAxMDAsIDEsIDI0OSwgMjMzLCAxMDAsIDEsIDI1MCwgNzksIDEwMCwgMSwgCi0gICAgMjEzLCAxNTEsIDEwMCwgMSwgMjM1LCAxMTMsIDEwMCwgMSwgMjQyLCAyNCwgMTAwLCAxLCAyNDEsIDIyMiwgMTAwLCAxLCAKLSAgICAyNDEsIDE2MCwgMTAwLCAxLCAyMTQsIDYsIDEwMCwgMSwgMjQxLCAyNDMsIDEwMCwgMSwgMjQxLCA1MSwgMTAwLCAxLCAyNDQsIAotICAgIDkwLCAxMDAsIDEsIDIxMiwgMjM3LCAxMDAsIDEsIDI0NSwgMTIyLCAxMDAsIDEsIDIxNiwgNTgsIDI0MywgODIsIDEwMCwgMSwgCi0gICAgMjU0LCAxMDMsIDEwMCwgMjI2LCAxNDMsIDIyMSwgNTcsIDU5LCAxLCAxMDAsIDIzMCwgMTUsIDIzLCA5NywgMjM0LCA2NywgCi0gICAgMjMsIDk3LCAyMTksIDE1MCwgMjMsIDk3LCAyMjksIDU3LCAyMywgOTcsIDIxNywgNTUsIDIzLCA5NywgMjE5LCAxMzksIDIzLCAKLSAgICA5NywgMjIzLCAxNzksIDIzLCA5NywgMjMxLCAzMCwgMjMsIDk3LCAyMjUsIDIyNywgMjMsIDk3LCAyMTksIDE0NywgMjMsIAotICAgIDk3LCAyMjAsIDc2LCAyMywgOTcsIDIxOSwgMTQ0LCAyMywgOTcsIDIzNiwgNTEsIDIzLCA5NywgMjQ5LCAyMzksIDIzLCA5NywgCi0gICAgMjE5LCAxNTQsIDIzLCA5NywgMjUwLCA0MywgMjMsIDk3LCAyMzQsIDExNiwgMjMsIDk3LCAyMTcsIDEyNiwgMjMsIDk3LCAKLSAgICAyMjYsIDcsIDIzLCA5NywgMjQxLCAxNTgsIDIzLCA5NywgMjI5LCA1MywgMjMsIDk3LCAyMTksIDE0OCwgMjMsIDk3LCAyMjksIAotICAgIDQ3LCAyMywgOTcsIDIyOSwgNTEsIDIzLCA5NywgMjE3LCA1MiwgMjMsIDk3LCAyMjMsIDE2NywgMjMsIDk3LCAyMTksIDE0NiwgCi0gICAgMjMsIDk3LCAyMjMsIDE3NywgMjMsIDk3LCAyMzQsIDIyMywgMjMsIDk3LCAyMzEsIDIzLCAyMywgOTcsIDIzNCwgMjI2LCAKLSAgICAyMywgOTcsIDIyNSwgMjIyLCAyMywgOTcsIDIyNSwgMjIwLCAyMywgOTcsIDIyNSwgMjA4LCAyMywgOTcsIDIyNSwgMjE2LCAKLSAgICAyMywgOTcsIDIyNSwgMjE0LCAyMywgOTcsIDIyNSwgMjExLCAyMywgOTcsIDIyNSwgMjEzLCAyMywgOTcsIDIyNSwgMjEwLCAKLSAgICAyMywgOTcsIDIyNSwgMjE1LCAyMywgOTcsIDIyNSwgMjI1LCAyMywgOTcsIDIyNSwgMjI2LCAyMywgOTcsIDIyNSwgMjA5LCAKLSAgICAyMywgOTcsIDIyNSwgMjE5LCAyMywgOTcsIDIzNCwgMjI0LCAyMywgOTcsIDIzNCwgMjIyLCAyMywgOTcsIDIyMCwgNjksIAotICAgIDIzLCA5NywgMjIwLCA2NywgMjMsIDk3LCAyMjAsIDU5LCAyMywgOTcsIDIyMCwgNjIsIDIzLCA5NywgMjIwLCA2OCwgMjMsIAotICAgIDk3LCAyMjAsIDY0LCAyMywgOTcsIDIyMCwgNjMsIDIzLCA5NywgMjIwLCA2MSwgMjMsIDk3LCAyMjAsIDcyLCAyMywgOTcsIAotICAgIDIyMCwgNzQsIDIzLCA5NywgMjIwLCA3NSwgMjMsIDk3LCAyMjAsIDcwLCAyMywgOTcsIDIyMCwgNjAsIDIzLCA5NywgMjIwLCAKLSAgICA2NSwgMjMsIDk3LCAyMjAsIDczLCAyMywgOTcsIDI1MCwgMjcsIDIzLCA5NywgMjUwLCAyNSwgMjMsIDk3LCAyNTAsIDEwMiwgCi0gICAgMjMsIDk3LCAyNTAsIDEwMCwgMjMsIDk3LCAyMjYsIDE2MCwgMjMsIDk3LCAyMzYsIDQ2LCAyMywgOTcsIDIzNiwgMzcsIDIzLCAKLSAgICA5NywgMjM2LCA0NSwgMjMsIDk3LCAyMzYsIDQyLCAyMywgOTcsIDIzNiwgNDAsIDIzLCA5NywgMjM2LCA0NCwgMjMsIDk3LCAKLSAgICAyMTksIDE1MSwgMjMsIDk3LCAyMzYsIDQ5LCAyMywgOTcsIDIzNiwgNTAsIDIzLCA5NywgMjM2LCAzOCwgMjMsIDk3LCAyMzYsIAotICAgIDQzLCAyMywgOTcsIDIxMywgMTcsIDIzLCA5NywgMjQ5LCAyMzgsIDIzLCA5NywgMjUwLCAyOCwgMjMsIDk3LCAyNTAsIDI2LCAKLSAgICAyMywgOTcsIDI1MCwgMTAzLCAyMywgOTcsIDI1MCwgMTAxLCAyMywgOTcsIDI1MCwgNDEsIDIzLCA5NywgMjUwLCA0MiwgMjMsIAotICAgIDk3LCAyNTAsIDI5LCAyMywgOTcsIDI1MCwgMTA0LCAyMywgOTcsIDIyNiwgNSwgMjMsIDk3LCAyMzQsIDIyNSwgMjMsIDk3LCAKLSAgICAyMTksIDE1MiwgMjMsIDk3LCAyMTMsIDIzLCAyMywgOTcsIDIzNCwgNTgsIDIzLCA5NywgMjI5LCA0OSwgMjMsIDk3LCAyMjksIAotICAgIDU1LCAyMywgOTcsIDIyOSwgNTQsIDIzLCA5NywgMjE3LCA0OSwgMjMsIDk3LCAyNDQsIDcyLCAyMywgMTM1LCAyNDQsIDcyLCAKLSAgICAyMywgMTM1LCA2MSwgMjMsIDEzNSwgMjU0LCAxNDgsIDIzLCAxMzUsIDE4NiwgMjMsIDEzNSwgMjEzLCA4MCwgMjMsIDEzNSwgCi0gICAgMjQ1LCA3NiwgMjMsIDEzNSwgNzQsIDIzLCAxMzUsIDIxMywgMjcsIDIzLCAxMzUsIDIxMywgMzgsIDIzLCAxMzUsIDc1LCAKLSAgICAyMywgMTM1LCAyMTQsIDQ5LCAyMywgMTM1LCAyMTQsIDQ2LCAyMywgMTM1LCAyMjcsIDk5LCAyMywgMTM1LCAyMTIsIDIzNSwgCi0gICAgMjMsIDEzNSwgNjksIDIzLCAxMzUsIDIxMywgMjUyLCAyMywgMTM1LCAyMTQsIDYsIDIzLCAxMzUsIDIxMywgMjM1LCAyMywgCi0gICAgMTM1LCAyMTIsIDIwMywgMjMsIDEzNSwgMjQ1LCAyMiwgMjMsIDEzNSwgMjEyLCAyNTUsIDIzLCAxMzUsIDcyLCAyMywgMTM1LCAKLSAgICAyNTUsIDYwLCAyMywgMTM1LCAyNTUsIDU5LCAyMywgMTM1LCAyMTMsIDk0LCAyMywgMTM1LCAyMTMsIDkyLCAyMywgMTM1LCAKLSAgICAyNDUsIDc0LCAyMywgMTM1LCAyNDUsIDczLCAyMywgMTM1LCAyNDUsIDc1LCAyMywgMTM1LCAyMTMsIDI2LCAyMywgMTM1LCAKLSAgICAyMTMsIDI1LCAyMywgMTM1LCAyMjcsIDIwNCwgMjMsIDEzNSwgMjI3LCAyMDUsIDIzLCAxMzUsIDIyNywgMTk4LCAyMywgCi0gICAgMTM1LCAyMjcsIDIwMywgMjMsIDEzNSwgMjI3LCAyMDEsIDIzLCAxMzUsIDIxMiwgMjI5LCAyMywgMTM1LCAyMTIsIDIyOCwgCi0gICAgMjMsIDEzNSwgMjEyLCAyMjcsIDIzLCAxMzUsIDIxMiwgMjMwLCAyMywgMTM1LCAyMTIsIDIzMSwgMjMsIDEzNSwgMjE1LCAKLSAgICAyNTIsIDIzLCAxMzUsIDIxNSwgMjUxLCAyMywgMTM1LCAyMTUsIDI1MCwgMjMsIDEzNSwgMjE1LCAyNDcsIDIzLCAxMzUsIAotICAgIDIxNSwgMjQ4LCAyMywgMTM1LCAyMTIsIDIwMiwgMjMsIDEzNSwgMjEyLCAxOTksIDIzLCAxMzUsIDIxMiwgMjAwLCAyMywgCi0gICAgMTM1LCAyMTIsIDE5NCwgMjMsIDEzNSwgMjEyLCAxOTUsIDIzLCAxMzUsIDIxMiwgMTk2LCAyMywgMTM1LCAyMTIsIDE5OCwgCi0gICAgMjMsIDEzNSwgMjQ1LCAxNiwgMjMsIDEzNSwgMjQ1LCAxOCwgMjMsIDEzNSwgMjEyLCAyNTQsIDIzLCAxMzUsIDI0MCwgMTQ1LCAKLSAgICAyMywgMTM1LCAyNDAsIDEzNywgMjMsIDEzNSwgMjQwLCAxNDAsIDIzLCAxMzUsIDI0MCwgMTM4LCAyMywgMTM1LCAyNDAsIAotICAgIDE0MiwgMjMsIDEzNSwgMjQwLCAxNDQsIDIzLCAxMzUsIDI1MywgMjA0LCAyMywgMTM1LCAyNTMsIDIwMSwgMjMsIDEzNSwgCi0gICAgMjUzLCAxOTksIDIzLCAxMzUsIDI1MywgMjAwLCAyMywgMTM1LCAyMTksIDE1NSwgMjMsIDEzNSwgMjU1LCA2MSwgMjMsIAotICAgIDEzNSwgMjEzLCA5MywgMjMsIDEzNSwgMjEzLCAyNCwgMjMsIDEzNSwgMjI3LCAyMDAsIDIzLCAxMzUsIDIyNywgMTk5LCAyMywgCi0gICAgODksIDIzNCwgNjcsIDIzLCA4OSwgMjE5LCAxNTAsIDIzLCA4OSwgMjM0LCA2MCwgMjMsIDg5LCAyMjksIDU3LCAyMywgODksIAotICAgIDIyOSwgNTUsIDIzLCA4OSwgMjI5LCA1NCwgMjMsIDg5LCAyMTcsIDU1LCAyMywgODksIDIyMywgMTc5LCAyMywgODksIDIyMywgCi0gICAgMTc0LCAyMywgODksIDIyMywgMTcxLCAyMywgODksIDIyMywgMTY0LCAyMywgODksIDIyMywgMTU5LCAyMywgODksIDIyMywgCi0gICAgMTU0LCAyMywgODksIDIyMywgMTY1LCAyMywgODksIDIyMywgMTc3LCAyMywgODksIDIzMSwgMzAsIDIzLCA4OSwgMjI1LCAKLSAgICAyMjcsIDIzLCA4OSwgMjI1LCAyMTYsIDIzLCA4OSwgMjIwLCA3NiwgMjMsIDg5LCAyMTksIDE0NCwgMjMsIDg5LCAyMzYsIAotICAgIDUxLCAyMywgODksIDI0OSwgMjM5LCAyMywgODksIDI1MCwgNDMsIDIzLCA4OSwgMjM0LCAxMTYsIDIzLCA4OSwgMjE3LCAKLSAgICAxMjYsIDIzLCA4OSwgMjI2LCA3LCAyMywgODksIDI0MSwgMTU4LCAyMywgODksIDIzNCwgNjEsIDIzLCA4OSwgMjM0LCA1OSwgCi0gICAgMjMsIDg5LCAyMjksIDUzLCAyMywgODksIDIyOSwgNDcsIDIzLCA4OSwgMjI5LCA0OSwgMjMsIDg5LCAyMjksIDUyLCAyMywgCi0gICAgODksIDIyOSwgNDgsIDIzLCA4OSwgMjE3LCA1MiwgMjMsIDg5LCAyMTcsIDQ5LCAyMywgODksIDIyMywgMTcyLCAyMywgODksIAotICAgIDIyMywgMTY3LCAyMywgODksIDIyMywgMTUzLCAyMywgODksIDIyMywgMTUyLCAyMywgODksIDIxOSwgMTQ2LCAyMywgODksIAotICAgIDIyMywgMTY5LCAyMywgODksIDIyMywgMTY4LCAyMywgODksIDIyMywgMTYxLCAyMywgODksIDIyMywgMTYzLCAyMywgODksIAotICAgIDIyMywgMTc2LCAyMywgODksIDIyMywgMTU2LCAyMywgODksIDIyMywgMTY2LCAyMywgODksIDIyMywgMTc1LCAyMywgODksIAotICAgIDIyMywgMTUxLCAyMywgODksIDIzMSwgMjYsIDIzLCA4OSwgMjMxLCAyMSwgMjMsIDg5LCAyMzEsIDIzLCAyMywgODksIDIzMSwgCi0gICAgMjAsIDIzLCA4OSwgMjMxLCAxOCwgMjMsIDg5LCAyMzEsIDI0LCAyMywgODksIDIzMSwgMjksIDIzLCA4OSwgMjMxLCAyNywgCi0gICAgMjMsIDg5LCAyMzQsIDIyNiwgMjMsIDg5LCAyMjUsIDIxOCwgMjMsIDg5LCAyMjUsIDIxOSwgMjMsIDg5LCAyMjUsIDIyNCwgCi0gICAgMjMsIDg5LCAyMzQsIDIyNCwgMjMsIDg5LCAyMjAsIDY5LCAyMywgODksIDIyMCwgNTksIDIzLCA4OSwgMjIwLCA2MiwgMjMsIAotICAgIDg5LCAyMjAsIDY0LCAyMywgODksIDIyNiwgMTYwLCAyMywgODksIDIzNiwgNDYsIDIzLCA4OSwgMjM2LCAzOSwgMjMsIDg5LCAKLSAgICAyMTksIDE1MSwgMjMsIDg5LCAyMzYsIDQ3LCAyMywgODksIDIxMywgMTcsIDIzLCA4OSwgMjEzLCAxMywgMjMsIDg5LCAyMTMsIAotICAgIDE0LCAyMywgODksIDIyNiwgNSwgMjMsIDg5LCAyMzQsIDIyNSwgMjMsIDg5LCAyNDEsIDE1NiwgMjMsIDg5LCAyNDEsIDE1NCwgCi0gICAgMjMsIDg5LCAyNDEsIDE1NywgMjMsIDg5LCAyNDEsIDE1NSwgMjMsIDg5LCAyMTMsIDIzLCAyMywgODksIDIzNCwgNjMsIDIzLCAKLSAgICA4OSwgMjM0LCA2MiwgMjMsIDg5LCAyMzQsIDY2LCAyMywgODksIDIzNCwgNjQsIDIzLCA4OSwgMjM0LCA2NSwgMjMsIDg5LCAKLSAgICAyMTksIDE0OCwgMjgsIDQsIDE1OSwgMjgsIDQsIDI0MCwgMjEyLCAyOCwgNCwgMjQxLCAxNjUsIDI4LCA0LCAyNDIsIDI3LCAKLSAgICAyOCwgNCwgMjQxLCAyMDQsIDI4LCA0LCAyNDEsIDIyMiwgMjgsIDQsIDI0MSwgNTQsIDI4LCA0LCAyNDEsIDUzLCAyOCwgNCwgCi0gICAgMjMzLCAxNTcsIDI4LCA0LCAyMzIsIDE1NiwgMjgsIDQsIDIzMywgMTMsIDI4LCA0LCAyMzMsIDE1NiwgMjgsIDQsIDIzMywgCi0gICAgNzQsIDI4LCA0LCAyMzMsIDgyLCAyOCwgNCwgMjMyLCAyMDgsIDI4LCA0LCAyMzIsIDEyOSwgMjgsIDQsIDI0MSwgMTc0LCAKLSAgICAyOCwgNCwgMjQxLCAxNjgsIDI4LCA0LCAyNDEsIDE3MCwgMjgsIDQsIDI0MSwgMTczLCAyOCwgNCwgMjQxLCAxNzEsIDI4LCAKLSAgICA0LCAyNDEsIDE3MiwgMjgsIDQsIDI0MSwgMTY5LCAyOCwgNCwgMjQxLCAxNjcsIDI4LCA0LCAxODgsIDI4LCA0LCAyMzAsIAotICAgIDE3MiwgMjgsIDQsIDIzMSwgNDIsIDI4LCA0LCAyMzIsIDQxLCAyOCwgNCwgMjMxLCAxNDUsIDI4LCA0LCAyMzEsIDE1NiwgCi0gICAgMjgsIDQsIDIzMCwgMjMxLCAyOCwgNCwgMjMwLCAxMTQsIDI4LCA0LCAyMTgsIDExMCwgMjgsIDQsIDIxOCwgMTA0LCAyOCwgCi0gICAgNCwgMjE4LCAxMDYsIDI4LCA0LCAyMTgsIDEwOSwgMjgsIDQsIDIxOCwgMTA3LCAyOCwgNCwgMjE4LCAxMDgsIDI4LCA0LCAKLSAgICAyMTgsIDEwNSwgMjgsIDQsIDIxOCwgMTAzLCAyOCwgNCwgMjAzLCAyOCwgNCwgMjIzLCA1MSwgMjgsIDQsIDIyMywgMTg4LCAKLSAgICAyOCwgNCwgMjI0LCA3NCwgMjgsIDQsIDIyNCwgMSwgMjgsIDQsIDIyNCwgMjEsIDI4LCA0LCAyMjMsIDExMiwgMjgsIDQsIAotICAgIDIyMywgMjEsIDI4LCA0LCAyMjIsIDIwMiwgMjgsIDQsIDIxOSwgMjcsIDI4LCA0LCAyMjAsIDExNywgMjgsIDQsIDIyMiwgCi0gICAgMjAwLCAyOCwgNCwgMjIyLCA4OSwgMjgsIDQsIDIyMiwgMTAwLCAyOCwgNCwgMjE5LCAyNDIsIDI4LCA0LCAyMTgsIDE5OCwgCi0gICAgMjgsIDQsIDIyMSwgMjQsIDI4LCA0LCAyMjAsIDE1MCwgMjgsIDQsIDIyMCwgMjEyLCAyOCwgNCwgMjIxLCAyMCwgMjgsIDQsIAotICAgIDIyMCwgMjQxLCAyOCwgNCwgMjIwLCAyNDMsIDI4LCA0LCAyMjAsIDE4NywgMjgsIDQsIDIyMCwgMTM0LCAyOCwgNCwgMjI0LCAKLSAgICAyMzIsIDI4LCA0LCAyMjQsIDE3NSwgMjgsIDQsIDIyNCwgMTk4LCAyOCwgNCwgMjI0LCAyMzEsIDI4LCA0LCAyMjQsIDIxMiwgCi0gICAgMjgsIDQsIDIyNCwgMjEzLCAyOCwgNCwgMjI0LCAxODcsIDI4LCA0LCAyMjQsIDE4NiwgMjgsIDQsIDIyNCwgMTMxLCAyOCwgCi0gICAgNCwgMjI0LCAxMjcsIDI4LCA0LCAyMjQsIDEzMCwgMjgsIDQsIDIyNCwgMTI4LCAyOCwgNCwgMjI0LCAxMjksIDI4LCA0LCAKLSAgICAyMjQsIDIxMCwgMjgsIDQsIDIyNCwgMjA0LCAyOCwgNCwgMjI0LCAyMDYsIDI4LCA0LCAyMjQsIDIwOSwgMjgsIDQsIDIyNCwgCi0gICAgMjA3LCAyOCwgNCwgMjI0LCAyMDgsIDI4LCA0LCAyMjQsIDIwNSwgMjgsIDQsIDIyNCwgMjAzLCAyOCwgNCwgMjI0LCAxOTksIAotICAgIDI4LCA0LCAyMjQsIDIwMiwgMjgsIDQsIDIyNCwgMjAwLCAyOCwgNCwgMjI0LCAyMDEsIDI4LCA0LCAyNTIsIDEwNywgMjgsIAotICAgIDQsIDI1MSwgNTQsIDI4LCA0LCAyNTEsIDE4NCwgMjgsIDQsIDI1MiwgMTA2LCAyOCwgNCwgMjUxLCAyNDIsIDI4LCA0LCAKLSAgICAyNTEsIDI1MSwgMjgsIDQsIDI1MSwgMTI4LCAyOCwgNCwgMjUxLCAxMiwgMjgsIDQsIDIxNSwgMSwgMjgsIDQsIDIxNCwgOTksIAotICAgIDI4LCA0LCAyMTQsIDE1NCwgMjgsIDQsIDIxNSwgMCwgMjgsIDQsIDIxNCwgMjI3LCAyOCwgNCwgMjE0LCAyMzIsIDI4LCA0LCAKLSAgICAyMTQsIDExOSwgMjgsIDQsIDIxNCwgOTEsIDI4LCA0LCAyMTgsIDUyLCAyOCwgNCwgMjE2LCA4MiwgMjgsIDQsIDIxNywgNzEsIAotICAgIDI4LCA0LCAyMTgsIDQ5LCAyOCwgNCwgMjE3LCAyMTksIDI4LCA0LCAyMTcsIDIyOSwgMjgsIDQsIDEwOCwgMjgsIDQsIDIxNiwgCi0gICAgNDUsIDI4LCA0LCAyNTAsIDIxOSwgMjgsIDQsIDI0OSwgNTMsIDI4LCA0LCAyNDksIDI0NCwgMjgsIDQsIDI1MCwgMjE4LCAKLSAgICAyOCwgNCwgMjUwLCAxMTYsIDI4LCA0LCAyNTAsIDEyNCwgMjgsIDQsIDI0OSwgMTc1LCAyOCwgNCwgMjQ5LCAyNCwgMjgsIDQsIAotICAgIDIxMywgMTUzLCAyOCwgNCwgMjEzLCAxMjksIDI4LCA0LCAyMTMsIDE0NSwgMjgsIDQsIDIxMywgMTUyLCAyOCwgNCwgMjEzLCAKLSAgICAxNDksIDI4LCA0LCAyMTMsIDE1MCwgMjgsIDQsIDIxMywgMTM2LCAyOCwgNCwgMjEzLCAxMzUsIDI4LCA0LCAyMTMsIDEyNCwgCi0gICAgMjgsIDQsIDIxMywgMTIwLCAyOCwgNCwgMjEzLCAxMjMsIDI4LCA0LCAyMTMsIDEyMSwgMjgsIDQsIDIxMywgMTIyLCAyOCwgCi0gICAgNCwgMjA1LCAyOCwgNCwgMjI4LCA5MiwgMjgsIDQsIDIyOSwgNjQsIDI4LCA0LCAyMzAsIDQzLCAyOCwgNCwgMjI5LCAxODQsIAotICAgIDI4LCA0LCAyMjksIDE4NywgMjgsIDQsIDIyOCwgMTg1LCAyOCwgNCwgMjI4LCAzMSwgMjgsIDQsIDIyOCwgMjMsIDI4LCA0LCAKLSAgICAyMjcsIDI0NywgMjgsIDQsIDIyOCwgMTAsIDI4LCA0LCAyMjgsIDIyLCAyOCwgNCwgMjI4LCAxNiwgMjgsIDQsIDIyOCwgMTcsIAotICAgIDI4LCA0LCAyMjcsIDI1MywgMjgsIDQsIDIyNywgMjM5LCAyOCwgNCwgMjQyLCAxNTYsIDYxLCAyOCwgNCwgMjQyLCAxNTYsIAotICAgIDY5LCAyOCwgNCwgMjQyLCAxNTYsIDcyLCAyOCwgNCwgMjQyLCAxNTYsIDI1NCwgMjMyLCAyOCwgNCwgMjQyLCAxNTYsIDI0NSwgCi0gICAgMTY1LCAyOCwgNCwgMjQyLCAxNTYsIDc0LCAyOCwgNCwgMjQyLCAxNTYsIDc1LCAyOCwgNCwgMjQyLCAxNTYsIDIxNCwgNDksIAotICAgIDI4LCA0LCAxODEsIDI4LCA0LCAyMzMsIDIzOCwgMjgsIDQsIDIzNCwgMTAxLCAyOCwgNCwgMjM1LCAxNCwgMjgsIDQsIDIzNCwgCi0gICAgMTg3LCAyOCwgNCwgMjM0LCAxODgsIDI4LCA0LCAyMzQsIDM3LCAyOCwgNCwgMjM0LCAzNiwgMjgsIDQsIDIzMywgMjA0LCAKLSAgICAyOCwgNCwgMjMzLCAxOTgsIDI4LCA0LCAyMzMsIDIwMywgMjgsIDQsIDIzMywgMTk5LCAyOCwgNCwgMjMzLCAyMDAsIDI4LCAKLSAgICA0LCAyMzMsIDE5MywgMjgsIDQsIDIzMywgMTg3LCAyOCwgNCwgMjMzLCAxODksIDI4LCA0LCAyMzMsIDE5MiwgMjgsIDQsIAotICAgIDIzMywgMTkwLCAyOCwgNCwgMjMzLCAxOTEsIDI4LCA0LCAyMzMsIDE4OCwgMjgsIDQsIDIzMywgMTg2LCAyOCwgNCwgMjMzLCAKLSAgICAxODIsIDI4LCA0LCAyMzMsIDE4NSwgMjgsIDQsIDIzMywgMTgzLCAyOCwgNCwgMjMzLCAxODQsIDI4LCA0LCAyMTQsIDQ5LCAKLSAgICAyOCwgNCwgMjEzLCAxODMsIDI4LCA0LCAyMTMsIDIzNSwgMjgsIDQsIDIxNCwgNDgsIDI4LCA0LCAyMTQsIDEsIDI4LCA0LCAKLSAgICAyMTQsIDYsIDI4LCA0LCAyMTMsIDIxNCwgMjgsIDQsIDIxMywgMjEzLCAyOCwgNCwgMjI2LCAxNSwgNjEsIDI4LCA0LCAyMjYsIAotICAgIDE1LCA2OSwgMjgsIDQsIDIyNiwgMTUsIDcyLCAyOCwgNCwgMjI2LCAxNSwgMjU0LCAyMzIsIDI4LCA0LCAyMjYsIDE1LCAKLSAgICAyNDUsIDE2NSwgMjgsIDQsIDIyNiwgMTUsIDc0LCAyOCwgNCwgMjI2LCAxNSwgNzUsIDI4LCA0LCAyMTIsIDEwOSwgMjgsIDQsIAotICAgIDIxMiwgOCwgMjgsIDQsIDIxMiwgMzcsIDI4LCA0LCAyMTIsIDEwOCwgMjgsIDQsIDIxMiwgODUsIDI4LCA0LCAyMTIsIDg3LCAKLSAgICAyOCwgNCwgMjEyLCAxNiwgMjgsIDQsIDIxMSwgMjUxLCAyOCwgNCwgMjEyLCA3NSwgMjgsIDQsIDIxMiwgNTUsIDI4LCA0LCAKLSAgICAyMTIsIDYyLCAyOCwgNCwgMjEyLCA3NCwgMjgsIDQsIDIxMiwgNjYsIDI4LCA0LCAyMTIsIDY3LCAyOCwgNCwgMjEyLCA2MCwgCi0gICAgMjgsIDQsIDIxMiwgNDYsIDI4LCA0LCAxODYsIDI4LCA0LCAyMTIsIDIwMywgMjgsIDQsIDIxMiwgMjU1LCAyOCwgNCwgMjEzLCAKLSAgICA5MSwgMjgsIDQsIDIxMywgMzUsIDI4LCA0LCAyMTMsIDM4LCAyOCwgNCwgMjEyLCAyMzUsIDI4LCA0LCAyMTIsIDIyNiwgMjgsIAotICAgIDQsIDI0OCwgMTY0LCAyOCwgNCwgMjQ2LCAzMywgMjgsIDQsIDI0NywgMjExLCAyOCwgNCwgMjQ4LCAxNjMsIDI4LCA0LCAKLSAgICAyNDgsIDI4LCAyOCwgNCwgMjQ4LCA0MSwgMjgsIDQsIDI0NywgOTksIDI4LCA0LCAyNDYsIDIsIDI4LCA0LCAyNDgsIDg2LCAKLSAgICAyOCwgNCwgMjQ4LCA1MSwgMjgsIDQsIDI0OCwgNjMsIDI4LCA0LCAyNDgsIDg1LCAyOCwgNCwgMjQ4LCA3MywgMjgsIDQsIAotICAgIDI0OCwgNzQsIDI4LCA0LCAyNDgsIDU2LCAyOCwgNCwgMjQ4LCA0MiwgMjgsIDQsIDIzNSwgMTM5LCAyOCwgNCwgMjM1LCA1NCwgCi0gICAgMjgsIDQsIDIzNSwgMTEwLCAyOCwgNCwgMjM1LCAxMzgsIDI4LCA0LCAyMzUsIDEyNSwgMjgsIDQsIDIzNSwgMTI3LCAyOCwgCi0gICAgNCwgMjM1LCA3MSwgMjgsIDQsIDIzNSwgMzUsIDI4LCA0LCAyNDMsIDExMCwgMjgsIDQsIDI0MiwgOTIsIDI4LCA0LCAyNDIsIAotICAgIDE5MCwgMjgsIDQsIDI0MywgMTA3LCAyOCwgNCwgMjQzLCAzMSwgMjgsIDQsIDI0MywgMzgsIDI4LCA0LCAyNDIsIDE1MCwgCi0gICAgMjgsIDQsIDI0MiwgMTQ5LCAyOCwgNCwgMjQyLCA1OSwgMjgsIDQsIDI0MiwgNTUsIDI4LCA0LCAyNDIsIDU4LCAyOCwgNCwgCi0gICAgMjQyLCA1NiwgMjgsIDQsIDI0MiwgNTcsIDI4LCA0LCAyNDMsIDUsIDI4LCA0LCAyNDIsIDI0MSwgMjgsIDQsIDI0MiwgMjUxLCAKLSAgICAyOCwgNCwgMjQzLCA0LCAyOCwgNCwgMjQyLCAyNTUsIDI4LCA0LCAyNDMsIDAsIDI4LCA0LCAyNDIsIDI0NSwgMjgsIDQsIAotICAgIDI0MiwgMjMwLCAyOCwgNCwgMjE3LCAxNjEsIDI4LCA0LCAyMTcsIDkwLCAyOCwgNCwgMjE3LCAxMjgsIDI4LCA0LCAyMTcsIAotICAgIDE2MCwgMjgsIDQsIDIxNywgMTQ3LCAyOCwgNCwgMjE3LCAxNDgsIDI4LCA0LCAyMTcsIDEwOSwgMjgsIDQsIDIxNywgODIsIAotICAgIDI4LCA0LCAyNTAsIDkyLCAyOCwgNCwgMjUwLCA2LCAyOCwgNCwgMjUwLCA0NywgMjgsIDQsIDI1MCwgOTEsIDI4LCA0LCAKLSAgICAyNTAsIDY0LCAyOCwgNCwgMjUwLCA2NywgMjgsIDQsIDI1MCwgMjMsIDI4LCA0LCAyNDksIDI1MSwgMjgsIDQsIDIyNiwgMjMsIAotICAgIDI4LCA0LCAyMjUsIDI0NiwgMjgsIDQsIDIyNiwgOSwgMjgsIDQsIDIyNiwgMjIsIDI4LCA0LCAyMjYsIDExLCAyOCwgNCwgCi0gICAgMjI2LCAxMiwgMjgsIDQsIDIyNSwgMjUzLCAyOCwgNCwgMjI1LCAyNDIsIDI4LCA0LCAyMTYsIDE0MSwgMjgsIDQsIDIxNiwgCi0gICAgMTIyLCAyOCwgNCwgMjE2LCAxMjUsIDI4LCA0LCAyMTYsIDE0MCwgMjgsIDQsIDIxNiwgMTM1LCAyOCwgNCwgMjE2LCAxMzYsIAotICAgIDI4LCA0LCAyMTYsIDEyNCwgMjgsIDQsIDIxNiwgMTIwLCAyOCwgNCwgMjE2LCA1LCAyOCwgNCwgMjE1LCAyNTMsIDI4LCA0LCAKLSAgICAyMTYsIDEsIDI4LCA0LCAyMTYsIDQsIDI4LCA0LCAyMTYsIDIsIDI4LCA0LCAyMTYsIDMsIDI4LCA0LCAyMTUsIDI1NSwgMjgsIAotICAgIDQsIDIxNSwgMjU0LCAyOCwgNCwgMjQ0LCAxNjQsIDI4LCA0LCAyNDMsIDIwNSwgMjgsIDQsIDI0NCwgOTAsIDI4LCA0LCAKLSAgICAyNDQsIDE2MywgMjgsIDQsIDI0NCwgMTE2LCAyOCwgNCwgMjQ0LCAxMjMsIDI4LCA0LCAyNDQsIDEyLCAyOCwgNCwgMjQzLCAKLSAgICAxODgsIDI4LCA0LCAxOTMsIDI4LCA0LCAyMjUsIDM1LCAyOCwgNCwgMjI1LCAyNDAsIDI4LCA0LCAyMjYsIDIxMywgMjgsIDQsIAotICAgIDIyNiwgODYsIDI4LCA0LCAyMjYsIDk2LCAyOCwgNCwgMjI1LCAxNTAsIDI4LCA0LCAyMjUsIDIsIDI4LCA0LCAyMjMsIDExLCAKLSAgICAyOCwgNCwgMjMwLCAxMDMsIDI4LCA0LCAyNDMsIDE4MiwgMjgsIDM3LCAyNDMsIDI5LCAyNCwgMzAsIDIzMywgNDcsIDc3LCAKLSAgICAyOCwgMzcsIDMwLCAyMzMsIDQ3LCA3NywgMjgsIDM3LCAyNDMsIDI5LCA3NywgMjgsIDIyMiwgOTIsIDc3LCAyOCwgMjEzLCAKLSAgICAxOTUsIDI4LCAyNDMsIDIwMCwgMjE5LCA2OSwgMjgsIDI0OSwgMTU3LCAyOCwgMjIxLCA3MCwgMjgsIDI0OSwgMTY0LCAyOCwgCi0gICAgMjI1LCA3OSwgMjQ5LCAxNjQsIDI4LCAyMjQsIDE1OCwgNzcsIDI4LCAyMjYsIDE0MywgMjIxLCA1NywgMjgsIDIxLCAxMTYsIAotICAgIDI4LCAyMSwgMTA5LCAyOCwgMjEsIDE2NiwgMjgsIDIxLCAxNjMsIDI4LCAyMSwgMTgwLCAyOCwgMjEsIDE4OSwgMjgsIDIxLCAKLSAgICAxOTgsIDI4LCAyMSwgMTk1LCAyOCwgMjEsIDIwMCwgMjgsIDUwLCAyMTcsIDIwMCwgMjgsIDUwLCAyMTYsIDM4LCAyOCwgNTAsIAotICAgIDIxNywgMTE1LCAyOCwgNTAsIDI0MywgMjQwLCAyOCwgNTAsIDI0NCwgODMsIDI4LCA1MCwgMjIwLCAzOSwgMjgsIDUwLCAKLSAgICAyMjEsIDM3LCAyOCwgNTAsIDI0NSwgMTQxLCAyOCwgNTAsIDIyOSwgMjYsIDI4LCA1MCwgMjQwLCAyMDAsIDI4LCA1MCwgCi0gICAgMjE3LCAyMDEsIDIxNywgMTAwLCAyOCwgNCwgMjIyLCA5NiwgMjMwLCAxMTQsIDI4LCA0LCAyMzAsIDExMCwgMjgsIDQsIAotICAgIDIzMCwgMTExLCAyOCwgNCwgMjMwLCAxMTIsIDI4LCA0LCAyMjIsIDk2LCAyNTEsIDEyLCAyOCwgNCwgMjUxLCA5LCAyOCwgNCwgCi0gICAgMjUxLCAxMCwgMjgsIDQsIDI1MSwgMTEsIDI4LCA0LCAyMjIsIDk2LCAyNDMsIDE4OCwgMjgsIDQsIDI0MywgMTg0LCAyOCwgCi0gICAgNCwgMjQzLCAxODUsIDI4LCA0LCAyNDMsIDE4NiwgMjgsIDQsIDIyMiwgOTYsIDIyNSwgMiwgMjgsIDQsIDIyNCwgMjU0LCAKLSAgICAyOCwgNCwgMjI0LCAyNTUsIDI4LCA0LCAyMjUsIDAsIDI4LCAyMTYsIDI0MiwgMTUyLCAyMTIsIDIzOCwgMjgsIDIxNiwgCi0gICAgMjQyLCAxNTIsIDI0NywgMjQ4LCAyOCwgMjE2LCAyNDIsIDE1MiwgMjIzLCAxMzUsIDI4LCAyMTYsIDI0MiwgMTUyLCAyMjAsIAotICAgIDE3NSwgMjIzLCAxMzUsIDI4LCAyMTYsIDI0MiwgMTUyLCAyNDcsIDE4NywgMjgsIDIxNiwgMjQyLCAxNTIsIDIzNCwgMTcwLCAKLSAgICAyOCwgMjE2LCAyNDIsIDE1MiwgMjUwLCAzMSwgMjgsIDIxNiwgMjQyLCAxNTIsIDI0MSwgMTYyLCAyOCwgMjE2LCAyNDIsIAotICAgIDE1MiwgMjQ3LCAyNDcsIDI4LCAyMTYsIDI0MiwgMTUyLCAyMzMsIDIxNSwgMTU4LCAxLCA2MSwgMTU4LCAxLCA3NCwgMTU4LCAKLSAgICAxLCA3MiwgMTU4LCAxLCA3NSwgMTU4LCAxLCA2OSwgMTU4LCAxLCAyMTUsIDc5LCAxNTgsIDEsIDI0MywgMTEwLCAxNTgsIDEsIAotICAgIDE4MSwgMTU4LCAxLCAyNDMsIDM4LCAxNTgsIDEsIDI0MiwgMTkwLCAxNTgsIDEsIDI0MiwgMTUwLCAxNTgsIDEsIDI0MiwgCi0gICAgOTIsIDE1OCwgMSwgMjQyLCA2MCwgMTU4LCAxLCAxNTksIDE1OCwgMSwgMjQxLCAyMjIsIDE1OCwgMSwgMjQxLCAxNjUsIAotICAgIDE1OCwgMSwgMjQxLCA1NCwgMTU4LCAxLCAyNDAsIDIxMiwgMTU4LCAxLCAyNDAsIDE5MywgMTU4LCAxLCAyMzMsIDE1NywgCi0gICAgMTU4LCAxLCAyMzMsIDgyLCAxNTgsIDEsIDIzMywgMTMsIDE1OCwgMSwgMjMyLCAyMDgsIDE1OCwgMSwgMjMyLCAxNTYsIAotICAgIDE1OCwgMSwgMjMyLCAxMzAsIDE1OCwgMSwgMTg4LCAxNTgsIDEsIDIzMSwgMTU2LCAxNTgsIDEsIDIzMSwgNDIsIDE1OCwgMSwgCi0gICAgMjMwLCAyMzEsIDE1OCwgMSwgMjMwLCAxNzIsIDE1OCwgMSwgMjA1LCAxNTgsIDEsIDI0MSwgNzYsIDE1OCwgMSwgMjMwLCAKLSAgICAzMSwgMTU4LCAxLCAyMjksIDE4NywgMTU4LCAxLCAyMjksIDY0LCAxNTgsIDEsIDIyOCwgMTg1LCAxNTgsIDEsIDIyOCwgOTIsIAotICAgIDE1OCwgMSwgMjI4LCAzMywgMTU4LCAxLCAyMjQsIDE3NCwgMTU4LCAxLCAyMjQsIDE2MSwgMTU4LCAxLCAyMjQsIDE1NCwgCi0gICAgMTU4LCAxLCAyMjQsIDE0NiwgMTU4LCAxLCAyMjQsIDEzNSwgMTU4LCAxLCAyMjQsIDEzMywgMTU4LCAxLCAyMjIsIDIwMiwgCi0gICAgMTU4LCAxLCAxOTcsIDE1OCwgMSwgMjIyLCAxMDAsIDE1OCwgMSwgMjIwLCAxMTcsIDE1OCwgMSwgMjE5LCAyNDIsIDE1OCwgCi0gICAgMSwgMjE5LCAyNywgMTU4LCAxLCAyMTgsIDIwMywgMTU4LCAxLCAyNDgsIDE2NCwgMTU4LCAxLCAyMTgsIDUyLCAxNTgsIDEsIAotICAgIDI0OCwgNDEsIDE1OCwgMSwgMjE3LCAyMjksIDE1OCwgMSwgMjQ3LCAyMTEsIDE1OCwgMSwgMjE3LCA3MSwgMTU4LCAxLCAKLSAgICAyNDcsIDk5LCAxNTgsIDEsIDI0NiwgMzMsIDE1OCwgMSwgMjQ2LCA1LCAxNTgsIDEsIDI0NywgMTA4LCAxNTgsIDEsIDIxNywgCi0gICAgMTIsIDE1OCwgMSwgMjE3LCAxMSwgMTU4LCAxLCAyMTcsIDEsIDE1OCwgMSwgMjE3LCAwLCAxNTgsIDEsIDIxNiwgMjU1LCAKLSAgICAxNTgsIDEsIDIxNiwgMjU0LCAxNTgsIDEsIDIxNiwgMTQxLCAxNTgsIDEsIDIxNiwgMTM2LCAxNTgsIDEsIDIxNiwgMTI1LCAKLSAgICAxNTgsIDEsIDIxNiwgMTI0LCAxNTgsIDEsIDIxNiwgMTIyLCAxNTgsIDEsIDIxNiwgMTIxLCAxNTgsIDEsIDIxNCwgNDksIAotICAgIDE1OCwgMSwgMjE0LCA2LCAxNTgsIDEsIDIxMywgMjM1LCAxNTgsIDEsIDIxMywgMjE0LCAxNTgsIDEsIDIxMywgMTgzLCAKLSAgICAxNTgsIDEsIDIxMywgMTcxLCAxNTgsIDEsIDE4NiwgMTU4LCAxLCAyMTMsIDM4LCAxNTgsIDEsIDIxMiwgMjU1LCAxNTgsIDEsIAotICAgIDIxMiwgMjM1LCAxNTgsIDEsIDIxMiwgMjAzLCAxNTgsIDEsIDIxMiwgMTY5LCAxOCwgMTksIDI0MCwgMTYwLCAxOCwgMTksIAotICAgIDc0LCAxOCwgMTksIDI1NCwgMTk2LCAxOCwgMTksIDcyLCAxOCwgMTksIDIzNiwgMjgsIDE4LCAxOSwgNzUsIDE4LCAxOSwgCi0gICAgMjI3LCA0OSwgMTgsIDE5LCAyMTMsIDEwNCwgMjI3LCA0OSwgMTgsIDE5LCA2NiwgMjQ1LCAxNjUsIDE4LCAxOSwgNjYsIDcyLCAKLSAgICAxOCwgMTksIDYxLCAxOCwgMTksIDI1NCwgMjMyLCAxOCwgMTksIDIxNCwgNiwgMTgsIDE5LCAxNDgsIDIxNCwgNiwgMTgsIAotICAgIDE5LCAyMTMsIDIzNSwgMTgsIDE5LCAxNDgsIDIxMywgMjM1LCAxOCwgMTksIDIxMywgMjI3LCAxOCwgMTksIDE0OCwgMjEzLCAKLSAgICAyMjcsIDE4LCAxOSwgMjEzLCAyMTQsIDE4LCAxOSwgMTQ4LCAyMTMsIDIxNCwgMTgsIDE5LCAyMTMsIDIwMiwgMTgsIDE5LCAKLSAgICAxNDgsIDIxMywgMjAyLCAxOCwgMTksIDIzMCwgMTEsIDIxMywgMjAyLCAxOCwgMTksIDIxNCwgNDksIDE4LCAxOSwgMTQ4LCAKLSAgICAyMTQsIDQ5LCAxOCwgMTksIDIxNCwgNDgsIDE4LCAxOSwgMTQ4LCAyMTQsIDQ4LCAxOCwgMTksIDIzMCwgMTEsIDIxNCwgNDgsIAotICAgIDE4LCAxOSwgMjU0LCAxMDgsIDE4LCAxOSwgMjEzLCAxMDQsIDIxNCwgODIsIDE4LCAxOSwgMjQyLCAxNTYsIDIxOSwgNjksIAotICAgIDE4LCAxOSwgNDAsIDE3OSwgMTgsIDE5LCA0MCwgMjQyLCAxMTMsIDE4LCAxOSwgNDAsIDI1MSwgMTAxLCAxNTEsIDIyMywgCi0gICAgMTMwLCAxOCwgMTksIDQwLCAyMTYsIDIyNywgMTUxLCAyMjMsIDEzMCwgMTgsIDE5LCA0MCwgNDYsIDE1MSwgMjIzLCAxMzAsIAotICAgIDE4LCAxOSwgNDAsIDIyMywgMTMwLCAxOCwgMTksIDQwLCA1MSwgMTc5LCAxOCwgMTksIDQwLCA1MSwgMjIwLCAxNzUsIDcxLCAKLSAgICAyMTksIDMyLCAxOCwgMTksIDQwLCAyMzEsIDM3LCAyNDcsIDc0LCAxOCwgMTksIDQwLCAyMjAsIDE3NSwgMTk5LCA5MCwgMTgsIAotICAgIDE5LCA0MCwgMjI1LCAxNTYsIDE4LCAxOSwgNDAsIDExOSwgMjE4LCAzNiwgMTgsIDE5LCAyNDUsIDEwOCwgMTgsIDE5LCAKLSAgICAyMzUsIDI1MSwgMTgsIDE5LCAyMjcsIDYyLCAxOCwgMTksIDI1NCwgMzIsIDE4LCAxOSwgMjI2LCA5NiwgMTgsIDE5LCAyMjYsIAotICAgIDIxMSwgMTgsIDE5LCAyMjUsIDI0MCwgMTgsIDE5LCAyMjUsIDIwMywgMTgsIDE5LCAyMjUsIDE1MCwgMTgsIDE5LCAyMjUsIAotICAgIDEyOSwgMTgsIDE5LCAyMTMsIDEwNCwgMjI1LCAxMjksIDE4LCAxOSwgNjYsIDI0MSwgMjA0LCAxOCwgMTksIDY2LCAyNDEsIAotICAgIDE2NSwgMTgsIDE5LCAxOTMsIDE4LCAxOSwgMjI2LCAyMTMsIDE4LCAxOSwgMjI1LCAwLCAxOCwgMTksIDE0OCwgMjI1LCAwLCAKLSAgICAxOCwgMTksIDIyNCwgMjU0LCAxOCwgMTksIDE0OCwgMjI0LCAyNTQsIDE4LCAxOSwgMjI0LCAyNTMsIDE4LCAxOSwgMTQ4LCAKLSAgICAyMjQsIDI1MywgMTgsIDE5LCAyMjQsIDI1MSwgMTgsIDE5LCAxNDgsIDIyNCwgMjUxLCAxOCwgMTksIDIyNCwgMjUwLCAxOCwgCi0gICAgMTksIDE0OCwgMjI0LCAyNTAsIDE4LCAxOSwgMjI1LCAyLCAxOCwgMTksIDE0OCwgMjI1LCAyLCAxOCwgMTksIDIyNSwgMSwgCi0gICAgMTgsIDE5LCAxNDgsIDIyNSwgMSwgMTgsIDE5LCAyMTMsIDEwNCwgMjI1LCAxLCAxOCwgMTksIDIyNiwgMjI5LCAxOCwgMTksIAotICAgIDE0OCwgMjI2LCAyMjksIDE4LCAxOSwgNjYsIDI0MiwgNDEsIDE4LCAxOSwgMjE3LCAyMjksIDE4LCAxOSwgMjE4LCA0NywgCi0gICAgMTgsIDE5LCAyMTcsIDcxLCAxOCwgMTksIDIxNywgNTcsIDE4LCAxOSwgMTA4LCAxOCwgMTksIDIxNiwgMjMwLCAxOCwgMTksIAotICAgIDIxMywgMTA0LCAyMTYsIDIzMCwgMTgsIDE5LCA2NiwgMjQ4LCAyOCwgMTgsIDE5LCA2NiwgMjQ3LCAyMTEsIDE4LCAxOSwgCi0gICAgMjE4LCA1MiwgMTgsIDE5LCAyMTgsIDQ5LCAxOCwgMTksIDIxNiwgNDMsIDE4LCAxOSwgMTQ4LCAyMTYsIDQzLCAxOCwgMTksIAotICAgIDIxNiwgMjcsIDE4LCAxOSwgMTQ4LCAyMTYsIDI3LCAxOCwgMTksIDIxNiwgMjYsIDE4LCAxOSwgMTQ4LCAyMTYsIDI2LCAxOCwgCi0gICAgMTksIDEwOSwgMTgsIDE5LCAxNDgsIDEwOSwgMTgsIDE5LCAyMTYsIDIwLCAxOCwgMTksIDE0OCwgMjE2LCAyMCwgMTgsIDE5LCAKLSAgICAyMTYsIDQ1LCAxOCwgMTksIDE0OCwgMjE2LCA0NSwgMTgsIDE5LCAyMTYsIDQ0LCAxOCwgMTksIDE0OCwgMjE2LCA0NCwgMTgsIAotICAgIDE5LCAyMzAsIDExLCAyMTYsIDQ0LCAxOCwgMTksIDIxOCwgOTksIDE4LCAxOSwgMjE2LCAxMTIsIDE4LCAxOSwgMjE2LCA5NiwgCi0gICAgMTgsIDE5LCAyMTYsIDk1LCAxOCwgMTksIDIxNiwgMTE1LCAxOCwgMTksIDIzNCwgMTg4LCAxOCwgMTksIDIzNSwgMTEsIDE4LCAKLSAgICAxOSwgMjM0LCAxMDEsIDE4LCAxOSwgMjM0LCA5MiwgMTgsIDE5LCAyMzQsIDM3LCAxOCwgMTksIDIzNCwgMTksIDE4LCAxOSwgCi0gICAgMjEzLCAxMDQsIDIzNCwgMTksIDE4LCAxOSwgMTgxLCAxOCwgMTksIDIzNSwgMTQsIDE4LCAxOSwgMjMzLCAyMDAsIDE4LCAKLSAgICAxOSwgMTQ4LCAyMzMsIDIwMCwgMTgsIDE5LCAyMzMsIDE5OCwgMTgsIDE5LCAxNDgsIDIzMywgMTk4LCAxOCwgMTksIDIzMywgCi0gICAgMTk3LCAxOCwgMTksIDE0OCwgMjMzLCAxOTcsIDE4LCAxOSwgMjMzLCAxOTYsIDE4LCAxOSwgMTQ4LCAyMzMsIDE5NiwgMTgsIAotICAgIDE5LCAyMzMsIDE5NSwgMTgsIDE5LCAxNDgsIDIzMywgMTk1LCAxOCwgMTksIDIzMywgMjA0LCAxOCwgMTksIDE0OCwgMjMzLCAKLSAgICAyMDQsIDE4LCAxOSwgMjMzLCAyMDMsIDE4LCAxOSwgMTQ4LCAyMzMsIDIwMywgMTgsIDE5LCAyMzAsIDExLCAyMzMsIDIwMywgCi0gICAgMTgsIDE5LCAyMzUsIDI3LCAxOCwgMTksIDIzMywgMjA1LCAxOCwgMTksIDIxOSwgMjE0LCAyMzQsIDE4MiwgMTgsIDE5LCAKLSAgICAyMTksIDIxNCwgMjM0LCA5MywgMTgsIDE5LCAyMTksIDIxNCwgMjM0LCAzMiwgMTgsIDE5LCAyMTksIDIxNCwgMjM0LCAyNTIsIAotICAgIDE4LCAxOSwgMjUwLCAxMjQsIDE4LCAxOSwgMjUwLCAyMTcsIDE4LCAxOSwgMjQ5LCAyNDQsIDE4LCAxOSwgMjQ5LCAyMzQsIAotICAgIDE4LCAxOSwgMjQ5LCAxNzUsIDE4LCAxOSwgMjQ5LCAxMTMsIDE4LCAxOSwgMjEzLCAxMDQsIDI0OSwgMTEzLCAxOCwgMTksIAotICAgIDI1MCwgMjE5LCAxOCwgMTksIDI1MCwgMjE4LCAxOCwgMTksIDI0OSwgMjIsIDE4LCAxOSwgMTQ4LCAyNDksIDIyLCAxOCwgCi0gICAgMTksIDI0OSwgMjAsIDE4LCAxOSwgMTQ4LCAyNDksIDIwLCAxOCwgMTksIDI0OSwgMTksIDE4LCAxOSwgMTQ4LCAyNDksIDE5LCAKLSAgICAxOCwgMTksIDI0OSwgMTgsIDE4LCAxOSwgMTQ4LCAyNDksIDE4LCAxOCwgMTksIDI0OSwgMTcsIDE4LCAxOSwgMTQ4LCAyNDksIAotICAgIDE3LCAxOCwgMTksIDI0OSwgMjQsIDE4LCAxOSwgMTQ4LCAyNDksIDI0LCAxOCwgMTksIDI0OSwgMjMsIDE4LCAxOSwgMTQ4LCAKLSAgICAyNDksIDIzLCAxOCwgMTksIDIzMCwgMTEsIDI0OSwgMjMsIDE4LCAxOSwgMjUwLCAyNTIsIDE4LCAxOSwgMjIyLCAxMjcsIAotICAgIDIxNywgMTYzLCAxOCwgMTksIDIzMSwgMTU2LCAxOCwgMTksIDIzMiwgNDAsIDE4LCAxOSwgMjMxLCA0MiwgMTgsIDE5LCAKLSAgICAyMzEsIDE0LCAxOCwgMTksIDIzMCwgMjMxLCAxOCwgMTksIDIzMCwgMjAyLCAxOCwgMTksIDIxMywgMTA0LCAyMzAsIDIwMiwgCi0gICAgMTgsIDE5LCAxODgsIDE4LCAxOSwgMjMyLCA0MSwgMTgsIDE5LCAyMzAsIDExMiwgMTgsIDE5LCAxNDgsIDIzMCwgMTEyLCAKLSAgICAxOCwgMTksIDIzMCwgMTEwLCAxOCwgMTksIDE0OCwgMjMwLCAxMTAsIDE4LCAxOSwgMjMwLCAxMDksIDE4LCAxOSwgMTQ4LCAKLSAgICAyMzAsIDEwOSwgMTgsIDE5LCAyMzAsIDEwOCwgMTgsIDE5LCAxNDgsIDIzMCwgMTA4LCAxOCwgMTksIDIzMCwgMTA3LCAxOCwgCi0gICAgMTksIDE0OCwgMjMwLCAxMDcsIDE4LCAxOSwgMjMwLCAxMTQsIDE4LCAxOSwgMTQ4LCAyMzAsIDExNCwgMTgsIDE5LCAyMzAsIAotICAgIDExMywgMTgsIDE5LCAxNDgsIDIzMCwgMTEzLCAxOCwgMTksIDIzMCwgMTEsIDIzMCwgMTEzLCAxOCwgMTksIDE4MywgMTgsIAotICAgIDE5LCAxNDgsIDE4MywgMTgsIDE5LCAyMzEsIDQ1LCAxOCwgMTksIDI1MywgMTIxLCAxODMsIDE4LCAxOSwgMjIyLCAxMjcsIAotICAgIDE4MywgMTgsIDE5LCAyMjksIDE4NywgMTgsIDE5LCAyMzAsIDQyLCAxOCwgMTksIDIyOSwgNjQsIDE4LCAxOSwgMjI5LCAzOSwgCi0gICAgMTgsIDE5LCAyMjgsIDE4NSwgMTgsIDE5LCAyMjgsIDE3NSwgMTgsIDE5LCAyMTMsIDEwNCwgMjI4LCAxNzUsIDE4LCAxOSwgCi0gICAgMjA1LCAxOCwgMTksIDIzMCwgNDMsIDE4LCAxOSwgMjI4LCAyOSwgMTgsIDE5LCAxNDgsIDIyOCwgMjksIDE4LCAxOSwgMjI4LCAKLSAgICAzMSwgMTgsIDE5LCAxNDgsIDIyOCwgMzEsIDE4LCAxOSwgMjI4LCAzMCwgMTgsIDE5LCAxNDgsIDIyOCwgMzAsIDE4LCAxOSwgCi0gICAgMjMwLCAxMSwgMjI4LCAzMCwgMTgsIDE5LCAyMDQsIDE4LCAxOSwgNjYsIDIyOSwgMTYxLCAxOCwgMTksIDIyOSwgNjksIDE4LCAKLSAgICAxOSwgMjMzLCA4MiwgMTgsIDE5LCAyMzMsIDE1NSwgMTgsIDE5LCAyMzMsIDEzLCAxOCwgMTksIDIzMiwgMjU1LCAxOCwgMTksIAotICAgIDIzMiwgMjA4LCAxOCwgMTksIDIzMiwgMTgwLCAxOCwgMTksIDIxMywgMTA0LCAyMzIsIDE4MCwgMTgsIDE5LCAyMzMsIDE1NywgCi0gICAgMTgsIDE5LCAyMzMsIDE1NiwgMTgsIDE5LCAyMzIsIDEyNywgMTgsIDE5LCAxNDgsIDIzMiwgMTI3LCAxOCwgMTksIDIzMiwgCi0gICAgMTI2LCAxOCwgMTksIDE0OCwgMjMyLCAxMjYsIDE4LCAxOSwgMjMyLCAxMjUsIDE4LCAxOSwgMTQ4LCAyMzIsIDEyNSwgMTgsIAotICAgIDE5LCAyMzIsIDEyNCwgMTgsIDE5LCAxNDgsIDIzMiwgMTI0LCAxOCwgMTksIDIzMiwgMTIzLCAxOCwgMTksIDE0OCwgMjMyLCAKLSAgICAxMjMsIDE4LCAxOSwgMjMyLCAxMjksIDE4LCAxOSwgMTQ4LCAyMzIsIDEyOSwgMTgsIDE5LCAyMzIsIDEyOCwgMTgsIDE5LCAKLSAgICAxNDgsIDIzMiwgMTI4LCAxOCwgMTksIDE1MCwgMTgsIDE5LCAxNDgsIDE1MCwgMTgsIDE5LCAxMzgsIDE1MCwgMTgsIDE5LCAKLSAgICAyMjIsIDEwMCwgMTgsIDE5LCAyMjIsIDE5OCwgMTgsIDE5LCAyMjAsIDExNywgMTgsIDE5LCAyMjAsIDEwMSwgMTgsIDE5LCAKLSAgICAyMTksIDI0MiwgMTgsIDE5LCAyMTksIDIyNiwgMTgsIDE5LCAyMTMsIDEwNCwgMjE5LCAyMjYsIDE4LCAxOSwgMjIyLCAyMDIsIAotICAgIDE4LCAxOSwgMjIyLCAyMDAsIDE4LCAxOSwgMjE4LCAxOTQsIDE4LCAxOSwgMTQ4LCAyMTgsIDE5NCwgMTgsIDE5LCAyMTgsIAotICAgIDE4OCwgMTgsIDE5LCAxNDgsIDIxOCwgMTg4LCAxOCwgMTksIDIxOCwgMTg3LCAxOCwgMTksIDE0OCwgMjE4LCAxODcsIDE4LCAKLSAgICAxOSwgMjE4LCAxODMsIDE4LCAxOSwgMTQ4LCAyMTgsIDE4MywgMTgsIDE5LCAyMTgsIDE4MiwgMTgsIDE5LCAxNDgsIDIxOCwgCi0gICAgMTgyLCAxOCwgMTksIDIxOCwgMTk4LCAxOCwgMTksIDE0OCwgMjE4LCAxOTgsIDE4LCAxOSwgMjE4LCAxOTcsIDE4LCAxOSwgCi0gICAgMTQ4LCAyMTgsIDE5NywgMTgsIDE5LCAyMzAsIDExLCAyMTgsIDE5NywgMTgsIDE5LCAxOTcsIDE4LCAxOSwgMjUzLCAxMjEsIAotICAgIDE5NywgMTgsIDE5LCAyMTgsIDE5OSwgMTgsIDE5LCAyNTEsIDE0MSwgMTk3LCAxOCwgMTksIDIzMCwgMTk3LCAyMjAsIDM2LCAKLSAgICAxOCwgMTksIDIzMCwgMTEsIDIyMCwgMjcsIDE4LCAxOSwgMjMwLCAxMSwgMjIzLCAyLCAxOCwgMTksIDIzMCwgMTEsIDIxOSwgCi0gICAgMTY3LCAxOCwgMTksIDIzMCwgMTEsIDIxOSwgMjksIDE4LCAxOSwgMjMwLCAxMSwgMjIwLCAyNiwgMTgsIDE5LCAyMzAsIDExLCAKLSAgICAyMjIsIDEwMywgMTgsIDE5LCAyMjAsIDI0MywgMTgsIDE5LCAyMjAsIDIxMiwgMTgsIDE5LCAyMjAsIDIwNywgMTgsIDE5LCAKLSAgICAyMjAsIDE4NywgMTgsIDE5LCAyMjAsIDE4MSwgMTgsIDE5LCAyMjEsIDI0LCAxOCwgMTksIDIyMSwgMjAsIDE4LCAxOSwgCi0gICAgMjIwLCAxMzIsIDE4LCAxOSwgMTQ4LCAyMjAsIDEzMiwgMTgsIDE5LCAyMjAsIDEzMSwgMTgsIDE5LCAxNDgsIDIyMCwgMTMxLCAKLSAgICAxOCwgMTksIDIyMCwgMTMwLCAxOCwgMTksIDE0OCwgMjIwLCAxMzAsIDE4LCAxOSwgMjIwLCAxMjksIDE4LCAxOSwgMTQ4LCAKLSAgICAyMjAsIDEyOSwgMTgsIDE5LCAyMjAsIDEyOCwgMTgsIDE5LCAxNDgsIDIyMCwgMTI4LCAxOCwgMTksIDIyMCwgMTM0LCAxOCwgCi0gICAgMTksIDE0OCwgMjIwLCAxMzQsIDE4LCAxOSwgMjIwLCAxMzMsIDE4LCAxOSwgMTQ4LCAyMjAsIDEzMywgMTgsIDE5LCAyMjEsIAotICAgIDI2LCAxOCwgMTksIDIxMywgMzgsIDE4LCAxOSwgMjEzLCA4OSwgMTgsIDE5LCAyMTIsIDI1NSwgMTgsIDE5LCAyMTIsIDI0NiwgCi0gICAgMTgsIDE5LCAyMTIsIDIzNSwgMTgsIDE5LCAyMTIsIDIyMCwgMTgsIDE5LCAyMTMsIDEwNCwgMjEyLCAyMjAsIDE4LCAxOSwgCi0gICAgMTg2LCAxOCwgMTksIDIxMywgOTEsIDE4LCAxOSwgMjEyLCAxNjYsIDE4LCAxOSwgMTQ4LCAyMTIsIDE2NiwgMTgsIDE5LCAKLSAgICAyMTIsIDE2NSwgMTgsIDE5LCAxNDgsIDIxMiwgMTY1LCAxOCwgMTksIDIxMiwgMTY0LCAxOCwgMTksIDE0OCwgMjEyLCAxNjQsIAotICAgIDE4LCAxOSwgMjEyLCAxNjMsIDE4LCAxOSwgMTQ4LCAyMTIsIDE2MywgMTgsIDE5LCAyMTIsIDE2MiwgMTgsIDE5LCAxNDgsIAotICAgIDIxMiwgMTYyLCAxOCwgMTksIDIxMiwgMTY4LCAxOCwgMTksIDE0OCwgMjEyLCAxNjgsIDE4LCAxOSwgMjEyLCAxNjcsIDE4LCAKLSAgICAxOSwgMTQ4LCAyMTIsIDE2NywgMTgsIDE5LCAyMzAsIDExLCAyMTIsIDE2NywgMTgsIDE5LCAyMTMsIDEwNSwgMTgsIDE5LCAKLSAgICAyNTEsIDE4MiwgMjEzLCAxMDUsIDE4LCAxOSwgMTQ4LCAyMTMsIDEwNSwgMTgsIDE5LCAyMjIsIDEyNywgMjEyLCAyNTUsIAotICAgIDE4LCAxOSwgMjI0LCAyMSwgMTgsIDE5LCAyMjQsIDExMiwgMjI0LCAyMSwgMTgsIDE5LCAxNDgsIDIzMywgODIsIDE4LCAxOSwgCi0gICAgMjI0LCA3MywgMTgsIDE5LCAyMjMsIDE4OCwgMTgsIDE5LCAyMjMsIDEzNiwgMTgsIDE5LCAyMjMsIDExMiwgMTgsIDE5LCAKLSAgICAyMjMsIDk5LCAxOCwgMTksIDE0OCwgMjMyLCAyMDgsIDE4LCAxOSwgMjAzLCAxOCwgMTksIDIyNCwgNzQsIDE4LCAxOSwgCi0gICAgMTQ4LCAyMzMsIDE1NywgMTgsIDE5LCAyMjMsIDIwLCAxOCwgMTksIDE0OCwgMjIzLCAyMCwgMTgsIDE5LCAxNDksIDE4LCAKLSAgICAxOSwgMTQ4LCAxNDksIDE4LCAxOSwgMTM4LCAxNDksIDE4LCAxOSwgMjQ0LCAxMjMsIDE4LCAxOSwgMjQ0LCAxNjEsIDE4LCAKLSAgICAxOSwgMjQ0LCA5MCwgMTgsIDE5LCAyNDQsIDc3LCAxOCwgMTksIDI0NCwgMTIsIDE4LCAxOSwgMjQ0LCAzLCAxOCwgMTksIAotICAgIDI0NCwgMTY0LCAxOCwgMTksIDI0NCwgMTYzLCAxOCwgMTksIDI0MywgMTg3LCAxOCwgMTksIDE0OCwgMjQzLCAxODcsIDE4LCAKLSAgICAxOSwgMjQ0LCAyMzAsIDE4LCAxOSwgMjE3LCAxNDgsIDE4LCAxOSwgMjMwLCA5NiwgMjE3LCAxNDgsIDE4LCAxOSwgMjE3LCAKLSAgICAxMjgsIDE4LCAxOSwgMjMwLCA5NiwgMjE3LCAxMjgsIDE4LCAxOSwgMjE3LCAxMjQsIDE4LCAxOSwgMjMwLCA5NiwgMjE3LCAKLSAgICAxMjQsIDE4LCAxOSwgMjE3LCAxMDksIDE4LCAxOSwgMjE3LCAxMDYsIDE4LCAxOSwgMjE3LCAxNjEsIDE4LCAxOSwgMjE3LCAKLSAgICAxNjAsIDE4LCAxOSwgMjE3LCA4MSwgMTgsIDE5LCAxNDgsIDIxNywgODEsIDE4LCAxOSwgMjE3LCAxNjMsIDE4LCAxOSwgCi0gICAgMjE2LCAxMDMsIDE4LCAxOSwgMjE2LCAxMDEsIDE4LCAxOSwgMjE2LCAxMDAsIDE4LCAxOSwgMjE2LCAxMDUsIDE4LCAxOSwgCi0gICAgMjE2LCAxMDYsIDE4LCAxOSwgMjE2LCAxOCwgMTgsIDE5LCAyMTYsIDE3LCAxOCwgMTksIDIxNiwgMTYsIDE4LCAxOSwgMjE2LCAKLSAgICAxOSwgMTgsIDE5LCAyMjgsIDQ5LCAyNDEsIDIyMiwgMTgsIDE5LCAyMjgsIDQ5LCAyNDEsIDE2NSwgMTgsIDE5LCAyMjgsIAotICAgIDQ5LCAyNDEsIDE0NywgMTgsIDE5LCAyMjgsIDQ5LCAyNDEsIDU0LCAxOCwgMTksIDIyOCwgNDksIDI0MSwgMzksIDE4LCAxOSwgCi0gICAgMjI4LCA0OSwgMTU5LCAxOCwgMTksIDIyOCwgNDksIDI0MiwgMjcsIDE4LCAxOSwgMjI4LCA0OSwgMjQyLCA0MSwgMTgsIDE5LCAKLSAgICAyMjgsIDQ4LCAyNDIsIDQxLCAxOCwgMTksIDI0MSwgMTQwLCAxOCwgMTksIDIyNCwgMjI4LCAxOCwgMTksIDIyNCwgMTk4LCAKLSAgICAxOCwgMTksIDIyNCwgMTkzLCAxOCwgMTksIDIyNCwgMTg3LCAxOCwgMTksIDIyNCwgMTgyLCAxOCwgMTksIDIyNCwgMjMyLCAKLSAgICAxOCwgMTksIDIyNCwgMjMxLCAxOCwgMTksIDIyNCwgMjQwLCAxOCwgMTksIDIxNywgOCwgMTgsIDE5LCAyMTcsIDYsIDE4LCAKLSAgICAxOSwgMjE3LCA1LCAxOCwgMTksIDIxNywgOSwgMTgsIDE5LCAxNDgsIDIyNCwgMjEsIDE4LCAxOSwgMTQ4LCAyMjMsIDE4OCwgCi0gICAgMTgsIDE5LCAxNDgsIDIyMywgMTEyLCAxOCwgMTksIDE0OCwgMjAzLCAxOCwgMTksIDIyOSwgMTU3LCAxOCwgMTksIDIyOSwgCi0gICAgMTEzLCAxOCwgMTksIDIyOSwgMTA5LCAxOCwgMTksIDIyOSwgOTAsIDE4LCAxOSwgMjI5LCA4NSwgMTgsIDE5LCAyMjksIAotICAgIDE1OSwgMTgsIDE5LCAyMjksIDE1OCwgMTgsIDE5LCAyMjksIDE2MSwgMTgsIDE5LCAyMjgsIDE5NiwgMTgsIDE5LCAyMjIsIAotICAgIDEyNywgMjIwLCAyNDMsIDE4LCAxOSwgMjIyLCAxMjcsIDIyMCwgMjEyLCAxOCwgMTksIDIyMiwgMTI3LCAyMjAsIDE4NywgCi0gICAgMTgsIDE5LCAyMjIsIDEyNywgMjIxLCAyNCwgMTgsIDE5LCAyMTMsIDIwMCwgMjE3LCAxNDgsIDE4LCAxOSwgMjEzLCAyMDAsIAotICAgIDIxNywgMTI4LCAxOCwgMTksIDIxMywgMjAwLCAyMTcsIDEwOSwgMTgsIDE5LCAyMTMsIDIwMCwgMjE3LCAxNjEsIDE4LCAxOSwgCi0gICAgMjEzLCAyMDAsIDIxNywgMTYzLCAxOCwgMTksIDIzMywgMTksIDE4LCAxOSwgMjMzLCAxOCwgMTgsIDE5LCAyMzMsIDE3LCAKLSAgICAxOCwgMTksIDIzMywgMTYsIDE4LCAxOSwgMjMzLCAyNSwgMTgsIDE5LCAyMzMsIDI0LCAxOCwgMTksIDIzMywgMjYsIDE4LCAKLSAgICAxOSwgMjE3LCAxNjIsIDIxNywgMTQ4LCAxOCwgMTksIDIxNywgMTYyLCAyMTcsIDEyOCwgMTgsIDE5LCAyMTcsIDE2MiwgCi0gICAgMjE3LCAxMjQsIDE4LCAxOSwgMjE3LCAxNjIsIDIxNywgMTA5LCAxOCwgMTksIDIxNywgMTYyLCAyMTcsIDEwNiwgMTgsIDE5LCAKLSAgICAyMTcsIDE2MiwgMjE3LCAxNjEsIDE4LCAxOSwgMjE3LCAxNjIsIDIxNywgMTYwLCAxOCwgMTksIDIxNywgMTYyLCAyMTcsIAotICAgIDE2MywgMTgsIDE5LCAyNTQsIDk3LCAyNTMsIDc0LCAxOCwgMTksIDI1MSwgMTQxLCA3NCwgMTgsIDE5LCAyNTEsIDE0MSwgCi0gICAgNzIsIDE4LCAxOSwgMjUxLCAxNDEsIDc1LCAxOCwgMTksIDI1MSwgMTQxLCA2MSwgMTgsIDE5LCAyNTEsIDE0MSwgMjE0LCA2LCAKLSAgICAxOCwgMTksIDI1MSwgMTQxLCAyMTMsIDIzNSwgMTgsIDE5LCAyNTEsIDE0MSwgMjEzLCAyMTQsIDE4LCAxOSwgMjUxLCAxNDEsIAotICAgIDIxNCwgNDksIDE4LCAxOSwgMjUxLCAxNDEsIDIyOSwgMTg3LCAxOCwgMTksIDI1MSwgMTQxLCAyMjksIDY0LCAxOCwgMTksIAotICAgIDI1MSwgMTQxLCAyMjgsIDE4NSwgMTgsIDE5LCAyNTEsIDE0MSwgMjA1LCAxOCwgMTksIDI1MSwgMTQxLCAyMzQsIDE4OCwgCi0gICAgMTgsIDE5LCAyNTEsIDE0MSwgMjM0LCAxMDEsIDE4LCAxOSwgMjUxLCAxNDEsIDIzNCwgMzcsIDE4LCAxOSwgMjUxLCAxNDEsIAotICAgIDE4MSwgMTgsIDE5LCAyMjIsIDEyNywgMjQxLCAyMjIsIDE4LCAxOSwgMjIyLCAxMjcsIDI0MSwgMTY1LCAxOCwgMTksIDIyMiwgCi0gICAgMTI3LCAyNDEsIDU0LCAxOCwgMTksIDIyMiwgMTI3LCAxNTksIDE4LCAxOSwgNjYsIDI0MiwgMTk2LCAxOCwgMTksIDY2LCAKLSAgICAyNDIsIDIwMCwgMTgsIDE5LCA2NiwgMjQyLCAyMTIsIDE4LCAxOSwgNjYsIDI0MiwgMjExLCAxOCwgMTksIDY2LCAyNDIsIAotICAgIDIwMSwgMTgsIDE5LCA2NiwgMjQyLCAyMjUsIDE4LCAxOSwgNjYsIDIyMywgNTEsIDE4LCAxOSwgNjYsIDIyMywgMTEyLCAxOCwgCi0gICAgMTksIDY2LCAyMjQsIDIxLCAxOCwgMTksIDY2LCAyMjQsIDEsIDE4LCAxOSwgNjYsIDIyMywgMTg4LCAxOCwgMTksIDY2LCAKLSAgICAyMDMsIDE4LCAxOSwgNjYsIDIxMywgMTgzLCAxOCwgMTksIDY2LCAyMTMsIDIxNCwgMTgsIDE5LCA2NiwgMjE0LCA2LCAxOCwgCi0gICAgMTksIDY2LCAyMTQsIDEsIDE4LCAxOSwgNjYsIDIxMywgMjM1LCAxOCwgMTksIDY2LCAyMTQsIDQ5LCAxOCwgMTksIDY2LCAKLSAgICAyNDAsIDE4NiwgMTgsIDE5LCA2NiwgMjQwLCAxODcsIDE4LCAxOSwgNjYsIDI0MCwgMTkwLCAxOCwgMTksIDY2LCAyNDAsIAotICAgIDE4OSwgMTgsIDE5LCA2NiwgMjQwLCAxODgsIDE4LCAxOSwgNjYsIDI0MCwgMTkyLCAxOCwgMTksIDY2LCAyMTcsIDkwLCAxOCwgCi0gICAgMTksIDY2LCAyMTcsIDEwOSwgMTgsIDE5LCA2NiwgMjE3LCAxNDgsIDE4LCAxOSwgNjYsIDIxNywgMTQ3LCAxOCwgMTksIDY2LCAKLSAgICAyMTcsIDEyOCwgMTgsIDE5LCA2NiwgMjE3LCAxNjEsIDE4LCAxOSwgNjYsIDIxNiwgODYsIDE4LCAxOSwgNjYsIDIxNiwgOTUsIAotICAgIDE4LCAxOSwgNjYsIDIxNiwgMTEyLCAxOCwgMTksIDY2LCAyMTYsIDExMSwgMTgsIDE5LCA2NiwgMjE2LCA5NiwgMTgsIDE5LCAKLSAgICA2NiwgMjE2LCAxMTUsIDE4LCAxOSwgNjYsIDIyNSwgMzUsIDE4LCAxOSwgNjYsIDIyNSwgMTUwLCAxOCwgMTksIDY2LCAyMjYsIAotICAgIDk2LCAxOCwgMTksIDY2LCAyMjYsIDg2LCAxOCwgMTksIDY2LCAyMjUsIDI0MCwgMTgsIDE5LCA2NiwgMTkzLCAxOCwgMTksIAotICAgIDY2LCAyMjYsIDIyOSwgMTgsIDE5LCA2NiwgMjQyLCA5MiwgMTgsIDE5LCA2NiwgMjQyLCAxNTAsIDE4LCAxOSwgNjYsIDI0MywgCi0gICAgMzgsIDE4LCAxOSwgNjYsIDI0MywgMzEsIDE4LCAxOSwgNjYsIDI0MiwgMTkwLCAxOCwgMTksIDY2LCAyNDMsIDExMCwgMTgsIAotICAgIDE5LCA2NiwgMjM0LCAxMDgsIDE4LCAxOSwgNjYsIDIzNCwgMTEzLCAxOCwgMTksIDY2LCAyMzQsIDEyNSwgMTgsIDE5LCA2NiwgCi0gICAgMjM0LCAxMjQsIDE4LCAxOSwgNjYsIDIzNCwgMTE4LCAxOCwgMTksIDY2LCAyMzQsIDEzOCwgMTgsIDE5LCA2NiwgMjM0LCAKLSAgICA1MCwgMTgsIDE5LCA2NiwgMjM0LCA1MSwgMTgsIDE5LCA2NiwgMjM0LCA1NCwgMTgsIDE5LCA2NiwgMjM0LCA1MywgMTgsIAotICAgIDE5LCA2NiwgMjM0LCA1MiwgMTgsIDE5LCA2NiwgMjM0LCA1NSwgMTgsIDE5LCA2NiwgMjM0LCA1NiwgMTgsIDE5LCA2NiwgCi0gICAgMjI4LCA5MiwgMTgsIDE5LCA2NiwgMjI4LCAxODUsIDE4LCAxOSwgNjYsIDIyOSwgMTg3LCAxOCwgMTksIDY2LCAyMjksIAotICAgIDE4NCwgMTgsIDE5LCA2NiwgMjI5LCA2NCwgMTgsIDE5LCA2NiwgMjA1LCAxOCwgMTksIDY2LCAyMzAsIDE3MiwgMTgsIDE5LCAKLSAgICA2NiwgMjMwLCAyMzEsIDE4LCAxOSwgNjYsIDIzMSwgMTU2LCAxOCwgMTksIDY2LCAyMzEsIDE0NSwgMTgsIDE5LCA2NiwgCi0gICAgMjMxLCA0MiwgMTgsIDE5LCA2NiwgMTg4LCAxOCwgMTksIDY2LCAyMTIsIDIwMywgMTgsIDE5LCA2NiwgMjEyLCAyMzUsIDE4LCAKLSAgICAxOSwgNjYsIDIxMywgMzgsIDE4LCAxOSwgNjYsIDIxMywgMzUsIDE4LCAxOSwgNjYsIDIxMiwgMjU1LCAxOCwgMTksIDY2LCAKLSAgICAxODYsIDE4LCAxOSwgNjYsIDIzNSwgNTQsIDE4LCAxOSwgMjIyLCAxMjcsIDIzNSwgNTQsIDE4LCAxOSwgNjYsIDIzNSwgNzEsIAotICAgIDE4LCAxOSwgNjYsIDIzNSwgMTI3LCAxOCwgMTksIDY2LCAyMzUsIDEyNSwgMTgsIDE5LCA2NiwgMjM1LCAxMTAsIDE4LCAxOSwgCi0gICAgMjIyLCAxMjcsIDIzNSwgMTEwLCAxOCwgMTksIDY2LCAyMzUsIDEzOSwgMTgsIDE5LCA2NiwgMjM1LCA4NCwgMTgsIDE5LCAKLSAgICA2NiwgMjM1LCA4OCwgMTgsIDE5LCA2NiwgMjM1LCA5OCwgMTgsIDE5LCA2NiwgMjM1LCA5NywgMTgsIDE5LCA2NiwgMjM1LCAKLSAgICA5NiwgMTgsIDE5LCA2NiwgMjM1LCA5OSwgMTgsIDE5LCA2NiwgMjMyLCAxNTYsIDE4LCAxOSwgNjYsIDIzMiwgMjA4LCAxOCwgCi0gICAgMTksIDY2LCAyMzMsIDgyLCAxOCwgMTksIDY2LCAyMzMsIDc0LCAxOCwgMTksIDY2LCAyMzMsIDEzLCAxOCwgMTksIDY2LCAKLSAgICAyMzMsIDE1NywgMTgsIDE5LCA2NiwgMjQ3LCAxMDMsIDE4LCAxOSwgNjYsIDI0NywgMTA0LCAxOCwgMTksIDY2LCAyNDcsIAotICAgIDEwNywgMTgsIDE5LCA2NiwgMjQ3LCAxMDYsIDE4LCAxOSwgNjYsIDI0NywgMTA1LCAxOCwgMTksIDY2LCAyNDcsIDEwOCwgCi0gICAgMTgsIDE5LCA2NiwgMjMzLCAxNSwgMTgsIDE5LCA2NiwgMjMzLCAxNywgMTgsIDE5LCA2NiwgMjMzLCAyMSwgMTgsIDE5LCAKLSAgICA2NiwgMjMzLCAyMCwgMTgsIDE5LCA2NiwgMjMzLCAxOSwgMTgsIDE5LCA2NiwgMjMzLCAyNSwgMTgsIDE5LCA2NiwgMjE3LCAKLSAgICAzLCAxOCwgMTksIDY2LCAyMTcsIDUsIDE4LCAxOSwgNjYsIDIxNywgOCwgMTgsIDE5LCA2NiwgMjE3LCA3LCAxOCwgMTksIAotICAgIDY2LCAyMTcsIDYsIDE4LCAxOSwgNjYsIDIxNywgOSwgMTgsIDE5LCA2NiwgMjE2LCAyNTUsIDE4LCAxOSwgNjYsIDIxNywgMCwgCi0gICAgMTgsIDE5LCA2NiwgMjE3LCAxMSwgMTgsIDE5LCA2NiwgMjE3LCAxMCwgMTgsIDE5LCA2NiwgMjE3LCAxLCAxOCwgMTksIDY2LCAKLSAgICAyMTcsIDEyLCAxOCwgMTksIDY2LCAyMTIsIDgsIDE4LCAxOSwgNjYsIDIxMiwgMTYsIDE4LCAxOSwgNjYsIDIxMiwgODcsIAotICAgIDE4LCAxOSwgNjYsIDIxMiwgODUsIDE4LCAxOSwgNjYsIDIxMiwgMzcsIDE4LCAxOSwgNjYsIDIxMiwgMTA5LCAxOCwgMTksIAotICAgIDY2LCAyMTIsIDE1MiwgMTgsIDE5LCA2NiwgNzAsIDIxMiwgMTUyLCAxOCwgMTksIDY2LCAyNDUsIDIzOSwgMTgsIDE5LCA2NiwgCi0gICAgMjQ1LCAyNDAsIDE4LCAxOSwgNjYsIDI0NSwgMjQ3LCAxOCwgMTksIDY2LCAyNDUsIDI0NiwgMTgsIDE5LCA2NiwgMjQ1LCAKLSAgICAyNDIsIDE4LCAxOSwgNjYsIDI0NSwgMjQ5LCAxOCwgMTksIDY2LCAyMTksIDI3LCAxOCwgMTksIDY2LCAyMTksIDI0MiwgMTgsIAotICAgIDE5LCA2NiwgMjIyLCAxMDAsIDE4LCAxOSwgNjYsIDIyMiwgODksIDE4LCAxOSwgNjYsIDIyMCwgMTE3LCAxOCwgMTksIDY2LCAKLSAgICAyMjIsIDIwMiwgMTgsIDE5LCA2NiwgMjIwLCAxNTAsIDE4LCAxOSwgNjYsIDIyMCwgMTg3LCAxOCwgMTksIDY2LCAyMjAsIAotICAgIDI0MywgMTgsIDE5LCA2NiwgMjIwLCAyNDEsIDE4LCAxOSwgNjYsIDIyMCwgMjEyLCAxOCwgMTksIDY2LCAyMjEsIDI0LCAxOCwgCi0gICAgMTksIDY2LCAyMjEsIDI2LCAxOCwgMTksIDY2LCAyMTYsIDEyMiwgMTgsIDE5LCA2NiwgMjE2LCAxMjQsIDE4LCAxOSwgNjYsIAotICAgIDIxNiwgMTM2LCAxOCwgMTksIDY2LCAyMTYsIDEzNSwgMTgsIDE5LCA2NiwgMjE2LCAxMjUsIDE4LCAxOSwgNjYsIDIxNiwgCi0gICAgMTQxLCAxOCwgMTksIDY2LCAyNTAsIDYsIDE4LCAxOSwgNjYsIDI1MCwgMjMsIDE4LCAxOSwgNjYsIDI1MCwgNjcsIDE4LCAKLSAgICAxOSwgNjYsIDI1MCwgNjQsIDE4LCAxOSwgNjYsIDI1MCwgNDcsIDE4LCAxOSwgNjYsIDI1MCwgOTIsIDE4LCAxOSwgNjYsIAotICAgIDIxNiwgODksIDE4LCAxOSwgNjYsIDIxNiwgOTAsIDE4LCAxOSwgNjYsIDIxNiwgOTMsIDE4LCAxOSwgNjYsIDIxNiwgOTIsIAotICAgIDE4LCAxOSwgNjYsIDIxNiwgOTEsIDE4LCAxOSwgNjYsIDIxNiwgOTQsIDE4LCAxOSwgMjUwLCA0OCwgNTIsIDE4LCAxOSwgCi0gICAgMjQzLCAyMDAsIDIxOSwgNjksIDE4LCAxOSwgMjI0LCAyMjQsIDE4LCAxOSwgMjI5LCAxNTYsIDE4LCAxOSwgMjI4LCAxOTMsIAotICAgIDE4LCAxOSwgMjI4LCAxOTIsIDE4LCAxOSwgMjI4LCAxOTEsIDE4LCAxOSwgMjI4LCAxOTAsIDE4LCAxOSwgMjI4LCAxOTUsIAotICAgIDE4LCAxOSwgMjI4LCAxOTQsIDE4LCAxOSwgMjEzLCAyMDAsIDIxNywgNzksIDE4LCAxOSwgMjEzLCAyMDAsIDIxNywgNzgsIAotICAgIDE4LCAxOSwgMjEzLCAyMDAsIDIxNywgNzcsIDE4LCAxOSwgMjEzLCAyMDAsIDIxNywgNzYsIDE4LCAxOSwgMjEzLCAyMDAsIAotICAgIDIxNywgNzUsIDE4LCAxOSwgMjEzLCAyMDAsIDIxNywgODIsIDE4LCAxOSwgMjEzLCAyMDAsIDIxNywgODEsIDE4LCAxOSwgCi0gICAgMjEzLCAyMDAsIDQwLCAyMTcsIDE2MywgMTgsIDE5LCAyNTEsIDE0MSwgMjE0LCA4MiwgMjI3LCA5MiwgMjE5LCAyMDcsIDc3LCAKLSAgICAyMjcsIDkyLCAxLCAyNTEsIDIyNCwgMjI3LCA5MiwgMSwgMjMyLCAxNDUsIDIyNywgOTIsIDEsIDI0NCwgMTIwLCAyMjcsIAotICAgIDkyLCAxLCAyMjIsIDE4NiwgMjI3LCA5MiwgMSwgMjI5LCAyNCwgMjI3LCA5MiwgMSwgMjE1LCAxOTUsIDIyNywgOTIsIDEsIAotICAgIDI0OCwgMTQyLCAyMjcsIDkyLCAxLCAyMTcsIDMzLCAyMjcsIDkyLCAxLCAyNDksIDE2NywgMjI3LCA5MiwgMSwgMjUwLCAKLSAgICAxMTQsIDIyNywgOTIsIDEsIDIzMCwgMTYxLCAyMjcsIDkyLCAxLCAyNDIsIDEzMiwgMjI3LCA5MiwgMSwgMjI5LCAxNDcsIAotICAgIDIyNywgOTIsIDEsIDIxOSwgNjIsIDIyNywgOTIsIDEsIDIyMywgNDYsIDIyNywgOTIsIDEsIDI1NCwgMTA1LCAyMjcsIDkyLCAKLSAgICAxLCAyMjcsIDUzLCAyMjcsIDkyLCAxLCAyMTUsIDEyMSwgMjI3LCA5MiwgMSwgMjQ1LCAxODcsIDIyNywgOTIsIDEsIDIzNSwgCi0gICAgMTg2LCAyMjcsIDkyLCAxLCAyNDUsIDE4OCwgMjI3LCA5MiwgMSwgMjI3LCAyNCwgMjI3LCA5MiwgMSwgMjE1LCAxNzYsIAotICAgIDIyNywgOTIsIDEsIDIzNiwgMzQsIDIyNywgOTIsIDEsIDI0NSwgMTg1LCAyMjcsIDkyLCAxLCAyMjYsIDc3LCAyMjcsIDkyLCAKLSAgICAyNDQsIDExOSwgNzcsIDIyNywgOTIsIDIyMywgMjAyLCAyNDQsIDExOSwgNzcsIDE2OCwgMSwgMjQ0LCAxMTAsIDI0NCwgCi0gICAgMTAyLCAyNDQsIDEyNCwgMjQ0LCAyMzAsIDE2OCwgMSwgMjE1LCA3OSwgMTY4LCAxLCAyMTUsIDEwNiwgMjE1LCAxMjIsIDY5LCAKLSAgICAxNjgsIDEsIDIxMiwgMjA1LCAxNjgsIDEsIDIxMywgMTA1LCAxNjgsIDEsIDIxNCwgODIsIDE2OCwgMSwgMjE3LCA4NCwgCi0gICAgMjE3LCA4MywgMjE3LCAxMDQsIDE2OCwgMSwgMjQ1LCAyNSwgMTY4LCAxLCAyNTQsIDQsIDYxLCAxNjgsIDEsIDIyNywgMTAsIAotICAgIDc1LCAxNjgsIDEsIDI1NCwgMTc3LCA2MSwgMTY4LCAxLCAyNTQsIDEzMiwgMTY4LCAxLCAyMzIsIDE4NiwgNzUsIDE2OCwgMSwgCi0gICAgMjIwLCAxNjgsIDc1LCAxNjgsIDEsIDc1LCAxNjgsIDEsIDIyNywgOTksIDE2OCwgMSwgMjI3LCA2MiwgMTY4LCAxLCAyMjQsIAotICAgIDU1LCAyMjQsIDY3LCAyMjMsIDI0NCwgMTQ5LCAxNjgsIDEsIDIzNCwgMTk5LCAxNjgsIDEsIDI1MCwgMTExLCAxNjgsIDEsIAotICAgIDIzNCwgMjAwLCAyMzUsIDI3LCAxNjgsIDEsIDI0MywgMTc3LCAxNjgsIDEsIDI0NSwgOTYsIDE2OCwgMSwgMjQzLCAzNCwgCi0gICAgMjQyLCA0NywgMjQzLCAxNzcsIDE2OCwgMSwgMjQzLCA3MiwgMTY4LCAxLCAyMTMsIDE3NiwgMjEzLCAxNzAsIDIxNCwgODIsIAotICAgIDE2OCwgMSwgMjQyLCAxOSwgMjQyLCA0MSwgMTY4LCAxLCAyNDIsIDIzLCAyNDIsIDQxLCAxNjgsIDEsIDIzMiwgMTg4LCAKLSAgICAyNDIsIDQxLCAxNjgsIDEsIDIyMCwgMTcxLCAyNDIsIDQxLCAxNjgsIDEsIDIzMCwgNywgMjI4LCAxOCwgMjMwLCA4LCAyMDQsIAotICAgIDE2OCwgMSwgMjIwLCAxNjksIDIwNCwgMTY4LCAxLCAyNDYsIDY5LCAxNjgsIDEsIDIzNSwgMTY2LCAyMzUsIDE3MCwgMjM1LCAKLSAgICAxNjAsIDcyLCAxNjgsIDEsIDc0LCAxNjgsIDEsIDIzNSwgMTE4LCAyMzUsIDE0MiwgMTY4LCAxLCAyNDMsIDE5LCAxNjgsIDEsIAotICAgIDIzMiwgMTg5LCAyNTQsIDE0OCwgMTY4LCAxLCAyMjAsIDE3MywgNjEsIDE2OCwgMSwgMjM1LCAxNTIsIDI0NSwgNzIsIDE2OCwgCi0gICAgMSwgMjI2LCA0MCwgMjI2LCA2MSwgMjI2LCAyMjksIDE2OCwgMSwgMjU0LCA3MiwgMjQ1LCA3MSwgMTY4LCAxLCAyMTksIAotICAgIDIxMSwgMTk3LCAxNjgsIDEsIDIyMCwgMTA1LCAyMzIsIDE4NSwgMTk3LCAxNjgsIDEsIDIyMCwgMTY3LCAxOTcsIDE2OCwgMSwgCi0gICAgMjUwLCAyNTIsIDE2OCwgMSwgMjEyLCAxNTIsIDE2OCwgMSwgMjE3LCAxNiwgMjE3LCAyNiwgMjE2LCA3LCAyMTgsIDk5LCAKLSAgICAxNjgsIDEsIDIyMCwgMTY2LCAyMTgsIDk5LCAxNjgsIDEsIDI0OSwgMywgMTY4LCAxLCAyNTEsIDIwOCwgMjUxLCAyMTEsIAotICAgIDI1MSwgMTQ3LCAyNTMsIDc0LCAxNjgsIDEsIDIyMCwgMTcyLCAyNTMsIDc0LCAxNjgsIDEsIDI0NiwgNjgsIDE2OCwgMSwgCi0gICAgMjI3LCAzNiwgMTY4LCAxLCAyNDUsIDE1MywgMjQ1LCAxNTUsIDc0LCAxNjgsIDEsIDIzMSwgMjQxLCAyMzEsIDI0OSwgMTgzLCAKLSAgICAxNjgsIDEsIDIzMiwgMTg3LCAxODMsIDE2OCwgMSwgMjIwLCAxNzAsIDE4MywgMTY4LCAxLCAyMzMsIDk3LCAyMzMsIDEzNywgCi0gICAgMjMyLCAxOTYsIDE1MCwgMTY4LCAxLCAyNDYsIDcwLCAxNjgsIDEsIDIzNSwgMjI3LCAxNjgsIDEsIDIzNSwgMjI4LCAxNjgsIAotICAgIDEsIDI0OCwgMTUzLCAyNDgsIDE1OCwgMjQ5LCAzLCAxNjgsIDEsIDIyNywgNiwgMjQ1LCAyNCwgNzUsIDE2OCwgMSwgMjQ1LCAKLSAgICAxODMsIDE2OCwgMSwgMjM1LCAxODUsIDE2OCwgMSwgMjQ5LCAyMSwgMTY4LCAxLCAyNTAsIDIwNSwgMTY4LCAxLCAyNTAsIAotICAgIDEyMywgMTY4LCAxLCAyMTksIDEwMCwgMTY4LCAxLCAyMzIsIDE4NCwgMTY4LCAxLCAyMjAsIDE2NSwgMTY4LCAxLCAyNDAsIAotICAgIDEwMywgMTY4LCAxLCAyMjQsIDI0MCwgMTY4LCAxLCAyMTMsIDE2NiwgMTY4LCAyMjAsIDgxLCAyMjUsIDI2LCAxNjgsIDIzMCwgCi0gICAgMTU1LCAyMjUsIDI2LCAxNjgsIDI0OSwgNzEsIDIyNSwgMjYsIDE2OCwgMjUzLCAxNzcsIDg3LCAxNjgsIDIxNiwgNDcsIDg3LCAKLSAgICAxNjgsIDI1MSwgMjIzLCA4NywgMjE4LCAzMiwgMSwgNjEsIDIxOCwgMzIsIDEsIDcyLCAyMTgsIDMyLCAxLCA2OSwgMjE4LCAKLSAgICAzMiwgMSwgMTgxLCAyMTgsIDMyLCAxLCAyNDMsIDExMCwgMjE4LCAzMiwgMSwgMjI5LCAxNTksIDIxOCwgMzIsIDEsIDIxOCwgCi0gICAgNTIsIDIxOCwgMzIsIDEsIDI0OCwgMTY0LCAyMTgsIDMyLCAxLCAyMDUsIDIxOCwgMzIsIDEsIDE5MywgMjE4LCAzMiwgMSwgCi0gICAgMjUyLCAxMDcsIDIxOCwgMzIsIDEsIDE4OCwgMjE4LCAzMiwgMSwgMTg2LCAyMTgsIDMyLCAxLCAyMzMsIDE1NywgMjE4LCAKLSAgICAzMiwgMSwgMjE0LCA0OSwgMjE4LCAzMiwgMSwgMjIyLCAyMDIsIDIxOCwgMzIsIDEsIDE1OSwgMjE4LCAzMiwgMzAsIDUsIAotICAgIDcyLCAyMTgsIDMyLCAzMCwgNSwgNjksIDIxOCwgMzIsIDUsIDIxNCwgMTMzLCAyNDEsIDI0NiwgMSwgNjEsIDI0MSwgMjQ2LCAKLSAgICAxLCA3MiwgMjQxLCAyNDYsIDEsIDY5LCAyNDEsIDI0NiwgMSwgMTgxLCAyNDEsIDI0NiwgMSwgMjQzLCAxMTAsIDI0MSwgCi0gICAgMjQ2LCAxLCAyMjksIDE1OSwgMjQxLCAyNDYsIDEsIDIxOCwgNTIsIDI0MSwgMjQ2LCAxLCAyNDgsIDE2NCwgMjQxLCAyNDYsIAotICAgIDEsIDIwNSwgMjQxLCAyNDYsIDEsIDE5MywgMjQxLCAyNDYsIDEsIDI1MiwgMTA3LCAyNDEsIDI0NiwgMSwgMTg4LCAyNDEsIAotICAgIDI0NiwgMSwgMTg2LCAyNDEsIDI0NiwgMSwgMjAzLCAyNDEsIDI0NiwgMSwgMjMzLCAxNTcsIDI0MSwgMjQ2LCAxLCAyMTQsIAotICAgIDQ5LCAyNDEsIDI0NiwgMSwgMjIyLCAyMDIsIDI0MSwgMjQ2LCAxLCAxNTksIDI0MSwgMjQ2LCAzMCwgNSwgNzIsIDI0MSwgCi0gICAgMjQ2LCAzMCwgNSwgNjksIDI0MSwgMjQ2LCA1LCAyMjYsIDE3NiwgMjI2LCAyLCAyMjAsIDgxLCAyMjUsIDI2LCAyMjYsIDIsIAotICAgIDUxLCAyMjUsIDI2LCAyNTEsIDQ5LCAxLCA2MSwgMjUxLCA0OSwgMSwgNzIsIDI1MSwgNDksIDEsIDY5LCAyNTEsIDQ5LCAxLCAKLSAgICAxODEsIDI1MSwgNDksIDEsIDI0MywgMTEwLCAyNTEsIDQ5LCAxLCAyMjksIDE1OSwgMjUxLCA0OSwgMSwgMjE4LCA1MiwgCi0gICAgMjUxLCA0OSwgMSwgMjQ4LCAxNjQsIDI1MSwgNDksIDEsIDIwNSwgMjUxLCA0OSwgMSwgMTkzLCAyNTEsIDQ5LCAxLCAyNTIsIAotICAgIDEwNywgMjUxLCA0OSwgMSwgMTg4LCAyNTEsIDQ5LCAxLCAxODYsIDI1MSwgNDksIDEsIDIwMywgMjUxLCA0OSwgMSwgMjMzLCAKLSAgICAxNTcsIDI1MSwgNDksIDEsIDIxNCwgNDksIDI1MSwgNDksIDEsIDIyMiwgMjAyLCAyNTEsIDQ5LCAxLCAxNTksIDI1MSwgNDksIAotICAgIDMwLCA1LCA3MiwgMjUxLCA0OSwgMzAsIDUsIDY5LCAyMTgsIDMxLCAxLCA2MSwgMjE4LCAzMSwgMSwgNzIsIDIxOCwgMzEsIAotICAgIDEsIDY5LCAyMTgsIDMxLCAxLCAxODEsIDIxOCwgMzEsIDEsIDI0MywgMTEwLCAyMTgsIDMxLCAxLCAyMjksIDE1OSwgMjE4LCAKLSAgICAzMSwgMSwgMjE4LCA1MiwgMjE4LCAzMSwgMSwgMjQ4LCAxNjQsIDIxOCwgMzEsIDEsIDIwNSwgMjE4LCAzMSwgMSwgMTkzLCAKLSAgICAyMTgsIDMxLCAxLCAyNTIsIDEwNywgMjE4LCAzMSwgMSwgMTg4LCAyMTgsIDMxLCAxLCAxODYsIDIxOCwgMzEsIDEsIDIzMywgCi0gICAgMTU3LCAyMTgsIDMxLCAxLCAyMTQsIDQ5LCAyMTgsIDMxLCAxLCAyMjIsIDIwMiwgMjE4LCAzMSwgMzAsIDUsIDcyLCAyMTgsIAotICAgIDMxLCAzMCwgNSwgNjksIDg0LCAxLCAxODEsIDg0LCAxLCAyMzQsIDEzOCwgODQsIDEsIDIzNCwgMzcsIDg0LCAxLCAyMzQsIAotICAgIDExMywgODQsIDEsIDIyOSwgOTAsIDg0LCAxLCAyNTAsIDIxOSwgODQsIDEsIDI1MCwgOTIsIDg0LCAxLCAyNDksIDE3NSwgCi0gICAgODQsIDEsIDI1MCwgMjMsIDg0LCAxLCAyMjcsIDI1MywgODQsIDEsIDI0OCwgMTY0LCA4NCwgMSwgMjE2LCAxMDUsIDg0LCAxLCAKLSAgICAyNDcsIDk5LCA4NCwgMSwgMjE2LCAxMDAsIDg0LCAxLCAyMjgsIDE4OCwgODQsIDEsIDIxOCwgNTIsIDg0LCAxLCAyMTcsIAotICAgIDE2MSwgODQsIDEsIDEwOCwgODQsIDEsIDIxNywgMTA5LCA4NCwgMSwgMjI4LCAxODUsIDg0LCAxLCAyNTIsIDEwNywgODQsIAotICAgIDEsIDIyNiwgMjMsIDg0LCAxLCAyMjUsIDE1MCwgODQsIDEsIDIyNSwgMjUzLCA4NCwgMSwgMjMwLCAyMzEsIDg0LCAxLCAKLSAgICAyMTIsIDIzNSwgODQsIDEsIDIyMywgMTEyLCA4NCwgMSwgMjMyLCAyMDgsIDg0LCAxLCAyMTQsIDExOSwgODQsIDEsIDIyMSwgCi0gICAgMjQsIDg0LCAxLCAyMTksIDEyMSwgODQsIDEsIDIyMiwgMjAyLCA4NCwgMSwgMTU5LCA4NCwgMSwgMjMzLCAxNTcsIDg0LCAxLCAKLSAgICAyMjQsIDIzMiwgODQsIDIzNSwgMjQwLCAzMCwgMjI0LCAyMTgsIDg0LCAyMzUsIDI0MCwgMzAsIDIyNCwgMjMxLCA4NCwgCi0gICAgMjM1LCAyNDAsIDMwLCAyMjQsIDE5OCwgODQsIDIzNSwgMjQwLCAzMCwgMjI0LCAxOTMsIDg0LCAyMzUsIDI0MCwgMzAsIAotICAgIDIyNCwgMTc1LCA4NCwgMjM1LCAyNDAsIDMwLCAyMjQsIDE0NywgODQsIDIzNSwgMjQwLCAzMCwgMjI0LCAxMzUsIDg0LCAKLSAgICAyMzUsIDI0MCwgMzAsIDIyNCwgMTM0LCA4NCwgMjM1LCAyNDAsIDMwLCAyMjMsIDEyLCA4NCwgMjM1LCAyNDAsIDMwLCAyMjMsIAotICAgIDUsIDg0LCAyMzUsIDI0MCwgMzAsIDIzMiwgMTIxLCA4NCwgMjM1LCAyNDAsIDMwLCAyMzIsIDExMiwgODQsIDIzNSwgMjQwLCAKLSAgICAzMCwgMjI0LCAyMTMsIDg0LCAyMzUsIDI0MCwgMzAsIDIyNCwgMjI0LCA4NCwgMjM1LCAyNDAsIDMwLCAyMjQsIDE4MywgCi0gICAgMjE2LCAxNSwgMTE2LCA4NCwgMjM1LCAyNDAsIDMwLCAyMjQsIDE4MywgMjE2LCAxNSwgMTA5LCA4NCwgMjM1LCAyNDAsIDMwLCAKLSAgICAyMjQsIDIxNCwgODQsIDMwLCAyMzUsIDIyNiwgMjUzLCAyMTUsIDg0LCAzMCwgMjM1LCAyMjYsIDI1NCwgMjMyLCA4NCwgMzAsIAotICAgIDUsIDI1NCwgMjMyLCA4NCwgMzAsIDUsIDcyLCA4NCwgMzAsIDUsIDIzNiwgMjgsIDg0LCAzMCwgNSwgMjEzLCAxMDUsIDg0LCAKLSAgICAzMCwgNSwgMjEyLCAxNjEsIDg0LCAzMCwgNSwgNjksIDg0LCAzMCwgNSwgMjE1LCA5MiwgODQsIDMwLCA1LCAyMTUsIDE5NiwgCi0gICAgODQsIDMwLCA1LCAyMjcsIDk5LCA4NCwgMzAsIDUsIDE4NiwgODQsIDMwLCA1LCAyMzYsIDU1LCA4NCwgMzAsIDUsIDc0LCAKLSAgICA4NCwgMzAsIDUsIDI1NCwgMTQ4LCA4NCwgMzAsIDUsIDI1NCwgMTA4LCA4NCwgMzAsIDUsIDIyNywgNDksIDg0LCAzMCwgNSwgCi0gICAgMjUzLCAxMDgsIDg0LCA1LCAyMjksIDM3LCA4NCwgNSwgMjI0LCAxOSwgODQsIDUsIDIxMiwgMTcyLCA4NCwgNSwgMjMwLCAKLSAgICAxMjMsIDg0LCA1LCAyMTYsIDE3MSwgODQsIDUsIDI1MiwgNjIsIDg0LCA1LCAyMjMsIDEwNywgODQsIDUsIDIxNiwgMjUxLCAKLSAgICA4NCwgNSwgMjM0LCAyNDYsIDg0LCA1LCAyNTQsIDExMCwgODQsIDUsIDIyMiwgMTYwLCAyMjIsIDE1NCwgODQsIDUsIDIxNCwgCi0gICAgMTMwLCA4NCwgNSwgMjQ5LCAxNzAsIDg0LCA1LCAyNTIsIDM3LCA4NCwgNSwgMjM0LCAxMzEsIDg0LCA1LCAyNTIsIDU3LCAKLSAgICA4NCwgNSwgMjUwLCAxOTcsIDIyNSwgMjA0LCAyMzMsIDIwOSwgODQsIDUsIDIzMywgNTQsIDIxNiwgMjMwLCA4NCwgNSwgCi0gICAgMjUxLCAxOTcsIDg0LCA1LCAyMjUsIDI1NSwgMjMwLCAxNjksIDg0LCA1LCAyMzQsIDE4LCA4NCwgMjQ5LCAzOSwgMTYsIAotICAgIDIyMywgMTgxLCA4NCwgNSwgMjUzLCA5MCwgODQsIDUsIDI1MywgMTExLCA4NCwgMjEsIDIxMiwgNzksIDg0LCAyMSwgMTE2LCAKLSAgICA4NCwgMjEsIDEwOSwgODQsIDIxLCAxNjYsIDg0LCAyMSwgMTYzLCA4NCwgMjEsIDE4MCwgODQsIDIxLCAxODksIDg0LCAyMSwgCi0gICAgMTk4LCA4NCwgMjEsIDE5NSwgODQsIDIxLCAyMDAsIDg0LCAxNiwgMjMzLCA1NCwgMjUzLCAxMTMsIDIxOSwgMjI5LCA4NCwgCi0gICAgMTYsIDIzMywgNTQsIDI1MywgMTEzLCAyMzAsIDE0MSwgODQsIDE2LCAyMzMsIDU0LCAyNTMsIDExMywgMjI1LCAyMDMsIDg0LCAKLSAgICAxNiwgMjMzLCA1NCwgMjUzLCAxMTMsIDI1MSwgMjI1LCA4NCwgMTYsIDIzMywgNTQsIDI1MywgMTEzLCAyNTEsIDMyLCA4NCwgCi0gICAgMTYsIDIzMywgNTQsIDI1MywgMTEzLCAyMjUsIDk1LCA4NCwgMTYsIDIzMywgNTQsIDI1MywgMTEzLCAyMjUsIDg5LCA4NCwgCi0gICAgMTYsIDIzMywgNTQsIDI1MywgMTEzLCAyMjUsIDg3LCA4NCwgMTYsIDIzMywgNTQsIDI1MywgMTEzLCAyMjUsIDkzLCA4NCwgCi0gICAgMTYsIDIzMywgNTQsIDI1MywgMTEzLCAyMjUsIDkxLCA4MSwgMjUxLCAxNTksIDgxLCAyNDUsIDEyMCwgODEsIDI0OSwgMTU3LCAKLSAgICA4MSwgMjQzLCAyMDAsIDIxOSwgNjksIDgxLCAyNDksIDE2NCwgODEsIDI0MywgMjM3LCAyNDcsIDcyLCA4MSwgMjE2LCAyNTAsIAotICAgIDIxOSwgMjM2LCAyNDAsIDE2MCwgODEsIDIyMCwgMTE2LCA0LCAyNTEsIDk4LCAyMzEsIDIxNywgODEsIDIzMSwgMjQ2LCAKLSAgICAyNDksIDE1NywgODEsIDIzMSwgMjQ2LCAyNDMsIDIwMCwgMjE5LCA2OSwgODEsIDIyOSwgMjIsIDgxLCAyNDMsIDIyMywgNDMsIAotICAgIDIyMiwgNzcsIDExNiwgODEsIDI0MywgMjIzLCA0MywgMjIyLCA3NywgMTA5LCA4MSwgMjQzLCAyMjMsIDQzLCAyMjIsIDc3LCAKLSAgICAxNjYsIDgxLCAzMCwgMjIxLCA1NywgODEsIDIxLCAyMTIsIDc5LCA4MSwgMjEsIDExNiwgODEsIDIxLCAxMDksIDgxLCAyMSwgCi0gICAgMTY2LCA4MSwgMjEsIDE2MywgODEsIDIxLCAxODAsIDgxLCAyMSwgMTg5LCA4MSwgMjEsIDE5OCwgODEsIDIxLCAxOTUsIDgxLCAKLSAgICAyMSwgMjAwLCA4MSwgMSwgNjEsIDgxLCAxLCA3NCwgODEsIDEsIDcyLCA4MSwgMSwgNzUsIDgxLCAxLCA2OSwgODEsIDEsIAotICAgIDIyNywgOTksIDgxLCAxLCAyMTUsIDE4MywgODEsIDEsIDI0NSwgMTY1LCA4MSwgMSwgMjA1LCA4MSwgMSwgMjU0LCAyNCwgCi0gICAgODEsIDEsIDI1MiwgMTA3LCA4MSwgMSwgMTkzLCA4MSwgMSwgMjI0LCAyMzIsIDgxLCAxLCAyNDMsIDExMCwgODEsIDEsIAotICAgIDE4OCwgODEsIDEsIDIzMywgMTU3LCA4MSwgMSwgMjIyLCAyMDIsIDgxLCAxLCAyMjEsIDI0LCA4MSwgMSwgMjE4LCA1MiwgCi0gICAgODEsIDEsIDI0OCwgMTY0LCA4MSwgMSwgMjUwLCA5MiwgODEsIDEsIDIzNSwgMTM5LCA4MSwgMSwgMTg2LCA4MSwgMSwgMjAzLCAKLSAgICA4MSwgMSwgMjE0LCA0OSwgODEsIDEsIDI0NCwgMTY0LCA4MSwgMSwgMTgxLCA4MSwgMSwgMjM0LCAxMzgsIDgxLCAxLCAyMTYsIAotICAgIDE0MSwgODEsIDEsIDIxMiwgMTA5LCA4MSwgMSwgMjQyLCAyNywgODEsIDEsIDIxMiwgOSwgODEsIDEsIDIzMywgMjUsIDgxLCAKLSAgICAxLCAyMTIsIDYyLCA4MSwgMSwgMjUwLCA0NywgODEsIDEsIDIxNiwgMjUwLCAxODQsIDMwLCA1MiwgODEsIDEsIDIxNiwgCi0gICAgMjUwLCA3NCwgODEsIDEsIDIxNiwgMjUwLCA3MiwgODEsIDEsIDIxNiwgMjUwLCA3NSwgODEsIDEsIDIxNiwgMjUwLCA2OSwgCi0gICAgODEsIDEsIDIxNiwgMjUwLCAyMjcsIDk5LCA4MSwgMSwgMjE2LCAyNTAsIDIxNSwgMTgzLCA4MSwgMSwgMjE2LCAyNTAsIAotICAgIDI1NCwgMjQsIDgxLCAxLCAyMTYsIDI1MCwgMjUyLCAxMDcsIDgxLCAxLCAyMTYsIDI1MCwgMTkzLCA4MSwgMSwgMjE2LCAKLSAgICAyNTAsIDIyNCwgMjMyLCA4MSwgMSwgMjE2LCAyNTAsIDI0MywgMTEwLCA4MSwgMSwgMjE2LCAyNTAsIDE4OCwgODEsIDEsIAotICAgIDIxNiwgMjUwLCAyMTgsIDUyLCA4MSwgMSwgMjE2LCAyNTAsIDI0OCwgMTY0LCA4MSwgMSwgMjE2LCAyNTAsIDI1MCwgOTIsIAotICAgIDgxLCAxLCAyMTYsIDI1MCwgMjM1LCAxMzksIDgxLCAxLCAyMTYsIDI1MCwgMjE2LCAxNDEsIDgxLCAxLCAyMTYsIDI1MCwgCi0gICAgMTg2LCA4MSwgMSwgMjE2LCAyNTAsIDIxNCwgNDksIDgxLCAxLCAyMTYsIDI1MCwgMTgxLCA4MSwgMSwgMjE2LCAyNTAsIAotICAgIDI0MywgMTA3LCA4MSwgMSwgMjE2LCAyNTAsIDI0MiwgMjcsIDgxLCAxLCAyMTYsIDI1MCwgMjM1LCAxMDksIDgxLCAxLCAKLSAgICAyMTYsIDI1MCwgMjI5LCA2MiwgODEsIDEsIDIxNiwgMjUwLCAyNDUsIDI0OSwgODEsIDEsIDIyMCwgMTE2LCA3NCwgODEsIDEsIAotICAgIDIyMCwgMTE2LCA3MiwgODEsIDEsIDIyMCwgMTE2LCAyMzUsIDE1MCwgODEsIDEsIDIyMCwgMTE2LCAyMTUsIDE4MywgODEsIAotICAgIDEsIDIyMCwgMTE2LCA2OSwgODEsIDEsIDIyMCwgMTE2LCAyNTQsIDI0LCA4MSwgMSwgMjIwLCAxMTYsIDE4MSwgODEsIDEsIAotICAgIDIyMCwgMTE2LCAyNDMsIDExMCwgODEsIDEsIDIyMCwgMTE2LCAxNTksIDgxLCAxLCAyMjAsIDExNiwgMTkzLCA4MSwgMSwgCi0gICAgMjIwLCAxMTYsIDIyMSwgMjQsIDgxLCAxLCAyMjAsIDExNiwgMjE4LCA1MiwgODEsIDEsIDIyMCwgMTE2LCAyNDgsIDE2NCwgCi0gICAgODEsIDEsIDIyMCwgMTE2LCAyMzUsIDEzOSwgODEsIDEsIDIyMCwgMTE2LCAyNDQsIDE2NCwgODEsIDEsIDIyMCwgMTE2LCAKLSAgICAyNDMsIDEwNywgODEsIDEsIDIyMCwgMTE2LCAyNDIsIDI3LCA4MSwgMSwgMjIwLCAxMTYsIDIxNiwgMTQxLCA4MSwgMSwgCi0gICAgMjIwLCAxMTYsIDIxMiwgMTA5LCA4MSwgMSwgMjIwLCAxMTYsIDIyNCwgNzQsIDgxLCAxLCAyMjAsIDExNiwgMjUwLCA5MiwgCi0gICAgODEsIDEsIDIyMCwgMTE2LCAyMTIsIDc1LCA4MSwgMSwgMjMxLCAyNDYsIDcyLCA4MSwgMSwgMjMxLCAyNDYsIDE4MSwgODEsIAotICAgIDEsIDIzMSwgMjQ2LCAyMDMsIDgxLCAxLCAyMzEsIDI0NiwgMjQ0LCAxNjQsIDgxLCAxLCAyMzEsIDI0NiwgMjEyLCA3NSwgCi0gICAgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDI1MywgMjQzLCAxMTYsIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCAyMTQsIAotICAgIDEyOSwgMTE2LCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjQ4LCAxMzEsIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCAKLSAgICAyMTUsIDE5MywgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDIzNSwgMTkxLCAyMTUsIDE5MywgODEsIDEsIDI1NCwgNzEsIAotICAgIDI0MywgOTIsIDI1MiwgNzQsIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCAxMzMsIDI1MiwgNzQsIDgxLCAxLCAyNTQsIDcxLCAKLSAgICAyNDMsIDkyLCA2MSwgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDcyLCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMTgxLCAKLSAgICA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjI5LCAxNTksIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCAyNTAsIDIxOSwgODEsIAotICAgIDEsIDI1NCwgNzEsIDI0MywgOTIsIDIxNiwgMTE1LCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjE2LCAxMDUsIDgxLCAxLCAKLSAgICAyNTQsIDcxLCAyNDMsIDkyLCAyNDgsIDg2LCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjI4LCAxOTgsIDgxLCAxLCAyNTQsIAotICAgIDcxLCAyNDMsIDkyLCAyMTgsIDUyLCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjQ4LCAxNjQsIDgxLCAxLCAyNTQsIDcxLCAKLSAgICAyNDMsIDkyLCAxOTMsIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCAyMjYsIDIzLCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgCi0gICAgMjE5LCAxNTcsIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCAyMTIsIDc1LCA4MSwgMSwgMjU0LCA3MSwgMjQzLCA5MiwgMjEyLCAKLSAgICAxMDksIDgxLCAxLCAyNTQsIDcxLCAyNDMsIDkyLCAyNTQsIDExNCwgODEsIDEsIDIxNiwgMjUwLCAyNTQsIDcxLCAyNDMsIAotICAgIDkyLCAyMTgsIDUyLCA4MSwgMSwgMjE2LCAyNTAsIDI1NCwgNzEsIDI0MywgOTIsIDIxMiwgNzUsIDgxLCAxLCAyMzEsIDI0NiwgCi0gICAgMjU0LCA3MSwgMjQzLCA5MiwgMjQyLCAyMjUsIDgxLCAxLCAyMzEsIDI0NiwgMjU0LCA3MSwgMjQzLCA5MiwgMjI5LCAxNTksIAotICAgIDgxLCAxLCAyMzEsIDI0NiwgMjU0LCA3MSwgMjQzLCA5MiwgMjUwLCAyMTksIDgxLCAxLCAyMzEsIDI0NiwgMjU0LCA3MSwgCi0gICAgMjQzLCA5MiwgMjM1LCAxMTUsIDgxLCAxLCAyMzEsIDI0NiwgMjU0LCA3MSwgMjQzLCA5MiwgMjE2LCAxMTUsIDgxLCAxLCAKLSAgICAyMzEsIDI0NiwgMjU0LCA3MSwgMjQzLCA5MiwgMjQ4LCA3MCwgODEsIDEsIDIzMSwgMjQ2LCAyNTQsIDcxLCAyNDMsIDkyLCAKLSAgICAyMTgsIDUyLCA4MSwgMSwgMjMxLCAyNDYsIDI1NCwgNzEsIDI0MywgOTIsIDI0NywgMjMyLCA4MSwgMSwgMjMxLCAyNDYsIAotICAgIDI1NCwgNzEsIDI0MywgOTIsIDIxOSwgMTU3LCA4MSwgMSwgMjMxLCAyNDYsIDI1NCwgNzEsIDI0MywgOTIsIDI0OSwgMTUsIAotICAgIDgxLCAxLCAyMzEsIDI0NiwgMjU0LCA3MSwgMjQzLCA5MiwgMjEyLCA3NSwgODEsIDEsIDIzMSwgMjQ2LCAyNTQsIDcxLCAKLSAgICAyNDMsIDkyLCAyMTIsIDEwOSwgODEsIDEsIDI1NCwgNzEsIDI0MywgOTIsIDE1MSwgNjksIDgxLCAxLCAyNTQsIDcxLCAyNDMsIAotICAgIDkyLCAxNTEsIDE4NiwgODEsIDEsIDIzMSwgMjQ2LCAyNTQsIDcxLCAyNDMsIDkyLCAyNTEsIDE5NSwgODEsIDEsIDI1NCwgCi0gICAgNzEsIDI0MywgOTIsIDI0OCwgMTU0LCA4MSwgMSwgMjMxLCAyNDYsIDI1NCwgNzEsIDI0MywgOTIsIDIzMywgMjUsIDE4LCAKLSAgICAxOSwgMjI2LCAyMzMsIDE4LCAxOSwgMjUzLCA4MywgMTgsIDE5LCAyNTQsIDE4OCwgMTgsIDE5LCAyMTQsIDksIDE4LCAxOSwgCi0gICAgMjI1LCAxMDEsIDE4LCAxOSwgMjI2LCAxMDMsIDE4LCAxOSwgMjI0LCAyNDksIDE4LCAxOSwgMjE3LCAyMzgsIDE4LCAxOSwgCi0gICAgMjM0LCAxOTUsIDE4LCAxOSwgMjMzLCAyMDEsIDE4LCAxOSwgMjMxLCAxOTYsIDE4LCAxOSwgMjI4LCAxNDgsIDE4LCAxOSwgCi0gICAgMjMwLCAzLCAxOCwgMTksIDIzMywgOTIsIDE4LCAxOSwgMjE5LCAyMDksIDE4LCAxOSwgMjIyLCAxMjksIDE4LCAxOSwgMjIwLCAKLSAgICAxNTYsIDE4LCAxOSwgMjIwLCAyNDYsIDE4LCAxOSwgMjIwLCAxMjcsIDE4LCAxOSwgMjEyLCAyMTEsIDE4LCAxOSwgMjEzLCAKLSAgICA0MywgMTgsIDE5LCAyMjQsIDI3LCAxOCwgMTksIDIyOCwgMjgsIDE4LCAxOSwgMjI3LCA4MiwgMjI4LCAyOCwgMTgsIDE5LCAKLSAgICAyMjgsIDI3LCAxOCwgMTksIDIyNywgODIsIDIyOCwgMjcsIDE4LCAxOSwgMjI4LCAyNiwgMTgsIDE5LCAyMjcsIDgyLCAyMjgsIAotICAgIDI2LCAxOCwgMTksIDIyOCwgMjUsIDE4LCAxOSwgMjI3LCA4MiwgMjI4LCAyNSwgMTgsIDE5LCAyMjMsIDE3LCAxOCwgMTksIAotICAgIDIyMywgMTYsIDE4LCAxOSwgMjIzLCAxNSwgMTgsIDE5LCAyMjMsIDE0LCAxOCwgMTksIDIyMywgMTMsIDE4LCAxOSwgMjIzLCAKLSAgICAyMSwgMTgsIDE5LCAyMjcsIDgyLCAyMjYsIDIyOSwgMTgsIDE5LCAyMjcsIDgyLCAyMTgsIDk5LCAxOCwgMTksIDIyNywgODIsIAotICAgIDIzNSwgMjcsIDE4LCAxOSwgMjI3LCA4MiwgMjUwLCAyNTIsIDE4LCAxOSwgMjI3LCA4MiwgMTgzLCAxOCwgMTksIDIyNywgCi0gICAgODIsIDIwNCwgMTgsIDE5LCAyMjcsIDgyLCAxOTcsIDE4LCAxOSwgMjI3LCA4MiwgMjIxLCAyNiwgMTgsIDE5LCAyNDUsIAotICAgIDE3NSwgMjE0LCA4MiwgMTgsIDE5LCAyMTMsIDI0OCwgMjE0LCA4MiwgMTgsIDE5LCA0MCwgMywgMjIzLCAxMzAsIDE4LCAxOSwgCi0gICAgNDAsIDIyNCwgNDgsIDI0NywgNzQsIDE4LCAxOSwgMjI0LCAxMTIsIDIyMywgMTgsIDE4LCAxOSwgMTQ4LCAyMzIsIDE4MCwgCi0gICAgMTgsIDE5LCAxNDgsIDIzMywgMTU2LCAxOCwgMTksIDIxNywgODAsIDE4LCAxOSwgMjE3LCA4MiwgMTgsIDE5LCAyMTYsIDk3LCAKLSAgICAxOCwgMTksIDIxNiwgOTksIDE4LCAxOSwgMjE2LCAxMDQsIDE4LCAxOSwgMjE3LCAyLCAxOCwgMTksIDIxNywgNCwgMTgsIAotICAgIDE5LCAyMjIsIDEyNywgMjIwLCAxMzIsIDE4LCAxOSwgMjIyLCAxMjcsIDIyMCwgMTgxLCAxOCwgMTksIDIyMiwgMTI3LCAKLSAgICAyNDEsIDM5LCAxOCwgMTksIDY2LCAyNDIsIDU0LCAxOCwgMTksIDY2LCAyNDgsIDMsIDI0MywgMzEsIDE4LCAxOSwgNjYsIAotICAgIDI0MywgMTA3LCAxOCwgMTksIDY2LCAyNDIsIDU5LCAxOCwgMTksIDIyMiwgMTI3LCAyMzUsIDM3LCAxOCwgMTksIDY2LCAKLSAgICAyMzUsIDM1LCAxOCwgMTksIDI1MSwgMjQ0LCAyNDgsIDMsIDE1MCwgMTgsIDE5LCAyNTEsIDI0NCwgMjQ4LCAzLCAxNDksIAotICAgIDE4LCAxOSwgNjYsIDI0NywgMjU0LCAxOTcsIDIwOSwgMjE0LCAxMDMsIDIzMywgMzQsIDIwOSwgMSwgMTgxLCAyMDksIDEsIAotICAgIDIzNCwgMTM4LCAyMDksIDEsIDI0MywgMTEwLCAyMDksIDEsIDI0MiwgMjI1LCAyMDksIDEsIDIyOSwgMTU5LCAyMDksIDEsIAotICAgIDI1MCwgMjE5LCAyMDksIDEsIDI1MCwgOTIsIDIwOSwgMSwgMjM1LCAxMzksIDIwOSwgMSwgMjM1LCAxMTUsIDIwOSwgMSwgCi0gICAgMjEzLCA2MCwgMjA5LCAxLCAyMTgsIDUyLCAyMDksIDEsIDIxNywgMTYxLCAyMDksIDEsIDI0OCwgMTY0LCAyMDksIDEsIAotICAgIDI0NywgMjMyLCAyMDksIDEsIDIwNSwgMjA5LCAxLCAxOTMsIDIwOSwgMSwgMjI2LCAyMywgMjA5LCAxLCAyNTIsIDEwNywgCi0gICAgMjA5LCAxLCAyNTEsIDE5NSwgMjA5LCAxLCAxODgsIDIwOSwgMSwgMTg2LCAyMDksIDEsIDIwMywgMjA5LCAxLCAyMzMsIAotICAgIDE1NywgMjA5LCAxLCAyMTQsIDQ5LCAyMDksIDEsIDIyMSwgMjQsIDIwOSwgMSwgMjE5LCAxNTcsIDIwOSwgMSwgMjIyLCAKLSAgICAyMDIsIDIwOSwgMSwgMTU5LCAyMDksIDMwLCA1LCA2MSwgMjA5LCAzMCwgNSwgNzIsIDIwOSwgMzAsIDUsIDY5LCAyMDksIAotICAgIDMwLCA1LCAyNDUsIDE2NSwgMjA5LCAzMCwgNSwgMjU0LCAxMDgsIDIwOSwgMzAsIDUsIDIyNywgNDksIDIwOSwgMzAsIDUsIAotICAgIDI1MywgMTA4LCAyMDksIDMwLCA1LCA3NCwgMjA5LCAzMCwgNSwgNzUsIDIwOSwgMjE5LCAxOCwgMSwgMTg2LCAyMDksIDIxOSwgCi0gICAgMTgsIDEsIDIwMywgMjA5LCAyMTksIDE4LCAxLCAyMTQsIDQ5LCAyMDksIDMsIDEsIDE4MSwgMjA5LCAzLCAxLCAyMjksIAotICAgIDE1OSwgMjA5LCAzLCAxLCAyNTMsIDI0MiwgMjA5LCAzLCAxLCAyMTgsIDUyLCAyMDksIDMsIDEsIDIwNSwgMjA5LCAzLCAxLCAKLSAgICAxOTMsIDIwOSwgMywgMSwgMTg4LCAyMDksIDMsIDEsIDIwMywgMjA5LCAzLCAxLCAyMzMsIDE1NywgMjA5LCA1LCAyMzAsIAotICAgIDE1OSwgMjA5LCA1LCAyMzQsIDE3NywgMjA5LCA1LCAyMjIsIDIwMSwgMjA5LCA1LCAyMzIsIDE4MCwgMjA5LCAyNDQsIDI1NCwgCi0gICAgNzcsIDIwOSwgMjI0LCAxNTgsIDc3LCAyMDksIDIxLCAyMTIsIDc5LCAyMDksIDIxLCAxMTYsIDIwOSwgMjEsIDEwOSwgMjA5LCAKLSAgICAyMSwgMTY2LCAyMDksIDIxLCAxNjMsIDIwOSwgMjEsIDE4MCwgMjA5LCAyMSwgMTg5LCAyMDksIDIxLCAxOTgsIDIwOSwgMjEsIAotICAgIDE5NSwgMjA5LCAyMSwgMjAwLCAzOCwgMjMzLCA4MywgMSwgMTgxLCAzOCwgMjMzLCA4MywgMSwgMjEzLCAxNTMsIDM4LCAKLSAgICAyMzMsIDgzLCAxLCAyMjksIDE1OSwgMzgsIDIzMywgODMsIDEsIDIxNiwgMTQxLCAzOCwgMjMzLCA4MywgMSwgMjIyLCAyMDIsIAotICAgIDM4LCAyMzMsIDgzLCAxLCAxODYsIDM4LCAyMzMsIDgzLCAxLCAyMTgsIDUyLCAzOCwgMjMzLCA4MywgMSwgMjE3LCAxNjEsIAotICAgIDM4LCAyMzMsIDgzLCAxLCAyMzMsIDE1NywgMzgsIDIzMywgODMsIDEsIDE5MywgMzgsIDIzMywgODMsIDEsIDIyNiwgMjMsIAotICAgIDM4LCAyMzMsIDgzLCAxLCAxODgsIDM4LCAyMzMsIDgzLCAxLCAyNDQsIDE2NCwgMzgsIDIzMywgODMsIDEsIDIxNSwgMSwgCi0gICAgMzgsIDIzMywgODMsIDEsIDE1OSwgMzgsIDIzMywgODMsIDEsIDIyNCwgMjMyLCAzOCwgMjMzLCA4MywgMSwgMjM0LCAxMzgsIAotICAgIDM4LCAyMzMsIDgzLCAxLCAyMTYsIDEzMywgMzgsIDIzMywgODMsIDEsIDIwNSwgMzgsIDIzMywgODMsIDEsIDYxLCAzOCwgCi0gICAgMjMzLCA4MywgMSwgNzIsIDM4LCAyMzMsIDgzLCAxLCAyNDUsIDE2NSwgMzgsIDIzMywgODMsIDEsIDI0NSwgMTU0LCAzOCwgCi0gICAgMjMzLCA4MywgMSwgNjksIDM4LCAyMzMsIDgzLCAxLCAyMjcsIDQ5LCAzOCwgMjMzLCA4MywgMSwgNzUsIDM4LCAyMzMsIDgzLCAKLSAgICAxLCAyMTUsIDE4MywgMzgsIDIzMywgODMsIDEsIDc0LCAzOCwgMjMzLCA4MywgMSwgMjUzLCAxMDYsIDM4LCAyMzMsIDgzLCAKLSAgICAxLCAyNTQsIDEwOCwgMzgsIDIzMywgODMsIDEsIDIxNiwgMjM5LCAzOCwgMjMzLCA4MywgMSwgMjE2LCAyMzgsIDM4LCAyMzMsIAotICAgIDgzLCAxLCAyMTYsIDIzNywgMzgsIDIzMywgODMsIDEsIDIxNiwgMjM2LCAzOCwgMjMzLCA4MywgMSwgMjE2LCAyMzUsIDE1NiwgCi0gICAgMzgsIDE2NSwgMSwgMTI0LCAyMjQsIDIzMiwgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDIyNCwgMjMyLCAxNTYsIDM4LCAxNjUsIAotICAgIDEsIDEyNCwgMTgxLCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMjEzLCAxNTMsIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAyMjksIAotICAgIDE1OSwgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDE4MSwgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDIxMywgMTUzLCAxNTYsIDM4LCAKLSAgICAxNjUsIDEsIDExNSwgMjI5LCAxNTksIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAyMTYsIDE0MSwgMTU2LCAzOCwgMTY1LCAxLCAKLSAgICAxMjQsIDIyMiwgMjAyLCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMTg2LCAxNTYsIDM4LCAxNjUsIDEsIDExNSwgMjE2LCAxNDEsIAotICAgIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAyMjIsIDIwMiwgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDE4NiwgMTU2LCAzOCwgMTY1LCAKLSAgICAxLCAxMjQsIDIxOCwgNTIsIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAyMTcsIDE2MSwgMTU2LCAzOCwgMTY1LCAxLCAxMjQsIAotICAgIDIwNSwgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDIxOCwgNTIsIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAyMTcsIDE2MSwgMTU2LCAKLSAgICAzOCwgMTY1LCAxLCAxMTUsIDIwNSwgMTU2LCAzOCwgMTY1LCAxLCAxMjQsIDE5MywgMTU2LCAzOCwgMTY1LCAxLCAxMjQsIAotICAgIDIyNiwgMjMsIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAxODgsIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAxOTMsIDE1NiwgMzgsIAotICAgIDE2NSwgMSwgMTE1LCAyMjYsIDIzLCAxNTYsIDM4LCAxNjUsIDEsIDExNSwgMTg4LCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgCi0gICAgMjQ0LCAxNjQsIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAyMTUsIDEsIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAyMzMsIDE1NywgCi0gICAgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDI0NCwgMTY0LCAxNTYsIDM4LCAxNjUsIDEsIDExNSwgMjE1LCAxLCAxNTYsIDM4LCAKLSAgICAxNjUsIDEsIDExNSwgMjMzLCAxNTcsIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAxNTksIDE1NiwgMzgsIDE2NSwgMSwgMTI0LCAKLSAgICAyNDgsIDE2NCwgMTU2LCAzOCwgMTY1LCAxLCAxMjQsIDI1MiwgMTA3LCAxNTYsIDM4LCAxNjUsIDEsIDExNSwgMTU5LCAxNTYsIAotICAgIDM4LCAxNjUsIDEsIDExNSwgMjQ4LCAxNjQsIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAyNTIsIDEwNywgMTU2LCAzOCwgMTY1LCAKLSAgICAxLCAxMjQsIDIzMywgMjA2LCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMjEzLCAxMjYsIDE1NiwgMzgsIDE2NSwgMSwgMTE1LCAKLSAgICAyMzMsIDIwNiwgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDIxMywgMTI2LCAxNTYsIDM4LCAxNjUsIDEsIDEyNCwgMjE5LCAyNiwgCi0gICAgMTU2LCAzOCwgMTY1LCAxLCAxMTUsIDIxOSwgMjYsIDE1NiwgMzgsIDE2NSwgMzAsIDUsIDMwLCAyMjAsIDE2MywgMTU2LCAKLSAgICAzOCwgMTY1LCAzMCwgNSwgMjU0LCAyMzIsIDE1NiwgMzgsIDE2NSwgMzAsIDUsIDIzNiwgMjgsIDE1NiwgMzgsIDE2NSwgMzAsIAotICAgIDUsIDY5LCAxNTYsIDM4LCAxNjUsIDMwLCA1LCAyMTUsIDkyLCAxNTYsIDM4LCAxNjUsIDMwLCA1LCA3NCwgMTU2LCAzOCwgCi0gICAgMTY1LCAzMCwgNSwgMjU0LCAxNDgsIDE1NiwgMzgsIDE2NSwgMzAsIDUsIDc1LCAxNTYsIDM4LCAxNjUsIDMwLCA1LCAyMjcsIAotICAgIDEyMCwgMTU2LCAzOCwgMTY1LCAzMCwgNSwgMjE1LCAxODMsIDE1NiwgMzgsIDE2NSwgMzAsIDUsIDI1MywgODMsIDE1NiwgCi0gICAgMzgsIDE2NSwgMzAsIDUsIDI1NCwgMTg4LCAxNTYsIDM4LCAxNjUsIDMwLCA1LCAyMTUsIDg1LCAxNTYsIDM4LCAxNjUsIDMwLCAKLSAgICA1LCAyMjYsIDIzMywgMTU2LCAzOCwgMTY1LCAzMCwgNSwgMjI3LCAxMTcsIDE1NiwgMzgsIDE2NSwgMzAsIDUsIDIxNSwgCi0gICAgMTgwLCAxNTYsIDM4LCAxNjUsIDMwLCA1LCAyMzUsIDE1MCwgMTU2LCAzOCwgMTY1LCAxLCA0MCwgMjE1LCA3OSwgMTU2LCAKLSAgICAzOCwgMTY1LCAxLCA0MCwgMjI5LCAxNjEsIDE1NiwgMzgsIDE2NSwgMSwgNDAsIDIwNCwgMTU2LCAzOCwgMTY1LCAxLCA0MCwgCi0gICAgMTgzLCAxNTYsIDM4LCAxNjUsIDEsIDQwLCAyMzUsIDI3LCAxNTYsIDM4LCAxNjUsIDEsIDQwLCAyNDksIDMsIDE1NiwgMzgsIAotICAgIDE2NSwgMSwgNDAsIDI1MywgNzQsIDE1NiwgMzgsIDE2NSwgMTYwLCAyMzEsIDIyMSwgMTU2LCAzOCwgMTY1LCAxNjAsIDIzMSwgCi0gICAgMjIwLCAxNTYsIDM4LCAxNjUsIDIxLCAyMTIsIDc5LCAxNTYsIDM4LCAxNjUsIDIxLCAxMTYsIDE1NiwgMzgsIDE2NSwgMjEsIAotICAgIDEwOSwgMTU2LCAzOCwgMTY1LCAyMSwgMTY2LCAxNTYsIDM4LCAxNjUsIDIxLCAxNjMsIDE1NiwgMzgsIDE2NSwgMjEsIDE4MCwgCi0gICAgMTU2LCAzOCwgMTY1LCAyMSwgMTg5LCAxNTYsIDM4LCAxNjUsIDIxLCAxOTgsIDE1NiwgMzgsIDE2NSwgMjEsIDE5NSwgMTU2LCAKLSAgICAzOCwgMTY1LCAyMSwgMjAwLCAxNTYsIDM4LCAxNjUsIDg4LCAyMSwgMTE2LCAxNTYsIDM4LCAxNjUsIDUsIDIzMywgMTQzLCAKLSAgICAxNTYsIDM4LCAxNjUsIDUsIDIzMywgMTQyLCA4NCwgMTYsIDIyNiwgMTA5LCA4NCwgMTYsIDIzMCwgMTQyLCAyMzQsIDM0LCAKLSAgICA4NCwgMTYsIDIyNSwgMjA0LCAyMzQsIDM0LCA4NCwgMTYsIDI1MSwgMjI2LCAyMzQsIDM0LCA4NCwgMTYsIDI1MSwgMzMsIAotICAgIDIzNCwgMzQsIDg0LCAxNiwgMjI1LCA5NiwgMjM0LCAzNCwgODQsIDE2LCAyMjUsIDkwLCAyMzQsIDM0LCA4NCwgMTYsIDIyNSwgCi0gICAgODgsIDIzNCwgMzQsIDg0LCAxNiwgMjI1LCA5NCwgMjM0LCAzNCwgODQsIDE2LCAyMjUsIDkyLCAyMzQsIDM0LCA4NCwgMTYsIAotICAgIDI0OCwgMTE4LCAyMzQsIDM0LCA4NCwgMTYsIDI0OCwgMTE0LCAyMzQsIDM0LCA4NCwgMTYsIDI0OCwgMTEzLCAyMzQsIDM0LCAKLSAgICA4NCwgMTYsIDI0OCwgMTE2LCAyMzQsIDM0LCA4NCwgMTYsIDI0OCwgMTE1LCAyMzQsIDM0LCA4NCwgMTYsIDI0OCwgMTEyLCAKLSAgICAyMzQsIDM0LCA4NCwgMTYsIDIxNiwgNTEsIDg0LCAxNiwgMjMwLCAxNDIsIDIyMywgMTA2LCA4NCwgMTYsIDIyNSwgMjA0LCAKLSAgICAyMjMsIDEwNiwgODQsIDE2LCAyNTEsIDIyNiwgMjIzLCAxMDYsIDg0LCAxNiwgMjUxLCAzMywgMjIzLCAxMDYsIDg0LCAxNiwgCi0gICAgMjI1LCA5NiwgMjIzLCAxMDYsIDg0LCAxNiwgMjI1LCA5MCwgMjIzLCAxMDYsIDg0LCAxNiwgMjI1LCA4OCwgMjIzLCAxMDYsIAotICAgIDg0LCAxNiwgMjI1LCA5NCwgMjIzLCAxMDYsIDg0LCAxNiwgMjI1LCA5MiwgMjIzLCAxMDYsIDg0LCAxNiwgMjQ4LCAxMTgsIAotICAgIDIyMywgMTA2LCA4NCwgMTYsIDI0OCwgMTE0LCAyMjMsIDEwNiwgODQsIDE2LCAyNDgsIDExMywgMjIzLCAxMDYsIDg0LCAxNiwgCi0gICAgMjQ4LCAxMTYsIDIyMywgMTA2LCA4NCwgMTYsIDI0OCwgMTE1LCAyMjMsIDEwNiwgODQsIDE2LCAyNDgsIDExMiwgMjIzLCAKLSAgICAxMDYsIDI1MSwgNTAsIDEsIDE4MSwgMjUxLCA1MCwgMSwgMjQzLCAxMTAsIDI1MSwgNTAsIDEsIDIyOSwgMTU5LCAyNTEsIAotICAgIDUwLCAxLCAyMjksIDEwOCwgMjUxLCA1MCwgMSwgMTkzLCAyNTEsIDUwLCAxLCAyNTIsIDEwNywgMjUxLCA1MCwgMSwgMTg4LCAKLSAgICAyNTEsIDUwLCAxLCAyMzAsIDE3NSwgMjUxLCA1MCwgMSwgMjE4LCA1MiwgMjUxLCA1MCwgMSwgMjQ4LCAxNjQsIDI1MSwgNTAsIAotICAgIDEsIDIwNSwgMjUxLCA1MCwgMSwgMjI4LCAxNDcsIDI1MSwgNTAsIDEsIDI1MCwgMjE5LCAyNTEsIDUwLCAxLCAyMzUsIDEzOSwgCi0gICAgMjUxLCA1MCwgMSwgMjI4LCAyMywgMjUxLCA1MCwgMSwgMjI4LCAxOSwgMjUxLCA1MCwgMSwgMTg2LCAyNTEsIDUwLCAxLCAKLSAgICAyMDMsIDI1MSwgNTAsIDEsIDIzMywgMTU3LCAyNTEsIDUwLCAxLCAyMTUsIDEsIDI1MSwgNTAsIDEsIDIyMiwgMjAyLCAyNTEsIAotICAgIDUwLCAxLCA2MSwgMjUxLCA1MCwgMSwgMTU5LCAyNTEsIDUwLCAzMCwgNSwgNzIsIDI1MSwgNTAsIDMwLCA1LCA2OSwgMjUxLCAKLSAgICA1MCwgMzAsIDUsIDc0LCAyNTEsIDUwLCAzMCwgNSwgNzUsIDI1MSwgNTAsIDMwLCA1LCAyNTQsIDE0OCwgMjUxLCA1MCwgCi0gICAgMjI2LCAxODcsIDI1MSwgNTAsIDI0NSwgMTAxLCA2NSwgMjIyLCA5MSwgMzgsIDg4LCAxLCAxMjQsIDE4MSwgMzgsIDg4LCAxLCAKLSAgICAxMjQsIDIzNCwgMTM4LCAzOCwgODgsIDEsIDEyNCwgMjMzLCAxOTMsIDM4LCA4OCwgMSwgMTE1LCAxODEsIDM4LCA4OCwgMSwgCi0gICAgMTE1LCAyMzMsIDE5MywgMzgsIDg4LCAxLCAxMTUsIDIzNCwgMTM4LCAzOCwgODgsIDEsIDIyOSwgMTU5LCAzOCwgODgsIDEsIAotICAgIDEyNCwgMjUwLCAyMTksIDM4LCA4OCwgMSwgMTI0LCAyNTAsIDkyLCAzOCwgODgsIDEsIDExNSwgMjUwLCAyMTksIDM4LCA4OCwgCi0gICAgMSwgMTE1LCAyMjIsIDIwMiwgMzgsIDg4LCAxLCAxMTUsIDI1MCwgOTIsIDM4LCA4OCwgMSwgMjI4LCAyMywgMzgsIDg4LCAxLCAKLSAgICAyMjQsIDMyLCAzOCwgODgsIDEsIDEyNCwgMjI0LCAzMCwgMzgsIDg4LCAxLCAyNDgsIDE2NCwgMzgsIDg4LCAxLCAxMTUsIAotICAgIDIyNCwgMzAsIDM4LCA4OCwgMSwgMjI0LCA0MSwgMzgsIDg4LCAxLCAxMjQsIDIxOCwgNTIsIDM4LCA4OCwgMSwgMTI0LCAKLSAgICAyMTcsIDE2MSwgMzgsIDg4LCAxLCAxMTUsIDIxOCwgNTIsIDM4LCA4OCwgMSwgMTE1LCAyMTcsIDE2MSwgMzgsIDg4LCAxLCAKLSAgICAyMDUsIDM4LCA4OCwgMSwgMjUyLCAxMDcsIDM4LCA4OCwgMSwgMTI0LCAxOTMsIDM4LCA4OCwgMSwgMTI0LCAyMjYsIDIzLCAKLSAgICAzOCwgODgsIDEsIDEyNCwgMjQ0LCAxNjQsIDM4LCA4OCwgMSwgMTE1LCAxOTMsIDM4LCA4OCwgMSwgMTE1LCAyNDQsIDE2NCwgCi0gICAgMzgsIDg4LCAxLCAxMTUsIDIyNiwgMjMsIDM4LCA4OCwgMSwgMTg4LCAzOCwgODgsIDEsIDExNSwgMTg2LCAzOCwgODgsIDEsIAotICAgIDEyNCwgMTg2LCAzOCwgODgsIDEsIDIwMywgMzgsIDg4LCAxLCAyMjMsIDQ4LCAzOCwgODgsIDEsIDIzMywgMTU3LCAzOCwgCi0gICAgODgsIDEsIDIzMiwgMTUxLCAzOCwgODgsIDEsIDIxNCwgNDksIDM4LCA4OCwgMSwgMTI0LCAyMjEsIDI0LCAzOCwgODgsIDEsIAotICAgIDEyNCwgMjE5LCAxNTcsIDM4LCA4OCwgMSwgMTI0LCAyMjIsIDIwMiwgMzgsIDg4LCAxLCAxMjQsIDE1OSwgMzgsIDg4LCAxLCAKLSAgICAyMzIsIDIxMywgMzgsIDg4LCAxLCA2MSwgMzgsIDg4LCAxLCAxMTUsIDE1OSwgMzgsIDg4LCAxLCA3MiwgMzgsIDg4LCAxLCAKLSAgICAyMzYsIDI4LCAzOCwgODgsIDEsIDY5LCAzOCwgODgsIDEsIDIxNSwgOTIsIDM4LCA4OCwgMSwgMjQ1LCAxNjUsIDM4LCA4OCwgCi0gICAgMSwgMjI3LCA0OSwgMzgsIDg4LCAxLCAyMzMsIDE0MywgMzgsIDg4LCAxLCAyNDIsIDEwOSwgMjIyLCAyMDIsIDM4LCA4OCwgCi0gICAgMjQ5LCAxMzMsIDUsIDEzOCwgMjAzLCAzOCwgODgsIDI0OSwgMTMzLCA1LCAxMzgsIDIzMywgMTU3LCAzOCwgODgsIDI0OSwgCi0gICAgMTMzLCA1LCAyMzMsIDE1OCwgMjE4LCA5LCAyMzMsIDEzMywgMzgsIDg4LCA1LCAyMzIsIDksIDIzNCwgMjM2LCAyMzMsIAotICAgIDEzMywgMzgsIDg4LCAyNDksIDEzMywgNSwgNDAsIDIyOSwgMTU5LCAzOCwgODgsIDI0OSwgMTMzLCA1LCAxMTUsIDE5MywgCi0gICAgMzgsIDg4LCAyNDksIDEzMywgNSwgMTI0LCAyMjQsIDMxLCAxNjcsIDExNSwgMTkzLCAzOCwgODgsIDI0OSwgMTMzLCA1LCAKLSAgICAxODgsIDM4LCA4OCwgMjQ5LCAxMzMsIDUsIDI1MiwgMTA3LCAzOCwgODgsIDI0OSwgMTMzLCA1LCAyMjIsIDIwMiwgMzgsIAotICAgIDg4LCA1LCAyMjIsIDE4MSwgMzgsIDg4LCAzMCwgNSwgNjEsIDM4LCA4OCwgMzAsIDUsIDIzMiwgOSwgMjIyLCAxNDIsIDM4LCAKLSAgICA4OCwgMzAsIDUsIDI1NCwgMjMyLCAzOCwgODgsIDMwLCA1LCAyMTgsIDE1LCAyNTQsIDIzMiwgMzgsIDg4LCAzMCwgNSwgNzIsIAotICAgIDM4LCA4OCwgMzAsIDUsIDIzNiwgMjgsIDM4LCA4OCwgMzAsIDUsIDIxNSwgMTgzLCAzOCwgODgsIDMwLCA1LCAyMTUsIDkxLCAKLSAgICAzOCwgODgsIDMwLCA1LCA2OSwgMzgsIDg4LCAzMCwgNSwgMjE1LCA5MiwgMzgsIDg4LCAzMCwgNSwgNzUsIDM4LCA4OCwgMzAsIAotICAgIDUsIDIyNywgMTIxLCA1NSwgMzgsIDg4LCAzMCwgNSwgMjI2LCAyMzMsIDM4LCA4OCwgMzAsIDUsIDc0LCAzOCwgODgsIDMwLCAKLSAgICA1LCAyNTQsIDE0OCwgMzgsIDg4LCAzMCwgNSwgMjI3LCA0OSwgMzgsIDg4LCAzMCwgNSwgMjU0LCAxMDgsIDM4LCA4OCwgMzAsIAotICAgIDUsIDg4LCAyNTQsIDEwOCwgMzgsIDg4LCAzMCwgNSwgMjI3LCAxMjEsIDQ5LCAzOCwgODgsIDUsIDIzMiwgOSwgMjM0LCAKLSAgICAyMzUsIDM4LCA4OCwgNSwgMjE2LCAyNDAsIDM4LCA4OCwgNSwgMjE2LCAyMzksIDM4LCA4OCwgNSwgMjM0LCAxMDYsIDIxNiwgCi0gICAgMjM4LCAzOCwgODgsIDUsIDIzNCwgMTA2LCAyMTYsIDIzNywgMzgsIDg4LCA1LCAyMzQsIDEwNiwgMjE2LCAyMzYsIDM4LCAKLSAgICA4OCwgNSwgMjI0LCA3NywgMjQyLCAyNiwgMzgsIDg4LCA1LCAyMzIsIDksIDIyMiwgMTY4LCAzOCwgODgsIDUsIDIzNCwgCi0gICAgMTA1LCAyMzQsIDIyMCwgMzgsIDg4LCAzNywgMjQ5LCA1NSwgMjQ3LCA3NCwgMzgsIDg4LCAyNDEsIDMzLCAyMSwgMjEyLCAKLSAgICA3OSwgMzgsIDg4LCAyNDEsIDMzLCAyMSwgMTE2LCAzOCwgODgsIDI0MSwgMzMsIDIxLCAxMDksIDM4LCA4OCwgMjQxLCAzMywgCi0gICAgMjEsIDE2NiwgMzgsIDg4LCAyNDEsIDMzLCAyMSwgMTYzLCAzOCwgODgsIDI0MSwgMzMsIDIxLCAxODAsIDM4LCA4OCwgMjQxLCAKLSAgICAzMywgMjEsIDE4OSwgMzgsIDg4LCAyNDEsIDMzLCAyMSwgMTk4LCAzOCwgODgsIDI0MSwgMzMsIDIxLCAxOTUsIDM4LCA4OCwgCi0gICAgMjQxLCAzMywgMjEsIDIwMCwgMzgsIDg4LCA4OCwgMjEsIDIxMiwgNzksIDM4LCA4OCwgODgsIDIxLCAxMTYsIDM4LCA4OCwgCi0gICAgODgsIDIxLCAxMDksIDM4LCA4OCwgODgsIDIxLCAxNjYsIDM4LCA4OCwgODgsIDIxLCAxNjMsIDM4LCA4OCwgODgsIDIxLCAKLSAgICAxODAsIDM4LCA4OCwgODgsIDIxLCAxODksIDM4LCA4OCwgODgsIDIxLCAxOTgsIDM4LCA4OCwgODgsIDIxLCAxOTUsIDM4LCAKLSAgICA4OCwgODgsIDIxLCAyMDAsIDM4LCA4OCwgNSwgMjEzLCAyMzQsIDM4LCA4OCwgNSwgMjEzLCAyMzMsIDM4LCA4OCwgNSwgCi0gICAgMjIyLCAxMzMsIDM4LCA4OCwgNSwgMjM0LCAxNjYsIDM4LCA4OCwgNSwgMjQwLCAyMTksIDM4LCA4OCwgNSwgMjQ3LCA4OCwgCi0gICAgMzgsIDg4LCA1LCAyMjMsIDIwMiwgMjIzLCA4OSwgMjI0LCA0MSwgMzgsIDg4LCA1LCAyMzIsIDksIDIxMywgNjEsIDM4LCAKLSAgICA4OCwgNSwgMjM1LCAxMCwgMzgsIDg4LCA1LCAyMzUsIDksIDM4LCA4OCwgNSwgMjIyLCAxMzksIDM4LCA4OCwgNSwgMjIyLCAKLSAgICAxMzgsIDM4LCA4OCwgNSwgMjQxLCAyNDgsIDM4LCA4OCwgNSwgMjUwLCAyMTYsIDk5LCA1LCAyMTUsIDE3MCwgMjIzLCAxODMsIAotICAgIDk5LCA1LCAyMTUsIDE3MCwgMjUwLCAxODksIDk5LCA1LCAyNTAsIDEyMCwgOTksIDUsIDIxOCwgMjE1LCA5OSwgNSwgMjUxLCAKLSAgICAxNTYsIDk5LCAxLCAyNTQsIDkyLCA5OSwgMSwgMjU0LCA5MywgMjE3LCAyMjEsIDk5LCAxLCAyMzYsIDI0LCA5OSwgMSwgCi0gICAgMjM2LCAyNSwgMjE3LCAyMjEsIDk5LCAxLCAyMTUsIDE3MywgOTksIDEsIDIxNSwgMTc0LCAyMTcsIDIyMSwgOTksIDEsIAotICAgIDIyNCwgNzcsIDIyMywgMjI5LCA5OSwgMSwgMjI0LCA3NywgMjIzLCAyMzAsIDIxNywgMjIxLCA5OSwgMSwgMjMzLCAxNTgsIAotICAgIDIzMywgNDgsIDk5LCAxLCAyMzMsIDE1OCwgMjMzLCA0OSwgMjE3LCAyMjEsIDk5LCAxLCAyNDUsIDEzNiwgOTksIDEsIDI1NCwgCi0gICAgMTA2LCA5OSwgMSwgMjI3LCA3OCwgOTksIDEsIDIyNywgNzksIDIxNywgMjIxLCA5OSwgMSwgMTgxLCA5OSwgMSwgMjM1LCAKLSAgICAxNywgMjMyLCAxMiwgOTksIDEsIDI0MywgMTEwLCA5OSwgMSwgMjQzLCAxMTEsIDI0MiwgMTM3LCA5OSwgMSwgMjI5LCAxNTksIAotICAgIDk5LCAxLCAyNTAsIDIxOSwgOTksIDEsIDI1MCwgMjIwLCAyMzMsIDE0NiwgOTksIDEsIDIzNSwgMTM5LCA5OSwgMSwgMjM1LCAKLSAgICAxNDAsIDIzNSwgMTE5LCA5OSwgMSwgMjI4LCAyMywgOTksIDEsIDIxOCwgNTMsIDIzMywgOTksIDk5LCAxLCAyMTgsIDUzLCAKLSAgICAyMzAsIDEzNywgMjMyLCAxMiwgOTksIDEsIDI0OCwgMTY1LCAyMzAsIDEzNywgMjU0LCA1NCwgOTksIDEsIDI0OCwgMTY1LCAKLSAgICAyMzAsIDEzNywgMjMyLCAxMiwgOTksIDEsIDIzMCwgNDYsIDIyNCwgNDQsIDk5LCAxLCAyMTgsIDUyLCA5OSwgMSwgMjE4LCAKLSAgICA1MywgMjE3LCAyNDIsIDk5LCAxLCAyNDgsIDE2NCwgOTksIDEsIDI0OCwgMTY1LCAyMzIsIDMwLCA5OSwgMSwgMjA1LCA5OSwgCi0gICAgMSwgMTkzLCA5OSwgMSwgMjI2LCAyMTQsIDIzNCwgMjMxLCA5OSwgMSwgMjUyLCAxMDcsIDk5LCAxLCAyNTIsIDEwOCwgMjM0LCAKLSAgICAxNzgsIDk5LCAxLCAxODgsIDk5LCAxLCAxODYsIDk5LCAxLCAyMDMsIDk5LCAxLCAyMzMsIDE1NywgOTksIDEsIDIxNCwgNDksIAotICAgIDk5LCAxLCAyMjIsIDIwMywgMjIyLCAxODksIDk5LCAxLCAyMjIsIDIwMywgMjIyLCAxNDksIDk5LCAxLCAyMjIsIDIwMiwgCi0gICAgOTksIDEsIDE1OSwgOTksIDUsIDIyMywgMjIyLCA5OSwgMzAsIDUsIDIxNywgMjIxLCA5OSwgMzAsIDUsIDIxNSwgMTY5LCAKLSAgICA5OSwgMzAsIDUsIDIxNSwgMTcwLCAyMjIsIDE0NSwgOTksIDMwLCA1LCAyMTgsIDI0OCwgOTksIDMwLCA1LCAyMTgsIDI0OSwgCi0gICAgMjM2LCAxNiwgOTksIDMwLCA1LCAyMjQsIDc3LCAyMjMsIDIyOSwgOTksIDMwLCA1LCAyMjQsIDc3LCAyMjMsIDIzMCwgMjE3LCAKLSAgICAyMjEsIDk5LCAzMCwgNSwgMjMzLCAxNTgsIDIzMywgNDgsIDk5LCAzMCwgNSwgMjMzLCAxNTgsIDIzMywgNDksIDIxNywgCi0gICAgMjIxLCA5OSwgMzAsIDUsIDIxOCwgMTYsIDk5LCAzMCwgNSwgMjE4LCAxNywgMjIzLCAyMjksIDk5LCAzMCwgNSwgMjE4LCAKLSAgICAxNywgMjE3LCAyMjEsIDk5LCAzMCwgNSwgMjE4LCAxNywgMjIzLCAyMzAsIDIxNywgMjIxLCA5OSwgMzAsIDUsIDIyNiwgNTksIAotICAgIDk5LCAzMCwgNSwgMjI2LCA2MCwgMjE3LCAyMjEsIDk5LCAyNTQsIDE1NSwgMjU0LCAxNTQsIDk5LCAxLCAyMzQsIDI1NSwgCi0gICAgMjIyLCAxNDQsIDk5LCAxLCAyMzQsIDExMCwgMjIyLCAxNDQsIDk5LCAxLCAyMTYsIDAsIDIyMiwgMTQ0LCA5OSwgMSwgMjQ1LCAKLSAgICAxNjAsIDIyMiwgMTQ0LCA5OSwgMSwgMjE0LCAyMzMsIDIyMiwgMTQ0LCA5OSwgMSwgMjEyLCAxMDAsIDIyMiwgMTQ0LCA5OSwgCi0gICAgMSwgMjUzLCAxMjUsIDIyMiwgMTQ0LCA5OSwgMjEsIDIxMiwgNzksIDk5LCAyMSwgMTE2LCA5OSwgMjEsIDEwOSwgOTksIDIxLCAKLSAgICAxNjYsIDk5LCAyMSwgMTYzLCA5OSwgMjEsIDE4MCwgOTksIDIxLCAxODksIDk5LCAyMSwgMTk4LCA5OSwgMjEsIDE5NSwgOTksIAotICAgIDIxLCAyMDAsIDk5LCAyMjYsIDE1NywgOTksIDIyNiwgMTgyLCA5OSwgMjEzLCAyMjMsIDk5LCAyNTAsIDE2OCwgMjI2LCAKLSAgICAxNzUsIDk5LCAyNTAsIDE2OCwgMjIwLCA5OCwgOTksIDI1MCwgMTY4LCAyMjYsIDEzMCwgOTksIDIyNiwgMTgxLCA5OSwgMjcsIAotICAgIDE2LCAyNDcsIDgwLCA5OSwgMjcsIDE2LCAyNDgsIDIsIDk5LCAyNywgMTYsIDI0NiwgMTksIDk5LCAyNywgMTYsIDI0OCwgCi0gICAgMTIxLCA5OSwgMjcsIDE2LCAyNDgsIDEyMiwgMjE4LCAyMTUsIDk5LCAyNywgMTYsIDI0NywgMTU3LCA5OSwgMjcsIDE2LCAKLSAgICAyNDgsIDE1NywgOTksIDI3LCAxNiwgMjQ3LCAyNDAsIDk5LCAyNywgMTYsIDI0OCwgMTQzLCA5OSwgMjcsIDE2LCAyNDgsIAotICAgIDEyMiwgMjQzLCAzMywgOTksIDI3LCAxNiwgMzcsIDIxNywgMjE3LCA5OSwgMjcsIDE2LCAzNywgMjQ1LCA5OSwgOTksIDI3LCAKLSAgICAxNiwgMzcsIDIzNCwgMTczLCA5OSwgMjcsIDE2LCAzNywgMjM0LCAxNzUsIDk5LCAyNywgMTYsIDM3LCAyMzUsIDEyMywgOTksIAotICAgIDI3LCAxNiwgMzcsIDIzNCwgMTc0LCAyLCAyMzUsIDEyMywgOTksIDI3LCAxNiwgMzcsIDIzNCwgMTc2LCAyLCAyMzUsIDEyMywgCi0gICAgOTksIDI3LCAxNiwgMzcsIDI1MSwgMjE0LCA5OSwgMjcsIDE2LCAzNywgMjQyLCAxNDEsIDk5LCAyNywgMTYsIDIyMywgMTQ2LCAKLSAgICAyMjcsIDQwLCAyNDYsIDI5LCA5OSwgMjcsIDE2LCAyMjMsIDE0NiwgMjI3LCA0MCwgMjQ4LCAxNTUsIDk5LCAyNywgMTYsIAotICAgIDIyMywgMTQ2LCAyNDksIDE5MywgMjE2LCA3NSwgOTksIDI3LCAxNiwgMjIzLCAxNDYsIDI0OSwgMTkzLCAyMTgsIDIzLCA5OSwgCi0gICAgMjcsIDE2LCAyMzMsIDY4LCAyMjcsIDQwLCAyMjYsIDE3MCwgOTksIDI3LCAxNiwgMjMzLCA2OCwgMjI3LCA0MCwgMjI1LCAKLSAgICAyNSwgOTksIDI3LCAxNiwgMjMzLCA2OCwgMjQ5LCAxOTMsIDIyNSwgMTcwLCA5OSwgMjcsIDE2LCAyMzMsIDY4LCAyNDksIAotICAgIDE5MywgMjI1LCAxNjAsIDk5LCAyNywgMTYsIDIzMywgNjgsIDIyNywgNDAsIDIyNSwgMTkzLCAyMTgsIDIzNywgNSwgMjI2LCAKLSAgICAxNTQsIDIxOCwgMjM3LCA1LCAyMjYsIDE2NiwgMjE4LCAyMzcsIDUsIDIyNiwgMTYzLCAyMTgsIDIzNywgMSwgNjEsIDIxOCwgCi0gICAgMjM3LCAxLCA3MiwgMjE4LCAyMzcsIDEsIDY5LCAyMTgsIDIzNywgMSwgMjU0LCAxNDgsIDIxOCwgMjM3LCAxLCA3NSwgMjE4LCAKLSAgICAyMzcsIDEsIDc0LCAyMTgsIDIzNywgMSwgMjQ1LCAyMiwgMjE4LCAyMzcsIDEsIDE4MSwgMjE4LCAyMzcsIDEsIDIyNCwgCi0gICAgMjMyLCAyMTgsIDIzNywgMSwgMjQzLCAxMTAsIDIxOCwgMjM3LCAxLCAyMjksIDE1OSwgMjE4LCAyMzcsIDEsIDI1MCwgMjE5LCAKLSAgICAyMTgsIDIzNywgMSwgMjM1LCAxMzksIDIxOCwgMjM3LCAxLCAyMTIsIDEwOSwgMjE4LCAyMzcsIDEsIDIyOCwgMjMsIDIxOCwgCi0gICAgMjM3LCAxLCAyMTgsIDUyLCAyMTgsIDIzNywgMSwgMjQ4LCAxNjQsIDIxOCwgMjM3LCAxLCAyMDUsIDIxOCwgMjM3LCAxLCAKLSAgICAxOTMsIDIxOCwgMjM3LCAxLCAyNDQsIDE2NCwgMjE4LCAyMzcsIDEsIDIxNSwgMSwgMjE4LCAyMzcsIDEsIDI1MiwgMTA3LCAKLSAgICAyMTgsIDIzNywgMSwgMTg4LCAyMTgsIDIzNywgMSwgMTg2LCAyMTgsIDIzNywgMSwgMjAzLCAyMTgsIDIzNywgMSwgMjMzLCAKLSAgICAxNTcsIDIxOCwgMjM3LCAxLCAyMTQsIDQ5LCAyMTgsIDIzNywgMSwgMjIyLCAyMDIsIDIxOCwgMjM3LCAxLCAyMTMsIDE1MywgCi0gICAgMjE4LCAyMzcsIDEsIDE1OSwgMjE4LCAyMzcsIDI0OSwgMTMzLCA1LCAyMjYsIDE3OSwgMjE4LCAyMzcsIDI0OSwgMTMzLCA1LCAKLSAgICAyMjYsIDE1NiwgMjE4LCAyMzcsIDI0OSwgMTMzLCA1LCAyMjYsIDE1MywgMjE4LCAyMzcsIDMwLCA1LCAyMjYsIDE2OSwgCi0gICAgMjE4LCAyMzcsIDMwLCA1LCAyMjYsIDE1MiwgMjE4LCAyMzcsIDMwLCA1LCAyMjYsIDE3MywgMjE4LCAyMzcsIDMwLCA1LCAKLSAgICAyMjYsIDE2MiwgMjE4LCAyMzcsIDMwLCA1LCAyMjYsIDE4MCwgMjE4LCAyMzcsIDMwLCA1LCAyMjYsIDE3MSwgMjE4LCAyMzcsIAotICAgIDUsIDIyNiwgMTgzLCAyMTgsIDIzNywgMSwgMjM0LCAxMzgsIDIxOCwgMjM3LCAxLCAyMTgsIDE3NiwgMjE4LCAyMzcsIDIxLCAKLSAgICAyMTIsIDc5LCAyMTgsIDIzNywgMjEsIDExNiwgMjE4LCAyMzcsIDIxLCAxMDksIDIxOCwgMjM3LCAyMSwgMTY2LCAyMTgsIAotICAgIDIzNywgMjEsIDE2MywgMjE4LCAyMzcsIDIxLCAxODAsIDIxOCwgMjM3LCAyMSwgMTg5LCAyMTgsIDIzNywgMjEsIDE5OCwgCi0gICAgMjE4LCAyMzcsIDIxLCAxOTUsIDIxOCwgMjM3LCAyMSwgMjAwLCAyNTIsIDQwLCAxLCA2MSwgMjUyLCA0MCwgMSwgMjIwLCAKLSAgICA5MCwgNjEsIDI1MiwgNDAsIDEsIDE1OSwgMjUyLCA0MCwgMSwgMjIwLCA5MCwgMTU5LCAyNTIsIDQwLCAxLCAyMzEsIDI0NCwgCi0gICAgMTU5LCAyNTIsIDQwLCAxLCAyNTIsIDEwNywgMjUyLCA0MCwgMSwgMjM0LCAyMTcsIDI1MiwgMTA3LCAyNTIsIDQwLCAxLCAKLSAgICAxOTMsIDI1MiwgNDAsIDEsIDIyMCwgOTAsIDE5MywgMjUyLCA0MCwgMSwgMjA1LCAyNTIsIDQwLCAxLCAyMzEsIDI0NCwgCi0gICAgMjA1LCAyNTIsIDQwLCAxLCAyMTQsIDQ5LCAyNTIsIDQwLCAxLCAyMjAsIDkwLCAyMTQsIDQ5LCAyNTIsIDQwLCAxLCAyMjYsIAotICAgIDE5NCwgMjE0LCA0OSwgMjUyLCA0MCwgMSwgMjQzLCAxMTAsIDI1MiwgNDAsIDEsIDIyMCwgOTAsIDI0MywgMTEwLCAyNTIsIAotICAgIDQwLCAxLCAyMzUsIDEzOSwgMjUyLCA0MCwgMSwgMjQ4LCAxNjQsIDI1MiwgNDAsIDEsIDIwMywgMjUyLCA0MCwgMSwgMjIwLCAKLSAgICA5MCwgMjAzLCAyNTIsIDQwLCAxLCAxODgsIDI1MiwgNDAsIDEsIDIyMCwgOTAsIDE4OCwgMjUyLCA0MCwgMSwgMjE5LCAyMTMsIAotICAgIDIxOCwgNTIsIDI1MiwgNDAsIDEsIDIyOCwgMTY2LCAyMTgsIDUyLCAyNTIsIDQwLCAxLCAyMjIsIDIwMiwgMjUyLCA0MCwgMSwgCi0gICAgMjIwLCA5MCwgMjIyLCAyMDIsIDI1MiwgNDAsIDEsIDIzMSwgMjQ0LCAyMjIsIDIwMiwgMjUyLCA0MCwgMSwgMTg2LCAyNTIsIAotICAgIDQwLCAxLCAyMjAsIDkwLCAxODYsIDI1MiwgNDAsIDEsIDIyOSwgMTU5LCAyNTIsIDQwLCAxLCAyMzMsIDE1NywgMjUyLCA0MCwgCi0gICAgMSwgMjIwLCA5MCwgMjMzLCAxNTcsIDI1MiwgNDAsIDEsIDIyOCwgMjMsIDI1MiwgNDAsIDEsIDI1MCwgMjE5LCAyNTIsIDQwLCAKLSAgICAxLCAyMjksIDIyOCwgMjUyLCA0MCwgMSwgMjMxLCAxODcsIDI1MiwgNDAsIDEsIDcyLCAyNTIsIDQwLCAxLCA2OSwgMjUyLCAKLSAgICA0MCwgNSwgMjE2LCAyNDQsIDI1MiwgNDAsIDMwLCA1LCA3NCwgMjUyLCA0MCwgMzAsIDUsIDIyNiwgMTk0LCA3NCwgMjUyLCAKLSAgICA0MCwgMzAsIDUsIDI0NSwgMTY1LCAyNTIsIDQwLCAzMCwgNSwgNzIsIDI1MiwgNDAsIDMwLCA1LCAyMzQsIDIxNywgNzIsIAotICAgIDI1MiwgNDAsIDMwLCA1LCA3NSwgMjUyLCA0MCwgMzAsIDUsIDIzNCwgMjE3LCA3NSwgMjUyLCA0MCwgMzAsIDUsIDY5LCAKLSAgICAyNTIsIDQwLCAzMCwgNSwgMTExLCAzMSwgMjIwLCA5MCwgMjIyLCAyMDIsIDI1MiwgNDAsIDI0OSwgMTMzLCA1LCAyMjksIAotICAgIDE2MSwgMjUyLCA0MCwgMjQ5LCAxMzMsIDUsIDI0MiwgNDEsIDI1MiwgNDAsIDIyNiwgMTY1LCAyNTIsIDQwLCAyMjYsIDE2MSwgCi0gICAgMjUyLCA0MCwgMTYsIDI1MSwgMTY0LCAyMzAsIDQ2LCAyMzEsIDEwNCwgMjUyLCA0MCwgMTYsIDI1MSwgMTY0LCAyMjUsIAotICAgIDE5NiwgMjUyLCA0MCwgMTYsIDI1MSwgMTY0LCAyMzUsIDUxLCAyNTIsIDQwLCAxNiwgMjUxLCAxNjQsIDIyNiwgMTY1LCAKLSAgICAxODIsIDEsIDE4MSwgMTgyLCAxLCAyMzQsIDQ4LCAxODIsIDEsIDIzNCwgMTM4LCAxODIsIDEsIDI0MywgMTEwLCAxODIsIDEsIAotICAgIDI0MiwgMTYyLCAxODIsIDEsIDIyOSwgMTU5LCAxODIsIDEsIDI1MCwgMjE5LCAxODIsIDEsIDI1MCwgOTIsIDE4MiwgMSwgCi0gICAgMjM1LCAxMzksIDE4MiwgMSwgMjI4LCAyMywgMTgyLCAxLCAyMTgsIDUyLCAxODIsIDEsIDIxNywgMTYxLCAxODIsIDEsIAotICAgIDI0OCwgMTY0LCAxODIsIDEsIDIwNSwgMTgyLCAxLCAxOTMsIDE4MiwgMSwgMjI1LCAxNzQsIDE4MiwgMSwgMjI2LCAyMywgCi0gICAgMTgyLCAxLCAyNDQsIDE2NCwgMTgyLCAxLCAyNDQsIDQ0LCAxODIsIDEsIDI1MiwgMTA3LCAxODIsIDEsIDI1MSwgMTQ1LCAKLSAgICAxODIsIDEsIDE4OCwgMTgyLCAxLCAyMzAsIDIzNywgMTgyLCAxLCAyMTYsIDE0MSwgMTgyLCAxLCAyMTYsIDEzMywgMTgyLCAKLSAgICAxLCAyNDUsIDI0OSwgMTgyLCAxLCAxODYsIDE4MiwgMSwgMjAzLCAxODIsIDEsIDIzMywgMTU3LCAxODIsIDEsIDE1OSwgCi0gICAgMTgyLCAxLCAyNDEsIDEzOSwgMTgyLCAxLCAyMTUsIDEsIDE4MiwgMSwgMjIyLCAyMDIsIDE4MiwgMSwgMjIxLCAyNCwgMTgyLCAKLSAgICAxLCAyMTQsIDQ5LCAxODIsIDEsIDYxLCAxODIsIDIxOSwgMTgsIDEsIDE4NiwgMTgyLCAyMTksIDE4LCAxLCAyMDMsIDE4MiwgCi0gICAgMzAsIDUsIDI1NCwgMjMyLCAxODIsIDMwLCA1LCA3MiwgMTgyLCAzMCwgNSwgNzUsIDE4MiwgMzAsIDUsIDIyNywgNDksIAotICAgIDE4MiwgMzAsIDUsIDY5LCAxODIsIDMwLCA1LCAyMTUsIDkyLCAxODIsIDMwLCA1LCA3NCwgMTgyLCAyNDksIDEzMywgNSwgCi0gICAgMjM1LCAyNywgMTgyLCAyNDksIDEzMywgNSwgMTgzLCAxODIsIDI0OSwgMTMzLCA1LCAxNTAsIDE4MiwgMjQ5LCAxMzMsIDUsIAotICAgIDIwNCwgMTgyLCAyNDksIDEzMywgNSwgMjI2LCAyMjksIDE4MiwgMjQ5LCAxMzMsIDUsIDE0OSwgMTgyLCAyNDksIDEzMywgNSwgCi0gICAgMjE4LCA5OSwgMTgyLCAyNDksIDEzMywgNSwgMjI4LCA1LCAxODIsIDI0OSwgMTMzLCA1LCAyMzQsIDIzNSwgMTgyLCA1LCAKLSAgICAyMjQsIDQyLCAxODIsIDUsIDIyOCwgNjAsIDE4MiwgMjI1LCAyNywgMjE4LCA1MSwgMTgyLCAyMjUsIDI3LCAyMjgsIDEzLCAKLSAgICAyMTcsIDc0LCAyMTgsIDUxLCAxODIsIDIyNSwgMjcsIDI1MCwgOTgsIDE4MiwgMjI1LCAyNywgMjE2LCAxMjgsIDI1MCwgOTgsIAotICAgIDE4MiwgMjI1LCAyNywgMjE2LCAxMjcsIDE4MiwgMjEsIDIxMiwgNzksIDE4MiwgMjEsIDExNiwgMTgyLCAyMSwgMTA5LCAKLSAgICAxODIsIDIxLCAxNjYsIDE4MiwgMjEsIDE2MywgMTgyLCAyMSwgMTgwLCAxODIsIDIxLCAxODksIDE4MiwgMjEsIDE5OCwgCi0gICAgMTgyLCAyMSwgMTk1LCAxODIsIDIxLCAyMDAsIDE4MiwgMSwgMjE2LCAxMTUsIDE4MiwgMSwgMjE2LCAxMDUsIDE4MiwgMSwgCi0gICAgMjQ4LCA4NiwgMjI3LCA3NiwgMjUwLCA0MCwgMjEsIDIxMiwgNzksIDIyNywgNzYsIDI1MCwgNDAsIDIxLCAxMTYsIDIyNywgCi0gICAgNzYsIDI1MCwgNDAsIDIxLCAxMDksIDIyNywgNzYsIDI1MCwgNDAsIDIxLCAxNjYsIDIyNywgNzYsIDI1MCwgNDAsIDIxLCAKLSAgICAxNjMsIDIyNywgNzYsIDI1MCwgNDAsIDIxLCAxODAsIDIyNywgNzYsIDI1MCwgNDAsIDIxLCAxODksIDIyNywgNzYsIDI1MCwgCi0gICAgNDAsIDIxLCAxOTgsIDIyNywgNzYsIDI1MCwgNDAsIDIxLCAxOTUsIDIyNywgNzYsIDI1MCwgNDAsIDIxLCAyMDAsIDIyNywgCi0gICAgNzYsIDI1MCwgNDAsIDEsIDIzMywgMTU3LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyNTMsIDEyMiwgMjI3LCA3NiwgMjUwLCAKLSAgICA0MCwgMSwgMjU0LCAxMjEsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDI1NCwgMjQsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDI1NCwgCi0gICAgODYsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIzMywgMTU2LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyNTQsIDE5NCwgMjI3LCAKLSAgICA3NiwgMjUwLCA0MCwgMSwgMjU0LCAxOTUsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDI1NCwgMTkzLCAyMjcsIDc2LCAyNTAsIAotICAgIDQwLCAxLCAyNTQsIDE4OSwgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjMzLCAxMywgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjM1LCAKLSAgICAxNjksIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIzNiwgMjksIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIzNSwgMTg4LCAyMjcsIAotICAgIDc2LCAyNTAsIDQwLCAxLCAyMzUsIDE3NywgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjMyLCAxNTYsIDIyNywgNzYsIDI1MCwgCi0gICAgNDAsIDEsIDIxNSwgMTkwLCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyMTUsIDE4OCwgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjE1LCAKLSAgICAxMzksIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIxNSwgODUsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIzMywgODIsIDIyNywgNzYsIAotICAgIDI1MCwgNDAsIDEsIDI0NSwgNzAsIDIyNywgNzYsIDI1MCwgNDAsIDEsIDI0NSwgMTY4LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAKLSAgICAyNDUsIDEwOCwgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjQ1LCA0OSwgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjMyLCAyMDgsIAotICAgIDIyNywgNzYsIDI1MCwgNDAsIDEsIDIyNywgNSwgMjI3LCA3NiwgMjUwLCA0MCwgMSwgMjI3LCAxMTYsIDIyNywgNzYsIDI1MCwgCi0gICAgNDAsIDEsIDIyNiwgMjQ5LCAyMjcsIDc2LCAyNTAsIDQwLCAxLCAyMjcsIDg4LCAyMjcsIDc2LCAyNTAsIDQwLCAyMzAsIAotICAgIDE3MywgMjE2LCA4NCwgMjI3LCA3NiwgMjUwLCA0MCwgMjQzLCAxMDUsIDIxNiwgODUsIDIyNywgNzYsIDI1MCwgNDAsIDIzMCwgCi0gICAgMTcxLCAyMTYsIDg1LCAyMjcsIDc2LCAyNTAsIDQwLCAyMjMsIDI0MiwgMjI3LCA3NiwgMjUwLCA0MCwgMjI2LCAyMSwgMjI3LCAKLSAgICA3NiwgMjUwLCA0MCwgMjU0LCAxMTMsIDIyNywgNzYsIDI1MCwgNDAsIDIyNSwgMjcsIDIzMCwgMTY4LCAyMjcsIDc2LCAyNTAsIAotICAgIDQwLCAyMjUsIDI3LCA1MSwgMjMwLCAxNjgsIDIxNCwgMjI5LCAxNjAsIDIzNCwgMjE1LCAyMTQsIDIyOSwgMTYwLCAyMjEsIAotICAgIDAsIDIxNCwgMjI5LCAxNjAsIDIyNSwgNzgsIDIxNCwgMjI5LCA1LCAyMjksIDQwLCAyMTQsIDIyOSwgNSwgMjEzLCA2OSwgCi0gICAgMjMxLCAzNSwgMjE4LCAyMDEsIDIxNCwgMjI5LCAxNjAsIDIxMywgNjksIDI1NCwgMTE4LCAyMzUsIDI0MCwgMjE4LCAyMDEsIAotICAgIDIxNCwgMjI5LCAxNjAsIDIxMywgNjksIDIzNSwgMjQwLCAyMTgsIDIwMSwgMjE0LCAyMjksIDE2MCwgMjEzLCA2OSwgMjM0LCAKLSAgICAyMDMsIDIzNSwgMjQwLCAyMTgsIDIwMSwgMjE0LCAyMjksIDE2MCwgMjUwLCAxOTAsIDU1LCAyMTQsIDIyOSwgMTYwLCAyMTMsIAotICAgIDY5LCAyMzQsIDIwMywgMjM1LCAyNDAsIDIxOCwgMjAyLCAyMjIsIDExNSwgMjE0LCAyMjksIDE2MCwgNTEsIDIxOCwgMjAxLCAKLSAgICAyMTQsIDIyOSwgMTYwLCAyMTYsIDE2OSwgMjE4LCAyMDEsIDIxNCwgMjI5LCAxNjAsIDIzNCwgMjAzLCAyNTMsIDI0NCwgCi0gICAgMjE0LCAyMjksIDE2MCwgNjIsIDU1LCAyMTQsIDIyOSwgMTYwLCAxMTcsIDE3NiwgNTUsIDIxNCwgMjI5LCAxNjAsIDEzMywgCi0gICAgMTc2LCA1NSwgMjE0LCAyMjksIDE2MCwgMjIzLCAxMzcsIDIzNCwgMjE0LCAyMzUsIDI0MCwgMjE4LCAyMDEsIDIxNCwgMjI5LCAKLSAgICAxNjAsIDI1MywgMTIwLCAyMzUsIDI0MCwgMjE4LCAyMDEsIDIxNCwgMjI5LCA1LCAyMTQsIDEyOSwgMjE4LCAyMDEsIDIxNCwgCi0gICAgMjI5LCA1LCAyMTQsIDEyOSwgMjE1LCAxODUsIDIxNCwgMjI5LCA1LCAyMjMsIDIwMiwgMjE0LCAxMjksIDIxNSwgMTg1LCAKLSAgICAyMTQsIDIyOSwgNSwgMjE0LCAxMjksIDI1MywgMjQ0LCAyMTQsIDIyOSwgNSwgMjIzLCAyMDIsIDIxNCwgMTI5LCAyNTMsIAotICAgIDI0NCwgMjE0LCAyMjksIDUsIDIxNCwgMTI5LCAyMTUsIDE4NiwgMiwgMjE4LCAyNywgMjE0LCAyMjksIDUsIDIxNCwgMTI5LCAKLSAgICAyNTMsIDI0NSwgMiwgMjE4LCAyNywgMjE0LCAyMjksIDUsIDI1MywgMjQzLCAyNTQsIDIsIDIxNCwgMjI5LCA1LCAyNTMsIAotICAgIDI0MywgMjUyLCA4NSwgMjE0LCAyMjksIDUsIDI1MywgMjQzLCAyMTQsIDI1MiwgMjE0LCAyMjksIDUsIDI1MywgMjQzLCAKLSAgICAyMTQsIDI1MywgMiwgMjE4LCAyNywgMjE0LCAyMjksIDUsIDIxNywgMjEsIDIxNCwgMjI5LCA1LCAyNDEsIDE3NiwgMTg0LCAKLSAgICAyNTMsIDI0MiwgMjE0LCAyMjksIDUsIDE4NCwgMjUzLCAyNDIsIDIxNCwgMjI5LCA1LCAyMjMsIDUzLCAxODQsIDI1MywgCi0gICAgMjQyLCAyMTQsIDIyOSwgNSwgMjUzLCAyNDMsIDIxNSwgMTkyLCAyMzAsIDE2MCwgMjE0LCAyMjksIDUsIDI1MywgMTkwLCA3LCAKLSAgICAxLCAzLCA2LCA2MSwgNywgMSwgMywgNiwgMjU0LCAxNDgsIDcsIDMsIDEsIDIxNiwgNTgsIDI1NCwgMTQ4LCA3LCAxLCAzLCAKLSAgICA2LCAyNTIsIDU0LCAyNTMsIDc0LCA3LCAxLCAzLCA2LCAyNTAsIDI1MiwgNywgMSwgMywgNiwgMjQ5LCAzLCA3LCAxLCAzLCAKLSAgICA2LCAyNDUsIDI1LCA3LCAxLCAzLCA2LCA3NCwgNywgMywgMSwgMjE2LCA1OCwgMjI3LCA0MCwgNzQsIDcsIDMsIDEsIDIxNiwgCi0gICAgNTgsIDcyLCA3LCAxLCAzLCA2LCAyMzUsIDE0MiwgNywgMSwgMywgNiwgMjM1LCAyNywgNywgMSwgMywgNiwgMjMzLCAxNzEsIAotICAgIDIsIDkwLCA3LCAxLCAzLCA2LCAxODMsIDcsIDEsIDMsIDYsIDIyMywgMjAyLCAyMDQsIDcsIDEsIDMsIDYsIDc1LCA3LCAxLCAKLSAgICAzLCA2LCAyMjcsIDQwLCA3NSwgNywgMywgMSwgMjIwLCAxMTMsIDc1LCA3LCAzLCAxLCAyMjAsIDExMywgMjI3LCA0MCwgNzUsIAotICAgIDcsIDMsIDEsIDIyMCwgMTEzLCAxNTcsIDIsIDkwLCA3LCAzLCAxLCAyMTYsIDU4LCAyMjcsIDk5LCA3LCAxLCAzLCA2LCAKLSAgICAyMjcsIDIsIDcsIDMsIDEsIDIxNiwgMjI3LCAxNTEsIDc1LCA3LCAzLCAxLCAyNTEsIDEwMSwgMTUxLCA3NSwgNywgMSwgMywgCi0gICAgNiwgMjI2LCAyMjksIDcsIDEsIDMsIDYsIDIyMywgMjAyLCAxNDksIDcsIDEsIDMsIDYsIDIxNiwgNTgsIDE0OSwgNywgMSwgCi0gICAgMywgNiwgMjE4LCA5OSwgNywgMSwgMywgNiwgNjksIDcsIDMsIDEsIDIyMCwgMTEzLCA2OSwgNywgMywgMSwgMjIwLCAxMTMsIAotICAgIDI0NywgMjA4LCA2OSwgNywgMywgMSwgMjIwLCAxMTMsIDIxNiwgNTgsIDE4MywgNywgMSwgMywgNiwgMjE1LCA3OSwgNywgMSwgCi0gICAgMywgNiwgMjE0LCA4MiwgNywgMSwgMywgNiwgMjEyLCAxNTIsIDcsIDEsIDMsIDYsIDI0NCwgMjMyLCA3LCAxLCAyMTQsIAotICAgIDExNiwgMjMzLCAxMDUsIDIxOSwgMTgyLCA3LCAxLCAyNTQsIDEwMywgMjUsIDEsIDMsIDYsIDI0MywgODMsIDI1LCAxLCAzLCAKLSAgICA2LCAyMzMsIDEyMiwgMjUsIDEsIDMsIDYsIDIyNSwgMjQwLCAyNSwgMSwgMywgNiwgMjIzLCAxOTAsIDI1LCAxLCAzLCA2LCAKLSAgICAyMjUsIDQ2LCAzMywgMSwgMywgNiwgMjQ1LCAxMzEsIDU5LCAxLCA2LCA2MSwgNTksIDEsIDYsIDI1NCwgMTQ4LCA1OSwgMSwgCi0gICAgNiwgMjUzLCA3NCwgNTksIDEsIDYsIDI1MiwgNTQsIDI1MywgNzQsIDU5LCAxLCA2LCAyNDksIDMsIDU5LCAxLCA2LCA3NCwgCi0gICAgNTksIDEsIDYsIDIyMywgMjAyLCA3NCwgNTksIDEsIDYsIDI0MywgMTc3LCA1OSwgMSwgNiwgMjQyLCA0MSwgNTksIDEsIDYsIAotICAgIDcyLCA1OSwgMSwgNiwgMjM1LCAxNDIsIDU5LCAxLCA2LCAyMzUsIDI3LCA1OSwgMSwgNiwgMTUwLCA1OSwgMSwgNiwgMTgzLCAKLSAgICA1OSwgMSwgNiwgMjA0LCA1OSwgMSwgNiwgMjIzLCAyMDIsIDIwNCwgNTksIDEsIDYsIDc1LCA1OSwgMSwgNiwgMjI3LCAyLCAKLSAgICA1OSwgMSwgNiwgMjI2LCAyMjksIDU5LCAxLCA2LCAxNDksIDU5LCAxLCA2LCAyMTgsIDk5LCA1OSwgMSwgNiwgNjksIDU5LCAKLSAgICAxLCA2LCAyMTQsIDgyLCA1OSwgMSwgMywgNjEsIDU5LCAxLCAzLCAyMTYsIDU4LCA2MSwgNTksIDEsIDMsIDI1NCwgNTIsIAotICAgIDU5LCAxLCAzLCAyMTYsIDU4LCAyNTQsIDE0OCwgNTksIDEsIDMsIDI1MywgNzQsIDU5LCAxLCAzLCAyNDksIDMsIDU5LCAxLCAKLSAgICAzLCA3NCwgNTksIDEsIDMsIDIyMiwgMTEzLCA1OSwgMSwgMywgMjI3LCA0MCwgNzQsIDU5LCAxLCAzLCAyMTYsIDU4LCAyMjcsIAotICAgIDQwLCA3NCwgNTksIDEsIDMsIDI0MywgMTc3LCA1OSwgMSwgMywgMjE2LCA1OCwgNzIsIDU5LCAxLCAzLCAyMzUsIDI3LCA1OSwgCi0gICAgMSwgMywgMTgzLCA1OSwgMSwgMywgMjQ1LCA5NiwgNTksIDEsIDMsIDc1LCA1OSwgMSwgMywgMjI3LCA0MCwgNzUsIDU5LCAxLCAKLSAgICAzLCAyMTYsIDIyNywgMTUxLCA3NSwgNTksIDEsIDMsIDI1MSwgMTAxLCAxNTEsIDc1LCA1OSwgMSwgMywgMjI2LCAyMjksIAotICAgIDU5LCAxLCAzLCAyMTgsIDk5LCA1OSwgMSwgMywgNjksIDU5LCAxLCAzLCAyMjAsIDExMywgNjksIDU5LCAxLCAzLCAyMTYsIAotICAgIDU4LCAxODMsIDU5LCAxLCAzLCAyMTUsIDc5LCA1OSwgMSwgMywgMjU0LCAxMDMsIDU5LCAxLCAzLCAyNTEsIDIwMywgNTksIAotICAgIDEsIDMsIDI1LCAyNDMsIDgzLCA1OSwgMSwgMywgMjQ4LCA1LCA1OSwgMSwgMywgMjUsIDIyNiwgOSwgNTksIDEsIDMsIDI1MCwgCi0gICAgNDcsIDcsIDIxOSwgMTAsIDMsIDEsIDcyLCA3LCAyMTksIDEwLCAzLCAxLCAxNDksIDcsIDIxOSwgMTAsIDMsIDEsIDY5LCA3LCAKLSAgICAyMTksIDEwLCAzLCAxLCAyMTUsIDc5LCAyNSwgMjE5LCAxMCwgMywgMSwgMjUxLCAyMDMsIDI1LCAyMTksIDEwLCAzLCAxLCAKLSAgICAyNDMsIDgzLCAyNSwgMjE5LCAxMCwgMywgMSwgMjIzLCAxOTAsIDI1LCAyMTksIDEwLCAzLCAxLCAyMjYsIDksIDI1LCAyMTksIAotICAgIDEwLCAzLCAxLCAyNTAsIDQ3LCA3LCAzLCAxLCAyMTUsIDE4MywgNywgMywgMSwgNTQsIDIsIDIzMSwgMzcsIDIxNywgNDIsIAotICAgIDcsIDMsIDEsIDI0OSwgNCwgMiwgMjMxLCAzNywgMjE3LCA0MiwgNywgMywgMSwgMjQ0LCAyMzEsIDIsIDIzMSwgMzcsIDIxNywgCi0gICAgNDIsIDcsIDMsIDEsIDIzMiwgMTEwLCAyLCAyMzEsIDM3LCAyMTcsIDQyLCA3LCAzLCAxLCAyMzAsIDk4LCAyLCAyMzEsIDM3LCAKLSAgICAyMTcsIDQyLCA3LCAzLCAxLCAyMjYsIDIzMCwgMiwgMjMxLCAzNywgMjE3LCA0MiwgNywgMywgMSwgMjI0LCAxMTMsIDIsIAotICAgIDIzMSwgMzcsIDIxNywgNDIsIDcsIDMsIDEsIDIyNCwgMTEzLCAyLCAyNDQsIDU3LCAyNCwgMjMxLCAzNywgMjE3LCA0MiwgNywgCi0gICAgMywgMSwgMjIzLCA0LCAyLCAyMzEsIDM3LCAyMTcsIDQyLCA3LCAzLCAxLCAyMTgsIDEwMCwgMiwgMjMxLCAzNywgMjE3LCAKLSAgICA0MiwgNywgMywgMSwgMjEyLCAxNTMsIDIsIDIzMSwgMzcsIDIxNywgNDIsIDcsIDMsIDEsIDIxNiwgNTgsIDI0MywgMTc3LCAKLSAgICA1OSwgMSwgMzMsIDI0NSwgMTA4LCA3LCAzLCAxLCAyMzUsIDIxMCwgMjQzLCAxNzcsIDcsIDMsIDEsIDIxNywgMTY0LCAyLCAKLSAgICAyMTksIDQ3LCA3LCAzLCA2LCAxLCAyNDAsIDE0NiwgMiwgOTAsIDcsIDMsIDEsIDIzNSwgMTg0LCAyLCA5MCwgNywgMywgMSwgCi0gICAgMjI2LCAyMzAsIDIsIDkwLCA3LCAzLCA2LCAxLCAxMTEsIDIsIDkwLCA3LCAzLCAxLCAyMTUsIDEyOSwgMiwgOTAsIDcsIDMsIAotICAgIDEsIDU0LCAyLCAyMjYsIDE5MywgMTAxLCA3LCAzLCAxLCAyNDksIDQsIDIsIDIyNiwgMTkzLCAxMDEsIDcsIDMsIDEsIDI0NCwgCi0gICAgMjMxLCAyLCAyMjYsIDE5MywgMTAxLCA3LCAzLCAxLCAyNDMsIDE3OCwgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMjM1LCAKLSAgICAyOCwgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMjMzLCAxNzEsIDIsIDIyNiwgMTkzLCAxMDEsIDcsIDMsIDEsIDIzMiwgCi0gICAgMTEwLCAyLCAyMjYsIDE5MywgMTAxLCA3LCAzLCAxLCAyMzAsIDk4LCAyLCAyMjYsIDE5MywgMTAxLCA3LCAzLCAxLCAyMjYsIAotICAgIDIzMCwgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMjI0LCAxMTMsIDIsIDIyNiwgMTkzLCAxMDEsIDcsIDMsIDEsIDIyMywgCi0gICAgNCwgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMjQ1LCA0MSwgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMjE1LCAKLSAgICA4MCwgMiwgMjI2LCAxOTMsIDEwMSwgNywgMywgMSwgMjEzLCAxNjcsIDIsIDIyNiwgMTkzLCAxMDEsIDcsIDMsIDEsIDIxMiwgCi0gICAgMTUzLCAyLCAyMjYsIDE5MywgMTAxLCA3LCAzLCAxLCAxMTgsIDIsIDIyMywgMjA3LCAxMDEsIDcsIDMsIDEsIDI1NCwgNTMsIAotICAgIDIsIDIyMywgMjA3LCAxMDEsIDcsIDMsIDEsIDI0OSwgNCwgMiwgMjQxLCAzOCwgMjQsIDIxOCwgMjcsIDcsIDMsIDEsIDE5MSwgCi0gICAgMiwgMjIzLCAyMDcsIDEwMSwgNywgMywgMSwgMjI3LCA0MCwgMTkxLCAyLCAyMjMsIDIwNywgMTAxLCA3LCAzLCAxLCAyMjMsIAotICAgIDIwMiwgMjI3LCA0MCwgMTkxLCAyLCAyMjMsIDIwNywgMTAxLCA3LCAzLCAxLCAyMjIsIDExNCwgMiwgMjIzLCAyMDcsIDEwMSwgCi0gICAgNywgMywgMSwgMjQwLCAxNDYsIDIsIDIyMywgMjA3LCAxMDEsIDcsIDMsIDEsIDIyNywgNDAsIDE1NywgMiwgMjIzLCAyMDcsIAotICAgIDEwMSwgNywgMywgMSwgMjQ1LCA0MSwgMiwgMjIzLCAyMDcsIDEwMSwgNywgMywgMSwgMTExLCAyLCAyMjMsIDIwNywgMTAxLCAKLSAgICA3LCAzLCAxLCAyNDQsIDIzMywgMiwgMjIzLCAyMDcsIDEwMSwgNTksIDEsIDMsIDIxNiwgNTgsIDI1NCwgNTIsIDU5LCAxLCAKLSAgICAzLCAyNTAsIDI1MiwgNTksIDEsIDMsIDI1MCwgMjUzLCAyLCAyNDksIDQxLCA1OSwgMSwgMywgMjQ1LCAyNSwgNTksIDEsIDMsIAotICAgIDIyMywgMjAyLCAyMjcsIDQwLCA3NCwgNTksIDEsIDMsIDI0NCwgMjMwLCA1OSwgMSwgMywgMjQ3LCA3MywgMjM1LCAxNDMsIAotICAgIDIsIDkwLCA1OSwgMSwgMywgMTEzLCAyNDMsIDE3NywgNTksIDEsIDMsIDIxNiwgNTgsIDI0MiwgNDEsIDU5LCAxLCAzLCAKLSAgICAyNDAsIDE0NiwgMiwgOTAsIDU5LCAxLCAzLCAyMzUsIDE4MywgNTksIDEsIDMsIDYsIDcyLCA1OSwgMSwgMywgNiwgMjQwLCAKLSAgICAxNDYsIDIsIDkwLCA1OSwgMSwgMywgMjM1LCAxNDMsIDIsIDI0OSwgNjcsIDU5LCAxLCAzLCAyMzMsIDE3MSwgMiwgMjIzLCAKLSAgICAyMDcsIDEwMSwgNTksIDEsIDMsIDIzMywgMTcxLCAyLCAyMjYsIDE5MywgMTAxLCA1OSwgMSwgMywgNiwgMTUwLCA1OSwgMSwgCi0gICAgMywgMjMyLCAxMTAsIDIsIDEwMSwgNTksIDEsIDMsIDIxNiwgNTgsIDIzMiwgMTEwLCAyLCAxODQsIDIzMywgNjAsIDU5LCAxLCAKLSAgICAzLCAyMzAsIDk4LCAyLCA0MiwgMTAxLCA1OSwgMSwgMywgMjMwLCA5OCwgMiwgMjIzLCAyMDcsIDEwMSwgNTksIDEsIDMsIDYsIAotICAgIDIwNCwgNTksIDEsIDMsIDI1MiwgNTQsIDc1LCA1OSwgMSwgMywgMjI2LCA5LCA1OSwgMSwgMywgMjIzLCA0LCAyLCAxMDEsIAotICAgIDU5LCAxLCAzLCAyNDUsIDQwLCA1OSwgMSwgMywgMjE4LCAxMDAsIDIsIDIyNiwgMTkzLCAxMDEsIDU5LCAxLCAzLCAxMTEsIAotICAgIDEzNCwgNTksIDEsIDMsIDIxNSwgMTI4LCA1OSwgMSwgMywgNiwgNjksIDU5LCAxLCAzLCAyMTUsIDgwLCAyLCAxMDEsIDU5LCAKLSAgICAxLCAzLCAyMTYsIDU4LCAyMTUsIDc5LCA1OSwgMSwgMywgMjEyLCAxNTIsIDU5LCAxLCAzLCAyMTIsIDE1MywgMiwgMjIzLCAKLSAgICAyMDcsIDEwMSwgNTksIDEsIDMsIDIxMiwgMTUzLCAyLCAyNDksIDQxLCA1OSwgMSwgMywgMjQ0LCAyMzIsIDU5LCAxLCAzLCAKLSAgICAyMTcsIDEzMiwgMzcsIDI0NiwgNzIsIDI0MiwgMTE0LCAyNTQsIDE3NCwgMzcsIDI0NiwgNzIsIDI1NCwgMTY0LCAyNTQsIAotICAgIDE3NCwgMzcsIDIxOSwgMjUzLCA1NSwgMzcsIDIxOCwgMjA3LCA3NywgMzcsIDIzMiwgMzYsIDM3LCAyNDIsIDExMSwgMzcsIAotICAgIDIzMiwgMzQsIDM3LCAyNTQsIDE2MiwgMzcsIDI0MiwgMTEyLCAzNywgMjU0LCAxNjMsIDM3LCA3LCAzLCAxLCAyMjQsIDExMywgCi0gICAgNTUsIDM3LCAyNTEsIDczLCAzNywgMjMyLCAzNSwgMzcsIDUxLCAyNDksIDIyNCwgNDksIDM3LCAyMjcsIDkxLCA0OSwgMzcsIAotICAgIDIxMiwgMjgsIDU1LCAzNywgMjM1LCAxNzAsIDU1LCAzNywgMjE1LCAxMjIsIDQ5LCAzNywgMjE1LCAxMDUsIDQ5LCAzNywgNywgCi0gICAgMywgMSwgMjQ0LCAzMiwgMjI3LCA0MCwgMTE4LCA0OSwgMzcsIDcsIDMsIDEsIDI1NCwgMTQ4LCAzNywgNywgMywgMSwgMjUzLCAKLSAgICAyNDAsIDM3LCA3LCAzLCAxLCAyNTMsIDkyLCAzNywgNywgMywgMSwgMjUwLCAyNTMsIDI1MCwgMTE3LCAzNywgNywgMywgMSwgCi0gICAgMjM1LCAyMTAsIDI0OSwgMywgMzcsIDcsIDMsIDEsIDI0NSwgMjUsIDM3LCA3LCAzLCAxLCAyNDMsIDE3NywgMzcsIDcsIDEsIAotICAgIDMsIDYsIDI0MywgMTc3LCAzNywgNywgMywgMSwgMjM1LCAyNywgMzcsIDcsIDMsIDEsIDE1MCwgMzcsIDcsIDEsIDMsIDYsIAotICAgIDE1MCwgMzcsIDcsIDEsIDMsIDYsIDE4MywgMzcsIDcsIDMsIDEsIDIwNCwgMzcsIDcsIDEsIDMsIDYsIDIwNCwgMzcsIDcsIAotICAgIDEsIDMsIDYsIDE0OSwgMzcsIDcsIDMsIDEsIDIyNCwgMTEzLCAyMjMsIDg4LCAzNywgNywgMywgMSwgMTk3LCAzNywgNywgMywgCi0gICAgMSwgMTg0LCAxOTcsIDM3LCA3LCAzLCAxLCAyMTIsIDE1MiwgMzcsIDUxLCAyMzUsIDE5MSwgMjUxLCA3NSwgNTUsIDM3LCAKLSAgICAyNTQsIDU3LCAxMjMsIDIxMSwgMjExLCA1NSwgMzcsIDQyLCAyNTMsIDE2NSwgNDksIDM3LCA0NiwgMjUzLCAxNjUsIDI0LCAKLSAgICAxMTksIDI1MywgMTY1LCA1NSwgNywgNiwgMSwgMTE4LCAyLCAyMjMsIDEzMSwgNTUsIDcsIDMsIDEsIDExOCwgMiwgMjIzLCAKLSAgICAxMzEsIDU1LCA3LCA2LCAxLCA1NCwgMiwgNjIsIDQ5LCA3LCAzLCAxLCA1NCwgMiwgNjIsIDQ5LCA3LCA2LCAxLCA1NCwgMiwgCi0gICAgNjIsIDU1LCA3LCAzLCAxLCA1NCwgMiwgNjIsIDU1LCA3LCA2LCAxLCA1NCwgMiwgMjMyLCAyNDMsIDU1LCA3LCAzLCAxLCAKLSAgICA1NCwgMiwgMjMyLCAyNDMsIDU1LCA3LCA2LCAxLCAyNTAsIDI1MywgMiwgMjUwLCAxMTgsIDI0LCAxNzksIDcsIDMsIDEsIAotICAgIDI1MCwgMjUzLCAyLCAyNTAsIDExOCwgMjQsIDE3OSwgNywgNiwgMSwgMjQ5LCA0LCAyLCA2MiwgNDksIDcsIDMsIDEsIDI0OSwgCi0gICAgNCwgMiwgNjIsIDQ5LCA3LCA2LCAxLCAyNDksIDQsIDIsIDYyLCA1NSwgNywgMywgMSwgMjQ5LCA0LCAyLCA2MiwgNTUsIDcsIAotICAgIDYsIDEsIDI0OSwgNCwgMiwgMjMyLCAyNDMsIDU1LCA3LCAzLCAxLCAyNDksIDQsIDIsIDIzMiwgMjQzLCA1NSwgNywgNiwgMSwgCi0gICAgMjQ5LCA0LCAyLCAyNTAsIDExNywgNywgMywgMSwgMjQ5LCA0LCAyLCAyNTAsIDExNywgNywgNiwgMSwgMjQ5LCA0LCAyLCAKLSAgICAyNDksIDIyNCwgNTUsIDcsIDMsIDEsIDI0OSwgNCwgMiwgMjQ5LCAyMjQsIDU1LCA3LCA2LCAxLCAxOTEsIDIsIDIzMiwgMzgsIAotICAgIDI0LCAyNDIsIDExMywgNywgMywgMSwgMTkxLCAyLCAyMzIsIDM4LCAyNCwgMjQyLCAxMTMsIDcsIDYsIDEsIDE5MSwgMiwgCi0gICAgMjMyLCAzOCwgMjQsIDE3OSwgNywgMywgMSwgMTkxLCAyLCAyMzIsIDM4LCAyNCwgMTc5LCA3LCA2LCAxLCAxOTEsIDIsIAotICAgIDI0OSwgMjI0LCA1NSwgNywgMywgMSwgMTkxLCAyLCAyNDksIDIyNCwgNTUsIDcsIDYsIDEsIDE5MSwgMiwgMjE3LCA0MywgCi0gICAgNTUsIDcsIDMsIDEsIDE5MSwgMiwgMjE3LCA0MywgNTUsIDcsIDYsIDEsIDE5MSwgMiwgMjUwLCAxMTgsIDI0LCAyNTEsIDc0LCAKLSAgICA3LCAzLCAxLCAxOTEsIDIsIDI1MCwgMTE4LCAyNCwgMjUxLCA3NCwgNywgNiwgMSwgMjQ0LCAyMzEsIDIsIDYyLCA0OSwgNywgCi0gICAgMywgMSwgMjQ0LCAyMzEsIDIsIDYyLCA0OSwgNywgNiwgMSwgMjQzLCAxNzgsIDIsIDIzMiwgMzcsIDcsIDMsIDEsIDI0MywgCi0gICAgMTc4LCAyLCAyMzIsIDM3LCA3LCA2LCAxLCAyNDIsIDQyLCAyLCA2MiwgNDksIDcsIDMsIDEsIDI0MiwgNDIsIDIsIDYyLCAKLSAgICA0OSwgNywgNiwgMSwgMjQyLCA0MiwgMiwgNjIsIDU1LCA3LCAzLCAxLCAyNDIsIDQyLCAyLCA2MiwgNTUsIDcsIDYsIDEsIAotICAgIDI0MiwgNDIsIDIsIDI0NywgMjA5LCA3LCAzLCAxLCAyNDIsIDQyLCAyLCAyNDcsIDIwOSwgNywgNiwgMSwgMjQyLCA0MiwgMiwgCi0gICAgMjUwLCAxMTcsIDcsIDMsIDEsIDI0MiwgNDIsIDIsIDI1MCwgMTE3LCA3LCA2LCAxLCAyNDIsIDQyLCAyLCAyNTEsIDc1LCAKLSAgICA1NSwgNywgMywgMSwgMjQyLCA0MiwgMiwgMjUxLCA3NSwgNTUsIDcsIDYsIDEsIDI0MCwgMTQ2LCAyLCAyMTcsIDQzLCA1NSwgCi0gICAgNywgMywgMSwgMjQwLCAxNDYsIDIsIDIxNywgNDMsIDU1LCA3LCA2LCAxLCAyNDAsIDE0NiwgMiwgMjQ3LCAyMTAsIDI0LCAKLSAgICAxNzksIDcsIDMsIDEsIDI0MCwgMTQ2LCAyLCAyNDcsIDIxMCwgMjQsIDE3OSwgNywgNiwgMSwgMjM1LCAyOCwgMiwgMTc5LCAKLSAgICA3LCAzLCAxLCAyMzUsIDI4LCAyLCAxNzksIDcsIDYsIDEsIDIzNSwgMjgsIDIsIDYyLCA1NSwgNywgMywgMSwgMjM1LCAyOCwgCi0gICAgMiwgNjIsIDU1LCA3LCA2LCAxLCAyMzUsIDI4LCAyLCAyMzIsIDI0MywgNTUsIDcsIDMsIDEsIDIzNSwgMjgsIDIsIDIzMiwgCi0gICAgMjQzLCA1NSwgNywgNiwgMSwgMjMzLCAxNzEsIDIsIDYyLCA1NSwgNywgMywgMSwgMjMzLCAxNzEsIDIsIDYyLCA1NSwgNywgCi0gICAgNiwgMSwgMjMzLCAxNzEsIDIsIDYyLCAyNTEsIDIyMCwgMjQsIDIzMiwgMzcsIDcsIDMsIDEsIDIzMywgMTcxLCAyLCA2MiwgCi0gICAgMjUxLCAyMjAsIDI0LCAyMzIsIDM3LCA3LCA2LCAxLCAyMzMsIDE3MSwgMiwgMjMyLCAyNDMsIDU1LCA3LCAzLCAxLCAyMzMsIAotICAgIDE3MSwgMiwgMjMyLCAyNDMsIDU1LCA3LCA2LCAxLCAyMzMsIDE3MSwgMiwgMjQ5LCAyMjQsIDU1LCA3LCAzLCAxLCAyMzMsIAotICAgIDE3MSwgMiwgMjQ5LCAyMjQsIDU1LCA3LCA2LCAxLCAyMzIsIDExMCwgMiwgMTc5LCA3LCAzLCAxLCAyMzIsIDExMCwgMiwgCi0gICAgMTc5LCA3LCA2LCAxLCAyMzIsIDExMCwgMiwgNjIsIDQ5LCA3LCAzLCAxLCAyMzIsIDExMCwgMiwgNjIsIDQ5LCA3LCA2LCAxLCAKLSAgICAyMzIsIDExMCwgMiwgNjIsIDU1LCA3LCAzLCAxLCAyMzIsIDExMCwgMiwgNjIsIDU1LCA3LCA2LCAxLCAyMzAsIDk4LCAyLCAKLSAgICA2MiwgNDksIDcsIDMsIDEsIDIzMCwgOTgsIDIsIDYyLCA0OSwgNywgNiwgMSwgMjMwLCA5OCwgMiwgNjIsIDU1LCA3LCAzLCAKLSAgICAxLCAyMzAsIDk4LCAyLCA2MiwgNTUsIDcsIDYsIDEsIDIzMCwgOTgsIDIsIDIzMiwgMjQzLCA1NSwgNywgMywgMSwgMjMwLCAKLSAgICA5OCwgMiwgMjMyLCAyNDMsIDU1LCA3LCA2LCAxLCAyMzAsIDk4LCAyLCAyNDksIDIyNCwgNTUsIDcsIDMsIDEsIDIzMCwgOTgsIAotICAgIDIsIDI0OSwgMjI0LCA1NSwgNywgNiwgMSwgMTU3LCAyLCAyMTcsIDQzLCAyNCwgMTc5LCA3LCAzLCAxLCAxNTcsIDIsIDIxNywgCi0gICAgNDMsIDI0LCAxNzksIDcsIDYsIDEsIDE1NywgMiwgMjE3LCA0MywgMjQsIDI0NywgMjA5LCA3LCAzLCAxLCAxNTcsIDIsIAotICAgIDIxNywgNDMsIDI0LCAyNDcsIDIwOSwgNywgNiwgMSwgMTU3LCAyLCAyMzIsIDM4LCAyNCwgMjQyLCAxMTMsIDcsIDMsIDEsIAotICAgIDE1NywgMiwgMjMyLCAzOCwgMjQsIDI0MiwgMTEzLCA3LCA2LCAxLCAxNTcsIDIsIDIzMiwgMzgsIDI0LCAxNzksIDcsIDMsIAotICAgIDEsIDE1NywgMiwgMjMyLCAzOCwgMjQsIDE3OSwgNywgNiwgMSwgMjI2LCAyMzAsIDIsIDE3OSwgNywgMywgMSwgMjI2LCAKLSAgICAyMzAsIDIsIDE3OSwgNywgNiwgMSwgMjI2LCAyMzAsIDIsIDYyLCA0OSwgNywgMywgMSwgMjI2LCAyMzAsIDIsIDYyLCA0OSwgCi0gICAgNywgNiwgMSwgMjI0LCAxMTMsIDIsIDYyLCA0OSwgNywgMywgMSwgMjI0LCAxMTMsIDIsIDYyLCA0OSwgNywgNiwgMSwgMjI0LCAKLSAgICAxMTMsIDIsIDYyLCA1NSwgNywgMywgMSwgMjI0LCAxMTMsIDIsIDYyLCA1NSwgNywgNiwgMSwgMjI0LCAxMTMsIDIsIDYyLCAKLSAgICAyNTEsIDIyMCwgMjQsIDIzMiwgMzcsIDcsIDMsIDEsIDIyNCwgMTEzLCAyLCA2MiwgMjUxLCAyMjAsIDI0LCAyMzIsIDM3LCAKLSAgICA3LCA2LCAxLCAyMjQsIDExMywgMiwgMjMyLCAyNDMsIDU1LCA3LCAzLCAxLCAyMjQsIDExMywgMiwgMjMyLCAyNDMsIDU1LCAKLSAgICA3LCA2LCAxLCAyMjMsIDQsIDIsIDYyLCA0OSwgNywgMywgMSwgMjIzLCA0LCAyLCA2MiwgNDksIDcsIDYsIDEsIDIyMywgNCwgCi0gICAgMiwgNjIsIDU1LCA3LCAzLCAxLCAyMjMsIDQsIDIsIDYyLCA1NSwgNywgNiwgMSwgMjIzLCA0LCAyLCAyNTQsIDE2NCwgMjQsIAotICAgIDYyLCA0OSwgNywgMywgMSwgMjIzLCA0LCAyLCAyNTQsIDE2NCwgMjQsIDYyLCA0OSwgNywgNiwgMSwgMjIzLCA0LCAyLCAKLSAgICAyNTAsIDE2NywgMjQsIDYyLCA0OSwgNywgMywgMSwgMjIzLCA0LCAyLCAyNTAsIDE2NywgMjQsIDYyLCA0OSwgNywgNiwgMSwgCi0gICAgMjIzLCA0LCAyLCA2MiwgMjUxLCAyMjAsIDI0LCA2MiwgNDksIDcsIDMsIDEsIDIyMywgNCwgMiwgNjIsIDI1MSwgMjIwLCAKLSAgICAyNCwgNjIsIDQ5LCA3LCA2LCAxLCAyMTgsIDEwMCwgMiwgNjIsIDQ5LCA3LCAzLCAxLCAyMTgsIDEwMCwgMiwgNjIsIDQ5LCAKLSAgICA3LCA2LCAxLCAyMTgsIDEwMCwgMiwgNjIsIDU1LCA3LCAzLCAxLCAyMTgsIDEwMCwgMiwgNjIsIDU1LCA3LCA2LCAxLCAyMTgsIAotICAgIDEwMCwgMiwgMjMyLCAyNDMsIDU1LCA3LCAzLCAxLCAyMTgsIDEwMCwgMiwgMjMyLCAyNDMsIDU1LCA3LCA2LCAxLCAyMTgsIAotICAgIDEwMCwgMiwgMjQ5LCAyMjQsIDU1LCA3LCAzLCAxLCAyMTgsIDEwMCwgMiwgMjQ5LCAyMjQsIDU1LCA3LCA2LCAxLCAxMTEsIAotICAgIDIsIDI0NywgMjEwLCA1NSwgNywgMywgMSwgMTExLCAyLCAyNDcsIDIxMCwgNTUsIDcsIDYsIDEsIDExMSwgMiwgMjE3LCA0MywgCi0gICAgNTUsIDcsIDMsIDEsIDExMSwgMiwgMjE3LCA0MywgNTUsIDcsIDYsIDEsIDExMSwgMiwgMjQ5LCAyMjQsIDU1LCA3LCAzLCAxLCAKLSAgICAxMTEsIDIsIDI0OSwgMjI0LCA1NSwgNywgNiwgMSwgMTExLCAyLCAyMTcsIDQzLCAyNCwgMTc5LCA3LCAzLCAxLCAxMTEsIDIsIAotICAgIDIxNywgNDMsIDI0LCAxNzksIDcsIDYsIDEsIDExMSwgMiwgMjMyLCAzOCwgMjQsIDI0NywgMjA5LCA3LCAzLCAxLCAxMTEsIAotICAgIDIsIDIzMiwgMzgsIDI0LCAyNDcsIDIwOSwgNywgNiwgMSwgMjE1LCA4MCwgMiwgMjE3LCA0MiwgNywgMywgMSwgMjE1LCA4MCwgCi0gICAgMiwgMjE3LCA0MiwgNywgNiwgMSwgMjE1LCA4MCwgMiwgNjIsIDU1LCA3LCAzLCAxLCAyMTUsIDgwLCAyLCA2MiwgNTUsIDcsIAotICAgIDYsIDEsIDIxNCwgODMsIDIsIDI0MiwgMTEzLCA3LCAzLCAxLCAyMTQsIDgzLCAyLCAyNDIsIDExMywgNywgNiwgMSwgMjE0LCAKLSAgICA4MywgMiwgMTc5LCA3LCAzLCAxLCAyMTQsIDgzLCAyLCAxNzksIDcsIDYsIDEsIDIxNCwgODMsIDIsIDI0NywgMjA5LCA3LCAKLSAgICAzLCAxLCAyMTQsIDgzLCAyLCAyNDcsIDIwOSwgNywgNiwgMSwgMjE0LCA4MywgMiwgNjIsIDQ5LCA3LCAzLCAxLCAyMTQsIAotICAgIDgzLCAyLCA2MiwgNDksIDcsIDYsIDEsIDIxNCwgODMsIDIsIDYyLCA1NSwgNywgMywgMSwgMjE0LCA4MywgMiwgNjIsIDU1LCAKLSAgICA3LCA2LCAxLCAyMTMsIDE2NywgMiwgNjIsIDQ5LCA3LCAzLCAxLCAyMTMsIDE2NywgMiwgNjIsIDQ5LCA3LCA2LCAxLCAyMTMsIAotICAgIDE2NywgMiwgMjQ3LCAyMDksIDcsIDMsIDEsIDIxMywgMTY3LCAyLCAyNDcsIDIwOSwgNywgNiwgMSwgMjEzLCAxMDYsIDIsIAotICAgIDYyLCA0OSwgNywgMywgMSwgMjEzLCAxMDYsIDIsIDYyLCA0OSwgNywgNiwgMSwgMjEyLCAxNTMsIDIsIDI0OSwgMjIzLCA3LCAKLSAgICAzLCAxLCAyMTIsIDE1MywgMiwgMjQ5LCAyMjMsIDcsIDYsIDEsIDIxMiwgMTUzLCAyLCA2MiwgNTUsIDcsIDMsIDEsIDIxMiwgCi0gICAgMTUzLCAyLCA2MiwgNTUsIDcsIDYsIDEsIDIxMiwgMTUzLCAyLCAyMzIsIDI0MywgNTUsIDcsIDMsIDEsIDIxMiwgMTUzLCAyLCAKLSAgICAyMzIsIDI0MywgNTUsIDcsIDMsIDEsIDI0MiwgNDIsIDIsIDIzMiwgMjQzLCA1NSwgNywgMywgMSwgMjE4LCAxMDAsIDIsIAotICAgIDI0NywgMjA5LCA3LCAzLCAxLCAyMTQsIDgzLCAyLCAyMjMsIDEzMSwgNDksIDcsIDMsIDEsIDIxMywgMTA2LCAyLCAyMjMsIAotICAgIDEzMSwgNDksIDcsIDMsIDEsIDExOCwgMiwgNDYsIDE1MSwgMjIzLCAxMzAsIDcsIDMsIDEsIDE4NCwgMjIzLCA0LCAyLCA2MiwgCi0gICAgNDksIDcsIDMsIDEsIDE4NCwgMjIzLCA0LCAyLCAyNDcsIDIwNywgOTAsIDcsIDMsIDEsIDE4NCwgMjIzLCA0LCAyLCAxMjQsIAotICAgIDkwLCA3LCA2LCAxLCAyMjAsIDI1NSwgMTk3LCA3LCAzLCAxLCAyNDgsIDUsIDcsIDYsIDEsIDExOCwgMiwgNjIsIDU1LCA3LCAKLSAgICAzLCAxLCAxMTgsIDIsIDYyLCA1NSwgNywgNiwgMSwgMTE4LCAyLCAyNDEsIDM4LCA0OSwgNywgMywgMSwgMTE4LCAyLCAyNDEsIAotICAgIDM4LCA0OSwgNywgNiwgMSwgMTE4LCAyLCAyNDksIDIyNCwgMjQsIDE3OSwgNywgMywgMSwgMTE4LCAyLCAyNDksIDIyNCwgCi0gICAgMjQsIDE3OSwgNywgNiwgMSwgMTE4LCAyLCAyNDksIDIyNCwgMjQsIDI0MiwgMTEzLCA3LCAzLCAxLCAxMTgsIDIsIDI0OSwgCi0gICAgMjI0LCAyNCwgMjQyLCAxMTMsIDcsIDYsIDEsIDExOCwgMiwgMjQ5LCAyMjQsIDI0LCAyNDEsIDM4LCA0OSwgNywgMywgMSwgCi0gICAgMTE4LCAyLCAyNDksIDIyNCwgMjQsIDI0MSwgMzgsIDQ5LCA3LCA2LCAxLCAxMTgsIDIsIDI0OSwgMjI0LCAyNCwgMjE3LCAKLSAgICA0MiwgNywgMywgMSwgMTE4LCAyLCAyNDksIDIyNCwgMjQsIDIxNywgNDIsIDcsIDYsIDEsIDExOCwgMiwgMjQ5LCAyMjQsIAotICAgIDI0LCA2MiwgNTUsIDcsIDMsIDEsIDExOCwgMiwgMjQ5LCAyMjQsIDI0LCA2MiwgNTUsIDcsIDYsIDEsIDExOCwgMiwgMjUxLCAKLSAgICA3NSwgMjQsIDE3OSwgNywgMywgMSwgMTE4LCAyLCAyNTEsIDc1LCAyNCwgMTc5LCA3LCA2LCAxLCAxMTgsIDIsIDI1MSwgNzUsIAotICAgIDI0LCAyNDIsIDExMywgNywgMywgMSwgMTE4LCAyLCAyNTEsIDc1LCAyNCwgMjQyLCAxMTMsIDcsIDYsIDEsIDExOCwgMiwgCi0gICAgMjUxLCA3NSwgMjQsIDI0MSwgMzgsIDQ5LCA3LCAzLCAxLCAxMTgsIDIsIDI1MSwgNzUsIDI0LCAyNDEsIDM4LCA0OSwgNywgCi0gICAgNiwgMSwgMTE4LCAyLCAyNTEsIDc1LCAyNCwgMjE3LCA0MiwgNywgMywgMSwgMTE4LCAyLCAyNTEsIDc1LCAyNCwgMjE3LCAKLSAgICA0MiwgNywgNiwgMSwgMTE4LCAyLCAyNTEsIDc1LCAyNCwgNjIsIDU1LCA3LCAzLCAxLCAxMTgsIDIsIDI1MSwgNzUsIDI0LCAKLSAgICA2MiwgNTUsIDcsIDYsIDEsIDE5MSwgMiwgNjIsIDU1LCA3LCAzLCAxLCAxOTEsIDIsIDYyLCA1NSwgNywgNiwgMSwgMTkxLCAKLSAgICAyLCAyNDEsIDM4LCA0OSwgNywgMywgMSwgMTkxLCAyLCAyNDEsIDM4LCA0OSwgNywgNiwgMSwgMTkxLCAyLCAyMTcsIDQyLCAKLSAgICA3LCAzLCAxLCAxOTEsIDIsIDIxNywgNDIsIDcsIDYsIDEsIDE5MSwgMiwgMjQ5LCAyMjQsIDI0LCAxNzksIDcsIDMsIDEsIAotICAgIDE5MSwgMiwgMjQ5LCAyMjQsIDI0LCAxNzksIDcsIDYsIDEsIDE5MSwgMiwgMjQ5LCAyMjQsIDI0LCAyNDIsIDExMywgNywgMywgCi0gICAgMSwgMTkxLCAyLCAyNDksIDIyNCwgMjQsIDI0MiwgMTEzLCA3LCA2LCAxLCAxOTEsIDIsIDI0OSwgMjI0LCAyNCwgMjQxLCAKLSAgICAzOCwgNDksIDcsIDMsIDEsIDE5MSwgMiwgMjQ5LCAyMjQsIDI0LCAyNDEsIDM4LCA0OSwgNywgNiwgMSwgMTkxLCAyLCAyNDksIAotICAgIDIyNCwgMjQsIDIxNywgNDIsIDcsIDMsIDEsIDE5MSwgMiwgMjQ5LCAyMjQsIDI0LCAyMTcsIDQyLCA3LCA2LCAxLCAxOTEsIAotICAgIDIsIDI0OSwgMjI0LCAyNCwgNjIsIDU1LCA3LCAzLCAxLCAxOTEsIDIsIDI0OSwgMjI0LCAyNCwgNjIsIDU1LCA3LCA2LCAxLCAKLSAgICAyNDAsIDE0NiwgMiwgMjQxLCAzOCwgNDksIDcsIDMsIDEsIDI0MCwgMTQ2LCAyLCAyNDEsIDM4LCA0OSwgNywgNiwgMSwgCi0gICAgMjQwLCAxNDYsIDIsIDYyLCA1NSwgNywgMywgMSwgMjQwLCAxNDYsIDIsIDYyLCA1NSwgNywgNiwgMSwgMTU3LCAyLCA2MiwgCi0gICAgNTUsIDcsIDMsIDEsIDE1NywgMiwgNjIsIDU1LCA3LCA2LCAxLCAxNTcsIDIsIDI0MSwgMzgsIDQ5LCA3LCAzLCAxLCAxNTcsIAotICAgIDIsIDI0MSwgMzgsIDQ5LCA3LCA2LCAxLCAxNTcsIDIsIDI0OSwgMjI0LCAyNCwgMTc5LCA3LCAzLCAxLCAxNTcsIDIsIDI0OSwgCi0gICAgMjI0LCAyNCwgMTc5LCA3LCA2LCAxLCAxNTcsIDIsIDI0OSwgMjI0LCAyNCwgMjQyLCAxMTMsIDcsIDMsIDEsIDE1NywgMiwgCi0gICAgMjQ5LCAyMjQsIDI0LCAyNDIsIDExMywgNywgNiwgMSwgMTU3LCAyLCAyNDksIDIyNCwgMjQsIDI0MSwgMzgsIDQ5LCA3LCAzLCAKLSAgICAxLCAxNTcsIDIsIDI0OSwgMjI0LCAyNCwgMjQxLCAzOCwgNDksIDcsIDYsIDEsIDE1NywgMiwgMjQ5LCAyMjQsIDI0LCAyMTcsIAotICAgIDQyLCA3LCAzLCAxLCAxNTcsIDIsIDI0OSwgMjI0LCAyNCwgMjE3LCA0MiwgNywgNiwgMSwgMTU3LCAyLCAyNDksIDIyNCwgCi0gICAgMjQsIDYyLCA1NSwgNywgMywgMSwgMTU3LCAyLCAyNDksIDIyNCwgMjQsIDYyLCA1NSwgNywgNiwgMSwgMTU3LCAyLCAyNDAsIAotICAgIDIzNiwgMjQsIDE3OSwgNywgMywgMSwgMTU3LCAyLCAyNDAsIDIzNiwgMjQsIDE3OSwgNywgNiwgMSwgMTU3LCAyLCAyNDAsIAotICAgIDIzNiwgMjQsIDI0MiwgMTEzLCA3LCAzLCAxLCAxNTcsIDIsIDI0MCwgMjM2LCAyNCwgMjQyLCAxMTMsIDcsIDYsIDEsIDE1NywgCi0gICAgMiwgMjQwLCAyMzYsIDI0LCAyNDEsIDM4LCA0OSwgNywgMywgMSwgMTU3LCAyLCAyNDAsIDIzNiwgMjQsIDI0MSwgMzgsIDQ5LCAKLSAgICA3LCA2LCAxLCAxNTcsIDIsIDI0MCwgMjM2LCAyNCwgMjE3LCA0MiwgNywgMywgMSwgMTU3LCAyLCAyNDAsIDIzNiwgMjQsIAotICAgIDIxNywgNDIsIDcsIDYsIDEsIDE1NywgMiwgMjQwLCAyMzYsIDI0LCA2MiwgNTUsIDcsIDMsIDEsIDE1NywgMiwgMjQwLCAKLSAgICAyMzYsIDI0LCA2MiwgNTUsIDcsIDYsIDEsIDExMSwgMiwgNjIsIDU1LCA3LCAzLCAxLCAxMTEsIDIsIDYyLCA1NSwgNywgNiwgCi0gICAgMSwgMTExLCAyLCAyNDEsIDM4LCA0OSwgNywgMywgMSwgMTExLCAyLCAyNDEsIDM4LCA0OSwgNywgNiwgMSwgMTExLCAyLCAKLSAgICAyNDAsIDIzNiwgMjQsIDE3OSwgNywgMywgMSwgMTExLCAyLCAyNDAsIDIzNiwgMjQsIDE3OSwgNywgNiwgMSwgMTExLCAyLCAKLSAgICAyNDAsIDIzNiwgMjQsIDI0MiwgMTEzLCA3LCAzLCAxLCAxMTEsIDIsIDI0MCwgMjM2LCAyNCwgMjQyLCAxMTMsIDcsIDYsIDEsIAotICAgIDExMSwgMiwgMjQwLCAyMzYsIDI0LCAyNDEsIDM4LCA0OSwgNywgMywgMSwgMTExLCAyLCAyNDAsIDIzNiwgMjQsIDI0MSwgCi0gICAgMzgsIDQ5LCA3LCA2LCAxLCAxMTEsIDIsIDI0MCwgMjM2LCAyNCwgMjE3LCA0MiwgNywgMywgMSwgMTExLCAyLCAyNDAsIAotICAgIDIzNiwgMjQsIDIxNywgNDIsIDcsIDYsIDEsIDExMSwgMiwgMjQwLCAyMzYsIDI0LCA2MiwgNTUsIDcsIDMsIDEsIDExMSwgMiwgCi0gICAgMjQwLCAyMzYsIDI0LCA2MiwgNTUsIDcsIDYsIDEsIDIxMywgMTA2LCAyLCAyNDIsIDExMywgNywgMywgMSwgMjEzLCAxMDYsIAotICAgIDIsIDI0MiwgMTEzLCA3LCA2LCAxLCAyMTMsIDEwNiwgMiwgNjIsIDU1LCA3LCAzLCAxLCAyMTMsIDEwNiwgMiwgNjIsIDU1LCAKLSAgICA3LCA2LCAxLCAyMTMsIDEwNiwgMiwgMjQxLCAzOCwgNDksIDcsIDMsIDEsIDIxMywgMTA2LCAyLCAyNDEsIDM4LCA0OSwgNywgCi0gICAgNiwgMSwgMjEzLCAxMDYsIDIsIDIxNywgNDIsIDcsIDMsIDEsIDIxMywgMTA2LCAyLCAyMTcsIDQyLCA3LCA2LCAxLCAyMzEsIAotICAgIDM2LCAyMzIsIDIxNCwgNywgMywgMSwgMjMxLCAzNiwgMjMyLCAyMTQsIDcsIDYsIDEsIDIzMSwgMzYsIDIxNSwgNzksIDcsIAotICAgIDMsIDEsIDIzMSwgMzYsIDIxNSwgNzksIDcsIDYsIDEsIDIxMywgMTA2LCAyLCAyMzIsIDE3NywgNywgMywgMSwgMjEzLCAKLSAgICAxMDYsIDIsIDIzMiwgMTc3LCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjI1LCAzOSwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIAotICAgIDI0OCwgOTksIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMjUsIDQwLCAyNCwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyNTQsIDUzLCAKLSAgICAyLCAyMDcsIDI0LCAyMTQsIDI0NSwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIAotICAgIDEsIDI1NCwgNTMsIDIsIDIwNywgMjQsIDIyNiwgMjM0LCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjI1LCA0MCwgMjQsIDIyNiwgCi0gICAgNTAsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMjYsIDUwLCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjI1LCAKLSAgICAzOSwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIDI0OCwgOTksIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMjUsIDQwLCAyNCwgCi0gICAgMjE0LCAyNDUsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMTQsIDI0NSwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIAotICAgIDIyNSwgNDAsIDI0LCAyMjYsIDIzNCwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIDIwNywgMjQsIDIyNiwgMjM0LCAyNSwgNiwgMSwgCi0gICAgMjU0LCA1MywgMiwgMjI1LCA0MCwgMjQsIDIyNiwgNTAsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMjYsIDUwLCAKLSAgICAyNSwgMywgMSwgMjQ1LCA2NCwgMiwgMjI1LCAzOSwgMjUsIDMsIDEsIDI0NSwgNjQsIDIsIDI0OCwgOTksIDI1LCAzLCAxLCAKLSAgICAyNDUsIDY0LCAyLCAyMjUsIDQwLCAyNCwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyNDUsIDY0LCAyLCAyMDcsIDI0LCAyMTQsIAotICAgIDI0NSwgMjUsIDMsIDEsIDI0NSwgNjQsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIDEsIDI0NSwgNjQsIDIsIAotICAgIDIwNywgMjQsIDIyNiwgMjM0LCAyNSwgNiwgMSwgMjQ1LCA2NCwgMiwgMjI1LCAzOSwgMjUsIDYsIDEsIDI0NSwgNjQsIDIsIAotICAgIDI0OCwgOTksIDI1LCA2LCAxLCAyNDUsIDY0LCAyLCAyMjUsIDQwLCAyNCwgMjE0LCAyNDUsIDI1LCA2LCAxLCAyNDUsIDY0LCAKLSAgICAyLCAyMDcsIDI0LCAyMTQsIDI0NSwgMjUsIDYsIDEsIDI0NSwgNjQsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDIzNCwgMjUsIDYsIAotICAgIDEsIDI0NSwgNjQsIDIsIDIwNywgMjQsIDIyNiwgMjM0LCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjI1LCAzOSwgMjUsIDMsIAotICAgIDEsIDI0NSwgMjksIDIsIDI0OCwgOTksIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMjUsIDQwLCAyNCwgMjE0LCAyNDUsIDI1LCAKLSAgICAzLCAxLCAyNDUsIDI5LCAyLCAyMDcsIDI0LCAyMTQsIDI0NSwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIyNSwgNDAsIDI0LCAKLSAgICAyMjYsIDIzNCwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIwNywgMjQsIDIyNiwgMjM0LCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgCi0gICAgMjI1LCA0MCwgMjQsIDIyNiwgNTAsIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMDcsIDI0LCAyMjYsIDUwLCAyNSwgNiwgMSwgCi0gICAgMjQ1LCAyOSwgMiwgMjI1LCAzOSwgMjUsIDYsIDEsIDI0NSwgMjksIDIsIDI0OCwgOTksIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAKLSAgICAyMjUsIDQwLCAyNCwgMjE0LCAyNDUsIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAyMDcsIDI0LCAyMTQsIDI0NSwgMjUsIDYsIDEsIAotICAgIDI0NSwgMjksIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDIzNCwgMjUsIDYsIDEsIDI0NSwgMjksIDIsIDIwNywgMjQsIDIyNiwgCi0gICAgMjM0LCAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgNTAsIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAKLSAgICAyMDcsIDI0LCAyMjYsIDUwLCAyNSwgMywgMSwgMjM1LCAxODQsIDIsIDIyNSwgMzksIDI1LCAzLCAxLCAyMzUsIDE4NCwgMiwgCi0gICAgMjQ4LCA5OSwgMjUsIDMsIDEsIDIzNSwgMTg0LCAyLCAyMjUsIDQwLCAyNCwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyMzUsIAotICAgIDE4NCwgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyMzUsIDE4NCwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgMjM0LCAKLSAgICAyNSwgMywgMSwgMjM1LCAxODQsIDIsIDIwNywgMjQsIDIyNiwgMjM0LCAyNSwgMywgMSwgMjM1LCAxODQsIDIsIDIyNSwgNDAsIAotICAgIDI0LCAyMjYsIDUwLCAyNSwgMywgMSwgMjM1LCAxODQsIDIsIDIwNywgMjQsIDIyNiwgNTAsIDI1LCA2LCAxLCAyMzUsIDE4NCwgCi0gICAgMiwgMjI1LCAzOSwgMjUsIDYsIDEsIDIzNSwgMTg0LCAyLCAyNDgsIDk5LCAyNSwgNiwgMSwgMjM1LCAxODQsIDIsIDIyNSwgCi0gICAgNDAsIDI0LCAyMTQsIDI0NSwgMjUsIDYsIDEsIDIzNSwgMTg0LCAyLCAyMDcsIDI0LCAyMTQsIDI0NSwgMjUsIDYsIDEsIAotICAgIDIzNSwgMTg0LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzQsIDI1LCA2LCAxLCAyMzUsIDE4NCwgMiwgMjA3LCAyNCwgMjI2LCAKLSAgICAyMzQsIDI1LCA2LCAxLCAyMzUsIDE4NCwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgNTAsIDI1LCA2LCAxLCAyMzUsIDE4NCwgMiwgCi0gICAgMjA3LCAyNCwgMjI2LCA1MCwgMjUsIDMsIDEsIDIyNywgNjYsIDIsIDIyNSwgMzksIDI1LCAzLCAxLCAyMjcsIDY2LCAyLCAKLSAgICAyNDgsIDk5LCAyNSwgMywgMSwgMjI3LCA2NiwgMiwgMjI1LCA0MCwgMjQsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjI3LCA2NiwgCi0gICAgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyMjcsIDY2LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzQsIDI1LCAzLCAKLSAgICAxLCAyMjcsIDY2LCAyLCAyMDcsIDI0LCAyMjYsIDIzNCwgMjUsIDYsIDEsIDIyNywgNjYsIDIsIDIyNSwgMzksIDI1LCA2LCAKLSAgICAxLCAyMjcsIDY2LCAyLCAyNDgsIDk5LCAyNSwgNiwgMSwgMjI3LCA2NiwgMiwgMjI1LCA0MCwgMjQsIDIxNCwgMjQ1LCAyNSwgCi0gICAgNiwgMSwgMjI3LCA2NiwgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCA2LCAxLCAyMjcsIDY2LCAyLCAyMjUsIDQwLCAyNCwgCi0gICAgMjI2LCAyMzQsIDI1LCA2LCAxLCAyMjcsIDY2LCAyLCAyMDcsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAKLSAgICAyMjUsIDM5LCAyNSwgMywgMSwgMjE1LCAxMjksIDIsIDI0OCwgOTksIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjI1LCA0MCwgCi0gICAgMjQsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjE1LCAxMjksIDIsIDIwNywgMjQsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjE1LCAKLSAgICAxMjksIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAyMDcsIDI0LCAyMjYsIDIzNCwgCi0gICAgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCA1MCwgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAyMDcsIAotICAgIDI0LCAyMjYsIDUwLCAyNSwgNiwgMSwgMjE1LCAxMjksIDIsIDI0OCwgOTksIDI1LCA2LCAxLCAyMTUsIDEyOSwgMiwgMjA3LCAKLSAgICAyNCwgMjE0LCAyNDUsIDI1LCA2LCAxLCAyMTUsIDEyOSwgMiwgMjA3LCAyNCwgMjI2LCAyMzQsIDI1LCA2LCAxLCAyMTUsIAotICAgIDEyOSwgMiwgMjA3LCAyNCwgMjI2LCA1MCwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIyNSwgMzksIDI1LCAzLCAxLCAyMjcsIAotICAgIDY4LCAyLCAyNDgsIDk5LCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjI1LCA0MCwgMjQsIDIxNCwgMjQ1LCAyNSwgMywgMSwgCi0gICAgMjI3LCA2OCwgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAKLSAgICAyMzQsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMDcsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIyNSwgCi0gICAgNDAsIDI0LCAyMjYsIDUwLCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjA3LCAyNCwgMjI2LCA1MCwgMjUsIDYsIDEsIDIyNywgCi0gICAgNjgsIDIsIDIyNSwgMzksIDI1LCA2LCAxLCAyMjcsIDY4LCAyLCAyNDgsIDk5LCAyNSwgNiwgMSwgMjI3LCA2OCwgMiwgMjI1LCAKLSAgICA0MCwgMjQsIDIxNCwgMjQ1LCAyNSwgNiwgMSwgMjI3LCA2OCwgMiwgMjA3LCAyNCwgMjE0LCAyNDUsIDI1LCA2LCAxLCAyMjcsIAotICAgIDY4LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzQsIDI1LCA2LCAxLCAyMjcsIDY4LCAyLCAyMDcsIDI0LCAyMjYsIDIzNCwgCi0gICAgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDUwLCAyNSwgNiwgMSwgMjI3LCA2OCwgMiwgMjA3LCAKLSAgICAyNCwgMjI2LCA1MCwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjI2LCAKLSAgICAyMzQsIDI1LCAzLCAxLCAyNDUsIDY0LCAyLCAyMTQsIDI0NSwgMjUsIDMsIDEsIDI0NSwgNjQsIDIsIDIyNiwgMjM0LCAyNSwgCi0gICAgMywgMSwgMjQ1LCAyOSwgMiwgMjE0LCAyNDUsIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMjYsIDIzNCwgMjUsIDMsIDEsIAotICAgIDIzNSwgMTg0LCAyLCAyMTQsIDI0NSwgMjUsIDMsIDEsIDIzNSwgMTg0LCAyLCAyMjYsIDIzNCwgMjUsIDMsIDEsIDIyNywgCi0gICAgNjYsIDIsIDIxNCwgMjQ1LCAyNSwgMywgMSwgMjI3LCA2NiwgMiwgMjI2LCAyMzQsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgCi0gICAgMjE0LCAyNDUsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjI2LCAyMzQsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMTQsIAotICAgIDI0NSwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIyNiwgMjM0LCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjI1LCA0MCwgMjQsIAotICAgIDIxMiwgMjEwLCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjA3LCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAKLSAgICAyMjUsIDQwLCAyNCwgMjE0LCAyNDYsIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIwNywgMjQsIDIxNCwgCi0gICAgMjQ2LCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzUsIDI0LCAyMTIsIAotICAgIDIxMCwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIwNywgMjQsIDIyNiwgMjM1LCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAKLSAgICAyNTQsIDUzLCAyLCAyMjUsIDQwLCAyNCwgMjI2LCA1MSwgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjU0LCA1MywgMiwgCi0gICAgMjA3LCAyNCwgMjI2LCA1MSwgMjQsIDIxMiwgMjEwLCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjI1LCA0MCwgMjQsIDIyNSwgCi0gICAgNTEsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMjUsIDUxLCAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjI1LCAKLSAgICA0MCwgMjQsIDIxNCwgMjQ2LCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIDIwNywgMjQsIDIxNCwgMjQ2LCAKLSAgICAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDIzNSwgMjQsIDIyNSwgNTEsIAotICAgIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMjYsIDIzNSwgMjQsIDIyNSwgNTEsIDI1LCA2LCAxLCAyNTQsIDUzLCAKLSAgICAyLCAyMjUsIDQwLCAyNCwgMjI2LCA1MSwgMjQsIDIyNSwgNTEsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMDcsIDI0LCAyMjYsIAotICAgIDUxLCAyNCwgMjI1LCA1MSwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIyNSwgNDAsIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIAotICAgIDI0NSwgMjksIDIsIDIwNywgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjI1LCA0MCwgMjQsIDIxNCwgCi0gICAgMjQ2LCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMDcsIDI0LCAyMTQsIDI0NiwgMjQsIDIxMiwgMjEwLCAKLSAgICAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgMjM1LCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyNDUsIAotICAgIDI5LCAyLCAyMDcsIDI0LCAyMjYsIDIzNSwgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjI1LCA0MCwgCi0gICAgMjQsIDIyNiwgNTEsIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIwNywgMjQsIDIyNiwgNTEsIDI0LCAKLSAgICAyMTIsIDIxMCwgMjUsIDYsIDEsIDI0NSwgMjksIDIsIDIyNSwgNDAsIDI0LCAyMjUsIDUxLCAyNSwgNiwgMSwgMjQ1LCAyOSwgCi0gICAgMiwgMjA3LCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDI0NSwgMjksIDIsIDIyNSwgNDAsIDI0LCAyMTQsIDI0NiwgMjQsIAotICAgIDIyNSwgNTEsIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAyMDcsIDI0LCAyMTQsIDI0NiwgMjQsIDIyNSwgNTEsIDI1LCA2LCAxLCAKLSAgICAyNDUsIDI5LCAyLCAyMjUsIDQwLCAyNCwgMjI2LCAyMzUsIDI0LCAyMjUsIDUxLCAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgCi0gICAgMjA3LCAyNCwgMjI2LCAyMzUsIDI0LCAyMjUsIDUxLCAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgMjI1LCA0MCwgMjQsIDIyNiwgCi0gICAgNTEsIDI0LCAyMjUsIDUxLCAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgMjA3LCAyNCwgMjI2LCA1MSwgMjQsIDIyNSwgNTEsIDI1LCAKLSAgICAzLCAxLCAyMjcsIDY4LCAyLCAyMjUsIDQwLCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMDcsIDI0LCAKLSAgICAyMTIsIDIxMCwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIyNSwgNDAsIDI0LCAyMTQsIDI0NiwgMjQsIDIxMiwgMjEwLCAyNSwgCi0gICAgMywgMSwgMjI3LCA2OCwgMiwgMjA3LCAyNCwgMjE0LCAyNDYsIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIAotICAgIDIyNSwgNDAsIDI0LCAyMjYsIDIzNSwgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjA3LCAyNCwgMjI2LCAKLSAgICAyMzUsIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDUxLCAyNCwgMjEyLCAKLSAgICAyMTAsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMDcsIDI0LCAyMjYsIDUxLCAyNCwgMjEyLCAyMTAsIDI1LCA2LCAxLCAyMjcsIAotICAgIDY4LCAyLCAyMjUsIDQwLCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIwNywgMjQsIDIyNSwgNTEsIDI1LCAKLSAgICA2LCAxLCAyMjcsIDY4LCAyLCAyMjUsIDQwLCAyNCwgMjE0LCAyNDYsIDI0LCAyMjUsIDUxLCAyNSwgNiwgMSwgMjI3LCA2OCwgCi0gICAgMiwgMjA3LCAyNCwgMjE0LCAyNDYsIDI0LCAyMjUsIDUxLCAyNSwgNiwgMSwgMjI3LCA2OCwgMiwgMjI1LCA0MCwgMjQsIAotICAgIDIyNiwgMjM1LCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIwNywgMjQsIDIyNiwgMjM1LCAyNCwgMjI1LCAKLSAgICA1MSwgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIyNSwgNDAsIDI0LCAyMjYsIDUxLCAyNCwgMjI1LCA1MSwgMjUsIDYsIDEsIAotICAgIDIyNywgNjgsIDIsIDIwNywgMjQsIDIyNiwgNTEsIDI0LCAyMjUsIDUxLCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjE0LCAKLSAgICAxMDEsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMzIsIDM3LCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjE0LCAyNDYsIDI0LCAKLSAgICAyMTIsIDIxMCwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjU0LCA1MywgMiwgMjI2LCAyMzUsIAotICAgIDI0LCAyMTIsIDIxMCwgMjUsIDMsIDEsIDI1NCwgNTMsIDIsIDIyNiwgNTAsIDI1LCAzLCAxLCAyNTQsIDUzLCAyLCAyMjYsIAotICAgIDUxLCAyNCwgMjEyLCAyMTAsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMTQsIDEwMSwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIAotICAgIDIzMiwgMzcsIDI1LCA2LCAxLCAyNTQsIDUzLCAyLCAyMTQsIDI0NSwgMjUsIDYsIDEsIDI1NCwgNTMsIDIsIDIyNiwgMjM0LCAKLSAgICAyNSwgNiwgMSwgMjU0LCA1MywgMiwgMjI1LCA1MSwgMjUsIDIzNCwgMTEsIDI1LCAyMjUsIDUxLCAyNSwgMjI1LCAzOSwgMjUsIAotICAgIDIyNiwgNTAsIDI1LCAyNDcsIDIwNCwgMjQsIDIyNiwgNTAsIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMTQsIDI0NiwgMjQsIAotICAgIDIxMiwgMjEwLCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyNDUsIDI5LCAyLCAyMjYsIDIzNSwgCi0gICAgMjQsIDIxMiwgMjEwLCAyNSwgMywgMSwgMjQ1LCAyOSwgMiwgMjI2LCA1MCwgMjUsIDMsIDEsIDI0NSwgMjksIDIsIDIyNiwgCi0gICAgNTEsIDI0LCAyMTIsIDIxMCwgMjUsIDYsIDEsIDI0NSwgNjQsIDIsIDIxNCwgMjQ1LCAyNSwgNiwgMSwgMjQ1LCA2NCwgMiwgCi0gICAgMjI2LCAyMzQsIDI1LCA2LCAxLCAyNDUsIDI5LCAyLCAyMTQsIDI0NSwgMjUsIDYsIDEsIDI0NSwgMjksIDIsIDIyNiwgMjM0LCAKLSAgICAyNSwgNiwgMSwgMjQ1LCAyOSwgMiwgMjI1LCA1MSwgMjUsIDIyNSwgNDAsIDI0LCAyMTQsIDI0NSwgMjUsIDIyNSwgNDAsIAotICAgIDI0LCAyMjYsIDIzNCwgMjUsIDIyNSwgNDAsIDI0LCAyMjYsIDUwLCAyNSwgMywgMSwgMjM1LCAxODQsIDIsIDIxNCwgMTAxLCAKLSAgICAyNSwgMywgMSwgMjM1LCAxODQsIDIsIDIzMiwgMzcsIDI1LCAzLCAxLCAyMzUsIDE4NCwgMiwgMjQ3LCAyMDQsIDI0LCAyMTQsIAotICAgIDI0NSwgMjUsIDMsIDEsIDIzNSwgMTg0LCAyLCAyNDcsIDIwNCwgMjQsIDIyNiwgMjM0LCAyNSwgMywgMSwgMjM1LCAxODQsIAotICAgIDIsIDIyNiwgNTAsIDI1LCAzLCAxLCAyMzUsIDE4NCwgMiwgMjQ3LCAyMDQsIDI0LCAyMjYsIDUwLCAyNSwgNiwgMSwgMjM1LCAKLSAgICAxODQsIDIsIDIxNCwgMTAxLCAyNSwgNiwgMSwgMjM1LCAxODQsIDIsIDIzMiwgMzcsIDI1LCA2LCAxLCAyMzUsIDE4NCwgMiwgCi0gICAgMjE0LCAyNDUsIDI1LCA2LCAxLCAyMzUsIDE4NCwgMiwgMjI2LCAyMzQsIDI1LCAyMDcsIDI0LCAyMTQsIDI0NSwgMjUsIAotICAgIDIwNywgMjQsIDIyNiwgMjM0LCAyNSwgMjA3LCAyNCwgMjI2LCA1MCwgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAyMTQsIDEwMSwgCi0gICAgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAyMzIsIDM3LCAyNSwgMywgMSwgMjE1LCAxMjksIDIsIDI0NywgMjA0LCAyNCwgMjE0LCAKLSAgICAyNDUsIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjQ3LCAyMDQsIDI0LCAyMjYsIDIzNCwgMjUsIDMsIDEsIDIyMywgMTkxLCAKLSAgICAyLCAyMjUsIDM5LCAyNSwgMywgMSwgMjIzLCAxOTEsIDIsIDI0OCwgOTksIDI1LCAzLCAxLCAyMTUsIDEyOSwgMiwgMjI2LCAKLSAgICA1MCwgMjUsIDMsIDEsIDIxNSwgMTI5LCAyLCAyNDcsIDIwNCwgMjQsIDIyNiwgNTAsIDI1LCA2LCAxLCAyMTUsIDEyOSwgMiwgCi0gICAgMjE0LCAxMDEsIDI1LCA2LCAxLCAyMTUsIDEyOSwgMiwgMjMyLCAzNywgMjUsIDYsIDEsIDIxNSwgMTI5LCAyLCAyMTQsIAotICAgIDI0NSwgMjUsIDYsIDEsIDIxNSwgMTI5LCAyLCAyMjYsIDIzNCwgMjUsIDYsIDEsIDIyMywgMTkxLCAyLCAyNDgsIDk5LCAyNSwgCi0gICAgMjQ3LCAyMDQsIDI0LCAyMTQsIDI0NSwgMjUsIDI0NywgMjA0LCAyNCwgMjI2LCAyMzQsIDI1LCAyMTQsIDI0NSwgMjUsIDMsIAotICAgIDEsIDIyNywgNjgsIDIsIDIxNCwgMjQ2LCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMTIsIDIxMCwgCi0gICAgMjUsIDMsIDEsIDIyNywgNjgsIDIsIDIyNiwgMjM1LCAyNCwgMjEyLCAyMTAsIDI1LCAzLCAxLCAyMjcsIDY4LCAyLCAyMjYsIAotICAgIDUwLCAyNSwgMywgMSwgMjI3LCA2OCwgMiwgMjI2LCA1MSwgMjQsIDIxMiwgMjEwLCAyNSwgNiwgMSwgMjI3LCA2NiwgMiwgCi0gICAgMjE0LCAyNDUsIDI1LCA2LCAxLCAyMjcsIDY2LCAyLCAyMjYsIDIzNCwgMjUsIDYsIDEsIDIyNywgNjgsIDIsIDIxNCwgMjQ1LCAKLSAgICAyNSwgNiwgMSwgMjI3LCA2OCwgMiwgMjI2LCAyMzQsIDI1LCA2LCAxLCAyMjcsIDY4LCAyLCAyMjUsIDUxLCAyNSwgMjI2LCAKLSAgICAyMzQsIDI1LCAyNDgsIDk5LCAyNDUsIDEwOSwgMjI0LCAxNzIsIDI0NSwgMTE4LCAyMjQsIDE3MiwgMjQ1LCAxMDksIDIxOSwgCi0gICAgMjA2LCAyNDUsIDExOCwgMjE5LCAyMDYsIDIxNywgOTUsIDIxOSwgMjA2LCAyNDMsIDIzNSwgMjE5LCAyMDYsIDIyMCwgNTEsIAotICAgIDIxOSwgMjA2LCAyNDQsIDgxLCAyMTksIDIwNiwgMjI1LCAyNywgMjE5LCAyMDYsIDIxNywgMTIzLCAyMTksIDIwNiwgMjQyLCAKLSAgICAxNywgMjE5LCAyMDYsIDIxMiwgODAsIDIxMywgMjMwLCAyMTksIDIwNiwgMjEyLCA4MCwgMjEzLCAyMzAsIDIyOCwgMTc4LCAKLSAgICAyMTIsIDgwLCAyMTMsIDIzMCwgMjM1LCA2NiwgMjMzLCA2MiwgNzcsIDIyMywgMTQwLCA3NywgMjQwLCAxNjAsIDIyOCwgCi0gICAgMTc5LCAyNDAsIDE2MCwgMjQ0LCA4MSwgMjQ4LCAxMDEsIDI0NSwgMTA5LCAyNDgsIDEwMSwgMjQ1LCAxMTgsIDI0OCwgMTAxLCAKLSAgICAxOTksIDEzNCwgNTEsIDcxLCAyMzIsIDI0MiwgNTEsIDExNSwgMjMyLCAyNDIsIDQyLCAyMjAsIDgxLCAyMjQsIDE0MywgNzcsIAotICAgIDQ2LCAyMjAsIDgxLCAyMjQsIDE0MywgNzcsIDIyMCwgODEsIDIzMiwgMTY0LCAyMjQsIDE0MywgNzcsIDIyMCwgODEsIDI0MSwgCi0gICAgMTQ5LCAyMjQsIDE0MywgNzcsIDQyLCA1MSwgMjI0LCAxNDMsIDc3LCA0NiwgNTEsIDIyNCwgMTQzLCA3NywgNTEsIDIzMiwgCi0gICAgMTY0LCAyMjQsIDE0MywgNzcsIDUxLCAyNDEsIDE0OSwgMjI0LCAxNDMsIDc3LCAyNDgsIDE0OSwgNTEsIDI0OCwgMTQ5LCAKLSAgICAyNTEsIDQyLCAyMTYsIDE4MCwgMjUxLCA0MiwgMTIyLCA2MiwgMjMzLCA4MCwgMTE3LCA2MiwgMjMzLCA4MCwgMTk5LCAyNDUsIAotICAgIDEyMCwgMjQwLCAxNTgsIDIyNSwgMTQ0LCAyMzIsIDI0MywgMjIxLCA1NywgMjI2LCAxNDMsIDIyMSwgNTcsIDIzMywgNjIsIAotICAgIDI0NSwgMTE2LCAyMjMsIDE0MCwgMjQ1LCAxMTYsIDIyNSwgMTI2LCAyNDcsIDE0OCwgMjQzLCAyNDQsIDIzMywgNjIsIDIyNiwgCi0gICAgMjQxLCAyMjMsIDE0MCwgMjI2LCAyNDEsIDIzMCwgMTQsIDIyOCwgMTg0LCAyMTksIDIwNiwgMjI2LCA1OCwgMjMxLCA2LCAKLSAgICA1MiwgMjI2LCA1OCwgMjE3LCAyMDEsIDIxNywgMTAxLCA1MiwgMjI1LCA3MSwgNTEsIDIyNSwgNzEsIDIxNiwgMTY5LCAyMjUsIAotICAgIDcxLCAyMjMsIDIwMiwgMjI1LCA3MSwgMjIzLCAyMDIsIDUxLCAyMjUsIDcxLCAyMjMsIDIwMiwgMjE2LCAxNjksIDIyNSwgCi0gICAgNzEsIDI1MCwgMTcwLCAyMjAsIDgxLCAyMzMsIDY2LCAyNTQsIDE5LCAyMjQsIDE0MywgNzcsIDIyMCwgODEsIDIyMywgMTQ0LCAKLSAgICAyNTQsIDE5LCAyMjQsIDE0MywgNzcsIDIyNCwgMCwgNzcsIDUxLCAyNDQsIDI1NCwgNzcsIDIzNSwgMTk4LCAyMjYsIDI0MywgCi0gICAgMjE1LCAxNTAsIDEzNywgMjE3LCA2NSwgMjUwLCAxNzEsIDIzNSwgMjEzLCAyMjUsIDE0NCwgMjUzLCAxMzAsIDI0MCwgMTYxLCAKLSAgICAyNTEsIDQyLCAyNDMsIDIyOCwgMjIwLCAyMywgNDIsIDQxLCAyNTEsIDg1LCAyLCAyMjQsIDE1MiwgNDYsIDQxLCAyNTEsIAotICAgIDg1LCAyLCAyMjQsIDE1MiwgNTEsIDIyNCwgMTU4LCA3NywgMjI0LCAxNTgsIDI0NCwgMjU0LCA3NywgMjQ0LCAyNTQsIDIyNCwgCi0gICAgMTU4LCA3NywgMjE3LCAyMywgNSwgMjQ1LCAzMCwgMjIzLCAyMDIsIDIyNSwgMjAwLCA1MiwgODMsIDEzMiwgMjUxLCA0MiwgCi0gICAgODMsIDk1LCAyNTEsIDQyLCAxMTUsIDI1MywgMTMyLCAyMjMsIDIwMiwgMjIxLCA3MCwgMjQ5LCAxOTQsIDIxNSwgMTM0LCAKLSAgICAxMTcsIDI1MywgMTMxLCAyNTQsIDY3LCAyMTQsIDE2NSwgMjQ5LCAxNTYsIDIzMCwgMjUxLCA1MiwgMjE4LCAxNzksIDI0OCwgCi0gICAgMTAxLCAyMzUsIDE5MSwgMjE1LCAxNTAsIDI0NCwgMjEsIDIyNSwgMjcsIDc3LCAxMzMsIDYyLCAyMjUsIDI2LCAyMjQsIAotICAgIDE2OSwgMjI1LCA3MSwgMjQzLCAyMzcsIDYyLCAyMjUsIDI2LCAyNDQsIDUwLCA2MiwgMjI1LCAyNiwgMTE3LCA2MiwgMjI1LCAKLSAgICAyNiwgMjQzLCAyMzcsIDYyLCA3NywgMjQ2LCA3MiwgMjQ5LCA3MCwgMjE2LCAxNzksIDcxLCAyNDMsIDIzNywgMjQ3LCA3MiwgCi0gICAgMjMxLCAxNDcsIDE0LCAyMTksIDIwNiwgMjEzLCAxOTYsIDIzNSwgNjYsIDI0MywgMTk4LCAyNTMsIDIyMiwgMjM1LCAxODksIAotICAgIDIxNywgMzgsIDIzNSwgMTg5LCAyMjEsIDU3LCAyMzUsIDE4OSwgMjI1LCAxNTYsIDIzNSwgMjI1LCAyMTgsIDEyNywgMjE4LCAKLSAgICAxOTYsIDI1NCwgMTY2LCAyMTgsIDEyNywgMjE4LCAxOTYsIDIzNSwgMjI1LCAxMiwgMjQzLCAyNDUsIDIyMSwgMywgMjU0LCAKLSAgICAxNjYsIDEyLCAyNDMsIDI0NSwgMjIxLCAzLCAyMzAsIDEwLCAyMSwgMjIxLCA0LCAyMjgsIDE4MCwgMjEsIDIyMSwgNCwgCi0gICAgMjE4LCAyMjMsIDIxMiwgNzksIDIxOCwgMjIzLCA3LCAzLCAxLCA3MiwgMjE4LCAyMjMsIDE2MywgMjE4LCAyMjMsIDE4MCwgCi0gICAgMjE4LCAyMjMsIDE4OSwgMjE4LCAyMjMsIDE5OCwgMjE4LCAyMjMsIDE5NSwgMjE4LCAyMjMsIDIwMCwgMjE4LCAyMjMsIDk0LCAKLSAgICA1MiwgMjE4LCAyMjMsIDIzMCwgMjUwLCAyMTgsIDIyMywgMjQ1LCA2MSwgNTIsIDIxOCwgMjIzLCA0MiwgMjI2LCAxMzEsIAotICAgIDIxOCwgMjIzLCA0NiwgMjI2LCAxMzEsIDIxOCwgMjIzLCA3LCAzLCAxLCAyMDQsIDIxOSwgMTAsIDIxMiwgNzksIDIxOSwgCi0gICAgMTAsIDExNiwgMjE5LCAxMCwgMTA5LCAyMTksIDEwLCAxNjYsIDIxOSwgMTAsIDE2MywgMjE5LCAxMCwgMTgwLCAyMTksIDEwLCAKLSAgICAxODksIDIxOSwgMTAsIDE5OCwgMjE5LCAxMCwgMTk1LCAyMTksIDEwLCAyMDAsIDIxOSwgMTAsIDk0LCA1MiwgMjE5LCAxMCwgCi0gICAgMjMwLCAyNTAsIDIxOSwgMTAsIDI0NSwgNjEsIDUyLCAyMTksIDEwLCA0MiwgMjI2LCAxMzEsIDIxOSwgMTAsIDQ2LCAyMjYsIAotICAgIDEzMSwgNywgMjE5LCAxMCwgMywgMSwgNjEsIDcsIDIxOSwgMTAsIDMsIDEsIDc0LCA3LCAyMTksIDEwLCAzLCAxLCA3NSwgNywgCi0gICAgMjE5LCAxMCwgMywgMSwgMjEzLCAxNjYsIDcsIDIxOSwgMTAsIDMsIDEsIDIyMiwgMTEzLCA3LCAyMTksIDEwLCAzLCAxLCAKLSAgICAyNDIsIDQxLCA3LCAyMTksIDEwLCAzLCAxLCAyMzUsIDI3LCA3LCAyMTksIDEwLCAzLCAxLCAxNTAsIDcsIDIxOSwgMTAsIDMsIAotICAgIDEsIDE4MywgNywgMjE5LCAxMCwgMywgMSwgMjA0LCA3LCAyMTksIDEwLCAzLCAxLCAyMjYsIDIyOSwgNywgMjE5LCAxMCwgMywgCi0gICAgMSwgMTk3LCA3LCAyMTksIDEwLCAzLCAxLCAyMTgsIDk5LCAyNDUsIDEzLCA1MiwgMjQ5LCAxNjUsIDUyLCAyNDksIDU3LCAKLSAgICA1MiwgMjQzLCAyMjEsIDI0MywgMjI0LCA1MiwgMjMyLCAyMjcsIDUyLCAyMzEsIDcsIDUyLCAyMzAsIDI5LCA1MiwgMjI2LCAKLSAgICAzOCwgNTIsIDIyMywgMjksIDUyLCAyMTMsIDIwNCwgNTIsIDE1NiwgMjIwLCAyMjksIDUyLCAyNDcsIDgxLCA1MiwgMjQ1LCAKLSAgICAxNCwgNTIsIDIzNCwgODUsIDUyLCAyMTYsIDc2LCA1MiwgMjQ2LCA1NSwgNTIsIDI0MywgMTYsIDIyNiwgNjgsIDUyLCAyMjYsIAotICAgIDM2LCA1MiwgMjQyLCA4OCwgNTIsIDI1MywgOTgsIDUyLCAyNDAsIDIxNSwgNTIsIDI1MCwgMTE5LCA1MiwgMjMyLCAyMjAsIAotICAgIDIxNiwgMjE2LCA1MiwgMjE5LCAxODgsIDUyLCAyMTcsIDE5OCwgNTIsIDIzNSwgMjM4LCAyMjMsIDI5LCA1MiwgMzcsIDQyLCAKLSAgICAyNDEsIDIzOCwgNDksIDM3LCA0NiwgMjQxLCAyMzgsIDQ5LCAzNywgMTg0LCA3MSwgMjMyLCAyNDMsIDIyNiwgMjQ0LCAzNywgCi0gICAgMjIwLCAxNzUsIDcxLCAyMzIsIDI0MywgMjI2LCAyNDQsIDM3LCAyNTMsIDI1NSwgNzYsIDQ5LCAzNywgMjQ5LCAxOTUsIDc2LCAKLSAgICA0OSwgMzcsIDQyLCA3NiwgNDksIDM3LCA0NiwgNzYsIDQ5LCAzNywgMjIzLCAxMzEsIDIyNiwgMjQ0LCAzNywgMjQ5LCAxOTUsIAotICAgIDIyMywgMTMxLCAyMjYsIDI0NCwgMzcsIDI1MywgMjU1LCAyMjMsIDEzMSwgMjI2LCAyNDQsIDM3LCAxMzMsIDE3NiwgNDksIAotICAgIDM3LCAyNDMsIDIzNywgMTc2LCA0OSwgMzcsIDI0NSwgMTA0LCAyNDksIDIyOCwgMzcsIDI0NSwgMTA0LCAyMTksIDE2NiwgCi0gICAgMzcsIDI0NSwgMTA0LCAyNDcsIDIwMCwgMzcsIDI0NSwgMTA0LCAyNDksIDIyOSwgMjUyLCA5NywgMzcsIDQyLCA0NiwgNzYsIAotICAgIDQ5LCAzNywgMjQ1LCAxMDQsIDIyMiwgMTA3LCAzNywgMjQ1LCAxMDQsIDIzNCwgMTQxLCAzNywgMjQ1LCAxMDQsIDIxNSwgCi0gICAgMTI2LCAyMjUsIDE0MSwgMjE2LCAxODMsIDM3LCAyMjMsIDIwMywgMjE5LCAyMzIsIDIyNiwgMjQ0LCAzNywgNTEsIDcxLCAKLSAgICAyMTksIDQ1LCAyMjYsIDI0NCwgMzcsIDI1NCwgOSwgODcsIDM3LCAyMTYsIDE2OSwgMjE1LCAxNTIsIDM3LCAyMTMsIDIzMiwgCi0gICAgMjUxLCA2OCwgNDksIDM3LCAxMzIsIDc2LCAyMjYsIDI0NCwgMzcsIDE4NCwgNTEsIDIxOSwgMjMyLCAyMjYsIDI0NCwgMzcsIAotICAgIDk1LCAyNDEsIDIzOCwgMiwgMjA2LCAyNDYsIDU3LCAzNywgMTMyLCAyNDEsIDIzOCwgMiwgMjA2LCAyNDYsIDU3LCAzNywgCi0gICAgNDIsIDc2LCA1NSwgMzcsIDQ2LCA3NiwgNTUsIDM3LCAyNTMsIDEzMywgNDksIDI1NCwgMTcxLCAyMjcsIDk3LCAyNTQsIAotICAgIDE1NiwgMjExLCAyMTEsIDIxNywgMTQ5LCAyMTksIDE5LCAxODcsIDYsIDI1MCwgMjUyLCAyNDgsIDIyLCAyNTAsIDExMiwgCi0gICAgMjUwLCAxMDksIDIzMiwgMjQzLCA4NywgMjUwLCAxNzIsIDIyNywgOTcsIDI1MCwgMjEyLCAyMTUsIDE1OSwgMjQ1LCAxNSwgCi0gICAgMjQ5LCAxMzAsIDIyMiwgMTA0LCAyNDgsIDIyLCAyNDQsIDE0NywgMTEzLCAzLCAyNDMsIDE3NywgMTEzLCA2LCAyNDIsIDQxLCAKLSAgICAyNTEsIDE0MiwgNiwgMjQyLCA0MSwgMTg3LCA2LCAyNDIsIDQxLCAyMjUsIDE2OSwgMjQ5LCAxMzAsIDIyNSwgMTY5LCAyNDksIAotICAgIDEzMSwgMTEwLCAxMTcsIDIyNSwgMjQwLCAxMTMsIDYsIDcyLCAyNTEsIDE0MiwgNiwgNzIsIDExMywgNiwgMTUwLCAxMTMsIAotICAgIDMsIDE1MCwgMjMzLCAxNzEsIDU0LCAyNTIsIDYwLCA4NywgMTg3LCA2LCAyMDQsIDIyOCwgNTIsIDUyLCAyMTksIDIxOCwgCi0gICAgMjI0LCAxMiwgMjQ5LCAxMDEsIDExMywgNiwgMjI2LCAyMjksIDE4NywgNiwgMjI2LCAyMjksIDE4NywgNiwgMjI0LCAyNDAsIAotICAgIDExMywgNiwgMTQ5LCAyNTEsIDE0MiwgNiwgMTQ5LCAxODcsIDYsIDE0OSwgMjI1LCA3NiwgMjE4LCAyMSwgMjIzLCAyMTQsIAotICAgIDIyMSwgNTMsIDc3LCAyMTcsIDIxMCwgNTIsIDIxNiwgMjEwLCAxNTIsIDUyLCAyMTQsIDIxNywgMTg3LCA2LCAyMTIsIDE1MiwgCi0gICAgMjI3LCAxLCA1MiwgMjI3LCA4NywgNTIsIDIzNSwgMTkxLCAyMjcsIDg3LCA1MiwgMjUxLCAxNDIsIDYsIDIxMiwgMTUyLCAKLSAgICAyMTYsIDU4LCAyNSwgMywgMSwgMjM1LCAxODMsIDIzNCwgMTc5LCA1MiwgMjU0LCAxNiwgNTIsIDExMywgNiwgMjUzLCA3NCwgCi0gICAgMjUxLCAxNDIsIDYsIDI1MCwgMjUyLCAyNDUsIDMzLCA4NywgMTEzLCAzLCA3NCwgMTEzLCA2LCA3NCwgMTEzLCA2LCAyNDQsIAotICAgIDIzMCwgMjE2LCA1OCwgNiwgMjQ0LCAyMzAsIDExMywgNiwgMTgzLCAxMTMsIDMsIDc1LCAxMDYsIDg3LCAyNTEsIDIwNiwgCi0gICAgODcsIDI0MiwgMTc4LCA4NywgMjQ4LCAxMzUsIDg3LCAyMzUsIDIyOSwgMjE5LCAyMTYsIDIyMywgODksIDYsIDIyNCwgMjQwLCAKLSAgICAyNDQsIDE1MCwgNTIsIDE4NywgMywgMjI1LCAyNDAsIDE4NywgMywgMjQzLCA4MywgMTg3LCA2LCAyNDMsIDgzLCAxODcsIDYsIAotICAgIDIyNSwgMjQwLCAxODcsIDIzMCwgOTcsIDIxOCwgMjQxLCAyMTYsIDU4LCAzNSwgNiwgMjQzLCAxNzcsIDIxNiwgNTgsIDM1LCAKLSAgICA2LCAxNTAsIDIyMywgMjAyLCAzNSwgNiwgMTUwLCAyMTYsIDU4LCAzNSwgNiwgMjEzLCAxMDUsIDE4NywgMzIsIDYsIDI0OSwgCi0gICAgMywgMTg3LCAzMiwgMywgMjQ5LCAzLCAxODcsIDMyLCAzLCA3NCwgMTg3LCAzMiwgMywgNzIsIDE4NywgMzIsIDMsIDIzNSwgCi0gICAgMTQyLCAyMjUsIDU0LCAyMzIsIDI0MiwgMjE2LCA1OCwgMjU0LCAzNSwgMjI2LCA1OCwgNTIsIDI1NCwgODgsIDIxNiwgNTgsIAotICAgIDMsIDI0NCwgMjMwLCAxNiwgMzEsIDIyMiwgMTY3LCAyMTksIDIxNiwgMjE0LCA5NywgMjQzLCAyMjgsIDEyMiwgMjIxLCAzOSwgCi0gICAgMjE0LCA5NywgMjQzLCAyMjgsIDEyMiwgMjI5LCAyNSwgMjE0LCA5NywgMjQzLCAyMjgsIDEyMiwgMjE3LCAxOTQsIDIxNCwgCi0gICAgOTcsIDI0MywgMjI4LCAxMjIsIDIxNywgMTIxLCAyMTQsIDk3LCAyNDMsIDIyOCwgMTE3LCAyMTcsIDExOSwgMjE0LCA5NywgCi0gICAgMjQzLCAyMjgsIDEyMiwgMjQ0LCA4NiwgMjE0LCA5NywgMjQzLCAyMjgsIDExNywgMjQ0LCA4NSwgMjE0LCA5NywgMjQzLCAKLSAgICAyMjgsIDEzMywgMjQ0LCA4NSwgMjE0LCA5NywgMjQzLCAyMjgsIDI0MywgMjM3LCAyNDQsIDg1LCAyMTQsIDk3LCAyNDMsIAotICAgIDIyOCwgMTIyLCAyMjAsIDQzLCAyMTQsIDk3LCAyNDMsIDIyOCwgMjQ0LCA1MCwgMjIwLCA0MSwgMjE0LCA5NywgMjQzLCAKLSAgICAyMjgsIDEyMiwgMjQ1LCAxNDUsIDIxNCwgOTcsIDI0MywgMjI4LCAxMzMsIDI0NSwgMTQzLCAyMTQsIDk3LCAyNDMsIDIyOCwgCi0gICAgMjQ0LCA1MCwgMjQ1LCAxNDMsIDIxNCwgOTcsIDI0MywgMjI4LCAyMjEsIDQzLCAyNDUsIDE0MywgMjQzLCAyMjgsIDIyOCwgCi0gICAgNTMsIDExNiwgMjIzLCAxMDAsIDIyOCwgNTQsIDExNiwgMjIzLCAxMDAsIDIyOCwgNTQsIDEwOSwgMjIzLCAxMDAsIDIyOCwgCi0gICAgNTQsIDE2NiwgMjIzLCAxMDAsIDIyOCwgNTQsIDE2MywgMjIzLCAxMDAsIDIyOCwgNTQsIDE4MCwgMjIzLCAxMDAsIDIyOCwgCi0gICAgNTQsIDE4OSwgMjIzLCAxMDAsIDIyOCwgNTQsIDE5OCwgMjIzLCAxMDAsIDIyOCwgNTQsIDE5NSwgMjIzLCAxMDAsIDIyOCwgCi0gICAgNTQsIDIwMCwgMjIzLCAxMDAsIDIyOCwgNTQsIDIxNywgMjAwLCAyMjMsIDEwMCwgMjI4LCA1NCwgMjQ1LCAxMjQsIDIyMywgCi0gICAgMTAwLCAyMjgsIDU0LCAyMTYsIDQxLCAyMjMsIDEwMCwgMjI4LCA1NCwgMjQ0LCA4MywgMjIzLCAxMDAsIDIyOCwgNTQsIAotICAgIDEyMiwgMjQwLCAyMDAsIDIyMywgMTAwLCAyMjgsIDU0LCAyNDQsIDUwLCAyNDAsIDIwMCwgMjIzLCAxMDAsIDIyOCwgNTQsIAotICAgIDEyMiwgMjE3LCAxMDAsIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAxMTYsIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAxMDksIDMsIAotICAgIDIyMywgMTAwLCAyMjgsIDU0LCAxNjYsIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAxNjMsIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAKLSAgICAxODAsIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAxODksIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAxOTgsIDMsIDIyMywgMTAwLCAKLSAgICAyMjgsIDU0LCAxOTUsIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAyMDAsIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAyMTcsIDIwMCwgCi0gICAgMywgMjIzLCAxMDAsIDIyOCwgNTQsIDI0NSwgMTI0LCAzLCAyMjMsIDEwMCwgMjI4LCA1NCwgMjE2LCA0MSwgMywgMjIzLCAKLSAgICAxMDAsIDIyOCwgNTQsIDI0NCwgODMsIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAxMjIsIDI0MCwgMjAwLCAzLCAyMjMsIDEwMCwgCi0gICAgMjI4LCA1NCwgMjQ0LCA1MCwgMjQwLCAyMDAsIDMsIDIyMywgMTAwLCAyMjgsIDU0LCAxMjIsIDIxNywgMTAwLCAyMjMsIAotICAgIDEwMCwgMjI4LCA1NCwgMTIyLCAyMTcsIDEwMSwgMjUwLCAyNTMsIDI0OSwgMywgMjIzLCAxMDAsIDIyOCwgNTQsIDI0NCwgCi0gICAgNTAsIDIxNywgMTAwLCAyMjMsIDEwMCwgMjI4LCA1NCwgMjE3LCAyMDEsIDIxNywgMTAwLCAyMjMsIDEwMCwgMjI4LCA1NCwgCi0gICAgMjIzLCAyMDIsIDEyMiwgMjQwLCAyMDAsIDcsIDMsIDEsIDIyMywgMjAyLCAyNTAsIDI1MiwgMjIzLCAxMDAsIDIyOCwgNTQsIAotICAgIDIyMCwgNTMsIDIzMywgMTAxLCAxNywgMjIzLCAxMDAsIDIyOCwgNTQsIDI0NCwgODQsIDI0NSwgMTgyLCAxNywgMjIzLCAKLSAgICAxMDAsIDIyOCwgNTQsIDI0NCwgODQsIDIxNywgMTAwLCAyMjMsIDEwMCwgMjI4LCA1NCwgMTIyLCAyNDAsIDIwMSwgMjE3LCAKLSAgICAxMDAsIDIxNCwgOTcsIDI0MywgMjI4LCAyMTIsIDgwLCAyMTcsIDExOSwgMTMyLCA2OCwgMjE1LCAxMjQsIDY4LCA5NSwgNjgsIAotICAgIDI0NiwgNTgsIDY4LCA0MiwgNDYsIDY4LCAxMTQsIDExOSwgNjgsIDIyOCwgMTY3LCAyMTMsIDI1MCwgNjgsIDIyOCwgMTY3LCAKLSAgICAyNDUsIDE3NiwgNjgsIDIxOSwgMjE1LCAyNDUsIDE3NiwgNjgsIDIxOSwgMjE1LCAyMTMsIDI1MCwgNjgsIDEzMiwgNzYsIDIsIAotICAgIDkwLCA5NSwgNzYsIDIsIDkwLCAxMzIsIDIxNCwgMjAsIDY4LCA5NSwgMjE0LCAyMCwgNjgsIDEzMiwgMTE3LCAyNDEsIDIxOCwgCi0gICAgNjgsIDIxNSwgMTI0LCAxMTcsIDI0MSwgMjE4LCA2OCwgOTUsIDExNywgMjQxLCAyMTgsIDY4LCAyNDYsIDU4LCAxMTcsIAotICAgIDI0MSwgMjE4LCA2OCwgMTMyLCA3NiwgMiwgMjE4LCAyNywgOTUsIDc2LCAyLCAyMTgsIDI3LCAxMzIsIDc2LCAyNDMsIDIxMywgCi0gICAgMTM0LCAyMTUsIDEyNCwgNzYsIDI0MywgMjEzLCAxMzQsIDk1LCA3NiwgMjQzLCAyMTMsIDEzNCwgMjQ2LCA1OCwgNzYsIAotICAgIDI0MywgMjEzLCAxMzQsIDExNCwgMTE5LCA3NiwgMiwgMjUyLCA0NywgMTMyLCA3NiwgMiwgMTAxLCA5NSwgNzYsIDIsIDEwMSwgCi0gICAgMTMyLCA3NiwgMiwgMjMyLCAxNzcsIDk1LCA3NiwgMiwgMjMyLCAxNzcsIDQyLCA0NiwgMjE0LCAyMCwgNjgsIDQyLCA0NiwgCi0gICAgNzYsIDIsIDkwLCAyNDYsIDU4LCAyMTIsIDI4LCA2OCwgMjE1LCAxMjQsIDc2LCAyLCAyMTcsIDMwLCAyMzMsIDYxLCAyMTUsIAotICAgIDEyNCwgNzYsIDIsIDIxNywgMzAsIDIyMywgMTM4LCAyNDYsIDU4LCA3NiwgMiwgMjE3LCAzMCwgMjMzLCA2MSwgMjQ2LCA1OCwgCi0gICAgNzYsIDIsIDIxNywgMzAsIDIyMywgMTM4LCA5NSwgNzYsIDIsIDI0OSwgMTAwLCAyNDYsIDU3LCAyNDYsIDU4LCA3NiwgMiwgCi0gICAgMjQ5LCAxMDAsIDIzMywgNjEsIDI1MywgMjU1LCAyMTYsIDIyNywgMjIxLCA3MywgNjgsIDI0OSwgMTk1LCAyMTYsIDIyNywgCi0gICAgMjIxLCA3MywgNjgsIDIyOCwgMTY3LCAyMTMsIDI1MCwgNzYsIDIxMSwgMjExLCAxODQsIDEzNCwgMTMyLCA3NiwgMjExLCAKLSAgICAyMTEsIDI1MiwgNjAsIDExMCwgOTUsIDc2LCAyMTEsIDIxMSwgMTM0LCAyNTMsIDI1NSwgMjI3LCA0MCwgMjQ5LCAyMjksIAotICAgIDY4LCAyNDksIDE5NSwgMjI3LCA0MCwgMjQ5LCAyMjksIDY4LCAxMzIsIDI0MSwgMjM4LCAyLCAyMDYsIDIxNSwgMTIzLCAKLSAgICAxMzIsIDI0MSwgMjM4LCAyLCAyMDYsIDI0NiwgNTcsIDIxNSwgMTI0LCAyNDEsIDIzOCwgMiwgMjA2LCAyMjMsIDEzOCwgCi0gICAgMjE1LCAxMjQsIDI0MSwgMjM4LCAyLCAyMDYsIDIzMywgNjEsIDk1LCAyNDEsIDIzOCwgMiwgMjA2LCAyMTUsIDEyMywgOTUsIAotICAgIDI0MSwgMjM4LCAyLCAyMDYsIDI0NiwgNTcsIDI0NiwgNTgsIDI0MSwgMjM4LCAyLCAyMDYsIDIyMywgMTM4LCAyNDYsIDU4LCAKLSAgICAyNDEsIDIzOCwgMiwgMjA2LCAyMzMsIDYxLCA5NSwgNzYsIDExMCwgMTMyLCA2OCwgMjE1LCAxMjQsIDc2LCAxMzIsIDY1LCAKLSAgICAyNDYsIDU4LCA2OCwgMTMyLCA3NiwgMTEwLCA5NSwgNjgsIDEzMiwgMjI2LCAxOTcsIDI1MywgMTYyLCAyMTUsIDEyNCwgCi0gICAgMjI2LCAxOTcsIDI1MywgMTYyLCA5NSwgMjI2LCAxOTcsIDI1MywgMTYyLCAyNDYsIDU4LCAyMjYsIDE5NywgMjUzLCAxNjIsIAotICAgIDEzMiwgMjQxLCAyMzgsIDExMCwgOTUsIDI0MSwgMjM3LCA5NSwgMjQxLCAyMzgsIDExMCwgMTMyLCAyNDEsIDIzNywgMTMyLCAKLSAgICA1MSwgNzYsIDIsIDkwLCA0MiwgNDYsIDUxLCA3NiwgMiwgOTAsIDk1LCA1MSwgNzYsIDIsIDkwLCAxMzIsIDUxLCA2OCwgCi0gICAgMjE1LCAxMjQsIDUxLCA2OCwgOTUsIDUxLCA2OCwgMjQ2LCA1OCwgNTEsIDY4LCA0MiwgNDYsIDUxLCA2OCwgMTE0LCAxMTksIAotICAgIDUxLCA2OCwgMjI4LCAxNjcsIDIxMywgMjUwLCA1MSwgNjgsIDIyOCwgMTY3LCAyNDUsIDE3NiwgNTEsIDY4LCAyMTksIDIxNSwgCi0gICAgMjQ1LCAxNzYsIDUxLCA2OCwgMjE5LCAyMTUsIDIxMywgMjUwLCA1MSwgNjgsIDEzMiwgMjE2LCAxNjksIDY4LCA5NSwgMjE2LCAKLSAgICAxNjksIDY4LCAxMzIsIDIxOSwgMTYyLCA2OCwgOTUsIDIxOSwgMTYyLCA2OCwgMjE1LCAxMjQsIDc2LCAyLCA1MSwgOTAsIAotICAgIDI0NiwgNTgsIDc2LCAyLCA1MSwgOTAsIDEzMiwgMjQ4LCAxMDAsIDY4LCAyMTUsIDEyNCwgMjQ4LCAxMDAsIDY4LCA5NSwgCi0gICAgMjQ4LCAxMDAsIDY4LCAyNDYsIDU4LCAyNDgsIDEwMCwgNjgsIDEzMiwgNzYsIDIxMSwgMjExLCAxMzQsIDk1LCA3NiwgMjExLCAKLSAgICAyMTEsIDEzNCwgMTMyLCA2NywgNjgsIDIxNSwgMTI0LCA2NywgNjgsIDk1LCA2NywgNjgsIDI0NiwgNTgsIDY3LCA2OCwgCi0gICAgMjE1LCAxMjQsIDY3LCA3NiwgMjQzLCAyMTMsIDEzNCwgMjE1LCAxMjQsIDY3LCA3NiwgMjI3LCA2MywgMjI2LCA4OSwgMjE1LCAKLSAgICAxMjQsIDY3LCA3NiwgMjI3LCA2MywgMjI2LCA5MCwgMiwgMTk5LCAxMzQsIDIxNSwgMTI0LCA2NywgNzYsIDIyNywgNjMsIAotICAgIDIyNiwgOTAsIDIsIDcxLCAxMzQsIDIxNSwgMTI0LCA2NywgNTEsIDY4LCAyMTUsIDEyNCwgNjcsIDUxLCA3NiwgMjI3LCA2MywgCi0gICAgMjI2LCA4OSwgOTUsIDY3LCA3NiwgMjQzLCAyMTMsIDIxNCwgNDAsIDIyOCwgMTY3LCAyMTMsIDI1MCwgNzYsIDIxMSwgMjExLCAKLSAgICAyNDksIDk5LCAyMTksIDIxNSwgMjQ1LCAxNzYsIDc2LCAyMTEsIDIxMSwgMjQ5LCA5OSwgMTE0LCAxMTksIDY3LCA2OCwgNDYsIAotICAgIDc2LCAyLCAzLCAyNDksIDIyOCwgMjQ2LCA1OCwgNzYsIDEzMiwgNjUsIDIxNSwgMTI0LCA2OCwgMTMzLCA5NSwgMjUzLCAKLSAgICAxNjIsIDEzMiwgNzYsIDIsIDcxLCA5MCwgOTUsIDc2LCAyLCA3MSwgOTAsIDQyLCA0NiwgNzYsIDIsIDcxLCA5MCwgMTMyLCAKLSAgICA3NiwgMiwgNTEsIDcxLCA5MCwgOTUsIDc2LCAyLCA1MSwgNzEsIDkwLCA0MiwgNDYsIDc2LCAyLCA1MSwgNzEsIDkwLCAxMzIsIAotICAgIDIyNywgMzgsIDY4LCA5NSwgMjI3LCAzOCwgNjgsIDQyLCA0NiwgMjI3LCAzOCwgNjgsIDMxLCAyNTQsIDYzLCAyNDksIDE1MywgCi0gICAgMjI2LCAxMjUsIDI0NywgMTg1LCAyMTcsIDE0MCwgMjQ0LCAyNTAsIDIxNywgMTQwLCAyNDcsIDkyLCAyMjgsIDE2MywgMjQ0LCAKLSAgICAyNTEsIDI0NSwgMTEwLCAyMjEsIDQ4LCAyMzUsIDI0MSwgMjMwLCAzOSwgMjQ1LCAxMjcsIDIyNywgOTcsIDIyOCwgMTYzLCAKLSAgICAyNTQsIDMzLCAyNDUsIDEyNywgMjI3LCA5NywgMywgMjQ1LCAxMjcsIDIyNywgOTcsIDI0OSwgMTI1LCAyNTMsIDE1MywgCi0gICAgMjMxLCAxMjYsIDI0NywgOTIsIDIyOCwgMTYzLCAyNDksIDEyNywgMjUzLCAxNTMsIDIzMSwgMTI2LCAzLCAyNDksIDEyNSwgCi0gICAgMjUzLCAxNTMsIDIzMSwgMTI2LCAyNDUsIDEwMSwgNjUsIDIyNSwgNTYsIDIzMCwgOTcsIDIyNSwgNjMsIDIzMCwgOTcsIAotICAgIDI0OSwgMTA0LCAyMzAsIDk3LCAyMTgsIDI0MSwgMjMwLCAyNTEsIDUyLCAyMzAsIDI0OSwgNTIsIDYyLCAyMjUsIDE1NiwgCi0gICAgMjQ3LCAxMjEsIDIyMCwgMjMsIDIyMSwgNDksIDIzMCwgMjUwLCAyNTMsIDEzMywgMjI3LCAzMywgMjIzLCAxMzEsIDIyNywgCi0gICAgMzMsIDI1MSwgNDMsIDIyNywgMzMsIDQxLCAyMjMsIDk1LCAyNDksIDUwLCAyMjMsIDk1LCAyNDMsIDIzMCwgMjIzLCA5NSwgCi0gICAgMjI1LCA1MiwgMTA4LCAyMzUsIDIzMSwgNDYsIDI1NCwgMTgsIDI1NCwgMTgsIDIzMSwgMTUzLCAyNTQsIDE4LCAyMTksIAotICAgIDE4NywgMjU0LCAxOCwgMjQ3LCAxMjMsIDI0NywgOTIsIDIyOCwgMTYzLCAyNDcsIDEyNiwgMjI2LCAxMzYsIDEwOCwgMjI4LCAKLSAgICAxNjMsIDIyNiwgMTM2LCAxMDgsIDIzMiwgMTk5LCAyNTQsIDI3LCAyMzIsIDE5OSwgMjI3LCAyNCwgMjM1LCAxOTUsIDIxNSwgCi0gICAgMTQ2LCAyMzUsIDIwOCwgNTEsIDIzNSwgMjA4LCAyMTYsIDE2OSwgMjM1LCAyMDgsIDI0OSwgMTIxLCAyMzUsIDIwOCwgMjE4LCAKLSAgICAyMTMsIDIzNSwgMjA4LCAyMTQsIDExMCwgMjM1LCAyMDgsIDI0OSwgMTk1LCAyMzUsIDIwOCwgMjQ5LCAxOTUsIDI0OSwgCi0gICAgMTIxLCAyMzUsIDIwOCwgMjUzLCAyNTUsIDI0OSwgMTIxLCAyMzUsIDIwOCwgMjE3LCAxMzksIDI1MSwgMjQzLCAyMjQsIDI5LCAKLSAgICAyMjUsIDUzLCA2MiwgMjMwLCAyNTAsIDI0NSwgMCwgMjQzLCAyMiwgMjI1LCA1MywgMjQxLCA0MywgMjE3LCA0MywgMjI3LCAKLSAgICAzMywgMjIzLCAyMDIsIDIxNywgNDIsIDIzNSwgMTkxLCAyMzMsIDg5LCAxOTcsIDIyMCwgODMsIDIxNCwgMTksIDIxMywgCi0gICAgMTg4LCAyMjUsIDYzLCAyMjgsIDE2MywgMjE3LCA0MiwgMjMwLCAyNTEsIDIxNywgNDIsIDI1MywgMTI2LCAxMjMsIDEwOCwgCi0gICAgMjI4LCAxNjMsIDI1MywgMTI2LCAxMjMsIDEwOCwgMjUzLCAyMTgsIDEyMywgMTA4LCAyNTMsIDIxOCwgMjUxLCAxNywgMjI4LCAKLSAgICAxNjMsIDI1NCwgMTY1LCAxMjMsIDEwOCwgMjI5LCAxODEsIDI1MywgMjE4LCAyMjgsIDE3MCwgMjU0LCAxNjUsIDEyMywgCi0gICAgMTA4LCAyNTQsIDU3LCAxMjMsIDEwOCwgMjI4LCAxNjMsIDI1NCwgNTcsIDEyMywgMTA4LCAyNTQsIDU3LCAxMjMsIDE2NywgCi0gICAgMTIzLCAxMDgsIDIxNiwgMTY5LCAyMTcsIDQyLCAyNTQsIDY0LCAxMjMsIDEwOCwgMjQ1LCA1NywgMTA4LCAyNDMsIDIxLCAKLSAgICAyNDUsIDU3LCAxMDgsIDI0NywgMTg2LCAyNTEsIDIwMCwgMjUzLCAyMjAsIDIxNywgMTQ5LCAyMzIsIDI1MCwgMjQzLCAyMSwgCi0gICAgMTIzLCAxMDgsIDI1MywgMjE4LCAxMjMsIDIxMSwgMjExLCAxNjcsIDIxNywgMTQ5LCAyMzYsIDEwLCAyMjcsIDk3LCAyMzYsIAotICAgIDEwLCA2NSwgMTY3LCAyNTMsIDIxOCwgMTIzLCAxMDgsIDI0OSwgMTY1LCAyNDUsIDYwLCAyNDUsIDYxLCAyNDksIDE2NCwgCi0gICAgMjIzLCAxMzEsIDIzNSwgMjUyLCAxMjMsIDEwOCwgMjIzLCAxMzEsIDEyMywgMTA4LCAyNDksIDkzLCAxMDgsIDI0NSwgMzIsIAotICAgIDI0NSwgNTksIDEwOCwgMjE5LCA5NiwgMjQ1LCA2MCwgMjQ4LCA2LCAxMjMsIDEwOCwgMTIzLCAyMTEsIDIxMSwgMjUxLCA3LCAKLSAgICAyNDgsIDIzLCAyMzEsIDE1MywgMjUxLCA2LCAyMjQsIDE1NiwgMTIzLCAxMDgsIDIyOCwgMTYzLCAxMjMsIDEwOCwgMjQwLCAKLSAgICA5NywgMTA4LCAyMjgsIDE2MywgMjQwLCA5NywgMTA4LCAyMTksIDQ5LCAyNDUsIDU3LCAxMDgsIDIzMywgMzksIDE2NywgCi0gICAgMTIzLCAxMDgsIDI0MiwgMTA3LCAxNjcsIDEyMywgMTA4LCAyMzMsIDM5LCAxMTAsIDEyMywgMTA4LCAyNDIsIDEwNywgMTEwLCAKLSAgICAxMjMsIDEwOCwgMjMzLCAzOSwgMjUxLCAxNywgMjI4LCAxNjMsIDEyMywgMTA4LCAyNDIsIDEwNywgMjUxLCAxNywgMjI4LCAKLSAgICAxNjMsIDEyMywgMTA4LCAyMzAsIDE2NywgMjMzLCAzOCwgMjMwLCAxNjcsIDI0MiwgMTA2LCAyNTEsIDIwMCwgMjI4LCAxNjMsIAotICAgIDI0NSwgNTcsIDEwOCwgMjI4LCAxNjMsIDIzMywgMzgsIDIyOCwgMTYzLCAyNDIsIDEwNiwgMjI5LCAxODEsIDIzMywgMzksIAotICAgIDIyOCwgMTcwLCAxMjMsIDEwOCwgMjI5LCAxODEsIDI0MiwgMTA3LCAyMjgsIDE3MCwgMTIzLCAxMDgsIDIzMywgMzksIDE2NywgCi0gICAgMjQ1LCA1NywgMTA4LCAyNDIsIDEwNywgMTY3LCAyNDUsIDU3LCAxMDgsIDIyOSwgMTgxLCAyMzMsIDM5LCAyMjgsIDE3MCwgCi0gICAgMjQ1LCA1NywgMTA4LCAyMjksIDE4MSwgMjQyLCAxMDcsIDIyOCwgMTcwLCAyNDUsIDU3LCAxMDgsIDIzMywgMzksIDE2NywgCi0gICAgMjQyLCAxMDYsIDI0MiwgMTA3LCAxNjcsIDIzMywgMzgsIDIyOSwgMTgxLCAyMzMsIDM5LCAyMjgsIDE3MCwgMjQyLCAxMDYsIAotICAgIDIyOSwgMTgxLCAyNDIsIDEwNywgMjI4LCAxNzAsIDIzMywgMzgsIDIyNSwgODIsIDIxOSwgMCwgMjI1LCA4MywgMTY3LCAKLSAgICAxMjMsIDEwOCwgMjE5LCAxLCAxNjcsIDEyMywgMTA4LCAyMjUsIDgzLCAxNjcsIDI0NSwgNTcsIDEwOCwgMjE5LCAxLCAxNjcsIAotICAgIDI0NSwgNTcsIDEwOCwgMjQ3LCA5MiwgMjI4LCAxNjMsIDIyNSwgODUsIDI0NywgOTIsIDIyOCwgMTYzLCAyMTksIDIsIDIxOSwgCi0gICAgOSwgMjI3LCA5NywgMjE4LCAyMjIsIDIyNywgOTcsIDIyOCwgMTYzLCAxMTgsIDIxOSwgOSwgMjI3LCA5NywgMjI4LCAxNjMsIAotICAgIDExOCwgMjE4LCAyMjIsIDIyNywgOTcsIDIxOSwgOSwgNjUsIDE2NywgMTIzLCAxMDgsIDIxOCwgMjIyLCA2NSwgMTY3LCAKLSAgICAxMjMsIDEwOCwgMjI5LCAxODEsIDExOCwgMjE5LCA5LCA2NSwgMjI4LCAxNzAsIDEyMywgMTA4LCAyMjksIDE4MSwgMTE4LCAKLSAgICAyMTgsIDIyMiwgNjUsIDIyOCwgMTcwLCAxMjMsIDEwOCwgMjE5LCA5LCA2NSwgMiwgMjI4LCAxNjMsIDEyMywgMTA4LCAyMTgsIAotICAgIDIyMiwgNjUsIDIsIDIyOCwgMTYzLCAxMjMsIDEwOCwgMjMwLCAxNTEsIDIzMCwgMTUyLCAyMzAsIDE1MywgMjMwLCAxNTIsIAotICAgIDIxNSwgMTQ2LCA0MSwgMjM2LCAxMCwgMjI3LCA5NywgNDEsIDIyNywgMTcsIDIyNywgOTcsIDQxLCAyMzYsIDEwLCA2NSwgCi0gICAgMTY3LCAxMjMsIDEwOCwgNDEsIDIyNywgMTcsIDY1LCAxNjcsIDEyMywgMTA4LCA0MSwgMjUwLCAxODMsIDQxLCAyNDksIDQzLCAKLSAgICAzNiwgMjI1LCAxNTYsIDM2LCAyMzAsIDI1MCwgMzYsIDIxNywgMzgsIDM2LCAyNDcsIDEyMSwgMjIwLCAyMywgMzYsIDYyLCAKLSAgICAyMjcsIDMzLCAzNiwgMjIzLCAxMzEsIDIyNywgMzMsIDM2LCAyNTMsIDEzMywgMjI3LCAzMywgMzYsIDI0NSwgNjAsIDM2LCAKLSAgICAyNDgsIDEwMSwgOTEsIDIyNSwgMTU2LCA5MSwgMjMwLCAyNTAsIDkxLCAyMTcsIDM4LCA5MSwgNjIsIDIyNywgMzMsIDQ2LCAKLSAgICAyMTgsIDM2LCA0MiwgMjE4LCAzNiwgMTE5LCAyMTgsIDM2LCAxMTQsIDIxOCwgMzYsIDI1MywgMTM2LCAyMzAsIDIyNiwgCi0gICAgMjE2LCAxNDksIDI0MywgMjUwLCAyMTYsIDE2OSwgNzEsIDI1MiwgNjAsIDQ2LCAyMTYsIDU3LCA1MSwgNzEsIDI1MiwgNjAsIAotICAgIDUxLCA0NiwgMjE2LCA1NywgMjQ3LCA5MiwgMjI4LCAxNjMsIDIyNSwgNDgsIDIyOCwgMTYzLCAyMTYsIDE0OSwgMjQ3LCA5MiwgCi0gICAgMjI4LCAxNjMsIDI0MywgMjUxLCAyMjksIDE4MywgNTEsIDcxLCAyNTIsIDYwLCA1MSwgNDYsIDIxNiwgNTcsIDIyNSwgODMsIAotICAgIDIxNSwgMTU0LCAyMjMsIDI0MSwgMjE5LCAxLCAyMTUsIDE1NCwgMjIzLCAyNDEsIDIyOCwgMTY4LCAyMTksIDIyLCAyMjcsIAotICAgIDk3LCAyNDksIDEyNSwgMjUzLCAxNTMsIDIyOCwgMTY4LCAyMTksIDIxLCAyMjgsIDE2OCwgMjE5LCAyMiwgNjUsIDE2NywgCi0gICAgMTIzLCAxMDgsIDI0OSwgMTI1LCAyNTMsIDE1MywgMjI4LCAxNjgsIDIxOSwgMjIsIDE2NywgMTIzLCAxMDgsIDIyNywgMTcsIAotICAgIDIyNywgOTcsIDIzNiwgMTAsIDIyNywgOTcsIDIzMCwgMTU3LCAyNDEsIDE4NSwgMjQ5LCAxMzYsIDIzMSwgMjAwLCAyMzUsIAotICAgIDIwNSwgMjEzLCAxMzMsIDIzMCwgMjIsIDIyOCwgMTY5LCA0NiwgMjU0LCAxOSwgMiwgMjUzLCAxOTUsIDQ2LCAyMTYsIDE4MywgCi0gICAgMjMwLCA5NywgMjMyLCAxOTksIDI1NCwgMjcsIDIzMCwgOTcsIDIzMiwgMTk5LCAyMjcsIDI0LCAyMzAsIDk3LCAyMzUsIAotICAgIDE5NSwgMjMwLCA5NywgMjE1LCAxNDYsIDI0NywgMjAxLCAyMjcsIDMzLCA2MiwgMjI3LCAzMywgMjE5LCA5NiwgMjI3LCAzMywgCi0gICAgMjQ3LCAxMjEsIDIxNywgMzgsIDI1MSwgOTAsIDQyLCAyMjgsIDE2OCwgMjQ0LCAxNDksIDIyMSwgNjksIDIyNSwgNjMsIDQ2LCAKLSAgICAyMjgsIDE2OCwgMjQ0LCAxNDksIDIyMSwgNjksIDIyNSwgNjMsIDQyLCAyMjEsIDY5LCAyMjUsIDYzLCA0NiwgMjIxLCA2OSwgCi0gICAgMjI1LCA2MywgMjIzLCAyMDIsIDIxNywgNDMsIDI0NSwgNjAsIDI0OSwgNDAsIDIzMiwgMTk5LCAyMjcsIDI0LCAyNDksIDQwLCAKLSAgICAyMzIsIDE5OSwgMjU0LCAyNywgNTEsIDIxOSwgOCwgNTEsIDIxOCwgMjIxLCA1MSwgMjM1LCAxOTUsIDUxLCAyMTUsIDE0NiwgCi0gICAgMjI1LCAxNzksIDEyMywgMjQsIDIyNiwgMTM2LCAxMDgsIDIzMywgMzksIDIsIDI0NywgNzQsIDI0MiwgMTA3LCAyLCAyNDcsIAotICAgIDc0LCAyMTQsIDE2NCwgMjMwLCAxNjcsIDIzMywgMzgsIDIxNCwgMTY0LCAyMzAsIDE2NywgMjQyLCAxMDYsIDIzMywgMzksIAotICAgIDEyMywgMjExLCAyMTEsIDE2NywgMjQyLCAxMDYsIDI0MiwgMTA3LCAxMjMsIDIxMSwgMjExLCAxNjcsIDIzMywgMzgsIDEyMywgCi0gICAgMjExLCAyMTEsIDE2NywgMjMzLCAzOCwgMTIzLCAyMTEsIDIxMSwgMTY3LCAyNDIsIDEwNiwgMTIzLCAyMTEsIDIxMSwgMTY3LCAKLSAgICAyMjUsIDgyLCAxMjMsIDIxMSwgMjExLCAxNjcsIDIxOSwgMCwgMjQ3LCA5MiwgMjI4LCAxNjMsIDIyNSwgODYsIDE2NywgCi0gICAgMjQ1LCA2MiwgMjQ3LCA5MiwgMjI4LCAxNjMsIDIxOSwgMywgMTY3LCAyNDUsIDYyLCAyMjgsIDE2MywgNDEsIDIzNiwgMTAsIAotICAgIDY1LCAxNjcsIDEyMywgMTA4LCAyMjgsIDE2MywgNDEsIDIyNywgMTcsIDY1LCAxNjcsIDEyMywgMTA4LCA0MSwgMjM2LCAxMCwgCi0gICAgNjUsIDE2NywgMjI4LCAxNjMsIDEyMywgMTA4LCA0MSwgMjI3LCAxNywgNjUsIDE2NywgMjI4LCAxNjMsIDEyMywgMTA4LCAKLSAgICAyMzMsIDM5LCAyNTEsIDE3LCAyMjgsIDE2MywgMjQ1LCA1NywgMTA4LCAyNDIsIDEwNywgMjUxLCAxNywgMjI4LCAxNjMsIAotICAgIDI0NSwgNTcsIDEwOCwgMjI1LCA4MywgMjUxLCAxNywgMjI4LCAxNjMsIDI0NSwgNTcsIDEwOCwgMjE5LCAxLCAyNTEsIDE3LCAKLSAgICAyMjgsIDE2MywgMjQ1LCA1NywgMTA4LCAyMjgsIDE2MywgMjI4LCAxNjgsIDIxOSwgMjIsIDIyNywgOTcsIDI0NywgOTIsIAotICAgIDIyOCwgMTYzLCAyNDksIDEyNywgMjUzLCAxNTMsIDIyOCwgMTY4LCAyMTksIDIxLCAyMjgsIDE2MywgMjI4LCAxNjgsIDIxOSwgCi0gICAgMjIsIDY1LCAxNjcsIDEyMywgMTA4LCAyNDcsIDkyLCAyMjgsIDE2MywgMjQ5LCAxMjcsIDI1MywgMTUzLCAyMjgsIDE2OCwgCi0gICAgMjE5LCAyMiwgMTY3LCAyNDUsIDYyLCA3MSwgMjQ1LCAxMjAsIDIzMSwgMzUsIDE5OSwgMjQ1LCAxMjAsIDExNCwgNDYsIAotICAgIDI0NywgMjA3LCAyNDUsIDEyMCwgMTE5LCA0NiwgMjQ3LCAyMDcsIDI0NSwgMTIwLCAyNDUsIDEyNywgNjUsIDIsIDE4NCwgCi0gICAgMTk5LCA5MCwgMjQ1LCAxMjcsIDY1LCAyLCA3MSwgMjUyLCA2MCwgMjUzLCAxMjMsIDI0NSwgMTAxLCA2NSwgMTk5LCA5MCwgCi0gICAgMywgMjQ1LCAxMjcsIDY1LCAyLCA3MSwgMjUyLCA2MCwgMjUzLCAxMjMsIDI0NSwgMTAxLCA2NSwgMTk5LCA5MCwgMjQ1LCAKLSAgICAxMjcsIDY1LCAyLCA2MiwgNDksIDI0NSwgMTI3LCA2NSwgMiwgMjI2LCAyNDcsIDMsIDI0NSwgMTI3LCA2NSwgMiwgMjI2LCAKLSAgICAyNDcsIDI0NSwgMTI3LCA2NSwgMiwgMjE1LCAxNTMsIDI0NSwgMTI3LCA2NSwgMiwgMTE3LCAxOTksIDIxOSwgMzIsIDI0OSwgCi0gICAgMTI1LCAyLCAxODQsIDE5OSwgOTAsIDI0OSwgMTI1LCAyLCA3MSwgMjUyLCA2MCwgMjUzLCAxMjMsIDI0NSwgMTAxLCA2NSwgCi0gICAgMTk5LCA5MCwgMywgMjQ5LCAxMjUsIDIsIDcxLCAyNTIsIDYwLCAyNTMsIDEyMywgMjQ1LCAxMDEsIDY1LCAxOTksIDkwLCAKLSAgICAyNDksIDEyNSwgMiwgMjI2LCAyNDcsIDMsIDI0OSwgMTI1LCAyLCAyMjYsIDI0NywgMjEyLCAxNTMsIDE3NCwgMjUyLCA5MSwgCi0gICAgMjMxLCAxMjUsIDI0NywgMjAyLCA1MiwgMjQ1LCAxMjksIDY4LCAyNDAsIDIyMSwgMTE0LCAyNTMsIDE2NCwgMTE5LCAyNTMsIAotICAgIDE2NCwgMjI1LCA1OSwgMjI2LCA0MSwgMjE0LCAxNiwgMjMyLCAyNDIsIDQyLCAyNTAsIDExNSwgNDYsIDI1MCwgMTE1LCA0MiwgCi0gICAgMjQ0LCAyNiwgNDYsIDI0NCwgMjYsIDI1MSwgMTAxLCA0NiwgMjQ5LCA3MiwgMjUxLCAxMDEsIDQyLCAyNDksIDcyLCAyMTYsIAotICAgIDIyNywgNDYsIDI0OSwgNzIsIDIxNiwgMjI3LCA0MiwgMjQ5LCA3MiwgMjIzLCAyMDIsIDIyOCwgMTYzLCA1MiwgNDEsIDIzMiwgCi0gICAgMTU5LCAyNTMsIDE5NSwgMjIyLCA4MywgMjIyLCA5MCwgMjE3LCAyMTAsIDIyNCwgMTMsIDIyNSwgMTIxLCAyMzUsIDIzNSwgCi0gICAgMjE0LCAxNDUsIDIxOSwgMTY2LCAyMjUsIDE3MywgNjUsIDIzNSwgMjA0LCA1MiwgMjE2LCA1OCwgMjI4LCAxNjMsIDUyLCAKLSAgICAyMTQsIDI2LCAyNDAsIDIyMywgMjE2LCAyMjcsIDQyLCAyNDksIDk5LCAyMTYsIDIyNywgNDYsIDI0OSwgOTksIDI1MSwgCi0gICAgMTAxLCA0MiwgMjQ5LCA5OSwgMjUxLCAxMDEsIDQ2LCAyNDksIDk5LCAyMTYsIDIyNywgMTUxLCAyMzUsIDIwOCwgMjUxLCAKLSAgICAxMDEsIDE1MSwgMjM1LCAyMDgsIDI0MywgMjEwLCAyMjAsIDMsIDExNCwgMjUzLCAxNjUsIDI1MSwgMjAxLCAxMTcsIDE5OSwgCi0gICAgMjUyLCA0OSwgMjI3LCAyNiwgMjM0LCAxNDQsIDI0NSwgNTMsIDIxMSwgMjExLCAyMTcsIDE0OSwgMjIzLCAxNDgsIDIxMywgCi0gICAgMTY3LCAyMzUsIDI1MiwgMTE4LCAyMjQsIDEwLCAyNTEsIDg5LCAyMzQsIDE0MywgMjMzLCA2NiwgMjU0LCAxOSwgMTI1LCAKLSAgICAyMjMsIDE0NCwgMjU0LCAxOSwgMTI1LCAyNDUsIDUzLCAyMTEsIDIxMSwgMjE3LCAxNDksIDIzMywgNzAsIDI1MSwgMjEyLCAKLSAgICAyMjMsIDEzMCwgMjQ5LCAxMywgMjU0LCA2NCwgMjUzLCAxNzIsIDIxOCwgMTI2LCAyMTYsIDIxNywgMjIzLCAzNCwgMjQ3LCAKLSAgICAxNjcsIDIyNywgMTgsIDI0OSwgMTM4LCAyMTgsIDMsIDIyMCwgMTQsIDI0OSwgOTAsIDI0OSwgODksIDE5NCwgMTk2LCAxNiwgCi0gICAgMjQwLCAxNDMsIDE5NCwgMTk2LCAxNiwgMjE5LCAxNjAsIDIyNCwgMTcyLCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAyNDUsIAotICAgIDYyLCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAyNDcsIDEyNiwgMTk0LCAxOTYsIDE2LCAyMjQsIDE3MywgMjQ3LCAyMDAsIAotICAgIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIDIzNSwgNTksIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIDI0OSwgMjI4LCAxOTQsIAotICAgIDE5NiwgMTYsIDI0OSwgMjI5LCAyMTksIDc1LCAxOTQsIDE5NiwgMTYsIDI0OSwgMjI5LCAyMzUsIDU5LCAxOTQsIDE5NiwgCi0gICAgMTYsIDIyMCwgMjQsIDEzNCwgMTk0LCAxOTYsIDE2LCAyNTIsIDk4LCAxMzQsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIAotICAgIDIyMCwgMjMsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIDI1MiwgOTcsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIDIzMywgCi0gICAgMzgsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIDI0MiwgMTA2LCAxOTQsIDE5NiwgMTYsIDEzMiwgMjE0LCAyNTEsIDE5NCwgCi0gICAgMTk2LCAxNiwgOTUsIDIxNCwgMjUxLCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAxMzIsIDY4LCAxOTQsIDE5NiwgMTYsIAotICAgIDIyNCwgMTczLCA5NSwgNjgsIDE5NCwgMTk2LCAxNiwgMjQ5LCAyMjksIDI1MiwgOTcsIDE5NCwgMTk2LCAxNiwgMTE5LCAKLSAgICAyMTgsIDM3LCAyMTUsIDE1MywgMTk0LCAxOTYsIDE2LCAyNDgsIDYsIDIxOSwgNzUsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIAotICAgIDExOSwgMjUwLCAxNzAsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIDI0OCwgNSwgMTk0LCAxOTYsIDE2LCAxMTksIDIxOCwgCi0gICAgMzcsIDIzNSwgNTksIDE5NCwgMTk2LCAxNiwgMjE1LCAxMjQsIDIxNCwgMjUxLCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAKLSAgICAyMTUsIDEyNCwgNjgsIDE5NCwgMTk2LCAxNiwgMTE0LCAyMTgsIDM3LCAyMjYsIDI0NywgMTk0LCAxOTYsIDE2LCAyNDgsIAotICAgIDE3LCAyMTksIDc1LCAxOTQsIDE5NiwgMTYsIDIyNCwgMTczLCAxMTQsIDI1MCwgMTcwLCAxOTQsIDE5NiwgMTYsIDIyNCwgCi0gICAgMTczLCAyNDgsIDE2LCAxOTQsIDE5NiwgMTYsIDExNCwgMjE4LCAzNywgMjM1LCA1OSwgMTk0LCAxOTYsIDE2LCAyNDYsIDU4LCAKLSAgICAyMTQsIDI1MSwgMTk0LCAxOTYsIDE2LCAyMjQsIDE3MywgMjQ2LCA1OCwgNjgsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNDIsIAotICAgIDIxNSwgMTUzLCAxOTQsIDE5NiwgMTYsIDI0OCwgNiwgMjE1LCAxNTMsIDE5NCwgMTk2LCAxNiwgMjQ3LCAyMDEsIDIxNSwgCi0gICAgMTUzLCAxOTQsIDE5NiwgMTYsIDIzNSwgNjAsIDIxNSwgMTUzLCAxOTQsIDE5NiwgMTYsIDI0OSwgMjI5LCAyMTUsIDE1MywgCi0gICAgMTk0LCAxOTYsIDE2LCAxMTQsIDIyMCwgMTg1LCAyMzUsIDU5LCAxOTQsIDE5NiwgMTYsIDIyNCwgMTQyLCAyMjQsIDE3MiwgCi0gICAgMTk0LCAxOTYsIDE2LCAyNDksIDIyOSwgMjE5LCA5NSwgMTk0LCAxOTYsIDE2LCAyMjQsIDE3MywgMjQ5LCAxNjQsIDE5NCwgCi0gICAgMTk2LCAxNiwgMTE0LCAyMTgsIDM3LCAyNDcsIDIwOSwgMTk0LCAxOTYsIDE2LCAyNDgsIDE3LCAyNDcsIDIwOSwgMTk0LCAKLSAgICAxOTYsIDE2LCAyMTksIDk2LCAyNDcsIDIwOSwgMTk0LCAxOTYsIDE2LCAyMzUsIDYwLCAyNDcsIDIwOSwgMTk0LCAxOTYsIAotICAgIDE2LCAyNDksIDIyOSwgMjQ3LCAyMDksIDE5NCwgMTk2LCAxNiwgMTE5LCAyMjAsIDE4NSwgMjE5LCA3NSwgMTk0LCAxOTYsIAotICAgIDE2LCA0MiwgMjIwLCAxODUsIDIxOSwgNzUsIDE5NCwgMTk2LCAxNiwgMjE3LCA0MywgMjQ3LCAyMDksIDE5NCwgMTk2LCAxNiwgCi0gICAgMjQyLCAxMDcsIDI0NywgMjA5LCAxOTQsIDE5NiwgMTYsIDI0OSwgMTU4LCAxMzQsIDE5NCwgMTk2LCAxNiwgMjQ4LCAxNywgCi0gICAgMjE3LCA0MiwgMTk0LCAxOTYsIDE2LCAyMTIsIDI3LCAxOTQsIDE5NiwgMTYsIDIxOSwgNzYsIDIxNywgNDIsIDE5NCwgMTk2LCAKLSAgICAxNiwgMjIxLCA3MSwgMjE1LCAxNTMsIDE5NCwgMTk2LCAxNiwgMjI0LCAxNzMsIDIyOCwgMTYzLCAyNDUsIDYyLCAxOTQsIAotICAgIDE5NiwgMTYsIDIyNCwgMTczLCAyMjQsIDE1NywgMTk0LCAxOTYsIDE2LCAxMTksIDI1MCwgMTcxLCAyMTcsIDQyLCAxOTQsIAotICAgIDE5NiwgMTYsIDExNCwgMjUwLCAxNzEsIDIxNywgNDIsIDE5NCwgMTk2LCAxNiwgMjM1LCAxODMsIDE5NCwgMTk2LCAxNiwgCi0gICAgMjIzLCAxOTAsIDE5NCwgMTk2LCAxNiwgMjI3LCA2NywgMTk0LCAxOTYsIDE2LCAyNTQsIDUzLCAyMTUsIDE1MywgMTk0LCAKLSAgICAxOTYsIDE2LCAyNDUsIDY0LCAyMTUsIDE1MywgMTk0LCAxOTYsIDE2LCAyMzUsIDE4NCwgMjE1LCAxNTMsIDE5NCwgMTk2LCAKLSAgICAxNiwgMjI3LCA2OCwgMjE1LCAxNTMsIDE5NCwgMTk2LCAxNiwgMjU0LCA1MiwgMjI4LCAxNjMsIDI1MCwgNjYsIDc3LCA0NiwgCi0gICAgMjU0LCAxOSwgMiwgMjQ2LCA1OCwgMjEyLCAyOCwgNjgsIDIyMCwgMTU5LCAyMjcsIDQwLCAyNTEsIDg5LCAyNTEsIDIyMiwgCi0gICAgODcsIDcxLCAyMzIsIDI0MywgMiwgMjMxLCAzNywgMjQ3LCA3NCwgMjM1LCAyMTMsIDg3LCAyNDksIDEyMiwgMjE1LCAxNTEsIAotICAgIDg3LCAyNDcsIDE0MSwgMjE1LCAxNTEsIDg3LCAyNDUsIDExMiwgODcsIDI0OSwgMTQ5LCA4NywgNjcsIDQxLCAyLCAyNTAsIAotICAgIDEwOSwgNzEsIDIzMiwgMjQyLCAyNDUsIDg5LCA4NywgMjU0LCA0OCwgMjM0LCAxNDUsIDg3LCAyNDEsIDE5NywgODcsIDM2LCAKLSAgICAxOTksIDI1MiwgNjAsIDIsIDIyOCwgMTYxLCAzNiwgMjE2LCAxODQsIDI0NiwgNjAsIDI1MSwgNjMsIDI0OSwgMjI5LCAyLCAKLSAgICAyMjgsIDE2NSwgNjgsIDIxNSwgMTQ5LCA4NywgMjMwLCAyMDcsIDg3LCAyNDAsIDE1NiwgODcsIDIyNywgMzksIDI0MiwgNDAsIAotICAgIDg3LCAyMjcsIDM5LCAyMzMsIDE2OSwgODcsIDIyNiwgMTE3LCA4NywgMjI2LCAxMTYsIDg3LCAyNDcsIDE0OSwgMjQ5LCAzOCwgCi0gICAgMTYsIDI0MywgMjQ1LCAxMDksIDIxOSwgMjM0LCA4NywgMTk0LCAxOTYsIDE2LCAyMjQsIDE3MiwgMjQ4LCAzNCwgMjIxLCAKLSAgICA1OCwgMjM0LCAxNDUsIDg3LCAyMjUsIDczLCAyMjYsIDIwMCwgMjI5LCAxNjQsIDIyNiwgMjAwLCAyMjUsIDY5LCAyMjIsIAotICAgIDEwOCwgODcsIDI0OSwgMjEwLCAyMjIsIDEwOCwgODcsIDQyLCAyMjYsIDEzMiwgMjE1LCAxMzEsIDEwMSwgNDIsIDIyNiwgCi0gICAgMTMyLCAyNDQsIDI0NSwgNDIsIDIyNiwgMTMyLCAyMzIsIDE2MywgMTAxLCA0NiwgMjI2LCAxMzIsIDIxNSwgMTMxLCAxMDEsIAotICAgIDQ2LCAyMjYsIDEzMiwgMjQ0LCAyNDUsIDQ2LCAyMjYsIDEzMiwgMjMyLCAxNjMsIDEwMSwgNDIsIDQxLCAyNTEsIDg1LCAKLSAgICAyMTUsIDEzMSwgMjQ5LCA5OSwgNDIsIDQxLCAyNTEsIDg1LCAyNDQsIDI0NSwgNDIsIDQxLCAyNTEsIDg1LCAyMzIsIDE2MywgCi0gICAgMjQ5LCA5OSwgNDYsIDQxLCAyNTEsIDg1LCAyMTUsIDEzMSwgMjQ5LCA5OSwgNDYsIDQxLCAyNTEsIDg1LCAyNDQsIDI0NSwgCi0gICAgNDYsIDQxLCAyNTEsIDg1LCAyMzIsIDE2MywgMjQ5LCA5OSwgNDIsIDI0OSwgNDAsIDI1MSwgODUsIDIxNSwgMTMxLCAxMDEsIAotICAgIDQyLCAyNDksIDQwLCAyNTEsIDg1LCAyMzEsIDM3LCAyMjUsIDIzMywgNDIsIDI0OSwgNDAsIDI1MSwgODUsIDIzMiwgMTYzLCAKLSAgICAxMDEsIDI0OSwgNDAsIDI1MSwgODUsIDI0NCwgMjQ1LCA0NiwgMjQ5LCA0MCwgMjUxLCA4NSwgMjE1LCAxMzEsIDEwMSwgNDYsIAotICAgIDI0OSwgNDAsIDI1MSwgODUsIDIzMSwgMzcsIDIyNSwgMjMzLCA0NiwgMjQ5LCA0MCwgMjUxLCA4NSwgMjMyLCAxNjMsIDEwMSwgCi0gICAgMjM1LCAyMDksIDI0NCwgMjQ1LCAxOTksIDIzMiwgMjQzLCAyNDQsIDI0NSwgMjE1LCAxMzEsIDQyLCAxNjcsIDIzMiwgMTYzLCAKLSAgICA0NiwgMjQ5LCA0MCwgMjUxLCA4NSwgMjIyLCA5MSwgMjE1LCAxMzEsIDQ2LCAxNjcsIDIzMiwgMTYzLCA0MiwgMjQ5LCA0MCwgCi0gICAgMjUxLCA4NSwgMjIyLCA5MSwgMjE4LCAyNDIsIDIxNiwgMjI2LCAyMTgsIDI0MiwgMjUxLCAxMDAsIDIxNiwgMjI3LCA0MSwgCi0gICAgMTI1LCAyNTEsIDEwMSwgNDEsIDEyNSwgMjUxLCAxMDEsIDQxLCAyNTEsIDg1LCAxMTAsIDIxNiwgMjI3LCA0MSwgMTI1LCAKLSAgICAzNCwgMTYsIDI1MSwgMTAwLCA0MiwgNzEsIDkyLCAyMzIsIDI0MiwgNDYsIDcxLCA5MiwgMjMyLCAyNDIsIDE5OSwgMjIyLCAKLSAgICAxMjMsIDIzMiwgMjQxLCAxOTksIDIyMiwgMTIzLCAyMzIsIDI0MCwgMTk5LCAyMjIsIDEyMywgMjMyLCAyMzksIDE5OSwgCi0gICAgMjIyLCAxMjMsIDIzMiwgMjM4LCAyNDcsIDI1MywgMTYsIDE3NywgNzEsIDI0LCAyMTYsIDIyNywgMjIzLCAxNDgsIDI0NywgCi0gICAgMjUzLCAxNiwgMTc3LCA3MSwgMjQsIDI1MSwgMTAxLCAyMjMsIDE0OCwgMjQ3LCAyNTMsIDE2LCAxNzcsIDcxLCAyLCAyNDksIAotICAgIDIyOCwgMjQ3LCAyNTMsIDE2LCAxNzcsIDExOSwgMjQsIDE5OSwgMiwgMjQ5LCAyMjgsIDI0NywgMjUzLCAxNiwgMTc3LCAKLSAgICAxMTQsIDI0LCAxOTksIDIsIDI0OSwgMjI4LCAyNDcsIDI1MywgMTYsIDE3NywgNzEsIDIsIDIxNiwgMTgzLCAyNDcsIDI1MywgCi0gICAgMTYsIDE3NywgMTE5LCAyNCwgMTk5LCAyLCAyMTYsIDE4MywgMjQ3LCAyNTMsIDE2LCAxNzcsIDExNCwgMjQsIDE5OSwgMiwgCi0gICAgMjE2LCAxODMsIDI0NywgMjUzLCAxNiwgMTc3LCA3MSwgMjQsIDIxNCwgMTksIDI0NywgMjUzLCAxNiwgMTc3LCAxMTksIDI0LCAKLSAgICAxOTksIDIsIDIxNCwgMTksIDI0NywgMjUzLCAxNiwgMTc3LCAxMTQsIDI0LCAxOTksIDIsIDIxNCwgMTksIDI0NywgMjUzLCAKLSAgICAxNiwgMTc3LCAxMTksIDI0LCAyNDEsIDMxLCAyNDcsIDI1MywgMTYsIDE3NywgMTE0LCAyNCwgMjQxLCAzMSwgMjQ3LCAyNTMsIAotICAgIDE2LCAxNzcsIDcxLCAyNCwgMjE2LCAyMjcsIDIzMywgNzAsIDI0NywgMjUzLCAxNiwgMTc3LCA3MSwgMjQsIDI1MSwgMTAxLCAKLSAgICAyMzMsIDcwLCA0MSwgMjQ0LCAxLCAyMjMsIDIwNiwgODcsIDI0NSwgMTM5LCA4NywgNzEsIDIzMiwgMjQzLCAyNDQsIDI0NSwgCi0gICAgMjMxLCAxMDAsIDI1MSwgNzQsIDIzMSwgMTAwLCAxODQsIDExMCwgMjIwLCAxNzQsIDIzMSwgMTAwLCAyMjAsIDE3NSwgMTEwLCAKLSAgICAyMzIsIDE5MCwgMjMxLCAxMDAsIDE4NCwgMTEwLCAxMTcsIDIyMCwgMTYxLCAyMzEsIDEwMCwgMTE3LCAyMjAsIDE2MiwgCi0gICAgMTEwLCAyMzIsIDE5MCwgMjMxLCAxMDAsIDExNywgMjIwLCAxNjIsIDIzNSwgNjcsIDIzMSwgMTAwLCAyMTYsIDE2NiwgMjMxLCAKLSAgICAxMDAsIDIxNywgMTc2LCAyMzEsIDEwMCwgMjI2LCA2MywgMjQ1LCAxODAsIDI0MiwgMTAwLCAyNDMsIDE5MSwgMjE2LCAyMjcsIAotICAgIDIyNiwgMTMxLCAyNTEsIDEwMSwgMjI2LCAxMzEsIDIxNiwgMjI3LCAyNDksIDQwLCAxMjUsIDI1MSwgMTAxLCAyNDksIDQwLCAKLSAgICAxMjUsIDIxNiwgMjI3LCAyMTYsIDIxOSwgMjIwLCAyMzMsIDEyNSwgMjUxLCAxMDEsIDIxNiwgMjE5LCAyMjAsIDIzMywgCi0gICAgMTI1LCA2NywgMjE2LCAxOTcsIDI1MSwgMjEyLCAyMjMsIDEzMSwgMiwgMjQ5LCAyMjgsIDIxOSwgNjAsIDI0NCwgMzMsIAotICAgIDI1NCwgMTc3LCAyNDksIDM3LCAyNDUsIDEyOCwgMjM1LCAxOTUsIDI0OCwgMzQsIDI0NCwgMjQ3LCA4NywgODMsIDIyMywgCi0gICAgMTQ0LCA1MSwgMjE2LCAxODMsIDgzLCAyMzMsIDY2LCA1MSwgMjE2LCAxODMsIDgzLCAyMTUsIDEzMywgNTEsIDIxNiwgMTgzLCAKLSAgICA4MywgMjQ2LCA1OSwgNTEsIDIxNiwgMTgzLCA4MywgMjIzLCAxNDQsIDUxLCAyMTYsIDE4NCwgMiwgNzEsIDEzNCwgODMsIAotICAgIDIzMywgNjYsIDUxLCAyMTYsIDE4NCwgMiwgNzEsIDEzNCwgODMsIDIyMywgMTQ0LCAyMTYsIDE4NCwgMiwgNTEsIDcxLCAKLSAgICAxMzQsIDI1NCwgODEsIDI0OSwgMTk2LCAyMTksIDY2LCAyMTcsIDM5LCAyNDksIDE5NiwgMjQwLCAyMjQsIDIsIDI0NCwgMTksIAotICAgIDIyMiwgMTU3LCAxNiwgMzEsIDIyOCwgNTgsIDE2LCAzMSwgMjE5LCA5MSwgNjUsIDI0MSwgMjE3LCAxNiwgMzEsIDIxOSwgCi0gICAgOTEsIDY1LCAyMTcsIDE2NSwgMTYsIDMxLCAyNDUsIDEwMSwgNjUsIDIxNywgMTY1LCAxNiwgMzEsIDI0NSwgMTAxLCA2NSwgCi0gICAgMjE2LCAyMDAsIDE2LCAzMSwgMjQ1LCA5MSwgMTYsIDMxLCAyNTQsIDE2OCwgMTYsIDMxLCAyNTEsIDIyMSwgMTYsIDMxLCAKLSAgICAyNTIsIDk2LCAxNiwgMzEsIDE5OSwgMjE4LCAzOCwgMTYsIDMxLCAyMzIsIDI0MywgMjQ0LCAxMTQsIDE2LCAzMSwgNzEsIAotICAgIDIxOCwgMzgsIDE2LCAzMSwgMjQzLCAyNDUsIDI0NCwgMTE0LCAxNiwgMzEsIDI1MCwgMTYyLCAyMjMsIDIwNSwgMTYsIDMxLCAKLSAgICAyMjAsIDIwOCwgMjI2LCAyNTQsIDE2LCAzMSwgMjIwLCAyMDgsIDIzNSwgMjUxLCAxNiwgMzEsIDI0OCwgOTcsIDIzMiwgCi0gICAgMjMzLCAyNDUsIDQyLCAxNiwgMzEsIDI0NywgMjM4LCAyNDksIDExNywgMTE2LCAxNiwgMzEsIDI0NywgMjM4LCAyNDksIAotICAgIDExNywgMTA5LCAxNiwgMzEsIDI0NywgMjM4LCAyNDksIDExNywgMTY2LCAxNiwgMzEsIDI0NywgMjM4LCAyNDksIDExNywgCi0gICAgMTYzLCAxNiwgMzEsIDE0NiwgMjU0LCAxNjgsIDE2LCAzMSwgMjE4LCAxMjMsIDIzNiwgNTcsIDE2LCAzMSwgMjQ1LCAxMDEsIAotICAgIDY1LCAyMTYsIDIwMSwgMjUxLCAxMzYsIDE2LCAzMSwgMjUwLCAxOTMsIDE2LCAzMSwgMjQ1LCAxMDEsIDY1LCAyMzEsIDE0NiwgCi0gICAgMTYsIDMxLCAyMTksIDYsIDE2LCAzMSwgMjQ1LCA0MiwgMTYsIDMxLCAyNDQsIDc2LCAyMjEsIDU3LCAxNiwgMzEsIDI0MiwgCi0gICAgOTksIDIyMSwgNTcsIDE2LCAzMSwgMjI0LCAxNCwgMjIxLCA1NywgMTYsIDMxLCAyMTUsIDE0NSwgMjIxLCA1NywgMTYsIDMxLCAKLSAgICAyMTksIDIwNiwgMTYsIDMxLCAyNDgsIDE0LCAyNTEsIDEzOSwgODcsIDIyNywgNDAsIDI1MSwgODksIDE2LCAzMSwgMjI5LCAKLSAgICAxNjcsIDE2LCAzMSwgMjQ4LCAxNSwgMjQzLCAyNDUsIDEwOSwgMTYsIDMxLCAyMTksIDcsIDI0MywgMjQ1LCAxMDksIDIyNywgCi0gICAgMTA1LCAxMDEsIDIyNywgMTA1LCAyNTAsIDg3LCAyMjcsIDEwNSwgMjQzLCAyNDgsIDIyNywgMTA1LCAyMzUsIDE5MSwgMjQzLCAKLSAgICAyNDgsIDIyNywgMTA1LCAyNTEsIDIxOSwgMjUxLCA1MywgMjI3LCAxMDUsIDI1MSwgOTYsIDIxNywgNjUsIDIyNywgMTA1LCAKLSAgICAyNTEsIDgyLCAyNTIsIDY1LCAyNDAsIDk2LCAyMjcsIDEwNSwgMjU0LCAzNiwgNjUsIDI1MCwgNjUsIDIyNywgMTA1LCAyNDgsIAotICAgIDEwMSwgMjI3LCAxMDUsIDI0OSwgMjksIDI1NCwgMTcxLCAyMjgsIDU2LCAyMjcsIDEwNSwgNTEsIDI1MiwgOTcsIDM2LCAyMSwgCi0gICAgMTE2LCAzNiwgMjEsIDEwOSwgMzYsIDIxLCAxNjYsIDM2LCAyMSwgMTYzLCAzNiwgMjEsIDE4MCwgMzYsIDIxLCAxODksIDM2LCAKLSAgICAyMSwgMTk4LCAzNiwgMjEsIDE5NSwgMzYsIDIxLCAyMDAsIDM2LCA1MCwgMjE3LCAyMDAsIDM2LCA1MCwgMjQ1LCAxMjQsIAotICAgIDM2LCA1MCwgMjE2LCA0MSwgMzYsIDUwLCAyMTcsIDExNywgMzYsIDUwLCAyNDMsIDIzMSwgMzYsIDUwLCAyNDQsIDg3LCAzNiwgCi0gICAgNTAsIDIyMCwgNDcsIDM2LCA1MCwgMjIxLCA0MCwgMzYsIDUwLCAyNDUsIDE0NywgMzYsIDUwLCAyMjksIDI4LCAzNiwgNTAsIAotICAgIDIxNiwgMzgsIDg2LCAyMSwgMTE2LCA4NiwgMjEsIDEwOSwgODYsIDIxLCAxNjYsIDg2LCAyMSwgMTYzLCA4NiwgMjEsIDE4MCwgCi0gICAgODYsIDIxLCAxODksIDg2LCAyMSwgMTk4LCA4NiwgMjEsIDE5NSwgODYsIDIxLCAyMDAsIDg2LCA1MCwgMjE3LCAyMDAsIDg2LCAKLSAgICA1MCwgMjQ1LCAxMjQsIDg2LCA1MCwgMjE2LCA0MSwgODYsIDUwLCAyMTcsIDExNywgODYsIDUwLCAyNDMsIDIzMSwgODYsIAotICAgIDUwLCAyNDQsIDg3LCA4NiwgNTAsIDIyMCwgNDcsIDg2LCA1MCwgMjIxLCA0MCwgODYsIDUwLCAyNDUsIDE0NywgODYsIDUwLCAKLSAgICAyMjksIDI4LCA4NiwgNTAsIDIxNiwgMzgsIDIxLCAxMjIsIDI0MywgMjAwLCAyMTksIDY5LCAyMSwgMTE3LCAyNDMsIDIwMCwgCi0gICAgMjE5LCA2OSwgMjEsIDEzMywgMjQzLCAyMDAsIDIxOSwgNjksIDIxLCAyNDMsIDIzNywgMjQzLCAyMDAsIDIxOSwgNjksIDIxLCAKLSAgICAyNDQsIDUwLCAyNDMsIDIwMCwgMjE5LCA2OSwgMjEsIDIyMCwgNTMsIDI0MywgMjAwLCAyMTksIDY5LCAyMSwgMjIxLCA0MywgCi0gICAgMjQzLCAyMDAsIDIxOSwgNjksIDIxLCAyNDUsIDE1MCwgMjQzLCAyMDAsIDIxOSwgNjksIDIxLCAyMjksIDMxLCAyNDMsIAotICAgIDIwMCwgMjE5LCA2OSwgNTAsIDIxNywgMjAxLCAyNDMsIDIwMCwgMjE5LCA2OSwgNTAsIDI0NSwgMTI1LCAyNDMsIDIwMCwgCi0gICAgMjE5LCA2OSwgNTAsIDIxNiwgNDIsIDI0MywgMjAwLCAyMTksIDY5LCA1MCwgMjE3LCAxMTgsIDI0MywgMjAwLCAyMTksIDY5LCAKLSAgICA1MCwgMjQzLCAyMzIsIDI0MywgMjAwLCAyMTksIDY5LCA1MCwgMjQ0LCA4OCwgMjQzLCAyMDAsIDIxOSwgNjksIDUwLCAyMjAsIAotICAgIDQ4LCAyNDMsIDIwMCwgMjE5LCA2OSwgNTAsIDIyMSwgNDEsIDI0MywgMjAwLCAyMTksIDY5LCA1MCwgMjQ1LCAxNDgsIDI0MywgCi0gICAgMjAwLCAyMTksIDY5LCA1MCwgMjI5LCAyOSwgMjQzLCAyMDAsIDIxOSwgNjksIDUwLCAyMTYsIDM5LCAyNDMsIDIwMCwgMjE5LCAKLSAgICA2OSwgODYsIDcsIDMsIDEsIDYxLCA4NiwgNywgMywgMSwgMjUzLCA3NCwgODYsIDcsIDMsIDEsIDI1MCwgMjUyLCA4NiwgNywgCi0gICAgMywgMSwgMjQ5LCAzLCA4NiwgNywgMywgMSwgNzQsIDg2LCA3LCAzLCAxLCAyNDQsIDIzMCwgODYsIDcsIDMsIDEsIDI0MywgCi0gICAgMTc3LCA4NiwgNywgMywgMSwgMjQyLCA0MSwgODYsIDcsIDMsIDEsIDcyLCA4NiwgNywgMywgMSwgMjM1LCAxNDIsIDg2LCA3LCAKLSAgICAzLCAxLCAyMzUsIDI3LCA4NiwgNywgMywgMSwgMTUwLCA4NiwgNywgMywgMSwgMTgzLCA4NiwgNywgMywgMSwgMjA0LCA4NiwgCi0gICAgNywgMywgMSwgNzUsIDg2LCA3LCAzLCAxLCAyMjYsIDIyOSwgODYsIDcsIDMsIDEsIDIyNCwgMjQwLCA4NiwgNywgMywgMSwgCi0gICAgMTQ5LCA4NiwgNywgMywgMSwgMTk3LCA4NiwgNywgMywgMSwgMjE4LCA5OSwgODYsIDcsIDMsIDEsIDY5LCA4NiwgNywgMywgCi0gICAgMSwgMjE1LCA3OSwgODYsIDcsIDMsIDEsIDIxNCwgODIsIDg2LCA3LCAzLCAxLCAyMTMsIDE2NiwgODYsIDcsIDMsIDEsIAotICAgIDIxMywgMTA1LCA4NiwgNywgMywgMSwgMjEyLCAxNTIsIDM2LCA3LCA2LCAxLCA2MSwgMzYsIDcsIDYsIDEsIDI1MywgNzQsIAotICAgIDM2LCA3LCA2LCAxLCAyNTAsIDI1MiwgMzYsIDcsIDYsIDEsIDI0OSwgMywgMzYsIDcsIDYsIDEsIDc0LCAzNiwgNywgNiwgMSwgCi0gICAgMjQ0LCAyMzAsIDM2LCA3LCA2LCAxLCAyNDMsIDE3NywgMzYsIDcsIDYsIDEsIDI0MiwgNDEsIDM2LCA3LCA2LCAxLCA3MiwgCi0gICAgMzYsIDcsIDYsIDEsIDIzNSwgMTQyLCAzNiwgNywgNiwgMSwgMjM1LCAyNywgMzYsIDcsIDYsIDEsIDE1MCwgMzYsIDcsIDYsIAotICAgIDEsIDE4MywgMzYsIDcsIDYsIDEsIDIwNCwgMzYsIDcsIDYsIDEsIDc1LCAzNiwgNywgNiwgMSwgMjI2LCAyMjksIDM2LCA3LCAKLSAgICA2LCAxLCAyMjQsIDI0MCwgMzYsIDcsIDYsIDEsIDE0OSwgMzYsIDcsIDYsIDEsIDE5NywgMzYsIDcsIDYsIDEsIDIxOCwgOTksIAotICAgIDM2LCA3LCA2LCAxLCA2OSwgMzYsIDcsIDYsIDEsIDIxNSwgNzksIDM2LCA3LCA2LCAxLCAyMTQsIDgyLCAzNiwgNywgNiwgMSwgCi0gICAgMjEzLCAxNjYsIDM2LCA3LCA2LCAxLCAyMTMsIDEwNSwgMzYsIDcsIDYsIDEsIDIxMiwgMTUyLCAzNiwgNywgMywgMSwgNjEsIAotICAgIDM2LCA3LCAzLCAxLCAyNTMsIDc0LCAzNiwgNywgMywgMSwgMjUwLCAyNTIsIDM2LCA3LCAzLCAxLCAyNDksIDMsIDM2LCA3LCAKLSAgICAzLCAxLCA3NCwgMzYsIDcsIDMsIDEsIDI0NCwgMjMwLCAzNiwgNywgMywgMSwgMjQzLCAxNzcsIDM2LCA3LCAzLCAxLCAyNDIsIAotICAgIDQxLCAzNiwgNywgMywgMSwgNzIsIDM2LCA3LCAzLCAxLCAyMzUsIDE0MiwgMzYsIDcsIDMsIDEsIDIzNSwgMjcsIDM2LCA3LCAKLSAgICAzLCAxLCAxNTAsIDM2LCA3LCAzLCAxLCAxODMsIDM2LCA3LCAzLCAxLCAyMDQsIDM2LCA3LCAzLCAxLCA3NSwgMzYsIDcsIDMsIAotICAgIDEsIDIyNiwgMjI5LCAzNiwgNywgMywgMSwgMjI0LCAyNDAsIDM2LCA3LCAzLCAxLCAxNDksIDM2LCA3LCAzLCAxLCAxOTcsIAotICAgIDM2LCA3LCAzLCAxLCAyMTgsIDk5LCAzNiwgNywgMywgMSwgNjksIDM2LCA3LCAzLCAxLCAyMTUsIDc5LCAzNiwgNywgMywgMSwgCi0gICAgMjE0LCA4MiwgMzYsIDcsIDMsIDEsIDIxMywgMTY2LCAzNiwgNywgMywgMSwgMjEzLCAxMDUsIDM2LCA3LCAzLCAxLCAyMTIsIAotICAgIDE1MiwgMzYsIDIxLCAyMTIsIDc5LCAxNDYsIDM2LCA1MCwgMjQ1LCAxMjQsIDE0NiwgMzYsIDUwLCAyMTYsIDQxLCAxNDYsIAotICAgIDM2LCA1MCwgMjE3LCAxMTcsIDE0NiwgMzYsIDUwLCAyNDMsIDIzMSwgMTQ2LCAzNiwgNTAsIDI0NCwgODcsIDE0NiwgMzYsIAotICAgIDUwLCAyMjAsIDQ3LCAxNDYsIDM2LCA1MCwgMjIxLCA0MCwgMTQ2LCAzNiwgNTAsIDI0NSwgMTQ3LCAxNDYsIDM2LCA1MCwgCi0gICAgMjI5LCAyOCwgMTQ2LCAzNiwgNTAsIDIxNiwgMzgsIDUxLCAzNiwgMjEsIDExNiwgNTEsIDM2LCAyMSwgMTA5LCA1MSwgMzYsIAotICAgIDIxLCAxNjYsIDUxLCAzNiwgMjEsIDE2MywgNTEsIDM2LCAyMSwgMTgwLCA1MSwgMzYsIDIxLCAxODksIDUxLCAzNiwgMjEsIAotICAgIDE5OCwgNTEsIDM2LCAyMSwgMTk1LCA1MSwgMzYsIDIxLCAyMDAsIDUxLCAzNiwgNTAsIDIxNywgMjAwLCAxNDYsIDM2LCAyMSwgCi0gICAgMjEyLCA3OSwgOTIsIDk2LCAxNzcsIDI0MSwgMzEsIDkyLCA5NiwgMTA3LCAyNDEsIDMxLCA5MiwgOTYsIDE3NywgMjE0LCAKLSAgICAyMTYsIDkyLCA5NiwgMTA3LCAyMTQsIDIxNiwgOTIsIDk2LCAxNzcsIDIxNiwgMTY5LCAyNDgsIDEwMiwgMjQxLCAzMSwgOTIsIAotICAgIDk2LCAxMDcsIDIxNiwgMTY5LCAyNDgsIDEwMiwgMjQxLCAzMSwgOTIsIDk2LCAxNzcsIDIxNiwgMTY5LCAyNDgsIDEwMiwgCi0gICAgMjE0LCAyMTYsIDkyLCA5NiwgMTA3LCAyMTYsIDE2OSwgMjQ4LCAxMDIsIDIxNCwgMjE2LCA5MiwgOTYsIDE3NywgMjI0LCAKLSAgICAxNjksIDI0OCwgMTAyLCAyNDEsIDMxLCA5MiwgOTYsIDEwNywgMjI0LCAxNjksIDI0OCwgMTAyLCAyNDEsIDMxLCA5MiwgOTYsIAotICAgIDE3NywgMjI0LCAxNjksIDI0OCwgMTAyLCAyMTQsIDIxNiwgOTIsIDk2LCAxMDcsIDIyNCwgMTY5LCAyNDgsIDEwMiwgMjE0LCAKLSAgICAyMTYsIDkyLCA5NiwgMTc3LCAxMTksIDI0LCAyMjMsIDE0OCwgOTIsIDk2LCAxMTksIDE3NywgMjQsIDQ2LCAyNDEsIDIwNSwgCi0gICAgOTIsIDk2LCAxMTksIDEwNywgMjQsIDQ2LCAyMzMsIDIsIDkyLCA5NiwgMTA3LCAxMTksIDI0LCAyMjMsIDE0OCwgOTIsIDk2LCAKLSAgICAxNzcsIDExOSwgMjQsIDIzMywgNzAsIDkyLCA5NiwgMTE5LCAxNzcsIDI0LCA0MiwgMjQxLCAyMDUsIDkyLCA5NiwgMTE5LCAKLSAgICAxMDcsIDI0LCA0MiwgMjMzLCAyLCA5MiwgOTYsIDEwNywgMTE5LCAyNCwgMjMzLCA3MCwgOTIsIDk2LCAxNzcsIDExNCwgMjQsIAotICAgIDIyMywgMTQ4LCA5MiwgOTYsIDExNCwgMTc3LCAyNCwgNDYsIDI0MSwgMjA1LCA5MiwgOTYsIDExNCwgMTA3LCAyNCwgNDYsIAotICAgIDIzMywgMiwgOTIsIDk2LCAxMDcsIDExNCwgMjQsIDIyMywgMTQ4LCA5MiwgOTYsIDE3NywgMTE0LCAyNCwgMjMzLCA3MCwgCi0gICAgOTIsIDk2LCAxMTQsIDE3NywgMjQsIDQyLCAyNDEsIDIwNSwgOTIsIDk2LCAxMTQsIDEwNywgMjQsIDQyLCAyMzMsIDIsIDkyLCAKLSAgICA5NiwgMTA3LCAxMTQsIDI0LCAyMzMsIDcwLCA5MiwgOTYsIDE3NywgNzEsIDI0LCAyMjMsIDE0OCwgOTIsIDk2LCA3MSwgCi0gICAgMTc3LCAyNCwgNDYsIDI0MSwgMjA1LCA5MiwgOTYsIDExNCwgMTA3LCAyNCwgNDYsIDExOSwgMjMzLCAyLCA5MiwgOTYsIAotICAgIDExOSwgMTA3LCAyNCwgNDYsIDExNCwgMjMzLCAyLCA5MiwgOTYsIDcxLCAxMDcsIDI0LCA0NiwgMjMzLCAyLCA5MiwgOTYsIAotICAgIDExOSwgMTc3LCAyNCwgNDYsIDExNCwgMjQxLCAyMDUsIDkyLCA5NiwgMTE0LCAxNzcsIDI0LCA0NiwgMTE5LCAyNDEsIDIwNSwgCi0gICAgOTIsIDk2LCAxMDcsIDcxLCAyNCwgMjIzLCAxNDgsIDkyLCA5NiwgMTc3LCA3MSwgMjQsIDIzMywgNzAsIDkyLCA5NiwgNzEsIAotICAgIDE3NywgMjQsIDQyLCAyNDEsIDIwNSwgOTIsIDk2LCAxMTQsIDEwNywgMjQsIDQyLCAxMTksIDIzMywgMiwgOTIsIDk2LCAKLSAgICAxMTksIDEwNywgMjQsIDQyLCAxMTQsIDIzMywgMiwgOTIsIDk2LCA3MSwgMTA3LCAyNCwgNDIsIDIzMywgMiwgOTIsIDk2LCAKLSAgICAxMTksIDE3NywgMjQsIDQyLCAxMTQsIDI0MSwgMjA1LCA5MiwgOTYsIDExNCwgMTc3LCAyNCwgNDIsIDExOSwgMjQxLCAyMDUsIAotICAgIDkyLCA5NiwgMTA3LCA3MSwgMjQsIDIzMywgNzAsIDkyLCA5NiwgMTc3LCAxMTksIDI0LCAyNDEsIDMxLCA5MiwgOTYsIDQyLCAKLSAgICAxMDcsIDI0LCA0NiwgMTE5LCAyMzMsIDIsIDkyLCA5NiwgNDYsIDEwNywgMjQsIDQyLCAxMTksIDIzMywgMiwgOTIsIDk2LCAKLSAgICAxMTksIDE3NywgMjQsIDE5OSwgMjQxLCAyMDUsIDkyLCA5NiwgMTE5LCAxMDcsIDI0LCAxOTksIDIzMywgMiwgOTIsIDk2LCAKLSAgICA0NiwgMTc3LCAyNCwgNDIsIDExOSwgMjQxLCAyMDUsIDkyLCA5NiwgNDIsIDE3NywgMjQsIDQ2LCAxMTksIDI0MSwgMjA1LCAKLSAgICA5MiwgOTYsIDEwNywgMTE5LCAyNCwgMjQxLCAzMSwgOTIsIDk2LCAxNzcsIDExNCwgMjQsIDI0MSwgMzEsIDkyLCA5NiwgNDIsIAotICAgIDEwNywgMjQsIDQ2LCAxMTQsIDIzMywgMiwgOTIsIDk2LCA0NiwgMTA3LCAyNCwgNDIsIDExNCwgMjMzLCAyLCA5MiwgOTYsIAotICAgIDExNCwgMTc3LCAyNCwgMTk5LCAyNDEsIDIwNSwgOTIsIDk2LCAxMTQsIDEwNywgMjQsIDE5OSwgMjMzLCAyLCA5MiwgOTYsIAotICAgIDQ2LCAxNzcsIDI0LCA0MiwgMTE0LCAyNDEsIDIwNSwgOTIsIDk2LCA0MiwgMTc3LCAyNCwgNDYsIDExNCwgMjQxLCAyMDUsIAotICAgIDkyLCA5NiwgMTA3LCAxMTQsIDI0LCAyNDEsIDMxLCA5MiwgOTYsIDE3NywgNzEsIDI0LCAyNDEsIDMxLCA5MiwgOTYsIDQyLCAKLSAgICAxMDcsIDI0LCA0NiwgNzEsIDIzMywgMiwgOTIsIDk2LCA0NiwgMTA3LCAyNCwgNDIsIDcxLCAyMzMsIDIsIDkyLCA5NiwgNzEsIAotICAgIDE3NywgMjQsIDE5OSwgMjQxLCAyMDUsIDkyLCA5NiwgMTE0LCAxMDcsIDI0LCAxMTksIDE5OSwgMjMzLCAyLCA5MiwgOTYsIAotICAgIDExOSwgMTA3LCAyNCwgMTE0LCAxOTksIDIzMywgMiwgOTIsIDk2LCA3MSwgMTA3LCAyNCwgMTk5LCAyMzMsIDIsIDkyLCA5NiwgCi0gICAgNDIsIDExNCwgMTA3LCAyNCwgNDYsIDExOSwgMjMzLCAyLCA5MiwgOTYsIDQ2LCAxMTQsIDEwNywgMjQsIDQyLCAxMTksIAotICAgIDIzMywgMiwgOTIsIDk2LCA0MiwgMTE5LCAxMDcsIDI0LCA0NiwgMTE0LCAyMzMsIDIsIDkyLCA5NiwgNDYsIDExOSwgMTA3LCAKLSAgICAyNCwgNDIsIDExNCwgMjMzLCAyLCA5MiwgOTYsIDExOSwgMTc3LCAyNCwgMTE0LCAxOTksIDI0MSwgMjA1LCA5MiwgOTYsIAotICAgIDExNCwgMTc3LCAyNCwgMTE5LCAxOTksIDI0MSwgMjA1LCA5MiwgOTYsIDQ2LCAxNzcsIDI0LCA0MiwgNzEsIDI0MSwgMjA1LCAKLSAgICA5MiwgOTYsIDQyLCAxNzcsIDI0LCA0NiwgNzEsIDI0MSwgMjA1LCA5MiwgOTYsIDEwNywgNzEsIDI0LCAyNDEsIDMxLCA5MiwgCi0gICAgOTYsIDE3NywgNTEsIDI0OCwgMTAyLCAyNDEsIDMxLCA5MiwgOTYsIDEwNywgNTEsIDI0OCwgMTAyLCAyNDEsIDMxLCA5MiwgCi0gICAgOTYsIDE3NywgNTEsIDI0OCwgMTAyLCAyMTQsIDIxNiwgOTIsIDk2LCAxMDcsIDUxLCAyNDgsIDEwMiwgMjE0LCAyMTYsIDkyLCAKLSAgICA5NiwgNTEsIDI0MSwgMzEsIDkyLCA5NiwgNTEsIDIxNCwgMjE2LCA5MiwgOTYsIDExOSwgMjIwLCA4MSwgMjQsIDQ2LCAyNDYsIAotICAgIDY3LCA5MiwgOTYsIDExOSwgNTEsIDI0LCA0NiwgMjIwLCA4MCwgOTIsIDk2LCA1MSwgMTE5LCAyNCwgMjIzLCAxNDgsIDkyLCAKLSAgICA5NiwgMTE5LCAyMjAsIDgxLCAyNCwgNDIsIDI0NiwgNjcsIDkyLCA5NiwgMTE5LCA1MSwgMjQsIDQyLCAyMjAsIDgwLCA5MiwgCi0gICAgOTYsIDUxLCAxMTksIDI0LCAyMzMsIDcwLCA5MiwgOTYsIDExNCwgMjIwLCA4MSwgMjQsIDQ2LCAyNDYsIDY3LCA5MiwgOTYsIAotICAgIDExNCwgNTEsIDI0LCA0NiwgMjIwLCA4MCwgOTIsIDk2LCA1MSwgMTE0LCAyNCwgMjIzLCAxNDgsIDkyLCA5NiwgMTE0LCAKLSAgICAyMjAsIDgxLCAyNCwgNDIsIDI0NiwgNjcsIDkyLCA5NiwgMTE0LCA1MSwgMjQsIDQyLCAyMjAsIDgwLCA5MiwgOTYsIDUxLCAKLSAgICAxMTQsIDI0LCAyMzMsIDcwLCA5MiwgOTYsIDcxLCAyMjAsIDgxLCAyNCwgNDYsIDI0NiwgNjcsIDkyLCA5NiwgNzEsIDUxLCAKLSAgICAyNCwgNDYsIDIyMCwgODAsIDkyLCA5NiwgNTEsIDcxLCAyNCwgMjIzLCAxNDgsIDkyLCA5NiwgNzEsIDIyMCwgODEsIDI0LCAKLSAgICA0MiwgMjQ2LCA2NywgOTIsIDk2LCA3MSwgNTEsIDI0LCA0MiwgMjIwLCA4MCwgOTIsIDk2LCA1MSwgNzEsIDI0LCAyMzMsIAotICAgIDcwLCA5MiwgOTYsIDExOSwgMjIwLCA4MSwgMjQsIDE5OSwgMjQ2LCA2NywgOTIsIDk2LCAxMTksIDUxLCAyNCwgMTk5LCAKLSAgICAyMjAsIDgwLCA5MiwgOTYsIDUxLCAxMTksIDI0LCAyNDEsIDMxLCA5MiwgOTYsIDExNCwgMjIwLCA4MSwgMjQsIDE5OSwgCi0gICAgMjQ2LCA2NywgOTIsIDk2LCAxMTQsIDUxLCAyNCwgMTk5LCAyMjAsIDgwLCA5MiwgOTYsIDUxLCAxMTQsIDI0LCAyNDEsIDMxLCAKLSAgICA5MiwgOTYsIDcxLCAyMjAsIDgxLCAyNCwgMTk5LCAyNDYsIDY3LCA5MiwgOTYsIDcxLCA1MSwgMjQsIDE5OSwgMjIwLCA4MCwgCi0gICAgOTIsIDk2LCA1MSwgNzEsIDI0LCAyNDEsIDMxLCA5MiwgOTYsIDE3NywgMjUzLCAxOTYsIDExOSwgMjQsIDIyMywgMTQ4LCAKLSAgICA5MiwgOTYsIDE3NywgMjUzLCAxOTYsIDExOSwgMjQsIDIzMywgNzAsIDkyLCA5NiwgMTc3LCAyNTMsIDE5NiwgMTE0LCAyNCwgCi0gICAgMjMzLCA3MCwgOTIsIDk2LCAxNzcsIDI1MywgMTk2LCAxMTQsIDI0LCAyMjMsIDE0OCwgOTIsIDk2LCAxNzcsIDI0NywgMjA3LCAKLSAgICAyMTUsIDEzMSwgNDYsIDIxMSwgMjExLCAyMzIsIDE2MywgMjMzLCA3MCwgOTIsIDk2LCAxNzcsIDI0NywgMjA3LCAyMTUsIAotICAgIDEzMSwgNDIsIDIxMSwgMjExLCAyMzIsIDE2MywgMjIzLCAxNDgsIDkyLCA5NiwgMTc3LCAyNDcsIDIwNywgMjQ5LCA3MCwgCi0gICAgOTIsIDk2LCAxNzcsIDIzMywgNzAsIDkyLCA5NiwgMTc3LCAyMTUsIDEzNCwgOTIsIDk2LCAxNzcsIDIyMywgMTQ4LCA5MiwgCi0gICAgOTYsIDE3NywgMjQ2LCA2MCwgOTIsIDk2LCAxMDcsIDIzMywgNzAsIDkyLCA5NiwgMTA3LCAyMTUsIDEzNCwgOTIsIDk2LCAKLSAgICAxMDcsIDIyMywgMTQ4LCA5MiwgOTYsIDEwNywgMjQ2LCA2MCwgOTIsIDk2LCAxNzcsIDQyLCAyNCwgMTA3LCAyMjMsIDE0OCwgCi0gICAgOTIsIDk2LCAxNzcsIDExNCwgMjQsIDEwNywgMjQ2LCA2MCwgOTIsIDk2LCAxMDcsIDQyLCAyNCwgMTc3LCAyMjMsIDE0OCwgCi0gICAgOTIsIDk2LCAxMDcsIDExNCwgMjQsIDE3NywgMjQ2LCA2MCwgMjE1LCAxMzEsIDE1MSwgMjUxLCAxMzYsIDIzMiwgMTYzLCAKLSAgICAxMjIsIDI0NSwgMTQ2LCAyNTEsIDEzNiwgMjMyLCAxNjMsIDEyMiwgMjI0LCAxNjcsIDI1MSwgMTM2LCAyMzIsIDE2MywgCi0gICAgMTMzLCAyNDUsIDE0NCwgMjUxLCAxMzYsIDIzMiwgMTYzLCAxNTEsIDI1MSwgMTM2LCAyMzIsIDE2MywgMjQ0LCA1MCwgMjQ1LCAKLSAgICAxNDQsIDI1MSwgMTM2LCAyMzIsIDE2MywgMTMzLCAyMjQsIDE2NSwgMjUxLCAxMzYsIDIzMiwgMTYzLCAyMjEsIDQzLCAyNDUsIAotICAgIDE0NCwgMjUxLCAxMzYsIDI0MywgMjAwLCAyNTEsIDEzNiwgNDIsIDIyMSwgNDMsIDI0NSwgMTQ0LCAyNTEsIDEzNiwgNDIsIAotICAgIDEzMywgMjI0LCAxNjUsIDI1MSwgMTM2LCA0MiwgMjQ0LCA1MCwgMjQ1LCAxNDQsIDI1MSwgMTM2LCA0MiwgMTUxLCAyNTEsIAotICAgIDEzNiwgNDIsIDEzMywgMjQ1LCAxNDQsIDI1MSwgMTM2LCA0MiwgMTIyLCAyMjQsIDE2NywgMjUxLCAxMzYsIDQyLCAxMjIsIAotICAgIDI0NSwgMTQ2LCAyNTEsIDEzNiwgNDYsIDE1MSwgMjUxLCAxMzYsIDE3NywgMjIxLCAxNCwgMjMxLCAxNDcsIDIyMSwgMTQsIAotICAgIDI0OCwgMTA3LCAyMjEsIDE0LCAyMTUsIDEzMSwgMTIyLCAyNDUsIDE0NiwgMjUxLCAxMzYsIDQ2LCAxMjIsIDI0NSwgMTQ2LCAKLSAgICAyNTEsIDEzNiwgMjI0LCAxNzEsIDIzMiwgMTYzLCAyMzMsIDcwLCAyMjQsIDE3MSwgMjMyLCAxNjMsIDIyMywgMTQ4LCAyMjQsIAotICAgIDE3MSwgMjE1LCAxMzEsIDIzMywgNzAsIDIyNCwgMTcxLCAyMTUsIDEzMSwgNDIsIDI0LCAyMzIsIDE2MywgNDIsIDI0LCAKLSAgICAyMzIsIDE2MywgMjIzLCAxNDgsIDIyNCwgMTcxLCAyMTUsIDEzMSwgNDIsIDI0LCAyMzIsIDE2MywgMjIzLCAxNDgsIDIyNCwgCi0gICAgMTcxLCAyMTUsIDEzMSwgNDIsIDI0LCAyMTUsIDEzMSwgNDYsIDI0LCAyMzIsIDE2MywgMjMzLCA3MCwgMjI0LCAxNzEsIAotICAgIDIxNSwgMTMxLCA0MiwgMjQsIDIxNSwgMTMxLCA0NiwgMjQsIDIzMiwgMTYzLCAyMjMsIDE0OCwgMjI0LCAxNzEsIDIxNSwgCi0gICAgMTMxLCAyMjMsIDE0OCwgMjI0LCAxNzEsIDIxNSwgMTMxLCA0NiwgMjQsIDIzMiwgMTYzLCAyMzMsIDcwLCAyMjQsIDE3MSwgCi0gICAgMjE1LCAxMzEsIDQ2LCAyNCwgMjMyLCAxNjMsIDQyLCAyNCwgMjMyLCAxNjMsIDIyMywgMTQ4LCA4MywgMjE5LCAxNjYsIDY3LCAKLSAgICAyMTksIDE2NiwgNjcsIDQxLCAyLCAyMjMsIDg1LCAyNDksIDk4LCA2NywgNDEsIDI0OSwgMTI2LCA4MywgMywgMjE5LCAxNjYsIAotICAgIDQxLCAyLCAxOTksIDI0NCwgNzQsIDQxLCAyLCA3MSwgMjQ0LCA3NCwgNDEsIDIsIDIyNywgMTEsIDI0OSwgNjYsIDI0NCwgCi0gICAgNzQsIDQxLCAyLCAyMTUsIDEzMSwgNDIsIDIxMSwgMjExLCAyMzIsIDE2MywgNDYsIDI0NCwgNzQsIDQxLCAyLCAyMTUsIAotICAgIDEzMSwgNDYsIDIxMSwgMjExLCAyMzIsIDE2MywgNDIsIDI0NCwgNzQsIDQxLCAyLCAyNDcsIDIwNywgMjQ5LCA2NiwgMjQ0LCAKLSAgICA3NCwgODMsIDMsIDIxOSwgMTY2LCA2NywgMywgMjE5LCAxNjYsIDgzLCAyMjQsIDksIDY3LCAyMjQsIDksIDgzLCA3MSwgCi0gICAgMjI0LCA5LCA2NywgNzEsIDIyNCwgOSwgODMsIDIyNiwgMTM0LCA2NywgMjI2LCAxMzQsIDgzLCAyMTUsIDEzMywgMjE2LCAKLSAgICAxODMsIDY3LCAyMTUsIDEzMywgMjE2LCAxODMsIDgzLCAyMTUsIDEzMywgMywgMjE2LCAxODMsIDY3LCAyMTUsIDEzMywgMywgCi0gICAgMjE2LCAxODMsIDgzLCAyMjMsIDE0NCwgMjE2LCAxODMsIDY3LCAyMjMsIDE0NCwgMjE2LCAxODMsIDgzLCAyMjMsIDE0NCwgCi0gICAgMywgMjE2LCAxODMsIDY3LCAyMjMsIDE0NCwgMywgMjE2LCAxODMsIDgzLCAyMjMsIDE0NCwgMjI1LCAxNDIsIDY3LCAyMjMsIAotICAgIDE0NCwgMjI1LCAxNDIsIDgzLCAyNDYsIDU5LCAyMTYsIDE4MywgNjcsIDI0NiwgNTksIDIxNiwgMTgzLCA4MywgMjQ2LCA1OSwgCi0gICAgMywgMjE2LCAxODMsIDY3LCAyNDYsIDU5LCAzLCAyMTYsIDE4MywgODMsIDIzMywgNjYsIDIxNiwgMTgzLCA2NywgMjMzLCAKLSAgICA2NiwgMjE2LCAxODMsIDgzLCAyMzMsIDY2LCAzLCAyMTYsIDE4MywgNjcsIDIzMywgNjYsIDMsIDIxNiwgMTgzLCA4MywgCi0gICAgMjMzLCA2NiwgMjI1LCAxNDIsIDY3LCAyMzMsIDY2LCAyMjUsIDE0MiwgODMsIDI0NywgMjAwLCA2NywgMjQ3LCAyMDAsIDY3LCAKLSAgICAyNDcsIDIwMSwgMjQ5LCAxMjYsIDgzLCAzLCAyNDcsIDIwMCwgMjQ0LCA1OCwgMjMyLCAxNTksIDY3LCAyNDksIDIyOCwgCi0gICAgMjQ2LCA3MiwgMjQ5LCAyMjgsIDI0OSwgMjI5LCAyLCA3MSwgMjQ0LCA3NCwgMjUxLCA0MCwgODMsIDI0OSwgMjI4LCAyNDksIAotICAgIDIyOSwgMiwgNDIsIDE1MSwgMjUxLCAxNDQsIDI0OSwgMjI5LCAyLCA0NiwgMTUxLCAyNTEsIDE0NCwgMjQ5LCAyMjksIDIsIAotICAgIDIzMiwgMTYzLCAxNTEsIDI1MSwgMTQ0LCAyNDksIDIyOSwgMiwgMjE1LCAxMzEsIDE1MSwgMjUxLCAxNDQsIDI0OSwgMjI5LCAKLSAgICAyLCAyMTUsIDEzMSwgNDYsIDIyNCwgMTcxLCAyNTEsIDE0NCwgMjQ5LCAyMjksIDIsIDI1NCwgNjQsIDI1MSwgMTcsIDIxNSwgCi0gICAgMTMxLCA0MiwgMjI0LCAxNzEsIDI1MSwgMTQ0LCA0MiwgMTUxLCA4MywgMjQ5LCAyMjgsIDQ2LCAxNTEsIDgzLCAyNDksIAotICAgIDIyOCwgMjM1LCAxOTIsIDI1MSwgNDIsIDIzNSwgMTkyLCA2NywgMjQ5LCAyMjgsIDIxNSwgMTMxLCAxNTEsIDIzNSwgMTkyLCAKLSAgICA2NywgMjQ5LCAyMjgsIDIzMiwgMTYzLCAxNTEsIDIzNSwgMTkyLCA2NywgMjQ5LCAyMjgsIDIxNSwgMTMxLCA0MiwgMjI0LCAKLSAgICAxNzEsIDI0OSwgMjI2LCAyNTMsIDE5NSwgMjE1LCAxMzEsIDQ2LCAyMjQsIDE3MSwgMjQ5LCAyMjYsIDI1MywgMTk1LCAyMzIsIAotICAgIDE2MywgNDYsIDIyNCwgMTcxLCAyNDksIDIyNiwgMjUzLCAxOTUsIDIzMiwgMTYzLCA0MiwgMjI0LCAxNzEsIDI0OSwgMjI2LCAKLSAgICAyNTMsIDE5NSwgMjE1LCAxMzEsIDE1MSwgMjQ5LCAyMjgsIDIzMiwgMTYzLCAxNTEsIDI0OSwgMjI4LCA4MywgMjMyLCAxNjMsIAotICAgIDQ2LCAyMTYsIDE4MywgODMsIDIzMiwgMTYzLCA0MiwgMjE2LCAxODMsIDgzLCAyMTUsIDEzMSwgNDIsIDIxNiwgMTgzLCA4MywgCi0gICAgMjE1LCAxMzEsIDQ2LCAyMTYsIDE4MywgNjcsIDI1MSwgNDIsIDQxLCAyLCA0MiwgMTUxLCAyNTEsIDE0NCwgNDEsIDIsIDQ2LCAKLSAgICAxNTEsIDI1MSwgMTQ0LCA0MSwgMiwgMjE1LCAxMzEsIDQyLCAyNDcsIDIwNywgMTUxLCAyNTEsIDE0NCwgNDEsIDIsIDIzMiwgCi0gICAgMTYzLCA0NiwgMjQ3LCAyMDcsIDE1MSwgMjUxLCAxNDQsIDY3LCA0MSwgMiwgNzEsIDI1MSwgMTU1LCAyMzIsIDI0MiwgNjcsIAotICAgIDIxNSwgMTMzLCAyMTYsIDE4NCwgMiwgMjQ3LCA3NCwgMjE1LCAxMzMsIDIxNiwgMTg0LCAyLCA0MiwgMTUxLCAyNTEsIDE0NCwgCi0gICAgMjE1LCAxMzMsIDIxNiwgMTg0LCAyLCA0NiwgMTUxLCAyNTEsIDE0NCwgMjMzLCAxMDgsIDI0OSwgMjI4LCA2NywgNDEsIDIsIAotICAgIDIxNSwgMTMxLCA0MiwgMjI0LCAxNzAsIDY3LCA0MSwgMiwgMjMyLCAxNjMsIDQyLCAyMjQsIDE3MCwgNjcsIDQxLCAyLCAKLSAgICAyMzIsIDE2MywgNDYsIDIyNCwgMTcwLCA2NywgNDEsIDIsIDIxNSwgMTMxLCA0NiwgMjI0LCAxNzAsIDY3LCAyNDksIDIyOSwgCi0gICAgMiwgMjE1LCAxMzEsIDQyLCAyMjQsIDE3MCwgNjcsIDI0OSwgMjI5LCAyLCAyMzIsIDE2MywgNDIsIDIyNCwgMTcwLCA2NywgCi0gICAgMjQ5LCAyMjksIDIsIDIzMiwgMTYzLCA0NiwgMjI0LCAxNzAsIDY3LCAyNDksIDIyOSwgMiwgMjE1LCAxMzEsIDQ2LCAyMjQsIAotICAgIDE3MCwgMjE1LCAxMzEsIDQyLCAyMTYsIDE4MywgMjE1LCAxMzEsIDQ2LCAyMTYsIDE4MywgMjMyLCAxNjMsIDQyLCAyMTYsIAotICAgIDE4MywgNjcsIDIzMSwgMTQ3LCAyMTksIDE2NiwgODMsIDIzMSwgMTQ3LCAyMTksIDE2NiwgNjcsIDIzMSwgMTQ3LCAzLCAKLSAgICAyMTksIDE2NiwgODMsIDIzMSwgMTQ3LCAzLCAyMTksIDE2NiwgMjMyLCAxNjMsIDQ2LCAyMTYsIDE4MywgODMsIDIxOCwgCi0gICAgMjM5LCAyLCAyMjQsIDI1LCAyNDksIDE4NCwgMjE1LCAxNjQsIDIxOSwgMjQ0LCAyNDksIDE2MCwgODMsIDIxOSwgOTUsIDY3LCAKLSAgICAyMTksIDk1LCAyMzMsIDAsIDIxNywgODYsIDIxOCwgMjM4LCAyNTMsIDE0OSwgMjI4LCAxODIsIDI0NywgMjQ1LCAyMjgsIAotICAgIDE4MiwgMjQ5LCAxMzUsIDIyNywgMjksIDgzLCAyMTcsIDIwOSwgNjcsIDIxNywgMjA5LCAyNTIsIDc1LCAyNTEsIDg5LCAKLSAgICAyNTIsIDc1LCA5MiwgMiwgMjUwLCA2NSwgMjUyLCA3NSwgOTIsIDIsIDIxMywgMTY2LCAyMjIsIDE2OSwgMjE1LCAxNjUsIDIsIAotICAgIDIyNCwgNTEsIDI0NiwgMzksIDI0MCwgMjMwLCAyNTEsIDE5OSwgNjcsIDIyMCwgMTgyLCAyMjUsIDIzMywgODMsIDIyMCwgCi0gICAgMTgyLCAyMjUsIDIzMywgMjIxLCAxMCwgMjIzLCAyMDIsIDIyMywgODksIDI0NCwgMjQsIDI0MSwgMjEyLCAyNTEsIDQyLCAKLSAgICA4MywgNDIsIDIyNSwgMTQxLCAyMzUsIDIzOSwgODMsIDQ2LCAyMjUsIDE0MSwgMjM1LCAyMzksIDY3LCA0MiwgMjI1LCAxNDEsIAotICAgIDIzNSwgMjM5LCA2NywgMTE0LCAyMjUsIDE0MSwgMjM1LCAyMzksIDY3LCA0NiwgMjI1LCAxNDEsIDIzNSwgMjM5LCA2NywgCi0gICAgMTE5LCAyMjUsIDE0MSwgMjM1LCAyMzksIDIyMCwgMjksIDI0LCAyNDksIDY5LCAyNTAsIDE1MiwgNTIsIDIyNCwgNjIsIDUyLCAKLSAgICAyNTEsIDE2MiwgNTIsIDI1MCwgMjExLCAyNTQsIDEzLCAyMjcsIDEyLCAyNDksIDcwLCAyNTAsIDQ4LCAyMjMsIDE5MCwgCi0gICAgMjQ5LCA3MSwgNjUsIDIzMiwgMTczLCAyNDksIDcxLCA2NSwgMjM1LCAxMTcsIDIxOSwgOTYsIDI0LCAyNDksIDc2LCAyNDQsIAotICAgIDEzNiwgODcsIDI1NCwgMTUzLCAyMjEsIDEyLCAyNDIsIDUsIDI0LCAyMjAsIDExNSwgMjI2LCA5NSwgODcsIDIxMiwgMjQ1LCAKLSAgICAyMTMsIDU4LCAyMTYsIDE3MywgMzEsIDI0MSwgMjA3LCAyMTYsIDE3MywgMzEsIDIzMywgMTMxLCAyMTYsIDE3MywgMzEsIAotICAgIDI0NCwgNjUsIDIxNiwgMTczLCAzMSwgMjE3LCA4NywgMjE2LCAxNzMsIDMxLCAyMTMsIDIyNCwgMjE2LCAxNzMsIDMxLCAKLSAgICAyMTQsIDI0LCAyMTYsIDE3MywgMzEsIDIzMCwgMTg1LCAyMTYsIDE3MywgMzEsIDI0NSwgMTc5LCAyMTMsIDI0MiwgNjUsIAotICAgIDI0NywgMjI2LCA2NywgMjQzLCAyMDksIDI0NCwgMTU4LCA2NywgMjIwLCAyLCAyNDQsIDE1OCwgODMsIDIyMCwgMiwgMjQ0LCAKLSAgICAxNTgsIDY3LCAyMTgsIDIzOSwgMiwgMjI0LCAyNSwgMjQ0LCA2MSwgMjI0LCAxNjcsIDIzMCwgMTk4LCAyMzMsIDEwMywgCi0gICAgMjI0LCAxNjcsIDIzMCwgMTk4LCAyMzEsIDExOCwgMjQ0LCAxMDcsIDUyLCAyNDUsIDE3OSwgMjMxLCAyNTMsIDUyLCAyMzUsIAotICAgIDQxLCAyMjIsIDEzNywgMjE1LCAxMTYsIDIyOSwgMTc1LCAyMjUsIDE1NCwgMjUzLCAxODMsIDIxNywgMjQ3LCAyNDMsIDI4LCAKLSAgICAyNTAsIDE5MSwgMjMzLCA0MywgMjE0LCAxMzEsIDIzMywgMTAsIDIyMiwgMTEwLCAyMjIsIDE4OCwgMjUwLCAxODAsIDI1MywgCi0gICAgMjEyLCAyMjUsIDE4NCwgNjcsIDI1MCwgNTQsIDIzNCwgODcsIDY3LCAyNTAsIDU0LCAyMjQsIDE1OSwgNjcsIDI1MCwgNTQsIAotICAgIDIyMywgOTcsIDY3LCAyNTAsIDU0LCAyNTEsIDE1NCwgNjcsIDI1MCwgNTQsIDIzNCwgMzksIDY3LCAyNTAsIDU0LCAyMjYsIAotICAgIDEwNSwgODMsIDI1MCwgNTQsIDIzNCwgODcsIDgzLCAyNTAsIDU0LCAyMjQsIDE1OSwgODMsIDI1MCwgNTQsIDIyMywgOTcsIAotICAgIDgzLCAyNTAsIDU0LCAyNTEsIDE1NCwgODMsIDI1MCwgNTQsIDIzNCwgMzksIDgzLCAyNTAsIDU0LCAyMjYsIDEwNSwgODMsIAotICAgIDIxOSwgMjA0LCAyMTgsIDI1MSwgNjcsIDI0MSwgMjEyLCAyMTgsIDI1MSwgNjcsIDI0NywgMjAxLCAyMTgsIDI1MSwgODMsIAotICAgIDI0OSwgMTgyLCAyMTgsIDI1MSwgNjcsIDIxOSwgMjA0LCAyMTgsIDI1MSwgODMsIDI0MSwgMjEyLCAyMTgsIDI1MSwgODMsIAotICAgIDI0NywgMjAxLCAyMTgsIDI1MSwgNjcsIDI0OSwgMTgyLCAyMTgsIDI1MSwgMjQwLCAyMzAsIDIxOSwgMTcwLCAyMjQsIDE2NywgCi0gICAgMjI4LCAxNTgsIDI0NSwgMTQ2LCAyMjgsIDE1OCwgMjUxLCAyNDksIDI0NSwgMTQ2LCAyMjgsIDE1MywgMjUxLCAyNDksIAotICAgIDIyMCwgNDYsIDIyOCwgMTUzLCAyMzAsIDEyNywgMjQ0LCAzNSwgNTIsIDIzMCwgMTI3LCAyMzAsIDksIDUyLCAyMzAsIDEyNywgCi0gICAgMjIwLCAyNTUsIDUyLCAyMTMsIDI1MCwgMTc1LCAyNDksIDcwLCAyNDUsIDE3NiwgMTc1LCAyNDksIDcwLCAyMTUsIDE0MiwgCi0gICAgMjI0LCA1LCA4NywgMjI0LCA1LCAxNiwgMzEsIDIxNiwgMTQsIDIyNSwgMTY2LCAyMjQsIDUsIDE2LCAzMSwgMjE2LCAxMywgCi0gICAgMjI1LCAxNjYsIDIyNCwgNSwgMTYsIDMxLCAyMTYsIDEyLCAyMjUsIDE2NiwgMjI0LCA1LCAxNiwgMzEsIDIxNiwgMTEsIAotICAgIDIyNSwgMTY2LCAyMjQsIDUsIDE2LCAzMSwgMjE2LCAxMCwgMjI1LCAxNjYsIDIyNCwgNSwgMTYsIDMxLCAyMTYsIDksIDIyNSwgCi0gICAgMTY2LCAyMjQsIDUsIDE2LCAzMSwgMjE2LCA4LCAyMjUsIDE2NiwgMjI0LCA1LCAxNiwgMzEsIDI0MywgMjYsIDIzMSwgMjAxLCAKLSAgICA4MywgMjE1LCAxNDIsIDIyNCwgNSwgODcsIDIyNCwgNiwgMjI2LCAxNDgsIDg3LCAyMjYsIDEyNCwgMjI2LCAxNDgsIDg3LCAKLSAgICAyMjYsIDQ5LCAyMjYsIDE0OCwgNTIsIDIxMywgMjQwLCA4NywgMjQ3LCAxOTMsIDI0NCwgMTU3LCAyNDcsIDE5MywgMjQ0LCAKLSAgICAxNTYsIDI0NywgMTkzLCAyNDQsIDE1NSwgMjQ3LCAxOTMsIDI0NCwgMTU0LCAyNDcsIDE5MywgMjQ0LCAxNTMsIDI0NywgCi0gICAgMTkzLCAyNDQsIDE1MiwgNjcsIDI0OSwgMjI5LCAyLCA2MiwgMjIzLCAxNDgsIDY3LCAyNDksIDIyOSwgMiwgMTE3LCAyNDcsIAotICAgIDcyLCA4MywgMjQ5LCAyMjksIDIsIDY3LCA2MiwgMjIzLCAxNDgsIDgzLCAyNDksIDIyOSwgMiwgMTE3LCA2NywgMjQ3LCA3MiwgCi0gICAgMjMwLCAyMTIsIDMxLCAyMTMsIDU4LCAyMzAsIDIxMiwgMzEsIDIxMiwgMjQ0LCAyNDcsIDE3NiwgMzEsIDI0MiwgMTA4LCAKLSAgICAyMTMsIDU4LCAyNDcsIDE3NiwgMzEsIDIzMywgMzcsIDIxMiwgMjQ0LCAyNDcsIDE3NiwgMzEsIDIzMywgMzcsIDIxMywgNTgsIAotICAgIDI0NywgMTc2LCAzMSwgMjQyLCAxMDgsIDIxMiwgMjQ0LCA2NywgMjQ0LCA0MiwgODMsIDI0NCwgNDIsIDI0MiwgNSwgMjQsIAotICAgIDIyNSwgMjM2LCAyNTQsIDI5LCAyNDksIDY4LCAyMTgsIDE4MCwgMjE5LCAxMDMsIDY1LCAyNTQsIDEzMSwgMjIyLCAxMjQsIAotICAgIDI1NCwgNzcsIDI0NCwgMjAsIDI0MywgMzYsIDIxOSwgMTAzLCA2NSwgMjQxLCAxODcsIDI1MywgMTE1LCA4NywgMjQ0LCAzMSwgCi0gICAgMjI2LCAyNTAsIDY3LCAyMTksIDk1LCAxMzMsIDIzMiwgMjM3LCAyNDksIDExNCwgMjIzLCAxNDgsIDEzMywgMjMyLCAyMzcsIAotICAgIDI0OSwgMTE0LCAyMzMsIDcwLCAyMTQsIDM0LCA1MiwgMTI0LCAyMTQsIDExMSwgNTIsIDI0NiwgNjQsIDI0NCwgMTA3LCA1MiwgCi0gICAgMjQ2LCA2NCwgMjMxLCAyNTMsIDUyLCAyMzUsIDIwMCwgMjQ0LCAxMDcsIDI0LCAyMzEsIDI1MywgNTIsIDIzMSwgMjUzLCAKLSAgICAyNCwgMjQ0LCAxMDcsIDUyLCAyMzEsIDI1MywgMiwgMjE5LCA0NSwgNTIsIDIzMSwgMjUzLCAyLCAyMTksIDQ1LCAyNCwgCi0gICAgMjMxLCAyNTMsIDI0LCAyNDQsIDEwNywgNTIsIDcxLCAyMzEsIDI1MywgMiwgMjE5LCA0NSwgNTIsIDE5OSwgMjMxLCAyNTMsIAotICAgIDIsIDIxOSwgNDUsIDUyLCAyMzEsIDE0NywgNjcsIDI0OSwgMjI4LCAyMzEsIDE0NywgODMsIDI0OSwgMjI4LCAyMzEsIDE0NywgCi0gICAgMywgNjcsIDI0OSwgMjI4LCAyMzEsIDIxNiwgODcsIDI0NywgMTE5LCA4NywgMjE1LCAxNDAsIDIyNiwgMTIzLCA4NywgMjQ5LCAKLSAgICAxNjksIDI0MywgMTk2LCAyMTUsIDExMiwgMjI5LCAxNzAsIDI1MCwgOTUsIDIyNiwgMTg4LCAyMzUsIDQ3LCAyMTQsIDE2MiwgCi0gICAgMjUwLCAzMCwgODMsIDIzMCwgMTk5LCAyMzIsIDI1MywgMjIxLCAzMywgMjIxLCA2NywgMjI0LCAxNTAsIDIyMSwgNTEsIAotICAgIDIxOSwgMjM5LCAyNTIsIDc4LCAyNTIsIDQ2LCA5MSwgMjM0LCAxNDQsIDY3LCAyNDYsIDQ4LCAyMzEsIDI0OCwgNjcsIDI0NiwgCi0gICAgNDgsIDIzNCwgODcsIDgzLCAyNDYsIDQ4LCAyMzEsIDI0OCwgODMsIDI0NiwgNDgsIDIzNCwgODcsIDIxOSwgMjQ1LCAyMTMsIAotICAgIDIxNiwgMjE5LCAyNDgsIDIxOCwgMjM5LCAyNTEsIDIyNywgMjQ5LCAxODQsIDIyNCwgNTAsIDgzLCAyMTksIDI0NCwgMjE3LCAKLSAgICA4OCwgMjQ5LCAxODUsIDI0LCAyMjQsIDUwLCAyMTYsIDU4LCA2NywgMjIwLCAxODIsIDIyNSwgMjMzLCAyMTYsIDU4LCA4MywgCi0gICAgMjIwLCAxODIsIDIyNSwgMjMzLCA2NywgMjQ3LCAyMDEsIDIzNSwgMjUyLCAyMTksIDE2NiwgMjQ5LCA2NSwgMjMzLCAxMTUsIAotICAgIDI0NywgMTQ1LCAyNTAsIDE3NiwgMjI3LCAzMiwgMjI1LCAyMzYsIDI1MCwgMTc3LCAyMjAsIDE2LCAyNDEsIDE5NiwgMiwgCi0gICAgNjcsIDI0OSwgNzAsIDM2LCAyNDksIDY1LCAyMzMsIDExNSwgMjUwLCA4OCwgMjI4LCAxODYsIDI0NSwgODMsIDI1NCwgNTAsIAotICAgIDIyNywgNTcsIDQyLCAyMTQsIDEwLCAyMTYsIDIwOCwgODMsIDIxNiwgMjEsIDQyLCAyMTQsIDEwLCAyMTYsIDIwOCwgNjcsIAotICAgIDIxNiwgMjEsIDQyLCAyMTQsIDEwLCAyMTYsIDIwOCwgODMsIDQyLCAyMzMsIDExNiwgMjMxLCAxMTcsIDY3LCA0MiwgMjMzLCAKLSAgICAxMTYsIDIzMSwgMTE3LCAyNDYsIDQ0LCAyMjAsIDEwLCA1MiwgMTA3LCA2NywgMjQ2LCA1OSwgMjE2LCAxODMsIDQyLCAyNDksIAotICAgIDE5MywgMjQ1LCA4MywgOTEsIDIyMiwgMTY5LCAyNDQsIDE0MywgMjQ3LCAyMDcsIDIzNSwgMjUyLCA2NywgMjQ5LCAyMjksIAotICAgIDIzNSwgMjUyLCA4MywgMjE5LCAxNjYsIDgzLCAyMTYsIDE1MCwgMjIzLCAyMTIsIDQyLCAyNDUsIDgyLCAyMjMsIDIxMiwgCi0gICAgNDIsIDI0NSwgODEsIDI1MywgMTI3LCAxNiwgMzEsIDIxNSwgMTE2LCAxMDcsIDI0OSwgMjI5LCAyLCAyMTksIDQ1LCAyNCwgCi0gICAgMTE3LCAxNzYsIDQ5LCAyMjYsIDY0LCAyMjMsIDE0NSwgMjM1LCAyMDIsIDIyNiwgNjQsIDIzMywgNjcsIDIzNSwgMjAyLCAKLSAgICAyMjYsIDY0LCAyMzUsIDE5MSwgMjI2LCA2NCwgODMsIDI0OSwgNzEsIDIyNywgNjMsIDIyMCwgMjA5LCAyMjAsIDE5NywgCi0gICAgMjIwLCAxNTQsIDI0OSwgMjU0LCAyNTAsIDE1OCwgMjQxLCAxNDMsIDIyMCwgNTQsIDI0MywgMzcsIDIxMywgMjE2LCAyNDAsIAotICAgIDIxMCwgMjQzLCAzNywgMiwgMjQxLCAyNTEsIDIzMSwgMjM2LCAxNiwgMzEsIDIzMywgMSwgMjMwLCAxODUsIDIxNSwgMTY1LCAKLSAgICAyMjcsIDYzLCAyNDIsIDEwMCwgMjQzLCAyMzgsIDI0NCwgNDMsIDIzNSwgMjUyLCAyNDEsIDQ1LCAyNDQsIDk4LCAyMjIsIAotICAgIDE4NSwgNDEsIDI0MywgMjM3LCAyNDksIDk4LCAyMjAsIDMyLCAyNDAsIDEwNSwgMjIwLCAzNSwgMjI2LCA0NCwgMiwgMjUyLCAKLSAgICA3OCwgMjE3LCAxOTUsIDIzNSwgMTMxLCAyNTIsIDY1LCA4NywgMjQxLCAyMTUsIDI0MiwgMTEwLCA4NywgMjQzLCAyMDMsIAotICAgIDIyNSwgMjgsIDI0OSwgNDQsIDIyNywgNjMsIDgzLCAyMTksIDE2NiwgNjcsIDI0NCwgNDMsIDIsIDE5OSwgMjMxLCAzNywgCi0gICAgODMsIDIxOSwgNDYsIDIxNSwgMTMxLCAyNTEsIDE0MCwgMjIyLCAxMTIsIDgzLCAyMjIsIDExMiwgMjMyLCAxNjMsIDI1MSwgCi0gICAgMTQwLCAyMjIsIDExMiwgNjcsIDIyMiwgMTEyLCA2NywgMTA3LCAyNTAsIDY2LCA3NywgMjE3LCAyMTAsIDIzMiwgMjA2LCAKLSAgICA1MiwgMjE4LCA0LCAyNDYsIDQzLCAyNTQsIDk5LCAyNDUsIDc4LCAyMjQsIDQ4LCAyNDQsIDU0LCAyMjQsIDQ4LCAyNDEsIAotICAgIDI1NCwgMjE0LCAxNTIsIDI0MSwgMjU0LCAyMTMsIDE4NiwgMjQxLCAyNTQsIDIzMiwgMTYzLCA0NiwgMjI2LCA3MywgMjI2LCAKLSAgICA3MywgMjE1LCAxMzEsIDQ2LCAyMjYsIDczLCA2NywgMjI5LCA2MSwgODMsIDIyOSwgNjEsIDI1MCwgNjYsIDc3LCAxMDcsIAotICAgIDI1MCwgNjYsIDc3LCAyMzAsIDE1NCwgMjEzLCAxNjYsIDEwNywgMjMwLCAxNTQsIDIxMywgMTY2LCAyNTIsIDc1LCAyMTMsIAotICAgIDE2NiwgMTA3LCAyNTIsIDc1LCAyMTMsIDE2NiwgMjI2LCAyNTAsIDI1LCAyNDksIDcwLCAxMDcsIDI1LCAyNDksIDcwLCAKLSAgICAyMjcsIDQwLCAyNTAsIDEwOSwgMjQ5LCA3MCwgMTA3LCAyMjcsIDQwLCAyNTAsIDEwOSwgMjQ5LCA3MCwgNywgMjQ5LCA3MCwgCi0gICAgMjIxLCAxMywgNjcsIDcsIDI0OSwgNzAsIDIyNiwgMjUwLCA3LCAyNDksIDcwLCAyMzEsIDI1MCwgMjQ5LCA3MCwgMjE5LCAKLSAgICA5NiwgNjUsIDI0OCwgOTUsIDI0MywgMjM3LCAyMTcsIDIyMywgMjUzLCAxMzIsIDI0MywgMjM3LCAyNTIsIDc2LCAyNTMsIAotICAgIDEzMiwgMTA3LCAyNDMsIDIzNywgMjUyLCA3NiwgMjUzLCAxMzIsIDI0MywgMjM3LCAyNDksIDE4MCwgMjUzLCAxMzIsIDgzLCAKLSAgICAyNDMsIDIzNywgMjI1LCAxNDMsIDIxOSwgOTUsIDY3LCAyNDMsIDIzNywgMjI1LCAxNDMsIDIxOSwgOTUsIDIxOSwgMTk5LCAKLSAgICAyMTksIDUxLCAyMjYsIDI1MCwgNjcsIDIxOSwgOTUsIDM2LCA2NywgMjE5LCA5NSwgMjI3LCA0MCwgMjUwLCAxMDksIDgzLCAKLSAgICAyMTksIDk1LCA4MywgMjUwLCAxMDksIDY3LCAyMTksIDk1LCAyMjYsIDI1MCwgODMsIDIxOSwgOTUsIDEwNywgMjI2LCAyNTAsIAotICAgIDgzLCAyMTksIDk1LCAyMjUsIDE5MiwgMjE5LCA5NSwgMjIxLCAxMywgNjcsIDIxOSwgOTUsIDEwNywgMjUzLCAxMzIsIDIyNywgCi0gICAgNDAsIDI1MCwgMTA5LCAyNTMsIDEzMiwgMjQ1LCAxNTAsIDIxOSwgMTc2LCAyNTMsIDEzMiwgMjQ1LCAxNTAsIDIyNSwgMTQzLCAKLSAgICA4MywgMjE5LCA5NSwgMjQ1LCAxNTAsIDIyNSwgMTQzLCAyMjUsIDE5MiwgMjE5LCA5NSwgMjIwLCA1MywgMjI1LCAxNDMsIAotICAgIDgzLCAyMTksIDk1LCAyNDUsIDE1MCwgMjI1LCAxNDMsIDIyNCwgNywgODMsIDIxOSwgOTUsIDEwNywgMjQ1LCAxNTAsIDIyNSwgCi0gICAgMTQzLCAyMjQsIDcsIDgzLCAyMTksIDk1LCAyMTYsIDQyLCAyMjUsIDE0MywgODMsIDIxOSwgOTUsIDIyMCwgNDgsIDIyNSwgCi0gICAgMTQzLCAyNTMsIDEzMiwgMjE3LCAyMjMsIDI1MywgMTMyLCAyMjcsIDQwLCAyNTAsIDEwOSwgMjE3LCAyMjMsIDI1MywgMTMyLCAKLSAgICAxMDcsIDIxNywgMjIzLCAyNTMsIDEzMiwgMjIwLCA1MywgMjI2LCAzMywgODMsIDI0LCA2NywgMjQ0LCAyMywgODMsIDI0NCwgCi0gICAgMjMsIDY3LCAyNDQsIDIzLCAyNDUsIDE1MCwgMjI2LCAzMywgMjI2LCAyNTAsIDgzLCAyNDQsIDIzLCAzNiwgMjI3LCA0MCwgCi0gICAgMjUwLCAxMDksIDI0NSwgMTUwLCAyMjUsIDE0MywgMjE5LCA5NSwgMTA3LCAyMTcsIDIyMywgMjI1LCAxOTIsIDI1MywgMTMyLCAKLSAgICAyMTksIDI0NiwgMjE3LCA1OSwgMjE2LCAxNzYsIDIxOSwgMjQ2LCAxMDcsIDI1MCwgNTEsIDIxOSwgMjQ2LCAyMTksIDIwMSwgCi0gICAgMTA3LCAyMTksIDIwMSwgMjUyLCA3NiwgMjUzLCAxMzIsIDI0NSwgMTUwLCAyMTcsIDIyMywgMjI1LCA1NSwgMjUzLCAxMzIsIAotICAgIDEwNywgMjQ1LCAxNTAsIDIxNywgMjIzLCAyMjUsIDU1LCAyNTMsIDEzMiwgMjQ5LCA3MSwgNzcsIDIyMSwgMTMsIDY3LCAKLSAgICAyNDksIDIyOCwgMTQ2LCA5MSwgMjQ5LCA3MSwgNzcsIDIzMiwgMTYzLCA0NiwgMjQ2LCA0MSwgNjcsIDIxOSwgMTY2LCAyMTUsIAotICAgIDEzMSwgNDYsIDI0NiwgNDEsIDY3LCAyMTksIDE2NiwgMjMyLCAxNjMsIDQ2LCAyMjEsIDEzLCA2NywgMjE5LCAxNjYsIDIxNSwgCi0gICAgMTMxLCA0NiwgMjIxLCAxMywgNjcsIDIxOSwgMTY2LCA4MywgMjI0LCAxNTgsIDE1MiwgMjI3LCAxNCwgNjcsIDIyNCwgMTU4LCAKLSAgICAxNTIsIDIyNywgMTQsIDY3LCAyNDQsIDI1NCwgMTUyLCAyMjcsIDE0LCA4MywgMjQ3LCAyMDEsIDIzMCwgMjUxLCA2NywgCi0gICAgMjEzLCAxNjYsIDEwNywgMjQ0LCAyNTQsIDE1MiwgODcsIDE3NywgNzEsIDEzNCwgMjMxLCAxNDcsIDcxLCAxMzQsIDEwNywgCi0gICAgNzEsIDEzNCwgMTA3LCAyMjAsIDgxLCAyMTYsIDU4LCAyNDksIDE1OCwgMjI0LCAxNDMsIDE1MiwgMjI3LCAxNCwgMTA3LCAKLSAgICAyMjAsIDgxLCAyNDksIDE1OCwgMjI0LCAxNDMsIDE1MiwgMjI3LCAxNCwgMTA3LCA1MSwgMjE2LCA1OCwgMjQ5LCAxNTgsIAotICAgIDIyNCwgMTQzLCAxNTIsIDIyNywgMTQsIDEwNywgNTEsIDI0OSwgMTU4LCAyMjQsIDE0MywgMTUyLCAyMjcsIDE0LCAxMDcsIAotICAgIDExNSwgMjIwLCA4MSwgMjQ5LCAxNTgsIDIyNCwgMTQzLCAxNTIsIDIyNywgMTQsIDEwNywgMTE1LCA1MSwgMjQ5LCAxNTgsIAotICAgIDIyNCwgMTQzLCAxNTIsIDIyNywgMTQsIDI0OSwgMzMsIDIxOSwgODAsIDIyNiwgMTQzLCA1LCAyMjcsIDE0LCAxMDcsIDI0NCwgCi0gICAgMjU0LCAxNTIsIDIyNywgMTQsIDEwNywgMjQxLCAyMTIsIDI0NCwgMjU0LCAxNTIsIDIyNywgMTQsIDEwNywgODMsIDI0MSwgCi0gICAgMjExLCAyMjMsIDg5LCAxMDcsIDgzLCAyNDEsIDIxMiwgMjUxLCA0MiwgMjQ0LCAyNCwgMjQxLCAyMTEsIDIyMywgODksIAotICAgIDI0NCwgMjQsIDI0MSwgMjEyLCAyNTEsIDQyLCAyMzEsIDE0NywgNDIsIDIyNiwgMTMyLCAyMjcsIDE0LCAyMzEsIDE0NywgCi0gICAgNDYsIDIyNiwgMTMyLCAyMjcsIDE0LCAyMzEsIDE0NywgMjQ0LCAzMiwgNDIsIDIyNiwgMTMyLCAyMjcsIDE0LCAyMzEsIAotICAgIDE0NywgMjQ0LCAzMiwgNDYsIDIyNiwgMTMyLCAyMjcsIDE0LCAyMzEsIDE0NywgMjMzLCA2NiwgMjU0LCAxOSwgMjUxLCA4NSwgCi0gICAgMjI3LCAxNCwgMjMxLCAxNDcsIDIyMywgMTQ0LCAyNTQsIDE5LCAyNTEsIDg1LCAyMjcsIDE0LCAxMDcsIDIzMywgNjYsIAotICAgIDI1NCwgMTksIDIyNCwgMTQzLCAxNTIsIDIyNywgMTQsIDEwNywgMjIzLCAxNDQsIDI1NCwgMTksIDIyNCwgMTQzLCAxNTIsIAotICAgIDIyNywgMTQsIDEwNywgMjMzLCA2NiwgMjU0LCAxOSwgMjUxLCA4NSwgMjI3LCAxNCwgMTA3LCAyMjMsIDE0NCwgMjU0LCAxOSwgCi0gICAgMjUxLCA4NSwgMjI3LCAxNCwgMTc3LCA0MiwgMjE2LCAyMTksIDIyMCwgMjMzLCAyNTEsIDg1LCAyMjcsIDE0LCAxNzcsIDQ2LCAKLSAgICAyMTYsIDIxOSwgMjIwLCAyMzMsIDI1MSwgODUsIDIyNywgMTQsIDIzMSwgMTQ3LCA0MiwgMjQ5LCA0MCwgMjUxLCA4NSwgCi0gICAgMjI3LCAxNCwgMjMxLCAxNDcsIDQ2LCAyNDksIDQwLCAyNTEsIDg1LCAyMjcsIDE0LCAyNDcsIDE1NiwgMTQ2LCAzNiwgMjEsIAotICAgIDExNiwgMjQ3LCAxNTYsIDE0NiwgMzYsIDIxLCAxMDksIDI0NywgMTU2LCAxNDYsIDM2LCAyMSwgMTY2LCAyNDcsIDE1NiwgCi0gICAgMTQ2LCAzNiwgMjEsIDE2MywgMjQ3LCAxNTYsIDE0NiwgMzYsIDIxLCAxODAsIDI0NywgMTU2LCAxNDYsIDM2LCAyMSwgMTg5LCAKLSAgICAyNDcsIDE1NiwgMTQ2LCAzNiwgMjEsIDE5OCwgMjQ3LCAxNTYsIDE0NiwgMzYsIDIxLCAxOTUsIDI0NywgMTU2LCAxNDYsIAotICAgIDM2LCAyMSwgMjAwLCAyNDcsIDE1NiwgMTQ2LCAzNiwgNTAsIDIxNywgMjAwLCAyNDcsIDE1NiwgMzYsIDM1LCAyMSwgMTE2LCAKLSAgICAyNDcsIDE1NiwgMzYsIDM1LCAyMSwgMTA5LCAyNDcsIDE1NiwgMzYsIDM1LCAyMSwgMTY2LCAyNDcsIDE1NiwgMzYsIDM1LCAKLSAgICAyMSwgMTYzLCAyNDcsIDE1NiwgMzYsIDM1LCAyMSwgMTgwLCAyNDcsIDE1NiwgMzYsIDM1LCAyMSwgMTg5LCAyNDcsIDE1NiwgCi0gICAgMzYsIDM1LCAyMSwgMTk4LCAyNDcsIDE1NiwgMzYsIDM1LCAyMSwgMTk1LCAyNDcsIDE1NiwgMzYsIDM1LCAyMSwgMjAwLCAKLSAgICAyNDcsIDE1NiwgMzYsIDM1LCA1MCwgMjE3LCAyMDAsIDI0NywgMTU2LCAxNDYsIDM2LCAzNSwgMjEsIDExNiwgMjQ3LCAxNTYsIAotICAgIDE0NiwgMzYsIDM1LCAyMSwgMTA5LCAyNDcsIDE1NiwgMTQ2LCAzNiwgMzUsIDIxLCAxNjYsIDI0NywgMTU2LCAxNDYsIDM2LCAKLSAgICAzNSwgMjEsIDE2MywgMjQ3LCAxNTYsIDE0NiwgMzYsIDM1LCAyMSwgMTgwLCAyNDcsIDE1NiwgMTQ2LCAzNiwgMzUsIDIxLCAKLSAgICAxODksIDI0NywgMTU2LCAxNDYsIDM2LCAzNSwgMjEsIDE5OCwgMjQ3LCAxNTYsIDE0NiwgMzYsIDM1LCAyMSwgMTk1LCAyNDcsIAotICAgIDE1NiwgMTQ2LCAzNiwgMzUsIDIxLCAyMDAsIDI0NywgMTU2LCAxNDYsIDM2LCAzNSwgNTAsIDIxNywgMjAwLCAxMDcsIDIxMywgCi0gICAgMjMxLCA5NSwgNjgsIDEwNywgOTQsIDUyLCAxMDcsIDIzMCwgMjUxLCA1MiwgMTA3LCAyNDcsIDEyMSwgNTIsIDEwNywgMjE5LCAKLSAgICAyMTUsIDI0NSwgMTc2LCA2OCwgMTA3LCA5NSwgNjgsIDEwNywgMjI4LCAxNjcsIDI0NSwgMTc2LCA2OCwgMjQ2LCA1MiwgCi0gICAgMjI1LCAxNDUsIDk1LCA2OCwgMTA3LCAyMjMsIDg2LCA5NSwgNjgsIDIxNiwgMTgyLCA5NSwgNjgsIDEwNywgMjE2LCAxODIsIAotICAgIDk1LCA2OCwgMjQ4LCAxMDAsIDIxNiwgMTgyLCA5NSwgNjgsIDEwNywgMjQ4LCAxMDAsIDIxNiwgMTgyLCA5NSwgNjgsIDgzLCAKLSAgICA5NSwgNjgsIDIxNywgOTcsIDIxNiwgMjI1LCA5NSwgMjUzLCAxNjQsIDIxNywgOTcsIDI1MSwgOTksIDk1LCAyNTMsIDE2NCwgCi0gICAgODMsIDk1LCAyNTMsIDE2NCwgMTA3LCA4MywgMjQ5LCAzMywgMjQ2LCA1OCwgMjQsIDk1LCA2OCwgMTA3LCA4MywgMjQ5LCAKLSAgICAzMywgMjE1LCAxMjQsIDI0LCA5NSwgNjgsIDIxOSwgMTYzLCA4MywgOTUsIDY4LCAxMDcsIDI0OSwgMTQ1LCA4MywgOTUsIAotICAgIDY4LCAyMjMsIDE0MywgNjcsIDk1LCA2OCwgMjMzLCA2NSwgNjcsIDk1LCA2OCwgMjUyLCAxMDAsIDIyMSwgMTMsIDY3LCA5NSwgCi0gICAgNjgsIDI0MywgMjExLCAyMjEsIDEzLCA2NywgOTUsIDY4LCAxMDcsIDIzMiwgMTYzLCAyMjMsIDE0MiwgNjcsIDk1LCA2OCwgCi0gICAgMTA3LCAyMTUsIDEzMSwgMjIzLCAxNDIsIDY3LCA5NSwgNjgsIDIyOCwgMTYwLCAyMzIsIDE2MywgMjIzLCAxNDIsIDY3LCAKLSAgICA5NSwgNjgsIDI0OSwgNDAsIDIzMiwgMTc3LCAyMjgsIDE2MCwgMjE1LCAxMzEsIDIyMywgMTQyLCA2NywgOTUsIDY4LCAzNiwgCi0gICAgMTA3LCA2NywgOTUsIDY4LCAyMTMsIDIzNywgOTUsIDY4LCAyNTEsIDE0MywgMjE5LCAyMTUsIDI0NSwgMTc2LCA2OCwgMjUxLCAKLSAgICAxNDMsIDk1LCA2OCwgMjUxLCAxNDMsIDIyOCwgMTY3LCAyNDUsIDE3NiwgNjgsIDEwNywgMjUxLCAxNDMsIDIxOSwgMjE1LCAKLSAgICAyNDUsIDE3NiwgNjgsIDEwNywgMjUxLCAxNDMsIDk1LCA2OCwgMTA3LCAyNTEsIDE0MywgMjI4LCAxNjcsIDI0NSwgMTc2LCAKLSAgICA2OCwgMjE3LCAyMjUsIDk1LCA2OCwgMTA3LCAyMTcsIDIyNCwgOTUsIDY4LCAyMTQsIDIsIDk1LCA2OCwgMTA3LCAyMTQsIDIsIAotICAgIDk1LCA2OCwgMjI3LCAzNywgOTUsIDY4LCA1MSwgMjQ5LCA0MCwgMjMyLCAxNzcsIDEzMywgMjQ3LCAxNjYsIDI1NCwgMTgsIAotICAgIDY3LCAyMTYsIDE4NCwgMjQ5LCAxMjYsIDMsIDY3LCAyMTYsIDE4MywgMjI2LCA0NywgMjI3LCA0MCwgMjE5LCA4LCAyMjcsIAotICAgIDQwLCAyMTgsIDIyMSwgNDIsIDIyMywgMywgMjUyLCA5MSwgMjQ4LCAxMSwgNDYsIDIyMywgMywgMjUyLCA5MSwgMjQ4LCAxMSwgCi0gICAgMTY3LCAyLCA2MiwgMjM1LCAyMTIsIDIyMywgMjAzLCAyMTksIDIzMiwgMjI1LCA4MSwgMjE5LCA4LCAyMTgsIDIyMiwgMjI1LCAKLSAgICA4MSwgMjE5LCAyMzEsIDcxLCAyNTIsIDYwLCAyLCAxOTksIDkwLCAxODQsIDI0NywgMTIwLCA5MSwgMjMyLCAxOTksIDI1NCwgCi0gICAgMjcsIDkxLCAyMzIsIDE5OSwgMjI3LCAyNCwgNjcsIDI0NywgMjAxLCAyLCAyNTAsIDEwNywgMjQ3LCA3NCwgMjQsIDIsIAotICAgIDI0NywgNzQsIDI0NSwgMTI3LCA2NSwgMjI3LCAzNSwgMjE1LCAxMjMsIDIzMiwgMTYzLCA0NiwgMjQ5LCAxMDAsIDIsIDI0NywgCi0gICAgNzQsIDIxNSwgMTMxLCA0MiwgMjQ5LCAxMDAsIDIsIDI0NywgNzQsIDQyLCAyMjYsIDI1MiwgMjM1LCA2OSwgNDYsIDIyNiwgCi0gICAgMjUyLCAyMzUsIDY5LCAyNDMsIDIwMCwgMjI2LCAyNTIsIDIzNSwgNjksIDIzMywgMTA4LCAxMTQsIDIxOCwgMzYsIDIzMywgCi0gICAgMTA4LCAxMTksIDIxOCwgMzYsIDQyLCAyNCwgNDYsIDUxLCAyMTYsIDU3LCA0MiwgMjQsIDQ2LCAyMTgsIDM2LCA0MiwgMjMwLCAKLSAgICAxNTcsIDE4NCwgNDYsIDIxOCwgMzYsIDE4NCwgNDIsIDIxOCwgMzYsIDExNCwgMjE4LCAzNywgMiwgMjQ5LCAyMjksIDQ5LCAKLSAgICAyMzIsIDE2MCwgMjQ3LCAxMjUsIDI1MSwgNywgMTk5LCAyMjMsIDQ0LCA2NywgMjQ5LCAxNDQsIDI0NywgMjAwLCA2NywgCi0gICAgMjQ5LCAxNDQsIDI0NywgMjAxLCAyLCAxMzIsIDIxNywgNjgsIDY3LCAyNDksIDE0NCwgMjQ3LCAyMDEsIDIsIDk1LCAyMTcsIAotICAgIDY4LCA2NywgNDEsIDIsIDEzMiwgMjE3LCA2OCwgNjcsIDQxLCAyLCA5NSwgMjE3LCA2OCwgMTQsIDQyLCA2NywgNDEsIDEyNSwgCi0gICAgMTQsIDQ2LCA2NywgNDEsIDEyNSwgMTQsIDQyLCAyNTQsIDE5LCAxMjUsIDE0LCA0NiwgMjU0LCAxOSwgMTI1LCAxNCwgNDIsIAotICAgIDUxLCAyNTQsIDE5LCAxMjUsIDE0LCA0NiwgNTEsIDI1NCwgMTksIDEyNSwgMTQsIDQyLCA2NywgMjE2LCAyMTksIDIyMCwgCi0gICAgMjMzLCAxMjUsIDE0LCA0NiwgNjcsIDIxNiwgMjE5LCAyMjAsIDIzMywgMTI1LCAxNCwgNDIsIDI0NCwgMzIsIDIyNiwgMTMxLCAKLSAgICAxNCwgNDYsIDI0NCwgMzIsIDIyNiwgMTMxLCAyMTUsIDEyNCwgMjI0LCAxNjksIDY4LCAyNDYsIDU4LCAyMjQsIDE2OSwgNjgsIAotICAgIDI1MywgMjU1LCAyNDMsIDc0LCAyNDksIDIyOSwgNjgsIDI0OSwgMTk1LCAyNDMsIDc0LCAyNDksIDIyOSwgNjgsIDQ2LCA3NiwgCi0gICAgMiwgMzYsIDIyNSwgMTU2LCAxODQsIDEzMiwgNjgsIDE4NCwgOTUsIDY4LCAxODQsIDQyLCA0NiwgNjgsIDE4NCwgMTMyLCAKLSAgICA1MSwgNjgsIDE4NCwgOTUsIDUxLCA2OCwgMTg0LCA0MiwgNDYsIDUxLCA2OCwgMTg0LCAxMzIsIDc2LCAyNDMsIDIxMywgCi0gICAgMTM0LCAxODQsIDk1LCA3NiwgMjQzLCAyMTMsIDEzNCwgMTg0LCAxMzIsIDUxLCA3NiwgMjQzLCAyMTMsIDEzNCwgMTg0LCAKLSAgICA5NSwgNTEsIDc2LCAyNDMsIDIxMywgMTM0LCAxODQsIDk1LCAyMTksIDE2MiwgNjgsIDQ0LCA0NSwgMjUxLCAxMzgsIDQ0LCAKLSAgICA0NSwgMjQ3LCA3MSwgNDQsIDQ1LCAyNDYsIDE5OSwgNDQsIDQ1LCAyNDcsIDcwLCA0NCwgNDUsIDI0NiwgMTM1LCA0NCwgNDUsIAotICAgIDI0NywgNiwgNDQsIDQ1LCAyNDYsIDE5OCwgNDQsIDQ1LCAyNDcsIDY5LCA0NCwgNDUsIDI0NiwgMTAzLCA0NCwgNDUsIDI0NiwgCi0gICAgMjMwLCA0NCwgNDUsIDI0NiwgMTY2LCA0NCwgNDUsIDI0NywgMzcsIDQ0LCA0NSwgMjQ2LCAxMzQsIDQ0LCA0NSwgMjQ3LCA1LCAKLSAgICA0NCwgNDUsIDI0NiwgMTk3LCA0NCwgNDUsIDI0NywgNjgsIDQ0LCA0NSwgMjQ2LCA4NywgNDQsIDQ1LCAyNDYsIDIxNCwgNDQsIAotICAgIDQ1LCAyNDYsIDE1MCwgNDQsIDQ1LCAyNDcsIDIxLCA0NCwgNDUsIDI0NiwgMTE4LCA0NCwgNDUsIDI0NiwgMjQ1LCA0NCwgCi0gICAgNDUsIDI0NiwgMTgxLCA0NCwgNDUsIDI0NywgNTIsIDQ0LCA0NSwgMjQ2LCAxMDIsIDQ0LCA0NSwgMjQ2LCAyMjksIDQ0LCAKLSAgICA0NSwgMjQ2LCAxNjUsIDQ0LCA0NSwgMjQ3LCAzNiwgNDQsIDQ1LCAyNDYsIDEzMywgNDQsIDQ1LCAyNDcsIDQsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxOTYsIDQ0LCA0NSwgMjQ3LCA2NywgNDQsIDQ1LCAyNDYsIDc5LCA0NCwgNDUsIDI0NiwgMjA2LCA0NCwgNDUsIAotICAgIDI0NiwgMTQyLCA0NCwgNDUsIDI0NywgMTMsIDQ0LCA0NSwgMjQ2LCAxMTAsIDQ0LCA0NSwgMjQ2LCAyMzcsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxNzMsIDQ0LCA0NSwgMjQ3LCA0NCwgNDQsIDQ1LCAyNDYsIDk0LCA0NCwgNDUsIDI0NiwgMjIxLCA0NCwgNDUsIAotICAgIDI0NiwgMTU3LCA0NCwgNDUsIDI0NywgMjgsIDQ0LCA0NSwgMjQ2LCAxMjUsIDQ0LCA0NSwgMjQ2LCAyNTIsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxODgsIDQ0LCA0NSwgMjQ3LCA1OSwgNDQsIDQ1LCAyNDYsIDg2LCA0NCwgNDUsIDI0NiwgMjEzLCA0NCwgNDUsIAotICAgIDI0NiwgMTQ5LCA0NCwgNDUsIDI0NywgMjAsIDQ0LCA0NSwgMjQ2LCAxMTcsIDQ0LCA0NSwgMjQ2LCAyNDQsIDQ0LCA0NSwgCi0gICAgMjQ2LCAxODAsIDQ0LCA0NSwgMjQ3LCA1MSwgNDQsIDQ1LCAyNDYsIDEwMSwgNDQsIDQ1LCAyNDYsIDIyOCwgNDQsIDQ1LCAKLSAgICAyNDYsIDE2NCwgNDQsIDQ1LCAyNDcsIDM1LCA0NCwgNDUsIDI0NiwgMTMyLCA0NCwgNDUsIDI0NywgMywgNDQsIDQ1LCAyNDYsIAotICAgIDE5NSwgNDQsIDQ1LCAyNDcsIDY2LCA0NCwgNDUsIDI0NiwgNzUsIDQ0LCA0NSwgMjQ2LCAyMDIsIDQ0LCA0NSwgMjQ2LCAKLSAgICAxMzgsIDQ0LCA0NSwgMjQ3LCA5LCA0NCwgNDUsIDI0NiwgMTA2LCA0NCwgNDUsIDI0NiwgMjMzLCA0NCwgNDUsIDI0NiwgCi0gICAgMTY5LCA0NCwgNDUsIDI0NywgNDAsIDQ0LCA0NSwgMjQ2LCA5MCwgNDQsIDQ1LCAyNDYsIDIxNywgNDQsIDQ1LCAyNDYsIAotICAgIDE1MywgNDQsIDQ1LCAyNDcsIDI0LCA0NCwgNDUsIDI0NiwgMTIxLCA0NCwgNDUsIDI0NiwgMjQ4LCA0NCwgNDUsIDI0NiwgCi0gICAgMTg0LCA0NCwgNDUsIDI0NywgNTUsIDQ0LCA0NSwgMjQ2LCA4MiwgNDQsIDQ1LCAyNDYsIDIwOSwgNDQsIDQ1LCAyNDYsIAotICAgIDE0NSwgNDQsIDQ1LCAyNDcsIDE2LCA0NCwgNDUsIDI0NiwgMTEzLCA0NCwgNDUsIDI0NiwgMjQwLCA0NCwgNDUsIDI0NiwgCi0gICAgMTc2LCA0NCwgNDUsIDI0NywgNDcsIDQ0LCA0NSwgMjQ2LCA5NywgNDQsIDQ1LCAyNDYsIDIyNCwgNDQsIDQ1LCAyNDYsIAotICAgIDE2MCwgNDQsIDQ1LCAyNDcsIDMxLCA0NCwgNDUsIDI0NiwgMTI4LCA0NCwgNDUsIDI0NiwgMjU1LCA0NCwgNDUsIDI0NiwgCi0gICAgMTkxLCA0NCwgNDUsIDI0NywgNjIsIDQ0LCA0NSwgMjQ2LCA3OCwgNDQsIDQ1LCAyNDYsIDIwNSwgNDQsIDQ1LCAyNDYsIAotICAgIDE0MSwgNDQsIDQ1LCAyNDcsIDEyLCA0NCwgNDUsIDI0NiwgMTA5LCA0NCwgNDUsIDI0NiwgMjM2LCA0NCwgNDUsIDI0NiwgCi0gICAgMTcyLCA0NCwgNDUsIDI0NywgNDMsIDQ0LCA0NSwgMjQ2LCA5MywgNDQsIDQ1LCAyNDYsIDIyMCwgNDQsIDQ1LCAyNDYsIAotICAgIDE1NiwgNDQsIDQ1LCAyNDcsIDI3LCA0NCwgNDUsIDI0NiwgMTI0LCA0NCwgNDUsIDI0NiwgMjUxLCA0NCwgNDUsIDI0NiwgCi0gICAgMTg3LCA0NCwgNDUsIDI0NywgNTgsIDQ0LCA0NSwgMjQ2LCA4NSwgNDQsIDQ1LCAyNDYsIDIxMiwgNDQsIDQ1LCAyNDYsIAotICAgIDE0OCwgNDQsIDQ1LCAyNDcsIDE5LCA0NCwgNDUsIDI0NiwgMTE2LCA0NCwgNDUsIDI0NiwgMjQzLCA0NCwgNDUsIDI0NiwgCi0gICAgMTc5LCA0NCwgNDUsIDI0NywgNTAsIDQ0LCA0NSwgMjQ2LCAxMDAsIDQ0LCA0NSwgMjQ2LCAyMjcsIDQ0LCA0NSwgMjQ2LCAKLSAgICAxNjMsIDQ0LCA0NSwgMjQ3LCAzNCwgNDQsIDQ1LCAyNDYsIDEzMSwgNDQsIDQ1LCAyNDcsIDIsIDQ0LCA0NSwgMjQ2LCAxOTQsIAotICAgIDQ0LCA0NSwgMjQ3LCA2NSwgNDQsIDQ1LCAyNDYsIDczLCA0NCwgNDUsIDI0NiwgMjAwLCA0NCwgNDUsIDI0NiwgMTM2LCA0NCwgCi0gICAgNDUsIDI0NywgNywgNDQsIDQ1LCAyNDYsIDEwNCwgNDQsIDQ1LCAyNDYsIDIzMSwgNDQsIDQ1LCAyNDYsIDE2NywgNDQsIDQ1LCAKLSAgICAyNDcsIDM4LCA0NCwgNDUsIDI0NiwgODgsIDQ0LCA0NSwgMjQ2LCAyMTUsIDQ0LCA0NSwgMjQ2LCAxNTEsIDQ0LCA0NSwgCi0gICAgMjQ3LCAyMiwgNDQsIDQ1LCAyNDYsIDExOSwgNDQsIDQ1LCAyNDYsIDI0NiwgNDQsIDQ1LCAyNDYsIDE4MiwgNDQsIDQ1LCAKLSAgICAyNDcsIDUzLCA0NCwgNDUsIDI0NiwgODAsIDQ0LCA0NSwgMjQ2LCAyMDcsIDQ0LCA0NSwgMjQ2LCAxNDMsIDQ0LCA0NSwgCi0gICAgMjQ3LCAxNCwgNDQsIDQ1LCAyNDYsIDExMSwgNDQsIDQ1LCAyNDYsIDIzOCwgNDQsIDQ1LCAyNDYsIDE3NCwgNDQsIDQ1LCAKLSAgICAyNDcsIDQ1LCA0NCwgNDUsIDI0NiwgOTUsIDQ0LCA0NSwgMjQ2LCAyMjIsIDQ0LCA0NSwgMjQ2LCAxNTgsIDQ0LCA0NSwgCi0gICAgMjQ3LCAyOSwgNDQsIDQ1LCAyNDYsIDEyNiwgNDQsIDQ1LCAyNDYsIDI1MywgNDQsIDQ1LCAyNDYsIDE4OSwgNDQsIDQ1LCAKLSAgICAyNDcsIDYwLCA0NCwgNDUsIDI0NiwgNzYsIDQ0LCA0NSwgMjQ2LCAyMDMsIDQ0LCA0NSwgMjQ2LCAxMzksIDQ0LCA0NSwgCi0gICAgMjQ3LCAxMCwgNDQsIDQ1LCAyNDYsIDEwNywgNDQsIDQ1LCAyNDYsIDIzNCwgNDQsIDQ1LCAyNDYsIDE3MCwgNDQsIDQ1LCAKLSAgICAyNDcsIDQxLCA0NCwgNDUsIDI0NiwgOTEsIDQ0LCA0NSwgMjQ2LCAyMTgsIDQ0LCA0NSwgMjQ2LCAxNTQsIDQ0LCA0NSwgCi0gICAgMjQ3LCAyNSwgNDQsIDQ1LCAyNDYsIDEyMiwgNDQsIDQ1LCAyNDYsIDI0OSwgNDQsIDQ1LCAyNDYsIDE4NSwgNDQsIDQ1LCAKLSAgICAyNDcsIDU2LCA0NCwgNDUsIDI0NiwgODMsIDQ0LCA0NSwgMjQ2LCAyMTAsIDQ0LCA0NSwgMjQ2LCAxNDYsIDQ0LCA0NSwgCi0gICAgMjQ3LCAxNywgNDQsIDQ1LCAyNDYsIDExNCwgNDQsIDQ1LCAyNDYsIDI0MSwgNDQsIDQ1LCAyNDYsIDE3NywgNDQsIDQ1LCAKLSAgICAyNDcsIDQ4LCA0NCwgNDUsIDI0NiwgOTgsIDQ0LCA0NSwgMjQ2LCAyMjUsIDQ0LCA0NSwgMjQ2LCAxNjEsIDQ0LCA0NSwgCi0gICAgMjQ3LCAzMiwgNDQsIDQ1LCAyNDYsIDEyOSwgNDQsIDQ1LCAyNDcsIDAsIDQ0LCA0NSwgMjQ2LCAxOTIsIDQ0LCA0NSwgMjQ3LCAKLSAgICA2MywgNDQsIDQ1LCAyNDYsIDc0LCA0NCwgNDUsIDI0NiwgMjAxLCA0NCwgNDUsIDI0NiwgMTM3LCA0NCwgNDUsIDI0NywgOCwgCi0gICAgNDQsIDQ1LCAyNDYsIDEwNSwgNDQsIDQ1LCAyNDYsIDIzMiwgNDQsIDQ1LCAyNDYsIDE2OCwgNDQsIDQ1LCAyNDcsIDM5LCAKLSAgICA0NCwgNDUsIDI0NiwgODksIDQ0LCA0NSwgMjQ2LCAyMTYsIDQ0LCA0NSwgMjQ2LCAxNTIsIDQ0LCA0NSwgMjQ3LCAyMywgNDQsIAotICAgIDQ1LCAyNDYsIDEyMCwgNDQsIDQ1LCAyNDYsIDI0NywgNDQsIDQ1LCAyNDYsIDE4MywgNDQsIDQ1LCAyNDcsIDU0LCA0NCwgCi0gICAgNDUsIDI0NiwgODEsIDQ0LCA0NSwgMjQ2LCAyMDgsIDQ0LCA0NSwgMjQ2LCAxNDQsIDQ0LCA0NSwgMjQ3LCAxNSwgNDQsIDQ1LCAKLSAgICAyNDYsIDExMiwgNDQsIDQ1LCAyNDYsIDIzOSwgNDQsIDQ1LCAyNDYsIDE3NSwgNDQsIDQ1LCAyNDcsIDQ2LCA0NCwgNDUsIAotICAgIDI0NiwgOTYsIDQ0LCA0NSwgMjQ2LCAyMjMsIDQ0LCA0NSwgMjQ2LCAxNTksIDQ0LCA0NSwgMjQ3LCAzMCwgNDQsIDQ1LCAKLSAgICAyNDYsIDEyNywgNDQsIDQ1LCAyNDYsIDI1NCwgNDQsIDQ1LCAyNDYsIDE5MCwgNDQsIDQ1LCAyNDcsIDYxLCA0NCwgNDUsIAotICAgIDI0NiwgNzcsIDQ0LCA0NSwgMjQ2LCAyMDQsIDQ0LCA0NSwgMjQ2LCAxNDAsIDQ0LCA0NSwgMjQ3LCAxMSwgNDQsIDQ1LCAKLSAgICAyNDYsIDEwOCwgNDQsIDQ1LCAyNDYsIDIzNSwgNDQsIDQ1LCAyNDYsIDE3MSwgNDQsIDQ1LCAyNDcsIDQyLCA0NCwgNDUsIAotICAgIDI0NiwgOTIsIDQ0LCA0NSwgMjQ2LCAyMTksIDQ0LCA0NSwgMjQ2LCAxNTUsIDQ0LCA0NSwgMjQ3LCAyNiwgNDQsIDQ1LCAKLSAgICAyNDYsIDEyMywgNDQsIDQ1LCAyNDYsIDI1MCwgNDQsIDQ1LCAyNDYsIDE4NiwgNDQsIDQ1LCAyNDcsIDU3LCA0NCwgNDUsIAotICAgIDI0NiwgODQsIDQ0LCA0NSwgMjQ2LCAyMTEsIDQ0LCA0NSwgMjQ2LCAxNDcsIDQ0LCA0NSwgMjQ3LCAxOCwgNDQsIDQ1LCAKLSAgICAyNDYsIDExNSwgNDQsIDQ1LCAyNDYsIDI0MiwgNDQsIDQ1LCAyNDYsIDE3OCwgNDQsIDQ1LCAyNDcsIDQ5LCA0NCwgNDUsIAotICAgIDI0NiwgOTksIDQ0LCA0NSwgMjQ2LCAyMjYsIDQ0LCA0NSwgMjQ2LCAxNjIsIDQ0LCA0NSwgMjQ3LCAzMywgNDQsIDQ1LCAKLSAgICAyNDYsIDEzMCwgNDQsIDQ1LCAyNDcsIDEsIDQ0LCA0NSwgMjQ2LCAxOTMsIDQ0LCA0NSwgMjQ3LCA2NCwgOTUsIDIxNiwgMjQsIAotICAgIDc2LCAyLCA3MSwgOTAsIDk1LCAyMTYsIDI0LCA3NiwgMiwgNTEsIDcxLCA5MCwgMTMyLCA1MSwgNzYsIDIsIDcxLCA5MCwgCi0gICAgOTUsIDUxLCA3NiwgMiwgNzEsIDkwLCA0MiwgNDYsIDUxLCA3NiwgMiwgNzEsIDkwLCA5NSwgMjE2LCAyNCwgNzYsIDI0MywgCi0gICAgMjEzLCAxMzQsIDEzMiwgNTEsIDc2LCAyNDMsIDIxMywgMTM0LCA5NSwgNTEsIDc2LCAyNDMsIDIxMywgMTM0LCAyNDYsIDU4LCAKLSAgICA3NiwgMiwgMTk5LCA5MCwgMjE1LCAxMjQsIDc2LCAyLCAxOTksIDkwLCAyMTUsIDEyNCwgMjE2LCAxNjksIDY4LCAyNDYsIAotICAgIDU4LCAyMTYsIDE2OSwgNjgsIDEzMiwgNTEsIDI0OCwgMTAyLCA2OCwgOTUsIDUxLCAyNDgsIDEwMiwgNjgsIDEzMiwgMjE2LCAKLSAgICAxNjksIDI0OCwgMTAyLCA2OCwgOTUsIDIxNiwgMTY5LCAyNDgsIDEwMiwgNjgsIDk1LCAyMTYsIDI0LCAyMTYsIDE2OSwgCi0gICAgMjQ4LCAxMDIsIDY4LCA5NSwgNzYsIDIsIDI0NiwgNzIsIDIxOSwgNzksIDIxNSwgMTI0LCA3NiwgMjExLCAyMTEsIDEzNCwgCi0gICAgMjQ2LCA1OCwgNzYsIDIxMSwgMjExLCAxMzQsIDk1LCA3NiwgMiwgMjE4LCAyOCwgMiwgNzEsIDkwLCA5NSwgNzYsIDIsIAotICAgIDIxOCwgMjgsIDIsIDUxLCA3MSwgOTAsIDk1LCAyMTYsIDI0LCA3NiwgMiwgMjE4LCAyNywgOTUsIDIxNiwgMjQsIDc2LCAyLCAKLSAgICAyMTgsIDI4LCAyLCA3MSwgOTAsIDk1LCAyMTYsIDI0LCA3NiwgMiwgMjE4LCAyOCwgMiwgNTEsIDcxLCA5MCwgMTMyLCAyNTMsIAotICAgIDE2NiwgOTUsIDI1MywgMTY2LCAxMzIsIDUxLCAyNTMsIDE2NiwgOTUsIDUxLCAyNTMsIDE2NiwgMTMyLCA3NiwgMjExLCAKLSAgICAyMTEsIDgzLCAyNDcsIDIwMCwgOTUsIDc2LCAyMTEsIDIxMSwgODMsIDI0NywgMjAwLCAxMzIsIDc2LCAyNDMsIDIxMywgCi0gICAgMjUyLCA2MCwgMjExLCAyMTEsIDgzLCAyNDcsIDIwMCwgOTUsIDc2LCAyNDMsIDIxMywgMjUyLCA2MCwgMjExLCAyMTEsIDgzLCAKLSAgICAyNDcsIDIwMCwgMjI4LCAxNjcsIDIxMywgMjUwLCAyNCwgMjE5LCAyMTUsIDI0NSwgMTc2LCA2OCwgMjI4LCAxNjcsIDI0NSwgCi0gICAgMTc2LCAyNCwgMjE5LCAyMTUsIDIxMywgMjUwLCA2OCwgMjI4LCAxNjcsIDIxMywgMjUwLCA3NiwgMiwgMTAxLCAyMjgsIAotICAgIDE2NywgMjQ1LCAxNzYsIDc2LCAyLCAxMDEsIDIxOSwgMjE1LCAyNDUsIDE3NiwgNzYsIDIsIDEwMSwgMjE5LCAyMTUsIDIxMywgCi0gICAgMjUwLCA3NiwgMiwgMTAxLCAyMjgsIDE2NywgMjEzLCAyNTAsIDc2LCAyNCwgMjI4LCAxNjcsIDI0NSwgMTc2LCA2OCwgMjI4LCAKLSAgICAxNjcsIDI0NSwgMTc2LCA3NiwgMjQsIDIxOSwgMjE1LCAyNDUsIDE3NiwgNjgsIDIxOSwgMjE1LCAyNDUsIDE3NiwgNzYsIAotICAgIDI0LCAyMTksIDIxNSwgMjEzLCAyNTAsIDY4LCAyMTksIDIxNSwgMjEzLCAyNTAsIDc2LCAyNCwgMjI4LCAxNjcsIDIxMywgCi0gICAgMjUwLCA2OCwgMjIzLCAxMjUsIDI0NywgMjA3LCAyNDksIDY1LCAyNDQsIDE0MywgMjQ3LCAyMDYsIDI0NCwgMTQzLCAyNDcsIAotICAgIDIwNywgMjQ5LCA2NSwgMjIzLCAxMjUsIDI0NywgMjA2LCAyMTksIDIxNSwgMjQ1LCAxNzYsIDc2LCAyNDksIDY1LCAyMjgsIAotICAgIDE2NywgMjQ1LCAxNzYsIDY4LCAyMjgsIDE2NywgMjQ1LCAxNzYsIDc2LCAyNDksIDY1LCAyMTksIDIxNSwgMjQ1LCAxNzYsIAotICAgIDY4LCAyNDQsIDE0MywgMjQ3LCAyMDcsIDI0OSwgNjUsIDIyOCwgMTY3LCAyNDUsIDE3NiwgNjgsIDIyMywgMTI1LCAyNDcsIAotICAgIDIwNywgMjQ5LCA2NSwgMjE5LCAyMTUsIDI0NSwgMTc2LCA2OCwgMjI4LCAxNjcsIDI0NSwgMTc2LCA3NiwgMjQ5LCA2NSwgCi0gICAgMjI4LCAxNjcsIDIxMywgMjUwLCA2OCwgMjI4LCAxNjcsIDIxMywgMjUwLCA3NiwgMjQ5LCA2NSwgMjI4LCAxNjcsIDI0NSwgCi0gICAgMTc2LCA2OCwgMjE0LCAyMCwgNzYsIDIyNSwgMTQxLCAyNDcsIDE0NywgMjIzLCAxNDgsIDc2LCAyMjUsIDE0MSwgOTUsIAotICAgIDIxNywgMTQxLCAyNDksIDMyLCAyMTUsIDEyMywgNzYsIDIyNSwgMTQxLCA5NSwgMjE3LCAxNDEsIDI0OSwgMzIsIDI0NiwgCi0gICAgNTcsIDc2LCAyMjUsIDE0MSwgMjQ2LCA1OCwgMjE3LCAxNDEsIDI0OSwgMzIsIDIzMywgNjEsIDc2LCAyMjUsIDE0MSwgMjQ2LCAKLSAgICA1OCwgMjE3LCAxNDEsIDI0OSwgMzIsIDIyMywgMTM4LCAyMjMsIDE0MSwgMjUzLCAxOTYsIDI0OSwgMTk1LCA2OCwgMjMzLCAKLSAgICA2NCwgMjUzLCAxOTYsIDI1MywgMjU1LCA2OCwgMjE2LCAyMjcsIDI1MywgMTk2LCAyNTMsIDI1NSwgNjgsIDI1MSwgMTAxLCAKLSAgICAyNTMsIDE5NiwgMjUzLCAyNTUsIDY4LCAyMTYsIDIyNywgMjUzLCAxOTYsIDI0OSwgMTk1LCA3NiwgMiwgMjMwLCAyNTAsIAotICAgIDIxNiwgMjI3LCAyNTMsIDE5NiwgMjUzLCAyNTUsIDc2LCAyLCAyMjUsIDE1NiwgMjMyLCAxNjMsIDQ2LCAyMjEsIDcyLCAKLSAgICAyNDksIDE5NSwgNjgsIDIzMiwgMTYzLCA0MiwgMjIxLCA3MiwgMjUzLCAyNTUsIDY4LCAyNTMsIDI1NSwgMjQ5LCAxOTMsIAotICAgIDI0OSwgMjI5LCA2OCwgMjQ5LCAxOTUsIDI0OSwgMTkzLCAyNDksIDIyOSwgNjgsIDk1LCA3NiwgNzgsIDIyMCwgMTc1LCAKLSAgICAxMzIsIDY4LCAxMzIsIDc2LCA3OCwgMjIwLCAxNzUsIDk1LCA2OCwgMjIwLCAxNzUsIDk1LCA3NiwgNzgsIDEzMiwgNjgsIAotICAgIDk1LCA3NiwgMiwgOTQsIDU1LCAxMzIsIDc2LCAyLCA5NCwgNTUsIDk1LCA3NiwgMjE3LCA5MywgMjEzLCAxNjYsIDQyLCA0NiwgCi0gICAgNzYsIDIxNywgOTMsIDMsIDI0OSwgMjI4LCAyMTUsIDEyNCwgMjE2LCAyNCwgNzYsIDI0MywgMjEzLCAzLCAyNDksIDIyOCwgCi0gICAgNDIsIDIwNiwgMTE0LCA0NiwgMjA2LCAxMTksIDI0MSwgMjM3LCA0MiwgMjA2LCAxMTksIDQ2LCAyMDYsIDExNCwgMjQxLCAKLSAgICAyMzcsIDExNCwgMjA2LCA0NiwgMTE5LCAyMDYsIDQyLCAyNDEsIDIzNywgMTE0LCAyMDYsIDQyLCAxMTksIDIwNiwgNDYsIAotICAgIDI0MSwgMjM3LCA0MiwgMjA2LCAxMTQsIDQ2LCAyMDYsIDExNCwgMjQxLCAyMzcsIDExNCwgMjA2LCA0NiwgMTE5LCAyMDYsIAotICAgIDQ2LCAyNDEsIDIzNywgNDIsIDIwNiwgMTE5LCA0NiwgMjA2LCAxMTksIDI0MSwgMjM3LCAxMTQsIDIwNiwgNDIsIDExOSwgCi0gICAgMjA2LCA0MiwgMjQxLCAyMzcsIDEzMiwgMjQxLCAyMzgsIDIsIDIwNiwgMTE0LCAyMTEsIDIxMSwgMTM0LCA5NSwgMjQxLCAKLSAgICAyMzgsIDIsIDIwNiwgMTE0LCAyMTEsIDIxMSwgMTM0LCAyMTUsIDEyNCwgMjQxLCAyMzgsIDIsIDIwNiwgNDYsIDIxMSwgCi0gICAgMjExLCAxMzQsIDI0NiwgNTgsIDI0MSwgMjM4LCAyLCAyMDYsIDQ2LCAyMTEsIDIxMSwgMTM0LCAxMzIsIDI0MSwgMjM4LCAyLCAKLSAgICAyMDYsIDExOSwgMjExLCAyMTEsIDEzNCwgOTUsIDI0MSwgMjM4LCAyLCAyMDYsIDExOSwgMjExLCAyMTEsIDEzNCwgMjE1LCAKLSAgICAxMjQsIDI0MSwgMjM4LCAyLCAyMDYsIDQyLCAyMTEsIDIxMSwgMTM0LCAyNDYsIDU4LCAyNDEsIDIzOCwgMiwgMjA2LCA0MiwgCi0gICAgMjExLCAyMTEsIDEzNCwgMTMyLCAyNDEsIDIzOCwgMiwgMjA2LCAxMTQsIDI0MywgMjEzLCAxMzQsIDk1LCAyNDEsIDIzOCwgCi0gICAgMiwgMjA2LCAxMTQsIDI0MywgMjEzLCAxMzQsIDIxNSwgMTI0LCAyNDEsIDIzOCwgMiwgMjA2LCA0NiwgMjQzLCAyMTMsIAotICAgIDEzNCwgMjQ2LCA1OCwgMjQxLCAyMzgsIDIsIDIwNiwgNDYsIDI0MywgMjEzLCAxMzQsIDEzMiwgMjQxLCAyMzgsIDIsIDIwNiwgCi0gICAgMTE5LCAyNDMsIDIxMywgMTM0LCA5NSwgMjQxLCAyMzgsIDIsIDIwNiwgMTE5LCAyNDMsIDIxMywgMTM0LCAyMTUsIDEyNCwgCi0gICAgMjQxLCAyMzgsIDIsIDIwNiwgNDIsIDI0MywgMjEzLCAxMzQsIDI0NiwgNTgsIDI0MSwgMjM4LCAyLCAyMDYsIDQyLCAyNDMsIAotICAgIDIxMywgMTM0LCAxMzIsIDI0MSwgMjM4LCAyLCAyMDYsIDExNCwgNzgsIDEzMiwgMjQxLCAyMzgsIDIsIDIwNiwgMjQ2LCA2MCwgCi0gICAgMjE1LCAxMjQsIDI0MSwgMjM4LCAyLCAyMDYsIDQyLCAyNTEsIDIwNywgMjE1LCAxMjQsIDI0MSwgMjM4LCAyLCAyMDYsIAotICAgIDIyMywgMTQ4LCA5NSwgMjQxLCAyMzgsIDIsIDIwNiwgMTE0LCA3OCwgOTUsIDI0MSwgMjM4LCAyLCAyMDYsIDI0NiwgNjAsIAotICAgIDI0NiwgNTgsIDI0MSwgMjM4LCAyLCAyMDYsIDQyLCAyNTEsIDIwNywgMjQ2LCA1OCwgMjQxLCAyMzgsIDIsIDIwNiwgMjIzLCAKLSAgICAxNDgsIDEzMiwgMjQxLCAyMzgsIDIsIDIwNiwgMTE0LCA3OCwgOTUsIDI0MSwgMjM4LCAyLCAyMDYsIDIxNSwgMTM0LCAxMzIsIAotICAgIDI0MSwgMjM4LCAyLCAyMDYsIDExOSwgNzgsIDk1LCAyNDEsIDIzOCwgMiwgMjA2LCAyNDYsIDYwLCA5NSwgMjQxLCAyMzgsIAotICAgIDIsIDIwNiwgMTE0LCA3OCwgMTMyLCAyNDEsIDIzOCwgMiwgMjA2LCAyMTUsIDEzNCwgOTUsIDI0MSwgMjM4LCAyLCAyMDYsIAotICAgIDExOSwgNzgsIDEzMiwgMjQxLCAyMzgsIDIsIDIwNiwgMjQ2LCA2MCwgMTMyLCAyNDEsIDIzOCwgMiwgMjA2LCAxMTQsIDc4LCAKLSAgICAxODQsIDI0OCwgMTAxLCAxMzIsIDI0MSwgMjM4LCAyLCAyMDYsIDExOSwgMjUxLCAyMjAsIDE4NCwgMjQ4LCAxMDEsIDk1LCAKLSAgICAyNDEsIDIzOCwgMiwgMjA2LCAxMTQsIDc4LCAxODQsIDI0OCwgMTAxLCA5NSwgMjQxLCAyMzgsIDIsIDIwNiwgMTE5LCAyNTEsIAotICAgIDIyMCwgMTg0LCAyNDgsIDEwMSwgMjE1LCAxMjQsIDI0MSwgMjM4LCAyLCAyMDYsIDQyLCAyNTEsIDIwNywgMjQ2LCA1OCwgCi0gICAgMjQxLCAyMzgsIDIsIDIwNiwgMjIzLCAxNDgsIDI0NiwgNTgsIDI0MSwgMjM4LCAyLCAyMDYsIDQyLCAyNTEsIDIwNywgMjE1LCAKLSAgICAxMjQsIDI0MSwgMjM4LCAyLCAyMDYsIDIyMywgMTQ4LCA0NiwgNTEsIDc2LCAyLCAyMjMsIDg1LCAyNDEsIDIxOSwgMjQ1LCAKLSAgICA2MSwgNSwgNzgsIDk1LCA2OCwgMjE3LCA0MywgMjI3LCAzNCwgNzgsIDk1LCA2OCwgMTMyLCA3NiwgNzgsIDIxNywgNDMsIAotICAgIDIyNywgMzMsIDk1LCA3NiwgNzgsIDIxNywgNDMsIDIyNywgMzMsIDk1LCA3NiwgNzgsIDI1NCwgNTcsIDEyMywgMTA4LCAKLSAgICAyMzMsIDM5LCA3OCwgMTMyLCA2OCwgMTMyLCA3NiwgMjE3LCA5MywgMjMzLCAzOCwgMjQyLCAxMDcsIDc4LCA5NSwgNjgsIAotICAgIDIxOSwgOSwgNzgsIDk1LCA2OCwgMTMyLCA3NiwgMjE3LCA5MywgMjE5LCA4LCAyMTgsIDIyMiwgNzgsIDEzMiwgNjgsIDQyLCAKLSAgICAyNDQsIDYwLCAyMTgsIDI3LCA0NiwgMjQ0LCA2MCwgMjE4LCAyNywgMTE0LCAyNDQsIDYwLCAyMTgsIDI3LCAxMTksIDI0NCwgCi0gICAgNjAsIDIxOCwgMjcsIDIxNiwgMTY5LCA3MSwgMjUyLCA2MCwgMjQ4LCAxMSwgMjEyLCAxNTMsIDE3NCwgMjE5LCAxNzQsIAotICAgIDIxMiwgMTUzLCAxNzQsIDIxNiwgMTUsIDI0OSwgMTY0LCA0MiwgNjcsIDI0OSwgNDAsIDEyNSwgNDYsIDY3LCAyNDksIDQwLCAKLSAgICAxMjUsIDQyLCA2NywgMjI2LCAxMzEsIDQ2LCA2NywgMjI2LCAxMzEsIDIxMiwgMTUzLCAxNzQsIDQyLCAyMzYsIDEwLCAxMjUsIAotICAgIDIxMiwgMTUzLCAxNzQsIDQ2LCAyMzYsIDEwLCAxMjUsIDIxMiwgMTUzLCAxNzQsIDQyLCAyNTEsIDE2NSwgMTI1LCAyMTIsIAotICAgIDE1MywgMTc0LCA0NiwgMjUxLCAxNjUsIDEyNSwgNDIsIDQxLCAyNTEsIDg1LCAyLCAyMTUsIDE1MywgNDYsIDQxLCAyNTEsIAotICAgIDg1LCAyLCAyMTUsIDE1MywgNDIsIDQxLCAyNTEsIDg1LCAyLCAyMTcsIDY5LCAyMzUsIDI1MiwgMjE2LCAyMjcsIDI0OSwgCi0gICAgOTksIDQ2LCA0MSwgMjUxLCA4NSwgMiwgMjE3LCA2OSwgMjM1LCAyNTIsIDI1MSwgMTAxLCAyNDksIDk5LCA0MiwgNDEsIAotICAgIDI1MSwgODUsIDIsIDIxNywgNjksIDIzNSwgMjUyLCAyNTEsIDEwMSwgMjQ5LCA5OSwgNDYsIDQxLCAyNTEsIDg1LCAyLCAKLSAgICAyMTcsIDY5LCAyMzUsIDI1MiwgMjE2LCAyMjcsIDI0OSwgOTksIDQyLCAyNTQsIDE5LCAyNTEsIDg1LCAyLCAyNDcsIDc0LCAKLSAgICA0NiwgMjU0LCAxOSwgMjUxLCA4NSwgMiwgMjQ3LCA3NCwgNDIsIDI1MywgMTk2LCAyMzMsIDM5LCAxMjUsIDQ2LCAyNTMsIAotICAgIDE5NiwgMjQyLCAxMDcsIDEyNSwgNTEsIDQyLCAyNTMsIDE5NiwgMjQyLCAxMDcsIDEyNSwgNTEsIDQ2LCAyNTMsIDE5NiwgCi0gICAgMjMzLCAzOSwgMTI1LCA0MiwgODMsIDIxNiwgMjE5LCAyMjAsIDIzMywgMTI1LCA0NiwgODMsIDIxNiwgMjE5LCAyMjAsIAotICAgIDIzMywgMTI1LCAyNDYsIDcyLCAyNDQsIDEwNCwgNzEsIDIxMiwgMjgsIDIzMiwgMjQyLCAyMzEsIDE1MywgMjU0LCAxOSwgCi0gICAgMjI3LCAzNSwgMjMzLCA3MCwgNDYsIDI1NCwgMTksIDIxNCwgMjQ0LCAyLCAyMTksIDE2NiwgMjMxLCAxNTMsIDQ2LCAyNTQsIAotICAgIDE5LCAyLCAyNDcsIDc0LCAyNTQsIDE5LCAyLCAyMjMsIDQsIDIzNSwgMjEyLCAyNTQsIDE2NCwgMjU0LCAxOCwgMjE5LCAKLSAgICAxODcsIDI1NCwgMTksIDIyNywgMzUsIDIzMywgNzAsIDIxOSwgMTg3LCAyNTQsIDE5LCAyMjcsIDM1LCAyMTUsIDEzNCwgCi0gICAgMjE2LCA1OCwgMjU0LCAxOCwgMjIzLCAyMDIsIDI1NCwgMTgsIDI1NCwgMTksIDIsIDIxNSwgMTUzLCAyMjMsIDIwMiwgMjU0LCAKLSAgICAxOSwgMiwgMjE1LCAxNTMsIDIyNywgMTEyLCAyNTQsIDE5LCAyMjcsIDM1LCAyMTUsIDEzNCwgMjI3LCAxMTIsIDI1NCwgMTksIAotICAgIDIyNywgMzUsIDI0NiwgNjAsIDIzMSwgMTUzLCAyNTQsIDE5LCAyLCAyMjcsIDQwLCAyNTMsIDE3NiwgMjQ1LCA5OCwgMjM1LCAKLSAgICAyNTIsIDc2LCAyMjUsIDE0MSwgMTE0LCAyNCwgMjIzLCAxNDgsIDIzMSwgMTUzLCAyNTQsIDE5LCAyLCAyMjcsIDQwLCAyNTMsIAotICAgIDE3NiwgMjQ1LCA5OCwgMjM1LCAyNTIsIDc2LCAyMjUsIDE0MSwgMTE0LCAyNCwgMjMzLCA3MCwgMjMxLCAxNTMsIDI1NCwgCi0gICAgMTksIDIsIDIyNywgNDAsIDI1MywgMTc2LCAyNDUsIDk4LCAyMzUsIDI1MiwgNzYsIDIyNSwgMTQxLCAxMTksIDI0LCAyMjMsIAotICAgIDE0OCwgMjMxLCAxNTMsIDI1NCwgMTksIDIsIDIyNywgNDAsIDI1MywgMTc2LCAyNDUsIDk4LCAyMzUsIDI1MiwgNzYsIDIyNSwgCi0gICAgMTQxLCAxMTksIDI0LCAyMzMsIDcwLCAyMzEsIDE1MywgMjU0LCAxOSwgMiwgMjI3LCA0MCwgMjUzLCAxNzYsIDI0NSwgOTgsIAotICAgIDIzNSwgMjUyLCA3NiwgMjI1LCAxNDEsIDQ2LCAyNCwgMjE1LCAxMzQsIDIzMSwgMTUzLCAyNTQsIDE5LCAyLCAyMjcsIDQwLCAKLSAgICAyNTMsIDE3NiwgMjQ1LCA5OCwgMjM1LCAyNTIsIDc2LCAyMjUsIDE0MSwgNDIsIDI0LCAyMTUsIDEzNCwgMjMxLCAxNTMsIAotICAgIDI1NCwgMTksIDIsIDIyNywgNDAsIDI1MywgMTc2LCAyNDUsIDk4LCAyMzUsIDI1MiwgNzYsIDIyNSwgMTQxLCA0NiwgMjQsIAotICAgIDI0NiwgNjAsIDIzMSwgMTUzLCAyNTQsIDE5LCAyLCAyMjcsIDQwLCAyNTMsIDE3NiwgMjQ1LCA5OCwgMjM1LCAyNTIsIDc2LCAKLSAgICAyMjUsIDE0MSwgNDIsIDI0LCAyNDYsIDYwLCAyMjMsIDIwMiwgMjQ1LCAxMTAsIDIyMSwgNDgsIDI0NSwgMTEwLCAyMjEsIAotICAgIDQ5LCAyLCAyMjYsIDI0NywgMjQ1LCAxMTAsIDIyMSwgNDksIDIsIDMsIDI0OSwgMjI5LCA0OSwgMjQ1LCAxMTAsIDIyMSwgCi0gICAgNDksIDIsIDQ2LCA3NiwgNDksIDI0NSwgMTEwLCAyMjEsIDQ5LCAyLCA0MiwgNzYsIDQ5LCAyNDksIDIyOSwgMiwgMTk5LCAKLSAgICAxMzQsIDM2LCA3MSwgMTM0LCAzNiwgMjI2LCAxMzUsIDM2LCAyMjMsIDIwMywgMjE5LCAyMzEsIDM2LCAyMjYsIDQ3LCAyNDksIAotICAgIDIyOSwgMjQ3LCAxMjUsIDI1MSwgNywgMTk5LCAyNTIsIDYwLCAyNCwgMjE2LCAyMjcsIDE1MSwgMjQ3LCAxMjUsIDI1MSwgNywgCi0gICAgNzEsIDEzNCwgMjQ5LCAyMjksIDIsIDIxOCwgMjI0LCAyMTMsIDE2NiwgMzYsIDI1MywgMjU0LCAyNDcsIDEyMSwgNTIsIAotICAgIDExNCwgNzYsIDIxNywgOTMsIDI0OSwgMjI4LCAzNiwgNjcsIDI1MSwgNDIsIDM2LCAyNTEsIDQyLCAzNiwgMjMzLCAzOCwgCi0gICAgMzYsIDI0MiwgMTA2LCAyNDksIDIyOSwgMiwgMywgMjQ5LCAyMjksIDIxMSwgMjExLCAyMTcsIDE0OSwgMjIzLCAxNDgsIAotICAgIDI0OSwgMjI5LCAyLCAxMTcsIDE5OSwgMjE5LCAzMywgMjExLCAyMTEsIDIxNywgMTQ5LCAyMjMsIDE0OCwgOTEsIDIyMywgCi0gICAgMTI1LCAyNDcsIDIwNywgMjIwLCAyMywgOTEsIDI0NCwgMTQzLCAyNDcsIDIwNywgMjIwLCAyMywgOTEsIDI1MywgMTMyLCAKLSAgICA5MSwgMywgMjQ5LCAyMjgsIDkxLCAyMTksIDE2NiwgMTE3LCAyMzUsIDY4LCAyMTksIDE2NCwgMjE2LCAxODQsIDIsIDYyLCAKLSAgICA0OSwgMjE2LCAxODQsIDIsIDIxNSwgMTUzLCAyMjMsIDQsIDIzNSwgMjUyLCAyMTYsIDE4MywgMjE2LCAxODQsIDIsIDIyMSwgCi0gICAgNTUsIDI1MywgMTIzLCAyNTEsIDEwMCwgNDYsIDIxNiwgMTg0LCA3OCwgNDIsIDIxNiwgMTgzLCA0MiwgMjE2LCAxODQsIAotICAgIDI1MSwgMjA3LCA3MSwgMTM0LCA3MSwgMjUyLCA2MCwgMjUxLCAyMDcsIDQ2LCAyMTYsIDE4MywgMjUxLCA5MSwgMiwgNDIsIAotICAgIDE1MSwgMjUxLCAxNDQsIDI1MSwgOTEsIDIsIDQ2LCAxNTEsIDI1MSwgMTQ0LCA4MywgMjUxLCA5MCwgMjksIDIsIDQyLCAKLSAgICAxNTEsIDI1MSwgMTQ0LCAyOSwgMiwgNDYsIDE1MSwgMjUxLCAxNDQsIDY3LCAyNDAsIDIyMywgODMsIDI0MCwgMjIzLCA0MiwgCi0gICAgMjEzLCAyMjksIDI0NCwgMTA0LCA0NiwgMjEzLCAyMjksIDI0NCwgMTA0LCA0MiwgNTEsIDIxMywgMjI5LCAyNDQsIDEwNCwgCi0gICAgNDYsIDUxLCAyMTMsIDIyOSwgMjQ0LCAxMDQsIDIzNSwgMjQ0LCAyMzUsIDIzMSwgMjE3LCA2NiwgMTEwLCAyMzUsIDIzMSwgCi0gICAgMjM1LCAyMzIsIDIyOSwgMTgzLCAyLCA3MSwgMTM0LCAyNDYsIDY2LCAyMzAsIDE1NywgNDEsIDIsIDI0OSwgMTIwLCAyMjYsIAotICAgIDI1MSwgMjM1LCAyNDIsIDI1MywgMTUyLCAyMjAsIDE0NCwgMjI1LCA2MywgMjQ1LCA2MSwgNSwgMjQsIDIyMCwgMjUsIDIyNiwgCi0gICAgMTM1LCAyNDUsIDYxLCA1LCAyNCwgMjIwLCAyNSwgMjI2LCAxMzYsIDIsIDIxNywgNDMsIDQ5LCAyNDAsIDk3LCAyMTEsIAotICAgIDIxMSwgMjQsIDIyMCwgMjUsIDIyNiwgMTM1LCAyNDIsIDE1OSwgMjE5LCA5NCwgMjE3LCAxMzgsIDI0NiwgNTksIDIxNiwgCi0gICAgMTg0LCAyLCA0MiwgMTUxLCAyNTEsIDE0NCwgMjQ2LCA1OSwgMjE2LCAxODQsIDIsIDQ2LCAxNTEsIDI1MSwgMTQ0LCA4MywgCi0gICAgMjQ3LCAyMDEsIDIsIDExOSwgNjgsIDgzLCAyMzIsIDE1OSwgNjcsIDI0OSwgMjI5LCAyLCAxMTksIDY4LCA4MywgMjQ5LCAKLSAgICAyMjksIDIsIDExOSwgNjgsIDI0NSwgNDgsIDY3LCAyMTksIDE2NiwgMjQ1LCA0OCwgODMsIDIxOSwgMTY2LCAyNDUsIDQ4LCAKLSAgICA2NywgMjQ3LCAyMDAsIDI0NSwgNDgsIDgzLCAyNDcsIDIwMCwgMjQ1LCA0OCwgNjcsIDI0OSwgMjI4LCAyNDUsIDQ4LCA4MywgCi0gICAgMjQ5LCAyMjgsIDIyMywgNDMsIDIyMywgMjAzLCAyMTksIDIzMiwgMjI3LCAzMywgMjE5LCAyMzIsIDIsIDIyNiwgMjQ3LCAKLSAgICAyMjMsIDIwMywgMjE5LCAyMzIsIDIsIDE5OSwgOTAsIDI1MSwgMTcyLCAyMTksIDIzMSwgMjUxLCAxNzIsIDIyMywgMjAzLCAKLSAgICAyMTksIDIzMSwgNTEsIDIyNSwgMTU2LCAyMTYsIDE2OSwgMjI1LCAxNTYsIDIzMywgNjYsIDI0OSwgMzMsIDI1NCwgMTksIAotICAgIDEyNSwgMjIzLCAxNDQsIDI0OSwgMzMsIDI1NCwgMTksIDEyNSwgMjE3LCAzMSwgMjMwLCAyNDgsIDIzMCwgOTcsIDM2LCA2MiwgCi0gICAgMjI3LCAzMywgMjMwLCA5NywgMzYsIDk0LCAyMjcsIDMzLCAyMzAsIDk3LCAzNiwgMjksIDIyNywgMzMsIDIzMCwgOTcsIAotICAgIDIxNSwgMTQ3LCAyMjcsIDM0LCAyLCAyNDcsIDc0LCAyMzAsIDk3LCAyMTUsIDE0NywgMjI3LCAzNCwgMiwgMjI1LCAxNTYsIAotICAgIDIzMCwgOTcsIDQxLCAyMzUsIDE5NiwgMjI3LCAzMywgMjMwLCA5NywgNDEsIDIxNSwgMTQ3LCAyMjcsIDMzLCAxMTcsIDIzMiwgCi0gICAgMTk5LCAyNCwgMjI3LCAzMywgMTE3LCAyMzIsIDE5OSwgMTY3LCAyMjcsIDMzLCAyMzAsIDk3LCAyOSwgMjI3LCAzMywgMjMwLCAKLSAgICAyMjQsIDExNywgMjE4LCAyNDQsIDIxOCwgMjQyLCAyLCAyMzUsIDIwOCwgMjI0LCAxNjksIDIzNSwgMjA5LCAyMjcsIDMzLCAKLSAgICAyNDQsIDY4LCAyMjYsIDEyNywgMjM1LCAyMDgsIDIzNSwgMjA5LCAyLCA1MSwgOTAsIDIzNSwgMjA5LCAyNTMsIDg5LCAyLCAKLSAgICAyMjAsIDIzLCAyNDksIDIyNSwgMjQzLCAxOTcsIDI1MywgMjU1LCAyMzUsIDIwNiwgMjMyLCAyNDMsIDIzNSwgMjA3LCAyLCAKLSAgICAyMjQsIDgsIDIyNiwgMTEwLCAyNTMsIDE3MywgMjI1LCAxMzUsIDIzMiwgMjQzLCAyMzUsIDIwNywgMiwgMjIxLCA3MiwgCi0gICAgMjI2LCAxMTAsIDI1MywgMTczLCAyMjUsIDEzNSwgMjMyLCAyNDMsIDIzNSwgMjA3LCAyMjgsIDE2MywgMjM1LCAyNDYsIAotICAgIDIxNywgMTQ5LCAyMjUsIDEzNSwgMjM1LCAyMDksIDI1MywgMTczLCAxMTgsIDIyNSwgMTQ1LCAyMjcsIDMzLCAyMjQsIDE2MywgCi0gICAgMjM1LCAyMDksIDIyNywgMzMsIDIzNSwgMjA5LCAyLCAxMzIsIDc2LCAyLCAxMDEsIDIzNSwgMjA5LCAyLCAyOSwgNTIsIAotICAgIDIzNSwgMjA5LCAyLCAyMzUsIDE5NSwgMjM1LCAyMDksIDIsIDIxNSwgMTQ2LCAyMzUsIDIwOSwgMiwgMjI2LCAyNDcsIDIzNSwgCi0gICAgMjA5LCAyLCAyMTUsIDE1MywgMjM1LCA2OSwgMjMzLCAxMDgsIDQyLCAyMTYsIDE4NCwgMjI3LCAzMywgMjEyLCAxNTMsIAotICAgIDE3NCwgMjIyLCAxMTksIDI0OSwgMTQ4LCAyMTIsIDE1MywgMTc0LCAyMjIsIDExOSwgMjI1LCAxODgsIDIxMiwgMTUzLCAKLSAgICAxNzQsIDIyMiwgMTE5LCAyMjUsIDYwLCA5NCwgNSwgMiwgMywgMjQ5LCAyMjksIDQ5LCA5NCwgNSwgMiwgMjQ5LCAyMjQsIAotICAgIDI1NCwgMTc1LCA0OSwgOTQsIDUsIDIsIDIxNywgNDMsIDQ5LCA5NCwgNSwgMiwgNjIsIDU1LCA5NCwgNSwgMiwgMjE3LCA0MywgCi0gICAgNTUsIDk0LCA1LCAyLCAyMTksIDEwLCAxMDksIDk0LCA1LCAyLCA4MywgMjE2LCAxODMsIDIzMCwgMjUxLCA1LCAyLCAyNDksIAotICAgIDE1OCwgNDksIDIzMCwgMjUxLCA1LCAyLCA2MiwgNTUsIDIzMCwgMjUxLCA1LCAyLCAyNDQsIDE0MywgMjQ3LCA3MiwgMjMwLCAKLSAgICAyNTEsIDUsIDIsIDIyMywgMTI1LCAyNDcsIDcyLCA5NCwgNSwgMjM1LCAyNTIsIDQyLCAxNTEsIDI0OSwgMjI4LCA5NCwgNSwgCi0gICAgMjM1LCAyNTIsIDQ2LCAxNTEsIDI0OSwgMjI4LCAyMTQsIDIzMSwgMTY3LCAyNDksIDcxLCAyMjUsIDYzLCAyMzAsIDE1NCwgCi0gICAgNSwgMiwgNjIsIDQ5LCAyMzAsIDE1NCwgNSwgMiwgMjE1LCAxNTMsIDIyMSwgNjksIDIyNSwgNjQsIDIsIDI1MSwgMTAxLCAKLSAgICAyNDksIDE5MiwgMjIwLCA1LCAyMjUsIDYzLCAyMzAsIDE1NCwgNSwgMjM1LCAyNTIsIDQyLCAxNTEsIDI0OSwgMjI4LCAyMzAsIAotICAgIDE1NCwgNSwgMjM1LCAyNTIsIDQ2LCAxNTEsIDI0OSwgMjI4LCAzNiwgMjMwLCAxNTQsIDUsIDIsIDI0OSwgMjI0LCAyNTQsIAotICAgIDE3NCwgMjMwLCAxNTQsIDUsIDIzNSwgMjUyLCA1MSwgMjQ5LCAyMjgsIDM2LCAyNDcsIDEyMSwgNTIsIDk0LCA1LCAyMzUsIAotICAgIDI1MiwgMjE2LCAxODMsIDIzMCwgMjUxLCA1LCAyMzUsIDI1MiwgMjE2LCAxODMsIDIzMCwgMTU0LCA1LCAyMzUsIDI1MiwgCi0gICAgMjE2LCAxODMsIDIzNSwgMjAzLCAyMjUsIDYzLCAyMjMsIDEzOSwgMjM1LCAyMDMsIDIyNSwgNjMsIDIxMiwgMTUzLCAxNzQsIAotICAgIDIyMywgMjQwLCAyNDksIDE0OCwgMjU0LCA0MywgMTY3LCAyNDksIDEwNCwgMjM1LCAxOTYsIDIsIDI0NywgNzQsIDIxNSwgCi0gICAgMTQ3LCAyLCAyMzAsIDI1MSwgNTIsIDIxNSwgMTQ3LCAyLCAyMjYsIDI0NywgMjM1LCAxOTYsIDIsIDIyNiwgMjQ3LCAyMzUsIAotICAgIDE5NiwgMiwgMjMyLCAxOTksIDI1NCwgMjcsIDIxNSwgMTQ3LCAyLCAyMzIsIDE5OSwgMjI3LCAyNCwgMjE1LCAxNDcsIDc4LCAKLSAgICAyMzUsIDE5NSwgMjM1LCAxOTYsIDc4LCAyMTUsIDE0NiwgMjE1LCAxNDcsIDc4LCAyNTIsIDYwLCA3OCwgMjM1LCAxOTUsIAotICAgIDIzNSwgMTk2LCA3OCwgMjUyLCA2MCwgNzgsIDIxNSwgMTQ2LCAyMTUsIDE0NywgMjUxLCAyMDcsIDI0LCAyMzUsIDY4LCAyLCAKLSAgICAyMTUsIDE0NiwgMjM1LCAxOTYsIDI1MSwgMjA3LCAyNCwgMjM1LCA2OCwgMiwgMjM1LCAxOTUsIDI0OSwgMTkzLCAyMTUsIAotICAgIDE0NywgMiwgMjIxLCA1NCwgMjQ5LCAxOTMsIDIzNSwgMTk2LCAyLCAyMjEsIDU0LCA1MSwgNDEsIDIzNSwgMTk1LCA1MSwgCi0gICAgNDEsIDIxNSwgMTQ2LCAyNDksIDE5MywgMjE1LCAxNDcsIDIsIDIyMSwgNTUsIDI0LCAyMjAsIDUsIDIyNSwgNjMsIDIzMiwgCi0gICAgMTk5LCAyNCwgMiwgNjIsIDQ5LCAyMzIsIDE5OSwgMTY3LCAyLCA2MiwgNDksIDUxLCAyMzIsIDE5OSwgMjU0LCAyNywgNTEsIAotICAgIDIzMiwgMTk5LCAyMjcsIDI0LCAxMTcsIDIzNSwgMTk3LCAyMzIsIDE5OSwgMjU0LCAyNywgMTE3LCAyMzUsIDE5NywgMjMyLCAKLSAgICAxOTksIDIyNywgMjQsIDIyMCwgMTMsIDIzMywgMTA4LCAyMjcsIDI0LCAyMjAsIDEzLCAyMzMsIDEwOCwgMjU0LCAyNywgCi0gICAgMjMyLCAxOTksIDE2NywgMjI2LCAyNDUsIDIzMiwgMTk5LCAyNTQsIDI3LCAyMzIsIDE5OSwgMjQsIDIsIDIzMSwgMzcsIAotICAgIDIxOSwgNzksIDIzMiwgMTk5LCAxNjcsIDIsIDIzMSwgMzcsIDIxOSwgNzksIDIzMiwgMTk5LCAyNCwgMiwgMTk5LCAyNDgsIAotICAgIDEwMSwgMjMyLCAxOTksIDE2NywgMiwgMTk5LCAyNDgsIDEwMSwgMjMyLCAxOTksIDI0LCAyLCA1MSwgMjI2LCAyNDcsIDIzMiwgCi0gICAgMTk5LCAyNCwgMiwgMjE1LCAxNTMsIDIzMiwgMTk5LCAyNCwgMiwgNTEsIDIxNSwgMTUzLCAzLCAyMTQsIDIyOCwgMiwgMjE1LCAKLSAgICAxNTMsIDIzMiwgMTk5LCAxNjcsIDIsIDUxLCAyMjYsIDI0NywgMjMyLCAxOTksIDE2NywgMiwgNTEsIDIxNSwgMTUzLCAyMTIsIAotICAgIDE1MywgMTc0LCAyNDcsIDgzLCAyNTMsIDI0NiwgMjEyLCAxNTMsIDE3NCwgMjI0LCA0MCwgMjUzLCAyNDYsIDI0NSwgNjEsIAotICAgIDUsIDIsIDYyLCA1NSwgMjQwLCA5NywgMiwgNjIsIDQ5LCAyMTYsIDE2OSwgMTk5LCAyNTIsIDYwLCAyLCA1MSwgNzEsIDkwLCAKLSAgICAyMTYsIDE2OSwgMTk5LCAyNTIsIDYwLCAyLCAyMTYsIDE2OSwgNzEsIDkwLCAyMTcsIDQzLCAyMjcsIDM0LCAyLCA2MiwgNDksIAotICAgIDIxNywgNDMsIDIyNywgMzQsIDIsIDIyMywgMTI1LCAyNDcsIDcyLCAyMjAsIDg4LCAyMzAsIDI1MSwgMjIwLCA4NywgMjQ5LCAKLSAgICAxMzksIDIsIDYyLCA0OSwgMjQ1LCA2MSwgMiwgMjUzLCAxMzIsIDI1NCwgNTcsIDEyMywgMjExLCAyMTEsIDIsIDI0OSwgCi0gICAgMjI0LCAyNTQsIDE3NCwgMjUzLCAyMTgsIDEyMywgMTY3LCAxMjMsIDEwOCwgMjQ1LCA2MSwgNSwgNzgsIDk0LCA1MiwgOTQsIAotICAgIDUsIDc4LCAyNDUsIDYxLCA1MiwgMjQ1LCA2MSwgNSwgNzgsIDIxNywgNDMsIDIyNywgMzMsIDUxLCAyNDksIDE2NSwgMjQ1LCAKLSAgICA2MiwgMTE3LCAyNDksIDEzNCwgMjQ1LCA2MSwgMjIwLCAxMDIsIDEzMywgMjQ5LCAxMzQsIDI0NSwgNjEsIDIyMCwgMTAyLCAKLSAgICAyNDUsIDYxLCA1LCAyLCAxMTcsIDE3NiwgNzgsIDI0LCAxMTcsIDE3NiwgNTUsIDI0NSwgNTcsIDIsIDI0MywgMjM3LCAxNzYsIAotICAgIDQ5LCAyMzMsIDM5LCAyLCAyNDksIDIyOSwgMjM1LCAyMTIsIDI0MiwgMTA3LCAyLCAyNDksIDIyOSwgMjM1LCAyMTIsIDIzMywgCi0gICAgMzksIDIsIDIyNCwgMTU4LCAxNTIsIDQ5LCAyNDIsIDEwNywgMiwgMjI0LCAxNTgsIDE1MiwgNDksIDIzMywgMzksIDE2NywgCi0gICAgMjIwLCAyNSwgMTIzLCAxMDgsIDI0MiwgMTA3LCAxNjcsIDIyMCwgMjUsIDEyMywgMTA4LCAyMzMsIDM5LCAxNjcsIDIyMCwgCi0gICAgMjUsIDEyMywgMjExLCAyMTEsIDIsIDYyLCAyMzUsIDIxMiwgMjQyLCAxMDcsIDE2NywgMjIwLCAyNSwgMTIzLCAyMTEsIAotICAgIDIxMSwgMiwgNjIsIDIzNSwgMjEyLCAyMzMsIDM5LCAxNjcsIDIyMCwgMjUsIDEyMywgMjExLCAyMTEsIDIsIDYyLCA0OSwgCi0gICAgMjQyLCAxMDcsIDE2NywgMjIwLCAyNSwgMTIzLCAyMTEsIDIxMSwgMiwgNjIsIDQ5LCAyMzMsIDM5LCAxNjcsIDIyMCwgMjUsIAotICAgIDEyMywgMjExLCAyMTEsIDIsIDYyLCA3OCwgMjIzLCAxNDgsIDI0MiwgMTA3LCAxNjcsIDIyMCwgMjUsIDEyMywgMjExLCAKLSAgICAyMTEsIDIsIDYyLCA3OCwgMjMzLCA3MCwgMjMzLCAzOSwgMTY3LCAyNTMsIDIxOSwgMjQyLCAxMDcsIDE2NywgMjUzLCAyMTksIAotICAgIDIzMywgMzksIDI0LCAyMjAsIDc5LCAyMjgsIDE2MywgMTIzLCAxMDgsIDI0MiwgMTA3LCAyNCwgMjIwLCA3OSwgMjI4LCAKLSAgICAxNjMsIDEyMywgMTA4LCAyMzMsIDM5LCAyNCwgMjI4LCAxNjMsIDI1MywgMjE5LCAyNDIsIDEwNywgMjQsIDIyOCwgMTYzLCAKLSAgICAyNTMsIDIxOSwgMjMzLCAzOSwgNzgsIDI0NiwgNjUsIDEyMywgNzgsIDI0MiwgMTA2LCAyNDIsIDEwNywgNzgsIDI0NiwgNjUsIAotICAgIDEyMywgNzgsIDIzMywgMzgsIDIzMywgMzksIDc4LCAyMjAsIDg4LCAxNjcsIDI0NSwgNjIsIDI0MiwgMTA3LCA3OCwgMjIwLCAKLSAgICA4OCwgMTY3LCAyNDUsIDYyLCAyMzMsIDM5LCA3OCwgMjIwLCA4OCwgNzgsIDI0MiwgMTA2LCAyNDIsIDEwNywgNzgsIDIyMCwgCi0gICAgODgsIDc4LCAyMzMsIDM4LCAyMzMsIDM5LCA3OCwgMjQyLCAxMDcsIDc4LCAyNDYsIDY1LCAyNDUsIDYyLCAyNDIsIDEwNywgCi0gICAgNzgsIDIzMywgMzksIDc4LCAyNDYsIDY1LCAyNDUsIDYyLCAyMzMsIDM5LCA3OCwgMjIwLCAyNSwgMTIzLCA3OCwgMjQyLCAKLSAgICAxMDcsIDc4LCAyMjAsIDI1LCAyNDUsIDYyLCAyNDIsIDEwNywgNzgsIDIyMCwgMjUsIDEyMywgNzgsIDIzMywgMzksIDc4LCAKLSAgICAyMjAsIDI1LCAyNDUsIDYyLCAyMjAsIDI1LCAxMjMsIDIxMSwgMjExLCAxNjcsIDIzMywgMzgsIDIyMCwgMjUsIDEyMywgCi0gICAgMjExLCAyMTEsIDE2NywgMjQyLCAxMDYsIDIyMCwgMjUsIDEyMywgMjExLCAyMTEsIDE2NywgMjMzLCAzOSwgMiwgNjIsIAotICAgIDIzNSwgMjEyLCAyMjAsIDI1LCAxMjMsIDIxMSwgMjExLCAxNjcsIDI0MiwgMTA3LCAyLCA2MiwgMjM1LCAyMTIsIDI0NiwgCi0gICAgNjUsIDEyMywgMjExLCAyMTEsIDE2NywgMjMzLCAzOCwgMjQ2LCA2NSwgMTIzLCAyMTEsIDIxMSwgMTY3LCAyNDIsIDEwNiwgCi0gICAgMjQ2LCA2NSwgMjIwLCAyNSwgMTIzLCAyMTEsIDIxMSwgMTY3LCAyMzMsIDM4LCAyNDYsIDY1LCAyMjAsIDI1LCAxMjMsIAotICAgIDIxMSwgMjExLCAxNjcsIDI0MiwgMTA2LCAyMjAsIDg4LCAxNjcsIDIzMywgMzgsIDIyMCwgODgsIDE2NywgMjQyLCAxMDYsIAotICAgIDIyMCwgODgsIDc4LCAyMzMsIDM5LCA3OCwgMjQ1LCA2MSwgNTIsIDIyMCwgODgsIDc4LCAyNDIsIDEwNywgNzgsIDI0NSwgCi0gICAgNjEsIDUyLCA1MSwgMjI5LCAxNzMsIDIzMywgMzgsIDUxLCAyMjksIDE3MywgMjQyLCAxMDYsIDUxLCAyMjksIDE3MywgMjMzLCAKLSAgICAzOSwgMiwgMjE1LCAxNTMsIDI0MiwgMTA3LCAyMjYsIDI0NSwgMjMzLCAzOCwgMjQyLCAxMDcsIDI1MSwgMjA3LCAyMzMsIAotICAgIDM4LCAyMzMsIDM5LCAyNDksIDE5MywgMjUxLCA3LCAyNDksIDM0LCAyNDIsIDEwNywgMjQ5LCAxOTMsIDI1MSwgNywgMjQ5LCAKLSAgICAzNCwgMjMzLCAzOSwgMjQ5LCAxOTMsIDI1MSwgNywgMjQ5LCAzNSwgNzgsIDIyMCwgMjUsIDI0NSwgNjIsIDI0MiwgMTA3LCAKLSAgICAyNDksIDE5MywgMjUxLCA3LCAyNDksIDM1LCA3OCwgMjIwLCAyNSwgMjQ1LCA2MiwgMjIwLCA2LCAyMTcsIDE1MywgMjMzLCAKLSAgICAxMDYsIDIxNywgMTUzLCAyMjAsIDYsIDIxNywgMTU0LCAxNjcsIDEyMywgMTA4LCAyMzMsIDEwNiwgMjE3LCAxNTQsIDE2NywgCi0gICAgMTIzLCAxMDgsIDI0NSwgNjEsIDUsIDIsIDI1MSwgMzcsIDQ5LCAyMjUsIDgzLCA3OCwgMjIwLCA3OSwgMjQ1LCA2MSwgNTIsIAotICAgIDIxOSwgMSwgNzgsIDIyMCwgNzksIDI0NSwgNjEsIDUyLCAyMjUsIDgzLCA3OCwgMjIwLCA3OSwgMjI4LCAxNjMsIDEyMywgCi0gICAgMTA4LCAyMTksIDEsIDc4LCAyMjAsIDc5LCAyMjgsIDE2MywgMTIzLCAxMDgsIDIyNSwgODMsIDc4LCAyNDUsIDYxLCA1MiwgCi0gICAgMjE5LCAxLCA3OCwgMjQ1LCA2MSwgNTIsIDIyNSwgODMsIDc4LCAyMjgsIDE2MywgMTIzLCAxMDgsIDIxOSwgMSwgNzgsIAotICAgIDIyOCwgMTYzLCAxMjMsIDEwOCwgMjI1LCA4MywgNzgsIDI1NCwgNTcsIDEyMywgMTA4LCAyMTksIDEsIDc4LCAyNTQsIDU3LCAKLSAgICAxMjMsIDEwOCwgMjI1LCA4MywgNzgsIDIyOCwgMTYzLCAyNTQsIDU3LCAxMjMsIDEwOCwgMjE5LCAxLCA3OCwgMjI4LCAxNjMsIAotICAgIDI1NCwgNTcsIDEyMywgMTA4LCA1MSwgMjI1LCA4MiwgNTEsIDIxOSwgMCwgMjE5LCA5LCAyLCAyNDcsIDc0LCAyMTgsIDIyMiwgCi0gICAgMiwgMjQ3LCA3NCwgMjE5LCA5LCAyLCA5NCwgNSwgNTUsIDIxOCwgMjIyLCAyLCA5NCwgNSwgNTUsIDIxOSwgOSwgMiwgMjMwLCAKLSAgICAxNTQsIDUsIDU1LCAyMTgsIDIyMiwgMiwgMjMwLCAxNTQsIDUsIDU1LCAyMTksIDksIDY1LCAxNjcsIDEyMywgMjExLCAyMTEsIAotICAgIDIsIDYyLCA0OSwgMjE4LCAyMjIsIDY1LCAxNjcsIDEyMywgMjExLCAyMTEsIDIsIDYyLCA0OSwgMjE5LCA5LCA2NSwgNzgsIAotICAgIDI0NSwgNjEsIDUyLCAyMTgsIDIyMiwgNjUsIDc4LCAyNDUsIDYxLCA1MiwgMjE5LCA5LCA2NSwgNzgsIDIxNywgNDMsIDIyNywgCi0gICAgMzMsIDIxOCwgMjIyLCA2NSwgNzgsIDIxNywgNDMsIDIyNywgMzMsIDIxOSwgOSwgNjUsIDc4LCAyNTQsIDU3LCAxMjMsIAotICAgIDEwOCwgMjE4LCAyMjIsIDY1LCA3OCwgMjU0LCA1NywgMTIzLCAxMDgsIDIxOSwgOSwgNjUsIDc4LCAyMjgsIDE2MywgMTIzLCAKLSAgICAxMDgsIDIxOCwgMjIyLCA2NSwgNzgsIDIyOCwgMTYzLCAxMjMsIDEwOCwgNDEsIDQyLCAyMjcsIDQwLCA5MiwgMjI3LCAzMywgCi0gICAgNDEsIDQ2LCAyMjcsIDQwLCA5MiwgMjI3LCAzMywgMjQ5LCAxOTMsIDIxOSwgOCwgMjQ5LCAxOTMsIDIxOCwgMjIxLCAyNDksIAotICAgIDE5MywgMjE5LCA5LCAxNjcsIDEyMywgMTA4LCAyNDksIDE5MywgMjE4LCAyMjIsIDE2NywgMTIzLCAxMDgsIDIxOSwgOSwgCi0gICAgNzgsIDIxOCwgMjIxLCAyMTgsIDIyMiwgNzgsIDIxOSwgOCwgMjE5LCA5LCA3OCwgMjE5LCA4LCAyMTgsIDIyMiwgNzgsIAotICAgIDIxOCwgMjIxLCAyMTgsIDIyMiwgMjUxLCAyMDcsIDIxOSwgOCwgMjE4LCAyMjIsIDI1MSwgMjA3LCAyNCwgMjM1LCA2OCwgCi0gICAgMjUxLCA3LCAyNDgsIDEwMiwgMiwgMjE5LCA4LCAyNDUsIDEyNywgNjUsIDIyNywgMzUsIDI0NiwgNTcsIDIyNSwgMTgwLCAyLCAKLSAgICAyMTcsIDIyMCwgMjE2LCAyMjYsIDIxNiwgMTk4LCAyMzUsIDE5NSwgMjQzLCAyNDYsIDIyOCwgMTc2LCAyMjAsIDE3NSwgNDIsIAotICAgIDIxOCwgMzYsIDIyMCwgMTc1LCAxMTksIDIxOCwgMzYsIDIyMCwgMTc1LCAxMTQsIDIxOCwgMzYsIDIyNiwgNDgsIDIsIDE5NywgCi0gICAgNzEsIDI1MiwgNjAsIDIxNiwgMTY5LCA0NiwgMjE2LCA1NywgNTEsIDcxLCAyNTIsIDYwLCA0MiwgMjE2LCA1NywgNzEsIAotICAgIDI1MiwgNjAsIDUxLCA0MiwgMjE2LCA1NywgNTEsIDcxLCAyNTIsIDYwLCA1MSwgNDIsIDIxNiwgNTcsIDE4NCwgMjQ4LCAKLSAgICAxMDIsIDI0MywgMjEzLCA0MiwgMjMxLCAxMjcsIDY1LCA1MSwgMjE0LCAyMTYsIDIyMCwgMTc1LCAxMTksIDIxOCwgMzcsIDIsIAotICAgIDIyNiwgMjQ3LCAyMjAsIDE3NSwgMTE0LCAyMTgsIDM3LCAyLCAyMTUsIDE1MywgMjIwLCAxNzUsIDExNCwgMjE4LCAzNywgCi0gICAgNzgsIDIyMCwgMTc1LCAxMTksIDIxOCwgMzYsIDUxLCAxMTksIDIxOCwgMzYsIDUxLCAxMTQsIDIxOCwgMzYsIDUxLCAyMTksIAotICAgIDQ1LCAyMjgsIDE2MywgNTIsIDIyMywgMjAyLCA1MSwgMjE5LCA0NSwgMjI4LCAxNjMsIDUyLCAyNDcsIDkyLCAyMjgsIDE2MywgCi0gICAgMjQ3LCAxMjcsIDIsIDIyMywgMjAyLCAyMjksIDE4MiwgMjIwLCAyMywgNzEsIDIzMiwgMjQzLCAyLCAyNDksIDIyOSwgNDksIAotICAgIDcxLCAyMzIsIDI0MywgMiwgMjQ5LCAyMjksIDU1LCAxMTksIDIxOCwgMzcsIDIsIDI0OSwgMjI5LCA1NSwgMjI2LCAxMzYsIAotICAgIDIsIDE5OSwgOTAsIDIyNiwgMTM2LCAyLCAyMTcsIDQzLCAyMjcsIDMzLCAyMTYsIDE2OSwgNzEsIDI1MiwgNjAsIDI1MSwgCi0gICAgMTY3LCAyMjMsIDI0MSwgMjE2LCAxNjksIDcxLCAyNTIsIDYwLCAyLCAxOTksIDkwLCAyMTYsIDE2OSwgMjQ5LCAxNjUsIAotICAgIDIyNywgMzMsIDIxNiwgMTY5LCAyMjksIDE3MywgMjMzLCAzOCwgMjE2LCAxNjksIDIyOSwgMTczLCAyNDIsIDEwNiwgMjQ2LCAKLSAgICA2NSwgMjIwLCAyNSwgMjMzLCAzOSwgMTY3LCAxMjMsIDEwOCwgMjQ2LCA2NSwgMjIwLCAyNSwgMjQyLCAxMDcsIDE2NywgCi0gICAgMTIzLCAxMDgsIDIxNiwgMTY5LCAyMTksIDIzMiwgMjUxLCAxNjcsIDIyMywgMjQxLCAyMzMsIDEwOCwgMjE2LCAxNjksIDcxLCAKLSAgICAyNTIsIDYwLCAyMjcsIDMzLCA1MSwgMjE5LCAyMzIsIDIyNywgMzMsIDY3LCA3MSwgMTM0LCAyMzAsIDk3LCA2NywgNzEsIAotICAgIDEzNCwgMjI4LCAxNjcsIDI0NSwgMTc2LCA2NywgNjgsIDIyOCwgMTY3LCAyMTMsIDI1MCwgNjcsIDY4LCAyMTksIDIxNSwgCi0gICAgMjQ1LCAxNzYsIDY3LCA2OCwgMjE5LCAyMTUsIDIxMywgMjUwLCA2NywgNjgsIDQyLCA0NiwgNjcsIDY4LCAxMzIsIDgzLCAKLSAgICA2OCwgMjE1LCAxMjQsIDgzLCA2OCwgMjQ2LCA1OCwgODMsIDY4LCAyMjgsIDE2NywgMjQ1LCAxNzYsIDgzLCA2OCwgMjI4LCAKLSAgICAxNjcsIDIxMywgMjUwLCA4MywgNjgsIDIxOSwgMjE1LCAyNDUsIDE3NiwgODMsIDY4LCAyMTksIDIxNSwgMjEzLCAyNTAsIAotICAgIDgzLCA2OCwgNDIsIDQ2LCA4MywgNjgsIDExNCwgMTE5LCA4MywgNjgsIDk1LCA3NiwgMiwgMjE3LCAzMCwgMjQ2LCA1NywgCi0gICAgOTUsIDc2LCAyLCAyMTcsIDMwLCAyMTUsIDEyMywgMTMyLCA3NiwgMiwgMjE3LCAzMCwgMjQ2LCA1NywgMTMyLCA3NiwgMiwgCi0gICAgMjE3LCAzMCwgMjE1LCAxMjMsIDQxLCAyLCAyMTYsIDIyNywgMTUxLCAyNTEsIDE0NCwgNDEsIDIsIDI1MSwgMTAxLCAxNTEsIAotICAgIDI1MSwgMTQ0LCA0MSwgMiwgMjE1LCAxMzEsIDQ2LCAyNDcsIDIwNywgMTUxLCAyNTEsIDE0NCwgNDEsIDIsIDIzMiwgMTYzLCAKLSAgICA0MiwgMjQ3LCAyMDcsIDE1MSwgMjUxLCAxNDQsIDI0NywgMjAxLCAyLCA0MiwgMTUxLCAyNTEsIDE0NCwgMjQ3LCAyMDEsIDIsIAotICAgIDQ2LCAxNTEsIDI1MSwgMTQ0LCAyNDcsIDIwMSwgMiwgMjE2LCAyMjcsIDE1MSwgMjUxLCAxNDQsIDI0NywgMjAxLCAyLCAKLSAgICAyNTEsIDEwMSwgMTUxLCAyNTEsIDE0NCwgMjQ2LCA3MiwgMjE5LCAxNjYsIDgzLCAyMzMsIDEwOCwgMjE5LCAxNjYsIDY3LCAKLSAgICAyMzMsIDEwOCwgMjE5LCAxNjYsIDgzLCAyMTQsIDE2NCwgMywgMjE5LCAxNjYsIDY3LCAyMTQsIDE2NCwgMywgMjE5LCAxNjYsIAotICAgIDgzLCAyMjYsIDY1LCA2NywgMjI2LCA2NSwgNjcsIDI0MSwgMTc4LCA4MywgMjQxLCAxNzgsIDE5OSwgODMsIDI0MSwgMTc4LCAKLSAgICA4MywgMjMzLCAxMDgsIDI0OSwgMjI4LCA4MywgMjMxLCAxNDcsIDI0NywgMjAwLCA2NywgMjMxLCAxNDcsIDI0NywgMjAwLCAKLSAgICA4MywgMjMxLCAxNDcsIDIzMiwgMTU5LCA2NywgMjMxLCAxNDcsIDIzMiwgMTU5LCA4MywgMywgMjQ3LCAyMDAsIDgzLCAzLCAKLSAgICAyMzIsIDE1OSwgNjcsIDMsIDIzMiwgMTU5LCA4MywgMTk5LCAyNDUsIDEyMSwgNjcsIDE5OSwgMjQ1LCAxMjEsIDgzLCA3MSwgCi0gICAgMjQ1LCAxMjEsIDY3LCA3MSwgMjQ1LCAxMjEsIDQyLCA3NiwgMiwgMywgMjQ5LCAyMjgsIDEzMywgMTMyLCAyNTMsIDE2MiwgCi0gICAgNDIsIDc2LCAyLCAzNiwgMjI1LCAxNTYsIDE4NCwgMTMyLCAyMTksIDE2MiwgNjgsIDEzMiwgMjE2LCAyNCwgNzYsIDIsIDcxLCAKLSAgICA5MCwgMTMyLCAyMTYsIDI0LCA3NiwgMiwgNTEsIDcxLCA5MCwgMTMyLCAyMTYsIDI0LCA3NiwgMjQzLCAyMTMsIDEzNCwgCi0gICAgMTMyLCAyMTYsIDI0LCAyMTYsIDE2OSwgMjQ4LCAxMDIsIDY4LCAxMzIsIDc2LCAyLCAyNDYsIDcyLCAyMTksIDc5LCAxMzIsIAotICAgIDc2LCAyLCAyMTgsIDI4LCAyLCA3MSwgOTAsIDEzMiwgNzYsIDIsIDIxOCwgMjgsIDIsIDUxLCA3MSwgOTAsIDEzMiwgMjE2LCAKLSAgICAyNCwgNzYsIDIsIDIxOCwgMjcsIDEzMiwgMjE2LCAyNCwgNzYsIDIsIDIxOCwgMjgsIDIsIDcxLCA5MCwgMTMyLCAyMTYsIAotICAgIDI0LCA3NiwgMiwgMjE4LCAyOCwgMiwgNTEsIDcxLCA5MCwgMTMyLCA3NiwgMjE3LCA5MywgMjEzLCAxNjYsIDIxNCwgMjAsIAotICAgIDc2LCAyMjUsIDE0MSwgMjQ3LCAxNDcsIDIzMywgNzAsIDI0NSwgNjEsIDUsIDc4LCAxMzIsIDY4LCAyMjMsIDIwMywgMjE3LCAKLSAgICA0MywgMjI3LCAzNCwgNzgsIDEzMiwgNjgsIDEzMiwgNzYsIDc4LCAyMjMsIDIwMywgMjU0LCA1NywgMTIzLCAxMDgsIDk1LCAKLSAgICA3NiwgMjE3LCA5MywgMjQyLCAxMDYsIDk1LCA3NiwgMjE3LCA5MywgMjE4LCAyMjEsIDEzMiwgMjI0LCAxNjksIDY4LCA5NSwgCi0gICAgMjI0LCAxNjksIDY4LCAyMjMsIDIwMywgMjE3LCA0MywgMjI3LCAzNCwgNzgsIDk1LCA2OCwgOTUsIDc2LCA3OCwgMjIzLCAKLSAgICAyMDMsIDI1NCwgNTcsIDEyMywgMTA4LCAyMTcsIDQzLCAyMjcsIDM0LCA3OCwgMTMyLCA2OCwgMTMyLCA3NiwgNzgsIDI1NCwgCi0gICAgNTcsIDEyMywgMTA4LCAxMzIsIDc2LCA3OCwgMjIzLCAyMDMsIDIxNywgNDMsIDIyNywgMzMsIDk1LCA3NiwgNzgsIDIyMywgCi0gICAgMjAzLCAyMTcsIDQzLCAyMjcsIDMzLCA2NywgMjMxLCAxNDcsIDIxOSwgOTUsIDgzLCAzLCAyMTksIDk1LCA2NywgMywgMjE5LCAKLSAgICA5NSwgODMsIDIyMywgMTQ0LCAyMjYsIDY1LCA2NywgMjIzLCAxNDQsIDIyNiwgNjUsIDEwNywgMjMzLCAxMDgsIDI0OSwgCi0gICAgMjI4LCAxMDcsIDIyNiwgMjQ4LCAyLCAyMjYsIDI0OCwgMjM1LCAyMTIsIDEwNywgMjQ5LCAyMjksIDIsIDI0OSwgMjI5LCAKLSAgICAyMzUsIDIxMiwgMTA3LCAyNDksIDIyOCwgMTA3LCAzNiwgMjIyLCAxNjksIDEzNiwgNiwgMSwgMjUzLCA3NSwgMTM2LCA2LCAKLSAgICAxLCAyNTEsIDQ2LCAxMzYsIDYsIDEsIDIxNCwgMjMwLCAxMzYsIDYsIDEsIDI0MiwgMTYxLCAxMzYsIDYsIDEsIDI0NywgOTQsIAotICAgIDEzNiwgNiwgMSwgMjEzLCAxMiwgMTM2LCA2LCAxLCAyMTIsIDYxLCAxMzYsIDYsIDEsIDI0NSwgMjQ1LCAxMzYsIDYsIDEsIAotICAgIDIxMiwgODQsIDEzNiwgNiwgMSwgMjM1LCAxNDYsIDEzNiwgNiwgMSwgNzAsIDIzNSwgMTQ2LCAxMzYsIDYsIDEsIDcyLCAKLSAgICAxMzYsIDYsIDEsIDI0NywgMTEyLCAxMzYsIDYsIDEsIDIzNCwgMjQ1LCAxMzYsIDYsIDEsIDIzMiwgMjE1LCAxMzYsIDYsIDEsIAotICAgIDIzMCwgMTAxLCAxMzYsIDYsIDEsIDIzMCwgMTIsIDEzNiwgNiwgMSwgMjI3LCA1MSwgMTM2LCA2LCAxLCAyMjUsIDEzOCwgCi0gICAgMTM2LCA2LCAxLCAyMjMsIDEyNCwgMTM2LCA2LCAxLCAyMjAsIDExLCAxMzYsIDYsIDEsIDIxNiwgNDYsIDEzNiwgNiwgMSwgCi0gICAgMjE1LCAxNzEsIDEzNiwgNiwgMSwgMjQzLCAyMTYsIDEzNiwgNiwgMSwgMjQxLCAxODQsIDEzNiwgNiwgMSwgMjI3LCAzLCAKLSAgICAxMzYsIDYsIDEsIDIyNiwgOTYsIDEzNiwgNiwgMSwgMjIwLCAxNTMsIDEzNiwgNiwgMSwgMjE2LCAxMjUsIDEzNiwgNiwgMSwgCi0gICAgMjUwLCAxMiwgMTM2LCA2LCAxLCAyMjEsIDI0LCAxMzYsIDYsIDEsIDIxMywgMTgsIDEzNiwgNiwgMSwgMjEzLCAyMCwgMTM2LCAKLSAgICA2LCAxLCAyMTMsIDQ3LCAxMzYsIDYsIDEsIDIxOSwgMTg1LCAxNTksIDEzNiwgNiwgMSwgMjEyLCAyMDMsIDEzNiwgNiwgMSwgCi0gICAgMywgMjEyLCAxNzQsIDEzNiwgNiwgMSwgMywgMjEyLCAxNzUsIDIsIDIxOCwgMjcsIDEzNiwgNiwgMSwgMjEyLCAyMzUsIAotICAgIDEzNiwgNiwgMSwgMjM1LCAxODIsIDMsIDIxMiwgMTc0LCAxMzYsIDYsIDEsIDI1MSwgMTcyLCAyMTIsIDE3NCwgMTM2LCA2LCAKLSAgICAxLCAyMzUsIDE4MiwgMjUxLCAxNzIsIDIxMiwgMTc0LCAxMzYsIDYsIDEsIDI0NCwgNTEsIDEzNiwgNiwgMSwgMjM1LCAxNDQsIAotICAgIDEzNiwgNiwgMSwgMjIwLCAxNTIsIDEzNiwgNiwgMSwgMjE2LCAxNjAsIDYxLCAxMzYsIDYsIDEsIDIzMywgOTgsIDIzMCwgCi0gICAgMTAxLCAxMzYsIDMsIDEsIDI1MywgNzUsIDEzNiwgMywgMSwgMjUxLCA0NiwgMTM2LCAzLCAxLCAyMTQsIDIzMCwgMTM2LCAzLCAKLSAgICAxLCAyNDIsIDE2MSwgMTM2LCAzLCAxLCAyNDcsIDk0LCAxMzYsIDMsIDEsIDIxMywgMTIsIDEzNiwgMywgMSwgMjEyLCA2MSwgCi0gICAgMTM2LCAzLCAxLCAyNDUsIDI0NSwgMTM2LCAzLCAxLCAyMTIsIDg0LCAxMzYsIDMsIDEsIDIzNSwgMTQ2LCAxMzYsIDMsIDEsIAotICAgIDcwLCAyMzUsIDE0NiwgMTM2LCAzLCAxLCA3MiwgMTM2LCAzLCAxLCAyNDcsIDExMiwgMTM2LCAzLCAxLCAyMzQsIDI0NSwgCi0gICAgMTM2LCAzLCAxLCAyMzIsIDIxNSwgMTM2LCAzLCAxLCAyMzAsIDEwMSwgMTM2LCAzLCAxLCAyMzAsIDEyLCAxMzYsIDMsIDEsIAotICAgIDIyNywgNTEsIDEzNiwgMywgMSwgMjI1LCAxMzgsIDEzNiwgMywgMSwgMjIzLCAxMjQsIDEzNiwgMywgMSwgMjIwLCAxMSwgCi0gICAgMTM2LCAzLCAxLCAyMTYsIDQ2LCAxMzYsIDMsIDEsIDIxNSwgMTcxLCAxMzYsIDMsIDEsIDI0MywgMjE2LCAxMzYsIDMsIDEsIAotICAgIDI0MSwgMTg0LCAxMzYsIDMsIDEsIDIyNywgMywgMTM2LCAzLCAxLCAyMjYsIDk2LCAxMzYsIDMsIDEsIDIyMCwgMTUzLCAKLSAgICAxMzYsIDMsIDEsIDIxNiwgMTI1LCAxMzYsIDMsIDEsIDI1MCwgMTIsIDEzNiwgMywgMSwgMjIxLCAyNCwgMTM2LCAzLCAxLCAKLSAgICAyMTMsIDE4LCAxMzYsIDMsIDEsIDIxMywgMjAsIDEzNiwgMywgMSwgMjEzLCA0NywgMTM2LCAzLCAxLCAyMTksIDE4NSwgCi0gICAgMTU5LCAxMzYsIDMsIDEsIDIxMiwgMjAzLCAxMzYsIDMsIDEsIDMsIDIxMiwgMTc0LCAxMzYsIDMsIDEsIDMsIDIxMiwgMTc1LCAKLSAgICAyLCAyMTgsIDI3LCAxMzYsIDMsIDEsIDIxMiwgMjM1LCAxMzYsIDMsIDEsIDIzNSwgMTgyLCAzLCAyMTIsIDE3NCwgMTM2LCAKLSAgICAzLCAxLCAyNTEsIDE3MiwgMjEyLCAxNzQsIDEzNiwgMywgMSwgMjM1LCAxODIsIDI1MSwgMTcyLCAyMTIsIDE3NCwgMTM2LCAKLSAgICAzLCAxLCAyNDQsIDUxLCAxMzYsIDMsIDEsIDIzNSwgMTQ0LCAxMzYsIDMsIDEsIDIyMCwgMTUyLCAxMzYsIDMsIDEsIDIxNiwgCi0gICAgMTYwLCA2MSwgMTM2LCAzLCAxLCAyMzMsIDk4LCAyMzAsIDEwMSwgNywgNiwgMSwgMjMzLCAxNzEsIDIsIDUxLCAxMzQsIDcsIAotICAgIDMsIDEsIDIzMywgMTcxLCAyLCA1MSwgMTM0LCA3LCA2LCAxLCAyMzMsIDE3MSwgMiwgMjMxLCAzNywgMjE3LCA0MiwgNywgNiwgCi0gICAgMSwgMjI2LCAyMzAsIDIsIDkwLCA3LCA2LCAxLCAyMjQsIDExMywgMiwgMjE4LCAyNywgNywgMywgMSwgMTE4LCAyLCA5MCwgCi0gICAgNywgMywgMSwgMjE4LCAxMDAsIDIsIDI0NywgMjA3LCA5MCwgNywgNiwgMSwgMjQyLCA0MiwgMiwgMjQ3LCAyNDYsIDcsIDMsIAotICAgIDEsIDI0MiwgNDIsIDIsIDI0NywgMjQ2LCA3LCA2LCAxLCAyMzUsIDI4LCAyLCAyNDcsIDI0NiwgNywgMywgMSwgMjM1LCAyOCwgCi0gICAgMiwgMjQ3LCAyNDYsIDcsIDYsIDEsIDIxMiwgMTUzLCAyLCAyNDcsIDI0NiwgNywgMywgMSwgMjEyLCAxNTMsIDIsIDI0NywgCi0gICAgMjQ2LCA3LCA2LCAxLCAyNTQsIDUyLCA3LCA2LCAxLCAyMzIsIDExMCwgMiwgMTAxLCA3LCA2LCAxLCAyMTYsIDU4LCA2MSwgCi0gICAgNywgNiwgMSwgMjE2LCA1OCwgMjU0LCA1MiwgNywgMywgMSwgMjE1LCA4MCwgMiwgNDYsIDEwMSwgNywgNiwgMSwgMjE0LCAKLSAgICA4MywgMiwgMTAxLCA3LCAzLCAxLCAyMTQsIDgzLCAyLCAxMDEsIDcsIDMsIDEsIDIxNSwgODAsIDIsIDI0OSwgNDEsIDcsIDYsIAotICAgIDEsIDE1MSwgMjQyLCA0MSwgNywgMywgMSwgMTUxLCAyNDIsIDQxLCA3LCAzLCAxLCAyMTgsIDI1LCAyMjYsIDksIDcsIDMsIAotICAgIDEsIDE5MSwgMiwgMjI4LCAxNjEsIDcsIDMsIDEsIDIxNiwgNTgsIDIyNCwgMTEzLCAyLCAyMTgsIDI3LCA3LCAzLCAxLCAKLSAgICAxNTcsIDIsIDExNSwgMjIzLCAxMzEsIDIzNSwgMjEyLCA3LCAxLCAzLCA2LCAyMTYsIDU4LCA3NCwgNywgMjE5LCAxMCwgMywgCi0gICAgMSwgMjM1LCAxNDIsIDU5LCAxLCA2LCAyMTUsIDc5LCA3LCA2LCAxLCAyMjMsIDQsIDIsIDIxOCwgMTk1LCAyMTgsIDI3LCA3LCAKLSAgICA2LCAxLCAyMTIsIDE1MywgMiwgMjE4LCAxOTUsIDIxOCwgMjcsIDc5LCA2LCAxLCAyNTQsIDczLCA3OSwgMywgMSwgMjU0LCAKLSAgICA3MywgNzksIDYsIDEsIDIxNCwgMTUxLCA3OSwgMywgMSwgMjE0LCAxNTEsIDc5LCA2LCAxLCAyNDMsIDgzLCA3OSwgMywgMSwgCi0gICAgMjQzLCA4MywgNzksIDYsIDEsIDI0OCwgMTM2LCA3OSwgMywgMSwgMjQ4LCAxMzYsIDc5LCA2LCAxLCAyNDUsIDE1MSwgNzksIAotICAgIDMsIDEsIDI0NSwgMTUxLCA3OSwgNiwgMSwgMjE5LCAyMjAsIDc5LCAzLCAxLCAyMTksIDIyMCwgNzksIDYsIDEsIDIxMiwgCi0gICAgOTQsIDc5LCAzLCAxLCAyMTIsIDk0LCA3OSwgNiwgMSwgMjQxLCAyMzEsIDc5LCAzLCAxLCAyNDEsIDIzMSwgNzksIDYsIDEsIAotICAgIDIxNywgMTMwLCA3OSwgMywgMSwgMjE3LCAxMzAsIDc5LCA2LCAxLCAyNDAsIDEwOSwgNzksIDMsIDEsIDI0MCwgMTA5LCA3OSwgCi0gICAgNiwgMSwgMjM0LCAyMzIsIDc5LCAzLCAxLCAyMzQsIDIzMiwgNzksIDYsIDEsIDIzMywgOTYsIDc5LCAzLCAxLCAyMzMsIDk2LCAKLSAgICA3OSwgNiwgMSwgMjMxLCA0MiwgNzksIDMsIDEsIDIzMSwgNDIsIDc5LCA2LCAxLCAyMjksIDY0LCA3OSwgMywgMSwgMjI5LCAKLSAgICA2NCwgNzksIDYsIDEsIDIzMywgMjQyLCA3OSwgMywgMSwgMjMzLCAyNDIsIDc5LCA2LCAxLCA3NSwgNzksIDMsIDEsIDc1LCAKLSAgICA3OSwgNiwgMSwgMjI1LCAyNDAsIDc5LCAzLCAxLCAyMjUsIDI0MCwgNzksIDYsIDEsIDIyMywgMTEyLCA3OSwgMywgMSwgCi0gICAgMjIzLCAxMTIsIDc5LCA2LCAxLCAyMjAsIDkxLCA3OSwgMywgMSwgMjIwLCA5MSwgNzksIDYsIDEsIDIxNywgMjQ4LCA3OSwgCi0gICAgMywgMSwgMjE3LCAyNDgsIDc5LCA2LCAxLCAyMTUsIDE5NiwgNzksIDMsIDEsIDIxNSwgMTk2LCA3OSwgNiwgMSwgMjQ0LCAKLSAgICA5MCwgNzksIDMsIDEsIDI0NCwgOTAsIDc5LCA2LCAxLCAyMzQsIDExOCwgNzksIDMsIDEsIDIzNCwgMTE4LCA3OSwgNiwgMSwgCi0gICAgMjI1LCA0NiwgNzksIDMsIDEsIDIyNSwgNDYsIDc5LCA2LCAxLCAyMjcsIDQ0LCA3OSwgMywgMSwgMjI3LCA0NCwgNzksIDYsIAotICAgIDEsIDI0NywgMjA1LCAyNTQsIDc4LCA3OSwgMywgMSwgMjQ3LCAyMDUsIDI1NCwgNzgsIDc5LCA2LCAxLCA1MywgNzksIDI1NCwgCi0gICAgMTAzLCA3OSwgMywgMSwgNTMsIDc5LCAyNTQsIDEwMywgNzksIDYsIDEsIDI0OSwgNTUsIDI0NSwgMTUxLCA3OSwgMywgMSwgCi0gICAgMjQ5LCA1NSwgMjQ1LCAxNTEsIDc5LCA2LCAxLCAyNDcsIDIwNSwgMjM0LCAyMzIsIDc5LCAzLCAxLCAyNDcsIDIwNSwgMjM0LCAKLSAgICAyMzIsIDc5LCA2LCAxLCAyNDcsIDIwNSwgMjI5LCA2NCwgNzksIDMsIDEsIDI0NywgMjA1LCAyMjksIDY0LCA3OSwgNiwgMSwgCi0gICAgMjQ5LCA1NSwgMjI5LCA2NCwgNzksIDMsIDEsIDI0OSwgNTUsIDIyOSwgNjQsIDc5LCA2LCAxLCA1MywgNzksIDIyNywgNDQsIAotICAgIDc5LCAzLCAxLCA1MywgNzksIDIyNywgNDQsIDc5LCA2LCAxLCAyMjIsIDE2MSwgNzksIDMsIDEsIDIyMiwgMTYxLCA3OSwgNiwgCi0gICAgMSwgMjQ5LCA2OCwgMjIwLCAyMzUsIDc5LCAzLCAxLCAyNDksIDY4LCAyMjAsIDIzNSwgNzksIDYsIDEsIDUzLCA3OSwgMjIwLCAKLSAgICAyMzUsIDc5LCAzLCAxLCA1MywgNzksIDIyMCwgMjM1LCA3OSwgNiwgMSwgNTMsIDc5LCAyNDUsIDQwLCA3OSwgMywgMSwgNTMsIAotICAgIDc5LCAyNDUsIDQwLCA3OSwgNiwgMSwgMjU0LCA5MCwgMjM0LCAxMjMsIDc5LCAzLCAxLCAyNTQsIDkwLCAyMzQsIDEyMywgCi0gICAgNzksIDYsIDEsIDI0NywgMjA1LCAyNDEsIDMyLCA3OSwgMywgMSwgMjQ3LCAyMDUsIDI0MSwgMzIsIDc5LCA2LCAxLCA1MywgCi0gICAgNzksIDI0MSwgMzIsIDc5LCAzLCAxLCA1MywgNzksIDI0MSwgMzIsIDc5LCA2LCAxLCA1MywgNzksIDE1OSwgNzksIDMsIDEsIAotICAgIDUzLCA3OSwgMTU5LCA3OSwgNiwgMSwgMjMzLCAxNzAsIDE1OSwgNzksIDMsIDEsIDIzMywgMTcwLCAxNTksIDc5LCA2LCAxLCAKLSAgICA1MywgNzksIDI0MSwgMjAxLCA3OSwgMywgMSwgNTMsIDc5LCAyNDEsIDIwMSwgNzksIDYsIDEsIDUzLCA3OSwgMjQxLCAyMzQsIAotICAgIDc5LCAzLCAxLCA1MywgNzksIDI0MSwgMjM0LCA3OSwgNiwgMSwgNTMsIDc5LCAyNDMsIDc4LCA3OSwgMywgMSwgNTMsIDc5LCAKLSAgICAyNDMsIDc4LCA3OSwgNiwgMSwgNTMsIDc5LCAyNDcsIDExNSwgNzksIDMsIDEsIDUzLCA3OSwgMjQ3LCAxMTUsIDc5LCA2LCAKLSAgICAxLCA1MywgNzksIDIyMCwgMjAyLCA3OSwgMywgMSwgNTMsIDc5LCAyMjAsIDIwMiwgNzksIDYsIDEsIDUzLCAyMjgsIDYzLCAKLSAgICAyMjAsIDIwMiwgNzksIDMsIDEsIDUzLCAyMjgsIDYzLCAyMjAsIDIwMiwgNzksIDYsIDEsIDUzLCAyMjgsIDYzLCAyMjksIAotICAgIDExMywgNzksIDMsIDEsIDUzLCAyMjgsIDYzLCAyMjksIDExMywgNzksIDYsIDEsIDUzLCAyMjgsIDYzLCAyMjgsIDEwLCA3OSwgCi0gICAgMywgMSwgNTMsIDIyOCwgNjMsIDIyOCwgMTAsIDc5LCA2LCAxLCA1MywgMjI4LCA2MywgMjE0LCAyMSwgNzksIDMsIDEsIDUzLCAKLSAgICAyMjgsIDYzLCAyMTQsIDIxLCA3OSwgMTYsIDIzNCwgMjUwLCA3OSwgMTYsIDIzMSwgNDMsIDIyMywgMTEyLCA3OSwgMTYsIAotICAgIDIyNSwgMjQxLCAyMjMsIDExMiwgNzksIDE2LCAyMTksIDg3LCA3OSwgMTYsIDIxNywgMjQ5LCAyMjMsIDExMiwgNzksIDE2LCAKLSAgICAyMzQsIDExOSwgMjIzLCAxMTIsIDc5LCAxNiwgMjIwLCAyMDMsIDIyMCwgOTEsIDc5LCA2LCAxLCAyNDksIDU1LCAyMjAsIAotICAgIDIzNSwgNzksIDMsIDEsIDI0OSwgNTUsIDIyMCwgMjM1LCA3OSwgNiwgMSwgMjQ5LCA1NSwgMjQzLCA3OCwgNzksIDMsIDEsIAotICAgIDI0OSwgNTUsIDI0MywgNzgsIDc5LCAzNywgMjI5LCA2NSwgNDksIDc5LCAzNywgMjE5LCAxNzksIDI1MywgMTM5LCA3OSwgCi0gICAgMzcsIDIxOSwgMTc5LCAyMzMsIDQ1LCA3OSwgNTMsIDIyOCwgNjMsIDI0MywgMjAwLCAyMTksIDY5LCA3OSwgNTMsIDIyOCwgCi0gICAgNjMsIDI0NywgMTQ5LCAyMjQsIDE1OCwgNzcsIDc5LCA1MywgMjI4LCA2MywgMjM1LCAyMzQsIDIyNCwgMTU4LCA3NywgNzksIAotICAgIDUzLCAyMjgsIDYzLCAyMTQsIDIxOCwgMjQ3LCAxMjQsIDc5LCAyNDMsIDIyOCwgMTIyLCAyNDIsIDksIDc5LCAyNDMsIDIwMCwgCi0gICAgMjE5LCA2OSwgNzksIDIzMCwgMTk0LCAyNDcsIDEyNCwgMTAwLCAzLCAxLCAyNTQsIDMyLCAxMDAsIDMsIDEsIDI1MiwgNzEsIAotICAgIDEwMCwgMywgMSwgMjQzLCA4MiwgMTAwLCAzLCAxLCAyNDcsIDgyLCAxMDAsIDMsIDEsIDI0NSwgMTA4LCAxMDAsIDMsIDEsIAotICAgIDIxNCwgMTQxLCAxMDAsIDMsIDEsIDIxMiwgODIsIDEwMCwgMywgMSwgMjE4LCAxMSwgMTAwLCAzLCAxLCAyMzUsIDI1MSwgCi0gICAgMTAwLCAzLCAxLCAyMzQsIDIzOSwgMTAwLCAzLCAxLCAyMzMsIDEwNCwgMTAwLCAzLCAxLCAyMzEsIDI0OCwgMTAwLCAzLCAxLCAKLSAgICAyMzAsIDE1LCAxMDAsIDMsIDEsIDIyNywgNjIsIDEwMCwgMywgMSwgMjI2LCAxNDUsIDEwMCwgMywgMSwgMjEyLCA3MSwgCi0gICAgMTAwLCAzLCAxLCAyMjQsIDYxLCAxMDAsIDMsIDEsIDIyMiwgMTU5LCAxMDAsIDMsIDEsIDIxOCwgMSwgMTAwLCAzLCAxLCAKLSAgICAyMTUsIDE2MCwgMTAwLCAzLCAxLCAyMjYsIDE2LCAxMDAsIDMsIDEsIDIzNCwgMTI3LCAxMDAsIDMsIDEsIDI0MiwgMjE3LCAKLSAgICAxMDAsIDMsIDEsIDIyNCwgMjE3LCAxMDAsIDMsIDEsIDIyMCwgMjAwLCAxMDAsIDMsIDEsIDI1MCwgMzQsIDEwMCwgMywgMSwgCi0gICAgMjUwLCAxOTUsIDEwMCwgMywgMSwgMjM1LCAxMDMsIDEwMCwgMywgMSwgMjQ5LCAyMzMsIDEwMCwgMywgMSwgMjUwLCA3OSwgCi0gICAgMTAwLCAzLCAxLCAyMTMsIDE1MSwgMTAwLCAzLCAxLCAyMzUsIDExMywgMTAwLCAzLCAxLCAyNDIsIDI0LCAxMDAsIDMsIDEsIAotICAgIDI0MSwgMjIyLCAxMDAsIDMsIDEsIDI0MSwgMTYwLCAxMDAsIDMsIDEsIDIxNCwgNiwgMTAwLCAzLCAxLCAyNDEsIDI0MywgCi0gICAgMTAwLCAzLCAxLCAyNDEsIDUxLCAyMTcsIDYyLCAxLCAxODYsIDIxNywgNjIsIDEsIDIxMywgODcsIDIxNywgNjIsIDEsIAotICAgIDIxMywgODYsIDIxNywgNjIsIDEsIDIxMywgNzYsIDIxNywgNjIsIDEsIDIxMywgNzQsIDIxNywgNjIsIDEsIDI1MSwgMjA5LCAKLSAgICAyNTQsIDE3NiwgMjEzLCA3MCwgMjE3LCA2MiwgMSwgMjEzLCA3MCwgMjE3LCA2MiwgMSwgMjEzLCA4NCwgMjE3LCA2MiwgMSwgCi0gICAgMjEzLCA4MSwgMjE3LCA2MiwgMSwgMjEzLCA4MywgMjE3LCA2MiwgMSwgMjEzLCA4MiwgMjE3LCA2MiwgMSwgMjEzLCAzLCAKLSAgICAyMTcsIDYyLCAxLCAyMTMsIDc4LCAyMTcsIDYyLCAxLCAyMTMsIDY4LCAyMTcsIDYyLCAxLCAyMTYsIDc5LCAyMTMsIDY4LCAKLSAgICAyMTcsIDYyLCAxLCAyMTMsIDY1LCAyMTcsIDYyLCAxLCAyMTMsIDcyLCAyMTcsIDYyLCAxLCAyNTEsIDIwOSwgMjU0LCAxNzYsIAotICAgIDIxMywgNzIsIDIxNywgNjIsIDEsIDIxNiwgNzksIDIxMywgNzIsIDIxNywgNjIsIDEsIDIxMywgNzEsIDIxNywgNjIsIDEsIAotICAgIDIxMywgOTEsIDIxNywgNjIsIDEsIDIxMywgNjYsIDIxNywgNjIsIDEsIDIxNiwgNzksIDIxMywgNjYsIDIxNywgNjIsIDEsIAotICAgIDIxMywgNTYsIDIxNywgNjIsIDEsIDIxNiwgNzksIDIxMywgNTYsIDIxNywgNjIsIDEsIDIxMiwgMjU1LCAyMTcsIDYyLCAxLCAKLSAgICAyMTMsIDQwLCAyMTcsIDYyLCAxLCAyNTQsIDExMiwgMjEzLCA0MCwgMjE3LCA2MiwgMSwgMjE2LCA3OSwgMjEzLCA0MCwgCi0gICAgMjE3LCA2MiwgMSwgMjEzLCA2NCwgMjE3LCA2MiwgMSwgMjEzLCA2MywgMjE3LCA2MiwgMSwgMjEzLCA2MCwgMjE3LCA2MiwgCi0gICAgMSwgMjE2LCA3OSwgMjEzLCA3MywgMjE3LCA2MiwgMSwgMjE2LCA3OSwgMjEzLCA1OCwgMjE3LCA2MiwgMSwgMjEzLCA1NywgCi0gICAgMjE3LCA2MiwgMSwgMjEyLCAyMDMsIDIxNywgNjIsIDEsIDIxMywgNTQsIDIxNywgNjIsIDEsIDIxMywgNTMsIDIxNywgNjIsIAotICAgIDEsIDIxMywgNzUsIDIxNywgNjIsIDEsIDIxNiwgNzksIDIxMywgNzUsIDIxNywgNjIsIDEsIDI1MywgNzksIDIxMywgNzUsIAotICAgIDIxNywgNjIsIDEsIDIxMywgNTIsIDIxNywgNjIsIDEsIDIxMywgNTAsIDIxNywgNjIsIDEsIDIxMywgNTEsIDIxNywgNjIsIAotICAgIDEsIDIxMywgNDksIDIxNywgNjIsIDEsIDIxMywgNDgsIDIxNywgNjIsIDEsIDIxMywgODUsIDIxNywgNjIsIDEsIDIxMywgCi0gICAgNDYsIDIxNywgNjIsIDEsIDIxMywgNDUsIDIxNywgNjIsIDEsIDIxMywgNDQsIDIxNywgNjIsIDEsIDIxMywgNDMsIDIxNywgCi0gICAgNjIsIDEsIDIxMywgNDEsIDIxNywgNjIsIDEsIDIxNywgMjQxLCAyMTMsIDQxLCAyMTcsIDYyLCAxLCAyMTMsIDM5LCAyMTcsIAotICAgIDYyLCA1OSwgMSwgMjMzLCAxNDksIDc3LCAyMTcsIDYyLCAyMjEsIDU4LCA3NywgMjE3LCA2MiwgMjQ5LCAxMzMsIDIzNSwgCi0gICAgNjYsIDI4LCA0LCAyMzIsIDIwNywgMjgsIDQsIDIzMCwgMjMwLCAyOCwgNCwgMjIzLCAxMTAsIDI4LCA0LCAyMTksIDI0MSwgCi0gICAgMjgsIDQsIDIyMCwgMTg2LCAyOCwgNCwgMjUxLCAxMjcsIDI4LCA0LCAyMTYsIDI1MiwgMjgsIDQsIDI0OSwgMTc0LCAyOCwgCi0gICAgNCwgMjI4LCAxODMsIDI4LCA0LCAyMjcsIDI1MiwgMjgsIDQsIDI0MiwgMTU2LCAyMjcsIDEyMCwgMjgsIDQsIDIxMiwgMTUsIAotICAgIDI4LCA0LCAyNDcsIDk3LCAyOCwgNCwgMjQ4LCA1NSwgMjgsIDQsIDIzNSwgNzAsIDI4LCA0LCAyMTcsIDEwOCwgMjgsIDQsIAotICAgIDI1MCwgMjIsIDI4LCA0LCAyMjUsIDI1MiwgMjgsIDQsIDIyNSwgMTQ5LCAyOCwgNCwgMjQyLCAyMzEsIDI4LCA0LCAyNDIsIAotICAgIDIyNywgMjgsIDQsIDI0MiwgMjI4LCAyOCwgNCwgMjQyLCAyMjksIDI4LCA0LCAyMTksIDE1NywgMjgsIDQsIDIxOSwgMTE3LCAKLSAgICAyOCwgNCwgMjE5LCAxMjgsIDI4LCA0LCAyMTksIDE1NiwgMjgsIDQsIDIxOSwgMTMyLCAyOCwgNCwgMjE5LCAxMzMsIDI4LCAKLSAgICA0LCAyMTksIDEyMSwgMjgsIDQsIDI1MCwgMTQ2LCAyOCwgNCwgMjUwLCAxMjYsIDI4LCA0LCAyNTAsIDEyOCwgMjgsIDQsIAotICAgIDI1MCwgMTQ1LCAyOCwgNCwgMjUwLCAxNDMsIDI4LCA0LCAyNTAsIDE0NCwgMjgsIDQsIDI1MCwgMTI3LCAyOCwgNCwgMjExLCAKLSAgICAyNDIsIDI4LCA0LCAyMTEsIDIyMiwgMjgsIDQsIDIxMSwgMjMzLCAyOCwgNCwgMjExLCAyNDEsIDI4LCA0LCAyMTEsIDIzNiwgCi0gICAgMjgsIDQsIDIxMSwgMjM3LCAyOCwgNCwgMjExLCAyMjUsIDI4LCA0LCAyNTAsIDE0MiwgMjgsIDQsIDI1MCwgMTI5LCAyOCwgCi0gICAgNCwgMjUwLCAxMzEsIDI4LCA0LCAyNTAsIDE0MSwgMjgsIDQsIDI1MCwgMTM5LCAyOCwgNCwgMjUwLCAxNDAsIDI4LCA0LCAKLSAgICAyNTAsIDEzMCwgMjgsIDQsIDIyNCwgMTI1LCAyOCwgNCwgMjI0LCAxMTUsIDI4LCA0LCAyMjQsIDEyMSwgMjgsIDQsIDIyNCwgCi0gICAgMTI0LCAyOCwgNCwgMjI0LCAxMjIsIDI4LCA0LCAyMjQsIDEyMywgMjgsIDQsIDIyNCwgMTIwLCAyOCwgNCwgMjMzLCAxODEsIAotICAgIDI4LCA0LCAyMzMsIDE3MywgMjgsIDQsIDIzMywgMTc2LCAyOCwgNCwgMjMzLCAxODAsIDI4LCA0LCAyMzMsIDE3NywgMjgsIAotICAgIDQsIDIzMywgMTc4LCAyOCwgNCwgMjMzLCAxNzQsIDI4LCA0LCAyMTMsIDExOCwgMjgsIDQsIDIxMywgMTA4LCAyOCwgNCwgCi0gICAgMjEzLCAxMTQsIDI4LCA0LCAyMTMsIDExNywgMjgsIDQsIDIxMywgMTE1LCAyOCwgNCwgMjEzLCAxMTYsIDI4LCA0LCAyMTMsIAotICAgIDExMywgMjgsIDQsIDI0MiwgNTIsIDI4LCA0LCAyNDIsIDQzLCAyOCwgNCwgMjQyLCA0NiwgMjgsIDQsIDI0MiwgNTEsIDI4LCAKLSAgICA0LCAyNDIsIDQ4LCAyOCwgNCwgMjQyLCA0OSwgMjgsIDQsIDI0MiwgNDUsIDM3LCAzMywgMSwgMjUxLCAyNTEsIDM3LCAzMywgCi0gICAgMSwgMjE0LCAyMzIsIDM3LCAzMywgMSwgMjQyLCAyMTIsIDM3LCAzMywgMSwgMjQ4LCA0MSwgMzcsIDMzLCAxLCAyMTIsIDY3LCAKLSAgICAzNywgMzMsIDEsIDIxMiwgODcsIDM3LCAzMywgMSwgMTgxLCAzNywgMzMsIDEsIDI0NSwgMTMxLCAzNywgMzMsIDEsIDI0NSwgCi0gICAgMTE3LCAzNywgMzMsIDEsIDI0NSwgMTA4LCAzNywgMzMsIDEsIDc1LCAzNywgMzMsIDEsIDIyNiwgOTYsIDM3LCAzMywgMSwgCi0gICAgMjQ1LCA1NSwgMzcsIDMzLCAxLCAyNDUsIDQ1LCAzNywgMzMsIDEsIDIxNywgMjI5LCAzNywgMzMsIDEsIDE1OSwgMzcsIDMzLCAKLSAgICAxLCAyMTYsIDEzNiwgMzcsIDMzLCAxLCAyNTAsIDY3LCAzNywgMzMsIDEsIDIyMSwgMjQsIDM3LCAzMywgMSwgMjIwLCAyNDUsIAotICAgIDM3LCAzMywgMSwgMjQ0LCA1MSwgMzcsIDMzLCAxLCAyNDUsIDQ0LCAzNywgMzMsIDEsIDYxLCAzNywgMzMsIDEsIDIzNiwgCi0gICAgNTUsIDM3LCAzMywgMSwgMjQ3LCAxMTMsIDM3LCAzMywgMSwgMjMwLCAyMTAsIDIxNSwgMTc1LCAzNywgMzMsIDEsIDIxMywgCi0gICAgNDksIDM3LCAzMywgMSwgMjEyLCAyMDMsIDM3LCAzMywgMSwgMjM1LCAxODEsIDYxLCAzNywgMzMsIDEsIDIzMiwgMjIxLCAKLSAgICAyMTIsIDE3NCwgMzcsIDMzLCAxLCAyNTEsIDE3MiwgMjEyLCAxNzQsIDM3LCAzMywgMSwgMjM1LCAxODEsIDI1MSwgMTcyLCAKLSAgICAyMTIsIDE3NCwgNDYsIDI1NCwgMTksIDIxOSwgNSwgMjMxLCAyMTcsIDQ2LCAyNTQsIDE5LCAyNDYsIDcyLCAyMTksIDUsIAotICAgIDIzMSwgMjE3LCA0MiwgMjE5LCA1LCAxMjUsIDQ2LCAyMTksIDUsIDEyNSwgNDIsIDI0NiwgNzIsIDIxOSwgNSwgMTI1LCA0NiwgCi0gICAgMjQ2LCA3MiwgMjE5LCA1LCAxMjUsIDIyNCwgNDgsIDIzNSwgMTk5LCAyMzEsIDIxNywgMjI0LCA0OCwgMjQ2LCA3MiwgMjM1LCAKLSAgICAxOTksIDIzMSwgMjE3LCAyNDYsIDcyLCAyMTYsIDE5OSwgMjMxLCAyMTcsIDQyLCAyMTYsIDE5OSwgMTI1LCA0NiwgMjE2LCAKLSAgICAxOTksIDEyNSwgMjI0LCA0OCwgMjE5LCAxNjYsIDQyLCAyMjQsIDQ4LCAyMjcsIDY0LCAxMjUsIDQ2LCAyMjQsIDQ4LCAyMjcsIAotICAgIDY0LCAxMjUsIDI0NSwgMTY2LCAyNDksIDk3LCAyMjYsIDE0MSwgMjQzLCAyNDcsIDIyNiwgMTQxLCAyMjMsIDIwMiwgMjQzLCAKLSAgICAyNDcsIDIyNiwgMTQxLCAyNDAsIDE1NywgMjQ2LCA3MiwgMjI3LCAxMTUsIDI0NiwgNTgsIDI1NCwgMjgsIDIxNSwgMTI0LCAKLSAgICAyNTQsIDI4LCAyNDYsIDcyLCAyMjMsIDE0NCwgMjU0LCAxOCwgNTEsIDIyNywgMTEyLCAyNDAsIDE2MCwgMjM1LCAxOTEsIAotICAgIDIzNSwgMTk4LCAyMjYsIDE4NiwgMjUxLCA4MSwgMjQwLCAxNjEsIDIsIDI0NywgMjA5LCAyMTcsIDQzLCAyLCAyMjMsIDEzMSwgCi0gICAgNDksIDQyLCAxMTUsIDIyNiwgMTMzLCAxMjUsIDQ2LCAxMTUsIDIyNiwgMTMzLCAxMjUsIDIxNywgNDMsIDIsIDYyLCA0OSwgCi0gICAgMjE3LCA0MywgMiwgNjIsIDU1LCA0MiwgNzEsIDI1MiwgNjAsIDIsIDIyNCwgMTUyLCA0NiwgNzEsIDI1MiwgNjAsIDIsIAotICAgIDIyNCwgMTUyLCAyMTYsIDIyNywgNDIsIDE1MSwgMTI1LCAyMTYsIDIyNywgNDYsIDE1MSwgMTI1LCAyNTEsIDEwMSwgNDIsIAotICAgIDE1MSwgMTI1LCAyNTEsIDEwMSwgNDYsIDE1MSwgMTI1LCA0MiwgMjIwLCAxMTMsIDExMSwgMTI1LCA0NiwgMjIwLCAxMTMsIAotICAgIDExMSwgMTI1LCA0MiwgNTEsIDIyNiwgMTMxLCA0NiwgNTEsIDIyNiwgMTMxLCAxMTcsIDE3NiwgMTEwLCAxMjIsIDYyLCAKLSAgICAyMjUsIDI2LCAxMjIsIDYyLCAxMTAsIDExNywgMTc2LCAyMjUsIDI2LCA5MSwgMjQzLCAyMzcsIDYyLCAyMjUsIDI2LCAyNDQsIAotICAgIDUwLCA2MiwgNzcsIDIyMywgMjAyLCAyMjQsIDE1OCwgNzcsIDcxLCAyMTcsIDQyLCAyMjMsIDEzMSwgMjI1LCAxNDQsIDIxMywgCi0gICAgMTk2LCAyMjEsIDU4LCAyMzEsIDM3LCAyNDcsIDc0LCA5LCAzNCwgMjIzLCAyMjcsIDksIDM0LCAyNDksIDIwMywgOSwgMzQsIAotICAgIDIyMiwgOTUsIDExNiwgOSwgMzQsIDIyMiwgOTUsIDEwOSwgOSwgMzQsIDIyMiwgOTUsIDE2NiwgOSwgMzQsIDIyNiwgNDMsIAotICAgIDksIDM0LCAyNTEsIDg5LCA5LCAzNCwgMjE4LCA0MCwgOSwgMzQsIDIzNCwgNDIsIDExNiwgOSwgMzQsIDIzNCwgNDIsIDEwOSwgCi0gICAgOSwgMzQsIDI0NywgMTIyLCA5LCAzNCwgMjIyLCA5OCwgOSwgMzQsIDMsIDExNiwgOSwgMzQsIDMsIDEwOSwgOSwgMzQsIAotICAgIDIzMywgMTIxLCAxMTYsIDksIDM0LCAyMzMsIDEyMSwgMTA5LCA5LCAzNCwgMjMzLCAxMjEsIDE2NiwgOSwgMzQsIDIzMywgCi0gICAgMTIxLCAxNjMsIDksIDM0LCAyMTksIDI1MiwgOSwgMzQsIDIxNywgOTgsIDksIDM0LCAyMTksIDI1MCwgMTE2LCA5LCAzNCwgCi0gICAgMjE5LCAyNTAsIDEwOSwgOSwgMzQsIDI0MSwgMjEyLCAxMTYsIDksIDM0LCAyNDEsIDIxMiwgMTA5LCA5LCAzNCwgMjQxLCAKLSAgICAyNTQsIDksIDM0LCAyMjQsIDM5LCA5LCAzNCwgMjUwLCAxOSwgOSwgMzQsIDIxOCwgMjM4LCA5LCAzNCwgMjMwLCAxOTgsIDksIAotICAgIDM0LCAyNDgsIDM5LCA5LCAzNCwgMjMwLCAxOTAsIDksIDM0LCAyNDksIDIxOCwgOSwgMzQsIDIxNCwgMjUsIDExNiwgOSwgCi0gICAgMzQsIDIxNCwgMjUsIDEwOSwgOSwgMzQsIDI0NCwgNjUsIDksIDM0LCAyMjYsIDEwNiwgMTE2LCA5LCAzNCwgMjI2LCAxMDYsIAotICAgIDEwOSwgOSwgMzQsIDIyMCwgODYsIDE1MSwgMjE2LCAxOTQsIDIxNiwgMTQ2LCA5LCAzNCwgMjQ5LCA4NCwgOSwgMzQsIDI0NywgCi0gICAgOTAsIDksIDM0LCAyMzUsIDEzNSwgOSwgMzQsIDI1MSwgMTIyLCA2NSwgMjQ5LCAxODcsIDksIDM0LCAyNDQsIDIzOSwgOSwgCi0gICAgMzQsIDIxOSwgMTgxLCAxMTYsIDksIDM0LCAyMTksIDE4MSwgMTA5LCA5LCAzNCwgMjUyLCA3MywgOSwgMzQsIDIyMCwgOTMsIAotICAgIDksIDM0LCAyNTAsIDI0OSwgMjIwLCA5MywgOSwgMzQsIDIyOSwgMTcyLCAxMTYsIDksIDM0LCAyMjksIDE3MiwgMTA5LCA5LCAKLSAgICAzNCwgMjI5LCAxNzIsIDE2NiwgOSwgMzQsIDIyOSwgMTcyLCAxNjMsIDksIDM0LCAyMzEsIDExMSwgOSwgMzQsIDIyMCwgCi0gICAgMjM3LCA5LCAzNCwgMjI0LCA0NSwgOSwgMzQsIDI0NSwgNCwgOSwgMzQsIDIyNywgNzUsIDksIDM0LCAyNTEsIDYxLCAxMTYsIAotICAgIDksIDM0LCAyNTEsIDYxLCAxMDksIDksIDM0LCAyMzEsIDE1MSwgOSwgMzQsIDIzMCwgMTkzLCA5LCAzNCwgMjQyLCAxMTcsIAotICAgIDExNiwgOSwgMzQsIDI0MiwgMTE3LCAxMDksIDksIDM0LCAyNDIsIDExNywgMTY2LCA5LCAzNCwgMjE3LCA2MCwgOSwgMzQsIAotICAgIDI0OSwgMTg2LCA5LCAzNCwgMjEzLCAyNTAsIDExNiwgOSwgMzQsIDIxMywgMjUwLCAxMDksIDksIDM0LCAyNTAsIDI0OSwgCi0gICAgMjIyLCA4OSwgOSwgMzQsIDIyMCwgODYsIDI0MCwgMjM1LCA5LCAzNCwgMjQwLCAyMzUsIDksIDM0LCAyNTAsIDI0OSwgMjE5LCAKLSAgICAxOTAsIDksIDM0LCAyNTAsIDI0OSwgMjIwLCAyMzIsIDksIDM0LCAyNDQsIDEsIDksIDM0LCAyNTAsIDI0OSwgMjUwLCAxNjAsIAotICAgIDksIDM0LCAyMjAsIDg2LCAyMTQsIDQxLCA5LCAzNCwgMjE0LCA0MiwgMTE2LCA5LCAzNCwgMjE0LCA0MiwgMTA5LCA5LCAzNCwgCi0gICAgMjQ5LCAyMjAsIDksIDM0LCAyNTAsIDI0OSwgMjQyLCAxNDIsIDksIDM0LCAxODQsIDExNiwgOSwgMzQsIDE4NCwgMTA5LCA5LCAKLSAgICAzNCwgMjUwLCAyNDksIDIzMiwgMTkwLCA5LCAzNCwgMjUwLCAyNDksIDI0MywgNjQsIDksIDM0LCAyMzAsIDE4OSwgMTE2LCAKLSAgICA5LCAzNCwgMjMwLCAxODksIDEwOSwgOSwgMzQsIDIyNCwgNTAsIDksIDM0LCAyNTEsIDEzMCwgOSwgMzQsIDI1MCwgMjQ5LCAKLSAgICAyMTgsIDcsIDIzMywgNzYsIDksIDM0LCAyNTAsIDI0OSwgMjMzLCA3NywgOSwgMzQsIDI1MCwgMjQ5LCAyMTMsIDIyNCwgOSwgCi0gICAgMzQsIDI1MCwgMjQ5LCAyNDQsIDE1LCA5LCAzNCwgMjQ1LCAxNzQsIDExNiwgOSwgMzQsIDI0NSwgMTc0LCAxMDksIDksIDM0LCAKLSAgICAyNDUsIDE3NCwgMTY2LCA5LCAzNCwgMjUwLCAyNDksIDI0NSwgMTczLCA5LCAzNCwgMjQxLCAyMTksIDksIDM0LCAyNTAsIAotICAgIDI0OSwgMjQwLCAyMzIsIDksIDM0LCAyNTEsIDExOSwgOSwgMzQsIDI0MiwgMTk4LCA5LCAzNCwgMjUwLCAyNDksIDI0NCwgCi0gICAgNTksIDksIDM0LCAyNTAsIDI0OSwgMjUxLCAxNjAsIDksIDM0LCAyNTAsIDI0OSwgMjIyLCAxNzIsIDksIDM0LCAyMjAsIDg2LCAKLSAgICAyMTMsIDI0MywgOSwgMzQsIDIyMCwgODYsIDIxMywgMzIsIDksIDM0LCAyNTAsIDI0OSwgMjQzLCAyMTQsIDksIDM0LCAyMzUsIAotICAgIDE0MSwgMjQ1LCA4LCA5LCAzNCwgMjUwLCAyNDksIDI0NSwgOCwgOSwgMzQsIDIzNSwgMTQxLCAyMTYsIDIyOCwgOSwgMzQsIAotICAgIDI1MCwgMjQ5LCAyMTYsIDIyOCwgOSwgMzQsIDIzNSwgMTQxLCAyNDYsIDUwLCA5LCAzNCwgMjUwLCAyNDksIDI0NiwgNTAsIAotICAgIDksIDM0LCAyMTYsIDU1LCA5LCAzNCwgMjM1LCAxNDEsIDIxNiwgNTUsIDksIDM0LCAyNTAsIDI0OSwgMjE2LCA1NSwgNTcsIAotICAgIDM0LCAxMTYsIDU3LCAzNCwgMjMyLCAyNDIsIDU3LCAzNCwgMjQ3LCA3NCwgNTcsIDM0LCAyMjAsIDIzLCA1NywgMzQsIDIyMiwgCi0gICAgOTQsIDU3LCAzNCwgMTAxLCA1NywgMzQsIDEwOSwgNTcsIDM0LCAyMzMsIDksIDU3LCAzNCwgMjMxLCAyNDgsIDU3LCAzNCwgCi0gICAgMjMzLCA1NywgNTcsIDM0LCAyNDUsIDg4LCA1NywgMzQsIDE5NSwgNTcsIDM0LCAxMTksIDI1MSwgODksIDU3LCAzNCwgMjQ5LCAKLSAgICA4NiwgNTcsIDM0LCAyNDAsIDEwNCwgNTcsIDM0LCAyMTgsIDQwLCA1NywgMzQsIDIyNywgNDAsIDI1MSwgODksIDU3LCAzNCwgCi0gICAgMjM0LCA0MSwgNTcsIDM0LCAyMjUsIDEwNCwgNTcsIDM0LCAyMTMsIDE5MCwgNTcsIDM0LCAyMTksIDE3NSwgNTcsIDM0LCAKLSAgICA0NiwgMjI3LCA0MCwgMjUxLCA4OSwgNTcsIDM0LCAyNDEsIDE2MSwgMjQ1LCAxMDMsIDU3LCAzNCwgMjE3LCAyMDAsIDU3LCAKLSAgICAzNCwgMjQ3LCAxMjIsIDU3LCAzNCwgMjIyLCA5OCwgNTcsIDM0LCAyNDksIDIwMywgNTcsIDM0LCAyMjUsIDY1LCA1NywgMzQsIAotICAgIDI1NCwgMTIwLCA1NywgMzQsIDIzMCwgMTgwLCA1NywgMzQsIDI0NSwgMTAzLCA1NywgMzQsIDI0NSwgMTc5LCA1NywgMzQsIAotICAgIDIyMiwgMTE4LCA1NywgMzQsIDI0MiwgMTUwLCA1NywgMzQsIDI0MiwgMTUxLCAyMjAsIDksIDU3LCAzNCwgMjQ1LCA3LCA1NywgCi0gICAgMzQsIDI1MSwgMTcxLCA1NywgMzQsIDIxMywgMjA4LCA1NywgMzQsIDI1MCwgMzgsIDU3LCAzNCwgMjIzLCA5OCwgNTcsIDM0LCAKLSAgICAyMzUsIDI0NywgNTcsIDM0LCAyMjAsIDcsIDU3LCAzNCwgMjMzLCAxMjAsIDU3LCAzNCwgMjQ5LCA5NSwgNTcsIDM0LCAyMTksIAotICAgIDE2OSwgNTcsIDM0LCAyMzAsIDE4NSwgNTcsIDM0LCAyMjMsIDEyMSwgNTcsIDM0LCAyMTMsIDE5MywgNTcsIDM0LCAyMjcsIAotICAgIDU2LCA1NywgMzQsIDIxNiwgNjEsIDU3LCAzNCwgMjQ2LCAzNSwgNTcsIDM0LCAyMjAsIDE3NSwgMjE3LCA5OCwgNTcsIDM0LCAKLSAgICAyNDYsIDcyLCAyNDksIDIwMywgNTcsIDM0LCAxODQsIDIxOSwgNDgsIDU3LCAzNCwgMTE3LCAyNDEsIDI0OSwgNTcsIDM0LCAKLSAgICAyMjAsIDE4MCwgNTcsIDM0LCAyNTEsIDk1LCA1NywgMzQsIDIxOSwgMjQ5LCA1NywgMzQsIDI1MSwgNjUsIDU3LCAzNCwgCi0gICAgMjE5LCA3OCwgNTcsIDM0LCAyNDEsIDIxMSwgNTcsIDM0LCAyNDIsIDEwLCA1NywgMzQsIDI0NywgNzcsIDU3LCAzNCwgMjQxLCAKLSAgICAyNTQsIDU3LCAzNCwgMjUxLCA4MSwgNTcsIDM0LCAyMjQsIDM5LCA1NywgMzQsIDIyMiwgMTA2LCA1NywgMzQsIDI0NywgCi0gICAgMTUxLCA1NywgMzQsIDI1MywgODQsIDU3LCAzNCwgMjE5LCAxNjYsIDU3LCAzNCwgMjI4LCAxNjIsIDU3LCAzNCwgMjE4LCAKLSAgICAyMzgsIDU3LCAzNCwgMjIyLCAxMjksIDU3LCAzNCwgMjMwLCAxOTgsIDU3LCAzNCwgMjE2LCAxOTMsIDU3LCAzNCwgMjMzLCAKLSAgICAxNDUsIDU3LCAzNCwgMjE5LCA2OSwgNTcsIDM0LCAyNDgsIDM5LCA1NywgMzQsIDIxNCwgNSwgNTcsIDM0LCAyNDcsIDEwMCwgCi0gICAgMjI4LCAxNjIsIDU3LCAzNCwgMjQ5LCAxNTQsIDU3LCAzNCwgMjQzLCAxOTQsIDU3LCAzNCwgMjQ5LCAyMTQsIDU3LCAzNCwgCi0gICAgMjE5LCA4MiwgNTcsIDM0LCAyMTQsIDI0LCA1NywgMzQsIDI0NCwgNjUsIDU3LCAzNCwgMjQ5LCAyMTEsIDU3LCAzNCwgMjQ0LCAKLSAgICAxMjksIDU3LCAzNCwgNTEsIDIxMywgMTY2LCA1NywgMzQsIDE1MSwgMjE2LCAxOTQsIDIxNiwgMTQ2LCA1NywgMzQsIDIyMCwgCi0gICAgMTcsIDU3LCAzNCwgMjQ0LCAxMzksIDU3LCAzNCwgMjQ5LCA4NCwgNTcsIDM0LCAyNDcsIDkwLCA1NywgMzQsIDIyNSwgNjIsIAotICAgIDU3LCAzNCwgMjM1LCAxMzUsIDU3LCAzNCwgMjMxLCAxMzEsIDU3LCAzNCwgMjE3LCA0MSwgNTcsIDM0LCAyMTgsIDE5MCwgCi0gICAgNTcsIDM0LCAyMzMsIDMsIDU3LCAzNCwgMjE1LCAxMDMsIDU3LCAzNCwgMjQ0LCA4OSwgNTcsIDM0LCAyNTEsIDEyMiwgNjUsIAotICAgIDI0OSwgMTg3LCA1NywgMzQsIDIyMCwgMTE0LCA1NywgMzQsIDI0NiwgNzIsIDIxNywgMTk1LCA1NywgMzQsIDIxMywgMjM4LCAKLSAgICA1NywgMzQsIDIyMCwgMzEsIDU3LCAzNCwgMjQ3LCAxMzksIDU3LCAzNCwgMjQ0LCAyMzksIDU3LCAzNCwgMjE5LCAxOTMsIAotICAgIDU3LCAzNCwgNjgsIDU3LCAzNCwgMjE5LCA3MSwgNTcsIDM0LCAyMTksIDE4MCwgNTcsIDM0LCAyMTYsIDIxMiwgNTcsIDM0LCAKLSAgICAyNDIsIDEyMywgNTcsIDM0LCAyNTAsIDE1MSwgNTcsIDM0LCAyMTksIDk5LCA1NywgMzQsIDI1MiwgNzMsIDU3LCAzNCwgCi0gICAgMjIzLCAxODQsIDU3LCAzNCwgMjIwLCA5MywgNTcsIDM0LCAyMzUsIDEzMCwgNTcsIDM0LCAyMjksIDE3MSwgNTcsIDM0LCAKLSAgICAyMjAsIDIzNywgNTcsIDM0LCAyNDQsIDExOCwgNTcsIDM0LCAyMjcsIDc1LCA1NywgMzQsIDI1NCwgMjcsIDU3LCAzNCwgCi0gICAgMjI1LCAxNjIsIDU3LCAzNCwgMjQ1LCAxODMsIDU3LCAzNCwgMjUxLCA2MCwgNTcsIDM0LCAyMzEsIDE1MSwgNTcsIDM0LCAKLSAgICAyMzAsIDI1MiwgNTcsIDM0LCAyMjEsIDc2LCA1NywgMzQsIDI1MywgMTY3LCA1NywgMzQsIDIzMCwgMTkzLCA1NywgMzQsIAotICAgIDIxNiwgMjMyLCA1NywgMzQsIDIyNywgMzEsIDU3LCAzNCwgMjUxLCAxMjQsIDU3LCAzNCwgMjE5LCA2NywgNTcsIDM0LCAKLSAgICAyNDksIDE2MywgNTcsIDM0LCAyNDIsIDExNiwgNTcsIDM0LCAyMTcsIDYwLCA1NywgMzQsIDIzNSwgMjE0LCA1NywgMzQsIAotICAgIDI1MSwgMTM0LCA1NywgMzQsIDIxNCwgNDIsIDI0NSwgMTAzLCA1NywgMzQsIDI0OSwgMTg2LCA1NywgMzQsIDIxMywgMjQ5LCAKLSAgICA1NywgMzQsIDIyMiwgODksIDU3LCAzNCwgMjQwLCAyMzUsIDU3LCAzNCwgMjE5LCAxOTAsIDU3LCAzNCwgMjE0LCAyNTQsIAotICAgIDU3LCAzNCwgMjUxLCAyNDgsIDU3LCAzNCwgMjI1LCAyMDUsIDU3LCAzNCwgMjUyLCA5MiwgNTcsIDM0LCAyMjAsIDIzMiwgCi0gICAgNTcsIDM0LCAyMjQsIDMsIDU3LCAzNCwgMjIzLCAzNywgNTcsIDM0LCAyNDQsIDEsIDU3LCAzNCwgMjUxLCAxMjMsIDU3LCAKLSAgICAzNCwgMjUwLCAxNjAsIDU3LCAzNCwgMjUxLCAxNDksIDU3LCAzNCwgMjMwLCAxOTUsIDU3LCAzNCwgMjE0LCA0MSwgNTcsIAotICAgIDM0LCAyNDksIDIyMCwgNTcsIDM0LCAyMTMsIDIyMSwgNTcsIDM0LCAyNDcsIDEzMiwgNTcsIDM0LCAyMTQsIDE0MiwgNTcsIAotICAgIDM0LCAyNDIsIDE0MiwgNTcsIDM0LCAyMzIsIDE5MCwgNTcsIDM0LCAyNDMsIDY0LCA1NywgMzQsIDIzMCwgMTg4LCA1NywgCi0gICAgMzQsIDIyMCwgMjIsIDU3LCAzNCwgMjIwLCAxNzUsIDIxOCwgMjYsIDI1MSwgMTYwLCA1NywgMzQsIDIyNCwgNTAsIDU3LCAKLSAgICAzNCwgMjUxLCAxMzAsIDU3LCAzNCwgMjEzLCAxODUsIDU3LCAzNCwgMjQ0LCAxNTgsIDU3LCAzNCwgMjMzLCA3NiwgNTcsIAotICAgIDM0LCAyMTgsIDcsIDIzMywgNzYsIDU3LCAzNCwgMjMzLCA3MiwgNTcsIDM0LCAyMTksIDIxNywgNTcsIDM0LCAyMzMsIDc3LCAKLSAgICA1NywgMzQsIDIxMywgMjI0LCA1NywgMzQsIDI0NCwgMTUsIDU3LCAzNCwgMjQ1LCAxNzMsIDU3LCAzNCwgMjQxLCAyMTksIAotICAgIDU3LCAzNCwgMjQzLCAyMjYsIDU3LCAzNCwgMjQwLCAyMzIsIDU3LCAzNCwgMjUxLCAxMTksIDU3LCAzNCwgMjE4LCAxNCwgCi0gICAgNTcsIDM0LCAyNDIsIDE2LCA1NywgMzQsIDI0NCwgODIsIDU3LCAzNCwgMjIyLCAxOTcsIDIxMywgMjIxLCA1NywgMzQsIAotICAgIDI1MCwgMTUzLCA1NywgMzQsIDI0MiwgMTk4LCA1NywgMzQsIDI0NCwgNTksIDU3LCAzNCwgMjUxLCAxNjAsIDU3LCAzNCwgCi0gICAgMjIyLCAxNzIsIDU3LCAzNCwgMjQ4LCAyNSwgNTcsIDM0LCAyMTMsIDI0MywgNTcsIDM0LCAyNDEsIDE5NCwgNTcsIDM0LCAKLSAgICAyMTMsIDMyLCA1NywgMzQsIDIzMSwgNSwgNTcsIDM0LCAyNTEsIDE0NCwgNTcsIDM0LCAyNDUsIDExMywgNTcsIDM0LCAyNDMsIAotICAgIDIxNCwgNTcsIDM0LCAyMTYsIDE2NywgNTcsIDM0LCAyNDYsIDM3LCA1NywgMzQsIDIyNCwgMzMsIDU3LCAzNCwgMjI4LCAKLSAgICAxNjQsIDU3LCAzNCwgMjQ1LCA4LCA1NywgMzQsIDIxNiwgMjI4LCA1NywgMzQsIDI0NiwgNTAsIDU3LCAzNCwgMjE2LCA1NSwgCi0gICAgNTcsIDM0LCAyNDQsIDE3LCAxMDUsIDI0NywgMjQ0LCAxMzcsIDQyLCAyMTEsIDIxMSwgMjIzLCAxNDgsIDEwNSwgMjQ3LCAKLSAgICAyNDQsIDEzNywgNzgsIDIxMSwgMjExLCA1NSwgMTA1LCAyNDcsIDI0NCwgMTM3LCA0MiwgMjExLCAyMTEsIDIzMSwgMzcsIAotICAgIDI0LCAyMjMsIDE0OCwgMTA1LCAyNDcsIDI0NCwgMTM3LCA3OCwgMjExLCAyMTEsIDIzMSwgMzcsIDI0LCA1NSwgMTA1LCAKLSAgICAyNDcsIDI0NCwgMTM3LCAyNDMsIDIwMCwgMjE4LCAyMTAsIDEwNSwgMjQ3LCAyNDQsIDEzNywgMjE4LCAyMTEsIDI0MywgCi0gICAgMjEzLCA0OSwgMTA1LCAyNDcsIDI0NCwgMTM3LCAyMTgsIDIxMSwgMjQzLCAyMTMsIDU1LCAxMDUsIDI0NywgMjQ0LCAxMzcsIAotICAgIDIxOCwgMjExLCAyNDMsIDIxMywgMjMzLCA3MCwgMTA1LCAyNDcsIDI0NCwgMTM3LCAyMTgsIDIxMSwgMjQzLCAyMTMsIDIxNSwgCi0gICAgMTMxLCAyMzMsIDcwLCAxMDUsIDI0NywgMjQ0LCAxMzcsIDIxOCwgMjExLCAyNDMsIDIxMywgMjE1LCAxMzEsIDIyMywgMTQ4LCAKLSAgICAxMDUsIDI0NywgMjQ0LCAxMzcsIDIxOCwgMjExLCAyNDMsIDIxMywgMjMyLCAxNjMsIDIzMywgNzAsIDEwNSwgMjQ3LCAyNDQsIAotICAgIDEzNywgMjI2LCAyNDYsIDEwNSwgMjE5LCAyMDYsIDEwNSwgMjQ5LCAxNTcsIDEwNSwgMjQzLCAyMDAsIDIxOSwgNjksIDI0NywgCi0gICAgMTI5LCA3NywgMjM1LCAxMzEsIDIzNSwgMjMzLCAyMTksIDk4LCA4NywgMTA1LCAyMzUsIDE1NiwgNzcsIDEwNSwgMjQ5LCAKLSAgICAxODksIDc3LCAxMDUsIDUwLCAyMTIsIDc5LCA0MiwgMjU0LCAxOSwgMTI1LCA0NiwgMjU0LCAxOSwgMTI1LCA0MiwgNTEsIAotICAgIDI1NCwgMTksIDEyNSwgNDYsIDUxLCAyNTQsIDE5LCAxMjUsIDQyLCAyNDksIDEwMCwgMTI1LCA0NiwgMjQ5LCAxMDAsIDEyNSwgCi0gICAgNDIsIDY3LCAyNDksIDEwMCwgMTI1LCA0NiwgNjcsIDI0OSwgMTAwLCAxMjUsIDQyLCA4MywgMjMzLCA0NCwgMTI1LCA0NiwgCi0gICAgODMsIDIzMywgNDQsIDEyNSwgMjI1LCAxMTcsIDc3LCAyNDMsIDgsIDc3LCA0MiwgMjE2LCAyMTksIDIyMCwgMjMzLCAxMjUsIAotICAgIDQ2LCAyMTYsIDIxOSwgMjIwLCAyMzMsIDEyNSwgNDIsIDY3LCAyMzMsIDQ0LCAxMjUsIDQ2LCA2NywgMjMzLCA0NCwgMTI1LCAKLSAgICA0MiwgNjcsIDIxNiwgMjE5LCAyMjAsIDIzMywgMTI1LCA0NiwgNjcsIDIxNiwgMjE5LCAyMjAsIDIzMywgMTI1LCA0MiwgNjcsIAotICAgIDQxLCAxMjUsIDQ2LCA2NywgNDEsIDEyNSwgMjE0LCAyMCwgMjQ4LCAxMDEsIDIyMywgMjAyLCA1MSwgMjI1LCA3MiwgMjI0LCAKLSAgICAxNDMsIDc3LCA1MSwgMjI1LCA3MiwgMjI0LCAxNDMsIDc3LCAxMTUsIDUxLCAyMjUsIDcyLCAyMjQsIDE0MywgNzcsIDIyNSwgCi0gICAgMTE3LCAxNTIsIDI0NCwgMTU4LCAyNDEsIDI0NywgMjI4LCA1NCwgMTE2LCAyNDEsIDI0NywgMjI4LCA1NCwgMTA5LCAyNDEsIAotICAgIDI0NywgMjI4LCA1NCwgMTY2LCAyNDEsIDI0NywgMjI4LCA1NCwgMTYzLCAyNDEsIDI0NywgMjI4LCA1NCwgMTgwLCAyNDEsIAotICAgIDI0NywgMjI4LCA1NCwgMTg5LCAyNDEsIDI0NywgMjI4LCA1NCwgMTk4LCAyNDEsIDI0NywgMjI4LCA1NCwgMTk1LCAyNDEsIAotICAgIDI0NywgMjI4LCA1NCwgMjAwLCAxMDUsIDIzMywgMjksIDE2MCwgNzcsIDEwNSwgMjIzLCAxMjUsIDE2MCwgNzcsIDEwNSwgCi0gICAgMjQ3LCAyNTEsIDE2MCwgNzcsIDEwNSwgMjQ1LCA4NywgMTYwLCA3NywgMjMsIDIyMCwgODEsIDYyLCAxNjAsIDc3LCAyMywgCi0gICAgNTEsIDYyLCAxNjAsIDc3LCAyMTQsIDE2LCAyNDgsIDEwMSwgNzEsIDIzNCwgMjM4LCAyMjMsIDIyOCwgNzcsIDcxLCAyMzQsIAotICAgIDIzOCwgMjIzLCAyMjgsIDIsIDIxNCwgMTE2LCAyMTksIDIxOCwgNzcsIDcxLCAyMzQsIDIzOCwgMjIzLCAyMjgsIDE1MiwgCi0gICAgMjE1LCAxMzEsIDI0MiwgOSwgNzEsIDIzNCwgMjM4LCAyMjMsIDIyOCwgMiwgMjE0LCAxMTYsIDIxOSwgMjE4LCAxNTIsIAotICAgIDIxNSwgMTMxLCAyNDIsIDksIDcxLCAyMzQsIDIzOCwgMjIzLCAyMjgsIDE1MiwgMjMyLCAxNjMsIDI0MiwgOSwgMzYsIDIyNSwgCi0gICAgMTE3LCA3NywgMTA1LCAyMDEsIDIzMiwgMjQzLCAyNDQsIDExNSwgMjIxLCA1OCwgODcsIDI0MSwgMjQ3LCAyMjgsIDU0LCAKLSAgICAyMTcsIDIwMCwgMjQxLCAyNDcsIDIyOCwgNTQsIDIxNiwgMzgsIDI0MSwgMjQ3LCAyMjgsIDU0LCAyMTcsIDExNSwgNzEsIAotICAgIDEwNSwgMjM1LCAxNTYsIDc3LCAyMzEsIDIwMywgNzcsIDIyNiwgMTI3LCAyNTQsIDQ5LCA3NywgMTA1LCA0MywgMjM1LCAKLSAgICAyMzUsIDEwNSwgMTUxLCAyNDQsIDc1LCAyMTksIDIwNiwgMTQyLCAxLCAzLCA2MSwgMTQyLCAxLCA2MSwgMTQyLCAxLCAzLCAKLSAgICA3MiwgMTQyLCAxLCA3MiwgMTQyLCAxLCAzLCA2OSwgMTQyLCAxLCA2OSwgMTQyLCAxLCAzLCA3NCwgMTQyLCAxLCA3NCwgCi0gICAgMTQyLCAxLCAzLCA3NSwgMTQyLCAxLCA3NSwgMTQyLCAxLCAxODEsIDE0MiwgMSwgMjQzLCAxMTAsIDE0MiwgMSwgMjM0LCAKLSAgICAxMDEsIDE0MiwgMSwgMjQyLCAxOTAsIDE0MiwgMSwgMjMzLCAyMzgsIDE0MiwgMSwgMjQyLCA5MiwgMTQyLCAxLCAyMzQsIAotICAgIDE4OCwgMTQyLCAxLCAyNDMsIDM4LCAxNDIsIDEsIDIzNCwgMzcsIDE0MiwgMSwgMjQyLCAxNTAsIDE0MiwgMSwgMjIyLCAKLSAgICAyMDIsIDE0MiwgMSwgMjEyLCAxMDksIDE0MiwgMSwgMjIwLCAxMTcsIDE0MiwgMSwgMjEyLCAzNywgMTQyLCAxLCAyMTksIAotICAgIDI3LCAxNDIsIDEsIDIxMiwgOCwgMTQyLCAxLCAyMjIsIDEwMCwgMTQyLCAxLCAyMTIsIDg3LCAxNDIsIDEsIDIxOSwgMjQyLCAKLSAgICAxNDIsIDEsIDIxMiwgMTYsIDE0MiwgMSwgMjE4LCA1MiwgMTQyLCAxLCAyNDgsIDE2NCwgMTQyLCAxLCAyMTcsIDcxLCAxNDIsIAotICAgIDEsIDI0NywgMjExLCAxNDIsIDEsIDMsIDIxNiwgODIsIDE0MiwgMSwgMjE2LCA4MiwgMTQyLCAxLCAyNDYsIDMzLCAxNDIsIAotICAgIDEsIDIxNywgMjI5LCAxNDIsIDEsIDI0OCwgNDEsIDE0MiwgMSwgMTA4LCAxNDIsIDEsIDI0NywgOTksIDE0MiwgMSwgMjA1LCAKLSAgICAxNDIsIDEsIDIyOSwgNjQsIDE0MiwgMSwgMjI4LCA5MiwgMTQyLCAxLCAyMjksIDE4NywgMTQyLCAxLCAyMjgsIDE4NSwgCi0gICAgMTQyLCAxLCAxNTksIDE0MiwgMSwgMjUyLCAxMDcsIDE0MiwgMSwgMTkzLCAxNDIsIDEsIDI0MSwgMTY1LCAxNDIsIDEsIAotICAgIDI1MSwgMTg0LCAxNDIsIDEsIDIyNSwgMjQwLCAxNDIsIDEsIDI0MCwgMjEyLCAxNDIsIDEsIDI1MSwgNTQsIDE0MiwgMSwgCi0gICAgMjI1LCAzNSwgMTQyLCAxLCAyNDEsIDIyMiwgMTQyLCAxLCAyNTEsIDI1MSwgMTQyLCAxLCAyMjYsIDk2LCAxNDIsIDEsIAotICAgIDI0MSwgNTQsIDE0MiwgMSwgMjUxLCAxMjgsIDE0MiwgMSwgMjI1LCAxNTAsIDE0MiwgMSwgMTg4LCAxNDIsIDEsIDIzMSwgCi0gICAgNDIsIDE0MiwgMSwgMjMwLCAxNzIsIDE0MiwgMSwgMjMxLCAxNTYsIDE0MiwgMSwgMjMwLCAyMzEsIDE0MiwgMSwgMywgMTg2LCAKLSAgICAxNDIsIDEsIDE4NiwgMTQyLCAxLCAzLCAyMTIsIDIwMywgMTQyLCAxLCAyMTIsIDIwMywgMTQyLCAxLCAzLCAyMTIsIDIzNSwgCi0gICAgMTQyLCAxLCAyMTIsIDIzNSwgMTQyLCAxLCAyMDMsIDE0MiwgMSwgMjIzLCAxODgsIDE0MiwgMSwgMjIzLCA1MSwgMTQyLCAxLCAKLSAgICAyMjQsIDIxLCAxNDIsIDEsIDIyMywgMTEyLCAxNDIsIDEsIDMsIDIxNCwgNDksIDE0MiwgMSwgMjE0LCA0OSwgMTQyLCAxLCAKLSAgICAyMTMsIDIzNSwgMTQyLCAxLCAyMTQsIDYsIDE0MiwgMSwgMjEzLCAyMTQsIDE0MiwgMSwgMjA0LCAxNDIsIDEsIDIxNCwgOTksIAotICAgIDE0MiwgMSwgMywgMTgxLCAxNDIsIDEsIDMsIDIzNCwgMTg4LCAzNywgMjM0LCAyMDYsIDIxNCwgMTE2LCAyMTksIDIxOCwgCi0gICAgNzcsIDM3LCAyMzQsIDIwNiwgMjIxLCA3NSwgMjE5LCAyMTgsIDc3LCAyMzQsIDIwNiwgMjE0LCAxMTYsIDIxOSwgMjE4LCAKLSAgICA3NywgMjM0LCAyMDYsIDIyMSwgNzUsIDIxOSwgMjE4LCA3NywgMTQyLCAyMzUsIDE1NiwgNzcsIDE0MiwgMjE0LCAxMTYsIAotICAgIDIzNSwgMTU2LCA3NywgMTQyLCAyNDcsIDE3MywgMjEyLCAyMTYsIDIzNCwgMjA2LCA1MSwgMjQwLCAxNjAsIDU2LCAxLCAzLCAKLSAgICA2MSwgNTYsIDEsIDYxLCA1NiwgMSwgMywgNzIsIDU2LCAxLCA3MiwgNTYsIDEsIDMsIDY5LCA1NiwgMSwgNjksIDU2LCAxLCAKLSAgICAzLCA3NCwgNTYsIDEsIDc0LCA1NiwgMSwgMywgNzUsIDU2LCAxLCA3NSwgNTYsIDEsIDE4MSwgNTYsIDEsIDI0MywgMTEwLCAKLSAgICA1NiwgMSwgMjM0LCAxMDEsIDU2LCAxLCAyNDIsIDE5MCwgNTYsIDEsIDIzMywgMjM4LCA1NiwgMSwgMjQyLCA5MiwgNTYsIDEsIAotICAgIDIzNCwgMTg4LCA1NiwgMSwgMjQzLCAzOCwgNTYsIDEsIDIzNCwgMzcsIDU2LCAxLCAyNDIsIDE1MCwgNTYsIDEsIDIyMiwgCi0gICAgMjAyLCA1NiwgMSwgMjEyLCAxMDksIDU2LCAxLCAyMjAsIDExNywgNTYsIDEsIDIxMiwgMzcsIDU2LCAxLCAyMTksIDI3LCAKLSAgICA1NiwgMSwgMjEyLCA4LCA1NiwgMSwgMjIyLCAxMDAsIDU2LCAxLCAyMTIsIDg3LCA1NiwgMSwgMjE5LCAyNDIsIDU2LCAxLCAKLSAgICAyMTIsIDE2LCA1NiwgMSwgMjE4LCA1MiwgNTYsIDEsIDI0OCwgMTY0LCA1NiwgMSwgMjE3LCA3MSwgNTYsIDEsIDI0NywgCi0gICAgMjExLCA1NiwgMSwgMywgMjE2LCA4MiwgNTYsIDEsIDIxNiwgODIsIDU2LCAxLCAyNDYsIDMzLCA1NiwgMSwgMjE3LCAyMjksIAotICAgIDU2LCAxLCAyNDgsIDQxLCA1NiwgMSwgMTA4LCA1NiwgMSwgMjQ3LCA5OSwgNTYsIDEsIDIwNSwgNTYsIDEsIDIyOSwgNjQsIAotICAgIDU2LCAxLCAyMjgsIDkyLCA1NiwgMSwgMjI5LCAxODcsIDU2LCAxLCAyMjgsIDE4NSwgNTYsIDEsIDE1OSwgNTYsIDEsIDI1MiwgCi0gICAgMTA3LCA1NiwgMSwgMTkzLCA1NiwgMSwgMjQxLCAxNjUsIDU2LCAxLCAyNTEsIDE4NCwgNTYsIDEsIDIyNSwgMjQwLCA1NiwgCi0gICAgMSwgMjQwLCAyMTIsIDU2LCAxLCAyNTEsIDU0LCA1NiwgMSwgMjI1LCAzNSwgNTYsIDEsIDI0MSwgMjIyLCA1NiwgMSwgMjUxLCAKLSAgICAyNTEsIDU2LCAxLCAyMjYsIDk2LCA1NiwgMSwgMjQxLCA1NCwgNTYsIDEsIDI1MSwgMTI4LCA1NiwgMSwgMjI1LCAxNTAsIAotICAgIDU2LCAxLCAxODgsIDU2LCAxLCAyMzEsIDQyLCA1NiwgMSwgMjMwLCAxNzIsIDU2LCAxLCAyMzEsIDE1NiwgNTYsIDEsIDIzMCwgCi0gICAgMjMxLCA1NiwgMSwgMywgMTg2LCA1NiwgMSwgMTg2LCA1NiwgMSwgMywgMjEyLCAyMDMsIDU2LCAxLCAyMTIsIDIwMywgNTYsIAotICAgIDEsIDMsIDIxMiwgMjM1LCA1NiwgMSwgMjEyLCAyMzUsIDU2LCAxLCAyMDMsIDU2LCAxLCAyMjMsIDE4OCwgNTYsIDEsIDIyMywgCi0gICAgNTEsIDU2LCAxLCAyMjQsIDIxLCA1NiwgMSwgMjIzLCAxMTIsIDU2LCAxLCAzLCAyMTQsIDQ5LCA1NiwgMSwgMjE0LCA0OSwgCi0gICAgNTYsIDEsIDIxMywgMjM1LCA1NiwgMSwgMjE0LCA2LCA1NiwgMSwgMjEzLCAyMTQsIDU2LCAxLCAyMDQsIDU2LCAxLCAyMTQsIAotICAgIDk5LCA1NiwgMSwgMywgMTgxLCA1NiwgMSwgMywgMjM0LCAxODgsIDU2LCAxLCAyMTUsIDEsIDU2LCAxLCAyMTQsIDE1NCwgCi0gICAgNTYsIDEsIDIxNCwgMjMyLCA1NiwgMSwgMjE0LCAxMTksIDU2LCAyMzEsIDM3LCAyNDcsIDc0LCAyMzQsIDIwNiwgMjI1LCAKLSAgICA1NywgMjE5LCAyMTgsIDc3LCA1NiwgMjM1LCAxNTYsIDc3LCA1NiwgMjE0LCAxMTYsIDIzNSwgMTU2LCA3NywgNTYsIDI0NywgCi0gICAgMTczLCAyMzQsIDgsIDIwMiwgMSwgMjUzLCA3NCwgMjAyLCAxLCAyMjYsIDIyOSwgMjAyLCAxLCAxODMsIDIwMiwgMSwgMjQ0LCAKLSAgICAyMzAsIDIwMiwgMSwgMjQ5LCAzLCAyMDIsIDEsIDIxOCwgOTksIDIwMiwgMSwgMjA0LCAyMDIsIDEsIDE1MCwgMjAyLCAxLCAKLSAgICAyNDMsIDE3NywgMjAyLCAxLCAyMzUsIDI3LCAyMDIsIDEsIDI0MiwgNDEsIDIwMiwgMSwgMjM1LCAxNDIsIDIwMiwgMSwgCi0gICAgMjI0LCAyNDAsIDIwMiwgMSwgMjEzLCAxNjYsIDIwMiwgMSwgMjEyLCA3NiwgMjAyLCAxLCAyNTAsIDkzLCAyMDIsIDEsIAotICAgIDIyMSwgMjYsIDIwMiwgMSwgMTQ5LCAyMDIsIDEsIDIxMiwgMTUyLCAyMDIsIDEsIDI1MCwgMjUyLCAyMDIsIDEsIDE5NywgCi0gICAgMjAyLCAxLCA2MSwgMjAyLCAxLCA3NSwgMjAyLCAxLCA3NCwgMjAyLCAxLCAyNDUsIDE1NCwgMjAyLCAxLCAyNTQsIDEwOCwgCi0gICAgMjAyLCAxLCAyNDUsIDE1MiwgMjAyLCAxLCAyNTMsIDEwOCwgMjAyLCAxLCAyMjcsIDIsIDIwMiwgMSwgMjU0LCAzMiwgMjAyLCAKLSAgICAxLCAyNDUsIDEwOCwgMjAyLCAxLCAyNTQsIDI0LCAyMDIsIDEsIDI0NSwgOTYsIDIwMiwgMSwgMjQ1LCA1NSwgMjAyLCAxLCAKLSAgICA3MiwgMjAyLCAxLCA2OSwgMjAyLCAxLCAyMzUsIDE1NCwgMjAyLCAxLCAyMTUsIDc5LCAyMDIsIDEsIDIyOSwgMTYxLCAyMDIsIAotICAgIDEsIDI0MiwgMTU0LCAyMDIsIDEsIDIzNiwgMjksIDIzLCAxLCAyMzQsIDY3LCAyMywgMSwgMjE5LCAxNTAsIDIzLCAxLCAKLSAgICAyMzQsIDYwLCAyMywgMSwgMjI5LCA1NywgMjMsIDEsIDIyOSwgNTUsIDIzLCAxLCAyMjksIDU0LCAyMywgMSwgMjE3LCA1NSwgCi0gICAgMjMsIDEsIDIxOSwgMTM5LCAyMywgMSwgMjIzLCAxNzksIDIzLCAxLCAyMjMsIDE3NCwgMjMsIDEsIDIyMywgMTcxLCAyMywgCi0gICAgMSwgMjIzLCAxNjQsIDIzLCAxLCAyMjMsIDE1OSwgMjMsIDEsIDIyMywgMTU0LCAyMywgMSwgMjIzLCAxNjUsIDIzLCAxLCAKLSAgICAyMjMsIDE3NywgMjMsIDEsIDIzMSwgMzAsIDIzLCAxLCAyMjUsIDIyNywgMjMsIDEsIDIxOSwgMTQ3LCAyMywgMSwgMjI1LCAKLSAgICAyMTYsIDIzLCAxLCAyMjAsIDc2LCAyMywgMSwgMjE5LCAxNDQsIDIzLCAxLCAyMzYsIDUxLCAyMywgMSwgMjQ5LCAyMzksIAotICAgIDIzLCAxLCAyMTksIDE1NCwgMjMsIDEsIDI1MCwgNDMsIDIzLCAxLCAyMzQsIDExNiwgMjMsIDEsIDIxNywgMTI2LCAyMywgMSwgCi0gICAgMjI2LCA3LCAyMywgMSwgMjQxLCAxNTgsIDIzLCAxLCA2MSwgMjMsIDEsIDI1NCwgMTQ4LCAyMywgMSwgMTg2LCAyMywgMSwgCi0gICAgMjEzLCA4MCwgMjMsIDEsIDI0NSwgNzYsIDIzLCAxLCA3NCwgMjMsIDEsIDIxMywgMjcsIDIzLCAxLCAyMTMsIDM4LCAyMywgCi0gICAgMSwgNzUsIDIzLCAxLCAyMTQsIDQ5LCAyMywgMSwgMjE0LCA0NiwgMjMsIDEsIDIyNywgOTksIDIzLCAxLCAyMTIsIDIzNSwgCi0gICAgMjMsIDEsIDY5LCAyMywgMSwgMjEzLCAyNTIsIDIzLCAxLCAyMTQsIDYsIDIzLCAxLCAyMTMsIDIzNSwgMjMsIDEsIDIxMiwgCi0gICAgMjAzLCAyMywgMSwgMjQ1LCAyMiwgMjMsIDEsIDIxMiwgMjU1LCAyMywgMSwgNzIsIDIzLCAyNDQsIDcyLCAyMywgMSwgMjE5LCAKLSAgICAxNDgsIDIzLCAxLCAyMjksIDQ3LCAyMywgMSwgMjI5LCA0OSwgMjMsIDEsIDIyOSwgNTIsIDIzLCAxLCAyMjMsIDE3MiwgMjMsIAotICAgIDEsIDIyMywgMTUzLCAyMywgMSwgMjIzLCAxNjEsIDIzLCAxLCAyMjMsIDE2NiwgMjMsIDEsIDIyMywgMTUxLCAyMywgMSwgCi0gICAgMjMxLCAyMywgMjMsIDEsIDIzMSwgMjAsIDIzLCAxLCAyMzEsIDI0LCAyMywgMSwgMjM0LCAyMjYsIDIzLCAxLCAyMjUsIAotICAgIDIyMiwgMjMsIDEsIDIyNSwgMjA4LCAyMywgMSwgMjI1LCAyMTQsIDIzLCAxLCAyMjUsIDIxMSwgMjMsIDEsIDIyNSwgMjI1LCAKLSAgICAyMywgMSwgMjI1LCAyMDksIDIzLCAxLCAyMzQsIDIyNCwgMjMsIDEsIDIzNCwgMjIyLCAyMywgMSwgMjIwLCA2OSwgMjMsIDEsIAotICAgIDIyMCwgNjcsIDIzLCAxLCAyMjAsIDU5LCAyMywgMSwgMjIwLCA2NCwgMjMsIDEsIDIyMCwgNzQsIDIzLCAxLCAyMjYsIDE2MCwgCi0gICAgMjMsIDEsIDIxOSwgMTUxLCAyMywgMSwgMjEzLCAxNywgMjMsIDEsIDIxMywgMTMsIDIzLCAxLCAyMTMsIDE0LCAyMywgMSwgCi0gICAgMjM0LCAyMjUsIDIzLCAxLCAyMTksIDE1MiwgMjMsIDEsIDIxMywgMjMsIDIzLCAxLCAyMTIsIDIyOSwgMjMsIDEsIDIxMiwgCi0gICAgMjI4LCAyMywgMSwgMjEyLCAyMzEsIDIzLCAxLCAyMTIsIDE5NCwgMjMsIDEsIDIxMiwgMTk1LCAyMywgMSwgMjEyLCAxOTgsIAotICAgIDIzLCAxLCAyNTMsIDIwNCwgMjMsIDEsIDI1MywgMTk4LCAxMDUsIDI1NCwgMTAsIDIzMiwgMjMyLCA3NywgMTA1LCAyNTQsIAotICAgIDEwLCAyMjMsIDIwMywgNzcsIDEwNSwgMjU0LCAxMCwgMTIyLCA3NywgMTA1LCAyNTQsIDEwLCAxMTcsIDc3LCAxMDUsIDI1NCwgCi0gICAgMTAsIDEzMywgNzcsIDEwNSwgMjU0LCAxMCwgMjQzLCAyMzcsIDc3LCAxMDUsIDI1NCwgMTAsIDIxNiwgMjI3LCA3NywgMTA1LCAKLSAgICAyNTQsIDEwLCAyMzEsIDM3LCA3NywgMTA1LCAyNTQsIDEwLCAyNTEsIDEwMSwgNzcsIDEwNSwgMjU0LCAxMCwgMjQ0LCA2MSwgCi0gICAgNzcsIDEwNSwgMjU0LCAxMCwgMjIyLCA5NSwgNzcsIDEwNSwgMjU0LCAxMCwgMjE3LCAxMjIsIDc3LCAxMDUsIDI1NCwgMTAsIAotICAgIDI0MywgMjMwLCA3NywgMTA1LCAyNTQsIDEwLCAyNDEsIDIwOCwgNzcsIDEwNSwgMjU0LCAxMCwgMjQ1LCAxODAsIDc3LCAKLSAgICAxMDUsIDI1NCwgMTAsIDIzMSwgMjQ5LCA3NywgMjAyLCAxLCAyNTEsIDU0LCAyMDIsIDEsIDIxMiwgMzcsIDIwMiwgMSwgCi0gICAgMjM1LCAxMTAsIDIwMiwgMSwgMjQyLCA5MiwgMjAyLCAxLCAyNDUsIDE2NSwgMjAyLCAxLCAyNDUsIDkzLCAyMDIsIDEsIAotICAgIDIyNywgNDksIDIwMiwgMSwgMjI3LCA1MywgMjAyLCAxLCAyMzUsIDE3NywgMjAyLCAxLCAyNTQsIDEyLCAyMDIsIDEsIDIzNSwgCi0gICAgMjIxLCAyMDIsIDEsIDIxNSwgMTM5LCAyMDIsIDEsIDIzNiwgMTEsIDIwMiwgMSwgMjI5LCAxNDIsIDIwMiwgMSwgMjU0LCAKLSAgICAxMDIsIDIwMiwgMSwgMjUzLCAxMDMsIDIwMiwgMSwgMjU0LCA0NSwgMjAyLCAxLCAyMjcsIDcwLCAyMDIsIDEsIDIyNywgNTUsIAotICAgIDIwMiwgMSwgMjM1LCAyMTgsIDIwMiwgNDAsIDEsIDIyNiwgMjI5LCAyMDIsIDQwLCAxLCAyMTgsIDk5LCAyMDIsIDQwLCAxLCAKLSAgICAyMzUsIDI3LCAyMDIsIDQwLCAxLCAyNDIsIDQxLCAyMDIsIDEsIDI0MiwgMjI2LCAyMDIsIDEsIDIzMywgMjYsIDIwMiwgMSwgCi0gICAgMjExLCAyNDksIDksIDIxOSwgNDUsIDIxOCwgOTksIDksIDIxOSwgNDUsIDIxMywgMjQ1LCA5LCAyMTksIDQ1LCAyMTMsIAotICAgIDE0NiwgOSwgMjE5LCA0NSwgMjUxLCA4LCA5LCAyMTksIDQ1LCAyMTgsIDE5OSwgOSwgMjE5LCA0NSwgMjQwLCAxNTAsIDksIAotICAgIDIxOSwgNDUsIDI0MCwgMTU0LCA5LCAyMTksIDQ1LCAyNDAsIDIxOCwgOSwgMjE5LCA0NSwgMjQwLCAxNTEsIDksIDIxOSwgCi0gICAgNDUsIDIxOCwgMTAyLCA5LCAyMTksIDQ1LCAyNDAsIDE1MywgOSwgMjE5LCA0NSwgMjQwLCAxNDksIDksIDIxOSwgNDUsIAotICAgIDI0MCwgMjE2LCA5LCAyMTksIDQ1LCAyNDAsIDE1MiwgOSwgMjE5LCA0NSwgMjQwLCAxNDgsIDksIDIxOSwgNDUsIDIwNCwgOSwgCi0gICAgMjE5LCA0NSwgMjQyLCA0MSwgOSwgMjE5LCA0NSwgMTk3LCA5LCAyMTksIDQ1LCAyMjYsIDIyOSwgOSwgMjE5LCA0NSwgMjE5LCAKLSAgICAyMDgsIDksIDIxOSwgNDUsIDI0OSwgMywgOSwgMjE5LCA0NSwgMjQwLCAxNTUsIDksIDIxOSwgNDUsIDI0MSwgMTc1LCA5LCAKLSAgICAyMTksIDQ1LCAyMTgsIDExMSwgOSwgMjE5LCA0NSwgMjE4LCAxNzgsIDksIDIxOSwgNDUsIDIxOSwgMTA3LCA5LCAyMTksIAotICAgIDQ1LCAyMjEsIDMxLCA5LCAyMTksIDQ1LCAyMjYsIDk4LCA5LCAyMTksIDQ1LCAyMjQsIDI0MiwgOSwgMjE5LCA0NSwgMjE2LCAKLSAgICAyNTMsIDksIDIxOSwgNDUsIDIxOCwgMTAxLCA5LCAyMTksIDQ1LCAyMTgsIDE4OSwgOSwgMjE5LCA0NSwgMjQwLCAxNjIsIDksIAotICAgIDIxOSwgNDUsIDI0MCwgMTQ3LCA5LCAyMTksIDQ1LCAyMjYsIDI1LCA5LCAyMTksIDQ1LCAyMjQsIDI0MCwgNTYsIDEsIDMsIAotICAgIDIzMywgMjM4LCA1NiwgMSwgMywgMjIwLCAxMTcsIDU2LCAxLCAzLCAyMTksIDI3LCA1NiwgMSwgMywgMTA4LCA1NiwgMSwgMywgCi0gICAgMjI4LCA5MiwgNTYsIDEsIDMsIDE1OSwgNTYsIDEsIDMsIDI0MSwgMTY1LCA1NiwgMSwgMywgMjQwLCAyMTIsIDU2LCAxLCAzLCAKLSAgICAyNDEsIDIyMiwgNTYsIDEsIDMsIDI0MSwgNTQsIDU2LCAxLCAzLCAyMzAsIDE3MiwgNTYsIDEsIDMsIDIwMywgNTYsIDEsIDMsIAotICAgIDIyMywgMTg4LCA1NiwgMSwgMywgMjIzLCA1MSwgNTYsIDEsIDMsIDIyNCwgMjEsIDU2LCAxLCAzLCAyMjMsIDExMiwgODYsIAotICAgIDIzLCAyMzQsIDY3LCA4NiwgMjMsIDIyOSwgNTcsIDg2LCAyMywgMjE3LCA1NSwgODYsIDIzLCAyMjMsIDE3OSwgODYsIDIzLCAKLSAgICAyMzEsIDMwLCA4NiwgMjMsIDIyNSwgMjI3LCA4NiwgMjMsIDIyMCwgNzYsIDg2LCAyMywgMjM2LCA1MSwgODYsIDIzLCAyNDksIAotICAgIDIzOSwgODYsIDIzLCAyNTAsIDQzLCA4NiwgMjMsIDIzNCwgMTE2LCA4NiwgMjMsIDIxNywgMTI2LCA4NiwgMjMsIDIyNiwgNywgCi0gICAgODYsIDIzLCAyNDEsIDE1OCwgODYsIDIzLCAyMzQsIDY4LCA2MSwgODYsIDIzLCAyMjksIDU4LCA2MSwgODYsIDIzLCAyMTcsIAotICAgIDU2LCA2MSwgODYsIDIzLCAyMjMsIDE4MCwgNjEsIDg2LCAyMywgMjMxLCAzMSwgNjEsIDg2LCAyMywgMjI1LCAyMjgsIDYxLCAKLSAgICA4NiwgMjMsIDIyMCwgNzcsIDYxLCA4NiwgMjMsIDIzNiwgNTIsIDYxLCA4NiwgMjMsIDI0OSwgMjQwLCA2MSwgODYsIDIzLCAKLSAgICAyNTAsIDQ0LCA2MSwgODYsIDIzLCAyMzQsIDExNywgNjEsIDg2LCAyMywgMjE3LCAxMjcsIDYxLCA4NiwgMjMsIDIyNiwgOCwgCi0gICAgNjEsIDg2LCAyMywgMjQxLCAxNTksIDYxLCA4NiwgMjMsIDI0OSwgMjQwLCA2OSwgODYsIDIzNCwgMTIsIDEzNywgMjI3LCAKLSAgICA4MywgODYsIDIzNCwgMTIsIDEzNywgMTU3LCAyNDAsIDIxMiwgODYsIDE0MywgMTE2LCA4NiwgMTQzLCAxMDksIDg2LCAxNDMsIAotICAgIDE2NiwgODYsIDE0MywgMTYzLCA4NiwgMTQzLCAxODAsIDg2LCAxNDMsIDE4OSwgODYsIDE0MywgMTk4LCA4NiwgMTQzLCAKLSAgICAxOTUsIDg2LCAxNDMsIDIwMCwgODYsIDE0MywgMjE3LCAyMDAsIDg2LCAxNDMsIDIzMCwgMTk4LCA4NiwgMTQzLCAyNDQsIAotICAgIDY1LCA4NiwgMTQzLCAyMTQsIDI0LCA4NiwgMTQzLCAyMTMsIDIwMSwgODYsIDE0MywgMjMxLCAxMDYsIDg2LCAxNDMsIDI0NSwgCi0gICAgMTc5LCA4NiwgMTQzLCAyMTgsIDIzOCwgODYsIDE0MywgMjE5LCA3MiwgODYsIDE0MywgMjQxLCAyMjgsIDg2LCAxNDMsIAotICAgIDIxOSwgMjM4LCA4NiwgMTQzLCAyMzAsIDI0LCA4NiwgMTQzLCAyMTksIDE5MiwgODYsIDE0MywgMjQ0LCA3MSwgODYsIDE0MywgCi0gICAgMjQ5LCAxNDAsIDg2LCAxNDMsIDIzMywgMTQ4LCA4NiwgMTQzLCAyMjMsIDIyMywgODYsIDE0MywgMjUwLCAyMDMsIDg2LCAKLSAgICAxNDMsIDIxOSwgMzAsIDg2LCAxNDMsIDIxOCwgMjIwLCA4NiwgMTQzLCAyNDUsIDg2LCA4NiwgMTQzLCAyMjMsIDIxNSwgODYsIAotICAgIDE0MywgMjU0LCA1OSwgODYsIDE0MywgMjQ0LCA5NywgODYsIDE0MywgMjIzLCAyMTMsIDg2LCAxNDMsIDIyMSwgNzYsIDg2LCAKLSAgICAxNDMsIDIyNCwgMjAsIDM2LCAxNDMsIDIyNCwgMTU3LCAzNiwgMTQzLCAyMzQsIDg5LCAzNiwgMTQzLCAyMjIsIDExNiwgMzYsIAotICAgIDE0MywgMjM0LCA4LCAzNiwgNTAsIDIxNywgMjAxLCAyMjcsIDYzLCA4MywgMjE5LCAxNjYsIDM2LCA1MCwgMjE2LCAzOSwgCi0gICAgMjI3LCA2MywgODMsIDIxOSwgMTY2LCAzNiwgNTAsIDIxNywgMTE2LCAyMjcsIDYzLCA4MywgMjE5LCAxNjYsIDM2LCA1MCwgCi0gICAgMjQzLCAyNDEsIDIyNywgNjMsIDgzLCAyMTksIDE2NiwgMzYsIDUwLCAyNDQsIDg0LCAyMjcsIDYzLCA4MywgMjE5LCAxNjYsIAotICAgIDM2LCA1MCwgMjIwLCA0MCwgMjI3LCA2MywgODMsIDIxOSwgMTY2LCAzNiwgNTAsIDIyMSwgMzgsIDIyNywgNjMsIDgzLCAKLSAgICAyMTksIDE2NiwgMzYsIDUwLCAyNDUsIDE0MiwgMjI3LCA2MywgODMsIDIxOSwgMTY2LCAyMjYsIDEyMywgNTIsIDM2LCA1MCwgCi0gICAgMjE2LCAzOSwgMTE2LCAzNiwgNTAsIDIxNiwgMzksIDEwOSwgMzYsIDUwLCAyMTYsIDM5LCAxNjYsIDM2LCA1MCwgMjE2LCAKLSAgICAzOSwgMTYzLCAzNiwgNTAsIDIxNiwgMzksIDE4MCwgMzYsIDUwLCAyMTYsIDM5LCAxODksIDM2LCA1MCwgMjE2LCAzOSwgCi0gICAgMTk4LCAzNiwgNTAsIDIxNiwgMzksIDE5NSwgMzYsIDUwLCAyMTYsIDM5LCAyMDAsIDM2LCA1MCwgMjE3LCAxMTUsIDM2LCAKLSAgICA1MCwgMjE3LCAxMTYsIDExNiwgMzYsIDUwLCAyMTcsIDExNiwgMTA5LCAzNiwgNTAsIDIxNywgMTE2LCAxNjYsIDM2LCA1MCwgCi0gICAgMjE3LCAxMTYsIDE2MywgMzYsIDUwLCAyMTcsIDExNiwgMTgwLCAzNiwgMjMsIDIzNCwgNjcsIDM2LCAyMywgMjI5LCA1NywgCi0gICAgMzYsIDIzLCAyMTcsIDU1LCAzNiwgMjMsIDIyMywgMTc5LCAzNiwgMjMsIDIzMSwgMzAsIDM2LCAyMywgMjI1LCAyMjcsIDM2LCAKLSAgICAyMywgMjIwLCA3NiwgMzYsIDIzLCAyMzYsIDUxLCAzNiwgMjMsIDI0OSwgMjM5LCAzNiwgMjMsIDI1MCwgNDMsIDM2LCAyMywgCi0gICAgMjM0LCAxMTYsIDM2LCAyMywgMjE3LCAxMjYsIDM2LCAyMywgMjI2LCA3LCAzNiwgMjMsIDI0MSwgMTU4LCAzNiwgMjMsIAotICAgIDIzNCwgNjgsIDYxLCAzNiwgMjMsIDIyOSwgNTgsIDYxLCAzNiwgMjMsIDIxNywgNTYsIDYxLCAzNiwgMjMsIDIyMywgMTgwLCAKLSAgICA2MSwgMzYsIDIzLCAyMzEsIDMxLCA2MSwgMzYsIDIzLCAyMjUsIDIyOCwgNjEsIDM2LCAyMywgMjIwLCA3NywgNjEsIDM2LCAKLSAgICAyMywgMjM2LCA1MiwgNjEsIDM2LCAyMywgMjQ5LCAyNDAsIDYxLCAzNiwgMjMsIDI1MCwgNDQsIDYxLCAzNiwgMjMsIDIzNCwgCi0gICAgMTE3LCA2MSwgMzYsIDIzLCAyMTcsIDEyNywgNjEsIDM2LCAyMywgMjI2LCA4LCA2MSwgMzYsIDIzLCAyNDEsIDE1OSwgNjEsIAotICAgIDM2LCAyMzQsIDEyLCAxMzcsIDI1MCwgODQsIDM2LCAyMzQsIDEyLCAxMzcsIDIzNSwgNTAsIDM2LCAyMywgMjM2LCA1MiwgCi0gICAgNjksIDIzNCwgMTIsIDIxOSwgOTgsIDg3LCAzNiwgMTQzLCAxMTYsIDM2LCAxNDMsIDEwOSwgMzYsIDE0MywgMTY2LCAzNiwgCi0gICAgMTQzLCAxNjMsIDM2LCAxNDMsIDE4MCwgMzYsIDE0MywgMTg5LCAzNiwgMTQzLCAxOTgsIDM2LCAxNDMsIDE5NSwgMzYsIAotICAgIDE0MywgMjAwLCAzNiwgMTQzLCAyMTcsIDIwMCwgMzYsIDE0MywgMjMwLCAxOTgsIDM2LCAxNDMsIDI0NCwgNjUsIDM2LCAKLSAgICAxNDMsIDIxNCwgMjQsIDM2LCAxNDMsIDIxMywgMjAxLCAzNiwgMTQzLCAyMzEsIDEwNiwgMzYsIDE0MywgMjQ1LCAxNzksIAotICAgIDM2LCAxNDMsIDIxOCwgMjM4LCAzNiwgMTQzLCAyMTksIDcyLCAzNiwgMTQzLCAyNDEsIDIyOCwgMzYsIDE0MywgMjE5LCAKLSAgICAyMzgsIDM2LCAxNDMsIDIzMCwgMjQsIDM2LCAxNDMsIDIxOSwgMTkyLCAzNiwgMTQzLCAyNDQsIDcxLCAzNiwgMTQzLCAyNDksIAotICAgIDE0MCwgMzYsIDE0MywgMjMzLCAxNDgsIDM2LCAxNDMsIDIyMiwgOTMsIDM2LCAxNDMsIDIzMSwgMjUyLCAzNiwgMTQzLCAKLSAgICAyNDQsIDEwNiwgMzYsIDE0MywgMjE4LCAyNTAsIDM2LCAxNDMsIDI0NSwgMSwgMzYsIDE0MywgMjI1LCA2OCwgMzYsIDE0MywgCi0gICAgMjUzLCAxMTIsIDM2LCAxNDMsIDIzNSwgMTU3LCAzNiwgMTQzLCAyMjMsIDIxMywgMzYsIDE0MywgMjQ5LCAxMDMsIDM2LCAKLSAgICAxNDMsIDI0OSwgOTQsIDM2LCAxNDMsIDI0MSwgMTUxLCAzNiwgMTQzLCAyNTAsIDEwOCwgMzYsIDE0MywgMjMyLCAxNjUsIAotICAgIDM2LCAxNDMsIDIzMywgNzAsIDM2LCAxNDMsIDIyMywgMTQ4LCAzNiwgMTQzLCAyMzEsIDE0OCwgMzYsIDE0MywgMjIzLCAKLSAgICAyMzcsIDM2LCAxNDMsIDIxOSwgMzAsIDM2LCAxNDMsIDIxOCwgMjIwLCAzNiwgMTQzLCAyNDUsIDg2LCAzNiwgMTQzLCAyMjMsIAotICAgIDIxNSwgMzYsIDE0MywgMjU0LCA1OSwgMzYsIDE0MywgMjI5LCA0MywgMzYsIDUwLCAyMTcsIDExNiwgMTg5LCAzNiwgNTAsIAotICAgIDIxNywgMTE2LCAxOTgsIDM2LCA1MCwgMjE3LCAxMTYsIDE5NSwgMzYsIDUwLCAyMTcsIDExNiwgMjAwLCAzNiwgNTAsIDI0MywgCi0gICAgMjQwLCAzNiwgNTAsIDI0MywgMjQxLCAxMTYsIDM2LCA1MCwgMjQzLCAyNDEsIDEwOSwgMzYsIDUwLCAyNDMsIDI0MSwgMTY2LCAKLSAgICAzNiwgNTAsIDI0MywgMjQxLCAxNjMsIDM2LCA1MCwgMjQzLCAyNDEsIDE4MCwgMzYsIDUwLCAyNDMsIDI0MSwgMTg5LCAzNiwgCi0gICAgNTAsIDI0MywgMjQxLCAxOTgsIDM2LCA1MCwgMjQzLCAyNDEsIDE5NSwgMzYsIDUwLCAyNDMsIDI0MSwgMjAwLCAzNiwgNTAsIAotICAgIDI0NCwgODMsIDEwNSwgMjAxLCAxNiwgMzEsIDIzNSwgMTMzLCAxMDUsIDIwMSwgMTYsIDMxLCAyNDQsIDExNywgMTA1LCAKLSAgICAyMDEsIDE2LCAzMSwgMjMxLCAyMjMsIDEwNSwgMjAxLCAxNiwgMzEsIDI1MywgMjE3LCAxMDUsIDIwMSwgMTYsIDMxLCAyMzEsIAotICAgIDE5NiwgMTA1LCAyMDEsIDE2LCAzMSwgMjM1LCA0OCwgMTA1LCAyMDEsIDE2LCAzMSwgMjM1LCA0OSwgMTA1LCAyMDEsIDE2LCAKLSAgICAzMSwgMjUzLCAxMDQsIDEwNSwgMjAxLCAxNiwgMzEsIDIyMSwgNTYsIDEwNSwgMjAxLCAxNiwgMzEsIDIyNywgMTA0LCAxMDUsIAotICAgIDIwMSwgMTYsIDMxLCAyMjgsIDE1MSwgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCAzNiwgNDEsIDI0MSwgMTc1LCA0MSwgMjQ1LCAKLSAgICA1MSwgNDEsIDI0NSwgMTAsIDIzMiwgMjQ4LCAyMzMsIDEyLCA1MiwgMzYsIDU2LCA2MSwgMzYsIDU2LCA3MiwgMzYsIDU2LCAKLSAgICA2OSwgMzYsIDU2LCA3NCwgMzYsIDU2LCA3NSwgMzYsIDU2LCAxODEsIDM2LCA1NiwgMjM0LCAxMDEsIDM2LCA1NiwgMjMzLCAKLSAgICAyMzgsIDM2LCA1NiwgMjM0LCAxODgsIDM2LCA1NiwgMjM0LCAzNywgMzYsIDU2LCAyMjIsIDIwMiwgMzYsIDU2LCAyMjAsIAotICAgIDExNywgMzYsIDU2LCAyMTksIDI3LCAzNiwgNTYsIDIyMiwgMTAwLCAzNiwgNTYsIDIxOSwgMjQyLCAzNiwgNTYsIDIxOCwgCi0gICAgNTIsIDM2LCA1NiwgMjE3LCA3MSwgMzYsIDU2LCAyMTYsIDgyLCAzNiwgNTYsIDIxNywgMjI5LCAzNiwgNTYsIDEwOCwgMzYsIAotICAgIDU2LCAyMDUsIDM2LCA1NiwgMjI5LCA2NCwgMzYsIDU2LCAyMjgsIDkyLCAzNiwgNTYsIDIyOSwgMTg3LCAzNiwgNTYsIDIyOCwgCi0gICAgMTg1LCAzNiwgNTYsIDE1OSwgMzYsIDU2LCAyNDEsIDE2NSwgMzYsIDU2LCAyNDAsIDIxMiwgMzYsIDU2LCAyNDEsIDIyMiwgCi0gICAgMzYsIDU2LCAyNDEsIDU0LCAzNiwgNTYsIDE4OCwgMzYsIDU2LCAyMzEsIDQyLCAzNiwgNTYsIDIzMCwgMTcyLCAzNiwgNTYsIAotICAgIDIzMSwgMTU2LCAzNiwgNTYsIDIzMCwgMjMxLCAzNiwgNTYsIDE4NiwgMzYsIDU2LCAyMTIsIDIwMywgMzYsIDU2LCAyMTIsIAotICAgIDIzNSwgMzYsIDU2LCAyMDMsIDM2LCA1NiwgMjIzLCAxODgsIDM2LCA1NiwgMjIzLCA1MSwgMzYsIDU2LCAyMjQsIDIxLCAzNiwgCi0gICAgNTYsIDIyMywgMTEyLCAzNiwgNTYsIDIxNCwgNDksIDM2LCA1NiwgMjEzLCAyMzUsIDM2LCA1NiwgMjE0LCA2LCAzNiwgNTYsIAotICAgIDIxMywgMjE0LCA0MSwgMjUzLCAyMzgsIDQxLCAyNTMsIDE1NCwgNDEsIDI1NCwgNiwgNDEsIDI1NCwgMTkwLCA0MSwgMjM1LCAKLSAgICAyMjMsIDQxLCAyMzUsIDE5MywgNDEsIDIxNSwgMTM3LCA0MSwgMjQ1LCAzMSwgNDEsIDI0NSwgMTYzLCA0MSwgMjI3LCA1MiwgCi0gICAgNDEsIDIyNywgNDYsIDQxLCAyMzQsIDI0OSwgNDEsIDIzNCwgMjE5LCA0MSwgMjM0LCAyMTYsIDQxLCAyNDMsIDY4LCA0MSwgCi0gICAgMjQzLCA3NywgNDEsIDI0MiwgMTgwLCA0MSwgMjQyLCAxNzYsIDQxLCAyMzMsIDE3MiwgNDEsIDI0MiwgMTY5LCA0MSwgMjM0LCAKLSAgICA4MSwgNDEsIDIzNCwgODAsIDQxLCAyMzQsIDc5LCA0MSwgMjM0LCA3OCwgNDEsIDI0MiwgNjcsIDQxLCAyNDIsIDY2LCA0MSwgCi0gICAgMjMzLCAyMTQsIDQxLCAyMzMsIDIxNiwgNDEsIDIzNCwgMTg0LCA0MSwgMjM0LCAxMCwgNDEsIDIzNCwgMTcsIDQxLCAyMjIsIAotICAgIDE4NywgNDEsIDIyMiwgMTUzLCA0MSwgMjIwLCA1NywgNDEsIDIyMSwgNjEsIDQxLCAyMjEsIDYwLCA0MSwgMjQ4LCAxNjEsIAotICAgIDQxLCAyNDcsIDI0MywgNDEsIDI0NywgNzUsIDQxLCAyMTYsIDI0MywgNDEsIDIzMCwgMjAsIDQxLCAyMjgsIDE1MiwgNDEsIAotICAgIDI0MiwgMTQsIDQxLCAyMjYsIDIwOCwgNDEsIDIyNiwgMjA3LCA0MSwgMjUyLCAxMDUsIDQxLCAyMjUsIDIzNywgNDEsIDIyNSwgCi0gICAgMjAxLCA0MSwgMjI1LCAyMDIsIDQxLCAyNTEsIDE1NywgNDEsIDI0MCwgMjExLCA0MSwgMjQwLCAyMDcsIDQxLCAyNTEsIDIwLCAKLSAgICA0MSwgMjQwLCAxOTQsIDQxLCAyNDEsIDE5OSwgNDEsIDIyNiwgMzUsIDQxLCAyMjYsIDY5LCA0MSwgMjQxLCAxODMsIDQxLCAKLSAgICAyMjYsIDY2LCA0MSwgMjI2LCA4MiwgNDEsIDI1MSwgMjM3LCA0MSwgMjI1LCAxNDAsIDQxLCAyNTEsIDEwNiwgNDEsIDI0MSwgCi0gICAgNDIsIDQxLCAyMjUsIDEzMCwgNDEsIDI0MSwgMzUsIDQxLCAyNDEsIDM3LCA0MSwgMjMyLCA3LCA0MSwgMjMyLCAzLCA0MSwgCi0gICAgMjMyLCAxMSwgNDEsIDIzMSwgMjEzLCA0MSwgMjMxLCAyMzgsIDQxLCAyMzEsIDEwLCA0MSwgMjMwLCAyNDUsIDQxLCAyMzAsIAotICAgIDI0NCwgNDEsIDIzMSwgMTM4LCA0MSwgMjMxLCAxMzUsIDQxLCAyMzEsIDEzOSwgNDEsIDIxMywgOTAsIDQxLCAyMTMsIDg4LCAKLSAgICA0MSwgMjEyLCAxOTIsIDQxLCAyMjMsIDEyMywgNDEsIDIyMywgMTI3LCA0MSwgMjIzLCAyOCwgNDEsIDIyMywgMjMsIDQxLCAKLSAgICAyMjMsIDIzNSwgNDEsIDIyMywgMjMyLCA0MSwgMjE0LCAyMiwgMTA1LCAyMDEsIDE2LCAzMSwgMjQwLCAyMjYsIDIxMiwgNzksIAotICAgIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAxMTYsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAxMDksIDEwNSwgCi0gICAgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAxNjYsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAxNjMsIDEwNSwgMjAxLCAKLSAgICAxNiwgMzEsIDI0MCwgMjI2LCAxODAsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAxODksIDEwNSwgMjAxLCAxNiwgMzEsIAotICAgIDI0MCwgMjI2LCAxOTgsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAxOTUsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgCi0gICAgMjI2LCAyMDAsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAyMTcsIDIwMCwgMTA1LCAyMDEsIDE2LCAzMSwgMjQwLCAKLSAgICAyMjYsIDI0NSwgMTI0LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMjE2LCA0MSwgMTA1LCAyMDEsIDE2LCAzMSwgCi0gICAgMjQwLCAyMjYsIDIxNywgMTE3LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMjQzLCAyMzEsIDEwNSwgMjAxLCAxNiwgCi0gICAgMzEsIDI0MCwgMjI2LCAyNDQsIDg3LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMjIwLCA0NywgMTA1LCAyMDEsIDE2LCAKLSAgICAzMSwgMjQwLCAyMjYsIDIyMSwgNDAsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAyNDUsIDE0NywgMTA1LCAyMDEsIAotICAgIDE2LCAzMSwgMjQwLCAyMjYsIDIyOSwgMjgsIDEwNSwgMjAxLCAxNiwgMzEsIDI0MCwgMjI2LCAyMTYsIDM4LCAxMDUsIDIwMSwgCi0gICAgMTYsIDMxLCAyNDAsIDIyNiwgMjE2LCAzMiwgMTA1LCAyMDEsIDE2LCAzMSwgMjQwLCAyMjYsIDIxNiwgMjgsIDEwNSwgMjAxLCAKLSAgICAxNiwgMzEsIDI0MCwgMjI2LCAyMTYsIDI5LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDAsIDIyNiwgMjE2LCAzNCwgNDEsIDI0MCwgCi0gICAgMjE3LCA0MSwgMjQ4LCAxNjQsIDQxLCAyNTMsIDEwOCwgNDEsIDEzNCwgNDEsIDIyNiwgMjQ5LCA0MSwgMjI2LCA5OSwgNDEsIAotICAgIDI0NywgMTAxLCA0MSwgMjQ3LCAxMDIsIDIxOSwgMTY1LCA0MSwgMjQ3LCAxMDIsIDI0OSwgNDksIDQxLCAyMzUsIDE1NCwgCi0gICAgNDEsIDI0NSwgNTQsIDIzMCwgMjUsIDI0MSwgMjAwLCA0MSwgMjQ1LCA1NCwgMjMwLCAyNSwgMjE4LCAxMjAsIDQxLCAyNDUsIAotICAgIDU0LCAyMzAsIDI1LCAyMTgsIDI0LCA0MSwgMjQ1LCA1NCwgMjMwLCAyNSwgMjMxLCAxMzQsIDQxLCAyNDksIDk2LCA0MSwgCi0gICAgMjI2LCAyMTQsIDI1NCwgMzQsIDQxLCAyMDUsIDQxLCAyMzAsIDE3MywgNjEsIDQxLCAxODgsIDQxLCAxODEsIDQxLCAyMzQsIAotICAgIDE5MSwgNDEsIDIzMSwgMTkyLCA0MSwgMjQzLCA1NiwgNDEsIDI1MCwgMjA2LCA0MSwgMjM0LCAxOTAsIDQxLCAyMjYsIDI2LCAKLSAgICA0MSwgMjI5LCAxNjMsIDQxLCAyMzAsIDE3MywgMjQ0LCAyMzAsIDQxLCAyMzAsIDE3MywgMjQzLCAxNzcsIDQxLCAyMzEsIAotICAgIDgyLCA0MSwgMjM0LCAxNDAsIDQxLCAyNDAsIDE1NSwgNDEsIDIzNCwgMTAzLCA0MSwgMjMxLCA0NCwgNDEsIDI0MiwgMTkyLCAKLSAgICA0MSwgMjE3LCA3MywgNDEsIDIzMCwgMTczLCAxNTAsIDQxLCAyMzAsIDIzOCwgNDEsIDI0NywgMTA5LCA0MSwgMjM0LCA0OSwgCi0gICAgNDEsIDI0NCwgMTQsIDQxLCAyMjgsIDIwMCwgNDEsIDIzMCwgMTczLCAxODMsIDQxLCAyMzAsIDIzNSwgNDEsIDI0OSwgMTc2LCAKLSAgICA0MSwgMjM0LCA0MywgNDEsIDIzMCwgMjM2LCAyMTksIDE2NSwgNDEsIDI0OSwgMTc3LCAyMTksIDE2NSwgNDEsIDIzMiwgCi0gICAgMTEwLCAyMTksIDE2NSwgNDEsIDIzNCwgNDQsIDIxOSwgMTY1LCA0MSwgMjMwLCAyMzYsIDI0OSwgNDksIDQxLCAyNDksIAotICAgIDE3NywgMjQ5LCA0OSwgNDEsIDIzMiwgMTEwLCAyNDksIDQ5LCA0MSwgMjM0LCA0NCwgMjQ5LCA0OSwgNDEsIDIzMiwgMTEwLCAKLSAgICAxMTAsIDE5NywgNDEsIDIzMiwgMTEwLCAxMTAsIDIyMywgNCwgMjE5LCAxNjUsIDQxLCAxOTMsIDQxLCAyMzQsIDQsIDQxLCAKLSAgICAyMzAsIDE3NSwgNDEsIDI0MiwgMTI3LCA0MSwgMjI0LCA2NiwgNDEsIDIyNCwgNjcsIDExMCwgMTk3LCA0MSwgMjI0LCA2NywgCi0gICAgMTEwLCAyMjMsIDQsIDIxOSwgMTY1LCA0MSwgMjI1LCA0NywgNDEsIDIyOCwgMTI0LCA0MSwgMjMwLCAxNzMsIDE5NywgNDEsIAotICAgIDIzMCwgMTc0LCA0MSwgMjI1LCA0LCA0MSwgMjI4LCAzMywgNDEsIDIzMCwgMTczLCAyMTUsIDc5LCA0MSwgMjMwLCAxMjAsIAotICAgIDQxLCAyMzMsIDIwNywgNDEsIDIzMCwgMTIxLCAyMzEsIDEzOCwgNDEsIDIyNSwgMywgNDEsIDIyOCwgMzIsIDQxLCAyMzAsIAotICAgIDE3MywgMjE0LCA4MiwgNDEsIDIzMCwgMTE1LCA0MSwgMjMzLCAyMDUsIDQxLCAyMzAsIDExNiwgMjMxLCAxMzgsIDQxLCAKLSAgICAyMzUsIDI4LCAyMjcsIDg2LCA0MSwgMjMyLCAxMTAsIDIyNywgODYsIDQxLCAyNTQsIDQ1LCA0MSwgMjUxLCA4NywgNDEsIAotICAgIDI1MCwgMTQ3LCA0MSwgMjUwLCAxMjUsIDQxLCAyNTAsIDI1MywgMTEwLCAyMzQsIDE0MCwgNDEsIDI0OSwgMTc1LCA0MSwgCi0gICAgMjQ4LCA4OCwgNDEsIDI0MiwgNTMsIDQxLCAxNTksIDQxLCAyNDAsIDIxOCwgNDEsIDIzNSwgMjUxLCA0MSwgMjM0LCA1NiwgCi0gICAgNDEsIDIzNCwgNDQsIDI1MCwgMTgyLCA0MSwgMjMzLCAyNDAsIDQxLCAyMzIsIDIxMSwgNDEsIDIzMiwgMjEwLCA0MSwgMjMyLCAKLSAgICAyMDAsIDQxLCAyMzIsIDEyMiwgNDEsIDIzMSwgMTkzLCAyMjAsIDcsIDQxLCAyMzEsIDksIDQxLCAyMzAsIDIyMiwgNDEsIAotICAgIDIyNiwgMjQsIDQxLCAyMjUsIDE1MywgNDEsIDIyNSwgOTksIDQxLCAyMjUsIDk3LCA0MSwgMjE5LCAxNTksIDQxLCAyMTgsIAotICAgIDIwMywgNDEsIDIxNCwgOCwgNDEsIDIxNSwgODAsIDExMCwgMTgzLCA0MSwgMTE4LCAxMTAsIDE4MywgMTA1LCAyMDEsIDE2LCAKLSAgICAzMSwgMjQ4LCA5MiwgMTE2LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAxMDksIDEwNSwgMjAxLCAxNiwgMzEsIDI0OCwgCi0gICAgOTIsIDE2NiwgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMTYzLCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAxODAsIAotICAgIDEwNSwgMjAxLCAxNiwgMzEsIDI0OCwgOTIsIDE4OSwgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMTk4LCAxMDUsIDIwMSwgCi0gICAgMTYsIDMxLCAyNDgsIDkyLCAxOTUsIDEwNSwgMjAxLCAxNiwgMzEsIDI0OCwgOTIsIDIwMCwgMTA1LCAyMDEsIDE2LCAzMSwgCi0gICAgMjQ4LCA5MiwgMjE3LCAyMDAsIDEwNSwgMjAxLCAxNiwgMzEsIDI0OCwgOTIsIDI0NSwgMTI0LCAxMDUsIDIwMSwgMTYsIDMxLCAKLSAgICAyNDgsIDkyLCAyMTYsIDQxLCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyMTcsIDExNywgMTA1LCAyMDEsIDE2LCAzMSwgCi0gICAgMjQ4LCA5MiwgMjQzLCAyMzEsIDEwNSwgMjAxLCAxNiwgMzEsIDI0OCwgOTIsIDI0NCwgODcsIDEwNSwgMjAxLCAxNiwgMzEsIAotICAgIDI0OCwgOTIsIDIyMCwgNDcsIDEwNSwgMjAxLCAxNiwgMzEsIDI0OCwgOTIsIDIyMSwgNDAsIDEwNSwgMjAxLCAxNiwgMzEsIAotICAgIDI0OCwgOTIsIDI0NSwgMTQ3LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyMjksIDI4LCAxMDUsIDIwMSwgMTYsIDMxLCAKLSAgICAyNDgsIDkyLCAyMTYsIDM4LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyMTYsIDMyLCAxMDUsIDIwMSwgMTYsIDMxLCAKLSAgICAyNDgsIDkyLCAyMTYsIDI4LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyMTYsIDI5LCAxMDUsIDIwMSwgMTYsIDMxLCAKLSAgICAyNDgsIDkyLCAyMTYsIDM0LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyMTYsIDM1LCAxMDUsIDIwMSwgMTYsIDMxLCAKLSAgICAyNDgsIDkyLCAyMTYsIDMwLCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyMTYsIDMxLCAxMDUsIDIwMSwgMTYsIDMxLCAKLSAgICAyNDgsIDkyLCAyMTYsIDM3LCAxMDUsIDIwMSwgMTYsIDMxLCAyNDgsIDkyLCAyMTYsIDMzLCAxMDUsIDIwMSwgMTYsIDMxLCAKLSAgICAyNDgsIDkyLCAyMTcsIDExNSwgMTA1LCAyMDEsIDE2LCAzMSwgMjQ4LCA5MiwgMjE3LCAxMTQsIDQxLCAyNDMsIDk0LCAyNDEsIAotICAgIDE3NywgMzEsIDIxNywgMTQ5LCAyNDksIDgwLCAyNDEsIDIwNywgMjQxLCAxNzcsIDMxLCAyMTcsIDE0OSwgMjI0LCAxNSwgCi0gICAgMjQ1LCAxNzksIDI0MSwgMTc3LCAzMSwgMjQ3LCAxODMsIDI1MywgMTIzLCAyMTcsIDE0OSwgMjUxLCAyMzIsIDI0MSwgMTc3LCAKLSAgICAzMSwgMjEyLCAyMTQsIDI0NCwgNywgMjQxLCAxNzcsIDMxLCAyMTQsIDQzLCAyNDEsIDE3NywgMzEsIDI0OSwgMTQyLCAyNDEsIAotICAgIDE3NywgMzEsIDIxNywgMTQ5LCAyNTMsIDE3NCwgMjQxLCAxNzcsIDMxLCAyNDEsIDQ2LCAyMTYsIDI0OSwgMjQxLCAxNzcsIAotICAgIDMxLCAzLCAyMTgsIDEyLCAyNDEsIDE3NywgMzEsIDIxNiwgMTk1LCAyNDEsIDE3NywgMzEsIDIyNiwgOTQsIDI0MSwgMTc3LCAKLSAgICAzMSwgMjE5LCA5NywgMjQxLCAxNzcsIDMxLCAyNDQsIDEwOCwgMjQxLCAxNzcsIDMxLCAyNDIsIDEwOSwgMjI1LCAxMjAsIAotICAgIDI0MSwgMTc3LCAzMSwgMjMwLCAyMjUsIDI0MSwgMTc3LCAzMSwgMjQ1LCA4NSwgMjQxLCAxNzcsIDMxLCAyNDQsIDgsIDI0MSwgCi0gICAgMTc3LCAzMSwgMjEzLCAxOTQsIDIyNywgNjMsIDIxNywgMTQ5LCAyNDgsIDM3LCAyNDEsIDE3NywgMzEsIDI1MywgMjIxLCAKLSAgICAyNDEsIDE3NywgMzEsIDI0OSwgMTI0LCAyNDEsIDE3NywgMzEsIDI1MSwgMTUwLCAyMTcsIDkyLCAyNDEsIDE3NywgMzEsIAotICAgIDI0MiwgMTI1LCAyNDEsIDE3NywgMzEsIDIxOSwgMTc3LCAyNTMsIDIzNywgMjQxLCAxNzcsIDMxLCAyMjMsIDIwNSwgMjQxLCAKLSAgICAxNzcsIDMxLCAyMzUsIDIxNywgMjQxLCAxNzcsIDMxLCAyNDIsIDEwOSwgMjE4LCAxMiwgMjQxLCAxNzcsIDMxLCAyMzAsIAotICAgIDE4MSwgMjQ5LCA5OCwgMjQxLCAxNzcsIDMxLCAyNDIsIDEwOSwgMjI1LCA3NywgMjQxLCAxNzcsIDMxLCAyMTcsIDE0OSwgCi0gICAgMjU0LCAxNzgsIDIxNCwgMjQsIDI0MSwgMTc3LCAzMSwgMjE3LCAxNDksIDI0OSwgMjAxLCAyNDQsIDY1LCAyNDEsIDE3NywgCi0gICAgMzEsIDIzNSwgMjMwLCAyNDEsIDE3NywgMzEsIDI0NiwgMTIsIDI0MSwgMTc3LCAzMSwgMjIzLCAyMDgsIDI0MSwgMTc3LCAKLSAgICAzMSwgMjQyLCAxMDksIDIyNSwgMTA0LCAyNDEsIDE3NywgMzEsIDIyNSwgNjEsIDI0MSwgMTc3LCAzMSwgMjQ4LCAxMDYsIAotICAgIDY1LCAyMTcsIDE0OSwgMjMzLCAyLCAyNDEsIDE3NywgMzEsIDIxNywgMTQ5LCAyNDQsIDE0MiwgMjQxLCAxNzcsIDMxLCAKLSAgICAyMjcsIDI5LCAyNDEsIDE3NywgMzEsIDIyNywgMTA4LCAyNDEsIDE3NywgMzEsIDI0OCwgMTAsIDI0MSwgMTc3LCAzMSwgCi0gICAgMjQ4LCAzMCwgMjQxLCAxNzcsIDMxLCAyMzUsIDI0MywgMjQxLCAxNzcsIDMxLCAyNTEsIDc3LCAyNDEsIDE3NywgMzEsIAotICAgIDI0OSwgMTU5LCAyMTEsIDIxMSwgMjMxLCAxNDEsIDI0MSwgMTc3LCAzMSwgMjQzLCA2MywgMjE2LCAyNDksIDI0MSwgMTc3LCAKLSAgICAzMSwgMjI1LCAxMiwgMjE1LCAxMjUsIDI0MSwgMTc3LCAzMSwgMjI3LCAyOCwgMjQxLCAxNzcsIDMxLCAyMTcsIDE0OSwgCi0gICAgMjEzLCAyNTQsIDI0MSwgMTc3LCAzMSwgMjIzLCAxOTgsIDI0MSwgMTc3LCAzMSwgMjE3LCAxNDksIDI1MCwgMTUzLCAyNDEsIAotICAgIDE3NywgMzEsIDIxNywgMTQ5LCAyNTMsIDE3MCwgMjE3LCA4NywgMjQxLCAxNzcsIDMxLCAyMTcsIDE0OSwgMjM0LCAxODUsIAotICAgIDIxOSwgNzQsIDIzMCwgMTg1LCAyNDEsIDE3NywgMzEsIDI0NywgMjM5LCAyNDEsIDE3NywgMzEsIDIxNywgMTQ5LCAyMzEsIAotICAgIDIxNSwgMjMyLCA4LCAyNDEsIDE3NywgMzEsIDI1NCwgMTc5LCAyNDEsIDE3NywgMzEsIDIxNywgMTQ5LCAyMTQsIDM4LCAKLSAgICAyNDEsIDE3NywgMzEsIDIxNywgMTQ5LCAyNDMsIDIzLCAyMTMsIDIyNCwgMjQxLCAxNzcsIDMxLCAyMTcsIDE0OSwgMjM1LCAKLSAgICA1NSwgMjMzLCAxMzEsIDI0MSwgMTc3LCAzMSwgMjQ3LCAxMzYsIDI0MSwgMTc3LCAzMSwgMjMyLCAyNDksIDI0MSwgMTc3LCAKLSAgICAzMSwgMjM1LCAyMjAsIDIxNiwgMTQ1LCAyNDEsIDE3NywgMzEsIDMsIDIyNSwgNzcsIDI0MSwgMTc3LCAzMSwgMjU0LCAxMjIsIAotICAgIDI0OSwgMTUxLCAyNDEsIDE3NywgMzEsIDI1MSwgMjM1LCAyNDksIDE1MSwgOCwgNCwgMjM1LCAxNTgsIDgsIDQsIDIzNSwgCi0gICAgMTUxLCA4LCA0LCA3MiwgOCwgNCwgMjM1LCAxODAsIDgsIDQsIDIzNiwgNTMsIDgsIDQsIDIzNiwgMzYsIDgsIDQsIDIzNiwgCi0gICAgNTUsIDgsIDQsIDIzNiwgNTQsIDgsIDQsIDI1MywgMTIyLCA4LCA0LCAyNTMsIDg1LCA4LCA0LCA2MSwgOCwgNCwgMjUzLCAKLSAgICAyMzksIDgsIDQsIDIxNSwgMTM1LCA4LCA0LCAyMTUsIDEzOCwgOCwgNCwgMjE1LCAxMzYsIDgsIDQsIDIyNywgOCwgOCwgNCwgCi0gICAgMjI2LCAyMzgsIDgsIDQsIDc1LCA4LCA0LCAyMjcsIDQxLCA4LCA0LCAyNDUsIDIsIDgsIDQsIDc0LCA4LCA0LCAyMTMsIAotICAgIDE4MywgOCwgNCwgMjUxLCAxNTEsIDgsIDQsIDI1MSwgMTQ4LCA4LCA0LCAyNTEsIDE4NCwgOCwgNCwgMjUxLCAxNjEsIDgsIAotICAgIDQsIDI1MSwgMTc0LCA4LCA0LCAyNTEsIDE3MywgOCwgNCwgMjUxLCAxNzYsIDgsIDQsIDI1MSwgMTc1LCA4LCA0LCAyNTIsIAotICAgIDQxLCA4LCA0LCAyNTIsIDMzLCA4LCA0LCAyNTIsIDEwNywgOCwgNCwgMjUyLCA2MSwgOCwgNCwgMjUxLCAzMCwgOCwgNCwgCi0gICAgMjUxLCAzNCwgOCwgNCwgMjUxLCAzMSwgOCwgNCwgMjUxLCAxMDUsIDgsIDQsIDI1MSwgODksIDgsIDQsIDI1MSwgMTI4LCA4LCAKLSAgICA0LCAyNTEsIDExMCwgOCwgNCwgMjUxLCAxOTgsIDgsIDQsIDI1MSwgMjUxLCA4LCA0LCAyNTEsIDIxMCwgOCwgNCwgMjUxLCAKLSAgICAxNiwgOCwgNCwgMjUxLCAxMywgOCwgNCwgMjUxLCA1NCwgOCwgNCwgMjUxLCAyOSwgOCwgNCwgMjUxLCAyMywgOCwgNCwgCi0gICAgMjUxLCAyNywgOCwgNCwgMjUxLCAxLCA4LCA0LCAyNTEsIDAsIDgsIDQsIDI1MSwgNiwgOCwgNCwgMjUxLCA0LCA4LCA0LCAKLSAgICAyNTEsIDIsIDgsIDQsIDI1MSwgMywgOCwgNCwgMjI1LCAxODEsIDgsIDQsIDIyNSwgMTc3LCA4LCA0LCAyMjUsIDI0MCwgOCwgCi0gICAgNCwgMjI1LCAxOTEsIDgsIDQsIDIyNSwgMjA3LCA4LCA0LCAyMjUsIDIzNCwgOCwgNCwgMjI1LCAyMzAsIDgsIDQsIDIyNiwgCi0gICAgMTEzLCA4LCA0LCAyMjYsIDEwNCwgOCwgNCwgMTkzLCA4LCA0LCAyMjYsIDE0OSwgOCwgNCwgMjI1LCAyMSwgOCwgNCwgMjI1LCAKLSAgICAyMywgOCwgNCwgMjI1LCAyMiwgOCwgNCwgMjI1LCAxMTMsIDgsIDQsIDIyNSwgMTAyLCA4LCA0LCAyMjUsIDE1MCwgOCwgNCwgCi0gICAgMjI1LCAxMjUsIDgsIDQsIDIyNSwgOCwgOCwgNCwgMjI1LCA1LCA4LCA0LCAyMjUsIDM1LCA4LCA0LCAyMjUsIDIwLCA4LCA0LCAKLSAgICAyMjUsIDEzLCA4LCA0LCAyMjUsIDE4LCA4LCA0LCAyMjQsIDI0NCwgOCwgNCwgMjI0LCAyNDMsIDgsIDQsIDIyNCwgMjQ4LCAKLSAgICA4LCA0LCAyMjQsIDI0NywgOCwgNCwgMjI0LCAyNDUsIDgsIDQsIDIyNCwgMjQ2LCA4LCA0LCAyNTIsIDE2LCA4LCA0LCAyNTIsIAotICAgIDE1LCA4LCA0LCAyNTIsIDIyLCA4LCA0LCAyNTIsIDE3LCA4LCA0LCAyNTIsIDE5LCA4LCA0LCAyNTIsIDE4LCA4LCA0LCAKLSAgICAyNTIsIDIxLCA4LCA0LCAyNTIsIDIwLCA4LCA0LCAyNTIsIDI4LCA4LCA0LCAyNTIsIDI3LCA4LCA0LCAyNTIsIDMxLCA4LCAKLSAgICA0LCAyNTIsIDI5LCA4LCA0LCAyNTIsIDcsIDgsIDQsIDI1MiwgOSwgOCwgNCwgMjUyLCA4LCA4LCA0LCAyNTIsIDEyLCA4LCAKLSAgICA0LCAyNTIsIDExLCA4LCA0LCAyNTIsIDE0LCA4LCA0LCAyNTIsIDEzLCA4LCA0LCAyNTIsIDIzLCA4LCA0LCAyNTIsIDI2LCAKLSAgICA4LCA0LCAyNTIsIDI0LCA4LCA0LCAyNTIsIDMsIDgsIDQsIDI1MiwgMiwgOCwgNCwgMjUyLCAxMCwgOCwgNCwgMjUyLCA2LCAKLSAgICA4LCA0LCAyNTIsIDQsIDgsIDQsIDI1MiwgNSwgOCwgNCwgMjUxLCAyNTUsIDgsIDQsIDI1MSwgMjU0LCA4LCA0LCAyNTIsIDEsIAotICAgIDgsIDQsIDI1MiwgMCwgOCwgNCwgMjI5LCAyNDgsIDgsIDQsIDIyOSwgMjQ3LCA4LCA0LCAyMjksIDI1MywgOCwgNCwgMjI5LCAKLSAgICAyNDksIDgsIDQsIDIyOSwgMjUwLCA4LCA0LCAyMjksIDI1MiwgOCwgNCwgMjI5LCAyNTEsIDgsIDQsIDIyOSwgMjU1LCA4LCAKLSAgICA0LCAyMjksIDI1NCwgOCwgNCwgMjMwLCAxLCA4LCA0LCAyMzAsIDAsIDgsIDQsIDIyOSwgMjQ0LCA4LCA0LCAyMjksIDI0MywgCi0gICAgOCwgNCwgMjI5LCAyNDYsIDgsIDQsIDIyOSwgMjQ1LCA4LCA0LCAyMjksIDIzOCwgOCwgNCwgMjI5LCAyMzcsIDgsIDQsIAotICAgIDIyOSwgMjQyLCA4LCA0LCAyMjksIDI0MSwgOCwgNCwgMjI5LCAyMzksIDgsIDQsIDIyOSwgMjQwLCA4LCA0LCAyMjksIDIzMiwgCi0gICAgOCwgNCwgMjI5LCAyMzEsIDgsIDQsIDIyOSwgMjM2LCA4LCA0LCAyMjksIDIzNSwgOCwgNCwgMjI5LCAyMzMsIDgsIDQsIAotICAgIDIyOSwgMjM0LCA4LCA0LCAyNDEsIDk2LCA4LCA0LCAyNDEsIDk1LCA4LCA0LCAyNDEsIDEwMSwgOCwgNCwgMjQxLCA5NywgOCwgCi0gICAgNCwgMjQxLCA5OCwgOCwgNCwgMjQxLCAxMDAsIDgsIDQsIDI0MSwgOTksIDgsIDQsIDI0MSwgMTA0LCA4LCA0LCAyNDEsIAotICAgIDEwMywgOCwgNCwgMjQxLCAxMDYsIDgsIDQsIDI0MSwgMTA1LCA4LCA0LCAyNDEsIDg3LCA4LCA0LCAyNDEsIDg5LCA4LCA0LCAKLSAgICAyNDEsIDg4LCA4LCA0LCAyNDEsIDkyLCA4LCA0LCAyNDEsIDkxLCA4LCA0LCAyNDEsIDk0LCA4LCA0LCAyNDEsIDkzLCA4LCAKLSAgICA0LCAyNDEsIDgzLCA4LCA0LCAyNDEsIDgyLCA4LCA0LCAyNDEsIDkwLCA4LCA0LCAyNDEsIDg2LCA4LCA0LCAyNDEsIDg0LCAKLSAgICA4LCA0LCAyNDEsIDg1LCA4LCA0LCAyNDEsIDc3LCA4LCA0LCAyNDEsIDgxLCA4LCA0LCAyNDEsIDgwLCA4LCA0LCAyNDEsIAotICAgIDc4LCA4LCA0LCAyNDEsIDc5LCA4LCA0LCAyMzAsIDI0MSwgOCwgNCwgMjMwLCAyNDAsIDgsIDQsIDIzMSwgNDIsIDgsIDQsIAotICAgIDIzMCwgMjQ3LCA4LCA0LCAyMzEsIDE2LCA4LCA0LCAyMzEsIDM0LCA4LCA0LCAyMzEsIDMyLCA4LCA0LCAyMzEsIDIwMiwgOCwgCi0gICAgNCwgMjMxLCAxOTgsIDgsIDQsIDE4OCwgOCwgNCwgMjMxLCAyMzUsIDgsIDQsIDIzMCwgMTQ0LCA4LCA0LCAyMzAsIDE0MywgCi0gICAgOCwgNCwgMjMwLCAxNDcsIDgsIDQsIDIzMCwgMTQ1LCA4LCA0LCAyMzAsIDE5MSwgOCwgNCwgMjMwLCAxNzcsIDgsIDQsIAotICAgIDIzMCwgMjMxLCA4LCA0LCAyMzAsIDE5NiwgOCwgNCwgMjMxLCA5MywgOCwgNCwgMjMxLCAxNTYsIDgsIDQsIDIzMCwgMTI1LCAKLSAgICA4LCA0LCAyMzAsIDEyMiwgOCwgNCwgMjMwLCAxNzIsIDgsIDQsIDIzMCwgMTQwLCA4LCA0LCAyMzAsIDEzMywgOCwgNCwgCi0gICAgMjMwLCAxMzgsIDgsIDQsIDIzMCwgMTAwLCA4LCA0LCAyMzAsIDk5LCA4LCA0LCAyMzAsIDEwNSwgOCwgNCwgMjMwLCAxMDIsIAotICAgIDgsIDQsIDI0NCwgNTIsIDgsIDQsIDI0NCwgNDcsIDgsIDQsIDI0NCwgOTAsIDgsIDQsIDI0NCwgNjcsIDgsIDQsIDI0NCwgCi0gICAgMTM1LCA4LCA0LCAyNDQsIDEyNiwgOCwgNCwgMjQ0LCAxNjQsIDgsIDQsIDI0NCwgMTM4LCA4LCA0LCAyNDMsIDIyOSwgOCwgCi0gICAgNCwgMjQ0LCAxMiwgOCwgNCwgMjQzLCAyNTIsIDgsIDQsIDI0MywgMTkwLCA4LCA0LCAyNDMsIDE4OSwgOCwgNCwgMjQzLCAKLSAgICAyMDUsIDgsIDQsIDI0MywgMTk1LCA4LCA0LCAyNDMsIDE5MywgOCwgNCwgMjQzLCAxOTQsIDgsIDQsIDI0MywgMTgwLCA4LCAKLSAgICA0LCAyNDMsIDE3OSwgOCwgNCwgMjQzLCAxODMsIDgsIDQsIDI0MywgMTgxLCA4LCA0LCAyMTQsIDEyNSwgOCwgNCwgMjE0LCAKLSAgICAxMjAsIDgsIDQsIDIxNCwgMTU0LCA4LCA0LCAyMTQsIDEzNCwgOCwgNCwgMjE0LCAxNDYsIDgsIDQsIDIxNCwgMTQzLCA4LCAKLSAgICA0LCAyMTQsIDE0OCwgOCwgNCwgMjE0LCAxNDcsIDgsIDQsIDIxNCwgMjM5LCA4LCA0LCAyMTQsIDIzNSwgOCwgNCwgMjE1LCAKLSAgICAxLCA4LCA0LCAyMTQsIDI1MCwgOCwgNCwgMjE0LCAxMDYsIDgsIDQsIDIxNCwgMTAyLCA4LCA0LCAyMTQsIDExOSwgOCwgNCwgCi0gICAgMjE0LCAxMDcsIDgsIDQsIDIxNCwgMTU1LCA4LCA0LCAyMTQsIDIyMSwgOCwgNCwgMjE0LCA5MywgOCwgNCwgMjE0LCA5MiwgCi0gICAgOCwgNCwgMjE0LCA5OSwgOCwgNCwgMjE0LCA5NiwgOCwgNCwgMjE0LCA5NCwgOCwgNCwgMjE0LCA5NSwgOCwgNCwgMjE0LCAKLSAgICA4NiwgOCwgNCwgMjE0LCA4NSwgOCwgNCwgMjE0LCA5MCwgOCwgNCwgMjE0LCA4OSwgOCwgNCwgMjE0LCA4NywgOCwgNCwgCi0gICAgMjE0LCA4OCwgOCwgNCwgMjQ3LCAxMzAsIDgsIDQsIDI0NywgMTE4LCA4LCA0LCAyNDcsIDIxMSwgOCwgNCwgMjQ3LCAxNTUsIAotICAgIDgsIDQsIDI0NywgMTg4LCA4LCA0LCAyNDcsIDE5MiwgOCwgNCwgMjQ3LCAxOTEsIDgsIDQsIDI0OCwgOTgsIDgsIDQsIDI0OCwgCi0gICAgOTMsIDgsIDQsIDI0OCwgMTY0LCA4LCA0LCAyNDgsIDExNywgOCwgNCwgMjQ2LCAxNywgOCwgNCwgMjQ2LCAxOCwgOCwgNCwgCi0gICAgMjQ3LCA3NCwgOCwgNCwgMjQ2LCA1NiwgOCwgNCwgMjQ3LCA5OSwgOCwgNCwgMjQ3LCA3NiwgOCwgNCwgMjQ3LCAyMzcsIDgsIAotICAgIDQsIDI0OCwgNDEsIDgsIDQsIDI0NywgMjUyLCA4LCA0LCAyNDYsIDgsIDgsIDQsIDI0NiwgNiwgOCwgNCwgMjQ2LCAzMywgOCwgCi0gICAgNCwgMjQ2LCAxNiwgOCwgNCwgMjQ2LCAxMSwgOCwgNCwgMjQ2LCAxNCwgOCwgNCwgMjE3LCAyMCwgOCwgNCwgMjE3LCAxNCwgCi0gICAgOCwgNCwgMjE3LCA3MSwgOCwgNCwgMjE3LCAyOSwgOCwgNCwgMjE3LCA2MywgOCwgNCwgMjE3LCA2NSwgOCwgNCwgMjE3LCAKLSAgICA2NCwgOCwgNCwgMjE3LCAyNTMsIDgsIDQsIDIxNywgMjQwLCA4LCA0LCAyMTgsIDUyLCA4LCA0LCAyMTgsIDUsIDgsIDQsIAotICAgIDIxNiwgNjYsIDgsIDQsIDIxNiwgNjUsIDgsIDQsIDIxNiwgNjgsIDgsIDQsIDIxNiwgNjcsIDgsIDQsIDIxNiwgMjE4LCA4LCAKLSAgICA0LCAyMTYsIDIxNCwgOCwgNCwgMTA4LCA4LCA0LCAyMTYsIDIyNiwgOCwgNCwgMjE3LCAxNjYsIDgsIDQsIDIxNywgMjI5LCAKLSAgICA4LCA0LCAyMTcsIDE5MCwgOCwgNCwgMjE2LCA1MiwgOCwgNCwgMjE2LCA0OCwgOCwgNCwgMjE2LCA4MiwgOCwgNCwgMjE2LCAKLSAgICA2NCwgOCwgNCwgMjE2LCA1MywgOCwgNCwgMjE2LCA2MiwgOCwgNCwgMjQ4LCA1OCwgOCwgNCwgMjQ4LCA1NywgOCwgNCwgCi0gICAgMjQ4LCA2MywgOCwgNCwgMjQ4LCA1OSwgOCwgNCwgMjQ4LCA2MCwgOCwgNCwgMjQ4LCA2MiwgOCwgNCwgMjQ4LCA2MSwgOCwgCi0gICAgNCwgMjQ4LCA3OSwgOCwgNCwgMjQ4LCA3OCwgOCwgNCwgMjQ4LCA4NiwgOCwgNCwgMjQ4LCA4MCwgOCwgNCwgMjQ4LCA0OCwgCi0gICAgOCwgNCwgMjQ4LCA1MCwgOCwgNCwgMjQ4LCA0OSwgOCwgNCwgMjQ4LCA1MywgOCwgNCwgMjQ4LCA1MiwgOCwgNCwgMjQ4LCAKLSAgICA1NiwgOCwgNCwgMjQ4LCA1NCwgOCwgNCwgMjQ4LCA3MSwgOCwgNCwgMjQ4LCA3NCwgOCwgNCwgMjQ4LCA3MiwgOCwgNCwgCi0gICAgMjQ4LCA0NCwgOCwgNCwgMjQ4LCA0MywgOCwgNCwgMjQ4LCA1MSwgOCwgNCwgMjQ4LCA0NywgOCwgNCwgMjQ4LCA0NSwgOCwgCi0gICAgNCwgMjQ4LCA0NiwgOCwgNCwgMjI5LCAyMDYsIDgsIDQsIDIyOSwgMjA1LCA4LCA0LCAyMjksIDIxMywgOCwgNCwgMjI5LCAKLSAgICAyMDgsIDgsIDQsIDIyOSwgMjA5LCA4LCA0LCAyMjksIDIxMCwgOCwgNCwgMjI5LCAyMjIsIDgsIDQsIDIyOSwgMjIxLCA4LCAKLSAgICA0LCAyMjksIDIyOCwgOCwgNCwgMjI5LCAyMjMsIDgsIDQsIDIyOSwgMTk4LCA4LCA0LCAyMjksIDE5NywgOCwgNCwgMjI5LCAKLSAgICAyMDQsIDgsIDQsIDIyOSwgMTk5LCA4LCA0LCAyMjksIDIxNCwgOCwgNCwgMjI5LCAyMjAsIDgsIDQsIDIyOSwgMjE4LCA4LCAKLSAgICA0LCAyMjksIDE5MCwgOCwgNCwgMjI5LCAxODksIDgsIDQsIDIyOSwgMTk1LCA4LCA0LCAyMjksIDE5MywgOCwgNCwgMjI5LCAKLSAgICAxOTEsIDgsIDQsIDIyOSwgMTkyLCA4LCA0LCAyNDEsIDYzLCA4LCA0LCAyNDEsIDYyLCA4LCA0LCAyNDEsIDY5LCA4LCA0LCAKLSAgICAyNDEsIDY0LCA4LCA0LCAyNDEsIDY2LCA4LCA0LCAyNDEsIDY1LCA4LCA0LCAyNDEsIDY4LCA4LCA0LCAyNDEsIDY3LCA4LCAKLSAgICA0LCAyNDEsIDc0LCA4LCA0LCAyNDEsIDczLCA4LCA0LCAyNDEsIDc2LCA4LCA0LCAyNDEsIDc1LCA4LCA0LCAyNDEsIDU3LCAKLSAgICA4LCA0LCAyNDEsIDU4LCA4LCA0LCAyNDEsIDYwLCA4LCA0LCAyNDEsIDU5LCA4LCA0LCAyNDEsIDYxLCA4LCA0LCAyNDEsIAotICAgIDcwLCA4LCA0LCAyNDEsIDcyLCA4LCA0LCAyNDEsIDcxLCA4LCA0LCAyNDEsIDU2LCA4LCA0LCAyMjksIDIwLCA4LCA0LCAKLSAgICAyMjksIDE4LCA4LCA0LCAyMjksIDY0LCA4LCA0LCAyMjksIDIzLCA4LCA0LCAyMjksIDQ2LCA4LCA0LCAyMjksIDYwLCA4LCAKLSAgICA0LCAyMjksIDU5LCA4LCA0LCAyMzAsIDUsIDgsIDQsIDIwNSwgOCwgNCwgMjMwLCAxNywgOCwgNCwgMjI4LCA0MiwgOCwgNCwgCi0gICAgMjI4LCA0NCwgOCwgNCwgMjI4LCA0MywgOCwgNCwgMjI4LCAxNjIsIDgsIDQsIDIyOCwgMTQ5LCA4LCA0LCAyMjgsIDE4NSwgCi0gICAgOCwgNCwgMjI4LCAxNzEsIDgsIDQsIDIyOSwgMTY1LCA4LCA0LCAyMjksIDE4NywgOCwgNCwgMjI5LCAxNzYsIDgsIDQsIAotICAgIDIyOCwgMzcsIDgsIDQsIDIyOCwgMzQsIDgsIDQsIDIyOCwgOTIsIDgsIDQsIDIyOCwgNDEsIDgsIDQsIDIyOCwgMzksIDgsIAotICAgIDQsIDIyOCwgNDAsIDgsIDQsIDI0MSwgMTI3LCA4LCA0LCAyNDEsIDEyNiwgOCwgNCwgMjQxLCAxMzIsIDgsIDQsIDI0MSwgCi0gICAgMTI4LCA4LCA0LCAyNDEsIDEyOSwgOCwgNCwgMjQxLCAxMzEsIDgsIDQsIDI0MSwgMTMwLCA4LCA0LCAyNDEsIDEzNywgOCwgCi0gICAgNCwgMjQxLCAxMzYsIDgsIDQsIDI0MSwgMTM5LCA4LCA0LCAyNDEsIDEzOCwgOCwgNCwgMjQxLCAxMTksIDgsIDQsIDI0MSwgCi0gICAgMTIxLCA4LCA0LCAyNDEsIDEyMCwgOCwgNCwgMjQxLCAxMjMsIDgsIDQsIDI0MSwgMTI1LCA4LCA0LCAyNDEsIDEyNCwgOCwgCi0gICAgNCwgMjQxLCAxMzMsIDgsIDQsIDI0MSwgMTM1LCA4LCA0LCAyNDEsIDEzNCwgOCwgNCwgMjQxLCAxMTUsIDgsIDQsIDI0MSwgCi0gICAgMTE0LCA4LCA0LCAyNDEsIDEyMiwgOCwgNCwgMjQxLCAxMTgsIDgsIDQsIDI0MSwgMTE2LCA4LCA0LCAyNDEsIDExNywgOCwgCi0gICAgNCwgMjQxLCAxMDksIDgsIDQsIDI0MSwgMTA4LCA4LCA0LCAyNDEsIDExMywgOCwgNCwgMjQxLCAxMTIsIDgsIDQsIDI0MSwgCi0gICAgMTEwLCA4LCA0LCAyNDEsIDExMSwgOCwgNCwgMjMyLCAyMjQsIDgsIDQsIDIzMiwgMjE4LCA4LCA0LCAyMzMsIDEzLCA4LCA0LCAKLSAgICAyMzIsIDIzMSwgOCwgNCwgMjMzLCA1LCA4LCA0LCAyMzMsIDQsIDgsIDQsIDIzMywgOCwgOCwgNCwgMjMzLCA2LCA4LCA0LCAKLSAgICAyMzMsIDEwMiwgOCwgNCwgMjMzLCA5MywgOCwgNCwgMjMzLCAxNTcsIDgsIDQsIDIzMywgMTExLCA4LCA0LCAyMzIsIDEzNywgCi0gICAgOCwgNCwgMjMyLCAxMzYsIDgsIDQsIDIzMiwgMTM5LCA4LCA0LCAyMzIsIDEzOCwgOCwgNCwgMjMyLCAxNzEsIDgsIDQsIAotICAgIDIzMiwgMTYxLCA4LCA0LCAyMzIsIDIwOCwgOCwgNCwgMjMyLCAxNzUsIDgsIDQsIDIzMywgMjgsIDgsIDQsIDIzMywgODIsIAotICAgIDgsIDQsIDIzMywgNDEsIDgsIDQsIDIzMiwgMTMyLCA4LCA0LCAyMzIsIDEzMSwgOCwgNCwgMjMyLCAxNTYsIDgsIDQsIDIzMiwgCi0gICAgMTM1LCA4LCA0LCAyMzIsIDEzMywgOCwgNCwgMjMyLCAxMzQsIDgsIDQsIDIzMiwgMTE0LCA4LCA0LCAyMzIsIDExMywgOCwgCi0gICAgNCwgMjMyLCAxMjEsIDgsIDQsIDIzMiwgMTE3LCA4LCA0LCAyMzIsIDExNSwgOCwgNCwgMjMyLCAxMTYsIDgsIDQsIDI0MiwgCi0gICAgMTY1LCA4LCA0LCAyNDIsIDE2NCwgOCwgNCwgMjQyLCAxOTAsIDgsIDQsIDI0MiwgMTc1LCA4LCA0LCAyNDIsIDE4MiwgOCwgCi0gICAgNCwgMjQyLCAxODEsIDgsIDQsIDI0MiwgMTg0LCA4LCA0LCAyNDIsIDE4MywgOCwgNCwgMjQzLCA2NSwgOCwgNCwgMjQzLCAKLSAgICA2MCwgOCwgNCwgMjQzLCAxMTAsIDgsIDQsIDI0MywgNzUsIDgsIDQsIDI0MiwgNzIsIDgsIDQsIDI0MiwgNzEsIDgsIDQsIAotICAgIDI0MiwgNzQsIDgsIDQsIDI0MiwgNzMsIDgsIDQsIDI0MiwgMTMwLCA4LCA0LCAyNDIsIDEyOCwgOCwgNCwgMjQyLCAxNTAsIAotICAgIDgsIDQsIDI0MiwgMTM4LCA4LCA0LCAyNDMsIDksIDgsIDQsIDI0MywgNywgOCwgNCwgMjQzLCAzOCwgOCwgNCwgMjQzLCAyMCwgCi0gICAgOCwgNCwgMjQyLCA2MiwgOCwgNCwgMjQyLCA2MSwgOCwgNCwgMjQyLCA5MiwgOCwgNCwgMjQyLCA3MCwgOCwgNCwgMjQyLCAKLSAgICA2MywgOCwgNCwgMjQyLCA2OSwgOCwgNCwgMjM0LCA3MCwgOCwgNCwgMjM0LCA2OSwgOCwgNCwgMjM0LCAxMDEsIDgsIDQsIAotICAgIDIzNCwgODQsIDgsIDQsIDIzNCwgOTQsIDgsIDQsIDIzNCwgOTcsIDgsIDQsIDIzNCwgOTUsIDgsIDQsIDIzNCwgMjA3LCA4LCAKLSAgICA0LCAyMzQsIDE5NiwgOCwgNCwgMTgxLCA4LCA0LCAyMzQsIDIzMywgOCwgNCwgMjMzLCAyMjEsIDgsIDQsIDIzMywgMjI2LCAKLSAgICA4LCA0LCAyMzMsIDIyMywgOCwgNCwgMjM0LCA5LCA4LCA0LCAyMzQsIDUsIDgsIDQsIDIzNCwgMzcsIDgsIDQsIDIzNCwgMTYsIAotICAgIDgsIDQsIDIzNCwgMTYyLCA4LCA0LCAyMzQsIDE0NiwgOCwgNCwgMjM0LCAxODgsIDgsIDQsIDIzNCwgMTY1LCA4LCA0LCAKLSAgICAyMzMsIDIxMCwgOCwgNCwgMjMzLCAyMDgsIDgsIDQsIDIzMywgMjM4LCA4LCA0LCAyMzMsIDIyMCwgOCwgNCwgMjMzLCAyMTMsIAotICAgIDgsIDQsIDIzMywgMjE3LCA4LCA0LCAyNDIsIDI0NywgOCwgNCwgMjQyLCAyNDYsIDgsIDQsIDI0MiwgMjUxLCA4LCA0LCAKLSAgICAyNDIsIDI0OCwgOCwgNCwgMjQyLCAyNTAsIDgsIDQsIDI0MiwgMjQ5LCA4LCA0LCAyNDMsIDIsIDgsIDQsIDI0MywgMSwgOCwgCi0gICAgNCwgMjQzLCA1LCA4LCA0LCAyNDMsIDMsIDgsIDQsIDI0MiwgMjM4LCA4LCA0LCAyNDIsIDIzNywgOCwgNCwgMjQyLCAyNDAsIAotICAgIDgsIDQsIDI0MiwgMjM5LCA4LCA0LCAyNDIsIDI0MywgOCwgNCwgMjQyLCAyNDIsIDgsIDQsIDI0MiwgMjQ1LCA4LCA0LCAKLSAgICAyNDIsIDI0NCwgOCwgNCwgMjQyLCAyNTMsIDgsIDQsIDI0MiwgMjUyLCA4LCA0LCAyNDMsIDAsIDgsIDQsIDI0MiwgMjU0LCAKLSAgICA4LCA0LCAyNDIsIDIzMywgOCwgNCwgMjQyLCAyMzIsIDgsIDQsIDI0MiwgMjQxLCA4LCA0LCAyNDIsIDIzNiwgOCwgNCwgCi0gICAgMjQyLCAyMzQsIDgsIDQsIDI0MiwgMjM1LCA4LCA0LCAyMzEsIDYwLCA4LCA0LCAyMzEsIDYxLCA4LCA0LCAyMzEsIDc5LCA4LCAKLSAgICA0LCAyMzEsIDc4LCA4LCA0LCAyMzEsIDgxLCA4LCA0LCAyMzEsIDgwLCA4LCA0LCAyMzEsIDUxLCA4LCA0LCAyMzEsIDUzLCAKLSAgICA4LCA0LCAyMzEsIDUyLCA4LCA0LCAyMzEsIDU2LCA4LCA0LCAyMzEsIDU1LCA4LCA0LCAyMzEsIDU4LCA4LCA0LCAyMzEsIAotICAgIDU3LCA4LCA0LCAyMzEsIDYyLCA4LCA0LCAyMzEsIDY0LCA4LCA0LCAyMzEsIDYzLCA4LCA0LCAyMzEsIDQ3LCA4LCA0LCAKLSAgICAyMzEsIDQ2LCA4LCA0LCAyMzEsIDU0LCA4LCA0LCAyMzEsIDUwLCA4LCA0LCAyMzEsIDQ4LCA4LCA0LCAyMzEsIDQ5LCA4LCAKLSAgICA0LCAyNDAsIDE3MiwgOCwgNCwgMjQwLCAxNzEsIDgsIDQsIDI0MCwgMTc4LCA4LCA0LCAyNDAsIDE3MywgOCwgNCwgMjQwLCAKLSAgICAxNzUsIDgsIDQsIDI0MCwgMTc0LCA4LCA0LCAyNDAsIDE3NywgOCwgNCwgMjQwLCAxNzYsIDgsIDQsIDI0MCwgMTgzLCA4LCAKLSAgICA0LCAyNDAsIDE4MiwgOCwgNCwgMjQwLCAxODUsIDgsIDQsIDI0MCwgMTg0LCA4LCA0LCAyNDAsIDE2NCwgOCwgNCwgMjQwLCAKLSAgICAxNjMsIDgsIDQsIDI0MCwgMTY2LCA4LCA0LCAyNDAsIDE2NSwgOCwgNCwgMjQwLCAxNjgsIDgsIDQsIDI0MCwgMTY3LCA4LCAKLSAgICA0LCAyNDAsIDE3MCwgOCwgNCwgMjQwLCAxNjksIDgsIDQsIDI0MCwgMTc5LCA4LCA0LCAyNDAsIDE4MSwgOCwgNCwgMjQwLCAKLSAgICAxODAsIDgsIDQsIDIyOSwgMTEwLCA4LCA0LCAyMjksIDExMiwgOCwgNCwgMjI5LCAxMTEsIDgsIDQsIDIyOSwgMTUwLCA4LCAKLSAgICA0LCAyMjksIDE0OSwgOCwgNCwgMjI5LCAxNTksIDgsIDQsIDIyOSwgMTUzLCA4LCA0LCAyMjksIDczLCA4LCA0LCAyMjksIAotICAgIDcyLCA4LCA0LCAyMjksIDc0LCA4LCA0LCAyMjksIDgyLCA4LCA0LCAyMjksIDc5LCA4LCA0LCAyMjksIDkwLCA4LCA0LCAKLSAgICAyMjksIDg0LCA4LCA0LCAyMjksIDE0MywgOCwgNCwgMjI5LCAxNDgsIDgsIDQsIDIyOSwgMTQ1LCA4LCA0LCAyNDEsIDE0MiwgCi0gICAgOCwgNCwgMjQxLCAxNTIsIDgsIDQsIDI0MSwgMTYwLCA4LCA0LCAyNDEsIDIzNCwgOCwgNCwgMjQxLCAyMjcsIDgsIDQsIAotICAgIDE1OSwgOCwgNCwgMjQxLCAyNDUsIDgsIDQsIDI0MCwgMTk2LCA4LCA0LCAyNDAsIDE5NSwgOCwgNCwgMjQwLCAxOTgsIDgsIAotICAgIDQsIDI0MCwgMTk3LCA4LCA0LCAyNDAsIDIyOSwgOCwgNCwgMjQwLCAyMjAsIDgsIDQsIDI0MSwgNTQsIDgsIDQsIDI0MSwgCi0gICAgMzQsIDgsIDQsIDI0MSwgMTc5LCA4LCA0LCAyNDEsIDIyMiwgOCwgNCwgMjQxLCAxOTAsIDgsIDQsIDIxNCwgMjcsIDgsIDQsIAotICAgIDIxNCwgMTIsIDgsIDQsIDIxNCwgNDksIDgsIDQsIDIxNCwgMzUsIDgsIDQsIDIxMywgMTczLCA4LCA0LCAyMTMsIDE3NSwgOCwgCi0gICAgNCwgMjEzLCAxNzQsIDgsIDQsIDIxMywgMTkxLCA4LCA0LCAyMTMsIDIxNCwgOCwgNCwgMjEzLCAxOTcsIDgsIDQsIDIxMywgCi0gICAgMjQ2LCA4LCA0LCAyMTQsIDYsIDgsIDQsIDIxMywgMjUxLCA4LCA0LCAyMTIsIDIzLCA4LCA0LCAyMTIsIDIyLCA4LCA0LCAKLSAgICAyMTIsIDM3LCA4LCA0LCAyMTIsIDI1LCA4LCA0LCAyMTIsIDMwLCA4LCA0LCAyMTIsIDMyLCA4LCA0LCAyMTIsIDMxLCA4LCAKLSAgICA0LCAyMTIsIDk1LCA4LCA0LCAyMTIsIDkyLCA4LCA0LCAyMTIsIDEwOSwgOCwgNCwgMjEyLCA5OCwgOCwgNCwgMjEyLCAxLCAKLSAgICA4LCA0LCAyMTIsIDMsIDgsIDQsIDIxMiwgMiwgOCwgNCwgMjEyLCAxMiwgOCwgNCwgMjEyLCAxMSwgOCwgNCwgMjEyLCAxNiwgCi0gICAgOCwgNCwgMjEyLCAxMywgOCwgNCwgMjEyLCA3NywgOCwgNCwgMjEyLCA4NywgOCwgNCwgMjEyLCA4MSwgOCwgNCwgMjExLCAKLSAgICAyNTMsIDgsIDQsIDIxMSwgMjUyLCA4LCA0LCAyMTIsIDgsIDgsIDQsIDIxMiwgMCwgOCwgNCwgMjExLCAyNTQsIDgsIDQsIAotICAgIDIxMSwgMjU1LCA4LCA0LCAyMTEsIDI0NCwgOCwgNCwgMjExLCAyNDMsIDgsIDQsIDIxMSwgMjQ5LCA4LCA0LCAyMTEsIDI0NywgCi0gICAgOCwgNCwgMjExLCAyNDUsIDgsIDQsIDIxMSwgMjQ2LCA4LCA0LCAyNDksIDIyMSwgOCwgNCwgMjQ5LCAyMTcsIDgsIDQsIAotICAgIDI0OSwgMjQ0LCA4LCA0LCAyNDksIDIzMCwgOCwgNCwgMjQ5LCAyNDEsIDgsIDQsIDI0OSwgMjM1LCA4LCA0LCAyNDksIDI0MywgCi0gICAgOCwgNCwgMjQ5LCAyNDIsIDgsIDQsIDI1MCwgMTU2LCA4LCA0LCAyNTAsIDE1MCwgOCwgNCwgMjUwLCAyMTksIDgsIDQsIAotICAgIDI1MCwgMTgzLCA4LCA0LCAyNDksIDQ1LCA4LCA0LCAyNDksIDQ3LCA4LCA0LCAyNDksIDQ2LCA4LCA0LCAyNDksIDkyLCA4LCAKLSAgICA0LCAyNDksIDgzLCA4LCA0LCAyNDksIDE3NSwgOCwgNCwgMjQ5LCAxMDgsIDgsIDQsIDI1MCwgOTQsIDgsIDQsIDI1MCwgCi0gICAgMTI0LCA4LCA0LCAyNTAsIDk5LCA4LCA0LCAyNDksIDI2LCA4LCA0LCAyNDksIDI1LCA4LCA0LCAyNDksIDUzLCA4LCA0LCAKLSAgICAyNDksIDQzLCA4LCA0LCAyNDksIDMxLCA4LCA0LCAyNDksIDQyLCA4LCA0LCAyNDksIDYsIDgsIDQsIDI0OSwgNSwgOCwgNCwgCi0gICAgMjQ5LCAxNiwgOCwgNCwgMjQ5LCAxMiwgOCwgNCwgMjQ5LCA3LCA4LCA0LCAyNDksIDksIDgsIDQsIDIxMSwgMjI3LCA4LCA0LCAKLSAgICAyMTEsIDIyNiwgOCwgNCwgMjExLCAyMzMsIDgsIDQsIDIxMSwgMjI4LCA4LCA0LCAyMTEsIDIzMCwgOCwgNCwgMjExLCAyMjksIAotICAgIDgsIDQsIDIxMSwgMjMyLCA4LCA0LCAyMTEsIDIzMSwgOCwgNCwgMjExLCAyMzksIDgsIDQsIDIxMSwgMjM4LCA4LCA0LCAKLSAgICAyMTEsIDI0MiwgOCwgNCwgMjExLCAyNDAsIDgsIDQsIDIxMSwgMjIzLCA4LCA0LCAyMTEsIDIyNSwgOCwgNCwgMjExLCAyMjQsIAotICAgIDgsIDQsIDIxMSwgMjM0LCA4LCA0LCAyMTEsIDIzNywgOCwgNCwgMjExLCAyMzUsIDgsIDQsIDIxMSwgMjE4LCA4LCA0LCAKLSAgICAyMTEsIDIyMiwgOCwgNCwgMjExLCAyMjEsIDgsIDQsIDIxMSwgMjE5LCA4LCA0LCAyMTEsIDIyMCwgOCwgNCwgMjExLCAyMTMsIAotICAgIDgsIDQsIDIxMSwgMjEyLCA4LCA0LCAyMTEsIDIxNywgOCwgNCwgMjExLCAyMTYsIDgsIDQsIDIxMSwgMjE0LCA4LCA0LCAKLSAgICAyMTEsIDIxNSwgOCwgNCwgMjI3LCAyMjQsIDgsIDQsIDIyNywgMjIzLCA4LCA0LCAyMjcsIDIyOSwgOCwgNCwgMjI3LCAyMjUsIAotICAgIDgsIDQsIDIyNywgMjI2LCA4LCA0LCAyMjcsIDIyOCwgOCwgNCwgMjI3LCAyMjcsIDgsIDQsIDIyNywgMjM0LCA4LCA0LCAKLSAgICAyMjcsIDIzMywgOCwgNCwgMjI3LCAyMzcsIDgsIDQsIDIyNywgMjM2LCA4LCA0LCAyMjcsIDIxNywgOCwgNCwgMjI3LCAyMTgsIAotICAgIDgsIDQsIDIyNywgMjIxLCA4LCA0LCAyMjcsIDIyMiwgOCwgNCwgMjI3LCAyMzAsIDgsIDQsIDIyNywgMjMyLCA4LCA0LCAKLSAgICAyMjcsIDIxMiwgOCwgNCwgMjI3LCAyMjAsIDgsIDQsIDIyNywgMjE2LCA4LCA0LCAyMjcsIDIxMywgOCwgNCwgMjI3LCAyMTQsIAotICAgIDgsIDQsIDIyNywgMjA3LCA4LCA0LCAyMjcsIDIwNiwgOCwgNCwgMjI3LCAyMTEsIDgsIDQsIDIyNywgMjEwLCA4LCA0LCAKLSAgICAyMjcsIDIwOCwgOCwgNCwgMjI3LCAyMDksIDgsIDQsIDIyMCwgNTUsIDgsIDQsIDE4OSwgOCwgNCwgMjIwLCAxMTcsIDgsIDQsIAotICAgIDIyMCwgNTgsIDgsIDQsIDIyMCwgMTA5LCA4LCA0LCAyMjAsIDExMiwgOCwgNCwgMjIwLCAxMTAsIDgsIDQsIDIyMiwgMTQyLCAKLSAgICA4LCA0LCAyMjIsIDEzMiwgOCwgNCwgMjIyLCAyMDIsIDgsIDQsIDIyMiwgMTUwLCA4LCA0LCAyMTgsIDIyOCwgOCwgNCwgCi0gICAgMjE4LCAyMzAsIDgsIDQsIDIxOCwgMjI5LCA4LCA0LCAyMTksIDIyMSwgOCwgNCwgMjE5LCAyMTAsIDgsIDQsIDIxOSwgMjQyLCAKLSAgICA4LCA0LCAyMTksIDIyNCwgOCwgNCwgMjIxLCAzNSwgOCwgNCwgMjIyLCAxMDAsIDgsIDQsIDIyMSwgNTksIDgsIDQsIDIxOCwgCi0gICAgMjA2LCA4LCA0LCAyMTgsIDIwNCwgOCwgNCwgMjE5LCAyNywgOCwgNCwgMjE4LCAyMjcsIDgsIDQsIDIxOCwgMjA5LCA4LCA0LCAKLSAgICAyMTgsIDIxNywgOCwgNCwgMjE4LCAxMTMsIDgsIDQsIDIxOCwgMTEyLCA4LCA0LCAyMTgsIDE3NywgOCwgNCwgMjE4LCAxMTksIAotICAgIDgsIDQsIDIxOCwgMTE0LCA4LCA0LCAyMTgsIDExOCwgOCwgNCwgMjE5LCAxMjMsIDgsIDQsIDIxOSwgMTIyLCA4LCA0LCAKLSAgICAyMTksIDEyOCwgOCwgNCwgMjE5LCAxMjQsIDgsIDQsIDIxOSwgMTI1LCA4LCA0LCAyMTksIDEyNywgOCwgNCwgMjE5LCAxMjYsIAotICAgIDgsIDQsIDIxOSwgMTM1LCA4LCA0LCAyMTksIDEzNCwgOCwgNCwgMjE5LCAxNTcsIDgsIDQsIDIxOSwgMTM2LCA4LCA0LCAKLSAgICAyMTksIDExOSwgOCwgNCwgMjE5LCAxMTgsIDgsIDQsIDIxOSwgMTIxLCA4LCA0LCAyMTksIDEyMCwgOCwgNCwgMjE5LCAxMzAsIAotICAgIDgsIDQsIDIxOSwgMTMzLCA4LCA0LCAyMTksIDEzMSwgOCwgNCwgMjE5LCAxMTUsIDgsIDQsIDIxOSwgMTE0LCA4LCA0LCAKLSAgICAyMTksIDExNywgOCwgNCwgMjE5LCAxMTYsIDgsIDQsIDIxOSwgMTA5LCA4LCA0LCAyMTksIDEwOCwgOCwgNCwgMjE5LCAxMTMsIAotICAgIDgsIDQsIDIxOSwgMTEyLCA4LCA0LCAyMTksIDExMCwgOCwgNCwgMjE5LCAxMTEsIDgsIDQsIDIxMiwgNzAsIDgsIDQsIDIxMiwgCi0gICAgNjksIDgsIDQsIDIxMiwgNzUsIDgsIDQsIDIxMiwgNzIsIDgsIDQsIDIxMiwgNTIsIDgsIDQsIDIxMiwgNTQsIDgsIDQsIAotICAgIDIxMiwgNTMsIDgsIDQsIDIxMiwgNTcsIDgsIDQsIDIxMiwgNTYsIDgsIDQsIDIxMiwgNjAsIDgsIDQsIDIxMiwgNTgsIDgsIAotICAgIDQsIDIxMiwgNjQsIDgsIDQsIDIxMiwgNjMsIDgsIDQsIDIxMiwgNjcsIDgsIDQsIDIxMiwgNjUsIDgsIDQsIDIxMiwgNDgsIAotICAgIDgsIDQsIDIxMiwgNDcsIDgsIDQsIDIxMiwgNTUsIDgsIDQsIDIxMiwgNTEsIDgsIDQsIDIxMiwgNDksIDgsIDQsIDIxMiwgCi0gICAgNTAsIDgsIDQsIDIxMiwgNDAsIDgsIDQsIDIxMiwgMzksIDgsIDQsIDIxMiwgNDQsIDgsIDQsIDIxMiwgNDMsIDgsIDQsIAotICAgIDIxMiwgNDEsIDgsIDQsIDIxMiwgNDIsIDgsIDQsIDI1MCwgNzIsIDgsIDQsIDI1MCwgNjksIDgsIDQsIDI1MCwgOTIsIDgsIAotICAgIDQsIDI1MCwgODAsIDgsIDQsIDI1MCwgMiwgOCwgNCwgMjUwLCAxLCA4LCA0LCAyNTAsIDQsIDgsIDQsIDI1MCwgMywgOCwgNCwgCi0gICAgMjUwLCAxNiwgOCwgNCwgMjUwLCAxNSwgOCwgNCwgMjUwLCAyMywgOCwgNCwgMjUwLCAxOCwgOCwgNCwgMjUwLCA1MiwgOCwgCi0gICAgNCwgMjUwLCA1MCwgOCwgNCwgMjUwLCA2NywgOCwgNCwgMjUwLCA1OCwgOCwgNCwgMjQ5LCAyNTIsIDgsIDQsIDI1MCwgNiwgCi0gICAgOCwgNCwgMjUwLCAwLCA4LCA0LCAyNDksIDI1MywgOCwgNCwgMjQ5LCAyNTUsIDgsIDQsIDI0OSwgMjQ2LCA4LCA0LCAyNDksIAotICAgIDI0NSwgOCwgNCwgMjQ5LCAyNTAsIDgsIDQsIDI0OSwgMjQ5LCA4LCA0LCAyNDksIDI0NywgOCwgNCwgMjQ5LCAyNDgsIDgsIAotICAgIDQsIDIyMywgODAsIDgsIDQsIDIyMywgODEsIDgsIDQsIDIyMywgNjcsIDgsIDQsIDIyMywgNjgsIDgsIDQsIDIyMywgNzEsIAotICAgIDgsIDQsIDIyMywgNzAsIDgsIDQsIDIyMywgNzMsIDgsIDQsIDIyMywgNzIsIDgsIDQsIDIyMywgNzUsIDgsIDQsIDIyMywgCi0gICAgNzQsIDgsIDQsIDIyMywgNzksIDgsIDQsIDIyMywgNzYsIDgsIDQsIDIyMywgNjMsIDgsIDQsIDIyMywgNjIsIDgsIDQsIAotICAgIDIyMywgNjksIDgsIDQsIDIyMywgNjYsIDgsIDQsIDIyMywgNjQsIDgsIDQsIDIyMywgNjUsIDgsIDQsIDIyMywgNTcsIDgsIAotICAgIDQsIDIyMywgNTYsIDgsIDQsIDIyMywgNjEsIDgsIDQsIDIyMywgNjAsIDgsIDQsIDIyMywgNTgsIDgsIDQsIDIyMywgNTksIAotICAgIDgsIDQsIDIyOCwgMTQ1LCA4LCA0LCAyMjgsIDE0NCwgOCwgNCwgMjI4LCAxNDcsIDgsIDQsIDIyOCwgMTQ2LCA4LCA0LCAKLSAgICAyMjgsIDEzNywgOCwgNCwgMjI4LCAxMzksIDgsIDQsIDIyOCwgMTM4LCA4LCA0LCAyMjgsIDE0MSwgOCwgNCwgMjI4LCAxNDAsIAotICAgIDgsIDQsIDIyOCwgMTQzLCA4LCA0LCAyMjgsIDE0MiwgOCwgNCwgMjI4LCAxMzIsIDgsIDQsIDIyOCwgMTMxLCA4LCA0LCAKLSAgICAyMjgsIDEzNiwgOCwgNCwgMjI4LCAxMzUsIDgsIDQsIDIyOCwgMTMzLCA4LCA0LCAyMjgsIDEzNCwgOCwgNCwgMjI4LCAxMjYsIAotICAgIDgsIDQsIDIyOCwgMTI1LCA4LCA0LCAyMjgsIDEzMCwgOCwgNCwgMjI4LCAxMjksIDgsIDQsIDIyOCwgMTI3LCA4LCA0LCAKLSAgICAyMjgsIDEyOCwgOCwgNCwgMjIwLCAyNTEsIDgsIDQsIDIyMCwgMjQ3LCA4LCA0LCAyMjEsIDI0LCA4LCA0LCAyMjEsIDYsIDgsIAotICAgIDQsIDIyMCwgMTQwLCA4LCA0LCAyMjAsIDE0MiwgOCwgNCwgMjIwLCAxNDEsIDgsIDQsIDIyMCwgMTYwLCA4LCA0LCAyMjAsIAotICAgIDE1NywgOCwgNCwgMjIwLCAxODcsIDgsIDQsIDIyMCwgMTc4LCA4LCA0LCAyMjAsIDIyMiwgOCwgNCwgMjIwLCAyMTUsIDgsIAotICAgIDQsIDIyMCwgMjQzLCA4LCA0LCAyMjAsIDIzMCwgOCwgNCwgMjIwLCAxMzYsIDgsIDQsIDIyMCwgMTM1LCA4LCA0LCAyMjAsIAotICAgIDE1MCwgOCwgNCwgMjIwLCAxMzksIDgsIDQsIDIyMCwgMTM3LCA4LCA0LCAyMjAsIDEzOCwgOCwgNCwgMjIwLCAxMjAsIDgsIAotICAgIDQsIDIyMCwgMTE5LCA4LCA0LCAyMjAsIDEyNiwgOCwgNCwgMjIwLCAxMjMsIDgsIDQsIDIyMCwgMTIxLCA4LCA0LCAyMjAsIAotICAgIDEyMiwgOCwgNCwgMjI0LCAzMywgOCwgNCwgMjI0LCAyOCwgOCwgNCwgMjAzLCA4LCA0LCAyMjQsIDM5LCA4LCA0LCAyMjMsIAotICAgIDMxLCA4LCA0LCAyMjMsIDMzLCA4LCA0LCAyMjMsIDMyLCA4LCA0LCAyMjMsIDkwLCA4LCA0LCAyMjMsIDgzLCA4LCA0LCAKLSAgICAyMjMsIDExMiwgOCwgNCwgMjIzLCA5NCwgOCwgNCwgMjIzLCAxOTYsIDgsIDQsIDIyNCwgMjEsIDgsIDQsIDIyMywgMjMxLCAKLSAgICA4LCA0LCAyMjMsIDI0LCA4LCA0LCAyMjMsIDIyLCA4LCA0LCAyMjMsIDUxLCA4LCA0LCAyMjMsIDMwLCA4LCA0LCAyMjMsIAotICAgIDI2LCA4LCA0LCAyMjMsIDI3LCA4LCA0LCAyMjMsIDcsIDgsIDQsIDIyMywgNiwgOCwgNCwgMjIzLCAxMiwgOCwgNCwgMjIzLCAKLSAgICAxMCwgOCwgNCwgMjIzLCA4LCA4LCA0LCAyMjMsIDksIDgsIDQsIDIzNSwgMTAxLCA4LCA0LCAyMzUsIDEwMCwgOCwgNCwgCi0gICAgMjM1LCAxMTAsIDgsIDQsIDIzNSwgMTAyLCA4LCA0LCAyMzUsIDEwNiwgOCwgNCwgMjM1LCAxMDUsIDgsIDQsIDIzNSwgMTA4LCAKLSAgICA4LCA0LCAyMzUsIDEwNywgOCwgNCwgMjM1LCA0NCwgOCwgNCwgMjM1LCA0MywgOCwgNCwgMjM1LCA0NiwgOCwgNCwgMjM1LCAKLSAgICA0NSwgOCwgNCwgMjM1LCA1OSwgOCwgNCwgMjM1LCA1NywgOCwgNCwgMjM1LCA3MSwgOCwgNCwgMjM1LCA2MSwgOCwgNCwgCi0gICAgMjM1LCAzOCwgOCwgNCwgMjM1LCAzNiwgOCwgNCwgMjM1LCA1NCwgOCwgNCwgMjM1LCA0MiwgOCwgNCwgMjM1LCAzOSwgOCwgCi0gICAgNCwgMjM1LCA0MCwgOCwgNCwgMjM1LCAzMCwgOCwgNCwgMjM1LCAyOSwgOCwgNCwgMjM1LCAzNCwgOCwgNCwgMjM1LCAzMywgCi0gICAgOCwgNCwgMjM1LCAzMSwgOCwgNCwgMjM1LCAzMiwgOCwgNCwgMjI0LCAxOTEsIDgsIDQsIDIyNCwgMTg5LCA4LCA0LCAyMjQsIAotICAgIDE5OCwgOCwgNCwgMjI0LCAxOTIsIDgsIDQsIDIyNCwgMTk1LCA4LCA0LCAyMjQsIDE5NCwgOCwgNCwgMjI0LCAxOTcsIDgsIAotICAgIDQsIDIyNCwgMTk2LCA4LCA0LCAyMjQsIDE0NCwgOCwgNCwgMjI0LCAxNDEsIDgsIDQsIDIyNCwgMTQ2LCA4LCA0LCAyMjQsIAotICAgIDE0NSwgOCwgNCwgMjI0LCAxNzgsIDgsIDQsIDIyNCwgMTc3LCA4LCA0LCAyMjQsIDE4NywgOCwgNCwgMjI0LCAxODEsIDgsIAotICAgIDQsIDIyNCwgMTM2LCA4LCA0LCAyMjQsIDEzMiwgOCwgNCwgMjI0LCAxNzUsIDgsIDQsIDIyNCwgMTQwLCA4LCA0LCAyMjQsIAotICAgIDEzOCwgOCwgNCwgMjI0LCAxMzksIDgsIDQsIDIyNCwgMTE2LCA4LCA0LCAyMjQsIDExNCwgOCwgNCwgMjI0LCAxMjYsIDgsIAotICAgIDQsIDIyNCwgMTE5LCA4LCA0LCAyMjQsIDExNywgOCwgNCwgMjI0LCAxMTgsIDgsIDQsIDIzNSwgOTAsIDgsIDQsIDIzNSwgCi0gICAgODksIDgsIDQsIDIzNSwgOTYsIDgsIDQsIDIzNSwgOTEsIDgsIDQsIDIzNSwgOTMsIDgsIDQsIDIzNSwgOTIsIDgsIDQsIAotICAgIDIzNSwgOTUsIDgsIDQsIDIzNSwgOTQsIDgsIDQsIDIzNSwgODEsIDgsIDQsIDIzNSwgODMsIDgsIDQsIDIzNSwgODIsIDgsIAotICAgIDQsIDIzNSwgODYsIDgsIDQsIDIzNSwgODUsIDgsIDQsIDIzNSwgODgsIDgsIDQsIDIzNSwgODcsIDgsIDQsIDIzNSwgNzcsIAotICAgIDgsIDQsIDIzNSwgNzYsIDgsIDQsIDIzNSwgODQsIDgsIDQsIDIzNSwgODAsIDgsIDQsIDIzNSwgNzgsIDgsIDQsIDIzNSwgCi0gICAgNzksIDgsIDQsIDIzNSwgNzMsIDgsIDQsIDIzNSwgNzIsIDgsIDQsIDIzNSwgNzUsIDgsIDQsIDIzNSwgNzQsIDgsIDQsIAotICAgIDIyOCwgMjQ5LCA4LCA0LCAyMjgsIDI0OCwgOCwgNCwgMjI5LCAwLCA4LCA0LCAyMjgsIDI1MCwgOCwgNCwgMjI4LCAyNTIsIAotICAgIDgsIDQsIDIyOCwgMjUxLCA4LCA0LCAyMjgsIDI1NSwgOCwgNCwgMjI4LCAyNTMsIDgsIDQsIDIyOCwgMjM4LCA4LCA0LCAKLSAgICAyMjgsIDIzOSwgOCwgNCwgMjI4LCAyNDQsIDgsIDQsIDIyOCwgMjQzLCA4LCA0LCAyMjgsIDI0NywgOCwgNCwgMjI4LCAyNDUsIAotICAgIDgsIDQsIDIyOCwgMjMzLCA4LCA0LCAyMjgsIDI0MiwgOCwgNCwgMjI4LCAyMzcsIDgsIDQsIDIyOCwgMjM0LCA4LCA0LCAKLSAgICAyMjgsIDIzNSwgOCwgNCwgMjI4LCAyMjgsIDgsIDQsIDIyOCwgMjI3LCA4LCA0LCAyMjgsIDIzMiwgOCwgNCwgMjI4LCAyMzEsIAotICAgIDgsIDQsIDIyOCwgMjI5LCA4LCA0LCAyMjgsIDIzMCwgOCwgNCwgMjI4LCAwLCA4LCA0LCAyMjcsIDI1NSwgOCwgNCwgMjI4LCAKLSAgICAxMCwgOCwgNCwgMjI4LCA0LCA4LCA0LCAyMjgsIDcsIDgsIDQsIDIyOCwgNiwgOCwgNCwgMjI4LCA5LCA4LCA0LCAyMjgsIDgsIAotICAgIDgsIDQsIDIyNywgMjQzLCA4LCA0LCAyMjcsIDI0NSwgOCwgNCwgMjI3LCAyNDQsIDgsIDQsIDIyNywgMjQ5LCA4LCA0LCAKLSAgICAyMjcsIDI0OCwgOCwgNCwgMjI3LCAyNTMsIDgsIDQsIDIyNywgMjUwLCA4LCA0LCAyMjcsIDI0MSwgOCwgNCwgMjI3LCAyNDAsIAotICAgIDgsIDQsIDIyNywgMjQ3LCA4LCA0LCAyMjcsIDI0MiwgOCwgNCwgMjEzLCAxMzgsIDgsIDQsIDIxMywgMTM3LCA4LCA0LCAKLSAgICAyMTMsIDE0NSwgOCwgNCwgMjEzLCAxNDAsIDgsIDQsIDIxMywgMTQyLCA4LCA0LCAyMTMsIDE0MSwgOCwgNCwgMjEzLCAxNDQsIAotICAgIDgsIDQsIDIxMywgMTQzLCA4LCA0LCAyMTMsIDEyNywgOCwgNCwgMjEzLCAxMjgsIDgsIDQsIDIxMywgMTMyLCA4LCA0LCAKLSAgICAyMTMsIDEzMSwgOCwgNCwgMjEzLCAxMzYsIDgsIDQsIDIxMywgMTM0LCA4LCA0LCAyMTMsIDEwOSwgOCwgNCwgMjEzLCAxMDcsIAotICAgIDgsIDQsIDIxMywgMTE5LCA4LCA0LCAyMTMsIDExMiwgOCwgNCwgMjEzLCAxMTAsIDgsIDQsIDIxMywgMTExLCA4LCA0LCAKLSAgICAyMTIsIDI0MSwgOCwgNCwgMjEyLCAyMzksIDgsIDQsIDIxMiwgMjU1LCA4LCA0LCAyMTIsIDI0MiwgOCwgNCwgMjEyLCAyNDksIAotICAgIDgsIDQsIDIxMiwgMjQ4LCA4LCA0LCAyMTIsIDI1MiwgOCwgNCwgMjEyLCAyNTAsIDgsIDQsIDIxMiwgMTgyLCA4LCA0LCAKLSAgICAyMTIsIDE4MSwgOCwgNCwgMjEyLCAxODUsIDgsIDQsIDIxMiwgMTgzLCA4LCA0LCAyMTIsIDIxNSwgOCwgNCwgMjEyLCAyMTIsIAotICAgIDgsIDQsIDIxMiwgMjM1LCA4LCA0LCAyMTIsIDIxOSwgOCwgNCwgMjEyLCAxNzMsIDgsIDQsIDIxMiwgMTcwLCA4LCA0LCAKLSAgICAyMTIsIDIwMywgOCwgNCwgMjEyLCAxODAsIDgsIDQsIDIxMiwgMTc2LCA4LCA0LCAyMTIsIDE3NywgOCwgNCwgMjEyLCAxNTUsIAotICAgIDgsIDQsIDIxMiwgMTU0LCA4LCA0LCAyMTIsIDE2MSwgOCwgNCwgMjEyLCAxNTgsIDgsIDQsIDIxMiwgMTU2LCA4LCA0LCAKLSAgICAyMTIsIDE1NywgOCwgMzQsIDIyNCwgMTc4LCA4LCAzNCwgMjMzLCAxMywgOCwgMzQsIDIzNCwgNzAsIDgsIDM0LCAyMjgsIDQsIAotICAgIDgsIDM0LCAyNDksIDEyLCA4LCAzNCwgMjE5LCAxMjgsIDgsIDM0LCAyNDIsIDI0NCwgOCwgMzQsIDI0MywgMjAsIDgsIDM0LCAKLSAgICAyMzEsIDQyLCA4LCAzNCwgMjQwLCAxNzIsIDgsIDM0LCAyMzIsIDExNiwgOCwgMzQsIDI1MiwgMywgOCwgMzQsIDIzMCwgCi0gICAgMTk2LCA4LCAzNCwgMjEyLCAyMzUsIDgsIDM0LCAyMjUsIDgsIDgsIDM0LCAyNDAsIDE2NiwgOCwgMzQsIDIxNywgMjUzLCA4LCAKLSAgICAzNCwgMjQzLCAxMTAsIDgsIDM0LCAyMTIsIDAsIDgsIDM0LCAyNDksIDYsIDgsIDM0LCAyNDgsIDQ2LCA4LCAzNCwgMjUxLCAKLSAgICAyNywgOCwgMzQsIDI0MiwgMjQwLCA4LCAzNCwgMjI3LCAyNTAsIDgsIDM0LCAyMTYsIDgyLCA4LCAzNCwgMjI3LCA0MSwgOCwgCi0gICAgMzQsIDIzNSwgNzcsIDgsIDM0LCAyMTIsIDEyLCA4LCAzNCwgMjI0LCAyNDQsIDgsIDM0LCAyNDEsIDk0LCA4LCAzNCwgMjEyLCAKLSAgICAyNDEsIDgsIDM0LCAyMTQsIDk1LCA4LCAzNCwgMjIwLCAxMjYsIDgsIDM0LCAyMTQsIDIyMSwgOCwgMzQsIDIxMiwgMTA5LCAKLSAgICA4LCAzNCwgMjM1LCA3MSwgOCwgMzQsIDIyNywgMjE2LCA4LCAzNCwgMjM1LCA3NSwgOCwgMzQsIDI0MiwgMTMwLCA4LCAzNCwgCi0gICAgMjM1LCA5NSwgOCwgMzQsIDIxMywgMjE0LCA4LCAzNCwgMjQ2LCAzMywgOCwgMzQsIDIyMCwgMTM4LCA4LCAzNCwgMjMzLCA4LCAKLSAgICA4LCAzNCwgMjQ5LCAxNiwgOCwgMzQsIDI0OSwgNDYsIDgsIDM0LCAyNDksIDIzMCwgOCwgMzQsIDI0MCwgMTY5LCA4LCAzNCwgCi0gICAgMjIwLCAyNTEsIDgsIDM0LCAyMTEsIDI1NSwgOCwgMzQsIDIyMCwgMTc4LCA4LCAzNCwgMjUwLCA2NywgOCwgMzQsIDIxMSwgCi0gICAgMjMwLCA4LCAzNCwgMjI5LCAyNTIsIDgsIDM0LCAyMzQsIDE4OCwgMjMyLCAyMjUsIDEsIDI1MiwgMTA3LCAyMzIsIDIyNSwgCi0gICAgMSwgMTkzLCAyMzIsIDIyNSwgMSwgMjI2LCAyMywgMjMyLCAyMjUsIDEsIDI0OCwgMTY0LCAyMzIsIDIyNSwgMSwgMjE4LCAKLSAgICA1MiwgMjMyLCAyMjUsIDEsIDIxNywgMTYxLCAyMzIsIDIyNSwgMSwgMjQzLCAxMTAsIDIzMiwgMjI1LCAxLCAxODEsIDIzMiwgCi0gICAgMjI1LCAxLCAyMzQsIDEzOCwgMjMyLCAyMjUsIDEsIDIzNSwgMTM5LCAyMzIsIDIyNSwgMSwgMjUwLCAyMTksIDIzMiwgMjI1LCAKLSAgICAxLCAyNTAsIDkyLCAyMzIsIDIyNSwgMSwgMjQ1LCAyNDksIDIzMiwgMjI1LCAxLCAyMTYsIDE0MSwgMjMyLCAyMjUsIDEsIAotICAgIDIxNiwgMTMzLCAyMzIsIDIyNSwgMSwgMTg4LCAyMzIsIDIyNSwgMSwgMjA1LCAyMzIsIDIyNSwgMSwgMjMzLCAxNTcsIDIzMiwgCi0gICAgMjI1LCAxLCAyMjIsIDIwMiwgMjMyLCAyMjUsIDEsIDIxMiwgNzUsIDIzMiwgMjI1LCAxLCAyMTIsIDEwOSwgMjMyLCAyMjUsIAotICAgIDEsIDIyOSwgMTU5LCAyMzIsIDIyNSwgMSwgMTU5LCAyMzIsIDIyNSwgMSwgMjEzLCAxNTMsIDIzMiwgMjI1LCAxLCAyNDEsIAotICAgIDE3NCwgMjMyLCAyMjUsIDEsIDI0NCwgMTY0LCAyMzIsIDIyNSwgMSwgMjE0LCA0OSwgMjMyLCAyMjUsIDEsIDIyMSwgMjQsIAotICAgIDIzMiwgMjI1LCAxLCAxODYsIDIzMiwgMjI1LCAxLCAyNDIsIDIyNSwgMjMyLCAyMjUsIDEsIDYxLCAyMzIsIDIyNSwgMSwgCi0gICAgMjU0LCAxNDgsIDIzMiwgMjI1LCAxLCA3NCwgMjMyLCAyMjUsIDEsIDI0NSwgMjIsIDIzMiwgMjI1LCAxLCA3MiwgMjMyLCAKLSAgICAyMjUsIDEsIDc1LCAyMzIsIDIyNSwgMSwgNjksIDIzMiwgMjI1LCAxLCAyMTUsIDE4MywgMjMyLCAyMjUsIDEsIDIxNSwgCi0gICAgMTc4LCAyMzIsIDIyNSwgMSwgMjI3LCA5OSwgMjMyLCAyMjUsIDEsIDE2MCwgMjMwLCAxMDQsIDIxNywgNzEsIDIzMiwgMjI1LCAKLSAgICAxLCAxNjAsIDIzMCwgNDYsIDIyNSwgMTUwLCAyMzIsIDIyNSwgMSwgMTYwLCAyMzAsIDEwNCwgMjQ5LCAxNSwgMjMyLCAyMjUsIAotICAgIDEsIDE2MCwgMjMwLCAxMDQsIDI1MSwgMTI4LCAyMzIsIDIyNSwgMSwgMTYwLCAyMzAsIDEwNCwgMjA1LCAyMzIsIDIyNSwgMSwgCi0gICAgMTYwLCAyMzAsIDEwNCwgMjM1LCAxMTYsIDIzMiwgMjI1LCAyMjUsIDI3LCAyNDksIDE1NywgMjMyLCAyMjUsIDIyNSwgMjcsIAotICAgIDI0MywgMjAwLCAyMTksIDY5LCAzOSwgNCwgMjQ1LCAxNjUsIDM5LCA0LCAyNDUsIDE2MiwgMzksIDQsIDI0MSwgMjA0LCAzOSwgCi0gICAgNCwgMjE0LCAxLCAzOSwgNCwgMjE0LCAwLCAzOSwgNCwgMjI2LCA4NiwgMzksIDQsIDI1MSwgMTkxLCAzOSwgNCwgMjUxLCAKLSAgICAyNDIsIDM5LCA0LCAyMzEsIDE3OSwgMzksIDQsIDIzNCwgMCwgMzksIDQsIDIzMSwgNzMsIDM5LCA0LCAyNDMsIDUxLCAzOSwgCi0gICAgNCwgMjQ0LCAxMTYsIDM5LCA0LCAyMTQsIDIyNywgMzksIDQsIDIxNywgMjE5LCAzOSwgNCwgMjE3LCAxNDcsIDM5LCA0LCAKLSAgICAyNDcsIDIyNCwgMzksIDQsIDI0NywgMjIxLCAzOSwgNCwgMjMzLCA3NCwgMzksIDQsIDIyNCwgMSwgMzksIDQsIDI0OCwgMjgsIAotICAgIDM5LCA0LCAyMjksIDIxOSwgMzksIDQsIDIyMiwgODksIDM5LCA0LCAyMjAsIDI0MSwgMzksIDQsIDIxMiwgODUsIDM5LCA0LCAKLSAgICAyMTIsIDY2LCAzOSwgNCwgMjUwLCAxMTYsIDM5LCA0LCAyMzUsIDEyNSwgMzksIDQsIDIyOSwgNywgMzksIDQsIDIxMywgMzUsIAotICAgIDM5LCA0LCAyMzQsIDE4NywgMzksIDQsIDIyOSwgMTM2LCAzOSwgNCwgMjQzLCAzMSwgMzksIDQsIDIzMSwgMTQ1LCAzOSwgNCwgCi0gICAgMjI5LCAxODQsIDM5LCA0LCAyMjgsIDE2LCAzOSwgNCwgNzIsIDM5LCA0LCAyMzUsIDI1MSwgMzksIDQsIDI0MSwgMTY1LCAKLSAgICAzOSwgNCwgMjQxLCAxNDYsIDM5LCA0LCAyMTMsIDIzNSwgMzksIDQsIDIxMywgMjI2LCAzOSwgNCwgMjI1LCAyNDAsIDM5LCAKLSAgICA0LCAyNTEsIDE4OSwgMzksIDQsIDI1MSwgMTg0LCAzOSwgNCwgMjMxLCAxNzIsIDM5LCA0LCAyMzMsIDI1MywgMzksIDQsIAotICAgIDIzMSwgNzAsIDM5LCA0LCAyNDMsIDQ3LCAzOSwgNCwgMjQ0LCA5MCwgMzksIDQsIDIxNCwgMTU0LCAzOSwgNCwgMjE3LCA3MSwgCi0gICAgMzksIDQsIDIxNywgMTI4LCAzOSwgNCwgMjQ3LCAyMTYsIDM5LCA0LCAyNDcsIDIyMCwgMzksIDQsIDIzMywgMTMsIDM5LCA0LCAKLSAgICAyMjMsIDE4OCwgMzksIDQsIDI0NywgMjExLCAzOSwgNCwgMjI5LCAyMTMsIDM5LCA0LCAyMjAsIDExNywgMzksIDQsIDIyMCwgCi0gICAgMjEyLCAzOSwgNCwgMjEyLCAzNywgMzksIDQsIDIxMiwgNjIsIDM5LCA0LCAyNDksIDI0NCwgMzksIDQsIDIzNSwgMTEwLCAKLSAgICAzOSwgNCwgMjI5LCAwLCAzOSwgNCwgMjEyLCAyNTUsIDM5LCA0LCAyMzQsIDEwMSwgMzksIDQsIDIyOSwgMTI4LCAzOSwgNCwgCi0gICAgMjQyLCAxOTAsIDM5LCA0LCAyMzEsIDQyLCAzOSwgNCwgMjI5LCA2NCwgMzksIDQsIDIyOCwgMTAsIDM5LCA0LCA2MSwgMzksIAotICAgIDQsIDI1NCwgMzIsIDM5LCA0LCAyMjksIDE1NSwgMzksIDQsIDE1OSwgMzksIDQsIDI0MiwgMSwgMzksIDQsIDIxNCwgNDksIAotICAgIDM5LCA0LCAyMTQsIDM5LCAzOSwgNCwgMTkzLCAzOSwgNCwgMjUxLCAxOTUsIDM5LCA0LCAyNTIsIDEwNywgMzksIDQsIDIzMSwgCi0gICAgMTg3LCAzOSwgNCwgMjM0LCA0LCAzOSwgNCwgMjM0LCAzLCAzOSwgNCwgMjMxLCA3NywgMzksIDQsIDI0MywgNTUsIDM5LCA0LCAKLSAgICAyNDQsIDE2NCwgMzksIDQsIDIxNSwgMSwgMzksIDQsIDIxOCwgNTIsIDM5LCA0LCAyMTcsIDE2MSwgMzksIDQsIDI0NywgCi0gICAgMjMyLCAzOSwgNCwgMjQ3LCAyMjMsIDM5LCA0LCAyMzMsIDE1NywgMzksIDQsIDIwMywgMzksIDQsIDI0OCwgMTY0LCAzOSwgCi0gICAgNCwgMjI5LCAyMjgsIDM5LCA0LCAyMjIsIDIwMiwgMzksIDQsIDIyMSwgMjQsIDM5LCA0LCAyMTIsIDEwOSwgMzksIDQsIAotICAgIDIxMiwgNzUsIDM5LCA0LCAyNTAsIDIxOSwgMzksIDQsIDIzNSwgMTM5LCAzOSwgNCwgMjI5LCAxNiwgMzksIDQsIDE4NiwgCi0gICAgMzksIDQsIDE4MSwgMzksIDQsIDIzNCwgMjM5LCAzOSwgNCwgMjI5LCAxNDEsIDM5LCA0LCAyNDMsIDExMCwgMzksIDQsIAotICAgIDE4OCwgMzksIDQsIDIwNSwgMzksIDQsIDIyOCwgMjMsIDM5LCA0LCAyMjcsIDQ5LCAzOSwgNCwgMjI3LCA0NSwgMzksIDQsIAotICAgIDI0MSwgMzksIDM5LCA0LCAyMTMsIDIwMiwgMzksIDQsIDIxMywgMTk4LCAzOSwgNCwgMjI1LCAxMjksIDM5LCA0LCAyNTEsIAotICAgIDE4NywgMzksIDQsIDI1MSwgMTE4LCAzOSwgNCwgMjMxLCAxNjcsIDM5LCA0LCAyMzMsIDI1MSwgMzksIDQsIDIzMSwgNjYsIAotICAgIDM5LCA0LCAyNDMsIDQzLCAzOSwgNCwgMjQ0LCAzLCAzOSwgNCwgMjE0LCAxMDgsIDM5LCA0LCAyMTYsIDIzMCwgMzksIDQsIAotICAgIDIxNywgMTA2LCAzOSwgNCwgMjQ3LCAyMTQsIDM5LCA0LCAyNDcsIDIxOCwgMzksIDQsIDIzMiwgMTgwLCAzOSwgNCwgMjIzLCAKLSAgICA5OSwgMzksIDQsIDI0NywgNzksIDM5LCA0LCAyMjksIDIwMCwgMzksIDQsIDIxOSwgMjI2LCAzOSwgNCwgMjIwLCAxODEsIAotICAgIDM5LCA0LCAyMTIsIDE0LCAzOSwgNCwgMjEyLCA1OSwgMzksIDQsIDI0OSwgMTEzLCAzOSwgNCwgMjM1LCA2MiwgMzksIDQsIAotICAgIDIyOCwgMjQ2LCAzOSwgNCwgMjEyLCAyMjAsIDM5LCA0LCAyMzQsIDE5LCAzOSwgNCwgMjI5LCAxMjYsIDM5LCA0LCAyNDIsIAotICAgIDE0MCwgMzksIDQsIDIzMCwgMjAyLCAzOSwgNCwgMjI4LCAxNzUsIDM5LCA0LCAyMjcsIDI1MSwgMzksIDQsIDY5LCAzOSwgNCwgCi0gICAgMjE1LCAxNjAsIDM5LCA0LCAyNDAsIDIxMiwgMzksIDQsIDI0MCwgMjAyLCAzOSwgNCwgMjEzLCAxODMsIDM5LCA0LCAyMTMsIAotICAgIDE3NywgMzksIDQsIDIyNSwgMzUsIDM5LCA0LCAyNTEsIDE4NiwgMzksIDQsIDI1MSwgNTQsIDM5LCA0LCAyMzEsIDE2NiwgCi0gICAgMzksIDQsIDIzMywgMjQ5LCAzOSwgNCwgMjMxLCA2NSwgMzksIDQsIDI0MywgNDIsIDM5LCA0LCAyNDMsIDIwNSwgMzksIDQsIAotICAgIDIxNCwgOTksIDM5LCA0LCAyMTYsIDgyLCAzOSwgNCwgMjE3LCA5MCwgMzksIDQsIDI0NywgMjEyLCAzOSwgNCwgMjQ3LCAKLSAgICAyMTcsIDM5LCA0LCAyMzIsIDE1NiwgMzksIDQsIDIyMywgNTEsIDM5LCA0LCAyNDYsIDMzLCAzOSwgNCwgMjI5LCAxOTUsIAotICAgIDM5LCA0LCAyMTksIDI3LCAzOSwgNCwgMjIwLCAxNTAsIDM5LCA0LCAyMTIsIDgsIDM5LCA0LCAyMTIsIDU1LCAzOSwgNCwgCi0gICAgMjQ5LCA1MywgMzksIDQsIDIzNSwgNTQsIDM5LCA0LCAyMjgsIDI0MiwgMzksIDQsIDIxMiwgMjAzLCAzOSwgNCwgMjMzLCAKLSAgICAyMzgsIDM5LCA0LCAyMjksIDEyNSwgMzksIDQsIDI0MiwgOTIsIDM5LCA0LCAyMzAsIDE3MiwgMzksIDQsIDIyOCwgOTIsIAotICAgIDM5LCA0LCAyMjcsIDI0NywgMzksIDQsIDc1LCAzOSwgNCwgMjI3LCA2MiwgMzksIDQsIDIyOSwgODYsIDM5LCA0LCAyNDEsIAotICAgIDU0LCAzOSwgNCwgMjQxLCA0MiwgMzksIDQsIDIxMywgMjE0LCAzOSwgNCwgMjEzLCAyMDMsIDM5LCA0LCAyMjUsIDE1MCwgCi0gICAgMzksIDQsIDI1MSwgMTg4LCAzOSwgNCwgMjUxLCAxMjgsIDM5LCA0LCAyMzEsIDE2OCwgMzksIDQsIDIzMywgMjUyLCAzOSwgCi0gICAgNCwgMjMxLCA2OCwgMzksIDQsIDI0MywgNDUsIDM5LCA0LCAyNDMsIDQ0LCAzOSwgNCwgMjQ0LCAxMiwgMzksIDQsIDIxNCwgCi0gICAgMTE5LCAzOSwgNCwgMTA4LCAzOSwgNCwgMjE3LCAxMDksIDM5LCA0LCAyNDcsIDIxNSwgMzksIDQsIDI0NywgMjE5LCAzOSwgCi0gICAgNCwgMjMyLCAyMDgsIDM5LCA0LCAyMjMsIDExMiwgMzksIDQsIDI0NywgOTksIDM5LCA0LCAyMjksIDIwNCwgMzksIDQsIAotICAgIDIxOSwgMjQyLCAzOSwgNCwgMjIwLCAxODcsIDM5LCA0LCAyMTIsIDE2LCAzOSwgNCwgMjEyLCA2MCwgMzksIDQsIDI0OSwgCi0gICAgMTc1LCAzOSwgNCwgMjM1LCA3MSwgMzksIDQsIDIyOCwgMjQ3LCAzOSwgNCwgMjEyLCAyMzUsIDM5LCA0LCAyMzQsIDM3LCAKLSAgICAzOSwgNCwgMjI5LCAxMjcsIDM5LCA0LCAyNDIsIDE1MCwgMzksIDQsIDIzMCwgMjMxLCAzOSwgNCwgMjI4LCAxODUsIDM5LCAKLSAgICA0LCAyMjcsIDI1MywgMzksIDQsIDc0LCAzOSwgNCwgMjQ1LCAxMDgsIDM5LCA0LCAyMjksIDE0NiwgMzksIDQsIDI0MSwgCi0gICAgMjIyLCAzOSwgNCwgMjQxLCAxOTMsIDM5LCA0LCAyMTQsIDYsIDM5LCA0LCAyMTMsIDI1MywgMzksIDQsIDIyNiwgOTYsIDM5LCAKLSAgICA0LCAyNTEsIDE5MiwgMzksIDQsIDI1MSwgMjUxLCAzOSwgNCwgMjMxLCAxODAsIDM5LCA0LCAyMzQsIDEsIDM5LCA0LCAyMzMsIAotICAgIDI1NSwgMzksIDQsIDIzMSwgNzQsIDM5LCA0LCAyNDMsIDUyLCAzOSwgNCwgMjQzLCA1MCwgMzksIDQsIDI0NCwgMTIzLCAzOSwgCi0gICAgNCwgMjE0LCAyMzIsIDM5LCA0LCAyMTcsIDIyOSwgMzksIDQsIDIxNywgMTQ4LCAzOSwgNCwgMjQ3LCAyMjUsIDM5LCA0LCAKLSAgICAyNDcsIDIyMiwgMzksIDQsIDIzMywgODIsIDM5LCA0LCAyMjQsIDIxLCAzOSwgNCwgMjQ4LCA0MSwgMzksIDQsIDIyOSwgCi0gICAgMjIwLCAzOSwgNCwgMjIyLCAxMDAsIDM5LCA0LCAyMjAsIDI0MywgMzksIDQsIDIxMiwgODcsIDM5LCA0LCAyMTIsIDY3LCAKLSAgICAzOSwgNCwgMjUwLCAxMjQsIDM5LCA0LCAyMzUsIDEyNywgMzksIDQsIDIyOSwgOSwgMzksIDQsIDIxMywgMzgsIDM5LCA0LCAKLSAgICAyMzQsIDE4OCwgMzksIDQsIDIyOSwgMTM3LCAzOSwgNCwgMjI5LCAxMzMsIDM5LCA0LCAyNDMsIDM4LCAzOSwgNCwgMjQzLCAKLSAgICAyNywgMzksIDQsIDIzMSwgMTU2LCAzOSwgNCwgMjI5LCAxODcsIDM5LCA0LCAyMjgsIDE3LCAzOSwgNCwgMjI5LCAxNjEsIAotICAgIDM5LCA0LCAyMzMsIDQ2LCAzOSwgMjQ5LCAxNTcsIDM5LCAyNDMsIDIwMCwgMjE5LCA2OSwgMzksIDIyNCwgMTU4LCA3NywgCi0gICAgMzksIDQsIDIyOSwgMjAzLCAyNDQsIDE2NCwgMzksIDQsIDIyOSwgMjAzLCAxODEsIDM5LCA0LCAyMjksIDIwMywgMjE5LCAKLSAgICAyMjYsIDM5LCAxNiwgMjQ0LCAxMTMsIDM5LCAxNiwgMjM0LCAxODYsIDM5LCAxNiwgMjE3LCAzNCwgMzksIDE2LCAyMjksIAotICAgIDM5LCAzOSwgMTYsIDI1MiwgNjYsIDM5LCAxNiwgMjQ0LCAxNjMsIDM5LCAxNiwgMjE4LCA0OSwgMzksIDE2LCAyNDgsIDEyMSwgCi0gICAgMzksIDE2LCAyNDcsIDc4LCAzOSwgMTYsIDIzMywgMjI3LCAzOSwgMTYsIDIxNiwgMjM0LCAzOSwgMTYsIDI0NywgOTgsIDM5LCAKLSAgICAxNiwgMjM1LCA2MywgMzksIDIxLCAyMTIsIDc5LCAzOSwgMjEsIDExNiwgMzksIDIxLCAxMDksIDM5LCAyMSwgMTY2LCAzOSwgCi0gICAgMjEsIDE2MywgMzksIDIxLCAxODAsIDM5LCAyMSwgMTg5LCAzOSwgMjEsIDE5OCwgMzksIDIxLCAxOTUsIDM5LCAyMSwgMjAwLCAKLSAgICAzOSwgNCwgMjI5LCAyMDMsIDE4OCwgMzksIDQsIDIyOSwgMjAzLCAyNDcsIDk5LCAzMywgNiwgMSwgMjEyLCA4MywgMzMsIDMsIAotICAgIDEsIDIxMiwgODMsIDMzLCA2LCAxLCAyNDUsIDI0NSwgMzMsIDMsIDEsIDI0NSwgMjQ1LCAzMywgNiwgMSwgMjIzLCAyMDIsIAotICAgIDI0NSwgMjQ3LCAzMywgMywgMSwgMjIzLCAyMDIsIDI0NSwgMjQ3LCAzMywgNiwgMSwgMjM1LCAxODMsIDMzLCAzLCAxLCAKLSAgICAyMzUsIDE4MywgMzMsIDYsIDEsIDI0NywgMTEzLCAzMywgMywgMSwgMjQ3LCAxMTMsIDMzLCA2LCAxLCAyMzAsIDIxMCwgCi0gICAgMjE1LCAxNzUsIDMzLCAzLCAxLCAyMzAsIDIxMCwgMjE1LCAxNzUsIDMzLCA2LCAxLCAyNTEsIDY0LCAyMjcsIDY3LCAzMywgCi0gICAgMywgMSwgMjUxLCA2NCwgMjI3LCA2NywgMzMsIDYsIDEsIDIyOSwgMTY5LCAyMTMsIDIyLCAzMywgMywgMSwgMjI5LCAxNjksIAotICAgIDIxMywgMjIsIDMzLCA2LCAxLCAyMTMsIDE5LCAyLCAyNTIsIDEwMiwgMjEzLCAyMiwgMzMsIDMsIDEsIDIxMywgMTksIDIsIAotICAgIDI1MiwgMTAyLCAyMTMsIDIyLCAzMywgNiwgMSwgMjM1LCAxODEsIDIxMywgNDksIDMzLCAzLCAxLCAyMzUsIDE4MSwgMjEzLCAKLSAgICA0OSwgMzMsIDYsIDEsIDIyMywgMjAyLCAyMTIsIDIwMywgMzMsIDMsIDEsIDIyMywgMjAyLCAyMTIsIDIwMywgMzMsIDYsIDEsIAotICAgIDIzNSwgMTgxLCA2MSwgMzMsIDMsIDEsIDIzNSwgMTgxLCA2MSwgMzMsIDYsIDEsIDI0OSwgMTkzLCAyMzIsIDIyMSwgMjEyLCAKLSAgICAxNzQsIDMzLCAzLCAxLCAyNDksIDE5MywgMjMyLCAyMjEsIDIxMiwgMTc0LCAzMywgNiwgMSwgMjUxLCAxMzcsIDIxMiwgCi0gICAgMTc0LCAzMywgMywgMSwgMjUxLCAxMzcsIDIxMiwgMTc0LCAzMywgNiwgMSwgMjM1LCAxODEsIDI0OSwgMTkzLCAyMzIsIAotICAgIDIyMSwgMjEyLCAxNzQsIDMzLCAzLCAxLCAyMzUsIDE4MSwgMjQ5LCAxOTMsIDIzMiwgMjIxLCAyMTIsIDE3NCwgMzMsIDYsIAotICAgIDEsIDIxMiwgMjM3LCAzMywgMywgMSwgMjEyLCAyMzcsIDMzLCA2LCAxLCAyMjMsIDIwMiwgMjE2LCAxMzYsIDMzLCAzLCAxLCAKLSAgICAyMjMsIDIwMiwgMjE2LCAxMzYsIDMzLCA2LCAxLCAyMTksIDIzNiwgMjQ4LCA0MSwgMzMsIDMsIDEsIDIxOSwgMjM2LCAyNDgsIAotICAgIDQxLCAzMywgNiwgMSwgMjE5LCAyMzYsIDI0NSwgMTMxLCAzMywgMywgMSwgMjE5LCAyMzYsIDI0NSwgMTMxLCAzMywgNiwgMSwgCi0gICAgMjE5LCAyMzYsIDI0NSwgMTE3LCAzMywgMywgMSwgMjE5LCAyMzYsIDI0NSwgMTE3LCAzMywgNiwgMSwgMjMwLCAyMTQsIDc1LCAKLSAgICAzMywgMywgMSwgMjMwLCAyMTQsIDc1LCAzMywgNiwgMSwgMjUxLCAxNjMsIDc1LCAzMywgMywgMSwgMjUxLCAxNjMsIDc1LCAKLSAgICAzMywgNiwgMSwgNTEsIDIzMCwgMjE0LCA3NSwgMzMsIDMsIDEsIDUxLCAyMzAsIDIxNCwgNzUsIDMzLCAxLCAyMzAsIDE1NiwgCi0gICAgNzUsIDM3LCAzMywgMjE0LCA4NCwgMzcsIDMzLCAyMTcsIDIwMSwgMjMxLCA0LCA1MiwgMzcsIDMzLCAyNDAsIDIwMSwgMjMxLCAKLSAgICA0LCA1MiwgMzcsIDMzLCAyMTcsIDEwMSwgMjMxLCA0LCA1MiwgMjIwLCAyMSwgMjUzLCAxMzIsIDM3LCAzMywgMjM0LCAxOTgsIAotICAgIDM3LCAzMywgMjI2LCAxMDEsIDMzLCAyMzQsIDE5OCwgMzMsIDIyNiwgMTAxLCAzMywgNiwgMSwgMjQ2LCAxLCAzMywgMywgMSwgCi0gICAgMjQ2LCAxLCAzMywgNiwgMSwgMjQ1LCAyMzgsIDMzLCAzLCAxLCAyNDUsIDIzOCwgMzMsIDYsIDEsIDIxMiwgNDUsIDMzLCAzLCAKLSAgICAxLCAyMTIsIDQ1LCAzMywgNiwgMSwgMjUwLCAxNDAsIDMzLCAzLCAxLCAyNTAsIDE0MCwgMzMsIDYsIDEsIDI0NSwgMjM3LCAKLSAgICAzMywgMywgMSwgMjQ1LCAyMzcsIDMzLCA2LCAxLCAyMTcsIDIzMCwgMiwgMjMxLCAzNywgMTAxLCAzMywgMywgMSwgMjE3LCAKLSAgICAyMzAsIDIsIDIzMSwgMzcsIDEwMSwgMzMsIDYsIDEsIDIxNiwgNDMsIDMzLCAzLCAxLCAyMTYsIDQzLCAzMywgNiwgMSwgCi0gICAgMjE2LCAxMTksIDMzLCAzLCAxLCAyMTYsIDExOSwgMzMsIDYsIDEsIDIxNiwgMTIzLCAzMywgMywgMSwgMjE2LCAxMjMsIDMzLCAKLSAgICA2LCAxLCAyMTcsIDIzNSwgMzMsIDMsIDEsIDIxNywgMjM1LCAzMywgNiwgMSwgMjQwLCAxOTAsIDMzLCAzLCAxLCAyNDAsIAotICAgIDE5MCwgMzMsIDYsIDEsIDIyMCwgMTMyLCAzMywgMywgMSwgMjIwLCAxMzIsIDIwLCAxLCA2MSwgMjAsIDEsIDE4MSwgMjAsIAotICAgIDEsIDY5LCAyMCwgMSwgMjMzLCAyMzgsIDIwLCAxLCAyNDUsIDE2NSwgMjAsIDEsIDIyNCwgMSwgMjAsIDEsIDIxOCwgMzUsIAotICAgIDIwLCAxLCA3NSwgMjAsIDEsIDIyOCwgMTAsIDIwLCAxLCA3MiwgMjAsIDEsIDIzMywgMTU3LCAyMCwgMSwgMTkzLCAyMCwgMSwgCi0gICAgMjIzLCAxMzYsIDIwLCAxLCAyMjMsIDE4MiwgMjAsIDEsIDIzMywgNzMsIDIwLCAxLCAyMzEsIDE0NCwgMjAsIDEsIDIxOCwgCi0gICAgNDksIDIwLCAxLCAyMjksIDIyNiwgMjAsIDEsIDIyOSwgMTQsIDIwLCAxLCAxODMsIDIwLCAxLCAyMTgsIDIwNSwgMjAsIDEsIAotICAgIDIzMCwgMTcyLCAyMCwgMSwgMjIwLCAyMDcsIDIwLCAxLCAyMjAsIDExNywgMjAsIDEsIDIyMCwgMjE3LCAyMCwgMSwgMjIxLCAKLSAgICA0NCwgMjAsIDEsIDIzMywgMTc3LCAyMCwgMSwgMjM0LCAxNjIsIDIwLCAxLCAyMjgsIDY0LCAyMCwgMSwgMjI4LCA5MiwgMjAsIAotICAgIDEsIDIyOCwgMjQxLCAyMCwgMSwgMjEyLCAyMTcsIDIwLCAxLCAyMjAsIDE1MCwgMjAsIDEsIDIxMiwgMTc4LCAyMCwgMSwgCi0gICAgMTg2LCAyMCwgMSwgMjI4LCAxMjAsIDIwLCAxLCAyMzQsIDE0OCwgMjAsIDEsIDIyNiwgMjcsIDIwLCAxLCAyMjksIDcsIDIwLCAKLSAgICAxLCAyMjgsIDEwMSwgMjAsIDEsIDIyNSwgMzAsIDIwLCAxLCAyMTMsIDE4MCwgMjAsIDEsIDIyNiwgODYsIDIwLCAxLCAyNDQsIAotICAgIDExNiwgMjAsIDEsIDIyMywgNTEsIDIwLCAxLCAyMzIsIDE1NiwgMjAsIDEsIDIzMSwgNDIsIDIwLCAxLCAyMjksIDY0LCAyMCwgCi0gICAgMSwgMjIzLCAyMDQsIDIwLCAxLCAyMjQsIDYxLCAyMCwgMSwgMjM0LCAxNzEsIDIwLCAxLCAyMjksIDkzLCAyMCwgMSwgMjI5LCAKLSAgICAxNDEsIDIwLCAxLCAyMjksIDE1OSwgMjAsIDEsIDIyMCwgMTg3LCAyMCwgMSwgMjI1LCAzMywgMjAsIDEsIDI0MywgMjA1LCAKLSAgICAyMCwgMSwgMjQ0LCA2LCAyMCwgMSwgMjE0LCA0OSwgMjAsIDEsIDIwNSwgMjAsIDEsIDIzMywgMTMsIDIwLCAxLCAyMjUsIAotICAgIDI0MCwgMjAsIDEsIDIzMiwgMTc0LCAyMCwgMSwgMjM0LCAzNywgMjAsIDEsIDIzMSwgMTc3LCAyMCwgMSwgMjIzLCAyMzMsIAotICAgIDIwLCAxLCAyMzEsIDEyMiwgMjAsIDEsIDE4OCwgMjAsIDEsIDIxNywgNzEsIDIwLCAxLCAyMzQsIDEwMSwgMjAsIDEsIDIzMCwgCi0gICAgMjMxLCAyMCwgMSwgMjMxLCAxODUsIDIwLCAxLCAyMTcsIDE4MywgMjAsIDEsIDIzNCwgNCwgMjAsIDEsIDIxNywgMjAwLCAKLSAgICAyMCwgMSwgMjI4LCA5MywgMjAsIDEsIDIyMiwgMTY2LCAyMCwgMSwgMjQ0LCAxNjAsIDIwLCAxLCAyMzQsIDYsIDIwLCAxLCAKLSAgICAyMzQsIDMzLCAyMCwgMzcsIDE1MiwgMjM0LCAxNCwgMjAsIDM3LCAxNTIsIDIxNiwgNzQsIDIwLCAyMjksIDEzLCAyMCwgCi0gICAgMjQzLCAyMDAsIDIxOSwgNjksIDIwLCAyNDksIDE2NCwgMjAsIDI0OSwgMTU3LCAyMCwgMjIxLCA3MCwgMjAsIDIyNCwgMTU4LCAKLSAgICA3NywgNTksIDEsIDI1MCwgMzMsIDE2MCwgMjEyLCAyNDUsIDIyNSwgMTkzLCA1OSwgMSwgMjUwLCAzMywgMTYwLCAyMTMsIAotICAgIDU5LCAyMjUsIDE5MywgNTksIDEsIDI1MCwgMzMsIDE2MCwgMjEyLCAyNDUsIDIyMSwgNywgNTksIDEsIDI1MCwgMzMsIDE2MCwgCi0gICAgMjEzLCA1OSwgMjIxLCA3LCA1OSwgMSwgMjUwLCAzMywgMTYwLCAyMTIsIDI0NSwgMjI0LCAxNzUsIDU5LCAxLCAyNTAsIDMzLCAKLSAgICAxNjAsIDIxMywgNTksIDIyNCwgMTc1LCA1OSwgMSwgMjUwLCAzMywgMTYwLCAyMTIsIDI0NSwgMjIzLCA1MSwgNTksIDEsIAotICAgIDI1MCwgMzMsIDE2MCwgMjEzLCA1OSwgMjIzLCA1MSwgNTksIDEsIDI0NCwgMjQ0LCAyNDYsIDcyLCAxNjAsIDEzNCwgNTksIAotICAgIDEsIDEyNCwgMjQ2LCA3MiwgMTYwLCAxMzQsIDU5LCAxLCAyMzEsIDM4LCAyNDYsIDcyLCAxNjAsIDEzNCwgNTksIDEsIDExNSwgCi0gICAgMjQ2LCA3MiwgMTYwLCAxMzQsIDU5LCAxLCAyNDQsIDI0MywgMjQ2LCA3MiwgMTYwLCAxMzQsIDU5LCAxLCAyNDQsIDI0NCwgCi0gICAgMjQ2LCA3MiwgMjMzLCA2MywgMTYwLCAxMzQsIDU5LCAxLCAxMjQsIDI0NiwgNzIsIDIzMywgNjMsIDE2MCwgMTM0LCA1OSwgCi0gICAgMSwgMjMxLCAzOCwgMjQ2LCA3MiwgMjMzLCA2MywgMTYwLCAxMzQsIDU5LCAxLCAxMTUsIDI0NiwgNzIsIDIzMywgNjMsIAotICAgIDE2MCwgMTM0LCA1OSwgMSwgMjQ0LCAyNDMsIDI0NiwgNzIsIDIzMywgNjMsIDE2MCwgMTM0LCA1OSwgMSwgMjQ0LCAyNDQsIAotICAgIDIzMywgNjMsIDE2MCwgMTM0LCA1OSwgMSwgMTI0LCAyMzMsIDYzLCAxNjAsIDEzNCwgNTksIDEsIDIzMSwgMzgsIDIzMywgCi0gICAgNjMsIDE2MCwgMTM0LCA1OSwgMSwgMTE1LCAyMzMsIDYzLCAxNjAsIDEzNCwgNTksIDEsIDI0NCwgMjQzLCAyMzMsIDYzLCAKLSAgICAxNjAsIDEzNCwgNTksIDEsIDYyLCA3MSwgMTM0LCA1OSwgMSwgNjIsIDIyMCwgMjMsIDU5LCAxLCA2MiwgMTk5LCAxMzQsIAotICAgIDU5LCAxLCAyMzIsIDE2MywgNDYsIDI0OSwgMTAwLCAyNTQsIDE4LCA1OSwgMSwgMjI0LCA0OCwgMTE0LCA2OCwgNTksIDEsIAotICAgIDIyNCwgNDgsIDExOSwgNjgsIDU5LCAxLCAyMjQsIDQ4LCAyNDQsIDI1NCwgNzcsIDU5LCAxLCAyMjQsIDQ4LCAyMzUsIDE5MSwgCi0gICAgMjQ0LCAyNTQsIDc3LCA1OSwgMSwgMTE1LCAyMzUsIDE5MSwgMjQ0LCAyNTQsIDc3LCA1OSwgMSwgMjE5LCA1MSwgMjQsIAotICAgIDEyNCwgMjE2LCAyNDEsIDU5LCAxLCAyMTksIDUxLCAyNCwgMTE1LCAyMTYsIDI0MSwgNywgNiwgMSwgMjQ1LCAxNTYsIDI1NCwgCi0gICAgNzgsIDcsIDMsIDEsIDI0NSwgMTU2LCAyNTQsIDc4LCA3LCA2LCAxLCAyNDUsIDE1NiwgMjU0LCAxMDMsIDcsIDMsIDEsIAotICAgIDI0NSwgMTU2LCAyNTQsIDEwMywgNywgNiwgMSwgMjQxLCAxOTEsIDcsIDMsIDEsIDI0MSwgMTkxLCA3LCA2LCAxLCAyMTYsIAotICAgIDYsIDcsIDMsIDEsIDIxNiwgNiwgNywgNiwgMSwgMjE2LCAxODcsIDcsIDMsIDEsIDIxNiwgMTg3LCA3LCA2LCAxLCAyNDksIAotICAgIDUxLCA3LCAzLCAxLCAyNDksIDUxLCA3LCA2LCAxLCAyNDksIDUyLCAyLCAyNDksIDE1NywgNywgMywgMSwgMjQ5LCA1MiwgMiwgCi0gICAgMjQ5LCAxNTcsIDcsIDEsIDMsIDYsIDI0NCwgMjMwLCA3LCAxLCAzLCA2LCAxOTcsIDcsIDYsIDEsIDI1NCwgMjMyLCA3LCAzLCAKLSAgICAxLCAyNTQsIDIzMiwgNywgNiwgMSwgMjUzLCAyNDAsIDcsIDMsIDEsIDI1MywgMjQwLCA3LCA2LCAxLCAyNTMsIDEwOCwgNywgCi0gICAgMywgMSwgMjUzLCAxMDgsIDcsIDYsIDEsIDI1MywgOTIsIDcsIDMsIDEsIDI1MywgOTIsIDcsIDYsIDEsIDI1MywgOTMsIDIsIAotICAgIDE5OSwgMTM0LCA3LCAzLCAxLCAyNTMsIDkzLCAyLCAxOTksIDEzNCwgNywgNiwgMSwgMjUzLCA4MywgNywgMywgMSwgMjUzLCAKLSAgICA4MywgNywgNiwgMSwgMjIzLCAyMDIsIDI1MCwgMjUzLCAyLCAyNDcsIDc0LCA3LCAzLCAxLCAyMjMsIDIwMiwgMjUwLCAyNTMsIAotICAgIDIsIDI0NywgNzQsIDcsIDYsIDEsIDIzNSwgMjgsIDIsIDkwLCA3LCAzLCAxLCAyMzUsIDI4LCAyLCA5MCwgNywgNiwgMSwgCi0gICAgMjM1LCAyOCwgMiwgMjQ3LCAyMDcsIDkwLCA3LCAzLCAxLCAyMzUsIDI4LCAyLCAyNDcsIDIwNywgOTAsIDcsIDYsIDEsIAotICAgIDIzNSwgMjgsIDIsIDIxOSwgNDUsIDI0LCAyNDcsIDIwNywgOTAsIDcsIDMsIDEsIDIzNSwgMjgsIDIsIDIxOSwgNDUsIDI0LCAKLSAgICAyNDcsIDIwNywgOTAsIDcsIDYsIDEsIDI1MSwgNjMsIDE1MCwgNywgMywgMSwgMjUxLCA2MywgMTUwLCA3LCA2LCAxLCAyMzMsIAotICAgIDE3MSwgMiwgMTI0LCA5MCwgNywgMywgMSwgMjMzLCAxNzEsIDIsIDEyNCwgOTAsIDcsIDYsIDEsIDE1NywgMiwgMTg0LCAKLSAgICAyMTksIDQ1LCAyMjYsIDI0NCwgNywgMywgMSwgMTU3LCAyLCAxODQsIDIxOSwgNDUsIDIyNiwgMjQ0LCA3LCA2LCAxLCAxNTcsIAotICAgIDIsIDIzMiwgMTc3LCA3LCAzLCAxLCAxNTcsIDIsIDIzMiwgMTc3LCA3LCA2LCAxLCAyMjcsIDQ5LCA3LCAzLCAxLCAyMjcsIAotICAgIDQ5LCA3LCA2LCAxLCAyMjYsIDIzMCwgMiwgMjE5LCA0NSwgMjE3LCA5MywgMjQ3LCAyNDYsIDcsIDMsIDEsIDIyNiwgMjMwLCAKLSAgICAyLCAyMTksIDQ1LCAyMTcsIDkzLCAyNDcsIDI0NiwgNywgNiwgMSwgMjI2LCAyMzAsIDIsIDI0NCwgMjIsIDcsIDMsIDEsIAotICAgIDIyNiwgMjMwLCAyLCAyNDQsIDIyLCA3LCA2LCAxLCAyMjYsIDIzMCwgMiwgMjE5LCAxNjEsIDIxOCwgMjcsIDcsIDMsIDEsIAotICAgIDIyNiwgMjMwLCAyLCAyMTksIDE2MSwgMjE4LCAyNywgNywgNiwgMSwgMjI0LCAyNDEsIDIsIDIxOSwgNDUsIDIxNywgOTMsIAotICAgIDI0NywgMjQ2LCA3LCAzLCAxLCAyMjQsIDI0MSwgMiwgMjE5LCA0NSwgMjE3LCA5MywgMjQ3LCAyNDYsIDcsIDYsIDEsIDIyNCwgCi0gICAgMjQxLCAyLCAyNDcsIDIwNywgOTAsIDcsIDMsIDEsIDIyNCwgMjQxLCAyLCAyNDcsIDIwNywgOTAsIDcsIDYsIDEsIDIyNCwgCi0gICAgMTEzLCAyMjMsIDg4LCA3LCAzLCAxLCAyMjQsIDExMywgMjIzLCA4OCwgNywgNiwgMSwgMjIzLCA0MSwgMjIzLCA4OCwgNywgCi0gICAgMywgMSwgMjIzLCA0MSwgMjIzLCA4OCwgNywgNiwgMSwgMjE1LCA4MCwgMiwgMjQ3LCAyMDcsIDkwLCA3LCAzLCAxLCAyMTUsIAotICAgIDgwLCAyLCAyNDcsIDIwNywgOTAsIDcsIDYsIDEsIDIxNCwgOTAsIDcsIDMsIDEsIDIxNCwgOTAsIDcsIDYsIDEsIDIxNCwgCi0gICAgMTI2LCAyMTIsIDE1MiwgNywgMywgMSwgMjE0LCAxMjYsIDIxMiwgMTUyLCA3LCA2LCAxLCAyMTcsIDEwNSwgMiwgOTAsIDcsIAotICAgIDMsIDEsIDIxNywgMTA1LCAyLCA5MCwgNywgNiwgMSwgMjE3LCAxMDUsIDIsIDIxOSwgNDUsIDIxNywgOTMsIDI0NywgMjQ2LCAKLSAgICA3LCAzLCAxLCAyMTcsIDEwNSwgMiwgMjE5LCA0NSwgMjE3LCA5MywgMjQ3LCAyNDYsIDcsIDYsIDEsIDIxNCwgMjIyLCA3LCAKLSAgICAzLCAxLCAyMTQsIDIyMiwgNywgNiwgMSwgMjQ1LCAzMCwgNywgMywgMSwgMjQ1LCAzMCwgNywgNiwgMSwgMjM1LCAxNjksIDcsIAotICAgIDMsIDEsIDIzNSwgMTY5LCA3LCA2LCAxLCAyNDksIDE0NiwgNywgMywgMSwgMjQ5LCAxNDYsIDU5LCAxLCAyMTUsIDEwNCwgNywgCi0gICAgMywgMSwgMjQ2LCAyNCwgNywgMywgMSwgMjMyLCAxNDIsIDcsIDMsIDEsIDIzMCwgMTUwLCA3LCAzLCAxLCAyMjgsIDU3LCA3LCAKLSAgICAzLCAxLCAyMjMsIDQwLCA3LCAxLCAzLCA2LCAyMjMsIDQwLCA3LCAzLCAxLCAyMTYsIDcyLCA3LCAzLCAxLCAyMTUsIDE2NywgCi0gICAgNywgNiwgMSwgMjM1LCAyMTAsIDI0OSwgMywgNywgMywgMSwgMjM1LCAyMTAsIDI0OSwgMywgNywgNiwgMSwgMjM1LCAyMTAsIAotICAgIDI0NCwgMjMwLCA3LCAzLCAxLCAyMzUsIDIxMCwgMjQ0LCAyMzAsIDcsIDYsIDEsIDIzNSwgMjEwLCAyNDMsIDE3NywgNywgNiwgCi0gICAgMSwgMjE2LCA1OCwgMjM1LCAyMTAsIDI0MywgMTc3LCA3LCAzLCAxLCAyMTYsIDU4LCAyMzUsIDIxMCwgMjQzLCAxNzcsIDcsIAotICAgIDYsIDEsIDIxNiwgNTgsIDE1MCwgNywgMywgMSwgMjE2LCA1OCwgMTUwLCA3LCA2LCAxLCAyMzUsIDIxMCwgMTQ5LCA3LCAzLCAKLSAgICAxLCAyMzUsIDIxMCwgMTQ5LCA3LCA2LCAxLCAyMzUsIDIxMCwgMTk3LCA3LCAzLCAxLCAyMzUsIDIxMCwgMTk3LCA3LCA2LCAKLSAgICAxLCAyMzUsIDIxMCwgMjE4LCA5OSwgNywgMywgMSwgMjM1LCAyMTAsIDIxOCwgOTksIDU5LCAxLCAxMTUsIDI0OSwgMjI0LCAKLSAgICAyNTQsIDE3NCwgNTksIDEsIDI0OSwgMTY0LCA1OSwgMSwgMjIwLCAxNzUsIDI0NSwgNjEsIDUyLCA3LCA2LCAxLCAyMjIsIAotICAgIDE3MCwgNywgMywgMSwgMjIyLCAxNzAsIDcsIDYsIDEsIDIxNiwgNTgsIDI0MiwgNDEsIDcsIDMsIDEsIDIzMywgMTcxLCAyLCAKLSAgICAyMjMsIDIwNywgMjQxLCAzOCwgMjQsIDI1MSwgMjE4LCA3LCA2LCAxLCAyMzAsIDk4LCAyLCAyNDcsIDI0NiwgNywgMywgMSwgCi0gICAgMjMwLCA5OCwgMiwgMjQ3LCAyNDYsIDcsIDYsIDEsIDI0MywgMTc4LCAyLCAyMjcsIDExMiwgOTAsIDcsIDMsIDEsIDI0MywgCi0gICAgMTc4LCAyLCAyMjcsIDExMiwgOTAsIDcsIDYsIDEsIDIzNSwgMjgsIDIsIDIyNywgMTEyLCA5MCwgNywgMywgMSwgMjM1LCAKLSAgICAyOCwgMiwgMjI3LCAxMTIsIDkwLCA3LCA2LCAxLCAyMzAsIDk4LCAyLCAyMjcsIDExMiwgOTAsIDcsIDMsIDEsIDIzMCwgOTgsIAotICAgIDIsIDIyNywgMTEyLCA5MCwgNywgNiwgMSwgMjI0LCAxMTMsIDIsIDIyNywgMTEyLCA5MCwgNywgMywgMSwgMjI0LCAxMTMsIAotICAgIDIsIDIyNywgMTEyLCA5MCwgNywgNiwgMSwgMjIzLCA0LCAyLCAyMjcsIDExMiwgOTAsIDcsIDMsIDEsIDIyMywgNCwgMiwgCi0gICAgMjI3LCAxMTIsIDkwLCA3LCAxLCAzLCA2LCAyMTYsIDU4LCAxODMsIDcsIDI0NSwgNjYsIDEsIDIyMywgMjAyLCAyNDQsIAotICAgIDIzMCwgNywgMjQ1LCA2NiwgMSwgMjIzLCAyMDIsIDIyNiwgMjI5LCA3LCAyNDUsIDY2LCAxLCAyMzUsIDE5MSwgMTgzLCA3LCAKLSAgICAyNDUsIDY2LCAxLCAyNDAsIDE0NiwgMjMyLCAxODIsIDcsIDI0NSwgNjYsIDEsIDI1MywgMTkzLCAxODMsIDIxOCwgMTc1LCAKLSAgICAyMzAsIDMyLCAxLCA2MSwgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDcyLCAyMTgsIDE3NSwgMjMwLCAzMiwgNSwgMjQ2LCAzLCAKLSAgICAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgNjksIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCA3NCwgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIAotICAgIDc1LCAyMTgsIDE3NSwgMjMwLCAzMiwgNSwgMjQxLCAyMzYsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyMzQsIDM3LCAyMTgsIAotICAgIDE3NSwgMjMwLCAzMiwgMSwgMjM0LCAxMTMsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyNDIsIDE1MCwgMjE4LCAxNzUsIDIzMCwgCi0gICAgMzIsIDEsIDI0MiwgMjAwLCAyMTgsIDE3NSwgMjMwLCAzMiwgNSwgMjUzLCAyNDIsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAKLSAgICAyNDksIDE3NSwgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDI1MCwgMjMsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyMzUsIDcxLCAKLSAgICAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjM1LCAxMTEsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyMTYsIDk1LCAyMTgsIDE3NSwgCi0gICAgMjMwLCAzMiwgMSwgMjE2LCAxMDAsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyNDgsIDU2LCAyMTgsIDE3NSwgMjMwLCAzMiwgCi0gICAgMSwgMjQ4LCA2NSwgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDEwOCwgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDIxNywgMTA5LCAKLSAgICAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjQ3LCA5OSwgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDI0NywgMjE1LCAyMTgsIDE3NSwgCi0gICAgMjMwLCAzMiwgMSwgMjI4LCAxODUsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyMjUsIDE1MCwgMjE4LCAxNzUsIDIzMCwgMzIsIAotICAgIDEsIDIyNSwgMjUzLCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjUxLCAxMjgsIDIxOCwgMTc1LCAyMzAsIDMyLCAxLCAyNTEsIAotICAgIDE4OCwgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDIzMCwgMjMxLCAyMTgsIDE3NSwgMjMwLCAzMiwgMSwgMjIzLCAxMTIsIDIxOCwgCi0gICAgMTc1LCAyMzAsIDMyLCAxLCAyMzIsIDIwOCwgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDIyMywgNzMsIDIxOCwgMTc1LCAyMzAsIAotICAgIDMyLCAxLCAyMTksIDI0MiwgMjE4LCAxNzUsIDIzMCwgMzIsIDEsIDI0MSwgNTQsIDIxOCwgMTc1LCAyMzAsIDMyLCAzMCwgNSwgCi0gICAgNjEsIDIxOCwgMTc1LCAyMzAsIDMyLCAzMCwgNSwgNzIsIDIxOCwgMTc1LCAyMzAsIDMyLCAzMCwgNSwgNjksIDIxOCwgMTc1LCAKLSAgICAyMzAsIDMyLCAzMCwgNSwgNzQsIDIxOCwgMTc1LCAyMzAsIDMyLCAzMCwgNSwgMjI3LCA0OSwgMjE4LCAxNzUsIDIzMCwgMzIsIAotICAgIDIyNSwgMTQ2LCAyMzEsIDIyMSwgMjE4LCAxNzUsIDIzMCwgMzIsIDIyNSwgMTQ2LCAyMzEsIDIyMCwgMjE4LCAxNzUsIDIzMCwgCi0gICAgMzIsIDIyNSwgMTQ2LCAyMzEsIDIxOSwgMjE4LCAxNzUsIDIzMCwgMzIsIDIyNSwgMTQ2LCAyMzEsIDIxOCwgMjI4LCAxNjcsIAotICAgIDIzNSwgMjM3LCAyNDMsIDIyOCwgMTIyLCAyMjQsIDE2NiwgMjI4LCAxNjcsIDIzNSwgMjM3LCAyNDMsIDIyOCwgMTIyLCAKLSAgICAyNDIsIDksIDIyOCwgMTY3LCAyMzUsIDIzNywgMjQzLCAyMjgsIDEzMywgMjI0LCAxNjQsIDIyOCwgMTY3LCAyMzUsIDIzNywgCi0gICAgMjQzLCAyMjgsIDEyMiwgMjIwLCA0NSwgMjI4LCAxNjcsIDIzNSwgMjM3LCAyNDMsIDIyOCwgMTIyLCAyNDUsIDE0NSwgMjI4LCAKLSAgICAxNjcsIDIzNSwgMjM3LCAyNDMsIDIyOCwgMTMzLCAyMjAsIDQ0LCAyMjgsIDE2NywgMjM1LCAyMzcsIDIyNCwgMTY3LCA3NywgCi0gICAgMjI4LCAxNjcsIDIzNSwgMjM3LCAyMjUsIDE3MiwgNzcsIDIyOCwgMTY3LCAyMzUsIDIzNywgMjIzLCAyOSwgNzcsIDIyOCwgCi0gICAgMTY3LCAyMzUsIDIzNywgMjI0LCAxNjgsIDc3LCAyMjYsIDIwLCAxLCAxODEsIDIyNiwgMjAsIDEsIDIzNCwgMTM4LCAyMjYsIAotICAgIDIwLCAxLCAyNDMsIDExMCwgMjI2LCAyMCwgMSwgMjI5LCAxNTksIDIyNiwgMjAsIDEsIDI1MCwgMjE5LCAyMjYsIDIwLCAxLCAKLSAgICAyNTAsIDkyLCAyMjYsIDIwLCAxLCAyMzUsIDEzOSwgMjI2LCAyMCwgMSwgMjI4LCAyMywgMjI2LCAyMCwgMSwgMjE4LCA1MiwgCi0gICAgMjI2LCAyMCwgMSwgMjE3LCAxNjEsIDIyNiwgMjAsIDEsIDI0OCwgMTY0LCAyMjYsIDIwLCAxLCAyMDUsIDIyNiwgMjAsIDEsIAotICAgIDE5MywgMjI2LCAyMCwgMSwgMjI2LCAyMywgMjI2LCAyMCwgMSwgMjUyLCAxMDcsIDIyNiwgMjAsIDEsIDE4OCwgMjI2LCAyMCwgCi0gICAgMSwgMjE2LCAxNDEsIDIyNiwgMjAsIDEsIDIxNiwgMTMzLCAyMjYsIDIwLCAxLCAyNDUsIDI0OSwgMjI2LCAyMCwgMSwgMjE0LCAKLSAgICA0OSwgMjI2LCAyMCwgMSwgMjEyLCA3NSwgMjI2LCAyMCwgMSwgMjEyLCAxMDksIDIyNiwgMjAsIDEsIDMsIDYxLCAyMjYsIAotICAgIDIwLCAxLCAxODYsIDIyNiwgMjAsIDEsIDIwMywgMjI2LCAyMCwgMSwgMjMzLCAxNTcsIDIyNiwgMjAsIDEsIDIyMSwgMjQsIAotICAgIDIyNiwgMjAsIDEsIDIyMiwgMjAyLCAyMjYsIDIwLCAxLCAxNTksIDIyNiwgMjAsIDEsIDYxLCAyMjYsIDIwLCAxLCA3MiwgCi0gICAgMjI2LCAyMCwgMSwgNjksIDIyNiwgMjAsIDEsIDc0LCAyMjYsIDIwLCAxLCA3NSwgMjI2LCAyMCwgMSwgMjI0LCAyMzIsIAotICAgIDIyNiwgMjAsIDEsIDIxMywgMTUzLCAyMjYsIDIwLCAxLCAyNDQsIDE2NCwgMjI2LCAyMCwgMSwgMjQzLCA1LCAyMjYsIDIwLCAKLSAgICAxLCAyNDUsIDE2NSwgMjI2LCAyMCwgMjE5LCAxOCwgMSwgMjE0LCA0OSwgMjI2LCAyMCwgMjE5LCAxOCwgMSwgMTg2LCAyMjYsIAotICAgIDIwLCAxLCAyMTYsIDExNSwgMjI2LCAyMCwgMSwgMjE2LCAxMDUsIDIyNiwgMjAsIDEsIDI0OCwgODYsIDIyNiwgMjAsIDEsIAotICAgIDIyOCwgMTk4LCAyMjYsIDIwLCAxLCAyNTQsIDUwLCAxODYsIDIyNiwgMjAsIDEsIDIxNCwgMTE1LCAyMjEsIDI0LCAyMjYsIAotICAgIDIwLCAxLCAyMTQsIDExNiwgMTU5LCAyMjYsIDIwLCAxLCAyNTMsIDEzOCwgMjQ0LCAxNjQsIDIyNiwgMjAsIDIxOSwgMTgsIAotICAgIDEsIDIwMywgMjI2LCAyMCwgMjE4LCAyMjUsIDEsIDIwMywgMjI2LCAyMCwgMSwgMjUwLCAxODcsIDIyNiwgMjAsIDIyMCwgCi0gICAgODEsIDI0MSwgMjIwLCA3NywgMjI2LCAyMCwgNTEsIDI0MSwgMjIwLCA3NywgMjI2LCAyMCwgMTUyLCAyMjEsIDE3LCAyMjYsIAotICAgIDIwLCAxNTIsIDUxLCAyMjEsIDE3LCAxNjksIDUsIDI1MywgMjQyLCAxNjksIDUsIDIxNCwgMTI4LCAxNjksIDEsIDYxLCAKLSAgICAxNjksIDEsIDI1NCwgMjMyLCAxNjksIDEsIDcyLCAxNjksIDEsIDIzNiwgMjgsIDE2OSwgMSwgNjksIDE2OSwgMSwgMjE1LCAKLSAgICA5MiwgMTY5LCAxLCAxNjEsIDE0OSwgMTY5LCAxLCAxNjEsIDIyMywgODIsIDE2OSwgMSwgMTYxLCAxNTAsIDE2OSwgMSwgCi0gICAgMTYxLCAyMzIsIDIxNCwgMTY5LCAxLCA3NCwgMTY5LCAxLCAyNDUsIDE2NSwgMTY5LCAxLCAyNTQsIDEwOCwgMTY5LCAxLCAKLSAgICA3NSwgMTY5LCAxLCAyMjcsIDQ5LCAxNjksIDEsIDI1MywgMTA4LCAxNjksIDEsIDE4MSwgMTY5LCAxLCAyMzQsIDEzOCwgCi0gICAgMTY5LCAxLCAyNDMsIDExMCwgMTY5LCAxLCAyNDIsIDIyNSwgMTY5LCAxLCAyMjksIDE1OSwgMTY5LCAxLCAyNTAsIDIxOSwgCi0gICAgMTY5LCAxLCAyNTAsIDkyLCAxNjksIDEsIDIzNSwgMTM5LCAxNjksIDEsIDIzNSwgMTE1LCAxNjksIDEsIDIyOCwgMjMsIAotICAgIDE2OSwgMSwgMjE2LCAxMTUsIDE2OSwgMSwgMjE2LCAxMDUsIDE2OSwgMSwgMjQ4LCA4NiwgMTY5LCAxLCAyNDgsIDcwLCAKLSAgICAxNjksIDEsIDIyOCwgMTk4LCAxNjksIDEsIDIxOCwgNTIsIDE2OSwgMSwgMjE3LCAxNjEsIDE2OSwgMSwgMjQ4LCAxNjQsIAotICAgIDE2OSwgMSwgMjQ3LCAyMzIsIDE2OSwgMSwgMjA1LCAxNjksIDEsIDE5MywgMTY5LCAxLCAyMjYsIDIzLCAxNjksIDEsIDI1MiwgCi0gICAgMTA3LCAxNjksIDEsIDI1MSwgMTk1LCAxNjksIDEsIDE4OCwgMTY5LCAxLCAxODYsIDE2OSwgMSwgMjAzLCAxNjksIDEsIAotICAgIDIzMywgMTU3LCAxNjksIDEsIDIxNSwgMSwgMTY5LCAxLCAyMjEsIDI0LCAxNjksIDEsIDIxOSwgMTU3LCAxNjksIDEsIDIyMiwgCi0gICAgMjAyLCAxNjksIDEsIDE1OSwgMTY5LCAxLCAyMzIsIDIxMywgMTY5LCAyNDksIDEzMywgNSwgMjQyLCAyNSwgMTY5LCAzMCwgCi0gICAgNSwgMjU0LCAyMzIsIDE2OSwgMzAsIDUsIDcyLCAxNjksIDMwLCA1LCAyMzYsIDI4LCAxNjksIDMwLCA1LCA2OSwgMTY5LCAKLSAgICAzMCwgNSwgMjE1LCA5MiwgMTY5LCAzMCwgNSwgMTYxLCAxNDksIDE2OSwgMzAsIDUsIDE2MSwgMjIzLCA4MiwgMTY5LCAzMCwgCi0gICAgNSwgMTYxLCAxNTAsIDE2OSwgMzAsIDUsIDE2MSwgMjMyLCAyMTQsIDE2OSwgMzAsIDUsIDc0LCAxNjksIDMwLCA1LCAyNDUsIAotICAgIDE2NSwgMTY5LCAzMCwgNSwgMjU0LCAxMDgsIDE2OSwgMzAsIDUsIDc1LCAxNjksIDMwLCA1LCAyMjcsIDQ5LCAxNjksIDMwLCAKLSAgICA1LCAyNTMsIDEwOCwgMTY5LCA1LCAyMTQsIDEzMywgMTY5LCAyNDgsIDEyMywgMTY5LCA1MSwgMjQ4LCAxMjMsIDE2OSwgMjEsIAotICAgIDIxMiwgNzksIDE2OSwgMjEsIDExNiwgMTY5LCAyMSwgMTA5LCAxNjksIDIxLCAxNjYsIDE2OSwgMjEsIDE2MywgMTY5LCAyMSwgCi0gICAgMTgwLCAxNjksIDIxLCAxODksIDE2OSwgMjEsIDE5OCwgMTY5LCAyMSwgMTk1LCAxNjksIDIxLCAyMDAsIDM3LCA4MiwgMjEsIAotICAgIDIxMiwgNzksIDM3LCA4MiwgMjEsIDExNiwgMzcsIDgyLCAyMSwgMTA5LCAzNywgODIsIDIxLCAxNjYsIDM3LCA4MiwgMjEsIAotICAgIDE2MywgMzcsIDgyLCAyMSwgMTgwLCAzNywgODIsIDIxLCAxODksIDM3LCA4MiwgMjEsIDE5OCwgMzcsIDgyLCAyMSwgMTk1LCAKLSAgICAzNywgODIsIDIxLCAyMDAsIDM3LCA4MiwgMSwgNjEsIDM3LCA4MiwgMSwgNjksIDM3LCA4MiwgMSwgMTgxLCAzNywgODIsIDEsIAotICAgIDIwNSwgMzcsIDgyLCAxLCAxOTMsIDM3LCA4MiwgMSwgMjAzLCAzNywgODIsIDEsIDIxNCwgMTU0LCAzNywgODIsIDUsIDI1MywgCi0gICAgOTEsIDgyLCA1LCAyMTksIDIwNSwgMjUwLCAxODcsIDgyLCA1LCAyNTAsIDE4OCwgMjE0LCAxMzMsIDgyLCA1LCA1MSwgMjUwLCAKLSAgICAxODgsIDIxNCwgMTMzLCA4MiwgNSwgMjUwLCAxODgsIDEwOSwgODIsIDUsIDI1MCwgMTg4LCAxNjYsIDgyLCA1LCAyNTAsIAotICAgIDE4OCwgMjUzLCA5MSwgODIsIDUsIDIyNSwgMTEsIDgyLCAyNDMsIDc2LCAyNDQsIDcyLCA4MiwgMjUwLCAxNzAsIDgyLCAKLSAgICAyNDEsIDIxNCwgMjM0LCAxOTQsIDIzMywgMTQsIDIxLCAyMTIsIDc5LCAyMzQsIDE5NCwgMjMzLCAxNCwgMjEsIDExNiwgCi0gICAgMjM0LCAxOTQsIDIzMywgMTQsIDIxLCAxMDksIDIzNCwgMTk0LCAyMzMsIDE0LCAyMSwgMTY2LCAyMzQsIDE5NCwgMjMzLCAKLSAgICAxNCwgMjEsIDE2MywgMjM0LCAxOTQsIDIzMywgMTQsIDIxLCAxODAsIDIzNCwgMTk0LCAyMzMsIDE0LCAyMSwgMTg5LCAyMzQsIAotICAgIDE5NCwgMjMzLCAxNCwgMjEsIDE5OCwgMjM0LCAxOTQsIDIzMywgMTQsIDIxLCAxOTUsIDIzNCwgMTk0LCAyMzMsIDE0LCAyMSwgCi0gICAgMjAwLCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMTgxLCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjM0LCAxMzgsIDIzNCwgMTk0LCAKLSAgICAyMzMsIDE0LCAxLCAyNDMsIDExMCwgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDIyOSwgMTU5LCAyMzQsIDE5NCwgMjMzLCAxNCwgCi0gICAgMSwgMjIyLCAyMDIsIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAyMjEsIDI0LCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjEyLCAKLSAgICAxMDksIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAyMjgsIDIzLCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjE4LCA1MiwgMjM0LCAKLSAgICAxOTQsIDIzMywgMTQsIDEsIDI0MCwgMjE0LCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjA1LCAyMzQsIDE5NCwgMjMzLCAxNCwgCi0gICAgMSwgMTkzLCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjI2LCAyMywgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDE4OCwgMjM0LCAKLSAgICAxOTQsIDIzMywgMTQsIDEsIDI0OCwgMTY0LCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgMjUyLCAxMDcsIDIzNCwgMTk0LCAyMzMsIAotICAgIDE0LCAxLCAyMDMsIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAxODYsIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAyMzMsIDE1NywgCi0gICAgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDIxNCwgNDksIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAyMTcsIDE2MSwgMjM0LCAxOTQsIAotICAgIDIzMywgMTQsIDEsIDE1OSwgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDIxNSwgMSwgMjM0LCAxOTQsIDIzMywgMTQsIDEsIDI1MCwgCi0gICAgMjE5LCAyMzQsIDE5NCwgMjMzLCAxNCwgMSwgNjEsIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAyMjcsIDk5LCAyMzQsIDE5NCwgCi0gICAgMjMzLCAxNCwgMSwgNzIsIDIzNCwgMTk0LCAyMzMsIDE0LCAxLCAyMjcsIDQ5LCAyMzQsIDE5NCwgMjMzLCAxNCwgMzAsIAotICAgIDIxNSwgMTgzLCAyMzQsIDE5NCwgMjMzLCAxNCwgMzAsIDc0LCAyMzQsIDE5NCwgMjMzLCAxNCwgMzAsIDY5LCAyMzQsIDE5NCwgCi0gICAgMjMzLCAxNCwgMzAsIDI0NSwgMTY1LCAyMzQsIDE5NCwgMjMzLCAxNCwgMzAsIDc1LCAyMzQsIDE5NCwgMjMzLCAxNCwgMTYwLCAKLSAgICAyMjUsIDE2MywgMjM0LCAxOTQsIDIzMywgMTQsIDE2MCwgMjUwLCAyMDAsIDIzNCwgMTk0LCAyMzMsIDE0LCAxNjAsIDI1MCwgCi0gICAgMjAxLCAyMjUsIDE2MywgMjM0LCAxOTQsIDIzMywgMTQsIDUsIDI0OSwgMjAsIDIzNCwgMTk0LCAyMzMsIDE0LCA1LCAyMjAsIAotICAgIDEyNSwgMjIzLCAyNDMsIDEsIDE4MSwgMjIzLCAyNDMsIDEsIDI0MywgMTEwLCAyMjMsIDI0MywgMSwgMjI5LCAxNTksIDIyMywgCi0gICAgMjQzLCAxLCAyMTgsIDUyLCAyMjMsIDI0MywgMSwgMjQ4LCAxNjQsIDIyMywgMjQzLCAxLCAyMDUsIDIyMywgMjQzLCAxLCAKLSAgICAxOTMsIDIyMywgMjQzLCAxLCAyNTIsIDEwNywgMjIzLCAyNDMsIDEsIDE4OCwgMjIzLCAyNDMsIDEsIDI1MCwgMjE5LCAyMjMsIAotICAgIDI0MywgMSwgMjM1LCAxMzksIDIyMywgMjQzLCAxLCAyMjgsIDIzLCAyMjMsIDI0MywgMSwgMjIyLCAyMDIsIDIyMywgMjQzLCAKLSAgICAxLCAyMDMsIDIyMywgMjQzLCAxLCAyMzMsIDE1NywgMjIzLCAyNDMsIDEsIDE4NiwgMjIzLCAyNDMsIDEsIDIxNCwgNDksIAotICAgIDIyMywgMjQzLCAxLCAxNTksIDIyMywgMjQzLCAxLCAyMzEsIDE4NywgMjIzLCAyNDMsIDEsIDIyOSwgMTQxLCAyMjMsIDI0MywgCi0gICAgMSwgMjI5LCAyMjgsIDIyMywgMjQzLCAxLCAyMjcsIDI1NCwgMjIzLCAyNDMsIDEsIDYxLCAyMjMsIDI0MywgMzAsIDUsIDcyLCAKLSAgICAyMjMsIDI0MywgMzAsIDUsIDY5LCAyMjMsIDI0MywgMzAsIDUsIDc0LCAyMjMsIDI0MywgMzAsIDUsIDI1NCwgMTA4LCAyMjMsIAotICAgIDI0MywgMzAsIDUsIDc1LCAyMjMsIDI0MywgMzAsIDUsIDI1MywgMTA4LCAyMjMsIDI0MywgMzAsIDUsIDI0NSwgMjIsIDIyMywgCi0gICAgMjQzLCAzMCwgNSwgMjQ1LCAxODksIDIyMywgMjQzLCAyNDksIDEzMywgNSwgMjI5LCAxNjEsIDIyMywgMjQzLCAyNDksIAotICAgIDEzMywgNSwgMjA0LCAyMjMsIDI0MywgMjQ5LCAxMzMsIDUsIDE0OSwgMjIzLCAyNDMsIDI0OSwgMTMzLCA1LCAyNDIsIDQxLCAKLSAgICAyMjMsIDI0MywgMjE0LCAxMzMsIDIyMywgMjQzLCAyMjIsIDkyLCA3NywgMjMsIDk3LCAyMTcsIDUxLCAyMywgOTcsIDIxNywgCi0gICAgNTAsIDIzLCA5NywgMjE3LCA0OCwgMjMsIDk3LCAyMTcsIDUzLCAyMywgOTcsIDIyMywgMTc0LCAyMywgOTcsIDIyMywgMTU4LCAKLSAgICAyMywgOTcsIDIyMywgMTUzLCAyMywgOTcsIDIyMywgMTU1LCAyMywgOTcsIDIyMywgMTcxLCAyMywgOTcsIDIyMywgMTY0LCAKLSAgICAyMywgOTcsIDIyMywgMTU3LCAyMywgOTcsIDIyMywgMTc2LCAyMywgOTcsIDIyMywgMTU5LCAyMywgOTcsIDIyMywgMTc4LCAKLSAgICAyMywgOTcsIDIyMywgMTc1LCAyMywgOTcsIDIzMSwgMjYsIDIzLCA5NywgMjMxLCAxNywgMjMsIDk3LCAyMzEsIDIwLCAyMywgCi0gICAgOTcsIDIyNSwgMjEyLCAyMywgOTcsIDIyNSwgMjIzLCAyMywgOTcsIDIyNSwgMjI0LCAyMywgOTcsIDIxOSwgMTQyLCAyMywgCi0gICAgOTcsIDIzNiwgNDEsIDIzLCA5NywgMjM2LCA0OCwgMjMsIDk3LCAyMTksIDE1MywgMjMsIDk3LCAyMTksIDE0MCwgMjMsIDk3LCAKLSAgICAyMjYsIDYsIDIzLCA5NywgMjQxLCAxNTMsIDIzLCA5NywgMjE5LCAxMzcsIDE0NCwgNSwgMjI2LCAxNTUsIDE0NCwgNSwgCi0gICAgMjUwLCAxMjEsIDE0NCwgNSwgMjMzLCA5MCwgMTQ0LCA1LCAyMTMsIDIyOCwgMTQ0LCAxLCA2MSwgMTQ0LCAxLCAyNDAsIAotICAgIDE0NiwgMjM0LCAxOTcsIDE0NCwgMSwgNzIsIDE0NCwgMSwgMjM2LCAyOCwgMTQ0LCAxLCA2OSwgMTQ0LCAxLCAyMjYsIDIxNCwgCi0gICAgMjUwLCA5NywgMTQ0LCAxLCAyMjksIDE2MCwgMjMzLCA1MiwgMTQ0LCAxLCAyMjksIDE2MCwgMjMzLCA1MywgMjI0LCAzNCwgCi0gICAgMTQ0LCAxLCA3NCwgMTQ0LCAxLCAyNTQsIDEwOCwgMTQ0LCAxLCA3NSwgMTQ0LCAxLCAxODEsIDE0NCwgMSwgMjM1LCAxNywgCi0gICAgMjIyLCAxNDQsIDE0NCwgMSwgMjM1LCAxNywgMjMwLCAxMzYsIDE0NCwgMSwgMjQzLCAxMTAsIDE0NCwgMSwgMjQzLCAxMTEsIAotICAgIDIzMCwgMTM2LCAxNDQsIDEsIDIyOSwgMTU5LCAxNDQsIDEsIDI1MCwgMjE5LCAxNDQsIDEsIDI1MCwgMjIwLCAyMzAsIDEzNiwgCi0gICAgMTQ0LCAxLCAyMzUsIDEzOSwgMTQ0LCAxLCAyMjgsIDI0LCAyMzAsIDEzNiwgMTQ0LCAxLCAyMzUsIDE0MCwgMjMyLCAxMiwgCi0gICAgMTQ0LCAxLCAyMjgsIDIzLCAxNDQsIDEsIDIxNiwgMTE1LCAxNDQsIDEsIDIxNiwgMTE2LCAyMzIsIDEyLCAxNDQsIDEsIAotICAgIDI0OCwgODYsIDE0NCwgMSwgMjQ4LCA4NywgMjMyLCAxMiwgMTQ0LCAxLCAyMzAsIDQ2LCAyMzAsIDEzNiwgMTQ0LCAxLCAKLSAgICAyMTgsIDUyLCAxNDQsIDEsIDIxOCwgNTMsIDIzMCwgMTM2LCAxNDQsIDEsIDI0OCwgMTY0LCAxNDQsIDEsIDI0OCwgMTY1LCAKLSAgICAyMzIsIDEyLCAxNDQsIDEsIDIwNSwgMTQ0LCAxLCAxOTMsIDE0NCwgMSwgMjI2LCAyMTQsIDIzMCwgMTM2LCAxNDQsIDEsIAotICAgIDI1MiwgMTA3LCAxNDQsIDEsIDI1MiwgMTA4LCAyMzAsIDEzNiwgMTQ0LCAxLCAxODgsIDE0NCwgMSwgMTg2LCAxNDQsIDEsIAotICAgIDIwMywgMTQ0LCAxLCAyMjQsIDc3LCAyNTQsIDExNSwgMTQ0LCAxLCAyMzMsIDE1NywgMTQ0LCAxLCAyMTQsIDQ5LCAxNDQsIAotICAgIDEsIDIyMiwgMjAzLCAyMzAsIDEzNiwgMTQ0LCAxLCAyMjIsIDIwMywgMjMyLCAxMiwgMTQ0LCAxLCAyMjIsIDIwMiwgMTQ0LCAKLSAgICAxLCAxNTksIDE0NCwgNSwgMjUwLCAxMjIsIDIxNywgMjAzLCAxNDQsIDMwLCA1LCAyMTcsIDI1NCwgMTQ0LCAzMCwgNSwgCi0gICAgMjE2LCAyNDYsIDE0NCwgMzAsIDUsIDIxMywgMTc4LCAxNDQsIDMwLCA1LCAyMTMsIDE3OSwgMjMxLCAxMzMsIDE0NCwgMzAsIAotICAgIDUsIDIxOCwgMjQ4LCAxNDQsIDMwLCA1LCAyMTgsIDI0OSwgMjMxLCAxMjEsIDE0NCwgMzAsIDUsIDIxOCwgMTYsIDE0NCwgCi0gICAgMzAsIDUsIDI0NywgMTQ2LCAyMzAsIDEzNSwgMTQ0LCAzMCwgNSwgMjI2LCA1OSwgMTQ0LCAyNDksIDEzMywgNSwgMjM0LCAKLSAgICAxNjQsIDE0NCwgMjQ5LCAxMzMsIDUsIDIyNiwgNzEsIDE0NCwgMjQ5LCAxMzMsIDUsIDI1MCwgMjA3LCAxNDQsIDIyNiwgCi0gICAgMTY3LCAxNDQsIDQyLCAyMjMsIDIyMSwgMTQ0LCA0NiwgMjIzLCAyMjEsIDE0NCwgMjI2LCAyMDMsIDI1NCwgMjYsIDE0NCwgCi0gICAgMjI2LCAyMDMsIDIzMiwgMjksIDE0NCwgMjI2LCAyMDMsIDIzMiwgMTQ2LCAxNDQsIDIyNiwgMjAzLCAyMTMsIDIyMywgMTQ0LCAKLSAgICAyMjYsIDIwMywgMjI2LCAxNjgsIDE0NCwgMjI2LCAyMDMsIDIzMiwgMjM0LCAxNDQsIDIyNiwgMjAzLCAyMzIsIDE0MCwgCi0gICAgMTQ0LCAyMjYsIDIwMywgMjU0LCAxNTQsIDE0NCwgMjI2LCAyMDMsIDI1NCwgMTU1LCAyNTQsIDE1NCwgMTQ0LCAyMjYsIAotICAgIDIwMywgMjI1LCAxODMsIDE0NCwgMjE2LCA1OCwgMjI2LCAyMDMsIDIyNSwgMTgzLCAxNDQsIDIyNiwgMTY0LCAxNDQsIDIxLCAKLSAgICAyMTIsIDc5LCAxNDQsIDIxLCAxMTYsIDE0NCwgMjEsIDEwOSwgMTQ0LCAyMSwgMTY2LCAxNDQsIDIxLCAxNjMsIDE0NCwgMjEsIAotICAgIDE4MCwgMTQ0LCAyMSwgMTg5LCAxNDQsIDIxLCAxOTgsIDE0NCwgMjEsIDE5NSwgMTQ0LCAyMSwgMjAwLCAxNDQsIDIyNiwgCi0gICAgMjAzLCAyMTcsIDIyLCAyMTYsIDcwLCAxNDQsIDIyNiwgMjAzLCAyMzUsIDE2NSwgMTYyLCAxLCA2MSwgMTYyLCAxLCA3MiwgCi0gICAgMTYyLCAxLCA2OSwgMTYyLCAxLCA3NCwgMTYyLCAxLCAyNTQsIDEwOCwgMTYyLCAxLCA3NSwgMTYyLCAxLCAxODEsIDE2MiwgCi0gICAgMSwgMjM0LCAxMzgsIDE2MiwgMSwgMjQzLCAxMTAsIDE2MiwgMSwgMjQyLCAyMjUsIDE2MiwgMSwgMjI5LCA3NSwgMTYyLCAxLCAKLSAgICAyMjksIDE1OSwgMTYyLCAxLCAyNTAsIDkyLCAxNjIsIDEsIDI1MCwgNDksIDE2MiwgMSwgMjM1LCAxMzksIDE2MiwgMSwgCi0gICAgMjM1LCAxMTUsIDE2MiwgMSwgMjI5LCA2NiwgMTYyLCAxLCAyMjksIDY4LCAxNjIsIDEsIDIyOSwgNjcsIDE2MiwgMSwgMjE4LCAKLSAgICA1MiwgMTYyLCAxLCAyMTcsIDE2MSwgMTYyLCAxLCAyNDgsIDE2NCwgMTYyLCAxLCAyNDcsIDIzMiwgMTYyLCAxLCAyMjgsIAotICAgIDYyLCAxNjIsIDEsIDIwNSwgMTYyLCAxLCAyNDgsIDg2LCAxNjIsIDEsIDE5MywgMTYyLCAxLCAyMjUsIDEwMCwgMTYyLCAxLCAKLSAgICAyMjYsIDIzLCAxNjIsIDEsIDI1MiwgMTA3LCAxNjIsIDEsIDI1MSwgMTk1LCAxNjIsIDEsIDIzMCwgMTY1LCAxNjIsIDEsIAotICAgIDE4OCwgMTYyLCAxLCAyNTIsIDMxLCAxNjIsIDEsIDE4NiwgMTYyLCAxLCAyMDMsIDE2MiwgMSwgMjMzLCAxNTcsIDE2MiwgMSwgCi0gICAgMjE1LCAxLCAxNjIsIDEsIDIxOSwgMTU3LCAxNjIsIDEsIDIyMiwgMjAyLCAxNjIsIDEsIDE1OSwgMTYyLCAzMCwgNSwgMjU0LCAKLSAgICAyMzIsIDE2MiwgMzAsIDUsIDcyLCAxNjIsIDMwLCA1LCAyMzYsIDI4LCAxNjIsIDMwLCA1LCAyNDUsIDE1MiwgMTYyLCAzMCwgCi0gICAgNSwgNjksIDE2MiwgMzAsIDUsIDIyNywgOTksIDE2MiwgMzAsIDUsIDc1LCAxNjIsIDMwLCA1LCAyNTQsIDEwOCwgMTYyLCAKLSAgICAzMCwgNSwgMjUzLCAxMDgsIDE2MiwgMzAsIDUsIDIxNSwgMTgzLCAxNjIsIDI0OSwgMTMzLCA1LCAxODYsIDE2MiwgMjQ5LCAKLSAgICAxMzMsIDUsIDIwMywgMTYyLCAyNDksIDEzMywgNSwgMjMzLCAxNTcsIDE2MiwgMjQ5LCAxMzMsIDUsIDIxNCwgNDksIDE2MiwgCi0gICAgMSwgNDAsIDIzNSwgMjcsIDE2MiwgMSwgNDAsIDI0MywgMTc3LCAxNjIsIDEsIDQwLCAyMjksIDE2MSwgMTYyLCAyNDksIAotICAgIDEzMywgNSwgNDAsIDIyOSwgMTYxLCAxNjIsIDEsIDQwLCAyNTAsIDkzLCAxNjIsIDEsIDQwLCAyMTgsIDk5LCAxNjIsIDEsIAotICAgIDQwLCAyMDQsIDE2MiwgMSwgNDAsIDIyNiwgMjI5LCAxNjIsIDEsIDQwLCAyMTMsIDEwNSwgMTYyLCAxLCA0MCwgMTQ5LCAKLSAgICAxNjIsIDEsIDQwLCAxNTAsIDE2MiwgMSwgNDAsIDIxOSwgMTU4LCAxNjIsIDI0OSwgMTMzLCA1LCA0MCwgMTgzLCAxNjIsIAotICAgIDI0OSwgMTMzLCA1LCA0MCwgMjQyLCA0MSwgMTYyLCAyMSwgMjEyLCA3OSwgMTYyLCAyMSwgMTE2LCAxNjIsIDIxLCAxMDksIAotICAgIDE2MiwgMjEsIDE2NiwgMTYyLCAyMSwgMTYzLCAxNjIsIDIxLCAxODAsIDE2MiwgMjEsIDE4OSwgMTYyLCAyMSwgMTk4LCAKLSAgICAxNjIsIDIxLCAxOTUsIDE2MiwgMjEsIDIwMCwgMTYyLCAyMjUsIDI3LCAyMTksIDE4MywgMTYyLCAyMjUsIDI3LCAyNDgsIAotICAgIDEyMywgMTYyLCAyMjUsIDI3LCA1MSwgMjQ4LCAxMjMsIDE2MiwgMjI1LCAyNywgMjE2LCAxNjksIDI0OCwgMTIzLCA2NCwgMSwgCi0gICAgMjM0LCAxMzIsIDI0MywgMTEwLCA2NCwgMSwgMjM0LCAxMzIsIDI1MCwgMjE5LCA2NCwgMSwgMjM0LCAxMzIsIDI1MCwgOTIsIAotICAgIDY0LCAxLCAyMzQsIDEzMiwgMjM1LCAxMzksIDY0LCAxLCAyMzQsIDEzMiwgMjM1LCAxMTUsIDY0LCAxLCAyMzQsIDEzMiwgCi0gICAgMjI4LCAyMywgNjQsIDEsIDIzNCwgMTMyLCAyMTYsIDExNSwgNjQsIDEsIDIzNCwgMTMyLCAyMTYsIDEwNSwgNjQsIDEsIAotICAgIDIzNCwgMTMyLCAyNDgsIDg2LCA2NCwgMSwgMjM0LCAxMzIsIDI0OCwgNzAsIDY0LCAxLCAyMzQsIDEzMiwgMjQ3LCAyMzIsIAotICAgIDY0LCAxLCAyMzQsIDEzMiwgMjA1LCA2NCwgMSwgMjM0LCAxMzIsIDIyMiwgMjAyLCA2NCwgMSwgMjM0LCAxMzIsIDE1OSwgCi0gICAgNjQsIDEsIDIzNCwgMTMyLCAyNDEsIDE3NCwgNjQsIDEsIDIzNCwgMTMyLCAyNDQsIDE2NCwgNjQsIDU5LCAxLCAyMzQsIAotICAgIDEzMiwgMjI0LCAyLCA2NCwgMSwgMjM0LCAxMzIsIDIxMywgMTUzLCA2NCwgMSwgMjM0LCAxMzIsIDIxMiwgMTA5LCA2NCwgMSwgCi0gICAgMjM0LCAxMzIsIDIwMywgNjQsIDIzMiwgMTk4LCAyMzQsIDEzMiwgMjI3LCAxMTcsIDY0LCAyMzIsIDE5OCwgMjM0LCAxMzIsIAotICAgIDIyNCwgMTg4LCA2NCwgMjMyLCAxOTgsIDIzNCwgMTMyLCAyNDEsIDEwNywgNjQsIDE2LCAyNTQsIDk4LCAyNDQsIDI1MywgCi0gICAgNjQsIDE2LCAyNTQsIDk4LCAxMTYsIDY0LCAxNiwgMjU0LCA5OCwgMTA5LCA2NCwgMSwgMjU0LCA5OCwgMjAzLCA2NCwgNSwgCi0gICAgMjI2LCAxNTEsIDIzNCwgMjE4LCAyMTYsIDI0MSwgMzgsIDE5MCwgMSwgMTE1LCAyMzQsIDM3LCAzOCwgMTkwLCAxLCAxMjQsIAotICAgIDIzNCwgMzcsIDM4LCAxOTAsIDEsIDExNSwgMjM0LCAxMTMsIDM4LCAxOTAsIDEsIDEyNCwgMjM0LCAxMTMsIDM4LCAxOTAsIAotICAgIDEsIDExNSwgMjM0LCAxMjAsIDM4LCAxOTAsIDEsIDEyNCwgMjM0LCAxMjAsIDM4LCAxOTAsIDEsIDExNSwgMjQyLCAxNTAsIAotICAgIDM4LCAxOTAsIDEsIDEyNCwgMjQyLCAxNTAsIDM4LCAxOTAsIDEsIDExNSwgMjI5LCA5MCwgMzgsIDE5MCwgMSwgMTI0LCAKLSAgICAyMjksIDkwLCAzOCwgMTkwLCAxLCAxMTUsIDI0OSwgMTc1LCAzOCwgMTkwLCAxLCAxMjQsIDI0OSwgMTc1LCAzOCwgMTkwLCAKLSAgICAxLCAxMTUsIDI1MCwgMjMsIDM4LCAxOTAsIDEsIDEyNCwgMjUwLCAyMywgMzgsIDE5MCwgMSwgMTE1LCAyMTksIDI0MiwgMzgsIAotICAgIDE5MCwgMSwgMTI0LCAyMTksIDI0MiwgMzgsIDE5MCwgMSwgMTE1LCAyMjcsIDI1MywgMzgsIDE5MCwgMSwgMTI0LCAyMjcsIAotICAgIDI1MywgMzgsIDE5MCwgMSwgMTE1LCAyNDcsIDk5LCAzOCwgMTkwLCAxLCAxMjQsIDI0NywgOTksIDM4LCAxOTAsIDEsIDExNSwgCi0gICAgMTA4LCAzOCwgMTkwLCAxLCAxMjQsIDEwOCwgMzgsIDE5MCwgMSwgMTE1LCAyMTcsIDEwOSwgMzgsIDE5MCwgMSwgMTI0LCAKLSAgICAyMTcsIDEwOSwgMzgsIDE5MCwgMSwgMTE1LCAyMjgsIDE4NSwgMzgsIDE5MCwgMSwgMTI0LCAyMjgsIDE4NSwgMzgsIDE5MCwgCi0gICAgMSwgMTE1LCAyNTEsIDEyOCwgMzgsIDE5MCwgMSwgMTI0LCAyNTEsIDEyOCwgMzgsIDE5MCwgMSwgMTE1LCAyMjUsIDE1MCwgCi0gICAgMzgsIDE5MCwgMSwgMTI0LCAyMjUsIDE1MCwgMzgsIDE5MCwgMSwgMTE1LCAyMjUsIDI1MywgMzgsIDE5MCwgMSwgMTI0LCAKLSAgICAyMjUsIDI1MywgMzgsIDE5MCwgMSwgMTE1LCAyNDQsIDEyLCAzOCwgMTkwLCAxLCAxMjQsIDI0NCwgMTIsIDM4LCAxOTAsIDEsIAotICAgIDExNSwgMjMwLCAyMzEsIDM4LCAxOTAsIDEsIDEyNCwgMjMwLCAyMzEsIDM4LCAxOTAsIDEsIDExNSwgMjEyLCAyMzUsIDM4LCAKLSAgICAxOTAsIDEsIDEyNCwgMjEyLCAyMzUsIDM4LCAxOTAsIDEsIDExNSwgMjIzLCAxMTIsIDM4LCAxOTAsIDEsIDEyNCwgMjIzLCAKLSAgICAxMTIsIDM4LCAxOTAsIDEsIDExNSwgMjMyLCAyMDgsIDM4LCAxOTAsIDEsIDEyNCwgMjMyLCAyMDgsIDM4LCAxOTAsIDEsIAotICAgIDExNSwgMjE0LCAxMTksIDM4LCAxOTAsIDEsIDEyNCwgMjE0LCAxMTksIDM4LCAxOTAsIDEsIDExNSwgMjQxLCA1NCwgMzgsIAotICAgIDE5MCwgMSwgMTI0LCAyNDEsIDU0LCAzOCwgMTkwLCAxLCAxMTUsIDc1LCAzOCwgMTkwLCAxLCAxMjQsIDc1LCAzOCwgMTkwLCAKLSAgICAyMzIsIDksIDIzNCwgMjM1LCAzOCwgMTkwLCAzMCwgMjU0LCAyMzIsIDM4LCAxOTAsIDMwLCA3MiwgMzgsIDE5MCwgMzAsIAotICAgIDIxNSwgMTgzLCAzOCwgMTkwLCAzMCwgNjksIDM4LCAxOTAsIDMwLCA3NCwgMzgsIDE5MCwgMzAsIDc1LCAzOCwgMTkwLCAKLSAgICAyMzIsIDksIDIzNCwgMTE1LCAzOCwgMTkwLCAzMCwgMjQwLCAxMTEsIDM4LCAxOTAsIDMwLCAyMTUsIDE4MiwgMzgsIDE5MCwgCi0gICAgMzAsIDIxNSwgMTk2LCAzOCwgMTkwLCAzMCwgMjUzLCAxMDYsIDM4LCAxOTAsIDMwLCAyNTMsIDgzLCAzOCwgMTkwLCAzMCwgCi0gICAgMjU0LCAzMiwgMzgsIDE5MCwgMzAsIDI1NCwgNDUsIDM4LCAxOTAsIDE2MCwgMjMyLCA5LCAyNDUsIDEzNywgMzgsIDE5MCwgCi0gICAgMTYwLCAyMzIsIDksIDIyOCwgNjEsIDM4LCAxOTAsIDE2MCwgMjMyLCA5LCAyMTcsIDEwOSwgMzgsIDE5MCwgMTYwLCAyMzIsIAotICAgIDksIDIxOSwgMjI4LCAzOCwgMTkwLCAxNiwgMjM0LCAyMiwgMzgsIDE5MCwgMTYsIDIyOCwgNjEsIDM4LCAxOTAsIDE2LCAKLSAgICAyMjIsIDE2OCwgMzgsIDE5MCwgMTYsIDI0MSwgNTUsIDI0MSwgNTAsIDM4LCAxOTAsIDE2LCAyMzQsIDMxLCAyMzQsIDMwLCAKLSAgICAyOCwgNCwgMjE2LCA5OCwgMjgsIDQsIDIxNiwgMTAxLCAyOCwgNCwgMjE2LCAxMDQsIDI4LCA0LCAyMTYsIDEwMiwgMjgsIDQsIAotICAgIDIxNiwgMTAzLCAyOCwgNCwgMjE2LCAxMDAsIDI4LCA0LCAyNDgsIDY0LCAyOCwgNCwgMjQ4LCA2NiwgMjgsIDQsIDI0OCwgCi0gICAgNjksIDI4LCA0LCAyNDgsIDY3LCAyOCwgNCwgMjQ4LCA2OCwgMjgsIDQsIDI0OCwgNjUsIDI4LCA0LCAyNDUsIDIzOSwgMjgsIAotICAgIDQsIDI0NSwgMjQyLCAyOCwgNCwgMjQ1LCAyNDgsIDI4LCA0LCAyNDUsIDI0NiwgMjgsIDQsIDI0NSwgMjQ3LCAyOCwgNCwgCi0gICAgMjQ1LCAyNDAsIDI4LCA0LCAyNTAsIDEzOCwgMjgsIDQsIDI1MCwgMTMyLCAyOCwgNCwgMjUwLCAxMzQsIDI4LCA0LCAyNTAsIAotICAgIDEzNywgMjgsIDQsIDI1MCwgMTM1LCAyOCwgNCwgMjUwLCAxMzYsIDI4LCA0LCAyNTAsIDEzMywgMjgsIDQsIDI1MiwgMzEsIAotICAgIDI4LCA0LCAyNTIsIDEwLCAyOCwgNCwgMjUyLCAyMiwgMjgsIDQsIDI1MiwgMzAsIDI4LCA0LCAyNTIsIDI1LCAyOCwgNCwgCi0gICAgMjUyLCAyNiwgMjgsIDQsIDI1MiwgMTQsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjM0LCAyOCwgMjMxLCAxNDAsIDIzMSwgCi0gICAgMTk0LCAxLCAyMjIsIDE2OCwgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyMzMsIDEzMywgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAKLSAgICAyMzAsIDI0MSwgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAxOTMsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjA1LCAyMzEsIAotICAgIDE0MCwgMjMxLCAxOTQsIDEsIDI1MCwgMzksIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjE3LCA0NCwgMjMxLCAxNDAsIDIzMSwgCi0gICAgMTk0LCAxLCAyMzQsIDEwOSwgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyMjksIDgwLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIAotICAgIDIxNywgMTAzLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIxNCwgNDQsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjEzLCA1OCwgCi0gICAgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyNDAsIDIwNiwgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyMTUsIDE2MCwgMjMxLCAKLSAgICAxNDAsIDIzMSwgMTk0LCAxLCA3MiwgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyMjYsIDE4LCAyMzEsIDE0MCwgMjMxLCAxOTQsIAotICAgIDEsIDI1MywgMTE4LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDI0MiwgMTQzLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIzNSwgCi0gICAgMTE0LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIyNCwgNTcsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjUyLCAxMDcsIAotICAgIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjM1LCAxMDMsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjQ3LCAxNzEsIDIzMSwgCi0gICAgMTQwLCAyMzEsIDE5NCwgMSwgMjQyLCAxOTcsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjQ3LCAyMTMsIDIzMSwgMTQwLCAKLSAgICAyMzEsIDE5NCwgMSwgMjUxLCAxOTQsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjM0LCAyOSwgMjMyLCAxODEsIDIzMSwgCi0gICAgMTQwLCAyMzEsIDE5NCwgMSwgMjMzLCAxMzQsIDIzMiwgMTgxLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDEsIDIzMCwgMjQyLCAKLSAgICAyMzIsIDE4MSwgMjMxLCAxNDAsIDIzMSwgMTk0LCAxLCAyMjYsIDIxNCwgMjMyLCAxODEsIDIzMSwgMTQwLCAyMzEsIDE5NCwgCi0gICAgMSwgMjMwLCA0NiwgMjMyLCAxODEsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjE3LCA0NSwgMjMyLCAxODEsIDIzMSwgMTQwLCAKLSAgICAyMzEsIDE5NCwgMSwgMjI5LCA4MSwgMjMyLCAxODEsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMSwgMjQwLCAxNDYsIDIzMiwgCi0gICAgMTgxLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDMwLCA1LCAyMjcsIDYxLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDMwLCA1LCAyMzUsIAotICAgIDI0OSwgMjMxLCAxNDAsIDIzMSwgMTk0LCAzMCwgNSwgMjU0LCAzMSwgMjMxLCAxNDAsIDIzMSwgMTk0LCAzMCwgNSwgMjEzLCAKLSAgICAyOSwgMjMxLCAxNDAsIDIzMSwgMTk0LCAzMCwgNSwgMjE5LCAyMTksIDIzMSwgMTQwLCAyMzEsIDE5NCwgMzAsIDUsIDIxNSwgCi0gICAgMTU3LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDMwLCA1LCAyNTAsIDYwLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDMwLCA1LCAyMjgsIAotICAgIDQ3LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDI1MCwgNjEsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMjMyLCAxNDMsIDIzNSwgMTQ4LCAKLSAgICAyMzEsIDE0MCwgMjMxLCAxOTQsIDI1MywgMjE2LCAyMzUsIDE0OCwgMjMxLCAxNDAsIDIzMSwgMTk0LCAyMSwgMjEyLCA3OSwgCi0gICAgMjMxLCAxNDAsIDIzMSwgMTk0LCAyMSwgMTE2LCAyMzEsIDE0MCwgMjMxLCAxOTQsIDIxLCAxMDksIDIzMSwgMTQwLCAyMzEsIAotICAgIDE5NCwgMjEsIDE2NiwgMjMxLCAxNDAsIDIzMSwgMTk0LCAyMSwgMTYzLCAyMzEsIDE0MCwgMjMxLCAxOTQsIDIxLCAxODAsIAotICAgIDIzMSwgMTQwLCAyMzEsIDE5NCwgMjEsIDE4OSwgMjMxLCAxNDAsIDIzMSwgMTk0LCAyMSwgMTk4LCAyMzEsIDE0MCwgMjMxLCAKLSAgICAxOTQsIDIxLCAxOTUsIDIzMSwgMTQwLCAyMzEsIDE5NCwgMjEsIDIwMCwgMjMsIDEzNSwgMjI3LCAxOTcsIDIzLCAxMzUsIAotICAgIDIyNywgMjAyLCAyMywgMTM1LCAyMTIsIDIzNCwgMjMsIDEzNSwgMjEyLCAyMzMsIDIzLCAxMzUsIDIxMiwgMjMyLCAyMywgCi0gICAgMTM1LCAyMTUsIDI0NiwgMjMsIDEzNSwgMjE1LCAyNDksIDIzLCAxMzUsIDIxMiwgMjAxLCAyMywgMTM1LCAyMTIsIDE5NywgCi0gICAgMjMsIDEzNSwgMjQ1LCAyMSwgMjMsIDEzNSwgMjQ1LCAxOSwgMjMsIDEzNSwgMjQ1LCAyMCwgMjMsIDEzNSwgMjQ1LCAxNywgCi0gICAgMjMsIDEzNSwgMjQwLCAxMzYsIDIzLCAxMzUsIDI0MCwgMTM1LCAyMywgMTM1LCAyNDAsIDEzMywgMjMsIDEzNSwgMjQwLCAKLSAgICAxMzQsIDIzLCAxMzUsIDI0MCwgMTM5LCAyMywgMTM1LCAyNDAsIDEzMiwgMjMsIDEzNSwgMjQwLCAxMzEsIDIzLCAxMzUsIAotICAgIDI0MCwgMTQxLCAyMywgMTM1LCAyNTMsIDIwMywgMjMsIDEzNSwgMjUzLCAyMDIsIDIzLCA4OSwgMjI5LCA1MCwgMjMsIDg5LCAKLSAgICAyMjksIDU2LCAyMywgODksIDIxOSwgMTM5LCAyMywgODksIDIxOSwgMTM4LCAyMywgODksIDIxNywgNTAsIDIzLCA4OSwgCi0gICAgMjE3LCA0OCwgMjMsIDg5LCAyMTcsIDQ3LCAyMywgODksIDIxNywgNTMsIDIzLCA4OSwgMjE3LCA1NCwgMjMsIDg5LCAyMTcsIAotICAgIDQ2LCAyMywgODksIDIyMywgMTU4LCAyMywgODksIDIyMywgMTczLCAyMywgODksIDIxOSwgMTQ1LCAyMywgODksIDIyMywgCi0gICAgMTcwLCAyMywgODksIDIyMywgMTYwLCAyMywgODksIDIyMywgMTYyLCAyMywgODksIDIyMywgMTQ5LCAyMywgODksIDIyMywgCi0gICAgMTUwLCAyMywgODksIDIzNCwgMjIzLCAyMywgODksIDIzMSwgMjUsIDIzLCA4OSwgMjMxLCAxOSwgMjMsIDg5LCAyMTksIAotICAgIDE0OSwgMjMsIDg5LCAyMzEsIDIyLCAyMywgODksIDIzMSwgMjgsIDIzLCA4OSwgMjI1LCAyMDgsIDIzLCA4OSwgMjI1LCAKLSAgICAyMTcsIDIzLCA4OSwgMjI1LCAyMjEsIDIzLCA4OSwgMjE5LCAxNDcsIDIzLCA4OSwgMjI1LCAyMTEsIDIzLCA4OSwgMjI1LCAKLSAgICAyMjUsIDIzLCA4OSwgMjI1LCAyMjYsIDIzLCA4OSwgMjIwLCA2OCwgMjMsIDg5LCAyMjAsIDcxLCAyMywgODksIDIxOSwgCi0gICAgMTQzLCAyMywgODksIDIxOSwgMTQxLCAyMywgODksIDIyMCwgNjYsIDIzLCA4OSwgMjIwLCA3NCwgMjMsIDg5LCAyMjAsIDc1LCAKLSAgICAyMywgODksIDIyMCwgNjAsIDIzLCA4OSwgMjIwLCA3MywgMjMsIDg5LCAyMjYsIDE1OCwgMjMsIDg5LCAyMjYsIDE1OSwgMjMsIAotICAgIDg5LCAyMTMsIDE1LCAyMywgODksIDIxMywgMTYsIDIzLCA4OSwgMjQ5LCAyMzcsIDIzLCA4OSwgMjQ5LCAyMzYsIDIzLCA4OSwgCi0gICAgMjE5LCAxNTQsIDIzLCA4OSwgMjI2LCA0LCAyMywgODksIDIyNiwgMywgOSwgMTMsIDIzOCwgMTcsIDksIDEzLCAyMzgsIDE2LCAKLSAgICA5LCAxMywgMjM4LCAxNSwgOSwgMTMsIDIzOCwgMTQsIDksIDEzLCAyMzgsIDEzLCA5LCAxMywgMjM4LCAxMiwgOSwgMTMsIAotICAgIDIzOCwgMTEsIDksIDEzLCAyMzgsIDEwLCA5LCAxMywgMjM4LCA5LCA5LCAxMywgMjM4LCA4LCA5LCAxMywgMjM4LCA3LCA5LCAKLSAgICAxMywgMjM4LCA2LCA5LCAxMywgMjM4LCA1LCA5LCAxMywgMjM4LCA0LCA5LCAxMywgMjM4LCAzLCA5LCAxMywgMjM4LCAyLCAKLSAgICA5LCAxMywgMjM4LCAxLCA5LCAxMywgMjM4LCAwLCA5LCAxMywgMjM3LCAyNTUsIDksIDEzLCAyMzcsIDI1NCwgOSwgMTMsIAotICAgIDIzNywgMjUzLCA5LCAxMywgMjM3LCAyNTIsIDksIDEzLCAyMzcsIDI1MSwgOSwgMTMsIDIzNywgMjUwLCA5LCAxMywgMjM3LCAKLSAgICAyNDksIDksIDEzLCAyMzcsIDI0OCwgOSwgMTMsIDIzNywgMjQ3LCA5LCAxMywgMjM3LCAyNDYsIDksIDEzLCAyMzcsIDI0NSwgCi0gICAgOSwgMTMsIDIzNywgMjQ0LCA5LCAxMywgMjM3LCAyNDMsIDksIDEzLCAyMzcsIDI0MiwgOSwgMTMsIDIzNywgMjQxLCA5LCAKLSAgICAxMywgMjM3LCAyNDAsIDksIDEzLCAyMzcsIDIzOSwgOSwgMTMsIDIzNywgMjM4LCA5LCAxMywgMjM3LCAyMzcsIDksIDEzLCAKLSAgICAyMzcsIDIzNiwgOSwgMTMsIDIzNywgMjM1LCA5LCAxMywgMjM3LCAyMzQsIDksIDEzLCAyMzcsIDIzMywgOSwgMTMsIDIzNywgCi0gICAgMjMyLCA5LCAxMywgMjM3LCAyMzEsIDksIDEzLCAyMzcsIDIzMCwgOSwgMTMsIDIzNywgMjI5LCA5LCAxMywgMjM3LCAyMjgsIAotICAgIDksIDEzLCAyMzcsIDIyNywgOSwgMTMsIDIzNywgMjI2LCA5LCAxMywgMjM3LCAyMjUsIDksIDEzLCAyMzcsIDIyNCwgOSwgCi0gICAgMTMsIDIzNywgMjIzLCA5LCAxMywgMjM3LCAyMjIsIDksIDEzLCAyMzcsIDIyMSwgOSwgMTMsIDIzNywgMjIwLCA5LCAxMywgCi0gICAgMjM3LCAyMTksIDksIDEzLCAyMzcsIDIxOCwgOSwgMTMsIDIzNywgMjE3LCA5LCAxMywgMjM3LCAyMTYsIDksIDEzLCAyMzcsIAotICAgIDIxNSwgOSwgMTMsIDIzNywgMjE0LCA5LCAxMywgMjM3LCAyMTMsIDksIDEzLCAyMzcsIDIxMiwgOSwgMTMsIDIzNywgMjExLCAKLSAgICA5LCAxMywgMjM3LCAyMTAsIDksIDEzLCAyMzcsIDIwOSwgOSwgMTMsIDIzNywgMjA4LCA5LCAxMywgMjM3LCAyMDcsIDksIAotICAgIDEzLCAyMzcsIDIwNiwgOSwgMTMsIDIzNywgMjA1LCA5LCAxMywgMjM3LCAyMDQsIDksIDEzLCAyMzcsIDIwMywgOSwgMTMsIAotICAgIDIzNywgMjAyLCA5LCAxMywgMjM3LCAyMDEsIDksIDEzLCAyMzcsIDIwMCwgOSwgMTMsIDIzNywgMTk5LCA5LCAxMywgMjM3LCAKLSAgICAxOTgsIDksIDEzLCAyMzcsIDE5NywgOSwgMTMsIDIzNywgMTk2LCA5LCAxMywgMjM3LCAxOTUsIDksIDEzLCAyMzcsIDE5NCwgCi0gICAgOSwgMTMsIDIzNywgMTkzLCA5LCAxMywgMjM3LCAxOTIsIDksIDEzLCAyMzcsIDE5MSwgOSwgMTMsIDIzNywgMTkwLCA5LCAKLSAgICAxMywgMjM3LCAxODksIDksIDEzLCAyMzcsIDE4OCwgOSwgMTMsIDIzNywgMTg3LCA5LCAxMywgMjM3LCAxODYsIDksIDEzLCAKLSAgICAyMzcsIDE4NSwgOSwgMTMsIDIzNywgMTg0LCA5LCAxMywgMjM3LCAxODMsIDksIDEzLCAyMzcsIDE4MiwgOSwgMTMsIDIzNywgCi0gICAgMTgxLCA5LCAxMywgMjM3LCAxODAsIDksIDEzLCAyMzcsIDE3OSwgOSwgMTMsIDIzNywgMTc4LCA5LCAxMywgMjM3LCAxNzcsIAotICAgIDksIDEzLCAyMzcsIDE3NiwgOSwgMTMsIDIzNywgMTc1LCA5LCAxMywgMjM3LCAxNzQsIDksIDEzLCAyMzcsIDE3MywgOSwgCi0gICAgMTMsIDIzNywgMTcyLCA5LCAxMywgMjM3LCAxNzEsIDksIDEzLCAyMzcsIDE3MCwgOSwgMTMsIDIzNywgMTY5LCA5LCAxMywgCi0gICAgMjM3LCAxNjgsIDksIDEzLCAyMzcsIDE2NywgOSwgMTMsIDIzNywgMTY2LCA5LCAxMywgMjM3LCAxNjUsIDksIDEzLCAyMzcsIAotICAgIDE2NCwgOSwgMTMsIDIzNywgMTYzLCA5LCAxMywgMjM3LCAxNjIsIDksIDEzLCAyMzcsIDE2MSwgOSwgMTMsIDIzNywgMTYwLCAKLSAgICA5LCAxMywgMjM3LCAxNTksIDksIDEzLCAyMzcsIDE1OCwgOSwgMTMsIDIzNywgMTU3LCA5LCAxMywgMjM3LCAxNTYsIDksIAotICAgIDEzLCAyMzcsIDE1NSwgOSwgMTMsIDIzNywgMTU0LCA5LCAxMywgMjM3LCAxNTMsIDksIDEzLCAyMzcsIDE1MiwgOSwgMTMsIAotICAgIDIzNywgMTUxLCA5LCAxMywgMjM3LCAxNTAsIDksIDEzLCAyMzcsIDE0OSwgOSwgMTMsIDIzNywgMTQ4LCA5LCAxMywgMjM3LCAKLSAgICAxNDcsIDksIDEzLCAyMzcsIDE0NiwgOSwgMTMsIDIzNywgMTQ1LCA5LCAxMywgMjM3LCAxNDQsIDksIDEzLCAyMzcsIDE0MywgCi0gICAgOSwgMTMsIDIzNywgMTQyLCA5LCAxMywgMjM3LCAxNDEsIDksIDEzLCAyMzcsIDE0MCwgOSwgMTMsIDIzNywgMTM5LCA5LCAKLSAgICAxMywgMjM3LCAxMzgsIDksIDEzLCAyMzcsIDEzNywgOSwgMTMsIDIzNywgMTM2LCA5LCAxMywgMjM3LCAxMzUsIDksIDEzLCAKLSAgICAyMzcsIDEzNCwgOSwgMTMsIDIzNywgMTMzLCA5LCAxMywgMjM3LCAxMzIsIDksIDEzLCAyMzcsIDEzMSwgOSwgMTMsIDIzNywgCi0gICAgMTMwLCA5LCAxMywgMjM3LCAxMjksIDksIDEzLCAyMzcsIDEyOCwgOSwgMTMsIDIzNywgMTI3LCA5LCAxMywgMjM3LCAxMjYsIAotICAgIDksIDEzLCAyMzcsIDEyNSwgOSwgMTMsIDIzNywgMTI0LCA5LCAxMywgMjM3LCAxMjMsIDksIDEzLCAyMzcsIDEyMiwgOSwgCi0gICAgMTMsIDIzNywgMTIxLCA5LCAxMywgMjM3LCAxMjAsIDksIDEzLCAyMzcsIDExOSwgOSwgMTMsIDIzNywgMTE4LCA5LCAxMywgCi0gICAgMjM3LCAxMTcsIDksIDEzLCAyMzcsIDExNiwgOSwgMTMsIDIzNywgMTE1LCA5LCAxMywgMjM3LCAxMTQsIDksIDEzLCAyMzcsIAotICAgIDExMywgOSwgMTMsIDIzNywgMTEyLCA5LCAxMywgMjM3LCAxMTEsIDksIDEzLCAyMzcsIDExMCwgOSwgMTMsIDIzNywgMTA5LCAKLSAgICA5LCAxMywgMjM3LCAxMDgsIDksIDEzLCAyMzcsIDEwNywgOSwgMTMsIDIzNywgMTA2LCA5LCAxMywgMjM3LCAxMDUsIDksIAotICAgIDEzLCAyMzcsIDEwNCwgOSwgMTMsIDIzNywgMTAzLCA5LCAxMywgMjM3LCAxMDIsIDksIDEzLCAyMzcsIDEwMSwgOSwgMTMsIAotICAgIDIzNywgMTAwLCA5LCAxMywgMjM3LCA5OSwgOSwgMTMsIDIzNywgOTgsIDksIDEzLCAyMzcsIDk3LCA5LCAxMywgMjM3LCA5NiwgCi0gICAgOSwgMTMsIDIzNywgOTUsIDksIDEzLCAyMzcsIDk0LCA5LCAxMywgMjM3LCA5MywgOSwgMTMsIDIzNywgOTIsIDksIDEzLCAKLSAgICAyMzcsIDkxLCA5LCAxMywgMjM3LCA5MCwgOSwgMTMsIDIzNywgODksIDksIDEzLCAyMzcsIDg4LCA5LCAxMywgMjM3LCA4NywgCi0gICAgOSwgMTMsIDIzNywgODYsIDksIDEzLCAyMzcsIDg1LCA5LCAxMywgMjM3LCA4NCwgOSwgMTMsIDIzNywgODMsIDksIDEzLCAKLSAgICAyMzcsIDgyLCA5LCAxMywgMjM3LCA4MSwgOSwgMTMsIDIzNywgODAsIDksIDEzLCAyMzcsIDc5LCA5LCAxMywgMjM3LCA3OCwgCi0gICAgOSwgMTMsIDIzNywgNzcsIDksIDEzLCAyMzcsIDc2LCA5LCAxMywgMjM3LCA3NSwgOSwgMTMsIDIzNywgNzQsIDksIDEzLCAKLSAgICAyMzcsIDczLCA5LCAxMywgMjM3LCA3MiwgOSwgMTMsIDIzNywgNzEsIDksIDEzLCAyMzcsIDcwLCA5LCAxMywgMjM3LCA2OSwgCi0gICAgOSwgMTMsIDIzNywgNjgsIDksIDEzLCAyMzcsIDY3LCA5LCAxMywgMjM3LCA2NiwgOSwgMTMsIDIzNywgNjUsIDksIDEzLCAKLSAgICAyMzcsIDY0LCA5LCAxMywgMjM3LCA2MywgOSwgMTMsIDIzNywgNjIsIDksIDEzLCAyMzcsIDYxLCA5LCAxMywgMjM3LCA2MCwgCi0gICAgOSwgMTMsIDIzNywgNTksIDksIDEzLCAyMzcsIDU4LCA5LCAxMywgMjM3LCA1NywgOSwgMTMsIDIzNywgNTYsIDksIDEzLCAKLSAgICAyMzcsIDU1LCA5LCAxMywgMjM3LCA1NCwgOSwgMTMsIDIzNywgNTMsIDksIDEzLCAyMzcsIDUyLCA5LCAxMywgMjM3LCA1MSwgCi0gICAgOSwgMTMsIDIzNywgNTAsIDksIDEzLCAyMzcsIDQ5LCA5LCAxMywgMjM3LCA0OCwgOSwgMTMsIDIzNywgNDcsIDksIDEzLCAKLSAgICAyMzcsIDQ2LCA5LCAxMywgMjM3LCA0NSwgOSwgMTMsIDIzNywgNDQsIDksIDEzLCAyMzcsIDQzLCA5LCAxMywgMjM3LCA0MiwgCi0gICAgOSwgMTMsIDIzNywgNDEsIDksIDEzLCAyMzcsIDQwLCA5LCAxMywgMjM3LCAzOSwgOSwgMTMsIDIzNywgMzgsIDksIDEzLCAKLSAgICAyMzcsIDM3LCA5LCAxMywgMjM3LCAzNiwgOSwgMTMsIDIzNywgMzUsIDksIDEzLCAyMzcsIDM0LCA5LCAxMywgMjM3LCAzMywgCi0gICAgOSwgMTMsIDIzNywgMzIsIDksIDEzLCAyMzcsIDMxLCA5LCAxMywgMjM3LCAzMCwgOSwgMTMsIDIzNywgMjksIDksIDEzLCAKLSAgICAyMzcsIDI4LCA5LCAxMywgMjM3LCAyNywgOSwgMTMsIDIzNywgMjYsIDksIDEzLCAyMzcsIDI1LCA5LCAxMywgMjM3LCAyNCwgCi0gICAgOSwgMTMsIDIzNywgMjMsIDksIDEzLCAyMzcsIDIyLCA5LCAxMywgMjM3LCAyMSwgOSwgMTMsIDIzNywgMjAsIDksIDEzLCAKLSAgICAyMzcsIDE5LCA5LCAxMywgMjM3LCAxOCwgOSwgMTMsIDIzNywgMTcsIDksIDEzLCAyMzcsIDE2LCA5LCAxMywgMjM3LCAxNSwgCi0gICAgOSwgMTMsIDIzNywgMTQsIDksIDEzLCAyMzcsIDEzLCA5LCAxMywgMjM3LCAxMiwgOSwgMTMsIDIzNywgMTEsIDksIDEzLCAKLSAgICAyMzcsIDEwLCA5LCAxMywgMjM3LCA5LCA5LCAxMywgMjM3LCA4LCA5LCAxMywgMjM3LCA3LCA5LCAxMywgMjM3LCA2LCA5LCAKLSAgICAxMywgMjM3LCA1LCA5LCAxMywgMjM3LCA0LCA5LCAxMywgMjM3LCAzLCA5LCAxMywgMjM3LCAyLCA5LCAxMywgMjM3LCAxLCAKLSAgICA5LCAxMywgMjM3LCAwLCA5LCAxMywgMjM2LCAyNTUsIDksIDEzLCAyMzYsIDI1NCwgOSwgMTMsIDIzNiwgMjUzLCA5LCAxMywgCi0gICAgMjM2LCAyNTIsIDksIDEzLCAyMzYsIDI1MSwgOSwgMTMsIDIzNiwgMjUwLCA5LCAxMywgMjM2LCAyNDksIDksIDEzLCAyMzYsIAotICAgIDI0OCwgOSwgMTMsIDIzNiwgMjQ3LCA5LCAxMywgMjM2LCAyNDYsIDksIDEzLCAyMzYsIDI0NSwgOSwgMTMsIDIzNiwgMjQ0LCAKLSAgICA5LCAxMywgMjM2LCAyNDMsIDksIDEzLCAyMzYsIDI0MiwgOSwgMTMsIDIzNiwgMjQxLCA5LCAxMywgMjM2LCAyNDAsIDksIAotICAgIDEzLCAyMzYsIDIzOSwgOSwgMTMsIDIzNiwgMjM4LCA5LCAxMywgMjM2LCAyMzcsIDksIDEzLCAyMzYsIDIzNiwgOSwgMTMsIAotICAgIDIzNiwgMjM1LCA5LCAxMywgMjM2LCAyMzQsIDksIDEzLCAyMzYsIDIzMywgOSwgMTMsIDIzNiwgMjMyLCA5LCAxMywgMjM2LCAKLSAgICAyMzEsIDksIDEzLCAyMzYsIDIzMCwgOSwgMTMsIDIzNiwgMjI5LCA5LCAxMywgMjM2LCAyMjgsIDksIDEzLCAyMzYsIDIyNywgCi0gICAgOSwgMTMsIDIzNiwgMjI2LCA5LCAxMywgMjM2LCAyMjUsIDksIDEzLCAyMzYsIDIyNCwgOSwgMTMsIDIzNiwgMjIzLCA5LCAKLSAgICAxMywgMjM2LCAyMjIsIDksIDEzLCAyMzYsIDIyMSwgOSwgMTMsIDIzNiwgMjIwLCA5LCAxMywgMjM2LCAyMTksIDksIDEzLCAKLSAgICAyMzYsIDIxOCwgOSwgMTMsIDIzNiwgMjE3LCA5LCAxMywgMjM2LCAyMTYsIDksIDEzLCAyMzYsIDIxNSwgOSwgMTMsIDIzNiwgCi0gICAgMjE0LCA5LCAxMywgMjM2LCAyMTMsIDksIDEzLCAyMzYsIDIxMiwgOSwgMTMsIDIzNiwgMjExLCA5LCAxMywgMjM2LCAyMTAsIAotICAgIDksIDEzLCAyMzYsIDIwOSwgOSwgMTMsIDIzNiwgMjA4LCA5LCAxMywgMjM2LCAyMDcsIDksIDEzLCAyMzYsIDIwNiwgOSwgCi0gICAgMTMsIDIzNiwgMjA1LCA5LCAxMywgMjM2LCAyMDQsIDksIDEzLCAyMzYsIDIwMywgOSwgMTMsIDIzNiwgMjAyLCA5LCAxMywgCi0gICAgMjM2LCAyMDEsIDksIDEzLCAyMzYsIDIwMCwgOSwgMTMsIDIzNiwgMTk5LCA5LCAxMywgMjM2LCAxOTgsIDksIDEzLCAyMzYsIAotICAgIDE5NywgOSwgMTMsIDIzNiwgMTk2LCA5LCAxMywgMjM2LCAxOTUsIDksIDEzLCAyMzYsIDE5NCwgOSwgMTMsIDIzNiwgMTkzLCAKLSAgICA5LCAxMywgMjM2LCAxOTIsIDksIDEzLCAyMzYsIDE5MSwgOSwgMTMsIDIzNiwgMTkwLCA5LCAxMywgMjM2LCAxODksIDksIAotICAgIDEzLCAyMzYsIDE4OCwgOSwgMTMsIDIzNiwgMTg3LCA5LCAxMywgMjM2LCAxODYsIDksIDEzLCAyMzYsIDE4NSwgOSwgMTMsIAotICAgIDIzNiwgMTg0LCA5LCAxMywgMjM2LCAxODMsIDksIDEzLCAyMzYsIDE4MiwgOSwgMTMsIDIzNiwgMTgxLCA5LCAxMywgMjM2LCAKLSAgICAxODAsIDksIDEzLCAyMzYsIDE3OSwgOSwgMTMsIDIzNiwgMTc4LCA5LCAxMywgMjM2LCAxNzcsIDksIDEzLCAyMzYsIDE3NiwgCi0gICAgOSwgMTMsIDIzNiwgMTc1LCA5LCAxMywgMjM2LCAxNzQsIDksIDEzLCAyMzYsIDE3MywgOSwgMTMsIDIzNiwgMTcyLCA5LCAKLSAgICAxMywgMjM2LCAxNzEsIDksIDEzLCAyMzYsIDE3MCwgOSwgMTMsIDIzNiwgMTY5LCA5LCAxMywgMjM2LCAxNjgsIDksIDEzLCAKLSAgICAyMzYsIDE2NywgOSwgMTMsIDIzNiwgMTY2LCA5LCAxMywgMjM2LCAxNjUsIDksIDEzLCAyMzYsIDE2NCwgOSwgMTMsIDIzNiwgCi0gICAgMTYzLCA5LCAxMywgMjM2LCAxNjIsIDksIDEzLCAyMzYsIDE2MSwgOSwgMTMsIDIzNiwgMTYwLCA5LCAxMywgMjM2LCAxNTksIAotICAgIDksIDEzLCAyMzYsIDE1OCwgOSwgMTMsIDIzNiwgMTU3LCA5LCAxMywgMjM2LCAxNTYsIDksIDEzLCAyMzYsIDE1NSwgOSwgCi0gICAgMTMsIDIzNiwgMTU0LCA5LCAxMywgMjM2LCAxNTMsIDksIDEzLCAyMzYsIDE1MiwgOSwgMTMsIDIzNiwgMTUxLCA5LCAxMywgCi0gICAgMjM2LCAxNTAsIDksIDEzLCAyMzYsIDE0OSwgOSwgMTMsIDIzNiwgMTQ4LCA5LCAxMywgMjM2LCAxNDcsIDksIDEzLCAyMzYsIAotICAgIDE0NiwgOSwgMTMsIDIzNiwgMTQ1LCA5LCAxMywgMjM2LCAxNDQsIDksIDEzLCAyMzYsIDE0MywgOSwgMTMsIDIzNiwgMTQyLCAKLSAgICA5LCAxMywgMjM2LCAxNDEsIDksIDEzLCAyMzYsIDE0MCwgOSwgMTMsIDIzNiwgMTM5LCA5LCAxMywgMjM2LCAxMzgsIDksIAotICAgIDEzLCAyMzYsIDEzNywgOSwgMTMsIDIzNiwgMTM2LCA5LCAxMywgMjM2LCAxMzUsIDksIDEzLCAyMzYsIDEzNCwgOSwgMTMsIAotICAgIDIzNiwgMTMzLCA5LCAxMywgMjM2LCAxMzIsIDksIDEzLCAyMzYsIDEzMSwgOSwgMTMsIDIzNiwgMTMwLCA5LCAxMywgMjM2LCAKLSAgICAxMjksIDksIDEzLCAyMzYsIDEyOCwgOSwgMTMsIDIzNiwgMTI3LCA5LCAxMywgMjM2LCAxMjYsIDksIDEzLCAyMzYsIDEyNSwgCi0gICAgOSwgMTMsIDIzNiwgMTI0LCA5LCAxMywgMjM2LCAxMjMsIDksIDEzLCAyMzYsIDEyMiwgOSwgMTMsIDIzNiwgMTIxLCA5LCAKLSAgICAxMywgMjM2LCAxMjAsIDksIDEzLCAyMzYsIDExOSwgOSwgMTMsIDIzNiwgMTE4LCA5LCAxMywgMjM2LCAxMTcsIDksIDEzLCAKLSAgICAyMzYsIDExNiwgOSwgMTMsIDIzNiwgMTE1LCA5LCAxMywgMjM2LCAxMTQsIDksIDEzLCAyMzYsIDExMywgOSwgMTMsIDIzNiwgCi0gICAgMTEyLCA5LCAxMywgMjM2LCAxMTEsIDksIDEzLCAyMzYsIDExMCwgOSwgMTMsIDIzNiwgMTA5LCA5LCAxMywgMjM2LCAxMDgsIAotICAgIDksIDEzLCAyMzYsIDEwNywgOSwgMTMsIDIzNiwgMTA2LCA5LCAxMywgMjM2LCAxMDUsIDksIDEzLCAyMzYsIDEwNCwgOSwgCi0gICAgMTMsIDIzNiwgMTAzLCA5LCAxMywgMjM2LCAxMDIsIDksIDEzLCAyMzYsIDEwMSwgOSwgMTMsIDIzNiwgMTAwLCA5LCAxMywgCi0gICAgMjM2LCA5OSwgOSwgMTMsIDIzNiwgOTgsIDksIDEzLCAyMzYsIDk3LCA5LCAxMywgMjM2LCA5NiwgOSwgMTMsIDIzNiwgOTUsIAotICAgIDksIDEzLCAyMzYsIDk0LCA5LCAxMywgMjM2LCA5MywgOSwgMTMsIDIzNiwgOTIsIDksIDEzLCAyMzYsIDkxLCA5LCAxMywgCi0gICAgMjM2LCA5MCwgOSwgMTMsIDIzNiwgODksIDksIDEzLCAyMzYsIDg4LCA5LCAxMywgMjM2LCA4NywgOSwgMTMsIDIzNiwgODYsIAotICAgIDksIDEzLCAyMzYsIDg1LCA5LCAxMywgMjM2LCA4NCwgOSwgMTMsIDIzNiwgODMsIDksIDEzLCAyMzYsIDgyLCA5LCAxMywgCi0gICAgMjM2LCA4MSwgOSwgMTMsIDIzNiwgODAsIDksIDEzLCAyMzYsIDc5LCA5LCAxMywgMjM2LCA3OCwgOSwgMTMsIDIzNiwgNzcsIAotICAgIDksIDEzLCAyMzYsIDc2LCA5LCAxMywgMjM2LCA3NSwgOSwgMTMsIDIzNiwgNzQsIDksIDEzLCAyMzYsIDczLCA5LCAxMywgCi0gICAgMjM2LCA3MiwgOSwgMTMsIDIzNiwgNzEsIDksIDEzLCAyMzYsIDcwLCA5LCAxMywgMjM2LCA2OSwgOSwgMTMsIDIzNiwgNjgsIAotICAgIDksIDEzLCAyMzYsIDY3LCA5LCAxMywgMjM2LCA2NiwgOSwgMTMsIDIzNiwgNjUsIDksIDEzLCAyMzYsIDY0LCA5LCAxMywgCi0gICAgMjM2LCA2MywgOSwgMTMsIDIzNiwgNjIsIDksIDEzLCAyMzYsIDYxLCA5LCAxMywgMjM2LCA2MCwgNywgMywgMjYsIDI0NCwgCi0gICAgOTQsIDcsIDMsIDI2LCAyNDQsIDkwLCA3LCAzLCAyNiwgMjQ0LCA0NSwgNywgMywgMjYsIDI0NCwgOTMsIDcsIDMsIDI2LCAKLSAgICAyNDQsIDkyLCA3LCAzLCAyNiwgMTg0LCAyMjMsIDQsIDIxOCwgOTksIDcsIDMsIDI2LCAyMTksIDEwNywgMTQxLCAzLCAyNiwgCi0gICAgMjMxLCAxMjMsIDIyOCwgMTUwLCAxNDEsIDMsIDI2LCAyMzEsIDEyMywgMjQ1LCAxNjksIDE0MSwgMywgMjYsIDIzMSwgMTIzLCAKLSAgICAyMzUsIDIyNCwgMTQxLCAzLCAyNiwgMjE0LCAxNTcsIDIyOCwgMTUwLCAxNDEsIDMsIDI2LCAyMzEsIDEyMywgMjEzLCAxNDgsIAotICAgIDkzLCAxLCAyMTIsIDIyNSwgMiwgMjQxLCAxNDQsIDkzLCAyMjUsIDE0NSwgMjM1LCA1MywgMjE0LCAyNDMsIDkzLCAyNiwgCi0gICAgMjEyLCAyNTMsIDIxMiwgMjI1LCAyMTIsIDIyNSwgMjI2LCAxMTIsIDkzLCAxLCAyNTQsIDQ4LCAyNTMsIDc4LCA5MywgMSwgCi0gICAgMjEzLCAyMzIsIDI1NCwgNzgsIDkzLCAxLCAyMTMsIDIzMiwgMjQ4LCAxMzQsIDkzLCAxLCAyMTMsIDIzMiwgMjQxLCAyMjIsIAotICAgIDkzLCAxLCAyMTMsIDIzMiwgMjM0LCAyNTQsIDkzLCAxLCAyMTMsIDIzMiwgMjMzLCAxMTgsIDkzLCAxLCAyMTMsIDIzMiwgCi0gICAgNDAsIDIzMSwgMTI5LCA5MywgMSwgMjEzLCAyMzIsIDIyMywgMjE5LCA5MywgMSwgMjEzLCAyMzIsIDIxNywgMjQ1LCA5MywgCi0gICAgMSwgMjU0LCA0OCwgOTQsIDUyLCA5MywgMSwgMjIwLCAyMDEsIDIsIDIyMCwgMjAxLCAyNDcsIDc0LCA5MywgMSwgMjIwLCAKLSAgICAyMDEsIDIsIDIyMCwgODUsIDI0NywgNzQsIDkzLCAxLCAyMjAsIDIwMSwgMiwgMjQ4LCAxNTEsIDI0LCAyMjAsIDIwMSwgCi0gICAgMjQ3LCA3NCwgOTMsIDEsIDIyMCwgMjAxLCAyLCAyNDgsIDE1MSwgMjQsIDIyMCwgODUsIDI0NywgNzQsIDkzLCAxLCAxMDYsIAotICAgIDIsIDIyNiwgMTEyLCA5MywgMSwgMTA2LCAyLCAyMjQsIDIyMCwgOTMsIDEsIDEwNiwgMiwgMjMxLCAyMzQsIDkzLCAxLCAKLSAgICAyNTEsIDIwNiwgMiwgMjQ4LCAxNTAsIDkzLCAxLCAyNDIsIDE3OCwgMiwgMjQ4LCAxNTAsIDkzLCAxLCAyNDgsIDEzNSwgMiwgCi0gICAgMjQ4LCAxNTAsIDkzLCAxLCAyNDEsIDIyMywgMiwgMjMxLCAyMzQsIDkzLCAxLCAyMTQsIDIzNywgMiwgMjQ4LCAxNTAsIDkzLCAKLSAgICAxLCAyMTIsIDkxLCAyLCAyNDgsIDE1MCwgOTMsIDEsIDIxNywgMTg0LCAyLCAyNDgsIDE1MCwgOTMsIDEsIDIxMiwgMjI1LCAKLSAgICAyLCAyNDgsIDE1MCwgOTMsIDEsIDQwLCAyMzQsIDI1NSwgMiwgMjQ4LCAxNTAsIDkzLCAxLCAyMzQsIDI1NSwgMiwgMjQ4LCAKLSAgICAxNTAsIDkzLCAxLCAyMzMsIDExOSwgMiwgMjQ4LCAxNTAsIDkzLCAxLCAyMzEsIDEzMCwgMiwgMjQ4LCAxNTAsIDkzLCAxLCAKLSAgICAyMjgsIDUxLCAyLCAyNDgsIDE1MCwgOTMsIDEsIDIyMiwgMTY1LCAyLCAyNDgsIDE1MCwgOTMsIDEsIDQwLCAyMjYsIDk3LCAKLSAgICAyLCAyNDgsIDE1MCwgOTMsIDEsIDIyNiwgOTcsIDIsIDI0OCwgMTUwLCA5MywgMSwgMjE2LCAxMzgsIDIsIDI0OCwgMTUwLCAKLSAgICA5MywgMSwgMjI0LCAxODUsIDIsIDI0OCwgMTUwLCA5MywgMSwgMjIzLCAyMjAsIDIsIDI0OCwgMTUwLCA5MywgMSwgMjIwLCAKLSAgICAyMDEsIDIsIDI0OCwgMTUwLCA5MywgMSwgMjE3LCAyNDYsIDIsIDI0OCwgMTUwLCA5MywgMSwgMjE0LCAyMzcsIDIsIDI0MSwgCi0gICAgNDcsIDkzLCAxLCAyNTEsIDIwNiwgMiwgMjI0LCA1OSwgOTMsIDEsIDIzNCwgMjU1LCAyLCAyMjQsIDU5LCA5MywgMSwgMjI2LCAKLSAgICA5NywgMiwgMjI0LCA1OSwgOTMsIDI2LCAxMDYsIDIzMywgMTE4LCAxMiwgMSwgMTA2LCAyMTQsIDMxLCA0OCwgMTcsIDEyLCAKLSAgICAxLCAxMDYsIDIxNCwgMzEsIDQwLCAxNywgMTIsIDEsIDI1MSwgMjQxLCA0OCwgMTcsIDEyLCAxLCAyNTEsIDI0MSwgNDAsIAotICAgIDE3LCAxMiwgMSwgMjUxLCAyNDEsIDcwLCAxNywgMTIsIDEsIDI1MSwgMjQxLCAxMzgsIDE3LCAxMiwgMSwgMjI2LCA4MSwgCi0gICAgNDgsIDE3LCAxMiwgMSwgMjI2LCA4MSwgNDAsIDE3LCAxMiwgMSwgMjI2LCA4MSwgNzAsIDE3LCAxMiwgMSwgMjI2LCA4MSwgCi0gICAgMTM4LCAxNywgMTIsIDEsIDI1MSwgMjI5LCA0OCwgMTcsIDEyLCAxLCAyNTEsIDIyOSwgNDAsIDE3LCAxMiwgMSwgMjUxLCAKLSAgICAyMjksIDcwLCAxNywgMTIsIDEsIDI1MSwgMjI5LCAxMzgsIDE3LCAxMiwgMSwgMjE2LCAxMDgsIDQ4LCAxNywgMTIsIDEsIAotICAgIDIxNiwgMTA4LCA0MCwgMTcsIDEyLCAxLCAyMTYsIDEwOCwgNzAsIDE3LCAxMiwgMSwgMjE2LCAxMDgsIDEzOCwgMTcsIDEyLCAKLSAgICAxLCAyMTcsIDIxNCwgNDgsIDE3LCAxMiwgMSwgMjE3LCAyMTQsIDQwLCAxNywgMTIsIDEsIDIxNywgMjE0LCA3MCwgMTcsIAotICAgIDEyLCAxLCAyMTcsIDIxNCwgMTM4LCAxNywgMTIsIDEsIDIxNiwgMTEwLCA0OCwgMTcsIDEyLCAxLCAyMTYsIDExMCwgNDAsIAotICAgIDE3LCAxMiwgMSwgMjE2LCAxMTAsIDcwLCAxNywgMTIsIDEsIDIxNiwgMTEwLCAxMzgsIDE3LCAxMiwgMSwgMjE0LCAyMjYsIAotICAgIDQ4LCAxNywgMTIsIDEsIDIxNCwgMjI2LCA0MCwgMTcsIDEyLCAxLCAyMTQsIDIyNiwgNzAsIDE3LCAxMiwgMSwgMjE0LCAKLSAgICAyMjYsIDEzOCwgMTcsIDEyLCAxLCAyMjYsIDc5LCA0OCwgMTcsIDEyLCAxLCAyMjYsIDc5LCA0MCwgMTcsIDEyLCAxLCAyMjYsIAotICAgIDc5LCA3MCwgMTcsIDEyLCAxLCAyMjYsIDc5LCAxMzgsIDE3LCAxMiwgMSwgMjQ1LCAyNTUsIDQ4LCAxNywgMTIsIDEsIDI0NSwgCi0gICAgMjU1LCA0MCwgMTcsIDEyLCAxLCAyNDUsIDI1NSwgNzAsIDE3LCAxMiwgMSwgMjQ1LCAyNTUsIDEzOCwgMTcsIDEyLCAxLCAKLSAgICAyMjgsIDE1LCA0OCwgMTcsIDEyLCAxLCAyMjgsIDE1LCA0MCwgMTcsIDEyLCAxLCAyMjgsIDE1LCA3MCwgMTcsIDEyLCAxLCAKLSAgICAyMjgsIDE1LCAxMzgsIDE3LCAxMiwgMSwgMjE3LCAyMzQsIDQ4LCAxNywgMTIsIDEsIDIxNywgMjM0LCA0MCwgMTcsIDEyLCAKLSAgICAxLCAyMTcsIDIzNCwgNzAsIDE3LCAxMiwgMSwgMjE3LCAyMzQsIDEzOCwgMTcsIDEyLCAxLCAyMTcsIDIzMiwgNDgsIDE3LCAKLSAgICAxMiwgMSwgMjE3LCAyMzIsIDQwLCAxNywgMTIsIDEsIDIxNywgMjMyLCA3MCwgMTcsIDEyLCAxLCAyMTcsIDIzMiwgMTM4LCAKLSAgICAxNywgMTIsIDEsIDI0OCwgODQsIDQ4LCAxNywgMTIsIDEsIDI0OCwgODQsIDQwLCAxNywgMTIsIDEsIDI0OCwgMTQ3LCA0OCwgCi0gICAgMTcsIDEyLCAxLCAyNDgsIDE0NywgNDAsIDE3LCAxMiwgMSwgMjQ2LCAyNiwgNDgsIDE3LCAxMiwgMSwgMjQ2LCAyNiwgNDAsIAotICAgIDE3LCAxMiwgMSwgMjQ4LCA4MiwgNDgsIDE3LCAxMiwgMSwgMjQ4LCA4MiwgNDAsIDE3LCAxMiwgMSwgMjM1LCAxMjIsIDQ4LCAKLSAgICAxNywgMTIsIDEsIDIzNSwgMTIyLCA0MCwgMTcsIDEyLCAxLCAyMjMsIDc4LCA0OCwgMTcsIDEyLCAxLCAyMjMsIDc4LCA0MCwgCi0gICAgMTcsIDEyLCAxLCAyMzQsIDE4MSwgNDgsIDE3LCAxMiwgMSwgMjM0LCAxODEsIDQwLCAxNywgMTIsIDEsIDIzNCwgMTgxLCAKLSAgICA3MCwgMTcsIDEyLCAxLCAyMzQsIDE4MSwgMTM4LCAxNywgMTIsIDEsIDI0MywgOTgsIDQ4LCAxNywgMTIsIDEsIDI0MywgOTgsIAotICAgIDQwLCAxNywgMTIsIDEsIDI0MywgOTgsIDcwLCAxNywgMTIsIDEsIDI0MywgOTgsIDEzOCwgMTcsIDEyLCAxLCAyNDIsIDgzLCAKLSAgICA0OCwgMTcsIDEyLCAxLCAyNDIsIDgzLCA0MCwgMTcsIDEyLCAxLCAyNDIsIDgzLCA3MCwgMTcsIDEyLCAxLCAyNDIsIDgzLCAKLSAgICAxMzgsIDE3LCAxMiwgMSwgMjI5LCA4OSwgNDgsIDE3LCAxMiwgMSwgMjI5LCA4OSwgNDAsIDE3LCAxMiwgMSwgMjI5LCA4OSwgCi0gICAgNzAsIDE3LCAxMiwgMSwgMjI5LCA4OSwgMTM4LCAxNywgMTIsIDEsIDIyOCwgMTc0LCAyNDIsIDE5NSwgNDgsIDE3LCAxMiwgCi0gICAgMSwgMjI4LCAxNzQsIDI0MiwgMTk1LCA0MCwgMTcsIDEyLCAxLCAyMjMsIDExNiwgNDgsIDE3LCAxMiwgMSwgMjIzLCAxMTYsIAotICAgIDQwLCAxNywgMTIsIDEsIDIyMywgMTE2LCA3MCwgMTcsIDEyLCAxLCAyMjMsIDExNiwgMTM4LCAxNywgMTIsIDEsIDI0MSwgCi0gICAgMjAzLCAyLCA3MywgNzgsIDQ4LCAxNywgMTIsIDEsIDI0MSwgMjAzLCAyLCA3MywgNzgsIDQwLCAxNywgMTIsIDEsIDI0MSwgCi0gICAgMjAzLCAyNDIsIDE0OCwgNDgsIDE3LCAxMiwgMSwgMjQxLCAyMDMsIDI0MiwgMTQ4LCA0MCwgMTcsIDEyLCAxLCAyNDEsIAotICAgIDIwMywgMjQyLCAxNDgsIDcwLCAxNywgMTIsIDEsIDI0MSwgMjAzLCAyNDIsIDE0OCwgMTM4LCAxNywgMTIsIDEsIDI0MSwgCi0gICAgMjAzLCAyNDcsIDk2LCA0OCwgMTcsIDEyLCAxLCAyNDEsIDIwMywgMjQ3LCA5NiwgNDAsIDE3LCAxMiwgMSwgMjQxLCAyMDMsIAotICAgIDI0NywgOTYsIDcwLCAxNywgMTIsIDEsIDI0MSwgMjAzLCAyNDcsIDk2LCAxMzgsIDE3LCAxMiwgMSwgNzMsIDI1MiwgNTMsIAotICAgIDQ4LCAxNywgMTIsIDEsIDczLCAyNTIsIDUzLCA0MCwgMTcsIDEyLCAxLCA3MywgMjUyLCA1MywgMiwgMTkyLCA3OCwgNDgsIAotICAgIDE3LCAxMiwgMSwgNzMsIDI1MiwgNTMsIDIsIDE5MiwgNzgsIDQwLCAxNywgMTIsIDE2LCA2MiwgNDksIDEyLCAxNiwgNjIsIAotICAgIDU1LCAxMiwgMTYsIDExNywgMTc2LCA0OSwgMTIsIDE2LCAxMTcsIDE3NiwgNTUsIDEyLCAxNiwgMTMzLCAxNzYsIDQ5LCAxMiwgCi0gICAgMTYsIDEzMywgMTc2LCA1NSwgMTIsIDE2LCAxMzMsIDE3NiwgMjI1LCAxNDEsIDI0NiwgNTgsIDQ5LCAxMiwgMTYsIDEzMywgCi0gICAgMTc2LCAyMjUsIDE0MSwgMjQ2LCA1OCwgNTUsIDEyLCAxNiwgMjQzLCAyMzcsIDE3NiwgNDksIDEyLCAxNiwgMjQzLCAyMzcsIAotICAgIDE3NiwgNTUsIDEyLCAxNiwgNTEsIDcxLCAyNTIsIDYwLCA1NSwgMTIsIDE2LCAxMTcsIDE3NiwgMjE0LCAxNjYsIDQ5LCAxMiwgCi0gICAgMTYsIDExNywgMTc2LCAyMTQsIDE2NiwgNTUsIDEyLCAxNiwgMjIzLCAxMzAsIDEyLCAxNiwgMywgMjE4LCAzMCwgNDksIDEyLCAKLSAgICAxNiwgMywgMjE4LCAzMCwgNTUsIDEyLCAxLCAyMjksIDE2MiwgNDgsIDE3LCAxMiwgMSwgMjI5LCAxNjIsIDQwLCAxNywgMTIsIAotICAgIDEsIDIyOSwgMTYyLCA3MCwgMTcsIDEyLCAxLCAyMjksIDE2MiwgMTM4LCAxNywgMTIsIDEsIDExMSwgNDgsIDE3LCAxMiwgMSwgCi0gICAgMTExLCA0MCwgMTcsIDEyLCAxLCAyMjcsIDEwMCwgNDgsIDE3LCAxMiwgMSwgMjI3LCAxMDAsIDQwLCAxNywgMTIsIDEsIAotICAgIDIxMiwgMjA0LCA0OCwgMTcsIDEyLCAxLCAyMTIsIDIwNCwgNDAsIDE3LCAxMiwgMSwgMTExLCAyLCAxOTIsIDc4LCA0OCwgCi0gICAgMTcsIDEyLCAxLCAyMTQsIDIzMywgNDgsIDE3LCAxMiwgMSwgMjE0LCAyMzMsIDQwLCAxNywgMTIsIDEsIDIzNCwgODIsIAotICAgIDIyNywgMTAwLCA0OCwgMTcsIDEyLCAxLCAyMzQsIDgyLCAyMjcsIDEwMCwgNDAsIDE3LCAxMiwgMSwgMjM0LCA4MiwgMjEyLCAKLSAgICAyMDQsIDQ4LCAxNywgMTIsIDEsIDIzNCwgODIsIDIxMiwgMjA0LCA0MCwgMTcsIDEyLCAxLCAxOTEsIDQ4LCAxNywgMTIsIDEsIAotICAgIDE5MSwgNDAsIDE3LCAxMiwgMSwgMTkxLCA3MCwgMTcsIDEyLCAxLCAxOTEsIDEzOCwgMTcsIDEyLCAxLCAyMTUsIDE3NywgCi0gICAgMjM0LCAxOTIsIDIzNCwgODIsIDEwNiwgMjEwLCA3MCwgMTcsIDEyLCAxLCAyMTUsIDE3NywgMjM0LCAxOTIsIDIzNCwgODIsIAotICAgIDEwNiwgMjEwLCAxMzgsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAxMDYsIDQ4LCAxNywgMTIsIDI2LCA3MywgMiwgCi0gICAgMTkyLCA3OCwgMiwgMTA2LCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDI1NCwgMTQ5LCA0OCwgMTcsIDEyLCAKLSAgICAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDI1NCwgMTQ5LCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDIxNCwgCi0gICAgMTUsIDQ4LCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgMjE0LCAxNSwgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAKLSAgICAxOTIsIDc4LCAyLCAxMTEsIDQ4LCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgMTExLCA0MCwgMTcsIDEyLCAyNiwgCi0gICAgNzMsIDIsIDE5MiwgNzgsIDIsIDIyNywgMTAwLCA0OCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDIyNywgMTAwLCAKLSAgICA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDIxMiwgMjA0LCA0OCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgCi0gICAgNzgsIDIsIDIxMiwgMjA0LCA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDE5MSwgNDgsIDE3LCAxMiwgMjYsIAotICAgIDczLCAyLCAxOTIsIDc4LCAyLCAxOTEsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgMTkxLCA3MCwgMTcsIAotICAgIDEyLCAyNiwgMjE1LCAxNzcsIDIzNCwgODIsIDczLCAyLCAxOTIsIDc4LCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMjYsIAotICAgIDIxNSwgMTc3LCAyMzQsIDgyLCA3MywgMiwgMTkyLCA3OCwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMTUsIDE3NywgCi0gICAgMjM0LCA4MiwgNzMsIDIsIDE5MiwgNzgsIDIsIDEwNiwgMjEwLCA3MCwgMTcsIDEyLCAxLCAyNDQsIDEzNiwgNzMsIDQ4LCAKLSAgICAxNywgMTIsIDEsIDI0NCwgMTM2LCA3MywgNDAsIDE3LCAxMiwgMSwgMjQ0LCAxMzYsIDczLCA3MCwgMTcsIDEyLCAxLCAyNDQsIAotICAgIDEzNiwgNzMsIDEzOCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDczLCAyLCAKLSAgICAxOTIsIDc4LCAyLCAxMjEsIDQ4LCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAKLSAgICA3MywgMiwgMTkyLCA3OCwgMiwgMTA2LCAyMTAsIDQ4LCAxNywgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgNzMsIDQ4LCAKLSAgICAxNywgMTIsIDI2LCAyNTEsIDIzMSwgMiwgMTQ1LCA0OCwgMTcsIDEyLCAyNiwgMjUxLCAyMzEsIDIsIDEyMSwgNDgsIDE3LCAKLSAgICAxMiwgMjYsIDI1MSwgMjMxLCAyLCAyMzQsIDEzNiwgNDgsIDE3LCAxMiwgMjYsIDI1MSwgMjMxLCAyLCA2MywgNDgsIDE3LCAKLSAgICAxMiwgMjYsIDI1MSwgMjMxLCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMjYsIDI1MSwgMjMxLCAyLCA3MywgNDgsIDE3LCAKLSAgICAxMiwgMjYsIDIxNywgMjE2LCAyLCAxNDUsIDQ4LCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgMTIxLCA0OCwgMTcsIDEyLCAKLSAgICAyNiwgMjE3LCAyMTYsIDIsIDIzNCwgMTM2LCA0OCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDYzLCA0OCwgMTcsIDEyLCAKLSAgICAyNiwgMjE3LCAyMTYsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDczLCA0OCwgMTcsIDEyLCAKLSAgICAyNiwgMjE3LCAxNDYsIDIsIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDIxNywgMTQ2LCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIAotICAgIDIxNywgMTQ2LCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMjYsIDIxNywgMTQ2LCAyLCA3MywgNDgsIDE3LCAxMiwgMjYsIAotICAgIDE0NSwgMiwgMTIxLCA0OCwgMTcsIDEyLCAyNiwgMTQ1LCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIDEyMSwgMiwgMTQ1LCA0OCwgCi0gICAgMTcsIDEyLCAyNiwgMTIxLCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIDIzNCwgMTM2LCAyLCAxNDUsIDQ4LCAxNywgMTIsIDI2LCAKLSAgICAyMzQsIDEzNiwgMiwgMTIxLCA0OCwgMTcsIDEyLCAyNiwgMjM0LCAxMzYsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgMjIyLCAKLSAgICA4NiwgMiwgMTQ1LCA0OCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgMTIxLCA0OCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgCi0gICAgMjM0LCAxMzYsIDQ4LCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIDIyMiwgMTk2LCAyLCAKLSAgICAxMjEsIDQ4LCAxNywgMTIsIDI2LCAyMjIsIDE5NiwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAyNDgsIDE2MCwgMiwgMTQ1LCAKLSAgICA0OCwgMTcsIDEyLCAyNiwgMjQ4LCAxNjAsIDIsIDEyMSwgNDgsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCAyMzQsIDEzNiwgCi0gICAgNDgsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIDIxOCwgMzAsIDIsIDEyMSwgNDgsIDE3LCAKLSAgICAxMiwgMjYsIDIxOCwgMzAsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgMjEyLCAxMDUsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgCi0gICAgMjU0LCAxMDQsIDIsIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDI1NCwgMTA0LCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIDI0MiwgCi0gICAgMjIxLCAyLCAxNDUsIDQ4LCAxNywgMTIsIDI2LCAyNDIsIDIyMSwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAyNDQsIDExMiwgCi0gICAgMiwgMTQ1LCA0OCwgMTcsIDEyLCAyNiwgMjQ0LCAxMTIsIDIsIDEyMSwgNDgsIDE3LCAxMiwgMjYsIDI0NCwgMTEyLCAyLCAKLSAgICAyMzQsIDEzNiwgNDgsIDE3LCAxMiwgMjYsIDI0NCwgMTEyLCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIDI0NCwgMTEyLCAyLCAKLSAgICAxMDYsIDIxMCwgNDgsIDE3LCAxMiwgMjYsIDI0NCwgMTEyLCAyLCA3MywgNDgsIDE3LCAxMiwgMjYsIDIyNCwgMjI2LCAyLCAKLSAgICAxMjEsIDQ4LCAxNywgMTIsIDI2LCAyMjQsIDIyNiwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAyMjQsIDIyNiwgMiwgMTA2LCAKLSAgICAyMTAsIDQ4LCAxNywgMTIsIDI2LCAyMjQsIDIyNiwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMTA2LCAKLSAgICA0OCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDIzNCwgMjU1LCAyLCAxMjEsIDQ4LCAKLSAgICAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMjM0LCAxMzYsIDQ4LCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMjMzLCAxMjcsIAotICAgIDQ4LCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMTA2LCAyMTAsIAotICAgIDQ4LCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTQ1LCA0OCwgCi0gICAgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDEyMSwgNDgsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAyMzQsIDEzNiwgNDgsIAotICAgIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCA2MywgNDgsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAxMDYsIDIxMCwgNDgsIAotICAgIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCA3MywgNDgsIDE3LCAxMiwgMjYsIDYzLCAyLCAxNDUsIDQ4LCAxNywgMTIsIDI2LCAKLSAgICA2MywgMiwgMTIxLCA0OCwgMTcsIDEyLCAyNiwgNjMsIDIsIDIzNCwgMTM2LCA0OCwgMTcsIDEyLCAyNiwgNjMsIDIsIDYzLCAKLSAgICA0OCwgMTcsIDEyLCAyNiwgNjMsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAyNiwgNjMsIDIsIDczLCA0OCwgMTcsIDEyLCAKLSAgICAyNiwgMjI4LCAxNzQsIDIsIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAxMjEsIDQ4LCAxNywgMTIsIDI2LCAKLSAgICAyMjgsIDE3NCwgMiwgMjM0LCAxMzYsIDQ4LCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCAKLSAgICAyMjgsIDE3NCwgMiwgMTA2LCAyMTAsIDQ4LCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAKLSAgICAyNDEsIDIwMywgMiwgMTQ1LCA0OCwgMTcsIDEyLCAyNiwgMjQxLCAyMDMsIDIsIDYzLCA0OCwgMTcsIDEyLCAyNiwgMjQxLCAKLSAgICAyMDMsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAyNiwgMjQxLCAyMDMsIDIsIDczLCA0OCwgMTcsIDEyLCAyNiwgNzMsIDIsIAotICAgIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDczLCAyLCAxMjEsIDQ4LCAxNywgMTIsIDI2LCA3MywgMiwgMjM0LCAxMzYsIDQ4LCAxNywgCi0gICAgMTIsIDI2LCA3MywgMiwgNjMsIDQ4LCAxNywgMTIsIDI2LCA3MywgMiwgMTA2LCAyMTAsIDQ4LCAxNywgMTIsIDI2LCA3MywgCi0gICAgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAyMTcsIDE1NiwgMiwgMjE4LCAyMjMsIDEwNiwgNDgsIDE3LCAxMiwgMjYsIDIyMywgCi0gICAgMjQ2LCAyLCAyMTgsIDIyMywgMTA2LCA0OCwgMTcsIDEyLCAyNiwgMTA2LCAyMTAsIDIsIDIxOCwgMjIzLCAxMDYsIDQ4LCAKLSAgICAxNywgMTIsIDI2LCAyMjEsIDE2LCAyLCAyNDgsIDEyOCwgNDgsIDE3LCAxMiwgMjYsIDIyMSwgMTYsIDIsIDIzNCwgMjA5LCAKLSAgICA0OCwgMTcsIDEyLCAyNiwgMjIxLCAxNiwgMiwgMjQ0LCAxMzQsIDQ4LCAxNywgMTIsIDI2LCAyMjEsIDE2LCAyLCAyNDgsIAotICAgIDEzMCwgNDgsIDE3LCAxMiwgMjYsIDIyMSwgMTYsIDIsIDIzNCwgMjExLCA0OCwgMTcsIDEyLCAyNiwgMjIxLCAxNiwgMiwgCi0gICAgMjE4LCAyMjMsIDEwNiwgNDgsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAyMjMsIDI0NiwgNDAsIDE3LCAxMiwgCi0gICAgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAyMTIsIDEwMiwgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCA2MywgCi0gICAgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAyMjgsIDE3NCwgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIAotICAgIDc4LCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIAotICAgIDI1MSwgMjMxLCAyLCAyMjMsIDI0NiwgNDAsIDE3LCAxMiwgMjYsIDI1MSwgMjMxLCAyLCAyMTIsIDEwMiwgNDAsIDE3LCAxMiwgCi0gICAgMjYsIDI1MSwgMjMxLCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDI1MSwgMjMxLCAyLCAyMjgsIDE3NCwgNDAsIDE3LCAxMiwgCi0gICAgMjYsIDI1MSwgMjMxLCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDI1MSwgMjMxLCAyLCA3MywgNDAsIDE3LCAxMiwgCi0gICAgMjYsIDIxNywgMjE2LCAyLCAyMjMsIDI0NiwgNDAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCAyMTIsIDEwMiwgNDAsIDE3LCAKLSAgICAxMiwgMjYsIDIxNywgMjE2LCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCAyMjgsIDE3NCwgNDAsIDE3LCAKLSAgICAxMiwgMjYsIDIxNywgMjE2LCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCA3MywgNDAsIDE3LCAKLSAgICAxMiwgMjYsIDIxNywgMTQ2LCAyLCAyMjMsIDI0NiwgNDAsIDE3LCAxMiwgMjYsIDIxNywgMTQ2LCAyLCAyMTIsIDEwMiwgNDAsIAotICAgIDE3LCAxMiwgMjYsIDIxNywgMTQ2LCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDIxNywgMTQ2LCAyLCAyMjgsIDE3NCwgNDAsIAotICAgIDE3LCAxMiwgMjYsIDIxNywgMTQ2LCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIxNywgMTQ2LCAyLCA3MywgNDAsIAotICAgIDE3LCAxMiwgMjYsIDI0NCwgMTEyLCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDI0NCwgMTEyLCAyLCA3MywgNDAsIAotICAgIDE3LCAxMiwgMjYsIDIyNCwgMjI2LCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIyNCwgMjI2LCAyLCA3MywgNDAsIAotICAgIDE3LCAxMiwgMjYsIDIzNCwgMjU1LCAyLCAxMDYsIDQwLCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMjMzLCAxMjcsIDQwLCAKLSAgICAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMTA2LCAyMTAsIDQwLCAKLSAgICAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgNjMsIDQwLCAxNywgMTIsIAotICAgIDI2LCAyMzMsIDEyNywgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgNzMsIDQwLCAxNywgMTIsIAotICAgIDI2LCA2MywgMiwgMTA2LCA0MCwgMTcsIDEyLCAyNiwgNjMsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIAotICAgIDIyMywgMjQ2LCA0MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDIxMiwgMTAyLCA0MCwgMTcsIDEyLCAyNiwgMjI4LCAKLSAgICAxNzQsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDIyOCwgMTc0LCA0MCwgMTcsIDEyLCAyNiwgMjI4LCAKLSAgICAxNzQsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMTA2LCAKLSAgICAyMTAsIDIsIDIxOCwgMjIzLCAxMDYsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgMjIzLCAyNDYsIDQwLCAxNywgMTIsIDI2LCAKLSAgICA3MywgMiwgMjEyLCAxMDIsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgMjI4LCAKLSAgICAxNzQsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgNzMsIDQwLCAxNywgCi0gICAgMTIsIDI2LCA3MywgMiwgMTkyLCA3OCwgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE5MiwgNzgsIDIsIDEyMSwgCi0gICAgNzAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAyMzQsIDEzNiwgNzAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIAotICAgIDc4LCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCAyNDEsIDIwMywgNzAsIDE3LCAxMiwgMjYsIAotICAgIDI1MSwgMjMxLCAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCAyNTEsIDIzMSwgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgMjUxLCAKLSAgICAyMzEsIDIsIDIzNCwgMTM2LCA3MCwgMTcsIDEyLCAyNiwgMjUxLCAyMzEsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjUxLCAKLSAgICAyMzEsIDIsIDI0MSwgMjAzLCA3MCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDIxNywgCi0gICAgMjE2LCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCAyMTcsIAotICAgIDIxNiwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgMjQxLCAyMDMsIDcwLCAxNywgMTIsIDI2LCAyMTcsIAotICAgIDE0NiwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAxNDUsIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDE0NSwgMiwgNjMsIDcwLCAKLSAgICAxNywgMTIsIDI2LCAxMjEsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDEyMSwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMzQsIAotICAgIDEzNiwgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjM0LCAxMzYsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgCi0gICAgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgMjM0LCAKLSAgICAxMzYsIDcwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIyMiwgMTk2LCAyLCAxMjEsIAotICAgIDcwLCAxNywgMTIsIDI2LCAyMjIsIDE5NiwgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCAyMjIsIDE5NiwgMiwgNjMsIAotICAgIDcwLCAxNywgMTIsIDI2LCAyNDgsIDE2MCwgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjQ4LCAxNjAsIDIsIDEyMSwgNzAsIAotICAgIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCAyMzQsIDEzNiwgNzAsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCA2MywgNzAsIAotICAgIDE3LCAxMiwgMjYsIDIxOCwgMzAsIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDIxMiwgMTA1LCAyLCA2MywgNzAsIDE3LCAxMiwgCi0gICAgMjYsIDI1NCwgMTA0LCAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCAyNTQsIDEwNCwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAKLSAgICAyNDIsIDIyMSwgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjQyLCAyMjEsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjQ0LCAKLSAgICAxMTIsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDI0NCwgMTEyLCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCAyNDQsIDExMiwgCi0gICAgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCAyNDQsIDExMiwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMjQsIDIyNiwgCi0gICAgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgMjI0LCAyMjYsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIAotICAgIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDIzNCwgMjU1LCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMjM0LCAKLSAgICAxMzYsIDcwLCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMjMzLCAxMjcsIDcwLCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgCi0gICAgNjMsIDcwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDEyMSwgCi0gICAgNzAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAyMzQsIDEzNiwgNzAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCA2MywgCi0gICAgNzAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAyNDEsIDIwMywgNzAsIDE3LCAxMiwgMjYsIDYzLCAyLCAxNDUsIDcwLCAKLSAgICAxNywgMTIsIDI2LCA2MywgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgNjMsIDIsIDIzNCwgMTM2LCA3MCwgMTcsIDEyLCAyNiwgCi0gICAgNjMsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAKLSAgICAxMjEsIDcwLCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgCi0gICAgNjMsIDcwLCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgMjQxLCAyMDMsIDcwLCAxNywgMTIsIDI2LCAyNDEsIDIwMywgMiwgCi0gICAgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjQxLCAyMDMsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjQxLCAyMDMsIDIsIDIxOCwgCi0gICAgMjIzLCAxMDYsIDcwLCAxNywgMTIsIDI2LCA3MywgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDEyMSwgNzAsIDE3LCAKLSAgICAxMiwgMjYsIDczLCAyLCAyMzQsIDEzNiwgNzAsIDE3LCAxMiwgMjYsIDczLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDczLCAKLSAgICAyLCAyNDEsIDIwMywgNzAsIDE3LCAxMiwgMjYsIDczLCAyLCAxOTIsIDc4LCAyLCA2MywgMTM4LCAxNywgMTIsIDI2LCA3MywgCi0gICAgMiwgMTkyLCA3OCwgMiwgMjQxLCAyMDMsIDEzOCwgMTcsIDEyLCAyNiwgMjUxLCAyMzEsIDIsIDYzLCAxMzgsIDE3LCAxMiwgCi0gICAgMjYsIDI1MSwgMjMxLCAyLCAyNDEsIDIwMywgMTM4LCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgNjMsIDEzOCwgMTcsIDEyLCAKLSAgICAyNiwgMjE3LCAyMTYsIDIsIDI0MSwgMjAzLCAxMzgsIDE3LCAxMiwgMjYsIDIxNywgMTQ2LCAyLCA2MywgMTM4LCAxNywgMTIsIAotICAgIDI2LCAyMTcsIDE0NiwgMiwgMjQxLCAyMDMsIDEzOCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgNjMsIDEzOCwgMTcsIDEyLCAKLSAgICAyNiwgMjIyLCA4NiwgMiwgMjQxLCAyMDMsIDEzOCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDYzLCAxMzgsIDE3LCAxMiwgCi0gICAgMjYsIDIyMCwgMjQwLCAyLCAyNDEsIDIwMywgMTM4LCAxNywgMTIsIDI2LCAyMzQsIDI1NSwgMiwgMjMzLCAxMjcsIDEzOCwgCi0gICAgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDYzLCAxMzgsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCA2MywgMTM4LCAxNywgCi0gICAgMTIsIDI2LCAyMjgsIDE3NCwgMiwgNjMsIDEzOCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDI0MSwgMjAzLCAxMzgsIDE3LCAKLSAgICAxMiwgMjYsIDczLCAyLCA2MywgMTM4LCAxNywgMTIsIDI2LCA3MywgMiwgMjQxLCAyMDMsIDEzOCwgMTcsIDEyLCAyNiwgCi0gICAgMjIxLCAxNiwgMiwgMjQ0LCAxMzQsIDEzOCwgMTcsIDEyLCAyNiwgMjIxLCAxNiwgMiwgMjQ4LCAxMzAsIDEzOCwgMTcsIDEyLCAKLSAgICAyNiwgMjIxLCAxNiwgMiwgMjM0LCAyMTEsIDEzOCwgMTcsIDEyLCAyNiwgMjE4LCAzMCwgMiwgMTA2LCAyMTAsIDQ4LCAxNywgCi0gICAgMTIsIDI2LCAyMTgsIDMwLCAyLCA3MywgNDgsIDE3LCAxMiwgMjYsIDI1NCwgMTA0LCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAKLSAgICAxMiwgMjYsIDI1NCwgMTA0LCAyLCA3MywgNDgsIDE3LCAxMiwgMjYsIDI0MiwgMjIxLCAyLCAxMDYsIDIxMCwgNDgsIDE3LCAKLSAgICAxMiwgMjYsIDI0MiwgMjIxLCAyLCA3MywgNDgsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIAotICAgIDEyLCAyNiwgMjIyLCA4NiwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAyMjAsIDI0MCwgMiwgMTA2LCAyMTAsIDQ4LCAxNywgCi0gICAgMTIsIDI2LCAyMjAsIDI0MCwgMiwgNzMsIDQ4LCAxNywgMTIsIDI2LCAxMjEsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAKLSAgICAyNiwgMTIxLCAyLCA3MywgNDgsIDE3LCAxMiwgMjYsIDE0NSwgMiwgMTA2LCAyMTAsIDQ4LCAxNywgMTIsIDI2LCAxNDUsIDIsIAotICAgIDczLCA0OCwgMTcsIDEyLCAyNiwgMjM0LCAxMzYsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAyNiwgMjM0LCAxMzYsIDIsIAotICAgIDczLCA0OCwgMTcsIDEyLCAyNiwgMjIyLCAxOTYsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAyNiwgMjIyLCAxOTYsIDIsIAotICAgIDczLCA0OCwgMTcsIDEyLCAyNiwgMjQ4LCAxNjAsIDIsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAyNiwgMjQ4LCAxNjAsIDIsIAotICAgIDczLCA0OCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDE0NSwgNDgsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCAxMjEsIAotICAgIDQ4LCAxNywgMTIsIDI2LCAyMjAsIDI0MCwgMiwgMjM0LCAxMzYsIDQ4LCAxNywgMTIsIDI2LCAyMjAsIDI0MCwgMiwgNjMsIAotICAgIDQ4LCAxNywgMTIsIDI2LCAyMjAsIDI0MCwgMiwgMjIzLCAyNDYsIDQ4LCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCAyMjMsIAotICAgIDI0NiwgNDgsIDE3LCAxMiwgMjYsIDIyMiwgMTk2LCAyLCAyMjMsIDI0NiwgNDgsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCAKLSAgICAyMjMsIDI0NiwgNDgsIDE3LCAxMiwgMjYsIDIxOCwgMzAsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjE4LCAzMCwgCi0gICAgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyNTQsIDEwNCwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyNTQsIDEwNCwgCi0gICAgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyNDIsIDIyMSwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyNDIsIDIyMSwgCi0gICAgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIAotICAgIDczLCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIAotICAgIDczLCA0MCwgMTcsIDEyLCAyNiwgMTIxLCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDEyMSwgMiwgNzMsIDQwLCAxNywgCi0gICAgMTIsIDI2LCAxNDUsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMTQ1LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIAotICAgIDIzNCwgMTM2LCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIzNCwgMTM2LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIAotICAgIDIyMiwgMTk2LCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIyMiwgMTk2LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIAotICAgIDI0OCwgMTYwLCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIAotICAgIDIyMCwgMjQwLCAyLCAxNDUsIDQwLCAxNywgMTIsIDI2LCAyMjAsIDI0MCwgMiwgMTIxLCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAKLSAgICAyNDAsIDIsIDIzNCwgMTM2LCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAKLSAgICAyNDAsIDIsIDIyMywgMjQ2LCA0MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgMjIzLCAyNDYsIDQwLCAxNywgMTIsIDI2LCAKLSAgICAyMjIsIDE5NiwgMiwgMjIzLCAyNDYsIDQwLCAxNywgMTIsIDI2LCAyNDgsIDE2MCwgMiwgMjIzLCAyNDYsIDQwLCAxNywgMTIsIAotICAgIDI2LCAyMjAsIDI0MCwgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIAotICAgIDIyMCwgMjQwLCAyLCAyMzQsIDEzNiwgNzAsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIAotICAgIDIyMiwgODYsIDIsIDI0MSwgMjAzLCA3MCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDI0MSwgMjAzLCA3MCwgMTcsIDEyLCAKLSAgICAyNiwgMjE4LCAzMCwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCAxNDUsIDEzOCwgMTcsIDEyLCAyNiwgCi0gICAgMjIyLCA4NiwgMiwgMTIxLCAxMzgsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDIzNCwgMTM2LCAxMzgsIDE3LCAxMiwgMjYsIAotICAgIDIyMCwgMjQwLCAyLCAxNDUsIDEzOCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDEyMSwgMTM4LCAxNywgMTIsIDI2LCAKLSAgICAyMjAsIDI0MCwgMiwgMjM0LCAxMzYsIDEzOCwgMTcsIDEyLCAyNiwgMjE4LCAzMCwgMiwgNjMsIDEzOCwgMTcsIDEyLCAyNiwgCi0gICAgMjEyLCAxMDUsIDIsIDYzLCAxMzgsIDE3LCAxMiwgMjYsIDEwNiwgMiwgMjQ0LCAxMzIsIDQwLCAxNywgMTIsIDI2LCAxMDYsIAotICAgIDIsIDI0NCwgMTMyLCA0OCwgMTcsIDIyNywgMTMsIDQyLCAyMjYsIDEzMSwgMjI3LCAxMywgNDYsIDIyNiwgMTMxLCAxMiwgCi0gICAgMjYsIDIxNywgMjE2LCAyLCAxNDUsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDEyMSwgMiwgMTQ1LCAKLSAgICA0MCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDEyMSwgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIAotICAgIDEyMSwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgMjM0LCAxMzYsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgCi0gICAgMjE3LCAyMTYsIDIsIDYzLCAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCAyMTcsIDIxNiwgMiwgNjMsIDIsIDEyMSwgNzAsIDE3LCAKLSAgICAxMiwgMjYsIDIxNywgMjE2LCAyLCA2MywgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCAxNDUsIDIsIDYzLCAyLCAxMjEsIAotICAgIDQwLCAxNywgMTIsIDI2LCAxNDUsIDIsIDYzLCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCAxMjEsIDIsIDYzLCAyLCA3MywgCi0gICAgNDAsIDE3LCAxMiwgMjYsIDEyMSwgMiwgNjMsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjIyLCA4NiwgMiwgMTIxLCAKLSAgICAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCAxNDUsIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDIyMiwgODYsIAotICAgIDIsIDE0NSwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCA2MywgMiwgMTIxLCA0MCwgMTcsIDEyLCAKLSAgICAyNiwgMjIyLCA4NiwgMiwgNjMsIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDYzLCAyLCAxNDUsIDcwLCAKLSAgICAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCA2MywgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyMjIsIDg2LCAyLCA2MywgMiwgNjMsIAotICAgIDcwLCAxNywgMTIsIDI2LCAyMjIsIDE5NiwgMiwgMTIxLCAyLCAxMjEsIDQwLCAxNywgMTIsIDI2LCAyMjIsIDE5NiwgMiwgCi0gICAgMTIxLCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCAyMjIsIDE5NiwgMiwgNjMsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAKLSAgICAyNDAsIDIsIDEyMSwgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyMjAsIDI0MCwgMiwgMTIxLCAyLCA2MywgNzAsIDE3LCAxMiwgCi0gICAgMjYsIDIyMCwgMjQwLCAyLCAxNDUsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDYzLCAyLCAyMzQsIAotICAgIDEzNiwgNDAsIDE3LCAxMiwgMjYsIDIyMCwgMjQwLCAyLCA2MywgMiwgMjM0LCAxMzYsIDcwLCAxNywgMTIsIDI2LCAyMjAsIAotICAgIDI0MCwgMiwgNjMsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDYzLCAyLCA2MywgNzAsIDE3LCAxMiwgCi0gICAgMjYsIDI0OCwgMTYwLCAyLCAxMjEsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjQ4LCAxNjAsIDIsIDIzNCwgMTM2LCAKLSAgICAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDI0OCwgMTYwLCAyLCAyMzQsIDEzNiwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMTgsIAotICAgIDMwLCAyLCA2MywgMiwgMTIxLCA0MCwgMTcsIDEyLCAyNiwgMjE4LCAzMCwgMiwgNjMsIDIsIDEyMSwgNzAsIDE3LCAxMiwgCi0gICAgMjYsIDIxOCwgMzAsIDIsIDYzLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIxOCwgMzAsIDIsIDYzLCAyLCA3MywgNDAsIDE3LCAKLSAgICAxMiwgMjYsIDI1NCwgMTA0LCAyLCAxNDUsIDIsIDYzLCA0MCwgMTcsIDEyLCAyNiwgMjU0LCAxMDQsIDIsIDYzLCAyLCA2MywgCi0gICAgNDAsIDE3LCAxMiwgMjYsIDI1NCwgMTA0LCAyLCA2MywgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyNTQsIDEwNCwgMiwgNjMsIAotICAgIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMjQyLCAyMjEsIDIsIDYzLCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDI0MiwgCi0gICAgMjIxLCAyLCA2MywgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyNDIsIDIyMSwgMiwgNjMsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIAotICAgIDEyLCAyNiwgMjQ0LCAxMTIsIDIsIDIzNCwgMTM2LCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDI0NCwgMTEyLCAyLCAyMzQsIAotICAgIDEzNiwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyMjQsIDIyNiwgMiwgNjMsIDIsIDEyMSwgNDAsIDE3LCAxMiwgMjYsIDIyNCwgCi0gICAgMjI2LCAyLCA2MywgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTIxLCAyLCA2MywgNDAsIDE3LCAxMiwgCi0gICAgMjYsIDIzMywgMTI3LCAyLCAxMjEsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDEyMSwgMiwgMTA2LCAKLSAgICAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTQ1LCAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgCi0gICAgMiwgMTQ1LCAyLCAxNDUsIDQwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMjM0LCAxMzYsIDIsIDYzLCA0MCwgMTcsIDEyLCAKLSAgICAyNiwgMjMzLCAxMjcsIDIsIDIzNCwgMTM2LCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCA2MywgMiwgCi0gICAgMTIxLCA0MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDYzLCAyLCAxMjEsIDcwLCAxNywgMTIsIDI2LCA2MywgMiwgMTIxLCAKLSAgICAyLCAxNDUsIDcwLCAxNywgMTIsIDI2LCA2MywgMiwgMTIxLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDYzLCAyLCAxMjEsIDIsIAotICAgIDczLCA0MCwgMTcsIDEyLCAyNiwgNjMsIDIsIDE0NSwgMiwgMTIxLCA3MCwgMTcsIDEyLCAyNiwgNjMsIDIsIDE0NSwgMiwgCi0gICAgNjMsIDcwLCAxNywgMTIsIDI2LCA2MywgMiwgMjM0LCAxMzYsIDIsIDE0NSwgNzAsIDE3LCAxMiwgMjYsIDYzLCAyLCAyMzQsIAotICAgIDEzNiwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCA2MywgMiwgMTQ1LCAyLCAyMzQsIDEzNiwgNzAsIDE3LCAxMiwgMjYsIDI0MSwgCi0gICAgMjAzLCAyLCA2MywgMiwgMTQ1LCA3MCwgMTcsIDEyLCAyNiwgMjQxLCAyMDMsIDIsIDYzLCAyLCA2MywgNzAsIDE3LCAxMiwgCi0gICAgMjYsIDIyOCwgMTc0LCAyLCAxMjEsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDEyMSwgMiwgMTA2LCAKLSAgICAyMTAsIDQwLCAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgMTQ1LCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAKLSAgICAyLCAxNDUsIDIsIDYzLCA3MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDE0NSwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIAotICAgIDI2LCAyMjgsIDE3NCwgMiwgNjMsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjI4LCAxNzQsIDIsIDYzLCAyLCAxMDYsIDIxMCwgCi0gICAgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCA2MywgMiwgNjMsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgNjMsIDIsIDYzLCA3MCwgCi0gICAgMTcsIDEyLCAyNiwgMjUxLCAyMzEsIDIsIDIzNCwgMTM2LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCAKLSAgICAxNDUsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDE0NSwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIAotICAgIDI2LCAyMTcsIDIxNiwgMiwgMjM0LCAxMzYsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjE3LCAyMTYsIDIsIDIzNCwgMTM2LCAKLSAgICAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIxNywgMjE2LCAyLCA2MywgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCAyMTcsIAotICAgIDIxNiwgMiwgNjMsIDIsIDEwNiwgMjEwLCA0MCwgMTcsIDEyLCAyNiwgMTQ1LCAyLCA2MywgMiwgNzMsIDQwLCAxNywgMTIsIAotICAgIDI2LCAxNDUsIDIsIDEyMSwgMiwgMTA2LCAyMTAsIDQwLCAxNywgMTIsIDI2LCAxNDUsIDIsIDYzLCAyLCAxMDYsIDIxMCwgCi0gICAgNDAsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDIzNCwgMTM2LCAyLCAxMDYsIDIxMCwgNDAsIDE3LCAxMiwgMjYsIDIyMiwgCi0gICAgMTk2LCAyLCAxMjEsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjIwLCAyNDAsIDIsIDEyMSwgMiwgNzMsIDQwLCAxNywgMTIsIAotICAgIDI2LCAyNDgsIDE2MCwgMiwgMTIxLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAxNDUsIDIsIDczLCA0MCwgCi0gICAgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDYzLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDczLCAyLCAxMjEsIDIsIDczLCAKLSAgICA0MCwgMTcsIDEyLCAyNiwgNzMsIDIsIDE0NSwgMiwgNzMsIDQwLCAxNywgMTIsIDI2LCA3MywgMiwgNjMsIDIsIDczLCA0MCwgCi0gICAgMTcsIDEyLCAyNiwgNjMsIDIsIDYzLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIyNCwgMjI2LCAyLCA2MywgMiwgNzMsIDQwLCAKLSAgICAxNywgMTIsIDI2LCAyMjgsIDE3NCwgMiwgMTIxLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDIyNCwgMjI2LCAyLCA2MywgMiwgCi0gICAgMTIxLCA3MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDEyMSwgMiwgNjMsIDcwLCAxNywgMTIsIDI2LCAyNTQsIDEwNCwgCi0gICAgMiwgNjMsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjM0LCAyNTUsIDIsIDYzLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIAotICAgIDIyOCwgMTc0LCAyLCAxNDUsIDIsIDEyMSwgNzAsIDE3LCAxMiwgMjYsIDYzLCAyLCAyMzQsIDEzNiwgMiwgNzMsIDQwLCAxNywgCi0gICAgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTQ1LCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIzNCwgMjU1LCAyLCA2MywgMiwgNjMsIAotICAgIDQwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTQ1LCAyLCA2MywgNDAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAKLSAgICAxNDUsIDIsIDEyMSwgNDAsIDE3LCAxMiwgMjYsIDE0NSwgMiwgMTIxLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDEyMSwgMiwgCi0gICAgMTQ1LCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDYzLCAyLCAxNDUsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjQ0LCAxMTIsIAotICAgIDIsIDYzLCAyLCA3MywgNDAsIDE3LCAxMiwgMjYsIDI1MSwgMjMxLCAyLCAxMjEsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgCi0gICAgMjM0LCAyNTUsIDIsIDYzLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDI1NCwgMTA0LCAyLCAxNDUsIDIsIDYzLCA3MCwgMTcsIAotICAgIDEyLCAyNiwgMjIyLCAxOTYsIDIsIDYzLCAyLCA2MywgNzAsIDE3LCAxMiwgMjYsIDIyMiwgODYsIDIsIDIzNCwgMTM2LCAyLCAKLSAgICA3MywgNDAsIDE3LCAxMiwgMjYsIDIyOCwgMTc0LCAyLCAxNDUsIDIsIDczLCA0MCwgMTcsIDEyLCAyNiwgMjIyLCAxNzUsIAotICAgIDIxNSwgMTAyLCAyNTMsIDE1MywgMjM0LCAxMywgMjE5LCA3MCwgNSwgNDgsIDE3LCAxMiwgMjYsIDIyNCwgMjIyLCAyMTUsIAotICAgIDEwMiwgMjUzLCAxNTMsIDIzNCwgMTMsIDIxOSwgNzAsIDUsIDQ4LCAxNywgMTIsIDI2LCAyNTQsIDYyLCA0OCwgMTcsIDEyLCAKLSAgICAyNiwgMjU0LCA5MSwgNDgsIDE3LCAxMiwgMjYsIDIzMCwgMjIzLCA0OCwgMTcsIDEyLCAyNiwgMjIyLCAxNzYsIDQ4LCAxNywgCi0gICAgMTIsIDI2LCAyMjQsIDM1LCA0OCwgMTcsIDEyLCAyNiwgMjU0LCA4MCwgNDgsIDE3LCAxMiwgMjYsIDIxNCwgMzMsIDQ4LCAKLSAgICAxNywgMTIsIDI2LCAyMjIsIDE3NSwgNDgsIDE3LCAxMiwgMjYsIDIyMiwgMTc0LCAyNTQsIDgwLCAyMTQsIDMyLCAxMiwgMjYsIAotICAgIDIzNSwgMTM0LCAyMjMsIDE4NywgNTIsIDEyLCAyNiwgMjUxLCAxNTMsIDI1MywgMjA5LCAyNTMsIDIxMCwgNDMsIDIyMiwgCi0gICAgNzYsIDQzLCAyMjEsIDIyMSwgNDMsIDIyMSwgMTUzLCA0MywgMjIxLCAxNDIsIDQzLCAyMjEsIDEzMSwgNDMsIDIyMSwgMTIwLCAKLSAgICA0MywgMjIxLCAxMDksIDQzLCAyMjEsIDk4LCA0MywgMjIxLCA4NywgNDMsIDIyMiwgNzUsIDQzLCAyMjIsIDY0LCA0MywgCi0gICAgMjIyLCA1MywgNDMsIDIyMiwgNDIsIDQzLCAyMjIsIDMxLCA0MywgMjIyLCAyMCwgNDMsIDIyMiwgOSwgMjI1LCA3NCwgMjQzLCAKLSAgICAyNDUsIDMxLCA3MSwgMjQ5LCAxNTcsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDEwNSwgMjQ5LCAxNTcsIDIyNSwgNzQsIAotICAgIDI0MywgMjQ1LCAzMSwgNzEsIDEwNSwgMjQzLCAyMDAsIDIxOSwgNjksIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDI0OSwgCi0gICAgMTY0LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCAyMjEsIDcwLCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCAyNDQsIAotICAgIDI1NCwgNzcsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDIyNCwgMTU4LCA3NywgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCAKLSAgICA3MSwgNDIsIDY3LCAyMzMsIDQ0LCAxMjUsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDQ2LCA2NywgMjMzLCA0NCwgCi0gICAgMjUxLCA4MywgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgMTk5LCAyNDUsIDEyMCwgMzcsIDI2LCA0MiwgMjQyLCA5LCAKLSAgICAzNywgMjYsIDQ2LCAyNDIsIDksIDM3LCA1MSwgMjE3LCA0MywgNDIsIDI0MiwgOSwgMzcsIDUxLCAyMTcsIDQzLCA0NiwgCi0gICAgMjQyLCA5LCAzNywgMjMyLCAzOCwgNDIsIDI0MiwgOSwgMzcsIDIzMiwgMzgsIDQ2LCAyNDIsIDksIDM3LCAyNDksIDEzNywgCi0gICAgMjMyLCAzNywgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgMTE3LCA2MiwgMjMzLCA4MCwgMjI1LCA3NCwgMjQzLCAyNDUsIAotICAgIDMxLCA3MSwgMjQ1LCAxMTgsIDI0OCwgMTAxLCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCAyNDUsIDEwOSwgMjQ4LCAKLSAgICAxMDEsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDExNSwgMjMyLCAyNDIsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIAotICAgIDIxNCwgMTYsIDExNSwgMjMyLCAyNDIsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDQyLCAyMjYsIDEzMSwgMjI1LCA3NCwgCi0gICAgMjQzLCAyNDUsIDMxLCA3MSwgNDYsIDIyNiwgMTMxLCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0MiwgMjQ5LCA0MCwgCi0gICAgMTI1LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0NiwgMjQ5LCA0MCwgMTI1LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIAotICAgIDcxLCA0MiwgMjE2LCAyMTksIDIyMCwgMjMzLCAxMjUsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDQ2LCAyMTYsIDIxOSwgCi0gICAgMjIwLCAyMzMsIDEyNSwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgNDIsIDgzLCAyMzMsIDQ0LCAxMjUsIDIyNSwgNzQsIAotICAgIDI0MywgMjQ1LCAzMSwgNzEsIDQ2LCA4MywgMjMzLCA0NCwgMTI1LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0MiwgCi0gICAgNTEsIDI1NCwgMTksIDEyNSwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgNDYsIDUxLCAyNTQsIDE5LCAxMjUsIDIyNSwgCi0gICAgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDQyLCAyNTQsIDE5LCAxMjUsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDQ2LCAKLSAgICAyNTQsIDE5LCAxMjUsIDIyNSwgNzQsIDI0MywgMjQ1LCAzMSwgNzEsIDQyLCAyNDksIDEwMCwgMTI1LCAyMjUsIDc0LCAyNDMsIAotICAgIDI0NSwgMzEsIDcxLCA0NiwgMjQ5LCAxMDAsIDEyNSwgMjI1LCA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgNDIsIDY3LCAyNDksIAotICAgIDEwMCwgMTI1LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0NiwgNjcsIDI0OSwgMTAwLCAxMjUsIDIyMSwgNTIsIDI0NywgCi0gICAgNzQsIDY3LCAyMjEsIDUyLCAyNDcsIDc0LCAyMjUsIDc0LCAyNDMsIDI0NSwgMzEsIDcxLCA0MiwgNDEsIDEyNSwgMjI1LCAKLSAgICA3NCwgMjQzLCAyNDUsIDMxLCA3MSwgNDYsIDQxLCAxMjUsIDI0OCwgMTAwLCAyMjYsIDI0MywgMjUwLCAxMDYsIDIyNiwgCi0gICAgMjQzLCAyMTQsIDE2LCAyMjYsIDI0MywgNTEsIDIxNCwgMTYsIDIyNiwgMjQzLCAyNDgsIDEwMCwgMTE1LCAyMzIsIDI0MiwgCi0gICAgMjUwLCAxMDYsIDExNSwgMjMyLCAyNDIsIDIxNCwgMTYsIDExNSwgMjMyLCAyNDIsIDMsIDI0OSwgMTU3LCAzLCAxMDUsIAotICAgIDI0OSwgMTU3LCAzLCAyNDMsIDIwMCwgMjE5LCA2OSwgMywgMjIxLCA3MCwgMywgMjQ5LCAxNjQsIDMsIDIyNCwgMTU4LCA3NywgCi0gICAgMywgMjQ0LCAyNTQsIDc3LCAzLCAyNDUsIDExOCwgMjQ4LCAxMDEsIDMsIDQyLCAyMjYsIDEzMSwgMywgNDYsIDIyNiwgMTMxLCAKLSAgICAzLCA0MiwgMjQ5LCA0MCwgMTI1LCAzLCA0NiwgMjQ5LCA0MCwgMTI1LCAzLCA0MiwgMjE2LCAyMTksIDIyMCwgMjMzLCAxMjUsIAotICAgIDMsIDQ2LCAyMTYsIDIxOSwgMjIwLCAyMzMsIDEyNSwgMywgNTAsIDUyLCAzLCAyNTQsIDM1LCAzLCAyNTMsIDEzMiwgMywgCi0gICAgOTQsIDUyLCAzLCAyNDAsIDE1OSwgMywgMjMzLCAzOSwgNTIsIDMsIDI0MiwgMTA3LCA1MiwgMywgMjQ1LCA2MSwgNTIsIDMsIAotICAgIDIyMywgMjAzLCAyMTksIDIzMSwgMywgMjQ3LCA4NiwgNTIsIDMsIDIyNiwgNTcsIDUyLCAzLCAyNDksIDE1NiwgMjUzLCAKLSAgICAxMjIsIDEyLCAyNDQsIDEzMiwgNDgsIDE3LCAxMiwgMjE3LCAyNTEsIDIsIDI0NCwgMTMyLCA0OSwgMTIsIDI0OCwgMTI4LCAKLSAgICA0OCwgMTcsIDEyLCAyMTgsIDI4LCAyNDMsIDIyNywgMTIsIDIzNCwgMjA5LCA0OCwgMTcsIDEyLCAyNDQsIDEzNCwgNDgsIAotICAgIDE3LCAxMiwgMjQ0LCAxMzQsIDEzOCwgMTcsIDEyLCAyNDgsIDEzMCwgNDgsIDE3LCAxMiwgMjQ4LCAxMzAsIDEzOCwgMTcsIAotICAgIDEyLCAyMzQsIDIxMSwgNDgsIDE3LCAxMiwgMjM0LCAyMTEsIDEzOCwgMTcsIDEyLCAyMjEsIDE2LCA0OCwgMTcsIDEyLCAKLSAgICAyMjEsIDE2LCAxMzgsIDE3LCAxMiwgMjE4LCAyNDcsIDQ4LCAxNywgMTIsIDIxOCwgMjQ3LCAxMzgsIDE3LCAxMiwgMSwgCi0gICAgMTkyLCA0OCwgMTcsIDEyLCAxLCAxMDYsIDIsIDIzMiwgMzMsIDc4LCA0OCwgMTcsIDEyLCAxLCAxMDYsIDIsIDIzMiwgMzMsIAotICAgIDc4LCA0MCwgMTcsIDEyLCAxLCAxMDYsIDIsIDE5MiwgNzgsIDQ4LCAxNywgMTIsIDEsIDEwNiwgMiwgMTkyLCA3OCwgNDAsIAotICAgIDE3LCAxMiwgMSwgMjE0LCAxNSwgMiwgMTkyLCA3OCwgNDgsIDE3LCAxMiwgMSwgMjE0LCAxNSwgMiwgMTkyLCA3OCwgNDAsIAotICAgIDE3LCAxMiwgMSwgMTA2LCAyLCAxOTIsIDI1MSwgMjIwLCA0OCwgMTcsIDEyLCAxLCAxMDYsIDIsIDE5MiwgMjUxLCAyMjAsIAotICAgIDQwLCAxNywgMTIsIDEsIDczLCAyLCAxOTIsIDc4LCA0OCwgMTcsIDEyLCAxLCA3MywgMiwgMTkyLCA3OCwgNDAsIDE3LCAxMiwgCi0gICAgMSwgNzMsIDIsIDE5MiwgNzgsIDcwLCAxNywgMTIsIDEsIDczLCAyLCAxOTIsIDc4LCAxMzgsIDE3LCAxMiwgMSwgMTA2LCAKLSAgICA0OCwgMTcsIDEyLCAxLCAxMDYsIDQwLCAxNywgMTIsIDEsIDI1MSwgMjMxLCA0OCwgMTcsIDEyLCAxLCAyNTEsIDIzMSwgNDAsIAotICAgIDE3LCAxMiwgMSwgMjUxLCAyMzEsIDcwLCAxNywgMTIsIDEsIDI1MSwgMjMxLCAxMzgsIDE3LCAxMiwgMSwgMjE3LCAyMTYsIAotICAgIDIzMSwgMjI4LCA0OCwgMTcsIDEyLCAxLCAyMTcsIDIxNiwgMjMxLCAyMjgsIDQwLCAxNywgMTIsIDEsIDIxNywgMjE2LCA0OCwgCi0gICAgMTcsIDEyLCAxLCAyMTcsIDIxNiwgNDAsIDE3LCAxMiwgMSwgMjE3LCAyMTYsIDcwLCAxNywgMTIsIDEsIDIxNywgMjE2LCAKLSAgICAxMzgsIDE3LCAxMiwgMSwgMjE3LCAxNDYsIDQ4LCAxNywgMTIsIDEsIDIxNywgMTQ2LCA0MCwgMTcsIDEyLCAxLCAyMTcsIAotICAgIDE0NiwgNzAsIDE3LCAxMiwgMSwgMjE3LCAxNDYsIDEzOCwgMTcsIDEyLCAxLCAxNDUsIDQ4LCAxNywgMTIsIDEsIDE0NSwgCi0gICAgNDAsIDE3LCAxMiwgMSwgMTQ1LCA3MCwgMTcsIDEyLCAxLCAxNDUsIDEzOCwgMTcsIDEyLCAxLCAxMjEsIDQ4LCAxNywgMTIsIAotICAgIDEsIDEyMSwgNDAsIDE3LCAxMiwgMSwgMTIxLCA3MCwgMTcsIDEyLCAxLCAxMjEsIDEzOCwgMTcsIDEyLCAxLCAyMzQsIDEzNiwgCi0gICAgNDgsIDE3LCAxMiwgMSwgMjM0LCAxMzYsIDQwLCAxNywgMTIsIDEsIDIzNCwgMTM2LCA3MCwgMTcsIDEyLCAxLCAyMzQsIAotICAgIDEzNiwgMTM4LCAxNywgMTIsIDEsIDI0OCwgMTQxLCA0OCwgMTcsIDEyLCAxLCAyNDgsIDE0MSwgNDAsIDE3LCAxMiwgMSwgCi0gICAgMjE3LCAxNTYsIDQ4LCAxNywgMTIsIDEsIDIxNywgMTU2LCA0MCwgMTcsIDEyLCAxLCAyMjMsIDI0NiwgNDgsIDE3LCAxMiwgCi0gICAgMSwgMjIzLCAyNDYsIDQwLCAxNywgMTIsIDEsIDIxMiwgMTAyLCA0OCwgMTcsIDEyLCAxLCAyMTIsIDEwMiwgNDAsIDE3LCAKLSAgICAxMiwgMSwgMjIyLCA4NiwgNDgsIDE3LCAxMiwgMSwgMjIyLCA4NiwgNDAsIDE3LCAxMiwgMSwgMjIyLCA4NiwgNzAsIDE3LCAKLSAgICAxMiwgMSwgMjIyLCA4NiwgMTM4LCAxNywgMTIsIDEsIDIyMCwgMjQwLCA0OCwgMTcsIDEyLCAxLCAyMjAsIDI0MCwgNDAsIAotICAgIDE3LCAxMiwgMSwgMjIwLCAyNDAsIDcwLCAxNywgMTIsIDEsIDIyMCwgMjQwLCAxMzgsIDE3LCAxMiwgMSwgMjIyLCAxOTYsIAotICAgIDQ4LCAxNywgMTIsIDEsIDIyMiwgMTk2LCA0MCwgMTcsIDEyLCAxLCAyMjIsIDE5NiwgNzAsIDE3LCAxMiwgMSwgMjIyLCAKLSAgICAxOTYsIDEzOCwgMTcsIDEyLCAxLCAyNDgsIDE2MCwgNDgsIDE3LCAxMiwgMSwgMjQ4LCAxNjAsIDQwLCAxNywgMTIsIDEsIAotICAgIDI0OCwgMTYwLCA3MCwgMTcsIDEyLCAxLCAyNDgsIDE2MCwgMTM4LCAxNywgMTIsIDEsIDIxOCwgMzAsIDQ4LCAxNywgMTIsIAotICAgIDEsIDIxOCwgMzAsIDQwLCAxNywgMTIsIDEsIDIxOCwgMzAsIDcwLCAxNywgMTIsIDEsIDIxOCwgMzAsIDEzOCwgMTcsIDEyLCAKLSAgICAxLCAyMTIsIDEwNSwgNDgsIDE3LCAxMiwgMSwgMjEyLCAxMDUsIDQwLCAxNywgMTIsIDEsIDIxMiwgMTA1LCA3MCwgMTcsIAotICAgIDEyLCAxLCAyMTIsIDEwNSwgMTM4LCAxNywgMTIsIDEsIDI1NCwgMTA0LCA0OCwgMTcsIDEyLCAxLCAyNTQsIDEwNCwgNDAsIAotICAgIDE3LCAxMiwgMSwgMjU0LCAxMDQsIDcwLCAxNywgMTIsIDEsIDI1NCwgMTA0LCAxMzgsIDE3LCAxMiwgMSwgMjQyLCAyMjEsIAotICAgIDQ4LCAxNywgMTIsIDEsIDI0MiwgMjIxLCA0MCwgMTcsIDEyLCAxLCAyNDIsIDIyMSwgNzAsIDE3LCAxMiwgMSwgMjQyLCAKLSAgICAyMjEsIDEzOCwgMTcsIDEyLCAxLCAyNDQsIDExMiwgNDgsIDE3LCAxMiwgMSwgMjQ0LCAxMTIsIDQwLCAxNywgMTIsIDEsIAotICAgIDI0NCwgMTEyLCA3MCwgMTcsIDEyLCAxLCAyNDQsIDExMiwgMTM4LCAxNywgMTIsIDEsIDIyNCwgMjI2LCA0OCwgMTcsIDEyLCAKLSAgICAxLCAyMjQsIDIyNiwgNDAsIDE3LCAxMiwgMSwgMjI0LCAyMjYsIDcwLCAxNywgMTIsIDEsIDIyNCwgMjI2LCAxMzgsIDE3LCAKLSAgICAxMiwgMSwgMjM0LCAyNTUsIDQ4LCAxNywgMTIsIDEsIDIzNCwgMjU1LCA0MCwgMTcsIDEyLCAxLCAyMzQsIDI1NSwgNzAsIAotICAgIDE3LCAxMiwgMSwgMjM0LCAyNTUsIDEzOCwgMTcsIDEyLCAxLCAyMzMsIDEyNywgNDgsIDE3LCAxMiwgMSwgMjMzLCAxMjcsIAotICAgIDQwLCAxNywgMTIsIDEsIDIzMywgMTI3LCA3MCwgMTcsIDEyLCAxLCAyMzMsIDEyNywgMTM4LCAxNywgMTIsIDEsIDYzLCA0OCwgCi0gICAgMTcsIDEyLCAxLCA2MywgNDAsIDE3LCAxMiwgMSwgNjMsIDcwLCAxNywgMTIsIDEsIDYzLCAxMzgsIDE3LCAxMiwgMSwgMjI4LCAKLSAgICAxNzQsIDQ4LCAxNywgMTIsIDEsIDIyOCwgMTc0LCA0MCwgMTcsIDEyLCAxLCAyMjgsIDE3NCwgNzAsIDE3LCAxMiwgMSwgCi0gICAgMjI4LCAxNzQsIDEzOCwgMTcsIDEyLCAxLCAyNDEsIDIwMywgNDgsIDE3LCAxMiwgMSwgMjQxLCAyMDMsIDQwLCAxNywgMTIsIAotICAgIDEsIDI0MSwgMjAzLCA3MCwgMTcsIDEyLCAxLCAyNDEsIDIwMywgMTM4LCAxNywgMTIsIDEsIDIxNCwgMTUsIDQ4LCAxNywgCi0gICAgMTIsIDEsIDIxNCwgMTUsIDQwLCAxNywgMTIsIDEsIDEwNiwgMjEwLCA0OCwgMTcsIDEyLCAxLCAxMDYsIDIxMCwgNDAsIDE3LCAKLSAgICAxMiwgMSwgNzMsIDQ4LCAxNywgMTIsIDEsIDczLCA0MCwgMTcsIDEyLCAxLCA3MywgNzAsIDE3LCAxMiwgMSwgNzMsIDEzOCwgCi0gICAgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDEwNiwgMiwgMjMyLCAzMywgNzgsIDQ4LCAxNywgMTIsIDI2LCAyMzMsIDEyNywgCi0gICAgMiwgMTA2LCAyLCAyMzIsIDMzLCA3OCwgNDAsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAxMDYsIDIsIDE5MiwgNzgsIDQ4LCAKLSAgICAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTA2LCAyLCAxOTIsIDc4LCA0MCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIAotICAgIDEwNiwgMiwgMTkyLCAyNTEsIDIyMCwgNDgsIDE3LCAxMiwgMjYsIDIzMywgMTI3LCAyLCAxMDYsIDIsIDE5MiwgMjUxLCAKLSAgICAyMjAsIDQwLCAxNywgMTIsIDI2LCAyMzMsIDEyNywgMiwgMTA2LCA0OCwgMTcsIDEyLCAyNiwgMjMzLCAxMjcsIDIsIDEwNiwgCi0gICAgNDAsIDE3LCAyMTIsIDgwLCAyMTMsIDIzMCwgMjI4LCAxODQsIDIxOSwgMjA2LCAxMjAsIDI0NCwgMjU0LCA3NywgMTIwLCAKLSAgICAyMjQsIDE0MywgNzcsIDEyMCwgNTAsIDUyLCAxMjAsIDI0NywgODYsIDUyLCAxMjAsIDIyNiwgNTcsIDUyLCAxMjAsIDI1NCwgCi0gICAgMzUsIDEyMCwgMjUzLCAyMjYsIDEyMCwgNDIsIDIyNiwgMTMxLCAxMjAsIDQ2LCAyMjYsIDEzMSwgMTIwLCAyNTMsIDEzMiwgCi0gICAgMTIwLCA5NCwgNTIsIDEyMCwgMjQ5LCAxNTcsIDEyMCwgMjQwLCAxNTksIDEyMCwgMjQzLCAyMDAsIDIxOSwgNjksIDEyMCwgCi0gICAgMjE5LCAyMzEsIDEyMCwgMjEsIDIxMiwgNzksIDEyMCwgMjEsIDExNiwgMTIwLCAyMSwgMTA5LCAxMjAsIDIxLCAxNjYsIAotICAgIDEyMCwgMjEsIDE2MywgMTIwLCAyMSwgMTgwLCAxMjAsIDIxLCAxODksIDEyMCwgMjEsIDE5OCwgMTIwLCAyMSwgMTk1LCAKLSAgICAxMjAsIDIxLCAyMDAsIDEyMCwgMjQ5LCAxNjQsIDEyMCwgMjIxLCA3MCwgMTIwLCAyMzMsIDM5LCA1MiwgMTIwLCAyNDUsIAotICAgIDYxLCA1MiwgMTIwLCAyNDIsIDEwNywgNTIsIDEyMCwgMjI0LCAxNTgsIDc3LCAxMjAsIDI0OSwgMTU2LCAyNTMsIDEyMiwgCi0gICAgMTIwLCA3LCA2LCAxLCA2MSwgMTIwLCA3LCA2LCAxLCAyNTMsIDc0LCAxMjAsIDcsIDYsIDEsIDI1MCwgMjUyLCAxMjAsIDcsIAotICAgIDYsIDEsIDI0OSwgMywgMTIwLCA3LCA2LCAxLCA3NCwgMTIwLCA3LCA2LCAxLCAyNDQsIDIzMCwgMTIwLCA3LCA2LCAxLCAKLSAgICAyNDMsIDE3NywgMTIwLCA3LCA2LCAxLCAyNDIsIDQxLCAxMjAsIDcsIDYsIDEsIDcyLCAxMjAsIDcsIDYsIDEsIDIzNSwgCi0gICAgMTQyLCAxMjAsIDcsIDYsIDEsIDIzNSwgMjcsIDEyMCwgNywgNiwgMSwgMTUwLCAxMjAsIDcsIDYsIDEsIDE4MywgMTIwLCA3LCAKLSAgICA2LCAxLCAyMDQsIDEyMCwgNywgNiwgMSwgNzUsIDEyMCwgNywgNiwgMSwgMjI2LCAyMjksIDEyMCwgNywgNiwgMSwgMjI0LCAKLSAgICAyNDAsIDEyMCwgNywgNiwgMSwgMTQ5LCAxMjAsIDcsIDYsIDEsIDE5NywgMTIwLCA3LCA2LCAxLCAyMTgsIDk5LCAxMjAsIDcsIAotICAgIDYsIDEsIDY5LCAxMjAsIDcsIDYsIDEsIDIxNSwgNzksIDEyMCwgNywgNiwgMSwgMjE0LCA4MiwgMTIwLCA3LCA2LCAxLCAKLSAgICAyMTMsIDE2NiwgMTIwLCA3LCA2LCAxLCAyMTMsIDEwNSwgMTIwLCA3LCA2LCAxLCAyMTIsIDE1MiwgMTIwLCA0MiwgNDEsIAotICAgIDEyNSwgMTIwLCAyMjMsIDIwMywgMjE5LCAyMzEsIDEyMCwgNDYsIDQxLCAxMjUsIDEyMCwgMjQ5LCAyMjQsIDI1NCwgMTc0LCAKLSAgICAxMjAsIDExNSwgMjMyLCAyNDIsIDEyMCwgMjQyLCAxMTQsIDI1NCwgMTc0LCAxMjAsIDcsIDMsIDEsIDYxLCAxMjAsIDcsIDMsIAotICAgIDEsIDI1MywgNzQsIDEyMCwgNywgMywgMSwgMjUwLCAyNTIsIDEyMCwgNywgMywgMSwgMjQ5LCAzLCAxMjAsIDcsIDMsIDEsIAotICAgIDc0LCAxMjAsIDcsIDMsIDEsIDI0NCwgMjMwLCAxMjAsIDcsIDMsIDEsIDI0MywgMTc3LCAxMjAsIDcsIDMsIDEsIDI0MiwgCi0gICAgNDEsIDEyMCwgNywgMywgMSwgNzIsIDEyMCwgNywgMywgMSwgMjM1LCAxNDIsIDEyMCwgNywgMywgMSwgMjM1LCAyNywgMTIwLCAKLSAgICA3LCAzLCAxLCAxNTAsIDEyMCwgNywgMywgMSwgMTgzLCAxMjAsIDcsIDMsIDEsIDIwNCwgMTIwLCA3LCAzLCAxLCA3NSwgCi0gICAgMTIwLCA3LCAzLCAxLCAyMjYsIDIyOSwgMTIwLCA3LCAzLCAxLCAyMjQsIDI0MCwgMTIwLCA3LCAzLCAxLCAxNDksIDEyMCwgCi0gICAgNywgMywgMSwgMTk3LCAxMjAsIDcsIDMsIDEsIDIxOCwgOTksIDEyMCwgNywgMywgMSwgNjksIDEyMCwgNywgMywgMSwgMjE1LCAKLSAgICA3OSwgMTIwLCA3LCAzLCAxLCAyMTQsIDgyLCAxMjAsIDcsIDMsIDEsIDIxMywgMTY2LCAxMjAsIDcsIDMsIDEsIDIxMywgCi0gICAgMTA1LCAxMjAsIDcsIDMsIDEsIDIxMiwgMTUyLCAxMjAsIDQyLCAyNDksIDQwLCAxMjUsIDEyMCwgNzEsIDIzMiwgMjQyLCAKLSAgICAxMjAsIDQ2LCAyNDksIDQwLCAxMjUsIDEyMCwgMjE3LCA0MiwgMTIwLCA0MiwgNjcsIDIyNiwgMTMxLCAxMjAsIDQ2LCA2NywgCi0gICAgMjI2LCAxMzEsIDk4LCAxMDUsIDI0MywgMjAwLCAyMTksIDY5LCA5OCwgNDIsIDI0OSwgMTAwLCAxMjUsIDk4LCA0NiwgMjQ5LCAKLSAgICAxMDAsIDEyNSwgOTgsIDEwNSwgMjQ5LCAxNTcsIDk4LCA1NiwgMjMxLCAzNywgMjQ3LCA3NCwgOTgsIDU2LCAxLCAyMTMsIAotICAgIDIxNCwgOTgsIDU2LCAxLCAzLCA2MSwgOTgsIDU2LCAxLCAzLCA3MiwgOTgsIDU2LCAxLCAzLCA2OSwgOTgsIDU2LCAxLCAzLCAKLSAgICA3NCwgOTgsIDU2LCAxLCAzLCA3NSwgOTgsIDU2LCAxLCAzLCAxODYsIDk4LCA1NiwgMSwgMywgMjEyLCAyMDMsIDk4LCA1NiwgCi0gICAgMSwgMywgMjEyLCAyMzUsIDk4LCA1NiwgMSwgMywgMjE2LCA4MiwgOTgsIDIzNCwgMjA2LCAyMjUsIDU3LCAyMTksIDIxOCwgCi0gICAgNzcsIDk4LCA1NiwgMSwgNjEsIDk4LCA1NiwgMSwgNzIsIDk4LCA1NiwgMSwgNjksIDk4LCA1NiwgMSwgNzQsIDk4LCA1NiwgCi0gICAgMSwgNzUsIDk4LCA1NiwgMSwgMTgxLCA5OCwgNTYsIDEsIDIzNCwgMTAxLCA5OCwgNTYsIDEsIDIzMywgMjM4LCA5OCwgNTYsIAotICAgIDEsIDIzNCwgMTg4LCA5OCwgNTYsIDEsIDIzNCwgMzcsIDk4LCA1NiwgMSwgMjIyLCAyMDIsIDk4LCA1NiwgMSwgMjIwLCAKLSAgICAxMTcsIDk4LCA1NiwgMSwgMjE5LCAyNywgOTgsIDU2LCAxLCAyMjIsIDEwMCwgOTgsIDU2LCAxLCAyMTksIDI0MiwgOTgsIAotICAgIDU2LCAxLCAyMTgsIDUyLCA5OCwgNTYsIDEsIDIxNywgNzEsIDk4LCA1NiwgMSwgMjE2LCA4MiwgOTgsIDU2LCAxLCAyMTcsIAotICAgIDIyOSwgOTgsIDU2LCAxLCAxMDgsIDk4LCA1NiwgMSwgMjA1LCA5OCwgNTYsIDEsIDIyOSwgNjQsIDk4LCA1NiwgMSwgMjI4LCAKLSAgICA5MiwgOTgsIDU2LCAxLCAyMjksIDE4NywgOTgsIDU2LCAxLCAyMjgsIDE4NSwgOTgsIDU2LCAxLCAxNTksIDk4LCA1NiwgMSwgCi0gICAgMjQxLCAxNjUsIDk4LCA1NiwgMSwgMjQwLCAyMTIsIDk4LCA1NiwgMSwgMjQxLCAyMjIsIDk4LCA1NiwgMSwgMjQxLCA1NCwgCi0gICAgOTgsIDU2LCAxLCAxODgsIDk4LCA1NiwgMSwgMjMxLCA0MiwgOTgsIDU2LCAxLCAyMzAsIDE3MiwgOTgsIDU2LCAxLCAyMzEsIAotICAgIDE1NiwgOTgsIDU2LCAxLCAyMzAsIDIzMSwgOTgsIDU2LCAxLCAxODYsIDk4LCA1NiwgMSwgMjEyLCAyMDMsIDk4LCA1NiwgMSwgCi0gICAgMjEyLCAyMzUsIDk4LCA1NiwgMSwgMjAzLCA5OCwgNTYsIDEsIDIyMywgMTg4LCA5OCwgNTYsIDEsIDIyMywgNTEsIDk4LCAKLSAgICA1NiwgMSwgMjI0LCAyMSwgOTgsIDU2LCAxLCAyMjMsIDExMiwgOTgsIDU2LCAxLCAyMTQsIDQ5LCA5OCwgNTYsIDEsIDIwNCwgCi0gICAgOTgsIDU2LCAyMTQsIDExNiwgMjE5LCAyMTgsIDc3LCA5OCwgNTYsIDIyMSwgNzUsIDIxOSwgMjE4LCA3NywgOTgsIDIzLCAKLSAgICAyNDQsIDcyLCA5OCwgMjMsIDEsIDIzNCwgNjcsIDk4LCAyMywgMSwgMjE5LCAxNTAsIDk4LCAyMywgMSwgMjM0LCA2MCwgOTgsIAotICAgIDIzLCAxLCAyMjksIDU3LCA5OCwgMjMsIDEsIDIyOSwgNTUsIDk4LCAyMywgMSwgMjI5LCA1NCwgOTgsIDIzLCAxLCAyMTcsIAotICAgIDU1LCA5OCwgMjMsIDEsIDIxOSwgMTM5LCA5OCwgMjMsIDEsIDIyMywgMTc5LCA5OCwgMjMsIDEsIDIyMywgMTc0LCA5OCwgCi0gICAgMjMsIDEsIDIyMywgMTcxLCA5OCwgMjMsIDEsIDIyMywgMTY0LCA5OCwgMjMsIDEsIDIyMywgMTU5LCA5OCwgMjMsIDEsIAotICAgIDIyMywgMTU0LCA5OCwgMjMsIDEsIDIyMywgMTY1LCA5OCwgMjMsIDEsIDIyMywgMTc3LCA5OCwgMjMsIDEsIDIzMSwgMzAsIAotICAgIDk4LCAyMywgMSwgMjI1LCAyMjcsIDk4LCAyMywgMSwgMjE5LCAxNDcsIDk4LCAyMywgMSwgMjI1LCAyMTYsIDk4LCAyMywgMSwgCi0gICAgMjIwLCA3NiwgOTgsIDIzLCAxLCAyMTksIDE0NCwgOTgsIDIzLCAxLCAyMzYsIDUxLCA5OCwgMjMsIDEsIDI0OSwgMjM5LCAKLSAgICA5OCwgMjMsIDEsIDIxOSwgMTU0LCA5OCwgMjMsIDEsIDI1MCwgNDMsIDk4LCAyMywgMSwgMjM0LCAxMTYsIDk4LCAyMywgMSwgCi0gICAgMjE3LCAxMjYsIDk4LCAyMywgMSwgMjI2LCA3LCA5OCwgMjMsIDEsIDI0MSwgMTU4LCA5OCwgMjMsIDEsIDYxLCA5OCwgMjMsIAotICAgIDEsIDI1NCwgMTQ4LCA5OCwgMjMsIDEsIDE4NiwgOTgsIDIzLCAxLCAyMTMsIDgwLCA5OCwgMjMsIDEsIDI0NSwgNzYsIDk4LCAKLSAgICAyMywgMSwgNzQsIDk4LCAyMywgMSwgMjEzLCAyNywgOTgsIDIzLCAxLCAyMTMsIDM4LCA5OCwgMjMsIDEsIDc1LCA5OCwgMjMsIAotICAgIDEsIDIxNCwgNDksIDk4LCAyMywgMSwgMjE0LCA0NiwgOTgsIDIzLCAxLCAyMjcsIDk5LCA5OCwgMjMsIDEsIDIxMiwgMjM1LCAKLSAgICA5OCwgMjMsIDEsIDY5LCA5OCwgMjMsIDEsIDIxMywgMjUyLCA5OCwgMjMsIDEsIDIxNCwgNiwgOTgsIDIzLCAxLCAyMTMsIAotICAgIDIzNSwgOTgsIDIzLCAxLCAyMTIsIDIwMywgOTgsIDIzLCAxLCAyNDUsIDIyLCA5OCwgMjMsIDEsIDIxMiwgMjU1LCA5OCwgCi0gICAgMjMsIDEsIDcyLCAxMjAsIDI1MCwgMTEwLCA1MiwgMTIwLCAyMjUsIDEwOCwgNTIsIDEyMCwgMjI4LCAxNjMsIDUyLCAxMjAsIAotICAgIDIzMiwgMzcsIDEyMCwgMjUxLCA2MywgMTM0LCAxMjAsIDIxMywgMzEsIDUyLCAxMjAsIDIxMywgMjA0LCA1MiwgOTgsIDI0MywgCi0gICAgMjQzLCAxNzcsIDIxNCwgMjE2LCA5OCwgMTMyLCA2OCwgOTgsIDIxNSwgMTI0LCA2OCwgOTgsIDk1LCA2OCwgOTgsIDI0NiwgCi0gICAgNTgsIDY4LCA5OCwgODMsIDIxOSwgMTY2LCA5OCwgNjcsIDI0OSwgMjI4LCAyMzUsIDIwMSwgMjU0LCAxMCwgMjU0LCAyOSwgCi0gICAgMjM1LCAyMDEsIDI1NCwgMTAsIDIyMSwgNTcsIDIzNSwgMjAxLCAyNTQsIDEwLCAyMTcsIDE4OSwgMjI3LCAxMTMsIDIyMywgCi0gICAgMjI0LCAyNTAsIDc4LCAyMjMsIDIyNCwgMjUwLCA3OCwgNTgsIDU0LCA0LCAyNTMsIDU4LCA2MSwgNTgsIDU0LCA0LCAyNTMsIAotICAgIDI3LCA3NCwgNTgsIDU0LCA0LCAyNTMsIDM2LCA3MiwgNTgsIDU0LCA0LCAyNTMsIDQsIDc1LCA1OCwgNTQsIDQsIDI1MywgCi0gICAgNTQsIDY5LCA1OCwgNTQsIDQsIDI1MywgNzMsIDI0OCwgMTY0LCA1OCwgNTQsIDQsIDI1MywgMjAsIDI0OCwgNDEsIDU4LCAKLSAgICA1NCwgNCwgMjUzLCA2MCwgMjQ3LCAyMTEsIDU4LCA1NCwgNCwgMjUzLCA1MCwgMjQ3LCA5OSwgNTgsIDU0LCA0LCAyNTMsIAotICAgIDE0LCAyNDYsIDMzLCA1OCwgNTQsIDQsIDI1MywgOCwgMjM1LCAxMzksIDU4LCA1NCwgNCwgMjUzLCAxOSwgMjM1LCAxMjcsIAotICAgIDU4LCA1NCwgNCwgMjUzLCAyOSwgMjM1LCA3MSwgNTgsIDU0LCA0LCAyNTMsIDAsIDIzNSwgNTQsIDU4LCA1NCwgNCwgMjUyLCAKLSAgICAyNDQsIDE4MSwgNTgsIDU0LCA0LCAyNTMsIDIxLCAyMzQsIDE4OCwgNTgsIDU0LCA0LCAyNTIsIDI1NCwgMjM0LCAxMDEsIAotICAgIDU4LCA1NCwgNCwgMjUyLCAyNTEsIDIzNCwgMzcsIDU4LCA1NCwgNCwgMjUyLCAyNDAsIDIzMywgMjM4LCA1OCwgNTQsIDQsIAotICAgIDI1MiwgMjQxLCAxODgsIDU4LCA1NCwgNCwgMjUzLCA1MSwgMjMxLCAxNTYsIDU4LCA1NCwgNCwgMjUyLCAyNDgsIDIzMSwgCi0gICAgNDIsIDU4LCA1NCwgNCwgMjUzLCA0OSwgMjMwLCAyMzEsIDU4LCA1NCwgNCwgMjUzLCA0MSwgMjMwLCAxNzIsIDU4LCA1NCwgCi0gICAgNCwgMjUzLCA2MiwgMjA1LCA1OCwgNTQsIDQsIDI1MywgNDAsIDIyOSwgMTg3LCA1OCwgNTQsIDQsIDI1MywgMzQsIDIyOSwgCi0gICAgNjQsIDU4LCA1NCwgNCwgMjUzLCAxMywgMjI4LCAxODUsIDU4LCA1NCwgNCwgMjUzLCAxMCwgMjI4LCA5MiwgNTgsIDU0LCA0LCAKLSAgICAyNTMsIDY5LCAxOTMsIDU4LCA1NCwgNCwgMjUyLCAyNDksIDIyNiwgOTYsIDU4LCA1NCwgNCwgMjUzLCAyNiwgMjI1LCAyNDAsIAotICAgIDU4LCA1NCwgNCwgMjUzLCA1MywgMjI1LCAxNTAsIDU4LCA1NCwgNCwgMjUzLCAxNSwgMjI1LCAzNSwgNTgsIDU0LCA0LCAKLSAgICAyNTMsIDQ4LCAyMjQsIDIzMiwgNTgsIDU0LCA0LCAyNTIsIDI0MywgMjI0LCAyMTMsIDU4LCA1NCwgNCwgMjUzLCA0MywgCi0gICAgMjI0LCAxOTgsIDU4LCA1NCwgNCwgMjUzLCAzMiwgMjI0LCAxODcsIDU4LCA1NCwgNCwgMjUzLCA1LCAyMDMsIDU4LCA1NCwgCi0gICAgNCwgMjUzLCAzNywgMjI0LCAyMSwgNTgsIDU0LCA0LCAyNTMsIDEyLCAyMjMsIDE4OCwgNTgsIDU0LCA0LCAyNTMsIDcxLCAKLSAgICAyMjMsIDExMiwgNTgsIDU0LCA0LCAyNTMsIDM4LCAyMjMsIDUxLCA1OCwgNTQsIDQsIDI1MywgMzMsIDIyMiwgMjAyLCA1OCwgCi0gICAgNTQsIDQsIDI1MywgNTYsIDIyMiwgMTAwLCA1OCwgNTQsIDQsIDI1MywgMjQsIDIyMCwgMTE3LCA1OCwgNTQsIDQsIDI1MywgCi0gICAgNTIsIDIxOSwgMjQyLCA1OCwgNTQsIDQsIDI1MywgNywgMjE5LCAyNywgNTgsIDU0LCA0LCAyNTMsIDYsIDIxOCwgNTIsIDU4LCAKLSAgICA1NCwgNCwgMjUzLCA2NywgMjE3LCAyMjksIDU4LCA1NCwgNCwgMjUzLCAyOCwgMjE3LCA3MSwgNTgsIDU0LCA0LCAyNTMsIAotICAgIDY1LCAxMDgsIDU4LCA1NCwgNCwgMjUyLCAyNTIsIDIxNiwgODIsIDU4LCA1NCwgNCwgMjUzLCAxMSwgMjE0LCA0OSwgNTgsIAotICAgIDU0LCA0LCAyNTIsIDI0NiwgMjE0LCA2LCA1OCwgNTQsIDQsIDI1MywgMjUsIDIxMywgMjM1LCA1OCwgNTQsIDQsIDI1MywgCi0gICAgMjMsIDIxMywgMjE0LCA1OCwgNTQsIDQsIDI1MywgNDcsIDIxMiwgMTA5LCA1OCwgNTQsIDQsIDI1MiwgMjQ3LCAyMTIsIDg3LCAKLSAgICA1OCwgNTQsIDQsIDI1MywgNDQsIDIxMiwgMTYsIDU4LCA1NCwgNCwgMjUzLCAzOSwgMjU0LCAyMzQsIDU4LCA1NCwgNCwgCi0gICAgMjUzLCAyMiwgMjU0LCAyMzMsIDU4LCA1NCwgNCwgMjUyLCAyMzcsIDI1MywgMTA4LCA1OCwgNTQsIDQsIDI1MiwgMjUwLCAKLSAgICAyNDYsIDEsIDU4LCA1NCwgNCwgMjUyLCAyMzMsIDI0NiwgMCwgNTgsIDU0LCA0LCAyNTMsIDE3LCAyMjgsIDMxLCA1OCwgNTQsIAotICAgIDQsIDI1MywgMzUsIDIyNSwgMzQsIDU4LCA1NCwgNCwgMjUzLCAzLCAyMjUsIDM3LCA1OCwgNTQsIDQsIDI1MiwgMjQ1LCAKLSAgICAyMjQsIDc2LCA1OCwgNTQsIDQsIDI1MywgMzEsIDIyNCwgNzUsIDU4LCA1NCwgNCwgMjUyLCAyNTMsIDIyMywgMTExLCA1OCwgCi0gICAgNTQsIDQsIDI1MiwgMjU1LCAyMTgsIDUwLCA1OCwgNTQsIDQsIDI1MiwgMjM1LCAyMTYsIDQzLCA1OCwgNTQsIDQsIDI1MiwgCi0gICAgMjMyLCAxMDksIDU4LCA1NCwgMTYsIDI1MywgNDYsIDU4LCA1NCwgMTYsIDI1MywgNDUsIDU4LCA1NCwgMTYsIDI1MywgNDIsIAotICAgIDU4LCA1NCwgMTYsIDI1MywgMzAsIDU4LCA1NCwgMTYsIDI1MywgMTgsIDU4LCA1NCwgMTYsIDI1MywgMTYsIDU4LCA1NCwgCi0gICAgMTYsIDI1MywgOSwgNTgsIDU0LCAxNiwgMjUzLCAyLCA1OCwgNTQsIDE2LCAyNTMsIDEsIDU4LCA1NCwgMTYsIDI1MiwgMjQyLCAKLSAgICA1OCwgNTQsIDE2LCAyNTIsIDIzOSwgNTgsIDU0LCAxNiwgMjUyLCAyMzgsIDU4LCA1NCwgMTYsIDI1MiwgMjM2LCA1OCwgNTQsIAotICAgIDE2LCAyNTIsIDIzNCwgNTgsIDU0LCAxMDIsIDI1MiwgMjMxLCAyMzEsIDI0OCwgNTgsIDU0LCAxMDIsIDI1MiwgMjMwLCAKLSAgICAyMTMsIDIwOCwgNTgsIDU0LCAxMDIsIDI1MiwgMjI5LCAyNDgsIDI1LCA1OCwgNTQsIDEwMiwgMjUyLCAyMjgsIDI0NSwgNTgsIAotICAgIDU4LCA1NCwgMTAyLCAyNTIsIDIyNywgMjMxLCAyMjIsIDU4LCA1NCwgMTAyLCAyNTIsIDIyNiwgMjE5LCAxMDEsIDU4LCA1NCwgCi0gICAgMTAyLCAyNTIsIDIyNSwgMjQ1LCA0LCA1OCwgNTQsIDEwMiwgMjUyLCAyMjQsIDIyNCwgNDUsIDU4LCA1NCwgMTAyLCAyNTIsIAotICAgIDIyMywgMjIwLCAyNDIsIDU4LCA1NCwgMTAyLCAyNTIsIDIyMiwgMjQxLCAyMjEsIDU4LCA1NCwgMTAyLCAyNTIsIDIyMSwgCi0gICAgMjE5LCAyMTIsIDU4LCA1NCwgMTAyLCAyNTIsIDIyMCwgMjUxLCAxMjYsIDU4LCA1NCwgMTAyLCAyNTIsIDIxOSwgMjQ5LCAKLSAgICA4NCwgNTgsIDU0LCAxMDIsIDI1MiwgMjE4LCAyNTEsIDQ0LCA1OCwgNTQsIDEwMiwgMjUyLCAyMTcsIDIxMywgMjQzLCA1OCwgCi0gICAgNTQsIDEwMiwgMjUyLCAyMTYsIDI1MiwgNTYsIDU4LCA1NCwgMTAyLCAyNTIsIDIxNSwgMjI3LCA3MSwgNTgsIDU0LCAxMDIsIAotICAgIDI1MiwgMjE0LCAyMTksIDE4NiwgNTgsIDU0LCAxMDIsIDI1MiwgMjEzLCAyNDksIDExLCA1OCwgNTQsIDIzMCwgMjEyLCAKLSAgICAyNTIsIDIxMiwgMjM0LCAyMjksIDU4LCA1NCwgMjMwLCAyMTIsIDI1MiwgMjExLCAyMzQsIDIzNywgNTgsIDU0LCAxMDIsIAotICAgIDI1MiwgMjEwLCAyMjcsIDg0LCA1OCwgNTQsIDEwMiwgMjUyLCAyMDksIDIxMywgMjIxLCA1OCwgNTQsIDEwMiwgMjUyLCAKLSAgICAyMDgsIDU4LCA1NCwgMjMwLCAyMTIsIDI1MiwgMjA3LCAyNTMsIDE4OCwgNTgsIDU0LCAyMzAsIDIxMiwgMjUyLCAyMDYsIAotICAgIDIzMSwgMTE2LCA1OCwgNTQsIDEwMiwgMjUyLCAyMDUsIDI1MSwgNjIsIDU4LCA1NCwgMTAyLCAyNTIsIDIwNCwgMjQyLCAKLSAgICAxNDIsIDU4LCA1NCwgMTAyLCAyNTIsIDIwMywgNTgsIDU0LCAxMDIsIDI1MiwgMjAyLCAyMTMsIDE5OSwgNTgsIDU0LCAxMDIsIAotICAgIDI1MiwgMjAxLCA1OCwgNTQsIDEwMiwgMjUyLCAyMDAsIDU4LCA1NCwgMTAyLCAyNTIsIDE5OSwgMjQwLCAyMzUsIDU4LCA1NCwgCi0gICAgMTAyLCAyNTIsIDE5OCwgNTgsIDU0LCAxMDIsIDI1MiwgMTk3LCA1OCwgNTQsIDEwMiwgMjUyLCAxOTYsIDU4LCA1NCwgMjMwLCAKLSAgICAyMTIsIDI1MiwgMTk0LCAyMTYsIDU2LCA1OCwgNTQsIDEwMiwgMjUyLCAxOTMsIDU4LCA1NCwgMTAyLCAyNTIsIDE5MiwgNTgsIAotICAgIDU0LCAxMDIsIDI1MiwgMTkxLCAyNDksIDE4NywgNTgsIDU0LCAxMDIsIDI1MiwgMTkwLCA1OCwgNTQsIDEwMiwgMjUyLCAKLSAgICAxODksIDU4LCA1NCwgMTAyLCAyNTIsIDE4OCwgMjQzLCA2OSwgNTgsIDU0LCAxMDIsIDI1MiwgMTg3LCAyNTMsIDE3NSwgNTgsIAotICAgIDU0LCAxMDIsIDI1MiwgMTg2LCA1OCwgNTQsIDEwMiwgMjUyLCAxODUsIDU4LCA1NCwgMTAyLCAyNTIsIDE4NCwgNTgsIDU0LCAKLSAgICAxMDIsIDI1MiwgMTgzLCA1OCwgNTQsIDEwMiwgMjUyLCAxODIsIDU4LCA1NCwgMTAyLCAyNTIsIDE4MSwgNTgsIDU0LCAxMDIsIAotICAgIDI1MiwgMTgwLCA1OCwgNTQsIDEwMiwgMjUyLCAxNzksIDU4LCA1NCwgMTAyLCAyNTIsIDE3OCwgNTgsIDU0LCAxMDIsIDI1MiwgCi0gICAgMTc3LCAyMzAsIDIwNCwgNTgsIDU0LCAxMDIsIDI1MiwgMTc2LCA1OCwgNTQsIDEwMiwgMjUyLCAxNzUsIDIxNiwgMTkzLCAKLSAgICA1OCwgNTQsIDEwMiwgMjUyLCAxNzQsIDU4LCA1NCwgMTAyLCAyNTIsIDE3MywgNTgsIDU0LCAxMDIsIDI1MiwgMTcyLCA1OCwgCi0gICAgNTQsIDEwMiwgMjUyLCAxNzEsIDU4LCA1NCwgMTAyLCAyNTIsIDE3MCwgNTgsIDU0LCAxMDIsIDI1MiwgMTY5LCA1OCwgNTQsIAotICAgIDEwMiwgMjUyLCAxNjgsIDU4LCA1NCwgMTAyLCAyNTIsIDE2NywgNTgsIDU0LCAxMDIsIDI1MiwgMTY2LCA1OCwgNTQsIDEwMiwgCi0gICAgMjUyLCAxNjUsIDU4LCA1NCwgMTAyLCAyNTIsIDE2NCwgNTgsIDU0LCAxMDIsIDI1MiwgMTYzLCAyNDEsIDE5NSwgNTgsIDU0LCAKLSAgICAxMDIsIDI1MiwgMTQyLCAyNDMsIDI1MywgNTgsIDU0LCAxMDIsIDI1MiwgMTM5LCAyNTIsIDM2LCA1OCwgNTQsIDEwMiwgCi0gICAgMjUyLCAxMzQsIDIxOSwgMTkzLCA1OCwgNTQsIDEwMiwgMjUyLCAxMzMsIDY4LCA1OCwgNTQsIDEwMiwgMjUyLCAxMzIsIDU4LCAKLSAgICA1NCwgMTAyLCAyNTIsIDEzMSwgMjE4LCAxODEsIDU4LCA1NCwgMTAyLCAyNTIsIDEzMCwgNTgsIDU0LCAxMDIsIDI1MiwgCi0gICAgMTI5LCA1OCwgNTQsIDEwMiwgMjUyLCAxMjgsIDIxMywgMjM5LCAyNTAsIDc1LCA1OCwgNTQsIDEwMiwgMjUyLCAxMjcsIAotICAgIDI1MCwgNzUsIDU4LCA1NCwgMTAyLCAyNTIsIDEyNiwgMjUwLCA3NiwgMjQzLCAyMjUsIDU4LCA1NCwgMTAyLCAyNTIsIDEyNSwgCi0gICAgMjEzLCAyNDEsIDU4LCA1NCwgMTAyLCAyNTIsIDEyNCwgNTgsIDU0LCAxMDIsIDI1MiwgMTIzLCA1OCwgNTQsIDIzMCwgMjEyLCAKLSAgICAyNTIsIDEyMiwgMjQ3LCAxNTAsIDU4LCA1NCwgMTAyLCAyNTIsIDEyMSwgNTgsIDU0LCAxMDIsIDI1MiwgMTIwLCA1OCwgNTQsIAotICAgIDEwMiwgMjUyLCAxMTgsIDU4LCA1NCwgMTAyLCAyNTIsIDExNywgNTgsIDU0LCAxMDIsIDI1MiwgMTE2LCA1OCwgNTQsIDEwMiwgCi0gICAgMjUyLCAxMTUsIDI0OCwgMTA0LCA1OCwgNTQsIDEwMiwgMjUyLCAxMTQsIDU4LCA1NCwgMTAyLCAyNTIsIDExMywgNTgsIDU0LCAKLSAgICAxMDIsIDI1MiwgMTEyLCA1OCwgNTQsIDEwMiwgMjUyLCAxMTEsIDU4LCA1NCwgMTAyLCAyNTIsIDExMCwgNTgsIDU0LCAxMDIsIAotICAgIDIxNCwgMTYzLCAyNTIsIDE5NSwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE2MiwgNTgsIDU0LCAxMDIsIDIxNCwgCi0gICAgMTYzLCAyNTIsIDE2MSwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE2MCwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAKLSAgICAyNTIsIDE1OSwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE1OCwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIAotICAgIDE1NywgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE1NiwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE1NSwgCi0gICAgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE1NCwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE1MywgNTgsIDU0LCAKLSAgICAxMDIsIDIxNCwgMTYzLCAyNTIsIDE1MiwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE1MSwgNTgsIDU0LCAxMDIsIAotICAgIDIxNCwgMTYzLCAyNTIsIDE1MCwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE0OSwgNTgsIDU0LCAxMDIsIDIxNCwgCi0gICAgMTYzLCAyNTIsIDE0OCwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE0NywgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAKLSAgICAyNTIsIDE0NiwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE0NSwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIAotICAgIDE0NCwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE0MywgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE0MSwgCi0gICAgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDE0MCwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDEzOCwgNTgsIDU0LCAKLSAgICAxMDIsIDIxNCwgMTYzLCAyNTIsIDEzNywgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDEzNiwgNTgsIDU0LCAxMDIsIAotICAgIDIxNCwgMTYzLCAyNTIsIDEzNSwgNTgsIDU0LCAxMDIsIDIxNCwgMTYzLCAyNTIsIDExOSwgNTgsIDU0LCAxMDIsIDIxNCwgCi0gICAgMTYzLCAyNTIsIDEwOSwgMjU0LCAxNDEsIDIxMywgMTk2LCAyMjEsIDU4LCAyMzIsIDI0MiwgMjU0LCAxNDEsIDIxMywgMTk2LCAKLSAgICAyMjEsIDU4LCAyNDcsIDc0LCAyNTQsIDE0MSwgMjUwLCA2NiwgNzcsIDI1NCwgMTQxLCA1MCwgMTE2LCAyNTQsIDE0MSwgNTAsIAotICAgIDEwOSwgMjU0LCAxNDEsIDUwLCAxNjYsIDI1NCwgMTQxLCA1MCwgMTYzLCAyNTQsIDE0MSwgNTAsIDE4MCwgMjU0LCAxNDEsIAotICAgIDUwLCAxODksIDI1NCwgMTQxLCA1MCwgMTk4LCAyNTQsIDE0MSwgNTAsIDE5NSwgMjU0LCAxNDEsIDUwLCAyMDAsIDI1NCwgCi0gICAgMTQxLCA1MCwgMjE3LCAyMDAsIDI1NCwgMTQxLCA1MCwgMjE2LCAzOCwgMjU0LCAxNDEsIDUwLCAyMTcsIDExNSwgMjU0LCAKLSAgICAxNDEsIDUwLCAyNDMsIDI0MCwgMjU0LCAxNDEsIDUwLCAyNDQsIDgzLCAyNTQsIDE0MSwgNTAsIDIyMCwgMzksIDI1NCwgCi0gICAgMTQxLCA1MCwgMjIxLCAzNywgMjU0LCAxNDEsIDUwLCAyNDUsIDE0MSwgMjU0LCAxNDEsIDUwLCAyMjksIDI2LCAyNTQsIAotICAgIDE0MSwgNTAsIDEyMiwgMjQwLCAyMDAsIDI1NCwgMTQxLCA1MCwgMTE3LCAyNDAsIDIwMCwgMjU0LCAxNDEsIDUwLCAxMzMsIAotICAgIDI0MCwgMjAwLCAyNTQsIDE0MSwgNTAsIDI0MywgMjM3LCAyNDAsIDIwMCwgMjU0LCAxNDEsIDUwLCAyNDQsIDUwLCAyNDAsIAotICAgIDIwMCwgMjU0LCAxNDEsIDUwLCAyMjAsIDUzLCAyNDAsIDIwMCwgMjU0LCAxNDEsIDUwLCAyMjEsIDQzLCAyNDAsIDIwMCwgCi0gICAgMjU0LCAxNDEsIDUwLCAyNDUsIDE1MCwgMjQwLCAyMDAsIDI1NCwgMTQxLCA1MCwgMjI5LCAzMSwgMjQwLCAyMDAsIDI1NCwgCi0gICAgMTQxLCA1MCwgMTIyLCAyMTcsIDEwMCwgMjU0LCAxNDEsIDUwLCAxMTcsIDIxNywgMTAwLCAyNTQsIDE0MSwgNTAsIDEzMywgCi0gICAgMjE3LCAxMDAsIDI1NCwgMTQxLCA1MCwgMjQzLCAyMzcsIDIxNywgMTAwLCAyNTQsIDE0MSwgNTAsIDI0NCwgNTAsIDIxNywgCi0gICAgMTAwLCAyNTQsIDE0MSwgNTAsIDIyMCwgNTMsIDIxNywgMTAwLCAyNTQsIDE0MSwgNTAsIDIyMSwgNDMsIDIxNywgMTAwLCAKLSAgICAyNTQsIDE0MSwgNTAsIDI0NSwgMTUwLCAyMTcsIDEwMCwgMjU0LCAxNDEsIDUwLCAyMjksIDMxLCAyMTcsIDEwMCwgMjU0LCAKLSAgICAxNDEsIDUwLCAyMTcsIDIwMSwgMjE3LCAxMDAsIDI1NCwgMTQxLCA1MCwgMjE2LCAzOSwgMjE3LCAxMDAsIDI1NCwgMTQxLCAKLSAgICA1MCwgMjE3LCAxMTYsIDIxNywgMTAwLCAyNTQsIDE0MSwgNTAsIDI0MywgMjQxLCAyMTcsIDEwMCwgMjU0LCAxNDEsIDUwLCAKLSAgICAyNDQsIDg0LCAyMTcsIDEwMCwgMjU0LCAxNDEsIDUwLCAyMjAsIDQwLCAyMTcsIDEwMCwgMjU0LCAxNDEsIDUwLCAyMjEsIAotICAgIDM4LCAyMTcsIDEwMCwgMjU0LCAxNDEsIDUwLCAyNDUsIDE0MiwgMjE3LCAxMDAsIDI1NCwgMTQxLCA1MCwgMjI5LCAyNywgCi0gICAgMjE3LCAxMDAsIDI1NCwgMTQxLCAyMTMsIDI1NSwgMjUyLCA0OCwgMjE1LCAxNDQsIDI1NCwgMTQxLCAyMTMsIDI1NSwgMjQ0LCAKLSAgICA2MSwgMjE5LCA0LCAyNTQsIDE0MSwgMjEzLCAyNTUsIDIyMiwgOTUsIDIxOSwgNCwgMjU0LCAxNDEsIDIxMywgMjU1LCAyMTcsIAotICAgIDEyMiwgMjE5LCA0LCAyNTQsIDE0MSwgMjEzLCAyNTUsIDI0MywgMjMwLCAyMTksIDQsIDI1NCwgMTQxLCAyNDYsIDM2LCAKLSAgICAyMzEsIDE1NSwgMjQ0LCA2MSwgMjE5LCA0LCAyNTQsIDE0MSwgMjMyLCAyMjgsIDIzMSwgMTU1LCAyNDQsIDYxLCAyMTksIDQsIAotICAgIDI1NCwgMTQxLCAyMzEsIDE1NSwgMjIyLCA5NSwgMjE5LCA0LCAyNTQsIDE0MSwgMjMxLCAxNTUsIDIxNywgMTIyLCAyMTksIAotICAgIDQsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDEyMiwgMjI0LCAxNjYsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDEyMiwgCi0gICAgMjQyLCA5LCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAxMjIsIDI0NiwgNTQsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIAotICAgIDE4MCwgMjUsIDI1NCwgMTY3LCAyNTMsIDExMCwgMjQ0LCA4MywgMjUsIDI1NCwgMTY3LCAyNTMsIDExMCwgMjQ0LCA1MCwgCi0gICAgMjQwLCAyMDAsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDI0NCwgNTAsIDIxNywgMTAwLCAyNSwgMjU0LCAxNjcsIDI1MywgCi0gICAgMTEwLCAyNDQsIDg0LCAyMTcsIDEwMCwgMjUsIDI1NCwgMTY3LCAyNTMsIDExMCwgMjQ0LCA1MCwgMjE4LCAxOCwgMjUsIAotICAgIDI1NCwgMTY3LCAyNTMsIDExMCwgMjE3LCAyMDEsIDIxOCwgMTgsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDI0NCwgODQsIAotICAgIDIxOCwgMTgsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDEyMiwgMjQwLCAyMDEsIDIxOCwgMTgsIDI1LCAyNTQsIDE2NywgCi0gICAgMjUzLCAxMTAsIDI0NCwgNTAsIDI0MCwgMjAxLCAyMTgsIDE4LCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAxMjIsIDIxNywgCi0gICAgMTAxLCAyMTgsIDE4LCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAyNDQsIDUwLCAyMTcsIDEwMSwgMjE4LCAxOCwgMjUsIAotICAgIDI1NCwgMTY3LCAyNTMsIDExMCwgMjQ0LCA1MCwgMjE5LCA5MCwgMjUsIDI1NCwgMTY3LCAyNTMsIDExMCwgMjE3LCAyMDEsIAotICAgIDIxOSwgOTAsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDI0NCwgODQsIDIxOSwgOTAsIDI1LCAyNTQsIDE2NywgMjUzLCAKLSAgICAxMTAsIDEyMiwgMjQwLCAyMDEsIDIxOSwgOTAsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDI0NCwgNTAsIDI0MCwgMjAxLCAKLSAgICAyMTksIDkwLCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAxMjIsIDIxNywgMTAxLCAyMTksIDkwLCAyNSwgMjU0LCAxNjcsIAotICAgIDI1MywgMTEwLCAyMTcsIDIwMSwgMjE3LCAxMDEsIDIxOSwgOTAsIDI1LCAyNTQsIDE2NywgMjUzLCAxMTAsIDI0NCwgODQsIAotICAgIDIxNywgMTAxLCAyMTksIDkwLCAyNSwgMjU0LCAxNjcsIDI1MywgMTEwLCAyMTcsIDIwMSwgMjMwLCAyMzQsIDI1LCAyNTQsIAotICAgIDE2NywgMjQxLCAxODksIDEyMiwgMjI1LCAxNjQsIDI1LCAyNTQsIDE2NywgMjE3LCAxMzQsIDExNiwgMjUsIDI1NCwgMTY3LCAKLSAgICAyNDEsIDE4NiwgMTE2LCAyNSwgMjU0LCAxNjcsIDI0NSwgNjcsIDEwOSwgMjUsIDI1NCwgMTY3LCAyMTcsIDEzNCwgMTA5LCAKLSAgICAyNSwgMjU0LCAxNjcsIDI0OSwgOCwgMTE3LCAyNDYsIDUzLCAyNSwgMjU0LCAxNjcsIDI0NSwgNjcsIDExNywgMjQ2LCA1MywgCi0gICAgMjUsIDI1NCwgMTY3LCAyMTYsIDE2MSwgMTgwLCAyNSwgMjU0LCAxNjcsIDIxNiwgMTYxLCAyMTcsIDIwMCwgMjUsIDI1NCwgCi0gICAgMTY3LCAyMTYsIDE2MSwgMjE3LCAyMDEsIDI1NCwgNTAsIDE3LCAyNSwgMjU0LCAxNjcsIDI0MSwgMTg2LCAyMTcsIDIwMCwgCi0gICAgMjUsIDI1NCwgMTY3LCAyMzEsIDEwOCwgMjE3LCAyMDAsIDI1LCAyNTQsIDE2NywgMjE3LCAxMzQsIDIxNywgMjAwLCAyNSwgCi0gICAgMjU0LCAxNjcsIDIxNywgMTM0LCAyMTcsIDExNSwgMjUsIDI1NCwgMTY3LCAyMTYsIDE2MSwgMjQ0LCA4MywgMjUsIDI1NCwgCi0gICAgMTY3LCAyMTYsIDE2MSwgMjQ0LCA4NCwgMjU0LCA1MCwgMTcsIDI1LCAyNTQsIDE2NywgMjQxLCAxODYsIDI0NCwgODMsIDI1LCAKLSAgICAyNTQsIDE2NywgMjE3LCAxMzQsIDI0NCwgODMsIDI1LCAyNTQsIDE2NywgMjE3LCAxMzQsIDEyMiwgMjQwLCAyMDAsIDI1LCAKLSAgICAyNTQsIDE2NywgMjE3LCAxMzQsIDEzMywgMjQwLCAyMDAsIDI1LCAyNTQsIDE2NywgMjQ1LCA2NywgMjQ0LCA1MCwgMjQwLCAKLSAgICAyMDAsIDI1LCAyNTQsIDE2NywgMjE2LCAxNjEsIDI0NCwgNTAsIDI0MCwgMjAwLCAyNSwgMjU0LCAxNjcsIDIxNywgMTM0LCAKLSAgICAyNDQsIDUwLCAyNDAsIDIwMCwgMjUsIDI1NCwgMTY3LCAyNTAsIDE1OSwgMjQ0LCA1MCwgMjQwLCAyMDAsIDI1LCAyNTQsIAotICAgIDE2NywgMjMwLCA0LCAyNDQsIDUwLCAyNDAsIDIwMCwgMjUsIDI1NCwgMTY3LCAyMTcsIDEzNCwgMTIyLCAyMTcsIDEwMCwgCi0gICAgMjUsIDI1NCwgMTY3LCAyMTcsIDEzNCwgMjQ0LCA1MCwgMjE3LCAxMDAsIDI1LCAyNTQsIDE2NywgMjQ4LCA4LCAyNDQsIDUwLCAKLSAgICAyMzAsIDIzNCwgMjUsIDI1NCwgMTY3LCAyMTksIDU4LCAyNDQsIDg0LCAyMzAsIDIzNCwgMjUsIDEyMiwgMTUxLCA1MiwgMjUsIAotICAgIDEyMiwgMTUxLCA1LCAyNTQsIDUwLCAxNywgMjUsIDExNywgMjE3LCAxMjAsIDUyLCAyNSwgMTMzLCAyMjQsIDE2NSwgNTIsIAotICAgIDI1LCAyMTMsIDM2LCA1MiwgMjUsIDIxOCwgMTksIDUyLCAyNSwgMjQ2LCA1NSwgNTIsIDI1LCAyMjcsIDExMCwgNTIsIDI1LCAKLSAgICAxMTcsIDIyNywgMTA5LCA1MiwgMjUsIDEzMywgMjI3LCAxMDksIDUyLCAyNSwgMjQzLCAyMzcsIDIyNywgMTA5LCA1MiwgMjUsIAotICAgIDI0NCwgNTAsIDIyNywgMTA5LCA1MiwgMjUsIDIzMSwgMTAyLCA1MiwgMjUsIDIzMywgMTc5LCAyNTIsIDQ4LCA1MiwgMjUsIAotICAgIDIzMiwgMjIzLCA1MiwgMjUsIDIyNiwgMjU1LCA1MiwgMjUsIDIxMywgMTQ3LCA1MiwgMjUsIDI1MywgMTU4LCA1MiwgMjUsIAotICAgIDI1MywgMTcxLCA1MiwgMjUsIDI0MiwgMTIwLCA1MiwgMjUsIDIxNiwgMTQ0LCAyNTIsIDQ4LCA1MiwgMjUsIDIxMiwgODAsIAotICAgIDUyLCAyMjMsIDEwMCwgMjIxLCAzNCwgNTIsIDIyMywgMTAwLCAyMTUsIDE1NSwgNTIsIDIyMywgMTAwLCAyMjEsIDYyLCA1MiwgCi0gICAgMjIzLCAxMDAsIDIyMSwgMzIsIDUyLCAyMjMsIDEwMCwgMjQ3LCAxNjUsIDIyMSwgMzIsIDUyLCAyMjMsIDEwMCwgMjIwLCAKLSAgICA5NCwgNTIsIDIyMywgMTAwLCAyNDgsIDQsIDUyLCAyMjMsIDEwMCwgMjI0LCAxNTEsIDUyLCAyMjMsIDEwMCwgMjIxLCA1MCwgCi0gICAgNTIsIDIyMywgMTAwLCAyNDYsIDE1LCA1MiwgMjIzLCAxMDAsIDI1MywgMTUzLCA1MiwgMjIzLCAxMDAsIDI1MCwgMTA1LCAKLSAgICA1MiwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDIyNiwgODgsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMjUsIDE1OCwgMjQxLCAKLSAgICAyMTksIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMTcsIDI1MiwgMjQxLCAyMTksIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNTAsIAotICAgIDE3OSwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI1MCwgMzgsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMTMsIDIwOCwgMjI2LCAKLSAgICAxOSwgMjQ3LCAxNDMsIDUsIDI0MSwgMTk1LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjQzLCA2MSwgMjI2LCAxOSwgMjQ3LCAKLSAgICAxNDMsIDUsIDIxNywgNzAsIDIyNiwgMTksIDI0NywgMTQzLCA1LCA2OCwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI1MSwgOTUsIAotICAgIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMjAsIDIwOSwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI0OSwgMTgxLCAyMjYsIDE5LCAKLSAgICAyNDcsIDE0MywgNSwgMjMxLCAyNDcsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMzEsIDE5OSwgMjI2LCAxOSwgMjQ3LCAxNDMsIAotICAgIDUsIDIyMiwgMTM0LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjMzLCA5LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjUxLCAKLSAgICAxMTMsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNTAsIDE2MywgMjI1LCAxNjcsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNDcsIAotICAgIDg3LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjQ5LCAxNjEsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMjAsIDE1LCAyMjYsIAotICAgIDE5LCAyNDcsIDE0MywgNSwgMjQ5LCAxNjIsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNTEsIDIzOSwgMjI2LCAxOSwgMjQ3LCAKLSAgICAxNDMsIDUsIDIyMCwgMTk2LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjQwLCAyMzUsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAKLSAgICAyNDEsIDE2MywgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI1MSwgNDEsIDIzMywgNjAsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAKLSAgICAyNTAsIDE1NiwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDIyNCwgNDUsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyNDUsIDE4NiwgCi0gICAgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI0NiwgNjEsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMTYsIDY5LCAyMjYsIDE5LCAKLSAgICAyNDcsIDE0MywgNSwgMjUxLCAyNDIsIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMjUsIDE2OCwgMjE2LCAxOTMsIDIyNiwgMTksIAotICAgIDI0NywgMTQzLCA1LCAyMTQsIDE0MCwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDIyNiwgMTQ2LCAyMjYsIDE5LCAyNDcsIDE0MywgCi0gICAgNSwgMjIzLCA5MiwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDIzMiwgMjUyLCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjI2LCAKLSAgICAyMzksIDI1MiwgMTAxLCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjQ0LCAxNywgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDI0MiwgCi0gICAgMTE1LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMjE5LCA1OSwgMjI2LCAxOSwgMjQ3LCAxNDMsIDUsIDMsIDI1MywgODQsIAotICAgIDIyNiwgMTksIDI0NywgMTQzLCA1LCAyMTQsIDE2LCAyNTIsIDY3LCAyMjYsIDE5LCAyNDcsIDE0MywgNSwgMzcsIDIyNywgCi0gICAgMTEyLCA5MCwgMjMyLCAxMjAsIDEsIDYxLCAyMzIsIDEyMCwgMSwgNzQsIDIzMiwgMTIwLCAxLCAyNTMsIDc0LCAyMzIsIAotICAgIDEyMCwgMSwgMjUxLCAxOTYsIDIzMiwgMTIwLCAxLCAyNDMsIDE3NywgMjMyLCAxMjAsIDEsIDI0OSwgMywgMjMyLCAxMjAsIAotICAgIDEsIDcyLCAyMzIsIDEyMCwgMSwgMjE0LCA4MiwgMjMyLCAxMjAsIDEsIDIxMiwgMTUyLCAyMzIsIDEyMCwgMSwgMjE3LCAKLSAgICAxNjMsIDIzMiwgMTIwLCAxLCAyMzUsIDE0MiwgMjMyLCAxMjAsIDEsIDIzNSwgMjcsIDIzMiwgMTIwLCAxLCAyMjQsIDI0MCwgCi0gICAgMjMyLCAxMjAsIDEsIDE1MCwgMjMyLCAxMjAsIDEsIDE4MywgMjMyLCAxMjAsIDEsIDIwNCwgMjMyLCAxMjAsIDEsIDIzMCwgCi0gICAgMjM1LCAyMzIsIDEyMCwgMSwgMjI4LCAxOTksIDIzMiwgMTIwLCAxLCA2OSwgMjMyLCAxMjAsIDEsIDIyNiwgMjI5LCAyMzIsIAotICAgIDEyMCwgMSwgMjM0LCA1NiwgMjMyLCAxMjAsIDEsIDE0OSwgMjMyLCAxMjAsIDEsIDE5NywgMjMyLCAxMjAsIDEsIDIxOCwgCi0gICAgOTksIDIzMiwgMTIwLCAxLCAyMTYsIDExOCwgMjMyLCAxMjAsIDEsIDI1NCwgMzIsIDIzMiwgMTIwLCAxLCAyNDUsIDEwOCwgCi0gICAgMjMyLCAxMjAsIDEsIDI0MiwgNDEsIDIzMiwgMTIwLCAxLCAyMTMsIDE2NiwgMjUwLCAxNjksIDEsIDYxLCAyNTAsIDE2OSwgCi0gICAgMSwgMjI2LCAyMTUsIDI1MCwgMTY5LCAxLCAyNDksIDMsIDI1MCwgMTY5LCAxLCAxNTAsIDI1MCwgMTY5LCAxLCAyMTUsIDkwLCAKLSAgICAyNTAsIDE2OSwgMSwgMTQ5LCAyNTAsIDE2OSwgMSwgMjMzLCA4NiwgMjUwLCAxNjksIDEsIDI1NCwgMjM0LCAyNTAsIDE2OSwgCi0gICAgMSwgMjI0LCAyNDAsIDI1MCwgMTY5LCAxLCAyNTMsIDc0LCAyNTAsIDE2OSwgMSwgMTgzLCAyNTAsIDE2OSwgMSwgNzUsIAotICAgIDI1MCwgMTY5LCAxLCAyNDgsIDE2NiwgMjUwLCAxNjksIDEsIDIxOCwgOTksIDI1MCwgMTY5LCAxLCAyMjEsIDI2LCAyNTAsIAotICAgIDE2OSwgMSwgMjIxLCAyNSwgMjUwLCAxNjksIDEsIDE5NywgMjUwLCAxNjksIDEsIDI1MCwgMjUxLCAyNTAsIDE2OSwgMSwgCi0gICAgNjksIDI1MCwgMTY5LCAxLCAyMjgsIDE5OSwgMjUwLCAxNjksIDEsIDIxMywgMTY2LCAyNTAsIDE2OSwgMSwgMjA0LCAyNTAsIAotICAgIDE2OSwgMSwgMjE2LCAxMTcsIDI1MCwgMTY5LCAxLCAyMjYsIDIyOSwgMjUwLCAxNjksIDEsIDIxOSwgMTU4LCAyNTAsIDE2OSwgCi0gICAgMSwgNzIsIDI1MCwgMTY5LCAxLCA3NCwgMjUwLCAxNjksIDEsIDIxNSwgODcsIDI1MCwgMTY5LCAxLCAyMzUsIDI3LCAyNTAsIAotICAgIDE2OSwgMSwgMjM1LCAxOCwgMjUwLCAxNjksIDEsIDIyOSwgMjMwLCAyNTAsIDE2OSwgMSwgMjE1LCA5MiwgMjUwLCAxNjksIAotICAgIDEsIDI0MywgMTc3LCAyNTAsIDE2OSwgMSwgMjQzLCAxMTIsIDI1MCwgMTY5LCAxLCAyMTksIDEwNywgMjUwLCAxNjksIDEsIAotICAgIDIxOSwgMTA2LCAyNTAsIDE2OSwgMSwgMjI5LCAxNjEsIDI1MCwgMTY5LCAxLCAyMzYsIDI4LCAyNTAsIDE2OSwgMSwgMjUwLCAKLSAgICAyNTAsIDI1MCwgMTY5LCAxLCAyMTYsIDExOCwgMjUwLCAxNjksIDEsIDIxNSwgODksIDI1MCwgMTY5LCAxLCAyMjMsIDgyLCAKLSAgICAyNTAsIDE2OSwgMSwgMjMxLCAxOTIsIDI1MCwgMTY5LCAxLCAyMzEsIDE5MSwgMjUwLCAxNjksIDEsIDIzMSwgMTkwLCAyNTAsIAotICAgIDE2OSwgMSwgMjMxLCAxODksIDI1MCwgMTY5LCAxLCAyMzMsIDg1LCAyNTAsIDE2OSwgMSwgMjQ1LCAxOTAsIDI1MCwgMTY5LCAKLSAgICAxLCAyMTUsIDg4LCA1MywgMzIsIDEsIDYxLCA1MywgMzIsIDEsIDI1MSwgMjUxLCA1MywgMzIsIDEsIDIzNCwgMTg4LCA1MywgCi0gICAgMzIsIDEsIDI0OCwgNDEsIDUzLCAzMiwgMSwgNzQsIDUzLCAzMiwgMSwgMjE0LCAyMzIsIDUzLCAzMiwgMSwgMjEyLCA4NywgCi0gICAgNTMsIDMyLCAxLCAyNDEsIDIyMiwgNTMsIDMyLCAxLCAyMTcsIDE0OCwgNTMsIDMyLCAxLCA3MiwgNTMsIDMyLCAxLCAxODEsIAotICAgIDUzLCAzMiwgMSwgMjQ1LCAxMzEsIDUzLCAzMiwgMSwgMjQ1LCAxMTcsIDUzLCAzMiwgMSwgMjQ1LCAxMDgsIDUzLCAzMiwgMSwgCi0gICAgMjQ1LCA0MCwgNTMsIDMyLCAxLCA3NSwgNTMsIDMyLCAxLCAyMjYsIDk2LCA1MywgMzIsIDEsIDIyMCwgMjQzLCA1MywgMzIsIAotICAgIDEsIDIzMywgMjM4LCA1MywgMzIsIDEsIDI0NSwgNTUsIDUzLCAzMiwgMSwgMjQ1LCA0NSwgNTMsIDMyLCAxLCAyMTcsIDIyOSwgCi0gICAgNTMsIDMyLCAxLCA2OSwgNTMsIDMyLCAxLCAyNDUsIDEzNCwgNTMsIDMyLCAxLCAyMjYsIDEyLCA1MywgMzIsIDEsIDIzNCwgCi0gICAgMTI1LCA1MywgMzIsIDEsIDI0NSwgMTU5LCA1MywgMzIsIDEsIDI0NSwgNDcsIDUzLCAzMiwgMSwgMjUwLCA2NywgNTMsIDMyLCAKLSAgICAxLCAyMzYsIDI4LCA1MywgMzIsIDEsIDIxNSwgOTIsIDUzLCAzMiwgMjI4LCA1NCwgMTE2LCA1MywgMzIsIDIyOCwgNTQsIAotICAgIDE4MCwgNTMsIDMyLCAyMjgsIDU0LCAyMTcsIDIwMCwgNTMsIDMyLCAyMjgsIDU0LCAyNDQsIDgzLCAyNDIsIDEyOSwgMSwgCi0gICAgMjU0LCAxMTEsIDI0MiwgMTI5LCAxLCAyNTIsIDgyLCAyNDIsIDEyOSwgMSwgMjQyLCAxODcsIDI0MiwgMTI5LCAxLCAyNDgsIAotICAgIDE0OCwgMjQyLCAxMjksIDEsIDI1NCwgMTA3LCAyNDIsIDEyOSwgMSwgMjI0LCAyMjMsIDI0MiwgMTI5LCAxLCAyMzUsIDE1MywgCi0gICAgMjQyLCAxMjksIDEsIDI0MiwgMjAsIDI0MiwgMTI5LCAxLCAyMTcsIDExMSwgMjQyLCAxMjksIDEsIDI0NSwgMTQwLCAyNDIsIAotICAgIDEyOSwgMSwgMjMzLCAyMTEsIDI0MiwgMTI5LCAxLCAyMzMsIDEzNiwgMjQyLCAxMjksIDEsIDIzMSwgMjQyLCAyNDIsIDEyOSwgCi0gICAgMSwgMjMwLCA2LCAyNDIsIDEyOSwgMSwgMjM1LCAxMjAsIDI0MiwgMTI5LCAxLCAyMTUsIDEwNywgMjQyLCAxMjksIDEsIAotICAgIDIyNiwgMTk2LCAyNDIsIDEyOSwgMSwgMjI5LCAyNiwgMjQyLCAxMjksIDEsIDIyNCwgNTYsIDI0MiwgMTI5LCAxLCAyMjIsIAotICAgIDEzNiwgMjQyLCAxMjksIDEsIDIxNywgMjEyLCAyNDIsIDEyOSwgMSwgMjEzLCAyMTksIDI0MiwgMTI5LCAxLCAyNDQsIDE0NiwgCi0gICAgMjQyLCAxMjksIDEsIDIzNiwgMzIsIDI0MiwgMTI5LCAxLCAyNDAsIDE5MSwgMjQyLCAxMjksIDEsIDIyNywgNywgMjQyLCAKLSAgICAxMjksIDEsIDIyOSwgMzEsIDI0MCwgMjAwLCAyMTUsIDE3OSwgMSwgMjU0LCA1NiwgMjE1LCAxNzksIDEsIDI1MSwgMjAzLCAKLSAgICAyMTUsIDE3OSwgMSwgMjQzLCA4NCwgMjE1LCAxNzksIDEsIDIzNCwgMTM4LCAyMTUsIDE3OSwgMSwgMjQ4LCA1LCAyMTUsIAotICAgIDE3OSwgMSwgMjQxLCA1NCwgMjE1LCAxNzksIDEsIDIxMywgMjE0LCAyMTUsIDE3OSwgMSwgMjEyLCA3OCwgMjE1LCAxNzksIAotICAgIDEsIDI0MCwgMjI4LCAyMTUsIDE3OSwgMSwgMjE3LCAxODMsIDIxNSwgMTc5LCAxLCAyMTIsIDIyNCwgMjE1LCAxNzksIDEsIAotICAgIDIzNCwgMjU0LCAyMTUsIDE3OSwgMSwgMjIwLCAyMDAsIDIxNSwgMTc5LCAxLCAyMzMsIDEyMiwgMjE1LCAxNzksIDEsIDIzMSwgCi0gICAgMTI5LCAyMTUsIDE3OSwgMSwgMjQ3LCAyMjksIDIxNSwgMTc5LCAxLCAyMjgsIDUwLCAyMTUsIDE3OSwgMSwgMjEyLCA4LCAKLSAgICAyMTUsIDE3OSwgMSwgMjIyLCAxNjMsIDIxNSwgMTc5LCAxLCAyNTQsIDEwMywgMjE1LCAxNzksIDEsIDIyNSwgMzUsIDIxNSwgCi0gICAgMTc5LCAxLCAyMjIsIDE5NCwgMjE1LCAxNzksIDEsIDIyNCwgMTgwLCAyMTUsIDE3OSwgMSwgMjI0LCAzNiwgMjE1LCAxNzksIAotICAgIDEsIDIxNywgMTUyLCAyMTUsIDE3OSwgMSwgMjQyLCAyMjAsIDIxNSwgMTc5LCAxLCAxMDgsIDIxNSwgMTc5LCAxLCA3MiwgCi0gICAgMjE1LCAxNzksIDEsIDY5LCAyMTUsIDE3OSwgMSwgMjE5LCAxMTcsIDIxNSwgMTc5LCAyMTMsIDE5NiwgMjQ3LCAxMjQsIDUzLCAKLSAgICAyMjYsIDQ1LCA1LCA2MSwgNTMsIDIyNiwgNDUsIDUsIDcyLCA1MywgMjI2LCA0NSwgNSwgNjksIDUzLCAyMjYsIDQ1LCA1LCAKLSAgICAxODEsIDUzLCAyMjYsIDQ1LCA1LCAyMzMsIDIzOCwgNTMsIDIyNiwgNDUsIDUsIDI0MywgMTEwLCA1MywgMjI2LCA0NSwgNSwgCi0gICAgMjQyLCA5MiwgNTMsIDIyNiwgNDUsIDUsIDIxMywgMTUzLCA1MywgMjI2LCA0NSwgNSwgMjUwLCAyMTksIDUzLCAyMjYsIDQ1LCAKLSAgICA1LCAyMzUsIDEzOSwgNTMsIDIyNiwgNDUsIDUsIDIzNSwgMTEwLCA1MywgMjI2LCA0NSwgNSwgMjE4LCA1MiwgNTMsIDIyNiwgCi0gICAgNDUsIDUsIDIxNiwgODIsIDUzLCAyMjYsIDQ1LCA1LCAyNDgsIDE2NCwgNTMsIDIyNiwgNDUsIDUsIDI0NywgMjExLCA1MywgCi0gICAgMjI2LCA0NSwgNSwgMjQ2LCAzMywgNTMsIDIyNiwgNDUsIDUsIDIxNywgMTYxLCA1MywgMjI2LCA0NSwgNSwgMTkzLCA1MywgCi0gICAgMjI2LCA0NSwgNSwgMjUyLCAxMDcsIDUzLCAyMjYsIDQ1LCA1LCAyNDQsIDE2NCwgNTMsIDIyNiwgNDUsIDUsIDIwNSwgNTMsIAotICAgIDIyNiwgNDUsIDUsIDIyOCwgOTIsIDUzLCAyMjYsIDQ1LCA1LCAxODgsIDUzLCAyMjYsIDQ1LCA1LCAyMzEsIDQyLCA1MywgCi0gICAgMjI2LCA0NSwgNSwgMjMwLCAxNzIsIDUzLCAyMjYsIDQ1LCA1LCAxODYsIDUzLCAyMjYsIDQ1LCA1LCAyMTUsIDEsIDUzLCAKLSAgICAyMjYsIDQ1LCA1LCAyMTQsIDE1NCwgNTMsIDIyNiwgNDUsIDUsIDIwMywgNTMsIDIyNiwgNDUsIDUsIDIyMywgNTEsIDUzLCAKLSAgICAyMjYsIDQ1LCA1LCAyMzMsIDE1NywgNTMsIDIyNiwgNDUsIDUsIDIyMiwgMjAyLCA1MywgMjI2LCA0NSwgNSwgMjEyLCAxMDksIAotICAgIDUzLCAyMjYsIDQ1LCA1LCAyMjEsIDI0LCA1MywgMjI2LCA0NSwgNSwgMjE5LCAxNTcsIDUzLCAyMjYsIDQ1LCA1LCAxNTksIAotICAgIDUzLCAyMjYsIDQ1LCA1LCAyNTMsIDEwMiwgNTMsIDIyNiwgNDUsIDUsIDI1MywgMTAxLCA1MywgMjI2LCA0NSwgNSwgMjUzLCAKLSAgICAxMDAsIDUzLCAyMjYsIDQ1LCA1LCAyMTMsIDEzMCwgNTMsIDIyNiwgNDUsIDUsIDI0OCwgMTQ1LCA1MywgMjI2LCA0NSwgNSwgCi0gICAgMjQ4LCAxNDQsIDUzLCAyMjYsIDQ1LCA1LCAyNTIsIDg4LCA1MywgMjI2LCA0NSwgNSwgMjUxLCAxNCwgNTMsIDIyNiwgNDUsIAotICAgIDIxMywgMTk2LCAyNDcsIDEyNCwgNTMsIDIyNiwgNDUsIDUwLCAxMTYsIDUzLCAyMjYsIDQ1LCA1MCwgMTA5LCA1MywgMjI2LCAKLSAgICA0NSwgNTAsIDIxNywgMjAwLCA1MywgMjI2LCA0NSwgNTAsIDIxNiwgMzgsIDUzLCAyMjYsIDQ1LCA1MCwgMjQwLCAyMDAsIAotICAgIDE3MSwgNiwgMSwgMTg0LCA3MiwgMTcxLCA2LCAxLCAxODQsIDc0LCAxNzEsIDYsIDEsIDE4NCwgNjEsIDE3MSwgNiwgMSwgCi0gICAgMTg0LCAyNTQsIDExNCwgMTcxLCA2LCAxLCAxODQsIDc1LCAxNzEsIDYsIDEsIDE4NCwgMjI3LCA0OSwgMTcxLCA2LCAxLCAKLSAgICAyMjAsIDE3NSwgNzIsIDE3MSwgNiwgMSwgMjIwLCAxNzUsIDc0LCAxNzEsIDYsIDEsIDIyMCwgMTc1LCA2MSwgMTcxLCA2LCAKLSAgICAxLCAyMjAsIDE3NSwgMjU0LCAxMTQsIDE3MSwgNiwgMSwgMjIwLCAxNzUsIDc1LCAxNzEsIDYsIDEsIDIyMCwgMTc1LCAyMjcsIAotICAgIDQ5LCAxNzEsIDYsIDEsIDI1MywgODMsIDE3MSwgNiwgMSwgMjI2LCAyNDAsIDE3MSwgNiwgMSwgMjEzLCAxODMsIDE3MSwgNiwgCi0gICAgMSwgMjEzLCAzNSwgMTcxLCA2LCAxLCAyNDIsIDQxLCAxNzEsIDYsIDEsIDIyNiwgODYsIDE3MSwgNiwgMSwgMjUxLCAyNDIsIAotICAgIDE3MSwgNiwgMSwgMjE3LCAyMTksIDE3MSwgNiwgMSwgMjQ4LCAyOCwgMTcxLCA2LCAxLCAyNTAsIDY0LCAxNzEsIDYsIDEsIAotICAgIDIzNSwgMTI1LCAxNzEsIDYsIDEsIDIzNCwgMTk1LCAxNzEsIDYsIDEsIDI0MywgNTksIDE3MSwgNiwgMSwgMjQ1LCAxNTksIAotICAgIDE3MSwgNiwgMSwgMjE0LCAyMjcsIDE3MSwgNiwgMSwgMjQ1LCAyNSwgMTcxLCA2LCAxLCAyMTcsIDE0NywgMTcxLCA2LCAxLCAKLSAgICAyNDUsIDQ1LCAxNzEsIDYsIDEsIDIxMiwgODUsIDE3MSwgNiwgMSwgMjQ1LCA0MCwgMTcxLCA2LCAxLCAyMTIsIDY2LCAxNzEsIAotICAgIDYsIDEsIDI0NSwgNTUsIDE3MSwgNiwgMSwgMjQ1LCAxMzEsIDE3MSwgNiwgMSwgMjQ1LCAxMTcsIDE3MSwgNiwgMSwgMjQ1LCAKLSAgICAxMDgsIDE3MSwgNiwgMSwgMjQ1LCA5NiwgMTcxLCA2LCAxLCAyMjcsIDg1LCAxNzEsIDYsIDEsIDI0NSwgNSwgMTcxLCAzLCAKLSAgICAxLCAxODQsIDcyLCAxNzEsIDMsIDEsIDE4NCwgNzQsIDE3MSwgMywgMSwgMTg0LCA2MSwgMTcxLCAzLCAxLCAxODQsIDI1NCwgCi0gICAgMTE0LCAxNzEsIDMsIDEsIDE4NCwgNzUsIDE3MSwgMywgMSwgMTg0LCAyMjcsIDQ5LCAxNzEsIDMsIDEsIDIyMCwgMTc1LCAKLSAgICA3MiwgMTcxLCAzLCAxLCAyMjAsIDE3NSwgNzQsIDE3MSwgMywgMSwgMjIwLCAxNzUsIDYxLCAxNzEsIDMsIDEsIDIyMCwgCi0gICAgMTc1LCAyNTQsIDExNCwgMTcxLCAzLCAxLCAyMjAsIDE3NSwgNzUsIDE3MSwgMywgMSwgMjIwLCAxNzUsIDIyNywgNDksIAotICAgIDE3MSwgMywgMSwgMjUzLCA4MywgMTcxLCAzLCAxLCAyMjYsIDI0MCwgMTcxLCAzLCAxLCAyMTMsIDE4MywgMTcxLCAzLCAxLCAKLSAgICAyMTMsIDM1LCAxNzEsIDMsIDEsIDI0MiwgNDEsIDE3MSwgMywgMSwgMjI2LCA4NiwgMTcxLCAzLCAxLCAyNTEsIDI0MiwgCi0gICAgMTcxLCAzLCAxLCAyMTcsIDIxOSwgMTcxLCAzLCAxLCAyNDgsIDI4LCAxNzEsIDMsIDEsIDI1MCwgNjQsIDE3MSwgMywgMSwgCi0gICAgMjM1LCAxMjUsIDE3MSwgMywgMSwgMjM0LCAxOTUsIDE3MSwgMywgMSwgMjQzLCA1OSwgMTcxLCAzLCAxLCAyNDUsIDE1OSwgCi0gICAgMTcxLCAzLCAxLCAyMTQsIDIyNywgMTcxLCAzLCAxLCAyNDUsIDI1LCAxNzEsIDMsIDEsIDIxNywgMTQ3LCAxNzEsIDMsIDEsIAotICAgIDI0NSwgNDUsIDE3MSwgMywgMSwgMjEyLCA4NSwgMTcxLCAzLCAxLCAyNDUsIDQwLCAxNzEsIDMsIDEsIDIxMiwgNjYsIDE3MSwgCi0gICAgMywgMSwgMjQ1LCA1NSwgMTcxLCAzLCAxLCAyNDUsIDEzMSwgMTcxLCAzLCAxLCAyNDUsIDExNywgMTcxLCAzLCAxLCAyNDUsIAotICAgIDEwOCwgMTcxLCAzLCAxLCAyNDUsIDk2LCAxNzEsIDMsIDEsIDIyNywgODUsIDE3MSwgMywgMSwgMjQ1LCA1LCAyMjAsIDI0OSwgCi0gICAgMSwgMjI2LCA4NCwgMjIwLCAyNDksIDEsIDIxNiwgMjE4LCAyMjAsIDI0OSwgMSwgMjM0LCAxMDAsIDIyMCwgMjQ5LCAxLCAKLSAgICAyNDQsIDExNiwgMjIwLCAyNDksIDEsIDIxNywgMTI1LCAyMjAsIDI0OSwgMSwgMjE5LCAyNDIsIDIyMCwgMjQ5LCAxLCAyMTgsIAotICAgIDIxNCwgMjIwLCAyNDksIDEsIDI0OSwgMjU0LCAyMjAsIDI0OSwgMSwgMjEzLCAzNywgMjIwLCAyNDksIDEsIDI0MCwgMTk5LCAKLSAgICAyMjAsIDI0OSwgMSwgMjUxLCAxODMsIDIyMCwgMjQ5LCAxLCAyNDgsIDQwLCAyMjAsIDI0OSwgMSwgMjQzLCA5NiwgMjIwLCAKLSAgICAyNDksIDEsIDIxNCwgMTA0LCAyMjAsIDI0OSwgMSwgMjE3LCAxMjksIDIyMCwgMjQ5LCAxLCAyMTIsIDE0LCAyMjAsIDI0OSwgCi0gICAgMSwgMjMxLCAxNTQsIDIyMCwgMjQ5LCAxLCAyMzUsIDUyLCAyMjAsIDI0OSwgMSwgMjEzLCAyMTIsIDIyMCwgMjQ5LCAxLCAKLSAgICAyNDIsIDI5LCAyMjAsIDI0OSwgMSwgMjMyLCAxOTUsIDIyMCwgMjQ5LCAxLCAyMzEsIDIsIDIyMCwgMjQ5LCAxLCAyMzYsIAotICAgIDM1LCAyMjAsIDI0OSwgMSwgMjQ1LCAxNTgsIDIyMCwgMjQ5LCAxLCAyNTMsIDE0NiwgMjIwLCAyNDksIDEsIDI1NCwgMTUyLCAKLSAgICAyMjAsIDI0OSwgMSwgMjI3LCA2MiwgMjIwLCAyNDksIDEsIDIxMywgMTk5LCAyMjAsIDI0OSwgMSwgMjI2LCAyNTQsIDIyMCwgCi0gICAgMjQ5LCAxLCAyNTQsIDExNCwgMjIwLCAyNDksIDEsIDIyMywgMTA5LCAyMjAsIDI0OSwgMSwgMjI4LCA1MCwgMjIwLCAyNDksIAotICAgIDEsIDI0NSwgMTczLCAyMjAsIDI0OSwgMSwgMjU0LCAxMTksIDIyMCwgMjQ5LCAxLCAyNDAsIDEwNCwgMjIwLCAyNDksIDEsIAotICAgIDIxNSwgMTM0LCAyMjAsIDI0OSwgMSwgMjI3LCAxMTgsIDIyMCwgMjQ5LCAxLCAyMjcsIDQyLCAyMjAsIDI0OSwgMSwgMjI3LCAKLSAgICA4NCwgMjIwLCAyNDksIDEsIDI1MywgODYsIDIyMCwgMjQ5LCAxLCAyNTMsIDE4OSwgMjIwLCAyNDksIDEsIDIyNywgMjQsIAotICAgIDIyMCwgMjQ5LCAxLCAyNTQsIDEwMCwgMjIwLCAyNDksIDEsIDI0NSwgNDksIDIyMCwgMjQ5LCAxLCAyNTMsIDE2OCwgMjIwLCAKLSAgICAyNDksIDEsIDI0NSwgMTgzLCAyMjAsIDI0OSwgMSwgMjQwLCAxMTAsIDIyMCwgMjQ5LCAxLCAyMTMsIDQsIDIyNywgOSwgMSwgCi0gICAgMjU0LCA3OCwgMjI3LCA5LCAxLCAyNTIsIDEwNywgMjI3LCA5LCAxLCAyMTgsIDUyLCAyMjcsIDksIDEsIDIzNSwgMTM5LCAKLSAgICAyMjcsIDksIDEsIDIxMywgMTUzLCAyMjcsIDksIDEsIDIzNCwgMTM4LCAyMjcsIDksIDEsIDI0OCwgMjcsIDIyNywgOSwgMSwgCi0gICAgMjAzLCAyMjcsIDksIDEsIDIyMiwgMjAyLCAyMjcsIDksIDEsIDIyMCwgMjA2LCAyMjcsIDksIDEsIDI0NywgMjMyLCAyMjcsIAotICAgIDksIDEsIDI1MCwgMTQ4LCAyMjcsIDksIDEsIDI0MywgMTEwLCAyMjcsIDksIDEsIDI0NCwgMTY0LCAyMjcsIDksIDEsIDIyNCwgCi0gICAgMjMwLCAyMjcsIDksIDEsIDIzNSwgMTMsIDIyNywgOSwgMSwgMjMzLCAxNTIsIDIyNywgOSwgMSwgMjMxLCAxMywgMjI3LCA5LCAKLSAgICAxLCAyMjgsIDM1LCAyMjcsIDksIDEsIDIxNCwgMTQsIDIyNywgOSwgMSwgMTU5LCAyMjcsIDksIDEsIDE4NiwgMjI3LCA5LCAKLSAgICAxLCA2MSwgMjI3LCA5LCAxLCA3NCwgMjI3LCA5LCAxLCA3MiwgMjI3LCA5LCAxLCA3NSwgMjI3LCA5LCAxLCA2OSwgMjI3LCAKLSAgICA5LCAxLCAyNTQsIDIzMiwgMjI3LCA5LCAxLCAyNDUsIDE2NSwgMjI3LCA5LCAxLCAyMjcsIDQ5LCAyMjcsIDksIDIxLCAyMTIsIAotICAgIDc5LCAyMjcsIDksIDIxLCAxMTYsIDIyNywgOSwgMjEsIDEwOSwgMjI3LCA5LCAyMSwgMTY2LCAyMjcsIDksIDIxLCAxNjMsIAotICAgIDIyNywgOSwgMjEsIDE4MCwgMjI3LCA5LCAyMSwgMTg5LCAyMjcsIDksIDIxLCAxOTgsIDIyNywgOSwgMjEsIDE5NSwgMjI3LCAKLSAgICA5LCAyMSwgMjAwLCAyNDksIDEwLCA0LCA2MSwgMjQ5LCAxMCwgNCwgNzQsIDI0OSwgMTAsIDQsIDcyLCAyNDksIDEwLCA0LCAKLSAgICA3NSwgMjQ5LCAxMCwgNCwgNjksIDI0OSwgMTAsIDQsIDIzNSwgMTM5LCAyNDksIDEwLCA0LCAyMzUsIDcxLCAyNDksIDEwLCAKLSAgICA0LCAxODEsIDI0OSwgMTAsIDQsIDIzNCwgMTg4LCAyNDksIDEwLCA0LCAyMzQsIDEwMSwgMjQ5LCAxMCwgNCwgMjM0LCAzNywgCi0gICAgMjQ5LCAxMCwgNCwgMjMzLCAyMzgsIDI0OSwgMTAsIDQsIDIzMywgMTU3LCAyNDksIDEwLCA0LCAyMzMsIDgyLCAyNDksIDEwLCAKLSAgICA0LCAyMzMsIDEzLCAyNDksIDEwLCA0LCAyMzIsIDIwOCwgMjQ5LCAxMCwgNCwgMjMyLCAxNTYsIDI0OSwgMTAsIDQsIDE4OCwgCi0gICAgMjQ5LCAxMCwgNCwgMjMxLCAxNTYsIDI0OSwgMTAsIDQsIDIzMSwgNDIsIDI0OSwgMTAsIDQsIDIzMCwgMjMxLCAyNDksIDEwLCAKLSAgICA0LCAyMzAsIDE3MiwgMjQ5LCAxMCwgNCwgMjA1LCAyNDksIDEwLCA0LCAyMjksIDE4NywgMjQ5LCAxMCwgNCwgMjI5LCA2NCwgCi0gICAgMjQ5LCAxMCwgNCwgMjI4LCAxODUsIDI0OSwgMTAsIDQsIDIyOCwgOTIsIDI0OSwgMTAsIDQsIDE5MywgMjQ5LCAxMCwgNCwgCi0gICAgMjI2LCA5NiwgMjQ5LCAxMCwgNCwgMjI1LCAyNDAsIDI0OSwgMTAsIDQsIDIyNSwgMTUwLCAyNDksIDEwLCA0LCAyMjUsIDM1LCAKLSAgICAyNDksIDEwLCA0LCAyMDMsIDI0OSwgMTAsIDQsIDIyNCwgMjEsIDI0OSwgMTAsIDQsIDIyMywgMTg4LCAyNDksIDEwLCA0LCAKLSAgICAyMjMsIDExMiwgMjQ5LCAxMCwgNCwgMjIzLCA1MSwgMjQ5LCAxMCwgNCwgMjIyLCAyMDIsIDI0OSwgMTAsIDQsIDIyMiwgCi0gICAgMTAwLCAyNDksIDEwLCA0LCAyMjAsIDExNywgMjQ5LCAxMCwgNCwgMjE5LCAyNDIsIDI0OSwgMTAsIDQsIDIxOSwgMjcsIAotICAgIDI0OSwgMTAsIDQsIDIxOCwgNTIsIDI0OSwgMTAsIDQsIDIxNywgMjI5LCAyNDksIDEwLCA0LCAyMTcsIDcxLCAyNDksIDEwLCAKLSAgICA0LCAxMDgsIDI0OSwgMTAsIDQsIDIxNiwgODIsIDI0OSwgMTAsIDQsIDIxNCwgNDksIDI0OSwgMTAsIDQsIDIxNCwgNiwgCi0gICAgMjQ5LCAxMCwgNCwgMjEzLCAyMzUsIDI0OSwgMTAsIDQsIDIxMywgMjE0LCAyNDksIDEwLCA0LCAyMTMsIDE1MywgMjQ5LCAKLSAgICAxMCwgNCwgMjEzLCAxNTAsIDI0OSwgMTAsIDQsIDIxMiwgMTA5LCAyNDksIDEwLCA0LCAyMTIsIDE2LCAyMzUsIDI1MywgCi0gICAgMjUzLCAxOTcsIDEsIDI1NCwgNzYsIDIzNSwgMjUzLCAyNTMsIDE5NywgMSwgMjUxLCAyMDIsIDIzNSwgMjUzLCAyNTMsIAotICAgIDE5NywgMSwgMjQyLCAxNzcsIDIzNSwgMjUzLCAyNTMsIDE5NywgMSwgMjQ4LCAxMzMsIDIzNSwgMjUzLCAyNTMsIDE5NywgMSwgCi0gICAgMjQxLCAyMjIsIDIzNSwgMjUzLCAyNTMsIDE5NywgMSwgMjE0LCAxNCwgMjM1LCAyNTMsIDI1MywgMTk3LCAxLCAyMTIsIDkwLCAKLSAgICAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDI0MSwgMTgwLCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDIxNywgMTc5LCAyMzUsIAotICAgIDI1MywgMjUzLCAxOTcsIDEsIDIxMiwgMjIzLCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDIzNCwgMjMwLCAyMzUsIDI1MywgCi0gICAgMjUzLCAxOTcsIDEsIDIzMywgMTE3LCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDIzMSwgMTI5LCAyMzUsIDI1MywgMjUzLCAKLSAgICAxOTcsIDEsIDIyOCwgNTAsIDIzNSwgMjUzLCAyNTMsIDE5NywgMSwgMjIyLCAxNjQsIDIzNSwgMjUzLCAyNTMsIDE5NywgMSwgCi0gICAgMjUzLCA3OCwgMjM1LCAyNTMsIDI1MywgMTk3LCAxLCAyMjYsIDk2LCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDIyMiwgMTkzLCAKLSAgICAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDIyNCwgMTc5LCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDIyMywgMjE5LCAyMzUsIAotICAgIDI1MywgMjUzLCAxOTcsIDEsIDIyMCwgMjAwLCAyMzUsIDI1MywgMjUzLCAxOTcsIDEsIDIxNywgMjQzLCAyMzUsIDI1MywgCi0gICAgMjUzLCAxOTcsIDIyMiwgOTIsIDUyLCAyMzUsIDI1MywgMjUzLCAxOTcsIDUwLCAxMTYsIDIzNSwgMjUzLCAyNTMsIDE5NywgCi0gICAgNTAsIDEwOSwgMjM1LCAyNTMsIDI1MywgMTk3LCA1MCwgMTY2LCAyMzUsIDI1MywgMjUzLCAxOTcsIDUwLCAyMTcsIDIwMCwgCi0gICAgMjM1LCAyNTMsIDI1MywgMTk3LCA1MCwgMjE2LCAzOCwgMjM1LCAyNTMsIDI1MywgMTk3LCA1MCwgMTIyLCAyNDAsIDIwMCwgCi0gICAgMjM1LCAyNTMsIDI1MywgMTk3LCA1MCwgMTIyLCAyMTcsIDEwMCwgMjM1LCAyNTMsIDI1MywgMTk3LCA1MCwgMjE3LCAyMDEsIAotICAgIDIxNywgMTAwLCAyMjUsIDI1MSwgMSwgMjU0LCA3NCwgMjI1LCAyNTEsIDEsIDI1MSwgMjA1LCAyMjUsIDI1MSwgMSwgMjQzLCAKLSAgICA4NSwgMjI1LCAyNTEsIDEsIDI0OCwgNywgMjI1LCAyNTEsIDEsIDI0MSwgMjIyLCAyMjUsIDI1MSwgMSwgMjE0LCAyMSwgCi0gICAgMjI1LCAyNTEsIDEsIDIxMiwgMTAzLCAyMjUsIDI1MSwgMSwgMjQxLCAxODIsIDIyNSwgMjUxLCAxLCAyMTcsIDE4MywgMjI1LCAKLSAgICAyNTEsIDEsIDIxMiwgMjI0LCAyMjUsIDI1MSwgMSwgMjM0LCAyNTQsIDIyNSwgMjUxLCAxLCAyMzMsIDEyMywgMjI1LCAyNTEsIAotICAgIDEsIDIzMSwgMTI5LCAyMjUsIDI1MSwgMSwgMjI4LCA1MCwgMjI1LCAyNTEsIDEsIDIyMSwgNjQsIDIyNSwgMjUxLCAxLCAKLSAgICAyNTQsIDEwMywgMjI1LCAyNTEsIDEsIDIyNiwgOTYsIDIyNSwgMjUxLCAxLCAyMjIsIDE5NCwgMjI1LCAyNTEsIDEsIDIyNCwgCi0gICAgMTg0LCAyMjUsIDI1MSwgMSwgMjIzLCA5MSwgMjI1LCAyNTEsIDEsIDIyMCwgMjAwLCAyMjUsIDI1MSwgMSwgMjE3LCAyNDgsIAotICAgIDIyNSwgMjUxLCA1MCwgMTE2LCAyMjUsIDI1MSwgNTAsIDIxNywgMjAwLCAyMjUsIDI1MSwgNTAsIDIxNiwgMzgsIDIyNSwgCi0gICAgMjUxLCA1MCwgMTIyLCAyNDAsIDIwMCwgMjI1LCAyNTEsIDUwLCAxMDksIDIyNSwgMjUxLCA1MCwgMTY2LCAyMjUsIDI1MSwgCi0gICAgMjEzLCAxOTYsIDIyMSwgNTcsIDIzMiwgMTE5LCAxLCA2MSwgMjMyLCAxMTksIDEsIDI1MywgNzQsIDIzMiwgMTE5LCAxLCAKLSAgICAyNDMsIDE3NywgMjMyLCAxMTksIDEsIDI0OSwgMywgMjMyLCAxMTksIDEsIDc0LCAyMzIsIDExOSwgMSwgMjE1LCA3OSwgCi0gICAgMjMyLCAxMTksIDEsIDcyLCAyMzIsIDExOSwgMSwgMjEzLCAxMDUsIDIzMiwgMTE5LCAxLCAyMzUsIDI3LCAyMzIsIDExOSwgCi0gICAgMSwgMTUwLCAyMzIsIDExOSwgMSwgMTgzLCAyMzIsIDExOSwgMSwgMjA0LCAyMzIsIDExOSwgMSwgNzUsIDIzMiwgMTE5LCAxLCAKLSAgICAxNDksIDIzMiwgMTE5LCAxLCAyMTksIDE1OCwgMjMyLCAxMTksIDEsIDIxOCwgOTksIDIzMiwgMTE5LCAxLCA2OSwgMjMyLCAKLSAgICAxMTksIDEsIDI0NCwgMjMwLCAyMzIsIDExOSwgMSwgMjI0LCAyNDAsIDIzMiwgMTE5LCAxLCAxOTcsIDIzMiwgMTE5LCAxLCAKLSAgICAyMTYsIDExOCwgMjMyLCAxMTksIDEsIDI1NCwgMzIsIDIzMiwgMTE5LCAxLCAyNDUsIDEwOCwgMjMyLCAxMTksIDEsIDIzMiwgCi0gICAgMTIxLCAyMzIsIDExOSwgMSwgMjI4LCAxOTksIDIzMiwgMTE5LCAxLCAyNTAsIDI1MiwgMjMyLCAxMTksIDIxNiwgMTgwLCAKLSAgICA3NywgMjM0LCAxMjYsIDEsIDYxLCAyMzQsIDEyNiwgMzAsIDUsIDcyLCAyMzQsIDEyNiwgMzAsIDUsIDY5LCAyMzQsIDEyNiwgCi0gICAgMzAsIDUsIDE2MSwgMTQ5LCAyMzQsIDEyNiwgMzAsIDUsIDc0LCAyMzQsIDEyNiwgMzAsIDUsIDc1LCAyMzQsIDEyNiwgMzAsIAotICAgIDIzMywgNDcsIDc3LCAyMzQsIDEyNiwgNSwgNTEsIDIyMywgMTMxLCA1NSwgMjM0LCAxMjYsIDUsIDI1MywgMjQyLCAyMzQsIAotICAgIDEyNiwgNSwgMjE0LCAxMjgsIDIzNCwgMTI2LCAxLCAxODEsIDIzNCwgMTI2LCAxLCAyMzQsIDEzOCwgMjM0LCAxMjYsIDEsIAotICAgIDI0MywgMTEwLCAyMzQsIDEyNiwgMSwgMjQyLCAyMjUsIDIzNCwgMTI2LCAxLCAyNTAsIDIxOSwgMjM0LCAxMjYsIDEsIDI1MCwgCi0gICAgOTIsIDIzNCwgMTI2LCAxLCAyMzUsIDEzOSwgMjM0LCAxMjYsIDEsIDIyOCwgMjMsIDIzNCwgMTI2LCAxLCAyMTYsIDExNSwgCi0gICAgMjM0LCAxMjYsIDEsIDIxNiwgMTA1LCAyMzQsIDEyNiwgMSwgMjQ4LCA4NiwgMjM0LCAxMjYsIDEsIDI0OCwgNzAsIDIzNCwgCi0gICAgMTI2LCAxLCAyMjgsIDE5OCwgMjM0LCAxMjYsIDEsIDIxOCwgNTIsIDIzNCwgMTI2LCAxLCAyMTcsIDE2MSwgMjM0LCAxMjYsIAotICAgIDEsIDI0OCwgMTY0LCAyMzQsIDEyNiwgMSwgMjQ3LCAyMzIsIDIzNCwgMTI2LCAxLCAyMDUsIDIzNCwgMTI2LCAxLCAxOTMsIAotICAgIDIzNCwgMTI2LCAxLCAyMjYsIDIzLCAyMzQsIDEyNiwgMSwgMjUyLCAxMDcsIDIzNCwgMTI2LCAxLCAyNTEsIDE5NSwgMjM0LCAKLSAgICAxMjYsIDEsIDE4OCwgMjM0LCAxMjYsIDEsIDE4NiwgMjM0LCAxMjYsIDEsIDIwMywgMjM0LCAxMjYsIDEsIDIzMywgMTU3LCAKLSAgICAyMzQsIDEyNiwgMSwgMjE1LCAxLCAyMzQsIDEyNiwgMSwgMjIxLCAyNCwgMjM0LCAxMjYsIDEsIDIxOSwgMTU3LCAyMzQsIAotICAgIDEyNiwgMSwgMjIyLCAyMDIsIDIzNCwgMTI2LCAxLCAyMTIsIDEwOSwgMjM0LCAxMjYsIDEsIDE1OSwgMjM0LCAxMjYsIDEsIAotICAgIDIzNCwgNTUsIDIzNCwgMTI2LCAxLCAyMTYsIDg3LCAyMzQsIDEyNiwgNSwgMjUyLCA2MCwgNDksIDIzNCwgMTI2LCA1LCAKLSAgICAyNTAsIDE1NCwgMjM0LCAxMjYsIDUsIDYyLCA1NSwgMjM0LCAxMjYsIDIxNCwgMTMzLCAyMzQsIDEyNiwgMjEsIDExNiwgCi0gICAgMjM0LCAxMjYsIDIxLCAxMDksIDIzNCwgMTI2LCAyMSwgMTY2LCAyMzQsIDEyNiwgMjEsIDE2MywgMjM0LCAxMjYsIDUwLCAKLSAgICAyMTcsIDIwMCwgMjM0LCAxMjYsIDUwLCAyMTYsIDM4LCAyMzQsIDEyNiwgNTAsIDEyMiwgMjQwLCAyMDAsIDIzNCwgMTI2LCAKLSAgICA1MCwgMTIyLCAyMTcsIDEwMCwgMjM0LCAxMjYsIDIyNSwgMjcsIDI0NywgNzQsIDIzNCwgMTI2LCAyMjUsIDI3LCAzLCAyNDksIAotICAgIDIyOCwgMjM0LCAxMjYsIDIyNSwgMjcsIDI0OSwgMjI4LCAyMzQsIDEyNiwgMjI1LCAyNywgMjQ5LCA3NywgMTM0LCAyMzQsIAotICAgIDEyNiwgMjI1LCAyNywgMjMxLCAyNDMsIDIzNCwgMTI2LCAyMjUsIDI3LCAyMzIsIDE3MCwgMjM0LCAxMjYsIDIyNSwgMjcsIAotICAgIDI0OCwgMTIzLCAyMzQsIDEyNiwgMjI1LCAyNywgNTEsIDI0OCwgMTIzLCAyMzQsIDEyNiwgMjI1LCAyNywgMjMyLCAyMzYsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDI0MSwgMjIyLCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMzMsIDExNywgCi0gICAgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjQxLCAxODAsIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIzMSwgMTI5LCAKLSAgICA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMjQsIDE3OSwgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjE0LCAxNCwgCi0gICAgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjIwLCAyMDAsIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIyMywgMjE5LCAKLSAgICA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyNTEsIDIwMiwgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjE3LCAyNDMsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIyMiwgMTQyLCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMzQsIDIzMCwgCi0gICAgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjI4LCA1MCwgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjM0LCAxMjIsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIyMiwgMTkzLCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMjIsIDE2NCwgCi0gICAgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjQ0LCAxMjMsIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDI1NCwgNzgsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDI1MywgNzcsIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDI0NywgMjMwLCAKLSAgICA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyNDIsIDE3NywgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjQ4LCAxMzMsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDI0MiwgMjE0LCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMTcsIDE3OSwgCi0gICAgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjEyLCA4OSwgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjQ3LCAyMjcsIAotICAgIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDEsIDIxMiwgMjIzLCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxLCAyMTcsIDE1MCwgCi0gICAgNTMsIDIxOSwgMjE1LCAyNTMsIDIwOCwgMSwgMjE3LCAxMzEsIDUzLCAyMTksIDIxNSwgMjUzLCAyMDgsIDUwLCAxMTYsIDUzLCAKLSAgICAyMTksIDIxNSwgMjUzLCAyMDgsIDUwLCAyNDQsIDgzLCA1MywgMjE5LCAyMTUsIDI1MywgMjA4LCAxMjgsIDIzNSwgMjM1LCAKLSAgICAyNTMsIDg4LCAxLCA2MSwgMjUzLCA4OCwgMSwgMjU0LCAyMzIsIDI1MywgODgsIDEsIDI1MywgMjQwLCAyNTMsIDg4LCAxLCAKLSAgICAyNTQsIDE5MSwgMjUzLCA4OCwgMSwgMjU0LCAzMiwgMjUzLCA4OCwgMSwgMjU0LCAxOTIsIDI1MywgODgsIDEsIDI1NCwgCi0gICAgMTQ4LCAyNTMsIDg4LCAxLCAyNTQsIDE0NCwgMjUzLCA4OCwgMSwgNzQsIDI1MywgODgsIDEsIDI0NSwgMTY1LCAyNTMsIDg4LCAKLSAgICAxLCA3NSwgMjUzLCA4OCwgMSwgMjI3LCA0OSwgMjUzLCA4OCwgMSwgNzIsIDI1MywgODgsIDEsIDIzNiwgMjgsIDI1MywgODgsIAotICAgIDEsIDY5LCAyNTMsIDg4LCAxLCAyMTUsIDkyLCAyNTMsIDg4LCAxLCAyMzQsIDE4OCwgMjUzLCA4OCwgMSwgMjEzLCAxNTAsIAotICAgIDI1MywgODgsIDEsIDIxMywgMTE2LCAyNTMsIDg4LCAxLCAyMTMsIDEyNSwgMjUzLCA4OCwgMSwgMjQzLCAzOCwgMjUzLCA4OCwgCi0gICAgMSwgMjQzLCAwLCAyNTMsIDg4LCAxLCAyNDIsIDIxMiwgMjUzLCA4OCwgMSwgMjUwLCAxMjQsIDI1MywgODgsIDEsIDIzNSwgCi0gICAgMTI3LCAyNTMsIDg4LCAxLCAyMTcsIDIyOSwgMjUzLCA4OCwgMSwgMjE3LCAxNDgsIDI1MywgODgsIDEsIDI0OCwgNDEsIAotICAgIDI1MywgODgsIDEsIDI0NywgMjI1LCAyNTMsIDg4LCAxLCAyMTYsIDExMiwgMjUzLCA4OCwgMSwgMjI2LCA5NiwgMjUzLCA4OCwgCi0gICAgMSwgMjQ0LCAxMjMsIDI1MywgODgsIDEsIDI1MSwgMjUxLCAyNTMsIDg4LCAxLCAyNTEsIDE5MiwgMjUzLCA4OCwgMSwgMjI5LCAKLSAgICAxNDgsIDI1MywgODgsIDEsIDIyOSwgNzAsIDI1MywgODgsIDEsIDIyOSwgNzEsIDI1MywgODgsIDEsIDIyOSwgMTg3LCAyNTMsIAotICAgIDg4LCAxLCAyMjgsIDE3LCAyNTMsIDg4LCAxLCAyMjgsIDE5NywgMjUzLCA4OCwgMSwgMjMxLCAxNTYsIDI1MywgODgsIDEsIAotICAgIDI0MSwgMTAyLCAyNTMsIDg4LCAxLCAyMTIsIDE1OSwgMjUzLCA4OCwgMSwgMjEzLCAzOCwgMjUzLCA4OCwgMSwgMjE0LCAKLSAgICAyMzIsIDI1MywgODgsIDEsIDIyNCwgMjEsIDI1MywgODgsIDEsIDIzMywgODIsIDI1MywgODgsIDEsIDIyMiwgMTAwLCAyNTMsIAotICAgIDg4LCAxLCAyMTIsIDg3LCAyNTMsIDg4LCAxLCAyMjAsIDI0MywgMjUzLCA4OCwgMSwgMjEyLCA2NywgMjUzLCA4OCwgMSwgCi0gICAgMjIwLCAxMjQsIDI1MywgODgsIDEsIDIxOSwgMTI5LCAyNTMsIDg4LCAxLCAyNDEsIDIyMiwgMjUzLCA4OCwgMjU0LCAxODEsIAotICAgIDc3LCAyMTcsIDMyLCAxMTcsIDE3NiwgMTEwLCAxMjIsIDYyLCAyMjUsIDI2LCAzLCAxMTcsIDE3NiwgMTEwLCAxMjIsIDYyLCAKLSAgICAyMjUsIDI2LCAyMzMsIDEwOCwgMTE3LCAxNzYsIDExMCwgMTIyLCA2MiwgMjI1LCAyNiwgMjMzLCAxMDgsIDEyMiwgNjIsIAotICAgIDExMCwgMTE3LCAxNzYsIDIyNSwgMjYsIDIzMywgMTA4LCAxMTcsIDIyMywgMTI5LCAxMTAsIDEyMiwgMjIzLCAxMzEsIDIyNSwgCi0gICAgMjYsIDIzMywgMTA4LCAxMjIsIDIyMywgMTMxLCAxMTAsIDExNywgMjIzLCAxMjksIDIyNSwgMjYsIDIzNSwgMjE1LCAyMjYsIAotICAgIDEyNiwgMSwgMjU0LCA3NiwgMjM1LCAyMTUsIDIyNiwgMTI2LCAxLCAyNTEsIDIwMiwgMjM1LCAyMTUsIDIyNiwgMTI2LCAxLCAKLSAgICAyNDIsIDE3NywgMjM1LCAyMTUsIDIyNiwgMTI2LCAxLCAyNDgsIDEzMywgMjM1LCAyMTUsIDIyNiwgMTI2LCAxLCAyNDEsIAotICAgIDIyMiwgMjM1LCAyMTUsIDIyNiwgMTI2LCAxLCAyMTQsIDE0LCAyMzUsIDIxNSwgMjI2LCAxMjYsIDEsIDIxMiwgOTAsIDIzNSwgCi0gICAgMjE1LCAyMjYsIDEyNiwgMSwgMjQxLCAxODAsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjE3LCAxNzksIDIzNSwgMjE1LCAKLSAgICAyMjYsIDEyNiwgMSwgMjEyLCAyMjMsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjM0LCAyMzAsIDIzNSwgMjE1LCAyMjYsIAotICAgIDEyNiwgMSwgMjMzLCAxMTcsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjMxLCAxMjksIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgCi0gICAgMjI4LCA1MCwgMjM1LCAyMTUsIDIyNiwgMTI2LCAxLCAyMjIsIDE2NCwgMjM1LCAyMTUsIDIyNiwgMTI2LCAxLCAyNTMsIDc4LCAKLSAgICAyMzUsIDIxNSwgMjI2LCAxMjYsIDEsIDIyNiwgOTYsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjIyLCAxOTMsIDIzNSwgCi0gICAgMjE1LCAyMjYsIDEyNiwgMSwgMjI0LCAxNzksIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjIzLCAyMTksIDIzNSwgMjE1LCAKLSAgICAyMjYsIDEyNiwgMSwgMjIwLCAyMDAsIDIzNSwgMjE1LCAyMjYsIDEyNiwgMSwgMjE3LCAyNDMsIDIzNSwgMjE1LCAyMjYsIAotICAgIDEyNiwgNTAsIDExNiwgMjM1LCAyMTUsIDIyNiwgMTI2LCA1MCwgMTA5LCAyMzUsIDIxNSwgMjI2LCAxMjYsIDUwLCAxNjYsIAotICAgIDIzNSwgMjE1LCAyMjYsIDEyNiwgNTAsIDE2MywgMjM1LCAyMTUsIDIyNiwgMTI2LCA1MCwgMjE3LCAyMDAsIDIzNSwgMjE1LCAKLSAgICAyMjYsIDEyNiwgNTAsIDIxNiwgMzgsIDIzNSwgMjE1LCAyMjYsIDEyNiwgNTAsIDEyMiwgMjQwLCAyMDAsIDIzNSwgMjE1LCAKLSAgICAyMjYsIDEyNiwgNTAsIDEyMiwgMjE3LCAxMDAsIDIzNSwgMjE1LCAyMjYsIDE5OCwgMSwgMjU0LCA3NiwgMjM1LCAyMTUsIAotICAgIDIyNiwgMTk4LCAxLCAyNTEsIDIwMiwgMjM1LCAyMTUsIDIyNiwgMTk4LCAxLCAyNDIsIDE3NywgMjM1LCAyMTUsIDIyNiwgCi0gICAgMTk4LCAxLCAyNDgsIDEzMywgMjM1LCAyMTUsIDIyNiwgMTk4LCAxLCAyNDEsIDIyMiwgMjM1LCAyMTUsIDIyNiwgMTk4LCAxLCAKLSAgICAyMTQsIDEzLCAyMzUsIDIxNSwgMjI2LCAxOTgsIDEsIDIxMiwgOTAsIDIzNSwgMjE1LCAyMjYsIDE5OCwgMSwgMjQxLCAxODAsIAotICAgIDIzNSwgMjE1LCAyMjYsIDE5OCwgMSwgMjE3LCAxNzksIDIzNSwgMjE1LCAyMjYsIDE5OCwgMSwgMjEyLCAyMjMsIDIzNSwgCi0gICAgMjE1LCAyMjYsIDE5OCwgMSwgMjM0LCAyMzAsIDIzNSwgMjE1LCAyMjYsIDE5OCwgMSwgMjMzLCAxMTcsIDIzNSwgMjE1LCAKLSAgICAyMjYsIDE5OCwgMSwgMjMxLCAxMjgsIDIzNSwgMjE1LCAyMjYsIDE5OCwgMSwgMjI4LCA1MCwgMjM1LCAyMTUsIDIyNiwgCi0gICAgMTk4LCAxLCAyMjIsIDE2NCwgMjM1LCAyMTUsIDIyNiwgMTk4LCAxLCAyMjYsIDk2LCAyMzUsIDIxNSwgMjI2LCAxOTgsIDEsIAotICAgIDIyMiwgMTkzLCAyMzUsIDIxNSwgMjI2LCAxOTgsIDEsIDIyMCwgMjAwLCAyMzUsIDIxNSwgMjI2LCAxOTgsIDEsIDIxNywgCi0gICAgMjQzLCAyMzUsIDIxNSwgMjI2LCAxOTgsIDUwLCAxMTYsIDIzNSwgMjE1LCAyMjYsIDE5OCwgNTAsIDEwOSwgMjM1LCAyMTUsIAotICAgIDIyNiwgMTk4LCA1MCwgMTY2LCAyMzUsIDIxNSwgMjI2LCAxOTgsIDUwLCAxNjMsIDIzNSwgMjE1LCAyMjYsIDE5OCwgNTAsIAotICAgIDIxNywgMjAwLCAyMzUsIDIxNSwgMjI2LCAxOTgsIDUwLCAyMTYsIDM4LCAyMzUsIDIxNSwgMjI2LCAxOTgsIDUwLCAxMjIsIAotICAgIDI0MCwgMjAwLCAyMzUsIDIxNSwgMjI2LCAxOTgsIDUwLCAxMjIsIDIxNywgMTAwLCA1MywgMTg1LCAxLCAyMjcsIDE2LCA2MSwgCi0gICAgNTMsIDE4NSwgMSwgMjEzLCAyOCwgNjEsIDUzLCAxODUsIDEsIDIxMywgMjgsIDI1NCwgMTQ4LCA1MywgMTg1LCAxLCAyMjcsIAotICAgIDE2LCA3MiwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgNzIsIDUzLCAxODUsIDEsIDIxMywgMjgsIDc0LCA1MywgMTg1LCAxLCAKLSAgICAyMjcsIDE2LCA3NSwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjI3LCA5OSwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjI3LCA5OSwgCi0gICAgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjU0LCAxODUsIDUzLCAxODUsIDEsIDIxMywgMjgsIDI1NCwgMTg1LCA1MywgMTg1LCAxLCAKLSAgICAyMjcsIDE2LCAyNTQsIDE0NywgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjU0LCAxNDcsIDUzLCAxODUsIDEsIDIyNywgMTYsIAotICAgIDI1NCwgMTIxLCA1MywgMTg1LCAxLCAyMTMsIDI4LCAyNTQsIDEyMSwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjU0LCAxNDIsIAotICAgIDUzLCAxODUsIDEsIDIxMywgMjgsIDI1NCwgMTQyLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNTQsIDE2MCwgNTMsIDE4NSwgMSwgCi0gICAgMjEzLCAyOCwgMjU0LCAxNjAsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI1NCwgMTQ2LCA1MywgMTg1LCAxLCAyMjcsIDE2LCAKLSAgICAyNDQsIDIzNiwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjQ0LCAyMzYsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI1MywgODMsIAotICAgIDUzLCAxODUsIDEsIDIxMywgMjgsIDI1MywgODMsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI1NCwgMTI5LCA1MywgMTg1LCAxLCAKLSAgICAyMTMsIDI4LCAyNTQsIDEyOSwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjU0LCAxNDAsIDUzLCAxODUsIDEsIDIxMywgMjgsIAotICAgIDI1NCwgMTQwLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyMjcsIDk4LCA1MywgMTg1LCAxLCAyMTMsIDI4LCAyMjcsIDk4LCA1MywgCi0gICAgMTg1LCAxLCAyMjcsIDE2LCAyNTQsIDg2LCA1MywgMTg1LCAxLCAyMTMsIDI4LCAyNTQsIDg2LCA1MywgMTg1LCAxLCAyMjcsIAotICAgIDE2LCAyNTQsIDEzOSwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjQ1LCAxMTksIDUzLCAxODUsIDEsIDIyNywgMTYsIDI0NSwgCi0gICAgMTE3LCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNTQsIDMyLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNTQsIDEzNywgNTMsIAotICAgIDE4NSwgMSwgMjEzLCAyOCwgMjU0LCAxMzcsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI0NSwgOTAsIDUzLCAxODUsIDEsIDIxMywgCi0gICAgMjgsIDI0NSwgOTAsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI0NSwgMTA1LCA1MywgMTg1LCAxLCAyMTMsIDI4LCAyNDUsIAotICAgIDEwNSwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjQ1LCA3NywgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjQ1LCA3NywgNTMsIDE4NSwgCi0gICAgMSwgMjEzLCAyOCwgMjU0LCAyNCwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjQ1LCA5NiwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgCi0gICAgMjU0LCAxMzYsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI0NSwgNzAsIDUzLCAxODUsIDEsIDIyNywgMTYsIDIyNywgNDEsIDUzLCAKLSAgICAxODUsIDEsIDIyNywgMTYsIDI0MCwgMTA2LCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNDUsIDE3MSwgNTMsIDE4NSwgMSwgCi0gICAgMjEzLCAyOCwgMjQ1LCAxNzEsIDUzLCAxODUsIDEsIDIyNywgMTYsIDI1MywgMjE1LCA1MywgMTg1LCAxLCAyMTMsIDI4LCAKLSAgICAyNTMsIDIxNSwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjM1LCAxNzksIDUzLCAxODUsIDEsIDIxMywgMjgsIDIzNSwgMTc5LCAKLSAgICA1MywgMTg1LCAxLCAyMjcsIDE2LCAyMjcsIDI1LCA1MywgMTg1LCAxLCAyMTMsIDI4LCAyMjcsIDI1LCA1MywgMTg1LCAxLCAKLSAgICAyMjcsIDE2LCAyNTMsIDIxMSwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjUzLCAyMTEsIDUzLCAxODUsIDEsIDIyNywgMTYsIAotICAgIDI1NCwgMTM1LCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNTMsIDE1MiwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjU0LCAxMzMsIAotICAgIDUzLCAxODUsIDEsIDIyNywgMTYsIDI1MywgMTQ2LCA1MywgMTg1LCAxLCAyMTMsIDI4LCAyNTMsIDE0NiwgNTMsIDE4NSwgMSwgCi0gICAgMjI3LCAxNiwgMjQ1LCA0MCwgNTMsIDE4NSwgMSwgMjEzLCAyOCwgMjQ1LCA0MCwgNTMsIDE4NSwgMSwgMjI3LCAxNiwgMjUzLCAKLSAgICAxMjIsIDUzLCAxODUsIDEsIDIxMywgMjgsIDI1MywgMTIyLCA1MywgMTg1LCAxLCAyMjcsIDE2LCAyNTQsIDEzMCwgNTMsIAotICAgIDE4NSwgMSwgMjEzLCAyOCwgMjU0LCAxMzAsIDUzLCAxODUsIDEsIDIyNywgMTYsIDIyNywgOCwgNTMsIDE4NSwgMSwgMjI3LCAKLSAgICAxNiwgMjUyLCA0NSwgMjIzLCAzOCwgMjEsIDExNiwgMjIzLCAzOCwgMjEsIDEwOSwgMjIzLCAzOCwgMjEsIDE2NiwgMjIzLCAKLSAgICAzOCwgMjEsIDE2MywgMjIzLCAzOCwgMjEsIDE4MCwgMjIzLCAzOCwgMjEsIDE4OSwgMjIzLCAzOCwgMjEsIDE5OCwgMjIzLCAKLSAgICAzOCwgMjEsIDE5NSwgMjIzLCAzOCwgMjEsIDIwMCwgMjIzLCAzOCwgNTAsIDIxNywgMjAwLCAyMjMsIDM4LCA1MCwgMjE2LCAKLSAgICAzOCwgMjIzLCAzOCwgNTAsIDIxNywgMTE1LCAyMjMsIDM4LCA1MCwgMjQzLCAyNDAsIDIyMywgMzgsIDUwLCAyNDQsIDgzLCAKLSAgICAyMjMsIDM4LCA1MCwgMjIwLCAzOSwgMjIzLCAzOCwgNTAsIDIyMSwgMzcsIDIyMywgMzgsIDUwLCAyNDUsIDE0MSwgMjIzLCAKLSAgICAzOCwgNTAsIDIyOSwgMjYsIDIyMywgMzgsIDUwLCAxMjIsIDI0MCwgMjAwLCAyMjMsIDM4LCA1MCwgMTE3LCAyNDAsIDIwMCwgCi0gICAgMjIzLCAzOCwgNTAsIDEzMywgMjQwLCAyMDAsIDIyMywgMzgsIDUwLCAyNDMsIDIzNywgMjQwLCAyMDAsIDIyMywgMzgsIDUwLCAKLSAgICAyNDQsIDUwLCAyNDAsIDIwMCwgMjIzLCAzOCwgNTAsIDIyMCwgNTMsIDI0MCwgMjAwLCAyMjMsIDM4LCA1MCwgMjIxLCA0MywgCi0gICAgMjQwLCAyMDAsIDIyMywgMzgsIDUwLCAyNDUsIDE1MCwgMjQwLCAyMDAsIDIyMywgMzgsIDUwLCAyMjksIDMxLCAyNDAsIAotICAgIDIwMCwgMjIzLCAzOCwgMjQzLCAyMjgsIDEyMiwgMjQyLCA5LCAyMjMsIDM4LCAyNDMsIDIyOCwgMTIyLCAyMjQsIDE2NiwgCi0gICAgMjIzLCAzOCwgMjQzLCAyMjgsIDEyMiwgMjE3LCAxMjEsIDIyMywgMzgsIDI0MywgMjI4LCAxMTcsIDIxNywgMTE5LCAxMTIsIAotICAgIDUsIDI1MCwgMTg3LCAxMTIsIDUsIDI1MywgMjQyLCAxMTIsIDUsIDIxNCwgMTI4LCAxMTIsIDUsIDIzNSwgMTA0LCAxMTIsIAotICAgIDUsIDIxNSwgMTMyLCAxMTIsIDEsIDYxLCAxMTIsIDEsIDI1NCwgMjMyLCAxMTIsIDEsIDcyLCAxMTIsIDEsIDIzNiwgMjgsIAotICAgIDExMiwgMSwgNjksIDExMiwgMSwgMjE1LCA5MiwgMTEyLCAxLCAxNjEsIDE0OSwgMTEyLCAxLCAxNjEsIDIyMywgODIsIDExMiwgCi0gICAgMSwgMTYxLCAxNTAsIDExMiwgMSwgMTYxLCAyMzIsIDIxNCwgMTEyLCAxLCA3NCwgMTEyLCAxLCAyNTQsIDEwOCwgMTEyLCAxLCAKLSAgICA3NSwgMTEyLCAxLCAyNTMsIDEwOCwgMTEyLCAxLCAxODEsIDExMiwgMSwgMjM0LCAxMzgsIDExMiwgMSwgMjQzLCAxMTAsIAotICAgIDExMiwgMSwgMjQyLCAyMjUsIDExMiwgMSwgMjI5LCAxNTksIDExMiwgMSwgMjUwLCAyMTksIDExMiwgMSwgMjUwLCA5MiwgCi0gICAgMTEyLCAxLCAyMzUsIDEzOSwgMTEyLCAxLCAyMzUsIDExNSwgMTEyLCAxLCAyMjgsIDIzLCAxMTIsIDEsIDIxNiwgMTE1LCAKLSAgICAxMTIsIDEsIDIxNiwgMTA1LCAxMTIsIDEsIDI0OCwgODYsIDExMiwgMSwgMjQ4LCA3MCwgMTEyLCAxLCAyMjgsIDE5OCwgCi0gICAgMTEyLCAxLCAyMTgsIDUyLCAxMTIsIDEsIDIxNywgMTYxLCAxMTIsIDEsIDI0OCwgMTY0LCAxMTIsIDEsIDI0NywgMjMyLCAKLSAgICAxMTIsIDEsIDIwNSwgMTEyLCAxLCAxOTMsIDExMiwgMSwgMjI2LCAyMywgMTEyLCAxLCAyNTIsIDEwNywgMTEyLCAxLCAyNTEsIAotICAgIDE5NSwgMTEyLCAxLCAxODgsIDExMiwgMSwgMTg2LCAxMTIsIDEsIDIwMywgMTEyLCAxLCAyMzMsIDE1NywgMTEyLCAxLCAKLSAgICAyMTUsIDEsIDExMiwgMSwgMjIxLCAyNCwgMTEyLCAxLCAyMTksIDE1NywgMTEyLCAxLCAyMjIsIDIwMiwgMTEyLCAxLCAxNTksIAotICAgIDExMiwgMSwgMjMyLCAyMTMsIDExMiwgMSwgNTMsIDE3OCwgMjMyLCAyMTIsIDExMiwgMSwgNTMsIDE3OCwgMjIzLCA4MSwgCi0gICAgMTEyLCAxLCA1MywgMTc4LCAyMjgsIDE4OSwgMTEyLCAzMCwgNSwgMjU0LCAyMzIsIDExMiwgMzAsIDUsIDI1MSwgMTkzLCAKLSAgICAyNTQsIDIzMiwgMTEyLCAzMCwgNSwgNzIsIDExMiwgMzAsIDUsIDIzNiwgMjgsIDExMiwgMzAsIDUsIDY5LCAxMTIsIDMwLCAKLSAgICA1LCAyMTUsIDkyLCAxMTIsIDMwLCA1LCAxNjEsIDE0OSwgMTEyLCAzMCwgNSwgMTYxLCAyMjMsIDgyLCAxMTIsIDMwLCA1LCAKLSAgICAxNjEsIDE1MCwgMTEyLCAzMCwgNSwgMTYxLCAyMzIsIDIxNCwgMTEyLCAzMCwgNSwgNzQsIDExMiwgMzAsIDUsIDI1NCwgCi0gICAgMTA4LCAxMTIsIDMwLCA1LCA3NSwgMTEyLCAzMCwgNSwgMjUzLCAxMDgsIDExMiwgMjE0LCAxMzMsIDExMiwgMjQ4LCAxMjMsIAotICAgIDExMiwgNTEsIDI0OCwgMTIzLCAxMTIsIDIyNSwgMjcsIDI0NywgNzQsIDExMiwgMjI1LCAyNywgNTEsIDI0NywgNzQsIDExMiwgCi0gICAgMjI1LCAyNywgMjMyLCAyNDIsIDExMiwgMjI1LCAyNywgMjQ5LCA3NywgMTM0LCAxMTIsIDIyNSwgMjcsIDIzMiwgMTcwLCAKLSAgICAxMTIsIDUwLCAxMTYsIDExMiwgNTAsIDEwOSwgMTEyLCA1MCwgMTY2LCAxMTIsIDUwLCAxNjMsIDExMiwgNTAsIDE4MCwgCi0gICAgMTEyLCA1MCwgMTg5LCAxMTIsIDUwLCAxOTgsIDExMiwgNTAsIDE5NSwgMTEyLCA1MCwgMjAwLCAxMTIsIDUwLCAyMTcsIAotICAgIDIwMCwgMTEyLCA1MCwgMjE2LCAzOCwgMTEyLCA1MCwgMjE3LCAxMTUsIDExMiwgNTAsIDI0MywgMjQwLCAxMTIsIDUwLCAKLSAgICAyNDQsIDgzLCAxMTIsIDUwLCAyMjAsIDM5LCAxMTIsIDUwLCAyMjEsIDM3LCAxMTIsIDUwLCAyNDUsIDE0MSwgMTEyLCA1MCwgCi0gICAgMjI5LCAyNiwgMTEyLCA1MCwgMTIyLCAyNDAsIDIwMCwgMTEyLCA1MCwgMTIyLCAyMTcsIDEwMCwgMTEyLCAyMSwgMjEyLCAKLSAgICA3OSwgMTEyLCAyMSwgMTE2LCAxMTIsIDIxLCAxMDksIDExMiwgMjEsIDE2NiwgMTEyLCAyMSwgMTYzLCAxMTIsIDIxLCAxODAsIAotICAgIDExMiwgMjEsIDE4OSwgMTEyLCAyMSwgMTk4LCAxMTIsIDIxLCAxOTUsIDExMiwgMjEsIDIwMCwgMjA4LCA1LCAyNTAsIDE4NywgCi0gICAgMjA4LCA1LCAyNTMsIDI0MiwgMjA4LCA1LCAyMTQsIDEyOCwgMjA4LCAxLCA2MSwgMjA4LCAxLCAyNTQsIDIzMiwgMjA4LCAxLCAKLSAgICA3MiwgMjA4LCAxLCAyMzYsIDI4LCAyMDgsIDEsIDY5LCAyMDgsIDEsIDIxNSwgOTIsIDIwOCwgMSwgNzQsIDIwOCwgMSwgCi0gICAgMjU0LCAxMDgsIDIwOCwgMSwgNzUsIDIwOCwgMSwgMjUzLCAxMDgsIDIwOCwgMSwgMTgxLCAyMDgsIDEsIDIzNCwgMTM4LCAKLSAgICAyMDgsIDEsIDI0MywgMTEwLCAyMDgsIDEsIDI0MiwgMjI1LCAyMDgsIDEsIDIyOSwgMTU5LCAyMDgsIDEsIDI1MCwgMjE5LCAKLSAgICAyMDgsIDEsIDI1MCwgOTIsIDIwOCwgMSwgMjM1LCAxMzksIDIwOCwgMSwgMjM1LCAxMTUsIDIwOCwgMSwgMjI4LCAyMywgCi0gICAgMjA4LCAxLCAyMTYsIDExNSwgMjA4LCAxLCAyMTYsIDEwNSwgMjA4LCAxLCAyNDgsIDg2LCAyMDgsIDEsIDI0OCwgNzUsIAotICAgIDIwOCwgMSwgMjQ4LCA3MCwgMjA4LCAxLCAyMjMsIDE5MiwgMjA4LCAxLCAyMjgsIDE5OCwgMjA4LCAxLCAyMTgsIDUyLCAKLSAgICAyMDgsIDEsIDIxNywgMTYxLCAyMDgsIDEsIDI0OCwgMTY0LCAyMDgsIDEsIDI0NywgMjMyLCAyMDgsIDEsIDIwNSwgMjA4LCAKLSAgICAxLCAxOTMsIDIwOCwgMSwgMjI2LCAyMywgMjA4LCAxLCAyNTIsIDEwNywgMjA4LCAxLCAyNTEsIDE5NSwgMjA4LCAxLCAxODgsIAotICAgIDIwOCwgMSwgMTg2LCAyMDgsIDEsIDIwMywgMjA4LCAxLCAyMzMsIDE1NywgMjA4LCAxLCAyMTUsIDEsIDIwOCwgMSwgMjIxLCAKLSAgICAyNCwgMjA4LCAxLCAyMTksIDE1NywgMjA4LCAxLCAyMjIsIDIwMiwgMjA4LCAxLCAxNTksIDIwOCwgMzAsIDUsIDI1NCwgCi0gICAgMjMyLCAyMDgsIDMwLCA1LCA3MiwgMjA4LCAzMCwgNSwgMjM2LCAyOCwgMjA4LCAzMCwgNSwgNjksIDIwOCwgMzAsIDUsIAotICAgIDIxNSwgOTIsIDIwOCwgMzAsIDUsIDc0LCAyMDgsIDMwLCA1LCAyNTQsIDEwOCwgMjA4LCAzMCwgNSwgNzUsIDIwOCwgMzAsIAotICAgIDUsIDI1MywgMTA4LCAyMDgsIDUsIDIxNCwgMTMzLCAyMDgsIDUsIDIyOCwgNjAsIDIwOCwgMjU0LCAxODEsIDUyLCAyMDgsIAotICAgIDI0NSwgODAsIDUyLCAyMDgsIDUwLCA1MiwgMjA4LCAyMjIsIDkyLCA3NywgMjA4LCA1MSwgMjIyLCA5MiwgNzcsIDIwOCwgCi0gICAgMjQ4LCAxMjMsIDIwOCwgNTEsIDI0OCwgMTIzLCAxNSwgNSwgNjEsIDE1LCA1LCAxMTgsIDI5LCA2MSwgMTUsIDUsIDExOCwgCi0gICAgMjksIDI1MiwgOTQsIDE1LCA1LCAxMTgsIDI5LCAyNDMsIDgxLCAyMTcsIDE5MiwgMTUsIDUsIDExOCwgMjksIDE1OSwgMTUsIAotICAgIDUsIDExOCwgMjksIDIzNiwgMzAsIDE1LCA1LCAxMTgsIDI5LCAyMzMsIDEzOSwgMjQyLCA3NSwgMTUsIDUsIDExOCwgMjksIAotICAgIDIzMCwgMTMxLCAxNSwgNSwgMTE4LCAyOSwgMjIyLCAxOTAsIDE1LCA1LCAyNTQsIDIzNCwgMTUsIDUsIDI1NCwgMTg1LCAxNSwgCi0gICAgNSwgMjU0LCAxODYsIDI5LCAyNTMsIDE0NCwgMTUsIDUsIDI1NCwgMTg2LCAyOSwgMjQ2LCAyMiwgMjQyLCA3NSwgMTUsIDUsIAotICAgIDI1NCwgMTg2LCAyOSwgMjQzLCA5NCwgMTUsIDUsIDI1NCwgMTg2LCAyOSwgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAKLSAgICAyNTQsIDE4NiwgMjksIDE1OSwgMTUsIDUsIDI1NCwgMTg2LCAyOSwgMjM2LCAzMSwgMjQyLCA3NSwgMTUsIDUsIDI1NCwgCi0gICAgMTg2LCAyOSwgMjM2LCA0LCAxNSwgNSwgMjU0LCAxODYsIDI5LCAyMzMsIDE0MCwgMTUsIDUsIDI1NCwgMTg2LCAyOSwgMjIwLCAKLSAgICAyMjgsIDE1LCA1LCAyNTQsIDE4NiwgMjksIDExMSwgOTQsIDExMSwgOTQsIDY5LCAxNSwgNSwgMjU0LCAxODYsIDI0MiwgNzUsIAotICAgIDE1LCA1LCAyNTQsIDE4MywgMTUsIDUsIDI1NCwgMTg0LCAyOSwgMjUyLCA3OSwgMTUsIDUsIDI1NCwgMTg0LCAyOSwgMjQzLCAKLSAgICA4MSwgMjE3LCAxOTIsIDE1LCA1LCAyNTQsIDE4NCwgMjksIDIzMSwgMTU3LCA5NCwgMjQ1LCAxMDgsIDE1LCA1LCAyNTQsIAotICAgIDE4NCwgMjksIDIyMSwgMjIsIDE1LCA1LCAyNTQsIDE4NCwgMjksIDIxOCwgMjIsIDE1LCA1LCAyNTQsIDE2MCwgMTUsIDUsIAotICAgIDI1NCwgOTQsIDE1LCA1LCAyNTQsIDk1LCAyOSwgMjQ1LCA1MCwgMTUsIDUsIDI1NCwgOTUsIDI5LCAyMjAsIDE5MCwgOTQsIAotICAgIDI0MiwgMTY2LCAxNSwgNSwgMjU0LCA4NiwgMTUsIDUsIDI1NCwgODcsIDI5LCAyNTQsIDg2LCAxNSwgNSwgMjU0LCA4NywgCi0gICAgMjksIDI0NywgMTY4LCAxNSwgNSwgMjU0LCA4NywgMjksIDI0MiwgMTY2LCAxNSwgNSwgMjU0LCA4NywgMjksIDE1OSwgMTUsIAotICAgIDUsIDI1NCwgODcsIDI5LCAyMzUsIDMsIDE1LCA1LCAyNTQsIDg3LCAyOSwgMjM0LCAxMDEsIDE1LCA1LCAyNTQsIDg3LCAyOSwgCi0gICAgMjIwLCAyNDMsIDE1LCA1LCAyNTQsIDg3LCAyOSwgMjE1LCAxMDAsIDE1LCA1LCAyNTQsIDgzLCAxNSwgNSwgMjU0LCA3NiwgCi0gICAgMTUsIDUsIDI1NCwgNDEsIDE1LCA1LCAyNTQsIDQyLCAyOSwgMjIwLCAyNDMsIDE1LCA1LCAyNTQsIDMyLCAxNSwgNSwgMjU0LCAKLSAgICAzMywgMTEwLCAyNTQsIDMyLCAxNSwgNSwgMjU0LCAzMywgMTMzLCAyMTcsIDM4LCAxNSwgNSwgMjU0LCAzMywgOTQsIDIzMCwgCi0gICAgMzUsIDIyNywgMzAsIDI1NCwgMzMsIDk0LCAyMzAsIDM0LCAxNSwgNSwgMjU0LCAzMywgOTQsIDIzMCwgMzUsIDIxOSwgMTY1LCAKLSAgICAxNSwgNSwgMjU0LCA1LCAxNSwgNSwgMjUzLCAyMzUsIDE1LCA1LCAyNTMsIDIwNSwgMTUsIDUsIDI1MywgMjA2LCAyOSwgCi0gICAgMjMzLCAyMTcsIDE1LCA1LCAyNTMsIDE3OSwgMTUsIDUsIDI1MywgMTUxLCAxNSwgNSwgMjUzLCAxNDYsIDE1LCA1LCAyNTMsIAotICAgIDE0NywgMjEyLCAzMywgMjE3LCAxOTIsIDE1LCA1LCAyNTMsIDE0NywgMjM1LCA3LCAyMTcsIDE5MiwgMTUsIDUsIDI1MywgCi0gICAgMTQ3LCAxMTAsIDI1MywgMTQ3LCAyMTYsIDc4LCAxMTAsIDIxNiwgNzgsIDIxNiwgNzgsIDExMCwgMjE2LCA3OCwgMjI2LCAKLSAgICAxNDksIDE1LCA1LCAyNTMsIDE0NywgMTEwLCAyNTMsIDE0NywgMTEwLCAyNTMsIDE0NiwgMTUsIDUsIDI1MywgMTQ3LCAxMTAsIAotICAgIDI1MywgMTQ3LCAxMTAsIDI1MywgMTQ3LCAyNDksIDY1LCAyNTMsIDE0NywgMTEwLCAyNTMsIDE0NywgMTEwLCAyNTMsIDE0NiwgCi0gICAgMTUsIDUsIDI1MywgMTQ0LCAxNSwgNSwgMjUzLCAxNDEsIDE1LCA1LCAyNTIsIDEwNywgMTUsIDUsIDI1MiwgOTQsIDE1LCA1LCAKLSAgICAyNTIsIDg5LCAxNSwgNSwgMjUyLCA4NiwgMTUsIDUsIDI1MiwgODAsIDE1LCA1LCAyNTIsIDgxLCAxMTAsIDI1MiwgODAsIAotICAgIDE1LCA1LCAyNTIsIDc5LCAxNSwgNSwgMTM0LCAxNSwgNSwgMjUyLCA1OSwgMTUsIDUsIDI1MSwgMTg0LCAxNSwgNSwgMjUxLCAKLSAgICAxODUsIDI5LCA2MSwgMTUsIDUsIDI1MSwgMTg1LCAyOSwgMjQzLCA3MiwgMTUsIDUsIDI1MSwgMTg1LCAyOSwgMjM2LCAzMSwgCi0gICAgMjQyLCA3NSwgMTUsIDUsIDI1MSwgNTQsIDE1LCA1LCAyNTEsIDU1LCAxMTAsIDI1MSwgNTUsIDI1NCwgMTg1LCAxNSwgNSwgCi0gICAgMjUxLCA1NSwgMTEwLCAyNTEsIDU1LCAyMTUsIDE2MCwgMTUsIDUsIDI1MSwgNTUsIDI0OSwgNjUsIDI1MSwgNTQsIDE1LCA1LCAKLSAgICAyNTEsIDM4LCAxNSwgNSwgMjUxLCAzOSwgMTEwLCAyNTEsIDM4LCAxNSwgNSwgMjUxLCAyNywgMTUsIDUsIDI1MSwgMjYsIAotICAgIDE1LCA1LCAyNDgsIDE2NCwgMTUsIDUsIDI0OCwgMTU1LCAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAxMTgsIDk0LCAKLSAgICAyMzEsIDIxMCwgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIDc1LCAyOSwgMjU0LCA0MSwgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIAotICAgIDc1LCAyOSwgMjUyLCA3OSwgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIDc1LCAyOSwgMjUxLCAxODQsIDE1LCA1LCAyNDgsIDE1NiwgCi0gICAgMjM0LCA3NSwgMjksIDI0MywgMTEwLCAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAyNDMsIDExMSwgOTQsIDIzMSwgCi0gICAgMjEwLCAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAyNDIsIDE5MCwgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIDc1LCAKLSAgICAyOSwgMjQyLCAxNzMsIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIDI0MiwgODQsIDE1LCA1LCAyNDgsIDE1NiwgCi0gICAgMjM0LCA3NSwgMjksIDE1OSwgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIDc1LCAyOSwgMjM1LCAxNzcsIDE1LCA1LCAyNDgsIAotICAgIDE1NiwgMjM0LCA3NSwgMjksIDIzNSwgMTc4LCA5NCwgMjMyLCAxNTYsIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIAotICAgIDIzNCwgMjQ3LCAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAyMzMsIDE1NywgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIAotICAgIDc1LCAyOSwgMjMyLCAxNTYsIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIDIzMiwgMTU3LCA5NCwgMjMxLCAyMDksIAotICAgIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIDIzMiwgMTQyLCAxNSwgNSwgMjQ4LCAxNTYsIDIzNCwgNzUsIDI5LCAKLSAgICAyMjksIDE4NywgMTUsIDUsIDI0OCwgMTU2LCAyMzQsIDc1LCAyOSwgMjI2LCAxNTAsIDk0LCAyMjYsIDE0OSwgMTUsIDUsIAotICAgIDI0OCwgMTU2LCAyMzQsIDc1LCAyOSwgMjIwLCAxMTcsIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIDIxOCwgMjIsIAotICAgIDE1LCA1LCAyNDgsIDE1NiwgMjM0LCA3NSwgMjksIDIxNSwgMTk4LCA5NCwgMjQyLCAxNzMsIDE1LCA1LCAyNDgsIDE1NiwgCi0gICAgMjM0LCA3NSwgMjksIDIxNSwgMTAwLCAxNSwgNSwgMjQ4LCAxMzIsIDE1LCA1LCAyNDgsIDExMSwgMTUsIDUsIDI0OCwgMTEwLCAKLSAgICAxNSwgNSwgMjQ4LCAxMDksIDE1LCA1LCAyNDcsIDIxMSwgMTUsIDUsIDI0NywgMTk0LCAxNSwgNSwgMjQ3LCAxNjksIDE1LCAKLSAgICA1LCAyNDcsIDE3MCwgMjksIDIyMCwgMjQzLCAxNSwgNSwgMjQ3LCAxNjgsIDE1LCA1LCAyNDcsIDE1OCwgMTUsIDUsIDI0NywgCi0gICAgMTU5LCAyMzQsIDIxMywgMTExLCAyNDIsIDc2LCAyNDcsIDEzOSwgMTUsIDUsIDI0NywgMTM5LCAxNSwgNSwgMjQ2LCAzMywgCi0gICAgMTUsIDUsIDI0NiwgMzQsIDExMCwgMjQ2LCAzMywgMTUsIDUsIDI0NiwgMzQsIDI0MiwgNzUsIDE1LCA1LCAyNDYsIDM0LCAKLSAgICAyMjAsIDIyNSwgMTUsIDUsIDI0NiwgMzEsIDE1LCA1LCAyNDYsIDMyLCAyOSwgMjQ1LCAzNywgMTUsIDUsIDI0NiwgMzAsIAotICAgIDE1LCA1LCAyNDYsIDI5LCAxNSwgNSwgMjQ2LCAyOCwgMTUsIDUsIDI0NiwgMjcsIDE1LCA1LCAyNDYsIDIzLCAxNSwgNSwgCi0gICAgMjQ2LCAyMSwgMTUsIDUsIDI0NiwgMjIsIDI0MiwgNzUsIDE1LCA1LCAyNDYsIDIyLCAyNDIsIDc2LCAyNDIsIDc1LCAxNSwgCi0gICAgNSwgMjQ2LCAyMCwgMTUsIDUsIDI0NiwgMTMsIDE1LCA1LCA3NCwgMTUsIDUsIDE5MSwgMjksIDIyNiwgMTQ5LCAxNSwgNSwgCi0gICAgMTkxLCAxMTAsIDE5MSwgMjI4LCA1MSwgMTEwLCAyMjgsIDUwLCAxNSwgNSwgMjQ1LCAxOTAsIDE1LCA1LCAyNDUsIDE5MSwgCi0gICAgMjksIDExOCwgOTQsIDI0MiwgMzAsIDk0LCAyNDgsIDE2NCwgMTUsIDUsIDI0NSwgMTkxLCAyOSwgMjQzLCA3MiwgMTUsIDUsIAotICAgIDI0NSwgMTkxLCAyOSwgMjMxLCA0MiwgMTUsIDUsIDI0NSwgMTkxLCAyOSwgMjIyLCAxNzksIDE1LCA1LCAyNDUsIDE5MSwgCi0gICAgMjksIDIyMCwgMjQzLCAxNSwgNSwgMjQ1LCAxOTEsIDI5LCA2OSwgMTUsIDUsIDI0NSwgMTY3LCAxNSwgNSwgMjQ1LCAxNTcsIAotICAgIDE1LCA1LCAyNDUsIDEzMSwgMTUsIDUsIDI0NSwgMTA4LCAxNSwgNSwgMjQ1LCAxMDksIDI5LCAyNDMsIDgwLCAxNSwgNSwgCi0gICAgMjQ1LCAxMDksIDI5LCAyNDMsIDgxLCAyMTcsIDE5MiwgMTUsIDUsIDI0NSwgMTA5LCAyOSwgMjMxLCAxNTYsIDE1LCA1LCAKLSAgICAyNDUsIDEwOSwgMjQ5LCA2NSwgMjQ1LCAxMDgsIDE1LCA1LCAyNDUsIDEwOSwgMjI3LCAzMCwgMjQ1LCAxMDgsIDE1LCA1LCAKLSAgICAyNDUsIDEwOSwgMjE5LCAxNjUsIDE1LCA1LCAyNDUsIDUyLCAxNSwgNSwgMjQ1LCA1MCwgMTUsIDUsIDI0NSwgMzcsIDE1LCAKLSAgICA1LCAyNDQsIDIzNCwgMTUsIDUsIDI0NCwgMjM1LCAyOSwgNjEsIDE1LCA1LCAyNDQsIDIzNSwgMjksIDExOCwgOTQsIDIzMywgCi0gICAgMTI4LCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAxMTgsIDk0LCAyMzMsIDEyOSwgMjksIDIzMywgMTI4LCAxNSwgNSwgMjQ0LCAKLSAgICAyMzUsIDI5LCAyNTQsIDMyLCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAyNTIsIDk0LCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAyNDYsIAotICAgIDIyLCAyNDIsIDc1LCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAyNDYsIDIyLCAyNDIsIDc2LCAyNDIsIDc1LCAxNSwgNSwgMjQ0LCAKLSAgICAyMzUsIDI5LCAxNTksIDE1LCA1LCAyNDQsIDIzNSwgMjksIDI0MiwgMzAsIDI0MiwgNzUsIDE1LCA1LCAyNDQsIDIzNSwgMjksIAotICAgIDIzNiwgMzEsIDI0MiwgNzUsIDE1LCA1LCAyNDQsIDIzNSwgMjksIDIzNCwgMjEyLCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAKLSAgICAyMzQsIDIxMywgMjE5LCAxNjUsIDE1LCA1LCAyNDQsIDIzNSwgMjksIDIzMywgMjM2LCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAKLSAgICAyMzMsIDE1NywgMTUsIDUsIDI0NCwgMjM1LCAyOSwgMjMzLCAxMjksIDI5LCAyMzMsIDEyOCwgMTUsIDUsIDI0NCwgMjM1LCAKLSAgICAyOSwgMjMzLCAxMywgMTUsIDUsIDI0NCwgMjM1LCAyOSwgMjMyLCAxNTYsIDE1LCA1LCAyNDQsIDIzNSwgMjksIDIxNSwgCi0gICAgMTk3LCAxNSwgNSwgMjQ0LCAyMzUsIDI5LCAyMTUsIDE4OCwgMTUsIDUsIDI0MywgMTEwLCAxNSwgNSwgMjQzLCAxMTEsIAotICAgIDI0MiwgNzUsIDE1LCA1LCAyNDMsIDEwOCwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMTE4LCA5NCwgMjQ4LCAxNjUsIDk0LCAKLSAgICAxNTksIDE1LCA1LCAyNDMsIDEwOSwgMjksIDExOCwgOTQsIDE1OSwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMTE4LCA5NCwgCi0gICAgMjM2LCAzMCwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjU0LCAxODQsIDIxNywgMTkzLCA5NCwgMjE4LCA0MSwgMTUsIDUsIAotICAgIDI0MywgMTA5LCAyOSwgMjU0LCAzMiwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjUzLCAxNDYsIDE1LCA1LCAyNDMsIDEwOSwgCi0gICAgMjksIDI1MywgMTQ1LCA5NCwgMjQzLCA5NCwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjUyLCA5NCwgMTUsIDUsIDI0MywgMTA5LCAKLSAgICAyOSwgMjUyLCA2MCwgOTQsIDIwMywgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjUxLCAyNywgMTUsIDUsIDI0MywgMTA5LCAyOSwgCi0gICAgMjUxLCAyOCwgOTQsIDIwMywgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQ4LCAxNjQsIDE1LCA1LCAyNDMsIDEwOSwgMjksIAotICAgIDI0NywgMjExLCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyNDcsIDE3MCwgMjksIDIyMCwgMjQzLCAxNSwgNSwgMjQzLCAxMDksIAotICAgIDI5LCAyNDYsIDMxLCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyNDUsIDEzMSwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQ1LCAKLSAgICAxMzIsIDk0LCAyMzMsIDE1NywgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQ1LCAxMDgsIDE1LCA1LCAyNDMsIDEwOSwgMjksIAotICAgIDI0NSwgMTA5LCAyOSwgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI0MywgODEsIDIxNywgMTkyLCAKLSAgICAxNSwgNSwgMjQzLCAxMDksIDI5LCAyNDMsIDcyLCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyNDIsIDE5MCwgMTUsIDUsIDI0MywgCi0gICAgMTA5LCAyOSwgMjQyLCAxODgsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDI0MiwgMTg5LCA5NCwgNjEsIDE1LCA1LCAyNDMsIAotICAgIDEwOSwgMjksIDI0MiwgMTc0LCA5NCwgMjE5LCAyNywgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQyLCAzMCwgOTQsIDIzMiwgCi0gICAgMTU3LCA5NCwgMjQ1LCAzNywgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQyLCAxMiwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjQyLCAKLSAgICAxMywgOTQsIDIzMywgMTU3LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyNDEsIDE2NiwgOTQsIDIzMywgMTMsIDE1LCA1LCAyNDMsIAotICAgIDEwOSwgMjksIDI0MCwgMjA4LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMzYsIDMxLCAyNDIsIDc1LCAxNSwgNSwgMjQzLCAKLSAgICAxMDksIDI5LCAyMzUsIDE2NCwgOTQsIDI0MCwgMjEzLCA5NCwgMjUzLCAxNDYsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDIzNCwgCi0gICAgMjQ3LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMzQsIDIxMiwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjM0LCA5OCwgMTUsIDUsIAotICAgIDI0MywgMTA5LCAyOSwgMjM0LCA5OSwgOTQsIDIzMywgMTI4LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMzMsIDIzNywgOTQsIAotICAgIDI1NCwgMzIsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDIzMywgMTU3LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMzEsIDE1NywgCi0gICAgOTQsIDI0NSwgMTA4LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMzEsIDQyLCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMjgsIDUwLCAKLSAgICAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMjgsIDUxLCAxMTAsIDIyOCwgNTAsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDE5MywgMTUsIAotICAgIDUsIDI0MywgMTA5LCAyOSwgMjIyLCAxNzksIDE1LCA1LCAyNDMsIDEwOSwgMjksIDIyMiwgMTQ3LCAxNSwgNSwgMjQzLCAKLSAgICAxMDksIDI5LCAyMjAsIDI0MywgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjIwLCAyNDQsIDk0LCAyMTYsIDYyLCAxNSwgNSwgCi0gICAgMjQzLCAxMDksIDI5LCAyMjAsIDIxMCwgMTUsIDUsIDI0MywgMTA5LCAyOSwgMjE4LCAyNDQsIDE1LCA1LCAyNDMsIDEwOSwgCi0gICAgMjksIDIxOCwgMjIsIDE1LCA1LCAyNDMsIDEwOSwgMjksIDY5LCAxNSwgNSwgMjQzLCAxMDksIDI5LCAyMTUsIDE4OCwgMTUsIAotICAgIDUsIDI0MywgMTA5LCAyOSwgMjE1LCAxODksIDk0LCAyNDYsIDMzLCAxNSwgNSwgMjQzLCAxMDksIDExMCwgMjQzLCAxMDgsIAotICAgIDE1LCA1LCAyNDMsIDEwMywgMTUsIDUsIDI0MywgMTA0LCAyNDksIDY1LCAyNDMsIDEwMywgMTUsIDUsIDI0MywgMTAxLCAxNSwgCi0gICAgNSwgMjQzLCAxMDIsIDExMCwgMjQzLCAxMDIsIDI0MywgNzMsIDExMCwgMjQzLCA3MiwgMTUsIDUsIDI0MywgOTQsIDE1LCA1LCAKLSAgICAyNDMsIDk1LCAyNDMsIDEwMiwgMTEwLCAyNDMsIDEwMiwgMjQzLCA3MywgMTEwLCAyNDMsIDcyLCAxNSwgNSwgMjQzLCA5MywgCi0gICAgMTUsIDUsIDI0MywgOTEsIDE1LCA1LCAyNDMsIDgyLCAxNSwgNSwgMjQzLCA4MCwgMTUsIDUsIDI0MywgODEsIDIxNywgMTkyLCAKLSAgICAxNSwgNSwgMjQzLCA4MSwgMTEwLCAyNDMsIDgwLCAxNSwgNSwgMjQzLCA4MSwgMjQ5LCA2NSwgMjQzLCA4MCwgMTUsIDUsIAotICAgIDI0MywgNzIsIDE1LCA1LCAyNDMsIDcxLCAxNSwgNSwgMjQzLCA2NiwgMTUsIDUsIDI0MywgMTIsIDE1LCA1LCAyNDMsIDEzLCAKLSAgICAyOSwgMjMzLCAyMTcsIDE1LCA1LCAyNDIsIDE5MCwgMTUsIDUsIDI0MiwgMTkxLCAyOSwgNzQsIDE1LCA1LCAyNDIsIDE5MSwgCi0gICAgMjksIDY5LCAxNSwgNSwgMjQyLCAxOTEsIDI0OSwgNjUsIDI0MiwgMTkwLCAxNSwgNSwgMjQyLCAxODgsIDE1LCA1LCAyNDIsIAotICAgIDE4OSwgMTEwLCAyNDIsIDE4OCwgMTUsIDUsIDI0MiwgMTg5LCAyNDksIDY1LCAyNDIsIDE4OCwgMTUsIDUsIDI0MiwgMTg1LCAKLSAgICAxNSwgNSwgMjQyLCAxNzMsIDE1LCA1LCAyNDIsIDE3NCwgMjQyLCA3NSwgMTUsIDUsIDI0MiwgMTcxLCAxNSwgNSwgMjQyLCAKLSAgICAxNzIsIDI5LCAxMTgsIDk0LCAyMzYsIDMwLCAxNSwgNSwgMjQyLCAxNzIsIDI5LCAyNDMsIDgxLCAyMTcsIDE5MiwgMTUsIDUsIAotICAgIDI0MiwgMTcyLCAyOSwgMjM2LCAzMCwgMTUsIDUsIDI0MiwgMTcyLCAyOSwgMjMyLCAxNTcsIDk0LCAyMzYsIDMwLCAxNSwgNSwgCi0gICAgMjQyLCAxNzIsIDI5LCAxOTMsIDE1LCA1LCAyNDIsIDE2OCwgMTUsIDUsIDI0MiwgMTY2LCAxNSwgNSwgMjQyLCAxNjcsIAotICAgIDI0OSwgNjUsIDI0MiwgMTY2LCAxNSwgNSwgMjQyLCAxNjcsIDI5LCAyNTIsIDk0LCAxNSwgNSwgMjQyLCAxNjcsIDI5LCAKLSAgICAyMTgsIDIyLCAxNSwgNSwgMjQyLCAxNjcsIDIxNywgMTkyLCAxNSwgNSwgMjQyLCA5MiwgMTUsIDUsIDI0MiwgOTMsIDI0OSwgCi0gICAgNjUsIDI0MiwgOTIsIDE1LCA1LCAyNDIsIDkwLCAxNSwgNSwgMjQyLCA5MSwgMjksIDIzNCwgMjQ3LCAxNSwgNSwgMjQyLCAKLSAgICA5MSwgMjksIDIzNCwgMjQ4LCAyOSwgMjM2LCAzMSwgMjQyLCA3NSwgMTUsIDUsIDI0MiwgOTEsIDI5LCAyMjgsIDUwLCAxNSwgCi0gICAgNSwgMjQyLCA5MSwgMjksIDIyMiwgMTgwLCA5NCwgMjE2LCA3NywgMTUsIDUsIDI0MiwgOTEsIDI0MiwgNzUsIDE1LCA1LCAKLSAgICAyNDIsIDg0LCAxNSwgNSwgMjQyLCA4NSwgMjksIDExOCwgOTQsIDIzMywgMjE3LCAxNSwgNSwgMjQyLCA4NSwgMjksIDIzMywgCi0gICAgMjE3LCAxNSwgNSwgMjQyLCA4NSwgMTEwLCAyNDIsIDg1LCAyMzIsIDE0OSwgMTUsIDUsIDI0MiwgNzksIDE1LCA1LCAyNDIsIAotICAgIDc3LCAxNSwgNSwgMjQyLCA3OCwgMjksIDIyMCwgMjQzLCAxNSwgNSwgMjQyLCA2OSwgMTUsIDUsIDI0MiwgNjgsIDE1LCA1LCAKLSAgICAyNDIsIDY1LCAxNSwgNSwgMjQyLCA2NCwgMTUsIDUsIDE1OSwgMTUsIDUsIDI0MiwgMzAsIDIxNywgMTkyLCAxNSwgNSwgCi0gICAgMjQyLCAzMCwgMjQyLCA3NSwgMTUsIDUsIDI0MiwgMTIsIDE1LCA1LCAyNDEsIDE2NSwgMTUsIDUsIDI0MSwgMTY2LCAyOSwgCi0gICAgMjUzLCAxNDYsIDE1LCA1LCAyNDEsIDE2NiwgMjksIDI1MywgMTQ0LCAxNSwgNSwgMjQxLCAxNjYsIDI5LCAyNTIsIDk0LCAKLSAgICAxNSwgNSwgMjQxLCAxNjYsIDI5LCAyNDcsIDEzOSwgMTUsIDUsIDI0MSwgMTY2LCAyOSwgMjQzLCAxMDEsIDE1LCA1LCAyNDEsIAotICAgIDE2NiwgMjksIDIzNCwgOTAsIDE1LCA1LCAyNDEsIDE2NiwgMjksIDIyOCwgNTAsIDE1LCA1LCAyNDEsIDE2NiwgMjksIDIyMCwgCi0gICAgMjQzLCAxNSwgNSwgMjQxLCAxNjYsIDI5LCA2OSwgMTUsIDUsIDI0MCwgMjEyLCAxNSwgNSwgMjQwLCAyMDgsIDE1LCA1LCAKLSAgICAyNDAsIDIwOSwgMjksIDI1NCwgMzIsIDE1LCA1LCAyNDAsIDIwOSwgMjksIDI0MiwgMTIsIDE1LCA1LCAyNDAsIDIwOSwgMjksIAotICAgIDIzNCwgMjEyLCAxNSwgNSwgMjQwLCAyMDksIDI5LCAyMzIsIDIyNiwgMTUsIDUsIDI0MCwgMjA5LCAyOSwgMjE1LCAxODgsIAotICAgIDE1LCA1LCAyNDAsIDIwNSwgMTUsIDUsIDcyLCAxNSwgNSwgMjQwLCAxNDYsIDYxLCAxNSwgNSwgMjQwLCAxMDgsIDE1LCA1LCAKLSAgICAyMzYsIDU4LCAxNSwgNSwgMjM2LCA1OSwgMTEwLCAyMzYsIDU5LCAyNTEsIDI3LCAxNSwgNSwgMjM2LCA1OSwgMTEwLCAyMzYsIAotICAgIDU5LCAyMTksIDE2NSwgMTUsIDUsIDIzNiwgMzMsIDE1LCA1LCAyMzYsIDMwLCAxNSwgNSwgMjM2LCAzMSwgMjQ3LCAxOTQsIAotICAgIDE1LCA1LCAyMzYsIDMxLCAyMjMsIDE4OCwgMTUsIDUsIDIzNiwgMzEsIDExMCwgMjM2LCAzMSwgMjIwLCAxOTQsIDExMCwgCi0gICAgMjIwLCAxOTQsIDIxNSwgMTg5LCAxMTAsIDIxNSwgMTg4LCAxNSwgNSwgMjM2LCAzMSwgMjQyLCA3NSwgMTUsIDUsIDIzNiwgCi0gICAgMjIsIDE1LCA1LCAyMzYsIDIzLCAyOSwgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAyMzYsIDIxLCAxNSwgNSwgMjM2LCAKLSAgICAxMSwgMTUsIDUsIDIzNiwgMTIsIDI5LCAyMTgsIDIyLCAxNSwgNSwgMjM2LCAxMiwgMjQ5LCA2NSwgMjM2LCAxMSwgMTUsIDUsIAotICAgIDIzNiwgMTIsIDIyNywgMzAsIDIzNiwgMTEsIDE1LCA1LCAyMzYsIDEyLCAyMTksIDE2NSwgMTUsIDUsIDIzNiwgNCwgMTUsIAotICAgIDUsIDIzNSwgMjUxLCAxNSwgNSwgMjM1LCAxNzcsIDE1LCA1LCAyMzUsIDE2MywgMTUsIDUsIDE4MSwgMTUsIDUsIDIzNSwgCi0gICAgMTcsIDI5LCA2MSwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyNTQsIDE2MCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyNTQsIDE2MSwgCi0gICAgOTQsIDIzMywgMjM2LCAxNSwgNSwgMjM1LCAxNywgMjksIDI1MywgMTQ0LCAxNSwgNSwgMjM1LCAxNywgMjksIDI1MiwgOTQsIAotICAgIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjUyLCA3OSwgMTUsIDUsIDIzNSwgMTcsIDI5LCAxMzQsIDE1LCA1LCAyMzUsIDE3LCAyOSwgCi0gICAgMjUxLCAxODQsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjQ1LCA1MCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyNDUsIDM3LCAxNSwgCi0gICAgNSwgMjM1LCAxNywgMjksIDI0MywgMTEwLCAxNSwgNSwgMjM1LCAxNywgMjksIDI0MywgOTQsIDE1LCA1LCAyMzUsIDE3LCAKLSAgICAyOSwgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjQzLCA3MiwgMTUsIDUsIDIzNSwgMTcsIDI5LCAKLSAgICAyNDMsIDczLCA5NCwgMjIxLCAyMywgOTQsIDYxLCAxNSwgNSwgMjM1LCAxNywgMjksIDI0MiwgMTkwLCAxNSwgNSwgMjM1LCAKLSAgICAxNywgMjksIDI0MiwgMTczLCAxNSwgNSwgMjM1LCAxNywgMjksIDI0MiwgMTY3LCA5NCwgMjIyLCAxNDcsIDE1LCA1LCAyMzUsIAotICAgIDE3LCAyOSwgMjQyLCAxNjcsIDI0OSwgNjUsIDI0MiwgMTY2LCAxNSwgNSwgMjM1LCAxNywgMjksIDI0MiwgOTIsIDE1LCA1LCAKLSAgICAyMzUsIDE3LCAyOSwgMjQyLCA2OCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMzYsIDMwLCAxNSwgNSwgMjM1LCAxNywgMjksIAotICAgIDIzNiwgMTEsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjM0LCAyNDcsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjM0LCAxMDEsIDE1LCAKLSAgICA1LCAyMzUsIDE3LCAyOSwgMjM0LCA5OCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMzMsIDEzLCAxNSwgNSwgMjM1LCAxNywgMjksIAotICAgIDIzMiwgMTU2LCAxNSwgNSwgMjM1LCAxNywgMjksIDIzMSwgMTU2LCAxNSwgNSwgMjM1LCAxNywgMjksIDIzMSwgMTU3LCA5NCwgCi0gICAgMjQ2LCAzMywgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMzEsIDE1NywgOTQsIDI0MiwgMTkwLCAxNSwgNSwgMjM1LCAxNywgMjksIAotICAgIDIzMSwgMTU3LCA5NCwgMjE3LCAyMjksIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjMxLCA0MiwgMTUsIDUsIDIzNSwgMTcsIDI5LCAKLSAgICAyMzEsIDQzLCA5NCwgMjI4LCA0NSwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMjksIDE4NywgMTUsIDUsIDIzNSwgMTcsIDI5LCAKLSAgICAyMjgsIDUwLCAxNSwgNSwgMjM1LCAxNywgMjksIDIyNSwgMjQwLCAxNSwgNSwgMjM1LCAxNywgMjksIDIyMywgNTEsIDE1LCAKLSAgICA1LCAyMzUsIDE3LCAyOSwgMjIyLCAyMDIsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjIyLCAxNDcsIDE1LCA1LCAyMzUsIDE3LCAKLSAgICAyOSwgMjIxLCAyNCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMjAsIDI0MywgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMjAsIDIxMCwgCi0gICAgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMjAsIDE1MCwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMjAsIDEwOCwgMTUsIDUsIDIzNSwgCi0gICAgMTcsIDI5LCAyMTgsIDI1MiwgMTUsIDUsIDIzNSwgMTcsIDI5LCAyMTgsIDEsIDE1LCA1LCAyMzUsIDE3LCAyOSwgNjksIDE1LCAKLSAgICA1LCAyMzUsIDE3LCAyOSwgMjE1LCAxOTcsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjE1LCAxODgsIDE1LCA1LCAyMzUsIDE3LCAKLSAgICAyOSwgMjE1LCAxNjMsIDI5LCAxOTMsIDE1LCA1LCAyMzUsIDE3LCAyOSwgMjE1LCAxMDAsIDE1LCA1LCAyMzUsIDE3LCAyOSwgCi0gICAgMjEyLCAzNywgMTUsIDUsIDIzNSwgMTUsIDE1LCA1LCAyMzUsIDE2LCAyNDksIDY1LCAyMzUsIDE1LCAxNSwgNSwgMjM1LCA4LCAKLSAgICAxNSwgNSwgMjM1LCA1LCAxNSwgNSwgMjM1LCAzLCAxNSwgNSwgMjM1LCAyLCAxNSwgNSwgMjM1LCAwLCAxNSwgNSwgMjM1LCAKLSAgICAxLCAxMTAsIDIzNSwgMCwgMTUsIDUsIDIzNCwgMjQ3LCAxNSwgNSwgMjM0LCAyNDgsIDI5LCAyMzYsIDMxLCAyNDIsIDc1LCAKLSAgICAxNSwgNSwgMjM0LCAyNDMsIDE1LCA1LCAyMzQsIDI0NCwgMjksIDI1MiwgOTQsIDE1LCA1LCAyMzQsIDI0NCwgMjQ5LCA2NSwgCi0gICAgMjM0LCAyNDMsIDE1LCA1LCAyMzQsIDI0MSwgMTUsIDUsIDIzNCwgMjQwLCAxNSwgNSwgMjM0LCAyMTIsIDE1LCA1LCAyMzQsIAotICAgIDIxMywgMjMzLCAxNDEsIDI5LCAxMTEsIDExMCwgMjMzLCAxNDEsIDI5LCA2OSwgMTUsIDUsIDIzNCwgMjEzLCAxMTAsIDIzNCwgCi0gICAgMjEzLCAyMzMsIDE0MSwgMjksIDExMSwgMTEwLCAyMzMsIDE0MSwgMjksIDY5LCAxNSwgNSwgMjM0LCAxNjMsIDE1LCA1LCAKLSAgICAyMzQsIDEwMSwgMTUsIDUsIDIzNCwgMTAyLCAyOSwgMjUyLCA5NCwgMTUsIDUsIDIzNCwgMTAyLCAyOSwgNjksIDE1LCA1LCAKLSAgICAyMzQsIDEwMiwgMjksIDIxNSwgMTg4LCAxNSwgNSwgMjM0LCA5OCwgMTUsIDUsIDIzNCwgOTAsIDE1LCA1LCAyMzQsIDc3LCAKLSAgICAxNSwgNSwgMjM0LCA3NiwgMTUsIDUsIDIzNCwgNzQsIDE1LCA1LCAyMzQsIDc1LCAxMTAsIDIzNCwgNzQsIDE1LCA1LCAyMzMsIAotICAgIDIzOCwgMTUsIDUsIDIzMywgMjM5LCAxMTAsIDI0MSwgMTY2LCAyOSwgMjUzLCAxNDUsIDIzMywgMjM5LCAxMTAsIDI0MSwgCi0gICAgMTY2LCAyOSwgMjUzLCAxNDQsIDE1LCA1LCAyMzMsIDIzNiwgMTUsIDUsIDIzMywgMjM0LCAxNSwgNSwgMjMzLCAyMzUsIAotICAgIDIxNCwgMjQ0LCAxNywgMTUsIDUsIDIzMywgMjMzLCAxNSwgNSwgMjMzLCAyMzAsIDE1LCA1LCAyMzMsIDIzMSwgMjQyLCA3NSwgCi0gICAgMTUsIDUsIDIzMywgMjI5LCAxNSwgNSwgMjMzLCAyMTcsIDE1LCA1LCAyMzMsIDIxOCwgMjI3LCAzMCwgMjMzLCAyMTcsIDE1LCAKLSAgICA1LCAyMzMsIDIxMiwgMTUsIDUsIDIzMywgMTk0LCAxNSwgNSwgMjMzLCAxNTcsIDE1LCA1LCAyMzMsIDE0MCwgMTUsIDUsIAotICAgIDIzMywgMTQxLCAyOSwgNjEsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDExOCwgOTQsIDI0OCwgMTY1LCA5NCwgMTU5LCAxNSwgNSwgCi0gICAgMjMzLCAxNDEsIDI5LCAxMTgsIDk0LCAyNDMsIDcyLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAxMTgsIDk0LCAyMzMsIDEyOCwgCi0gICAgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjU0LCA4NiwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjU0LCAzMiwgMTUsIDUsIDIzMywgCi0gICAgMTQxLCAyOSwgMjUzLCAxNDcsIDIxMiwgMzMsIDIxNywgMTkyLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyNTIsIDk0LCAxNSwgCi0gICAgNSwgMjMzLCAxNDEsIDI5LCAyNTEsIDE4NCwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjQ4LCAxMTEsIDE1LCA1LCAyMzMsIAotICAgIDE0MSwgMjksIDI0NSwgMTA4LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyNDMsIDExMCwgMTUsIDUsIDIzMywgMTQxLCAyOSwgCi0gICAgMjQzLCA3MiwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjQyLCA4NCwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjQyLCA4NSwgOTQsIAotICAgIDI0MiwgODQsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDE1OSwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjQyLCAxMiwgMTUsIDUsIAotICAgIDIzMywgMTQxLCAyOSwgMjQxLCAxNjYsIDI5LCAyMjgsIDUwLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMzYsIDMxLCAyNDIsIAotICAgIDc1LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMzYsIDExLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMzYsIDEyLCA5NCwgMTU5LCAKLSAgICAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMzYsIDEyLCA5NCwgMjMyLCAxNTYsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDIzNCwgCi0gICAgMTAxLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMzQsIDkwLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMzMsIDIzNiwgMTUsIDUsIAotICAgIDIzMywgMTQxLCAyOSwgMjMzLCAyMzAsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDIzMywgMjMxLCA5NCwgMjQxLCAxNjYsIDk0LCAKLSAgICA2MSwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjMzLCAxNDAsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDIzMiwgMjI2LCAxNSwgNSwgCi0gICAgMjMzLCAxNDEsIDI5LCAyMzIsIDE1NiwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjMyLCAxNDQsIDE1LCA1LCAyMzMsIDE0MSwgCi0gICAgMjksIDIzMSwgMTU2LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMzEsIDE1NywgOTQsIDI0NSwgMTA4LCAxNSwgNSwgMjMzLCAKLSAgICAxNDEsIDI5LCAyMzAsIDEzMSwgMTUsIDUsIDIzMywgMTQxLCAyOSwgMjI5LCAxODcsIDE1LCA1LCAyMzMsIDE0MSwgMjksIAotICAgIDIyMCwgMjQ0LCA5NCwgMjE4LCAyNDQsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDIyMCwgMTkwLCA5NCwgMjQyLCAxNjcsIDk0LCAKLSAgICAyNDUsIDUwLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMjAsIDE5MCwgOTQsIDI0MiwgMTY3LCAyMTcsIDE5MiwgMTUsIDUsIAotICAgIDIzMywgMTQxLCAyOSwgMjIwLCAxNDgsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDIyMCwgMTQ5LCA5NCwgMjIwLCAxNDgsIDE1LCAKLSAgICA1LCAyMzMsIDE0MSwgMjksIDIxOCwgMjQ0LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMTgsIDMzLCAxNSwgNSwgMjMzLCAxNDEsIAotICAgIDI5LCAyMTgsIDIyLCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMTcsIDIzMCwgOTQsIDExOCwgOTQsIDIxOSwgMjgsIDk0LCAKLSAgICAyMDUsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDY5LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAxMTEsIDk0LCA2MSwgMTUsIDUsIAotICAgIDIzMywgMTQxLCAyOSwgMTExLCA5NCwgMTExLCA5NCwgNjksIDE1LCA1LCAyMzMsIDE0MSwgMjksIDIxNSwgMTk4LCA5NCwgCi0gICAgMjUzLCAxNDYsIDE1LCA1LCAyMzMsIDE0MSwgMjksIDIxNSwgMTg4LCAxNSwgNSwgMjMzLCAxNDEsIDI5LCAyMTUsIDEwMCwgCi0gICAgMTUsIDUsIDIzMywgMTQxLCAyMTksIDE2NSwgMTUsIDUsIDIzMywgMTM4LCAxNSwgNSwgMjMzLCAxMzksIDI5LCAyMjAsIAotICAgIDI0MywgMTUsIDUsIDIzMywgMTM5LCAyOSwgMjIwLCAyNDQsIDk0LCAyMTgsIDI0NCwgMTUsIDUsIDIzMywgMTM5LCAyNDIsIAotICAgIDc1LCAxNSwgNSwgMjMzLCAxMzksIDI0MiwgNzYsIDExMCwgMjMzLCAxMzksIDI0MiwgNzYsIDIyMCwgMjQzLCAxNSwgNSwgCi0gICAgMjMzLCAxMzUsIDE1LCA1LCAyMzMsIDEyOCwgMTUsIDUsIDIzMywgMTI5LCAyOSwgMjMzLCAxMjgsIDE1LCA1LCAyMzMsIAotICAgIDEyNiwgMTUsIDUsIDIzMywgMTI3LCAyOSwgMjMzLCAyMTcsIDE1LCA1LCAyMzMsIDEyNywgMjksIDIzMywgMjE4LCA5NCwgCi0gICAgMjIzLCA1MSwgMTUsIDUsIDIzMywgMTMsIDE1LCA1LCAyMzIsIDI1NCwgMTUsIDUsIDIzMiwgMjQ1LCAxNSwgNSwgMjMyLCAKLSAgICAyMjYsIDE1LCA1LCAyMzIsIDE1NiwgMTUsIDUsIDIzMiwgMTU3LCAyOSwgMjUyLCA5NCwgMTUsIDUsIDIzMiwgMTU0LCAxNSwgCi0gICAgNSwgMjMyLCAxNTUsIDI5LCAyNTQsIDg2LCAxNSwgNSwgMjMyLCAxNTUsIDI5LCAyNTIsIDk0LCAxNSwgNSwgMjMyLCAxNTUsIAotICAgIDI5LCAyNDUsIDM3LCAxNSwgNSwgMjMyLCAxNTUsIDI5LCAyNDUsIDM4LCAyMTcsIDE5MiwgMTUsIDUsIDIzMiwgMTU1LCAyOSwgCi0gICAgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAyMzIsIDE1NSwgMjksIDI0MSwgMTY2LCAyOSwgMjUyLCA5NCwgMTUsIDUsIAotICAgIDIzMiwgMTU1LCAyOSwgMjM2LCAxMSwgMTUsIDUsIDIzMiwgMTU1LCAyOSwgMjM1LCA1LCAxNSwgNSwgMjMyLCAxNTUsIDI5LCAKLSAgICAyMzUsIDMsIDE1LCA1LCAyMzIsIDE1NSwgMjksIDIzNSwgNCwgOTQsIDI1MywgMTQ2LCAxNSwgNSwgMjMyLCAxNTUsIDI5LCAKLSAgICAyMzQsIDEwMSwgMTUsIDUsIDIzMiwgMTU1LCAyOSwgMjMzLCAxNTgsIDk0LCAyNTMsIDE0NiwgMTUsIDUsIDIzMiwgMTU1LCAKLSAgICAyOSwgMjMzLCAxNDAsIDE1LCA1LCAyMzIsIDE1NSwgMjksIDIzMSwgMTU3LCA5NCwgMjQ1LCAxMDgsIDE1LCA1LCAyMzIsIAotICAgIDE1NSwgMjksIDIyOSwgMTg3LCAxNSwgNSwgMjMyLCAxNTUsIDI5LCAyMjgsIDkyLCAxNSwgNSwgMjMyLCAxNTUsIDI5LCAKLSAgICAyMjAsIDExOCwgOTQsIDI1MywgMTQ2LCAxNSwgNSwgMjMyLCAxNTUsIDI5LCAyMjAsIDEwMCwgOTQsIDI1MSwgNTQsIDE1LCAKLSAgICA1LCAyMzIsIDE1NSwgMjksIDIxNiwgNzcsIDE1LCA1LCAyMzIsIDE1NSwgMjE3LCAxOTIsIDE1LCA1LCAyMzIsIDE1NSwgCi0gICAgMjQ5LCA2NSwgMjMyLCAxNTQsIDE1LCA1LCAyMzIsIDE1NSwgMjI3LCAzMCwgMjMyLCAxNTQsIDE1LCA1LCAyMzIsIDE1NSwgCi0gICAgMjE5LCAxNjUsIDE1LCA1LCAyMzIsIDE1NSwgMjIwLCAyMjUsIDE1LCA1LCAyMzIsIDE1MywgMTUsIDUsIDIzMiwgMTQ5LCAKLSAgICAxNSwgNSwgMjMyLCAxNTAsIDExMCwgMjMyLCAxNDksIDE1LCA1LCAyMzIsIDE1MCwgMjI3LCAzMCwgMjMyLCAxNDksIDE1LCAKLSAgICA1LCAyMzIsIDE1MCwgMjIwLCAyMjUsIDE1LCA1LCAyMzIsIDE0NywgMTUsIDUsIDIzMiwgMTQ0LCAxNSwgNSwgMjMyLCAxNDIsIAotICAgIDE1LCA1LCAyMzIsIDE0MywgMTEwLCAyMzIsIDE0MiwgMTUsIDUsIDIzMiwgMTQzLCAxMTAsIDIzMiwgMTQzLCAyNDMsIDczLCAKLSAgICAxMTAsIDI0MywgNzIsIDE1LCA1LCAxODgsIDE1LCA1LCAyMzIsIDQzLCAyOSwgMjE4LCAyMiwgMTUsIDUsIDIzMiwgNDMsIAotICAgIDI0MiwgNzUsIDE1LCA1LCAyMzIsIDQyLCAxNSwgNSwgMjMyLCAxNSwgMTUsIDUsIDIzMSwgMjI5LCAxNSwgNSwgMjMxLCAKLSAgICAyMTAsIDE1LCA1LCAyMzEsIDIwOSwgMTUsIDUsIDIzMSwgMTU2LCAxNSwgNSwgMjMxLCAxMTIsIDE1LCA1LCAyMzEsIDQyLCAKLSAgICAxNSwgNSwgMjMxLCAxLCAxNSwgNSwgMjMwLCAxNzIsIDE1LCA1LCAyMzAsIDE3MywgMTEwLCAyMzAsIDE3MiwgMTUsIDUsIAotICAgIDIzMCwgMTYzLCAxNSwgNSwgMjMwLCAxNjQsIDI0MiwgNzUsIDE1LCA1LCAyMzAsIDE0OCwgMTUsIDUsIDIzMCwgMTM0LCAxNSwgCi0gICAgNSwgMjMwLCAxMzEsIDE1LCA1LCAyMzAsIDEzMiwgMjksIDYxLCAxNSwgNSwgMjMwLCAxMzIsIDI5LCAyMzMsIDIxNywgMTUsIAotICAgIDUsIDIzMCwgMTMyLCAyOSwgMjEyLCAxMDksIDE1LCA1LCAyMzAsIDEzMiwgMTEwLCAyMzAsIDEzMSwgMTUsIDUsIDIzMCwgCi0gICAgMTMyLCAxMTAsIDIzMCwgMTMyLCAyOSwgMTE4LCA5NCwgMjA1LCAxNSwgNSwgMjMwLCAxMzIsIDI0OSwgNjUsIDIzMCwgMTMxLCAKLSAgICAxNSwgNSwgMjMwLCAxMjksIDE1LCA1LCAyMzAsIDEzMCwgMjksIDYxLCAxNSwgNSwgMjMwLCAxMzAsIDI5LCAxMTgsIDk0LCAKLSAgICAyNDcsIDIxMSwgMTUsIDUsIDIzMCwgMTMwLCAyOSwgMjQ3LCAyMTEsIDE1LCA1LCAyMzAsIDEzMCwgMjQyLCA3NSwgMTUsIDUsIAotICAgIDIwNSwgMTUsIDUsIDIzMCwgNDUsIDE1LCA1LCAyMzAsIDM0LCAxNSwgNSwgMjMwLCAzNSwgMjM1LCAxOTAsIDE1LCA1LCAKLSAgICAyMzAsIDM1LCAyOSwgMjIwLCAxNTEsIDIxNywgMTkyLCAxNSwgNSwgMjMwLCAzNSwgMjI3LCAzMCwgMjMwLCAzNCwgMTUsIDUsIAotICAgIDIzMCwgMzMsIDE1LCA1LCAyMzAsIDI4LCAyMjgsIDM2LCAxNSwgNSwgMjMwLCAyNywgMTUsIDUsIDIzMCwgMjYsIDE1LCA1LCAKLSAgICAyMjksIDE4NywgMTUsIDUsIDIyOSwgMTg4LCAyOSwgNjEsIDE1LCA1LCAyMjksIDE4OCwgMjksIDIxNSwgMTg4LCAxNSwgNSwgCi0gICAgMjI5LCAxODgsIDIyMCwgMjI1LCAxNSwgNSwgMjI5LCA2NCwgMTUsIDUsIDIyOSwgNjUsIDI5LCA3NCwgMTUsIDUsIDIyOSwgCi0gICAgNjMsIDE1LCA1LCAyMjksIDM0LCAxNSwgNSwgMjI5LCAzNSwgMjksIDI0MywgODEsIDIxNywgMTkyLCAxNSwgNSwgMjI5LCAKLSAgICAzNSwgMjksIDI0MywgNzMsIDk0LCAyNDMsIDgxLCAyMTcsIDE5MiwgMTUsIDUsIDIyOSwgMzIsIDE1LCA1LCAyMjksIDMzLCAKLSAgICAyOSwgMjU0LCAzMiwgMTUsIDUsIDIyOSwgMzMsIDI5LCAyNTMsIDE0NiwgMTUsIDUsIDIyOSwgMzMsIDI5LCAyNTMsIDE0NywgCi0gICAgOTQsIDI1MywgMTQ2LCAxNSwgNSwgMjI5LCAzMywgMjksIDI0MiwgODQsIDE1LCA1LCAyMjksIDMzLCAyOSwgMjMxLCAxNTcsIAotICAgIDk0LCAyNDMsIDgxLCAyMTcsIDE5MiwgMTUsIDUsIDIyOSwgMzMsIDI5LCAyMjksIDE4NywgMTUsIDUsIDIyOSwgMzMsIDI5LCAKLSAgICAyMjgsIDUwLCAxNSwgNSwgMjI5LCAzMywgMjksIDIyMCwgMjQzLCAxNSwgNSwgMjI5LCAzMywgMjksIDIyMCwgMjQ0LCA5NCwgCi0gICAgMTE4LCAyNTQsIDMyLCAxNSwgNSwgMjI5LCAzMywgMjksIDIyMCwgMjQ0LCA5NCwgMjUzLCAxNDYsIDE1LCA1LCAyMjksIDMzLCAKLSAgICAyOSwgMjIwLCAyNDQsIDk0LCAyNTMsIDE0NywgOTQsIDI1MywgMTQ2LCAxNSwgNSwgMjI5LCAzMywgMjksIDIxNSwgMTk4LCAKLSAgICA5NCwgMjUzLCAxNDYsIDE1LCA1LCAyMjksIDMzLCAyOSwgMjE1LCAxMDAsIDE1LCA1LCAyMjksIDIxLCAxNSwgNSwgMjI4LCAKLSAgICA5MiwgMTUsIDUsIDIyOCwgNjUsIDE1LCA1LCAyMjgsIDUwLCAxNSwgNSwgMjI4LCA1MSwgMjMzLCAxMzksIDI5LCAyNDMsIAotICAgIDcyLCAxNSwgNSwgMjI4LCA1MSwgMjMzLCAxMzksIDI5LCAyMzEsIDIxMCwgMTUsIDUsIDIyOCwgNTEsIDIzMywgMTM5LCAyOSwgCi0gICAgMjIyLCAxNzksIDE1LCA1LCAyMjgsIDUxLCAyMzMsIDEzOSwgMjksIDIyMiwgMTgwLCAxMTAsIDIyOCwgNTEsIDIzMywgMTM5LCAKLSAgICAyOSwgMjIyLCAxNzksIDE1LCA1LCAyMjgsIDUxLCAyMzMsIDEzOSwgMjksIDIxNSwgMTAwLCAxNSwgNSwgMjI4LCA1MSwgCi0gICAgMjE3LCAxOTIsIDE1LCA1LCAyMjgsIDUxLCAxMTAsIDIyOCwgNTAsIDE1LCA1LCAyMjgsIDUxLCAyNDksIDY1LCAyMjgsIDUwLCAKLSAgICAxNSwgNSwgMjI4LCA1MSwgMjQ5LCA2NSwgMjI4LCA1MSwgMjMzLCAxMzksIDExMCwgMjMzLCAxMzgsIDE1LCA1LCAyMjgsIAotICAgIDQ1LCAxNSwgNSwgMjI4LCA0NiwgMjU0LCAxODQsIDI5LCAyNTMsIDE0MSwgMTUsIDUsIDIyOCwgNDYsIDI1NCwgMTg0LCAyOSwgCi0gICAgMjUxLCAxODQsIDE1LCA1LCAyMjgsIDQ2LCAyNTQsIDE4NCwgMjksIDI0NiwgMjksIDE1LCA1LCAyMjgsIDQ2LCAyNTQsIAotICAgIDE4NCwgMjksIDI0MiwgODQsIDE1LCA1LCAyMjgsIDQ2LCAyNTQsIDE4NCwgMjksIDIzNiwgMzEsIDI0MiwgNzUsIDE1LCA1LCAKLSAgICAyMjgsIDQ2LCAyNTQsIDE4NCwgMjksIDIzNSwgMywgMTUsIDUsIDIyOCwgNDYsIDI1NCwgMTg0LCAyOSwgMjMzLCAxNTcsIAotICAgIDE1LCA1LCAyMjgsIDQ2LCAyNTQsIDE4NCwgMjksIDIyOSwgMTg3LCAxNSwgNSwgMjI4LCA0NiwgMjU0LCAxODQsIDI5LCAKLSAgICAyMjAsIDk3LCAxNSwgNSwgMjI4LCA0NiwgMjU0LCAxODQsIDI5LCAyMTUsIDE5NywgMTUsIDUsIDIyOCwgNDYsIDIzNCwgNzUsIAotICAgIDI5LCAyNTEsIDE4NCwgMTUsIDUsIDIyOCwgNDYsIDIzNCwgNzUsIDI5LCAyNTEsIDE4NSwgNjksIDE1LCA1LCAxOTMsIDE1LCAKLSAgICA1LCAyMjYsIDIwNCwgMTUsIDUsIDIyNiwgMTc0LCAxNSwgNSwgMjI2LCAxNDksIDE1LCA1LCAyMjYsIDM3LCAxNSwgNSwgCi0gICAgMjI1LCAyNDAsIDE1LCA1LCAyMjUsIDI0MSwgMjksIDYxLCAxNSwgNSwgMjI1LCAyNDEsIDI5LCAyNTQsIDE4NSwgMTUsIDUsIAotICAgIDIyNSwgMjQxLCAyOSwgMjUxLCAxODQsIDE1LCA1LCAyMjUsIDI0MSwgMjksIDI1MSwgNTQsIDE1LCA1LCAyMjUsIDI0MSwgCi0gICAgMjksIDc0LCAxNSwgNSwgMjI1LCAyNDEsIDI5LCA3MiwgMTUsIDUsIDIyNSwgMjQxLCAyOSwgMjQwLCAxMDgsIDE1LCA1LCAKLSAgICAyMjUsIDI0MSwgMjksIDY5LCAxNSwgNSwgMjI1LCAyNDEsIDI5LCAyMTUsIDE5NywgMTUsIDUsIDIyNSwgMjQxLCAyNDksIAotICAgIDY1LCAyMjUsIDI0MCwgMTUsIDUsIDIyNSwgMTg1LCAxNSwgNSwgMjI1LCAxODYsIDI5LCAyMzQsIDI0MywgMTUsIDUsIDIyNSwgCi0gICAgMTg2LCAyOSwgMjE1LCAxODgsIDE1LCA1LCAyMjUsIDE4NiwgMjksIDIxMiwgMTA5LCAxNSwgNSwgMjI1LCAxODYsIDIyNywgCi0gICAgMzAsIDIyNSwgMTg1LCAxNSwgNSwgMjAzLCAxNSwgNSwgMjI0LCA3MiwgMTUsIDUsIDIyMywgMTg4LCAxNSwgNSwgMjIzLCAKLSAgICA1MSwgMTUsIDUsIDIyMiwgMjAyLCAxNSwgNSwgMjIyLCAxOTEsIDIyOCwgMzYsIDE1LCA1LCAyMjIsIDE5MCwgMTUsIDUsIAotICAgIDIyMiwgMTkxLCAyOSwgNjEsIDE1LCA1LCAyMjIsIDE5MSwgMjksIDI0NiwgMzMsIDE1LCA1LCAyMjIsIDE5MSwgMjksIDI0NiwgCi0gICAgMzEsIDE1LCA1LCAyMjIsIDE5MSwgMjksIDE1OSwgMTUsIDUsIDIyMiwgMTkxLCAyOSwgMjM0LCAyNDcsIDE1LCA1LCAyMjIsIAotICAgIDE5MSwgMjksIDIzMywgMjE3LCAxNSwgNSwgMjIyLCAxOTEsIDI5LCAyMzIsIDE0MiwgMTUsIDUsIDIyMiwgMTkxLCAyOSwgCi0gICAgMjMxLCA0MiwgMTUsIDUsIDIyMiwgMTkxLCAyOSwgMjI4LCA1MCwgMTUsIDUsIDIyMiwgMTkxLCAyOSwgMjIyLCAxNzksIDE1LCAKLSAgICA1LCAyMjIsIDE5MSwgMjksIDIyMCwgMjEwLCAxNSwgNSwgMjIyLCAxOTEsIDI5LCAyMTgsIDQxLCAxNSwgNSwgMjIyLCAxOTEsIAotICAgIDI5LCAyMTUsIDE5NywgMTUsIDUsIDIyMiwgMTkxLCAyOSwgMjE1LCAxOTQsIDE1LCA1LCAyMjIsIDE5MSwgMjksIDIxNSwgCi0gICAgMTY3LCAxNSwgNSwgMjIyLCAxOTEsIDI5LCAyMTUsIDEyMSwgMTUsIDUsIDIyMiwgMTkxLCAyOSwgMjE1LCAxMDAsIDE1LCA1LCAKLSAgICAyMjIsIDE5MSwgMTEwLCAyMjIsIDE5MCwgMTUsIDUsIDIyMiwgMTkxLCAyNDIsIDc1LCAxNSwgNSwgMjIyLCAxNzksIDE1LCAKLSAgICA1LCAyMjIsIDE4MCwgMjMzLCAxNDEsIDI5LCAyNTMsIDE0NCwgMTUsIDUsIDIyMiwgMTU1LCAxNSwgNSwgMjIyLCAxNDcsIAotICAgIDE1LCA1LCAyMjEsIDI0LCAxNSwgNSwgMjIxLCAyMiwgMTUsIDUsIDIyMSwgMjMsIDI5LCA2MSwgMTUsIDUsIDIyMSwgMjMsIAotICAgIDI5LCAyNTIsIDk0LCAxNSwgNSwgMjIxLCAyMywgMjksIDI0MiwgMTY2LCAxNSwgNSwgMjIxLCAyMywgMjksIDIyOSwgMTg3LCAKLSAgICAxNSwgNSwgMjIxLCAyMywgMjksIDIyMCwgMTQ4LCAxNSwgNSwgMjIxLCAyMywgMjksIDIxNiwgNjIsIDE1LCA1LCAyMjEsIAotICAgIDIzLCAyOSwgNjksIDE1LCA1LCAyMjEsIDIzLCAyOSwgMTExLCA5NCwgNjEsIDE1LCA1LCAyMjEsIDIxLCAxNSwgNSwgMjIxLCAKLSAgICAxOSwgMTUsIDUsIDIyMSwgMSwgMTUsIDUsIDIyMCwgMjQzLCAxNSwgNSwgMjIwLCAyNDQsIDI0MCwgMjEyLCAxNSwgNSwgCi0gICAgMjIwLCAyNDQsIDExMCwgMjIwLCAyNDQsIDI0MywgMTAyLCAxMTAsIDI0MywgMTAyLCAyNDMsIDczLCAxMTAsIDI0MywgNzIsIAotICAgIDE1LCA1LCAyMjAsIDI0NCwgMTEwLCAyMjAsIDI0NCwgMjE4LCA0MiwgMTEwLCAyMTgsIDQyLCAyNDMsIDczLCAxMTAsIDI0MywgCi0gICAgNzIsIDE1LCA1LCAyMjAsIDIzNiwgMTUsIDUsIDIyMCwgMjMxLCAxNSwgNSwgMjIwLCAyMjgsIDE1LCA1LCAyMjAsIDIyNywgCi0gICAgMTUsIDUsIDIyMCwgMjI0LCAxNSwgNSwgMjIwLCAyMTAsIDE1LCA1LCAyMjAsIDIxMSwgMjksIDYxLCAxNSwgNSwgMjIwLCAKLSAgICAyMTEsIDI5LCAyMzYsIDExLCAxNSwgNSwgMjIwLCAyMDQsIDE1LCA1LCAyMjAsIDIwNSwgMjksIDYxLCAxNSwgNSwgMjIwLCAKLSAgICAyMDUsIDI5LCAyNTIsIDgwLCAxNSwgNSwgMjIwLCAyMDUsIDI5LCAyNTEsIDM4LCAxNSwgNSwgMjIwLCAyMDUsIDI5LCAyNDcsIAotICAgIDE1OCwgMTUsIDUsIDIyMCwgMjA1LCAyOSwgMjQzLCA3MiwgMTUsIDUsIDIyMCwgMjA1LCAyOSwgMjM2LCAzMCwgMTUsIDUsIAotICAgIDIyMCwgMjA1LCAyOSwgMjM2LCAzMSwgMjQyLCA3NSwgMTUsIDUsIDIyMCwgMjA1LCAyOSwgMjMzLCAyMTIsIDE1LCA1LCAKLSAgICAyMjAsIDIwNSwgMjksIDIzMiwgMTQ0LCAxNSwgNSwgMjIwLCAyMDUsIDI5LCAyMzAsIDE2MywgMTUsIDUsIDIyMCwgMjA1LCAKLSAgICAyOSwgMjIyLCAxNzksIDE1LCA1LCAyMjAsIDE5OCwgMTUsIDUsIDIyMCwgMTkzLCAxNSwgNSwgMjIwLCAxOTQsIDIxNywgCi0gICAgMTkyLCAxNSwgNSwgMjIwLCAxOTQsIDExMCwgMjIwLCAxOTQsIDI1MSwgMjgsIDExMCwgMjUxLCAyNywgMTUsIDUsIDIyMCwgCi0gICAgMTg5LCAxNSwgNSwgMjIwLCAxNTAsIDE1LCA1LCAyMjAsIDE1MSwgMTEwLCAyMzUsIDE5MSwgMjIwLCAxNTAsIDE1LCA1LCAKLSAgICAyMjAsIDE0OCwgMTUsIDUsIDIyMCwgMTQ3LCAxNSwgNSwgMjIwLCAxMTcsIDE1LCA1LCAyMjAsIDExOCwgMjQyLCA3NSwgMTUsIAotICAgIDUsIDIyMCwgMTA4LCAxNSwgNSwgMjIwLCAxMDYsIDE1LCA1LCAyMjAsIDEwNywgMTEwLCAyMjAsIDEwNywgMjIwLCAxNDgsIAotICAgIDE1LCA1LCAyMjAsIDk5LCAxNSwgNSwgMjIwLCA5NywgMTUsIDUsIDIxOSwgMjcsIDE1LCA1LCAyMTksIDI4LCAxMTAsIDIxOSwgCi0gICAgMjcsIDE1LCA1LCAyMTgsIDI1NSwgMTUsIDUsIDIxOCwgMjU0LCAxNSwgNSwgMjE4LCAyNTIsIDE1LCA1LCAyMTgsIDI0NCwgCi0gICAgMTUsIDUsIDIxOCwgMjQzLCAxNSwgNSwgMjE4LCAyMTcsIDE1LCA1LCAyMTgsIDIxNiwgMTUsIDUsIDIxOCwgNTIsIDE1LCA1LCAKLSAgICAyMTgsIDUzLCAyNTMsIDEzMiwgMTUsIDUsIDIxOCwgNTMsIDI5LCAyNDEsIDE2NSwgMTUsIDUsIDIxOCwgNTMsIDI5LCAyMzEsIAotICAgIDQyLCAxNSwgNSwgMjE4LCA1MywgMjQyLCA3NSwgMTUsIDUsIDIxOCwgNDEsIDE1LCA1LCAyMTgsIDQyLCAxMTAsIDIxOCwgCi0gICAgNDIsIDIyOSwgNjUsIDExMCwgMjI5LCA2NSwgMjQ3LCAxNDAsIDExMCwgMjQ3LCAxMzksIDE1LCA1LCAyMTgsIDQyLCAyMTksIAotICAgIDE2NSwgMTUsIDUsIDIxOCwgMzMsIDE1LCA1LCAxMjYsIDI5LCAyNTEsIDE4NCwgMTUsIDUsIDEyNiwgMjksIDI0MiwgODQsIAotICAgIDE1LCA1LCAxMjYsIDI5LCAyMjAsIDI0MywgMTUsIDUsIDEyNiwgMjksIDIyMCwgMTUwLCAxNSwgNSwgMTI2LCAyOSwgMjE2LCAKLSAgICA3NywgMTUsIDUsIDEyNiwgMjksIDIxNSwgMTg4LCAxNSwgNSwgMjE4LCAyMiwgMTUsIDUsIDIxOCwgMSwgMTUsIDUsIDIxNywgCi0gICAgMjI5LCAxNSwgNSwgMjE3LCAyMzAsIDI0MiwgNzUsIDE1LCA1LCAyMTcsIDcxLCAxNSwgNSwgMjE3LCA3MiwgMjE3LCAxOTIsIAotICAgIDE1LCA1LCAyMTcsIDQ0LCAxNSwgNSwgMjE3LCAyNSwgMTUsIDUsIDIxNywgMjYsIDI5LCAyMTgsIDIyLCAxNSwgNSwgMjE3LCAKLSAgICAyNiwgMTEwLCAyMTcsIDI1LCAxNSwgNSwgMjE3LCAyNiwgMTEwLCAyMTcsIDI2LCAyNDMsIDEwMiwgMTEwLCAyNDMsIDEwMiwgCi0gICAgMjQzLCA3MywgMTEwLCAyNDMsIDcyLCAxNSwgNSwgMjE2LCA4MiwgMTUsIDUsIDIxNiwgNzcsIDE1LCA1LCAyMTYsIDc1LCAKLSAgICAxNSwgNSwgMjE2LCA3MiwgMTUsIDUsIDIxNiwgNjIsIDE1LCA1LCAyMTYsIDYzLCAxMTAsIDIxNiwgNjMsIDIxMiwgMTEwLCAKLSAgICAxMTAsIDIxMiwgMTA5LCAxNSwgNSwgNjksIDE1LCA1LCAxMTEsIDI0MiwgODQsIDE1LCA1LCAxMTEsIDExMSwgNjksIDE1LCAKLSAgICA1LCAxMTEsIDExMCwgMTExLCAyMjYsIDIxNCwgMTEwLCAyMjYsIDIxNCwgMjQzLCA3MywgMTEwLCAyNDMsIDcyLCAxNSwgNSwgCi0gICAgMTExLCAxMTAsIDExMSwgMjE4LCAyMTgsIDExMCwgMjE4LCAyMTcsIDE1LCA1LCAxMTEsIDExMCwgMTExLCAxMTEsIDIyMywgCi0gICAgMjAyLCAxMTAsIDExMSwgMjIzLCAyMDEsIDE1LCA1LCAyMTUsIDE5NywgMTUsIDUsIDIxNSwgMTk0LCAxNSwgNSwgMjE1LCAKLSAgICAxODgsIDE1LCA1LCAyMTUsIDE4OSwgMjMzLCAyMTIsIDE1LCA1LCAyMTUsIDE4OSwgMjksIDI1MiwgOTQsIDE1LCA1LCAyMTUsIAotICAgIDE4OSwgMjksIDIzMSwgNDIsIDE1LCA1LCAyMTUsIDE4OSwgMjksIDExMSwgOTQsIDExMSwgOTQsIDY5LCAxNSwgNSwgMjE1LCAKLSAgICAxODksIDI5LCAxMTEsIDk0LCAxMTEsIDk0LCAxMTEsIDI0MiwgNzUsIDE1LCA1LCAyMTUsIDE4OSwgMjQyLCA3NSwgMTUsIDUsIAotICAgIDIxNSwgMTg5LCAyMjAsIDIyNSwgMTUsIDUsIDIxNSwgMTg5LCAyMjAsIDIyNiwgMjksIDI1MiwgOTQsIDE1LCA1LCAyMTUsIAotICAgIDE4NCwgMTUsIDUsIDIxNSwgMTY3LCAxNSwgNSwgMjE1LCAxNjgsIDI5LCAyMzMsIDE0MCwgMTUsIDUsIDIxNSwgMTY4LCAyOSwgCi0gICAgMjMxLCAxNTcsIDk0LCAyNDgsIDE2NCwgMTUsIDUsIDIxNSwgMTY4LCAyOSwgMjIxLCAyMiwgMTUsIDUsIDIxNSwgMTY4LCAKLSAgICAyOSwgNjksIDE1LCA1LCAyMTUsIDE2NiwgMTUsIDUsIDIxNSwgMTYyLCAxNSwgNSwgMjE1LCAxNjMsIDI5LCAyMzQsIDIxMiwgCi0gICAgMTUsIDUsIDIxNSwgMTYzLCAyOSwgMTkzLCAxNSwgNSwgMjE1LCAxNjAsIDE1LCA1LCAyMTUsIDE2MSwgMjQyLCA3NSwgMTUsIAotICAgIDUsIDIxNSwgMTIxLCAxNSwgNSwgMjE1LCAxMjIsIDI0OSwgNjUsIDIxNSwgMTIxLCAxNSwgNSwgMjE1LCAxMjIsIDIyMCwgCi0gICAgMjI1LCAxNSwgNSwgMjE1LCAxMTksIDE1LCA1LCAyMTUsIDEyMCwgMjksIDExOCwgOTQsIDE1OSwgMTUsIDUsIDIxNSwgMTIwLCAKLSAgICAyOSwgMTE4LCA5NCwgMjA1LCAxNSwgNSwgMjE1LCAxMjAsIDI5LCAyNTQsIDg2LCAxNSwgNSwgMjE1LCAxMjAsIDI5LCAxNTksIAotICAgIDE1LCA1LCAyMTUsIDEyMCwgMjksIDIyOCwgNTAsIDE1LCA1LCAyMTUsIDEyMCwgMjksIDIxNSwgMTk3LCAxNSwgNSwgMjE1LCAKLSAgICAxMjAsIDI5LCAyMTUsIDE5OCwgOTQsIDI1MywgMTQ2LCAxNSwgNSwgMjE1LCAxMjAsIDI5LCAyMTUsIDE5OCwgOTQsIDI1MSwgCi0gICAgMTg0LCAxNSwgNSwgMjE1LCAxMTgsIDE1LCA1LCAyMTUsIDExNSwgMTUsIDUsIDIxNSwgMTE0LCAxNSwgNSwgMjE1LCAxMTAsIAotICAgIDE1LCA1LCAyMTUsIDExMSwgMjksIDYxLCAxNSwgNSwgMjE1LCAxMTEsIDI5LCAyNTMsIDE0MSwgMTUsIDUsIDIxNSwgMTExLCAKLSAgICAyOSwgMTM0LCAxNSwgNSwgMjE1LCAxMTEsIDI5LCAyNDYsIDIzLCAxNSwgNSwgMjE1LCAxMTEsIDI5LCAyNDMsIDExMCwgMTUsIAotICAgIDUsIDIxNSwgMTExLCAyOSwgMjQzLCA5NCwgMTUsIDUsIDIxNSwgMTExLCAyOSwgMjQzLCA4MSwgMjE3LCAxOTIsIDE1LCA1LCAKLSAgICAyMTUsIDExMSwgMjksIDI0MywgNzIsIDE1LCA1LCAyMTUsIDExMSwgMjksIDI0MiwgOTIsIDE1LCA1LCAyMTUsIDExMSwgMjksIAotICAgIDE1OSwgMTUsIDUsIDIxNSwgMTExLCAyOSwgMjM2LCAzMCwgMTUsIDUsIDIxNSwgMTExLCAyOSwgMjM2LCAxMSwgMTUsIDUsIAotICAgIDIxNSwgMTExLCAyOSwgMjM1LCAxNjMsIDE1LCA1LCAyMTUsIDExMSwgMjksIDIzNCwgMTAxLCAxNSwgNSwgMjE1LCAxMTEsIAotICAgIDI5LCAyMzIsIDE0MiwgMTUsIDUsIDIxNSwgMTExLCAyOSwgMjMxLCAxLCAxNSwgNSwgMjE1LCAxMTEsIDI5LCAxOTMsIDE1LCAKLSAgICA1LCAyMTUsIDExMSwgMjksIDIyMCwgMjQzLCAxNSwgNSwgMjE1LCAxMTEsIDI5LCAyMjAsIDEwNiwgMTUsIDUsIDIxNSwgCi0gICAgMTExLCAyOSwgMjE2LCA4MiwgMTUsIDUsIDIxNSwgMTExLCAyOSwgMTExLCA5NCwgMjQyLCA4NCwgMTUsIDUsIDIxNSwgMTExLCAKLSAgICAyOSwgMjE1LCAxODgsIDE1LCA1LCAyMTUsIDExMSwgMjksIDIxNSwgMTA4LCAxNSwgNSwgMjE1LCAxMDgsIDE1LCA1LCAyMTUsIAotICAgIDEwOSwgMjksIDY5LCAxNSwgNSwgMjE1LCAxMDAsIDE1LCA1LCAyMTUsIDEwMSwgMjksIDYxLCAxNSwgNSwgMjE1LCAxMDEsIAotICAgIDI5LCAyMzMsIDIzOCwgMTUsIDUsIDIxNSwgMTAxLCAyOSwgMjMzLCAyMTcsIDE1LCA1LCAyMTUsIDEwMSwgMjksIDIxOCwgCi0gICAgMjIsIDE1LCA1LCAyMTUsIDk2LCAxNSwgNSwgMjE1LCA5OSwgMTUsIDUsIDIxNSwgOTcsIDE1LCA1LCAyMTUsIDkzLCAxNSwgCi0gICAgNSwgMjE1LCA4MiwgMTUsIDUsIDIxNSwgODMsIDI5LCAyMzQsIDIxMiwgMTUsIDUsIDIxNSwgODEsIDE1LCA1LCAyMTIsIAotICAgIDEwOSwgMTUsIDUsIDIxMiwgMTEwLCAyMTcsIDE5MiwgMTUsIDUsIDIxMiwgMTEwLCA5MSwgMjksIDIzMywgMjE3LCAxNSwgNSwgCi0gICAgMjEyLCAxMDYsIDE1LCA1LCAyMTIsIDk5LCAxNSwgNSwgMjEyLCA4NiwgMTUsIDUsIDIxMiwgMzcsIDE1LCA1LCAyMTIsIDM4LCAKLSAgICAxMTAsIDIxMiwgMzcsIDE1LCA1LCAyMTIsIDM2LCAxNSwgNSwgMjEyLCAzNCwgMTUsIDUsIDIxMiwgMzUsIDIzNSwgNywgCi0gICAgMjE3LCAxOTIsIDE1LCA1LCAyMTIsIDI5LCAxNSwgNSwgMjEyLCAyMSwgMTUsIDUsIDIxMiwgOCwgMTUsIDUsIDIxMiwgNiwgCi0gICAgMTUsIDUsIDIxMiwgNywgMjksIDYxLCAxNSwgNSwgMjEyLCA1LCAxNSwgNSwgMjEyLCA0LCAxNSwgMTI4LCA1LCAxMTcsIAotICAgIDI1MywgMTQ2LCAxNSwgMTI4LCA1LCAxMzMsIDI1MywgMTQ2LCAxNSwgMTI4LCA1LCAyNDMsIDIzNywgMjUzLCAxNDYsIDE1LCAKLSAgICAxMjgsIDUsIDI0NCwgNTAsIDI1MywgMTQ2LCAxNSwgMTI4LCA1LCAyMjAsIDUzLCAyNTMsIDE0NiwgMTUsIDEyOCwgNSwgCi0gICAgMjIxLCA0MywgMjUzLCAxNDYsIDE1LCAxMjgsIDUsIDI0NSwgMTUwLCAyNTMsIDE0NiwgMTUsIDEyOCwgNSwgMjI5LCAzMSwgCi0gICAgMjUzLCAxNDYsIDE1LCAxMjgsIDUsIDEzMywgMjQ3LCAxMzksIDE1LCAxMjgsIDUsIDI0MywgMjM3LCAyNDcsIDEzOSwgMTUsIAotICAgIDEyOCwgNSwgMjQ0LCA1MCwgMjQ3LCAxMzksIDE1LCAxMjgsIDUsIDIyMCwgNTMsIDI0NywgMTM5LCAxNSwgMTI4LCA1LCAKLSAgICAyMjEsIDQzLCAyNDcsIDEzOSwgMTUsIDEyOCwgNSwgMjQ1LCAxNTAsIDI0NywgMTM5LCAxNSwgMTI4LCA1LCAyMjksIDMxLCAKLSAgICAyNDcsIDEzOSwgMTUsIDEyOCwgNSwgMjQzLCAyMzcsIDY5LCAxNSwgMTI4LCA1LCAyNDQsIDUwLCA2OSwgMTUsIDEyOCwgNSwgCi0gICAgMjIwLCA1MywgNjksIDE1LCAxMjgsIDUsIDIyMSwgNDMsIDY5LCAxNSwgMTI4LCA1LCAyNDUsIDE1MCwgNjksIDE1LCAxMjgsIAotICAgIDUsIDIyOSwgMzEsIDY5LCAxNSwgMTI4LCA1LCAxMjIsIDI0MywgMTQsIDE1LCAxMjgsIDUsIDExNywgMjQzLCAxNCwgMTUsIAotICAgIDEyOCwgNSwgMTMzLCAyNDMsIDE0LCAxNSwgMTI4LCA1LCAyNDMsIDIzNywgMjQzLCAxNCwgMTUsIDEyOCwgNSwgMjQ0LCA1MCwgCi0gICAgMjQzLCAxNCwgMTUsIDEyOCwgNSwgMjIwLCA1MywgMjQzLCAxNCwgMTUsIDEyOCwgNSwgMjIxLCA0MywgMjQzLCAxNCwgMTUsIAotICAgIDEyOCwgNSwgMjQ1LCAxNTAsIDI0MywgMTQsIDE1LCAxMjgsIDUsIDIyOSwgMzEsIDI0MywgMTQsIDE1LCAxMjgsIDUsIDEyMiwgCi0gICAgMjQzLCAxMSwgMTUsIDEyOCwgNSwgMTE3LCAyNDMsIDExLCAxNSwgMTI4LCA1LCAxMzMsIDI0MywgMTEsIDE1LCAxMjgsIDUsIAotICAgIDI0MywgMjM3LCAyNDMsIDExLCAxNSwgMTI4LCA1LCAyNDQsIDUwLCAyNDMsIDExLCAxNSwgMTI4LCA1LCAxMTcsIDIyMSwgMSwgCi0gICAgMTUsIDEyOCwgNSwgMTMzLCAyMjEsIDEsIDE1LCAxMjgsIDUsIDEzMywgMjIxLCAyLCAyMTQsIDI0NCwgMTcsIDE1LCAxMjgsIAotICAgIDUsIDI0MywgMjM3LCAyMjEsIDEsIDE1LCAxMjgsIDUsIDI0NCwgNTAsIDIyMSwgMSwgMTUsIDEyOCwgNSwgMjIwLCA1MywgCi0gICAgMjIxLCAxLCAxNSwgMTI4LCA1LCAyMjEsIDQzLCAyMjEsIDEsIDE1LCAxMjgsIDUsIDI0NSwgMTUwLCAyMjEsIDEsIDE1LCAKLSAgICAxMjgsIDUsIDIyOSwgMzEsIDIyMSwgMSwgMTUsIDEyOCwgNSwgMTIyLCAyMjAsIDI1MiwgMTUsIDEyOCwgNSwgMTE3LCAyMjAsIAotICAgIDI1MiwgMTUsIDEyOCwgNSwgMTMzLCAyMjAsIDI1MiwgMTUsIDEyOCwgNSwgMTMzLCAyMjAsIDI1MywgMjE0LCAyNDQsIDE3LCAKLSAgICAxNSwgMTI4LCA1LCAyNDMsIDIzNywgMjIwLCAyNTIsIDE1LCAxMjgsIDUsIDI0NCwgNTAsIDIyMCwgMjUyLCAxNSwgMTI4LCAKLSAgICA1LCAyMjEsIDIsIDI5LCAyNDMsIDk1LCA5NCwgMjQ3LCAxMzksIDE1LCAxMjgsIDUsIDIyMSwgMiwgMjksIDI0MywgOTUsIAotICAgIDk0LCAyMzEsIDEsIDE1LCAxMjgsIDUsIDEyMiwgMjUxLCAyNCwgMTUsIDEyOCwgNSwgMTE3LCAyNTEsIDI0LCAxNSwgMTI4LCAKLSAgICA1LCAxMzMsIDI1MSwgMjQsIDE1LCAxMjgsIDUsIDEzMywgMjUxLCAyNSwgMjE0LCAyNDQsIDE3LCAxNSwgMTI4LCA1LCAyNDMsIAotICAgIDIzNywgMjUxLCAyNCwgMTUsIDEyOCwgNSwgMjQ0LCA1MCwgMjUxLCAyNCwgMTUsIDEyOCwgNSwgMTMzLCAyMTQsIDI0NCwgCi0gICAgMjQzLCAyNDUsIDI0NSwgMzksIDE1LCAxMjgsIDUsIDEzMywgMjE0LCAyNDQsIDI0MywgMjQ1LCAyNDUsIDM2LCAxNSwgMTI4LCAKLSAgICA1LCAyNDMsIDIzNywgMjE0LCAyNDQsIDI0MywgMjQ1LCAyMzIsIDI0NiwgMTUsIDEyOCwgNSwgMjQzLCAyMzcsIDIxNCwgCi0gICAgMjQ0LCAyNDMsIDI0NSwgMjMyLCAyNDQsIDE1LCAxMjgsIDUsIDI0MywgMjM3LCAyMTQsIDI0NCwgMjQzLCAyNDUsIDIzMiwgCi0gICAgMjQ3LCA2MSwgMTUsIDEyOCwgNSwgMjQzLCAyMzcsIDIxNCwgMjQ0LCAyNDMsIDI0NSwgMjMyLCAyNDcsIDI1MywgNzQsIDE1LCAKLSAgICAxMjgsIDUsIDIyMCwgNTMsIDIxNCwgMjQ0LCAyNDMsIDI0NSwgMjUzLCAxNDMsIDE1LCAxMjgsIDUsIDIyMSwgNDMsIDIxNCwgCi0gICAgMjQ0LCAyNDMsIDI0NSwgMjM2LCAzLCAxNSwgMTI4LCA1LCAyMjEsIDQzLCAyMTQsIDI0NCwgMjQzLCAyNDUsIDIzNiwgNSwgCi0gICAgNjEsIDE1LCAxMjgsIDUsIDIyMSwgNDMsIDIxNCwgMjQ0LCAyNDMsIDI0NSwgMjM2LCA1LCAyNTMsIDc0LCAxNSwgMTI4LCA1LCAKLSAgICAyNDUsIDE1MCwgMjE0LCAyNDQsIDI0MywgMjQ1LCAyMTUsIDk1LCAxNSwgMTI4LCA1LCAyNDUsIDE1MCwgMjE0LCAyNDQsIAotICAgIDI0MywgMjQ1LCAyMTUsIDk0LCAxNSwgMTI4LCA1LCAyMjksIDMxLCAyMTQsIDI0NCwgMjQzLCAyNDUsIDIzNiwgMTksIDE1LCAKLSAgICAxMjgsIDUsIDIyOSwgMzEsIDIxNCwgMjQ0LCAyNDMsIDI0NSwgMjM2LCAxOCwgMTUsIDEyOCwgNSwgMjI5LCAzMSwgMjE0LCAKLSAgICAyNDQsIDI0MywgMjQ1LCAyMzYsIDE3LCAxNSwgMTI4LCA1LCAyMjksIDMxLCAyMTQsIDI0NCwgMjQzLCAyNDUsIDIzNiwgMjAsIAotICAgIDYxLCAxNSwgMTI4LCA1LCAxMTcsIDI1MywgMTQ3LCAyMTcsIDE5MiwgMTUsIDEyOCwgNSwgMTMzLCAyNTMsIDE0NywgMjE3LCAKLSAgICAxOTIsIDE1LCAxMjgsIDUsIDI0MywgMjM3LCAyNTMsIDE0NywgMjE3LCAxOTIsIDE1LCAxMjgsIDUsIDI0NCwgNTAsIDI1MywgCi0gICAgMTQ3LCAyMTcsIDE5MiwgMTUsIDEyOCwgNSwgMjIwLCA1MywgMjUzLCAxNDcsIDIxNywgMTkyLCAxNSwgMTI4LCA1LCAxMjIsIAotICAgIDI1MiwgNjksIDE1LCAxMjgsIDUsIDExNywgMjUyLCA2OSwgMTUsIDEyOCwgNSwgMTMzLCAyNTIsIDY5LCAxNSwgMTI4LCA1LCAKLSAgICAyNDMsIDIzNywgMjUyLCA2OSwgMTUsIDEyOCwgNSwgMjQzLCAyMzcsIDI1MiwgNzAsIDIxNCwgMjQ0LCAxNywgMTUsIDEyOCwgCi0gICAgNSwgMjQ0LCA1MCwgMjUyLCA2OSwgMTUsIDEyOCwgNSwgMjQ0LCA1MCwgMjUyLCA3MCwgMjE0LCAyNDQsIDE3LCAxNSwgMTI4LCAKLSAgICA1LCAyMjksIDQxLCAxNSwgMTI4LCA1LCAyMjksIDQyLCAxNSwgMTI4LCA1LCAxMjIsIDI0NSwgMzUsIDE1LCAxMjgsIDUsIAotICAgIDExNywgMjQ1LCAzNSwgMTUsIDEyOCwgNSwgMTIyLCAyMTcsIDEyMiwgMjQ3LCAxMzksIDE1LCAxMjgsIDUsIDExNywgMjE3LCAKLSAgICAxMjAsIDI0NywgMTM5LCAxNSwgMTI4LCA1LCAyNDQsIDUwLCAyMjAsIDQyLCAyNDcsIDEzOSwgMTUsIDEyOCwgNSwgMTIyLCAKLSAgICAyMTcsIDEyMiwgMjE0LCAyNDQsIDI0MywgMjQ1LCA2MSwgMTUsIDEyOCwgNSwgMTE3LCAyMTcsIDEyMCwgMjE0LCAyNDQsIAotICAgIDI0MywgMjQ1LCA2MSwgMTUsIDEyOCwgNSwgMTIyLCAyNDUsIDE0NiwgMjUzLCAxNDYsIDE1LCAxMjgsIDUsIDEyMiwgMjI0LCAKLSAgICAxNjcsIDI1MywgMTQ2LCAxNSwgMTI4LCA1LCA1MywgMjUzLCAxMzUsIDEyMiwgMjIwLCA0MywgMTUsIDEyOCwgNSwgNTMsIAotICAgIDI1MywgMTM1LCAxMjIsIDIyNCwgMTY2LCAxNSwgMjI1LCAyNywgNSwgNTMsIDI1MywgMTM1LCAyMTMsIDE5NiwgMjQ3LCAKLSAgICAxMjQsIDE1LCAyMjUsIDI3LCA1LCA3MSwgMjQ5LCAxNjQsIDE1LCAyMjUsIDI3LCA1LCAyNDcsIDIwNywgMjQ5LCAxNjQsIAotICAgIDE1LCAyMjUsIDI3LCA1LCAyNDcsIDIwNywgMjE2LCAxNzksIDEwLCAxMSwgMjU1LCA1OCwgMTAsIDExLCAyNTUsIDU3LCAxMCwgCi0gICAgMTEsIDI1NSwgNTYsIDEwLCAxMSwgMjU1LCA1NSwgMTAsIDExLCAyNTUsIDU0LCAxMCwgMTEsIDI1NSwgNTMsIDEwLCAxMSwgCi0gICAgMjU1LCA1MiwgMTAsIDExLCAyNTUsIDUxLCAxMCwgMTEsIDI1NSwgNTAsIDEwLCAxMSwgMjU1LCA0OSwgMTAsIDExLCAyNTUsIAotICAgIDQ4LCAxMCwgMTEsIDI1NSwgNDcsIDEwLCAxMSwgMjU1LCA0NiwgMTAsIDExLCAyNTUsIDQ1LCAxMCwgMTEsIDI1NSwgNDQsIAotICAgIDEwLCAxMSwgMjU1LCA0MywgMTAsIDExLCAyNTUsIDQyLCAxMCwgMTEsIDI1NSwgNDEsIDEwLCAxMSwgMjU1LCA0MCwgMTAsIAotICAgIDExLCAyNTUsIDM5LCAxMCwgMTEsIDI1NSwgMzgsIDEwLCAxMSwgMjU1LCAzNywgMTAsIDExLCAyNTUsIDM2LCAxMCwgMTEsIAotICAgIDI1NSwgMzUsIDEwLCAxMSwgMjU1LCAzNCwgMTAsIDExLCAyNTUsIDMzLCAxMCwgMTEsIDI1NSwgMzIsIDEwLCAxMSwgMjU1LCAKLSAgICAzMSwgMTAsIDExLCAyNTUsIDMwLCAxMCwgMTEsIDI1NSwgMjksIDEwLCAxMSwgMjU1LCAyOCwgMTAsIDExLCAyNTUsIDI3LCAKLSAgICAxMCwgMTEsIDI1NSwgMjYsIDEwLCAxMSwgMjU1LCAyNSwgMTAsIDExLCAyNTUsIDI0LCAxMCwgMTEsIDI1NSwgMjMsIDEwLCAKLSAgICAxMSwgMjU1LCAyMiwgMTAsIDExLCAyNTUsIDIxLCAxMCwgMTEsIDI1NSwgMjAsIDEwLCAxMSwgMjU1LCAxOSwgMTAsIDExLCAKLSAgICAyNTUsIDE4LCAxMCwgMTEsIDI1NSwgMTcsIDEwLCAxMSwgMjU1LCAxNiwgMTAsIDExLCAyNTUsIDE1LCAxMCwgMTEsIDI1NSwgCi0gICAgMTQsIDEwLCAxMSwgMjU1LCAxMywgMTAsIDExLCAyNTUsIDEyLCAxMCwgMTEsIDI1NSwgMTEsIDEwLCAxMSwgMjU1LCAxMCwgCi0gICAgMTAsIDExLCAyNTUsIDksIDEwLCAxMSwgMjU1LCA4LCAxMCwgMTEsIDI1NSwgNywgMTAsIDExLCAyNTUsIDYsIDEwLCAxMSwgCi0gICAgMjU1LCA1LCAxMCwgMTEsIDI1NSwgNCwgMTAsIDExLCAyNTUsIDMsIDEwLCAxMSwgMjU1LCAyLCAxMCwgMTEsIDI1NSwgMSwgCi0gICAgMTAsIDExLCAyNTUsIDAsIDEwLCAxMSwgMjU0LCAyNTUsIDEwLCAxMSwgMjU0LCAyNTQsIDEwLCAxMSwgMjU0LCAyNTMsIDEwLCAKLSAgICAxMSwgMjU0LCAyNTIsIDEwLCAxMSwgMjU0LCAyNTEsIDEwLCAxMSwgMjU0LCAyNTAsIDEwLCAxMSwgMjU0LCAyNDksIDEwLCAKLSAgICAxMSwgMjU0LCAyNDgsIDEwLCAxMSwgMjU0LCAyNDcsIDEwLCAxMSwgMjU0LCAyNDYsIDEwLCAxMSwgMjU0LCAyNDUsIDEwLCAKLSAgICAxMSwgMjU0LCAyNDQsIDEwLCAxMSwgMjU0LCAyNDMsIDEwLCAxMSwgMjU0LCAyNDIsIDEwLCAxMSwgMjU0LCAyNDEsIDEwLCAKLSAgICAxMSwgMjU0LCAyNDAsIDEwLCAxMSwgMjU0LCAyMzksIDEwLCAxMSwgMjU0LCAyMzgsIDEwLCAxMSwgMjU0LCAyMzcsIDEwLCAKLSAgICAxMSwgMjU0LCAyMzYsIDEwLCAxMSwgMjU0LCAyMzUsIDEwLCAxMSwgMjUzLCA3MiwgMTAsIDExLCAyNTMsIDcwLCAxMCwgMTEsIAotICAgIDI1MywgNjgsIDEwLCAxMSwgMjUzLCA2NiwgMTAsIDExLCAyNTMsIDY0LCAxMCwgMTEsIDI1MywgNjMsIDEwLCAxMSwgMjUzLCAKLSAgICA2MSwgMTAsIDExLCAyNTMsIDU5LCAxMCwgMTEsIDI1MywgNTcsIDEwLCAxMSwgMjUzLCA1NSwgMTAsIDExLCAyNTAsIDI0OCwgCi0gICAgMTAsIDExLCAyNTAsIDI0NywgMTAsIDExLCAyNTAsIDI0NiwgMTAsIDExLCAyNTAsIDI0NSwgMTAsIDExLCAyNTAsIDI0NCwgCi0gICAgMTAsIDExLCAyNTAsIDI0MywgMTAsIDExLCAyNTAsIDI0MiwgMTAsIDExLCAyNTAsIDI0MSwgMTAsIDExLCAyNTAsIDI0MCwgCi0gICAgMTAsIDExLCAyNTAsIDIzOSwgMTAsIDExLCAyNTAsIDIzOCwgMTAsIDExLCAyNTAsIDIzNywgMTAsIDExLCAyNTAsIDIzNiwgCi0gICAgMTAsIDExLCAyNTAsIDIzNSwgMTAsIDExLCAyNTAsIDIzNCwgMTAsIDExLCAyNTAsIDIzMywgMTAsIDExLCAyNTAsIDIzMiwgCi0gICAgMTAsIDExLCAyNTAsIDIzMSwgMTAsIDExLCAyNTAsIDIzMCwgMTAsIDExLCAyNTAsIDIyOSwgMTAsIDExLCAyNTAsIDIyOCwgCi0gICAgMTAsIDExLCAyNTAsIDIyNywgMTAsIDExLCAyNTAsIDIyNiwgMTAsIDExLCAyNTAsIDIyNSwgMTAsIDExLCAyNTAsIDIyNCwgCi0gICAgMTAsIDExLCAyNTAsIDIyMywgMTAsIDExLCAyNTAsIDIyMiwgMTAsIDExLCAyNTAsIDIyMSwgMTAsIDExLCAyNDksIDIsIDEwLCAKLSAgICAxMSwgMjQ5LCAxLCAxMCwgMTEsIDI0OSwgMCwgMTAsIDExLCAyNDgsIDI1NSwgMTAsIDExLCAyNDgsIDI1NCwgMTAsIDExLCAKLSAgICAyNDgsIDI1MywgMTAsIDExLCAyNDgsIDI1MiwgMTAsIDExLCAyNDgsIDI1MSwgMTAsIDExLCAyNDgsIDI1MCwgMTAsIDExLCAKLSAgICAyNDgsIDI0OSwgMTAsIDExLCAyNDgsIDI0OCwgMTAsIDExLCAyNDgsIDI0NywgMTAsIDExLCAyNDgsIDI0NiwgMTAsIDExLCAKLSAgICAyNDgsIDI0NSwgMTAsIDExLCAyNDgsIDI0NCwgMTAsIDExLCAyNDgsIDI0MywgMTAsIDExLCAyNDgsIDI0MiwgMTAsIDExLCAKLSAgICAyNDgsIDI0MSwgMTAsIDExLCAyNDgsIDI0MCwgMTAsIDExLCAyNDgsIDIzOSwgMTAsIDExLCAyNDgsIDIzOCwgMTAsIDExLCAKLSAgICAyNDgsIDIzNywgMTAsIDExLCAyNDgsIDIzNiwgMTAsIDExLCAyNDgsIDIzNSwgMTAsIDExLCAyNDgsIDIzNCwgMTAsIDExLCAKLSAgICAyNDgsIDIzMywgMTAsIDExLCAyNDgsIDIzMiwgMTAsIDExLCAyNDgsIDIzMSwgMTAsIDExLCAyNDgsIDIzMCwgMTAsIDExLCAKLSAgICAyNDgsIDIyOSwgMTAsIDExLCAyNDgsIDIyOCwgMTAsIDExLCAyNDgsIDIyNywgMTAsIDExLCAyNDgsIDIyNiwgMTAsIDExLCAKLSAgICAyNDgsIDIyNSwgMTAsIDExLCAyNDgsIDIyNCwgMTAsIDExLCAyNDgsIDIyMywgMTAsIDExLCAyNDgsIDIyMiwgMTAsIDExLCAKLSAgICAyNDgsIDIyMSwgMTAsIDExLCAyNDgsIDIyMCwgMTAsIDExLCAyNDgsIDIxOSwgMTAsIDExLCAyNDgsIDIxOCwgMTAsIDExLCAKLSAgICAyNDgsIDIxNywgMTAsIDExLCAyNDgsIDIxNiwgMTAsIDExLCAyNDgsIDIxNSwgMTAsIDExLCAyNDgsIDIxNCwgMTAsIDExLCAKLSAgICAyNDgsIDIxMywgMTAsIDExLCAyNDgsIDIxMiwgMTAsIDExLCAyNDgsIDIxMSwgMTAsIDExLCAyNDgsIDIxMCwgMTAsIDExLCAKLSAgICAyNDgsIDIwOSwgMTAsIDExLCAyNDgsIDIwOCwgMTAsIDExLCAyNDgsIDIwNywgMTAsIDExLCAyNDgsIDIwNiwgMTAsIDExLCAKLSAgICAyNDgsIDIwNSwgMTAsIDExLCAyNDgsIDIwNCwgMTAsIDExLCAyNDgsIDIwMywgMTAsIDExLCAyNDgsIDIwMiwgMTAsIDExLCAKLSAgICAyNDgsIDIwMSwgMTAsIDExLCAyNDgsIDIwMCwgMTAsIDExLCAyNDgsIDE5OSwgMTAsIDExLCAyNDgsIDE5OCwgMTAsIDExLCAKLSAgICAyNDgsIDE5NywgMTAsIDExLCAyNDgsIDE5NiwgMTAsIDExLCAyNDgsIDE5NSwgMTAsIDExLCAyNDgsIDE5NCwgMTAsIDExLCAKLSAgICAyNDgsIDE5MywgMTAsIDExLCAyNDgsIDE5MiwgMTAsIDExLCAyNDgsIDE5MSwgMTAsIDExLCAyNDgsIDE5MCwgMTAsIDExLCAKLSAgICAyNDgsIDE4OSwgMTAsIDExLCAyNDgsIDE4OCwgMTAsIDExLCAyNDgsIDE4NywgMTAsIDExLCAyNDgsIDE4NiwgMTAsIDExLCAKLSAgICAyNDgsIDE4NSwgMTAsIDExLCAyNDgsIDE4NCwgMTAsIDExLCAyNDgsIDE4MywgMTAsIDExLCAyNDgsIDE4MiwgMTAsIDExLCAKLSAgICAyNDgsIDE4MSwgMTAsIDExLCAyNDgsIDE4MCwgMTAsIDExLCAyNDgsIDE3OSwgMTAsIDExLCAyNDgsIDE3OCwgMTAsIDExLCAKLSAgICAyNDgsIDE3NywgMTAsIDExLCAyNDgsIDE3NiwgMTAsIDExLCAyNDgsIDE3NSwgMTAsIDExLCAyNDgsIDE3NCwgMTAsIDExLCAKLSAgICAyNDgsIDE3MywgMTAsIDExLCAyNDgsIDE3MiwgMTAsIDExLCAyNDgsIDE3MSwgMTAsIDExLCAyNDgsIDE3MCwgMTAsIDExLCAKLSAgICAyNDgsIDE2OSwgMTAsIDExLCAyNDgsIDE2OCwgMTAsIDExLCAyNDgsIDE2NywgMTAsIDExLCAyNDUsIDIzNSwgMTAsIDExLCAKLSAgICAyNDUsIDIzNCwgMTAsIDExLCAyNDUsIDIzMywgMTAsIDExLCAyNDUsIDIzMiwgMTAsIDExLCAyNDUsIDIzMSwgMTAsIDExLCAKLSAgICAyNDUsIDIzMCwgMTAsIDExLCAyNDUsIDIyOSwgMTAsIDExLCAyNDUsIDIyOCwgMTAsIDExLCAyNDUsIDIyNywgMTAsIDExLCAKLSAgICAyNDUsIDIyNiwgMTAsIDExLCAyNDUsIDIyNSwgMTAsIDExLCAyNDUsIDIyNCwgMTAsIDExLCAyNDUsIDIyMywgMTAsIDExLCAKLSAgICAyNDUsIDIyMiwgMTAsIDExLCAyNDUsIDIyMSwgMTAsIDExLCAyNDUsIDIyMCwgMTAsIDExLCAyNDUsIDIxOSwgMTAsIDExLCAKLSAgICAyNDUsIDIxOCwgMTAsIDExLCAyNDUsIDIxNywgMTAsIDExLCAyNDUsIDIxNiwgMTAsIDExLCAyNDUsIDIxNSwgMTAsIDExLCAKLSAgICAyNDUsIDIxNCwgMTAsIDExLCAyNDUsIDIxMywgMTAsIDExLCAyNDUsIDIxMiwgMTAsIDExLCAyNDUsIDIxMSwgMTAsIDExLCAKLSAgICAyNDUsIDIxMCwgMTAsIDExLCAyNDUsIDIwOSwgMTAsIDExLCAyNDUsIDIwOCwgMTAsIDExLCAyNDUsIDIwNywgMTAsIDExLCAKLSAgICAyNDUsIDIwNiwgMTAsIDExLCAyNDUsIDIwNSwgMTAsIDExLCAyNDUsIDIwNCwgMTAsIDExLCAyNDUsIDIwMywgMTAsIDExLCAKLSAgICAyNDUsIDIwMiwgMTAsIDExLCAyNDUsIDIwMSwgMTAsIDExLCAyNDUsIDIwMCwgMTAsIDExLCAyNDUsIDE5OSwgMTAsIDExLCAKLSAgICAyNDUsIDE5OCwgMTAsIDExLCAyNDUsIDE5NywgMTAsIDExLCAyNDUsIDE5NiwgMTAsIDExLCAyNDUsIDE5NSwgMTAsIDExLCAKLSAgICAyNDUsIDE5NCwgMTAsIDExLCAyNDUsIDE5MywgMTAsIDExLCAyNDUsIDE5MiwgMTAsIDExLCAyNDQsIDIyOSwgMTAsIDExLCAKLSAgICAyNDQsIDIyOCwgMTAsIDExLCAyNDQsIDIyNywgMTAsIDExLCAyNDQsIDIyNiwgMTAsIDExLCAyNDQsIDIyNSwgMTAsIDExLCAKLSAgICAyNDQsIDIyNCwgMTAsIDExLCAyNDQsIDIyMywgMTAsIDExLCAyNDQsIDIyMiwgMTAsIDExLCAyNDQsIDIyMSwgMTAsIDExLCAKLSAgICAyNDQsIDIyMCwgMTAsIDExLCAyNDQsIDIxOSwgMTAsIDExLCAyNDQsIDIxOCwgMTAsIDExLCAyNDQsIDIxNywgMTAsIDExLCAKLSAgICAyNDQsIDIxNiwgMTAsIDExLCAyNDQsIDIxNSwgMTAsIDExLCAyNDQsIDIxNCwgMTAsIDExLCAyNDQsIDIxMywgMTAsIDExLCAKLSAgICAyNDQsIDIxMiwgMTAsIDExLCAyNDQsIDIxMSwgMTAsIDExLCAyNDQsIDIxMCwgMTAsIDExLCAyNDQsIDIwOSwgMTAsIDExLCAKLSAgICAyNDQsIDIwOCwgMTAsIDExLCAyNDQsIDIwNywgMTAsIDExLCAyNDQsIDIwNiwgMTAsIDExLCAyNDQsIDIwNSwgMTAsIDExLCAKLSAgICAyNDQsIDIwNCwgMTAsIDExLCAyNDQsIDIwMywgMTAsIDExLCAyNDQsIDIwMiwgMTAsIDExLCAyNDQsIDIwMSwgMTAsIDExLCAKLSAgICAyNDQsIDIwMCwgMTAsIDExLCAyNDQsIDE5OSwgMTAsIDExLCAyNDQsIDE5OCwgMTAsIDExLCAyNDQsIDE5NywgMTAsIDExLCAKLSAgICAyNDQsIDE5NiwgMTAsIDExLCAyNDQsIDE5NSwgMTAsIDExLCAyNDQsIDE5NCwgMTAsIDExLCAyNDQsIDE5MywgMTAsIDExLCAKLSAgICAyNDQsIDE5MiwgMTAsIDExLCAyNDQsIDE5MSwgMTAsIDExLCAyNDQsIDE5MCwgMTAsIDExLCAyNDQsIDE4OSwgMTAsIDExLCAKLSAgICAyNDQsIDE4OCwgMTAsIDExLCAyNDQsIDE4NywgMTAsIDExLCAyNDQsIDE4NiwgMTAsIDExLCAyNDQsIDE4NSwgMTAsIDExLCAKLSAgICAyNDQsIDE4NCwgMTAsIDExLCAyNDQsIDE4MywgMTAsIDExLCAyNDQsIDE4MiwgMTAsIDExLCAyNDQsIDE4MSwgMTAsIDExLCAKLSAgICAyNDQsIDE4MCwgMTAsIDExLCAyNDQsIDE3OSwgMTAsIDExLCAyNDQsIDE3OCwgMTAsIDExLCAyNDQsIDE3NywgMTAsIDExLCAKLSAgICAyNDQsIDE3NiwgMTAsIDExLCAyNDQsIDE3NSwgMTAsIDExLCAyNDQsIDE3NCwgMTAsIDExLCAyNDQsIDE3MywgMTAsIDExLCAKLSAgICAyNDQsIDE3MiwgMTAsIDExLCAyNDQsIDE3MSwgMTAsIDExLCAyNDQsIDE3MCwgMTAsIDExLCAyNDQsIDE2OSwgMTAsIDExLCAKLSAgICAyNDQsIDE2OCwgMTAsIDExLCAyNDQsIDE2NywgMTAsIDExLCAyNDQsIDE2NiwgMTAsIDExLCAyNDQsIDE2NSwgMTAsIDExLCAKLSAgICAyNDMsIDE3NiwgMTAsIDExLCAyNDMsIDE3NSwgMTAsIDExLCAyNDMsIDE3NCwgMTAsIDExLCAyNDMsIDE3MywgMTAsIDExLCAKLSAgICAyNDMsIDE3MiwgMTAsIDExLCAyNDMsIDE3MSwgMTAsIDExLCAyNDMsIDE3MCwgMTAsIDExLCAyNDMsIDE2OSwgMTAsIDExLCAKLSAgICAyNDMsIDE2OCwgMTAsIDExLCAyNDMsIDE2NywgMTAsIDExLCAyNDMsIDE2NiwgMTAsIDExLCAyNDMsIDE2NSwgMTAsIDExLCAKLSAgICAyNDMsIDE2NCwgMTAsIDExLCAyNDMsIDE2MywgMTAsIDExLCAyNDMsIDE2MiwgMTAsIDExLCAyNDMsIDE2MSwgMTAsIDExLCAKLSAgICAyNDMsIDE2MCwgMTAsIDExLCAyNDMsIDE1OSwgMTAsIDExLCAyNDMsIDE1OCwgMTAsIDExLCAyNDMsIDE1NywgMTAsIDExLCAKLSAgICAyNDMsIDE1NiwgMTAsIDExLCAyNDMsIDE1NSwgMTAsIDExLCAyNDMsIDE1NCwgMTAsIDExLCAyNDMsIDE1MywgMTAsIDExLCAKLSAgICAyNDMsIDE1MiwgMTAsIDExLCAyNDMsIDE1MSwgMTAsIDExLCAyNDMsIDE1MCwgMTAsIDExLCAyNDMsIDE0OSwgMTAsIDExLCAKLSAgICAyNDMsIDE0OCwgMTAsIDExLCAyNDMsIDE0NywgMTAsIDExLCAyNDMsIDE0NiwgMTAsIDExLCAyNDMsIDE0NSwgMTAsIDExLCAKLSAgICAyNDMsIDE0NCwgMTAsIDExLCAyNDMsIDE0MywgMTAsIDExLCAyNDMsIDE0MiwgMTAsIDExLCAyNDMsIDE0MSwgMTAsIDExLCAKLSAgICAyNDMsIDE0MCwgMTAsIDExLCAyNDMsIDEzOSwgMTAsIDExLCAyNDMsIDEzOCwgMTAsIDExLCAyNDMsIDEzNywgMTAsIDExLCAKLSAgICAyNDMsIDEzNiwgMTAsIDExLCAyNDMsIDEzNSwgMTAsIDExLCAyNDMsIDEzNCwgMTAsIDExLCAyNDMsIDEzMywgMTAsIDExLCAKLSAgICAyNDMsIDEzMiwgMTAsIDExLCAyNDMsIDEzMSwgMTAsIDExLCAyNDMsIDEzMCwgMTAsIDExLCAyNDMsIDEyOSwgMTAsIDExLCAKLSAgICAyNDMsIDEyOCwgMTAsIDExLCAyNDMsIDEyNywgMTAsIDExLCAyNDMsIDEyNiwgMTAsIDExLCAyNDMsIDEyNSwgMTAsIDExLCAKLSAgICAyNDMsIDEyNCwgMTAsIDExLCAyNDMsIDEyMywgMTAsIDExLCAyNDMsIDEyMiwgMTAsIDExLCAyNDMsIDEyMSwgMTAsIDExLCAKLSAgICAyNDMsIDEyMCwgMTAsIDExLCAyNDMsIDExOSwgMTAsIDExLCAyNDMsIDExOCwgMTAsIDExLCAyNDMsIDExNywgMTAsIDExLCAKLSAgICAyNDMsIDExNiwgMTAsIDExLCAyNDMsIDExNSwgMTAsIDExLCAyNDMsIDExNCwgMTAsIDExLCAyNDMsIDExMywgMTAsIDExLCAKLSAgICAyNDIsIDM5LCAxMCwgMTEsIDI0MiwgMzgsIDEwLCAxMSwgMjQyLCAzNywgMTAsIDExLCAyNDIsIDM2LCAxMCwgMTEsIDI0MiwgCi0gICAgMzUsIDEwLCAxMSwgMjQyLCAzNCwgMTAsIDExLCAyNDIsIDMzLCAxMCwgMTEsIDI0MiwgMzIsIDEwLCAxMSwgMjQyLCAzMSwgCi0gICAgMTAsIDExLCAyNDAsIDEzMCwgMTAsIDExLCAyNDAsIDEyOSwgMTAsIDExLCAyNDAsIDEyOCwgMTAsIDExLCAyNDAsIDEyNywgCi0gICAgMTAsIDExLCAyNDAsIDEyNiwgMTAsIDExLCAyNDAsIDEyNSwgMTAsIDExLCAyNDAsIDEyNCwgMTAsIDExLCAyNDAsIDEyMywgCi0gICAgMTAsIDExLCAyNDAsIDEyMiwgMTAsIDExLCAyNDAsIDEyMSwgMTAsIDExLCAyNDAsIDEyMCwgMTAsIDExLCAyNDAsIDExOSwgCi0gICAgMTAsIDExLCAyNDAsIDExOCwgMTAsIDExLCAyNDAsIDExNywgMTAsIDExLCAyNDAsIDExNiwgMTAsIDExLCAyNDAsIDExNSwgCi0gICAgMTAsIDExLCAyNDAsIDExNCwgMTAsIDExLCAyNDAsIDExMywgMTAsIDExLCAyNDAsIDExMiwgMTAsIDExLCAyMzUsIDI2LCAKLSAgICAxMCwgMTEsIDIzNSwgMjUsIDEwLCAxMSwgMjM1LCAyNCwgMTAsIDExLCAyMzUsIDIzLCAxMCwgMTEsIDIzNSwgMjIsIDEwLCAKLSAgICAxMSwgMjM1LCAyMSwgMTAsIDExLCAyMzUsIDIwLCAxMCwgMTEsIDIzNSwgMTksIDEwLCAxMSwgMjMzLCAxNjgsIDEwLCAxMSwgCi0gICAgMjMzLCAxNjcsIDEwLCAxMSwgMjMzLCAxNjYsIDEwLCAxMSwgMjMzLCAxNjUsIDEwLCAxMSwgMjMzLCAxNjQsIDEwLCAxMSwgCi0gICAgMjMzLCAxNjMsIDEwLCAxMSwgMjMzLCAxNjIsIDEwLCAxMSwgMjMzLCAxNjEsIDEwLCAxMSwgMjMzLCAxNjAsIDEwLCAxMSwgCi0gICAgMjMzLCAxNTksIDEwLCAxMSwgMjMyLCAxMDksIDEwLCAxMSwgMjMyLCAxMDgsIDEwLCAxMSwgMjMyLCAxMDcsIDEwLCAxMSwgCi0gICAgMjMyLCAxMDYsIDEwLCAxMSwgMjMyLCAxMDUsIDEwLCAxMSwgMjMyLCAxMDQsIDEwLCAxMSwgMjMyLCAxMDMsIDEwLCAxMSwgCi0gICAgMjMyLCAxMDIsIDEwLCAxMSwgMjMyLCAxMDEsIDEwLCAxMSwgMjMyLCAxMDAsIDEwLCAxMSwgMjMyLCA5OSwgMTAsIDExLCAKLSAgICAyMzIsIDk4LCAxMCwgMTEsIDIzMiwgOTcsIDEwLCAxMSwgMjMyLCA5NiwgMTAsIDExLCAyMzIsIDk1LCAxMCwgMTEsIDIzMiwgCi0gICAgOTQsIDEwLCAxMSwgMjMyLCA5MywgMTAsIDExLCAyMzIsIDkyLCAxMCwgMTEsIDIzMiwgOTEsIDEwLCAxMSwgMjMyLCA5MCwgCi0gICAgMTAsIDExLCAyMzIsIDg5LCAxMCwgMTEsIDIzMiwgODgsIDEwLCAxMSwgMjMyLCA4NywgMTAsIDExLCAyMzIsIDg2LCAxMCwgCi0gICAgMTEsIDIzMiwgODUsIDEwLCAxMSwgMjMyLCA4NCwgMTAsIDExLCAyMzIsIDgzLCAxMCwgMTEsIDIzMiwgODIsIDEwLCAxMSwgCi0gICAgMjMyLCA4MSwgMTAsIDExLCAyMzIsIDgwLCAxMCwgMTEsIDIzMiwgNzksIDEwLCAxMSwgMjMyLCA3OCwgMTAsIDExLCAyMzIsIAotICAgIDc3LCAxMCwgMTEsIDIzMiwgNzYsIDEwLCAxMSwgMjMyLCA3NSwgMTAsIDExLCAyMzIsIDc0LCAxMCwgMTEsIDIzMiwgNzMsIAotICAgIDEwLCAxMSwgMjMyLCA3MiwgMTAsIDExLCAyMzIsIDcxLCAxMCwgMTEsIDIzMiwgNzAsIDEwLCAxMSwgMjMyLCA2OSwgMTAsIAotICAgIDExLCAyMzIsIDY4LCAxMCwgMTEsIDIzMiwgNjcsIDEwLCAxMSwgMjMyLCA2NiwgMTAsIDExLCAyMzIsIDY1LCAxMCwgMTEsIAotICAgIDIzMiwgNjQsIDEwLCAxMSwgMjMyLCA2MywgMTAsIDExLCAyMzIsIDYyLCAxMCwgMTEsIDIzMiwgNjEsIDEwLCAxMSwgMjMyLCAKLSAgICA2MCwgMTAsIDExLCAyMzIsIDU5LCAxMCwgMTEsIDIzMiwgNTgsIDEwLCAxMSwgMjMyLCA1NywgMTAsIDExLCAyMzIsIDU2LCAKLSAgICAxMCwgMTEsIDIzMiwgNTUsIDEwLCAxMSwgMjMyLCA1NCwgMTAsIDExLCAyMzIsIDUzLCAxMCwgMTEsIDIzMiwgNTIsIDEwLCAKLSAgICAxMSwgMjMyLCA1MSwgMTAsIDExLCAyMzIsIDUwLCAxMCwgMTEsIDIzMiwgNDksIDEwLCAxMSwgMjMyLCA0OCwgMTAsIDExLCAKLSAgICAyMzIsIDQ3LCAxMCwgMTEsIDIzMiwgNDYsIDEwLCAxMSwgMjMyLCA0NSwgMTAsIDExLCAyMzIsIDQ0LCAxMCwgMTEsIDIzMCwgCi0gICAgOTUsIDEwLCAxMSwgMjMwLCA5NCwgMTAsIDExLCAyMzAsIDkzLCAxMCwgMTEsIDIzMCwgOTIsIDEwLCAxMSwgMjMwLCA5MSwgCi0gICAgMTAsIDExLCAyMzAsIDkwLCAxMCwgMTEsIDIzMCwgODksIDEwLCAxMSwgMjMwLCA4OCwgMTAsIDExLCAyMzAsIDg3LCAxMCwgCi0gICAgMTEsIDIzMCwgODYsIDEwLCAxMSwgMjMwLCA4NSwgMTAsIDExLCAyMzAsIDg0LCAxMCwgMTEsIDIzMCwgODMsIDEwLCAxMSwgCi0gICAgMjMwLCA4MiwgMTAsIDExLCAyMzAsIDgxLCAxMCwgMTEsIDIzMCwgODAsIDEwLCAxMSwgMjMwLCA3OSwgMTAsIDExLCAyMzAsIAotICAgIDc4LCAxMCwgMTEsIDIzMCwgNzcsIDEwLCAxMSwgMjMwLCA3NiwgMTAsIDExLCAyMzAsIDc1LCAxMCwgMTEsIDIzMCwgNzQsIAotICAgIDEwLCAxMSwgMjMwLCA3MywgMTAsIDExLCAyMzAsIDcyLCAxMCwgMTEsIDIzMCwgNzEsIDEwLCAxMSwgMjMwLCA3MCwgMTAsIAotICAgIDExLCAyMzAsIDY5LCAxMCwgMTEsIDIzMCwgNjgsIDEwLCAxMSwgMjMwLCA2NywgMTAsIDExLCAyMzAsIDY2LCAxMCwgMTEsIAotICAgIDIzMCwgNjUsIDEwLCAxMSwgMjMwLCA2NCwgMTAsIDExLCAyMzAsIDYzLCAxMCwgMTEsIDIzMCwgNjIsIDEwLCAxMSwgMjMwLCAKLSAgICA2MSwgMTAsIDExLCAyMzAsIDYwLCAxMCwgMTEsIDIzMCwgNTksIDEwLCAxMSwgMjMwLCA1OCwgMTAsIDExLCAyMzAsIDU3LCAKLSAgICAxMCwgMTEsIDIzMCwgNTYsIDEwLCAxMSwgMjMwLCA1NSwgMTAsIDExLCAyMzAsIDU0LCAxMCwgMTEsIDIzMCwgNTMsIDEwLCAKLSAgICAxMSwgMjMwLCA1MiwgMTAsIDExLCAyMzAsIDUxLCAxMCwgMTEsIDIzMCwgNTAsIDEwLCAxMSwgMjMwLCA0OSwgMTAsIDExLCAKLSAgICAyMzAsIDQ4LCAxMCwgMTEsIDIzMCwgNDcsIDEwLCAxMSwgMjI4LCAyMjIsIDEwLCAxMSwgMjI4LCAyMjEsIDEwLCAxMSwgCi0gICAgMjI4LCAyMjAsIDEwLCAxMSwgMjI4LCAyMTksIDEwLCAxMSwgMjI4LCAyMTgsIDEwLCAxMSwgMjI4LCAyMTcsIDEwLCAxMSwgCi0gICAgMjI4LCAyMTYsIDEwLCAxMSwgMjI4LCAyMTUsIDEwLCAxMSwgMjI4LCAyMTQsIDEwLCAxMSwgMjI4LCAyMTMsIDEwLCAxMSwgCi0gICAgMjI4LCAyMTIsIDEwLCAxMSwgMjI4LCAyMTEsIDEwLCAxMSwgMjI4LCAyMTAsIDEwLCAxMSwgMjI4LCAyMDksIDEwLCAxMSwgCi0gICAgMjI4LCAyMDgsIDEwLCAxMSwgMjI4LCAyMDcsIDEwLCAxMSwgMjI4LCAyMDYsIDEwLCAxMSwgMjI4LCAyMDUsIDEwLCAxMSwgCi0gICAgMjI4LCAyMDQsIDEwLCAxMSwgMjI4LCAyMDMsIDEwLCAxMSwgMjI4LCAyMDIsIDEwLCAxMSwgMjI4LCAyMDEsIDEwLCAxMSwgCi0gICAgMjI4LCA5MSwgMTAsIDExLCAyMjgsIDkwLCAxMCwgMTEsIDIyOCwgODksIDEwLCAxMSwgMjI4LCA4OCwgMTAsIDExLCAyMjgsIAotICAgIDg3LCAxMCwgMTEsIDIyOCwgODYsIDEwLCAxMSwgMjI4LCA4NSwgMTAsIDExLCAyMjgsIDg0LCAxMCwgMTEsIDIyOCwgODMsIAotICAgIDEwLCAxMSwgMjI4LCA4MiwgMTAsIDExLCAyMjgsIDgxLCAxMCwgMTEsIDIyOCwgODAsIDEwLCAxMSwgMjI4LCA3OSwgMTAsIAotICAgIDExLCAyMjgsIDc4LCAxMCwgMTEsIDIyOCwgNzcsIDEwLCAxMSwgMjI4LCA3NiwgMTAsIDExLCAyMjgsIDc1LCAxMCwgMTEsIAotICAgIDIyOCwgNzQsIDEwLCAxMSwgMjI4LCA3MywgMTAsIDExLCAyMjgsIDcyLCAxMCwgMTEsIDIyOCwgNzEsIDEwLCAxMSwgMjI4LCAKLSAgICA3MCwgMTAsIDExLCAyMjgsIDY5LCAxMCwgMTEsIDIyOCwgNjgsIDEwLCAxMSwgMjI4LCA2NywgMTAsIDExLCAyMjgsIDY2LCAKKyAgICAwLCAyMTksIDIyNSwgMjQ1LCAxMTksIDc5LCAyMjQsIDE3OCwgNzksIDUxLCA1MywgMjQ3LCAyMDcsIDUzLCAyMjYsIDkzLCAKKyAgICA1MywgMjU0LCAxNjIsIDI1NCwgOTcsIDQzLCAyMjYsIDE2OCwgNDcsIDIyNiwgMTY4LCAyNTQsIDMsIDk1LCA1MywgMjUwLCAKKyAgICAyMywgMjQxLCAyMCwgMjQ0LCA2NCwgMjE5LCA4MywgMjE5LCAyNTAsIDIxLCAyMTIsIDc5LCAyMSwgMTE4LCAyMSwgMTEyLCAKKyAgICAyMSwgMTcwLCAyMSwgMTY3LCAyMSwgMTg1LCAyMSwgMTkyLCAyMSwgMjAwLCAyMSwgMTk4LCAyMSwgMjAzLCAyNTAsIDMwLCAKKyAgICAyMjEsIDkzLCAyMzMsIDEzNywgNTMsIDI0NSwgMTgyLCA1MywgMjQyLCAyMjgsIDUzLCAyMjQsIDE5MywgNzksIDI1MCwgMjIsIAorICAgIDI1MywgMjQ5LCA3LCA2LCAxLCA2MywgNywgNiwgMSwgMjUzLCAyMDEsIDcsIDYsIDEsIDI1MSwgMTIxLCA3LCA2LCAxLCAKKyAgICAyNDksIDEyNSwgNywgNiwgMSwgNzcsIDcsIDYsIDEsIDI0NSwgOTUsIDcsIDYsIDEsIDI0NCwgNDEsIDcsIDYsIDEsIDI0MiwgCisgICAgMTYyLCA3LCA2LCAxLCA3NSwgNywgNiwgMSwgMjM2LCAzLCA3LCA2LCAxLCAyMzUsIDE0MSwgNywgNiwgMSwgMTU1LCA3LCA2LCAKKyAgICAxLCAxODQsIDcsIDYsIDEsIDIwNiwgNywgNiwgMSwgNzgsIDcsIDYsIDEsIDIyNywgMTEsIDcsIDYsIDEsIDIyNSwgMTksIDcsIAorICAgIDYsIDEsIDE1MiwgNywgNiwgMSwgMTk2LCA3LCA2LCAxLCAyMTgsIDExMywgNywgNiwgMSwgNzIsIDcsIDYsIDEsIDIxMSwgCisgICAgMjExLCA3LCA2LCAxLCAyMTQsIDg1LCA3LCA2LCAxLCAyMTMsIDE2OSwgNywgNiwgMSwgMjEzLCAxMDgsIDcsIDYsIDEsIAorICAgIDIxMiwgMTUyLCA0MywgNDIsIDEyNSwgMjIzLCAyMzcsIDIxOSwgMjUwLCA0NywgNDIsIDEyNSwgMjUwLCA5MSwgMjU1LCA0NiwgCisgICAgMTE3LCAyMzMsIDgzLCAyNDIsIDIzNCwgMjU1LCA0NiwgNywgNCwgMSwgNjMsIDcsIDQsIDEsIDI1MywgMjAxLCA3LCA0LCAxLCAKKyAgICAyNTEsIDEyMSwgNywgNCwgMSwgMjQ5LCAxMjUsIDcsIDQsIDEsIDc3LCA3LCA0LCAxLCAyNDUsIDk1LCA3LCA0LCAxLCAyNDQsIAorICAgIDQxLCA3LCA0LCAxLCAyNDIsIDE2MiwgNywgNCwgMSwgNzUsIDcsIDQsIDEsIDIzNiwgMywgNywgNCwgMSwgMjM1LCAxNDEsIAorICAgIDcsIDQsIDEsIDE1NSwgNywgNCwgMSwgMTg0LCA3LCA0LCAxLCAyMDYsIDcsIDQsIDEsIDc4LCA3LCA0LCAxLCAyMjcsIDExLCAKKyAgICA3LCA0LCAxLCAyMjUsIDE5LCA3LCA0LCAxLCAxNTIsIDcsIDQsIDEsIDE5NiwgNywgNCwgMSwgMjE4LCAxMTMsIDcsIDQsIDEsIAorICAgIDcyLCA3LCA0LCAxLCAyMTEsIDIxMSwgNywgNCwgMSwgMjE0LCA4NSwgNywgNCwgMSwgMjEzLCAxNjksIDcsIDQsIDEsIDIxMywgCisgICAgMTA4LCA3LCA0LCAxLCAyMTIsIDE1MiwgNDMsIDI0OSwgMTYzLCAxMjUsIDY2LCAyMzMsIDgzLCA0NywgMjQ5LCAxNjMsIAorICAgIDEyNSwgMTc3LCAyMjgsIDIyNywgMjE5LCAyMjUsIDIzNiwgNTIsIDI0NSwgMTE5LCA3OSwgMjUwLCAyMzMsIDUzLCAyMjUsIAorICAgIDE0NCwgNTMsIDI0OSwgMTYyLCA1MywgMjEzLCAzMiwgNTMsIDI1MSwgMTg4LCAxMzQsIDIyMiwgMTE1LCA1MywgMjQ4LCA3NCwgCisgICAgMjQ5LCAyMjUsIDUzLCAyNDQsIDIyNSwgMjI3LCA1OSwgMjM2LCA5NiwgMjMzLCAxNjQsIDUyLCAyNTQsIDE0NiwgMjI0LCAKKyAgICAxNzgsIDc5LCAyMjgsIDIwNiwgNTMsIDIxOSwgMjU1LCAyNDEsIDIxLCAyMjQsIDMwLCA1MywgMjMyLCAxMTAsIDI0OCwgCisgICAgMTQzLCA1MywgMjI1LCAxOTEsIDUzLCAyMTgsIDIzNywgMTEyLCAyMTgsIDIzNywgMTcwLCAyNTUsIDM2LCAyNTUsIDQ2LCAKKyAgICAyMzEsIDExMSwgNTMsIDIyNSwgMjM2LCA1MywgMjMxLCAxMDcsIDI0NywgMTk1LCAyNTAsIDI0MCwgMjE4LCAyMzcsIDExOCwgCisgICAgMjMyLCAyNiwgMjI3LCA1OSwgMjM2LCA5NiwgMjIzLCAxNzgsIDUyLCAyNTQsIDE0NiwgMjI0LCAxNzgsIDc5LCAyMTQsIAorICAgIDEwMSwgMjQ0LCA5MiwgMTI0LCAyMjQsIDIwMSwgMjE0LCAxMDEsIDI0NCwgOTIsIDEyNCwgMjQyLCAxMjksIDIxNCwgMTAxLCAKKyAgICAyNDQsIDkyLCAxMzcsIDIyNCwgMTk5LCAyMzYsIDUyLCAyMjQsIDE5MywgNzksIDcsIDYsIDEsIDExMSwgMiwgMjA5LCA3LCAKKyAgICA2LCAxLCAxMTEsIDIsIDEzOCwgNywgNiwgMSwgMTExLCAyLCAyNTAsIDkwLCA3LCA2LCAxLCAxMTEsIDIsIDE3NywgNywgNiwgCisgICAgMSwgMTExLCAyLCAyNDgsIDc0LCA3LCA2LCAxLCAxMTEsIDIsIDIyMywgMTY1LCA1MCwgNywgNiwgMSwgMjU1LCAyMCwgNywgCisgICAgNiwgMSwgMjUxLCAxMjIsIDIsIDI1MCwgMjQwLCA3LCA2LCAxLCAxNTQsIDIsIDIwOSwgNywgNiwgMSwgMTU0LCAyLCAxMzgsIAorICAgIDcsIDYsIDEsIDE1NCwgMiwgMjUwLCA5MCwgNywgNiwgMSwgMTU0LCAyLCAyNDgsIDc0LCA3LCA2LCAxLCAyNDEsIDcsIDIsIAorICAgIDIwOSwgNywgNiwgMSwgMjQxLCA3LCAyLCAxMzgsIDcsIDYsIDEsIDI0MSwgNywgMiwgMjUwLCA5MCwgNywgNiwgMSwgMjQxLCAKKyAgICA3LCAyLCAyNDgsIDc0LCA3LCA2LCAxLCAyNDUsIDE0NiwgNywgNiwgMSwgMjMwLCAxNjcsIDIsIDE3NywgNywgNiwgMSwgCisgICAgMTQxLCAyLCAyMDksIDcsIDYsIDEsIDE0MSwgMiwgMTM4LCA3LCA2LCAxLCAxNDEsIDIsIDI1MCwgOTAsIDcsIDYsIDEsIAorICAgIDE0MSwgMiwgMTc3LCA3LCA2LCAxLCAxNDEsIDIsIDI0OCwgNzQsIDIzMCwgMjI0LCA1MywgNywgNiwgMSwgMTQxLCAyLCA5MSwgCisgICAgNywgNiwgMSwgMTAzLCAyLCAyMDksIDcsIDYsIDEsIDEwMywgMiwgMTM4LCA3LCA2LCAxLCAxMDMsIDIsIDI1MCwgOTAsIDcsIAorICAgIDYsIDEsIDEwMywgMiwgMjQ4LCA3NCwgNywgNiwgMSwgMjEzLCAxMDksIDIsIDEzOCwgNywgNiwgMSwgMjE3LCAxMTcsIDcsIAorICAgIDQsIDEsIDIyMSwgMjEsIDE5NiwgNywgNCwgMSwgMTExLCAyLCAyMDksIDcsIDQsIDEsIDExMSwgMiwgMTM4LCA3LCA0LCAxLCAKKyAgICAxMTEsIDIsIDI1MCwgOTAsIDcsIDQsIDEsIDExMSwgMiwgMTc3LCA3LCA0LCAxLCAxMTEsIDIsIDI0OCwgNzQsIDcsIDQsIDEsIAorICAgIDExMSwgMiwgMjIzLCAxNjUsIDUwLCA3LCA0LCAxLCAyNTUsIDIwLCA3LCA0LCAxLCAyNTEsIDEyMiwgMiwgMjUwLCAyNDAsIAorICAgIDcsIDQsIDEsIDE1NCwgMiwgMjA5LCA3LCA0LCAxLCAxNTQsIDIsIDEzOCwgNywgNCwgMSwgMTU0LCAyLCAyNTAsIDkwLCA3LCAKKyAgICA0LCAxLCAxNTQsIDIsIDI0OCwgNzQsIDcsIDQsIDEsIDI0MSwgNywgMiwgMjA5LCA3LCA0LCAxLCAyNDEsIDcsIDIsIDEzOCwgCisgICAgNywgNCwgMSwgMjQxLCA3LCAyLCAyNTAsIDkwLCA3LCA0LCAxLCAyNDEsIDcsIDIsIDI0OCwgNzQsIDcsIDQsIDEsIDI0NSwgCisgICAgMTQ2LCA3LCA0LCAxLCAyMzAsIDE2NywgMiwgMTc3LCA3LCA0LCAxLCAxNDEsIDIsIDIwOSwgNywgNCwgMSwgMTQxLCAyLCAKKyAgICAxMzgsIDcsIDQsIDEsIDE0MSwgMiwgMjUwLCA5MCwgNywgNCwgMSwgMTQxLCAyLCAxNzcsIDcsIDQsIDEsIDE0MSwgMiwgCisgICAgMjQ4LCA3NCwgMjQ3LCAyNDIsIDUzLCA3LCA0LCAxLCAxNDEsIDIsIDkxLCA3LCA0LCAxLCAxMDMsIDIsIDIwOSwgNywgNCwgCisgICAgMSwgMTAzLCAyLCAxMzgsIDcsIDQsIDEsIDEwMywgMiwgMjUwLCA5MCwgNywgNCwgMSwgMTAzLCAyLCAyNDgsIDc0LCA3LCA0LCAKKyAgICAxLCAyMTMsIDEwOSwgMiwgMTM4LCA3LCA0LCAxLCAyMTcsIDExNywgNywgNCwgMSwgMjEzLCAxMDksIDIsIDI0OCwgNzQsIDcsIAorICAgIDYsIDEsIDExMSwgMiwgMjMyLCAxMTAsIDcsIDQsIDEsIDExMSwgMiwgMjMyLCAxMTAsIDcsIDYsIDEsIDExMSwgMiwgMjUxLCAKKyAgICAxOTksIDcsIDQsIDEsIDExMSwgMiwgMjUxLCAxOTksIDcsIDYsIDEsIDExMSwgMiwgMjI3LCAxMjcsIDcsIDQsIDEsIDExMSwgCisgICAgMiwgMjI3LCAxMjcsIDcsIDYsIDEsIDI1MSwgMTIyLCAyLCAxMzgsIDcsIDQsIDEsIDI1MSwgMTIyLCAyLCAxMzgsIDcsIDYsIAorICAgIDEsIDI1MSwgMTIyLCAyLCAyNTAsIDkwLCA3LCA0LCAxLCAyNTEsIDEyMiwgMiwgMjUwLCA5MCwgNywgNiwgMSwgMjUxLCAKKyAgICAxMjIsIDIsIDYyLCA1MCwgNywgNCwgMSwgMjUxLCAxMjIsIDIsIDYyLCA1MCwgNywgNiwgMSwgMjUxLCAxMjIsIDIsIDI1MSwgCisgICAgMzQsIDcsIDQsIDEsIDI1MSwgMTIyLCAyLCAyNTEsIDM0LCA3LCA2LCAxLCAyNDksIDEyNiwgMiwgMjUxLCAzNCwgNywgNCwgCisgICAgMSwgMjQ5LCAxMjYsIDIsIDI1MSwgMzQsIDcsIDYsIDEsIDI0OSwgMTI2LCAyLCA5MSwgNywgNCwgMSwgMjQ5LCAxMjYsIDIsIAorICAgIDkxLCA3LCA2LCAxLCAxNTQsIDIsIDIzMiwgMTEwLCA3LCA0LCAxLCAxNTQsIDIsIDIzMiwgMTEwLCA3LCA2LCAxLCAxNTQsIAorICAgIDIsIDI1MSwgMTk5LCA3LCA0LCAxLCAxNTQsIDIsIDI1MSwgMTk5LCA3LCA2LCAxLCAxNTQsIDIsIDYyLCA1MCwgNywgNCwgMSwgCisgICAgMTU0LCAyLCA2MiwgNTAsIDcsIDYsIDEsIDE1NCwgMiwgMjI3LCAxMjcsIDcsIDQsIDEsIDE1NCwgMiwgMjI3LCAxMjcsIDcsIAorICAgIDYsIDEsIDE1NCwgMiwgMjUxLCAzNCwgNywgNCwgMSwgMTU0LCAyLCAyNTEsIDM0LCA3LCA2LCAxLCAyNDQsIDQyLCAyLCAKKyAgICAyNTAsIDkwLCA3LCA0LCAxLCAyNDQsIDQyLCAyLCAyNTAsIDkwLCA3LCA2LCAxLCAyNDQsIDQyLCAyLCAyNTEsIDE5OSwgNywgCisgICAgNCwgMSwgMjQ0LCA0MiwgMiwgMjUxLCAxOTksIDcsIDYsIDEsIDI0NCwgNDIsIDIsIDYyLCA1MCwgNywgNCwgMSwgMjQ0LCAKKyAgICA0MiwgMiwgNjIsIDUwLCA3LCA2LCAxLCAyNDQsIDQyLCAyLCAyNTAsIDI0MCwgNywgNCwgMSwgMjQ0LCA0MiwgMiwgMjUwLCAKKyAgICAyNDAsIDcsIDYsIDEsIDI0MiwgMTYzLCAyLCAyNTAsIDkwLCA3LCA0LCAxLCAyNDIsIDE2MywgMiwgMjUwLCA5MCwgNywgNiwgCisgICAgMSwgMjQyLCAxNjMsIDIsIDkxLCA3LCA0LCAxLCAyNDIsIDE2MywgMiwgOTEsIDcsIDYsIDEsIDI0MSwgNywgMiwgMTc3LCA3LCAKKyAgICA0LCAxLCAyNDEsIDcsIDIsIDE3NywgNywgNiwgMSwgMjQxLCA3LCAyLCAyMzIsIDExMCwgNywgNCwgMSwgMjQxLCA3LCAyLCAKKyAgICAyMzIsIDExMCwgNywgNiwgMSwgMjQxLCA3LCAyLCAyNTEsIDE5OSwgNywgNCwgMSwgMjQxLCA3LCAyLCAyNTEsIDE5OSwgNywgCisgICAgNiwgMSwgMjQxLCA3LCAyLCAyMjcsIDEyNywgNywgNCwgMSwgMjQxLCA3LCAyLCAyMjcsIDEyNywgNywgNiwgMSwgMjQxLCA3LCAKKyAgICAyLCA2MiwgNTAsIDcsIDQsIDEsIDI0NywgMTk0LCA3NSwgNywgNiwgMjYsIDIzNiwgMTQzLCA3LCA0LCAyNiwgMjM2LCAxNDMsIAorICAgIDcsIDYsIDEsIDIzNiwgNCwgMiwgMjUwLCA5MCwgNywgNCwgMSwgMjM2LCA0LCAyLCAyNTAsIDkwLCA3LCA2LCAxLCAyMzUsIAorICAgIDE0MiwgMiwgMjUwLCAyNDAsIDcsIDQsIDEsIDIzNSwgMTQyLCAyLCAyNTAsIDI0MCwgNywgNCwgMSwgMjM0LCAxMDMsIDcsIAorICAgIDYsIDEsIDIzNCwgMTMsIDIsIDEzOCwgNywgNCwgMSwgMjM0LCAxMywgMiwgMTM4LCA3LCA2LCAxLCAyMzQsIDEzLCAyLCAKKyAgICAyNTAsIDI0MCwgNywgNCwgMSwgMjM0LCAxMywgMiwgMjUwLCAyNDAsIDcsIDYsIDEsIDIzNCwgMTMsIDIsIDI1MSwgMzQsIDcsIAorICAgIDQsIDEsIDIzNCwgMTMsIDIsIDI1MSwgMzQsIDcsIDYsIDEsIDIzNCwgMTMsIDIsIDIzMSwgMTA3LCAyNDcsIDE5NSwgNywgNCwgCisgICAgMSwgMjM0LCAxMywgMiwgMjMxLCAxMDcsIDI0NywgMTk1LCA3LCA2LCAxLCAyMzQsIDEzLCAyLCA5MSwgNywgNCwgMSwgMjM0LCAKKyAgICAxMywgMiwgOTEsIDcsIDYsIDEsIDIzMCwgMTY3LCAyLCAxMzgsIDcsIDQsIDEsIDIzMCwgMTY3LCAyLCAxMzgsIDcsIDYsIDEsIAorICAgIDIzMCwgMTY3LCAyLCAyNTAsIDI0MCwgNywgNCwgMSwgMjMwLCAxNjcsIDIsIDI1MCwgMjQwLCA3LCA2LCAxLCAyMzAsIDE2NywgCisgICAgMiwgMjUxLCAzNCwgNywgNCwgMSwgMjMwLCAxNjcsIDIsIDI1MSwgMzQsIDcsIDQsIDEsIDIzMCwgMTY3LCAyMjUsIDEyMCwgCisgICAgMjUxLCAxMzIsIDI1NCwgOTcsIDcsIDYsIDEsIDI0NSwgMjE3LCA3LCA0LCAxLCAyNDUsIDIxNywgNywgNiwgMSwgMTQxLCAyLCAKKyAgICAyMzIsIDExMCwgNywgNCwgMSwgMTQxLCAyLCAyMzIsIDExMCwgNywgNiwgMSwgMTQxLCAyLCAyNTEsIDE5OSwgNywgNCwgMSwgCisgICAgMTQxLCAyLCAyNTEsIDE5OSwgNywgNiwgMSwgMTQxLCAyLCA1MiwgMTM4LCA3LCA0LCAxLCAxNDEsIDIsIDUyLCAxMzgsIDcsIAorICAgIDYsIDI2LCAyMjcsIDEzNiwgNywgNCwgMjYsIDIyNywgMTM2LCA3LCA2LCAxLCAyMjQsIDE0OCwgMiwgMTM4LCA3LCA0LCAxLCAKKyAgICAyMjQsIDE0OCwgMiwgMTM4LCA3LCA2LCAxLCAyMjQsIDE0OCwgMiwgMjUwLCAyNDAsIDcsIDQsIDEsIDIyNCwgMTQ4LCAyLCAKKyAgICAyNTAsIDI0MCwgNywgNiwgMSwgMjI0LCAxNDgsIDIsIDI1MSwgMzQsIDcsIDQsIDEsIDIyNCwgMTQ4LCAyLCAyNTEsIDM0LCAKKyAgICA3LCA2LCAxLCAyMjMsIDI5LCAyLCAxMzgsIDcsIDQsIDEsIDIyMywgMjksIDIsIDEzOCwgNywgNiwgMSwgMjIzLCAyOSwgMiwgCisgICAgMjUwLCA5MCwgNywgNCwgMSwgMjIzLCAyOSwgMiwgMjUwLCA5MCwgNywgNiwgMSwgMjIzLCAyOSwgMiwgMjUwLCAyNDAsIDcsIAorICAgIDQsIDEsIDIyMywgMjksIDIsIDI1MCwgMjQwLCA3LCA2LCAxLCAyMjMsIDI5LCAyLCAyNTEsIDM0LCA3LCA0LCAxLCAyMjMsIAorICAgIDI5LCAyLCAyNTEsIDM0LCA3LCA2LCAxLCAyMTgsIDExNCwgMiwgMjUwLCAyNDAsIDcsIDQsIDEsIDIxOCwgMTE0LCAyLCAKKyAgICAyNTAsIDI0MCwgNywgNiwgMSwgMjE4LCAxMTQsIDIsIDI1MSwgMzQsIDcsIDQsIDEsIDIxOCwgMTE0LCAyLCAyNTEsIDM0LCAKKyAgICA3LCA2LCAxLCAyMTgsIDExNCwgMiwgOTEsIDcsIDQsIDEsIDIxOCwgMTE0LCAyLCA5MSwgNywgNiwgMSwgMTAzLCAyLCAxNzcsIAorICAgIDcsIDQsIDEsIDEwMywgMiwgMTc3LCA3LCA2LCAxLCAxMDMsIDIsIDIzMiwgMTEwLCA3LCA0LCAxLCAxMDMsIDIsIDIzMiwgCisgICAgMTEwLCA3LCA2LCAxLCAxMDMsIDIsIDI1MSwgMTk5LCA3LCA0LCAxLCAxMDMsIDIsIDI1MSwgMTk5LCA3LCA2LCAxLCAxMDMsIAorICAgIDIsIDIyMywgMTY1LCA1MCwgNywgNCwgMSwgMTAzLCAyLCAyMjMsIDE2NSwgNTAsIDcsIDYsIDEsIDEwMywgMiwgNTIsIDEzOCwgCisgICAgNywgNCwgMSwgMTAzLCAyLCA1MiwgMTM4LCA3LCA2LCAxLCAxMDMsIDIsIDIyNywgMTI3LCA3LCA0LCAxLCAxMDMsIDIsIAorICAgIDIyNywgMTI3LCA3LCA2LCAxLCAyMTQsIDg2LCAyLCAyNTAsIDkwLCA3LCA0LCAxLCAyMTQsIDg2LCAyLCAyNTAsIDkwLCA3LCAKKyAgICA2LCAxLCAyMTMsIDEwOSwgMiwgMjUwLCA5MCwgNywgNCwgMSwgMjEzLCAxMDksIDIsIDI1MCwgOTAsIDcsIDYsIDEsIDIxMywgCisgICAgMTA5LCAyLCAyNDgsIDc0LCA3LCA2LCAxLCAyMTIsIDE1MywgMiwgMTM4LCA3LCA0LCAxLCAyMTIsIDE1MywgMiwgMTM4LCA3LCAKKyAgICA2LCAxLCAyMTIsIDE1MywgMiwgNjIsIDUwLCA3LCA0LCAxLCAyMTIsIDE1MywgMiwgNjIsIDUwLCA3LCA2LCAxLCAyMTIsIAorICAgIDE1MywgMiwgMjUxLCAzNCwgNywgNCwgMSwgMjEyLCAxNTMsIDIsIDI1MSwgMzQsIDcsIDQsIDEsIDE4NywgMTk2LCA3LCA0LCAKKyAgICAxLCA1NywgMiwgOTEsIDcsIDYsIDEsIDU3LCAyLCAxMDIsIDcsIDYsIDEsIDU3LCAyLCAyMTYsIDIzNywgNywgNCwgMSwgNTcsIAorICAgIDIsIDIxNiwgMjM3LCA3LCA2LCAxLCAxNjEsIDE5MiwgNywgNCwgMSwgMTYxLCAxOTIsIDcsIDYsIDEsIDIxMCwgNzgsIDcsIAorICAgIDYsIDEsIDI1MSwgMTIyLCAyLCAxMDIsIDcsIDQsIDEsIDI1MSwgMTIyLCAyLCAxMDIsIDcsIDYsIDEsIDI1NCwgMjUyLCAKKyAgICAyNDksIDEyNSwgNywgNiwgMSwgMjQ5LCAxMjYsIDIsIDEwMiwgNywgNiwgMSwgMjQ5LCAxMjYsIDIsIDIxNiwgMjM3LCA3LCAKKyAgICA0LCAxLCAyNDksIDEyNiwgMiwgMjE2LCAyMzcsIDcsIDQsIDEsIDIxNiwgNjYsIDI0OCwgMTI2LCA3LCA2LCAxLCAyMjMsIAorICAgIDIzNiwgNzcsIDcsIDYsIDEsIDIyMiwgMTM2LCA3LCA2LCAxLCAyMTAsIDc3LCA3LCA2LCAxLCAyNDUsIDk2LCAyLCAxMDIsIAorICAgIDcsIDQsIDEsIDI0NSwgOTYsIDIsIDEwMiwgNywgNiwgMSwgMjQ0LCA0MiwgMiwgMTAyLCA3LCA2LCAxLCAyNDMsIDIwMywgNywgCisgICAgNCwgMSwgMjQxLCA1NCwgNywgNiwgMSwgMjM2LCA0NCwgNywgNiwgMSwgMjQxLCA3LCAyLCA5MSwgNywgNiwgMSwgMjM1LCAKKyAgICAxNDIsIDIsIDEwMiwgNywgNCwgMSwgMjM1LCAxNDIsIDIsIDEwMiwgNywgNCwgMSwgMjM0LCAxMywgMiwgMTM0LCA3LCA0LCAKKyAgICAxLCAyMzMsIDIyMiwgMiwgOTEsIDcsIDYsIDEsIDIxNiwgNjYsIDE4NCwgNywgNiwgMSwgMjMwLCAxNjcsIDIsIDQzLCAxMDIsIAorICAgIDcsIDQsIDEsIDIzMCwgMTY3LCAyLCAxODcsIDQ3LCAyMzMsIDE1OCwgNywgNiwgMSwgMTQxLCAyLCAyMzEsIDEwNywgMTc3LCAKKyAgICA3LCA2LCAxLCAxNDEsIDIsIDI0MSwgOTcsIDcsIDQsIDEsIDE0MSwgMiwgMjQxLCA5NywgNywgNiwgMSwgMjI3LCAxMjIsIDcsIAorICAgIDQsIDEsIDIyNywgMTIyLCA3LCA2LCAxLCAyMjcsIDEyLCAyLCAxMDIsIDcsIDQsIDEsIDIyNywgMTIsIDIsIDEwMiwgNywgMSwgCisgICAgMjEyLCAyMDYsIDcsIDYsIDEsIDE2MSwgMTEyLCA3LCA0LCAxLCAxNjEsIDExMiwgNywgNiwgMSwgMjQ1LCAxNjEsIDcsIDEsIAorICAgIDIyMywgMjM2LCAyNDUsIDE2MiwgMjMyLCAyNTEsIDcsIDQsIDEsIDIxOCwgMTE0LCAyLCAyMjYsIDIzMCwgMTAyLCA3LCA2LCAKKyAgICAxLCAyMTgsIDExNCwgMiwgMTAyLCA3LCA0LCAxLCAyMTgsIDExNCwgMiwgMTAyLCA3LCA2LCAxLCAyMTgsIDExNCwgMiwgCisgICAgMjIzLCAyNDEsIDEwMiwgNywgNiwgMSwgMTAzLCAyLCAyNDEsIDk3LCA3LCA0LCAxLCAxMDMsIDIsIDI0MSwgOTcsIDcsIDYsIAorICAgIDEsIDIxNSwgMTM0LCA3LCA2LCAxLCAyMTUsIDg2LCAyLCAxMDIsIDcsIDYsIDEsIDIxMywgMTA5LCAyLCAxMDIsIDcsIDQsIAorICAgIDEsIDIxMywgMTA5LCAyLCAxMDIsIDcsIDYsIDEsIDIxMiwgMTUzLCAyLCA5MSwgNywgNCwgMSwgMjEyLCAxNTMsIDIsIDkxLCAKKyAgICA3LCA2LCAxLCAyNDUsIDk3LCA3LCA2LCAxLCAyNDUsIDk4LCAyMjMsIDIzNSwgNywgNCwgMSwgMjQ1LCA5OCwgMjIzLCAyMzUsIAorICAgIDcsIDQsIDEsIDI0NSwgOTgsIDIsIDIxOCwgNDAsIDcsIDEsIDExOSwgMiwgOTEsIDcsIDYsIDEsIDE2MSwgMTg1LCA3LCA0LCAKKyAgICAxLCAxNjEsIDE4NSwgNywgMSwgMjM2LCA1MiwgMjQzLCAyMCwgMjE5LCA4NCwgMiwgOTEsIDcsIDEsIDIxMywgMTcyLCA3LCAKKyAgICAxLCAyNDgsIDExOSwgMjUwLCA3MSwgNywgMSwgMjMzLCAxOTksIDI1MCwgNzEsIDcsIDEsIDI1NCwgMTczLCAyNTAsIDcxLCAKKyAgICA3LCAxLCAyMjMsIDI0MSwgMjUwLCA3MSwgNywgNiwgMSwgMjQ2LCAxMTYsIDIsIDI1MSwgMzQsIDcsIDYsIDEsIDI0OSwgCisgICAgMTI2LCAyLCA0LCAxLCAyMTIsIDE1MywgMiwgMjUxLCAzNCwgNywgNCwgMSwgMjQ2LCAxMTYsIDIsIDI1MSwgMzQsIDcsIDYsIAorICAgIDEsIDIzMywgNTgsIDcsIDYsIDEsIDIzNCwgMTMsIDIsIDQsIDEsIDIzNiwgMywgNywgNCwgMSwgMjMzLCA1OCwgNywgNiwgMSwgCisgICAgMjI5LCA4MSwgNywgNiwgMSwgMjMwLCAxNjcsIDIsIDQsIDEsIDIzNiwgMywgNywgNCwgMSwgMjI5LCA4MSwgNywgNiwgMSwgCisgICAgMTExLCAyLCAyNTEsIDM0LCA3LCA0LCAxLCAxMTEsIDIsIDI1MSwgMzQsIDcsIDYsIDEsIDI0MSwgNywgMiwgMjUxLCAzNCwgCisgICAgNywgNCwgMSwgMjQxLCA3LCAyLCAyNTEsIDM0LCA3LCA2LCAxLCAxNDEsIDIsIDI1MSwgMzQsIDcsIDQsIDEsIDE0MSwgMiwgCisgICAgMjUxLCAzNCwgNywgNiwgMSwgMTAzLCAyLCAyNTEsIDM0LCA3LCA0LCAxLCAxMDMsIDIsIDI1MSwgMzQsIDcsIDYsIDEsIAorICAgIDEwMywgMiwgMjQ4LCA3NSwgMjIsIDIzMiwgMTEwLCA3LCA0LCAxLCAxMDMsIDIsIDI0OCwgNzUsIDIyLCAyMzIsIDExMCwgNywgCisgICAgNiwgMSwgMTAzLCAyLCAyNDgsIDc1LCAyMiwgMTM4LCA3LCA0LCAxLCAxMDMsIDIsIDI0OCwgNzUsIDIyLCAxMzgsIDcsIDYsIAorICAgIDEsIDEwMywgMiwgMjQ4LCA3NSwgMjIsIDI1MSwgMzQsIDcsIDQsIDEsIDEwMywgMiwgMjQ4LCA3NSwgMjIsIDI1MSwgMzQsIAorICAgIDcsIDYsIDEsIDEwMywgMiwgMjQ4LCA3NSwgMjIsIDIwOSwgNywgNCwgMSwgMTAzLCAyLCAyNDgsIDc1LCAyMiwgMjA5LCA3LCAKKyAgICA0LCAxLCAyMTYsIDY2LCA3NywgNywgNiwgMSwgMTExLCAyLCAyNDgsIDc1LCAyMiwgMjMyLCAxMTAsIDcsIDQsIDEsIDExMSwgCisgICAgMiwgMjQ4LCA3NSwgMjIsIDIzMiwgMTEwLCA3LCA2LCAxLCAxMTEsIDIsIDYyLCA3NCwgMjIsIDIzMiwgMTEwLCA3LCA0LCAxLCAKKyAgICAxMTEsIDIsIDYyLCA3NCwgMjIsIDIzMiwgMTEwLCA3LCA2LCAxLCAyNTUsIDIxLCAyLCAyMzIsIDExMCwgNywgNCwgMSwgCisgICAgMjU1LCAyMSwgMiwgMjMyLCAxMTAsIDcsIDYsIDEsIDI0NCwgNDIsIDIsIDkxLCA3LCA0LCAxLCAyNDQsIDQyLCAyLCA5MSwgCisgICAgNywgNiwgMSwgMjQ0LCA0MiwgMiwgMjUxLCAzNCwgNywgNCwgMSwgMjQ0LCA0MiwgMiwgMjUxLCAzNCwgNywgNiwgMSwgMjM1LCAKKyAgICAxNDIsIDIsIDI1MSwgMzQsIDcsIDQsIDEsIDIzNSwgMTQyLCAyLCAyNTEsIDM0LCA3LCA2LCAxLCAxNDEsIDIsIDIyNywgCisgICAgMTI3LCA3LCA0LCAxLCAxNDEsIDIsIDIyNywgMTI3LCA3LCA2LCAxLCAxNDEsIDIsIDIyNywgMTI4LCAyMiwgMjMyLCAxMTAsIAorICAgIDcsIDQsIDEsIDE0MSwgMiwgMjI3LCAxMjgsIDIyLCAyMzIsIDExMCwgNywgNiwgMSwgMjQ1LCA5OCwgMiwgMjUxLCAzNCwgNywgCisgICAgNCwgMSwgMjQ1LCA5OCwgMiwgMjUxLCAzNCwgNywgNCwgMSwgMjM2LCA0LCAyLCAyNTEsIDM0LCA3LCA2LCAxLCAyNDYsIAorICAgIDExNSwgNywgNiwgMSwgMjQ5LCAxMjYsIDIsIDQsIDEsIDIxMiwgMTUyLCA3LCA0LCAxLCAyNDYsIDExNSwgNywgNiwgMSwgCisgICAgMjQ0LCA0MiwgMiwgMTM4LCA3LCA0LCAxLCAyNDQsIDQyLCAyLCAxMzgsIDcsIDYsIDEsIDI0MSwgNTIsIDcsIDYsIDEsIAorICAgIDIxMywgMTcyLCA3LCA2LCAxLCAyMzAsIDE2NywgMiwgMjA5LCA3LCA0LCAxLCAyMzAsIDE2NywgMiwgMjA5LCA3LCA2LCAxLCAKKyAgICAxMTEsIDIsIDIyMywgMTY1LCA3NCwgMjIsIDEzOCwgNywgNCwgMSwgMTExLCAyLCAyMjMsIDE2NSwgNzQsIDIyLCAxMzgsIDcsIAorICAgIDYsIDEsIDI1NSwgMjEsIDIsIDEzOCwgNywgNCwgMSwgMjU1LCAyMSwgMiwgMTM4LCA3LCA2LCAxLCAxNDEsIDIsIDIxOSwgCisgICAgNTksIDIyLCAxMzgsIDcsIDQsIDEsIDE0MSwgMiwgMjE5LCA1OSwgMjIsIDEzOCwgNywgNiwgMSwgMTExLCAyLCA1MiwgMjA5LCAKKyAgICA3LCA0LCAxLCAxMTEsIDIsIDUyLCAyMDksIDcsIDYsIDEsIDExMSwgMiwgMjM2LCA1MiwgMjUxLCAxOTksIDcsIDQsIDEsIAorICAgIDExMSwgMiwgMjM2LCA1MiwgMjUxLCAxOTksIDcsIDYsIDEsIDE1NCwgMiwgNTIsIDIwOSwgNywgNCwgMSwgMTU0LCAyLCA1MiwgCisgICAgMjA5LCA3LCA2LCAxLCAxNTQsIDIsIDIzNiwgNTIsIDI1MSwgMTk5LCA3LCA0LCAxLCAxNTQsIDIsIDIzNiwgNTIsIDI1MSwgCisgICAgMTk5LCA3LCA2LCAxLCAyNDEsIDcsIDIsIDUyLCAyMDksIDcsIDQsIDEsIDI0MSwgNywgMiwgNTIsIDIwOSwgNywgNiwgMSwgCisgICAgMjQxLCA3LCAyLCAyMzYsIDUyLCAyNTEsIDE5OSwgNywgNCwgMSwgMjQxLCA3LCAyLCAyMzYsIDUyLCAyNTEsIDE5OSwgNywgCisgICAgNiwgMSwgMTQxLCAyLCA1MiwgMjA5LCA3LCA0LCAxLCAxNDEsIDIsIDUyLCAyMDksIDcsIDYsIDEsIDE0MSwgMiwgMjM2LCAKKyAgICA1MiwgMjUxLCAxOTksIDcsIDQsIDEsIDE0MSwgMiwgMjM2LCA1MiwgMjUxLCAxOTksIDcsIDYsIDEsIDIyNCwgMTQ4LCAyLCAKKyAgICA1MiwgMjA5LCA3LCA0LCAxLCAyMjQsIDE0OCwgMiwgNTIsIDIwOSwgNywgNiwgMSwgMjI0LCAxNDgsIDIsIDIzNiwgNTIsIAorICAgIDI1MSwgMTk5LCA3LCA0LCAxLCAyMjQsIDE0OCwgMiwgMjM2LCA1MiwgMjUxLCAxOTksIDcsIDYsIDEsIDEwMywgMiwgNTIsIAorICAgIDIwOSwgNywgNCwgMSwgMTAzLCAyLCA1MiwgMjA5LCA3LCA2LCAxLCAxMDMsIDIsIDIzNiwgNTIsIDI1MSwgMTk5LCA3LCA0LCAKKyAgICAxLCAxMDMsIDIsIDIzNiwgNTIsIDI1MSwgMTk5LCA3LCA2LCAxLCAyMjMsIDI5LCAyLCAyNTAsIDI0LCA1NSwgNywgNCwgMSwgCisgICAgMjIzLCAyOSwgMiwgMjUwLCAyNCwgNTUsIDcsIDYsIDEsIDIxOCwgMTE0LCAyLCAyNTAsIDI0LCA1NSwgNywgNCwgMSwgMjE4LCAKKyAgICAxMTQsIDIsIDI1MCwgMjQsIDU1LCA3LCA2LCAxLCAyMTIsIDIyMywgNywgNCwgMSwgMjEyLCAyMjMsIDcsIDYsIDEsIDI0MiwgCisgICAgMTYzLCAyLCAyNTEsIDM0LCA3LCA0LCAxLCAyNDIsIDE2MywgMiwgMjUxLCAzNCwgNywgNiwgMSwgMjMwLCAxNjcsIDIsIAorICAgIDE4NywgNDcsIDIzMywgMTU4LCA3LCA0LCAxLCAyNDksIDEyNiwgMiwgMjQ5LCAxNjQsIDcsIDYsIDEsIDIyNywgNDAsIDcsIAorICAgIDQsIDEsIDIyNywgNDAsIDcsIDYsIDEsIDIxMiwgMTUzLCAyLCAxMDIsIDcsIDQsIDEsIDIxMiwgMTUzLCAyLCAxMDIsIDcsIAorICAgIDYsIDEsIDExMSwgMiwgNjIsIDUwLCA3LCA0LCAxLCAxMTEsIDIsIDYyLCA1MCwgNywgNiwgMSwgMTU0LCAyLCAyNTAsIDI0MCwgCisgICAgNywgNCwgMSwgMTU0LCAyLCAyNTAsIDI0MCwgNywgNiwgMSwgMTQxLCAyLCAyNDgsIDc1LCAyMiwgMjMyLCAxMTAsIDcsIDQsIAorICAgIDEsIDE0MSwgMiwgMjQ4LCA3NSwgMjIsIDIzMiwgMTEwLCA3LCA2LCAxLCAxNDEsIDIsIDIxNywgNTYsIDIyLCAyMzIsIDExMCwgCisgICAgNywgNCwgMSwgMTQxLCAyLCAyMTcsIDU2LCAyMiwgMjMyLCAxMTAsIDcsIDYsIDEsIDE0MSwgMiwgNjIsIDUwLCA3LCA0LCAxLCAKKyAgICAxNDEsIDIsIDYyLCA1MCwgNywgNiwgMSwgMTQxLCAyLCA2MiwgNzQsIDIyLCAyMzIsIDExMCwgNywgNCwgMSwgMTQxLCAyLCAKKyAgICA2MiwgNzQsIDIyLCAyMzIsIDExMCwgNywgNiwgMSwgMjEzLCAxMDksIDIsIDIzMiwgMTEwLCA3LCA0LCAxLCAyMTMsIDEwOSwgCisgICAgMiwgMjMyLCAxMTAsIDcsIDQsIDEsIDIzNCwgMTMsIDIsIDI0OSwgMTY0LCA3LCA0LCAxLCAyMzAsIDE2NywgMiwgMjQ5LCAKKyAgICAxNjQsIDcsIDQsIDEsIDIxOCwgMTE0LCAyLCAyNDksIDE2NCwgNywgNCwgMSwgMjQ3LCAxOTQsIDIzNiwgMywgNywgNCwgMSwgCisgICAgMjQ4LCAyMTAsIDI0OCwgMzcsIDcsIDQsIDEsIDIyNCwgMjExLCAyNDgsIDM3LCA3LCA2LCAxLCAxMTEsIDIsIDkxLCA3LCA2LCAKKyAgICAxLCAyNTEsIDEyMiwgMiwgOTEsIDcsIDQsIDEsIDI1MSwgMTIyLCAyLCA5MSwgNywgNiwgMSwgMjM0LCAxMywgMiwgMTM0LCAKKyAgICA3LCA2LCAxLCAyMTgsIDExNCwgMiwgMjQ4LCA3MiwgOTEsIDcsIDQsIDEsIDIyMywgMjksIDIsIDIxOCwgMjA5LCAyMTgsIAorICAgIDQwLCA3LCA0LCAxLCAyMTIsIDE1MywgMiwgMjE4LCAyMDksIDIxOCwgNDAsIDcsIDYsIDEsIDI0MywgMjAsIDIxOSwgODMsIAorICAgIDcsIDQsIDEsIDI0MywgMjAsIDIxOSwgODMsIDcsIDYsIDEsIDU3LCAyLCA5MSwgNywgNiwgMSwgMTAzLCAxMzQsIDcsIDYsIAorICAgIDEsIDIxNiwgNjYsIDIxMSwgMjExLCA3LCA2LCAxLCAxNTQsIDIsIDkxLCA3LCA0LCAxLCAxNTQsIDIsIDkxLCA3LCA2LCAxLCAKKyAgICAyMzYsIDQsIDIsIDkxLCA3LCA0LCAxLCAyMzYsIDQsIDIsIDkxLCA3LCA2LCAxLCA0LCAyMjUsIDIwLCAyLCAyNDEsIDE1NywgCisgICAgMjE4LCA0MCwgNywgNCwgMSwgMjI1LCAyMCwgMiwgMjQxLCAxNTcsIDIxOCwgNDAsIDcsIDYsIDEsIDIyNCwgMTQ4LCAyLCAKKyAgICA5MSwgNywgNCwgMSwgMjI0LCAxNDgsIDIsIDkxLCA3LCA2LCAxLCAyMTMsIDEwOSwgMiwgOTEsIDcsIDQsIDEsIDIxMywgCisgICAgMTA5LCAyLCA5MSwgNywgNCwgMSwgMjE2LCA2NiwgNjMsIDcsIDQsIDEsIDI1NCwgMTc5LCA3LCA0LCAxLCAyMTYsIDY2LCAKKyAgICAyNTQsIDE3OSwgNywgNCwgMSwgNTcsIDIsIDEwMiwgNywgNCwgMSwgMjEwLCA3OCwgNywgNCwgMSwgMjUxLCAxMjIsIDIsIAorICAgIDI0OSwgMTY0LCA3LCA0LCAxLCAyNDksIDEyNiwgMiwgMjE4LCA0MCwgNywgNCwgMSwgMjQ5LCAxMjYsIDIsIDEwMiwgNywgNCwgCisgICAgMSwgMjIzLCAyMzYsIDc3LCA3LCA0LCAxLCAyMjIsIDEzNiwgNywgNCwgMSwgMjIyLCAxMzcsIDIsIDEwMiwgNywgNCwgMSwgCisgICAgMjEwLCA3NywgNywgNCwgMSwgMjIzLCAyMzYsIDIxMCwgNzcsIDcsIDQsIDEsIDIyMywgMjM2LCAyMTAsIDE1NCwgMiwgMTAyLCAKKyAgICA3LCA0LCAxLCAyNTAsIDYwLCAyMjMsIDIzNiwgMjEwLCA3NywgNywgNCwgMSwgMjQ3LCAxOTQsIDIzNiwgNCwgMiwgOTEsIDcsIAorICAgIDQsIDEsIDI0NCwgNDIsIDIsIDEwMiwgNywgNCwgMSwgMTE1LCAyNDQsIDQxLCA3LCAxLCA0LCA2LCAyNDQsIDQxLCA3LCA0LCAKKyAgICAxLCAyNDMsIDIwMywgNywgNCwgMSwgMjI0LCA3OCwgMjQxLCA5NywgNywgNCwgMSwgMjE2LCA2NiwgMjQyLCAxNjIsIDcsIDQsIAorICAgIDEsIDI0MiwgMTYzLCAyLCAxMDIsIDcsIDQsIDEsIDI0MiwgNTUsIDIsIDEwMiwgNywgNCwgMSwgMjQxLCA3LCAyLCA5MSwgNywgCisgICAgNCwgMSwgMjM2LCA0NCwgNywgMSwgNCwgNiwgNzUsIDcsIDQsIDEsIDIzNCwgMTMsIDIsIDIzMSwgMTA3LCAxNzcsIDcsIDQsIAorICAgIDEsIDIzNCwgMTMsIDIsIDI1MiwgODgsIDcsIDQsIDEsIDIzNCwgMTMsIDIsIDIyMywgMjQxLCAxMDIsIDcsIDQsIDEsIDIzMywgCisgICAgMTI1LCA3LCA0LCAxLCAyMTYsIDY2LCAxODQsIDcsIDQsIDEsIDIxNiwgNjYsIDIzMiwgMTgzLCAyLCAxODcsIDIzMywgMTU4LCAKKyAgICA3LCA0LCAxLCAyMzIsIDE4MywgMiwgMTAyLCA3LCA0LCAxLCAyMzAsIDE2NywgMiwgNDMsIDEwMiwgNywgNCwgMSwgMjMwLCAKKyAgICAxNjcsIDIsIDIyMywgMjQxLCAxMDIsIDcsIDEsIDQsIDYsIDIwNiwgNywgNCwgMSwgMjUyLCAxODAsIDc4LCA3LCAxLCA0LCAKKyAgICA2LCAyMjcsIDEzNiwgNywgNCwgMSwgMjUwLCA2MCwgMjI3LCAxMDQsIDcsIDQsIDEsIDIyNiwgNDUsIDcsIDQsIDEsIDIxNiwgCisgICAgNjYsIDE1MiwgNywgNCwgMSwgMjE2LCA2NiwgMjI0LCAxNDgsIDIsIDE4NywgMjMzLCAxNTgsIDcsIDQsIDEsIDIxNiwgNjYsIAorICAgIDIyNCwgMTQ4LCAyLCAxMDIsIDcsIDQsIDEsIDIyNCwgMTQ4LCAyLCAxODcsIDIzMywgMTU4LCA3LCA0LCAxLCAyMjQsIDE0OCwgCisgICAgMiwgMjE4LCA0MCwgNywgNCwgMSwgMjI0LCAxNDgsIDIsIDI0NCwgMTc2LCA3LCA0LCAxLCAyMjMsIDIzNiwgMjI0LCAxNDgsIAorICAgIDIsIDI0NCwgMTc2LCA3LCAxLCA0LCA2LCAxNTIsIDcsIDEsIDQsIDYsIDIzNiwgNTIsIDE1MiwgNywgNCwgMSwgMjIzLCAyOSwgCisgICAgMiwgMTAyLCA3LCA0LCAxLCAyNDUsIDE2MSwgNywgNCwgMSwgMjQ3LCAxOTQsIDIzNiwgNCwgMiwgMjE5LCA1OSwgMjIsIAorICAgIDEwMiwgNywgNCwgMSwgMjE5LCAxODIsIDIyMywgMjM2LCAyNDUsIDE2MSwgNywgNCwgMSwgMjQ1LCAxNjIsIDIsIDI0OSwgCisgICAgMTY0LCA3LCA0LCAxLCAyMTYsIDY2LCAyMTgsIDExMywgNywgNCwgMSwgMjE4LCAxMTQsIDIsIDIyMywgMjQxLCAxMDIsIDcsIAorICAgIDQsIDEsIDEwMywgMTM0LCA3LCA0LCAxLCAyMTUsIDEzNCwgNywgNCwgMSwgMjE1LCA4NiwgMiwgMTAyLCA3LCA0LCAxLCAKKyAgICAyMTYsIDY2LCAyMTEsIDIxMSwgNywgNCwgMSwgMjE2LCA2NiwgMjE0LCA4NSwgNywgNCwgMSwgMjE2LCA2NiwgMjEzLCAxMDgsIAorICAgIDcsIDEsIDQsIDYsIDIxMywgMTA4LCA3LCA0LCAxLCAyMTIsIDE1MywgMiwgMjIzLCAyNDEsIDEwMiwgNywgNCwgMSwgMjEyLCAKKyAgICAxNTMsIDIsIDI0OSwgMTY0LCA3LCA0LCAxLCAyNDUsIDk3LCA3LCA0LCAxLCAyNDUsIDk4LCAyLCAyNDksIDE2NCwgNywgMSwgCisgICAgMjQzLCAyMCwgMjE5LCA4MywgNywgMSwgMjI2LCA1MSwgMjE0LCAxMjAsIDI0NCwgODMsIDcsIDEsIDIzNiwgNTIsIDI0MywgCisgICAgMjAsIDIxOSwgODMsIDcsIDEsIDIxOSwgNjQsIDI1MSwgMTIxLCA3LCAxLCAyNTIsIDM4LCAyNTAsIDcxLCA3LCAxLCA0LCA2LCAKKyAgICAyNTMsIDIwMSwgNywgNCwgMSwgMjUwLCA2MCwgMjEwLCA3NywgNywgMSwgNCwgNiwgMjQ0LCA0MiwgMiwgMTAyLCA3LCAxLCAKKyAgICA0LCA2LCAyNDIsIDE2MiwgNywgNCwgMSwgMjM2LCA0LCAyLCAyNDksIDE5MCwgNywgNCwgMSwgMjE2LCA2NiwgMjM1LCAxNDEsIAorICAgIDcsIDEsIDQsIDYsIDE1NSwgNywgNCwgMSwgMjI1LCAyMCwgMiwgMTAyLCA3LCAxLCAyNDMsIDIwLCAyMTksIDg0LCAyLCA5MSwgCisgICAgNywgMSwgMjIzLCAyMzYsIDI0MywgMjAsIDIxOSwgODQsIDIsIDkxLCA3LCA0LCAxLCAyNDYsIDExNiwgMjQ4LCAzNywgNywgCisgICAgNCwgMSwgMjQ4LCA5OCwgMjQ4LCAzNywgNywgNCwgMSwgMjQ2LCAxMTYsIDI0OCwgMzgsIDIsIDI0OSwgMTY0LCA3LCA0LCAxLCAKKyAgICAyMTYsIDE1NiwgMjQ4LCAzNywgNywgNCwgMSwgMjE3LCAyMDEsIDI0OCwgMzcsIDcsIDQsIDEsIDIxNywgMjQ5LCAyNDgsIAorICAgIDM4LCAyLCAyNDksIDE2NCwgNywgNCwgMSwgMjQ0LCAyMjMsIDI0OCwgMzcsIDcsIDQsIDEsIDIzMiwgMjMyLCAyNDgsIDM3LCAKKyAgICA3LCA0LCAxLCAyMzIsIDE4NCwgMjQ4LCAzNywgNywgMSwgMjUyLCAzOCwgMjI2LCA5MiwgNywgMSwgMjUyLCA0NiwgMjI2LCAKKyAgICA5MiwgNywgNCwgMSwgMjE2LCA2NiwgMjQyLCAxNjMsIDIsIDI0NCwgMTc2LCA3LCA0LCAxLCAyMTYsIDY2LCAyNDIsIDE2MywgCisgICAgMiwgMjQ0LCAxNzcsIDIyLCAyMTgsIDQwLCA1OSwgMSwgNCwgMjQyLCAxNjIsIDU5LCAxLCA0LCAyNDIsIDE2MywgMiwgMTAyLCAKKyAgICA1OSwgMSwgNCwgMjM2LCAzLCA1OSwgMSwgNCwgMTUyLCA1OSwgMSwgNCwgMjE2LCA2NiwgMTUyLCA1OSwgMSwgNCwgMjE2LCAKKyAgICA2NiwgMjI0LCAxNDgsIDIsIDEwMiwgNTksIDEsIDQsIDYsIDIzNiwgNTIsIDE1MiwgNTksIDEsIDQsIDIxNCwgODUsIDU5LCAKKyAgICAxLCA0LCAyMTMsIDEwOCwgNTksIDEsIDIyNSwgMTA3LCA1OSwgMSwgNTIsIDIyNSwgMTA3LCA1OSwgMSwgMjE2LCA2NiwgCisgICAgMjUwLCAyMywgNTksIDEsIDI1NCwgOTcsIDU5LCAxLCAyMjMsIDIzNiwgMjUwLCAyMywgNTksIDEsIDQ3LCAxNTcsIDIyMywgCisgICAgMTY0LCA1OSwgMSwgNDMsIDE1NywgMjIzLCAxNjQsIDU5LCAxLCAyNDMsIDIwLCAyMTksIDgzLCA1OSwgMSwgMjIzLCAyMzYsIAorICAgIDI0MywgMjAsIDIxOSwgODMsIDU5LCAxLCA0MywgMjU0LCAzNSwgNTksIDEsIDQ3LCAyNTQsIDM1LCA1OSwgMSwgMTE2LCAKKyAgICAyNTQsIDM1LCA1OSwgMSwgMTIxLCAyNTQsIDM1LCA1OSwgMSwgMjUwLCA5MSwgMjU1LCA0NiwgMjUxLCAzNCwgNTksIDEsIAorICAgIDY2LCAyMzMsIDgzLCA1OSwgMSwgMjMyLCAxMTAsIDU5LCAxLCAyNTUsIDM2LCAyNTUsIDQ2LCA1OSwgMSwgMjQyLCAyMzQsIAorICAgIDI1NSwgNDYsIDU5LCAxLCAxMTcsIDY2LCAyMzMsIDgzLCA1OSwgMSwgMTE3LCAyMzIsIDExMCwgNTksIDEsIDExNywgMjQyLCAKKyAgICAyMzQsIDI1NSwgNDYsIDU5LCAxLCAxMTcsIDI1NSwgMzYsIDI1NSwgNDYsIDU5LCAxLCAyMTYsIDE5MywgMjUwLCAzMCwgNTksIAorICAgIDEsIDE1NywgMjE2LCAxOTMsIDI1MCwgMzAsIDU5LCAxLCAyNTAsIDIzMCwgNDcsIDE1NywgMjIzLCAxNjQsIDU5LCAxLCAKKyAgICAyNTAsIDIzMCwgNDMsIDE1NywgMjIzLCAxNjQsIDU5LCAxLCAxMTYsIDIxOCwgNTAsIDU5LCAxLCAxMjEsIDIxOCwgNTAsIAorICAgIDU5LCAxLCA5NSwgNTMsIDU5LCAxLCAyMzEsIDY1LCA1MywgMjUxLCAxOTksIDYyLCA1MCwgMjIzLCAxNjUsIDUwLCAyMjcsIAorICAgIDEyNywgNCwgMTc3LCA1MiwgMjU1LCAzNiwgMjU1LCA0NiwgNTksIDEsIDIyMywgMjIzLCAxMDIsIDU5LCAxLCAyNDksIDE5NCwgCisgICAgMjU1LCA0NiwgNTksIDEsIDQsIDI0MywgMjAzLCA1OSwgMSwgNCwgMTU1LCA1OSwgMSwgNCwgMTk2LCA1OSwgMSwgNCwgMjEzLCAKKyAgICAxNjksIDU5LCAxLCA0LCAyMjMsIDIzNiwgMjQzLCAyMCwgMjE5LCA4MywgNTksIDEsIDI0NSwgMTA5LCAxNjEsIDEzNCwgNTksIAorICAgIDEsIDEyNywgMTYxLCAxMzQsIDU5LCAxLCAyMzEsIDEwOCwgMTYxLCAxMzQsIDU5LCAxLCAxMTcsIDE2MSwgMTM0LCA1OSwgMSwgCisgICAgMjQ1LCAxMDgsIDE2MSwgMTM0LCA1OSwgMSwgMjEyLCAyNDYsIDI0OCwgMTE2LCAxNjEsIDc5LCA1OSwgMSwgMjEzLCA2MSwgCisgICAgMjQ4LCAxMTYsIDE2MSwgNzksIDU5LCAxLCAyMTQsIDExOCwgNTksIDEsIDIxNSwgMTYyLCA1OSwgMSwgNTIsIDI1NCwgOTcsIAorICAgIDU5LCAxLCAxMTcsIDEyMSwgMjU0LCAzNSwgNTksIDEsIDExNywgMTE2LCAyNTQsIDM1LCA1OSwgMSwgMTE3LCA0MywgMjU0LCAKKyAgICAzNSwgNTksIDEsIDExNywgNDcsIDI1NCwgMzUsIDU5LCAxLCAxMTcsIDIyMywgMTY0LCA1OSwgMSwgMjMxLCAxMDcsIDI0MiwgCisgICAgMjM0LCAyNTUsIDQ2LCA1OSwgMSwgMjMxLCAxMDcsIDUyLCAyNDIsIDIzNCwgMjU1LCA0NiwgNTksIDEsIDIzMSwgMTA3LCAKKyAgICA1MiwgMjU1LCAzNiwgMjU1LCA0NiwgNTksIDEsIDExNywgMTc3LCA1OSwgMSwgMjI0LCA4MywgMjUwLCAzMCwgNTksIDEsIAorICAgIDI1MiwgMTA0LCAxMjcsIDIxNiwgMjU0LCA1OSwgMSwgMjQ1LCAyMjIsIDEyNywgMjE2LCAyNTQsIDU5LCAxLCAyNTIsIDEwNCwgCisgICAgMTE3LCAyMTYsIDI1NCwgNTksIDEsIDI0NSwgMjIyLCAxMTcsIDIxNiwgMjU0LCA1OSwgMSwgMjIwLCAyNTUsIDU5LCAxLCAKKyAgICAyMTAsIDIyMCwgMjU1LCA1OSwgMSwgMTE3LCA0MywgNzEsIDM4LCAyNDIsIDIzNCwgMjU1LCA0NiwgMzgsIDI1NSwgMzYsIAorICAgIDI1NSwgNDYsIDM4LCAyNTAsIDkxLCAyNTUsIDQ2LCAzOCwgMTc3LCAzOCwgMjMyLCAxMTAsIDM4LCAyMjcsIDI1LCAzOCwgCisgICAgMjUxLCAxOTksIDM4LCA2MiwgNTAsIDM4LCAyNDgsIDc0LCAzOCwgMjQxLCAxNTcsIDUwLCAzOCwgMjIzLCAxNjUsIDUwLCAKKyAgICAzOCwgNTIsIDI1NSwgMzYsIDI1NSwgNDYsIDM4LCAyNTEsIDM0LCAzOCwgNjYsIDIzMywgODQsIDUwLCAzOCwgNTIsIDY2LCAKKyAgICAyMzMsIDg0LCA1MCwgMzgsIDUyLCAyNDIsIDIzNCwgMjU1LCA0NiwgMzgsIDI1MSwgNTUsIDM4LCAyMzYsIDUyLCAyNTEsIAorICAgIDE5OSwgMzgsIDIxNiwgNjYsIDI1MCwgMjQsIDUwLCAzOCwgMjUwLCAyNCwgNTAsIDM4LCAyMjMsIDIzNiwgMjUwLCAyNCwgCisgICAgNTAsIDM4LCAyNTAsIDI0LCA3NCwgMjIzLCAxODIsIDM4LCAyNDIsIDIzNCwgMjU1LCA0NywgNTUsIDM4LCAyNTUsIDM2LCAKKyAgICAyNTUsIDQ3LCA1NSwgMzgsIDQzLCAyMTgsIDUxLCA1NSwgMzgsIDQ3LCAyMTgsIDUxLCA1NSwgMzgsIDQzLCAyNTQsIDE0NiwgCisgICAgNTAsIDM4LCAyNDEsIDk3LCAzOCwgNDMsIDE1NywgMjIzLCAxNjUsIDU1LCAzOCwgMTE2LCAyMTgsIDUxLCA1NSwgMzgsIAorICAgIDEyMSwgMjE4LCA1MSwgNTUsIDM4LCA5NSwgNSwgNTUsIDM4LCAyMzEsIDY1LCA1LCA1NSwgMzgsIDIyNiwgMjI4LCAyNDEsIAorICAgIDE1NywgNTUsIDM4LCAyMjMsIDI0MSwgMjQxLCAxNTcsIDU1LCAzOCwgNjIsIDU1LCAzOCwgMjQ4LCA3NSwgNTUsIDM4LCAKKyAgICAyMjMsIDE2NSwgNTUsIDM4LCAyNTAsIDI0LCA1NSwgMzgsIDI1MCwgMjQwLCAzOCwgMjI3LCAxMjcsIDM4LCA2NiwgMjMzLCAKKyAgICA4NCwgNTUsIDM4LCAyNTEsIDE5MywgNTUsIDM4LCAyMzYsIDUyLCA1MiwgMjU0LCA2NSwgNTUsIDM4LCAyNTEsIDM1LCA1NSwgCisgICAgMzgsIDI1MCwgOTEsIDI1NSwgNDcsIDU1LCAzOCwgMjUxLCAyMDAsIDU1LCAzOCwgMjM2LCA1MiwgMjUxLCAyMDAsIDU1LCAKKyAgICAzOCwgMjE3LCA1NiwgNTUsIDM4LCAyMzIsIDExMSwgNTUsIDM4LCAxMTcsIDIzMywgODMsIDM4LCA1MiwgMTE3LCAyMzMsIAorICAgIDgzLCAzOCwgMjE3LCA1NiwgMjI3LCAyNiwgMzgsIDIyMCwgMTk2LCAyMTksIDU5LCAyMjcsIDI2LCAzOCwgMTg3LCAyMTksIAorICAgIDU5LCAyMjcsIDI2LCAzOCwgMjIwLCAxOTYsIDIxOSwgMjUxLCAyMjcsIDI2LCAzOCwgMTg3LCAyMTksIDI1MSwgMjI3LCAyNiwgCisgICAgMzgsIDQ3LCAxNTcsIDIyMywgMTY1LCA1NSwgMzgsIDIzNiwgNTIsIDI1MSwgMTkzLCA1NSwgMzgsIDQyLCA1NSwgMzgsIAorICAgIDIyMiwgMTIyLCA1NSwgMzgsIDIxMywgMTcwLCA1MCwgMzgsIDY2LCAxNzcsIDM4LCA1MiwgMjI3LCAyNSwgMzgsIDI0MiwgCisgICAgMjM0LCAxNjEsIDc5LCAzOCwgMjU1LCAzNiwgMTYxLCA3OSwgMzgsIDI1LCAyMjYsIDg2LCAzOCwgMjUsIDIzNCwgMTIyLCAKKyAgICAzOCwgMjUsIDI0OCwgNjksIDIxNiwgMjQ0LCAzOCwgMjUsIDIxMiwgMjExLCAzOCwgMjUxLCAxOTMsIDUwLCAzOCwgMjQ1LCAKKyAgICAxODIsIDUsIDU1LCAzOCwgNTIsIDY2LCAyMzMsIDg0LCA1NSwgMzgsIDQzLCAyNTQsIDE0NiwgNTUsIDM4LCAyMjgsIDIwNiwgCisgICAgMjE3LCA1NiwgNTAsIDM4LCAyNDEsIDE2MywgNTAsIDM4LCAyNTQsIDE4NCwgMTI2LCAyMTcsIDEwLCA1MCwgMzgsIDQzLCAKKyAgICA0NywgODAsIDU1LCAzOCwgMjE1LCAxMzAsIDgwLCA1NSwgMzgsIDI0MiwgMjM4LCAyMzUsIDE4MCwgMzgsIDQ3LCAyNTQsIAorICAgIDM2LCA1MCwgMzgsIDQzLCAxNTcsIDIyMywgMTY1LCA1MCwgMzgsIDI0NCwgMjIwLCAzOCwgMjEzLCAxNzAsIDU1LCAzOCwgCisgICAgNDMsIDI1NCwgMzYsIDU1LCAzOCwgNDcsIDI1NCwgMzYsIDU1LCAzOCwgNDcsIDI1NCwgMzYsIDIyLCAxMTYsIDI1NCwgMzYsIAorICAgIDU1LCAzOCwgNDcsIDE1NywgMjIzLCAxNjUsIDUwLCAzOCwgNjIsIDc0LCAyMjMsIDE4MiwgMzgsIDI1NCwgNCwgNTUsIDM4LCAKKyAgICA1MiwgMjIzLCAxNjUsIDU1LCAzOCwgMjEyLCAyOCwgNTAsIDM4LCA1MiwgMjUxLCAyMDAsIDU1LCAzOCwgNTIsIDI1MSwgCisgICAgMTk5LCAzOCwgNTIsIDIzMiwgMTEwLCAzOCwgNTIsIDIzMiwgMTExLCA1NSwgMzgsIDUyLCAxNzcsIDM4LCA1MiwgMjM2LCAKKyAgICA1MiwgMjUxLCAxOTksIDM4LCA1MiwgOTYsIDgwLCA1NSwgMzgsIDcsIDQsIDEsIDYzLCAzOCwgNywgNCwgMSwgNzcsIDM4LCAKKyAgICA3LCA0LCAxLCA3NSwgMzgsIDcsIDQsIDEsIDc4LCAzOCwgNywgNCwgMSwgNzIsIDM4LCA3LCA0LCAxLCAyNTEsIDEyMSwgMzgsIAorICAgIDcsIDQsIDEsIDI0OSwgMTI1LCAzOCwgNywgNCwgMSwgMjQyLCAxNjIsIDM4LCA3LCA0LCAxLCAxODQsIDM4LCA3LCA0LCAxLCAKKyAgICAxNTIsIDM4LCA3LCA0LCAxLCAyMTgsIDExMywgMzgsIDcsIDQsIDEsIDIxMSwgMjExLCAzOCwgNywgNCwgMSwgMjEzLCAxNjksIAorICAgIDI1LCA2LCAxLCAyNDIsIDQ0LCAyNSwgNCwgMSwgMjQyLCA0NCwgMjUsIDYsIDEsIDI1NCwgNjQsIDIyMiwgMTg1LCAyNSwgNCwgCisgICAgMSwgMjU0LCA2NCwgMjIyLCAxODUsIDI1LCAyMjgsIDk3LCA1MywgMjUsIDIzMiwgMjM3LCAyMjgsIDk3LCA1MywgMjUsIDYsIAorICAgIDEsIDIyNiwgMjE1LCAyNDgsIDQ0LCAyNSwgNCwgMSwgMjI2LCAyMTUsIDI0OCwgNDQsIDI1LCAyMTIsIDIxMSwgMjUsIDQsIAorICAgIDIyMywgMjM2LCAyMzIsIDIxNSwgMjIwLCAxMjMsIDg4LCAyNSwgNCwgMjQ2LCAxOTMsIDIzMiwgMjE1LCAyMjAsIDEyMywgCisgICAgODgsIDI1LCA0LCAyMjMsIDIzNiwgMjQ2LCAxOTMsIDIzMiwgMjE1LCAyMjAsIDEyMywgODgsIDI1LCAyMjQsIDE5MywgNzksIAorICAgIDI1LCAyMTYsIDI0NCwgMjUsIDI0OCwgNjksIDIxNiwgMjQ0LCAyNSwgNiwgMSwgMjU0LCAxODAsIDIsIDIxNiwgMjQ0LCAyNSwgCisgICAgMjU0LCAxMzUsIDIxNywgMjI0LCAyNSwgNiwgMSwgMjQ1LCAxODUsIDIsIDIxNiwgMjQ0LCAyNSwgNiwgMSwgMjQ1LCAxNTAsIAorICAgIDIsIDIxNiwgMjQ0LCAyNSwgNiwgMSwgMjM2LCA0NSwgMiwgMjE2LCAyNDQsIDI1LCA2LCAxLCAyMjcsIDEwMywgMiwgMjE2LCAKKyAgICAyNDQsIDI1LCA2LCAxLCAyMTUsIDEzNSwgMiwgMjE2LCAyNDQsIDI1LCA2LCAxLCAyMjcsIDEwNSwgMiwgMjE2LCAyNDQsIAorICAgIDI1LCA0LCAxLCAyMzYsIDQ1LCAyLCAyNDgsIDY5LCAyMiwgMjE2LCAyNDQsIDI1LCA2LCAxLCAyNTQsIDE3OSwgMjUsIDYsIAorICAgIDEsIDI1MiwgNzMsIDI1LCA2LCAxLCAyNDMsIDIwMywgMjUsIDYsIDEsIDI0OCwgMTI2LCAyNSwgNiwgMSwgMjQ1LCAxODQsIAorICAgIDI1LCA2LCAxLCAyMTIsIDc4LCAyNSwgNiwgMSwgMjQ1LCAxNDksIDI1LCA2LCAxLCAyMTcsIDE0NSwgMjUsIDYsIDEsIDIzNiwgCisgICAgNDQsIDI1LCA2LCAxLCAyMzUsIDg0LCAyNSwgNiwgMSwgMjMzLCAyMjAsIDI1LCA2LCAxLCAyMzAsIDI0MiwgMjUsIDYsIDEsIAorICAgIDIyOCwgMTM1LCAyNSwgNiwgMSwgMjEzLCAxNDgsIDI1LCA2LCAxLCAyMjcsIDEwMiwgMjUsIDYsIDEsIDIyNiwgMjAsIDI1LCAKKyAgICA2LCAxLCAyMjMsIDIyNCwgMjUsIDYsIDEsIDIyMCwgMTIyLCAyNSwgNiwgMSwgMjE4LCA1LCAyNSwgNiwgMSwgMjE1LCAxMzQsIAorICAgIDI1LCA2LCAxLCAyMjYsIDQ1LCAyNSwgNiwgMSwgMjUwLCAxNzAsIDI1LCA2LCAxLCAyMjUsIDgyLCAyNSwgNiwgMSwgMjI3LCAKKyAgICAxMDQsIDI1LCA2LCAxLCAyMzYsIDQ1LCAyLCAyNDgsIDY4LCAyNSwgNiwgMSwgMjE1LCAxMzUsIDIsIDI0OCwgNjgsIDI1LCAKKyAgICA0LCAxLCAyNTQsIDE4MCwgMiwgMjE2LCAyNDQsIDI1LCA0LCAxLCAyNDUsIDE4NSwgMiwgMjE2LCAyNDQsIDI1LCA0LCAxLCAKKyAgICAyNDUsIDE1MCwgMiwgMjE2LCAyNDQsIDI1LCA0LCAxLCAyMzYsIDQ1LCAyLCAyMTYsIDI0NCwgMjUsIDQsIDEsIDIxNSwgCisgICAgMTM1LCAyLCAyNDgsIDY5LCAyMiwgMjE2LCAyNDQsIDI1LCA0LCAxLCAyNTQsIDE3OSwgMjUsIDQsIDEsIDI1MiwgNzMsIDI1LCAKKyAgICA0LCAxLCAyNDMsIDIwMywgMjUsIDQsIDEsIDI0OCwgMTI2LCAyNSwgNCwgMSwgMjQ1LCAxODQsIDI1LCA0LCAxLCAyMTIsIAorICAgIDc4LCAyNSwgNCwgMSwgMjQ1LCAxNDksIDI1LCA0LCAxLCAyMTcsIDE0NSwgMjUsIDQsIDEsIDIzNiwgNDQsIDI1LCA0LCAxLCAKKyAgICAyMzUsIDg0LCAyNSwgNCwgMSwgMjMzLCAyMjAsIDI1LCA0LCAxLCAyMzAsIDI0MiwgMjUsIDQsIDEsIDIyOCwgMTM1LCAyNSwgCisgICAgNCwgMSwgMjEzLCAxNDgsIDI1LCA0LCAxLCAyMjcsIDEwMiwgMjUsIDQsIDEsIDIyNiwgMjAsIDI1LCA0LCAxLCAyMjMsIAorICAgIDIyNCwgMjUsIDQsIDEsIDQxLCAyMjAsIDEyMiwgMjUsIDQsIDEsIDIyMCwgMTIyLCAyNSwgNCwgMSwgMjE4LCA1LCAyNSwgNCwgCisgICAgMSwgMjE1LCAxMzQsIDI1LCA0LCAxLCAyMjYsIDQ1LCAyNSwgNCwgMSwgMjUwLCAxNzAsIDI1LCA0LCAxLCAyMjUsIDgyLCAKKyAgICAyNSwgNCwgMSwgMjI3LCAxMDQsIDI1LCA0LCAxLCAyMzYsIDQ1LCAyLCAyNDgsIDY4LCAyNSwgNCwgMSwgMjE1LCAxMzUsIDIsIAorICAgIDI0OCwgNjgsIDI1LCA0LCAxLCAyMjcsIDEwMywgMiwgMjE2LCAyNDQsIDI1LCA0LCAxLCAyMTUsIDEzNSwgMiwgMjE2LCAKKyAgICAyNDQsIDI1LCA0LCAxLCAyMjcsIDEwNSwgMiwgMjE2LCAyNDQsIDI1LCA2LCAyMzUsIDEwOSwgODgsIDI1LCAyNTIsIDc0LCAKKyAgICA4OCwgMjUsIDIxNywgMTQ2LCA4OCwgMjUsIDIxNSwgMTM1LCAyLCAyNDEsIDE1NywgODgsIDI1LCAyMTUsIDEzNSwgMiwgCisgICAgMjU1LCAzNiwgMjIsIDI0MSwgMTU3LCA4OCwgMjUsIDIxNSwgMTM1LCAyLCAyNDgsIDc1LCAyMiwgMjQxLCAxNTcsIDg4LCAKKyAgICAyNSwgMjI2LCA0NiwgODgsIDI1LCAyMjYsIDIxLCA4OCwgMjUsIDIzNSwgMTA5LCA4OCwgMjUsIDEsIDI1NCwgNjQsIDIzNCwgCisgICAgMTI2LCAyNSwgNCwgMSwgMjU0LCA2NCwgMjM0LCAxMjYsIDI1LCAxLCAyMTksIDkxLCAyNSwgNCwgMSwgMjE5LCA5MSwgMjUsIAorICAgIDEsIDI0OCwgNDQsIDI1LCA0LCAxLCAyNDgsIDQ0LCAyNSwgMSwgMjM0LCAxMjYsIDI1LCA0LCAxLCAyMzQsIDEyNiwgMjUsIAorICAgIDEsIDIyMiwgMTg1LCAyNSwgNCwgMSwgMjIyLCAxODUsIDgxLCA2LCAxLCAyMjEsIDAsIDgxLCA0LCAxLCAyMjEsIDAsIDgxLCAKKyAgICA2LCAxLCAyNDQsIDIyOSwgODEsIDQsIDEsIDI0NCwgMjI5LCA4MSwgNiwgMSwgMjM0LCAyMzUsIDgxLCA0LCAxLCAyMzQsIAorICAgIDIzNSwgODEsIDYsIDEsIDI0MSwgMTUwLCA4MSwgNCwgMSwgMjQxLCAxNTAsIDgxLCA2LCAxLCAyNDMsIDE5OCwgODEsIDQsIAorICAgIDEsIDI0MywgMTk4LCA4MSwgNiwgMSwgMjIwLCAyMjMsIDgxLCA0LCAxLCAyMjAsIDIyMywgODEsIDYsIDEsIDI0OCwgMTQxLCAKKyAgICA4MSwgNCwgMSwgMjQ4LCAxNDEsIDI1LCAyMzUsIDg1LCA4OCwgMjUsIDIyMywgMjI1LCA4OCwgMjUsIDIzMiwgMjE1LCAyMjAsIAorICAgIDEyMywgODgsIDI1LCAxLCAyMTIsIDIxNiwgMjUsIDYsIDIxNywgMTQ2LCA4OCwgMjUsIDIzMiwgMjE1LCAyNDUsIDE4NSwgCisgICAgODgsIDI1LCAyMjMsIDIzNiwgMjMyLCAyMTUsIDI0NSwgMTg1LCA4OCwgMjUsIDYsIDEsIDIyMCwgMjA4LCAyNSwgNCwgMSwgCisgICAgMjIwLCAyMDgsIDI1LCA2LCAyMzIsIDIxNSwgMjIwLCAxMjMsIDg4LCAyNSwgNiwgMSwgMjIyLCAxODMsIDI1LCA0LCAxLCAKKyAgICAyMjIsIDE4MywgMjUsIDIyMywgMjI1LCAyLCAyMTksIDU5LCA4OCwgMjUsIDYsIDIyMywgMjM2LCAyMzIsIDIxNSwgMjIwLCAKKyAgICAxMjMsIDg4LCAyNSwgNiwgMjQ2LCAxOTMsIDIzMiwgMjE1LCAyMjAsIDEyMywgODgsIDI1LCA2LCAyMjMsIDIzNiwgMjQ2LCAKKyAgICAxOTMsIDIzMiwgMjE1LCAyMjAsIDEyMywgODgsIDMzLCA2LCAxLCAyMzYsIDE3MywgMiwgMjA5LCAzMywgNiwgMSwgMjM2LCAKKyAgICA0OCwgMzMsIDYsIDEsIDI0NywgMjM1LCAzMywgNiwgMSwgMjQzLCAyNywgMzMsIDYsIDEsIDIxNSwgMTc4LCAyMzYsIDE3MiwgCisgICAgMzMsIDYsIDEsIDI0NiwgMTEyLCAzMywgNiwgMSwgMjUxLCAxMzAsIDc1LCAzMywgNiwgMSwgMjEzLCAwLCAzMywgNiwgMSwgCisgICAgMjM1LCAyNDIsIDMzLCA2LCAxLCAyMzMsIDU3LCAzMywgNiwgMSwgMjI5LCA3MywgMzMsIDYsIDEsIDIxNiwgMTQ1LCAzMywgCisgICAgNiwgMSwgMjM0LCAxNjgsIDMzLCA2LCAxLCAyNDEsIDcsIDIsIDIwOSwgMzMsIDYsIDEsIDIyMCwgMTk2LCA3MiwgMzMsIDYsIAorICAgIDEsIDI0NiwgMTA4LCAzMywgNiwgMSwgNjMsIDMzLCA2LCAxLCAyNTIsIDEyMSwgMzMsIDYsIDEsIDIxNCwgMjM3LCAzMywgNiwgCisgICAgMSwgMjQzLCA3NiwgMzMsIDYsIDEsIDI0OCwgMTYyLCAzMywgNiwgMSwgMjM2LCAxNzIsIDMzLCA2LCAxLCAyMTIsIDY3LCAKKyAgICAzMywgNiwgMSwgMjEyLCA4NywgMzMsIDYsIDEsIDc1LCAzMywgNiwgMSwgMjIwLCAxOTYsIDc1LCAzMywgNiwgMSwgMTgzLCAKKyAgICAzMywgNiwgMSwgMjQ1LCAyNTIsIDMzLCA2LCAxLCAyNDUsIDIzOCwgMzMsIDYsIDEsIDI0NSwgMjI5LCAzMywgNiwgMSwgNzgsIAorICAgIDMzLCA2LCAxLCAyMjYsIDEzMiwgMzMsIDYsIDEsIDI0NSwgMTc2LCAzMywgNiwgMSwgMjQ1LCAxNjYsIDMzLCA2LCAxLCAKKyAgICAyMTcsIDI0MiwgMzMsIDYsIDEsIDcyLCAzMywgNiwgMSwgMjQ2LCAyNCwgMzMsIDYsIDEsIDE2MiwgMzMsIDYsIDEsIDIxNiwgCisgICAgMTQ5LCAzMywgNiwgMSwgMjUwLCAxOTAsIDMzLCA2LCAxLCAyMjEsIDQ3LCAzMywgNiwgMSwgMjIxLCAxMCwgMzMsIDYsIDEsIAorICAgIDI0MiwgMTA2LCA1MywgMzMsIDYsIDEsIDIxMywgMTksIDMzLCA2LCAxLCAyMTksIDI1NSwgNTMsIDMzLCA2LCAxLCA3NywgCisgICAgMzMsIDYsIDEsIDIxMiwgMjA0LCAzMywgNiwgMSwgMTg5LCAzMywgNCwgMSwgNjMsIDMzLCA0LCAxLCAyNTIsIDEyMSwgMzMsIAorICAgIDQsIDEsIDIxNCwgMjM3LCAzMywgNCwgMSwgMjQzLCA3NiwgMzMsIDQsIDEsIDI0OCwgMTYyLCAzMywgNCwgMSwgMjM2LCAKKyAgICAxNzIsIDMzLCA0LCAxLCAyMTIsIDY3LCAzMywgNCwgMSwgMjEyLCA4NywgMzMsIDQsIDEsIDc1LCAzMywgNCwgMSwgMjIwLCAKKyAgICAxOTYsIDc1LCAzMywgNCwgMSwgMTgzLCAzMywgNCwgMSwgMjQ1LCAyNTIsIDMzLCA0LCAxLCAyNDUsIDIzOCwgMzMsIDQsIDEsIAorICAgIDI0NSwgMjI5LCAzMywgNCwgMSwgNzgsIDMzLCA0LCAxLCAyMjYsIDEzMiwgMzMsIDQsIDEsIDI0NSwgMTc2LCAzMywgNCwgMSwgCisgICAgMjQ1LCAxNjYsIDMzLCA0LCAxLCAyMTcsIDI0MiwgMzMsIDQsIDEsIDcyLCAzMywgNCwgMSwgMjQ2LCAyNCwgMzMsIDQsIDEsIAorICAgIDE2MiwgMzMsIDQsIDEsIDIxNiwgMTQ5LCAzMywgNCwgMSwgMjUwLCAxOTAsIDMzLCA0LCAxLCAyMjEsIDQ3LCAzMywgNCwgMSwgCisgICAgMjIxLCAxMCwgMzMsIDQsIDEsIDI0MiwgMTA2LCA1MywgMzMsIDQsIDEsIDIxMywgMTksIDMzLCA0LCAxLCAyMTksIDI1NSwgCisgICAgNTMsIDMzLCA0LCAxLCA3NywgMzMsIDQsIDEsIDIxMiwgMjA0LCAzMywgNCwgMSwgMTg5LCAzMywgNCwgMSwgMjM2LCAxNzMsIAorICAgIDIsIDIwOSwgMzMsIDQsIDEsIDIzNiwgNDgsIDMzLCA0LCAxLCAyNDcsIDIzNSwgMzMsIDQsIDEsIDI0MywgMjcsIDMzLCA0LCAKKyAgICAxLCAyMTUsIDE3OCwgMjM2LCAxNzIsIDMzLCA0LCAxLCAyNDYsIDExMiwgMzMsIDQsIDEsIDI1MSwgMTMwLCA3NSwgMzMsIDQsIAorICAgIDEsIDIxMywgMCwgMzMsIDQsIDEsIDIzNSwgMjQyLCAzMywgNCwgMSwgMjMzLCA1NywgMzMsIDQsIDEsIDIyOSwgNzMsIDMzLCAKKyAgICA0LCAxLCAyMTYsIDE0NSwgMzMsIDQsIDEsIDIzNCwgMTY4LCAzMywgNCwgMSwgMjQxLCA3LCAyLCAyMDksIDMzLCA0LCAxLCAKKyAgICAyMjAsIDE5NiwgNzIsIDMzLCA0LCAxLCAyNDYsIDEwOCwgMzMsIDYsIDEsIDIyNywgMTA0LCAzMywgNCwgMSwgMjI3LCAxMDQsIAorICAgIDMzLCA2LCAxLCAyMTMsIDUxLCAzMywgNCwgMSwgMjEzLCA1MSwgMzMsIDYsIDEsIDIzNiwgNDIsIDc3LCAzMywgNCwgMSwgCisgICAgMjM2LCA0MiwgNzcsIDMzLCA2LCAxLCAyMzMsIDYyLCAyMTIsIDE3NSwgMzMsIDQsIDEsIDIzMywgNjIsIDIxMiwgMTc1LCAKKyAgICAzMywgNiwgMSwgMjM2LCA0MiwgMjMzLCA2MiwgMjEyLCAxNzUsIDMzLCA0LCAxLCAyMzYsIDQyLCAyMzMsIDYyLCAyMTIsIAorICAgIDE3NSwgMzMsIDYsIDEsIDI1MiwgNDEsIDIxMiwgMTc1LCAzMywgNCwgMSwgMjUyLCA0MSwgMjEyLCAxNzUsIDMzLCA2LCAxLCAKKyAgICAyMzYsIDQyLCAyNTIsIDQxLCAyMTIsIDE3NSwgMzMsIDQsIDEsIDIzNiwgNDIsIDI1MiwgNDEsIDIxMiwgMTc1LCAzMywgNiwgCisgICAgMSwgMjM0LCA5NywgMzMsIDQsIDEsIDIzNCwgOTcsIDMzLCA2LCAxLCAyMjUsIDgyLCAzMywgNCwgMSwgMjI1LCA4MiwgMzMsIAorICAgIDYsIDEsIDI0NCwgMTcxLCAzMywgNCwgMSwgMjQ0LCAxNzEsIDMzLCA2LCAxLCAyMzYsIDUsIDMzLCA0LCAxLCAyMzYsIDUsIAorICAgIDMzLCA2LCAxLCAyMzYsIDYsIDIsIDUyLCAyNDIsIDIzNCwgMjU1LCA0NiwgMzMsIDQsIDEsIDIzNiwgNiwgMiwgNTIsIDI0MiwgCisgICAgMjM0LCAyNTUsIDQ2LCAzMywgNiwgMSwgMjE1LCAxODEsIDMzLCA0LCAxLCAyMTUsIDE4MSwgMzMsIDYsIDEsIDIyMywgMTIxLCAKKyAgICAyMjcsIDEwNCwgMzMsIDQsIDEsIDIyMywgMTIxLCAyMjcsIDEwNCwgMzMsIDYsIDEsIDIyNywgMTA1LCAyLCAyMTcsIDMyLCAKKyAgICAzMywgNCwgMSwgMjI3LCAxMDUsIDIsIDIxNywgMzIsIDMzLCA2LCAxLCAyMjcsIDQ2LCAzMywgNCwgMSwgMjI3LCA0NiwgMzMsIAorICAgIDYsIDEsIDIzNCwgMTI2LCAzMywgNCwgMSwgMjM0LCAxMjYsIDMzLCAyMTcsIDExMiwgNTMsIDM4LCAzMywgMjE3LCAzMiwgCisgICAgMzgsIDMzLCAyMjYsIDIyOSwgMzgsIDMzLCAyNDgsIDIyMSwgMjI1LCAxODgsIDM4LCAzMywgMjI1LCA3NiwgMjI1LCAxODgsIAorICAgIDM4LCAzMywgMjI1LCAxNzMsIDM4LCAzMywgMjQxLCA2MywgMjE3LCAxMTIsIDUzLCAzOCwgMzMsIDIzMSwgNzQsIDUzLCAzMywgCisgICAgNiwgMSwgMjIwLCAxOTYsIDI0MSwgNywgMiwgMjE4LCA0MCwgMzMsIDQsIDEsIDIyMCwgMTk2LCAyNDEsIDcsIDIsIDIxOCwgCisgICAgNDAsIDMzLCA2LCAxLCAyMjEsIDg5LCA1MywgMzMsIDQsIDEsIDIyMSwgODksIDUzLCAzMywgNiwgMSwgMjQ1LCAxNzcsIDIsIAorICAgIDIxNywgODEsIDMzLCA0LCAxLCAyNDUsIDE3NywgMiwgMjE3LCA4MSwgMzMsIDYsIDEsIDI0MywgNzcsIDIsIDIxNSwgMTMzLCAKKyAgICAzMywgNCwgMSwgMjQzLCA3NywgMiwgMjE1LCAxMzMsIDMzLCA2LCAxLCAyNDMsIDc3LCAyLCA5MSwgMzMsIDQsIDEsIDI0MywgCisgICAgNzcsIDIsIDkxLCAzMywgNiwgMSwgMjQzLCA3NywgMiwgMjMxLCAxMDcsIDEwMiwgMzMsIDQsIDEsIDI0MywgNzcsIDIsIAorICAgIDIzMSwgMTA3LCAxMDIsIDMzLCA2LCAxLCAyMTIsIDY4LCAyLCAyNDgsIDExMSwgMzMsIDQsIDEsIDIxMiwgNjgsIDIsIDI0OCwgCisgICAgMTExLCAzMywgNiwgMSwgMjEyLCA4OCwgMiwgMjQ4LCAxMTEsIDMzLCA0LCAxLCAyMTIsIDg4LCAyLCAyNDgsIDExMSwgMzMsIAorICAgIDYsIDEsIDIzNSwgMTMxLCAyLCAyNDgsIDExMSwgMzMsIDQsIDEsIDIzNSwgMTMxLCAyLCAyNDgsIDExMSwgMzMsIDYsIDEsIAorICAgIDIzNSwgMTMxLCAyLCA2NiwgOTEsIDMzLCA0LCAxLCAyMzUsIDEzMSwgMiwgNjYsIDkxLCAzMywgNiwgMSwgMjM1LCAxMzEsIAorICAgIDIsIDkxLCAzMywgNCwgMSwgMjM1LCAxMzEsIDIsIDkxLCAzMywgNiwgMSwgMjUyLCAxNzAsIDE4MywgMzMsIDQsIDEsIDI1MiwgCisgICAgMTcwLCAxODMsIDMzLCA2LCAxLCAyNDUsIDIzMCwgMiwgMjQ4LCAxMTEsIDMzLCA0LCAxLCAyNDUsIDIzMCwgMiwgMjQ4LCAKKyAgICAxMTEsIDMzLCA2LCAyNiwgMjQ1LCAyMzAsIDI0MywgNzYsIDMzLCA0LCAyNiwgMjQ1LCAyMzAsIDI0MywgNzYsIDMzLCA2LCAKKyAgICAxLCAyMjYsIDEzMywgMiwgMjMxLCAxMDcsIDEwMiwgMzMsIDQsIDEsIDIyNiwgMTMzLCAyLCAyMzEsIDEwNywgMTAyLCAzMywgCisgICAgNiwgMSwgMjU1LCA1MiwgMTYyLCAzMywgNCwgMSwgMjU1LCA1MiwgMTYyLCAzMywgNiwgMSwgMjQ1LCAxNjcsIDIsIDI0OCwgCisgICAgMTExLCAzMywgNCwgMSwgMjQ1LCAxNjcsIDIsIDI0OCwgMTExLCAzMywgNiwgMSwgMjE3LCAyNDMsIDIsIDI0OCwgMTExLCAKKyAgICAzMywgNCwgMSwgMjE3LCAyNDMsIDIsIDI0OCwgMTExLCAzMywgNiwgMSwgMjE5LCA3NSwgNzIsIDMzLCA0LCAxLCAyMTksIAorICAgIDc1LCA3MiwgMzMsIDYsIDEsIDIxOSwgNzUsIDEwMywgMiwgOTEsIDMzLCA0LCAxLCAyMTksIDc1LCAxMDMsIDIsIDkxLCAzMywgCisgICAgNiwgMSwgMjQyLCAxNTEsIDIsIDI0OCwgMTExLCAzMywgNCwgMSwgMjQyLCAxNTEsIDIsIDI0OCwgMTExLCAzMywgNiwgMjYsIAorICAgIDIxNywgMjQzLCAyMTYsIDE0OSwgMzMsIDQsIDI2LCAyMTcsIDI0MywgMjE2LCAxNDksIDMzLCA2LCAxLCAyNTAsIDE5MSwgMiwgCisgICAgMjQ4LCAxMTEsIDMzLCA0LCAxLCAyNTAsIDE5MSwgMiwgMjQ4LCAxMTEsIDMzLCA2LCAxLCAyNTAsIDE5MSwgMiwgNjYsIDkxLCAKKyAgICAzMywgNCwgMSwgMjUwLCAxOTEsIDIsIDY2LCA5MSwgMzMsIDYsIDEsIDIyMCwgMjM0LCAzMywgNCwgMSwgMjIwLCAyMzQsIAorICAgIDMzLCA2LCAxLCAyNTUsIDUyLCAyNTAsIDE5MCwgMzMsIDQsIDEsIDI1NSwgNTIsIDI1MCwgMTkwLCAzMywgNiwgMSwgMjU1LCAKKyAgICA1MiwgMjUwLCAxOTEsIDIsIDI0OCwgMTExLCAzMywgNCwgMSwgMjU1LCA1MiwgMjUwLCAxOTEsIDIsIDI0OCwgMTExLCAzMywgCisgICAgMSwgMjI2LCAyMjIsIDMzLCA2LCAxLCAyMTIsIDY4LCAyLCAyNTEsIDE5OSwgMzMsIDQsIDEsIDIxMiwgNjgsIDIsIDI1MSwgCisgICAgMTk5LCAzMywgNiwgMSwgMjM1LCAxMzEsIDIsIDEwMiwgMzMsIDQsIDEsIDIzNSwgMTMxLCAyLCAxMDIsIDMzLCA2LCAxLCAKKyAgICAyNDUsIDI1MywgMiwgMjE4LCA0MCwgMzMsIDQsIDEsIDI0NSwgMjUzLCAyLCAyMTgsIDQwLCAzMywgNiwgMSwgMjQ1LCAyMzAsIAorICAgIDIsIDEwMiwgMzMsIDQsIDEsIDI0NSwgMjMwLCAyLCAxMDIsIDMzLCA2LCAxLCAyNDUsIDIzMCwgMiwgMjE4LCA0MCwgMzMsIAorICAgIDQsIDEsIDI0NSwgMjMwLCAyLCAyMTgsIDQwLCAzMywgNiwgMSwgMjM0LCAyNDUsIDI1MCwgMTkwLCAzMywgNCwgMSwgMjM0LCAKKyAgICAyNDUsIDI1MCwgMTkwLCAzMywgNiwgMSwgMjQ1LCAyMzksIDIsIDIxOCwgNDAsIDMzLCA0LCAxLCAyNDUsIDIzOSwgMiwgCisgICAgMjE4LCA0MCwgMzMsIDQsIDEsIDIyNiwgMjIyLCAzMywgNiwgMSwgMTExLCAyLCAyNTEsIDE5OSwgMzMsIDQsIDEsIDExMSwgCisgICAgMiwgMjUxLCAxOTksIDMzLCA2LCAxLCAxMTEsIDIsIDI0OCwgNzQsIDMzLCA0LCAxLCAxMTEsIDIsIDI0OCwgNzQsIDMzLCA2LCAKKyAgICAyNiwgMTExLCAyMzYsIDE3MiwgMzMsIDQsIDI2LCAxMTEsIDIzNiwgMTcyLCAzMywgNiwgMSwgMjM2LCAxNzMsIDIsIDI1MSwgCisgICAgMTk5LCAzMywgNCwgMSwgMjM2LCAxNzMsIDIsIDI1MSwgMTk5LCAzMywgNiwgMSwgMjIyLCAxMzYsIDMzLCA0LCAxLCAyMjIsIAorICAgIDEzNiwgMzMsIDYsIDEsIDIyMiwgMTM3LCAyLCAyNDgsIDc0LCAzMywgNCwgMSwgMjIyLCAxMzcsIDIsIDI0OCwgNzQsIDMzLCAKKyAgICA2LCAxLCAyMTIsIDY4LCAyLCAyNDgsIDc0LCAzMywgNCwgMSwgMjEyLCA2OCwgMiwgMjQ4LCA3NCwgMzMsIDYsIDEsIDIxMiwgCisgICAgODgsIDIsIDI0OCwgNzQsIDMzLCA0LCAxLCAyMTIsIDg4LCAyLCAyNDgsIDc0LCAzMywgNiwgMSwgMjU1LCA1MiwgMjQ2LCAKKyAgICAxMTIsIDMzLCA0LCAxLCAyNTUsIDUyLCAyNDYsIDExMiwgMzMsIDYsIDEsIDI0MSwgNywgMiwgMjMyLCAxMTAsIDMzLCA0LCAKKyAgICAxLCAyNDEsIDcsIDIsIDIzMiwgMTEwLCAzMywgNiwgMSwgMjQxLCA3LCAyLCAyNDgsIDc0LCAzMywgNCwgMSwgMjQxLCA3LCAKKyAgICAyLCAyNDgsIDc0LCAzMywgNiwgMSwgMTQxLCAyLCAyNDgsIDc0LCAzMywgNCwgMSwgMTQxLCAyLCAyNDgsIDc0LCAzMywgNiwgCisgICAgMSwgMjUyLCAxODAsIDc4LCAzMywgNCwgMSwgMjUyLCAxODAsIDc4LCAzMywgNiwgMSwgMjUyLCAxODAsIDE0MSwgMiwgMjQ4LCAKKyAgICA3NCwgMzMsIDQsIDEsIDI1MiwgMTgwLCAxNDEsIDIsIDI0OCwgNzQsIDMzLCA2LCAxLCAxNTQsIDIsIDI0OCwgNzQsIDMzLCAKKyAgICA0LCAxLCAxNTQsIDIsIDI0OCwgNzQsIDMzLCA2LCAxLCAxMDMsIDIsIDIzMiwgMTEwLCAzMywgNCwgMSwgMTAzLCAyLCAyMzIsIAorICAgIDExMCwgMzMsIDYsIDEsIDEwMywgMiwgMjQ4LCA3NCwgMzMsIDQsIDEsIDEwMywgMiwgMjQ4LCA3NCwgMzMsIDYsIDEsIDEwMywgCisgICAgMiwgNTIsIDEzOCwgMzMsIDQsIDEsIDEwMywgMiwgNTIsIDEzOCwgMzMsIDYsIDEsIDI1MCwgMTkxLCAyLCAyNDgsIDc0LCAKKyAgICAzMywgNCwgMSwgMjUwLCAxOTEsIDIsIDI0OCwgNzQsIDMzLCA2LCAxLCAyNDMsIDc3LCAyLCAyNDgsIDExMSwgMzMsIDQsIDEsIAorICAgIDI0MywgNzcsIDIsIDI0OCwgMTExLCAzMywgNiwgMSwgMjEzLCAyMCwgMiwgMjQ4LCA3NCwgMzMsIDQsIDEsIDIxMywgMjAsIAorICAgIDIsIDI0OCwgNzQsIDMzLCA2LCAxLCAyNDMsIDc3LCAyLCAyMTksIDU5LCAyMiwgMTAyLCAzMywgNCwgMSwgMjQzLCA3NywgMiwgCisgICAgMjE5LCA1OSwgMjIsIDEwMiwgMzMsIDYsIDEsIDI0MiwgMTUxLCAyLCAxMDIsIDMzLCA0LCAxLCAyNDIsIDE1MSwgMiwgMTAyLCAKKyAgICAzMywgNiwgMSwgMjQyLCAxNTEsIDIsIDkxLCAzMywgNCwgMSwgMjQyLCAxNTEsIDIsIDkxLCAzMywgNiwgMSwgMjM0LCAxMzQsIAorICAgIDI0OCwgMTYyLCAzMywgNCwgMSwgMjM0LCAxMzQsIDI0OCwgMTYyLCAzMywgNiwgMSwgMjM0LCAxMzQsIDI0NywgMjM1LCAzMywgCisgICAgNCwgMSwgMjM0LCAxMzQsIDI0NywgMjM1LCAzMywgNiwgMSwgMjM0LCAxMzQsIDIxMiwgMjAsIDMzLCA0LCAxLCAyMzQsIAorICAgIDEzNCwgMjEyLCAyMCwgMzMsIDYsIDEsIDIzNCwgMTM0LCAyNDYsIDEwNiwgMzMsIDQsIDEsIDIzNCwgMTM0LCAyNDYsIDEwNiwgCisgICAgMzMsIDYsIDEsIDIzNCwgMTM0LCAyMzMsIDU3LCAzMywgNCwgMSwgMjM0LCAxMzQsIDIzMywgNTcsIDMzLCA2LCAxLCAyMzQsIAorICAgIDEzNCwgMjI5LCA3MywgMzMsIDQsIDEsIDIzNCwgMTM0LCAyMjksIDczLCAzMywgNiwgMSwgMjM0LCAxMzQsIDIyMCwgNTYsIAorICAgIDMzLCA0LCAxLCAyMzQsIDEzNCwgMjIwLCA1NiwgMzMsIDYsIDEsIDIzNCwgMTM0LCAyMTcsIDI3LCAzMywgNCwgMSwgMjM0LCAKKyAgICAxMzQsIDIxNywgMjcsIDMzLCA2LCAxLCAyMjMsIDIzNiwgMjEyLCA4NywgMzMsIDQsIDEsIDIyMywgMjM2LCAyMTIsIDg3LCAKKyAgICAzMywgNiwgMSwgMjQ1LCAyNTMsIDIsIDEwMiwgMzMsIDQsIDEsIDI0NSwgMjUzLCAyLCAxMDIsIDMzLCA2LCAxLCAyMzMsIAorICAgIDEyMywgMzMsIDQsIDEsIDIzMywgMTIzLCAzMywgNiwgMSwgMjIzLCAyMjYsIDMzLCA0LCAxLCAyMjMsIDIyNiwgMzMsIDYsIAorICAgIDEsIDIxMywgODMsIDMzLCA0LCAxLCAyMTMsIDgzLCAzMywgNiwgMSwgMjI1LCAxMSwgMzMsIDQsIDEsIDIyNSwgMTEsIDMzLCAKKyAgICA2LCAxLCAyMTQsIDksIDMzLCA0LCAxLCAyMTQsIDksIDMzLCA2LCAxLCAyNTQsIDIwMiwgMTgzLCAzMywgNCwgMSwgMjU0LCAKKyAgICAyMDIsIDE4MywgMzMsIDYsIDEsIDI0NSwgMjUzLCAyLCAyMzEsIDEwNywgMTAyLCAzMywgNCwgMSwgMjQ1LCAyNTMsIDIsIAorICAgIDIzMSwgMTA3LCAxMDIsIDMzLCA2LCAxLCAyNDUsIDIzMCwgMiwgMjMxLCAxMDcsIDEwMiwgMzMsIDQsIDEsIDI0NSwgMjMwLCAKKyAgICAyLCAyMzEsIDEwNywgMTAyLCAzMywgNiwgMSwgMjI2LCAxMzMsIDIsIDI0OCwgMTExLCAzMywgNCwgMSwgMjI2LCAxMzMsIDIsIAorICAgIDI0OCwgMTExLCAzMywgNiwgMSwgMjIwLCAyMzUsIDIsIDI0OCwgMTExLCAzMywgNCwgMSwgMjIwLCAyMzUsIDIsIDI0OCwgCisgICAgMTExLCAxNDYsIDYsIDEsIDI1MywgMjA3LCAxNDYsIDYsIDEsIDI1MiwgODYsIDE0NiwgNiwgMSwgMjQzLCA0MywgMTQ2LCA2LCAKKyAgICAxLCAyNDksIDMwLCAxNDYsIDYsIDEsIDI0NiwgMzQsIDE0NiwgNiwgMSwgMjEyLCAxMDksIDE0NiwgNiwgMSwgMjQ2LCAxOSwgCisgICAgMTQ2LCA2LCAxLCAyNDUsIDE1MSwgMTQ2LCA2LCAxLCAxMDksIDE0NiwgNiwgMSwgMjEyLCA2NywgMTQ2LCA2LCAxLCAyMzYsIAorICAgIDg1LCAxNDYsIDYsIDEsIDIzMywgNjAsIDE0NiwgNiwgMSwgMjEzLCAxNTEsIDE0NiwgNiwgMSwgMjUxLCA4OCwgMTQ2LCA2LCAKKyAgICAxLCAyMzUsIDI3LCAxNDYsIDYsIDEsIDI0MSwgMTczLCAxNDYsIDYsIDEsIDIzNiwgMCwgMTQ2LCA2LCAxLCAyNDMsIDg2LCAKKyAgICAxNDYsIDYsIDEsIDI1MCwgMTg1LCAxNDYsIDYsIDEsIDIzMSwgMTkyLCAxNDYsIDYsIDEsIDIxMywgMCwgMTQ2LCA2LCAxLCAKKyAgICAyMjgsIDE5MywgMTQ2LCA2LCAxLCAyMjEsIDQ3LCAxNDYsIDYsIDEsIDIxNCwgMTIzLCAxNDYsIDYsIDEsIDI1MCwgMjE1LCAKKyAgICAxNDYsIDYsIDEsIDIyNiwgMTE2LCAxNDYsIDYsIDEsIDIzNSwgMjI3LCAxNDYsIDYsIDEsIDIwOCwgMTQ2LCA2LCAxLCAyMjIsIAorICAgIDEwMywgMTQ2LCA2LCAxLCAyMTQsIDE2MSwgMTQ2LCA2LCAxLCAyMTcsIDI5LCAxNDYsIDYsIDEsIDIyNCwgMjMsIDE0NiwgNiwgCisgICAgMSwgMjUwLCA0MiwgMTQ2LCA2LCAxLCAyMTIsIDI0MSwgMTQ2LCA2LCAxLCAyMjUsIDIxNCwgMTQ2LCA2LCAxLCAyMzUsIDM4LCAKKyAgICAxNDYsIDYsIDEsIDIyNywgMTI1LCAxNDYsIDYsIDEsIDI0NCwgMjMxLCAxNDYsIDU5LCAxLCA0MywgMTU3LCAyMjMsIDE2NCwgCisgICAgMTQ2LCAyNTQsIDk3LCAxNDYsIDI0NSwgMjMzLCA3OSwgMTQ2LCAyNDUsIDExOSwgNzksIDE0NiwgMjUwLCAyMywgMTQ2LCAKKyAgICAyMjQsIDE5MywgNzksIDE0NiwgMjU1LCA1MywgNzksIDE0NiwgNCwgMSwgMjUzLCAyMDcsIDE0NiwgNCwgMSwgMjUyLCA4NiwgCisgICAgMTQ2LCA0LCAxLCAyNDMsIDQzLCAxNDYsIDQsIDEsIDI0OSwgMzAsIDE0NiwgNCwgMSwgMjQ2LCAzNCwgMTQ2LCA0LCAxLCAKKyAgICAyMTIsIDEwOSwgMTQ2LCA0LCAxLCAyNDYsIDE5LCAxNDYsIDQsIDEsIDI0NSwgMTUxLCAxNDYsIDQsIDEsIDEwOSwgMTQ2LCAKKyAgICA0LCAxLCAyMTIsIDY3LCAxNDYsIDQsIDEsIDIzNiwgODUsIDE0NiwgNCwgMSwgMjMzLCA2MCwgMTQ2LCA0LCAxLCAyMTMsIAorICAgIDE1MSwgMTQ2LCA0LCAxLCAyNTEsIDg4LCAxNDYsIDQsIDEsIDIzNSwgMjcsIDE0NiwgNCwgMSwgMjQxLCAxNzMsIDE0NiwgNCwgCisgICAgMSwgMjM2LCAwLCAxNDYsIDQsIDEsIDI0MywgODYsIDE0NiwgNCwgMSwgMjUwLCAxODUsIDE0NiwgNCwgMSwgMjMxLCAxOTIsIAorICAgIDE0NiwgNCwgMSwgMjEzLCAwLCAxNDYsIDQsIDEsIDIyOCwgMTkzLCAxNDYsIDQsIDEsIDIyMSwgNDcsIDE0NiwgNCwgMSwgCisgICAgMjE0LCAxMjMsIDE0NiwgNCwgMSwgMjUwLCAyMTUsIDE0NiwgNCwgMSwgMjI2LCAxMTYsIDE0NiwgNCwgMSwgMjM1LCAyMjcsIAorICAgIDE0NiwgNCwgMSwgMjA4LCAxNDYsIDQsIDEsIDIyMiwgMTAzLCAxNDYsIDQsIDEsIDIxNCwgMTYxLCAxNDYsIDQsIDEsIDIxNywgCisgICAgMjksIDE0NiwgNCwgMSwgMjI0LCAyMywgMTQ2LCA0LCAxLCAyNTAsIDQyLCAxNDYsIDQsIDEsIDIxMiwgMjQxLCAxNDYsIDQsIAorICAgIDEsIDIyNSwgMjE0LCAxNDYsIDQsIDEsIDIzNSwgMzgsIDE0NiwgNCwgMSwgMjI3LCAxMjUsIDE0NiwgNCwgMSwgMjQ0LCAKKyAgICAyMzEsIDE0NiwgNCwgMjYsIDI0NiwgMzUsIDIxMiwgMjQxLCAxNDYsIDI0NCwgNjQsIDIxOSwgODMsIDE0NiwgMjQxLCAyMSwgCisgICAgOTQsIDI1NSwgNDcsIDI0NSwgMTQ0LCA5NCwgMjU1LCA0NywgMjIyLCAxMDQsIDk0LCAyNTUsIDQ3LCAyMjEsIDMzLCA5NCwgCisgICAgMjU1LCA0NywgMjEyLCA5NywgMjI0LCAyNTAsIDk0LCAyNTUsIDQ3LCAyMTIsIDk3LCAyNDMsIDIyMCwgOTQsIDI1NSwgNDcsIAorICAgIDIxNywgNDIsIDk0LCAyNTUsIDQ3LCAyMjMsIDIzNCwgOTQsIDI1NSwgNDcsIDIxMiwgOTYsIDk0LCAyNTUsIDQ3LCAyMjYsIAorICAgIDE1NSwgOTQsIDI1NSwgNDcsIDIxMywgMTIsIDk0LCAyNTUsIDQ3LCAyMTcsIDE4MCwgOTQsIDI1NSwgNDcsIDI0MywgMTM3LCAKKyAgICA5NCwgMjU1LCA0NywgMjQzLCAxMzgsIDIzMCwgMjA5LCA5NCwgMjU1LCA0NywgMjQzLCAxMzUsIDk0LCAyNTUsIDQ3LCAyMjQsIAorICAgIDI1MSwgMjI2LCAxODEsIDk0LCAyNTUsIDQ3LCAyMTcsIDIxOSwgMjQzLCAxNTIsIDk0LCAyNTUsIDQ3LCAyMjYsIDEzNiwgCisgICAgOTQsIDI1NSwgNDcsIDI1MywgMjQzLCAyNDIsIDE0MywgOTQsIDI1NSwgNDcsIDIzMCwgMjE5LCA5NCwgMjU1LCA0NywgMjMyLCAKKyAgICA4NiwgOTQsIDI1NSwgNDcsIDIzMSwgMTgzLCA5NCwgMjU1LCA0NywgMjMxLCAxODQsIDIzNSwgMzksIDk0LCAyNTUsIDQ3LCAKKyAgICAyNDgsIDIzMCwgOTQsIDI1NSwgNDcsIDIyNSwgNiwgOTQsIDI1NSwgNDcsIDIxNywgMjE5LCAyMjQsIDI0NiwgOTQsIDI1NSwgCisgICAgNDcsIDIxMywgMjIsIDI1MiwgODcsIDIxMiwgMjIyLCA5NCwgMjU1LCA0NywgMjI3LCAxMTAsIDk0LCAyNTUsIDQ3LCAyMzYsIAorICAgIDEzMSwgOTQsIDI1NSwgNDcsIDI0OCwgMTQyLCA5NCwgMjU1LCA0NywgMjEyLCAyNiwgOTQsIDE1NiwgMjMyLCAyMSwgMjUwLCAKKyAgICA5NSwgOTQsIDIyNSwgMTgxLCAyMjAsIDIzNywgOTQsIDIyNSwgMTgxLCAyNDIsIDk3LCAyMjIsIDEwNCwgOTQsIDIyNSwgCisgICAgMTgxLCAyNDIsIDk3LCAyMjYsIDE0OSwgOTQsIDIyNSwgMTgxLCAyNDIsIDk3LCAyMjQsIDI1NSwgOTQsIDIyNSwgMTgxLCAKKyAgICAyNDIsIDcsIDk0LCAyMjUsIDE4MSwgMjE2LCAxNDcsIDk0LCAyMjUsIDE4MSwgMjIyLCAxMDQsIDk0LCAyMjUsIDE4MSwgCisgICAgMjI2LCAxNDksIDk0LCAyMjUsIDE4MSwgMjI0LCAyNTUsIDk0LCAyMjUsIDE4MSwgMjQxLCAxNjYsIDk0LCAyMjUsIDE4MSwgCisgICAgMjQxLCAxNjcsIDI0MiwgOTksIDMxLCAyMTQsIDI0MSwgOTQsIDIyNSwgMTgxLCAyMjQsIDE5NywgOTQsIDIyNSwgMTgxLCAKKyAgICAyNDksIDE3LCAxNzEsIDIzMiwgNDksIDk0LCAyMjUsIDE4MSwgMjMxLCAxNzUsIDk0LCAyMjUsIDYzLCAyMzIsIDQ2LCA5NCwgCisgICAgMjI1LCAxODEsIDIyNCwgOTQsIDk0LCAyMjUsIDYzLCAyMjYsIDE1NywgOTQsIDIyNSwgMTgxLCAyMjAsIDIyMiwgMjQ3LCAKKyAgICAxOTUsIDk0LCAyMjUsIDE4MSwgMjIwLCAxMDQsIDI0NywgMTk1LCA5NCwgMjI1LCA2MywgMjIwLCAwLCAyMjYsIDE1MSwgOTQsIAorICAgIDE1NiwgMjE1LCAxMzcsIDI0NywgMTk1LCA5NCwgMTU2LCAyMzIsIDIzNywgMjQ3LCAxOTUsIDk0LCAyMjUsIDYzLCAyMjgsIAorICAgIDk0LCAyNDIsIDE0MiwgOTQsIDIyNSwgMTgxLCAyMjUsIDAsIDIyNCwgMjUwLCA5NCwgMSwgMjU0LCAyMDUsIDk0LCAxLCAKKyAgICAyNTIsIDc1LCA5NCwgMSwgMjQzLCA0MSwgOTQsIDEsIDI0OSwgMCwgOTQsIDEsIDI0MiwgODUsIDk0LCAxLCAyMTQsIDI0MSwgCisgICAgOTQsIDEsIDIxMiwgOTAsIDk0LCAxLCAyNDIsIDQ1LCA5NCwgMSwgMjE3LCAxOTYsIDk0LCAxLCAyMTIsIDIyNSwgOTQsIDEsIAorICAgIDQxLCAyMzUsIDExMiwgOTQsIDEsIDIzNSwgMTEyLCA5NCwgMSwgMjMzLCAyMTYsIDk0LCAxLCA0MSwgMjMxLCAxOTksIDk0LCAKKyAgICAxLCAyMzEsIDE5OSwgOTQsIDEsIDQxLCAyMjgsIDkzLCA5NCwgMSwgMjI4LCA5MywgOTQsIDEsIDIyMiwgMTg4LCA5NCwgMSwgCisgICAgMjUzLCAyMDUsIDk0LCAxLCA0MSwgMjI2LCAxMzIsIDk0LCAxLCAyMjYsIDEzMiwgOTQsIDEsIDQxLCAyMTYsIDE1MCwgOTQsIAorICAgIDEsIDIxNiwgMTUwLCA5NCwgMSwgMjI0LCAyMTksIDk0LCAxLCAyMjMsIDI1MywgOTQsIDEsIDIyMCwgMjIxLCA5NCwgMSwgCisgICAgMjE4LCAyLCA5NCwgMjYsIDIxMiwgMjU0LCA1MiwgMjE0LCAyNDEsIDk0LCAyNiwgMjEyLCAyNTQsIDIxNCwgMjQyLCAyMTIsIAorICAgIDIyNSwgOTQsIDI2LCAyMTIsIDI1NCwgNTIsIDIxMiwgMjI1LCA5NCwgMjI1LCA2MywgMjQzLCAxMzcsIDk0LCAyMjUsIDYzLCAKKyAgICAyNDMsIDEzNSwgMTIsIDUxLCA1MywgMTIsIDUsIDIyMiwgMTgyLCAxMiwgMjQ0LCAxMTksIDIzMiwgMzIsIDEyLCA1LCAyMjIsIAorICAgIDIxNywgMjU0LCA3OCwgMjQ5LCAxNzMsIDIyMywgMTI5LCAyNTQsIDc4LCAyNDQsIDk0LCAyMjMsIDEyOSwgMTIsIDIyNCwgCisgICAgNjEsIDI1NCwgNzgsIDIyNiwgOTQsIDIzMSwgNzYsIDUzLCAyNTQsIDc4LCAyMjYsIDk0LCAyMTcsIDIxNCwgMjE3LCAxMTQsIAorICAgIDUzLCAyNTQsIDI1NCwgNTMsIDEyLCAyNTAsIDIzLCAxMiwgMjQ4LCAyMTcsIDIyMSwgODAsIDEyLCAyMjUsIDE4MywgMjE0LCAKKyAgICAyMjMsIDUzLCAxMiwgNSwgMjMxLCA1NywgMTIsIDUsIDIyMiwgMTk4LCAyNTQsIDIwNywgMjE0LCAzMiwgMTIsIDUsIDI1NCwgCisgICAgMjA3LCAyNTQsIDgsIDEyLCA1LCAyMjQsIDkzLCAyNTQsIDIwNiwgMTIsIDUsIDIyNCwgMTAwLCAyNTQsIDE4OCwgMjU0LCAKKyAgICAxNDEsIDEyLCA1LCAyMTgsIDMzLCAxMiwgNCwgMTI3LCAyMTgsIDQzLCAxMiwgNCwgMTI3LCAyNiwgMTA4LCAyLCAyMzMsIAorICAgIDIyNSwgMiwgMjEzLCAzNSwgMTIsIDQsIDEyNywgMjEyLCAxMDEsIDEyLCA0LCAyNDQsIDI1NCwgMTIsIDQsIDI0OCwgMjUxLCAKKyAgICAxMiwgNCwgMjM1LCA2NywgMTIsIDIyMSwgOTMsIDEyLCAyMTYsIDE4MiwgNjIsIDIyNSwgNjMsIDc5LCAxMiwgMjI0LCAxOTMsIAorICAgIDc5LCAxMiwgMSwgMjM1LCA3MSwgMjEzLCAzNSwgMTIsIDEsIDI0MiwgMTIyLCAxMiwgMSwgMTA4LCAyLCAyMzIsIDEwNiwgCisgICAgNTAsIDEyLCAxLCAxMDgsIDIsIDE5NCwgNTAsIDEyLCAxLCAyMTQsIDE4LCAyLCAxOTQsIDUwLCAxMiwgMSwgMTA4LCAyLCAKKyAgICAxOTQsIDU1LCAxMiwgMSwgNzYsIDIsIDE5NCwgNTAsIDEyLCAxLCAyNTQsIDIwNSwgMTIsIDEsIDI1MiwgMTAwLCAxMiwgMSwgCisgICAgMjE3LCAyMjksIDIzMiwgNDIsIDEyLCAxLCAyMTcsIDIyOCwgMTIsIDEsIDIxNywgMTU4LCAxMiwgMSwgMjM1LCAyMzksIDEyLCAKKyAgICAxLCAyNDIsIDEzOSwgMTIsIDEsIDIzNCwgMjQ3LCAxMiwgMSwgMjQ5LCA2LCAxMiwgMSwgMjE3LCAxNjgsIDEyLCAxLCAyMjQsIAorICAgIDIzLCAxMiwgMSwgMjEyLCAxMDEsIDEyLCAxLCAyMjIsIDEwOCwgMTIsIDEsIDIyMSwgNCwgMTIsIDEsIDIyMiwgMjIwLCAxMiwgCisgICAgMSwgMjQ5LCAyNSwgMTIsIDEsIDIxOCwgNDMsIDEyLCAxLCAyMTIsIDEwNCwgMTIsIDEsIDI1NCwgMjMxLCAxMiwgMSwgMjQzLCAKKyAgICA4NCwgMTIsIDEsIDIzNSwgMzcsIDIsIDExOSwgMTgxLCA1MCwgMTIsIDEsIDIzNSwgMzcsIDIsIDEzNywgMTgxLCA1NSwgMTIsIAorICAgIDEsIDI0NSwgMSwgNzYsIDIsIDIzNiwgNTIsIDIxMSwgMjExLCAxMiwgMSwgMjQ1LCAxLCA3NiwgMiwgMTE5LCAxODEsIDUwLCAKKyAgICAxMiwgMSwgMjQ1LCAxLCA3NiwgMiwgMTM3LCAxODEsIDUwLCAxMiwgMjE4LCA3LCAxMiwgMSwgMjQ0LCAyMzEsIDEyLCAxLCAKKyAgICAyMjUsIDQsIDEyLCAxLCAyMzUsIDExMiwgMTIsIDEsIDIzMywgMjI0LCAxMiwgMSwgMjMxLCAyMTMsIDEyLCAxLCAyMjgsIAorICAgIDIxNiwgMTIsIDEsIDI0MiwgNjUsIDEyLCAxLCAyMTQsIDE3LCAxMiwgMSwgMTA4LCAyMzIsIDcwLCAxMiwgMSwgMjEzLCAzNSwgCisgICAgMTIsIDI0NCwgMjUyLCAxMiwgMjQ4LCAyNDksIDEyLCAyMzUsIDY1LCAxMiwgMjQ0LCAyNTQsIDEyLCAyNDgsIDI1MSwgMTIsIAorICAgIDIzNSwgNjcsIDEyLCAyMjEsIDM4LCAxMiwgMjE5LCA0LCAxMiwgMjMyLCAxMDQsIDUwLCAxMiwgMTk0LCA1MCwgMTIsIDE5NCwgCisgICAgNTUsIDEyLCAyMTksIDI0LCAyNTQsIDIwNSwgMTIsIDIzNiwgNTIsIDI0OCwgMjUxLCAxMiwgMTU2LCAyMjgsIDIxNywgMjQzLCAKKyAgICA1OCwgMTIsIDIxMSwgMjUwLCAxMiwgMzAsIDUsIDQsIDIxNSwgODYsIDUwLCAxMiwgMzAsIDUsIDIzNiwgNTIsIDQsIDIxNSwgCisgICAgODYsIDUwLCAxMiwgMzAsIDUsIDYyLCA1NSwgMTIsIDIyMywgMjM2LCAyNDgsIDI1MSwgMTIsIDI0NCwgMjU1LCAyLCAxMTksIAorICAgIDI0NywgMTkzLCAxMiwgMjE0LCAxOSwgMTk0LCA1NSwgMjU0LCA3OCwgMjEsIDIxMiwgNzksIDI1NCwgNzgsIDIxLCAxMTgsIAorICAgIDI1NCwgNzgsIDIxLCAxMTIsIDI1NCwgNzgsIDIxLCAxNzAsIDI1NCwgNzgsIDIxLCAxNjcsIDI1NCwgNzgsIDIxLCAxODUsIAorICAgIDI1NCwgNzgsIDIxLCAxOTIsIDI1NCwgNzgsIDIxLCAyMDAsIDI1NCwgNzgsIDIxLCAxOTgsIDI1NCwgNzgsIDIxLCAyMDMsIAorICAgIDEyLCAyMjYsIDkzLCA1MywgMTIsIDI0OCwgMTU1LCAyMjEsIDgwLCAxMiwgMjE3LCAxMTIsIDIyMSwgODAsIDEyLCAyNDQsIAorICAgIDE3MCwgMjI1LCAxNzksIDIxOSwgMTA5LCAxMiwgMSwgMjQ3LCAxOTQsIDI1MiwgMTAwLCAxMiwgMSwgMjQ3LCAxOTQsIDIyNSwgCisgICAgNCwgMTIsIDEsIDIxOCwgMjM3LCAyNTQsIDIwNSwgMTIsIDEsIDEwOCwgMjE0LCAzMywgMTIsIDEsIDEwOCwgMiwgMjE0LCAKKyAgICAxOSwgMTk0LCA1MCwgMTIsIDEsIDEwOCwgMiwgMjE0LCAxOSwgMTk0LCA1NSwgMTIsIDEsIDEyNywgMjQyLCAxMjIsIDEyLCAKKyAgICAxLCAxMjcsIDE5NCwgMjU0LCAyMDUsIDEyLCAxLCAxMjcsIDE5NCwgMjE0LCAxNywgMTIsIDEsIDEwMywgMiwgMTk0LCA1MCwgCisgICAgMTIsIDEsIDEyNywgMTk0LCAyMTMsIDM1LCAxMiwgMSwgMjE2LCAxMjAsIDEyLCAxLCAyMTYsIDExOCwgMTIsIDEsIDI1MiwgCisgICAgMTEwLCAxMiwgMSwgMjE3LCAyMjksIDIsIDIyMywgMTY0LCAxMiwgMSwgMjE3LCAyMjksIDIsIDEzNywgMTgxLCA3NCwgMjQ2LCAKKyAgICAxNzgsIDEyLCAxLCAyMjYsIDExNiwgMTIsIDEsIDIxNywgMjI2LCAxMiwgMSwgMjUyLCA5OCwgMTIsIDEsIDEyMywgMiwgCisgICAgMTk0LCA1MCwgMTIsIDEsIDEyMywgMiwgMTE5LCAxODEsIDY2LCA1MCwgMTIsIDEsIDIyOCwgNTMsIDEyLCAxLCAyNDYsIAorICAgIDExOSwgMTIsIDEsIDEyMywgMiwgMTM3LCAxODEsIDUwLCAxMiwgMSwgMjE3LCAyNDYsIDEyLCAxLCAyMTcsIDI0NCwgMTIsIAorICAgIDEsIDI0OCwgMjAyLCAxMiwgMSwgMjQ5LCA3LCAyLCAyMjMsIDE2NCwgMTIsIDEsIDI0OSwgNywgMiwgNjIsIDU1LCAxMiwgMSwgCisgICAgMjQ5LCA3LCAyLCA2MiwgMjUyLCA5MCwgMjIsIDQsIDIxOCwgNDMsIDEyLCAxLCAyNDksIDEyLCAxMiwgMSwgMjQ4LCAyMDQsIAorICAgIDEyLCAxLCAyNDYsIDE0NiwgMTIsIDEsIDI0OSwgNywgMiwgMTM3LCAxODEsIDc0LCAyNDYsIDE3OCwgMTIsIDEsIDI0OSwgNywgCisgICAgMiwgMjQ0LCAxMDEsIDE4MSwgNTAsIDEyLCAxLCAyMjMsIDEwNywgMTIsIDEsIDIyNCwgMjQsIDIsIDQsIDIxMSwgMjExLCAKKyAgICAxMiwgMSwgMjI0LCAyNCwgMiwgMjIzLCAxNjQsIDEyLCAxLCAyMjQsIDI0LCAyLCA2MiwgNTUsIDEyLCAxLCAyMjQsIDI0LCAKKyAgICAyLCA0LCAyMTUsIDg2LCA1NSwgMTIsIDEsIDIyNCwgMjQsIDIsIDYyLCAyNTIsIDkwLCAyMiwgNjIsIDUwLCAxMiwgMSwgCisgICAgMjI0LCAyNCwgMiwgMTE5LCAxODEsIDUwLCAxMiwgMSwgMjM1LCAyMzYsIDEyLCAxLCAyMjQsIDI0LCAyLCAyNDQsIDEwMSwgCisgICAgMTgxLCA1MCwgMTIsIDEsIDIyMiwgMTA5LCAyLCA2MiwgMjUyLCA5MCwgMjIsIDYyLCA1MCwgMTIsIDEsIDIyMiwgMTA5LCAyLCAKKyAgICAxMzcsIDE4MSwgNTUsIDEyLCAxLCAyMjIsIDEwOSwgMiwgMTM3LCAxODEsIDI1MiwgOTAsIDIyLCAxMzcsIDE4MSwgNTAsIAorICAgIDEyLCAxLCAyMjIsIDIyMSwgMiwgMTE5LCAxODEsIDU1LCAxMiwgMSwgMjIyLCAyMjEsIDIsIDEzNywgMTgxLCA1MCwgMTIsIAorICAgIDEsIDIxOCwgNDQsIDIsIDEzNywgMTgxLCA1MCwgMTIsIDEsIDI1NCwgMjMyLCAyLCAxMzcsIDE4MSwgNTAsIDEyLCAxLCAKKyAgICAyNDcsIDE5NCwgMjQ0LCAyMzEsIDEyLCAxLCAyNDQsIDIzMiwgMiwgNjIsIDIzMCwgMjQ5LCA1NSwgMTIsIDEsIDI0NCwgCisgICAgMjMyLCAyLCA2MiwgNTUsIDEyLCAxLCAyMTQsIDIzMCwgMTIsIDEsIDI0NCwgMjMyLCAyLCAxMzcsIDE4MSwgNTUsIDEyLCAxLCAKKyAgICAyMjYsIDExNCwgMTIsIDEsIDIyNSwgNSwgMiwgNjIsIDUwLCAxMiwgMSwgMjI1LCA1LCAyLCAxMzcsIDE4MSwgNTAsIDEyLCAKKyAgICAxLCAyMzUsIDM2LCAxMiwgMSwgMjE4LCAyMDksIDIzNSwgMTEyLCAxMiwgMSwgMjM1LCAxMTMsIDIsIDIyMywgMTY0LCAxMiwgCisgICAgMSwgMjM1LCAxMTMsIDIsIDYyLCA1MCwgMTIsIDEsIDIyOSwgMjI4LCAxMiwgMSwgMjM1LCAxMTMsIDIsIDEzNywgMTgxLCAKKyAgICA1NSwgMTIsIDEsIDI0MywgMjE3LCAxMiwgMSwgMjQzLCAyMTgsIDIsIDIyMywgMTY0LCAxMiwgMSwgMjI5LCAxNTMsIDEyLCAKKyAgICAxLCAyNDMsIDIxOCwgMiwgMTE5LCAxODEsIDU1LCAxMiwgMSwgMjQyLCAyMDMsIDEyLCAxLCAyNDMsIDIxOCwgMiwgMTM3LCAKKyAgICAxODEsIDUwLCAxMiwgMSwgMjMzLCAyMjUsIDIsIDQsIDIxMSwgMjExLCAxMiwgMSwgMjMzLCAyMjUsIDIsIDYyLCA1MCwgMTIsIAorICAgIDEsIDIzMywgMjI1LCAyLCAxMzcsIDE4MSwgNTAsIDEyLCAxLCAyMzMsIDIyNSwgMiwgMTM3LCAxODEsIDU1LCAxMiwgMSwgCisgICAgMjI4LCAyMTcsIDIsIDYyLCA1NSwgMTIsIDEsIDIyOCwgMjE3LCAyNDMsIDU4LCAxMiwgMSwgMjIzLCAxNDksIDEyLCAxLCAKKyAgICAyMjgsIDIxNywgMiwgMjIzLCAxNjQsIDEyLCAxLCAyMjgsIDIxNywgMiwgMTM3LCAxODEsIDUwLCAxMiwgMSwgMjQyLCA2NiwgCisgICAgMjQ3LCAyMTYsIDEyLCAxLCAyMTcsIDI0NywgMiwgNjIsIDUwLCAxMiwgMSwgMjQyLCA2NiwgMiwgNzYsIDUwLCAxMiwgMSwgCisgICAgMjQyLCA2NiwgMjQzLCAxMSwgMTIsIDEsIDI0MiwgNjYsIDI0MywgMTIsIDIsIDE5NCwgNTAsIDEyLCAxLCAyMTcsIDIyOSwgCisgICAgMjMyLCA0MywgMjQzLCAxMSwgMTIsIDEsIDIxNCwgMTgsIDIsIDIyMywgMTY0LCAxMiwgMSwgMjM0LCAxOTMsIDIyNywgMTM2LCAKKyAgICAxMiwgMSwgMjI3LCAxMzYsIDEyLCAxLCA3MiwgMTIsIDEsIDIxMiwgMjA0LCAxMiwgMSwgMjM0LCAxOTMsIDIxMiwgMjA0LCAKKyAgICAxMiwgMSwgMjE0LCAxOCwgMiwgMTE5LCAxODEsIDUwLCAxMiwgMSwgMjE0LCAyMzcsIDEyLCAxLCAyNDUsIDEsIDIxMywgMzUsIAorICAgIDEyLCAxLCA3NiwgMiwgMjE4LCA0MCwgMTIsIDEsIDc2LCAyLCA0LCAyMTEsIDIxMSwgMTIsIDEsIDIxNCwgMTgsIDIsIDYyLCAKKyAgICA1MCwgMTIsIDEsIDc3LCAxMiwgMSwgNzYsIDIsIDEzNywgMTgxLCA1NSwgMTIsIDEsIDc2LCAyNTIsIDE3OCwgMTIsIDEsIAorICAgIDc2LCAyNTIsIDE3OSwgMiwgMTk0LCA1MCwgMTIsIDI0NCwgNjQsIDIxOSwgODMsIDEyLCAxLCAyNTUsIDIwLCAxMiwgNCwgCisgICAgMTI3LCAyNiwgMjIyLCAyMjEsIDIsIDIzMywgMjI1LCAyLCAxMDgsIDIzMiwgNzAsIDEyLCA0LCAxMjcsIDI2LCAyMjUsIDUsIAorICAgIDIsIDIzMywgMjI1LCAyLCAxMDgsIDIzMiwgNzAsIDEyLCA0LCAxMjcsIDY0LCA3MywgMTcsIDEyLCA0LCAxMjcsIDIzMywgCisgICAgMjI1LCAyNTQsIDIwNSwgMTIsIDQsIDEyNywgMjM1LCAyMzksIDEyLCA0LCAxMjcsIDEzNywgMjQ3LCAxOTMsIDEyLCA0LCAKKyAgICAxMjcsIDIyMiwgMTA4LCAxMiwgMjQ1LCAyMjIsIDY4LCAyNTMsIDIwOSwgMTIsIDIxOSwgMTA1LCA2OCwgMjIzLCA3NSwgCisgICAgMjQ1LCAyNTMsIDI0MiwgNCwgMTIsIDQsIDEyNywgMjIzLCAxMTksIDIxMiwgNzksIDEyLCA0LCAxMjcsIDIxNSwgMTM2LCAKKyAgICAyMjQsIDQyLCAyMTIsIDc5LCAxMiwgNCwgMTI3LCAyNDcsIDE5NCwgMjQyLCA4MywgNjgsIDIzNCwgMjQ3LCAxMiwgNCwgCisgICAgMTI3LCA2NCwgNDksIDE3LCAxMiwgNCwgMTE3LCAyMjIsIDEwOCwgMTIsIDQsIDEyNywgMjMyLCAxMDUsIDEyLCA0LCAyMTQsIAorICAgIDE3LCAxMiwgNCwgMjEzLCAzNSwgMTIsIDQsIDEyNywgMjEzLCAzNSwgMTIsIDQsIDEyNywgMjI4LCAyMTYsIDEyLCAyMjUsIAorICAgIDIwOSwgNjgsIDIyMiwgMjA4LCAxMiwgMjQ1LCAyMzEsIDI1MCwgMjMyLCAxMTcsIDIxOSwgODMsIDEyLCAyNDUsIDIzMSwgCisgICAgMjUwLCAyMzIsIDEyNywgMjE5LCA4MywgMTIsIDIyMywgMTE5LCAxMjcsIDIxOSwgODQsIDIsIDI0NCwgMTkzLCAyNTAsIAorICAgIDIzMSwgMTIsIDQsIDExNywgMjMxLCAyMTMsIDEyLCAxLCAyNDksIDcsIDIsIDIzNiwgNTIsIDIxMSwgMjExLCAxMiwgMSwgCisgICAgMjI0LCAyNCwgMiwgMjM2LCA1MiwgMjExLCAyMTEsIDI0NSwgMTExLCAyNTQsIDc4LCAyMSwgMjEyLCA3OSwgMjQ1LCAxMTEsIAorICAgIDI1NCwgNzgsIDIxLCAxMTgsIDI0NSwgMTExLCAyNTQsIDc4LCAyMSwgMTEyLCAyNDUsIDExMSwgMjU0LCA3OCwgMjEsIDE3MCwgCisgICAgMjQ1LCAxMTEsIDI1NCwgNzgsIDIxLCAxNjcsIDI0NSwgMTExLCAyNTQsIDc4LCAyMSwgMTg1LCAyNDUsIDExMSwgMjU0LCAKKyAgICA3OCwgMjEsIDE5MiwgMjQ1LCAxMTEsIDI1NCwgNzgsIDIxLCAyMDAsIDI0NSwgMTExLCAyNTQsIDc4LCAyMSwgMTk4LCAyNDUsIAorICAgIDExMSwgMjU0LCA3OCwgMjEsIDIwMywgMTIsIDEsIDIyMSwgNSwgMiwgNjIsIDU1LCAxMiwgMSwgMjQ5LCAyNiwgMiwgNjIsIAorICAgIDU1LCAxMiwgMSwgMjQzLCA4NSwgMiwgNjIsIDU1LCAxMiwgNSwgMjIwLCAxMDMsIDI1NCwgMTYyLCAxMiwgNSwgMjIwLCAKKyAgICAxMDMsIDIyNSwgMTUxLCAyMzEsIDE5MiwgMTIsIDEsIDI0MiwgNjYsIDIsIDIzNiwgNTIsIDIxMSwgMjExLCAxODAsIDI0NSwgCisgICAgMjIyLCA2OCwgMjI2LCAxNzksIDE4MCwgMjE4LCAyMzMsIDI0NCwgNjQsIDIxOSwgODMsIDE4MCwgMjE5LCAyNiwgMjQ0LCAKKyAgICA2NCwgMjE5LCA4MywgMTgwLCAyMTgsIDIzMywgMjUwLCAzMCwgMTgwLCAyMTksIDI2LCAyNTAsIDMwLCAxODAsIDIwMSwgCisgICAgMjUwLCAzMCwgMTgwLCAyNTAsIDMxLCAyMjAsIDUzLCAyMzMsIDE2OCwgMTgwLCAyNTAsIDMxLCAyMjAsIDUzLCAyMjMsIAorICAgIDE4MiwgMTgwLCAyMTgsIDIzMywgMjUwLCAzMSwgMjIwLCA1MywgMjMzLCAxNjgsIDE4MCwgMjE5LCAyNiwgMjUwLCAzMSwgCisgICAgMjIwLCA1MywgMjIzLCAxODIsIDE4MCwgMjQ5LCAyNDIsIDE4MCwgMjQyLCAxMDQsIDIyNywgMTUxLCAxODAsIDI0MiwgMTA0LCAKKyAgICAyMzEsIDE3MywgMTgwLCAyNDIsIDEwNCwgMjU0LCA1LCAxODAsIDI1NSwgNTMsIDc5LCAxODAsIDEsIDI1NCwgMjA5LCAxODAsIAorICAgIDEsIDIxOCwgMjM3LCAyNTQsIDIwOSwgMTgwLCAxLCAyNTIsIDcyLCAxODAsIDEsIDI0MywgMjA5LCAxODAsIDEsIDI0MywgCisgICAgMjEwLCAyNDMsIDE4NywgMTgwLCAxLCAyNDksIDMsIDE4MCwgMSwgMjQ3LCAxOTQsIDI0OSwgNCwgMjIzLCAxNjAsIDE4MCwgCisgICAgMSwgMjQyLCA4NSwgMTgwLCAxLCAyMTQsIDE3LCAxODAsIDEsIDIxMiwgMTAxLCAxODAsIDEsIDI0MiwgNDMsIDE4MCwgMSwgCisgICAgMjE3LCAxOTIsIDE4MCwgMSwgMjE3LCAxOTMsIDI0MywgMTg3LCAxODAsIDEsIDIxMiwgMTkxLCAxODAsIDEsIDIxMiwgMTkyLCAKKyAgICAyNDIsIDg1LCAxODAsIDEsIDIzNSwgODcsIDE4MCwgMSwgMjMzLCAyMjMsIDE4MCwgMSwgMjMxLCA3MywgMTgwLCAxLCAyMjgsIAorICAgIDkzLCAxODAsIDEsIDIyMSwgODYsIDE4MCwgMSwgNDEsIDIyMSwgODYsIDE4MCwgMSwgNzcsIDE4MCwgMSwgMjI2LCAxMzIsIAorICAgIDE4MCwgMSwgMjIzLCAyMzYsIDIyNiwgMTMyLCAxODAsIDEsIDIyMiwgMjE4LCAxODAsIDEsIDIyNCwgMjU0LCAxODAsIDEsIAorICAgIDIyMywgMTYwLCAxODAsIDEsIDIyMCwgMjIxLCAxODAsIDEsIDIxOCwgMCwgMTgwLCAxLCAyMjYsIDgxLCAyNTIsIDYwLCAKKyAgICAxODAsIDEsIDIyNiwgODEsIDI0MywgODIsIDE4MCwgMSwgMjI2LCA4MSwgMjQ4LCA5MywgMTgwLCAyMjUsIDcyLCA1MCwgCisgICAgMTgwLCAyMjUsIDcyLCA1NSwgMTgwLCAyMjUsIDcyLCAyNDYsIDE5MiwgMTgwLCAyMTIsIDEwLCA1MCwgMTgwLCAyMTIsIDEwLCAKKyAgICA1NSwgMTgwLCAyMTIsIDEwLCAyNDYsIDE5MiwgMTgwLCAyMjQsIDU4LCA1MCwgMTgwLCAyMjQsIDU4LCA1NSwgMTgwLCAyNDYsIAorICAgIDE5MywgMjEyLCAxNywgMjQxLCAxNDksIDE4MCwgMjQ2LCAxOTMsIDIxMiwgMTcsIDI1NCwgMTQyLCAxODAsIDI0MiwgODgsIAorICAgIDUwLCAxODAsIDI0MiwgODgsIDU1LCAxODAsIDI0MiwgODcsIDI0NiwgMTkyLCAxODAsIDI0NSwgMTY0LCA1MCwgMTgwLCAKKyAgICAyNDUsIDE2NCwgNTUsIDE4MCwgMjIzLCA0NCwgMTgwLCAyNDQsIDIyNSwgMjQ3LCAxOTUsIDE4MCwgMjI0LCAxNzIsIDE4MCwgCisgICAgMjIzLCA3MSwgMTgwLCAxMTksIDY2LCAxODEsIDUwLCAxODAsIDExOSwgNjYsIDE4MSwgNTUsIDE4MCwgMTM3LCAxODEsIDUwLCAKKyAgICAxODAsIDEzNywgMTgxLCA1NSwgMTgwLCAyMjcsIDE0OSwgMjMzLCA4NCwgNTAsIDE4MCwgMjI3LCAxNDksIDIzMywgODQsIAorICAgIDU1LCAxODAsIDIzMCwgMTk2LCAxODAsIDI1MiwgMTc3LCAxODAsIDEsIDIxOSwgMjUyLCAyMTIsIDczLCAxODAsIDEsIDIxOSwgCisgICAgMjUyLCAyMzQsIDI0MCwgMTgwLCAxLCAyMTksIDI1MiwgMjQ0LCAyNDMsIDEyLCAxLCAyNTIsIDEwMSwgMiwgMTM3LCAxODEsIAorICAgIDI0MSwgOTksIDU1LCAxMiwgMSwgMjUyLCAxMDEsIDIsIDYyLCAyNTIsIDkwLCAyMiwgMTM3LCAxODEsIDUwLCAxMiwgMSwgCisgICAgMjUyLCAxMDEsIDIsIDEzNywgMTgxLCAyMjUsIDE3NywgMjE1LCAxMzAsIDU1LCAxMiwgMSwgMjUyLCAxMDEsIDIsIDEzNywgCisgICAgMTgxLCAyMjUsIDE3NywgMjE1LCAxMzAsIDI1MiwgOTAsIDIyLCAxMTksIDE4MSwgNTAsIDEyLCAxLCAyNTIsIDEwMSwgMiwgCisgICAgMTE5LCAxODEsIDI1MiwgOTAsIDIyLCA2MiwgNTAsIDEyLCAxLCAyNTIsIDEwMSwgMiwgMjM2LCA1MiwgNCwgMjE1LCA4NiwgCisgICAgNTUsIDEyLCAxLCAyNTIsIDEwMSwgMiwgNCwgMjExLCAyMTEsIDEyLCAxLCAxMjMsIDIsIDExOSwgMTgxLCA1MCwgMTIsIDEsIAorICAgIDEyMywgMiwgMTM3LCAxODEsIDIyNSwgMTc3LCAyMTUsIDEzMCwgNTUsIDEyLCAxLCAyNDksIDcsIDIsIDExOSwgMTgxLCAKKyAgICAyMTQsIDE3MSwgMjUyLCA5MCwgMjIsIDQsIDIxOCwgNDMsIDEyLCAxLCAyNDksIDcsIDIsIDIzNiwgNTIsIDQsIDIxNSwgODYsIAorICAgIDU1LCAxMiwgMSwgMjI0LCAyNCwgMiwgOTEsIDEyLCAxLCAyMjIsIDEwOSwgMiwgMjQ0LCAxMDEsIDE4MSwgNTAsIDEyLCAxLCAKKyAgICAyNTQsIDIzMiwgMiwgMTE5LCAxODEsIDUwLCAxMiwgMSwgMjU0LCAyMzIsIDIsIDEzNywgMTgxLCAyMjUsIDE3NywgMjQ2LCAKKyAgICAxNzksIDUwLCAxMiwgMSwgMjU0LCAyMzIsIDIsIDExOSwgMTgxLCAyMTQsIDE3MSwgNTAsIDEyLCAxLCAyNDQsIDIzMiwgMiwgCisgICAgMTE5LCAxODEsIDU1LCAxMiwgMSwgMjQ0LCAyMzIsIDIsIDEzNywgMTgxLCAyMjUsIDE3NywgMjE1LCAxMzAsIDU1LCAxMiwgCisgICAgMSwgMjM1LCAzNywgMiwgNjIsIDUwLCAxMiwgMSwgMjM1LCAzNywgMiwgMTM3LCAxODEsIDUwLCAxMiwgMSwgMjM1LCAzNywgCisgICAgMiwgMTM3LCAxODEsIDIyNSwgMTc3LCAyMTUsIDEzMCwgNTUsIDEyLCAxLCA2NCwgMiwgNjIsIDUwLCAxMiwgMSwgNjQsIDIsIAorICAgIDYyLCA1NSwgMTIsIDEsIDIyOCwgMjE3LCAyLCAxMTksIDE4MSwgNTUsIDEyLCAxLCAyMjgsIDIxNywgMiwgNCwgMjE4LCA0MywgCisgICAgMTIsIDEsIDIyOCwgMjE3LCAyLCA0LCAyMTEsIDIxMSwgMTIsIDEsIDIzMywgMjI1LCAyLCAxMzQsIDEyLCAxLCAyMjQsIDI0LCAKKyAgICAyLCAxMTksIDE4MSwgMjE0LCAxNzEsIDUwLCAxMiwgMSwgMjI0LCAyNCwgMiwgMTk0LCA1MCwgMTIsIDEsIDIyMiwgMTA5LCAKKyAgICAyLCAxMTksIDE4MSwgMjE0LCAxNzEsIDUwLCAxMiwgMSwgMTIzLCAyLCA0LCAxMiwgMSwgMjE4LCA0NCwgNTUsIDEyLCAxLCAKKyAgICAxMjMsIDIsIDQsIDEyLCAxLCAyMTgsIDQ0LCAyMiwgMTE5LCAyNDcsIDE5MywgMTIsIDEsIDIyMiwgMTA5LCAyLCA0LCAxMiwgCisgICAgMSwgMjE4LCA0NCwgMjIsIDExOSwgMjQ3LCAxOTMsIDEyLCAxLCAyMjQsIDI0LCAyLCA0LCAxMiwgMSwgMjE4LCA0NCwgMjIsIAorICAgIDExOSwgMjQ3LCAxOTMsIDEyLCAxLCAxMjMsIDIsIDQsIDEyLCAxLCAyMTgsIDQ0LCA1MCwgMTIsIDEsIDEwOCwgMiwgMjQ1LCAKKyAgICAxMTEsIDI1NCwgNzgsIDIxLCAxMTksIDUwLCAxMiwgMSwgMTA4LCAyLCAyNDUsIDExMSwgMjU0LCA3OCwgMjEsIDEzNywgNTAsIAorICAgIDEyLCAxLCAyNDUsIDEsIDc2LCAyLCAyNDUsIDExMSwgMjU0LCA3OCwgMjEsIDExOSwgNTAsIDEyLCAxLCAyNDUsIDEsIDc2LCAKKyAgICAyLCAyNDUsIDExMSwgMjU0LCA3OCwgMjEsIDEzNywgNTAsIDEyLCAxLCAyNDUsIDEsIDc2LCAyLCAyNDUsIDExMSwgMjU0LCAKKyAgICA3OCwgMjEsIDI0NCwgMTAxLCA1NSwgMTIsIDEsIDIxNCwgMTgsIDIsIDI0NSwgMTExLCAyNTQsIDc4LCAyMSwgMTE5LCA1MCwgCisgICAgMTIsIDEsIDIxNCwgMTgsIDIsIDI0NSwgMTExLCAyNTQsIDc4LCAyMSwgMTM3LCA1MCwgMTIsIDEsIDc2LCAyNTIsIDE3OSwgCisgICAgMiwgMjQ1LCAxMTEsIDI1NCwgNzgsIDIxLCAxMTksIDUwLCAxMiwgMSwgNzYsIDI1MiwgMTc5LCAyLCAyNDUsIDExMSwgMjU0LCAKKyAgICA3OCwgMjEsIDEzNywgNTAsIDEyLCAxLCAxMjMsIDIsIDI0NSwgMTExLCAyNTQsIDc4LCAyMSwgMjQ0LCAxMDEsIDU1LCAxMiwgCisgICAgMSwgMjIyLCAxMDksIDIsIDI0NSwgMTExLCAyNTQsIDc4LCAyMSwgMjQ0LCAxMDEsIDUwLCAxMiwgMSwgMjIyLCAxMDksIDIsIAorICAgIDIzNiwgNTIsIDIxMSwgMjExLCAxMiwgMSwgMjM1LCAxMTMsIDIsIDExOSwgMTgxLCA1MCwgMjE3LCAxNzEsIDEsIDI0MiwgCisgICAgMTQ4LCAyMTcsIDE3MSwgMSwgMjIxLCAxMywgMjE3LCAxNzEsIDEsIDIyOCwgMjE1LCAyMTcsIDE3MSwgMSwgMjI0LCAxMDksIAorICAgIDIxNywgMTcxLCAxLCAyNTIsIDIzMywgMjE3LCAxNzEsIDEsIDIzMywgMTIwLCAyMTcsIDE3MSwgMSwgMjM1LCAxMjYsIDIxNywgCisgICAgMTcxLCAxLCAyNTQsIDE5NSwgMjE3LCAxNzEsIDEsIDIxNSwgNiwgMjE3LCAxNzEsIDEsIDIzMSwgMjEyLCAyMTcsIDE3MSwgCisgICAgMSwgMjQ1LCAyNywgMjE3LCAxNzEsIDEsIDI0OCwgOTYsIDIxNywgMTcxLCAxLCAyMTcsIDE3MywgMjE3LCAxNzEsIDEsIAorICAgIDIzMywgMjUxLCAyMTcsIDE3MSwgMSwgMjQzLCAyMjYsIDIxNywgMTcxLCAxLCAyNDMsIDE3LCAyMTcsIDE3MSwgMSwgMjIyLCAKKyAgICAxMDcsIDIxNywgMTcxLCAxLCAyNDgsIDIxNSwgMjE3LCAxNzEsIDEsIDIxMiwgOTMsIDIxNywgMTcxLCAxLCAyMTgsIDEsIAorICAgIDIxNywgMTcxLCAxLCAyMTMsIDk0LCAyMTcsIDE3MSwgMSwgMjI2LCAxNDMsIDIxNywgMTcxLCAxLCAyMzUsIDI0NCwgMjE3LCAKKyAgICAxNzEsIDEsIDI1MCwgMTkzLCAyMTcsIDE3MSwgMSwgMjE2LCAxMjcsIDIxNywgMTcxLCAxLCAyNDIsIDM2LCAyMTcsIDE3MSwgCisgICAgMSwgMjM0LCAyNDksIDIxNywgMTcxLCAxLCAyMTcsIDE3MiwgMjE3LCAxNzEsIDEsIDIxMiwgMTA4LCAyMTcsIDE3MSwgMSwgCisgICAgMjIxLCAzLCAyMTcsIDE3MSwgMSwgMjIyLCAyMjQsIDIxNywgMTcxLCAxLCAyNDksIDI4LCAyMTcsIDE3MSwgMSwgMTA5LCAKKyAgICAyMTcsIDE3MSwgMSwgMjEyLCAxNiwgMjE3LCAxNzEsIDEsIDI1NCwgMjI4LCAyMTcsIDE3MSwgMSwgMjQzLCA4MywgMjE3LCAKKyAgICAxNzEsIDEsIDIyNSwgOCwgMjE3LCAxNzEsIDEsIDIxNCwgNTAsIDIxNywgMTcxLCAyNTUsIDU0LCAyMTcsIDE3MSwgMjU1LCAKKyAgICA2OSwgMjE3LCAxNzEsIDI0MCwgMjI0LCAyMTcsIDE3MSwgMjQ2LCAyOSwgMjE3LCAxNzEsIDIxNSwgMTk3LCAyMTcsIDE3MSwgCisgICAgMjI3LCA4NSwgMjE3LCAxNzEsIDI0NiwgMzcsIDIxNywgMTcxLCAyNDUsIDEwNSwgMjE3LCAxNzEsIDIyNywgMTQ4LCAyMTcsIAorICAgIDE3MSwgMjI3LCAxNTYsIDIxNywgMTcxLCAyMTksIDQsIDIxNywgMTcxLCAxLCAyMzAsIDExMiwgMjI5LCAzMiwgMjEsIDIxMiwgCisgICAgNzksIDIyOSwgMzIsIDIxLCAxMTgsIDIyOSwgMzIsIDIxLCAxMTIsIDIyOSwgMzIsIDIxLCAxNzAsIDIyOSwgMzIsIDIxLCAKKyAgICAxNjcsIDIyOSwgMzIsIDIxLCAxODUsIDIyOSwgMzIsIDIxLCAxOTIsIDIyOSwgMzIsIDIxLCAyMDAsIDIyOSwgMzIsIDIxLCAKKyAgICAxOTgsIDIyOSwgMzIsIDIxLCAyMDMsIDIyOSwgMzIsIDEsIDYzLCAyMjksIDMyLCAxLCAyNDYsIDMwLCAyMjksIDMyLCAxLCAKKyAgICA3NSwgMjI5LCAzMiwgMSwgNzcsIDIyOSwgMzIsIDEsIDcyLCAyMjksIDMyLCAxLCAyMjcsIDg2LCAyMjksIDMyLCAxLCA3OCwgCisgICAgMjI5LCAzMiwgMSwgMjQ5LCAxOCwgMjI5LCAzMiwgMSwgMjA2LCAyMjksIDMyLCAxLCAyNTIsIDIzNCwgMjI5LCAzMiwgMSwgCisgICAgMTk1LCAyMjksIDMyLCAxLCAyMTgsIDY2LCAyMjksIDMyLCAxLCAyMzYsIDAsIDIyOSwgMzIsIDEsIDI1MCwgMjE1LCAyMjksIAorICAgIDMyLCAxLCAyNDksIDMwLCAyMjksIDMyLCAxLCAyMDgsIDIyOSwgMzIsIDEsIDIyMywgMTE1LCAyMjksIDMyLCAxLCAyMjIsIAorICAgIDIyNywgMjI5LCAzMiwgMSwgMjQzLCAxNzUsIDIyOSwgMzIsIDEsIDI0NSwgMjksIDIyOSwgMzIsIDEsIDE4MywgMjI5LCAzMiwgCisgICAgMSwgMjMzLCAyNTUsIDIyOSwgMzIsIDEsIDIzMCwgMTE1LCAyMTMsIDIxMywgMjI5LCAzMiwgMSwgMTkxLCAyMjksIDMyLCAxLCAKKyAgICAyMjgsIDY0LCAyMjksIDMyLCAxLCAyMDcsIDIyOSwgMzIsIDEsIDE2MiwgMjI5LCAzMiwgMSwgMjE0LCA1MiwgMjI5LCAzMiwgCisgICAgMSwgMTg5LCAyMjksIDMyLCAxLCAyMjgsIDY1LCAyMTMsIDIxMywgMjI5LCAzMiwgMSwgMjM1LCAxNzgsIDIzNiwgMCwgMjI5LCAKKyAgICAzMiwgMSwgMjM1LCAxNzgsIDI1MCwgMjE1LCAyMjksIDMyLCAxLCAyMzUsIDE3OCwgMjA4LCAyMjksIDMyLCAzOCwgMjIwLCAKKyAgICAxOTYsIDEyNywgMjE2LCAyNTQsIDIyOSwgMzIsIDM4LCAyMjAsIDE5NiwgMTE3LCAyMTYsIDI1NCwgMjI5LCAzMiwgMzgsIAorICAgIDIyMCwgMTk2LCAyMjMsIDE1OSwgMjE2LCAyNTQsIDIyOSwgMzIsIDM4LCAxODcsIDI0OCwgMTEwLCAyMTYsIDI1NCwgMjI5LCAKKyAgICAzMiwgMzgsIDE4NywgMTI3LCAyMTYsIDI1NCwgMjI5LCAzMiwgMzgsIDE4NywgMTE3LCAyMTYsIDI1NCwgMjI5LCAzMiwgMzgsIAorICAgIDE4NywgMjIzLCAxNTksIDIxNiwgMjU0LCAyMjksIDMyLCAzOCwgMjMwLCA4MSwgNzksIDIyOSwgMzIsIDM4LCA1MiwgNjIsIAorICAgIDUwLCAyMjksIDMyLCAxMjcsIDE2MSwgMjU0LCA5NywgMjI5LCAzMiwgMTE3LCAxNjEsIDI1NCwgOTcsIDIyOSwgMzIsIDE2LCAKKyAgICAyMjcsIDg3LCAyNDgsIDEyMiwgMjI5LCAzMiwgMTYsIDI0MywgMTc0LCAyMjksIDMyLCAyNTAsIDIzLCAyMjksIDMyLCAyNDUsIAorICAgIDExOSwgNzksIDIyOSwgMzIsIDIzMywgMjMwLCAyMjIsIDE5MSwgMSwgMjU0LCAyMTEsIDIyMiwgMTkxLCAxLCAyNTIsIDIwLCAKKyAgICAyMjIsIDE5MSwgMSwgMjQzLCAyMDgsIDIyMiwgMTkxLCAxLCAyNDksIDUsIDIyMiwgMTkxLCAxLCAyMzYsIDExLCAyMjIsIAorICAgIDE5MSwgMSwgMjUyLCAyMzMsIDIyMiwgMTkxLCAxLCAyMTIsIDgyLCAyMjIsIDE5MSwgMSwgMjM2LCAxOSwgMjIyLCAxOTEsIAorICAgIDEsIDIxNywgMzQsIDIyMiwgMTkxLCAxLCAyMTIsIDE3NCwgMjIyLCAxOTEsIDEsIDIzNSwgMTI3LCAyMjIsIDE5MSwgMSwgCisgICAgMjMzLCAyNDgsIDIyMiwgMTkxLCAxLCAyMzEsIDczLCAyMjIsIDE5MSwgMSwgMjI4LCA5MywgMjIyLCAxOTEsIDEsIDIyMCwgCisgICAgMTAxLCAyMjIsIDE5MSwgMSwgMjM2LCAxMTIsIDIyMiwgMTkxLCAxLCAyNDQsIDIxMCwgMjIyLCAxOTEsIDEsIDIxNiwgMTUyLCAKKyAgICAyMjIsIDE5MSwgMSwgMjI0LCAxOTAsIDIyMiwgMTkxLCAxLCAyMjMsIDE2MCwgMjIyLCAxOTEsIDEsIDIyMSwgMzAsIDIyMiwgCisgICAgMTkxLCAxLCAyMTgsIDYyLCAyMjIsIDE5MSwgMTU2LCAyMzYsIDExMiwgMjIyLCAxOTEsIDE1NiwgMjM2LCAxMTEsIDIyMiwgCisgICAgMTkxLCAxNTYsIDIyNywgMTQ0LCAyMjIsIDE5MSwgMTU2LCAyNDksIDE2LCAyMjIsIDE5MSwgNTksIDEsIDI0NSwgMTg5LCAKKyAgICAyMTIsIDE3NCwgMjIyLCAxOTEsIDE1NiwgMjQ1LCAxODksIDIxMiwgMTc0LCAyMjIsIDE5MSwgMzAsIDUsIDE4NywgNzcsIAorICAgIDIyMiwgMTkxLCAzMCwgNSwgNzcsIDIyMiwgMTkxLCAzMCwgNSwgMjI3LCAyNCwgMjU1LCAxMDQsIDIyMiwgMTkxLCAzMCwgNSwgCisgICAgMTg3LCAyNTUsIDEwNCwgMjIyLCAxOTEsIDMwLCA1LCAyNTUsIDEwNCwgMjIyLCAxOTEsIDMwLCA1LCAyMjcsIDI0LCA2MywgCisgICAgMjIyLCAxOTEsIDMwLCA1LCAxODcsIDYzLCAyMjIsIDE5MSwgMzAsIDUsIDYzLCAyMjIsIDE5MSwgNTksIDEsIDIyMCwgMTk2LCAKKyAgICA2MywgMjIyLCAxOTEsIDMwLCA1LCAyMjAsIDE5NiwgNjMsIDIyMiwgMTkxLCAzMCwgNSwgMTg3LCA3MiwgMjIyLCAxOTEsIAorICAgIDMwLCA1LCA3MiwgMjIyLCAxOTEsIDU5LCAxLCA3NSwgMjIyLCAxOTEsIDMwLCA1LCAxODcsIDc1LCAyMjIsIDE5MSwgMzAsIAorICAgIDUsIDc1LCAyMjIsIDE5MSwgMzAsIDUsIDc4LCAyMjIsIDE5MSwgMzAsIDUsIDIxOSwgNCwgMjIyLCAxOTEsIDE1NiwgMjI5LCAKKyAgICAyNDEsIDIyMiwgMTkxLCAyMjUsIDYzLCAyMjksIDI0MSwgMjIyLCAxOTEsIDIyNSwgNjMsIDI1NCwgMjUxLCAyMjIsIDE5MSwgCisgICAgMjI1LCA2MywgMjU0LCAxNTAsIDIyMiwgMTkxLCAyMjUsIDYzLCAyNTIsIDE2MCwgMjIyLCAxOTEsIDIyNSwgNjMsIDI1MywgCisgICAgMjQ0LCAyMjIsIDE5MSwgMjI1LCA2MywgMjIwLCAyMDksIDIyMiwgMTkxLCAyNTUsIDUzLCA3OSwgMjIyLCAxOTEsIDIyNSwgCisgICAgNjMsIDIzMSwgMjAyLCAyMjQsIDIyNSwgMjIyLCAxOTEsIDIyNSwgNjMsIDIxMiwgMjQsIDIyMiwgMTkxLCAyMjUsIDYzLCAKKyAgICAyMjQsIDIyNSwgMjIyLCAxOTEsIDIyNSwgNjMsIDIxMiwgMTA3LCAyMjIsIDE5MSwgMjI1LCA2MywgMjE2LCA2MiwgMjIyLCAKKyAgICAxOTEsIDIyNSwgNjMsIDI1NCwgNTEsIDIyMiwgMTkxLCAyMjUsIDYzLCAyMjAsIDAsIDIzMiwgMjMsIDIyMiwgMTkxLCAyMjUsIAorICAgIDYzLCAyNTQsIDEzOCwgMjMyLCA2MCwgMSwgMjQyLCAxMjcsIDIzMiwgNjAsIDEsIDI1NSwgNTcsIDIzMiwgNjAsIDEsIDI1NCwgCisgICAgMjQ5LCAyMzIsIDYwLCAxLCAyNTUsIDMyLCAyMzIsIDYwLCAxLCAyNTQsIDI0MiwgMjMyLCA2MCwgMSwgMjE1LCAxMDQsIAorICAgIDIzMiwgNjAsIDEsIDI1MywgMjAzLCAyMzIsIDYwLCAxLCAyMzYsIDE5LCAyMzIsIDYwLCAxLCAyNTMsIDI0MSwgMjMyLCA2MCwgCisgICAgMSwgMjU0LCAyMTYsIDIzMiwgNjAsIDEsIDI1NCwgMjIxLCAyMzIsIDYwLCAxLCAyNTQsIDIxMywgMjMyLCA2MCwgMSwgMjU0LCAKKyAgICAxNzIsIDIzMiwgNjAsIDEsIDI1NCwgMTU5LCAyMzIsIDYwLCAxLCAyNTQsIDIzLCAyMzIsIDYwLCAxLCAyMzYsIDExMiwgCisgICAgMjMyLCA2MCwgMSwgMjU0LCAxMTAsIDIzMiwgNjAsIDEsIDI1MywgMjUxLCAyMzIsIDYwLCAxLCAyNTQsIDg2LCAyMzIsIDYwLCAKKyAgICAxLCAyNTQsIDgyLCAyMzIsIDYwLCAxLCAyNTQsIDE3LCAyMzIsIDYwLCAxLCAyNTMsIDI0OSwgMjMyLCA2MCwgMSwgMjQ2LCAKKyAgICAxMzEsIDIzMiwgNjAsIDEsIDIzNSwgMTIwLCAyMzIsIDYwLCAxLCAyNTQsIDIzMSwgMjMyLCA2MCwgMjU0LCAyNTUsIDc5LCAKKyAgICAyMzIsIDYwLCAyMTQsIDEyMSwgNzksIDIzMiwgNjAsIDI0MywgMTQ5LCA3OSwgMjMyLCA2MCwgMjI1LCA2MiwgODQsIDUsIAorICAgIDIzNiwgNTIsIDI1MSwgNTUsIDg0LCA1LCAyNTEsIDU1LCA4NCwgNSwgMjU0LCAxMTMsIDg0LCA1LCAyMTQsIDEzMiwgODQsIAorICAgIDEsIDIyMCwgMTk2LCA2MywgODQsIDEsIDYzLCA4NCwgMSwgMjU1LCAxMDQsIDg0LCAxLCA3NSwgODQsIDEsIDIzNiwgMTQ1LCAKKyAgICA4NCwgMSwgNzIsIDg0LCAxLCAyMTUsIDk4LCA4NCwgMSwgMTY1LCAxNTIsIDg0LCAxLCAxNjUsIDE1NSwgODQsIDEsIDI1MSwgCisgICAgNTgsIDc3LCA4NCwgMSwgMjIwLCAxOTYsIDc3LCA4NCwgMSwgNzcsIDg0LCAxLCAyNTQsIDIzNiwgODQsIDEsIDI1MSwgNTgsIAorICAgIDc4LCA4NCwgMSwgMjIwLCAxOTYsIDc4LCA4NCwgMSwgNzgsIDg0LCAxLCAyNTMsIDIzNSwgODQsIDEsIDE4MywgODQsIDEsIAorICAgIDIzNCwgMjUwLCA4NCwgMSwgMjQzLCAyMzAsIDg0LCAxLCAyNDMsIDg5LCA4NCwgMSwgMjI5LCAyMjYsIDg0LCAxLCAyNTEsIAorICAgIDg4LCA4NCwgMSwgMjUwLCAyMTUsIDg0LCAxLCAyMzYsIDAsIDg0LCAxLCAyMzUsIDIzMCwgODQsIDEsIDIyOCwgNjQsIDg0LCAKKyAgICAxLCAyMTYsIDEyOCwgODQsIDEsIDIxNiwgMTE2LCA4NCwgMSwgMjQ4LCAyMDcsIDg0LCAxLCAyNDgsIDE5MSwgODQsIDEsIAorICAgIDIyOSwgNiwgODQsIDEsIDIxOCwgNjYsIDg0LCAxLCAyMTcsIDE3NCwgODQsIDEsIDI0OSwgMzAsIDg0LCAxLCAyNDgsIDk3LCAKKyAgICA4NCwgMSwgMjA3LCA4NCwgMSwgMjI4LCAyNDYsIDg0LCAxLCAxOTUsIDg0LCAxLCAyMjYsIDU5LCA4NCwgMSwgMjUyLCAyMzQsIAorICAgIDg0LCAxLCAyNTIsIDY1LCA4NCwgMSwgMTkxLCA4NCwgMSwgMTg5LCA4NCwgMSwgMjA4LCA4NCwgMSwgMjIzLCAxMTUsIDg0LCAKKyAgICAxLCAyMzMsIDI1NSwgODQsIDEsIDIzMywgNTQsIDg0LCAxLCAyMzMsIDQ1LCA4NCwgMSwgMjE1LCA4LCA4NCwgMSwgMjIxLCAKKyAgICA0NywgODQsIDEsIDIxOSwgMTc2LCA4NCwgMSwgMjIyLCAyMjcsIDg0LCAxLCAxNjIsIDg0LCAzMCwgNSwgMjI3LCAxMzYsIAorICAgIDg0LCAzMCwgNSwgMjI3LCA4NCwgODQsIDUsIDIyOCwgMTAzLCA4NCwgNSwgMjUzLCAyMTgsIDg0LCAzMCwgNSwgMjU1LCAKKyAgICAxMDQsIDg0LCAzMCwgNSwgNzUsIDg0LCAzMCwgNSwgMjM2LCAxNDUsIDg0LCAzMCwgNSwgNzIsIDg0LCAzMCwgNSwgMjE1LCAKKyAgICA5OCwgODQsIDMwLCA1LCAxNjUsIDE1MiwgODQsIDMwLCA1LCAxNjUsIDIyMywgMTE2LCA4NCwgMzAsIDUsIDI1MSwgNTgsIAorICAgIDc3LCA4NCwgMzAsIDUsIDIyMCwgMTk2LCA3NywgODQsIDMwLCA1LCA3NywgODQsIDMwLCA1LCAyNTQsIDIzNiwgODQsIDMwLCAKKyAgICA1LCAyNTEsIDU4LCA3OCwgODQsIDMwLCA1LCAyMjAsIDE5NiwgNzgsIDg0LCAzMCwgNSwgNzgsIDg0LCAzMCwgNSwgMjUzLCAKKyAgICAyMzUsIDg0LCA1LCAyMTQsIDEzNywgODQsIDMwLCA1LCAyMjUsIDEwMiwgNzcsIDg0LCAzMCwgNSwgMjUzLCAyMTQsIDg0LCAKKyAgICAyMjcsIDEwNywgODQsIDIxOSwgNjUsIDUsIDIxNSwgMTkxLCA4NCwgMjE5LCA2NSwgNSwgMjU0LCAxMTUsIDg0LCAyNDIsIAorICAgIDIzNCwgMjU1LCA0NiwgODQsIDI1NSwgMzYsIDI1NSwgNDYsIDg0LCAzMCwgNSwgMjUxLCA1OCwgMTg3LCA3NywgODQsIDMwLCAKKyAgICA1LCAyMTUsIDE4OSwgODQsIDMwLCA1LCAyMTUsIDk3LCA4NCwgMSwgMjI1LCAxMSwgODQsIDEsIDIzNCwgMjMzLCA4NCwgMSwgCisgICAgMjQzLCA2NiwgODQsIDEsIDIxMiwgMTA5LCA4NCwgMSwgMjQ4LCAxOTYsIDg0LCAxLCAyMjMsIDIyNiwgODQsIDEsIDI0NSwgCisgICAgMjksIDg0LCAxLCAyMTIsIDE2MCwgODQsIDEsIDE2NSwgMjIzLCAxMTYsIDg0LCAxLCAxNjUsIDIzMywgNTUsIDg0LCAzMCwgCisgICAgNSwgMTY1LCAxNTUsIDg0LCAzMCwgNSwgMTY1LCAyMzMsIDU1LCA4NCwgMjQ4LCAyNDUsIDg0LCA1MiwgMjQ4LCAyNDUsIDg0LCAKKyAgICAyMSwgMjEyLCA3OSwgODQsIDIxLCAxMTgsIDg0LCAyMSwgMTEyLCA4NCwgMjEsIDE3MCwgODQsIDIxLCAxNjcsIDg0LCAyMSwgCisgICAgMTg1LCA4NCwgMjEsIDE5MiwgODQsIDIxLCAyMDAsIDg0LCAyMSwgMTk4LCA4NCwgMjEsIDIwMywgODQsIDI1NSwgNTMsIDUzLCAKKyAgICA4NCwgNSwgMTI3LCAyMTksIDIyNCwgMjQ3LCAxOTUsIDg0LCAxLCAyNTEsIDU4LCA2MywgODQsIDEsIDIyNywgMTM2LCA4NCwgCisgICAgMSwgMjI3LCA4NCwgODQsIDEsIDI1MywgMjE0LCA4NCwgMSwgMjE1LCAxODksIDg0LCAxLCAyMTUsIDk3LCA4NCwgMSwgMjEyLCAKKyAgICA3NSwgODQsIDEsIDExMCwgMTg5LCA4NCwgMSwgMjQzLCAxMjUsIDg0LCAxLCAyMzUsIDIxMywgODQsIDEsIDI0MywgMjAsIAorICAgIDIxOSwgODMsIDg0LCAxLCAyNDgsIDE5NywgODQsIDEsIDI1MiwgMTU3LCAxNDIsIDUsIDI1MSwgNTUsIDE0MiwgNSwgMjU0LCAKKyAgICAxMTMsIDE0MiwgNSwgMjE0LCAxMzIsIDE0MiwgMSwgNjMsIDE0MiwgMSwgMjU1LCAxMDQsIDE0MiwgMSwgNzUsIDE0MiwgMSwgCisgICAgMjM2LCAxNDUsIDE0MiwgMSwgNzIsIDE0MiwgMSwgMjE1LCA5OCwgMTQyLCAxLCAxNjUsIDE1MiwgMTQyLCAxLCAxNjUsIAorICAgIDE1NSwgMTQyLCAxLCA3NywgMTQyLCAxLCAyNTQsIDIzNiwgMTQyLCAxLCA3OCwgMTQyLCAxLCAyNTMsIDIzNSwgMTQyLCAxLCAKKyAgICAxODMsIDE0MiwgMSwgMjM0LCAyNTAsIDE0MiwgMSwgMjQzLCAyMzAsIDE0MiwgMSwgMjQzLCA4OSwgMTQyLCAxLCAyMjksIAorICAgIDIyNiwgMTQyLCAxLCAyNTEsIDg4LCAxNDIsIDEsIDI1MCwgMjE1LCAxNDIsIDEsIDIzNiwgMCwgMTQyLCAxLCAyMzUsIDIzMCwgCisgICAgMTQyLCAxLCAyMjgsIDY0LCAxNDIsIDEsIDIxNiwgMTI4LCAxNDIsIDEsIDIxNiwgMTE2LCAxNDIsIDEsIDI0OCwgMjA3LCAKKyAgICAxNDIsIDEsIDI0OCwgMTkxLCAxNDIsIDEsIDIyOSwgNiwgMTQyLCAxLCAyMTgsIDY2LCAxNDIsIDEsIDIxNywgMTc0LCAxNDIsIAorICAgIDEsIDI0OSwgMzAsIDE0MiwgMSwgMjQ4LCA5NywgMTQyLCAxLCAyMDcsIDE0MiwgMSwgMTk1LCAxNDIsIDEsIDIyNiwgNTksIAorICAgIDE0MiwgMSwgMjUyLCAyMzQsIDE0MiwgMSwgMjUyLCA2NSwgMTQyLCAxLCAxOTEsIDE0MiwgMSwgMTg5LCAxNDIsIDEsIDIwOCwgCisgICAgMTQyLCAxLCAyMzMsIDI1NSwgMTQyLCAxLCAyMjEsIDQ3LCAxNDIsIDEsIDIxOSwgMTc2LCAxNDIsIDEsIDIyMiwgMjI3LCAKKyAgICAxNDIsIDEsIDE2MiwgMTQyLCA1LCAyMjgsIDEwMywgMTQyLCA1LCAyNTMsIDIxOCwgMTQyLCAzMCwgNSwgMjU1LCAxMDQsIAorICAgIDE0MiwgMzAsIDUsIDc1LCAxNDIsIDMwLCA1LCAyMzYsIDE0NSwgMTQyLCAzMCwgNSwgNzIsIDE0MiwgMzAsIDUsIDIxNSwgCisgICAgOTgsIDE0MiwgMzAsIDUsIDE2NSwgMTUyLCAxNDIsIDMwLCA1LCAxNjUsIDIyMywgMTE2LCAxNDIsIDMwLCA1LCA3NywgMTQyLCAKKyAgICAzMCwgNSwgMjU0LCAyMzYsIDE0MiwgMzAsIDUsIDc4LCAxNDIsIDMwLCA1LCAyNTMsIDIzNSwgMTQyLCA1LCAyMTQsIDEzNywgCisgICAgMTQyLCAxLCAyMzQsIDI0MiwgMjE4LCA2NiwgMTQyLCAyNTMsIDIzNiwgMjMzLCAxNDUsIDc5LCAxNDIsIDEsIDIyMywgMTE1LCAKKyAgICAxNDIsIDEsIDIyMywgMjI2LCAxNDIsIDEsIDIxMiwgMTYwLCAxNDIsIDEsIDE2NSwgMjIzLCAxMTYsIDE0MiwgMSwgMTY1LCAKKyAgICAyMzMsIDU1LCAxNDIsIDMwLCA1LCAxNjUsIDE1NSwgMTQyLCAzMCwgNSwgMTY1LCAyMzMsIDU1LCAxNDIsIDIxLCAyMTIsIAorICAgIDc5LCAxNDIsIDIxLCAxMTgsIDE0MiwgMjEsIDExMiwgMTQyLCAyMSwgMTcwLCAxNDIsIDIxLCAxNjcsIDE0MiwgMjEsIDE4NSwgCisgICAgMTQyLCAyMSwgMTkyLCAxNDIsIDIxLCAyMDAsIDE0MiwgMjEsIDE5OCwgMTQyLCAyMSwgMjAzLCAxNDIsIDEsIDIyNCwgMTEyLCAKKyAgICAyLCAyMzEsIDEwNywgMjQ4LCA3MSwgMTQyLCAxLCAyMjQsIDExMiwgMiwgMjMyLCAyMzcsIDI0OCwgNzEsIDE0MiwgMjIzLCAKKyAgICA1NSwgNzksIDE0MiwgMjIzLCA1NSwgNTMsIDE0MiwgMjQ5LCAxNjIsIDIyOCwgOTYsIDExOCwgMTQyLCAyNDksIDE2MiwgCisgICAgMjI4LCA5NiwgMTEyLCAxNDIsIDI0OSwgMTYyLCAyMjgsIDk2LCAxNzAsIDE0MiwgMjQ5LCAxNjIsIDIyOCwgOTYsIDE2NywgCisgICAgMTQyLCAyNDksIDE2MiwgMjI4LCA5NiwgMTI0LCAyMzMsIDEzOCwgMjE3LCAxNjcsIDIxNywgMTYyLCAyNDgsIDEyMCwgMTQyLCAKKyAgICAyNDksIDE2MiwgMjQ4LCAxMjEsIDIyMCwgNjYsIDE0MiwgMjM2LCAyMCwgMTQyLCAyNDMsIDE5OSwgNzksIDE3OCwgNSwgCisgICAgMjU1LCAzMSwgMjUyLCAzNSwgMTc4LCA1LCAyNTIsIDM1LCAxNzgsIDUsIDIxNCwgMTMyLCAxNzgsIDEsIDYzLCAxNzgsIDEsIAorICAgIDI1NSwgMTA0LCAxNzgsIDEsIDc1LCAxNzgsIDEsIDIzNiwgMTQ1LCAxNzgsIDEsIDcyLCAxNzgsIDEsIDIxNSwgOTgsIDE3OCwgCisgICAgMSwgMjQ2LCAzMCwgMTc4LCAxLCAyNTQsIDIzNiwgMTc4LCAxLCAyMjcsIDg2LCAxNzgsIDEsIDI1MywgMjM1LCAxNzgsIDEsIAorICAgIDE4MywgMTc4LCAxLCAyMzQsIDI1MCwgMTc4LCAxLCAyNDMsIDIzMCwgMTc4LCAxLCAyNDMsIDg5LCAxNzgsIDEsIDIyOSwgCisgICAgMjI2LCAxNzgsIDEsIDI1MSwgODgsIDE3OCwgMSwgMjUwLCAyMTUsIDE3OCwgMSwgMjM2LCAwLCAxNzgsIDEsIDIzNSwgMjMwLCAKKyAgICAxNzgsIDEsIDIyOCwgNjQsIDE3OCwgMSwgMjE2LCAxMjgsIDE3OCwgMSwgMjE2LCAxMTYsIDE3OCwgMSwgMjQ4LCAyMDcsIAorICAgIDE3OCwgMSwgMjQ4LCAxOTEsIDE3OCwgMSwgMjI5LCA2LCAxNzgsIDEsIDIxOCwgNjYsIDE3OCwgMSwgMjE3LCAxNzQsIDE3OCwgCisgICAgMSwgMjQ5LCAzMCwgMTc4LCAxLCAyNDgsIDk3LCAxNzgsIDEsIDIwNywgMTc4LCAxLCAxOTUsIDE3OCwgMSwgMjI2LCA1OSwgCisgICAgMTc4LCAxLCAyNTIsIDIzNCwgMTc4LCAxLCAyNTIsIDY1LCAxNzgsIDEsIDE5MSwgMTc4LCAxLCAxODksIDE3OCwgMSwgMjA4LCAKKyAgICAxNzgsIDEsIDIzMywgMjU1LCAxNzgsIDEsIDIzMywgNTQsIDE3OCwgMSwgMjE1LCA4LCAxNzgsIDEsIDIyMSwgNDcsIDE3OCwgCisgICAgMSwgMjIyLCAyMjcsIDE3OCwgMSwgMTYyLCAxNzgsIDUsIDIyOCwgMTAzLCAxNzgsIDMwLCA1LCAyNTUsIDEwNCwgMTc4LCAKKyAgICAzMCwgNSwgNzUsIDE3OCwgMzAsIDUsIDIzNiwgMTQ1LCAxNzgsIDMwLCA1LCA3MiwgMTc4LCAzMCwgNSwgMjE1LCA5OCwgCisgICAgMTc4LCAzMCwgNSwgMjQ2LCAzMCwgMTc4LCAzMCwgNSwgMjU0LCAyMzYsIDE3OCwgMzAsIDUsIDIyNywgODYsIDE3OCwgMzAsIAorICAgIDUsIDI1MywgMjM1LCAxNzgsIDUsIDIxNCwgMTM3LCAxNzgsIDUsIDIxNSwgMTkzLCAxNzgsIDEsIDIzNCwgMjMzLCAxNzgsIAorICAgIDEsIDI0MywgNjYsIDE3OCwgMSwgMjEyLCAxMDksIDE3OCwgMSwgMjIzLCAxMTUsIDE3OCwgMSwgMjQ1LCAyOSwgMTc4LCAyMSwgCisgICAgMjEyLCA3OSwgMTc4LCAyMSwgMTE4LCAxNzgsIDIxLCAxMTIsIDE3OCwgMjEsIDE3MCwgMTc4LCAyMSwgMTY3LCAxNzgsIDIxLCAKKyAgICAxODUsIDE3OCwgMjEsIDE5MiwgMTc4LCAyMSwgMjAwLCAxNzgsIDIxLCAxOTgsIDE3OCwgMjEsIDIwMywgMTc4LCAyMTcsIAorICAgIDQxLCAxNzgsIDI1NSwgMzAsIDE3OCwgMjM2LCAzNywgMTc4LCAyMTUsIDEyMywgMTc4LCAyNDYsIDMsIDIyNywgOTEsIDE3OCwgCisgICAgNSwgMjEzLCA2OSwgMTY4LCA1LCAyNTEsIDU1LCAxNjgsIDUsIDI1NCwgMTEzLCAxNjgsIDUsIDIxNCwgMTMyLCAxNjgsIDEsIAorICAgIDYzLCAxNjgsIDEsIDI1NSwgMTA0LCAxNjgsIDEsIDc1LCAxNjgsIDEsIDIzNiwgMTQ1LCAxNjgsIDEsIDcyLCAxNjgsIDEsIAorICAgIDIxNSwgOTgsIDE2OCwgMSwgMTY1LCAxNTIsIDE2OCwgMSwgMTY1LCAxNTUsIDE2OCwgMzAsIDI1MSwgNTgsIDc3LCAxNjgsIAorICAgIDEsIDc3LCAxNjgsIDEsIDI1NCwgMjM2LCAxNjgsIDMwLCAyNTEsIDU4LCA3OCwgMTY4LCAxLCA3OCwgMTY4LCAxLCAyNTMsIAorICAgIDIzNSwgMTY4LCAxLCAxODMsIDE2OCwgMSwgMjM0LCAyNTAsIDE2OCwgMSwgMjQzLCAyMzAsIDE2OCwgMSwgMjQzLCA4OSwgCisgICAgMTY4LCAxLCAyMjksIDIyNiwgMTY4LCAxLCAyNTEsIDg4LCAxNjgsIDEsIDI1MCwgMjE1LCAxNjgsIDEsIDIzNiwgMCwgMTY4LCAKKyAgICAxLCAyMzUsIDIzMCwgMTY4LCAxLCAyMjgsIDY0LCAxNjgsIDEsIDIxNiwgMTI4LCAxNjgsIDEsIDIxNiwgMTE2LCAxNjgsIDEsIAorICAgIDI0OCwgMjA3LCAxNjgsIDEsIDI0OCwgMTkxLCAxNjgsIDEsIDIyOSwgNiwgMTY4LCAxLCAyMTgsIDY2LCAxNjgsIDEsIDIxNywgCisgICAgMTc0LCAxNjgsIDEsIDI0OSwgMzAsIDE2OCwgMSwgMjQ4LCA5NywgMTY4LCAxLCAyMDcsIDE2OCwgMSwgMTk1LCAxNjgsIDEsIAorICAgIDIyNiwgNTksIDE2OCwgMSwgMjUyLCAyMzQsIDE2OCwgMSwgMjUyLCA2NSwgMTY4LCAxLCAxOTEsIDE2OCwgMSwgMTg5LCAKKyAgICAxNjgsIDEsIDIwOCwgMTY4LCAxLCAyMzMsIDI1NSwgMTY4LCAxLCAyMzMsIDU0LCAxNjgsIDEsIDIxNSwgOCwgMTY4LCAxLCAKKyAgICAyMjEsIDQ3LCAxNjgsIDEsIDIxOSwgMTc2LCAxNjgsIDEsIDIyMiwgMjI3LCAxNjgsIDEsIDE2MiwgMTY4LCA1LCAyMjgsIAorICAgIDEwMywgMTY4LCA1LCAyNTMsIDIxOCwgMTY4LCAzMCwgNSwgMjU1LCAxMDQsIDE2OCwgMzAsIDUsIDc1LCAxNjgsIDMwLCA1LCAKKyAgICAyMzYsIDE0NSwgMTY4LCAzMCwgNSwgNzIsIDE2OCwgMzAsIDUsIDIxNSwgOTgsIDE2OCwgMzAsIDUsIDE2NSwgMTUyLCAxNjgsIAorICAgIDMwLCA1LCAxNjUsIDIyMywgMTE2LCAxNjgsIDMwLCA1LCAyNTEsIDU4LCA3NywgMTY4LCAzMCwgNSwgNzcsIDE2OCwgMzAsIAorICAgIDUsIDI1NCwgMjM2LCAxNjgsIDMwLCA1LCAyNTEsIDU4LCA3OCwgMTY4LCAzMCwgNSwgNzgsIDE2OCwgMzAsIDUsIDI1MywgCisgICAgMjM1LCAxNjgsIDUsIDIxNCwgMTM3LCAxNjgsIDIyNywgMTA3LCAxNjgsIDEsIDE2NSwgMjIzLCAxMTYsIDE2OCwgMSwgMTY1LCAKKyAgICAyMzMsIDU1LCAxNjgsIDMwLCA1LCAxNjUsIDE1NSwgMTY4LCAzMCwgNSwgMTY1LCAyMzMsIDU1LCAxNjgsIDIxLCAyMTIsIAorICAgIDc5LCAxNjgsIDIxLCAxMTgsIDE2OCwgMjEsIDExMiwgMTY4LCAyMSwgMTcwLCAxNjgsIDIxLCAxNjcsIDE2OCwgMjEsIDE4NSwgCisgICAgMTY4LCAyMSwgMTkyLCAxNjgsIDIxLCAyMDAsIDE2OCwgMjEsIDE5OCwgMTY4LCAyMSwgMjAzLCAxNjgsIDIyMywgNTUsIDUzLCAKKyAgICAxNTEsIDUsIDI1MSwgNTUsIDE1MSwgNSwgMjU0LCAxMTMsIDE1MSwgNSwgMjE0LCAxMzIsIDE1MSwgMSwgNjMsIDE1MSwgMSwgCisgICAgMjU1LCAxMDQsIDE1MSwgMSwgNzUsIDE1MSwgMSwgMjM2LCAxNDUsIDE1MSwgMSwgNzIsIDE1MSwgMSwgMjE1LCA5OCwgMTUxLCAKKyAgICAxLCAxNjUsIDE1MiwgMTUxLCAxLCAxNjUsIDE1NSwgMTUxLCAxLCA3NywgMTUxLCAxLCAyNTQsIDIzNiwgMTUxLCAxLCA3OCwgCisgICAgMTUxLCAxLCAyNTMsIDIzNSwgMTUxLCAxLCAxODMsIDE1MSwgMSwgMjM0LCAyNTAsIDE1MSwgMSwgMjQzLCAyMzAsIDE1MSwgCisgICAgMSwgMjQzLCA4OSwgMTUxLCAxLCAyMjksIDIyNiwgMTUxLCAxLCAyNTEsIDg4LCAxNTEsIDEsIDI1MCwgMjE1LCAxNTEsIDEsIAorICAgIDIzNiwgMCwgMTUxLCAxLCAyMzUsIDIzMCwgMTUxLCAxLCAyMjgsIDY0LCAxNTEsIDEsIDIxNiwgMTI4LCAxNTEsIDEsIDIxNiwgCisgICAgMTE2LCAxNTEsIDEsIDI0OCwgMjA3LCAxNTEsIDEsIDI0OCwgMTkxLCAxNTEsIDEsIDIyOSwgNiwgMTUxLCAxLCAyMTgsIDY2LCAKKyAgICAxNTEsIDEsIDIxNywgMTc0LCAxNTEsIDEsIDI0OSwgMzAsIDE1MSwgMSwgMjQ4LCA5NywgMTUxLCAxLCAyMDcsIDE1MSwgMSwgCisgICAgMTk1LCAxNTEsIDEsIDIyNiwgNTksIDE1MSwgMSwgMjUyLCAyMzQsIDE1MSwgMSwgMjUyLCA2NSwgMTUxLCAxLCAxOTEsIAorICAgIDE1MSwgMSwgMTg5LCAxNTEsIDEsIDIwOCwgMTUxLCAxLCAyMzMsIDI1NSwgMTUxLCAxLCAyMzMsIDU0LCAxNTEsIDEsIDIxNSwgCisgICAgOCwgMTUxLCAxLCAyMjEsIDQ3LCAxNTEsIDEsIDIxOSwgMTc2LCAxNTEsIDEsIDIyMiwgMjI3LCAxNTEsIDEsIDE2MiwgMTUxLCAKKyAgICA1LCAyMjgsIDEwMywgMTUxLCA1LCAyNTMsIDIxOCwgMTUxLCAzMCwgNSwgMjU1LCAxMDQsIDE1MSwgMzAsIDUsIDc1LCAxNTEsIAorICAgIDMwLCA1LCAyMzYsIDE0NSwgMTUxLCAzMCwgNSwgNzIsIDE1MSwgMzAsIDUsIDIxNSwgOTgsIDE1MSwgMzAsIDUsIDE2NSwgCisgICAgMTUyLCAxNTEsIDMwLCA1LCAxNjUsIDIyMywgMTE2LCAxNTEsIDMwLCA1LCA3NywgMTUxLCAzMCwgNSwgMjU0LCAyMzYsIAorICAgIDE1MSwgMzAsIDUsIDc4LCAxNTEsIDMwLCA1LCAyNTMsIDIzNSwgMTUxLCA1LCAyMTQsIDEzNywgMTUxLCAyNTQsIDIzNywgCisgICAgMjMzLCAxNDUsIDc5LCAxNTEsIDI1MywgMjM2LCAyMzMsIDE0NSwgNzksIDE1MSwgMSwgMjIzLCAxMTUsIDE1MSwgMSwgMjIzLCAKKyAgICAyMjYsIDE1MSwgMSwgMjEyLCAxNjAsIDE1MSwgMSwgMTY1LCAyMjMsIDExNiwgMTUxLCAxLCAxNjUsIDIzMywgNTUsIDE1MSwgCisgICAgMzAsIDUsIDE2NSwgMTU1LCAxNTEsIDMwLCA1LCAxNjUsIDIzMywgNTUsIDE1MSwgMjEsIDIxMiwgNzksIDE1MSwgMjEsIAorICAgIDExOCwgMTUxLCAyMSwgMTEyLCAxNTEsIDIxLCAxNzAsIDE1MSwgMjEsIDE2NywgMTUxLCAyMSwgMTg1LCAxNTEsIDIxLCAKKyAgICAxOTIsIDE1MSwgMjEsIDIwMCwgMTUxLCAyMSwgMTk4LCAxNTEsIDIxLCAyMDMsIDE1MSwgMjM2LCAyMCwgMTUxLCAxLCAyMTQsIAorICAgIDUyLCAxNTEsIDI0NCwgOTIsIDEyNCwgMjI0LCAyMDEsIDE1MSwgMjQ0LCA5MiwgMTI0LCAyNDIsIDEyOSwgMTUxLCAyNDQsIAorICAgIDkyLCAxMzcsIDIyNCwgMTk5LCAxNTEsIDI0NCwgOTIsIDEyNCwgMjIwLCA2NCwgMTUxLCAyNDQsIDkyLCAxMjQsIDI0NiwgCisgICAgMTAsIDE1MSwgMjQ0LCA5MiwgMTM3LCAyMjAsIDYzLCAzNiwgNSwgMjU0LCAxMTMsIDM2LCA1LCAyMTQsIDEzMiwgMzYsIDEsIAorICAgIDYzLCAzNiwgMSwgMjU1LCAxMDQsIDM2LCAxLCA3NSwgMzYsIDEsIDIzNiwgMTQ1LCAzNiwgMSwgNzIsIDM2LCAxLCAyMTUsIAorICAgIDk4LCAzNiwgMSwgNzcsIDM2LCAxLCAyNDYsIDMwLCAzNiwgMSwgMjU0LCAyMzYsIDM2LCAxLCA3OCwgMzYsIDEsIDIyNywgCisgICAgODYsIDM2LCAxLCAyNTMsIDIzNSwgMzYsIDEsIDE4MywgMzYsIDEsIDIyOSwgMjI2LCAzNiwgMSwgMjUxLCA4OCwgMzYsIDEsIAorICAgIDIzNiwgMCwgMzYsIDEsIDIyOCwgNjQsIDM2LCAxLCAyMTYsIDEyOCwgMzYsIDEsIDIyOSwgNiwgMzYsIDEsIDIxOCwgNjYsIAorICAgIDM2LCAxLCAyMDcsIDM2LCAxLCAyMjgsIDI0NiwgMzYsIDEsIDE5NSwgMzYsIDEsIDE5MSwgMzYsIDEsIDE4OSwgMzYsIDEsIAorICAgIDIwOCwgMzYsIDEsIDIyMywgMTE1LCAzNiwgMSwgMjMzLCAyNTUsIDM2LCAxLCAyMzMsIDU0LCAzNiwgMSwgMjMzLCA0NSwgCisgICAgMzYsIDEsIDIxNSwgOCwgMzYsIDEsIDIyMSwgNDcsIDM2LCAxLCAyMTksIDE3NiwgMzYsIDEsIDIyMiwgMjI3LCAzNiwgMSwgCisgICAgMTYyLCAzNiwgMzAsIDUsIDI1NSwgMTA0LCAzNiwgMzAsIDUsIDc1LCAzNiwgMzAsIDUsIDIzNiwgMTQ1LCAzNiwgMzAsIDUsIAorICAgIDcyLCAzNiwgMzAsIDUsIDIxNSwgOTgsIDM2LCAzMCwgNSwgNzcsIDM2LCAzMCwgNSwgMjQ2LCAzMCwgMzYsIDMwLCA1LCAKKyAgICAyNTQsIDIzNiwgMzYsIDMwLCA1LCA3OCwgMzYsIDMwLCA1LCAyMjcsIDg2LCAzNiwgMzAsIDUsIDI1MywgMjM1LCAzNiwgNSwgCisgICAgMjE0LCAxMzcsIDM2LCAyMjcsIDEwNywgMzYsIDI1MywgMjM2LCAyMzMsIDE0NSwgNzksIDM2LCAyMSwgMjEyLCA3OSwgMzYsIAorICAgIDIxLCAxMTgsIDM2LCAyMSwgMTEyLCAzNiwgMjEsIDE3MCwgMzYsIDIxLCAxNjcsIDM2LCAyMSwgMTg1LCAzNiwgMjEsIDE5MiwgCisgICAgMzYsIDIxLCAyMDAsIDM2LCAyMSwgMTk4LCAzNiwgMjEsIDIwMywgMzYsIDUxLCAyMTcsIDIxMywgMzYsIDUxLCAxMjQsIAorICAgIDI0MSwgNjIsIDM2LCA1MSwgMTI0LCAyMTcsIDExMywgMzYsIDI0OCwgMjEzLCA1MywgMzYsIDIzMSwgMTksIDUzLCAzNiwgCisgICAgMjEzLCAzNywgNTMsIDM2LCAyNDgsIDE1OSwgNTMsIDM2LCAyNDksIDIwMiwgNTMsIDM2LCAyNTQsIDI0LCA3NCwgNTMsIDM2LCAKKyAgICAyMjMsIDU1LCA1MywgMzYsIDUxLCA1MywgMTQ1LCA1LCAyNTEsIDU1LCAxNDUsIDUsIDI1NCwgMTEzLCAxNDUsIDUsIDIxNCwgCisgICAgMTMyLCAxNDUsIDEsIDYzLCAxNDUsIDEsIDI1NSwgMTA0LCAxNDUsIDEsIDc1LCAxNDUsIDEsIDIzNiwgMTQ1LCAxNDUsIDEsIAorICAgIDcyLCAxNDUsIDEsIDIxNSwgOTgsIDE0NSwgMSwgMTY1LCAxNTIsIDE0NSwgMSwgMTY1LCAxNTUsIDE0NSwgMSwgNzcsIDE0NSwgCisgICAgMSwgMjQ2LCAzMCwgMTQ1LCAxLCAyNTQsIDIzNiwgMTQ1LCAxLCA3OCwgMTQ1LCAxLCAyMjcsIDg2LCAxNDUsIDEsIDI1MywgCisgICAgMjM1LCAxNDUsIDEsIDE4MywgMTQ1LCAxLCAyMzQsIDI1MCwgMTQ1LCAxLCAyNDMsIDIzMCwgMTQ1LCAxLCAyNDMsIDg5LCAKKyAgICAxNDUsIDEsIDIyOSwgMjI2LCAxNDUsIDEsIDI1MSwgODgsIDE0NSwgMSwgMjUwLCAyMTUsIDE0NSwgMSwgMjM2LCAwLCAxNDUsIAorICAgIDEsIDIzNSwgMjMwLCAxNDUsIDEsIDIyOCwgNjQsIDE0NSwgMSwgMjE2LCAxMjgsIDE0NSwgMSwgMjE2LCAxMTYsIDE0NSwgMSwgCisgICAgMjQ4LCAyMDcsIDE0NSwgMSwgMjQ4LCAxOTEsIDE0NSwgMSwgMjI5LCA2LCAxNDUsIDEsIDIxOCwgNjYsIDE0NSwgMSwgMjE3LCAKKyAgICAxNzQsIDE0NSwgMSwgMjQ5LCAzMCwgMTQ1LCAxLCAyNDgsIDk3LCAxNDUsIDEsIDIwNywgMTQ1LCAxLCAxOTUsIDE0NSwgMSwgCisgICAgMjI2LCA1OSwgMTQ1LCAxLCAyNTIsIDIzNCwgMTQ1LCAxLCAyNTIsIDY1LCAxNDUsIDEsIDE5MSwgMTQ1LCAxLCAxODksIAorICAgIDE0NSwgMSwgMjA4LCAxNDUsIDEsIDIyMywgMTE1LCAxNDUsIDEsIDIzMywgMjU1LCAxNDUsIDEsIDIzMywgNTQsIDE0NSwgMSwgCisgICAgMjE1LCA4LCAxNDUsIDEsIDIyMSwgNDcsIDE0NSwgMSwgMjE5LCAxNzYsIDE0NSwgMSwgMjIyLCAyMjcsIDE0NSwgMSwgMTYyLCAKKyAgICAxNDUsIDUsIDI1MywgMjE4LCAxNDUsIDMwLCA1LCAyNTUsIDEwNCwgMTQ1LCAzMCwgNSwgNzUsIDE0NSwgMzAsIDUsIDIzNiwgCisgICAgMTQ1LCAxNDUsIDMwLCA1LCA3MiwgMTQ1LCAzMCwgNSwgMjE1LCA5OCwgMTQ1LCAzMCwgNSwgMTY1LCAxNTIsIDE0NSwgMzAsIAorICAgIDUsIDE2NSwgMjIzLCAxMTYsIDE0NSwgMzAsIDUsIDc3LCAxNDUsIDMwLCA1LCAyNDYsIDMwLCAxNDUsIDMwLCA1LCAyNTQsIAorICAgIDIzNiwgMTQ1LCAzMCwgNSwgNzgsIDE0NSwgMzAsIDUsIDIyNywgODYsIDE0NSwgMzAsIDUsIDI1MywgMjM1LCAxNDUsIDUsIAorICAgIDIxNCwgMTM3LCAxNDUsIDIzMywgMTQ1LCA3OSwgMTQ1LCAyNTQsIDIzNywgMjMzLCAxNDUsIDc5LCAxNDUsIDEsIDIxNiwgCisgICAgMTU0LCAxNDUsIDEsIDI0NiwgMTE0LCAxNDUsIDEsIDE2NSwgMjIzLCAxMTYsIDE0NSwgMSwgMTY1LCAyMzMsIDU1LCAxNDUsIAorICAgIDMwLCA1LCAxNjUsIDE1NSwgMTQ1LCAzMCwgNSwgMTY1LCAyMzMsIDU1LCAxNDUsIDIxLCAyMTIsIDc5LCAxNDUsIDIxLCAKKyAgICAxMTgsIDE0NSwgMjEsIDExMiwgMTQ1LCAyMSwgMTcwLCAxNDUsIDIxLCAxNjcsIDE0NSwgMjEsIDE4NSwgMTQ1LCAyMSwgCisgICAgMTkyLCAxNDUsIDIxLCAyMDAsIDE0NSwgMjEsIDE5OCwgMTQ1LCAyMSwgMjAzLCAxNDUsIDI0NCwgOTIsIDIxLCAyMTIsIDgwLCAKKyAgICAzMSwgMjI3LCAxMzksIDIyNSwgMTM5LCA2OCwgMTY3LCAxNDUsIDI0NCwgOTIsIDIxLCAxMjQsIDMxLCAyMjcsIDEzOSwgCisgICAgMjI1LCAxMzksIDY4LCAxNjcsIDE0NSwgMjQ0LCA5MiwgMjEsIDExOSwgMzEsIDIyNywgMTM5LCAyMjUsIDEzOSwgNjgsIAorICAgIDE2NywgMTQ1LCAyNDQsIDkyLCAyMSwgMTM3LCAzMSwgMjI3LCAxMzksIDIyNSwgMTM5LCA2OCwgMTY3LCAxNDUsIDI0NCwgCisgICAgOTIsIDIxLCAxMjQsIDMxLCAyNDUsIDEzMCwgMjI1LCAxMzksIDY4LCAxNjcsIDE0NSwgMjQ0LCA5MiwgMjEsIDExOSwgMzEsIAorICAgIDI0NSwgMTMwLCAyMjUsIDEzOSwgNjgsIDE2NywgMTQ1LCAyNDQsIDkyLCAyMSwgMTM3LCAzMSwgMjQ1LCAxMzAsIDIyNSwgCisgICAgMTM5LCA2OCwgMTY3LCAxNDUsIDUsIDIxNiwgNTYsIDE1OCwgNSwgMjU0LCAxMTMsIDE1OCwgNSwgMjE0LCAxMzIsIDE1OCwgCisgICAgMSwgNjMsIDE1OCwgMSwgMjU1LCAxMDQsIDE1OCwgMSwgNzUsIDE1OCwgMSwgMjM2LCAxNDUsIDE1OCwgMSwgNzIsIDE1OCwgCisgICAgMSwgMjE1LCA5OCwgMTU4LCAxLCAxNjUsIDE1MiwgMTU4LCAxLCAxNjUsIDE1NSwgMTU4LCAxLCA3NywgMTU4LCAxLCAyNDYsIAorICAgIDMwLCAxNTgsIDEsIDI1NCwgMjM2LCAxNTgsIDEsIDc4LCAxNTgsIDEsIDIyNywgODYsIDE1OCwgMSwgMjUzLCAyMzUsIDE1OCwgCisgICAgMSwgMTgzLCAxNTgsIDEsIDIzNCwgMjUwLCAxNTgsIDEsIDI0MywgMjMwLCAxNTgsIDEsIDI0MywgODksIDE1OCwgMSwgMjI5LCAKKyAgICAyMjYsIDE1OCwgMSwgMjUxLCA4OCwgMTU4LCAxLCAyNTAsIDIxNSwgMTU4LCAxLCAyMzYsIDAsIDE1OCwgMSwgMjM1LCAyMzAsIAorICAgIDE1OCwgMSwgMjI4LCA2NCwgMTU4LCAxLCAyMTYsIDEyOCwgMTU4LCAxLCAyMTYsIDExNiwgMTU4LCAxLCAyNDgsIDIwNywgCisgICAgMTU4LCAxLCAyNDgsIDE5MSwgMTU4LCAxLCAyMjksIDYsIDE1OCwgMSwgMjE4LCA2NiwgMTU4LCAxLCAyMTcsIDE3NCwgMTU4LCAKKyAgICAxLCAyNDksIDMwLCAxNTgsIDEsIDI0OCwgOTcsIDE1OCwgMSwgMjA3LCAxNTgsIDEsIDE5NSwgMTU4LCAxLCAyMjYsIDU5LCAKKyAgICAxNTgsIDEsIDI1MiwgMjM0LCAxNTgsIDEsIDI1MiwgNjUsIDE1OCwgMSwgMTkxLCAxNTgsIDEsIDE4OSwgMTU4LCAxLCAyMDgsIAorICAgIDE1OCwgMSwgMjIzLCAxMTUsIDE1OCwgMSwgMjMzLCAyNTUsIDE1OCwgMSwgMjMzLCA1NCwgMTU4LCAxLCAyMTUsIDgsIDE1OCwgCisgICAgMSwgMjIxLCA0NywgMTU4LCAxLCAyMTksIDE3NiwgMTU4LCAxLCAyMjIsIDIyNywgMTU4LCAxLCAxNjIsIDE1OCwgNSwgMjI4LCAKKyAgICAxMDMsIDE1OCwgNSwgMjUzLCAyMTgsIDE1OCwgMzAsIDUsIDI1NSwgMTA0LCAxNTgsIDMwLCA1LCA3NSwgMTU4LCAzMCwgNSwgCisgICAgMjM2LCAxNDUsIDE1OCwgMzAsIDUsIDcyLCAxNTgsIDMwLCA1LCAyMTUsIDk4LCAxNTgsIDMwLCA1LCAxNjUsIDE1MiwgMTU4LCAKKyAgICAzMCwgNSwgMTY1LCAyMjMsIDExNiwgMTU4LCAzMCwgNSwgNzcsIDE1OCwgMzAsIDUsIDI0NiwgMzAsIDE1OCwgMzAsIDUsIAorICAgIDI1NCwgMjM2LCAxNTgsIDMwLCA1LCA3OCwgMTU4LCAzMCwgNSwgMjI3LCA4NiwgMTU4LCAzMCwgNSwgMjUzLCAyMzUsIDE1OCwgCisgICAgNSwgMjE0LCAxMzcsIDE1OCwgMjMzLCAxNDUsIDc5LCAxNTgsIDI1NCwgMjM3LCAyMzMsIDE0NSwgNzksIDE1OCwgMSwgMjQ1LCAKKyAgICAyOSwgMTU4LCAxLCAxNjUsIDIyMywgMTE2LCAxNTgsIDEsIDE2NSwgMjMzLCA1NSwgMTU4LCAzMCwgNSwgMTY1LCAxNTUsIAorICAgIDE1OCwgMzAsIDUsIDE2NSwgMjMzLCA1NSwgMTU4LCAyMSwgMjEyLCA3OSwgMTU4LCAyMSwgMTE4LCAxNTgsIDIxLCAxMTIsIAorICAgIDE1OCwgMjEsIDE3MCwgMTU4LCAyMSwgMTY3LCAxNTgsIDIxLCAxODUsIDE1OCwgMjEsIDE5MiwgMTU4LCAyMSwgMjAwLCAKKyAgICAxNTgsIDIxLCAxOTgsIDE1OCwgMjEsIDIwMywgMTU4LCA1LCAyMzUsIDIxOSwgMTU4LCA1LCAyMTUsIDEzOCwgMTMyLCA1LCAKKyAgICAyNTQsIDExMywgMTMyLCA1LCAyMTQsIDEzMiwgMTMyLCAxLCA2MywgMTMyLCAxLCAyNTUsIDEwNCwgMTMyLCAxLCA3NSwgCisgICAgMTMyLCAxLCAyMzYsIDE0NSwgMTMyLCAxLCA3MiwgMTMyLCAxLCAyMTUsIDk4LCAxMzIsIDEsIDE2NSwgMTUyLCAxMzIsIDEsIAorICAgIDE2NSwgMTU1LCAxMzIsIDEsIDc3LCAxMzIsIDEsIDI0NiwgMzAsIDEzMiwgMSwgMjU0LCAyMzYsIDEzMiwgMSwgNzgsIDEzMiwgCisgICAgMSwgMjI3LCA4NiwgMTMyLCAxLCAyNTMsIDIzNSwgMTMyLCAxLCAxODMsIDEzMiwgMSwgMjM0LCAyNTAsIDEzMiwgMSwgMjQzLCAKKyAgICAyMzAsIDEzMiwgMSwgMjQzLCA4OSwgMTMyLCAxLCAyMjksIDIyNiwgMTMyLCAxLCAyNTEsIDg4LCAxMzIsIDEsIDI1MCwgCisgICAgMjE1LCAxMzIsIDEsIDIzNiwgMCwgMTMyLCAxLCAyMzUsIDIzMCwgMTMyLCAxLCAyMjgsIDY0LCAxMzIsIDEsIDIxNiwgMTI4LCAKKyAgICAxMzIsIDEsIDIxNiwgMTE2LCAxMzIsIDEsIDI0OCwgMjA3LCAxMzIsIDEsIDI0OCwgMTkxLCAxMzIsIDEsIDIyOSwgNiwgCisgICAgMTMyLCAxLCAyMTgsIDY2LCAxMzIsIDEsIDIxNywgMTc0LCAxMzIsIDEsIDI0OSwgMzAsIDEzMiwgMSwgMjQ4LCA5NywgMTMyLCAKKyAgICAxLCAyMDcsIDEzMiwgMSwgMjI4LCAyNDYsIDEzMiwgMSwgMTk1LCAxMzIsIDEsIDIyNiwgNTksIDEzMiwgMSwgMjUyLCAyMzQsIAorICAgIDEzMiwgMSwgMjUyLCA2NSwgMTMyLCAxLCAxOTEsIDEzMiwgMSwgMTg5LCAxMzIsIDEsIDIwOCwgMTMyLCAxLCAyMjMsIDExNSwgCisgICAgMTMyLCAxLCAyMzMsIDI1NSwgMTMyLCAxLCAyMzMsIDU0LCAxMzIsIDEsIDIzMywgNDUsIDEzMiwgMSwgMjE1LCA4LCAxMzIsIAorICAgIDEsIDIyMSwgNDcsIDEzMiwgMSwgMjE5LCAxNzYsIDEzMiwgMSwgMjIyLCAyMjcsIDEzMiwgMSwgMTYyLCAxMzIsIDEsIDIxNiwgCisgICAgOTcsIDEzMiwgNSwgMjUzLCAyMTgsIDEzMiwgMzAsIDUsIDI1NSwgMTA0LCAxMzIsIDMwLCA1LCA3NSwgMTMyLCAzMCwgNSwgCisgICAgMjM2LCAxNDUsIDEzMiwgMzAsIDUsIDcyLCAxMzIsIDMwLCA1LCAyMTUsIDk4LCAxMzIsIDMwLCA1LCAxNjUsIDE1MiwgMTMyLCAKKyAgICAzMCwgNSwgMTY1LCAyMjMsIDExNiwgMTMyLCAzMCwgNSwgNzcsIDEzMiwgMzAsIDUsIDI0NiwgMzAsIDEzMiwgMzAsIDUsIAorICAgIDI1NCwgMjM2LCAxMzIsIDMwLCA1LCA3OCwgMTMyLCAzMCwgNSwgMjI3LCA4NiwgMTMyLCAzMCwgNSwgMjUzLCAyMzUsIDEzMiwgCisgICAgNSwgMjE0LCAxMzcsIDEzMiwgMSwgNjIsIDIyNCwgMywgMTMyLCAyNTMsIDIzNiwgMjMzLCAxNDUsIDc5LCAxMzIsIDEsIAorICAgIDE2NSwgMjIzLCAxMTYsIDEzMiwgMSwgMTY1LCAyMzMsIDU1LCAxMzIsIDMwLCA1LCAxNjUsIDE1NSwgMTMyLCAzMCwgNSwgCisgICAgMTY1LCAyMzMsIDU1LCAxMzIsIDIxLCAyMTIsIDc5LCAxMzIsIDIxLCAxMTgsIDEzMiwgMjEsIDExMiwgMTMyLCAyMSwgMTcwLCAKKyAgICAxMzIsIDIxLCAxNjcsIDEzMiwgMjEsIDE4NSwgMTMyLCAyMSwgMTkyLCAxMzIsIDIxLCAyMDAsIDEzMiwgMjEsIDE5OCwgCisgICAgMTMyLCAyMSwgMjAzLCAxMzIsIDUxLCAyMTcsIDIxMywgMTMyLCA1MSwgMTI0LCAyNDEsIDYyLCAxMzIsIDUxLCAxMjQsIAorICAgIDIxNywgMTEzLCAxMzIsIDI0NCwgOTIsIDEyNCwgMjI0LCAyMDEsIDEzMiwgMjQ0LCA5MiwgMTI0LCAyNDIsIDEyOSwgMTMyLCAKKyAgICAyNDQsIDkyLCAxMzcsIDIyNCwgMTk5LCAxMzIsIDI0OCwgMjE3LCA3OSwgMTMyLCAxLCAyNTAsIDE1OSwgMjI5LCA3LCAxMzIsIAorICAgIDEsIDI1MCwgMTU5LCAyMDYsIDEzMiwgMSwgMjUwLCAxNTksIDIyMywgMTE2LCAxMzIsIDEsIDI1MCwgMTU5LCAxNTUsIDEzMiwgCisgICAgMSwgMjUwLCAxNTksIDIzMywgNTUsIDEzMiwgMSwgMjUwLCAxNTksIDIzNSwgMTQxLCAxNzYsIDUsIDI1NCwgMTEyLCAxNzYsIAorICAgIDUsIDIxNCwgMTMxLCAxNzYsIDEsIDI1MywgMjA4LCAxNzYsIDEsIDI1NSwgNTksIDE3NiwgMSwgMjU1LCAwLCAxNzYsIDEsIAorICAgIDI1NSwgMTUsIDE3NiwgMSwgMjM2LCAxMCwgMTc2LCAxLCAyMzYsIDE0NCwgMTc2LCAxLCAyMTUsIDkwLCAxNzYsIDEsIDIxNSwgCisgICAgOTIsIDE3NiwgMSwgMjM2LCAzMiwgMTc2LCAxLCAyMzYsIDMzLCAxNzYsIDEsIDIzNiwgMTMwLCAxNzYsIDEsIDIzNiwgMTMyLCAKKyAgICAxNzYsIDEsIDI0NSwgMTA2LCAxNzYsIDEsIDI0NiwgMjYsIDE3NiwgMSwgMjU0LCAyMjMsIDE3NiwgMSwgMjI3LCAxNCwgCisgICAgMTc2LCAxLCAyMjcsIDgwLCAxNzYsIDEsIDI1MywgMjIxLCAxNzYsIDEsIDI1NCwgMTgyLCAyMzUsIDQ5LCAxNzYsIDEsIAorICAgIDIzMiwgODcsIDIzNSwgNDksIDE3NiwgMSwgMjU0LCAxODIsIDI0MywgMTc4LCAxNzYsIDEsIDIzMiwgODcsIDI0MywgMTc4LCAKKyAgICAxNzYsIDEsIDIzNSwgOTEsIDIzMCwgMTA5LCAxNzYsIDEsIDIyMiwgMTc2LCAyNDMsIDE3OCwgMTc2LCAxLCAyNTQsIDE4MiwgCisgICAgMjUxLCAxNiwgMTc2LCAxLCAyMzIsIDg3LCAyNTEsIDE2LCAxNzYsIDEsIDI1NCwgMTgyLCAyMzUsIDI0MywgMTc2LCAxLCAKKyAgICAyMzIsIDg3LCAyMzUsIDI0MywgMTc2LCAxLCAyMTgsIDYwLCAyMzAsIDEwOSwgMTc2LCAxLCAyMTgsIDYwLCAyMjIsIDE3NSwgCisgICAgMjMwLCAxMTAsIDE3NiwgMSwgMjIyLCAxNzYsIDIzNSwgMjQzLCAxNzYsIDEsIDI1NCwgMTgyLCAyMTYsIDEyNCwgMTc2LCAxLCAKKyAgICAyMzIsIDg3LCAyMTYsIDEyNCwgMTc2LCAxLCAyNTQsIDE4MiwgMjQ4LCAxOTgsIDE3NiwgMSwgMjMyLCA4NywgMjQ4LCAxOTgsIAorICAgIDE3NiwgMSwgMjMwLCAxOTMsIDIzMCwgNjksIDE3NiwgMSwgMjIyLCAxNzYsIDI0OCwgMTk4LCAxNzYsIDEsIDI1NCwgMTgyLCAKKyAgICAyMTcsIDI1MCwgMTc2LCAxLCAyMzIsIDg3LCAyMTcsIDI1MCwgMTc2LCAxLCAyNTQsIDE4MiwgMjQ4LCAyMTEsIDE3NiwgMSwgCisgICAgMjMyLCA4NywgMjQ4LCAyMTEsIDE3NiwgMSwgMjQ4LCAyNDEsIDIzMCwgNjksIDE3NiwgMSwgMjIyLCAxNzYsIDI0OCwgMjExLCAKKyAgICAxNzYsIDEsIDI1NCwgMTgyLCAyMjYsIDEzOCwgMTc2LCAxLCAyMzIsIDg3LCAyMjYsIDEzOCwgMTc2LCAxLCAyNTQsIDE4MiwgCisgICAgMjUyLCAxNTgsIDE3NiwgMSwgMjMyLCA4NywgMjUyLCAxNTgsIDE3NiwgMSwgMjMyLCA5LCAxNzYsIDEsIDI1NCwgMTY3LCAKKyAgICAyNTIsIDE1OCwgMTc2LCAxLCAyMTMsIDQzLCAxNzYsIDEsIDIyNCwgNjAsIDE3NiwgMSwgMjQ4LCAyNDEsIDIzMywgMTg5LCAKKyAgICAxNzYsIDEsIDIxNCwgMjM5LCAxNzYsIDEsIDIxOCwgNjAsIDIyMiwgMTUxLCAxNzYsIDEsIDIzMCwgMTkzLCAyMjIsIDE1MSwgCisgICAgMTc2LCAxLCAyNDgsIDI0MSwgMjIyLCAxNTEsIDE3NiwgMSwgMjQyLCA4OSwgMTc2LCAxLCAyMzAsIDE5MywgMjMzLCAxODksIAorICAgIDE3NiwgMSwgMjQ0LCAyNDUsIDE3NiwgNSwgMjU0LCAyMTIsIDE3NiwgMzAsIDUsIDI1NSwgMTAsIDE3NiwgMzAsIDUsIDIzNSwgCisgICAgMTcsIDI1NSwgMTcsIDE3NiwgMzAsIDUsIDI0OCwgNDUsIDI1NSwgMTcsIDE3NiwgMzAsIDUsIDIzNSwgMTcsIDIzNiwgMjksIAorICAgIDE3NiwgMzAsIDUsIDI0OCwgNDUsIDIzNiwgMjksIDE3NiwgMzAsIDUsIDIzNSwgMTcsIDIyNiwgMjUwLCAxNzYsIDMwLCA1LCAKKyAgICAyNDgsIDQ1LCAyMjYsIDI1MCwgMTc2LCAzMCwgNSwgMjQzLCAyMTksIDE3NiwgMzAsIDUsIDIzNCwgMTM1LCAxNzYsIDMwLCAKKyAgICA1LCAyNDgsIDQ1LCAyMzQsIDEzNSwgMTc2LCAzMCwgNSwgMjM0LCAxMzcsIDI0OCwgMTM5LCAxNzYsIDMwLCA1LCAyMzQsIAorICAgIDEzNiwgMjQyLCAxNDksIDI1NSwgMTAsIDE3NiwgMzAsIDUsIDIzNCwgMTM2LCAyNDIsIDE0OSwgMjQ4LCA0NSwgMjU1LCAxMCwgCisgICAgMTc2LCAzMCwgNSwgMjM0LCAxMzYsIDI0MiwgMTQ5LCAyNDMsIDE3NywgMTc2LCAzMCwgNSwgMjQzLCAxNzcsIDE3NiwgMzAsIAorICAgIDUsIDI0OCwgNDUsIDI0MywgMjE5LCAxNzYsIDMwLCA1LCAyNDgsIDQ1LCAyNDMsIDE3NywgMTc2LCAyMjUsIDYzLCAyMzQsIAorICAgIDcxLCAxNjAsIDE0MywgMjM0LCAxNDksIDIzNSwgMTA4LCAxNjAsIDE0MywgMjM0LCAyMjUsIDIzNCwgMjQ2LCAxNjAsIDE0MywgCisgICAgMjM0LCAyMjUsIDIzNCwgMjE4LCAxNjAsIDE0MywgMjM0LCAyMjUsIDIzNCwgMjE1LCAxNjAsIDE0MywgMjM0LCAyMjUsIAorICAgIDIzNCwgMjIyLCAxNjAsIDE0MywgMjM0LCAyMjUsIDIyNCwgODEsIDE2MCwgMTQzLCAyMjksIDE1NiwgMjI5LCAxNDMsIDE2MCwgCisgICAgMTQzLCAyNTAsIDE0NywgMjUwLCAyMDYsIDE2MCwgMTQzLCAyNTAsIDE0NywgMjUwLCAxNTUsIDE2MCwgMTQzLCAyNTAsIAorICAgIDE0NywgMjUwLCAyMDUsIDE2MCwgMTQzLCAyMjAsIDYsIDIyMCwgNSwgMTYwLCAxNDMsIDI1MCwgMTQ3LCAyNTAsIDE0MywgCisgICAgMTYwLCAxNDMsIDIxMiwgMjM3LCAyMTIsIDI0NCwgMTYwLCAxNDMsIDI0NywgMjIxLCAyNTAsIDIxMiwgMTYwLCAxNDMsIAorICAgIDIxNywgMTAsIDIyNiwgMTQ4LCAxNjAsIDE0MywgMjE3LCAxMjMsIDIxNywgMTY2LCAxNjAsIDE0MywgMjE3LCAxMjMsIDIzMCwgCisgICAgODksIDE2MCwgMTQzLCAyMTcsIDEyMywgMjI2LCAyMywgMTYwLCAxNDMsIDIyOCwgMjI5LCAyMjksIDI0NywgMTYwLCAxNDMsIAorICAgIDI0NywgMjIxLCAyNDgsIDE0MCwgMTYwLCAxNDMsIDIxNywgMTAsIDIxOCwgMTksIDE2MCwgMTQzLCAyMTcsIDEyMywgMjE3LCAKKyAgICA5OCwgMTYwLCAxNDMsIDIxNywgMTIzLCAyMTcsIDE3MCwgMTYwLCAxNDMsIDIxNywgMTIzLCAyMTcsIDEyMCwgMTYwLCAxNDMsIAorICAgIDIyOCwgMjI5LCAyMjgsIDEzNSwgMTYwLCAxNDMsIDI1MSwgMjU0LCAyNTIsIDIxMCwgMTYwLCAxNDMsIDIyNSwgMTg3LCAKKyAgICAyMjUsIDIxMCwgMTYwLCAxNDMsIDIyNiwgMzQsIDIyNiwgMjUsIDE2MCwgMTQzLCAyNDQsIDEzMywgMjQ1LCAyOSwgMTYwLCAKKyAgICAxNDMsIDIyNiwgMzQsIDIyNiwgNTMsIDE2MCwgMTQzLCAyNDQsIDEzMywgMjQ1LCA2LCAxNjAsIDE0MywgMjI2LCAzNCwgCisgICAgMjIyLCAxODYsIDE2MCwgMTQzLCAyMzEsIDQ2LCAxOTEsIDE2MCwgMTQzLCAyMTIsIDIzNywgMjEzLCA3MCwgMTYwLCAxNDMsIAorICAgIDIyMywgMTQ3LCAyMjMsIDc2LCAxNjAsIDE0MywgMjIzLCA3NywgMTYwLCAxNDMsIDIzMywgMjcsIDIzMywgNzYsIDE2MCwgCisgICAgMTQzLCAyMzIsIDIzMCwgMTYwLCAxNDMsIDIxMywgMjE4LCAyMTQsIDQ4LCAxNjAsIDE0MywgMjIwLCA2LCAyMjIsIDIwMSwgCisgICAgMTYwLCAxNDMsIDIyMCwgNiwgMjIzLCA1MSwgMTYwLCAxNDMsIDIyMCwgNiwgMjE5LCA0MCwgMTYwLCAxNDMsIDI0MSwgMTc0LCAKKyAgICAyNDIsIDgsIDE2MCwgMTQzLCAyMzMsIDI3LCAyNTAsIDEyOCwgMTYwLCAxNDMsIDE0MSwgMjU0LCAxNTEsIDE2MCwgMTQzLCAKKyAgICAyNDEsIDE3NCwgMjI4LCAyMjQsIDE2MCwgMTQzLCAyMjYsIDIzMiwgMTYwLCAxNDMsIDIyMiwgMTcwLCA2MywgMTYwLCAxNDMsIAorICAgIDIzMiwgODIsIDI0MiwgMTIwLCAxNjAsIDE0MywgMjIyLCAxNzAsIDI1NSwgMTA0LCAxNjAsIDE0MywgMjIyLCAxNzAsIDI1NCwgCisgICAgMTcyLCAxNjAsIDE0MywgMjIyLCAxNzAsIDc1LCAxNjAsIDE0MywgMjIyLCAxNzAsIDIzNiwgMTQ1LCAxNjAsIDE0MywgMjIyLCAKKyAgICAxNzAsIDIxNSwgMTg5LCAxNjAsIDE0MywgMjIyLCAxNzAsIDIxNSwgMTg3LCAxNjAsIDE0MywgMjIyLCAxNzAsIDcyLCAxNjAsIAorICAgIDE0MywgMjIyLCAxNzAsIDIxNSwgOTgsIDE2MCwgMTQzLCAyMjYsIDM2LCAxNjAsIDI0OSwgMTYyLCAxNiwgMjUyLCAyMTEsIAorICAgIDE2MCwgMTQzLCAyMjIsIDE3MCwgNzcsIDE2MCwgMTQzLCAyMjIsIDE3MCwgMjU1LCAyMCwgMTYwLCAxNDMsIDIyMiwgMTcwLCAKKyAgICA3OCwgMTYwLCAxNDMsIDIyMiwgMTcwLCAyNTQsIDIzNywgMjMyLCA3NiwgMTYwLCAxNDMsIDIyMiwgMTcwLCAyNTQsIDIzNywgCisgICAgMjMyLCA3NywgMTYwLCAxNDMsIDIzMywgMjI4LCAxNjAsIDE0MywgMjMyLCA3MywgMTYwLCAxNDMsIDIzMiwgNzQsIDE2MCwgCisgICAgMTQzLCAyMzIsIDgyLCAyNDYsIDIsIDE2MCwgMTQzLCAyMzIsIDgyLCAyMTcsIDEyMiwgMTYwLCAxNDMsIDIzMiwgODIsIAorICAgIDIxNiwgMTk5LCAxNjAsIDE0MywgMjMyLCA4MiwgMjUwLCAxOTQsIDE2MCwgMTQzLCAyMTcsIDE2NCwgMTYwLCAxNDMsIDIyOSwgCisgICAgMTAwLCAxNjAsIDE0MywgMjEzLCA2NCwgMTYwLCAxNDMsIDI0NCwgMTI0LCAxNjAsIDIxLCAyMTIsIDc5LCAxNjAsIDIxLCAKKyAgICAxMTgsIDE2MCwgMjEsIDExMiwgMTYwLCAyMSwgMTcwLCAxNjAsIDIxLCAxNjcsIDE2MCwgMjEsIDE4NSwgMTYwLCAyMSwgCisgICAgMTkyLCAxNjAsIDIxLCAyMDAsIDE2MCwgMjEsIDE5OCwgMTYwLCAyMSwgMjAzLCAxNjAsIDE0MywgMjU0LCAxNDcsIDE2MCwgCisgICAgMTQzLCAyMzQsIDIyMywgMjAyLCAxLCAyMzQsIDE0OCwgMjAyLCAxLCAyMzQsIDIyNSwgMjE4LCAyNDksIDIwMiwgMSwgMjM0LCAKKyAgICAyMjUsIDIxOCwgMjYsIDIwMiwgMSwgMjI5LCAxNTUsIDIwMiwgMSwgMjUwLCA0MiwgMjAyLCAxLCAyMjAsIDYsIDIxOCwgMjYsIAorICAgIDIwMiwgMSwgMjI4LCAzNSwgMjAyLCAxLCAyNDcsIDIyMCwgMjAyLCAxLCAxMDksIDIwMiwgMSwgMjE3LCAxMjMsIDIxOCwgCisgICAgMjQ5LCAyMDIsIDEsIDIxNywgMTIzLCAyMTgsIDI2LCAyMDIsIDEsIDIyOCwgMjI4LCAyMDIsIDEsIDI1MSwgMjUzLCAyMDIsIAorICAgIDEsIDIyNSwgMTg2LCAyMDIsIDEsIDIyNiwgMzQsIDIxOCwgMjQ5LCAyMDIsIDEsIDI0NCwgMTMzLCAyMTgsIDI2LCAyMDIsIAorICAgIDEsIDIyNiwgMzQsIDIxOCwgMjYsIDIwMiwgMSwgMjQ0LCAxMzMsIDIxOCwgMjQ5LCAyMDIsIDEsIDIzMSwgNDUsIDIwMiwgMSwgCisgICAgMjEyLCAyMzYsIDIwMiwgMSwgMjMzLCAyNywgMjMzLCA3NiwgMjAyLCAxLCAyMzMsIDI3LCAyMzIsIDI1MCwgMjAyLCAxLCAKKyAgICAyMTMsIDIxNywgMjAyLCAxLCAyMjAsIDYsIDIxOCwgMjQ5LCAyMDIsIDEsIDI0MSwgMTc0LCAyMTgsIDI0OSwgMjAyLCAxLCAKKyAgICA3OCwgMjAyLCAxLCAyNDEsIDE3NCwgMjE4LCAyNiwgMjAyLCAyNDUsIDI0MSwgMjAyLCAzMCwgNSwgNjMsIDIwMiwgMzAsIDUsIAorICAgIDIzMiwgODIsIDIzNSwgOTYsIDIwMiwgMzAsIDUsIDI1NSwgMTA0LCAyMDIsIDMwLCA1LCAyNTQsIDE3MiwgMjAyLCAzMCwgNSwgCisgICAgNzUsIDIwMiwgMzAsIDUsIDIzNiwgMTQ1LCAyMDIsIDMwLCA1LCAyMTMsIDEwOCwgMjAyLCAzMCwgNSwgMjEyLCAxNjEsIAorICAgIDIwMiwgMzAsIDUsIDcyLCAyMDIsIDMwLCA1LCAyMTUsIDk4LCAyMDIsIDMwLCA1LCAyMzIsIDgyLCAyMzQsIDEzMywgMjAyLCAKKyAgICAyMjEsIDg4LCA1LCAyMzMsIDI2LCAyMDIsIDIyMSwgODgsIDUsIDIyOCwgMzUsIDIwMiwgMzAsIDUsIDc3LCAyMDIsIDMwLCAKKyAgICA1LCAyNDYsIDE3LCAyMDIsIDMwLCA1LCA3OCwgMjAyLCAzMCwgNSwgMjUzLCAyMTAsIDIwMiwgMzAsIDUsIDI1NCwgMjM2LCAKKyAgICAyMDIsIDIzNCwgMTQ5LCAyMzMsIDI1NSwgMjAyLCAxNjEsIDIzMiwgODIsIDI0NiwgMiwgMjAyLCAxNjEsIDIzMiwgODIsIAorICAgIDIxNywgMTIyLCAyMDIsIDE2MSwgMjMyLCA4MiwgMjE3LCA4NCwgMjAyLCAxNjEsIDIzMiwgODIsIDI1MSwgMjMsIDIwMiwgCisgICAgMjUxLCA2MCwgNzksIDIwMiwgMjI5LCAxMDksIDIwMiwgMjEsIDIxMiwgNzksIDIwMiwgMjEsIDExOCwgMjAyLCAyMSwgMTEyLCAKKyAgICAyMDIsIDIxLCAxNzAsIDIwMiwgMjEsIDE2NywgMjAyLCAyMSwgMTg1LCAyMDIsIDIxLCAxOTIsIDIwMiwgMjEsIDIwMCwgCisgICAgMjAyLCAyMSwgMTk4LCAyMDIsIDIxLCAyMDMsIDIwMiwgMjQxLCAxNzQsIDIyOCwgMjI4LCAyMDIsIDI0MSwgMTc0LCAyMzEsIAorICAgIDQ1LCA2MSwgMywgMjI3LCAxMDcsIDYxLCAxNTYsIDI0MiwgMjE1LCAyMTIsIDI0OCwgMjMxLCAxMjksIDIxNiwgMTYwLCA2MywgCisgICAgNjEsIDE1NiwgMjQyLCAyMTUsIDIxMiwgMjQ4LCAyMzEsIDEyOSwgMjU1LCAxOTAsIDIyMywgMTUxLCAyNTIsIDEyMywgMTkxLCAKKyAgICA2MSwgMTU2LCAyNDIsIDIxNSwgMjEyLCAyNDgsIDIzMSwgMTI5LCAyNTUsIDE5MCwgMjQyLCAyMTUsIDIxNiwgMTQ0LCAxOTEsIAorICAgIDYxLCAxNTYsIDczLCAyMTIsIDI0OCwgMjMxLCAxMjksIDIzMSwgMjI4LCAxOTEsIDYxLCAxNTYsIDI1MCwgNTYsIDIxMiwgCisgICAgMjQ4LCAyMzEsIDEyOSwgMjIxLCA1MywgMTkxLCA2MSwgMTU2LCAyNTEsIDM5LCAyMTIsIDI0OCwgMjMxLCAxMjksIDIyNiwgCisgICAgMjQsIDIyMSwgNDEsIDE5MSwgNjEsIDE1NiwgMjEyLCAyNDgsIDIzMSwgMTI5LCAyMTYsIDE0NCwgMjIxLCA0MSwgMTkxLCAKKyAgICA2MSwgMTU2LCAyMjIsIDE0OSwgMjIxLCA0MCwgNjEsIDE1NiwgMjUxLCAxODIsIDIxMiwgMjQ4LCAyMzEsIDEyOCwgNjEsIAorICAgIDE1NiwgMjUyLCAxNSwgMjIwLCAyMDQsIDIxMiwgMjQ4LCAyMzEsIDEyOCwgNjEsIDE1NiwgMjM2LCA1NSwgMjE2LCAxNDMsIAorICAgIDYxLCAxNTYsIDI0OCwgMTMzLCAyMTYsIDE0NCwgMjUxLCAxODEsIDYxLCAxNTYsIDIyMSwgNDAsIDYxLCAxNTYsIDIyOCwgCisgICAgNDAsIDIyMSwgNDAsIDYxLCAxNTYsIDIxNiwgMTQ0LCAyMjEsIDQwLCA2MSwgMTU2LCAyMjgsIDQwLCAyMTYsIDE0NCwgMjIxLCAKKyAgICA0MCwgNjEsIDE1NiwgMjIzLCAxNjcsIDI1MCwgMTgyLCAyMTksIDE4NywgMjIxLCA0MCwgNjEsIDE1NiwgMjIzLCAyMjksIAorICAgIDI0MiwgMjQyLCAyMjEsIDQwLCA2MSwgMTU2LCAyNTEsIDM5LCAyNTUsIDE5NCwgMjIzLCA4MSwgMjMxLCAyMjcsIDE4NywgCisgICAgMjUxLCA2MywgNjEsIDE1NiwgMjQyLCAyMTUsIDIxNiwgMTQzLCA2MSwgMjMzLCAxNSwgNSwgMjUwLCAyMTMsIDIyMywgODAsIAorICAgIDYxLCAyMzMsIDE1LCA1LCAyMzMsIDEyMSwgMjIzLCA4MCwgNjEsIDI1MywgMjU1LCA1LCAyMjEsIDUwLCAyNDMsIDE2MSwgCisgICAgMjU1LCAxOTUsIDIyMywgODAsIDYxLCAyNTMsIDI1NSwgNSwgMjU1LCAxOTIsIDE5NSwgNjEsIDI1MywgMjU1LCA1LCAyMjIsIAorICAgIDEyNCwgMjE2LCAxMzksIDYxLCA1LCAyMjQsIDU3LCAyNDcsIDIzMiwgMjQzLCAxNjAsIDYxLCA1LCAyMjQsIDU3LCAyNDcsIAorICAgIDIzMiwgMjQzLCAxNiwgNjEsIDUsIDIyNCwgNTcsIDI0NywgMjMyLCAyNDIsIDIxNiwgNjEsIDUsIDIyNCwgNTcsIDIzMCwgCisgICAgMTA2LCAyNDMsIDE2MCwgNjEsIDUsIDIyNCwgNTcsIDIzMCwgMTA2LCAyNDMsIDE2LCA2MSwgNSwgMjI0LCA1NywgMjQ3LCAKKyAgICAyMzIsIDIyNCwgNTcsIDIzMCwgMTA1LCA2MSwgMjEsIDIxMiwgNzksIDYxLCAyMSwgMTE4LCA2MSwgMjEsIDExMiwgNjEsIAorICAgIDIxLCAxNzAsIDYxLCAyMSwgMTY3LCA2MSwgMjEsIDE4NSwgNjEsIDIxLCAxOTIsIDYxLCAyMSwgMjAwLCA2MSwgMjEsIDE5OCwgCisgICAgNjEsIDIxLCAyMDMsIDYxLCAyMSwgMTU3LCAxMTgsIDYxLCAyMSwgMTU3LCAxMTIsIDYxLCAyMSwgMTU3LCAxNzAsIDYxLCAKKyAgICAyMSwgMTU3LCAxNjcsIDYxLCAyMSwgMTU3LCAxODUsIDYxLCAyMSwgMTU3LCAxOTIsIDYxLCAyMSwgMTU3LCAyMDAsIDYxLCAKKyAgICAyMSwgMTU3LCAxOTgsIDYxLCAyMSwgMTU3LCAyMDMsIDYxLCAyMSwgMTU3LCAyMTIsIDc5LCA2MSwgMTU2LCAyNTEsIDE4NCwgCisgICAgMjIzLCA4MCwgNjEsIDE1NiwgMjI5LCAyMTgsIDI1MSwgMTIzLCAyMjgsIDUwLCAyMTIsIDE4LCA2MSwgMTU2LCAyNTEsIDM5LCAKKyAgICAyNTUsIDE5NCwgMjIzLCA4MSwgMjUxLCAxMjQsIDIzMSwgODUsIDI1MSwgNjMsIDYxLCAxNTYsIDIyOSwgMjE4LCAyNTEsIAorICAgIDEyMywgMjIxLCA1MSwgMjIzLCA4MCwgNjEsIDE1NiwgMjUwLCAxOTEsIDIzMSwgMTI4LCA2MSwgMTU2LCAyMTYsIDE1NSwgCisgICAgMjU1LCAxOTEsIDYxLCAxNTYsIDI0MiwgMjAyLCAyMjMsIDgxLCAyNDIsIDE2NSwgNjEsIDE1NiwgMjQyLCAyMDIsIDIyMywgCisgICAgODEsIDI0MiwgMTcxLCA2MSwgMTU2LCAyNTQsIDE1MiwgMjM0LCAyNDEsIDI0MiwgMTY1LCA2MSwgMTU2LCAyNTQsIDE1MiwgCisgICAgMjM0LCAyNDEsIDI0MiwgMTcxLCA2MSwgNSwgMjEzLCA1NywgMjE2LCAxNDIsIDYxLCA1LCAyMzIsIDQ1LCAyMTYsIDE0MiwgCisgICAgNjEsIDEsIDE4MywgNjEsIDEsIDIzNCwgMjUwLCA2MSwgMSwgMjQzLCAyMzAsIDYxLCAxLCAyNDMsIDg5LCA2MSwgMSwgMjI5LCAKKyAgICAyMjYsIDYxLCAxLCAyNTEsIDg4LCA2MSwgMSwgMjUwLCAyMTUsIDYxLCAxLCAyMzYsIDAsIDYxLCAxLCAyMjgsIDY0LCA2MSwgCisgICAgMSwgMjE2LCAxMjgsIDYxLCAxLCAyMTYsIDExNiwgNjEsIDEsIDI0OCwgMjA3LCA2MSwgMSwgMjQ4LCAxOTEsIDYxLCAxLCAKKyAgICAyMjksIDYsIDYxLCAxLCAyMTgsIDY2LCA2MSwgMSwgMjE3LCAxNzQsIDYxLCAxLCAyNDksIDMwLCA2MSwgMSwgMjQ4LCA5NywgCisgICAgNjEsIDEsIDIwNywgNjEsIDEsIDE5NSwgNjEsIDEsIDIyNiwgNTksIDYxLCAxLCAyNTIsIDIzNCwgNjEsIDEsIDI1MiwgNjUsIAorICAgIDYxLCAxLCAxOTEsIDYxLCAxLCAyMTYsIDE1NCwgNjEsIDEsIDIxNiwgMTQ2LCA2MSwgMSwgMjQ2LCAxMTQsIDYxLCAxLCAKKyAgICAyNDYsIDEwOSwgNjEsIDEsIDIxNCwgNTIsIDYxLCAxLCAyMTIsIDc1LCA2MSwgMSwgMjEyLCAxMDksIDYxLCAxLCAyNTUsIAorICAgIDE5NywgNjEsIDEsIDE4OSwgNjEsIDEsIDIwOCwgNjEsIDEsIDIzMywgMjU1LCA2MSwgMSwgMjIxLCA0NywgNjEsIDEsIDIxOSwgCisgICAgMTc2LCA2MSwgMSwgMjIyLCAyMjcsIDYxLCAxLCAxNjIsIDYxLCAxLCA2MywgNjEsIDEsIDIzNCwgOTUsIDYxLCAxLCAyNDQsIAorICAgIDE2NiwgMjA4LCA2MSwgMSwgMjM0LCAxNjYsIDYxLCAxLCAyMjMsIDExNSwgNjEsIDMwLCA1LCAyNTUsIDEwNCwgNjEsIDMwLCAKKyAgICA1LCA3NSwgNjEsIDMwLCA1LCAyMzYsIDE0NSwgNjEsIDMwLCA1LCA3MiwgNjEsIDMwLCA1LCAyMTUsIDk4LCA2MSwgMzAsIDUsIAorICAgIDE2NSwgMTUyLCA2MSwgMzAsIDUsIDE2NSwgMjIzLCAxMTYsIDYxLCAzMCwgNSwgMTY1LCAxNTUsIDYxLCAzMCwgNSwgMTY1LCAKKyAgICAyMzMsIDU1LCA2MSwgMzAsIDUsIDc3LCA2MSwgMzAsIDUsIDI0NiwgMzAsIDYxLCAzMCwgNSwgNzgsIDYxLCAzMCwgNSwgCisgICAgMjI3LCA4NiwgNjEsIDUsIDIyMywgMTUyLCAyMTksIDQyLCAyMjksIDIyNywgMjIzLCAxNDYsIDYxLCA1LCAyMjMsIDE1MSwgCisgICAgMjUyLCAxMjIsIDYxLCAzMCwgNSwgMjIzLCAyMzYsIDc1LCA2MSwgMzAsIDUsIDIyMywgMjM2LCAyMzYsIDE0NSwgNjEsIDUsIAorICAgIDIyOCwgNTAsIDIxMiwgMTksIDIzMCwgMTEzLCAyNDksIDMwLCA2MSwgNSwgMjIwLCAxOCwgMjMzLCAxODIsIDYxLCAxNTYsIAorICAgIDI0MiwgMTMxLCA2MSwgMTU2LCAyMjYsIDIyMSwgNjEsIDUsIDIzMywgMTg1LCAyMjMsIDgwLCA2MSwgNSwgMjEzLCA2MSwgCisgICAgMjIzLCA4MCwgNjEsIDUsIDIzMywgMTg2LCAyMTYsIDE1NSwgMjUxLCA2MywgNjEsIDUsIDIzMSwgMjI5LCAyNTEsIDYzLCAKKyAgICA2MSwgNSwgMjQyLCAyMTgsIDI1MSwgNjQsIDIyMywgMjI3LCA2MSwgNSwgMjQyLCAyMTgsIDIzMSwgMjIwLCAyMjMsIDIyNywgCisgICAgNjEsIDUsIDIzNiwgNTIsIDIzMSwgMjI5LCAyNTEsIDYzLCA2MSwgMjE5LCAzMiwgNSwgMjMzLCAxODYsIDIxNiwgMTU1LCAKKyAgICAyNTEsIDYzLCA2MSwgMjE5LCAzMiwgNSwgMjMxLCAyMjksIDI1MSwgNjMsIDYxLCAyMTksIDMyLCA1LCAyMzYsIDUyLCAyMzEsIAorICAgIDIyOSwgMjUxLCA2MywgNjEsIDIxOSwgMzIsIDEsIDE4MywgNjEsIDIxOSwgMzIsIDEsIDIzNCwgMjUwLCA2MSwgMjE5LCAzMiwgCisgICAgMSwgMjQzLCAyMzAsIDYxLCAyMTksIDMyLCAxLCAyNDMsIDg5LCA2MSwgMjE5LCAzMiwgMSwgMjI5LCAyMjYsIDYxLCAyMTksIAorICAgIDMyLCAxLCAyNTEsIDg4LCA2MSwgMjE5LCAzMiwgMSwgMjUwLCAyMTUsIDYxLCAyMTksIDMyLCAxLCAyMzYsIDAsIDYxLCAKKyAgICAyMTksIDMyLCAxLCAyMjgsIDY0LCA2MSwgMjE5LCAzMiwgMSwgMjE2LCAxMjgsIDYxLCAyMTksIDMyLCAxLCAyMTYsIDExNiwgCisgICAgNjEsIDIxOSwgMzIsIDEsIDI0OCwgMjA3LCA2MSwgMjE5LCAzMiwgMSwgMjQ4LCAxOTEsIDYxLCAyMTksIDMyLCAxLCAyMjksIAorICAgIDYsIDYxLCAyMTksIDMyLCAxLCAyMTgsIDY2LCA2MSwgMjE5LCAzMiwgMSwgMjE3LCAxNzQsIDYxLCAyMTksIDMyLCAxLCAKKyAgICAyNDksIDMwLCA2MSwgMjE5LCAzMiwgMSwgMjQ4LCA5NywgNjEsIDIxOSwgMzIsIDEsIDIwNywgNjEsIDIxOSwgMzIsIDEsIAorICAgIDE5NSwgNjEsIDIxOSwgMzIsIDEsIDIyNiwgNTksIDYxLCAyMTksIDMyLCAxLCAyNTIsIDIzNCwgNjEsIDIxOSwgMzIsIDEsIAorICAgIDI1MiwgNjUsIDYxLCAyMTksIDMyLCAxLCAxOTEsIDYxLCAyMTksIDMyLCAxLCAyMTYsIDE1NCwgNjEsIDIxOSwgMzIsIDEsIAorICAgIDIxNiwgMTQ2LCA2MSwgMjE5LCAzMiwgMSwgMjQ2LCAxMTQsIDYxLCAyMTksIDMyLCAxLCAyNDYsIDEwOSwgNjEsIDIxOSwgCisgICAgMzIsIDEsIDIxNCwgNTIsIDYxLCAyMTksIDMyLCAxLCAyMTIsIDc1LCA2MSwgMjE5LCAzMiwgMSwgMjEyLCAxMDksIDYxLCAKKyAgICAyMTksIDMyLCAxLCAyNTUsIDE5NywgNjEsIDIxOSwgMzIsIDEsIDE4OSwgNjEsIDIxOSwgMzIsIDEsIDIwOCwgNjEsIDIxOSwgCisgICAgMzIsIDEsIDIzMywgMjU1LCA2MSwgMjE5LCAzMiwgMSwgMjIxLCA0NywgNjEsIDIxOSwgMzIsIDEsIDIxOSwgMTc2LCA2MSwgCisgICAgMjE5LCAzMiwgMSwgMjIyLCAyMjcsIDYxLCAyMTksIDMyLCAxLCAxNjIsIDYxLCAyMTksIDMyLCAxLCA2MywgNjEsIDIxOSwgCisgICAgMzIsIDEsIDIzNCwgOTUsIDYxLCAyMTksIDMyLCAxLCAyNDQsIDE2NiwgMjE0LCA1MiwgNjEsIDIxOSwgMzIsIDEsIDI0NCwgCisgICAgMTY2LCAxODksIDYxLCAyMTksIDMyLCAxLCAyNDQsIDE2NiwgMjA4LCA2MSwgMjM0LCA4MiwgMjIzLCA3OCwgMjM0LCAyNTAsIAorICAgIDYxLCAyMzQsIDgyLCAyMjMsIDc4LCAyMzQsIDI1MSwgMjUxLCAxMjQsIDIzMSwgODUsIDI1MSwgNjMsIDYxLCAyNTEsIDUyLCAKKyAgICA1LCAxMTAsIDI1MiwgMTE2LCA2MSwgMjUxLCA1MiwgNSwgMTgyLCAyNTIsIDExNiwgNjEsIDI1MSwgNTIsIDUsIDI1MSwgNTMsIAorICAgIDIxNywgMjQxLCA2MSwgMjUxLCA1MiwgNSwgMjIyLCAxNDgsIDI1NSwgMTk2LCA2MSwgMTYsIDI0NiwgMTY3LCAyNTEsIDE3OSwgCisgICAgNjEsIDE2LCAyMjQsIDU2LCAyMjMsIDE1MywgNjEsIDE2LCAyMjYsIDI0MCwgMjQzLCAxNTksIDYxLCAxNiwgMjI0LCA1NiwgCisgICAgMjIzLCAxNTQsIDIyMywgMjI5LCAyNDIsIDI0MSwgNjEsIDE2LCAyMjYsIDI0LCAxOTUsIDYxLCAxNiwgMjI4LCAyMTMsIAorICAgIDI1MSwgMTc5LCA2MSwgMTYsIDIyOCwgMjEzLCAyNTEsIDE4MCwgMjI4LCA0MCwgMjU1LCAxOTMsIDYxLCAxNiwgMjI4LCAKKyAgICAyMTMsIDI1MSwgMTgwLCAyNDIsIDIxNywgMjU1LCAxOTMsIDYxLCAxNiwgMjI4LCAyMTMsIDI1MSwgMTgwLCAyNTEsIDEyNCwgCisgICAgMjU1LCAxOTMsIDYxLCA1LCAyMjQsIDU3LCAyMzAsIDEwNiwgMjI0LCA1NywgMjQ3LCAyMzEsIDYxLCA1LCAyMjQsIDU3LCAKKyAgICAyMzAsIDEwNiwgMjQyLCAyMTYsIDYxLCAxNTYsIDI1MSwgMTgzLCAyMjAsIDIwNCwgMjQzLCA1NSwgMjMxLCAxMjksIDIyMywgCisgICAgMjI4LCA2MSwgMTU2LCAyMzEsIDQ3LCAyMTIsIDI0OCwgMjQzLCA1NSwgMjMxLCAxMjksIDIyMywgMjI4LCA2MSwgMTU2LCAKKyAgICAyMjgsIDQwLCAyMTYsIDE0MywgNjEsIDE1NiwgNzMsIDI1MSwgMjA0LCAyMjMsIDE0OCwgMjEyLCAyNDgsIDIzMSwgMTI5LCAKKyAgICAyMzEsIDIyOCwgMTkxLCA2MSwgMTU2LCAyNTAsIDU2LCAyNTEsIDIwNCwgMjIzLCAxNDgsIDIxMiwgMjQ4LCAyMzEsIDEyOSwgCisgICAgMjIxLCA1MywgMTkxLCAyMjMsIDE4MSwgMjE4LCAyMTQsIDUzLCAyMzMsIDE2NywgMjE4LCAyMTQsIDUzLCAyMjMsIDE4MSwgCisgICAgMjE4LCAyMTQsIDUsIDIsIDI0NywgMTkzLCAyMzMsIDE2NywgMjE4LCAyMTQsIDUsIDIsIDI0NywgMTkzLCA2MSwgMTU2LCAKKyAgICAyMzMsIDE3NywgMjMxLCAyMzAsIDIyMywgODAsIDYxLCAxNTYsIDIxNiwgMjIwLCAyMzEsIDIzMCwgMjIzLCA4MCwgNjUsIDEsIAorICAgIDE4MywgNjUsIDEsIDIzNCwgMjUwLCA2NSwgMSwgMjQzLCAyMzAsIDY1LCAxLCAyNDMsIDg5LCA2NSwgMSwgMjI5LCAyMjYsIAorICAgIDY1LCAxLCAyNTEsIDg4LCA2NSwgMSwgMjUwLCAyMTUsIDY1LCAxLCAyMzYsIDAsIDY1LCAxLCAyMzUsIDIzMCwgNjUsIDEsIAorICAgIDIyOCwgNjQsIDY1LCAxLCAyMjgsIDIzMCwgNjUsIDEsIDIxNiwgMTI4LCA2NSwgMSwgMjE2LCAxMTYsIDY1LCAxLCAyNDgsIAorICAgIDIwNywgNjUsIDEsIDI0OCwgMTkxLCA2NSwgMSwgMjI5LCA2LCA2NSwgMSwgMjE4LCA2NiwgNjUsIDEsIDIxNywgMTc0LCA2NSwgCisgICAgMSwgMjQ5LCAzMCwgNjUsIDEsIDI0OCwgOTcsIDY1LCAxLCAyMDcsIDY1LCAxLCAxOTUsIDY1LCAxLCAyMjYsIDU5LCA2NSwgCisgICAgMSwgMjUyLCAyMzQsIDY1LCAxLCAyNTIsIDY1LCA2NSwgMSwgMTkxLCA2NSwgMSwgMTg5LCA2NSwgMSwgMjA4LCA2NSwgMSwgCisgICAgMjMzLCAyNTUsIDY1LCAxLCAyMTQsIDUyLCA2NSwgMSwgMjIyLCAyMjcsIDY1LCAxLCAxNjIsIDY1LCAxLCAyMzMsIDU0LCAKKyAgICA2NSwgMSwgNjMsIDY1LCAxLCAyMjEsIDMxLCA2MywgNjUsIDEsIDc1LCA2NSwgMSwgMjM2LCAxNDUsIDY1LCAxLCA3MiwgNjUsIAorICAgIDEsIDIxNSwgOTgsIDY1LCAxLCA3NywgNjUsIDEsIDIzMSwgMzUsIDc3LCA2NSwgMSwgNzgsIDY1LCAxLCAyNTMsIDIzNSwgCisgICAgNjUsIDMwLCA1LCAyMTgsIDI4LCAyNTUsIDEwNCwgNjUsIDMwLCA1LCAyNTUsIDEwNCwgNjUsIDMwLCA1LCA3NSwgNjUsIDMwLCAKKyAgICA1LCAyMzYsIDE0NSwgNjUsIDMwLCA1LCA3MiwgNjUsIDMwLCA1LCAyMTUsIDk4LCA2NSwgMzAsIDUsIDc3LCA2NSwgMzAsIDUsIAorICAgIDI1NCwgMjM2LCA2NSwgMzAsIDUsIDIzMSwgMzUsIDIzNiwgMTQ1LCA2NSwgMzAsIDUsIDIzMSwgMzUsIDc4LCA2NSwgMzAsIAorICAgIDUsIDE1NCwgNTAsIDY1LCA1LCAyNTQsIDExMywgNjUsIDUsIDYyLCA1NSwgNjUsIDUsIDIxNCwgMTMyLCA2NSwgNSwgMjE0LCAKKyAgICAxMzcsIDY1LCA1LCAyNTQsIDIxLCA2NSwgMTIwLCA1LCAxNDQsIDE4OSwgNjUsIDEyMCwgNSwgMTQ0LCAyMDgsIDY1LCAxMjAsIAorICAgIDUsIDE0NCwgMjE0LCA1MiwgNjUsIDEyMCwgNSwgMTQ0LCAxNjIsIDY1LCAxLCAyNDIsIDIzMCwgMjIyLCAyMjcsIDY1LCAyMSwgCisgICAgMjEyLCA3OSwgNjUsIDIxLCAxMTgsIDY1LCAyMSwgMTEyLCA2NSwgMjEsIDE3MCwgNjUsIDIxLCAxNjcsIDY1LCAyMSwgMTg1LCAKKyAgICA2NSwgMjEsIDE5MiwgNjUsIDIxLCAyMDAsIDY1LCAyMSwgMTk4LCA2NSwgMjEsIDIwMywgNjUsIDUsIDIzMywgNjIsIDIyMiwgCisgICAgMTE0LCA2NSwgNSwgMjIyLCAxMTQsIDY1LCAxNiwgMjMzLCAyMywgNjUsIDE2LCAyNTAsIDE4LCA2NSwgMTYsIDI1NCwgMjUzLCAKKyAgICA2NSwgMTYsIDI0MywgMTQ0LCA2NSwgMSwgMjIxLCA0NywgNjUsIDEsIDIxOSwgMTc2LCA2NSwgMSwgMTY1LCAxNTIsIDY1LCAKKyAgICAxLCAxNjUsIDIyMywgMTE2LCA2NSwgMSwgMTY1LCAxNTUsIDY1LCAxLCAxNjUsIDIzMywgNTUsIDY1LCAzMCwgNSwgMTY1LCAKKyAgICAxNTIsIDY1LCAzMCwgNSwgMTY1LCAyMjMsIDExNiwgNjUsIDMwLCA1LCAxNjUsIDE1NSwgNjUsIDMwLCA1LCAxNjUsIDIzMywgCisgICAgNTUsIDY1LCAxLCAyMzEsIDM1LCAyMjksIDIyNiwgNjUsIDEsIDIzMSwgMzUsIDIzNSwgMjMwLCA2NSwgMSwgMjMxLCAzNSwgCisgICAgMjUyLCAxNTcsIDY1LCAxLCAyMzEsIDM1LCAyNTIsIDE1MiwgNjUsIDEyMCwgNSwgMjMxLCAzNSwgMTQ0LCAyMDcsIDY1LCAKKyAgICAxMjAsIDUsIDIzMSwgMzUsIDE0NCwgMTkxLCA2NSwgMTIwLCA1LCAyMzEsIDM1LCAxNDQsIDIzMywgMjU1LCA2NSwgMSwgCisgICAgMjIxLCA1MiwgMjM1LCA3NSwgMjIxLCA0NywgNjUsIDMwLCA1LCAyMjEsIDUyLCAyMzUsIDc1LCAyNDUsIDE0MywgNjUsIAorICAgIDE2MSwgMTU2LCAyMjEsIDUyLCAyMzUsIDc1LCAyNDIsIDk0LCA2NSwgMTYxLCAxNTYsIDIyMSwgNTIsIDIzNSwgNzUsIDIzNSwgCisgICAgNDUsIDIyNiwgMzMsIDY1LCAxLCAyMTMsIDI1MSwgMjI1LCAzMSwgMjM1LCA3NSwgMjE3LCAxNzQsIDY1LCAxLCAyMTMsIAorICAgIDI1MSwgMjI1LCAzMSwgMjM1LCA3NSwgMjI1LCAzNywgNjUsIDMwLCA1LCAyMTMsIDI1MSwgMjI1LCAzMSwgMjM1LCA3NSwgCisgICAgMjQ1LCAxNDMsIDY1LCAzMCwgNSwgMjEzLCAyNTEsIDIyNSwgMzEsIDIzNSwgNzUsIDIxNSwgMTg5LCA2NSwgNSwgMjEzLCAKKyAgICAyNTEsIDIyNSwgMzEsIDIzNSwgNzUsIDIxNiwgMjUzLCA2NSwgNSwgMjEzLCAyNTEsIDIyNSwgMzEsIDIzNSwgNzUsIDIxNiwgCisgICAgMjUyLCA2NSwgNSwgMjEzLCAyNTEsIDIyNSwgMzEsIDIzNSwgNzUsIDIxNiwgMjUxLCA2NSwgNSwgMjEzLCAyNTEsIDIyNSwgCisgICAgMzEsIDIzNSwgNzUsIDIxNiwgMjUwLCA2NSwgNSwgMjEzLCAyNTEsIDIyNSwgMzEsIDIzNSwgNzUsIDIxNiwgMjQ5LCA2NSwgCisgICAgMSwgMjQ2LCA0MCwgMjI1LCAzMSwgMjM1LCA3NSwgMjI5LCA2LCA2NSwgMSwgMjQ2LCA0MCwgMjI1LCAzMSwgMjM1LCA3NSwgCisgICAgMjEyLCAxNjgsIDY1LCAxLCAyNDYsIDQwLCAyMjUsIDMxLCAyMzUsIDc1LCAyNDMsIDU3LCA2NSwgMzAsIDUsIDI0MywgMTU1LCAKKyAgICAyMzUsIDc1LCA3NSwgNjUsIDMwLCA1LCAyMzUsIDUwLCAyMjcsIDEzNiwgNjUsIDMwLCA1LCAyMzUsIDUwLCA3MiwgNjUsIAorICAgIDMwLCA1LCAyMzUsIDUwLCAyNDYsIDMwLCA2NSwgMSwgMjIxLCAzMSwgMTgzLCA2NSwgMSwgMjIxLCAzMSwgMjM0LCAyNTAsIAorICAgIDY1LCAxLCAyMjEsIDMxLCAyNDMsIDIzMCwgNjUsIDEsIDIyMSwgMzEsIDI1MSwgODgsIDY1LCAxLCAyMjEsIDMxLCAyMTIsIAorICAgIDEwOSwgNjUsIDEsIDIyMSwgMzEsIDIyOCwgNjQsIDY1LCAxLCAyMjEsIDMxLCAyNDksIDMwLCA2NSwgMSwgMjIxLCAzMSwgCisgICAgMjA3LCA2NSwgMSwgMjIxLCAzMSwgMjI2LCA1OSwgNjUsIDEsIDIyMSwgMzEsIDI0NSwgMjksIDY1LCAxLCAyMjEsIDMxLCAKKyAgICAyNTIsIDIzNCwgNjUsIDEsIDIyMSwgMzEsIDIxNywgMTc0LCA2NSwgMSwgMjIxLCAzMSwgMTYyLCA2NSwgMTIwLCA1LCAyMjEsIAorICAgIDMxLCAxNDQsIDIxNCwgNTIsIDY1LCAzMCwgNSwgMjIxLCAzMSwgMjU1LCAxMDQsIDY1LCAzMCwgNSwgMjIxLCAzMSwgNzcsIAorICAgIDY1LCAzMCwgNSwgMjIxLCAzMSwgMTU0LCA1MCwgNjUsIDMwLCA1LCAyMjEsIDMxLCA0MSwgMjEzLCAxMDgsIDY1LCA1LCAKKyAgICAyMjEsIDMxLCAyMTYsIDI1MiwgNjUsIDUsIDIyMSwgMzEsIDIxNiwgMjUxLCA2NSwgNSwgMjIxLCAzMSwgMjE2LCAyNDksIAorICAgIDY1LCA1LCAyMjEsIDMxLCAyMTYsIDI0OCwgNjUsIDUsIDIyMSwgMzEsIDI0OSwgMjE0LCAyMTYsIDI1MiwgNjUsIDUsIDIyMSwgCisgICAgMzEsIDI0OSwgMjE0LCAyMTYsIDI1MSwgNjUsIDUsIDIyMSwgMzEsIDI0OSwgMjE0LCAyNDUsIDIzMiwgMjE2LCAyNTQsIDY1LCAKKyAgICAxLCAyMjMsIDY1LCAyMjYsIDIyNywgMjQ1LCAyOSwgNjUsIDUsIDIyMywgNjUsIDIyNiwgMjI3LCAyMTYsIDI0OSwgNjUsIAorICAgIDIyMSwgMzEsIDIxLCAyMTIsIDc5LCA2NSwgMjIxLCAzMSwgMjEsIDExOCwgNjUsIDIyMSwgMzEsIDIxLCAxMTIsIDY1LCAKKyAgICAyMjEsIDMxLCAyMSwgMTcwLCA2NSwgMjIxLCAzMSwgMjEsIDE2NywgNjUsIDIyMSwgMzEsIDIxLCAxODUsIDY1LCAyMjEsIAorICAgIDMxLCAyMSwgMTkyLCA2NSwgMjIxLCAzMSwgMjEsIDIwMCwgNjUsIDIyMSwgMzEsIDIxLCAxOTgsIDY1LCAyMjEsIDMxLCAyMSwgCisgICAgMjAzLCA2NSwgNSwgMjM0LCAyNDQsIDIxNiwgMjUzLCA2NSwgNSwgMjM0LCAyNDQsIDIxNiwgMjUxLCA2NSwgMzAsIDUsIAorICAgIDI1NCwgMjI1LCA2MywgNjUsIDMwLCA1LCAyNTQsIDIyNSwgMjU0LCAyMzYsIDY1LCAxNiwgMjIxLCAzMSwgMTE4LCA2NSwgCisgICAgMTYsIDIyMSwgMzEsIDI0NSwgMTE4LCA5OSwgNiwgMSwgMjU0LCAxNTksIDk5LCA2LCAxLCAyNTIsIDE5OCwgOTksIDYsIDEsIAorICAgIDI0MywgMjAyLCA5OSwgNiwgMSwgMjQ3LCAyMDMsIDk5LCA2LCAxLCAyNDUsIDIyOSwgOTksIDYsIDEsIDIxNCwgMTQ1LCA5OSwgCisgICAgNiwgMSwgMjEyLCA4MiwgOTksIDYsIDEsIDIxOCwgMjQsIDk5LCA2LCAxLCAyMzYsIDExMiwgOTksIDYsIDEsIDIzNSwgOTYsIAorICAgIDk5LCA2LCAxLCAyMzMsIDIwMywgOTksIDYsIDEsIDIzMiwgNjMsIDk5LCA2LCAxLCAyMzAsIDgzLCA5OSwgNiwgMSwgMjI3LCAKKyAgICA5OSwgOTksIDYsIDEsIDIyNiwgMTgyLCA5OSwgNiwgMSwgMjEyLCA3MSwgOTksIDYsIDEsIDIyNCwgOTYsIDk5LCA2LCAxLCAKKyAgICAyMjIsIDE4MywgOTksIDYsIDEsIDIxOCwgMTQsIDk5LCA2LCAxLCAyMTUsIDE2NiwgOTksIDYsIDEsIDIyNiwgNTIsIDk5LCAKKyAgICA2LCAxLCAyMzQsIDIzOSwgOTksIDYsIDEsIDI0MywgODEsIDk5LCA2LCAxLCAyMjQsIDI1MiwgOTksIDYsIDEsIDIyMCwgCisgICAgMjIxLCA5OSwgNiwgMSwgMjUwLCAxNTcsIDk5LCA2LCAxLCAyNTEsIDYzLCA5OSwgNiwgMSwgMjM1LCAyMTcsIDk5LCA2LCAxLCAKKyAgICAyNTAsIDEwMCwgOTksIDYsIDEsIDI1MCwgMjAyLCA5OSwgNiwgMSwgMjEzLCAxNTQsIDk5LCA2LCAxLCAyMzUsIDIyOCwgOTksIAorICAgIDYsIDEsIDI0MiwgMTQ1LCA5OSwgNiwgMSwgMjQyLCA4NSwgOTksIDYsIDEsIDI0MiwgMjMsIDk5LCA2LCAxLCAyMTQsIDksIAorICAgIDk5LCA2LCAxLCAyNDIsIDEwNywgOTksIDYsIDEsIDI0MSwgMTcwLCA5OSwgMSwgMjU0LCAxNTksIDk5LCAxLCAyNTIsIDE5OCwgCisgICAgOTksIDEsIDI0MywgMjAyLCA5OSwgMSwgMjQ3LCAyMDMsIDk5LCAxLCAyNDUsIDIyOSwgOTksIDEsIDIxNCwgMTQ1LCA5OSwgCisgICAgMSwgMjEyLCA4MiwgOTksIDEsIDIxOCwgMjQsIDk5LCAxLCAyMzYsIDExMiwgOTksIDEsIDIzNSwgOTYsIDk5LCAxLCAyMzMsIAorICAgIDIwMywgOTksIDEsIDIzMiwgNjMsIDk5LCAxLCAyMzAsIDgzLCA5OSwgMSwgMjI3LCA5OSwgOTksIDEsIDIyNiwgMTgyLCA5OSwgCisgICAgMSwgMjEyLCA3MSwgOTksIDEsIDIyNCwgOTYsIDk5LCAxLCAyMjIsIDE4MywgOTksIDEsIDIxOCwgMTQsIDk5LCAxLCAyMTUsIAorICAgIDE2NiwgOTksIDEsIDIyNiwgNTIsIDk5LCAxLCAyMzQsIDIzOSwgOTksIDEsIDI0MywgODEsIDk5LCAxLCAyMjQsIDI1MiwgCisgICAgOTksIDEsIDIyMCwgMjIxLCA5OSwgMSwgMjUwLCAxNTcsIDk5LCAxLCAyNTEsIDYzLCA5OSwgMSwgMjM1LCAyMTcsIDk5LCAxLCAKKyAgICAyNTAsIDEwMCwgOTksIDEsIDI1MCwgMjAyLCA5OSwgMSwgMjEzLCAxNTQsIDk5LCAxLCAyMzUsIDIyOCwgOTksIDEsIDI0MiwgCisgICAgMTQ1LCA5OSwgMSwgMjQyLCA4NSwgOTksIDEsIDI0MiwgMjMsIDk5LCAxLCAyMTQsIDksIDk5LCAxLCAyNDIsIDEwNywgOTksIAorICAgIDEsIDI0MSwgMTcwLCA5OSwgMSwgMjQ0LCAyMTAsIDk5LCAxLCAyMTIsIDIzOCwgOTksIDEsIDI0NSwgMjQzLCA5OSwgMSwgCisgICAgMjE2LCA2NiwgMjQzLCAyMDIsIDk5LCAxLCAyNTQsIDIzMSwgOTksIDIyNiwgMTgwLCAyMjEsIDgwLCA1OSwgMSwgOTksIAorICAgIDIzMCwgODMsIDI0LCA5OCwgMjM0LCAxNzgsIDI0LCA5OCwgMjE5LCAxNjgsIDI0LCA5OCwgMjI5LCAxMjEsIDI0LCA5OCwgCisgICAgMjE3LCA2OCwgMjQsIDk4LCAyMTksIDE1NywgMjQsIDk4LCAyMjMsIDIxMywgMjQsIDk4LCAyMzEsIDEwMCwgMjQsIDk4LCAKKyAgICAyMjYsIDcsIDI0LCA5OCwgMjE5LCAxNjUsIDI0LCA5OCwgMjIwLCA5NSwgMjQsIDk4LCAyMTksIDE2MiwgMjQsIDk4LCAyMzYsIAorICAgIDE2OCwgMjQsIDk4LCAyNTAsIDEwNiwgMjQsIDk4LCAyMTksIDE3MiwgMjQsIDk4LCAyNTAsIDE2NiwgMjQsIDk4LCAyMzQsIAorICAgIDIyOCwgMjQsIDk4LCAyMTcsIDEzOSwgMjQsIDk4LCAyMjYsIDQzLCAyNCwgOTgsIDI0MiwgMjEsIDI0LCA5OCwgMjI5LCAKKyAgICAxMTcsIDI0LCA5OCwgMjE5LCAxNjYsIDI0LCA5OCwgMjI5LCAxMTEsIDI0LCA5OCwgMjI5LCAxMTUsIDI0LCA5OCwgMjE3LCAKKyAgICA2NSwgMjQsIDk4LCAyMjMsIDIwMSwgMjQsIDk4LCAyMTksIDE2NCwgMjQsIDk4LCAyMjMsIDIxMSwgMjQsIDk4LCAyMzUsIAorICAgIDgwLCAyNCwgOTgsIDIzMSwgOTMsIDI0LCA5OCwgMjM1LCA4MywgMjQsIDk4LCAyMjYsIDIsIDI0LCA5OCwgMjI2LCAwLCAyNCwgCisgICAgOTgsIDIyNSwgMjQ0LCAyNCwgOTgsIDIyNSwgMjUyLCAyNCwgOTgsIDIyNSwgMjUwLCAyNCwgOTgsIDIyNSwgMjQ3LCAyNCwgCisgICAgOTgsIDIyNSwgMjQ5LCAyNCwgOTgsIDIyNSwgMjQ2LCAyNCwgOTgsIDIyNSwgMjUxLCAyNCwgOTgsIDIyNiwgNSwgMjQsIDk4LCAKKyAgICAyMjYsIDYsIDI0LCA5OCwgMjI1LCAyNDUsIDI0LCA5OCwgMjI1LCAyNTUsIDI0LCA5OCwgMjM1LCA4MSwgMjQsIDk4LCAyMzUsIAorICAgIDc5LCAyNCwgOTgsIDIyMCwgODgsIDI0LCA5OCwgMjIwLCA4NiwgMjQsIDk4LCAyMjAsIDc4LCAyNCwgOTgsIDIyMCwgODEsIAorICAgIDI0LCA5OCwgMjIwLCA4NywgMjQsIDk4LCAyMjAsIDgzLCAyNCwgOTgsIDIyMCwgODIsIDI0LCA5OCwgMjIwLCA4MCwgMjQsIAorICAgIDk4LCAyMjAsIDkxLCAyNCwgOTgsIDIyMCwgOTMsIDI0LCA5OCwgMjIwLCA5NCwgMjQsIDk4LCAyMjAsIDg5LCAyNCwgOTgsIAorICAgIDIyMCwgNzksIDI0LCA5OCwgMjIwLCA4NCwgMjQsIDk4LCAyMjAsIDkyLCAyNCwgOTgsIDI1MCwgMTUwLCAyNCwgOTgsIDI1MCwgCisgICAgMTQ4LCAyNCwgOTgsIDI1MCwgMjI1LCAyNCwgOTgsIDI1MCwgMjIzLCAyNCwgOTgsIDIyNiwgMTk3LCAyNCwgOTgsIDIzNiwgCisgICAgMTYzLCAyNCwgOTgsIDIzNiwgMTU0LCAyNCwgOTgsIDIzNiwgMTYyLCAyNCwgOTgsIDIzNiwgMTU5LCAyNCwgOTgsIDIzNiwgCisgICAgMTU3LCAyNCwgOTgsIDIzNiwgMTYxLCAyNCwgOTgsIDIxOSwgMTY5LCAyNCwgOTgsIDIzNiwgMTY2LCAyNCwgOTgsIDIzNiwgCisgICAgMTY3LCAyNCwgOTgsIDIzNiwgMTU1LCAyNCwgOTgsIDIzNiwgMTYwLCAyNCwgOTgsIDIxMywgMTgsIDI0LCA5OCwgMjUwLCAKKyAgICAxMDUsIDI0LCA5OCwgMjUwLCAxNTEsIDI0LCA5OCwgMjUwLCAxNDksIDI0LCA5OCwgMjUwLCAyMjYsIDI0LCA5OCwgMjUwLCAKKyAgICAyMjQsIDI0LCA5OCwgMjUwLCAxNjQsIDI0LCA5OCwgMjUwLCAxNjUsIDI0LCA5OCwgMjUwLCAxNTIsIDI0LCA5OCwgMjUwLCAKKyAgICAyMjcsIDI0LCA5OCwgMjI2LCA0MSwgMjQsIDk4LCAyMzUsIDgyLCAyNCwgOTgsIDIxOSwgMTcwLCAyNCwgOTgsIDIxMywgMjQsIAorICAgIDI0LCA5OCwgMjM0LCAxNjksIDI0LCA5OCwgMjI5LCAxMTMsIDI0LCA5OCwgMjI5LCAxMTksIDI0LCA5OCwgMjI5LCAxMTgsIAorICAgIDI0LCA5OCwgMjE3LCA2MiwgMjQsIDk4LCAyNDQsIDE5MiwgMjQsIDEzOSwgMjQ0LCAxOTIsIDI0LCAxMzksIDYzLCAyNCwgCisgICAgMTM5LCAyNTUsIDIwLCAyNCwgMTM5LCAxODksIDI0LCAxMzksIDIxMywgODMsIDI0LCAxMzksIDI0NSwgMTk3LCAyNCwgMTM5LCAKKyAgICA3NywgMjQsIDEzOSwgMjEzLCAyOCwgMjQsIDEzOSwgMjEzLCAzOSwgMjQsIDEzOSwgNzgsIDI0LCAxMzksIDIxNCwgNTIsIAorICAgIDI0LCAxMzksIDIxNCwgNDksIDI0LCAxMzksIDIyNywgMTM2LCAyNCwgMTM5LCAyMTIsIDIzNiwgMjQsIDEzOSwgNzIsIDI0LCAKKyAgICAxMzksIDIxMywgMjU1LCAyNCwgMTM5LCAyMTQsIDksIDI0LCAxMzksIDIxMywgMjM4LCAyNCwgMTM5LCAyMTIsIDIwNCwgMjQsIAorICAgIDEzOSwgMjQ1LCAxNDMsIDI0LCAxMzksIDIxMywgMCwgMjQsIDEzOSwgNzUsIDI0LCAxMzksIDI1NSwgMTg4LCAyNCwgMTM5LCAKKyAgICAyNTUsIDE4NywgMjQsIDEzOSwgMjEzLCA5NywgMjQsIDEzOSwgMjEzLCA5NSwgMjQsIDEzOSwgMjQ1LCAxOTUsIDI0LCAxMzksIAorICAgIDI0NSwgMTk0LCAyNCwgMTM5LCAyNDUsIDE5NiwgMjQsIDEzOSwgMjEzLCAyNywgMjQsIDEzOSwgMjEzLCAyNiwgMjQsIDEzOSwgCisgICAgMjI3LCAyNDEsIDI0LCAxMzksIDIyNywgMjQyLCAyNCwgMTM5LCAyMjcsIDIzNSwgMjQsIDEzOSwgMjI3LCAyNDAsIDI0LCAKKyAgICAxMzksIDIyNywgMjM4LCAyNCwgMTM5LCAyMTIsIDIzMCwgMjQsIDEzOSwgMjEyLCAyMjksIDI0LCAxMzksIDIxMiwgMjI4LCAKKyAgICAyNCwgMTM5LCAyMTIsIDIzMSwgMjQsIDEzOSwgMjEyLCAyMzIsIDI0LCAxMzksIDIxNiwgMywgMjQsIDEzOSwgMjE2LCAyLCAKKyAgICAyNCwgMTM5LCAyMTYsIDAsIDI0LCAxMzksIDIxNSwgMjUzLCAyNCwgMTM5LCAyMTUsIDI1NCwgMjQsIDEzOSwgMjEyLCAyMDMsIAorICAgIDI0LCAxMzksIDIxMiwgMjAwLCAyNCwgMTM5LCAyMTIsIDIwMSwgMjQsIDEzOSwgMjEyLCAxOTUsIDI0LCAxMzksIDIxMiwgCisgICAgMTk2LCAyNCwgMTM5LCAyMTIsIDE5NywgMjQsIDEzOSwgMjEyLCAxOTksIDI0LCAxMzksIDI0NSwgMTM3LCAyNCwgMTM5LCAKKyAgICAyNDUsIDEzOSwgMjQsIDEzOSwgMjEyLCAyNTUsIDI0LCAxMzksIDI0MSwgNiwgMjQsIDEzOSwgMjQwLCAyNTQsIDI0LCAxMzksIAorICAgIDI0MSwgMSwgMjQsIDEzOSwgMjQwLCAyNTUsIDI0LCAxMzksIDI0MSwgMywgMjQsIDEzOSwgMjQxLCA1LCAyNCwgMTM5LCAKKyAgICAyNTQsIDc1LCAyNCwgMTM5LCAyNTQsIDcyLCAyNCwgMTM5LCAyNTQsIDcwLCAyNCwgMTM5LCAyNTQsIDcxLCAyNCwgMTM5LCAKKyAgICAyMTksIDE3MywgMjQsIDEzOSwgMjU1LCAxODksIDI0LCAxMzksIDIxMywgOTYsIDI0LCAxMzksIDIxMywgMjUsIDI0LCAxMzksIAorICAgIDIyNywgMjM3LCAyNCwgMTM5LCAyMjcsIDIzNiwgMjQsIDkwLCAyMzQsIDE3OCwgMjQsIDkwLCAyMTksIDE2OCwgMjQsIDkwLCAKKyAgICAyMzQsIDE3MSwgMjQsIDkwLCAyMjksIDEyMSwgMjQsIDkwLCAyMjksIDExOSwgMjQsIDkwLCAyMjksIDExOCwgMjQsIDkwLCAKKyAgICAyMTcsIDY4LCAyNCwgOTAsIDIyMywgMjEzLCAyNCwgOTAsIDIyMywgMjA4LCAyNCwgOTAsIDIyMywgMjA1LCAyNCwgOTAsIAorICAgIDIyMywgMTk4LCAyNCwgOTAsIDIyMywgMTkzLCAyNCwgOTAsIDIyMywgMTg4LCAyNCwgOTAsIDIyMywgMTk5LCAyNCwgOTAsIAorICAgIDIyMywgMjExLCAyNCwgOTAsIDIzMSwgMTAwLCAyNCwgOTAsIDIyNiwgNywgMjQsIDkwLCAyMjUsIDI1MiwgMjQsIDkwLCAKKyAgICAyMjAsIDk1LCAyNCwgOTAsIDIxOSwgMTYyLCAyNCwgOTAsIDIzNiwgMTY4LCAyNCwgOTAsIDI1MCwgMTA2LCAyNCwgOTAsIAorICAgIDI1MCwgMTY2LCAyNCwgOTAsIDIzNCwgMjI4LCAyNCwgOTAsIDIxNywgMTM5LCAyNCwgOTAsIDIyNiwgNDMsIDI0LCA5MCwgCisgICAgMjQyLCAyMSwgMjQsIDkwLCAyMzQsIDE3MiwgMjQsIDkwLCAyMzQsIDE3MCwgMjQsIDkwLCAyMjksIDExNywgMjQsIDkwLCAKKyAgICAyMjksIDExMSwgMjQsIDkwLCAyMjksIDExMywgMjQsIDkwLCAyMjksIDExNiwgMjQsIDkwLCAyMjksIDExMiwgMjQsIDkwLCAKKyAgICAyMTcsIDY1LCAyNCwgOTAsIDIxNywgNjIsIDI0LCA5MCwgMjIzLCAyMDYsIDI0LCA5MCwgMjIzLCAyMDEsIDI0LCA5MCwgCisgICAgMjIzLCAxODcsIDI0LCA5MCwgMjIzLCAxODYsIDI0LCA5MCwgMjE5LCAxNjQsIDI0LCA5MCwgMjIzLCAyMDMsIDI0LCA5MCwgCisgICAgMjIzLCAyMDIsIDI0LCA5MCwgMjIzLCAxOTUsIDI0LCA5MCwgMjIzLCAxOTcsIDI0LCA5MCwgMjIzLCAyMTAsIDI0LCA5MCwgCisgICAgMjIzLCAxOTAsIDI0LCA5MCwgMjIzLCAyMDAsIDI0LCA5MCwgMjIzLCAyMDksIDI0LCA5MCwgMjIzLCAxODUsIDI0LCA5MCwgCisgICAgMjMxLCA5NiwgMjQsIDkwLCAyMzEsIDkxLCAyNCwgOTAsIDIzMSwgOTMsIDI0LCA5MCwgMjMxLCA5MCwgMjQsIDkwLCAyMzEsIAorICAgIDg4LCAyNCwgOTAsIDIzMSwgOTQsIDI0LCA5MCwgMjMxLCA5OSwgMjQsIDkwLCAyMzEsIDk3LCAyNCwgOTAsIDIzNSwgODMsIAorICAgIDI0LCA5MCwgMjI1LCAyNTQsIDI0LCA5MCwgMjI1LCAyNTUsIDI0LCA5MCwgMjI2LCA0LCAyNCwgOTAsIDIzNSwgODEsIDI0LCAKKyAgICA5MCwgMjIwLCA4OCwgMjQsIDkwLCAyMjAsIDc4LCAyNCwgOTAsIDIyMCwgODEsIDI0LCA5MCwgMjIwLCA4MywgMjQsIDkwLCAKKyAgICAyMjYsIDE5NywgMjQsIDkwLCAyMzYsIDE2MywgMjQsIDkwLCAyMzYsIDE1NiwgMjQsIDkwLCAyMTksIDE2OSwgMjQsIDkwLCAKKyAgICAyMzYsIDE2NCwgMjQsIDkwLCAyMTMsIDE4LCAyNCwgOTAsIDIxMywgMTQsIDI0LCA5MCwgMjEzLCAxNSwgMjQsIDkwLCAyMjYsIAorICAgIDQxLCAyNCwgOTAsIDIzNSwgODIsIDI0LCA5MCwgMjQyLCAxOSwgMjQsIDkwLCAyNDIsIDE3LCAyNCwgOTAsIDI0MiwgMjAsIAorICAgIDI0LCA5MCwgMjQyLCAxOCwgMjQsIDkwLCAyMTMsIDI0LCAyNCwgOTAsIDIzNCwgMTc0LCAyNCwgOTAsIDIzNCwgMTczLCAyNCwgCisgICAgOTAsIDIzNCwgMTc3LCAyNCwgOTAsIDIzNCwgMTc1LCAyNCwgOTAsIDIzNCwgMTc2LCAyNCwgOTAsIDIxOSwgMTY2LCAyOCwgCisgICAgMywgMTYyLCAyOCwgMywgMjQxLCA3NCwgMjgsIDMsIDI0MiwgMjgsIDI4LCAzLCAyNDIsIDE0OCwgMjgsIDMsIDI0MiwgNjcsIAorICAgIDI4LCAzLCAyNDIsIDg1LCAyOCwgMywgMjQxLCAxNzMsIDI4LCAzLCAyNDEsIDE3MiwgMjgsIDMsIDIzMywgMjU1LCAyOCwgMywgCisgICAgMjMyLCAyMzAsIDI4LCAzLCAyMzMsIDExMSwgMjgsIDMsIDIzMywgMjU0LCAyOCwgMywgMjMzLCAxNzIsIDI4LCAzLCAyMzMsIAorICAgIDE4MCwgMjgsIDMsIDIzMywgMjYsIDI4LCAzLCAyMzIsIDIwMiwgMjgsIDMsIDI0MiwgMzcsIDI4LCAzLCAyNDIsIDMxLCAyOCwgCisgICAgMywgMjQyLCAzMywgMjgsIDMsIDI0MiwgMzYsIDI4LCAzLCAyNDIsIDM0LCAyOCwgMywgMjQyLCAzNSwgMjgsIDMsIDI0MiwgCisgICAgMzIsIDI4LCAzLCAyNDIsIDMwLCAyOCwgMywgMTkxLCAyOCwgMywgMjMwLCAyNDIsIDI4LCAzLCAyMzEsIDExMiwgMjgsIDMsIAorICAgIDIzMiwgMTE0LCAyOCwgMywgMjMxLCAyMTUsIDI4LCAzLCAyMzEsIDIyNiwgMjgsIDMsIDIzMSwgNDUsIDI4LCAzLCAyMzAsIAorICAgIDE4MywgMjgsIDMsIDIxOCwgMTI0LCAyOCwgMywgMjE4LCAxMTgsIDI4LCAzLCAyMTgsIDEyMCwgMjgsIDMsIDIxOCwgMTIzLCAKKyAgICAyOCwgMywgMjE4LCAxMjEsIDI4LCAzLCAyMTgsIDEyMiwgMjgsIDMsIDIxOCwgMTE5LCAyOCwgMywgMjE4LCAxMTcsIDI4LCAKKyAgICAzLCAyMDgsIDI4LCAzLCAyMjMsIDc3LCAyOCwgMywgMjIzLCAyMjIsIDI4LCAzLCAyMjQsIDEwOSwgMjgsIDMsIDIyNCwgMzUsIAorICAgIDI4LCAzLCAyMjQsIDU1LCAyOCwgMywgMjIzLCAxNDYsIDI4LCAzLCAyMjMsIDQ2LCAyOCwgMywgMjIyLCAyMjcsIDI4LCAzLCAKKyAgICAyMTksIDQxLCAyOCwgMywgMjIwLCAxMzYsIDI4LCAzLCAyMjIsIDIyNSwgMjgsIDMsIDIyMiwgMTEyLCAyOCwgMywgMjIyLCAKKyAgICAxMjMsIDI4LCAzLCAyMjAsIDUsIDI4LCAzLCAyMTgsIDIxMiwgMjgsIDMsIDIyMSwgNDcsIDI4LCAzLCAyMjAsIDE3MCwgMjgsIAorICAgIDMsIDIyMCwgMjMzLCAyOCwgMywgMjIxLCA0MywgMjgsIDMsIDIyMSwgNiwgMjgsIDMsIDIyMSwgOCwgMjgsIDMsIDIyMCwgCisgICAgMjA4LCAyOCwgMywgMjIwLCAxNTMsIDI4LCAzLCAyMjUsIDExLCAyOCwgMywgMjI0LCAyMTAsIDI4LCAzLCAyMjQsIDIzMywgCisgICAgMjgsIDMsIDIyNSwgMTAsIDI4LCAzLCAyMjQsIDI0NywgMjgsIDMsIDIyNCwgMjQ4LCAyOCwgMywgMjI0LCAyMjIsIDI4LCAzLCAKKyAgICAyMjQsIDIyMSwgMjgsIDMsIDIyNCwgMTY2LCAyOCwgMywgMjI0LCAxNjIsIDI4LCAzLCAyMjQsIDE2NSwgMjgsIDMsIDIyNCwgCisgICAgMTYzLCAyOCwgMywgMjI0LCAxNjQsIDI4LCAzLCAyMjQsIDI0NSwgMjgsIDMsIDIyNCwgMjM5LCAyOCwgMywgMjI0LCAyNDEsIAorICAgIDI4LCAzLCAyMjQsIDI0NCwgMjgsIDMsIDIyNCwgMjQyLCAyOCwgMywgMjI0LCAyNDMsIDI4LCAzLCAyMjQsIDI0MCwgMjgsIAorICAgIDMsIDIyNCwgMjM4LCAyOCwgMywgMjI0LCAyMzQsIDI4LCAzLCAyMjQsIDIzNywgMjgsIDMsIDIyNCwgMjM1LCAyOCwgMywgCisgICAgMjI0LCAyMzYsIDI4LCAzLCAyNTIsIDIzNCwgMjgsIDMsIDI1MSwgMTc5LCAyOCwgMywgMjUyLCA1NCwgMjgsIDMsIDI1MiwgCisgICAgMjMzLCAyOCwgMywgMjUyLCAxMTIsIDI4LCAzLCAyNTIsIDEyMSwgMjgsIDMsIDI1MSwgMjUzLCAyOCwgMywgMjUxLCAxMzcsIAorICAgIDI4LCAzLCAyMTUsIDgsIDI4LCAzLCAyMTQsIDEwMywgMjgsIDMsIDIxNCwgMTU5LCAyOCwgMywgMjE1LCA3LCAyOCwgMywgCisgICAgMjE0LCAyMzIsIDI4LCAzLCAyMTQsIDIzNywgMjgsIDMsIDIxNCwgMTIzLCAyOCwgMywgMjE0LCA5NCwgMjgsIDMsIDIxOCwgCisgICAgNjYsIDI4LCAzLCAyMTYsIDkwLCAyOCwgMywgMjE3LCA4NCwgMjgsIDMsIDIxOCwgNjMsIDI4LCAzLCAyMTcsIDIzMiwgMjgsIAorICAgIDMsIDIxNywgMjQyLCAyOCwgMywgMTA5LCAyOCwgMywgMjE2LCA1MiwgMjgsIDMsIDI1MSwgODgsIDI4LCAzLCAyNDksIDE3NiwgCisgICAgMjgsIDMsIDI1MCwgMTExLCAyOCwgMywgMjUxLCA4NywgMjgsIDMsIDI1MCwgMjM5LCAyOCwgMywgMjUwLCAyNDcsIDI4LCAzLCAKKyAgICAyNTAsIDQyLCAyOCwgMywgMjQ5LCAxNDYsIDI4LCAzLCAyMTMsIDE1NiwgMjgsIDMsIDIxMywgMTMyLCAyOCwgMywgMjEzLCAKKyAgICAxNDgsIDI4LCAzLCAyMTMsIDE1NSwgMjgsIDMsIDIxMywgMTUyLCAyOCwgMywgMjEzLCAxNTMsIDI4LCAzLCAyMTMsIDEzOSwgCisgICAgMjgsIDMsIDIxMywgMTM4LCAyOCwgMywgMjEzLCAxMjcsIDI4LCAzLCAyMTMsIDEyMywgMjgsIDMsIDIxMywgMTI2LCAyOCwgCisgICAgMywgMjEzLCAxMjQsIDI4LCAzLCAyMTMsIDEyNSwgMjgsIDMsIDIwNywgMjgsIDMsIDIyOCwgMTM1LCAyOCwgMywgMjI5LCAKKyAgICAxMjgsIDI4LCAzLCAyMzAsIDExMiwgMjgsIDMsIDIyOSwgMjUxLCAyOCwgMywgMjI5LCAyNTQsIDI4LCAzLCAyMjgsIDIyOCwgCisgICAgMjgsIDMsIDIyOCwgNzMsIDI4LCAzLCAyMjgsIDY0LCAyOCwgMywgMjI4LCAyOSwgMjgsIDMsIDIyOCwgNDksIDI4LCAzLCAKKyAgICAyMjgsIDYzLCAyOCwgMywgMjI4LCA1NSwgMjgsIDMsIDIyOCwgNTYsIDI4LCAzLCAyMjgsIDM1LCAyOCwgMywgMjI4LCAyMCwgCisgICAgMjgsIDMsIDI0MywgMjAsIDYzLCAyOCwgMywgMjQzLCAyMCwgNzIsIDI4LCAzLCAyNDMsIDIwLCA3NSwgMjgsIDMsIDI0MywgCisgICAgMjAsIDI1NSwgMTA0LCAyOCwgMywgMjQzLCAyMCwgMjQ2LCAzMCwgMjgsIDMsIDI0MywgMjAsIDc3LCAyOCwgMywgMjQzLCAKKyAgICAyMCwgNzgsIDI4LCAzLCAyNDMsIDIwLCAyMTQsIDUyLCAyOCwgMywgMTgzLCAyOCwgMywgMjM0LCA4MSwgMjgsIDMsIDIzNCwgCisgICAgMjEyLCAyOCwgMywgMjM1LCAxMjgsIDI4LCAzLCAyMzUsIDQzLCAyOCwgMywgMjM1LCA0NCwgMjgsIDMsIDIzNCwgMTQ4LCAKKyAgICAyOCwgMywgMjM0LCAxNDcsIDI4LCAzLCAyMzQsIDQ2LCAyOCwgMywgMjM0LCA0MCwgMjgsIDMsIDIzNCwgNDUsIDI4LCAzLCAKKyAgICAyMzQsIDQxLCAyOCwgMywgMjM0LCA0MiwgMjgsIDMsIDIzNCwgMzUsIDI4LCAzLCAyMzQsIDI5LCAyOCwgMywgMjM0LCAzMSwgCisgICAgMjgsIDMsIDIzNCwgMzQsIDI4LCAzLCAyMzQsIDMyLCAyOCwgMywgMjM0LCAzMywgMjgsIDMsIDIzNCwgMzAsIDI4LCAzLCAKKyAgICAyMzQsIDI4LCAyOCwgMywgMjM0LCAyNCwgMjgsIDMsIDIzNCwgMjcsIDI4LCAzLCAyMzQsIDI1LCAyOCwgMywgMjM0LCAyNiwgCisgICAgMjgsIDMsIDIxNCwgNTIsIDI4LCAzLCAyMTMsIDE4NiwgMjgsIDMsIDIxMywgMjM4LCAyOCwgMywgMjE0LCA1MSwgMjgsIDMsIAorICAgIDIxNCwgNCwgMjgsIDMsIDIxNCwgOSwgMjgsIDMsIDIxMywgMjE3LCAyOCwgMywgMjEzLCAyMTYsIDI4LCAzLCAyMjYsIDUxLCAKKyAgICA2MywgMjgsIDMsIDIyNiwgNTEsIDcyLCAyOCwgMywgMjI2LCA1MSwgNzUsIDI4LCAzLCAyMjYsIDUxLCAyNTUsIDEwNCwgMjgsIAorICAgIDMsIDIyNiwgNTEsIDI0NiwgMzAsIDI4LCAzLCAyMjYsIDUxLCA3NywgMjgsIDMsIDIyNiwgNTEsIDc4LCAyOCwgMywgMjEyLCAKKyAgICAxMDksIDI4LCAzLCAyMTIsIDgsIDI4LCAzLCAyMTIsIDM3LCAyOCwgMywgMjEyLCAxMDgsIDI4LCAzLCAyMTIsIDg1LCAyOCwgCisgICAgMywgMjEyLCA4NywgMjgsIDMsIDIxMiwgMTYsIDI4LCAzLCAyMTEsIDI1MSwgMjgsIDMsIDIxMiwgNzUsIDI4LCAzLCAyMTIsIAorICAgIDU1LCAyOCwgMywgMjEyLCA2MiwgMjgsIDMsIDIxMiwgNzQsIDI4LCAzLCAyMTIsIDY2LCAyOCwgMywgMjEyLCA2NywgMjgsIAorICAgIDMsIDIxMiwgNjAsIDI4LCAzLCAyMTIsIDQ2LCAyOCwgMywgMTg5LCAyOCwgMywgMjEyLCAyMDQsIDI4LCAzLCAyMTMsIDAsIAorICAgIDI4LCAzLCAyMTMsIDk0LCAyOCwgMywgMjEzLCAzNiwgMjgsIDMsIDIxMywgMzksIDI4LCAzLCAyMTIsIDIzNiwgMjgsIDMsIAorICAgIDIxMiwgMjI3LCAyOCwgMywgMjQ5LCAzMCwgMjgsIDMsIDI0NiwgMTU0LCAyOCwgMywgMjQ4LCA3NiwgMjgsIDMsIDI0OSwgCisgICAgMjksIDI4LCAzLCAyNDgsIDE0OSwgMjgsIDMsIDI0OCwgMTYyLCAyOCwgMywgMjQ3LCAyMjAsIDI4LCAzLCAyNDYsIDEyMywgCisgICAgMjgsIDMsIDI0OCwgMjA3LCAyOCwgMywgMjQ4LCAxNzIsIDI4LCAzLCAyNDgsIDE4NCwgMjgsIDMsIDI0OCwgMjA2LCAyOCwgCisgICAgMywgMjQ4LCAxOTQsIDI4LCAzLCAyNDgsIDE5NSwgMjgsIDMsIDI0OCwgMTc3LCAyOCwgMywgMjQ4LCAxNjMsIDI4LCAzLCAKKyAgICAyMzYsIDAsIDI4LCAzLCAyMzUsIDE2OCwgMjgsIDMsIDIzNSwgMjI1LCAyOCwgMywgMjM1LCAyNTUsIDI4LCAzLCAyMzUsIAorICAgIDI0MCwgMjgsIDMsIDIzNSwgMjQyLCAyOCwgMywgMjM1LCAxODUsIDI4LCAzLCAyMzUsIDE0OSwgMjgsIDMsIDI0MywgMjMwLCAKKyAgICAyOCwgMywgMjQyLCAyMTMsIDI4LCAzLCAyNDMsIDU0LCAyOCwgMywgMjQzLCAyMjcsIDI4LCAzLCAyNDMsIDE1MSwgMjgsIDMsIAorICAgIDI0MywgMTU4LCAyOCwgMywgMjQzLCAxNCwgMjgsIDMsIDI0MywgMTMsIDI4LCAzLCAyNDIsIDE4MCwgMjgsIDMsIDI0MiwgCisgICAgMTc2LCAyOCwgMywgMjQyLCAxNzksIDI4LCAzLCAyNDIsIDE3NywgMjgsIDMsIDI0MiwgMTc4LCAyOCwgMywgMjQzLCAxMjUsIAorICAgIDI4LCAzLCAyNDMsIDEwNSwgMjgsIDMsIDI0MywgMTE1LCAyOCwgMywgMjQzLCAxMjQsIDI4LCAzLCAyNDMsIDExOSwgMjgsIAorICAgIDMsIDI0MywgMTIwLCAyOCwgMywgMjQzLCAxMDksIDI4LCAzLCAyNDMsIDk0LCAyOCwgMywgMjE3LCAxNzQsIDI4LCAzLCAKKyAgICAyMTcsIDEwMywgMjgsIDMsIDIxNywgMTQxLCAyOCwgMywgMjE3LCAxNzMsIDI4LCAzLCAyMTcsIDE2MCwgMjgsIDMsIDIxNywgCisgICAgMTYxLCAyOCwgMywgMjE3LCAxMjIsIDI4LCAzLCAyMTcsIDk1LCAyOCwgMywgMjUwLCAyMTUsIDI4LCAzLCAyNTAsIDEyOSwgCisgICAgMjgsIDMsIDI1MCwgMTcwLCAyOCwgMywgMjUwLCAyMTQsIDI4LCAzLCAyNTAsIDE4NywgMjgsIDMsIDI1MCwgMTkwLCAyOCwgCisgICAgMywgMjUwLCAxNDYsIDI4LCAzLCAyNTAsIDExOCwgMjgsIDMsIDIyNiwgNTksIDI4LCAzLCAyMjYsIDI2LCAyOCwgMywgMjI2LCAKKyAgICA0NSwgMjgsIDMsIDIyNiwgNTgsIDI4LCAzLCAyMjYsIDQ3LCAyOCwgMywgMjI2LCA0OCwgMjgsIDMsIDIyNiwgMzMsIDI4LCAKKyAgICAzLCAyMjYsIDIyLCAyOCwgMywgMjE2LCAxNTQsIDI4LCAzLCAyMTYsIDEzNSwgMjgsIDMsIDIxNiwgMTM4LCAyOCwgMywgCisgICAgMjE2LCAxNTMsIDI4LCAzLCAyMTYsIDE0OCwgMjgsIDMsIDIxNiwgMTQ5LCAyOCwgMywgMjE2LCAxMzcsIDI4LCAzLCAyMTYsIAorICAgIDEzMywgMjgsIDMsIDIxNiwgMTIsIDI4LCAzLCAyMTYsIDQsIDI4LCAzLCAyMTYsIDgsIDI4LCAzLCAyMTYsIDExLCAyOCwgMywgCisgICAgMjE2LCA5LCAyOCwgMywgMjE2LCAxMCwgMjgsIDMsIDIxNiwgNiwgMjgsIDMsIDIxNiwgNSwgMjgsIDMsIDI0NSwgMjksIDI4LCAKKyAgICAzLCAyNDQsIDY5LCAyOCwgMywgMjQ0LCAyMTAsIDI4LCAzLCAyNDUsIDI4LCAyOCwgMywgMjQ0LCAyMzYsIDI4LCAzLCAyNDQsIAorICAgIDI0MywgMjgsIDMsIDI0NCwgMTMyLCAyOCwgMywgMjQ0LCA1MiwgMjgsIDMsIDE5NSwgMjgsIDMsIDIyNSwgNzEsIDI4LCAzLCAKKyAgICAyMjYsIDIwLCAyOCwgMywgMjI2LCAyNTEsIDI4LCAzLCAyMjYsIDEyMiwgMjgsIDMsIDIyNiwgMTMyLCAyOCwgMywgMjI1LCAKKyAgICAxODYsIDI4LCAzLCAyMjUsIDM3LCAyOCwgMywgMjIzLCAzNiwgMjgsIDMsIDIzMCwgMTcyLCAyOCwgMywgMjQ0LCA0NiwgMjgsIAorICAgIDM4LCAyNDMsIDE0OSwgMjIsIDMwLCAyMzMsIDE0NSwgNzksIDI4LCAzOCwgMzAsIDIzMywgMTQ1LCA3OSwgMjgsIDM4LCAKKyAgICAyNDMsIDE0OSwgNzksIDI4LCAyMjIsIDExNSwgNzksIDI4LCAyMTMsIDE5OCwgMjgsIDI0NCwgNjQsIDIxOSwgODMsIDI4LCAKKyAgICAyNTAsIDIzLCAyOCwgMjIxLCA5MywgMjgsIDI1MCwgMzAsIDI4LCAyMjUsIDExNSwgMjUwLCAzMCwgMjgsIDIyNCwgMTkzLCAKKyAgICA3OSwgMjgsIDIyNiwgMTgwLCAyMjEsIDgwLCAyOCwgMjEsIDExOCwgMjgsIDIxLCAxMTIsIDI4LCAyMSwgMTcwLCAyOCwgMjEsIAorICAgIDE2NywgMjgsIDIxLCAxODUsIDI4LCAyMSwgMTkyLCAyOCwgMjEsIDIwMCwgMjgsIDIxLCAxOTgsIDI4LCAyMSwgMjAzLCAyOCwgCisgICAgNTEsIDIxNywgMjEzLCAyOCwgNTEsIDIxNiwgNDUsIDI4LCA1MSwgMjE3LCAxMjgsIDI4LCA1MSwgMjQ0LCAxMDQsIDI4LCAKKyAgICA1MSwgMjQ0LCAyMDMsIDI4LCA1MSwgMjIwLCA1OCwgMjgsIDUxLCAyMjEsIDYwLCAyOCwgNTEsIDI0NiwgNiwgMjgsIDUxLCAKKyAgICAyMjksIDkwLCAyOCwgNTEsIDI0MSwgNjIsIDI4LCA1MSwgMjE3LCAyMTQsIDIxNywgMTEzLCAyOCwgMywgMjIyLCAxMTksIAorICAgIDIzMCwgMTgzLCAyOCwgMywgMjMwLCAxNzksIDI4LCAzLCAyMzAsIDE4MCwgMjgsIDMsIDIzMCwgMTgxLCAyOCwgMywgMjIyLCAKKyAgICAxMTksIDI1MSwgMTM3LCAyOCwgMywgMjUxLCAxMzQsIDI4LCAzLCAyNTEsIDEzNSwgMjgsIDMsIDI1MSwgMTM2LCAyOCwgMywgCisgICAgMjIyLCAxMTksIDI0NCwgNTIsIDI4LCAzLCAyNDQsIDQ4LCAyOCwgMywgMjQ0LCA0OSwgMjgsIDMsIDI0NCwgNTAsIDI4LCAzLCAKKyAgICAyMjIsIDExOSwgMjI1LCAzNywgMjgsIDMsIDIyNSwgMzMsIDI4LCAzLCAyMjUsIDM0LCAyOCwgMywgMjI1LCAzNSwgMjgsIAorICAgIDIxNiwgMjU1LCAxNTYsIDIxMiwgMjM5LCAyOCwgMjE2LCAyNTUsIDE1NiwgMjQ4LCAxMTMsIDI4LCAyMTYsIDI1NSwgMTU2LCAKKyAgICAyMjMsIDE2OSwgMjgsIDIxNiwgMjU1LCAxNTYsIDIyMCwgMTk2LCAyMjMsIDE2OSwgMjgsIDIxNiwgMjU1LCAxNTYsIDI0OCwgCisgICAgNTIsIDI4LCAyMTYsIDI1NSwgMTU2LCAyMzUsIDI2LCAyOCwgMjE2LCAyNTUsIDE1NiwgMjUwLCAxNTQsIDI4LCAyMTYsIAorICAgIDI1NSwgMTU2LCAyNDIsIDI1LCAyOCwgMjE2LCAyNTUsIDE1NiwgMjQ4LCAxMTIsIDI4LCAyMTYsIDI1NSwgMTU2LCAyMzQsIAorICAgIDU4LCAxNjQsIDEsIDYzLCAxNjQsIDEsIDc3LCAxNjQsIDEsIDc1LCAxNjQsIDEsIDc4LCAxNjQsIDEsIDcyLCAxNjQsIDEsIAorICAgIDIxMSwgMjExLCAxNjQsIDEsIDI0MywgMjMwLCAxNjQsIDEsIDE4MywgMTY0LCAxLCAyNDMsIDE1OCwgMTY0LCAxLCAyNDMsIAorICAgIDU0LCAxNjQsIDEsIDI0MywgMTQsIDE2NCwgMSwgMjQyLCAyMTMsIDE2NCwgMSwgMjQyLCAxODEsIDE2NCwgMSwgMTYyLCAKKyAgICAxNjQsIDEsIDI0MiwgODUsIDE2NCwgMSwgMjQyLCAyOCwgMTY0LCAxLCAyNDEsIDE3MywgMTY0LCAxLCAyNDEsIDc0LCAxNjQsIAorICAgIDEsIDI0MSwgNTQsIDE2NCwgMSwgMjMzLCAyNTUsIDE2NCwgMSwgMjMzLCAxODAsIDE2NCwgMSwgMjMzLCAxMTEsIDE2NCwgMSwgCisgICAgMjMzLCAyNiwgMTY0LCAxLCAyMzIsIDIzMCwgMTY0LCAxLCAyMzIsIDIwMywgMTY0LCAxLCAxOTEsIDE2NCwgMSwgMjMxLCAKKyAgICAyMjYsIDE2NCwgMSwgMjMxLCAxMTIsIDE2NCwgMSwgMjMxLCA0NSwgMTY0LCAxLCAyMzAsIDI0MiwgMTY0LCAxLCAyMDcsIAorICAgIDE2NCwgMSwgMjQxLCAxOTUsIDE2NCwgMSwgMjMwLCAxMDAsIDE2NCwgMSwgMjI5LCAyNTQsIDE2NCwgMSwgMjI5LCAxMjgsIAorICAgIDE2NCwgMSwgMjI4LCAyMjgsIDE2NCwgMSwgMjI4LCAxMzUsIDE2NCwgMSwgMjI4LCA3NSwgMTY0LCAxLCAyMjQsIDIwOSwgCisgICAgMTY0LCAxLCAyMjQsIDE5NiwgMTY0LCAxLCAyMjQsIDE4OSwgMTY0LCAxLCAyMjQsIDE4MSwgMTY0LCAxLCAyMjQsIDE3MCwgCisgICAgMTY0LCAxLCAyMjQsIDE2OCwgMTY0LCAxLCAyMjIsIDIyNywgMTY0LCAxLCAxOTYsIDE2NCwgMSwgMjIyLCAxMjMsIDE2NCwgCisgICAgMSwgMjIwLCAxMzYsIDE2NCwgMSwgMjIwLCA1LCAxNjQsIDEsIDIxOSwgNDEsIDE2NCwgMSwgMjE4LCAyMTcsIDE2NCwgMSwgCisgICAgMjQ5LCAzMCwgMTY0LCAxLCAyMTgsIDY2LCAxNjQsIDEsIDI0OCwgMTYyLCAxNjQsIDEsIDIxNywgMjQyLCAxNjQsIDEsIAorICAgIDI0OCwgNzYsIDE2NCwgMSwgMjE3LCA4NCwgMTY0LCAxLCAyNDcsIDIyMCwgMTY0LCAxLCAyNDYsIDE1NCwgMTY0LCAxLCAKKyAgICAyNDYsIDEyNiwgMTY0LCAxLCAyNDcsIDIyOSwgMTY0LCAxLCAyMTcsIDI2LCAxNjQsIDEsIDIxNywgMjUsIDE2NCwgMSwgCisgICAgMjE3LCAxNSwgMTY0LCAxLCAyMTcsIDE0LCAxNjQsIDEsIDIxNywgMTMsIDE2NCwgMSwgMjE3LCAxMiwgMTY0LCAxLCAyMTYsIAorICAgIDE1NCwgMTY0LCAxLCAyMTYsIDE0OSwgMTY0LCAxLCAyMTYsIDEzOCwgMTY0LCAxLCAyMTYsIDEzNywgMTY0LCAxLCAyMTYsIAorICAgIDEzNSwgMTY0LCAxLCAyMTYsIDEzNCwgMTY0LCAxLCAyMTQsIDUyLCAxNjQsIDEsIDIxNCwgOSwgMTY0LCAxLCAyMTMsIDIzOCwgCisgICAgMTY0LCAxLCAyMTMsIDIxNywgMTY0LCAxLCAyMTMsIDE4NiwgMTY0LCAxLCAyMTMsIDE3NCwgMTY0LCAxLCAxODksIDE2NCwgCisgICAgMSwgMjEzLCAzOSwgMTY0LCAxLCAyMTMsIDAsIDE2NCwgMSwgMjEyLCAyMzYsIDE2NCwgMSwgMjEyLCAyMDQsIDE2NCwgMSwgCisgICAgMjEyLCAxNjksIDE4LCAxOSwgMjQxLCAyMSwgMTgsIDE5LCA3NywgMTgsIDE5LCAyNTUsIDY4LCAxOCwgMTksIDc1LCAxOCwgCisgICAgMTksIDIzNiwgMTQ1LCAxOCwgMTksIDc4LCAxOCwgMTksIDIyNywgODYsIDE4LCAxOSwgMjEzLCAxMDcsIDIyNywgODYsIDE4LCAKKyAgICAxOSwgNzAsIDI0NiwgMzAsIDE4LCAxOSwgNzAsIDc1LCAxOCwgMTksIDYzLCAxOCwgMTksIDI1NSwgMTA0LCAxOCwgMTksIAorICAgIDIxNCwgOSwgMTgsIDE5LCAxNTMsIDIxNCwgOSwgMTgsIDE5LCAyMTMsIDIzOCwgMTgsIDE5LCAxNTMsIDIxMywgMjM4LCAxOCwgCisgICAgMTksIDIxMywgMjMwLCAxOCwgMTksIDE1MywgMjEzLCAyMzAsIDE4LCAxOSwgMjEzLCAyMTcsIDE4LCAxOSwgMTUzLCAyMTMsIAorICAgIDIxNywgMTgsIDE5LCAyMTMsIDIwNSwgMTgsIDE5LCAxNTMsIDIxMywgMjA1LCAxOCwgMTksIDIzMCwgNzksIDIxMywgMjA1LCAKKyAgICAxOCwgMTksIDIxNCwgNTIsIDE4LCAxOSwgMTUzLCAyMTQsIDUyLCAxOCwgMTksIDIxNCwgNTEsIDE4LCAxOSwgMTUzLCAyMTQsIAorICAgIDUxLCAxOCwgMTksIDIzMCwgNzksIDIxNCwgNTEsIDE4LCAxOSwgMjU0LCAyMzYsIDE4LCAxOSwgMjEzLCAxMDcsIDIxNCwgCisgICAgODUsIDE4LCAxOSwgMjQzLCAyMCwgMjE5LCA4MywgMTgsIDE5LCA0MSwgMTM4LCAxOCwgMTksIDQxLCAyMDksIDE4LCAxOSwgCisgICAgNDEsIDI1MSwgMjI2LCAxNTcsIDIyMywgMTY0LCAxOCwgMTksIDQxLCAyMTYsIDI0MCwgMTU3LCAyMjMsIDE2NCwgMTgsIDE5LCAKKyAgICA0MSwgNDcsIDE1NywgMjIzLCAxNjQsIDE4LCAxOSwgNDEsIDIyMywgMTY0LCAxOCwgMTksIDQxLCA1MiwgMTM4LCAxOCwgMTksIAorICAgIDQxLCA1MiwgMjIwLCAxOTYsIDY2LCAyMTksIDQ2LCAxOCwgMTksIDQxLCAyMzEsIDEwNywgMjQ3LCAxOTUsIDE4LCAxOSwgCisgICAgNDEsIDIyMCwgMTk2LCAyMDEsIDkxLCAxOCwgMTksIDQxLCAyMjUsIDE5MiwgMTgsIDE5LCA0MSwgMTIxLCAyMTgsIDUwLCAKKyAgICAxOCwgMTksIDI0NSwgMjI5LCAxOCwgMTksIDIzNiwgMTEyLCAxOCwgMTksIDIyNywgOTksIDE4LCAxOSwgMjU0LCAxNTksIAorICAgIDE4LCAxOSwgMjI2LCAxMzIsIDE4LCAxOSwgMjI2LCAyNDksIDE4LCAxOSwgMjI2LCAyMCwgMTgsIDE5LCAyMjUsIDIzOSwgCisgICAgMTgsIDE5LCAyMjUsIDE4NiwgMTgsIDE5LCAyMjUsIDE2NSwgMTgsIDE5LCAyMTMsIDEwNywgMjI1LCAxNjUsIDE4LCAxOSwgCisgICAgNzAsIDI0MiwgNjcsIDE4LCAxOSwgNzAsIDI0MiwgMjgsIDE4LCAxOSwgMTk1LCAxOCwgMTksIDIyNiwgMjUxLCAxOCwgMTksIAorICAgIDIyNSwgMzUsIDE4LCAxOSwgMTUzLCAyMjUsIDM1LCAxOCwgMTksIDIyNSwgMzMsIDE4LCAxOSwgMTUzLCAyMjUsIDMzLCAxOCwgCisgICAgMTksIDIyNSwgMzIsIDE4LCAxOSwgMTUzLCAyMjUsIDMyLCAxOCwgMTksIDIyNSwgMzAsIDE4LCAxOSwgMTUzLCAyMjUsIDMwLCAKKyAgICAxOCwgMTksIDIyNSwgMjksIDE4LCAxOSwgMTUzLCAyMjUsIDI5LCAxOCwgMTksIDIyNSwgMzcsIDE4LCAxOSwgMTUzLCAyMjUsIAorICAgIDM3LCAxOCwgMTksIDIyNSwgMzYsIDE4LCAxOSwgMTUzLCAyMjUsIDM2LCAxOCwgMTksIDIxMywgMTA3LCAyMjUsIDM2LCAxOCwgCisgICAgMTksIDIyNywgMTEsIDE4LCAxOSwgMTUzLCAyMjcsIDExLCAxOCwgMTksIDcwLCAyNDIsIDE2MiwgMTgsIDE5LCAyMTcsIAorICAgIDI0MiwgMTgsIDE5LCAyMTgsIDYxLCAxOCwgMTksIDIxNywgODQsIDE4LCAxOSwgMjE3LCA3MCwgMTgsIDE5LCAxMDksIDE4LCAKKyAgICAxOSwgMjE2LCAyNDMsIDE4LCAxOSwgMjEzLCAxMDcsIDIxNiwgMjQzLCAxOCwgMTksIDcwLCAyNDgsIDE0OSwgMTgsIDE5LCAKKyAgICA3MCwgMjQ4LCA3NiwgMTgsIDE5LCAyMTgsIDY2LCAxOCwgMTksIDIxOCwgNjMsIDE4LCAxOSwgMjE2LCA1MCwgMTgsIDE5LCAKKyAgICAxNTMsIDIxNiwgNTAsIDE4LCAxOSwgMjE2LCAzNCwgMTgsIDE5LCAxNTMsIDIxNiwgMzQsIDE4LCAxOSwgMjE2LCAzMywgMTgsIAorICAgIDE5LCAxNTMsIDIxNiwgMzMsIDE4LCAxOSwgMTEyLCAxOCwgMTksIDE1MywgMTEyLCAxOCwgMTksIDIxNiwgMjcsIDE4LCAxOSwgCisgICAgMTUzLCAyMTYsIDI3LCAxOCwgMTksIDIxNiwgNTIsIDE4LCAxOSwgMTUzLCAyMTYsIDUyLCAxOCwgMTksIDIxNiwgNTEsIDE4LCAKKyAgICAxOSwgMTUzLCAyMTYsIDUxLCAxOCwgMTksIDIzMCwgNzksIDIxNiwgNTEsIDE4LCAxOSwgMjE4LCAxMTMsIDE4LCAxOSwgCisgICAgMjE2LCAxMjMsIDE4LCAxOSwgMjE2LCAxMDcsIDE4LCAxOSwgMjE2LCAxMDUsIDE4LCAxOSwgMjE2LCAxMjgsIDE4LCAxOSwgCisgICAgMjM1LCA0NCwgMTgsIDE5LCAyMzUsIDEyNSwgMTgsIDE5LCAyMzQsIDIxMiwgMTgsIDE5LCAyMzQsIDIwMywgMTgsIDE5LCAKKyAgICAyMzQsIDE0OCwgMTgsIDE5LCAyMzQsIDEzMCwgMTgsIDE5LCAyMTMsIDEwNywgMjM0LCAxMzAsIDE4LCAxOSwgMTgzLCAxOCwgCisgICAgMTksIDIzNSwgMTI4LCAxOCwgMTksIDIzNCwgNDIsIDE4LCAxOSwgMTUzLCAyMzQsIDQyLCAxOCwgMTksIDIzNCwgNDAsIDE4LCAKKyAgICAxOSwgMTUzLCAyMzQsIDQwLCAxOCwgMTksIDIzNCwgMzksIDE4LCAxOSwgMTUzLCAyMzQsIDM5LCAxOCwgMTksIDIzNCwgMzgsIAorICAgIDE4LCAxOSwgMTUzLCAyMzQsIDM4LCAxOCwgMTksIDIzNCwgMzcsIDE4LCAxOSwgMTUzLCAyMzQsIDM3LCAxOCwgMTksIDIzNCwgCisgICAgNDYsIDE4LCAxOSwgMTUzLCAyMzQsIDQ2LCAxOCwgMTksIDIzNCwgNDUsIDE4LCAxOSwgMTUzLCAyMzQsIDQ1LCAxOCwgMTksIAorICAgIDIzMCwgNzksIDIzNCwgNDUsIDE4LCAxOSwgMjM1LCAxNDEsIDE4LCAxOSwgMjM0LCA0NywgMTgsIDE5LCAyMTksIDIzMywgCisgICAgMjM1LCAzOCwgMTgsIDE5LCAyMTksIDIzMywgMjM0LCAyMDQsIDE4LCAxOSwgMjE5LCAyMzMsIDIzNCwgMTQzLCAxOCwgMTksIAorICAgIDIxOSwgMjMzLCAyMzUsIDExMCwgMTgsIDE5LCAyNTAsIDI0NywgMTgsIDE5LCAyNTEsIDg2LCAxOCwgMTksIDI1MCwgMTExLCAKKyAgICAxOCwgMTksIDI1MCwgMTAxLCAxOCwgMTksIDI1MCwgNDIsIDE4LCAxOSwgMjQ5LCAyMzYsIDE4LCAxOSwgMjEzLCAxMDcsIAorICAgIDI0OSwgMjM2LCAxOCwgMTksIDI1MSwgODgsIDE4LCAxOSwgMjUxLCA4NywgMTgsIDE5LCAyNDksIDE0NCwgMTgsIDE5LCAKKyAgICAxNTMsIDI0OSwgMTQ0LCAxOCwgMTksIDI0OSwgMTQyLCAxOCwgMTksIDE1MywgMjQ5LCAxNDIsIDE4LCAxOSwgMjQ5LCAxNDEsIAorICAgIDE4LCAxOSwgMTUzLCAyNDksIDE0MSwgMTgsIDE5LCAyNDksIDE0MCwgMTgsIDE5LCAxNTMsIDI0OSwgMTQwLCAxOCwgMTksIAorICAgIDI0OSwgMTM5LCAxOCwgMTksIDE1MywgMjQ5LCAxMzksIDE4LCAxOSwgMjQ5LCAxNDYsIDE4LCAxOSwgMTUzLCAyNDksIDE0NiwgCisgICAgMTgsIDE5LCAyNDksIDE0NSwgMTgsIDE5LCAxNTMsIDI0OSwgMTQ1LCAxOCwgMTksIDIzMCwgNzksIDI0OSwgMTQ1LCAxOCwgCisgICAgMTksIDI1MSwgMTIxLCAxOCwgMTksIDIyMiwgMTUwLCAyMTcsIDE3NiwgMTgsIDE5LCAyMzEsIDIyNiwgMTgsIDE5LCAyMzIsIAorICAgIDExMywgMTgsIDE5LCAyMzEsIDExMiwgMTgsIDE5LCAyMzEsIDg0LCAxOCwgMTksIDIzMSwgNDUsIDE4LCAxOSwgMjMxLCAxNiwgCisgICAgMTgsIDE5LCAyMTMsIDEwNywgMjMxLCAxNiwgMTgsIDE5LCAxOTEsIDE4LCAxOSwgMjMyLCAxMTQsIDE4LCAxOSwgMjMwLCAKKyAgICAxODEsIDE4LCAxOSwgMTUzLCAyMzAsIDE4MSwgMTgsIDE5LCAyMzAsIDE3OSwgMTgsIDE5LCAxNTMsIDIzMCwgMTc5LCAxOCwgCisgICAgMTksIDIzMCwgMTc4LCAxOCwgMTksIDE1MywgMjMwLCAxNzgsIDE4LCAxOSwgMjMwLCAxNzcsIDE4LCAxOSwgMTUzLCAyMzAsIAorICAgIDE3NywgMTgsIDE5LCAyMzAsIDE3NiwgMTgsIDE5LCAxNTMsIDIzMCwgMTc2LCAxOCwgMTksIDIzMCwgMTgzLCAxOCwgMTksIAorICAgIDE1MywgMjMwLCAxODMsIDE4LCAxOSwgMjMwLCAxODIsIDE4LCAxOSwgMTUzLCAyMzAsIDE4MiwgMTgsIDE5LCAyMzAsIDc5LCAKKyAgICAyMzAsIDE4MiwgMTgsIDE5LCAxODQsIDE4LCAxOSwgMTUzLCAxODQsIDE4LCAxOSwgMjMxLCAxMTUsIDE4LCAxOSwgMjUzLCAKKyAgICAyNDgsIDE4NCwgMTgsIDE5LCAyMjIsIDE1MCwgMTg0LCAxOCwgMTksIDIyOSwgMjU0LCAxOCwgMTksIDIzMCwgMTExLCAxOCwgCisgICAgMTksIDIyOSwgMTI4LCAxOCwgMTksIDIyOSwgMTAzLCAxOCwgMTksIDIyOCwgMjI4LCAxOCwgMTksIDIyOCwgMjE4LCAxOCwgCisgICAgMTksIDIxMywgMTA3LCAyMjgsIDIxOCwgMTgsIDE5LCAyMDcsIDE4LCAxOSwgMjMwLCAxMTIsIDE4LCAxOSwgMjI4LCA3MSwgCisgICAgMTgsIDE5LCAxNTMsIDIyOCwgNzEsIDE4LCAxOSwgMjI4LCA3MywgMTgsIDE5LCAxNTMsIDIyOCwgNzMsIDE4LCAxOSwgMjI4LCAKKyAgICA3MiwgMTgsIDE5LCAxNTMsIDIyOCwgNzIsIDE4LCAxOSwgMjMwLCA3OSwgMjI4LCA3MiwgMTgsIDE5LCAyMDYsIDE4LCAxOSwgCisgICAgNzAsIDIyOSwgMjI4LCAxOCwgMTksIDIyOSwgMTMzLCAxOCwgMTksIDIzMywgMTgwLCAxOCwgMTksIDIzMywgMjUzLCAxOCwgCisgICAgMTksIDIzMywgMTExLCAxOCwgMTksIDIzMywgOTcsIDE4LCAxOSwgMjMzLCAyNiwgMTgsIDE5LCAyMzIsIDI1NCwgMTgsIDE5LCAKKyAgICAyMTMsIDEwNywgMjMyLCAyNTQsIDE4LCAxOSwgMjMzLCAyNTUsIDE4LCAxOSwgMjMzLCAyNTQsIDE4LCAxOSwgMjMyLCAyMDAsIAorICAgIDE4LCAxOSwgMTUzLCAyMzIsIDIwMCwgMTgsIDE5LCAyMzIsIDE5OSwgMTgsIDE5LCAxNTMsIDIzMiwgMTk5LCAxOCwgMTksIAorICAgIDIzMiwgMTk4LCAxOCwgMTksIDE1MywgMjMyLCAxOTgsIDE4LCAxOSwgMjMyLCAxOTcsIDE4LCAxOSwgMTUzLCAyMzIsIDE5NywgCisgICAgMTgsIDE5LCAyMzIsIDE5NiwgMTgsIDE5LCAxNTMsIDIzMiwgMTk2LCAxOCwgMTksIDIzMiwgMjAyLCAxOCwgMTksIDE1MywgCisgICAgMjMyLCAyMDIsIDE4LCAxOSwgMjMyLCAyMDEsIDE4LCAxOSwgMTUzLCAyMzIsIDIwMSwgMTgsIDE5LCAxNTUsIDE4LCAxOSwgCisgICAgMTUzLCAxNTUsIDE4LCAxOSwgMTQ0LCAxNTUsIDE4LCAxOSwgMjIyLCAxMjMsIDE4LCAxOSwgMjIyLCAyMjMsIDE4LCAxOSwgCisgICAgMjIwLCAxMzYsIDE4LCAxOSwgMjIwLCAxMjAsIDE4LCAxOSwgMjIwLCA1LCAxOCwgMTksIDIxOSwgMjQ1LCAxOCwgMTksIAorICAgIDIxMywgMTA3LCAyMTksIDI0NSwgMTgsIDE5LCAyMjIsIDIyNywgMTgsIDE5LCAyMjIsIDIyNSwgMTgsIDE5LCAyMTgsIDIwOCwgCisgICAgMTgsIDE5LCAxNTMsIDIxOCwgMjA4LCAxOCwgMTksIDIxOCwgMjAyLCAxOCwgMTksIDE1MywgMjE4LCAyMDIsIDE4LCAxOSwgCisgICAgMjE4LCAyMDEsIDE4LCAxOSwgMTUzLCAyMTgsIDIwMSwgMTgsIDE5LCAyMTgsIDE5NywgMTgsIDE5LCAxNTMsIDIxOCwgMTk3LCAKKyAgICAxOCwgMTksIDIxOCwgMTk2LCAxOCwgMTksIDE1MywgMjE4LCAxOTYsIDE4LCAxOSwgMjE4LCAyMTIsIDE4LCAxOSwgMTUzLCAKKyAgICAyMTgsIDIxMiwgMTgsIDE5LCAyMTgsIDIxMSwgMTgsIDE5LCAxNTMsIDIxOCwgMjExLCAxOCwgMTksIDIzMCwgNzksIDIxOCwgCisgICAgMjExLCAxOCwgMTksIDE5NiwgMTgsIDE5LCAyNTMsIDI0OCwgMTk2LCAxOCwgMTksIDIxOCwgMjEzLCAxOCwgMTksIDI1MiwgCisgICAgMTAsIDE5NiwgMTgsIDE5LCAyMzEsIDExLCAyMjAsIDU1LCAxOCwgMTksIDIzMCwgNzksIDIyMCwgNDYsIDE4LCAxOSwgMjMwLCAKKyAgICA3OSwgMjIzLCAyNywgMTgsIDE5LCAyMzAsIDc5LCAyMTksIDE4NiwgMTgsIDE5LCAyMzAsIDc5LCAyMTksIDQzLCAxOCwgMTksIAorICAgIDIzMCwgNzksIDIyMCwgNDUsIDE4LCAxOSwgMjMwLCA3OSwgMjIyLCAxMjYsIDE4LCAxOSwgMjIxLCA4LCAxOCwgMTksIDIyMCwgCisgICAgMjMzLCAxOCwgMTksIDIyMCwgMjI4LCAxOCwgMTksIDIyMCwgMjA4LCAxOCwgMTksIDIyMCwgMjAyLCAxOCwgMTksIDIyMSwgCisgICAgNDcsIDE4LCAxOSwgMjIxLCA0MywgMTgsIDE5LCAyMjAsIDE1MSwgMTgsIDE5LCAxNTMsIDIyMCwgMTUxLCAxOCwgMTksIAorICAgIDIyMCwgMTUwLCAxOCwgMTksIDE1MywgMjIwLCAxNTAsIDE4LCAxOSwgMjIwLCAxNDksIDE4LCAxOSwgMTUzLCAyMjAsIDE0OSwgCisgICAgMTgsIDE5LCAyMjAsIDE0OCwgMTgsIDE5LCAxNTMsIDIyMCwgMTQ4LCAxOCwgMTksIDIyMCwgMTQ3LCAxOCwgMTksIDE1MywgCisgICAgMjIwLCAxNDcsIDE4LCAxOSwgMjIwLCAxNTMsIDE4LCAxOSwgMTUzLCAyMjAsIDE1MywgMTgsIDE5LCAyMjAsIDE1MiwgMTgsIAorICAgIDE5LCAxNTMsIDIyMCwgMTUyLCAxOCwgMTksIDIyMSwgNDksIDE4LCAxOSwgMjEzLCAzOSwgMTgsIDE5LCAyMTMsIDkyLCAxOCwgCisgICAgMTksIDIxMywgMCwgMTgsIDE5LCAyMTIsIDI0NywgMTgsIDE5LCAyMTIsIDIzNiwgMTgsIDE5LCAyMTIsIDIyMSwgMTgsIDE5LCAKKyAgICAyMTMsIDEwNywgMjEyLCAyMjEsIDE4LCAxOSwgMTg5LCAxOCwgMTksIDIxMywgOTQsIDE4LCAxOSwgMjEyLCAxNjYsIDE4LCAKKyAgICAxOSwgMTUzLCAyMTIsIDE2NiwgMTgsIDE5LCAyMTIsIDE2NSwgMTgsIDE5LCAxNTMsIDIxMiwgMTY1LCAxOCwgMTksIDIxMiwgCisgICAgMTY0LCAxOCwgMTksIDE1MywgMjEyLCAxNjQsIDE4LCAxOSwgMjEyLCAxNjMsIDE4LCAxOSwgMTUzLCAyMTIsIDE2MywgMTgsIAorICAgIDE5LCAyMTIsIDE2MiwgMTgsIDE5LCAxNTMsIDIxMiwgMTYyLCAxOCwgMTksIDIxMiwgMTY4LCAxOCwgMTksIDE1MywgMjEyLCAKKyAgICAxNjgsIDE4LCAxOSwgMjEyLCAxNjcsIDE4LCAxOSwgMTUzLCAyMTIsIDE2NywgMTgsIDE5LCAyMzAsIDc5LCAyMTIsIDE2NywgCisgICAgMTgsIDE5LCAyMTMsIDEwOCwgMTgsIDE5LCAyNTIsIDUyLCAyMTMsIDEwOCwgMTgsIDE5LCAxNTMsIDIxMywgMTA4LCAxOCwgCisgICAgMTksIDIyMiwgMTUwLCAyMTMsIDAsIDE4LCAxOSwgMjI0LCA1NSwgMTgsIDE5LCAyMjQsIDE0NywgMjI0LCA1NSwgMTgsIDE5LCAKKyAgICAxNTMsIDIzMywgMTgwLCAxOCwgMTksIDIyNCwgMTA4LCAxOCwgMTksIDIyMywgMjIyLCAxOCwgMTksIDIyMywgMTcwLCAxOCwgCisgICAgMTksIDIyMywgMTQ2LCAxOCwgMTksIDIyMywgMTMzLCAxOCwgMTksIDE1MywgMjMzLCAyNiwgMTgsIDE5LCAyMDgsIDE4LCAKKyAgICAxOSwgMjI0LCAxMDksIDE4LCAxOSwgMTUzLCAyMzMsIDI1NSwgMTgsIDE5LCAyMjMsIDQ1LCAxOCwgMTksIDE1MywgMjIzLCAKKyAgICA0NSwgMTgsIDE5LCAxNTIsIDE4LCAxOSwgMTUzLCAxNTIsIDE4LCAxOSwgMTQ0LCAxNTIsIDE4LCAxOSwgMjQ0LCAyNDMsIAorICAgIDE4LCAxOSwgMjQ1LCAyNiwgMTgsIDE5LCAyNDQsIDIxMCwgMTgsIDE5LCAyNDQsIDE5NywgMTgsIDE5LCAyNDQsIDEzMiwgCisgICAgMTgsIDE5LCAyNDQsIDEyMywgMTgsIDE5LCAyNDUsIDI5LCAxOCwgMTksIDI0NSwgMjgsIDE4LCAxOSwgMjQ0LCA1MSwgMTgsIAorICAgIDE5LCAxNTMsIDI0NCwgNTEsIDE4LCAxOSwgMjQ1LCA5NSwgMTgsIDE5LCAyMTcsIDE2MSwgMTgsIDE5LCAyMzAsIDE2NSwgCisgICAgMjE3LCAxNjEsIDE4LCAxOSwgMjE3LCAxNDEsIDE4LCAxOSwgMjMwLCAxNjUsIDIxNywgMTQxLCAxOCwgMTksIDIxNywgMTM3LCAKKyAgICAxOCwgMTksIDIzMCwgMTY1LCAyMTcsIDEzNywgMTgsIDE5LCAyMTcsIDEyMiwgMTgsIDE5LCAyMTcsIDExOSwgMTgsIDE5LCAKKyAgICAyMTcsIDE3NCwgMTgsIDE5LCAyMTcsIDE3MywgMTgsIDE5LCAyMTcsIDk0LCAxOCwgMTksIDE1MywgMjE3LCA5NCwgMTgsIAorICAgIDE5LCAyMTcsIDE3NiwgMTgsIDE5LCAyMTYsIDExNCwgMTgsIDE5LCAyMTYsIDExMiwgMTgsIDE5LCAyMTYsIDExMSwgMTgsIAorICAgIDE5LCAyMTYsIDExNiwgMTgsIDE5LCAyMTYsIDExNywgMTgsIDE5LCAyMTYsIDI1LCAxOCwgMTksIDIxNiwgMjQsIDE4LCAxOSwgCisgICAgMjE2LCAyMywgMTgsIDE5LCAyMTYsIDI2LCAxOCwgMTksIDIyOCwgOTIsIDI0MiwgODUsIDE4LCAxOSwgMjI4LCA5MiwgMjQyLCAKKyAgICAyOCwgMTgsIDE5LCAyMjgsIDkyLCAyNDIsIDEwLCAxOCwgMTksIDIyOCwgOTIsIDI0MSwgMTczLCAxOCwgMTksIDIyOCwgOTIsIAorICAgIDI0MSwgMTU4LCAxOCwgMTksIDIyOCwgOTIsIDE2MiwgMTgsIDE5LCAyMjgsIDkyLCAyNDIsIDE0OCwgMTgsIDE5LCAyMjgsIAorICAgIDkyLCAyNDIsIDE2MiwgMTgsIDE5LCAyMjgsIDkxLCAyNDIsIDE2MiwgMTgsIDE5LCAyNDIsIDMsIDE4LCAxOSwgMjI1LCA3LCAKKyAgICAxOCwgMTksIDIyNCwgMjMzLCAxOCwgMTksIDIyNCwgMjI4LCAxOCwgMTksIDIyNCwgMjIyLCAxOCwgMTksIDIyNCwgMjE3LCAKKyAgICAxOCwgMTksIDIyNSwgMTEsIDE4LCAxOSwgMjI1LCAxMCwgMTgsIDE5LCAyMjUsIDE5LCAxOCwgMTksIDIxNywgMjIsIDE4LCAKKyAgICAxOSwgMjE3LCAyMCwgMTgsIDE5LCAyMTcsIDE5LCAxOCwgMTksIDIxNywgMjMsIDE4LCAxOSwgMTUzLCAyMjQsIDU1LCAxOCwgCisgICAgMTksIDE1MywgMjIzLCAyMjIsIDE4LCAxOSwgMTUzLCAyMjMsIDE0NiwgMTgsIDE5LCAxNTMsIDIwOCwgMTgsIDE5LCAyMjksIAorICAgIDIyNCwgMTgsIDE5LCAyMjksIDE3OCwgMTgsIDE5LCAyMjksIDE3NCwgMTgsIDE5LCAyMjksIDE1NSwgMTgsIDE5LCAyMjksIAorICAgIDE1MCwgMTgsIDE5LCAyMjksIDIyNiwgMTgsIDE5LCAyMjksIDIyNSwgMTgsIDE5LCAyMjksIDIyOCwgMTgsIDE5LCAyMjksIAorICAgIDAsIDE4LCAxOSwgMjIyLCAxNTAsIDIyMSwgOCwgMTgsIDE5LCAyMjIsIDE1MCwgMjIwLCAyMzMsIDE4LCAxOSwgMjIyLCAKKyAgICAxNTAsIDIyMCwgMjA4LCAxOCwgMTksIDIyMiwgMTUwLCAyMjEsIDQ3LCAxOCwgMTksIDIxMywgMjAzLCAyMTcsIDE2MSwgMTgsIAorICAgIDE5LCAyMTMsIDIwMywgMjE3LCAxNDEsIDE4LCAxOSwgMjEzLCAyMDMsIDIxNywgMTIyLCAxOCwgMTksIDIxMywgMjAzLCAKKyAgICAyMTcsIDE3NCwgMTgsIDE5LCAyMTMsIDIwMywgMjE3LCAxNzYsIDE4LCAxOSwgMjMzLCAxMTcsIDE4LCAxOSwgMjMzLCAxMTYsIAorICAgIDE4LCAxOSwgMjMzLCAxMTUsIDE4LCAxOSwgMjMzLCAxMTQsIDE4LCAxOSwgMjMzLCAxMjMsIDE4LCAxOSwgMjMzLCAxMjIsIAorICAgIDE4LCAxOSwgMjMzLCAxMjQsIDE4LCAxOSwgMjE3LCAxNzUsIDIxNywgMTYxLCAxOCwgMTksIDIxNywgMTc1LCAyMTcsIDE0MSwgCisgICAgMTgsIDE5LCAyMTcsIDE3NSwgMjE3LCAxMzcsIDE4LCAxOSwgMjE3LCAxNzUsIDIxNywgMTIyLCAxOCwgMTksIDIxNywgMTc1LCAKKyAgICAyMTcsIDExOSwgMTgsIDE5LCAyMTcsIDE3NSwgMjE3LCAxNzQsIDE4LCAxOSwgMjE3LCAxNzUsIDIxNywgMTczLCAxOCwgMTksIAorICAgIDIxNywgMTc1LCAyMTcsIDE3NiwgMTgsIDE5LCAyNTQsIDIyNCwgMjUzLCAyMDEsIDE4LCAxOSwgMjUyLCAxMCwgNzcsIDE4LCAKKyAgICAxOSwgMjUyLCAxMCwgNzUsIDE4LCAxOSwgMjUyLCAxMCwgNzgsIDE4LCAxOSwgMjUyLCAxMCwgNjMsIDE4LCAxOSwgMjUyLCAKKyAgICAxMCwgMjE0LCA5LCAxOCwgMTksIDI1MiwgMTAsIDIxMywgMjM4LCAxOCwgMTksIDI1MiwgMTAsIDIxMywgMjE3LCAxOCwgMTksIAorICAgIDI1MiwgMTAsIDIxNCwgNTIsIDE4LCAxOSwgMjUyLCAxMCwgMjI5LCAyNTQsIDE4LCAxOSwgMjUyLCAxMCwgMjI5LCAxMjgsIAorICAgIDE4LCAxOSwgMjUyLCAxMCwgMjI4LCAyMjgsIDE4LCAxOSwgMjUyLCAxMCwgMjA3LCAxOCwgMTksIDI1MiwgMTAsIDIzNSwgCisgICAgNDQsIDE4LCAxOSwgMjUyLCAxMCwgMjM0LCAyMTIsIDE4LCAxOSwgMjUyLCAxMCwgMjM0LCAxNDgsIDE4LCAxOSwgMjUyLCAKKyAgICAxMCwgMTgzLCAxOCwgMTksIDIyMiwgMTUwLCAyNDIsIDg1LCAxOCwgMTksIDIyMiwgMTUwLCAyNDIsIDI4LCAxOCwgMTksIAorICAgIDIyMiwgMTUwLCAyNDEsIDE3MywgMTgsIDE5LCAyMjIsIDE1MCwgMTYyLCAxOCwgMTksIDcwLCAyNDMsIDYwLCAxOCwgMTksIAorICAgIDcwLCAyNDMsIDY0LCAxOCwgMTksIDcwLCAyNDMsIDc2LCAxOCwgMTksIDcwLCAyNDMsIDc1LCAxOCwgMTksIDcwLCAyNDMsIAorICAgIDY1LCAxOCwgMTksIDcwLCAyNDMsIDg5LCAxOCwgMTksIDcwLCAyMjMsIDc3LCAxOCwgMTksIDcwLCAyMjMsIDE0NiwgMTgsIAorICAgIDE5LCA3MCwgMjI0LCA1NSwgMTgsIDE5LCA3MCwgMjI0LCAzNSwgMTgsIDE5LCA3MCwgMjIzLCAyMjIsIDE4LCAxOSwgNzAsIAorICAgIDIwOCwgMTgsIDE5LCA3MCwgMjEzLCAxODYsIDE4LCAxOSwgNzAsIDIxMywgMjE3LCAxOCwgMTksIDcwLCAyMTQsIDksIDE4LCAKKyAgICAxOSwgNzAsIDIxNCwgNCwgMTgsIDE5LCA3MCwgMjEzLCAyMzgsIDE4LCAxOSwgNzAsIDIxNCwgNTIsIDE4LCAxOSwgNzAsIAorICAgIDI0MSwgNDcsIDE4LCAxOSwgNzAsIDI0MSwgNDgsIDE4LCAxOSwgNzAsIDI0MSwgNTEsIDE4LCAxOSwgNzAsIDI0MSwgNTAsIAorICAgIDE4LCAxOSwgNzAsIDI0MSwgNDksIDE4LCAxOSwgNzAsIDI0MSwgNTMsIDE4LCAxOSwgNzAsIDIxNywgMTAzLCAxOCwgMTksIAorICAgIDcwLCAyMTcsIDEyMiwgMTgsIDE5LCA3MCwgMjE3LCAxNjEsIDE4LCAxOSwgNzAsIDIxNywgMTYwLCAxOCwgMTksIDcwLCAKKyAgICAyMTcsIDE0MSwgMTgsIDE5LCA3MCwgMjE3LCAxNzQsIDE4LCAxOSwgNzAsIDIxNiwgOTUsIDE4LCAxOSwgNzAsIDIxNiwgCisgICAgMTA1LCAxOCwgMTksIDcwLCAyMTYsIDEyMywgMTgsIDE5LCA3MCwgMjE2LCAxMjIsIDE4LCAxOSwgNzAsIDIxNiwgMTA3LCAKKyAgICAxOCwgMTksIDcwLCAyMTYsIDEyOCwgMTgsIDE5LCA3MCwgMjI1LCA3MSwgMTgsIDE5LCA3MCwgMjI1LCAxODYsIDE4LCAxOSwgCisgICAgNzAsIDIyNiwgMTMyLCAxOCwgMTksIDcwLCAyMjYsIDEyMiwgMTgsIDE5LCA3MCwgMjI2LCAyMCwgMTgsIDE5LCA3MCwgMTk1LCAKKyAgICAxOCwgMTksIDcwLCAyMjcsIDExLCAxOCwgMTksIDcwLCAyNDIsIDIxMywgMTgsIDE5LCA3MCwgMjQzLCAxNCwgMTgsIDE5LCAKKyAgICA3MCwgMjQzLCAxNTgsIDE4LCAxOSwgNzAsIDI0MywgMTUxLCAxOCwgMTksIDcwLCAyNDMsIDU0LCAxOCwgMTksIDcwLCAyNDMsIAorICAgIDIzMCwgMTgsIDE5LCA3MCwgMjM0LCAyMTksIDE4LCAxOSwgNzAsIDIzNCwgMjI0LCAxOCwgMTksIDcwLCAyMzQsIDIzNywgCisgICAgMTgsIDE5LCA3MCwgMjM0LCAyMzYsIDE4LCAxOSwgNzAsIDIzNCwgMjMwLCAxOCwgMTksIDcwLCAyMzQsIDI1MCwgMTgsIDE5LCAKKyAgICA3MCwgMjM0LCAxNjEsIDE4LCAxOSwgNzAsIDIzNCwgMTYyLCAxOCwgMTksIDcwLCAyMzQsIDE2NSwgMTgsIDE5LCA3MCwgCisgICAgMjM0LCAxNjQsIDE4LCAxOSwgNzAsIDIzNCwgMTYzLCAxOCwgMTksIDcwLCAyMzQsIDE2NiwgMTgsIDE5LCA3MCwgMjM0LCAKKyAgICAxNjcsIDE4LCAxOSwgNzAsIDIyOCwgMTM1LCAxOCwgMTksIDcwLCAyMjgsIDIyOCwgMTgsIDE5LCA3MCwgMjI5LCAyNTQsIAorICAgIDE4LCAxOSwgNzAsIDIyOSwgMjUxLCAxOCwgMTksIDcwLCAyMjksIDEyOCwgMTgsIDE5LCA3MCwgMjA3LCAxOCwgMTksIDcwLCAKKyAgICAyMzAsIDI0MiwgMTgsIDE5LCA3MCwgMjMxLCA0NSwgMTgsIDE5LCA3MCwgMjMxLCAyMjYsIDE4LCAxOSwgNzAsIDIzMSwgCisgICAgMjE1LCAxOCwgMTksIDcwLCAyMzEsIDExMiwgMTgsIDE5LCA3MCwgMTkxLCAxOCwgMTksIDcwLCAyMTIsIDIwNCwgMTgsIDE5LCAKKyAgICA3MCwgMjEyLCAyMzYsIDE4LCAxOSwgNzAsIDIxMywgMzksIDE4LCAxOSwgNzAsIDIxMywgMzYsIDE4LCAxOSwgNzAsIDIxMywgCisgICAgMCwgMTgsIDE5LCA3MCwgMTg5LCAxOCwgMTksIDcwLCAyMzUsIDE2OCwgMTgsIDE5LCAyMjIsIDE1MCwgMjM1LCAxNjgsIDE4LCAKKyAgICAxOSwgNzAsIDIzNSwgMTg1LCAxOCwgMTksIDcwLCAyMzUsIDI0MiwgMTgsIDE5LCA3MCwgMjM1LCAyNDAsIDE4LCAxOSwgNzAsIAorICAgIDIzNSwgMjI1LCAxOCwgMTksIDIyMiwgMTUwLCAyMzUsIDIyNSwgMTgsIDE5LCA3MCwgMjM2LCAwLCAxOCwgMTksIDcwLCAKKyAgICAyMzUsIDE5OCwgMTgsIDE5LCA3MCwgMjM1LCAyMDIsIDE4LCAxOSwgNzAsIDIzNSwgMjEyLCAxOCwgMTksIDcwLCAyMzUsIAorICAgIDIxMSwgMTgsIDE5LCA3MCwgMjM1LCAyMTAsIDE4LCAxOSwgNzAsIDIzNSwgMjEzLCAxOCwgMTksIDcwLCAyMzIsIDIzMCwgCisgICAgMTgsIDE5LCA3MCwgMjMzLCAyNiwgMTgsIDE5LCA3MCwgMjMzLCAxODAsIDE4LCAxOSwgNzAsIDIzMywgMTcyLCAxOCwgMTksIAorICAgIDcwLCAyMzMsIDExMSwgMTgsIDE5LCA3MCwgMjMzLCAyNTUsIDE4LCAxOSwgNzAsIDI0NywgMjI0LCAxOCwgMTksIDcwLCAKKyAgICAyNDcsIDIyNSwgMTgsIDE5LCA3MCwgMjQ3LCAyMjgsIDE4LCAxOSwgNzAsIDI0NywgMjI3LCAxOCwgMTksIDcwLCAyNDcsIAorICAgIDIyNiwgMTgsIDE5LCA3MCwgMjQ3LCAyMjksIDE4LCAxOSwgNzAsIDIzMywgMTEzLCAxOCwgMTksIDcwLCAyMzMsIDExNSwgCisgICAgMTgsIDE5LCA3MCwgMjMzLCAxMTksIDE4LCAxOSwgNzAsIDIzMywgMTE4LCAxOCwgMTksIDcwLCAyMzMsIDExNywgMTgsIDE5LCAKKyAgICA3MCwgMjMzLCAxMjMsIDE4LCAxOSwgNzAsIDIxNywgMTcsIDE4LCAxOSwgNzAsIDIxNywgMTksIDE4LCAxOSwgNzAsIDIxNywgCisgICAgMjIsIDE4LCAxOSwgNzAsIDIxNywgMjEsIDE4LCAxOSwgNzAsIDIxNywgMjAsIDE4LCAxOSwgNzAsIDIxNywgMjMsIDE4LCAKKyAgICAxOSwgNzAsIDIxNywgMTMsIDE4LCAxOSwgNzAsIDIxNywgMTQsIDE4LCAxOSwgNzAsIDIxNywgMjUsIDE4LCAxOSwgNzAsIAorICAgIDIxNywgMjQsIDE4LCAxOSwgNzAsIDIxNywgMTUsIDE4LCAxOSwgNzAsIDIxNywgMjYsIDE4LCAxOSwgNzAsIDIxMiwgOCwgCisgICAgMTgsIDE5LCA3MCwgMjEyLCAxNiwgMTgsIDE5LCA3MCwgMjEyLCA4NywgMTgsIDE5LCA3MCwgMjEyLCA4NSwgMTgsIDE5LCAKKyAgICA3MCwgMjEyLCAzNywgMTgsIDE5LCA3MCwgMjEyLCAxMDksIDE4LCAxOSwgNzAsIDIxMiwgMTUyLCAxOCwgMTksIDcwLCA3MywgCisgICAgMjEyLCAxNTIsIDE4LCAxOSwgNzAsIDI0NiwgMTA0LCAxOCwgMTksIDcwLCAyNDYsIDEwNSwgMTgsIDE5LCA3MCwgMjQ2LCAKKyAgICAxMTIsIDE4LCAxOSwgNzAsIDI0NiwgMTExLCAxOCwgMTksIDcwLCAyNDYsIDEwNywgMTgsIDE5LCA3MCwgMjQ2LCAxMTQsIAorICAgIDE4LCAxOSwgNzAsIDIxOSwgNDEsIDE4LCAxOSwgNzAsIDIyMCwgNSwgMTgsIDE5LCA3MCwgMjIyLCAxMjMsIDE4LCAxOSwgCisgICAgNzAsIDIyMiwgMTEyLCAxOCwgMTksIDcwLCAyMjAsIDEzNiwgMTgsIDE5LCA3MCwgMjIyLCAyMjcsIDE4LCAxOSwgNzAsIAorICAgIDIyMCwgMTcwLCAxOCwgMTksIDcwLCAyMjAsIDIwOCwgMTgsIDE5LCA3MCwgMjIxLCA4LCAxOCwgMTksIDcwLCAyMjEsIDYsIAorICAgIDE4LCAxOSwgNzAsIDIyMCwgMjMzLCAxOCwgMTksIDcwLCAyMjEsIDQ3LCAxOCwgMTksIDcwLCAyMjEsIDQ5LCAxOCwgMTksIAorICAgIDcwLCAyMTYsIDEzNSwgMTgsIDE5LCA3MCwgMjE2LCAxMzcsIDE4LCAxOSwgNzAsIDIxNiwgMTQ5LCAxOCwgMTksIDcwLCAKKyAgICAyMTYsIDE0OCwgMTgsIDE5LCA3MCwgMjE2LCAxMzgsIDE4LCAxOSwgNzAsIDIxNiwgMTU0LCAxOCwgMTksIDcwLCAyNTAsIAorICAgIDEyOSwgMTgsIDE5LCA3MCwgMjUwLCAxNDYsIDE4LCAxOSwgNzAsIDI1MCwgMTkwLCAxOCwgMTksIDcwLCAyNTAsIDE4NywgCisgICAgMTgsIDE5LCA3MCwgMjUwLCAxNzAsIDE4LCAxOSwgNzAsIDI1MCwgMjE1LCAxOCwgMTksIDcwLCAyMTYsIDk4LCAxOCwgMTksIAorICAgIDcwLCAyMTYsIDk5LCAxOCwgMTksIDcwLCAyMTYsIDEwMiwgMTgsIDE5LCA3MCwgMjE2LCAxMDEsIDE4LCAxOSwgNzAsIDIxNiwgCisgICAgMTAwLCAxOCwgMTksIDcwLCAyMTYsIDEwMywgMTgsIDE5LCAyNTAsIDE3MSwgNTMsIDE4LCAxOSwgMjQ0LCA2NCwgMjE5LCAKKyAgICA4MywgMTgsIDE5LCAyMjUsIDMsIDE4LCAxOSwgMjI5LCAyMjMsIDE4LCAxOSwgMjI4LCAyNTMsIDE4LCAxOSwgMjI4LCAyNTIsIAorICAgIDE4LCAxOSwgMjI4LCAyNTEsIDE4LCAxOSwgMjI4LCAyNTAsIDE4LCAxOSwgMjI4LCAyNTUsIDE4LCAxOSwgMjI4LCAyNTQsIAorICAgIDE4LCAxOSwgMjEzLCAyMDMsIDIxNywgOTIsIDE4LCAxOSwgMjEzLCAyMDMsIDIxNywgOTEsIDE4LCAxOSwgMjEzLCAyMDMsIAorICAgIDIxNywgOTAsIDE4LCAxOSwgMjEzLCAyMDMsIDIxNywgODksIDE4LCAxOSwgMjEzLCAyMDMsIDIxNywgODgsIDE4LCAxOSwgCisgICAgMjEzLCAyMDMsIDIxNywgOTUsIDE4LCAxOSwgMjEzLCAyMDMsIDIxNywgOTQsIDE4LCAxOSwgMjEzLCAyMDMsIDQxLCAyMTcsIAorICAgIDE3NiwgMTgsIDE5LCAyNTIsIDEwLCAyMTQsIDg1LCAyMjcsIDEyOSwgMjE5LCAyMjYsIDc5LCAyMjcsIDEyOSwgMSwgMjUyLCAKKyAgICA5NCwgMjI3LCAxMjksIDEsIDIzMiwgMjE5LCAyMjcsIDEyOSwgMSwgMjQ0LCAyNDAsIDIyNywgMTI5LCAxLCAyMjIsIDIxMCwgCisgICAgMjI3LCAxMjksIDEsIDIyOSwgODgsIDIyNywgMTI5LCAxLCAyMTUsIDIwMSwgMjI3LCAxMjksIDEsIDI0OSwgOCwgMjI3LCAKKyAgICAxMjksIDEsIDIxNywgNDcsIDIyNywgMTI5LCAxLCAyNTAsIDMzLCAyMjcsIDEyOSwgMSwgMjUwLCAyMzcsIDIyNywgMTI5LCAKKyAgICAxLCAyMzAsIDIzMSwgMjI3LCAxMjksIDEsIDI0MiwgMjUyLCAyMjcsIDEyOSwgMSwgMjI5LCAyMTMsIDIyNywgMTI5LCAxLCAKKyAgICAyMTksIDc2LCAyMjcsIDEyOSwgMSwgMjIzLCA3MiwgMjI3LCAxMjksIDEsIDI1NCwgMjMzLCAyMjcsIDEyOSwgMSwgMjI3LCAKKyAgICA5MCwgMjI3LCAxMjksIDEsIDIxNSwgMTI3LCAyMjcsIDEyOSwgMSwgMjQ2LCA1MiwgMjI3LCAxMjksIDEsIDIzNiwgNDcsIAorICAgIDIyNywgMTI5LCAxLCAyNDYsIDUzLCAyMjcsIDEyOSwgMSwgMjI3LCA2MiwgMjI3LCAxMjksIDEsIDIxNSwgMTgyLCAyMjcsIAorICAgIDEyOSwgMSwgMjM2LCAxNTEsIDIyNywgMTI5LCAxLCAyNDYsIDUwLCAyMjcsIDEyOSwgMSwgMjI2LCAxMTMsIDIyNywgMTI5LCAKKyAgICAyNDQsIDIzOSwgNzksIDIyNywgMTI5LCAyMjMsIDIzNiwgMjQ0LCAyMzksIDc5LCAxNzIsIDEsIDI0NCwgMjMwLCAyNDQsIAorICAgIDIyMiwgMjQ0LCAyNDQsIDI0NSwgOTUsIDE3MiwgMSwgMjExLCAyMTEsIDE3MiwgMSwgMjE1LCAxMTIsIDIxNSwgMTI4LCA3MiwgCisgICAgMTcyLCAxLCAyMTIsIDIwNiwgMTcyLCAxLCAyMTMsIDEwOCwgMTcyLCAxLCAyMTQsIDg1LCAxNzIsIDEsIDIxNywgOTcsIAorICAgIDIxNywgOTYsIDIxNywgMTE3LCAxNzIsIDEsIDI0NSwgMTQ2LCAxNzIsIDEsIDI1NCwgMTMxLCA2MywgMTcyLCAxLCAyMjcsIAorICAgIDQ4LCA3OCwgMTcyLCAxLCAyNTUsIDQ5LCA2MywgMTcyLCAxLCAyNTUsIDQsIDE3MiwgMSwgMjMzLCA0LCA3OCwgMTcyLCAxLCAKKyAgICAyMjAsIDE4OSwgNzgsIDE3MiwgMSwgNzgsIDE3MiwgMSwgMjI3LCAxMzYsIDE3MiwgMSwgMjI3LCA5OSwgMTcyLCAxLCAyMjQsIAorICAgIDkwLCAyMjQsIDEwMiwgMjI0LCAyMiwgMTUyLCAxNzIsIDEsIDIzNSwgNTUsIDE3MiwgMSwgMjUwLCAyMzQsIDE3MiwgMSwgCisgICAgMjM1LCA1NiwgMjM1LCAxNDEsIDE3MiwgMSwgMjQ0LCA0MSwgMTcyLCAxLCAyNDUsIDIxNywgMTcyLCAxLCAyNDMsIDE1NCwgCisgICAgMjQyLCAxNjgsIDI0NCwgNDEsIDE3MiwgMSwgMjQzLCAxOTIsIDE3MiwgMSwgMjEzLCAxNzksIDIxMywgMTczLCAyMTQsIDg1LCAKKyAgICAxNzIsIDEsIDI0MiwgMTQwLCAyNDIsIDE2MiwgMTcyLCAxLCAyNDIsIDE0NCwgMjQyLCAxNjIsIDE3MiwgMSwgMjMzLCA2LCAKKyAgICAyNDIsIDE2MiwgMTcyLCAxLCAyMjAsIDE5MiwgMjQyLCAxNjIsIDE3MiwgMSwgMjMwLCA3NCwgMjI4LCA1NywgMjMwLCA3NSwgCisgICAgMjA2LCAxNzIsIDEsIDIyMCwgMTkwLCAyMDYsIDE3MiwgMSwgMjQ2LCAxOTAsIDE3MiwgMSwgMjM2LCAyNywgMjM2LCAzMSwgCisgICAgMjM2LCAyMSwgNzUsIDE3MiwgMSwgNzcsIDE3MiwgMSwgMjM1LCAyMzMsIDIzNiwgMywgMTcyLCAxLCAyNDMsIDEzOSwgMTcyLCAKKyAgICAxLCAyMzMsIDcsIDI1NSwgMjAsIDE3MiwgMSwgMjIwLCAxOTQsIDYzLCAxNzIsIDEsIDIzNiwgMTMsIDI0NSwgMTkzLCAxNzIsIAorICAgIDEsIDIyNiwgNzYsIDIyNiwgOTcsIDIyNywgMTEsIDE3MiwgMSwgMjU0LCAxOTksIDI0NSwgMTkyLCAxNzIsIDEsIDIxOSwgCisgICAgMjMwLCAxOTYsIDE3MiwgMSwgMjIwLCAxMjQsIDIzMywgMywgMTk2LCAxNzIsIDEsIDIyMCwgMTg4LCAxOTYsIDE3MiwgMSwgCisgICAgMjUxLCAxMjEsIDE3MiwgMSwgMjEyLCAxNTIsIDE3MiwgMSwgMjE3LCAzMCwgMjE3LCA0MCwgMjE2LCAxNCwgMjE4LCAxMTMsIAorICAgIDE3MiwgMSwgMjIwLCAxODcsIDIxOCwgMTEzLCAxNzIsIDEsIDI0OSwgMTI1LCAxNzIsIDEsIDI1MiwgNzgsIDI1MiwgODEsIAorICAgIDI1MiwgMTYsIDI1MywgMjAxLCAxNzIsIDEsIDIyMCwgMTkzLCAyNTMsIDIwMSwgMTcyLCAxLCAyNDYsIDE4OSwgMTcyLCAxLCAKKyAgICAyMjcsIDc0LCAxNzIsIDEsIDI0NiwgMTgsIDI0NiwgMjAsIDc3LCAxNzIsIDEsIDIzMiwgNTYsIDIzMiwgNjQsIDE4NCwgCisgICAgMTcyLCAxLCAyMzMsIDUsIDE4NCwgMTcyLCAxLCAyMjAsIDE5MSwgMTg0LCAxNzIsIDEsIDIzMywgMTk1LCAyMzMsIDIzNSwgCisgICAgMjMzLCAxNCwgMTU1LCAxNzIsIDEsIDI0NiwgMTkxLCAxNzIsIDEsIDIzNiwgODgsIDE3MiwgMSwgMjM2LCA4OSwgMTcyLCAxLCAKKyAgICAyNDksIDE5LCAyNDksIDI0LCAyNDksIDEyNSwgMTcyLCAxLCAyMjcsIDQ0LCAyNDUsIDE0NSwgNzgsIDE3MiwgMSwgMjQ2LCAKKyAgICA0OCwgMTcyLCAxLCAyMzYsIDQ2LCAxNzIsIDEsIDI0OSwgMTQzLCAxNzIsIDEsIDI1MSwgNzMsIDE3MiwgMSwgMjUwLCAyNDYsIAorICAgIDE3MiwgMSwgMjE5LCAxMTQsIDE3MiwgMSwgMjMzLCAyLCAxNzIsIDEsIDIyMCwgMTg2LCAxNzIsIDEsIDI0MCwgMjIwLCAKKyAgICAxNzIsIDEsIDIyNSwgMTksIDE3MiwgMSwgMjEzLCAxNjksIDE3MiwgMjIwLCAxMDAsIDIyNSwgNjIsIDE3MiwgMjMwLCAyMjUsIAorICAgIDIyNSwgNjIsIDE3MiwgMjQ5LCAxOTQsIDIyNSwgNjIsIDE3MiwgMjU0LCA0OCwgODgsIDE3MiwgMjE2LCA1NCwgODgsIDE3MiwgCisgICAgMjUyLCA5MywgODgsIDIxOCwgNDYsIDEsIDYzLCAyMTgsIDQ2LCAxLCA3NSwgMjE4LCA0NiwgMSwgNzIsIDIxOCwgNDYsIDEsIAorICAgIDE4MywgMjE4LCA0NiwgMSwgMjQzLCAyMzAsIDIxOCwgNDYsIDEsIDIyOSwgMjI2LCAyMTgsIDQ2LCAxLCAyMTgsIDY2LCAKKyAgICAyMTgsIDQ2LCAxLCAyNDksIDMwLCAyMTgsIDQ2LCAxLCAyMDcsIDIxOCwgNDYsIDEsIDE5NSwgMjE4LCA0NiwgMSwgMjUyLCAKKyAgICAyMzQsIDIxOCwgNDYsIDEsIDE5MSwgMjE4LCA0NiwgMSwgMTg5LCAyMTgsIDQ2LCAxLCAyMzMsIDI1NSwgMjE4LCA0NiwgMSwgCisgICAgMjE0LCA1MiwgMjE4LCA0NiwgMSwgMjIyLCAyMjcsIDIxOCwgNDYsIDEsIDE2MiwgMjE4LCA0NiwgMzAsIDUsIDc1LCAyMTgsIAorICAgIDQ2LCAzMCwgNSwgNzIsIDIxOCwgNDYsIDUsIDIxNCwgMTM3LCAyNDIsIDExMCwgMSwgNjMsIDI0MiwgMTEwLCAxLCA3NSwgCisgICAgMjQyLCAxMTAsIDEsIDcyLCAyNDIsIDExMCwgMSwgMTgzLCAyNDIsIDExMCwgMSwgMjQzLCAyMzAsIDI0MiwgMTEwLCAxLCAKKyAgICAyMjksIDIyNiwgMjQyLCAxMTAsIDEsIDIxOCwgNjYsIDI0MiwgMTEwLCAxLCAyNDksIDMwLCAyNDIsIDExMCwgMSwgMjA3LCAKKyAgICAyNDIsIDExMCwgMSwgMTk1LCAyNDIsIDExMCwgMSwgMjUyLCAyMzQsIDI0MiwgMTEwLCAxLCAxOTEsIDI0MiwgMTEwLCAxLCAKKyAgICAxODksIDI0MiwgMTEwLCAxLCAyMDgsIDI0MiwgMTEwLCAxLCAyMzMsIDI1NSwgMjQyLCAxMTAsIDEsIDIxNCwgNTIsIDI0MiwgCisgICAgMTEwLCAxLCAyMjIsIDIyNywgMjQyLCAxMTAsIDEsIDE2MiwgMjQyLCAxMTAsIDMwLCA1LCA3NSwgMjQyLCAxMTAsIDMwLCA1LCAKKyAgICA3MiwgMjQyLCAxMTAsIDUsIDIyNiwgMjEzLCAyMjYsIDM4LCAyMjAsIDEwMCwgMjI1LCA2MiwgMjI2LCAzOCwgNTIsIDIyNSwgCisgICAgNjIsIDI1MSwgMTc0LCAxLCA2MywgMjUxLCAxNzQsIDEsIDc1LCAyNTEsIDE3NCwgMSwgNzIsIDI1MSwgMTc0LCAxLCAxODMsIAorICAgIDI1MSwgMTc0LCAxLCAyNDMsIDIzMCwgMjUxLCAxNzQsIDEsIDIyOSwgMjI2LCAyNTEsIDE3NCwgMSwgMjE4LCA2NiwgMjUxLCAKKyAgICAxNzQsIDEsIDI0OSwgMzAsIDI1MSwgMTc0LCAxLCAyMDcsIDI1MSwgMTc0LCAxLCAxOTUsIDI1MSwgMTc0LCAxLCAyNTIsIAorICAgIDIzNCwgMjUxLCAxNzQsIDEsIDE5MSwgMjUxLCAxNzQsIDEsIDE4OSwgMjUxLCAxNzQsIDEsIDIwOCwgMjUxLCAxNzQsIDEsIAorICAgIDIzMywgMjU1LCAyNTEsIDE3NCwgMSwgMjE0LCA1MiwgMjUxLCAxNzQsIDEsIDIyMiwgMjI3LCAyNTEsIDE3NCwgMSwgMTYyLCAKKyAgICAyNTEsIDE3NCwgMzAsIDUsIDc1LCAyNTEsIDE3NCwgMzAsIDUsIDcyLCAyMTgsIDQ1LCAxLCA2MywgMjE4LCA0NSwgMSwgNzUsIAorICAgIDIxOCwgNDUsIDEsIDcyLCAyMTgsIDQ1LCAxLCAxODMsIDIxOCwgNDUsIDEsIDI0MywgMjMwLCAyMTgsIDQ1LCAxLCAyMjksIAorICAgIDIyNiwgMjE4LCA0NSwgMSwgMjE4LCA2NiwgMjE4LCA0NSwgMSwgMjQ5LCAzMCwgMjE4LCA0NSwgMSwgMjA3LCAyMTgsIDQ1LCAKKyAgICAxLCAxOTUsIDIxOCwgNDUsIDEsIDI1MiwgMjM0LCAyMTgsIDQ1LCAxLCAxOTEsIDIxOCwgNDUsIDEsIDE4OSwgMjE4LCA0NSwgCisgICAgMSwgMjMzLCAyNTUsIDIxOCwgNDUsIDEsIDIxNCwgNTIsIDIxOCwgNDUsIDEsIDIyMiwgMjI3LCAyMTgsIDQ1LCAzMCwgNSwgCisgICAgNzUsIDIxOCwgNDUsIDMwLCA1LCA3MiwgNjcsIDEsIDE4MywgNjcsIDEsIDIzNCwgMjUwLCA2NywgMSwgMjM0LCAxNDgsIDY3LCAKKyAgICAxLCAyMzQsIDIyNCwgNjcsIDEsIDIyOSwgMTU1LCA2NywgMSwgMjUxLCA4OCwgNjcsIDEsIDI1MCwgMjE1LCA2NywgMSwgCisgICAgMjUwLCA0MiwgNjcsIDEsIDI1MCwgMTQ2LCA2NywgMSwgMjI4LCAzNSwgNjcsIDEsIDI0OSwgMzAsIDY3LCAxLCAyMTYsIAorICAgIDExNiwgNjcsIDEsIDI0NywgMjIwLCA2NywgMSwgMjE2LCAxMTEsIDY3LCAxLCAyMjgsIDIzNCwgNjcsIDEsIDIxOCwgNjYsIAorICAgIDY3LCAxLCAyMTcsIDE3NCwgNjcsIDEsIDEwOSwgNjcsIDEsIDIxNywgMTIyLCA2NywgMSwgMjI4LCAyMjgsIDY3LCAxLCAKKyAgICAyNTIsIDIzNCwgNjcsIDEsIDIyNiwgNTksIDY3LCAxLCAyMjUsIDE4NiwgNjcsIDEsIDIyNiwgMzMsIDY3LCAxLCAyMzEsIAorICAgIDQ1LCA2NywgMSwgMjEyLCAyMzYsIDY3LCAxLCAyMjMsIDE0NiwgNjcsIDEsIDIzMywgMjYsIDY3LCAxLCAyMTQsIDEyMywgCisgICAgNjcsIDEsIDIyMSwgNDcsIDY3LCAxLCAyMTksIDEzNywgNjcsIDEsIDIyMiwgMjI3LCA2NywgMSwgMTYyLCA2NywgMSwgMjMzLCAKKyAgICAyNTUsIDY3LCAxLCAyMjUsIDExLCA2NywgMjM2LCAxMDEsIDMwLCAyMjQsIDI1MywgNjcsIDIzNiwgMTAxLCAzMCwgMjI1LCAKKyAgICAxMCwgNjcsIDIzNiwgMTAxLCAzMCwgMjI0LCAyMzMsIDY3LCAyMzYsIDEwMSwgMzAsIDIyNCwgMjI4LCA2NywgMjM2LCAxMDEsIAorICAgIDMwLCAyMjQsIDIxMCwgNjcsIDIzNiwgMTAxLCAzMCwgMjI0LCAxODIsIDY3LCAyMzYsIDEwMSwgMzAsIDIyNCwgMTcwLCA2NywgCisgICAgMjM2LCAxMDEsIDMwLCAyMjQsIDE2OSwgNjcsIDIzNiwgMTAxLCAzMCwgMjIzLCAzNywgNjcsIDIzNiwgMTAxLCAzMCwgMjIzLCAKKyAgICAzMCwgNjcsIDIzNiwgMTAxLCAzMCwgMjMyLCAxOTQsIDY3LCAyMzYsIDEwMSwgMzAsIDIzMiwgMTg1LCA2NywgMjM2LCAxMDEsIAorICAgIDMwLCAyMjQsIDI0OCwgNjcsIDIzNiwgMTAxLCAzMCwgMjI1LCAzLCA2NywgMjM2LCAxMDEsIDMwLCAyMjQsIDIxOCwgMjE2LCAKKyAgICAyMiwgMTE4LCA2NywgMjM2LCAxMDEsIDMwLCAyMjQsIDIxOCwgMjE2LCAyMiwgMTEyLCA2NywgMjM2LCAxMDEsIDMwLCAyMjQsIAorICAgIDI0OSwgNjcsIDMwLCAyMzYsIDg3LCAyNTQsIDg2LCA2NywgMzAsIDIzNiwgODcsIDI1NSwgMTA0LCA2NywgMzAsIDUsIDI1NSwgCisgICAgMTA0LCA2NywgMzAsIDUsIDc1LCA2NywgMzAsIDUsIDIzNiwgMTQ1LCA2NywgMzAsIDUsIDIxMywgMTA4LCA2NywgMzAsIDUsIAorICAgIDIxMiwgMTYxLCA2NywgMzAsIDUsIDcyLCA2NywgMzAsIDUsIDIxNSwgOTgsIDY3LCAzMCwgNSwgMjE1LCAyMDIsIDY3LCAzMCwgCisgICAgNSwgMjI3LCAxMzYsIDY3LCAzMCwgNSwgMTg5LCA2NywgMzAsIDUsIDIzNiwgMTcyLCA2NywgMzAsIDUsIDc3LCA2NywgMzAsIAorICAgIDUsIDI1NSwgMjAsIDY3LCAzMCwgNSwgMjU0LCAyMzYsIDY3LCAzMCwgNSwgMjI3LCA4NiwgNjcsIDMwLCA1LCAyNTMsIDIzNSwgCisgICAgNjcsIDUsIDIyOSwgMTAxLCA2NywgNSwgMjI0LCA1MywgNjcsIDUsIDIxMiwgMTcyLCA2NywgNSwgMjMwLCAxOTIsIDY3LCA1LCAKKyAgICAyMTYsIDE4NCwgNjcsIDUsIDI1MiwgMTg5LCA2NywgNSwgMjIzLCAxNDEsIDY3LCA1LCAyMTcsIDgsIDY3LCA1LCAyMzUsIAorICAgIDEwMywgNjcsIDUsIDI1NCwgMjM4LCA2NywgNSwgMjIyLCAxODQsIDIyMiwgMTc4LCA2NywgNSwgMjE0LCAxMzQsIDY3LCA1LCAKKyAgICAyNTAsIDM2LCA2NywgNSwgMjUyLCAxNjMsIDY3LCA1LCAyMzQsIDI0MywgNjcsIDUsIDI1MiwgMTgzLCA2NywgNSwgMjUxLCAKKyAgICA2NSwgMjI1LCAyNDAsIDIzNCwgNTEsIDY3LCA1LCAyMzMsIDE1MiwgMjE2LCAyNDMsIDY3LCA1LCAyNTIsIDY3LCA2NywgNSwgCisgICAgMjI2LCAzNSwgMjMwLCAyMzksIDY3LCA1LCAyMzQsIDEyOSwgNjcsIDI0OSwgMTYyLCAxNiwgMjIzLCAyMTUsIDY3LCA1LCAKKyAgICAyNTMsIDIxNywgNjcsIDUsIDI1MywgMjM4LCA2NywgMjEsIDIxMiwgNzksIDY3LCAyMSwgMTE4LCA2NywgMjEsIDExMiwgNjcsIAorICAgIDIxLCAxNzAsIDY3LCAyMSwgMTY3LCA2NywgMjEsIDE4NSwgNjcsIDIxLCAxOTIsIDY3LCAyMSwgMjAwLCA2NywgMjEsIDE5OCwgCisgICAgNjcsIDIxLCAyMDMsIDY3LCAxNiwgMjMzLCAxNTIsIDI1MywgMjQwLCAyMTksIDI0OCwgNjcsIDE2LCAyMzMsIDE1MiwgMjUzLCAKKyAgICAyNDAsIDIzMCwgMjExLCA2NywgMTYsIDIzMywgMTUyLCAyNTMsIDI0MCwgMjI1LCAyMzksIDY3LCAxNiwgMjMzLCAxNTIsIAorICAgIDI1MywgMjQwLCAyNTIsIDk1LCA2NywgMTYsIDIzMywgMTUyLCAyNTMsIDI0MCwgMjUxLCAxNTcsIDY3LCAxNiwgMjMzLCAKKyAgICAxNTIsIDI1MywgMjQwLCAyMjUsIDEzMSwgNjcsIDE2LCAyMzMsIDE1MiwgMjUzLCAyNDAsIDIyNSwgMTI1LCA2NywgMTYsIAorICAgIDIzMywgMTUyLCAyNTMsIDI0MCwgMjI1LCAxMjMsIDY3LCAxNiwgMjMzLCAxNTIsIDI1MywgMjQwLCAyMjUsIDEyOSwgNjcsIAorICAgIDE2LCAyMzMsIDE1MiwgMjUzLCAyNDAsIDIyNSwgMTI3LCA4MywgMjUyLCAyOCwgODMsIDI0NSwgMjQxLCA4MywgMjUwLCAyMywgCisgICAgODMsIDI0NCwgNjQsIDIxOSwgODMsIDgzLCAyNTAsIDMwLCA4MywgMjQ0LCAxMDEsIDI0NywgMTkzLCA4MywgMjE3LCA3LCAKKyAgICAyMTksIDI1NSwgMjQxLCAyMSwgODMsIDIyMCwgMTM1LCAzLCAyNTEsIDIyMywgMjMyLCAzMiwgODMsIDIzMiwgNjEsIDI1MCwgCisgICAgMjMsIDgzLCAyMzIsIDYxLCAyNDQsIDY0LCAyMTksIDgzLCA4MywgMjI5LCA4NiwgODMsIDI0NCwgODcsIDQ0LCAyMjIsIAorICAgIDEwMCwgMTE4LCA4MywgMjQ0LCA4NywgNDQsIDIyMiwgMTAwLCAxMTIsIDgzLCAyNDQsIDg3LCA0NCwgMjIyLCAxMDAsIDE3MCwgCisgICAgODMsIDMwLCAyMjEsIDgwLCA4MywgMjEsIDIxMiwgNzksIDgzLCAyMSwgMTE4LCA4MywgMjEsIDExMiwgODMsIDIxLCAxNzAsIAorICAgIDgzLCAyMSwgMTY3LCA4MywgMjEsIDE4NSwgODMsIDIxLCAxOTIsIDgzLCAyMSwgMjAwLCA4MywgMjEsIDE5OCwgODMsIDIxLCAKKyAgICAyMDMsIDgzLCAxLCA2MywgODMsIDEsIDc3LCA4MywgMSwgNzUsIDgzLCAxLCA3OCwgODMsIDEsIDcyLCA4MywgMSwgMjI3LCAKKyAgICAxMzYsIDgzLCAxLCAyMTUsIDE4OSwgODMsIDEsIDI0NiwgMzAsIDgzLCAxLCAyMDcsIDgzLCAxLCAyNTQsIDE1MSwgODMsIDEsIAorICAgIDI1MiwgMjM0LCA4MywgMSwgMTk1LCA4MywgMSwgMjI1LCAxMSwgODMsIDEsIDI0MywgMjMwLCA4MywgMSwgMTkxLCA4MywgMSwgCisgICAgMjMzLCAyNTUsIDgzLCAxLCAyMjIsIDIyNywgODMsIDEsIDIyMSwgNDcsIDgzLCAxLCAyMTgsIDY2LCA4MywgMSwgMjQ5LCAKKyAgICAzMCwgODMsIDEsIDI1MCwgMjE1LCA4MywgMSwgMjM2LCAwLCA4MywgMSwgMTg5LCA4MywgMSwgMjA4LCA4MywgMSwgMjE0LCAKKyAgICA1MiwgODMsIDEsIDI0NSwgMjksIDgzLCAxLCAxODMsIDgzLCAxLCAyMzQsIDI1MCwgODMsIDEsIDIxNiwgMTU0LCA4MywgMSwgCisgICAgMjEyLCAxMDksIDgzLCAxLCAyNDIsIDE0OCwgODMsIDEsIDIxMiwgOSwgODMsIDEsIDIzMywgMTIzLCA4MywgMSwgMjEyLCAKKyAgICA2MiwgODMsIDEsIDI1MCwgMTcwLCA4MywgMSwgMjE3LCA3LCAxODcsIDMwLCA1MywgODMsIDEsIDIxNywgNywgNzcsIDgzLCAKKyAgICAxLCAyMTcsIDcsIDc1LCA4MywgMSwgMjE3LCA3LCA3OCwgODMsIDEsIDIxNywgNywgNzIsIDgzLCAxLCAyMTcsIDcsIDIyNywgCisgICAgMTM2LCA4MywgMSwgMjE3LCA3LCAyMTUsIDE4OSwgODMsIDEsIDIxNywgNywgMjU0LCAxNTEsIDgzLCAxLCAyMTcsIDcsIAorICAgIDI1MiwgMjM0LCA4MywgMSwgMjE3LCA3LCAxOTUsIDgzLCAxLCAyMTcsIDcsIDIyNSwgMTEsIDgzLCAxLCAyMTcsIDcsIDI0MywgCisgICAgMjMwLCA4MywgMSwgMjE3LCA3LCAxOTEsIDgzLCAxLCAyMTcsIDcsIDIxOCwgNjYsIDgzLCAxLCAyMTcsIDcsIDI0OSwgMzAsIAorICAgIDgzLCAxLCAyMTcsIDcsIDI1MCwgMjE1LCA4MywgMSwgMjE3LCA3LCAyMzYsIDAsIDgzLCAxLCAyMTcsIDcsIDIxNiwgMTU0LCAKKyAgICA4MywgMSwgMjE3LCA3LCAxODksIDgzLCAxLCAyMTcsIDcsIDIxNCwgNTIsIDgzLCAxLCAyMTcsIDcsIDE4MywgODMsIDEsIAorICAgIDIxNywgNywgMjQzLCAyMjcsIDgzLCAxLCAyMTcsIDcsIDI0MiwgMTQ4LCA4MywgMSwgMjE3LCA3LCAyMzUsIDIyNCwgODMsIAorICAgIDEsIDIxNywgNywgMjI5LCAxMjYsIDgzLCAxLCAyMTcsIDcsIDI0NiwgMTE0LCA4MywgMSwgMjIwLCAxMzUsIDc3LCA4MywgMSwgCisgICAgMjIwLCAxMzUsIDc1LCA4MywgMSwgMjIwLCAxMzUsIDIzNiwgMTEsIDgzLCAxLCAyMjAsIDEzNSwgMjE1LCAxODksIDgzLCAxLCAKKyAgICAyMjAsIDEzNSwgNzIsIDgzLCAxLCAyMjAsIDEzNSwgMjU0LCAxNTEsIDgzLCAxLCAyMjAsIDEzNSwgMTgzLCA4MywgMSwgCisgICAgMjIwLCAxMzUsIDI0MywgMjMwLCA4MywgMSwgMjIwLCAxMzUsIDE2MiwgODMsIDEsIDIyMCwgMTM1LCAxOTUsIDgzLCAxLCAKKyAgICAyMjAsIDEzNSwgMjIxLCA0NywgODMsIDEsIDIyMCwgMTM1LCAyMTgsIDY2LCA4MywgMSwgMjIwLCAxMzUsIDI0OSwgMzAsIAorICAgIDgzLCAxLCAyMjAsIDEzNSwgMjM2LCAwLCA4MywgMSwgMjIwLCAxMzUsIDI0NSwgMjksIDgzLCAxLCAyMjAsIDEzNSwgMjQzLCAKKyAgICAyMjcsIDgzLCAxLCAyMjAsIDEzNSwgMjQyLCAxNDgsIDgzLCAxLCAyMjAsIDEzNSwgMjE2LCAxNTQsIDgzLCAxLCAyMjAsIAorICAgIDEzNSwgMjEyLCAxMDksIDgzLCAxLCAyMjAsIDEzNSwgMjI0LCAxMDksIDgzLCAxLCAyMjAsIDEzNSwgMjUwLCAyMTUsIDgzLCAKKyAgICAxLCAyMjAsIDEzNSwgMjEyLCA3NSwgODMsIDEsIDIzMiwgNjEsIDc1LCA4MywgMSwgMjMyLCA2MSwgMTgzLCA4MywgMSwgCisgICAgMjMyLCA2MSwgMjA4LCA4MywgMSwgMjMyLCA2MSwgMjQ1LCAyOSwgODMsIDEsIDIzMiwgNjEsIDIxMiwgNzUsIDgzLCAxLCAKKyAgICAyNTQsIDE5OCwgMjQzLCAyMTIsIDI1NCwgMTE0LCAxMTgsIDgzLCAxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIDIxNCwgMTMzLCAKKyAgICAxMTgsIDgzLCAxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIDI0OCwgMjUzLCA4MywgMSwgMjU0LCAxOTgsIDI0MywgMjEyLCAyMTUsIAorICAgIDE5OSwgODMsIDEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjM2LCA1MiwgMjE1LCAxOTksIDgzLCAxLCAyNTQsIDE5OCwgMjQzLCAKKyAgICAyMTIsIDI1MiwgMjAxLCA4MywgMSwgMjU0LCAxOTgsIDI0MywgMjEyLCAxMzcsIDI1MiwgMjAxLCA4MywgMSwgMjU0LCAxOTgsIAorICAgIDI0MywgMjEyLCA2MywgODMsIDEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgNzUsIDgzLCAxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIAorICAgIDE4MywgODMsIDEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjI5LCAyMjYsIDgzLCAxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIDI1MSwgCisgICAgODgsIDgzLCAxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIDIxNiwgMTI4LCA4MywgMSwgMjU0LCAxOTgsIDI0MywgMjEyLCAyMTYsIAorICAgIDExNiwgODMsIDEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjQ4LCAyMDcsIDgzLCAxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIDIyOSwgCisgICAgNiwgODMsIDEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjE4LCA2NiwgODMsIDEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjQ5LCAKKyAgICAzMCwgODMsIDEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMTk1LCA4MywgMSwgMjU0LCAxOTgsIDI0MywgMjEyLCAyMjYsIDU5LCAKKyAgICA4MywgMSwgMjU0LCAxOTgsIDI0MywgMjEyLCAyMTksIDE3NiwgODMsIDEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjEyLCA3NSwgCisgICAgODMsIDEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjEyLCAxMDksIDgzLCAxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIDI1NCwgMjQyLCAKKyAgICA4MywgMSwgMjE3LCA3LCAyNTQsIDE5OCwgMjQzLCAyMTIsIDIxOCwgNjYsIDgzLCAxLCAyMTcsIDcsIDI1NCwgMTk4LCAyNDMsIAorICAgIDIxMiwgMjEyLCA3NSwgODMsIDEsIDIzMiwgNjEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjQzLCA4OSwgODMsIDEsIDIzMiwgCisgICAgNjEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjI5LCAyMjYsIDgzLCAxLCAyMzIsIDYxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIAorICAgIDI1MSwgODgsIDgzLCAxLCAyMzIsIDYxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIDIzNSwgMjMwLCA4MywgMSwgMjMyLCA2MSwgCisgICAgMjU0LCAxOTgsIDI0MywgMjEyLCAyMTYsIDEyOCwgODMsIDEsIDIzMiwgNjEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjQ4LCAKKyAgICAxOTEsIDgzLCAxLCAyMzIsIDYxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIDIxOCwgNjYsIDgzLCAxLCAyMzIsIDYxLCAyNTQsIAorICAgIDE5OCwgMjQzLCAyMTIsIDI0OCwgOTcsIDgzLCAxLCAyMzIsIDYxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIDIxOSwgMTc2LCA4MywgCisgICAgMSwgMjMyLCA2MSwgMjU0LCAxOTgsIDI0MywgMjEyLCAyNDksIDEzNywgODMsIDEsIDIzMiwgNjEsIDI1NCwgMTk4LCAyNDMsIAorICAgIDIxMiwgMjEyLCA3NSwgODMsIDEsIDIzMiwgNjEsIDI1NCwgMTk4LCAyNDMsIDIxMiwgMjEyLCAxMDksIDgzLCAxLCAyNTQsIAorICAgIDE5OCwgMjQzLCAyMTIsIDE1NywgNzIsIDgzLCAxLCAyNTQsIDE5OCwgMjQzLCAyMTIsIDE1NywgMTg5LCA4MywgMSwgMjMyLCAKKyAgICA2MSwgMjU0LCAxOTgsIDI0MywgMjEyLCAyNTIsIDY1LCA4MywgMSwgMjU0LCAxOTgsIDI0MywgMjEyLCAyNDksIDIwLCA4MywgCisgICAgMSwgMjMyLCA2MSwgMjU0LCAxOTgsIDI0MywgMjEyLCAyMzMsIDEyMywgMTgsIDE5LCAyMjcsIDE1LCAxOCwgMTksIDI1MywgCisgICAgMjEwLCAxOCwgMTksIDI1NSwgNjAsIDE4LCAxOSwgMjE0LCAxMiwgMTgsIDE5LCAyMjUsIDEzNywgMTgsIDE5LCAyMjYsIAorICAgIDEzOSwgMTgsIDE5LCAyMjUsIDI4LCAxOCwgMTksIDIxNywgMjUxLCAxOCwgMTksIDIzNSwgNTEsIDE4LCAxOSwgMjM0LCA0MywgCisgICAgMTgsIDE5LCAyMzIsIDEwLCAxOCwgMTksIDIyOCwgMTkxLCAxOCwgMTksIDIzMCwgNzAsIDE4LCAxOSwgMjMzLCAxOTAsIDE4LCAKKyAgICAxOSwgMjE5LCAyMjgsIDE4LCAxOSwgMjIyLCAxNTIsIDE4LCAxOSwgMjIwLCAxNzcsIDE4LCAxOSwgMjIxLCAxMSwgMTgsIAorICAgIDE5LCAyMjAsIDE0NiwgMTgsIDE5LCAyMTIsIDIxMiwgMTgsIDE5LCAyMTMsIDQ0LCAxOCwgMTksIDIyNCwgNjEsIDE4LCAxOSwgCisgICAgMjI4LCA3MCwgMTgsIDE5LCAyMjcsIDExOSwgMjI4LCA3MCwgMTgsIDE5LCAyMjgsIDY5LCAxOCwgMTksIDIyNywgMTE5LCAKKyAgICAyMjgsIDY5LCAxOCwgMTksIDIyOCwgNjgsIDE4LCAxOSwgMjI3LCAxMTksIDIyOCwgNjgsIDE4LCAxOSwgMjI4LCA2NywgMTgsIAorICAgIDE5LCAyMjcsIDExOSwgMjI4LCA2NywgMTgsIDE5LCAyMjMsIDQyLCAxOCwgMTksIDIyMywgNDEsIDE4LCAxOSwgMjIzLCA0MCwgCisgICAgMTgsIDE5LCAyMjMsIDM5LCAxOCwgMTksIDIyMywgMzgsIDE4LCAxOSwgMjIzLCA0NiwgMTgsIDE5LCAyMjcsIDExOSwgMjI3LCAKKyAgICAxMSwgMTgsIDE5LCAyMjcsIDExOSwgMjE4LCAxMTMsIDE4LCAxOSwgMjI3LCAxMTksIDIzNSwgMTQxLCAxOCwgMTksIDIyNywgCisgICAgMTE5LCAyNTEsIDEyMSwgMTgsIDE5LCAyMjcsIDExOSwgMTg0LCAxOCwgMTksIDIyNywgMTE5LCAyMDYsIDE4LCAxOSwgMjI3LCAKKyAgICAxMTksIDE5NiwgMTgsIDE5LCAyMjcsIDExOSwgMjIxLCA0OSwgMTgsIDE5LCAyNDYsIDQwLCAyMTQsIDg1LCAxOCwgMTksIAorICAgIDIxMywgMjUxLCAyMTQsIDg1LCAxOCwgMTksIDQxLCA0LCAyMjMsIDE2NCwgMTgsIDE5LCA0MSwgMjI0LCA4MywgMjQ3LCAKKyAgICAxOTUsIDE4LCAxOSwgMjI0LCAxNDcsIDIyMywgNDMsIDE4LCAxOSwgMTUzLCAyMzIsIDI1NCwgMTgsIDE5LCAxNTMsIDIzMywgCisgICAgMjU0LCAxOCwgMTksIDIxNywgOTMsIDE4LCAxOSwgMjE3LCA5NSwgMTgsIDE5LCAyMTYsIDEwOCwgMTgsIDE5LCAyMTYsIAorICAgIDExMCwgMTgsIDE5LCAyMTYsIDExNSwgMTgsIDE5LCAyMTcsIDE2LCAxOCwgMTksIDIxNywgMTgsIDE4LCAxOSwgMjIyLCAKKyAgICAxNTAsIDIyMCwgMTUxLCAxOCwgMTksIDIyMiwgMTUwLCAyMjAsIDIwMiwgMTgsIDE5LCAyMjIsIDE1MCwgMjQxLCAxNTgsIAorICAgIDE4LCAxOSwgNzAsIDI0MiwgMTc1LCAxOCwgMTksIDcwLCAyNDgsIDEyNCwgMjQzLCAxNTEsIDE4LCAxOSwgNzAsIDI0MywgCisgICAgMjI3LCAxOCwgMTksIDcwLCAyNDIsIDE4MCwgMTgsIDE5LCAyMjIsIDE1MCwgMjM1LCAxNTEsIDE4LCAxOSwgNzAsIDIzNSwgCisgICAgMTQ5LCAxOCwgMTksIDI1MiwgMTE0LCAyNDgsIDEyNCwgMTU1LCAxOCwgMTksIDI1MiwgMTE0LCAyNDgsIDEyNCwgMTUyLCAKKyAgICAxOCwgMTksIDcwLCAyNDgsIDExOSwgMTk2LCAyMzMsIDkzLCAyMTQsIDEwNywgMjMzLCAxMzIsIDIzMywgOTMsIDEsIDE4MywgCisgICAgMjMzLCA5MywgMSwgMjM0LCAyNTAsIDIzMywgOTMsIDEsIDI0MywgMjMwLCAyMzMsIDkzLCAxLCAyNDMsIDg5LCAyMzMsIDkzLCAKKyAgICAxLCAyMjksIDIyNiwgMjMzLCA5MywgMSwgMjUxLCA4OCwgMjMzLCA5MywgMSwgMjUwLCAyMTUsIDIzMywgOTMsIDEsIDIzNiwgCisgICAgMCwgMjMzLCA5MywgMSwgMjM1LCAyMzAsIDIzMywgOTMsIDEsIDIxMywgNjIsIDIzMywgOTMsIDEsIDIxOCwgNjYsIDIzMywgCisgICAgOTMsIDEsIDIxNywgMTc0LCAyMzMsIDkzLCAxLCAyNDksIDMwLCAyMzMsIDkzLCAxLCAyNDgsIDk3LCAyMzMsIDkzLCAxLCAKKyAgICAyMDcsIDIzMywgOTMsIDEsIDE5NSwgMjMzLCA5MywgMSwgMjI2LCA1OSwgMjMzLCA5MywgMSwgMjUyLCAyMzQsIDIzMywgOTMsIAorICAgIDEsIDI1MiwgNjUsIDIzMywgOTMsIDEsIDE5MSwgMjMzLCA5MywgMSwgMTg5LCAyMzMsIDkzLCAxLCAyMDgsIDIzMywgOTMsIAorICAgIDEsIDIzMywgMjU1LCAyMzMsIDkzLCAxLCAyMTQsIDUyLCAyMzMsIDkzLCAxLCAyMjEsIDQ3LCAyMzMsIDkzLCAxLCAyMTksIAorICAgIDE3NiwgMjMzLCA5MywgMSwgMjIyLCAyMjcsIDIzMywgOTMsIDEsIDE2MiwgMjMzLCA5MywgMzAsIDUsIDYzLCAyMzMsIDkzLCAKKyAgICAzMCwgNSwgNzUsIDIzMywgOTMsIDMwLCA1LCA3MiwgMjMzLCA5MywgMzAsIDUsIDI0NiwgMzAsIDIzMywgOTMsIDMwLCA1LCAKKyAgICAyNTQsIDIzNiwgMjMzLCA5MywgMzAsIDUsIDIyNywgODYsIDIzMywgOTMsIDMwLCA1LCAyNTMsIDIzNSwgMjMzLCA5MywgMzAsIAorICAgIDUsIDc3LCAyMzMsIDkzLCAzMCwgNSwgNzgsIDIzMywgOTMsIDIxOSwgMzIsIDEsIDE4OSwgMjMzLCA5MywgMjE5LCAzMiwgMSwgCisgICAgMjA4LCAyMzMsIDkzLCAyMTksIDMyLCAxLCAyMTQsIDUyLCAyMzMsIDkzLCA0LCAxLCAxODMsIDIzMywgOTMsIDQsIDEsIAorICAgIDIyOSwgMjI2LCAyMzMsIDkzLCA0LCAxLCAyNTQsIDExMywgMjMzLCA5MywgNCwgMSwgMjE4LCA2NiwgMjMzLCA5MywgNCwgMSwgCisgICAgMjA3LCAyMzMsIDkzLCA0LCAxLCAxOTUsIDIzMywgOTMsIDQsIDEsIDE5MSwgMjMzLCA5MywgNCwgMSwgMjA4LCAyMzMsIDkzLCAKKyAgICA0LCAxLCAyMzMsIDI1NSwgMjMzLCA5MywgNSwgMjMwLCAyMjksIDIzMywgOTMsIDUsIDIzNSwgMzMsIDIzMywgOTMsIDUsIAorICAgIDIyMiwgMjI2LCAyMzMsIDkzLCA1LCAyMzIsIDI1NCwgMjMzLCA5MywgMjQ1LCAxMTksIDc5LCAyMzMsIDkzLCAyMjQsIDE5MywgCisgICAgNzksIDIzMywgOTMsIDIxLCAyMTIsIDc5LCAyMzMsIDkzLCAyMSwgMTE4LCAyMzMsIDkzLCAyMSwgMTEyLCAyMzMsIDkzLCAKKyAgICAyMSwgMTcwLCAyMzMsIDkzLCAyMSwgMTY3LCAyMzMsIDkzLCAyMSwgMTg1LCAyMzMsIDkzLCAyMSwgMTkyLCAyMzMsIDkzLCAKKyAgICAyMSwgMjAwLCAyMzMsIDkzLCAyMSwgMTk4LCAyMzMsIDkzLCAyMSwgMjAzLCAzOSwgMjMzLCAxODEsIDEsIDE4MywgMzksIAorICAgIDIzMywgMTgxLCAxLCAyMTMsIDE1NiwgMzksIDIzMywgMTgxLCAxLCAyMjksIDIyNiwgMzksIDIzMywgMTgxLCAxLCAyMTYsIAorICAgIDE1NCwgMzksIDIzMywgMTgxLCAxLCAyMjIsIDIyNywgMzksIDIzMywgMTgxLCAxLCAxODksIDM5LCAyMzMsIDE4MSwgMSwgCisgICAgMjE4LCA2NiwgMzksIDIzMywgMTgxLCAxLCAyMTcsIDE3NCwgMzksIDIzMywgMTgxLCAxLCAyMzMsIDI1NSwgMzksIDIzMywgCisgICAgMTgxLCAxLCAxOTUsIDM5LCAyMzMsIDE4MSwgMSwgMjI2LCA1OSwgMzksIDIzMywgMTgxLCAxLCAxOTEsIDM5LCAyMzMsIAorICAgIDE4MSwgMSwgMjQ1LCAyOSwgMzksIDIzMywgMTgxLCAxLCAyMTUsIDgsIDM5LCAyMzMsIDE4MSwgMSwgMTYyLCAzOSwgMjMzLCAKKyAgICAxODEsIDEsIDIyNSwgMTEsIDM5LCAyMzMsIDE4MSwgMSwgMjM0LCAyNTAsIDM5LCAyMzMsIDE4MSwgMSwgMjE2LCAxNDYsIAorICAgIDM5LCAyMzMsIDE4MSwgMSwgMjA3LCAzOSwgMjMzLCAxODEsIDEsIDYzLCAzOSwgMjMzLCAxODEsIDEsIDc1LCAzOSwgMjMzLCAKKyAgICAxODEsIDEsIDI0NiwgMzAsIDM5LCAyMzMsIDE4MSwgMSwgMjQ2LCAxOSwgMzksIDIzMywgMTgxLCAxLCA3MiwgMzksIDIzMywgCisgICAgMTgxLCAxLCAyMjcsIDg2LCAzOSwgMjMzLCAxODEsIDEsIDc4LCAzOSwgMjMzLCAxODEsIDEsIDIxNSwgMTg5LCAzOSwgMjMzLCAKKyAgICAxODEsIDEsIDc3LCAzOSwgMjMzLCAxODEsIDEsIDI1MywgMjMzLCAzOSwgMjMzLCAxODEsIDEsIDI1NCwgMjM2LCAzOSwgCisgICAgMjMzLCAxODEsIDEsIDIxNiwgMjUyLCAzOSwgMjMzLCAxODEsIDEsIDIxNiwgMjUxLCAzOSwgMjMzLCAxODEsIDEsIDIxNiwgCisgICAgMjUwLCAzOSwgMjMzLCAxODEsIDEsIDIxNiwgMjQ5LCAzOSwgMjMzLCAxODEsIDEsIDIxNiwgMjQ4LCAxNjMsIDM5LCAxNjksIAorICAgIDEsIDEyNywgMjI1LCAxMSwgMTYzLCAzOSwgMTY5LCAxLCAxMTcsIDIyNSwgMTEsIDE2MywgMzksIDE2OSwgMSwgMTI3LCAKKyAgICAxODMsIDE2MywgMzksIDE2OSwgMSwgMTI3LCAyMTMsIDE1NiwgMTYzLCAzOSwgMTY5LCAxLCAxMjcsIDIyOSwgMjI2LCAxNjMsIAorICAgIDM5LCAxNjksIDEsIDExNywgMTgzLCAxNjMsIDM5LCAxNjksIDEsIDExNywgMjEzLCAxNTYsIDE2MywgMzksIDE2OSwgMSwgCisgICAgMTE3LCAyMjksIDIyNiwgMTYzLCAzOSwgMTY5LCAxLCAxMjcsIDIxNiwgMTU0LCAxNjMsIDM5LCAxNjksIDEsIDEyNywgMjIyLCAKKyAgICAyMjcsIDE2MywgMzksIDE2OSwgMSwgMTI3LCAxODksIDE2MywgMzksIDE2OSwgMSwgMTE3LCAyMTYsIDE1NCwgMTYzLCAzOSwgCisgICAgMTY5LCAxLCAxMTcsIDIyMiwgMjI3LCAxNjMsIDM5LCAxNjksIDEsIDExNywgMTg5LCAxNjMsIDM5LCAxNjksIDEsIDEyNywgCisgICAgMjE4LCA2NiwgMTYzLCAzOSwgMTY5LCAxLCAxMjcsIDIxNywgMTc0LCAxNjMsIDM5LCAxNjksIDEsIDEyNywgMjA3LCAxNjMsIAorICAgIDM5LCAxNjksIDEsIDExNywgMjE4LCA2NiwgMTYzLCAzOSwgMTY5LCAxLCAxMTcsIDIxNywgMTc0LCAxNjMsIDM5LCAxNjksIAorICAgIDEsIDExNywgMjA3LCAxNjMsIDM5LCAxNjksIDEsIDEyNywgMTk1LCAxNjMsIDM5LCAxNjksIDEsIDEyNywgMjI2LCA1OSwgCisgICAgMTYzLCAzOSwgMTY5LCAxLCAxMjcsIDE5MSwgMTYzLCAzOSwgMTY5LCAxLCAxMTcsIDE5NSwgMTYzLCAzOSwgMTY5LCAxLCAKKyAgICAxMTcsIDIyNiwgNTksIDE2MywgMzksIDE2OSwgMSwgMTE3LCAxOTEsIDE2MywgMzksIDE2OSwgMSwgMTI3LCAyNDUsIDI5LCAKKyAgICAxNjMsIDM5LCAxNjksIDEsIDEyNywgMjE1LCA4LCAxNjMsIDM5LCAxNjksIDEsIDEyNywgMjMzLCAyNTUsIDE2MywgMzksIAorICAgIDE2OSwgMSwgMTE3LCAyNDUsIDI5LCAxNjMsIDM5LCAxNjksIDEsIDExNywgMjE1LCA4LCAxNjMsIDM5LCAxNjksIDEsIDExNywgCisgICAgMjMzLCAyNTUsIDE2MywgMzksIDE2OSwgMSwgMTI3LCAxNjIsIDE2MywgMzksIDE2OSwgMSwgMTI3LCAyNDksIDMwLCAxNjMsIAorICAgIDM5LCAxNjksIDEsIDEyNywgMjUyLCAyMzQsIDE2MywgMzksIDE2OSwgMSwgMTE3LCAxNjIsIDE2MywgMzksIDE2OSwgMSwgCisgICAgMTE3LCAyNDksIDMwLCAxNjMsIDM5LCAxNjksIDEsIDExNywgMjUyLCAyMzQsIDE2MywgMzksIDE2OSwgMSwgMTI3LCAyMzQsIAorICAgIDQ4LCAxNjMsIDM5LCAxNjksIDEsIDEyNywgMjEzLCAxMjksIDE2MywgMzksIDE2OSwgMSwgMTE3LCAyMzQsIDQ4LCAxNjMsIAorICAgIDM5LCAxNjksIDEsIDExNywgMjEzLCAxMjksIDE2MywgMzksIDE2OSwgMSwgMTI3LCAyMTksIDQwLCAxNjMsIDM5LCAxNjksIAorICAgIDEsIDExNywgMjE5LCA0MCwgMTYzLCAzOSwgMTY5LCAzMCwgNSwgMzAsIDIyMCwgMTg0LCAxNjMsIDM5LCAxNjksIDMwLCA1LCAKKyAgICAyNTUsIDEwNCwgMTYzLCAzOSwgMTY5LCAzMCwgNSwgMjM2LCAxNDUsIDE2MywgMzksIDE2OSwgMzAsIDUsIDcyLCAxNjMsIAorICAgIDM5LCAxNjksIDMwLCA1LCAyMTUsIDk4LCAxNjMsIDM5LCAxNjksIDMwLCA1LCA3NywgMTYzLCAzOSwgMTY5LCAzMCwgNSwgCisgICAgMjU1LCAyMCwgMTYzLCAzOSwgMTY5LCAzMCwgNSwgNzgsIDE2MywgMzksIDE2OSwgMzAsIDUsIDIyNywgMTU3LCAxNjMsIDM5LCAKKyAgICAxNjksIDMwLCA1LCAyMTUsIDE4OSwgMTYzLCAzOSwgMTY5LCAzMCwgNSwgMjUzLCAyMTAsIDE2MywgMzksIDE2OSwgMzAsIDUsIAorICAgIDI1NSwgNjAsIDE2MywgMzksIDE2OSwgMzAsIDUsIDIxNSwgOTEsIDE2MywgMzksIDE2OSwgMzAsIDUsIDIyNywgMTUsIDE2MywgCisgICAgMzksIDE2OSwgMzAsIDUsIDIyNywgMTU0LCAxNjMsIDM5LCAxNjksIDMwLCA1LCAyMTUsIDE4NiwgMTYzLCAzOSwgMTY5LCAKKyAgICAzMCwgNSwgMjM2LCAxMSwgMTYzLCAzOSwgMTY5LCAxLCA0MSwgMjExLCAyMTEsIDE2MywgMzksIDE2OSwgMSwgNDEsIDIyOSwgCisgICAgMjI4LCAxNjMsIDM5LCAxNjksIDEsIDQxLCAyMDYsIDE2MywgMzksIDE2OSwgMSwgNDEsIDE4NCwgMTYzLCAzOSwgMTY5LCAxLCAKKyAgICA0MSwgMjM1LCAxNDEsIDE2MywgMzksIDE2OSwgMSwgNDEsIDI0OSwgMTI1LCAxNjMsIDM5LCAxNjksIDEsIDQxLCAyNTMsIAorICAgIDIwMSwgMTYzLCAzOSwgMTY5LCAxNjEsIDIzMiwgMzYsIDE2MywgMzksIDE2OSwgMTYxLCAyMzIsIDM1LCAxNjMsIDM5LCAKKyAgICAxNjksIDIxLCAyMTIsIDc5LCAxNjMsIDM5LCAxNjksIDIxLCAxMTgsIDE2MywgMzksIDE2OSwgMjEsIDExMiwgMTYzLCAzOSwgCisgICAgMTY5LCAyMSwgMTcwLCAxNjMsIDM5LCAxNjksIDIxLCAxNjcsIDE2MywgMzksIDE2OSwgMjEsIDE4NSwgMTYzLCAzOSwgMTY5LCAKKyAgICAyMSwgMTkyLCAxNjMsIDM5LCAxNjksIDIxLCAyMDAsIDE2MywgMzksIDE2OSwgMjEsIDE5OCwgMTYzLCAzOSwgMTY5LCAyMSwgCisgICAgMjAzLCAxNjMsIDM5LCAxNjksIDg5LCAyMSwgMTE4LCAxNjMsIDM5LCAxNjksIDUsIDIzMywgMjQxLCAxNjMsIDM5LCAxNjksIAorICAgIDUsIDIzMywgMjQwLCA2NywgMTYsIDIyNiwgMTQ2LCA2NywgMTYsIDIzMCwgMjEyLCAyMzQsIDE0NSwgNjcsIDE2LCAyMjUsIAorICAgIDI0MCwgMjM0LCAxNDUsIDY3LCAxNiwgMjUyLCA5NiwgMjM0LCAxNDUsIDY3LCAxNiwgMjUxLCAxNTgsIDIzNCwgMTQ1LCA2NywgCisgICAgMTYsIDIyNSwgMTMyLCAyMzQsIDE0NSwgNjcsIDE2LCAyMjUsIDEyNiwgMjM0LCAxNDUsIDY3LCAxNiwgMjI1LCAxMjQsIAorICAgIDIzNCwgMTQ1LCA2NywgMTYsIDIyNSwgMTMwLCAyMzQsIDE0NSwgNjcsIDE2LCAyMjUsIDEyOCwgMjM0LCAxNDUsIDY3LCAxNiwgCisgICAgMjQ4LCAyNDAsIDIzNCwgMTQ1LCA2NywgMTYsIDI0OCwgMjM2LCAyMzQsIDE0NSwgNjcsIDE2LCAyNDgsIDIzNSwgMjM0LCAKKyAgICAxNDUsIDY3LCAxNiwgMjQ4LCAyMzgsIDIzNCwgMTQ1LCA2NywgMTYsIDI0OCwgMjM3LCAyMzQsIDE0NSwgNjcsIDE2LCAyNDgsIAorICAgIDIzNCwgMjM0LCAxNDUsIDY3LCAxNiwgMjE2LCA1OSwgNjcsIDE2LCAyMzAsIDIxMiwgMjIzLCAxNDAsIDY3LCAxNiwgMjI1LCAKKyAgICAyNDAsIDIyMywgMTQwLCA2NywgMTYsIDI1MiwgOTYsIDIyMywgMTQwLCA2NywgMTYsIDI1MSwgMTU4LCAyMjMsIDE0MCwgNjcsIAorICAgIDE2LCAyMjUsIDEzMiwgMjIzLCAxNDAsIDY3LCAxNiwgMjI1LCAxMjYsIDIyMywgMTQwLCA2NywgMTYsIDIyNSwgMTI0LCAKKyAgICAyMjMsIDE0MCwgNjcsIDE2LCAyMjUsIDEzMCwgMjIzLCAxNDAsIDY3LCAxNiwgMjI1LCAxMjgsIDIyMywgMTQwLCA2NywgMTYsIAorICAgIDI0OCwgMjQwLCAyMjMsIDE0MCwgNjcsIDE2LCAyNDgsIDIzNiwgMjIzLCAxNDAsIDY3LCAxNiwgMjQ4LCAyMzUsIDIyMywgCisgICAgMTQwLCA2NywgMTYsIDI0OCwgMjM4LCAyMjMsIDE0MCwgNjcsIDE2LCAyNDgsIDIzNywgMjIzLCAxNDAsIDY3LCAxNiwgMjQ4LCAKKyAgICAyMzQsIDIyMywgMTQwLCAyNTEsIDE3NSwgMSwgMTgzLCAyNTEsIDE3NSwgMSwgMjQzLCAyMzAsIDI1MSwgMTc1LCAxLCAyMjksIAorICAgIDIyNiwgMjUxLCAxNzUsIDEsIDIyOSwgMTczLCAyNTEsIDE3NSwgMSwgMTk1LCAyNTEsIDE3NSwgMSwgMjUyLCAyMzQsIDI1MSwgCisgICAgMTc1LCAxLCAxOTEsIDI1MSwgMTc1LCAxLCAyMzAsIDI0NSwgMjUxLCAxNzUsIDEsIDIxOCwgNjYsIDI1MSwgMTc1LCAxLCAKKyAgICAyNDksIDMwLCAyNTEsIDE3NSwgMSwgMjA3LCAyNTEsIDE3NSwgMSwgMjI4LCAxOTAsIDI1MSwgMTc1LCAxLCAyNTEsIDg4LCAKKyAgICAyNTEsIDE3NSwgMSwgMjM2LCAwLCAyNTEsIDE3NSwgMSwgMjI4LCA2NCwgMjUxLCAxNzUsIDEsIDIyOCwgNTgsIDI1MSwgCisgICAgMTc1LCAxLCAxODksIDI1MSwgMTc1LCAxLCAyMDgsIDI1MSwgMTc1LCAxLCAyMzMsIDI1NSwgMjUxLCAxNzUsIDEsIDIxNSwgCisgICAgOCwgMjUxLCAxNzUsIDEsIDIyMiwgMjI3LCAyNTEsIDE3NSwgMSwgNjMsIDI1MSwgMTc1LCAxLCAxNjIsIDI1MSwgMTc1LCAKKyAgICAzMCwgNSwgNzUsIDI1MSwgMTc1LCAzMCwgNSwgNzIsIDI1MSwgMTc1LCAzMCwgNSwgNzcsIDI1MSwgMTc1LCAzMCwgNSwgNzgsIAorICAgIDI1MSwgMTc1LCAzMCwgNSwgMjU1LCAyMCwgMjUxLCAxNzUsIDIyNiwgMjI0LCAyNTEsIDE3NSwgMjQ1LCAyMjIsIDY4LCAKKyAgICAyMjIsIDExNCwgMzksIDg5LCAxLCAxMjcsIDE4MywgMzksIDg5LCAxLCAxMjcsIDIzNCwgMjUwLCAzOSwgODksIDEsIDEyNywgCisgICAgMjM0LCAzNSwgMzksIDg5LCAxLCAxMTcsIDE4MywgMzksIDg5LCAxLCAxMTcsIDIzNCwgMzUsIDM5LCA4OSwgMSwgMTE3LCAKKyAgICAyMzQsIDI1MCwgMzksIDg5LCAxLCAyMjksIDIyNiwgMzksIDg5LCAxLCAxMjcsIDI1MSwgODgsIDM5LCA4OSwgMSwgMTI3LCAKKyAgICAyNTAsIDIxNSwgMzksIDg5LCAxLCAxMTcsIDI1MSwgODgsIDM5LCA4OSwgMSwgMTE3LCAyMjIsIDIyNywgMzksIDg5LCAxLCAKKyAgICAxMTcsIDI1MCwgMjE1LCAzOSwgODksIDEsIDIyOCwgNjQsIDM5LCA4OSwgMSwgMjI0LCA2NywgMzksIDg5LCAxLCAxMjcsIAorICAgIDIyNCwgNjUsIDM5LCA4OSwgMSwgMjQ5LCAzMCwgMzksIDg5LCAxLCAxMTcsIDIyNCwgNjUsIDM5LCA4OSwgMSwgMjI0LCA3NiwgCisgICAgMzksIDg5LCAxLCAxMjcsIDIxOCwgNjYsIDM5LCA4OSwgMSwgMTI3LCAyMTcsIDE3NCwgMzksIDg5LCAxLCAxMTcsIDIxOCwgCisgICAgNjYsIDM5LCA4OSwgMSwgMTE3LCAyMTcsIDE3NCwgMzksIDg5LCAxLCAyMDcsIDM5LCA4OSwgMSwgMjUyLCAyMzQsIDM5LCAKKyAgICA4OSwgMSwgMTI3LCAxOTUsIDM5LCA4OSwgMSwgMTI3LCAyMjYsIDU5LCAzOSwgODksIDEsIDEyNywgMjQ1LCAyOSwgMzksIAorICAgIDg5LCAxLCAxMTcsIDE5NSwgMzksIDg5LCAxLCAxMTcsIDI0NSwgMjksIDM5LCA4OSwgMSwgMTE3LCAyMjYsIDU5LCAzOSwgCisgICAgODksIDEsIDE5MSwgMzksIDg5LCAxLCAxMTcsIDE4OSwgMzksIDg5LCAxLCAxMjcsIDE4OSwgMzksIDg5LCAxLCAyMDgsIDM5LCAKKyAgICA4OSwgMSwgMjIzLCA3NCwgMzksIDg5LCAxLCAyMzMsIDI1NSwgMzksIDg5LCAxLCAyMzIsIDIyNSwgMzksIDg5LCAxLCAyMTQsIAorICAgIDUyLCAzOSwgODksIDEsIDEyNywgMjIxLCA0NywgMzksIDg5LCAxLCAxMjcsIDIxOSwgMTc2LCAzOSwgODksIDEsIDEyNywgCisgICAgMjIyLCAyMjcsIDM5LCA4OSwgMSwgMTI3LCAxNjIsIDM5LCA4OSwgMSwgMjMzLCA1NCwgMzksIDg5LCAxLCA2MywgMzksIDg5LCAKKyAgICAxLCAxMTcsIDE2MiwgMzksIDg5LCAxLCA3NSwgMzksIDg5LCAxLCAyMzYsIDE0NSwgMzksIDg5LCAxLCA3MiwgMzksIDg5LCAKKyAgICAxLCAyMTUsIDk4LCAzOSwgODksIDEsIDI0NiwgMzAsIDM5LCA4OSwgMSwgMjI3LCA4NiwgMzksIDg5LCAxLCAyMzMsIDI0MSwgCisgICAgMzksIDg5LCAxLCAyNDIsIDIzMCwgMjIyLCAyMjcsIDM5LCA4OSwgMTIwLCA1LCAxNDQsIDIwOCwgMzksIDg5LCAxMjAsIDUsIAorICAgIDE0NCwgMjMzLCAyNTUsIDM5LCA4OSwgMTIwLCA1LCAyMzQsIDAsIDIxOCwgMjIsIDIzMywgMjMxLCAzOSwgODksIDUsIDIzMiwgCisgICAgODIsIDIzNSwgOTMsIDIzMywgMjMxLCAzOSwgODksIDEyMCwgNSwgNDEsIDIyOSwgMjI2LCAzOSwgODksIDEyMCwgNSwgMTE3LCAKKyAgICAxOTUsIDM5LCA4OSwgMTIwLCA1LCAxMjcsIDIyNCwgNjYsIDE3MSwgMTE3LCAxOTUsIDM5LCA4OSwgMTIwLCA1LCAxOTEsIAorICAgIDM5LCA4OSwgMTIwLCA1LCAyNTIsIDIzNCwgMzksIDg5LCAxMjAsIDUsIDIyMiwgMjI3LCAzOSwgODksIDUsIDIyMiwgMjA1LCAKKyAgICAzOSwgODksIDMwLCA1LCA2MywgMzksIDg5LCAzMCwgNSwgMjMyLCA4MiwgMjIyLCAxNjYsIDM5LCA4OSwgMzAsIDUsIDI1NSwgCisgICAgMTA0LCAzOSwgODksIDMwLCA1LCAyMTgsIDI4LCAyNTUsIDEwNCwgMzksIDg5LCAzMCwgNSwgNzUsIDM5LCA4OSwgMzAsIDUsIAorICAgIDIzNiwgMTQ1LCAzOSwgODksIDMwLCA1LCAyMTUsIDE4OSwgMzksIDg5LCAzMCwgNSwgMjE1LCA5NywgMzksIDg5LCAzMCwgNSwgCisgICAgNzIsIDM5LCA4OSwgMzAsIDUsIDIxNSwgOTgsIDM5LCA4OSwgMzAsIDUsIDc4LCAzOSwgODksIDMwLCA1LCAyMjcsIDE1OCwgCisgICAgNTUsIDM5LCA4OSwgMzAsIDUsIDIyNywgMTUsIDM5LCA4OSwgMzAsIDUsIDc3LCAzOSwgODksIDMwLCA1LCAyNTUsIDIwLCAKKyAgICAzOSwgODksIDMwLCA1LCAyMjcsIDg2LCAzOSwgODksIDMwLCA1LCAyNTQsIDIzNiwgMzksIDg5LCAzMCwgNSwgODksIDI1NCwgCisgICAgMjM2LCAzOSwgODksIDMwLCA1LCAyMjcsIDE1OCwgNTAsIDM5LCA4OSwgNSwgMjMyLCA4MiwgMjM1LCA5MiwgMzksIDg5LCA1LCAKKyAgICAyMTYsIDI1MywgMzksIDg5LCA1LCAyMTYsIDI1MiwgMzksIDg5LCA1LCAyMzQsIDIxNywgMjE2LCAyNTEsIDM5LCA4OSwgNSwgCisgICAgMjM0LCAyMTcsIDIxNiwgMjUwLCAzOSwgODksIDUsIDIzNCwgMjE3LCAyMTYsIDI0OSwgMzksIDg5LCA1LCAyMjQsIDExMiwgCisgICAgMjQyLCAxNDcsIDM5LCA4OSwgNSwgMjMyLCA4MiwgMjIyLCAxOTIsIDM5LCA4OSwgNSwgMjM0LCAyMTYsIDIzNSwgNzcsIDM5LCAKKyAgICA4OSwgMzgsIDI0OSwgMTc4LCAyNDcsIDE5NSwgMzksIDg5LCAyNDEsIDE1MSwgMjEsIDIxMiwgNzksIDM5LCA4OSwgMjQxLCAKKyAgICAxNTEsIDIxLCAxMTgsIDM5LCA4OSwgMjQxLCAxNTEsIDIxLCAxMTIsIDM5LCA4OSwgMjQxLCAxNTEsIDIxLCAxNzAsIDM5LCAKKyAgICA4OSwgMjQxLCAxNTEsIDIxLCAxNjcsIDM5LCA4OSwgMjQxLCAxNTEsIDIxLCAxODUsIDM5LCA4OSwgMjQxLCAxNTEsIDIxLCAKKyAgICAxOTIsIDM5LCA4OSwgMjQxLCAxNTEsIDIxLCAyMDAsIDM5LCA4OSwgMjQxLCAxNTEsIDIxLCAxOTgsIDM5LCA4OSwgMjQxLCAKKyAgICAxNTEsIDIxLCAyMDMsIDM5LCA4OSwgODksIDIxLCAyMTIsIDc5LCAzOSwgODksIDg5LCAyMSwgMTE4LCAzOSwgODksIDg5LCAKKyAgICAyMSwgMTEyLCAzOSwgODksIDg5LCAyMSwgMTcwLCAzOSwgODksIDg5LCAyMSwgMTY3LCAzOSwgODksIDg5LCAyMSwgMTg1LCAKKyAgICAzOSwgODksIDg5LCAyMSwgMTkyLCAzOSwgODksIDg5LCAyMSwgMjAwLCAzOSwgODksIDg5LCAyMSwgMTk4LCAzOSwgODksIAorICAgIDg5LCAyMSwgMjAzLCAzOSwgODksIDUsIDIxMywgMjM3LCAzOSwgODksIDUsIDIxMywgMjM2LCAzOSwgODksIDUsIDIyMiwgCisgICAgMTU2LCAzOSwgODksIDUsIDIzNSwgMjIsIDM5LCA4OSwgNSwgMjQxLCA4MSwgMzksIDg5LCA1LCAyNDcsIDIwOSwgMzksIDg5LCAKKyAgICA1LCAyMjMsIDIzNiwgMjIzLCAxMjMsIDIyNCwgNzYsIDM5LCA4OSwgNSwgMjMyLCA4MiwgMjEzLCA2MywgMzksIDg5LCA1LCAKKyAgICAyMzUsIDEyNCwgMzksIDg5LCA1LCAyMzUsIDEyMywgMzksIDg5LCA1LCAyMjIsIDE2MywgMzksIDg5LCA1LCAyMjIsIDE2MiwgCisgICAgMzksIDg5LCA1LCAyNDIsIDExMiwgMzksIDg5LCA1LCAyNTEsIDg1LCAxMDEsIDUsIDIxNSwgMTc2LCAyMjMsIDIxNywgMTAxLCAKKyAgICA1LCAyMTUsIDE3NiwgMjUxLCA1NywgMTAxLCA1LCAyNTAsIDI0MywgMTAxLCA1LCAyMTgsIDIyOSwgMTAxLCA1LCAyNTIsIAorICAgIDI1LCAxMDEsIDEsIDI1NCwgMjE5LCAxMDEsIDEsIDI1NCwgMjIwLCAyMTcsIDIzNCwgMTAxLCAxLCAyMzYsIDE0MSwgMTAxLCAKKyAgICAxLCAyMzYsIDE0MiwgMjE3LCAyMzQsIDEwMSwgMSwgMjE1LCAxNzksIDEwMSwgMSwgMjE1LCAxODAsIDIxNywgMjM0LCAxMDEsIAorICAgIDEsIDIyNCwgMTEyLCAyMjQsIDcsIDEwMSwgMSwgMjI0LCAxMTIsIDIyNCwgOCwgMjE3LCAyMzQsIDEwMSwgMSwgMjM0LCAwLCAKKyAgICAyMzMsIDE0NiwgMTAxLCAxLCAyMzQsIDAsIDIzMywgMTQ3LCAyMTcsIDIzNCwgMTAxLCAxLCAyNDYsIDEsIDEwMSwgMSwgCisgICAgMjU0LCAyMzQsIDEwMSwgMSwgMjI3LCAxMTUsIDEwMSwgMSwgMjI3LCAxMTYsIDIxNywgMjM0LCAxMDEsIDEsIDE4MywgMTAxLCAKKyAgICAxLCAyMzUsIDEzMSwgMjMyLCA4NSwgMTAxLCAxLCAyNDMsIDIzMCwgMTAxLCAxLCAyNDMsIDIzMSwgMjQzLCAxLCAxMDEsIDEsIAorICAgIDIyOSwgMjI2LCAxMDEsIDEsIDI1MSwgODgsIDEwMSwgMSwgMjUxLCA4OSwgMjMzLCAyNDQsIDEwMSwgMSwgMjM2LCAwLCAKKyAgICAxMDEsIDEsIDIzNiwgMSwgMjM1LCAyMzQsIDEwMSwgMSwgMjI4LCA2NCwgMTAxLCAxLCAyMTgsIDY3LCAyMzMsIDE5OCwgCisgICAgMTAxLCAxLCAyMTgsIDY3LCAyMzAsIDIwNywgMjMyLCA4NSwgMTAxLCAxLCAyNDksIDMxLCAyMzAsIDIwNywgMjU0LCAxODEsIAorICAgIDEwMSwgMSwgMjQ5LCAzMSwgMjMwLCAyMDcsIDIzMiwgODUsIDEwMSwgMSwgMjMwLCAxMTUsIDIyNCwgNzksIDEwMSwgMSwgCisgICAgMjE4LCA2NiwgMTAxLCAxLCAyMTgsIDY3LCAyMTcsIDI1NSwgMTAxLCAxLCAyNDksIDMwLCAxMDEsIDEsIDI0OSwgMzEsIAorICAgIDIzMiwgMTAzLCAxMDEsIDEsIDIwNywgMTAxLCAxLCAxOTUsIDEwMSwgMSwgMjI2LCAyNTIsIDIzNSwgODgsIDEwMSwgMSwgCisgICAgMjUyLCAyMzQsIDEwMSwgMSwgMjUyLCAyMzUsIDIzNSwgMzQsIDEwMSwgMSwgMTkxLCAxMDEsIDEsIDE4OSwgMTAxLCAxLCAKKyAgICAyMDgsIDEwMSwgMSwgMjMzLCAyNTUsIDEwMSwgMSwgMjE0LCA1MiwgMTAxLCAxLCAyMjIsIDIyOCwgMjIyLCAyMTQsIDEwMSwgCisgICAgMSwgMjIyLCAyMjgsIDIyMiwgMTczLCAxMDEsIDEsIDIyMiwgMjI3LCAxMDEsIDEsIDE2MiwgMTAxLCA1LCAyMjQsIDAsIAorICAgIDEwMSwgMzAsIDUsIDIxNywgMjM0LCAxMDEsIDMwLCA1LCAyMTUsIDE3NSwgMTAxLCAzMCwgNSwgMjE1LCAxNzYsIDIyMiwgCisgICAgMTY5LCAxMDEsIDMwLCA1LCAyMTksIDYsIDEwMSwgMzAsIDUsIDIxOSwgNywgMjM2LCAxMzMsIDEwMSwgMzAsIDUsIDIyNCwgCisgICAgMTEyLCAyMjQsIDcsIDEwMSwgMzAsIDUsIDIyNCwgMTEyLCAyMjQsIDgsIDIxNywgMjM0LCAxMDEsIDMwLCA1LCAyMzQsIDAsIAorICAgIDIzMywgMTQ2LCAxMDEsIDMwLCA1LCAyMzQsIDAsIDIzMywgMTQ3LCAyMTcsIDIzNCwgMTAxLCAzMCwgNSwgMjE4LCAyOSwgCisgICAgMTAxLCAzMCwgNSwgMjE4LCAzMCwgMjI0LCA3LCAxMDEsIDMwLCA1LCAyMTgsIDMwLCAyMTcsIDIzNCwgMTAxLCAzMCwgNSwgCisgICAgMjE4LCAzMCwgMjI0LCA4LCAyMTcsIDIzNCwgMTAxLCAzMCwgNSwgMjI2LCA5NSwgMTAxLCAzMCwgNSwgMjI2LCA5NiwgMjE3LCAKKyAgICAyMzQsIDEwMSwgMjU1LCAyNywgMjU1LCAyNiwgMTAxLCAxLCAyMzUsIDExMywgMjIyLCAxNjgsIDEwMSwgMSwgMjM0LCAyMjEsIAorICAgIDIyMiwgMTY4LCAxMDEsIDEsIDIxNiwgNywgMjIyLCAxNjgsIDEwMSwgMSwgMjQ2LCAyNSwgMjIyLCAxNjgsIDEwMSwgMSwgCisgICAgMjE0LCAyMzgsIDIyMiwgMTY4LCAxMDEsIDEsIDIxMiwgMTAwLCAyMjIsIDE2OCwgMTAxLCAxLCAyNTMsIDI1MiwgMjIyLCAKKyAgICAxNjgsIDEwMSwgMjEsIDIxMiwgNzksIDEwMSwgMjEsIDExOCwgMTAxLCAyMSwgMTEyLCAxMDEsIDIxLCAxNzAsIDEwMSwgMjEsIAorICAgIDE2NywgMTAxLCAyMSwgMTg1LCAxMDEsIDIxLCAxOTIsIDEwMSwgMjEsIDIwMCwgMTAxLCAyMSwgMTk4LCAxMDEsIDIxLCAKKyAgICAyMDMsIDEwMSwgMjI2LCAxOTQsIDEwMSwgMjI2LCAyMTksIDEwMSwgMjEzLCAyMjYsIDEwMSwgMjUxLCAzNiwgMjI2LCAyMTIsIAorICAgIDEwMSwgMjUxLCAzNiwgMjIwLCAxMTcsIDEwMSwgMjUxLCAzNiwgMjI2LCAxNjcsIDEwMSwgMjI2LCAyMTgsIDEwMSwgMjcsIAorICAgIDE2LCAyNDcsIDIwMSwgMTAxLCAyNywgMTYsIDI0OCwgMTIzLCAxMDEsIDI3LCAxNiwgMjQ2LCAxNDAsIDEwMSwgMjcsIDE2LCAKKyAgICAyNDgsIDI0MywgMTAxLCAyNywgMTYsIDI0OCwgMjQ0LCAyMTgsIDIyOSwgMTAxLCAyNywgMTYsIDI0OCwgMjIsIDEwMSwgMjcsIAorICAgIDE2LCAyNDksIDIzLCAxMDEsIDI3LCAxNiwgMjQ4LCAxMDUsIDEwMSwgMjcsIDE2LCAyNDksIDksIDEwMSwgMjcsIDE2LCAKKyAgICAyNDgsIDI0NCwgMjQzLCAxNTMsIDEwMSwgMjcsIDE2LCAzOCwgMjE3LCAyMzAsIDEwMSwgMjcsIDE2LCAzOCwgMjQ1LCAyMjAsIAorICAgIDEwMSwgMjcsIDE2LCAzOCwgMjM1LCAyOSwgMTAxLCAyNywgMTYsIDM4LCAyMzUsIDMxLCAxMDEsIDI3LCAxNiwgMzgsIDIzNSwgCisgICAgMjM4LCAxMDEsIDI3LCAxNiwgMzgsIDIzNSwgMzAsIDIsIDIzNSwgMjM4LCAxMDEsIDI3LCAxNiwgMzgsIDIzNSwgMzIsIDIsIAorICAgIDIzNSwgMjM4LCAxMDEsIDI3LCAxNiwgMzgsIDI1MiwgODQsIDEwMSwgMjcsIDE2LCAzOCwgMjQzLCA1LCAxMDEsIDI3LCAxNiwgCisgICAgMjIzLCAxODAsIDIxMCwgMjQ2LCAxNTAsIDEwMSwgMjcsIDE2LCAyMjMsIDE4MCwgMjEwLCAyNDksIDIxLCAxMDEsIDI3LCAKKyAgICAxNiwgMjIzLCAxODAsIDI1MCwgNjAsIDIxNiwgODMsIDEwMSwgMjcsIDE2LCAyMjMsIDE4MCwgMjUwLCA2MCwgMjE4LCAzNiwgCisgICAgMTAxLCAyNywgMTYsIDIzMywgMTY2LCAyMTAsIDIyNiwgMjA3LCAxMDEsIDI3LCAxNiwgMjMzLCAxNjYsIDIxMCwgMjI1LCAKKyAgICA2MSwgMTAxLCAyNywgMTYsIDIzMywgMTY2LCAyNTAsIDYwLCAyMjUsIDIwNiwgMTAxLCAyNywgMTYsIDIzMywgMTY2LCAyNTAsIAorICAgIDYwLCAyMjUsIDE5NiwgMTAxLCAyNywgMTYsIDIzMywgMTY2LCAyMTAsIDIyNSwgMjI5LCAyMTgsIDI1MSwgNSwgMjI2LCAKKyAgICAxOTEsIDIxOCwgMjUxLCA1LCAyMjYsIDIwMywgMjE4LCAyNTEsIDUsIDIyNiwgMjAwLCAyMTgsIDI1MSwgMSwgNjMsIDIxOCwgCisgICAgMjUxLCAxLCA3NSwgMjE4LCAyNTEsIDEsIDcyLCAyMTgsIDI1MSwgMSwgMjU1LCAyMCwgMjE4LCAyNTEsIDEsIDc4LCAyMTgsIAorICAgIDI1MSwgMSwgNzcsIDIxOCwgMjUxLCAxLCAyNDUsIDE0MywgMjE4LCAyNTEsIDEsIDE4MywgMjE4LCAyNTEsIDEsIDIyNSwgCisgICAgMTEsIDIxOCwgMjUxLCAxLCAyNDMsIDIzMCwgMjE4LCAyNTEsIDEsIDIyOSwgMjI2LCAyMTgsIDI1MSwgMSwgMjUxLCA4OCwgCisgICAgMjE4LCAyNTEsIDEsIDIzNiwgMCwgMjE4LCAyNTEsIDEsIDIxMiwgMTA5LCAyMTgsIDI1MSwgMSwgMjI4LCA2NCwgMjE4LCAKKyAgICAyNTEsIDEsIDIxOCwgNjYsIDIxOCwgMjUxLCAxLCAyNDksIDMwLCAyMTgsIDI1MSwgMSwgMjA3LCAyMTgsIDI1MSwgMSwgCisgICAgMTk1LCAyMTgsIDI1MSwgMSwgMjQ1LCAyOSwgMjE4LCAyNTEsIDEsIDIxNSwgOCwgMjE4LCAyNTEsIDEsIDI1MiwgMjM0LCAKKyAgICAyMTgsIDI1MSwgMSwgMTkxLCAyMTgsIDI1MSwgMSwgMTg5LCAyMTgsIDI1MSwgMSwgMjA4LCAyMTgsIDI1MSwgMSwgMjMzLCAKKyAgICAyNTUsIDIxOCwgMjUxLCAxLCAyMTQsIDUyLCAyMTgsIDI1MSwgMSwgMjIyLCAyMjcsIDIxOCwgMjUxLCAxLCAyMTMsIDE1NiwgCisgICAgMjE4LCAyNTEsIDEsIDE2MiwgMjE4LCAyNTEsIDEyMCwgNSwgMjI2LCAyMTYsIDIxOCwgMjUxLCAxMjAsIDUsIDIyNiwgMTkzLCAKKyAgICAyMTgsIDI1MSwgMTIwLCA1LCAyMjYsIDE5MCwgMjE4LCAyNTEsIDMwLCA1LCAyMjYsIDIwNiwgMjE4LCAyNTEsIDMwLCA1LCAKKyAgICAyMjYsIDE4OSwgMjE4LCAyNTEsIDMwLCA1LCAyMjYsIDIxMCwgMjE4LCAyNTEsIDMwLCA1LCAyMjYsIDE5OSwgMjE4LCAyNTEsIAorICAgIDMwLCA1LCAyMjYsIDIxNywgMjE4LCAyNTEsIDMwLCA1LCAyMjYsIDIwOCwgMjE4LCAyNTEsIDUsIDIyNiwgMjIwLCAyMTgsIAorICAgIDI1MSwgMSwgMjM0LCAyNTAsIDIxOCwgMjUxLCAxLCAyMTgsIDE5MCwgMjE4LCAyNTEsIDIxLCAyMTIsIDc5LCAyMTgsIDI1MSwgCisgICAgMjEsIDExOCwgMjE4LCAyNTEsIDIxLCAxMTIsIDIxOCwgMjUxLCAyMSwgMTcwLCAyMTgsIDI1MSwgMjEsIDE2NywgMjE4LCAKKyAgICAyNTEsIDIxLCAxODUsIDIxOCwgMjUxLCAyMSwgMTkyLCAyMTgsIDI1MSwgMjEsIDIwMCwgMjE4LCAyNTEsIDIxLCAxOTgsIAorICAgIDIxOCwgMjUxLCAyMSwgMjAzLCAyNTIsIDE2NiwgMSwgNjMsIDI1MiwgMTY2LCAxLCAyMjAsIDEwOSwgNjMsIDI1MiwgMTY2LCAKKyAgICAxLCAxNjIsIDI1MiwgMTY2LCAxLCAyMjAsIDEwOSwgMTYyLCAyNTIsIDE2NiwgMSwgMjMyLCA1OSwgMTYyLCAyNTIsIDE2NiwgCisgICAgMSwgMjUyLCAyMzQsIDI1MiwgMTY2LCAxLCAyMzUsIDc0LCAyNTIsIDIzNCwgMjUyLCAxNjYsIDEsIDE5NSwgMjUyLCAxNjYsIAorICAgIDEsIDIyMCwgMTA5LCAxOTUsIDI1MiwgMTY2LCAxLCAyMDcsIDI1MiwgMTY2LCAxLCAyMzIsIDU5LCAyMDcsIDI1MiwgMTY2LCAKKyAgICAxLCAyMTQsIDUyLCAyNTIsIDE2NiwgMSwgMjIwLCAxMDksIDIxNCwgNTIsIDI1MiwgMTY2LCAxLCAyMjYsIDIzMSwgMjE0LCAKKyAgICA1MiwgMjUyLCAxNjYsIDEsIDI0MywgMjMwLCAyNTIsIDE2NiwgMSwgMjIwLCAxMDksIDI0MywgMjMwLCAyNTIsIDE2NiwgMSwgCisgICAgMjM2LCAwLCAyNTIsIDE2NiwgMSwgMjQ5LCAzMCwgMjUyLCAxNjYsIDEsIDIwOCwgMjUyLCAxNjYsIDEsIDIyMCwgMTA5LCAKKyAgICAyMDgsIDI1MiwgMTY2LCAxLCAxOTEsIDI1MiwgMTY2LCAxLCAyMjAsIDEwOSwgMTkxLCAyNTIsIDE2NiwgMSwgMjE5LCAyMzIsIAorICAgIDIxOCwgNjYsIDI1MiwgMTY2LCAxLCAyMjgsIDIwOSwgMjE4LCA2NiwgMjUyLCAxNjYsIDEsIDIyMiwgMjI3LCAyNTIsIDE2NiwgCisgICAgMSwgMjIwLCAxMDksIDIyMiwgMjI3LCAyNTIsIDE2NiwgMSwgMjMyLCA1OSwgMjIyLCAyMjcsIDI1MiwgMTY2LCAxLCAxODksIAorICAgIDI1MiwgMTY2LCAxLCAyMjAsIDEwOSwgMTg5LCAyNTIsIDE2NiwgMSwgMjI5LCAyMjYsIDI1MiwgMTY2LCAxLCAyMzMsIDI1NSwgCisgICAgMjUyLCAxNjYsIDEsIDIyMCwgMTA5LCAyMzMsIDI1NSwgMjUyLCAxNjYsIDEsIDIyOCwgNjQsIDI1MiwgMTY2LCAxLCAyNTEsIAorICAgIDg4LCAyNTIsIDE2NiwgMSwgMjMwLCAzOSwgMjUyLCAxNjYsIDEsIDIzMiwgMSwgMjUyLCAxNjYsIDEsIDc1LCAyNTIsIDE2NiwgCisgICAgMSwgNzIsIDI1MiwgMTY2LCA1LCAyMTcsIDEsIDI1MiwgMTY2LCAzMCwgNSwgNzcsIDI1MiwgMTY2LCAzMCwgNSwgMjI2LCAKKyAgICAyMzEsIDc3LCAyNTIsIDE2NiwgMzAsIDUsIDI0NiwgMzAsIDI1MiwgMTY2LCAzMCwgNSwgNzUsIDI1MiwgMTY2LCAzMCwgNSwgCisgICAgMjM1LCA3NCwgNzUsIDI1MiwgMTY2LCAzMCwgNSwgNzgsIDI1MiwgMTY2LCAzMCwgNSwgMjM1LCA3NCwgNzgsIDI1MiwgMTY2LCAKKyAgICAzMCwgNSwgNzIsIDI1MiwgMTY2LCAzMCwgNSwgMTAzLCAzMSwgMjIwLCAxMDksIDIyMiwgMjI3LCAyNTIsIDE2NiwgMTIwLCAKKyAgICA1LCAyMjksIDIyOCwgMjUyLCAxNjYsIDEyMCwgNSwgMjQyLCAxNjIsIDI1MiwgMTY2LCAyMjYsIDIwMiwgMjUyLCAxNjYsIAorICAgIDIyNiwgMTk4LCAyNTIsIDE2NiwgMTYsIDI1MiwgMzMsIDIzMCwgMTE1LCAyMzEsIDE3NCwgMjUyLCAxNjYsIDE2LCAyNTIsIAorICAgIDMzLCAyMjUsIDIzMiwgMjUyLCAxNjYsIDE2LCAyNTIsIDMzLCAyMzUsIDE2NSwgMjUyLCAxNjYsIDE2LCAyNTIsIDMzLCAKKyAgICAyMjYsIDIwMiwgMTg2LCAxLCAxODMsIDE4NiwgMSwgMjM0LCAxNTksIDE4NiwgMSwgMjM0LCAyNTAsIDE4NiwgMSwgMjQzLCAKKyAgICAyMzAsIDE4NiwgMSwgMjQzLCAyNiwgMTg2LCAxLCAyMjksIDIyNiwgMTg2LCAxLCAyNTEsIDg4LCAxODYsIDEsIDI1MCwgCisgICAgMjE1LCAxODYsIDEsIDIzNiwgMCwgMTg2LCAxLCAyMjgsIDY0LCAxODYsIDEsIDIxOCwgNjYsIDE4NiwgMSwgMjE3LCAxNzQsIAorICAgIDE4NiwgMSwgMjQ5LCAzMCwgMTg2LCAxLCAyMDcsIDE4NiwgMSwgMTk1LCAxODYsIDEsIDIyNSwgMjEwLCAxODYsIDEsIDIyNiwgCisgICAgNTksIDE4NiwgMSwgMjQ1LCAyOSwgMTg2LCAxLCAyNDQsIDE2NCwgMTg2LCAxLCAyNTIsIDIzNCwgMTg2LCAxLCAyNTIsIDE0LCAKKyAgICAxODYsIDEsIDE5MSwgMTg2LCAxLCAyMzEsIDUxLCAxODYsIDEsIDIxNiwgMTU0LCAxODYsIDEsIDIxNiwgMTQ2LCAxODYsIDEsIAorICAgIDI0NiwgMTE0LCAxODYsIDEsIDE4OSwgMTg2LCAxLCAyMDgsIDE4NiwgMSwgMjMzLCAyNTUsIDE4NiwgMSwgMTYyLCAxODYsIAorICAgIDEsIDI0MiwgMiwgMTg2LCAxLCAyMTUsIDgsIDE4NiwgMSwgMjIyLCAyMjcsIDE4NiwgMSwgMjIxLCA0NywgMTg2LCAxLCAKKyAgICAyMTQsIDUyLCAxODYsIDEsIDYzLCAxODYsIDIxOSwgMzIsIDEsIDE4OSwgMTg2LCAyMTksIDMyLCAxLCAyMDgsIDE4NiwgMzAsIAorICAgIDUsIDI1NSwgMTA0LCAxODYsIDMwLCA1LCA3NSwgMTg2LCAzMCwgNSwgNzgsIDE4NiwgMzAsIDUsIDIyNywgODYsIDE4NiwgCisgICAgMzAsIDUsIDcyLCAxODYsIDMwLCA1LCAyMTUsIDk4LCAxODYsIDMwLCA1LCA3NywgMTg2LCAxMjAsIDUsIDIzNSwgMTQxLCAKKyAgICAxODYsIDEyMCwgNSwgMTg0LCAxODYsIDEyMCwgNSwgMTU1LCAxODYsIDEyMCwgNSwgMjA2LCAxODYsIDEyMCwgNSwgMjI3LCAKKyAgICAxMSwgMTg2LCAxMjAsIDUsIDE1MiwgMTg2LCAxMjAsIDUsIDIxOCwgMTEzLCAxODYsIDEyMCwgNSwgMjI4LCA0MywgMTg2LCAKKyAgICAxMjAsIDUsIDIzNSwgOTIsIDE4NiwgNSwgMjI0LCA3NywgMTg2LCA1LCAyMjgsIDEwMywgMTg2LCAyMjUsIDYzLCAyMTgsIAorICAgIDY1LCAxODYsIDIyNSwgNjMsIDIyOCwgNTIsIDIxNywgODcsIDIxOCwgNjUsIDE4NiwgMjI1LCA2MywgMjUwLCAyMjEsIDE4NiwgCisgICAgMjI1LCA2MywgMjE2LCAxNDEsIDI1MCwgMjIxLCAxODYsIDIyNSwgNjMsIDIxNiwgMTQwLCAxODYsIDIxLCAyMTIsIDc5LCAKKyAgICAxODYsIDIxLCAxMTgsIDE4NiwgMjEsIDExMiwgMTg2LCAyMSwgMTcwLCAxODYsIDIxLCAxNjcsIDE4NiwgMjEsIDE4NSwgCisgICAgMTg2LCAyMSwgMTkyLCAxODYsIDIxLCAyMDAsIDE4NiwgMjEsIDE5OCwgMTg2LCAyMSwgMjAzLCAxODYsIDEsIDIxNiwgMTI4LCAKKyAgICAxODYsIDEsIDIxNiwgMTE2LCAxODYsIDEsIDI0OCwgMjA3LCAyMjcsIDExMywgMjUwLCAxNjMsIDIxLCAyMTIsIDc5LCAyMjcsIAorICAgIDExMywgMjUwLCAxNjMsIDIxLCAxMTgsIDIyNywgMTEzLCAyNTAsIDE2MywgMjEsIDExMiwgMjI3LCAxMTMsIDI1MCwgMTYzLCAKKyAgICAyMSwgMTcwLCAyMjcsIDExMywgMjUwLCAxNjMsIDIxLCAxNjcsIDIyNywgMTEzLCAyNTAsIDE2MywgMjEsIDE4NSwgMjI3LCAKKyAgICAxMTMsIDI1MCwgMTYzLCAyMSwgMTkyLCAyMjcsIDExMywgMjUwLCAxNjMsIDIxLCAyMDAsIDIyNywgMTEzLCAyNTAsIDE2MywgCisgICAgMjEsIDE5OCwgMjI3LCAxMTMsIDI1MCwgMTYzLCAyMSwgMjAzLCAyMjcsIDExMywgMjUwLCAxNjMsIDEsIDIzMywgMjU1LCAKKyAgICAyMjcsIDExMywgMjUwLCAxNjMsIDEsIDI1MywgMjQ5LCAyMjcsIDExMywgMjUwLCAxNjMsIDEsIDI1NCwgMjQ5LCAyMjcsIAorICAgIDExMywgMjUwLCAxNjMsIDEsIDI1NCwgMTUxLCAyMjcsIDExMywgMjUwLCAxNjMsIDEsIDI1NCwgMjEzLCAyMjcsIDExMywgCisgICAgMjUwLCAxNjMsIDEsIDIzMywgMjU0LCAyMjcsIDExMywgMjUwLCAxNjMsIDEsIDI1NSwgNjYsIDIyNywgMTEzLCAyNTAsIAorICAgIDE2MywgMSwgMjU1LCA2NywgMjI3LCAxMTMsIDI1MCwgMTYzLCAxLCAyNTUsIDY1LCAyMjcsIDExMywgMjUwLCAxNjMsIDEsIAorICAgIDI1NSwgNjEsIDIyNywgMTEzLCAyNTAsIDE2MywgMSwgMjMzLCAxMTEsIDIyNywgMTEzLCAyNTAsIDE2MywgMSwgMjM2LCAzMCwgCisgICAgMjI3LCAxMTMsIDI1MCwgMTYzLCAxLCAyMzYsIDE0NiwgMjI3LCAxMTMsIDI1MCwgMTYzLCAxLCAyMzYsIDQ5LCAyMjcsIAorICAgIDExMywgMjUwLCAxNjMsIDEsIDIzNiwgMzgsIDIyNywgMTEzLCAyNTAsIDE2MywgMSwgMjMyLCAyMzAsIDIyNywgMTEzLCAKKyAgICAyNTAsIDE2MywgMSwgMjE1LCAxOTYsIDIyNywgMTEzLCAyNTAsIDE2MywgMSwgMjE1LCAxOTQsIDIyNywgMTEzLCAyNTAsIAorICAgIDE2MywgMSwgMjE1LCAxNDUsIDIyNywgMTEzLCAyNTAsIDE2MywgMSwgMjE1LCA5MSwgMjI3LCAxMTMsIDI1MCwgMTYzLCAxLCAKKyAgICAyMzMsIDE4MCwgMjI3LCAxMTMsIDI1MCwgMTYzLCAxLCAyNDUsIDE5MSwgMjI3LCAxMTMsIDI1MCwgMTYzLCAxLCAyNDYsIAorICAgIDMzLCAyMjcsIDExMywgMjUwLCAxNjMsIDEsIDI0NSwgMjI5LCAyMjcsIDExMywgMjUwLCAxNjMsIDEsIDI0NSwgMTcwLCAKKyAgICAyMjcsIDExMywgMjUwLCAxNjMsIDEsIDIzMywgMjYsIDIyNywgMTEzLCAyNTAsIDE2MywgMSwgMjI3LCA0MywgMjI3LCAxMTMsIAorICAgIDI1MCwgMTYzLCAxLCAyMjcsIDE1MywgMjI3LCAxMTMsIDI1MCwgMTYzLCAxLCAyMjcsIDMxLCAyMjcsIDExMywgMjUwLCAKKyAgICAxNjMsIDEsIDIyNywgMTI1LCAyMjcsIDExMywgMjUwLCAxNjMsIDIzMCwgMjQzLCAyMTYsIDkzLCAyMjcsIDExMywgMjUwLCAKKyAgICAxNjMsIDI0MywgMjI1LCAyMTYsIDk0LCAyMjcsIDExMywgMjUwLCAxNjMsIDIzMCwgMjQxLCAyMTYsIDk0LCAyMjcsIDExMywgCisgICAgMjUwLCAxNjMsIDIyNCwgMjAsIDIyNywgMTEzLCAyNTAsIDE2MywgMjI2LCA1NywgMjI3LCAxMTMsIDI1MCwgMTYzLCAyNTQsIAorICAgIDI0MSwgMjI3LCAxMTMsIDI1MCwgMTYzLCAyMjUsIDYzLCAyMzAsIDIzOCwgMjI3LCAxMTMsIDI1MCwgMTYzLCAyMjUsIDYzLCAKKyAgICA1MiwgMjMwLCAyMzgsIDIxNCwgMjM0LCAxNjEsIDIzNSwgNzIsIDIxNCwgMjM0LCAxNjEsIDIyMSwgMjIsIDIxNCwgMjM0LCAKKyAgICAxNjEsIDIyNSwgMTE0LCAyMTQsIDIzNCwgNSwgMjI5LCAxMDQsIDIxNCwgMjM0LCA1LCAyMTMsIDcxLCAyMzEsIDEwNSwgCisgICAgMjE4LCAyMTUsIDIxNCwgMjM0LCAxNjEsIDIxMywgNzEsIDI1NCwgMjQ2LCAyMzYsIDEwMSwgMjE4LCAyMTUsIDIxNCwgMjM0LCAKKyAgICAxNjEsIDIxMywgNzEsIDIzNiwgMTAxLCAyMTgsIDIxNSwgMjE0LCAyMzQsIDE2MSwgMjEzLCA3MSwgMjM1LCA2MCwgMjM2LCAKKyAgICAxMDEsIDIxOCwgMjE1LCAyMTQsIDIzNCwgMTYxLCAyNTEsIDU4LCA1NSwgMjE0LCAyMzQsIDE2MSwgMjEzLCA3MSwgMjM1LCAKKyAgICA2MCwgMjM2LCAxMDEsIDIxOCwgMjE2LCAyMjIsIDEzOCwgMjE0LCAyMzQsIDE2MSwgNTIsIDIxOCwgMjE1LCAyMTQsIDIzNCwgCisgICAgMTYxLCAyMTYsIDE4MiwgMjE4LCAyMTUsIDIxNCwgMjM0LCAxNjEsIDIzNSwgNjAsIDI1NCwgMTE1LCAyMTQsIDIzNCwgMTYxLCAKKyAgICA2MiwgNTUsIDIxNCwgMjM0LCAxNjEsIDExOSwgMTgxLCA1NSwgMjE0LCAyMzQsIDE2MSwgMTM3LCAxODEsIDU1LCAyMTQsIAorICAgIDIzNCwgMTYxLCAyMjMsIDE3MSwgMjM1LCA3MSwgMjM2LCAxMDEsIDIxOCwgMjE1LCAyMTQsIDIzNCwgMTYxLCAyNTMsIDI0NywgCisgICAgMjM2LCAxMDEsIDIxOCwgMjE1LCAyMTQsIDIzNCwgNSwgMjE0LCAxMzMsIDIxOCwgMjE1LCAyMTQsIDIzNCwgNSwgMjE0LCAKKyAgICAxMzMsIDIxNSwgMTkxLCAyMTQsIDIzNCwgNSwgMjIzLCAyMzYsIDIxNCwgMTMzLCAyMTUsIDE5MSwgMjE0LCAyMzQsIDUsIAorICAgIDIxNCwgMTMzLCAyNTQsIDExNSwgMjE0LCAyMzQsIDUsIDIyMywgMjM2LCAyMTQsIDEzMywgMjU0LCAxMTUsIDIxNCwgMjM0LCAKKyAgICA1LCAyMTQsIDEzMywgMjE1LCAxOTIsIDIsIDIxOCwgNDAsIDIxNCwgMjM0LCA1LCAyMTQsIDEzMywgMjU0LCAxMTYsIDIsIAorICAgIDIxOCwgNDAsIDIxNCwgMjM0LCA1LCAyNTQsIDExNCwgMjU0LCAxMjksIDIxNCwgMjM0LCA1LCAyNTQsIDExNCwgMjUyLCAKKyAgICAyMTIsIDIxNCwgMjM0LCA1LCAyNTQsIDExNCwgMjE1LCAyLCAyMTQsIDIzNCwgNSwgMjU0LCAxMTQsIDIxNSwgMywgMiwgCisgICAgMjE4LCA0MCwgMjE0LCAyMzQsIDUsIDIxNywgMzUsIDIxNCwgMjM0LCA1LCAyNDIsIDM5LCAxODcsIDI1NCwgMTEzLCAyMTQsIAorICAgIDIzNCwgNSwgMTg3LCAyNTQsIDExMywgMjE0LCAyMzQsIDUsIDIyMywgNzksIDE4NywgMjU0LCAxMTMsIDIxNCwgMjM0LCA1LCAKKyAgICAyNTQsIDExNCwgMjE1LCAxOTgsIDIzMCwgMjMwLCAyMTQsIDIzNCwgNSwgMjU0LCA2MSwgNywgMSwgNCwgNiwgNjMsIDcsIDEsIAorICAgIDQsIDYsIDI1NSwgMjAsIDcsIDQsIDEsIDIxNiwgNjYsIDI1NSwgMjAsIDcsIDEsIDQsIDYsIDI1MiwgMTgwLCAyNTMsIDIwMSwgCisgICAgNywgMSwgNCwgNiwgMjUxLCAxMjEsIDcsIDEsIDQsIDYsIDI0OSwgMTI1LCA3LCAxLCA0LCA2LCAyNDUsIDE0NiwgNywgMSwgCisgICAgNCwgNiwgNzcsIDcsIDQsIDEsIDIxNiwgNjYsIDIxMCwgNzcsIDcsIDQsIDEsIDIxNiwgNjYsIDc1LCA3LCAxLCA0LCA2LCAKKyAgICAyMzYsIDMsIDcsIDEsIDQsIDYsIDIzNSwgMTQxLCA3LCAxLCA0LCA2LCAyMzQsIDEzLCAyLCA5MSwgNywgMSwgNCwgNiwgCisgICAgMTg0LCA3LCAxLCA0LCA2LCAyMjMsIDIzNiwgMjA2LCA3LCAxLCA0LCA2LCA3OCwgNywgMSwgNCwgNiwgMjEwLCA3OCwgNywgCisgICAgNCwgMSwgMjIwLCAxMzIsIDc4LCA3LCA0LCAxLCAyMjAsIDEzMiwgMjEwLCA3OCwgNywgNCwgMSwgMjIwLCAxMzIsIDE0MSwgCisgICAgMiwgOTEsIDcsIDQsIDEsIDIxNiwgNjYsIDIyNywgMTM2LCA3LCAxLCA0LCA2LCAyMjcsIDQwLCA3LCA0LCAxLCAyMTYsIAorICAgIDI0MCwgMTU3LCA3OCwgNywgNCwgMSwgMjUxLCAyMjYsIDE1NywgNzgsIDcsIDEsIDQsIDYsIDIyNywgMTEsIDcsIDEsIDQsIAorICAgIDYsIDIyMywgMjM2LCAxNTIsIDcsIDEsIDQsIDYsIDIxNiwgNjYsIDE1MiwgNywgMSwgNCwgNiwgMjE4LCAxMTMsIDcsIDEsIAorICAgIDQsIDYsIDcyLCA3LCA0LCAxLCAyMjAsIDEzMiwgNzIsIDcsIDQsIDEsIDIyMCwgMTMyLCAyNDgsIDczLCA3MiwgNywgNCwgMSwgCisgICAgMjIwLCAxMzIsIDIxNiwgNjYsIDE4NCwgNywgMSwgNCwgNiwgMjExLCAyMTEsIDcsIDEsIDQsIDYsIDIxNCwgODUsIDcsIDEsIAorICAgIDQsIDYsIDIxMiwgMTUyLCA3LCAxLCA0LCA2LCAyNDUsIDk3LCA3LCAxLCAyMTQsIDEyMCwgMjMzLCAyMDQsIDIxOSwgMjAxLCAKKyAgICA3LCAxLCAyNTQsIDIzMSwgMjUsIDEsIDQsIDYsIDI0MywgMjAzLCAyNSwgMSwgNCwgNiwgMjMzLCAyMjAsIDI1LCAxLCA0LCAKKyAgICA2LCAyMjYsIDIwLCAyNSwgMSwgNCwgNiwgMjIzLCAyMjQsIDI1LCAxLCA0LCA2LCAyMjUsIDgyLCAzMywgMSwgNCwgNiwgCisgICAgMjQ1LCAyNTIsIDU5LCAxLCA2LCA2MywgNTksIDEsIDYsIDI1NSwgMjAsIDU5LCAxLCA2LCAyNTMsIDIwMSwgNTksIDEsIDYsIAorICAgIDI1MiwgMTgwLCAyNTMsIDIwMSwgNTksIDEsIDYsIDI0OSwgMTI1LCA1OSwgMSwgNiwgNzcsIDU5LCAxLCA2LCAyMjMsIDIzNiwgCisgICAgNzcsIDU5LCAxLCA2LCAyNDQsIDQxLCA1OSwgMSwgNiwgMjQyLCAxNjIsIDU5LCAxLCA2LCA3NSwgNTksIDEsIDYsIDIzNiwgCisgICAgMywgNTksIDEsIDYsIDIzNSwgMTQxLCA1OSwgMSwgNiwgMTU1LCA1OSwgMSwgNiwgMTg0LCA1OSwgMSwgNiwgMjA2LCA1OSwgCisgICAgMSwgNiwgMjIzLCAyMzYsIDIwNiwgNTksIDEsIDYsIDc4LCA1OSwgMSwgNiwgMjI3LCA0MCwgNTksIDEsIDYsIDIyNywgMTEsIAorICAgIDU5LCAxLCA2LCAxNTIsIDU5LCAxLCA2LCAyMTgsIDExMywgNTksIDEsIDYsIDcyLCA1OSwgMSwgNiwgMjE0LCA4NSwgNTksIAorICAgIDEsIDQsIDYzLCA1OSwgMSwgNCwgMjE2LCA2NiwgNjMsIDU5LCAxLCA0LCAyNTQsIDE3OSwgNTksIDEsIDQsIDIxNiwgNjYsIAorICAgIDI1NSwgMjAsIDU5LCAxLCA0LCAyNTMsIDIwMSwgNTksIDEsIDQsIDI0OSwgMTI1LCA1OSwgMSwgNCwgNzcsIDU5LCAxLCA0LCAKKyAgICAyMjIsIDEzNiwgNTksIDEsIDQsIDIxMCwgNzcsIDU5LCAxLCA0LCAyMTYsIDY2LCAyMTAsIDc3LCA1OSwgMSwgNCwgMjQ0LCAKKyAgICA0MSwgNTksIDEsIDQsIDIxNiwgNjYsIDc1LCA1OSwgMSwgNCwgMjM1LCAxNDEsIDU5LCAxLCA0LCAxODQsIDU5LCAxLCA0LCAKKyAgICAyNDUsIDIxNywgNTksIDEsIDQsIDc4LCA1OSwgMSwgNCwgMjEwLCA3OCwgNTksIDEsIDQsIDIxNiwgMjQwLCAxNTcsIDc4LCAKKyAgICA1OSwgMSwgNCwgMjUxLCAyMjYsIDE1NywgNzgsIDU5LCAxLCA0LCAyMjcsIDExLCA1OSwgMSwgNCwgMjE4LCAxMTMsIDU5LCAKKyAgICAxLCA0LCA3MiwgNTksIDEsIDQsIDIyMCwgMTMyLCA3MiwgNTksIDEsIDQsIDIxNiwgNjYsIDE4NCwgNTksIDEsIDQsIDIxMSwgCisgICAgMjExLCA1OSwgMSwgNCwgMjU0LCAyMzEsIDU5LCAxLCA0LCAyNTIsIDczLCA1OSwgMSwgNCwgMjUsIDI0MywgMjAzLCA1OSwgCisgICAgMSwgNCwgMjQ4LCAxMjYsIDU5LCAxLCA0LCAyNSwgMjI2LCA0NSwgNTksIDEsIDQsIDI1MCwgMTcwLCA3LCAyMTksIDI0LCA0LCAKKyAgICAxLCA3NSwgNywgMjE5LCAyNCwgNCwgMSwgMTUyLCA3LCAyMTksIDI0LCA0LCAxLCA3MiwgNywgMjE5LCAyNCwgNCwgMSwgCisgICAgMjExLCAyMTEsIDI1LCAyMTksIDI0LCA0LCAxLCAyNTIsIDczLCAyNSwgMjE5LCAyNCwgNCwgMSwgMjQzLCAyMDMsIDI1LCAKKyAgICAyMTksIDI0LCA0LCAxLCAyMjMsIDIyNCwgMjUsIDIxOSwgMjQsIDQsIDEsIDIyNiwgNDUsIDI1LCAyMTksIDI0LCA0LCAxLCAKKyAgICAyNTAsIDE3MCwgNywgNCwgMSwgMjE1LCAxODksIDcsIDQsIDEsIDU3LCAyLCAyMzEsIDEwNywgMTc3LCA3LCA0LCAxLCAyNDksIAorICAgIDEyNiwgMiwgMjMxLCAxMDcsIDE3NywgNywgNCwgMSwgMjQ1LCA5NiwgMiwgMjMxLCAxMDcsIDE3NywgNywgNCwgMSwgMjMyLCAKKyAgICAxODMsIDIsIDIzMSwgMTA3LCAxNzcsIDcsIDQsIDEsIDIzMCwgMTY3LCAyLCAyMzEsIDEwNywgMTc3LCA3LCA0LCAxLCAyMjcsIAorICAgIDEyLCAyLCAyMzEsIDEwNywgMTc3LCA3LCA0LCAxLCAyMjQsIDE0OCwgMiwgMjMxLCAxMDcsIDE3NywgNywgNCwgMSwgMjI0LCAKKyAgICAxNDgsIDIsIDI0NCwgMTc3LCAyMiwgMjMxLCAxMDcsIDE3NywgNywgNCwgMSwgMjIzLCAyOSwgMiwgMjMxLCAxMDcsIDE3NywgCisgICAgNywgNCwgMSwgMjE4LCAxMTQsIDIsIDIzMSwgMTA3LCAxNzcsIDcsIDQsIDEsIDIxMiwgMTUzLCAyLCAyMzEsIDEwNywgMTc3LCAKKyAgICA3LCA0LCAxLCAyMTYsIDY2LCAyNDQsIDQxLCA1OSwgMSwgMzMsIDI0NSwgMjI5LCA3LCA0LCAxLCAyMzYsIDcxLCAyNDQsIAorICAgIDQxLCA3LCA0LCAxLCAyMTcsIDE3NywgMiwgMjE5LCA2MSwgNywgNCwgNiwgMSwgMjQxLCA3LCAyLCA5MSwgNywgNCwgMSwgCisgICAgMjM2LCA0NSwgMiwgOTEsIDcsIDQsIDEsIDIyNywgMTIsIDIsIDkxLCA3LCA0LCA2LCAxLCAxMDMsIDIsIDkxLCA3LCA0LCAxLCAKKyAgICAyMTUsIDEzNSwgMiwgOTEsIDcsIDQsIDEsIDU3LCAyLCAyMjYsIDIzMCwgMTAyLCA3LCA0LCAxLCAyNDksIDEyNiwgMiwgCisgICAgMjI2LCAyMzAsIDEwMiwgNywgNCwgMSwgMjQ1LCA5NiwgMiwgMjI2LCAyMzAsIDEwMiwgNywgNCwgMSwgMjQ0LCA0MiwgMiwgCisgICAgMjI2LCAyMzAsIDEwMiwgNywgNCwgMSwgMjM1LCAxNDIsIDIsIDIyNiwgMjMwLCAxMDIsIDcsIDQsIDEsIDIzNCwgMTMsIDIsIAorICAgIDIyNiwgMjMwLCAxMDIsIDcsIDQsIDEsIDIzMiwgMTgzLCAyLCAyMjYsIDIzMCwgMTAyLCA3LCA0LCAxLCAyMzAsIDE2NywgMiwgCisgICAgMjI2LCAyMzAsIDEwMiwgNywgNCwgMSwgMjI3LCAxMiwgMiwgMjI2LCAyMzAsIDEwMiwgNywgNCwgMSwgMjI0LCAxNDgsIDIsIAorICAgIDIyNiwgMjMwLCAxMDIsIDcsIDQsIDEsIDIyMywgMjksIDIsIDIyNiwgMjMwLCAxMDIsIDcsIDQsIDEsIDI0NSwgMTYyLCAyLCAKKyAgICAyMjYsIDIzMCwgMTAyLCA3LCA0LCAxLCAyMTUsIDg2LCAyLCAyMjYsIDIzMCwgMTAyLCA3LCA0LCAxLCAyMTMsIDE3MCwgMiwgCisgICAgMjI2LCAyMzAsIDEwMiwgNywgNCwgMSwgMjEyLCAxNTMsIDIsIDIyNiwgMjMwLCAxMDIsIDcsIDQsIDEsIDExMSwgMiwgMjIzLCAKKyAgICAyNDEsIDEwMiwgNywgNCwgMSwgMjU0LCAxODAsIDIsIDIyMywgMjQxLCAxMDIsIDcsIDQsIDEsIDI0OSwgMTI2LCAyLCAyNDEsIAorICAgIDE1NywgMjIsIDIxOCwgNDAsIDcsIDQsIDEsIDE1NCwgMiwgMjIzLCAyNDEsIDEwMiwgNywgNCwgMSwgMjEwLCAxNTQsIDIsIAorICAgIDIyMywgMjQxLCAxMDIsIDcsIDQsIDEsIDIyMywgMjM2LCAyMTAsIDE1NCwgMiwgMjIzLCAyNDEsIDEwMiwgNywgNCwgMSwgCisgICAgMjIyLCAxMzcsIDIsIDIyMywgMjQxLCAxMDIsIDcsIDQsIDEsIDI0MSwgNywgMiwgMjIzLCAyNDEsIDEwMiwgNywgNCwgMSwgCisgICAgMjEwLCAxNDEsIDIsIDIyMywgMjQxLCAxMDIsIDcsIDQsIDEsIDI0NSwgMTYyLCAyLCAyMjMsIDI0MSwgMTAyLCA3LCA0LCAxLCAKKyAgICAxMDMsIDIsIDIyMywgMjQxLCAxMDIsIDcsIDQsIDEsIDI0NSwgOTgsIDIsIDIyMywgMjQxLCAxMDIsIDU5LCAxLCA0LCAyMTYsIAorICAgIDY2LCAyNTQsIDE3OSwgNTksIDEsIDQsIDI1MSwgMTIxLCA1OSwgMSwgNCwgMjUxLCAxMjIsIDIsIDI0OSwgMTY0LCA1OSwgMSwgCisgICAgNCwgMjQ1LCAxNDYsIDU5LCAxLCA0LCAyMjMsIDIzNiwgMjEwLCA3NywgNTksIDEsIDQsIDI0NSwgOTUsIDU5LCAxLCA0LCAKKyAgICAyNDcsIDE5NCwgMjM2LCA0LCAyLCA5MSwgNTksIDEsIDQsIDExNSwgMjQ0LCA0MSwgNTksIDEsIDQsIDIxNiwgNjYsIDI0MiwgCisgICAgMTYyLCA1OSwgMSwgNCwgMjQxLCA3LCAyLCA5MSwgNTksIDEsIDQsIDIzNiwgNDQsIDU5LCAxLCA0LCA2LCA3NSwgNTksIDEsIAorICAgIDQsIDYsIDI0MSwgNywgMiwgOTEsIDU5LCAxLCA0LCAyMzYsIDQsIDIsIDI0OSwgMTkwLCA1OSwgMSwgNCwgMjM0LCAxMywgMiwgCisgICAgMjIzLCAyNDEsIDEwMiwgNTksIDEsIDQsIDIzNCwgMTMsIDIsIDIyNiwgMjMwLCAxMDIsIDU5LCAxLCA0LCA2LCAxNTUsIDU5LCAKKyAgICAxLCA0LCAyMzIsIDE4MywgMiwgMTAyLCA1OSwgMSwgNCwgMjE2LCA2NiwgMjMyLCAxODMsIDIsIDE4NywgMjMzLCAxNTgsIAorICAgIDU5LCAxLCA0LCAyMzAsIDE2NywgMiwgNDMsIDEwMiwgNTksIDEsIDQsIDIzMCwgMTY3LCAyLCAyMjMsIDI0MSwgMTAyLCA1OSwgCisgICAgMSwgNCwgNiwgMjA2LCA1OSwgMSwgNCwgMjUyLCAxODAsIDc4LCA1OSwgMSwgNCwgMjI2LCA0NSwgNTksIDEsIDQsIDIyMywgCisgICAgMjksIDIsIDEwMiwgNTksIDEsIDQsIDI0NSwgMTYxLCA1OSwgMSwgNCwgMjE4LCAxMTQsIDIsIDIyNiwgMjMwLCAxMDIsIDU5LCAKKyAgICAxLCA0LCAxMDMsIDEzNCwgNTksIDEsIDQsIDIxNSwgMTM0LCA1OSwgMSwgNCwgNiwgNzIsIDU5LCAxLCA0LCAyMTUsIDg2LCAKKyAgICAyLCAxMDIsIDU5LCAxLCA0LCAyMTYsIDY2LCAyMTEsIDIxMSwgNTksIDEsIDQsIDIxMiwgMTUyLCA1OSwgMSwgNCwgMjEyLCAKKyAgICAxNTMsIDIsIDIyMywgMjQxLCAxMDIsIDU5LCAxLCA0LCAyMTIsIDE1MywgMiwgMjQ5LCAxNjQsIDU5LCAxLCA0LCAyNDUsIAorICAgIDk3LCA1OSwgMSwgNCwgMjE3LCAxNDUsIDM4LCAyNDYsIDE5MywgMjQyLCAyMzQsIDI1NSwgNDYsIDM4LCAyNDYsIDE5MywgCisgICAgMjU1LCAzNiwgMjU1LCA0NiwgMzgsIDIyMCwgMTYsIDU1LCAzOCwgMjE4LCAyMjEsIDc5LCAzOCwgMjMyLCAxMDksIDM4LCAKKyAgICAyNDIsIDIzMiwgMzgsIDIzMiwgMTA3LCAzOCwgMjU1LCAzNCwgMzgsIDI0MiwgMjMzLCAzOCwgMjU1LCAzNSwgMzgsIDcsIDQsIAorICAgIDEsIDIyNCwgMTQ4LCA1NSwgMzgsIDI1MSwgMTk4LCAzOCwgMjMyLCAxMDgsIDM4LCA1MiwgMjUwLCA5MSwgNTAsIDM4LCAKKyAgICAyMjcsIDEyOCwgNTAsIDM4LCAyMTIsIDI4LCA1NSwgMzgsIDIzNiwgMzEsIDU1LCAzOCwgMjE1LCAxMjgsIDUwLCAzOCwgCisgICAgMjE1LCAxMTEsIDUwLCAzOCwgNywgNCwgMSwgMjQ0LCAxNTIsIDIxMCwgMTExLCA1MCwgMzgsIDcsIDQsIDEsIDI1NSwgMjAsIAorICAgIDM4LCA3LCA0LCAxLCAyNTQsIDExMSwgMzgsIDcsIDQsIDEsIDI1MywgMjE5LCAzOCwgNywgNCwgMSwgMjUxLCAxMjIsIDI1MCwgCisgICAgMjQwLCAzOCwgNywgNCwgMSwgMjM2LCA3MSwgMjQ5LCAxMjUsIDM4LCA3LCA0LCAxLCAyNDUsIDE0NiwgMzgsIDcsIDQsIDEsIAorICAgIDI0NCwgNDEsIDM4LCA3LCAxLCA0LCA2LCAyNDQsIDQxLCAzOCwgNywgNCwgMSwgMjM1LCAxNDEsIDM4LCA3LCA0LCAxLCAKKyAgICAxNTUsIDM4LCA3LCAxLCA0LCA2LCAxNTUsIDM4LCA3LCAxLCA0LCA2LCAxODQsIDM4LCA3LCA0LCAxLCAyMDYsIDM4LCA3LCAKKyAgICAxLCA0LCA2LCAyMDYsIDM4LCA3LCAxLCA0LCA2LCAxNTIsIDM4LCA3LCA0LCAxLCAyMjQsIDE0OCwgMjIzLCAxMjIsIDM4LCAKKyAgICA3LCA0LCAxLCAxOTYsIDM4LCA3LCA0LCAxLCAxODcsIDE5NiwgMzgsIDcsIDQsIDEsIDIxMiwgMTUyLCAzOCwgNTIsIDIzNiwgCisgICAgNTIsIDI1MSwgMjAwLCA1NSwgMzgsIDI1NCwgMTg0LCAxMjYsIDIxNywgMTAsIDU1LCAzOCwgNDMsIDI1NCwgMzYsIDUwLCAKKyAgICAzOCwgNDcsIDI1NCwgMzYsIDIyLCAxMjEsIDI1NCwgMzYsIDU1LCA3LCA2LCAxLCAxMTEsIDIsIDIyMywgMTY1LCA1NSwgNywgCisgICAgNCwgMSwgMTExLCAyLCAyMjMsIDE2NSwgNTUsIDcsIDYsIDEsIDU3LCAyLCA2MiwgNTAsIDcsIDQsIDEsIDU3LCAyLCA2MiwgCisgICAgNTAsIDcsIDYsIDEsIDU3LCAyLCA2MiwgNTUsIDcsIDQsIDEsIDU3LCAyLCA2MiwgNTUsIDcsIDYsIDEsIDU3LCAyLCAyMzMsIAorICAgIDg0LCA1NSwgNywgNCwgMSwgNTcsIDIsIDIzMywgODQsIDU1LCA3LCA2LCAxLCAyNTEsIDEyMiwgMiwgMjUwLCAyNDEsIDIyLCAKKyAgICAxMzgsIDcsIDQsIDEsIDI1MSwgMTIyLCAyLCAyNTAsIDI0MSwgMjIsIDEzOCwgNywgNiwgMSwgMjQ5LCAxMjYsIDIsIDYyLCAKKyAgICA1MCwgNywgNCwgMSwgMjQ5LCAxMjYsIDIsIDYyLCA1MCwgNywgNiwgMSwgMjQ5LCAxMjYsIDIsIDYyLCA1NSwgNywgNCwgMSwgCisgICAgMjQ5LCAxMjYsIDIsIDYyLCA1NSwgNywgNiwgMSwgMjQ5LCAxMjYsIDIsIDIzMywgODQsIDU1LCA3LCA0LCAxLCAyNDksIAorICAgIDEyNiwgMiwgMjMzLCA4NCwgNTUsIDcsIDYsIDEsIDI0OSwgMTI2LCAyLCAyNTAsIDI0MCwgNywgNCwgMSwgMjQ5LCAxMjYsIAorICAgIDIsIDI1MCwgMjQwLCA3LCA2LCAxLCAyNDksIDEyNiwgMiwgMjUwLCA5MSwgNTUsIDcsIDQsIDEsIDI0OSwgMTI2LCAyLCAKKyAgICAyNTAsIDkxLCA1NSwgNywgNiwgMSwgMTU0LCAyLCAyMzIsIDExMSwgMjIsIDIwOSwgNywgNCwgMSwgMTU0LCAyLCAyMzIsIAorICAgIDExMSwgMjIsIDIwOSwgNywgNiwgMSwgMTU0LCAyLCAyMzIsIDExMSwgMjIsIDEzOCwgNywgNCwgMSwgMTU0LCAyLCAyMzIsIAorICAgIDExMSwgMjIsIDEzOCwgNywgNiwgMSwgMTU0LCAyLCAyNTAsIDkxLCA1NSwgNywgNCwgMSwgMTU0LCAyLCAyNTAsIDkxLCA1NSwgCisgICAgNywgNiwgMSwgMTU0LCAyLCAyMTcsIDU2LCA1NSwgNywgNCwgMSwgMTU0LCAyLCAyMTcsIDU2LCA1NSwgNywgNiwgMSwgMTU0LCAKKyAgICAyLCAyNTAsIDI0MSwgMjIsIDI1MSwgMTk5LCA3LCA0LCAxLCAxNTQsIDIsIDI1MCwgMjQxLCAyMiwgMjUxLCAxOTksIDcsIDYsIAorICAgIDEsIDI0NSwgOTYsIDIsIDYyLCA1MCwgNywgNCwgMSwgMjQ1LCA5NiwgMiwgNjIsIDUwLCA3LCA2LCAxLCAyNDQsIDQyLCAyLCAKKyAgICAyMzIsIDExMCwgNywgNCwgMSwgMjQ0LCA0MiwgMiwgMjMyLCAxMTAsIDcsIDYsIDEsIDI0MiwgMTYzLCAyLCA2MiwgNTAsIDcsIAorICAgIDQsIDEsIDI0MiwgMTYzLCAyLCA2MiwgNTAsIDcsIDYsIDEsIDI0MiwgMTYzLCAyLCA2MiwgNTUsIDcsIDQsIDEsIDI0MiwgCisgICAgMTYzLCAyLCA2MiwgNTUsIDcsIDYsIDEsIDI0MiwgMTYzLCAyLCAyNDgsIDc0LCA3LCA0LCAxLCAyNDIsIDE2MywgMiwgMjQ4LCAKKyAgICA3NCwgNywgNiwgMSwgMjQyLCAxNjMsIDIsIDI1MCwgMjQwLCA3LCA0LCAxLCAyNDIsIDE2MywgMiwgMjUwLCAyNDAsIDcsIDYsIAorICAgIDEsIDI0MiwgMTYzLCAyLCAyNTEsIDIwMCwgNTUsIDcsIDQsIDEsIDI0MiwgMTYzLCAyLCAyNTEsIDIwMCwgNTUsIDcsIDYsIAorICAgIDEsIDI0MSwgNywgMiwgMjE3LCA1NiwgNTUsIDcsIDQsIDEsIDI0MSwgNywgMiwgMjE3LCA1NiwgNTUsIDcsIDYsIDEsIDI0MSwgCisgICAgNywgMiwgMjQ4LCA3NSwgMjIsIDEzOCwgNywgNCwgMSwgMjQxLCA3LCAyLCAyNDgsIDc1LCAyMiwgMTM4LCA3LCA2LCAxLCAKKyAgICAyMzUsIDE0MiwgMiwgMTM4LCA3LCA0LCAxLCAyMzUsIDE0MiwgMiwgMTM4LCA3LCA2LCAxLCAyMzUsIDE0MiwgMiwgNjIsIAorICAgIDU1LCA3LCA0LCAxLCAyMzUsIDE0MiwgMiwgNjIsIDU1LCA3LCA2LCAxLCAyMzUsIDE0MiwgMiwgMjMzLCA4NCwgNTUsIDcsIAorICAgIDQsIDEsIDIzNSwgMTQyLCAyLCAyMzMsIDg0LCA1NSwgNywgNiwgMSwgMjM0LCAxMywgMiwgNjIsIDU1LCA3LCA0LCAxLCAKKyAgICAyMzQsIDEzLCAyLCA2MiwgNTUsIDcsIDYsIDEsIDIzNCwgMTMsIDIsIDYyLCAyNTIsIDkwLCAyMiwgMjMyLCAxMTAsIDcsIDQsIAorICAgIDEsIDIzNCwgMTMsIDIsIDYyLCAyNTIsIDkwLCAyMiwgMjMyLCAxMTAsIDcsIDYsIDEsIDIzNCwgMTMsIDIsIDIzMywgODQsIAorICAgIDU1LCA3LCA0LCAxLCAyMzQsIDEzLCAyLCAyMzMsIDg0LCA1NSwgNywgNiwgMSwgMjM0LCAxMywgMiwgMjUwLCA5MSwgNTUsIAorICAgIDcsIDQsIDEsIDIzNCwgMTMsIDIsIDI1MCwgOTEsIDU1LCA3LCA2LCAxLCAyMzIsIDE4MywgMiwgMTM4LCA3LCA0LCAxLCAKKyAgICAyMzIsIDE4MywgMiwgMTM4LCA3LCA2LCAxLCAyMzIsIDE4MywgMiwgNjIsIDUwLCA3LCA0LCAxLCAyMzIsIDE4MywgMiwgNjIsIAorICAgIDUwLCA3LCA2LCAxLCAyMzIsIDE4MywgMiwgNjIsIDU1LCA3LCA0LCAxLCAyMzIsIDE4MywgMiwgNjIsIDU1LCA3LCA2LCAxLCAKKyAgICAyMzAsIDE2NywgMiwgNjIsIDUwLCA3LCA0LCAxLCAyMzAsIDE2NywgMiwgNjIsIDUwLCA3LCA2LCAxLCAyMzAsIDE2NywgMiwgCisgICAgNjIsIDU1LCA3LCA0LCAxLCAyMzAsIDE2NywgMiwgNjIsIDU1LCA3LCA2LCAxLCAyMzAsIDE2NywgMiwgMjMzLCA4NCwgNTUsIAorICAgIDcsIDQsIDEsIDIzMCwgMTY3LCAyLCAyMzMsIDg0LCA1NSwgNywgNiwgMSwgMjMwLCAxNjcsIDIsIDI1MCwgOTEsIDU1LCA3LCAKKyAgICA0LCAxLCAyMzAsIDE2NywgMiwgMjUwLCA5MSwgNTUsIDcsIDYsIDEsIDE0MSwgMiwgMjE3LCA1NiwgMjIsIDEzOCwgNywgNCwgCisgICAgMSwgMTQxLCAyLCAyMTcsIDU2LCAyMiwgMTM4LCA3LCA2LCAxLCAxNDEsIDIsIDIxNywgNTYsIDIyLCAyNDgsIDc0LCA3LCA0LCAKKyAgICAxLCAxNDEsIDIsIDIxNywgNTYsIDIyLCAyNDgsIDc0LCA3LCA2LCAxLCAxNDEsIDIsIDIzMiwgMTExLCAyMiwgMjA5LCA3LCAKKyAgICA0LCAxLCAxNDEsIDIsIDIzMiwgMTExLCAyMiwgMjA5LCA3LCA2LCAxLCAxNDEsIDIsIDIzMiwgMTExLCAyMiwgMTM4LCA3LCAKKyAgICA0LCAxLCAxNDEsIDIsIDIzMiwgMTExLCAyMiwgMTM4LCA3LCA2LCAxLCAyMjcsIDEyLCAyLCAxMzgsIDcsIDQsIDEsIDIyNywgCisgICAgMTIsIDIsIDEzOCwgNywgNiwgMSwgMjI3LCAxMiwgMiwgNjIsIDUwLCA3LCA0LCAxLCAyMjcsIDEyLCAyLCA2MiwgNTAsIDcsIAorICAgIDYsIDEsIDIyNCwgMTQ4LCAyLCA2MiwgNTAsIDcsIDQsIDEsIDIyNCwgMTQ4LCAyLCA2MiwgNTAsIDcsIDYsIDEsIDIyNCwgCisgICAgMTQ4LCAyLCA2MiwgNTUsIDcsIDQsIDEsIDIyNCwgMTQ4LCAyLCA2MiwgNTUsIDcsIDYsIDEsIDIyNCwgMTQ4LCAyLCA2MiwgCisgICAgMjUyLCA5MCwgMjIsIDIzMiwgMTEwLCA3LCA0LCAxLCAyMjQsIDE0OCwgMiwgNjIsIDI1MiwgOTAsIDIyLCAyMzIsIDExMCwgCisgICAgNywgNiwgMSwgMjI0LCAxNDgsIDIsIDIzMywgODQsIDU1LCA3LCA0LCAxLCAyMjQsIDE0OCwgMiwgMjMzLCA4NCwgNTUsIDcsIAorICAgIDYsIDEsIDIyMywgMjksIDIsIDYyLCA1MCwgNywgNCwgMSwgMjIzLCAyOSwgMiwgNjIsIDUwLCA3LCA2LCAxLCAyMjMsIDI5LCAKKyAgICAyLCA2MiwgNTUsIDcsIDQsIDEsIDIyMywgMjksIDIsIDYyLCA1NSwgNywgNiwgMSwgMjIzLCAyOSwgMiwgMjU1LCAzNiwgMjIsIAorICAgIDYyLCA1MCwgNywgNCwgMSwgMjIzLCAyOSwgMiwgMjU1LCAzNiwgMjIsIDYyLCA1MCwgNywgNiwgMSwgMjIzLCAyOSwgMiwgCisgICAgMjUxLCAzNSwgMjIsIDYyLCA1MCwgNywgNCwgMSwgMjIzLCAyOSwgMiwgMjUxLCAzNSwgMjIsIDYyLCA1MCwgNywgNiwgMSwgCisgICAgMjIzLCAyOSwgMiwgNjIsIDI1MiwgOTAsIDIyLCA2MiwgNTAsIDcsIDQsIDEsIDIyMywgMjksIDIsIDYyLCAyNTIsIDkwLCAKKyAgICAyMiwgNjIsIDUwLCA3LCA2LCAxLCAyMTgsIDExNCwgMiwgNjIsIDUwLCA3LCA0LCAxLCAyMTgsIDExNCwgMiwgNjIsIDUwLCAKKyAgICA3LCA2LCAxLCAyMTgsIDExNCwgMiwgNjIsIDU1LCA3LCA0LCAxLCAyMTgsIDExNCwgMiwgNjIsIDU1LCA3LCA2LCAxLCAyMTgsIAorICAgIDExNCwgMiwgMjMzLCA4NCwgNTUsIDcsIDQsIDEsIDIxOCwgMTE0LCAyLCAyMzMsIDg0LCA1NSwgNywgNiwgMSwgMjE4LCAKKyAgICAxMTQsIDIsIDI1MCwgOTEsIDU1LCA3LCA0LCAxLCAyMTgsIDExNCwgMiwgMjUwLCA5MSwgNTUsIDcsIDYsIDEsIDEwMywgMiwgCisgICAgMjQ4LCA3NSwgNTUsIDcsIDQsIDEsIDEwMywgMiwgMjQ4LCA3NSwgNTUsIDcsIDYsIDEsIDEwMywgMiwgMjE3LCA1NiwgNTUsIAorICAgIDcsIDQsIDEsIDEwMywgMiwgMjE3LCA1NiwgNTUsIDcsIDYsIDEsIDEwMywgMiwgMjUwLCA5MSwgNTUsIDcsIDQsIDEsIDEwMywgCisgICAgMiwgMjUwLCA5MSwgNTUsIDcsIDYsIDEsIDEwMywgMiwgMjE3LCA1NiwgMjIsIDEzOCwgNywgNCwgMSwgMTAzLCAyLCAyMTcsIAorICAgIDU2LCAyMiwgMTM4LCA3LCA2LCAxLCAxMDMsIDIsIDIzMiwgMTExLCAyMiwgMjQ4LCA3NCwgNywgNCwgMSwgMTAzLCAyLCAKKyAgICAyMzIsIDExMSwgMjIsIDI0OCwgNzQsIDcsIDYsIDEsIDIxNSwgODYsIDIsIDE3NywgNywgNCwgMSwgMjE1LCA4NiwgMiwgCisgICAgMTc3LCA3LCA2LCAxLCAyMTUsIDg2LCAyLCA2MiwgNTUsIDcsIDQsIDEsIDIxNSwgODYsIDIsIDYyLCA1NSwgNywgNiwgMSwgCisgICAgMjE0LCA4NiwgMiwgMjA5LCA3LCA0LCAxLCAyMTQsIDg2LCAyLCAyMDksIDcsIDYsIDEsIDIxNCwgODYsIDIsIDEzOCwgNywgCisgICAgNCwgMSwgMjE0LCA4NiwgMiwgMTM4LCA3LCA2LCAxLCAyMTQsIDg2LCAyLCAyNDgsIDc0LCA3LCA0LCAxLCAyMTQsIDg2LCAyLCAKKyAgICAyNDgsIDc0LCA3LCA2LCAxLCAyMTQsIDg2LCAyLCA2MiwgNTAsIDcsIDQsIDEsIDIxNCwgODYsIDIsIDYyLCA1MCwgNywgNiwgCisgICAgMSwgMjE0LCA4NiwgMiwgNjIsIDU1LCA3LCA0LCAxLCAyMTQsIDg2LCAyLCA2MiwgNTUsIDcsIDYsIDEsIDIxMywgMTcwLCAyLCAKKyAgICA2MiwgNTAsIDcsIDQsIDEsIDIxMywgMTcwLCAyLCA2MiwgNTAsIDcsIDYsIDEsIDIxMywgMTcwLCAyLCAyNDgsIDc0LCA3LCAKKyAgICA0LCAxLCAyMTMsIDE3MCwgMiwgMjQ4LCA3NCwgNywgNiwgMSwgMjEzLCAxMDksIDIsIDYyLCA1MCwgNywgNCwgMSwgMjEzLCAKKyAgICAxMDksIDIsIDYyLCA1MCwgNywgNiwgMSwgMjEyLCAxNTMsIDIsIDI1MCwgOTAsIDcsIDQsIDEsIDIxMiwgMTUzLCAyLCAyNTAsIAorICAgIDkwLCA3LCA2LCAxLCAyMTIsIDE1MywgMiwgNjIsIDU1LCA3LCA0LCAxLCAyMTIsIDE1MywgMiwgNjIsIDU1LCA3LCA2LCAxLCAKKyAgICAyMTIsIDE1MywgMiwgMjMzLCA4NCwgNTUsIDcsIDQsIDEsIDIxMiwgMTUzLCAyLCAyMzMsIDg0LCA1NSwgNywgNCwgMSwgCisgICAgMjQyLCAxNjMsIDIsIDIzMywgODQsIDU1LCA3LCA0LCAxLCAyMTgsIDExNCwgMiwgMjQ4LCA3NCwgNywgNCwgMSwgMjE0LCAKKyAgICA4NiwgMiwgMjIzLCAxNjUsIDUwLCA3LCA0LCAxLCAyMTMsIDEwOSwgMiwgMjIzLCAxNjUsIDUwLCA3LCA0LCAxLCAxMTEsIDIsIAorICAgIDQ3LCAxNTcsIDIyMywgMTY0LCA3LCA0LCAxLCAxODcsIDIyMywgMjksIDIsIDYyLCA1MCwgNywgNCwgMSwgMTg3LCAyMjMsIAorICAgIDI5LCAyLCAyNDgsIDcyLCA5MSwgNywgNCwgMSwgMTg3LCAyMjMsIDI5LCAyLCAxMjcsIDkxLCA3LCA2LCAxLCAyMjEsIDIxLCAKKyAgICAxOTYsIDcsIDQsIDEsIDI0OCwgMTI2LCA3LCA2LCAxLCAxMTEsIDIsIDYyLCA1NSwgNywgNCwgMSwgMTExLCAyLCA2MiwgNTUsIAorICAgIDcsIDYsIDEsIDExMSwgMiwgMjQxLCAxNTcsIDUwLCA3LCA0LCAxLCAxMTEsIDIsIDI0MSwgMTU3LCA1MCwgNywgNiwgMSwgCisgICAgMTExLCAyLCAyNTAsIDkxLCAyMiwgMTM4LCA3LCA0LCAxLCAxMTEsIDIsIDI1MCwgOTEsIDIyLCAxMzgsIDcsIDYsIDEsIAorICAgIDExMSwgMiwgMjUwLCA5MSwgMjIsIDIwOSwgNywgNCwgMSwgMTExLCAyLCAyNTAsIDkxLCAyMiwgMjA5LCA3LCA2LCAxLCAKKyAgICAxMTEsIDIsIDI1MCwgOTEsIDIyLCAyNDEsIDE1NywgNTAsIDcsIDQsIDEsIDExMSwgMiwgMjUwLCA5MSwgMjIsIDI0MSwgCisgICAgMTU3LCA1MCwgNywgNiwgMSwgMTExLCAyLCAyNTAsIDkxLCAyMiwgMTc3LCA3LCA0LCAxLCAxMTEsIDIsIDI1MCwgOTEsIDIyLCAKKyAgICAxNzcsIDcsIDYsIDEsIDExMSwgMiwgMjUwLCA5MSwgMjIsIDYyLCA1NSwgNywgNCwgMSwgMTExLCAyLCAyNTAsIDkxLCAyMiwgCisgICAgNjIsIDU1LCA3LCA2LCAxLCAxMTEsIDIsIDI1MSwgMjAwLCAyMiwgMTM4LCA3LCA0LCAxLCAxMTEsIDIsIDI1MSwgMjAwLCAKKyAgICAyMiwgMTM4LCA3LCA2LCAxLCAxMTEsIDIsIDI1MSwgMjAwLCAyMiwgMjA5LCA3LCA0LCAxLCAxMTEsIDIsIDI1MSwgMjAwLCAKKyAgICAyMiwgMjA5LCA3LCA2LCAxLCAxMTEsIDIsIDI1MSwgMjAwLCAyMiwgMjQxLCAxNTcsIDUwLCA3LCA0LCAxLCAxMTEsIDIsIAorICAgIDI1MSwgMjAwLCAyMiwgMjQxLCAxNTcsIDUwLCA3LCA2LCAxLCAxMTEsIDIsIDI1MSwgMjAwLCAyMiwgMTc3LCA3LCA0LCAxLCAKKyAgICAxMTEsIDIsIDI1MSwgMjAwLCAyMiwgMTc3LCA3LCA2LCAxLCAxMTEsIDIsIDI1MSwgMjAwLCAyMiwgNjIsIDU1LCA3LCA0LCAKKyAgICAxLCAxMTEsIDIsIDI1MSwgMjAwLCAyMiwgNjIsIDU1LCA3LCA2LCAxLCAxNTQsIDIsIDYyLCA1NSwgNywgNCwgMSwgMTU0LCAKKyAgICAyLCA2MiwgNTUsIDcsIDYsIDEsIDE1NCwgMiwgMjQxLCAxNTcsIDUwLCA3LCA0LCAxLCAxNTQsIDIsIDI0MSwgMTU3LCA1MCwgCisgICAgNywgNiwgMSwgMTU0LCAyLCAxNzcsIDcsIDQsIDEsIDE1NCwgMiwgMTc3LCA3LCA2LCAxLCAxNTQsIDIsIDI1MCwgOTEsIDIyLCAKKyAgICAxMzgsIDcsIDQsIDEsIDE1NCwgMiwgMjUwLCA5MSwgMjIsIDEzOCwgNywgNiwgMSwgMTU0LCAyLCAyNTAsIDkxLCAyMiwgCisgICAgMjA5LCA3LCA0LCAxLCAxNTQsIDIsIDI1MCwgOTEsIDIyLCAyMDksIDcsIDYsIDEsIDE1NCwgMiwgMjUwLCA5MSwgMjIsIAorICAgIDI0MSwgMTU3LCA1MCwgNywgNCwgMSwgMTU0LCAyLCAyNTAsIDkxLCAyMiwgMjQxLCAxNTcsIDUwLCA3LCA2LCAxLCAxNTQsIAorICAgIDIsIDI1MCwgOTEsIDIyLCAxNzcsIDcsIDQsIDEsIDE1NCwgMiwgMjUwLCA5MSwgMjIsIDE3NywgNywgNiwgMSwgMTU0LCAyLCAKKyAgICAyNTAsIDkxLCAyMiwgNjIsIDU1LCA3LCA0LCAxLCAxNTQsIDIsIDI1MCwgOTEsIDIyLCA2MiwgNTUsIDcsIDYsIDEsIDI0MSwgCisgICAgNywgMiwgMjQxLCAxNTcsIDUwLCA3LCA0LCAxLCAyNDEsIDcsIDIsIDI0MSwgMTU3LCA1MCwgNywgNiwgMSwgMjQxLCA3LCAyLCAKKyAgICA2MiwgNTUsIDcsIDQsIDEsIDI0MSwgNywgMiwgNjIsIDU1LCA3LCA2LCAxLCAxNDEsIDIsIDYyLCA1NSwgNywgNCwgMSwgCisgICAgMTQxLCAyLCA2MiwgNTUsIDcsIDYsIDEsIDE0MSwgMiwgMjQxLCAxNTcsIDUwLCA3LCA0LCAxLCAxNDEsIDIsIDI0MSwgMTU3LCAKKyAgICA1MCwgNywgNiwgMSwgMTQxLCAyLCAyNTAsIDkxLCAyMiwgMTM4LCA3LCA0LCAxLCAxNDEsIDIsIDI1MCwgOTEsIDIyLCAxMzgsIAorICAgIDcsIDYsIDEsIDE0MSwgMiwgMjUwLCA5MSwgMjIsIDIwOSwgNywgNCwgMSwgMTQxLCAyLCAyNTAsIDkxLCAyMiwgMjA5LCA3LCAKKyAgICA2LCAxLCAxNDEsIDIsIDI1MCwgOTEsIDIyLCAyNDEsIDE1NywgNTAsIDcsIDQsIDEsIDE0MSwgMiwgMjUwLCA5MSwgMjIsIAorICAgIDI0MSwgMTU3LCA1MCwgNywgNiwgMSwgMTQxLCAyLCAyNTAsIDkxLCAyMiwgMTc3LCA3LCA0LCAxLCAxNDEsIDIsIDI1MCwgCisgICAgOTEsIDIyLCAxNzcsIDcsIDYsIDEsIDE0MSwgMiwgMjUwLCA5MSwgMjIsIDYyLCA1NSwgNywgNCwgMSwgMTQxLCAyLCAyNTAsIAorICAgIDkxLCAyMiwgNjIsIDU1LCA3LCA2LCAxLCAxNDEsIDIsIDI0MSwgOTgsIDIyLCAxMzgsIDcsIDQsIDEsIDE0MSwgMiwgMjQxLCAKKyAgICA5OCwgMjIsIDEzOCwgNywgNiwgMSwgMTQxLCAyLCAyNDEsIDk4LCAyMiwgMjA5LCA3LCA0LCAxLCAxNDEsIDIsIDI0MSwgOTgsIAorICAgIDIyLCAyMDksIDcsIDYsIDEsIDE0MSwgMiwgMjQxLCA5OCwgMjIsIDI0MSwgMTU3LCA1MCwgNywgNCwgMSwgMTQxLCAyLCAKKyAgICAyNDEsIDk4LCAyMiwgMjQxLCAxNTcsIDUwLCA3LCA2LCAxLCAxNDEsIDIsIDI0MSwgOTgsIDIyLCAxNzcsIDcsIDQsIDEsIAorICAgIDE0MSwgMiwgMjQxLCA5OCwgMjIsIDE3NywgNywgNiwgMSwgMTQxLCAyLCAyNDEsIDk4LCAyMiwgNjIsIDU1LCA3LCA0LCAxLCAKKyAgICAxNDEsIDIsIDI0MSwgOTgsIDIyLCA2MiwgNTUsIDcsIDYsIDEsIDEwMywgMiwgNjIsIDU1LCA3LCA0LCAxLCAxMDMsIDIsIAorICAgIDYyLCA1NSwgNywgNiwgMSwgMTAzLCAyLCAyNDEsIDE1NywgNTAsIDcsIDQsIDEsIDEwMywgMiwgMjQxLCAxNTcsIDUwLCA3LCAKKyAgICA2LCAxLCAxMDMsIDIsIDI0MSwgOTgsIDIyLCAxMzgsIDcsIDQsIDEsIDEwMywgMiwgMjQxLCA5OCwgMjIsIDEzOCwgNywgNiwgCisgICAgMSwgMTAzLCAyLCAyNDEsIDk4LCAyMiwgMjA5LCA3LCA0LCAxLCAxMDMsIDIsIDI0MSwgOTgsIDIyLCAyMDksIDcsIDYsIDEsIAorICAgIDEwMywgMiwgMjQxLCA5OCwgMjIsIDI0MSwgMTU3LCA1MCwgNywgNCwgMSwgMTAzLCAyLCAyNDEsIDk4LCAyMiwgMjQxLCAKKyAgICAxNTcsIDUwLCA3LCA2LCAxLCAxMDMsIDIsIDI0MSwgOTgsIDIyLCAxNzcsIDcsIDQsIDEsIDEwMywgMiwgMjQxLCA5OCwgMjIsIAorICAgIDE3NywgNywgNiwgMSwgMTAzLCAyLCAyNDEsIDk4LCAyMiwgNjIsIDU1LCA3LCA0LCAxLCAxMDMsIDIsIDI0MSwgOTgsIDIyLCAKKyAgICA2MiwgNTUsIDcsIDYsIDEsIDIxMywgMTA5LCAyLCAyMDksIDcsIDQsIDEsIDIxMywgMTA5LCAyLCAyMDksIDcsIDYsIDEsIAorICAgIDIxMywgMTA5LCAyLCA2MiwgNTUsIDcsIDQsIDEsIDIxMywgMTA5LCAyLCA2MiwgNTUsIDcsIDYsIDEsIDIxMywgMTA5LCAyLCAKKyAgICAyNDEsIDE1NywgNTAsIDcsIDQsIDEsIDIxMywgMTA5LCAyLCAyNDEsIDE1NywgNTAsIDcsIDYsIDEsIDIxMywgMTA5LCAyLCAKKyAgICAxNzcsIDcsIDQsIDEsIDIxMywgMTA5LCAyLCAxNzcsIDcsIDYsIDEsIDIzMSwgMTA2LCAyMzMsIDU1LCA3LCA0LCAxLCAyMzEsIAorICAgIDEwNiwgMjMzLCA1NSwgNywgNiwgMSwgMjMxLCAxMDYsIDIxMSwgMjExLCA3LCA0LCAxLCAyMzEsIDEwNiwgMjExLCAyMTEsIAorICAgIDcsIDYsIDEsIDIxMywgMTA5LCAyLCAyMzIsIDI1MSwgNywgNCwgMSwgMjEzLCAxMDksIDIsIDIzMiwgMjUxLCAyNSwgNCwgMSwgCisgICAgMjU0LCAxODAsIDIsIDIyNSwgNzUsIDI1LCA0LCAxLCAyNTQsIDE4MCwgMiwgMjQ4LCAyMjAsIDI1LCA0LCAxLCAyNTQsIAorICAgIDE4MCwgMiwgMjI1LCA3NiwgMjIsIDIxNCwgMjUxLCAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDI0OCwgMjIxLCAyMiwgMjE0LCAKKyAgICAyNTEsIDI1LCA0LCAxLCAyNTQsIDE4MCwgMiwgMjI1LCA3NiwgMjIsIDIyNywgMTYsIDI1LCA0LCAxLCAyNTQsIDE4MCwgMiwgCisgICAgMjQ4LCAyMjEsIDIyLCAyMjcsIDE2LCAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDIyNSwgNzYsIDIyLCAyMjYsIDg2LCAyNSwgCisgICAgNCwgMSwgMjU0LCAxODAsIDIsIDI0OCwgMjIxLCAyMiwgMjI2LCA4NiwgMjUsIDYsIDEsIDI1NCwgMTgwLCAyLCAyMjUsIDc1LCAKKyAgICAyNSwgNiwgMSwgMjU0LCAxODAsIDIsIDI0OCwgMjIwLCAyNSwgNiwgMSwgMjU0LCAxODAsIDIsIDIyNSwgNzYsIDIyLCAyMTQsIAorICAgIDI1MSwgMjUsIDYsIDEsIDI1NCwgMTgwLCAyLCAyNDgsIDIyMSwgMjIsIDIxNCwgMjUxLCAyNSwgNiwgMSwgMjU0LCAxODAsIAorICAgIDIsIDIyNSwgNzYsIDIyLCAyMjcsIDE2LCAyNSwgNiwgMSwgMjU0LCAxODAsIDIsIDI0OCwgMjIxLCAyMiwgMjI3LCAxNiwgCisgICAgMjUsIDYsIDEsIDI1NCwgMTgwLCAyLCAyMjUsIDc2LCAyMiwgMjI2LCA4NiwgMjUsIDYsIDEsIDI1NCwgMTgwLCAyLCAyNDgsIAorICAgIDIyMSwgMjIsIDIyNiwgODYsIDI1LCA0LCAxLCAyNDUsIDE4NSwgMiwgMjI1LCA3NSwgMjUsIDQsIDEsIDI0NSwgMTg1LCAyLCAKKyAgICAyNDgsIDIyMCwgMjUsIDQsIDEsIDI0NSwgMTg1LCAyLCAyMjUsIDc2LCAyMiwgMjE0LCAyNTEsIDI1LCA0LCAxLCAyNDUsIAorICAgIDE4NSwgMiwgMjQ4LCAyMjEsIDIyLCAyMTQsIDI1MSwgMjUsIDQsIDEsIDI0NSwgMTg1LCAyLCAyMjUsIDc2LCAyMiwgMjI3LCAKKyAgICAxNiwgMjUsIDQsIDEsIDI0NSwgMTg1LCAyLCAyNDgsIDIyMSwgMjIsIDIyNywgMTYsIDI1LCA2LCAxLCAyNDUsIDE4NSwgMiwgCisgICAgMjI1LCA3NSwgMjUsIDYsIDEsIDI0NSwgMTg1LCAyLCAyNDgsIDIyMCwgMjUsIDYsIDEsIDI0NSwgMTg1LCAyLCAyMjUsIDc2LCAKKyAgICAyMiwgMjE0LCAyNTEsIDI1LCA2LCAxLCAyNDUsIDE4NSwgMiwgMjQ4LCAyMjEsIDIyLCAyMTQsIDI1MSwgMjUsIDYsIDEsIAorICAgIDI0NSwgMTg1LCAyLCAyMjUsIDc2LCAyMiwgMjI3LCAxNiwgMjUsIDYsIDEsIDI0NSwgMTg1LCAyLCAyNDgsIDIyMSwgMjIsIAorICAgIDIyNywgMTYsIDI1LCA0LCAxLCAyNDUsIDE1MCwgMiwgMjI1LCA3NSwgMjUsIDQsIDEsIDI0NSwgMTUwLCAyLCAyNDgsIDIyMCwgCisgICAgMjUsIDQsIDEsIDI0NSwgMTUwLCAyLCAyMjUsIDc2LCAyMiwgMjE0LCAyNTEsIDI1LCA0LCAxLCAyNDUsIDE1MCwgMiwgMjQ4LCAKKyAgICAyMjEsIDIyLCAyMTQsIDI1MSwgMjUsIDQsIDEsIDI0NSwgMTUwLCAyLCAyMjUsIDc2LCAyMiwgMjI3LCAxNiwgMjUsIDQsIDEsIAorICAgIDI0NSwgMTUwLCAyLCAyNDgsIDIyMSwgMjIsIDIyNywgMTYsIDI1LCA0LCAxLCAyNDUsIDE1MCwgMiwgMjI1LCA3NiwgMjIsIAorICAgIDIyNiwgODYsIDI1LCA0LCAxLCAyNDUsIDE1MCwgMiwgMjQ4LCAyMjEsIDIyLCAyMjYsIDg2LCAyNSwgNiwgMSwgMjQ1LCAKKyAgICAxNTAsIDIsIDIyNSwgNzUsIDI1LCA2LCAxLCAyNDUsIDE1MCwgMiwgMjQ4LCAyMjAsIDI1LCA2LCAxLCAyNDUsIDE1MCwgMiwgCisgICAgMjI1LCA3NiwgMjIsIDIxNCwgMjUxLCAyNSwgNiwgMSwgMjQ1LCAxNTAsIDIsIDI0OCwgMjIxLCAyMiwgMjE0LCAyNTEsIDI1LCAKKyAgICA2LCAxLCAyNDUsIDE1MCwgMiwgMjI1LCA3NiwgMjIsIDIyNywgMTYsIDI1LCA2LCAxLCAyNDUsIDE1MCwgMiwgMjQ4LCAyMjEsIAorICAgIDIyLCAyMjcsIDE2LCAyNSwgNiwgMSwgMjQ1LCAxNTAsIDIsIDIyNSwgNzYsIDIyLCAyMjYsIDg2LCAyNSwgNiwgMSwgMjQ1LCAKKyAgICAxNTAsIDIsIDI0OCwgMjIxLCAyMiwgMjI2LCA4NiwgMjUsIDQsIDEsIDIzNiwgNDUsIDIsIDIyNSwgNzUsIDI1LCA0LCAxLCAKKyAgICAyMzYsIDQ1LCAyLCAyNDgsIDIyMCwgMjUsIDQsIDEsIDIzNiwgNDUsIDIsIDIyNSwgNzYsIDIyLCAyMTQsIDI1MSwgMjUsIDQsIAorICAgIDEsIDIzNiwgNDUsIDIsIDI0OCwgMjIxLCAyMiwgMjE0LCAyNTEsIDI1LCA0LCAxLCAyMzYsIDQ1LCAyLCAyMjUsIDc2LCAyMiwgCisgICAgMjI3LCAxNiwgMjUsIDQsIDEsIDIzNiwgNDUsIDIsIDI0OCwgMjIxLCAyMiwgMjI3LCAxNiwgMjUsIDQsIDEsIDIzNiwgNDUsIAorICAgIDIsIDIyNSwgNzYsIDIyLCAyMjYsIDg2LCAyNSwgNCwgMSwgMjM2LCA0NSwgMiwgMjQ4LCAyMjEsIDIyLCAyMjYsIDg2LCAyNSwgCisgICAgNiwgMSwgMjM2LCA0NSwgMiwgMjI1LCA3NSwgMjUsIDYsIDEsIDIzNiwgNDUsIDIsIDI0OCwgMjIwLCAyNSwgNiwgMSwgMjM2LCAKKyAgICA0NSwgMiwgMjI1LCA3NiwgMjIsIDIxNCwgMjUxLCAyNSwgNiwgMSwgMjM2LCA0NSwgMiwgMjQ4LCAyMjEsIDIyLCAyMTQsIAorICAgIDI1MSwgMjUsIDYsIDEsIDIzNiwgNDUsIDIsIDIyNSwgNzYsIDIyLCAyMjcsIDE2LCAyNSwgNiwgMSwgMjM2LCA0NSwgMiwgCisgICAgMjQ4LCAyMjEsIDIyLCAyMjcsIDE2LCAyNSwgNiwgMSwgMjM2LCA0NSwgMiwgMjI1LCA3NiwgMjIsIDIyNiwgODYsIDI1LCA2LCAKKyAgICAxLCAyMzYsIDQ1LCAyLCAyNDgsIDIyMSwgMjIsIDIyNiwgODYsIDI1LCA0LCAxLCAyMjcsIDEwMywgMiwgMjI1LCA3NSwgMjUsIAorICAgIDQsIDEsIDIyNywgMTAzLCAyLCAyNDgsIDIyMCwgMjUsIDQsIDEsIDIyNywgMTAzLCAyLCAyMjUsIDc2LCAyMiwgMjE0LCAKKyAgICAyNTEsIDI1LCA0LCAxLCAyMjcsIDEwMywgMiwgMjQ4LCAyMjEsIDIyLCAyMTQsIDI1MSwgMjUsIDQsIDEsIDIyNywgMTAzLCAKKyAgICAyLCAyMjUsIDc2LCAyMiwgMjI3LCAxNiwgMjUsIDQsIDEsIDIyNywgMTAzLCAyLCAyNDgsIDIyMSwgMjIsIDIyNywgMTYsIAorICAgIDI1LCA2LCAxLCAyMjcsIDEwMywgMiwgMjI1LCA3NSwgMjUsIDYsIDEsIDIyNywgMTAzLCAyLCAyNDgsIDIyMCwgMjUsIDYsIAorICAgIDEsIDIyNywgMTAzLCAyLCAyMjUsIDc2LCAyMiwgMjE0LCAyNTEsIDI1LCA2LCAxLCAyMjcsIDEwMywgMiwgMjQ4LCAyMjEsIAorICAgIDIyLCAyMTQsIDI1MSwgMjUsIDYsIDEsIDIyNywgMTAzLCAyLCAyMjUsIDc2LCAyMiwgMjI3LCAxNiwgMjUsIDYsIDEsIDIyNywgCisgICAgMTAzLCAyLCAyNDgsIDIyMSwgMjIsIDIyNywgMTYsIDI1LCA0LCAxLCAyMTUsIDEzNSwgMiwgMjI1LCA3NSwgMjUsIDQsIDEsIAorICAgIDIxNSwgMTM1LCAyLCAyNDgsIDIyMCwgMjUsIDQsIDEsIDIxNSwgMTM1LCAyLCAyMjUsIDc2LCAyMiwgMjE0LCAyNTEsIDI1LCAKKyAgICA0LCAxLCAyMTUsIDEzNSwgMiwgMjQ4LCAyMjEsIDIyLCAyMTQsIDI1MSwgMjUsIDQsIDEsIDIxNSwgMTM1LCAyLCAyMjUsIAorICAgIDc2LCAyMiwgMjI3LCAxNiwgMjUsIDQsIDEsIDIxNSwgMTM1LCAyLCAyNDgsIDIyMSwgMjIsIDIyNywgMTYsIDI1LCA0LCAxLCAKKyAgICAyMTUsIDEzNSwgMiwgMjI1LCA3NiwgMjIsIDIyNiwgODYsIDI1LCA0LCAxLCAyMTUsIDEzNSwgMiwgMjQ4LCAyMjEsIDIyLCAKKyAgICAyMjYsIDg2LCAyNSwgNiwgMSwgMjE1LCAxMzUsIDIsIDI0OCwgMjIwLCAyNSwgNiwgMSwgMjE1LCAxMzUsIDIsIDI0OCwgCisgICAgMjIxLCAyMiwgMjE0LCAyNTEsIDI1LCA2LCAxLCAyMTUsIDEzNSwgMiwgMjQ4LCAyMjEsIDIyLCAyMjcsIDE2LCAyNSwgNiwgCisgICAgMSwgMjE1LCAxMzUsIDIsIDI0OCwgMjIxLCAyMiwgMjI2LCA4NiwgMjUsIDQsIDEsIDIyNywgMTA1LCAyLCAyMjUsIDc1LCAKKyAgICAyNSwgNCwgMSwgMjI3LCAxMDUsIDIsIDI0OCwgMjIwLCAyNSwgNCwgMSwgMjI3LCAxMDUsIDIsIDIyNSwgNzYsIDIyLCAyMTQsIAorICAgIDI1MSwgMjUsIDQsIDEsIDIyNywgMTA1LCAyLCAyNDgsIDIyMSwgMjIsIDIxNCwgMjUxLCAyNSwgNCwgMSwgMjI3LCAxMDUsIAorICAgIDIsIDIyNSwgNzYsIDIyLCAyMjcsIDE2LCAyNSwgNCwgMSwgMjI3LCAxMDUsIDIsIDI0OCwgMjIxLCAyMiwgMjI3LCAxNiwgCisgICAgMjUsIDQsIDEsIDIyNywgMTA1LCAyLCAyMjUsIDc2LCAyMiwgMjI2LCA4NiwgMjUsIDQsIDEsIDIyNywgMTA1LCAyLCAyNDgsIAorICAgIDIyMSwgMjIsIDIyNiwgODYsIDI1LCA2LCAxLCAyMjcsIDEwNSwgMiwgMjI1LCA3NSwgMjUsIDYsIDEsIDIyNywgMTA1LCAyLCAKKyAgICAyNDgsIDIyMCwgMjUsIDYsIDEsIDIyNywgMTA1LCAyLCAyMjUsIDc2LCAyMiwgMjE0LCAyNTEsIDI1LCA2LCAxLCAyMjcsIAorICAgIDEwNSwgMiwgMjQ4LCAyMjEsIDIyLCAyMTQsIDI1MSwgMjUsIDYsIDEsIDIyNywgMTA1LCAyLCAyMjUsIDc2LCAyMiwgMjI3LCAKKyAgICAxNiwgMjUsIDYsIDEsIDIyNywgMTA1LCAyLCAyNDgsIDIyMSwgMjIsIDIyNywgMTYsIDI1LCA2LCAxLCAyMjcsIDEwNSwgMiwgCisgICAgMjI1LCA3NiwgMjIsIDIyNiwgODYsIDI1LCA2LCAxLCAyMjcsIDEwNSwgMiwgMjQ4LCAyMjEsIDIyLCAyMjYsIDg2LCAyNSwgCisgICAgNCwgMSwgMjU0LCAxODAsIDIsIDIxNCwgMjUxLCAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDIyNywgMTYsIDI1LCA0LCAxLCAKKyAgICAyNDUsIDE4NSwgMiwgMjE0LCAyNTEsIDI1LCA0LCAxLCAyNDUsIDE4NSwgMiwgMjI3LCAxNiwgMjUsIDQsIDEsIDI0NSwgCisgICAgMTUwLCAyLCAyMTQsIDI1MSwgMjUsIDQsIDEsIDI0NSwgMTUwLCAyLCAyMjcsIDE2LCAyNSwgNCwgMSwgMjM2LCA0NSwgMiwgCisgICAgMjE0LCAyNTEsIDI1LCA0LCAxLCAyMzYsIDQ1LCAyLCAyMjcsIDE2LCAyNSwgNCwgMSwgMjI3LCAxMDMsIDIsIDIxNCwgMjUxLCAKKyAgICAyNSwgNCwgMSwgMjI3LCAxMDMsIDIsIDIyNywgMTYsIDI1LCA0LCAxLCAyMTUsIDEzNSwgMiwgMjE0LCAyNTEsIDI1LCA0LCAKKyAgICAxLCAyMTUsIDEzNSwgMiwgMjI3LCAxNiwgMjUsIDQsIDEsIDIyNywgMTA1LCAyLCAyMTQsIDI1MSwgMjUsIDQsIDEsIDIyNywgCisgICAgMTA1LCAyLCAyMjcsIDE2LCAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDIyNSwgNzYsIDIyLCAyMTIsIDIxMSwgMjUsIDQsIDEsIAorICAgIDI1NCwgMTgwLCAyLCAyNDgsIDIyMSwgMjIsIDIxMiwgMjExLCAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDIyNSwgNzYsIDIyLCAKKyAgICAyMTQsIDI1MiwgMjIsIDIxMiwgMjExLCAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDI0OCwgMjIxLCAyMiwgMjE0LCAyNTIsIAorICAgIDIyLCAyMTIsIDIxMSwgMjUsIDQsIDEsIDI1NCwgMTgwLCAyLCAyMjUsIDc2LCAyMiwgMjI3LCAxNywgMjIsIDIxMiwgMjExLCAKKyAgICAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDI0OCwgMjIxLCAyMiwgMjI3LCAxNywgMjIsIDIxMiwgMjExLCAyNSwgNCwgMSwgCisgICAgMjU0LCAxODAsIDIsIDIyNSwgNzYsIDIyLCAyMjYsIDg3LCAyMiwgMjEyLCAyMTEsIDI1LCA0LCAxLCAyNTQsIDE4MCwgMiwgCisgICAgMjQ4LCAyMjEsIDIyLCAyMjYsIDg3LCAyMiwgMjEyLCAyMTEsIDI1LCA2LCAxLCAyNTQsIDE4MCwgMiwgMjI1LCA3NiwgMjIsIAorICAgIDIyNSwgODcsIDI1LCA2LCAxLCAyNTQsIDE4MCwgMiwgMjQ4LCAyMjEsIDIyLCAyMjUsIDg3LCAyNSwgNiwgMSwgMjU0LCAKKyAgICAxODAsIDIsIDIyNSwgNzYsIDIyLCAyMTQsIDI1MiwgMjIsIDIyNSwgODcsIDI1LCA2LCAxLCAyNTQsIDE4MCwgMiwgMjQ4LCAKKyAgICAyMjEsIDIyLCAyMTQsIDI1MiwgMjIsIDIyNSwgODcsIDI1LCA2LCAxLCAyNTQsIDE4MCwgMiwgMjI1LCA3NiwgMjIsIDIyNywgCisgICAgMTcsIDIyLCAyMjUsIDg3LCAyNSwgNiwgMSwgMjU0LCAxODAsIDIsIDI0OCwgMjIxLCAyMiwgMjI3LCAxNywgMjIsIDIyNSwgCisgICAgODcsIDI1LCA2LCAxLCAyNTQsIDE4MCwgMiwgMjI1LCA3NiwgMjIsIDIyNiwgODcsIDIyLCAyMjUsIDg3LCAyNSwgNiwgMSwgCisgICAgMjU0LCAxODAsIDIsIDI0OCwgMjIxLCAyMiwgMjI2LCA4NywgMjIsIDIyNSwgODcsIDI1LCA0LCAxLCAyNDUsIDE1MCwgMiwgCisgICAgMjI1LCA3NiwgMjIsIDIxMiwgMjExLCAyNSwgNCwgMSwgMjQ1LCAxNTAsIDIsIDI0OCwgMjIxLCAyMiwgMjEyLCAyMTEsIDI1LCAKKyAgICA0LCAxLCAyNDUsIDE1MCwgMiwgMjI1LCA3NiwgMjIsIDIxNCwgMjUyLCAyMiwgMjEyLCAyMTEsIDI1LCA0LCAxLCAyNDUsIAorICAgIDE1MCwgMiwgMjQ4LCAyMjEsIDIyLCAyMTQsIDI1MiwgMjIsIDIxMiwgMjExLCAyNSwgNCwgMSwgMjQ1LCAxNTAsIDIsIDIyNSwgCisgICAgNzYsIDIyLCAyMjcsIDE3LCAyMiwgMjEyLCAyMTEsIDI1LCA0LCAxLCAyNDUsIDE1MCwgMiwgMjQ4LCAyMjEsIDIyLCAyMjcsIAorICAgIDE3LCAyMiwgMjEyLCAyMTEsIDI1LCA0LCAxLCAyNDUsIDE1MCwgMiwgMjI1LCA3NiwgMjIsIDIyNiwgODcsIDIyLCAyMTIsIAorICAgIDIxMSwgMjUsIDQsIDEsIDI0NSwgMTUwLCAyLCAyNDgsIDIyMSwgMjIsIDIyNiwgODcsIDIyLCAyMTIsIDIxMSwgMjUsIDYsIAorICAgIDEsIDI0NSwgMTUwLCAyLCAyMjUsIDc2LCAyMiwgMjI1LCA4NywgMjUsIDYsIDEsIDI0NSwgMTUwLCAyLCAyNDgsIDIyMSwgCisgICAgMjIsIDIyNSwgODcsIDI1LCA2LCAxLCAyNDUsIDE1MCwgMiwgMjI1LCA3NiwgMjIsIDIxNCwgMjUyLCAyMiwgMjI1LCA4NywgCisgICAgMjUsIDYsIDEsIDI0NSwgMTUwLCAyLCAyNDgsIDIyMSwgMjIsIDIxNCwgMjUyLCAyMiwgMjI1LCA4NywgMjUsIDYsIDEsIAorICAgIDI0NSwgMTUwLCAyLCAyMjUsIDc2LCAyMiwgMjI3LCAxNywgMjIsIDIyNSwgODcsIDI1LCA2LCAxLCAyNDUsIDE1MCwgMiwgCisgICAgMjQ4LCAyMjEsIDIyLCAyMjcsIDE3LCAyMiwgMjI1LCA4NywgMjUsIDYsIDEsIDI0NSwgMTUwLCAyLCAyMjUsIDc2LCAyMiwgCisgICAgMjI2LCA4NywgMjIsIDIyNSwgODcsIDI1LCA2LCAxLCAyNDUsIDE1MCwgMiwgMjQ4LCAyMjEsIDIyLCAyMjYsIDg3LCAyMiwgCisgICAgMjI1LCA4NywgMjUsIDQsIDEsIDIyNywgMTA1LCAyLCAyMjUsIDc2LCAyMiwgMjEyLCAyMTEsIDI1LCA0LCAxLCAyMjcsIAorICAgIDEwNSwgMiwgMjQ4LCAyMjEsIDIyLCAyMTIsIDIxMSwgMjUsIDQsIDEsIDIyNywgMTA1LCAyLCAyMjUsIDc2LCAyMiwgMjE0LCAKKyAgICAyNTIsIDIyLCAyMTIsIDIxMSwgMjUsIDQsIDEsIDIyNywgMTA1LCAyLCAyNDgsIDIyMSwgMjIsIDIxNCwgMjUyLCAyMiwgCisgICAgMjEyLCAyMTEsIDI1LCA0LCAxLCAyMjcsIDEwNSwgMiwgMjI1LCA3NiwgMjIsIDIyNywgMTcsIDIyLCAyMTIsIDIxMSwgMjUsIAorICAgIDQsIDEsIDIyNywgMTA1LCAyLCAyNDgsIDIyMSwgMjIsIDIyNywgMTcsIDIyLCAyMTIsIDIxMSwgMjUsIDQsIDEsIDIyNywgCisgICAgMTA1LCAyLCAyMjUsIDc2LCAyMiwgMjI2LCA4NywgMjIsIDIxMiwgMjExLCAyNSwgNCwgMSwgMjI3LCAxMDUsIDIsIDI0OCwgCisgICAgMjIxLCAyMiwgMjI2LCA4NywgMjIsIDIxMiwgMjExLCAyNSwgNiwgMSwgMjI3LCAxMDUsIDIsIDIyNSwgNzYsIDIyLCAyMjUsIAorICAgIDg3LCAyNSwgNiwgMSwgMjI3LCAxMDUsIDIsIDI0OCwgMjIxLCAyMiwgMjI1LCA4NywgMjUsIDYsIDEsIDIyNywgMTA1LCAyLCAKKyAgICAyMjUsIDc2LCAyMiwgMjE0LCAyNTIsIDIyLCAyMjUsIDg3LCAyNSwgNiwgMSwgMjI3LCAxMDUsIDIsIDI0OCwgMjIxLCAyMiwgCisgICAgMjE0LCAyNTIsIDIyLCAyMjUsIDg3LCAyNSwgNiwgMSwgMjI3LCAxMDUsIDIsIDIyNSwgNzYsIDIyLCAyMjcsIDE3LCAyMiwgCisgICAgMjI1LCA4NywgMjUsIDYsIDEsIDIyNywgMTA1LCAyLCAyNDgsIDIyMSwgMjIsIDIyNywgMTcsIDIyLCAyMjUsIDg3LCAyNSwgCisgICAgNiwgMSwgMjI3LCAxMDUsIDIsIDIyNSwgNzYsIDIyLCAyMjYsIDg3LCAyMiwgMjI1LCA4NywgMjUsIDYsIDEsIDIyNywgMTA1LCAKKyAgICAyLCAyNDgsIDIyMSwgMjIsIDIyNiwgODcsIDIyLCAyMjUsIDg3LCAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDIxNCwgMTA1LCAKKyAgICAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDIzMiwgMTEwLCAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDIxNCwgMjUyLCAyMiwgCisgICAgMjEyLCAyMTEsIDI1LCA0LCAxLCAyNTQsIDE4MCwgMiwgMjEyLCAyMTEsIDI1LCA0LCAxLCAyNTQsIDE4MCwgMiwgMjI3LCAKKyAgICAxNywgMjIsIDIxMiwgMjExLCAyNSwgNCwgMSwgMjU0LCAxODAsIDIsIDIyNiwgODYsIDI1LCA0LCAxLCAyNTQsIDE4MCwgMiwgCisgICAgMjI2LCA4NywgMjIsIDIxMiwgMjExLCAyNSwgNiwgMSwgMjU0LCAxODAsIDIsIDIxNCwgMTA1LCAyNSwgNiwgMSwgMjU0LCAKKyAgICAxODAsIDIsIDIzMiwgMTEwLCAyNSwgNiwgMSwgMjU0LCAxODAsIDIsIDIxNCwgMjUxLCAyNSwgNiwgMSwgMjU0LCAxODAsIDIsIAorICAgIDIyNywgMTYsIDI1LCA2LCAxLCAyNTQsIDE4MCwgMiwgMjI1LCA4NywgMjUsIDIzNCwgMTIyLCAyNSwgMjI1LCA4NywgMjUsIAorICAgIDIyNSwgNzUsIDI1LCAyMjYsIDg2LCAyNSwgMjQ4LCA2OSwgMjIsIDIyNiwgODYsIDI1LCA0LCAxLCAyNDUsIDE1MCwgMiwgCisgICAgMjE0LCAyNTIsIDIyLCAyMTIsIDIxMSwgMjUsIDQsIDEsIDI0NSwgMTUwLCAyLCAyMTIsIDIxMSwgMjUsIDQsIDEsIDI0NSwgCisgICAgMTUwLCAyLCAyMjcsIDE3LCAyMiwgMjEyLCAyMTEsIDI1LCA0LCAxLCAyNDUsIDE1MCwgMiwgMjI2LCA4NiwgMjUsIDQsIDEsIAorICAgIDI0NSwgMTUwLCAyLCAyMjYsIDg3LCAyMiwgMjEyLCAyMTEsIDI1LCA2LCAxLCAyNDUsIDE4NSwgMiwgMjE0LCAyNTEsIDI1LCAKKyAgICA2LCAxLCAyNDUsIDE4NSwgMiwgMjI3LCAxNiwgMjUsIDYsIDEsIDI0NSwgMTUwLCAyLCAyMTQsIDI1MSwgMjUsIDYsIDEsIAorICAgIDI0NSwgMTUwLCAyLCAyMjcsIDE2LCAyNSwgNiwgMSwgMjQ1LCAxNTAsIDIsIDIyNSwgODcsIDI1LCAyMjUsIDc2LCAyMiwgCisgICAgMjE0LCAyNTEsIDI1LCAyMjUsIDc2LCAyMiwgMjI3LCAxNiwgMjUsIDIyNSwgNzYsIDIyLCAyMjYsIDg2LCAyNSwgNCwgMSwgCisgICAgMjM2LCA0NSwgMiwgMjE0LCAxMDUsIDI1LCA0LCAxLCAyMzYsIDQ1LCAyLCAyMzIsIDExMCwgMjUsIDQsIDEsIDIzNiwgNDUsIAorICAgIDIsIDI0OCwgNjksIDIyLCAyMTQsIDI1MSwgMjUsIDQsIDEsIDIzNiwgNDUsIDIsIDI0OCwgNjksIDIyLCAyMjcsIDE2LCAyNSwgCisgICAgNCwgMSwgMjM2LCA0NSwgMiwgMjI2LCA4NiwgMjUsIDQsIDEsIDIzNiwgNDUsIDIsIDI0OCwgNjksIDIyLCAyMjYsIDg2LCAKKyAgICAyNSwgNiwgMSwgMjM2LCA0NSwgMiwgMjE0LCAxMDUsIDI1LCA2LCAxLCAyMzYsIDQ1LCAyLCAyMzIsIDExMCwgMjUsIDYsIDEsIAorICAgIDIzNiwgNDUsIDIsIDIxNCwgMjUxLCAyNSwgNiwgMSwgMjM2LCA0NSwgMiwgMjI3LCAxNiwgMjUsIDI0OCwgMjIxLCAyMiwgCisgICAgMjE0LCAyNTEsIDI1LCAyNDgsIDIyMSwgMjIsIDIyNywgMTYsIDI1LCAyNDgsIDIyMSwgMjIsIDIyNiwgODYsIDI1LCA0LCAxLCAKKyAgICAyMTUsIDEzNSwgMiwgMjE0LCAxMDUsIDI1LCA0LCAxLCAyMTUsIDEzNSwgMiwgMjMyLCAxMTAsIDI1LCA0LCAxLCAyMTUsIAorICAgIDEzNSwgMiwgMjQ4LCA2OSwgMjIsIDIxNCwgMjUxLCAyNSwgNCwgMSwgMjE1LCAxMzUsIDIsIDI0OCwgNjksIDIyLCAyMjcsIAorICAgIDE2LCAyNSwgNCwgMSwgMjIzLCAyMjUsIDIsIDIyNSwgNzUsIDI1LCA0LCAxLCAyMjMsIDIyNSwgMiwgMjQ4LCAyMjAsIDI1LCAKKyAgICA0LCAxLCAyMTUsIDEzNSwgMiwgMjI2LCA4NiwgMjUsIDQsIDEsIDIxNSwgMTM1LCAyLCAyNDgsIDY5LCAyMiwgMjI2LCA4NiwgCisgICAgMjUsIDYsIDEsIDIxNSwgMTM1LCAyLCAyMTQsIDEwNSwgMjUsIDYsIDEsIDIxNSwgMTM1LCAyLCAyMzIsIDExMCwgMjUsIDYsIAorICAgIDEsIDIxNSwgMTM1LCAyLCAyMTQsIDI1MSwgMjUsIDYsIDEsIDIxNSwgMTM1LCAyLCAyMjcsIDE2LCAyNSwgNiwgMSwgMjIzLCAKKyAgICAyMjUsIDIsIDI0OCwgMjIwLCAyNSwgMjQ4LCA2OSwgMjIsIDIxNCwgMjUxLCAyNSwgMjQ4LCA2OSwgMjIsIDIyNywgMTYsIAorICAgIDI1LCAyMTQsIDI1MSwgMjUsIDQsIDEsIDIyNywgMTA1LCAyLCAyMTQsIDI1MiwgMjIsIDIxMiwgMjExLCAyNSwgNCwgMSwgCisgICAgMjI3LCAxMDUsIDIsIDIxMiwgMjExLCAyNSwgNCwgMSwgMjI3LCAxMDUsIDIsIDIyNywgMTcsIDIyLCAyMTIsIDIxMSwgMjUsIAorICAgIDQsIDEsIDIyNywgMTA1LCAyLCAyMjYsIDg2LCAyNSwgNCwgMSwgMjI3LCAxMDUsIDIsIDIyNiwgODcsIDIyLCAyMTIsIDIxMSwgCisgICAgMjUsIDYsIDEsIDIyNywgMTAzLCAyLCAyMTQsIDI1MSwgMjUsIDYsIDEsIDIyNywgMTAzLCAyLCAyMjcsIDE2LCAyNSwgNiwgCisgICAgMSwgMjI3LCAxMDUsIDIsIDIxNCwgMjUxLCAyNSwgNiwgMSwgMjI3LCAxMDUsIDIsIDIyNywgMTYsIDI1LCA2LCAxLCAyMjcsIAorICAgIDEwNSwgMiwgMjI1LCA4NywgMjUsIDIyNywgMTYsIDI1LCAyNDgsIDIyMCwgMjQ1LCAyMzAsIDIyNCwgMjA3LCAyNDUsIDIzOSwgCisgICAgMjI0LCAyMDcsIDI0NSwgMjMwLCAyMTksIDIyNSwgMjQ1LCAyMzksIDIxOSwgMjI1LCAyMTcsIDEwOCwgMjE5LCAyMjUsIAorICAgIDI0NCwgOTksIDIxOSwgMjI1LCAyMjAsIDcwLCAyMTksIDIyNSwgMjQ0LCAyMDEsIDIxOSwgMjI1LCAyMjUsIDYzLCAyMTksIAorICAgIDIyNSwgMjE3LCAxMzYsIDIxOSwgMjI1LCAyNDIsIDEzNywgMjE5LCAyMjUsIDIxMiwgODAsIDIxMywgMjMzLCAyMTksIDIyNSwgCisgICAgMjEyLCA4MCwgMjEzLCAyMzMsIDIyOCwgMjIxLCAyMTIsIDgwLCAyMTMsIDIzMywgMjM1LCAxODAsIDIzMywgMTYwLCA3OSwgCisgICAgMjIzLCAxNzQsIDc5LCAyNDEsIDIxLCAyMjgsIDIyMiwgMjQxLCAyMSwgMjQ0LCAyMDEsIDI0OCwgMjIzLCAyNDUsIDIzMCwgCisgICAgMjQ4LCAyMjMsIDI0NSwgMjM5LCAyNDgsIDIyMywgMjAxLCAxMzQsIDUyLCA2NiwgMjMzLCA4MywgNTIsIDExNywgMjMzLCAKKyAgICA4MywgNDMsIDIyMCwgMTAwLCAyMjQsIDE3OCwgNzksIDQ3LCAyMjAsIDEwMCwgMjI0LCAxNzgsIDc5LCAyMjAsIDEwMCwgCisgICAgMjMyLCAyMzgsIDIyNCwgMTc4LCA3OSwgMjIwLCAxMDAsIDI0MiwgMTIsIDIyNCwgMTc4LCA3OSwgNDMsIDUyLCAyMjQsIAorICAgIDE3OCwgNzksIDQ3LCA1MiwgMjI0LCAxNzgsIDc5LCA1MiwgMjMyLCAyMzgsIDIyNCwgMTc4LCA3OSwgNTIsIDI0MiwgMTIsIAorICAgIDIyNCwgMTc4LCA3OSwgMjQ5LCAxNSwgNTIsIDI0OSwgMTUsIDI1MSwgMTY3LCAyMTYsIDE5MywgMjUxLCAxNjcsIDEyNCwgCisgICAgNjIsIDIzMywgMTc4LCAxMTksIDYyLCAyMzMsIDE3OCwgMjAxLCAyNDUsIDI0MSwgMjQxLCAxOSwgMjI1LCAxODAsIDIzMywgCisgICAgODQsIDIyMSwgODAsIDIyNiwgMTgwLCAyMjEsIDgwLCAyMzMsIDE2MCwgMjQ1LCAyMzcsIDIyMywgMTc0LCAyNDUsIDIzNywgCisgICAgMjI1LCAxNjIsIDI0OCwgMTMsIDI0NCwgMTA4LCAyMzMsIDE2MCwgMjI3LCAyMywgMjIzLCAxNzQsIDIyNywgMjMsIDIzMCwgCisgICAgODIsIDIyOCwgMjI3LCAyMTksIDIyNSwgMjI2LCA5NCwgMjMxLCA3NiwgNTMsIDIyNiwgOTQsIDIxNywgMjE0LCAyMTcsIAorICAgIDExNCwgNTMsIDIyNSwgMTA3LCA1MiwgMjI1LCAxMDcsIDIxNiwgMTgyLCAyMjUsIDEwNywgMjIzLCAyMzYsIDIyNSwgMTA3LCAKKyAgICAyMjMsIDIzNiwgNTIsIDIyNSwgMTA3LCAyMjMsIDIzNiwgMjE2LCAxODIsIDIyNSwgMTA3LCAyNTEsIDM4LCAyMjAsIDEwMCwgCisgICAgMjMzLCAxNjQsIDI1NCwgMTQ2LCAyMjQsIDE3OCwgNzksIDIyMCwgMTAwLCAyMjMsIDE3OCwgMjU0LCAxNDYsIDIyNCwgMTc4LCAKKyAgICA3OSwgMjI0LCAzNCwgNzksIDUyLCAyNDUsIDExOSwgNzksIDIzNiwgNTksIDIyNywgMjUsIDIxNSwgMTU2LCAxNDMsIDIxNywgCisgICAgNzgsIDI1MSwgMzksIDIzNiwgNzQsIDIyNSwgMTgwLCAyNTQsIDEsIDI0MSwgMjIsIDI1MSwgMTY3LCAyNDQsIDkyLCAyMjAsIAorICAgIDQyLCA0MywgNDIsIDI1MSwgMjEwLCAyLCAyMjQsIDE4NywgNDcsIDQyLCAyNTEsIDIxMCwgMiwgMjI0LCAxODcsIDUyLCAKKyAgICAyMjQsIDE5MywgNzksIDIyNCwgMTkzLCAyNDUsIDExOSwgNzksIDI0NSwgMTE5LCAyMjQsIDE5MywgNzksIDIxNywgMzcsIDUsIAorICAgIDI0NSwgMTUxLCAyMjMsIDIzNiwgMjI1LCAyMzYsIDUzLCA4NSwgMTM1LCAyNTEsIDE2NywgODUsIDk2LCAyNTEsIDE2NywgCisgICAgMTE3LCAyNTQsIDMsIDIyMywgMjM2LCAyMjEsIDkzLCAyNTAsIDYxLCAyMTUsIDE0MCwgMTE5LCAyNTQsIDIsIDI1NCwgMTk0LCAKKyAgICAyMTQsIDE3MCwgMjUwLCAyMiwgMjMxLCA2NSwgNTMsIDIxOCwgMTkzLCAyNDgsIDIyMywgMjM2LCA1MiwgMjE1LCAxNTYsIAorICAgIDI0NCwgMTQxLCAyMjUsIDYzLCA3OSwgMTM3LCA2MiwgMjI1LCA2MiwgMjI0LCAyMDQsIDIyNSwgMTA3LCAyNDQsIDEwMSwgCisgICAgNjIsIDIyNSwgNjIsIDI0NCwgMTcwLCA2MiwgMjI1LCA2MiwgMTE5LCA2MiwgMjI1LCA2MiwgMjQ0LCAxMDEsIDYyLCA3OSwgCisgICAgMjQ2LCAxOTMsIDI0OSwgMTkzLCAyMTYsIDE5MiwgNjYsIDI0NCwgMTAxLCAyNDcsIDE5MywgMjMxLCAyMTcsIDE0LCAyMTksIAorICAgIDIyNSwgMjEzLCAxOTksIDIzNSwgMTgwLCAyNDQsIDYyLCAyNTQsIDkzLCAyMzYsIDUwLCAyMTcsIDUyLCAyMzYsIDUwLCAKKyAgICAyMjEsIDgwLCAyMzYsIDUwLCAyMjUsIDE5MiwgMjM2LCA4NiwgMjE4LCAxNDEsIDIxOCwgMjEwLCAyNTUsIDM4LCAyMTgsIAorICAgIDE0MSwgMjE4LCAyMTAsIDIzNiwgODYsIDEyLCAyNDQsIDEwOSwgMjIxLCAyNSwgMjU1LCAzOCwgMTIsIDI0NCwgMTA5LCAKKyAgICAyMjEsIDI1LCAyMzAsIDc4LCAyMSwgMjIxLCAyNiwgMjI4LCAyMjMsIDIxLCAyMjEsIDI2LCAyMTgsIDIzNywgMjEyLCA3OSwgCisgICAgMjE4LCAyMzcsIDcsIDQsIDEsIDc1LCAyMTgsIDIzNywgMTY3LCAyMTgsIDIzNywgMTg1LCAyMTgsIDIzNywgMTkyLCAyMTgsIAorICAgIDIzNywgMjAwLCAyMTgsIDIzNywgMTk4LCAyMTgsIDIzNywgMjAzLCAyMTgsIDIzNywgOTUsIDUzLCAyMTgsIDIzNywgMjMxLCAKKyAgICA2NCwgMjE4LCAyMzcsIDI0NSwgMTgyLCA1MywgMjE4LCAyMzcsIDQzLCAyMjYsIDE2OCwgMjE4LCAyMzcsIDQ3LCAyMjYsIAorICAgIDE2OCwgMjE4LCAyMzcsIDcsIDQsIDEsIDIwNiwgMjE5LCAyNCwgMjEyLCA3OSwgMjE5LCAyNCwgMTE4LCAyMTksIDI0LCAKKyAgICAxMTIsIDIxOSwgMjQsIDE3MCwgMjE5LCAyNCwgMTY3LCAyMTksIDI0LCAxODUsIDIxOSwgMjQsIDE5MiwgMjE5LCAyNCwgCisgICAgMjAwLCAyMTksIDI0LCAxOTgsIDIxOSwgMjQsIDIwMywgMjE5LCAyNCwgOTUsIDUzLCAyMTksIDI0LCAyMzEsIDY0LCAyMTksIAorICAgIDI0LCAyNDUsIDE4MiwgNTMsIDIxOSwgMjQsIDQzLCAyMjYsIDE2OCwgMjE5LCAyNCwgNDcsIDIyNiwgMTY4LCA3LCAyMTksIAorICAgIDI0LCA0LCAxLCA2MywgNywgMjE5LCAyNCwgNCwgMSwgNzcsIDcsIDIxOSwgMjQsIDQsIDEsIDc4LCA3LCAyMTksIDI0LCA0LCAKKyAgICAxLCAyMTMsIDE2OSwgNywgMjE5LCAyNCwgNCwgMSwgMjIyLCAxMzYsIDcsIDIxOSwgMjQsIDQsIDEsIDI0MiwgMTYyLCA3LCAKKyAgICAyMTksIDI0LCA0LCAxLCAyMzUsIDE0MSwgNywgMjE5LCAyNCwgNCwgMSwgMTU1LCA3LCAyMTksIDI0LCA0LCAxLCAxODQsIDcsIAorICAgIDIxOSwgMjQsIDQsIDEsIDIwNiwgNywgMjE5LCAyNCwgNCwgMSwgMjI3LCAxMSwgNywgMjE5LCAyNCwgNCwgMSwgMTk2LCA3LCAKKyAgICAyMTksIDI0LCA0LCAxLCAyMTgsIDExMywgMjQ1LCAxMzQsIDUzLCAyNTAsIDMxLCA1MywgMjQ5LCAxODAsIDUzLCAyNDQsIAorICAgIDg1LCAyNDQsIDg4LCA1MywgMjMzLCA2OCwgNTMsIDIzMSwgNzcsIDUzLCAyMzAsIDk3LCA1MywgMjI2LCA3NCwgNTMsIDIyMywgCisgICAgNTUsIDUzLCAyMTMsIDIwNywgNTMsIDE2MywgMjIwLCAyNTAsIDUzLCAyNDcsIDIwMiwgNTMsIDI0NSwgMTM1LCA1MywgMjM0LCAKKyAgICAxOTYsIDUzLCAyMTYsIDg0LCA1MywgMjQ2LCAxNzYsIDUzLCAyNDMsIDEzNiwgMjI2LCAxMDQsIDUzLCAyMjYsIDcyLCA1MywgCisgICAgMjQyLCAyMDksIDUzLCAyNTMsIDIyNSwgNTMsIDI0MSwgNzcsIDUzLCAyNTAsIDI0MiwgNTMsIDIzMywgNjEsIDIxNiwgMjI5LCAKKyAgICA1MywgMjE5LCAyMDcsIDUzLCAyMTcsIDIxMSwgNTMsIDIzNiwgOTksIDIyMywgNTUsIDUzLCAzOCwgNDMsIDI0MiwgMTAyLCAKKyAgICA1MCwgMzgsIDQ3LCAyNDIsIDEwMiwgNTAsIDM4LCAxODcsIDY2LCAyMzMsIDg0LCAyMjcsIDI2LCAzOCwgMjIwLCAxOTYsIAorICAgIDY2LCAyMzMsIDg0LCAyMjcsIDI2LCAzOCwgMjU0LCAxMjYsIDgwLCA1MCwgMzgsIDI1MCwgNjIsIDgwLCA1MCwgMzgsIDQzLCAKKyAgICA4MCwgNTAsIDM4LCA0NywgODAsIDUwLCAzOCwgMjIzLCAxNjUsIDIyNywgMjYsIDM4LCAyNTAsIDYyLCAyMjMsIDE2NSwgCisgICAgMjI3LCAyNiwgMzgsIDI1NCwgMTI2LCAyMjMsIDE2NSwgMjI3LCAyNiwgMzgsIDEzNywgMTgxLCA1MCwgMzgsIDI0NCwgMTAxLCAKKyAgICAxODEsIDUwLCAzOCwgMjQ1LCAyMjUsIDI1MCwgOTUsIDM4LCAyNDUsIDIyNSwgMjE5LCAxODUsIDM4LCAyNDUsIDIyNSwgCisgICAgMjQ4LCA2NSwgMzgsIDI0NSwgMjI1LCAyNTAsIDk2LCAyNTIsIDIyNCwgMzgsIDQzLCA0NywgODAsIDUwLCAzOCwgMjQ1LCAKKyAgICAyMjUsIDIyMiwgMTMwLCAzOCwgMjQ1LCAyMjUsIDIzNCwgMjUzLCAzOCwgMjQ1LCAyMjUsIDIxNSwgMTMyLCAyMjUsIDE3NywgCisgICAgMjE2LCAxOTYsIDM4LCAyMjMsIDIzNywgMjE5LCAyNTEsIDIyNywgMjYsIDM4LCA1MiwgNjYsIDIxOSwgNTksIDIyNywgMjYsIAorICAgIDM4LCAyNTQsIDEzNiwgODgsIDM4LCAyMTYsIDE4MiwgMjE1LCAxNTgsIDM4LCAyMTMsIDIzNSwgMjUxLCAxOTMsIDUwLCAzOCwgCisgICAgMTM1LCA4MCwgMjI3LCAyNiwgMzgsIDE4NywgNTIsIDIxOSwgMjUxLCAyMjcsIDI2LCAzOCwgOTYsIDI0MiwgMTAyLCAyLCAKKyAgICAyNTIsIDE4NSwgMjQ2LCAxNzgsIDM4LCAxMzUsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMjQ2LCAxNzgsIDM4LCA0MywgODAsIAorICAgIDU1LCAzOCwgNDcsIDgwLCA1NSwgMzgsIDI1NCwgNCwgNTAsIDI1NSwgNDMsIDIyNywgMTM0LCAyNTUsIDI4LCAyMTcsIDEwLCAKKyAgICAyMTcsIDE2MiwgMjE5LCAzMywgMTkwLCA2LCAyNTEsIDEyMSwgMjQ4LCAxNDMsIDI1MCwgMjM1LCAyNTAsIDIzMiwgMjMzLCAKKyAgICA4NCwgODgsIDI1MSwgNDAsIDIyNywgMTM0LCAyNTEsIDgxLCAyMTUsIDE2NSwgMjQ1LCAxMzYsIDI0OSwgMjUzLCAyMjIsIAorICAgIDEyNywgMjQ4LCAxNDMsIDI0NSwgMTIsIDExNSwgNCwgMjQ0LCA0MSwgMTE1LCA2LCAyNDIsIDE2MiwgMjUyLCAxMSwgNiwgCisgICAgMjQyLCAxNjIsIDE5MCwgNiwgMjQyLCAxNjIsIDIyNSwgMjA1LCAyNDksIDI1MywgMjI1LCAyMDUsIDI0OSwgMjU0LCAxMTMsIAorICAgIDExOSwgMjI2LCAyMCwgMTE1LCA2LCA3NSwgMjUyLCAxMSwgNiwgNzUsIDExNSwgNiwgMTU1LCAxMTUsIDQsIDE1NSwgMjM0LCAKKyAgICAxMywgNTcsIDI1MiwgMTg3LCA4OCwgMTkwLCA2LCAyMDYsIDIyOCwgOTUsIDUzLCAyMTksIDIzNywgMjI0LCA0NiwgMjQ5LCAKKyAgICAyMjQsIDExNSwgNiwgMjI3LCAxMSwgMTkwLCA2LCAyMjcsIDExLCAxOTAsIDYsIDIyNSwgMTksIDExNSwgNiwgMTUyLCAyNTIsIAorICAgIDExLCA2LCAxNTIsIDE5MCwgNiwgMTUyLCAyMjUsIDExMiwgMjE4LCAzNCwgMjIzLCAyNDgsIDIyMSwgNzYsIDc5LCAyMTcsIAorICAgIDIyMywgNTMsIDIxNiwgMjIzLCAxNTYsIDUzLCAyMTQsIDIyMiwgMTkwLCA2LCAyMTIsIDE1MiwgMjI3LCAzOSwgNTMsIDIyNywgCisgICAgMTI0LCA1MywgMjM2LCA1MiwgMjI3LCAxMjQsIDUzLCAyNTIsIDExLCA2LCAyMTIsIDE1MiwgMjE2LCA2NiwgMjUsIDQsIDEsIAorICAgIDIzNiwgNDQsIDIzNSwgMzUsIDUzLCAyNTQsIDE0MywgNTMsIDExNSwgNiwgMjUzLCAyMDEsIDI1MiwgMTEsIDYsIDI1MSwgCisgICAgMTIxLCAyNDUsIDE1NCwgODgsIDExNSwgNCwgNzcsIDExNSwgNiwgNzcsIDExNSwgNiwgMjQ1LCA5NSwgMjE2LCA2NiwgNiwgCisgICAgMjQ1LCA5NSwgMTE1LCA2LCAxODQsIDExNSwgNCwgNzgsIDEwOCwgODgsIDI1MiwgNzYsIDg4LCAyNDMsIDQyLCA4OCwgMjQ5LCAKKyAgICAxLCA4OCwgMjM2LCA5MCwgMjE5LCAyMzUsIDIyMywgMTIzLCA2LCAyMjUsIDE5LCAyNDUsIDE1LCA1MywgMTkwLCA0LCAyMjYsIAorICAgIDIwLCAxOTAsIDQsIDI0MywgMjAzLCAxOTAsIDYsIDI0MywgMjAzLCAxOTAsIDYsIDIyNiwgMjAsIDE5MCwgMjMwLCAxNjYsIAorICAgIDIxOCwgMjU1LCAyMTYsIDY2LCAzNSwgNiwgMjQ0LCA0MSwgMjE2LCA2NiwgMzUsIDYsIDE1NSwgMjIzLCAyMzYsIDM1LCA2LCAKKyAgICAxNTUsIDIxNiwgNjYsIDM1LCA2LCAyMTMsIDEwOCwgMTkwLCAzMiwgNiwgMjQ5LCAxMjUsIDE5MCwgMzIsIDQsIDI0OSwgCisgICAgMTI1LCAxOTAsIDMyLCA0LCA3NywgMTkwLCAzMiwgNCwgNzUsIDE5MCwgMzIsIDQsIDIzNiwgMywgMjI1LCA5MCwgMjMzLCAKKyAgICA4MywgMjE2LCA2NiwgMjU0LCAxNjIsIDIyNiwgOTQsIDUzLCAyNTQsIDIxNSwgMjE2LCA2NiwgNCwgMjQ1LCA5NSwgMTYsIAorICAgIDMxLCAyMjIsIDE5MSwgMjE5LCAyMzUsIDIxNCwgMTAxLCAyNDQsIDkyLCAxMjQsIDIyMSwgNjIsIDIxNCwgMTAxLCAyNDQsIAorICAgIDkyLCAxMjQsIDIyOSwgODksIDIxNCwgMTAxLCAyNDQsIDkyLCAxMjQsIDIxNywgMjA3LCAyMTQsIDEwMSwgMjQ0LCA5MiwgCisgICAgMTI0LCAyMTcsIDEzNCwgMjE0LCAxMDEsIDI0NCwgOTIsIDExOSwgMjE3LCAxMzIsIDIxNCwgMTAxLCAyNDQsIDkyLCAxMjQsIAorICAgIDI0NCwgMjA2LCAyMTQsIDEwMSwgMjQ0LCA5MiwgMTE5LCAyNDQsIDIwNSwgMjE0LCAxMDEsIDI0NCwgOTIsIDEzNywgMjQ0LCAKKyAgICAyMDUsIDIxNCwgMTAxLCAyNDQsIDkyLCAyNDQsIDEwMSwgMjQ0LCAyMDUsIDIxNCwgMTAxLCAyNDQsIDkyLCAxMjQsIDIyMCwgCisgICAgNjIsIDIxNCwgMTAxLCAyNDQsIDkyLCAyNDQsIDE3MCwgMjIwLCA2MCwgMjE0LCAxMDEsIDI0NCwgOTIsIDEyNCwgMjQ2LCAKKyAgICAxMCwgMjE0LCAxMDEsIDI0NCwgOTIsIDEzNywgMjQ2LCA4LCAyMTQsIDEwMSwgMjQ0LCA5MiwgMjQ0LCAxNzAsIDI0NiwgOCwgCisgICAgMjE0LCAxMDEsIDI0NCwgOTIsIDIyMSwgNjYsIDI0NiwgOCwgMjQ0LCA5MiwgMjI4LCA5NiwgMTE4LCAyMjMsIDEzNCwgMjI4LCAKKyAgICA5NywgMTE4LCAyMjMsIDEzNCwgMjI4LCA5NywgMTEyLCAyMjMsIDEzNCwgMjI4LCA5NywgMTcwLCAyMjMsIDEzNCwgMjI4LCAKKyAgICA5NywgMTY3LCAyMjMsIDEzNCwgMjI4LCA5NywgMTg1LCAyMjMsIDEzNCwgMjI4LCA5NywgMTkyLCAyMjMsIDEzNCwgMjI4LCAKKyAgICA5NywgMjAwLCAyMjMsIDEzNCwgMjI4LCA5NywgMTk4LCAyMjMsIDEzNCwgMjI4LCA5NywgMjAzLCAyMjMsIDEzNCwgMjI4LCAKKyAgICA5NywgMjE3LCAyMTMsIDIyMywgMTM0LCAyMjgsIDk3LCAyNDUsIDI0NSwgMjIzLCAxMzQsIDIyOCwgOTcsIDIxNiwgNDgsIAorICAgIDIyMywgMTM0LCAyMjgsIDk3LCAyNDQsIDIwMywgMjIzLCAxMzQsIDIyOCwgOTcsIDEyNCwgMjQxLCA2MiwgMjIzLCAxMzQsIAorICAgIDIyOCwgOTcsIDI0NCwgMTcwLCAyNDEsIDYyLCAyMjMsIDEzNCwgMjI4LCA5NywgMTI0LCAyMTcsIDExMywgNCwgMjIzLCAKKyAgICAxMzQsIDIyOCwgOTcsIDExOCwgNCwgMjIzLCAxMzQsIDIyOCwgOTcsIDExMiwgNCwgMjIzLCAxMzQsIDIyOCwgOTcsIDE3MCwgCisgICAgNCwgMjIzLCAxMzQsIDIyOCwgOTcsIDE2NywgNCwgMjIzLCAxMzQsIDIyOCwgOTcsIDE4NSwgNCwgMjIzLCAxMzQsIDIyOCwgCisgICAgOTcsIDE5MiwgNCwgMjIzLCAxMzQsIDIyOCwgOTcsIDIwMCwgNCwgMjIzLCAxMzQsIDIyOCwgOTcsIDE5OCwgNCwgMjIzLCAKKyAgICAxMzQsIDIyOCwgOTcsIDIwMywgNCwgMjIzLCAxMzQsIDIyOCwgOTcsIDIxNywgMjEzLCA0LCAyMjMsIDEzNCwgMjI4LCA5NywgCisgICAgMjQ1LCAyNDUsIDQsIDIyMywgMTM0LCAyMjgsIDk3LCAyMTYsIDQ4LCA0LCAyMjMsIDEzNCwgMjI4LCA5NywgMjQ0LCAyMDMsIAorICAgIDQsIDIyMywgMTM0LCAyMjgsIDk3LCAxMjQsIDI0MSwgNjIsIDQsIDIyMywgMTM0LCAyMjgsIDk3LCAyNDQsIDE3MCwgMjQxLCAKKyAgICA2MiwgNCwgMjIzLCAxMzQsIDIyOCwgOTcsIDEyNCwgMjE3LCAxMTMsIDIyMywgMTM0LCAyMjgsIDk3LCAxMjQsIDIxNywgCisgICAgMTE0LCAyNTEsIDEyMiwgMjQ5LCAxMjUsIDIyMywgMTM0LCAyMjgsIDk3LCAyNDQsIDE3MCwgMjE3LCAxMTMsIDIyMywgMTM0LCAKKyAgICAyMjgsIDk3LCAyMTcsIDIxNCwgMjE3LCAxMTMsIDIyMywgMTM0LCAyMjgsIDk3LCAyMjMsIDIzNiwgMTI0LCAyNDEsIDYyLCAKKyAgICA3LCA0LCAxLCAyMjMsIDIzNiwgMjUxLCAxMjEsIDIyMywgMTM0LCAyMjgsIDk3LCAyMjAsIDcyLCAyMzMsIDIwMCwgMTcsIAorICAgIDIyMywgMTM0LCAyMjgsIDk3LCAyNDQsIDIwNCwgMjQ2LCA0NywgMTcsIDIyMywgMTM0LCAyMjgsIDk3LCAyNDQsIDIwNCwgCisgICAgMjE3LCAxMTMsIDIyMywgMTM0LCAyMjgsIDk3LCAxMjQsIDI0MSwgNjMsIDIxNywgMTEzLCAyMTQsIDEwMSwgMjQ0LCA5MiwgCisgICAgMjEyLCA4MCwgMjE3LCAxMzIsIDEzNSwgNzEsIDIxNSwgMTMwLCA3MSwgOTYsIDcxLCAyNDYsIDE3OSwgNzEsIDQzLCA0NywgCisgICAgNzEsIDExNiwgMTIxLCA3MSwgMjI4LCAyMTAsIDIxMywgMjUzLCA3MSwgMjI4LCAyMTAsIDI0NiwgNDEsIDcxLCAyMTksIAorICAgIDIzNCwgMjQ2LCA0MSwgNzEsIDIxOSwgMjM0LCAyMTMsIDI1MywgNzEsIDEzNSwgODAsIDIsIDkxLCA5NiwgODAsIDIsIDkxLCAKKyAgICAxMzUsIDIxNCwgMjMsIDcxLCA5NiwgMjE0LCAyMywgNzEsIDEzNSwgMTE5LCAyNDIsIDgxLCA3MSwgMjE1LCAxMzAsIDExOSwgCisgICAgMjQyLCA4MSwgNzEsIDk2LCAxMTksIDI0MiwgODEsIDcxLCAyNDYsIDE3OSwgMTE5LCAyNDIsIDgxLCA3MSwgMTM1LCA4MCwgCisgICAgMiwgMjE4LCA0MCwgOTYsIDgwLCAyLCAyMTgsIDQwLCAxMzUsIDgwLCAyNDQsIDc3LCAxMzQsIDIxNSwgMTMwLCA4MCwgMjQ0LCAKKyAgICA3NywgMTM0LCA5NiwgODAsIDI0NCwgNzcsIDEzNCwgMjQ2LCAxNzksIDgwLCAyNDQsIDc3LCAxMzQsIDExNiwgMTIxLCA4MCwgCisgICAgMiwgMjUyLCAxNzMsIDEzNSwgODAsIDIsIDEwMiwgOTYsIDgwLCAyLCAxMDIsIDEzNSwgODAsIDIsIDIzMiwgMjUxLCA5NiwgCisgICAgODAsIDIsIDIzMiwgMjUxLCA0MywgNDcsIDIxNCwgMjMsIDcxLCA0MywgNDcsIDgwLCAyLCA5MSwgMjQ2LCAxNzksIDIxMiwgCisgICAgMjgsIDcxLCAyMTUsIDEzMCwgODAsIDIsIDIxNywgNDQsIDIzMywgMTU5LCAyMTUsIDEzMCwgODAsIDIsIDIxNywgNDQsIAorICAgIDIyMywgMTcyLCAyNDYsIDE3OSwgODAsIDIsIDIxNywgNDQsIDIzMywgMTU5LCAyNDYsIDE3OSwgODAsIDIsIDIxNywgNDQsIAorICAgIDIyMywgMTcyLCA5NiwgODAsIDIsIDI0OSwgMjIzLCAyNDYsIDE3OCwgMjQ2LCAxNzksIDgwLCAyLCAyNDksIDIyMywgMjMzLCAKKyAgICAxNTksIDI1NCwgMTI2LCAyMTYsIDI0MCwgMjIxLCA5NiwgNzEsIDI1MCwgNjIsIDIxNiwgMjQwLCAyMjEsIDk2LCA3MSwgCisgICAgMjI4LCAyMTAsIDIxMywgMjUzLCA4MCwgMjE3LCAxMCwgMTg3LCAxMzQsIDEzNSwgODAsIDIxNywgMTAsIDI1MiwgMTg3LCAKKyAgICAxMTMsIDk2LCA4MCwgMjE3LCAxMCwgMTM0LCAyNTQsIDEyNiwgMjEwLCAyNTAsIDk2LCA3MSwgMjUwLCA2MiwgMjEwLCAyNTAsIAorICAgIDk2LCA3MSwgMTM1LCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDIxNSwgMTI5LCAxMzUsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgCisgICAgMjQ2LCAxNzgsIDIxNSwgMTMwLCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDIyMywgMTcyLCAyMTUsIDEzMCwgMjQyLCAxMDIsIAorICAgIDIsIDI1MiwgMTg1LCAyMzMsIDE1OSwgOTYsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMjE1LCAxMjksIDk2LCAyNDIsIDEwMiwgCisgICAgMiwgMjUyLCAxODUsIDI0NiwgMTc4LCAyNDYsIDE3OSwgMjQyLCAxMDIsIDIsIDI1MiwgMTg1LCAyMjMsIDE3MiwgMjQ2LCAKKyAgICAxNzksIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMjMzLCAxNTksIDk2LCA4MCwgMTEzLCAxMzUsIDcxLCAyMTUsIDEzMCwgODAsIAorICAgIDEzNSwgNjgsIDI0NiwgMTc5LCA3MSwgMTM1LCA4MCwgMTEzLCA5NiwgNzEsIDEzNSwgMjI2LCAyMzQsIDI1NCwgMzMsIDIxNSwgCisgICAgMTMwLCAyMjYsIDIzNCwgMjU0LCAzMywgOTYsIDIyNiwgMjM0LCAyNTQsIDMzLCAyNDYsIDE3OSwgMjI2LCAyMzQsIDI1NCwgCisgICAgMzMsIDEzNSwgMjQyLCAxMDIsIDExMywgOTYsIDI0MiwgMTAxLCA5NiwgMjQyLCAxMDIsIDExMywgMTM1LCAyNDIsIDEwMSwgCisgICAgMTM1LCA1MiwgODAsIDIsIDkxLCA0MywgNDcsIDUyLCA4MCwgMiwgOTEsIDk2LCA1MiwgODAsIDIsIDkxLCAxMzUsIDUyLCAKKyAgICA3MSwgMjE1LCAxMzAsIDUyLCA3MSwgOTYsIDUyLCA3MSwgMjQ2LCAxNzksIDUyLCA3MSwgNDMsIDQ3LCA1MiwgNzEsIDExNiwgCisgICAgMTIxLCA1MiwgNzEsIDIyOCwgMjEwLCAyMTMsIDI1MywgNTIsIDcxLCAyMjgsIDIxMCwgMjQ2LCA0MSwgNTIsIDcxLCAyMTksIAorICAgIDIzNCwgMjQ2LCA0MSwgNTIsIDcxLCAyMTksIDIzNCwgMjEzLCAyNTMsIDUyLCA3MSwgMTM1LCAyMTYsIDE4MiwgNzEsIDk2LCAKKyAgICAyMTYsIDE4MiwgNzEsIDEzNSwgMjE5LCAxODEsIDcxLCA5NiwgMjE5LCAxODEsIDcxLCAyMTUsIDEzMCwgODAsIDIsIDUyLCAKKyAgICA5MSwgMjQ2LCAxNzksIDgwLCAyLCA1MiwgOTEsIDEzNSwgMjQ4LCAyMjIsIDcxLCAyMTUsIDEzMCwgMjQ4LCAyMjIsIDcxLCAKKyAgICA5NiwgMjQ4LCAyMjIsIDcxLCAyNDYsIDE3OSwgMjQ4LCAyMjIsIDcxLCAxMzUsIDgwLCAyMTcsIDEwLCAxMzQsIDk2LCA4MCwgCisgICAgMjE3LCAxMCwgMTM0LCAxMzUsIDY5LCA3MSwgMjE1LCAxMzAsIDY5LCA3MSwgOTYsIDY5LCA3MSwgMjQ2LCAxNzksIDY5LCAKKyAgICA3MSwgMjE1LCAxMzAsIDY5LCA4MCwgMjQ0LCA3NywgMTM0LCAyMTUsIDEzMCwgNjksIDgwLCAyMjcsIDEwMCwgMjI2LCAxMjUsIAorICAgIDIxNSwgMTMwLCA2OSwgODAsIDIyNywgMTAwLCAyMjYsIDEyNiwgMiwgMjAxLCAxMzQsIDIxNSwgMTMwLCA2OSwgODAsIDIyNywgCisgICAgMTAwLCAyMjYsIDEyNiwgMiwgNjYsIDEzNCwgMjE1LCAxMzAsIDY5LCA1MiwgNzEsIDIxNSwgMTMwLCA2OSwgNTIsIDgwLCAKKyAgICAyMjcsIDEwMCwgMjI2LCAxMjUsIDk2LCA2OSwgODAsIDI0NCwgNzcsIDIxNCwgNDMsIDIyOCwgMjEwLCAyMTMsIDI1MywgODAsIAorICAgIDIxNywgMTAsIDI0OSwgMjIyLCAyMTksIDIzNCwgMjQ2LCA0MSwgODAsIDIxNywgMTAsIDI0OSwgMjIyLCAxMTYsIDEyMSwgCisgICAgNjksIDcxLCA0NywgODAsIDIsIDQsIDI1MCwgOTUsIDI0NiwgMTc5LCA4MCwgMTM1LCA2OCwgMjE1LCAxMzAsIDcxLCAxMzcsIAorICAgIDk2LCAyNTQsIDMzLCAxMzUsIDgwLCAyLCA2NiwgOTEsIDk2LCA4MCwgMiwgNjYsIDkxLCA0MywgNDcsIDgwLCAyLCA2NiwgCisgICAgOTEsIDEzNSwgODAsIDIsIDUyLCA2NiwgOTEsIDk2LCA4MCwgMiwgNTIsIDY2LCA5MSwgNDMsIDQ3LCA4MCwgMiwgNTIsIDY2LCAKKyAgICA5MSwgMTM1LCAyMjcsIDc2LCA3MSwgOTYsIDIyNywgNzYsIDcxLCA0MywgNDcsIDIyNywgNzYsIDcxLCAzMSwgMjU0LCAxOTAsIAorICAgIDI1MCwgMTksIDIyNiwgMTYyLCAyNDgsIDUwLCAyMTcsIDE1MywgMjQ1LCAxMTUsIDIxNywgMTUzLCAyNDcsIDIxMywgMjI4LCAKKyAgICAyMDYsIDI0NSwgMTE2LCAyNDUsIDIzMSwgMjIxLCA3MSwgMjM2LCAxMDIsIDIzMCwgMTA4LCAyNDUsIDI0OCwgMjI3LCAxMzQsIAorICAgIDIyOCwgMjA2LCAyNTQsIDE2MCwgMjQ1LCAyNDgsIDIyNywgMTM0LCA0LCAyNDUsIDI0OCwgMjI3LCAxMzQsIDI0OSwgMjQ4LCAKKyAgICAyNTQsIDI0LCAyMzEsIDE5NiwgMjQ3LCAyMTMsIDIyOCwgMjA2LCAyNDksIDI1MCwgMjU0LCAyNCwgMjMxLCAxOTYsIDQsIAorICAgIDI0OSwgMjQ4LCAyNTQsIDI0LCAyMzEsIDE5NiwgMjQ1LCAyMjIsIDY4LCAyMjUsIDkyLCAyMzAsIDE2NiwgMjI1LCA5OSwgCisgICAgMjMwLCAxNjYsIDI0OSwgMjI3LCAyMzAsIDE2NiwgMjE4LCAyNTUsIDIzMSwgNjUsIDUzLCAyMzEsIDYzLCA1MywgNjIsIAorICAgIDIyNSwgMTkyLCAyNDcsIDI0MiwgMjIwLCA0MiwgMjIxLCA3MiwgMjMxLCA2NCwgMjU0LCA0LCAyMjcsIDcxLCAyMjMsIDE2NSwgCisgICAgMjI3LCA3MSwgMjUxLCAxNjgsIDIyNywgNzEsIDQyLCAyMjMsIDEyOSwgMjQ5LCAxNzMsIDIyMywgMTI5LCAyNDQsIDk0LCAKKyAgICAyMjMsIDEyOSwgMjI1LCA4OCwgMTA5LCAyMzYsIDkyLCA0NywgMjU0LCAxNDUsIDI1NCwgMTQ1LCAyMzEsIDIyMywgMjU0LCAKKyAgICAxNDUsIDIxOSwgMjA2LCAyNTQsIDE0NSwgMjQ3LCAyNDQsIDI0NywgMjEzLCAyMjgsIDIwNiwgMjQ3LCAyNDcsIDIyNiwgCisgICAgMTczLCAxMDksIDIyOCwgMjA2LCAyMjYsIDE3MywgMTA5LCAyMzMsIDE3LCAyNTQsIDE1NCwgMjMzLCAxNywgMjI3LCA2MiwgCisgICAgMjM2LCA1NiwgMjE1LCAxNTIsIDIzNiwgNjksIDUyLCAyMzYsIDY5LCAyMTYsIDE4MiwgMjM2LCA2OSwgMjQ5LCAyNDQsIAorICAgIDIzNiwgNjksIDIxOCwgMjI3LCAyMzYsIDY5LCAyMTQsIDExNCwgMjM2LCA2OSwgMjUwLCA2MiwgMjM2LCA2OSwgMjUwLCA2MiwgCisgICAgMjQ5LCAyNDQsIDIzNiwgNjksIDI1NCwgMTI2LCAyNDksIDI0NCwgMjM2LCA2OSwgMjE3LCAxNTIsIDI1MiwgMTEzLCAyMjQsIAorICAgIDY0LCAyMjUsIDg5LCA2MiwgMjMxLCA2NCwgMjQ1LCAxMjEsIDI0MywgMTQyLCAyMjUsIDg5LCAyNDEsIDE2MiwgMjE3LCA1NiwgCisgICAgMjI3LCA3MSwgMjIzLCAyMzYsIDE3NywgMjM2LCA1MiwgMjMzLCAxODcsIDE5NiwgMjIwLCAxMDIsIDIxNCwgMjIsIDIxMywgCisgICAgMTkxLCAyMjUsIDk5LCAyMjgsIDIwNiwgMTc3LCAyMzEsIDY1LCAxNzcsIDI1MywgMjUzLCAxMjYsIDEwOSwgMjI4LCAyMDYsIAorICAgIDI1MywgMjUzLCAxMjYsIDEwOSwgMjU0LCA4OSwgMTI2LCAxMDksIDI1NCwgODksIDI1MSwgMTQyLCAyMjgsIDIwNiwgMjU1LCAKKyAgICAzNywgMTI2LCAxMDksIDIyOSwgMjQ4LCAyNTQsIDg5LCAyMjgsIDIxMywgMjU1LCAzNywgMTI2LCAxMDksIDI1NCwgMTg0LCAKKyAgICAxMjYsIDEwOSwgMjI4LCAyMDYsIDI1NCwgMTg0LCAxMjYsIDEwOSwgMjU0LCAxODQsIDEyNiwgMTcxLCAxMjYsIDEwOSwgCisgICAgMjE2LCAxODIsIDE3NywgMjU0LCAxOTEsIDEyNiwgMTA5LCAyNDUsIDE3OCwgMTA5LCAyNDMsIDE0MSwgMjQ1LCAxNzgsIAorICAgIDEwOSwgMjQ4LCA1MSwgMjUyLCA3MCwgMjU0LCA5MSwgMjE3LCAxNjIsIDIzMywgOTEsIDI0MywgMTQxLCAxMjYsIDEwOSwgCisgICAgMjU0LCA4OSwgMTI2LCAyMTcsIDEwLCAxNzEsIDIxNywgMTYyLCAyMzYsIDEyNywgMjI3LCAxMzQsIDIzNiwgMTI3LCA2OCwgCisgICAgMTcxLCAyNTQsIDg5LCAxMjYsIDEwOSwgMjUwLCAzMSwgMjQ1LCAxODEsIDI0NSwgMTgyLCAyNTAsIDMwLCAyMjMsIDE2NSwgCisgICAgMjM2LCAxMTMsIDEyNiwgMTA5LCAyMjMsIDE2NSwgMTI2LCAxMDksIDI0OSwgMjE2LCAxMDksIDI0NSwgMTUzLCAyNDUsIAorICAgIDE4MCwgMTA5LCAyMTksIDExMCwgMjQ1LCAxODEsIDI0OCwgMTI3LCAxMjYsIDEwOSwgMTI2LCAyMTcsIDEwLCAyNTEsIDEzMiwgCisgICAgMjQ4LCAxNDQsIDIzMSwgMjIzLCAyNTEsIDEzMSwgMjI0LCAxOTEsIDEyNiwgMTA5LCAyMjgsIDIwNiwgMTI2LCAxMDksIAorICAgIDI0MCwgMjE0LCAxMDksIDIyOCwgMjA2LCAyNDAsIDIxNCwgMTA5LCAyMTksIDYzLCAyNDUsIDE3OCwgMTA5LCAyMzMsIDEzNywgCisgICAgMTcxLCAxMjYsIDEwOSwgMjQyLCAyMjgsIDE3MSwgMTI2LCAxMDksIDIzMywgMTM3LCAxMTMsIDEyNiwgMTA5LCAyNDIsIAorICAgIDIyOCwgMTEzLCAxMjYsIDEwOSwgMjMzLCAxMzcsIDI1MSwgMTQyLCAyMjgsIDIwNiwgMTI2LCAxMDksIDI0MiwgMjI4LCAKKyAgICAyNTEsIDE0MiwgMjI4LCAyMDYsIDEyNiwgMTA5LCAyMzAsIDIzNywgMjMzLCAxMzYsIDIzMCwgMjM3LCAyNDIsIDIyNywgCisgICAgMjUyLCA3MCwgMjI4LCAyMDYsIDI0NSwgMTc4LCAxMDksIDIyOCwgMjA2LCAyMzMsIDEzNiwgMjI4LCAyMDYsIDI0MiwgMjI3LCAKKyAgICAyMjksIDI0OCwgMjMzLCAxMzcsIDIyOCwgMjEzLCAxMjYsIDEwOSwgMjI5LCAyNDgsIDI0MiwgMjI4LCAyMjgsIDIxMywgCisgICAgMTI2LCAxMDksIDIzMywgMTM3LCAxNzEsIDI0NSwgMTc4LCAxMDksIDI0MiwgMjI4LCAxNzEsIDI0NSwgMTc4LCAxMDksIAorICAgIDIyOSwgMjQ4LCAyMzMsIDEzNywgMjI4LCAyMTMsIDI0NSwgMTc4LCAxMDksIDIyOSwgMjQ4LCAyNDIsIDIyOCwgMjI4LCAKKyAgICAyMTMsIDI0NSwgMTc4LCAxMDksIDIzMywgMTM3LCAxNzEsIDI0MiwgMjI3LCAyNDIsIDIyOCwgMTcxLCAyMzMsIDEzNiwgCisgICAgMjI5LCAyNDgsIDIzMywgMTM3LCAyMjgsIDIxMywgMjQyLCAyMjcsIDIyOSwgMjQ4LCAyNDIsIDIyOCwgMjI4LCAyMTMsIAorICAgIDIzMywgMTM2LCAyMjUsIDExOCwgMjE5LCAxNCwgMjI1LCAxMTksIDE3MSwgMTI2LCAxMDksIDIxOSwgMTUsIDE3MSwgMTI2LCAKKyAgICAxMDksIDIyNSwgMTE5LCAxNzEsIDI0NSwgMTc4LCAxMDksIDIxOSwgMTUsIDE3MSwgMjQ1LCAxNzgsIDEwOSwgMjQ3LCAyMTMsIAorICAgIDIyOCwgMjA2LCAyMjUsIDEyMSwgMjQ3LCAyMTMsIDIyOCwgMjA2LCAyMTksIDE2LCAyMTksIDIzLCAyMjcsIDEzNCwgMjE4LCAKKyAgICAyMzYsIDIyNywgMTM0LCAyMjgsIDIwNiwgMTExLCAyMTksIDIzLCAyMjcsIDEzNCwgMjI4LCAyMDYsIDExMSwgMjE4LCAyMzYsIAorICAgIDIyNywgMTM0LCAyMTksIDIzLCA2OCwgMTcxLCAxMjYsIDEwOSwgMjE4LCAyMzYsIDY4LCAxNzEsIDEyNiwgMTA5LCAyMjksIAorICAgIDI0OCwgMTExLCAyMTksIDIzLCA2OCwgMjI4LCAyMTMsIDEyNiwgMTA5LCAyMjksIDI0OCwgMTExLCAyMTgsIDIzNiwgNjgsIAorICAgIDIyOCwgMjEzLCAxMjYsIDEwOSwgMjE5LCAyMywgNjgsIDIsIDIyOCwgMjA2LCAxMjYsIDEwOSwgMjE4LCAyMzYsIDY4LCAyLCAKKyAgICAyMjgsIDIwNiwgMTI2LCAxMDksIDIzMCwgMjIxLCAyMzAsIDIyMiwgMjMwLCAyMjMsIDIzMCwgMjIyLCAyMTUsIDE1MiwgNDIsIAorICAgIDIzNiwgMTI3LCAyMjcsIDEzNCwgNDIsIDIyNywgNTUsIDIyNywgMTM0LCA0MiwgMjM2LCAxMjcsIDY4LCAxNzEsIDEyNiwgCisgICAgMTA5LCA0MiwgMjI3LCA1NSwgNjgsIDE3MSwgMTI2LCAxMDksIDQyLCAyNTEsIDUxLCA0MiwgMjQ5LCAxNjYsIDM3LCAyMjUsIAorICAgIDE5MiwgMzcsIDIzMSwgNjQsIDM3LCAyMTcsIDUyLCAzNywgMjQ3LCAyNDIsIDIyMCwgNDIsIDM3LCA2MiwgMjI3LCA3MSwgCisgICAgMzcsIDIyMywgMTY1LCAyMjcsIDcxLCAzNywgMjU0LCA0LCAyMjcsIDcxLCAzNywgMjQ1LCAxODEsIDM3LCAyNDgsIDIyMywgCisgICAgOTIsIDIyNSwgMTkyLCA5MiwgMjMxLCA2NCwgOTIsIDIxNywgNTIsIDkyLCA2MiwgMjI3LCA3MSwgNDcsIDIxOCwgNTAsIDQzLCAKKyAgICAyMTgsIDUwLCAxMjEsIDIxOCwgNTAsIDExNiwgMjE4LCA1MCwgMjU0LCA3LCAyMzEsIDQwLCAyMTYsIDE2MiwgMjQ0LCAxMTQsIAorICAgIDIxNiwgMTgyLCA2NiwgMjUyLCAxODcsIDQ3LCAyMTYsIDY1LCA1MiwgNjYsIDI1MiwgMTg3LCA1MiwgNDcsIDIxNiwgNjUsIAorICAgIDI0NywgMjEzLCAyMjgsIDIwNiwgMjI1LCA4NCwgMjI4LCAyMDYsIDIxNiwgMTYyLCAyNDcsIDIxMywgMjI4LCAyMDYsIDI0NCwgCisgICAgMTE1LCAyMjksIDI1MCwgNTIsIDY2LCAyNTIsIDE4NywgNTIsIDQ3LCAyMTYsIDY1LCAyMjUsIDExOSwgMjE1LCAxNjAsIAorICAgIDIyNCwgMTksIDIxOSwgMTUsIDIxNSwgMTYwLCAyMjQsIDE5LCAyMjgsIDIxMSwgMjE5LCAzNiwgMjI3LCAxMzQsIDI0OSwgCisgICAgMjQ4LCAyNTQsIDI0LCAyMjgsIDIxMSwgMjE5LCAzNSwgMjI4LCAyMTEsIDIxOSwgMzYsIDY4LCAxNzEsIDEyNiwgMTA5LCAKKyAgICAyNDksIDI0OCwgMjU0LCAyNCwgMjI4LCAyMTEsIDIxOSwgMzYsIDE3MSwgMTI2LCAxMDksIDIyNywgNTUsIDIyNywgMTM0LCAKKyAgICAyMzYsIDEyNywgMjI3LCAxMzQsIDIzMCwgMjI3LCAyNDIsIDQ4LCAyNTAsIDIsIDIzMiwgMTUsIDIzNiwgNjYsIDIxMywgCisgICAgMTM2LCAyMzAsIDkwLCAyMjgsIDIxMiwgNDcsIDI1NCwgMTQ2LCAyLCAyNTQsIDY2LCA0NywgMjE2LCAxOTYsIDIzMCwgMTY2LCAKKyAgICAyMzMsIDE3LCAyNTQsIDE1NCwgMjMwLCAxNjYsIDIzMywgMTcsIDIyNywgNjIsIDIzMCwgMTY2LCAyMzYsIDU2LCAyMzAsIAorICAgIDE2NiwgMjE1LCAxNTIsIDI0OCwgNjYsIDIyNywgNzEsIDYyLCAyMjcsIDcxLCAyMTksIDExMCwgMjI3LCA3MSwgMjQ3LCAKKyAgICAyNDIsIDIxNywgNTIsIDI1MSwgMjE1LCA0MywgMjI4LCAyMTEsIDI0NSwgMTQsIDIyMSwgOTIsIDIyNSwgOTksIDQ3LCAyMjgsIAorICAgIDIxMSwgMjQ1LCAxNCwgMjIxLCA5MiwgMjI1LCA5OSwgNDMsIDIyMSwgOTIsIDIyNSwgOTksIDQ3LCAyMjEsIDkyLCAyMjUsIAorICAgIDk5LCAyMjMsIDIzNiwgMjE3LCA1NiwgMjQ1LCAxODEsIDI0OSwgMTYzLCAyMzMsIDE3LCAyMjcsIDYyLCAyNDksIDE2MywgCisgICAgMjMzLCAxNywgMjU0LCAxNTQsIDUyLCAyMTksIDIyLCA1MiwgMjE4LCAyMzUsIDUyLCAyMzYsIDU2LCA1MiwgMjE1LCAxNTIsIAorICAgIDIyNSwgMjE1LCAxMjYsIDIyLCAyMjYsIDE3MywgMTA5LCAyMzMsIDEzNywgMiwgMjQ3LCAxOTUsIDI0MiwgMjI4LCAyLCAKKyAgICAyNDcsIDE5NSwgMjE0LCAxNjksIDIzMCwgMjM3LCAyMzMsIDEzNiwgMjE0LCAxNjksIDIzMCwgMjM3LCAyNDIsIDIyNywgCisgICAgMjMzLCAxMzcsIDEyNiwgMjE3LCAxMCwgMTcxLCAyNDIsIDIyNywgMjQyLCAyMjgsIDEyNiwgMjE3LCAxMCwgMTcxLCAyMzMsIAorICAgIDEzNiwgMTI2LCAyMTcsIDEwLCAxNzEsIDIzMywgMTM2LCAxMjYsIDIxNywgMTAsIDE3MSwgMjQyLCAyMjcsIDEyNiwgMjE3LCAKKyAgICAxMCwgMTcxLCAyMjUsIDExOCwgMTI2LCAyMTcsIDEwLCAxNzEsIDIxOSwgMTQsIDI0NywgMjEzLCAyMjgsIDIwNiwgMjI1LCAKKyAgICAxMjIsIDE3MSwgMjQ1LCAxODMsIDI0NywgMjEzLCAyMjgsIDIwNiwgMjE5LCAxNywgMTcxLCAyNDUsIDE4MywgMjI4LCAyMDYsIAorICAgIDQyLCAyMzYsIDEyNywgNjgsIDE3MSwgMTI2LCAxMDksIDIyOCwgMjA2LCA0MiwgMjI3LCA1NSwgNjgsIDE3MSwgMTI2LCAKKyAgICAxMDksIDQyLCAyMzYsIDEyNywgNjgsIDE3MSwgMjI4LCAyMDYsIDEyNiwgMTA5LCA0MiwgMjI3LCA1NSwgNjgsIDE3MSwgCisgICAgMjI4LCAyMDYsIDEyNiwgMTA5LCAyMzMsIDEzNywgMjUxLCAxNDIsIDIyOCwgMjA2LCAyNDUsIDE3OCwgMTA5LCAyNDIsIAorICAgIDIyOCwgMjUxLCAxNDIsIDIyOCwgMjA2LCAyNDUsIDE3OCwgMTA5LCAyMjUsIDExOSwgMjUxLCAxNDIsIDIyOCwgMjA2LCAKKyAgICAyNDUsIDE3OCwgMTA5LCAyMTksIDE1LCAyNTEsIDE0MiwgMjI4LCAyMDYsIDI0NSwgMTc4LCAxMDksIDIyOCwgMjA2LCAyMjgsIAorICAgIDIxMSwgMjE5LCAzNiwgMjI3LCAxMzQsIDI0NywgMjEzLCAyMjgsIDIwNiwgMjQ5LCAyNTAsIDI1NCwgMjQsIDIyOCwgMjExLCAKKyAgICAyMTksIDM1LCAyMjgsIDIwNiwgMjI4LCAyMTEsIDIxOSwgMzYsIDY4LCAxNzEsIDEyNiwgMTA5LCAyNDcsIDIxMywgMjI4LCAKKyAgICAyMDYsIDI0OSwgMjUwLCAyNTQsIDI0LCAyMjgsIDIxMSwgMjE5LCAzNiwgMTcxLCAyNDUsIDE4MywgNjYsIDI0NSwgMjQxLCAKKyAgICAyMzEsIDEwNSwgMjAxLCAyNDUsIDI0MSwgMTE2LCA0NywgMjQ4LCA3MiwgMjQ1LCAyNDEsIDEyMSwgNDcsIDI0OCwgNzIsIAorICAgIDI0NSwgMjQxLCAyNDUsIDI0OCwgNjgsIDIsIDE4NywgMjAxLCA5MSwgMjQ1LCAyNDgsIDY4LCAyLCA2NiwgMjUyLCAxODcsIAorICAgIDI1MywgMjUwLCAyNDUsIDIyMiwgNjgsIDIwMSwgOTEsIDQsIDI0NSwgMjQ4LCA2OCwgMiwgNjYsIDI1MiwgMTg3LCAyNTMsIAorICAgIDI1MCwgMjQ1LCAyMjIsIDY4LCAyMDEsIDkxLCAyNDUsIDI0OCwgNjgsIDIsIDYyLCA1MCwgMjQ1LCAyNDgsIDY4LCAyLCAKKyAgICAyMjcsIDI5LCA0LCAyNDUsIDI0OCwgNjgsIDIsIDIyNywgMjksIDI0NSwgMjQ4LCA2OCwgMiwgMjE1LCAxNTksIDI0NSwgCisgICAgMjQ4LCA2OCwgMiwgMTE5LCAyMDEsIDIxOSwgNDYsIDI0OSwgMjQ4LCAyLCAxODcsIDIwMSwgOTEsIDI0OSwgMjQ4LCAyLCAKKyAgICA2NiwgMjUyLCAxODcsIDI1MywgMjUwLCAyNDUsIDIyMiwgNjgsIDIwMSwgOTEsIDQsIDI0OSwgMjQ4LCAyLCA2NiwgMjUyLCAKKyAgICAxODcsIDI1MywgMjUwLCAyNDUsIDIyMiwgNjgsIDIwMSwgOTEsIDI0OSwgMjQ4LCAyLCAyMjcsIDI5LCA0LCAyNDksIDI0OCwgCisgICAgMiwgMjI3LCAyOSwgMjEyLCAxNTMsIDE3OSwgMjUyLCAyMTgsIDIzMSwgMTk1LCAyNDgsIDY3LCA1MywgMjQ1LCAyNTAsIDcxLCAKKyAgICAyNDEsIDgzLCAxMTYsIDI1NCwgMzUsIDEyMSwgMjU0LCAzNSwgMjI1LCA5NSwgMjI2LCA3NywgMjE0LCAxOSwgMjMzLCA4MywgCisgICAgNDMsIDI1MCwgMjM4LCA0NywgMjUwLCAyMzgsIDQzLCAyNDQsIDE0NiwgNDcsIDI0NCwgMTQ2LCAyNTEsIDIyNiwgNDcsIAorICAgIDI0OSwgMTk1LCAyNTEsIDIyNiwgNDMsIDI0OSwgMTk1LCAyMTYsIDI0MCwgNDcsIDI0OSwgMTk1LCAyMTYsIDI0MCwgNDMsIAorICAgIDI0OSwgMTk1LCAyMjMsIDIzNiwgMjI4LCAyMDYsIDUzLCA0MiwgMjMyLCAyMzMsIDI1NCwgNjYsIDIyMiwgMTA2LCAyMjIsIAorICAgIDExMywgMjE3LCAyMjMsIDIyNCwgNDcsIDIyNSwgMTU3LCAyMzYsIDk2LCAyMTQsIDE1MCwgMjE5LCAxODUsIDIyNSwgMjA5LCAKKyAgICA2OCwgMjM2LCA2NSwgNTMsIDIxNiwgNjYsIDIyOCwgMjA2LCA1MywgMjE0LCAyOSwgMjQxLCA4NSwgMjE2LCAyNDAsIDQzLCAKKyAgICAyNDksIDIyMiwgMjE2LCAyNDAsIDQ3LCAyNDksIDIyMiwgMjUxLCAyMjYsIDQzLCAyNDksIDIyMiwgMjUxLCAyMjYsIDQ3LCAKKyAgICAyNDksIDIyMiwgMjE2LCAyNDAsIDE1NywgMjM2LCA2OSwgMjUxLCAyMjYsIDE1NywgMjM2LCA2OSwgMjQ0LCA3NCwgMjIwLCAKKyAgICAyMiwgMTE2LCAyNTQsIDM2LCAyNTIsIDcxLCAxMTksIDIwMSwgMjUyLCAxNzUsIDIyNywgNjQsIDIzNSwgMCwgMjQ1LCAxNzQsIAorICAgIDIxNywgMTAsIDIxNywgMTYyLCAyMjMsIDE4MiwgMjEzLCAxNzAsIDIzNiwgMTEzLCAxMTEsIDIyNCwgNDQsIDI1MSwgMjE0LCAKKyAgICAyMzQsIDI1NSwgMjMzLCAxNjQsIDI1NCwgMTQ2LCAxMjUsIDIyMywgMTc4LCAyNTQsIDE0NiwgMTI1LCAyNDUsIDE3NCwgCisgICAgMjE3LCAxMCwgMjE3LCAxNjIsIDIzMywgMTY4LCAyNTIsIDgyLCAyMjMsIDE2NCwgMjQ5LCAxMzUsIDI1NCwgMTkxLCAyNTQsIAorICAgIDQzLCAyMTgsIDE0MCwgMjE2LCAyMzAsIDIyMywgNjAsIDI0OCwgMzIsIDIyNywgNTYsIDI1MCwgNCwgMjE4LCAxNiwgMjIwLCAKKyAgICAzMywgMjQ5LCAyMTMsIDI0OSwgMjEyLCAxOTcsIDE5OSwgMTYsIDI0MSwgNCwgMTk3LCAxOTksIDE2LCAyMTksIDE3OSwgCisgICAgMjI0LCAyMDcsIDE5NywgMTk5LCAxNiwgMjI0LCAyMDgsIDI0NSwgMTgzLCAxOTcsIDE5OSwgMTYsIDIyNCwgMjA4LCAyNDcsIAorICAgIDI0NywgMTk3LCAxOTksIDE2LCAyMjQsIDIwOCwgMjQ4LCA2NSwgMTk3LCAxOTksIDE2LCAyMjQsIDIwOCwgMjM1LCAxNzMsIAorICAgIDE5NywgMTk5LCAxNiwgMjI0LCAyMDgsIDI1MCwgOTUsIDE5NywgMTk5LCAxNiwgMjUwLCA5NiwgMjE5LCA4OSwgMTk3LCAKKyAgICAxOTksIDE2LCAyNTAsIDk2LCAyMzUsIDE3MywgMTk3LCAxOTksIDE2LCAyMjAsIDQzLCAxMzQsIDE5NywgMTk5LCAxNiwgCisgICAgMjUyLCAyMjUsIDEzNCwgMTk3LCAxOTksIDE2LCAyMjQsIDIwOCwgMjIwLCA0MiwgMTk3LCAxOTksIDE2LCAyMjQsIDIwOCwgCisgICAgMjUyLCAyMjQsIDE5NywgMTk5LCAxNiwgMjI0LCAyMDgsIDIzMywgMTM2LCAxOTcsIDE5OSwgMTYsIDIyNCwgMjA4LCAyNDIsIAorICAgIDIyNywgMTk3LCAxOTksIDE2LCAxMzUsIDIxNSwgMSwgMTk3LCAxOTksIDE2LCA5NiwgMjE1LCAxLCAxOTcsIDE5OSwgMTYsIAorICAgIDIyNCwgMjA4LCAxMzUsIDcxLCAxOTcsIDE5OSwgMTYsIDIyNCwgMjA4LCA5NiwgNzEsIDE5NywgMTk5LCAxNiwgMjUwLCA5NiwgCisgICAgMjUyLCAyMjQsIDE5NywgMTk5LCAxNiwgMTIxLCAyMTgsIDUxLCAyMTUsIDE1OSwgMTk3LCAxOTksIDE2LCAyNDgsIDEyNywgCisgICAgMjE5LCA4OSwgMTk3LCAxOTksIDE2LCAyMjQsIDIwOCwgMTIxLCAyNTEsIDM4LCAxOTcsIDE5OSwgMTYsIDIyNCwgMjA4LCAKKyAgICAyNDgsIDEyNiwgMTk3LCAxOTksIDE2LCAxMjEsIDIxOCwgNTEsIDIzNSwgMTczLCAxOTcsIDE5OSwgMTYsIDIxNSwgMTMwLCAKKyAgICAyMTUsIDEsIDE5NywgMTk5LCAxNiwgMjI0LCAyMDgsIDIxNSwgMTMwLCA3MSwgMTk3LCAxOTksIDE2LCAxMTYsIDIxOCwgNTEsIAorICAgIDIyNywgMjksIDE5NywgMTk5LCAxNiwgMjQ4LCAxMzgsIDIxOSwgODksIDE5NywgMTk5LCAxNiwgMjI0LCAyMDgsIDExNiwgCisgICAgMjUxLCAzOCwgMTk3LCAxOTksIDE2LCAyMjQsIDIwOCwgMjQ4LCAxMzcsIDE5NywgMTk5LCAxNiwgMTE2LCAyMTgsIDUxLCAKKyAgICAyMzUsIDE3MywgMTk3LCAxOTksIDE2LCAyNDYsIDE3OSwgMjE1LCAxLCAxOTcsIDE5OSwgMTYsIDIyNCwgMjA4LCAyNDYsIAorICAgIDE3OSwgNzEsIDE5NywgMTk5LCAxNiwgMjI0LCAxNzcsIDIxNSwgMTU5LCAxOTcsIDE5OSwgMTYsIDI0OCwgMTI3LCAyMTUsIAorICAgIDE1OSwgMTk3LCAxOTksIDE2LCAyNDgsIDY2LCAyMTUsIDE1OSwgMTk3LCAxOTksIDE2LCAyMzUsIDE3NCwgMjE1LCAxNTksIAorICAgIDE5NywgMTk5LCAxNiwgMjUwLCA5NiwgMjE1LCAxNTksIDE5NywgMTk5LCAxNiwgMTE2LCAyMjAsIDIwNiwgMjM1LCAxNzMsIAorICAgIDE5NywgMTk5LCAxNiwgMjI0LCAxNzcsIDIyNCwgMjA3LCAxOTcsIDE5OSwgMTYsIDI1MCwgOTYsIDIxOSwgMTA5LCAxOTcsIAorICAgIDE5OSwgMTYsIDIyNCwgMjA4LCAyNTAsIDMwLCAxOTcsIDE5OSwgMTYsIDExNiwgMjE4LCA1MSwgMjQ4LCA3NCwgMTk3LCAKKyAgICAxOTksIDE2LCAyNDgsIDEzOCwgMjQ4LCA3NCwgMTk3LCAxOTksIDE2LCAyMTksIDExMCwgMjQ4LCA3NCwgMTk3LCAxOTksIAorICAgIDE2LCAyMzUsIDE3NCwgMjQ4LCA3NCwgMTk3LCAxOTksIDE2LCAyNTAsIDk2LCAyNDgsIDc0LCAxOTcsIDE5OSwgMTYsIDEyMSwgCisgICAgMjIwLCAyMDYsIDIxOSwgODksIDE5NywgMTk5LCAxNiwgNDMsIDIyMCwgMjA2LCAyMTksIDg5LCAxOTcsIDE5OSwgMTYsIAorICAgIDIxNywgNTYsIDI0OCwgNzQsIDE5NywgMTk5LCAxNiwgMjQyLCAyMjgsIDI0OCwgNzQsIDE5NywgMTk5LCAxNiwgMjUwLCAyNCwgCisgICAgMTM0LCAxOTcsIDE5OSwgMTYsIDI0OCwgMTM4LCAxNzcsIDE5NywgMTk5LCAxNiwgMjEyLCAyNywgMTk3LCAxOTksIDE2LCAKKyAgICAyMTksIDkwLCAxNzcsIDE5NywgMTk5LCAxNiwgMjIxLCA5NCwgMjE1LCAxNTksIDE5NywgMTk5LCAxNiwgMjI0LCAyMDgsIAorICAgIDIyOCwgMjA2LCAyNDUsIDE4MywgMTk3LCAxOTksIDE2LCAyMjQsIDIwOCwgMjI0LCAxOTIsIDE5NywgMTk5LCAxNiwgMTIxLCAKKyAgICAyNTEsIDM5LCAxNzcsIDE5NywgMTk5LCAxNiwgMTE2LCAyNTEsIDM5LCAxNzcsIDE5NywgMTk5LCAxNiwgMjM2LCA0NCwgCisgICAgMTk3LCAxOTksIDE2LCAyMjMsIDIyNCwgMTk3LCAxOTksIDE2LCAyMjcsIDEwNCwgMTk3LCAxOTksIDE2LCAyNTQsIDE4MCwgCisgICAgMjE1LCAxNTksIDE5NywgMTk5LCAxNiwgMjQ1LCAxODUsIDIxNSwgMTU5LCAxOTcsIDE5OSwgMTYsIDIzNiwgNDUsIDIxNSwgCisgICAgMTU5LCAxOTcsIDE5OSwgMTYsIDIyNywgMTA1LCAyMTUsIDE1OSwgMTk3LCAxOTksIDE2LCAyNTQsIDE3OSwgMjI4LCAyMDYsIAorICAgIDI1MCwgMTg5LCA3OSwgNDcsIDI1NCwgMTQ2LCAyLCAyNDYsIDE3OSwgMjEyLCAyOCwgNzEsIDIyMCwgMTgwLCAyMTAsIDI1MSwgCisgICAgMjE0LCAyNTIsIDkyLCA4OCwgNjYsIDIzMywgODQsIDIsIDIzMSwgMTA3LCAyNDcsIDE5NSwgMjM2LCA3NCwgODgsIDI0OSwgCisgICAgMjQ1LCAyMTUsIDE1NywgODgsIDI0OCwgNiwgMjE1LCAxNTcsIDg4LCAyNDUsIDIzMywgODgsIDI1MCwgMTUsIDg4LCA2OSwgCisgICAgNDIsIDIsIDI1MCwgMjMyLCA2NiwgMjMzLCA4MywgMjQ1LCAyMTAsIDg4LCAyNTQsIDE3NSwgMjM1LCAxLCA4OCwgMjQyLCAKKyAgICA2MCwgODgsIDM3LCAyMDEsIDI1MiwgMTg3LCAyLCAyMjgsIDIwNCwgMzcsIDIxNiwgMTk3LCAyNDYsIDE4MSwgMjUxLCAxODgsIAorICAgIDI1MCwgOTYsIDIsIDIyOCwgMjA4LCA3MSwgMjE1LCAxNTUsIDg4LCAyMzEsIDIxLCA4OCwgMjQxLCAxNywgODgsIDIyNywgCisgICAgNzcsIDI0MiwgMTYxLCA4OCwgMjI3LCA3NywgMjM0LCAxMSwgODgsIDIyNiwgMTU0LCA4OCwgMjI2LCAxNTMsIDg4LCAyNDgsIAorICAgIDE0LCAyNDksIDE2MSwgMTYsIDI0NCwgMTA5LCAxMTIsIDIxOSwgMjUzLCA4OCwgMTk3LCAxOTksIDE2LCAyMjQsIDIwNywgCisgICAgMjQ4LCAxNTUsIDIyMSwgODEsIDIzNSwgMSwgODgsIDIyNSwgMTA5LCAyMjYsIDIzOCwgMjI5LCAyMzEsIDIyNiwgMjM4LCAKKyAgICAyMjUsIDEwNSwgMjIyLCAxMzEsIDg4LCAyNTAsIDc3LCAyMjIsIDEzMSwgODgsIDQzLCAyMjYsIDE2OSwgMjE1LCAxMzcsIAorICAgIDEwMiwgNDMsIDIyNiwgMTY5LCAyNDUsIDExMCwgNDMsIDIyNiwgMTY5LCAyMzIsIDIzNywgMTAyLCA0NywgMjI2LCAxNjksIAorICAgIDIxNSwgMTM3LCAxMDIsIDQ3LCAyMjYsIDE2OSwgMjQ1LCAxMTAsIDQ3LCAyMjYsIDE2OSwgMjMyLCAyMzcsIDEwMiwgNDMsIAorICAgIDQyLCAyNTEsIDIxMCwgMjE1LCAxMzcsIDI0OSwgMjIyLCA0MywgNDIsIDI1MSwgMjEwLCAyNDUsIDExMCwgNDMsIDQyLCAKKyAgICAyNTEsIDIxMCwgMjMyLCAyMzcsIDI0OSwgMjIyLCA0NywgNDIsIDI1MSwgMjEwLCAyMTUsIDEzNywgMjQ5LCAyMjIsIDQ3LCAKKyAgICA0MiwgMjUxLCAyMTAsIDI0NSwgMTEwLCA0NywgNDIsIDI1MSwgMjEwLCAyMzIsIDIzNywgMjQ5LCAyMjIsIDQzLCAyNDksIAorICAgIDE2MywgMjUxLCAyMTAsIDIxNSwgMTM3LCAxMDIsIDQzLCAyNDksIDE2MywgMjUxLCAyMTAsIDIzMSwgMTA3LCAyMjYsIDEzLCAKKyAgICA0MywgMjQ5LCAxNjMsIDI1MSwgMjEwLCAyMzIsIDIzNywgMTAyLCAyNDksIDE2MywgMjUxLCAyMTAsIDI0NSwgMTEwLCA0NywgCisgICAgMjQ5LCAxNjMsIDI1MSwgMjEwLCAyMTUsIDEzNywgMTAyLCA0NywgMjQ5LCAxNjMsIDI1MSwgMjEwLCAyMzEsIDEwNywgMjI2LCAKKyAgICAxMywgNDcsIDI0OSwgMTYzLCAyNTEsIDIxMCwgMjMyLCAyMzcsIDEwMiwgMjM2LCA3MCwgMjQ1LCAxMTAsIDIwMSwgMjMzLCAKKyAgICA4NCwgMjQ1LCAxMTAsIDIxNSwgMTM3LCA0MywgMTcxLCAyMzIsIDIzNywgNDcsIDI0OSwgMTYzLCAyNTEsIDIxMCwgMjIyLCAKKyAgICAxMTQsIDIxNSwgMTM3LCA0NywgMTcxLCAyMzIsIDIzNywgNDMsIDI0OSwgMTYzLCAyNTEsIDIxMCwgMjIyLCAxMTQsIDIxOSwgCisgICAgMCwgMjE2LCAyMzksIDIxOSwgMCwgMjUxLCAyMjUsIDIxNiwgMjQwLCA0MiwgMTI1LCAyNTEsIDIyNiwgNDIsIDEyNSwgMjUxLCAKKyAgICAyMjYsIDQyLCAyNTEsIDIxMCwgMTEzLCAyMTYsIDI0MCwgNDIsIDEyNSwgMzQsIDE2LCAyNTEsIDIyNSwgNDMsIDY2LCA5MywgCisgICAgMjMzLCA4MywgNDcsIDY2LCA5MywgMjMzLCA4MywgMjAxLCAyMjIsIDE0NiwgMjMzLCA4MiwgMjAxLCAyMjIsIDE0NiwgMjMzLCAKKyAgICA4MSwgMjAxLCAyMjIsIDE0NiwgMjMzLCA4MCwgMjAxLCAyMjIsIDE0NiwgMjMzLCA3OSwgMjQ4LCAxMTgsIDE2LCAxODIsIAorICAgIDY2LCAyMiwgMjE2LCAyNDAsIDIyMywgMTgyLCAyNDgsIDExOCwgMTYsIDE4MiwgNjYsIDIyLCAyNTEsIDIyNiwgMjIzLCAKKyAgICAxODIsIDI0OCwgMTE4LCAxNiwgMTgyLCA2NiwgMiwgMjUwLCA5NSwgMjQ4LCAxMTgsIDE2LCAxODIsIDEyMSwgMjIsIDIwMSwgCisgICAgMiwgMjUwLCA5NSwgMjQ4LCAxMTgsIDE2LCAxODIsIDExNiwgMjIsIDIwMSwgMiwgMjUwLCA5NSwgMjQ4LCAxMTgsIDE2LCAKKyAgICAxODIsIDY2LCAyLCAyMTYsIDE5NiwgMjQ4LCAxMTgsIDE2LCAxODIsIDEyMSwgMjIsIDIwMSwgMiwgMjE2LCAxOTYsIDI0OCwgCisgICAgMTE4LCAxNiwgMTgyLCAxMTYsIDIyLCAyMDEsIDIsIDIxNiwgMTk2LCAyNDgsIDExOCwgMTYsIDE4MiwgNjYsIDIyLCAyMTQsIAorICAgIDIyLCAyNDgsIDExOCwgMTYsIDE4MiwgMTIxLCAyMiwgMjAxLCAyLCAyMTQsIDIyLCAyNDgsIDExOCwgMTYsIDE4MiwgMTE2LCAKKyAgICAyMiwgMjAxLCAyLCAyMTQsIDIyLCAyNDgsIDExOCwgMTYsIDE4MiwgMTIxLCAyMiwgMjQxLCAxNDksIDI0OCwgMTE4LCAxNiwgCisgICAgMTgyLCAxMTYsIDIyLCAyNDEsIDE0OSwgMjQ4LCAxMTgsIDE2LCAxODIsIDY2LCAyMiwgMjE2LCAyNDAsIDIzMywgMTY4LCAKKyAgICAyNDgsIDExOCwgMTYsIDE4MiwgNjYsIDIyLCAyNTEsIDIyNiwgMjMzLCAxNjgsIDQyLCAyNDQsIDEyMSwgMjIzLCAyNDAsIAorICAgIDg4LCAyNDYsIDQsIDg4LCA2NiwgMjMzLCA4NCwgMjQ1LCAxMTAsIDIzMSwgMTcwLCAyNTEsIDE5OSwgMjMxLCAxNzAsIDE4NywgCisgICAgMTEzLCAyMjAsIDE5NSwgMjMxLCAxNzAsIDIyMCwgMTk2LCAxMTMsIDIzMywgOCwgMjMxLCAxNzAsIDE4NywgMTEzLCAxMTksIAorICAgIDIyMCwgMTgyLCAyMzEsIDE3MCwgMTE5LCAyMjAsIDE4MywgMTEzLCAyMzMsIDgsIDIzMSwgMTcwLCAxMTksIDIyMCwgMTgzLCAKKyAgICAyMzUsIDE4MSwgMjMxLCAxNzAsIDIxNiwgMTc5LCAyMzEsIDE3MCwgMjE3LCAxODksIDIzMSwgMTcwLCAyMjYsIDk5LCAyNDYsIAorICAgIDQ1LCAyNDIsIDIyMSwgMjQ0LCA1NSwgMjE2LCAyNDAsIDIyNiwgMTY4LCAyNTEsIDIyNiwgMjI2LCAxNjgsIDIxNiwgMjQwLCAKKyAgICAyNDksIDE2MywgMTI1LCAyNTEsIDIyNiwgMjQ5LCAxNjMsIDEyNSwgMjE2LCAyNDAsIDIxNiwgMjMyLCAyMjAsIDI1NCwgCisgICAgMTI1LCAyNTEsIDIyNiwgMjE2LCAyMzIsIDIyMCwgMjU0LCAxMjUsIDY5LCAyMTYsIDIxMCwgMjUyLCA4MiwgMjIzLCAxNjUsIAorICAgIDIsIDI1MCwgOTUsIDIxOSwgNzQsIDI0NCwgMTUzLCAyNTUsIDQ5LCAyNDksIDE2MCwgMjQ1LCAyNDksIDIzNiwgNTYsIDI0OCwgCisgICAgMTU1LCAyNDUsIDExMiwgODgsIDg1LCAyMjMsIDE3OCwgNTIsIDIxNiwgMTk2LCA4NSwgMjMzLCAxNjQsIDUyLCAyMTYsIAorICAgIDE5NiwgODUsIDIxNSwgMTM5LCA1MiwgMjE2LCAxOTYsIDg1LCAyNDYsIDE4MCwgNTIsIDIxNiwgMTk2LCA4NSwgMjIzLCAKKyAgICAxNzgsIDUyLCAyMTYsIDE5NywgMiwgNjYsIDEzNCwgODUsIDIzMywgMTY0LCA1MiwgMjE2LCAxOTcsIDIsIDY2LCAxMzQsIAorICAgIDg1LCAyMjMsIDE3OCwgMjE2LCAxOTcsIDIsIDUyLCA2NiwgMTM0LCAyNTQsIDIwOCwgMjUwLCA2MywgMjE5LCA4MCwgMjE3LCAKKyAgICA1MywgMjUwLCA2MywgMjQxLCA4NiwgMiwgMjQ0LCAxMzksIDIyMiwgMTgxLCAxNiwgMzEsIDIyOCwgMTAxLCAxNiwgMzEsIAorICAgIDIxOSwgMTA1LCA2OCwgMjQyLCA4MCwgMTYsIDMxLCAyMTksIDEwNSwgNjgsIDIxNywgMTc4LCAxNiwgMzEsIDI0NSwgMjIyLCAKKyAgICA2OCwgMjE3LCAxNzgsIDE2LCAzMSwgMjQ1LCAyMjIsIDY4LCAyMTYsIDIxMywgMTYsIDMxLCAyNDUsIDIxMiwgMTYsIDMxLCAKKyAgICAyNTUsIDQwLCAxNiwgMzEsIDI1MiwgOTEsIDE2LCAzMSwgMjUyLCAyMjMsIDE2LCAzMSwgMjAxLCAyMTgsIDUyLCAxNiwgMzEsIAorICAgIDIzMywgODQsIDI0NCwgMjM0LCAxNiwgMzEsIDY2LCAyMTgsIDUyLCAxNiwgMzEsIDI0NCwgMTA5LCAyNDQsIDIzNCwgMTYsIAorICAgIDMxLCAyNTEsIDMwLCAyMjMsIDIzOSwgMTYsIDMxLCAyMjAsIDIyOSwgMjI3LCAzNiwgMTYsIDMxLCAyMjAsIDIyOSwgMjM2LCAKKyAgICAxMTIsIDE2LCAzMSwgMjQ4LCAyMTgsIDIzMywgNzQsIDI0NSwgMTYzLCAxNiwgMzEsIDI0OCwgMTAzLCAyNDksIDI0MCwgCisgICAgMTE4LCAxNiwgMzEsIDI0OCwgMTAzLCAyNDksIDI0MCwgMTEyLCAxNiwgMzEsIDI0OCwgMTAzLCAyNDksIDI0MCwgMTcwLCAKKyAgICAxNiwgMzEsIDI0OCwgMTAzLCAyNDksIDI0MCwgMTY3LCAxNiwgMzEsIDE1MCwgMjU1LCA0MCwgMTYsIDMxLCAyMTgsIDEzNywgCisgICAgMjM2LCAxNzQsIDE2LCAzMSwgMjQ1LCAyMjIsIDY4LCAyMTYsIDIxNCwgMjUyLCA1LCAxNiwgMzEsIDI1MSwgNjEsIDE2LCAKKyAgICAzMSwgMjQ1LCAyMjIsIDY4LCAyMzEsIDIxNiwgMTYsIDMxLCAyMTksIDIwLCAxNiwgMzEsIDI0NSwgMTYzLCAxNiwgMzEsIAorICAgIDI0NCwgMTk2LCAyMjEsIDgwLCAxNiwgMzEsIDI0MiwgMjIwLCAyMjEsIDgwLCAxNiwgMzEsIDIyNCwgNDgsIDIyMSwgODAsIAorICAgIDE2LCAzMSwgMjE1LCAxNTEsIDIyMSwgODAsIDE2LCAzMSwgMjE5LCAyMjUsIDE2LCAzMSwgMjQ4LCAxMzUsIDI1MiwgOCwgCisgICAgODgsIDIxMCwgMjUxLCAyMTQsIDE2LCAzMSwgMjI5LCAyMzQsIDE2LCAzMSwgMjQ4LCAxMzYsIDI0NCwgMTA5LCAxMTIsIDE2LCAKKyAgICAzMSwgMjE5LCAyMSwgMjQ0LCAxMDksIDExMiwgMjI3LCAxNDIsIDEwMiwgMjI3LCAxNDIsIDI1MCwgMjEwLCAyMjcsIDE0MiwgCisgICAgMjQ0LCAxMTIsIDIyNywgMTQyLCAyMzYsIDUyLCAyNDQsIDExMiwgMjI3LCAxNDIsIDI1MiwgODksIDI1MSwgMTc4LCAyMjcsIAorICAgIDE0MiwgMjUxLCAyMjEsIDIxNywgNzgsIDIyNywgMTQyLCAyNTEsIDIwNywgMjUyLCAxOTIsIDI0MCwgMjEzLCAyMjcsIDE0MiwgCisgICAgMjU0LCAxNjMsIDY4LCAyNTAsIDE4OCwgMjI3LCAxNDIsIDI0OCwgMjIzLCAyMjcsIDE0MiwgMjQ5LCAxNTIsIDI1NSwgNDMsIAorICAgIDIyOCwgOTksIDIyNywgMTQyLCA1MiwgMjUyLCAyMjQsIDM3LCAyMSwgMTE4LCAzNywgMjEsIDExMiwgMzcsIDIxLCAxNzAsIAorICAgIDM3LCAyMSwgMTY3LCAzNywgMjEsIDE4NSwgMzcsIDIxLCAxOTIsIDM3LCAyMSwgMjAwLCAzNywgMjEsIDE5OCwgMzcsIDIxLCAKKyAgICAyMDMsIDM3LCA1MSwgMjE3LCAyMTMsIDM3LCA1MSwgMjQ1LCAyNDUsIDM3LCA1MSwgMjE2LCA0OCwgMzcsIDUxLCAyMTcsIAorICAgIDEzMCwgMzcsIDUxLCAyNDQsIDk1LCAzNywgNTEsIDI0NCwgMjA3LCAzNywgNTEsIDIyMCwgNjYsIDM3LCA1MSwgMjIxLCA2MywgCisgICAgMzcsIDUxLCAyNDYsIDEyLCAzNywgNTEsIDIyOSwgOTIsIDM3LCA1MSwgMjE2LCA0NSwgODcsIDIxLCAxMTgsIDg3LCAyMSwgCisgICAgMTEyLCA4NywgMjEsIDE3MCwgODcsIDIxLCAxNjcsIDg3LCAyMSwgMTg1LCA4NywgMjEsIDE5MiwgODcsIDIxLCAyMDAsIDg3LCAKKyAgICAyMSwgMTk4LCA4NywgMjEsIDIwMywgODcsIDUxLCAyMTcsIDIxMywgODcsIDUxLCAyNDUsIDI0NSwgODcsIDUxLCAyMTYsIAorICAgIDQ4LCA4NywgNTEsIDIxNywgMTMwLCA4NywgNTEsIDI0NCwgOTUsIDg3LCA1MSwgMjQ0LCAyMDcsIDg3LCA1MSwgMjIwLCA2NiwgCisgICAgODcsIDUxLCAyMjEsIDYzLCA4NywgNTEsIDI0NiwgMTIsIDg3LCA1MSwgMjI5LCA5MiwgODcsIDUxLCAyMTYsIDQ1LCAyMSwgCisgICAgMTI0LCAyNDQsIDY0LCAyMTksIDgzLCAyMSwgMTE5LCAyNDQsIDY0LCAyMTksIDgzLCAyMSwgMTM3LCAyNDQsIDY0LCAyMTksIAorICAgIDgzLCAyMSwgMjQ0LCAxMDEsIDI0NCwgNjQsIDIxOSwgODMsIDIxLCAyNDQsIDE3MCwgMjQ0LCA2NCwgMjE5LCA4MywgMjEsIAorICAgIDIyMCwgNzIsIDI0NCwgNjQsIDIxOSwgODMsIDIxLCAyMjEsIDY2LCAyNDQsIDY0LCAyMTksIDgzLCAyMSwgMjQ2LCAxNSwgCisgICAgMjQ0LCA2NCwgMjE5LCA4MywgMjEsIDIyOSwgOTUsIDI0NCwgNjQsIDIxOSwgODMsIDUxLCAyMTcsIDIxNCwgMjQ0LCA2NCwgCisgICAgMjE5LCA4MywgNTEsIDI0NSwgMjQ2LCAyNDQsIDY0LCAyMTksIDgzLCA1MSwgMjE2LCA0OSwgMjQ0LCA2NCwgMjE5LCA4MywgCisgICAgNTEsIDIxNywgMTMxLCAyNDQsIDY0LCAyMTksIDgzLCA1MSwgMjQ0LCA5NiwgMjQ0LCA2NCwgMjE5LCA4MywgNTEsIDI0NCwgCisgICAgMjA4LCAyNDQsIDY0LCAyMTksIDgzLCA1MSwgMjIwLCA2NywgMjQ0LCA2NCwgMjE5LCA4MywgNTEsIDIyMSwgNjQsIDI0NCwgCisgICAgNjQsIDIxOSwgODMsIDUxLCAyNDYsIDEzLCAyNDQsIDY0LCAyMTksIDgzLCA1MSwgMjI5LCA5MywgMjQ0LCA2NCwgMjE5LCAKKyAgICA4MywgNTEsIDIxNiwgNDYsIDI0NCwgNjQsIDIxOSwgODMsIDg3LCA3LCA0LCAxLCA2MywgODcsIDcsIDQsIDEsIDI1MywgCisgICAgMjAxLCA4NywgNywgNCwgMSwgMjUxLCAxMjEsIDg3LCA3LCA0LCAxLCAyNDksIDEyNSwgODcsIDcsIDQsIDEsIDc3LCA4NywgCisgICAgNywgNCwgMSwgMjQ1LCA5NSwgODcsIDcsIDQsIDEsIDI0NCwgNDEsIDg3LCA3LCA0LCAxLCAyNDIsIDE2MiwgODcsIDcsIDQsIAorICAgIDEsIDc1LCA4NywgNywgNCwgMSwgMjM2LCAzLCA4NywgNywgNCwgMSwgMjM1LCAxNDEsIDg3LCA3LCA0LCAxLCAxNTUsIDg3LCAKKyAgICA3LCA0LCAxLCAxODQsIDg3LCA3LCA0LCAxLCAyMDYsIDg3LCA3LCA0LCAxLCA3OCwgODcsIDcsIDQsIDEsIDIyNywgMTEsIAorICAgIDg3LCA3LCA0LCAxLCAyMjUsIDE5LCA4NywgNywgNCwgMSwgMTUyLCA4NywgNywgNCwgMSwgMTk2LCA4NywgNywgNCwgMSwgCisgICAgMjE4LCAxMTMsIDg3LCA3LCA0LCAxLCA3MiwgODcsIDcsIDQsIDEsIDIxMSwgMjExLCA4NywgNywgNCwgMSwgMjE0LCA4NSwgCisgICAgODcsIDcsIDQsIDEsIDIxMywgMTY5LCA4NywgNywgNCwgMSwgMjEzLCAxMDgsIDg3LCA3LCA0LCAxLCAyMTIsIDE1MiwgMzcsIAorICAgIDcsIDYsIDEsIDYzLCAzNywgNywgNiwgMSwgMjUzLCAyMDEsIDM3LCA3LCA2LCAxLCAyNTEsIDEyMSwgMzcsIDcsIDYsIDEsIAorICAgIDI0OSwgMTI1LCAzNywgNywgNiwgMSwgNzcsIDM3LCA3LCA2LCAxLCAyNDUsIDk1LCAzNywgNywgNiwgMSwgMjQ0LCA0MSwgCisgICAgMzcsIDcsIDYsIDEsIDI0MiwgMTYyLCAzNywgNywgNiwgMSwgNzUsIDM3LCA3LCA2LCAxLCAyMzYsIDMsIDM3LCA3LCA2LCAxLCAKKyAgICAyMzUsIDE0MSwgMzcsIDcsIDYsIDEsIDE1NSwgMzcsIDcsIDYsIDEsIDE4NCwgMzcsIDcsIDYsIDEsIDIwNiwgMzcsIDcsIDYsIAorICAgIDEsIDc4LCAzNywgNywgNiwgMSwgMjI3LCAxMSwgMzcsIDcsIDYsIDEsIDIyNSwgMTksIDM3LCA3LCA2LCAxLCAxNTIsIDM3LCAKKyAgICA3LCA2LCAxLCAxOTYsIDM3LCA3LCA2LCAxLCAyMTgsIDExMywgMzcsIDcsIDYsIDEsIDcyLCAzNywgNywgNiwgMSwgMjExLCAKKyAgICAyMTEsIDM3LCA3LCA2LCAxLCAyMTQsIDg1LCAzNywgNywgNiwgMSwgMjEzLCAxNjksIDM3LCA3LCA2LCAxLCAyMTMsIDEwOCwgCisgICAgMzcsIDcsIDYsIDEsIDIxMiwgMTUyLCAzNywgNywgNCwgMSwgNjMsIDM3LCA3LCA0LCAxLCAyNTMsIDIwMSwgMzcsIDcsIDQsIAorICAgIDEsIDI1MSwgMTIxLCAzNywgNywgNCwgMSwgMjQ5LCAxMjUsIDM3LCA3LCA0LCAxLCA3NywgMzcsIDcsIDQsIDEsIDI0NSwgCisgICAgOTUsIDM3LCA3LCA0LCAxLCAyNDQsIDQxLCAzNywgNywgNCwgMSwgMjQyLCAxNjIsIDM3LCA3LCA0LCAxLCA3NSwgMzcsIDcsIAorICAgIDQsIDEsIDIzNiwgMywgMzcsIDcsIDQsIDEsIDIzNSwgMTQxLCAzNywgNywgNCwgMSwgMTU1LCAzNywgNywgNCwgMSwgMTg0LCAKKyAgICAzNywgNywgNCwgMSwgMjA2LCAzNywgNywgNCwgMSwgNzgsIDM3LCA3LCA0LCAxLCAyMjcsIDExLCAzNywgNywgNCwgMSwgCisgICAgMjI1LCAxOSwgMzcsIDcsIDQsIDEsIDE1MiwgMzcsIDcsIDQsIDEsIDE5NiwgMzcsIDcsIDQsIDEsIDIxOCwgMTEzLCAzNywgCisgICAgNywgNCwgMSwgNzIsIDM3LCA3LCA0LCAxLCAyMTEsIDIxMSwgMzcsIDcsIDQsIDEsIDIxNCwgODUsIDM3LCA3LCA0LCAxLCAKKyAgICAyMTMsIDE2OSwgMzcsIDcsIDQsIDEsIDIxMywgMTA4LCAzNywgNywgNCwgMSwgMjEyLCAxNTIsIDM3LCAyMSwgMjEyLCA3OSwgCisgICAgMTUwLCAzNywgNTEsIDI0NSwgMjQ1LCAxNTAsIDM3LCA1MSwgMjE2LCA0OCwgMTUwLCAzNywgNTEsIDIxNywgMTMwLCAxNTAsIAorICAgIDM3LCA1MSwgMjQ0LCA5NSwgMTUwLCAzNywgNTEsIDI0NCwgMjA3LCAxNTAsIDM3LCA1MSwgMjIwLCA2NiwgMTUwLCAzNywgCisgICAgNTEsIDIyMSwgNjMsIDE1MCwgMzcsIDUxLCAyNDYsIDEyLCAxNTAsIDM3LCA1MSwgMjI5LCA5MiwgMTUwLCAzNywgNTEsIAorICAgIDIxNiwgNDUsIDUyLCAzNywgMjEsIDExOCwgNTIsIDM3LCAyMSwgMTEyLCA1MiwgMzcsIDIxLCAxNzAsIDUyLCAzNywgMjEsIAorICAgIDE2NywgNTIsIDM3LCAyMSwgMTg1LCA1MiwgMzcsIDIxLCAxOTIsIDUyLCAzNywgMjEsIDIwMCwgNTIsIDM3LCAyMSwgMTk4LCAKKyAgICA1MiwgMzcsIDIxLCAyMDMsIDUyLCAzNywgNTEsIDIxNywgMjEzLCAxNTAsIDM3LCAyMSwgMjEyLCA3OSwgOTMsIDk3LCAxODIsIAorICAgIDI0MSwgMTQ5LCA5MywgOTcsIDExMCwgMjQxLCAxNDksIDkzLCA5NywgMTgyLCAyMTQsIDIyMSwgOTMsIDk3LCAxMTAsIDIxNCwgCisgICAgMjIxLCA5MywgOTcsIDE4MiwgMjE2LCAxODIsIDI0OCwgMjI0LCAyNDEsIDE0OSwgOTMsIDk3LCAxMTAsIDIxNiwgMTgyLCAKKyAgICAyNDgsIDIyNCwgMjQxLCAxNDksIDkzLCA5NywgMTgyLCAyMTYsIDE4MiwgMjQ4LCAyMjQsIDIxNCwgMjIxLCA5MywgOTcsIAorICAgIDExMCwgMjE2LCAxODIsIDI0OCwgMjI0LCAyMTQsIDIyMSwgOTMsIDk3LCAxODIsIDIyNCwgMjA0LCAyNDgsIDIyNCwgMjQxLCAKKyAgICAxNDksIDkzLCA5NywgMTEwLCAyMjQsIDIwNCwgMjQ4LCAyMjQsIDI0MSwgMTQ5LCA5MywgOTcsIDE4MiwgMjI0LCAyMDQsIAorICAgIDI0OCwgMjI0LCAyMTQsIDIyMSwgOTMsIDk3LCAxMTAsIDIyNCwgMjA0LCAyNDgsIDIyNCwgMjE0LCAyMjEsIDkzLCA5NywgCisgICAgMTgyLCAxMjEsIDIyLCAyMjMsIDE4MiwgOTMsIDk3LCAxMjEsIDE4MiwgMjIsIDQ3LCAyNDIsIDY4LCA5MywgOTcsIDEyMSwgCisgICAgMTEwLCAyMiwgNDcsIDIzMywgMTAwLCA5MywgOTcsIDExMCwgMTIxLCAyMiwgMjIzLCAxODIsIDkzLCA5NywgMTgyLCAxMjEsIAorICAgIDIyLCAyMzMsIDE2OCwgOTMsIDk3LCAxMjEsIDE4MiwgMjIsIDQzLCAyNDIsIDY4LCA5MywgOTcsIDEyMSwgMTEwLCAyMiwgCisgICAgNDMsIDIzMywgMTAwLCA5MywgOTcsIDExMCwgMTIxLCAyMiwgMjMzLCAxNjgsIDkzLCA5NywgMTgyLCAxMTYsIDIyLCAyMjMsIAorICAgIDE4MiwgOTMsIDk3LCAxMTYsIDE4MiwgMjIsIDQ3LCAyNDIsIDY4LCA5MywgOTcsIDExNiwgMTEwLCAyMiwgNDcsIDIzMywgCisgICAgMTAwLCA5MywgOTcsIDExMCwgMTE2LCAyMiwgMjIzLCAxODIsIDkzLCA5NywgMTgyLCAxMTYsIDIyLCAyMzMsIDE2OCwgOTMsIAorICAgIDk3LCAxMTYsIDE4MiwgMjIsIDQzLCAyNDIsIDY4LCA5MywgOTcsIDExNiwgMTEwLCAyMiwgNDMsIDIzMywgMTAwLCA5MywgCisgICAgOTcsIDExMCwgMTE2LCAyMiwgMjMzLCAxNjgsIDkzLCA5NywgMTgyLCA2NiwgMjIsIDIyMywgMTgyLCA5MywgOTcsIDY2LCAKKyAgICAxODIsIDIyLCA0NywgMjQyLCA2OCwgOTMsIDk3LCAxMTYsIDExMCwgMjIsIDQ3LCAxMjEsIDIzMywgMTAwLCA5MywgOTcsIAorICAgIDEyMSwgMTEwLCAyMiwgNDcsIDExNiwgMjMzLCAxMDAsIDkzLCA5NywgNjYsIDExMCwgMjIsIDQ3LCAyMzMsIDEwMCwgOTMsIAorICAgIDk3LCAxMjEsIDE4MiwgMjIsIDQ3LCAxMTYsIDI0MiwgNjgsIDkzLCA5NywgMTE2LCAxODIsIDIyLCA0NywgMTIxLCAyNDIsIAorICAgIDY4LCA5MywgOTcsIDExMCwgNjYsIDIyLCAyMjMsIDE4MiwgOTMsIDk3LCAxODIsIDY2LCAyMiwgMjMzLCAxNjgsIDkzLCA5NywgCisgICAgNjYsIDE4MiwgMjIsIDQzLCAyNDIsIDY4LCA5MywgOTcsIDExNiwgMTEwLCAyMiwgNDMsIDEyMSwgMjMzLCAxMDAsIDkzLCAKKyAgICA5NywgMTIxLCAxMTAsIDIyLCA0MywgMTE2LCAyMzMsIDEwMCwgOTMsIDk3LCA2NiwgMTEwLCAyMiwgNDMsIDIzMywgMTAwLCAKKyAgICA5MywgOTcsIDEyMSwgMTgyLCAyMiwgNDMsIDExNiwgMjQyLCA2OCwgOTMsIDk3LCAxMTYsIDE4MiwgMjIsIDQzLCAxMjEsIAorICAgIDI0MiwgNjgsIDkzLCA5NywgMTEwLCA2NiwgMjIsIDIzMywgMTY4LCA5MywgOTcsIDE4MiwgMTIxLCAyMiwgMjQxLCAxNDksIAorICAgIDkzLCA5NywgNDMsIDExMCwgMjIsIDQ3LCAxMjEsIDIzMywgMTAwLCA5MywgOTcsIDQ3LCAxMTAsIDIyLCA0MywgMTIxLCAKKyAgICAyMzMsIDEwMCwgOTMsIDk3LCAxMjEsIDE4MiwgMjIsIDIwMSwgMjQyLCA2OCwgOTMsIDk3LCAxMjEsIDExMCwgMjIsIDIwMSwgCisgICAgMjMzLCAxMDAsIDkzLCA5NywgNDcsIDE4MiwgMjIsIDQzLCAxMjEsIDI0MiwgNjgsIDkzLCA5NywgNDMsIDE4MiwgMjIsIDQ3LCAKKyAgICAxMjEsIDI0MiwgNjgsIDkzLCA5NywgMTEwLCAxMjEsIDIyLCAyNDEsIDE0OSwgOTMsIDk3LCAxODIsIDExNiwgMjIsIDI0MSwgCisgICAgMTQ5LCA5MywgOTcsIDQzLCAxMTAsIDIyLCA0NywgMTE2LCAyMzMsIDEwMCwgOTMsIDk3LCA0NywgMTEwLCAyMiwgNDMsIAorICAgIDExNiwgMjMzLCAxMDAsIDkzLCA5NywgMTE2LCAxODIsIDIyLCAyMDEsIDI0MiwgNjgsIDkzLCA5NywgMTE2LCAxMTAsIDIyLCAKKyAgICAyMDEsIDIzMywgMTAwLCA5MywgOTcsIDQ3LCAxODIsIDIyLCA0MywgMTE2LCAyNDIsIDY4LCA5MywgOTcsIDQzLCAxODIsIAorICAgIDIyLCA0NywgMTE2LCAyNDIsIDY4LCA5MywgOTcsIDExMCwgMTE2LCAyMiwgMjQxLCAxNDksIDkzLCA5NywgMTgyLCA2NiwgCisgICAgMjIsIDI0MSwgMTQ5LCA5MywgOTcsIDQzLCAxMTAsIDIyLCA0NywgNjYsIDIzMywgMTAwLCA5MywgOTcsIDQ3LCAxMTAsIDIyLCAKKyAgICA0MywgNjYsIDIzMywgMTAwLCA5MywgOTcsIDY2LCAxODIsIDIyLCAyMDEsIDI0MiwgNjgsIDkzLCA5NywgMTE2LCAxMTAsIAorICAgIDIyLCAxMjEsIDIwMSwgMjMzLCAxMDAsIDkzLCA5NywgMTIxLCAxMTAsIDIyLCAxMTYsIDIwMSwgMjMzLCAxMDAsIDkzLCA5NywgCisgICAgNjYsIDExMCwgMjIsIDIwMSwgMjMzLCAxMDAsIDkzLCA5NywgNDMsIDExNiwgMTEwLCAyMiwgNDcsIDEyMSwgMjMzLCAxMDAsIAorICAgIDkzLCA5NywgNDcsIDExNiwgMTEwLCAyMiwgNDMsIDEyMSwgMjMzLCAxMDAsIDkzLCA5NywgNDMsIDEyMSwgMTEwLCAyMiwgCisgICAgNDcsIDExNiwgMjMzLCAxMDAsIDkzLCA5NywgNDcsIDEyMSwgMTEwLCAyMiwgNDMsIDExNiwgMjMzLCAxMDAsIDkzLCA5NywgCisgICAgMTIxLCAxODIsIDIyLCAxMTYsIDIwMSwgMjQyLCA2OCwgOTMsIDk3LCAxMTYsIDE4MiwgMjIsIDEyMSwgMjAxLCAyNDIsIDY4LCAKKyAgICA5MywgOTcsIDQ3LCAxODIsIDIyLCA0MywgNjYsIDI0MiwgNjgsIDkzLCA5NywgNDMsIDE4MiwgMjIsIDQ3LCA2NiwgMjQyLCAKKyAgICA2OCwgOTMsIDk3LCAxMTAsIDY2LCAyMiwgMjQxLCAxNDksIDkzLCA5NywgMTgyLCA1MiwgMjQ4LCAyMjQsIDI0MSwgMTQ5LCAKKyAgICA5MywgOTcsIDExMCwgNTIsIDI0OCwgMjI0LCAyNDEsIDE0OSwgOTMsIDk3LCAxODIsIDUyLCAyNDgsIDIyNCwgMjE0LCAyMjEsIAorICAgIDkzLCA5NywgMTEwLCA1MiwgMjQ4LCAyMjQsIDIxNCwgMjIxLCA5MywgOTcsIDUyLCAyNDEsIDE0OSwgOTMsIDk3LCA1MiwgCisgICAgMjE0LCAyMjEsIDkzLCA5NywgMTIxLCAyMjAsIDEwMCwgMjIsIDQ3LCAyNDYsIDE4OCwgOTMsIDk3LCAxMjEsIDUyLCAyMiwgCisgICAgNDcsIDIyMCwgOTksIDkzLCA5NywgNTIsIDEyMSwgMjIsIDIyMywgMTgyLCA5MywgOTcsIDEyMSwgMjIwLCAxMDAsIDIyLCAKKyAgICA0MywgMjQ2LCAxODgsIDkzLCA5NywgMTIxLCA1MiwgMjIsIDQzLCAyMjAsIDk5LCA5MywgOTcsIDUyLCAxMjEsIDIyLCAyMzMsIAorICAgIDE2OCwgOTMsIDk3LCAxMTYsIDIyMCwgMTAwLCAyMiwgNDcsIDI0NiwgMTg4LCA5MywgOTcsIDExNiwgNTIsIDIyLCA0NywgCisgICAgMjIwLCA5OSwgOTMsIDk3LCA1MiwgMTE2LCAyMiwgMjIzLCAxODIsIDkzLCA5NywgMTE2LCAyMjAsIDEwMCwgMjIsIDQzLCAKKyAgICAyNDYsIDE4OCwgOTMsIDk3LCAxMTYsIDUyLCAyMiwgNDMsIDIyMCwgOTksIDkzLCA5NywgNTIsIDExNiwgMjIsIDIzMywgCisgICAgMTY4LCA5MywgOTcsIDY2LCAyMjAsIDEwMCwgMjIsIDQ3LCAyNDYsIDE4OCwgOTMsIDk3LCA2NiwgNTIsIDIyLCA0NywgMjIwLCAKKyAgICA5OSwgOTMsIDk3LCA1MiwgNjYsIDIyLCAyMjMsIDE4MiwgOTMsIDk3LCA2NiwgMjIwLCAxMDAsIDIyLCA0MywgMjQ2LCAxODgsIAorICAgIDkzLCA5NywgNjYsIDUyLCAyMiwgNDMsIDIyMCwgOTksIDkzLCA5NywgNTIsIDY2LCAyMiwgMjMzLCAxNjgsIDkzLCA5NywgCisgICAgMTIxLCAyMjAsIDEwMCwgMjIsIDIwMSwgMjQ2LCAxODgsIDkzLCA5NywgMTIxLCA1MiwgMjIsIDIwMSwgMjIwLCA5OSwgOTMsIAorICAgIDk3LCA1MiwgMTIxLCAyMiwgMjQxLCAxNDksIDkzLCA5NywgMTE2LCAyMjAsIDEwMCwgMjIsIDIwMSwgMjQ2LCAxODgsIDkzLCAKKyAgICA5NywgMTE2LCA1MiwgMjIsIDIwMSwgMjIwLCA5OSwgOTMsIDk3LCA1MiwgMTE2LCAyMiwgMjQxLCAxNDksIDkzLCA5NywgNjYsIAorICAgIDIyMCwgMTAwLCAyMiwgMjAxLCAyNDYsIDE4OCwgOTMsIDk3LCA2NiwgNTIsIDIyLCAyMDEsIDIyMCwgOTksIDkzLCA5NywgCisgICAgNTIsIDY2LCAyMiwgMjQxLCAxNDksIDkzLCA5NywgMTgyLCAyNTQsIDY3LCAxMjEsIDIyLCAyMjMsIDE4MiwgOTMsIDk3LCAKKyAgICAxODIsIDI1NCwgNjcsIDEyMSwgMjIsIDIzMywgMTY4LCA5MywgOTcsIDE4MiwgMjU0LCA2NywgMTE2LCAyMiwgMjMzLCAxNjgsIAorICAgIDkzLCA5NywgMTgyLCAyNTQsIDY3LCAxMTYsIDIyLCAyMjMsIDE4MiwgOTMsIDk3LCAxODIsIDI0OCwgNzIsIDIxNSwgMTM3LCAKKyAgICA0NywgMjE3LCAxMCwgMjMyLCAyMzcsIDIzMywgMTY4LCA5MywgOTcsIDE4MiwgMjQ4LCA3MiwgMjE1LCAxMzcsIDQzLCAyMTcsIAorICAgIDEwLCAyMzIsIDIzNywgMjIzLCAxODIsIDkzLCA5NywgMTgyLCAyNDgsIDcyLCAyNDksIDE5MywgOTMsIDk3LCAxODIsIDIzMywgCisgICAgMTY4LCA5MywgOTcsIDE4MiwgMjE1LCAxNDAsIDkzLCA5NywgMTgyLCAyMjMsIDE4MiwgOTMsIDk3LCAxODIsIDI0NiwgMTgxLCAKKyAgICA5MywgOTcsIDExMCwgMjMzLCAxNjgsIDkzLCA5NywgMTEwLCAyMTUsIDE0MCwgOTMsIDk3LCAxMTAsIDIyMywgMTgyLCA5MywgCisgICAgOTcsIDExMCwgMjQ2LCAxODEsIDkzLCA5NywgMTgyLCA0MywgMjIsIDExMCwgMjIzLCAxODIsIDkzLCA5NywgMTgyLCAxMTYsIAorICAgIDIyLCAxMTAsIDI0NiwgMTgxLCA5MywgOTcsIDExMCwgNDMsIDIyLCAxODIsIDIyMywgMTgyLCA5MywgOTcsIDExMCwgMTE2LCAKKyAgICAyMiwgMTgyLCAyNDYsIDE4MSwgMjE1LCAxMzcsIDE1NywgMjUyLCA1LCAyMzIsIDIzNywgMTI0LCAyNDYsIDExLCAyNTIsIDUsIAorICAgIDIzMiwgMjM3LCAxMjQsIDIyNCwgMjAyLCAyNTIsIDUsIDIzMiwgMjM3LCAxMzcsIDI0NiwgOSwgMjUyLCA1LCAyMzIsIDIzNywgCisgICAgMTU3LCAyNTIsIDUsIDIzMiwgMjM3LCAyNDQsIDE3MCwgMjQ2LCA5LCAyNTIsIDUsIDIzMiwgMjM3LCAxMzcsIDIyNCwgMjAwLCAKKyAgICAyNTIsIDUsIDIzMiwgMjM3LCAyMjEsIDY2LCAyNDYsIDksIDI1MiwgNSwgMjQ0LCA2NCwgMjUyLCA1LCA0MywgMjIxLCA2NiwgCisgICAgMjQ2LCA5LCAyNTIsIDUsIDQzLCAxMzcsIDIyNCwgMjAwLCAyNTIsIDUsIDQzLCAyNDQsIDE3MCwgMjQ2LCA5LCAyNTIsIDUsIAorICAgIDQzLCAxNTcsIDI1MiwgNSwgNDMsIDEzNywgMjQ2LCA5LCAyNTIsIDUsIDQzLCAxMjQsIDIyNCwgMjAyLCAyNTIsIDUsIDQzLCAKKyAgICAxMjQsIDI0NiwgMTEsIDI1MiwgNSwgNDcsIDE1NywgMjUyLCA1LCAxODIsIDIyMSwgMzcsIDIzMSwgMjE3LCAyMjEsIDM3LCAKKyAgICAyNDgsIDIyOSwgMjIxLCAzNywgMjE1LCAxMzcsIDEyNCwgMjQ2LCAxMSwgMjUyLCA1LCA0NywgMTI0LCAyNDYsIDExLCAyNTIsIAorICAgIDUsIDIyNCwgMjA2LCAyMzIsIDIzNywgMjMzLCAxNjgsIDIyNCwgMjA2LCAyMzIsIDIzNywgMjIzLCAxODIsIDIyNCwgMjA2LCAKKyAgICAyMTUsIDEzNywgMjMzLCAxNjgsIDIyNCwgMjA2LCAyMTUsIDEzNywgNDMsIDIyLCAyMzIsIDIzNywgNDMsIDIyLCAyMzIsIAorICAgIDIzNywgMjIzLCAxODIsIDIyNCwgMjA2LCAyMTUsIDEzNywgNDMsIDIyLCAyMzIsIDIzNywgMjIzLCAxODIsIDIyNCwgMjA2LCAKKyAgICAyMTUsIDEzNywgNDMsIDIyLCAyMTUsIDEzNywgNDcsIDIyLCAyMzIsIDIzNywgMjMzLCAxNjgsIDIyNCwgMjA2LCAyMTUsIAorICAgIDEzNywgNDMsIDIyLCAyMTUsIDEzNywgNDcsIDIyLCAyMzIsIDIzNywgMjIzLCAxODIsIDIyNCwgMjA2LCAyMTUsIDEzNywgCisgICAgMjIzLCAxODIsIDIyNCwgMjA2LCAyMTUsIDEzNywgNDcsIDIyLCAyMzIsIDIzNywgMjMzLCAxNjgsIDIyNCwgMjA2LCAyMTUsIAorICAgIDEzNywgNDcsIDIyLCAyMzIsIDIzNywgNDMsIDIyLCAyMzIsIDIzNywgMjIzLCAxODIsIDg1LCAyMTksIDE4NSwgNjksIDIxOSwgCisgICAgMTg1LCA2OSwgNDIsIDIsIDIyMywgMTE5LCAyNDksIDIyMSwgNjksIDQyLCAyNDksIDI0OSwgODUsIDQsIDIxOSwgMTg1LCAKKyAgICA0MiwgMiwgMjAxLCAyNDQsIDE5NCwgNDIsIDIsIDY2LCAyNDQsIDE5NCwgNDIsIDIsIDIyNywgNDksIDI0OSwgMTg5LCAyNDQsIAorICAgIDE5NCwgNDIsIDIsIDIxNSwgMTM3LCA0MywgMjE3LCAxMCwgMjMyLCAyMzcsIDQ3LCAyNDQsIDE5NCwgNDIsIDIsIDIxNSwgCisgICAgMTM3LCA0NywgMjE3LCAxMCwgMjMyLCAyMzcsIDQzLCAyNDQsIDE5NCwgNDIsIDIsIDI0OCwgNzIsIDI0OSwgMTg5LCAyNDQsIAorICAgIDE5NCwgODUsIDQsIDIxOSwgMTg1LCA2OSwgNCwgMjE5LCAxODUsIDg1LCAyMjQsIDQzLCA2OSwgMjI0LCA0MywgODUsIDY2LCAKKyAgICAyMjQsIDQzLCA2OSwgNjYsIDIyNCwgNDMsIDg1LCAyMjYsIDE3MSwgNjksIDIyNiwgMTcxLCA4NSwgMjE1LCAxMzksIDIxNiwgCisgICAgMTk2LCA2OSwgMjE1LCAxMzksIDIxNiwgMTk2LCA4NSwgMjE1LCAxMzksIDQsIDIxNiwgMTk2LCA2OSwgMjE1LCAxMzksIDQsIAorICAgIDIxNiwgMTk2LCA4NSwgMjIzLCAxNzgsIDIxNiwgMTk2LCA2OSwgMjIzLCAxNzgsIDIxNiwgMTk2LCA4NSwgMjIzLCAxNzgsIAorICAgIDQsIDIxNiwgMTk2LCA2OSwgMjIzLCAxNzgsIDQsIDIxNiwgMTk2LCA4NSwgMjIzLCAxNzgsIDIyNSwgMTc4LCA2OSwgMjIzLCAKKyAgICAxNzgsIDIyNSwgMTc4LCA4NSwgMjQ2LCAxODAsIDIxNiwgMTk2LCA2OSwgMjQ2LCAxODAsIDIxNiwgMTk2LCA4NSwgMjQ2LCAKKyAgICAxODAsIDQsIDIxNiwgMTk2LCA2OSwgMjQ2LCAxODAsIDQsIDIxNiwgMTk2LCA4NSwgMjMzLCAxNjQsIDIxNiwgMTk2LCA2OSwgCisgICAgMjMzLCAxNjQsIDIxNiwgMTk2LCA4NSwgMjMzLCAxNjQsIDQsIDIxNiwgMTk2LCA2OSwgMjMzLCAxNjQsIDQsIDIxNiwgMTk2LCAKKyAgICA4NSwgMjMzLCAxNjQsIDIyNSwgMTc4LCA2OSwgMjMzLCAxNjQsIDIyNSwgMTc4LCA4NSwgMjQ4LCA2NSwgNjksIDI0OCwgNjUsIAorICAgIDY5LCAyNDgsIDY2LCAyNDksIDI0OSwgODUsIDQsIDI0OCwgNjUsIDI0NCwgMTc4LCAyMzIsIDIzMywgNjksIDI1MCwgOTUsIAorICAgIDI0NiwgMTkzLCAyNTAsIDk1LCAyNTAsIDk2LCAyLCA2NiwgMjQ0LCAxOTQsIDI1MSwgMTY1LCA4NSwgMjUwLCA5NSwgMjUwLCAKKyAgICA5NiwgMiwgNDMsIDE1NywgMjUyLCAxMywgMjUwLCA5NiwgMiwgNDcsIDE1NywgMjUyLCAxMywgMjUwLCA5NiwgMiwgMjMyLCAKKyAgICAyMzcsIDE1NywgMjUyLCAxMywgMjUwLCA5NiwgMiwgMjE1LCAxMzcsIDE1NywgMjUyLCAxMywgMjUwLCA5NiwgMiwgMjE1LCAKKyAgICAxMzcsIDQ3LCAyMjQsIDIwNiwgMjUyLCAxMywgMjUwLCA5NiwgMiwgMjU0LCAxOTEsIDI1MSwgMTQyLCAyMTUsIDEzNywgNDMsIAorICAgIDIyNCwgMjA2LCAyNTIsIDEzLCA0MywgMTU3LCA4NSwgMjUwLCA5NSwgNDcsIDE1NywgODUsIDI1MCwgOTUsIDIzNiwgNTMsIAorICAgIDI1MSwgMTY3LCAyMzYsIDUzLCA2OSwgMjUwLCA5NSwgMjE1LCAxMzcsIDE1NywgMjM2LCA1MywgNjksIDI1MCwgOTUsIDIzMiwgCisgICAgMjM3LCAxNTcsIDIzNiwgNTMsIDY5LCAyNTAsIDk1LCAyMTUsIDEzNywgNDMsIDIyNCwgMjA2LCAyNTAsIDkzLCAyNTQsIDY2LCAKKyAgICAyMTUsIDEzNywgNDcsIDIyNCwgMjA2LCAyNTAsIDkzLCAyNTQsIDY2LCAyMzIsIDIzNywgNDcsIDIyNCwgMjA2LCAyNTAsIAorICAgIDkzLCAyNTQsIDY2LCAyMzIsIDIzNywgNDMsIDIyNCwgMjA2LCAyNTAsIDkzLCAyNTQsIDY2LCAyMTUsIDEzNywgMTU3LCAKKyAgICAyNTAsIDk1LCAyMzIsIDIzNywgMTU3LCAyNTAsIDk1LCA4NSwgMjMyLCAyMzcsIDQ3LCAyMTYsIDE5NiwgODUsIDIzMiwgCisgICAgMjM3LCA0MywgMjE2LCAxOTYsIDg1LCAyMTUsIDEzNywgNDMsIDIxNiwgMTk2LCA4NSwgMjE1LCAxMzcsIDQ3LCAyMTYsIAorICAgIDE5NiwgNjksIDI1MSwgMTY3LCA0MiwgMiwgNDMsIDE1NywgMjUyLCAxMywgNDIsIDIsIDQ3LCAxNTcsIDI1MiwgMTMsIDQyLCAKKyAgICAyLCAyMTUsIDEzNywgNDMsIDI0OCwgNzIsIDE1NywgMjUyLCAxMywgNDIsIDIsIDIzMiwgMjM3LCA0NywgMjQ4LCA3MiwgCisgICAgMTU3LCAyNTIsIDEzLCA2OSwgNDIsIDIsIDY2LCAyNTIsIDI0LCAyMzMsIDgzLCA2OSwgMjE1LCAxMzksIDIxNiwgMTk3LCAyLCAKKyAgICAyNDcsIDE5NSwgMjE1LCAxMzksIDIxNiwgMTk3LCAyLCA0MywgMTU3LCAyNTIsIDEzLCAyMTUsIDEzOSwgMjE2LCAxOTcsIDIsIAorICAgIDQ3LCAxNTcsIDI1MiwgMTMsIDIzMywgMjA3LCAyNTAsIDk1LCA2OSwgNDIsIDIsIDIxNSwgMTM3LCA0MywgMjI0LCAyMDUsIAorICAgIDY5LCA0MiwgMiwgMjMyLCAyMzcsIDQzLCAyMjQsIDIwNSwgNjksIDQyLCAyLCAyMzIsIDIzNywgNDcsIDIyNCwgMjA1LCA2OSwgCisgICAgNDIsIDIsIDIxNSwgMTM3LCA0NywgMjI0LCAyMDUsIDY5LCAyNTAsIDk2LCAyLCAyMTUsIDEzNywgNDMsIDIyNCwgMjA1LCAKKyAgICA2OSwgMjUwLCA5NiwgMiwgMjMyLCAyMzcsIDQzLCAyMjQsIDIwNSwgNjksIDI1MCwgOTYsIDIsIDIzMiwgMjM3LCA0NywgCisgICAgMjI0LCAyMDUsIDY5LCAyNTAsIDk2LCAyLCAyMTUsIDEzNywgNDcsIDIyNCwgMjA1LCAyMTUsIDEzNywgNDMsIDIxNiwgMTk2LCAKKyAgICAyMTUsIDEzNywgNDcsIDIxNiwgMTk2LCAyMzIsIDIzNywgNDMsIDIxNiwgMTk2LCA2OSwgMjMxLCAyMTcsIDIxOSwgMTg1LCAKKyAgICA4NSwgMjMxLCAyMTcsIDIxOSwgMTg1LCA2OSwgMjMxLCAyMTcsIDQsIDIxOSwgMTg1LCA4NSwgMjMxLCAyMTcsIDQsIDIxOSwgCisgICAgMTg1LCAyMzIsIDIzNywgNDcsIDIxNiwgMTk2LCA4NSwgMjE4LCAyNTMsIDIsIDIyNCwgNTksIDI1MCwgNTEsIDIxNSwgMTcwLCAKKyAgICAyMjAsIDcsIDI1MCwgMjYsIDg1LCAyMTksIDEwOSwgNjksIDIxOSwgMTA5LCAyMzMsIDk4LCAyMTcsIDk5LCAyMTgsIDI1MiwgCisgICAgMjU0LCAyMCwgMjI4LCAyMjUsIDI0OCwgMTEwLCAyMjgsIDIyNSwgMjUwLCAxLCAyMjcsIDY3LCA4NSwgMjE3LCAyMjIsIDY5LCAKKyAgICAyMTcsIDIyMiwgMjUyLCAyMDIsIDI1MSwgMjE0LCAyNTIsIDIwMiwgOTMsIDIsIDI1MCwgMTg4LCAyNTIsIDIwMiwgOTMsIDIsIAorICAgIDIxMywgMTY5LCAyMjIsIDE5MywgMjE1LCAxNzEsIDIsIDIyNCwgODYsIDI0NiwgMTYwLCAyNDEsIDkyLCAyNTIsIDY5LCA2OSwgCisgICAgMjIwLCAyMDMsIDIyNiwgMTMsIDg1LCAyMjAsIDIwMywgMjI2LCAxMywgMjIxLCAzMiwgMjIzLCAyMzYsIDIyMywgMTIzLCAKKyAgICAyNDQsIDE0NCwgMjQyLCA3NSwgMjUxLCAxNjcsIDg1LCA0MywgMjI1LCAxNzcsIDIzNiwgMTAwLCA4NSwgNDcsIDIyNSwgCisgICAgMTc3LCAyMzYsIDEwMCwgNjksIDQzLCAyMjUsIDE3NywgMjM2LCAxMDAsIDY5LCAxMTYsIDIyNSwgMTc3LCAyMzYsIDEwMCwgCisgICAgNjksIDQ3LCAyMjUsIDE3NywgMjM2LCAxMDAsIDY5LCAxMjEsIDIyNSwgMTc3LCAyMzYsIDEwMCwgMjIwLCA0OCwgMjIsIAorICAgIDI0OSwgMTkyLCAyNTEsIDE5LCA1MywgMjI0LCA5NywgNTMsIDI1MiwgMzEsIDUzLCAyNTEsIDgwLCAyNTQsIDE0MCwgMjI3LCAKKyAgICA1MCwgMjQ5LCAxOTMsIDI1MCwgMTcxLCAyMjMsIDIyNCwgMjQ5LCAxOTQsIDY4LCAyMzIsIDI0NywgMjQ5LCAxOTQsIDY4LCAKKyAgICAyMzUsIDIzMiwgMjE5LCAxMTAsIDIyLCAyNDksIDE5OSwgMjQ1LCAxLCA4OCwgMjU1LCAyNSwgMjIxLCAzNCwgMjQyLCAxMjUsIAorICAgIDIyLCAyMjAsIDEzNCwgMjI2LCAxMzEsIDg4LCAyMTIsIDI0NiwgMjEzLCA2MCwgMjE2LCAxODYsIDMxLCAyNDIsIDcwLCAKKyAgICAyMTYsIDE4NiwgMzEsIDIzMywgMjI5LCAyMTYsIDE4NiwgMzEsIDI0NCwgMTg1LCAyMTYsIDE4NiwgMzEsIDIxNywgMTAwLCAKKyAgICAyMTYsIDE4NiwgMzEsIDIxMywgMjI3LCAyMTYsIDE4NiwgMzEsIDIxNCwgMjcsIDIxNiwgMTg2LCAzMSwgMjMwLCAyNTUsIAorICAgIDIxNiwgMTg2LCAzMSwgMjQ2LCA0NCwgMjEzLCAyNDUsIDY4LCAyNDgsIDkxLCA2OSwgMjQ0LCA3MywgMjQ1LCAyMywgNjksIAorICAgIDIyMCwgMjEsIDI0NSwgMjMsIDg1LCAyMjAsIDIxLCAyNDUsIDIzLCA2OSwgMjE4LCAyNTMsIDIsIDIyNCwgNTksIDI0NCwgCisgICAgMTgxLCAyMjQsIDIwMiwgMjMxLCAxMiwgMjMzLCAyMDIsIDIyNCwgMjAyLCAyMzEsIDEyLCAyMzEsIDE4OCwgMjQ0LCAyMjcsIAorICAgIDUzLCAyNDYsIDQ0LCAyMzIsIDY4LCA1MywgMjM1LCAxNTUsIDIyMiwgMTYxLCAyMTUsIDEyMiwgMjI5LCAyNDIsIDIyNSwgCisgICAgMTkwLCAyNTQsIDU0LCAyMTgsIDQsIDI0MywgMTQ4LCAyNTEsIDU5LCAyMzMsIDE0MSwgMjE0LCAxMzUsIDIzMywgMTA4LCAKKyAgICAyMjIsIDEzMywgMjIyLCAyMTMsIDI1MSwgNDgsIDI1NCwgODMsIDIyNSwgMjIwLCA2OSwgMjUwLCAxNzcsIDIzNCwgMTk4LCAKKyAgICA2OSwgMjUwLCAxNzcsIDIyNCwgMTk0LCA2OSwgMjUwLCAxNzcsIDIyMywgMTMxLCA2OSwgMjUwLCAxNzcsIDI1MiwgMjMsIAorICAgIDY5LCAyNTAsIDE3NywgMjM0LCAxNTAsIDY5LCAyNTAsIDE3NywgMjI2LCAxNDEsIDg1LCAyNTAsIDE3NywgMjM0LCAxOTgsIAorICAgIDg1LCAyNTAsIDE3NywgMjI0LCAxOTQsIDg1LCAyNTAsIDE3NywgMjIzLCAxMzEsIDg1LCAyNTAsIDE3NywgMjUyLCAyMywgCisgICAgODUsIDI1MCwgMTc3LCAyMzQsIDE1MCwgODUsIDI1MCwgMTc3LCAyMjYsIDE0MSwgODUsIDIxOSwgMjIzLCAyMTksIDksIDY5LCAKKyAgICAyNDIsIDc1LCAyMTksIDksIDY5LCAyNDgsIDY2LCAyMTksIDksIDg1LCAyNTAsIDQ5LCAyMTksIDksIDY5LCAyMTksIDIyMywgCisgICAgMjE5LCA5LCA4NSwgMjQyLCA3NSwgMjE5LCA5LCA4NSwgMjQ4LCA2NiwgMjE5LCA5LCA2OSwgMjUwLCA0OSwgMjE5LCA5LCAKKyAgICAyNDEsIDkyLCAyMTksIDE4OSwgMjI0LCAyMDIsIDIyOCwgMjAxLCAyNDYsIDExLCAyMjgsIDIwMSwgMjUyLCAxMTksIDI0NiwgCisgICAgMTEsIDIyOCwgMTk2LCAyNTIsIDExOSwgMjIwLCA2NSwgMjI4LCAxOTYsIDIzMCwgMTk3LCAyNDQsIDE1NSwgNTMsIDIzMCwgCisgICAgMTk3LCAyMzAsIDc3LCA1MywgMjMwLCAxOTcsIDIyMSwgMjEsIDUzLCAyMTMsIDI1MywgMTgwLCAyNDksIDE5MywgMjQ2LCAKKyAgICA0MSwgMTgwLCAyNDksIDE5MywgMjE1LCAxNDgsIDIyNCwgMzksIDg4LCAyMjQsIDM5LCAxNiwgMzEsIDIxNiwgMjEsIDIyNSwgCisgICAgMjAyLCAyMjQsIDM5LCAxNiwgMzEsIDIxNiwgMjAsIDIyNSwgMjAyLCAyMjQsIDM5LCAxNiwgMzEsIDIxNiwgMTksIDIyNSwgCisgICAgMjAyLCAyMjQsIDM5LCAxNiwgMzEsIDIxNiwgMTgsIDIyNSwgMjAyLCAyMjQsIDM5LCAxNiwgMzEsIDIxNiwgMTcsIDIyNSwgCisgICAgMjAyLCAyMjQsIDM5LCAxNiwgMzEsIDIxNiwgMTYsIDIyNSwgMjAyLCAyMjQsIDM5LCAxNiwgMzEsIDIxNiwgMTUsIDIyNSwgCisgICAgMjAyLCAyMjQsIDM5LCAxNiwgMzEsIDI0MywgMTQ2LCAyMzIsIDE2LCA4NSwgMjE1LCAxNDgsIDIyNCwgMzksIDg4LCAyMjQsIAorICAgIDQwLCAyMjYsIDE4NSwgODgsIDIyNiwgMTYxLCAyMjYsIDE4NSwgODgsIDIyNiwgODUsIDIyNiwgMTg1LCA1MywgMjEzLCAKKyAgICAyNDMsIDg4LCAyNDgsIDU4LCAyNDUsIDIyLCAyNDgsIDU4LCAyNDUsIDIxLCAyNDgsIDU4LCAyNDUsIDIwLCAyNDgsIDU4LCAKKyAgICAyNDUsIDE5LCAyNDgsIDU4LCAyNDUsIDE4LCAyNDgsIDU4LCAyNDUsIDE3LCA2OSwgMjUwLCA5NiwgMiwgNjIsIDIyMywgCisgICAgMTgyLCA2OSwgMjUwLCA5NiwgMiwgMTE5LCAyNDcsIDE5MywgODUsIDI1MCwgOTYsIDIsIDY5LCA2MiwgMjIzLCAxODIsIDg1LCAKKyAgICAyNTAsIDk2LCAyLCAxMTksIDY5LCAyNDcsIDE5MywgMjMxLCAyNiwgMzEsIDIxMywgNjAsIDIzMSwgMjYsIDMxLCAyMTIsIAorICAgIDI0NSwgMjQ4LCA0MSwgMzEsIDI0MiwgMjI5LCAyMTMsIDYwLCAyNDgsIDQxLCAzMSwgMjMzLCAxMzUsIDIxMiwgMjQ1LCAKKyAgICAyNDgsIDQxLCAzMSwgMjMzLCAxMzUsIDIxMywgNjAsIDI0OCwgNDEsIDMxLCAyNDIsIDIyOSwgMjEyLCAyNDUsIDY5LCAyNDQsIAorICAgIDE2MiwgODUsIDI0NCwgMTYyLCAyNDIsIDEyNSwgMjIsIDIyNiwgMTYsIDI1NCwgMTU2LCAyNDksIDE5MSwgMjE4LCAxOTQsIAorICAgIDIxOSwgMTE3LCA2OCwgMjU1LCAzLCAyMjIsIDE0NywgMjU0LCAyMDQsIDI0NCwgMTQwLCAyNDMsIDE1NiwgMjE5LCAxMTcsIAorICAgIDY4LCAyNDIsIDUwLCAyNTMsIDI0MiwgODgsIDI0NCwgMTUxLCAyMjcsIDMyLCA2OSwgMjE5LCAxMDksIDEzNywgMjMzLCA3OCwgCisgICAgMjQ5LCAyMzcsIDIyMywgMTgyLCAxMzcsIDIzMywgNzgsIDI0OSwgMjM3LCAyMzMsIDE2OCwgMjE0LCAzNywgNTMsIDEyNywgCisgICAgMjE0LCAxMTUsIDUzLCAyNDYsIDE4NSwgMjQ0LCAyMjcsIDUzLCAyNDYsIDE4NSwgMjMyLCA2OCwgNTMsIDIzNiwgNjEsIAorICAgIDI0NCwgMjI3LCAyMiwgMjMyLCA2OCwgNTMsIDIzMiwgNjgsIDIyLCAyNDQsIDIyNywgNTMsIDIzMiwgNjgsIDIsIDIxOSwgCisgICAgNTksIDUzLCAyMzIsIDY4LCAyLCAyMTksIDU5LCAyMiwgMjMyLCA2OCwgMjIsIDI0NCwgMjI3LCA1MywgNjYsIDIzMiwgNjgsIAorICAgIDIsIDIxOSwgNTksIDUzLCAyMDEsIDIzMiwgNjgsIDIsIDIxOSwgNTksIDUzLCAyMzEsIDIxNywgNjksIDI1MCwgOTUsIDIzMSwgCisgICAgMjE3LCA4NSwgMjUwLCA5NSwgMjMxLCAyMTcsIDQsIDY5LCAyNTAsIDk1LCAyMzIsIDMxLCA4OCwgMjQ3LCAyNDAsIDg4LCAKKyAgICAyMTUsIDE0NiwgMjI2LCAxNjAsIDg4LCAyNTAsIDM1LCAyNDQsIDYwLCAyMTUsIDExOCwgMjI5LCAyMzcsIDI1MCwgMjE4LCAKKyAgICAyMjYsIDIyNSwgMjM1LCAxNjEsIDIxNCwgMTY3LCAyNTAsIDE1MywgODUsIDIzMSwgMTMsIDIzMywgOTUsIDIyMSwgNTYsIAorICAgIDIyMSwgOTAsIDIyNCwgMTg1LCAyMjEsIDc0LCAyMjAsIDIsIDI1MiwgMjA1LCAyNTIsIDE3MiwgOTIsIDIzNSwgMCwgNjksIAorICAgIDI0NiwgMTY5LCAyMzIsIDYzLCA2OSwgMjQ2LCAxNjksIDIzNCwgMTk4LCA4NSwgMjQ2LCAxNjksIDIzMiwgNjMsIDg1LCAKKyAgICAyNDYsIDE2OSwgMjM0LCAxOTgsIDIyMCwgOCwgMjEzLCAyMTksIDIyMCwgMTEsIDIxOCwgMjUzLCAyNTIsIDk3LCAyNTAsIAorICAgIDUxLCAyMjQsIDg1LCA4NSwgMjIwLCA3LCAyMTcsIDEwMSwgMjUwLCA1MiwgMjIsIDIyNCwgODUsIDIxNiwgNjYsIDY5LCAKKyAgICAyMjAsIDIwMywgMjI2LCAxMywgMjE2LCA2NiwgODUsIDIyMCwgMjAzLCAyMjYsIDEzLCA2OSwgMjQ4LCA2NiwgMjM2LCAxMTMsIAorICAgIDIxOSwgMTg1LCAyNDksIDE4OCwgMjMzLCAyMTMsIDI0OCwgMTAsIDI1MSwgNDQsIDIyNywgNzAsIDIyNiwgMTYsIDI1MSwgCisgICAgNDUsIDIyMCwgMzUsIDI0MiwgNTksIDIsIDY5LCAyNDksIDE5MywgMzcsIDI0OSwgMTg4LCAyMzMsIDIxMywgMjUwLCAyMTEsIAorICAgIDIyOCwgMjI5LCAyNDUsIDIwNCwgMjU0LCAxNzcsIDIyNywgOTQsIDQzLCAyMTQsIDEzLCAyMTYsIDIyMSwgODUsIDIxNiwgCisgICAgMjgsIDQzLCAyMTQsIDEzLCAyMTYsIDIyMSwgNjksIDIxNiwgMjgsIDQzLCAyMTQsIDEzLCAyMTYsIDIyMSwgODUsIDQzLCAKKyAgICAyMzMsIDIxNCwgMjMxLCAxODcsIDY5LCA0MywgMjMzLCAyMTQsIDIzMSwgMTg3LCAyNDYsIDE2NSwgMjIwLCAyOSwgNTMsIAorICAgIDExMCwgNjksIDI0NiwgMTgwLCAyMTYsIDE5NiwgNDMsIDI1MCwgNjAsIDI0NSwgMjA0LCA5MiwgMjIyLCAxOTMsIDI0NSwgOCwgCisgICAgMjQ4LCA3MiwgMjM2LCAxMTMsIDY5LCAyNTAsIDk2LCAyMzYsIDExMywgODUsIDIxOSwgMTg1LCA4NSwgMjE2LCAxNjMsIAorICAgIDIyMywgMjQ2LCA0MywgMjQ1LCAyMDMsIDIyMywgMjQ2LCA0MywgMjQ1LCAyMDIsIDI1MywgMjU0LCAxNiwgMzEsIDIxNSwgCisgICAgMTIyLCAxMTAsIDI1MCwgOTYsIDIsIDIxOSwgNTksIDIyLCAxMTksIDE4MSwgNTAsIDIyNiwgMTAwLCAyMjMsIDE3OSwgMjM2LCAKKyAgICA2MywgMjI2LCAxMDAsIDIzMywgMTY1LCAyMzYsIDYzLCAyMjYsIDEwMCwgMjM2LCA1MiwgMjI2LCAxMDAsIDg1LCAyNDksIAorICAgIDE5NCwgMjI3LCAxMDAsIDIyMCwgMjMwLCAyMjAsIDIxOCwgMjIwLCAxNzQsIDI1MCwgMTIxLCAyNTEsIDI2LCAyNDIsIDYsIAorICAgIDIyMCwgNzMsIDI0MywgMTU3LCAyMTMsIDIxOSwgMjQxLCA3MiwgMjQzLCAxNTcsIDIsIDI0MiwgMTE1LCAyMzIsIDUxLCAxNiwgCisgICAgMzEsIDIzMywgOTksIDIzMCwgMjU1LCAyMTUsIDE3MSwgMjI3LCAxMDAsIDI0MiwgMjIxLCAyNDQsIDEwMiwgMjQ0LCAxNjMsIAorICAgIDIzNiwgMTEzLCAyNDEsIDE2NCwgMjQ0LCAyMTgsIDIyMiwgMjA5LCA0MiwgMjQ0LCAxMDEsIDI0OSwgMjIxLCAyMjAsIDUxLCAKKyAgICAyNDAsIDIyMiwgMjIwLCA1NCwgMjI2LCA4MCwgMiwgMjUyLCAyMDUsIDIxNywgMjA4LCAyMzUsIDI0NywgMjUyLCAxOTIsIAorICAgIDg4LCAyNDIsIDc4LCAyNDIsIDIzMSwgODgsIDI0NCwgNjcsIDIyNSwgNjQsIDI0OSwgMTY3LCAyMjcsIDEwMCwgODUsIDIxOSwgCisgICAgMTg1LCA2OSwgMjQ0LCAxNjMsIDIsIDIwMSwgMjMxLCAxMDcsIDg1LCAyMTksIDYwLCAyMTUsIDEzNywgMjUyLCA5LCAyMjIsIAorICAgIDEzNSwgODUsIDIyMiwgMTM1LCAyMzIsIDIzNywgMjUyLCA5LCAyMjIsIDEzNSwgNjksIDIyMiwgMTM1LCA2OSwgMTEwLCAKKyAgICAyNTAsIDE4OSwgNzksIDIxNywgMjIzLCAyMzMsIDI0LCA1MywgMjE4LCAxNywgMjQ2LCAxNjQsIDI1NCwgMjI2LCAyNDUsIAorICAgIDE5OSwgMjI0LCA4MywgMjQ0LCAxNzQsIDIyNCwgODMsIDI0MiwgMTE4LCAyMTQsIDE1NywgMjQyLCAxMTgsIDIxMywgMTg5LCAKKyAgICAyNDIsIDExOCwgMjMyLCAyMzcsIDQ3LCAyMjYsIDEwOSwgMjI2LCAxMDksIDIxNSwgMTM3LCA0NywgMjI2LCAxMDksIDY5LCAKKyAgICAyMjksIDEyNSwgODUsIDIyOSwgMTI1LCAyNTAsIDE4OSwgNzksIDExMCwgMjUwLCAxODksIDc5LCAyMzAsIDIyNCwgMjEzLCAKKyAgICAxNjksIDExMCwgMjMwLCAyMjQsIDIxMywgMTY5LCAyNTIsIDIwMiwgMjEzLCAxNjksIDExMCwgMjUyLCAyMDIsIDIxMywgCisgICAgMTY5LCAyMjcsIDMyLCAyNSwgMjQ5LCAxOTMsIDExMCwgMjUsIDI0OSwgMTkzLCAyMTAsIDI1MCwgMjMyLCAyNDksIDE5MywgCisgICAgMTEwLCAyMTAsIDI1MCwgMjMyLCAyNDksIDE5MywgNywgMjQ5LCAxOTMsIDIyMSwgMzYsIDY5LCA3LCAyNDksIDE5MywgMjI3LCAKKyAgICAzMiwgNywgMjQ5LCAxOTMsIDIzMiwgNjUsIDI0OSwgMTkzLCAyMTksIDExMCwgNjgsIDI0OCwgMjE2LCAyNDQsIDEwMSwgCisgICAgMjE3LCAyMzYsIDI1NCwgMywgMjQ0LCAxMDEsIDI1MiwgMjAzLCAyNTQsIDMsIDExMCwgMjQ0LCAxMDEsIDI1MiwgMjAzLCAKKyAgICAyNTQsIDMsIDI0NCwgMTAxLCAyNTAsIDQ3LCAyNTQsIDMsIDg1LCAyNDQsIDEwMSwgMjI1LCAxNzksIDIxOSwgMTA5LCA2OSwgCisgICAgMjQ0LCAxMDEsIDIyNSwgMTc5LCAyMTksIDEwOSwgMjE5LCAyMTgsIDIxOSwgNjUsIDIyNywgMzIsIDY5LCAyMTksIDEwOSwgCisgICAgMzcsIDY5LCAyMTksIDEwOSwgMjEwLCAyNTAsIDIzMiwgODUsIDIxOSwgMTA5LCA4NSwgMjUwLCAyMzIsIDY5LCAyMTksIAorICAgIDEwOSwgMjI3LCAzMiwgODUsIDIxOSwgMTA5LCAxMTAsIDIyNywgMzIsIDg1LCAyMTksIDEwOSwgMjI1LCAyMjgsIDIxOSwgCisgICAgMTA5LCAyMjEsIDM2LCA2OSwgMjE5LCAxMDksIDExMCwgMjU0LCAzLCAyMTAsIDI1MCwgMjMyLCAyNTQsIDMsIDI0NiwgMTUsIAorICAgIDIxOSwgMTk1LCAyNTQsIDMsIDI0NiwgMTUsIDIyNSwgMTc5LCA4NSwgMjE5LCAxMDksIDI0NiwgMTUsIDIyNSwgMTc5LCAKKyAgICAyMjUsIDIyOCwgMjE5LCAxMDksIDIyMCwgNzIsIDIyNSwgMTc5LCA4NSwgMjE5LCAxMDksIDI0NiwgMTUsIDIyNSwgMTc5LCAKKyAgICAyMjQsIDQxLCA4NSwgMjE5LCAxMDksIDExMCwgMjQ2LCAxNSwgMjI1LCAxNzksIDIyNCwgNDEsIDg1LCAyMTksIDEwOSwgCisgICAgMjE2LCA0OSwgMjI1LCAxNzksIDg1LCAyMTksIDEwOSwgMjIwLCA2NywgMjI1LCAxNzksIDI1NCwgMywgMjE3LCAyMzYsIAorICAgIDI1NCwgMywgMjEwLCAyNTAsIDIzMiwgMjE3LCAyMzYsIDI1NCwgMywgMTEwLCAyMTcsIDIzNiwgMjU0LCAzLCAyMjAsIDcyLCAKKyAgICAyMjYsIDY5LCA4NSwgMjIsIDY5LCAyNDQsIDE0MywgODUsIDI0NCwgMTQzLCA2OSwgMjQ0LCAxNDMsIDI0NiwgMTUsIDIyNiwgCisgICAgNjksIDIyNywgMzIsIDg1LCAyNDQsIDE0MywgMzcsIDIxMCwgMjUwLCAyMzIsIDI0NiwgMTUsIDIyNSwgMTc5LCAyMTksIAorICAgIDEwOSwgMTEwLCAyMTcsIDIzNiwgMjI1LCAyMjgsIDI1NCwgMywgMjIwLCA5LCAyMTcsIDcyLCAyMTYsIDE4OSwgMjIwLCA5LCAKKyAgICAxMTAsIDI1MCwgMTc0LCAyMjAsIDksIDIxOSwgMjIwLCAxMTAsIDIxOSwgMjIwLCAyNTIsIDIwMywgMjU0LCAzLCAyNDYsIAorICAgIDE1LCAyMTcsIDIzNiwgMjI1LCA5MSwgMjU0LCAzLCAxMTAsIDI0NiwgMTUsIDIxNywgMjM2LCAyMjUsIDkxLCAyNTQsIDMsIAorICAgIDI0OSwgMTk0LCA3OSwgMjIxLCAzNiwgNjksIDI1MCwgOTUsIDE1MCwgOTIsIDI0OSwgMTk0LCA3OSwgMjMyLCAyMzcsIDQ3LCAKKyAgICAyNDYsIDE2MiwgNjksIDIxOSwgMTg1LCAyMTUsIDEzNywgNDcsIDI0NiwgMTYyLCA2OSwgMjE5LCAxODUsIDIzMiwgMjM3LCAKKyAgICA0NywgMjIxLCAzNiwgNjksIDIxOSwgMTg1LCAyMTUsIDEzNywgNDcsIDIyMSwgMzYsIDY5LCAyMTksIDE4NSwgODUsIDIyNCwgCisgICAgMTkzLCAxNTYsIDIyNywgNTIsIDY5LCAyMjQsIDE5MywgMTU2LCAyMjcsIDUyLCA2OSwgMjQ1LCAxMTksIDE1NiwgMjI3LCAKKyAgICA1MiwgODUsIDI0OCwgNjYsIDIzMSwgNjUsIDY5LCAyMTMsIDE2OSwgMTEwLCAyNDUsIDExOSwgMTU2LCA4OCwgMTgyLCA2NiwgCisgICAgMTM0LCAyMzEsIDIxNywgNjYsIDEzNCwgMTEwLCA2NiwgMTM0LCAxMTAsIDIyMCwgMTAwLCAyMTYsIDY2LCAyNTAsIDI0LCAKKyAgICAyMjQsIDE3OCwgMTU2LCAyMjcsIDUyLCAxMTAsIDIyMCwgMTAwLCAyNTAsIDI0LCAyMjQsIDE3OCwgMTU2LCAyMjcsIDUyLCAKKyAgICAxMTAsIDUyLCAyMTYsIDY2LCAyNTAsIDI0LCAyMjQsIDE3OCwgMTU2LCAyMjcsIDUyLCAxMTAsIDUyLCAyNTAsIDI0LCAyMjQsIAorICAgIDE3OCwgMTU2LCAyMjcsIDUyLCAxMTAsIDExNywgMjIwLCAxMDAsIDI1MCwgMjQsIDIyNCwgMTc4LCAxNTYsIDIyNywgNTIsIAorICAgIDExMCwgMTE3LCA1MiwgMjUwLCAyNCwgMjI0LCAxNzgsIDE1NiwgMjI3LCA1MiwgMjQ5LCAxNTYsIDIxOSwgOTQsIDIyNiwgCisgICAgMTgwLCA1LCAyMjcsIDUyLCAxMTAsIDI0NSwgMTE5LCAxNTYsIDIyNywgNTIsIDExMCwgMjQyLCA3NSwgMjQ1LCAxMTksIAorICAgIDE1NiwgMjI3LCA1MiwgMTEwLCA4NSwgMjQyLCA3NCwgMjIzLCAxMjMsIDExMCwgODUsIDI0MiwgNzUsIDI1MSwgMTY3LCAKKyAgICAyNDQsIDE0NCwgMjQyLCA3NCwgMjIzLCAxMjMsIDI0NCwgMTQ0LCAyNDIsIDc1LCAyNTEsIDE2NywgMjMxLCAyMTcsIDQzLCAKKyAgICAyMjYsIDE2OSwgMjI3LCA1MiwgMjMxLCAyMTcsIDQ3LCAyMjYsIDE2OSwgMjI3LCA1MiwgMjMxLCAyMTcsIDI0NCwgMTUyLCAKKyAgICA0MywgMjI2LCAxNjksIDIyNywgNTIsIDIzMSwgMjE3LCAyNDQsIDE1MiwgNDcsIDIyNiwgMTY5LCAyMjcsIDUyLCAyMzEsIAorICAgIDIxNywgMjMzLCAxNjQsIDI1NCwgMTQ2LCAyNTEsIDIxMCwgMjI3LCA1MiwgMjMxLCAyMTcsIDIyMywgMTc4LCAyNTQsIDE0NiwgCisgICAgMjUxLCAyMTAsIDIyNywgNTIsIDExMCwgMjMzLCAxNjQsIDI1NCwgMTQ2LCAyMjQsIDE3OCwgMTU2LCAyMjcsIDUyLCAxMTAsIAorICAgIDIyMywgMTc4LCAyNTQsIDE0NiwgMjI0LCAxNzgsIDE1NiwgMjI3LCA1MiwgMTEwLCAyMzMsIDE2NCwgMjU0LCAxNDYsIDI1MSwgCisgICAgMjEwLCAyMjcsIDUyLCAxMTAsIDIyMywgMTc4LCAyNTQsIDE0NiwgMjUxLCAyMTAsIDIyNywgNTIsIDE4MiwgNDMsIDIxNiwgCisgICAgMjMyLCAyMjAsIDI1NCwgMjUxLCAyMTAsIDIyNywgNTIsIDE4MiwgNDcsIDIxNiwgMjMyLCAyMjAsIDI1NCwgMjUxLCAyMTAsIAorICAgIDIyNywgNTIsIDIzMSwgMjE3LCA0MywgMjQ5LCAxNjMsIDI1MSwgMjEwLCAyMjcsIDUyLCAyMzEsIDIxNywgNDcsIDI0OSwgCisgICAgMTYzLCAyNTEsIDIxMCwgMjI3LCA1MiwgMjQ4LCAyMSwgMTUwLCAzNywgMjEsIDExOCwgMjQ4LCAyMSwgMTUwLCAzNywgMjEsIAorICAgIDExMiwgMjQ4LCAyMSwgMTUwLCAzNywgMjEsIDE3MCwgMjQ4LCAyMSwgMTUwLCAzNywgMjEsIDE2NywgMjQ4LCAyMSwgMTUwLCAKKyAgICAzNywgMjEsIDE4NSwgMjQ4LCAyMSwgMTUwLCAzNywgMjEsIDE5MiwgMjQ4LCAyMSwgMTUwLCAzNywgMjEsIDIwMCwgMjQ4LCAKKyAgICAyMSwgMTUwLCAzNywgMjEsIDE5OCwgMjQ4LCAyMSwgMTUwLCAzNywgMjEsIDIwMywgMjQ4LCAyMSwgMTUwLCAzNywgNTEsIAorICAgIDIxNywgMjEzLCAyNDgsIDIxLCAzNywgMzUsIDIxLCAxMTgsIDI0OCwgMjEsIDM3LCAzNSwgMjEsIDExMiwgMjQ4LCAyMSwgCisgICAgMzcsIDM1LCAyMSwgMTcwLCAyNDgsIDIxLCAzNywgMzUsIDIxLCAxNjcsIDI0OCwgMjEsIDM3LCAzNSwgMjEsIDE4NSwgMjQ4LCAKKyAgICAyMSwgMzcsIDM1LCAyMSwgMTkyLCAyNDgsIDIxLCAzNywgMzUsIDIxLCAyMDAsIDI0OCwgMjEsIDM3LCAzNSwgMjEsIDE5OCwgCisgICAgMjQ4LCAyMSwgMzcsIDM1LCAyMSwgMjAzLCAyNDgsIDIxLCAzNywgMzUsIDUxLCAyMTcsIDIxMywgMjQ4LCAyMSwgMTUwLCAKKyAgICAzNywgMzUsIDIxLCAxMTgsIDI0OCwgMjEsIDE1MCwgMzcsIDM1LCAyMSwgMTEyLCAyNDgsIDIxLCAxNTAsIDM3LCAzNSwgMjEsIAorICAgIDE3MCwgMjQ4LCAyMSwgMTUwLCAzNywgMzUsIDIxLCAxNjcsIDI0OCwgMjEsIDE1MCwgMzcsIDM1LCAyMSwgMTg1LCAyNDgsIAorICAgIDIxLCAxNTAsIDM3LCAzNSwgMjEsIDE5MiwgMjQ4LCAyMSwgMTUwLCAzNywgMzUsIDIxLCAyMDAsIDI0OCwgMjEsIDE1MCwgCisgICAgMzcsIDM1LCAyMSwgMTk4LCAyNDgsIDIxLCAxNTAsIDM3LCAzNSwgMjEsIDIwMywgMjQ4LCAyMSwgMTUwLCAzNywgMzUsIDUxLCAKKyAgICAyMTcsIDIxMywgMTEwLCAyMTMsIDIzNCwgOTYsIDcxLCAxMTAsIDk1LCA1MywgMTEwLCAyMzEsIDY1LCA1MywgMTEwLCAyNDcsIAorICAgIDI0MiwgNTMsIDExMCwgMjE5LCAyMzQsIDI0NiwgNDEsIDcxLCAxMTAsIDk2LCA3MSwgMTEwLCAyMjgsIDIxMCwgMjQ2LCA0MSwgCisgICAgNzEsIDI0NiwgMTczLCAyMjUsIDE4MSwgOTYsIDcxLCAxMTAsIDIyMywgMTIwLCA5NiwgNzEsIDIxNiwgMTk1LCA5NiwgNzEsIAorICAgIDExMCwgMjE2LCAxOTUsIDk2LCA3MSwgMjQ4LCAyMjIsIDIxNiwgMTk1LCA5NiwgNzEsIDExMCwgMjQ4LCAyMjIsIDIxNiwgCisgICAgMTk1LCA5NiwgNzEsIDg1LCA5NiwgNzEsIDIxNywgMTEwLCAyMTYsIDIzOCwgOTYsIDI1NCwgMzUsIDIxNywgMTEwLCAyNTEsIAorICAgIDIyNCwgOTYsIDI1NCwgMzUsIDg1LCA5NiwgMjU0LCAzNSwgMTEwLCA4NSwgMjQ5LCAxNTYsIDI0NiwgMTc5LCAyMiwgOTYsIAorICAgIDcxLCAxMTAsIDg1LCAyNDksIDE1NiwgMjE1LCAxMzAsIDIyLCA5NiwgNzEsIDIxOSwgMTgyLCA4NSwgOTYsIDcxLCAxMTAsIAorICAgIDI1MCwgMTEsIDg1LCA5NiwgNzEsIDIyMywgMTc3LCA2OSwgOTYsIDcxLCAyMzMsIDE2MywgNjksIDk2LCA3MSwgMjUyLCAKKyAgICAyMjcsIDIyMSwgMzYsIDY5LCA5NiwgNzEsIDI0NCwgNzUsIDIyMSwgMzYsIDY5LCA5NiwgNzEsIDExMCwgMjMyLCAyMzcsIAorICAgIDIyMywgMTc2LCA2OSwgOTYsIDcxLCAxMTAsIDIxNSwgMTM3LCAyMjMsIDE3NiwgNjksIDk2LCA3MSwgMjI4LCAyMDMsIDIzMiwgCisgICAgMjM3LCAyMjMsIDE3NiwgNjksIDk2LCA3MSwgMjQ5LCAxNjMsIDIzMiwgMjUxLCAyMjgsIDIwMywgMjE1LCAxMzcsIDIyMywgCisgICAgMTc2LCA2OSwgOTYsIDcxLCAzNywgMTEwLCA2OSwgOTYsIDcxLCAyMTMsIDI0MCwgOTYsIDcxLCAyNTIsIDEyLCAyMTksIAorICAgIDIzNCwgMjQ2LCA0MSwgNzEsIDI1MiwgMTIsIDk2LCA3MSwgMjUyLCAxMiwgMjI4LCAyMTAsIDI0NiwgNDEsIDcxLCAxMTAsIAorICAgIDI1MiwgMTIsIDIxOSwgMjM0LCAyNDYsIDQxLCA3MSwgMTEwLCAyNTIsIDEyLCA5NiwgNzEsIDExMCwgMjUyLCAxMiwgMjI4LCAKKyAgICAyMTAsIDI0NiwgNDEsIDcxLCAyMTcsIDIzOCwgOTYsIDcxLCAxMTAsIDIxNywgMjM3LCA5NiwgNzEsIDIxNCwgNSwgOTYsIAorICAgIDcxLCAxMTAsIDIxNCwgNSwgOTYsIDcxLCAyMjcsIDc1LCA5NiwgNzEsIDUyLCAyNDksIDE2MywgMjMyLCAyNTEsIDEzNywgCisgICAgMjQ4LCAzMSwgMjU0LCAxNDUsIDY5LCAyMTYsIDE5NywgMjQ5LCAyNDksIDQsIDY5LCAyMTYsIDE5NiwgMjI2LCA4MywgMjEwLCAKKyAgICAyMTksIDIyLCAyMTAsIDIxOCwgMjM1LCA0MywgMjIzLCAyOCwgMjUyLCAyMTgsIDI0OCwgMTMyLCA0NywgMjIzLCAyOCwgCisgICAgMjUyLCAyMTgsIDI0OCwgMTMyLCAxNzEsIDIsIDYyLCAyMzYsIDczLCAyMjMsIDIzNywgMjE5LCAyNTEsIDIyNSwgMTE3LCAKKyAgICAyMTksIDIyLCAyMTgsIDIzNiwgMjI1LCAxMTcsIDIxOSwgMjUwLCA2NiwgMjUyLCAxODcsIDIsIDIwMSwgOTEsIDE4NywgCisgICAgMjQ3LCAyNDEsIDkyLCAyMzMsIDE3LCAyNTQsIDE1NCwgOTIsIDIzMywgMTcsIDIyNywgNjIsIDY5LCAyNDgsIDY2LCAyLCAKKyAgICAyNTAsIDIzMCwgMjQ3LCAxOTUsIDIyLCAyLCAyNDcsIDE5NSwgMjQ1LCAyNDgsIDY4LCAyMjcsIDczLCAyMTUsIDEyOSwgCisgICAgMjMyLCAyMzcsIDQ3LCAyNDksIDIyMywgMiwgMjQ3LCAxOTUsIDIxNSwgMTM3LCA0MywgMjQ5LCAyMjMsIDIsIDI0NywgMTk1LCAKKyAgICA0MywgMjI3LCAzNCwgMjM1LCAxODMsIDQ3LCAyMjcsIDM0LCAyMzUsIDE4MywgMjQ0LCA2NCwgMjI3LCAzNCwgMjM1LCAxODMsIAorICAgIDIzMywgMjA3LCAxMTYsIDIxOCwgNTAsIDIzMywgMjA3LCAxMjEsIDIxOCwgNTAsIDQzLCAyMiwgNDcsIDUyLCAyMTYsIDY1LCAKKyAgICA0MywgMjIsIDQ3LCAyMTgsIDUwLCA0MywgMjMwLCAyMjcsIDE4NywgNDcsIDIxOCwgNTAsIDE4NywgNDMsIDIxOCwgNTAsIAorICAgIDExNiwgMjE4LCA1MSwgMiwgMjUwLCA5NiwgNTAsIDIzMiwgMjM0LCAyNDcsIDI0NiwgMjUxLCAxMzIsIDIwMSwgMjIzLCA3MCwgCisgICAgNjksIDI1MCwgMTAsIDI0OCwgNjUsIDY5LCAyNTAsIDEwLCAyNDgsIDY2LCAyLCAxMzUsIDIxNywgODEsIDY5LCAyNTAsIDEwLCAKKyAgICAyNDgsIDY2LCAyLCA5NiwgMjE3LCA4MSwgNjksIDQyLCAyLCAxMzUsIDIxNywgODEsIDY5LCA0MiwgMiwgOTYsIDIxNywgODEsIAorICAgIDE0LCA0MywgNjksIDQyLCAxMjUsIDE0LCA0NywgNjksIDQyLCAxMjUsIDE0LCA0MywgMjU0LCAxNDYsIDEyNSwgMTQsIDQ3LCAKKyAgICAyNTQsIDE0NiwgMTI1LCAxNCwgNDMsIDUyLCAyNTQsIDE0NiwgMTI1LCAxNCwgNDcsIDUyLCAyNTQsIDE0NiwgMTI1LCAxNCwgCisgICAgNDMsIDY5LCAyMTYsIDIzMiwgMjIwLCAyNTQsIDEyNSwgMTQsIDQ3LCA2OSwgMjE2LCAyMzIsIDIyMCwgMjU0LCAxMjUsIDE0LCAKKyAgICA0MywgMjQ0LCAxNTIsIDIyNiwgMTY4LCAxNCwgNDcsIDI0NCwgMTUyLCAyMjYsIDE2OCwgMjE1LCAxMzAsIDIyNCwgMjA0LCAKKyAgICA3MSwgMjQ2LCAxNzksIDIyNCwgMjA0LCA3MSwgMjU0LCAxMjYsIDI0MywgMTk0LCAyNTAsIDk2LCA3MSwgMjUwLCA2MiwgCisgICAgMjQzLCAxOTQsIDI1MCwgOTYsIDcxLCA0NywgODAsIDIsIDM3LCAyMjUsIDE5MiwgMTg3LCAxMzUsIDcxLCAxODcsIDk2LCAKKyAgICA3MSwgMTg3LCA0MywgNDcsIDcxLCAxODcsIDEzNSwgNTIsIDcxLCAxODcsIDk2LCA1MiwgNzEsIDE4NywgNDMsIDQ3LCA1MiwgCisgICAgNzEsIDE4NywgMTM1LCA4MCwgMjQ0LCA3NywgMTM0LCAxODcsIDk2LCA4MCwgMjQ0LCA3NywgMTM0LCAxODcsIDEzNSwgNTIsIAorICAgIDgwLCAyNDQsIDc3LCAxMzQsIDE4NywgOTYsIDUyLCA4MCwgMjQ0LCA3NywgMTM0LCAxODcsIDk2LCAyMTksIDE4MSwgNzEsIAorICAgIDQ1LCA0NiwgMjUyLCA3LCA0NSwgNDYsIDI0NywgMTkyLCA0NSwgNDYsIDI0NywgNjQsIDQ1LCA0NiwgMjQ3LCAxOTEsIDQ1LCAKKyAgICA0NiwgMjQ3LCAwLCA0NSwgNDYsIDI0NywgMTI3LCA0NSwgNDYsIDI0NywgNjMsIDQ1LCA0NiwgMjQ3LCAxOTAsIDQ1LCA0NiwgCisgICAgMjQ2LCAyMjQsIDQ1LCA0NiwgMjQ3LCA5NSwgNDUsIDQ2LCAyNDcsIDMxLCA0NSwgNDYsIDI0NywgMTU4LCA0NSwgNDYsIAorICAgIDI0NiwgMjU1LCA0NSwgNDYsIDI0NywgMTI2LCA0NSwgNDYsIDI0NywgNjIsIDQ1LCA0NiwgMjQ3LCAxODksIDQ1LCA0NiwgCisgICAgMjQ2LCAyMDgsIDQ1LCA0NiwgMjQ3LCA3OSwgNDUsIDQ2LCAyNDcsIDE1LCA0NSwgNDYsIDI0NywgMTQyLCA0NSwgNDYsIAorICAgIDI0NiwgMjM5LCA0NSwgNDYsIDI0NywgMTEwLCA0NSwgNDYsIDI0NywgNDYsIDQ1LCA0NiwgMjQ3LCAxNzMsIDQ1LCA0NiwgCisgICAgMjQ2LCAyMjMsIDQ1LCA0NiwgMjQ3LCA5NCwgNDUsIDQ2LCAyNDcsIDMwLCA0NSwgNDYsIDI0NywgMTU3LCA0NSwgNDYsIAorICAgIDI0NiwgMjU0LCA0NSwgNDYsIDI0NywgMTI1LCA0NSwgNDYsIDI0NywgNjEsIDQ1LCA0NiwgMjQ3LCAxODgsIDQ1LCA0NiwgCisgICAgMjQ2LCAyMDAsIDQ1LCA0NiwgMjQ3LCA3MSwgNDUsIDQ2LCAyNDcsIDcsIDQ1LCA0NiwgMjQ3LCAxMzQsIDQ1LCA0NiwgMjQ2LCAKKyAgICAyMzEsIDQ1LCA0NiwgMjQ3LCAxMDIsIDQ1LCA0NiwgMjQ3LCAzOCwgNDUsIDQ2LCAyNDcsIDE2NSwgNDUsIDQ2LCAyNDYsIAorICAgIDIxNSwgNDUsIDQ2LCAyNDcsIDg2LCA0NSwgNDYsIDI0NywgMjIsIDQ1LCA0NiwgMjQ3LCAxNDksIDQ1LCA0NiwgMjQ2LCAKKyAgICAyNDYsIDQ1LCA0NiwgMjQ3LCAxMTcsIDQ1LCA0NiwgMjQ3LCA1MywgNDUsIDQ2LCAyNDcsIDE4MCwgNDUsIDQ2LCAyNDYsIAorICAgIDIwNywgNDUsIDQ2LCAyNDcsIDc4LCA0NSwgNDYsIDI0NywgMTQsIDQ1LCA0NiwgMjQ3LCAxNDEsIDQ1LCA0NiwgMjQ2LCAKKyAgICAyMzgsIDQ1LCA0NiwgMjQ3LCAxMDksIDQ1LCA0NiwgMjQ3LCA0NSwgNDUsIDQ2LCAyNDcsIDE3MiwgNDUsIDQ2LCAyNDYsIAorICAgIDIyMiwgNDUsIDQ2LCAyNDcsIDkzLCA0NSwgNDYsIDI0NywgMjksIDQ1LCA0NiwgMjQ3LCAxNTYsIDQ1LCA0NiwgMjQ2LCAKKyAgICAyNTMsIDQ1LCA0NiwgMjQ3LCAxMjQsIDQ1LCA0NiwgMjQ3LCA2MCwgNDUsIDQ2LCAyNDcsIDE4NywgNDUsIDQ2LCAyNDYsIAorICAgIDE5NiwgNDUsIDQ2LCAyNDcsIDY3LCA0NSwgNDYsIDI0NywgMywgNDUsIDQ2LCAyNDcsIDEzMCwgNDUsIDQ2LCAyNDYsIDIyNywgCisgICAgNDUsIDQ2LCAyNDcsIDk4LCA0NSwgNDYsIDI0NywgMzQsIDQ1LCA0NiwgMjQ3LCAxNjEsIDQ1LCA0NiwgMjQ2LCAyMTEsIDQ1LCAKKyAgICA0NiwgMjQ3LCA4MiwgNDUsIDQ2LCAyNDcsIDE4LCA0NSwgNDYsIDI0NywgMTQ1LCA0NSwgNDYsIDI0NiwgMjQyLCA0NSwgNDYsIAorICAgIDI0NywgMTEzLCA0NSwgNDYsIDI0NywgNDksIDQ1LCA0NiwgMjQ3LCAxNzYsIDQ1LCA0NiwgMjQ2LCAyMDMsIDQ1LCA0NiwgCisgICAgMjQ3LCA3NCwgNDUsIDQ2LCAyNDcsIDEwLCA0NSwgNDYsIDI0NywgMTM3LCA0NSwgNDYsIDI0NiwgMjM0LCA0NSwgNDYsIAorICAgIDI0NywgMTA1LCA0NSwgNDYsIDI0NywgNDEsIDQ1LCA0NiwgMjQ3LCAxNjgsIDQ1LCA0NiwgMjQ2LCAyMTgsIDQ1LCA0NiwgCisgICAgMjQ3LCA4OSwgNDUsIDQ2LCAyNDcsIDI1LCA0NSwgNDYsIDI0NywgMTUyLCA0NSwgNDYsIDI0NiwgMjQ5LCA0NSwgNDYsIAorICAgIDI0NywgMTIwLCA0NSwgNDYsIDI0NywgNTYsIDQ1LCA0NiwgMjQ3LCAxODMsIDQ1LCA0NiwgMjQ2LCAxOTksIDQ1LCA0NiwgCisgICAgMjQ3LCA3MCwgNDUsIDQ2LCAyNDcsIDYsIDQ1LCA0NiwgMjQ3LCAxMzMsIDQ1LCA0NiwgMjQ2LCAyMzAsIDQ1LCA0NiwgMjQ3LCAKKyAgICAxMDEsIDQ1LCA0NiwgMjQ3LCAzNywgNDUsIDQ2LCAyNDcsIDE2NCwgNDUsIDQ2LCAyNDYsIDIxNCwgNDUsIDQ2LCAyNDcsIAorICAgIDg1LCA0NSwgNDYsIDI0NywgMjEsIDQ1LCA0NiwgMjQ3LCAxNDgsIDQ1LCA0NiwgMjQ2LCAyNDUsIDQ1LCA0NiwgMjQ3LCAKKyAgICAxMTYsIDQ1LCA0NiwgMjQ3LCA1MiwgNDUsIDQ2LCAyNDcsIDE3OSwgNDUsIDQ2LCAyNDYsIDIwNiwgNDUsIDQ2LCAyNDcsIAorICAgIDc3LCA0NSwgNDYsIDI0NywgMTMsIDQ1LCA0NiwgMjQ3LCAxNDAsIDQ1LCA0NiwgMjQ2LCAyMzcsIDQ1LCA0NiwgMjQ3LCAKKyAgICAxMDgsIDQ1LCA0NiwgMjQ3LCA0NCwgNDUsIDQ2LCAyNDcsIDE3MSwgNDUsIDQ2LCAyNDYsIDIyMSwgNDUsIDQ2LCAyNDcsIAorICAgIDkyLCA0NSwgNDYsIDI0NywgMjgsIDQ1LCA0NiwgMjQ3LCAxNTUsIDQ1LCA0NiwgMjQ2LCAyNTIsIDQ1LCA0NiwgMjQ3LCAKKyAgICAxMjMsIDQ1LCA0NiwgMjQ3LCA1OSwgNDUsIDQ2LCAyNDcsIDE4NiwgNDUsIDQ2LCAyNDYsIDE5NCwgNDUsIDQ2LCAyNDcsIAorICAgIDY1LCA0NSwgNDYsIDI0NywgMSwgNDUsIDQ2LCAyNDcsIDEyOCwgNDUsIDQ2LCAyNDYsIDIyNSwgNDUsIDQ2LCAyNDcsIDk2LCAKKyAgICA0NSwgNDYsIDI0NywgMzIsIDQ1LCA0NiwgMjQ3LCAxNTksIDQ1LCA0NiwgMjQ2LCAyMDksIDQ1LCA0NiwgMjQ3LCA4MCwgNDUsIAorICAgIDQ2LCAyNDcsIDE2LCA0NSwgNDYsIDI0NywgMTQzLCA0NSwgNDYsIDI0NiwgMjQwLCA0NSwgNDYsIDI0NywgMTExLCA0NSwgCisgICAgNDYsIDI0NywgNDcsIDQ1LCA0NiwgMjQ3LCAxNzQsIDQ1LCA0NiwgMjQ2LCAyMDEsIDQ1LCA0NiwgMjQ3LCA3MiwgNDUsIDQ2LCAKKyAgICAyNDcsIDgsIDQ1LCA0NiwgMjQ3LCAxMzUsIDQ1LCA0NiwgMjQ2LCAyMzIsIDQ1LCA0NiwgMjQ3LCAxMDMsIDQ1LCA0NiwgCisgICAgMjQ3LCAzOSwgNDUsIDQ2LCAyNDcsIDE2NiwgNDUsIDQ2LCAyNDYsIDIxNiwgNDUsIDQ2LCAyNDcsIDg3LCA0NSwgNDYsIAorICAgIDI0NywgMjMsIDQ1LCA0NiwgMjQ3LCAxNTAsIDQ1LCA0NiwgMjQ2LCAyNDcsIDQ1LCA0NiwgMjQ3LCAxMTgsIDQ1LCA0NiwgCisgICAgMjQ3LCA1NCwgNDUsIDQ2LCAyNDcsIDE4MSwgNDUsIDQ2LCAyNDYsIDE5NywgNDUsIDQ2LCAyNDcsIDY4LCA0NSwgNDYsIAorICAgIDI0NywgNCwgNDUsIDQ2LCAyNDcsIDEzMSwgNDUsIDQ2LCAyNDYsIDIyOCwgNDUsIDQ2LCAyNDcsIDk5LCA0NSwgNDYsIDI0NywgCisgICAgMzUsIDQ1LCA0NiwgMjQ3LCAxNjIsIDQ1LCA0NiwgMjQ2LCAyMTIsIDQ1LCA0NiwgMjQ3LCA4MywgNDUsIDQ2LCAyNDcsIDE5LCAKKyAgICA0NSwgNDYsIDI0NywgMTQ2LCA0NSwgNDYsIDI0NiwgMjQzLCA0NSwgNDYsIDI0NywgMTE0LCA0NSwgNDYsIDI0NywgNTAsIAorICAgIDQ1LCA0NiwgMjQ3LCAxNzcsIDQ1LCA0NiwgMjQ2LCAyMDQsIDQ1LCA0NiwgMjQ3LCA3NSwgNDUsIDQ2LCAyNDcsIDExLCA0NSwgCisgICAgNDYsIDI0NywgMTM4LCA0NSwgNDYsIDI0NiwgMjM1LCA0NSwgNDYsIDI0NywgMTA2LCA0NSwgNDYsIDI0NywgNDIsIDQ1LCAKKyAgICA0NiwgMjQ3LCAxNjksIDQ1LCA0NiwgMjQ2LCAyMTksIDQ1LCA0NiwgMjQ3LCA5MCwgNDUsIDQ2LCAyNDcsIDI2LCA0NSwgNDYsIAorICAgIDI0NywgMTUzLCA0NSwgNDYsIDI0NiwgMjUwLCA0NSwgNDYsIDI0NywgMTIxLCA0NSwgNDYsIDI0NywgNTcsIDQ1LCA0NiwgCisgICAgMjQ3LCAxODQsIDQ1LCA0NiwgMjQ2LCAxOTUsIDQ1LCA0NiwgMjQ3LCA2NiwgNDUsIDQ2LCAyNDcsIDIsIDQ1LCA0NiwgMjQ3LCAKKyAgICAxMjksIDQ1LCA0NiwgMjQ2LCAyMjYsIDQ1LCA0NiwgMjQ3LCA5NywgNDUsIDQ2LCAyNDcsIDMzLCA0NSwgNDYsIDI0NywgCisgICAgMTYwLCA0NSwgNDYsIDI0NiwgMjEwLCA0NSwgNDYsIDI0NywgODEsIDQ1LCA0NiwgMjQ3LCAxNywgNDUsIDQ2LCAyNDcsIAorICAgIDE0NCwgNDUsIDQ2LCAyNDYsIDI0MSwgNDUsIDQ2LCAyNDcsIDExMiwgNDUsIDQ2LCAyNDcsIDQ4LCA0NSwgNDYsIDI0NywgCisgICAgMTc1LCA0NSwgNDYsIDI0NiwgMjAyLCA0NSwgNDYsIDI0NywgNzMsIDQ1LCA0NiwgMjQ3LCA5LCA0NSwgNDYsIDI0NywgMTM2LCAKKyAgICA0NSwgNDYsIDI0NiwgMjMzLCA0NSwgNDYsIDI0NywgMTA0LCA0NSwgNDYsIDI0NywgNDAsIDQ1LCA0NiwgMjQ3LCAxNjcsIAorICAgIDQ1LCA0NiwgMjQ2LCAyMTcsIDQ1LCA0NiwgMjQ3LCA4OCwgNDUsIDQ2LCAyNDcsIDI0LCA0NSwgNDYsIDI0NywgMTUxLCA0NSwgCisgICAgNDYsIDI0NiwgMjQ4LCA0NSwgNDYsIDI0NywgMTE5LCA0NSwgNDYsIDI0NywgNTUsIDQ1LCA0NiwgMjQ3LCAxODIsIDQ1LCAKKyAgICA0NiwgMjQ2LCAxOTgsIDQ1LCA0NiwgMjQ3LCA2OSwgNDUsIDQ2LCAyNDcsIDUsIDQ1LCA0NiwgMjQ3LCAxMzIsIDQ1LCA0NiwgCisgICAgMjQ2LCAyMjksIDQ1LCA0NiwgMjQ3LCAxMDAsIDQ1LCA0NiwgMjQ3LCAzNiwgNDUsIDQ2LCAyNDcsIDE2MywgNDUsIDQ2LCAKKyAgICAyNDYsIDIxMywgNDUsIDQ2LCAyNDcsIDg0LCA0NSwgNDYsIDI0NywgMjAsIDQ1LCA0NiwgMjQ3LCAxNDcsIDQ1LCA0NiwgCisgICAgMjQ2LCAyNDQsIDQ1LCA0NiwgMjQ3LCAxMTUsIDQ1LCA0NiwgMjQ3LCA1MSwgNDUsIDQ2LCAyNDcsIDE3OCwgNDUsIDQ2LCAKKyAgICAyNDYsIDIwNSwgNDUsIDQ2LCAyNDcsIDc2LCA0NSwgNDYsIDI0NywgMTIsIDQ1LCA0NiwgMjQ3LCAxMzksIDQ1LCA0NiwgCisgICAgMjQ2LCAyMzYsIDQ1LCA0NiwgMjQ3LCAxMDcsIDQ1LCA0NiwgMjQ3LCA0MywgNDUsIDQ2LCAyNDcsIDE3MCwgNDUsIDQ2LCAKKyAgICAyNDYsIDIyMCwgNDUsIDQ2LCAyNDcsIDkxLCA0NSwgNDYsIDI0NywgMjcsIDQ1LCA0NiwgMjQ3LCAxNTQsIDQ1LCA0NiwgCisgICAgMjQ2LCAyNTEsIDQ1LCA0NiwgMjQ3LCAxMjIsIDQ1LCA0NiwgMjQ3LCA1OCwgNDUsIDQ2LCAyNDcsIDE4NSwgOTYsIDIxNiwgCisgICAgMzEsIDgwLCAyLCA2NiwgOTEsIDk2LCAyMTYsIDMxLCA4MCwgMiwgNTIsIDY2LCA5MSwgMTM1LCA1MiwgODAsIDIsIDY2LCAKKyAgICA5MSwgOTYsIDUyLCA4MCwgMiwgNjYsIDkxLCA0MywgNDcsIDUyLCA4MCwgMiwgNjYsIDkxLCA5NiwgMjE2LCAzMSwgODAsIAorICAgIDI0NCwgNzcsIDEzNCwgMTM1LCA1MiwgODAsIDI0NCwgNzcsIDEzNCwgOTYsIDUyLCA4MCwgMjQ0LCA3NywgMTM0LCAyNDYsIAorICAgIDE3OSwgODAsIDIsIDIwMSwgOTEsIDIxNSwgMTMwLCA4MCwgMiwgMjAxLCA5MSwgMjE1LCAxMzAsIDIxNiwgMTgyLCA3MSwgCisgICAgMjQ2LCAxNzksIDIxNiwgMTgyLCA3MSwgMTM1LCA1MiwgMjQ4LCAyMjQsIDcxLCA5NiwgNTIsIDI0OCwgMjI0LCA3MSwgMTM1LCAKKyAgICAyMTYsIDE4MiwgMjQ4LCAyMjQsIDcxLCA5NiwgMjE2LCAxODIsIDI0OCwgMjI0LCA3MSwgOTYsIDIxNiwgMzEsIDIxNiwgCisgICAgMTgyLCAyNDgsIDIyNCwgNzEsIDk2LCA4MCwgMiwgMjQ2LCAxOTMsIDIxOSwgOTMsIDIxNSwgMTMwLCA4MCwgMjE3LCAxMCwgCisgICAgMTM0LCAyNDYsIDE3OSwgODAsIDIxNywgMTAsIDEzNCwgOTYsIDgwLCAyLCAyMTgsIDQxLCAyLCA2NiwgOTEsIDk2LCA4MCwgCisgICAgMiwgMjE4LCA0MSwgMiwgNTIsIDY2LCA5MSwgOTYsIDIxNiwgMzEsIDgwLCAyLCAyMTgsIDQwLCA5NiwgMjE2LCAzMSwgODAsIAorICAgIDIsIDIxOCwgNDEsIDIsIDY2LCA5MSwgOTYsIDIxNiwgMzEsIDgwLCAyLCAyMTgsIDQxLCAyLCA1MiwgNjYsIDkxLCAxMzUsIAorICAgIDI1NCwgMzcsIDk2LCAyNTQsIDM3LCAxMzUsIDUyLCAyNTQsIDM3LCA5NiwgNTIsIDI1NCwgMzcsIDEzNSwgODAsIDIxNywgCisgICAgMTAsIDg1LCAyNDgsIDY1LCA5NiwgODAsIDIxNywgMTAsIDg1LCAyNDgsIDY1LCAxMzUsIDgwLCAyNDQsIDc3LCAyNTIsIAorICAgIDE4NywgMjE3LCAxMCwgODUsIDI0OCwgNjUsIDk2LCA4MCwgMjQ0LCA3NywgMjUyLCAxODcsIDIxNywgMTAsIDg1LCAyNDgsIAorICAgIDY1LCAyMjgsIDIxMCwgMjEzLCAyNTMsIDIyLCAyMTksIDIzNCwgMjQ2LCA0MSwgNzEsIDIyOCwgMjEwLCAyNDYsIDQxLCAyMiwgCisgICAgMjE5LCAyMzQsIDIxMywgMjUzLCA3MSwgMjI4LCAyMTAsIDIxMywgMjUzLCA4MCwgMiwgMTAyLCAyMjgsIDIxMCwgMjQ2LCAKKyAgICA0MSwgODAsIDIsIDEwMiwgMjE5LCAyMzQsIDI0NiwgNDEsIDgwLCAyLCAxMDIsIDIxOSwgMjM0LCAyMTMsIDI1MywgODAsIDIsIAorICAgIDEwMiwgMjI4LCAyMTAsIDIxMywgMjUzLCA4MCwgMjIsIDIyOCwgMjEwLCAyNDYsIDQxLCA3MSwgMjI4LCAyMTAsIDI0NiwgCisgICAgNDEsIDgwLCAyMiwgMjE5LCAyMzQsIDI0NiwgNDEsIDcxLCAyMTksIDIzNCwgMjQ2LCA0MSwgODAsIDIyLCAyMTksIDIzNCwgCisgICAgMjEzLCAyNTMsIDcxLCAyMTksIDIzNCwgMjEzLCAyNTMsIDgwLCAyMiwgMjI4LCAyMTAsIDIxMywgMjUzLCA3MSwgMjIzLCAKKyAgICAxNTksIDI0OCwgNzIsIDI0OSwgMTg4LCAyNDUsIDgsIDI0OCwgNzEsIDI0NSwgOCwgMjQ4LCA3MiwgMjQ5LCAxODgsIDIyMywgCisgICAgMTU5LCAyNDgsIDcxLCAyMTksIDIzNCwgMjQ2LCA0MSwgODAsIDI0OSwgMTg4LCAyMjgsIDIxMCwgMjQ2LCA0MSwgNzEsIAorICAgIDIyOCwgMjEwLCAyNDYsIDQxLCA4MCwgMjQ5LCAxODgsIDIxOSwgMjM0LCAyNDYsIDQxLCA3MSwgMjQ1LCA4LCAyNDgsIDcyLCAKKyAgICAyNDksIDE4OCwgMjI4LCAyMTAsIDI0NiwgNDEsIDcxLCAyMjMsIDE1OSwgMjQ4LCA3MiwgMjQ5LCAxODgsIDIxOSwgMjM0LCAKKyAgICAyNDYsIDQxLCA3MSwgMjI4LCAyMTAsIDI0NiwgNDEsIDgwLCAyNDksIDE4OCwgMjI4LCAyMTAsIDIxMywgMjUzLCA3MSwgCisgICAgMjI4LCAyMTAsIDIxMywgMjUzLCA4MCwgMjQ5LCAxODgsIDIyOCwgMjEwLCAyNDYsIDQxLCA3MSwgMjE0LCAyMywgODAsIAorICAgIDIyNSwgMTc3LCAyNDgsIDEyLCAyMjMsIDE4MiwgODAsIDIyNSwgMTc3LCA5NiwgMjE3LCAxNTQsIDI0OSwgMTU1LCAyMTUsIAorICAgIDEyOSwgODAsIDIyNSwgMTc3LCA5NiwgMjE3LCAxNTQsIDI0OSwgMTU1LCAyNDYsIDE3OCwgODAsIDIyNSwgMTc3LCAyNDYsIAorICAgIDE3OSwgMjE3LCAxNTQsIDI0OSwgMTU1LCAyMzMsIDE1OSwgODAsIDIyNSwgMTc3LCAyNDYsIDE3OSwgMjE3LCAxNTQsIDI0OSwgCisgICAgMTU1LCAyMjMsIDE3MiwgMjIzLCAxNzUsIDI1NCwgNjcsIDI1MCwgNjIsIDcxLCAyMzMsIDE2MiwgMjU0LCA2NywgMjU0LCAKKyAgICAxMjYsIDcxLCAyMTYsIDI0MCwgMjU0LCA2NywgMjU0LCAxMjYsIDcxLCAyNTEsIDIyNiwgMjU0LCA2NywgMjU0LCAxMjYsIAorICAgIDcxLCAyMTYsIDI0MCwgMjU0LCA2NywgMjUwLCA2MiwgODAsIDIsIDIzMSwgNjQsIDIxNiwgMjQwLCAyNTQsIDY3LCAyNTQsIAorICAgIDEyNiwgODAsIDIsIDIyNSwgMTkyLCAyMzIsIDIzNywgNDcsIDIyMSwgOTUsIDI1MCwgNjIsIDcxLCAyMzIsIDIzNywgNDMsIAorICAgIDIyMSwgOTUsIDI1NCwgMTI2LCA3MSwgMjU0LCAxMjYsIDI1MCwgNjAsIDI1MCwgOTYsIDcxLCAyNTAsIDYyLCAyNTAsIDYwLCAKKyAgICAyNTAsIDk2LCA3MSwgOTYsIDgwLCA3NCwgMjIwLCAxOTYsIDEzNSwgNzEsIDEzNSwgODAsIDc0LCAyMjAsIDE5NiwgOTYsIAorICAgIDcxLCAyMjAsIDE5NiwgOTYsIDgwLCA3NCwgMTM1LCA3MSwgOTYsIDgwLCAyLCA5NSwgNTUsIDEzNSwgODAsIDIsIDk1LCA1NSwgCisgICAgOTYsIDgwLCAyMTcsIDEwNiwgMjEzLCAxNjksIDQzLCA0NywgODAsIDIxNywgMTA2LCA0LCAyNTAsIDk1LCAyMTUsIDEzMCwgCisgICAgMjE2LCAzMSwgODAsIDI0NCwgNzcsIDQsIDI1MCwgOTUsIDQzLCAyNTIsIDE4NSwgMTE2LCA0NywgMjUyLCAxODUsIDEyMSwgCisgICAgMjQyLCAxMDEsIDQzLCAyNTIsIDE4NSwgMTIxLCA0NywgMjUyLCAxODUsIDExNiwgMjQyLCAxMDEsIDExNiwgMjUyLCAxODUsIAorICAgIDQ3LCAxMjEsIDI1MiwgMTg1LCA0MywgMjQyLCAxMDEsIDExNiwgMjUyLCAxODUsIDQzLCAxMjEsIDI1MiwgMTg1LCA0NywgCisgICAgMjQyLCAxMDEsIDQzLCAyNTIsIDE4NSwgMTE2LCA0NywgMjUyLCAxODUsIDExNiwgMjQyLCAxMDEsIDExNiwgMjUyLCAxODUsIAorICAgIDQ3LCAxMjEsIDI1MiwgMTg1LCA0NywgMjQyLCAxMDEsIDQzLCAyNTIsIDE4NSwgMTIxLCA0NywgMjUyLCAxODUsIDEyMSwgCisgICAgMjQyLCAxMDEsIDExNiwgMjUyLCAxODUsIDQzLCAxMjEsIDI1MiwgMTg1LCA0MywgMjQyLCAxMDEsIDEzNSwgMjQyLCAxMDIsIAorICAgIDIsIDI1MiwgMTg1LCAxMTYsIDIxNywgMTAsIDEzNCwgOTYsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMTE2LCAyMTcsIDEwLCAKKyAgICAxMzQsIDIxNSwgMTMwLCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDQ3LCAyMTcsIDEwLCAxMzQsIDI0NiwgMTc5LCAyNDIsIAorICAgIDEwMiwgMiwgMjUyLCAxODUsIDQ3LCAyMTcsIDEwLCAxMzQsIDEzNSwgMjQyLCAxMDIsIDIsIDI1MiwgMTg1LCAxMjEsIDIxNywgCisgICAgMTAsIDEzNCwgOTYsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMTIxLCAyMTcsIDEwLCAxMzQsIDIxNSwgMTMwLCAyNDIsIAorICAgIDEwMiwgMiwgMjUyLCAxODUsIDQzLCAyMTcsIDEwLCAxMzQsIDI0NiwgMTc5LCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDQzLCAKKyAgICAyMTcsIDEwLCAxMzQsIDEzNSwgMjQyLCAxMDIsIDIsIDI1MiwgMTg1LCAxMTYsIDI0NCwgNzcsIDEzNCwgOTYsIDI0MiwgCisgICAgMTAyLCAyLCAyNTIsIDE4NSwgMTE2LCAyNDQsIDc3LCAxMzQsIDIxNSwgMTMwLCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDQ3LCAKKyAgICAyNDQsIDc3LCAxMzQsIDI0NiwgMTc5LCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDQ3LCAyNDQsIDc3LCAxMzQsIDEzNSwgCisgICAgMjQyLCAxMDIsIDIsIDI1MiwgMTg1LCAxMjEsIDI0NCwgNzcsIDEzNCwgOTYsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMTIxLCAKKyAgICAyNDQsIDc3LCAxMzQsIDIxNSwgMTMwLCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDQzLCAyNDQsIDc3LCAxMzQsIDI0NiwgCisgICAgMTc5LCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDQzLCAyNDQsIDc3LCAxMzQsIDEzNSwgMjQyLCAxMDIsIDIsIDI1MiwgMTg1LCAKKyAgICAxMTYsIDc0LCAxMzUsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMjQ2LCAxODEsIDIxNSwgMTMwLCAyNDIsIDEwMiwgMiwgCisgICAgMjUyLCAxODUsIDQzLCAyNTIsIDc3LCAyMTUsIDEzMCwgMjQyLCAxMDIsIDIsIDI1MiwgMTg1LCAyMjMsIDE4MiwgOTYsIAorICAgIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMTE2LCA3NCwgOTYsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMjQ2LCAxODEsIDI0NiwgCisgICAgMTc5LCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDQzLCAyNTIsIDc3LCAyNDYsIDE3OSwgMjQyLCAxMDIsIDIsIDI1MiwgMTg1LCAKKyAgICAyMjMsIDE4MiwgMTM1LCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDExNiwgNzQsIDk2LCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIAorICAgIDIxNSwgMTQwLCAxMzUsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMTIxLCA3NCwgOTYsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgCisgICAgMjQ2LCAxODEsIDk2LCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDExNiwgNzQsIDEzNSwgMjQyLCAxMDIsIDIsIDI1MiwgMTg1LCAKKyAgICAyMTUsIDE0MCwgOTYsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMTIxLCA3NCwgMTM1LCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIAorICAgIDI0NiwgMTgxLCAxMzUsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMTE2LCA3NCwgMTg3LCAyNDgsIDIyMywgMTM1LCAyNDIsIAorICAgIDEwMiwgMiwgMjUyLCAxODUsIDEyMSwgMjUyLCA5MCwgMTg3LCAyNDgsIDIyMywgOTYsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgCisgICAgMTE2LCA3NCwgMTg3LCAyNDgsIDIyMywgOTYsIDI0MiwgMTAyLCAyLCAyNTIsIDE4NSwgMTIxLCAyNTIsIDkwLCAxODcsIAorICAgIDI0OCwgMjIzLCAyMTUsIDEzMCwgMjQyLCAxMDIsIDIsIDI1MiwgMTg1LCA0MywgMjUyLCA3NywgMjQ2LCAxNzksIDI0MiwgCisgICAgMTAyLCAyLCAyNTIsIDE4NSwgMjIzLCAxODIsIDI0NiwgMTc5LCAyNDIsIDEwMiwgMiwgMjUyLCAxODUsIDQzLCAyNTIsIDc3LCAKKyAgICAyMTUsIDEzMCwgMjQyLCAxMDIsIDIsIDI1MiwgMTg1LCAyMjMsIDE4MiwgNDcsIDUyLCA4MCwgMiwgMjIzLCAxMTksIDI0MiwgCisgICAgODIsIDI0NSwgMTgyLCA1LCA3NCwgOTYsIDcxLCAyMTcsIDU2LCAyMjcsIDcyLCA3NCwgOTYsIDcxLCAxMzUsIDgwLCA3NCwgCisgICAgMjE3LCA1NiwgMjI3LCA3MSwgOTYsIDgwLCA3NCwgMjE3LCA1NiwgMjI3LCA3MSwgOTYsIDgwLCA3NCwgMjU0LCAxODQsIAorICAgIDEyNiwgMTA5LCAyMzMsIDEzNywgNzQsIDEzNSwgNzEsIDEzNSwgODAsIDIxNywgMTA2LCAyMzMsIDEzNiwgMjQyLCAyMjgsIAorICAgIDc0LCA5NiwgNzEsIDIxOSwgMjMsIDc0LCA5NiwgNzEsIDEzNSwgODAsIDIxNywgMTA2LCAyMTksIDIyLCAyMTgsIDIzNiwgCisgICAgNzQsIDEzNSwgNzEsIDQzLCAyNDQsIDE4MCwgMjE4LCA0MCwgNDcsIDI0NCwgMTgwLCAyMTgsIDQwLCAxMTYsIDI0NCwgMTgwLCAKKyAgICAyMTgsIDQwLCAxMjEsIDI0NCwgMTgwLCAyMTgsIDQwLCAyMTYsIDE4MiwgNjYsIDI1MiwgMTg3LCAyNDgsIDEzMiwgMjEyLCAKKyAgICAxNTMsIDE3OSwgMjE5LCAxOTMsIDIxMiwgMTUzLCAxNzksIDIxNiwgMjIsIDI1MCwgMzAsIDQzLCA2OSwgMjQ5LCAxNjMsIAorICAgIDEyNSwgNDcsIDY5LCAyNDksIDE2MywgMTI1LCA0MywgNjksIDIyNiwgMTY4LCA0NywgNjksIDIyNiwgMTY4LCAyMTIsIDE1MywgCisgICAgMTc5LCA0MywgMjM2LCAxMjcsIDEyNSwgMjEyLCAxNTMsIDE3OSwgNDcsIDIzNiwgMTI3LCAxMjUsIDIxMiwgMTUzLCAxNzksIAorICAgIDQzLCAyNTIsIDM0LCAxMjUsIDIxMiwgMTUzLCAxNzksIDQ3LCAyNTIsIDM0LCAxMjUsIDQzLCA0MiwgMjUxLCAyMTAsIDIsIAorICAgIDIxNSwgMTU5LCA0NywgNDIsIDI1MSwgMjEwLCAyLCAyMTUsIDE1OSwgNDMsIDQyLCAyNTEsIDIxMCwgMiwgMjE3LCA4MiwgCisgICAgMjM2LCAxMTMsIDIxNiwgMjQwLCAyNDksIDIyMiwgNDcsIDQyLCAyNTEsIDIxMCwgMiwgMjE3LCA4MiwgMjM2LCAxMTMsIAorICAgIDI1MSwgMjI2LCAyNDksIDIyMiwgNDMsIDQyLCAyNTEsIDIxMCwgMiwgMjE3LCA4MiwgMjM2LCAxMTMsIDI1MSwgMjI2LCAKKyAgICAyNDksIDIyMiwgNDcsIDQyLCAyNTEsIDIxMCwgMiwgMjE3LCA4MiwgMjM2LCAxMTMsIDIxNiwgMjQwLCAyNDksIDIyMiwgNDMsIAorICAgIDI1NCwgMTQ2LCAyNTEsIDIxMCwgMiwgMjQ3LCAxOTUsIDQ3LCAyNTQsIDE0NiwgMjUxLCAyMTAsIDIsIDI0NywgMTk1LCA0MywgCisgICAgMjU0LCA2NywgMjMzLCAxMzcsIDEyNSwgNDcsIDI1NCwgNjcsIDI0MiwgMjI4LCAxMjUsIDUyLCA0MywgMjU0LCA2NywgMjQyLCAKKyAgICAyMjgsIDEyNSwgNTIsIDQ3LCAyNTQsIDY3LCAyMzMsIDEzNywgMTI1LCA0MywgODUsIDIxNiwgMjMyLCAyMjAsIDI1NCwgCisgICAgMTI1LCA0NywgODUsIDIxNiwgMjMyLCAyMjAsIDI1NCwgMTI1LCAyNDYsIDE5MywgMjQ0LCAyMjQsIDY2LCAyMTIsIDI4LCAKKyAgICAyMzMsIDgzLCAyMzEsIDIyMywgMjU0LCAxNDYsIDIyNywgNzMsIDIzMywgMTY4LCA0NywgMjU0LCAxNDYsIDIxNCwgMjUwLCAKKyAgICAyLCAyMTksIDE4NSwgMjMxLCAyMjMsIDQ3LCAyNTQsIDE0NiwgMiwgMjQ3LCAxOTUsIDI1NCwgMTQ2LCAyLCAyMjMsIDI5LCAKKyAgICAyMzYsIDczLCAyNTUsIDM2LCAyNTQsIDE0NSwgMjE5LCAyMDYsIDI1NCwgMTQ2LCAyMjcsIDczLCAyMzMsIDE2OCwgMjE5LCAKKyAgICAyMDYsIDI1NCwgMTQ2LCAyMjcsIDczLCAyMTUsIDE0MCwgMjE2LCA2NiwgMjU0LCAxNDUsIDIyMywgMjM2LCAyNTQsIDE0NSwgCisgICAgMjU0LCAxNDYsIDIsIDIxNSwgMTU5LCAyMjMsIDIzNiwgMjU0LCAxNDYsIDIsIDIxNSwgMTU5LCAyMjcsIDE0OSwgMjU0LCAKKyAgICAxNDYsIDIyNywgNzMsIDIxNSwgMTQwLCAyMjcsIDE0OSwgMjU0LCAxNDYsIDIyNywgNzMsIDI0NiwgMTgxLCAyMzEsIDIyMywgCisgICAgMjU0LCAxNDYsIDIsIDIxMCwgMjU0LCA0NywgMjQ1LCAyMTksIDIzNiwgMTEzLCA4MCwgMjI1LCAxNzcsIDExNiwgMjIsIAorICAgIDIyMywgMTgyLCAyMzEsIDIyMywgMjU0LCAxNDYsIDIsIDIxMCwgMjU0LCA0NywgMjQ1LCAyMTksIDIzNiwgMTEzLCA4MCwgCisgICAgMjI1LCAxNzcsIDExNiwgMjIsIDIzMywgMTY4LCAyMzEsIDIyMywgMjU0LCAxNDYsIDIsIDIxMCwgMjU0LCA0NywgMjQ1LCAKKyAgICAyMTksIDIzNiwgMTEzLCA4MCwgMjI1LCAxNzcsIDEyMSwgMjIsIDIyMywgMTgyLCAyMzEsIDIyMywgMjU0LCAxNDYsIDIsIAorICAgIDIxMCwgMjU0LCA0NywgMjQ1LCAyMTksIDIzNiwgMTEzLCA4MCwgMjI1LCAxNzcsIDEyMSwgMjIsIDIzMywgMTY4LCAyMzEsIAorICAgIDIyMywgMjU0LCAxNDYsIDIsIDIxMCwgMjU0LCA0NywgMjQ1LCAyMTksIDIzNiwgMTEzLCA4MCwgMjI1LCAxNzcsIDQ3LCAyMiwgCisgICAgMjE1LCAxNDAsIDIzMSwgMjIzLCAyNTQsIDE0NiwgMiwgMjEwLCAyNTQsIDQ3LCAyNDUsIDIxOSwgMjM2LCAxMTMsIDgwLCAKKyAgICAyMjUsIDE3NywgNDMsIDIyLCAyMTUsIDE0MCwgMjMxLCAyMjMsIDI1NCwgMTQ2LCAyLCAyMTAsIDI1NCwgNDcsIDI0NSwgCisgICAgMjE5LCAyMzYsIDExMywgODAsIDIyNSwgMTc3LCA0NywgMjIsIDI0NiwgMTgxLCAyMzEsIDIyMywgMjU0LCAxNDYsIDIsIAorICAgIDIxMCwgMjU0LCA0NywgMjQ1LCAyMTksIDIzNiwgMTEzLCA4MCwgMjI1LCAxNzcsIDQzLCAyMiwgMjQ2LCAxODEsIDIyMywgCisgICAgMjM2LCAyNDUsIDIzMSwgMjIxLCA3MSwgMjQ1LCAyMzEsIDIyMSwgNzIsIDIsIDIyNywgMjksIDI0NSwgMjMxLCAyMjEsIDcyLCAKKyAgICAyLCA0LCAyNTAsIDk2LCA1MCwgMjQ1LCAyMzEsIDIyMSwgNzIsIDIsIDQ3LCA4MCwgNTAsIDI0NSwgMjMxLCAyMjEsIDcyLCAKKyAgICAyLCA0MywgODAsIDUwLCAyNTAsIDk2LCAyLCAyMDEsIDEzNCwgMzcsIDY2LCAxMzQsIDM3LCAyMjYsIDE3MiwgMzcsIDIyMywgCisgICAgMjM3LCAyMTksIDI1MCwgMzcsIDIyNiwgODMsIDI1MCwgOTYsIDI0NywgMjQ2LCAyNTEsIDEzMiwgMjAxLCAyNTIsIDE4NywgCisgICAgMjIsIDIxNiwgMjQwLCAxNTcsIDI0NywgMjQ2LCAyNTEsIDEzMiwgNjYsIDEzNCwgMjUwLCA5NiwgMiwgMjE4LCAyMzgsIAorICAgIDIxMywgMTY5LCAzNywgMjU0LCAxMjUsIDI0NywgMjQyLCA1MywgMTE2LCA4MCwgMjE3LCAxMDYsIDI1MCwgOTUsIDM3LCA2OSwgCisgICAgMjUxLCAxNjcsIDM3LCAyNTEsIDE2NywgMzcsIDIzMywgMTM2LCAzNywgMjQyLCAyMjcsIDI1MCwgOTYsIDIsIDQsIDI1MCwgCisgICAgOTYsIDIxNywgMTAsIDIxNywgMTYyLCAyMjMsIDE4MiwgMjUwLCA5NiwgMiwgMTE5LCAyMDEsIDIxOSwgNDcsIDIxNywgMTAsIAorICAgIDIxNywgMTYyLCAyMjMsIDE4MiwgOTIsIDIyMywgMTU5LCAyNDgsIDcyLCAyMjAsIDQyLCA5MiwgMjQ1LCA4LCAyNDgsIDcyLCAKKyAgICAyMjAsIDQyLCA5MiwgMjU0LCAzLCA5MiwgNCwgMjUwLCA5NSwgOTIsIDIxOSwgMTg1LCAxMTksIDIzNSwgMTgyLCAyMTksIAorICAgIDE4MywgMjE2LCAxOTcsIDIsIDYyLCA1MCwgMjE2LCAxOTcsIDIsIDIxNSwgMTU5LCAyMjMsIDI5LCAyMzYsIDExMywgMjE2LCAKKyAgICAxOTYsIDIxNiwgMTk3LCAyLCAyMjEsIDc4LCAyNTMsIDI1MCwgMjUxLCAyMjUsIDQ3LCAyMTYsIDE5NywgNzQsIDQzLCAyMTYsIAorICAgIDE5NiwgNDMsIDIxNiwgMTk3LCAyNTIsIDc3LCA2NiwgMTM0LCA2NiwgMjUyLCAxODcsIDI1MiwgNzcsIDQ3LCAyMTYsIDE5NiwgCisgICAgMjUxLCAyMTYsIDIsIDQzLCAxNTcsIDI1MiwgMTMsIDI1MSwgMjE2LCAyLCA0NywgMTU3LCAyNTIsIDEzLCA4NSwgMjUxLCAKKyAgICAyMTUsIDI5LCAyLCA0MywgMTU3LCAyNTIsIDEzLCAyOSwgMiwgNDcsIDE1NywgMjUyLCAxMywgNjksIDI0MSwgODUsIDg1LCAKKyAgICAyNDEsIDg1LCA0MywgMjEzLCAyMzIsIDI0NCwgMjI0LCA0NywgMjEzLCAyMzIsIDI0NCwgMjI0LCA0MywgNTIsIDIxMywgCisgICAgMjMyLCAyNDQsIDIyNCwgNDcsIDUyLCAyMTMsIDIzMiwgMjQ0LCAyMjQsIDIzNiwgMTA1LCAyMzYsIDkyLCAyMTcsIDc5LCAKKyAgICAxMTMsIDIzNiwgOTIsIDIzNiwgOTMsIDIyOSwgMjUwLCAyLCA2NiwgMTM0LCAyNDYsIDE4NywgMjMwLCAyMjcsIDQyLCAyLCAKKyAgICAyNDksIDI0MywgMjI3LCAzMywgMjM2LCAxMDMsIDI1NCwgMjMsIDIyMCwgMTY0LCAyMjUsIDk5LCAyNDUsIDE4MiwgNSwgMjIsIAorICAgIDIyMCwgNDQsIDIyNiwgMTcyLCAyNDUsIDE4MiwgNSwgMjIsIDIyMCwgNDQsIDIyNiwgMTczLCAyLCAyMTcsIDU2LCA1MCwgCisgICAgMjQwLCAyMTQsIDIxNywgMTAsIDIyLCAyMjAsIDQ0LCAyMjYsIDE3MiwgMjQzLCAyMywgMjE5LCAxMDgsIDIxNywgMTUxLCAKKyAgICAyNDYsIDE4MCwgMjE2LCAxOTcsIDIsIDQzLCAxNTcsIDI1MiwgMTMsIDI0NiwgMTgwLCAyMTYsIDE5NywgMiwgNDcsIDE1NywgCisgICAgMjUyLCAxMywgODUsIDI0OCwgNjYsIDIsIDEyMSwgNzEsIDg1LCAyMzIsIDIzMywgNjksIDI1MCwgOTYsIDIsIDEyMSwgNzEsIAorICAgIDg1LCAyNTAsIDk2LCAyLCAxMjEsIDcxLCAyNDUsIDE2OSwgNjksIDIxOSwgMTg1LCAyNDUsIDE2OSwgODUsIDIxOSwgMTg1LCAKKyAgICAyNDUsIDE2OSwgNjksIDI0OCwgNjUsIDI0NSwgMTY5LCA4NSwgMjQ4LCA2NSwgMjQ1LCAxNjksIDY5LCAyNTAsIDk1LCAyNDUsIAorICAgIDE2OSwgODUsIDI1MCwgOTUsIDIyMywgNjksIDIyMywgMjM3LCAyMTksIDI1MSwgMjI3LCA3MSwgMjE5LCAyNTEsIDIsIDIyNywgCisgICAgMjksIDIyMywgMjM3LCAyMTksIDI1MSwgMiwgMjAxLCA5MSwgMjUyLCA0MSwgMjE5LCAyNTAsIDI1MiwgNDEsIDIyMywgMjM3LCAKKyAgICAyMTksIDI1MCwgNTIsIDIyNSwgMTkyLCAyMTYsIDE4MiwgMjI1LCAxOTIsIDIzMywgMTY0LCAyNDksIDE1NiwgMjU0LCAxNDYsIAorICAgIDEyNSwgMjIzLCAxNzgsIDI0OSwgMTU2LCAyNTQsIDE0NiwgMTI1LCAyMTcsIDQ1LCAyMzEsIDYyLCAyMzAsIDE2NiwgMzcsIAorICAgIDYyLCAyMjcsIDcxLCAyMzAsIDE2NiwgMzcsIDk1LCAyMjcsIDcxLCAyMzAsIDE2NiwgMzcsIDI5LCAyMjcsIDcxLCAyMzAsIAorICAgIDE2NiwgMjE1LCAxNTMsIDIyNywgNzIsIDIsIDI0NywgMTk1LCAyMzAsIDE2NiwgMjE1LCAxNTMsIDIyNywgNzIsIDIsIDIyNSwgCisgICAgMTkyLCAyMzAsIDE2NiwgNDIsIDIzNiwgNTcsIDIyNywgNzEsIDIzMCwgMTY2LCA0MiwgMjE1LCAxNTMsIDIyNywgNzEsIAorICAgIDExOSwgMjMzLCAxNywgMjIsIDIyNywgNzEsIDExOSwgMjMzLCAxNywgMTcxLCAyMjcsIDcxLCAyMzAsIDE2NiwgMjksIDIyNywgCisgICAgNzEsIDIzMSwgMzgsIDExOSwgMjE5LCAyLCAyMTksIDAsIDIsIDIzNiwgNjksIDIyNCwgMjA0LCAyMzYsIDcwLCAyMjcsIDcxLCAKKyAgICAyNDQsIDE4OCwgMjI2LCAxNjQsIDIzNiwgNjksIDIzNiwgNzAsIDIsIDUyLCA5MSwgMjM2LCA3MCwgMjUzLCAyMTYsIDIsIAorICAgIDIyMCwgNDIsIDI1MCwgOTIsIDI0NCwgNjEsIDI1NCwgMTI2LCAyMzYsIDY3LCAyMzMsIDg0LCAyMzYsIDY4LCAyLCAyMjQsIAorICAgIDQyLCAyMjYsIDE0NywgMjU0LCA0NCwgMjI1LCAxNzEsIDIzMywgODQsIDIzNiwgNjgsIDIsIDIyMSwgOTUsIDIyNiwgMTQ3LCAKKyAgICAyNTQsIDQ0LCAyMjUsIDE3MSwgMjMzLCA4NCwgMjM2LCA2OCwgMjI4LCAyMDYsIDIzNiwgMTA3LCAyMTcsIDE2MiwgMjI1LCAKKyAgICAxNzEsIDIzNiwgNzAsIDI1NCwgNDQsIDExMSwgMjI1LCAxODEsIDIyNywgNzEsIDIyNCwgMTk4LCAyMzYsIDcwLCAyMjcsIAorICAgIDcxLCAyMzYsIDcwLCAyLCAxMzUsIDgwLCAyLCAxMDIsIDIzNiwgNzAsIDIsIDI5LCA1MywgMjM2LCA3MCwgMiwgMjM2LCA1NiwgCisgICAgMjM2LCA3MCwgMiwgMjE1LCAxNTIsIDIzNiwgNzAsIDIsIDIyNywgMjksIDIzNiwgNzAsIDIsIDIxNSwgMTU5LCAyMzUsIAorICAgIDE4MywgMjMzLCAyMDcsIDQzLCAyMTYsIDE5NywgMjI3LCA3MSwgMjEyLCAxNTMsIDE3OSwgMjIyLCAxNDIsIDI1MCwgMTQsIAorICAgIDIxMiwgMTUzLCAxNzksIDIyMiwgMTQyLCAyMjUsIDIyNCwgMjEyLCAxNTMsIDE3OSwgMjIyLCAxNDIsIDIyNSwgOTYsIDk1LCAKKyAgICA1LCAyLCA0LCAyNTAsIDk2LCA1MCwgOTUsIDUsIDIsIDI1MCwgOTEsIDI1NSwgNDcsIDUwLCA5NSwgNSwgMiwgMjE3LCA1NiwgCisgICAgNTAsIDk1LCA1LCAyLCA2MiwgNTUsIDk1LCA1LCAyLCAyMTcsIDU2LCA1NSwgOTUsIDUsIDIsIDIxOSwgMjQsIDExMiwgOTUsIAorICAgIDUsIDIsIDg1LCAyMTYsIDE5NiwgMjMxLCA2NSwgNSwgMiwgMjUwLCAyNCwgNTAsIDIzMSwgNjUsIDUsIDIsIDYyLCA1NSwgCisgICAgMjMxLCA2NSwgNSwgMiwgMjQ1LCA4LCAyNDcsIDE5MywgMjMxLCA2NSwgNSwgMiwgMjIzLCAxNTksIDI0NywgMTkzLCA5NSwgCisgICAgNSwgMjM2LCAxMTMsIDQzLCAxNTcsIDI1MCwgOTUsIDk1LCA1LCAyMzYsIDExMywgNDcsIDE1NywgMjUwLCA5NSwgMjE0LCAKKyAgICAyMzYsIDE3MSwgMjQ5LCAxOTQsIDIyNSwgOTksIDIzMCwgMjI0LCA1LCAyLCA2MiwgNTAsIDIzMCwgMjI0LCA1LCAyLCAyMTUsIAorICAgIDE1OSwgMjIxLCA5MiwgMjI1LCAxMDAsIDIsIDI1MSwgMjI2LCAyNTAsIDU5LCAyMjAsIDI0LCAyMjUsIDk5LCAyMzAsIDIyNCwgCisgICAgNSwgMjM2LCAxMTMsIDQzLCAxNTcsIDI1MCwgOTUsIDIzMCwgMjI0LCA1LCAyMzYsIDExMywgNDcsIDE1NywgMjUwLCA5NSwgCisgICAgMzcsIDIzMCwgMjI0LCA1LCAyLCAyNTAsIDkxLCAyNTUsIDQ2LCAyMzAsIDIyNCwgNSwgMjM2LCAxMTMsIDUyLCAyNTAsIDk1LCAKKyAgICAzNywgMjQ3LCAyNDIsIDUzLCA5NSwgNSwgMjM2LCAxMTMsIDIxNiwgMTk2LCAyMzEsIDY1LCA1LCAyMzYsIDExMywgMjE2LCAKKyAgICAxOTYsIDIzMCwgMjI0LCA1LCAyMzYsIDExMywgMjE2LCAxOTYsIDIzNiwgNjQsIDIyNSwgOTksIDIyMywgMTczLCAyMzYsIAorICAgIDY0LCAyMjUsIDk5LCAyMTIsIDE1MywgMTc5LCAyMjQsIDE4LCAyNTAsIDE0LCAyNTQsIDE3MCwgMTcxLCAyNDksIDIyNywgCisgICAgMjM2LCA1NywgMiwgMjQ3LCAxOTUsIDIxNSwgMTUzLCAyLCAyMzEsIDY1LCA1MywgMjE1LCAxNTMsIDIsIDIyNywgMjksIAorICAgIDIzNiwgNTcsIDIsIDIyNywgMjksIDIzNiwgNTcsIDIsIDIzMywgMTcsIDI1NCwgMTU0LCAyMTUsIDE1MywgMiwgMjMzLCAxNywgCisgICAgMjI3LCA2MiwgMjE1LCAxNTMsIDc0LCAyMzYsIDU2LCAyMzYsIDU3LCA3NCwgMjE1LCAxNTIsIDIxNSwgMTUzLCA3NCwgMjUyLCAKKyAgICAxODcsIDc0LCAyMzYsIDU2LCAyMzYsIDU3LCA3NCwgMjUyLCAxODcsIDc0LCAyMTUsIDE1MiwgMjE1LCAxNTMsIDI1MiwgNzcsIAorICAgIDIyLCAyMzUsIDE4MiwgMiwgMjE1LCAxNTIsIDIzNiwgNTcsIDI1MiwgNzcsIDIyLCAyMzUsIDE4MiwgMiwgMjM2LCA1NiwgCisgICAgMjUwLCA2MCwgMjE1LCAxNTMsIDIsIDIyMSwgNzcsIDI1MCwgNjAsIDIzNiwgNTcsIDIsIDIyMSwgNzcsIDUyLCA0MiwgMjM2LCAKKyAgICA1NiwgNTIsIDQyLCAyMTUsIDE1MiwgMjUwLCA2MCwgMjE1LCAxNTMsIDIsIDIyMSwgNzgsIDIyLCAyMjAsIDI0LCAyMjUsIAorICAgIDk5LCAyMzMsIDE3LCAyMiwgMiwgNjIsIDUwLCAyMzMsIDE3LCAxNzEsIDIsIDYyLCA1MCwgNTIsIDIzMywgMTcsIDI1NCwgCisgICAgMTU0LCA1MiwgMjMzLCAxNywgMjI3LCA2MiwgMTE5LCAyMzYsIDU4LCAyMzMsIDE3LCAyNTQsIDE1NCwgMTE5LCAyMzYsIDU4LCAKKyAgICAyMzMsIDE3LCAyMjcsIDYyLCAyMjAsIDMyLCAyMzMsIDIwNywgMjI3LCA2MiwgMjIwLCAzMiwgMjMzLCAyMDcsIDI1NCwgCisgICAgMTU0LCAyMzMsIDE3LCAxNzEsIDIyNywgMjcsIDIzMywgMTcsIDI1NCwgMTU0LCAyMzMsIDE3LCAyMiwgMiwgMjMxLCAxMDcsIAorICAgIDIxOSwgOTMsIDIzMywgMTcsIDE3MSwgMiwgMjMxLCAxMDcsIDIxOSwgOTMsIDIzMywgMTcsIDIyLCAyLCAyMDEsIDI0OCwgCisgICAgMjIzLCAyMzMsIDE3LCAxNzEsIDIsIDIwMSwgMjQ4LCAyMjMsIDIzMywgMTcsIDIyLCAyLCA1MiwgMjI3LCAyOSwgMjMzLCAKKyAgICAxNywgMjIsIDIsIDIxNSwgMTU5LCAyMzMsIDE3LCAyMiwgMiwgNTIsIDIxNSwgMTU5LCA0LCAyMTQsIDIzMywgMiwgMjE1LCAKKyAgICAxNTksIDIzMywgMTcsIDE3MSwgMiwgNTIsIDIyNywgMjksIDIzMywgMTcsIDE3MSwgMiwgNTIsIDIxNSwgMTU5LCAyMTIsIAorICAgIDE1MywgMTc5LCAyNDcsIDIwNCwgMjU0LCAxMTcsIDIxMiwgMTUzLCAxNzksIDIyNCwgNzUsIDI1NCwgMTE3LCAyNDUsIDE4MiwgCisgICAgNSwgMiwgNjIsIDU1LCAyNDAsIDIxNCwgMiwgNjIsIDUwLCAyMTYsIDE4MiwgMjAxLCAyNTIsIDE4NywgMiwgNTIsIDY2LCAKKyAgICA5MSwgMjE2LCAxODIsIDIwMSwgMjUyLCAxODcsIDIsIDIxNiwgMTgyLCA2NiwgOTEsIDIxNywgNTYsIDIyNywgNzIsIDIsIAorICAgIDYyLCA1MCwgMjE3LCA1NiwgMjI3LCA3MiwgMiwgMjIzLCAxNTksIDI0NywgMTkzLCAyMjAsIDEwNywgMjMxLCA2NSwgMjIwLCAKKyAgICAxMDYsIDI1MCwgNSwgMiwgNjIsIDUwLCAyNDUsIDE4MiwgMiwgMjU0LCAzLCAyNTQsIDE4NCwgMTI2LCAyMTcsIDEwLCAyLCAKKyAgICAyNTAsIDkxLCAyNTUsIDQ2LCAyNTQsIDg5LCAxMjYsIDE3MSwgMTI2LCAxMDksIDI0NSwgMTgyLCA1LCA3NCwgOTUsIDUzLCAKKyAgICA5NSwgNSwgNzQsIDI0NSwgMTgyLCA1MywgMjQ1LCAxODIsIDUsIDc0LCAyMTcsIDU2LCAyMjcsIDcxLCA1MiwgMjUwLCAzMSwgCisgICAgMjQ1LCAxODMsIDExOSwgMjUwLCAwLCAyNDUsIDE4MiwgMjIwLCAxMjEsIDEzNywgMjUwLCAwLCAyNDUsIDE4MiwgMjIwLCAKKyAgICAxMjEsIDI0NSwgMTgyLCA1LCAyLCAxMTksIDE4MSwgNzQsIDIyLCAxMTksIDE4MSwgNTUsIDI0NSwgMTc4LCAyLCAyNDQsIAorICAgIDEwMSwgMTgxLCA1MCwgMjMzLCAxMzcsIDIsIDI1MCwgOTYsIDIzNiwgNzMsIDI0MiwgMjI4LCAyLCAyNTAsIDk2LCAyMzYsIAorICAgIDczLCAyMzMsIDEzNywgMiwgMjI0LCAxOTMsIDE1NiwgNTAsIDI0MiwgMjI4LCAyLCAyMjQsIDE5MywgMTU2LCA1MCwgMjMzLCAKKyAgICAxMzcsIDE3MSwgMjIwLCA0NCwgMTI2LCAxMDksIDI0MiwgMjI4LCAxNzEsIDIyMCwgNDQsIDEyNiwgMTA5LCAyMzMsIDEzNywgCisgICAgMTcxLCAyMjAsIDQ0LCAxMjYsIDIxNywgMTAsIDIsIDYyLCAyMzYsIDczLCAyNDIsIDIyOCwgMTcxLCAyMjAsIDQ0LCAxMjYsIAorICAgIDIxNywgMTAsIDIsIDYyLCAyMzYsIDczLCAyMzMsIDEzNywgMTcxLCAyMjAsIDQ0LCAxMjYsIDIxNywgMTAsIDIsIDYyLCA1MCwgCisgICAgMjQyLCAyMjgsIDE3MSwgMjIwLCA0NCwgMTI2LCAyMTcsIDEwLCAyLCA2MiwgNTAsIDIzMywgMTM3LCAxNzEsIDIyMCwgNDQsIAorICAgIDEyNiwgMjE3LCAxMCwgMiwgNjIsIDc0LCAyMjMsIDE4MiwgMjQyLCAyMjgsIDE3MSwgMjIwLCA0NCwgMTI2LCAyMTcsIDEwLCAKKyAgICAyLCA2MiwgNzQsIDIzMywgMTY4LCAyMzMsIDEzNywgMTcxLCAyNTQsIDkwLCAyNDIsIDIyOCwgMTcxLCAyNTQsIDkwLCAyMzMsIAorICAgIDEzNywgMjIsIDIyMCwgOTgsIDIyOCwgMjA2LCAxMjYsIDEwOSwgMjQyLCAyMjgsIDIyLCAyMjAsIDk4LCAyMjgsIDIwNiwgCisgICAgMTI2LCAxMDksIDIzMywgMTM3LCAyMiwgMjI4LCAyMDYsIDI1NCwgOTAsIDI0MiwgMjI4LCAyMiwgMjI4LCAyMDYsIDI1NCwgCisgICAgOTAsIDIzMywgMTM3LCA3NCwgMjQ2LCAxODYsIDEyNiwgNzQsIDI0MiwgMjI3LCAyNDIsIDIyOCwgNzQsIDI0NiwgMTg2LCAKKyAgICAxMjYsIDc0LCAyMzMsIDEzNiwgMjMzLCAxMzcsIDc0LCAyMjAsIDEwNywgMTcxLCAyNDUsIDE4MywgMjQyLCAyMjgsIDc0LCAKKyAgICAyMjAsIDEwNywgMTcxLCAyNDUsIDE4MywgMjMzLCAxMzcsIDc0LCAyMjAsIDEwNywgNzQsIDI0MiwgMjI3LCAyNDIsIDIyOCwgCisgICAgNzQsIDIyMCwgMTA3LCA3NCwgMjMzLCAxMzYsIDIzMywgMTM3LCA3NCwgMjQyLCAyMjgsIDc0LCAyNDYsIDE4NiwgMjQ1LCAKKyAgICAxODMsIDI0MiwgMjI4LCA3NCwgMjMzLCAxMzcsIDc0LCAyNDYsIDE4NiwgMjQ1LCAxODMsIDIzMywgMTM3LCA3NCwgMjIwLCAKKyAgICA0NCwgMTI2LCA3NCwgMjQyLCAyMjgsIDc0LCAyMjAsIDQ0LCAyNDUsIDE4MywgMjQyLCAyMjgsIDc0LCAyMjAsIDQ0LCAxMjYsIAorICAgIDc0LCAyMzMsIDEzNywgNzQsIDIyMCwgNDQsIDI0NSwgMTgzLCAyMjAsIDQ0LCAxMjYsIDIxNywgMTAsIDE3MSwgMjMzLCAKKyAgICAxMzYsIDIyMCwgNDQsIDEyNiwgMjE3LCAxMCwgMTcxLCAyNDIsIDIyNywgMjIwLCA0NCwgMTI2LCAyMTcsIDEwLCAxNzEsIAorICAgIDIzMywgMTM3LCAyLCA2MiwgMjM2LCA3MywgMjIwLCA0NCwgMTI2LCAyMTcsIDEwLCAxNzEsIDI0MiwgMjI4LCAyLCA2MiwgCisgICAgMjM2LCA3MywgMjQ2LCAxODYsIDEyNiwgMjE3LCAxMCwgMTcxLCAyMzMsIDEzNiwgMjQ2LCAxODYsIDEyNiwgMjE3LCAxMCwgCisgICAgMTcxLCAyNDIsIDIyNywgMjQ2LCAxODYsIDIyMCwgNDQsIDEyNiwgMjE3LCAxMCwgMTcxLCAyMzMsIDEzNiwgMjQ2LCAxODYsIAorICAgIDIyMCwgNDQsIDEyNiwgMjE3LCAxMCwgMTcxLCAyNDIsIDIyNywgMjIwLCAxMDcsIDE3MSwgMjMzLCAxMzYsIDIyMCwgMTA3LCAKKyAgICAxNzEsIDI0MiwgMjI3LCAyMjAsIDEwNywgNzQsIDIzMywgMTM3LCA3NCwgMjQ1LCAxODIsIDUzLCAyMjAsIDEwNywgNzQsIAorICAgIDI0MiwgMjI4LCA3NCwgMjQ1LCAxODIsIDUzLCA1MiwgMjI5LCAyNDAsIDIzMywgMTM2LCA1MiwgMjI5LCAyNDAsIDI0MiwgCisgICAgMjI3LCA1MiwgMjI5LCAyNDAsIDIzMywgMTM3LCAyLCAyMTUsIDE1OSwgMjQyLCAyMjgsIDIyNywgMjcsIDIzMywgMTM2LCAKKyAgICAyNDIsIDIyOCwgMjUyLCA3NywgMjMzLCAxMzYsIDIzMywgMTM3LCAyNTAsIDYwLCAyNTEsIDEzMiwgMjQ5LCAxNTcsIDI0MiwgCisgICAgMjI4LCAyNTAsIDYwLCAyNTEsIDEzMiwgMjQ5LCAxNTcsIDIzMywgMTM3LCAyNTAsIDYwLCAyNTEsIDEzMiwgMjQ5LCAxNTgsIAorICAgIDc0LCAyMjAsIDQ0LCAyNDUsIDE4MywgMjQyLCAyMjgsIDI1MCwgNjAsIDI1MSwgMTMyLCAyNDksIDE1OCwgNzQsIDIyMCwgCisgICAgNDQsIDI0NSwgMTgzLCAyMjAsIDI1LCAyMTcsIDE2NiwgMjMzLCAyMDUsIDIxNywgMTY2LCAyMjAsIDI1LCAyMTcsIDE2NywgCisgICAgMTcxLCAxMjYsIDEwOSwgMjMzLCAyMDUsIDIxNywgMTY3LCAxNzEsIDEyNiwgMTA5LCAyNDUsIDE4MiwgNSwgMiwgMjUxLCAKKyAgICAxNjIsIDUwLCAyMjUsIDExOSwgNzQsIDIyMCwgOTgsIDI0NSwgMTgyLCA1MywgMjE5LCAxNSwgNzQsIDIyMCwgOTgsIDI0NSwgCisgICAgMTgyLCA1MywgMjI1LCAxMTksIDc0LCAyMjAsIDk4LCAyMjgsIDIwNiwgMTI2LCAxMDksIDIxOSwgMTUsIDc0LCAyMjAsIDk4LCAKKyAgICAyMjgsIDIwNiwgMTI2LCAxMDksIDIyNSwgMTE5LCA3NCwgMjQ1LCAxODIsIDUzLCAyMTksIDE1LCA3NCwgMjQ1LCAxODIsIAorICAgIDUzLCAyMjUsIDExOSwgNzQsIDIyOCwgMjA2LCAxMjYsIDEwOSwgMjE5LCAxNSwgNzQsIDIyOCwgMjA2LCAxMjYsIDEwOSwgCisgICAgMjI1LCAxMTksIDc0LCAyNTQsIDE4NCwgMTI2LCAxMDksIDIxOSwgMTUsIDc0LCAyNTQsIDE4NCwgMTI2LCAxMDksIDIyNSwgCisgICAgMTE5LCA3NCwgMjI4LCAyMDYsIDI1NCwgMTg0LCAxMjYsIDEwOSwgMjE5LCAxNSwgNzQsIDIyOCwgMjA2LCAyNTQsIDE4NCwgCisgICAgMTI2LCAxMDksIDUyLCAyMjUsIDExOCwgNTIsIDIxOSwgMTQsIDIxOSwgMjMsIDIsIDI0NywgMTk1LCAyMTgsIDIzNiwgMiwgCisgICAgMjQ3LCAxOTUsIDIxOSwgMjMsIDIsIDk1LCA1LCA1NSwgMjE4LCAyMzYsIDIsIDk1LCA1LCA1NSwgMjE5LCAyMywgMiwgMjMwLCAKKyAgICAyMjQsIDUsIDU1LCAyMTgsIDIzNiwgMiwgMjMwLCAyMjQsIDUsIDU1LCAyMTksIDIzLCA2OCwgMTcxLCAxMjYsIDIxNywgMTAsIAorICAgIDIsIDYyLCA1MCwgMjE4LCAyMzYsIDY4LCAxNzEsIDEyNiwgMjE3LCAxMCwgMiwgNjIsIDUwLCAyMTksIDIzLCA2OCwgNzQsIAorICAgIDI0NSwgMTgyLCA1MywgMjE4LCAyMzYsIDY4LCA3NCwgMjQ1LCAxODIsIDUzLCAyMTksIDIzLCA2OCwgNzQsIDIxNywgNTYsIAorICAgIDIyNywgNzEsIDIxOCwgMjM2LCA2OCwgNzQsIDIxNywgNTYsIDIyNywgNzEsIDIxOSwgMjMsIDY4LCA3NCwgMjU0LCAxODQsIAorICAgIDEyNiwgMTA5LCAyMTgsIDIzNiwgNjgsIDc0LCAyNTQsIDE4NCwgMTI2LCAxMDksIDIxOSwgMjMsIDY4LCA3NCwgMjI4LCAKKyAgICAyMDYsIDEyNiwgMTA5LCAyMTgsIDIzNiwgNjgsIDc0LCAyMjgsIDIwNiwgMTI2LCAxMDksIDQyLCA0MywgMjEwLCA5MywgCisgICAgMjI3LCA3MSwgNDIsIDQ3LCAyMTAsIDkzLCAyMjcsIDcxLCAyNTAsIDYwLCAyMTksIDIyLCAyNTAsIDYwLCAyMTgsIDIzNSwgCisgICAgMjUwLCA2MCwgMjE5LCAyMywgMTcxLCAxMjYsIDEwOSwgMjUwLCA2MCwgMjE4LCAyMzYsIDE3MSwgMTI2LCAxMDksIDIxOSwgCisgICAgMjMsIDc0LCAyMTgsIDIzNSwgMjE4LCAyMzYsIDc0LCAyMTksIDIyLCAyMTksIDIzLCA3NCwgMjE5LCAyMiwgMjE4LCAyMzYsIAorICAgIDc0LCAyMTgsIDIzNSwgMjE4LCAyMzYsIDI1MiwgNzcsIDIxOSwgMjIsIDIxOCwgMjM2LCAyNTIsIDc3LCAyMiwgMjM1LCAKKyAgICAxODIsIDI1MSwgMTMyLCAyNDgsIDIyNCwgMiwgMjE5LCAyMiwgMjQ1LCAyNDgsIDY4LCAyMjcsIDczLCAyNDYsIDE3OCwgCisgICAgMjI1LCAyMTYsIDIsIDIxNywgMjMzLCAyMTYsIDIzOSwgMjE2LCAyMTEsIDIzNiwgNTYsIDI0NCwgMTEwLCAyMjgsIDIxOSwgCisgICAgMjIwLCAxOTYsIDQzLCAyMTgsIDUwLCAyMjAsIDE5NiwgMTIxLCAyMTgsIDUwLCAyMjAsIDE5NiwgMTE2LCAyMTgsIDUwLCAKKyAgICAyMjYsIDg0LCAyLCAxOTYsIDY2LCAyNTIsIDE4NywgMjE2LCAxODIsIDQ3LCAyMTYsIDY1LCA1MiwgNjYsIDI1MiwgMTg3LCAKKyAgICA0MywgMjE2LCA2NSwgNjYsIDI1MiwgMTg3LCA1MiwgNDMsIDIxNiwgNjUsIDUyLCA2NiwgMjUyLCAxODcsIDUyLCA0MywgCisgICAgMjE2LCA2NSwgMTg3LCAyNDgsIDIyNCwgMjQ0LCA3NywgNDMsIDIzMSwgMTk3LCA2OCwgNTIsIDIxNCwgMjIxLCAyMjAsIAorICAgIDE5NiwgMTIxLCAyMTgsIDUxLCAyLCAyMjcsIDI5LCAyMjAsIDE5NiwgMTE2LCAyMTgsIDUxLCAyLCAyMTUsIDE1OSwgMjIwLCAKKyAgICAxOTYsIDExNiwgMjE4LCA1MSwgNzQsIDIyMCwgMTk2LCAxMjEsIDIxOCwgNTAsIDUyLCAxMjEsIDIxOCwgNTAsIDUyLCAxMTYsIAorICAgIDIxOCwgNTAsIDUyLCAyMTksIDU5LCAyMjgsIDIwNiwgNTMsIDIyMywgMjM2LCA1MiwgMjE5LCA1OSwgMjI4LCAyMDYsIDUzLCAKKyAgICAyNDcsIDIxMywgMjI4LCAyMDYsIDI0NywgMjQ4LCAyLCAyMjMsIDIzNiwgMjI5LCAyNDksIDIyMCwgNDIsIDY2LCAyMzMsIAorICAgIDg0LCAyLCAyNTAsIDk2LCA1MCwgNjYsIDIzMywgODQsIDIsIDI1MCwgOTYsIDU1LCAxMjEsIDIxOCwgNTEsIDIsIDI1MCwgCisgICAgOTYsIDU1LCAyMjYsIDE3MywgMiwgMjAxLCA5MSwgMjI2LCAxNzMsIDIsIDIxNywgNTYsIDIyNywgNzEsIDIxNiwgMTgyLCAKKyAgICA2NiwgMjUyLCAxODcsIDI1MiwgMzYsIDIyNCwgMTksIDIxNiwgMTgyLCA2NiwgMjUyLCAxODcsIDIsIDIwMSwgOTEsIDIxNiwgCisgICAgMTgyLCAyNTAsIDMxLCAyMjcsIDcxLCAyMTYsIDE4MiwgMjI5LCAyNDAsIDIzMywgMTM2LCAyMTYsIDE4MiwgMjI5LCAyNDAsIAorICAgIDI0MiwgMjI3LCAyNDYsIDE4NiwgMjIwLCA0NCwgMjMzLCAxMzcsIDE3MSwgMTI2LCAxMDksIDI0NiwgMTg2LCAyMjAsIDQ0LCAKKyAgICAyNDIsIDIyOCwgMTcxLCAxMjYsIDEwOSwgMjE2LCAxODIsIDIxOSwgMjUxLCAyNTIsIDM2LCAyMjQsIDE5LCAyMzMsIDIwNywgCisgICAgMjE2LCAxODIsIDY2LCAyNTIsIDE4NywgMjI3LCA3MSwgNTIsIDIxOSwgMjUxLCAyMjcsIDcxLCA2OSwgNjYsIDEzNCwgMjMwLCAKKyAgICAxNjYsIDY5LCA2NiwgMTM0LCAyMjgsIDIxMCwgMjQ2LCA0MSwgNjksIDcxLCAyMjgsIDIxMCwgMjEzLCAyNTMsIDY5LCA3MSwgCisgICAgMjE5LCAyMzQsIDI0NiwgNDEsIDY5LCA3MSwgMjE5LCAyMzQsIDIxMywgMjUzLCA2OSwgNzEsIDQzLCA0NywgNjksIDcxLCAKKyAgICAxMzUsIDg1LCA3MSwgMjE1LCAxMzAsIDg1LCA3MSwgMjQ2LCAxNzksIDg1LCA3MSwgMjI4LCAyMTAsIDI0NiwgNDEsIDg1LCAKKyAgICA3MSwgMjI4LCAyMTAsIDIxMywgMjUzLCA4NSwgNzEsIDIxOSwgMjM0LCAyNDYsIDQxLCA4NSwgNzEsIDIxOSwgMjM0LCAyMTMsIAorICAgIDI1MywgODUsIDcxLCA0MywgNDcsIDg1LCA3MSwgMTE2LCAxMjEsIDg1LCA3MSwgOTYsIDgwLCAyLCAyMTcsIDQ0LCAyNDYsIAorICAgIDE3OCwgOTYsIDgwLCAyLCAyMTcsIDQ0LCAyMTUsIDEyOSwgMTM1LCA4MCwgMiwgMjE3LCA0NCwgMjQ2LCAxNzgsIDEzNSwgCisgICAgODAsIDIsIDIxNywgNDQsIDIxNSwgMTI5LCA0MiwgMiwgMjE2LCAyNDAsIDE1NywgMjUyLCAxMywgNDIsIDIsIDI1MSwgMjI2LCAKKyAgICAxNTcsIDI1MiwgMTMsIDQyLCAyLCAyMTUsIDEzNywgNDcsIDI0OCwgNzIsIDE1NywgMjUyLCAxMywgNDIsIDIsIDIzMiwgCisgICAgMjM3LCA0MywgMjQ4LCA3MiwgMTU3LCAyNTIsIDEzLCAyNDgsIDY2LCAyLCA0MywgMTU3LCAyNTIsIDEzLCAyNDgsIDY2LCAyLCAKKyAgICA0NywgMTU3LCAyNTIsIDEzLCAyNDgsIDY2LCAyLCAyMTYsIDI0MCwgMTU3LCAyNTIsIDEzLCAyNDgsIDY2LCAyLCAyNTEsIAorICAgIDIyNiwgMTU3LCAyNTIsIDEzLCAyNDYsIDE5MywgMjE5LCAxODUsIDg1LCAyMzMsIDIwNywgMjE5LCAxODUsIDY5LCAyMzMsIAorICAgIDIwNywgMjE5LCAxODUsIDg1LCAyMTQsIDE2OSwgNCwgMjE5LCAxODUsIDY5LCAyMTQsIDE2OSwgNCwgMjE5LCAxODUsIDg1LCAKKyAgICAyMjYsIDEwMSwgNjksIDIyNiwgMTAxLCA2OSwgMjQyLCA0MSwgODUsIDI0MiwgNDEsIDIwMSwgODUsIDI0MiwgNDEsIDg1LCAKKyAgICAyMzMsIDIwNywgMjUwLCA5NSwgODUsIDIzMSwgMjE3LCAyNDgsIDY1LCA2OSwgMjMxLCAyMTcsIDI0OCwgNjUsIDg1LCAyMzEsIAorICAgIDIxNywgMjMyLCAyMzMsIDY5LCAyMzEsIDIxNywgMjMyLCAyMzMsIDg1LCA0LCAyNDgsIDY1LCA4NSwgNCwgMjMyLCAyMzMsIAorICAgIDY5LCA0LCAyMzIsIDIzMywgODUsIDIwMSwgMjQ1LCAyNDIsIDY5LCAyMDEsIDI0NSwgMjQyLCA4NSwgNjYsIDI0NSwgMjQyLCAKKyAgICA2OSwgNjYsIDI0NSwgMjQyLCA0MywgODAsIDIsIDQsIDI1MCwgOTUsIDEzNywgMTM1LCAyNTQsIDMzLCA0MywgODAsIDIsIAorICAgIDM3LCAyMjUsIDE5MiwgMTg3LCAxMzUsIDIxOSwgMTgxLCA3MSwgMTM1LCAyMTYsIDMxLCA4MCwgMiwgNjYsIDkxLCAxMzUsIAorICAgIDIxNiwgMzEsIDgwLCAyLCA1MiwgNjYsIDkxLCAxMzUsIDIxNiwgMzEsIDgwLCAyNDQsIDc3LCAxMzQsIDEzNSwgMjE2LCAzMSwgCisgICAgMjE2LCAxODIsIDI0OCwgMjI0LCA3MSwgMTM1LCA4MCwgMiwgMjQ2LCAxOTMsIDIxOSwgOTMsIDEzNSwgODAsIDIsIDIxOCwgCisgICAgNDEsIDIsIDY2LCA5MSwgMTM1LCA4MCwgMiwgMjE4LCA0MSwgMiwgNTIsIDY2LCA5MSwgMTM1LCAyMTYsIDMxLCA4MCwgMiwgCisgICAgMjE4LCA0MCwgMTM1LCAyMTYsIDMxLCA4MCwgMiwgMjE4LCA0MSwgMiwgNjYsIDkxLCAxMzUsIDIxNiwgMzEsIDgwLCAyLCAKKyAgICAyMTgsIDQxLCAyLCA1MiwgNjYsIDkxLCAxMzUsIDgwLCAyMTcsIDEwNiwgMjEzLCAxNjksIDIxNCwgMjMsIDgwLCAyMjUsIAorICAgIDE3NywgMjQ4LCAxMiwgMjMzLCAxNjgsIDI0NSwgMTgyLCA1LCA3NCwgMTM1LCA3MSwgMjIzLCAyMzcsIDIxNywgNTYsIDIyNywgCisgICAgNzIsIDc0LCAxMzUsIDcxLCAxMzUsIDgwLCA3NCwgMjIzLCAyMzcsIDI1NCwgMTg0LCAxMjYsIDEwOSwgOTYsIDgwLCAyMTcsIAorICAgIDEwNiwgMjQyLCAyMjcsIDk2LCA4MCwgMjE3LCAxMDYsIDIxOCwgMjM1LCAxMzUsIDIyNCwgMjA0LCA3MSwgOTYsIDIyNCwgCisgICAgMjA0LCA3MSwgMjIzLCAyMzcsIDIxNywgNTYsIDIyNywgNzIsIDc0LCA5NiwgNzEsIDk2LCA4MCwgNzQsIDIyMywgMjM3LCAKKyAgICAyNTQsIDE4NCwgMTI2LCAxMDksIDIxNywgNTYsIDIyNywgNzIsIDc0LCAxMzUsIDcxLCAxMzUsIDgwLCA3NCwgMjU0LCAxODQsIAorICAgIDEyNiwgMTA5LCAxMzUsIDgwLCA3NCwgMjIzLCAyMzcsIDIxNywgNTYsIDIyNywgNzEsIDk2LCA4MCwgNzQsIDIyMywgMjM3LCAKKyAgICAyMTcsIDU2LCAyMjcsIDcxLCA2OSwgMjMxLCAyMTcsIDIxOSwgMTA5LCA4NSwgNCwgMjE5LCAxMDksIDY5LCA0LCAyMTksIAorICAgIDEwOSwgODUsIDIyMywgMTc4LCAyMjYsIDEwMSwgNjksIDIyMywgMTc4LCAyMjYsIDEwMSwgMTEwLCAyMzMsIDIwNywgMjUwLCAKKyAgICA5NSwgMTEwLCAyMjcsIDMwLCAyLCAyMjcsIDMwLCAyMzYsIDczLCAxMTAsIDI1MCwgOTYsIDIsIDI1MCwgOTYsIDIzNiwgNzMsIAorICAgIDExMCwgMjUwLCA5NSwgMTEwLCAzNywgMjIyLCAxOTMsIDE0MCwgNiwgMSwgMjUzLCAyMDIsIDE0MCwgNiwgMSwgMjUxLCAKKyAgICAxNzEsIDE0MCwgNiwgMSwgMjE0LCAyMzUsIDE0MCwgNiwgMSwgMjQzLCAyNSwgMTQwLCA2LCAxLCAyNDcsIDIxNSwgMTQwLCAKKyAgICA2LCAxLCAyMTMsIDEzLCAxNDAsIDYsIDEsIDIxMiwgNjEsIDE0MCwgNiwgMSwgMjQ2LCAxMTAsIDE0MCwgNiwgMSwgMjEyLCAKKyAgICA4NCwgMTQwLCA2LCAxLCAyMzYsIDcsIDE0MCwgNiwgMSwgNzMsIDIzNiwgNywgMTQwLCA2LCAxLCA3NSwgMTQwLCA2LCAxLCAKKyAgICAyNDcsIDIzMywgMTQwLCA2LCAxLCAyMzUsIDEwMiwgMTQwLCA2LCAxLCAyMzMsIDU2LCAxNDAsIDYsIDEsIDIzMCwgMTcwLCAKKyAgICAxNDAsIDYsIDEsIDIzMCwgODAsIDE0MCwgNiwgMSwgMjI3LCA4OCwgMTQwLCA2LCAxLCAyMjUsIDE3NCwgMTQwLCA2LCAxLCAKKyAgICAyMjMsIDE1OCwgMTQwLCA2LCAxLCAyMjAsIDMwLCAxNDAsIDYsIDEsIDIxNiwgNTMsIDE0MCwgNiwgMSwgMjE1LCAxNzcsIAorICAgIDE0MCwgNiwgMSwgMjQ0LCA4MCwgMTQwLCA2LCAxLCAyNDIsIDQ3LCAxNDAsIDYsIDEsIDIyNywgNDEsIDE0MCwgNiwgMSwgCisgICAgMjI2LCAxMzIsIDE0MCwgNiwgMSwgMjIwLCAxNzMsIDE0MCwgNiwgMSwgMjE2LCAxMzgsIDE0MCwgNiwgMSwgMjUwLCAxMzUsIAorICAgIDE0MCwgNiwgMSwgMjIxLCA0NywgMTQwLCA2LCAxLCAyMTMsIDE5LCAxNDAsIDYsIDEsIDIxMywgMjEsIDE0MCwgNiwgMSwgCisgICAgMjEzLCA0OSwgMTQwLCA2LCAxLCAyMTksIDIwNCwgMTYyLCAxNDAsIDYsIDEsIDIxMiwgMjA0LCAxNDAsIDYsIDEsIDQsIAorICAgIDIxMiwgMTc1LCAxNDAsIDYsIDEsIDQsIDIxMiwgMTc2LCAyLCAyMTgsIDQwLCAxNDAsIDYsIDEsIDIxMiwgMjM2LCAxNDAsIAorICAgIDYsIDEsIDIzNiwgNDMsIDQsIDIxMiwgMTc1LCAxNDAsIDYsIDEsIDI1MiwgNDEsIDIxMiwgMTc1LCAxNDAsIDYsIDEsIDIzNiwgCisgICAgNDMsIDI1MiwgNDEsIDIxMiwgMTc1LCAxNDAsIDYsIDEsIDI0NCwgMTcxLCAxNDAsIDYsIDEsIDIzNiwgNSwgMTQwLCA2LCAxLCAKKyAgICAyMjAsIDE3MiwgMTQwLCA2LCAxLCAyMTYsIDE3MywgNjMsIDE0MCwgNiwgMSwgMjMzLCAxOTcsIDIzMCwgMTcwLCAxNDAsIDQsIAorICAgIDEsIDI1MywgMjAyLCAxNDAsIDQsIDEsIDI1MSwgMTcxLCAxNDAsIDQsIDEsIDIxNCwgMjM1LCAxNDAsIDQsIDEsIDI0MywgCisgICAgMjUsIDE0MCwgNCwgMSwgMjQ3LCAyMTUsIDE0MCwgNCwgMSwgMjEzLCAxMywgMTQwLCA0LCAxLCAyMTIsIDYxLCAxNDAsIDQsIAorICAgIDEsIDI0NiwgMTEwLCAxNDAsIDQsIDEsIDIxMiwgODQsIDE0MCwgNCwgMSwgMjM2LCA3LCAxNDAsIDQsIDEsIDczLCAyMzYsIAorICAgIDcsIDE0MCwgNCwgMSwgNzUsIDE0MCwgNCwgMSwgMjQ3LCAyMzMsIDE0MCwgNCwgMSwgMjM1LCAxMDIsIDE0MCwgNCwgMSwgCisgICAgMjMzLCA1NiwgMTQwLCA0LCAxLCAyMzAsIDE3MCwgMTQwLCA0LCAxLCAyMzAsIDgwLCAxNDAsIDQsIDEsIDIyNywgODgsIAorICAgIDE0MCwgNCwgMSwgMjI1LCAxNzQsIDE0MCwgNCwgMSwgMjIzLCAxNTgsIDE0MCwgNCwgMSwgMjIwLCAzMCwgMTQwLCA0LCAxLCAKKyAgICAyMTYsIDUzLCAxNDAsIDQsIDEsIDIxNSwgMTc3LCAxNDAsIDQsIDEsIDI0NCwgODAsIDE0MCwgNCwgMSwgMjQyLCA0NywgCisgICAgMTQwLCA0LCAxLCAyMjcsIDQxLCAxNDAsIDQsIDEsIDIyNiwgMTMyLCAxNDAsIDQsIDEsIDIyMCwgMTczLCAxNDAsIDQsIDEsIAorICAgIDIxNiwgMTM4LCAxNDAsIDQsIDEsIDI1MCwgMTM1LCAxNDAsIDQsIDEsIDIyMSwgNDcsIDE0MCwgNCwgMSwgMjEzLCAxOSwgCisgICAgMTQwLCA0LCAxLCAyMTMsIDIxLCAxNDAsIDQsIDEsIDIxMywgNDksIDE0MCwgNCwgMSwgMjE5LCAyMDQsIDE2MiwgMTQwLCA0LCAKKyAgICAxLCAyMTIsIDIwNCwgMTQwLCA0LCAxLCA0LCAyMTIsIDE3NSwgMTQwLCA0LCAxLCA0LCAyMTIsIDE3NiwgMiwgMjE4LCA0MCwgCisgICAgMTQwLCA0LCAxLCAyMTIsIDIzNiwgMTQwLCA0LCAxLCAyMzYsIDQzLCA0LCAyMTIsIDE3NSwgMTQwLCA0LCAxLCAyNTIsIDQxLCAKKyAgICAyMTIsIDE3NSwgMTQwLCA0LCAxLCAyMzYsIDQzLCAyNTIsIDQxLCAyMTIsIDE3NSwgMTQwLCA0LCAxLCAyNDQsIDE3MSwgCisgICAgMTQwLCA0LCAxLCAyMzYsIDUsIDE0MCwgNCwgMSwgMjIwLCAxNzIsIDE0MCwgNCwgMSwgMjE2LCAxNzMsIDYzLCAxNDAsIDQsIAorICAgIDEsIDIzMywgMTk3LCAyMzAsIDE3MCwgNywgNiwgMSwgMjM0LCAxMywgMiwgNTIsIDEzNCwgNywgNCwgMSwgMjM0LCAxMywgMiwgCisgICAgNTIsIDEzNCwgNywgNiwgMSwgMjM0LCAxMywgMiwgMjMxLCAxMDcsIDE3NywgNywgNiwgMSwgMjI3LCAxMiwgMiwgOTEsIDcsIAorICAgIDYsIDEsIDIyNCwgMTQ4LCAyLCAyMTgsIDQwLCA3LCA0LCAxLCAxMTEsIDIsIDkxLCA3LCA0LCAxLCAyMTgsIDExNCwgMiwgCisgICAgMjQ4LCA3MiwgOTEsIDcsIDYsIDEsIDI0MiwgMTYzLCAyLCAyNDgsIDExMSwgNywgNCwgMSwgMjQyLCAxNjMsIDIsIDI0OCwgCisgICAgMTExLCA3LCA2LCAxLCAyMzUsIDE0MiwgMiwgMjQ4LCAxMTEsIDcsIDQsIDEsIDIzNSwgMTQyLCAyLCAyNDgsIDExMSwgNywgCisgICAgNiwgMSwgMjEyLCAxNTMsIDIsIDI0OCwgMTExLCA3LCA0LCAxLCAyMTIsIDE1MywgMiwgMjQ4LCAxMTEsIDcsIDYsIDEsIAorICAgIDI1NCwgMTc5LCA3LCA2LCAxLCAyMzIsIDE4MywgMiwgMTAyLCA3LCA2LCAxLCAyMTYsIDY2LCA2MywgNywgNiwgMSwgMjE2LCAKKyAgICA2NiwgMjU0LCAxNzksIDcsIDQsIDEsIDIxNSwgODYsIDIsIDQ3LCAxMDIsIDcsIDYsIDEsIDIxNCwgODYsIDIsIDEwMiwgNywgCisgICAgNCwgMSwgMjE0LCA4NiwgMiwgMTAyLCA3LCA0LCAxLCAyMTUsIDg2LCAyLCAyNDksIDE2NCwgNywgNiwgMSwgMTU3LCAyNDIsIAorICAgIDE2MiwgNywgNCwgMSwgMTU3LCAyNDIsIDE2MiwgNywgNCwgMSwgMjE4LCAzOCwgMjI2LCA0NSwgNywgNCwgMSwgMTU0LCAyLCAKKyAgICAyMjgsIDIwNCwgNywgNCwgMSwgMjE2LCA2NiwgMjI0LCAxNDgsIDIsIDIxOCwgNDAsIDcsIDQsIDEsIDE0MSwgMiwgMTE3LCAKKyAgICAyMjMsIDE2NSwgMjM2LCA3MywgNywgMSwgNCwgNiwgMjE2LCA2NiwgNzcsIDcsIDIxOSwgMjQsIDQsIDEsIDIzNiwgMywgNTksIAorICAgIDEsIDYsIDIxMSwgMjExLCA3LCA2LCAxLCAyMjMsIDI5LCAyLCAyMTgsIDIwOSwgMjE4LCA0MCwgNywgNiwgMSwgMjEyLCAKKyAgICAxNTMsIDIsIDIxOCwgMjA5LCAyMTgsIDQwLCA4MSwgNiwgMSwgMjU0LCAyMDAsIDgxLCA0LCAxLCAyNTQsIDIwMCwgODEsIDYsIAorICAgIDEsIDIxNCwgMTU2LCA4MSwgNCwgMSwgMjE0LCAxNTYsIDgxLCA2LCAxLCAyNDMsIDIwMywgODEsIDQsIDEsIDI0MywgMjAzLCAKKyAgICA4MSwgNiwgMSwgMjQ5LCAyLCA4MSwgNCwgMSwgMjQ5LCAyLCA4MSwgNiwgMSwgMjQ2LCAxNiwgODEsIDQsIDEsIDI0NiwgMTYsIAorICAgIDgxLCA2LCAxLCAyMTksIDIzOSwgODEsIDQsIDEsIDIxOSwgMjM5LCA4MSwgNiwgMSwgMjEyLCA5NCwgODEsIDQsIDEsIDIxMiwgCisgICAgOTQsIDgxLCA2LCAxLCAyNDIsIDk1LCA4MSwgNCwgMSwgMjQyLCA5NSwgODEsIDYsIDEsIDIxNywgMTQzLCA4MSwgNCwgMSwgCisgICAgMjE3LCAxNDMsIDgxLCA2LCAxLCAyNDAsIDIyNiwgODEsIDQsIDEsIDI0MCwgMjI2LCA4MSwgNiwgMSwgMjM1LCA4OSwgODEsIAorICAgIDQsIDEsIDIzNSwgODksIDgxLCA2LCAxLCAyMzMsIDE5NCwgODEsIDQsIDEsIDIzMywgMTk0LCA4MSwgNiwgMSwgMjMxLCAKKyAgICAxMTIsIDgxLCA0LCAxLCAyMzEsIDExMiwgODEsIDYsIDEsIDIyOSwgMTI4LCA4MSwgNCwgMSwgMjI5LCAxMjgsIDgxLCA2LCAKKyAgICAxLCAyMzQsIDk3LCA4MSwgNCwgMSwgMjM0LCA5NywgODEsIDYsIDEsIDc4LCA4MSwgNCwgMSwgNzgsIDgxLCA2LCAxLCAyMjYsIAorICAgIDIwLCA4MSwgNCwgMSwgMjI2LCAyMCwgODEsIDYsIDEsIDIyMywgMTQ2LCA4MSwgNCwgMSwgMjIzLCAxNDYsIDgxLCA2LCAxLCAKKyAgICAyMjAsIDExMCwgODEsIDQsIDEsIDIyMCwgMTEwLCA4MSwgNiwgMSwgMjE4LCA1LCA4MSwgNCwgMSwgMjE4LCA1LCA4MSwgNiwgCisgICAgMSwgMjE1LCAyMDIsIDgxLCA0LCAxLCAyMTUsIDIwMiwgODEsIDYsIDEsIDI0NCwgMjEwLCA4MSwgNCwgMSwgMjQ0LCAyMTAsIAorICAgIDgxLCA2LCAxLCAyMzQsIDIzMCwgODEsIDQsIDEsIDIzNCwgMjMwLCA4MSwgNiwgMSwgMjI1LCA4MiwgODEsIDQsIDEsIDIyNSwgCisgICAgODIsIDgxLCA2LCAxLCAyMjcsIDgxLCA4MSwgNCwgMSwgMjI3LCA4MSwgODEsIDYsIDEsIDI0OCwgNzAsIDI1NCwgMjA1LCAKKyAgICA4MSwgNCwgMSwgMjQ4LCA3MCwgMjU0LCAyMDUsIDgxLCA2LCAxLCA1NCwgODEsIDI1NCwgMjMxLCA4MSwgNCwgMSwgNTQsIAorICAgIDgxLCAyNTQsIDIzMSwgODEsIDYsIDEsIDI0OSwgMTc4LCAyNDYsIDE2LCA4MSwgNCwgMSwgMjQ5LCAxNzgsIDI0NiwgMTYsIAorICAgIDgxLCA2LCAxLCAyNDgsIDcwLCAyMzUsIDg5LCA4MSwgNCwgMSwgMjQ4LCA3MCwgMjM1LCA4OSwgODEsIDYsIDEsIDI0OCwgCisgICAgNzAsIDIyOSwgMTI4LCA4MSwgNCwgMSwgMjQ4LCA3MCwgMjI5LCAxMjgsIDgxLCA2LCAxLCAyNDksIDE3OCwgMjI5LCAxMjgsIAorICAgIDgxLCA0LCAxLCAyNDksIDE3OCwgMjI5LCAxMjgsIDgxLCA2LCAxLCA1NCwgODEsIDIyNywgODEsIDgxLCA0LCAxLCA1NCwgCisgICAgODEsIDIyNywgODEsIDgxLCA2LCAxLCAyMjIsIDE4NSwgODEsIDQsIDEsIDIyMiwgMTg1LCA4MSwgNiwgMSwgMjQ5LCAxOTEsIAorICAgIDIyMSwgMCwgODEsIDQsIDEsIDI0OSwgMTkxLCAyMjEsIDAsIDgxLCA2LCAxLCA1NCwgODEsIDIyMSwgMCwgODEsIDQsIDEsIAorICAgIDU0LCA4MSwgMjIxLCAwLCA4MSwgNiwgMSwgNTQsIDgxLCAyNDUsIDE2MSwgODEsIDQsIDEsIDU0LCA4MSwgMjQ1LCAxNjEsIAorICAgIDgxLCA2LCAxLCAyNTQsIDIxNywgMjM0LCAyMzUsIDgxLCA0LCAxLCAyNTQsIDIxNywgMjM0LCAyMzUsIDgxLCA2LCAxLCAKKyAgICAyNDgsIDcwLCAyNDEsIDE1MCwgODEsIDQsIDEsIDI0OCwgNzAsIDI0MSwgMTUwLCA4MSwgNiwgMSwgNTQsIDgxLCAyNDEsIAorICAgIDE1MCwgODEsIDQsIDEsIDU0LCA4MSwgMjQxLCAxNTAsIDgxLCA2LCAxLCA1NCwgODEsIDE2MiwgODEsIDQsIDEsIDU0LCA4MSwgCisgICAgMTYyLCA4MSwgNiwgMSwgMjM0LCAxMiwgMTYyLCA4MSwgNCwgMSwgMjM0LCAxMiwgMTYyLCA4MSwgNiwgMSwgNTQsIDgxLCAKKyAgICAyNDIsIDY0LCA4MSwgNCwgMSwgNTQsIDgxLCAyNDIsIDY0LCA4MSwgNiwgMSwgNTQsIDgxLCAyNDIsIDk4LCA4MSwgNCwgMSwgCisgICAgNTQsIDgxLCAyNDIsIDk4LCA4MSwgNiwgMSwgNTQsIDgxLCAyNDMsIDE5OCwgODEsIDQsIDEsIDU0LCA4MSwgMjQzLCAxOTgsIAorICAgIDgxLCA2LCAxLCA1NCwgODEsIDI0NywgMjM2LCA4MSwgNCwgMSwgNTQsIDgxLCAyNDcsIDIzNiwgODEsIDYsIDEsIDU0LCA4MSwgCisgICAgMjIwLCAyMjMsIDgxLCA0LCAxLCA1NCwgODEsIDIyMCwgMjIzLCA4MSwgNiwgMSwgNTQsIDIyOCwgMTA2LCAyMjAsIDIyMywgCisgICAgODEsIDQsIDEsIDU0LCAyMjgsIDEwNiwgMjIwLCAyMjMsIDgxLCA2LCAxLCA1NCwgMjI4LCAxMDYsIDIyOSwgMTc4LCA4MSwgCisgICAgNCwgMSwgNTQsIDIyOCwgMTA2LCAyMjksIDE3OCwgODEsIDYsIDEsIDU0LCAyMjgsIDEwNiwgMjI4LCA0OSwgODEsIDQsIDEsIAorICAgIDU0LCAyMjgsIDEwNiwgMjI4LCA0OSwgODEsIDYsIDEsIDU0LCAyMjgsIDEwNiwgMjE0LCAyNCwgODEsIDQsIDEsIDU0LCAKKyAgICAyMjgsIDEwNiwgMjE0LCAyNCwgODEsIDE2LCAyMzUsIDEwOCwgODEsIDE2LCAyMzEsIDExMywgMjIzLCAxNDYsIDgxLCAxNiwgCisgICAgMjI2LCAyMSwgMjIzLCAxNDYsIDgxLCAxNiwgMjE5LCAxMDEsIDgxLCAxNiwgMjE4LCA2LCAyMjMsIDE0NiwgODEsIDE2LCAKKyAgICAyMzQsIDIzMSwgMjIzLCAxNDYsIDgxLCAxNiwgMjIwLCAyMjQsIDIyMCwgMTEwLCA4MSwgNiwgMSwgMjQ5LCAxNzgsIDIyMSwgCisgICAgMCwgODEsIDQsIDEsIDI0OSwgMTc4LCAyMjEsIDAsIDgxLCA2LCAxLCAyNDksIDE3OCwgMjQzLCAxOTgsIDgxLCA0LCAxLCAKKyAgICAyNDksIDE3OCwgMjQzLCAxOTgsIDgxLCAzOCwgMjI5LCAxMjksIDUwLCA4MSwgMzgsIDIxOSwgMTk4LCAyNTQsIDEwLCA4MSwgCisgICAgMzgsIDIxOSwgMTk4LCAyMzMsIDE0MywgODEsIDU0LCAyMjgsIDEwNiwgMjQ0LCA2NCwgMjE5LCA4MywgODEsIDU0LCAyMjgsIAorICAgIDEwNiwgMjQ4LCAxNCwgMjI0LCAxOTMsIDc5LCA4MSwgNTQsIDIyOCwgMTA2LCAyMzYsIDk1LCAyMjQsIDE5MywgNzksIDgxLCAKKyAgICA1NCwgMjI4LCAxMDYsIDIxNCwgMjIzLCAyNDcsIDI0NSwgODEsIDI0NCwgOTIsIDEyNCwgMjQyLCAxMjksIDgxLCAyNDQsIAorICAgIDY0LCAyMTksIDgzLCA4MSwgMjMxLCA4LCAyNDcsIDI0NSwgOTksIDQsIDEsIDI1NCwgMTU5LCA5OSwgNCwgMSwgMjUyLCAKKyAgICAxOTgsIDk5LCA0LCAxLCAyNDMsIDIwMiwgOTksIDQsIDEsIDI0NywgMjAzLCA5OSwgNCwgMSwgMjQ1LCAyMjksIDk5LCA0LCAKKyAgICAxLCAyMTQsIDE0NSwgOTksIDQsIDEsIDIxMiwgODIsIDk5LCA0LCAxLCAyMTgsIDI0LCA5OSwgNCwgMSwgMjM2LCAxMTIsIAorICAgIDk5LCA0LCAxLCAyMzUsIDk2LCA5OSwgNCwgMSwgMjMzLCAyMDMsIDk5LCA0LCAxLCAyMzIsIDYzLCA5OSwgNCwgMSwgMjMwLCAKKyAgICA4MywgOTksIDQsIDEsIDIyNywgOTksIDk5LCA0LCAxLCAyMjYsIDE4MiwgOTksIDQsIDEsIDIxMiwgNzEsIDk5LCA0LCAxLCAKKyAgICAyMjQsIDk2LCA5OSwgNCwgMSwgMjIyLCAxODMsIDk5LCA0LCAxLCAyMTgsIDE0LCA5OSwgNCwgMSwgMjE1LCAxNjYsIDk5LCAKKyAgICA0LCAxLCAyMjYsIDUyLCA5OSwgNCwgMSwgMjM0LCAyMzksIDk5LCA0LCAxLCAyNDMsIDgxLCA5OSwgNCwgMSwgMjI0LCAyNTIsIAorICAgIDk5LCA0LCAxLCAyMjAsIDIyMSwgOTksIDQsIDEsIDI1MCwgMTU3LCA5OSwgNCwgMSwgMjUxLCA2MywgOTksIDQsIDEsIDIzNSwgCisgICAgMjE3LCA5OSwgNCwgMSwgMjUwLCAxMDAsIDk5LCA0LCAxLCAyNTAsIDIwMiwgOTksIDQsIDEsIDIxMywgMTU0LCA5OSwgNCwgCisgICAgMSwgMjM1LCAyMjgsIDk5LCA0LCAxLCAyNDIsIDE0NSwgOTksIDQsIDEsIDI0MiwgODUsIDk5LCA0LCAxLCAyNDIsIDIzLCAKKyAgICA5OSwgNCwgMSwgMjE0LCA5LCA5OSwgNCwgMSwgMjQyLCAxMDcsIDk5LCA0LCAxLCAyNDEsIDE3MCwgMjE3LCA3NSwgMSwgCisgICAgMTg5LCAyMTcsIDc1LCAxLCAyMTMsIDkwLCAyMTcsIDc1LCAxLCAyMTMsIDg5LCAyMTcsIDc1LCAxLCAyMTMsIDc5LCAyMTcsIAorICAgIDc1LCAxLCAyMTMsIDc3LCAyMTcsIDc1LCAxLCAyNTIsIDc5LCAyNTUsIDQ4LCAyMTMsIDcyLCAyMTcsIDc1LCAxLCAyMTMsIAorICAgIDcyLCAyMTcsIDc1LCAxLCAyMTMsIDg3LCAyMTcsIDc1LCAxLCAyMTMsIDg0LCAyMTcsIDc1LCAxLCAyMTMsIDg2LCAyMTcsIAorICAgIDc1LCAxLCAyMTMsIDg1LCAyMTcsIDc1LCAxLCAyMTMsIDQsIDIxNywgNzUsIDEsIDIxMywgODEsIDIxNywgNzUsIDEsIDIxMywgCisgICAgNzAsIDIxNywgNzUsIDEsIDIxNiwgODcsIDIxMywgNzAsIDIxNywgNzUsIDEsIDIxMywgNjcsIDIxNywgNzUsIDEsIDIxMywgCisgICAgNzUsIDIxNywgNzUsIDEsIDI1MiwgNzksIDI1NSwgNDgsIDIxMywgNzUsIDIxNywgNzUsIDEsIDIxNiwgODcsIDIxMywgNzUsIAorICAgIDIxNywgNzUsIDEsIDIxMywgNzQsIDIxNywgNzUsIDEsIDIxMywgOTQsIDIxNywgNzUsIDEsIDIxMywgNjgsIDIxNywgNzUsIAorICAgIDEsIDIxNiwgODcsIDIxMywgNjgsIDIxNywgNzUsIDEsIDIxMywgNTgsIDIxNywgNzUsIDEsIDIxNiwgODcsIDIxMywgNTgsIAorICAgIDIxNywgNzUsIDEsIDIxMywgMCwgMjE3LCA3NSwgMSwgMjEzLCA0MSwgMjE3LCA3NSwgMSwgMjU0LCAyNDAsIDIxMywgNDEsIAorICAgIDIxNywgNzUsIDEsIDIxNiwgODcsIDIxMywgNDEsIDIxNywgNzUsIDEsIDIxMywgNjYsIDIxNywgNzUsIDEsIDIxMywgNjUsIAorICAgIDIxNywgNzUsIDEsIDIxMywgNjIsIDIxNywgNzUsIDEsIDIxNiwgODcsIDIxMywgNzYsIDIxNywgNzUsIDEsIDIxNiwgODcsIAorICAgIDIxMywgNjAsIDIxNywgNzUsIDEsIDIxMywgNTksIDIxNywgNzUsIDEsIDIxMiwgMjA0LCAyMTcsIDc1LCAxLCAyMTMsIDU2LCAKKyAgICAyMTcsIDc1LCAxLCAyMTMsIDU1LCAyMTcsIDc1LCAxLCAyMTMsIDc4LCAyMTcsIDc1LCAxLCAyMTYsIDg3LCAyMTMsIDc4LCAKKyAgICAyMTcsIDc1LCAxLCAyNTMsIDIwNiwgMjEzLCA3OCwgMjE3LCA3NSwgMSwgMjEzLCA1NCwgMjE3LCA3NSwgMSwgMjEzLCA1MiwgCisgICAgMjE3LCA3NSwgMSwgMjEzLCA1MywgMjE3LCA3NSwgMSwgMjEzLCA1MSwgMjE3LCA3NSwgMSwgMjEzLCA1MCwgMjE3LCA3NSwgCisgICAgMSwgMjEzLCA4OCwgMjE3LCA3NSwgMSwgMjEzLCA0OCwgMjE3LCA3NSwgMSwgMjEzLCA0NiwgMjE3LCA3NSwgMSwgMjEzLCAKKyAgICA0NSwgMjE3LCA3NSwgMSwgMjEzLCA0NCwgMjE3LCA3NSwgMSwgMjEzLCA0MiwgMjE3LCA3NSwgMSwgMjE3LCAyNTQsIDIxMywgCisgICAgNDIsIDIxNywgNzUsIDEsIDIxMywgNDAsIDIxNywgNzUsIDU5LCAxLCAyMzMsIDI0NywgNzksIDIxNywgNzUsIDIyMSwgODEsIAorICAgIDc5LCAyMTcsIDc1LCAxMjAsIDIzNSwgMTgwLCAyOCwgMywgMjMzLCAyNSwgMjgsIDMsIDIzMSwgNDQsIDI4LCAzLCAyMjMsIAorICAgIDE0NCwgMjgsIDMsIDIyMCwgNCwgMjgsIDMsIDIyMCwgMjA3LCAyOCwgMywgMjUxLCAyNTIsIDI4LCAzLCAyMTcsIDksIDI4LCAKKyAgICAzLCAyNTAsIDQxLCAyOCwgMywgMjI4LCAyMjYsIDI4LCAzLCAyMjgsIDM0LCAyOCwgMywgMjQzLCAyMCwgMjI3LCAxNTcsIAorICAgIDI4LCAzLCAyMTIsIDE1LCAyOCwgMywgMjQ3LCAyMTgsIDI4LCAzLCAyNDgsIDE3NiwgMjgsIDMsIDIzNSwgMTg0LCAyOCwgMywgCisgICAgMjE3LCAxMjEsIDI4LCAzLCAyNTAsIDE0NSwgMjgsIDMsIDIyNiwgMzIsIDI4LCAzLCAyMjUsIDE4NSwgMjgsIDMsIDI0MywgCisgICAgOTUsIDI4LCAzLCAyNDMsIDkxLCAyOCwgMywgMjQzLCA5MiwgMjgsIDMsIDI0MywgOTMsIDI4LCAzLCAyMTksIDE3NiwgMjgsIAorICAgIDMsIDIxOSwgMTMyLCAyOCwgMywgMjE5LCAxNDUsIDI4LCAzLCAyMTksIDE3NSwgMjgsIDMsIDIxOSwgMTQ5LCAyOCwgMywgCisgICAgMjE5LCAxNTAsIDI4LCAzLCAyMTksIDEzNywgMjgsIDMsIDI1MSwgMTMsIDI4LCAzLCAyNTAsIDI0OSwgMjgsIDMsIDI1MCwgCisgICAgMjUxLCAyOCwgMywgMjUxLCAxMiwgMjgsIDMsIDI1MSwgMTAsIDI4LCAzLCAyNTEsIDExLCAyOCwgMywgMjUwLCAyNTAsIDI4LCAKKyAgICAzLCAyMTEsIDI0MiwgMjgsIDMsIDIxMSwgMjIyLCAyOCwgMywgMjExLCAyMzMsIDI4LCAzLCAyMTEsIDI0MSwgMjgsIDMsIAorICAgIDIxMSwgMjM2LCAyOCwgMywgMjExLCAyMzcsIDI4LCAzLCAyMTEsIDIyNSwgMjgsIDMsIDI1MSwgOSwgMjgsIDMsIDI1MCwgCisgICAgMjUyLCAyOCwgMywgMjUwLCAyNTQsIDI4LCAzLCAyNTEsIDgsIDI4LCAzLCAyNTEsIDYsIDI4LCAzLCAyNTEsIDcsIDI4LCAzLCAKKyAgICAyNTAsIDI1MywgMjgsIDMsIDIyNCwgMTYwLCAyOCwgMywgMjI0LCAxNTAsIDI4LCAzLCAyMjQsIDE1NiwgMjgsIDMsIDIyNCwgCisgICAgMTU5LCAyOCwgMywgMjI0LCAxNTcsIDI4LCAzLCAyMjQsIDE1OCwgMjgsIDMsIDIyNCwgMTU1LCAyOCwgMywgMjM0LCAyMywgCisgICAgMjgsIDMsIDIzNCwgMTUsIDI4LCAzLCAyMzQsIDE4LCAyOCwgMywgMjM0LCAyMiwgMjgsIDMsIDIzNCwgMTksIDI4LCAzLCAKKyAgICAyMzQsIDIwLCAyOCwgMywgMjM0LCAxNiwgMjgsIDMsIDIxMywgMTIxLCAyOCwgMywgMjEzLCAxMTEsIDI4LCAzLCAyMTMsIAorICAgIDExNywgMjgsIDMsIDIxMywgMTIwLCAyOCwgMywgMjEzLCAxMTgsIDI4LCAzLCAyMTMsIDExOSwgMjgsIDMsIDIxMywgMTE2LCAKKyAgICAyOCwgMywgMjQyLCAxNzMsIDI4LCAzLCAyNDIsIDE2NCwgMjgsIDMsIDI0MiwgMTY3LCAyOCwgMywgMjQyLCAxNzIsIDI4LCAKKyAgICAzLCAyNDIsIDE2OSwgMjgsIDMsIDI0MiwgMTcwLCAyOCwgMywgMjQyLCAxNjYsIDM4LCAzMywgMSwgMjUyLCAxMjEsIDM4LCAKKyAgICAzMywgMSwgMjE0LCAyMzcsIDM4LCAzMywgMSwgMjQzLCA3NiwgMzgsIDMzLCAxLCAyNDgsIDE2MiwgMzgsIDMzLCAxLCAyMTIsIAorICAgIDY3LCAzOCwgMzMsIDEsIDIxMiwgODcsIDM4LCAzMywgMSwgMTgzLCAzOCwgMzMsIDEsIDI0NSwgMjUyLCAzOCwgMzMsIDEsIAorICAgIDI0NSwgMjM4LCAzOCwgMzMsIDEsIDI0NSwgMjI5LCAzOCwgMzMsIDEsIDc4LCAzOCwgMzMsIDEsIDIyNiwgMTMyLCAzOCwgCisgICAgMzMsIDEsIDI0NSwgMTc2LCAzOCwgMzMsIDEsIDI0NSwgMTY2LCAzOCwgMzMsIDEsIDIxNywgMjQyLCAzOCwgMzMsIDEsIAorICAgIDE2MiwgMzgsIDMzLCAxLCAyMTYsIDE0OSwgMzgsIDMzLCAxLCAyNTAsIDE5MCwgMzgsIDMzLCAxLCAyMjEsIDQ3LCAzOCwgCisgICAgMzMsIDEsIDIyMSwgMTAsIDM4LCAzMywgMSwgMjQ0LCAxNzEsIDM4LCAzMywgMSwgMjQ1LCAxNjUsIDM4LCAzMywgMSwgNjMsIAorICAgIDM4LCAzMywgMSwgMjM2LCAxNzIsIDM4LCAzMywgMSwgMjQ3LCAyMzQsIDM4LCAzMywgMSwgMjMxLCAyNCwgMjE1LCAxODEsIAorICAgIDM4LCAzMywgMSwgMjEzLCA1MSwgMzgsIDMzLCAxLCAyMTIsIDIwNCwgMzgsIDMzLCAxLCAyMzYsIDQyLCA2MywgMzgsIDMzLCAKKyAgICAxLCAyMzMsIDYyLCAyMTIsIDE3NSwgMzgsIDMzLCAxLCAyNTIsIDQxLCAyMTIsIDE3NSwgMzgsIDMzLCAxLCAyMzYsIDQyLCAKKyAgICAyNTIsIDQxLCAyMTIsIDE3NSwgNDcsIDI1NCwgMTQ2LCAyMTksIDE5LCAyMzIsIDMyLCA0NywgMjU0LCAxNDYsIDI0NiwgCisgICAgMTkzLCAyMTksIDE5LCAyMzIsIDMyLCA0MywgMjE5LCAxOSwgMTI1LCA0NywgMjE5LCAxOSwgMTI1LCA0MywgMjQ2LCAxOTMsIAorICAgIDIxOSwgMTksIDEyNSwgNDcsIDI0NiwgMTkzLCAyMTksIDE5LCAxMjUsIDIyNCwgODMsIDIzNiwgNjAsIDIzMiwgMzIsIDIyNCwgCisgICAgODMsIDI0NiwgMTkzLCAyMzYsIDYwLCAyMzIsIDMyLCAyNDYsIDE5MywgMjE2LCAyMTIsIDIzMiwgMzIsIDQzLCAyMTYsIAorICAgIDIxMiwgMTI1LCA0NywgMjE2LCAyMTIsIDEyNSwgMjI0LCA4MywgMjE5LCAxODUsIDQzLCAyMjQsIDgzLCAyMjcsIDEwMSwgCisgICAgMTI1LCA0NywgMjI0LCA4MywgMjI3LCAxMDEsIDEyNSwgMjQ2LCAzMSwgMjQ5LCAyMjAsIDIyNiwgMTc4LCAyNDQsIDExMSwgCisgICAgMjI2LCAxNzgsIDIyMywgMjM2LCAyNDQsIDExMSwgMjI2LCAxNzgsIDI0MSwgMTgsIDI0NiwgMTkzLCAyMjcsIDE1MiwgMjQ2LCAKKyAgICAxNzksIDI1NCwgMTU1LCAyMTUsIDEzMCwgMjU0LCAxNTUsIDI0NiwgMTkzLCAyMjMsIDE3OCwgMjU0LCAxNDUsIDUyLCAyMjcsIAorICAgIDE0OSwgMjQxLCAyMSwgMjM2LCA1MiwgMjM2LCA1OSwgMjI2LCAyMjMsIDI1MSwgMjA2LCAyNDEsIDIyLCAyLCAyNDgsIDc0LCAKKyAgICAyMTcsIDU2LCAyLCAyMjMsIDE2NSwgNTAsIDQzLCAxMTcsIDIyNiwgMTcwLCAxMjUsIDQ3LCAxMTcsIDIyNiwgMTcwLCAxMjUsIAorICAgIDIxNywgNTYsIDIsIDYyLCA1MCwgMjE3LCA1NiwgMiwgNjIsIDU1LCA0MywgNjYsIDI1MiwgMTg3LCAyLCAyMjQsIDE4NywgCisgICAgNDcsIDY2LCAyNTIsIDE4NywgMiwgMjI0LCAxODcsIDIxNiwgMjQwLCA0MywgMTU3LCAxMjUsIDIxNiwgMjQwLCA0NywgMTU3LCAKKyAgICAxMjUsIDI1MSwgMjI2LCA0MywgMTU3LCAxMjUsIDI1MSwgMjI2LCA0NywgMTU3LCAxMjUsIDQzLCAyMjAsIDEzMiwgMTAzLCAKKyAgICAxMjUsIDQ3LCAyMjAsIDEzMiwgMTAzLCAxMjUsIDQzLCA1MiwgMjI2LCAxNjgsIDQ3LCA1MiwgMjI2LCAxNjgsIDExOSwgCisgICAgMTgxLCAxMTMsIDEyNCwgNjIsIDIyNSwgNjIsIDEyNCwgNjIsIDExMywgMTE5LCAxODEsIDIyNSwgNjIsIDkyLCAyNDQsIAorICAgIDEwMSwgNjIsIDIyNSwgNjIsIDI0NCwgMTcwLCA2MiwgNzksIDIyMywgMjM2LCAyMjQsIDE5MywgNzksIDY2LCAxNzcsIDIyMywgCisgICAgMTY1LCAyMjUsIDE4MCwgMjEzLCAxOTksIDIyMSwgODEsIDIzMSwgMTA3LCAyNDcsIDE5NSwgOSwgMzQsIDIyNCwgNSwgOSwgCisgICAgMzQsIDI1MCwgNzAsIDksIDM0LCAyMjIsIDExOCwgMTE4LCA5LCAzNCwgMjIyLCAxMTgsIDExMiwgOSwgMzQsIDIyMiwgMTE4LCAKKyAgICAxNzAsIDksIDM0LCAyMjYsIDc5LCA5LCAzNCwgMjUxLCAyMTQsIDksIDM0LCAyMTgsIDU0LCA5LCAzNCwgMjM0LCAxNTMsIAorICAgIDExOCwgOSwgMzQsIDIzNCwgMTUzLCAxMTIsIDksIDM0LCAyNDcsIDI0MywgOSwgMzQsIDIyMiwgMTIxLCA5LCAzNCwgNCwgCisgICAgMTE4LCA5LCAzNCwgNCwgMTEyLCA5LCAzNCwgMjMzLCAyMTksIDExOCwgOSwgMzQsIDIzMywgMjE5LCAxMTIsIDksIDM0LCAKKyAgICAyMzMsIDIxOSwgMTcwLCA5LCAzNCwgMjMzLCAyMTksIDE2NywgOSwgMzQsIDIyMCwgMTUsIDksIDM0LCAyMTcsIDExMSwgOSwgCisgICAgMzQsIDIyMCwgMTMsIDExOCwgOSwgMzQsIDIyMCwgMTMsIDExMiwgOSwgMzQsIDI0MiwgNzUsIDExOCwgOSwgMzQsIDI0MiwgCisgICAgNzUsIDExMiwgOSwgMzQsIDI0MiwgMTE4LCA5LCAzNCwgMjI0LCA3NCwgOSwgMzQsIDI1MCwgMTQyLCA5LCAzNCwgMjE4LCAKKyAgICAyNTIsIDksIDM0LCAyMzEsIDEyLCA5LCAzNCwgMjQ4LCAxNjAsIDksIDM0LCAyMzEsIDQsIDksIDM0LCAyNTAsIDg1LCA5LCAKKyAgICAzNCwgMjE0LCAyOCwgMTE4LCA5LCAzNCwgMjE0LCAyOCwgMTEyLCA5LCAzNCwgMjQ0LCAxODUsIDksIDM0LCAyMjYsIDE0MiwgCisgICAgMTE4LCA5LCAzNCwgMjI2LCAxNDIsIDExMiwgOSwgMzQsIDIyMCwgMTA1LCAxNTcsIDIxNiwgMjA3LCAyMTYsIDE1OSwgOSwgCisgICAgMzQsIDI0OSwgMjA3LCA5LCAzNCwgMjQ3LCAyMTEsIDksIDM0LCAyMzUsIDI1MiwgOSwgMzQsIDI1MSwgMjQ3LCA2OCwgMjUwLCAKKyAgICA1NCwgOSwgMzQsIDI0NSwgMTA0LCA5LCAzNCwgMjE5LCAyMDAsIDExOCwgOSwgMzQsIDIxOSwgMjAwLCAxMTIsIDksIDM0LCAKKyAgICAyNTIsIDIwMCwgOSwgMzQsIDIyMCwgMTEyLCA5LCAzNCwgMjUxLCAxMTgsIDIyMCwgMTEyLCA5LCAzNCwgMjI5LCAyMzksIAorICAgIDExOCwgOSwgMzQsIDIyOSwgMjM5LCAxMTIsIDksIDM0LCAyMjksIDIzOSwgMTcwLCA5LCAzNCwgMjI5LCAyMzksIDE2NywgOSwgCisgICAgMzQsIDIzMSwgMTgxLCA5LCAzNCwgMjIxLCAyLCA5LCAzNCwgMjI0LCA4MCwgOSwgMzQsIDI0NSwgMTI1LCA5LCAzNCwgMjI3LCAKKyAgICAxMTIsIDksIDM0LCAyNTEsIDE4NiwgMTE4LCA5LCAzNCwgMjUxLCAxODYsIDExMiwgOSwgMzQsIDIzMSwgMjIxLCA5LCAzNCwgCisgICAgMjMxLCA3LCA5LCAzNCwgMjQyLCAyMzcsIDExOCwgOSwgMzQsIDI0MiwgMjM3LCAxMTIsIDksIDM0LCAyNDIsIDIzNywgMTcwLCAKKyAgICA5LCAzNCwgMjE3LCA3MywgOSwgMzQsIDI1MCwgNTMsIDksIDM0LCAyMTMsIDI1MywgMTE4LCA5LCAzNCwgMjEzLCAyNTMsIAorICAgIDExMiwgOSwgMzQsIDI1MSwgMTE4LCAyMjIsIDExMiwgOSwgMzQsIDIyMCwgMTA1LCAyNDEsIDk3LCA5LCAzNCwgMjQxLCA5NywgCisgICAgOSwgMzQsIDI1MSwgMTE4LCAyMTksIDIwOSwgOSwgMzQsIDI1MSwgMTE4LCAyMjAsIDI1MywgOSwgMzQsIDI0NCwgMTIxLCA5LCAKKyAgICAzNCwgMjUxLCAxMTgsIDI1MSwgMjgsIDksIDM0LCAyMjAsIDEwNSwgMjE0LCA0NCwgOSwgMzQsIDIxNCwgNDUsIDExOCwgOSwgCisgICAgMzQsIDIxNCwgNDUsIDExMiwgOSwgMzQsIDI1MCwgODcsIDksIDM0LCAyNTEsIDExOCwgMjQzLCA2LCA5LCAzNCwgMTg3LCAKKyAgICAxMTgsIDksIDM0LCAxODcsIDExMiwgOSwgMzQsIDI1MSwgMTE4LCAyMzMsIDgsIDksIDM0LCAyNTEsIDExOCwgMjQzLCAxODQsIAorICAgIDksIDM0LCAyMzEsIDMsIDExOCwgOSwgMzQsIDIzMSwgMywgMTEyLCA5LCAzNCwgMjI0LCA4NSwgOSwgMzQsIDI1MSwgMjU1LCAKKyAgICA5LCAzNCwgMjUxLCAxMTgsIDIxOCwgMjAsIDIzMywgMTc0LCA5LCAzNCwgMjUxLCAxMTgsIDIzMywgMTc1LCA5LCAzNCwgCisgICAgMjUxLCAxMTgsIDIxMywgMjI3LCA5LCAzNCwgMjUxLCAxMTgsIDI0NCwgMTM1LCA5LCAzNCwgMjQ2LCAzOSwgMTE4LCA5LCAKKyAgICAzNCwgMjQ2LCAzOSwgMTEyLCA5LCAzNCwgMjQ2LCAzOSwgMTcwLCA5LCAzNCwgMjUxLCAxMTgsIDI0NiwgMzgsIDksIDM0LCAKKyAgICAyNDIsIDgyLCA5LCAzNCwgMjUxLCAxMTgsIDI0MSwgOTQsIDksIDM0LCAyNTEsIDI0NCwgOSwgMzQsIDI0MywgNjIsIDksIAorICAgIDM0LCAyNTEsIDExOCwgMjQ0LCAxNzksIDksIDM0LCAyNTEsIDExOCwgMjUyLCAyOSwgOSwgMzQsIDI1MSwgMTE4LCAyMjIsIAorICAgIDE5NiwgOSwgMzQsIDIyMCwgMTA1LCAyMTMsIDI0NiwgOSwgMzQsIDIyMCwgMTA1LCAyMTMsIDMzLCA5LCAzNCwgMjUxLCAKKyAgICAxMTgsIDI0NCwgNzgsIDksIDM0LCAyMzYsIDIsIDI0NSwgMTI5LCA5LCAzNCwgMjUxLCAxMTgsIDI0NSwgMTI5LCA5LCAzNCwgCisgICAgMjM2LCAyLCAyMTYsIDI0MSwgOSwgMzQsIDI1MSwgMTE4LCAyMTYsIDI0MSwgOSwgMzQsIDIzNiwgMiwgMjQ2LCAxNzEsIDksIAorICAgIDM0LCAyNTEsIDExOCwgMjQ2LCAxNzEsIDksIDM0LCAyMTYsIDYzLCA5LCAzNCwgMjM2LCAyLCAyMTYsIDYzLCA5LCAzNCwgCisgICAgMjUxLCAxMTgsIDIxNiwgNjMsIDU4LCAzNCwgMTE4LCA1OCwgMzQsIDIzMywgODMsIDU4LCAzNCwgMjQ3LCAxOTUsIDU4LCAKKyAgICAzNCwgMjIwLCA0MiwgNTgsIDM0LCAyMjIsIDExNywgNTgsIDM0LCAxMDIsIDU4LCAzNCwgMTEyLCA1OCwgMzQsIDIzMywgCisgICAgMTA3LCA1OCwgMzQsIDIzMiwgNjMsIDU4LCAzNCwgMjMzLCAxNTUsIDU4LCAzNCwgMjQ1LCAyMDksIDU4LCAzNCwgMTk4LCAKKyAgICA1OCwgMzQsIDEyMSwgMjUxLCAyMTQsIDU4LCAzNCwgMjQ5LCAyMDksIDU4LCAzNCwgMjQwLCAyMjEsIDU4LCAzNCwgMjE4LCAKKyAgICA1NCwgNTgsIDM0LCAyMTAsIDI1MSwgMjE0LCA1OCwgMzQsIDIzNCwgMTUyLCA1OCwgMzQsIDIyNSwgMTQwLCA1OCwgMzQsIAorICAgIDIxMywgMTkzLCA1OCwgMzQsIDIxOSwgMTk0LCA1OCwgMzQsIDQ3LCAyMTAsIDI1MSwgMjE0LCA1OCwgMzQsIDI0MiwgMjQsIAorICAgIDI0NSwgMjI0LCA1OCwgMzQsIDIxNywgMjEzLCA1OCwgMzQsIDI0NywgMjQzLCA1OCwgMzQsIDIyMiwgMTIxLCA1OCwgMzQsIAorICAgIDI1MCwgNzAsIDU4LCAzNCwgMjI1LCAxMDEsIDU4LCAzNCwgMjU0LCAyNDgsIDU4LCAzNCwgMjMwLCAyNTAsIDU4LCAzNCwgCisgICAgMjQ1LCAyMjQsIDU4LCAzNCwgMjQ2LCA0NCwgNTgsIDM0LCAyMjIsIDE0MSwgNTgsIDM0LCAyNDMsIDE0LCA1OCwgMzQsIAorICAgIDI0MywgMTUsIDIyMCwgMjgsIDU4LCAzNCwgMjQ1LCAxMjgsIDU4LCAzNCwgMjUyLCA0MCwgNTgsIDM0LCAyMTMsIDIxMSwgCisgICAgNTgsIDM0LCAyNTAsIDE2MSwgNTgsIDM0LCAyMjMsIDEzMiwgNTgsIDM0LCAyMzYsIDEwOCwgNTgsIDM0LCAyMjAsIDI2LCAKKyAgICA1OCwgMzQsIDIzMywgMjE4LCA1OCwgMzQsIDI0OSwgMjE4LCA1OCwgMzQsIDIxOSwgMTg4LCA1OCwgMzQsIDIzMCwgMjU1LCAKKyAgICA1OCwgMzQsIDIyMywgMTU1LCA1OCwgMzQsIDIxMywgMTk2LCA1OCwgMzQsIDIyNywgOTMsIDU4LCAzNCwgMjE2LCA2OSwgNTgsIAorICAgIDM0LCAyNDYsIDE1NiwgNTgsIDM0LCAyMjAsIDE5NiwgMjE3LCAxMTEsIDU4LCAzNCwgMjQ2LCAxOTMsIDI1MCwgNzAsIDU4LCAKKyAgICAzNCwgMTg3LCAyMTksIDYyLCA1OCwgMzQsIDExOSwgMjQyLCAxMTMsIDU4LCAzNCwgMjIwLCAyMDEsIDU4LCAzNCwgMjUxLCAKKyAgICAyMjAsIDU4LCAzNCwgMjIwLCAxMiwgNTgsIDM0LCAyNTEsIDE5MCwgNTgsIDM0LCAyMTksIDkyLCA1OCwgMzQsIDI0MiwgNzQsIAorICAgIDU4LCAzNCwgMjQyLCAxMzAsIDU4LCAzNCwgMjQ3LCAxOTgsIDU4LCAzNCwgMjQyLCAxMTgsIDU4LCAzNCwgMjUxLCAyMDYsIAorICAgIDU4LCAzNCwgMjI0LCA3NCwgNTgsIDM0LCAyMjIsIDEyOSwgNTgsIDM0LCAyNDgsIDE2LCA1OCwgMzQsIDI1MywgMjExLCA1OCwgCisgICAgMzQsIDIxOSwgMTg1LCA1OCwgMzQsIDIyOCwgMjA1LCA1OCwgMzQsIDIxOCwgMjUyLCA1OCwgMzQsIDIyMiwgMTUyLCA1OCwgCisgICAgMzQsIDIzMSwgMTIsIDU4LCAzNCwgMjE2LCAyMDYsIDU4LCAzNCwgMjMzLCAyNDMsIDU4LCAzNCwgMjE5LCA4MywgNTgsIDM0LCAKKyAgICAyNDgsIDE2MCwgNTgsIDM0LCAyMTQsIDgsIDU4LCAzNCwgMjQ3LCAyMjEsIDIyOCwgMjA1LCA1OCwgMzQsIDI1MCwgMjAsIAorICAgIDU4LCAzNCwgMjQ0LCA1OCwgNTgsIDM0LCAyNTAsIDgxLCA1OCwgMzQsIDIxOSwgOTYsIDU4LCAzNCwgMjE0LCAyNywgNTgsIAorICAgIDM0LCAyNDQsIDE4NSwgNTgsIDM0LCAyNTAsIDc4LCA1OCwgMzQsIDI0NCwgMjUwLCA1OCwgMzQsIDUyLCAyMTMsIDE2OSwgCisgICAgNTgsIDM0LCAxNTcsIDIxNiwgMjA3LCAyMTYsIDE1OSwgNTgsIDM0LCAyMjAsIDM2LCA1OCwgMzQsIDI0NSwgNCwgNTgsIDM0LCAKKyAgICAyNDksIDIwNywgNTgsIDM0LCAyNDcsIDIxMSwgNTgsIDM0LCAyMjUsIDk4LCA1OCwgMzQsIDIzNSwgMjUyLCA1OCwgMzQsIAorICAgIDIzMSwgMjAxLCA1OCwgMzQsIDIxNywgNTUsIDU4LCAzNCwgMjE4LCAyMDQsIDU4LCAzNCwgMjMzLCAxMDEsIDU4LCAzNCwgCisgICAgMjE1LCAxMDksIDU4LCAzNCwgMjQ0LCAyMDksIDU4LCAzNCwgMjUxLCAyNDcsIDY4LCAyNTAsIDU0LCA1OCwgMzQsIDIyMCwgCisgICAgMTMzLCA1OCwgMzQsIDI0NiwgMTkzLCAyMTcsIDIwOCwgNTgsIDM0LCAyMTMsIDI0MSwgNTgsIDM0LCAyMjAsIDUwLCA1OCwgCisgICAgMzQsIDI0OCwgNCwgNTgsIDM0LCAyNDUsIDEwNCwgNTgsIDM0LCAyMTksIDIxMiwgNTgsIDM0LCA3MSwgNTgsIDM0LCAyMTksIAorICAgIDg1LCA1OCwgMzQsIDIxOSwgMTk5LCA1OCwgMzQsIDIxNiwgMjI1LCA1OCwgMzQsIDI0MiwgMjQzLCA1OCwgMzQsIDI1MSwgCisgICAgMTgsIDU4LCAzNCwgMjE5LCAxMTMsIDU4LCAzNCwgMjUyLCAyMDAsIDU4LCAzNCwgMjIzLCAyMTgsIDU4LCAzNCwgMjIwLCAKKyAgICAxMTIsIDU4LCAzNCwgMjM1LCAyNDYsIDU4LCAzNCwgMjI5LCAyMzgsIDU4LCAzNCwgMjIxLCAyLCA1OCwgMzQsIDI0NCwgCisgICAgMjM4LCA1OCwgMzQsIDIyNywgMTEyLCA1OCwgMzQsIDI1NCwgMTU0LCA1OCwgMzQsIDIyNSwgMTk4LCA1OCwgMzQsIDI0NiwgCisgICAgNDgsIDU4LCAzNCwgMjUxLCAxODUsIDU4LCAzNCwgMjMxLCAyMjEsIDU4LCAzNCwgMjMxLCA2NiwgNTgsIDM0LCAyMjEsIDk5LCAKKyAgICA1OCwgMzQsIDI1NCwgMzgsIDU4LCAzNCwgMjMxLCA3LCA1OCwgMzQsIDIxNiwgMjQ1LCA1OCwgMzQsIDIyNywgNjksIDU4LCAKKyAgICAzNCwgMjUxLCAyNDksIDU4LCAzNCwgMjE5LCA4MSwgNTgsIDM0LCAyNTAsIDI5LCA1OCwgMzQsIDI0MiwgMjM2LCA1OCwgMzQsIAorICAgIDIxNywgNzMsIDU4LCAzNCwgMjM2LCA3NSwgNTgsIDM0LCAyNTIsIDMsIDU4LCAzNCwgMjE0LCA0NSwgMjQ1LCAyMjQsIDU4LCAKKyAgICAzNCwgMjUwLCA1MywgNTgsIDM0LCAyMTMsIDI1MiwgNTgsIDM0LCAyMjIsIDExMiwgNTgsIDM0LCAyNDEsIDk3LCA1OCwgMzQsIAorICAgIDIxOSwgMjA5LCA1OCwgMzQsIDIxNSwgNCwgNTgsIDM0LCAyNTIsIDExOCwgNTgsIDM0LCAyMjUsIDI0MSwgNTgsIDM0LCAKKyAgICAyNTIsIDIxOSwgNTgsIDM0LCAyMjAsIDI1MywgNTgsIDM0LCAyMjQsIDM3LCA1OCwgMzQsIDIyMywgNjMsIDU4LCAzNCwgCisgICAgMjQ0LCAxMjEsIDU4LCAzNCwgMjUxLCAyNDgsIDU4LCAzNCwgMjUxLCAyOCwgNTgsIDM0LCAyNTIsIDE4LCA1OCwgMzQsIAorICAgIDIzMSwgOSwgNTgsIDM0LCAyMTQsIDQ0LCA1OCwgMzQsIDI1MCwgODcsIDU4LCAzNCwgMjEzLCAyMjQsIDU4LCAzNCwgMjQ3LCAKKyAgICAyNTMsIDU4LCAzNCwgMjE0LCAxNDYsIDU4LCAzNCwgMjQzLCA2LCA1OCwgMzQsIDIzMywgOCwgNTgsIDM0LCAyNDMsIDE4NCwgCisgICAgNTgsIDM0LCAyMzEsIDIsIDU4LCAzNCwgMjIwLCA0MSwgNTgsIDM0LCAyMjAsIDE5NiwgMjE4LCAzOSwgMjUyLCAyOSwgNTgsIAorICAgIDM0LCAyMjQsIDg1LCA1OCwgMzQsIDI1MSwgMjU1LCA1OCwgMzQsIDIxMywgMTg4LCA1OCwgMzQsIDI0NSwgMjMsIDU4LCAzNCwgCisgICAgMjMzLCAxNzQsIDU4LCAzNCwgMjE4LCAyMCwgMjMzLCAxNzQsIDU4LCAzNCwgMjMzLCAxNzAsIDU4LCAzNCwgMjE5LCAyMzYsIAorICAgIDU4LCAzNCwgMjMzLCAxNzUsIDU4LCAzNCwgMjEzLCAyMjcsIDU4LCAzNCwgMjQ0LCAxMzUsIDU4LCAzNCwgMjQ2LCAzOCwgCisgICAgNTgsIDM0LCAyNDIsIDgyLCA1OCwgMzQsIDI0NCwgOTAsIDU4LCAzNCwgMjQxLCA5NCwgNTgsIDM0LCAyNTEsIDI0NCwgNTgsIAorICAgIDM0LCAyMTgsIDI3LCA1OCwgMzQsIDI0MiwgMTM2LCA1OCwgMzQsIDI0NCwgMjAyLCA1OCwgMzQsIDIyMiwgMjIyLCAyMTMsIAorICAgIDIyNCwgNTgsIDM0LCAyNTEsIDIwLCA1OCwgMzQsIDI0MywgNjIsIDU4LCAzNCwgMjQ0LCAxNzksIDU4LCAzNCwgMjUyLCAyOSwgCisgICAgNTgsIDM0LCAyMjIsIDE5NiwgNTgsIDM0LCAyNDgsIDE0NiwgNTgsIDM0LCAyMTMsIDI0NiwgNTgsIDM0LCAyNDIsIDU3LCAKKyAgICA1OCwgMzQsIDIxMywgMzMsIDU4LCAzNCwgMjMxLCA3NSwgNTgsIDM0LCAyNTIsIDEzLCA1OCwgMzQsIDI0NSwgMjM0LCA1OCwgCisgICAgMzQsIDI0NCwgNzgsIDU4LCAzNCwgMjE2LCAxODAsIDU4LCAzNCwgMjQ2LCAxNTgsIDU4LCAzNCwgMjI0LCA2OCwgNTgsIDM0LCAKKyAgICAyMjgsIDIwNywgNTgsIDM0LCAyNDUsIDEyOSwgNTgsIDM0LCAyMTYsIDI0MSwgNTgsIDM0LCAyNDYsIDE3MSwgNTgsIDM0LCAKKyAgICAyMTYsIDYzLCA1OCwgMzQsIDI0NCwgMTM3LCAxMDcsIDI0OCwgMTA5LCAxNDMsIDQzLCAyMTcsIDEwLCAyMjMsIDE4MiwgCisgICAgMTA3LCAyNDgsIDEwOSwgMTQzLCA3NCwgMjE3LCAxMCwgNTUsIDEwNywgMjQ4LCAxMDksIDE0MywgNDMsIDIxNywgMTAsIAorICAgIDIzMSwgMTA3LCAyMiwgMjIzLCAxODIsIDEwNywgMjQ4LCAxMDksIDE0MywgNzQsIDIxNywgMTAsIDIzMSwgMTA3LCAyMiwgCisgICAgNTUsIDEwNywgMjQ4LCAxMDksIDE0MywgMjQ0LCA2NCwgMjE4LCAyMjQsIDEwNywgMjQ4LCAxMDksIDE0MywgMjE4LCAyMjUsIAorICAgIDI0NCwgNzcsIDUwLCAxMDcsIDI0OCwgMTA5LCAxNDMsIDIxOCwgMjI1LCAyNDQsIDc3LCA1NSwgMTA3LCAyNDgsIDEwOSwgCisgICAgMTQzLCAyMTgsIDIyNSwgMjQ0LCA3NywgMjMzLCAxNjgsIDEwNywgMjQ4LCAxMDksIDE0MywgMjE4LCAyMjUsIDI0NCwgNzcsIAorICAgIDIxNSwgMTM3LCAyMzMsIDE2OCwgMTA3LCAyNDgsIDEwOSwgMTQzLCAyMTgsIDIyNSwgMjQ0LCA3NywgMjE1LCAxMzcsIDIyMywgCisgICAgMTgyLCAxMDcsIDI0OCwgMTA5LCAxNDMsIDIxOCwgMjI1LCAyNDQsIDc3LCAyMzIsIDIzNywgMjMzLCAxNjgsIDEwNywgMjQ4LCAKKyAgICAxMDksIDE0MywgMjI3LCAyOCwgMTA3LCAyMTksIDIyNSwgMTA3LCAyNTAsIDIzLCAxMDcsIDI0NCwgNjQsIDIxOSwgODMsIAorICAgIDI0NywgMjUwLCA3OSwgMjM1LCAyNDcsIDIzNiwgOTQsIDIxOSwgMTEyLCA4OCwgMTA3LCAyMzYsIDE3LCA3OSwgMTA3LCAKKyAgICAyNTAsIDU2LCA3OSwgMTA3LCA1MSwgMjEyLCA3OSwgNDMsIDI1NCwgMTQ2LCAxMjUsIDQ3LCAyNTQsIDE0NiwgMTI1LCA0MywgCisgICAgNTIsIDI1NCwgMTQ2LCAxMjUsIDQ3LCA1MiwgMjU0LCAxNDYsIDEyNSwgNDMsIDI0OSwgMjIzLCAxMjUsIDQ3LCAyNDksIAorICAgIDIyMywgMTI1LCA0MywgNjksIDI0OSwgMjIzLCAxMjUsIDQ3LCA2OSwgMjQ5LCAyMjMsIDEyNSwgNDMsIDg1LCAyMzMsIDE0MiwgCisgICAgMTI1LCA0NywgODUsIDIzMywgMTQyLCAxMjUsIDIyNSwgMTUzLCA3OSwgMjQzLCAxMjgsIDc5LCA0MywgMjE2LCAyMzIsIAorICAgIDIyMCwgMjU0LCAxMjUsIDQ3LCAyMTYsIDIzMiwgMjIwLCAyNTQsIDEyNSwgNDMsIDY5LCAyMzMsIDE0MiwgMTI1LCA0NywgCisgICAgNjksIDIzMywgMTQyLCAxMjUsIDQzLCA2OSwgMjE2LCAyMzIsIDIyMCwgMjU0LCAxMjUsIDQ3LCA2OSwgMjE2LCAyMzIsIAorICAgIDIyMCwgMjU0LCAxMjUsIDQzLCA2OSwgNDIsIDEyNSwgNDcsIDY5LCA0MiwgMTI1LCAyMTQsIDIzLCAyNDgsIDIyMywgMjIzLCAKKyAgICAyMzYsIDUyLCAyMjUsIDEwOCwgMjI0LCAxNzgsIDc5LCA1MiwgMjI1LCAxMDgsIDIyNCwgMTc4LCA3OSwgMTE3LCA1MiwgCisgICAgMjI1LCAxMDgsIDIyNCwgMTc4LCA3OSwgMjI1LCAxNTMsIDE1NiwgMjQ1LCAyMywgMjQyLCAxMTEsIDIyOCwgOTcsIDExOCwgCisgICAgMjQyLCAxMTEsIDIyOCwgOTcsIDExMiwgMjQyLCAxMTEsIDIyOCwgOTcsIDE3MCwgMjQyLCAxMTEsIDIyOCwgOTcsIDE2NywgCisgICAgMjQyLCAxMTEsIDIyOCwgOTcsIDE4NSwgMjQyLCAxMTEsIDIyOCwgOTcsIDE5MiwgMjQyLCAxMTEsIDIyOCwgOTcsIDIwMCwgCisgICAgMjQyLCAxMTEsIDIyOCwgOTcsIDE5OCwgMjQyLCAxMTEsIDIyOCwgOTcsIDIwMywgMTA3LCAyMzMsIDEyNywgMTYxLCA3OSwgCisgICAgMTA3LCAyMjMsIDE1OSwgMTYxLCA3OSwgMTA3LCAyNDgsIDExNiwgMTYxLCA3OSwgMTA3LCAyNDUsIDIwOCwgMTYxLCA3OSwgCisgICAgMjQsIDIyMCwgMTAwLCA2MiwgMTYxLCA3OSwgMjQsIDUyLCA2MiwgMTYxLCA3OSwgMjE0LCAxOSwgMjQ4LCAyMjMsIDY2LCAKKyAgICAyMzUsIDk1LCAyMjQsIDYsIDc5LCA2NiwgMjM1LCA5NSwgMjI0LCA2LCAyLCAyMTQsIDEyMCwgMjE5LCAyMzcsIDc5LCA2NiwgCisgICAgMjM1LCA5NSwgMjI0LCA2LCAxNTYsIDIxNSwgMTM3LCAyNDIsIDEyOSwgNjYsIDIzNSwgOTUsIDIyNCwgNiwgMiwgMjE0LCAKKyAgICAxMjAsIDIxOSwgMjM3LCAxNTYsIDIxNSwgMTM3LCAyNDIsIDEyOSwgNjYsIDIzNSwgOTUsIDIyNCwgNiwgMTU2LCAyMzIsIAorICAgIDIzNywgMjQyLCAxMjksIDM3LCAyMjUsIDE1MywgNzksIDEwNywgMjA0LCAyMzMsIDg0LCAyNDQsIDIzNSwgMjIxLCA4MSwgCisgICAgODgsIDI0MiwgMTExLCAyMjgsIDk3LCAyMTcsIDIxMywgMjQyLCAxMTEsIDIyOCwgOTcsIDIxNiwgNDUsIDI0MiwgMTExLCAKKyAgICAyMjgsIDk3LCAyMTcsIDEyOCwgNjYsIDEwNywgMjM2LCAxNywgNzksIDIzMiwgMTgsIDc5LCAyMjYsIDE2NCwgMjU0LCAxNzYsIAorICAgIDc5LCAxMDcsIDQ0LCAyMzYsIDk2LCAxMDcsIDE1NywgMjQ0LCAxOTUsIDIxOSwgMjI1LCAxMzYsIDEsIDQsIDYzLCAxMzYsIAorICAgIDEsIDYzLCAxMzYsIDEsIDQsIDc1LCAxMzYsIDEsIDc1LCAxMzYsIDEsIDQsIDcyLCAxMzYsIDEsIDcyLCAxMzYsIDEsIDQsIAorICAgIDc3LCAxMzYsIDEsIDc3LCAxMzYsIDEsIDQsIDc4LCAxMzYsIDEsIDc4LCAxMzYsIDEsIDE4MywgMTM2LCAxLCAyNDMsIDIzMCwgCisgICAgMTM2LCAxLCAyMzQsIDIxMiwgMTM2LCAxLCAyNDMsIDU0LCAxMzYsIDEsIDIzNCwgODEsIDEzNiwgMSwgMjQyLCAyMTMsIAorICAgIDEzNiwgMSwgMjM1LCA0NCwgMTM2LCAxLCAyNDMsIDE1OCwgMTM2LCAxLCAyMzQsIDE0OCwgMTM2LCAxLCAyNDMsIDE0LCAKKyAgICAxMzYsIDEsIDIyMiwgMjI3LCAxMzYsIDEsIDIxMiwgMTA5LCAxMzYsIDEsIDIyMCwgMTM2LCAxMzYsIDEsIDIxMiwgMzcsIAorICAgIDEzNiwgMSwgMjE5LCA0MSwgMTM2LCAxLCAyMTIsIDgsIDEzNiwgMSwgMjIyLCAxMjMsIDEzNiwgMSwgMjEyLCA4NywgMTM2LCAKKyAgICAxLCAyMjAsIDUsIDEzNiwgMSwgMjEyLCAxNiwgMTM2LCAxLCAyMTgsIDY2LCAxMzYsIDEsIDI0OSwgMzAsIDEzNiwgMSwgCisgICAgMjE3LCA4NCwgMTM2LCAxLCAyNDgsIDc2LCAxMzYsIDEsIDQsIDIxNiwgOTAsIDEzNiwgMSwgMjE2LCA5MCwgMTM2LCAxLCAKKyAgICAyNDYsIDE1NCwgMTM2LCAxLCAyMTcsIDI0MiwgMTM2LCAxLCAyNDgsIDE2MiwgMTM2LCAxLCAxMDksIDEzNiwgMSwgMjQ3LCAKKyAgICAyMjAsIDEzNiwgMSwgMjA3LCAxMzYsIDEsIDIyOSwgMTI4LCAxMzYsIDEsIDIyOCwgMTM1LCAxMzYsIDEsIDIyOSwgMjU0LCAKKyAgICAxMzYsIDEsIDIyOCwgMjI4LCAxMzYsIDEsIDE2MiwgMTM2LCAxLCAyNTIsIDIzNCwgMTM2LCAxLCAxOTUsIDEzNiwgMSwgCisgICAgMjQyLCAyOCwgMTM2LCAxLCAyNTIsIDU0LCAxMzYsIDEsIDIyNiwgMjAsIDEzNiwgMSwgMjQxLCA3NCwgMTM2LCAxLCAyNTEsIAorICAgIDE3OSwgMTM2LCAxLCAyMjUsIDcxLCAxMzYsIDEsIDI0MiwgODUsIDEzNiwgMSwgMjUyLCAxMjEsIDEzNiwgMSwgMjI2LCAKKyAgICAxMzIsIDEzNiwgMSwgMjQxLCAxNzMsIDEzNiwgMSwgMjUxLCAyNTMsIDEzNiwgMSwgMjI1LCAxODYsIDEzNiwgMSwgMTkxLCAKKyAgICAxMzYsIDEsIDIzMSwgMTEyLCAxMzYsIDEsIDIzMCwgMjQyLCAxMzYsIDEsIDIzMSwgMjI2LCAxMzYsIDEsIDIzMSwgNDUsIAorICAgIDEzNiwgMSwgNCwgMTg5LCAxMzYsIDEsIDE4OSwgMTM2LCAxLCA0LCAyMTIsIDIwNCwgMTM2LCAxLCAyMTIsIDIwNCwgMTM2LCAKKyAgICAxLCA0LCAyMTIsIDIzNiwgMTM2LCAxLCAyMTIsIDIzNiwgMTM2LCAxLCAyMDgsIDEzNiwgMSwgMjIzLCAyMjIsIDEzNiwgMSwgCisgICAgMjIzLCA3NywgMTM2LCAxLCAyMjQsIDU1LCAxMzYsIDEsIDIyMywgMTQ2LCAxMzYsIDEsIDQsIDIxNCwgNTIsIDEzNiwgMSwgCisgICAgMjE0LCA1MiwgMTM2LCAxLCAyMTMsIDIzOCwgMTM2LCAxLCAyMTQsIDksIDEzNiwgMSwgMjEzLCAyMTcsIDEzNiwgMSwgMjA2LCAKKyAgICAxMzYsIDEsIDIxNCwgMTAzLCAxMzYsIDEsIDQsIDE4MywgMTM2LCAxLCA0LCAyMzUsIDQ0LCAzOCwgMjM1LCA2MywgMjE0LCAKKyAgICAxMjAsIDIxOSwgMjM3LCA3OSwgMzgsIDIzNSwgNjMsIDIyMSwgOTgsIDIxOSwgMjM3LCA3OSwgMjM1LCA2MywgMjE0LCAxMjAsIAorICAgIDIxOSwgMjM3LCA3OSwgMjM1LCA2MywgMjIxLCA5OCwgMjE5LCAyMzcsIDc5LCAxMzYsIDIzNiwgMTcsIDc5LCAxMzYsIDIxNCwgCisgICAgMTIwLCAyMzYsIDE3LCA3OSwgMTM2LCAyNDgsIDM4LCAyMTIsIDIxNywgMjM1LCA2MywgNTIsIDI0MSwgMjEsIDU2LCAxLCA0LCAKKyAgICA2MywgNTYsIDEsIDYzLCA1NiwgMSwgNCwgNzUsIDU2LCAxLCA3NSwgNTYsIDEsIDQsIDcyLCA1NiwgMSwgNzIsIDU2LCAxLCAKKyAgICA0LCA3NywgNTYsIDEsIDc3LCA1NiwgMSwgNCwgNzgsIDU2LCAxLCA3OCwgNTYsIDEsIDE4MywgNTYsIDEsIDI0MywgMjMwLCAKKyAgICA1NiwgMSwgMjM0LCAyMTIsIDU2LCAxLCAyNDMsIDU0LCA1NiwgMSwgMjM0LCA4MSwgNTYsIDEsIDI0MiwgMjEzLCA1NiwgMSwgCisgICAgMjM1LCA0NCwgNTYsIDEsIDI0MywgMTU4LCA1NiwgMSwgMjM0LCAxNDgsIDU2LCAxLCAyNDMsIDE0LCA1NiwgMSwgMjIyLCAKKyAgICAyMjcsIDU2LCAxLCAyMTIsIDEwOSwgNTYsIDEsIDIyMCwgMTM2LCA1NiwgMSwgMjEyLCAzNywgNTYsIDEsIDIxOSwgNDEsIAorICAgIDU2LCAxLCAyMTIsIDgsIDU2LCAxLCAyMjIsIDEyMywgNTYsIDEsIDIxMiwgODcsIDU2LCAxLCAyMjAsIDUsIDU2LCAxLCAKKyAgICAyMTIsIDE2LCA1NiwgMSwgMjE4LCA2NiwgNTYsIDEsIDI0OSwgMzAsIDU2LCAxLCAyMTcsIDg0LCA1NiwgMSwgMjQ4LCA3NiwgCisgICAgNTYsIDEsIDQsIDIxNiwgOTAsIDU2LCAxLCAyMTYsIDkwLCA1NiwgMSwgMjQ2LCAxNTQsIDU2LCAxLCAyMTcsIDI0MiwgNTYsIAorICAgIDEsIDI0OCwgMTYyLCA1NiwgMSwgMTA5LCA1NiwgMSwgMjQ3LCAyMjAsIDU2LCAxLCAyMDcsIDU2LCAxLCAyMjksIDEyOCwgCisgICAgNTYsIDEsIDIyOCwgMTM1LCA1NiwgMSwgMjI5LCAyNTQsIDU2LCAxLCAyMjgsIDIyOCwgNTYsIDEsIDE2MiwgNTYsIDEsIAorICAgIDI1MiwgMjM0LCA1NiwgMSwgMTk1LCA1NiwgMSwgMjQyLCAyOCwgNTYsIDEsIDI1MiwgNTQsIDU2LCAxLCAyMjYsIDIwLCA1NiwgCisgICAgMSwgMjQxLCA3NCwgNTYsIDEsIDI1MSwgMTc5LCA1NiwgMSwgMjI1LCA3MSwgNTYsIDEsIDI0MiwgODUsIDU2LCAxLCAyNTIsIAorICAgIDEyMSwgNTYsIDEsIDIyNiwgMTMyLCA1NiwgMSwgMjQxLCAxNzMsIDU2LCAxLCAyNTEsIDI1MywgNTYsIDEsIDIyNSwgMTg2LCAKKyAgICA1NiwgMSwgMTkxLCA1NiwgMSwgMjMxLCAxMTIsIDU2LCAxLCAyMzAsIDI0MiwgNTYsIDEsIDIzMSwgMjI2LCA1NiwgMSwgCisgICAgMjMxLCA0NSwgNTYsIDEsIDQsIDE4OSwgNTYsIDEsIDE4OSwgNTYsIDEsIDQsIDIxMiwgMjA0LCA1NiwgMSwgMjEyLCAyMDQsIAorICAgIDU2LCAxLCA0LCAyMTIsIDIzNiwgNTYsIDEsIDIxMiwgMjM2LCA1NiwgMSwgMjA4LCA1NiwgMSwgMjIzLCAyMjIsIDU2LCAxLCAKKyAgICAyMjMsIDc3LCA1NiwgMSwgMjI0LCA1NSwgNTYsIDEsIDIyMywgMTQ2LCA1NiwgMSwgNCwgMjE0LCA1MiwgNTYsIDEsIDIxNCwgCisgICAgNTIsIDU2LCAxLCAyMTMsIDIzOCwgNTYsIDEsIDIxNCwgOSwgNTYsIDEsIDIxMywgMjE3LCA1NiwgMSwgMjA2LCA1NiwgMSwgCisgICAgMjE0LCAxMDMsIDU2LCAxLCA0LCAxODMsIDU2LCAxLCA0LCAyMzUsIDQ0LCA1NiwgMSwgMjE1LCA4LCA1NiwgMSwgMjE0LCAKKyAgICAxNTksIDU2LCAxLCAyMTQsIDIzNywgNTYsIDEsIDIxNCwgMTIzLCA1NiwgMjMxLCAxMDcsIDI0NywgMTk1LCAyMzUsIDYzLCAKKyAgICAyMjUsIDkzLCAyMTksIDIzNywgNzksIDU2LCAyMzYsIDE3LCA3OSwgNTYsIDIxNCwgMTIwLCAyMzYsIDE3LCA3OSwgNTYsIAorICAgIDI0OCwgMzgsIDIzNCwgMTE5LCAyMDUsIDEsIDI1MywgMjAxLCAyMDUsIDEsIDIyNywgMTEsIDIwNSwgMSwgMTg0LCAyMDUsIAorICAgIDEsIDI0NSwgOTUsIDIwNSwgMSwgMjQ5LCAxMjUsIDIwNSwgMSwgMjE4LCAxMTMsIDIwNSwgMSwgMjA2LCAyMDUsIDEsIDE1NSwgCisgICAgMjA1LCAxLCAyNDQsIDQxLCAyMDUsIDEsIDIzNSwgMTQxLCAyMDUsIDEsIDI0MiwgMTYyLCAyMDUsIDEsIDIzNiwgMywgMjA1LCAKKyAgICAxLCAyMjUsIDE5LCAyMDUsIDEsIDIxMywgMTY5LCAyMDUsIDEsIDIxMiwgNzYsIDIwNSwgMSwgMjUwLCAyMTYsIDIwNSwgMSwgCisgICAgMjIxLCA0OSwgMjA1LCAxLCAxNTIsIDIwNSwgMSwgMjEyLCAxNTIsIDIwNSwgMSwgMjUxLCAxMjEsIDIwNSwgMSwgMTk2LCAKKyAgICAyMDUsIDEsIDYzLCAyMDUsIDEsIDc4LCAyMDUsIDEsIDc3LCAyMDUsIDEsIDI0NiwgMTksIDIwNSwgMSwgMjU0LCAyMzYsIAorICAgIDIwNSwgMSwgMjQ2LCAxNywgMjA1LCAxLCAyNTMsIDIzNSwgMjA1LCAxLCAyMjcsIDQwLCAyMDUsIDEsIDI1NCwgMTU5LCAKKyAgICAyMDUsIDEsIDI0NSwgMjI5LCAyMDUsIDEsIDI1NCwgMTUxLCAyMDUsIDEsIDI0NSwgMjE3LCAyMDUsIDEsIDI0NSwgMTc2LCAKKyAgICAyMDUsIDEsIDc1LCAyMDUsIDEsIDcyLCAyMDUsIDEsIDIzNiwgMTUsIDIwNSwgMSwgMjExLCAyMTEsIDIwNSwgMSwgMjI5LCAKKyAgICAyMjgsIDIwNSwgMSwgMjQzLCAxOCwgMjA1LCAxLCAyMzYsIDE0NiwgMjQsIDEsIDIzNCwgMTc4LCAyNCwgMSwgMjE5LCAxNjgsIAorICAgIDI0LCAxLCAyMzQsIDE3MSwgMjQsIDEsIDIyOSwgMTIxLCAyNCwgMSwgMjI5LCAxMTksIDI0LCAxLCAyMjksIDExOCwgMjQsIAorICAgIDEsIDIxNywgNjgsIDI0LCAxLCAyMTksIDE1NywgMjQsIDEsIDIyMywgMjEzLCAyNCwgMSwgMjIzLCAyMDgsIDI0LCAxLCAKKyAgICAyMjMsIDIwNSwgMjQsIDEsIDIyMywgMTk4LCAyNCwgMSwgMjIzLCAxOTMsIDI0LCAxLCAyMjMsIDE4OCwgMjQsIDEsIDIyMywgCisgICAgMTk5LCAyNCwgMSwgMjIzLCAyMTEsIDI0LCAxLCAyMzEsIDEwMCwgMjQsIDEsIDIyNiwgNywgMjQsIDEsIDIxOSwgMTY1LCAKKyAgICAyNCwgMSwgMjI1LCAyNTIsIDI0LCAxLCAyMjAsIDk1LCAyNCwgMSwgMjE5LCAxNjIsIDI0LCAxLCAyMzYsIDE2OCwgMjQsIDEsIAorICAgIDI1MCwgMTA2LCAyNCwgMSwgMjE5LCAxNzIsIDI0LCAxLCAyNTAsIDE2NiwgMjQsIDEsIDIzNCwgMjI4LCAyNCwgMSwgMjE3LCAKKyAgICAxMzksIDI0LCAxLCAyMjYsIDQzLCAyNCwgMSwgMjQyLCAyMSwgMjQsIDEsIDYzLCAyNCwgMSwgMjU1LCAyMCwgMjQsIDEsIAorICAgIDE4OSwgMjQsIDEsIDIxMywgODMsIDI0LCAxLCAyNDUsIDE5NywgMjQsIDEsIDc3LCAyNCwgMSwgMjEzLCAyOCwgMjQsIDEsIAorICAgIDIxMywgMzksIDI0LCAxLCA3OCwgMjQsIDEsIDIxNCwgNTIsIDI0LCAxLCAyMTQsIDQ5LCAyNCwgMSwgMjI3LCAxMzYsIDI0LCAKKyAgICAxLCAyMTIsIDIzNiwgMjQsIDEsIDcyLCAyNCwgMSwgMjEzLCAyNTUsIDI0LCAxLCAyMTQsIDksIDI0LCAxLCAyMTMsIDIzOCwgCisgICAgMjQsIDEsIDIxMiwgMjA0LCAyNCwgMSwgMjQ1LCAxNDMsIDI0LCAxLCAyMTMsIDAsIDI0LCAxLCA3NSwgMjQsIDI0NCwgMTkyLCAKKyAgICAyNCwgMSwgMjE5LCAxNjYsIDI0LCAxLCAyMjksIDExMSwgMjQsIDEsIDIyOSwgMTEzLCAyNCwgMSwgMjI5LCAxMTYsIDI0LCAKKyAgICAxLCAyMjMsIDIwNiwgMjQsIDEsIDIyMywgMTg3LCAyNCwgMSwgMjIzLCAxOTUsIDI0LCAxLCAyMjMsIDIwMCwgMjQsIDEsIAorICAgIDIyMywgMTg1LCAyNCwgMSwgMjMxLCA5MywgMjQsIDEsIDIzMSwgOTAsIDI0LCAxLCAyMzEsIDk0LCAyNCwgMSwgMjM1LCA4MywgCisgICAgMjQsIDEsIDIyNiwgMiwgMjQsIDEsIDIyNSwgMjQ0LCAyNCwgMSwgMjI1LCAyNTAsIDI0LCAxLCAyMjUsIDI0NywgMjQsIDEsIAorICAgIDIyNiwgNSwgMjQsIDEsIDIyNSwgMjQ1LCAyNCwgMSwgMjM1LCA4MSwgMjQsIDEsIDIzNSwgNzksIDI0LCAxLCAyMjAsIDg4LCAKKyAgICAyNCwgMSwgMjIwLCA4NiwgMjQsIDEsIDIyMCwgNzgsIDI0LCAxLCAyMjAsIDgzLCAyNCwgMSwgMjIwLCA5MywgMjQsIDEsIAorICAgIDIyNiwgMTk3LCAyNCwgMSwgMjE5LCAxNjksIDI0LCAxLCAyMTMsIDE4LCAyNCwgMSwgMjEzLCAxNCwgMjQsIDEsIDIxMywgCisgICAgMTUsIDI0LCAxLCAyMzUsIDgyLCAyNCwgMSwgMjE5LCAxNzAsIDI0LCAxLCAyMTMsIDI0LCAyNCwgMSwgMjEyLCAyMzAsIDI0LCAKKyAgICAxLCAyMTIsIDIyOSwgMjQsIDEsIDIxMiwgMjMyLCAyNCwgMSwgMjEyLCAxOTUsIDI0LCAxLCAyMTIsIDE5NiwgMjQsIDEsIAorICAgIDIxMiwgMTk5LCAyNCwgMSwgMjU0LCA3NSwgMjQsIDEsIDI1NCwgNjksIDEwNywgMjU0LCAxMzcsIDIzMywgNzMsIDc5LCAKKyAgICAxMDcsIDI1NCwgMTM3LCAyMjMsIDIzNywgNzksIDEwNywgMjU0LCAxMzcsIDEyNCwgNzksIDEwNywgMjU0LCAxMzcsIDExOSwgCisgICAgNzksIDEwNywgMjU0LCAxMzcsIDEzNywgNzksIDEwNywgMjU0LCAxMzcsIDI0NCwgMTAxLCA3OSwgMTA3LCAyNTQsIDEzNywgCisgICAgMjE2LCAyNDAsIDc5LCAxMDcsIDI1NCwgMTM3LCAyMzEsIDEwNywgNzksIDEwNywgMjU0LCAxMzcsIDI1MSwgMjI2LCA3OSwgCisgICAgMTA3LCAyNTQsIDEzNywgMjQ0LCAxODEsIDc5LCAxMDcsIDI1NCwgMTM3LCAyMjIsIDExOCwgNzksIDEwNywgMjU0LCAxMzcsIAorICAgIDIxNywgMTM1LCA3OSwgMTA3LCAyNTQsIDEzNywgMjQ0LCA5NCwgNzksIDEwNywgMjU0LCAxMzcsIDI0MiwgNzEsIDc5LCAKKyAgICAxMDcsIDI1NCwgMTM3LCAyNDYsIDQ1LCA3OSwgMTA3LCAyNTQsIDEzNywgMjMyLCA2NCwgNzksIDIwNSwgMSwgMjUxLCAxNzksIAorICAgIDIwNSwgMSwgMjEyLCAzNywgMjA1LCAxLCAyMzUsIDIyNSwgMjA1LCAxLCAyNDIsIDIxMywgMjA1LCAxLCAyNDYsIDMwLCAKKyAgICAyMDUsIDEsIDI0NSwgMjE0LCAyMDUsIDEsIDIyNywgODYsIDIwNSwgMSwgMjI3LCA5MCwgMjA1LCAxLCAyMzYsIDM4LCAyMDUsIAorICAgIDEsIDI1NCwgMTM5LCAyMDUsIDEsIDIzNiwgODIsIDIwNSwgMSwgMjE1LCAxNDUsIDIwNSwgMSwgMjM2LCAxMjgsIDIwNSwgMSwgCisgICAgMjI5LCAyMDcsIDIwNSwgMSwgMjU0LCAyMzAsIDIwNSwgMSwgMjUzLCAyMzAsIDIwNSwgMSwgMjU0LCAxNzIsIDIwNSwgMSwgCisgICAgMjI3LCAxMDcsIDIwNSwgMSwgMjI3LCA5MiwgMjA1LCAxLCAyMzYsIDc5LCAyMDUsIDQxLCAxLCAyMjcsIDExLCAyMDUsIDQxLCAKKyAgICAxLCAyMTgsIDExMywgMjA1LCA0MSwgMSwgMjM1LCAxNDEsIDIwNSwgNDEsIDEsIDI0MiwgMTYyLCAyMDUsIDEsIDI0MywgOTAsIAorICAgIDIwNSwgMSwgMjMzLCAxMjQsIDIwNSwgMSwgMjExLCAyNDksIDksIDIxOSwgNTksIDIxOCwgMTEzLCA5LCAyMTksIDU5LCAKKyAgICAyMTMsIDI0OCwgOSwgMjE5LCA1OSwgMjEzLCAxNDksIDksIDIxOSwgNTksIDI1MSwgMTMzLCA5LCAyMTksIDU5LCAyMTgsIAorICAgIDIxMywgOSwgMjE5LCA1OSwgMjQxLCAxMSwgOSwgMjE5LCA1OSwgMjQxLCAxNSwgOSwgMjE5LCA1OSwgMjQxLCA4MCwgOSwgCisgICAgMjE5LCA1OSwgMjQxLCAxMiwgOSwgMjE5LCA1OSwgMjE4LCAxMTYsIDksIDIxOSwgNTksIDI0MSwgMTQsIDksIDIxOSwgNTksIAorICAgIDI0MSwgMTAsIDksIDIxOSwgNTksIDI0MSwgNzgsIDksIDIxOSwgNTksIDI0MSwgMTMsIDksIDIxOSwgNTksIDI0MSwgOSwgOSwgCisgICAgMjE5LCA1OSwgMjA2LCA5LCAyMTksIDU5LCAyNDIsIDE2MiwgOSwgMjE5LCA1OSwgMTk2LCA5LCAyMTksIDU5LCAyMjcsIDExLCAKKyAgICA5LCAyMTksIDU5LCAyMTksIDIyNywgOSwgMjE5LCA1OSwgMjQ5LCAxMjUsIDksIDIxOSwgNTksIDI0MSwgMTYsIDksIDIxOSwgCisgICAgNTksIDI0MiwgMzgsIDksIDIxOSwgNTksIDIxOCwgMTI1LCA5LCAyMTksIDU5LCAyMTgsIDE5MiwgOSwgMjE5LCA1OSwgMjE5LCAKKyAgICAxMjEsIDksIDIxOSwgNTksIDIyMSwgNTQsIDksIDIxOSwgNTksIDIyNiwgMTM0LCA5LCAyMTksIDU5LCAyMjUsIDIxLCA5LCAKKyAgICAyMTksIDU5LCAyMTcsIDExLCA5LCAyMTksIDU5LCAyMTgsIDExNSwgOSwgMjE5LCA1OSwgMjE4LCAyMDMsIDksIDIxOSwgNTksIAorICAgIDI0MSwgMjMsIDksIDIxOSwgNTksIDI0MSwgOCwgOSwgMjE5LCA1OSwgMjI2LCA2MSwgOSwgMjE5LCA1OSwgMjI1LCAxOSwgCisgICAgNTYsIDEsIDQsIDIzNCwgODEsIDU2LCAxLCA0LCAyMjAsIDEzNiwgNTYsIDEsIDQsIDIxOSwgNDEsIDU2LCAxLCA0LCAxMDksIAorICAgIDU2LCAxLCA0LCAyMjgsIDEzNSwgNTYsIDEsIDQsIDE2MiwgNTYsIDEsIDQsIDI0MiwgMjgsIDU2LCAxLCA0LCAyNDEsIDc0LCAKKyAgICA1NiwgMSwgNCwgMjQyLCA4NSwgNTYsIDEsIDQsIDI0MSwgMTczLCA1NiwgMSwgNCwgMjMwLCAyNDIsIDU2LCAxLCA0LCAyMDgsIAorICAgIDU2LCAxLCA0LCAyMjMsIDIyMiwgNTYsIDEsIDQsIDIyMywgNzcsIDU2LCAxLCA0LCAyMjQsIDU1LCA1NiwgMSwgNCwgMjIzLCAKKyAgICAxNDYsIDg3LCAyNCwgMjM0LCAxNzgsIDg3LCAyNCwgMjI5LCAxMjEsIDg3LCAyNCwgMjE3LCA2OCwgODcsIDI0LCAyMjMsIAorICAgIDIxMywgODcsIDI0LCAyMzEsIDEwMCwgODcsIDI0LCAyMjYsIDcsIDg3LCAyNCwgMjIwLCA5NSwgODcsIDI0LCAyMzYsIDE2OCwgCisgICAgODcsIDI0LCAyNTAsIDEwNiwgODcsIDI0LCAyNTAsIDE2NiwgODcsIDI0LCAyMzQsIDIyOCwgODcsIDI0LCAyMTcsIDEzOSwgCisgICAgODcsIDI0LCAyMjYsIDQzLCA4NywgMjQsIDI0MiwgMjEsIDg3LCAyNCwgMjM0LCAxNzksIDYzLCA4NywgMjQsIDIyOSwgMTIyLCAKKyAgICA2MywgODcsIDI0LCAyMTcsIDY5LCA2MywgODcsIDI0LCAyMjMsIDIxNCwgNjMsIDg3LCAyNCwgMjMxLCAxMDEsIDYzLCA4NywgCisgICAgMjQsIDIyNiwgOCwgNjMsIDg3LCAyNCwgMjIwLCA5NiwgNjMsIDg3LCAyNCwgMjM2LCAxNjksIDYzLCA4NywgMjQsIDI1MCwgCisgICAgMTA3LCA2MywgODcsIDI0LCAyNTAsIDE2NywgNjMsIDg3LCAyNCwgMjM0LCAyMjksIDYzLCA4NywgMjQsIDIxNywgMTQwLCAKKyAgICA2MywgODcsIDI0LCAyMjYsIDQ0LCA2MywgODcsIDI0LCAyNDIsIDIyLCA2MywgODcsIDI0LCAyNTAsIDEwNywgNzIsIDg3LCAKKyAgICAyMzQsIDEyMywgMTQzLCAyMjcsIDEyMCwgODcsIDIzNCwgMTIzLCAxNDMsIDE0MSwgMjQxLCA3NCwgODcsIDE0NywgMTE4LCAKKyAgICA4NywgMTQ3LCAxMTIsIDg3LCAxNDcsIDE3MCwgODcsIDE0NywgMTY3LCA4NywgMTQ3LCAxODUsIDg3LCAxNDcsIDE5MiwgODcsIAorICAgIDE0NywgMjAwLCA4NywgMTQ3LCAxOTgsIDg3LCAxNDcsIDIwMywgODcsIDE0NywgMjE3LCAyMTMsIDg3LCAxNDcsIDIzMSwgCisgICAgMTIsIDg3LCAxNDcsIDI0NCwgMTg1LCA4NywgMTQ3LCAyMTQsIDI3LCA4NywgMTQ3LCAyMTMsIDIwNCwgODcsIDE0NywgMjMxLCAKKyAgICAxNzYsIDg3LCAxNDcsIDI0NiwgNDQsIDg3LCAxNDcsIDIxOCwgMjUyLCA4NywgMTQ3LCAyMTksIDg2LCA4NywgMTQ3LCAyNDIsIAorICAgIDkxLCA4NywgMTQ3LCAyMjAsIDEsIDg3LCAxNDcsIDIzMCwgOTIsIDg3LCAxNDcsIDIxOSwgMjExLCA4NywgMTQ3LCAyNDQsIAorICAgIDE5MSwgODcsIDE0NywgMjUwLCA2LCA4NywgMTQ3LCAyMzMsIDI0NiwgODcsIDE0NywgMjI0LCAxLCA4NywgMTQ3LCAyNTEsIAorICAgIDcxLCA4NywgMTQ3LCAyMTksIDQ0LCA4NywgMTQ3LCAyMTgsIDIzNCwgODcsIDE0NywgMjQ1LCAyMDcsIDg3LCAxNDcsIDIyMywgCisgICAgMjQ5LCA4NywgMTQ3LCAyNTQsIDE4NiwgODcsIDE0NywgMjQ0LCAyMTcsIDg3LCAxNDcsIDIyMywgMjQ3LCA4NywgMTQ3LCAKKyAgICAyMjEsIDk5LCA4NywgMTQ3LCAyMjQsIDU0LCAzNywgMTQ3LCAyMjQsIDE5MiwgMzcsIDE0NywgMjM0LCAyMDAsIDM3LCAxNDcsIAorICAgIDIyMiwgMTM5LCAzNywgMTQ3LCAyMzQsIDExOSwgMzcsIDUxLCAyMTcsIDIxNCwgMjI3LCAxMDAsIDg1LCAyMTksIDE4NSwgCisgICAgMzcsIDUxLCAyMTYsIDQ2LCAyMjcsIDEwMCwgODUsIDIxOSwgMTg1LCAzNywgNTEsIDIxNywgMTI5LCAyMjcsIDEwMCwgODUsIAorICAgIDIxOSwgMTg1LCAzNywgNTEsIDI0NCwgMTA1LCAyMjcsIDEwMCwgODUsIDIxOSwgMTg1LCAzNywgNTEsIDI0NCwgMjA0LCAKKyAgICAyMjcsIDEwMCwgODUsIDIxOSwgMTg1LCAzNywgNTEsIDIyMCwgNTksIDIyNywgMTAwLCA4NSwgMjE5LCAxODUsIDM3LCA1MSwgCisgICAgMjIxLCA2MSwgMjI3LCAxMDAsIDg1LCAyMTksIDE4NSwgMzcsIDUxLCAyNDYsIDcsIDIyNywgMTAwLCA4NSwgMjE5LCAxODUsIAorICAgIDIyNiwgMTYwLCA1MywgMzcsIDUxLCAyMTYsIDQ2LCAxMTgsIDM3LCA1MSwgMjE2LCA0NiwgMTEyLCAzNywgNTEsIDIxNiwgCisgICAgNDYsIDE3MCwgMzcsIDUxLCAyMTYsIDQ2LCAxNjcsIDM3LCA1MSwgMjE2LCA0NiwgMTg1LCAzNywgNTEsIDIxNiwgNDYsIAorICAgIDE5MiwgMzcsIDUxLCAyMTYsIDQ2LCAyMDAsIDM3LCA1MSwgMjE2LCA0NiwgMTk4LCAzNywgNTEsIDIxNiwgNDYsIDIwMywgCisgICAgMzcsIDUxLCAyMTcsIDEyOCwgMzcsIDUxLCAyMTcsIDEyOSwgMTE4LCAzNywgNTEsIDIxNywgMTI5LCAxMTIsIDM3LCA1MSwgCisgICAgMjE3LCAxMjksIDE3MCwgMzcsIDUxLCAyMTcsIDEyOSwgMTY3LCAzNywgNTEsIDIxNywgMTI5LCAxODUsIDM3LCAyNCwgMjM0LCAKKyAgICAxNzgsIDM3LCAyNCwgMjI5LCAxMjEsIDM3LCAyNCwgMjE3LCA2OCwgMzcsIDI0LCAyMjMsIDIxMywgMzcsIDI0LCAyMzEsIAorICAgIDEwMCwgMzcsIDI0LCAyMjYsIDcsIDM3LCAyNCwgMjIwLCA5NSwgMzcsIDI0LCAyMzYsIDE2OCwgMzcsIDI0LCAyNTAsIDEwNiwgCisgICAgMzcsIDI0LCAyNTAsIDE2NiwgMzcsIDI0LCAyMzQsIDIyOCwgMzcsIDI0LCAyMTcsIDEzOSwgMzcsIDI0LCAyMjYsIDQzLCAKKyAgICAzNywgMjQsIDI0MiwgMjEsIDM3LCAyNCwgMjM0LCAxNzksIDYzLCAzNywgMjQsIDIyOSwgMTIyLCA2MywgMzcsIDI0LCAyMTcsIAorICAgIDY5LCA2MywgMzcsIDI0LCAyMjMsIDIxNCwgNjMsIDM3LCAyNCwgMjMxLCAxMDEsIDYzLCAzNywgMjQsIDIyNiwgOCwgNjMsIAorICAgIDM3LCAyNCwgMjIwLCA5NiwgNjMsIDM3LCAyNCwgMjM2LCAxNjksIDYzLCAzNywgMjQsIDI1MCwgMTA3LCA2MywgMzcsIDI0LCAKKyAgICAyNTAsIDE2NywgNjMsIDM3LCAyNCwgMjM0LCAyMjksIDYzLCAzNywgMjQsIDIxNywgMTQwLCA2MywgMzcsIDI0LCAyMjYsIAorICAgIDQ0LCA2MywgMzcsIDI0LCAyNDIsIDIyLCA2MywgMzcsIDIzNCwgMTIzLCAxNDMsIDI1MCwgMjA3LCAzNywgMjM0LCAxMjMsIAorICAgIDE0MywgMjM1LCAxNjQsIDM3LCAyNCwgMjM2LCAxNjksIDcyLCAyMzQsIDEyMywgMjE5LCAxMTIsIDg4LCAzNywgMTQ3LCAKKyAgICAxMTgsIDM3LCAxNDcsIDExMiwgMzcsIDE0NywgMTcwLCAzNywgMTQ3LCAxNjcsIDM3LCAxNDcsIDE4NSwgMzcsIDE0NywgCisgICAgMTkyLCAzNywgMTQ3LCAyMDAsIDM3LCAxNDcsIDE5OCwgMzcsIDE0NywgMjAzLCAzNywgMTQ3LCAyMTcsIDIxMywgMzcsIAorICAgIDE0NywgMjMxLCAxMiwgMzcsIDE0NywgMjQ0LCAxODUsIDM3LCAxNDcsIDIxNCwgMjcsIDM3LCAxNDcsIDIxMywgMjA0LCAzNywgCisgICAgMTQ3LCAyMzEsIDE3NiwgMzcsIDE0NywgMjQ2LCA0NCwgMzcsIDE0NywgMjE4LCAyNTIsIDM3LCAxNDcsIDIxOSwgODYsIDM3LCAKKyAgICAxNDcsIDI0MiwgOTEsIDM3LCAxNDcsIDIyMCwgMSwgMzcsIDE0NywgMjMwLCA5MiwgMzcsIDE0NywgMjE5LCAyMTEsIDM3LCAKKyAgICAxNDcsIDI0NCwgMTkxLCAzNywgMTQ3LCAyNTAsIDYsIDM3LCAxNDcsIDIzMywgMjQ2LCAzNywgMTQ3LCAyMjIsIDExNiwgMzcsIAorICAgIDE0NywgMjMyLCA2NywgMzcsIDE0NywgMjQ0LCAyMjYsIDM3LCAxNDcsIDIxOSwgOCwgMzcsIDE0NywgMjQ1LCAxMjIsIDM3LCAKKyAgICAxNDcsIDIyNSwgMTA0LCAzNywgMTQ3LCAyNTMsIDIzOSwgMzcsIDE0NywgMjM2LCAxOCwgMzcsIDE0NywgMjIzLCAyNDcsIAorICAgIDM3LCAxNDcsIDI0OSwgMjI2LCAzNywgMTQ3LCAyNDksIDIxNywgMzcsIDE0NywgMjQyLCAxNCwgMzcsIDE0NywgMjUwLCAKKyAgICAyMzEsIDM3LCAxNDcsIDIzMiwgMjM5LCAzNywgMTQ3LCAyMzMsIDE2OCwgMzcsIDE0NywgMjIzLCAxODIsIDM3LCAxNDcsIAorICAgIDIzMSwgMjE4LCAzNywgMTQ3LCAyMjQsIDE1LCAzNywgMTQ3LCAyMTksIDQ0LCAzNywgMTQ3LCAyMTgsIDIzNCwgMzcsIDE0NywgCisgICAgMjQ1LCAyMDcsIDM3LCAxNDcsIDIyMywgMjQ5LCAzNywgMTQ3LCAyNTQsIDE4NiwgMzcsIDE0NywgMjI5LCAxMDcsIDM3LCAKKyAgICA1MSwgMjE3LCAxMjksIDE5MiwgMzcsIDUxLCAyMTcsIDEyOSwgMjAwLCAzNywgNTEsIDIxNywgMTI5LCAxOTgsIDM3LCA1MSwgCisgICAgMjE3LCAxMjksIDIwMywgMzcsIDUxLCAyNDQsIDEwNCwgMzcsIDUxLCAyNDQsIDEwNSwgMTE4LCAzNywgNTEsIDI0NCwgMTA1LCAKKyAgICAxMTIsIDM3LCA1MSwgMjQ0LCAxMDUsIDE3MCwgMzcsIDUxLCAyNDQsIDEwNSwgMTY3LCAzNywgNTEsIDI0NCwgMTA1LCAxODUsIAorICAgIDM3LCA1MSwgMjQ0LCAxMDUsIDE5MiwgMzcsIDUxLCAyNDQsIDEwNSwgMjAwLCAzNywgNTEsIDI0NCwgMTA1LCAxOTgsIDM3LCAKKyAgICA1MSwgMjQ0LCAxMDUsIDIwMywgMzcsIDUxLCAyNDQsIDIwMywgMTA3LCAyMDQsIDE2LCAzMSwgMjM1LCAyNDksIDEwNywgCisgICAgMjA0LCAxNiwgMzEsIDI0NCwgMjM3LCAxMDcsIDIwNCwgMTYsIDMxLCAyMzIsIDM4LCAxMDcsIDIwNCwgMTYsIDMxLCAyNTQsIAorICAgIDg4LCAxMDcsIDIwNCwgMTYsIDMxLCAyMzIsIDEwLCAxMDcsIDIwNCwgMTYsIDMxLCAyMzUsIDE2MiwgMTA3LCAyMDQsIDE2LCAKKyAgICAzMSwgMjM1LCAxNjMsIDEwNywgMjA0LCAxNiwgMzEsIDI1MywgMjMxLCAxMDcsIDIwNCwgMTYsIDMxLCAyMjEsIDc5LCAxMDcsIAorICAgIDIwNCwgMTYsIDMxLCAyMjcsIDE0MSwgMTA3LCAyMDQsIDE2LCAzMSwgMjI4LCAxOTQsIDEwNywgMjA0LCAxNiwgMzEsIDI0OCwgCisgICAgMTU3LCA0MiwgMjQyLCAzOCwgNDIsIDI0NSwgMTcyLCA0MiwgMjQ1LCAxMzEsIDIzMywgODksIDIzMywgMTEwLCA1MywgMzcsIAorICAgIDU2LCA2MywgMzcsIDU2LCA3NSwgMzcsIDU2LCA3MiwgMzcsIDU2LCA3NywgMzcsIDU2LCA3OCwgMzcsIDU2LCAxODMsIDM3LCAKKyAgICA1NiwgMjM0LCAyMTIsIDM3LCA1NiwgMjM0LCA4MSwgMzcsIDU2LCAyMzUsIDQ0LCAzNywgNTYsIDIzNCwgMTQ4LCAzNywgNTYsIAorICAgIDIyMiwgMjI3LCAzNywgNTYsIDIyMCwgMTM2LCAzNywgNTYsIDIxOSwgNDEsIDM3LCA1NiwgMjIyLCAxMjMsIDM3LCA1NiwgCisgICAgMjIwLCA1LCAzNywgNTYsIDIxOCwgNjYsIDM3LCA1NiwgMjE3LCA4NCwgMzcsIDU2LCAyMTYsIDkwLCAzNywgNTYsIDIxNywgCisgICAgMjQyLCAzNywgNTYsIDEwOSwgMzcsIDU2LCAyMDcsIDM3LCA1NiwgMjI5LCAxMjgsIDM3LCA1NiwgMjI4LCAxMzUsIDM3LCAKKyAgICA1NiwgMjI5LCAyNTQsIDM3LCA1NiwgMjI4LCAyMjgsIDM3LCA1NiwgMTYyLCAzNywgNTYsIDI0MiwgMjgsIDM3LCA1NiwgCisgICAgMjQxLCA3NCwgMzcsIDU2LCAyNDIsIDg1LCAzNywgNTYsIDI0MSwgMTczLCAzNywgNTYsIDE5MSwgMzcsIDU2LCAyMzEsIAorICAgIDExMiwgMzcsIDU2LCAyMzAsIDI0MiwgMzcsIDU2LCAyMzEsIDIyNiwgMzcsIDU2LCAyMzEsIDQ1LCAzNywgNTYsIDE4OSwgCisgICAgMzcsIDU2LCAyMTIsIDIwNCwgMzcsIDU2LCAyMTIsIDIzNiwgMzcsIDU2LCAyMDgsIDM3LCA1NiwgMjIzLCAyMjIsIDM3LCAKKyAgICA1NiwgMjIzLCA3NywgMzcsIDU2LCAyMjQsIDU1LCAzNywgNTYsIDIyMywgMTQ2LCAzNywgNTYsIDIxNCwgNTIsIDM3LCA1NiwgCisgICAgMjEzLCAyMzgsIDM3LCA1NiwgMjE0LCA5LCAzNywgNTYsIDIxMywgMjE3LCA0MiwgMjU0LCAxMDksIDQyLCAyNTQsIDI1LCAKKyAgICA0MiwgMjU0LCAxMzMsIDQyLCAyNTUsIDYyLCA0MiwgMjM2LCA4NCwgNDIsIDIzNiwgNTQsIDQyLCAyMTUsIDE0MywgNDIsIAorICAgIDI0NSwgMTUyLCA0MiwgMjQ2LCAyOCwgNDIsIDIyNywgODksIDQyLCAyMjcsIDgzLCA0MiwgMjM1LCAxMDcsIDQyLCAyMzUsIAorICAgIDc2LCA0MiwgMjM1LCA3MywgNDIsIDI0MywgMTg4LCA0MiwgMjQzLCAxOTcsIDQyLCAyNDMsIDQ0LCA0MiwgMjQzLCA0MCwgCisgICAgNDIsIDIzNCwgMTQsIDQyLCAyNDMsIDMzLCA0MiwgMjM0LCAxOTIsIDQyLCAyMzQsIDE5MSwgNDIsIDIzNCwgMTkwLCA0MiwgCisgICAgMjM0LCAxODksIDQyLCAyNDIsIDE4OCwgNDIsIDI0MiwgMTg3LCA0MiwgMjM0LCA1NywgNDIsIDIzNCwgNTksIDQyLCAyMzUsIAorICAgIDQwLCA0MiwgMjM0LCAxMjEsIDQyLCAyMzQsIDEyOCwgNDIsIDIyMiwgMjExLCA0MiwgMjIyLCAxNzcsIDQyLCAyMjAsIDc2LCAKKyAgICA0MiwgMjIxLCA4NCwgNDIsIDIyMSwgODMsIDQyLCAyNDksIDI3LCA0MiwgMjQ4LCAxMDgsIDQyLCAyNDcsIDE5NiwgNDIsIAorICAgIDIxNywgMCwgNDIsIDIzMCwgODgsIDQyLCAyMjgsIDE5NSwgNDIsIDI0MiwgMTM0LCA0MiwgMjI2LCAyNDYsIDQyLCAyMjYsIAorICAgIDI0NSwgNDIsIDI1MiwgMjMyLCA0MiwgMjI2LCAxNywgNDIsIDIyNSwgMjM3LCA0MiwgMjI1LCAyMzgsIDQyLCAyNTIsIDI2LCAKKyAgICA0MiwgMjQxLCA3MywgNDIsIDI0MSwgNjksIDQyLCAyNTEsIDE0NSwgNDIsIDI0MSwgNTYsIDQyLCAyNDIsIDYyLCA0MiwgCisgICAgMjI2LCA3MSwgNDIsIDIyNiwgMTA1LCA0MiwgMjQyLCA0NiwgNDIsIDIyNiwgMTAyLCA0MiwgMjI2LCAxMTgsIDQyLCAyNTIsIAorICAgIDEwNywgNDIsIDIyNSwgMTc2LCA0MiwgMjUxLCAyMzEsIDQyLCAyNDEsIDE2MSwgNDIsIDIyNSwgMTY2LCA0MiwgMjQxLCAKKyAgICAxNTMsIDQyLCAyNDEsIDE1NSwgNDIsIDIzMiwgNzksIDQyLCAyMzIsIDc1LCA0MiwgMjMyLCA4NCwgNDIsIDIzMiwgMjgsIAorICAgIDQyLCAyMzIsIDUzLCA0MiwgMjMxLCA4MCwgNDIsIDIzMSwgNTksIDQyLCAyMzEsIDU4LCA0MiwgMjMxLCAyMDgsIDQyLCAKKyAgICAyMzEsIDIwNSwgNDIsIDIzMSwgMjA5LCA0MiwgMjEzLCA5MywgNDIsIDIxMywgOTEsIDQyLCAyMTIsIDE5MywgNDIsIDIyMywgCisgICAgMTU3LCA0MiwgMjIzLCAxNjEsIDQyLCAyMjMsIDU0LCA0MiwgMjIzLCA0OCwgNDIsIDIyNCwgMTMsIDQyLCAyMjQsIDEwLCAKKyAgICA0MiwgMjE0LCAyNSwgMTA3LCAyMDQsIDE2LCAzMSwgMjQxLCA4OCwgMjEyLCA3OSwgMTA3LCAyMDQsIDE2LCAzMSwgMjQxLCAKKyAgICA4OCwgMTE4LCAxMDcsIDIwNCwgMTYsIDMxLCAyNDEsIDg4LCAxMTIsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIDE3MCwgCisgICAgMTA3LCAyMDQsIDE2LCAzMSwgMjQxLCA4OCwgMTY3LCAxMDcsIDIwNCwgMTYsIDMxLCAyNDEsIDg4LCAxODUsIDEwNywgMjA0LCAKKyAgICAxNiwgMzEsIDI0MSwgODgsIDE5MiwgMTA3LCAyMDQsIDE2LCAzMSwgMjQxLCA4OCwgMjAwLCAxMDcsIDIwNCwgMTYsIDMxLCAKKyAgICAyNDEsIDg4LCAxOTgsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIDIwMywgMTA3LCAyMDQsIDE2LCAzMSwgMjQxLCA4OCwgCisgICAgMjE3LCAyMTMsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIDI0NSwgMjQ1LCAxMDcsIDIwNCwgMTYsIDMxLCAyNDEsIDg4LCAKKyAgICAyMTYsIDQ4LCAxMDcsIDIwNCwgMTYsIDMxLCAyNDEsIDg4LCAyMTcsIDEzMCwgMTA3LCAyMDQsIDE2LCAzMSwgMjQxLCA4OCwgCisgICAgMjQ0LCA5NSwgMTA3LCAyMDQsIDE2LCAzMSwgMjQxLCA4OCwgMjQ0LCAyMDcsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIAorICAgIDIyMCwgNjYsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIDIyMSwgNjMsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIAorICAgIDI0NiwgMTIsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIDIyOSwgOTIsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIAorICAgIDIxNiwgNDUsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIDIxNiwgMzksIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIAorICAgIDIxNiwgMzUsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIDIxNiwgMzYsIDEwNywgMjA0LCAxNiwgMzEsIDI0MSwgODgsIAorICAgIDIxNiwgNDEsIDQyLCAyNDEsIDc5LCA0MiwgMjQ5LCAzMCwgNDIsIDI1MywgMjM1LCA0MiwgMTM0LCA0MiwgMjI3LCAzMSwgCisgICAgNDIsIDIyNiwgMTM1LCA0MiwgMjQ3LCAyMjIsIDQyLCAyNDcsIDIyMywgMjE5LCAxODQsIDQyLCAyNDcsIDIyMywgMjQ5LCAKKyAgICAxNzIsIDQyLCAyMzYsIDE1LCA0MiwgMjQ1LCAxNzUsIDIzMCwgOTMsIDI0MiwgNjMsIDQyLCAyNDUsIDE3NSwgMjMwLCA5MywgCisgICAgMjE4LCAxMzQsIDQyLCAyNDUsIDE3NSwgMjMwLCA5MywgMjE4LCAzNywgNDIsIDI0NSwgMTc1LCAyMzAsIDkzLCAyMzEsIAorICAgIDIwNCwgNDIsIDI0OSwgMjE5LCA0MiwgMjI2LCAyNTIsIDI1NCwgMTYxLCA0MiwgMjA3LCA0MiwgMjMwLCAyNDMsIDYzLCA0MiwgCisgICAgMTkxLCA0MiwgMTgzLCA0MiwgMjM1LCA0NywgNDIsIDIzMiwgNiwgNDIsIDI0MywgMTc2LCA0MiwgMjUxLCA3NCwgNDIsIAorICAgIDIzNSwgNDYsIDQyLCAyMjYsIDYyLCA0MiwgMjI5LCAyMzAsIDQyLCAyMzAsIDI0MywgMjQ1LCA5NSwgNDIsIDIzMCwgMjQzLCAKKyAgICAyNDQsIDQxLCA0MiwgMjMxLCAxNTIsIDQyLCAyMzQsIDI1MiwgNDIsIDI0MSwgMTYsIDQyLCAyMzQsIDIxNCwgNDIsIDIzMSwgCisgICAgMTE0LCA0MiwgMjQzLCA1NiwgNDIsIDIxNywgODYsIDQyLCAyMzAsIDI0MywgMTU1LCA0MiwgMjMxLCA1MiwgNDIsIDI0NywgCisgICAgMjMwLCA0MiwgMjM0LCAxNjAsIDQyLCAyNDQsIDEzNCwgNDIsIDIyOSwgOCwgNDIsIDIzMCwgMjQzLCAxODQsIDQyLCAyMzEsIAorICAgIDQ5LCA0MiwgMjUwLCA0MywgNDIsIDIzNCwgMTU0LCA0MiwgMjMxLCA1MCwgMjE5LCAxODQsIDQyLCAyNTAsIDQ0LCAyMTksIAorICAgIDE4NCwgNDIsIDIzMiwgMTgzLCAyMTksIDE4NCwgNDIsIDIzNCwgMTU1LCAyMTksIDE4NCwgNDIsIDIzMSwgNTAsIDI0OSwgCisgICAgMTcyLCA0MiwgMjUwLCA0NCwgMjQ5LCAxNzIsIDQyLCAyMzIsIDE4MywgMjQ5LCAxNzIsIDQyLCAyMzQsIDE1NSwgMjQ5LCAKKyAgICAxNzIsIDQyLCAyMzIsIDE4MywgMTEzLCAxOTYsIDQyLCAyMzIsIDE4MywgMTEzLCAyMjMsIDI5LCAyMTksIDE4NCwgNDIsIAorICAgIDE5NSwgNDIsIDIzNCwgMTE1LCA0MiwgMjMwLCAyNDUsIDQyLCAyNDIsIDI0NywgNDIsIDIyNCwgMTAxLCA0MiwgMjI0LCAKKyAgICAxMDIsIDExMywgMTk2LCA0MiwgMjI0LCAxMDIsIDExMywgMjIzLCAyOSwgMjE5LCAxODQsIDQyLCAyMjUsIDgzLCA0MiwgCisgICAgMjI4LCAxNjcsIDQyLCAyMzAsIDI0MywgMTk2LCA0MiwgMjMwLCAyNDQsIDQyLCAyMjUsIDM5LCA0MiwgMjI4LCA3NSwgNDIsIAorICAgIDIzMCwgMjQzLCAyMTEsIDIxMSwgNDIsIDIzMCwgMTg5LCA0MiwgMjM0LCA0OSwgNDIsIDIzMCwgMTkwLCAyMzEsIDIwOCwgCisgICAgNDIsIDIyNSwgMzgsIDQyLCAyMjgsIDc0LCA0MiwgMjMwLCAyNDMsIDIxNCwgODUsIDQyLCAyMzAsIDE4NCwgNDIsIDIzNCwgCisgICAgNDcsIDQyLCAyMzAsIDE4NSwgMjMxLCAyMDgsIDQyLCAyMzUsIDE0MiwgMjI3LCAxMjMsIDQyLCAyMzIsIDE4MywgMjI3LCAKKyAgICAxMjMsIDQyLCAyNTQsIDE3MiwgNDIsIDI1MSwgMjEyLCA0MiwgMjUxLCAxNCwgNDIsIDI1MCwgMjQ4LCA0MiwgMjUxLCAxMjIsIAorICAgIDExMywgMjM0LCAyNTIsIDQyLCAyNTAsIDQyLCA0MiwgMjQ4LCAyMDksIDQyLCAyNDIsIDE3NCwgNDIsIDE2MiwgNDIsIDI0MSwgCisgICAgODAsIDQyLCAyMzYsIDExMiwgNDIsIDIzNCwgMTY3LCA0MiwgMjM0LCAxNTUsIDI1MSwgNTAsIDQyLCAyMzQsIDgzLCA0MiwgCisgICAgMjMzLCAyOSwgNDIsIDIzMywgMjgsIDQyLCAyMzMsIDE4LCA0MiwgMjMyLCAxOTUsIDQyLCAyMzIsIDcsIDIyMCwgMjYsIDQyLCAKKyAgICAyMzEsIDc5LCA0MiwgMjMxLCAzNiwgNDIsIDIyNiwgNjAsIDQyLCAyMjUsIDE4OSwgNDIsIDIyNSwgMTM1LCA0MiwgMjI1LCAKKyAgICAxMzMsIDQyLCAyMTksIDE3OCwgNDIsIDIxOCwgMjE3LCA0MiwgMjE0LCAxMSwgNDIsIDIxNSwgODYsIDExMywgMTg0LCA0MiwgCisgICAgMTExLCAxMTMsIDE4NCwgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIDExOCwgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAKKyAgICAyMTMsIDExMiwgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIDE3MCwgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIAorICAgIDE2NywgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIDE4NSwgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIDE5MiwgCisgICAgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIDIwMCwgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIDE5OCwgMTA3LCAKKyAgICAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIDIwMywgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIDIxNywgMjEzLCAxMDcsIAorICAgIDIwNCwgMTYsIDMxLCAyNDgsIDIxMywgMjQ1LCAyNDUsIDEwNywgMjA0LCAxNiwgMzEsIDI0OCwgMjEzLCAyMTYsIDQ4LCAKKyAgICAxMDcsIDIwNCwgMTYsIDMxLCAyNDgsIDIxMywgMjE3LCAxMzAsIDEwNywgMjA0LCAxNiwgMzEsIDI0OCwgMjEzLCAyNDQsIAorICAgIDk1LCAxMDcsIDIwNCwgMTYsIDMxLCAyNDgsIDIxMywgMjQ0LCAyMDcsIDEwNywgMjA0LCAxNiwgMzEsIDI0OCwgMjEzLCAKKyAgICAyMjAsIDY2LCAxMDcsIDIwNCwgMTYsIDMxLCAyNDgsIDIxMywgMjIxLCA2MywgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIAorICAgIDI0NiwgMTIsIDEwNywgMjA0LCAxNiwgMzEsIDI0OCwgMjEzLCAyMjksIDkyLCAxMDcsIDIwNCwgMTYsIDMxLCAyNDgsIDIxMywgCisgICAgMjE2LCA0NSwgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIDIxNiwgMzksIDEwNywgMjA0LCAxNiwgMzEsIDI0OCwgMjEzLCAKKyAgICAyMTYsIDM1LCAxMDcsIDIwNCwgMTYsIDMxLCAyNDgsIDIxMywgMjE2LCAzNiwgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIAorICAgIDIxNiwgNDEsIDEwNywgMjA0LCAxNiwgMzEsIDI0OCwgMjEzLCAyMTYsIDQyLCAxMDcsIDIwNCwgMTYsIDMxLCAyNDgsIDIxMywgCisgICAgMjE2LCAzNywgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIDIxNiwgMzgsIDEwNywgMjA0LCAxNiwgMzEsIDI0OCwgMjEzLCAKKyAgICAyMTYsIDQ0LCAxMDcsIDIwNCwgMTYsIDMxLCAyNDgsIDIxMywgMjE2LCA0MCwgMTA3LCAyMDQsIDE2LCAzMSwgMjQ4LCAyMTMsIAorICAgIDIxNywgMTI4LCAxMDcsIDIwNCwgMTYsIDMxLCAyNDgsIDIxMywgMjE3LCAxMjcsIDQyLCAyNDMsIDIxNCwgMjQyLCA0MCwgCisgICAgMzEsIDIxNywgMTYyLCAyNDksIDIwMywgMjQyLCA3MCwgMjQyLCA0MCwgMzEsIDIxNywgMTYyLCAyMjQsIDQ5LCAyNDYsIDQ0LCAKKyAgICAyNDIsIDQwLCAzMSwgMjQ4LCA0OCwgMjUzLCAyNTAsIDIxNywgMTYyLCAyNTIsIDEwMiwgMjQyLCA0MCwgMzEsIDIxMiwgCisgICAgMjE1LCAyNDQsIDEyNywgMjQyLCA0MCwgMzEsIDIxNCwgNDYsIDI0MiwgNDAsIDMxLCAyNTAsIDgsIDI0MiwgNDAsIDMxLCAKKyAgICAyMTcsIDE2MiwgMjU0LCA0NSwgMjQyLCA0MCwgMzEsIDI0MSwgMTY1LCAyMTcsIDYsIDI0MiwgNDAsIDMxLCA0LCAyMTgsIAorICAgIDI1LCAyNDIsIDQwLCAzMSwgMjE2LCAyMDgsIDI0MiwgNDAsIDMxLCAyMjYsIDEzMCwgMjQyLCA0MCwgMzEsIDIxOSwgMTExLCAKKyAgICAyNDIsIDQwLCAzMSwgMjQ0LCAyMjgsIDI0MiwgNDAsIDMxLCAyNDIsIDIzMCwgMjI1LCAxNTYsIDI0MiwgNDAsIDMxLCAyMzEsIAorICAgIDM5LCAyNDIsIDQwLCAzMSwgMjQ1LCAyMDYsIDI0MiwgNDAsIDMxLCAyNDQsIDEyOCwgMjQyLCA0MCwgMzEsIDIxMywgMTk3LCAKKyAgICAyMjcsIDEwMCwgMjE3LCAxNjIsIDI0OCwgMTU4LCAyNDIsIDQwLCAzMSwgMjU0LCA5MiwgMjQyLCA0MCwgMzEsIDI0OSwgCisgICAgMjQ3LCAyNDIsIDQwLCAzMSwgMjUyLCAxOSwgMjE3LCAxMDUsIDI0MiwgNDAsIDMxLCAyNDIsIDI0NSwgMjQyLCA0MCwgMzEsIAorICAgIDIxOSwgMTk2LCAyNTQsIDEwOCwgMjQyLCA0MCwgMzEsIDIyMywgMjM5LCAyNDIsIDQwLCAzMSwgMjM2LCA3OCwgMjQyLCA0MCwgCisgICAgMzEsIDI0MiwgMjMwLCAyMTgsIDI1LCAyNDIsIDQwLCAzMSwgMjMwLCAyNTEsIDI0OSwgMjIxLCAyNDIsIDQwLCAzMSwgMjQyLCAKKyAgICAyMzAsIDIyNSwgMTEzLCAyNDIsIDQwLCAzMSwgMjE3LCAxNjIsIDI1NSwgNTAsIDIxNCwgMjcsIDI0MiwgNDAsIDMxLCAyMTcsIAorICAgIDE2MiwgMjUwLCA2OCwgMjQ0LCAxODUsIDI0MiwgNDAsIDMxLCAyMzYsIDkxLCAyNDIsIDQwLCAzMSwgMjQ2LCAxMzMsIDI0MiwgCisgICAgNDAsIDMxLCAyMjMsIDI0MiwgMjQyLCA0MCwgMzEsIDI0MiwgMjMwLCAyMjUsIDE0MCwgMjQyLCA0MCwgMzEsIDIyNSwgOTcsIAorICAgIDI0MiwgNDAsIDMxLCAyNDgsIDIyOCwgNjgsIDIxNywgMTYyLCAyMzMsIDEwMCwgMjQyLCA0MCwgMzEsIDIxNywgMTYyLCAKKyAgICAyNDUsIDcsIDI0MiwgNDAsIDMxLCAyMjcsIDY3LCAyNDIsIDQwLCAzMSwgMjI3LCAxNDUsIDI0MiwgNDAsIDMxLCAyNDgsIAorICAgIDEzMSwgMjQyLCA0MCwgMzEsIDI0OCwgMTUxLCAyNDIsIDQwLCAzMSwgMjM2LCAxMDQsIDI0MiwgNDAsIDMxLCAyNTEsIDIwMiwgCisgICAgMjQyLCA0MCwgMzEsIDI1MCwgMjUsIDIxNywgMTAsIDIzMSwgMjExLCAyNDIsIDQwLCAzMSwgMjQzLCAxODMsIDIxNywgNiwgCisgICAgMjQyLCA0MCwgMzEsIDIyNSwgNDgsIDIxNSwgMTMxLCAyNDIsIDQwLCAzMSwgMjI3LCA2NiwgMjQyLCA0MCwgMzEsIDIxNywgCisgICAgMTYyLCAyMTQsIDEsIDI0MiwgNDAsIDMxLCAyMjMsIDIzMiwgMjQyLCA0MCwgMzEsIDIxNywgMTYyLCAyNTEsIDIwLCAyNDIsIAorICAgIDQwLCAzMSwgMjE3LCAxNjIsIDI1NCwgNDEsIDIxNywgMTAwLCAyNDIsIDQwLCAzMSwgMjE3LCAxNjIsIDIzNSwgNDEsIDIxOSwgCisgICAgODgsIDIzMCwgMjU1LCAyNDIsIDQwLCAzMSwgMjQ4LCAxMDQsIDI0MiwgNDAsIDMxLCAyMTcsIDE2MiwgMjMyLCAzMCwgMjMyLCAKKyAgICA4MCwgMjQyLCA0MCwgMzEsIDI1NSwgNTEsIDI0MiwgNDAsIDMxLCAyMTcsIDE2MiwgMjE0LCA0MSwgMjQyLCA0MCwgMzEsIAorICAgIDIxNywgMTYyLCAyNDMsIDE0MywgMjEzLCAyMjcsIDI0MiwgNDAsIDMxLCAyMTcsIDE2MiwgMjM1LCAxNjksIDIzMywgMjI5LCAKKyAgICAyNDIsIDQwLCAzMSwgMjQ4LCAxLCAyNDIsIDQwLCAzMSwgMjMzLCA5MCwgMjQyLCA0MCwgMzEsIDIzNiwgODEsIDIxNiwgCisgICAgMTU4LCAyNDIsIDQwLCAzMSwgNCwgMjI1LCAxMTMsIDI0MiwgNDAsIDMxLCAyNTQsIDI1MCwgMjUwLCAxNywgMjQyLCA0MCwgCisgICAgMzEsIDI1MiwgMTA1LCAyNTAsIDE3LCA4LCAzLCAyMzYsIDE5LCA4LCAzLCAyMzYsIDEyLCA4LCAzLCA3NSwgOCwgMywgMjM2LCAKKyAgICA0MSwgOCwgMywgMjM2LCAxNzAsIDgsIDMsIDIzNiwgMTUzLCA4LCAzLCAyMzYsIDE3MiwgOCwgMywgMjM2LCAxNzEsIDgsIDMsIAorICAgIDI1MywgMjQ5LCA4LCAzLCAyNTMsIDIxMiwgOCwgMywgNjMsIDgsIDMsIDI1NCwgMTEwLCA4LCAzLCAyMTUsIDE0MSwgOCwgMywgCisgICAgMjE1LCAxNDQsIDgsIDMsIDIxNSwgMTQyLCA4LCAzLCAyMjcsIDQ2LCA4LCAzLCAyMjcsIDIwLCA4LCAzLCA3OCwgOCwgMywgCisgICAgMjI3LCA3OCwgOCwgMywgMjQ1LCAxMjMsIDgsIDMsIDc3LCA4LCAzLCAyMTMsIDE4NiwgOCwgMywgMjUyLCAyMCwgOCwgMywgCisgICAgMjUyLCAxNywgOCwgMywgMjUyLCA1NCwgOCwgMywgMjUyLCAzMCwgOCwgMywgMjUyLCA0MywgOCwgMywgMjUyLCA0MiwgOCwgCisgICAgMywgMjUyLCA0NSwgOCwgMywgMjUyLCA0NCwgOCwgMywgMjUyLCAxNjcsIDgsIDMsIDI1MiwgMTU5LCA4LCAzLCAyNTIsIAorICAgIDIzNCwgOCwgMywgMjUyLCAxODgsIDgsIDMsIDI1MSwgMTU1LCA4LCAzLCAyNTEsIDE1OSwgOCwgMywgMjUxLCAxNTYsIDgsIAorICAgIDMsIDI1MSwgMjMwLCA4LCAzLCAyNTEsIDIxNCwgOCwgMywgMjUxLCAyNTMsIDgsIDMsIDI1MSwgMjM1LCA4LCAzLCAyNTIsIAorICAgIDY4LCA4LCAzLCAyNTIsIDEyMSwgOCwgMywgMjUyLCA4MCwgOCwgMywgMjUxLCAxNDEsIDgsIDMsIDI1MSwgMTM4LCA4LCAzLCAKKyAgICAyNTEsIDE3OSwgOCwgMywgMjUxLCAxNTQsIDgsIDMsIDI1MSwgMTQ4LCA4LCAzLCAyNTEsIDE1MiwgOCwgMywgMjUxLCAxMjYsIAorICAgIDgsIDMsIDI1MSwgMTI1LCA4LCAzLCAyNTEsIDEzMSwgOCwgMywgMjUxLCAxMjksIDgsIDMsIDI1MSwgMTI3LCA4LCAzLCAKKyAgICAyNTEsIDEyOCwgOCwgMywgMjI1LCAyMTcsIDgsIDMsIDIyNSwgMjEzLCA4LCAzLCAyMjYsIDIwLCA4LCAzLCAyMjUsIDIyNywgCisgICAgOCwgMywgMjI1LCAyNDMsIDgsIDMsIDIyNiwgMTQsIDgsIDMsIDIyNiwgMTAsIDgsIDMsIDIyNiwgMTUwLCA4LCAzLCAyMjYsIAorICAgIDE0MCwgOCwgMywgMTk1LCA4LCAzLCAyMjYsIDE4NiwgOCwgMywgMjI1LCA1NywgOCwgMywgMjI1LCA1OSwgOCwgMywgMjI1LCAKKyAgICA1OCwgOCwgMywgMjI1LCAxNDksIDgsIDMsIDIyNSwgMTM4LCA4LCAzLCAyMjUsIDE4NiwgOCwgMywgMjI1LCAxNjEsIDgsIDMsIAorICAgIDIyNSwgNDQsIDgsIDMsIDIyNSwgNDAsIDgsIDMsIDIyNSwgNzEsIDgsIDMsIDIyNSwgNTYsIDgsIDMsIDIyNSwgNDksIDgsIAorICAgIDMsIDIyNSwgNTQsIDgsIDMsIDIyNSwgMjMsIDgsIDMsIDIyNSwgMjIsIDgsIDMsIDIyNSwgMjcsIDgsIDMsIDIyNSwgMjYsIAorICAgIDgsIDMsIDIyNSwgMjQsIDgsIDMsIDIyNSwgMjUsIDgsIDMsIDI1MiwgMTQyLCA4LCAzLCAyNTIsIDE0MSwgOCwgMywgMjUyLCAKKyAgICAxNDgsIDgsIDMsIDI1MiwgMTQzLCA4LCAzLCAyNTIsIDE0NSwgOCwgMywgMjUyLCAxNDQsIDgsIDMsIDI1MiwgMTQ3LCA4LCAKKyAgICAzLCAyNTIsIDE0NiwgOCwgMywgMjUyLCAxNTQsIDgsIDMsIDI1MiwgMTUzLCA4LCAzLCAyNTIsIDE1NywgOCwgMywgMjUyLCAKKyAgICAxNTUsIDgsIDMsIDI1MiwgMTMzLCA4LCAzLCAyNTIsIDEzNSwgOCwgMywgMjUyLCAxMzQsIDgsIDMsIDI1MiwgMTM4LCA4LCAKKyAgICAzLCAyNTIsIDEzNywgOCwgMywgMjUyLCAxNDAsIDgsIDMsIDI1MiwgMTM5LCA4LCAzLCAyNTIsIDE0OSwgOCwgMywgMjUyLCAKKyAgICAxNTIsIDgsIDMsIDI1MiwgMTUwLCA4LCAzLCAyNTIsIDEyOSwgOCwgMywgMjUyLCAxMjgsIDgsIDMsIDI1MiwgMTM2LCA4LCAKKyAgICAzLCAyNTIsIDEzMiwgOCwgMywgMjUyLCAxMzAsIDgsIDMsIDI1MiwgMTMxLCA4LCAzLCAyNTIsIDEyNSwgOCwgMywgMjUyLCAKKyAgICAxMjQsIDgsIDMsIDI1MiwgMTI3LCA4LCAzLCAyNTIsIDEyNiwgOCwgMywgMjMwLCA1OSwgOCwgMywgMjMwLCA1OCwgOCwgMywgCisgICAgMjMwLCA2NCwgOCwgMywgMjMwLCA2MCwgOCwgMywgMjMwLCA2MSwgOCwgMywgMjMwLCA2MywgOCwgMywgMjMwLCA2MiwgOCwgCisgICAgMywgMjMwLCA2NiwgOCwgMywgMjMwLCA2NSwgOCwgMywgMjMwLCA2OCwgOCwgMywgMjMwLCA2NywgOCwgMywgMjMwLCA1NSwgCisgICAgOCwgMywgMjMwLCA1NCwgOCwgMywgMjMwLCA1NywgOCwgMywgMjMwLCA1NiwgOCwgMywgMjMwLCA0OSwgOCwgMywgMjMwLCAKKyAgICA0OCwgOCwgMywgMjMwLCA1MywgOCwgMywgMjMwLCA1MiwgOCwgMywgMjMwLCA1MCwgOCwgMywgMjMwLCA1MSwgOCwgMywgCisgICAgMjMwLCA0MywgOCwgMywgMjMwLCA0MiwgOCwgMywgMjMwLCA0NywgOCwgMywgMjMwLCA0NiwgOCwgMywgMjMwLCA0NCwgOCwgCisgICAgMywgMjMwLCA0NSwgOCwgMywgMjQxLCAyMTUsIDgsIDMsIDI0MSwgMjE0LCA4LCAzLCAyNDEsIDIyMCwgOCwgMywgMjQxLCAKKyAgICAyMTYsIDgsIDMsIDI0MSwgMjE3LCA4LCAzLCAyNDEsIDIxOSwgOCwgMywgMjQxLCAyMTgsIDgsIDMsIDI0MSwgMjIzLCA4LCAKKyAgICAzLCAyNDEsIDIyMiwgOCwgMywgMjQxLCAyMjUsIDgsIDMsIDI0MSwgMjI0LCA4LCAzLCAyNDEsIDIwNiwgOCwgMywgMjQxLCAKKyAgICAyMDgsIDgsIDMsIDI0MSwgMjA3LCA4LCAzLCAyNDEsIDIxMSwgOCwgMywgMjQxLCAyMTAsIDgsIDMsIDI0MSwgMjEzLCA4LCAKKyAgICAzLCAyNDEsIDIxMiwgOCwgMywgMjQxLCAyMDIsIDgsIDMsIDI0MSwgMjAxLCA4LCAzLCAyNDEsIDIwOSwgOCwgMywgMjQxLCAKKyAgICAyMDUsIDgsIDMsIDI0MSwgMjAzLCA4LCAzLCAyNDEsIDIwNCwgOCwgMywgMjQxLCAxOTYsIDgsIDMsIDI0MSwgMjAwLCA4LCAKKyAgICAzLCAyNDEsIDE5OSwgOCwgMywgMjQxLCAxOTcsIDgsIDMsIDI0MSwgMTk4LCA4LCAzLCAyMzEsIDU1LCA4LCAzLCAyMzEsIAorICAgIDU0LCA4LCAzLCAyMzEsIDExMiwgOCwgMywgMjMxLCA2MSwgOCwgMywgMjMxLCA4NiwgOCwgMywgMjMxLCAxMDQsIDgsIDMsIAorICAgIDIzMSwgMTAyLCA4LCAzLCAyMzIsIDE3LCA4LCAzLCAyMzIsIDEyLCA4LCAzLCAxOTEsIDgsIDMsIDIzMiwgNTAsIDgsIDMsIAorICAgIDIzMCwgMjE0LCA4LCAzLCAyMzAsIDIxMywgOCwgMywgMjMwLCAyMTcsIDgsIDMsIDIzMCwgMjE1LCA4LCAzLCAyMzEsIDUsIAorICAgIDgsIDMsIDIzMCwgMjQ3LCA4LCAzLCAyMzEsIDQ1LCA4LCAzLCAyMzEsIDEwLCA4LCAzLCAyMzEsIDE2MywgOCwgMywgMjMxLCAKKyAgICAyMjYsIDgsIDMsIDIzMCwgMTk1LCA4LCAzLCAyMzAsIDE5MSwgOCwgMywgMjMwLCAyNDIsIDgsIDMsIDIzMCwgMjEwLCA4LCAKKyAgICAzLCAyMzAsIDIwMywgOCwgMywgMjMwLCAyMDgsIDgsIDMsIDIzMCwgMTY5LCA4LCAzLCAyMzAsIDE2OCwgOCwgMywgMjMwLCAKKyAgICAxNzQsIDgsIDMsIDIzMCwgMTcxLCA4LCAzLCAyNDQsIDE3MiwgOCwgMywgMjQ0LCAxNjcsIDgsIDMsIDI0NCwgMjEwLCA4LCAKKyAgICAzLCAyNDQsIDE4NywgOCwgMywgMjQ1LCAwLCA4LCAzLCAyNDQsIDI0NywgOCwgMywgMjQ1LCAyOSwgOCwgMywgMjQ1LCAzLCAKKyAgICA4LCAzLCAyNDQsIDkzLCA4LCAzLCAyNDQsIDEzMiwgOCwgMywgMjQ0LCAxMTYsIDgsIDMsIDI0NCwgNTQsIDgsIDMsIDI0NCwgCisgICAgNTMsIDgsIDMsIDI0NCwgNjksIDgsIDMsIDI0NCwgNTksIDgsIDMsIDI0NCwgNTcsIDgsIDMsIDI0NCwgNTgsIDgsIDMsIAorICAgIDI0NCwgNDQsIDgsIDMsIDI0NCwgNDMsIDgsIDMsIDI0NCwgNDcsIDgsIDMsIDI0NCwgNDUsIDgsIDMsIDIxNCwgMTI5LCA4LCAKKyAgICAzLCAyMTQsIDEyNCwgOCwgMywgMjE0LCAxNTksIDgsIDMsIDIxNCwgMTM4LCA4LCAzLCAyMTQsIDE1MSwgOCwgMywgMjE0LCAKKyAgICAxNDgsIDgsIDMsIDIxNCwgMTUzLCA4LCAzLCAyMTQsIDE1MiwgOCwgMywgMjE0LCAyNDUsIDgsIDMsIDIxNCwgMjQwLCA4LCAKKyAgICAzLCAyMTUsIDgsIDgsIDMsIDIxNSwgMCwgOCwgMywgMjE0LCAxMTAsIDgsIDMsIDIxNCwgMTA2LCA4LCAzLCAyMTQsIDEyMywgCisgICAgOCwgMywgMjE0LCAxMTEsIDgsIDMsIDIxNCwgMTYwLCA4LCAzLCAyMTQsIDIyNiwgOCwgMywgMjE0LCA5NywgOCwgMywgMjE0LCAKKyAgICA5NSwgOCwgMywgMjE0LCAxMDMsIDgsIDMsIDIxNCwgMTAwLCA4LCAzLCAyMTQsIDk4LCA4LCAzLCAyMTQsIDk5LCA4LCAzLCAKKyAgICAyMTQsIDg5LCA4LCAzLCAyMTQsIDg4LCA4LCAzLCAyMTQsIDkzLCA4LCAzLCAyMTQsIDkyLCA4LCAzLCAyMTQsIDkwLCA4LCAKKyAgICAzLCAyMTQsIDkxLCA4LCAzLCAyNDcsIDI1MSwgOCwgMywgMjQ3LCAyMzksIDgsIDMsIDI0OCwgNzYsIDgsIDMsIDI0OCwgMjAsIAorICAgIDgsIDMsIDI0OCwgNTMsIDgsIDMsIDI0OCwgNTcsIDgsIDMsIDI0OCwgNTYsIDgsIDMsIDI0OCwgMjE5LCA4LCAzLCAyNDgsIAorICAgIDIxNCwgOCwgMywgMjQ5LCAzMCwgOCwgMywgMjQ4LCAyMzksIDgsIDMsIDI0NiwgMTM4LCA4LCAzLCAyNDYsIDEzOSwgOCwgMywgCisgICAgMjQ3LCAxOTUsIDgsIDMsIDI0NiwgMTc3LCA4LCAzLCAyNDcsIDIyMCwgOCwgMywgMjQ3LCAxOTcsIDgsIDMsIDI0OCwgMTAyLCAKKyAgICA4LCAzLCAyNDgsIDE2MiwgOCwgMywgMjQ4LCAxMTcsIDgsIDMsIDI0NiwgMTI5LCA4LCAzLCAyNDYsIDEyNywgOCwgMywgCisgICAgMjQ2LCAxNTQsIDgsIDMsIDI0NiwgMTM3LCA4LCAzLCAyNDYsIDEzMiwgOCwgMywgMjQ2LCAxMzUsIDgsIDMsIDIxNywgMzQsIAorICAgIDgsIDMsIDIxNywgMjgsIDgsIDMsIDIxNywgODQsIDgsIDMsIDIxNywgNDMsIDgsIDMsIDIxNywgNzYsIDgsIDMsIDIxNywgCisgICAgNzgsIDgsIDMsIDIxNywgNzcsIDgsIDMsIDIxOCwgMTAsIDgsIDMsIDIxNywgMjUzLCA4LCAzLCAyMTgsIDY2LCA4LCAzLCAKKyAgICAyMTgsIDE4LCA4LCAzLCAyMTYsIDc0LCA4LCAzLCAyMTYsIDczLCA4LCAzLCAyMTYsIDc2LCA4LCAzLCAyMTYsIDc1LCA4LCAKKyAgICAzLCAyMTYsIDIzMSwgOCwgMywgMjE2LCAyMjcsIDgsIDMsIDEwOSwgOCwgMywgMjE2LCAyMzksIDgsIDMsIDIxNywgMTc5LCAKKyAgICA4LCAzLCAyMTcsIDI0MiwgOCwgMywgMjE3LCAyMDMsIDgsIDMsIDIxNiwgNjAsIDgsIDMsIDIxNiwgNTUsIDgsIDMsIDIxNiwgCisgICAgOTAsIDgsIDMsIDIxNiwgNzIsIDgsIDMsIDIxNiwgNjEsIDgsIDMsIDIxNiwgNzAsIDgsIDMsIDI0OCwgMTc5LCA4LCAzLCAKKyAgICAyNDgsIDE3OCwgOCwgMywgMjQ4LCAxODQsIDgsIDMsIDI0OCwgMTgwLCA4LCAzLCAyNDgsIDE4MSwgOCwgMywgMjQ4LCAxODMsIAorICAgIDgsIDMsIDI0OCwgMTgyLCA4LCAzLCAyNDgsIDIwMCwgOCwgMywgMjQ4LCAxOTksIDgsIDMsIDI0OCwgMjA3LCA4LCAzLCAKKyAgICAyNDgsIDIwMSwgOCwgMywgMjQ4LCAxNjksIDgsIDMsIDI0OCwgMTcxLCA4LCAzLCAyNDgsIDE3MCwgOCwgMywgMjQ4LCAxNzQsIAorICAgIDgsIDMsIDI0OCwgMTczLCA4LCAzLCAyNDgsIDE3NywgOCwgMywgMjQ4LCAxNzUsIDgsIDMsIDI0OCwgMTkyLCA4LCAzLCAKKyAgICAyNDgsIDE5NSwgOCwgMywgMjQ4LCAxOTMsIDgsIDMsIDI0OCwgMTY1LCA4LCAzLCAyNDgsIDE2NCwgOCwgMywgMjQ4LCAxNzIsIAorICAgIDgsIDMsIDI0OCwgMTY4LCA4LCAzLCAyNDgsIDE2NiwgOCwgMywgMjQ4LCAxNjcsIDgsIDMsIDIzMCwgMTcsIDgsIDMsIDIzMCwgCisgICAgMTYsIDgsIDMsIDIzMCwgMjQsIDgsIDMsIDIzMCwgMTksIDgsIDMsIDIzMCwgMjAsIDgsIDMsIDIzMCwgMjEsIDgsIDMsIAorICAgIDIzMCwgMzMsIDgsIDMsIDIzMCwgMzIsIDgsIDMsIDIzMCwgMzksIDgsIDMsIDIzMCwgMzQsIDgsIDMsIDIzMCwgOSwgOCwgMywgCisgICAgMjMwLCA4LCA4LCAzLCAyMzAsIDE1LCA4LCAzLCAyMzAsIDEwLCA4LCAzLCAyMzAsIDI1LCA4LCAzLCAyMzAsIDMxLCA4LCAzLCAKKyAgICAyMzAsIDI5LCA4LCAzLCAyMzAsIDEsIDgsIDMsIDIzMCwgMCwgOCwgMywgMjMwLCA2LCA4LCAzLCAyMzAsIDQsIDgsIDMsIAorICAgIDIzMCwgMiwgOCwgMywgMjMwLCAzLCA4LCAzLCAyNDEsIDE4MiwgOCwgMywgMjQxLCAxODEsIDgsIDMsIDI0MSwgMTg4LCA4LCAKKyAgICAzLCAyNDEsIDE4MywgOCwgMywgMjQxLCAxODUsIDgsIDMsIDI0MSwgMTg0LCA4LCAzLCAyNDEsIDE4NywgOCwgMywgMjQxLCAKKyAgICAxODYsIDgsIDMsIDI0MSwgMTkzLCA4LCAzLCAyNDEsIDE5MiwgOCwgMywgMjQxLCAxOTUsIDgsIDMsIDI0MSwgMTk0LCA4LCAKKyAgICAzLCAyNDEsIDE3NiwgOCwgMywgMjQxLCAxNzcsIDgsIDMsIDI0MSwgMTc5LCA4LCAzLCAyNDEsIDE3OCwgOCwgMywgMjQxLCAKKyAgICAxODAsIDgsIDMsIDI0MSwgMTg5LCA4LCAzLCAyNDEsIDE5MSwgOCwgMywgMjQxLCAxOTAsIDgsIDMsIDI0MSwgMTc1LCA4LCAKKyAgICAzLCAyMjksIDg0LCA4LCAzLCAyMjksIDgyLCA4LCAzLCAyMjksIDEyOCwgOCwgMywgMjI5LCA4NywgOCwgMywgMjI5LCAxMTAsIAorICAgIDgsIDMsIDIyOSwgMTI0LCA4LCAzLCAyMjksIDEyMywgOCwgMywgMjMwLCA3MiwgOCwgMywgMjA3LCA4LCAzLCAyMzAsIDg1LCAKKyAgICA4LCAzLCAyMjgsIDg1LCA4LCAzLCAyMjgsIDg3LCA4LCAzLCAyMjgsIDg2LCA4LCAzLCAyMjgsIDIwNSwgOCwgMywgMjI4LCAKKyAgICAxOTIsIDgsIDMsIDIyOCwgMjI4LCA4LCAzLCAyMjgsIDIxNCwgOCwgMywgMjI5LCAyMzIsIDgsIDMsIDIyOSwgMjU0LCA4LCAKKyAgICAzLCAyMjksIDI0MywgOCwgMywgMjI4LCA4MCwgOCwgMywgMjI4LCA3NiwgOCwgMywgMjI4LCAxMzUsIDgsIDMsIDIyOCwgODQsIAorICAgIDgsIDMsIDIyOCwgODIsIDgsIDMsIDIyOCwgODMsIDgsIDMsIDI0MSwgMjQ2LCA4LCAzLCAyNDEsIDI0NSwgOCwgMywgMjQxLCAKKyAgICAyNTEsIDgsIDMsIDI0MSwgMjQ3LCA4LCAzLCAyNDEsIDI0OCwgOCwgMywgMjQxLCAyNTAsIDgsIDMsIDI0MSwgMjQ5LCA4LCAKKyAgICAzLCAyNDIsIDAsIDgsIDMsIDI0MSwgMjU1LCA4LCAzLCAyNDIsIDIsIDgsIDMsIDI0MiwgMSwgOCwgMywgMjQxLCAyMzgsIDgsIAorICAgIDMsIDI0MSwgMjQwLCA4LCAzLCAyNDEsIDIzOSwgOCwgMywgMjQxLCAyNDIsIDgsIDMsIDI0MSwgMjQ0LCA4LCAzLCAyNDEsIAorICAgIDI0MywgOCwgMywgMjQxLCAyNTIsIDgsIDMsIDI0MSwgMjU0LCA4LCAzLCAyNDEsIDI1MywgOCwgMywgMjQxLCAyMzQsIDgsIAorICAgIDMsIDI0MSwgMjMzLCA4LCAzLCAyNDEsIDI0MSwgOCwgMywgMjQxLCAyMzcsIDgsIDMsIDI0MSwgMjM1LCA4LCAzLCAyNDEsIAorICAgIDIzNiwgOCwgMywgMjQxLCAyMjgsIDgsIDMsIDI0MSwgMjI3LCA4LCAzLCAyNDEsIDIzMiwgOCwgMywgMjQxLCAyMzEsIDgsIAorICAgIDMsIDI0MSwgMjI5LCA4LCAzLCAyNDEsIDIzMCwgOCwgMywgMjMzLCA2NSwgOCwgMywgMjMzLCA1OSwgOCwgMywgMjMzLCAKKyAgICAxMTEsIDgsIDMsIDIzMywgNzIsIDgsIDMsIDIzMywgMTAzLCA4LCAzLCAyMzMsIDEwMiwgOCwgMywgMjMzLCAxMDYsIDgsIDMsIAorICAgIDIzMywgMTA0LCA4LCAzLCAyMzMsIDIwMSwgOCwgMywgMjMzLCAxOTEsIDgsIDMsIDIzMywgMjU1LCA4LCAzLCAyMzMsIDIxMCwgCisgICAgOCwgMywgMjMyLCAyMTEsIDgsIDMsIDIzMiwgMjEwLCA4LCAzLCAyMzIsIDIxMywgOCwgMywgMjMyLCAyMTIsIDgsIDMsIAorICAgIDIzMiwgMjQ1LCA4LCAzLCAyMzIsIDIzNSwgOCwgMywgMjMzLCAyNiwgOCwgMywgMjMyLCAyNDksIDgsIDMsIDIzMywgMTI2LCAKKyAgICA4LCAzLCAyMzMsIDE4MCwgOCwgMywgMjMzLCAxMzksIDgsIDMsIDIzMiwgMjA2LCA4LCAzLCAyMzIsIDIwNCwgOCwgMywgCisgICAgMjMyLCAyMzAsIDgsIDMsIDIzMiwgMjA5LCA4LCAzLCAyMzIsIDIwNywgOCwgMywgMjMyLCAyMDgsIDgsIDMsIDIzMiwgMTg3LCAKKyAgICA4LCAzLCAyMzIsIDE4NiwgOCwgMywgMjMyLCAxOTQsIDgsIDMsIDIzMiwgMTkwLCA4LCAzLCAyMzIsIDE4OCwgOCwgMywgCisgICAgMjMyLCAxODksIDgsIDMsIDI0MywgMjksIDgsIDMsIDI0MywgMjgsIDgsIDMsIDI0MywgNTQsIDgsIDMsIDI0MywgMzksIDgsIAorICAgIDMsIDI0MywgNDYsIDgsIDMsIDI0MywgNDUsIDgsIDMsIDI0MywgNDgsIDgsIDMsIDI0MywgNDcsIDgsIDMsIDI0MywgMTg1LCAKKyAgICA4LCAzLCAyNDMsIDE4MCwgOCwgMywgMjQzLCAyMzAsIDgsIDMsIDI0MywgMTk1LCA4LCAzLCAyNDIsIDE5MywgOCwgMywgCisgICAgMjQyLCAxOTIsIDgsIDMsIDI0MiwgMTk1LCA4LCAzLCAyNDIsIDE5NCwgOCwgMywgMjQyLCAyNTAsIDgsIDMsIDI0MiwgMjQ4LCAKKyAgICA4LCAzLCAyNDMsIDE0LCA4LCAzLCAyNDMsIDIsIDgsIDMsIDI0MywgMTI5LCA4LCAzLCAyNDMsIDEyNywgOCwgMywgMjQzLCAKKyAgICAxNTgsIDgsIDMsIDI0MywgMTQwLCA4LCAzLCAyNDIsIDE4MywgOCwgMywgMjQyLCAxODIsIDgsIDMsIDI0MiwgMjEzLCA4LCAKKyAgICAzLCAyNDIsIDE5MSwgOCwgMywgMjQyLCAxODQsIDgsIDMsIDI0MiwgMTkwLCA4LCAzLCAyMzQsIDE4MSwgOCwgMywgMjM0LCAKKyAgICAxODAsIDgsIDMsIDIzNCwgMjEyLCA4LCAzLCAyMzQsIDE5NSwgOCwgMywgMjM0LCAyMDUsIDgsIDMsIDIzNCwgMjA4LCA4LCAKKyAgICAzLCAyMzQsIDIwNiwgOCwgMywgMjM1LCA2NCwgOCwgMywgMjM1LCA1MiwgOCwgMywgMTgzLCA4LCAzLCAyMzUsIDkwLCA4LCAKKyAgICAzLCAyMzQsIDY0LCA4LCAzLCAyMzQsIDY5LCA4LCAzLCAyMzQsIDY2LCA4LCAzLCAyMzQsIDEyMCwgOCwgMywgMjM0LCAxMTYsIAorICAgIDgsIDMsIDIzNCwgMTQ4LCA4LCAzLCAyMzQsIDEyNywgOCwgMywgMjM1LCAxOCwgOCwgMywgMjM1LCAyLCA4LCAzLCAyMzUsIAorICAgIDQ0LCA4LCAzLCAyMzUsIDIxLCA4LCAzLCAyMzQsIDUzLCA4LCAzLCAyMzQsIDUwLCA4LCAzLCAyMzQsIDgxLCA4LCAzLCAKKyAgICAyMzQsIDYzLCA4LCAzLCAyMzQsIDU2LCA4LCAzLCAyMzQsIDYwLCA4LCAzLCAyNDMsIDExMSwgOCwgMywgMjQzLCAxMTAsIDgsIAorICAgIDMsIDI0MywgMTE1LCA4LCAzLCAyNDMsIDExMiwgOCwgMywgMjQzLCAxMTQsIDgsIDMsIDI0MywgMTEzLCA4LCAzLCAyNDMsIAorICAgIDEyMiwgOCwgMywgMjQzLCAxMjEsIDgsIDMsIDI0MywgMTI1LCA4LCAzLCAyNDMsIDEyMywgOCwgMywgMjQzLCAxMDIsIDgsIAorICAgIDMsIDI0MywgMTAxLCA4LCAzLCAyNDMsIDEwNCwgOCwgMywgMjQzLCAxMDMsIDgsIDMsIDI0MywgMTA3LCA4LCAzLCAyNDMsIAorICAgIDEwNiwgOCwgMywgMjQzLCAxMDksIDgsIDMsIDI0MywgMTA4LCA4LCAzLCAyNDMsIDExNywgOCwgMywgMjQzLCAxMTYsIDgsIAorICAgIDMsIDI0MywgMTIwLCA4LCAzLCAyNDMsIDExOCwgOCwgMywgMjQzLCA5NywgOCwgMywgMjQzLCA5NiwgOCwgMywgMjQzLCAKKyAgICAxMDUsIDgsIDMsIDI0MywgMTAwLCA4LCAzLCAyNDMsIDk4LCA4LCAzLCAyNDMsIDk5LCA4LCAzLCAyMzEsIDEzMCwgOCwgMywgCisgICAgMjMxLCAxMzEsIDgsIDMsIDIzMSwgMTQ5LCA4LCAzLCAyMzEsIDE0OCwgOCwgMywgMjMxLCAxNTEsIDgsIDMsIDIzMSwgMTUwLCAKKyAgICA4LCAzLCAyMzEsIDEyMSwgOCwgMywgMjMxLCAxMjMsIDgsIDMsIDIzMSwgMTIyLCA4LCAzLCAyMzEsIDEyNiwgOCwgMywgCisgICAgMjMxLCAxMjUsIDgsIDMsIDIzMSwgMTI4LCA4LCAzLCAyMzEsIDEyNywgOCwgMywgMjMxLCAxMzIsIDgsIDMsIDIzMSwgMTM0LCAKKyAgICA4LCAzLCAyMzEsIDEzMywgOCwgMywgMjMxLCAxMTcsIDgsIDMsIDIzMSwgMTE2LCA4LCAzLCAyMzEsIDEyNCwgOCwgMywgCisgICAgMjMxLCAxMjAsIDgsIDMsIDIzMSwgMTE4LCA4LCAzLCAyMzEsIDExOSwgOCwgMywgMjQxLCAzMywgOCwgMywgMjQxLCAzMiwgCisgICAgOCwgMywgMjQxLCAzOSwgOCwgMywgMjQxLCAzNCwgOCwgMywgMjQxLCAzNiwgOCwgMywgMjQxLCAzNSwgOCwgMywgMjQxLCAKKyAgICAzOCwgOCwgMywgMjQxLCAzNywgOCwgMywgMjQxLCA0NCwgOCwgMywgMjQxLCA0MywgOCwgMywgMjQxLCA0NiwgOCwgMywgCisgICAgMjQxLCA0NSwgOCwgMywgMjQxLCAyNSwgOCwgMywgMjQxLCAyNCwgOCwgMywgMjQxLCAyNywgOCwgMywgMjQxLCAyNiwgOCwgCisgICAgMywgMjQxLCAyOSwgOCwgMywgMjQxLCAyOCwgOCwgMywgMjQxLCAzMSwgOCwgMywgMjQxLCAzMCwgOCwgMywgMjQxLCA0MCwgCisgICAgOCwgMywgMjQxLCA0MiwgOCwgMywgMjQxLCA0MSwgOCwgMywgMjI5LCAxNzUsIDgsIDMsIDIyOSwgMTc3LCA4LCAzLCAyMjksIAorICAgIDE3NiwgOCwgMywgMjI5LCAyMTcsIDgsIDMsIDIyOSwgMjE1LCA4LCAzLCAyMjksIDIyNiwgOCwgMywgMjI5LCAyMjAsIDgsIAorICAgIDMsIDIyOSwgMTM4LCA4LCAzLCAyMjksIDEzNywgOCwgMywgMjI5LCAxMzksIDgsIDMsIDIyOSwgMTQ3LCA4LCAzLCAyMjksIAorICAgIDE0NCwgOCwgMywgMjI5LCAxNTUsIDgsIDMsIDIyOSwgMTQ5LCA4LCAzLCAyMjksIDIwOCwgOCwgMywgMjI5LCAyMTQsIDgsIAorICAgIDMsIDIyOSwgMjEwLCA4LCAzLCAyNDIsIDUsIDgsIDMsIDI0MiwgMTUsIDgsIDMsIDI0MiwgMjMsIDgsIDMsIDI0MiwgOTgsIAorICAgIDgsIDMsIDI0MiwgOTAsIDgsIDMsIDE2MiwgOCwgMywgMjQyLCAxMDksIDgsIDMsIDI0MSwgNTgsIDgsIDMsIDI0MSwgNTcsIAorICAgIDgsIDMsIDI0MSwgNjAsIDgsIDMsIDI0MSwgNTksIDgsIDMsIDI0MSwgOTEsIDgsIDMsIDI0MSwgODIsIDgsIDMsIDI0MSwgCisgICAgMTczLCA4LCAzLCAyNDEsIDE1MiwgOCwgMywgMjQyLCA0MiwgOCwgMywgMjQyLCA4NSwgOCwgMywgMjQyLCA1MywgOCwgMywgCisgICAgMjE0LCAzMCwgOCwgMywgMjE0LCAxNSwgOCwgMywgMjE0LCA1MiwgOCwgMywgMjE0LCAzOCwgOCwgMywgMjEzLCAxNzYsIDgsIAorICAgIDMsIDIxMywgMTc4LCA4LCAzLCAyMTMsIDE3NywgOCwgMywgMjEzLCAxOTQsIDgsIDMsIDIxMywgMjE3LCA4LCAzLCAyMTMsIAorICAgIDIwMCwgOCwgMywgMjEzLCAyNDksIDgsIDMsIDIxNCwgOSwgOCwgMywgMjEzLCAyNTQsIDgsIDMsIDIxMiwgMjMsIDgsIDMsIAorICAgIDIxMiwgMjIsIDgsIDMsIDIxMiwgMzcsIDgsIDMsIDIxMiwgMjUsIDgsIDMsIDIxMiwgMzAsIDgsIDMsIDIxMiwgMzIsIDgsIAorICAgIDMsIDIxMiwgMzEsIDgsIDMsIDIxMiwgOTUsIDgsIDMsIDIxMiwgOTIsIDgsIDMsIDIxMiwgMTA5LCA4LCAzLCAyMTIsIDk4LCAKKyAgICA4LCAzLCAyMTIsIDEsIDgsIDMsIDIxMiwgMywgOCwgMywgMjEyLCAyLCA4LCAzLCAyMTIsIDEyLCA4LCAzLCAyMTIsIDExLCAKKyAgICA4LCAzLCAyMTIsIDE2LCA4LCAzLCAyMTIsIDEzLCA4LCAzLCAyMTIsIDc3LCA4LCAzLCAyMTIsIDg3LCA4LCAzLCAyMTIsIAorICAgIDgxLCA4LCAzLCAyMTEsIDI1MywgOCwgMywgMjExLCAyNTIsIDgsIDMsIDIxMiwgOCwgOCwgMywgMjEyLCAwLCA4LCAzLCAKKyAgICAyMTEsIDI1NCwgOCwgMywgMjExLCAyNTUsIDgsIDMsIDIxMSwgMjQ0LCA4LCAzLCAyMTEsIDI0MywgOCwgMywgMjExLCAyNDksIAorICAgIDgsIDMsIDIxMSwgMjQ3LCA4LCAzLCAyMTEsIDI0NSwgOCwgMywgMjExLCAyNDYsIDgsIDMsIDI1MCwgODgsIDgsIDMsIDI1MCwgCisgICAgODQsIDgsIDMsIDI1MCwgMTExLCA4LCAzLCAyNTAsIDk3LCA4LCAzLCAyNTAsIDEwOCwgOCwgMywgMjUwLCAxMDIsIDgsIDMsIAorICAgIDI1MCwgMTEwLCA4LCAzLCAyNTAsIDEwOSwgOCwgMywgMjUxLCAyNCwgOCwgMywgMjUxLCAxNywgOCwgMywgMjUxLCA4OCwgOCwgCisgICAgMywgMjUxLCA1MSwgOCwgMywgMjQ5LCAxNjgsIDgsIDMsIDI0OSwgMTcwLCA4LCAzLCAyNDksIDE2OSwgOCwgMywgMjQ5LCAKKyAgICAyMTUsIDgsIDMsIDI0OSwgMjA2LCA4LCAzLCAyNTAsIDQyLCA4LCAzLCAyNDksIDIzMSwgOCwgMywgMjUwLCAyMTcsIDgsIDMsIAorICAgIDI1MCwgMjQ3LCA4LCAzLCAyNTAsIDIyMiwgOCwgMywgMjQ5LCAxNDksIDgsIDMsIDI0OSwgMTQ3LCA4LCAzLCAyNDksIDE3NiwgCisgICAgOCwgMywgMjQ5LCAxNjYsIDgsIDMsIDI0OSwgMTU0LCA4LCAzLCAyNDksIDE2NSwgOCwgMywgMjQ5LCAxMjgsIDgsIDMsIAorICAgIDI0OSwgMTI3LCA4LCAzLCAyNDksIDEzOCwgOCwgMywgMjQ5LCAxMzQsIDgsIDMsIDI0OSwgMTI5LCA4LCAzLCAyNDksIDEzMSwgCisgICAgOCwgMywgMjExLCAyMjcsIDgsIDMsIDIxMSwgMjI2LCA4LCAzLCAyMTEsIDIzMywgOCwgMywgMjExLCAyMjgsIDgsIDMsIAorICAgIDIxMSwgMjMwLCA4LCAzLCAyMTEsIDIyOSwgOCwgMywgMjExLCAyMzIsIDgsIDMsIDIxMSwgMjMxLCA4LCAzLCAyMTEsIDIzOSwgCisgICAgOCwgMywgMjExLCAyMzgsIDgsIDMsIDIxMSwgMjQyLCA4LCAzLCAyMTEsIDI0MCwgOCwgMywgMjExLCAyMjMsIDgsIDMsIAorICAgIDIxMSwgMjI1LCA4LCAzLCAyMTEsIDIyNCwgOCwgMywgMjExLCAyMzQsIDgsIDMsIDIxMSwgMjM3LCA4LCAzLCAyMTEsIDIzNSwgCisgICAgOCwgMywgMjExLCAyMTgsIDgsIDMsIDIxMSwgMjIyLCA4LCAzLCAyMTEsIDIyMSwgOCwgMywgMjExLCAyMTksIDgsIDMsIAorICAgIDIxMSwgMjIwLCA4LCAzLCAyMTEsIDIxMywgOCwgMywgMjExLCAyMTIsIDgsIDMsIDIxMSwgMjE3LCA4LCAzLCAyMTEsIDIxNiwgCisgICAgOCwgMywgMjExLCAyMTQsIDgsIDMsIDIxMSwgMjE1LCA4LCAzLCAyMjgsIDUsIDgsIDMsIDIyOCwgNCwgOCwgMywgMjI4LCAKKyAgICAxMCwgOCwgMywgMjI4LCA2LCA4LCAzLCAyMjgsIDcsIDgsIDMsIDIyOCwgOSwgOCwgMywgMjI4LCA4LCA4LCAzLCAyMjgsIAorICAgIDE1LCA4LCAzLCAyMjgsIDE0LCA4LCAzLCAyMjgsIDE4LCA4LCAzLCAyMjgsIDE3LCA4LCAzLCAyMjcsIDI1NCwgOCwgMywgCisgICAgMjI3LCAyNTUsIDgsIDMsIDIyOCwgMiwgOCwgMywgMjI4LCAzLCA4LCAzLCAyMjgsIDExLCA4LCAzLCAyMjgsIDEzLCA4LCAzLCAKKyAgICAyMjcsIDI0OSwgOCwgMywgMjI4LCAxLCA4LCAzLCAyMjcsIDI1MywgOCwgMywgMjI3LCAyNTAsIDgsIDMsIDIyNywgMjUxLCAKKyAgICA4LCAzLCAyMjcsIDI0NCwgOCwgMywgMjI3LCAyNDMsIDgsIDMsIDIyNywgMjQ4LCA4LCAzLCAyMjcsIDI0NywgOCwgMywgCisgICAgMjI3LCAyNDUsIDgsIDMsIDIyNywgMjQ2LCA4LCAzLCAyMjAsIDc0LCA4LCAzLCAxOTIsIDgsIDMsIDIyMCwgMTM2LCA4LCAzLCAKKyAgICAyMjAsIDc3LCA4LCAzLCAyMjAsIDEyOCwgOCwgMywgMjIwLCAxMzEsIDgsIDMsIDIyMCwgMTI5LCA4LCAzLCAyMjIsIDE2NiwgCisgICAgOCwgMywgMjIyLCAxNTUsIDgsIDMsIDIyMiwgMjI3LCA4LCAzLCAyMjIsIDE3NCwgOCwgMywgMjE4LCAyNDIsIDgsIDMsIAorICAgIDIxOCwgMjQ0LCA4LCAzLCAyMTgsIDI0MywgOCwgMywgMjE5LCAyNDAsIDgsIDMsIDIxOSwgMjI5LCA4LCAzLCAyMjAsIDUsIAorICAgIDgsIDMsIDIxOSwgMjQzLCA4LCAzLCAyMjEsIDU4LCA4LCAzLCAyMjIsIDEyMywgOCwgMywgMjIxLCA4MiwgOCwgMywgMjE4LCAKKyAgICAyMjAsIDgsIDMsIDIxOCwgMjE4LCA4LCAzLCAyMTksIDQxLCA4LCAzLCAyMTgsIDI0MSwgOCwgMywgMjE4LCAyMjMsIDgsIDMsIAorICAgIDIxOCwgMjMxLCA4LCAzLCAyMTgsIDEyNywgOCwgMywgMjE4LCAxMjYsIDgsIDMsIDIxOCwgMTkxLCA4LCAzLCAyMTgsIDEzMywgCisgICAgOCwgMywgMjE4LCAxMjgsIDgsIDMsIDIxOCwgMTMyLCA4LCAzLCAyMTksIDEzOSwgOCwgMywgMjE5LCAxMzgsIDgsIDMsIAorICAgIDIxOSwgMTQ1LCA4LCAzLCAyMTksIDE0MCwgOCwgMywgMjE5LCAxNDIsIDgsIDMsIDIxOSwgMTQ0LCA4LCAzLCAyMTksIDE0MywgCisgICAgOCwgMywgMjE5LCAxNTMsIDgsIDMsIDIxOSwgMTUxLCA4LCAzLCAyMTksIDE3NiwgOCwgMywgMjE5LCAxNTQsIDgsIDMsIAorICAgIDIxOSwgMTM0LCA4LCAzLCAyMTksIDEzMywgOCwgMywgMjE5LCAxMzcsIDgsIDMsIDIxOSwgMTM1LCA4LCAzLCAyMTksIDE0NywgCisgICAgOCwgMywgMjE5LCAxNTAsIDgsIDMsIDIxOSwgMTQ4LCA4LCAzLCAyMTksIDEzMCwgOCwgMywgMjE5LCAxMjgsIDgsIDMsIAorICAgIDIxOSwgMTMyLCA4LCAzLCAyMTksIDEzMSwgOCwgMywgMjE5LCAxMjMsIDgsIDMsIDIxOSwgMTIyLCA4LCAzLCAyMTksIDEyNywgCisgICAgOCwgMywgMjE5LCAxMjYsIDgsIDMsIDIxOSwgMTI0LCA4LCAzLCAyMTksIDEyNSwgOCwgMywgMjEyLCA3MCwgOCwgMywgMjEyLCAKKyAgICA2OSwgOCwgMywgMjEyLCA3NSwgOCwgMywgMjEyLCA3MiwgOCwgMywgMjEyLCA1MiwgOCwgMywgMjEyLCA1NCwgOCwgMywgCisgICAgMjEyLCA1MywgOCwgMywgMjEyLCA1NywgOCwgMywgMjEyLCA1NiwgOCwgMywgMjEyLCA2MCwgOCwgMywgMjEyLCA1OCwgOCwgCisgICAgMywgMjEyLCA2NCwgOCwgMywgMjEyLCA2MywgOCwgMywgMjEyLCA2NywgOCwgMywgMjEyLCA2NSwgOCwgMywgMjEyLCA0OCwgCisgICAgOCwgMywgMjEyLCA0NywgOCwgMywgMjEyLCA1NSwgOCwgMywgMjEyLCA1MSwgOCwgMywgMjEyLCA0OSwgOCwgMywgMjEyLCAKKyAgICA1MCwgOCwgMywgMjEyLCA0MCwgOCwgMywgMjEyLCAzOSwgOCwgMywgMjEyLCA0NCwgOCwgMywgMjEyLCA0MywgOCwgMywgCisgICAgMjEyLCA0MSwgOCwgMywgMjEyLCA0MiwgOCwgMywgMjUwLCAxOTUsIDgsIDMsIDI1MCwgMTkyLCA4LCAzLCAyNTAsIDIxNSwgCisgICAgOCwgMywgMjUwLCAyMDMsIDgsIDMsIDI1MCwgMTI1LCA4LCAzLCAyNTAsIDEyNCwgOCwgMywgMjUwLCAxMjcsIDgsIDMsIAorICAgIDI1MCwgMTI2LCA4LCAzLCAyNTAsIDEzOSwgOCwgMywgMjUwLCAxMzgsIDgsIDMsIDI1MCwgMTQ2LCA4LCAzLCAyNTAsIDE0MSwgCisgICAgOCwgMywgMjUwLCAxNzUsIDgsIDMsIDI1MCwgMTczLCA4LCAzLCAyNTAsIDE5MCwgOCwgMywgMjUwLCAxODEsIDgsIDMsIAorICAgIDI1MCwgMTE5LCA4LCAzLCAyNTAsIDEyOSwgOCwgMywgMjUwLCAxMjMsIDgsIDMsIDI1MCwgMTIwLCA4LCAzLCAyNTAsIDEyMiwgCisgICAgOCwgMywgMjUwLCAxMTMsIDgsIDMsIDI1MCwgMTEyLCA4LCAzLCAyNTAsIDExNywgOCwgMywgMjUwLCAxMTYsIDgsIDMsIAorICAgIDI1MCwgMTE0LCA4LCAzLCAyNTAsIDExNSwgOCwgMywgMjIzLCAxMTEsIDgsIDMsIDIyMywgMTE1LCA4LCAzLCAyMjMsIDk0LCAKKyAgICA4LCAzLCAyMjMsIDk1LCA4LCAzLCAyMjMsIDk4LCA4LCAzLCAyMjMsIDk3LCA4LCAzLCAyMjMsIDEwMSwgOCwgMywgMjIzLCAKKyAgICA5OSwgOCwgMywgMjIzLCAxMDUsIDgsIDMsIDIyMywgMTA0LCA4LCAzLCAyMjMsIDExMCwgOCwgMywgMjIzLCAxMDYsIDgsIDMsIAorICAgIDIyMywgOTAsIDgsIDMsIDIyMywgODgsIDgsIDMsIDIyMywgOTYsIDgsIDMsIDIyMywgOTMsIDgsIDMsIDIyMywgOTEsIDgsIAorICAgIDMsIDIyMywgOTIsIDgsIDMsIDIyMywgODMsIDgsIDMsIDIyMywgODIsIDgsIDMsIDIyMywgODcsIDgsIDMsIDIyMywgODYsIAorICAgIDgsIDMsIDIyMywgODQsIDgsIDMsIDIyMywgODUsIDgsIDMsIDIyOCwgMTg4LCA4LCAzLCAyMjgsIDE4NywgOCwgMywgMjI4LCAKKyAgICAxOTAsIDgsIDMsIDIyOCwgMTg5LCA4LCAzLCAyMjgsIDE4MCwgOCwgMywgMjI4LCAxODIsIDgsIDMsIDIyOCwgMTgxLCA4LCAKKyAgICAzLCAyMjgsIDE4NCwgOCwgMywgMjI4LCAxODMsIDgsIDMsIDIyOCwgMTg2LCA4LCAzLCAyMjgsIDE4NSwgOCwgMywgMjI4LCAKKyAgICAxNzUsIDgsIDMsIDIyOCwgMTc0LCA4LCAzLCAyMjgsIDE3OSwgOCwgMywgMjI4LCAxNzgsIDgsIDMsIDIyOCwgMTc2LCA4LCAKKyAgICAzLCAyMjgsIDE3NywgOCwgMywgMjI4LCAxNjksIDgsIDMsIDIyOCwgMTY4LCA4LCAzLCAyMjgsIDE3MywgOCwgMywgMjI4LCAKKyAgICAxNzIsIDgsIDMsIDIyOCwgMTcwLCA4LCAzLCAyMjgsIDE3MSwgOCwgMywgMjIxLCAxNywgOCwgMywgMjIxLCAxMiwgOCwgMywgCisgICAgMjIxLCA0NywgOCwgMywgMjIxLCAyOCwgOCwgMywgMjIwLCAxNjAsIDgsIDMsIDIyMCwgMTYyLCA4LCAzLCAyMjAsIDE2MSwgCisgICAgOCwgMywgMjIwLCAxODEsIDgsIDMsIDIyMCwgMTc4LCA4LCAzLCAyMjAsIDIwOCwgOCwgMywgMjIwLCAxOTksIDgsIDMsIAorICAgIDIyMCwgMjQzLCA4LCAzLCAyMjAsIDIzNiwgOCwgMywgMjIxLCA4LCA4LCAzLCAyMjAsIDI1MSwgOCwgMywgMjIwLCAxNTYsIAorICAgIDgsIDMsIDIyMCwgMTU0LCA4LCAzLCAyMjAsIDE3MCwgOCwgMywgMjIwLCAxNTksIDgsIDMsIDIyMCwgMTU3LCA4LCAzLCAKKyAgICAyMjAsIDE1OCwgOCwgMywgMjIwLCAxMzksIDgsIDMsIDIyMCwgMTM4LCA4LCAzLCAyMjAsIDE0NSwgOCwgMywgMjIwLCAxNDIsIAorICAgIDgsIDMsIDIyMCwgMTQwLCA4LCAzLCAyMjAsIDE0MSwgOCwgMywgMjI0LCA2OCwgOCwgMywgMjI0LCA2MiwgOCwgMywgMjA4LCAKKyAgICA4LCAzLCAyMjQsIDc0LCA4LCAzLCAyMjMsIDU3LCA4LCAzLCAyMjMsIDU5LCA4LCAzLCAyMjMsIDU4LCA4LCAzLCAyMjMsIAorICAgIDEyNCwgOCwgMywgMjIzLCAxMTcsIDgsIDMsIDIyMywgMTQ2LCA4LCAzLCAyMjMsIDEyOCwgOCwgMywgMjIzLCAyMzAsIDgsIAorICAgIDMsIDIyNCwgNTUsIDgsIDMsIDIyNCwgOSwgOCwgMywgMjIzLCA1MCwgOCwgMywgMjIzLCA0NywgOCwgMywgMjIzLCA3NywgOCwgCisgICAgMywgMjIzLCA1NiwgOCwgMywgMjIzLCA1MiwgOCwgMywgMjIzLCA1MywgOCwgMywgMjIzLCAzMiwgOCwgMywgMjIzLCAzMSwgCisgICAgOCwgMywgMjIzLCAzNywgOCwgMywgMjIzLCAzNSwgOCwgMywgMjIzLCAzMywgOCwgMywgMjIzLCAzNCwgOCwgMywgMjM1LCAKKyAgICAyMTUsIDgsIDMsIDIzNSwgMjE0LCA4LCAzLCAyMzUsIDIyNSwgOCwgMywgMjM1LCAyMTYsIDgsIDMsIDIzNSwgMjIxLCA4LCAKKyAgICAzLCAyMzUsIDIyMCwgOCwgMywgMjM1LCAyMjMsIDgsIDMsIDIzNSwgMjIyLCA4LCAzLCAyMzUsIDE1OCwgOCwgMywgMjM1LCAKKyAgICAxNTcsIDgsIDMsIDIzNSwgMTYwLCA4LCAzLCAyMzUsIDE1OSwgOCwgMywgMjM1LCAxNzMsIDgsIDMsIDIzNSwgMTcxLCA4LCAKKyAgICAzLCAyMzUsIDE4NSwgOCwgMywgMjM1LCAxNzUsIDgsIDMsIDIzNSwgMTUyLCA4LCAzLCAyMzUsIDE1MCwgOCwgMywgMjM1LCAKKyAgICAxNjgsIDgsIDMsIDIzNSwgMTU2LCA4LCAzLCAyMzUsIDE1MywgOCwgMywgMjM1LCAxNTQsIDgsIDMsIDIzNSwgMTQ0LCA4LCAKKyAgICAzLCAyMzUsIDE0MywgOCwgMywgMjM1LCAxNDgsIDgsIDMsIDIzNSwgMTQ3LCA4LCAzLCAyMzUsIDE0NSwgOCwgMywgMjM1LCAKKyAgICAxNDYsIDgsIDMsIDIyNCwgMjI2LCA4LCAzLCAyMjQsIDIyNCwgOCwgMywgMjI0LCAyMzMsIDgsIDMsIDIyNCwgMjI3LCA4LCAKKyAgICAzLCAyMjQsIDIzMCwgOCwgMywgMjI0LCAyMjksIDgsIDMsIDIyNCwgMjMyLCA4LCAzLCAyMjQsIDIzMSwgOCwgMywgMjI0LCAKKyAgICAxNzksIDgsIDMsIDIyNCwgMTc2LCA4LCAzLCAyMjQsIDE4MSwgOCwgMywgMjI0LCAxODAsIDgsIDMsIDIyNCwgMjEzLCA4LCAKKyAgICAzLCAyMjQsIDIxMiwgOCwgMywgMjI0LCAyMjIsIDgsIDMsIDIyNCwgMjE2LCA4LCAzLCAyMjQsIDE3MSwgOCwgMywgMjI0LCAKKyAgICAxNjcsIDgsIDMsIDIyNCwgMjEwLCA4LCAzLCAyMjQsIDE3NSwgOCwgMywgMjI0LCAxNzMsIDgsIDMsIDIyNCwgMTc0LCA4LCAKKyAgICAzLCAyMjQsIDE1MSwgOCwgMywgMjI0LCAxNDksIDgsIDMsIDIyNCwgMTYxLCA4LCAzLCAyMjQsIDE1NCwgOCwgMywgMjI0LCAKKyAgICAxNTIsIDgsIDMsIDIyNCwgMTUzLCA4LCAzLCAyMzUsIDIwNCwgOCwgMywgMjM1LCAyMDMsIDgsIDMsIDIzNSwgMjEwLCA4LCAKKyAgICAzLCAyMzUsIDIwNSwgOCwgMywgMjM1LCAyMDcsIDgsIDMsIDIzNSwgMjA2LCA4LCAzLCAyMzUsIDIwOSwgOCwgMywgMjM1LCAKKyAgICAyMDgsIDgsIDMsIDIzNSwgMTk1LCA4LCAzLCAyMzUsIDE5NywgOCwgMywgMjM1LCAxOTYsIDgsIDMsIDIzNSwgMjAwLCA4LCAKKyAgICAzLCAyMzUsIDE5OSwgOCwgMywgMjM1LCAyMDIsIDgsIDMsIDIzNSwgMjAxLCA4LCAzLCAyMzUsIDE5MSwgOCwgMywgMjM1LCAKKyAgICAxOTAsIDgsIDMsIDIzNSwgMTk4LCA4LCAzLCAyMzUsIDE5NCwgOCwgMywgMjM1LCAxOTIsIDgsIDMsIDIzNSwgMTkzLCA4LCAKKyAgICAzLCAyMzUsIDE4NywgOCwgMywgMjM1LCAxODYsIDgsIDMsIDIzNSwgMTg5LCA4LCAzLCAyMzUsIDE4OCwgOCwgMywgMjI5LCAKKyAgICA1NywgOCwgMywgMjI5LCA1NiwgOCwgMywgMjI5LCA2NCwgOCwgMywgMjI5LCA1OCwgOCwgMywgMjI5LCA2MCwgOCwgMywgCisgICAgMjI5LCA1OSwgOCwgMywgMjI5LCA2MywgOCwgMywgMjI5LCA2MSwgOCwgMywgMjI5LCA0NiwgOCwgMywgMjI5LCA0NywgOCwgCisgICAgMywgMjI5LCA1MiwgOCwgMywgMjI5LCA1MSwgOCwgMywgMjI5LCA1NSwgOCwgMywgMjI5LCA1MywgOCwgMywgMjI5LCA0MSwgCisgICAgOCwgMywgMjI5LCA1MCwgOCwgMywgMjI5LCA0NSwgOCwgMywgMjI5LCA0MiwgOCwgMywgMjI5LCA0MywgOCwgMywgMjI5LCAKKyAgICAzNiwgOCwgMywgMjI5LCAzNSwgOCwgMywgMjI5LCA0MCwgOCwgMywgMjI5LCAzOSwgOCwgMywgMjI5LCAzNywgOCwgMywgCisgICAgMjI5LCAzOCwgOCwgMywgMjI4LCAzOCwgOCwgMywgMjI4LCAzNywgOCwgMywgMjI4LCA0OSwgOCwgMywgMjI4LCA0MiwgOCwgCisgICAgMywgMjI4LCA0NiwgOCwgMywgMjI4LCA0NSwgOCwgMywgMjI4LCA0OCwgOCwgMywgMjI4LCA0NywgOCwgMywgMjI4LCAyNSwgCisgICAgOCwgMywgMjI4LCAyNywgOCwgMywgMjI4LCAyNiwgOCwgMywgMjI4LCAzMSwgOCwgMywgMjI4LCAzMCwgOCwgMywgMjI4LCAKKyAgICAzNSwgOCwgMywgMjI4LCAzMiwgOCwgMywgMjI4LCAyMywgOCwgMywgMjI4LCAyMSwgOCwgMywgMjI4LCAyOSwgOCwgMywgCisgICAgMjI4LCAyNCwgOCwgMywgMjEzLCAxNDEsIDgsIDMsIDIxMywgMTQwLCA4LCAzLCAyMTMsIDE0OCwgOCwgMywgMjEzLCAxNDMsIAorICAgIDgsIDMsIDIxMywgMTQ1LCA4LCAzLCAyMTMsIDE0NCwgOCwgMywgMjEzLCAxNDcsIDgsIDMsIDIxMywgMTQ2LCA4LCAzLCAKKyAgICAyMTMsIDEzMCwgOCwgMywgMjEzLCAxMzEsIDgsIDMsIDIxMywgMTM1LCA4LCAzLCAyMTMsIDEzNCwgOCwgMywgMjEzLCAxMzksIAorICAgIDgsIDMsIDIxMywgMTM3LCA4LCAzLCAyMTMsIDExMiwgOCwgMywgMjEzLCAxMTAsIDgsIDMsIDIxMywgMTIyLCA4LCAzLCAKKyAgICAyMTMsIDExNSwgOCwgMywgMjEzLCAxMTMsIDgsIDMsIDIxMywgMTE0LCA4LCAzLCAyMTIsIDI0MiwgOCwgMywgMjEyLCAyNDAsIAorICAgIDgsIDMsIDIxMywgMCwgOCwgMywgMjEyLCAyNDMsIDgsIDMsIDIxMiwgMjUwLCA4LCAzLCAyMTIsIDI0OSwgOCwgMywgMjEyLCAKKyAgICAyNTMsIDgsIDMsIDIxMiwgMjUxLCA4LCAzLCAyMTIsIDE4MywgOCwgMywgMjEyLCAxODIsIDgsIDMsIDIxMiwgMTg2LCA4LCAKKyAgICAzLCAyMTIsIDE4NCwgOCwgMywgMjEyLCAyMTYsIDgsIDMsIDIxMiwgMjEzLCA4LCAzLCAyMTIsIDIzNiwgOCwgMywgMjEyLCAKKyAgICAyMjAsIDgsIDMsIDIxMiwgMTc0LCA4LCAzLCAyMTIsIDE3MCwgOCwgMywgMjEyLCAyMDQsIDgsIDMsIDIxMiwgMTgxLCA4LCAKKyAgICAzLCAyMTIsIDE3NywgOCwgMywgMjEyLCAxNzgsIDgsIDMsIDIxMiwgMTU1LCA4LCAzLCAyMTIsIDE1NCwgOCwgMywgMjEyLCAKKyAgICAxNjEsIDgsIDMsIDIxMiwgMTU4LCA4LCAzLCAyMTIsIDE1NiwgOCwgMywgMjEyLCAxNTcsIDgsIDM0LCAyMjQsIDIxMywgOCwgCisgICAgMzQsIDIzMywgMTExLCA4LCAzNCwgMjM0LCAxODEsIDgsIDM0LCAyMjgsIDQyLCA4LCAzNCwgMjQ5LCAxMzQsIDgsIDM0LCAKKyAgICAyMTksIDE0NSwgOCwgMzQsIDI0MywgMTA4LCA4LCAzNCwgMjQzLCAxNDAsIDgsIDM0LCAyMzEsIDExMiwgOCwgMzQsIDI0MSwgCisgICAgMzMsIDgsIDM0LCAyMzIsIDE4OSwgOCwgMzQsIDI1MiwgMTI5LCA4LCAzNCwgMjMxLCAxMCwgOCwgMzQsIDIxMiwgMjM2LCA4LCAKKyAgICAzNCwgMjI1LCA0NCwgOCwgMzQsIDI0MSwgMjcsIDgsIDM0LCAyMTgsIDEwLCA4LCAzNCwgMjQzLCAyMzAsIDgsIDM0LCAyMTIsIAorICAgIDAsIDgsIDM0LCAyNDksIDEyOCwgOCwgMzQsIDI0OCwgMTY3LCA4LCAzNCwgMjUxLCAxNTIsIDgsIDM0LCAyNDMsIDEwNCwgOCwgCisgICAgMzQsIDIyOCwgMzIsIDgsIDM0LCAyMTYsIDkwLCA4LCAzNCwgMjI3LCA3OCwgOCwgMzQsIDIzNSwgMTkxLCA4LCAzNCwgMjEyLCAKKyAgICAxMiwgOCwgMzQsIDIyNSwgMjMsIDgsIDM0LCAyNDEsIDIxMywgOCwgMzQsIDIxMiwgMjQyLCA4LCAzNCwgMjE0LCA5OSwgOCwgCisgICAgMzQsIDIyMCwgMTQ1LCA4LCAzNCwgMjE0LCAyMjYsIDgsIDM0LCAyMTIsIDEwOSwgOCwgMzQsIDIzNSwgMTg1LCA4LCAzNCwgCisgICAgMjI3LCAyNTMsIDgsIDM0LCAyMzUsIDE4OSwgOCwgMzQsIDI0MiwgMjUwLCA4LCAzNCwgMjM1LCAyMDksIDgsIDM0LCAyMTMsIAorICAgIDIxNywgOCwgMzQsIDI0NiwgMTU0LCA4LCAzNCwgMjIwLCAxNTgsIDgsIDM0LCAyMzMsIDEwNiwgOCwgMzQsIDI0OSwgMTM4LCAKKyAgICA4LCAzNCwgMjQ5LCAxNjksIDgsIDM0LCAyNTAsIDk3LCA4LCAzNCwgMjQxLCAzMCwgOCwgMzQsIDIyMSwgMTcsIDgsIDM0LCAKKyAgICAyMTEsIDI1NSwgOCwgMzQsIDIyMCwgMTk5LCA4LCAzNCwgMjUwLCAxOTAsIDgsIDM0LCAyMTEsIDIzMCwgOCwgMzQsIDIzMCwgCisgICAgNjMsIDgsIDM0LCAyMzUsIDQ0LCAyMzMsIDY2LCAxLCAyNTIsIDIzNCwgMjMzLCA2NiwgMSwgMTk1LCAyMzMsIDY2LCAxLCAKKyAgICAyMjYsIDU5LCAyMzMsIDY2LCAxLCAyNDksIDMwLCAyMzMsIDY2LCAxLCAyMTgsIDY2LCAyMzMsIDY2LCAxLCAyMTcsIDE3NCwgCisgICAgMjMzLCA2NiwgMSwgMjQzLCAyMzAsIDIzMywgNjYsIDEsIDE4MywgMjMzLCA2NiwgMSwgMjM0LCAyNTAsIDIzMywgNjYsIDEsIAorICAgIDIzNiwgMCwgMjMzLCA2NiwgMSwgMjUxLCA4OCwgMjMzLCA2NiwgMSwgMjUwLCAyMTUsIDIzMywgNjYsIDEsIDI0NiwgMTE0LCAKKyAgICAyMzMsIDY2LCAxLCAyMTYsIDE1NCwgMjMzLCA2NiwgMSwgMjE2LCAxNDYsIDIzMywgNjYsIDEsIDE5MSwgMjMzLCA2NiwgMSwgCisgICAgMjA3LCAyMzMsIDY2LCAxLCAyMzMsIDI1NSwgMjMzLCA2NiwgMSwgMjIyLCAyMjcsIDIzMywgNjYsIDEsIDIxMiwgNzUsIAorICAgIDIzMywgNjYsIDEsIDIxMiwgMTA5LCAyMzMsIDY2LCAxLCAyMjksIDIyNiwgMjMzLCA2NiwgMSwgMTYyLCAyMzMsIDY2LCAxLCAKKyAgICAyMTMsIDE1NiwgMjMzLCA2NiwgMSwgMjQyLCAzNywgMjMzLCA2NiwgMSwgMjQ1LCAyOSwgMjMzLCA2NiwgMSwgMjE0LCA1MiwgCisgICAgMjMzLCA2NiwgMSwgMjIxLCA0NywgMjMzLCA2NiwgMSwgMTg5LCAyMzMsIDY2LCAxLCAyNDMsIDg5LCAyMzMsIDY2LCAxLCAKKyAgICA2MywgMjMzLCA2NiwgMSwgMjU1LCAyMCwgMjMzLCA2NiwgMSwgNzcsIDIzMywgNjYsIDEsIDI0NSwgMTQzLCAyMzMsIDY2LCAKKyAgICAxLCA3NSwgMjMzLCA2NiwgMSwgNzgsIDIzMywgNjYsIDEsIDcyLCAyMzMsIDY2LCAxLCAyMTUsIDE4OSwgMjMzLCA2NiwgMSwgCisgICAgMjE1LCAxODQsIDIzMywgNjYsIDEsIDIyNywgMTM2LCAyMzMsIDY2LCAxLCAxNjEsIDIzMCwgMTczLCAyMTcsIDg0LCAyMzMsIAorICAgIDY2LCAxLCAxNjEsIDIzMCwgMTE1LCAyMjUsIDE4NiwgMjMzLCA2NiwgMSwgMTYxLCAyMzAsIDE3MywgMjQ5LCAxMzcsIDIzMywgCisgICAgNjYsIDEsIDE2MSwgMjMwLCAxNzMsIDI1MSwgMjUzLCAyMzMsIDY2LCAxLCAxNjEsIDIzMCwgMTczLCAyMDcsIDIzMywgNjYsIAorICAgIDEsIDE2MSwgMjMwLCAxNzMsIDIzNSwgMjMxLCAyMzMsIDY2LCAyMjUsIDYzLCAyNTAsIDIzLCAyMzMsIDY2LCAyMjUsIDYzLCAKKyAgICAyNDQsIDY0LCAyMTksIDgzLCA0MCwgMywgMjQ2LCAzMCwgNDAsIDMsIDI0NiwgMjcsIDQwLCAzLCAyNDIsIDY3LCA0MCwgMywgCisgICAgMjE0LCA0LCA0MCwgMywgMjE0LCAzLCA0MCwgMywgMjI2LCAxMjIsIDQwLCAzLCAyNTIsIDYxLCA0MCwgMywgMjUyLCAxMTIsIAorICAgIDQwLCAzLCAyMzEsIDI0OSwgNDAsIDMsIDIzNCwgMTExLCA0MCwgMywgMjMxLCAxNDMsIDQwLCAzLCAyNDMsIDE3MSwgNDAsIAorICAgIDMsIDI0NCwgMjM2LCA0MCwgMywgMjE0LCAyMzIsIDQwLCAzLCAyMTcsIDIzMiwgNDAsIDMsIDIxNywgMTYwLCA0MCwgMywgCisgICAgMjQ4LCA4OSwgNDAsIDMsIDI0OCwgODYsIDQwLCAzLCAyMzMsIDE3MiwgNDAsIDMsIDIyNCwgMzUsIDQwLCAzLCAyNDgsIAorICAgIDE0OSwgNDAsIDMsIDIzMCwgMzAsIDQwLCAzLCAyMjIsIDExMiwgNDAsIDMsIDIyMSwgNiwgNDAsIDMsIDIxMiwgODUsIDQwLCAKKyAgICAzLCAyMTIsIDY2LCA0MCwgMywgMjUwLCAyMzksIDQwLCAzLCAyMzUsIDI0MCwgNDAsIDMsIDIyOSwgNzEsIDQwLCAzLCAyMTMsIAorICAgIDM2LCA0MCwgMywgMjM1LCA0MywgNDAsIDMsIDIyOSwgMjAxLCA0MCwgMywgMjQzLCAxNTEsIDQwLCAzLCAyMzEsIDIxNSwgCisgICAgNDAsIDMsIDIyOSwgMjUxLCA0MCwgMywgMjI4LCA1NSwgNDAsIDMsIDc1LCA0MCwgMywgMjM2LCAxMTIsIDQwLCAzLCAyNDIsIAorICAgIDI4LCA0MCwgMywgMjQyLCA5LCA0MCwgMywgMjEzLCAyMzgsIDQwLCAzLCAyMTMsIDIyOSwgNDAsIDMsIDIyNiwgMjAsIDQwLCAKKyAgICAzLCAyNTIsIDU5LCA0MCwgMywgMjUyLCA1NCwgNDAsIDMsIDIzMSwgMjQyLCA0MCwgMywgMjM0LCAxMDgsIDQwLCAzLCAyMzEsIAorICAgIDE0MCwgNDAsIDMsIDI0MywgMTY3LCA0MCwgMywgMjQ0LCAyMTAsIDQwLCAzLCAyMTQsIDE1OSwgNDAsIDMsIDIxNywgODQsIAorICAgIDQwLCAzLCAyMTcsIDE0MSwgNDAsIDMsIDI0OCwgODEsIDQwLCAzLCAyNDgsIDg1LCA0MCwgMywgMjMzLCAxMTEsIDQwLCAzLCAKKyAgICAyMjMsIDIyMiwgNDAsIDMsIDI0OCwgNzYsIDQwLCAzLCAyMzAsIDI0LCA0MCwgMywgMjIwLCAxMzYsIDQwLCAzLCAyMjAsIAorICAgIDIzMywgNDAsIDMsIDIxMiwgMzcsIDQwLCAzLCAyMTIsIDYyLCA0MCwgMywgMjUwLCAxMTEsIDQwLCAzLCAyMzUsIDIyNSwgCisgICAgNDAsIDMsIDIyOSwgNjQsIDQwLCAzLCAyMTMsIDAsIDQwLCAzLCAyMzQsIDIxMiwgNDAsIDMsIDIyOSwgMTkzLCA0MCwgMywgCisgICAgMjQzLCA1NCwgNDAsIDMsIDIzMSwgMTEyLCA0MCwgMywgMjI5LCAxMjgsIDQwLCAzLCAyMjgsIDQ5LCA0MCwgMywgNjMsIDQwLCAKKyAgICAzLCAyNTQsIDE1OSwgNDAsIDMsIDIyOSwgMjIyLCA0MCwgMywgMTYyLCA0MCwgMywgMjQyLCAxMjEsIDQwLCAzLCAyMTQsIAorICAgIDUyLCA0MCwgMywgMjE0LCA0MiwgNDAsIDMsIDE5NSwgNDAsIDMsIDI1MiwgNjUsIDQwLCAzLCAyNTIsIDIzNCwgNDAsIDMsIAorICAgIDIzMiwgMSwgNDAsIDMsIDIzNCwgMTE1LCA0MCwgMywgMjM0LCAxMTQsIDQwLCAzLCAyMzEsIDE0NywgNDAsIDMsIDI0MywgCisgICAgMTc1LCA0MCwgMywgMjQ1LCAyOSwgNDAsIDMsIDIxNSwgOCwgNDAsIDMsIDIxOCwgNjYsIDQwLCAzLCAyMTcsIDE3NCwgNDAsIAorICAgIDMsIDI0OCwgOTcsIDQwLCAzLCAyNDgsIDg4LCA0MCwgMywgMjMzLCAyNTUsIDQwLCAzLCAyMDgsIDQwLCAzLCAyNDksIDMwLCAKKyAgICA0MCwgMywgMjMwLCAzOSwgNDAsIDMsIDIyMiwgMjI3LCA0MCwgMywgMjIxLCA0NywgNDAsIDMsIDIxMiwgMTA5LCA0MCwgMywgCisgICAgMjEyLCA3NSwgNDAsIDMsIDI1MSwgODgsIDQwLCAzLCAyMzYsIDAsIDQwLCAzLCAyMjksIDgwLCA0MCwgMywgMTg5LCA0MCwgCisgICAgMywgMTgzLCA0MCwgMywgMjM1LCA5NiwgNDAsIDMsIDIyOSwgMjA2LCA0MCwgMywgMjQzLCAyMzAsIDQwLCAzLCAxOTEsIDQwLCAKKyAgICAzLCAyMDcsIDQwLCAzLCAyMjgsIDY0LCA0MCwgMywgMjI3LCA4NiwgNDAsIDMsIDIyNywgODIsIDQwLCAzLCAyNDEsIDE1OCwgCisgICAgNDAsIDMsIDIxMywgMjA1LCA0MCwgMywgMjEzLCAyMDEsIDQwLCAzLCAyMjUsIDE2NSwgNDAsIDMsIDI1MiwgNTcsIDQwLCAzLCAKKyAgICAyNTEsIDI0MywgNDAsIDMsIDIzMSwgMjM3LCA0MCwgMywgMjM0LCAxMDYsIDQwLCAzLCAyMzEsIDEzNiwgNDAsIDMsIDI0MywgCisgICAgMTYzLCA0MCwgMywgMjQ0LCAxMjMsIDQwLCAzLCAyMTQsIDExMiwgNDAsIDMsIDIxNiwgMjQzLCA0MCwgMywgMjE3LCAxMTksIAorICAgIDQwLCAzLCAyNDgsIDc5LCA0MCwgMywgMjQ4LCA4MywgNDAsIDMsIDIzMiwgMjU0LCA0MCwgMywgMjIzLCAxMzMsIDQwLCAzLCAKKyAgICAyNDcsIDIwMCwgNDAsIDMsIDIzMCwgMTEsIDQwLCAzLCAyMTksIDI0NSwgNDAsIDMsIDIyMCwgMjAyLCA0MCwgMywgMjEyLCAKKyAgICAxNCwgNDAsIDMsIDIxMiwgNTksIDQwLCAzLCAyNDksIDIzNiwgNDAsIDMsIDIzNSwgMTc2LCA0MCwgMywgMjI5LCA1NCwgNDAsIAorICAgIDMsIDIxMiwgMjIxLCA0MCwgMywgMjM0LCAxMzAsIDQwLCAzLCAyMjksIDE5MSwgNDAsIDMsIDI0MywgNCwgNDAsIDMsIDIzMSwgCisgICAgMTYsIDQwLCAzLCAyMjgsIDIxOCwgNDAsIDMsIDIyOCwgMzMsIDQwLCAzLCA3MiwgNDAsIDMsIDIxNSwgMTY2LCA0MCwgMywgCisgICAgMjQxLCA3NCwgNDAsIDMsIDI0MSwgNjQsIDQwLCAzLCAyMTMsIDE4NiwgNDAsIDMsIDIxMywgMTgwLCA0MCwgMywgMjI1LCAKKyAgICA3MSwgNDAsIDMsIDI1MiwgNTYsIDQwLCAzLCAyNTEsIDE3OSwgNDAsIDMsIDIzMSwgMjM2LCA0MCwgMywgMjM0LCAxMDQsIAorICAgIDQwLCAzLCAyMzEsIDEzNSwgNDAsIDMsIDI0MywgMTYyLCA0MCwgMywgMjQ0LCA2OSwgNDAsIDMsIDIxNCwgMTAzLCA0MCwgMywgCisgICAgMjE2LCA5MCwgNDAsIDMsIDIxNywgMTAzLCA0MCwgMywgMjQ4LCA3NywgNDAsIDMsIDI0OCwgODIsIDQwLCAzLCAyMzIsIAorICAgIDIzMCwgNDAsIDMsIDIyMywgNzcsIDQwLCAzLCAyNDYsIDE1NCwgNDAsIDMsIDIzMCwgNiwgNDAsIDMsIDIxOSwgNDEsIDQwLCAKKyAgICAzLCAyMjAsIDE3MCwgNDAsIDMsIDIxMiwgOCwgNDAsIDMsIDIxMiwgNTUsIDQwLCAzLCAyNDksIDE3NiwgNDAsIDMsIDIzNSwgCisgICAgMTY4LCA0MCwgMywgMjI5LCA1MCwgNDAsIDMsIDIxMiwgMjA0LCA0MCwgMywgMjM0LCA4MSwgNDAsIDMsIDIyOSwgMTkwLCAKKyAgICA0MCwgMywgMjQyLCAyMTMsIDQwLCAzLCAyMzAsIDI0MiwgNDAsIDMsIDIyOCwgMTM1LCA0MCwgMywgMjI4LCAyOSwgNDAsIDMsIAorICAgIDc4LCA0MCwgMywgMjI3LCA5OSwgNDAsIDMsIDIyOSwgMTUxLCA0MCwgMywgMjQxLCAxNzMsIDQwLCAzLCAyNDEsIDE2MSwgCisgICAgNDAsIDMsIDIxMywgMjE3LCA0MCwgMywgMjEzLCAyMDYsIDQwLCAzLCAyMjUsIDE4NiwgNDAsIDMsIDI1MiwgNTgsIDQwLCAzLCAKKyAgICAyNTEsIDI1MywgNDAsIDMsIDIzMSwgMjM4LCA0MCwgMywgMjM0LCAxMDcsIDQwLCAzLCAyMzEsIDEzOCwgNDAsIDMsIDI0MywgCisgICAgMTY1LCA0MCwgMywgMjQzLCAxNjQsIDQwLCAzLCAyNDQsIDEzMiwgNDAsIDMsIDIxNCwgMTIzLCA0MCwgMywgMTA5LCA0MCwgCisgICAgMywgMjE3LCAxMjIsIDQwLCAzLCAyNDgsIDgwLCA0MCwgMywgMjQ4LCA4NCwgNDAsIDMsIDIzMywgMjYsIDQwLCAzLCAyMjMsIAorICAgIDE0NiwgNDAsIDMsIDI0NywgMjIwLCA0MCwgMywgMjMwLCAxNSwgNDAsIDMsIDIyMCwgNSwgNDAsIDMsIDIyMCwgMjA4LCA0MCwgCisgICAgMywgMjEyLCAxNiwgNDAsIDMsIDIxMiwgNjAsIDQwLCAzLCAyNTAsIDQyLCA0MCwgMywgMjM1LCAxODUsIDQwLCAzLCAyMjksIAorICAgIDU1LCA0MCwgMywgMjEyLCAyMzYsIDQwLCAzLCAyMzQsIDE0OCwgNDAsIDMsIDIyOSwgMTkyLCA0MCwgMywgMjQzLCAxNCwgCisgICAgNDAsIDMsIDIzMSwgNDUsIDQwLCAzLCAyMjgsIDIyOCwgNDAsIDMsIDIyOCwgMzUsIDQwLCAzLCA3NywgNDAsIDMsIDI0NSwgCisgICAgMjI5LCA0MCwgMywgMjI5LCAyMTEsIDQwLCAzLCAyNDIsIDg1LCA0MCwgMywgMjQyLCA1NiwgNDAsIDMsIDIxNCwgOSwgNDAsIAorICAgIDMsIDIxNCwgMCwgNDAsIDMsIDIyNiwgMTMyLCA0MCwgMywgMjUyLCA2MiwgNDAsIDMsIDI1MiwgMTIxLCA0MCwgMywgMjMxLCAKKyAgICAyNTAsIDQwLCAzLCAyMzQsIDExMiwgNDAsIDMsIDIzNCwgMTEwLCA0MCwgMywgMjMxLCAxNDQsIDQwLCAzLCAyNDMsIDE3MiwgCisgICAgNDAsIDMsIDI0MywgMTcwLCA0MCwgMywgMjQ0LCAyNDMsIDQwLCAzLCAyMTQsIDIzNywgNDAsIDMsIDIxNywgMjQyLCA0MCwgCisgICAgMywgMjE3LCAxNjEsIDQwLCAzLCAyNDgsIDkwLCA0MCwgMywgMjQ4LCA4NywgNDAsIDMsIDIzMywgMTgwLCA0MCwgMywgMjI0LCAKKyAgICA1NSwgNDAsIDMsIDI0OCwgMTYyLCA0MCwgMywgMjMwLCAzMSwgNDAsIDMsIDIyMiwgMTIzLCA0MCwgMywgMjIxLCA4LCA0MCwgCisgICAgMywgMjEyLCA4NywgNDAsIDMsIDIxMiwgNjcsIDQwLCAzLCAyNTAsIDI0NywgNDAsIDMsIDIzNSwgMjQyLCA0MCwgMywgMjI5LCAKKyAgICA3MywgNDAsIDMsIDIxMywgMzksIDQwLCAzLCAyMzUsIDQ0LCA0MCwgMywgMjI5LCAyMDIsIDQwLCAzLCAyMjksIDE5OCwgNDAsIAorICAgIDMsIDI0MywgMTU4LCA0MCwgMywgMjQzLCAxNDcsIDQwLCAzLCAyMzEsIDIyNiwgNDAsIDMsIDIyOSwgMjU0LCA0MCwgMywgCisgICAgMjI4LCA1NiwgNDAsIDMsIDIyOSwgMjI4LCA0MCwgMywgMjMzLCAxNDQsIDQwLCAyNTAsIDIzLCA0MCwgMjQ0LCA2NCwgMjE5LCAKKyAgICA4MywgNDAsIDIyNCwgMTkzLCA3OSwgNDAsIDMsIDIzMCwgMTQsIDI0NSwgMjksIDQwLCAzLCAyMzAsIDE0LCAxODMsIDQwLCAKKyAgICAzLCAyMzAsIDE0LCAyMTksIDI0NSwgNDAsIDE2LCAyNDQsIDIzMywgNDAsIDE2LCAyMzUsIDQyLCA0MCwgMTYsIDIxNywgNDgsIAorICAgIDQwLCAxNiwgMjI5LCAxMDMsIDQwLCAxNiwgMjUyLCAxOTMsIDQwLCAxNiwgMjQ1LCAyOCwgNDAsIDE2LCAyMTgsIDYzLCA0MCwgCisgICAgMTYsIDI0OCwgMjQzLCA0MCwgMTYsIDI0NywgMTk5LCA0MCwgMTYsIDIzNCwgNzAsIDQwLCAxNiwgMjE2LCAyNDcsIDQwLCAKKyAgICAxNiwgMjQ3LCAyMTksIDQwLCAxNiwgMjM1LCAxNzcsIDQwLCAyMSwgMjEyLCA3OSwgNDAsIDIxLCAxMTgsIDQwLCAyMSwgCisgICAgMTEyLCA0MCwgMjEsIDE3MCwgNDAsIDIxLCAxNjcsIDQwLCAyMSwgMTg1LCA0MCwgMjEsIDE5MiwgNDAsIDIxLCAyMDAsIDQwLCAKKyAgICAyMSwgMTk4LCA0MCwgMjEsIDIwMywgNDAsIDMsIDIzMCwgMTQsIDE5MSwgNDAsIDMsIDIzMCwgMTQsIDI0NywgMjIwLCAzMywgCisgICAgNiwgMSwgMjEyLCA4MywgMzMsIDQsIDEsIDIxMiwgODMsIDMzLCA2LCAxLCAyNDYsIDExMCwgMzMsIDQsIDEsIDI0NiwgMTEwLCAKKyAgICAzMywgNiwgMSwgMjIzLCAyMzYsIDI0NiwgMTEyLCAzMywgNCwgMSwgMjIzLCAyMzYsIDI0NiwgMTEyLCAzMywgNiwgMSwgCisgICAgMjM2LCA0NCwgMzMsIDQsIDEsIDIzNiwgNDQsIDMzLCA2LCAxLCAyNDcsIDIzNCwgMzMsIDQsIDEsIDI0NywgMjM0LCAzMywgCisgICAgNiwgMSwgMjMxLCAyNCwgMjE1LCAxODEsIDMzLCA0LCAxLCAyMzEsIDI0LCAyMTUsIDE4MSwgMzMsIDYsIDEsIDI1MSwgMTg5LCAKKyAgICAyMjcsIDEwNCwgMzMsIDQsIDEsIDI1MSwgMTg5LCAyMjcsIDEwNCwgMzMsIDYsIDEsIDIyOSwgMjM2LCAyMTMsIDIzLCAzMywgCisgICAgNCwgMSwgMjI5LCAyMzYsIDIxMywgMjMsIDMzLCA2LCAxLCAyMTMsIDIwLCAyLCAyNTIsIDIyOSwgMjEzLCAyMywgMzMsIDQsIAorICAgIDEsIDIxMywgMjAsIDIsIDI1MiwgMjI5LCAyMTMsIDIzLCAzMywgNiwgMSwgMjM2LCA0MiwgMjEzLCA1MSwgMzMsIDQsIDEsIAorICAgIDIzNiwgNDIsIDIxMywgNTEsIDMzLCA2LCAxLCAyMjMsIDIzNiwgMjEyLCAyMDQsIDMzLCA0LCAxLCAyMjMsIDIzNiwgMjEyLCAKKyAgICAyMDQsIDMzLCA2LCAxLCAyMzYsIDQyLCA2MywgMzMsIDQsIDEsIDIzNiwgNDIsIDYzLCAzMywgNiwgMSwgMjUwLCA2MCwgCisgICAgMjMzLCA2MiwgMjEyLCAxNzUsIDMzLCA0LCAxLCAyNTAsIDYwLCAyMzMsIDYyLCAyMTIsIDE3NSwgMzMsIDYsIDEsIDI1MiwgCisgICAgNiwgMjEyLCAxNzUsIDMzLCA0LCAxLCAyNTIsIDYsIDIxMiwgMTc1LCAzMywgNiwgMSwgMjM2LCA0MiwgMjUwLCA2MCwgMjMzLCAKKyAgICA2MiwgMjEyLCAxNzUsIDMzLCA0LCAxLCAyMzYsIDQyLCAyNTAsIDYwLCAyMzMsIDYyLCAyMTIsIDE3NSwgMzMsIDYsIDEsIAorICAgIDIxMiwgMjM4LCAzMywgNCwgMSwgMjEyLCAyMzgsIDMzLCA2LCAxLCAyMjMsIDIzNiwgMjE2LCAxNDksIDMzLCA0LCAxLCAKKyAgICAyMjMsIDIzNiwgMjE2LCAxNDksIDMzLCA2LCAxLCAyMTksIDI1NSwgMjQ4LCAxNjIsIDMzLCA0LCAxLCAyMTksIDI1NSwgCisgICAgMjQ4LCAxNjIsIDMzLCA2LCAxLCAyMTksIDI1NSwgMjQ1LCAyNTIsIDMzLCA0LCAxLCAyMTksIDI1NSwgMjQ1LCAyNTIsIDMzLCAKKyAgICA2LCAxLCAyMTksIDI1NSwgMjQ1LCAyMzgsIDMzLCA0LCAxLCAyMTksIDI1NSwgMjQ1LCAyMzgsIDMzLCA2LCAxLCAyMzEsIAorICAgIDI4LCA3OCwgMzMsIDQsIDEsIDIzMSwgMjgsIDc4LCAzMywgNiwgMSwgMjUyLCAzMiwgNzgsIDMzLCA0LCAxLCAyNTIsIDMyLCAKKyAgICA3OCwgMzMsIDYsIDEsIDUyLCAyMzEsIDI4LCA3OCwgMzMsIDQsIDEsIDUyLCAyMzEsIDI4LCA3OCwgMzMsIDEsIDIzMCwgCisgICAgMjI2LCA3OCwgMzgsIDMzLCAyMTQsIDg3LCAzOCwgMzMsIDIxNywgMjE0LCAyMzEsIDc0LCA1MywgMzgsIDMzLCAyNDEsIDYzLCAKKyAgICAyMzEsIDc0LCA1MywgMzgsIDMzLCAyMTcsIDExNCwgMjMxLCA3NCwgNTMsIDIyMCwgNDAsIDI1NCwgMywgMzgsIDMzLCAyMzUsIAorICAgIDU0LCAzOCwgMzMsIDIyNiwgMTM3LCAzMywgMjM1LCA1NCwgMzMsIDIyNiwgMTM3LCAzMywgNiwgMSwgMjQ2LCAxMjIsIDMzLCAKKyAgICA0LCAxLCAyNDYsIDEyMiwgMzMsIDYsIDEsIDI0NiwgMTAzLCAzMywgNCwgMSwgMjQ2LCAxMDMsIDMzLCA2LCAxLCAyMTIsIAorICAgIDQ1LCAzMywgNCwgMSwgMjEyLCA0NSwgMzMsIDYsIDEsIDI1MSwgNywgMzMsIDQsIDEsIDI1MSwgNywgMzMsIDYsIDEsIDI0NiwgCisgICAgMTAyLCAzMywgNCwgMSwgMjQ2LCAxMDIsIDMzLCA2LCAxLCAyMTcsIDI0MywgMiwgMjMxLCAxMDcsIDEwMiwgMzMsIDQsIDEsIAorICAgIDIxNywgMjQzLCAyLCAyMzEsIDEwNywgMTAyLCAzMywgNiwgMSwgMjE2LCA1MCwgMzMsIDQsIDEsIDIxNiwgNTAsIDMzLCA2LCAKKyAgICAxLCAyMTYsIDEzMiwgMzMsIDQsIDEsIDIxNiwgMTMyLCAzMywgNiwgMSwgMjE2LCAxMzYsIDMzLCA0LCAxLCAyMTYsIDEzNiwgCisgICAgMzMsIDYsIDEsIDIxNywgMjQ4LCAzMywgNCwgMSwgMjE3LCAyNDgsIDMzLCA2LCAxLCAyNDEsIDUxLCAzMywgNCwgMSwgMjQxLCAKKyAgICA1MSwgMzMsIDYsIDEsIDIyMCwgMTUxLCAzMywgNCwgMSwgMjIwLCAxNTEsIDIwLCAxLCA2MywgMjAsIDEsIDE4MywgMjAsIDEsIAorICAgIDcyLCAyMCwgMSwgMjM0LCA4MSwgMjAsIDEsIDI0NiwgMzAsIDIwLCAxLCAyMjQsIDM1LCAyMCwgMSwgMjE4LCA0OSwgMjAsIAorICAgIDEsIDc4LCAyMCwgMSwgMjI4LCA0OSwgMjAsIDEsIDc1LCAyMCwgMSwgMjMzLCAyNTUsIDIwLCAxLCAxOTUsIDIwLCAxLCAKKyAgICAyMjMsIDE3MCwgMjAsIDEsIDIyMywgMjE2LCAyMCwgMSwgMjMzLCAxNzEsIDIwLCAxLCAyMzEsIDIxNCwgMjAsIDEsIDIxOCwgCisgICAgNjMsIDIwLCAxLCAyMzAsIDM3LCAyMCwgMSwgMjI5LCA3OCwgMjAsIDEsIDE4NCwgMjAsIDEsIDIxOCwgMjE5LCAyMCwgMSwgCisgICAgMjMwLCAyNDIsIDIwLCAxLCAyMjAsIDIyOCwgMjAsIDEsIDIyMCwgMTM2LCAyMCwgMSwgMjIwLCAyMzgsIDIwLCAxLCAyMjEsIAorICAgIDY3LCAyMCwgMSwgMjM0LCAxOSwgMjAsIDEsIDIzNSwgMTgsIDIwLCAxLCAyMjgsIDEwNywgMjAsIDEsIDIyOCwgMTM1LCAyMCwgCisgICAgMSwgMjI5LCA0OSwgMjAsIDEsIDIxMiwgMjE4LCAyMCwgMSwgMjIwLCAxNzAsIDIwLCAxLCAyMTIsIDE3OSwgMjAsIDEsIAorICAgIDE4OSwgMjAsIDEsIDIyOCwgMTYzLCAyMCwgMSwgMjM1LCA0LCAyMCwgMSwgMjI2LCA2MywgMjAsIDEsIDIyOSwgNzEsIDIwLCAKKyAgICAxLCAyMjgsIDE0NCwgMjAsIDEsIDIyNSwgNjYsIDIwLCAxLCAyMTMsIDE4MywgMjAsIDEsIDIyNiwgMTIyLCAyMCwgMSwgCisgICAgMjQ0LCAyMzYsIDIwLCAxLCAyMjMsIDc3LCAyMCwgMSwgMjMyLCAyMzAsIDIwLCAxLCAyMzEsIDExMiwgMjAsIDEsIDIyOSwgCisgICAgMTI4LCAyMCwgMSwgMjIzLCAyMzgsIDIwLCAxLCAyMjQsIDk2LCAyMCwgMSwgMjM1LCAyNywgMjAsIDEsIDIyOSwgMTU4LCAKKyAgICAyMCwgMSwgMjI5LCAyMDYsIDIwLCAxLCAyMjksIDIyNiwgMjAsIDEsIDIyMCwgMjA4LCAyMCwgMSwgMjI1LCA2OSwgMjAsIDEsIAorICAgIDI0NCwgNjksIDIwLCAxLCAyNDQsIDEyNiwgMjAsIDEsIDIxNCwgNTIsIDIwLCAxLCAyMDcsIDIwLCAxLCAyMzMsIDExMSwgCisgICAgMjAsIDEsIDIyNiwgMjAsIDIwLCAxLCAyMzIsIDI0OCwgMjAsIDEsIDIzNCwgMTQ4LCAyMCwgMSwgMjMxLCAyNDcsIDIwLCAxLCAKKyAgICAyMjQsIDExLCAyMCwgMSwgMjMxLCAxOTIsIDIwLCAxLCAxOTEsIDIwLCAxLCAyMTcsIDg0LCAyMCwgMSwgMjM0LCAyMTIsIAorICAgIDIwLCAxLCAyMzEsIDQ1LCAyMCwgMSwgMjMxLCAyNTUsIDIwLCAxLCAyMTcsIDE5NiwgMjAsIDEsIDIzNCwgMTE1LCAyMCwgMSwgCisgICAgMjE3LCAyMTMsIDIwLCAxLCAyMjgsIDEzNiwgMjAsIDEsIDIyMiwgMTkwLCAyMCwgMSwgMjQ1LCAyNSwgMjAsIDEsIDIzNCwgCisgICAgMTE3LCAyMCwgMSwgMjM0LCAxNDQsIDIwLCAzOCwgMTU2LCAyMzQsIDEyNSwgMjAsIDM4LCAxNTYsIDIxNiwgODIsIDIwLCAKKyAgICAyMjksIDc3LCAyMCwgMjQ0LCA2NCwgMjE5LCA4MywgMjAsIDI1MCwgMzAsIDIwLCAyNTAsIDIzLCAyMCwgMjIxLCA5MywgMjAsIAorICAgIDIyNCwgMTkzLCA3OSwgNTksIDEsIDI1MCwgMTU2LCAxNjEsIDIxMiwgMjQ2LCAyMjUsIDIyOSwgNTksIDEsIDI1MCwgMTU2LCAKKyAgICAxNjEsIDIxMywgNjEsIDIyNSwgMjI5LCA1OSwgMSwgMjUwLCAxNTYsIDE2MSwgMjEyLCAyNDYsIDIyMSwgMjksIDU5LCAxLCAKKyAgICAyNTAsIDE1NiwgMTYxLCAyMTMsIDYxLCAyMjEsIDI5LCA1OSwgMSwgMjUwLCAxNTYsIDE2MSwgMjEyLCAyNDYsIDIyNCwgCisgICAgMjEwLCA1OSwgMSwgMjUwLCAxNTYsIDE2MSwgMjEzLCA2MSwgMjI0LCAyMTAsIDU5LCAxLCAyNTAsIDE1NiwgMTYxLCAyMTIsIAorICAgIDI0NiwgMjIzLCA3NywgNTksIDEsIDI1MCwgMTU2LCAxNjEsIDIxMywgNjEsIDIyMywgNzcsIDU5LCAxLCAyNDUsIDEwOSwgCisgICAgMjQ2LCAxOTMsIDE2MSwgMTM0LCA1OSwgMSwgMTI3LCAyNDYsIDE5MywgMTYxLCAxMzQsIDU5LCAxLCAyMzEsIDEwOCwgMjQ2LCAKKyAgICAxOTMsIDE2MSwgMTM0LCA1OSwgMSwgMTE3LCAyNDYsIDE5MywgMTYxLCAxMzQsIDU5LCAxLCAyNDUsIDEwOCwgMjQ2LCAxOTMsIAorICAgIDE2MSwgMTM0LCA1OSwgMSwgMjQ1LCAxMDksIDI0NiwgMTkzLCAyMzMsIDE2MSwgMTYxLCAxMzQsIDU5LCAxLCAxMjcsIDI0NiwgCisgICAgMTkzLCAyMzMsIDE2MSwgMTYxLCAxMzQsIDU5LCAxLCAyMzEsIDEwOCwgMjQ2LCAxOTMsIDIzMywgMTYxLCAxNjEsIDEzNCwgCisgICAgNTksIDEsIDExNywgMjQ2LCAxOTMsIDIzMywgMTYxLCAxNjEsIDEzNCwgNTksIDEsIDI0NSwgMTA4LCAyNDYsIDE5MywgMjMzLCAKKyAgICAxNjEsIDE2MSwgMTM0LCA1OSwgMSwgMjQ1LCAxMDksIDIzMywgMTYxLCAxNjEsIDEzNCwgNTksIDEsIDEyNywgMjMzLCAxNjEsIAorICAgIDE2MSwgMTM0LCA1OSwgMSwgMjMxLCAxMDgsIDIzMywgMTYxLCAxNjEsIDEzNCwgNTksIDEsIDExNywgMjMzLCAxNjEsIDE2MSwgCisgICAgMTM0LCA1OSwgMSwgMjQ1LCAxMDgsIDIzMywgMTYxLCAxNjEsIDEzNCwgNTksIDEsIDYyLCA2NiwgMTM0LCA1OSwgMSwgNjIsIAorICAgIDIyMCwgNDIsIDU5LCAxLCA2MiwgMjAxLCAxMzQsIDU5LCAxLCAyMzIsIDIzNywgNDcsIDI0OSwgMjIzLCAyNTQsIDE0NSwgCisgICAgNTksIDEsIDIyNCwgODMsIDExNiwgNzEsIDU5LCAxLCAyMjQsIDgzLCAxMjEsIDcxLCA1OSwgMSwgMjI0LCA4MywgMjQ1LCAKKyAgICAxMTksIDc5LCA1OSwgMSwgMjI0LCA4MywgMjM2LCA1MiwgMjQ1LCAxMTksIDc5LCA1OSwgMSwgMTE3LCAyMzYsIDUyLCAyNDUsIAorICAgIDExOSwgNzksIDU5LCAxLCAyMTksIDY1LCAyMiwgMTI3LCAyMTYsIDI1NCwgNTksIDEsIDIxOSwgNjUsIDIyLCAxMTcsIDIxNiwgCisgICAgMjU0LCA3LCA2LCAxLCAyNDYsIDIxLCAyNTQsIDIwNSwgNywgNCwgMSwgMjQ2LCAyMSwgMjU0LCAyMDUsIDcsIDYsIDEsIAorICAgIDI0NiwgMjEsIDI1NCwgMjMxLCA3LCA0LCAxLCAyNDYsIDIxLCAyNTQsIDIzMSwgNywgNiwgMSwgMjQyLCA1NCwgNywgNCwgMSwgCisgICAgMjQyLCA1NCwgNywgNiwgMSwgMjE2LCAxMywgNywgNCwgMSwgMjE2LCAxMywgNywgNiwgMSwgMjE2LCAyMDAsIDcsIDQsIDEsIAorICAgIDIxNiwgMjAwLCA3LCA2LCAxLCAyNDksIDE3NCwgNywgNCwgMSwgMjQ5LCAxNzQsIDcsIDYsIDEsIDI0OSwgMTc1LCAyLCAKKyAgICAyNTAsIDIzLCA3LCA0LCAxLCAyNDksIDE3NSwgMiwgMjUwLCAyMywgNywgMSwgNCwgNiwgMjQ1LCA5NSwgNywgMSwgNCwgNiwgCisgICAgMTk2LCA3LCA2LCAxLCAyNTUsIDEwNCwgNywgNCwgMSwgMjU1LCAxMDQsIDcsIDYsIDEsIDI1NCwgMTExLCA3LCA0LCAxLCAKKyAgICAyNTQsIDExMSwgNywgNiwgMSwgMjUzLCAyMzUsIDcsIDQsIDEsIDI1MywgMjM1LCA3LCA2LCAxLCAyNTMsIDIxOSwgNywgNCwgCisgICAgMSwgMjUzLCAyMTksIDcsIDYsIDEsIDI1MywgMjIwLCAyLCAyMDEsIDEzNCwgNywgNCwgMSwgMjUzLCAyMjAsIDIsIDIwMSwgCisgICAgMTM0LCA3LCA2LCAxLCAyNTMsIDIxMCwgNywgNCwgMSwgMjUzLCAyMTAsIDcsIDYsIDEsIDIyMywgMjM2LCAyNTEsIDEyMiwgCisgICAgMiwgMjQ3LCAxOTUsIDcsIDQsIDEsIDIyMywgMjM2LCAyNTEsIDEyMiwgMiwgMjQ3LCAxOTUsIDcsIDYsIDEsIDIzNSwgMTQyLCAKKyAgICAyLCA5MSwgNywgNCwgMSwgMjM1LCAxNDIsIDIsIDkxLCA3LCA2LCAxLCAyMzUsIDE0MiwgMiwgMjQ4LCA3MiwgOTEsIDcsIDQsIAorICAgIDEsIDIzNSwgMTQyLCAyLCAyNDgsIDcyLCA5MSwgNywgNiwgMSwgMjM1LCAxNDIsIDIsIDIxOSwgNTksIDIyLCAyNDgsIDcyLCAKKyAgICA5MSwgNywgNCwgMSwgMjM1LCAxNDIsIDIsIDIxOSwgNTksIDIyLCAyNDgsIDcyLCA5MSwgNywgNiwgMSwgMjUxLCAxODgsIAorICAgIDE1NSwgNywgNCwgMSwgMjUxLCAxODgsIDE1NSwgNywgNiwgMSwgMjM0LCAxMywgMiwgMTI3LCA5MSwgNywgNCwgMSwgMjM0LCAKKyAgICAxMywgMiwgMTI3LCA5MSwgNywgNiwgMSwgMTQxLCAyLCAxODcsIDIxOSwgNTksIDIyNywgMjYsIDcsIDQsIDEsIDE0MSwgMiwgCisgICAgMTg3LCAyMTksIDU5LCAyMjcsIDI2LCA3LCA2LCAxLCAxNDEsIDIsIDIzMiwgMjUxLCA3LCA0LCAxLCAxNDEsIDIsIDIzMiwgCisgICAgMjUxLCA3LCA2LCAxLCAyMjcsIDg2LCA3LCA0LCAxLCAyMjcsIDg2LCA3LCA2LCAxLCAyMjcsIDEyLCAyLCAyMTksIDU5LCAKKyAgICAyMTcsIDEwNiwgMjQ4LCAxMTEsIDcsIDQsIDEsIDIyNywgMTIsIDIsIDIxOSwgNTksIDIxNywgMTA2LCAyNDgsIDExMSwgNywgCisgICAgNiwgMSwgMjI3LCAxMiwgMiwgMjQ0LCAxNDIsIDcsIDQsIDEsIDIyNywgMTIsIDIsIDI0NCwgMTQyLCA3LCA2LCAxLCAyMjcsIAorICAgIDEyLCAyLCAyMTksIDE4MCwgMjE4LCA0MCwgNywgNCwgMSwgMjI3LCAxMiwgMiwgMjE5LCAxODAsIDIxOCwgNDAsIDcsIDYsIAorICAgIDEsIDIyNSwgMjAsIDIsIDIxOSwgNTksIDIxNywgMTA2LCAyNDgsIDExMSwgNywgNCwgMSwgMjI1LCAyMCwgMiwgMjE5LCA1OSwgCisgICAgMjE3LCAxMDYsIDI0OCwgMTExLCA3LCA2LCAxLCAyMjUsIDIwLCAyLCAyNDgsIDcyLCA5MSwgNywgNCwgMSwgMjI1LCAyMCwgCisgICAgMiwgMjQ4LCA3MiwgOTEsIDcsIDYsIDEsIDIyNCwgMTQ4LCAyMjMsIDEyMiwgNywgNCwgMSwgMjI0LCAxNDgsIDIyMywgMTIyLCAKKyAgICA3LCA2LCAxLCAyMjMsIDY3LCAyMjMsIDEyMiwgNywgNCwgMSwgMjIzLCA2NywgMjIzLCAxMjIsIDcsIDYsIDEsIDIxNSwgODYsIAorICAgIDIsIDI0OCwgNzIsIDkxLCA3LCA0LCAxLCAyMTUsIDg2LCAyLCAyNDgsIDcyLCA5MSwgNywgNiwgMSwgMjE0LCA5MywgNywgNCwgCisgICAgMSwgMjE0LCA5MywgNywgNiwgMSwgMjE0LCAxMzAsIDIxMiwgMTUyLCA3LCA0LCAxLCAyMTQsIDEzMCwgMjEyLCAxNTIsIDcsIAorICAgIDYsIDEsIDIxNywgMTE4LCAyLCA5MSwgNywgNCwgMSwgMjE3LCAxMTgsIDIsIDkxLCA3LCA2LCAxLCAyMTcsIDExOCwgMiwgCisgICAgMjE5LCA1OSwgMjE3LCAxMDYsIDI0OCwgMTExLCA3LCA0LCAxLCAyMTcsIDExOCwgMiwgMjE5LCA1OSwgMjE3LCAxMDYsIAorICAgIDI0OCwgMTExLCA3LCA2LCAxLCAyMTQsIDIyNywgNywgNCwgMSwgMjE0LCAyMjcsIDcsIDYsIDEsIDI0NSwgMTUxLCA3LCA0LCAKKyAgICAxLCAyNDUsIDE1MSwgNywgNiwgMSwgMjM2LCAzMCwgNywgNCwgMSwgMjM2LCAzMCwgNywgNiwgMSwgMjUwLCAxMiwgNywgNCwgCisgICAgMSwgMjUwLCAxMiwgNTksIDEsIDIxNSwgMTEwLCA3LCA0LCAxLCAyNDYsIDE0NSwgNywgNCwgMSwgMjMyLCAyMTYsIDcsIDQsIAorICAgIDEsIDIzMCwgMjIwLCA3LCA0LCAxLCAyMjgsIDEwMCwgNywgNCwgMSwgMjIzLCA2NiwgNywgMSwgNCwgNiwgMjIzLCA2NiwgNywgCisgICAgNCwgMSwgMjE2LCA4MCwgNywgNCwgMSwgMjE1LCAxNzMsIDcsIDYsIDEsIDIzNiwgNzEsIDI0OSwgMTI1LCA3LCA0LCAxLCAKKyAgICAyMzYsIDcxLCAyNDksIDEyNSwgNywgNiwgMSwgMjM2LCA3MSwgMjQ1LCA5NSwgNywgNCwgMSwgMjM2LCA3MSwgMjQ1LCA5NSwgCisgICAgNywgNiwgMSwgMjM2LCA3MSwgMjQ0LCA0MSwgNywgNiwgMSwgMjE2LCA2NiwgMjM2LCA3MSwgMjQ0LCA0MSwgNywgNCwgMSwgCisgICAgMjE2LCA2NiwgMjM2LCA3MSwgMjQ0LCA0MSwgNywgNiwgMSwgMjE2LCA2NiwgMTU1LCA3LCA0LCAxLCAyMTYsIDY2LCAxNTUsIAorICAgIDcsIDYsIDEsIDIzNiwgNzEsIDE1MiwgNywgNCwgMSwgMjM2LCA3MSwgMTUyLCA3LCA2LCAxLCAyMzYsIDcxLCAxOTYsIDcsIAorICAgIDQsIDEsIDIzNiwgNzEsIDE5NiwgNywgNiwgMSwgMjM2LCA3MSwgMjE4LCAxMTMsIDcsIDQsIDEsIDIzNiwgNzEsIDIxOCwgCisgICAgMTEzLCA1OSwgMSwgMTE3LCAyNTAsIDkxLCAyNTUsIDQ2LCA1OSwgMSwgMjUwLCAzMCwgNTksIDEsIDIyMCwgMTk2LCAyNDUsIAorICAgIDE4MiwgNTMsIDcsIDYsIDEsIDIyMiwgMTk0LCA3LCA0LCAxLCAyMjIsIDE5NCwgNywgNiwgMSwgMjE2LCA2NiwgMjQyLCAKKyAgICAxNjIsIDcsIDQsIDEsIDIzNCwgMTMsIDIsIDIyMywgMjQxLCAyNDEsIDE1NywgMjIsIDI1MiwgODgsIDcsIDYsIDEsIDIzMCwgCisgICAgMTY3LCAyLCAyNDgsIDExMSwgNywgNCwgMSwgMjMwLCAxNjcsIDIsIDI0OCwgMTExLCA3LCA2LCAxLCAyNDQsIDQyLCAyLCAKKyAgICAyMjcsIDE0OSwgOTEsIDcsIDQsIDEsIDI0NCwgNDIsIDIsIDIyNywgMTQ5LCA5MSwgNywgNiwgMSwgMjM1LCAxNDIsIDIsIAorICAgIDIyNywgMTQ5LCA5MSwgNywgNCwgMSwgMjM1LCAxNDIsIDIsIDIyNywgMTQ5LCA5MSwgNywgNiwgMSwgMjMwLCAxNjcsIDIsIAorICAgIDIyNywgMTQ5LCA5MSwgNywgNCwgMSwgMjMwLCAxNjcsIDIsIDIyNywgMTQ5LCA5MSwgNywgNiwgMSwgMjI0LCAxNDgsIDIsIAorICAgIDIyNywgMTQ5LCA5MSwgNywgNCwgMSwgMjI0LCAxNDgsIDIsIDIyNywgMTQ5LCA5MSwgNywgNiwgMSwgMjIzLCAyOSwgMiwgCisgICAgMjI3LCAxNDksIDkxLCA3LCA0LCAxLCAyMjMsIDI5LCAyLCAyMjcsIDE0OSwgOTEsIDcsIDEsIDQsIDYsIDIxNiwgNjYsIAorICAgIDE4NCwgNywgMjQ1LCAxODcsIDEsIDIyMywgMjM2LCAyNDUsIDk1LCA3LCAyNDUsIDE4NywgMSwgMjIzLCAyMzYsIDIyNywgCisgICAgMTEsIDcsIDI0NSwgMTg3LCAxLCAyMzYsIDUyLCAxODQsIDcsIDI0NSwgMTg3LCAxLCAyNDEsIDcsIDIzMywgMCwgNywgMjQ1LCAKKyAgICAxODcsIDEsIDI1NCwgNjQsIDE4NCwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCA2MywgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAKKyAgICA3NSwgMjE4LCAxODksIDIzMCwgMTAxLCA1LCAyNDYsIDEyNCwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCA3MiwgMjE4LCAxODksIAorICAgIDIzMCwgMTAxLCAxLCA3NywgMjE4LCAxODksIDIzMCwgMTAxLCAxLCA3OCwgMjE4LCAxODksIDIzMCwgMTAxLCA1LCAyNDIsIAorICAgIDEwMCwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyMzQsIDE0OCwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyMzQsIDIyNCwgCisgICAgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyNDMsIDE0LCAyMTgsIDE4OSwgMjMwLCAxMDEsIDEsIDI0MywgNjQsIDIxOCwgMTg5LCAKKyAgICAyMzAsIDEwMSwgNSwgMjU0LCAxMTMsIDIxOCwgMTg5LCAyMzAsIDEwMSwgMSwgMjUwLCA0MiwgMjE4LCAxODksIDIzMCwgCisgICAgMTAxLCAxLCAyNTAsIDE0NiwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyMzUsIDE4NSwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAKKyAgICAyMzUsIDIyNiwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyMTYsIDEwNSwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyMTYsIAorICAgIDExMSwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyNDgsIDE3NywgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyNDgsIDE4NiwgCisgICAgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAxMDksIDIxOCwgMTg5LCAyMzAsIDEwMSwgMSwgMjE3LCAxMjIsIDIxOCwgMTg5LCAKKyAgICAyMzAsIDEwMSwgMSwgMjQ3LCAyMjAsIDIxOCwgMTg5LCAyMzAsIDEwMSwgMSwgMjQ4LCA4MCwgMjE4LCAxODksIDIzMCwgCisgICAgMTAxLCAxLCAyMjgsIDIyOCwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyMjUsIDE4NiwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAKKyAgICAyMjYsIDMzLCAyMTgsIDE4OSwgMjMwLCAxMDEsIDEsIDI1MSwgMjUzLCAyMTgsIDE4OSwgMjMwLCAxMDEsIDEsIDI1MiwgNTgsIAorICAgIDIxOCwgMTg5LCAyMzAsIDEwMSwgMSwgMjMxLCA0NSwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyMjMsIDE0NiwgMjE4LCAKKyAgICAxODksIDIzMCwgMTAxLCAxLCAyMzMsIDI2LCAyMTgsIDE4OSwgMjMwLCAxMDEsIDEsIDIyMywgMTAxLCAyMTgsIDE4OSwgCisgICAgMjMwLCAxMDEsIDEsIDIyMCwgNSwgMjE4LCAxODksIDIzMCwgMTAxLCAxLCAyNDEsIDE3MywgMjE4LCAxODksIDIzMCwgMTAxLCAKKyAgICAzMCwgNSwgNjMsIDIxOCwgMTg5LCAyMzAsIDEwMSwgMzAsIDUsIDc1LCAyMTgsIDE4OSwgMjMwLCAxMDEsIDMwLCA1LCA3MiwgCisgICAgMjE4LCAxODksIDIzMCwgMTAxLCAzMCwgNSwgNzcsIDIxOCwgMTg5LCAyMzAsIDEwMSwgMzAsIDUsIDIyNywgODYsIDIxOCwgCisgICAgMTg5LCAyMzAsIDEwMSwgMjI1LCAxODIsIDIzMiwgMzYsIDIxOCwgMTg5LCAyMzAsIDEwMSwgMjI1LCAxODIsIDIzMiwgMzUsIAorICAgIDIxOCwgMTg5LCAyMzAsIDEwMSwgMjI1LCAxODIsIDIzMiwgMzQsIDIxOCwgMTg5LCAyMzAsIDEwMSwgMjI1LCAxODIsIDIzMiwgCisgICAgMzMsIDIyOCwgMjEwLCAyMzYsIDk4LCAyNDQsIDkyLCAxMjQsIDIyNCwgMjAxLCAyMjgsIDIxMCwgMjM2LCA5OCwgMjQ0LCAKKyAgICA5MiwgMTI0LCAyNDIsIDEyOSwgMjI4LCAyMTAsIDIzNiwgOTgsIDI0NCwgOTIsIDEzNywgMjI0LCAxOTksIDIyOCwgMjEwLCAKKyAgICAyMzYsIDk4LCAyNDQsIDkyLCAxMjQsIDIyMCwgNjQsIDIyOCwgMjEwLCAyMzYsIDk4LCAyNDQsIDkyLCAxMjQsIDI0NiwgMTAsIAorICAgIDIyOCwgMjEwLCAyMzYsIDk4LCAyNDQsIDkyLCAxMzcsIDIyMCwgNjMsIDIyOCwgMjEwLCAyMzYsIDk4LCAyMjQsIDIwMiwgCisgICAgNzksIDIyOCwgMjEwLCAyMzYsIDk4LCAyMjUsIDIwOCwgNzksIDIyOCwgMjEwLCAyMzYsIDk4LCAyMjMsIDU1LCA3OSwgMjI4LCAKKyAgICAyMTAsIDIzNiwgOTgsIDIyNCwgMjAzLCA3OSwgMjI2LCA1NiwgMSwgMTgzLCAyMjYsIDU2LCAxLCAyMzQsIDI1MCwgMjI2LCAKKyAgICA1NiwgMSwgMjQzLCAyMzAsIDIyNiwgNTYsIDEsIDIyOSwgMjI2LCAyMjYsIDU2LCAxLCAyNTEsIDg4LCAyMjYsIDU2LCAxLCAKKyAgICAyNTAsIDIxNSwgMjI2LCA1NiwgMSwgMjM2LCAwLCAyMjYsIDU2LCAxLCAyMjgsIDY0LCAyMjYsIDU2LCAxLCAyMTgsIDY2LCAKKyAgICAyMjYsIDU2LCAxLCAyMTcsIDE3NCwgMjI2LCA1NiwgMSwgMjQ5LCAzMCwgMjI2LCA1NiwgMSwgMjA3LCAyMjYsIDU2LCAxLCAKKyAgICAxOTUsIDIyNiwgNTYsIDEsIDIyNiwgNTksIDIyNiwgNTYsIDEsIDI1MiwgMjM0LCAyMjYsIDU2LCAxLCAxOTEsIDIyNiwgNTYsIAorICAgIDEsIDIxNiwgMTU0LCAyMjYsIDU2LCAxLCAyMTYsIDE0NiwgMjI2LCA1NiwgMSwgMjQ2LCAxMTQsIDIyNiwgNTYsIDEsIDIxNCwgCisgICAgNTIsIDIyNiwgNTYsIDEsIDIxMiwgNzUsIDIyNiwgNTYsIDEsIDIxMiwgMTA5LCAyMjYsIDU2LCAxLCA0LCA2MywgMjI2LCAKKyAgICA1NiwgMSwgMTg5LCAyMjYsIDU2LCAxLCAyMDgsIDIyNiwgNTYsIDEsIDIzMywgMjU1LCAyMjYsIDU2LCAxLCAyMjEsIDQ3LCAKKyAgICAyMjYsIDU2LCAxLCAyMjIsIDIyNywgMjI2LCA1NiwgMSwgMTYyLCAyMjYsIDU2LCAxLCA2MywgMjI2LCA1NiwgMSwgNzUsIAorICAgIDIyNiwgNTYsIDEsIDcyLCAyMjYsIDU2LCAxLCA3NywgMjI2LCA1NiwgMSwgNzgsIDIyNiwgNTYsIDEsIDIyNSwgMTEsIDIyNiwgCisgICAgNTYsIDEsIDIxMywgMTU2LCAyMjYsIDU2LCAxLCAyNDUsIDI5LCAyMjYsIDU2LCAxLCAyNDMsIDEyNSwgMjI2LCA1NiwgMSwgCisgICAgMjQ2LCAzMCwgMjI2LCA1NiwgMjE5LCAzMiwgMSwgMjE0LCA1MiwgMjI2LCA1NiwgMjE5LCAzMiwgMSwgMTg5LCAyMjYsIDU2LCAKKyAgICAxLCAyMTYsIDEyOCwgMjI2LCA1NiwgMSwgMjE2LCAxMTYsIDIyNiwgNTYsIDEsIDI0OCwgMjA3LCAyMjYsIDU2LCAxLCAyMjksIAorICAgIDYsIDIyNiwgNTYsIDEsIDI1NCwgMTc3LCAxODksIDIyNiwgNTYsIDEsIDIxNCwgMTE5LCAyMjEsIDQ3LCAyMjYsIDU2LCAxLCAKKyAgICAyMTQsIDEyMCwgMTYyLCAyMjYsIDU2LCAxLCAyNTQsIDksIDI0NSwgMjksIDIyNiwgNTYsIDIxOSwgMzIsIDEsIDIwOCwgCisgICAgMjI2LCA1NiwgMjE4LCAyMzksIDEsIDIwOCwgMjI2LCA1NiwgMSwgMjUxLCA1NSwgMjI2LCA1NiwgMjIwLCAxMDAsIDI0MiwgCisgICAgODMsIDc5LCAyMjYsIDU2LCA1MiwgMjQyLCA4MywgNzksIDIyNiwgNTYsIDE1NiwgMjIxLCA0MCwgMjI2LCA1NiwgMTU2LCAKKyAgICA1MiwgMjIxLCA0MCwgMTczLCA1LCAyNTQsIDExMywgMTczLCA1LCAyMTQsIDEzMiwgMTczLCAxLCA2MywgMTczLCAxLCAyNTUsIAorICAgIDEwNCwgMTczLCAxLCA3NSwgMTczLCAxLCAyMzYsIDE0NSwgMTczLCAxLCA3MiwgMTczLCAxLCAyMTUsIDk4LCAxNzMsIDEsIAorICAgIDE2NSwgMTUyLCAxNzMsIDEsIDE2NSwgMjIzLCAxMTYsIDE3MywgMSwgMTY1LCAxNTUsIDE3MywgMSwgMTY1LCAyMzMsIDU1LCAKKyAgICAxNzMsIDEsIDc3LCAxNzMsIDEsIDI0NiwgMzAsIDE3MywgMSwgMjU0LCAyMzYsIDE3MywgMSwgNzgsIDE3MywgMSwgMjI3LCAKKyAgICA4NiwgMTczLCAxLCAyNTMsIDIzNSwgMTczLCAxLCAxODMsIDE3MywgMSwgMjM0LCAyNTAsIDE3MywgMSwgMjQzLCAyMzAsIAorICAgIDE3MywgMSwgMjQzLCA4OSwgMTczLCAxLCAyMjksIDIyNiwgMTczLCAxLCAyNTEsIDg4LCAxNzMsIDEsIDI1MCwgMjE1LCAKKyAgICAxNzMsIDEsIDIzNiwgMCwgMTczLCAxLCAyMzUsIDIzMCwgMTczLCAxLCAyMjgsIDY0LCAxNzMsIDEsIDIxNiwgMTI4LCAxNzMsIAorICAgIDEsIDIxNiwgMTE2LCAxNzMsIDEsIDI0OCwgMjA3LCAxNzMsIDEsIDI0OCwgMTkxLCAxNzMsIDEsIDIyOSwgNiwgMTczLCAxLCAKKyAgICAyMTgsIDY2LCAxNzMsIDEsIDIxNywgMTc0LCAxNzMsIDEsIDI0OSwgMzAsIDE3MywgMSwgMjQ4LCA5NywgMTczLCAxLCAyMDcsIAorICAgIDE3MywgMSwgMTk1LCAxNzMsIDEsIDIyNiwgNTksIDE3MywgMSwgMjUyLCAyMzQsIDE3MywgMSwgMjUyLCA2NSwgMTczLCAxLCAKKyAgICAxOTEsIDE3MywgMSwgMTg5LCAxNzMsIDEsIDIwOCwgMTczLCAxLCAyMzMsIDI1NSwgMTczLCAxLCAyMTUsIDgsIDE3MywgMSwgCisgICAgMjIxLCA0NywgMTczLCAxLCAyMTksIDE3NiwgMTczLCAxLCAyMjIsIDIyNywgMTczLCAxLCAxNjIsIDE3MywgMSwgMjMzLCAKKyAgICA1NCwgMTczLCAxMjAsIDUsIDI0MiwgMTQ2LCAxNzMsIDMwLCA1LCAyNTUsIDEwNCwgMTczLCAzMCwgNSwgNzUsIDE3MywgMzAsIAorICAgIDUsIDIzNiwgMTQ1LCAxNzMsIDMwLCA1LCA3MiwgMTczLCAzMCwgNSwgMjE1LCA5OCwgMTczLCAzMCwgNSwgMTY1LCAxNTIsIAorICAgIDE3MywgMzAsIDUsIDE2NSwgMjIzLCAxMTYsIDE3MywgMzAsIDUsIDE2NSwgMTU1LCAxNzMsIDMwLCA1LCAxNjUsIDIzMywgCisgICAgNTUsIDE3MywgMzAsIDUsIDc3LCAxNzMsIDMwLCA1LCAyNDYsIDMwLCAxNzMsIDMwLCA1LCAyNTQsIDIzNiwgMTczLCAzMCwgCisgICAgNSwgNzgsIDE3MywgMzAsIDUsIDIyNywgODYsIDE3MywgMzAsIDUsIDI1MywgMjM1LCAxNzMsIDUsIDIxNCwgMTM3LCAxNzMsIAorICAgIDI0OCwgMjQ1LCAxNzMsIDUyLCAyNDgsIDI0NSwgMTczLCAyMSwgMjEyLCA3OSwgMTczLCAyMSwgMTE4LCAxNzMsIDIxLCAKKyAgICAxMTIsIDE3MywgMjEsIDE3MCwgMTczLCAyMSwgMTY3LCAxNzMsIDIxLCAxODUsIDE3MywgMjEsIDE5MiwgMTczLCAyMSwgCisgICAgMjAwLCAxNzMsIDIxLCAxOTgsIDE3MywgMjEsIDIwMywgMzgsIDg0LCAyMSwgMjEyLCA3OSwgMzgsIDg0LCAyMSwgMTE4LCAKKyAgICAzOCwgODQsIDIxLCAxMTIsIDM4LCA4NCwgMjEsIDE3MCwgMzgsIDg0LCAyMSwgMTY3LCAzOCwgODQsIDIxLCAxODUsIDM4LCAKKyAgICA4NCwgMjEsIDE5MiwgMzgsIDg0LCAyMSwgMjAwLCAzOCwgODQsIDIxLCAxOTgsIDM4LCA4NCwgMjEsIDIwMywgMzgsIDg0LCAKKyAgICAxLCA2MywgMzgsIDg0LCAxLCA3MiwgMzgsIDg0LCAxLCAxODMsIDM4LCA4NCwgMSwgMjA3LCAzOCwgODQsIDEsIDE5NSwgMzgsIAorICAgIDg0LCAxLCAyMDgsIDM4LCA4NCwgMSwgMjE0LCAxNTksIDM4LCA4NCwgNSwgMjUzLCAyMTgsIDg0LCA1LCAyMTksIDIyNCwgCisgICAgMjUxLCA1NSwgODQsIDUsIDI1MSwgNTYsIDIxNCwgMTM3LCA4NCwgNSwgNTIsIDI1MSwgNTYsIDIxNCwgMTM3LCA4NCwgNSwgCisgICAgMjUxLCA1NiwgMTEyLCA4NCwgNSwgMjUxLCA1NiwgMTcwLCA4NCwgNSwgMjUxLCA1NiwgMjUzLCAyMTgsIDg0LCA1LCAyMjUsIAorICAgIDQ3LCA4NCwgMjQzLCAxOTYsIDI0NCwgMTkyLCA4NCwgMjUxLCAzOCwgODQsIDI0MiwgNzcsIDIzNSwgNTAsIDIzMywgMTEyLCAKKyAgICAyMSwgMjEyLCA3OSwgMjM1LCA1MCwgMjMzLCAxMTIsIDIxLCAxMTgsIDIzNSwgNTAsIDIzMywgMTEyLCAyMSwgMTEyLCAyMzUsIAorICAgIDUwLCAyMzMsIDExMiwgMjEsIDE3MCwgMjM1LCA1MCwgMjMzLCAxMTIsIDIxLCAxNjcsIDIzNSwgNTAsIDIzMywgMTEyLCAyMSwgCisgICAgMTg1LCAyMzUsIDUwLCAyMzMsIDExMiwgMjEsIDE5MiwgMjM1LCA1MCwgMjMzLCAxMTIsIDIxLCAyMDAsIDIzNSwgNTAsIAorICAgIDIzMywgMTEyLCAyMSwgMTk4LCAyMzUsIDUwLCAyMzMsIDExMiwgMjEsIDIwMywgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDE4MywgCisgICAgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDIzNCwgMjUwLCAyMzUsIDUwLCAyMzMsIDExMiwgMSwgMjQzLCAyMzAsIDIzNSwgNTAsIAorICAgIDIzMywgMTEyLCAxLCAyMjksIDIyNiwgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDIyMiwgMjI3LCAyMzUsIDUwLCAyMzMsIDExMiwgCisgICAgMSwgMjIxLCA0NywgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDIxMiwgMTA5LCAyMzUsIDUwLCAyMzMsIDExMiwgMSwgMjI4LCAKKyAgICA2NCwgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDIxOCwgNjYsIDIzNSwgNTAsIDIzMywgMTEyLCAxLCAyNDEsIDc2LCAyMzUsIAorICAgIDUwLCAyMzMsIDExMiwgMSwgMjA3LCAyMzUsIDUwLCAyMzMsIDExMiwgMSwgMTk1LCAyMzUsIDUwLCAyMzMsIDExMiwgMSwgCisgICAgMjI2LCA1OSwgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDE5MSwgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDI0OSwgMzAsIDIzNSwgCisgICAgNTAsIDIzMywgMTEyLCAxLCAyNTIsIDIzNCwgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDIwOCwgMjM1LCA1MCwgMjMzLCAxMTIsIAorICAgIDEsIDE4OSwgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDIzMywgMjU1LCAyMzUsIDUwLCAyMzMsIDExMiwgMSwgMjE0LCA1MiwgCisgICAgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDIxNywgMTc0LCAyMzUsIDUwLCAyMzMsIDExMiwgMSwgMTYyLCAyMzUsIDUwLCAyMzMsIAorICAgIDExMiwgMSwgMjE1LCA4LCAyMzUsIDUwLCAyMzMsIDExMiwgMSwgMjUxLCA4OCwgMjM1LCA1MCwgMjMzLCAxMTIsIDEsIDYzLCAKKyAgICAyMzUsIDUwLCAyMzMsIDExMiwgMSwgMjI3LCAxMzYsIDIzNSwgNTAsIDIzMywgMTEyLCAxLCA3NSwgMjM1LCA1MCwgMjMzLCAKKyAgICAxMTIsIDEsIDIyNywgODYsIDIzNSwgNTAsIDIzMywgMTEyLCAzMCwgMjE1LCAxODksIDIzNSwgNTAsIDIzMywgMTEyLCAzMCwgCisgICAgNzcsIDIzNSwgNTAsIDIzMywgMTEyLCAzMCwgNzIsIDIzNSwgNTAsIDIzMywgMTEyLCAzMCwgMjQ2LCAzMCwgMjM1LCA1MCwgCisgICAgMjMzLCAxMTIsIDMwLCA3OCwgMjM1LCA1MCwgMjMzLCAxMTIsIDE2MSwgMjI1LCAxOTksIDIzNSwgNTAsIDIzMywgMTEyLCAKKyAgICAxNjEsIDI1MSwgNjgsIDIzNSwgNTAsIDIzMywgMTEyLCAxNjEsIDI1MSwgNjksIDIyNSwgMTk5LCAyMzUsIDUwLCAyMzMsIAorICAgIDExMiwgNSwgMjQ5LCAxNDIsIDIzNSwgNTAsIDIzMywgMTEyLCA1LCAyMjAsIDE0NCwgMjI0LCAyMSwgMSwgMTgzLCAyMjQsIAorICAgIDIxLCAxLCAyNDMsIDIzMCwgMjI0LCAyMSwgMSwgMjI5LCAyMjYsIDIyNCwgMjEsIDEsIDIxOCwgNjYsIDIyNCwgMjEsIDEsIAorICAgIDI0OSwgMzAsIDIyNCwgMjEsIDEsIDIwNywgMjI0LCAyMSwgMSwgMTk1LCAyMjQsIDIxLCAxLCAyNTIsIDIzNCwgMjI0LCAyMSwgCisgICAgMSwgMTkxLCAyMjQsIDIxLCAxLCAyNTEsIDg4LCAyMjQsIDIxLCAxLCAyMzYsIDAsIDIyNCwgMjEsIDEsIDIyOCwgNjQsIAorICAgIDIyNCwgMjEsIDEsIDIyMiwgMjI3LCAyMjQsIDIxLCAxLCAyMDgsIDIyNCwgMjEsIDEsIDIzMywgMjU1LCAyMjQsIDIxLCAxLCAKKyAgICAxODksIDIyNCwgMjEsIDEsIDIxNCwgNTIsIDIyNCwgMjEsIDEsIDE2MiwgMjI0LCAyMSwgMSwgMjMyLCAxLCAyMjQsIDIxLCAKKyAgICAxLCAyMjksIDIwNiwgMjI0LCAyMSwgMSwgMjMwLCAzOSwgMjI0LCAyMSwgMSwgMjI4LCAzNiwgMjI0LCAyMSwgMSwgNjMsIAorICAgIDIyNCwgMjEsIDMwLCA1LCA3NSwgMjI0LCAyMSwgMzAsIDUsIDcyLCAyMjQsIDIxLCAzMCwgNSwgNzcsIDIyNCwgMjEsIDMwLCAKKyAgICA1LCAyNTQsIDIzNiwgMjI0LCAyMSwgMzAsIDUsIDc4LCAyMjQsIDIxLCAzMCwgNSwgMjUzLCAyMzUsIDIyNCwgMjEsIDMwLCAKKyAgICA1LCAyNDUsIDE0MywgMjI0LCAyMSwgMzAsIDUsIDI0NiwgNTQsIDIyNCwgMjEsIDEyMCwgNSwgMjI5LCAyMjgsIDIyNCwgMjEsIAorICAgIDEyMCwgNSwgMjA2LCAyMjQsIDIxLCAxMjAsIDUsIDE1MiwgMjI0LCAyMSwgMTIwLCA1LCAyNDIsIDE2MiwgMjI0LCAyMSwgCisgICAgMjE0LCAxMzcsIDIyNCwgMjEsIDIyMiwgMTE1LCA3OSwgMjQsIDk4LCAyMTcsIDY0LCAyNCwgOTgsIDIxNywgNjMsIDI0LCAKKyAgICA5OCwgMjE3LCA2MSwgMjQsIDk4LCAyMTcsIDY2LCAyNCwgOTgsIDIyMywgMjA4LCAyNCwgOTgsIDIyMywgMTkyLCAyNCwgOTgsIAorICAgIDIyMywgMTg3LCAyNCwgOTgsIDIyMywgMTg5LCAyNCwgOTgsIDIyMywgMjA1LCAyNCwgOTgsIDIyMywgMTk4LCAyNCwgOTgsIAorICAgIDIyMywgMTkxLCAyNCwgOTgsIDIyMywgMjEwLCAyNCwgOTgsIDIyMywgMTkzLCAyNCwgOTgsIDIyMywgMjEyLCAyNCwgOTgsIAorICAgIDIyMywgMjA5LCAyNCwgOTgsIDIzMSwgOTYsIDI0LCA5OCwgMjMxLCA4NywgMjQsIDk4LCAyMzEsIDkwLCAyNCwgOTgsIDIyNSwgCisgICAgMjQ4LCAyNCwgOTgsIDIyNiwgMywgMjQsIDk4LCAyMjYsIDQsIDI0LCA5OCwgMjE5LCAxNjAsIDI0LCA5OCwgMjM2LCAxNTgsIAorICAgIDI0LCA5OCwgMjM2LCAxNjUsIDI0LCA5OCwgMjE5LCAxNzEsIDI0LCA5OCwgMjE5LCAxNTgsIDI0LCA5OCwgMjI2LCA0MiwgCisgICAgMjQsIDk4LCAyNDIsIDE2LCAyNCwgOTgsIDIxOSwgMTU1LCAxNDgsIDUsIDIyNiwgMTkyLCAxNDgsIDUsIDI1MCwgMjQ0LCAKKyAgICAxNDgsIDUsIDIzMywgMTg4LCAxNDgsIDUsIDIxMywgMjMxLCAxNDgsIDEsIDYzLCAxNDgsIDEsIDI0MSwgNywgMjM1LCA1MywgCisgICAgMTQ4LCAxLCA3NSwgMTQ4LCAxLCAyMzYsIDE0NSwgMTQ4LCAxLCA3MiwgMTQ4LCAxLCAyMjYsIDI1MiwgMjUwLCAyMjAsIAorICAgIDE0OCwgMSwgMjI5LCAyMjcsIDIzMywgMTUwLCAxNDgsIDEsIDIyOSwgMjI3LCAyMzMsIDE1MSwgMjI0LCA2OSwgMTQ4LCAxLCAKKyAgICA3NywgMTQ4LCAxLCAyNTQsIDIzNiwgMTQ4LCAxLCA3OCwgMTQ4LCAxLCAxODMsIDE0OCwgMSwgMjM1LCAxMzEsIDIyMiwgCisgICAgMTY4LCAxNDgsIDEsIDIzNSwgMTMxLCAyMzAsIDIwNiwgMTQ4LCAxLCAyNDMsIDIzMCwgMTQ4LCAxLCAyNDMsIDIzMSwgMjMwLCAKKyAgICAyMDYsIDE0OCwgMSwgMjI5LCAyMjYsIDE0OCwgMSwgMjUxLCA4OCwgMTQ4LCAxLCAyNTEsIDg5LCAyMzAsIDIwNiwgMTQ4LCAKKyAgICAxLCAyMzYsIDAsIDE0OCwgMSwgMjI4LCA2NSwgMjMwLCAyMDYsIDE0OCwgMSwgMjM2LCAxLCAyMzIsIDg1LCAxNDgsIDEsIAorICAgIDIyOCwgNjQsIDE0OCwgMSwgMjE2LCAxMjgsIDE0OCwgMSwgMjE2LCAxMjksIDIzMiwgODUsIDE0OCwgMSwgMjQ4LCAyMDcsIAorICAgIDE0OCwgMSwgMjQ4LCAyMDgsIDIzMiwgODUsIDE0OCwgMSwgMjMwLCAxMTUsIDIzMCwgMjA2LCAxNDgsIDEsIDIxOCwgNjYsIAorICAgIDE0OCwgMSwgMjE4LCA2NywgMjMwLCAyMDYsIDE0OCwgMSwgMjQ5LCAzMCwgMTQ4LCAxLCAyNDksIDMxLCAyMzIsIDg1LCAKKyAgICAxNDgsIDEsIDIwNywgMTQ4LCAxLCAxOTUsIDE0OCwgMSwgMjI2LCAyNTIsIDIzMCwgMjA2LCAxNDgsIDEsIDI1MiwgMjM0LCAKKyAgICAxNDgsIDEsIDI1MiwgMjM1LCAyMzAsIDIwNiwgMTQ4LCAxLCAxOTEsIDE0OCwgMSwgMTg5LCAxNDgsIDEsIDIwOCwgMTQ4LCAKKyAgICAxLCAyMjQsIDExMiwgMjU0LCAyNDMsIDE0OCwgMSwgMjMzLCAyNTUsIDE0OCwgMSwgMjE0LCA1MiwgMTQ4LCAxLCAyMjIsIAorICAgIDIyOCwgMjMwLCAyMDYsIDE0OCwgMSwgMjIyLCAyMjgsIDIzMiwgODUsIDE0OCwgMSwgMjIyLCAyMjcsIDE0OCwgMSwgMTYyLCAKKyAgICAxNDgsIDUsIDI1MCwgMjQ1LCAyMTcsIDIxNiwgMTQ4LCAzMCwgNSwgMjE4LCAxMSwgMTQ4LCAzMCwgNSwgMjE3LCAzLCAxNDgsIAorICAgIDMwLCA1LCAyMTMsIDE4MSwgMTQ4LCAzMCwgNSwgMjEzLCAxODIsIDIzMSwgMjAzLCAxNDgsIDMwLCA1LCAyMTksIDYsIDE0OCwgCisgICAgMzAsIDUsIDIxOSwgNywgMjMxLCAxOTEsIDE0OCwgMzAsIDUsIDIxOCwgMjksIDE0OCwgMzAsIDUsIDI0OCwgMTEsIDIzMCwgCisgICAgMjA1LCAxNDgsIDMwLCA1LCAyMjYsIDk1LCAxNDgsIDEyMCwgNSwgMjM1LCAyMCwgMTQ4LCAxMjAsIDUsIDIyNiwgMTA3LCAKKyAgICAxNDgsIDEyMCwgNSwgMjUxLCA3NSwgMTQ4LCAyMjYsIDIwNCwgMTQ4LCA0MywgMjIzLCAyNTUsIDE0OCwgNDcsIDIyMywgCisgICAgMjU1LCAxNDgsIDIyNiwgMjQxLCAyNTQsIDE1MywgMTQ4LCAyMjYsIDI0MSwgMjMyLCAxMDIsIDE0OCwgMjI2LCAyNDEsIAorICAgIDIzMiwgMjIwLCAxNDgsIDIyNiwgMjQxLCAyMTMsIDIyNiwgMTQ4LCAyMjYsIDI0MSwgMjI2LCAyMDUsIDE0OCwgMjI2LCAKKyAgICAyNDEsIDIzMywgNzUsIDE0OCwgMjI2LCAyNDEsIDIzMiwgMjE0LCAxNDgsIDIyNiwgMjQxLCAyNTUsIDI2LCAxNDgsIDIyNiwgCisgICAgMjQxLCAyNTUsIDI3LCAyNTUsIDI2LCAxNDgsIDIyNiwgMjQxLCAyMjUsIDIxOSwgMTQ4LCAyMTYsIDY2LCAyMjYsIDI0MSwgCisgICAgMjI1LCAyMTksIDE0OCwgMjI2LCAyMDEsIDE0OCwgMjEsIDIxMiwgNzksIDE0OCwgMjEsIDExOCwgMTQ4LCAyMSwgMTEyLCAKKyAgICAxNDgsIDIxLCAxNzAsIDE0OCwgMjEsIDE2NywgMTQ4LCAyMSwgMTg1LCAxNDgsIDIxLCAxOTIsIDE0OCwgMjEsIDIwMCwgCisgICAgMTQ4LCAyMSwgMTk4LCAxNDgsIDIxLCAyMDMsIDE0OCwgMjI2LCAyNDEsIDIxNywgMzYsIDIxNiwgNzgsIDE0OCwgMjI2LCAKKyAgICAyNDEsIDIzNiwgMjYsIDE2NiwgMSwgNjMsIDE2NiwgMSwgNzUsIDE2NiwgMSwgNzIsIDE2NiwgMSwgNzcsIDE2NiwgMSwgCisgICAgMjU0LCAyMzYsIDE2NiwgMSwgNzgsIDE2NiwgMSwgMTgzLCAxNjYsIDEsIDIzNCwgMjUwLCAxNjYsIDEsIDI0MywgMjMwLCAKKyAgICAxNjYsIDEsIDI0MywgODksIDE2NiwgMSwgMjI5LCAxNDAsIDE2NiwgMSwgMjI5LCAyMjYsIDE2NiwgMSwgMjUwLCAyMTUsIAorICAgIDE2NiwgMSwgMjUwLCAxNzIsIDE2NiwgMSwgMjM2LCAwLCAxNjYsIDEsIDIzNSwgMjMwLCAxNjYsIDEsIDIyOSwgMTMwLCAKKyAgICAxNjYsIDEsIDIyOSwgMTMyLCAxNjYsIDEsIDIyOSwgMTMxLCAxNjYsIDEsIDIxOCwgNjYsIDE2NiwgMSwgMjE3LCAxNzQsIAorICAgIDE2NiwgMSwgMjQ5LCAzMCwgMTY2LCAxLCAyNDgsIDk3LCAxNjYsIDEsIDIyOCwgMTA1LCAxNjYsIDEsIDIwNywgMTY2LCAxLCAKKyAgICAyNDgsIDIwNywgMTY2LCAxLCAxOTUsIDE2NiwgMSwgMjI1LCAxMzYsIDE2NiwgMSwgMjI2LCA1OSwgMTY2LCAxLCAyNTIsIAorICAgIDIzNCwgMTY2LCAxLCAyNTIsIDY1LCAxNjYsIDEsIDIzMCwgMjM1LCAxNjYsIDEsIDE5MSwgMTY2LCAxLCAyNTIsIDE1NywgCisgICAgMTY2LCAxLCAxODksIDE2NiwgMSwgMjA4LCAxNjYsIDEsIDIzMywgMjU1LCAxNjYsIDEsIDIxNSwgOCwgMTY2LCAxLCAyMTksIAorICAgIDE3NiwgMTY2LCAxLCAyMjIsIDIyNywgMTY2LCAxLCAxNjIsIDE2NiwgMzAsIDUsIDI1NSwgMTA0LCAxNjYsIDMwLCA1LCA3NSwgCisgICAgMTY2LCAzMCwgNSwgMjM2LCAxNDUsIDE2NiwgMzAsIDUsIDI0NiwgMTcsIDE2NiwgMzAsIDUsIDcyLCAxNjYsIDMwLCA1LCAKKyAgICAyMjcsIDEzNiwgMTY2LCAzMCwgNSwgNzgsIDE2NiwgMzAsIDUsIDI1NCwgMjM2LCAxNjYsIDMwLCA1LCAyNTMsIDIzNSwgCisgICAgMTY2LCAzMCwgNSwgMjE1LCAxODksIDE2NiwgMTIwLCA1LCAxODksIDE2NiwgMTIwLCA1LCAyMDgsIDE2NiwgMTIwLCA1LCAKKyAgICAyMzMsIDI1NSwgMTY2LCAxMjAsIDUsIDIxNCwgNTIsIDE2NiwgMSwgNDEsIDIzNSwgMTQxLCAxNjYsIDEsIDQxLCAyNDQsIAorICAgIDQxLCAxNjYsIDEsIDQxLCAyMjksIDIyOCwgMTY2LCAxMjAsIDUsIDQxLCAyMjksIDIyOCwgMTY2LCAxLCA0MSwgMjUwLCAKKyAgICAyMTYsIDE2NiwgMSwgNDEsIDIxOCwgMTEzLCAxNjYsIDEsIDQxLCAyMDYsIDE2NiwgMSwgNDEsIDIyNywgMTEsIDE2NiwgMSwgCisgICAgNDEsIDIxMywgMTA4LCAxNjYsIDEsIDQxLCAxNTIsIDE2NiwgMSwgNDEsIDE1NSwgMTY2LCAxLCA0MSwgMjE5LCAxNzcsIAorICAgIDE2NiwgMTIwLCA1LCA0MSwgMTg0LCAxNjYsIDEyMCwgNSwgNDEsIDI0MiwgMTYyLCAxNjYsIDIxLCAyMTIsIDc5LCAxNjYsIAorICAgIDIxLCAxMTgsIDE2NiwgMjEsIDExMiwgMTY2LCAyMSwgMTcwLCAxNjYsIDIxLCAxNjcsIDE2NiwgMjEsIDE4NSwgMTY2LCAyMSwgCisgICAgMTkyLCAxNjYsIDIxLCAyMDAsIDE2NiwgMjEsIDE5OCwgMTY2LCAyMSwgMjAzLCAxNjYsIDIyNSwgNjMsIDIxOSwgMjAyLCAKKyAgICAxNjYsIDIyNSwgNjMsIDI0OCwgMjQ1LCAxNjYsIDIyNSwgNjMsIDUyLCAyNDgsIDI0NSwgMTY2LCAyMjUsIDYzLCAyMTYsIAorICAgIDE4MiwgMjQ4LCAyNDUsIDY1LCAxLCAyMzQsIDI0NCwgMjQzLCAyMzAsIDY1LCAxLCAyMzQsIDI0NCwgMjUxLCA4OCwgNjUsIAorICAgIDEsIDIzNCwgMjQ0LCAyNTAsIDIxNSwgNjUsIDEsIDIzNCwgMjQ0LCAyMzYsIDAsIDY1LCAxLCAyMzQsIDI0NCwgMjM1LCAKKyAgICAyMzAsIDY1LCAxLCAyMzQsIDI0NCwgMjI4LCA2NCwgNjUsIDEsIDIzNCwgMjQ0LCAyMTYsIDEyOCwgNjUsIDEsIDIzNCwgCisgICAgMjQ0LCAyMTYsIDExNiwgNjUsIDEsIDIzNCwgMjQ0LCAyNDgsIDIwNywgNjUsIDEsIDIzNCwgMjQ0LCAyNDgsIDE5MSwgNjUsIAorICAgIDEsIDIzNCwgMjQ0LCAyNDgsIDk3LCA2NSwgMSwgMjM0LCAyNDQsIDIwNywgNjUsIDEsIDIzNCwgMjQ0LCAyMjIsIDIyNywgCisgICAgNjUsIDEsIDIzNCwgMjQ0LCAxNjIsIDY1LCAxLCAyMzQsIDI0NCwgMjQyLCAzNywgNjUsIDEsIDIzNCwgMjQ0LCAyNDUsIDI5LCAKKyAgICA2NSwgNTksIDEsIDIzNCwgMjQ0LCAyMjQsIDM2LCA2NSwgMSwgMjM0LCAyNDQsIDIxMywgMTU2LCA2NSwgMSwgMjM0LCAyNDQsIAorICAgIDIxMiwgMTA5LCA2NSwgMSwgMjM0LCAyNDQsIDIwOCwgNjUsIDIzMywgMTYsIDIzNCwgMjQ0LCAyMjcsIDE1NCwgNjUsIDIzMywgCisgICAgMTYsIDIzNCwgMjQ0LCAyMjQsIDIyMywgNjUsIDIzMywgMTYsIDIzNCwgMjQ0LCAyNDEsIDIyNiwgNjUsIDE2LCAyNTQsIAorICAgIDIyNSwgMjQ1LCAxMTgsIDY1LCAxNiwgMjU0LCAyMjUsIDExOCwgNjUsIDE2LCAyNTQsIDIyNSwgMTEyLCA2NSwgMSwgMjU0LCAKKyAgICAyMjUsIDIwOCwgNjUsIDUsIDIyNiwgMTg4LCAyMzUsIDc1LCAyMTYsIDI1NCwgMzksIDE5MywgMSwgMTE3LCAyMzQsIDE0OCwgCisgICAgMzksIDE5MywgMSwgMTI3LCAyMzQsIDE0OCwgMzksIDE5MywgMSwgMTE3LCAyMzQsIDIyNCwgMzksIDE5MywgMSwgMTI3LCAKKyAgICAyMzQsIDIyNCwgMzksIDE5MywgMSwgMTE3LCAyMzQsIDIzMiwgMzksIDE5MywgMSwgMTI3LCAyMzQsIDIzMiwgMzksIDE5MywgCisgICAgMSwgMTE3LCAyNDMsIDE0LCAzOSwgMTkzLCAxLCAxMjcsIDI0MywgMTQsIDM5LCAxOTMsIDEsIDExNywgMjI5LCAxNTUsIDM5LCAKKyAgICAxOTMsIDEsIDEyNywgMjI5LCAxNTUsIDM5LCAxOTMsIDEsIDExNywgMjUwLCA0MiwgMzksIDE5MywgMSwgMTI3LCAyNTAsIAorICAgIDQyLCAzOSwgMTkzLCAxLCAxMTcsIDI1MCwgMTQ2LCAzOSwgMTkzLCAxLCAxMjcsIDI1MCwgMTQ2LCAzOSwgMTkzLCAxLCAKKyAgICAxMTcsIDIyMCwgNSwgMzksIDE5MywgMSwgMTI3LCAyMjAsIDUsIDM5LCAxOTMsIDEsIDExNywgMjI4LCAzNSwgMzksIDE5MywgCisgICAgMSwgMTI3LCAyMjgsIDM1LCAzOSwgMTkzLCAxLCAxMTcsIDI0NywgMjIwLCAzOSwgMTkzLCAxLCAxMjcsIDI0NywgMjIwLCAKKyAgICAzOSwgMTkzLCAxLCAxMTcsIDEwOSwgMzksIDE5MywgMSwgMTI3LCAxMDksIDM5LCAxOTMsIDEsIDExNywgMjE3LCAxMjIsIAorICAgIDM5LCAxOTMsIDEsIDEyNywgMjE3LCAxMjIsIDM5LCAxOTMsIDEsIDExNywgMjI4LCAyMjgsIDM5LCAxOTMsIDEsIDEyNywgCisgICAgMjI4LCAyMjgsIDM5LCAxOTMsIDEsIDExNywgMjUxLCAyNTMsIDM5LCAxOTMsIDEsIDEyNywgMjUxLCAyNTMsIDM5LCAxOTMsIAorICAgIDEsIDExNywgMjI1LCAxODYsIDM5LCAxOTMsIDEsIDEyNywgMjI1LCAxODYsIDM5LCAxOTMsIDEsIDExNywgMjI2LCAzMywgCisgICAgMzksIDE5MywgMSwgMTI3LCAyMjYsIDMzLCAzOSwgMTkzLCAxLCAxMTcsIDI0NCwgMTMyLCAzOSwgMTkzLCAxLCAxMjcsIAorICAgIDI0NCwgMTMyLCAzOSwgMTkzLCAxLCAxMTcsIDIzMSwgNDUsIDM5LCAxOTMsIDEsIDEyNywgMjMxLCA0NSwgMzksIDE5MywgMSwgCisgICAgMTE3LCAyMTIsIDIzNiwgMzksIDE5MywgMSwgMTI3LCAyMTIsIDIzNiwgMzksIDE5MywgMSwgMTE3LCAyMjMsIDE0NiwgMzksIAorICAgIDE5MywgMSwgMTI3LCAyMjMsIDE0NiwgMzksIDE5MywgMSwgMTE3LCAyMzMsIDI2LCAzOSwgMTkzLCAxLCAxMjcsIDIzMywgCisgICAgMjYsIDM5LCAxOTMsIDEsIDExNywgMjE0LCAxMjMsIDM5LCAxOTMsIDEsIDEyNywgMjE0LCAxMjMsIDM5LCAxOTMsIDEsIAorICAgIDExNywgMjQxLCAxNzMsIDM5LCAxOTMsIDEsIDEyNywgMjQxLCAxNzMsIDM5LCAxOTMsIDEsIDExNywgNzgsIDM5LCAxOTMsIAorICAgIDEsIDEyNywgNzgsIDM5LCAxOTMsIDIzMiwgODIsIDIzNSwgOTIsIDM5LCAxOTMsIDMwLCAyNTUsIDEwNCwgMzksIDE5MywgCisgICAgMzAsIDc1LCAzOSwgMTkzLCAzMCwgMjE1LCAxODksIDM5LCAxOTMsIDMwLCA3MiwgMzksIDE5MywgMzAsIDc3LCAzOSwgMTkzLCAKKyAgICAzMCwgNzgsIDM5LCAxOTMsIDIzMiwgODIsIDIzNCwgMjI2LCAzOSwgMTkzLCAzMCwgMjQwLCAyMjgsIDM5LCAxOTMsIDMwLCAKKyAgICAyMTUsIDE4OCwgMzksIDE5MywgMzAsIDIxNSwgMjAyLCAzOSwgMTkzLCAzMCwgMjUzLCAyMzMsIDM5LCAxOTMsIDMwLCAyNTMsIAorICAgIDIxMCwgMzksIDE5MywgMzAsIDI1NCwgMTU5LCAzOSwgMTkzLCAzMCwgMjU0LCAxNzIsIDM5LCAxOTMsIDE2MSwgMjMyLCA4MiwgCisgICAgMjQ2LCAyLCAzOSwgMTkzLCAxNjEsIDIzMiwgODIsIDIyOCwgMTA0LCAzOSwgMTkzLCAxNjEsIDIzMiwgODIsIDIxNywgMTIyLCAKKyAgICAzOSwgMTkzLCAxNjEsIDIzMiwgODIsIDIxOSwgMjQ3LCAzOSwgMTkzLCAxNiwgMjM0LCAxMzMsIDM5LCAxOTMsIDE2LCAyMjgsIAorICAgIDEwNCwgMzksIDE5MywgMTYsIDIyMiwgMTkyLCAzOSwgMTkzLCAxNiwgMjQxLCAxNzQsIDI0MSwgMTY5LCAzOSwgMTkzLCAxNiwgCisgICAgMjM0LCAxNDIsIDIzNCwgMTQxLCAyOCwgMywgMjE2LCAxMDksIDI4LCAzLCAyMTYsIDExMiwgMjgsIDMsIDIxNiwgMTE1LCAKKyAgICAyOCwgMywgMjE2LCAxMTMsIDI4LCAzLCAyMTYsIDExNCwgMjgsIDMsIDIxNiwgMTExLCAyOCwgMywgMjQ4LCAxODUsIDI4LCAKKyAgICAzLCAyNDgsIDE4NywgMjgsIDMsIDI0OCwgMTkwLCAyOCwgMywgMjQ4LCAxODgsIDI4LCAzLCAyNDgsIDE4OSwgMjgsIDMsIAorICAgIDI0OCwgMTg2LCAyOCwgMywgMjQ2LCAxMDQsIDI4LCAzLCAyNDYsIDEwNywgMjgsIDMsIDI0NiwgMTEzLCAyOCwgMywgMjQ2LCAKKyAgICAxMTEsIDI4LCAzLCAyNDYsIDExMiwgMjgsIDMsIDI0NiwgMTA1LCAyOCwgMywgMjUxLCA1LCAyOCwgMywgMjUwLCAyNTUsIAorICAgIDI4LCAzLCAyNTEsIDEsIDI4LCAzLCAyNTEsIDQsIDI4LCAzLCAyNTEsIDIsIDI4LCAzLCAyNTEsIDMsIDI4LCAzLCAyNTEsIAorICAgIDAsIDI4LCAzLCAyNTIsIDE1NywgMjgsIDMsIDI1MiwgMTM2LCAyOCwgMywgMjUyLCAxNDgsIDI4LCAzLCAyNTIsIDE1NiwgCisgICAgMjgsIDMsIDI1MiwgMTUxLCAyOCwgMywgMjUyLCAxNTIsIDI4LCAzLCAyNTIsIDE0MCwgMjMxLCAyMTAsIDIzMiwgOCwgMSwgCisgICAgMjM0LCAxMzksIDIzMSwgMjEwLCAyMzIsIDgsIDEsIDIyMiwgMTkyLCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyMzMsIDIzMSwgCisgICAgMjMxLCAyMTAsIDIzMiwgOCwgMSwgMjMxLCA1NSwgMjMxLCAyMTAsIDIzMiwgOCwgMSwgMTk1LCAyMzEsIDIxMCwgMjMyLCA4LCAKKyAgICAxLCAyMDcsIDIzMSwgMjEwLCAyMzIsIDgsIDEsIDI1MCwgMTYyLCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyMTcsIDU3LCAyMzEsIAorICAgIDIxMCwgMjMyLCA4LCAxLCAyMzQsIDIyMCwgMjMxLCAyMTAsIDIzMiwgOCwgMSwgMjI5LCAxNDUsIDIzMSwgMjEwLCAyMzIsIAorICAgIDgsIDEsIDIxNywgMTE2LCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyMTQsIDQ3LCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyMTMsIAorICAgIDYwLCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyNDEsIDY4LCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyMTUsIDE2NiwgMjMxLCAKKyAgICAyMTAsIDIzMiwgOCwgMSwgNzUsIDIzMSwgMjEwLCAyMzIsIDgsIDEsIDIyNiwgNTQsIDIzMSwgMjEwLCAyMzIsIDgsIDEsIAorICAgIDI1MywgMjQ1LCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyNDMsIDcsIDIzMSwgMjEwLCAyMzIsIDgsIDEsIDIzNSwgMjI5LCAKKyAgICAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyMjQsIDkyLCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyNTIsIDIzNCwgMjMxLCAyMTAsIAorICAgIDIzMiwgOCwgMSwgMjM1LCAyMTcsIDIzMSwgMjEwLCAyMzIsIDgsIDEsIDI0OCwgMzYsIDIzMSwgMjEwLCAyMzIsIDgsIDEsIAorICAgIDI0MywgNjEsIDIzMSwgMjEwLCAyMzIsIDgsIDEsIDI0OCwgNzgsIDIzMSwgMjEwLCAyMzIsIDgsIDEsIDI1MiwgNjQsIDIzMSwgCisgICAgMjEwLCAyMzIsIDgsIDEsIDIzNCwgMTQwLCAyMzIsIDI1NSwgMjMxLCAyMTAsIDIzMiwgOCwgMSwgMjMzLCAyMzIsIDIzMiwgCisgICAgMjU1LCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyMzEsIDU2LCAyMzIsIDI1NSwgMjMxLCAyMTAsIDIzMiwgOCwgMSwgMjI2LCAKKyAgICAyNTIsIDIzMiwgMjU1LCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyMzAsIDExNSwgMjMyLCAyNTUsIDIzMSwgMjEwLCAyMzIsIDgsIAorICAgIDEsIDIxNywgNTgsIDIzMiwgMjU1LCAyMzEsIDIxMCwgMjMyLCA4LCAxLCAyMjksIDE0NiwgMjMyLCAyNTUsIDIzMSwgMjEwLCAKKyAgICAyMzIsIDgsIDEsIDI0MSwgNywgMjMyLCAyNTUsIDIzMSwgMjEwLCAyMzIsIDgsIDMwLCA1LCAyMjcsIDk4LCAyMzEsIDIxMCwgCisgICAgMjMyLCA4LCAzMCwgNSwgMjM2LCAxMTAsIDIzMSwgMjEwLCAyMzIsIDgsIDMwLCA1LCAyNTQsIDE1OCwgMjMxLCAyMTAsIAorICAgIDIzMiwgOCwgMzAsIDUsIDIxMywgMzAsIDIzMSwgMjEwLCAyMzIsIDgsIDMwLCA1LCAyMTksIDIzOCwgMjMxLCAyMTAsIDIzMiwgCisgICAgOCwgMzAsIDUsIDIxNSwgMTYzLCAyMzEsIDIxMCwgMjMyLCA4LCAzMCwgNSwgMjUwLCAxODMsIDIzMSwgMjEwLCAyMzIsIDgsIAorICAgIDMwLCA1LCAyMjgsIDkwLCAyMzEsIDIxMCwgMjMyLCA4LCAyNTAsIDE4NCwgMjMxLCAyMTAsIDIzMiwgOCwgMjMyLCAyMTcsIAorICAgIDIzNiwgOSwgMjMxLCAyMTAsIDIzMiwgOCwgMjU0LCA4NywgMjM2LCA5LCAyMzEsIDIxMCwgMjMyLCA4LCAyMSwgMjEyLCA3OSwgCisgICAgMjMxLCAyMTAsIDIzMiwgOCwgMjEsIDExOCwgMjMxLCAyMTAsIDIzMiwgOCwgMjEsIDExMiwgMjMxLCAyMTAsIDIzMiwgOCwgCisgICAgMjEsIDE3MCwgMjMxLCAyMTAsIDIzMiwgOCwgMjEsIDE2NywgMjMxLCAyMTAsIDIzMiwgOCwgMjEsIDE4NSwgMjMxLCAyMTAsIAorICAgIDIzMiwgOCwgMjEsIDE5MiwgMjMxLCAyMTAsIDIzMiwgOCwgMjEsIDIwMCwgMjMxLCAyMTAsIDIzMiwgOCwgMjEsIDE5OCwgCisgICAgMjMxLCAyMTAsIDIzMiwgOCwgMjEsIDIwMywgMjQsIDEzOSwgMjI3LCAyMzQsIDI0LCAxMzksIDIyNywgMjM5LCAyNCwgMTM5LCAKKyAgICAyMTIsIDIzNSwgMjQsIDEzOSwgMjEyLCAyMzQsIDI0LCAxMzksIDIxMiwgMjMzLCAyNCwgMTM5LCAyMTUsIDI1MiwgMjQsIAorICAgIDEzOSwgMjE1LCAyNTUsIDI0LCAxMzksIDIxMiwgMjAyLCAyNCwgMTM5LCAyMTIsIDE5OCwgMjQsIDEzOSwgMjQ1LCAxNDIsIAorICAgIDI0LCAxMzksIDI0NSwgMTQwLCAyNCwgMTM5LCAyNDUsIDE0MSwgMjQsIDEzOSwgMjQ1LCAxMzgsIDI0LCAxMzksIDI0MCwgCisgICAgMjUzLCAyNCwgMTM5LCAyNDAsIDI1MiwgMjQsIDEzOSwgMjQwLCAyNTAsIDI0LCAxMzksIDI0MCwgMjUxLCAyNCwgMTM5LCAKKyAgICAyNDEsIDAsIDI0LCAxMzksIDI0MCwgMjQ5LCAyNCwgMTM5LCAyNDAsIDI0OCwgMjQsIDEzOSwgMjQxLCAyLCAyNCwgMTM5LCAKKyAgICAyNTQsIDc0LCAyNCwgMTM5LCAyNTQsIDczLCAyNCwgOTAsIDIyOSwgMTE0LCAyNCwgOTAsIDIyOSwgMTIwLCAyNCwgOTAsIAorICAgIDIxOSwgMTU3LCAyNCwgOTAsIDIxOSwgMTU2LCAyNCwgOTAsIDIxNywgNjMsIDI0LCA5MCwgMjE3LCA2MSwgMjQsIDkwLCAKKyAgICAyMTcsIDYwLCAyNCwgOTAsIDIxNywgNjYsIDI0LCA5MCwgMjE3LCA2NywgMjQsIDkwLCAyMTcsIDU5LCAyNCwgOTAsIDIyMywgCisgICAgMTkyLCAyNCwgOTAsIDIyMywgMjA3LCAyNCwgOTAsIDIxOSwgMTYzLCAyNCwgOTAsIDIyMywgMjA0LCAyNCwgOTAsIDIyMywgCisgICAgMTk0LCAyNCwgOTAsIDIyMywgMTk2LCAyNCwgOTAsIDIyMywgMTgzLCAyNCwgOTAsIDIyMywgMTg0LCAyNCwgOTAsIDIzNSwgCisgICAgODAsIDI0LCA5MCwgMjMxLCA5NSwgMjQsIDkwLCAyMzEsIDg5LCAyNCwgOTAsIDIxOSwgMTY3LCAyNCwgOTAsIDIzMSwgOTIsIAorICAgIDI0LCA5MCwgMjMxLCA5OCwgMjQsIDkwLCAyMjUsIDI0NCwgMjQsIDkwLCAyMjUsIDI1MywgMjQsIDkwLCAyMjYsIDEsIDI0LCAKKyAgICA5MCwgMjE5LCAxNjUsIDI0LCA5MCwgMjI1LCAyNDcsIDI0LCA5MCwgMjI2LCA1LCAyNCwgOTAsIDIyNiwgNiwgMjQsIDkwLCAKKyAgICAyMjAsIDg3LCAyNCwgOTAsIDIyMCwgOTAsIDI0LCA5MCwgMjE5LCAxNjEsIDI0LCA5MCwgMjE5LCAxNTksIDI0LCA5MCwgCisgICAgMjIwLCA4NSwgMjQsIDkwLCAyMjAsIDkzLCAyNCwgOTAsIDIyMCwgOTQsIDI0LCA5MCwgMjIwLCA3OSwgMjQsIDkwLCAyMjAsIAorICAgIDkyLCAyNCwgOTAsIDIyNiwgMTk1LCAyNCwgOTAsIDIyNiwgMTk2LCAyNCwgOTAsIDIxMywgMTYsIDI0LCA5MCwgMjEzLCAxNywgCisgICAgMjQsIDkwLCAyNTAsIDEwNCwgMjQsIDkwLCAyNTAsIDEwMywgMjQsIDkwLCAyMTksIDE3MiwgMjQsIDkwLCAyMjYsIDQwLCAKKyAgICAyNCwgOTAsIDIyNiwgMzksIDksIDEzLCAyMzgsIDEzNCwgOSwgMTMsIDIzOCwgMTMzLCA5LCAxMywgMjM4LCAxMzIsIDksIAorICAgIDEzLCAyMzgsIDEzMSwgOSwgMTMsIDIzOCwgMTMwLCA5LCAxMywgMjM4LCAxMjksIDksIDEzLCAyMzgsIDEyOCwgOSwgMTMsIAorICAgIDIzOCwgMTI3LCA5LCAxMywgMjM4LCAxMjYsIDksIDEzLCAyMzgsIDEyNSwgOSwgMTMsIDIzOCwgMTI0LCA5LCAxMywgMjM4LCAKKyAgICAxMjMsIDksIDEzLCAyMzgsIDEyMiwgOSwgMTMsIDIzOCwgMTIxLCA5LCAxMywgMjM4LCAxMjAsIDksIDEzLCAyMzgsIDExOSwgCisgICAgOSwgMTMsIDIzOCwgMTE4LCA5LCAxMywgMjM4LCAxMTcsIDksIDEzLCAyMzgsIDExNiwgOSwgMTMsIDIzOCwgMTE1LCA5LCAKKyAgICAxMywgMjM4LCAxMTQsIDksIDEzLCAyMzgsIDExMywgOSwgMTMsIDIzOCwgMTEyLCA5LCAxMywgMjM4LCAxMTEsIDksIDEzLCAKKyAgICAyMzgsIDExMCwgOSwgMTMsIDIzOCwgMTA5LCA5LCAxMywgMjM4LCAxMDgsIDksIDEzLCAyMzgsIDEwNywgOSwgMTMsIDIzOCwgCisgICAgMTA2LCA5LCAxMywgMjM4LCAxMDUsIDksIDEzLCAyMzgsIDEwNCwgOSwgMTMsIDIzOCwgMTAzLCA5LCAxMywgMjM4LCAxMDIsIAorICAgIDksIDEzLCAyMzgsIDEwMSwgOSwgMTMsIDIzOCwgMTAwLCA5LCAxMywgMjM4LCA5OSwgOSwgMTMsIDIzOCwgOTgsIDksIDEzLCAKKyAgICAyMzgsIDk3LCA5LCAxMywgMjM4LCA5NiwgOSwgMTMsIDIzOCwgOTUsIDksIDEzLCAyMzgsIDk0LCA5LCAxMywgMjM4LCA5MywgCisgICAgOSwgMTMsIDIzOCwgOTIsIDksIDEzLCAyMzgsIDkxLCA5LCAxMywgMjM4LCA5MCwgOSwgMTMsIDIzOCwgODksIDksIDEzLCAKKyAgICAyMzgsIDg4LCA5LCAxMywgMjM4LCA4NywgOSwgMTMsIDIzOCwgODYsIDksIDEzLCAyMzgsIDg1LCA5LCAxMywgMjM4LCA4NCwgCisgICAgOSwgMTMsIDIzOCwgODMsIDksIDEzLCAyMzgsIDgyLCA5LCAxMywgMjM4LCA4MSwgOSwgMTMsIDIzOCwgODAsIDksIDEzLCAKKyAgICAyMzgsIDc5LCA5LCAxMywgMjM4LCA3OCwgOSwgMTMsIDIzOCwgNzcsIDksIDEzLCAyMzgsIDc2LCA5LCAxMywgMjM4LCA3NSwgCisgICAgOSwgMTMsIDIzOCwgNzQsIDksIDEzLCAyMzgsIDczLCA5LCAxMywgMjM4LCA3MiwgOSwgMTMsIDIzOCwgNzEsIDksIDEzLCAKKyAgICAyMzgsIDcwLCA5LCAxMywgMjM4LCA2OSwgOSwgMTMsIDIzOCwgNjgsIDksIDEzLCAyMzgsIDY3LCA5LCAxMywgMjM4LCA2NiwgCisgICAgOSwgMTMsIDIzOCwgNjUsIDksIDEzLCAyMzgsIDY0LCA5LCAxMywgMjM4LCA2MywgOSwgMTMsIDIzOCwgNjIsIDksIDEzLCAKKyAgICAyMzgsIDYxLCA5LCAxMywgMjM4LCA2MCwgOSwgMTMsIDIzOCwgNTksIDksIDEzLCAyMzgsIDU4LCA5LCAxMywgMjM4LCA1NywgCisgICAgOSwgMTMsIDIzOCwgNTYsIDksIDEzLCAyMzgsIDU1LCA5LCAxMywgMjM4LCA1NCwgOSwgMTMsIDIzOCwgNTMsIDksIDEzLCAKKyAgICAyMzgsIDUyLCA5LCAxMywgMjM4LCA1MSwgOSwgMTMsIDIzOCwgNTAsIDksIDEzLCAyMzgsIDQ5LCA5LCAxMywgMjM4LCA0OCwgCisgICAgOSwgMTMsIDIzOCwgNDcsIDksIDEzLCAyMzgsIDQ2LCA5LCAxMywgMjM4LCA0NSwgOSwgMTMsIDIzOCwgNDQsIDksIDEzLCAKKyAgICAyMzgsIDQzLCA5LCAxMywgMjM4LCA0MiwgOSwgMTMsIDIzOCwgNDEsIDksIDEzLCAyMzgsIDQwLCA5LCAxMywgMjM4LCAzOSwgCisgICAgOSwgMTMsIDIzOCwgMzgsIDksIDEzLCAyMzgsIDM3LCA5LCAxMywgMjM4LCAzNiwgOSwgMTMsIDIzOCwgMzUsIDksIDEzLCAKKyAgICAyMzgsIDM0LCA5LCAxMywgMjM4LCAzMywgOSwgMTMsIDIzOCwgMzIsIDksIDEzLCAyMzgsIDMxLCA5LCAxMywgMjM4LCAzMCwgCisgICAgOSwgMTMsIDIzOCwgMjksIDksIDEzLCAyMzgsIDI4LCA5LCAxMywgMjM4LCAyNywgOSwgMTMsIDIzOCwgMjYsIDksIDEzLCAKKyAgICAyMzgsIDI1LCA5LCAxMywgMjM4LCAyNCwgOSwgMTMsIDIzOCwgMjMsIDksIDEzLCAyMzgsIDIyLCA5LCAxMywgMjM4LCAyMSwgCisgICAgOSwgMTMsIDIzOCwgMjAsIDksIDEzLCAyMzgsIDE5LCA5LCAxMywgMjM4LCAxOCwgOSwgMTMsIDIzOCwgMTcsIDksIDEzLCAKKyAgICAyMzgsIDE2LCA5LCAxMywgMjM4LCAxNSwgOSwgMTMsIDIzOCwgMTQsIDksIDEzLCAyMzgsIDEzLCA5LCAxMywgMjM4LCAxMiwgCisgICAgOSwgMTMsIDIzOCwgMTEsIDksIDEzLCAyMzgsIDEwLCA5LCAxMywgMjM4LCA5LCA5LCAxMywgMjM4LCA4LCA5LCAxMywgMjM4LCAKKyAgICA3LCA5LCAxMywgMjM4LCA2LCA5LCAxMywgMjM4LCA1LCA5LCAxMywgMjM4LCA0LCA5LCAxMywgMjM4LCAzLCA5LCAxMywgCisgICAgMjM4LCAyLCA5LCAxMywgMjM4LCAxLCA5LCAxMywgMjM4LCAwLCA5LCAxMywgMjM3LCAyNTUsIDksIDEzLCAyMzcsIDI1NCwgCisgICAgOSwgMTMsIDIzNywgMjUzLCA5LCAxMywgMjM3LCAyNTIsIDksIDEzLCAyMzcsIDI1MSwgOSwgMTMsIDIzNywgMjUwLCA5LCAKKyAgICAxMywgMjM3LCAyNDksIDksIDEzLCAyMzcsIDI0OCwgOSwgMTMsIDIzNywgMjQ3LCA5LCAxMywgMjM3LCAyNDYsIDksIDEzLCAKKyAgICAyMzcsIDI0NSwgOSwgMTMsIDIzNywgMjQ0LCA5LCAxMywgMjM3LCAyNDMsIDksIDEzLCAyMzcsIDI0MiwgOSwgMTMsIDIzNywgCisgICAgMjQxLCA5LCAxMywgMjM3LCAyNDAsIDksIDEzLCAyMzcsIDIzOSwgOSwgMTMsIDIzNywgMjM4LCA5LCAxMywgMjM3LCAyMzcsIAorICAgIDksIDEzLCAyMzcsIDIzNiwgOSwgMTMsIDIzNywgMjM1LCA5LCAxMywgMjM3LCAyMzQsIDksIDEzLCAyMzcsIDIzMywgOSwgCisgICAgMTMsIDIzNywgMjMyLCA5LCAxMywgMjM3LCAyMzEsIDksIDEzLCAyMzcsIDIzMCwgOSwgMTMsIDIzNywgMjI5LCA5LCAxMywgCisgICAgMjM3LCAyMjgsIDksIDEzLCAyMzcsIDIyNywgOSwgMTMsIDIzNywgMjI2LCA5LCAxMywgMjM3LCAyMjUsIDksIDEzLCAyMzcsIAorICAgIDIyNCwgOSwgMTMsIDIzNywgMjIzLCA5LCAxMywgMjM3LCAyMjIsIDksIDEzLCAyMzcsIDIyMSwgOSwgMTMsIDIzNywgMjIwLCAKKyAgICA5LCAxMywgMjM3LCAyMTksIDksIDEzLCAyMzcsIDIxOCwgOSwgMTMsIDIzNywgMjE3LCA5LCAxMywgMjM3LCAyMTYsIDksIAorICAgIDEzLCAyMzcsIDIxNSwgOSwgMTMsIDIzNywgMjE0LCA5LCAxMywgMjM3LCAyMTMsIDksIDEzLCAyMzcsIDIxMiwgOSwgMTMsIAorICAgIDIzNywgMjExLCA5LCAxMywgMjM3LCAyMTAsIDksIDEzLCAyMzcsIDIwOSwgOSwgMTMsIDIzNywgMjA4LCA5LCAxMywgMjM3LCAKKyAgICAyMDcsIDksIDEzLCAyMzcsIDIwNiwgOSwgMTMsIDIzNywgMjA1LCA5LCAxMywgMjM3LCAyMDQsIDksIDEzLCAyMzcsIDIwMywgCisgICAgOSwgMTMsIDIzNywgMjAyLCA5LCAxMywgMjM3LCAyMDEsIDksIDEzLCAyMzcsIDIwMCwgOSwgMTMsIDIzNywgMTk5LCA5LCAKKyAgICAxMywgMjM3LCAxOTgsIDksIDEzLCAyMzcsIDE5NywgOSwgMTMsIDIzNywgMTk2LCA5LCAxMywgMjM3LCAxOTUsIDksIDEzLCAKKyAgICAyMzcsIDE5NCwgOSwgMTMsIDIzNywgMTkzLCA5LCAxMywgMjM3LCAxOTIsIDksIDEzLCAyMzcsIDE5MSwgOSwgMTMsIDIzNywgCisgICAgMTkwLCA5LCAxMywgMjM3LCAxODksIDksIDEzLCAyMzcsIDE4OCwgOSwgMTMsIDIzNywgMTg3LCA5LCAxMywgMjM3LCAxODYsIAorICAgIDksIDEzLCAyMzcsIDE4NSwgOSwgMTMsIDIzNywgMTg0LCA5LCAxMywgMjM3LCAxODMsIDksIDEzLCAyMzcsIDE4MiwgOSwgCisgICAgMTMsIDIzNywgMTgxLCA5LCAxMywgMjM3LCAxODAsIDksIDEzLCAyMzcsIDE3OSwgOSwgMTMsIDIzNywgMTc4LCA5LCAxMywgCisgICAgMjM3LCAxNzcsIDksIDEzLCAyMzcsIDE3NiwgOSwgMTMsIDIzNywgMTc1LCA5LCAxMywgMjM3LCAxNzQsIDksIDEzLCAyMzcsIAorICAgIDE3MywgOSwgMTMsIDIzNywgMTcyLCA5LCAxMywgMjM3LCAxNzEsIDksIDEzLCAyMzcsIDE3MCwgOSwgMTMsIDIzNywgMTY5LCAKKyAgICA5LCAxMywgMjM3LCAxNjgsIDksIDEzLCAyMzcsIDE2NywgOSwgMTMsIDIzNywgMTY2LCA5LCAxMywgMjM3LCAxNjUsIDksIAorICAgIDEzLCAyMzcsIDE2NCwgOSwgMTMsIDIzNywgMTYzLCA5LCAxMywgMjM3LCAxNjIsIDksIDEzLCAyMzcsIDE2MSwgOSwgMTMsIAorICAgIDIzNywgMTYwLCA5LCAxMywgMjM3LCAxNTksIDksIDEzLCAyMzcsIDE1OCwgOSwgMTMsIDIzNywgMTU3LCA5LCAxMywgMjM3LCAKKyAgICAxNTYsIDksIDEzLCAyMzcsIDE1NSwgOSwgMTMsIDIzNywgMTU0LCA5LCAxMywgMjM3LCAxNTMsIDksIDEzLCAyMzcsIDE1MiwgCisgICAgOSwgMTMsIDIzNywgMTUxLCA5LCAxMywgMjM3LCAxNTAsIDksIDEzLCAyMzcsIDE0OSwgOSwgMTMsIDIzNywgMTQ4LCA5LCAKKyAgICAxMywgMjM3LCAxNDcsIDksIDEzLCAyMzcsIDE0NiwgOSwgMTMsIDIzNywgMTQ1LCA5LCAxMywgMjM3LCAxNDQsIDksIDEzLCAKKyAgICAyMzcsIDE0MywgOSwgMTMsIDIzNywgMTQyLCA5LCAxMywgMjM3LCAxNDEsIDksIDEzLCAyMzcsIDE0MCwgOSwgMTMsIDIzNywgCisgICAgMTM5LCA5LCAxMywgMjM3LCAxMzgsIDksIDEzLCAyMzcsIDEzNywgOSwgMTMsIDIzNywgMTM2LCA5LCAxMywgMjM3LCAxMzUsIAorICAgIDksIDEzLCAyMzcsIDEzNCwgOSwgMTMsIDIzNywgMTMzLCA5LCAxMywgMjM3LCAxMzIsIDksIDEzLCAyMzcsIDEzMSwgOSwgCisgICAgMTMsIDIzNywgMTMwLCA5LCAxMywgMjM3LCAxMjksIDksIDEzLCAyMzcsIDEyOCwgOSwgMTMsIDIzNywgMTI3LCA5LCAxMywgCisgICAgMjM3LCAxMjYsIDksIDEzLCAyMzcsIDEyNSwgOSwgMTMsIDIzNywgMTI0LCA5LCAxMywgMjM3LCAxMjMsIDksIDEzLCAyMzcsIAorICAgIDEyMiwgOSwgMTMsIDIzNywgMTIxLCA5LCAxMywgMjM3LCAxMjAsIDksIDEzLCAyMzcsIDExOSwgOSwgMTMsIDIzNywgMTE4LCAKKyAgICA5LCAxMywgMjM3LCAxMTcsIDksIDEzLCAyMzcsIDExNiwgOSwgMTMsIDIzNywgMTE1LCA5LCAxMywgMjM3LCAxMTQsIDksIAorICAgIDEzLCAyMzcsIDExMywgOSwgMTMsIDIzNywgMTEyLCA5LCAxMywgMjM3LCAxMTEsIDksIDEzLCAyMzcsIDExMCwgOSwgMTMsIAorICAgIDIzNywgMTA5LCA5LCAxMywgMjM3LCAxMDgsIDksIDEzLCAyMzcsIDEwNywgOSwgMTMsIDIzNywgMTA2LCA5LCAxMywgMjM3LCAKKyAgICAxMDUsIDksIDEzLCAyMzcsIDEwNCwgOSwgMTMsIDIzNywgMTAzLCA5LCAxMywgMjM3LCAxMDIsIDksIDEzLCAyMzcsIDEwMSwgCisgICAgOSwgMTMsIDIzNywgMTAwLCA5LCAxMywgMjM3LCA5OSwgOSwgMTMsIDIzNywgOTgsIDksIDEzLCAyMzcsIDk3LCA5LCAxMywgCisgICAgMjM3LCA5NiwgOSwgMTMsIDIzNywgOTUsIDksIDEzLCAyMzcsIDk0LCA5LCAxMywgMjM3LCA5MywgOSwgMTMsIDIzNywgOTIsIAorICAgIDksIDEzLCAyMzcsIDkxLCA5LCAxMywgMjM3LCA5MCwgOSwgMTMsIDIzNywgODksIDksIDEzLCAyMzcsIDg4LCA5LCAxMywgCisgICAgMjM3LCA4NywgOSwgMTMsIDIzNywgODYsIDksIDEzLCAyMzcsIDg1LCA5LCAxMywgMjM3LCA4NCwgOSwgMTMsIDIzNywgODMsIAorICAgIDksIDEzLCAyMzcsIDgyLCA5LCAxMywgMjM3LCA4MSwgOSwgMTMsIDIzNywgODAsIDksIDEzLCAyMzcsIDc5LCA5LCAxMywgCisgICAgMjM3LCA3OCwgOSwgMTMsIDIzNywgNzcsIDksIDEzLCAyMzcsIDc2LCA5LCAxMywgMjM3LCA3NSwgOSwgMTMsIDIzNywgNzQsIAorICAgIDksIDEzLCAyMzcsIDczLCA5LCAxMywgMjM3LCA3MiwgOSwgMTMsIDIzNywgNzEsIDksIDEzLCAyMzcsIDcwLCA5LCAxMywgCisgICAgMjM3LCA2OSwgOSwgMTMsIDIzNywgNjgsIDksIDEzLCAyMzcsIDY3LCA5LCAxMywgMjM3LCA2NiwgOSwgMTMsIDIzNywgNjUsIAorICAgIDksIDEzLCAyMzcsIDY0LCA5LCAxMywgMjM3LCA2MywgOSwgMTMsIDIzNywgNjIsIDksIDEzLCAyMzcsIDYxLCA5LCAxMywgCisgICAgMjM3LCA2MCwgOSwgMTMsIDIzNywgNTksIDksIDEzLCAyMzcsIDU4LCA5LCAxMywgMjM3LCA1NywgOSwgMTMsIDIzNywgNTYsIAorICAgIDksIDEzLCAyMzcsIDU1LCA5LCAxMywgMjM3LCA1NCwgOSwgMTMsIDIzNywgNTMsIDksIDEzLCAyMzcsIDUyLCA5LCAxMywgCisgICAgMjM3LCA1MSwgOSwgMTMsIDIzNywgNTAsIDksIDEzLCAyMzcsIDQ5LCA5LCAxMywgMjM3LCA0OCwgOSwgMTMsIDIzNywgNDcsIAorICAgIDksIDEzLCAyMzcsIDQ2LCA5LCAxMywgMjM3LCA0NSwgOSwgMTMsIDIzNywgNDQsIDksIDEzLCAyMzcsIDQzLCA5LCAxMywgCisgICAgMjM3LCA0MiwgOSwgMTMsIDIzNywgNDEsIDksIDEzLCAyMzcsIDQwLCA5LCAxMywgMjM3LCAzOSwgOSwgMTMsIDIzNywgMzgsIAorICAgIDksIDEzLCAyMzcsIDM3LCA5LCAxMywgMjM3LCAzNiwgOSwgMTMsIDIzNywgMzUsIDksIDEzLCAyMzcsIDM0LCA5LCAxMywgCisgICAgMjM3LCAzMywgOSwgMTMsIDIzNywgMzIsIDksIDEzLCAyMzcsIDMxLCA5LCAxMywgMjM3LCAzMCwgOSwgMTMsIDIzNywgMjksIAorICAgIDksIDEzLCAyMzcsIDI4LCA5LCAxMywgMjM3LCAyNywgOSwgMTMsIDIzNywgMjYsIDksIDEzLCAyMzcsIDI1LCA5LCAxMywgCisgICAgMjM3LCAyNCwgOSwgMTMsIDIzNywgMjMsIDksIDEzLCAyMzcsIDIyLCA5LCAxMywgMjM3LCAyMSwgOSwgMTMsIDIzNywgMjAsIAorICAgIDksIDEzLCAyMzcsIDE5LCA5LCAxMywgMjM3LCAxOCwgOSwgMTMsIDIzNywgMTcsIDksIDEzLCAyMzcsIDE2LCA5LCAxMywgCisgICAgMjM3LCAxNSwgOSwgMTMsIDIzNywgMTQsIDksIDEzLCAyMzcsIDEzLCA5LCAxMywgMjM3LCAxMiwgOSwgMTMsIDIzNywgMTEsIAorICAgIDksIDEzLCAyMzcsIDEwLCA5LCAxMywgMjM3LCA5LCA5LCAxMywgMjM3LCA4LCA5LCAxMywgMjM3LCA3LCA5LCAxMywgMjM3LCAKKyAgICA2LCA5LCAxMywgMjM3LCA1LCA5LCAxMywgMjM3LCA0LCA5LCAxMywgMjM3LCAzLCA5LCAxMywgMjM3LCAyLCA5LCAxMywgCisgICAgMjM3LCAxLCA5LCAxMywgMjM3LCAwLCA5LCAxMywgMjM2LCAyNTUsIDksIDEzLCAyMzYsIDI1NCwgOSwgMTMsIDIzNiwgMjUzLCAKKyAgICA5LCAxMywgMjM2LCAyNTIsIDksIDEzLCAyMzYsIDI1MSwgOSwgMTMsIDIzNiwgMjUwLCA5LCAxMywgMjM2LCAyNDksIDksIAorICAgIDEzLCAyMzYsIDI0OCwgOSwgMTMsIDIzNiwgMjQ3LCA5LCAxMywgMjM2LCAyNDYsIDksIDEzLCAyMzYsIDI0NSwgOSwgMTMsIAorICAgIDIzNiwgMjQ0LCA5LCAxMywgMjM2LCAyNDMsIDksIDEzLCAyMzYsIDI0MiwgOSwgMTMsIDIzNiwgMjQxLCA5LCAxMywgMjM2LCAKKyAgICAyNDAsIDksIDEzLCAyMzYsIDIzOSwgOSwgMTMsIDIzNiwgMjM4LCA5LCAxMywgMjM2LCAyMzcsIDksIDEzLCAyMzYsIDIzNiwgCisgICAgOSwgMTMsIDIzNiwgMjM1LCA5LCAxMywgMjM2LCAyMzQsIDksIDEzLCAyMzYsIDIzMywgOSwgMTMsIDIzNiwgMjMyLCA5LCAKKyAgICAxMywgMjM2LCAyMzEsIDksIDEzLCAyMzYsIDIzMCwgOSwgMTMsIDIzNiwgMjI5LCA5LCAxMywgMjM2LCAyMjgsIDksIDEzLCAKKyAgICAyMzYsIDIyNywgOSwgMTMsIDIzNiwgMjI2LCA5LCAxMywgMjM2LCAyMjUsIDksIDEzLCAyMzYsIDIyNCwgOSwgMTMsIDIzNiwgCisgICAgMjIzLCA5LCAxMywgMjM2LCAyMjIsIDksIDEzLCAyMzYsIDIyMSwgOSwgMTMsIDIzNiwgMjIwLCA5LCAxMywgMjM2LCAyMTksIAorICAgIDksIDEzLCAyMzYsIDIxOCwgOSwgMTMsIDIzNiwgMjE3LCA5LCAxMywgMjM2LCAyMTYsIDksIDEzLCAyMzYsIDIxNSwgOSwgCisgICAgMTMsIDIzNiwgMjE0LCA5LCAxMywgMjM2LCAyMTMsIDksIDEzLCAyMzYsIDIxMiwgOSwgMTMsIDIzNiwgMjExLCA5LCAxMywgCisgICAgMjM2LCAyMTAsIDksIDEzLCAyMzYsIDIwOSwgOSwgMTMsIDIzNiwgMjA4LCA5LCAxMywgMjM2LCAyMDcsIDksIDEzLCAyMzYsIAorICAgIDIwNiwgOSwgMTMsIDIzNiwgMjA1LCA5LCAxMywgMjM2LCAyMDQsIDksIDEzLCAyMzYsIDIwMywgOSwgMTMsIDIzNiwgMjAyLCAKKyAgICA5LCAxMywgMjM2LCAyMDEsIDksIDEzLCAyMzYsIDIwMCwgOSwgMTMsIDIzNiwgMTk5LCA5LCAxMywgMjM2LCAxOTgsIDksIAorICAgIDEzLCAyMzYsIDE5NywgOSwgMTMsIDIzNiwgMTk2LCA5LCAxMywgMjM2LCAxOTUsIDksIDEzLCAyMzYsIDE5NCwgOSwgMTMsIAorICAgIDIzNiwgMTkzLCA5LCAxMywgMjM2LCAxOTIsIDksIDEzLCAyMzYsIDE5MSwgOSwgMTMsIDIzNiwgMTkwLCA5LCAxMywgMjM2LCAKKyAgICAxODksIDksIDEzLCAyMzYsIDE4OCwgOSwgMTMsIDIzNiwgMTg3LCA5LCAxMywgMjM2LCAxODYsIDksIDEzLCAyMzYsIDE4NSwgCisgICAgOSwgMTMsIDIzNiwgMTg0LCA5LCAxMywgMjM2LCAxODMsIDksIDEzLCAyMzYsIDE4MiwgOSwgMTMsIDIzNiwgMTgxLCA5LCAKKyAgICAxMywgMjM2LCAxODAsIDksIDEzLCAyMzYsIDE3OSwgOSwgMTMsIDIzNiwgMTc4LCA5LCAxMywgMjM2LCAxNzcsIDcsIDQsIAorICAgIDI2LCAyNDQsIDIxNCwgNywgNCwgMjYsIDI0NCwgMjEwLCA3LCA0LCAyNiwgMjQ0LCAxNjUsIDcsIDQsIDI2LCAyNDQsIDIxMywgCisgICAgNywgNCwgMjYsIDI0NCwgMjEyLCA3LCA0LCAyNiwgMTg3LCAyMjMsIDI5LCAyMTgsIDExMywgNywgNCwgMjYsIDIxOSwgMTIxLCAKKyAgICAxNDYsIDQsIDI2LCAyMzEsIDE5MywgMjI4LCAxOTMsIDE0NiwgNCwgMjYsIDIzMSwgMTkzLCAyNDYsIDM0LCAxNDYsIDQsIAorICAgIDI2LCAyMzEsIDE5MywgMjM2LCA4NSwgMTQ2LCA0LCAyNiwgMjE0LCAxNjIsIDIyOCwgMTkzLCAxNDYsIDQsIDI2LCAyMzEsIAorICAgIDE5MywgMjEzLCAxNTEsIDk0LCAxLCAyMTIsIDIyNiwgMiwgMjQyLCA3LCA5NCwgMjI1LCAxODEsIDIzNSwgMTY3LCAyMTQsIAorICAgIDI0OSwgOTQsIDI2LCAyMTIsIDI1NCwgMjEyLCAyMjYsIDIxMiwgMjI2LCAyMjYsIDE0OSwgOTQsIDEsIDI1NCwgMTc1LCAKKyAgICAyNTMsIDIwNSwgOTQsIDEsIDIxMywgMjM1LCAyNTQsIDIwNSwgOTQsIDEsIDIxMywgMjM1LCAyNDksIDAsIDk0LCAxLCAyMTMsIAorICAgIDIzNSwgMjQyLCA4NSwgOTQsIDEsIDIxMywgMjM1LCAyMzUsIDExMiwgOTQsIDEsIDIxMywgMjM1LCAyMzMsIDIxNiwgOTQsIAorICAgIDEsIDIxMywgMjM1LCA0MSwgMjMxLCAxOTksIDk0LCAxLCAyMTMsIDIzNSwgMjIzLCAyNTMsIDk0LCAxLCAyMTMsIDIzNSwgCisgICAgMjE4LCAyLCA5NCwgMSwgMjU0LCAxNzUsIDk1LCA1MywgOTQsIDEsIDIyMCwgMjIyLCAyLCAyMjAsIDIyMiwgMjQ3LCAxOTUsIAorICAgIDk0LCAxLCAyMjAsIDIyMiwgMiwgMjIwLCAxMDQsIDI0NywgMTk1LCA5NCwgMSwgMjIwLCAyMjIsIDIsIDI0OSwgMTcsIDIyLCAKKyAgICAyMjAsIDIyMiwgMjQ3LCAxOTUsIDk0LCAxLCAyMjAsIDIyMiwgMiwgMjQ5LCAxNywgMjIsIDIyMCwgMTA0LCAyNDcsIDE5NSwgCisgICAgOTQsIDEsIDEwOCwgMiwgMjI2LCAxNDksIDk0LCAxLCAxMDgsIDIsIDIyNCwgMjU1LCA5NCwgMSwgMTA4LCAyLCAyMzIsIDQ5LCAKKyAgICA5NCwgMSwgMjUyLCA3NiwgMiwgMjQ5LCAxNiwgOTQsIDEsIDI0MywgNDIsIDIsIDI0OSwgMTYsIDk0LCAxLCAyNDksIDEsIDIsIAorICAgIDI0OSwgMTYsIDk0LCAxLCAyNDIsIDg2LCAyLCAyMzIsIDQ5LCA5NCwgMSwgMjE0LCAyNDIsIDIsIDI0OSwgMTYsIDk0LCAxLCAKKyAgICAyMTIsIDkxLCAyLCAyNDksIDE2LCA5NCwgMSwgMjE3LCAxOTcsIDIsIDI0OSwgMTYsIDk0LCAxLCAyMTIsIDIyNiwgMiwgCisgICAgMjQ5LCAxNiwgOTQsIDEsIDQxLCAyMzUsIDExMywgMiwgMjQ5LCAxNiwgOTQsIDEsIDIzNSwgMTEzLCAyLCAyNDksIDE2LCAKKyAgICA5NCwgMSwgMjMzLCAyMTcsIDIsIDI0OSwgMTYsIDk0LCAxLCAyMzEsIDIwMCwgMiwgMjQ5LCAxNiwgOTQsIDEsIDIyOCwgOTQsIAorICAgIDIsIDI0OSwgMTYsIDk0LCAxLCAyMjIsIDE4OSwgMiwgMjQ5LCAxNiwgOTQsIDEsIDQxLCAyMjYsIDEzMywgMiwgMjQ5LCAxNiwgCisgICAgOTQsIDEsIDIyNiwgMTMzLCAyLCAyNDksIDE2LCA5NCwgMSwgMjE2LCAxNTEsIDIsIDI0OSwgMTYsIDk0LCAxLCAyMjQsIAorICAgIDIyMCwgMiwgMjQ5LCAxNiwgOTQsIDEsIDIyMywgMjU0LCAyLCAyNDksIDE2LCA5NCwgMSwgMjIwLCAyMjIsIDIsIDI0OSwgCisgICAgMTYsIDk0LCAxLCAyMTgsIDMsIDIsIDI0OSwgMTYsIDk0LCAxLCAyMTQsIDI0MiwgMiwgMjQxLCAxNjYsIDk0LCAxLCAyNTIsIAorICAgIDc2LCAyLCAyMjQsIDk0LCA5NCwgMSwgMjM1LCAxMTMsIDIsIDIyNCwgOTQsIDk0LCAxLCAyMjYsIDEzMywgMiwgMjI0LCA5NCwgCisgICAgOTQsIDI2LCAxMDgsIDIzMywgMjE2LCAxMiwgMSwgMTA4LCAyMTQsIDM0LCA0OSwgMTcsIDEyLCAxLCAxMDgsIDIxNCwgMzQsIAorICAgIDQxLCAxNywgMTIsIDEsIDI1MiwgMTExLCA0OSwgMTcsIDEyLCAxLCAyNTIsIDExMSwgNDEsIDE3LCAxMiwgMSwgMjUyLCAKKyAgICAxMTEsIDczLCAxNywgMTIsIDEsIDI1MiwgMTExLCAxNDQsIDE3LCAxMiwgMSwgMjI2LCAxMTcsIDQ5LCAxNywgMTIsIDEsIAorICAgIDIyNiwgMTE3LCA0MSwgMTcsIDEyLCAxLCAyMjYsIDExNywgNzMsIDE3LCAxMiwgMSwgMjI2LCAxMTcsIDE0NCwgMTcsIDEyLCAKKyAgICAxLCAyNTIsIDk5LCA0OSwgMTcsIDEyLCAxLCAyNTIsIDk5LCA0MSwgMTcsIDEyLCAxLCAyNTIsIDk5LCA3MywgMTcsIDEyLCAKKyAgICAxLCAyNTIsIDk5LCAxNDQsIDE3LCAxMiwgMSwgMjE2LCAxMTksIDQ5LCAxNywgMTIsIDEsIDIxNiwgMTE5LCA0MSwgMTcsIAorICAgIDEyLCAxLCAyMTYsIDExOSwgNzMsIDE3LCAxMiwgMSwgMjE2LCAxMTksIDE0NCwgMTcsIDEyLCAxLCAyMTcsIDIyNywgNDksIAorICAgIDE3LCAxMiwgMSwgMjE3LCAyMjcsIDQxLCAxNywgMTIsIDEsIDIxNywgMjI3LCA3MywgMTcsIDEyLCAxLCAyMTcsIDIyNywgCisgICAgMTQ0LCAxNywgMTIsIDEsIDIxNiwgMTIxLCA0OSwgMTcsIDEyLCAxLCAyMTYsIDEyMSwgNDEsIDE3LCAxMiwgMSwgMjE2LCAKKyAgICAxMjEsIDczLCAxNywgMTIsIDEsIDIxNiwgMTIxLCAxNDQsIDE3LCAxMiwgMSwgMjE0LCAyMzEsIDQ5LCAxNywgMTIsIDEsIAorICAgIDIxNCwgMjMxLCA0MSwgMTcsIDEyLCAxLCAyMTQsIDIzMSwgNzMsIDE3LCAxMiwgMSwgMjE0LCAyMzEsIDE0NCwgMTcsIDEyLCAKKyAgICAxLCAyMjYsIDExNSwgNDksIDE3LCAxMiwgMSwgMjI2LCAxMTUsIDQxLCAxNywgMTIsIDEsIDIyNiwgMTE1LCA3MywgMTcsIAorICAgIDEyLCAxLCAyMjYsIDExNSwgMTQ0LCAxNywgMTIsIDEsIDI0NiwgMTIwLCA0OSwgMTcsIDEyLCAxLCAyNDYsIDEyMCwgNDEsIAorICAgIDE3LCAxMiwgMSwgMjQ2LCAxMjAsIDczLCAxNywgMTIsIDEsIDI0NiwgMTIwLCAxNDQsIDE3LCAxMiwgMSwgMjI4LCA1NCwgCisgICAgNDksIDE3LCAxMiwgMSwgMjI4LCA1NCwgNDEsIDE3LCAxMiwgMSwgMjI4LCA1NCwgNzMsIDE3LCAxMiwgMSwgMjI4LCA1NCwgCisgICAgMTQ0LCAxNywgMTIsIDEsIDIxNywgMjQ3LCA0OSwgMTcsIDEyLCAxLCAyMTcsIDI0NywgNDEsIDE3LCAxMiwgMSwgMjE3LCAKKyAgICAyNDcsIDczLCAxNywgMTIsIDEsIDIxNywgMjQ3LCAxNDQsIDE3LCAxMiwgMSwgMjE3LCAyNDUsIDQ5LCAxNywgMTIsIDEsIAorICAgIDIxNywgMjQ1LCA0MSwgMTcsIDEyLCAxLCAyMTcsIDI0NSwgNzMsIDE3LCAxMiwgMSwgMjE3LCAyNDUsIDE0NCwgMTcsIDEyLCAKKyAgICAxLCAyNDgsIDIwNSwgNDksIDE3LCAxMiwgMSwgMjQ4LCAyMDUsIDQxLCAxNywgMTIsIDEsIDI0OSwgMTMsIDQ5LCAxNywgMTIsIAorICAgIDEsIDI0OSwgMTMsIDQxLCAxNywgMTIsIDEsIDI0NiwgMTQ3LCA0OSwgMTcsIDEyLCAxLCAyNDYsIDE0NywgNDEsIDE3LCAxMiwgCisgICAgMSwgMjQ4LCAyMDMsIDQ5LCAxNywgMTIsIDEsIDI0OCwgMjAzLCA0MSwgMTcsIDEyLCAxLCAyMzUsIDIzNywgNDksIDE3LCAKKyAgICAxMiwgMSwgMjM1LCAyMzcsIDQxLCAxNywgMTIsIDEsIDIyMywgMTA4LCA0OSwgMTcsIDEyLCAxLCAyMjMsIDEwOCwgNDEsIAorICAgIDE3LCAxMiwgMSwgMjM1LCAzNywgNDksIDE3LCAxMiwgMSwgMjM1LCAzNywgNDEsIDE3LCAxMiwgMSwgMjM1LCAzNywgNzMsIAorICAgIDE3LCAxMiwgMSwgMjM1LCAzNywgMTQ0LCAxNywgMTIsIDEsIDI0MywgMjE4LCA0OSwgMTcsIDEyLCAxLCAyNDMsIDIxOCwgCisgICAgNDEsIDE3LCAxMiwgMSwgMjQzLCAyMTgsIDczLCAxNywgMTIsIDEsIDI0MywgMjE4LCAxNDQsIDE3LCAxMiwgMSwgMjQyLCAKKyAgICAyMDQsIDQ5LCAxNywgMTIsIDEsIDI0MiwgMjA0LCA0MSwgMTcsIDEyLCAxLCAyNDIsIDIwNCwgNzMsIDE3LCAxMiwgMSwgCisgICAgMjQyLCAyMDQsIDE0NCwgMTcsIDEyLCAxLCAyMjksIDE1NCwgNDksIDE3LCAxMiwgMSwgMjI5LCAxNTQsIDQxLCAxNywgMTIsIAorICAgIDEsIDIyOSwgMTU0LCA3MywgMTcsIDEyLCAxLCAyMjksIDE1NCwgMTQ0LCAxNywgMTIsIDEsIDIyOCwgMjE3LCAyNDMsIDU5LCAKKyAgICA0OSwgMTcsIDEyLCAxLCAyMjgsIDIxNywgMjQzLCA1OSwgNDEsIDE3LCAxMiwgMSwgMjIzLCAxNTAsIDQ5LCAxNywgMTIsIDEsIAorICAgIDIyMywgMTUwLCA0MSwgMTcsIDEyLCAxLCAyMjMsIDE1MCwgNzMsIDE3LCAxMiwgMSwgMjIzLCAxNTAsIDE0NCwgMTcsIDEyLCAKKyAgICAxLCAyNDIsIDY2LCAyLCA3NiwgNzQsIDQ5LCAxNywgMTIsIDEsIDI0MiwgNjYsIDIsIDc2LCA3NCwgNDEsIDE3LCAxMiwgMSwgCisgICAgMjQyLCA2NiwgMjQzLCAxMiwgNDksIDE3LCAxMiwgMSwgMjQyLCA2NiwgMjQzLCAxMiwgNDEsIDE3LCAxMiwgMSwgMjQyLCAKKyAgICA2NiwgMjQzLCAxMiwgNzMsIDE3LCAxMiwgMSwgMjQyLCA2NiwgMjQzLCAxMiwgMTQ0LCAxNywgMTIsIDEsIDI0MiwgNjYsIAorICAgIDI0NywgMjE3LCA0OSwgMTcsIDEyLCAxLCAyNDIsIDY2LCAyNDcsIDIxNywgNDEsIDE3LCAxMiwgMSwgMjQyLCA2NiwgMjQ3LCAKKyAgICAyMTcsIDczLCAxNywgMTIsIDEsIDI0MiwgNjYsIDI0NywgMjE3LCAxNDQsIDE3LCAxMiwgMSwgNzYsIDI1MiwgMTc5LCA0OSwgCisgICAgMTcsIDEyLCAxLCA3NiwgMjUyLCAxNzksIDQxLCAxNywgMTIsIDEsIDc2LCAyNTIsIDE3OSwgMiwgMTk0LCA3NCwgNDksIDE3LCAKKyAgICAxMiwgMSwgNzYsIDI1MiwgMTc5LCAyLCAxOTQsIDc0LCA0MSwgMTcsIDEyLCAxNiwgNjIsIDUwLCAxMiwgMTYsIDYyLCA1NSwgCisgICAgMTIsIDE2LCAxMTksIDE4MSwgNTAsIDEyLCAxNiwgMTE5LCAxODEsIDU1LCAxMiwgMTYsIDEzNywgMTgxLCA1MCwgMTIsIDE2LCAKKyAgICAxMzcsIDE4MSwgNTUsIDEyLCAxNiwgMTM3LCAxODEsIDIyNSwgMTc3LCAyNDYsIDE3OSwgNTAsIDEyLCAxNiwgMTM3LCAxODEsIAorICAgIDIyNSwgMTc3LCAyNDYsIDE3OSwgNTUsIDEyLCAxNiwgMjQ0LCAxMDEsIDE4MSwgNTAsIDEyLCAxNiwgMjQ0LCAxMDEsIDE4MSwgCisgICAgNTUsIDEyLCAxNiwgNTIsIDY2LCAyNTIsIDE4NywgNTUsIDEyLCAxNiwgMTE5LCAxODEsIDIxNCwgMTcxLCA1MCwgMTIsIDE2LCAKKyAgICAxMTksIDE4MSwgMjE0LCAxNzEsIDU1LCAxMiwgMTYsIDIyMywgMTY0LCAxMiwgMTYsIDQsIDIxOCwgNDQsIDUwLCAxMiwgMTYsIAorICAgIDQsIDIxOCwgNDQsIDU1LCAxMiwgMSwgMjI5LCAyMjksIDQ5LCAxNywgMTIsIDEsIDIyOSwgMjI5LCA0MSwgMTcsIDEyLCAxLCAKKyAgICAyMjksIDIyOSwgNzMsIDE3LCAxMiwgMSwgMjI5LCAyMjksIDE0NCwgMTcsIDEyLCAxLCAxMDMsIDQ5LCAxNywgMTIsIDEsIAorICAgIDEwMywgNDEsIDE3LCAxMiwgMSwgMjI3LCAxMzcsIDQ5LCAxNywgMTIsIDEsIDIyNywgMTM3LCA0MSwgMTcsIDEyLCAxLCAKKyAgICAyMTIsIDIwNSwgNDksIDE3LCAxMiwgMSwgMjEyLCAyMDUsIDQxLCAxNywgMTIsIDEsIDEwMywgMiwgMTk0LCA3NCwgNDksIAorICAgIDE3LCAxMiwgMSwgMjE0LCAyMzgsIDQ5LCAxNywgMTIsIDEsIDIxNCwgMjM4LCA0MSwgMTcsIDEyLCAxLCAyMzQsIDE5MywgCisgICAgMjI3LCAxMzcsIDQ5LCAxNywgMTIsIDEsIDIzNCwgMTkzLCAyMjcsIDEzNywgNDEsIDE3LCAxMiwgMSwgMjM0LCAxOTMsIAorICAgIDIxMiwgMjA1LCA0OSwgMTcsIDEyLCAxLCAyMzQsIDE5MywgMjEyLCAyMDUsIDQxLCAxNywgMTIsIDEsIDE1NCwgNDksIDE3LCAKKyAgICAxMiwgMSwgMTU0LCA0MSwgMTcsIDEyLCAxLCAxNTQsIDczLCAxNywgMTIsIDEsIDE1NCwgMTQ0LCAxNywgMTIsIDEsIDIxNSwgCisgICAgMTgzLCAyMzUsIDQ4LCAyMzQsIDE5MywgMTA4LCAyMzIsIDcxLCA3MywgMTcsIDEyLCAxLCAyMTUsIDE4MywgMjM1LCA0OCwgCisgICAgMjM0LCAxOTMsIDEwOCwgMjMyLCA3MSwgMTQ0LCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgMTA4LCA0OSwgMTcsIAorICAgIDEyLCAyNiwgNzYsIDIsIDE5NCwgNzQsIDIsIDEwOCwgNDEsIDE3LCAxMiwgMjYsIDc2LCAyLCAxOTQsIDc0LCAyLCAyNTUsIAorICAgIDIxLCA0OSwgMTcsIDEyLCAyNiwgNzYsIDIsIDE5NCwgNzQsIDIsIDI1NSwgMjEsIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgCisgICAgMTk0LCA3NCwgMiwgMjE0LCAxOCwgNDksIDE3LCAxMiwgMjYsIDc2LCAyLCAxOTQsIDc0LCAyLCAyMTQsIDE4LCA0MSwgMTcsIAorICAgIDEyLCAyNiwgNzYsIDIsIDE5NCwgNzQsIDIsIDEwMywgNDksIDE3LCAxMiwgMjYsIDc2LCAyLCAxOTQsIDc0LCAyLCAxMDMsIAorICAgIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgMjI3LCAxMzcsIDQ5LCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCAKKyAgICA3NCwgMiwgMjI3LCAxMzcsIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgMjEyLCAyMDUsIDQ5LCAxNywgMTIsIAorICAgIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgMjEyLCAyMDUsIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgMTU0LCAKKyAgICA0OSwgMTcsIDEyLCAyNiwgNzYsIDIsIDE5NCwgNzQsIDIsIDE1NCwgNDEsIDE3LCAxMiwgMjYsIDc2LCAyLCAxOTQsIDc0LCAKKyAgICAyLCAxNTQsIDczLCAxNywgMTIsIDI2LCAyMTUsIDE4MywgMjM0LCAxOTMsIDc2LCAyLCAxOTQsIDc0LCAyLCAxMDgsIDIzMiwgCisgICAgNzEsIDQ5LCAxNywgMTIsIDI2LCAyMTUsIDE4MywgMjM0LCAxOTMsIDc2LCAyLCAxOTQsIDc0LCAyLCAxMDgsIDIzMiwgNzEsIAorICAgIDQxLCAxNywgMTIsIDI2LCAyMTUsIDE4MywgMjM0LCAxOTMsIDc2LCAyLCAxOTQsIDc0LCAyLCAxMDgsIDIzMiwgNzEsIDczLCAKKyAgICAxNywgMTIsIDEsIDI0NSwgMSwgNzYsIDQ5LCAxNywgMTIsIDEsIDI0NSwgMSwgNzYsIDQxLCAxNywgMTIsIDEsIDI0NSwgMSwgCisgICAgNzYsIDczLCAxNywgMTIsIDEsIDI0NSwgMSwgNzYsIDE0NCwgMTcsIDEyLCAyNiwgNzYsIDIsIDE5NCwgNzQsIDIsIDE0OSwgCisgICAgNDksIDE3LCAxMiwgMjYsIDc2LCAyLCAxOTQsIDc0LCAyLCAxMjMsIDQ5LCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgCisgICAgMiwgNjQsIDQ5LCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgMTA4LCAyMzIsIDcxLCA0OSwgMTcsIDEyLCAyNiwgCisgICAgNzYsIDIsIDE5NCwgNzQsIDIsIDc2LCA0OSwgMTcsIDEyLCAyNiwgMjUyLCAxMDEsIDIsIDE0OSwgNDksIDE3LCAxMiwgMjYsIAorICAgIDI1MiwgMTAxLCAyLCAxMjMsIDQ5LCAxNywgMTIsIDI2LCAyNTIsIDEwMSwgMiwgMjM0LCAyNDgsIDQ5LCAxNywgMTIsIDI2LCAKKyAgICAyNTIsIDEwMSwgMiwgNjQsIDQ5LCAxNywgMTIsIDI2LCAyNTIsIDEwMSwgMiwgMTA4LCAyMzIsIDcxLCA0OSwgMTcsIDEyLCAKKyAgICAyNiwgMjUyLCAxMDEsIDIsIDc2LCA0OSwgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDE0OSwgNDksIDE3LCAxMiwgMjYsIAorICAgIDIxNywgMjI5LCAyLCAxMjMsIDQ5LCAxNywgMTIsIDI2LCAyMTcsIDIyOSwgMiwgMjM0LCAyNDgsIDQ5LCAxNywgMTIsIDI2LCAKKyAgICAyMTcsIDIyOSwgMiwgNjQsIDQ5LCAxNywgMTIsIDI2LCAyMTcsIDIyOSwgMiwgMTA4LCAyMzIsIDcxLCA0OSwgMTcsIDEyLCAKKyAgICAyNiwgMjE3LCAyMjksIDIsIDc2LCA0OSwgMTcsIDEyLCAyNiwgMjE3LCAxNTksIDIsIDE0OSwgNDksIDE3LCAxMiwgMjYsIAorICAgIDIxNywgMTU5LCAyLCA2NCwgNDksIDE3LCAxMiwgMjYsIDIxNywgMTU5LCAyLCAxMDgsIDIzMiwgNzEsIDQ5LCAxNywgMTIsIAorICAgIDI2LCAyMTcsIDE1OSwgMiwgNzYsIDQ5LCAxNywgMTIsIDI2LCAxNDksIDIsIDEyMywgNDksIDE3LCAxMiwgMjYsIDE0OSwgMiwgCisgICAgNjQsIDQ5LCAxNywgMTIsIDI2LCAxMjMsIDIsIDE0OSwgNDksIDE3LCAxMiwgMjYsIDEyMywgMiwgNjQsIDQ5LCAxNywgMTIsIAorICAgIDI2LCAyMzQsIDI0OCwgMiwgMTQ5LCA0OSwgMTcsIDEyLCAyNiwgMjM0LCAyNDgsIDIsIDEyMywgNDksIDE3LCAxMiwgMjYsIAorICAgIDIzNCwgMjQ4LCAyLCA2NCwgNDksIDE3LCAxMiwgMjYsIDIyMiwgMTA5LCAyLCAxNDksIDQ5LCAxNywgMTIsIDI2LCAyMjIsIAorICAgIDEwOSwgMiwgMTIzLCA0OSwgMTcsIDEyLCAyNiwgMjIyLCAxMDksIDIsIDIzNCwgMjQ4LCA0OSwgMTcsIDEyLCAyNiwgMjIyLCAKKyAgICAxMDksIDIsIDY0LCA0OSwgMTcsIDEyLCAyNiwgMjIyLCAyMjEsIDIsIDEyMywgNDksIDE3LCAxMiwgMjYsIDIyMiwgMjIxLCAKKyAgICAyLCA2NCwgNDksIDE3LCAxMiwgMjYsIDI0OSwgMjYsIDIsIDE0OSwgNDksIDE3LCAxMiwgMjYsIDI0OSwgMjYsIDIsIDEyMywgCisgICAgNDksIDE3LCAxMiwgMjYsIDI0OSwgMjYsIDIsIDIzNCwgMjQ4LCA0OSwgMTcsIDEyLCAyNiwgMjQ5LCAyNiwgMiwgNjQsIDQ5LCAKKyAgICAxNywgMTIsIDI2LCAyMTgsIDQ0LCAyLCAxMjMsIDQ5LCAxNywgMTIsIDI2LCAyMTgsIDQ0LCAyLCA2NCwgNDksIDE3LCAxMiwgCisgICAgMjYsIDIxMiwgMTA1LCAyLCA2NCwgNDksIDE3LCAxMiwgMjYsIDI1NCwgMjMyLCAyLCAxNDksIDQ5LCAxNywgMTIsIDI2LCAKKyAgICAyNTQsIDIzMiwgMiwgNjQsIDQ5LCAxNywgMTIsIDI2LCAyNDMsIDg1LCAyLCAxNDksIDQ5LCAxNywgMTIsIDI2LCAyNDMsIAorICAgIDg1LCAyLCA2NCwgNDksIDE3LCAxMiwgMjYsIDI0NCwgMjMyLCAyLCAxNDksIDQ5LCAxNywgMTIsIDI2LCAyNDQsIDIzMiwgMiwgCisgICAgMTIzLCA0OSwgMTcsIDEyLCAyNiwgMjQ0LCAyMzIsIDIsIDIzNCwgMjQ4LCA0OSwgMTcsIDEyLCAyNiwgMjQ0LCAyMzIsIDIsIAorICAgIDY0LCA0OSwgMTcsIDEyLCAyNiwgMjQ0LCAyMzIsIDIsIDEwOCwgMjMyLCA3MSwgNDksIDE3LCAxMiwgMjYsIDI0NCwgMjMyLCAKKyAgICAyLCA3NiwgNDksIDE3LCAxMiwgMjYsIDIyNSwgNSwgMiwgMTIzLCA0OSwgMTcsIDEyLCAyNiwgMjI1LCA1LCAyLCA2NCwgNDksIAorICAgIDE3LCAxMiwgMjYsIDIyNSwgNSwgMiwgMTA4LCAyMzIsIDcxLCA0OSwgMTcsIDEyLCAyNiwgMjI1LCA1LCAyLCA3NiwgNDksIAorICAgIDE3LCAxMiwgMjYsIDIzNSwgMTEzLCAyLCAxMDgsIDQ5LCAxNywgMTIsIDI2LCAyMzUsIDExMywgMiwgMTQ5LCA0OSwgMTcsIAorICAgIDEyLCAyNiwgMjM1LCAxMTMsIDIsIDEyMywgNDksIDE3LCAxMiwgMjYsIDIzNSwgMTEzLCAyLCAyMzQsIDI0OCwgNDksIDE3LCAKKyAgICAxMiwgMjYsIDIzNSwgMTEzLCAyLCAyMzMsIDIyNSwgNDksIDE3LCAxMiwgMjYsIDIzNSwgMTEzLCAyLCA2NCwgNDksIDE3LCAKKyAgICAxMiwgMjYsIDIzNSwgMTEzLCAyLCAxMDgsIDIzMiwgNzEsIDQ5LCAxNywgMTIsIDI2LCAyMzUsIDExMywgMiwgNzYsIDQ5LCAKKyAgICAxNywgMTIsIDI2LCAyMzMsIDIyNSwgMiwgMTQ5LCA0OSwgMTcsIDEyLCAyNiwgMjMzLCAyMjUsIDIsIDEyMywgNDksIDE3LCAKKyAgICAxMiwgMjYsIDIzMywgMjI1LCAyLCAyMzQsIDI0OCwgNDksIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCA2NCwgNDksIDE3LCAKKyAgICAxMiwgMjYsIDIzMywgMjI1LCAyLCAxMDgsIDIzMiwgNzEsIDQ5LCAxNywgMTIsIDI2LCAyMzMsIDIyNSwgMiwgNzYsIDQ5LCAKKyAgICAxNywgMTIsIDI2LCA2NCwgMiwgMTQ5LCA0OSwgMTcsIDEyLCAyNiwgNjQsIDIsIDEyMywgNDksIDE3LCAxMiwgMjYsIDY0LCAKKyAgICAyLCAyMzQsIDI0OCwgNDksIDE3LCAxMiwgMjYsIDY0LCAyLCA2NCwgNDksIDE3LCAxMiwgMjYsIDY0LCAyLCAxMDgsIDIzMiwgCisgICAgNzEsIDQ5LCAxNywgMTIsIDI2LCA2NCwgMiwgNzYsIDQ5LCAxNywgMTIsIDI2LCAyMjgsIDIxNywgMiwgMTQ5LCA0OSwgMTcsIAorICAgIDEyLCAyNiwgMjI4LCAyMTcsIDIsIDEyMywgNDksIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAyLCAyMzQsIDI0OCwgNDksIDE3LCAKKyAgICAxMiwgMjYsIDIyOCwgMjE3LCAyLCA2NCwgNDksIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAyLCAxMDgsIDIzMiwgNzEsIDQ5LCAKKyAgICAxNywgMTIsIDI2LCAyMjgsIDIxNywgMiwgNzYsIDQ5LCAxNywgMTIsIDI2LCAyNDIsIDY2LCAyLCAxNDksIDQ5LCAxNywgMTIsIAorICAgIDI2LCAyNDIsIDY2LCAyLCA2NCwgNDksIDE3LCAxMiwgMjYsIDI0MiwgNjYsIDIsIDEwOCwgMjMyLCA3MSwgNDksIDE3LCAxMiwgCisgICAgMjYsIDI0MiwgNjYsIDIsIDc2LCA0OSwgMTcsIDEyLCAyNiwgNzYsIDIsIDE0OSwgNDksIDE3LCAxMiwgMjYsIDc2LCAyLCAKKyAgICAxMjMsIDQ5LCAxNywgMTIsIDI2LCA3NiwgMiwgMjM0LCAyNDgsIDQ5LCAxNywgMTIsIDI2LCA3NiwgMiwgNjQsIDQ5LCAxNywgCisgICAgMTIsIDI2LCA3NiwgMiwgMTA4LCAyMzIsIDcxLCA0OSwgMTcsIDEyLCAyNiwgNzYsIDIsIDc2LCA0OSwgMTcsIDEyLCAyNiwgCisgICAgMjE3LCAxNjksIDIsIDIxOCwgMjM3LCAxMDgsIDQ5LCAxNywgMTIsIDI2LCAyMjQsIDI0LCAyLCAyMTgsIDIzNywgMTA4LCAKKyAgICA0OSwgMTcsIDEyLCAyNiwgMTA4LCAyMzIsIDcxLCAyLCAyMTgsIDIzNywgMTA4LCA0OSwgMTcsIDEyLCAyNiwgMjIxLCAzOSwgCisgICAgMiwgMjQ4LCAyNTAsIDQ5LCAxNywgMTIsIDI2LCAyMjEsIDM5LCAyLCAyMzUsIDY2LCA0OSwgMTcsIDEyLCAyNiwgMjIxLCAKKyAgICAzOSwgMiwgMjQ0LCAyNTUsIDQ5LCAxNywgMTIsIDI2LCAyMjEsIDM5LCAyLCAyNDgsIDI1MiwgNDksIDE3LCAxMiwgMjYsIAorICAgIDIyMSwgMzksIDIsIDIzNSwgNjgsIDQ5LCAxNywgMTIsIDI2LCAyMjEsIDM5LCAyLCAyMTgsIDIzNywgMTA4LCA0OSwgMTcsIAorICAgIDEyLCAyNiwgNzYsIDIsIDE5NCwgNzQsIDIsIDIyNCwgMjQsIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgCisgICAgMjEyLCAxMDIsIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgCisgICAgMTk0LCA3NCwgMiwgMjI4LCAyMTcsIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgMTA4LCAyMzIsIDcxLCAKKyAgICA0MSwgMTcsIDEyLCAyNiwgNzYsIDIsIDE5NCwgNzQsIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgMjUyLCAxMDEsIDIsIDIyNCwgCisgICAgMjQsIDQxLCAxNywgMTIsIDI2LCAyNTIsIDEwMSwgMiwgMjEyLCAxMDIsIDQxLCAxNywgMTIsIDI2LCAyNTIsIDEwMSwgMiwgCisgICAgNjQsIDQxLCAxNywgMTIsIDI2LCAyNTIsIDEwMSwgMiwgMjI4LCAyMTcsIDQxLCAxNywgMTIsIDI2LCAyNTIsIDEwMSwgMiwgCisgICAgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMjUyLCAxMDEsIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgMjE3LCAyMjksIAorICAgIDIsIDIyNCwgMjQsIDQxLCAxNywgMTIsIDI2LCAyMTcsIDIyOSwgMiwgMjEyLCAxMDIsIDQxLCAxNywgMTIsIDI2LCAyMTcsIAorICAgIDIyOSwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAyMTcsIDIyOSwgMiwgMjI4LCAyMTcsIDQxLCAxNywgMTIsIDI2LCAyMTcsIAorICAgIDIyOSwgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgCisgICAgMjE3LCAxNTksIDIsIDIyNCwgMjQsIDQxLCAxNywgMTIsIDI2LCAyMTcsIDE1OSwgMiwgMjEyLCAxMDIsIDQxLCAxNywgMTIsIAorICAgIDI2LCAyMTcsIDE1OSwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAyMTcsIDE1OSwgMiwgMjI4LCAyMTcsIDQxLCAxNywgMTIsIAorICAgIDI2LCAyMTcsIDE1OSwgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMjE3LCAxNTksIDIsIDc2LCA0MSwgMTcsIAorICAgIDEyLCAyNiwgMjQ0LCAyMzIsIDIsIDEwOCwgMjMyLCA3MSwgNDEsIDE3LCAxMiwgMjYsIDI0NCwgMjMyLCAyLCA3NiwgNDEsIAorICAgIDE3LCAxMiwgMjYsIDIyNSwgNSwgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMjI1LCA1LCAyLCA3NiwgNDEsIAorICAgIDE3LCAxMiwgMjYsIDIzNSwgMTEzLCAyLCAxMDgsIDQxLCAxNywgMTIsIDI2LCAyMzUsIDExMywgMiwgMjMzLCAyMjUsIDQxLCAKKyAgICAxNywgMTIsIDI2LCAyMzUsIDExMywgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAyMzUsIDExMywgMiwgMTA4LCAyMzIsIDcxLCAKKyAgICA0MSwgMTcsIDEyLCAyNiwgMjM1LCAxMTMsIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgMjMzLCAyMjUsIDIsIDY0LCA0MSwgMTcsIAorICAgIDEyLCAyNiwgMjMzLCAyMjUsIDIsIDEwOCwgMjMyLCA3MSwgNDEsIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCA3NiwgNDEsIAorICAgIDE3LCAxMiwgMjYsIDY0LCAyLCAxMDgsIDQxLCAxNywgMTIsIDI2LCA2NCwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAyMjgsIAorICAgIDIxNywgMiwgMjI0LCAyNCwgNDEsIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAyLCAyMTIsIDEwMiwgNDEsIDE3LCAxMiwgMjYsIAorICAgIDIyOCwgMjE3LCAyLCA2NCwgNDEsIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAyLCAyMjgsIDIxNywgNDEsIDE3LCAxMiwgMjYsIAorICAgIDIyOCwgMjE3LCAyLCAxMDgsIDIzMiwgNzEsIDQxLCAxNywgMTIsIDI2LCAyMjgsIDIxNywgMiwgNzYsIDQxLCAxNywgMTIsIAorICAgIDI2LCAxMDgsIDIzMiwgNzEsIDIsIDIxOCwgMjM3LCAxMDgsIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgMjI0LCAyNCwgNDEsIAorICAgIDE3LCAxMiwgMjYsIDc2LCAyLCAyMTIsIDEwMiwgNDEsIDE3LCAxMiwgMjYsIDc2LCAyLCA2NCwgNDEsIDE3LCAxMiwgMjYsIAorICAgIDc2LCAyLCAyMjgsIDIxNywgNDEsIDE3LCAxMiwgMjYsIDc2LCAyLCAxMDgsIDIzMiwgNzEsIDQxLCAxNywgMTIsIDI2LCA3NiwgCisgICAgMiwgNzYsIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgMTQ5LCA3MywgMTcsIDEyLCAyNiwgNzYsIDIsIAorICAgIDE5NCwgNzQsIDIsIDEyMywgNzMsIDE3LCAxMiwgMjYsIDc2LCAyLCAxOTQsIDc0LCAyLCAyMzQsIDI0OCwgNzMsIDE3LCAxMiwgCisgICAgMjYsIDc2LCAyLCAxOTQsIDc0LCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDc2LCAyLCAxOTQsIDc0LCAyLCAyNDIsIDY2LCAKKyAgICA3MywgMTcsIDEyLCAyNiwgMjUyLCAxMDEsIDIsIDE0OSwgNzMsIDE3LCAxMiwgMjYsIDI1MiwgMTAxLCAyLCAxMjMsIDczLCAKKyAgICAxNywgMTIsIDI2LCAyNTIsIDEwMSwgMiwgMjM0LCAyNDgsIDczLCAxNywgMTIsIDI2LCAyNTIsIDEwMSwgMiwgNjQsIDczLCAKKyAgICAxNywgMTIsIDI2LCAyNTIsIDEwMSwgMiwgMjQyLCA2NiwgNzMsIDE3LCAxMiwgMjYsIDIxNywgMjI5LCAyLCAxNDksIDczLCAKKyAgICAxNywgMTIsIDI2LCAyMTcsIDIyOSwgMiwgMTIzLCA3MywgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDIzNCwgMjQ4LCA3MywgCisgICAgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDY0LCA3MywgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDI0MiwgNjYsIDczLCAKKyAgICAxNywgMTIsIDI2LCAyMTcsIDE1OSwgMiwgNjQsIDczLCAxNywgMTIsIDI2LCAxNDksIDIsIDEyMywgNzMsIDE3LCAxMiwgMjYsIAorICAgIDE0OSwgMiwgNjQsIDczLCAxNywgMTIsIDI2LCAxMjMsIDIsIDE0OSwgNzMsIDE3LCAxMiwgMjYsIDEyMywgMiwgNjQsIDczLCAKKyAgICAxNywgMTIsIDI2LCAyMzQsIDI0OCwgMiwgMTQ5LCA3MywgMTcsIDEyLCAyNiwgMjM0LCAyNDgsIDIsIDY0LCA3MywgMTcsIAorICAgIDEyLCAyNiwgMjIyLCAxMDksIDIsIDE0OSwgNzMsIDE3LCAxMiwgMjYsIDIyMiwgMTA5LCAyLCAxMjMsIDczLCAxNywgMTIsIAorICAgIDI2LCAyMjIsIDEwOSwgMiwgMjM0LCAyNDgsIDczLCAxNywgMTIsIDI2LCAyMjIsIDEwOSwgMiwgNjQsIDczLCAxNywgMTIsIAorICAgIDI2LCAyMjIsIDIyMSwgMiwgMTIzLCA3MywgMTcsIDEyLCAyNiwgMjIyLCAyMjEsIDIsIDIzNCwgMjQ4LCA3MywgMTcsIDEyLCAKKyAgICAyNiwgMjIyLCAyMjEsIDIsIDY0LCA3MywgMTcsIDEyLCAyNiwgMjQ5LCAyNiwgMiwgMTQ5LCA3MywgMTcsIDEyLCAyNiwgCisgICAgMjQ5LCAyNiwgMiwgMTIzLCA3MywgMTcsIDEyLCAyNiwgMjQ5LCAyNiwgMiwgMjM0LCAyNDgsIDczLCAxNywgMTIsIDI2LCAKKyAgICAyNDksIDI2LCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDIxOCwgNDQsIDIsIDEyMywgNzMsIDE3LCAxMiwgMjYsIDIxMiwgCisgICAgMTA1LCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDI1NCwgMjMyLCAyLCAxNDksIDczLCAxNywgMTIsIDI2LCAyNTQsIDIzMiwgCisgICAgMiwgNjQsIDczLCAxNywgMTIsIDI2LCAyNDMsIDg1LCAyLCAxNDksIDczLCAxNywgMTIsIDI2LCAyNDMsIDg1LCAyLCA2NCwgCisgICAgNzMsIDE3LCAxMiwgMjYsIDI0NCwgMjMyLCAyLCAxNDksIDczLCAxNywgMTIsIDI2LCAyNDQsIDIzMiwgMiwgMTIzLCA3MywgCisgICAgMTcsIDEyLCAyNiwgMjQ0LCAyMzIsIDIsIDIzNCwgMjQ4LCA3MywgMTcsIDEyLCAyNiwgMjQ0LCAyMzIsIDIsIDY0LCA3MywgCisgICAgMTcsIDEyLCAyNiwgMjI1LCA1LCAyLCAxMjMsIDczLCAxNywgMTIsIDI2LCAyMjUsIDUsIDIsIDY0LCA3MywgMTcsIDEyLCAKKyAgICAyNiwgMjM1LCAxMTMsIDIsIDE0OSwgNzMsIDE3LCAxMiwgMjYsIDIzNSwgMTEzLCAyLCAxMjMsIDczLCAxNywgMTIsIDI2LCAKKyAgICAyMzUsIDExMywgMiwgMjM0LCAyNDgsIDczLCAxNywgMTIsIDI2LCAyMzUsIDExMywgMiwgMjMzLCAyMjUsIDczLCAxNywgMTIsIAorICAgIDI2LCAyMzUsIDExMywgMiwgNjQsIDczLCAxNywgMTIsIDI2LCAyMzMsIDIyNSwgMiwgMTQ5LCA3MywgMTcsIDEyLCAyNiwgCisgICAgMjMzLCAyMjUsIDIsIDEyMywgNzMsIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCAyMzQsIDI0OCwgNzMsIDE3LCAxMiwgMjYsIAorICAgIDIzMywgMjI1LCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCAyNDIsIDY2LCA3MywgMTcsIDEyLCAyNiwgCisgICAgNjQsIDIsIDE0OSwgNzMsIDE3LCAxMiwgMjYsIDY0LCAyLCAxMjMsIDczLCAxNywgMTIsIDI2LCA2NCwgMiwgMjM0LCAyNDgsIAorICAgIDczLCAxNywgMTIsIDI2LCA2NCwgMiwgNjQsIDczLCAxNywgMTIsIDI2LCAyMjgsIDIxNywgMiwgMTQ5LCA3MywgMTcsIDEyLCAKKyAgICAyNiwgMjI4LCAyMTcsIDIsIDEyMywgNzMsIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAyLCAyMzQsIDI0OCwgNzMsIDE3LCAxMiwgCisgICAgMjYsIDIyOCwgMjE3LCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAyLCAyNDIsIDY2LCA3MywgMTcsIDEyLCAKKyAgICAyNiwgMjQyLCA2NiwgMiwgMTQ5LCA3MywgMTcsIDEyLCAyNiwgMjQyLCA2NiwgMiwgNjQsIDczLCAxNywgMTIsIDI2LCAyNDIsIAorICAgIDY2LCAyLCAyMTgsIDIzNywgMTA4LCA3MywgMTcsIDEyLCAyNiwgNzYsIDIsIDE0OSwgNzMsIDE3LCAxMiwgMjYsIDc2LCAyLCAKKyAgICAxMjMsIDczLCAxNywgMTIsIDI2LCA3NiwgMiwgMjM0LCAyNDgsIDczLCAxNywgMTIsIDI2LCA3NiwgMiwgNjQsIDczLCAxNywgCisgICAgMTIsIDI2LCA3NiwgMiwgMjQyLCA2NiwgNzMsIDE3LCAxMiwgMjYsIDc2LCAyLCAxOTQsIDc0LCAyLCA2NCwgMTQ0LCAxNywgCisgICAgMTIsIDI2LCA3NiwgMiwgMTk0LCA3NCwgMiwgMjQyLCA2NiwgMTQ0LCAxNywgMTIsIDI2LCAyNTIsIDEwMSwgMiwgNjQsIAorICAgIDE0NCwgMTcsIDEyLCAyNiwgMjUyLCAxMDEsIDIsIDI0MiwgNjYsIDE0NCwgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDY0LCAKKyAgICAxNDQsIDE3LCAxMiwgMjYsIDIxNywgMjI5LCAyLCAyNDIsIDY2LCAxNDQsIDE3LCAxMiwgMjYsIDIxNywgMTU5LCAyLCA2NCwgCisgICAgMTQ0LCAxNywgMTIsIDI2LCAyMTcsIDE1OSwgMiwgMjQyLCA2NiwgMTQ0LCAxNywgMTIsIDI2LCAyMjIsIDEwOSwgMiwgNjQsIAorICAgIDE0NCwgMTcsIDEyLCAyNiwgMjIyLCAxMDksIDIsIDI0MiwgNjYsIDE0NCwgMTcsIDEyLCAyNiwgMjIxLCA1LCAyLCA2NCwgCisgICAgMTQ0LCAxNywgMTIsIDI2LCAyMjEsIDUsIDIsIDI0MiwgNjYsIDE0NCwgMTcsIDEyLCAyNiwgMjM1LCAxMTMsIDIsIDIzMywgCisgICAgMjI1LCAxNDQsIDE3LCAxMiwgMjYsIDIzNSwgMTEzLCAyLCA2NCwgMTQ0LCAxNywgMTIsIDI2LCAyMzMsIDIyNSwgMiwgNjQsIAorICAgIDE0NCwgMTcsIDEyLCAyNiwgMjI4LCAyMTcsIDIsIDY0LCAxNDQsIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAyLCAyNDIsIDY2LCAKKyAgICAxNDQsIDE3LCAxMiwgMjYsIDc2LCAyLCA2NCwgMTQ0LCAxNywgMTIsIDI2LCA3NiwgMiwgMjQyLCA2NiwgMTQ0LCAxNywgMTIsIAorICAgIDI2LCAyMjEsIDM5LCAyLCAyNDQsIDI1NSwgMTQ0LCAxNywgMTIsIDI2LCAyMjEsIDM5LCAyLCAyNDgsIDI1MiwgMTQ0LCAxNywgCisgICAgMTIsIDI2LCAyMjEsIDM5LCAyLCAyMzUsIDY4LCAxNDQsIDE3LCAxMiwgMjYsIDIxOCwgNDQsIDIsIDEwOCwgMjMyLCA3MSwgCisgICAgNDksIDE3LCAxMiwgMjYsIDIxOCwgNDQsIDIsIDc2LCA0OSwgMTcsIDEyLCAyNiwgMjU0LCAyMzIsIDIsIDEwOCwgMjMyLCAKKyAgICA3MSwgNDksIDE3LCAxMiwgMjYsIDI1NCwgMjMyLCAyLCA3NiwgNDksIDE3LCAxMiwgMjYsIDI0MywgODUsIDIsIDEwOCwgCisgICAgMjMyLCA3MSwgNDksIDE3LCAxMiwgMjYsIDI0MywgODUsIDIsIDc2LCA0OSwgMTcsIDEyLCAyNiwgMjIyLCAxMDksIDIsIAorICAgIDEwOCwgMjMyLCA3MSwgNDksIDE3LCAxMiwgMjYsIDIyMiwgMTA5LCAyLCA3NiwgNDksIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgCisgICAgMTA4LCAyMzIsIDcxLCA0OSwgMTcsIDEyLCAyNiwgMjIxLCA1LCAyLCA3NiwgNDksIDE3LCAxMiwgMjYsIDEyMywgMiwgMTA4LCAKKyAgICAyMzIsIDcxLCA0OSwgMTcsIDEyLCAyNiwgMTIzLCAyLCA3NiwgNDksIDE3LCAxMiwgMjYsIDE0OSwgMiwgMTA4LCAyMzIsIAorICAgIDcxLCA0OSwgMTcsIDEyLCAyNiwgMTQ5LCAyLCA3NiwgNDksIDE3LCAxMiwgMjYsIDIzNCwgMjQ4LCAyLCAxMDgsIDIzMiwgCisgICAgNzEsIDQ5LCAxNywgMTIsIDI2LCAyMzQsIDI0OCwgMiwgNzYsIDQ5LCAxNywgMTIsIDI2LCAyMjIsIDIyMSwgMiwgMTA4LCAKKyAgICAyMzIsIDcxLCA0OSwgMTcsIDEyLCAyNiwgMjIyLCAyMjEsIDIsIDc2LCA0OSwgMTcsIDEyLCAyNiwgMjQ5LCAyNiwgMiwgCisgICAgMTA4LCAyMzIsIDcxLCA0OSwgMTcsIDEyLCAyNiwgMjQ5LCAyNiwgMiwgNzYsIDQ5LCAxNywgMTIsIDI2LCAyMjEsIDUsIDIsIAorICAgIDE0OSwgNDksIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgMTIzLCA0OSwgMTcsIDEyLCAyNiwgMjIxLCA1LCAyLCAyMzQsIDI0OCwgCisgICAgNDksIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgNjQsIDQ5LCAxNywgMTIsIDI2LCAyMjEsIDUsIDIsIDIyNCwgMjQsIDQ5LCAKKyAgICAxNywgMTIsIDI2LCAyMjIsIDEwOSwgMiwgMjI0LCAyNCwgNDksIDE3LCAxMiwgMjYsIDIyMiwgMjIxLCAyLCAyMjQsIDI0LCAKKyAgICA0OSwgMTcsIDEyLCAyNiwgMjQ5LCAyNiwgMiwgMjI0LCAyNCwgNDksIDE3LCAxMiwgMjYsIDIxOCwgNDQsIDIsIDEwOCwgCisgICAgMjMyLCA3MSwgNDEsIDE3LCAxMiwgMjYsIDIxOCwgNDQsIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgMjU0LCAyMzIsIDIsIAorICAgIDEwOCwgMjMyLCA3MSwgNDEsIDE3LCAxMiwgMjYsIDI1NCwgMjMyLCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDI0MywgODUsIAorICAgIDIsIDEwOCwgMjMyLCA3MSwgNDEsIDE3LCAxMiwgMjYsIDI0MywgODUsIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgMjIyLCAKKyAgICAxMDksIDIsIDEwOCwgMjMyLCA3MSwgNDEsIDE3LCAxMiwgMjYsIDIyMiwgMTA5LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIAorICAgIDIyMSwgNSwgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMjIxLCA1LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIAorICAgIDEyMywgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMTIzLCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDE0OSwgMiwgCisgICAgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMTQ5LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDIzNCwgMjQ4LCAyLCAKKyAgICAxMDgsIDIzMiwgNzEsIDQxLCAxNywgMTIsIDI2LCAyMzQsIDI0OCwgMiwgNzYsIDQxLCAxNywgMTIsIDI2LCAyMjIsIDIyMSwgCisgICAgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMjIyLCAyMjEsIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgMjQ5LCAKKyAgICAyNiwgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMjQ5LCAyNiwgMiwgNzYsIDQxLCAxNywgMTIsIDI2LCAyMjEsIAorICAgIDUsIDIsIDE0OSwgNDEsIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgMTIzLCA0MSwgMTcsIDEyLCAyNiwgMjIxLCA1LCAyLCAKKyAgICAyMzQsIDI0OCwgNDEsIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAyMjEsIDUsIDIsIDIyNCwgCisgICAgMjQsIDQxLCAxNywgMTIsIDI2LCAyMjIsIDEwOSwgMiwgMjI0LCAyNCwgNDEsIDE3LCAxMiwgMjYsIDIyMiwgMjIxLCAyLCAKKyAgICAyMjQsIDI0LCA0MSwgMTcsIDEyLCAyNiwgMjQ5LCAyNiwgMiwgMjI0LCAyNCwgNDEsIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgCisgICAgMTQ5LCA3MywgMTcsIDEyLCAyNiwgMjIxLCA1LCAyLCAxMjMsIDczLCAxNywgMTIsIDI2LCAyMjEsIDUsIDIsIDIzNCwgMjQ4LCAKKyAgICA3MywgMTcsIDEyLCAyNiwgMjIxLCA1LCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDIyMiwgMTA5LCAyLCAyNDIsIDY2LCA3MywgCisgICAgMTcsIDEyLCAyNiwgMjIxLCA1LCAyLCAyNDIsIDY2LCA3MywgMTcsIDEyLCAyNiwgMjE4LCA0NCwgMiwgNjQsIDczLCAxNywgCisgICAgMTIsIDI2LCAyMjIsIDEwOSwgMiwgMTQ5LCAxNDQsIDE3LCAxMiwgMjYsIDIyMiwgMTA5LCAyLCAxMjMsIDE0NCwgMTcsIDEyLCAKKyAgICAyNiwgMjIyLCAxMDksIDIsIDIzNCwgMjQ4LCAxNDQsIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgMTQ5LCAxNDQsIDE3LCAxMiwgCisgICAgMjYsIDIyMSwgNSwgMiwgMTIzLCAxNDQsIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgMjM0LCAyNDgsIDE0NCwgMTcsIDEyLCAKKyAgICAyNiwgMjE4LCA0NCwgMiwgNjQsIDE0NCwgMTcsIDEyLCAyNiwgMjEyLCAxMDUsIDIsIDY0LCAxNDQsIDE3LCAxMiwgMjYsIAorICAgIDEwOCwgMiwgMjQ0LCAyNTMsIDQxLCAxNywgMTIsIDI2LCAxMDgsIDIsIDI0NCwgMjUzLCA0OSwgMTcsIDIyNywgNTEsIDQzLCAKKyAgICAyMjYsIDE2OCwgMjI3LCA1MSwgNDcsIDIyNiwgMTY4LCAxMiwgMjYsIDIxNywgMjI5LCAyLCAxNDksIDIsIDY0LCA3MywgMTcsIAorICAgIDEyLCAyNiwgMjE3LCAyMjksIDIsIDEyMywgMiwgMTQ5LCA0MSwgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDEyMywgMiwgCisgICAgMTQ5LCA3MywgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDEyMywgMiwgNjQsIDczLCAxNywgMTIsIDI2LCAyMTcsIDIyOSwgCisgICAgMiwgMjM0LCAyNDgsIDIsIDY0LCA3MywgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDY0LCAyLCAxNDksIDczLCAxNywgMTIsIAorICAgIDI2LCAyMTcsIDIyOSwgMiwgNjQsIDIsIDEyMywgNzMsIDE3LCAxMiwgMjYsIDIxNywgMjI5LCAyLCA2NCwgMiwgMjM0LCAKKyAgICAyNDgsIDczLCAxNywgMTIsIDI2LCAxNDksIDIsIDY0LCAyLCAxMjMsIDQxLCAxNywgMTIsIDI2LCAxNDksIDIsIDY0LCAyLCAKKyAgICAxMjMsIDczLCAxNywgMTIsIDI2LCAxMjMsIDIsIDY0LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDEyMywgMiwgNjQsIDIsIAorICAgIDEwOCwgMjMyLCA3MSwgNDEsIDE3LCAxMiwgMjYsIDIyMiwgMTA5LCAyLCAxMjMsIDIsIDE0OSwgNzMsIDE3LCAxMiwgMjYsIAorICAgIDIyMiwgMTA5LCAyLCAxNDksIDIsIDEyMywgNzMsIDE3LCAxMiwgMjYsIDIyMiwgMTA5LCAyLCAxNDksIDIsIDEwOCwgMjMyLCAKKyAgICA3MSwgNDEsIDE3LCAxMiwgMjYsIDIyMiwgMTA5LCAyLCA2NCwgMiwgMTIzLCA0MSwgMTcsIDEyLCAyNiwgMjIyLCAxMDksIDIsIAorICAgIDY0LCAyLCAxMjMsIDczLCAxNywgMTIsIDI2LCAyMjIsIDEwOSwgMiwgNjQsIDIsIDE0OSwgNzMsIDE3LCAxMiwgMjYsIDIyMiwgCisgICAgMTA5LCAyLCA2NCwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAyMjIsIDEwOSwgMiwgNjQsIDIsIDY0LCA3MywgMTcsIDEyLCAKKyAgICAyNiwgMjIyLCAyMjEsIDIsIDEyMywgMiwgMTIzLCA0MSwgMTcsIDEyLCAyNiwgMjIyLCAyMjEsIDIsIDEyMywgMiwgMTIzLCAKKyAgICA3MywgMTcsIDEyLCAyNiwgMjIyLCAyMjEsIDIsIDY0LCAyLCA2NCwgNDEsIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgMTIzLCAKKyAgICAyLCA2NCwgNDEsIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgMTIzLCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgCisgICAgMTQ5LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgNjQsIDIsIDIzNCwgMjQ4LCA0MSwgMTcsIDEyLCAyNiwgCisgICAgMjIxLCA1LCAyLCA2NCwgMiwgMjM0LCAyNDgsIDczLCAxNywgMTIsIDI2LCAyMjEsIDUsIDIsIDY0LCAyLCA2NCwgNDEsIDE3LCAKKyAgICAxMiwgMjYsIDIyMSwgNSwgMiwgNjQsIDIsIDY0LCA3MywgMTcsIDEyLCAyNiwgMjQ5LCAyNiwgMiwgMTIzLCAyLCAxMDgsIAorICAgIDIzMiwgNzEsIDQxLCAxNywgMTIsIDI2LCAyNDksIDI2LCAyLCAyMzQsIDI0OCwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAKKyAgICAyNDksIDI2LCAyLCAyMzQsIDI0OCwgMiwgNjQsIDczLCAxNywgMTIsIDI2LCAyMTgsIDQ0LCAyLCA2NCwgMiwgMTIzLCA0MSwgCisgICAgMTcsIDEyLCAyNiwgMjE4LCA0NCwgMiwgNjQsIDIsIDEyMywgNzMsIDE3LCAxMiwgMjYsIDIxOCwgNDQsIDIsIDY0LCAyLCAKKyAgICA2NCwgNzMsIDE3LCAxMiwgMjYsIDIxOCwgNDQsIDIsIDY0LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDI1NCwgMjMyLCAyLCAKKyAgICAxNDksIDIsIDY0LCA0MSwgMTcsIDEyLCAyNiwgMjU0LCAyMzIsIDIsIDY0LCAyLCA2NCwgNDEsIDE3LCAxMiwgMjYsIDI1NCwgCisgICAgMjMyLCAyLCA2NCwgMiwgNjQsIDczLCAxNywgMTIsIDI2LCAyNTQsIDIzMiwgMiwgNjQsIDIsIDEwOCwgMjMyLCA3MSwgNDEsIAorICAgIDE3LCAxMiwgMjYsIDI0MywgODUsIDIsIDY0LCAyLCA2NCwgNDEsIDE3LCAxMiwgMjYsIDI0MywgODUsIDIsIDY0LCAyLCA3NiwgCisgICAgNDEsIDE3LCAxMiwgMjYsIDI0MywgODUsIDIsIDY0LCAyLCAxMDgsIDIzMiwgNzEsIDQxLCAxNywgMTIsIDI2LCAyNDQsIAorICAgIDIzMiwgMiwgMjM0LCAyNDgsIDIsIDY0LCA0MSwgMTcsIDEyLCAyNiwgMjQ0LCAyMzIsIDIsIDIzNCwgMjQ4LCAyLCA2NCwgCisgICAgNzMsIDE3LCAxMiwgMjYsIDIyNSwgNSwgMiwgNjQsIDIsIDEyMywgNDEsIDE3LCAxMiwgMjYsIDIyNSwgNSwgMiwgNjQsIDIsIAorICAgIDY0LCA0MSwgMTcsIDEyLCAyNiwgMjMzLCAyMjUsIDIsIDEyMywgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAyMzMsIDIyNSwgMiwgCisgICAgMTIzLCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCAxMjMsIDIsIDEwOCwgMjMyLCA3MSwgNDEsIDE3LCAKKyAgICAxMiwgMjYsIDIzMywgMjI1LCAyLCAxNDksIDIsIDE0OSwgNzMsIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCAxNDksIDIsIAorICAgIDE0OSwgNDEsIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCAyMzQsIDI0OCwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAyMzMsIAorICAgIDIyNSwgMiwgMjM0LCAyNDgsIDIsIDY0LCA3MywgMTcsIDEyLCAyNiwgMjMzLCAyMjUsIDIsIDY0LCAyLCAxMjMsIDQxLCAxNywgCisgICAgMTIsIDI2LCAyMzMsIDIyNSwgMiwgNjQsIDIsIDEyMywgNzMsIDE3LCAxMiwgMjYsIDY0LCAyLCAxMjMsIDIsIDE0OSwgNzMsIAorICAgIDE3LCAxMiwgMjYsIDY0LCAyLCAxMjMsIDIsIDY0LCA3MywgMTcsIDEyLCAyNiwgNjQsIDIsIDEyMywgMiwgNzYsIDQxLCAxNywgCisgICAgMTIsIDI2LCA2NCwgMiwgMTQ5LCAyLCAxMjMsIDczLCAxNywgMTIsIDI2LCA2NCwgMiwgMTQ5LCAyLCA2NCwgNzMsIDE3LCAKKyAgICAxMiwgMjYsIDY0LCAyLCAyMzQsIDI0OCwgMiwgMTQ5LCA3MywgMTcsIDEyLCAyNiwgNjQsIDIsIDIzNCwgMjQ4LCAyLCA2NCwgCisgICAgNzMsIDE3LCAxMiwgMjYsIDY0LCAyLCAxNDksIDIsIDIzNCwgMjQ4LCA3MywgMTcsIDEyLCAyNiwgMjQyLCA2NiwgMiwgNjQsIAorICAgIDIsIDE0OSwgNzMsIDE3LCAxMiwgMjYsIDI0MiwgNjYsIDIsIDY0LCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAKKyAgICAyLCAxMjMsIDIsIDY0LCA3MywgMTcsIDEyLCAyNiwgMjI4LCAyMTcsIDIsIDEyMywgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIAorICAgIDEyLCAyNiwgMjI4LCAyMTcsIDIsIDE0OSwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAyMjgsIDIxNywgMiwgMTQ5LCAyLCA2NCwgCisgICAgNzMsIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAyLCAxNDksIDIsIDEwOCwgMjMyLCA3MSwgNDEsIDE3LCAxMiwgMjYsIDIyOCwgCisgICAgMjE3LCAyLCA2NCwgMiwgNzYsIDQxLCAxNywgMTIsIDI2LCAyMjgsIDIxNywgMiwgNjQsIDIsIDEwOCwgMjMyLCA3MSwgNDEsIAorICAgIDE3LCAxMiwgMjYsIDc2LCAyLCA2NCwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCA3NiwgMiwgNjQsIDIsIDY0LCA3MywgMTcsIAorICAgIDEyLCAyNiwgMjUyLCAxMDEsIDIsIDIzNCwgMjQ4LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDIxNywgMjI5LCAyLCAxNDksIAorICAgIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDE0OSwgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgCisgICAgMjE3LCAyMjksIDIsIDIzNCwgMjQ4LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDIxNywgMjI5LCAyLCAyMzQsIDI0OCwgMiwgCisgICAgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMjE3LCAyMjksIDIsIDY0LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIAorICAgIDIxNywgMjI5LCAyLCA2NCwgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMTQ5LCAyLCA2NCwgMiwgNzYsIDQxLCAKKyAgICAxNywgMTIsIDI2LCAxNDksIDIsIDEyMywgMiwgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMTQ5LCAyLCA2NCwgMiwgCisgICAgMTA4LCAyMzIsIDcxLCA0MSwgMTcsIDEyLCAyNiwgMjIyLCAxMDksIDIsIDIzNCwgMjQ4LCAyLCAxMDgsIDIzMiwgNzEsIDQxLCAKKyAgICAxNywgMTIsIDI2LCAyMjIsIDIyMSwgMiwgMTIzLCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDIyMSwgNSwgMiwgMTIzLCAyLCAKKyAgICA3NiwgNDEsIDE3LCAxMiwgMjYsIDI0OSwgMjYsIDIsIDEyMywgMiwgNzYsIDQxLCAxNywgMTIsIDI2LCAyMzMsIDIyNSwgMiwgCisgICAgMTQ5LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCA2NCwgMiwgNzYsIDQxLCAxNywgMTIsIDI2LCA3NiwgCisgICAgMiwgMTIzLCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDc2LCAyLCAxNDksIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgNzYsIDIsIAorICAgIDY0LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDY0LCAyLCA2NCwgMiwgNzYsIDQxLCAxNywgMTIsIDI2LCAyMjUsIDUsIDIsIAorICAgIDY0LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAyLCAxMjMsIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgMjI1LCAKKyAgICA1LCAyLCA2NCwgMiwgMTIzLCA3MywgMTcsIDEyLCAyNiwgMjMzLCAyMjUsIDIsIDEyMywgMiwgNjQsIDczLCAxNywgMTIsIAorICAgIDI2LCAyNTQsIDIzMiwgMiwgNjQsIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgMjM1LCAxMTMsIDIsIDY0LCAyLCA3NiwgNDEsIAorICAgIDE3LCAxMiwgMjYsIDIyOCwgMjE3LCAyLCAxNDksIDIsIDEyMywgNzMsIDE3LCAxMiwgMjYsIDY0LCAyLCAyMzQsIDI0OCwgMiwgCisgICAgNzYsIDQxLCAxNywgMTIsIDI2LCAyMzMsIDIyNSwgMiwgMTQ5LCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDIzNSwgMTEzLCAyLCAKKyAgICA2NCwgMiwgNjQsIDQxLCAxNywgMTIsIDI2LCAyMzMsIDIyNSwgMiwgMTQ5LCAyLCA2NCwgNDEsIDE3LCAxMiwgMjYsIDIyOCwgCisgICAgMjE3LCAyLCAxNDksIDIsIDEyMywgNDEsIDE3LCAxMiwgMjYsIDE0OSwgMiwgMTIzLCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIAorICAgIDEyMywgMiwgMTQ5LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDY0LCAyLCAxNDksIDIsIDc2LCA0MSwgMTcsIDEyLCAyNiwgCisgICAgMjQ0LCAyMzIsIDIsIDY0LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDI1MiwgMTAxLCAyLCAxMjMsIDIsIDc2LCA0MSwgMTcsIAorICAgIDEyLCAyNiwgMjM1LCAxMTMsIDIsIDY0LCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDI1NCwgMjMyLCAyLCAxNDksIDIsIDY0LCAKKyAgICA3MywgMTcsIDEyLCAyNiwgMjIyLCAyMjEsIDIsIDY0LCAyLCA2NCwgNzMsIDE3LCAxMiwgMjYsIDIyMiwgMTA5LCAyLCAyMzQsIAorICAgIDI0OCwgMiwgNzYsIDQxLCAxNywgMTIsIDI2LCAyMjgsIDIxNywgMiwgMTQ5LCAyLCA3NiwgNDEsIDE3LCAxMiwgMjYsIDIyMiwgCisgICAgMTk5LCAyMTUsIDEwOCwgMjU0LCAyNCwgMjM0LCAxMjQsIDIxOSwgODQsIDUsIDQ5LCAxNywgMTIsIDI2LCAyMjUsIDEsIAorICAgIDIxNSwgMTA4LCAyNTQsIDI0LCAyMzQsIDEyNCwgMjE5LCA4NCwgNSwgNDksIDE3LCAxMiwgMjYsIDI1NCwgMTg5LCA0OSwgCisgICAgMTcsIDEyLCAyNiwgMjU0LCAyMTgsIDQ5LCAxNywgMTIsIDI2LCAyMzEsIDM3LCA0OSwgMTcsIDEyLCAyNiwgMjIyLCAyMDAsIAorICAgIDQ5LCAxNywgMTIsIDI2LCAyMjQsIDcwLCA0OSwgMTcsIDEyLCAyNiwgMjU0LCAyMDcsIDQ5LCAxNywgMTIsIDI2LCAyMTQsIAorICAgIDM2LCA0OSwgMTcsIDEyLCAyNiwgMjIyLCAxOTksIDQ5LCAxNywgMTIsIDI2LCAyMjIsIDE5OCwgMjU0LCAyMDcsIDIxNCwgCisgICAgMzUsIDEyLCAyNiwgMjM1LCAyNTAsIDIyMywgMjIxLCA1MywgMTIsIDI2LCAyNTIsIDIyLCAyNTQsIDgwLCAyNTQsIDgxLCAKKyAgICA0NCwgMjIyLCA5OSwgNDQsIDIyMSwgMjQ0LCA0NCwgMjIxLCAxNzYsIDQ0LCAyMjEsIDE2NSwgNDQsIDIyMSwgMTU0LCA0NCwgCisgICAgMjIxLCAxNDMsIDQ0LCAyMjEsIDEzMiwgNDQsIDIyMSwgMTIxLCA0NCwgMjIxLCAxMTAsIDQ0LCAyMjIsIDk4LCA0NCwgMjIyLCAKKyAgICA4NywgNDQsIDIyMiwgNzYsIDQ0LCAyMjIsIDY1LCA0NCwgMjIyLCA1NCwgNDQsIDIyMiwgNDMsIDQ0LCAyMjIsIDMyLCAyMjUsIAorICAgIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgMjUwLCAyMywgMjI1LCAxMTAsIDI0NCwgMTA5LCAzMSwgNjYsIDEwNywgMjUwLCAyMywgCisgICAgMjI1LCAxMTAsIDI0NCwgMTA5LCAzMSwgNjYsIDEwNywgMjQ0LCA2NCwgMjE5LCA4MywgMjI1LCAxMTAsIDI0NCwgMTA5LCAKKyAgICAzMSwgNjYsIDI1MCwgMzAsIDIyNSwgMTEwLCAyNDQsIDEwOSwgMzEsIDY2LCAyMjEsIDkzLCAyMjUsIDExMCwgMjQ0LCAxMDksIAorICAgIDMxLCA2NiwgMjQ1LCAxMTksIDc5LCAyMjUsIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgMjI0LCAxOTMsIDc5LCAyMjUsIDExMCwgCisgICAgMjQ0LCAxMDksIDMxLCA2NiwgNDMsIDY5LCAyMzMsIDE0MiwgMTI1LCAyMjUsIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgNDcsIAorICAgIDY5LCAyMzMsIDE0MiwgMjUxLCAyMDgsIDIyNSwgMTEwLCAyNDQsIDEwOSwgMzEsIDY2LCAyMDEsIDI0NSwgMjQxLCAzOCwgCisgICAgMjYsIDQzLCAyNDIsIDEyOSwgMzgsIDI2LCA0NywgMjQyLCAxMjksIDM4LCA1MiwgMjE3LCA1NiwgNDMsIDI0MiwgMTI5LCAKKyAgICAzOCwgNTIsIDIxNywgNTYsIDQ3LCAyNDIsIDEyOSwgMzgsIDIzMiwgMTExLCA0MywgMjQyLCAxMjksIDM4LCAyMzIsIDExMSwgCisgICAgNDcsIDI0MiwgMTI5LCAzOCwgMjUwLCAzLCAyMzIsIDExMCwgMjI1LCAxMTAsIDI0NCwgMTA5LCAzMSwgNjYsIDExOSwgNjIsIAorICAgIDIzMywgMTc4LCAyMjUsIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgMjQ1LCAyMzksIDI0OCwgMjIzLCAyMjUsIDExMCwgMjQ0LCAKKyAgICAxMDksIDMxLCA2NiwgMjQ1LCAyMzAsIDI0OCwgMjIzLCAyMjUsIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgMTE3LCAyMzMsIAorICAgIDgzLCAyMjUsIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgMjE0LCAxOSwgMTE3LCAyMzMsIDgzLCAyMjUsIDExMCwgMjQ0LCAKKyAgICAxMDksIDMxLCA2NiwgNDMsIDIyNiwgMTY4LCAyMjUsIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgNDcsIDIyNiwgMTY4LCAyMjUsIAorICAgIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgNDMsIDI0OSwgMTYzLCAxMjUsIDIyNSwgMTEwLCAyNDQsIDEwOSwgMzEsIDY2LCA0NywgCisgICAgMjQ5LCAxNjMsIDEyNSwgMjI1LCAxMTAsIDI0NCwgMTA5LCAzMSwgNjYsIDQzLCAyMTYsIDIzMiwgMjIwLCAyNTQsIDEyNSwgCisgICAgMjI1LCAxMTAsIDI0NCwgMTA5LCAzMSwgNjYsIDQ3LCAyMTYsIDIzMiwgMjIwLCAyNTQsIDEyNSwgMjI1LCAxMTAsIDI0NCwgCisgICAgMTA5LCAzMSwgNjYsIDQzLCA4NSwgMjMzLCAxNDIsIDEyNSwgMjI1LCAxMTAsIDI0NCwgMTA5LCAzMSwgNjYsIDQ3LCA4NSwgCisgICAgMjMzLCAxNDIsIDEyNSwgMjI1LCAxMTAsIDI0NCwgMTA5LCAzMSwgNjYsIDQzLCA1MiwgMjU0LCAxNDYsIDEyNSwgMjI1LCAKKyAgICAxMTAsIDI0NCwgMTA5LCAzMSwgNjYsIDQ3LCA1MiwgMjU0LCAxNDYsIDEyNSwgMjI1LCAxMTAsIDI0NCwgMTA5LCAzMSwgNjYsIAorICAgIDQzLCAyNTQsIDE0NiwgMTI1LCAyMjUsIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgNDcsIDI1NCwgMTQ2LCAxMjUsIDIyNSwgCisgICAgMTEwLCAyNDQsIDEwOSwgMzEsIDY2LCA0MywgMjQ5LCAyMjMsIDEyNSwgMjI1LCAxMTAsIDI0NCwgMTA5LCAzMSwgNjYsIDQ3LCAKKyAgICAyNDksIDIyMywgMTI1LCAyMjUsIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgNDMsIDY5LCAyNDksIDIyMywgMTI1LCAyMjUsIAorICAgIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgNDcsIDY5LCAyNDksIDIyMywgMTI1LCAyMjEsIDc1LCAyNDcsIDE5NSwgNjksIDIyMSwgCisgICAgNzUsIDI0NywgMTk1LCAyMjUsIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgNDMsIDQyLCAxMjUsIDIyNSwgMTEwLCAyNDQsIAorICAgIDEwOSwgMzEsIDY2LCA0NywgNDIsIDEyNSwgMjQ4LCAyMjIsIDIyNywgMjUsIDI1MCwgMjI5LCAyMjcsIDI1LCAyMTQsIDE5LCAKKyAgICAyMjcsIDI1LCA1MiwgMjE0LCAxOSwgMjI3LCAyNSwgMjQ4LCAyMjIsIDExNywgMjMzLCA4MywgMjUwLCAyMjksIDExNywgCisgICAgMjMzLCA4MywgMjE0LCAxOSwgMTE3LCAyMzMsIDgzLCA0LCAyNTAsIDIzLCA0LCAxMDcsIDI1MCwgMjMsIDQsIDI0NCwgNjQsIAorICAgIDIxOSwgODMsIDQsIDIyMSwgOTMsIDQsIDI1MCwgMzAsIDQsIDIyNCwgMTkzLCA3OSwgNCwgMjQ1LCAxMTksIDc5LCA0LCAKKyAgICAyNDUsIDIzOSwgMjQ4LCAyMjMsIDQsIDQzLCAyMjYsIDE2OCwgNCwgNDcsIDIyNiwgMTY4LCA0LCA0MywgMjQ5LCAxNjMsIAorICAgIDEyNSwgNCwgNDcsIDI0OSwgMTYzLCAxMjUsIDQsIDQzLCAyMTYsIDIzMiwgMjIwLCAyNTQsIDEyNSwgNCwgNDcsIDIxNiwgCisgICAgMjMyLCAyMjAsIDI1NCwgMTI1LCA0LCA1MSwgNTMsIDQsIDI1NCwgMTYyLCA0LCAyNTQsIDMsIDQsIDk1LCA1MywgNCwgMjQxLCAKKyAgICAyMCwgNCwgMjMzLCAxMzcsIDUzLCA0LCAyNDIsIDIyOCwgNTMsIDQsIDI0NSwgMTgyLCA1MywgNCwgMjIzLCAyMzcsIDIxOSwgCisgICAgMjUwLCA0LCAyNDcsIDIwNywgNTMsIDQsIDIyNiwgOTMsIDUzLCA0LCAyNTAsIDIyLCAyNTMsIDI0OSwgMTIsIDI0NCwgMjUzLCAKKyAgICA0OSwgMTcsIDEyLCAyMTgsIDgsIDIsIDI0NCwgMjUzLCA1MCwgMTIsIDI0OCwgMjUwLCA0OSwgMTcsIDEyLCAyMTgsIDQxLCAKKyAgICAyNDQsIDkxLCAxMiwgMjM1LCA2NiwgNDksIDE3LCAxMiwgMjQ0LCAyNTUsIDQ5LCAxNywgMTIsIDI0NCwgMjU1LCAxNDQsIAorICAgIDE3LCAxMiwgMjQ4LCAyNTIsIDQ5LCAxNywgMTIsIDI0OCwgMjUyLCAxNDQsIDE3LCAxMiwgMjM1LCA2OCwgNDksIDE3LCAxMiwgCisgICAgMjM1LCA2OCwgMTQ0LCAxNywgMTIsIDIyMSwgMzksIDQ5LCAxNywgMTIsIDIyMSwgMzksIDE0NCwgMTcsIDEyLCAyMTksIDUsIAorICAgIDQ5LCAxNywgMTIsIDIxOSwgNSwgMTQ0LCAxNywgMTIsIDEsIDE5NCwgNDksIDE3LCAxMiwgMSwgMTA4LCAyLCAyMzIsIDEwNiwgCisgICAgNzQsIDQ5LCAxNywgMTIsIDEsIDEwOCwgMiwgMjMyLCAxMDYsIDc0LCA0MSwgMTcsIDEyLCAxLCAxMDgsIDIsIDE5NCwgNzQsIAorICAgIDQ5LCAxNywgMTIsIDEsIDEwOCwgMiwgMTk0LCA3NCwgNDEsIDE3LCAxMiwgMSwgMjE0LCAxOCwgMiwgMTk0LCA3NCwgNDksIAorICAgIDE3LCAxMiwgMSwgMjE0LCAxOCwgMiwgMTk0LCA3NCwgNDEsIDE3LCAxMiwgMSwgMTA4LCAyLCAxOTQsIDI1MiwgOTAsIDQ5LCAKKyAgICAxNywgMTIsIDEsIDEwOCwgMiwgMTk0LCAyNTIsIDkwLCA0MSwgMTcsIDEyLCAxLCA3NiwgMiwgMTk0LCA3NCwgNDksIDE3LCAKKyAgICAxMiwgMSwgNzYsIDIsIDE5NCwgNzQsIDQxLCAxNywgMTIsIDEsIDc2LCAyLCAxOTQsIDc0LCA3MywgMTcsIDEyLCAxLCA3NiwgCisgICAgMiwgMTk0LCA3NCwgMTQ0LCAxNywgMTIsIDEsIDEwOCwgNDksIDE3LCAxMiwgMSwgMTA4LCA0MSwgMTcsIDEyLCAxLCAyNTIsIAorICAgIDEwMSwgNDksIDE3LCAxMiwgMSwgMjUyLCAxMDEsIDQxLCAxNywgMTIsIDEsIDI1MiwgMTAxLCA3MywgMTcsIDEyLCAxLCAKKyAgICAyNTIsIDEwMSwgMTQ0LCAxNywgMTIsIDEsIDIxNywgMjI5LCAyMzIsIDQzLCA0OSwgMTcsIDEyLCAxLCAyMTcsIDIyOSwgCisgICAgMjMyLCA0MywgNDEsIDE3LCAxMiwgMSwgMjE3LCAyMjksIDQ5LCAxNywgMTIsIDEsIDIxNywgMjI5LCA0MSwgMTcsIDEyLCAxLCAKKyAgICAyMTcsIDIyOSwgNzMsIDE3LCAxMiwgMSwgMjE3LCAyMjksIDE0NCwgMTcsIDEyLCAxLCAyMTcsIDE1OSwgNDksIDE3LCAxMiwgCisgICAgMSwgMjE3LCAxNTksIDQxLCAxNywgMTIsIDEsIDIxNywgMTU5LCA3MywgMTcsIDEyLCAxLCAyMTcsIDE1OSwgMTQ0LCAxNywgCisgICAgMTIsIDEsIDE0OSwgNDksIDE3LCAxMiwgMSwgMTQ5LCA0MSwgMTcsIDEyLCAxLCAxNDksIDczLCAxNywgMTIsIDEsIDE0OSwgCisgICAgMTQ0LCAxNywgMTIsIDEsIDEyMywgNDksIDE3LCAxMiwgMSwgMTIzLCA0MSwgMTcsIDEyLCAxLCAxMjMsIDczLCAxNywgMTIsIAorICAgIDEsIDEyMywgMTQ0LCAxNywgMTIsIDEsIDIzNCwgMjQ4LCA0OSwgMTcsIDEyLCAxLCAyMzQsIDI0OCwgNDEsIDE3LCAxMiwgMSwgCisgICAgMjM0LCAyNDgsIDczLCAxNywgMTIsIDEsIDIzNCwgMjQ4LCAxNDQsIDE3LCAxMiwgMSwgMjQ5LCA3LCA0OSwgMTcsIDEyLCAxLCAKKyAgICAyNDksIDcsIDQxLCAxNywgMTIsIDEsIDIxNywgMTY5LCA0OSwgMTcsIDEyLCAxLCAyMTcsIDE2OSwgNDEsIDE3LCAxMiwgMSwgCisgICAgMjI0LCAyNCwgNDksIDE3LCAxMiwgMSwgMjI0LCAyNCwgNDEsIDE3LCAxMiwgMSwgMjEyLCAxMDIsIDQ5LCAxNywgMTIsIDEsIAorICAgIDIxMiwgMTAyLCA0MSwgMTcsIDEyLCAxLCAyMjIsIDEwOSwgNDksIDE3LCAxMiwgMSwgMjIyLCAxMDksIDQxLCAxNywgMTIsIAorICAgIDEsIDIyMiwgMTA5LCA3MywgMTcsIDEyLCAxLCAyMjIsIDEwOSwgMTQ0LCAxNywgMTIsIDEsIDIyMSwgNSwgNDksIDE3LCAxMiwgCisgICAgMSwgMjIxLCA1LCA0MSwgMTcsIDEyLCAxLCAyMjEsIDUsIDczLCAxNywgMTIsIDEsIDIyMSwgNSwgMTQ0LCAxNywgMTIsIDEsIAorICAgIDIyMiwgMjIxLCA0OSwgMTcsIDEyLCAxLCAyMjIsIDIyMSwgNDEsIDE3LCAxMiwgMSwgMjIyLCAyMjEsIDczLCAxNywgMTIsIAorICAgIDEsIDIyMiwgMjIxLCAxNDQsIDE3LCAxMiwgMSwgMjQ5LCAyNiwgNDksIDE3LCAxMiwgMSwgMjQ5LCAyNiwgNDEsIDE3LCAxMiwgCisgICAgMSwgMjQ5LCAyNiwgNzMsIDE3LCAxMiwgMSwgMjQ5LCAyNiwgMTQ0LCAxNywgMTIsIDEsIDIxOCwgNDQsIDQ5LCAxNywgMTIsIAorICAgIDEsIDIxOCwgNDQsIDQxLCAxNywgMTIsIDEsIDIxOCwgNDQsIDczLCAxNywgMTIsIDEsIDIxOCwgNDQsIDE0NCwgMTcsIDEyLCAKKyAgICAxLCAyMTIsIDEwNSwgNDksIDE3LCAxMiwgMSwgMjEyLCAxMDUsIDQxLCAxNywgMTIsIDEsIDIxMiwgMTA1LCA3MywgMTcsIAorICAgIDEyLCAxLCAyMTIsIDEwNSwgMTQ0LCAxNywgMTIsIDEsIDI1NCwgMjMyLCA0OSwgMTcsIDEyLCAxLCAyNTQsIDIzMiwgNDEsIAorICAgIDE3LCAxMiwgMSwgMjU0LCAyMzIsIDczLCAxNywgMTIsIDEsIDI1NCwgMjMyLCAxNDQsIDE3LCAxMiwgMSwgMjQzLCA4NSwgCisgICAgNDksIDE3LCAxMiwgMSwgMjQzLCA4NSwgNDEsIDE3LCAxMiwgMSwgMjQzLCA4NSwgNzMsIDE3LCAxMiwgMSwgMjQzLCA4NSwgCisgICAgMTQ0LCAxNywgMTIsIDEsIDI0NCwgMjMyLCA0OSwgMTcsIDEyLCAxLCAyNDQsIDIzMiwgNDEsIDE3LCAxMiwgMSwgMjQ0LCAKKyAgICAyMzIsIDczLCAxNywgMTIsIDEsIDI0NCwgMjMyLCAxNDQsIDE3LCAxMiwgMSwgMjI1LCA1LCA0OSwgMTcsIDEyLCAxLCAyMjUsIAorICAgIDUsIDQxLCAxNywgMTIsIDEsIDIyNSwgNSwgNzMsIDE3LCAxMiwgMSwgMjI1LCA1LCAxNDQsIDE3LCAxMiwgMSwgMjM1LCAKKyAgICAxMTMsIDQ5LCAxNywgMTIsIDEsIDIzNSwgMTEzLCA0MSwgMTcsIDEyLCAxLCAyMzUsIDExMywgNzMsIDE3LCAxMiwgMSwgCisgICAgMjM1LCAxMTMsIDE0NCwgMTcsIDEyLCAxLCAyMzMsIDIyNSwgNDksIDE3LCAxMiwgMSwgMjMzLCAyMjUsIDQxLCAxNywgMTIsIAorICAgIDEsIDIzMywgMjI1LCA3MywgMTcsIDEyLCAxLCAyMzMsIDIyNSwgMTQ0LCAxNywgMTIsIDEsIDY0LCA0OSwgMTcsIDEyLCAxLCAKKyAgICA2NCwgNDEsIDE3LCAxMiwgMSwgNjQsIDczLCAxNywgMTIsIDEsIDY0LCAxNDQsIDE3LCAxMiwgMSwgMjI4LCAyMTcsIDQ5LCAKKyAgICAxNywgMTIsIDEsIDIyOCwgMjE3LCA0MSwgMTcsIDEyLCAxLCAyMjgsIDIxNywgNzMsIDE3LCAxMiwgMSwgMjI4LCAyMTcsIAorICAgIDE0NCwgMTcsIDEyLCAxLCAyNDIsIDY2LCA0OSwgMTcsIDEyLCAxLCAyNDIsIDY2LCA0MSwgMTcsIDEyLCAxLCAyNDIsIDY2LCAKKyAgICA3MywgMTcsIDEyLCAxLCAyNDIsIDY2LCAxNDQsIDE3LCAxMiwgMSwgMjE0LCAxOCwgNDksIDE3LCAxMiwgMSwgMjE0LCAxOCwgCisgICAgNDEsIDE3LCAxMiwgMSwgMTA4LCAyMzIsIDcxLCA0OSwgMTcsIDEyLCAxLCAxMDgsIDIzMiwgNzEsIDQxLCAxNywgMTIsIDEsIAorICAgIDc2LCA0OSwgMTcsIDEyLCAxLCA3NiwgNDEsIDE3LCAxMiwgMSwgNzYsIDczLCAxNywgMTIsIDEsIDc2LCAxNDQsIDE3LCAxMiwgCisgICAgMjYsIDIzMywgMjI1LCAyLCAxMDgsIDIsIDIzMiwgMTA2LCA3NCwgNDksIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCAxMDgsIAorICAgIDIsIDIzMiwgMTA2LCA3NCwgNDEsIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCAxMDgsIDIsIDE5NCwgNzQsIDQ5LCAxNywgCisgICAgMTIsIDI2LCAyMzMsIDIyNSwgMiwgMTA4LCAyLCAxOTQsIDc0LCA0MSwgMTcsIDEyLCAyNiwgMjMzLCAyMjUsIDIsIDEwOCwgCisgICAgMiwgMTk0LCAyNTIsIDkwLCA0OSwgMTcsIDEyLCAyNiwgMjMzLCAyMjUsIDIsIDEwOCwgMiwgMTk0LCAyNTIsIDkwLCA0MSwgCisgICAgMTcsIDEyLCAyNiwgMjMzLCAyMjUsIDIsIDEwOCwgNDksIDE3LCAxMiwgMjYsIDIzMywgMjI1LCAyLCAxMDgsIDQxLCAxNywgCisgICAgMjEyLCA4MCwgMjEzLCAyMzMsIDIyOCwgMjI3LCAyMTksIDIyNSwgMTIyLCAyNDUsIDExOSwgNzksIDEyMiwgMjI0LCAxNzgsIAorICAgIDc5LCAxMjIsIDUxLCA1MywgMTIyLCAyNDcsIDIwNywgNTMsIDEyMiwgMjI2LCA5MywgNTMsIDEyMiwgMjU0LCAxNjIsIDEyMiwgCisgICAgMjU0LCA5NywgMTIyLCA0MywgMjI2LCAxNjgsIDEyMiwgNDcsIDIyNiwgMTY4LCAxMjIsIDI1NCwgMywgMTIyLCA5NSwgNTMsIAorICAgIDEyMiwgMjUwLCAyMywgMTIyLCAyNDEsIDIwLCAxMjIsIDI0NCwgNjQsIDIxOSwgODMsIDEyMiwgMjE5LCAyNTAsIDEyMiwgCisgICAgMjEsIDIxMiwgNzksIDEyMiwgMjEsIDExOCwgMTIyLCAyMSwgMTEyLCAxMjIsIDIxLCAxNzAsIDEyMiwgMjEsIDE2NywgMTIyLCAKKyAgICAyMSwgMTg1LCAxMjIsIDIxLCAxOTIsIDEyMiwgMjEsIDIwMCwgMTIyLCAyMSwgMTk4LCAxMjIsIDIxLCAyMDMsIDEyMiwgCisgICAgMjUwLCAzMCwgMTIyLCAyMjEsIDkzLCAxMjIsIDIzMywgMTM3LCA1MywgMTIyLCAyNDUsIDE4MiwgNTMsIDEyMiwgMjQyLCAKKyAgICAyMjgsIDUzLCAxMjIsIDIyNCwgMTkzLCA3OSwgMTIyLCAyNTAsIDIyLCAyNTMsIDI0OSwgMTIyLCA3LCA2LCAxLCA2MywgCisgICAgMTIyLCA3LCA2LCAxLCAyNTMsIDIwMSwgMTIyLCA3LCA2LCAxLCAyNTEsIDEyMSwgMTIyLCA3LCA2LCAxLCAyNDksIDEyNSwgCisgICAgMTIyLCA3LCA2LCAxLCA3NywgMTIyLCA3LCA2LCAxLCAyNDUsIDk1LCAxMjIsIDcsIDYsIDEsIDI0NCwgNDEsIDEyMiwgNywgCisgICAgNiwgMSwgMjQyLCAxNjIsIDEyMiwgNywgNiwgMSwgNzUsIDEyMiwgNywgNiwgMSwgMjM2LCAzLCAxMjIsIDcsIDYsIDEsIAorICAgIDIzNSwgMTQxLCAxMjIsIDcsIDYsIDEsIDE1NSwgMTIyLCA3LCA2LCAxLCAxODQsIDEyMiwgNywgNiwgMSwgMjA2LCAxMjIsIAorICAgIDcsIDYsIDEsIDc4LCAxMjIsIDcsIDYsIDEsIDIyNywgMTEsIDEyMiwgNywgNiwgMSwgMjI1LCAxOSwgMTIyLCA3LCA2LCAxLCAKKyAgICAxNTIsIDEyMiwgNywgNiwgMSwgMTk2LCAxMjIsIDcsIDYsIDEsIDIxOCwgMTEzLCAxMjIsIDcsIDYsIDEsIDcyLCAxMjIsIDcsIAorICAgIDYsIDEsIDIxMSwgMjExLCAxMjIsIDcsIDYsIDEsIDIxNCwgODUsIDEyMiwgNywgNiwgMSwgMjEzLCAxNjksIDEyMiwgNywgNiwgCisgICAgMSwgMjEzLCAxMDgsIDEyMiwgNywgNiwgMSwgMjEyLCAxNTIsIDEyMiwgNDMsIDQyLCAxMjUsIDEyMiwgMjIzLCAyMzcsIAorICAgIDIxOSwgMjUwLCAxMjIsIDQ3LCA0MiwgMTI1LCAxMjIsIDI1MCwgOTEsIDI1NSwgNDYsIDEyMiwgMTE3LCAyMzMsIDgzLCAKKyAgICAxMjIsIDI0MiwgMjM0LCAyNTUsIDQ2LCAxMjIsIDcsIDQsIDEsIDYzLCAxMjIsIDcsIDQsIDEsIDI1MywgMjAxLCAxMjIsIDcsIAorICAgIDQsIDEsIDI1MSwgMTIxLCAxMjIsIDcsIDQsIDEsIDI0OSwgMTI1LCAxMjIsIDcsIDQsIDEsIDc3LCAxMjIsIDcsIDQsIDEsIAorICAgIDI0NSwgOTUsIDEyMiwgNywgNCwgMSwgMjQ0LCA0MSwgMTIyLCA3LCA0LCAxLCAyNDIsIDE2MiwgMTIyLCA3LCA0LCAxLCA3NSwgCisgICAgMTIyLCA3LCA0LCAxLCAyMzYsIDMsIDEyMiwgNywgNCwgMSwgMjM1LCAxNDEsIDEyMiwgNywgNCwgMSwgMTU1LCAxMjIsIDcsIAorICAgIDQsIDEsIDE4NCwgMTIyLCA3LCA0LCAxLCAyMDYsIDEyMiwgNywgNCwgMSwgNzgsIDEyMiwgNywgNCwgMSwgMjI3LCAxMSwgCisgICAgMTIyLCA3LCA0LCAxLCAyMjUsIDE5LCAxMjIsIDcsIDQsIDEsIDE1MiwgMTIyLCA3LCA0LCAxLCAxOTYsIDEyMiwgNywgNCwgCisgICAgMSwgMjE4LCAxMTMsIDEyMiwgNywgNCwgMSwgNzIsIDEyMiwgNywgNCwgMSwgMjExLCAyMTEsIDEyMiwgNywgNCwgMSwgMjE0LCAKKyAgICA4NSwgMTIyLCA3LCA0LCAxLCAyMTMsIDE2OSwgMTIyLCA3LCA0LCAxLCAyMTMsIDEwOCwgMTIyLCA3LCA0LCAxLCAyMTIsIAorICAgIDE1MiwgMTIyLCA0MywgMjQ5LCAxNjMsIDEyNSwgMTIyLCA2NiwgMjMzLCA4MywgMTIyLCA0NywgMjQ5LCAxNjMsIDEyNSwgCisgICAgMTIyLCAxNzcsIDEyMiwgNDMsIDY5LCAyMjYsIDE2OCwgMTIyLCA0NywgNjksIDIyNiwgMTY4LCAxMDAsIDEwNywgMjQ0LCAKKyAgICA2NCwgMjE5LCA4MywgMTAwLCA0MywgMjQ5LCAyMjMsIDEyNSwgMTAwLCA0NywgMjQ5LCAyMjMsIDEyNSwgMTAwLCAxMDcsIAorICAgIDI1MCwgMjMsIDEwMCwgNTYsIDIzMSwgMTA3LCAyNDcsIDE5NSwgMTAwLCA1NiwgMSwgMjEzLCAyMTcsIDEwMCwgNTYsIDEsIAorICAgIDQsIDYzLCAxMDAsIDU2LCAxLCA0LCA3NSwgMTAwLCA1NiwgMSwgNCwgNzIsIDEwMCwgNTYsIDEsIDQsIDc3LCAxMDAsIDU2LCAKKyAgICAxLCA0LCA3OCwgMTAwLCA1NiwgMSwgNCwgMTg5LCAxMDAsIDU2LCAxLCA0LCAyMTIsIDIwNCwgMTAwLCA1NiwgMSwgNCwgCisgICAgMjEyLCAyMzYsIDEwMCwgNTYsIDEsIDQsIDIxNiwgOTAsIDEwMCwgMjM1LCA2MywgMjI1LCA5MywgMjE5LCAyMzcsIDc5LCAKKyAgICAxMDAsIDU2LCAxLCA2MywgMTAwLCA1NiwgMSwgNzUsIDEwMCwgNTYsIDEsIDcyLCAxMDAsIDU2LCAxLCA3NywgMTAwLCA1NiwgCisgICAgMSwgNzgsIDEwMCwgNTYsIDEsIDE4MywgMTAwLCA1NiwgMSwgMjM0LCAyMTIsIDEwMCwgNTYsIDEsIDIzNCwgODEsIDEwMCwgCisgICAgNTYsIDEsIDIzNSwgNDQsIDEwMCwgNTYsIDEsIDIzNCwgMTQ4LCAxMDAsIDU2LCAxLCAyMjIsIDIyNywgMTAwLCA1NiwgMSwgCisgICAgMjIwLCAxMzYsIDEwMCwgNTYsIDEsIDIxOSwgNDEsIDEwMCwgNTYsIDEsIDIyMiwgMTIzLCAxMDAsIDU2LCAxLCAyMjAsIDUsIAorICAgIDEwMCwgNTYsIDEsIDIxOCwgNjYsIDEwMCwgNTYsIDEsIDIxNywgODQsIDEwMCwgNTYsIDEsIDIxNiwgOTAsIDEwMCwgNTYsIAorICAgIDEsIDIxNywgMjQyLCAxMDAsIDU2LCAxLCAxMDksIDEwMCwgNTYsIDEsIDIwNywgMTAwLCA1NiwgMSwgMjI5LCAxMjgsIDEwMCwgCisgICAgNTYsIDEsIDIyOCwgMTM1LCAxMDAsIDU2LCAxLCAyMjksIDI1NCwgMTAwLCA1NiwgMSwgMjI4LCAyMjgsIDEwMCwgNTYsIDEsIAorICAgIDE2MiwgMTAwLCA1NiwgMSwgMjQyLCAyOCwgMTAwLCA1NiwgMSwgMjQxLCA3NCwgMTAwLCA1NiwgMSwgMjQyLCA4NSwgMTAwLCAKKyAgICA1NiwgMSwgMjQxLCAxNzMsIDEwMCwgNTYsIDEsIDE5MSwgMTAwLCA1NiwgMSwgMjMxLCAxMTIsIDEwMCwgNTYsIDEsIDIzMCwgCisgICAgMjQyLCAxMDAsIDU2LCAxLCAyMzEsIDIyNiwgMTAwLCA1NiwgMSwgMjMxLCA0NSwgMTAwLCA1NiwgMSwgMTg5LCAxMDAsIDU2LCAKKyAgICAxLCAyMTIsIDIwNCwgMTAwLCA1NiwgMSwgMjEyLCAyMzYsIDEwMCwgNTYsIDEsIDIwOCwgMTAwLCA1NiwgMSwgMjIzLCAyMjIsIAorICAgIDEwMCwgNTYsIDEsIDIyMywgNzcsIDEwMCwgNTYsIDEsIDIyNCwgNTUsIDEwMCwgNTYsIDEsIDIyMywgMTQ2LCAxMDAsIDU2LCAKKyAgICAxLCAyMTQsIDUyLCAxMDAsIDU2LCAxLCAyMDYsIDEwMCwgNTYsIDIxNCwgMTIwLCAyMTksIDIzNywgNzksIDEwMCwgNTYsIAorICAgIDIyMSwgOTgsIDIxOSwgMjM3LCA3OSwgMTAwLCAyNCwgMjQ0LCAxOTIsIDEwMCwgMjQsIDEsIDIzNCwgMTc4LCAxMDAsIDI0LCAKKyAgICAxLCAyMTksIDE2OCwgMTAwLCAyNCwgMSwgMjM0LCAxNzEsIDEwMCwgMjQsIDEsIDIyOSwgMTIxLCAxMDAsIDI0LCAxLCAyMjksIAorICAgIDExOSwgMTAwLCAyNCwgMSwgMjI5LCAxMTgsIDEwMCwgMjQsIDEsIDIxNywgNjgsIDEwMCwgMjQsIDEsIDIxOSwgMTU3LCAKKyAgICAxMDAsIDI0LCAxLCAyMjMsIDIxMywgMTAwLCAyNCwgMSwgMjIzLCAyMDgsIDEwMCwgMjQsIDEsIDIyMywgMjA1LCAxMDAsIAorICAgIDI0LCAxLCAyMjMsIDE5OCwgMTAwLCAyNCwgMSwgMjIzLCAxOTMsIDEwMCwgMjQsIDEsIDIyMywgMTg4LCAxMDAsIDI0LCAxLCAKKyAgICAyMjMsIDE5OSwgMTAwLCAyNCwgMSwgMjIzLCAyMTEsIDEwMCwgMjQsIDEsIDIzMSwgMTAwLCAxMDAsIDI0LCAxLCAyMjYsIDcsIAorICAgIDEwMCwgMjQsIDEsIDIxOSwgMTY1LCAxMDAsIDI0LCAxLCAyMjUsIDI1MiwgMTAwLCAyNCwgMSwgMjIwLCA5NSwgMTAwLCAyNCwgCisgICAgMSwgMjE5LCAxNjIsIDEwMCwgMjQsIDEsIDIzNiwgMTY4LCAxMDAsIDI0LCAxLCAyNTAsIDEwNiwgMTAwLCAyNCwgMSwgMjE5LCAKKyAgICAxNzIsIDEwMCwgMjQsIDEsIDI1MCwgMTY2LCAxMDAsIDI0LCAxLCAyMzQsIDIyOCwgMTAwLCAyNCwgMSwgMjE3LCAxMzksIAorICAgIDEwMCwgMjQsIDEsIDIyNiwgNDMsIDEwMCwgMjQsIDEsIDI0MiwgMjEsIDEwMCwgMjQsIDEsIDYzLCAxMDAsIDI0LCAxLCAKKyAgICAyNTUsIDIwLCAxMDAsIDI0LCAxLCAxODksIDEwMCwgMjQsIDEsIDIxMywgODMsIDEwMCwgMjQsIDEsIDI0NSwgMTk3LCAxMDAsIAorICAgIDI0LCAxLCA3NywgMTAwLCAyNCwgMSwgMjEzLCAyOCwgMTAwLCAyNCwgMSwgMjEzLCAzOSwgMTAwLCAyNCwgMSwgNzgsIDEwMCwgCisgICAgMjQsIDEsIDIxNCwgNTIsIDEwMCwgMjQsIDEsIDIxNCwgNDksIDEwMCwgMjQsIDEsIDIyNywgMTM2LCAxMDAsIDI0LCAxLCAKKyAgICAyMTIsIDIzNiwgMTAwLCAyNCwgMSwgNzIsIDEwMCwgMjQsIDEsIDIxMywgMjU1LCAxMDAsIDI0LCAxLCAyMTQsIDksIDEwMCwgCisgICAgMjQsIDEsIDIxMywgMjM4LCAxMDAsIDI0LCAxLCAyMTIsIDIwNCwgMTAwLCAyNCwgMSwgMjQ1LCAxNDMsIDEwMCwgMjQsIDEsIAorICAgIDIxMywgMCwgMTAwLCAyNCwgMSwgNzUsIDEyMiwgMjUwLCAyMzMsIDUzLCAxMjIsIDIyNSwgMTQ0LCA1MywgMTIyLCAyMjgsIAorICAgIDIwNiwgNTMsIDEyMiwgMjMyLCAxMTAsIDEyMiwgMjUxLCAxODgsIDEzNCwgMTIyLCAyMTMsIDMyLCA1MywgMTIyLCAyMTMsIAorICAgIDIwNywgNTMsIDEwMCwgMjQ0LCAxMDcsIDE4MiwgMjE0LCAyMjEsIDEwMCwgMTM1LCA3MSwgMTAwLCAyMTUsIDEzMCwgNzEsIAorICAgIDEwMCwgOTYsIDcxLCAxMDAsIDI0NiwgMTc5LCA3MSwgMTAwLCA4NSwgMjE5LCAxODUsIDEwMCwgNjksIDI1MCwgOTUsIDIzNiwgCisgICAgNjIsIDI1NCwgMTM3LCAyNTQsIDE1NiwgMjM2LCA2MiwgMjU0LCAxMzcsIDIyMSwgODAsIDIzNiwgNjIsIDI1NCwgMTM3LCAKKyAgICAyMTcsIDIwMiwgMjI3LCAxNTAsIDIyNCwgMiwgMjUwLCAyMDEsIDIyNCwgMiwgMjUwLCAyMDEsIDYwLCA1NywgMywgMjUzLCAKKyAgICAxODUsIDYzLCA2MCwgNTcsIDMsIDI1MywgMTU0LCA3NywgNjAsIDU3LCAzLCAyNTMsIDE2MywgNzUsIDYwLCA1NywgMywgCisgICAgMjUzLCAxMzEsIDc4LCA2MCwgNTcsIDMsIDI1MywgMTgxLCA3MiwgNjAsIDU3LCAzLCAyNTMsIDIwMCwgMjQ5LCAzMCwgNjAsIAorICAgIDU3LCAzLCAyNTMsIDE0NywgMjQ4LCAxNjIsIDYwLCA1NywgMywgMjUzLCAxODcsIDI0OCwgNzYsIDYwLCA1NywgMywgMjUzLCAKKyAgICAxNzcsIDI0NywgMjIwLCA2MCwgNTcsIDMsIDI1MywgMTQxLCAyNDYsIDE1NCwgNjAsIDU3LCAzLCAyNTMsIDEzNSwgMjM2LCAKKyAgICAwLCA2MCwgNTcsIDMsIDI1MywgMTQ2LCAyMzUsIDI0MiwgNjAsIDU3LCAzLCAyNTMsIDE1NiwgMjM1LCAxODUsIDYwLCA1NywgCisgICAgMywgMjUzLCAxMjcsIDIzNSwgMTY4LCA2MCwgNTcsIDMsIDI1MywgMTE1LCAxODMsIDYwLCA1NywgMywgMjUzLCAxNDgsIAorICAgIDIzNSwgNDQsIDYwLCA1NywgMywgMjUzLCAxMjUsIDIzNCwgMjEyLCA2MCwgNTcsIDMsIDI1MywgMTIyLCAyMzQsIDE0OCwgCisgICAgNjAsIDU3LCAzLCAyNTMsIDExMSwgMjM0LCA4MSwgNjAsIDU3LCAzLCAyNTMsIDExMiwgMTkxLCA2MCwgNTcsIDMsIDI1MywgCisgICAgMTc4LCAyMzEsIDIyNiwgNjAsIDU3LCAzLCAyNTMsIDExOSwgMjMxLCAxMTIsIDYwLCA1NywgMywgMjUzLCAxNzYsIDIzMSwgCisgICAgNDUsIDYwLCA1NywgMywgMjUzLCAxNjgsIDIzMCwgMjQyLCA2MCwgNTcsIDMsIDI1MywgMTg5LCAyMDcsIDYwLCA1NywgMywgCisgICAgMjUzLCAxNjcsIDIyOSwgMjU0LCA2MCwgNTcsIDMsIDI1MywgMTYxLCAyMjksIDEyOCwgNjAsIDU3LCAzLCAyNTMsIDE0MCwgCisgICAgMjI4LCAyMjgsIDYwLCA1NywgMywgMjUzLCAxMzcsIDIyOCwgMTM1LCA2MCwgNTcsIDMsIDI1MywgMTk2LCAxOTUsIDYwLCAKKyAgICA1NywgMywgMjUzLCAxMjAsIDIyNiwgMTMyLCA2MCwgNTcsIDMsIDI1MywgMTUzLCAyMjYsIDIwLCA2MCwgNTcsIDMsIDI1MywgCisgICAgMTgwLCAyMjUsIDE4NiwgNjAsIDU3LCAzLCAyNTMsIDE0MiwgMjI1LCA3MSwgNjAsIDU3LCAzLCAyNTMsIDE3NSwgMjI1LCAKKyAgICAxMSwgNjAsIDU3LCAzLCAyNTMsIDExNCwgMjI0LCAyNDgsIDYwLCA1NywgMywgMjUzLCAxNzAsIDIyNCwgMjMzLCA2MCwgNTcsIAorICAgIDMsIDI1MywgMTU5LCAyMjQsIDIyMiwgNjAsIDU3LCAzLCAyNTMsIDEzMiwgMjA4LCA2MCwgNTcsIDMsIDI1MywgMTY0LCAKKyAgICAyMjQsIDU1LCA2MCwgNTcsIDMsIDI1MywgMTM5LCAyMjMsIDIyMiwgNjAsIDU3LCAzLCAyNTMsIDE5OCwgMjIzLCAxNDYsIAorICAgIDYwLCA1NywgMywgMjUzLCAxNjUsIDIyMywgNzcsIDYwLCA1NywgMywgMjUzLCAxNjAsIDIyMiwgMjI3LCA2MCwgNTcsIDMsIAorICAgIDI1MywgMTgzLCAyMjIsIDEyMywgNjAsIDU3LCAzLCAyNTMsIDE1MSwgMjIwLCAxMzYsIDYwLCA1NywgMywgMjUzLCAxNzksIAorICAgIDIyMCwgNSwgNjAsIDU3LCAzLCAyNTMsIDEzNCwgMjE5LCA0MSwgNjAsIDU3LCAzLCAyNTMsIDEzMywgMjE4LCA2NiwgNjAsIAorICAgIDU3LCAzLCAyNTMsIDE5NCwgMjE3LCAyNDIsIDYwLCA1NywgMywgMjUzLCAxNTUsIDIxNywgODQsIDYwLCA1NywgMywgMjUzLCAKKyAgICAxOTIsIDEwOSwgNjAsIDU3LCAzLCAyNTMsIDEyMywgMjE2LCA5MCwgNjAsIDU3LCAzLCAyNTMsIDEzOCwgMjE0LCA1MiwgNjAsIAorICAgIDU3LCAzLCAyNTMsIDExNywgMjE0LCA5LCA2MCwgNTcsIDMsIDI1MywgMTUyLCAyMTMsIDIzOCwgNjAsIDU3LCAzLCAyNTMsIAorICAgIDE1MCwgMjEzLCAyMTcsIDYwLCA1NywgMywgMjUzLCAxNzQsIDIxMiwgMTA5LCA2MCwgNTcsIDMsIDI1MywgMTE4LCAyMTIsIAorICAgIDg3LCA2MCwgNTcsIDMsIDI1MywgMTcxLCAyMTIsIDE2LCA2MCwgNTcsIDMsIDI1MywgMTY2LCAyNTUsIDEwNiwgNjAsIDU3LCAKKyAgICAzLCAyNTMsIDE0OSwgMjU1LCAxMDUsIDYwLCA1NywgMywgMjUzLCAxMDgsIDI1MywgMjM1LCA2MCwgNTcsIDMsIDI1MywgCisgICAgMTIxLCAyNDYsIDEyMiwgNjAsIDU3LCAzLCAyNTMsIDEwNCwgMjQ2LCAxMjEsIDYwLCA1NywgMywgMjUzLCAxNDQsIDIyOCwgCisgICAgNzMsIDYwLCA1NywgMywgMjUzLCAxNjIsIDIyNSwgNzAsIDYwLCA1NywgMywgMjUzLCAxMzAsIDIyNSwgNzMsIDYwLCA1NywgCisgICAgMywgMjUzLCAxMTYsIDIyNCwgMTExLCA2MCwgNTcsIDMsIDI1MywgMTU4LCAyMjQsIDExMCwgNjAsIDU3LCAzLCAyNTMsIAorICAgIDEyNCwgMjIzLCAxNDUsIDYwLCA1NywgMywgMjUzLCAxMjYsIDIxOCwgNjQsIDYwLCA1NywgMywgMjUzLCAxMDYsIDIxNiwgCisgICAgNTAsIDYwLCA1NywgMywgMjUzLCAxMDMsIDExMiwgNjAsIDU3LCAxNiwgMjUzLCAxNzMsIDYwLCA1NywgMTYsIDI1MywgMTcyLCAKKyAgICA2MCwgNTcsIDE2LCAyNTMsIDE2OSwgNjAsIDU3LCAxNiwgMjUzLCAxNTcsIDYwLCA1NywgMTYsIDI1MywgMTQ1LCA2MCwgNTcsIAorICAgIDE2LCAyNTMsIDE0MywgNjAsIDU3LCAxNiwgMjUzLCAxMzYsIDYwLCA1NywgMTYsIDI1MywgMTI5LCA2MCwgNTcsIDE2LCAKKyAgICAyNTMsIDEyOCwgNjAsIDU3LCAxNiwgMjUzLCAxMTMsIDYwLCA1NywgMTYsIDI1MywgMTEwLCA2MCwgNTcsIDE2LCAyNTMsIAorICAgIDEwOSwgNjAsIDU3LCAxNiwgMjUzLCAxMDcsIDYwLCA1NywgMTYsIDI1MywgMTA1LCA2MCwgNTcsIDEwNCwgMjUzLCAxMDIsIAorICAgIDIzMiwgNjMsIDYwLCA1NywgMTA0LCAyNTMsIDEwMSwgMjEzLCAyMTEsIDYwLCA1NywgMTA0LCAyNTMsIDEwMCwgMjQ4LCAKKyAgICAxNDYsIDYwLCA1NywgMTA0LCAyNTMsIDk5LCAyNDUsIDE3OSwgNjAsIDU3LCAxMDQsIDI1MywgOTgsIDIzMiwgMzcsIDYwLCAKKyAgICA1NywgMTA0LCAyNTMsIDk3LCAyMTksIDExNSwgNjAsIDU3LCAxMDQsIDI1MywgOTYsIDI0NSwgMTI1LCA2MCwgNTcsIDEwNCwgCisgICAgMjUzLCA5NSwgMjI0LCA4MCwgNjAsIDU3LCAxMDQsIDI1MywgOTQsIDIyMSwgNywgNjAsIDU3LCAxMDQsIDI1MywgOTMsIAorICAgIDI0MiwgODQsIDYwLCA1NywgMTA0LCAyNTMsIDkyLCAyMTksIDIzMSwgNjAsIDU3LCAxMDQsIDI1MywgOTEsIDI1MSwgMjUxLCAKKyAgICA2MCwgNTcsIDEwNCwgMjUzLCA5MCwgMjQ5LCAyMDcsIDYwLCA1NywgMTA0LCAyNTMsIDg5LCAyNTEsIDE2OSwgNjAsIDU3LCAKKyAgICAxMDQsIDI1MywgODgsIDIxMywgMjQ2LCA2MCwgNTcsIDEwNCwgMjUzLCA4NywgMjUyLCAxODIsIDYwLCA1NywgMTA0LCAyNTMsIAorICAgIDg2LCAyMjcsIDEwOCwgNjAsIDU3LCAxMDQsIDI1MywgODUsIDIxOSwgMjA1LCA2MCwgNTcsIDEwNCwgMjUzLCA4NCwgMjQ5LCAKKyAgICAxMzMsIDYwLCA1NywgMjMxLCAyNiwgMjUzLCA4MywgMjM1LCA4NiwgNjAsIDU3LCAyMzEsIDI2LCAyNTMsIDgyLCAyMzUsIAorICAgIDk0LCA2MCwgNTcsIDEwNCwgMjUzLCA4MSwgMjI3LCAxMjEsIDYwLCA1NywgMTA0LCAyNTMsIDgwLCAyMTMsIDIyNCwgNjAsIAorICAgIDU3LCAxMDQsIDI1MywgNzksIDYwLCA1NywgMjMxLCAyNiwgMjUzLCA3OCwgMjU0LCA1OSwgNjAsIDU3LCAyMzEsIDI2LCAKKyAgICAyNTMsIDc3LCAyMzEsIDE4NiwgNjAsIDU3LCAxMDQsIDI1MywgNzYsIDI1MSwgMTg3LCA2MCwgNTcsIDEwNCwgMjUzLCA3NSwgCisgICAgMjQzLCA2LCA2MCwgNTcsIDEwNCwgMjUzLCA3NCwgNjAsIDU3LCAxMDQsIDI1MywgNzMsIDIxMywgMjAyLCA2MCwgNTcsIAorICAgIDEwNCwgMjUzLCA3MiwgNjAsIDU3LCAxMDQsIDI1MywgNzEsIDYwLCA1NywgMTA0LCAyNTMsIDcwLCAyNDEsIDk3LCA2MCwgCisgICAgNTcsIDEwNCwgMjUzLCA2OSwgNjAsIDU3LCAxMDQsIDI1MywgNjgsIDYwLCA1NywgMTA0LCAyNTMsIDY3LCA2MCwgNTcsIAorICAgIDIzMSwgMjYsIDI1MywgNjUsIDIxNiwgNjQsIDYwLCA1NywgMTA0LCAyNTMsIDY0LCA2MCwgNTcsIDEwNCwgMjUzLCA2MywgCisgICAgNjAsIDU3LCAxMDQsIDI1MywgNjIsIDI1MCwgNTQsIDYwLCA1NywgMTA0LCAyNTMsIDYxLCA2MCwgNTcsIDEwNCwgMjUzLCAKKyAgICA2MCwgNjAsIDU3LCAxMDQsIDI1MywgNTksIDI0MywgMTg5LCA2MCwgNTcsIDEwNCwgMjUzLCA1OCwgMjU0LCA0NiwgNjAsIAorICAgIDU3LCAxMDQsIDI1MywgNTcsIDYwLCA1NywgMTA0LCAyNTMsIDU2LCA2MCwgNTcsIDEwNCwgMjUzLCA1NSwgNjAsIDU3LCAKKyAgICAxMDQsIDI1MywgNTQsIDYwLCA1NywgMTA0LCAyNTMsIDUzLCA2MCwgNTcsIDEwNCwgMjUzLCA1MiwgNjAsIDU3LCAxMDQsIAorICAgIDI1MywgNTEsIDYwLCA1NywgMTA0LCAyNTMsIDUwLCA2MCwgNTcsIDEwNCwgMjUzLCA0OSwgNjAsIDU3LCAxMDQsIDI1MywgCisgICAgNDgsIDIzMSwgMTgsIDYwLCA1NywgMTA0LCAyNTMsIDQ3LCA2MCwgNTcsIDEwNCwgMjUzLCA0NiwgMjE2LCAyMDYsIDYwLCAKKyAgICA1NywgMTA0LCAyNTMsIDQ1LCA2MCwgNTcsIDEwNCwgMjUzLCA0NCwgNjAsIDU3LCAxMDQsIDI1MywgNDMsIDYwLCA1NywgCisgICAgMTA0LCAyNTMsIDQyLCA2MCwgNTcsIDEwNCwgMjUzLCA0MSwgNjAsIDU3LCAxMDQsIDI1MywgNDAsIDYwLCA1NywgMTA0LCAKKyAgICAyNTMsIDM5LCA2MCwgNTcsIDEwNCwgMjUzLCAzOCwgNjAsIDU3LCAxMDQsIDI1MywgMzcsIDYwLCA1NywgMTA0LCAyNTMsIAorICAgIDM2LCA2MCwgNTcsIDEwNCwgMjUzLCAzNSwgNjAsIDU3LCAxMDQsIDI1MywgMzQsIDI0MiwgNTgsIDYwLCA1NywgMTA0LCAKKyAgICAyNTMsIDEzLCAyNDQsIDExNywgNjAsIDU3LCAxMDQsIDI1MywgMTAsIDI1MiwgMTYyLCA2MCwgNTcsIDEwNCwgMjUzLCA1LCAKKyAgICAyMTksIDIxMiwgNjAsIDU3LCAxMDQsIDI1MywgNCwgNzEsIDYwLCA1NywgMTA0LCAyNTMsIDMsIDYwLCA1NywgMTA0LCAyNTMsIAorICAgIDIsIDIxOCwgMTk1LCA2MCwgNTcsIDEwNCwgMjUzLCAxLCA2MCwgNTcsIDEwNCwgMjUzLCAwLCA2MCwgNTcsIDEwNCwgMjUyLCAKKyAgICAyNTUsIDIxMywgMjQyLCAyNTAsIDE5OCwgNjAsIDU3LCAxMDQsIDI1MiwgMjU0LCAyNTAsIDE5OCwgNjAsIDU3LCAxMDQsIAorICAgIDI1MiwgMjUzLCAyNTAsIDE5OSwgMjQ0LCA4OSwgNjAsIDU3LCAxMDQsIDI1MiwgMjUyLCAyMTMsIDI0NCwgNjAsIDU3LCAKKyAgICAxMDQsIDI1MiwgMjUxLCA2MCwgNTcsIDEwNCwgMjUyLCAyNTAsIDYwLCA1NywgMjMxLCAyNiwgMjUyLCAyNDksIDI0OCwgMTUsIAorICAgIDYwLCA1NywgMTA0LCAyNTIsIDI0OCwgNjAsIDU3LCAxMDQsIDI1MiwgMjQ3LCA2MCwgNTcsIDEwNCwgMjUyLCAyNDUsIDYwLCAKKyAgICA1NywgMTA0LCAyNTIsIDI0NCwgNjAsIDU3LCAxMDQsIDI1MiwgMjQzLCA2MCwgNTcsIDEwNCwgMjUyLCAyNDIsIDI0OCwgCisgICAgMjI2LCA2MCwgNTcsIDEwNCwgMjUyLCAyNDEsIDYwLCA1NywgMTA0LCAyNTIsIDI0MCwgNjAsIDU3LCAxMDQsIDI1MiwgMjM5LCAKKyAgICA2MCwgNTcsIDEwNCwgMjUyLCAyMzgsIDYwLCA1NywgMTA0LCAyNTIsIDIzNywgNjAsIDU3LCAxMDQsIDIxNCwgMTY4LCAyNTMsIAorICAgIDY2LCA2MCwgNTcsIDEwNCwgMjE0LCAxNjgsIDI1MywgMzMsIDYwLCA1NywgMTA0LCAyMTQsIDE2OCwgMjUzLCAzMiwgNjAsIAorICAgIDU3LCAxMDQsIDIxNCwgMTY4LCAyNTMsIDMxLCA2MCwgNTcsIDEwNCwgMjE0LCAxNjgsIDI1MywgMzAsIDYwLCA1NywgMTA0LCAKKyAgICAyMTQsIDE2OCwgMjUzLCAyOSwgNjAsIDU3LCAxMDQsIDIxNCwgMTY4LCAyNTMsIDI4LCA2MCwgNTcsIDEwNCwgMjE0LCAxNjgsIAorICAgIDI1MywgMjcsIDYwLCA1NywgMTA0LCAyMTQsIDE2OCwgMjUzLCAyNiwgNjAsIDU3LCAxMDQsIDIxNCwgMTY4LCAyNTMsIDI1LCAKKyAgICA2MCwgNTcsIDEwNCwgMjE0LCAxNjgsIDI1MywgMjQsIDYwLCA1NywgMTA0LCAyMTQsIDE2OCwgMjUzLCAyMywgNjAsIDU3LCAKKyAgICAxMDQsIDIxNCwgMTY4LCAyNTMsIDIyLCA2MCwgNTcsIDEwNCwgMjE0LCAxNjgsIDI1MywgMjEsIDYwLCA1NywgMTA0LCAyMTQsIAorICAgIDE2OCwgMjUzLCAyMCwgNjAsIDU3LCAxMDQsIDIxNCwgMTY4LCAyNTMsIDE5LCA2MCwgNTcsIDEwNCwgMjE0LCAxNjgsIDI1MywgCisgICAgMTgsIDYwLCA1NywgMTA0LCAyMTQsIDE2OCwgMjUzLCAxNywgNjAsIDU3LCAxMDQsIDIxNCwgMTY4LCAyNTMsIDE2LCA2MCwgCisgICAgNTcsIDEwNCwgMjE0LCAxNjgsIDI1MywgMTUsIDYwLCA1NywgMTA0LCAyMTQsIDE2OCwgMjUzLCAxNCwgNjAsIDU3LCAxMDQsIAorICAgIDIxNCwgMTY4LCAyNTMsIDEyLCA2MCwgNTcsIDEwNCwgMjE0LCAxNjgsIDI1MywgMTEsIDYwLCA1NywgMTA0LCAyMTQsIDE2OCwgCisgICAgMjUzLCA5LCA2MCwgNTcsIDEwNCwgMjE0LCAxNjgsIDI1MywgOCwgNjAsIDU3LCAxMDQsIDIxNCwgMTY4LCAyNTMsIDcsIDYwLCAKKyAgICA1NywgMTA0LCAyMTQsIDE2OCwgMjUzLCA2LCA2MCwgNTcsIDEwNCwgMjE0LCAxNjgsIDI1MiwgMjQ2LCA2MCwgNTcsIDEwNCwgCisgICAgMjE0LCAxNjgsIDI1MiwgMjM2LCAyNTUsIDEzLCAyMTMsIDE5OSwgMjIxLCA4MSwgMjMzLCA4MywgMjU1LCAxMywgMjEzLCAKKyAgICAxOTksIDIyMSwgODEsIDI0NywgMTk1LCAyNTUsIDEzLCAyNTAsIDE4OSwgNzksIDI1NSwgMTMsIDUxLCAxMTgsIDI1NSwgMTMsIAorICAgIDUxLCAxMTIsIDI1NSwgMTMsIDUxLCAxNzAsIDI1NSwgMTMsIDUxLCAxNjcsIDI1NSwgMTMsIDUxLCAxODUsIDI1NSwgMTMsIAorICAgIDUxLCAxOTIsIDI1NSwgMTMsIDUxLCAyMDAsIDI1NSwgMTMsIDUxLCAxOTgsIDI1NSwgMTMsIDUxLCAyMDMsIDI1NSwgMTMsIAorICAgIDUxLCAyMTcsIDIxMywgMjU1LCAxMywgNTEsIDIxNiwgNDUsIDI1NSwgMTMsIDUxLCAyMTcsIDEyOCwgMjU1LCAxMywgNTEsIAorICAgIDI0NCwgMTA0LCAyNTUsIDEzLCA1MSwgMjQ0LCAyMDMsIDI1NSwgMTMsIDUxLCAyMjAsIDU4LCAyNTUsIDEzLCA1MSwgMjIxLCAKKyAgICA2MCwgMjU1LCAxMywgNTEsIDI0NiwgNiwgMjU1LCAxMywgNTEsIDIyOSwgOTAsIDI1NSwgMTMsIDUxLCAxMjQsIDI0MSwgNjIsIAorICAgIDI1NSwgMTMsIDUxLCAxMTksIDI0MSwgNjIsIDI1NSwgMTMsIDUxLCAxMzcsIDI0MSwgNjIsIDI1NSwgMTMsIDUxLCAyNDQsIAorICAgIDEwMSwgMjQxLCA2MiwgMjU1LCAxMywgNTEsIDI0NCwgMTcwLCAyNDEsIDYyLCAyNTUsIDEzLCA1MSwgMjIwLCA3MiwgMjQxLCAKKyAgICA2MiwgMjU1LCAxMywgNTEsIDIyMSwgNjYsIDI0MSwgNjIsIDI1NSwgMTMsIDUxLCAyNDYsIDE1LCAyNDEsIDYyLCAyNTUsIAorICAgIDEzLCA1MSwgMjI5LCA5NSwgMjQxLCA2MiwgMjU1LCAxMywgNTEsIDEyNCwgMjE3LCAxMTMsIDI1NSwgMTMsIDUxLCAxMTksIAorICAgIDIxNywgMTEzLCAyNTUsIDEzLCA1MSwgMTM3LCAyMTcsIDExMywgMjU1LCAxMywgNTEsIDI0NCwgMTAxLCAyMTcsIDExMywgCisgICAgMjU1LCAxMywgNTEsIDI0NCwgMTcwLCAyMTcsIDExMywgMjU1LCAxMywgNTEsIDIyMCwgNzIsIDIxNywgMTEzLCAyNTUsIDEzLCAKKyAgICA1MSwgMjIxLCA2NiwgMjE3LCAxMTMsIDI1NSwgMTMsIDUxLCAyNDYsIDE1LCAyMTcsIDExMywgMjU1LCAxMywgNTEsIDIyOSwgCisgICAgOTUsIDIxNywgMTEzLCAyNTUsIDEzLCA1MSwgMjE3LCAyMTQsIDIxNywgMTEzLCAyNTUsIDEzLCA1MSwgMjE2LCA0NiwgMjE3LCAKKyAgICAxMTMsIDI1NSwgMTMsIDUxLCAyMTcsIDEyOSwgMjE3LCAxMTMsIDI1NSwgMTMsIDUxLCAyNDQsIDEwNSwgMjE3LCAxMTMsIAorICAgIDI1NSwgMTMsIDUxLCAyNDQsIDIwNCwgMjE3LCAxMTMsIDI1NSwgMTMsIDUxLCAyMjAsIDU5LCAyMTcsIDExMywgMjU1LCAxMywgCisgICAgNTEsIDIyMSwgNjEsIDIxNywgMTEzLCAyNTUsIDEzLCA1MSwgMjQ2LCA3LCAyMTcsIDExMywgMjU1LCAxMywgNTEsIDIyOSwgCisgICAgOTEsIDIxNywgMTEzLCAyNTUsIDEzLCAyMTQsIDIsIDI1MiwgMTc0LCAyMTUsIDE1MCwgMjU1LCAxMywgMjE0LCAyLCAyNDQsIAorICAgIDE4MSwgMjE5LCAxOCwgMjU1LCAxMywgMjE0LCAyLCAyMjIsIDExOCwgMjE5LCAxOCwgMjU1LCAxMywgMjE0LCAyLCAyMTcsIAorICAgIDEzNSwgMjE5LCAxOCwgMjU1LCAxMywgMjE0LCAyLCAyNDQsIDk0LCAyMTksIDE4LCAyNTUsIDEzLCAyNDYsIDE1NywgMjMxLCAKKyAgICAyMjUsIDI0NCwgMTgxLCAyMTksIDE4LCAyNTUsIDEzLCAyMzMsIDY5LCAyMzEsIDIyNSwgMjQ0LCAxODEsIDIxOSwgMTgsIAorICAgIDI1NSwgMTMsIDIzMSwgMjI1LCAyMjIsIDExOCwgMjE5LCAxOCwgMjU1LCAxMywgMjMxLCAyMjUsIDIxNywgMTM1LCAyMTksIAorICAgIDE4LCAyNSwgMjU1LCAzOSwgMjUzLCAyMzcsIDEyNCwgMjI0LCAyMDEsIDI1LCAyNTUsIDM5LCAyNTMsIDIzNywgMTI0LCAKKyAgICAyNDIsIDEyOSwgMjUsIDI1NSwgMzksIDI1MywgMjM3LCAxMjQsIDI0NiwgMTc1LCAyNSwgMjU1LCAzOSwgMjUzLCAyMzcsIAorICAgIDE4NSwgMjUsIDI1NSwgMzksIDI1MywgMjM3LCAyNDQsIDIwMywgMjUsIDI1NSwgMzksIDI1MywgMjM3LCAyNDQsIDE3MCwgCisgICAgMjQxLCA2MiwgMjUsIDI1NSwgMzksIDI1MywgMjM3LCAyNDQsIDE3MCwgMjE3LCAxMTMsIDI1LCAyNTUsIDM5LCAyNTMsIAorICAgIDIzNywgMjQ0LCAyMDQsIDIxNywgMTEzLCAyNSwgMjU1LCAzOSwgMjUzLCAyMzcsIDI0NCwgMTcwLCAyMTgsIDMxLCAyNSwgCisgICAgMjU1LCAzOSwgMjUzLCAyMzcsIDIxNywgMjE0LCAyMTgsIDMxLCAyNSwgMjU1LCAzOSwgMjUzLCAyMzcsIDI0NCwgMjA0LCAKKyAgICAyMTgsIDMxLCAyNSwgMjU1LCAzOSwgMjUzLCAyMzcsIDEyNCwgMjQxLCA2MywgMjE4LCAzMSwgMjUsIDI1NSwgMzksIDI1MywgCisgICAgMjM3LCAyNDQsIDE3MCwgMjQxLCA2MywgMjE4LCAzMSwgMjUsIDI1NSwgMzksIDI1MywgMjM3LCAxMjQsIDIxNywgMTE0LCAKKyAgICAyMTgsIDMxLCAyNSwgMjU1LCAzOSwgMjUzLCAyMzcsIDI0NCwgMTcwLCAyMTcsIDExNCwgMjE4LCAzMSwgMjUsIDI1NSwgMzksIAorICAgIDI1MywgMjM3LCAyNDQsIDE3MCwgMjE5LCAxMDQsIDI1LCAyNTUsIDM5LCAyNTMsIDIzNywgMjE3LCAyMTQsIDIxOSwgMTA0LCAKKyAgICAyNSwgMjU1LCAzOSwgMjUzLCAyMzcsIDI0NCwgMjA0LCAyMTksIDEwNCwgMjUsIDI1NSwgMzksIDI1MywgMjM3LCAxMjQsIAorICAgIDI0MSwgNjMsIDIxOSwgMTA0LCAyNSwgMjU1LCAzOSwgMjUzLCAyMzcsIDI0NCwgMTcwLCAyNDEsIDYzLCAyMTksIDEwNCwgCisgICAgMjUsIDI1NSwgMzksIDI1MywgMjM3LCAxMjQsIDIxNywgMTE0LCAyMTksIDEwNCwgMjUsIDI1NSwgMzksIDI1MywgMjM3LCAKKyAgICAyMTcsIDIxNCwgMjE3LCAxMTQsIDIxOSwgMTA0LCAyNSwgMjU1LCAzOSwgMjUzLCAyMzcsIDI0NCwgMjA0LCAyMTcsIDExNCwgCisgICAgMjE5LCAxMDQsIDI1LCAyNTUsIDM5LCAyNTMsIDIzNywgMjE3LCAyMTQsIDIzMSwgNDgsIDI1LCAyNTUsIDM5LCAyNDIsIDUyLCAKKyAgICAxMjQsIDIyNSwgMjAwLCAyNSwgMjU1LCAzOSwgMjE3LCAxNDcsIDExOCwgMjUsIDI1NSwgMzksIDI0MiwgNDksIDExOCwgMjUsIAorICAgIDI1NSwgMzksIDI0NSwgMTg4LCAxMTIsIDI1LCAyNTUsIDM5LCAyMTcsIDE0NywgMTEyLCAyNSwgMjU1LCAzOSwgMjQ5LCAKKyAgICAxMzAsIDExOSwgMjQ2LCAxNzQsIDI1LCAyNTUsIDM5LCAyNDUsIDE4OCwgMTE5LCAyNDYsIDE3NCwgMjUsIDI1NSwgMzksIAorICAgIDIxNiwgMTc0LCAxODUsIDI1LCAyNTUsIDM5LCAyMTYsIDE3NCwgMjE3LCAyMTMsIDI1LCAyNTUsIDM5LCAyMTYsIDE3NCwgCisgICAgMjE3LCAyMTQsIDI1NCwgMTc3LCAxNywgMjUsIDI1NSwgMzksIDI0MiwgNDksIDIxNywgMjEzLCAyNSwgMjU1LCAzOSwgMjMxLCAKKyAgICAxNzgsIDIxNywgMjEzLCAyNSwgMjU1LCAzOSwgMjE3LCAxNDcsIDIxNywgMjEzLCAyNSwgMjU1LCAzOSwgMjE3LCAxNDcsIAorICAgIDIxNywgMTI4LCAyNSwgMjU1LCAzOSwgMjE2LCAxNzQsIDI0NCwgMjAzLCAyNSwgMjU1LCAzOSwgMjE2LCAxNzQsIDI0NCwgCisgICAgMjA0LCAyNTQsIDE3NywgMTcsIDI1LCAyNTUsIDM5LCAyNDIsIDQ5LCAyNDQsIDIwMywgMjUsIDI1NSwgMzksIDIxNywgMTQ3LCAKKyAgICAyNDQsIDIwMywgMjUsIDI1NSwgMzksIDIxNywgMTQ3LCAxMjQsIDI0MSwgNjIsIDI1LCAyNTUsIDM5LCAyMTcsIDE0NywgCisgICAgMTM3LCAyNDEsIDYyLCAyNSwgMjU1LCAzOSwgMjQ1LCAxODgsIDI0NCwgMTcwLCAyNDEsIDYyLCAyNSwgMjU1LCAzOSwgMjE2LCAKKyAgICAxNzQsIDI0NCwgMTcwLCAyNDEsIDYyLCAyNSwgMjU1LCAzOSwgMjE3LCAxNDcsIDI0NCwgMTcwLCAyNDEsIDYyLCAyNSwgCisgICAgMjU1LCAzOSwgMjUxLCAyNywgMjQ0LCAxNzAsIDI0MSwgNjIsIDI1LCAyNTUsIDM5LCAyMzAsIDcxLCAyNDQsIDE3MCwgMjQxLCAKKyAgICA2MiwgMjUsIDI1NSwgMzksIDIxNywgMTQ3LCAxMjQsIDIxNywgMTEzLCAyNSwgMjU1LCAzOSwgMjE3LCAxNDcsIDI0NCwgCisgICAgMTcwLCAyMTcsIDExMywgMjUsIDI1NSwgMzksIDI0OCwgMTI5LCAyNDQsIDE3MCwgMjMxLCA0OCwgMjUsIDI1NSwgMzksIAorICAgIDIxOSwgNzIsIDI0NCwgMjA0LCAyMzEsIDQ4LCAyNSwgMTI0LCAxNTcsIDUzLCAyNSwgMTI0LCAxNTcsIDUsIDI1NCwgMTc3LCAKKyAgICAxNywgMjUsIDExOSwgMjE3LCAxMzMsIDUzLCAyNSwgMTM3LCAyMjQsIDIwMCwgNTMsIDI1LCAyMTMsIDM3LCA1MywgMjUsIAorICAgIDIxOCwgMzIsIDUzLCAyNSwgMjQ2LCAxNzYsIDUzLCAyNSwgMjI3LCAxNDcsIDUzLCAyNSwgMTE5LCAyMjcsIDE0NiwgNTMsIAorICAgIDI1LCAxMzcsIDIyNywgMTQ2LCA1MywgMjUsIDI0NCwgMTAxLCAyMjcsIDE0NiwgNTMsIDI1LCAyNDQsIDE3MCwgMjI3LCAKKyAgICAxNDYsIDUzLCAyNSwgMjMxLCAxNzIsIDUzLCAyNSwgMjM0LCAyMSwgMjUyLCAxNzQsIDUzLCAyNSwgMjMzLCA2NCwgNTMsIAorICAgIDI1LCAyMjcsIDM3LCA1MywgMjUsIDIxMywgMTUwLCA1MywgMjUsIDI1NCwgMjksIDUzLCAyNSwgMjU0LCA0MiwgNTMsIDI1LCAKKyAgICAyNDIsIDI0MCwgNTMsIDI1LCAyMTYsIDE1NywgMjUyLCAxNzQsIDUzLCAyNSwgMjEyLCA4MCwgNTMsIDIyMywgMTM0LCAyMjEsIAorICAgIDU3LCA1MywgMjIzLCAxMzQsIDIxNSwgMTYxLCA1MywgMjIzLCAxMzQsIDIyMSwgODUsIDUzLCAyMjMsIDEzNCwgMjIxLCA1NSwgCisgICAgNTMsIDIyMywgMTM0LCAyNDgsIDMwLCAyMjEsIDU1LCA1MywgMjIzLCAxMzQsIDIyMCwgMTEzLCA1MywgMjIzLCAxMzQsIAorICAgIDI0OCwgMTI1LCA1MywgMjIzLCAxMzQsIDIyNCwgMTg2LCA1MywgMjIzLCAxMzQsIDIyMSwgNzMsIDUzLCAyMjMsIDEzNCwgCisgICAgMjQ2LCAxMzYsIDUzLCAyMjMsIDEzNCwgMjU0LCAyNCwgNTMsIDIyMywgMTM0LCAyNTAsIDIyOCwgNTMsIDIyNiwgNTUsIAorICAgIDI0OCwgOCwgNSwgMjI2LCAxMjQsIDIyNiwgNTUsIDI0OCwgOCwgNSwgMjI1LCAxOTQsIDI0MiwgODIsIDIyNiwgNTUsIDI0OCwgCisgICAgOCwgNSwgMjE4LCA5LCAyNDIsIDgyLCAyMjYsIDU1LCAyNDgsIDgsIDUsIDI1MSwgNDcsIDIyNiwgNTUsIDI0OCwgOCwgNSwgCisgICAgMjUwLCAxNjEsIDIyNiwgNTUsIDI0OCwgOCwgNSwgMjEzLCAyMTEsIDIyNiwgNTUsIDI0OCwgOCwgNSwgMjQyLCA1OCwgMjI2LCAKKyAgICA1NSwgMjQ4LCA4LCA1LCAyNDMsIDE4MSwgMjI2LCA1NSwgMjQ4LCA4LCA1LCAyMTcsIDgzLCAyMjYsIDU1LCAyNDgsIDgsIDUsIAorICAgIDcxLCAyMjYsIDU1LCAyNDgsIDgsIDUsIDI1MSwgMjIwLCAyMjYsIDU1LCAyNDgsIDgsIDUsIDIyMCwgMjMwLCAyMjYsIDU1LCAKKyAgICAyNDgsIDgsIDUsIDI1MCwgNDgsIDIyNiwgNTUsIDI0OCwgOCwgNSwgMjMyLCA2MiwgMjI2LCA1NSwgMjQ4LCA4LCA1LCAyMzIsIAorICAgIDE0LCAyMjYsIDU1LCAyNDgsIDgsIDUsIDIyMiwgMTU3LCAyMjYsIDU1LCAyNDgsIDgsIDUsIDIzMywgMTA3LCAyMjYsIDU1LCAKKyAgICAyNDgsIDgsIDUsIDI1MSwgMjM4LCAyMjYsIDU1LCAyNDgsIDgsIDUsIDI1MSwgMzEsIDIyNSwgMjAzLCAyMjYsIDU1LCAyNDgsIAorICAgIDgsIDUsIDI0NywgMjA4LCAyMjYsIDU1LCAyNDgsIDgsIDUsIDI1MCwgMjcsIDIyNiwgNTUsIDI0OCwgOCwgNSwgMjIwLCAzNCwgCisgICAgMjI2LCA1NSwgMjQ4LCA4LCA1LCAyNTAsIDI4LCAyMjYsIDU1LCAyNDgsIDgsIDUsIDI1MiwgMTA5LCAyMjYsIDU1LCAyNDgsIAorICAgIDgsIDUsIDIyMCwgMjE3LCAyMjYsIDU1LCAyNDgsIDgsIDUsIDI0MSwgOTcsIDIyNiwgNTUsIDI0OCwgOCwgNSwgMjQyLCAyNiwgCisgICAgMjI2LCA1NSwgMjQ4LCA4LCA1LCAyNTEsIDE2NiwgMjMzLCAxNTgsIDIyNiwgNTUsIDI0OCwgOCwgNSwgMjUxLCAyNCwgMjI2LCAKKyAgICA1NSwgMjQ4LCA4LCA1LCAyMjQsIDgwLCAyMjYsIDU1LCAyNDgsIDgsIDUsIDI0NiwgNTEsIDIyNiwgNTUsIDI0OCwgOCwgNSwgCisgICAgMjQ2LCAxODIsIDIyNiwgNTUsIDI0OCwgOCwgNSwgMjE2LCA3NywgMjI2LCA1NSwgMjQ4LCA4LCA1LCAyNTIsIDExMiwgMjI2LCAKKyAgICA1NSwgMjQ4LCA4LCA1LCAyMjUsIDIwNCwgMjE2LCAyMDYsIDIyNiwgNTUsIDI0OCwgOCwgNSwgMjE0LCAxNDQsIDIyNiwgNTUsIAorICAgIDI0OCwgOCwgNSwgMjI2LCAxODMsIDIyNiwgNTUsIDI0OCwgOCwgNSwgMjIzLCAxMjYsIDIyNiwgNTUsIDI0OCwgOCwgNSwgCisgICAgMjMzLCA5NCwgMjI2LCA1NSwgMjQ4LCA4LCA1LCAyMjcsIDIxLCAyNTIsIDIyOCwgMjI2LCA1NSwgMjQ4LCA4LCA1LCAyNDQsIAorICAgIDEzNywgMjI2LCA1NSwgMjQ4LCA4LCA1LCAyNDIsIDIzNSwgMjI2LCA1NSwgMjQ4LCA4LCA1LCAyMTksIDczLCAyMjYsIDU1LCAKKyAgICAyNDgsIDgsIDUsIDQsIDI1MywgMjExLCAyMjYsIDU1LCAyNDgsIDgsIDUsIDIxNCwgMTksIDI1MiwgMTk0LCAyMjYsIDU1LCAKKyAgICAyNDgsIDgsIDUsIDM4LCAyMjcsIDE0OSwgOTEsIDIzMiwgMTkzLCAxLCA2MywgMjMyLCAxOTMsIDEsIDc3LCAyMzIsIDE5MywgCisgICAgMSwgMjUzLCAyMDEsIDIzMiwgMTkzLCAxLCAyNTIsIDY2LCAyMzIsIDE5MywgMSwgMjQ0LCA0MSwgMjMyLCAxOTMsIDEsIAorICAgIDI0OSwgMTI1LCAyMzIsIDE5MywgMSwgNzUsIDIzMiwgMTkzLCAxLCAyMTQsIDg1LCAyMzIsIDE5MywgMSwgMjEyLCAxNTIsIAorICAgIDIzMiwgMTkzLCAxLCAyMTcsIDE3NiwgMjMyLCAxOTMsIDEsIDIzNiwgMywgMjMyLCAxOTMsIDEsIDIzNSwgMTQxLCAyMzIsIAorICAgIDE5MywgMSwgMjI1LCAxOSwgMjMyLCAxOTMsIDEsIDE1NSwgMjMyLCAxOTMsIDEsIDE4NCwgMjMyLCAxOTMsIDEsIDIwNiwgCisgICAgMjMyLCAxOTMsIDEsIDIzMSwgNDksIDIzMiwgMTkzLCAxLCAyMjksIDcsIDIzMiwgMTkzLCAxLCA3MiwgMjMyLCAxOTMsIDEsIAorICAgIDIyNywgMTEsIDIzMiwgMTkzLCAxLCAyMzQsIDE2NywgMjMyLCAxOTMsIDEsIDE1MiwgMjMyLCAxOTMsIDEsIDE5NiwgMjMyLCAKKyAgICAxOTMsIDEsIDIxOCwgMTEzLCAyMzIsIDE5MywgMSwgMjE2LCAxMzEsIDIzMiwgMTkzLCAxLCAyNTQsIDE1OSwgMjMyLCAxOTMsIAorICAgIDEsIDI0NSwgMjI5LCAyMzIsIDE5MywgMSwgMjQyLCAxNjIsIDIzMiwgMTkzLCAxLCAyMTMsIDE2OSwgMjUxLCAzNywgMSwgCisgICAgNjMsIDI1MSwgMzcsIDEsIDIyNiwgMjUzLCAyNTEsIDM3LCAxLCAyNDksIDEyNSwgMjUxLCAzNywgMSwgMTU1LCAyNTEsIDM3LCAKKyAgICAxLCAyMTUsIDk2LCAyNTEsIDM3LCAxLCAxNTIsIDI1MSwgMzcsIDEsIDIzMywgMTg0LCAyNTEsIDM3LCAxLCAyNTUsIDEwNiwgCisgICAgMjUxLCAzNywgMSwgMjI1LCAxOSwgMjUxLCAzNywgMSwgMjUzLCAyMDEsIDI1MSwgMzcsIDEsIDE4NCwgMjUxLCAzNywgMSwgCisgICAgNzgsIDI1MSwgMzcsIDEsIDI0OSwgMzIsIDI1MSwgMzcsIDEsIDIxOCwgMTEzLCAyNTEsIDM3LCAxLCAyMjEsIDQ5LCAyNTEsIAorICAgIDM3LCAxLCAyMjEsIDQ4LCAyNTEsIDM3LCAxLCAxOTYsIDI1MSwgMzcsIDEsIDI1MSwgMTIwLCAyNTEsIDM3LCAxLCA3MiwgCisgICAgMjUxLCAzNywgMSwgMjI5LCA3LCAyNTEsIDM3LCAxLCAyMTMsIDE2OSwgMjUxLCAzNywgMSwgMjA2LCAyNTEsIDM3LCAxLCAKKyAgICAyMTYsIDEzMCwgMjUxLCAzNywgMSwgMjI3LCAxMSwgMjUxLCAzNywgMSwgMjE5LCAxNzcsIDI1MSwgMzcsIDEsIDc1LCAyNTEsIAorICAgIDM3LCAxLCA3NywgMjUxLCAzNywgMSwgMjE1LCA5MywgMjUxLCAzNywgMSwgMjM1LCAxNDEsIDI1MSwgMzcsIDEsIDIzNSwgCisgICAgMTMyLCAyNTEsIDM3LCAxLCAyMzAsIDQxLCAyNTEsIDM3LCAxLCAyMTUsIDk4LCAyNTEsIDM3LCAxLCAyNDQsIDQxLCAyNTEsIAorICAgIDM3LCAxLCAyNDMsIDIzMiwgMjUxLCAzNywgMSwgMjE5LCAxMjEsIDI1MSwgMzcsIDEsIDIxOSwgMTIwLCAyNTEsIDM3LCAxLCAKKyAgICAyMjksIDIyOCwgMjUxLCAzNywgMSwgMjM2LCAxNDUsIDI1MSwgMzcsIDEsIDI1MSwgMTE5LCAyNTEsIDM3LCAxLCAyMTYsIAorICAgIDEzMSwgMjUxLCAzNywgMSwgMjE1LCA5NSwgMjUxLCAzNywgMSwgMjIzLCAxMTYsIDI1MSwgMzcsIDEsIDIzMiwgNiwgMjUxLCAKKyAgICAzNywgMSwgMjMyLCA1LCAyNTEsIDM3LCAxLCAyMzIsIDQsIDI1MSwgMzcsIDEsIDIzMiwgMywgMjUxLCAzNywgMSwgMjMzLCAKKyAgICAxODMsIDI1MSwgMzcsIDEsIDI0NiwgNTUsIDI1MSwgMzcsIDEsIDIxNSwgOTQsIDU0LCAzMiwgMSwgNjMsIDU0LCAzMiwgMSwgCisgICAgMjUyLCAxMjEsIDU0LCAzMiwgMSwgMjM1LCA0NCwgNTQsIDMyLCAxLCAyNDgsIDE2MiwgNTQsIDMyLCAxLCA3NywgNTQsIDMyLCAKKyAgICAxLCAyMTQsIDIzNywgNTQsIDMyLCAxLCAyMTIsIDg3LCA1NCwgMzIsIDEsIDI0MiwgODUsIDU0LCAzMiwgMSwgMjE3LCAxNjEsIAorICAgIDU0LCAzMiwgMSwgNzUsIDU0LCAzMiwgMSwgMTgzLCA1NCwgMzIsIDEsIDI0NSwgMjUyLCA1NCwgMzIsIDEsIDI0NSwgMjM4LCAKKyAgICA1NCwgMzIsIDEsIDI0NSwgMjI5LCA1NCwgMzIsIDEsIDI0NSwgMTYxLCA1NCwgMzIsIDEsIDc4LCA1NCwgMzIsIDEsIDIyNiwgCisgICAgMTMyLCA1NCwgMzIsIDEsIDIyMSwgOCwgNTQsIDMyLCAxLCAyMzQsIDgxLCA1NCwgMzIsIDEsIDI0NSwgMTc2LCA1NCwgMzIsIAorICAgIDEsIDI0NSwgMTY2LCA1NCwgMzIsIDEsIDIxNywgMjQyLCA1NCwgMzIsIDEsIDcyLCA1NCwgMzIsIDEsIDI0NSwgMjU1LCA1NCwgCisgICAgMzIsIDEsIDIyNiwgNDgsIDU0LCAzMiwgMSwgMjM0LCAyMzcsIDU0LCAzMiwgMSwgMjQ2LCAyNCwgNTQsIDMyLCAxLCAyNDUsIAorICAgIDE2OCwgNTQsIDMyLCAxLCAyNTAsIDE5MCwgNTQsIDMyLCAxLCAyMzYsIDE0NSwgNTQsIDMyLCAxLCAyMTUsIDk4LCA1NCwgCisgICAgMzIsIDIyOCwgOTcsIDExOCwgNTQsIDMyLCAyMjgsIDk3LCAxODUsIDU0LCAzMiwgMjI4LCA5NywgMjE3LCAyMTMsIDU0LCAKKyAgICAzMiwgMjI4LCA5NywgMjQ0LCAyMDMsIDI0MiwgMjQ5LCAxLCAyNTQsIDIzOSwgMjQyLCAyNDksIDEsIDI1MiwgMjA5LCAyNDIsIAorICAgIDI0OSwgMSwgMjQzLCA1MSwgMjQyLCAyNDksIDEsIDI0OSwgMTQsIDI0MiwgMjQ5LCAxLCAyNTQsIDIzNSwgMjQyLCAyNDksIAorICAgIDEsIDIyNSwgMiwgMjQyLCAyNDksIDEsIDIzNiwgMTQsIDI0MiwgMjQ5LCAxLCAyNDIsIDE0MSwgMjQyLCAyNDksIDEsIDIxNywgCisgICAgMTI0LCAyNDIsIDI0OSwgMSwgMjQ2LCA1LCAyNDIsIDI0OSwgMSwgMjM0LCA1NCwgMjQyLCAyNDksIDEsIDIzMywgMjM0LCAKKyAgICAyNDIsIDI0OSwgMSwgMjMyLCA1NywgMjQyLCAyNDksIDEsIDIzMCwgNzMsIDI0MiwgMjQ5LCAxLCAyMzUsIDIzNSwgMjQyLCAKKyAgICAyNDksIDEsIDIxNSwgMTEzLCAyNDIsIDI0OSwgMSwgMjI2LCAyMzMsIDI0MiwgMjQ5LCAxLCAyMjksIDkwLCAyNDIsIDI0OSwgCisgICAgMSwgMjI0LCA5MSwgMjQyLCAyNDksIDEsIDIyMiwgMTU5LCAyNDIsIDI0OSwgMSwgMjE3LCAyMjUsIDI0MiwgMjQ5LCAxLCAKKyAgICAyMTMsIDIyMiwgMjQyLCAyNDksIDEsIDI0NSwgMTEsIDI0MiwgMjQ5LCAxLCAyMzYsIDE0OSwgMjQyLCAyNDksIDEsIDI0MSwgCisgICAgNTIsIDI0MiwgMjQ5LCAxLCAyMjcsIDQ1LCAyNDIsIDI0OSwgMSwgMjI5LCA5NSwgMjQxLCA2MiwgMjE1LCAxODUsIDEsIAorICAgIDI1NCwgMTgzLCAyMTUsIDE4NSwgMSwgMjUyLCA3MywgMjE1LCAxODUsIDEsIDI0MywgMjA0LCAyMTUsIDE4NSwgMSwgMjM0LCAKKyAgICAyNTAsIDIxNSwgMTg1LCAxLCAyNDgsIDEyNiwgMjE1LCAxODUsIDEsIDI0MSwgMTczLCAyMTUsIDE4NSwgMSwgMjEzLCAyMTcsIAorICAgIDIxNSwgMTg1LCAxLCAyMTIsIDc4LCAyMTUsIDE4NSwgMSwgMjQxLCA5MCwgMjE1LCAxODUsIDEsIDIxNywgMTk2LCAyMTUsIAorICAgIDE4NSwgMSwgMjEyLCAyMjUsIDIxNSwgMTg1LCAxLCAyMzUsIDExMiwgMjE1LCAxODUsIDEsIDIyMCwgMjIxLCAyMTUsIDE4NSwgCisgICAgMSwgMjMzLCAyMjAsIDIxNSwgMTg1LCAxLCAyMzEsIDE5OSwgMjE1LCAxODUsIDEsIDI0OCwgOTQsIDIxNSwgMTg1LCAxLCAKKyAgICAyMjgsIDkzLCAyMTUsIDE4NSwgMSwgMjEyLCA4LCAyMTUsIDE4NSwgMSwgMjIyLCAxODcsIDIxNSwgMTg1LCAxLCAyNTQsIAorICAgIDIzMSwgMjE1LCAxODUsIDEsIDIyNSwgNzEsIDIxNSwgMTg1LCAxLCAyMjIsIDIxOSwgMjE1LCAxODUsIDEsIDIyNCwgMjE1LCAKKyAgICAyMTUsIDE4NSwgMSwgMjI0LCA3MSwgMjE1LCAxODUsIDEsIDIxNywgMTY1LCAyMTUsIDE4NSwgMSwgMjQzLCA4NCwgMjE1LCAKKyAgICAxODUsIDEsIDEwOSwgMjE1LCAxODUsIDEsIDc1LCAyMTUsIDE4NSwgMSwgNzIsIDIxNSwgMTg1LCAxLCAyMTksIDEzMiwgCisgICAgMjE1LCAxODUsIDIxMywgMTk5LCAyNDcsIDI0NSwgNTQsIDIyNiwgODEsIDUsIDYzLCA1NCwgMjI2LCA4MSwgNSwgNzUsIDU0LCAKKyAgICAyMjYsIDgxLCA1LCA3MiwgNTQsIDIyNiwgODEsIDUsIDE4MywgNTQsIDIyNiwgODEsIDUsIDIzNCwgODEsIDU0LCAyMjYsIAorICAgIDgxLCA1LCAyNDMsIDIzMCwgNTQsIDIyNiwgODEsIDUsIDI0MiwgMjEzLCA1NCwgMjI2LCA4MSwgNSwgMjEzLCAxNTYsIDU0LCAKKyAgICAyMjYsIDgxLCA1LCAyNTEsIDg4LCA1NCwgMjI2LCA4MSwgNSwgMjM2LCAwLCA1NCwgMjI2LCA4MSwgNSwgMjM1LCAyMjUsIAorICAgIDU0LCAyMjYsIDgxLCA1LCAyMTgsIDY2LCA1NCwgMjI2LCA4MSwgNSwgMjE2LCA5MCwgNTQsIDIyNiwgODEsIDUsIDI0OSwgCisgICAgMzAsIDU0LCAyMjYsIDgxLCA1LCAyNDgsIDc2LCA1NCwgMjI2LCA4MSwgNSwgMjQ2LCAxNTQsIDU0LCAyMjYsIDgxLCA1LCAKKyAgICAyMTcsIDE3NCwgNTQsIDIyNiwgODEsIDUsIDE5NSwgNTQsIDIyNiwgODEsIDUsIDI1MiwgMjM0LCA1NCwgMjI2LCA4MSwgNSwgCisgICAgMjQ1LCAyOSwgNTQsIDIyNiwgODEsIDUsIDIwNywgNTQsIDIyNiwgODEsIDUsIDIyOCwgMTM1LCA1NCwgMjI2LCA4MSwgNSwgCisgICAgMTkxLCA1NCwgMjI2LCA4MSwgNSwgMjMxLCAxMTIsIDU0LCAyMjYsIDgxLCA1LCAyMzAsIDI0MiwgNTQsIDIyNiwgODEsIDUsIAorICAgIDE4OSwgNTQsIDIyNiwgODEsIDUsIDIxNSwgOCwgNTQsIDIyNiwgODEsIDUsIDIxNCwgMTU5LCA1NCwgMjI2LCA4MSwgNSwgCisgICAgMjA4LCA1NCwgMjI2LCA4MSwgNSwgMjIzLCA3NywgNTQsIDIyNiwgODEsIDUsIDIzMywgMjU1LCA1NCwgMjI2LCA4MSwgNSwgCisgICAgMjIyLCAyMjcsIDU0LCAyMjYsIDgxLCA1LCAyMTIsIDEwOSwgNTQsIDIyNiwgODEsIDUsIDIyMSwgNDcsIDU0LCAyMjYsIDgxLCAKKyAgICA1LCAyMTksIDE3NiwgNTQsIDIyNiwgODEsIDUsIDE2MiwgNTQsIDIyNiwgODEsIDUsIDI1MywgMjI5LCA1NCwgMjI2LCA4MSwgCisgICAgNSwgMjUzLCAyMjgsIDU0LCAyMjYsIDgxLCA1LCAyNTMsIDIyNywgNTQsIDIyNiwgODEsIDUsIDIxMywgMTMzLCA1NCwgMjI2LCAKKyAgICA4MSwgNSwgMjQ5LCAxMSwgNTQsIDIyNiwgODEsIDUsIDI0OSwgMTAsIDU0LCAyMjYsIDgxLCA1LCAyNTIsIDIxNSwgNTQsIAorICAgIDIyNiwgODEsIDUsIDI1MSwgMTM5LCA1NCwgMjI2LCA4MSwgMjEzLCAxOTksIDI0NywgMjQ1LCA1NCwgMjI2LCA4MSwgNTEsIAorICAgIDExOCwgNTQsIDIyNiwgODEsIDUxLCAxMTIsIDU0LCAyMjYsIDgxLCA1MSwgMjE3LCAyMTMsIDU0LCAyMjYsIDgxLCA1MSwgCisgICAgMjE2LCA0NSwgNTQsIDIyNiwgODEsIDUxLCAyNDEsIDYyLCAxNzUsIDYsIDEsIDE4NywgNzUsIDE3NSwgNiwgMSwgMTg3LCAKKyAgICA3NywgMTc1LCA2LCAxLCAxODcsIDYzLCAxNzUsIDYsIDEsIDE4NywgMjU0LCAyNDIsIDE3NSwgNiwgMSwgMTg3LCA3OCwgCisgICAgMTc1LCA2LCAxLCAxODcsIDIyNywgODYsIDE3NSwgNiwgMSwgMjIwLCAxOTYsIDc1LCAxNzUsIDYsIDEsIDIyMCwgMTk2LCAKKyAgICA3NywgMTc1LCA2LCAxLCAyMjAsIDE5NiwgNjMsIDE3NSwgNiwgMSwgMjIwLCAxOTYsIDI1NCwgMjQyLCAxNzUsIDYsIDEsIAorICAgIDIyMCwgMTk2LCA3OCwgMTc1LCA2LCAxLCAyMjAsIDE5NiwgMjI3LCA4NiwgMTc1LCA2LCAxLCAyNTMsIDIxMCwgMTc1LCA2LCAKKyAgICAxLCAyMjcsIDIyLCAxNzUsIDYsIDEsIDIxMywgMTg2LCAxNzUsIDYsIDEsIDIxMywgMzYsIDE3NSwgNiwgMSwgMjQyLCAxNjIsIAorICAgIDE3NSwgNiwgMSwgMjI2LCAxMjIsIDE3NSwgNiwgMSwgMjUyLCAxMTIsIDE3NSwgNiwgMSwgMjE3LCAyMzIsIDE3NSwgNiwgMSwgCisgICAgMjQ4LCAxNDksIDE3NSwgNiwgMSwgMjUwLCAxODcsIDE3NSwgNiwgMSwgMjM1LCAyNDAsIDE3NSwgNiwgMSwgMjM1LCA1MSwgCisgICAgMTc1LCA2LCAxLCAyNDMsIDE3OSwgMTc1LCA2LCAxLCAyNDYsIDI0LCAxNzUsIDYsIDEsIDIxNCwgMjMyLCAxNzUsIDYsIDEsIAorICAgIDI0NSwgMTQ2LCAxNzUsIDYsIDEsIDIxNywgMTYwLCAxNzUsIDYsIDEsIDI0NSwgMTY2LCAxNzUsIDYsIDEsIDIxMiwgODUsIAorICAgIDE3NSwgNiwgMSwgMjQ1LCAxNjEsIDE3NSwgNiwgMSwgMjEyLCA2NiwgMTc1LCA2LCAxLCAyNDUsIDE3NiwgMTc1LCA2LCAxLCAKKyAgICAyNDUsIDI1MiwgMTc1LCA2LCAxLCAyNDUsIDIzOCwgMTc1LCA2LCAxLCAyNDUsIDIyOSwgMTc1LCA2LCAxLCAyNDUsIDIxNywgCisgICAgMTc1LCA2LCAxLCAyMjcsIDEyMiwgMTc1LCA2LCAxLCAyNDUsIDEyNiwgMTc1LCA0LCAxLCAxODcsIDc1LCAxNzUsIDQsIDEsIAorICAgIDE4NywgNzcsIDE3NSwgNCwgMSwgMTg3LCA2MywgMTc1LCA0LCAxLCAxODcsIDI1NCwgMjQyLCAxNzUsIDQsIDEsIDE4NywgCisgICAgNzgsIDE3NSwgNCwgMSwgMTg3LCAyMjcsIDg2LCAxNzUsIDQsIDEsIDIyMCwgMTk2LCA3NSwgMTc1LCA0LCAxLCAyMjAsIAorICAgIDE5NiwgNzcsIDE3NSwgNCwgMSwgMjIwLCAxOTYsIDYzLCAxNzUsIDQsIDEsIDIyMCwgMTk2LCAyNTQsIDI0MiwgMTc1LCA0LCAKKyAgICAxLCAyMjAsIDE5NiwgNzgsIDE3NSwgNCwgMSwgMjIwLCAxOTYsIDIyNywgODYsIDE3NSwgNCwgMSwgMjUzLCAyMTAsIDE3NSwgCisgICAgNCwgMSwgMjI3LCAyMiwgMTc1LCA0LCAxLCAyMTMsIDE4NiwgMTc1LCA0LCAxLCAyMTMsIDM2LCAxNzUsIDQsIDEsIDI0MiwgCisgICAgMTYyLCAxNzUsIDQsIDEsIDIyNiwgMTIyLCAxNzUsIDQsIDEsIDI1MiwgMTEyLCAxNzUsIDQsIDEsIDIxNywgMjMyLCAxNzUsIAorICAgIDQsIDEsIDI0OCwgMTQ5LCAxNzUsIDQsIDEsIDI1MCwgMTg3LCAxNzUsIDQsIDEsIDIzNSwgMjQwLCAxNzUsIDQsIDEsIDIzNSwgCisgICAgNTEsIDE3NSwgNCwgMSwgMjQzLCAxNzksIDE3NSwgNCwgMSwgMjQ2LCAyNCwgMTc1LCA0LCAxLCAyMTQsIDIzMiwgMTc1LCA0LCAKKyAgICAxLCAyNDUsIDE0NiwgMTc1LCA0LCAxLCAyMTcsIDE2MCwgMTc1LCA0LCAxLCAyNDUsIDE2NiwgMTc1LCA0LCAxLCAyMTIsIAorICAgIDg1LCAxNzUsIDQsIDEsIDI0NSwgMTYxLCAxNzUsIDQsIDEsIDIxMiwgNjYsIDE3NSwgNCwgMSwgMjQ1LCAxNzYsIDE3NSwgNCwgCisgICAgMSwgMjQ1LCAyNTIsIDE3NSwgNCwgMSwgMjQ1LCAyMzgsIDE3NSwgNCwgMSwgMjQ1LCAyMjksIDE3NSwgNCwgMSwgMjQ1LCAKKyAgICAyMTcsIDE3NSwgNCwgMSwgMjI3LCAxMjIsIDE3NSwgNCwgMSwgMjQ1LCAxMjYsIDIyMSwgMTQsIDEsIDIyNiwgMTIwLCAyMjEsIAorICAgIDE0LCAxLCAyMTYsIDIzMSwgMjIxLCAxNCwgMSwgMjM0LCAyMTEsIDIyMSwgMTQsIDEsIDI0NCwgMjM2LCAyMjEsIDE0LCAxLCAKKyAgICAyMTcsIDEzOCwgMjIxLCAxNCwgMSwgMjIwLCA1LCAyMjEsIDE0LCAxLCAyMTgsIDIyOCwgMjIxLCAxNCwgMSwgMjUwLCAxMjEsIAorICAgIDIyMSwgMTQsIDEsIDIxMywgMzgsIDIyMSwgMTQsIDEsIDI0MSwgNjEsIDIyMSwgMTQsIDEsIDI1MiwgNTMsIDIyMSwgMTQsIAorICAgIDEsIDI0OCwgMTYxLCAyMjEsIDE0LCAxLCAyNDMsIDIxNiwgMjIxLCAxNCwgMSwgMjE0LCAxMDgsIDIyMSwgMTQsIDEsIDIxNywgCisgICAgMTQyLCAyMjEsIDE0LCAxLCAyMTIsIDE0LCAyMjEsIDE0LCAxLCAyMzEsIDIyNCwgMjIxLCAxNCwgMSwgMjM1LCAxNjYsIAorICAgIDIyMSwgMTQsIDEsIDIxMywgMjE1LCAyMjEsIDE0LCAxLCAyNDIsIDE1MCwgMjIxLCAxNCwgMSwgMjMzLCAxMywgMjIxLCAxNCwgCisgICAgMSwgMjMxLCA3MiwgMjIxLCAxNCwgMSwgMjM2LCAxNTIsIDIyMSwgMTQsIDEsIDI0NiwgMjMsIDIyMSwgMTQsIDEsIDI1NCwgCisgICAgMTcsIDIyMSwgMTQsIDEsIDI1NSwgMjQsIDIyMSwgMTQsIDEsIDIyNywgOTksIDIyMSwgMTQsIDEsIDIxMywgMjAyLCAyMjEsIAorICAgIDE0LCAxLCAyMjcsIDM2LCAyMjEsIDE0LCAxLCAyNTQsIDI0MiwgMjIxLCAxNCwgMSwgMjIzLCAxNDMsIDIyMSwgMTQsIDEsIAorICAgIDIyOCwgOTMsIDIyMSwgMTQsIDEsIDI0NiwgMzgsIDIyMSwgMTQsIDEsIDI1NCwgMjQ3LCAyMjEsIDE0LCAxLCAyNDAsIDIyMSwgCisgICAgMjIxLCAxNCwgMSwgMjE1LCAxNDAsIDIyMSwgMTQsIDEsIDIyNywgMTU1LCAyMjEsIDE0LCAxLCAyMjcsIDc5LCAyMjEsIDE0LCAKKyAgICAxLCAyMjcsIDEyMSwgMjIxLCAxNCwgMSwgMjUzLCAyMTMsIDIyMSwgMTQsIDEsIDI1NCwgNjAsIDIyMSwgMTQsIDEsIDIyNywgCisgICAgNjIsIDIyMSwgMTQsIDEsIDI1NCwgMjI3LCAyMjEsIDE0LCAxLCAyNDUsIDE3MCwgMjIxLCAxNCwgMSwgMjU0LCAzOSwgMjIxLCAKKyAgICAxNCwgMSwgMjQ2LCA0OCwgMjIxLCAxNCwgMSwgMjQwLCAyMjcsIDIyMSwgMTQsIDEsIDIxMywgNSwgMjI3LCA0NywgMSwgCisgICAgMjU0LCAyMDUsIDIyNywgNDcsIDEsIDI1MiwgMjM0LCAyMjcsIDQ3LCAxLCAyMTgsIDY2LCAyMjcsIDQ3LCAxLCAyMzYsIDAsIAorICAgIDIyNywgNDcsIDEsIDIxMywgMTU2LCAyMjcsIDQ3LCAxLCAyMzQsIDI1MCwgMjI3LCA0NywgMSwgMjQ4LCAxNDgsIDIyNywgCisgICAgNDcsIDEsIDIwOCwgMjI3LCA0NywgMSwgMjIyLCAyMjcsIDIyNywgNDcsIDEsIDIyMCwgMjI3LCAyMjcsIDQ3LCAxLCAyNDgsIAorICAgIDk3LCAyMjcsIDQ3LCAxLCAyNTEsIDE1LCAyMjcsIDQ3LCAxLCAyNDMsIDIzMCwgMjI3LCA0NywgMSwgMjQ1LCAyOSwgMjI3LCAKKyAgICA0NywgMSwgMjI1LCA5LCAyMjcsIDQ3LCAxLCAyMzUsIDEyNywgMjI3LCA0NywgMSwgMjMzLCAyNTAsIDIyNywgNDcsIDEsIAorICAgIDIzMSwgODMsIDIyNywgNDcsIDEsIDIyOCwgNzcsIDIyNywgNDcsIDEsIDIxNCwgMTcsIDIyNywgNDcsIDEsIDE2MiwgMjI3LCAKKyAgICA0NywgMSwgMTg5LCAyMjcsIDQ3LCAxLCA2MywgMjI3LCA0NywgMSwgNzcsIDIyNywgNDcsIDEsIDc1LCAyMjcsIDQ3LCAxLCAKKyAgICA3OCwgMjI3LCA0NywgMSwgNzIsIDIyNywgNDcsIDEsIDI1NSwgMTA0LCAyMjcsIDQ3LCAxLCAyNDYsIDMwLCAyMjcsIDQ3LCAKKyAgICAxLCAyMjcsIDg2LCAyMjcsIDQ3LCAyMSwgMjEyLCA3OSwgMjI3LCA0NywgMjEsIDExOCwgMjI3LCA0NywgMjEsIDExMiwgCisgICAgMjI3LCA0NywgMjEsIDE3MCwgMjI3LCA0NywgMjEsIDE2NywgMjI3LCA0NywgMjEsIDE4NSwgMjI3LCA0NywgMjEsIDE5MiwgCisgICAgMjI3LCA0NywgMjEsIDIwMCwgMjI3LCA0NywgMjEsIDE5OCwgMjI3LCA0NywgMjEsIDIwMywgMjQ5LCAxMzIsIDMsIDYzLCAKKyAgICAyNDksIDEzMiwgMywgNzcsIDI0OSwgMTMyLCAzLCA3NSwgMjQ5LCAxMzIsIDMsIDc4LCAyNDksIDEzMiwgMywgNzIsIDI0OSwgCisgICAgMTMyLCAzLCAyMzYsIDAsIDI0OSwgMTMyLCAzLCAyMzUsIDE4NSwgMjQ5LCAxMzIsIDMsIDE4MywgMjQ5LCAxMzIsIDMsIAorICAgIDIzNSwgNDQsIDI0OSwgMTMyLCAzLCAyMzQsIDIxMiwgMjQ5LCAxMzIsIDMsIDIzNCwgMTQ4LCAyNDksIDEzMiwgMywgMjM0LCAKKyAgICA4MSwgMjQ5LCAxMzIsIDMsIDIzMywgMjU1LCAyNDksIDEzMiwgMywgMjMzLCAxODAsIDI0OSwgMTMyLCAzLCAyMzMsIDExMSwgCisgICAgMjQ5LCAxMzIsIDMsIDIzMywgMjYsIDI0OSwgMTMyLCAzLCAyMzIsIDIzMCwgMjQ5LCAxMzIsIDMsIDE5MSwgMjQ5LCAxMzIsIAorICAgIDMsIDIzMSwgMjI2LCAyNDksIDEzMiwgMywgMjMxLCAxMTIsIDI0OSwgMTMyLCAzLCAyMzEsIDQ1LCAyNDksIDEzMiwgMywgCisgICAgMjMwLCAyNDIsIDI0OSwgMTMyLCAzLCAyMDcsIDI0OSwgMTMyLCAzLCAyMjksIDI1NCwgMjQ5LCAxMzIsIDMsIDIyOSwgMTI4LCAKKyAgICAyNDksIDEzMiwgMywgMjI4LCAyMjgsIDI0OSwgMTMyLCAzLCAyMjgsIDEzNSwgMjQ5LCAxMzIsIDMsIDE5NSwgMjQ5LCAxMzIsIAorICAgIDMsIDIyNiwgMTMyLCAyNDksIDEzMiwgMywgMjI2LCAyMCwgMjQ5LCAxMzIsIDMsIDIyNSwgMTg2LCAyNDksIDEzMiwgMywgCisgICAgMjI1LCA3MSwgMjQ5LCAxMzIsIDMsIDIwOCwgMjQ5LCAxMzIsIDMsIDIyNCwgNTUsIDI0OSwgMTMyLCAzLCAyMjMsIDIyMiwgCisgICAgMjQ5LCAxMzIsIDMsIDIyMywgMTQ2LCAyNDksIDEzMiwgMywgMjIzLCA3NywgMjQ5LCAxMzIsIDMsIDIyMiwgMjI3LCAyNDksIAorICAgIDEzMiwgMywgMjIyLCAxMjMsIDI0OSwgMTMyLCAzLCAyMjAsIDEzNiwgMjQ5LCAxMzIsIDMsIDIyMCwgNSwgMjQ5LCAxMzIsIAorICAgIDMsIDIxOSwgNDEsIDI0OSwgMTMyLCAzLCAyMTgsIDY2LCAyNDksIDEzMiwgMywgMjE3LCAyNDIsIDI0OSwgMTMyLCAzLCAKKyAgICAyMTcsIDg0LCAyNDksIDEzMiwgMywgMTA5LCAyNDksIDEzMiwgMywgMjE2LCA5MCwgMjQ5LCAxMzIsIDMsIDIxNCwgNTIsIAorICAgIDI0OSwgMTMyLCAzLCAyMTQsIDksIDI0OSwgMTMyLCAzLCAyMTMsIDIzOCwgMjQ5LCAxMzIsIDMsIDIxMywgMjE3LCAyNDksIAorICAgIDEzMiwgMywgMjEzLCAxNTYsIDI0OSwgMTMyLCAzLCAyMTMsIDE1MywgMjQ5LCAxMzIsIDMsIDIxMiwgMTA5LCAyNDksIDEzMiwgCisgICAgMywgMjEyLCAxNiwgMjM2LCAxMTQsIDI1NCwgNjgsIDEsIDI1NCwgMjAzLCAyMzYsIDExNCwgMjU0LCA2OCwgMSwgMjUyLCAKKyAgICA3MiwgMjM2LCAxMTQsIDI1NCwgNjgsIDEsIDI0MywgNDEsIDIzNiwgMTE0LCAyNTQsIDY4LCAxLCAyNDgsIDI1NSwgMjM2LCAKKyAgICAxMTQsIDI1NCwgNjgsIDEsIDI0MiwgODUsIDIzNiwgMTE0LCAyNTQsIDY4LCAxLCAyMTQsIDE3LCAyMzYsIDExNCwgMjU0LCAKKyAgICA2OCwgMSwgMjEyLCA5MCwgMjM2LCAxMTQsIDI1NCwgNjgsIDEsIDI0MiwgNDMsIDIzNiwgMTE0LCAyNTQsIDY4LCAxLCAyMTcsIAorICAgIDE5MiwgMjM2LCAxMTQsIDI1NCwgNjgsIDEsIDIxMiwgMjI0LCAyMzYsIDExNCwgMjU0LCA2OCwgMSwgMjM1LCA4NywgMjM2LCAKKyAgICAxMTQsIDI1NCwgNjgsIDEsIDIzMywgMjE1LCAyMzYsIDExNCwgMjU0LCA2OCwgMSwgMjMxLCAxOTksIDIzNiwgMTE0LCAyNTQsIAorICAgIDY4LCAxLCAyMjgsIDkzLCAyMzYsIDExNCwgMjU0LCA2OCwgMSwgMjIyLCAxODgsIDIzNiwgMTE0LCAyNTQsIDY4LCAxLCAKKyAgICAyNTMsIDIwNSwgMjM2LCAxMTQsIDI1NCwgNjgsIDEsIDIyNiwgMTMyLCAyMzYsIDExNCwgMjU0LCA2OCwgMSwgMjIyLCAyMTgsIAorICAgIDIzNiwgMTE0LCAyNTQsIDY4LCAxLCAyMjQsIDIxNCwgMjM2LCAxMTQsIDI1NCwgNjgsIDEsIDIyMywgMjUzLCAyMzYsIDExNCwgCisgICAgMjU0LCA2OCwgMSwgMjIwLCAyMjEsIDIzNiwgMTE0LCAyNTQsIDY4LCAxLCAyMTgsIDAsIDIzNiwgMTE0LCAyNTQsIDY4LCAKKyAgICAyMjIsIDExNSwgNTMsIDIzNiwgMTE0LCAyNTQsIDY4LCA1MSwgMTE4LCAyMzYsIDExNCwgMjU0LCA2OCwgNTEsIDExMiwgCisgICAgMjM2LCAxMTQsIDI1NCwgNjgsIDUxLCAxNzAsIDIzNiwgMTE0LCAyNTQsIDY4LCA1MSwgMjE3LCAyMTMsIDIzNiwgMTE0LCAKKyAgICAyNTQsIDY4LCA1MSwgMjE2LCA0NSwgMjM2LCAxMTQsIDI1NCwgNjgsIDUxLCAxMjQsIDI0MSwgNjIsIDIzNiwgMTE0LCAyNTQsIAorICAgIDY4LCA1MSwgMTI0LCAyMTcsIDExMywgMjM2LCAxMTQsIDI1NCwgNjgsIDUxLCAyMTcsIDIxNCwgMjE3LCAxMTMsIDIyNiwgCisgICAgMzEsIDEsIDI1NCwgMjAxLCAyMjYsIDMxLCAxLCAyNTIsIDc1LCAyMjYsIDMxLCAxLCAyNDMsIDIwNSwgMjI2LCAzMSwgMSwgCisgICAgMjQ4LCAxMjgsIDIyNiwgMzEsIDEsIDI0MiwgODUsIDIyNiwgMzEsIDEsIDIxNCwgMjQsIDIyNiwgMzEsIDEsIDIxMiwgMTAzLCAKKyAgICAyMjYsIDMxLCAxLCAyNDIsIDQ1LCAyMjYsIDMxLCAxLCAyMTcsIDE5NiwgMjI2LCAzMSwgMSwgMjEyLCAyMjUsIDIyNiwgMzEsIAorICAgIDEsIDIzNSwgMTEyLCAyMjYsIDMxLCAxLCAyMzMsIDIyMSwgMjI2LCAzMSwgMSwgMjMxLCAxOTksIDIyNiwgMzEsIDEsIDIyOCwgCisgICAgOTMsIDIyNiwgMzEsIDEsIDIyMSwgODcsIDIyNiwgMzEsIDEsIDI1NCwgMjMxLCAyMjYsIDMxLCAxLCAyMjYsIDEzMiwgMjI2LCAKKyAgICAzMSwgMSwgMjIyLCAyMTksIDIyNiwgMzEsIDEsIDIyNCwgMjE5LCAyMjYsIDMxLCAxLCAyMjMsIDEyNSwgMjI2LCAzMSwgMSwgCisgICAgMjIwLCAyMjEsIDIyNiwgMzEsIDEsIDIxOCwgNSwgMjI2LCAzMSwgNTEsIDExOCwgMjI2LCAzMSwgNTEsIDIxNywgMjEzLCAKKyAgICAyMjYsIDMxLCA1MSwgMjE2LCA0NSwgMjI2LCAzMSwgNTEsIDEyNCwgMjQxLCA2MiwgMjI2LCAzMSwgNTEsIDExMiwgMjI2LCAKKyAgICAzMSwgNTEsIDE3MCwgMjI2LCAzMSwgMjEzLCAxOTksIDIyMSwgODAsIDIzMiwgMTkyLCAxLCA2MywgMjMyLCAxOTIsIDEsIAorICAgIDI1MywgMjAxLCAyMzIsIDE5MiwgMSwgMjQ0LCA0MSwgMjMyLCAxOTIsIDEsIDI0OSwgMTI1LCAyMzIsIDE5MiwgMSwgNzcsIAorICAgIDIzMiwgMTkyLCAxLCAyMTEsIDIxMSwgMjMyLCAxOTIsIDEsIDc1LCAyMzIsIDE5MiwgMSwgMjEzLCAxMDgsIDIzMiwgMTkyLCAKKyAgICAxLCAyMzUsIDE0MSwgMjMyLCAxOTIsIDEsIDE1NSwgMjMyLCAxOTIsIDEsIDE4NCwgMjMyLCAxOTIsIDEsIDIwNiwgMjMyLCAKKyAgICAxOTIsIDEsIDc4LCAyMzIsIDE5MiwgMSwgMTUyLCAyMzIsIDE5MiwgMSwgMjE5LCAxNzcsIDIzMiwgMTkyLCAxLCAyMTgsIAorICAgIDExMywgMjMyLCAxOTIsIDEsIDcyLCAyMzIsIDE5MiwgMSwgMjQ1LCA5NSwgMjMyLCAxOTIsIDEsIDIyNSwgMTksIDIzMiwgCisgICAgMTkyLCAxLCAxOTYsIDIzMiwgMTkyLCAxLCAyMTYsIDEzMSwgMjMyLCAxOTIsIDEsIDI1NCwgMTU5LCAyMzIsIDE5MiwgMSwgCisgICAgMjQ1LCAyMjksIDIzMiwgMTkyLCAxLCAyMzIsIDE5NCwgMjMyLCAxOTIsIDEsIDIyOSwgNywgMjMyLCAxOTIsIDEsIDI1MSwgCisgICAgMTIxLCAyMzIsIDE5MiwgMjE2LCAxOTMsIDc5LCAyMzQsIDIzOCwgMSwgNjMsIDIzNCwgMjM4LCAzMCwgNSwgNzUsIDIzNCwgCisgICAgMjM4LCAzMCwgNSwgNzIsIDIzNCwgMjM4LCAzMCwgNSwgMTY1LCAxNTIsIDIzNCwgMjM4LCAzMCwgNSwgNzcsIDIzNCwgMjM4LCAKKyAgICAzMCwgNSwgNzgsIDIzNCwgMjM4LCAzMCwgMjMzLCAxNDUsIDc5LCAyMzQsIDIzOCwgNSwgNTIsIDIyMywgMTY1LCA1NSwgCisgICAgMjM0LCAyMzgsIDUsIDI1NCwgMTEzLCAyMzQsIDIzOCwgNSwgMjE0LCAxMzIsIDIzNCwgMjM4LCAxLCAxODMsIDIzNCwgMjM4LCAKKyAgICAxLCAyMzQsIDI1MCwgMjM0LCAyMzgsIDEsIDI0MywgMjMwLCAyMzQsIDIzOCwgMSwgMjQzLCA4OSwgMjM0LCAyMzgsIDEsIAorICAgIDI1MSwgODgsIDIzNCwgMjM4LCAxLCAyNTAsIDIxNSwgMjM0LCAyMzgsIDEsIDIzNiwgMCwgMjM0LCAyMzgsIDEsIDIyOCwgCisgICAgNjQsIDIzNCwgMjM4LCAxLCAyMTYsIDEyOCwgMjM0LCAyMzgsIDEsIDIxNiwgMTE2LCAyMzQsIDIzOCwgMSwgMjQ4LCAyMDcsIAorICAgIDIzNCwgMjM4LCAxLCAyNDgsIDE5MSwgMjM0LCAyMzgsIDEsIDIyOSwgNiwgMjM0LCAyMzgsIDEsIDIxOCwgNjYsIDIzNCwgCisgICAgMjM4LCAxLCAyMTcsIDE3NCwgMjM0LCAyMzgsIDEsIDI0OSwgMzAsIDIzNCwgMjM4LCAxLCAyNDgsIDk3LCAyMzQsIDIzOCwgCisgICAgMSwgMjA3LCAyMzQsIDIzOCwgMSwgMTk1LCAyMzQsIDIzOCwgMSwgMjI2LCA1OSwgMjM0LCAyMzgsIDEsIDI1MiwgMjM0LCAKKyAgICAyMzQsIDIzOCwgMSwgMjUyLCA2NSwgMjM0LCAyMzgsIDEsIDE5MSwgMjM0LCAyMzgsIDEsIDE4OSwgMjM0LCAyMzgsIDEsIAorICAgIDIwOCwgMjM0LCAyMzgsIDEsIDIzMywgMjU1LCAyMzQsIDIzOCwgMSwgMjE1LCA4LCAyMzQsIDIzOCwgMSwgMjIxLCA0NywgCisgICAgMjM0LCAyMzgsIDEsIDIxOSwgMTc2LCAyMzQsIDIzOCwgMSwgMjIyLCAyMjcsIDIzNCwgMjM4LCAxLCAyMTIsIDEwOSwgMjM0LCAKKyAgICAyMzgsIDEsIDE2MiwgMjM0LCAyMzgsIDEsIDIzNCwgMTY2LCAyMzQsIDIzOCwgMSwgMjE2LCA5NiwgMjM0LCAyMzgsIDUsIAorICAgIDI1MiwgMTg3LCA1MCwgMjM0LCAyMzgsIDUsIDI1MSwgMjEsIDIzNCwgMjM4LCA1LCA2MiwgNTUsIDIzNCwgMjM4LCAyMTQsIAorICAgIDEzNywgMjM0LCAyMzgsIDIxLCAxMTgsIDIzNCwgMjM4LCAyMSwgMTEyLCAyMzQsIDIzOCwgMjEsIDE3MCwgMjM0LCAyMzgsIAorICAgIDIxLCAxNjcsIDIzNCwgMjM4LCA1MSwgMjE3LCAyMTMsIDIzNCwgMjM4LCA1MSwgMjE2LCA0NSwgMjM0LCAyMzgsIDUxLCAKKyAgICAxMjQsIDI0MSwgNjIsIDIzNCwgMjM4LCA1MSwgMTI0LCAyMTcsIDExMywgMjM0LCAyMzgsIDIyNSwgNjMsIDI0NywgMTk1LCAKKyAgICAyMzQsIDIzOCwgMjI1LCA2MywgNCwgMjUwLCA5NSwgMjM0LCAyMzgsIDIyNSwgNjMsIDI1MCwgOTUsIDIzNCwgMjM4LCAyMjUsIAorICAgIDYzLCAyNDksIDIwMCwgMTM0LCAyMzQsIDIzOCwgMjI1LCA2MywgMjMyLCA1OCwgMjM0LCAyMzgsIDIyNSwgNjMsIDIzMiwgCisgICAgMjQ0LCAyMzQsIDIzOCwgMjI1LCA2MywgMjQ4LCAyNDUsIDIzNCwgMjM4LCAyMjUsIDYzLCA1MiwgMjQ4LCAyNDUsIDIzNCwgCisgICAgMjM4LCAyMjUsIDYzLCAyMzMsIDc3LCA1NCwgMjE5LCAyMzQsIDI1NCwgNzksIDEsIDI0MiwgODUsIDU0LCAyMTksIDIzNCwgCisgICAgMjU0LCA3OSwgMSwgMjMzLCAyMTUsIDU0LCAyMTksIDIzNCwgMjU0LCA3OSwgMSwgMjQyLCA0MywgNTQsIDIxOSwgMjM0LCAKKyAgICAyNTQsIDc5LCAxLCAyMzEsIDE5OSwgNTQsIDIxOSwgMjM0LCAyNTQsIDc5LCAxLCAyMjQsIDIxNCwgNTQsIDIxOSwgMjM0LCAKKyAgICAyNTQsIDc5LCAxLCAyMTQsIDE3LCA1NCwgMjE5LCAyMzQsIDI1NCwgNzksIDEsIDIyMCwgMjIxLCA1NCwgMjE5LCAyMzQsIAorICAgIDI1NCwgNzksIDEsIDIyMywgMjUzLCA1NCwgMjE5LCAyMzQsIDI1NCwgNzksIDEsIDI1MiwgNzIsIDU0LCAyMTksIDIzNCwgCisgICAgMjU0LCA3OSwgMSwgMjE4LCAwLCA1NCwgMjE5LCAyMzQsIDI1NCwgNzksIDEsIDIyMiwgMTY2LCA1NCwgMjE5LCAyMzQsIAorICAgIDI1NCwgNzksIDEsIDIzNSwgODcsIDU0LCAyMTksIDIzNCwgMjU0LCA3OSwgMSwgMjI4LCA5MywgNTQsIDIxOSwgMjM0LCAKKyAgICAyNTQsIDc5LCAxLCAyMzQsIDIzNCwgNTQsIDIxOSwgMjM0LCAyNTQsIDc5LCAxLCAyMjIsIDIxOCwgNTQsIDIxOSwgMjM0LCAKKyAgICAyNTQsIDc5LCAxLCAyMjIsIDE4OCwgNTQsIDIxOSwgMjM0LCAyNTQsIDc5LCAxLCAyNDQsIDI0MywgNTQsIDIxOSwgMjM0LCAKKyAgICAyNTQsIDc5LCAxLCAyNTQsIDIwNSwgNTQsIDIxOSwgMjM0LCAyNTQsIDc5LCAxLCAyNTMsIDIwNCwgNTQsIDIxOSwgMjM0LCAKKyAgICAyNTQsIDc5LCAxLCAyNDgsIDk1LCA1NCwgMjE5LCAyMzQsIDI1NCwgNzksIDEsIDI0MywgNDEsIDU0LCAyMTksIDIzNCwgCisgICAgMjU0LCA3OSwgMSwgMjQ4LCAyNTUsIDU0LCAyMTksIDIzNCwgMjU0LCA3OSwgMSwgMjQzLCA3OCwgNTQsIDIxOSwgMjM0LCAKKyAgICAyNTQsIDc5LCAxLCAyMTcsIDE5MiwgNTQsIDIxOSwgMjM0LCAyNTQsIDc5LCAxLCAyMTIsIDg5LCA1NCwgMjE5LCAyMzQsIAorICAgIDI1NCwgNzksIDEsIDI0OCwgOTIsIDU0LCAyMTksIDIzNCwgMjU0LCA3OSwgMSwgMjEyLCAyMjQsIDU0LCAyMTksIDIzNCwgCisgICAgMjU0LCA3OSwgMSwgMjE3LCAxNjMsIDU0LCAyMTksIDIzNCwgMjU0LCA3OSwgMSwgMjE3LCAxNDQsIDU0LCAyMTksIDIzNCwgCisgICAgMjU0LCA3OSwgNTEsIDExOCwgNTQsIDIxOSwgMjM0LCAyNTQsIDc5LCA1MSwgMjQ0LCAyMDMsIDU0LCAyMTksIDIzNCwgMjU0LCAKKyAgICA3OSwgMTMwLCAyMzYsIDk2LCAyNTMsIDIxNSwgMSwgNjMsIDI1MywgMjE1LCAxLCAyNTUsIDEwNCwgMjUzLCAyMTUsIDEsIAorICAgIDI1NCwgMTExLCAyNTMsIDIxNSwgMSwgMjU1LCA2MywgMjUzLCAyMTUsIDEsIDI1NCwgMTU5LCAyNTMsIDIxNSwgMSwgMjU1LCAKKyAgICA2NCwgMjUzLCAyMTUsIDEsIDI1NSwgMjAsIDI1MywgMjE1LCAxLCAyNTUsIDE2LCAyNTMsIDIxNSwgMSwgNzcsIDI1MywgCisgICAgMjE1LCAxLCAyNDYsIDMwLCAyNTMsIDIxNSwgMSwgNzgsIDI1MywgMjE1LCAxLCAyMjcsIDg2LCAyNTMsIDIxNSwgMSwgNzUsIAorICAgIDI1MywgMjE1LCAxLCAyMzYsIDE0NSwgMjUzLCAyMTUsIDEsIDcyLCAyNTMsIDIxNSwgMSwgMjE1LCA5OCwgMjUzLCAyMTUsIAorICAgIDEsIDIzNSwgNDQsIDI1MywgMjE1LCAxLCAyMTMsIDE1MywgMjUzLCAyMTUsIDEsIDIxMywgMTE5LCAyNTMsIDIxNSwgMSwgCisgICAgMjEzLCAxMjgsIDI1MywgMjE1LCAxLCAyNDMsIDE1OCwgMjUzLCAyMTUsIDEsIDI0MywgMTIwLCAyNTMsIDIxNSwgMSwgMjQzLCAKKyAgICA3NiwgMjUzLCAyMTUsIDEsIDI1MCwgMjQ3LCAyNTMsIDIxNSwgMSwgMjM1LCAyNDIsIDI1MywgMjE1LCAxLCAyMTcsIDI0MiwgCisgICAgMjUzLCAyMTUsIDEsIDIxNywgMTYxLCAyNTMsIDIxNSwgMSwgMjQ4LCAxNjIsIDI1MywgMjE1LCAxLCAyNDgsIDkwLCAyNTMsIAorICAgIDIxNSwgMSwgMjE2LCAxMjMsIDI1MywgMjE1LCAxLCAyMjYsIDEzMiwgMjUzLCAyMTUsIDEsIDI0NCwgMjQzLCAyNTMsIDIxNSwgCisgICAgMSwgMjUyLCAxMjEsIDI1MywgMjE1LCAxLCAyNTIsIDYyLCAyNTMsIDIxNSwgMSwgMjI5LCAyMTQsIDI1MywgMjE1LCAxLCAKKyAgICAyMjksIDEzNCwgMjUzLCAyMTUsIDEsIDIyOSwgMTM1LCAyNTMsIDIxNSwgMSwgMjI5LCAyNTQsIDI1MywgMjE1LCAxLCAyMjgsIAorICAgIDU2LCAyNTMsIDIxNSwgMSwgMjI5LCAyLCAyNTMsIDIxNSwgMSwgMjMxLCAyMjYsIDI1MywgMjE1LCAxLCAyNDEsIDIyMSwgCisgICAgMjUzLCAyMTUsIDEsIDIxMiwgMTU5LCAyNTMsIDIxNSwgMSwgMjEzLCAzOSwgMjUzLCAyMTUsIDEsIDIxNCwgMjM3LCAyNTMsIAorICAgIDIxNSwgMSwgMjI0LCA1NSwgMjUzLCAyMTUsIDEsIDIzMywgMTgwLCAyNTMsIDIxNSwgMSwgMjIyLCAxMjMsIDI1MywgMjE1LCAKKyAgICAxLCAyMTIsIDg3LCAyNTMsIDIxNSwgMSwgMjIxLCA4LCAyNTMsIDIxNSwgMSwgMjEyLCA2NywgMjUzLCAyMTUsIDEsIDIyMCwgCisgICAgMTQzLCAyNTMsIDIxNSwgMSwgMjE5LCAxNDYsIDI1MywgMjE1LCAxLCAyNDIsIDg1LCAyNTMsIDIxNSwgMjU1LCA1MywgNzksIAorICAgIDIxNywgNDYsIDExOSwgMTgxLCAxMTMsIDEyNCwgNjIsIDIyNSwgNjIsIDQsIDExOSwgMTgxLCAxMTMsIDEyNCwgNjIsIDIyNSwgCisgICAgNjIsIDIzMywgMjA3LCAxMTksIDE4MSwgMTEzLCAxMjQsIDYyLCAyMjUsIDYyLCAyMzMsIDIwNywgMTI0LCA2MiwgMTEzLCAKKyAgICAxMTksIDE4MSwgMjI1LCA2MiwgMjMzLCAyMDcsIDExOSwgMjIzLCAxNjMsIDExMywgMTI0LCAyMjMsIDE2NSwgMjI1LCA2MiwgCisgICAgMjMzLCAyMDcsIDEyNCwgMjIzLCAxNjUsIDExMywgMTE5LCAyMjMsIDE2MywgMjI1LCA2MiwgMjM2LCA3NiwgMjI2LCAxNjMsIAorICAgIDEsIDI1NCwgMjAzLCAyMzYsIDc2LCAyMjYsIDE2MywgMSwgMjUyLCA3MiwgMjM2LCA3NiwgMjI2LCAxNjMsIDEsIDI0MywgCisgICAgNDEsIDIzNiwgNzYsIDIyNiwgMTYzLCAxLCAyNDgsIDI1NSwgMjM2LCA3NiwgMjI2LCAxNjMsIDEsIDI0MiwgODUsIDIzNiwgCisgICAgNzYsIDIyNiwgMTYzLCAxLCAyMTQsIDE3LCAyMzYsIDc2LCAyMjYsIDE2MywgMSwgMjEyLCA5MCwgMjM2LCA3NiwgMjI2LCAKKyAgICAxNjMsIDEsIDI0MiwgNDMsIDIzNiwgNzYsIDIyNiwgMTYzLCAxLCAyMTcsIDE5MiwgMjM2LCA3NiwgMjI2LCAxNjMsIDEsIAorICAgIDIxMiwgMjI0LCAyMzYsIDc2LCAyMjYsIDE2MywgMSwgMjM1LCA4NywgMjM2LCA3NiwgMjI2LCAxNjMsIDEsIDIzMywgMjE1LCAKKyAgICAyMzYsIDc2LCAyMjYsIDE2MywgMSwgMjMxLCAxOTksIDIzNiwgNzYsIDIyNiwgMTYzLCAxLCAyMjgsIDkzLCAyMzYsIDc2LCAKKyAgICAyMjYsIDE2MywgMSwgMjIyLCAxODgsIDIzNiwgNzYsIDIyNiwgMTYzLCAxLCAyNTMsIDIwNSwgMjM2LCA3NiwgMjI2LCAxNjMsIAorICAgIDEsIDIyNiwgMTMyLCAyMzYsIDc2LCAyMjYsIDE2MywgMSwgMjIyLCAyMTgsIDIzNiwgNzYsIDIyNiwgMTYzLCAxLCAyMjQsIAorICAgIDIxNCwgMjM2LCA3NiwgMjI2LCAxNjMsIDEsIDIyMywgMjUzLCAyMzYsIDc2LCAyMjYsIDE2MywgMSwgMjIwLCAyMjEsIDIzNiwgCisgICAgNzYsIDIyNiwgMTYzLCAxLCAyMTgsIDAsIDIzNiwgNzYsIDIyNiwgMTYzLCA1MSwgMTE4LCAyMzYsIDc2LCAyMjYsIDE2MywgCisgICAgNTEsIDExMiwgMjM2LCA3NiwgMjI2LCAxNjMsIDUxLCAxNzAsIDIzNiwgNzYsIDIyNiwgMTYzLCA1MSwgMTY3LCAyMzYsIDc2LCAKKyAgICAyMjYsIDE2MywgNTEsIDIxNywgMjEzLCAyMzYsIDc2LCAyMjYsIDE2MywgNTEsIDIxNiwgNDUsIDIzNiwgNzYsIDIyNiwgCisgICAgMTYzLCA1MSwgMTI0LCAyNDEsIDYyLCAyMzYsIDc2LCAyMjYsIDE2MywgNTEsIDEyNCwgMjE3LCAxMTMsIDIzNiwgNzYsIAorICAgIDIyNiwgMjM2LCAxLCAyNTQsIDIwMywgMjM2LCA3NiwgMjI2LCAyMzYsIDEsIDI1MiwgNzIsIDIzNiwgNzYsIDIyNiwgMjM2LCAKKyAgICAxLCAyNDMsIDQxLCAyMzYsIDc2LCAyMjYsIDIzNiwgMSwgMjQ4LCAyNTUsIDIzNiwgNzYsIDIyNiwgMjM2LCAxLCAyNDIsIAorICAgIDg1LCAyMzYsIDc2LCAyMjYsIDIzNiwgMSwgMjE0LCAxNiwgMjM2LCA3NiwgMjI2LCAyMzYsIDEsIDIxMiwgOTAsIDIzNiwgCisgICAgNzYsIDIyNiwgMjM2LCAxLCAyNDIsIDQzLCAyMzYsIDc2LCAyMjYsIDIzNiwgMSwgMjE3LCAxOTIsIDIzNiwgNzYsIDIyNiwgCisgICAgMjM2LCAxLCAyMTIsIDIyNCwgMjM2LCA3NiwgMjI2LCAyMzYsIDEsIDIzNSwgODcsIDIzNiwgNzYsIDIyNiwgMjM2LCAxLCAKKyAgICAyMzMsIDIxNSwgMjM2LCA3NiwgMjI2LCAyMzYsIDEsIDIzMSwgMTk4LCAyMzYsIDc2LCAyMjYsIDIzNiwgMSwgMjI4LCA5MywgCisgICAgMjM2LCA3NiwgMjI2LCAyMzYsIDEsIDIyMiwgMTg4LCAyMzYsIDc2LCAyMjYsIDIzNiwgMSwgMjI2LCAxMzIsIDIzNiwgNzYsIAorICAgIDIyNiwgMjM2LCAxLCAyMjIsIDIxOCwgMjM2LCA3NiwgMjI2LCAyMzYsIDEsIDIyMCwgMjIxLCAyMzYsIDc2LCAyMjYsIDIzNiwgCisgICAgMSwgMjE4LCAwLCAyMzYsIDc2LCAyMjYsIDIzNiwgNTEsIDExOCwgMjM2LCA3NiwgMjI2LCAyMzYsIDUxLCAxMTIsIDIzNiwgCisgICAgNzYsIDIyNiwgMjM2LCA1MSwgMTcwLCAyMzYsIDc2LCAyMjYsIDIzNiwgNTEsIDE2NywgMjM2LCA3NiwgMjI2LCAyMzYsIDUxLCAKKyAgICAyMTcsIDIxMywgMjM2LCA3NiwgMjI2LCAyMzYsIDUxLCAyMTYsIDQ1LCAyMzYsIDc2LCAyMjYsIDIzNiwgNTEsIDEyNCwgCisgICAgMjQxLCA2MiwgMjM2LCA3NiwgMjI2LCAyMzYsIDUxLCAxMjQsIDIxNywgMTEzLCA1NCwgMTg4LCAxLCAyMjcsIDU0LCA2MywgCisgICAgNTQsIDE4OCwgMSwgMjEzLCAyOSwgNjMsIDU0LCAxODgsIDEsIDIxMywgMjksIDI1NSwgMjAsIDU0LCAxODgsIDEsIDIyNywgCisgICAgNTQsIDc1LCA1NCwgMTg4LCAxLCAyMTMsIDI5LCA3NSwgNTQsIDE4OCwgMSwgMjEzLCAyOSwgNzcsIDU0LCAxODgsIDEsIAorICAgIDIyNywgNTQsIDc4LCA1NCwgMTg4LCAxLCAyMjcsIDU0LCAyMjcsIDEzNiwgNTQsIDE4OCwgMSwgMjEzLCAyOSwgMjI3LCAKKyAgICAxMzYsIDU0LCAxODgsIDEsIDIyNywgNTQsIDI1NSwgNTcsIDU0LCAxODgsIDEsIDIxMywgMjksIDI1NSwgNTcsIDU0LCAxODgsIAorICAgIDEsIDIyNywgNTQsIDI1NSwgMTksIDU0LCAxODgsIDEsIDIxMywgMjksIDI1NSwgMTksIDU0LCAxODgsIDEsIDIyNywgNTQsIAorICAgIDI1NCwgMjQ5LCA1NCwgMTg4LCAxLCAyMTMsIDI5LCAyNTQsIDI0OSwgNTQsIDE4OCwgMSwgMjI3LCA1NCwgMjU1LCAxNCwgCisgICAgNTQsIDE4OCwgMSwgMjEzLCAyOSwgMjU1LCAxNCwgNTQsIDE4OCwgMSwgMjI3LCA1NCwgMjU1LCAzMiwgNTQsIDE4OCwgMSwgCisgICAgMjEzLCAyOSwgMjU1LCAzMiwgNTQsIDE4OCwgMSwgMjI3LCA1NCwgMjU1LCAxOCwgNTQsIDE4OCwgMSwgMjI3LCA1NCwgMjQ1LCAKKyAgICAxMDEsIDU0LCAxODgsIDEsIDIxMywgMjksIDI0NSwgMTAxLCA1NCwgMTg4LCAxLCAyMjcsIDU0LCAyNTMsIDIxMCwgNTQsIAorICAgIDE4OCwgMSwgMjEzLCAyOSwgMjUzLCAyMTAsIDU0LCAxODgsIDEsIDIyNywgNTQsIDI1NSwgMSwgNTQsIDE4OCwgMSwgMjEzLCAKKyAgICAyOSwgMjU1LCAxLCA1NCwgMTg4LCAxLCAyMjcsIDU0LCAyNTUsIDEyLCA1NCwgMTg4LCAxLCAyMTMsIDI5LCAyNTUsIDEyLCAKKyAgICA1NCwgMTg4LCAxLCAyMjcsIDU0LCAyMjcsIDEzNSwgNTQsIDE4OCwgMSwgMjEzLCAyOSwgMjI3LCAxMzUsIDU0LCAxODgsIDEsIAorICAgIDIyNywgNTQsIDI1NCwgMjEzLCA1NCwgMTg4LCAxLCAyMTMsIDI5LCAyNTQsIDIxMywgNTQsIDE4OCwgMSwgMjI3LCA1NCwgCisgICAgMjU1LCAxMSwgNTQsIDE4OCwgMSwgMjI3LCA1NCwgMjQ1LCAyNDAsIDU0LCAxODgsIDEsIDIyNywgNTQsIDI0NSwgMjM4LCAKKyAgICA1NCwgMTg4LCAxLCAyMjcsIDU0LCAyNTQsIDE1OSwgNTQsIDE4OCwgMSwgMjI3LCA1NCwgMjU1LCA5LCA1NCwgMTg4LCAxLCAKKyAgICAyMTMsIDI5LCAyNTUsIDksIDU0LCAxODgsIDEsIDIyNywgNTQsIDI0NSwgMjExLCA1NCwgMTg4LCAxLCAyMTMsIDI5LCAyNDUsIAorICAgIDIxMSwgNTQsIDE4OCwgMSwgMjI3LCA1NCwgMjQ1LCAyMjYsIDU0LCAxODgsIDEsIDIxMywgMjksIDI0NSwgMjI2LCA1NCwgCisgICAgMTg4LCAxLCAyMjcsIDU0LCAyNDUsIDE5OCwgNTQsIDE4OCwgMSwgMjEzLCAyOSwgMjQ1LCAxOTgsIDU0LCAxODgsIDEsIAorICAgIDIxMywgMjksIDI1NCwgMTUxLCA1NCwgMTg4LCAxLCAyMjcsIDU0LCAyNDUsIDIxNywgNTQsIDE4OCwgMSwgMjEzLCAyOSwgCisgICAgMjU1LCA4LCA1NCwgMTg4LCAxLCAyMjcsIDU0LCAyNDUsIDE5MSwgNTQsIDE4OCwgMSwgMjI3LCA1NCwgMjI3LCA3OCwgNTQsIAorICAgIDE4OCwgMSwgMjI3LCA1NCwgMjQwLCAyMjMsIDU0LCAxODgsIDEsIDIyNywgNTQsIDI0NiwgMzYsIDU0LCAxODgsIDEsIDIxMywgCisgICAgMjksIDI0NiwgMzYsIDU0LCAxODgsIDEsIDIyNywgNTQsIDI1NCwgODYsIDU0LCAxODgsIDEsIDIxMywgMjksIDI1NCwgODYsIAorICAgIDU0LCAxODgsIDEsIDIyNywgNTQsIDIzNiwgNDAsIDU0LCAxODgsIDEsIDIxMywgMjksIDIzNiwgNDAsIDU0LCAxODgsIDEsIAorICAgIDIyNywgNTQsIDIyNywgNjMsIDU0LCAxODgsIDEsIDIxMywgMjksIDIyNywgNjMsIDU0LCAxODgsIDEsIDIyNywgNTQsIDI1NCwgCisgICAgODIsIDU0LCAxODgsIDEsIDIxMywgMjksIDI1NCwgODIsIDU0LCAxODgsIDEsIDIyNywgNTQsIDI1NSwgNywgNTQsIDE4OCwgCisgICAgMSwgMjI3LCA1NCwgMjU0LCAyMywgNTQsIDE4OCwgMSwgMjI3LCA1NCwgMjU1LCA1LCA1NCwgMTg4LCAxLCAyMjcsIDU0LCAKKyAgICAyNTQsIDE3LCA1NCwgMTg4LCAxLCAyMTMsIDI5LCAyNTQsIDE3LCA1NCwgMTg4LCAxLCAyMjcsIDU0LCAyNDUsIDE2MSwgNTQsIAorICAgIDE4OCwgMSwgMjEzLCAyOSwgMjQ1LCAxNjEsIDU0LCAxODgsIDEsIDIyNywgNTQsIDI1MywgMjQ5LCA1NCwgMTg4LCAxLCAKKyAgICAyMTMsIDI5LCAyNTMsIDI0OSwgNTQsIDE4OCwgMSwgMjI3LCA1NCwgMjU1LCAyLCA1NCwgMTg4LCAxLCAyMTMsIDI5LCAyNTUsIAorICAgIDIsIDU0LCAxODgsIDEsIDIyNywgNTQsIDIyNywgNDYsIDU0LCAxODgsIDEsIDIyNywgNTQsIDI1MiwgMTcxLCAyMjMsIDY0LCAKKyAgICAyMSwgMTE4LCAyMjMsIDY0LCAyMSwgMTEyLCAyMjMsIDY0LCAyMSwgMTcwLCAyMjMsIDY0LCAyMSwgMTY3LCAyMjMsIDY0LCAKKyAgICAyMSwgMTg1LCAyMjMsIDY0LCAyMSwgMTkyLCAyMjMsIDY0LCAyMSwgMjAwLCAyMjMsIDY0LCAyMSwgMTk4LCAyMjMsIDY0LCAKKyAgICAyMSwgMjAzLCAyMjMsIDY0LCA1MSwgMjE3LCAyMTMsIDIyMywgNjQsIDUxLCAyMTYsIDQ1LCAyMjMsIDY0LCA1MSwgMjE3LCAKKyAgICAxMjgsIDIyMywgNjQsIDUxLCAyNDQsIDEwNCwgMjIzLCA2NCwgNTEsIDI0NCwgMjAzLCAyMjMsIDY0LCA1MSwgMjIwLCA1OCwgCisgICAgMjIzLCA2NCwgNTEsIDIyMSwgNjAsIDIyMywgNjQsIDUxLCAyNDYsIDYsIDIyMywgNjQsIDUxLCAyMjksIDkwLCAyMjMsIDY0LCAKKyAgICA1MSwgMTI0LCAyNDEsIDYyLCAyMjMsIDY0LCA1MSwgMTE5LCAyNDEsIDYyLCAyMjMsIDY0LCA1MSwgMTM3LCAyNDEsIDYyLCAKKyAgICAyMjMsIDY0LCA1MSwgMjQ0LCAxMDEsIDI0MSwgNjIsIDIyMywgNjQsIDUxLCAyNDQsIDE3MCwgMjQxLCA2MiwgMjIzLCA2NCwgCisgICAgNTEsIDIyMCwgNzIsIDI0MSwgNjIsIDIyMywgNjQsIDUxLCAyMjEsIDY2LCAyNDEsIDYyLCAyMjMsIDY0LCA1MSwgMjQ2LCAKKyAgICAxNSwgMjQxLCA2MiwgMjIzLCA2NCwgNTEsIDIyOSwgOTUsIDI0MSwgNjIsIDIyMywgNjQsIDI0NCwgOTIsIDEyNCwgMjQyLCAKKyAgICAxMjksIDIyMywgNjQsIDI0NCwgOTIsIDEyNCwgMjI0LCAyMDEsIDIyMywgNjQsIDI0NCwgOTIsIDEyNCwgMjE3LCAxMzQsIAorICAgIDIyMywgNjQsIDI0NCwgOTIsIDExOSwgMjE3LCAxMzIsIDExNCwgNSwgMjUxLCA1NSwgMTE0LCA1LCAyNTQsIDExMywgMTE0LCAKKyAgICA1LCAyMTQsIDEzMiwgMTE0LCA1LCAyMzUsIDIxOSwgMTE0LCA1LCAyMTUsIDEzOCwgMTE0LCAxLCA2MywgMTE0LCAxLCAyNTUsIAorICAgIDEwNCwgMTE0LCAxLCA3NSwgMTE0LCAxLCAyMzYsIDE0NSwgMTE0LCAxLCA3MiwgMTE0LCAxLCAyMTUsIDk4LCAxMTQsIDEsIAorICAgIDE2NSwgMTUyLCAxMTQsIDEsIDE2NSwgMjIzLCAxMTYsIDExNCwgMSwgMTY1LCAxNTUsIDExNCwgMSwgMTY1LCAyMzMsIDU1LCAKKyAgICAxMTQsIDEsIDc3LCAxMTQsIDEsIDI1NCwgMjM2LCAxMTQsIDEsIDc4LCAxMTQsIDEsIDI1MywgMjM1LCAxMTQsIDEsIDE4MywgCisgICAgMTE0LCAxLCAyMzQsIDI1MCwgMTE0LCAxLCAyNDMsIDIzMCwgMTE0LCAxLCAyNDMsIDg5LCAxMTQsIDEsIDIyOSwgMjI2LCAKKyAgICAxMTQsIDEsIDI1MSwgODgsIDExNCwgMSwgMjUwLCAyMTUsIDExNCwgMSwgMjM2LCAwLCAxMTQsIDEsIDIzNSwgMjMwLCAxMTQsIAorICAgIDEsIDIyOCwgNjQsIDExNCwgMSwgMjE2LCAxMjgsIDExNCwgMSwgMjE2LCAxMTYsIDExNCwgMSwgMjQ4LCAyMDcsIDExNCwgMSwgCisgICAgMjQ4LCAxOTEsIDExNCwgMSwgMjI5LCA2LCAxMTQsIDEsIDIxOCwgNjYsIDExNCwgMSwgMjE3LCAxNzQsIDExNCwgMSwgMjQ5LCAKKyAgICAzMCwgMTE0LCAxLCAyNDgsIDk3LCAxMTQsIDEsIDIwNywgMTE0LCAxLCAxOTUsIDExNCwgMSwgMjI2LCA1OSwgMTE0LCAxLCAKKyAgICAyNTIsIDIzNCwgMTE0LCAxLCAyNTIsIDY1LCAxMTQsIDEsIDE5MSwgMTE0LCAxLCAxODksIDExNCwgMSwgMjA4LCAxMTQsIDEsIAorICAgIDIzMywgMjU1LCAxMTQsIDEsIDIxNSwgOCwgMTE0LCAxLCAyMjEsIDQ3LCAxMTQsIDEsIDIxOSwgMTc2LCAxMTQsIDEsIDIyMiwgCisgICAgMjI3LCAxMTQsIDEsIDE2MiwgMTE0LCAxLCAyMzMsIDU0LCAxMTQsIDEsIDU0LCAzNiwgMjMzLCA0NSwgMTE0LCAxLCA1NCwgCisgICAgMzYsIDIyMywgMTE1LCAxMTQsIDEsIDU0LCAzNiwgMjI4LCAyNDYsIDExNCwgMzAsIDUsIDI1NSwgMTA0LCAxMTQsIDMwLCA1LCAKKyAgICAyNTIsIDYzLCAyNTUsIDEwNCwgMTE0LCAzMCwgNSwgNzUsIDExNCwgMzAsIDUsIDIzNiwgMTQ1LCAxMTQsIDMwLCA1LCA3MiwgCisgICAgMTE0LCAzMCwgNSwgMjE1LCA5OCwgMTE0LCAzMCwgNSwgMTY1LCAxNTIsIDExNCwgMzAsIDUsIDE2NSwgMjIzLCAxMTYsIAorICAgIDExNCwgMzAsIDUsIDE2NSwgMTU1LCAxMTQsIDMwLCA1LCAxNjUsIDIzMywgNTUsIDExNCwgMzAsIDUsIDc3LCAxMTQsIDMwLCAKKyAgICA1LCAyNTQsIDIzNiwgMTE0LCAzMCwgNSwgNzgsIDExNCwgMzAsIDUsIDI1MywgMjM1LCAxMTQsIDIxNCwgMTM3LCAxMTQsIAorICAgIDI0OCwgMjQ1LCAxMTQsIDUyLCAyNDgsIDI0NSwgMTE0LCAyMjUsIDYzLCAyNDcsIDE5NSwgMTE0LCAyMjUsIDYzLCA1MiwgCisgICAgMjQ3LCAxOTUsIDExNCwgMjI1LCA2MywgMjMzLCA4MywgMTE0LCAyMjUsIDYzLCAyNDksIDIwMCwgMTM0LCAxMTQsIDIyNSwgCisgICAgNjMsIDIzMiwgMjQ0LCAxMTQsIDUxLCAxMTgsIDExNCwgNTEsIDExMiwgMTE0LCA1MSwgMTcwLCAxMTQsIDUxLCAxNjcsIAorICAgIDExNCwgNTEsIDE4NSwgMTE0LCA1MSwgMTkyLCAxMTQsIDUxLCAyMDAsIDExNCwgNTEsIDE5OCwgMTE0LCA1MSwgMjAzLCAKKyAgICAxMTQsIDUxLCAyMTcsIDIxMywgMTE0LCA1MSwgMjE2LCA0NSwgMTE0LCA1MSwgMjE3LCAxMjgsIDExNCwgNTEsIDI0NCwgCisgICAgMTA0LCAxMTQsIDUxLCAyNDQsIDIwMywgMTE0LCA1MSwgMjIwLCA1OCwgMTE0LCA1MSwgMjIxLCA2MCwgMTE0LCA1MSwgMjQ2LCAKKyAgICA2LCAxMTQsIDUxLCAyMjksIDkwLCAxMTQsIDUxLCAxMjQsIDI0MSwgNjIsIDExNCwgNTEsIDEyNCwgMjE3LCAxMTMsIDExNCwgCisgICAgMjEsIDIxMiwgNzksIDExNCwgMjEsIDExOCwgMTE0LCAyMSwgMTEyLCAxMTQsIDIxLCAxNzAsIDExNCwgMjEsIDE2NywgMTE0LCAKKyAgICAyMSwgMTg1LCAxMTQsIDIxLCAxOTIsIDExNCwgMjEsIDIwMCwgMTE0LCAyMSwgMTk4LCAxMTQsIDIxLCAyMDMsIDIzNSwgCisgICAgMTA2LCA1LCAyNTEsIDU1LCAyMzUsIDEwNiwgNSwgMjU0LCAxMTMsIDIzNSwgMTA2LCA1LCAyMTQsIDEzMiwgMjM1LCAxMDYsIAorICAgIDEsIDYzLCAyMzUsIDEwNiwgMSwgMjU1LCAxMDQsIDIzNSwgMTA2LCAxLCA3NSwgMjM1LCAxMDYsIDEsIDIzNiwgMTQ1LCAKKyAgICAyMzUsIDEwNiwgMSwgNzIsIDIzNSwgMTA2LCAxLCAyMTUsIDk4LCAyMzUsIDEwNiwgMSwgNzcsIDIzNSwgMTA2LCAxLCAyNTQsIAorICAgIDIzNiwgMjM1LCAxMDYsIDEsIDc4LCAyMzUsIDEwNiwgMSwgMjUzLCAyMzUsIDIzNSwgMTA2LCAxLCAxODMsIDIzNSwgMTA2LCAKKyAgICAxLCAyMzQsIDI1MCwgMjM1LCAxMDYsIDEsIDI0MywgMjMwLCAyMzUsIDEwNiwgMSwgMjQzLCA4OSwgMjM1LCAxMDYsIDEsIAorICAgIDIyOSwgMjI2LCAyMzUsIDEwNiwgMSwgMjUxLCA4OCwgMjM1LCAxMDYsIDEsIDI1MCwgMjE1LCAyMzUsIDEwNiwgMSwgMjM2LCAKKyAgICAwLCAyMzUsIDEwNiwgMSwgMjM1LCAyMzAsIDIzNSwgMTA2LCAxLCAyMjgsIDY0LCAyMzUsIDEwNiwgMSwgMjE2LCAxMjgsIAorICAgIDIzNSwgMTA2LCAxLCAyMTYsIDExNiwgMjM1LCAxMDYsIDEsIDI0OCwgMjA3LCAyMzUsIDEwNiwgMSwgMjQ4LCAxOTYsIDIzNSwgCisgICAgMTA2LCAxLCAyNDgsIDE5MSwgMjM1LCAxMDYsIDEsIDIyMywgMjI2LCAyMzUsIDEwNiwgMSwgMjI5LCA2LCAyMzUsIDEwNiwgCisgICAgMSwgMjE4LCA2NiwgMjM1LCAxMDYsIDEsIDIxNywgMTc0LCAyMzUsIDEwNiwgMSwgMjQ5LCAzMCwgMjM1LCAxMDYsIDEsIAorICAgIDI0OCwgOTcsIDIzNSwgMTA2LCAxLCAyMDcsIDIzNSwgMTA2LCAxLCAxOTUsIDIzNSwgMTA2LCAxLCAyMjYsIDU5LCAyMzUsIAorICAgIDEwNiwgMSwgMjUyLCAyMzQsIDIzNSwgMTA2LCAxLCAyNTIsIDY1LCAyMzUsIDEwNiwgMSwgMTkxLCAyMzUsIDEwNiwgMSwgCisgICAgMTg5LCAyMzUsIDEwNiwgMSwgMjA4LCAyMzUsIDEwNiwgMSwgMjMzLCAyNTUsIDIzNSwgMTA2LCAxLCAyMTUsIDgsIDIzNSwgCisgICAgMTA2LCAxLCAyMjEsIDQ3LCAyMzUsIDEwNiwgMSwgMjE5LCAxNzYsIDIzNSwgMTA2LCAxLCAyMjIsIDIyNywgMjM1LCAxMDYsIAorICAgIDEsIDE2MiwgMjM1LCAxMDYsIDMwLCA1LCAyNTUsIDEwNCwgMjM1LCAxMDYsIDMwLCA1LCA3NSwgMjM1LCAxMDYsIDMwLCA1LCAKKyAgICAyMzYsIDE0NSwgMjM1LCAxMDYsIDMwLCA1LCA3MiwgMjM1LCAxMDYsIDMwLCA1LCAyMTUsIDk4LCAyMzUsIDEwNiwgMzAsIDUsIAorICAgIDc3LCAyMzUsIDEwNiwgMzAsIDUsIDI1NCwgMjM2LCAyMzUsIDEwNiwgMzAsIDUsIDc4LCAyMzUsIDEwNiwgMzAsIDUsIDI1MywgCisgICAgMjM1LCAyMzUsIDEwNiwgNSwgMjE0LCAxMzcsIDIzNSwgMTA2LCA1LCAyMjgsIDEwMywgMjM1LCAxMDYsIDI1NSwgNTMsIDUzLCAKKyAgICAyMzUsIDEwNiwgMjQ1LCAyMDEsIDUzLCAyMzUsIDEwNiwgNTEsIDUzLCAyMzUsIDEwNiwgMjIyLCAxMTUsIDc5LCAyMzUsIAorICAgIDEwNiwgNTIsIDIyMiwgMTE1LCA3OSwgMjM1LCAxMDYsIDI0OCwgMjQ1LCAyMzUsIDEwNiwgNTIsIDI0OCwgMjQ1LCAxNSwgNSwgCisgICAgNjMsIDE1LCA1LCAxMTEsIDI5LCA2MywgMTUsIDUsIDExMSwgMjksIDI1MiwgMjIxLCAxNSwgNSwgMTExLCAyOSwgMjQzLCAKKyAgICAyMDEsIDIxNywgMjA1LCAxNSwgNSwgMTExLCAyOSwgMTYyLCAxNSwgNSwgMTExLCAyOSwgMjM2LCAxNDcsIDE1LCA1LCAxMTEsIAorICAgIDI5LCAyMzMsIDIzNywgMjQyLCAxOTYsIDE1LCA1LCAxMTEsIDI5LCAyMzAsIDIwMSwgMTUsIDUsIDExMSwgMjksIDIyMiwgCisgICAgMjE1LCAxNSwgNSwgMjU1LCAxMDYsIDE1LCA1LCAyNTUsIDU3LCAxNSwgNSwgMjU1LCA1OCwgMjksIDI1NCwgMTUsIDE1LCA1LCAKKyAgICAyNTUsIDU4LCAyOSwgMjQ2LCAxNDMsIDI0MiwgMTk2LCAxNSwgNSwgMjU1LCA1OCwgMjksIDI0MywgMjE0LCAxNSwgNSwgCisgICAgMjU1LCA1OCwgMjksIDI0MywgMjAxLCAyMTcsIDIwNSwgMTUsIDUsIDI1NSwgNTgsIDI5LCAxNjIsIDE1LCA1LCAyNTUsIDU4LCAKKyAgICAyOSwgMjM2LCAxNDgsIDI0MiwgMTk2LCAxNSwgNSwgMjU1LCA1OCwgMjksIDIzNiwgMTIxLCAxNSwgNSwgMjU1LCA1OCwgMjksIAorICAgIDIzMywgMjM4LCAxNSwgNSwgMjU1LCA1OCwgMjksIDIyMCwgMjQ5LCAxNSwgNSwgMjU1LCA1OCwgMjksIDEwMywgOTUsIDEwMywgCisgICAgOTUsIDcyLCAxNSwgNSwgMjU1LCA1OCwgMjQyLCAxOTYsIDE1LCA1LCAyNTUsIDU1LCAxNSwgNSwgMjU1LCA1NiwgMjksIAorICAgIDI1MiwgMjA2LCAxNSwgNSwgMjU1LCA1NiwgMjksIDI0MywgMjAxLCAyMTcsIDIwNSwgMTUsIDUsIDI1NSwgNTYsIDI5LCAKKyAgICAyMzEsIDIyNywgOTUsIDI0NSwgMjI5LCAxNSwgNSwgMjU1LCA1NiwgMjksIDIyMSwgNDUsIDE1LCA1LCAyNTUsIDU2LCAyOSwgCisgICAgMjE4LCAzNSwgMTUsIDUsIDI1NSwgMzIsIDE1LCA1LCAyNTQsIDIyMSwgMTUsIDUsIDI1NCwgMjIyLCAyOSwgMjQ1LCAxNzEsIAorICAgIDE1LCA1LCAyNTQsIDIyMiwgMjksIDIyMCwgMjExLCA5NSwgMjQzLCAzMCwgMTUsIDUsIDI1NCwgMjEzLCAxNSwgNSwgMjU0LCAKKyAgICAyMTQsIDI5LCAyNTQsIDIxMywgMTUsIDUsIDI1NCwgMjE0LCAyOSwgMjQ4LCAzMywgMTUsIDUsIDI1NCwgMjE0LCAyOSwgCisgICAgMjQzLCAzMCwgMTUsIDUsIDI1NCwgMjE0LCAyOSwgMTYyLCAxNSwgNSwgMjU0LCAyMTQsIDI5LCAyMzUsIDExNywgMTUsIDUsIAorICAgIDI1NCwgMjE0LCAyOSwgMjM0LCAyMTIsIDE1LCA1LCAyNTQsIDIxNCwgMjksIDIyMSwgOCwgMTUsIDUsIDI1NCwgMjE0LCAyOSwgCisgICAgMjE1LCAxMDYsIDE1LCA1LCAyNTQsIDIxMCwgMTUsIDUsIDI1NCwgMjAzLCAxNSwgNSwgMjU0LCAxNjgsIDE1LCA1LCAyNTQsIAorICAgIDE2OSwgMjksIDIyMSwgOCwgMTUsIDUsIDI1NCwgMTU5LCAxNSwgNSwgMjU0LCAxNjAsIDExMywgMjU0LCAxNTksIDE1LCA1LCAKKyAgICAyNTQsIDE2MCwgMTM3LCAyMTcsIDUyLCAxNSwgNSwgMjU0LCAxNjAsIDk1LCAyMzAsIDEwNCwgMjI3LCA2OCwgMjU0LCAxNjAsIAorICAgIDk1LCAyMzAsIDEwMywgMTUsIDUsIDI1NCwgMTYwLCA5NSwgMjMwLCAxMDQsIDIxOSwgMTg0LCAxNSwgNSwgMjU0LCAxMzIsIAorICAgIDE1LCA1LCAyNTQsIDEwNiwgMTUsIDUsIDI1NCwgNzYsIDE1LCA1LCAyNTQsIDc3LCAyOSwgMjM0LCA2MCwgMTUsIDUsIDI1NCwgCisgICAgNTAsIDE1LCA1LCAyNTQsIDIyLCAxNSwgNSwgMjU0LCAxNywgMTUsIDUsIDI1NCwgMTgsIDIxMiwgMzMsIDIxNywgMjA1LCAKKyAgICAxNSwgNSwgMjU0LCAxOCwgMjM1LCAxMjEsIDIxNywgMjA1LCAxNSwgNSwgMjU0LCAxOCwgMTEzLCAyNTQsIDE4LCAyMTYsIAorICAgIDg2LCAxMTMsIDIxNiwgODYsIDIxNiwgODYsIDExMywgMjE2LCA4NiwgMjI2LCAxODYsIDE1LCA1LCAyNTQsIDE4LCAxMTMsIAorICAgIDI1NCwgMTgsIDExMywgMjU0LCAxNywgMTUsIDUsIDI1NCwgMTgsIDExMywgMjU0LCAxOCwgMTEzLCAyNTQsIDE4LCAyNDksIAorICAgIDE4OCwgMjU0LCAxOCwgMTEzLCAyNTQsIDE4LCAxMTMsIDI1NCwgMTcsIDE1LCA1LCAyNTQsIDE1LCAxNSwgNSwgMjU0LCAxMiwgCisgICAgMTUsIDUsIDI1MiwgMjM0LCAxNSwgNSwgMjUyLCAyMjEsIDE1LCA1LCAyNTIsIDIxNiwgMTUsIDUsIDI1MiwgMjEzLCAxNSwgCisgICAgNSwgMjUyLCAyMDcsIDE1LCA1LCAyNTIsIDIwOCwgMTEzLCAyNTIsIDIwNywgMTUsIDUsIDI1MiwgMjA2LCAxNSwgNSwgMTM0LCAKKyAgICAxNSwgNSwgMjUyLCAxODYsIDE1LCA1LCAyNTIsIDU0LCAxNSwgNSwgMjUyLCA1NSwgMjksIDYzLCAxNSwgNSwgMjUyLCA1NSwgCisgICAgMjksIDI0MywgMTkyLCAxNSwgNSwgMjUyLCA1NSwgMjksIDIzNiwgMTQ4LCAyNDIsIDE5NiwgMTUsIDUsIDI1MSwgMTc5LCAKKyAgICAxNSwgNSwgMjUxLCAxODAsIDExMywgMjUxLCAxODAsIDI1NSwgNTcsIDE1LCA1LCAyNTEsIDE4MCwgMTEzLCAyNTEsIDE4MCwgCisgICAgMjE1LCAxNjYsIDE1LCA1LCAyNTEsIDE4MCwgMjQ5LCAxODgsIDI1MSwgMTc5LCAxNSwgNSwgMjUxLCAxNjMsIDE1LCA1LCAKKyAgICAyNTEsIDE2NCwgMTEzLCAyNTEsIDE2MywgMTUsIDUsIDI1MSwgMTUyLCAxNSwgNSwgMjUxLCAxNTEsIDE1LCA1LCAyNDksIAorICAgIDMwLCAxNSwgNSwgMjQ5LCAyMSwgMTUsIDUsIDI0OSwgMjIsIDIzNCwgMTg2LCAyOSwgMTExLCA5NSwgMjMyLCAyNSwgMTUsIAorICAgIDUsIDI0OSwgMjIsIDIzNCwgMTg2LCAyOSwgMjU0LCAxNjgsIDE1LCA1LCAyNDksIDIyLCAyMzQsIDE4NiwgMjksIDI1MiwgCisgICAgMjA2LCAxNSwgNSwgMjQ5LCAyMiwgMjM0LCAxODYsIDI5LCAyNTIsIDU0LCAxNSwgNSwgMjQ5LCAyMiwgMjM0LCAxODYsIDI5LCAKKyAgICAyNDMsIDIzMCwgMTUsIDUsIDI0OSwgMjIsIDIzNCwgMTg2LCAyOSwgMjQzLCAyMzEsIDk1LCAyMzIsIDI1LCAxNSwgNSwgCisgICAgMjQ5LCAyMiwgMjM0LCAxODYsIDI5LCAyNDMsIDU0LCAxNSwgNSwgMjQ5LCAyMiwgMjM0LCAxODYsIDI5LCAyNDMsIDM3LCAKKyAgICAxNSwgNSwgMjQ5LCAyMiwgMjM0LCAxODYsIDI5LCAyNDIsIDIwNSwgMTUsIDUsIDI0OSwgMjIsIDIzNCwgMTg2LCAyOSwgCisgICAgMTYyLCAxNSwgNSwgMjQ5LCAyMiwgMjM0LCAxODYsIDI5LCAyMzYsIDM4LCAxNSwgNSwgMjQ5LCAyMiwgMjM0LCAxODYsIDI5LCAKKyAgICAyMzYsIDM5LCA5NSwgMjMyLCAyMzAsIDE1LCA1LCAyNDksIDIyLCAyMzQsIDE4NiwgMjksIDIzNSwgMTA0LCAxNSwgNSwgCisgICAgMjQ5LCAyMiwgMjM0LCAxODYsIDI5LCAyMzMsIDI1NSwgMTUsIDUsIDI0OSwgMjIsIDIzNCwgMTg2LCAyOSwgMjMyLCAyMzAsIAorICAgIDE1LCA1LCAyNDksIDIyLCAyMzQsIDE4NiwgMjksIDIzMiwgMjMxLCA5NSwgMjMyLCAyNCwgMTUsIDUsIDI0OSwgMjIsIDIzNCwgCisgICAgMTg2LCAyOSwgMjMyLCAyMTYsIDE1LCA1LCAyNDksIDIyLCAyMzQsIDE4NiwgMjksIDIyOSwgMjU0LCAxNSwgNSwgMjQ5LCAKKyAgICAyMiwgMjM0LCAxODYsIDI5LCAyMjYsIDE4NywgOTUsIDIyNiwgMTg2LCAxNSwgNSwgMjQ5LCAyMiwgMjM0LCAxODYsIDI5LCAKKyAgICAyMjAsIDEzNiwgMTUsIDUsIDI0OSwgMjIsIDIzNCwgMTg2LCAyOSwgMjE4LCAzNSwgMTUsIDUsIDI0OSwgMjIsIDIzNCwgCisgICAgMTg2LCAyOSwgMjE1LCAyMDQsIDk1LCAyNDMsIDM3LCAxNSwgNSwgMjQ5LCAyMiwgMjM0LCAxODYsIDI5LCAyMTUsIDEwNiwgCisgICAgMTUsIDUsIDI0OCwgMjU0LCAxNSwgNSwgMjQ4LCAyMzMsIDE1LCA1LCAyNDgsIDIzMiwgMTUsIDUsIDI0OCwgMjMxLCAxNSwgCisgICAgNSwgMjQ4LCA3NiwgMTUsIDUsIDI0OCwgNTksIDE1LCA1LCAyNDgsIDM0LCAxNSwgNSwgMjQ4LCAzNSwgMjksIDIyMSwgOCwgCisgICAgMTUsIDUsIDI0OCwgMzMsIDE1LCA1LCAyNDgsIDIzLCAxNSwgNSwgMjQ4LCAyNCwgMjM1LCA3MCwgMTAzLCAyNDIsIDE5NywgCisgICAgMjQ4LCA0LCAxNSwgNSwgMjQ4LCA0LCAxNSwgNSwgMjQ2LCAxNTQsIDE1LCA1LCAyNDYsIDE1NSwgMTEzLCAyNDYsIDE1NCwgCisgICAgMTUsIDUsIDI0NiwgMTU1LCAyNDIsIDE5NiwgMTUsIDUsIDI0NiwgMTU1LCAyMjAsIDI0NiwgMTUsIDUsIDI0NiwgMTUyLCAKKyAgICAxNSwgNSwgMjQ2LCAxNTMsIDI5LCAyNDUsIDE1OCwgMTUsIDUsIDI0NiwgMTUxLCAxNSwgNSwgMjQ2LCAxNTAsIDE1LCA1LCAKKyAgICAyNDYsIDE0OSwgMTUsIDUsIDI0NiwgMTQ4LCAxNSwgNSwgMjQ2LCAxNDQsIDE1LCA1LCAyNDYsIDE0MiwgMTUsIDUsIDI0NiwgCisgICAgMTQzLCAyNDIsIDE5NiwgMTUsIDUsIDI0NiwgMTQzLCAyNDIsIDE5NywgMjQyLCAxOTYsIDE1LCA1LCAyNDYsIDE0MSwgMTUsIAorICAgIDUsIDI0NiwgMTM0LCAxNSwgNSwgNzcsIDE1LCA1LCAxNTQsIDI5LCAyMjYsIDE4NiwgMTUsIDUsIDE1NCwgMTEzLCAxNTQsIAorICAgIDIyOCwgOTQsIDExMywgMjI4LCA5MywgMTUsIDUsIDI0NiwgNTUsIDE1LCA1LCAyNDYsIDU2LCAyOSwgMTExLCA5NSwgMjQyLCAKKyAgICAxNTEsIDk1LCAyNDksIDMwLCAxNSwgNSwgMjQ2LCA1NiwgMjksIDI0MywgMTkyLCAxNSwgNSwgMjQ2LCA1NiwgMjksIDIzMSwgCisgICAgMTEyLCAxNSwgNSwgMjQ2LCA1NiwgMjksIDIyMiwgMjAzLCAxNSwgNSwgMjQ2LCA1NiwgMjksIDIyMSwgOCwgMTUsIDUsIAorICAgIDI0NiwgNTYsIDI5LCA3MiwgMTUsIDUsIDI0NiwgMzIsIDE1LCA1LCAyNDYsIDIyLCAxNSwgNSwgMjQ1LCAyNTIsIDE1LCA1LCAKKyAgICAyNDUsIDIyOSwgMTUsIDUsIDI0NSwgMjMwLCAyOSwgMjQzLCAyMDAsIDE1LCA1LCAyNDUsIDIzMCwgMjksIDI0MywgMjAxLCAKKyAgICAyMTcsIDIwNSwgMTUsIDUsIDI0NSwgMjMwLCAyOSwgMjMxLCAyMjYsIDE1LCA1LCAyNDUsIDIzMCwgMjQ5LCAxODgsIDI0NSwgCisgICAgMjI5LCAxNSwgNSwgMjQ1LCAyMzAsIDIyNywgNjgsIDI0NSwgMjI5LCAxNSwgNSwgMjQ1LCAyMzAsIDIxOSwgMTg0LCAxNSwgCisgICAgNSwgMjQ1LCAxNzMsIDE1LCA1LCAyNDUsIDE3MSwgMTUsIDUsIDI0NSwgMTU4LCAxNSwgNSwgMjQ1LCA5OSwgMTUsIDUsIAorICAgIDI0NSwgMTAwLCAyOSwgNjMsIDE1LCA1LCAyNDUsIDEwMCwgMjksIDExMSwgOTUsIDIzMywgMjI2LCAxNSwgNSwgMjQ1LCAKKyAgICAxMDAsIDI5LCAxMTEsIDk1LCAyMzMsIDIyNywgMjksIDIzMywgMjI2LCAxNSwgNSwgMjQ1LCAxMDAsIDI5LCAyNTQsIDE1OSwgCisgICAgMTUsIDUsIDI0NSwgMTAwLCAyOSwgMjUyLCAyMjEsIDE1LCA1LCAyNDUsIDEwMCwgMjksIDI0NiwgMTQzLCAyNDIsIDE5NiwgCisgICAgMTUsIDUsIDI0NSwgMTAwLCAyOSwgMjQ2LCAxNDMsIDI0MiwgMTk3LCAyNDIsIDE5NiwgMTUsIDUsIDI0NSwgMTAwLCAyOSwgCisgICAgMTYyLCAxNSwgNSwgMjQ1LCAxMDAsIDI5LCAyNDIsIDE1MSwgMjQyLCAxOTYsIDE1LCA1LCAyNDUsIDEwMCwgMjksIDIzNiwgCisgICAgMTQ4LCAyNDIsIDE5NiwgMTUsIDUsIDI0NSwgMTAwLCAyOSwgMjM1LCA2OSwgMTUsIDUsIDI0NSwgMTAwLCAyOSwgMjM1LCAKKyAgICA3MCwgMjE5LCAxODQsIDE1LCA1LCAyNDUsIDEwMCwgMjksIDIzNCwgNzksIDE1LCA1LCAyNDUsIDEwMCwgMjksIDIzMywgCisgICAgMjU1LCAxNSwgNSwgMjQ1LCAxMDAsIDI5LCAyMzMsIDIyNywgMjksIDIzMywgMjI2LCAxNSwgNSwgMjQ1LCAxMDAsIDI5LCAKKyAgICAyMzMsIDExMSwgMTUsIDUsIDI0NSwgMTAwLCAyOSwgMjMyLCAyMzAsIDE1LCA1LCAyNDUsIDEwMCwgMjksIDIxNSwgMjAzLCAKKyAgICAxNSwgNSwgMjQ1LCAxMDAsIDI5LCAyMTUsIDE5NCwgMTUsIDUsIDI0MywgMjMwLCAxNSwgNSwgMjQzLCAyMzEsIDI0MiwgCisgICAgMTk2LCAxNSwgNSwgMjQzLCAyMjgsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDExMSwgOTUsIDI0OSwgMzEsIDk1LCAxNjIsIDE1LCAKKyAgICA1LCAyNDMsIDIyOSwgMjksIDExMSwgOTUsIDE2MiwgMTUsIDUsIDI0MywgMjI5LCAyOSwgMTExLCA5NSwgMjM2LCAxNDcsIAorICAgIDE1LCA1LCAyNDMsIDIyOSwgMjksIDI1NSwgNTYsIDIxNywgMjA2LCA5NSwgMjE4LCA1NSwgMTUsIDUsIDI0MywgMjI5LCAyOSwgCisgICAgMjU0LCAxNTksIDE1LCA1LCAyNDMsIDIyOSwgMjksIDI1NCwgMTcsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDI1NCwgMTYsIDk1LCAKKyAgICAyNDMsIDIxNCwgMTUsIDUsIDI0MywgMjI5LCAyOSwgMjUyLCAyMjEsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDI1MiwgMTg3LCAKKyAgICA5NSwgMjA4LCAxNSwgNSwgMjQzLCAyMjksIDI5LCAyNTEsIDE1MiwgMTUsIDUsIDI0MywgMjI5LCAyOSwgMjUxLCAxNTMsIAorICAgIDk1LCAyMDgsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDI0OSwgMzAsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDI0OCwgNzYsIDE1LCAKKyAgICA1LCAyNDMsIDIyOSwgMjksIDI0OCwgMzUsIDI5LCAyMjEsIDgsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDI0NiwgMTUyLCAxNSwgCisgICAgNSwgMjQzLCAyMjksIDI5LCAyNDUsIDI1MiwgMTUsIDUsIDI0MywgMjI5LCAyOSwgMjQ1LCAyNTMsIDk1LCAyMzMsIDI1NSwgCisgICAgMTUsIDUsIDI0MywgMjI5LCAyOSwgMjQ1LCAyMjksIDE1LCA1LCAyNDMsIDIyOSwgMjksIDI0NSwgMjMwLCAyOSwgMjQzLCAKKyAgICAyMDEsIDIxNywgMjA1LCAxNSwgNSwgMjQzLCAyMjksIDI5LCAyNDMsIDIwMSwgMjE3LCAyMDUsIDE1LCA1LCAyNDMsIDIyOSwgCisgICAgMjksIDI0MywgMTkyLCAxNSwgNSwgMjQzLCAyMjksIDI5LCAyNDMsIDU0LCAxNSwgNSwgMjQzLCAyMjksIDI5LCAyNDMsIDUyLCAKKyAgICAxNSwgNSwgMjQzLCAyMjksIDI5LCAyNDMsIDUzLCA5NSwgNjMsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDI0MywgMzgsIDk1LCAKKyAgICAyMTksIDQxLCAxNSwgNSwgMjQzLCAyMjksIDI5LCAyNDIsIDE1MSwgOTUsIDIzMiwgMjMxLCA5NSwgMjQ1LCAxNTgsIDE1LCAKKyAgICA1LCAyNDMsIDIyOSwgMjksIDI0MiwgMTMyLCAxNSwgNSwgMjQzLCAyMjksIDI5LCAyNDIsIDEzMywgOTUsIDIzMywgMjU1LCAKKyAgICAxNSwgNSwgMjQzLCAyMjksIDI5LCAyNDIsIDI5LCA5NSwgMjMzLCAxMTEsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDI0MSwgNzAsIAorICAgIDE1LCA1LCAyNDMsIDIyOSwgMjksIDIzNiwgMTQ4LCAyNDIsIDE5NiwgMTUsIDUsIDI0MywgMjI5LCAyOSwgMjM2LCAyNSwgCisgICAgOTUsIDI0MSwgNzUsIDk1LCAyNTQsIDE3LCAxNSwgNSwgMjQzLCAyMjksIDI5LCAyMzUsIDEwNCwgMTUsIDUsIDI0MywgMjI5LCAKKyAgICAyOSwgMjM1LCA2OSwgMTUsIDUsIDI0MywgMjI5LCAyOSwgMjM0LCAyMDksIDE1LCA1LCAyNDMsIDIyOSwgMjksIDIzNCwgCisgICAgMjEwLCA5NSwgMjMzLCAyMjYsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDIzNCwgODAsIDk1LCAyNTQsIDE1OSwgMTUsIDUsIAorICAgIDI0MywgMjI5LCAyOSwgMjMzLCAyNTUsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDIzMSwgMjI3LCA5NSwgMjQ1LCAyMjksIDE1LCAKKyAgICA1LCAyNDMsIDIyOSwgMjksIDIzMSwgMTEyLCAxNSwgNSwgMjQzLCAyMjksIDI5LCAyMjgsIDkzLCAxNSwgNSwgMjQzLCAyMjksIAorICAgIDI5LCAyMjgsIDk0LCAxMTMsIDIyOCwgOTMsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDE5NSwgMTUsIDUsIDI0MywgMjI5LCAyOSwgCisgICAgMjIyLCAyMDMsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDIyMiwgMTcxLCAxNSwgNSwgMjQzLCAyMjksIDI5LCAyMjEsIDgsIDE1LCAKKyAgICA1LCAyNDMsIDIyOSwgMjksIDIyMSwgOSwgOTUsIDIxNiwgNzAsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDIyMCwgMjMxLCAxNSwgCisgICAgNSwgMjQzLCAyMjksIDI5LCAyMTksIDIsIDE1LCA1LCAyNDMsIDIyOSwgMjksIDIxOCwgMzUsIDE1LCA1LCAyNDMsIDIyOSwgCisgICAgMjksIDcyLCAxNSwgNSwgMjQzLCAyMjksIDI5LCAyMTUsIDE5NCwgMTUsIDUsIDI0MywgMjI5LCAyOSwgMjE1LCAxOTUsIDk1LCAKKyAgICAyNDYsIDE1NCwgMTUsIDUsIDI0MywgMjI5LCAxMTMsIDI0MywgMjI4LCAxNSwgNSwgMjQzLCAyMjMsIDE1LCA1LCAyNDMsIAorICAgIDIyNCwgMjQ5LCAxODgsIDI0MywgMjIzLCAxNSwgNSwgMjQzLCAyMjEsIDE1LCA1LCAyNDMsIDIyMiwgMTEzLCAyNDMsIDIyMiwgCisgICAgMjQzLCAxOTMsIDExMywgMjQzLCAxOTIsIDE1LCA1LCAyNDMsIDIxNCwgMTUsIDUsIDI0MywgMjE1LCAyNDMsIDIyMiwgMTEzLCAKKyAgICAyNDMsIDIyMiwgMjQzLCAxOTMsIDExMywgMjQzLCAxOTIsIDE1LCA1LCAyNDMsIDIxMywgMTUsIDUsIDI0MywgMjExLCAxNSwgCisgICAgNSwgMjQzLCAyMDIsIDE1LCA1LCAyNDMsIDIwMCwgMTUsIDUsIDI0MywgMjAxLCAyMTcsIDIwNSwgMTUsIDUsIDI0MywgMjAxLCAKKyAgICAxMTMsIDI0MywgMjAwLCAxNSwgNSwgMjQzLCAyMDEsIDI0OSwgMTg4LCAyNDMsIDIwMCwgMTUsIDUsIDI0MywgMTkyLCAxNSwgCisgICAgNSwgMjQzLCAxOTEsIDE1LCA1LCAyNDMsIDE4NiwgMTUsIDUsIDI0MywgMTMyLCAxNSwgNSwgMjQzLCAxMzMsIDI5LCAyMzQsIAorICAgIDYwLCAxNSwgNSwgMjQzLCA1NCwgMTUsIDUsIDI0MywgNTUsIDI5LCA3NywgMTUsIDUsIDI0MywgNTUsIDI5LCA3MiwgMTUsIAorICAgIDUsIDI0MywgNTUsIDI0OSwgMTg4LCAyNDMsIDU0LCAxNSwgNSwgMjQzLCA1MiwgMTUsIDUsIDI0MywgNTMsIDExMywgMjQzLCAKKyAgICA1MiwgMTUsIDUsIDI0MywgNTMsIDI0OSwgMTg4LCAyNDMsIDUyLCAxNSwgNSwgMjQzLCA0OSwgMTUsIDUsIDI0MywgMzcsIAorICAgIDE1LCA1LCAyNDMsIDM4LCAyNDIsIDE5NiwgMTUsIDUsIDI0MywgMzUsIDE1LCA1LCAyNDMsIDM2LCAyOSwgMTExLCA5NSwgCisgICAgMjM2LCAxNDcsIDE1LCA1LCAyNDMsIDM2LCAyOSwgMjQzLCAyMDEsIDIxNywgMjA1LCAxNSwgNSwgMjQzLCAzNiwgMjksIAorICAgIDIzNiwgMTQ3LCAxNSwgNSwgMjQzLCAzNiwgMjksIDIzMiwgMjMxLCA5NSwgMjM2LCAxNDcsIDE1LCA1LCAyNDMsIDM2LCAyOSwgCisgICAgMTk1LCAxNSwgNSwgMjQzLCAzMiwgMTUsIDUsIDI0MywgMzAsIDE1LCA1LCAyNDMsIDMxLCAyNDksIDE4OCwgMjQzLCAzMCwgCisgICAgMTUsIDUsIDI0MywgMzEsIDI5LCAyNTIsIDIyMSwgMTUsIDUsIDI0MywgMzEsIDI5LCAyMTgsIDM1LCAxNSwgNSwgMjQzLCAKKyAgICAzMSwgMjE3LCAyMDUsIDE1LCA1LCAyNDIsIDIxMywgMTUsIDUsIDI0MiwgMjE0LCAyNDksIDE4OCwgMjQyLCAyMTMsIDE1LCAKKyAgICA1LCAyNDIsIDIxMSwgMTUsIDUsIDI0MiwgMjEyLCAyOSwgMjM1LCAxMDQsIDE1LCA1LCAyNDIsIDIxMiwgMjksIDIzNSwgCisgICAgMTA1LCAyOSwgMjM2LCAxNDgsIDI0MiwgMTk2LCAxNSwgNSwgMjQyLCAyMTIsIDI5LCAyMjgsIDkzLCAxNSwgNSwgMjQyLCAKKyAgICAyMTIsIDI5LCAyMjIsIDIwNCwgOTUsIDIxNiwgODUsIDE1LCA1LCAyNDIsIDIxMiwgMjQyLCAxOTYsIDE1LCA1LCAyNDIsIAorICAgIDIwNSwgMTUsIDUsIDI0MiwgMjA2LCAyOSwgMTExLCA5NSwgMjM0LCA2MCwgMTUsIDUsIDI0MiwgMjA2LCAyOSwgMjM0LCA2MCwgCisgICAgMTUsIDUsIDI0MiwgMjA2LCAxMTMsIDI0MiwgMjA2LCAyMzIsIDIyMywgMTUsIDUsIDI0MiwgMjAwLCAxNSwgNSwgMjQyLCAKKyAgICAxOTgsIDE1LCA1LCAyNDIsIDE5OSwgMjksIDIyMSwgOCwgMTUsIDUsIDI0MiwgMTkwLCAxNSwgNSwgMjQyLCAxODksIDE1LCAKKyAgICA1LCAyNDIsIDE4NiwgMTUsIDUsIDI0MiwgMTg1LCAxNSwgNSwgMTYyLCAxNSwgNSwgMjQyLCAxNTEsIDIxNywgMjA1LCAxNSwgCisgICAgNSwgMjQyLCAxNTEsIDI0MiwgMTk2LCAxNSwgNSwgMjQyLCAxMzIsIDE1LCA1LCAyNDIsIDI4LCAxNSwgNSwgMjQyLCAyOSwgCisgICAgMjksIDI1NCwgMTcsIDE1LCA1LCAyNDIsIDI5LCAyOSwgMjU0LCAxNSwgMTUsIDUsIDI0MiwgMjksIDI5LCAyNTIsIDIyMSwgCisgICAgMTUsIDUsIDI0MiwgMjksIDI5LCAyNDgsIDQsIDE1LCA1LCAyNDIsIDI5LCAyOSwgMjQzLCAyMjEsIDE1LCA1LCAyNDIsIDI5LCAKKyAgICAyOSwgMjM0LCAyMDEsIDE1LCA1LCAyNDIsIDI5LCAyOSwgMjI4LCA5MywgMTUsIDUsIDI0MiwgMjksIDI5LCAyMjEsIDgsIAorICAgIDE1LCA1LCAyNDIsIDI5LCAyOSwgNzIsIDE1LCA1LCAyNDEsIDc0LCAxNSwgNSwgMjQxLCA3MCwgMTUsIDUsIDI0MSwgNzEsIAorICAgIDI5LCAyNTQsIDE1OSwgMTUsIDUsIDI0MSwgNzEsIDI5LCAyNDIsIDEzMiwgMTUsIDUsIDI0MSwgNzEsIDI5LCAyMzUsIDY5LCAKKyAgICAxNSwgNSwgMjQxLCA3MSwgMjksIDIzMywgNjcsIDE1LCA1LCAyNDEsIDcxLCAyOSwgMjE1LCAxOTQsIDE1LCA1LCAyNDEsIAorICAgIDY3LCAxNSwgNSwgNzUsIDE1LCA1LCAyNDEsIDcsIDYzLCAxNSwgNSwgMjQwLCAyMjUsIDE1LCA1LCAyMzYsIDE3NSwgMTUsIAorICAgIDUsIDIzNiwgMTc2LCAxMTMsIDIzNiwgMTc2LCAyNTEsIDE1MiwgMTUsIDUsIDIzNiwgMTc2LCAxMTMsIDIzNiwgMTc2LCAKKyAgICAyMTksIDE4NCwgMTUsIDUsIDIzNiwgMTUwLCAxNSwgNSwgMjM2LCAxNDcsIDE1LCA1LCAyMzYsIDE0OCwgMjQ4LCA1OSwgMTUsIAorICAgIDUsIDIzNiwgMTQ4LCAyMjMsIDIyMiwgMTUsIDUsIDIzNiwgMTQ4LCAxMTMsIDIzNiwgMTQ4LCAyMjAsIDIxNSwgMTEzLCAKKyAgICAyMjAsIDIxNSwgMjE1LCAxOTUsIDExMywgMjE1LCAxOTQsIDE1LCA1LCAyMzYsIDE0OCwgMjQyLCAxOTYsIDE1LCA1LCAyMzYsIAorICAgIDEzOSwgMTUsIDUsIDIzNiwgMTQwLCAyOSwgMjQzLCAyMDEsIDIxNywgMjA1LCAxNSwgNSwgMjM2LCAxMzgsIDE1LCA1LCAKKyAgICAyMzYsIDEyOCwgMTUsIDUsIDIzNiwgMTI5LCAyOSwgMjE4LCAzNSwgMTUsIDUsIDIzNiwgMTI5LCAyNDksIDE4OCwgMjM2LCAKKyAgICAxMjgsIDE1LCA1LCAyMzYsIDEyOSwgMjI3LCA2OCwgMjM2LCAxMjgsIDE1LCA1LCAyMzYsIDEyOSwgMjE5LCAxODQsIDE1LCAKKyAgICA1LCAyMzYsIDEyMSwgMTUsIDUsIDIzNiwgMTEyLCAxNSwgNSwgMjM2LCAzOCwgMTUsIDUsIDIzNiwgMjQsIDE1LCA1LCAxODMsIAorICAgIDE1LCA1LCAyMzUsIDEzMSwgMjksIDYzLCAxNSwgNSwgMjM1LCAxMzEsIDI5LCAyNTUsIDMyLCAxNSwgNSwgMjM1LCAxMzEsIAorICAgIDI5LCAyNTUsIDMzLCA5NSwgMjM0LCA3OSwgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjU0LCAxNSwgMTUsIDUsIDIzNSwgMTMxLCAKKyAgICAyOSwgMjUyLCAyMjEsIDE1LCA1LCAyMzUsIDEzMSwgMjksIDI1MiwgMjA2LCAxNSwgNSwgMjM1LCAxMzEsIDI5LCAxMzQsIAorICAgIDE1LCA1LCAyMzUsIDEzMSwgMjksIDI1MiwgNTQsIDE1LCA1LCAyMzUsIDEzMSwgMjksIDI0NSwgMTcxLCAxNSwgNSwgMjM1LCAKKyAgICAxMzEsIDI5LCAyNDUsIDE1OCwgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjQzLCAyMzAsIDE1LCA1LCAyMzUsIDEzMSwgMjksIAorICAgIDI0MywgMjE0LCAxNSwgNSwgMjM1LCAxMzEsIDI5LCAyNDMsIDIwMSwgMjE3LCAyMDUsIDE1LCA1LCAyMzUsIDEzMSwgMjksIAorICAgIDI0MywgMTkyLCAxNSwgNSwgMjM1LCAxMzEsIDI5LCAyNDMsIDE5MywgOTUsIDIyMSwgNDYsIDk1LCA2MywgMTUsIDUsIDIzNSwgCisgICAgMTMxLCAyOSwgMjQzLCA1NCwgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjQzLCAzNywgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjQzLCAKKyAgICAzMSwgOTUsIDIyMiwgMTcxLCAxNSwgNSwgMjM1LCAxMzEsIDI5LCAyNDMsIDMxLCAyNDksIDE4OCwgMjQzLCAzMCwgMTUsIDUsIAorICAgIDIzNSwgMTMxLCAyOSwgMjQyLCAyMTMsIDE1LCA1LCAyMzUsIDEzMSwgMjksIDI0MiwgMTg5LCAxNSwgNSwgMjM1LCAxMzEsIAorICAgIDI5LCAyMzYsIDE0NywgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjM2LCAxMjgsIDE1LCA1LCAyMzUsIDEzMSwgMjksIDIzNSwgCisgICAgMTA0LCAxNSwgNSwgMjM1LCAxMzEsIDI5LCAyMzQsIDIxMiwgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjM0LCAyMDksIDE1LCA1LCAKKyAgICAyMzUsIDEzMSwgMjksIDIzMywgMTExLCAxNSwgNSwgMjM1LCAxMzEsIDI5LCAyMzIsIDIzMCwgMTUsIDUsIDIzNSwgMTMxLCAKKyAgICAyOSwgMjMxLCAyMjYsIDE1LCA1LCAyMzUsIDEzMSwgMjksIDIzMSwgMjI3LCA5NSwgMjQ2LCAxNTQsIDE1LCA1LCAyMzUsIAorICAgIDEzMSwgMjksIDIzMSwgMjI3LCA5NSwgMjQzLCA1NCwgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjMxLCAyMjcsIDk1LCAyMTcsIAorICAgIDI0MiwgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjMxLCAxMTIsIDE1LCA1LCAyMzUsIDEzMSwgMjksIDIzMSwgMTEzLCA5NSwgCisgICAgMjI4LCA4OCwgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjI5LCAyNTQsIDE1LCA1LCAyMzUsIDEzMSwgMjksIDIyOCwgOTMsIDE1LCAKKyAgICA1LCAyMzUsIDEzMSwgMjksIDIyNiwgMjAsIDE1LCA1LCAyMzUsIDEzMSwgMjksIDIyMywgNzcsIDE1LCA1LCAyMzUsIDEzMSwgCisgICAgMjksIDIyMiwgMjI3LCAxNSwgNSwgMjM1LCAxMzEsIDI5LCAyMjIsIDE3MSwgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjIxLCAKKyAgICA0NywgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjIxLCA4LCAxNSwgNSwgMjM1LCAxMzEsIDI5LCAyMjAsIDIzMSwgMTUsIDUsIAorICAgIDIzNSwgMTMxLCAyOSwgMjIwLCAxNzAsIDE1LCA1LCAyMzUsIDEzMSwgMjksIDIyMCwgMTI3LCAxNSwgNSwgMjM1LCAxMzEsIAorICAgIDI5LCAyMTksIDEwLCAxNSwgNSwgMjM1LCAxMzEsIDI5LCAyMTgsIDE0LCAxNSwgNSwgMjM1LCAxMzEsIDI5LCA3MiwgMTUsIAorICAgIDUsIDIzNSwgMTMxLCAyOSwgMjE1LCAyMDMsIDE1LCA1LCAyMzUsIDEzMSwgMjksIDIxNSwgMTk0LCAxNSwgNSwgMjM1LCAKKyAgICAxMzEsIDI5LCAyMTUsIDE2OSwgMjksIDE5NSwgMTUsIDUsIDIzNSwgMTMxLCAyOSwgMjE1LCAxMDYsIDE1LCA1LCAyMzUsIAorICAgIDEzMSwgMjksIDIxMiwgMzcsIDE1LCA1LCAyMzUsIDEyOSwgMTUsIDUsIDIzNSwgMTMwLCAyNDksIDE4OCwgMjM1LCAxMjksIAorICAgIDE1LCA1LCAyMzUsIDEyMiwgMTUsIDUsIDIzNSwgMTE5LCAxNSwgNSwgMjM1LCAxMTcsIDE1LCA1LCAyMzUsIDExNiwgMTUsIAorICAgIDUsIDIzNSwgMTE0LCAxNSwgNSwgMjM1LCAxMTUsIDExMywgMjM1LCAxMTQsIDE1LCA1LCAyMzUsIDEwNCwgMTUsIDUsIDIzNSwgCisgICAgMTA1LCAyOSwgMjM2LCAxNDgsIDI0MiwgMTk2LCAxNSwgNSwgMjM1LCAxMDAsIDE1LCA1LCAyMzUsIDEwMSwgMjksIDI1MiwgCisgICAgMjIxLCAxNSwgNSwgMjM1LCAxMDEsIDI0OSwgMTg4LCAyMzUsIDEwMCwgMTUsIDUsIDIzNSwgOTgsIDE1LCA1LCAyMzUsIDk3LCAKKyAgICAxNSwgNSwgMjM1LCA2OSwgMTUsIDUsIDIzNSwgNzAsIDIzMywgMjM5LCAyOSwgMTAzLCAxMTMsIDIzMywgMjM5LCAyOSwgNzIsIAorICAgIDE1LCA1LCAyMzUsIDcwLCAxMTMsIDIzNSwgNzAsIDIzMywgMjM5LCAyOSwgMTAzLCAxMTMsIDIzMywgMjM5LCAyOSwgNzIsIAorICAgIDE1LCA1LCAyMzUsIDE5LCAxNSwgNSwgMjM0LCAyMTIsIDE1LCA1LCAyMzQsIDIxMywgMjksIDI1MiwgMjIxLCAxNSwgNSwgCisgICAgMjM0LCAyMTMsIDI5LCA3MiwgMTUsIDUsIDIzNCwgMjEzLCAyOSwgMjE1LCAxOTQsIDE1LCA1LCAyMzQsIDIwOSwgMTUsIDUsIAorICAgIDIzNCwgMjAxLCAxNSwgNSwgMjM0LCAxODgsIDE1LCA1LCAyMzQsIDE4NywgMTUsIDUsIDIzNCwgMTg1LCAxNSwgNSwgMjM0LCAKKyAgICAxODYsIDExMywgMjM0LCAxODUsIDE1LCA1LCAyMzQsIDgxLCAxNSwgNSwgMjM0LCA4MiwgMTEzLCAyNDIsIDI5LCAyOSwgCisgICAgMjU0LCAxNiwgMjM0LCA4MiwgMTEzLCAyNDIsIDI5LCAyOSwgMjU0LCAxNSwgMTUsIDUsIDIzNCwgNzksIDE1LCA1LCAyMzQsIAorICAgIDc3LCAxNSwgNSwgMjM0LCA3OCwgMjE0LCAyNTAsIDE3LCAxNSwgNSwgMjM0LCA3NiwgMTUsIDUsIDIzNCwgNzMsIDE1LCA1LCAKKyAgICAyMzQsIDc0LCAyNDIsIDE5NiwgMTUsIDUsIDIzNCwgNzIsIDE1LCA1LCAyMzQsIDYwLCAxNSwgNSwgMjM0LCA2MSwgMjI3LCAKKyAgICA2OCwgMjM0LCA2MCwgMTUsIDUsIDIzNCwgNTUsIDE1LCA1LCAyMzQsIDM2LCAxNSwgNSwgMjMzLCAyNTUsIDE1LCA1LCAyMzMsIAorICAgIDIzOCwgMTUsIDUsIDIzMywgMjM5LCAyOSwgNjMsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDExMSwgOTUsIDI0OSwgMzEsIDk1LCAKKyAgICAxNjIsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDExMSwgOTUsIDI0MywgMTkyLCAxNSwgNSwgMjMzLCAyMzksIDI5LCAxMTEsIAorICAgIDk1LCAyMzMsIDIyNiwgMTUsIDUsIDIzMywgMjM5LCAyOSwgMjU0LCAyMTMsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDI1NCwgCisgICAgMTU5LCAxNSwgNSwgMjMzLCAyMzksIDI5LCAyNTQsIDE4LCAyMTIsIDMzLCAyMTcsIDIwNSwgMTUsIDUsIDIzMywgMjM5LCAKKyAgICAyOSwgMjUyLCAyMjEsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDI1MiwgNTQsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDI0OCwgCisgICAgMjMzLCAxNSwgNSwgMjMzLCAyMzksIDI5LCAyNDUsIDIyOSwgMTUsIDUsIDIzMywgMjM5LCAyOSwgMjQzLCAyMzAsIDE1LCA1LCAKKyAgICAyMzMsIDIzOSwgMjksIDI0MywgMTkyLCAxNSwgNSwgMjMzLCAyMzksIDI5LCAyNDIsIDIwNSwgMTUsIDUsIDIzMywgMjM5LCAKKyAgICAyOSwgMjQyLCAyMDYsIDk1LCAyNDIsIDIwNSwgMTUsIDUsIDIzMywgMjM5LCAyOSwgMTYyLCAxNSwgNSwgMjMzLCAyMzksIAorICAgIDI5LCAyNDIsIDEzMiwgMTUsIDUsIDIzMywgMjM5LCAyOSwgMjQyLCAyOSwgMjksIDIyOCwgOTMsIDE1LCA1LCAyMzMsIDIzOSwgCisgICAgMjksIDIzNiwgMTQ4LCAyNDIsIDE5NiwgMTUsIDUsIDIzMywgMjM5LCAyOSwgMjM2LCAxMjgsIDE1LCA1LCAyMzMsIDIzOSwgCisgICAgMjksIDIzNiwgMTI5LCA5NSwgMTYyLCAxNSwgNSwgMjMzLCAyMzksIDI5LCAyMzYsIDEyOSwgOTUsIDIzMiwgMjMwLCAxNSwgCisgICAgNSwgMjMzLCAyMzksIDI5LCAyMzQsIDIxMiwgMTUsIDUsIDIzMywgMjM5LCAyOSwgMjM0LCAyMDEsIDE1LCA1LCAyMzMsIAorICAgIDIzOSwgMjksIDIzNCwgNzksIDE1LCA1LCAyMzMsIDIzOSwgMjksIDIzNCwgNzMsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDIzNCwgCisgICAgNzQsIDk1LCAyNDIsIDI5LCA5NSwgNjMsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDIzMywgMjM4LCAxNSwgNSwgMjMzLCAyMzksIAorICAgIDI5LCAyMzMsIDY3LCAxNSwgNSwgMjMzLCAyMzksIDI5LCAyMzIsIDIzMCwgMTUsIDUsIDIzMywgMjM5LCAyOSwgMjMyLCAKKyAgICAyMTgsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDIzMSwgMjI2LCAxNSwgNSwgMjMzLCAyMzksIDI5LCAyMzEsIDIyNywgOTUsIAorICAgIDI0NSwgMjI5LCAxNSwgNSwgMjMzLCAyMzksIDI5LCAyMzAsIDIwMSwgMTUsIDUsIDIzMywgMjM5LCAyOSwgMjI5LCAyNTQsIAorICAgIDE1LCA1LCAyMzMsIDIzOSwgMjksIDIyMSwgOSwgOTUsIDIxOSwgMiwgMTUsIDUsIDIzMywgMjM5LCAyOSwgMjIwLCAyMTEsIAorICAgIDk1LCAyNDMsIDMxLCA5NSwgMjQ1LCAxNzEsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDIyMCwgMjExLCA5NSwgMjQzLCAzMSwgCisgICAgMjE3LCAyMDUsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDIyMCwgMTY4LCAxNSwgNSwgMjMzLCAyMzksIDI5LCAyMjAsIDE2OSwgCisgICAgOTUsIDIyMCwgMTY4LCAxNSwgNSwgMjMzLCAyMzksIDI5LCAyMTksIDIsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDIxOCwgNDcsIAorICAgIDE1LCA1LCAyMzMsIDIzOSwgMjksIDIxOCwgMzUsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDIxNywgMjQzLCA5NSwgMTExLCA5NSwgCisgICAgMjE5LCA0MiwgOTUsIDIwNywgMTUsIDUsIDIzMywgMjM5LCAyOSwgNzIsIDE1LCA1LCAyMzMsIDIzOSwgMjksIDEwMywgOTUsIAorICAgIDYzLCAxNSwgNSwgMjMzLCAyMzksIDI5LCAxMDMsIDk1LCAxMDMsIDk1LCA3MiwgMTUsIDUsIDIzMywgMjM5LCAyOSwgMjE1LCAKKyAgICAyMDQsIDk1LCAyNTQsIDE3LCAxNSwgNSwgMjMzLCAyMzksIDI5LCAyMTUsIDE5NCwgMTUsIDUsIDIzMywgMjM5LCAyOSwgCisgICAgMjE1LCAxMDYsIDE1LCA1LCAyMzMsIDIzOSwgMjE5LCAxODQsIDE1LCA1LCAyMzMsIDIzNiwgMTUsIDUsIDIzMywgMjM3LCAKKyAgICAyOSwgMjIxLCA4LCAxNSwgNSwgMjMzLCAyMzcsIDI5LCAyMjEsIDksIDk1LCAyMTksIDIsIDE1LCA1LCAyMzMsIDIzNywgCisgICAgMjQyLCAxOTYsIDE1LCA1LCAyMzMsIDIzNywgMjQyLCAxOTcsIDExMywgMjMzLCAyMzcsIDI0MiwgMTk3LCAyMjEsIDgsIDE1LCAKKyAgICA1LCAyMzMsIDIzMywgMTUsIDUsIDIzMywgMjI2LCAxNSwgNSwgMjMzLCAyMjcsIDI5LCAyMzMsIDIyNiwgMTUsIDUsIDIzMywgCisgICAgMjI0LCAxNSwgNSwgMjMzLCAyMjUsIDI5LCAyMzQsIDYwLCAxNSwgNSwgMjMzLCAyMjUsIDI5LCAyMzQsIDYxLCA5NSwgMjIzLCAKKyAgICA3NywgMTUsIDUsIDIzMywgMTExLCAxNSwgNSwgMjMzLCA5NiwgMTUsIDUsIDIzMywgODYsIDE1LCA1LCAyMzMsIDY3LCAxNSwgCisgICAgNSwgMjMyLCAyMzAsIDE1LCA1LCAyMzIsIDIzMSwgMjksIDI1MiwgMjIxLCAxNSwgNSwgMjMyLCAyMjgsIDE1LCA1LCAyMzIsIAorICAgIDIyOSwgMjksIDI1NCwgMjEzLCAxNSwgNSwgMjMyLCAyMjksIDI5LCAyNTIsIDIyMSwgMTUsIDUsIDIzMiwgMjI5LCAyOSwgCisgICAgMjQ1LCAxNTgsIDE1LCA1LCAyMzIsIDIyOSwgMjksIDI0NSwgMTU5LCAyMTcsIDIwNSwgMTUsIDUsIDIzMiwgMjI5LCAyOSwgCisgICAgMjQzLCAyMDEsIDIxNywgMjA1LCAxNSwgNSwgMjMyLCAyMjksIDI5LCAyNDIsIDI5LCAyOSwgMjUyLCAyMjEsIDE1LCA1LCAKKyAgICAyMzIsIDIyOSwgMjksIDIzNiwgMTI4LCAxNSwgNSwgMjMyLCAyMjksIDI5LCAyMzUsIDExOSwgMTUsIDUsIDIzMiwgMjI5LCAKKyAgICAyOSwgMjM1LCAxMTcsIDE1LCA1LCAyMzIsIDIyOSwgMjksIDIzNSwgMTE4LCA5NSwgMjU0LCAxNywgMTUsIDUsIDIzMiwgCisgICAgMjI5LCAyOSwgMjM0LCAyMTIsIDE1LCA1LCAyMzIsIDIyOSwgMjksIDIzNCwgMCwgOTUsIDI1NCwgMTcsIDE1LCA1LCAyMzIsIAorICAgIDIyOSwgMjksIDIzMywgMjM4LCAxNSwgNSwgMjMyLCAyMjksIDI5LCAyMzEsIDIyNywgOTUsIDI0NSwgMjI5LCAxNSwgNSwgCisgICAgMjMyLCAyMjksIDI5LCAyMjksIDI1NCwgMTUsIDUsIDIzMiwgMjI5LCAyOSwgMjI4LCAxMzUsIDE1LCA1LCAyMzIsIDIyOSwgCisgICAgMjksIDIyMCwgMTM3LCA5NSwgMjU0LCAxNywgMTUsIDUsIDIzMiwgMjI5LCAyOSwgMjIwLCAxMTksIDk1LCAyNTEsIDE3OSwgCisgICAgMTUsIDUsIDIzMiwgMjI5LCAyOSwgMjE2LCA4NSwgMTUsIDUsIDIzMiwgMjI5LCAyMTcsIDIwNSwgMTUsIDUsIDIzMiwgMjI5LCAKKyAgICAyNDksIDE4OCwgMjMyLCAyMjgsIDE1LCA1LCAyMzIsIDIyOSwgMjI3LCA2OCwgMjMyLCAyMjgsIDE1LCA1LCAyMzIsIDIyOSwgCisgICAgMjE5LCAxODQsIDE1LCA1LCAyMzIsIDIyOSwgMjIwLCAyNDYsIDE1LCA1LCAyMzIsIDIyNywgMTUsIDUsIDIzMiwgMjIzLCAKKyAgICAxNSwgNSwgMjMyLCAyMjQsIDExMywgMjMyLCAyMjMsIDE1LCA1LCAyMzIsIDIyNCwgMjI3LCA2OCwgMjMyLCAyMjMsIDE1LCAKKyAgICA1LCAyMzIsIDIyNCwgMjIwLCAyNDYsIDE1LCA1LCAyMzIsIDIyMSwgMTUsIDUsIDIzMiwgMjE4LCAxNSwgNSwgMjMyLCAyMTYsIAorICAgIDE1LCA1LCAyMzIsIDIxNywgMTEzLCAyMzIsIDIxNiwgMTUsIDUsIDIzMiwgMjE3LCAxMTMsIDIzMiwgMjE3LCAyNDMsIDE5MywgCisgICAgMTEzLCAyNDMsIDE5MiwgMTUsIDUsIDE5MSwgMTUsIDUsIDIzMiwgMTE2LCAyOSwgMjE4LCAzNSwgMTUsIDUsIDIzMiwgMTE2LCAKKyAgICAyNDIsIDE5NiwgMTUsIDUsIDIzMiwgMTE1LCAxNSwgNSwgMjMyLCA4OCwgMTUsIDUsIDIzMiwgNDQsIDE1LCA1LCAyMzIsIAorICAgIDI1LCAxNSwgNSwgMjMyLCAyNCwgMTUsIDUsIDIzMSwgMjI2LCAxNSwgNSwgMjMxLCAxODIsIDE1LCA1LCAyMzEsIDExMiwgCisgICAgMTUsIDUsIDIzMSwgNzEsIDE1LCA1LCAyMzAsIDI0MiwgMTUsIDUsIDIzMCwgMjQzLCAxMTMsIDIzMCwgMjQyLCAxNSwgNSwgCisgICAgMjMwLCAyMzMsIDE1LCA1LCAyMzAsIDIzNCwgMjQyLCAxOTYsIDE1LCA1LCAyMzAsIDIxOCwgMTUsIDUsIDIzMCwgMjA0LCAKKyAgICAxNSwgNSwgMjMwLCAyMDEsIDE1LCA1LCAyMzAsIDIwMiwgMjksIDYzLCAxNSwgNSwgMjMwLCAyMDIsIDI5LCAyMzQsIDYwLCAKKyAgICAxNSwgNSwgMjMwLCAyMDIsIDI5LCAyMTIsIDEwOSwgMTUsIDUsIDIzMCwgMjAyLCAxMTMsIDIzMCwgMjAxLCAxNSwgNSwgCisgICAgMjMwLCAyMDIsIDExMywgMjMwLCAyMDIsIDI5LCAxMTEsIDk1LCAyMDcsIDE1LCA1LCAyMzAsIDIwMiwgMjQ5LCAxODgsIAorICAgIDIzMCwgMjAxLCAxNSwgNSwgMjMwLCAxOTksIDE1LCA1LCAyMzAsIDIwMCwgMjksIDYzLCAxNSwgNSwgMjMwLCAyMDAsIDI5LCAKKyAgICAxMTEsIDk1LCAyNDgsIDc2LCAxNSwgNSwgMjMwLCAyMDAsIDI5LCAyNDgsIDc2LCAxNSwgNSwgMjMwLCAyMDAsIDI0MiwgCisgICAgMTk2LCAxNSwgNSwgMjA3LCAxNSwgNSwgMjMwLCAxMTQsIDE1LCA1LCAyMzAsIDEwMywgMTUsIDUsIDIzMCwgMTA0LCAyMzYsIAorICAgIDUxLCAxNSwgNSwgMjMwLCAxMDQsIDI5LCAyMjAsIDE3MSwgMjE3LCAyMDUsIDE1LCA1LCAyMzAsIDEwNCwgMjI3LCA2OCwgCisgICAgMjMwLCAxMDMsIDE1LCA1LCAyMzAsIDEwMiwgMTUsIDUsIDIzMCwgOTYsIDIyOCwgNzksIDE1LCA1LCAyMzAsIDk1LCAxNSwgCisgICAgNSwgMjMwLCA5NCwgMTUsIDUsIDIyOSwgMjU0LCAxNSwgNSwgMjI5LCAyNTUsIDI5LCA2MywgMTUsIDUsIDIyOSwgMjU1LCAKKyAgICAyOSwgMjE1LCAxOTQsIDE1LCA1LCAyMjksIDI1NSwgMjIwLCAyNDYsIDE1LCA1LCAyMjksIDEyOCwgMTUsIDUsIDIyOSwgCisgICAgMTI5LCAyOSwgNzcsIDE1LCA1LCAyMjksIDEyNywgMTUsIDUsIDIyOSwgOTgsIDE1LCA1LCAyMjksIDk5LCAyOSwgMjQzLCAKKyAgICAyMDEsIDIxNywgMjA1LCAxNSwgNSwgMjI5LCA5OSwgMjksIDI0MywgMTkzLCA5NSwgMjQzLCAyMDEsIDIxNywgMjA1LCAxNSwgCisgICAgNSwgMjI5LCA5NiwgMTUsIDUsIDIyOSwgOTcsIDI5LCAyNTQsIDE1OSwgMTUsIDUsIDIyOSwgOTcsIDI5LCAyNTQsIDE3LCAKKyAgICAxNSwgNSwgMjI5LCA5NywgMjksIDI1NCwgMTgsIDk1LCAyNTQsIDE3LCAxNSwgNSwgMjI5LCA5NywgMjksIDI0MiwgMjA1LCAKKyAgICAxNSwgNSwgMjI5LCA5NywgMjksIDIzMSwgMjI3LCA5NSwgMjQzLCAyMDEsIDIxNywgMjA1LCAxNSwgNSwgMjI5LCA5NywgMjksIAorICAgIDIyOSwgMjU0LCAxNSwgNSwgMjI5LCA5NywgMjksIDIyOCwgOTMsIDE1LCA1LCAyMjksIDk3LCAyOSwgMjIxLCA4LCAxNSwgNSwgCisgICAgMjI5LCA5NywgMjksIDIyMSwgOSwgOTUsIDExMSwgMjU0LCAxNTksIDE1LCA1LCAyMjksIDk3LCAyOSwgMjIxLCA5LCA5NSwgCisgICAgMjU0LCAxNywgMTUsIDUsIDIyOSwgOTcsIDI5LCAyMjEsIDksIDk1LCAyNTQsIDE4LCA5NSwgMjU0LCAxNywgMTUsIDUsIAorICAgIDIyOSwgOTcsIDI5LCAyMTUsIDIwNCwgOTUsIDI1NCwgMTcsIDE1LCA1LCAyMjksIDk3LCAyOSwgMjE1LCAxMDYsIDE1LCA1LCAKKyAgICAyMjksIDg1LCAxNSwgNSwgMjI4LCAxMzUsIDE1LCA1LCAyMjgsIDEwOCwgMTUsIDUsIDIyOCwgOTMsIDE1LCA1LCAyMjgsIAorICAgIDk0LCAyMzMsIDIzNywgMjksIDI0MywgMTkyLCAxNSwgNSwgMjI4LCA5NCwgMjMzLCAyMzcsIDI5LCAyMzIsIDI1LCAxNSwgNSwgCisgICAgMjI4LCA5NCwgMjMzLCAyMzcsIDI5LCAyMjIsIDIwMywgMTUsIDUsIDIyOCwgOTQsIDIzMywgMjM3LCAyOSwgMjIyLCAyMDQsIAorICAgIDExMywgMjI4LCA5NCwgMjMzLCAyMzcsIDI5LCAyMjIsIDIwMywgMTUsIDUsIDIyOCwgOTQsIDIzMywgMjM3LCAyOSwgMjE1LCAKKyAgICAxMDYsIDE1LCA1LCAyMjgsIDk0LCAyMTcsIDIwNSwgMTUsIDUsIDIyOCwgOTQsIDExMywgMjI4LCA5MywgMTUsIDUsIDIyOCwgCisgICAgOTQsIDI0OSwgMTg4LCAyMjgsIDkzLCAxNSwgNSwgMjI4LCA5NCwgMjQ5LCAxODgsIDIyOCwgOTQsIDIzMywgMjM3LCAxMTMsIAorICAgIDIzMywgMjM2LCAxNSwgNSwgMjI4LCA4OCwgMTUsIDUsIDIyOCwgODksIDI1NSwgNTYsIDI5LCAyNTQsIDEyLCAxNSwgNSwgCisgICAgMjI4LCA4OSwgMjU1LCA1NiwgMjksIDI1MiwgNTQsIDE1LCA1LCAyMjgsIDg5LCAyNTUsIDU2LCAyOSwgMjQ2LCAxNTAsIDE1LCAKKyAgICA1LCAyMjgsIDg5LCAyNTUsIDU2LCAyOSwgMjQyLCAyMDUsIDE1LCA1LCAyMjgsIDg5LCAyNTUsIDU2LCAyOSwgMjM2LCAxNDgsIAorICAgIDI0MiwgMTk2LCAxNSwgNSwgMjI4LCA4OSwgMjU1LCA1NiwgMjksIDIzNSwgMTE3LCAxNSwgNSwgMjI4LCA4OSwgMjU1LCA1NiwgCisgICAgMjksIDIzMywgMjU1LCAxNSwgNSwgMjI4LCA4OSwgMjU1LCA1NiwgMjksIDIyOSwgMjU0LCAxNSwgNSwgMjI4LCA4OSwgMjU1LCAKKyAgICA1NiwgMjksIDIyMCwgMTE2LCAxNSwgNSwgMjI4LCA4OSwgMjU1LCA1NiwgMjksIDIxNSwgMjAzLCAxNSwgNSwgMjI4LCA4OSwgCisgICAgMjM0LCAxODYsIDI5LCAyNTIsIDU0LCAxNSwgNSwgMjI4LCA4OSwgMjM0LCAxODYsIDI5LCAyNTIsIDU1LCA3MiwgMTUsIDUsIAorICAgIDE5NSwgMTUsIDUsIDIyNiwgMjQyLCAxNSwgNSwgMjI2LCAyMTEsIDE1LCA1LCAyMjYsIDE4NiwgMTUsIDUsIDIyNiwgNzMsIAorICAgIDE1LCA1LCAyMjYsIDIwLCAxNSwgNSwgMjI2LCAyMSwgMjksIDYzLCAxNSwgNSwgMjI2LCAyMSwgMjksIDI1NSwgNTcsIDE1LCAKKyAgICA1LCAyMjYsIDIxLCAyOSwgMjUyLCA1NCwgMTUsIDUsIDIyNiwgMjEsIDI5LCAyNTEsIDE3OSwgMTUsIDUsIDIyNiwgMjEsIAorICAgIDI5LCA3NywgMTUsIDUsIDIyNiwgMjEsIDI5LCA3NSwgMTUsIDUsIDIyNiwgMjEsIDI5LCAyNDAsIDIyNSwgMTUsIDUsIDIyNiwgCisgICAgMjEsIDI5LCA3MiwgMTUsIDUsIDIyNiwgMjEsIDI5LCAyMTUsIDIwMywgMTUsIDUsIDIyNiwgMjEsIDI0OSwgMTg4LCAyMjYsIAorICAgIDIwLCAxNSwgNSwgMjI1LCAyMjEsIDE1LCA1LCAyMjUsIDIyMiwgMjksIDIzNSwgMTAwLCAxNSwgNSwgMjI1LCAyMjIsIDI5LCAKKyAgICAyMTUsIDE5NCwgMTUsIDUsIDIyNSwgMjIyLCAyOSwgMjEyLCAxMDksIDE1LCA1LCAyMjUsIDIyMiwgMjI3LCA2OCwgMjI1LCAKKyAgICAyMjEsIDE1LCA1LCAyMDgsIDE1LCA1LCAyMjQsIDEwNywgMTUsIDUsIDIyMywgMjIyLCAxNSwgNSwgMjIzLCA3NywgMTUsIDUsIAorICAgIDIyMiwgMjI3LCAxNSwgNSwgMjIyLCAyMTYsIDIyOCwgNzksIDE1LCA1LCAyMjIsIDIxNSwgMTUsIDUsIDIyMiwgMjE2LCAyOSwgCisgICAgNjMsIDE1LCA1LCAyMjIsIDIxNiwgMjksIDI0NiwgMTU0LCAxNSwgNSwgMjIyLCAyMTYsIDI5LCAyNDYsIDE1MiwgMTUsIDUsIAorICAgIDIyMiwgMjE2LCAyOSwgMTYyLCAxNSwgNSwgMjIyLCAyMTYsIDI5LCAyMzUsIDEwNCwgMTUsIDUsIDIyMiwgMjE2LCAyOSwgCisgICAgMjM0LCA2MCwgMTUsIDUsIDIyMiwgMjE2LCAyOSwgMjMyLCAyMTYsIDE1LCA1LCAyMjIsIDIxNiwgMjksIDIzMSwgMTEyLCAKKyAgICAxNSwgNSwgMjIyLCAyMTYsIDI5LCAyMjgsIDkzLCAxNSwgNSwgMjIyLCAyMTYsIDI5LCAyMjIsIDIwMywgMTUsIDUsIDIyMiwgCisgICAgMjE2LCAyOSwgMjIwLCAyMzEsIDE1LCA1LCAyMjIsIDIxNiwgMjksIDIxOCwgNTUsIDE1LCA1LCAyMjIsIDIxNiwgMjksIAorICAgIDIxNSwgMjAzLCAxNSwgNSwgMjIyLCAyMTYsIDI5LCAyMTUsIDIwMCwgMTUsIDUsIDIyMiwgMjE2LCAyOSwgMjE1LCAxNzMsIAorICAgIDE1LCA1LCAyMjIsIDIxNiwgMjksIDIxNSwgMTI3LCAxNSwgNSwgMjIyLCAyMTYsIDI5LCAyMTUsIDEwNiwgMTUsIDUsIDIyMiwgCisgICAgMjE2LCAxMTMsIDIyMiwgMjE1LCAxNSwgNSwgMjIyLCAyMTYsIDI0MiwgMTk2LCAxNSwgNSwgMjIyLCAyMDMsIDE1LCA1LCAKKyAgICAyMjIsIDIwNCwgMjMzLCAyMzksIDI5LCAyNTQsIDE1LCAxNSwgNSwgMjIyLCAxNzksIDE1LCA1LCAyMjIsIDE3MSwgMTUsIDUsIAorICAgIDIyMSwgNDcsIDE1LCA1LCAyMjEsIDQ1LCAxNSwgNSwgMjIxLCA0NiwgMjksIDYzLCAxNSwgNSwgMjIxLCA0NiwgMjksIDI1MiwgCisgICAgMjIxLCAxNSwgNSwgMjIxLCA0NiwgMjksIDI0MywgMzAsIDE1LCA1LCAyMjEsIDQ2LCAyOSwgMjI5LCAyNTQsIDE1LCA1LCAKKyAgICAyMjEsIDQ2LCAyOSwgMjIwLCAxNjgsIDE1LCA1LCAyMjEsIDQ2LCAyOSwgMjE2LCA3MCwgMTUsIDUsIDIyMSwgNDYsIDI5LCAKKyAgICA3MiwgMTUsIDUsIDIyMSwgNDYsIDI5LCAxMDMsIDk1LCA2MywgMTUsIDUsIDIyMSwgNDQsIDE1LCA1LCAyMjEsIDQyLCAxNSwgCisgICAgNSwgMjIxLCAyMywgMTUsIDUsIDIyMSwgOCwgMTUsIDUsIDIyMSwgOSwgMjQxLCA3NCwgMTUsIDUsIDIyMSwgOSwgMTEzLCAKKyAgICAyMjEsIDksIDI0MywgMjIyLCAxMTMsIDI0MywgMjIyLCAyNDMsIDE5MywgMTEzLCAyNDMsIDE5MiwgMTUsIDUsIDIyMSwgOSwgCisgICAgMTEzLCAyMjEsIDksIDIxOCwgNTYsIDExMywgMjE4LCA1NiwgMjQzLCAxOTMsIDExMywgMjQzLCAxOTIsIDE1LCA1LCAyMjEsIAorICAgIDEsIDE1LCA1LCAyMjAsIDI1MiwgMTUsIDUsIDIyMCwgMjQ5LCAxNSwgNSwgMjIwLCAyNDgsIDE1LCA1LCAyMjAsIDI0NSwgCisgICAgMTUsIDUsIDIyMCwgMjMxLCAxNSwgNSwgMjIwLCAyMzIsIDI5LCA2MywgMTUsIDUsIDIyMCwgMjMyLCAyOSwgMjM2LCAxMjgsIAorICAgIDE1LCA1LCAyMjAsIDIyNSwgMTUsIDUsIDIyMCwgMjI2LCAyOSwgNjMsIDE1LCA1LCAyMjAsIDIyNiwgMjksIDI1MiwgMjA3LCAKKyAgICAxNSwgNSwgMjIwLCAyMjYsIDI5LCAyNTEsIDE2MywgMTUsIDUsIDIyMCwgMjI2LCAyOSwgMjQ4LCAyMywgMTUsIDUsIDIyMCwgCisgICAgMjI2LCAyOSwgMjQzLCAxOTIsIDE1LCA1LCAyMjAsIDIyNiwgMjksIDIzNiwgMTQ3LCAxNSwgNSwgMjIwLCAyMjYsIDI5LCAKKyAgICAyMzYsIDE0OCwgMjQyLCAxOTYsIDE1LCA1LCAyMjAsIDIyNiwgMjksIDIzNCwgNTUsIDE1LCA1LCAyMjAsIDIyNiwgMjksIAorICAgIDIzMiwgMjE4LCAxNSwgNSwgMjIwLCAyMjYsIDI5LCAyMzAsIDIzMywgMTUsIDUsIDIyMCwgMjI2LCAyOSwgMjIyLCAyMDMsIAorICAgIDE1LCA1LCAyMjAsIDIxOSwgMTUsIDUsIDIyMCwgMjE0LCAxNSwgNSwgMjIwLCAyMTUsIDIxNywgMjA1LCAxNSwgNSwgMjIwLCAKKyAgICAyMTUsIDExMywgMjIwLCAyMTUsIDI1MSwgMTUzLCAxMTMsIDI1MSwgMTUyLCAxNSwgNSwgMjIwLCAyMTAsIDE1LCA1LCAyMjAsIAorICAgIDE3MCwgMTUsIDUsIDIyMCwgMTcxLCAxMTMsIDIzNiwgNTIsIDIyMCwgMTcwLCAxNSwgNSwgMjIwLCAxNjgsIDE1LCA1LCAKKyAgICAyMjAsIDE2NywgMTUsIDUsIDIyMCwgMTM2LCAxNSwgNSwgMjIwLCAxMzcsIDI0MiwgMTk2LCAxNSwgNSwgMjIwLCAxMjcsIAorICAgIDE1LCA1LCAyMjAsIDEyNSwgMTUsIDUsIDIyMCwgMTI2LCAxMTMsIDIyMCwgMTI2LCAyMjAsIDE2OCwgMTUsIDUsIDIyMCwgCisgICAgMTE4LCAxNSwgNSwgMjIwLCAxMTYsIDE1LCA1LCAyMTksIDQxLCAxNSwgNSwgMjE5LCA0MiwgMTEzLCAyMTksIDQxLCAxNSwgCisgICAgNSwgMjE5LCAxMywgMTUsIDUsIDIxOSwgMTIsIDE1LCA1LCAyMTksIDEwLCAxNSwgNSwgMjE5LCAyLCAxNSwgNSwgMjE5LCAxLCAKKyAgICAxNSwgNSwgMjE4LCAyMzEsIDE1LCA1LCAyMTgsIDIzMCwgMTUsIDUsIDIxOCwgNjYsIDE1LCA1LCAyMTgsIDY3LCAyNTQsIDMsIAorICAgIDE1LCA1LCAyMTgsIDY3LCAyOSwgMjQyLCAyOCwgMTUsIDUsIDIxOCwgNjcsIDI5LCAyMzEsIDExMiwgMTUsIDUsIDIxOCwgCisgICAgNjcsIDI0MiwgMTk2LCAxNSwgNSwgMjE4LCA1NSwgMTUsIDUsIDIxOCwgNTYsIDExMywgMjE4LCA1NiwgMjI5LCAxMjksIAorICAgIDExMywgMjI5LCAxMjksIDI0OCwgNSwgMTEzLCAyNDgsIDQsIDE1LCA1LCAyMTgsIDU2LCAyMTksIDE4NCwgMTUsIDUsIDIxOCwgCisgICAgNDcsIDE1LCA1LCAxMjgsIDI5LCAyNTIsIDU0LCAxNSwgNSwgMTI4LCAyOSwgMjQyLCAyMDUsIDE1LCA1LCAxMjgsIDI5LCAKKyAgICAyMjEsIDgsIDE1LCA1LCAxMjgsIDI5LCAyMjAsIDE3MCwgMTUsIDUsIDEyOCwgMjksIDIxNiwgODUsIDE1LCA1LCAxMjgsIAorICAgIDI5LCAyMTUsIDE5NCwgMTUsIDUsIDIxOCwgMzUsIDE1LCA1LCAyMTgsIDE0LCAxNSwgNSwgMjE3LCAyNDIsIDE1LCA1LCAKKyAgICAyMTcsIDI0MywgMjQyLCAxOTYsIDE1LCA1LCAyMTcsIDg0LCAxNSwgNSwgMjE3LCA4NSwgMjE3LCAyMDUsIDE1LCA1LCAyMTcsIAorICAgIDU3LCAxNSwgNSwgMjE3LCAzOSwgMTUsIDUsIDIxNywgNDAsIDI5LCAyMTgsIDM1LCAxNSwgNSwgMjE3LCA0MCwgMTEzLCAKKyAgICAyMTcsIDM5LCAxNSwgNSwgMjE3LCA0MCwgMTEzLCAyMTcsIDQwLCAyNDMsIDIyMiwgMTEzLCAyNDMsIDIyMiwgMjQzLCAxOTMsIAorICAgIDExMywgMjQzLCAxOTIsIDE1LCA1LCAyMTYsIDkwLCAxNSwgNSwgMjE2LCA4NSwgMTUsIDUsIDIxNiwgODMsIDE1LCA1LCAKKyAgICAyMTYsIDgwLCAxNSwgNSwgMjE2LCA3MCwgMTUsIDUsIDIxNiwgNzEsIDExMywgMjE2LCA3MSwgMjEyLCAxMTAsIDExMywgCisgICAgMjEyLCAxMDksIDE1LCA1LCA3MiwgMTUsIDUsIDEwMywgMjQyLCAyMDUsIDE1LCA1LCAxMDMsIDEwMywgNzIsIDE1LCA1LCAKKyAgICAxMDMsIDExMywgMTAzLCAyMjYsIDI1MiwgMTEzLCAyMjYsIDI1MiwgMjQzLCAxOTMsIDExMywgMjQzLCAxOTIsIDE1LCA1LCAKKyAgICAxMDMsIDExMywgMTAzLCAyMTgsIDIzMiwgMTEzLCAyMTgsIDIzMSwgMTUsIDUsIDEwMywgMTEzLCAxMDMsIDEwMywgMjIzLCAKKyAgICAyMzYsIDExMywgMTAzLCAyMjMsIDIzNSwgMTUsIDUsIDIxNSwgMjAzLCAxNSwgNSwgMjE1LCAyMDAsIDE1LCA1LCAyMTUsIAorICAgIDE5NCwgMTUsIDUsIDIxNSwgMTk1LCAyMzQsIDU1LCAxNSwgNSwgMjE1LCAxOTUsIDI5LCAyNTIsIDIyMSwgMTUsIDUsIDIxNSwgCisgICAgMTk1LCAyOSwgMjMxLCAxMTIsIDE1LCA1LCAyMTUsIDE5NSwgMjksIDEwMywgOTUsIDEwMywgOTUsIDcyLCAxNSwgNSwgMjE1LCAKKyAgICAxOTUsIDI5LCAxMDMsIDk1LCAxMDMsIDk1LCAxMDMsIDI0MiwgMTk2LCAxNSwgNSwgMjE1LCAxOTUsIDI0MiwgMTk2LCAxNSwgCisgICAgNSwgMjE1LCAxOTUsIDIyMCwgMjQ2LCAxNSwgNSwgMjE1LCAxOTUsIDIyMCwgMjQ3LCAyOSwgMjUyLCAyMjEsIDE1LCA1LCAKKyAgICAyMTUsIDE5MCwgMTUsIDUsIDIxNSwgMTczLCAxNSwgNSwgMjE1LCAxNzQsIDI5LCAyMzMsIDIzOCwgMTUsIDUsIDIxNSwgCisgICAgMTc0LCAyOSwgMjMxLCAyMjcsIDk1LCAyNDksIDMwLCAxNSwgNSwgMjE1LCAxNzQsIDI5LCAyMjEsIDQ1LCAxNSwgNSwgMjE1LCAKKyAgICAxNzQsIDI5LCA3MiwgMTUsIDUsIDIxNSwgMTcyLCAxNSwgNSwgMjE1LCAxNjgsIDE1LCA1LCAyMTUsIDE2OSwgMjksIDIzNSwgCisgICAgNjksIDE1LCA1LCAyMTUsIDE2OSwgMjksIDE5NSwgMTUsIDUsIDIxNSwgMTY2LCAxNSwgNSwgMjE1LCAxNjcsIDI0MiwgMTk2LCAKKyAgICAxNSwgNSwgMjE1LCAxMjcsIDE1LCA1LCAyMTUsIDEyOCwgMjQ5LCAxODgsIDIxNSwgMTI3LCAxNSwgNSwgMjE1LCAxMjgsIAorICAgIDIyMCwgMjQ2LCAxNSwgNSwgMjE1LCAxMjUsIDE1LCA1LCAyMTUsIDEyNiwgMjksIDExMSwgOTUsIDE2MiwgMTUsIDUsIDIxNSwgCisgICAgMTI2LCAyOSwgMTExLCA5NSwgMjA3LCAxNSwgNSwgMjE1LCAxMjYsIDI5LCAyNTQsIDIxMywgMTUsIDUsIDIxNSwgMTI2LCAKKyAgICAyOSwgMTYyLCAxNSwgNSwgMjE1LCAxMjYsIDI5LCAyMjgsIDkzLCAxNSwgNSwgMjE1LCAxMjYsIDI5LCAyMTUsIDIwMywgMTUsIAorICAgIDUsIDIxNSwgMTI2LCAyOSwgMjE1LCAyMDQsIDk1LCAyNTQsIDE3LCAxNSwgNSwgMjE1LCAxMjYsIDI5LCAyMTUsIDIwNCwgCisgICAgOTUsIDI1MiwgNTQsIDE1LCA1LCAyMTUsIDEyNCwgMTUsIDUsIDIxNSwgMTIxLCAxNSwgNSwgMjE1LCAxMjAsIDE1LCA1LCAKKyAgICAyMTUsIDExNiwgMTUsIDUsIDIxNSwgMTE3LCAyOSwgNjMsIDE1LCA1LCAyMTUsIDExNywgMjksIDI1NCwgMTIsIDE1LCA1LCAKKyAgICAyMTUsIDExNywgMjksIDEzNCwgMTUsIDUsIDIxNSwgMTE3LCAyOSwgMjQ2LCAxNDQsIDE1LCA1LCAyMTUsIDExNywgMjksIAorICAgIDI0MywgMjMwLCAxNSwgNSwgMjE1LCAxMTcsIDI5LCAyNDMsIDIxNCwgMTUsIDUsIDIxNSwgMTE3LCAyOSwgMjQzLCAyMDEsIAorICAgIDIxNywgMjA1LCAxNSwgNSwgMjE1LCAxMTcsIDI5LCAyNDMsIDE5MiwgMTUsIDUsIDIxNSwgMTE3LCAyOSwgMjQyLCAyMTMsIAorICAgIDE1LCA1LCAyMTUsIDExNywgMjksIDE2MiwgMTUsIDUsIDIxNSwgMTE3LCAyOSwgMjM2LCAxNDcsIDE1LCA1LCAyMTUsIDExNywgCisgICAgMjksIDIzNiwgMTI4LCAxNSwgNSwgMjE1LCAxMTcsIDI5LCAyMzYsIDI0LCAxNSwgNSwgMjE1LCAxMTcsIDI5LCAyMzQsIAorICAgIDIxMiwgMTUsIDUsIDIxNSwgMTE3LCAyOSwgMjMyLCAyMTYsIDE1LCA1LCAyMTUsIDExNywgMjksIDIzMSwgNzEsIDE1LCA1LCAKKyAgICAyMTUsIDExNywgMjksIDE5NSwgMTUsIDUsIDIxNSwgMTE3LCAyOSwgMjIxLCA4LCAxNSwgNSwgMjE1LCAxMTcsIDI5LCAyMjAsIAorICAgIDEyNSwgMTUsIDUsIDIxNSwgMTE3LCAyOSwgMjE2LCA5MCwgMTUsIDUsIDIxNSwgMTE3LCAyOSwgMTAzLCA5NSwgMjQyLCAKKyAgICAyMDUsIDE1LCA1LCAyMTUsIDExNywgMjksIDIxNSwgMTk0LCAxNSwgNSwgMjE1LCAxMTcsIDI5LCAyMTUsIDExNCwgMTUsIDUsIAorICAgIDIxNSwgMTE0LCAxNSwgNSwgMjE1LCAxMTUsIDI5LCA3MiwgMTUsIDUsIDIxNSwgMTA2LCAxNSwgNSwgMjE1LCAxMDcsIDI5LCAKKyAgICA2MywgMTUsIDUsIDIxNSwgMTA3LCAyOSwgMjM0LCA4MSwgMTUsIDUsIDIxNSwgMTA3LCAyOSwgMjM0LCA2MCwgMTUsIDUsIAorICAgIDIxNSwgMTA3LCAyOSwgMjE4LCAzNSwgMTUsIDUsIDIxNSwgMTAyLCAxNSwgNSwgMjE1LCAxMDUsIDE1LCA1LCAyMTUsIDEwMywgCisgICAgMTUsIDUsIDIxNSwgOTksIDE1LCA1LCAyMTUsIDg4LCAxNSwgNSwgMjE1LCA4OSwgMjksIDIzNSwgNjksIDE1LCA1LCAyMTUsIAorICAgIDg3LCAxNSwgNSwgMjEyLCAxMDksIDE1LCA1LCAyMTIsIDExMCwgMjE3LCAyMDUsIDE1LCA1LCAyMTIsIDExMCwgOTIsIDI5LCAKKyAgICAyMzQsIDYwLCAxNSwgNSwgMjEyLCAxMDYsIDE1LCA1LCAyMTIsIDk5LCAxNSwgNSwgMjEyLCA4NiwgMTUsIDUsIDIxMiwgMzcsIAorICAgIDE1LCA1LCAyMTIsIDM4LCAxMTMsIDIxMiwgMzcsIDE1LCA1LCAyMTIsIDM2LCAxNSwgNSwgMjEyLCAzNCwgMTUsIDUsIDIxMiwgCisgICAgMzUsIDIzNSwgMTIxLCAyMTcsIDIwNSwgMTUsIDUsIDIxMiwgMjksIDE1LCA1LCAyMTIsIDIxLCAxNSwgNSwgMjEyLCA4LCAKKyAgICAxNSwgNSwgMjEyLCA2LCAxNSwgNSwgMjEyLCA3LCAyOSwgNjMsIDE1LCA1LCAyMTIsIDUsIDE1LCA1LCAyMTIsIDQsIDE1LCAKKyAgICAxMzAsIDUsIDExOSwgMjU0LCAxNywgMTUsIDEzMCwgNSwgMTM3LCAyNTQsIDE3LCAxNSwgMTMwLCA1LCAyNDQsIDEwMSwgCisgICAgMjU0LCAxNywgMTUsIDEzMCwgNSwgMjQ0LCAxNzAsIDI1NCwgMTcsIDE1LCAxMzAsIDUsIDIyMCwgNzIsIDI1NCwgMTcsIDE1LCAKKyAgICAxMzAsIDUsIDIyMSwgNjYsIDI1NCwgMTcsIDE1LCAxMzAsIDUsIDI0NiwgMTUsIDI1NCwgMTcsIDE1LCAxMzAsIDUsIDIyOSwgCisgICAgOTUsIDI1NCwgMTcsIDE1LCAxMzAsIDUsIDEzNywgMjQ4LCA0LCAxNSwgMTMwLCA1LCAyNDQsIDEwMSwgMjQ4LCA0LCAxNSwgCisgICAgMTMwLCA1LCAyNDQsIDE3MCwgMjQ4LCA0LCAxNSwgMTMwLCA1LCAyMjAsIDcyLCAyNDgsIDQsIDE1LCAxMzAsIDUsIDIyMSwgCisgICAgNjYsIDI0OCwgNCwgMTUsIDEzMCwgNSwgMjQ2LCAxNSwgMjQ4LCA0LCAxNSwgMTMwLCA1LCAyMjksIDk1LCAyNDgsIDQsIDE1LCAKKyAgICAxMzAsIDUsIDI0NCwgMTAxLCA3MiwgMTUsIDEzMCwgNSwgMjQ0LCAxNzAsIDcyLCAxNSwgMTMwLCA1LCAyMjAsIDcyLCA3MiwgCisgICAgMTUsIDEzMCwgNSwgMjIxLCA2NiwgNzIsIDE1LCAxMzAsIDUsIDI0NiwgMTUsIDcyLCAxNSwgMTMwLCA1LCAyMjksIDk1LCAKKyAgICA3MiwgMTUsIDEzMCwgNSwgMTI0LCAyNDMsIDEzNCwgMTUsIDEzMCwgNSwgMTE5LCAyNDMsIDEzNCwgMTUsIDEzMCwgNSwgCisgICAgMTM3LCAyNDMsIDEzNCwgMTUsIDEzMCwgNSwgMjQ0LCAxMDEsIDI0MywgMTM0LCAxNSwgMTMwLCA1LCAyNDQsIDE3MCwgMjQzLCAKKyAgICAxMzQsIDE1LCAxMzAsIDUsIDIyMCwgNzIsIDI0MywgMTM0LCAxNSwgMTMwLCA1LCAyMjEsIDY2LCAyNDMsIDEzNCwgMTUsIAorICAgIDEzMCwgNSwgMjQ2LCAxNSwgMjQzLCAxMzQsIDE1LCAxMzAsIDUsIDIyOSwgOTUsIDI0MywgMTM0LCAxNSwgMTMwLCA1LCAKKyAgICAxMjQsIDI0MywgMTMxLCAxNSwgMTMwLCA1LCAxMTksIDI0MywgMTMxLCAxNSwgMTMwLCA1LCAxMzcsIDI0MywgMTMxLCAxNSwgCisgICAgMTMwLCA1LCAyNDQsIDEwMSwgMjQzLCAxMzEsIDE1LCAxMzAsIDUsIDI0NCwgMTcwLCAyNDMsIDEzMSwgMTUsIDEzMCwgNSwgCisgICAgMTE5LCAyMjEsIDIzLCAxNSwgMTMwLCA1LCAxMzcsIDIyMSwgMjMsIDE1LCAxMzAsIDUsIDEzNywgMjIxLCAyNCwgMjE0LCAKKyAgICAyNTAsIDE3LCAxNSwgMTMwLCA1LCAyNDQsIDEwMSwgMjIxLCAyMywgMTUsIDEzMCwgNSwgMjQ0LCAxNzAsIDIyMSwgMjMsIAorICAgIDE1LCAxMzAsIDUsIDIyMCwgNzIsIDIyMSwgMjMsIDE1LCAxMzAsIDUsIDIyMSwgNjYsIDIyMSwgMjMsIDE1LCAxMzAsIDUsIAorICAgIDI0NiwgMTUsIDIyMSwgMjMsIDE1LCAxMzAsIDUsIDIyOSwgOTUsIDIyMSwgMjMsIDE1LCAxMzAsIDUsIDEyNCwgMjIxLCAxOCwgCisgICAgMTUsIDEzMCwgNSwgMTE5LCAyMjEsIDE4LCAxNSwgMTMwLCA1LCAxMzcsIDIyMSwgMTgsIDE1LCAxMzAsIDUsIDEzNywgMjIxLCAKKyAgICAxOSwgMjE0LCAyNTAsIDE3LCAxNSwgMTMwLCA1LCAyNDQsIDEwMSwgMjIxLCAxOCwgMTUsIDEzMCwgNSwgMjQ0LCAxNzAsIAorICAgIDIyMSwgMTgsIDE1LCAxMzAsIDUsIDIyMSwgMjQsIDI5LCAyNDMsIDIxNSwgOTUsIDI0OCwgNCwgMTUsIDEzMCwgNSwgMjIxLCAKKyAgICAyNCwgMjksIDI0MywgMjE1LCA5NSwgMjMxLCA3MSwgMTUsIDEzMCwgNSwgMTI0LCAyNTEsIDE0OSwgMTUsIDEzMCwgNSwgCisgICAgMTE5LCAyNTEsIDE0OSwgMTUsIDEzMCwgNSwgMTM3LCAyNTEsIDE0OSwgMTUsIDEzMCwgNSwgMTM3LCAyNTEsIDE1MCwgMjE0LCAKKyAgICAyNTAsIDE3LCAxNSwgMTMwLCA1LCAyNDQsIDEwMSwgMjUxLCAxNDksIDE1LCAxMzAsIDUsIDI0NCwgMTcwLCAyNTEsIDE0OSwgCisgICAgMTUsIDEzMCwgNSwgMTM3LCAyMTQsIDI1MCwgMjQ0LCAxMDksIDI0NSwgMTYwLCAxNSwgMTMwLCA1LCAxMzcsIDIxNCwgMjUwLCAKKyAgICAyNDQsIDEwOSwgMjQ1LCAxNTcsIDE1LCAxMzAsIDUsIDI0NCwgMTAxLCAyMTQsIDI1MCwgMjQ0LCAxMDksIDIzMywgODcsIAorICAgIDE1LCAxMzAsIDUsIDI0NCwgMTAxLCAyMTQsIDI1MCwgMjQ0LCAxMDksIDIzMywgODUsIDE1LCAxMzAsIDUsIDI0NCwgMTAxLCAKKyAgICAyMTQsIDI1MCwgMjQ0LCAxMDksIDIzMywgODgsIDYzLCAxNSwgMTMwLCA1LCAyNDQsIDEwMSwgMjE0LCAyNTAsIDI0NCwgCisgICAgMTA5LCAyMzMsIDg4LCAyNTMsIDIwMSwgMTUsIDEzMCwgNSwgMjIwLCA3MiwgMjE0LCAyNTAsIDI0NCwgMTA5LCAyNTQsIDE0LCAKKyAgICAxNSwgMTMwLCA1LCAyMjEsIDY2LCAyMTQsIDI1MCwgMjQ0LCAxMDksIDIzNiwgMTIwLCAxNSwgMTMwLCA1LCAyMjEsIDY2LCAKKyAgICAyMTQsIDI1MCwgMjQ0LCAxMDksIDIzNiwgMTIyLCA2MywgMTUsIDEzMCwgNSwgMjIxLCA2NiwgMjE0LCAyNTAsIDI0NCwgCisgICAgMTA5LCAyMzYsIDEyMiwgMjUzLCAyMDEsIDE1LCAxMzAsIDUsIDI0NiwgMTUsIDIxNCwgMjUwLCAyNDQsIDEwOSwgMjE1LCAKKyAgICAxMDEsIDE1LCAxMzAsIDUsIDI0NiwgMTUsIDIxNCwgMjUwLCAyNDQsIDEwOSwgMjE1LCAxMDAsIDE1LCAxMzAsIDUsIDIyOSwgCisgICAgOTUsIDIxNCwgMjUwLCAyNDQsIDEwOSwgMjM2LCAxMzYsIDE1LCAxMzAsIDUsIDIyOSwgOTUsIDIxNCwgMjUwLCAyNDQsIAorICAgIDEwOSwgMjM2LCAxMzUsIDE1LCAxMzAsIDUsIDIyOSwgOTUsIDIxNCwgMjUwLCAyNDQsIDEwOSwgMjM2LCAxMzQsIDE1LCAKKyAgICAxMzAsIDUsIDIyOSwgOTUsIDIxNCwgMjUwLCAyNDQsIDEwOSwgMjM2LCAxMzcsIDYzLCAxNSwgMTMwLCA1LCAxMTksIDI1NCwgCisgICAgMTgsIDIxNywgMjA1LCAxNSwgMTMwLCA1LCAxMzcsIDI1NCwgMTgsIDIxNywgMjA1LCAxNSwgMTMwLCA1LCAyNDQsIDEwMSwgCisgICAgMjU0LCAxOCwgMjE3LCAyMDUsIDE1LCAxMzAsIDUsIDI0NCwgMTcwLCAyNTQsIDE4LCAyMTcsIDIwNSwgMTUsIDEzMCwgNSwgCisgICAgMjIwLCA3MiwgMjU0LCAxOCwgMjE3LCAyMDUsIDE1LCAxMzAsIDUsIDEyNCwgMjUyLCAxOTYsIDE1LCAxMzAsIDUsIDExOSwgCisgICAgMjUyLCAxOTYsIDE1LCAxMzAsIDUsIDEzNywgMjUyLCAxOTYsIDE1LCAxMzAsIDUsIDI0NCwgMTAxLCAyNTIsIDE5NiwgMTUsIAorICAgIDEzMCwgNSwgMjQ0LCAxMDEsIDI1MiwgMTk3LCAyMTQsIDI1MCwgMTcsIDE1LCAxMzAsIDUsIDI0NCwgMTcwLCAyNTIsIDE5NiwgCisgICAgMTUsIDEzMCwgNSwgMjQ0LCAxNzAsIDI1MiwgMTk3LCAyMTQsIDI1MCwgMTcsIDE1LCAxMzAsIDUsIDIyOSwgMTA1LCAxNSwgCisgICAgMTMwLCA1LCAyMjksIDEwNiwgMTUsIDEzMCwgNSwgMTI0LCAyNDUsIDE1NiwgMTUsIDEzMCwgNSwgMTE5LCAyNDUsIDE1NiwgCisgICAgMTUsIDEzMCwgNSwgMTI0LCAyMTcsIDEzNSwgMjQ4LCA0LCAxNSwgMTMwLCA1LCAxMTksIDIxNywgMTMzLCAyNDgsIDQsIDE1LCAKKyAgICAxMzAsIDUsIDI0NCwgMTcwLCAyMjAsIDYxLCAyNDgsIDQsIDE1LCAxMzAsIDUsIDEyNCwgMjE3LCAxMzUsIDIxNCwgMjUwLCAKKyAgICAyNDQsIDEwOSwgNjMsIDE1LCAxMzAsIDUsIDExOSwgMjE3LCAxMzMsIDIxNCwgMjUwLCAyNDQsIDEwOSwgNjMsIDE1LCAxMzAsIAorICAgIDUsIDEyNCwgMjQ2LCAxMSwgMjU0LCAxNywgMTUsIDEzMCwgNSwgMTI0LCAyMjQsIDIwMiwgMjU0LCAxNywgMTUsIDEzMCwgNSwgCisgICAgNTQsIDI1NCwgNiwgMTI0LCAyMjAsIDYyLCAxNSwgMTMwLCA1LCA1NCwgMjU0LCA2LCAxMjQsIDIyNCwgMjAxLCAxNSwgMjI1LCAKKyAgICA2MywgNSwgNTQsIDI1NCwgNiwgMjEzLCAxOTksIDI0NywgMjQ1LCAxNSwgMjI1LCA2MywgNSwgNjYsIDI1MCwgMzAsIDE1LCAKKyAgICAyMjUsIDYzLCA1LCAyNDgsIDcyLCAyNTAsIDMwLCAxNSwgMjI1LCA2MywgNSwgMjQ4LCA3MiwgMjE2LCAxOTIsIDEwLCAxMSwgCisgICAgMjU1LCAxODYsIDEwLCAxMSwgMjU1LCAxODUsIDEwLCAxMSwgMjU1LCAxODQsIDEwLCAxMSwgMjU1LCAxODMsIDEwLCAxMSwgCisgICAgMjU1LCAxODIsIDEwLCAxMSwgMjU1LCAxODEsIDEwLCAxMSwgMjU1LCAxODAsIDEwLCAxMSwgMjU1LCAxNzksIDEwLCAxMSwgCisgICAgMjU1LCAxNzgsIDEwLCAxMSwgMjU1LCAxNzcsIDEwLCAxMSwgMjU1LCAxNzYsIDEwLCAxMSwgMjU1LCAxNzUsIDEwLCAxMSwgCisgICAgMjU1LCAxNzQsIDEwLCAxMSwgMjU1LCAxNzMsIDEwLCAxMSwgMjU1LCAxNzIsIDEwLCAxMSwgMjU1LCAxNzEsIDEwLCAxMSwgCisgICAgMjU1LCAxNzAsIDEwLCAxMSwgMjU1LCAxNjksIDEwLCAxMSwgMjU1LCAxNjgsIDEwLCAxMSwgMjU1LCAxNjcsIDEwLCAxMSwgCisgICAgMjU1LCAxNjYsIDEwLCAxMSwgMjU1LCAxNjUsIDEwLCAxMSwgMjU1LCAxNjQsIDEwLCAxMSwgMjU1LCAxNjMsIDEwLCAxMSwgCisgICAgMjU1LCAxNjIsIDEwLCAxMSwgMjU1LCAxNjEsIDEwLCAxMSwgMjU1LCAxNjAsIDEwLCAxMSwgMjU1LCAxNTksIDEwLCAxMSwgCisgICAgMjU1LCAxNTgsIDEwLCAxMSwgMjU1LCAxNTcsIDEwLCAxMSwgMjU1LCAxNTYsIDEwLCAxMSwgMjU1LCAxNTUsIDEwLCAxMSwgCisgICAgMjU1LCAxNTQsIDEwLCAxMSwgMjU1LCAxNTMsIDEwLCAxMSwgMjU1LCAxNTIsIDEwLCAxMSwgMjU1LCAxNTEsIDEwLCAxMSwgCisgICAgMjU1LCAxNTAsIDEwLCAxMSwgMjU1LCAxNDksIDEwLCAxMSwgMjU1LCAxNDgsIDEwLCAxMSwgMjU1LCAxNDcsIDEwLCAxMSwgCisgICAgMjU1LCAxNDYsIDEwLCAxMSwgMjU1LCAxNDUsIDEwLCAxMSwgMjU1LCAxNDQsIDEwLCAxMSwgMjU1LCAxNDMsIDEwLCAxMSwgCisgICAgMjU1LCAxNDIsIDEwLCAxMSwgMjU1LCAxNDEsIDEwLCAxMSwgMjU1LCAxNDAsIDEwLCAxMSwgMjU1LCAxMzksIDEwLCAxMSwgCisgICAgMjU1LCAxMzgsIDEwLCAxMSwgMjU1LCAxMzcsIDEwLCAxMSwgMjU1LCAxMzYsIDEwLCAxMSwgMjU1LCAxMzUsIDEwLCAxMSwgCisgICAgMjU1LCAxMzQsIDEwLCAxMSwgMjU1LCAxMzMsIDEwLCAxMSwgMjU1LCAxMzIsIDEwLCAxMSwgMjU1LCAxMzEsIDEwLCAxMSwgCisgICAgMjU1LCAxMzAsIDEwLCAxMSwgMjU1LCAxMjksIDEwLCAxMSwgMjU1LCAxMjgsIDEwLCAxMSwgMjU1LCAxMjcsIDEwLCAxMSwgCisgICAgMjU1LCAxMjYsIDEwLCAxMSwgMjU1LCAxMjUsIDEwLCAxMSwgMjU1LCAxMjQsIDEwLCAxMSwgMjU1LCAxMjMsIDEwLCAxMSwgCisgICAgMjU1LCAxMjIsIDEwLCAxMSwgMjU1LCAxMjEsIDEwLCAxMSwgMjU1LCAxMjAsIDEwLCAxMSwgMjU1LCAxMTksIDEwLCAxMSwgCisgICAgMjU1LCAxMTgsIDEwLCAxMSwgMjU1LCAxMTcsIDEwLCAxMSwgMjU1LCAxMTYsIDEwLCAxMSwgMjU1LCAxMTUsIDEwLCAxMSwgCisgICAgMjU1LCAxMTQsIDEwLCAxMSwgMjU1LCAxMTMsIDEwLCAxMSwgMjU1LCAxMTIsIDEwLCAxMSwgMjU1LCAxMTEsIDEwLCAxMSwgCisgICAgMjU1LCAxMTAsIDEwLCAxMSwgMjU1LCAxMDksIDEwLCAxMSwgMjU1LCAxMDgsIDEwLCAxMSwgMjU1LCAxMDcsIDEwLCAxMSwgCisgICAgMjUzLCAxOTksIDEwLCAxMSwgMjUzLCAxOTcsIDEwLCAxMSwgMjUzLCAxOTUsIDEwLCAxMSwgMjUzLCAxOTMsIDEwLCAxMSwgCisgICAgMjUzLCAxOTEsIDEwLCAxMSwgMjUzLCAxOTAsIDEwLCAxMSwgMjUzLCAxODgsIDEwLCAxMSwgMjUzLCAxODYsIDEwLCAxMSwgCisgICAgMjUzLCAxODQsIDEwLCAxMSwgMjUzLCAxODIsIDEwLCAxMSwgMjUxLCAxMTcsIDEwLCAxMSwgMjUxLCAxMTYsIDEwLCAxMSwgCisgICAgMjUxLCAxMTUsIDEwLCAxMSwgMjUxLCAxMTQsIDEwLCAxMSwgMjUxLCAxMTMsIDEwLCAxMSwgMjUxLCAxMTIsIDEwLCAxMSwgCisgICAgMjUxLCAxMTEsIDEwLCAxMSwgMjUxLCAxMTAsIDEwLCAxMSwgMjUxLCAxMDksIDEwLCAxMSwgMjUxLCAxMDgsIDEwLCAxMSwgCisgICAgMjUxLCAxMDcsIDEwLCAxMSwgMjUxLCAxMDYsIDEwLCAxMSwgMjUxLCAxMDUsIDEwLCAxMSwgMjUxLCAxMDQsIDEwLCAxMSwgCisgICAgMjUxLCAxMDMsIDEwLCAxMSwgMjUxLCAxMDIsIDEwLCAxMSwgMjUxLCAxMDEsIDEwLCAxMSwgMjUxLCAxMDAsIDEwLCAxMSwgCisgICAgMjUxLCA5OSwgMTAsIDExLCAyNTEsIDk4LCAxMCwgMTEsIDI1MSwgOTcsIDEwLCAxMSwgMjUxLCA5NiwgMTAsIDExLCAyNTEsIAorICAgIDk1LCAxMCwgMTEsIDI1MSwgOTQsIDEwLCAxMSwgMjUxLCA5MywgMTAsIDExLCAyNTEsIDkyLCAxMCwgMTEsIDI1MSwgOTEsIAorICAgIDEwLCAxMSwgMjUxLCA5MCwgMTAsIDExLCAyNDksIDEyNCwgMTAsIDExLCAyNDksIDEyMywgMTAsIDExLCAyNDksIDEyMiwgCisgICAgMTAsIDExLCAyNDksIDEyMSwgMTAsIDExLCAyNDksIDEyMCwgMTAsIDExLCAyNDksIDExOSwgMTAsIDExLCAyNDksIDExOCwgCisgICAgMTAsIDExLCAyNDksIDExNywgMTAsIDExLCAyNDksIDExNiwgMTAsIDExLCAyNDksIDExNSwgMTAsIDExLCAyNDksIDExNCwgCisgICAgMTAsIDExLCAyNDksIDExMywgMTAsIDExLCAyNDksIDExMiwgMTAsIDExLCAyNDksIDExMSwgMTAsIDExLCAyNDksIDExMCwgCisgICAgMTAsIDExLCAyNDksIDEwOSwgMTAsIDExLCAyNDksIDEwOCwgMTAsIDExLCAyNDksIDEwNywgMTAsIDExLCAyNDksIDEwNiwgCisgICAgMTAsIDExLCAyNDksIDEwNSwgMTAsIDExLCAyNDksIDEwNCwgMTAsIDExLCAyNDksIDEwMywgMTAsIDExLCAyNDksIDEwMiwgCisgICAgMTAsIDExLCAyNDksIDEwMSwgMTAsIDExLCAyNDksIDEwMCwgMTAsIDExLCAyNDksIDk5LCAxMCwgMTEsIDI0OSwgOTgsIDEwLCAKKyAgICAxMSwgMjQ5LCA5NywgMTAsIDExLCAyNDksIDk2LCAxMCwgMTEsIDI0OSwgOTUsIDEwLCAxMSwgMjQ5LCA5NCwgMTAsIDExLCAKKyAgICAyNDksIDkzLCAxMCwgMTEsIDI0OSwgOTIsIDEwLCAxMSwgMjQ5LCA5MSwgMTAsIDExLCAyNDksIDkwLCAxMCwgMTEsIDI0OSwgCisgICAgODksIDEwLCAxMSwgMjQ5LCA4OCwgMTAsIDExLCAyNDksIDg3LCAxMCwgMTEsIDI0OSwgODYsIDEwLCAxMSwgMjQ5LCA4NSwgCisgICAgMTAsIDExLCAyNDksIDg0LCAxMCwgMTEsIDI0OSwgODMsIDEwLCAxMSwgMjQ5LCA4MiwgMTAsIDExLCAyNDksIDgxLCAxMCwgCisgICAgMTEsIDI0OSwgODAsIDEwLCAxMSwgMjQ5LCA3OSwgMTAsIDExLCAyNDksIDc4LCAxMCwgMTEsIDI0OSwgNzcsIDEwLCAxMSwgCisgICAgMjQ5LCA3NiwgMTAsIDExLCAyNDksIDc1LCAxMCwgMTEsIDI0OSwgNzQsIDEwLCAxMSwgMjQ5LCA3MywgMTAsIDExLCAyNDksIAorICAgIDcyLCAxMCwgMTEsIDI0OSwgNzEsIDEwLCAxMSwgMjQ5LCA3MCwgMTAsIDExLCAyNDksIDY5LCAxMCwgMTEsIDI0OSwgNjgsIAorICAgIDEwLCAxMSwgMjQ5LCA2NywgMTAsIDExLCAyNDksIDY2LCAxMCwgMTEsIDI0OSwgNjUsIDEwLCAxMSwgMjQ5LCA2NCwgMTAsIAorICAgIDExLCAyNDksIDYzLCAxMCwgMTEsIDI0OSwgNjIsIDEwLCAxMSwgMjQ5LCA2MSwgMTAsIDExLCAyNDksIDYwLCAxMCwgMTEsIAorICAgIDI0OSwgNTksIDEwLCAxMSwgMjQ5LCA1OCwgMTAsIDExLCAyNDksIDU3LCAxMCwgMTEsIDI0OSwgNTYsIDEwLCAxMSwgMjQ5LCAKKyAgICA1NSwgMTAsIDExLCAyNDksIDU0LCAxMCwgMTEsIDI0OSwgNTMsIDEwLCAxMSwgMjQ5LCA1MiwgMTAsIDExLCAyNDksIDUxLCAKKyAgICAxMCwgMTEsIDI0OSwgNTAsIDEwLCAxMSwgMjQ5LCA0OSwgMTAsIDExLCAyNDksIDQ4LCAxMCwgMTEsIDI0OSwgNDcsIDEwLCAKKyAgICAxMSwgMjQ5LCA0NiwgMTAsIDExLCAyNDksIDQ1LCAxMCwgMTEsIDI0OSwgNDQsIDEwLCAxMSwgMjQ5LCA0MywgMTAsIDExLCAKKyAgICAyNDksIDQyLCAxMCwgMTEsIDI0OSwgNDEsIDEwLCAxMSwgMjQ5LCA0MCwgMTAsIDExLCAyNDksIDM5LCAxMCwgMTEsIDI0OSwgCisgICAgMzgsIDEwLCAxMSwgMjQ5LCAzNywgMTAsIDExLCAyNDksIDM2LCAxMCwgMTEsIDI0OSwgMzUsIDEwLCAxMSwgMjQ5LCAzNCwgCisgICAgMTAsIDExLCAyNDksIDMzLCAxMCwgMTEsIDI0NiwgMTAwLCAxMCwgMTEsIDI0NiwgOTksIDEwLCAxMSwgMjQ2LCA5OCwgMTAsIAorICAgIDExLCAyNDYsIDk3LCAxMCwgMTEsIDI0NiwgOTYsIDEwLCAxMSwgMjQ2LCA5NSwgMTAsIDExLCAyNDYsIDk0LCAxMCwgMTEsIAorICAgIDI0NiwgOTMsIDEwLCAxMSwgMjQ2LCA5MiwgMTAsIDExLCAyNDYsIDkxLCAxMCwgMTEsIDI0NiwgOTAsIDEwLCAxMSwgMjQ2LCAKKyAgICA4OSwgMTAsIDExLCAyNDYsIDg4LCAxMCwgMTEsIDI0NiwgODcsIDEwLCAxMSwgMjQ2LCA4NiwgMTAsIDExLCAyNDYsIDg1LCAKKyAgICAxMCwgMTEsIDI0NiwgODQsIDEwLCAxMSwgMjQ2LCA4MywgMTAsIDExLCAyNDYsIDgyLCAxMCwgMTEsIDI0NiwgODEsIDEwLCAKKyAgICAxMSwgMjQ2LCA4MCwgMTAsIDExLCAyNDYsIDc5LCAxMCwgMTEsIDI0NiwgNzgsIDEwLCAxMSwgMjQ2LCA3NywgMTAsIDExLCAKKyAgICAyNDYsIDc2LCAxMCwgMTEsIDI0NiwgNzUsIDEwLCAxMSwgMjQ2LCA3NCwgMTAsIDExLCAyNDYsIDczLCAxMCwgMTEsIDI0NiwgCisgICAgNzIsIDEwLCAxMSwgMjQ2LCA3MSwgMTAsIDExLCAyNDYsIDcwLCAxMCwgMTEsIDI0NiwgNjksIDEwLCAxMSwgMjQ2LCA2OCwgCisgICAgMTAsIDExLCAyNDYsIDY3LCAxMCwgMTEsIDI0NiwgNjYsIDEwLCAxMSwgMjQ2LCA2NSwgMTAsIDExLCAyNDYsIDY0LCAxMCwgCisgICAgMTEsIDI0NiwgNjMsIDEwLCAxMSwgMjQ2LCA2MiwgMTAsIDExLCAyNDYsIDYxLCAxMCwgMTEsIDI0NiwgNjAsIDEwLCAxMSwgCisgICAgMjQ2LCA1OSwgMTAsIDExLCAyNDYsIDU4LCAxMCwgMTEsIDI0NiwgNTcsIDEwLCAxMSwgMjQ1LCA5NCwgMTAsIDExLCAyNDUsIAorICAgIDkzLCAxMCwgMTEsIDI0NSwgOTIsIDEwLCAxMSwgMjQ1LCA5MSwgMTAsIDExLCAyNDUsIDkwLCAxMCwgMTEsIDI0NSwgODksIAorICAgIDEwLCAxMSwgMjQ1LCA4OCwgMTAsIDExLCAyNDUsIDg3LCAxMCwgMTEsIDI0NSwgODYsIDEwLCAxMSwgMjQ1LCA4NSwgMTAsIAorICAgIDExLCAyNDUsIDg0LCAxMCwgMTEsIDI0NSwgODMsIDEwLCAxMSwgMjQ1LCA4MiwgMTAsIDExLCAyNDUsIDgxLCAxMCwgMTEsIAorICAgIDI0NSwgODAsIDEwLCAxMSwgMjQ1LCA3OSwgMTAsIDExLCAyNDUsIDc4LCAxMCwgMTEsIDI0NSwgNzcsIDEwLCAxMSwgMjQ1LCAKKyAgICA3NiwgMTAsIDExLCAyNDUsIDc1LCAxMCwgMTEsIDI0NSwgNzQsIDEwLCAxMSwgMjQ1LCA3MywgMTAsIDExLCAyNDUsIDcyLCAKKyAgICAxMCwgMTEsIDI0NSwgNzEsIDEwLCAxMSwgMjQ1LCA3MCwgMTAsIDExLCAyNDUsIDY5LCAxMCwgMTEsIDI0NSwgNjgsIDEwLCAKKyAgICAxMSwgMjQ1LCA2NywgMTAsIDExLCAyNDUsIDY2LCAxMCwgMTEsIDI0NSwgNjUsIDEwLCAxMSwgMjQ1LCA2NCwgMTAsIDExLCAKKyAgICAyNDUsIDYzLCAxMCwgMTEsIDI0NSwgNjIsIDEwLCAxMSwgMjQ1LCA2MSwgMTAsIDExLCAyNDUsIDYwLCAxMCwgMTEsIDI0NSwgCisgICAgNTksIDEwLCAxMSwgMjQ1LCA1OCwgMTAsIDExLCAyNDUsIDU3LCAxMCwgMTEsIDI0NSwgNTYsIDEwLCAxMSwgMjQ1LCA1NSwgCisgICAgMTAsIDExLCAyNDUsIDU0LCAxMCwgMTEsIDI0NSwgNTMsIDEwLCAxMSwgMjQ1LCA1MiwgMTAsIDExLCAyNDUsIDUxLCAxMCwgCisgICAgMTEsIDI0NSwgNTAsIDEwLCAxMSwgMjQ1LCA0OSwgMTAsIDExLCAyNDUsIDQ4LCAxMCwgMTEsIDI0NSwgNDcsIDEwLCAxMSwgCisgICAgMjQ1LCA0NiwgMTAsIDExLCAyNDUsIDQ1LCAxMCwgMTEsIDI0NSwgNDQsIDEwLCAxMSwgMjQ1LCA0MywgMTAsIDExLCAyNDUsIAorICAgIDQyLCAxMCwgMTEsIDI0NSwgNDEsIDEwLCAxMSwgMjQ1LCA0MCwgMTAsIDExLCAyNDUsIDM5LCAxMCwgMTEsIDI0NSwgMzgsIAorICAgIDEwLCAxMSwgMjQ1LCAzNywgMTAsIDExLCAyNDUsIDM2LCAxMCwgMTEsIDI0NSwgMzUsIDEwLCAxMSwgMjQ1LCAzNCwgMTAsIAorICAgIDExLCAyNDUsIDMzLCAxMCwgMTEsIDI0NSwgMzIsIDEwLCAxMSwgMjQ1LCAzMSwgMTAsIDExLCAyNDUsIDMwLCAxMCwgMTEsIAorICAgIDI0NCwgNDAsIDEwLCAxMSwgMjQ0LCAzOSwgMTAsIDExLCAyNDQsIDM4LCAxMCwgMTEsIDI0NCwgMzcsIDEwLCAxMSwgMjQ0LCAKKyAgICAzNiwgMTAsIDExLCAyNDQsIDM1LCAxMCwgMTEsIDI0NCwgMzQsIDEwLCAxMSwgMjQ0LCAzMywgMTAsIDExLCAyNDQsIDMyLCAKKyAgICAxMCwgMTEsIDI0NCwgMzEsIDEwLCAxMSwgMjQ0LCAzMCwgMTAsIDExLCAyNDQsIDI5LCAxMCwgMTEsIDI0NCwgMjgsIDEwLCAKKyAgICAxMSwgMjQ0LCAyNywgMTAsIDExLCAyNDQsIDI2LCAxMCwgMTEsIDI0NCwgMjUsIDEwLCAxMSwgMjQ0LCAyNCwgMTAsIDExLCAKKyAgICAyNDQsIDIzLCAxMCwgMTEsIDI0NCwgMjIsIDEwLCAxMSwgMjQ0LCAyMSwgMTAsIDExLCAyNDQsIDIwLCAxMCwgMTEsIDI0NCwgCisgICAgMTksIDEwLCAxMSwgMjQ0LCAxOCwgMTAsIDExLCAyNDQsIDE3LCAxMCwgMTEsIDI0NCwgMTYsIDEwLCAxMSwgMjQ0LCAxNSwgCisgICAgMTAsIDExLCAyNDQsIDE0LCAxMCwgMTEsIDI0NCwgMTMsIDEwLCAxMSwgMjQ0LCAxMiwgMTAsIDExLCAyNDQsIDExLCAxMCwgCisgICAgMTEsIDI0NCwgMTAsIDEwLCAxMSwgMjQ0LCA5LCAxMCwgMTEsIDI0NCwgOCwgMTAsIDExLCAyNDQsIDcsIDEwLCAxMSwgMjQ0LCAKKyAgICA2LCAxMCwgMTEsIDI0NCwgNSwgMTAsIDExLCAyNDQsIDQsIDEwLCAxMSwgMjQ0LCAzLCAxMCwgMTEsIDI0NCwgMiwgMTAsIAorICAgIDExLCAyNDQsIDEsIDEwLCAxMSwgMjQ0LCAwLCAxMCwgMTEsIDI0MywgMjU1LCAxMCwgMTEsIDI0MywgMjU0LCAxMCwgMTEsIAorICAgIDI0MywgMjUzLCAxMCwgMTEsIDI0MywgMjUyLCAxMCwgMTEsIDI0MywgMjUxLCAxMCwgMTEsIDI0MywgMjUwLCAxMCwgMTEsIAorICAgIDI0MywgMjQ5LCAxMCwgMTEsIDI0MywgMjQ4LCAxMCwgMTEsIDI0MywgMjQ3LCAxMCwgMTEsIDI0MywgMjQ2LCAxMCwgMTEsIAorICAgIDI0MywgMjQ1LCAxMCwgMTEsIDI0MywgMjQ0LCAxMCwgMTEsIDI0MywgMjQzLCAxMCwgMTEsIDI0MywgMjQyLCAxMCwgMTEsIAorICAgIDI0MywgMjQxLCAxMCwgMTEsIDI0MywgMjQwLCAxMCwgMTEsIDI0MywgMjM5LCAxMCwgMTEsIDI0MywgMjM4LCAxMCwgMTEsIAorICAgIDI0MywgMjM3LCAxMCwgMTEsIDI0MywgMjM2LCAxMCwgMTEsIDI0MywgMjM1LCAxMCwgMTEsIDI0MywgMjM0LCAxMCwgMTEsIAorICAgIDI0MywgMjMzLCAxMCwgMTEsIDI0MiwgMTYwLCAxMCwgMTEsIDI0MiwgMTU5LCAxMCwgMTEsIDI0MiwgMTU4LCAxMCwgMTEsIAorICAgIDI0MiwgMTU3LCAxMCwgMTEsIDI0MiwgMTU2LCAxMCwgMTEsIDI0MiwgMTU1LCAxMCwgMTEsIDI0MiwgMTU0LCAxMCwgMTEsIAorICAgIDI0MiwgMTUzLCAxMCwgMTEsIDI0MiwgMTUyLCAxMCwgMTEsIDI0MCwgMjQ3LCAxMCwgMTEsIDI0MCwgMjQ2LCAxMCwgMTEsIAorICAgIDI0MCwgMjQ1LCAxMCwgMTEsIDI0MCwgMjQ0LCAxMCwgMTEsIDI0MCwgMjQzLCAxMCwgMTEsIDI0MCwgMjQyLCAxMCwgMTEsIAorICAgIDI0MCwgMjQxLCAxMCwgMTEsIDI0MCwgMjQwLCAxMCwgMTEsIDI0MCwgMjM5LCAxMCwgMTEsIDI0MCwgMjM4LCAxMCwgMTEsIAorICAgIDI0MCwgMjM3LCAxMCwgMTEsIDI0MCwgMjM2LCAxMCwgMTEsIDI0MCwgMjM1LCAxMCwgMTEsIDI0MCwgMjM0LCAxMCwgMTEsIAorICAgIDI0MCwgMjMzLCAxMCwgMTEsIDI0MCwgMjMyLCAxMCwgMTEsIDI0MCwgMjMxLCAxMCwgMTEsIDI0MCwgMjMwLCAxMCwgMTEsIAorICAgIDI0MCwgMjI5LCAxMCwgMTEsIDIzNSwgMTQwLCAxMCwgMTEsIDIzNSwgMTM5LCAxMCwgMTEsIDIzNSwgMTM4LCAxMCwgMTEsIAorICAgIDIzNSwgMTM3LCAxMCwgMTEsIDIzNSwgMTM2LCAxMCwgMTEsIDIzNSwgMTM1LCAxMCwgMTEsIDIzNSwgMTM0LCAxMCwgMTEsIAorICAgIDIzNSwgMTMzLCAxMCwgMTEsIDIzNCwgMTAsIDEwLCAxMSwgMjM0LCA5LCAxMCwgMTEsIDIzNCwgOCwgMTAsIDExLCAyMzQsIAorICAgIDcsIDEwLCAxMSwgMjM0LCA2LCAxMCwgMTEsIDIzNCwgNSwgMTAsIDExLCAyMzQsIDQsIDEwLCAxMSwgMjM0LCAzLCAxMCwgCisgICAgMTEsIDIzNCwgMiwgMTAsIDExLCAyMzQsIDEsIDEwLCAxMSwgMjMyLCAxODIsIDEwLCAxMSwgMjMyLCAxODEsIDEwLCAxMSwgCisgICAgMjMyLCAxODAsIDEwLCAxMSwgMjMyLCAxNzksIDEwLCAxMSwgMjMyLCAxNzgsIDEwLCAxMSwgMjMyLCAxNzcsIDEwLCAxMSwgCisgICAgMjMyLCAxNzYsIDEwLCAxMSwgMjMyLCAxNzUsIDEwLCAxMSwgMjMyLCAxNzQsIDEwLCAxMSwgMjMyLCAxNzMsIDEwLCAxMSwgCisgICAgMjMyLCAxNzIsIDEwLCAxMSwgMjMyLCAxNzEsIDEwLCAxMSwgMjMyLCAxNzAsIDEwLCAxMSwgMjMyLCAxNjksIDEwLCAxMSwgCisgICAgMjMyLCAxNjgsIDEwLCAxMSwgMjMyLCAxNjcsIDEwLCAxMSwgMjMyLCAxNjYsIDEwLCAxMSwgMjMyLCAxNjUsIDEwLCAxMSwgCisgICAgMjMyLCAxNjQsIDEwLCAxMSwgMjMyLCAxNjMsIDEwLCAxMSwgMjMyLCAxNjIsIDEwLCAxMSwgMjMyLCAxNjEsIDEwLCAxMSwgCisgICAgMjMyLCAxNjAsIDEwLCAxMSwgMjMyLCAxNTksIDEwLCAxMSwgMjMyLCAxNTgsIDEwLCAxMSwgMjMyLCAxNTcsIDEwLCAxMSwgCisgICAgMjMyLCAxNTYsIDEwLCAxMSwgMjMyLCAxNTUsIDEwLCAxMSwgMjMyLCAxNTQsIDEwLCAxMSwgMjMyLCAxNTMsIDEwLCAxMSwgCisgICAgMjMyLCAxNTIsIDEwLCAxMSwgMjMyLCAxNTEsIDEwLCAxMSwgMjMyLCAxNTAsIDEwLCAxMSwgMjMyLCAxNDksIDEwLCAxMSwgCisgICAgMjMyLCAxNDgsIDEwLCAxMSwgMjMyLCAxNDcsIDEwLCAxMSwgMjMyLCAxNDYsIDEwLCAxMSwgMjMyLCAxNDUsIDEwLCAxMSwgCisgICAgMjMyLCAxNDQsIDEwLCAxMSwgMjMyLCAxNDMsIDEwLCAxMSwgMjMyLCAxNDIsIDEwLCAxMSwgMjMyLCAxNDEsIDEwLCAxMSwgCisgICAgMjMyLCAxNDAsIDEwLCAxMSwgMjMyLCAxMzksIDEwLCAxMSwgMjMyLCAxMzgsIDEwLCAxMSwgMjMyLCAxMzcsIDEwLCAxMSwgCisgICAgMjMyLCAxMzYsIDEwLCAxMSwgMjMyLCAxMzUsIDEwLCAxMSwgMjMyLCAxMzQsIDEwLCAxMSwgMjMyLCAxMzMsIDEwLCAxMSwgCisgICAgMjMyLCAxMzIsIDEwLCAxMSwgMjMyLCAxMzEsIDEwLCAxMSwgMjMyLCAxMzAsIDEwLCAxMSwgMjMyLCAxMjksIDEwLCAxMSwgCisgICAgMjMyLCAxMjgsIDEwLCAxMSwgMjMyLCAxMjcsIDEwLCAxMSwgMjMyLCAxMjYsIDEwLCAxMSwgMjMyLCAxMjUsIDEwLCAxMSwgCisgICAgMjMyLCAxMjQsIDEwLCAxMSwgMjMyLCAxMjMsIDEwLCAxMSwgMjMyLCAxMjIsIDEwLCAxMSwgMjMyLCAxMjEsIDEwLCAxMSwgCisgICAgMjMyLCAxMjAsIDEwLCAxMSwgMjMyLCAxMTksIDEwLCAxMSwgMjMyLCAxMTgsIDEwLCAxMSwgMjMyLCAxMTcsIDEwLCAxMSwgCisgICAgMjMwLCAxNjQsIDEwLCAxMSwgMjMwLCAxNjMsIDEwLCAxMSwgMjMwLCAxNjIsIDEwLCAxMSwgMjMwLCAxNjEsIDEwLCAxMSwgCisgICAgMjMwLCAxNjAsIDEwLCAxMSwgMjMwLCAxNTksIDEwLCAxMSwgMjMwLCAxNTgsIDEwLCAxMSwgMjMwLCAxNTcsIDEwLCAxMSwgCisgICAgMjMwLCAxNTYsIDEwLCAxMSwgMjMwLCAxNTUsIDEwLCAxMSwgMjMwLCAxNTQsIDEwLCAxMSwgMjMwLCAxNTMsIDEwLCAxMSwgCisgICAgMjMwLCAxNTIsIDEwLCAxMSwgMjMwLCAxNTEsIDEwLCAxMSwgMjMwLCAxNTAsIDEwLCAxMSwgMjMwLCAxNDksIDEwLCAxMSwgCisgICAgMjMwLCAxNDgsIDEwLCAxMSwgMjMwLCAxNDcsIDEwLCAxMSwgMjMwLCAxNDYsIDEwLCAxMSwgMjMwLCAxNDUsIDEwLCAxMSwgCisgICAgMjMwLCAxNDQsIDEwLCAxMSwgMjMwLCAxNDMsIDEwLCAxMSwgMjMwLCAxNDIsIDEwLCAxMSwgMjMwLCAxNDEsIDEwLCAxMSwgCisgICAgMjMwLCAxNDAsIDEwLCAxMSwgMjMwLCAxMzksIDEwLCAxMSwgMjMwLCAxMzgsIDEwLCAxMSwgMjMwLCAxMzcsIDEwLCAxMSwgCisgICAgMjMwLCAxMzYsIDEwLCAxMSwgMjMwLCAxMzUsIDEwLCAxMSwgMjMwLCAxMzQsIDEwLCAxMSwgMjMwLCAxMzMsIDEwLCAxMSwgCisgICAgMjMwLCAxMzIsIDEwLCAxMSwgMjMwLCAxMzEsIDEwLCAxMSwgMjMwLCAxMzAsIDEwLCAxMSwgMjMwLCAxMjksIDEwLCAxMSwgCisgICAgMjMwLCAxMjgsIDEwLCAxMSwgMjMwLCAxMjcsIDEwLCAxMSwgMjMwLCAxMjYsIDEwLCAxMSwgMjMwLCAxMjUsIDEwLCAxMSwgCisgICAgMjMwLCAxMjQsIDEwLCAxMSwgMjMwLCAxMjMsIDEwLCAxMSwgMjMwLCAxMjIsIDEwLCAxMSwgMjMwLCAxMjEsIDEwLCAxMSwgCisgICAgMjMwLCAxMjAsIDEwLCAxMSwgMjMwLCAxMTksIDEwLCAxMSwgMjMwLCAxMTgsIDEwLCAxMSwgMjMwLCAxMTcsIDEwLCAxMSwgCisgICAgMjMwLCAxMTYsIDEwLCAxMSwgMjI5LCAzMCwgMTAsIDExLCAyMjksIDI5LCAxMCwgMTEsIDIyOSwgMjgsIDEwLCAxMSwgMjI5LCAKKyAgICAyNywgMTAsIDExLCAyMjksIDI2LCAxMCwgMTEsIDIyOSwgMjUsIDEwLCAxMSwgMjI5LCAyNCwgMTAsIDExLCAyMjksIDIzLCAKKyAgICAxMCwgMTEsIDIyOSwgMjIsIDEwLCAxMSwgMjI5LCAyMSwgMTAsIDExLCAyMjksIDIwLCAxMCwgMTEsIDIyOSwgMTksIDEwLCAKKyAgICAxMSwgMjI5LCAxOCwgMTAsIDExLCAyMjksIDE3LCAxMCwgMTEsIDIyOSwgMTYsIDEwLCAxMSwgMjI5LCAxNSwgMTAsIDExLCAKKyAgICAyMjksIDE0LCAxMCwgMTEsIDIyOSwgMTMsIDEwLCAxMSwgMjI5LCAxMiwgMTAsIDExLCAyMjksIDExLCAxMCwgMTEsIDIyOSwgCisgICAgMTAsIDEwLCAxMSwgMjI5LCA5LCAxMCwgMTEsIDIyOCwgMTM0LCAxMCwgMTEsIDIyOCwgMTMzLCAxMCwgMTEsIDIyOCwgMTMyLCAKKyAgICAxMCwgMTEsIDIyOCwgMTMxLCAxMCwgMTEsIDIyOCwgMTMwLCAxMCwgMTEsIDIyOCwgMTI5LCAxMCwgMTEsIDIyOCwgMTI4LCAKKyAgICAxMCwgMTEsIDIyOCwgMTI3LCAxMCwgMTEsIDIyOCwgMTI2LCAxMCwgMTEsIDIyOCwgMTI1LCAxMCwgMTEsIDIyOCwgMTI0LCAKKyAgICAxMCwgMTEsIDIyOCwgMTIzLCAxMCwgMTEsIDIyOCwgMTIyLCAxMCwgMTEsIDIyOCwgMTIxLCAxMCwgMTEsIDIyOCwgMTIwLCAKKyAgICAxMCwgMTEsIDIyOCwgMTE5LCAxMCwgMTEsIDIyOCwgMTE4LCAxMCwgMTEsIDIyOCwgMTE3LCAxMCwgMTEsIDIyOCwgMTE2LCAKKyAgICAxMCwgMTEsIDIyOCwgMTE1LCAxMCwgMTEsIDIyOCwgMTE0LCAxMCwgMTEsIDIyOCwgMTEzLCAxMCwgMTEsIDIyOCwgMTEyLCAKKyAgICAxMCwgMTEsIDIyOCwgMTExLCAxMCwgMTEsIDIyOCwgMTEwLCAxMCwgMTEsIDIyOCwgMTA5LCAxMCwgMTEsIDIyNywgMjMzLCAKKyAgICAxMCwgMTEsIDIyNywgMjMyLCAxMCwgMTEsIDIyNywgMjMxLCAxMCwgMTEsIDIyNywgMjMwLCAxMCwgMTEsIDIyNywgMjI5LCAKKyAgICAxMCwgMTEsIDIyNywgMjI4LCAxMCwgMTEsIDIyNywgMjI3LCAxMCwgMTEsIDIyNywgMjI2LCAxMCwgMTEsIDIyNywgMjI1LCAKKyAgICAxMCwgMTEsIDIyNywgMjI0LCAxMCwgMTEsIDIyNywgMjIzLCAxMCwgMTEsIDIyNywgMjIyLCAxMCwgMTEsIDIyNywgMjIxLCAKKyAgICAxMCwgMTEsIDIyNywgMjIwLCAxMCwgMTEsIDIyNywgMjE5LCAxMCwgMTEsIDIyNywgMjE4LCAxMCwgMTEsIDIyNywgMjE3LCAKKyAgICAxMCwgMTEsIDIyNywgMjE2LCAxMCwgMTEsIDIyNywgMjE1LCAxMCwgMTEsIDIyNywgMjE0LCAxMCwgMTEsIDIyNywgMjEzLCAKKyAgICAxMCwgMTEsIDIyNywgMjEyLCAxMCwgMTEsIDIyNywgMjExLCAxMCwgMTEsIDIyNywgMjEwLCAxMCwgMTEsIDIyNywgMjA5LCAKKyAgICAxMCwgMTEsIDIyNywgMjA4LCAxMCwgMTEsIDIyNywgMjA3LCAxMCwgMTEsIDIyNywgMjA2LCAxMCwgMTEsIDIyNywgMjA1LCAKKyAgICAxMCwgMTEsIDIyNywgMjA0LCAxMCwgMTEsIDIyNywgMjAzLCAxMCwgMTEsIDIyNywgMjAyLCAxMCwgMTEsIDIyNywgMjAxLCAKKyAgICAxMCwgMTEsIDIyNywgMjAwLCAxMCwgMTEsIDIyNywgMTk5LCAxMCwgMTEsIDIyNywgMTk4LCAxMCwgMTEsIDIyNywgMTk3LCAKICAgICAxMCwgMTEsIDIyNywgMTk2LCAxMCwgMTEsIDIyNywgMTk1LCAxMCwgMTEsIDIyNywgMTk0LCAxMCwgMTEsIDIyNywgMTkzLCAKICAgICAxMCwgMTEsIDIyNywgMTkyLCAxMCwgMTEsIDIyNywgMTkxLCAxMCwgMTEsIDIyNywgMTkwLCAxMCwgMTEsIDIyNywgMTg5LCAKICAgICAxMCwgMTEsIDIyNywgMTg4LCAxMCwgMTEsIDIyNywgMTg3LCAxMCwgMTEsIDIyNywgMTg2LCAxMCwgMTEsIDIyNywgMTg1LCAKQEAgLTExNjc4LDE0NDggKzExNzIxLDE1NjMgQEAKICAgICAxMCwgMTEsIDIyNywgMTcyLCAxMCwgMTEsIDIyNywgMTcxLCAxMCwgMTEsIDIyNywgMTcwLCAxMCwgMTEsIDIyNywgMTY5LCAKICAgICAxMCwgMTEsIDIyNywgMTY4LCAxMCwgMTEsIDIyNywgMTY3LCAxMCwgMTEsIDIyNywgMTY2LCAxMCwgMTEsIDIyNywgMTY1LCAKICAgICAxMCwgMTEsIDIyNywgMTY0LCAxMCwgMTEsIDIyNywgMTYzLCAxMCwgMTEsIDIyNywgMTYyLCAxMCwgMTEsIDIyNywgMTYxLCAKLSAgICAxMCwgMTEsIDIyNywgMTYwLCAxMCwgMTEsIDIyNywgMTU5LCAxMCwgMTEsIDIyNywgMTU4LCAxMCwgMTEsIDIyNywgMTU3LCAKLSAgICAxMCwgMTEsIDIyNywgMTU2LCAxMCwgMTEsIDIyNywgMTU1LCAxMCwgMTEsIDIyNywgMTU0LCAxMCwgMTEsIDIyNywgMTUzLCAKLSAgICAxMCwgMTEsIDIyNywgMTUyLCAxMCwgMTEsIDIyNywgMTUxLCAxMCwgMTEsIDIyNywgMTUwLCAxMCwgMTEsIDIyNywgMTQ5LCAKLSAgICAxMCwgMTEsIDIyNywgMTQ4LCAxMCwgMTEsIDIyNywgMTQ3LCAxMCwgMTEsIDIyNywgMTQ2LCAxMCwgMTEsIDIyNywgMTQ1LCAKLSAgICAxMCwgMTEsIDIyNywgMTQ0LCAxMCwgMTEsIDIyNywgMTQzLCAxMCwgMTEsIDIyNywgMTQyLCAxMCwgMTEsIDIyNywgMTQxLCAKLSAgICAxMCwgMTEsIDIyNywgMTQwLCAxMCwgMTEsIDIyNywgMTM5LCAxMCwgMTEsIDIyNywgMTM4LCAxMCwgMTEsIDIyNywgMTM3LCAKLSAgICAxMCwgMTEsIDIyNywgMTM2LCAxMCwgMTEsIDIyNywgMTM1LCAxMCwgMTEsIDIyNywgMTM0LCAxMCwgMTEsIDIyNywgMTMzLCAKLSAgICAxMCwgMTEsIDIyNywgMTMyLCAxMCwgMTEsIDIyNywgMTMxLCAxMCwgMTEsIDIyNywgMTMwLCAxMCwgMTEsIDIyNywgMTI5LCAKLSAgICAxMCwgMTEsIDIyNywgMTI4LCAxMCwgMTEsIDIyNywgMTI3LCAxMCwgMTEsIDIyNywgMTI2LCAxMCwgMTEsIDIyNywgMTI1LCAKLSAgICAxMCwgMTEsIDIyNywgMTI0LCAxMCwgMTEsIDIyNywgMTIzLCAxMCwgMTEsIDIyNywgMTIyLCAxMCwgMTEsIDIyNiwgMjI4LCAKLSAgICAxMCwgMTEsIDIyNiwgMjI3LCAxMCwgMTEsIDIyNiwgMjI2LCAxMCwgMTEsIDIyNiwgMjI1LCAxMCwgMTEsIDIyNiwgMjI0LCAKLSAgICAxMCwgMTEsIDIyNiwgMjIzLCAxMCwgMTEsIDIyNiwgMjIyLCAxMCwgMTEsIDIyNiwgMjIxLCAxMCwgMTEsIDIyNiwgMjIwLCAKLSAgICAxMCwgMTEsIDIyNiwgMjE5LCAxMCwgMTEsIDIyNiwgMjE4LCAxMCwgMTEsIDIyNiwgMjE3LCAxMCwgMTEsIDIyNiwgMjE2LCAKLSAgICAxMCwgMTEsIDIyNCwgMjM5LCAxMCwgMTEsIDIyNCwgMjM4LCAxMCwgMTEsIDIyNCwgMjM3LCAxMCwgMTEsIDIyNCwgMjM2LCAKLSAgICAxMCwgMTEsIDIyNCwgMjM1LCAxMCwgMTEsIDIyNCwgMjM0LCAxMCwgMTEsIDIyNCwgMjMzLCAxMCwgMTEsIDIyNCwgMTExLCAKLSAgICAxMCwgMTEsIDIyNCwgMTEwLCAxMCwgMTEsIDIyNCwgMTA5LCAxMCwgMTEsIDIyNCwgMTA4LCAxMCwgMTEsIDIyNCwgMTA3LCAKLSAgICAxMCwgMTEsIDIyNCwgMTA2LCAxMCwgMTEsIDIyNCwgMTA1LCAxMCwgMTEsIDIyNCwgMTA0LCAxMCwgMTEsIDIyNCwgMTAzLCAKLSAgICAxMCwgMTEsIDIyNCwgMTAyLCAxMCwgMTEsIDIyNCwgMTAxLCAxMCwgMTEsIDIyNCwgMTAwLCAxMCwgMTEsIDIyNCwgOTksIAotICAgIDEwLCAxMSwgMjI0LCA5OCwgMTAsIDExLCAyMjQsIDk3LCAxMCwgMTEsIDIyNCwgOTYsIDEwLCAxMSwgMjI0LCA5NSwgMTAsIAotICAgIDExLCAyMjQsIDk0LCAxMCwgMTEsIDIyNCwgOTMsIDEwLCAxMSwgMjI0LCA5MiwgMTAsIDExLCAyMjQsIDkxLCAxMCwgMTEsIAotICAgIDIyNCwgOTAsIDEwLCAxMSwgMjI0LCA4OSwgMTAsIDExLCAyMjQsIDg4LCAxMCwgMTEsIDIyNCwgODcsIDEwLCAxMSwgMjI0LCAKLSAgICA4NiwgMTAsIDExLCAyMjQsIDg1LCAxMCwgMTEsIDIyNCwgODQsIDEwLCAxMSwgMjI0LCA4MywgMTAsIDExLCAyMjQsIDgyLCAKLSAgICAxMCwgMTEsIDIyNCwgODEsIDEwLCAxMSwgMjI0LCA4MCwgMTAsIDExLCAyMjQsIDc5LCAxMCwgMTEsIDIyNCwgNzgsIDEwLCAKLSAgICAxMSwgMjIzLCAxLCAxMCwgMTEsIDIyMywgMCwgMTAsIDExLCAyMjIsIDI1NSwgMTAsIDExLCAyMjIsIDI1NCwgMTAsIDExLCAKLSAgICAyMjIsIDI1MywgMTAsIDExLCAyMjIsIDI1MiwgMTAsIDExLCAyMjIsIDI1MSwgMTAsIDExLCAyMjIsIDI1MCwgMTAsIDExLCAKLSAgICAyMjIsIDI0OSwgMTAsIDExLCAyMjIsIDI0OCwgMTAsIDExLCAyMjIsIDI0NywgMTAsIDExLCAyMjIsIDI0NiwgMTAsIDExLCAKLSAgICAyMjIsIDI0NSwgMTAsIDExLCAyMjIsIDI0NCwgMTAsIDExLCAyMjIsIDI0MywgMTAsIDExLCAyMjIsIDI0MiwgMTAsIDExLCAKLSAgICAyMjIsIDI0MSwgMTAsIDExLCAyMjIsIDI0MCwgMTAsIDExLCAyMjIsIDIzOSwgMTAsIDExLCAyMjIsIDIzOCwgMTAsIDExLCAKLSAgICAyMjIsIDIzNywgMTAsIDExLCAyMjIsIDIzNiwgMTAsIDExLCAyMjIsIDIzNSwgMTAsIDExLCAyMjIsIDIzNCwgMTAsIDExLCAKLSAgICAyMjIsIDIzMywgMTAsIDExLCAyMjIsIDIzMiwgMTAsIDExLCAyMjIsIDIzMSwgMTAsIDExLCAyMjIsIDIzMCwgMTAsIDExLCAKLSAgICAyMjIsIDIyOSwgMTAsIDExLCAyMjIsIDIyOCwgMTAsIDExLCAyMjIsIDIyNywgMTAsIDExLCAyMjIsIDIyNiwgMTAsIDExLCAKLSAgICAyMjIsIDIyNSwgMTAsIDExLCAyMjIsIDIyNCwgMTAsIDExLCAyMjIsIDIyMywgMTAsIDExLCAyMjIsIDIyMiwgMTAsIDExLCAKLSAgICAyMjIsIDIyMSwgMTAsIDExLCAyMjIsIDIyMCwgMTAsIDExLCAyMjIsIDIxOSwgMTAsIDExLCAyMjIsIDIxOCwgMTAsIDExLCAKLSAgICAyMjIsIDIxNywgMTAsIDExLCAyMjIsIDIxNiwgMTAsIDExLCAyMjIsIDIxNSwgMTAsIDExLCAyMjIsIDIxNCwgMTAsIDExLCAKLSAgICAyMjIsIDIxMywgMTAsIDExLCAyMjIsIDIxMiwgMTAsIDExLCAyMjIsIDIxMSwgMTAsIDExLCAyMjIsIDIxMCwgMTAsIDExLCAKLSAgICAyMjIsIDIwOSwgMTAsIDExLCAyMjIsIDIwOCwgMTAsIDExLCAyMjIsIDIwNywgMTAsIDExLCAyMjIsIDIwNiwgMTAsIDExLCAKLSAgICAyMjIsIDIwNSwgMTAsIDExLCAyMjIsIDIwNCwgMTAsIDExLCAyMTgsIDk3LCAxMCwgMTEsIDIxOCwgOTYsIDEwLCAxMSwgCi0gICAgMjE4LCA5NSwgMTAsIDExLCAyMTgsIDk0LCAxMCwgMTEsIDIxOCwgOTMsIDEwLCAxMSwgMjE4LCA5MiwgMTAsIDExLCAyMTgsIAotICAgIDkxLCAxMCwgMTEsIDIxOCwgOTAsIDEwLCAxMSwgMjE4LCA4OSwgMTAsIDExLCAyMTgsIDg4LCAxMCwgMTEsIDIxOCwgODcsIAotICAgIDEwLCAxMSwgMjE4LCA4NiwgMTAsIDExLCAyMTgsIDg1LCAxMCwgMTEsIDIxOCwgODQsIDEwLCAxMSwgMjE4LCA4MywgMTAsIAotICAgIDExLCAyMTgsIDgyLCAxMCwgMTEsIDIxOCwgODEsIDEwLCAxMSwgMjE4LCA4MCwgMTAsIDExLCAyMTgsIDc5LCAxMCwgMTEsIAotICAgIDIxOCwgNzgsIDEwLCAxMSwgMjE4LCA3NywgMTAsIDExLCAyMTgsIDc2LCAxMCwgMTEsIDIxOCwgNzUsIDEwLCAxMSwgMjE4LCAKLSAgICA3NCwgMTAsIDExLCAyMTgsIDczLCAxMCwgMTEsIDIxOCwgNzIsIDEwLCAxMSwgMjE4LCA3MSwgMTAsIDExLCAyMTgsIDcwLCAKLSAgICAxMCwgMTEsIDIxOCwgNjksIDEwLCAxMSwgMjE4LCA2OCwgMTAsIDExLCAyMTgsIDY3LCAxMCwgMTEsIDIxOCwgNjYsIDEwLCAKLSAgICAxMSwgMjE4LCA2NSwgMTAsIDExLCAyMTgsIDY0LCAxMCwgMTEsIDIxOCwgNjMsIDEwLCAxMSwgMjE4LCA2MiwgMTAsIDExLCAKLSAgICAyMTgsIDYxLCAxMCwgMTEsIDIxOCwgNjAsIDEwLCAxMSwgMjE4LCA1OSwgMTAsIDExLCAyMTgsIDU4LCAxMCwgMTEsIDIxOCwgCi0gICAgNTcsIDEwLCAxMSwgMjE4LCA1NiwgMTAsIDExLCAyMTgsIDU1LCAxMCwgMTEsIDIxOCwgNTQsIDEwLCAxMSwgMjE1LCAyNDUsIAotICAgIDEwLCAxMSwgMjE1LCAyNDQsIDEwLCAxMSwgMjE1LCAyNDMsIDEwLCAxMSwgMjE1LCAyNDIsIDEwLCAxMSwgMjE1LCAyNDEsIAotICAgIDEwLCAxMSwgMjE1LCAyNDAsIDEwLCAxMSwgMjE1LCAyMzksIDEwLCAxMSwgMjE1LCAyMzgsIDEwLCAxMSwgMjE1LCAyMzcsIAotICAgIDEwLCAxMSwgMjE1LCAyMzYsIDEwLCAxMSwgMjE1LCAyMzUsIDEwLCAxMSwgMjE1LCAyMzQsIDEwLCAxMSwgMjE1LCAyMzMsIAotICAgIDEwLCAxMSwgMjE1LCAyMzIsIDEwLCAxMSwgMjE1LCAyMzEsIDEwLCAxMSwgMjE1LCAyMzAsIDEwLCAxMSwgMjE1LCAyMjksIAotICAgIDEwLCAxMSwgMjE1LCAyMjgsIDEwLCAxMSwgMjE1LCAyMjcsIDEwLCAxMSwgMjE1LCAyMjYsIDEwLCAxMSwgMjE1LCAyMjUsIAotICAgIDEwLCAxMSwgMjE1LCAyMjQsIDEwLCAxMSwgMjE1LCAyMjMsIDEwLCAxMSwgMjE1LCAyMjIsIDEwLCAxMSwgMjE1LCAyMjEsIAotICAgIDEwLCAxMSwgMjE1LCAyMjAsIDEwLCAxMSwgMjE1LCAyMTksIDEwLCAxMSwgMjE1LCAyMTgsIDEwLCAxMSwgMjE1LCAyMTcsIAotICAgIDEwLCAxMSwgMjE1LCAyMTYsIDEwLCAxMSwgMjE1LCAyMTUsIDEwLCAxMSwgMjE1LCAyMTQsIDEwLCAxMSwgMjE1LCAyMTMsIAotICAgIDEwLCAxMSwgMjE1LCAyMTIsIDEwLCAxMSwgMjE1LCAyMTEsIDEwLCAxMSwgMjE1LCAyMTAsIDEwLCAxMSwgMjE1LCAyMDksIAotICAgIDEwLCAxMSwgMjE1LCAyMDgsIDEwLCAxMSwgMjE1LCAyMDcsIDEwLCAxMSwgMjE1LCAyMDYsIDEwLCAxMSwgMjE1LCAyMDUsIAotICAgIDEwLCAxMSwgMjE1LCAyMDQsIDEwLCAxMSwgMjE1LCAyMDMsIDEwLCAxMSwgMjE1LCAyMDIsIDEwLCAxMSwgMjE1LCAyMDEsIAotICAgIDEwLCAxMSwgMjE1LCAyMDAsIDEwLCAxMSwgMjE1LCAxOTksIDEwLCAxMSwgMjE1LCA3OCwgMTAsIDExLCAyMTUsIDc3LCAxMCwgCi0gICAgMTEsIDIxNSwgNzYsIDEwLCAxMSwgMjE1LCA3NSwgMTAsIDExLCAyMTUsIDc0LCAxMCwgMTEsIDIxNSwgNzMsIDEwLCAxMSwgCi0gICAgMjE1LCA3MiwgMTAsIDExLCAyMTUsIDcxLCAxMCwgMTEsIDIxNSwgNzAsIDEwLCAxMSwgMjE1LCA2OSwgMTAsIDExLCAyMTUsIAotICAgIDY4LCAxMCwgMTEsIDIxNSwgNjcsIDEwLCAxMSwgMjE1LCA2NiwgMTAsIDExLCAyMTUsIDY1LCAxMCwgMTEsIDIxNSwgNjQsIAotICAgIDEwLCAxMSwgMjE1LCA2MywgMTAsIDExLCAyMTUsIDYyLCAxMCwgMTEsIDIxNSwgNjEsIDEwLCAxMSwgMjE1LCA2MCwgMTAsIAotICAgIDExLCAyMTUsIDU5LCAxMCwgMTEsIDIxNSwgNTgsIDEwLCAxMSwgMjE1LCA1NywgMTAsIDExLCAyMTUsIDU2LCAxMCwgMTEsIAotICAgIDIxNSwgNTUsIDEwLCAxMSwgMjE1LCA1NCwgMTAsIDExLCAyMTUsIDUzLCAxMCwgMTEsIDIxNSwgNTIsIDEwLCAxMSwgMjE1LCAKLSAgICA1MSwgMTAsIDExLCAyMTUsIDUwLCAxMCwgMTEsIDIxNSwgNDksIDEwLCAxMSwgMjE1LCA0OCwgMTAsIDExLCAyMTUsIDQ3LCAKLSAgICAxMCwgMTEsIDIxNSwgNDYsIDEwLCAxMSwgMjE1LCA0NSwgMTAsIDExLCAyMTUsIDQ0LCAxMCwgMTEsIDIxNSwgNDMsIDEwLCAKLSAgICAxMSwgMjE1LCA0MiwgMTAsIDExLCAyMTUsIDQxLCAxMCwgMTEsIDIxNSwgNDAsIDEwLCAxMSwgMjE1LCAzOSwgMTAsIDExLCAKLSAgICAyMTUsIDM4LCAxMCwgMTEsIDIxNSwgMzcsIDEwLCAxMSwgMjE1LCAzNiwgMTAsIDExLCAyMTUsIDM1LCAxMCwgMTEsIDIxNSwgCi0gICAgMzQsIDEwLCAxMSwgMjE1LCAzMywgMTAsIDExLCAyMTUsIDMyLCAxMCwgMTEsIDIxNSwgMzEsIDEwLCAxMSwgMjE1LCAzMCwgCi0gICAgMTAsIDExLCAyMTUsIDI5LCAxMCwgMTEsIDIxNSwgMjgsIDEwLCAxMSwgMjE1LCAyNywgMTAsIDExLCAyMTUsIDI2LCAxMCwgCi0gICAgMTEsIDIxNSwgMjUsIDEwLCAxMSwgMjE1LCAyNCwgMTAsIDExLCAyMTUsIDIzLCAxMCwgMTEsIDIxNSwgMjIsIDEwLCAxMSwgCi0gICAgMjE1LCAyMSwgMTAsIDExLCAyMTUsIDIwLCAxMCwgMTEsIDIxNSwgMTksIDEwLCAxMSwgMjE1LCAxOCwgMTAsIDExLCAyMTUsIAotICAgIDE3LCAxMCwgMTEsIDIxNSwgMTYsIDEwLCAxMSwgMjE1LCAxNSwgMTAsIDExLCAyMTUsIDE0LCAxMCwgMTEsIDIxNSwgMTMsIAotICAgIDEwLCAxMSwgMjE1LCAxMiwgMTAsIDExLCAyMTUsIDExLCAxMCwgMTEsIDIxNSwgMTAsIDEwLCAxMSwgMjE1LCA5LCAxMCwgCi0gICAgMTEsIDIxNSwgOCwgMTAsIDExLCAyMTUsIDcsIDEwLCAxMSwgMjE1LCA2LCAxMCwgMTEsIDIxNSwgNSwgMTAsIDExLCAyMTUsIAotICAgIDQsIDEwLCAxMSwgMjE1LCAzLCAxMCwgMTEsIDIxNSwgMiwgMTAsIDExLCAyMTQsIDgxLCAxMCwgMTEsIDIxNCwgODAsIDEwLCAKLSAgICAxMSwgMjE0LCA3OSwgMTAsIDExLCAyMTQsIDc4LCAxMCwgMTEsIDIxNCwgNzcsIDEwLCAxMSwgMjE0LCA3NiwgMTAsIDExLCAKLSAgICAyMTQsIDc1LCAxMCwgMTEsIDIxNCwgNzQsIDEwLCAxMSwgMjE0LCA3MywgMTAsIDExLCAyMTQsIDcyLCAxMCwgMTEsIDIxNCwgCi0gICAgNzEsIDEwLCAxMSwgMjE0LCA3MCwgMTAsIDExLCAyMTQsIDY5LCAxMCwgMTEsIDIxNCwgNjgsIDEwLCAxMSwgMjE0LCA2NywgCi0gICAgMTAsIDExLCAyMTQsIDY2LCAxMCwgMTEsIDIxNCwgNjUsIDEwLCAxMSwgMjE0LCA2NCwgMTAsIDExLCAyMTQsIDYzLCAxMCwgCi0gICAgMTEsIDIxNCwgNjIsIDEwLCAxMSwgMjE0LCA2MSwgMTAsIDExLCAyMTQsIDYwLCAxMCwgMTEsIDIxNCwgNTksIDEwLCAxMSwgCi0gICAgMjE0LCA1OCwgMTAsIDExLCAyMTQsIDU3LCAxMCwgMTEsIDIxNCwgNTYsIDEwLCAxMSwgMjE0LCA1NSwgMTAsIDExLCAyMTQsIAotICAgIDU0LCAxMCwgMTEsIDIxNCwgNTMsIDEwLCAxMSwgMjE0LCA1MiwgMTAsIDExLCAyMTQsIDUxLCAxMCwgMTEsIDIxNCwgNTAsIAotICAgIDEwLCAxMSwgMjEzLCAxNjUsIDEwLCAxMSwgMjEzLCAxNjQsIDEwLCAxMSwgMjEzLCAxNjMsIDEwLCAxMSwgMjEzLCAxNjIsIAotICAgIDEwLCAxMSwgMjEzLCAxNjEsIDEwLCAxMSwgMjEzLCAxNjAsIDEwLCAxMSwgMjEzLCAxNTksIDEwLCAxMSwgMjEzLCAxNTgsIAotICAgIDEwLCAxMSwgMjEzLCAxNTcsIDEwLCAxMSwgMjEzLCAxNTYsIDEwLCAxMSwgMjEzLCAxNTUsIDEwLCAxMSwgMjEzLCAxNTQsIAotICAgIDEwLCAxMSwgMjEzLCAxMDMsIDEwLCAxMSwgMjEzLCAxMDIsIDEwLCAxMSwgMjEzLCAxMDEsIDEwLCAxMSwgMjEzLCAxMDAsIAotICAgIDEwLCAxMSwgMjEzLCA5OSwgMTAsIDExLCAyMTMsIDk4LCAxMCwgMTEsIDIxMywgOTcsIDEwLCAxMSwgMjEzLCA5NiwgMTAsIAotICAgIDExLCAyMTMsIDk1LCAxMCwgMTEsIDIxMiwgMTUxLCAxMCwgMTEsIDIxMiwgMTUwLCAxMCwgMTEsIDIxMiwgMTQ5LCAxMCwgCi0gICAgMTEsIDIxMiwgMTQ4LCAxMCwgMTEsIDIxMiwgMTQ3LCAxMCwgMTEsIDIxMiwgMTQ2LCAxMCwgMTEsIDIxMiwgMTQ1LCAxMCwgCi0gICAgMTEsIDIxMiwgMTQ0LCAxMCwgMTEsIDIxMiwgMTQzLCAxMCwgMTEsIDIxMiwgMTQyLCAxMCwgMTEsIDIxMiwgMTQxLCAxMCwgCi0gICAgMTEsIDIxMiwgMTQwLCAxMCwgMTEsIDIxMiwgMTM5LCAxMCwgMTEsIDIxMiwgMTM4LCAxMCwgMTEsIDIxMiwgMTM3LCAxMCwgCi0gICAgMTEsIDIxMiwgMTM2LCAxMCwgMTEsIDIxMiwgMTM1LCAxMCwgMTEsIDIxMiwgMTM0LCAxMCwgMTEsIDIxMiwgMTMzLCAxMCwgCi0gICAgMTEsIDIxMiwgMTMyLCAxMCwgMTEsIDIxMiwgMTMxLCAxMCwgMTEsIDIxMiwgMTMwLCAxMCwgMTEsIDIxMiwgMTI5LCAxMCwgCi0gICAgMTEsIDIxMiwgMTI4LCAxMCwgMTEsIDIxMiwgMTI3LCAxMCwgMTEsIDIxMiwgMTI2LCAxMCwgMTEsIDIxMiwgMTI1LCAxMCwgCi0gICAgMTEsIDIxMiwgMTI0LCAxMCwgMTEsIDIxMiwgMTIzLCAxMCwgMTEsIDIxMiwgMTIyLCAxMCwgMTEsIDIxMiwgMTIxLCAxMCwgCi0gICAgMTEsIDIxMiwgMTIwLCAxMCwgMTEsIDIxMiwgMTE5LCAxMCwgMTEsIDIxMiwgMTE4LCAxMCwgMTEsIDIxMiwgMTE3LCAxMCwgCi0gICAgMTEsIDIxMiwgMTE2LCAxMCwgMTEsIDIxMiwgMTE1LCAxMCwgMTEsIDIxMiwgMTE0LCAxMCwgMTEsIDIxMiwgMTEzLCAxMCwgCi0gICAgMTEsIDIxMiwgMTEyLCAxMCwgMTEsIDIxMiwgMTExLCAxMCwgMTEsIDI1NCwgMjMxLCAxMCwgMTEsIDI1NCwgMjMwLCAxMCwgCi0gICAgMTEsIDI1NCwgMjI5LCAxMCwgMTEsIDI1NCwgMjI4LCAxMCwgMTEsIDI1NCwgMjI3LCAxMCwgMTEsIDI1NCwgMjI2LCAxMCwgCi0gICAgMTEsIDI1NCwgMjI1LCAxMCwgMTEsIDI1NCwgMjI0LCAxMCwgMTEsIDI1NCwgMjIzLCAxMCwgMTEsIDI1NCwgMjIyLCAxMCwgCi0gICAgMTEsIDI1NCwgMjIxLCAxMCwgMTEsIDI1NCwgMjIwLCAxMCwgMTEsIDI1NCwgMjE5LCAxMCwgMTEsIDI1NCwgMjE4LCAxMCwgCi0gICAgMTEsIDI1NCwgMjE3LCAxMCwgMTEsIDI1NCwgMjE2LCAxMCwgMTEsIDI1NCwgMjE1LCAxMCwgMTEsIDI1NCwgMjE0LCAxMCwgCi0gICAgMTEsIDI1NCwgMjEzLCAxMCwgMTEsIDI1NCwgMjEyLCAxMCwgMTEsIDI1NCwgMjExLCAxMCwgMTEsIDI1NCwgMjEwLCAxMCwgCi0gICAgMTEsIDI1NCwgMjA5LCAxMCwgMTEsIDI1NCwgMjA4LCAxMCwgMTEsIDI1NCwgMjA3LCAxMCwgMTEsIDI1NCwgMjA2LCAxMCwgCi0gICAgMTEsIDI1NCwgMjA1LCAxMCwgMTEsIDI1NCwgMjA0LCAxMCwgMTEsIDI1NCwgMjAzLCAxMCwgMTEsIDI1NCwgMjAyLCAxMCwgCi0gICAgMTEsIDI1NCwgMjAxLCAxMCwgMTEsIDI1NCwgMjAwLCAxMCwgMTEsIDI1NCwgMTk5LCAxMCwgMTEsIDI1NCwgMTk4LCAyMCwgCi0gICAgMSwgMTUzLCAyMjksIDk4LCAyMzEsIDgzLCAyMCwgMSwgMTUzLCAyNDMsIDQ2LCAyNDQsIDUsIDIwLCAxLCAxNTMsIDIyNSwgCi0gICAgMTMxLCAyMzEsIDg0LCAyMjUsIDE4OSwgMjAsIDEsIDE1MywgMjI1LCAxMzEsIDIzMSwgODQsIDIyNSwgMTkwLCAyMCwgMSwgCi0gICAgMTUzLCAyMzAsIDQ0LCAyMzEsIDgzLCAyMCwgMSwgMTUzLCAyMjAsIDE0NiwgMjAsIDEsIDE1MywgMjE3LCAxOSwgMjMxLCAKLSAgICA4MywgMjAsIDEsIDE1MywgMjI3LCAyMzgsIDIzMSwgODMsIDIwLCAxLCAxNTMsIDIyMCwgMTk5LCAyMjYsIDIxNCwgMjI5LCAKLSAgICAwLCAyMCwgMSwgMTUzLCAyMjUsIDEzMSwgMjI2LCAyMTQsIDIyOSwgMSwgMjI1LCAxODksIDIwLCAxLCAxNTMsIDIyNSwgCi0gICAgMTMxLCAyMjYsIDIxNCwgMjI5LCAxLCAyMjUsIDE5MCwgMjAsIDEsIDE1MywgMjMyLCAyMywgMjAsIDEsIDE1MywgMjE2LCAKLSAgICA4MywgMjMyLCAyNCwgMjAsIDEsIDE1MywgMjI5LCAxNTQsIDIwLCAxLCAxNTMsIDIzMiwgMjAsIDIwLCAxLCAxNTMsIDIzMSwgCi0gICAgMjM5LCAyMCwgMSwgMTUzLCAyMzAsIDExOSwgMjAsIDEsIDE1MywgMjIxLCA0NSwgMjAsIDEsIDE1MywgMjI4LCA5NiwgMjAsIAotICAgIDEsIDE1MywgMjM0LCAxNTUsIDIwLCAxLCAxNTMsIDIyOCwgMjI1LCAyMCwgMSwgMTUzLCAyMTgsIDIwNSwgMjAsIDEsIDE1MywgCi0gICAgMjI5LCA5NywgMjAsIDEsIDE1MywgMjMzLCAxMTAsIDIwLCAxLCAxNTMsIDIzMywgMzYsIDIzMywgMjEwLCAyMCwgMSwgMTUzLCAKLSAgICAyMjgsIDEwMywgMjMxLCA5MSwgMjAsIDEsIDE1MywgMjMyLCAyNywgMjAsIDEsIDE1MywgMjI2LCAxMTksIDIwLCAxLCAxNTMsIAotICAgIDI0MiwgMjA3LCAyMCwgMSwgMTUzLCAyMjYsIDE3NywgMjAsIDEsIDE1MywgMjMwLCAyMjEsIDIyOSwgMTMwLCAyMCwgMSwgCi0gICAgMTUzLCAyMjcsIDIxOSwgMjMxLCA5NCwgMjAsIDEsIDE1MywgMTExLCAyMTIsIDE3OSwgMjMwLCAzOCwgMjAsIDEsIDE1MywgCi0gICAgMjQyLCAyMDgsIDIwLCAxLCAxNTMsIDIyOCwgMTAzLCAyMjgsIDEwNCwgMjAsIDEsIDE1MywgMjIwLCA1NiwgMjAsIDEsIAotICAgIDE1MywgMjMxLCA3NiwgMjAsIDEsIDE1MywgMjMxLCA5NywgMjAsIDEsIDE1MywgMjMwLCAyMDAsIDIwLCAxLCAxNTMsIDIzNCwgCi0gICAgMjUzLCAyMCwgMSwgMTUzLCAyMjYsIDIxNCwgMjMzLCA3MSwgMjAsIDEsIDE1MywgMjI5LCAyMjksIDIzMywgNzEsIDIwLCAxLCAKLSAgICAxNTMsIDIyNiwgMzQsIDIwLCAxLCAxNTMsIDIzMiwgMjEsIDIwLCAxLCAxNTMsIDIyOSwgMzgsIDIwLCAxLCAxNTMsIDIyNSwgCi0gICAgMjAsIDIwLCAxLCAxNTMsIDIxNiwgODAsIDIwLCAxLCAxNTMsIDIzMiwgMTUyLCAyMCwgMSwgMTUzLCAyMTksIDIyNywgMjAsIAotICAgIDEsIDE1MywgMjE3LCAxNjksIDIwLCAxLCAxNTMsIDIzMiwgMTgsIDIwLCAxLCAxNTMsIDIzNCwgMTYyLCAyMCwgMSwgMTUzLCAKLSAgICAyMjksIDIyNSwgMjAsIDEsIDE1MywgMjMzLCAyMjIsIDIwLCAxLCAxNTMsIDIzMCwgMjAxLCAyMCwgMSwgMTUzLCAyMjAsIAotICAgIDE0MywgMjAsIDEsIDE1MywgMjMyLCAxOTEsIDIwLCAxLCAxNTMsIDI0NCwgNjIsIDIwLCAxLCAxNTMsIDIyMywgMTAxLCAyMCwgCi0gICAgMSwgMTUzLCAyMzMsIDI1MCwgMjAsIDEsIDE1MywgMjE5LCAyMjMsIDIwLCAxLCAxNTMsIDIzMSwgMjM2LCAyMjUsIDIzMSwgCi0gICAgMjAsIDEsIDE1MywgMjIwLCAxOTIsIDIwLCAxLCAxNTMsIDIyOCwgMTAyLCAyMCwgMSwgMTUzLCAyMjAsIDE3NywgMjI4LCAKLSAgICAxMTMsIDIxMiwgMTg3LCAyMCwgMSwgMTUzLCAyMjgsIDEsIDIzMCwgMjE4LCAyMCwgMSwgMTUzLCAyMjYsIDIwOSwgMjAsIDEsIAotICAgIDE1MywgMjI4LCAyMjYsIDIwLCAxLCAxNTMsIDIxNSwgMTQxLCAyMCwgMSwgMTUzLCAyMjksIDEzMywgMjAsIDEsIDE1MywgCi0gICAgMjMyLCAxNywgMjAsIDEsIDE1MywgMjI5LCAxMiwgMjAsIDEsIDE1MywgMjMxLCAxODIsIDIwLCAxLCAxNTMsIDIyOCwgMTIsIAotICAgIDIwLCAxLCAxNTMsIDIxNywgMTczLCAyMCwgMSwgMTUzLCAyMTksIDIyMSwgMjAsIDEsIDE1MywgMjI2LCAyMTAsIDIwLCAxLCAKLSAgICAxNTMsIDIyOCwgMTE3LCAyMCwgMSwgMTUzLCAyMzIsIDI1LCAyMCwgMSwgMTUzLCAyMjgsIDEwLCAyMCwgMSwgMTUzLCAyMzQsIAotICAgIDIyMSwgMjAsIDEsIDE1MywgMjI4LCAxMjAsIDIwLCAxLCAxNTMsIDIxNCwgMjI3LCAyMCwgMSwgMTUzLCAyMzIsIDE1NiwgCi0gICAgMjAsIDEsIDE1MywgMjI5LCAxODAsIDIwLCAxLCAxNTMsIDIzMCwgMTYsIDIwLCAxLCAxNTMsIDIzMSwgMTgxLCAyMCwgMSwgCi0gICAgMjI2LCAxNCwgMjI4LCAxMTUsIDIwLCAxLCAyMjYsIDE0LCAyMTYsIDgzLCAyMzIsIDIyLCAyMCwgMSwgMjI2LCAxNCwgMjIwLCAKLSAgICAxMTEsIDIwLCAxLCAyMjYsIDE0LCAyMjEsIDQ5LCAyMTYsIDgyLCAyMCwgMSwgMjI2LCAxNCwgMjMyLCAxOTMsIDIyOCwgOTksIAotICAgIDIwLCAxLCAyMjYsIDE0LCAyMzEsIDE4OCwgMjMyLCAyNiwgMjAsIDEsIDIyNiwgMTQsIDIzNCwgOTYsIDIwLCAxLCAyMjYsIAotICAgIDE0LCAyMTMsIDYsIDIwLCAxLCAyMjYsIDE0LCAyMzEsIDE4MywgMjAsIDEsIDIyNiwgMTQsIDIzNCwgMjQyLCAyMCwgMSwgCi0gICAgMjI2LCAxNCwgMjI2LCA4MywgMjAsIDEsIDIyNiwgMTQsIDIxMywgNzcsIDIzMywgNzEsIDIwLCAxLCAyMjYsIDE0LCAyMzMsIAotICAgIDEyNywgMjI4LCAxMTMsIDIyOCwgMjAsIDIwLCAxLCAyMjYsIDE0LCAyMjgsIDk3LCAyMjAsIDIxOCwgMjAsIDEsIDIyNiwgCi0gICAgMTQsIDIyOSwgMTk2LCAyMjksIDE1LCAyMCwgMSwgMjI2LCAxNCwgMjQyLCAyMDUsIDIwLCAxLCAyMjYsIDE0LCAyMjUsIAotICAgIDE4MSwgMjAsIDEsIDIyNiwgMTQsIDIxNiwgODMsIDIyOCwgMTExLCAyMCwgMSwgMjI2LCAxNCwgMjIwLCAyMjMsIDIyOSwgCi0gICAgMTAsIDIwLCAxLCAyMjYsIDE0LCAyMjAsIDIxOSwgMjAsIDEsIDIyNiwgMTQsIDIzMSwgODQsIDIxNywgMTcyLCAyMCwgMSwgCi0gICAgMjI2LCAxNCwgMjMxLCAxNzAsIDIzMSwgMTg0LCAyMCwgMSwgMjI2LCAxNCwgMjI4LCAxMSwgMjI4LCA5OSwgMjAsIDEsIAotICAgIDIyNiwgMTQsIDIzNCwgMTUxLCAyMCwgMSwgMjI2LCAxNCwgMjQyLCAyMDYsIDIwLCAxLCAyMjYsIDE0LCAyMzQsIDE0NywgCi0gICAgMjAsIDEsIDIyNiwgMTQsIDIzMywgMTUxLCAyMCwgMSwgMjI2LCAxNCwgMjI2LCAxMjEsIDIwLCAxLCAyMjYsIDE0LCAyMTQsIAotICAgIDE1OSwgMjAsIDEsIDIyNiwgMTQsIDIyOSwgOTksIDIzMCwgMTE3LCAyMCwgMSwgMjI2LCAxNCwgMjI5LCAxMzIsIDIzMSwgCi0gICAgMTY2LCAyMCwgMSwgMjI2LCAxNCwgMjEzLCAxODEsIDIwLCAxLCAyMjYsIDE0LCAyMjIsIDE4MiwgMjAsIDEsIDIyNiwgMTQsIAotICAgIDIxOCwgNDUsIDIwLCAxLCAyMjYsIDE0LCAyMzEsIDk2LCAyMCwgMSwgMjI2LCAxNCwgMjI5LCAxMTcsIDIwLCAxLCAyMjYsIAotICAgIDE0LCAyMjksIDExOCwgMjMzLCAxMDcsIDIwLCAxLCAyMjYsIDE0LCAyMzEsIDg2LCAyMCwgMSwgMjI2LCAxNCwgMjE4LCAKLSAgICAyNTMsIDIwLCAxLCAyMjYsIDE0LCAyMzEsIDE3NCwgMjAsIDEsIDIyNiwgMTQsIDIzMCwgMjAzLCAyMCwgMSwgMjI2LCAxNCwgCi0gICAgMjI4LCAyMSwgMjAsIDEsIDIyNiwgMTQsIDIyNSwgMjQsIDIwLCAxLCAyMjYsIDE0LCAyMzEsIDk1LCAyMjksIDEzNCwgMjAsIAotICAgIDEsIDIyNiwgMTQsIDI0NCwgOTUsIDIwLCAxLCAyMjYsIDE0LCAyMzEsIDE2MSwgMjAsIDEsIDIyNiwgMTQsIDI0NCwgMTE2LCAKLSAgICAyMCwgMSwgMjI2LCAxNCwgMjM0LCAxNTksIDIwLCAxLCAyMjYsIDE0LCAyMzIsIDQzLCAyMjksIDQsIDIwLCAxLCAyMjYsIAotICAgIDE0LCAyMzIsIDQzLCAyMjgsIDIzNiwgMjAsIDEsIDIyNiwgMTQsIDIzMywgMzUsIDIwLCAxLCAyMjYsIDE0LCAyMjksIDE0MCwgCi0gICAgMjAsIDEsIDIyNiwgMTQsIDIyOCwgMTIyLCAyMCwgMSwgMjI2LCAxNCwgMTg4LCAyMCwgMSwgMjI2LCAxNCwgMjM0LCA4MywgCi0gICAgMjAsIDEsIDIyNiwgMTQsIDIyOSwgODcsIDIwLCAxLCAxMzEsIDIyOSwgOTgsIDIzMiwgMjQsIDIwLCAxLCAxMzEsIDIyNywgCi0gICAgMjM3LCAyMCwgMSwgMTMxLCAyMTIsIDE4NywgMjAsIDEsIDEzMSwgMjE0LCAzNywgMjAsIDEsIDEzMSwgMjI5LCAxMzMsIDIwLCAKLSAgICAxLCAxMzEsIDIyOSwgMjE3LCAyMCwgMSwgMTMxLCAyMjksIDEwNSwgMjAsIDEsIDEzMSwgMjQyLCAyMTUsIDIwLCAxLCAxMzEsIAotICAgIDIzMSwgMTc4LCAyMCwgMSwgMTMxLCAyNDMsIDUzLCAyMCwgMSwgMTMxLCAyMjgsIDMsIDIzMCwgMjM5LCAyMzEsIDk4LCAyMCwgCi0gICAgMSwgMTMxLCAyMjgsIDk1LCAyMzEsIDE2OSwgMjAsIDEsIDEzMSwgMjMxLCAxNzUsIDIwLCAxLCAxMzEsIDIyNSwgMTg3LCAKLSAgICAyMCwgMSwgMTMxLCAyMjksIDIwMiwgMjAsIDEsIDEzMSwgMjMxLCAxODYsIDI1MCwgMjE1LCAyMCwgMSwgMTMxLCAyMzQsIAotICAgIDE0OSwgMjAsIDEsIDEzMSwgMjQyLCAyMTYsIDIwLCAxLCAxMzEsIDIzNCwgMTU2LCAyMCwgMSwgMTMxLCAyMTIsIDIwNCwgCi0gICAgMjMwLCAxNDYsIDIwLCAxLCAxMzEsIDIyNywgMjMxLCAyMCwgMSwgMTMxLCAyMzEsIDE2MywgMjAsIDEsIDEzMSwgMjI4LCAKLSAgICAxMjEsIDIwLCAxLCAxMzEsIDIzMSwgMTY5LCAyMCwgMSwgMTMxLCAyMTMsIDcsIDIwLCAxLCAxMzEsIDIzNCwgMiwgMjAsIDEsIAotICAgIDEzMSwgMjM1LCAxNCwgMjAsIDEsIDEzMSwgMjIxLCA0NCwgMjAsIDEsIDEzMSwgMjI5LCAyMTEsIDIwLCAxLCAxMzEsIDIxOCwgCi0gICAgNDMsIDIwLCAxLCAxMzEsIDIyOCwgMjQwLCAyMCwgMSwgMTMxLCAyMTcsIDE5LCAyMTIsIDE4OSwgMjAsIDEsIDEzMSwgMjE5LCAKLSAgICAyMywgMjAsIDEsIDEzMSwgMjI5LCAxMjQsIDIyOCwgMjAsIDIwLCAxLCAxMzEsIDIxNCwgMTU4LCAyMCwgMSwgMTMxLCAyMzAsIAotICAgIDE5LCAyMCwgMSwgMTMxLCAyMzIsIDQzLCAyMzQsIDE1OCwgMjAsIDEsIDEzMSwgMjI4LCAxMDQsIDIwLCAxLCAxMzEsIDIyOSwgCi0gICAgMTE5LCAyMCwgMSwgMTMxLCAyMzMsIDExMSwgMjAsIDEsIDEzMSwgMjMxLCAxNzEsIDIwLCAxLCAxMzEsIDIzMSwgNzUsIDIwLCAKLSAgICAxLCAxMzEsIDIyOCwgOTgsIDIwLCAxLCAxMzEsIDIxNywgMTY4LCAyMCwgMSwgMTMxLCAyMjksIDEyMSwgMjAsIDEsIDEzMSwgCi0gICAgMjQzLCAyMDQsIDIwLCAxLCAxMzEsIDIyOSwgMjE2LCAyMCwgMSwgMTMxLCAyMjgsIDEyMywgMjAsIDEsIDEzMSwgMjI4LCAKLSAgICAxMTksIDIwLCAxLCAxMzEsIDI1MSwgMzYsIDIwLCAxLCAxMzEsIDIxNCwgMTYwLCAyMCwgMSwgMTMxLCAyMzEsIDE3NiwgMjAsIAotICAgIDEsIDEzMSwgMjIzLCA1MSwgMjAsIDEsIDEzMSwgMjI5LCAxNCwgMjAsIDEsIDEzMSwgMjMzLCAxMjYsIDIwLCAxLCAxMzEsIAotICAgIDIxNywgMTcsIDIwLCAxLCAxMzEsIDIyOCwgMTA1LCAyMjksIDg3LCAyMCwgMSwgMTMxLCAyMjksIDYsIDIwLCAxLCAxMzEsIAotICAgIDIzNCwgMTYyLCAyMCwgMSwgMTMxLCAyMjksIDEyNSwgMjAsIDEsIDEzMSwgMjMyLCAxNywgMjAsIDEsIDEzMSwgMjMxLCAKLSAgICAxNjQsIDIwLCAxLCAxMzEsIDIzMiwgMTU2LCAyMCwgMSwgMTMxLCAyMzMsIDIxMCwgMjAsIDEsIDEzMSwgMjI5LCAxMiwgMjAsIAotICAgIDEsIDEzMSwgMjI5LCA4NywgMjAsIDEsIDEzMSwgMjEzLCAxNzIsIDIwLCAxLCAxMzEsIDIyOSwgMTIyLCAyMCwgMSwgMTMxLCAKLSAgICAyMjgsIDEwOCwgMjAsIDEsIDEzMSwgMjI4LCAxMDAsIDIwLCAxLCAxMzEsIDIzMywgMjI0LCAyMjgsIDIyNiwgMjAsIDEsIAotICAgIDEzMSwgMjI4LCAxMDYsIDIwLCAxLCAxMzEsIDIyOSwgMjI0LCAyMCwgMSwgMTMxLCAyMzIsIDQzLCAyMjgsIDExMSwgMjAsIAotICAgIDEsIDEzMSwgMjEzLCA5MSwgMjAsIDEsIDEzMSwgMjI5LCAyMjMsIDIwLCAxLCAxMzEsIDIyMCwgMTQ1LCAyMCwgMSwgMTMxLCAKLSAgICAyMjEsIDQ3LCAyMCwgMSwgMTMxLCAyMzEsIDE3MiwgMjAsIDEsIDEzMSwgMjMyLCAyNCwgMjAsIDEsIDEzMSwgMjMxLCAxODIsIAotICAgIDIwLCAxLCAxMzEsIDIzNCwgMTUwLCAyMCwgMSwgMTMxLCAyMzEsIDE3MywgMjAsIDEsIDEzMSwgMjM0LCAxNTQsIDIwLCAxLCAKLSAgICAxMzEsIDIzMSwgMTg2LCAyMjUsIDIzNSwgMjAsIDEsIDEzMSwgMjEyLCAxNzEsIDIwLCAxLCAxMzEsIDIyOSwgMiwgMjAsIDEsIAotICAgIDEzMSwgMjMxLCAzMywgMjAsIDEsIDEzMSwgMjMwLCAxNzAsIDIwLCAxLCAxMzEsIDIyMCwgMTk1LCAyMCwgMSwgMTMxLCAKLSAgICAyMzQsIDE3MiwgMjMzLCA5NCwgMjAsIDEsIDEzMSwgMjM0LCAxNzIsIDI0NCwgMTI4LCAyMCwgMSwgMTMxLCAyMjksIDE1MiwgCi0gICAgMjAsIDEsIDEzMSwgMjMwLCAxNiwgMjAsIDEsIDEzMSwgMjMyLCAyMjksIDIwLCAxLCAxMzEsIDIyNSwgMTk3LCAyMCwgMSwgCi0gICAgMTMxLCAyMjYsIDc0LCAyMCwgMSwgMTMxLCAyMTcsIDE4MywgMjAsIDEsIDEwMywgMjMxLCAxNjIsIDIwLCAxLCAxMDMsIAotICAgIDIxNCwgMzUsIDIwLCAxLCAxMDMsIDIyOSwgMCwgMjAsIDEsIDEwMywgMjMxLCA4MywgMjAsIDEsIDEwMywgMjI4LCAyNTQsIAotICAgIDIwLCAxLCAxMDMsIDIzMywgNywgMjAsIDEsIDEwMywgMjI5LCAzLCAyMCwgMSwgMTAzLCAyMjgsIDExOCwgMjAsIDEsIDEwMywgCi0gICAgMjI5LCAxMzksIDIwLCAxLCAxMDMsIDIyOCwgMjAsIDIwLCAxLCAxMDMsIDIxMywgMTgyLCAyMCwgMSwgMTAzLCAyMjksIDk1LCAKLSAgICAyMCwgMSwgMTAzLCAyMjAsIDI0MSwgMjAsIDEsIDEwMywgMjI5LCAxMDYsIDIwLCAxLCAxMDMsIDIzNCwgMTU3LCAyMCwgMSwgCi0gICAgMTAzLCAyMTcsIDE3MCwgMjAsIDEsIDEwMywgMjIwLCAyMjEsIDIwLCAxLCAxMDMsIDIyOSwgMTEsIDIwLCAxLCAxMDMsIAotICAgIDIxOCwgMjUzLCAyMCwgMSwgMTAzLCAyMzQsIDE2MiwgMjAsIDEsIDEwMywgMjEzLCA3OSwgMjAsIDEsIDEwMywgMjMzLCAKLSAgICAyMjUsIDIwLCAxLCAxMDMsIDIyMiwgMTUwLCAyMCwgMSwgMTAzLCAyMzEsIDg4LCAyMCwgMSwgMTAzLCAyMjksIDIxNSwgMjAsIAotICAgIDEsIDEwMywgMjMxLCAyNTEsIDIwLCAxLCAxMDMsIDIzMSwgOTQsIDIwLCAxLCAxMDMsIDIyMSwgNDYsIDIwLCAxLCAxMDMsIAotICAgIDIxMywgMzAsIDIwLCAxLCAxMDMsIDIyOSwgNSwgMjAsIDEsIDEwMywgMjM0LCAxNTMsIDIzMSwgMTY1LCAyMCwgMSwgMTAzLCAKLSAgICAyMjksIDEwMiwgMjAsIDEsIDEwMywgMjE2LCA4MiwgMjAsIDEsIDEwMywgMjQyLCAyMjQsIDIwLCAxLCAxMDMsIDIyOSwgOTIsIAotICAgIDIwLCAxLCAxMDMsIDI0NCwgOTYsIDIwLCAxLCAxMDMsIDIyOSwgMjE5LCAyMCwgMSwgMTAzLCAyMzEsIDY3LCAyMCwgMSwgCi0gICAgMTAzLCAyMzMsIDMxLCAyMCwgMSwgMTAzLCAyMjksIDIwMSwgMjAsIDEsIDEwMywgMjMwLCAyMTcsIDIwLCAxLCAxMDMsIAotICAgIDIzMSwgNzEsIDIwLCAxLCAxMDMsIDIyNSwgNiwgMjAsIDEsIDEwMywgMjMxLCA2OSwgMjAsIDEsIDEwMywgMjMxLCA4NSwgCi0gICAgMjAsIDEsIDEwMywgMjMyLCAxNDIsIDIwLCAxLCAxMDMsIDIyOCwgMTEwLCAyMCwgMSwgMTAzLCAyMzEsIDE4NSwgMjAsIDEsIAotICAgIDEwMywgMjMzLCAyMDIsIDIwLCAxLCAxMDMsIDIyOCwgMTIsIDIwLCAxLCAxMDMsIDIxNywgMTczLCAyMCwgMSwgMTAzLCAKLSAgICAyMTksIDIyMSwgMjAsIDEsIDEwMywgMjEyLCAxNzEsIDIwLCAxLCAxMDMsIDIzNCwgMTU0LCAyMCwgMSwgMTAzLCAyMjQsIAotICAgIDYwLCAyMCwgMSwgMTAzLCAyMTcsIDIxOCwgMjAsIDEsIDEwMywgMjI5LCAxMDMsIDIwLCAxLCAxMDMsIDIzMSwgOTAsIDIwLCAKLSAgICAxLCAxMDMsIDIyOCwgMTA5LCAyMCwgMSwgMTAzLCAyMzQsIDE1MiwgMjAsIDEsIDEwMywgMjI1LCAxOTEsIDIwLCAxLCAxMDMsIAotICAgIDIyNiwgMjgsIDIwLCAxLCAxMDMsIDIyNywgMjQ2LCAyMCwgMSwgMTAzLCAyMzMsIDM1LCAyMCwgMSwgMTAzLCAyMjksIDE0MCwgCi0gICAgMjAsIDEsIDEwMywgMjMxLCA4NywgMjAsIDEsIDEwMywgMjI5LCAxMTQsIDIwLCAxLCAxMDMsIDIxMiwgMTg0LCAyMCwgMSwgCi0gICAgMTAzLCAyMjYsIDE0OSwgMjAsIDEsIDEwMywgMjEyLCAxODMsIDIwLCAxLCAxMDMsIDIyOSwgMjI0LCAyMCwgMSwgMTAzLCAKLSAgICAyMjgsIDk5LCAyMCwgMSwgMTAzLCAyMTksIDI1LCAyMCwgMSwgMTAzLCAyMzMsIDIyOSwgMjAsIDEsIDEwMywgMjI5LCAxMjksIAotICAgIDIwLCAxLCAxMDMsIDIyOSwgMTAwLCAyMCwgMSwgMTAzLCAyMTYsIDY2LCAyMCwgMSwgMTAzLCAyMzEsIDk4LCAyMCwgMSwgCi0gICAgMTAzLCAyMzMsIDIxOSwgMjAsIDEsIDEwMywgMjI4LCAxMDcsIDIwLCAxLCAxMDMsIDIxNywgMTcxLCAyMCwgMSwgMTAzLCAKLSAgICAyMzIsIDE5LCAyMCwgMSwgMTAzLCAyMjksIDEzOCwgMjAsIDEsIDEwMywgMjMzLCAzMCwgMjAsIDEsIDEwMywgMjI5LCAxMjAsIAotICAgIDIwLCAxLCAxMDMsIDIyOCwgMTEyLCAyMCwgMSwgMTAzLCAyMjgsIDI0MCwgMjAsIDEsIDEwMywgMjQyLCAyMDksIDIwLCAxLCAKLSAgICAxMDMsIDIzMywgMjM4LCAyMCwgMSwgMTAzLCAyMjMsIDIzNCwgMjI3LCA3NSwgMjAsIDEsIDEwMywgMjE4LCAzNSwgMjAsIDEsIAotICAgIDEwMywgMjE2LCAyMjMsIDIwLCAxLCAxMDMsIDIyOCwgMTAsIDIwLCAxLCAxMDMsIDIyMywgMTM2LCAyMCwgMSwgMTAzLCAKLSAgICAyMzMsIDczLCAyMCwgMSwgMTAzLCAyMzEsIDE0NCwgMjAsIDEsIDEwMywgMTgzLCAyMCwgMSwgMTAzLCAyMTgsIDIwNSwgMjAsIAotICAgIDEsIDEwMywgMjMwLCAxNzIsIDIwLCAxLCAxMDMsIDIyMCwgMjA3LCAyMCwgMSwgMTAzLCAyMjAsIDIxNywgMjAsIDEsIDEwMywgCi0gICAgMjMzLCAxNzcsIDIwLCAxLCAxMDMsIDIyOCwgOTIsIDIwLCAxLCAxMDMsIDIyMCwgMTUwLCAyMCwgMSwgMTAzLCAyMjgsIAotICAgIDEwMSwgMjAsIDEsIDEwMywgMjI2LCA4NiwgMjAsIDEsIDEwMywgMjI5LCA2NCwgMjAsIDEsIDEwMywgMjIwLCAxNzYsIDIwLCAKLSAgICAxLCAxMDMsIDIyNSwgMTksIDIwLCAxLCAxMDMsIDIzMCwgMTE3LCAyMCwgMSwgMTAzLCAyMzIsIDE3NCwgMjAsIDEsIDEwMywgCi0gICAgMjIzLCAyMzQsIDIzMCwgMTY2LCAyMCwgMSwgMTAzLCAyMTcsIDcxLCAyMCwgMSwgMTAzLCAyMjgsIDkzLCAyMCwgMSwgMTAzLCAKLSAgICAyMzEsIDE4NiwgMTk4LCAyMCwgMSwgMTAzLCAyMjIsIDE0OCwgMjAsIDEsIDEwMywgMjQ0LCAxNjMsIDIwLCAxLCA4MCwgCi0gICAgMjI5LCAyMjMsIDIwLCAxLCA4MCwgMjE2LCAyMjksIDIwLCAxLCA4MCwgMjMxLCAxNzUsIDIwLCAxLCA4MCwgMjMzLCAxMTEsIAotICAgIDIwLCAxLCA4MCwgMjE0LCAxMDksIDIwLCAxLCA4MCwgMjMyLCAxNzgsIDIwLCAxLCA4MCwgMjI2LCAyMTMsIDIwLCAxLCA4MCwgCi0gICAgMjE5LCAyMzAsIDIwLCAxLCA4MCwgMjI0LCAzNywgMjAsIDEsIDgwLCAyMjgsIDExNCwgMjAsIDEsIDgwLCAyMjksIDE5NCwgCi0gICAgMjAsIDEsIDgwLCAyMjUsIDMzLCAyMCwgMSwgODAsIDIxOCwgMTMsIDIwLCAxLCA4MCwgMjI5LCAxMDgsIDIwLCAxLCA4MCwgCi0gICAgMjMzLCAyNTQsIDIwLCAxLCA4MCwgMjEzLCAxNzUsIDIwLCAxLCA4MCwgMjIyLCA4OSwgMjAsIDEsIDgwLCAyMjksIDEzMCwgCi0gICAgMjAsIDEsIDgwLCAyMjYsIDIxMCwgMjAsIDEsIDgwLCAyMTYsIDIzMCwgMjAsIDEsIDgwLCAyMzMsIDIyMywgMjAsIDEsIDgwLCAKLSAgICAyMzIsIDE5MiwgMjAsIDEsIDgwLCAyMjgsIDExNywgMjAsIDEsIDgwLCAyMjksIDg0LCAyMCwgMSwgODAsIDIzMiwgMjUsIAotICAgIDIwLCAxLCA4MCwgMjI5LCAxMDEsIDIwLCAxLCA4MCwgMjI5LCA4MywgMjAsIDEsIDgwLCAyMjgsIDExNiwgMjAsIDEsIDgwLCAKLSAgICAyMjMsIDEzNCwgMjAsIDEsIDgwLCAyMjksIDIsIDIwLCAxLCA4MCwgMjI2LCA4NSwgMjAsIDEsIDgwLCAyMjIsIDIwMCwgMjAsIAotICAgIDEsIDgwLCAyMjksIDExNSwgMjAsIDEsIDgwLCAyMzEsIDc3LCAyMCwgMSwgODAsIDI0MiwgMjAzLCAyMCwgMSwgODAsIDIyOSwgCi0gICAgMTA0LCAyMCwgMSwgODAsIDIyOSwgMTMsIDIwLCAxLCA4MCwgMjMxLCAyMzUsIDIwLCAxLCA4MCwgMjMyLCAxNzYsIDIwLCAxLCAKLSAgICA4MCwgMjI5LCAxMzUsIDIwLCAxLCA4MCwgMjI5LCAyMDcsIDIwLCAxLCA4MCwgMjE4LCAzNCwgMjI4LCA5OSwgMjAsIDEsIAotICAgIDgwLCAyMjEsIDQ4LCAyMCwgMSwgODAsIDIyNSwgMjksIDIwLCAxLCA4MCwgMjI5LCAyMjcsIDIxOSwgMjM1LCAyMCwgMSwgCi0gICAgODAsIDIyOSwgMTIzLCAyMjgsIDIwLCAyMCwgMSwgODAsIDIxMiwgMjUxLCAyMCwgMSwgODAsIDI0MiwgMjA0LCAyMCwgMSwgCi0gICAgODAsIDIxNiwgODEsIDIwLCAxLCA4MCwgMjEzLCAxMCwgMjAsIDEsIDgwLCAyMjUsIDE1MCwgMjAsIDEsIDgwLCAyMTYsIDcxLCAKLSAgICAyMCwgMSwgODAsIDIzNCwgMTYwLCAyMCwgMSwgODAsIDIxOSwgMjQsIDIwLCAxLCA4MCwgMjE3LCAxNzIsIDIwLCAxLCA4MCwgCi0gICAgMjE0LCAxNjEsIDIwLCAxLCA4MCwgMjEzLCAyNDcsIDIwLCAxLCA4MCwgMjMzLCAxNTQsIDIwLCAxLCA4MCwgMjI1LCAzNSwgCi0gICAgMjAsIDEsIDgwLCAyMTgsIDQ0LCAyMCwgMSwgODAsIDI0MiwgMjIzLCAyMCwgMSwgODAsIDIyOSwgMTQ0LCAyMCwgMSwgODAsIAotICAgIDIyMCwgMjIwLCAyMCwgMSwgODAsIDIzMSwgNzIsIDIwLCAxLCA4MCwgMjMxLCAxNzksIDIwLCAxLCA4MCwgMjI3LCAyMzUsIAotICAgIDIwLCAxLCA4MCwgMjI4LCAyMjMsIDIwLCAxLCA4MCwgMjQzLCA0OSwgMjAsIDEsIDgwLCAyMTYsIDcyLCAyMCwgMSwgODAsIAotICAgIDIzMywgMjMyLCAyMCwgMSwgODAsIDIxMywgNTcsIDIwLCAxLCA4MCwgMjI4LCAxMSwgMjQ5LCAyMDksIDIwLCAxLCA4MCwgCi0gICAgMjEyLCAyNDEsIDIwLCAxLCA4MCwgMjMxLCA4OSwgMjAsIDEsIDgwLCAyMjksIDIxMiwgMjAsIDEsIDgwLCAyMjUsIDIzMiwgCi0gICAgMjAsIDEsIDgwLCAyMTIsIDE4OCwgMjAsIDEsIDgwLCAyMzMsIDMyLCAyMCwgMSwgODAsIDI0MywgMjA0LCAyMCwgMSwgODAsIAotICAgIDI0MywgNDgsIDIwLCAxLCA4MCwgMjI5LCA5NCwgMjAsIDEsIDgwLCAyMzQsIDE2MiwgMjAsIDEsIDgwLCAyMzIsIDI4LCAyMCwgCi0gICAgMSwgODAsIDIyOSwgMTA3LCAyMCwgMSwgODAsIDI0MiwgMjEwLCAyMCwgMSwgODAsIDI0NCwgMTY0LCAyMCwgMSwgODAsIAotICAgIDIyOCwgOTQsIDIwLCAxLCA4MCwgMjI2LCAyOSwgMjAsIDEsIDgwLCAyMTMsIDgsIDIwLCAxLCA4MCwgMjI5LCAxMzEsIDIwLCAKLSAgICAxLCA4MCwgMjI4LCAxMSwgMjUxLCAyMDAsIDIwLCAxLCA4MCwgMjI3LCAyMTUsIDIwLCAxLCA4MCwgMjI1LCAxMjcsIDIwLCAKLSAgICAxLCA4MCwgMjMxLCAzMywgMjAsIDEsIDgwLCAyNDMsIDIwMiwgMjAsIDEsIDgwLCAyMzAsIDM4LCAyMCwgMSwgODAsIDIzMCwgCi0gICAgMTcwLCAyMCwgMSwgODAsIDI0MiwgMjA5LCAyMCwgMSwgODAsIDI0MywgMjA2LCA3MiwgMjAsIDEsIDgwLCAyMzAsIDExOCwgCi0gICAgMjAsIDEsIDgwLCAyMjUsIDMyLCAyMCwgMSwgODAsIDIyOSwgOTYsIDIwLCAxLCA4MCwgMjMzLCAyMTAsIDIwLCAxLCA4MCwgCi0gICAgMjI1LCAyMjksIDIwLCAxLCA4MCwgMjI4LCAxMDIsIDIwLCAxLCA4MCwgMjEzLCA5LCAyMCwgMSwgODAsIDIyOSwgMTE2LCAKLSAgICAyMCwgMSwgODAsIDIyNiwgMjE0LCAyMjYsIDYyLCAyMCwgMSwgODAsIDI0MywgMjA2LCAyNTAsIDIwMywgMjAsIDEsIDgwLCAKLSAgICAyNDQsIDYsIDIwLCAxLCA4MCwgMjI5LCA3LCAyMCwgMSwgODAsIDYxLCAyMCwgMSwgODAsIDIxNiwgMjIzLCAyMCwgMSwgODAsIAotICAgIDc1LCAyMCwgMSwgODAsIDcyLCAyMCwgMSwgODAsIDIzMywgMTA5LCAyMCwgMSwgODAsIDIyNiwgMjE0LCAyMjUsIDE1NywgCi0gICAgMjAsIDEsIDgwLCAyMTgsIDQ5LCAyMCwgMSwgODAsIDIxOCwgMiwgMjAsIDEsIDgwLCAyMjksIDIyNywgMjMwLCAxMDYsIAotICAgIDI0MCwgMjIxLCAyMCwgMSwgODAsIDIyMCwgMTk1LCAyMCwgMSwgODAsIDIxMywgNSwgMjAsIDEsIDgwLCAyMjksIDc3LCAyMCwgCi0gICAgMSwgODAsIDIxMiwgMTkzLCAyMCwgMSwgODAsIDIxMiwgMjE4LCAyMTgsIDE4NSwgMjAsIDEsIDgwLCAyMTIsIDIxOCwgMjQ5LCAKLSAgICA4NiwgMjAsIDEsIDgwLCAyMTIsIDE3OCwgMjAsIDEsIDgwLCAyMTIsIDE4NiwgMjAsIDEsIDgwLCAyMzQsIDE0OCwgMjAsIDEsIAotICAgIDgwLCAyMjYsIDI3LCAyMCwgMSwgODAsIDIyOSwgOCwgMjQ1LCA2NSwgMjAsIDEsIDgwLCAyMjUsIDMwLCAyMCwgMSwgODAsIAotICAgIDIxMywgMTgwLCAyMCwgMSwgODAsIDI0NCwgMTE2LCAyMCwgMSwgODAsIDIxNCwgMjI3LCAyMCwgMSwgODAsIDIzMiwgMTU2LCAKLSAgICAyMCwgMSwgODAsIDIzMSwgNDIsIDIwLCAxLCA4MCwgMjIzLCAyMDQsIDIwLCAxLCA4MCwgMjI0LCA2MSwgMjAsIDEsIDgwLCAKLSAgICAyMjksIDc2LCAyMCwgMSwgODAsIDIyOSwgMTU5LCAyMCwgMSwgODAsIDIyMCwgMTg3LCAyMCwgMSwgODAsIDIyMCwgMTc2LCAKLSAgICAyMCwgMSwgODAsIDI0MywgMjA2LCAyMjMsIDIzNiwgMjAsIDEsIDgwLCAyMDUsIDIwLCAxLCA4MCwgMjI1LCAyNDAsIDIwLCAKLSAgICAxLCA4MCwgMjMyLCAxNzQsIDIwLCAxLCA4MCwgMjM0LCAzNywgMjAsIDEsIDgwLCAyMzEsIDEyMiwgMjAsIDEsIDgwLCAxODgsIAotICAgIDIwLCAxLCA4MCwgMjMxLCAyMzIsIDIwLCAxLCA4MCwgMjE3LCAxNzQsIDIwLCAxLCA4MCwgMjM0LCAxMDEsIDIwLCAxLCA4MCwgCi0gICAgMjMwLCAyMjAsIDIwLCAxLCA4MCwgMjE3LCAyMDAsIDIwLCAxLCA4MCwgMjQ0LCAxMzcsIDIwLCAxLCA4MCwgMjQyLCAxOTksIAotICAgIDIwLCAxLCAyMjYsIDEzLCAxODEsIDIwLCAxLCAyMjYsIDEzLCA2OSwgMjAsIDEsIDIyNiwgMTMsIDIzMywgMjM4LCAyMCwgMSwgCi0gICAgMjI2LCAxMywgMjQ1LCAxNjUsIDIwLCAxLCAyMjYsIDEzLCAyMjQsIDEsIDIwLCAxLCAyMjYsIDEzLCAyMTgsIDM1LCAyMCwgCi0gICAgMSwgMjI2LCAxMywgMjI4LCAxMCwgMjAsIDEsIDIyNiwgMTMsIDIzMywgMTU3LCAyMCwgMSwgMjI2LCAxMywgMjIzLCAxMzYsIAotICAgIDIwLCAxLCAyMjYsIDEzLCAyMjMsIDE4MiwgMjAsIDEsIDIyNiwgMTMsIDIzMSwgMTQ0LCAyMCwgMSwgMjI2LCAxMywgMjE4LCAKLSAgICA0OSwgMjAsIDEsIDIyNiwgMTMsIDIyOSwgMjI2LCAyMCwgMSwgMjI2LCAxMywgMjI5LCAxNCwgMjAsIDEsIDIyNiwgMTMsIAotICAgIDE4MywgMjAsIDEsIDIyNiwgMTMsIDIxOCwgMjA1LCAyMCwgMSwgMjI2LCAxMywgMjIwLCAyMDcsIDIwLCAxLCAyMjYsIDEzLCAKLSAgICAyMjAsIDExNywgMjAsIDEsIDIyNiwgMTMsIDIyMSwgNDQsIDIwLCAxLCAyMjYsIDEzLCAyMzMsIDE3NywgMjAsIDEsIDIyNiwgCi0gICAgMTMsIDIzNCwgMTYyLCAyMCwgMSwgMjI2LCAxMywgMjI4LCA2NCwgMjAsIDEsIDIyNiwgMTMsIDIyOCwgOTIsIDIwLCAxLCAKLSAgICAyMjYsIDEzLCAyMjgsIDI0MSwgMjAsIDEsIDIyNiwgMTMsIDIxMiwgMjE3LCAyMCwgMSwgMjI2LCAxMywgMjIwLCAxNTAsIAotICAgIDIwLCAxLCAyMjYsIDEzLCAxODYsIDIwLCAxLCAyMjYsIDEzLCAyMjgsIDEyMCwgMjAsIDEsIDIyNiwgMTMsIDIyNiwgMjcsIAotICAgIDIwLCAxLCAyMjYsIDEzLCAyMjgsIDEwMSwgMjAsIDEsIDIyNiwgMTMsIDIxMywgMTgwLCAyMCwgMSwgMjI2LCAxMywgMjI2LCAKLSAgICA4NiwgMjAsIDEsIDIyNiwgMTMsIDIyMywgNTEsIDIwLCAxLCAyMjYsIDEzLCAyMjksIDY0LCAyMCwgMSwgMjI2LCAxMywgCi0gICAgMjIzLCAyMDQsIDIwLCAxLCAyMjYsIDEzLCAyMzQsIDE3MSwgMjAsIDEsIDIyNiwgMTMsIDIyOSwgOTMsIDIwLCAxLCAyMjYsIAotICAgIDEzLCAyMjksIDE0MSwgMjAsIDEsIDIyNiwgMTMsIDIyMCwgMTg3LCAyMCwgMSwgMjI2LCAxMywgMjI1LCAzMywgMjAsIDEsIAotICAgIDIyNiwgMTMsIDI0NCwgNiwgMjAsIDEsIDIyNiwgMTMsIDIxNCwgNDksIDIwLCAxLCAyMjYsIDEzLCAyMzMsIDEzLCAyMCwgMSwgCi0gICAgMjI2LCAxMywgMjMyLCAxNzQsIDIwLCAxLCAyMjYsIDEzLCAyMzQsIDM3LCAyMCwgMSwgMjI2LCAxMywgMjMxLCAxNzcsIDIwLCAKLSAgICAxLCAyMjYsIDEzLCAyMjMsIDIzMywgMjAsIDEsIDIyNiwgMTMsIDE4OCwgMjAsIDEsIDIyNiwgMTMsIDIzMCwgMjMxLCAyMCwgCi0gICAgMSwgMjI2LCAxMywgMjMxLCAxODUsIDIwLCAxLCAyMjYsIDEzLCAyMTcsIDE4MywgMjAsIDEsIDIyNiwgMTMsIDIzNCwgNCwgCi0gICAgMjAsIDEsIDIyNiwgMTMsIDIyMiwgMTY2LCAyMCwgMSwgMjI2LCAxMywgMjE0LCA5OCwgNTYsIDEsIDI1MywgMTkzLCA3NCwgCi0gICAgMTQyLCAxLCAyNTMsIDE5MywgMjEzLCAzOCwgNDcsIDI3LCAxNiwgMjI1LCAzOSwgNDcsIDI3LCAxNiwgMjQ4LCAxMDMsIDQ3LCAKLSAgICAyNywgMTYsIDIyNiwgNTAsIDQ3LCAyNywgMTYsIDIyNiwgMjM3LCAyNDUsIDEzNSwgNDcsIDI3LCAxNiwgMjI2LCAyMzcsIAotICAgIDI0NywgMTUzLCA0NywgMjcsIDE2LCAyMTQsIDI0OCwgMjQ1LCAxMzUsIDQ3LCAyNywgMTYsIDIxNCwgMjQ4LCAyNDcsIDE1MywgCi0gICAgNDcsIDI3LCAxNiwgMjM0LCAyMDIsIDQ3LCAyNywgMTYsIDIxOCwgMTE1LCA0NywgMjcsIDE2LCAyMjYsIDEzNywgNDcsIDI3LCAKLSAgICAxNiwgMjEyLCAyMDgsIDQ3LCAyNywgMTYsIDIxMiwgMjA5LCAyNDcsIDE1MywgNDcsIDI3LCAxNiwgMjMzLCAyNDMsIDQ3LCAKLSAgICAyNywgMTYsIDI1MywgMjM2LCAyNDUsIDEzNSwgNDcsIDI3LCAxNiwgMjQ0LCAyNDksIDI0NSwgMTM1LCA0NywgMjcsIDE2LCAKLSAgICAyMTcsIDIxMSwgNDcsIDI3LCAxNiwgMjM0LCAxNjcsIDQ3LCAyNywgMTYsIDI1MywgMjI3LCA0NywgMjcsIDE2LCAyNTMsIAotICAgIDIyOCwgMjQ3LCAxNTMsIDQ3LCAyNywgMTYsIDIxOCwgMTIxLCA0NywgMjcsIDE2LCAyMTcsIDExMiwgNDcsIDI3LCAxNiwgCi0gICAgMjI3LCA3MiwgMjUzLCAxOTEsIDQ3LCAyNywgMTYsIDI0MiwgMTM1LCAyNTMsIDE5MSwgNDcsIDI3LCAxNiwgMjI1LCAzOCwgCi0gICAgNDcsIDI3LCAxNiwgMjUwLCA4NSwgNDcsIDI3LCAxNiwgMjE0LCAyMzgsIDQ3LCAyNywgMTYsIDIzNSwgMTYyLCAyNTMsIAotICAgIDE5MSwgNDcsIDI3LCAxNiwgMjM0LCAxNjksIDI1MywgMTkxLCA0NywgMjcsIDE2LCAyMzQsIDE2OCwgMjUzLCAxOTEsIDQ3LCAKLSAgICAyNywgMTYsIDIyMiwgMTMxLCA0NywgMjcsIDE2LCAyMjYsIDEyOCwgNDcsIDI3LCAxNiwgMjE5LCA4NiwgMjUzLCAyMzAsIAotICAgIDQ3LCAyNywgMTYsIDIyNiwgMjM2LCAyNTMsIDE5MSwgNDcsIDI3LCAxNiwgMjE0LCAyNDcsIDI1MywgMTkxLCA0NywgMjcsIAotICAgIDE2LCAyNTMsIDIzMSwgMjUzLCAxOTEsIDQ3LCAyNywgMTYsIDI1MywgMjI1LCA0NywgMjcsIDE2LCAyMzQsIDQ2LCA0NywgCi0gICAgMjcsIDE2LCAyMjMsIDE5OSwgNDcsIDI3LCAxNiwgMjI1LCAyMzgsIDI1MywgMTkxLCA0NywgMjcsIDE2LCAyMTcsIDM2LCAKLSAgICA0NywgMjcsIDE2LCAyNTQsIDMwLCA0NywgMjcsIDE2LCAyMjIsIDc4LCA0NywgMjcsIDE2LCAyMTgsIDEyNCwgMjUzLCAxOTEsIAotICAgIDQ3LCAyNywgMTYsIDIxOCwgMTI0LCAyMzEsIDEwNywgMjE5LCA4NCwgNDcsIDI3LCAxNiwgMjI2LCAyMzEsIDI1MywgMTkxLCAKLSAgICA0NywgMjcsIDE2LCAyMTcsIDE0MywgNDcsIDI3LCAxNiwgMjMzLCA1MSwgNDcsIDI3LCAxNiwgMjQ1LCAyNTIsIDQ3LCAyNywgCi0gICAgMTYsIDIxNiwgMTg1LCA0NywgMjcsIDE2LCAyMTcsIDE4NSwgNDcsIDI3LCAxNiwgMjMzLCAyNDYsIDQ3LCAyNywgMTYsIAotICAgIDI1MywgMjM2LCAyNDQsIDI0OSwgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDI0MywgMjA3LCAyNTMsIDE5MSwgNDcsIDI3LCAxNiwgCi0gICAgMjM2LCA3LCA0NywgMjcsIDE2LCAyMTYsIDE1NywgMjUzLCAxOTEsIDQ3LCAyNywgMTYsIDIzNCwgMjA1LCAyMTYsIDE1NiwgCi0gICAgNDcsIDI3LCAxNiwgMjI2LCA3NSwgNDcsIDI3LCAxNiwgMjI1LCA0MywgNDcsIDI3LCAxNiwgMjM0LCAyMCwgNDcsIDI3LCAKLSAgICAxNiwgMjUwLCAxNywgMjUzLCAxOTEsIDQ3LCAyNywgMTYsIDIyNCwgMzgsIDQ3LCAyNywgMTYsIDIyNiwgMTQwLCAyNTMsIAotICAgIDE5MSwgNDcsIDI3LCAxNiwgMjI2LCAxMzgsIDI1MywgMTkxLCA0NywgMjcsIDE2LCAyNDAsIDEwMiwgNDcsIDI3LCAxNiwgCi0gICAgMjMwLCAyMywgNDcsIDI3LCAxNiwgMjI2LCAzMiwgNDcsIDI3LCAxNiwgMjM0LCAyMSwgMjU0LCA1OCwgNDcsIDI3LCAxNiwgCi0gICAgMjE2LCAxNTcsIDI1NCwgNTgsIDQ3LCAyNywgMTYsIDIxOSwgNjMsIDQ3LCAyNywgMTYsIDI0MiwgMTAxLCA0NywgMjcsIDE2LCAKLSAgICAyMzUsIDE2MiwgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDIyNywgNzIsIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyMjYsIDIzNywgCi0gICAgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDIyNiwgMzEsIDQ3LCAyNywgMTYsIDIzNCwgNywgNDcsIDI3LCAxNiwgMjI2LCAzMCwgCi0gICAgNDcsIDI3LCAxNiwgMjMzLCAyNDUsIDQ3LCAyNywgMTYsIDIyNiwgNzYsIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyMzQsIAotICAgIDE2OCwgMjI5LCAxNzgsIDI1NCwgNywgNDcsIDI3LCAxNiwgMjM0LCAxNjksIDIyOSwgMTc4LCAyNTQsIDcsIDQ3LCAyNywgCi0gICAgMTYsIDIxMiwgMjA2LCA0NywgMjcsIDE2LCAyNTMsIDIyOCwgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDI1MywgMjI5LCAyMTgsIAotICAgIDEyMiwgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDIxMiwgMjA3LCA0NywgMjcsIDE2LCAyMzMsIDI0NCwgNDcsIDI3LCAxNiwgCi0gICAgMjQ1LCAxMzAsIDQ3LCAyNywgMTYsIDI1MCwgODYsIDQ3LCAyNywgMTYsIDIzMSwgMTEsIDIzNSwgMTYxLCA0NywgMjcsIDE2LCAKLSAgICAyMTQsIDI0OCwgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDIyNSwgMjM4LCAyMjksIDE3NywgNDcsIDI3LCAxNiwgMjI1LCA0NCwgCi0gICAgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDIyNywgNjksIDQ3LCAyNywgMTYsIDI1MywgMjUxLCA0NywgMjcsIDE2LCAyMzIsIAotICAgIDExOCwgNDcsIDI3LCAxNiwgMjI2LCAxMzgsIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyMjYsIDE0MCwgMjI5LCAxNzcsIDQ3LCAKLSAgICAyNywgMTYsIDI0NSwgMjYsIDIyNiwgMTM5LCA0NywgMjcsIDE2LCAyMzMsIDE3NSwgNDcsIDI3LCAxNiwgMjUzLCAyNTIsIAotICAgIDQ3LCAyNywgMTYsIDIxNiwgMTU3LCAyMjksIDE3NywgNDcsIDI3LCAxNiwgMjQ1LCAxMzMsIDQ3LCAyNywgMTYsIDIxOCwgCi0gICAgMTI0LCAyMjksIDE3NywgNDcsIDI3LCAxNiwgMjE4LCAxMTYsIDQ3LCAyNywgMTYsIDI1MCwgMTcsIDIyOSwgMTc3LCA0NywgCi0gICAgMjcsIDE2LCAyNDUsIDY5LCA0NywgMjcsIDE2LCAyMjIsIDc5LCAyMjksIDE3NywgNDcsIDI3LCAxNiwgMjEzLCAxMzksIAotICAgIDIzNCwgNDYsIDQ3LCAyNywgMTYsIDIxNiwgMTU0LCA0NywgMjcsIDE2LCAyMjUsIDQ1LCA0NywgMjcsIDE2LCAyMTYsIDE1OCwgCi0gICAgNDcsIDI3LCAxNiwgMjE2LCAxNTUsIDQ3LCAyNywgMTYsIDIyNSwgNDIsIDQ3LCAyNywgMTYsIDIxNiwgMTUzLCA0NywgMjcsIAotICAgIDE2LCAyMjUsIDQxLCA0NywgMjcsIDE2LCAyNDIsIDEzNCwgNDcsIDI3LCAxNiwgMjUzLCAxODUsIDQ3LCAyNywgMTYsIDI0NSwgCi0gICAgMjYsIDI1MywgMTg1LCA0NywgMjcsIDE2LCAyMjYsIDIzMSwgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIDIxNywgMTQyLCAyNDUsIAotICAgIDM0LCA0NywgMjcsIDE2LCAyMTcsIDE0MiwgMjQ0LCAyNDgsIDQ3LCAyNywgMTYsIDIxNywgMTQ0LCAyNTMsIDIzMiwgNDcsIAotICAgIDI3LCAxNiwgMjE3LCAxMzcsIDIzNCwgMjUxLCAyNTMsIDIyNCwgNDcsIDI3LCAxNiwgMjM0LCAyMDQsIDQ3LCAyNywgMTYsIAotICAgIDI0NSwgOTcsIDQ3LCAyNywgMTYsIDIxMywgMiwgMjM0LCAyMDEsIDQ3LCAyNywgMTYsIDIxMywgMiwgMjU0LCA3LCA0NywgCi0gICAgMjcsIDE2LCAyMTksIDg1LCA0NywgMjcsIDE2LCAyMzQsIDQ3LCAyNTQsIDcsIDQ3LCAyNywgMTYsIDI0NywgMTU0LCAyNTMsIAotICAgIDE5MSwgNDcsIDI3LCAxNiwgMjMzLCAyNDcsIDI1MywgMTkxLCA0NywgMjcsIDE2LCAyMzMsIDI0NywgMjU0LCA1OCwgNDcsIAotICAgIDI3LCAxNiwgMjMzLCAyNDcsIDIyOSwgMTc3LCA0NywgMjcsIDE2LCAyNTMsIDIzMSwgMjI5LCAxNzcsIDQ3LCAyNywgMTYsIAotICAgIDI1MywgMjMzLCA0NywgMjcsIDE2LCAyNDcsIDE1MywgNDcsIDI3LCAxNiwgMjE2LCAxNjgsIDQ3LCAyNywgMTYsIDIxNywgCi0gICAgMTc3LCA0NywgMjcsIDE2LCAyMzQsIDExLCA0NywgMjcsIDE2LCAyMzMsIDU2LCAyNDUsIDkyLCAyNTAsIDgsIDQ3LCAyNywgCi0gICAgMTYsIDIzMywgNTYsIDI0NSwgMjUzLCAyNTAsIDksIDQ3LCAyNywgMTYsIDIzMywgNTYsIDIxNiwgMTcwLCAyNTAsIDksIDQ3LCAKLSAgICAyNywgMTYsIDIzMywgNTYsIDIxNywgMTg3LCAyNTAsIDksIDQ3LCAyNywgMTYsIDIzMywgNTYsIDIzNiwgMiwgMjUwLCA4LCAKLSAgICA0NywgMjcsIDE2LCAyNDIsIDEzNSwgMjI5LCAxNzgsIDI1NCwgNywgNDcsIDI3LCAxNiwgMjQyLCAxMzUsIDIyNiwgMTI5LCAKLSAgICAyNTMsIDE4MSwgNDcsIDI3LCAxNiwgMjQyLCAxMzUsIDIyNiwgMTI5LCAyNDcsIDIzNiwgNDcsIDI3LCAxNiwgMjQ3LCAxNzcsIAotICAgIDQ3LCAyNywgMTYsIDI0NywgMTc4LCAyMjYsIDEyOSwgMjUzLCAxODIsIDIzNCwgMjAxLCA0NywgMjcsIDE2LCAyNDcsIDE3OCwgCi0gICAgMjI2LCAxMjksIDI1MywgMTgyLCAyNTQsIDcsIDQ3LCAyNywgMTYsIDI0NywgMTc4LCAyMjYsIDEyOSwgMjQ3LCAyMzYsIDQ3LCAKLSAgICAyNywgMTYsIDIxNiwgMTc0LCA0NywgMjcsIDE2LCAyNTMsIDE4NiwgNDcsIDI3LCAxNiwgMjM2LCA5LCA0NywgMjcsIDE2LCAKLSAgICAyNDcsIDE5OCwgNDcsIDI3LCAxNiwgMjU0LCAxMTYsIDIyNSwgMTM0LCAyNTMsIDE4NywgNDcsIDI3LCAxNiwgMjU0LCAxMTYsIAotICAgIDI1MywgMTg0LCA0NywgMjcsIDE2LCAyNTQsIDExNiwgMjUzLCAxODcsIDQ3LCAyNywgMTYsIDI1NCwgMTE2LCAyMzEsIDEwMSwgCi0gICAgNDcsIDI3LCAxNiwgMjU0LCAxMTYsIDIzMSwgMTEwLCA0NywgMjcsIDE2LCAyNTQsIDExNiwgMjQyLCAxMzYsIDQ3LCAyNywgCi0gICAgMTYsIDI1NCwgMTE2LCAyNDIsIDEzMywgNDcsIDI3LCAxNiwgMjU0LCAxMTYsIDIyNSwgMTM0LCAyNDIsIDEzNiwgNDcsIDI3LCAKLSAgICAxNiwgMjMxLCAyMTQsIDIyNSwgNTAsIDI0MCwgMTAwLCA0NywgMjcsIDE2LCAyMzEsIDIxNCwgMjU0LCA2MCwgMjI1LCA1MCwgCi0gICAgMjQwLCAxMDAsIDQ3LCAyNywgMTYsIDIzMSwgMjE0LCAyNDcsIDIzNSwgMjQwLCAxMDAsIDQ3LCAyNywgMTYsIDIzMSwgMjE0LCAKLSAgICAyNTQsIDYwLCAyNDcsIDIzNSwgMjQwLCAxMDAsIDQ3LCAyNywgMTYsIDIzMSwgMjE0LCAyMTYsIDE2MywgMjQwLCAxMDAsIAotICAgIDQ3LCAyNywgMTYsIDIzMSwgMjE0LCAyMTYsIDE3NSwgNDcsIDI3LCAxNiwgMjMxLCAyMTQsIDIxNywgMTgxLCAyNDAsIDEwMCwgCi0gICAgNDcsIDI3LCAxNiwgMjMxLCAyMTQsIDIxNywgMTgxLCAyMzMsIDU5LCAyNDAsIDEwMCwgNDcsIDI3LCAxNiwgMjMxLCAyMTQsIAotICAgIDIzMywgNTksIDI0MCwgMTAwLCA0NywgMjcsIDE2LCAyMzEsIDIxNCwgMjI1LCAxNzEsIDI0MCwgMTAwLCA0NywgMjcsIDE2LCAKLSAgICAyMzUsIDE2NywgMjE3LCAyMDQsIDI0MCwgMTAxLCA0NywgMjcsIDE2LCAyNTMsIDIyOSwgMjE3LCAyMDQsIDI0MCwgMTAxLCAKLSAgICA0NywgMjcsIDE2LCAyNDQsIDE0MCwgMjE3LCAxNzgsIDQ3LCAyNywgMTYsIDI0NCwgMTQwLCAyMzAsIDIxMywgNDcsIDI3LCAKLSAgICAxNiwgMjQ0LCAxNDAsIDI0NywgMTgyLCA0NywgMjcsIDE2LCAyMzEsIDIxNCwgMjE0LCAyNDIsIDI0MCwgMTAwLCA0NywgMjcsIAotICAgIDE2LCAyMzEsIDIxNCwgMjI1LCA0OSwgMjQwLCAxMDAsIDQ3LCAyNywgMTYsIDIzMSwgMjE0LCAyMjUsIDE3MSwgMjE3LCAKLSAgICAxODEsIDI0MCwgMTAwLCA0NywgMjcsIDE2LCAyNDIsIDEzMSwgMjMwLCA5OCwgMjUzLCAyMzIsIDQ3LCAyNywgMTYsIDI0MiwgCi0gICAgMTMxLCAyMzAsIDk4LCAyNDcsIDE1MiwgNDcsIDI3LCAxNiwgMjQ1LCAxMDYsIDIzNCwgMjUxLCAyNDMsIDIwNywgMjE0LCAKLSAgICAxMDUsIDQ3LCAyNywgMTYsIDIzNiwgOCwgNDcsIDI3LCAxNiwgMjM2LCA2LCA0NywgMjcsIDE2LCAyNDMsIDIwNywgMjUzLCAKLSAgICAxOTIsIDI0NywgMjM0LCAyNDAsIDk5LCA0NywgMjcsIDE2LCAyNDMsIDIwNywgMjQ3LCAxOTYsIDE5MywgNDcsIDI3LCAxNiwgCi0gICAgMjQzLCAyMDcsIDI0NywgMTk2LCAyMzAsIDIzLCA0NywgMjcsIDE2LCAyNDMsIDIwNywgMjMwLCAxOCwgMjQwLCAxMDAsIDQ3LCAKLSAgICAyNywgMTYsIDI0MywgMjA3LCAyNDcsIDE5NiwgMjQ3LCAyMTEsIDQ3LCAyNywgMTYsIDI0MywgMjA3LCAyMjAsIDMwLCAyNDcsIAotICAgIDE5NSwgMjQ3LCAyMTEsIDQ3LCAyNywgMTYsIDI0MywgMjA3LCAyNDcsIDE5NiwgMjM0LCAxODgsIDQ3LCAyNywgMTYsIDI0MywgCi0gICAgMjA3LCAyNDcsIDE5NiwgMjEyLCAxNiwgNDcsIDI3LCAxNiwgMjQzLCAyMDcsIDI0NywgMTk2LCAyMjksIDY1LCAyMzQsIAotICAgIDIwMSwgNDcsIDI3LCAxNiwgMjQzLCAyMDcsIDI0NywgMTk2LCAyMjksIDY1LCAyNTQsIDcsIDQ3LCAyNywgMTYsIDI0MywgCi0gICAgMjA3LCAyMzEsIDI1NCwgMjUwLCAxMCwgMjQ3LCAxODIsIDQ3LCAyNywgMTYsIDI0MywgMjA3LCAyMzEsIDI1NCwgMjUwLCAKLSAgICAxMCwgMjMwLCAyMTMsIDQ3LCAyNywgMTYsIDI0NCwgOTEsIDIyMCwgMzAsIDI1MCwgMTAsIDIxNCwgMjQxLCA0NywgMjcsIAotICAgIDE2LCAyNDMsIDIwNywgMjIwLCAzMCwgMjUwLCAxMCwgMjE4LCAxMjUsIDQ3LCAyNywgMTYsIDI0MywgMjA3LCAyMjksIDE3OSwgCi0gICAgNDcsIDI3LCAxNiwgMjUwLCAxMSwgMjExLCAyNDgsIDQ3LCAyNywgMTYsIDI1MCwgMTEsIDIzNCwgNDUsIDQ3LCAyNywgMTYsIAotICAgIDI1MCwgMTEsIDIxOSwgMTk3LCA0NywgMjcsIDE2LCAyNDMsIDIwNywgMjQwLCAxNDYsIDIxMywgMSwgMjE3LCAxODIsIDQ3LCAKLSAgICAyNywgMTYsIDI0MywgMjA3LCAyNDUsIDEwNywgMjUzLCAyNTMsIDQ3LCAyNywgMTYsIDIxMywgMSwgMjE2LCAxNjQsIDQ3LCAKLSAgICAyNywgMTYsIDI0NywgMTkwLCAyMTYsIDE2NCwgNDcsIDI3LCAxNiwgMjQ3LCAxOTAsIDIxNywgMTgyLCA0NywgMjcsIDE2LCAKLSAgICAyNDcsIDE5MCwgMjUzLCAyMzQsIDI0NSwgMjUzLCAyNDcsIDkzLCA0NywgMjcsIDE2LCAyNDcsIDE5MCwgMjMwLCAyMTEsIAotICAgIDIxNywgMTg2LCAyNDcsIDkzLCA0NywgMjcsIDE2LCAyNDcsIDE5MCwgMjQ3LCAxNzQsIDI0NSwgMywgMjQ3LCA5MywgNDcsIAotICAgIDI3LCAxNiwgMjQ3LCAxOTAsIDIxNiwgMTcyLCAyMjcsIDc3LCAyNDcsIDkzLCA0NywgMjcsIDE2LCAyMTMsIDEsIDI1MywgCi0gICAgMjM0LCAyNDUsIDI1MywgMjQ3LCA5MywgNDcsIDI3LCAxNiwgMjEzLCAxLCAyMzAsIDIxMSwgMjE3LCAxODYsIDI0NywgOTMsIAotICAgIDQ3LCAyNywgMTYsIDIxMywgMSwgMjQ3LCAxNzQsIDI0NSwgMywgMjQ3LCA5MywgNDcsIDI3LCAxNiwgMjEzLCAxLCAyMTYsIAotICAgIDE3MiwgMjI3LCA3NywgMjQ3LCA5MywgNDcsIDI3LCAxNiwgMjQzLCAyNSwgMjQ3LCAxODksIDQ3LCAyNywgMTYsIDI0MywgCi0gICAgMjUsIDIxMywgMCwgNDcsIDI3LCAxNiwgMjQ3LCAxOTcsIDI1MywgMjM0LCAyMzEsIDEyLCA0NywgMjcsIDE2LCAyNDcsIAotICAgIDE5NywgMjUzLCAyMzQsIDIzMSwgMTM3LCA0NywgMjcsIDE2LCAyNDcsIDE5NywgMjQ3LCAxNTMsIDQ3LCAyNywgMTYsIDI0NywgCi0gICAgMTk3LCAyMTcsIDEzNSwgNDcsIDI3LCAxNiwgMjIwLCA4OSwgMjE3LCAxMzUsIDQ3LCAyNywgMTYsIDIyMCwgODksIDIxNywgCi0gICAgMTM2LCAyNDcsIDEzOCwgNDcsIDI3LCAxNiwgMjIwLCA4OSwgMjE3LCAxMzYsIDIxNiwgMTY1LCA0NywgMjcsIDE2LCAyMjAsIAotICAgIDg5LCAyMTcsIDEzNiwgMjE3LCAxNzUsIDQ3LCAyNywgMTYsIDIyMCwgODksIDI1MywgMTU5LCA0NywgMjcsIDE2LCAyMjAsIAotICAgIDg5LCAyNTMsIDE2MCwgMjQ3LCAxMzgsIDQ3LCAyNywgMTYsIDIyMCwgODksIDI1MywgMTYwLCAyMTYsIDE2NSwgNDcsIDI3LCAKLSAgICAxNiwgMjIwLCA4OSwgMjUzLCAxNjAsIDIxNywgMTc1LCA0NywgMjcsIDE2LCAyNDcsIDE3NSwgMjQzLCA2LCA0NywgMjcsIAotICAgIDE2LCAyNDcsIDE4MSwgMjI3LCAyLCA0NywgMjcsIDE2LCAyMTksIDc3LCA0NywgMjcsIDE2LCAyNTMsIDE3OCwgMTkzLCA0NywgCi0gICAgMjcsIDE2LCAyNTMsIDE3OCwgMjE0LCAxMDUsIDQ3LCAyNywgMTYsIDI1MywgMTc4LCAyNDMsIDExMCwgNDcsIDI3LCAxNiwgCi0gICAgMjUzLCAxNzgsIDI0NywgMjExLCA0NywgMjcsIDE2LCAyNTMsIDE3OCwgMjM0LCAxODgsIDQ3LCAyNywgMTYsIDI1MywgMTc4LCAKLSAgICAyMTIsIDE2LCA0NywgMjcsIDE2LCAyNTMsIDE3OCwgMjI5LCA2NCwgNDcsIDI3LCAxNiwgMjM0LCAxNjgsIDIyOSwgMTc4LCAKLSAgICAyMzEsIDEwOSwgNDcsIDI3LCAxNiwgMjM0LCAxNjksIDIyOSwgMTc4LCAyMzEsIDEwOSwgNDcsIDI3LCAxNiwgMjM0LCAxNjgsIAotICAgIDIyOSwgMTc4LCAyMzQsIDIwMSwgNDcsIDI3LCAxNiwgMjM0LCAxNjksIDIyOSwgMTc4LCAyMzQsIDIwMSwgNDcsIDI3LCAxNiwgCi0gICAgMjM0LCA0NywgMjM0LCAyMDEsIDQ3LCAyNywgMTYsIDI0MiwgMTM1LCAyMjksIDE3OCwgMjM0LCAyMDEsIDI3LCAxNiwgMjIwLCAKLSAgICA4MSwgMjUyLCA1NSwgMjcsIDE2LCA1MSwgMjUyLCA1NSwgMjcsIDE2LCA0MCwgMjUyLCA1NSwgMjcsIDE2LCAyMjMsIDIwMywgCi0gICAgNDAsIDI1MiwgNTUsIDI3LCAxNiwgMjQ4LCAxMDAsIDI1MiwgNTUsIDI3LCAxNiwgMjIwLCAxNzUsIDI1MiwgNTUsIDI3LCAKLSAgICAxNiwgNDIsIDIyMywgMjI4LCA1MiwgMjcsIDE2LCA0NiwgMjIzLCAyMjgsIDUyLCAyNywgMTYsIDIyMywgMjI4LCAyNDcsIAotICAgIDcyLCAyNywgMTYsIDI0OCwgMTQxLCAyMjIsIDgyLCAyNywgMTYsIDI0OCwgMTY1LCAyNTAsIDE4MSwgMjcsIDE2LCAyMjIsIAotICAgIDgyLCAyNywgMTYsIDI0OSwgMTcxLCAyNywgMTYsIDIyMywgMjI2LCAyNDQsIDgwLCAyNywgMTYsIDIyMywgMjI2LCAyNDQsIAotICAgIDc5LCAyNywgMTYsIDIyMywgMjI2LCAyNDQsIDc4LCAyNywgMTYsIDI0NCwgMTAwLCAyNywgMTYsIDI0NCwgMTAxLCA1NSwgCi0gICAgMjcsIDE2LCAyNTEsIDc2LCA3NywgMjcsIDE2LCAyNTAsIDIxMCwgMjcsIDE2LCAyNTEsIDg2LCAyNywgMTYsIDEyNSwgMjcsIAotICAgIDE2LCAyMjcsIDU5LCAyMTksIDEwMiwgMjcsIDE2LCAyMTYsIDIzLCAyMTksIDEwMiwgMjcsIDE2LCAyMTcsIDk2LCAyMTksIAotICAgIDEwMiwgMjcsIDE2LCAyNDMsIDIzNiwgMjE5LCAxMDIsIDI3LCAxNiwgMjQ0LCA0OSwgMjE5LCAxMDIsIDI3LCAxNiwgMjIwLCAKLSAgICA1MiwgMjE5LCAxMDIsIDI3LCAxNiwgMjIwLCA1MCwgMjQzLCAyMjAsIDI3LCAxNiwgMjQzLCAyMzQsIDI0MywgMjIwLCAyNywgCi0gICAgMTYsIDI0MywgMTc4LCAyNDksIDIwNywgMjcsIDE2LCAyNDMsIDE3OCwgMjQ5LCAyMDgsIDIyNywgNCwgMjU0LCA1MSwgMjcsIAotICAgIDE2LCAyNDMsIDE3OCwgMjQ5LCAyMDgsIDIyNywgNCwgMjUyLCA0MiwgMjcsIDE2LCAyNTAsIDI1MywgMjQ5LCAyMDcsIDI3LCAKLSAgICAxNiwgMjQ0LCAyMzEsIDI0OSwgMjA3LCAyNywgMTYsIDI0NCwgMjMxLCAyNDksIDIwOCwgMjI3LCA0LCAyNTQsIDUxLCAyNywgCi0gICAgMTYsIDI0NCwgMjMxLCAyNDksIDIwOCwgMjI3LCA0LCAyNTIsIDQyLCAyNywgMTYsIDI0NiwgMzgsIDI0OSwgMjA2LCAyNywgCi0gICAgMTYsIDI0NiwgMzgsIDI0OSwgMjA1LCAyNywgMTYsIDIzMCwgMTU1LCAyMzEsIDE1NSwgMjIzLCAyMTMsIDI3LCAxNiwgNTEsIAotICAgIDIyMCwgMjU0LCAyNywgMTYsIDUxLCAyNDQsIDM0LCAyNywgMTYsIDI0NCwgMzUsIDIxNSwgMTM0LCAyNywgMTYsIDI0NCwgCi0gICAgMzUsIDI0NiwgNjAsIDI3LCAxNiwgMjMwLCA5LCAyMTUsIDEzNCwgMjcsIDE2LCAyMzAsIDksIDI0NiwgNjAsIDI3LCAxNiwgCi0gICAgMjIwLCAyNTUsIDIxNSwgMTM0LCAyNywgMTYsIDIyMCwgMjU1LCAyNDYsIDYwLCAyNywgMTYsIDIyNCwgMTY3LCAxNjAsIAotICAgIDIyMCwgMjU0LCAyNywgMTYsIDIyNCwgMTY3LCAxNjAsIDI0NCwgMzQsIDI3LCAxNiwgMjQ5LCAxNTUsIDIxNywgNDAsIDI3LCAKLSAgICAxNiwgMjQ5LCAyNywgMjE3LCA0MCwgMjcsIDE2LCAyMjcsIDQsIDI1NCwgNTEsIDI3LCAxNiwgMjI3LCA0LCAyNTIsIDQyLCAKLSAgICAyNywgMTYsIDIyNCwgMTQ5LCAyNTQsIDUxLCAyNywgMTYsIDIyNCwgMTQ5LCAyNTIsIDQyLCAyNywgMTYsIDIzMCwgMTU4LCAKLSAgICAyMjMsIDIxMywgMjcsIDE2LCAyMTMsIDIzNiwgMjIzLCAyMTMsIDI3LCAxNiwgMTUxLCAyMjMsIDIxMywgMjcsIDE2LCAyMjQsIAotICAgIDE2NywgMjIzLCAyMTMsIDI3LCAxNiwgMjQ1LCAxNDYsIDIyMywgMjEzLCAyNywgMTYsIDIyMCwgNDYsIDIyMywgMjEzLCAyNywgCi0gICAgMTYsIDIxNywgMTEzLCAyMjMsIDIxMywgMjcsIDE2LCAyMjAsIDM4LCAyMjMsIDIxMywgMjcsIDE2LCAxMjIsIDI0MCwgMjAxLCAKLSAgICAyMTYsIDM2LCAyMjMsIDIxMywgMjcsIDE2LCAyMTMsIDE2NywgMjI4LCAxNTQsIDI3LCAxNiwgOTQsIDIyOCwgMTU0LCAyNywgCi0gICAgMTYsIDI0OSwgMjI5LCAyMTMsIDE2NywgMjI4LCAxNTQsIDI3LCAxNiwgNDEsIDIyOCwgMTU1LCAyMTMsIDIzOCwgMjcsIDE2LCAKLSAgICA0MSwgMjI4LCAxNTUsIDI1MSwgMTQ0LCAyNywgMTYsIDIxNiwgMTg0LCAyMjgsIDE1NSwgMTE0LCAyMTMsIDIzOCwgMjcsIAotICAgIDE2LCAyMTYsIDE4NCwgMjI4LCAxNTUsIDExNCwgMjUxLCAxNDQsIDI3LCAxNiwgMjE2LCAxODQsIDIyOCwgMTU1LCA0MiwgCi0gICAgMjEzLCAyMzgsIDI3LCAxNiwgMjE2LCAxODQsIDIyOCwgMTU1LCA0MiwgMjUxLCAxNDQsIDI3LCAxNiwgMjE2LCAxODQsIAotICAgIDIyOCwgMTU1LCA0NiwgMjEzLCAyMzgsIDI3LCAxNiwgMjE2LCAxODQsIDIyOCwgMTU1LCA0NiwgMjUxLCAxNDQsIDI3LCAxNiwgCi0gICAgMjE2LCAxODQsIDIyOCwgMTU1LCAxMTksIDIxMywgMjM4LCAyNywgMTYsIDIxNiwgMTg0LCAyMjgsIDE1NSwgMTE5LCAyNTEsIAotICAgIDE0NCwgMjcsIDE2LCAyMTYsIDE4NCwgMjI4LCAxNTUsIDExNCwgNDYsIDIxMywgMjM4LCAyNywgMTYsIDIxNiwgMTg0LCAKLSAgICAyMjgsIDE1NSwgMTE0LCA0NiwgMjUxLCAxNDQsIDI3LCAxNiwgMjMwLCAxOTksIDIyOCwgMTU1LCAyMTMsIDIzOCwgMjcsIAotICAgIDE2LCAyMzAsIDE5OSwgMjI4LCAxNTUsIDI1MSwgMTQ0LCAyNywgMTYsIDIxNiwgMTgxLCAyMjgsIDE1NSwgMTE5LCAyMTMsIAotICAgIDIzOCwgMjcsIDE2LCAyMTYsIDE4MSwgMjI4LCAxNTUsIDExOSwgMjUxLCAxNDQsIDI3LCAxNiwgMjI2LCAxMzIsIDIyOCwgCi0gICAgMTU0LCAyNywgMTYsIDIxNCwgMTEzLCAyMjgsIDE1NCwgMjcsIDE2LCAyMjgsIDE1NSwgMjUxLCAxNDQsIDI3LCAxNiwgMjI4LCAKLSAgICA1OSwgMjI4LCAxNTQsIDI3LCAxNiwgMjQ5LCAxNzgsIDIyOCwgMTU1LCAyMTMsIDIzOCwgMjcsIDE2LCAyNDksIDE3OCwgCi0gICAgMjI4LCAxNTUsIDI1MSwgMTQ0LCAyNywgMTYsIDI1MSwgNzQsIDI3LCAxNiwgMjEzLCAyMzYsIDIyOCwgMTU4LCAyNywgMTYsIAotICAgIDE1MSwgMjI4LCAxNTgsIDI3LCAxNiwgMjI0LCAxNjcsIDIyOCwgMTU4LCAyNywgMTYsIDI0NSwgMTQ2LCAyMjgsIDE1OCwgCi0gICAgMjcsIDE2LCAyMjAsIDQ2LCAyMjgsIDE1OCwgMjcsIDE2LCAyMTcsIDExMywgMjI4LCAxNTgsIDI3LCAxNiwgMjIwLCAzOCwgCi0gICAgMjI4LCAxNTgsIDI3LCAxNiwgMTIyLCAyNDAsIDIwMSwgMjE2LCAzNiwgMjI4LCAxNTgsIDI3LCAxNiwgMzcsIDIxOSwgNzksIAotICAgIDI3LCAxNiwgMzcsIDIxOSwgMTcyLCAyMTksIDc5LCAyNywgMTYsIDM3LCAyMTYsIDE5MiwgMjcsIDE2LCAzNywgMjE2LCAKLSAgICAxOTEsIDI3LCAxNiwgMzcsIDIxNiwgMTkwLCAyNywgMTYsIDI0NCwgNzAsIDIxNiwgMTkyLCAyNywgMTYsIDI0NCwgNzAsIAotICAgIDIxNiwgMTkxLCAyNywgMTYsIDI0NCwgNzAsIDIxNiwgMTkwLCAyNywgMTYsIDM3LCAyNTMsIDEwNSwgMjQ3LCA3NCwgMjcsIAotICAgIDE2LCAzNywgMjQ0LCA0MSwgMjcsIDE2LCAzNywgMjQ0LCA0MCwgMjcsIDE2LCAzNywgMjQ0LCAzOSwgMjcsIDE2LCAzNywgCi0gICAgMjQ0LCAzOCwgMjcsIDE2LCAzNywgMjQ0LCAzNywgMjcsIDE2LCAyNTEsIDIzNCwgMjUxLCAyNTAsIDI3LCAxNiwgMjQ1LCAKLSAgICAxMDEsIDI1MSwgMjUwLCAyNywgMTYsIDI1MSwgMjM0LCAyMTcsIDY1LCAyNywgMTYsIDI0NSwgMTAxLCAyMTcsIDY1LCAyNywgCi0gICAgMTYsIDI1MSwgMjM0LCAyMjAsIDgsIDI3LCAxNiwgMjQ1LCAxMDEsIDIyMCwgOCwgMjcsIDE2LCAyNTEsIDIzNCwgMjI1LCAKLSAgICAyNDcsIDI3LCAxNiwgMjQ1LCAxMDEsIDIyNSwgMjQ3LCAyNywgMTYsIDM3LCAyNTQsIDE3NCwgMjcsIDE2LCAzNywgMjE5LCAKLSAgICAxMDQsIDI3LCAxNiwgMzcsIDIxNywgMTkxLCAyNywgMTYsIDM3LCAyMTksIDEwNSwgMjcsIDE2LCAzNywgMjMxLCAyMjUsIAotICAgIDI3LCAxNiwgMzcsIDIzMSwgMjI0LCAyNywgMTYsIDM3LCAyNTQsIDE3MywgMjcsIDE2LCAzNywgMjMyLCAxNjcsIDI3LCAxNiwgCi0gICAgMjUzLCAxNjksIDIxNSwgMTM0LCAyNywgMTYsIDI1MywgMTY5LCAyNDYsIDYwLCAyNywgMTYsIDM3LCAyNDcsIDg5LCAyNywgCi0gICAgMTYsIDM3LCAyMjMsIDEyOCwgMjcsIDE2LCAzNywgMjQ0LCAyNywgMjcsIDE2LCAzNywgMjIwLCA0LCAyNywgMTYsIDM3LCAKLSAgICAyNTEsIDIxNSwgMjcsIDE2LCAzNywgNTEsIDIxNiwgMjMyLCAyNywgMTYsIDM3LCAyMTYsIDE2OSwgMjE2LCAyMzIsIDI3LCAKLSAgICAxNiwgMjIzLCAxMzIsIDI3LCAxNiwgMjE5LCAyMCwgMjcsIDE2LCAyMTIsIDE1MiwgMjcsIDE2LCAyMjUsIDIzOSwgMjcsIAotICAgIDE2LCAyMzEsIDkyLCAyNywgMTYsIDI0MywgMjQyLCAyNywgMTYsIDI0OSwgNzgsIDI3LCAxNiwgMjQ4LCAyOSwgMjcsIDE2LCAKLSAgICAyNDIsIDEyNiwgMjI4LCAxNTksIDIyMCwgMjMsIDI3LCAxNiwgMjQyLCAxMjYsIDIyOCwgMTU5LCAyMjgsIDE4NiwgMjIwLCAKLSAgICAyMywgMjcsIDE2LCAyMTYsIDIxMywgMjcsIDE2LCAyMTYsIDU5LCAyNywgMTYsIDIzNSwgMTkxLCAyMTYsIDU5LCAyNywgMTYsIAotICAgIDIxNiwgNjAsIDIyMCwgMjMsIDI3LCAxNiwgMjE2LCA2MCwgMjE1LCAxMzQsIDI3LCAxNiwgMjI3LCAxNSwgMjE5LCA0NCwgCi0gICAgMjcsIDE2LCAyMjcsIDE1LCAyMTksIDQxLCAyNywgMTYsIDIyNywgMTUsIDIxOSwgNDAsIDI3LCAxNiwgMjI3LCAxNSwgMjE5LCAKLSAgICAzOSwgMjcsIDE2LCAyMjcsIDE1LCAyMTksIDM4LCAyNywgMTYsIDIyNywgMTUsIDIxOSwgMzcsIDI3LCAxNiwgMjI3LCAxNSwgCi0gICAgMjE5LCAzNiwgMjcsIDE2LCAyMjcsIDE1LCAyMTksIDM1LCAyNywgMTYsIDIyNywgMTUsIDIxOSwgMzQsIDI3LCAxNiwgMjI3LCAKLSAgICAxNSwgMjE5LCA0MywgMjcsIDE2LCAyMjcsIDE1LCAyMTksIDQyLCAyNywgMTYsIDI0MSwgMjI5LCAyNywgMTYsIDIyOSwgCi0gICAgMTg2LCAyNywgMTYsIDI0NSwgMTAxLCA2NSwgMjE5LCA3MywgMjcsIDE2LCAyNDgsIDIyLCAyMjAsIDIzLCAyNywgMTYsIDM3LCAKLSAgICAxMTksIDI1MSwgOTUsIDI3LCAxNiwgMzcsIDExNCwgMjUxLCA5NSwgMjcsIDE2LCAzNywgMjQxLCAyMzksIDI3LCAxNiwgMzcsIAotICAgIDIxOSwgMjUxLCAyMjUsIDE3NSwgMjcsIDE2LCAyMjYsIDkxLCA3NywgMjcsIDE2LCAyMjYsIDkxLCAxMTQsIDc3LCAyNywgCi0gICAgMTYsIDE1MSwgMjI2LCA5MSwgNzcsIDI3LCAxNiwgMjQyLCAxNTgsIDIxNSwgMTM0LCAyNywgMTYsIDI0MiwgMTU4LCAyNDYsIAotICAgIDYwLCAyNywgMTYsIDIsIDI0NCwgNjksIDI3LCAxNiwgMjQ4LCAxMjUsIDI3LCAxNiwgMjQ4LCAxMjYsIDI1NCwgNjMsIDI3LCAKLSAgICAxNiwgMjMxLCAxOTcsIDI3LCAxNiwgMjMyLCAxODIsIDI3LCAxNiwgMjUxLCA3MSwgMjcsIDE2LCAyMjEsIDc0LCAyMTMsIAotICAgIDIzOCwgMjcsIDE2LCAyMjEsIDc0LCAyNTEsIDE0NCwgMjcsIDE2LCAyMzAsIDI1MywgMjcsIDE2LCAyMzAsIDI1NCwgMjUxLCAKLSAgICAxNDQsIDI3LCAxNiwgMjIxLCA2OCwgMjEzLCAyMzgsIDI3LCAxNiwgMjIxLCA2OCwgMjUxLCAxNDQsIDI3LCAxNiwgMjQzLCAKLSAgICAxOTIsIDIxMywgMjM4LCAyNywgMTYsIDI0MywgMTkyLCAyNTEsIDE0NCwgMjcsIDE2LCAyMzIsIDE4MywgMjI2LCA1NSwgCi0gICAgMjIzLCAyMTMsIDI3LCAxNiwgMjMyLCAxODMsIDIzNiwgMCwgMjIzLCAyMTMsIDI3LCAxNiwgMjUxLCA3MiwgMjIzLCAyMTMsIAotICAgIDI3LCAxNiwgMjIxLCA3NCwgMjIzLCAyMTMsIDI3LCAxNiwgMjMwLCAyNTQsIDIyMywgMjEzLCAyNywgMTYsIDIyMSwgNjgsIAotICAgIDIyMywgMjEzLCAyNywgMTYsIDIxNywgMjAyLCAyMjYsIDUzLCAyNDksIDQ4LCAyMjUsIDU4LCAyMjYsIDU0LCAyNywgMTYsIAotICAgIDIxNywgMjAyLCAyMjYsIDUzLCAyNDksIDQ4LCAyMjUsIDU4LCAyMzUsIDI1NSwgMjcsIDE2LCAyMTcsIDIwMiwgMjI2LCA1MywgCi0gICAgMjQ5LCA0OCwgMjI1LCA1OCwgMjI2LCA1NSwgMjQ3LCAxNjMsIDI3LCAxNiwgMjE3LCAyMDIsIDIzNSwgMjU0LCAyNDksIDQ4LCAKLSAgICAyMjUsIDU4LCAyMjYsIDU0LCAyNywgMTYsIDIxNywgMjAyLCAyMzUsIDI1NCwgMjQ5LCA0OCwgMjI1LCA1OCwgMjM1LCAyNTUsIAotICAgIDI3LCAxNiwgMjE3LCAyMDIsIDIzNSwgMjU0LCAyNDksIDQ4LCAyMjUsIDU4LCAyMzYsIDAsIDI0NywgMTYzLCAyNywgMTYsIAotICAgIDIxNywgMjAyLCAyMzUsIDI1NCwgMjQ5LCA0OCwgMjI1LCA1OCwgMjM2LCAwLCAyNDcsIDE2MiwgMjcsIDE2LCAyMTcsIDIwMiwgCi0gICAgMjM1LCAyNTQsIDI0OSwgNDgsIDIyNSwgNTgsIDIzNiwgMCwgMjQ3LCAxNjEsIDI3LCAxNiwgMjQ5LCA3MywgMjcsIDE2LCAKLSAgICAyNDIsIDEwMywgMjUwLCAyNTMsIDI0OSwgMjA3LCAyNywgMTYsIDI0MiwgMTAzLCAyNDQsIDIzMSwgMjQ5LCAyMDcsIDI3LCAKLSAgICAxNiwgNDEsIDI1MywgNzQsIDI3LCAxNiwgMjE0LCAxMzIsIDI3LCAxNiwgMjI1LCAxNDgsIDI3LCAxNiwgMjQ5LCAxOTgsIAotICAgIDI3LCAxNiwgMjIyLCAxMjEsIDI3LCAxNiwgMjQ5LCAyMDIsIDI3LCAxNiwgMjE2LCAyMjAsIDI3LCAxNiwgMjI1LCAxMjIsIAotICAgIDI3LCAxNiwgMjI1LCAxMjMsIDI0NCwgMjksIDI3LCAxNiwgMjIyLCAxMjIsIDI0NCwgMjksIDI3LCAxNiwgMjE2LCAyMjEsIAotICAgIDIyMywgMjEwLCAyNywgMTYsIDIyNiwgMzksIDIxOSwgMTEsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDE3NCwgMjUsIDIxNCwgCi0gICAgMTE4LCAxNzQsIDIxOCwgMTYzLCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxNTMsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIAotICAgIDE0NiwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTM4LCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxMzIsIDI1LCAyMTQsIAotICAgIDExOCwgMTc0LCAyMTgsIDEzMSwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTMwLCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAKLSAgICAxMjksIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDE3MywgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTcyLCAyNSwgMjE0LCAKLSAgICAxMTgsIDE3NCwgMjE4LCAxNzEsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDE3MCwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgCi0gICAgMTY5LCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxNjgsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDE2NywgMjUsIDIxNCwgCi0gICAgMTE4LCAxNzQsIDIxOCwgMTY2LCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxNjUsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIAotICAgIDE2NCwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTYyLCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAxNjEsIDI1LCAyMTQsIAotICAgIDExOCwgMTc0LCAyMTgsIDE2MCwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTU5LCAyNSwgMjE0LCAxMTgsIDE3NCwgMjE4LCAKLSAgICAxNTgsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDEzNywgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgMTM2LCAyNSwgMjE0LCAKLSAgICAxMTgsIDE3NCwgMjE4LCAxMzUsIDI1LCAyMTQsIDExOCwgMTc0LCAyMTgsIDEzNCwgMjUsIDIxNCwgMTE4LCAxNzQsIDIxOCwgCi0gICAgMTMzLCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNzQsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE2MywgMjUsIDIzNSwgCi0gICAgMjExLCAxNzQsIDIxOCwgMTQ2LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxMzgsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIAotICAgIDEzMSwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTMwLCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNzIsIDI1LCAyMzUsIAotICAgIDIxMSwgMTc0LCAyMTgsIDE3MSwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTcwLCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAKLSAgICAxNjksIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE2NiwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTY1LCAyNSwgMjM1LCAKLSAgICAyMTEsIDE3NCwgMjE4LCAxNjQsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE1OSwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgCi0gICAgMTU4LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNTcsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE1NiwgMjUsIDIzNSwgCi0gICAgMjExLCAxNzQsIDIxOCwgMTU1LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNTQsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIAotICAgIDE1MiwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTUxLCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNTAsIDI1LCAyMzUsIAotICAgIDIxMSwgMTc0LCAyMTgsIDE0OSwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTQ4LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAKLSAgICAxNDcsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE0NSwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTQ0LCAyNSwgMjM1LCAKLSAgICAyMTEsIDE3NCwgMjE4LCAxNDMsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDE0MiwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgCi0gICAgMTQxLCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxNDAsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIDEzOSwgMjUsIDIzNSwgCi0gICAgMjExLCAxNzQsIDIxOCwgMTM3LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxMzYsIDI1LCAyMzUsIDIxMSwgMTc0LCAyMTgsIAotICAgIDEzNSwgMjUsIDIzNSwgMjExLCAxNzQsIDIxOCwgMTM0LCAyNSwgMjM1LCAyMTEsIDE3NCwgMjE4LCAxMzMsIDM3LCAyNSwgCi0gICAgMjcsIDIxNiwgMTY2LCAzNywgMjUsIDI3LCAyMTcsIDE3NiwgMzcsIDI1LCAyNywgMjI2LCA2MywgMjUsIDI3LCAyMzMsIDU1LCAKLSAgICAyMzAsIDIxMiwgMzEsIDI0NSwgMTc5LCAyNDcsIDE3NiwgMzEsIDI0MSwgMjA2LCAyNDUsIDE3OSwgMjQ3LCAxNzYsIDMxLCAKLSAgICAyNDAsIDIwNCwgMjQ1LCAxNzksIDI0NywgMTc2LCAzMSwgMjQ1LCAxNzgsIDI0MSwgMjA3LCAyNDcsIDE3NiwgMzEsIDI0NSwgCi0gICAgMTc4LCAyNDAsIDIwMywgMjQ3LCAxNzYsIDMxLCAyNDUsIDE3OSwgMTcwLCAzMSwgMjUwLCAxMDgsIDE3MCwgMzEsIDI0MywgCi0gICAgMjAwLCAyNDksIDIyOCwgMTcwLCAzMSwgMjMwLCAyNDYsIDE3MCwgMzEsIDI1MiwgNTAsIDE3MCwgMzEsIDIzNCwgMTg1LCAKLSAgICAyMjAsIDcsIDE3MCwgMzEsIDI0OSwgMTE4LCAxNzAsIDMxLCAyNTMsIDE0OCwgMTcwLCAzMSwgMjI3LCAyOSwgMTcwLCAzMSwgCi0gICAgMjUxLCA4MCwgMjI2LCAyNTQsIDE3MCwgMzEsIDI0OCwgMjQsIDE2NywgMjQ3LCAxMzEsIDE3MCwgMzEsIDI0NywgMTI4LCAKLSAgICAxNzAsIDMxLCAyMTIsIDIxMywgMTcwLCAzMSwgMjM1LCAyNDMsIDE3MCwgMzEsIDIyNiwgNzIsIDE3MCwgMzEsIDIyNCwgMjAsIAotICAgIDE3MCwgMzEsIDI0OSwgMTI4LCAxNzAsIDMxLCAyNDEsIDQ2LCAyNTIsIDEwMSwgMTcwLCAzMSwgMjE0LCA0MywgMTcwLCAzMSwgCi0gICAgMjQ0LCA4LCAxNzAsIDMxLCAyNTQsIDE1MSwgMTcwLCAzMSwgMjIzLCAyMzksIDE3MCwgMzEsIDIyMywgMjE3LCAxNzAsIDMxLCAKLSAgICAyNDUsIDE3NywgMTcwLCAzMSwgMjM1LCA1NiwgMTcwLCAzMSwgMjQ5LCAxMjMsIDE3MCwgMzEsIDI0NSwgMTAwLCAxNzAsIAotICAgIDMxLCAyNDYsIDcsIDE3MCwgMzEsIDI1MCwgODEsIDE3MCwgMzEsIDI0OCwgMzMsIDE3MCwgMzEsIDIyLCAyMjMsIDIxNiwgCi0gICAgMTcwLCAzMSwgMjI2LCAyMDUsIDE3MCwgMzEsIDIzMywgNTgsIDE3MCwgMzEsIDI0OSwgMTkxLCAxNzAsIDMxLCAyMzQsIDg2LCAKLSAgICAxNzAsIDMxLCAyNDMsIDYyLCAxNzAsIDMxLCAyMTksIDUyLCAxNzAsIDMxLCAyMjUsIDE2LCAxNzAsIDMxLCAyNDMsIDE5OSwgCi0gICAgMTcwLCAzMSwgMjIzLCAyMTgsIDE3MCwgMzEsIDIzMywgOTUsIDE2NywgMjMwLCAyMjcsIDE3MCwgMzEsIDIyMywgMjE0LCAKLSAgICAxNzAsIDMxLCAyNDIsIDE0NCwgMjExLCAyMTEsIDIzMSwgMTQxLCAxNzAsIDMxLCAyNDUsIDEwMiwgMTcwLCAzMSwgMjE5LCAKLSAgICA2NCwgMTcwLCAzMSwgMjQyLCAxMDUsIDE3MCwgMzEsIDI0NSwgOTQsIDE3MCwgMzEsIDIyNiwgMTA4LCAxNzAsIDMxLCAyMjMsIAotICAgIDEyMiwgMTcwLCAzMSwgMjQ0LCAyOCwgMTcwLCAzMSwgMjE0LCAyNDAsIDE2NywgMjE0LCAyOCwgMTcwLCAzMSwgMjQ5LCAKLSAgICAxMzIsIDE3MCwgMzEsIDIzMSwgMTU0LCAxNzAsIDMxLCAyNDUsIDI3LCAxNzAsIDMxLCAyMTUsIDE0MywgMTcwLCAzMSwgCi0gICAgMjQ3LCAxNjQsIDE3MCwgMzEsIDI0OSwgMTkzLCAyMzAsIDE4MCwgMTcwLCAzMSwgMjQyLCA4NywgMTcwLCAzMSwgMjQzLCAKLSAgICA2MywgMjM1LCAyNTEsIDE3MCwgMzEsIDIzMSwgMjA0LCAxNzAsIDMxLCAyNTQsIDE3MCwgMTcwLCAzMSwgMjQ1LCAxMTUsIAotICAgIDE3MCwgMzEsIDI0NiwgNjMsIDE3MCwgMzEsIDIxNCwgMjYsIDE3MCwgMzEsIDIyMCwgNzgsIDE3MCwgMzEsIDIzNSwgMjE5LCAKLSAgICAxNzAsIDMxLCAyNDcsIDI0OSwgMTcwLCAzMSwgMjQ4LCAxMDUsIDE3MCwgMzEsIDI0NywgMTYwLCAxNzAsIDMxLCAyNDQsIAotICAgIDI1MiwgMTcwLCAzMSwgMjIxLCAzNiwgMTcwLCAzMSwgMjE5LCA2OCwgMTcwLCAzMSwgMjQxLCAyNDEsIDE3MCwgMzEsIDI0OSwgCi0gICAgMTUxLCAxNzAsIDMxLCAyNDksIDE4OCwgMTcwLCAzMSwgMjQ0LCAxNDUsIDE3MCwgMzEsIDI1NCwgMTE3LCAxNzAsIDMxLCAKLSAgICAyNDksIDE1MCwgMTcwLCAzMSwgMjI3LCA2MywgMjE3LCAxNDksIDIxNCwgMjE5LCAxNzAsIDMxLCAyNDcsIDE4NCwgMTcwLCAKLSAgICAzMSwgMjMzLCAxNDcsIDE3MCwgMzEsIDI0MywgMjM5LCAyNDksIDg4LCAyMjMsIDEwMywgMjE1LCAxNDUsIDIxLCAxMTYsIAotICAgIDI0OSwgODgsIDIyMywgMTAzLCAyMTUsIDE0NSwgMjEsIDEwOSwgMjQ5LCA4OCwgMjIzLCAxMDMsIDIxNSwgMTQ1LCAyMSwgCi0gICAgMTY2LCAyNDksIDg4LCAyMjMsIDEwMywgMjE1LCAxNDUsIDIxLCAxNjMsIDI0OSwgODgsIDIyMywgMTAzLCAyMTUsIDE0NSwgCi0gICAgMjEsIDE4MCwgMjQ5LCA4OCwgMjIzLCAxMDMsIDIxNSwgMTQ1LCAyMSwgMTg5LCAyNDksIDg4LCAyMjMsIDEwMywgMjE1LCAKLSAgICAxNDUsIDIxLCAxOTgsIDI0OSwgODgsIDIyMywgMTAzLCAyMTUsIDE0NSwgMjEsIDE5NSwgMjQ5LCA4OCwgMjIzLCAxMDMsIAotICAgIDIxNSwgMTQ1LCAyMSwgMjAwLCAyNDksIDg4LCAyMjMsIDEwMywgMjE3LCAxOTYsIDIxLCAxMTYsIDI0OSwgODgsIDIyMywgCi0gICAgMTAzLCAyMTcsIDE5NiwgMjEsIDEwOSwgMjQ5LCA4OCwgMjIzLCAxMDMsIDIxNywgMTk2LCAyMSwgMTY2LCAyNDksIDg4LCAKLSAgICAyMjMsIDEwMywgMjE3LCAxOTYsIDIxLCAxNjMsIDI0OSwgODgsIDIyMywgMTAzLCAyMTcsIDE5NiwgMjEsIDE4MCwgMjQ5LCAKLSAgICA4OCwgMjIzLCAxMDMsIDIxNywgMTk2LCAyMSwgMTg5LCAyNDksIDg4LCAyMjMsIDEwMywgMjE3LCAxOTYsIDIxLCAxOTgsIAotICAgIDI0OSwgODgsIDIyMywgMTAzLCAyMTcsIDE5NiwgMjEsIDE5NSwgMjQ5LCA4OCwgMjIzLCAxMDMsIDIxNywgMTk2LCAyMSwgCi0gICAgMjAwLCAxNCwgMjIsIDYsIDYxLCAxNCwgMjIsIDYsIDI1MywgNzQsIDE0LCAyMiwgNiwgMjUwLCAyNTIsIDE0LCAyMiwgNiwgCi0gICAgMjQ5LCAzLCAxNCwgMjIsIDYsIDc0LCAxNCwgMjIsIDYsIDI0NCwgMjMwLCAxNCwgMjIsIDYsIDI0MywgMTc3LCAxNCwgMjIsIAotICAgIDYsIDI0MiwgNDEsIDE0LCAyMiwgNiwgNzIsIDE0LCAyMiwgNiwgMjM1LCAxNDIsIDE0LCAyMiwgNiwgMjM1LCAyNywgMTQsIAotICAgIDIyLCA2LCAxNTAsIDE0LCAyMiwgNiwgMTgzLCAxNCwgMjIsIDYsIDIwNCwgMTQsIDIyLCA2LCA3NSwgMTQsIDIyLCA2LCAKLSAgICAyMjYsIDIyOSwgMTQsIDIyLCA2LCAyMjQsIDI0MCwgMTQsIDIyLCA2LCAxNDksIDE0LCAyMiwgNiwgMTk3LCAxNCwgMjIsIDYsIAotICAgIDIxOCwgOTksIDE0LCAyMiwgNiwgNjksIDE0LCAyMiwgNiwgMjE1LCA3OSwgMTQsIDIyLCA2LCAyMTQsIDgyLCAxNCwgMjIsIAotICAgIDYsIDIxMywgMTY2LCAxNCwgMjIsIDYsIDIxMywgMTA1LCAxNCwgMjIsIDYsIDIxMiwgMTUyLCAxNCwgMjIsIDMsIDYxLCAxNCwgCi0gICAgMjIsIDMsIDI1MywgNzQsIDE0LCAyMiwgMywgMjUwLCAyNTIsIDE0LCAyMiwgMywgMjQ5LCAzLCAxNCwgMjIsIDMsIDc0LCAKLSAgICAxNCwgMjIsIDMsIDI0NCwgMjMwLCAxNCwgMjIsIDMsIDI0MywgMTc3LCAxNCwgMjIsIDMsIDI0MiwgNDEsIDE0LCAyMiwgMywgCi0gICAgNzIsIDE0LCAyMiwgMywgMjM1LCAxNDIsIDE0LCAyMiwgMywgMjM1LCAyNywgMTQsIDIyLCAzLCAxNTAsIDE0LCAyMiwgMywgCi0gICAgMTgzLCAxNCwgMjIsIDMsIDIwNCwgMTQsIDIyLCAzLCA3NSwgMTQsIDIyLCAzLCAyMjYsIDIyOSwgMTQsIDIyLCAzLCAyMjQsIAotICAgIDI0MCwgMTQsIDIyLCAzLCAxNDksIDE0LCAyMiwgMywgMTk3LCAxNCwgMjIsIDMsIDIxOCwgOTksIDE0LCAyMiwgMywgNjksIAotICAgIDE0LCAyMiwgMywgMjE1LCA3OSwgMTQsIDIyLCAzLCAyMTQsIDgyLCAxNCwgMjIsIDMsIDIxMywgMTY2LCAxNCwgMjIsIDMsIAotICAgIDIxMywgMTA1LCAxNCwgMjIsIDMsIDIxMiwgMTUyLCAxNCwgMzIsIDYsIDYxLCAxNCwgMzIsIDYsIDI1MywgNzQsIDE0LCAzMiwgCi0gICAgNiwgMjUwLCAyNTIsIDE0LCAzMiwgNiwgMjQ5LCAzLCAxNCwgMzIsIDYsIDc0LCAxNCwgMzIsIDYsIDI0NCwgMjMwLCAxNCwgCi0gICAgMzIsIDYsIDI0MywgMTc3LCAxNCwgMzIsIDYsIDI0MiwgNDEsIDE0LCAzMiwgNiwgNzIsIDE0LCAzMiwgNiwgMjM1LCAxNDIsIAotICAgIDE0LCAzMiwgNiwgMjM1LCAyNywgMTQsIDMyLCA2LCAxNTAsIDE0LCAzMiwgNiwgMTgzLCAxNCwgMzIsIDYsIDIwNCwgMTQsIAotICAgIDMyLCA2LCA3NSwgMTQsIDMyLCA2LCAyMjYsIDIyOSwgMTQsIDMyLCA2LCAyMjQsIDI0MCwgMTQsIDMyLCA2LCAxNDksIDE0LCAKLSAgICAzMiwgNiwgMTk3LCAxNCwgMzIsIDYsIDIxOCwgOTksIDE0LCAzMiwgNiwgNjksIDE0LCAzMiwgNiwgMjE1LCA3OSwgMTQsIAotICAgIDMyLCA2LCAyMTQsIDgyLCAxNCwgMzIsIDYsIDIxMywgMTY2LCAxNCwgMzIsIDYsIDIxMywgMTA1LCAxNCwgMzIsIDYsIDIxMiwgCi0gICAgMTUyLCAxNCwgMzIsIDMsIDYxLCAxNCwgMzIsIDMsIDI1MywgNzQsIDE0LCAzMiwgMywgMjUwLCAyNTIsIDE0LCAzMiwgMywgCi0gICAgMjQ5LCAzLCAxNCwgMzIsIDMsIDc0LCAxNCwgMzIsIDMsIDI0NCwgMjMwLCAxNCwgMzIsIDMsIDI0MywgMTc3LCAxNCwgMzIsIAotICAgIDMsIDcyLCAxNCwgMzIsIDMsIDIzNSwgMTQyLCAxNCwgMzIsIDMsIDIzNSwgMjcsIDE0LCAzMiwgMywgMTUwLCAxNCwgMzIsIAotICAgIDMsIDE4MywgMTQsIDMyLCAzLCAyMDQsIDE0LCAzMiwgMywgNzUsIDE0LCAzMiwgMywgMjI2LCAyMjksIDE0LCAzMiwgMywgCi0gICAgMjI0LCAyNDAsIDE0LCAzMiwgMywgMTQ5LCAxNCwgMzIsIDMsIDE5NywgMTQsIDMyLCAzLCAyMTgsIDk5LCAxNCwgMzIsIDMsIAotICAgIDY5LCAxNCwgMzIsIDMsIDIxNSwgNzksIDE0LCAzMiwgMywgMjE0LCA4MiwgMTQsIDMyLCAzLCAyMTMsIDE2NiwgMTQsIDMyLCAKLSAgICAzLCAyMTMsIDEwNSwgMTQsIDMyLCAzLCAyMTIsIDE1MiwgMTQsIDIyLCAzMiwgNiwgNjEsIDE0LCAyMiwgMzIsIDYsIDI1MywgCi0gICAgNzQsIDE0LCAyMiwgMzIsIDYsIDI1MCwgMjUyLCAxNCwgMjIsIDMyLCA2LCAyNDksIDMsIDE0LCAyMiwgMzIsIDYsIDc0LCAKLSAgICAxNCwgMjIsIDMyLCA2LCAyNDQsIDIzMCwgMTQsIDIyLCAzMiwgNiwgMjQzLCAxNzcsIDE0LCAyMiwgMzIsIDYsIDI0MiwgNDEsIAotICAgIDE0LCAyMiwgMzIsIDYsIDcyLCAxNCwgMjIsIDMyLCA2LCAyMzUsIDE0MiwgMTQsIDIyLCAzMiwgNiwgMjM1LCAyNywgMTQsIAotICAgIDIyLCAzMiwgNiwgMTUwLCAxNCwgMjIsIDMyLCA2LCAxODMsIDE0LCAyMiwgMzIsIDYsIDIwNCwgMTQsIDIyLCAzMiwgNiwgCi0gICAgNzUsIDE0LCAyMiwgMzIsIDYsIDIyNiwgMjI5LCAxNCwgMjIsIDMyLCA2LCAyMjQsIDI0MCwgMTQsIDIyLCAzMiwgNiwgMTQ5LCAKLSAgICAxNCwgMjIsIDMyLCA2LCAxOTcsIDE0LCAyMiwgMzIsIDYsIDIxOCwgOTksIDE0LCAyMiwgMzIsIDYsIDY5LCAxNCwgMjIsIAotICAgIDMyLCA2LCAyMTUsIDc5LCAxNCwgMjIsIDMyLCA2LCAyMTQsIDgyLCAxNCwgMjIsIDMyLCA2LCAyMTMsIDE2NiwgMTQsIDIyLCAKLSAgICAzMiwgNiwgMjEzLCAxMDUsIDE0LCAyMiwgMzIsIDYsIDIxMiwgMTUyLCAxNCwgMjIsIDMyLCAzLCA2MSwgMTQsIDIyLCAzMiwgCi0gICAgMywgMjUzLCA3NCwgMTQsIDIyLCAzMiwgMywgMjUwLCAyNTIsIDE0LCAyMiwgMzIsIDMsIDI0OSwgMywgMTQsIDIyLCAzMiwgCi0gICAgMywgNzQsIDE0LCAyMiwgMzIsIDMsIDI0NCwgMjMwLCAxNCwgMjIsIDMyLCAzLCAyNDMsIDE3NywgMTQsIDIyLCAzMiwgMywgCi0gICAgMjQyLCA0MSwgMTQsIDIyLCAzMiwgMywgNzIsIDE0LCAyMiwgMzIsIDMsIDIzNSwgMTQyLCAxNCwgMjIsIDMyLCAzLCAyMzUsIAotICAgIDI3LCAxNCwgMjIsIDMyLCAzLCAxNTAsIDE0LCAyMiwgMzIsIDMsIDE4MywgMTQsIDIyLCAzMiwgMywgMjA0LCAxNCwgMjIsIAotICAgIDMyLCAzLCA3NSwgMTQsIDIyLCAzMiwgMywgMjI2LCAyMjksIDE0LCAyMiwgMzIsIDMsIDIyNCwgMjQwLCAxNCwgMjIsIDMyLCAKLSAgICAzLCAxNDksIDE0LCAyMiwgMzIsIDMsIDE5NywgMTQsIDIyLCAzMiwgMywgMjE4LCA5OSwgMTQsIDIyLCAzMiwgMywgNjksIAotICAgIDE0LCAyMiwgMzIsIDMsIDIxNSwgNzksIDE0LCAyMiwgMzIsIDMsIDIxNCwgODIsIDE0LCAyMiwgMzIsIDMsIDIxMywgMTY2LCAKLSAgICAxNCwgMjIsIDMyLCAzLCAyMTMsIDEwNSwgMTQsIDIyLCAzMiwgMywgMjEyLCAxNTIsIDE0LCAxMTMsIDYsIDYxLCAxNCwgCi0gICAgMTEzLCA2LCAyNTAsIDI1MiwgMTQsIDExMywgNiwgMjQ5LCAzLCAxNCwgMTEzLCA2LCAyNDMsIDE3NywgMTQsIDExMywgNiwgCi0gICAgMjM1LCAxNDIsIDE0LCAxMTMsIDYsIDIzNSwgMjcsIDE0LCAxMTMsIDYsIDIwNCwgMTQsIDExMywgNiwgNzUsIDE0LCAxMTMsIAotICAgIDYsIDIyNiwgMjI5LCAxNCwgMTEzLCA2LCAyMjQsIDI0MCwgMTQsIDExMywgNiwgMTk3LCAxNCwgMTEzLCA2LCAyMTgsIDk5LCAKLSAgICAxNCwgMTEzLCA2LCA2OSwgMTQsIDExMywgNiwgMjE1LCA3OSwgMTQsIDExMywgNiwgMjE0LCA4MiwgMTQsIDExMywgNiwgCi0gICAgMjEzLCAxNjYsIDE0LCAxMTMsIDYsIDIxMywgMTA1LCAxNCwgMTEzLCA2LCAyMTIsIDE1MiwgMTQsIDExMywgMywgNjEsIDE0LCAKLSAgICAxMTMsIDMsIDI1MywgNzQsIDE0LCAxMTMsIDMsIDI1MCwgMjUyLCAxNCwgMTEzLCAzLCAyNDksIDMsIDE0LCAxMTMsIDMsIAotICAgIDI0NCwgMjMwLCAxNCwgMTEzLCAzLCAyNDIsIDQxLCAxNCwgMTEzLCAzLCA3MiwgMTQsIDExMywgMywgMjM1LCAxNDIsIDE0LCAKLSAgICAxMTMsIDMsIDIzNSwgMjcsIDE0LCAxMTMsIDMsIDE1MCwgMTQsIDExMywgMywgMTgzLCAxNCwgMTEzLCAzLCAyMDQsIDE0LCAKLSAgICAxMTMsIDMsIDIyNiwgMjI5LCAxNCwgMTEzLCAzLCAyMjQsIDI0MCwgMTQsIDExMywgMywgMTQ5LCAxNCwgMTEzLCAzLCAxOTcsIAotICAgIDE0LCAxMTMsIDMsIDIxOCwgOTksIDE0LCAxMTMsIDMsIDY5LCAxNCwgMTEzLCAzLCAyMTUsIDc5LCAxNCwgMTEzLCAzLCAKLSAgICAyMTQsIDgyLCAxNCwgMTEzLCAzLCAyMTMsIDE2NiwgMTQsIDExMywgMywgMjEzLCAxMDUsIDE0LCAxMTMsIDMsIDIxMiwgCi0gICAgMTUyLCAxNCwgMjIsIDExMywgNiwgNjEsIDE0LCAyMiwgMTEzLCA2LCAyNTMsIDc0LCAxNCwgMjIsIDExMywgNiwgMjUwLCAKLSAgICAyNTIsIDE0LCAyMiwgMTEzLCA2LCAyNDksIDMsIDE0LCAyMiwgMTEzLCA2LCA3NCwgMTQsIDIyLCAxMTMsIDYsIDI0NCwgCi0gICAgMjMwLCAxNCwgMjIsIDExMywgNiwgMjQzLCAxNzcsIDE0LCAyMiwgMTEzLCA2LCAyNDIsIDQxLCAxNCwgMjIsIDExMywgNiwgCi0gICAgNzIsIDE0LCAyMiwgMTEzLCA2LCAyMzUsIDE0MiwgMTQsIDIyLCAxMTMsIDYsIDIzNSwgMjcsIDE0LCAyMiwgMTEzLCA2LCAKLSAgICAxNTAsIDE0LCAyMiwgMTEzLCA2LCAxODMsIDE0LCAyMiwgMTEzLCA2LCAyMDQsIDE0LCAyMiwgMTEzLCA2LCA3NSwgMTQsIAotICAgIDIyLCAxMTMsIDYsIDIyNiwgMjI5LCAxNCwgMjIsIDExMywgNiwgMjI0LCAyNDAsIDE0LCAyMiwgMTEzLCA2LCAxNDksIDE0LCAKLSAgICAyMiwgMTEzLCA2LCAxOTcsIDE0LCAyMiwgMTEzLCA2LCAyMTgsIDk5LCAxNCwgMjIsIDExMywgNiwgNjksIDE0LCAyMiwgCi0gICAgMTEzLCA2LCAyMTUsIDc5LCAxNCwgMjIsIDExMywgNiwgMjE0LCA4MiwgMTQsIDIyLCAxMTMsIDYsIDIxMywgMTY2LCAxNCwgCi0gICAgMjIsIDExMywgNiwgMjEzLCAxMDUsIDE0LCAyMiwgMTEzLCA2LCAyMTIsIDE1MiwgMTQsIDIyLCAxMTMsIDMsIDYxLCAxNCwgCi0gICAgMjIsIDExMywgMywgMjUzLCA3NCwgMTQsIDIyLCAxMTMsIDMsIDI1MCwgMjUyLCAxNCwgMjIsIDExMywgMywgMjQ5LCAzLCAKLSAgICAxNCwgMjIsIDExMywgMywgNzQsIDE0LCAyMiwgMTEzLCAzLCAyNDQsIDIzMCwgMTQsIDIyLCAxMTMsIDMsIDI0MywgMTc3LCAKLSAgICAxNCwgMjIsIDExMywgMywgMjQyLCA0MSwgMTQsIDIyLCAxMTMsIDMsIDcyLCAxNCwgMjIsIDExMywgMywgMjM1LCAxNDIsIAotICAgIDE0LCAyMiwgMTEzLCAzLCAyMzUsIDI3LCAxNCwgMjIsIDExMywgMywgMTUwLCAxNCwgMjIsIDExMywgMywgMTgzLCAxNCwgCi0gICAgMjIsIDExMywgMywgMjA0LCAxNCwgMjIsIDExMywgMywgNzUsIDE0LCAyMiwgMTEzLCAzLCAyMjYsIDIyOSwgMTQsIDIyLCAKLSAgICAxMTMsIDMsIDIyNCwgMjQwLCAxNCwgMjIsIDExMywgMywgMTQ5LCAxNCwgMjIsIDExMywgMywgMTk3LCAxNCwgMjIsIDExMywgCi0gICAgMywgMjE4LCA5OSwgMTQsIDIyLCAxMTMsIDMsIDY5LCAxNCwgMjIsIDExMywgMywgMjE1LCA3OSwgMTQsIDIyLCAxMTMsIDMsIAotICAgIDIxNCwgODIsIDE0LCAyMiwgMTEzLCAzLCAyMTMsIDE2NiwgMTQsIDIyLCAxMTMsIDMsIDIxMywgMTA1LCAxNCwgMjIsIDExMywgCi0gICAgMywgMjEyLCAxNTIsIDE0LCAxMjksIDYsIDYxLCAxNCwgMTI5LCA2LCAyNTMsIDc0LCAxNCwgMTI5LCA2LCAyNDksIDMsIDE0LCAKLSAgICAxMjksIDYsIDc0LCAxNCwgMTI5LCA2LCAyNDQsIDIzMCwgMTQsIDEyOSwgNiwgMjQzLCAxNzcsIDE0LCAxMjksIDYsIDIzNSwgCi0gICAgMTQyLCAxNCwgMTI5LCA2LCAyMzUsIDI3LCAxNCwgMTI5LCA2LCAxNTAsIDE0LCAxMjksIDYsIDE4MywgMTQsIDEyOSwgNiwgCi0gICAgMjA0LCAxNCwgMTI5LCA2LCA3NSwgMTQsIDEyOSwgNiwgMjI2LCAyMjksIDE0LCAxMjksIDYsIDIyNCwgMjQwLCAxNCwgMTI5LCAKLSAgICA2LCAxOTcsIDE0LCAxMjksIDYsIDIxOCwgOTksIDE0LCAxMjksIDYsIDY5LCAxNCwgMTI5LCA2LCAyMTUsIDc5LCAxNCwgCi0gICAgMTI5LCA2LCAyMTQsIDgyLCAxNCwgMTI5LCA2LCAyMTMsIDE2NiwgMTQsIDEyOSwgNiwgMjEzLCAxMDUsIDE0LCAxMjksIDMsIAotICAgIDYxLCAxNCwgMTI5LCAzLCAyNTMsIDc0LCAxNCwgMTI5LCAzLCAyNTAsIDI1MiwgMTQsIDEyOSwgMywgMjQ5LCAzLCAxNCwgCi0gICAgMTI5LCAzLCA3NCwgMTQsIDEyOSwgMywgMjQ0LCAyMzAsIDE0LCAxMjksIDMsIDI0MywgMTc3LCAxNCwgMTI5LCAzLCAyNDIsIAotICAgIDQxLCAxNCwgMTI5LCAzLCA3MiwgMTQsIDEyOSwgMywgMjM1LCAxNDIsIDE0LCAxMjksIDMsIDIzNSwgMjcsIDE0LCAxMjksIAotICAgIDMsIDE1MCwgMTQsIDEyOSwgMywgMTgzLCAxNCwgMTI5LCAzLCAyMDQsIDE0LCAxMjksIDMsIDc1LCAxNCwgMTI5LCAzLCAKLSAgICAyMjYsIDIyOSwgMTQsIDEyOSwgMywgMjI0LCAyNDAsIDE0LCAxMjksIDMsIDE0OSwgMTQsIDEyOSwgMywgMTk3LCAxNCwgCi0gICAgMTI5LCAzLCAyMTgsIDk5LCAxNCwgMTI5LCAzLCA2OSwgMTQsIDEyOSwgMywgMjE1LCA3OSwgMTQsIDEyOSwgMywgMjE0LCAKLSAgICA4MiwgMTQsIDEyOSwgMywgMjEzLCAxNjYsIDE0LCAxMjksIDMsIDIxMywgMTA1LCAxNCwgMTI5LCAzLCAyMTIsIDE1MiwgMTQsIAotICAgIDE4NywgNiwgNjEsIDE0LCAxODcsIDYsIDI1MywgNzQsIDE0LCAxODcsIDYsIDI0OSwgMywgMTQsIDE4NywgNiwgNzQsIDE0LCAKLSAgICAxODcsIDYsIDI0NCwgMjMwLCAxNCwgMTg3LCA2LCAyNDMsIDE3NywgMTQsIDE4NywgNiwgNzIsIDE0LCAxODcsIDYsIDIzNSwgCi0gICAgMTQyLCAxNCwgMTg3LCA2LCAyMzUsIDI3LCAxNCwgMTg3LCA2LCAxNTAsIDE0LCAxODcsIDYsIDE4MywgMTQsIDE4NywgNiwgCi0gICAgNzUsIDE0LCAxODcsIDYsIDE5NywgMTQsIDE4NywgNiwgMjE4LCA5OSwgMTQsIDE4NywgNiwgNjksIDE0LCAxODcsIDYsIAotICAgIDIxNSwgNzksIDE0LCAxODcsIDYsIDIxNCwgODIsIDE0LCAxODcsIDYsIDIxMywgMTY2LCAxNCwgMTg3LCA2LCAyMTMsIDEwNSwgCi0gICAgMTQsIDE4NywgMywgNjEsIDE0LCAxODcsIDMsIDI1MywgNzQsIDE0LCAxODcsIDMsIDI1MCwgMjUyLCAxNCwgMTg3LCAzLCAKLSAgICAyNDksIDMsIDE0LCAxODcsIDMsIDc0LCAxNCwgMTg3LCAzLCAyNDQsIDIzMCwgMTQsIDE4NywgMywgMjQzLCAxNzcsIDE0LCAKLSAgICAxODcsIDMsIDI0MiwgNDEsIDE0LCAxODcsIDMsIDcyLCAxNCwgMTg3LCAzLCAyMzUsIDE0MiwgMTQsIDE4NywgMywgMjM1LCAKLSAgICAyNywgMTQsIDE4NywgMywgMTUwLCAxNCwgMTg3LCAzLCAxODMsIDE0LCAxODcsIDMsIDIwNCwgMTQsIDE4NywgMywgNzUsIAotICAgIDE0LCAxODcsIDMsIDIyNiwgMjI5LCAxNCwgMTg3LCAzLCAyMjQsIDI0MCwgMTQsIDE4NywgMywgMTQ5LCAxNCwgMTg3LCAzLCAKLSAgICAxOTcsIDE0LCAxODcsIDMsIDIxOCwgOTksIDE0LCAxODcsIDMsIDY5LCAxNCwgMTg3LCAzLCAyMTUsIDc5LCAxNCwgMTg3LCAKLSAgICAzLCAyMTQsIDgyLCAxNCwgMTg3LCAzLCAyMTMsIDE2NiwgMTQsIDE4NywgMywgMjEzLCAxMDUsIDE0LCAxODcsIDMsIDIxMiwgCi0gICAgMTUyLCAxNCwgMjIsIDEyOSwgNiwgNjEsIDE0LCAyMiwgMTI5LCA2LCAyNTMsIDc0LCAxNCwgMjIsIDEyOSwgNiwgMjUwLCAKLSAgICAyNTIsIDE0LCAyMiwgMTI5LCA2LCAyNDksIDMsIDE0LCAyMiwgMTI5LCA2LCA3NCwgMTQsIDIyLCAxMjksIDYsIDI0NCwgCi0gICAgMjMwLCAxNCwgMjIsIDEyOSwgNiwgMjQzLCAxNzcsIDE0LCAyMiwgMTI5LCA2LCAyNDIsIDQxLCAxNCwgMjIsIDEyOSwgNiwgCi0gICAgNzIsIDE0LCAyMiwgMTI5LCA2LCAyMzUsIDE0MiwgMTQsIDIyLCAxMjksIDYsIDIzNSwgMjcsIDE0LCAyMiwgMTI5LCA2LCAKLSAgICAxNTAsIDE0LCAyMiwgMTI5LCA2LCAxODMsIDE0LCAyMiwgMTI5LCA2LCAyMDQsIDE0LCAyMiwgMTI5LCA2LCA3NSwgMTQsIAotICAgIDIyLCAxMjksIDYsIDIyNiwgMjI5LCAxNCwgMjIsIDEyOSwgNiwgMjI0LCAyNDAsIDE0LCAyMiwgMTI5LCA2LCAxNDksIDE0LCAKLSAgICAyMiwgMTI5LCA2LCAxOTcsIDE0LCAyMiwgMTI5LCA2LCAyMTgsIDk5LCAxNCwgMjIsIDEyOSwgNiwgNjksIDE0LCAyMiwgCi0gICAgMTI5LCA2LCAyMTUsIDc5LCAxNCwgMjIsIDEyOSwgNiwgMjE0LCA4MiwgMTQsIDIyLCAxMjksIDYsIDIxMywgMTY2LCAxNCwgCi0gICAgMjIsIDEyOSwgNiwgMjEzLCAxMDUsIDE0LCAyMiwgMTI5LCA2LCAyMTIsIDE1MiwgMTQsIDIyLCAxMjksIDMsIDYxLCAxNCwgCi0gICAgMjIsIDEyOSwgMywgMjUzLCA3NCwgMTQsIDIyLCAxMjksIDMsIDI1MCwgMjUyLCAxNCwgMjIsIDEyOSwgMywgMjQ5LCAzLCAKLSAgICAxNCwgMjIsIDEyOSwgMywgNzQsIDE0LCAyMiwgMTI5LCAzLCAyNDQsIDIzMCwgMTQsIDIyLCAxMjksIDMsIDI0MywgMTc3LCAKLSAgICAxNCwgMjIsIDEyOSwgMywgMjQyLCA0MSwgMTQsIDIyLCAxMjksIDMsIDcyLCAxNCwgMjIsIDEyOSwgMywgMjM1LCAxNDIsIAotICAgIDE0LCAyMiwgMTI5LCAzLCAyMzUsIDI3LCAxNCwgMjIsIDEyOSwgMywgMTUwLCAxNCwgMjIsIDEyOSwgMywgMTgzLCAxNCwgCi0gICAgMjIsIDEyOSwgMywgMjA0LCAxNCwgMjIsIDEyOSwgMywgNzUsIDE0LCAyMiwgMTI5LCAzLCAyMjYsIDIyOSwgMTQsIDIyLCAKLSAgICAxMjksIDMsIDIyNCwgMjQwLCAxNCwgMjIsIDEyOSwgMywgMTQ5LCAxNCwgMjIsIDEyOSwgMywgMTk3LCAxNCwgMjIsIDEyOSwgCi0gICAgMywgMjE4LCA5OSwgMTQsIDIyLCAxMjksIDMsIDY5LCAxNCwgMjIsIDEyOSwgMywgMjE1LCA3OSwgMTQsIDIyLCAxMjksIDMsIAotICAgIDIxNCwgODIsIDE0LCAyMiwgMTI5LCAzLCAyMTMsIDE2NiwgMTQsIDIyLCAxMjksIDMsIDIxMywgMTA1LCAxNCwgMjIsIDEyOSwgCi0gICAgMywgMjEyLCAxNTIsIDE0LCAzNSwgNiwgNjEsIDE0LCAzNSwgNiwgMjUzLCA3NCwgMTQsIDM1LCA2LCAyNTAsIDI1MiwgMTQsIAotICAgIDM1LCA2LCAyNDksIDMsIDE0LCAzNSwgNiwgNzQsIDE0LCAzNSwgNiwgMjQ0LCAyMzAsIDE0LCAzNSwgNiwgMjQzLCAxNzcsIAotICAgIDE0LCAzNSwgNiwgMjQyLCA0MSwgMTQsIDM1LCA2LCA3MiwgMTQsIDM1LCA2LCAyMzUsIDE0MiwgMTQsIDM1LCA2LCAyMzUsIAotICAgIDI3LCAxNCwgMzUsIDYsIDE1MCwgMTQsIDM1LCA2LCAxODMsIDE0LCAzNSwgNiwgMjA0LCAxNCwgMzUsIDYsIDc1LCAxNCwgCi0gICAgMzUsIDYsIDIyNiwgMjI5LCAxNCwgMzUsIDYsIDIyNCwgMjQwLCAxNCwgMzUsIDYsIDE0OSwgMTQsIDM1LCA2LCAxOTcsIDE0LCAKLSAgICAzNSwgNiwgMjE4LCA5OSwgMTQsIDM1LCA2LCA2OSwgMTQsIDM1LCA2LCAyMTUsIDc5LCAxNCwgMzUsIDYsIDIxNCwgODIsIAotICAgIDE0LCAzNSwgNiwgMjEzLCAxNjYsIDE0LCAzNSwgNiwgMjEzLCAxMDUsIDE0LCAzNSwgNiwgMjEyLCAxNTIsIDE0LCAzNSwgMywgCi0gICAgNjEsIDE0LCAzNSwgMywgMjUzLCA3NCwgMTQsIDM1LCAzLCAyNTAsIDI1MiwgMTQsIDM1LCAzLCAyNDksIDMsIDE0LCAzNSwgCi0gICAgMywgNzQsIDE0LCAzNSwgMywgMjQ0LCAyMzAsIDE0LCAzNSwgMywgMjQzLCAxNzcsIDE0LCAzNSwgMywgMjQyLCA0MSwgMTQsIAotICAgIDM1LCAzLCA3MiwgMTQsIDM1LCAzLCAyMzUsIDE0MiwgMTQsIDM1LCAzLCAyMzUsIDI3LCAxNCwgMzUsIDMsIDE1MCwgMTQsIAotICAgIDM1LCAzLCAxODMsIDE0LCAzNSwgMywgMjA0LCAxNCwgMzUsIDMsIDc1LCAxNCwgMzUsIDMsIDIyNiwgMjI5LCAxNCwgMzUsIAotICAgIDMsIDIyNCwgMjQwLCAxNCwgMzUsIDMsIDE0OSwgMTQsIDM1LCAzLCAxOTcsIDE0LCAzNSwgMywgMjE4LCA5OSwgMTQsIDM1LCAKLSAgICAzLCA2OSwgMTQsIDM1LCAzLCAyMTUsIDc5LCAxNCwgMzUsIDMsIDIxNCwgODIsIDE0LCAzNSwgMywgMjEzLCAxNjYsIDE0LCAKLSAgICAzNSwgMywgMjEzLCAxMDUsIDE0LCAzNSwgMywgMjEyLCAxNTIsIDE0LCAzNSwgMjIsIDYsIDYxLCAxNCwgMzUsIDIyLCA2LCAKLSAgICAyNTMsIDc0LCAxNCwgMzUsIDIyLCA2LCAyNTAsIDI1MiwgMTQsIDM1LCAyMiwgNiwgMjQ5LCAzLCAxNCwgMzUsIDIyLCA2LCAKLSAgICA3NCwgMTQsIDM1LCAyMiwgNiwgMjQ0LCAyMzAsIDE0LCAzNSwgMjIsIDYsIDI0MywgMTc3LCAxNCwgMzUsIDIyLCA2LCAyNDIsIAotICAgIDQxLCAxNCwgMzUsIDIyLCA2LCA3MiwgMTQsIDM1LCAyMiwgNiwgMjM1LCAxNDIsIDE0LCAzNSwgMjIsIDYsIDIzNSwgMjcsIAotICAgIDE0LCAzNSwgMjIsIDYsIDE1MCwgMTQsIDM1LCAyMiwgNiwgMTgzLCAxNCwgMzUsIDIyLCA2LCAyMDQsIDE0LCAzNSwgMjIsIAotICAgIDYsIDc1LCAxNCwgMzUsIDIyLCA2LCAyMjYsIDIyOSwgMTQsIDM1LCAyMiwgNiwgMjI0LCAyNDAsIDE0LCAzNSwgMjIsIDYsIAotICAgIDE0OSwgMTQsIDM1LCAyMiwgNiwgMTk3LCAxNCwgMzUsIDIyLCA2LCAyMTgsIDk5LCAxNCwgMzUsIDIyLCA2LCA2OSwgMTQsIAotICAgIDM1LCAyMiwgNiwgMjE1LCA3OSwgMTQsIDM1LCAyMiwgNiwgMjE0LCA4MiwgMTQsIDM1LCAyMiwgNiwgMjEzLCAxNjYsIDE0LCAKLSAgICAzNSwgMjIsIDYsIDIxMywgMTA1LCAxNCwgMzUsIDIyLCA2LCAyMTIsIDE1MiwgMTQsIDM1LCAyMiwgMywgNjEsIDE0LCAzNSwgCi0gICAgMjIsIDMsIDI1MywgNzQsIDE0LCAzNSwgMjIsIDMsIDI1MCwgMjUyLCAxNCwgMzUsIDIyLCAzLCAyNDksIDMsIDE0LCAzNSwgCi0gICAgMjIsIDMsIDc0LCAxNCwgMzUsIDIyLCAzLCAyNDQsIDIzMCwgMTQsIDM1LCAyMiwgMywgMjQzLCAxNzcsIDE0LCAzNSwgMjIsIAotICAgIDMsIDI0MiwgNDEsIDE0LCAzNSwgMjIsIDMsIDcyLCAxNCwgMzUsIDIyLCAzLCAyMzUsIDE0MiwgMTQsIDM1LCAyMiwgMywgCi0gICAgMjM1LCAyNywgMTQsIDM1LCAyMiwgMywgMTUwLCAxNCwgMzUsIDIyLCAzLCAxODMsIDE0LCAzNSwgMjIsIDMsIDIwNCwgMTQsIAotICAgIDM1LCAyMiwgMywgNzUsIDE0LCAzNSwgMjIsIDMsIDIyNiwgMjI5LCAxNCwgMzUsIDIyLCAzLCAyMjQsIDI0MCwgMTQsIDM1LCAKLSAgICAyMiwgMywgMTQ5LCAxNCwgMzUsIDIyLCAzLCAxOTcsIDE0LCAzNSwgMjIsIDMsIDIxOCwgOTksIDE0LCAzNSwgMjIsIDMsIAotICAgIDY5LCAxNCwgMzUsIDIyLCAzLCAyMTUsIDc5LCAxNCwgMzUsIDIyLCAzLCAyMTQsIDgyLCAxNCwgMzUsIDIyLCAzLCAyMTMsIAotICAgIDE2NiwgMTQsIDM1LCAyMiwgMywgMjEzLCAxMDUsIDE0LCAzNSwgMjIsIDMsIDIxMiwgMTUyLCAxNCwgMzUsIDMyLCA2LCA2MSwgCi0gICAgMTQsIDM1LCAzMiwgNiwgMjUzLCA3NCwgMTQsIDM1LCAzMiwgNiwgMjUwLCAyNTIsIDE0LCAzNSwgMzIsIDYsIDI0OSwgMywgCi0gICAgMTQsIDM1LCAzMiwgNiwgNzQsIDE0LCAzNSwgMzIsIDYsIDI0NCwgMjMwLCAxNCwgMzUsIDMyLCA2LCAyNDMsIDE3NywgMTQsIAotICAgIDM1LCAzMiwgNiwgMjQyLCA0MSwgMTQsIDM1LCAzMiwgNiwgNzIsIDE0LCAzNSwgMzIsIDYsIDIzNSwgMTQyLCAxNCwgMzUsIAotICAgIDMyLCA2LCAyMzUsIDI3LCAxNCwgMzUsIDMyLCA2LCAxNTAsIDE0LCAzNSwgMzIsIDYsIDE4MywgMTQsIDM1LCAzMiwgNiwgCi0gICAgMjA0LCAxNCwgMzUsIDMyLCA2LCA3NSwgMTQsIDM1LCAzMiwgNiwgMjI2LCAyMjksIDE0LCAzNSwgMzIsIDYsIDIyNCwgMjQwLCAKLSAgICAxNCwgMzUsIDMyLCA2LCAxNDksIDE0LCAzNSwgMzIsIDYsIDE5NywgMTQsIDM1LCAzMiwgNiwgMjE4LCA5OSwgMTQsIDM1LCAKLSAgICAzMiwgNiwgNjksIDE0LCAzNSwgMzIsIDYsIDIxNSwgNzksIDE0LCAzNSwgMzIsIDYsIDIxNCwgODIsIDE0LCAzNSwgMzIsIDYsIAotICAgIDIxMywgMTY2LCAxNCwgMzUsIDMyLCA2LCAyMTMsIDEwNSwgMTQsIDM1LCAzMiwgNiwgMjEyLCAxNTIsIDE0LCAzNSwgMzIsIAotICAgIDMsIDYxLCAxNCwgMzUsIDMyLCAzLCAyNTMsIDc0LCAxNCwgMzUsIDMyLCAzLCAyNTAsIDI1MiwgMTQsIDM1LCAzMiwgMywgCi0gICAgMjQ5LCAzLCAxNCwgMzUsIDMyLCAzLCA3NCwgMTQsIDM1LCAzMiwgMywgMjQ0LCAyMzAsIDE0LCAzNSwgMzIsIDMsIDI0MywgCi0gICAgMTc3LCAxNCwgMzUsIDMyLCAzLCAyNDIsIDQxLCAxNCwgMzUsIDMyLCAzLCA3MiwgMTQsIDM1LCAzMiwgMywgMjM1LCAxNDIsIAotICAgIDE0LCAzNSwgMzIsIDMsIDIzNSwgMjcsIDE0LCAzNSwgMzIsIDMsIDE1MCwgMTQsIDM1LCAzMiwgMywgMTgzLCAxNCwgMzUsIAotICAgIDMyLCAzLCAyMDQsIDE0LCAzNSwgMzIsIDMsIDc1LCAxNCwgMzUsIDMyLCAzLCAyMjYsIDIyOSwgMTQsIDM1LCAzMiwgMywgCi0gICAgMjI0LCAyNDAsIDE0LCAzNSwgMzIsIDMsIDE0OSwgMTQsIDM1LCAzMiwgMywgMTk3LCAxNCwgMzUsIDMyLCAzLCAyMTgsIDk5LCAKLSAgICAxNCwgMzUsIDMyLCAzLCA2OSwgMTQsIDM1LCAzMiwgMywgMjE1LCA3OSwgMTQsIDM1LCAzMiwgMywgMjE0LCA4MiwgMTQsIAotICAgIDM1LCAzMiwgMywgMjEzLCAxNjYsIDE0LCAzNSwgMzIsIDMsIDIxMywgMTA1LCAxNCwgMzUsIDMyLCAzLCAyMTIsIDE1MiwgCi0gICAgMTQsIDM1LCAyMiwgMzIsIDYsIDYxLCAxNCwgMzUsIDIyLCAzMiwgNiwgMjUzLCA3NCwgMTQsIDM1LCAyMiwgMzIsIDYsIAotICAgIDI1MCwgMjUyLCAxNCwgMzUsIDIyLCAzMiwgNiwgMjQ5LCAzLCAxNCwgMzUsIDIyLCAzMiwgNiwgNzQsIDE0LCAzNSwgMjIsIAotICAgIDMyLCA2LCAyNDQsIDIzMCwgMTQsIDM1LCAyMiwgMzIsIDYsIDI0MywgMTc3LCAxNCwgMzUsIDIyLCAzMiwgNiwgMjQyLCA0MSwgCi0gICAgMTQsIDM1LCAyMiwgMzIsIDYsIDcyLCAxNCwgMzUsIDIyLCAzMiwgNiwgMjM1LCAxNDIsIDE0LCAzNSwgMjIsIDMyLCA2LCAKLSAgICAyMzUsIDI3LCAxNCwgMzUsIDIyLCAzMiwgNiwgMTUwLCAxNCwgMzUsIDIyLCAzMiwgNiwgMTgzLCAxNCwgMzUsIDIyLCAzMiwgCi0gICAgNiwgMjA0LCAxNCwgMzUsIDIyLCAzMiwgNiwgNzUsIDE0LCAzNSwgMjIsIDMyLCA2LCAyMjYsIDIyOSwgMTQsIDM1LCAyMiwgCi0gICAgMzIsIDYsIDIyNCwgMjQwLCAxNCwgMzUsIDIyLCAzMiwgNiwgMTQ5LCAxNCwgMzUsIDIyLCAzMiwgNiwgMTk3LCAxNCwgMzUsIAotICAgIDIyLCAzMiwgNiwgMjE4LCA5OSwgMTQsIDM1LCAyMiwgMzIsIDYsIDY5LCAxNCwgMzUsIDIyLCAzMiwgNiwgMjE1LCA3OSwgCi0gICAgMTQsIDM1LCAyMiwgMzIsIDYsIDIxNCwgODIsIDE0LCAzNSwgMjIsIDMyLCA2LCAyMTMsIDE2NiwgMTQsIDM1LCAyMiwgMzIsIAotICAgIDYsIDIxMywgMTA1LCAxNCwgMzUsIDIyLCAzMiwgNiwgMjEyLCAxNTIsIDE0LCAzNSwgMjIsIDMyLCAzLCA2MSwgMTQsIDM1LCAKLSAgICAyMiwgMzIsIDMsIDI1MywgNzQsIDE0LCAzNSwgMjIsIDMyLCAzLCAyNTAsIDI1MiwgMTQsIDM1LCAyMiwgMzIsIDMsIDI0OSwgCi0gICAgMywgMTQsIDM1LCAyMiwgMzIsIDMsIDc0LCAxNCwgMzUsIDIyLCAzMiwgMywgMjQ0LCAyMzAsIDE0LCAzNSwgMjIsIDMyLCAzLCAKLSAgICAyNDMsIDE3NywgMTQsIDM1LCAyMiwgMzIsIDMsIDI0MiwgNDEsIDE0LCAzNSwgMjIsIDMyLCAzLCA3MiwgMTQsIDM1LCAyMiwgCi0gICAgMzIsIDMsIDIzNSwgMTQyLCAxNCwgMzUsIDIyLCAzMiwgMywgMjM1LCAyNywgMTQsIDM1LCAyMiwgMzIsIDMsIDE1MCwgMTQsIAotICAgIDM1LCAyMiwgMzIsIDMsIDE4MywgMTQsIDM1LCAyMiwgMzIsIDMsIDIwNCwgMTQsIDM1LCAyMiwgMzIsIDMsIDc1LCAxNCwgCi0gICAgMzUsIDIyLCAzMiwgMywgMjI2LCAyMjksIDE0LCAzNSwgMjIsIDMyLCAzLCAyMjQsIDI0MCwgMTQsIDM1LCAyMiwgMzIsIDMsIAotICAgIDE0OSwgMTQsIDM1LCAyMiwgMzIsIDMsIDE5NywgMTQsIDM1LCAyMiwgMzIsIDMsIDIxOCwgOTksIDE0LCAzNSwgMjIsIDMyLCAKLSAgICAzLCA2OSwgMTQsIDM1LCAyMiwgMzIsIDMsIDIxNSwgNzksIDE0LCAzNSwgMjIsIDMyLCAzLCAyMTQsIDgyLCAxNCwgMzUsIAotICAgIDIyLCAzMiwgMywgMjEzLCAxNjYsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMTMsIDEwNSwgMTQsIDM1LCAyMiwgMzIsIDMsIDIxMiwgCi0gICAgMTUyLCAxNCwgMjMwLCAyMDgsIDYsIDYxLCAxNCwgMjMwLCAyMDgsIDYsIDI1MywgNzQsIDE0LCAyMzAsIDIwOCwgNiwgMjUwLCAKLSAgICAyNTIsIDE0LCAyMzAsIDIwOCwgNiwgMjQ5LCAzLCAxNCwgMjMwLCAyMDgsIDYsIDc0LCAxNCwgMjMwLCAyMDgsIDYsIDI0NCwgCi0gICAgMjMwLCAxNCwgMjMwLCAyMDgsIDYsIDI0MywgMTc3LCAxNCwgMjMwLCAyMDgsIDYsIDI0MiwgNDEsIDE0LCAyMzAsIDIwOCwgCi0gICAgNiwgNzIsIDE0LCAyMzAsIDIwOCwgNiwgMjM1LCAxNDIsIDE0LCAyMzAsIDIwOCwgNiwgMjM1LCAyNywgMTQsIDIzMCwgMjA4LCAKLSAgICA2LCAxNTAsIDE0LCAyMzAsIDIwOCwgNiwgMTgzLCAxNCwgMjMwLCAyMDgsIDYsIDIwNCwgMTQsIDIzMCwgMjA4LCA2LCA3NSwgCi0gICAgMTQsIDIzMCwgMjA4LCA2LCAyMjYsIDIyOSwgMTQsIDIzMCwgMjA4LCA2LCAyMjQsIDI0MCwgMTQsIDIzMCwgMjA4LCA2LCAKLSAgICAxNDksIDE0LCAyMzAsIDIwOCwgNiwgMTk3LCAxNCwgMjMwLCAyMDgsIDYsIDIxOCwgOTksIDE0LCAyMzAsIDIwOCwgNiwgNjksIAotICAgIDE0LCAyMzAsIDIwOCwgNiwgMjE1LCA3OSwgMTQsIDIzMCwgMjA4LCA2LCAyMTQsIDgyLCAxNCwgMjMwLCAyMDgsIDYsIDIxMywgCi0gICAgMTY2LCAxNCwgMjMwLCAyMDgsIDYsIDIxMywgMTA1LCAxNCwgMjMwLCAyMDgsIDYsIDIxMiwgMTUyLCAxNCwgMjMwLCAyMDgsIAotICAgIDMsIDYxLCAxNCwgMjMwLCAyMDgsIDMsIDI1MywgNzQsIDE0LCAyMzAsIDIwOCwgMywgMjUwLCAyNTIsIDE0LCAyMzAsIDIwOCwgCi0gICAgMywgMjQ5LCAzLCAxNCwgMjMwLCAyMDgsIDMsIDc0LCAxNCwgMjMwLCAyMDgsIDMsIDI0NCwgMjMwLCAxNCwgMjMwLCAyMDgsIAotICAgIDMsIDI0MywgMTc3LCAxNCwgMjMwLCAyMDgsIDMsIDI0MiwgNDEsIDE0LCAyMzAsIDIwOCwgMywgNzIsIDE0LCAyMzAsIDIwOCwgCi0gICAgMywgMjM1LCAxNDIsIDE0LCAyMzAsIDIwOCwgMywgMjM1LCAyNywgMTQsIDIzMCwgMjA4LCAzLCAxNTAsIDE0LCAyMzAsIAotICAgIDIwOCwgMywgMTgzLCAxNCwgMjMwLCAyMDgsIDMsIDIwNCwgMTQsIDIzMCwgMjA4LCAzLCA3NSwgMTQsIDIzMCwgMjA4LCAzLCAKLSAgICAyMjYsIDIyOSwgMTQsIDIzMCwgMjA4LCAzLCAyMjQsIDI0MCwgMTQsIDIzMCwgMjA4LCAzLCAxNDksIDE0LCAyMzAsIDIwOCwgCi0gICAgMywgMTk3LCAxNCwgMjMwLCAyMDgsIDMsIDIxOCwgOTksIDE0LCAyMzAsIDIwOCwgMywgNjksIDE0LCAyMzAsIDIwOCwgMywgCi0gICAgMjE1LCA3OSwgMTQsIDIzMCwgMjA4LCAzLCAyMTQsIDgyLCAxNCwgMjMwLCAyMDgsIDMsIDIxMywgMTY2LCAxNCwgMjMwLCAKLSAgICAyMDgsIDMsIDIxMywgMTA1LCAxNCwgMjMwLCAyMDgsIDMsIDIxMiwgMTUyLCAxNCwgMzIsIDMsIDI0NywgNzMsIDcyLCAxNCwgCi0gICAgMzIsIDMsIDI0NywgNzMsIDIzNSwgMTQyLCAxNCwgMjIsIDYsIDI1NCwgNTIsIDE0LCAyMiwgNiwgMjUxLCAyMDMsIDE0LCAKLSAgICAyMiwgNiwgMjQzLCA4MywgMTQsIDIyLCA2LCAyNDgsIDUsIDE0LCAyMiwgNiwgMjQ1LCA2MywgMTQsIDIyLCA2LCAyMTIsIAotICAgIDc4LCAxNCwgMjIsIDYsIDI0NSwgMjgsIDE0LCAyMiwgNiwgMjE3LCAxMzIsIDE0LCAyMiwgNiwgMjM1LCAxODMsIDE0LCAyMiwgCi0gICAgNiwgMjM0LCAyMjcsIDE0LCAyMiwgNiwgMjMzLCAxMjIsIDE0LCAyMiwgNiwgMjMwLCAxNzIsIDE0LCAyMiwgNiwgMjI4LCAKLSAgICA5MiwgMTQsIDIyLCA2LCAyMTMsIDE0NSwgMTQsIDIyLCA2LCAyMjcsIDY1LCAxNCwgMjIsIDYsIDIyNSwgMjQwLCAxNCwgMjIsIAotICAgIDYsIDIyMywgMTkwLCAxNCwgMjIsIDYsIDIxNywgMTMzLCA4NywgMTQsIDIyLCA2LCAyMjAsIDEwMywgMTQsIDIyLCA2LCAKLSAgICAyMTcsIDI0OCwgMTQsIDIyLCA2LCAyMTUsIDEyOCwgMTQsIDIyLCA2LCAyMjYsIDksIDE0LCAyMiwgNiwgMjUwLCA0NywgMTQsIAotICAgIDIyLCA2LCAyMjUsIDQ2LCAxNCwgMjIsIDYsIDIyNywgNjcsIDE0LCAyMiwgMjMwLCAzOSwgMTQsIDIyLCAzLCAyNTQsIDUyLCAKLSAgICAxNCwgMjIsIDMsIDI1MSwgMjAzLCAxNCwgMjIsIDMsIDI0MywgODMsIDE0LCAyMiwgMywgMjQ4LCA1LCAxNCwgMjIsIDMsIAotICAgIDI0NSwgNjMsIDE0LCAyMiwgMywgMjEyLCA3OCwgMTQsIDIyLCAzLCAyNDUsIDI4LCAxNCwgMjIsIDMsIDIxNywgMTMyLCAxNCwgCi0gICAgMjIsIDMsIDIzNSwgMTgzLCAxNCwgMjIsIDMsIDIzNCwgMjI3LCAxNCwgMjIsIDMsIDIzMywgMTIyLCAxNCwgMjIsIDMsIAotICAgIDIzMCwgMTcyLCAxNCwgMjIsIDMsIDIyOCwgOTIsIDE0LCAyMiwgMywgMjEzLCAxNDUsIDE0LCAyMiwgMywgMjI3LCA2NSwgCi0gICAgMTQsIDIyLCAzLCAyMjUsIDI0MCwgMTQsIDIyLCAzLCAyMjMsIDE5MCwgMTQsIDIyLCAzLCA0MCwgMjIwLCAxMDMsIDE0LCAKLSAgICAyMiwgMywgMjIwLCAxMDMsIDE0LCAyMiwgMywgMjE3LCAyNDgsIDE0LCAyMiwgMywgMjE1LCAxMjgsIDE0LCAyMiwgMywgCi0gICAgMjI2LCA5LCAxNCwgMjIsIDMsIDI1MCwgNDcsIDE0LCAyMiwgMywgMjI1LCA0NiwgMTQsIDIyLCAzLCAyMjcsIDY3LCAxNCwgCi0gICAgMjIsIDIyNiwgMTI1LCAyNDcsIDE4NSwgMTQsIDIyLCAyNDUsIDY0LCA4NywgMTQsIDIyLCAyMTcsIDEzMywgODcsIDE0LCAKLSAgICAyMiwgMjM0LCAyMjgsIDg3LCAxNCwgMjIsIDIyNiwgMTAsIDg3LCAxNCwgMjIsIDIyMywgMTkxLCA4NywgMTQsIDIyLCAyMjUsIAotICAgIDI0MSwgODcsIDE0LCAzMiwgNiwgMjU0LCA1MiwgMTQsIDMyLCA2LCAyNTEsIDIwMywgMTQsIDMyLCA2LCAyNDMsIDgzLCAxNCwgCi0gICAgMzIsIDYsIDI0OCwgNSwgMTQsIDMyLCA2LCAyNDUsIDYzLCAxNCwgMzIsIDYsIDIxMiwgNzgsIDE0LCAzMiwgNiwgMjQ1LCAKLSAgICAyOCwgMTQsIDMyLCA2LCAyMTcsIDEzMiwgMTQsIDMyLCA2LCAyMzUsIDE4MywgMTQsIDMyLCA2LCAyMzQsIDIyNywgMTQsIAotICAgIDMyLCA2LCAyMzMsIDEyMiwgMTQsIDMyLCA2LCAyMzAsIDE3MiwgMTQsIDMyLCA2LCAyMjgsIDkyLCAxNCwgMzIsIDYsIDIxMywgCi0gICAgMTQ1LCAxNCwgMzIsIDYsIDIyNywgNjUsIDE0LCAzMiwgNiwgMjI1LCAyNDAsIDE0LCAzMiwgNiwgMjIzLCAxOTAsIDE0LCAKLSAgICAzMiwgNiwgMjE3LCAxMzMsIDg3LCAxNCwgMzIsIDYsIDIyMCwgMTAzLCAxNCwgMzIsIDYsIDIxNywgMjQ4LCAxNCwgMzIsIDYsIAotICAgIDIxNSwgMTI4LCAxNCwgMzIsIDYsIDIyNiwgOSwgMTQsIDMyLCA2LCAyNTAsIDQ3LCAxNCwgMzIsIDYsIDIyNSwgNDYsIDE0LCAKLSAgICAzMiwgNiwgMjI3LCA2NywgMTQsIDMyLCAyMzAsIDM5LCAxNCwgMzIsIDMsIDI1NCwgNTIsIDE0LCAzMiwgMywgMjUxLCAyMDMsIAotICAgIDE0LCAzMiwgMywgMjQzLCA4MywgMTQsIDMyLCAzLCAyNDgsIDUsIDE0LCAzMiwgMywgMjQ1LCA2MywgMTQsIDMyLCAzLCAKLSAgICAyMTIsIDc4LCAxNCwgMzIsIDMsIDI0NSwgMjgsIDE0LCAzMiwgMywgMjE3LCAxMzIsIDE0LCAzMiwgMywgMjM1LCAxODMsIAotICAgIDE0LCAzMiwgMywgMjM0LCAyMjcsIDE0LCAzMiwgMywgMjMzLCAxMjIsIDE0LCAzMiwgMywgMjMwLCAxNzIsIDE0LCAzMiwgMywgCi0gICAgMjI4LCA5MiwgMTQsIDMyLCAzLCAyMTMsIDE0NSwgMTQsIDMyLCAzLCAyMjcsIDY1LCAxNCwgMzIsIDMsIDIyNSwgMjQwLCAKLSAgICAxNCwgMzIsIDMsIDIyMywgMTkwLCAxNCwgMzIsIDMsIDQwLCAyMjAsIDEwMywgMTQsIDMyLCAzLCAyMjAsIDEwMywgMTQsIAotICAgIDMyLCAzLCAyMTcsIDI0OCwgMTQsIDMyLCAzLCAyMTUsIDEyOCwgMTQsIDMyLCAzLCAyMjYsIDksIDE0LCAzMiwgMywgMjUwLCAKLSAgICA0NywgMTQsIDMyLCAzLCAyMjUsIDQ2LCAxNCwgMzIsIDMsIDIyNywgNjcsIDE0LCAzMiwgMjI2LCAxMjUsIDI0NywgMTg1LCAKLSAgICAxNCwgMzIsIDI0NSwgNjQsIDg3LCAxNCwgMzIsIDIxNywgMTMzLCA4NywgMTQsIDMyLCAyMzQsIDIyOCwgODcsIDE0LCAzMiwgCi0gICAgMjI2LCAxMCwgODcsIDE0LCAzMiwgMjIzLCAxOTEsIDg3LCAxNCwgMzIsIDIyNSwgMjQxLCA4NywgMTQsIDIyLCAzMiwgNiwgCi0gICAgMjU0LCA1MiwgMTQsIDIyLCAzMiwgNiwgMjUxLCAyMDMsIDE0LCAyMiwgMzIsIDYsIDI0MywgODMsIDE0LCAyMiwgMzIsIDYsIAotICAgIDI0OCwgNSwgMTQsIDIyLCAzMiwgNiwgMjQ1LCA2MywgMTQsIDIyLCAzMiwgNiwgMjEyLCA3OCwgMTQsIDIyLCAzMiwgNiwgCi0gICAgMjQ1LCAyOCwgMTQsIDIyLCAzMiwgNiwgMjE3LCAxMzIsIDE0LCAyMiwgMzIsIDYsIDIzNSwgMTgzLCAxNCwgMjIsIDMyLCA2LCAKLSAgICAyMzQsIDIyNywgMTQsIDIyLCAzMiwgNiwgMjMzLCAxMjIsIDE0LCAyMiwgMzIsIDYsIDIzMCwgMTcyLCAxNCwgMjIsIDMyLCAKLSAgICA2LCAyMjgsIDkyLCAxNCwgMjIsIDMyLCA2LCAyMTMsIDE0NSwgMTQsIDIyLCAzMiwgNiwgMjI3LCA2NSwgMTQsIDIyLCAzMiwgCi0gICAgNiwgMjI1LCAyNDAsIDE0LCAyMiwgMzIsIDYsIDIyMywgMTkwLCAxNCwgMjIsIDMyLCA2LCAyMTcsIDEzMywgODcsIDE0LCAKLSAgICAyMiwgMzIsIDYsIDIyMCwgMTAzLCAxNCwgMjIsIDMyLCA2LCAyMTcsIDI0OCwgMTQsIDIyLCAzMiwgNiwgMjE1LCAxMjgsIAotICAgIDE0LCAyMiwgMzIsIDYsIDIyNiwgOSwgMTQsIDIyLCAzMiwgNiwgMjUwLCA0NywgMTQsIDIyLCAzMiwgNiwgMjI1LCA0NiwgCi0gICAgMTQsIDIyLCAzMiwgNiwgMjI3LCA2NywgMTQsIDIyLCAzMiwgMjMwLCAzOSwgMTQsIDIyLCAzMiwgMywgMjU0LCA1MiwgMTQsIAotICAgIDIyLCAzMiwgMywgMjUxLCAyMDMsIDE0LCAyMiwgMzIsIDMsIDI0MywgODMsIDE0LCAyMiwgMzIsIDMsIDI0OCwgNSwgMTQsIAotICAgIDIyLCAzMiwgMywgMjQ1LCA2MywgMTQsIDIyLCAzMiwgMywgMjEyLCA3OCwgMTQsIDIyLCAzMiwgMywgMjQ1LCAyOCwgMTQsIAotICAgIDIyLCAzMiwgMywgMjE3LCAxMzIsIDE0LCAyMiwgMzIsIDMsIDIzNSwgMTgzLCAxNCwgMjIsIDMyLCAzLCAyMzQsIDIyNywgCi0gICAgMTQsIDIyLCAzMiwgMywgMjMzLCAxMjIsIDE0LCAyMiwgMzIsIDMsIDIzMCwgMTcyLCAxNCwgMjIsIDMyLCAzLCAyMjgsIDkyLCAKLSAgICAxNCwgMjIsIDMyLCAzLCAyMTMsIDE0NSwgMTQsIDIyLCAzMiwgMywgMjI3LCA2NSwgMTQsIDIyLCAzMiwgMywgMjI1LCAyNDAsIAotICAgIDE0LCAyMiwgMzIsIDMsIDIyMywgMTkwLCAxNCwgMjIsIDMyLCAzLCA0MCwgMjIwLCAxMDMsIDE0LCAyMiwgMzIsIDMsIDIyMCwgCi0gICAgMTAzLCAxNCwgMjIsIDMyLCAzLCAyMTcsIDI0OCwgMTQsIDIyLCAzMiwgMywgMjE1LCAxMjgsIDE0LCAyMiwgMzIsIDMsIAotICAgIDIyNiwgOSwgMTQsIDIyLCAzMiwgMywgMjUwLCA0NywgMTQsIDIyLCAzMiwgMywgMjI1LCA0NiwgMTQsIDIyLCAzMiwgMywgCi0gICAgMjI3LCA2NywgMTQsIDIyLCAzMiwgMjI2LCAxMjUsIDI0NywgMTg1LCAxNCwgMjIsIDMyLCAyNDUsIDY0LCA4NywgMTQsIDIyLCAKLSAgICAzMiwgMjE3LCAxMzMsIDg3LCAxNCwgMjIsIDMyLCAyMzQsIDIyOCwgODcsIDE0LCAyMiwgMzIsIDIyNiwgMTAsIDg3LCAxNCwgCi0gICAgMjIsIDMyLCAyMjMsIDE5MSwgODcsIDE0LCAyMiwgMzIsIDIyNSwgMjQxLCA4NywgMTQsIDM1LCAyMiwgNiwgMjU0LCA1MiwgCi0gICAgMTQsIDM1LCAyMiwgNiwgMjUxLCAyMDMsIDE0LCAzNSwgMjIsIDYsIDI0MywgODMsIDE0LCAzNSwgMjIsIDYsIDI0OCwgNSwgCi0gICAgMTQsIDM1LCAyMiwgNiwgMjQ1LCA2MywgMTQsIDM1LCAyMiwgNiwgMjEyLCA3OCwgMTQsIDM1LCAyMiwgNiwgMjQ1LCAyOCwgCi0gICAgMTQsIDM1LCAyMiwgNiwgMjE3LCAxMzIsIDE0LCAzNSwgMjIsIDYsIDIzNSwgMTgzLCAxNCwgMzUsIDIyLCA2LCAyMzQsIAotICAgIDIyNywgMTQsIDM1LCAyMiwgNiwgMjMzLCAxMjIsIDE0LCAzNSwgMjIsIDYsIDIzMCwgMTcyLCAxNCwgMzUsIDIyLCA2LCAKLSAgICAyMjgsIDkyLCAxNCwgMzUsIDIyLCA2LCAyMTMsIDE0NSwgMTQsIDM1LCAyMiwgNiwgMjI3LCA2NSwgMTQsIDM1LCAyMiwgNiwgCi0gICAgMjI1LCAyNDAsIDE0LCAzNSwgMjIsIDYsIDIyMywgMTkwLCAxNCwgMzUsIDIyLCA2LCAyMTcsIDEzMywgODcsIDE0LCAzNSwgCi0gICAgMjIsIDYsIDIyMCwgMTAzLCAxNCwgMzUsIDIyLCA2LCAyMTcsIDI0OCwgMTQsIDM1LCAyMiwgNiwgMjE1LCAxMjgsIDE0LCAKLSAgICAzNSwgMjIsIDYsIDIyNiwgOSwgMTQsIDM1LCAyMiwgNiwgMjUwLCA0NywgMTQsIDM1LCAyMiwgNiwgMjI1LCA0NiwgMTQsIAotICAgIDM1LCAyMiwgNiwgMjI3LCA2NywgMTQsIDM1LCAyMiwgMjMwLCAzOSwgMTQsIDM1LCAyMiwgMywgMjU0LCA1MiwgMTQsIDM1LCAKLSAgICAyMiwgMywgMjUxLCAyMDMsIDE0LCAzNSwgMjIsIDMsIDI0MywgODMsIDE0LCAzNSwgMjIsIDMsIDI0OCwgNSwgMTQsIDM1LCAKLSAgICAyMiwgMywgMjQ1LCA2MywgMTQsIDM1LCAyMiwgMywgMjEyLCA3OCwgMTQsIDM1LCAyMiwgMywgMjQ1LCAyOCwgMTQsIDM1LCAKLSAgICAyMiwgMywgMjE3LCAxMzIsIDE0LCAzNSwgMjIsIDMsIDIzNSwgMTgzLCAxNCwgMzUsIDIyLCAzLCAyMzQsIDIyNywgMTQsIAotICAgIDM1LCAyMiwgMywgMjMzLCAxMjIsIDE0LCAzNSwgMjIsIDMsIDIzMCwgMTcyLCAxNCwgMzUsIDIyLCAzLCAyMjgsIDkyLCAxNCwgCi0gICAgMzUsIDIyLCAzLCAyMTMsIDE0NSwgMTQsIDM1LCAyMiwgMywgMjI3LCA2NSwgMTQsIDM1LCAyMiwgMywgMjI1LCAyNDAsIDE0LCAKLSAgICAzNSwgMjIsIDMsIDIyMywgMTkwLCAxNCwgMzUsIDIyLCAzLCA0MCwgMjIwLCAxMDMsIDE0LCAzNSwgMjIsIDMsIDIyMCwgCi0gICAgMTAzLCAxNCwgMzUsIDIyLCAzLCAyMTcsIDI0OCwgMTQsIDM1LCAyMiwgMywgMjE1LCAxMjgsIDE0LCAzNSwgMjIsIDMsIAotICAgIDIyNiwgOSwgMTQsIDM1LCAyMiwgMywgMjUwLCA0NywgMTQsIDM1LCAyMiwgMywgMjI1LCA0NiwgMTQsIDM1LCAyMiwgMywgCi0gICAgMjI3LCA2NywgMTQsIDM1LCAyMiwgMjI2LCAxMjUsIDI0NywgMTg1LCAxNCwgMzUsIDIyLCAyNDUsIDY0LCA4NywgMTQsIDM1LCAKLSAgICAyMiwgMjE3LCAxMzMsIDg3LCAxNCwgMzUsIDIyLCAyMzQsIDIyOCwgODcsIDE0LCAzNSwgMjIsIDIyNiwgMTAsIDg3LCAxNCwgCi0gICAgMzUsIDIyLCAyMjMsIDE5MSwgODcsIDE0LCAzNSwgMjIsIDIyNSwgMjQxLCA4NywgMTQsIDM1LCAyMiwgMzIsIDYsIDI1NCwgCi0gICAgNTIsIDE0LCAzNSwgMjIsIDMyLCA2LCAyNTEsIDIwMywgMTQsIDM1LCAyMiwgMzIsIDYsIDI0MywgODMsIDE0LCAzNSwgMjIsIAotICAgIDMyLCA2LCAyNDgsIDUsIDE0LCAzNSwgMjIsIDMyLCA2LCAyNDUsIDYzLCAxNCwgMzUsIDIyLCAzMiwgNiwgMjEyLCA3OCwgCi0gICAgMTQsIDM1LCAyMiwgMzIsIDYsIDI0NSwgMjgsIDE0LCAzNSwgMjIsIDMyLCA2LCAyMTcsIDEzMiwgMTQsIDM1LCAyMiwgMzIsIAotICAgIDYsIDIzNSwgMTgzLCAxNCwgMzUsIDIyLCAzMiwgNiwgMjM0LCAyMjcsIDE0LCAzNSwgMjIsIDMyLCA2LCAyMzMsIDEyMiwgCi0gICAgMTQsIDM1LCAyMiwgMzIsIDYsIDIzMCwgMTcyLCAxNCwgMzUsIDIyLCAzMiwgNiwgMjI4LCA5MiwgMTQsIDM1LCAyMiwgMzIsIAotICAgIDYsIDIxMywgMTQ1LCAxNCwgMzUsIDIyLCAzMiwgNiwgMjI3LCA2NSwgMTQsIDM1LCAyMiwgMzIsIDYsIDIyNSwgMjQwLCAxNCwgCi0gICAgMzUsIDIyLCAzMiwgNiwgMjIzLCAxOTAsIDE0LCAzNSwgMjIsIDMyLCA2LCAyMTcsIDEzMywgODcsIDE0LCAzNSwgMjIsIDMyLCAKLSAgICA2LCAyMjAsIDEwMywgMTQsIDM1LCAyMiwgMzIsIDYsIDIxNywgMjQ4LCAxNCwgMzUsIDIyLCAzMiwgNiwgMjE1LCAxMjgsIAotICAgIDE0LCAzNSwgMjIsIDMyLCA2LCAyMjYsIDksIDE0LCAzNSwgMjIsIDMyLCA2LCAyNTAsIDQ3LCAxNCwgMzUsIDIyLCAzMiwgNiwgCi0gICAgMjI1LCA0NiwgMTQsIDM1LCAyMiwgMzIsIDYsIDIyNywgNjcsIDE0LCAzNSwgMjIsIDMyLCAyMzAsIDM5LCAxNCwgMzUsIDIyLCAKLSAgICAzMiwgMywgMjU0LCA1MiwgMTQsIDM1LCAyMiwgMzIsIDMsIDI1MSwgMjAzLCAxNCwgMzUsIDIyLCAzMiwgMywgMjQzLCA4MywgCi0gICAgMTQsIDM1LCAyMiwgMzIsIDMsIDI0OCwgNSwgMTQsIDM1LCAyMiwgMzIsIDMsIDI0NSwgNjMsIDE0LCAzNSwgMjIsIDMyLCAzLCAKLSAgICAyMTIsIDc4LCAxNCwgMzUsIDIyLCAzMiwgMywgMjQ1LCAyOCwgMTQsIDM1LCAyMiwgMzIsIDMsIDIxNywgMTMyLCAxNCwgMzUsIAotICAgIDIyLCAzMiwgMywgMjM1LCAxODMsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMzQsIDIyNywgMTQsIDM1LCAyMiwgMzIsIDMsIDIzMywgCi0gICAgMTIyLCAxNCwgMzUsIDIyLCAzMiwgMywgMjMwLCAxNzIsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMjgsIDkyLCAxNCwgMzUsIDIyLCAKLSAgICAzMiwgMywgMjEzLCAxNDUsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMjcsIDY1LCAxNCwgMzUsIDIyLCAzMiwgMywgMjI1LCAyNDAsIAotICAgIDE0LCAzNSwgMjIsIDMyLCAzLCAyMjMsIDE5MCwgMTQsIDM1LCAyMiwgMzIsIDMsIDQwLCAyMjAsIDEwMywgMTQsIDM1LCAyMiwgCi0gICAgMzIsIDMsIDIyMCwgMTAzLCAxNCwgMzUsIDIyLCAzMiwgMywgMjE3LCAyNDgsIDE0LCAzNSwgMjIsIDMyLCAzLCAyMTUsIAotICAgIDEyOCwgMTQsIDM1LCAyMiwgMzIsIDMsIDIyNiwgOSwgMTQsIDM1LCAyMiwgMzIsIDMsIDI1MCwgNDcsIDE0LCAzNSwgMjIsIAotICAgIDMyLCAzLCAyMjUsIDQ2LCAxNCwgMzUsIDIyLCAzMiwgMywgMjI3LCA2NywgMTQsIDM1LCAyMiwgMzIsIDIyNiwgMTI1LCAKLSAgICAyNDcsIDE4NSwgMTQsIDM1LCAyMiwgMzIsIDI0NSwgNjQsIDg3LCAxNCwgMzUsIDIyLCAzMiwgMjE3LCAxMzMsIDg3LCAxNCwgCi0gICAgMzUsIDIyLCAzMiwgMjM0LCAyMjgsIDg3LCAxNCwgMzUsIDIyLCAzMiwgMjI2LCAxMCwgODcsIDE0LCAzNSwgMjIsIDMyLCAKLSAgICAyMjMsIDE5MSwgODcsIDE0LCAzNSwgMjIsIDMyLCAyMjUsIDI0MSwgODcsIDE0LCAyMiwgNiwgMjQ3LCAxNzksIDE0LCAyMiwgCi0gICAgMywgMjQ3LCAxNzksIDE0LCAyMiwgMjEsIDIxMiwgNzksIDE0LCAyMiwgMjEsIDExNiwgMTQsIDIyLCAyMSwgMTA5LCAxNCwgCi0gICAgMjIsIDIxLCAxNjYsIDE0LCAyMiwgMjEsIDE2MywgMTQsIDIyLCAyMSwgMTgwLCAxNCwgMjIsIDIxLCAxODksIDE0LCAyMiwgCi0gICAgMjEsIDE5OCwgMTQsIDIyLCAyMSwgMTk1LCAxNCwgMjIsIDIxLCAyMDAsIDE0LCAxODcsIDIxLCAyMTIsIDc5LCAxNCwgMTg3LCAKLSAgICAyMSwgMTE2LCAxNCwgMTg3LCAyMSwgMTA5LCAxNCwgMTg3LCAyMSwgMTY2LCAxNCwgMTg3LCAyMSwgMTYzLCAxNCwgMTg3LCAKLSAgICAyMSwgMTgwLCAxNCwgMTg3LCAyMSwgMTg5LCAxNCwgMTg3LCAyMSwgMTk4LCAxNCwgMTg3LCAyMSwgMTk1LCAxNCwgMTg3LCAKLSAgICAyMSwgMjAwLCAxNCwgMzUsIDIxLCAyMTIsIDc5LCAxNCwgMzUsIDIxLCAxMTYsIDE0LCAzNSwgMjEsIDEwOSwgMTQsIDM1LCAKLSAgICAyMSwgMTY2LCAxNCwgMzUsIDIxLCAxNjMsIDE0LCAzNSwgMjEsIDE4MCwgMTQsIDM1LCAyMSwgMTg5LCAxNCwgMzUsIDIxLCAKLSAgICAxOTgsIDE0LCAzNSwgMjEsIDE5NSwgMTQsIDM1LCAyMSwgMjAwLCAxNCwgMzUsIDIyLCAyMSwgMjEyLCA3OSwgMTQsIDM1LCAKLSAgICAyMiwgMjEsIDExNiwgMTQsIDM1LCAyMiwgMjEsIDEwOSwgMTQsIDM1LCAyMiwgMjEsIDE2NiwgMTQsIDM1LCAyMiwgMjEsIAotICAgIDE2MywgMTQsIDM1LCAyMiwgMjEsIDE4MCwgMTQsIDM1LCAyMiwgMjEsIDE4OSwgMTQsIDM1LCAyMiwgMjEsIDE5OCwgMTQsIAotICAgIDM1LCAyMiwgMjEsIDE5NSwgMTQsIDM1LCAyMiwgMjEsIDIwMCwgMTQsIDIzMCwgMjA4LCAyMSwgMjEyLCA3OSwgMTQsIDIzMCwgCi0gICAgMjA4LCAyMSwgMTE2LCAxNCwgMjMwLCAyMDgsIDIxLCAxMDksIDE0LCAyMzAsIDIwOCwgMjEsIDE2NiwgMTQsIDIzMCwgMjA4LCAKLSAgICAyMSwgMTYzLCAxNCwgMjMwLCAyMDgsIDIxLCAxODAsIDE0LCAyMzAsIDIwOCwgMjEsIDE4OSwgMTQsIDIzMCwgMjA4LCAyMSwgCi0gICAgMTk4LCAxNCwgMjMwLCAyMDgsIDIxLCAxOTUsIDE0LCAyMzAsIDIwOCwgMjEsIDIwMCwgMjMyLCAxMCwgODUsIDI0NSwgMTc2LCAKLSAgICAyMTMsIDIyNCwgMjMyLCAxMCwgODUsIDIxOSwgMjE1LCAyMTMsIDIyNCwgMjMyLCAxMCwgODUsIDIxMywgMjUwLCAyMTMsIAotICAgIDIyNCwgMjMyLCAxMCwgODUsIDIyOCwgMTY3LCAyMTMsIDIyNCwgMjMyLCAxMCwgODUsIDIyNCwgNCwgMjQ2LCA1MCwgMjMyLCAKLSAgICAxMCwgODUsIDI0MiwgMTA0LCAyNDYsIDUwLCAyMzIsIDEwLCA4NSwgNjcsIDI0NiwgNTAsIDIzMiwgMTAsIDg1LCAxMjIsIAotICAgIDY1LCAyNTAsIDc3LCAyMzIsIDEwLCA4NSwgMTE3LCA2NSwgMjUwLCA3NywgMjMyLCAxMCwgODUsIDEzMywgNjUsIDI1MCwgCi0gICAgNzcsIDIzMiwgMTAsIDg1LCAyNDMsIDIzNywgNjUsIDI1MCwgNzcsIDIzMiwgMTAsIDg1LCAyNDQsIDUwLCA2NSwgMjUwLCAKLSAgICA3NywgMjMyLCAxMCwgODUsIDIyMCwgNTMsIDY1LCAyNTAsIDc3LCAyMzIsIDEwLCA4NSwgMjIxLCA0MywgNjUsIDI1MCwgNzcsIAotICAgIDIzMiwgMTAsIDg1LCAyNDUsIDE1MCwgNjUsIDI1MCwgNzcsIDIzMiwgMTAsIDg1LCAyMjksIDMxLCA2NSwgMjUwLCA3NywgCi0gICAgMjMyLCAxMCwgODUsIDEyMiwgNjUsIDI1MiwgNzIsIDIzMiwgMTAsIDg1LCAxMTcsIDY1LCAyNTIsIDcyLCAyMzIsIDEwLCAKLSAgICA4NSwgMTMzLCA2NSwgMjUyLCA3MiwgMjMyLCAxMCwgODUsIDI0MywgMjM3LCA2NSwgMjUyLCA3MiwgMjMyLCAxMCwgODUsIAotICAgIDI0NCwgNTAsIDY1LCAyNTIsIDcyLCAyMzIsIDEwLCA4NSwgMjIwLCA1MywgNjUsIDI1MiwgNzIsIDIzMiwgMTAsIDg1LCAKLSAgICAyMjEsIDQzLCA2NSwgMjUyLCA3MiwgMjMyLCAxMCwgODUsIDI0NSwgMTUwLCA2NSwgMjUyLCA3MiwgMjMyLCAxMCwgODUsIAotICAgIDIyOSwgMzEsIDY1LCAyNTIsIDcyLCAyMzIsIDEwLCA4NSwgMTIyLCA2NSwgMjQ5LCAyMjcsIDIzMiwgMTAsIDg1LCAxMTcsIAotICAgIDY1LCAyNDksIDIyNywgMjMyLCAxMCwgODUsIDEzMywgNjUsIDI0OSwgMjI3LCAyMzIsIDEwLCA4NSwgMjQzLCAyMzcsIDY1LCAKLSAgICAyNDksIDIyNywgMjMyLCAxMCwgODUsIDI0NCwgNTAsIDY1LCAyNDksIDIyNywgMjMyLCAxMCwgODUsIDIyMCwgNTMsIDY1LCAKLSAgICAyNDksIDIyNywgMjMyLCAxMCwgODUsIDIyMSwgNDMsIDY1LCAyNDksIDIyNywgMjMyLCAxMCwgODUsIDI0NSwgMTUwLCA2NSwgCi0gICAgMjQ5LCAyMjcsIDIzMiwgMTAsIDg1LCAyMjksIDMxLCA2NSwgMjQ5LCAyMjcsIDIzMiwgMTAsIDg1LCAyMjUsIDE1OSwgMjMyLCAKLSAgICAxMCwgODUsIDIyNywgMjIsIDIzMiwgMTAsIDg1LCAyNTIsIDczLCAyMzIsIDEwLCA4NSwgMjUwLCA3LCAyMzIsIDEwLCA4NSwgCi0gICAgMjE5LCAxNzEsIDIzMiwgMTAsIDg1LCAyMTgsIDI0MCwgMjMyLCAxMCwgODUsIDI1MywgOTUsIDIzMiwgMTAsIDg1LCAyMTMsIAotICAgIDIxNywgMjMyLCAxMCwgODUsIDIzNSwgNjUsIDIzMiwgMTAsIDg1LCAyNTIsIDEwMSwgMTI3LCA4NSwgMTk5LCAyNTIsIDEwMSwgCi0gICAgMTI3LCA4NSwgMjQxLCAzMCwgMTI3LCA4NSwgMjQxLCAyOSwgMTI3LCA4NSwgMjQxLCAyOCwgMTI3LCA4NSwgMjQxLCAyNywgCi0gICAgMTI3LCA4NSwgMjQxLCAyNiwgMTI3LCA4NSwgMjQxLCAyNSwgMTI3LCA4NSwgMjQxLCAyNCwgMTI3LCA4NSwgMjQxLCAyMywgCi0gICAgMTI3LCA4NSwgMjQxLCAyMiwgMTI3LCA4NSwgMjQxLCAyMSwgMTI3LCA4NSwgMjQxLCAyMCwgMTI3LCA4NSwgMjQxLCAxOSwgCi0gICAgMTI3LCA4NSwgMjQxLCAxOCwgMTI3LCA4NSwgMjQxLCAxNywgMTI3LCA4NSwgMjQxLCAxNiwgMTI3LCA4NSwgMjQxLCAxNSwgCi0gICAgMTI3LCA4NSwgMjQxLCAxNCwgMTI3LCA4NSwgMjQxLCAxMywgMTI3LCA4NSwgMjQxLCAxMiwgMTI3LCA4NSwgMjQxLCAxMSwgCi0gICAgMTI3LCA4NSwgMjQxLCAxMCwgMTI3LCA4NSwgMjQxLCA5LCAxMjcsIDg1LCAyNDEsIDgsIDEyNywgODUsIDI0MSwgNywgMTI3LCAKLSAgICA4NSwgMjQxLCA2LCAxMjcsIDg1LCAyNDEsIDUsIDEyNywgODUsIDI0MSwgNCwgMTI3LCA4NSwgMjQxLCAzLCAxMjcsIDg1LCAKLSAgICAyNDEsIDIsIDEyNywgODUsIDI0MSwgMSwgMTI3LCA4NSwgMjQxLCAwLCAxMjcsIDg1LCAyNDAsIDI1NSwgMTI3LCA4NSwgCi0gICAgMjQwLCAyNTQsIDEyNywgODUsIDI0MCwgMjUzLCAxMjcsIDg1LCAyNDAsIDI1MiwgMTI3LCA4NSwgMjQwLCAyNTEsIDEyNywgCi0gICAgODUsIDI0MCwgMjUwLCAxMjcsIDg1LCAyNDAsIDI0OSwgMTI3LCA4NSwgMjQwLCAyNDgsIDEyNywgODUsIDI0MCwgMjQ3LCAKLSAgICAxMjcsIDg1LCAyNDAsIDI0NiwgMTI3LCA4NSwgMjQwLCAyNDUsIDEyNywgODUsIDI0MCwgMjQ0LCAxMjcsIDg1LCAyNDAsIAotICAgIDI0MywgMTI3LCA4NSwgMjQwLCAyNDIsIDEyNywgODUsIDI0MCwgMjQxLCAxMjcsIDg1LCAyNDAsIDI0MCwgMTI3LCA4NSwgCi0gICAgMjQwLCAyMzksIDEyNywgODUsIDI0MCwgMjM4LCAxMjcsIDg1LCA3MSwgMjUyLCAxMDEsIDEyNywgODUsIDIxNCwgMjE1LCAKLSAgICAxMjcsIDg1LCAyMTQsIDIxNCwgMTI3LCA4NSwgMjE0LCAyMTMsIDEyNywgODUsIDIxNCwgMjEyLCAxMjcsIDg1LCAyMTQsIAotICAgIDIxMSwgMTI3LCA4NSwgMjE0LCAyMTAsIDEyNywgODUsIDIxNCwgMjA5LCAxMjcsIDg1LCAyMTQsIDIwOCwgMTI3LCA4NSwgCi0gICAgMjE0LCAyMDcsIDEyNywgODUsIDIxNCwgMjA2LCAxMjcsIDg1LCAyMTQsIDIwNSwgMTI3LCA4NSwgMjE0LCAyMDQsIDEyNywgCi0gICAgODUsIDIxNCwgMjAzLCAxMjcsIDg1LCAyMTQsIDIwMiwgMTI3LCA4NSwgMjE0LCAyMDEsIDEyNywgODUsIDIxNCwgMjAwLCAKLSAgICAxMjcsIDg1LCAyMTQsIDE5OSwgMTI3LCA4NSwgMjE0LCAxOTgsIDEyNywgODUsIDIxNCwgMTk3LCAxMjcsIDg1LCAyMTQsIAotICAgIDE5NiwgMTI3LCA4NSwgMjE0LCAxOTUsIDEyNywgODUsIDIxNCwgMTk0LCAxMjcsIDg1LCAyMTQsIDE5MywgMTI3LCA4NSwgCi0gICAgMjE0LCAxOTIsIDEyNywgODUsIDIxNCwgMTkxLCAxMjcsIDg1LCAyMTQsIDE5MCwgMTI3LCA4NSwgMjE0LCAxODksIDEyNywgCi0gICAgODUsIDIxNCwgMTg4LCAxMjcsIDg1LCAyMTQsIDE4NywgMTI3LCA4NSwgMjE0LCAxODYsIDEyNywgODUsIDIxNCwgMTg1LCAKLSAgICAxMjcsIDg1LCAyMTQsIDE4NCwgMTI3LCA4NSwgMjE0LCAxODMsIDEyNywgODUsIDIxNCwgMTgyLCAxMjcsIDg1LCAyMTQsIAotICAgIDE4MSwgMTI3LCA4NSwgMjE0LCAxODAsIDEyNywgODUsIDIxNCwgMTc5LCAxMjcsIDg1LCAyMTQsIDE3OCwgMTI3LCA4NSwgCi0gICAgMjE0LCAxNzcsIDEyNywgODUsIDIxNCwgMTc2LCAxMjcsIDg1LCAyMTQsIDE3NSwgMTI3LCA4NSwgMjE0LCAxNzQsIDEyNywgCi0gICAgODUsIDIxNCwgMTczLCAxMjcsIDg1LCAyMTQsIDE3MiwgMTI3LCA4NSwgMjE0LCAxNzEsIDEyNywgODUsIDIxNCwgMTcwLCAKLSAgICAxMjcsIDg1LCAyMTQsIDE2OSwgMTI3LCA4NSwgMjE0LCAxNjgsIDEyNywgODUsIDIxNCwgMTY3LCAyMjUsIDE2NSwgMjUwLCAKLSAgICAxNzUsIDI1MiwgMTAxLCAyMjUsIDE2NSwgMjUwLCAxNzUsIDI1NCwgMTY5LCA2NSwgMjE5LCAyMDMsIDIyNSwgMTY1LCAyNTAsIAotICAgIDE3NSwgMTE3LCA2NSwgMjE5LCAyMDMsIDIyNSwgMTY1LCAyNTAsIDE3NSwgMTMzLCA2NSwgMjE5LCAyMDMsIDIyNSwgMTY1LCAKLSAgICAyNTAsIDE3NSwgMjQzLCAyMzcsIDY1LCAyMTksIDIwMywgMjI1LCAxNjUsIDI1MCwgMTc1LCAyNDQsIDUwLCA2NSwgMjE5LCAKLSAgICAyMDMsIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjIwLCA1MywgNjUsIDIxOSwgMjAzLCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyMSwgCi0gICAgNDMsIDY1LCAyMTksIDIwMywgMjI1LCAxNjUsIDI1MCwgMTc1LCAyNDUsIDE1MCwgNjUsIDIxOSwgMjAzLCAyMjUsIDE2NSwgCi0gICAgMjUwLCAxNzUsIDIyOSwgMzEsIDY1LCAyMTksIDIwMywgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMTcsIDIwMSwgNjUsIDIxOSwgCi0gICAgMjAzLCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIzNSwgMTM3LCA2NSwgMjE5LCAyMDMsIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjM0LCAKLSAgICA0MCwgNjUsIDIxOSwgMjAzLCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyNCwgMTYwLCA2NSwgMjE5LCAyMDMsIDIyNSwgMTY1LCAKLSAgICAyNTAsIDE3NSwgMjM0LCA4OCwgNjUsIDIxOSwgMjAzLCAyMjUsIDE2NSwgMjUwLCAxNzUsIDI1NCwgMTY5LCA2NSwgMjQxLCAKLSAgICAyMDksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMTE3LCA2NSwgMjQxLCAyMDksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMTMzLCA2NSwgCi0gICAgMjQxLCAyMDksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjQzLCAyMzcsIDY1LCAyNDEsIDIwOSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAKLSAgICAyNDQsIDUwLCA2NSwgMjQxLCAyMDksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjIwLCA1MywgNjUsIDI0MSwgMjA5LCAyMjUsIAotICAgIDE2NSwgMjUwLCAxNzUsIDIyMSwgNDMsIDY1LCAyNDEsIDIwOSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyNDUsIDE1MCwgNjUsIAotICAgIDI0MSwgMjA5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyOSwgMzEsIDY1LCAyNDEsIDIwOSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAKLSAgICAyMTcsIDIwMSwgNjUsIDI0MSwgMjA5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIzNSwgMTM3LCA2NSwgMjQxLCAyMDksIDIyNSwgCi0gICAgMTY1LCAyNTAsIDE3NSwgMjM0LCA0MCwgNjUsIDI0MSwgMjA5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyNCwgMTYwLCA2NSwgCi0gICAgMjQxLCAyMDksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjM0LCA4OCwgNjUsIDI0MSwgMjA5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIAotICAgIDI1NCwgMTY5LCA2NSwgMjQ3LCAxOTksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMTE3LCA2NSwgMjQ3LCAxOTksIDIyNSwgMTY1LCAKLSAgICAyNTAsIDE3NSwgMTMzLCA2NSwgMjQ3LCAxOTksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjQzLCAyMzcsIDY1LCAyNDcsIDE5OSwgCi0gICAgMjI1LCAxNjUsIDI1MCwgMTc1LCAyNDQsIDUwLCA2NSwgMjQ3LCAxOTksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjIwLCA1MywgCi0gICAgNjUsIDI0NywgMTk5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyMSwgNDMsIDY1LCAyNDcsIDE5OSwgMjI1LCAxNjUsIDI1MCwgCi0gICAgMTc1LCAyNDUsIDE1MCwgNjUsIDI0NywgMTk5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyOSwgMzEsIDY1LCAyNDcsIDE5OSwgCi0gICAgMjI1LCAxNjUsIDI1MCwgMTc1LCAyMTcsIDIwMSwgNjUsIDI0NywgMTk5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIzNSwgMTM3LCAKLSAgICA2NSwgMjQ3LCAxOTksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjM0LCA0MCwgNjUsIDI0NywgMTk5LCAyMjUsIDE2NSwgMjUwLCAKLSAgICAxNzUsIDIyNCwgMTYwLCA2NSwgMjQ3LCAxOTksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjM0LCA4OCwgNjUsIDI0NywgMTk5LCAKLSAgICAyMjUsIDE2NSwgMjUwLCAxNzUsIDgzLCAyMzUsIDY1LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDI1NCwgMTY5LCA2NSwgMjQ5LCAKLSAgICAxNzksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMTE3LCA2NSwgMjQ5LCAxNzksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMTMzLCA2NSwgCi0gICAgMjQ5LCAxNzksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjQzLCAyMzcsIDY1LCAyNDksIDE3OSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAKLSAgICAyNDQsIDUwLCA2NSwgMjQ5LCAxNzksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjIwLCA1MywgNjUsIDI0OSwgMTc5LCAyMjUsIAotICAgIDE2NSwgMjUwLCAxNzUsIDIyMSwgNDMsIDY1LCAyNDksIDE3OSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAyNDUsIDE1MCwgNjUsIAotICAgIDI0OSwgMTc5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyOSwgMzEsIDY1LCAyNDksIDE3OSwgMjI1LCAxNjUsIDI1MCwgMTc1LCAKLSAgICAyMTcsIDIwMSwgNjUsIDI0OSwgMTc5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIzNSwgMTM3LCA2NSwgMjQ5LCAxNzksIDIyNSwgCi0gICAgMTY1LCAyNTAsIDE3NSwgMjM0LCA0MCwgNjUsIDI0OSwgMTc5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIDIyNCwgMTYwLCA2NSwgCi0gICAgMjQ5LCAxNzksIDIyNSwgMTY1LCAyNTAsIDE3NSwgMjM0LCA4OCwgNjUsIDI0OSwgMTc5LCAyMjUsIDE2NSwgMjUwLCAxNzUsIAotICAgIDY3LCAyMzUsIDY1LCAyMSwgMjEyLCA4MCwgMjQzLCAyMDAsIDIxOSwgNjksIDIxLCAyMTIsIDgwLCAyNDksIDE1NywgMjEsIAotICAgIDEyMiwgMjQ5LCAxNTcsIDIxLCAxMTcsIDI0OSwgMTU3LCAyMSwgMTMzLCAyNDksIDE1NywgMjEsIDI0MywgMjM3LCAyNDksIAotICAgIDE1NywgMjEsIDI0NCwgNTAsIDI0OSwgMTU3LCAyMSwgMjIwLCA1MywgMjQ5LCAxNTcsIDIxLCAyMjEsIDQzLCAyNDksIDE1NywgCi0gICAgMjEsIDI0NSwgMTUwLCAyNDksIDE1NywgMjEsIDIyOSwgMzEsIDI0OSwgMTU3LCA4NiwgNywgNiwgMSwgNjEsIDg2LCA3LCA2LCAKLSAgICAxLCAyNTMsIDc0LCA4NiwgNywgNiwgMSwgMjUwLCAyNTIsIDg2LCA3LCA2LCAxLCAyNDksIDMsIDg2LCA3LCA2LCAxLCA3NCwgCi0gICAgODYsIDcsIDYsIDEsIDI0NCwgMjMwLCA4NiwgNywgNiwgMSwgMjQzLCAxNzcsIDg2LCA3LCA2LCAxLCAyNDIsIDQxLCA4NiwgCi0gICAgNywgNiwgMSwgNzIsIDg2LCA3LCA2LCAxLCAyMzUsIDE0MiwgODYsIDcsIDYsIDEsIDIzNSwgMjcsIDg2LCA3LCA2LCAxLCAKLSAgICAxNTAsIDg2LCA3LCA2LCAxLCAxODMsIDg2LCA3LCA2LCAxLCAyMDQsIDg2LCA3LCA2LCAxLCA3NSwgODYsIDcsIDYsIDEsIAotICAgIDIyNiwgMjI5LCA4NiwgNywgNiwgMSwgMjI0LCAyNDAsIDg2LCA3LCA2LCAxLCAxNDksIDg2LCA3LCA2LCAxLCAxOTcsIDg2LCAKLSAgICA3LCA2LCAxLCAyMTgsIDk5LCA4NiwgNywgNiwgMSwgNjksIDg2LCA3LCA2LCAxLCAyMTUsIDc5LCA4NiwgNywgNiwgMSwgCi0gICAgMjE0LCA4MiwgODYsIDcsIDYsIDEsIDIxMywgMTY2LCA4NiwgNywgNiwgMSwgMjEzLCAxMDUsIDg2LCA3LCA2LCAxLCAyMTIsIAotICAgIDE1MiwgMjE2LCAyMTksIDIyMCwgMjMzLCAyNTEsIDg0LCA3LCA2LCAxLCAxOTcsIDM2LCAzMiwgNywgNiwgMSwgMjUwLCAKLSAgICAyNTIsIDM2LCAzMiwgNywgNiwgMSwgMTQ5LCAzNiwgMjUwLCAxMjUsIDM2LCAyMTMsIDE2OCwgOTEsIDcsIDYsIDEsIDYxLCAKLSAgICA5MSwgNywgNiwgMSwgMjUzLCA3NCwgOTEsIDcsIDYsIDEsIDI1MCwgMjUyLCA5MSwgNywgNiwgMSwgMjQ5LCAzLCA5MSwgNywgCi0gICAgNiwgMSwgNzQsIDkxLCA3LCA2LCAxLCAyNDQsIDIzMCwgOTEsIDcsIDYsIDEsIDI0MywgMTc3LCA5MSwgNywgNiwgMSwgMjQyLCAKLSAgICA0MSwgOTEsIDcsIDYsIDEsIDcyLCA5MSwgNywgNiwgMSwgMjM1LCAxNDIsIDkxLCA3LCA2LCAxLCAyMzUsIDI3LCA5MSwgNywgCi0gICAgNiwgMSwgMTUwLCA5MSwgNywgNiwgMSwgMTgzLCA5MSwgNywgNiwgMSwgMjA0LCA5MSwgNywgNiwgMSwgNzUsIDkxLCA3LCA2LCAKLSAgICAxLCAyMjYsIDIyOSwgOTEsIDcsIDYsIDEsIDIyNCwgMjQwLCA5MSwgNywgNiwgMSwgMTQ5LCA5MSwgNywgNiwgMSwgMTk3LCAKLSAgICA5MSwgNywgNiwgMSwgMjE4LCA5OSwgOTEsIDcsIDYsIDEsIDY5LCA5MSwgNywgNiwgMSwgMjE1LCA3OSwgOTEsIDcsIDYsIDEsIAotICAgIDIxNCwgODIsIDkxLCA3LCA2LCAxLCAyMTMsIDE2NiwgOTEsIDcsIDYsIDEsIDIxMywgMTA1LCA5MSwgNywgNiwgMSwgMjEyLCAKLSAgICAxNTIsIDkxLCAyNDAsIDE5MywgOTEsIDIzMCwgMTIwLCA5MSwgMjIyLCAxMDIsIDkxLCAyMTksIDE1OCwgOTEsIDIyNSwgOTgsIAotICAgIDkxLCAyMTQsIDcsIDE0NiwgMzYsIDcsIDYsIDEsIDYxLCAxNDYsIDM2LCA3LCA2LCAxLCAyNTMsIDc0LCAxNDYsIDM2LCA3LCAKLSAgICA2LCAxLCAyNTAsIDI1MiwgMTQ2LCAzNiwgNywgNiwgMSwgMjQ5LCAzLCAxNDYsIDM2LCA3LCA2LCAxLCA3NCwgMTQ2LCAzNiwgCi0gICAgNywgNiwgMSwgMjQ0LCAyMzAsIDE0NiwgMzYsIDcsIDYsIDEsIDI0MywgMTc3LCAxNDYsIDM2LCA3LCA2LCAxLCAyNDIsIDQxLCAKLSAgICAxNDYsIDM2LCA3LCA2LCAxLCA3MiwgMTQ2LCAzNiwgNywgNiwgMSwgMjM1LCAxNDIsIDE0NiwgMzYsIDcsIDYsIDEsIDIzNSwgCi0gICAgMjcsIDE0NiwgMzYsIDcsIDYsIDEsIDE1MCwgMTQ2LCAzNiwgNywgNiwgMSwgMTgzLCAxNDYsIDM2LCA3LCA2LCAxLCAyMDQsIAotICAgIDE0NiwgMzYsIDcsIDYsIDEsIDc1LCAxNDYsIDM2LCA3LCA2LCAxLCAyMjYsIDIyOSwgMTQ2LCAzNiwgNywgNiwgMSwgMjI0LCAKLSAgICAyNDAsIDE0NiwgMzYsIDcsIDYsIDEsIDE0OSwgMTQ2LCAzNiwgNywgNiwgMSwgMTk3LCAxNDYsIDM2LCA3LCA2LCAxLCAyMTgsIAotICAgIDk5LCAxNDYsIDM2LCA3LCA2LCAxLCA2OSwgMTQ2LCAzNiwgNywgNiwgMSwgMjE1LCA3OSwgMTQ2LCAzNiwgNywgNiwgMSwgCi0gICAgMjE0LCA4MiwgMTQ2LCAzNiwgNywgNiwgMSwgMjEzLCAxNjYsIDE0NiwgMzYsIDcsIDYsIDEsIDIxMywgMTA1LCAxNDYsIDM2LCAKLSAgICA3LCA2LCAxLCAyMTIsIDE1MiwgMTQ2LCA5MSwgNywgNiwgMSwgNjEsIDE0NiwgOTEsIDcsIDYsIDEsIDI1MywgNzQsIDE0NiwgCi0gICAgOTEsIDcsIDYsIDEsIDI1MCwgMjUyLCAxNDYsIDkxLCA3LCA2LCAxLCAyNDksIDMsIDE0NiwgOTEsIDcsIDYsIDEsIDc0LCAKLSAgICAxNDYsIDkxLCA3LCA2LCAxLCAyNDQsIDIzMCwgMTQ2LCA5MSwgNywgNiwgMSwgMjQzLCAxNzcsIDE0NiwgOTEsIDcsIDYsIDEsIAotICAgIDI0MiwgNDEsIDE0NiwgOTEsIDcsIDYsIDEsIDcyLCAxNDYsIDkxLCA3LCA2LCAxLCAyMzUsIDE0MiwgMTQ2LCA5MSwgNywgNiwgCi0gICAgMSwgMjM1LCAyNywgMTQ2LCA5MSwgNywgNiwgMSwgMTUwLCAxNDYsIDkxLCA3LCA2LCAxLCAxODMsIDE0NiwgOTEsIDcsIDYsIAotICAgIDEsIDIwNCwgMTQ2LCA5MSwgNywgNiwgMSwgNzUsIDE0NiwgOTEsIDcsIDYsIDEsIDIyNiwgMjI5LCAxNDYsIDkxLCA3LCA2LCAKLSAgICAxLCAyMjQsIDI0MCwgMTQ2LCA5MSwgNywgNiwgMSwgMTQ5LCAxNDYsIDkxLCA3LCA2LCAxLCAxOTcsIDE0NiwgOTEsIDcsIDYsIAotICAgIDEsIDIxOCwgOTksIDE0NiwgOTEsIDcsIDYsIDEsIDY5LCAxNDYsIDkxLCA3LCA2LCAxLCAyMTUsIDc5LCAxNDYsIDkxLCA3LCAKLSAgICA2LCAxLCAyMTQsIDgyLCAxNDYsIDkxLCA3LCA2LCAxLCAyMTMsIDE2NiwgMTQ2LCA5MSwgNywgNiwgMSwgMjEzLCAxMDUsIAotICAgIDE0NiwgOTEsIDcsIDYsIDEsIDIxMiwgMTUyLCAyNDksIDY4LCAxNDYsIDkxLCA3LCA2LCAxLCAyMjYsIDIyOSwgMTQ2LCA5MSwgCi0gICAgMjQwLCAxMDYsIDE0NiwgOTEsIDE5MywgMTQ2LCA5MSwgMjIyLCAyMDIsIDE0NiwgOTEsIDI1NCwgMTg1LCAxNDYsIDkxLCAKLSAgICAyMTQsIDcsIDQxLCAyNDcsIDExNiwgOTEsIDI0OSwgMjE2LCA5MSwgMjQ5LCAxMDksIDkxLCAyNDMsIDIyMiwgOTEsIDI0MCwgCi0gICAgOTgsIDkxLCAyMjksIDE2OCwgOTEsIDIyOSwgMTYxLCA5MSwgMjI3LCA4MCwgOTEsIDIxOSwgMjIyLCA5MSwgMTE0LCAyLCAKLSAgICAyNDQsIDI1NCwgNzcsIDkxLCAyMTQsIDEwMCwgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgNjEsIDIyMywgMjUzLCAyMzUsIAotICAgIDIzNiwgMTYsIDEsIDI1MywgNzQsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDI1MCwgMjUyLCAyMjMsIDI1MywgMjM1LCAKLSAgICAyMzYsIDE2LCAxLCAyNDksIDMsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDc0LCAyMjMsIDI1MywgMjM1LCAyMzYsIAotICAgIDE2LCAxLCAyNDQsIDIzMCwgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgMjQzLCAxNzcsIDIyMywgMjUzLCAyMzUsIDIzNiwgCi0gICAgMTYsIDEsIDI0MiwgNDEsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDcyLCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCAKLSAgICAyMzUsIDE0MiwgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgMjM1LCAyNywgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgCi0gICAgMTUwLCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCAxODMsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDIwNCwgMjIzLCAKLSAgICAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgNzUsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDIyNiwgMjI5LCAyMjMsIDI1MywgCi0gICAgMjM1LCAyMzYsIDE2LCAxLCAyMjQsIDI0MCwgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgMTQ5LCAyMjMsIDI1MywgMjM1LCAKLSAgICAyMzYsIDE2LCAxLCAxOTcsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDIxOCwgOTksIDIyMywgMjUzLCAyMzUsIDIzNiwgCi0gICAgMTYsIDEsIDY5LCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCAyMTUsIDc5LCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCAKLSAgICAyMTQsIDgyLCAyMjMsIDI1MywgMjM1LCAyMzYsIDE2LCAxLCAyMTMsIDE2NiwgMjIzLCAyNTMsIDIzNSwgMjM2LCAxNiwgMSwgCi0gICAgMjEzLCAxMDUsIDIyMywgMjUzLCAyMzUsIDIzNiwgMTYsIDEsIDIxMiwgMTUyLCA0MSwgMTQyLCAyNDEsIDQ5LCA5MSwgNTYsIAotICAgIDIzNCwgMjcsIDkxLCA1NiwgMjIyLCAyMDIsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCA0MywgOTEsIDksIDIxNSwgMTQ4LCAKLSAgICAyMzgsIDQ3LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNTUsIDkxLCA1NiwgMjQ4LCA0MSwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIAotICAgIDYyLCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNDksIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAyMSwgOTEsIDksIDIxNSwgMTQ4LCAKLSAgICAyMzgsIDQ4LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNjEsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAzNSwgOTEsIDksIDIxNSwgCi0gICAgMTQ4LCAyMzgsIDI4LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgMzcsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCA1OCwgOTEsIDksIAotICAgIDIxNSwgMTQ4LCAyMzgsIDQ0LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNjAsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAzNiwgCi0gICAgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDU5LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgMjIsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAKLSAgICAyNywgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDIwLCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNTAsIDkxLCA5LCAyMTUsIDE0OCwgCi0gICAgMjM4LCA1MiwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDMwLCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNDEsIDkxLCA5LCAyMTUsIAotICAgIDE0OCwgMjM4LCAzOSwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDY1LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNjQsIDkxLCA5LCAKLSAgICAyMTUsIDE0OCwgMjM4LCAxOCwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDQ1LCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgNjMsIAotICAgIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCA1NCwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDQwLCA5MSwgOSwgMjE1LCAxNDgsIDIzOCwgCi0gICAgMTksIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCA0MiwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDI0LCA5MSwgOSwgMjE1LCAxNDgsIAotICAgIDIzOCwgMjMsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCA1MywgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDMxLCA5MSwgOSwgMjE1LCAKLSAgICAxNDgsIDIzOCwgMzMsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCAzNCwgOTEsIDksIDIxNSwgMTQ4LCAyMzgsIDI2LCA5MSwgOSwgCi0gICAgMjE1LCAxNDgsIDIzOCwgNTcsIDkxLCA5LCAyMTUsIDE0OCwgMjM4LCA1MSwgMjE2LCAyMTksIDIyMCwgMjMzLCAyNTEsIDg0LCAKLSAgICA5LCAyMTUsIDE0OCwgMjM4LCAzMiwgMjE2LCAyMTksIDIyMCwgMjMzLCAyNTEsIDg0LCA5LCAyMTUsIDE0OCwgMjM4LCA2NCwgCi0gICAgMjE2LCAyMTksIDIyMCwgMjMzLCAyNTEsIDg0LCA5LCAyMTUsIDE0OCwgMjM4LCA2MiwgMjE2LCAyMTksIDIyMCwgMjMzLCAKLSAgICAyNTEsIDg0LCA5LCAyMTUsIDE0OCwgMjM4LCA0NiwgMjE2LCAyMTksIDIyMCwgMjMzLCAyNTEsIDg0LCA5LCAyMTUsIDE0OCwgCi0gICAgMjM4LCAyOSwgMjE2LCAyMTksIDIyMCwgMjMzLCAyNTEsIDg0LCA5LCAyMTUsIDE0OCwgMjM4LCA0MiwgMjE2LCAyMTksIAotICAgIDIyMCwgMjMzLCAyNTEsIDg0LCA5LCAyMTUsIDE0OCwgMjM4LCAyNSwgMjE2LCAyMTksIDIyMCwgMjMzLCAyNTEsIDg0LCA5LCAKLSAgICAyMTUsIDE0OCwgMjM4LCA1NiwgMjE2LCAyMTksIDIyMCwgMjMzLCAyNTEsIDg0LCA5LCAyMTUsIDE0OCwgMjM4LCAzOCwgMzYsIAotICAgIDE0MywgMjU0LCAxNTAsIDM2LCAxNDMsIDI1NCwgMTcyLCAyNDksIDE0LCAyNDQsIDExLCAyNDksIDE5MywgMjE1LCAxNjQsIAotICAgIDIyOSwgNDQsIDIsIDIxOSwgOTIsIDIxOCwgMjMzLCAxMTAsIDIzMCwgMTg0LCAyMTgsIDIzMiwgMjQ5LCAyMTksIDI1MywgCi0gICAgMTIzLCAyNDYsIDksIDIxOCwgMjMxLCAxMTAsIDI1MSwgNDcsIDIyNCwgNDksIDI1MSwgNjgsIDI1MywgMTIzLCAyMjksIDQzLCAKLSAgICAyMTQsIDI1LCAyMTQsIDE5LCAyMTQsIDExMiwgMjMxLCA4LCAyMTQsIDksIDI0NSwgMTgwLCAyNDIsIDE1NywgMjQ1LCAxMiwgCi0gICAgMjQ1LCAxODAsIDI0MiwgMTU3LCAyNTQsIDM3LCAyNDUsIDE4MCwgMjQyLCAxNTcsIDI1MywgMTQwLCAyNDIsIDE1NywgMiwgCi0gICAgMjMxLCAxMTUsIDE1NiwgMjMwLCAxOTksIDg3LCAyMTQsIDExLCAyNDksIDc3LCAyMzAsIDE5OSwgODcsIDI0NCwgNjEsIAotICAgIDIyNCwgMTY3LCAyMzAsIDE5OSwgODcsIDIxNCwgMTEsIDI0MiwgMTg2LCAyMzAsIDE5OSwgODcsIDI0MywgMjAwLCAyMzAsIAotICAgIDE5OSwgODcsIDIxNCwgMzYsIDI0MiwgMTg2LCAyMzAsIDE5OSwgODcsIDIzMywgMTAzLCAyMjQsIDE2NywgMjMwLCAxOTksIAotICAgIDg3LCAyMTQsIDM2LCAyNDksIDc3LCAyMzAsIDE5OSwgODcsIDI0OSwgNzcsIDIzMCwgMTk4LCAxNTYsIDIzMCwgMTk5LCAyLCAKLSAgICAyNDQsIDE1OCwgMjQ0LCA2MSwgMjI0LCAxNjcsIDIzMCwgMTk5LCAyLCAyNDQsIDE1OCwgMjMzLCAxMDMsIDIyNCwgMTY3LCAKLSAgICAyMzAsIDE5OSwgMiwgMjQ0LCAxNTgsIDI0MywgMjAwLCAyMzAsIDE5OSwgMiwgMjQ0LCAxNTgsIDIxOCwgMjM5LCAyLCAyNDQsIAotICAgIDE1OCwgMjQyLCAxNTUsIDIxOSwgOTUsIDIyMCwgMTc5LCAyMTksIDk1LCAyNTAsIDUzLCAyMjIsIDg3LCAyNDUsIDYsIDIxNiwgCi0gICAgMTkzLCAyNDgsIDM1LCAyMTYsIDE5MywgMjI2LCAxODYsIDIxNiwgMTkzLCAyNTAsIDIxMywgMjE2LCA3MywgMjUwLCA1NSwgCi0gICAgMjUxLCAxMzMsIDIyMywgOTMsIDI0MSwgMTY0LCAyMTgsIDIzNiwgMjUxLCAxMzMsIDI0NSwgMTg0LCA2NSwgMjMyLCAwLCAKLSAgICAyNDUsIDE4NCwgNjUsIDIyMywgMTg0LCAyNDEsIDE4OCwgMjQzLCAyMzcsIDIzMywgNzgsIDI0OSwgMTgzLCAyMzEsIDIzMywgCi0gICAgMjMzLCA3NywgMjQ0LCAxNDQsIDIzMywgNzcsIDIzMywgNzgsIDI0NCwgMTYsIDIzNSwgMjUyLCAyMTMsIDIyNCwgMjMwLCAKLSAgICAxMjgsIDIxNiwgMjQ1LCAyNTMsIDEwNywgMjQyLCAxMTksIDIzMSwgMTMxLCAyMTQsIDIzLCAyMTgsIDgsIDIzMywgNTAsIAotICAgIDI1MiwgNjgsIDIyNSwgMTk0LCAyMjQsIDQsIDI1MywgMjIzLCAyNDIsIDEwNCwgMjUzLCAyMjMsIDIyNiwgOTIsIDIyNiwgCi0gICAgOTMsIDI1MCwgNTYsIDIxOSwgNTQsIDI0MiwgNiwgMjIwLCAxOCwgNjUsIDIyNSwgMTc2LCAyMzEsIDE1MiwgMjI3LCA2MywgCi0gICAgMjUxLCAxMTksIDIyNSwgMTA5LCAyMzMsIDYwLCAyMjMsIDE4NSwgMjQ5LCA4MiwgMjIzLCAxODUsIDI1MiwgNzgsIDI0OSwgCi0gICAgMTEyLCAyMjMsIDE4NCwgMjQ5LCAzNiwgMjQsIDIyMywgMTg0LCAyMTksIDgxLCAyNTEsIDkzLCAyMTksIDIwMiwgMjUxLCAKLSAgICA3OCwgMjQzLCAyMjEsIDI0MywgMjE3LCAyMjMsIDEwOCwgMjE4LCAxOTEsIDIyNSwgMTExLCAyNDgsIDEyMCwgMjI3LCAxMDEsIAotICAgIDIxOCwgMjA4LCAyNDMsIDIxOCwgMjIwLCAxNTUsIDI0NCwgNjAsIDI1MCwgMjA5LCAyLCAyMTgsIDE4NCwgMjQ3LCAyNDIsIAotICAgIDIxOSwgMjM2LCAyNDAsIDEwNSwgMjQ5LCA4MSwgMjIwLCAyNTAsIDI0MCwgMTA0LCAyNDAsIDEwNSwgMjQ5LCA4MSwgMjQ2LCAKLSAgICA2MiwgMjQ5LCAxMTEsIDI1MCwgMjEsIDEzNCwgMjUwLCAxODYsIDIzMiwgMTk0LCAyNDksIDMwLCAyNDEsIDQxLCAyMjUsIAotICAgIDExMywgMjIwLCAxNjQsIDI1MSwgMjEzLCAyNTEsIDg5LCAyMjUsIDExNCwgNjUsIDI0NCwgMiwgMjQ5LCAxMTAsIDI0MywgCi0gICAgMjQ5LCAyNCwgMjM0LCA0MSwgMjE3LCAyMjcsIDIxMywgMjE2LCAyNDEsIDI1MiwgMjIyLCAxODMsIDI1MSwgMTAzLCAyNCwgCi0gICAgMjQ5LCA0MywgMjEzLCAyMjIsIDI0MiwgMTYwLCAyNDksIDE3MiwgMjQyLCAxNjAsIDIxNiwgMTUxLCAyNDYsIDQ1LCAyNTEsIAotICAgIDIzOCwgMjMwLCAxNjMsIDI0OSwgMjAwLCAyNTEsIDIzOCwgMjMwLCAxNjIsIDI1MiwgMTA0LCAyNTEsIDEwMiwgMjIzLCAKLSAgICAxODYsIDIxMywgMTg5LCAyMjUsIDc1LCAyNTEsIDE1OCwgMjUwLCAyMDgsIDIzNSwgMTM2LCAyNTAsIDE0LCAyMTYsIDE5MywgCi0gICAgMjQ0LCAxMzAsIDI1MCwgMTMsIDI0NCwgNjMsIDI0NCwgNjQsIDIxOSwgMjAwLCAyNTIsIDc3LCAyMjYsIDEyMiwgMjI1LCAKLSAgICAxMjQsIDI0OSwgMTQzLCAyNTIsIDc4LCAyMTgsIDEwLCAyMTYsIDE5MywgMjQ5LCA2OCwgMjQ0LCAzNiwgMjI1LCAxOTUsIAotICAgIDI0OCwgMzIsIDIzNSwgMTMxLCAyNDcsIDg1LCAyNTAsIDE2NCwgMjE5LCA1MywgMjEzLCAyMjUsIDI1MCwgMzUsIDIzMCwgCi0gICAgMTk5LCAyMTQsIDE0NCwgMjUwLCA5NiwgMjIyLCAxMTcsIDIyMiwgMTQxLCAyNDIsIDEyNCwgMjUwLCAxODMsIDI1MCwgMTY1LCAKLSAgICAyNDAsIDIzMiwgMjQ0LCA5OSwgMjEzLCAyNDEsIDIyMywgMTAyLCAyNDksIDE3MywgMjQ0LCA1NSwgMjI1LCAxMzYsIDI0LCAKLSAgICAyNDQsIDU5LCAyMzEsIDQwLCAyMzAsIDE3OCwgMjUwLCAxOTgsIDI0OSwgMjMyLCAyNDEsIDIxNiwgMjUzLCAxNTYsIDIyNiwgCi0gICAgMTg5LCAyMTYsIDIyNywgMjQxLCAyMzQsIDI0OSwgMjIyLCAyMTcsIDE5NSwgMjE3LCA2NywgMjQ5LCAyMTMsIDI1MSwgMTI1LCAKLSAgICAyMjYsIDUyLCAyNTMsIDE1NSwgMjE0LCAxNTAsIDI0MywgODYsIDI0NywgMTQ5LCAyNDEsIDE0MiwgMjIwLCAxMiwgMjMyLCAKLSAgICAzOSwgMjUxLCAxNjgsIDI0MywgODcsIDI0NywgMTkyLCAyNTEsIDkyLCAyNDQsIDIxLCAyMjUsIDE2NSwgMjUwLCAxNzMsIAotICAgIDI3LCAyMjgsIDE1OCwgMjMwLCAxNTUsIDI3LCAyMjgsIDE1MywgMjIyLCAxMzAsIDI0MiwgODAsIDI3LCAyMzQsIDE0MywgCi0gICAgMjE2LCAxNDgsIDIxNCwgMTM1LCAyNywgMjIyLCAxMTEsIDIyMywgMzUsIDIyMCwgMTkxLCAyLCAyMjIsIDE0MywgMjE3LCAKLSAgICAxOTcsIDIyNCwgNjgsIDI0LCAyNTIsIDc4LCAyMjAsIDMzLCAyNCwgMjIwLCAzMywgMjUxLCAxMTIsIDI1MiwgNDMsIDI0LCAKLSAgICAyNDEsIDM2LCAyNTAsIDU3LCAyNDQsIDQyLCAyMTksIDI0NywgMjIzLCAzNiwgMjE4LCAyMTIsIDIxNiwgMTUyLCAyNDAsIAotICAgIDIzMywgMjI0LCA2OSwgMjU0LCAzOCwgMjQ0LCAwLCAyMjMsIDQ3LCAyNDQsIDAsIDIxOCwgMTg2LCAyNDAsIDIyMiwgMjUxLCAKLSAgICA0OCwgMjQwLCAyMjIsIDIsIDI0MywgNzAsIDIyNywgOTUsIDI1MSwgNDgsIDIzNSwgMTMxLCAyMjUsIDExOSwgMjI3LCA5NCwgCi0gICAgMjQ1LCAxMSwgMjI1LCAxMTksIDIyNywgOTQsIDI0MCwgMjMxLCAyNTIsIDY0LCAyNTMsIDk3LCAyMTcsIDIwNSwgMjMyLCAKLSAgICAzOSwgMjQwLCAyMjcsIDIzMiwgMTY2LCAyNDAsIDIyNywgMjQ5LCAxMTUsIDIxOSwgNjUsIDIyMiwgMTE2LCAyNDcsIDI1MCwgCi0gICAgMjE5LCA2NSwgMjQ0LCAxNDgsIDIzNSwgMTQ3LCAyMzMsIDExMywgMjM1LCAxMzEsIDI1MCwgMTU4LCAyNDUsIDExLCAyNTAsIAotICAgIDE1OCwgMjI0LCAzMywgMjMwLCAxODIsIDIyNiwgMjM4LCAyMTQsIDI1LCAyNTEsIDUyLCAyNDksIDg0LCAyMTcsIDYwLCAKLSAgICAyMzMsIDQyLCAyMjQsIDcwLCAyNTAsIDE1NiwgMjQ2LCA1MCwgMjQ5LCA3NSwgMjEzLCAyNDQsIDIxOSwgMjU0LCAyMTksIAotICAgIDI1MiwgMjQwLCAyMzIsIDIyNCwgNDUsIDI0MiwgMTQ2LCAyMjAsIDIzNywgMjMwLCAyMTUsIDIyMywgOTYsIDI1MCwgNDUsIAotICAgIDI0NywgOTAsIDIyNSwgMjA1LCAyNTEsIDEyNiwgMjQ1LCAxMjYsIDIyNywgMTAzLCAyMTksIDE4NCwgMjIwLCAyMzIsIDI1MSwgCi0gICAgNTEsIDI1NCwgMywgMjQxLCA0MCwgMjMzLCAxNDQsIDI1MSwgMjM2LCAyNDQsIDU5LCAyMTYsIDE1MSwgMjQ0LCA1OSwgMjUxLCAKLSAgICAxMzIsIDIxNiwgNTUsIDI0MSwgMjMyLCAyNTAsIDQ2LCAyNTIsIDEwNCwgMjUwLCA0NiwgMjQzLCAyMTIsIDI1MiwgMTA0LCAKLSAgICAyNTAsIDQ2LCAyNTEsIDE2MCwgMjI2LCA3MCwgMjM0LCAzNSwgMjI1LCAxMjgsIDI0NiwgNDIsIDI1MCwgMTk5LCAyNTIsIAotICAgIDk1LCAyNTAsIDE5OSwgMjQ3LCA4NCwgMjMwLCAxODMsIDI0NCwgMTU4LCAyNDksIDg1LCAyNDQsIDE1OCwgMjE3LCA2MSwgCi0gICAgMjQ0LCAxNTgsIDIyNCwgNzEsIDI0NCwgMTU4LCAyNTAsIDE1NywgMjQ0LCAxNTgsIDI0NiwgNTEsIDI0NCwgMTU4LCAyMTksIAotICAgIDE3MywgMjEzLCAyNDQsIDI0MCwgMjMzLCAyNDQsIDE1OCwgMjMwLCAyMTYsIDI0NCwgMTU4LCAyNDcsIDkxLCAyNDQsIDE1OCwgCi0gICAgMjI1LCAyMDYsIDI0NCwgMTU4LCAyNDMsIDIxNSwgMjQ0LCAxNTgsIDI0MiwgMywgMjQ0LCAxNTgsIDIxMywgMjExLCAyNDQsIAotICAgIDE1OCwgMjUxLCAyNDcsIDI0NCwgMTU4LCAyMjYsIDE3MiwgMjQ0LCAxNTgsIDIyNSwgMjA2LCAyMjgsIDE2NCwgMjI2LCAKLSAgICAxMDYsIDIyNSwgNjcsIDI0NCwgMjM3LCAyNDUsIDE4MywgMjI4LCAxNjQsIDIzMCwgMTgwLCAyMTYsIDIzMiwgNjcsIDExNCwgCi0gICAgMjI1LCAxNDEsIDI1MiwgOTksIDIzNSwgMjM5LCA2NywgMTE5LCAyMjUsIDE0MSwgMjUyLCA5OSwgMjM1LCAyMzksIDY3LCAKLSAgICA0MiwgMjI1LCAxNDEsIDI1MiwgOTksIDIzNSwgMjM5LCA2NywgNDYsIDIyNSwgMTQxLCAyNTIsIDk5LCAyMzUsIDIzOSwgCi0gICAgMjQ0LCA1MywgMjQxLCAyNTUsIDUyLCAyMTQsIDE3LCAyNDEsIDI1NSwgNTIsIDIyNywgODEsIDI0MSwgMjU1LCA1MiwgMjE3LCAKLSAgICA4OSwgMTE0LCA1MiwgMjE3LCA4OSwgMTE5LCA1MiwgMjQ5LCAyMTIsIDI0MSwgMjUwLCA1MiwgMjI3LCA0MCwgMjQxLCAyNTAsIAotICAgIDUyLCAyNDksIDYzLCAyMTMsIDIwNywgMjQxLCAyMzQsIDI0NCwgMjM4LCAyMjksIDE4NSwgMjE4LCA5OCwgMjM1LCAxMjYsIAotICAgIDI0NiwgNDcsIDIzNCwgOTEsIDI1MSwgMTcwLCAyMTMsIDIwNywgMjQ5LCAxODYsIDIyNSwgMTQsIDI0MSwgMjUzLCAyMjUsIAotICAgIDExMCwgMjMxLCAyNDAsIDIyMCwgMTg0LCAyNTMsIDExOSwgMjIwLCAxODQsIDI0MSwgMTUwLCAyMjAsIDE4NCwgMjEzLCAKLSAgICAyMDcsIDIyMiwgMTU2LCAyMTMsIDIwNywgMjUxLCAxMTEsIDI0MywgMjU0LCAyNTEsIDE5LCAyMzUsIDI1MiwgMjIwLCA5NSwgCi0gICAgMjUxLCAxOCwgMjM1LCAyNTIsIDIyMCwgOTUsIDI1MSwgODgsIDI0MiwgMTcwLCAyMzEsIDI0OCwgMjEzLCAyMDgsIDI0NCwgCi0gICAgMTQyLCAyMzEsIDI0OSwgMjQsIDIxMywgMjA5LCAyNDEsIDQ2LCAyNDEsIDI0OSwgMTE3LCAyMzEsIDEyMywgMjQxLCA0NiwgCi0gICAgMjQxLCAyNDksIDExNywgMjEzLCAyMDYsIDI0MSwgNDYsIDI0MSwgMjQ5LCAyMjUsIDEzMywgMjI3LCA5MywgMjEzLCAyMDksIAotICAgIDIsIDI1MSwgMzUsIDI0NSwgMTgxLCAyNTEsIDY5LCAyLCAyMTQsIDIyMywgMjI2LCA0NCwgMiwgMjUxLCAxMzUsIDI0MiwgCi0gICAgMTYsIDIzMSwgMjQ5LCAyLCAyNDIsIDg5LCAyMjUsIDI0MSwgMjMxLCAyMzcsIDIzMSwgMjQ5LCAyLCAyMTYsIDYxLCAyMjcsIAotICAgIDc0LCAyMzEsIDI0OCwgMjI3LCA3NCwgMjEzLCAyMDgsIDI1MiwgMTAzLCAyNDksIDEyOSwgMjEzLCAxOTIsIDIyNSwgNzAsIAotICAgIDIzNSwgMTMxLCAyMjcsIDg5LCAyMzUsIDEzMSwgMjQyLCAxNDUsIDI0MiwgMTk4LCAyNTIsIDEwNCwgMjU0LCAyMiwgMjQ0LCAKLSAgICAyNDIsIDI1NCwgNjksIDI1NCwgNzAsIDIzMCwgMjA2LCAyMzYsIDEsIDIyMCwgMjgsIDIzNSwgMjI5LCAyNDcsIDI0MSwgCi0gICAgMjI2LCA0MywgMjQyLCA4NiwgMjQ4LCAxMjQsIDIzMiwgMjMwLCAyMzAsIDMwLCAyMjUsIDEzMiwgMjQ0LCAxNTksIDIzMSwgCi0gICAgMjA1LCAyNDIsIDE1LCAyNTIsIDU4LCAyMjUsIDEzNSwgMjE4LCAxMTcsIDIyNSwgMTk4LCAyMzQsIDczLCA3NywgMjMyLCAKLSAgICAxNjYsIDIzMywgMzQsIDIyMywgMTMwLCAyNDMsIDMwLCAyMTksIDcxLCAyMzQsIDcyLCAyNTEsIDk3LCAyNDksIDg3LCAyLCAKLSAgICAyNDEsIDIxMSwgMjE0LCAzLCAyNTEsIDI0NSwgMjQxLCAyMTEsIDI1MSwgNjMsIDI0MSwgMjExLCAxMTcsIDI0MSwgMjA5LCAKLSAgICAyMTksIDE5OCwgMjQxLCAyMTEsIDI0MiwgOTgsIDI0MSwgMjExLCAyNDEsIDIxMiwgMiwgNjgsIDI1MSwgMTMxLCAyNDEsIAotICAgIDIxMSwgMjQyLCAxMDQsIDI0MSwgMjExLCAyMTMsIDMzLCAyNDEsIDIxMSwgMjI1LCAxNSwgMjQxLCAyMTEsIDI0MSwgMjEyLCAKLSAgICAyLCAyMjMsIDE4NiwgMjIzLCAxOTcsIDI0MSwgMjA5LCAyNDEsIDIxMiwgMjQ4LCAzMiwgMjQ3LCAyMDEsIDIyMSwgNSwgMiwgCi0gICAgMTE4LCA2MiwgMjM1LCAyMTIsIDI0NSwgMTI5LCAxNzcsIDI1MSwgNDUsIDI1NCwgMjEsIDg3LCAyNTEsIDEyMCwgMjIwLCAKLSAgICAyMCwgODcsIDI0OSwgMTY2LCA4NywgMjE5LCAxNzgsIDIxOCwgMTkzLCA4NywgMjQ2LCA0MCwgMjQ4LCAxMDIsIDg3LCAyMjUsIAotICAgIDE5OSwgNjUsIDIyNSwgMTI5LCAyNDQsIDMwLCAyNTEsIDE4MSwgMjQ3LCAxMTcsIDg3LCAyMTksIDE5MSwgMjUyLCA3NywgCi0gICAgMjE3LCAxMDIsIDI1MiwgNzcsIDY3LCAyNDQsIDIwLCAyNDAsIDIwMSwgMjI1LCAxMzksIDg3LCAyMzAsIDIxOSwgMjUyLCAKLSAgICA5MCwgMjQ5LCAzOSwgMjQ0LCAyNTUsIDEwNywgMjQ3LCA4NiwgNTIsIDI0OSwgNzksIDI1MCwgMTc0LCAyNTIsIDYzLCAyLCAKLSAgICAyMTMsIDMxLCA1MiwgMjUyLCA2MywgMiwgMjQ3LCA4NiwgNTIsIDI1MiwgNjMsIDIsIDI0NSwgMTQsIDUyLCAyNTIsIDYzLCAKLSAgICAyLCAyMjUsIDEwOCwgNTIsIDIzMCwgMjE5LCAyLCAyMTMsIDIyMCwgMjUwLCA3NCwgMiwgMjE1LCAxMjQsIDIxNiwgMTg5LCAKLSAgICAyNCwgMjEzLCAzMSwgNTIsIDIyMiwgOTcsIDIyNiwgNDIsIDI0OSwgMTQ3LCAyNTEsIDY3LCAyMzAsIDI1NSwgMjQ0LCAyNSwgCi0gICAgMjQ3LCAxMzcsIDIyNywgMjcsIDI0NywgMTQyLCAyNDYsIDQsIDI0NCwgNzYsIDI0NCwgOSwgMjI3LCA0MCwgMjQ0LCA3NiwgCi0gICAgMjQ0LCA5LCAyMjYsIDIwMSwgMiwgMjQ5LCA0MSwgMjI2LCAyMDEsIDI0NCwgMTUxLCAyMTUsIDEzNCwgMjUwLCAyMDQsIAotICAgIDIxNywgMjI2LCAyNTAsIDIwNCwgMjUwLCAxNzUsIDIzNSwgMjM5LCAyNTAsIDc0LCAyLCAyMTUsIDEyNCwgMjE2LCAxODgsIAotICAgIDI1MCwgNzQsIDIsIDI0NiwgNTgsIDIxNiwgMTg4LCAyNTIsIDYwLCAyNTAsIDczLCAyNDksIDE5OSwgMjI1LCAxMCwgMjIzLCAKLSAgICA4NywgMjI1LCAxMCwgMjI2LCAxNDcsIDIxOSwgNjEsIDIyMywgNDIsIDIxNiwgMTgwLCAyMjMsIDQyLCAyNTEsIDExNiwgCi0gICAgMjE4LCAzOSwgMjMzLCA3NSwgMjI4LCAxNTYsIDIyOCwgMTU3LCAyLCAyNDgsIDMxLCAyNDksIDg2LCAyNDksIDE5MywgMjUxLCAKLSAgICAxMTcsIDIyNywgNDAsIDI1MSwgMTE3LCAyNDIsIDEwNCwgMjUxLCAxMTcsIDI1MSwgMTMxLCAyNTEsIDExNywgMjI3LCAyMywgCi0gICAgMjUxLCAxMTcsIDI1MSwgMTE0LCAyMzAsIDI1LCAyNTIsIDkzLCAyMjIsIDEwNSwgMjMxLCAxMjQsIDIxNywgMjEwLCAyMjQsIAotICAgIDE2LCAyMjYsIDE5OSwgMjQ0LCAxMjcsIDIzMiwgMzksIDIyMiwgMTQwLCAyNTQsIDAsIDIyNSwgMzEsIDI1NCwgMTU3LCAKLSAgICAyMzIsIDE2OCwgMjUwLCA2MywgMjMxLCAxMzYsIDIyNiwgMjUzLCAyMTYsIDE5NiwgMjM1LCAyNDgsIDIxNiwgMTk2LCAyMjYsIAotICAgIDIwNiwgMjQ1LCAyMzYsIDg3LCAyMzUsIDI0NSwgMjQ1LCA3OCwgMjQ1LCA3OSwgMiwgMjQ2LCA1OCwgNzYsIDQ5LCAyNDksIAotICAgIDE5MywgMjMyLCA2LCAyLCAyMzIsIDE2MiwgMjQ0LCA0MiwgMjQ5LCAxOTMsIDIzMiwgNiwgMiwgMjI0LCA0OCwgMjQ0LCA0MiwgCi0gICAgMjI3LCA0MCwgMjMyLCA2LCAyLCAyMjQsIDQ4LCAyNDQsIDQyLCAyMjcsIDQwLCAyMzIsIDYsIDIsIDIzMiwgMTYyLCAyNDQsIAotICAgIDQyLCAyMjUsIDExNiwgMjI1LCAxMTcsIDI0MCwgMjM1LCAyMjksIDE2NiwgMjMwLCAyMjksIDIyNSwgMjQ5LCAyMzAsIDIyOSwgCi0gICAgMjI1LCAyNTAsIDIsIDk1LCA3NiwgMjUzLCAxMjMsIDIzMywgNzAsIDIxNCwgMTUzLCAyMzAsIDIyOCwgMjMwLCAyMjksIAotICAgIDIyNSwgMjUwLCAyMjcsIDk2LCAyMjgsIDE4NiwgMjMwLCAyMjksIDIyNSwgMjQ4LCAyNTQsIDEsIDIsIDI1MiwgNDksIDI1MCwgCi0gICAgMTk4LCAyMTQsIDE1MCwgMjUwLCAxOTgsIDIxNywgMjA3LCAyMjQsIDYzLCAyMTQsIDE0OSwgMjE2LCAyNSwgOTUsIDI1MywgCi0gICAgMTYyLCAyNDksIDE5NSwgOTUsIDI0LCAxMzIsIDIyNywgNDAsIDI0OSwgMjI5LCAyNTMsIDE2MiwgMjQ5LCAxOTUsIDk1LCAKLSAgICAyNCwgMTMyLCAyMjcsIDQwLCAyNDksIDIyOSwgMjUzLCAxNjMsIDIsIDM2LCAxMjIsIDIyNiwgMjQ0LCAyNDksIDE5NSwgCi0gICAgMjQ2LCA1OCwgMjQsIDIxNSwgMTI0LCAyMjcsIDQwLCAyNDksIDIyOSwgMjUzLCAxNjIsIDI1MywgMjU1LCAyNDYsIDU4LCAKLSAgICAyNCwgMjE1LCAxMjQsIDIyNywgNDAsIDI0OSwgMjI5LCAyNTMsIDE2MiwgMTE1LCAyNTEsIDY2LCA4NywgMTI0LCAyNTEsIAotICAgIDY2LCA4NywgMjE5LCAxOTUsIDIsIDI1MCwgMTkyLCA5MCwgMjE5LCAxOTQsIDIxOSwgMTk1LCAyLCAxMjIsIDIxOSwgMjE4LCAKLSAgICAyMTQsIDE5LCAyMTksIDE5NSwgMiwgMTMzLCAyMTksIDIxOCwgMjE0LCAxOCwgMjUyLCAzNSwgMjQ1LCAxMjksIDIyNSwgCi0gICAgMTYxLCAyMzMsIDY2LCAyMzIsIDE2LCAyNDIsIDE2MCwgMjIzLCAxNDQsIDIzMiwgMTYsIDI0MiwgMTYwLCAyMzIsIDIwNCwgCi0gICAgMiwgMjM1LCAyMjIsIDIyNiwgNzQsIDI0OSwgMTkzLCAyMzIsIDIwNCwgMiwgMjM0LCAxNDQsIDIzNCwgMTQ0LCAyMzIsIAotICAgIDIwMywgMjI3LCA0MCwgMjMyLCAyMDMsIDI1MSwgMjIxLCAyNTEsIDIyMiwgMiwgMjUwLCAxOTIsIDkwLCAyNTEsIDExNSwgCi0gICAgMjMyLCAyMzMsIDg3LCAyMjQsIDY0LCAyNTEsIDE1LCAyNTIsIDEwMiwgMiwgMTMyLCA3NiwgNDksIDI0NSwgMTAxLCAyLCAKLSAgICAxMzIsIDc2LCA0OSwgMjI3LCA2MywgMiwgMjQ0LCAyNTQsIDE1MiwgMiwgNDIsIDQ2LCA3NiwgNDksIDIxOSwgMjI1LCAyLCAKLSAgICA5NSwgNzYsIDQ5LCAyMTYsIDIyNywgMiwgMjE1LCAxMjQsIDc2LCA0OSwgMjI4LCAxODYsIDEyMiwgMjE1LCAxNTQsIDI0NSwgCi0gICAgMTQ4LCA4NywgMjM0LCAxNDIsIDIxNywgMjAwLCAyMzUsIDIxNiwgMTYsIDMxLCA3LCA2LCAyMzMsIDMzLCAyMzUsIDIxNiwgCi0gICAgMTYsIDMxLCA3LCAzLCAyMzMsIDMzLCAyMzUsIDIxNiwgMTYsIDMxLCAyMjgsIDU1LCAyMzUsIDIxNiwgMTYsIDMxLCAyMTgsIAotICAgIDEyOCwgMjM1LCAyMTYsIDE2LCAzMSwgNywgMjMzLCAzMywgMjQ0LCA2NSwgMjQ1LCAxMjksIDIxNiwgMjIyLCAyMTMsIDE4NywgCi0gICAgMjQyLCA0LCAyMjgsIDM4LCAyNCwgMjUxLCAxMjEsIDI0MSwgNTIsIDIyNSwgMTgyLCAyMzEsIDM5LCAyMTcsIDIwOCwgMjQ5LCAKLSAgICA1NCwgMjUyLCA3OCwgMjIwLCA1MywgMjI1LCAxNDMsIDIxOSwgOTYsIDIsIDIzMSwgMzcsIDI0NywgNzQsIDIzNSwgMTMxLCAKLSAgICAxNiwgMzEsIDI1MSwgMjMzLCAyMTYsIDE3OCwgMjQ1LCAxMTQsIDgzLCA0MSwgMjUxLCAxNSwgNjcsIDQxLCAyNTEsIDE1LCAKLSAgICAyMzMsIDEwOCwgMjI0LCA0LCAyNDksIDIyOCwgMjMzLCAxMDgsIDI1MSwgMTMxLCAyNDksIDIyOCwgMjMzLCAxMDgsIDIyNywgCi0gICAgMjMsIDI0NywgMjAwLCAyMzMsIDEwOCwgMjUxLCAxMzEsIDI0NywgMjAwLCAzLCAyMjcsIDIzLCAyNDcsIDIwMCwgMywgMjUxLCAKLSAgICAxMzEsIDI0NywgMjAwLCAyMTUsIDEzMywgMjI0LCA0LCAyMTYsIDE4MywgMjQ2LCA1OSwgMjI0LCA0LCAyMTYsIDE4MywgCi0gICAgMjE1LCAxMzMsIDMsIDIyNCwgNCwgMjE2LCAxODMsIDI0NiwgNTksIDMsIDIyNCwgNCwgMjE2LCAxODMsIDI0OSwgMTk3LCAKLSAgICAyNDQsIDE1OSwgMTIyLCAyMjcsIDEwNiwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAxMTcsIDIyNywgMTA2LCAyNDksIDE5NywgCi0gICAgMjQ0LCAxNTksIDEzMywgMjI3LCAxMDYsIDI0OSwgMTk3LCAyNDQsIDE1OSwgMjQzLCAyMzcsIDIyNywgMTA2LCAyNDksIAotICAgIDE5NywgMjQ0LCAxNTksIDI0NCwgNTAsIDIyNywgMTA2LCAyNDksIDE5NywgMjQ0LCAxNTksIDIyMCwgNTMsIDIyNywgMTA2LCAKLSAgICAyNDksIDE5NywgMjQ0LCAxNTksIDIyMSwgNDMsIDIyNywgMTA2LCAyNDksIDE5NywgMjQ0LCAxNTksIDI0NSwgMTUwLCAyMjcsIAotICAgIDEwNiwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyMjksIDMxLCAyMjcsIDEwNiwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyMTcsIDIwMSwgCi0gICAgMjI3LCAxMDYsIDI0OSwgMTk3LCAyNDQsIDE1OSwgMjQ1LCAxMjUsIDIyNywgMTA2LCAyNDksIDE5NywgMjQ0LCAxNTksIAotICAgIDIxNiwgNDIsIDIyNywgMTA2LCAyNDksIDE5NywgMjQ0LCAxNTksIDIyNywgNTgsIDI0OSwgMTk3LCAyNDQsIDE1OSwgMjE2LCAKLSAgICAyMiwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyMTcsIDk0LCAyNDksIDE5NywgMjQ0LCAxNTksIDI0MywgMjMzLCAyNDksIDE5NywgCi0gICAgMjQ0LCAxNTksIDI0NCwgNDgsIDI0OSwgMTk3LCAyNDQsIDE1OSwgMjIwLCA0OSwgMjQ5LCAxOTcsIDI0NCwgMTU5LCAyMjEsIAotICAgIDQyLCAyNDksIDE5NywgMjQ0LCAxNTksIDI0NSwgMTQ5LCAyNDksIDE5NywgMjQ0LCAxNTksIDIyOSwgMzAsIDI0OSwgMTk3LCAKLSAgICAyNDQsIDE1OSwgMjE3LCAxOTksIDI0OSwgMTk3LCAyNDQsIDE1OSwgMjQ1LCAxMjMsIDI0OSwgMTk3LCAyNDQsIDE1OSwgCi0gICAgMjE2LCA0MCwgMjMwLCAxODcsIDI0MywgMjAxLCAyMTYsIDI0NywgMjE2LCAyMTUsIDIxOSwgODgsIDY1LCAyMzMsIDExLCAKLSAgICAyMjAsIDk2LCA2NSwgMjM1LCAxMzIsIDIzMCwgMTc2LCAyNDIsIDEwMiwgMjQ0LCAxNTksIDIsIDIyMCwgMiwgMjQ0LCAyMzcsIAotICAgIDI0NCwgMTU5LCAyLCAyMTcsIDIyMiwgNjUsIDIzNSwgNTYsIDIyMCwgMiwgMjQ0LCAxNTksIDIsIDIyNywgNDAsIDIzMCwgCi0gICAgMTgwLCAyMjAsIDIsIDI0NCwgMTU5LCAyLCAyMjcsIDQwLCAyMzAsIDE4MSwgMjQsIDIyMCwgMiwgMjQ0LCAyMzcsIDIyMCwgCi0gICAgMiwgMjQ0LCAxNTksIDIsIDIyNywgNDAsIDIzMCwgMTgxLCAyNCwgMjQ5LCAxNjgsIDIxOCwgMTkyLCAyMjAsIDIsIDI0NCwgCi0gICAgMTU5LCAyLCAyMjcsIDQwLCAyMzAsIDE4MSwgMjQsIDIxNywgNTgsIDI0NCwgMjM3LCAyMjAsIDIsIDI0NCwgMTU5LCAyLCAKLSAgICAyNDIsIDgsIDIyMCwgMiwgMjQ0LCAxNTksIDIsIDI0MCwgMjM0LCAyMTMsIDIxOCwgMjQ0LCAxNTgsIDIyMCwgMiwgMjQ0LCAKLSAgICAxNTksIDIsIDIyMCwgMiwgMjQ0LCAyMzcsIDI0NCwgMTU5LCAyMjIsIDEzNSwgMjQ4LCAxMywgMjQ0LCAyLCAyMjMsIDIzOCwgCi0gICAgMjQ0LCAxNTgsIDIyMCwgMiwgMjQ0LCAxNTksIDIsIDI0MSwgMjEwLCAyNDQsIDIzNywgMjIwLCAyLCAyNDQsIDE1OSwgMiwgCi0gICAgMjE4LCAyMzQsIDIyMCwgMSwgMjQ0LCAxNTgsIDIyOSwgMTY5LCAyNDQsIDE1OCwgMjE1LCAxNTgsIDI0NCwgMTU4LCAyNDQsIAotICAgIDE1OSwgMiwgMjQ5LCAxNjgsIDIxOCwgMTkyLCAyMjYsIDY3LCAyNDQsIDE1OCwgMjQ5LCAxNDEsIDI0NCwgMTU4LCAyNDQsIAotICAgIDE1OSwgMjE3LCA5MSwgMTE4LCAyMzQsIDcyLCAyMzQsIDcxLCAyNDQsIDE1OSwgMiwgMjQ5LCAxOTMsIDI0NCwgMjM3LCAKLSAgICAyNDQsIDE1OSwgMiwgMjE5LCAzMSwgMjE2LCAyMzMsIDI0LCAyMTMsIDIxOCwgMjQ0LCAyMzksIDI0NCwgMTU5LCAyLCAyMTksIAotICAgIDMxLCAyMTYsIDIzMywgMjQsIDIxNywgNTgsIDI0NCwgMjM3LCAyNDcsIDE0NCwgMjQ0LCAxNTgsIDI1NCwgMTcsIDI0NCwgCi0gICAgMTU4LCAyMjUsIDEwNywgMjQ0LCAxNTgsIDI0OSwgNTYsIDI0NCwgMTU4LCAyMjYsIDQ2LCAyNDQsIDE1OCwgMjQ0LCAxNTksIAotICAgIDIsIDIzMiwgMTc5LCA2NSwgMjE2LCAxNjIsIDI0NywgMTQ0LCAyNTEsIDE3LCAyMjMsIDIzOCwgMjQ0LCAxNTgsIDI0NCwgCi0gICAgMTIxLCAyNDQsIDE1OCwgMjE0LCA0LCAyNDQsIDE1OCwgMjIwLCAxOSwgMjQ0LCAxNTgsIDIxNywgMjQsIDI0NCwgMTU4LCAKLSAgICAyMzIsIDE2OSwgMjQ5LCA1NiwgMjQ0LCAxNTgsIDI0NCwgMTU5LCAyLCAyMjcsIDQwLCAyMzAsIDE4MSwgMjQsIDI0OSwgCi0gICAgMTY4LCAyMTgsIDE5MiwgMjQ0LCAxNTksIDIyMiwgMTA5LCAyMzUsIDI1MiwgMjQ0LCAxMjIsIDI1MywgMTI5LCAyNDQsIAotICAgIDE1OCwgMjQ0LCAxOCwgMjQ0LCAxNTgsIDI0NywgMTE3LCAyNDQsIDE1OCwgMjQ0LCAxNTksIDIxMywgMjE2LCAyMzAsIDE4MCwgCi0gICAgMjQ0LCAxNTksIDIsIDIzMSwgMTQ5LCAyMzEsIDIwNywgMjQyLCAxMDIsIDI1MCwgMTU3LCAyNDQsIDE1OSwgMiwgMjIwLCAyLCAKLSAgICAyNDQsIDIzNywgMjUwLCAxNTcsIDI0NCwgMTU5LCAyLCAyMTcsIDIyMiwgNjUsIDIzNSwgNTYsIDIyMCwgMiwgMjUwLCAxNTcsIAotICAgIDI0NCwgMTU5LCAyLCAyMjcsIDQwLCAyMzAsIDE4MCwgMjIwLCAyLCAyNTAsIDE1NywgMjQ0LCAxNTksIDIsIDI0MSwgMjEwLCAKLSAgICAyNDQsIDIzNywgMjUwLCAxNTcsIDI0NCwgMTU5LCAyLCAyMTMsIDE4NCwgMjIwLCAzLCAyMzQsIDcxLCAyNTAsIDE1NywgCi0gICAgMjQ0LCAxNTksIDIsIDI0OSwgMTkzLCAyNDQsIDIzNywgMjI1LCAxMDcsIDI1MCwgMTU3LCAyNDQsIDE1OCwgMjQ5LCA1NiwgCi0gICAgMjUwLCAxNTcsIDI0NCwgMTU4LCAyMTQsIDQsIDI1MCwgMTU3LCAyNDQsIDE1OCwgMjQ0LCAxNTksIDIsIDIyOCwgMTg2LCAKLSAgICAyNDIsIDEzOSwgMjQzLCAxMCwgMjQ0LCAxNTksIDIsIDIyNywgODEsIDI0MywgMTAsIDIyNiwgNDQsIDI1MSwgOTQsIDI0OCwgCi0gICAgMjYsIDIyMiwgODgsIDIzMCwgMjE1LCAyNDEsIDIxMywgMjMwLCAyMTUsIDIxOSwgMTk2LCAyMzAsIDIxNSwgMjQxLCAyNDQsIAotICAgIDIyNiwgNDQsIDIyNCwgNDcsIDEyMiwgMjQxLCAyNTQsIDIyNiwgNDQsIDIyNCwgNDcsIDI1MSwgMTA0LCAyNDEsIDI1MCwgCi0gICAgMjM1LCAyNTIsIDI1MCwgMTEzLCAyMjYsIDQ0LCAyNDMsIDIwOCwgMjI2LCA0NCwgMiwgMjI1LCAxMDcsIDI0NCwgMTU4LCAKLSAgICAyMjYsIDQ0LCAyLCAyNDQsIDEwLCAyNDEsIDI0OSwgMjIzLCAxMDQsIDI0MSwgMTk4LCAyMTksIDgzLCAyMzIsIDIwMiwgCi0gICAgMjI0LCA1MywgMjUwLCAxNzYsIDI0MSwgMTQ4LCAyMTYsIDIwNSwgMjQxLCAxNDgsIDIxNiwgMjA2LCAyLCAyNTEsIDQzLCAKLSAgICAyMjgsIDE2NCwgMjE2LCAyMDUsIDIzMSwgOTksIDE3NywgMjI0LCA1NCwgMjE5LCA4OSwgMjE2LCAyMDMsIDIxNiwgMjA0LCAKLSAgICAyNTAsIDE3NiwgMjUxLCAyMSwgMjI3LCA2MCwgMjUxLCAyMSwgMjE2LCAxNTksIDI1MSwgMjIsIDIxOSwgNjksIDIzMSwgMCwgCi0gICAgMjU0LCAzOSwgMjQ0LCA2NiwgMjQ1LCA5NSwgMjI1LCAxMzMsIDI1MCwgMTc2LCAyMjcsIDYwLCAyMjUsIDEzMywgMjUwLCAKLSAgICAxNzYsIDIxNywgMjM5LCAyMjcsIDYwLCAyMTcsIDIzOSwgMjUzLCA5NiwgMjI3LCA2MCwgMjUzLCA5NiwgMjI0LCAxMSwgCi0gICAgMjE0LCAyMjQsIDI0OCwgOSwgMjE2LCAxNTAsIDI1MywgMTU3LCAyMzIsIDE3MiwgMjE2LCAyMTEsIDIzMCwgMjA5LCAyMzAsIAotICAgIDE4NiwgMjI0LCA1MiwgMjE4LCAyMDcsIDIyNCwgNTIsIDIzMCwgMTg2LCAyNTAsIDIxNCwgMjU0LCAxMzQsIDIxNiwgMjAyLCAKLSAgICAyMjAsIDE5NiwgMjIzLCA4NCwgMjE5LCAxODksIDE5OSwgMjE2LCAyMDksIDIzMywgMiwgNzEsIDIxNiwgMjA5LCAyMzMsIDIsIAotICAgIDI0OSwgMTI5LCA1MiwgMjI1LCAxMzMsIDI1MCwgMTYxLCAyMjMsIDE5NywgMjMzLCAyLCAyMTYsIDE4MCwgMjQ0LCA0MywgCi0gICAgMjI3LCA2MywgMjI1LCAxMTgsIDI0NywgNzcsIDIyOCwgMTg2LCAyNDUsIDg0LCA1MiwgMjIwLCAwLCA4NywgMjI4LCAxODYsIAotICAgIDIyMCwgMCwgODcsIDIyNSwgOSwgMjMyLCAyMjIsIDIzNSwgMjUyLCAyMzUsIDE1NSwgMjI1LCAxNzMsIDg3LCAyNDcsIDEwMCwgCi0gICAgMjI4LCAxNjMsIDIzMiwgMjIyLCA4NywgMjI1LCAxMTIsIDIxNCwgMjUsIDg3LCAyMjgsIDE3NywgMjE0LCAyNSwgODcsIAotICAgIDI1MSwgMTgwLCAyMjgsIDE4NiwgMjUxLCAxNzksIDI1MSwgMTc4LCAyMzAsIDE4NiwgMjUxLCAxNzgsIDIyNiwgODgsIDIyOCwgCi0gICAgMTg2LCAyMjYsIDg3LCAyNTAsIDM3LCAyNDksIDY0LCAyMzEsIDEyMCwgODcsIDIxMywgMjA1LCA4NywgMjIzLCAyMTEsIAotICAgIDI1MiwgMTA0LCA4NywgMjE2LCAyNDgsIDIxNCwgMjUsIDI0OSwgMTkwLCAyMjAsIDE1OCwgMjUyLCAzOCwgMjUyLCAzNiwgCi0gICAgMjI2LCAxMTUsIDI0OSwgMTE2LCAyNDksIDI4LCAyNTIsIDg3LCAyNDksIDIxNSwgNDIsIDIzMiwgMTQ4LCAxMDQsIDE2LCAKLSAgICAzMSwgMjI0LCAxNDgsIDEwNCwgMTYsIDMxLCAyNTQsIDEwMCwgMTA0LCAxNiwgMzEsIDI0NCwgNjUsIDEwNCwgMTYsIDMxLCAKLSAgICAyNDUsIDE3OSwgMTA0LCAxNiwgMzEsIDIxNCwgMjQsIDEwNCwgMTYsIDMxLCAyNTMsIDIxMywgMTA0LCAxNiwgMzEsIDI1MywgCi0gICAgMjE0LCAyMjMsIDI1NSwgMTA0LCAxNiwgMzEsIDI1MywgMjE0LCAyMjMsIDI1NCwgMTA0LCAxNiwgMzEsIDI1MywgMjE0LCAKLSAgICAyMTQsIDEyNCwgMTA0LCAxNiwgMzEsIDI1MywgMjE0LCAyMTQsIDEyMywgMTA0LCAxNiwgMzEsIDIxNCwgMTM4LCAxMDQsIAotICAgIDE2LCAzMSwgMjE0LCAxMzcsIDEwNCwgMTYsIDMxLCAyMTQsIDEzNiwgMTA0LCAxNiwgMzEsIDIxOCwgMjQ1LCAxMDQsIDE2LCAKLSAgICAzMSwgMjI2LCAxLCAyMTgsIDI0NSwgMTA0LCAxNiwgMzEsIDgzLCAyMTgsIDI0NSwgMTA0LCAxNiwgMzEsIDIzMSwgMTE5LCAKLSAgICAyMTksIDE2LCAxMDQsIDE2LCAzMSwgMjMxLCAxMTksIDIxOSwgMTUsIDEwNCwgMTYsIDMxLCAyMzEsIDExOSwgMjE5LCAxNCwgCi0gICAgMTA0LCAxNiwgMzEsIDI0OSwgMjMxLCAxMDQsIDE2LCAzMSwgMjIyLCAxNzIsIDEwNCwgMTYsIDMxLCAyMjksIDE5LCAxMDQsIAotICAgIDE2LCAzMSwgMjE0LCAxMjIsIDEwNCwgMTYsIDMxLCAyMTQsIDEyMSwgMTA0LCAxNiwgMzEsIDIyMywgMTA1LCAyMjIsIDE3MiwgCi0gICAgMTA0LCAxNiwgMzEsIDIyMywgMTA1LCAyMjIsIDE3MSwgMTA0LCAxNiwgMzEsIDI0MiwgMTQyLCAxMDQsIDE2LCAzMSwgMjIwLCAKLSAgICA5MiwgMTA0LCAxNiwgMzEsIDIzNSwgMTc1LCAyMjcsIDIwLCAxMDQsIDE2LCAzMSwgMjM1LCAxNzUsIDIyNywgMTksIDEwNCwgCi0gICAgMTYsIDMxLCAyNDksIDc0LCA2NSwgMjM1LCAxNzQsIDEwNCwgMTYsIDMxLCAyMjMsIDI1MSwgNjUsIDIzNSwgMTc0LCAxMDQsIAotICAgIDE2LCAzMSwgMjQ5LCAxMDcsIDIyNywgMjAsIDEwNCwgMTYsIDMxLCAyMzUsIDE3MywgMjI3LCAyMCwgMTA0LCAxNiwgMzEsIAotICAgIDIxOSwgMTcsIDY1LCAyNDksIDEwNiwgMTA0LCAxNiwgMzEsIDI0OSwgNzQsIDY1LCAyNDksIDEwNiwgMTA0LCAxNiwgMzEsIAotICAgIDI0OSwgNzQsIDY1LCAyNDksIDEwNSwgMTA0LCAxNiwgMzEsIDI0OSwgMTA3LCAyNTMsIDI1MCwgMTA0LCAxNiwgMzEsIDIyMiwgCi0gICAgMTczLCA2NSwgMjQ5LCAxMDcsIDI1MywgMjUwLCAxMDQsIDE2LCAzMSwgMjE5LCAxNywgNjUsIDIyMiwgMTczLCA2NSwgMjQ5LCAKLSAgICAxMDYsIDEwNCwgMTYsIDMxLCAyMTQsIDIyMCwgMTA0LCAxNiwgMzEsIDIxNywgMzcsIDIyNywgMjAsIDEwNCwgMTYsIDMxLCAKLSAgICAyMzMsIDgxLCAyMjcsIDIwLCAxMDQsIDE2LCAzMSwgMjUzLCAyNDksIDIyNywgMjAsIDEwNCwgMTYsIDMxLCAyMTksIDE3LCAKLSAgICA2NSwgMjUzLCAyNDgsIDEwNCwgMTYsIDMxLCAyMjIsIDE3MywgNjUsIDI1MywgMjQ4LCAxMDQsIDE2LCAzMSwgMjE5LCAxNywgCi0gICAgNjUsIDIyMiwgMTczLCA2NSwgMjUzLCAyNDgsIDEwNCwgMTYsIDMxLCAyMTQsIDEzOSwgNjUsIDI1MywgMjQ4LCAxMDQsIDE2LCAKLSAgICAzMSwgMjIzLCAyNTEsIDY1LCAyNTMsIDI0OCwgMTA0LCAxNiwgMzEsIDIyMywgMjUxLCA2NSwgMjUzLCAyNDcsIDEwNCwgMTYsIAotICAgIDMxLCAyMjMsIDI1MCwgMTA0LCAxNiwgMzEsIDIyMywgMjQ5LCAxMDQsIDE2LCAzMSwgMjIzLCAyNDgsIDEwNCwgMTYsIDMxLCAKLSAgICAyMjMsIDI0NywgMTA0LCAxNiwgMzEsIDI1NCwgNjYsIDEwNCwgMTYsIDMxLCAyNTQsIDY1LCAxMDQsIDE2LCAzMSwgMjMxLCAKLSAgICAyMjYsIDEwNCwgMTYsIDMxLCAyMjIsIDE3OCwgMTA0LCAxNiwgMzEsIDI1MywgMTYxLCAxMDQsIDE2LCAzMSwgMjI0LCAxOCwgCi0gICAgMTA0LCAxNiwgMzEsIDIyNCwgMTcsIDEwNCwgMTYsIDMxLCAyNTMsIDk5LCAxMDQsIDE2LCAzMSwgMjUxLCAxNTIsIDIyNywgCi0gICAgMjAsIDEwNCwgMTYsIDMxLCAyMTgsIDAsIDEwNCwgMTYsIDMxLCAyMTcsIDI1NSwgMTA0LCAxNiwgMzEsIDIyNCwgMTUzLCAKLSAgICAyMzIsIDI1MSwgMTA0LCAxNiwgMzEsIDI1MSwgMTA5LCAxMDQsIDE2LCAzMSwgMjUxLCAxMDgsIDEwNCwgMTYsIDMxLCAyNTEsIAotICAgIDEwNywgMTA0LCAxNiwgMzEsIDI1NCwgNDcsIDEwNCwgMTYsIDMxLCAyMjcsIDg0LCAxMDQsIDE2LCAzMSwgMjE5LCAxODAsIAotICAgIDEwNCwgMTYsIDMxLCAyMTcsIDM1LCAxMDQsIDE2LCAzMSwgMjQyLCA3NywgMTA0LCAxNiwgMzEsIDIxNCwgMTIsIDEwNCwgCi0gICAgMTYsIDMxLCAyMjUsIDEwNiwgMTA0LCAxNiwgMzEsIDI1MCwgMjAyLCAxMDQsIDE2LCAzMSwgMjE2LCA1MCwgMTA0LCAxNiwgCi0gICAgMzEsIDI1MCwgMTc4LCAyMzAsIDE5MiwgMTA0LCAxNiwgMzEsIDIyMiwgMTIwLCA2NSwgMjM1LCA1OCwgMTA0LCAxNiwgMzEsIAotICAgIDI1MCwgMjExLCAxMDQsIDE2LCAzMSwgMjE2LCAxNzcsIDEwNCwgMTYsIDMxLCAyMTksIDkzLCAyMTYsIDE3NywgMTA0LCAxNiwgCi0gICAgMzEsIDIzMiwgMjAxLCAxMDQsIDE2LCAzMSwgMjE5LCAyNDAsIDEwNCwgMTYsIDMxLCAyMTUsIDExMywgMTA0LCAxNiwgMzEsIAotICAgIDI0MCwgMjMzLCAyNDYsIDE5LCAxMDQsIDE2LCAzMSwgMjUzLCAxNDIsIDEwNCwgMTYsIDMxLCAyMjUsIDExNCwgMjUzLCAKLSAgICAxNDIsIDEwNCwgMTYsIDMxLCAyNTEsIDcwLCAxMDQsIDE2LCAzMSwgMjI1LCAxMDUsIDI1MSwgNzAsIDEwNCwgMTYsIDMxLCAKLSAgICAyNTQsIDQ0LCAxMDQsIDE2LCAzMSwgMjE5LCA1NywgMjE4LCAyMjYsIDIxOSwgNTYsIDEwNCwgMTYsIDMxLCAyMTksIDU3LCAKLSAgICAyMTgsIDIyNiwgMjE5LCA1NSwgMTA0LCAxNiwgMzEsIDIxOSwgMTMsIDEwNCwgMTYsIDMxLCAyMjUsIDgwLCAxMDQsIDE2LCAKLSAgICAzMSwgMjQ3LCAxMzMsIDEwNCwgMTYsIDMxLCAyNDcsIDEzNSwgMTA0LCAxNiwgMzEsIDI0NywgMTM0LCAxMDQsIDE2LCAzMSwgCi0gICAgMjI1LCAxNywgMTA0LCAxNiwgMzEsIDIyNSwgNywgMTA0LCAxNiwgMzEsIDI0OSwgNjIsIDEwNCwgMTYsIDMxLCAyNDksIDYxLCAKLSAgICAxMDQsIDE2LCAzMSwgMjQ5LCA2MCwgMTA0LCAxNiwgMzEsIDI0OSwgNTksIDEwNCwgMTYsIDMxLCAyNDksIDU4LCAxMDQsIAotICAgIDE2LCAzMSwgMjU0LCA3NywgMTA0LCAxNiwgMzEsIDI1MiwgMzksIDY1LCAyMzEsIDIxMiwgMTA0LCAxNiwgMzEsIDI1MiwgCi0gICAgMzksIDY1LCAyMTQsIDI0OSwgMTA0LCAxNiwgMzEsIDIyMywgMjA5LCAxMDQsIDE2LCAzMSwgMjQwLCAyMjUsIDEwNCwgMTYsIAotICAgIDMxLCAyMjksIDQzLCAxMDQsIDE2LCAzMSwgMjQ4LCA5MSwgMTA0LCAxNiwgMzEsIDIzMCwgMjA0LCAxMDQsIDE2LCAzMSwgCi0gICAgMTUxLCAyNDYsIDQ5LCAxMDQsIDE2LCAzMSwgMTUxLCAyMjcsIDAsIDksIDEzLCAyNDAsIDk1LCA5LCAxMywgMjQwLCA5NCwgCi0gICAgOSwgMTMsIDI0MCwgOTMsIDksIDEzLCAyNDAsIDkyLCA5LCAxMywgMjQwLCA5MSwgOSwgMTMsIDI0MCwgOTAsIDksIDEzLCAKLSAgICAyNDAsIDg5LCA5LCAxMywgMjQwLCA4OCwgOSwgMTMsIDI0MCwgODcsIDksIDEzLCAyNDAsIDg2LCA5LCAxMywgMjQwLCA4NSwgCi0gICAgOSwgMTMsIDI0MCwgODQsIDksIDEzLCAyNDAsIDgzLCA5LCAxMywgMjQwLCA4MiwgOSwgMTMsIDI0MCwgODEsIDksIDEzLCAKLSAgICAyNDAsIDgwLCA5LCAxMywgMjQwLCA3OSwgOSwgMTMsIDI0MCwgNzgsIDksIDEzLCAyNDAsIDc3LCA5LCAxMywgMjQwLCA3NiwgCi0gICAgOSwgMTMsIDI0MCwgNzUsIDksIDEzLCAyNDAsIDc0LCA5LCAxMywgMjQwLCA3MywgOSwgMTMsIDI0MCwgNzIsIDksIDEzLCAKLSAgICAyNDAsIDcxLCA5LCAxMywgMjQwLCA3MCwgOSwgMTMsIDI0MCwgNjksIDksIDEzLCAyNDAsIDY4LCA5LCAxMywgMjQwLCA2NywgCi0gICAgOSwgMTMsIDI0MCwgNjYsIDksIDEzLCAyNDAsIDY1LCA5LCAxMywgMjQwLCA2NCwgOSwgMTMsIDI0MCwgNjMsIDksIDEzLCAKLSAgICAyNDAsIDYyLCA5LCAxMywgMjQwLCA2MSwgOSwgMTMsIDI0MCwgNjAsIDksIDEzLCAyNDAsIDU5LCA5LCAxMywgMjQwLCA1OCwgCi0gICAgOSwgMTMsIDI0MCwgNTcsIDksIDEzLCAyNDAsIDU2LCA5LCAxMywgMjQwLCA1NSwgOSwgMTMsIDI0MCwgNTQsIDksIDEzLCAKLSAgICAyNDAsIDUzLCA5LCAxMywgMjQwLCA1MiwgOSwgMTMsIDI0MCwgNTEsIDksIDEzLCAyNDAsIDUwLCA5LCAxMywgMjQwLCA0OSwgCi0gICAgOSwgMTMsIDI0MCwgNDgsIDksIDEzLCAyNDAsIDQ3LCA5LCAxMywgMjQwLCA0NiwgOSwgMTMsIDI0MCwgNDUsIDksIDEzLCAKLSAgICAyNDAsIDQ0LCA5LCAxMywgMjQwLCA0MywgOSwgMTMsIDI0MCwgNDIsIDksIDEzLCAyNDAsIDQxLCA5LCAxMywgMjQwLCA0MCwgCi0gICAgOSwgMTMsIDI0MCwgMzksIDksIDEzLCAyNDAsIDM4LCA5LCAxMywgMjQwLCAzNywgOSwgMTMsIDI0MCwgMzYsIDksIDEzLCAKLSAgICAyNDAsIDM1LCA5LCAxMywgMjQwLCAzNCwgOSwgMTMsIDI0MCwgMzMsIDksIDEzLCAyNDAsIDMyLCA5LCAxMywgMjQwLCAzMSwgCi0gICAgOSwgMTMsIDI0MCwgMzAsIDksIDEzLCAyNDAsIDI5LCA5LCAxMywgMjQwLCAyOCwgOSwgMTMsIDI0MCwgMjcsIDksIDEzLCAKLSAgICAyNDAsIDI2LCA5LCAxMywgMjQwLCAyNSwgOSwgMTMsIDI0MCwgMjQsIDksIDEzLCAyNDAsIDIzLCA5LCAxMywgMjQwLCAyMiwgCi0gICAgOSwgMTMsIDI0MCwgMjEsIDksIDEzLCAyNDAsIDIwLCA5LCAxMywgMjQwLCAxOSwgOSwgMTMsIDI0MCwgMTgsIDksIDEzLCAKLSAgICAyNDAsIDE3LCA5LCAxMywgMjQwLCAxNiwgOSwgMTMsIDI0MCwgMTUsIDksIDEzLCAyNDAsIDE0LCA5LCAxMywgMjQwLCAxMywgCi0gICAgOSwgMTMsIDI0MCwgMTIsIDksIDEzLCAyNDAsIDExLCA5LCAxMywgMjQwLCAxMCwgOSwgMTMsIDI0MCwgOSwgOSwgMTMsIAotICAgIDI0MCwgOCwgOSwgMTMsIDI0MCwgNywgOSwgMTMsIDI0MCwgNiwgOSwgMTMsIDI0MCwgNSwgOSwgMTMsIDI0MCwgNCwgOSwgCi0gICAgMTMsIDI0MCwgMywgOSwgMTMsIDI0MCwgMiwgOSwgMTMsIDI0MCwgMSwgOSwgMTMsIDI0MCwgMCwgOSwgMTMsIDIzOSwgMjU1LCAKLSAgICA5LCAxMywgMjM5LCAyNTQsIDksIDEzLCAyMzksIDI1MywgOSwgMTMsIDIzOSwgMjUyLCA5LCAxMywgMjM5LCAyNTEsIDksIAotICAgIDEzLCAyMzksIDI1MCwgOSwgMTMsIDIzOSwgMjQ5LCA5LCAxMywgMjM5LCAyNDgsIDksIDEzLCAyMzksIDI0NywgOSwgMTMsIAotICAgIDIzOSwgMjQ2LCA5LCAxMywgMjM5LCAyNDUsIDksIDEzLCAyMzksIDI0NCwgOSwgMTMsIDIzOSwgMjQzLCA5LCAxMywgMjM5LCAKLSAgICAyNDIsIDksIDEzLCAyMzksIDI0MSwgOSwgMTMsIDIzOSwgMjQwLCA5LCAxMywgMjM5LCAyMzksIDksIDEzLCAyMzksIDIzOCwgCi0gICAgOSwgMTMsIDIzOSwgMjM3LCA5LCAxMywgMjM5LCAyMzYsIDksIDEzLCAyMzksIDIzNSwgOSwgMTMsIDIzOSwgMjM0LCA5LCAKLSAgICAxMywgMjM5LCAyMzMsIDksIDEzLCAyMzksIDIzMiwgOSwgMTMsIDIzOSwgMjMxLCA5LCAxMywgMjM5LCAyMzAsIDksIDEzLCAKLSAgICAyMzksIDIyOSwgOSwgMTMsIDIzOSwgMjI4LCA5LCAxMywgMjM5LCAyMjcsIDksIDEzLCAyMzksIDIyNiwgOSwgMTMsIDIzOSwgCi0gICAgMjI1LCA5LCAxMywgMjM5LCAyMjQsIDksIDEzLCAyMzksIDIyMywgOSwgMTMsIDIzOSwgMjIyLCA5LCAxMywgMjM5LCAyMjEsIAotICAgIDksIDEzLCAyMzksIDIyMCwgOSwgMTMsIDIzOSwgMjE5LCA5LCAxMywgMjM5LCAyMTgsIDksIDEzLCAyMzksIDIxNywgOSwgCi0gICAgMTMsIDIzOSwgMjE2LCA5LCAxMywgMjM5LCAyMTUsIDksIDEzLCAyMzksIDIxNCwgOSwgMTMsIDIzOSwgMjEzLCA5LCAxMywgCi0gICAgMjM5LCAyMTIsIDksIDEzLCAyMzksIDIxMSwgOSwgMTMsIDIzOSwgMjEwLCA5LCAxMywgMjM5LCAyMDksIDksIDEzLCAyMzksIAotICAgIDIwOCwgOSwgMTMsIDIzOSwgMjA3LCA5LCAxMywgMjM5LCAyMDYsIDksIDEzLCAyMzksIDIwNSwgOSwgMTMsIDIzOSwgMjA0LCAKLSAgICA5LCAxMywgMjM5LCAyMDMsIDksIDEzLCAyMzksIDIwMiwgOSwgMTMsIDIzOSwgMjAxLCA5LCAxMywgMjM5LCAyMDAsIDksIAotICAgIDEzLCAyMzksIDE5OSwgOSwgMTMsIDIzOSwgMTk4LCA5LCAxMywgMjM5LCAxOTcsIDksIDEzLCAyMzksIDE5NiwgOSwgMTMsIAotICAgIDIzOSwgMTk1LCA5LCAxMywgMjM5LCAxOTQsIDksIDEzLCAyMzksIDE5MywgOSwgMTMsIDIzOSwgMTkyLCA5LCAxMywgMjM5LCAKLSAgICAxOTEsIDksIDEzLCAyMzksIDE5MCwgOSwgMTMsIDIzOSwgMTg5LCA5LCAxMywgMjM5LCAxODgsIDksIDEzLCAyMzksIDE4NywgCi0gICAgOSwgMTMsIDIzOSwgMTg2LCA5LCAxMywgMjM5LCAxODUsIDksIDEzLCAyMzksIDE4NCwgOSwgMTMsIDIzOSwgMTgzLCA5LCAKLSAgICAxMywgMjM5LCAxODIsIDksIDEzLCAyMzksIDE4MSwgOSwgMTMsIDIzOSwgMTgwLCA5LCAxMywgMjM5LCAxNzksIDksIDEzLCAKLSAgICAyMzksIDE3OCwgOSwgMTMsIDIzOSwgMTc3LCA5LCAxMywgMjM5LCAxNzYsIDksIDEzLCAyMzksIDE3NSwgOSwgMTMsIDIzOSwgCi0gICAgMTc0LCA5LCAxMywgMjM5LCAxNzMsIDksIDEzLCAyMzksIDE3MiwgOSwgMTMsIDIzOSwgMTcxLCA5LCAxMywgMjM5LCAxNzAsIAotICAgIDksIDEzLCAyMzksIDE2OSwgOSwgMTMsIDIzOSwgMTY4LCA5LCAxMywgMjM5LCAxNjcsIDksIDEzLCAyMzksIDE2NiwgOSwgCi0gICAgMTMsIDIzOSwgMTY1LCA5LCAxMywgMjM5LCAxNjQsIDksIDEzLCAyMzksIDE2MywgOSwgMTMsIDIzOSwgMTYyLCA5LCAxMywgCi0gICAgMjM5LCAxNjEsIDksIDEzLCAyMzksIDE2MCwgOSwgMTMsIDIzOSwgMTU5LCA5LCAxMywgMjM5LCAxNTgsIDksIDEzLCAyMzksIAotICAgIDE1NywgOSwgMTMsIDIzOSwgMTU2LCA5LCAxMywgMjM5LCAxNTUsIDksIDEzLCAyMzksIDE1NCwgOSwgMTMsIDIzOSwgMTUzLCAKLSAgICA5LCAxMywgMjM5LCAxNTIsIDksIDEzLCAyMzksIDE1MSwgOSwgMTMsIDIzOSwgMTUwLCA5LCAxMywgMjM5LCAxNDksIDksIAotICAgIDEzLCAyMzksIDE0OCwgOSwgMTMsIDIzOSwgMTQ3LCA5LCAxMywgMjM5LCAxNDYsIDksIDEzLCAyMzksIDE0NSwgOSwgMTMsIAotICAgIDIzOSwgMTQ0LCA5LCAxMywgMjM5LCAxNDMsIDksIDEzLCAyMzksIDE0MiwgOSwgMTMsIDIzOSwgMTQxLCA5LCAxMywgMjM5LCAKLSAgICAxNDAsIDksIDEzLCAyMzksIDEzOSwgOSwgMTMsIDIzOSwgMTM4LCA5LCAxMywgMjM5LCAxMzcsIDksIDEzLCAyMzksIDEzNiwgCi0gICAgOSwgMTMsIDIzOSwgMTM1LCA5LCAxMywgMjM5LCAxMzQsIDksIDEzLCAyMzksIDEzMywgOSwgMTMsIDIzOSwgMTMyLCA5LCAKLSAgICAxMywgMjM5LCAxMzEsIDksIDEzLCAyMzksIDEzMCwgOSwgMTMsIDIzOSwgMTI5LCA5LCAxMywgMjM5LCAxMjgsIDksIDEzLCAKLSAgICAyMzksIDEyNywgOSwgMTMsIDIzOSwgMTI2LCA5LCAxMywgMjM5LCAxMjUsIDksIDEzLCAyMzksIDEyNCwgOSwgMTMsIDIzOSwgCi0gICAgMTIzLCA5LCAxMywgMjM5LCAxMjIsIDksIDEzLCAyMzksIDEyMSwgOSwgMTMsIDIzOSwgMTIwLCA5LCAxMywgMjM5LCAxMTksIAotICAgIDksIDEzLCAyMzksIDExOCwgOSwgMTMsIDIzOSwgMTE3LCA5LCAxMywgMjM5LCAxMTYsIDksIDEzLCAyMzksIDExNSwgOSwgCi0gICAgMTMsIDIzOSwgMTE0LCA5LCAxMywgMjM5LCAxMTMsIDksIDEzLCAyMzksIDExMiwgOSwgMTMsIDIzOSwgMTExLCA5LCAxMywgCi0gICAgMjM5LCAxMTAsIDksIDEzLCAyMzksIDEwOSwgOSwgMTMsIDIzOSwgMTA4LCA5LCAxMywgMjM5LCAxMDcsIDksIDEzLCAyMzksIAotICAgIDEwNiwgOSwgMTMsIDIzOSwgMTA1LCA5LCAxMywgMjM5LCAxMDQsIDksIDEzLCAyMzksIDEwMywgOSwgMTMsIDIzOSwgMTAyLCAKLSAgICA5LCAxMywgMjM5LCAxMDEsIDksIDEzLCAyMzksIDEwMCwgOSwgMTMsIDIzOSwgOTksIDksIDEzLCAyMzksIDk4LCA5LCAxMywgCi0gICAgMjM5LCA5NywgOSwgMTMsIDIzOSwgOTYsIDksIDEzLCAyMzksIDk1LCA5LCAxMywgMjM5LCA5NCwgOSwgMTMsIDIzOSwgOTMsIAotICAgIDksIDEzLCAyMzksIDkyLCA5LCAxMywgMjM5LCA5MSwgOSwgMTMsIDIzOSwgOTAsIDksIDEzLCAyMzksIDg5LCA5LCAxMywgCi0gICAgMjM5LCA4OCwgOSwgMTMsIDIzOSwgODcsIDksIDEzLCAyMzksIDg2LCA5LCAxMywgMjM5LCA4NSwgOSwgMTMsIDIzOSwgODQsIAotICAgIDksIDEzLCAyMzksIDgzLCA5LCAxMywgMjM5LCA4MiwgOSwgMTMsIDIzOSwgODEsIDksIDEzLCAyMzksIDgwLCA5LCAxMywgCi0gICAgMjM5LCA3OSwgOSwgMTMsIDIzOSwgNzgsIDksIDEzLCAyMzksIDc3LCA5LCAxMywgMjM5LCA3NiwgOSwgMTMsIDIzOSwgNzUsIAotICAgIDksIDEzLCAyMzksIDc0LCA5LCAxMywgMjM5LCA3MywgOSwgMTMsIDIzOSwgNzIsIDksIDEzLCAyMzksIDcxLCA5LCAxMywgCi0gICAgMjM5LCA3MCwgOSwgMTMsIDIzOSwgNjksIDksIDEzLCAyMzksIDY4LCA5LCAxMywgMjM5LCA2NywgOSwgMTMsIDIzOSwgNjYsIAotICAgIDksIDEzLCAyMzksIDY1LCA5LCAxMywgMjM5LCA2NCwgOSwgMTMsIDIzOSwgNjMsIDksIDEzLCAyMzksIDYyLCA5LCAxMywgCi0gICAgMjM5LCA2MSwgOSwgMTMsIDIzOSwgNjAsIDksIDEzLCAyMzksIDU5LCA5LCAxMywgMjM5LCA1OCwgOSwgMTMsIDIzOSwgNTcsIAotICAgIDksIDEzLCAyMzksIDU2LCA5LCAxMywgMjM5LCA1NSwgOSwgMTMsIDIzOSwgNTQsIDksIDEzLCAyMzksIDUzLCA5LCAxMywgCi0gICAgMjM5LCA1MiwgOSwgMTMsIDIzOSwgNTEsIDksIDEzLCAyMzksIDUwLCA5LCAxMywgMjM5LCA0OSwgOSwgMTMsIDIzOSwgNDgsIAotICAgIDksIDEzLCAyMzksIDQ3LCA5LCAxMywgMjM5LCA0NiwgOSwgMTMsIDIzOSwgNDUsIDksIDEzLCAyMzksIDQ0LCA5LCAxMywgCi0gICAgMjM5LCA0MywgOSwgMTMsIDIzOSwgNDIsIDksIDEzLCAyMzksIDQxLCA5LCAxMywgMjM5LCA0MCwgOSwgMTMsIDIzOSwgMzksIAotICAgIDksIDEzLCAyMzksIDM4LCA5LCAxMywgMjM5LCAzNywgOSwgMTMsIDIzOSwgMzYsIDksIDEzLCAyMzksIDM1LCA5LCAxMywgCi0gICAgMjM5LCAzNCwgOSwgMTMsIDIzOSwgMzMsIDksIDEzLCAyMzksIDMyLCA5LCAxMywgMjM5LCAzMSwgOSwgMTMsIDIzOSwgMzAsIAotICAgIDksIDEzLCAyMzksIDI5LCA5LCAxMywgMjM5LCAyOCwgOSwgMTMsIDIzOSwgMjcsIDksIDEzLCAyMzksIDI2LCA5LCAxMywgCi0gICAgMjM5LCAyNSwgOSwgMTMsIDIzOSwgMjQsIDksIDEzLCAyMzksIDIzLCA5LCAxMywgMjM5LCAyMiwgOSwgMTMsIDIzOSwgMjEsIAotICAgIDksIDEzLCAyMzksIDIwLCA5LCAxMywgMjM5LCAxOSwgOSwgMTMsIDIzOSwgMTgsIDksIDEzLCAyMzksIDE3LCA5LCAxMywgCi0gICAgMjM5LCAxNiwgOSwgMTMsIDIzOSwgMTUsIDksIDEzLCAyMzksIDE0LCA5LCAxMywgMjM5LCAxMywgOSwgMTMsIDIzOSwgMTIsIAotICAgIDksIDEzLCAyMzksIDExLCA5LCAxMywgMjM5LCAxMCwgOSwgMTMsIDIzOSwgOSwgOSwgMTMsIDIzOSwgOCwgOSwgMTMsIDIzOSwgCi0gICAgNywgOSwgMTMsIDIzOSwgNiwgOSwgMTMsIDIzOSwgNSwgOSwgMTMsIDIzOSwgNCwgOSwgMTMsIDIzOSwgMywgOSwgMTMsIAotICAgIDIzOSwgMiwgOSwgMTMsIDIzOSwgMSwgOSwgMTMsIDIzOSwgMCwgOSwgMTMsIDIzOCwgMjU1LCA5LCAxMywgMjM4LCAyNTQsIAotICAgIDksIDEzLCAyMzgsIDI1MywgOSwgMTMsIDIzOCwgMjUyLCA5LCAxMywgMjM4LCAyNTEsIDksIDEzLCAyMzgsIDI1MCwgOSwgCi0gICAgMTMsIDIzOCwgMjQ5LCA5LCAxMywgMjM4LCAyNDgsIDksIDEzLCAyMzgsIDI0NywgOSwgMTMsIDIzOCwgMjQ2LCA5LCAxMywgCi0gICAgMjM4LCAyNDUsIDksIDEzLCAyMzgsIDI0NCwgOSwgMTMsIDIzOCwgMjQzLCA5LCAxMywgMjM4LCAyNDIsIDksIDEzLCAyMzgsIAotICAgIDI0MSwgOSwgMTMsIDIzOCwgMjQwLCA5LCAxMywgMjM4LCAyMzksIDksIDEzLCAyMzgsIDIzOCwgOSwgMTMsIDIzOCwgMjM3LCAKLSAgICA5LCAxMywgMjM4LCAyMzYsIDksIDEzLCAyMzgsIDIzNSwgOSwgMTMsIDIzOCwgMjM0LCA5LCAxMywgMjM4LCAyMzMsIDksIAotICAgIDEzLCAyMzgsIDIzMiwgOSwgMTMsIDIzOCwgMjMxLCA5LCAxMywgMjM4LCAyMzAsIDksIDEzLCAyMzgsIDIyOSwgOSwgMTMsIAotICAgIDIzOCwgMjI4LCA5LCAxMywgMjM4LCAyMjcsIDksIDEzLCAyMzgsIDIyNiwgOSwgMTMsIDIzOCwgMjI1LCA5LCAxMywgMjM4LCAKLSAgICAyMjQsIDksIDEzLCAyMzgsIDIyMywgOSwgMTMsIDIzOCwgMjIyLCA5LCAxMywgMjM4LCAyMjEsIDksIDEzLCAyMzgsIDIyMCwgCi0gICAgOSwgMTMsIDIzOCwgMjE5LCA5LCAxMywgMjM4LCAyMTgsIDksIDEzLCAyMzgsIDIxNywgOSwgMTMsIDIzOCwgMjE2LCA5LCAKLSAgICAxMywgMjM4LCAyMTUsIDksIDEzLCAyMzgsIDIxNCwgOSwgMTMsIDIzOCwgMjEzLCA5LCAxMywgMjM4LCAyMTIsIDksIDEzLCAKLSAgICAyMzgsIDIxMSwgOSwgMTMsIDIzOCwgMjEwLCA5LCAxMywgMjM4LCAyMDksIDksIDEzLCAyMzgsIDIwOCwgOSwgMTMsIDIzOCwgCi0gICAgMjA3LCA5LCAxMywgMjM4LCAyMDYsIDksIDEzLCAyMzgsIDIwNSwgOSwgMTMsIDIzOCwgMjA0LCA5LCAxMywgMjM4LCAyMDMsIAotICAgIDksIDEzLCAyMzgsIDIwMiwgOSwgMTMsIDIzOCwgMjAxLCA5LCAxMywgMjM4LCAyMDAsIDksIDEzLCAyMzgsIDE5OSwgOSwgCi0gICAgMTMsIDIzOCwgMTk4LCA5LCAxMywgMjM4LCAxOTcsIDksIDEzLCAyMzgsIDE5NiwgOSwgMTMsIDIzOCwgMTk1LCA5LCAxMywgCi0gICAgMjM4LCAxOTQsIDksIDEzLCAyMzgsIDE5MywgOSwgMTMsIDIzOCwgMTkyLCA5LCAxMywgMjM4LCAxOTEsIDksIDEzLCAyMzgsIAotICAgIDE5MCwgOSwgMTMsIDIzOCwgMTg5LCA5LCAxMywgMjM4LCAxODgsIDksIDEzLCAyMzgsIDE4NywgOSwgMTMsIDIzOCwgMTg2LCAKLSAgICA5LCAxMywgMjM4LCAxODUsIDksIDEzLCAyMzgsIDE4NCwgOSwgMTMsIDIzOCwgMTgzLCA5LCAxMywgMjM4LCAxODIsIDksIAotICAgIDEzLCAyMzgsIDE4MSwgOSwgMTMsIDIzOCwgMTgwLCA5LCAxMywgMjM4LCAxNzksIDksIDEzLCAyMzgsIDE3OCwgOSwgMTMsIAotICAgIDIzOCwgMTc3LCA5LCAxMywgMjM4LCAxNzYsIDksIDEzLCAyMzgsIDE3NSwgOSwgMTMsIDIzOCwgMTc0LCA5LCAxMywgMjM4LCAKLSAgICAxNzMsIDksIDEzLCAyMzgsIDE3MiwgOSwgMTMsIDIzOCwgMTcxLCA5LCAxMywgMjM4LCAxNzAsIDksIDEzLCAyMzgsIDE2OSwgCi0gICAgOSwgMTMsIDIzOCwgMTY4LCA5LCAxMywgMjM4LCAxNjcsIDksIDEzLCAyMzgsIDE2NiwgOSwgMTMsIDIzOCwgMTY1LCA5LCAKLSAgICAxMywgMjM4LCAxNjQsIDksIDEzLCAyMzgsIDE2MywgOSwgMTMsIDIzOCwgMTYyLCA5LCAxMywgMjM4LCAxNjEsIDksIDEzLCAKLSAgICAyMzgsIDE2MCwgOSwgMTMsIDIzOCwgMTU5LCA5LCAxMywgMjM4LCAxNTgsIDksIDEzLCAyMzgsIDE1NywgOSwgMTMsIDIzOCwgCi0gICAgMTU2LCA5LCAxMywgMjM4LCAxNTUsIDksIDEzLCAyMzgsIDE1NCwgOSwgMTMsIDIzOCwgMTUzLCA5LCAxMywgMjM4LCAxNTIsIAotICAgIDksIDEzLCAyMzgsIDE1MSwgOSwgMTMsIDIzOCwgMTUwLCA5LCAxMywgMjM4LCAxNDksIDksIDEzLCAyMzgsIDE0OCwgOSwgCi0gICAgMTMsIDIzOCwgMTQ3LCA5LCAxMywgMjM4LCAxNDYsIDksIDEzLCAyMzgsIDE0NSwgOSwgMTMsIDIzOCwgMTQ0LCA5LCAxMywgCi0gICAgMjM4LCAxNDMsIDksIDEzLCAyMzgsIDE0MiwgOSwgMTMsIDIzOCwgMTQxLCA5LCAxMywgMjM4LCAxNDAsIDksIDEzLCAyMzgsIAotICAgIDEzOSwgOSwgMTMsIDIzOCwgMTM4LCA5LCAxMywgMjM4LCAxMzcsIDksIDEzLCAyMzgsIDEzNiwgOSwgMTMsIDIzOCwgMTM1LCAKLSAgICA5LCAxMywgMjM4LCAxMzQsIDksIDEzLCAyMzgsIDEzMywgOSwgMTMsIDIzOCwgMTMyLCA5LCAxMywgMjM4LCAxMzEsIDksIAotICAgIDEzLCAyMzgsIDEzMCwgOSwgMTMsIDIzOCwgMTI5LCA5LCAxMywgMjM4LCAxMjgsIDksIDEzLCAyMzgsIDEyNywgOSwgMTMsIAotICAgIDIzOCwgMTI2LCA5LCAxMywgMjM4LCAxMjUsIDksIDEzLCAyMzgsIDEyNCwgOSwgMTMsIDIzOCwgMTIzLCA5LCAxMywgMjM4LCAKLSAgICAxMjIsIDksIDEzLCAyMzgsIDEyMSwgOSwgMTMsIDIzOCwgMTIwLCA5LCAxMywgMjM4LCAxMTksIDksIDEzLCAyMzgsIDExOCwgCi0gICAgOSwgMTMsIDIzOCwgMTE3LCA5LCAxMywgMjM4LCAxMTYsIDksIDEzLCAyMzgsIDExNSwgOSwgMTMsIDIzOCwgMTE0LCA5LCAKLSAgICAxMywgMjM4LCAxMTMsIDksIDEzLCAyMzgsIDExMiwgOSwgMTMsIDIzOCwgMTExLCA5LCAxMywgMjM4LCAxMTAsIDksIDEzLCAKLSAgICAyMzgsIDEwOSwgOSwgMTMsIDIzOCwgMTA4LCA5LCAxMywgMjM4LCAxMDcsIDksIDEzLCAyMzgsIDEwNiwgOSwgMTMsIDIzOCwgCi0gICAgMTA1LCA5LCAxMywgMjM4LCAxMDQsIDksIDEzLCAyMzgsIDEwMywgOSwgMTMsIDIzOCwgMTAyLCA5LCAxMywgMjM4LCAxMDEsIAotICAgIDksIDEzLCAyMzgsIDEwMCwgOSwgMTMsIDIzOCwgOTksIDksIDEzLCAyMzgsIDk4LCA5LCAxMywgMjM4LCA5NywgOSwgMTMsIAotICAgIDIzOCwgOTYsIDksIDEzLCAyMzgsIDk1LCA5LCAxMywgMjM4LCA5NCwgOSwgMTMsIDIzOCwgOTMsIDksIDEzLCAyMzgsIDkyLCAKLSAgICA5LCAxMywgMjM4LCA5MSwgOSwgMTMsIDIzOCwgOTAsIDksIDEzLCAyMzgsIDg5LCA5LCAxMywgMjM4LCA4OCwgOSwgMTMsIAotICAgIDIzOCwgODcsIDksIDEzLCAyMzgsIDg2LCA5LCAxMywgMjM4LCA4NSwgOSwgMTMsIDIzOCwgODQsIDksIDEzLCAyMzgsIDgzLCAKLSAgICA5LCAxMywgMjM4LCA4MiwgOSwgMTMsIDIzOCwgODEsIDksIDEzLCAyMzgsIDgwLCA5LCAxMywgMjM4LCA3OSwgOSwgMTMsIAotICAgIDIzOCwgNzgsIDksIDEzLCAyMzgsIDc3LCA5LCAxMywgMjM4LCA3NiwgOSwgMTMsIDIzOCwgNzUsIDksIDEzLCAyMzgsIDc0LCAKLSAgICA5LCAxMywgMjM4LCA3MywgOSwgMTMsIDIzOCwgNzIsIDksIDEzLCAyMzgsIDcxLCA5LCAxMywgMjM4LCA3MCwgOSwgMTMsIAotICAgIDIzOCwgNjksIDksIDEzLCAyMzgsIDY4LCA5LCAxMywgMjM4LCA2NywgOSwgMTMsIDIzOCwgNjYsIDIzMywgMTE0LCAyMTgsIAotICAgIDMzLCAxMjYsIDIxOSwgMjA2LCAxMjYsIDI0NCwgMjU0LCA3NywgMTI2LCAyMjQsIDE0MywgNzcsIDEyNiwgNTAsIDUyLCAKLSAgICAxMjYsIDI0NywgODYsIDUyLCAxMjYsIDIyNiwgNTcsIDUyLCAxMjYsIDI1NCwgMzUsIDEyNiwgMjUzLCAyMjYsIDEyNiwgNDIsIAotICAgIDIyNiwgMTMxLCAxMjYsIDQ2LCAyMjYsIDEzMSwgMTI2LCAyNTMsIDEzMiwgMTI2LCA5NCwgNTIsIDEyNiwgMjQ5LCAxNTcsIAotICAgIDEyNiwgMjQwLCAxNTksIDEyNiwgMjQzLCAyMDAsIDIxOSwgNjksIDEyNiwgMjE5LCAyMzEsIDEyNiwgMjEsIDIxMiwgNzksIAotICAgIDEyNiwgMjEsIDExNiwgMTI2LCAyMSwgMTA5LCAxMjYsIDIxLCAxNjYsIDEyNiwgMjEsIDE2MywgMTI2LCAyMSwgMTgwLCAKLSAgICAxMjYsIDIxLCAxODksIDEyNiwgMjEsIDE5OCwgMTI2LCAyMSwgMTk1LCAxMjYsIDIxLCAyMDAsIDEyNiwgMjQ5LCAxNjQsIAotICAgIDEyNiwgMjIxLCA3MCwgMTI2LCAyMzMsIDM5LCA1MiwgMTI2LCAyNDUsIDYxLCA1MiwgMTI2LCAyNDIsIDEwNywgNTIsIDEyNiwgCi0gICAgMjI0LCAxNTgsIDc3LCAxMjYsIDI0OSwgMTU2LCAyNTMsIDEyMiwgMTI2LCA3LCA2LCAxLCA2MSwgMTI2LCA3LCA2LCAxLCAKLSAgICAyNTMsIDc0LCAxMjYsIDcsIDYsIDEsIDI1MCwgMjUyLCAxMjYsIDcsIDYsIDEsIDI0OSwgMywgMTI2LCA3LCA2LCAxLCA3NCwgCi0gICAgMTI2LCA3LCA2LCAxLCAyNDQsIDIzMCwgMTI2LCA3LCA2LCAxLCAyNDMsIDE3NywgMTI2LCA3LCA2LCAxLCAyNDIsIDQxLCAKLSAgICAxMjYsIDcsIDYsIDEsIDcyLCAxMjYsIDcsIDYsIDEsIDIzNSwgMTQyLCAxMjYsIDcsIDYsIDEsIDIzNSwgMjcsIDEyNiwgNywgCi0gICAgNiwgMSwgMTUwLCAxMjYsIDcsIDYsIDEsIDE4MywgMTI2LCA3LCA2LCAxLCAyMDQsIDEyNiwgNywgNiwgMSwgNzUsIDEyNiwgCi0gICAgNywgNiwgMSwgMjI2LCAyMjksIDEyNiwgNywgNiwgMSwgMjI0LCAyNDAsIDEyNiwgNywgNiwgMSwgMTQ5LCAxMjYsIDcsIDYsIAotICAgIDEsIDE5NywgMTI2LCA3LCA2LCAxLCAyMTgsIDk5LCAxMjYsIDcsIDYsIDEsIDY5LCAxMjYsIDcsIDYsIDEsIDIxNSwgNzksIAotICAgIDEyNiwgNywgNiwgMSwgMjE0LCA4MiwgMTI2LCA3LCA2LCAxLCAyMTMsIDE2NiwgMTI2LCA3LCA2LCAxLCAyMTMsIDEwNSwgCi0gICAgMTI2LCA3LCA2LCAxLCAyMTIsIDE1MiwgMTI2LCA0MiwgNDEsIDEyNSwgMTI2LCAyMjMsIDIwMywgMjE5LCAyMzEsIDEyNiwgCi0gICAgNDYsIDQxLCAxMjUsIDEyNiwgMjQ5LCAyMjQsIDI1NCwgMTc0LCAxMjYsIDExNSwgMjMyLCAyNDIsIDEyNiwgMjQyLCAxMTQsIAotICAgIDI1NCwgMTc0LCAxMjYsIDcsIDMsIDEsIDYxLCAxMjYsIDcsIDMsIDEsIDI1MywgNzQsIDEyNiwgNywgMywgMSwgMjUwLCAKLSAgICAyNTIsIDEyNiwgNywgMywgMSwgMjQ5LCAzLCAxMjYsIDcsIDMsIDEsIDc0LCAxMjYsIDcsIDMsIDEsIDI0NCwgMjMwLCAxMjYsIAotICAgIDcsIDMsIDEsIDI0MywgMTc3LCAxMjYsIDcsIDMsIDEsIDI0MiwgNDEsIDEyNiwgNywgMywgMSwgNzIsIDEyNiwgNywgMywgMSwgCi0gICAgMjM1LCAxNDIsIDEyNiwgNywgMywgMSwgMjM1LCAyNywgMTI2LCA3LCAzLCAxLCAxNTAsIDEyNiwgNywgMywgMSwgMTgzLCAKLSAgICAxMjYsIDcsIDMsIDEsIDIwNCwgMTI2LCA3LCAzLCAxLCA3NSwgMTI2LCA3LCAzLCAxLCAyMjYsIDIyOSwgMTI2LCA3LCAzLCAKLSAgICAxLCAyMjQsIDI0MCwgMTI2LCA3LCAzLCAxLCAxNDksIDEyNiwgNywgMywgMSwgMTk3LCAxMjYsIDcsIDMsIDEsIDIxOCwgOTksIAotICAgIDEyNiwgNywgMywgMSwgNjksIDEyNiwgNywgMywgMSwgMjE1LCA3OSwgMTI2LCA3LCAzLCAxLCAyMTQsIDgyLCAxMjYsIDcsIAotICAgIDMsIDEsIDIxMywgMTY2LCAxMjYsIDcsIDMsIDEsIDIxMywgMTA1LCAxMjYsIDcsIDMsIDEsIDIxMiwgMTUyLCAxMjYsIDQyLCAKLSAgICAyNDksIDQwLCAxMjUsIDEyNiwgNzEsIDIzMiwgMjQyLCAxMjYsIDQ2LCAyNDksIDQwLCAxMjUsIDEyNiwgMjE3LCA0MiwgCi0gICAgMjUwLCAxOTQsIDIxOCwgMzMsIDQzLCAyMjEsIDI1NCwgNDMsIDIyMSwgMjQzLCA0MywgMjIxLCAyMzIsIDQzLCAyMjEsIAotICAgIDIyMCwgNDMsIDIyMSwgMjA5LCA0MywgMjIxLCAxOTgsIDQzLCAyMjEsIDE4NywgNDMsIDIyMSwgMTc2LCA0MywgMjIxLCAKLSAgICAxNjUsIDQzLCAyMjEsIDE1NywgNDMsIDIyMSwgMTU2LCA0MywgMjIxLCAxNTUsIDQzLCAyMjEsIDE1NCwgNDMsIDIyMSwgCi0gICAgMTUyLCA0MywgMjIxLCAxNTEsIDQzLCAyMjEsIDE1MCwgNDMsIDIyMSwgMTQ5LCA0MywgMjIxLCAxNDgsIDQzLCAyMjEsIAotICAgIDE0NywgNDMsIDIyMSwgMTQ2LCA0MywgMjIxLCAxNDUsIDQzLCAyMjEsIDE0NCwgNDMsIDIyMSwgMTQzLCA0MywgMjIxLCAKLSAgICAxNDEsIDQzLCAyMjEsIDE0MCwgNDMsIDIyMSwgMTM5LCA0MywgMjIxLCAxMzgsIDQzLCAyMjEsIDEzNywgNDMsIDIyMSwgCi0gICAgMTM2LCA0MywgMjIxLCAxMzUsIDQzLCAyMjEsIDEzNCwgNDMsIDIyMSwgMTMzLCA0MywgMjIxLCAxMzIsIDQzLCAyMjEsIAotICAgIDEzMCwgNDMsIDIyMSwgMTI5LCA0MywgMjIxLCAxMjgsIDQzLCAyMjEsIDEyNywgNDMsIDIyMSwgMTI2LCA0MywgMjIxLCAKLSAgICAxMjUsIDQzLCAyMjEsIDEyNCwgNDMsIDIyMSwgMTIzLCA0MywgMjIxLCAxMjIsIDQzLCAyMjEsIDEyMSwgNDMsIDIyMSwgCi0gICAgMTE5LCA0MywgMjIxLCAxMTgsIDQzLCAyMjEsIDExNywgNDMsIDIyMSwgMTE2LCA0MywgMjIxLCAxMTUsIDQzLCAyMjEsIAotICAgIDExNCwgNDMsIDIyMSwgMTEzLCA0MywgMjIxLCAxMTIsIDQzLCAyMjEsIDExMSwgNDMsIDIyMSwgMTEwLCA0MywgMjIxLCAKLSAgICAxMDgsIDQzLCAyMjEsIDEwNywgNDMsIDIyMSwgMTA2LCA0MywgMjIxLCAxMDUsIDQzLCAyMjEsIDEwNCwgNDMsIDIyMSwgCi0gICAgMTAzLCA0MywgMjIxLCAxMDIsIDQzLCAyMjEsIDEwMSwgNDMsIDIyMSwgMTAwLCA0MywgMjIxLCA5OSwgNDMsIDIyMSwgOTcsIAotICAgIDQzLCAyMjEsIDk2LCA0MywgMjIxLCA5NSwgNDMsIDIyMSwgOTQsIDQzLCAyMjEsIDkzLCA0MywgMjIxLCA5MiwgNDMsIDIyMSwgCi0gICAgOTEsIDQzLCAyMjEsIDkwLCA0MywgMjIxLCA4OSwgNDMsIDIyMSwgODgsIDQzLCAyMjEsIDg2LCA0MywgMjIxLCA4NSwgNDMsIAotICAgIDIyMSwgODQsIDQzLCAyMjEsIDgzLCA0MywgMjIxLCA4MiwgNDMsIDIyMSwgODEsIDQzLCAyMjEsIDgwLCA0MywgMjIxLCA3OSwgCi0gICAgNDMsIDIyMSwgNzgsIDQzLCAyMjEsIDc3LCA0MywgMjIyLCA3NCwgNDMsIDIyMiwgNzMsIDQzLCAyMjIsIDcyLCA0MywgMjIyLCAKLSAgICA3MSwgNDMsIDIyMiwgNzAsIDQzLCAyMjIsIDY5LCA0MywgMjIyLCA2OCwgNDMsIDIyMiwgNjcsIDQzLCAyMjIsIDY2LCA0MywgCi0gICAgMjIyLCA2NSwgNDMsIDIyMiwgNjMsIDQzLCAyMjIsIDYyLCA0MywgMjIyLCA2MSwgNDMsIDIyMiwgNjAsIDQzLCAyMjIsIDU5LCAKLSAgICA0MywgMjIyLCA1OCwgNDMsIDIyMiwgNTcsIDQzLCAyMjIsIDU2LCA0MywgMjIyLCA1NSwgNDMsIDIyMiwgNTQsIDQzLCAyMjIsIAotICAgIDUyLCA0MywgMjIyLCA1MSwgNDMsIDIyMiwgNTAsIDQzLCAyMjIsIDQ5LCA0MywgMjIyLCA0OCwgNDMsIDIyMiwgNDcsIDQzLCAKLSAgICAyMjIsIDQ2LCA0MywgMjIyLCA0NSwgNDMsIDIyMiwgNDQsIDQzLCAyMjIsIDQzLCA0MywgMjIyLCA0MSwgNDMsIDIyMiwgNDAsIAotICAgIDQzLCAyMjIsIDM5LCA0MywgMjIyLCAzOCwgNDMsIDIyMiwgMzcsIDQzLCAyMjIsIDM2LCA0MywgMjIyLCAzNSwgNDMsIDIyMiwgCi0gICAgMzQsIDQzLCAyMjIsIDMzLCA0MywgMjIyLCAzMiwgNDMsIDIyMiwgMzAsIDQzLCAyMjIsIDI5LCA0MywgMjIyLCAyOCwgNDMsIAotICAgIDIyMiwgMjcsIDQzLCAyMjIsIDI2LCA0MywgMjIyLCAyNSwgNDMsIDIyMiwgMjQsIDQzLCAyMjIsIDIzLCA0MywgMjIyLCAyMiwgCi0gICAgNDMsIDIyMiwgMjEsIDQzLCAyMjIsIDE5LCA0MywgMjIyLCAxOCwgNDMsIDIyMiwgMTcsIDQzLCAyMjIsIDE2LCA0MywgMjIyLCAKLSAgICAxNSwgNDMsIDIyMiwgMTQsIDQzLCAyMjIsIDEzLCA0MywgMjIyLCAxMiwgNDMsIDIyMiwgMTEsIDQzLCAyMjIsIDEwLCA0MywgCi0gICAgMjIyLCA4LCA0MywgMjIyLCA3LCA0MywgMjIyLCA2LCA0MywgMjIyLCA1LCA0MywgMjIyLCA0LCA0MywgMjIyLCAzLCA0MywgCi0gICAgMjIyLCAyLCA0MywgMjIyLCAxLCA0MywgMjIyLCAwLCA0MywgMjIxLCAyNTUsIDQzLCAyMjEsIDI1MywgNDMsIDIyMSwgMjUyLCAKLSAgICA0MywgMjIxLCAyNTEsIDQzLCAyMjEsIDI1MCwgNDMsIDIyMSwgMjQ5LCA0MywgMjIxLCAyNDgsIDQzLCAyMjEsIDI0NywgNDMsIAotICAgIDIyMSwgMjQ2LCA0MywgMjIxLCAyNDUsIDQzLCAyMjEsIDI0NCwgNDMsIDIyMSwgMjQyLCA0MywgMjIxLCAyNDEsIDQzLCAKLSAgICAyMjEsIDI0MCwgNDMsIDIyMSwgMjM5LCA0MywgMjIxLCAyMzgsIDQzLCAyMjEsIDIzNywgNDMsIDIyMSwgMjM2LCA0MywgCi0gICAgMjIxLCAyMzUsIDQzLCAyMjEsIDIzNCwgNDMsIDIyMSwgMjMzLCA0MywgMjIxLCAyMzEsIDQzLCAyMjEsIDIzMCwgNDMsIAotICAgIDIyMSwgMjI5LCA0MywgMjIxLCAyMjgsIDQzLCAyMjEsIDIyNywgNDMsIDIyMSwgMjI2LCA0MywgMjIxLCAyMjUsIDQzLCAKLSAgICAyMjEsIDIyNCwgNDMsIDIyMSwgMjIzLCA0MywgMjIxLCAyMjIsIDQzLCAyMjEsIDIxOSwgNDMsIDIyMSwgMjE4LCA0MywgCi0gICAgMjIxLCAyMTcsIDQzLCAyMjEsIDIxNiwgNDMsIDIyMSwgMjE1LCA0MywgMjIxLCAyMTQsIDQzLCAyMjEsIDIxMywgNDMsIAotICAgIDIyMSwgMjEyLCA0MywgMjIxLCAyMTEsIDQzLCAyMjEsIDIxMCwgNDMsIDIyMSwgMjA4LCA0MywgMjIxLCAyMDcsIDQzLCAKLSAgICAyMjEsIDIwNiwgNDMsIDIyMSwgMjA1LCA0MywgMjIxLCAyMDQsIDQzLCAyMjEsIDIwMywgNDMsIDIyMSwgMjAyLCA0MywgCi0gICAgMjIxLCAyMDEsIDQzLCAyMjEsIDIwMCwgNDMsIDIyMSwgMTk5LCA0MywgMjIxLCAxOTcsIDQzLCAyMjEsIDE5NiwgNDMsIAotICAgIDIyMSwgMTk1LCA0MywgMjIxLCAxOTQsIDQzLCAyMjEsIDE5MywgNDMsIDIyMSwgMTkyLCA0MywgMjIxLCAxOTEsIDQzLCAKLSAgICAyMjEsIDE5MCwgNDMsIDIyMSwgMTg5LCA0MywgMjIxLCAxODgsIDQzLCAyMjEsIDE4NiwgNDMsIDIyMSwgMTg1LCA0MywgCi0gICAgMjIxLCAxODQsIDQzLCAyMjEsIDE4MywgNDMsIDIyMSwgMTgyLCA0MywgMjIxLCAxODEsIDQzLCAyMjEsIDE4MCwgNDMsIAotICAgIDIyMSwgMTc5LCA0MywgMjIxLCAxNzgsIDQzLCAyMjEsIDE3NywgNDMsIDIyMSwgMTc1LCA0MywgMjIxLCAxNzQsIDQzLCAKLSAgICAyMjEsIDE3MywgNDMsIDIyMSwgMTcyLCA0MywgMjIxLCAxNzEsIDQzLCAyMjEsIDE3MCwgNDMsIDIyMSwgMTY5LCA0MywgCi0gICAgMjIxLCAxNjgsIDQzLCAyMjEsIDE2NywgNDMsIDIyMSwgMTY2LCA0MywgMjIxLCAxNjQsIDQzLCAyMjEsIDE2MywgNDMsIAotICAgIDIyMSwgMTYyLCA0MywgMjIxLCAxNjEsIDQzLCAyMjEsIDE2MCwgNDMsIDIyMSwgMTU5LCA0MywgMjIxLCAxNTgsIAorICAgIDEwLCAxMSwgMjI3LCAxNjAsIDEwLCAxMSwgMjI3LCAxNTksIDEwLCAxMSwgMjI3LCAxMCwgMTAsIDExLCAyMjcsIDksIDEwLCAKKyAgICAxMSwgMjI3LCA4LCAxMCwgMTEsIDIyNywgNywgMTAsIDExLCAyMjcsIDYsIDEwLCAxMSwgMjI3LCA1LCAxMCwgMTEsIDIyNywgCisgICAgNCwgMTAsIDExLCAyMjcsIDMsIDEwLCAxMSwgMjI3LCAyLCAxMCwgMTEsIDIyNywgMSwgMTAsIDExLCAyMjcsIDAsIDEwLCAKKyAgICAxMSwgMjI2LCAyNTUsIDEwLCAxMSwgMjI2LCAyNTQsIDEwLCAxMSwgMjI1LCAxOCwgMTAsIDExLCAyMjUsIDE3LCAxMCwgMTEsIAorICAgIDIyNSwgMTYsIDEwLCAxMSwgMjI1LCAxNSwgMTAsIDExLCAyMjUsIDE0LCAxMCwgMTEsIDIyNSwgMTMsIDEwLCAxMSwgMjI1LCAKKyAgICAxMiwgMTAsIDExLCAyMjQsIDE0NiwgMTAsIDExLCAyMjQsIDE0NSwgMTAsIDExLCAyMjQsIDE0NCwgMTAsIDExLCAyMjQsIAorICAgIDE0MywgMTAsIDExLCAyMjQsIDE0MiwgMTAsIDExLCAyMjQsIDE0MSwgMTAsIDExLCAyMjQsIDE0MCwgMTAsIDExLCAyMjQsIAorICAgIDEzOSwgMTAsIDExLCAyMjQsIDEzOCwgMTAsIDExLCAyMjQsIDEzNywgMTAsIDExLCAyMjQsIDEzNiwgMTAsIDExLCAyMjQsIAorICAgIDEzNSwgMTAsIDExLCAyMjQsIDEzNCwgMTAsIDExLCAyMjQsIDEzMywgMTAsIDExLCAyMjQsIDEzMiwgMTAsIDExLCAyMjQsIAorICAgIDEzMSwgMTAsIDExLCAyMjQsIDEzMCwgMTAsIDExLCAyMjQsIDEyOSwgMTAsIDExLCAyMjQsIDEyOCwgMTAsIDExLCAyMjQsIAorICAgIDEyNywgMTAsIDExLCAyMjQsIDEyNiwgMTAsIDExLCAyMjQsIDEyNSwgMTAsIDExLCAyMjQsIDEyNCwgMTAsIDExLCAyMjQsIAorICAgIDEyMywgMTAsIDExLCAyMjQsIDEyMiwgMTAsIDExLCAyMjQsIDEyMSwgMTAsIDExLCAyMjQsIDEyMCwgMTAsIDExLCAyMjQsIAorICAgIDExOSwgMTAsIDExLCAyMjQsIDExOCwgMTAsIDExLCAyMjQsIDExNywgMTAsIDExLCAyMjQsIDExNiwgMTAsIDExLCAyMjQsIAorICAgIDExNSwgMTAsIDExLCAyMjQsIDExNCwgMTAsIDExLCAyMjQsIDExMywgMTAsIDExLCAyMjMsIDI2LCAxMCwgMTEsIDIyMywgCisgICAgMjUsIDEwLCAxMSwgMjIzLCAyNCwgMTAsIDExLCAyMjMsIDIzLCAxMCwgMTEsIDIyMywgMjIsIDEwLCAxMSwgMjIzLCAyMSwgCisgICAgMTAsIDExLCAyMjMsIDIwLCAxMCwgMTEsIDIyMywgMTksIDEwLCAxMSwgMjIzLCAxOCwgMTAsIDExLCAyMjMsIDE3LCAxMCwgCisgICAgMTEsIDIyMywgMTYsIDEwLCAxMSwgMjIzLCAxNSwgMTAsIDExLCAyMjMsIDE0LCAxMCwgMTEsIDIyMywgMTMsIDEwLCAxMSwgCisgICAgMjIzLCAxMiwgMTAsIDExLCAyMjMsIDExLCAxMCwgMTEsIDIyMywgMTAsIDEwLCAxMSwgMjIzLCA5LCAxMCwgMTEsIDIyMywgCisgICAgOCwgMTAsIDExLCAyMjMsIDcsIDEwLCAxMSwgMjIzLCA2LCAxMCwgMTEsIDIyMywgNSwgMTAsIDExLCAyMjMsIDQsIDEwLCAKKyAgICAxMSwgMjIzLCAzLCAxMCwgMTEsIDIyMywgMiwgMTAsIDExLCAyMjMsIDEsIDEwLCAxMSwgMjIzLCAwLCAxMCwgMTEsIDIyMiwgCisgICAgMjU1LCAxMCwgMTEsIDIyMiwgMjU0LCAxMCwgMTEsIDIyMiwgMjUzLCAxMCwgMTEsIDIyMiwgMjUyLCAxMCwgMTEsIDIyMiwgCisgICAgMjUxLCAxMCwgMTEsIDIyMiwgMjUwLCAxMCwgMTEsIDIyMiwgMjQ5LCAxMCwgMTEsIDIyMiwgMjQ4LCAxMCwgMTEsIDIyMiwgCisgICAgMjQ3LCAxMCwgMTEsIDIyMiwgMjQ2LCAxMCwgMTEsIDIyMiwgMjQ1LCAxMCwgMTEsIDIyMiwgMjQ0LCAxMCwgMTEsIDIyMiwgCisgICAgMjQzLCAxMCwgMTEsIDIyMiwgMjQyLCAxMCwgMTEsIDIyMiwgMjQxLCAxMCwgMTEsIDIyMiwgMjQwLCAxMCwgMTEsIDIyMiwgCisgICAgMjM5LCAxMCwgMTEsIDIyMiwgMjM4LCAxMCwgMTEsIDIyMiwgMjM3LCAxMCwgMTEsIDIyMiwgMjM2LCAxMCwgMTEsIDIyMiwgCisgICAgMjM1LCAxMCwgMTEsIDIyMiwgMjM0LCAxMCwgMTEsIDIyMiwgMjMzLCAxMCwgMTEsIDIyMiwgMjMyLCAxMCwgMTEsIDIyMiwgCisgICAgMjMxLCAxMCwgMTEsIDIyMiwgMjMwLCAxMCwgMTEsIDIyMiwgMjI5LCAxMCwgMTEsIDIxOCwgMTExLCAxMCwgMTEsIDIxOCwgCisgICAgMTEwLCAxMCwgMTEsIDIxOCwgMTA5LCAxMCwgMTEsIDIxOCwgMTA4LCAxMCwgMTEsIDIxOCwgMTA3LCAxMCwgMTEsIDIxOCwgCisgICAgMTA2LCAxMCwgMTEsIDIxOCwgMTA1LCAxMCwgMTEsIDIxOCwgMTA0LCAxMCwgMTEsIDIxOCwgMTAzLCAxMCwgMTEsIDIxOCwgCisgICAgMTAyLCAxMCwgMTEsIDIxOCwgMTAxLCAxMCwgMTEsIDIxOCwgMTAwLCAxMCwgMTEsIDIxOCwgOTksIDEwLCAxMSwgMjE4LCAKKyAgICA5OCwgMTAsIDExLCAyMTgsIDk3LCAxMCwgMTEsIDIxOCwgOTYsIDEwLCAxMSwgMjE4LCA5NSwgMTAsIDExLCAyMTgsIDk0LCAKKyAgICAxMCwgMTEsIDIxOCwgOTMsIDEwLCAxMSwgMjE4LCA5MiwgMTAsIDExLCAyMTgsIDkxLCAxMCwgMTEsIDIxOCwgOTAsIDEwLCAKKyAgICAxMSwgMjE4LCA4OSwgMTAsIDExLCAyMTgsIDg4LCAxMCwgMTEsIDIxOCwgODcsIDEwLCAxMSwgMjE4LCA4NiwgMTAsIDExLCAKKyAgICAyMTgsIDg1LCAxMCwgMTEsIDIxOCwgODQsIDEwLCAxMSwgMjE4LCA4MywgMTAsIDExLCAyMTgsIDgyLCAxMCwgMTEsIDIxOCwgCisgICAgODEsIDEwLCAxMSwgMjE4LCA4MCwgMTAsIDExLCAyMTgsIDc5LCAxMCwgMTEsIDIxOCwgNzgsIDEwLCAxMSwgMjE4LCA3NywgCisgICAgMTAsIDExLCAyMTgsIDc2LCAxMCwgMTEsIDIxOCwgNzUsIDEwLCAxMSwgMjE4LCA3NCwgMTAsIDExLCAyMTgsIDczLCAxMCwgCisgICAgMTEsIDIxOCwgNzIsIDEwLCAxMSwgMjE4LCA3MSwgMTAsIDExLCAyMTgsIDcwLCAxMCwgMTEsIDIxOCwgNjksIDEwLCAxMSwgCisgICAgMjE4LCA2OCwgMTAsIDExLCAyMTUsIDI1MSwgMTAsIDExLCAyMTUsIDI1MCwgMTAsIDExLCAyMTUsIDI0OSwgMTAsIDExLCAKKyAgICAyMTUsIDI0OCwgMTAsIDExLCAyMTUsIDI0NywgMTAsIDExLCAyMTUsIDI0NiwgMTAsIDExLCAyMTUsIDI0NSwgMTAsIDExLCAKKyAgICAyMTUsIDI0NCwgMTAsIDExLCAyMTUsIDI0MywgMTAsIDExLCAyMTUsIDI0MiwgMTAsIDExLCAyMTUsIDI0MSwgMTAsIDExLCAKKyAgICAyMTUsIDI0MCwgMTAsIDExLCAyMTUsIDIzOSwgMTAsIDExLCAyMTUsIDIzOCwgMTAsIDExLCAyMTUsIDIzNywgMTAsIDExLCAKKyAgICAyMTUsIDIzNiwgMTAsIDExLCAyMTUsIDIzNSwgMTAsIDExLCAyMTUsIDIzNCwgMTAsIDExLCAyMTUsIDIzMywgMTAsIDExLCAKKyAgICAyMTUsIDIzMiwgMTAsIDExLCAyMTUsIDIzMSwgMTAsIDExLCAyMTUsIDIzMCwgMTAsIDExLCAyMTUsIDIyOSwgMTAsIDExLCAKKyAgICAyMTUsIDIyOCwgMTAsIDExLCAyMTUsIDIyNywgMTAsIDExLCAyMTUsIDIyNiwgMTAsIDExLCAyMTUsIDIyNSwgMTAsIDExLCAKKyAgICAyMTUsIDIyNCwgMTAsIDExLCAyMTUsIDIyMywgMTAsIDExLCAyMTUsIDIyMiwgMTAsIDExLCAyMTUsIDIyMSwgMTAsIDExLCAKKyAgICAyMTUsIDIyMCwgMTAsIDExLCAyMTUsIDIxOSwgMTAsIDExLCAyMTUsIDIxOCwgMTAsIDExLCAyMTUsIDIxNywgMTAsIDExLCAKKyAgICAyMTUsIDIxNiwgMTAsIDExLCAyMTUsIDIxNSwgMTAsIDExLCAyMTUsIDIxNCwgMTAsIDExLCAyMTUsIDIxMywgMTAsIDExLCAKKyAgICAyMTUsIDIxMiwgMTAsIDExLCAyMTUsIDIxMSwgMTAsIDExLCAyMTUsIDIxMCwgMTAsIDExLCAyMTUsIDIwOSwgMTAsIDExLCAKKyAgICAyMTUsIDIwOCwgMTAsIDExLCAyMTUsIDIwNywgMTAsIDExLCAyMTUsIDIwNiwgMTAsIDExLCAyMTUsIDIwNSwgMTAsIDExLCAKKyAgICAyMTUsIDg1LCAxMCwgMTEsIDIxNSwgODQsIDEwLCAxMSwgMjE1LCA4MywgMTAsIDExLCAyMTUsIDgyLCAxMCwgMTEsIDIxNSwgCisgICAgODEsIDEwLCAxMSwgMjE1LCA4MCwgMTAsIDExLCAyMTUsIDc5LCAxMCwgMTEsIDIxNSwgNzgsIDEwLCAxMSwgMjE1LCA3NywgCisgICAgMTAsIDExLCAyMTUsIDc2LCAxMCwgMTEsIDIxNSwgNzUsIDEwLCAxMSwgMjE1LCA3NCwgMTAsIDExLCAyMTUsIDczLCAxMCwgCisgICAgMTEsIDIxNSwgNzIsIDEwLCAxMSwgMjE1LCA3MSwgMTAsIDExLCAyMTUsIDcwLCAxMCwgMTEsIDIxNSwgNjksIDEwLCAxMSwgCisgICAgMjE1LCA2OCwgMTAsIDExLCAyMTUsIDY3LCAxMCwgMTEsIDIxNSwgNjYsIDEwLCAxMSwgMjE1LCA2NSwgMTAsIDExLCAyMTUsIAorICAgIDY0LCAxMCwgMTEsIDIxNSwgNjMsIDEwLCAxMSwgMjE1LCA2MiwgMTAsIDExLCAyMTUsIDYxLCAxMCwgMTEsIDIxNSwgNjAsIAorICAgIDEwLCAxMSwgMjE1LCA1OSwgMTAsIDExLCAyMTUsIDU4LCAxMCwgMTEsIDIxNSwgNTcsIDEwLCAxMSwgMjE1LCA1NiwgMTAsIAorICAgIDExLCAyMTUsIDU1LCAxMCwgMTEsIDIxNSwgNTQsIDEwLCAxMSwgMjE1LCA1MywgMTAsIDExLCAyMTUsIDUyLCAxMCwgMTEsIAorICAgIDIxNSwgNTEsIDEwLCAxMSwgMjE1LCA1MCwgMTAsIDExLCAyMTUsIDQ5LCAxMCwgMTEsIDIxNSwgNDgsIDEwLCAxMSwgMjE1LCAKKyAgICA0NywgMTAsIDExLCAyMTUsIDQ2LCAxMCwgMTEsIDIxNSwgNDUsIDEwLCAxMSwgMjE1LCA0NCwgMTAsIDExLCAyMTUsIDQzLCAKKyAgICAxMCwgMTEsIDIxNSwgNDIsIDEwLCAxMSwgMjE1LCA0MSwgMTAsIDExLCAyMTUsIDQwLCAxMCwgMTEsIDIxNSwgMzksIDEwLCAKKyAgICAxMSwgMjE1LCAzOCwgMTAsIDExLCAyMTUsIDM3LCAxMCwgMTEsIDIxNSwgMzYsIDEwLCAxMSwgMjE1LCAzNSwgMTAsIDExLCAKKyAgICAyMTUsIDM0LCAxMCwgMTEsIDIxNSwgMzMsIDEwLCAxMSwgMjE1LCAzMiwgMTAsIDExLCAyMTUsIDMxLCAxMCwgMTEsIDIxNSwgCisgICAgMzAsIDEwLCAxMSwgMjE1LCAyOSwgMTAsIDExLCAyMTUsIDI4LCAxMCwgMTEsIDIxNSwgMjcsIDEwLCAxMSwgMjE1LCAyNiwgCisgICAgMTAsIDExLCAyMTUsIDI1LCAxMCwgMTEsIDIxNSwgMjQsIDEwLCAxMSwgMjE1LCAyMywgMTAsIDExLCAyMTUsIDIyLCAxMCwgCisgICAgMTEsIDIxNSwgMjEsIDEwLCAxMSwgMjE1LCAyMCwgMTAsIDExLCAyMTUsIDE5LCAxMCwgMTEsIDIxNSwgMTgsIDEwLCAxMSwgCisgICAgMjE1LCAxNywgMTAsIDExLCAyMTUsIDE2LCAxMCwgMTEsIDIxNSwgMTUsIDEwLCAxMSwgMjE1LCAxNCwgMTAsIDExLCAyMTUsIAorICAgIDEzLCAxMCwgMTEsIDIxNSwgMTIsIDEwLCAxMSwgMjE1LCAxMSwgMTAsIDExLCAyMTUsIDEwLCAxMCwgMTEsIDIxNSwgOSwgCisgICAgMTAsIDExLCAyMTQsIDg0LCAxMCwgMTEsIDIxNCwgODMsIDEwLCAxMSwgMjE0LCA4MiwgMTAsIDExLCAyMTQsIDgxLCAxMCwgCisgICAgMTEsIDIxNCwgODAsIDEwLCAxMSwgMjE0LCA3OSwgMTAsIDExLCAyMTQsIDc4LCAxMCwgMTEsIDIxNCwgNzcsIDEwLCAxMSwgCisgICAgMjE0LCA3NiwgMTAsIDExLCAyMTQsIDc1LCAxMCwgMTEsIDIxNCwgNzQsIDEwLCAxMSwgMjE0LCA3MywgMTAsIDExLCAyMTQsIAorICAgIDcyLCAxMCwgMTEsIDIxNCwgNzEsIDEwLCAxMSwgMjE0LCA3MCwgMTAsIDExLCAyMTQsIDY5LCAxMCwgMTEsIDIxNCwgNjgsIAorICAgIDEwLCAxMSwgMjE0LCA2NywgMTAsIDExLCAyMTQsIDY2LCAxMCwgMTEsIDIxNCwgNjUsIDEwLCAxMSwgMjE0LCA2NCwgMTAsIAorICAgIDExLCAyMTQsIDYzLCAxMCwgMTEsIDIxNCwgNjIsIDEwLCAxMSwgMjE0LCA2MSwgMTAsIDExLCAyMTQsIDYwLCAxMCwgMTEsIAorICAgIDIxNCwgNTksIDEwLCAxMSwgMjE0LCA1OCwgMTAsIDExLCAyMTQsIDU3LCAxMCwgMTEsIDIxNCwgNTYsIDEwLCAxMSwgMjE0LCAKKyAgICA1NSwgMTAsIDExLCAyMTQsIDU0LCAxMCwgMTEsIDIxNCwgNTMsIDEwLCAxMSwgMjEzLCAxNjgsIDEwLCAxMSwgMjEzLCAxNjcsIAorICAgIDEwLCAxMSwgMjEzLCAxNjYsIDEwLCAxMSwgMjEzLCAxNjUsIDEwLCAxMSwgMjEzLCAxNjQsIDEwLCAxMSwgMjEzLCAxNjMsIAorICAgIDEwLCAxMSwgMjEzLCAxNjIsIDEwLCAxMSwgMjEzLCAxNjEsIDEwLCAxMSwgMjEzLCAxNjAsIDEwLCAxMSwgMjEzLCAxNTksIAorICAgIDEwLCAxMSwgMjEzLCAxNTgsIDEwLCAxMSwgMjEzLCAxNTcsIDEwLCAxMSwgMjEzLCAxMDYsIDEwLCAxMSwgMjEzLCAxMDUsIAorICAgIDEwLCAxMSwgMjEzLCAxMDQsIDEwLCAxMSwgMjEzLCAxMDMsIDEwLCAxMSwgMjEzLCAxMDIsIDEwLCAxMSwgMjEzLCAxMDEsIAorICAgIDEwLCAxMSwgMjEzLCAxMDAsIDEwLCAxMSwgMjEzLCA5OSwgMTAsIDExLCAyMTMsIDk4LCAxMCwgMTEsIDIxMiwgMTUxLCAxMCwgCisgICAgMTEsIDIxMiwgMTUwLCAxMCwgMTEsIDIxMiwgMTQ5LCAxMCwgMTEsIDIxMiwgMTQ4LCAxMCwgMTEsIDIxMiwgMTQ3LCAxMCwgCisgICAgMTEsIDIxMiwgMTQ2LCAxMCwgMTEsIDIxMiwgMTQ1LCAxMCwgMTEsIDIxMiwgMTQ0LCAxMCwgMTEsIDIxMiwgMTQzLCAxMCwgCisgICAgMTEsIDIxMiwgMTQyLCAxMCwgMTEsIDIxMiwgMTQxLCAxMCwgMTEsIDIxMiwgMTQwLCAxMCwgMTEsIDIxMiwgMTM5LCAxMCwgCisgICAgMTEsIDIxMiwgMTM4LCAxMCwgMTEsIDIxMiwgMTM3LCAxMCwgMTEsIDIxMiwgMTM2LCAxMCwgMTEsIDIxMiwgMTM1LCAxMCwgCisgICAgMTEsIDIxMiwgMTM0LCAxMCwgMTEsIDIxMiwgMTMzLCAxMCwgMTEsIDIxMiwgMTMyLCAxMCwgMTEsIDIxMiwgMTMxLCAxMCwgCisgICAgMTEsIDIxMiwgMTMwLCAxMCwgMTEsIDIxMiwgMTI5LCAxMCwgMTEsIDIxMiwgMTI4LCAxMCwgMTEsIDIxMiwgMTI3LCAxMCwgCisgICAgMTEsIDIxMiwgMTI2LCAxMCwgMTEsIDIxMiwgMTI1LCAxMCwgMTEsIDIxMiwgMTI0LCAxMCwgMTEsIDIxMiwgMTIzLCAxMCwgCisgICAgMTEsIDIxMiwgMTIyLCAxMCwgMTEsIDIxMiwgMTIxLCAxMCwgMTEsIDIxMiwgMTIwLCAxMCwgMTEsIDIxMiwgMTE5LCAxMCwgCisgICAgMTEsIDIxMiwgMTE4LCAxMCwgMTEsIDIxMiwgMTE3LCAxMCwgMTEsIDIxMiwgMTE2LCAxMCwgMTEsIDIxMiwgMTE1LCAxMCwgCisgICAgMTEsIDIxMiwgMTE0LCAxMCwgMTEsIDIxMiwgMTEzLCAxMCwgMTEsIDIxMiwgMTEyLCAxMCwgMTEsIDIxMiwgMTExLCAxMCwgCisgICAgMTEsIDI1NSwgMTAzLCAxMCwgMTEsIDI1NSwgMTAyLCAxMCwgMTEsIDI1NSwgMTAxLCAxMCwgMTEsIDI1NSwgMTAwLCAxMCwgCisgICAgMTEsIDI1NSwgOTksIDEwLCAxMSwgMjU1LCA5OCwgMTAsIDExLCAyNTUsIDk3LCAxMCwgMTEsIDI1NSwgOTYsIDEwLCAxMSwgCisgICAgMjU1LCA5NSwgMTAsIDExLCAyNTUsIDk0LCAxMCwgMTEsIDI1NSwgOTMsIDEwLCAxMSwgMjU1LCA5MiwgMTAsIDExLCAyNTUsIAorICAgIDkxLCAxMCwgMTEsIDI1NSwgOTAsIDEwLCAxMSwgMjU1LCA4OSwgMTAsIDExLCAyNTUsIDg4LCAxMCwgMTEsIDI1NSwgODcsIAorICAgIDEwLCAxMSwgMjU1LCA4NiwgMTAsIDExLCAyNTUsIDg1LCAxMCwgMTEsIDI1NSwgODQsIDEwLCAxMSwgMjU1LCA4MywgMTAsIAorICAgIDExLCAyNTUsIDgyLCAxMCwgMTEsIDI1NSwgODEsIDEwLCAxMSwgMjU1LCA4MCwgMTAsIDExLCAyNTUsIDc5LCAxMCwgMTEsIAorICAgIDI1NSwgNzgsIDEwLCAxMSwgMjU1LCA3NywgMTAsIDExLCAyNTUsIDc2LCAxMCwgMTEsIDI1NSwgNzUsIDEwLCAxMSwgMjU1LCAKKyAgICA3NCwgMTAsIDExLCAyNTUsIDczLCAxMCwgMTEsIDI1NSwgNzIsIDEwLCAxMSwgMjU1LCA3MSwgMTAsIDExLCAyNTUsIDcwLCAKKyAgICAyMCwgMSwgMTU5LCAyMjksIDE2MywgMjMxLCAxNTMsIDIwLCAxLCAxNTksIDI0MywgMTY2LCAyNDQsIDEyNSwgMjAsIDEsIAorICAgIDE1OSwgMjI1LCAxNjcsIDIzMSwgMTU0LCAyMjUsIDIyNSwgMjAsIDEsIDE1OSwgMjI1LCAxNjcsIDIzMSwgMTU0LCAyMjUsIAorICAgIDIyNiwgMjAsIDEsIDE1OSwgMjMwLCAxMTMsIDIzMSwgMTUzLCAyMCwgMSwgMTU5LCAyMjAsIDE2NiwgMjAsIDEsIDE1OSwgCisgICAgMjE3LCAzMywgMjMxLCAxNTMsIDIwLCAxLCAxNTksIDIyOCwgMTksIDIzMSwgMTUzLCAyMCwgMSwgMTU5LCAyMjAsIDIyMCwgCisgICAgMjI2LCAyNTIsIDIyOSwgNjQsIDIwLCAxLCAxNTksIDIyNSwgMTY3LCAyMjYsIDI1MiwgMjI5LCA2NSwgMjI1LCAyMjUsIDIwLCAKKyAgICAxLCAxNTksIDIyNSwgMTY3LCAyMjYsIDI1MiwgMjI5LCA2NSwgMjI1LCAyMjYsIDIwLCAxLCAxNTksIDIzMiwgOTYsIDIwLCAKKyAgICAxLCAxNTksIDIxNiwgOTEsIDIzMiwgOTcsIDIwLCAxLCAxNTksIDIyOSwgMjIxLCAyMCwgMSwgMTU5LCAyMzIsIDkzLCAyMCwgCisgICAgMSwgMTU5LCAyMzIsIDU0LCAyMCwgMSwgMTU5LCAyMzAsIDE4OCwgMjAsIDEsIDE1OSwgMjIxLCA2OCwgMjAsIDEsIDE1OSwgCisgICAgMjI4LCAxMzksIDIwLCAxLCAxNTksIDIzNSwgMTEsIDIwLCAxLCAxNTksIDIyOSwgMzMsIDIwLCAxLCAxNTksIDIxOCwgMjE5LCAKKyAgICAyMCwgMSwgMTU5LCAyMjksIDE2MiwgMjAsIDEsIDE1OSwgMjMzLCAyMDksIDIwLCAxLCAxNTksIDIzMywgMTM0LCAyMzQsIAorICAgIDUzLCAyMCwgMSwgMTU5LCAyMjgsIDE0NiwgMjMxLCAxNjEsIDIwLCAxLCAxNTksIDIzMiwgMTAwLCAyMCwgMSwgMTU5LCAKKyAgICAyMjYsIDE1NiwgMjAsIDEsIDE1OSwgMjQzLCA3MSwgMjAsIDEsIDE1OSwgMjI2LCAyMTQsIDIwLCAxLCAxNTksIDIzMSwgMzUsIAorICAgIDIyOSwgMTk1LCAyMCwgMSwgMTU5LCAyMjgsIDAsIDIzMSwgMTY0LCAyMCwgMSwgMTU5LCAxMDMsIDIxMiwgMTgwLCAyMzAsIAorICAgIDEwNywgMjAsIDEsIDE1OSwgMjQzLCA3MiwgMjAsIDEsIDE1OSwgMjI4LCAxNDYsIDIyOCwgMTQ3LCAyMCwgMSwgMTU5LCAKKyAgICAyMjAsIDc1LCAyMCwgMSwgMTU5LCAyMzEsIDE0NiwgMjAsIDEsIDE1OSwgMjMxLCAxNjcsIDIwLCAxLCAxNTksIDIzMSwgMTQsIAorICAgIDIwLCAxLCAxNTksIDIzNSwgMTExLCAyMCwgMSwgMTU5LCAyMjYsIDI1MiwgMjMzLCAxNjksIDIwLCAxLCAxNTksIDIzMCwgCisgICAgNDAsIDIzMywgMTY5LCAyMCwgMSwgMTU5LCAyMjYsIDcwLCAyMCwgMSwgMTU5LCAyMzIsIDk0LCAyMCwgMSwgMTU5LCAyMjksIAorICAgIDEwMiwgMjAsIDEsIDE1OSwgMjI1LCA1NiwgMjAsIDEsIDE1OSwgMjE2LCA4OCwgMjAsIDEsIDE1OSwgMjMyLCAyMjYsIDIwLCAKKyAgICAxLCAxNTksIDIxOSwgMjQ2LCAyMCwgMSwgMTU5LCAyMTcsIDE4MiwgMjAsIDEsIDE1OSwgMjMyLCA5MSwgMjAsIDEsIDE1OSwgCisgICAgMjM1LCAxOCwgMjAsIDEsIDE1OSwgMjMwLCAzNiwgMjAsIDEsIDE1OSwgMjM0LCA2NSwgMjAsIDEsIDE1OSwgMjMxLCAxNSwgCisgICAgMjAsIDEsIDE1OSwgMjIwLCAxNjMsIDIwLCAxLCAxNTksIDIzMywgOSwgMjAsIDEsIDE1OSwgMjQ0LCAxODIsIDIwLCAxLCAKKyAgICAxNTksIDIyMywgMTM1LCAyMCwgMSwgMTU5LCAyMzQsIDEwNSwgMjAsIDEsIDE1OSwgMjE5LCAyNDIsIDIwLCAxLCAxNTksIAorICAgIDIzMiwgNTEsIDIyNiwgMTEsIDIwLCAxLCAxNTksIDIyMCwgMjEzLCAyMCwgMSwgMTU5LCAyMjgsIDE0NSwgMjAsIDEsIDE1OSwgCisgICAgMjIwLCAxOTgsIDIyOCwgMTU2LCAyMTIsIDE4OCwgMjAsIDEsIDE1OSwgMjI4LCAzOSwgMjMxLCAzMiwgMjAsIDEsIDE1OSwgCisgICAgMjI2LCAyNDcsIDIwLCAxLCAxNTksIDIyOSwgMzQsIDIwLCAxLCAxNTksIDIxNSwgMTQ3LCAyMCwgMSwgMTU5LCAyMjksIAorICAgIDE5OCwgMjAsIDEsIDE1OSwgMjMyLCA5MCwgMjAsIDEsIDE1OSwgMjI5LCA3NiwgMjAsIDEsIDE1OSwgMjMxLCAyNTIsIDIwLCAKKyAgICAxLCAxNTksIDIyOCwgNTEsIDIwLCAxLCAxNTksIDIxNywgMTg2LCAyMCwgMSwgMTU5LCAyMTksIDI0MCwgMjAsIDEsIDE1OSwgCisgICAgMjI2LCAyNDgsIDIwLCAxLCAxNTksIDIyOCwgMTYwLCAyMCwgMSwgMTU5LCAyMzIsIDk4LCAyMCwgMSwgMTU5LCAyMjgsIDQ5LCAKKyAgICAyMCwgMSwgMTU5LCAyMzUsIDc4LCAyMCwgMSwgMTU5LCAyMjgsIDE2MywgMjAsIDEsIDE1OSwgMjE0LCAyMzIsIDIwLCAxLCAKKyAgICAxNTksIDIzMiwgMjMwLCAyMCwgMSwgMTU5LCAyMjksIDI0NywgMjAsIDEsIDE1OSwgMjMwLCA4NCwgMjAsIDEsIDE1OSwgCisgICAgMjMxLCAyNTEsIDIwLCAxLCAyMjYsIDUwLCAyMjgsIDE1OCwgMjAsIDEsIDIyNiwgNTAsIDIxNiwgOTEsIDIzMiwgOTUsIDIwLCAKKyAgICAxLCAyMjYsIDUwLCAyMjAsIDEzMCwgMjAsIDEsIDIyNiwgNTAsIDIyMSwgNzIsIDIxNiwgOTAsIDIwLCAxLCAyMjYsIDUwLCAKKyAgICAyMzMsIDExLCAyMjgsIDE0MiwgMjAsIDEsIDIyNiwgNTAsIDIzMiwgMiwgMjMyLCA5OSwgMjAsIDEsIDIyNiwgNTAsIDIzNCwgCisgICAgMjA3LCAyMCwgMSwgMjI2LCA1MCwgMjEzLCA3LCAyMCwgMSwgMjI2LCA1MCwgMjMxLCAyNTMsIDIwLCAxLCAyMjYsIDUwLCAKKyAgICAyMzUsIDk5LCAyMCwgMSwgMjI2LCA1MCwgMjI2LCAxMTksIDIwLCAxLCAyMjYsIDUwLCAyMTMsIDgwLCAyMzMsIDE2OSwgMjAsIAorICAgIDEsIDIyNiwgNTAsIDIzMywgMjI1LCAyMjgsIDE1NiwgMjI4LCA2MCwgMjAsIDEsIDIyNiwgNTAsIDIyOCwgMTQwLCAyMjAsIAorICAgIDIzOSwgMjAsIDEsIDIyNiwgNTAsIDIzMCwgNywgMjI5LCA3OSwgMjAsIDEsIDIyNiwgNTAsIDI0MywgNjksIDIwLCAxLCAKKyAgICAyMjYsIDUwLCAyMjUsIDIxNywgMjAsIDEsIDIyNiwgNTAsIDIxNiwgOTEsIDIyOCwgMTU0LCAyMCwgMSwgMjI2LCA1MCwgCisgICAgMjIwLCAyNDQsIDIyOSwgNzQsIDIwLCAxLCAyMjYsIDUwLCAyMjAsIDI0MCwgMjAsIDEsIDIyNiwgNTAsIDIzMSwgMTU0LCAKKyAgICAyMTcsIDE4NSwgMjAsIDEsIDIyNiwgNTAsIDIzMSwgMjQwLCAyMzEsIDI1NCwgMjAsIDEsIDIyNiwgNTAsIDIyOCwgNTAsIAorICAgIDIyOCwgMTQyLCAyMCwgMSwgMjI2LCA1MCwgMjM1LCA3LCAyMCwgMSwgMjI2LCA1MCwgMjQzLCA3MCwgMjAsIDEsIDIyNiwgCisgICAgNTAsIDIzNSwgMywgMjAsIDEsIDIyNiwgNTAsIDIzMywgMjQ5LCAyMCwgMSwgMjI2LCA1MCwgMjI2LCAxNTgsIDIwLCAxLCAKKyAgICAyMjYsIDUwLCAyMTQsIDE2NCwgMjAsIDEsIDIyNiwgNTAsIDIyOSwgMTY0LCAyMzAsIDE4NiwgMjAsIDEsIDIyNiwgNTAsIAorICAgIDIyOSwgMTk3LCAyMzEsIDIzNiwgMjAsIDEsIDIyNiwgNTAsIDIxMywgMTg0LCAyMCwgMSwgMjI2LCA1MCwgMjIyLCAyMDYsIAorICAgIDIwLCAxLCAyMjYsIDUwLCAyMTgsIDU5LCAyMCwgMSwgMjI2LCA1MCwgMjMxLCAxNjYsIDIwLCAxLCAyMjYsIDUwLCAyMjksIAorICAgIDE4MiwgMjAsIDEsIDIyNiwgNTAsIDIyOSwgMTgzLCAyMzMsIDIwNiwgMjAsIDEsIDIyNiwgNTAsIDIzMSwgMTU2LCAyMCwgMSwgCisgICAgMjI2LCA1MCwgMjE5LCAxMSwgMjAsIDEsIDIyNiwgNTAsIDIzMSwgMjQ0LCAyMCwgMSwgMjI2LCA1MCwgMjMxLCAxNywgMjAsIAorICAgIDEsIDIyNiwgNTAsIDIyOCwgNjIsIDIwLCAxLCAyMjYsIDUwLCAyMjUsIDYwLCAyMCwgMSwgMjI2LCA1MCwgMjMxLCAxNjUsIAorICAgIDIyOSwgMTk5LCAyMCwgMSwgMjI2LCA1MCwgMjQ0LCAyMTUsIDIwLCAxLCAyMjYsIDUwLCAyMzEsIDIzMSwgMjAsIDEsIDIyNiwgCisgICAgNTAsIDI0NCwgMjM2LCAyMCwgMSwgMjI2LCA1MCwgMjM1LCAxNSwgMjAsIDEsIDIyNiwgNTAsIDIzMiwgMTE2LCAyMjksIDY4LCAKKyAgICAyMCwgMSwgMjI2LCA1MCwgMjMyLCAxMTYsIDIyOSwgNDQsIDIwLCAxLCAyMjYsIDUwLCAyMzMsIDEzMywgMjAsIDEsIDIyNiwgCisgICAgNTAsIDIyOSwgMjA1LCAyMCwgMSwgMjI2LCA1MCwgMjI4LCAxNjUsIDIwLCAxLCAyMjYsIDUwLCAxOTEsIDIwLCAxLCAyMjYsIAorICAgIDUwLCAyMzQsIDE5NCwgMjAsIDEsIDIyNiwgNTAsIDIyOSwgMTUyLCAyMCwgMSwgMTMzLCAyMjksIDE2MywgMjMyLCA5NywgCisgICAgMjAsIDEsIDEzMywgMjI4LCAxOCwgMjAsIDEsIDEzMywgMjEyLCAxODgsIDIwLCAxLCAxMzMsIDIxNCwgNDAsIDIwLCAxLCAKKyAgICAxMzMsIDIyOSwgMTk4LCAyMCwgMSwgMTMzLCAyMzAsIDI4LCAyMCwgMSwgMTMzLCAyMjksIDE3MCwgMjAsIDEsIDEzMywgCisgICAgMjQzLCA3OSwgMjAsIDEsIDEzMywgMjMxLCAyNDgsIDIwLCAxLCAxMzMsIDI0MywgMTczLCAyMCwgMSwgMTMzLCAyMjgsIDQxLCAKKyAgICAyMzEsIDUzLCAyMzEsIDE2OCwgMjAsIDEsIDEzMywgMjI4LCAxMzgsIDIzMSwgMjM5LCAyMCwgMSwgMTMzLCAyMzEsIDI0NSwgCisgICAgMjAsIDEsIDEzMywgMjI1LCAyMjMsIDIwLCAxLCAxMzMsIDIzMCwgMTMsIDIwLCAxLCAxMzMsIDIzMiwgMCwgMjUxLCA4NCwgCisgICAgMjAsIDEsIDEzMywgMjM1LCA1LCAyMCwgMSwgMTMzLCAyNDMsIDgwLCAyMCwgMSwgMTMzLCAyMzUsIDEyLCAyMCwgMSwgMTMzLCAKKyAgICAyMTIsIDIwNSwgMjMwLCAyMTYsIDIwLCAxLCAxMzMsIDIyOCwgMTIsIDIwLCAxLCAxMzMsIDIzMSwgMjMzLCAyMCwgMSwgCisgICAgMTMzLCAyMjgsIDE2NCwgMjAsIDEsIDEzMywgMjMxLCAyMzksIDIwLCAxLCAxMzMsIDIxMywgOCwgMjAsIDEsIDEzMywgMjM0LCAKKyAgICAxMTMsIDIwLCAxLCAxMzMsIDIzNSwgMTI4LCAyMCwgMSwgMTMzLCAyMjEsIDY3LCAyMCwgMSwgMTMzLCAyMzAsIDIyLCAyMCwgCisgICAgMSwgMTMzLCAyMTgsIDU3LCAyMCwgMSwgMTMzLCAyMjksIDQ4LCAyMCwgMSwgMTMzLCAyMTcsIDMzLCAyMTIsIDE5MCwgMjAsIAorICAgIDEsIDEzMywgMjE5LCAzNywgMjAsIDEsIDEzMywgMjI5LCAxODksIDIyOCwgNjAsIDIwLCAxLCAxMzMsIDIxNCwgMTYzLCAyMCwgCisgICAgMSwgMTMzLCAyMzAsIDg3LCAyMCwgMSwgMTMzLCAyMzIsIDExNiwgMjM1LCAxNCwgMjAsIDEsIDEzMywgMjI4LCAxNDcsIDIwLCAKKyAgICAxLCAxMzMsIDIyOSwgMTg0LCAyMCwgMSwgMTMzLCAyMzMsIDIxMCwgMjAsIDEsIDEzMywgMjMxLCAyNDEsIDIwLCAxLCAxMzMsIAorICAgIDIzMSwgMTQ1LCAyMCwgMSwgMTMzLCAyMjgsIDE0MSwgMjAsIDEsIDEzMywgMjE3LCAxODEsIDIwLCAxLCAxMzMsIDIyOSwgCisgICAgMTg2LCAyMCwgMSwgMTMzLCAyNDQsIDY4LCAyMCwgMSwgMTMzLCAyMzAsIDI3LCAyMCwgMSwgMTMzLCAyMjgsIDE2NiwgMjAsIAorICAgIDEsIDEzMywgMjI4LCAxNjIsIDIwLCAxLCAxMzMsIDI1MSwgMTYxLCAyMCwgMSwgMTMzLCAyMTQsIDE2NSwgMjAsIDEsIDEzMywgCisgICAgMjMxLCAyNDYsIDIwLCAxLCAxMzMsIDIyMywgNzcsIDIwLCAxLCAxMzMsIDIyOSwgNzgsIDIwLCAxLCAxMzMsIDIzMywgMjI0LCAKKyAgICAyMCwgMSwgMTMzLCAyMTcsIDMxLCAyMCwgMSwgMTMzLCAyMjgsIDE0OCwgMjI5LCAxNTIsIDIwLCAxLCAxMzMsIDIyOSwgNzAsIAorICAgIDIwLCAxLCAxMzMsIDIzNSwgMTgsIDIwLCAxLCAxMzMsIDIyOSwgMTkwLCAyMCwgMSwgMTMzLCAyMzIsIDkwLCAyMCwgMSwgCisgICAgMTMzLCAyMzEsIDIzNCwgMjAsIDEsIDEzMywgMjMyLCAyMzAsIDIwLCAxLCAxMzMsIDIzNCwgNTMsIDIwLCAxLCAxMzMsIAorICAgIDIyOSwgNzYsIDIwLCAxLCAxMzMsIDIyOSwgMTUyLCAyMCwgMSwgMTMzLCAyMTMsIDE3NSwgMjAsIDEsIDEzMywgMjI5LCAKKyAgICAxODcsIDIwLCAxLCAxMzMsIDIyOCwgMTUxLCAyMCwgMSwgMTMzLCAyMjgsIDE0MywgMjAsIDEsIDEzMywgMjM0LCA2NywgCisgICAgMjI5LCAzNCwgMjAsIDEsIDEzMywgMjI4LCAxNDksIDIwLCAxLCAxMzMsIDIzMCwgMzUsIDIwLCAxLCAxMzMsIDIzMiwgMTE2LCAKKyAgICAyMjgsIDE1NCwgMjAsIDEsIDEzMywgMjEzLCA5NCwgMjAsIDEsIDEzMywgMjMwLCAzNCwgMjAsIDEsIDEzMywgMjIwLCAxNjUsIAorICAgIDIwLCAxLCAxMzMsIDIyMSwgNzAsIDIwLCAxLCAxMzMsIDIzMSwgMjQyLCAyMCwgMSwgMTMzLCAyMzIsIDk3LCAyMCwgMSwgCisgICAgMTMzLCAyMzEsIDI1MiwgMjAsIDEsIDEzMywgMjM1LCA2LCAyMCwgMSwgMTMzLCAyMzEsIDI0MywgMjAsIDEsIDEzMywgMjM1LCAKKyAgICAxMCwgMjAsIDEsIDEzMywgMjMyLCAwLCAyMjYsIDE1LCAyMCwgMSwgMTMzLCAyMTIsIDE3MSwgMjAsIDEsIDEzMywgMjI5LCAKKyAgICA2NiwgMjAsIDEsIDEzMywgMjMxLCAxMDMsIDIwLCAxLCAxMzMsIDIzMCwgMjQwLCAyMCwgMSwgMTMzLCAyMjAsIDIxNiwgMjAsIAorICAgIDEsIDEzMywgMjM1LCAyOCwgMjMzLCAxOTIsIDIwLCAxLCAxMzMsIDIzNSwgMjgsIDI0NCwgMjQ5LCAyMCwgMSwgMTMzLCAKKyAgICAyMjksIDIxOSwgMjAsIDEsIDEzMywgMjMwLCA4NCwgMjAsIDEsIDEzMywgMjMzLCA3MCwgMjAsIDEsIDEzMywgMjI1LCAyMzMsIAorICAgIDIwLCAxLCAxMzMsIDIyNiwgMTEwLCAyMCwgMSwgMTMzLCAyMTcsIDE5NiwgMjAsIDEsIDEwNSwgMjMxLCAyMzIsIDIwLCAxLCAKKyAgICAxMDUsIDIxNCwgMzgsIDIwLCAxLCAxMDUsIDIyOSwgNjQsIDIwLCAxLCAxMDUsIDIzMSwgMTUzLCAyMCwgMSwgMTA1LCAyMjksIAorICAgIDYyLCAyMCwgMSwgMTA1LCAyMzMsIDEwNSwgMjAsIDEsIDEwNSwgMjI5LCA2NywgMjAsIDEsIDEwNSwgMjI4LCAxNjEsIDIwLCAKKyAgICAxLCAxMDUsIDIyOSwgMjA0LCAyMCwgMSwgMTA1LCAyMjgsIDYwLCAyMCwgMSwgMTA1LCAyMTMsIDE4NSwgMjAsIDEsIDEwNSwgCisgICAgMjI5LCAxNjAsIDIwLCAxLCAxMDUsIDIyMSwgNiwgMjAsIDEsIDEwNSwgMjI5LCAxNzEsIDIwLCAxLCAxMDUsIDIzNSwgMTMsIAorICAgIDIwLCAxLCAxMDUsIDIxNywgMTgzLCAyMCwgMSwgMTA1LCAyMjAsIDI0MiwgMjAsIDEsIDEwNSwgMjI5LCA3NSwgMjAsIDEsIAorICAgIDEwNSwgMjE5LCAxMSwgMjAsIDEsIDEwNSwgMjM1LCAxOCwgMjAsIDEsIDEwNSwgMjEzLCA4MiwgMjAsIDEsIDEwNSwgMjM0LCAKKyAgICA2OCwgMjAsIDEsIDEwNSwgMjIyLCAxNzQsIDIwLCAxLCAxMDUsIDIzMSwgMTU4LCAyMCwgMSwgMTA1LCAyMzAsIDI2LCAyMCwgCisgICAgMSwgMTA1LCAyMzIsIDY2LCAyMCwgMSwgMTA1LCAyMzEsIDE2NCwgMjAsIDEsIDEwNSwgMjIxLCA2OSwgMjAsIDEsIDEwNSwgCisgICAgMjEzLCAzMSwgMjAsIDEsIDEwNSwgMjI5LCA2OSwgMjAsIDEsIDEwNSwgMjM1LCA5LCAyMzEsIDIzNSwgMjAsIDEsIDEwNSwgCisgICAgMjI5LCAxNjcsIDIwLCAxLCAxMDUsIDIxNiwgOTAsIDIwLCAxLCAxMDUsIDI0MywgODgsIDIwLCAxLCAxMDUsIDIyOSwgMTU3LCAKKyAgICAyMCwgMSwgMTA1LCAyNDQsIDIxNiwgMjAsIDEsIDEwNSwgMjMwLCAzMCwgMjAsIDEsIDEwNSwgMjMxLCAxMzcsIDIwLCAxLCAKKyAgICAxMDUsIDIzMywgMTI5LCAyMCwgMSwgMTA1LCAyMzAsIDEyLCAyMCwgMSwgMTA1LCAyMzEsIDMxLCAyMCwgMSwgMTA1LCAyMzEsIAorICAgIDE0MSwgMjAsIDEsIDEwNSwgMjI1LCA0MSwgMjAsIDEsIDEwNSwgMjMxLCAxMzksIDIwLCAxLCAxMDUsIDIzMSwgMTU1LCAyMCwgCisgICAgMSwgMTA1LCAyMzIsIDIxNiwgMjAsIDEsIDEwNSwgMjI4LCAxNTMsIDIwLCAxLCAxMDUsIDIzMSwgMjU1LCAyMCwgMSwgMTA1LCAKKyAgICAyMzQsIDQ0LCAyMCwgMSwgMTA1LCAyMjgsIDUxLCAyMCwgMSwgMTA1LCAyMTcsIDE4NiwgMjAsIDEsIDEwNSwgMjE5LCAyNDAsIAorICAgIDIwLCAxLCAxMDUsIDIxMiwgMTcxLCAyMCwgMSwgMTA1LCAyMzUsIDEwLCAyMCwgMSwgMTA1LCAyMjQsIDk1LCAyMCwgMSwgCisgICAgMTA1LCAyMTcsIDIzMSwgMjAsIDEsIDEwNSwgMjI5LCAxNjgsIDIwLCAxLCAxMDUsIDIzMSwgMTYwLCAyMCwgMSwgMTA1LCAKKyAgICAyMjgsIDE1MiwgMjAsIDEsIDEwNSwgMjM1LCA4LCAyMCwgMSwgMTA1LCAyMjUsIDIyNywgMjAsIDEsIDEwNSwgMjI2LCA2NCwgCisgICAgMjAsIDEsIDEwNSwgMjI4LCAyOCwgMjAsIDEsIDEwNSwgMjMzLCAxMzMsIDIwLCAxLCAxMDUsIDIyOSwgMjA1LCAyMCwgMSwgCisgICAgMTA1LCAyMzEsIDE1NywgMjAsIDEsIDEwNSwgMjI5LCAxNzksIDIwLCAxLCAxMDUsIDIxMiwgMTg1LCAyMCwgMSwgMTA1LCAKKyAgICAyMjYsIDE4NiwgMjAsIDEsIDEwNSwgMjEyLCAxODQsIDIwLCAxLCAxMDUsIDIzMCwgMzUsIDIwLCAxLCAxMDUsIDIyOCwgCisgICAgMTQyLCAyMCwgMSwgMTA1LCAyMTksIDM5LCAyMCwgMSwgMTA1LCAyMzQsIDcyLCAyMCwgMSwgMTA1LCAyMjksIDE5NCwgMjAsIAorICAgIDEsIDEwNSwgMjI5LCAxNjUsIDIwLCAxLCAxMDUsIDIxNiwgNzQsIDIwLCAxLCAxMDUsIDIzMSwgMTY4LCAyMCwgMSwgMTA1LCAKKyAgICAyMzQsIDYyLCAyMCwgMSwgMTA1LCAyMjgsIDE1MCwgMjAsIDEsIDEwNSwgMjE3LCAxODQsIDIwLCAxLCAxMDUsIDIzMiwgOTIsIAorICAgIDIwLCAxLCAxMDUsIDIyOSwgMjAzLCAyMCwgMSwgMTA1LCAyMzMsIDEyOCwgMjAsIDEsIDEwNSwgMjI5LCAxODUsIDIwLCAxLCAKKyAgICAxMDUsIDIyOCwgMTU1LCAyMCwgMSwgMTA1LCAyMjksIDQ4LCAyMCwgMSwgMTA1LCAyNDMsIDczLCAyMCwgMSwgMTA1LCAyMzQsIAorICAgIDgxLCAyMCwgMSwgMTA1LCAyMjQsIDEyLCAyMjcsIDExMiwgMjAsIDEsIDEwNSwgMjE4LCA0OSwgMjAsIDEsIDEwNSwgMjE2LCAKKyAgICAyMzYsIDIwLCAxLCAxMDUsIDIyOCwgNDksIDIwLCAxLCAxMDUsIDIyMywgMTcwLCAyMCwgMSwgMTA1LCAyMzMsIDE3MSwgMjAsIAorICAgIDEsIDEwNSwgMjMxLCAyMTQsIDIwLCAxLCAxMDUsIDE4NCwgMjAsIDEsIDEwNSwgMjE4LCAyMTksIDIwLCAxLCAxMDUsIDIzMCwgCisgICAgMjQyLCAyMCwgMSwgMTA1LCAyMjAsIDIyOCwgMjAsIDEsIDEwNSwgMjIwLCAyMzgsIDIwLCAxLCAxMDUsIDIzNCwgMTksIDIwLCAKKyAgICAxLCAxMDUsIDIyOCwgMTM1LCAyMCwgMSwgMTA1LCAyMjAsIDE3MCwgMjAsIDEsIDEwNSwgMjI4LCAxNDQsIDIwLCAxLCAxMDUsIAorICAgIDIyNiwgMTIyLCAyMCwgMSwgMTA1LCAyMjksIDEyOCwgMjAsIDEsIDEwNSwgMjIwLCAxOTcsIDIwLCAxLCAxMDUsIDIyNSwgCisgICAgNTUsIDIwLCAxLCAxMDUsIDIzMCwgMTg2LCAyMCwgMSwgMTA1LCAyMzIsIDI0OCwgMjAsIDEsIDEwNSwgMjI0LCAxMiwgMjMwLCAKKyAgICAyMzYsIDIwLCAxLCAxMDUsIDIxNywgODQsIDIwLCAxLCAxMDUsIDIyOCwgMTM2LCAyMCwgMSwgMTA1LCAyMzIsIDAsIDIwMCwgCisgICAgMjAsIDEsIDEwNSwgMjIyLCAxNzIsIDIwLCAxLCAxMDUsIDI0NSwgMjgsIDIwLCAxLCA4MiwgMjMwLCAzNCwgMjAsIDEsIDgyLCAKKyAgICAyMTYsIDI0MiwgMjAsIDEsIDgyLCAyMzEsIDI0NSwgMjAsIDEsIDgyLCAyMzMsIDIxMCwgMjAsIDEsIDgyLCAyMTQsIDExMywgCisgICAgMjAsIDEsIDgyLCAyMzIsIDI1MiwgMjAsIDEsIDgyLCAyMjYsIDI1MSwgMjAsIDEsIDgyLCAyMTksIDI0OSwgMjAsIDEsIDgyLCAKKyAgICAyMjQsIDcyLCAyMCwgMSwgODIsIDIyOCwgMTU3LCAyMCwgMSwgODIsIDIzMCwgNSwgMjAsIDEsIDgyLCAyMjUsIDY5LCAyMCwgCisgICAgMSwgODIsIDIxOCwgMjYsIDIwLCAxLCA4MiwgMjI5LCAxNzMsIDIwLCAxLCA4MiwgMjM0LCAxMDksIDIwLCAxLCA4MiwgMjEzLCAKKyAgICAxNzgsIDIwLCAxLCA4MiwgMjIyLCAxMTIsIDIwLCAxLCA4MiwgMjI5LCAxOTUsIDIwLCAxLCA4MiwgMjI2LCAyNDgsIDIwLCAKKyAgICAxLCA4MiwgMjE2LCAyNDMsIDIwLCAxLCA4MiwgMjM0LCA2NiwgMjAsIDEsIDgyLCAyMzMsIDEwLCAyMCwgMSwgODIsIDIyOCwgCisgICAgMTYwLCAyMCwgMSwgODIsIDIyOSwgMTQ5LCAyMCwgMSwgODIsIDIzMiwgOTgsIDIwLCAxLCA4MiwgMjI5LCAxNjYsIDIwLCAxLCAKKyAgICA4MiwgMjI5LCAxNDgsIDIwLCAxLCA4MiwgMjI4LCAxNTksIDIwLCAxLCA4MiwgMjIzLCAxNjgsIDIwLCAxLCA4MiwgMjI5LCAKKyAgICA2NiwgMjAsIDEsIDgyLCAyMjYsIDEyMSwgMjAsIDEsIDgyLCAyMjIsIDIyNSwgMjAsIDEsIDgyLCAyMjksIDE4MCwgMjAsIDEsIAorICAgIDgyLCAyMzEsIDE0NywgMjAsIDEsIDgyLCAyNDMsIDY3LCAyMCwgMSwgODIsIDIyOSwgMTY5LCAyMCwgMSwgODIsIDIyOSwgCisgICAgNzcsIDIwLCAxLCA4MiwgMjMyLCA1MCwgMjAsIDEsIDgyLCAyMzIsIDI1MCwgMjAsIDEsIDgyLCAyMjksIDIwMCwgMjAsIDEsIAorICAgIDgyLCAyMzAsIDE4LCAyMCwgMSwgODIsIDIxOCwgNDgsIDIyOCwgMTQyLCAyMCwgMSwgODIsIDIyMSwgNzEsIDIwLCAxLCA4MiwgCisgICAgMjI1LCA2NSwgMjAsIDEsIDgyLCAyMzAsIDM4LCAyMTksIDI1NCwgMjAsIDEsIDgyLCAyMjksIDE4OCwgMjI4LCA2MCwgMjAsIAorICAgIDEsIDgyLCAyMTIsIDI1MiwgMjAsIDEsIDgyLCAyNDMsIDY4LCAyMCwgMSwgODIsIDIxNiwgODksIDIwLCAxLCA4MiwgMjEzLCAKKyAgICAxMSwgMjAsIDEsIDgyLCAyMjUsIDE4NiwgMjAsIDEsIDgyLCAyMTYsIDc5LCAyMCwgMSwgODIsIDIzNSwgMTYsIDIwLCAxLCAKKyAgICA4MiwgMjE5LCAzOCwgMjAsIDEsIDgyLCAyMTcsIDE4NSwgMjAsIDEsIDgyLCAyMTQsIDE2NiwgMjAsIDEsIDgyLCAyMTMsIAorICAgIDI1MCwgMjAsIDEsIDgyLCAyMzMsIDI1MiwgMjAsIDEsIDgyLCAyMjUsIDcxLCAyMCwgMSwgODIsIDIxOCwgNTgsIDIwLCAxLCAKKyAgICA4MiwgMjQzLCA4NywgMjAsIDEsIDgyLCAyMjksIDIwOSwgMjAsIDEsIDgyLCAyMjAsIDI0MSwgMjAsIDEsIDgyLCAyMzEsIAorICAgIDE0MiwgMjAsIDEsIDgyLCAyMzEsIDI0OSwgMjAsIDEsIDgyLCAyMjgsIDE2LCAyMCwgMSwgODIsIDIyOSwgMzEsIDIwLCAxLCAKKyAgICA4MiwgMjQzLCAxNjksIDIwLCAxLCA4MiwgMjE2LCA4MCwgMjAsIDEsIDgyLCAyMzQsIDc1LCAyMCwgMSwgODIsIDIxMywgNTksIAorICAgIDIwLCAxLCA4MiwgMjI4LCA1MCwgMjUwLCA3NiwgMjAsIDEsIDgyLCAyMTIsIDI0MiwgMjAsIDEsIDgyLCAyMzEsIDE1OSwgCisgICAgMjAsIDEsIDgyLCAyMzAsIDIzLCAyMCwgMSwgODIsIDIyNiwgMTIsIDIwLCAxLCA4MiwgMjEyLCAxODksIDIwLCAxLCA4MiwgCisgICAgMjMzLCAxMzAsIDIwLCAxLCA4MiwgMjQ0LCA2OCwgMjAsIDEsIDgyLCAyNDMsIDE2OCwgMjAsIDEsIDgyLCAyMjksIDE1OSwgCisgICAgMjAsIDEsIDgyLCAyMzUsIDE4LCAyMCwgMSwgODIsIDIzMiwgMTAxLCAyMCwgMSwgODIsIDIyOSwgMTcyLCAyMCwgMSwgODIsIAorICAgIDI0MywgNzQsIDIwLCAxLCA4MiwgMjQ1LCAyOSwgMjAsIDEsIDgyLCAyMjgsIDEzNywgMjAsIDEsIDgyLCAyMjYsIDY1LCAyMCwgCisgICAgMSwgODIsIDIxMywgOSwgMjAsIDEsIDgyLCAyMjksIDE5NiwgMjAsIDEsIDgyLCAyMjgsIDUwLCAyNTIsIDcwLCAyMCwgMSwgCisgICAgODIsIDIyNywgMjUyLCAyMCwgMSwgODIsIDIyNSwgMTYzLCAyMCwgMSwgODIsIDIzMSwgMTAzLCAyMCwgMSwgODIsIDI0NCwgCisgICAgNjYsIDIwLCAxLCA4MiwgMjMwLCAxMDcsIDIwLCAxLCA4MiwgMjMwLCAyNDAsIDIwLCAxLCA4MiwgMjQzLCA3MywgMjAsIDEsIAorICAgIDgyLCAyNDQsIDcwLCA3NSwgMjAsIDEsIDgyLCAyMzAsIDE4NywgMjAsIDEsIDgyLCAyMjUsIDY4LCAyMCwgMSwgODIsIDIyOSwgCisgICAgMTYxLCAyMCwgMSwgODIsIDIzNCwgNTMsIDIwLCAxLCA4MiwgMjI2LCA5LCAyMCwgMSwgODIsIDIyOCwgMTQ1LCAyMCwgMSwgCisgICAgODIsIDIxMywgMTAsIDIwLCAxLCA4MiwgMjI5LCAxODEsIDIwLCAxLCA4MiwgMjI2LCAyNTIsIDIyNiwgOTgsIDIwLCAxLCAKKyAgICA4MiwgMjQ0LCA3MCwgMjUxLCA3MSwgMjAsIDEsIDgyLCAyNDQsIDEyNiwgMjAsIDEsIDgyLCAyMjksIDcxLCAyMCwgMSwgODIsIAorICAgIDYzLCAyMCwgMSwgODIsIDIxNiwgMjM2LCAyMCwgMSwgODIsIDc4LCAyMCwgMSwgODIsIDc1LCAyMCwgMSwgODIsIDIzMywgCisgICAgMjA4LCAyMCwgMSwgODIsIDIyNiwgMjUyLCAyMjUsIDE5MywgMjAsIDEsIDgyLCAyMTgsIDYzLCAyMCwgMSwgODIsIDIxOCwgCisgICAgMTUsIDIwLCAxLCA4MiwgMjMwLCAzOCwgMjMwLCAxNzUsIDI0MSwgODMsIDIwLCAxLCA4MiwgMjIwLCAyMTYsIDIwLCAxLCAKKyAgICA4MiwgMjEzLCA2LCAyMCwgMSwgODIsIDIyOSwgMTQyLCAyMCwgMSwgODIsIDIxMiwgMTk0LCAyMCwgMSwgODIsIDIxMiwgCisgICAgMjE5LCAyMTgsIDE5OSwgMjAsIDEsIDgyLCAyMTIsIDIxOSwgMjQ5LCAyMDksIDIwLCAxLCA4MiwgMjEyLCAxNzksIDIwLCAxLCAKKyAgICA4MiwgMjEyLCAxODcsIDIwLCAxLCA4MiwgMjM1LCA0LCAyMCwgMSwgODIsIDIyNiwgNjMsIDIwLCAxLCA4MiwgMjI5LCA3MiwgCisgICAgMjQ1LCAxODYsIDIwLCAxLCA4MiwgMjI1LCA2NiwgMjAsIDEsIDgyLCAyMTMsIDE4MywgMjAsIDEsIDgyLCAyNDQsIDIzNiwgCisgICAgMjAsIDEsIDgyLCAyMTQsIDIzMiwgMjAsIDEsIDgyLCAyMzIsIDIzMCwgMjAsIDEsIDgyLCAyMzEsIDExMiwgMjAsIDEsIDgyLCAKKyAgICAyMjMsIDIzOCwgMjAsIDEsIDgyLCAyMjQsIDk2LCAyMCwgMSwgODIsIDIyOSwgMTQxLCAyMCwgMSwgODIsIDIyOSwgMjI2LCAKKyAgICAyMCwgMSwgODIsIDIyMCwgMjA4LCAyMCwgMSwgODIsIDIyMCwgMTk3LCAyMCwgMSwgODIsIDI0NCwgNzAsIDIyNCwgMTQsIAorICAgIDIwLCAxLCA4MiwgMjA3LCAyMCwgMSwgODIsIDIyNiwgMjAsIDIwLCAxLCA4MiwgMjMyLCAyNDgsIDIwLCAxLCA4MiwgMjM0LCAKKyAgICAxNDgsIDIwLCAxLCA4MiwgMjMxLCAxOTIsIDIwLCAxLCA4MiwgMTkxLCAyMCwgMSwgODIsIDIzMiwgNDcsIDIwLCAxLCA4MiwgCisgICAgMjE3LCAxODcsIDIwLCAxLCA4MiwgMjM0LCAyMTIsIDIwLCAxLCA4MiwgMjMxLCAzNCwgMjAsIDEsIDgyLCAyMTcsIDIxMywgCisgICAgMjAsIDEsIDgyLCAyNDUsIDIsIDIwLCAxLCA4MiwgMjQzLCA2MywgMjAsIDEsIDIyNiwgNDksIDE4MywgMjAsIDEsIDIyNiwgCisgICAgNDksIDcyLCAyMCwgMSwgMjI2LCA0OSwgMjM0LCA4MSwgMjAsIDEsIDIyNiwgNDksIDI0NiwgMzAsIDIwLCAxLCAyMjYsIDQ5LCAKKyAgICAyMjQsIDM1LCAyMCwgMSwgMjI2LCA0OSwgMjE4LCA0OSwgMjAsIDEsIDIyNiwgNDksIDIyOCwgNDksIDIwLCAxLCAyMjYsIAorICAgIDQ5LCAyMzMsIDI1NSwgMjAsIDEsIDIyNiwgNDksIDIyMywgMTcwLCAyMCwgMSwgMjI2LCA0OSwgMjIzLCAyMTYsIDIwLCAxLCAKKyAgICAyMjYsIDQ5LCAyMzEsIDIxNCwgMjAsIDEsIDIyNiwgNDksIDIxOCwgNjMsIDIwLCAxLCAyMjYsIDQ5LCAyMzAsIDM3LCAyMCwgCisgICAgMSwgMjI2LCA0OSwgMjI5LCA3OCwgMjAsIDEsIDIyNiwgNDksIDE4NCwgMjAsIDEsIDIyNiwgNDksIDIxOCwgMjE5LCAyMCwgCisgICAgMSwgMjI2LCA0OSwgMjIwLCAyMjgsIDIwLCAxLCAyMjYsIDQ5LCAyMjAsIDEzNiwgMjAsIDEsIDIyNiwgNDksIDIyMSwgNjcsIAorICAgIDIwLCAxLCAyMjYsIDQ5LCAyMzQsIDE5LCAyMCwgMSwgMjI2LCA0OSwgMjM1LCAxOCwgMjAsIDEsIDIyNiwgNDksIDIyOCwgCisgICAgMTA3LCAyMCwgMSwgMjI2LCA0OSwgMjI4LCAxMzUsIDIwLCAxLCAyMjYsIDQ5LCAyMjksIDQ5LCAyMCwgMSwgMjI2LCA0OSwgCisgICAgMjEyLCAyMTgsIDIwLCAxLCAyMjYsIDQ5LCAyMjAsIDE3MCwgMjAsIDEsIDIyNiwgNDksIDE4OSwgMjAsIDEsIDIyNiwgNDksIAorICAgIDIyOCwgMTYzLCAyMCwgMSwgMjI2LCA0OSwgMjI2LCA2MywgMjAsIDEsIDIyNiwgNDksIDIyOCwgMTQ0LCAyMCwgMSwgMjI2LCAKKyAgICA0OSwgMjEzLCAxODMsIDIwLCAxLCAyMjYsIDQ5LCAyMjYsIDEyMiwgMjAsIDEsIDIyNiwgNDksIDIyMywgNzcsIDIwLCAxLCAKKyAgICAyMjYsIDQ5LCAyMjksIDEyOCwgMjAsIDEsIDIyNiwgNDksIDIyMywgMjM4LCAyMCwgMSwgMjI2LCA0OSwgMjM1LCAyNywgMjAsIAorICAgIDEsIDIyNiwgNDksIDIyOSwgMTU4LCAyMCwgMSwgMjI2LCA0OSwgMjI5LCAyMDYsIDIwLCAxLCAyMjYsIDQ5LCAyMjAsIDIwOCwgCisgICAgMjAsIDEsIDIyNiwgNDksIDIyNSwgNjksIDIwLCAxLCAyMjYsIDQ5LCAyNDQsIDEyNiwgMjAsIDEsIDIyNiwgNDksIDIxNCwgCisgICAgNTIsIDIwLCAxLCAyMjYsIDQ5LCAyMzMsIDExMSwgMjAsIDEsIDIyNiwgNDksIDIzMiwgMjQ4LCAyMCwgMSwgMjI2LCA0OSwgCisgICAgMjM0LCAxNDgsIDIwLCAxLCAyMjYsIDQ5LCAyMzEsIDI0NywgMjAsIDEsIDIyNiwgNDksIDIyNCwgMTEsIDIwLCAxLCAyMjYsIAorICAgIDQ5LCAxOTEsIDIwLCAxLCAyMjYsIDQ5LCAyMzEsIDQ1LCAyMCwgMSwgMjI2LCA0OSwgMjMxLCAyNTUsIDIwLCAxLCAyMjYsIAorICAgIDQ5LCAyMTcsIDE5NiwgMjAsIDEsIDIyNiwgNDksIDIzNCwgMTE1LCAyMCwgMSwgMjI2LCA0OSwgMjIyLCAxOTAsIDIwLCAxLCAKKyAgICAyMjYsIDQ5LCAyMTQsIDEwMiwgNTYsIDEsIDI1NCwgNjQsIDc3LCAxMzYsIDEsIDI1NCwgNjQsIDIxMywgMzksIDQ4LCAyNywgCisgICAgMTYsIDIyNSwgNzUsIDQ4LCAyNywgMTYsIDI0OCwgMjI1LCA0OCwgMjcsIDE2LCAyMjYsIDg2LCA0OCwgMjcsIDE2LCAyMjcsIAorICAgIDE5LCAyNDYsIDAsIDQ4LCAyNywgMTYsIDIyNywgMTksIDI0OCwgMTgsIDQ4LCAyNywgMTYsIDIxNCwgMjU0LCAyNDYsIDAsIAorICAgIDQ4LCAyNywgMTYsIDIxNCwgMjU0LCAyNDgsIDE4LCA0OCwgMjcsIDE2LCAyMzUsIDU5LCA0OCwgMjcsIDE2LCAyMTgsIDEyOSwgCisgICAgNDgsIDI3LCAxNiwgMjI2LCAxNzQsIDQ4LCAyNywgMTYsIDIxMiwgMjA5LCA0OCwgMjcsIDE2LCAyMTIsIDIxMCwgMjQ4LCAKKyAgICAxOCwgNDgsIDI3LCAxNiwgMjM0LCA5OCwgNDgsIDI3LCAxNiwgMjU0LCAxMDcsIDI0NiwgMCwgNDgsIDI3LCAxNiwgMjQ1LCAKKyAgICAxMTQsIDI0NiwgMCwgNDgsIDI3LCAxNiwgMjE3LCAyMjQsIDQ4LCAyNywgMTYsIDIzNSwgMjMsIDQ4LCAyNywgMTYsIDI1NCwgCisgICAgOTgsIDQ4LCAyNywgMTYsIDI1NCwgOTksIDI0OCwgMTgsIDQ4LCAyNywgMTYsIDIxOCwgMTM1LCA0OCwgMjcsIDE2LCAyMTcsIAorICAgIDEyNSwgNDgsIDI3LCAxNiwgMjI3LCAxMDksIDI1NCwgNjIsIDQ4LCAyNywgMTYsIDI0MiwgMjU1LCAyNTQsIDYyLCA0OCwgCisgICAgMjcsIDE2LCAyMjUsIDc0LCA0OCwgMjcsIDE2LCAyNTAsIDIwOCwgNDgsIDI3LCAxNiwgMjE0LCAyNDQsIDQ4LCAyNywgMTYsIAorICAgIDIzNiwgMjMsIDI1NCwgNjIsIDQ4LCAyNywgMTYsIDIzNSwgMjUsIDI1NCwgNjIsIDQ4LCAyNywgMTYsIDIzNSwgMjQsIDI1NCwgCisgICAgNjIsIDQ4LCAyNywgMTYsIDIyMiwgMTU0LCA0OCwgMjcsIDE2LCAyMjYsIDE2NSwgNDgsIDI3LCAxNiwgMjE5LCAxMDAsIAorICAgIDI1NCwgMTAxLCA0OCwgMjcsIDE2LCAyMjcsIDE4LCAyNTQsIDYyLCA0OCwgMjcsIDE2LCAyMTQsIDI1MywgMjU0LCA2MiwgCisgICAgNDgsIDI3LCAxNiwgMjU0LCAxMDIsIDI1NCwgNjIsIDQ4LCAyNywgMTYsIDI1NCwgOTYsIDQ4LCAyNywgMTYsIDIzNCwgMTU3LCAKKyAgICA0OCwgMjcsIDE2LCAyMjMsIDIzMywgNDgsIDI3LCAxNiwgMjI2LCAxOCwgMjU0LCA2MiwgNDgsIDI3LCAxNiwgMjE3LCA1MCwgCisgICAgNDgsIDI3LCAxNiwgMjU0LCAxNTcsIDQ4LCAyNywgMTYsIDIyMiwgMTAxLCA0OCwgMjcsIDE2LCAyMTgsIDEzOCwgMjU0LCAKKyAgICA2MiwgNDgsIDI3LCAxNiwgMjE4LCAxMzgsIDIzMSwgMTc3LCAyMTksIDk4LCA0OCwgMjcsIDE2LCAyMjcsIDEzLCAyNTQsIAorICAgIDYyLCA0OCwgMjcsIDE2LCAyMTcsIDE1NiwgNDgsIDI3LCAxNiwgMjMzLCAxNDksIDQ4LCAyNywgMTYsIDI0NiwgMTE3LCA0OCwgCisgICAgMjcsIDE2LCAyMTYsIDE5OCwgNDgsIDI3LCAxNiwgMjE3LCAxOTgsIDQ4LCAyNywgMTYsIDIzNCwgMTAxLCA0OCwgMjcsIDE2LCAKKyAgICAyNTQsIDEwNywgMjQ1LCAxMTQsIDIyOSwgMjQ0LCA0OCwgMjcsIDE2LCAyNDQsIDcxLCAyNTQsIDYyLCA0OCwgMjcsIDE2LCAKKyAgICAyMzYsIDEyNCwgNDgsIDI3LCAxNiwgMjE2LCAxNzAsIDI1NCwgNjIsIDQ4LCAyNywgMTYsIDIzNSwgNjIsIDIxNiwgMTY5LCAKKyAgICA0OCwgMjcsIDE2LCAyMjYsIDExMSwgNDgsIDI3LCAxNiwgMjI1LCA3OSwgNDgsIDI3LCAxNiwgMjM0LCAxMzEsIDQ4LCAyNywgCisgICAgMTYsIDI1MCwgMTQwLCAyNTQsIDYyLCA0OCwgMjcsIDE2LCAyMjQsIDczLCA0OCwgMjcsIDE2LCAyMjYsIDE3NywgMjU0LCAKKyAgICA2MiwgNDgsIDI3LCAxNiwgMjI2LCAxNzUsIDI1NCwgNjIsIDQ4LCAyNywgMTYsIDI0MCwgMjE5LCA0OCwgMjcsIDE2LCAyMzAsIAorICAgIDkxLCA0OCwgMjcsIDE2LCAyMjYsIDY4LCA0OCwgMjcsIDE2LCAyMzQsIDEzMiwgMjU0LCAxODUsIDQ4LCAyNywgMTYsIDIxNiwgCisgICAgMTcwLCAyNTQsIDE4NSwgNDgsIDI3LCAxNiwgMjE5LCA3NywgNDgsIDI3LCAxNiwgMjQyLCAyMjIsIDQ4LCAyNywgMTYsIAorICAgIDIzNiwgMjMsIDIyOSwgMjQ0LCA0OCwgMjcsIDE2LCAyMjcsIDEwOSwgMjI5LCAyNDQsIDQ4LCAyNywgMTYsIDIyNywgMTksIAorICAgIDIyOSwgMjQ0LCA0OCwgMjcsIDE2LCAyMjYsIDY3LCA0OCwgMjcsIDE2LCAyMzQsIDExOCwgNDgsIDI3LCAxNiwgMjI2LCA2NiwgCisgICAgNDgsIDI3LCAxNiwgMjM0LCAxMDAsIDQ4LCAyNywgMTYsIDIyNiwgMTEyLCAyMjksIDI0NCwgNDgsIDI3LCAxNiwgMjM1LCAKKyAgICAyNCwgMjI5LCAyNDUsIDI1NCwgMTM0LCA0OCwgMjcsIDE2LCAyMzUsIDI1LCAyMjksIDI0NSwgMjU0LCAxMzQsIDQ4LCAyNywgCisgICAgMTYsIDIxMiwgMjA3LCA0OCwgMjcsIDE2LCAyNTQsIDk5LCAyMjksIDI0NCwgNDgsIDI3LCAxNiwgMjU0LCAxMDAsIDIxOCwgCisgICAgMTM2LCAyMjksIDI0NCwgNDgsIDI3LCAxNiwgMjEyLCAyMDgsIDQ4LCAyNywgMTYsIDIzNCwgOTksIDQ4LCAyNywgMTYsIAorICAgIDI0NSwgMjUxLCA0OCwgMjcsIDE2LCAyNTAsIDIwOSwgNDgsIDI3LCAxNiwgMjMxLCA4MSwgMjM2LCAyMiwgNDgsIDI3LCAxNiwgCisgICAgMjE0LCAyNTQsIDIyOSwgMjQ0LCA0OCwgMjcsIDE2LCAyMjYsIDE4LCAyMjksIDI0NCwgNDgsIDI3LCAxNiwgMjI1LCA4MCwgCisgICAgMjI5LCAyNDQsIDQ4LCAyNywgMTYsIDIyNywgMTA2LCA0OCwgMjcsIDE2LCAyNTQsIDEyMiwgNDgsIDI3LCAxNiwgMjMyLCAKKyAgICAxOTEsIDQ4LCAyNywgMTYsIDIyNiwgMTc1LCAyMjksIDI0NCwgNDgsIDI3LCAxNiwgMjI2LCAxNzcsIDIyOSwgMjQ0LCA0OCwgCisgICAgMjcsIDE2LCAyNDUsIDE0NywgMjI2LCAxNzYsIDQ4LCAyNywgMTYsIDIzNCwgMTcsIDQ4LCAyNywgMTYsIDI1NCwgMTIzLCAKKyAgICA0OCwgMjcsIDE2LCAyMTYsIDE3MCwgMjI5LCAyNDQsIDQ4LCAyNywgMTYsIDI0NSwgMjU0LCA0OCwgMjcsIDE2LCAyMTgsIAorICAgIDEzOCwgMjI5LCAyNDQsIDQ4LCAyNywgMTYsIDIxOCwgMTMwLCA0OCwgMjcsIDE2LCAyNTAsIDE0MCwgMjI5LCAyNDQsIDQ4LCAKKyAgICAyNywgMTYsIDI0NSwgMTkwLCA0OCwgMjcsIDE2LCAyMjIsIDEwMiwgMjI5LCAyNDQsIDQ4LCAyNywgMTYsIDIxMywgMTQyLCAKKyAgICAyMzQsIDE1NywgNDgsIDI3LCAxNiwgMjE2LCAxNjcsIDQ4LCAyNywgMTYsIDIyNSwgODEsIDQ4LCAyNywgMTYsIDIxNiwgCisgICAgMTcxLCA0OCwgMjcsIDE2LCAyMTYsIDE2OCwgNDgsIDI3LCAxNiwgMjI1LCA3OCwgNDgsIDI3LCAxNiwgMjE2LCAxNjYsIDQ4LCAKKyAgICAyNywgMTYsIDIyNSwgNzcsIDQ4LCAyNywgMTYsIDI0MiwgMjU0LCA0OCwgMjcsIDE2LCAyNTQsIDU2LCA0OCwgMjcsIDE2LCAKKyAgICAyNDUsIDE0NywgMjU0LCA1NiwgNDgsIDI3LCAxNiwgMjI3LCAxMywgMjI5LCAyNDQsIDQ4LCAyNywgMTYsIDIxNywgMTU1LCAKKyAgICAyNDUsIDE1NSwgNDgsIDI3LCAxNiwgMjE3LCAxNTUsIDI0NSwgMTEzLCA0OCwgMjcsIDE2LCAyMTcsIDE1NywgMjU0LCAxMDMsIAorICAgIDQ4LCAyNywgMTYsIDIxNywgMTUwLCAyMzUsIDEwOSwgMjU0LCA5NSwgNDgsIDI3LCAxNiwgMjM1LCA2MSwgNDgsIDI3LCAxNiwgCisgICAgMjQ1LCAyMTgsIDQ4LCAyNywgMTYsIDIxMywgMywgMjM1LCA1OCwgNDgsIDI3LCAxNiwgMjEzLCAzLCAyNTQsIDEzNCwgNDgsIAorICAgIDI3LCAxNiwgMjE5LCA5OSwgNDgsIDI3LCAxNiwgMjM0LCAxNTgsIDI1NCwgMTM0LCA0OCwgMjcsIDE2LCAyNDgsIDE5LCAKKyAgICAyNTQsIDYyLCA0OCwgMjcsIDE2LCAyMzQsIDEwMiwgMjU0LCA2MiwgNDgsIDI3LCAxNiwgMjM0LCAxMDIsIDI1NCwgMTg1LCAKKyAgICA0OCwgMjcsIDE2LCAyMzQsIDEwMiwgMjI5LCAyNDQsIDQ4LCAyNywgMTYsIDI1NCwgMTAyLCAyMjksIDI0NCwgNDgsIDI3LCAKKyAgICAxNiwgMjU0LCAxMDQsIDQ4LCAyNywgMTYsIDI0OCwgMTgsIDQ4LCAyNywgMTYsIDIxNiwgMTgxLCA0OCwgMjcsIDE2LCAyMTcsIAorICAgIDE5MCwgNDgsIDI3LCAxNiwgMjM0LCAxMjIsIDQ4LCAyNywgMTYsIDIzMywgMTU0LCAyNDUsIDIxMywgMjUwLCAxMzEsIDQ4LCAKKyAgICAyNywgMTYsIDIzMywgMTU0LCAyNDYsIDExOCwgMjUwLCAxMzIsIDQ4LCAyNywgMTYsIDIzMywgMTU0LCAyMTYsIDE4MywgCisgICAgMjUwLCAxMzIsIDQ4LCAyNywgMTYsIDIzMywgMTU0LCAyMTcsIDIwMCwgMjUwLCAxMzIsIDQ4LCAyNywgMTYsIDIzMywgMTU0LCAKKyAgICAyMzYsIDExOSwgMjUwLCAxMzEsIDQ4LCAyNywgMTYsIDI0MiwgMjU1LCAyMjksIDI0NSwgMjU0LCAxMzQsIDQ4LCAyNywgMTYsIAorICAgIDI0MiwgMjU1LCAyMjYsIDE2NiwgMjU0LCA1MiwgNDgsIDI3LCAxNiwgMjQyLCAyNTUsIDIyNiwgMTY2LCAyNDgsIDEwMSwgCisgICAgNDgsIDI3LCAxNiwgMjQ4LCA0MiwgNDgsIDI3LCAxNiwgMjQ4LCA0MywgMjI2LCAxNjYsIDI1NCwgNTMsIDIzNSwgNTgsIDQ4LCAKKyAgICAyNywgMTYsIDI0OCwgNDMsIDIyNiwgMTY2LCAyNTQsIDUzLCAyNTQsIDEzNCwgNDgsIDI3LCAxNiwgMjQ4LCA0MywgMjI2LCAKKyAgICAxNjYsIDI0OCwgMTAxLCA0OCwgMjcsIDE2LCAyMTYsIDE4NywgNDgsIDI3LCAxNiwgMjU0LCA1NywgNDgsIDI3LCAxNiwgCisgICAgMjM2LCAxMjYsIDQ4LCAyNywgMTYsIDI0OCwgNjMsIDQ4LCAyNywgMTYsIDI1NCwgMjQ0LCAyMjUsIDE3MCwgMjU0LCA1OCwgCisgICAgNDgsIDI3LCAxNiwgMjU0LCAyNDQsIDI1NCwgNTUsIDQ4LCAyNywgMTYsIDI1NCwgMjQ0LCAyNTQsIDU4LCA0OCwgMjcsIDE2LCAKKyAgICAyNTQsIDI0NCwgMjMxLCAxNzEsIDQ4LCAyNywgMTYsIDI1NCwgMjQ0LCAyMzEsIDE4MCwgNDgsIDI3LCAxNiwgMjU0LCAyNDQsIAorICAgIDI0MywgMCwgNDgsIDI3LCAxNiwgMjU0LCAyNDQsIDI0MiwgMjUzLCA0OCwgMjcsIDE2LCAyNTQsIDI0NCwgMjI1LCAxNzAsIAorICAgIDI0MywgMCwgNDgsIDI3LCAxNiwgMjMyLCAyOSwgMjI1LCA4NiwgMjQwLCAyMTcsIDQ4LCAyNywgMTYsIDIzMiwgMjksIDI1NCwgCisgICAgMTg3LCAyMjUsIDg2LCAyNDAsIDIxNywgNDgsIDI3LCAxNiwgMjMyLCAyOSwgMjQ4LCAxMDAsIDI0MCwgMjE3LCA0OCwgMjcsIAorICAgIDE2LCAyMzIsIDI5LCAyNTQsIDE4NywgMjQ4LCAxMDAsIDI0MCwgMjE3LCA0OCwgMjcsIDE2LCAyMzIsIDI5LCAyMTYsIDE3NiwgCisgICAgMjQwLCAyMTcsIDQ4LCAyNywgMTYsIDIzMiwgMjksIDIxNiwgMTg4LCA0OCwgMjcsIDE2LCAyMzIsIDI5LCAyMTcsIDE5NCwgCisgICAgMjQwLCAyMTcsIDQ4LCAyNywgMTYsIDIzMiwgMjksIDIxNywgMTk0LCAyMzMsIDE1NywgMjQwLCAyMTcsIDQ4LCAyNywgMTYsIAorICAgIDIzMiwgMjksIDIzMywgMTU3LCAyNDAsIDIxNywgNDgsIDI3LCAxNiwgMjMyLCAyOSwgMjI1LCAyMDcsIDI0MCwgMjE3LCA0OCwgCisgICAgMjcsIDE2LCAyMzYsIDI4LCAyMTcsIDIxNywgMjQwLCAyMTgsIDQ4LCAyNywgMTYsIDI1NCwgMTAwLCAyMTcsIDIxNywgMjQwLCAKKyAgICAyMTgsIDQ4LCAyNywgMTYsIDI0NSwgNSwgMjE3LCAxOTEsIDQ4LCAyNywgMTYsIDI0NSwgNSwgMjMxLCAyNywgNDgsIDI3LCAKKyAgICAxNiwgMjQ1LCA1LCAyNDgsIDQ3LCA0OCwgMjcsIDE2LCAyMzIsIDI5LCAyMTQsIDI0OCwgMjQwLCAyMTcsIDQ4LCAyNywgMTYsIAorICAgIDIzMiwgMjksIDIyNSwgODUsIDI0MCwgMjE3LCA0OCwgMjcsIDE2LCAyMzIsIDI5LCAyMjUsIDIwNywgMjE3LCAxOTQsIDI0MCwgCisgICAgMjE3LCA0OCwgMjcsIDE2LCAyNDIsIDI1MSwgMjMwLCAxNjcsIDI1NCwgMTAzLCA0OCwgMjcsIDE2LCAyNDIsIDI1MSwgMjMwLCAKKyAgICAxNjcsIDI0OCwgMTcsIDQ4LCAyNywgMTYsIDI0NSwgMjI3LCAyMzUsIDEwOSwgMjQ0LCA3MSwgMjE0LCAxMDksIDQ4LCAyNywgCisgICAgMTYsIDIzNiwgMTI1LCA0OCwgMjcsIDE2LCAyMzYsIDEyMywgNDgsIDI3LCAxNiwgMjQ0LCA3MSwgMjU0LCA2MywgMjQ4LCAKKyAgICA5OSwgMjQwLCAyMTYsIDQ4LCAyNywgMTYsIDI0NCwgNzEsIDI0OCwgNjEsIDE5NSwgNDgsIDI3LCAxNiwgMjQ0LCA3MSwgCisgICAgMjQ4LCA2MSwgMjMwLCA5MSwgNDgsIDI3LCAxNiwgMjQ0LCA3MSwgMjMwLCA4NiwgMjQwLCAyMTcsIDQ4LCAyNywgMTYsIAorICAgIDI0NCwgNzEsIDI0OCwgNjEsIDI0OCwgNzYsIDQ4LCAyNywgMTYsIDI0NCwgNzEsIDIyMCwgNDksIDI0OCwgNjAsIDI0OCwgCisgICAgNzYsIDQ4LCAyNywgMTYsIDI0NCwgNzEsIDI0OCwgNjEsIDIzNSwgNDQsIDQ4LCAyNywgMTYsIDI0NCwgNzEsIDI0OCwgNjEsIAorICAgIDIxMiwgMTYsIDQ4LCAyNywgMTYsIDI0NCwgNzEsIDI0OCwgNjEsIDIyOSwgMTI5LCAyMzUsIDU4LCA0OCwgMjcsIDE2LCAKKyAgICAyNDQsIDcxLCAyNDgsIDYxLCAyMjksIDEyOSwgMjU0LCAxMzQsIDQ4LCAyNywgMTYsIDI0NCwgNzEsIDIzMiwgNjksIDI1MCwgCisgICAgMTMzLCAyNDgsIDQ3LCA0OCwgMjcsIDE2LCAyNDQsIDcxLCAyMzIsIDY5LCAyNTAsIDEzMywgMjMxLCAyNywgNDgsIDI3LCAKKyAgICAxNiwgMjQ0LCAyMTEsIDIyMCwgNDksIDI1MCwgMTMzLCAyMTQsIDI0NywgNDgsIDI3LCAxNiwgMjQ0LCA3MSwgMjIwLCA0OSwgCisgICAgMjUwLCAxMzMsIDIxOCwgMTM5LCA0OCwgMjcsIDE2LCAyNDQsIDcxLCAyMjksIDI0NiwgNDgsIDI3LCAxNiwgMjUwLCAxMzQsIAorICAgIDIxMSwgMjQ4LCA0OCwgMjcsIDE2LCAyNTAsIDEzNCwgMjM0LCAxNTYsIDQ4LCAyNywgMTYsIDI1MCwgMTM0LCAyMTksIDIxNiwgCisgICAgNDgsIDI3LCAxNiwgMjQ0LCA3MSwgMjQxLCA3LCAyMTMsIDIsIDIxNywgMTk1LCA0OCwgMjcsIDE2LCAyNDQsIDcxLCAyNDUsIAorICAgIDIyOCwgMjU0LCAxMjQsIDQ4LCAyNywgMTYsIDIxMywgMiwgMjE2LCAxNzcsIDQ4LCAyNywgMTYsIDI0OCwgNTUsIDIxNiwgCisgICAgMTc3LCA0OCwgMjcsIDE2LCAyNDgsIDU1LCAyMTcsIDE5NSwgNDgsIDI3LCAxNiwgMjQ4LCA1NSwgMjU0LCAxMDUsIDI0NiwgCisgICAgMTE4LCAyNDcsIDIxNCwgNDgsIDI3LCAxNiwgMjQ4LCA1NSwgMjMxLCAyNSwgMjE3LCAxOTksIDI0NywgMjE0LCA0OCwgMjcsIAorICAgIDE2LCAyNDgsIDU1LCAyNDgsIDM5LCAyNDUsIDEyNCwgMjQ3LCAyMTQsIDQ4LCAyNywgMTYsIDI0OCwgNTUsIDIxNiwgMTg1LCAKKyAgICAyMjcsIDExNCwgMjQ3LCAyMTQsIDQ4LCAyNywgMTYsIDIxMywgMiwgMjU0LCAxMDUsIDI0NiwgMTE4LCAyNDcsIDIxNCwgNDgsIAorICAgIDI3LCAxNiwgMjEzLCAyLCAyMzEsIDI1LCAyMTcsIDE5OSwgMjQ3LCAyMTQsIDQ4LCAyNywgMTYsIDIxMywgMiwgMjQ4LCAzOSwgCisgICAgMjQ1LCAxMjQsIDI0NywgMjE0LCA0OCwgMjcsIDE2LCAyMTMsIDIsIDIxNiwgMTg1LCAyMjcsIDExNCwgMjQ3LCAyMTQsIDQ4LCAKKyAgICAyNywgMTYsIDI0MywgMTQ1LCAyNDgsIDU0LCA0OCwgMjcsIDE2LCAyNDMsIDE0NSwgMjEzLCAxLCA0OCwgMjcsIDE2LCAyNDgsIAorICAgIDYyLCAyNTQsIDEwNSwgMjMxLCA4MiwgNDgsIDI3LCAxNiwgMjQ4LCA2MiwgMjU0LCAxMDUsIDIzMSwgMjA3LCA0OCwgMjcsIAorICAgIDE2LCAyNDgsIDYyLCAyNDgsIDE4LCA0OCwgMjcsIDE2LCAyNDgsIDYyLCAyMTcsIDE0OCwgNDgsIDI3LCAxNiwgMjIwLCAKKyAgICAxMDgsIDIxNywgMTQ4LCA0OCwgMjcsIDE2LCAyMjAsIDEwOCwgMjE3LCAxNDksIDI0OCwgMywgNDgsIDI3LCAxNiwgMjIwLCAKKyAgICAxMDgsIDIxNywgMTQ5LCAyMTYsIDE3OCwgNDgsIDI3LCAxNiwgMjIwLCAxMDgsIDIxNywgMTQ5LCAyMTcsIDE4OCwgNDgsIAorICAgIDI3LCAxNiwgMjIwLCAxMDgsIDI1NCwgMzAsIDQ4LCAyNywgMTYsIDIyMCwgMTA4LCAyNTQsIDMxLCAyNDgsIDMsIDQ4LCAyNywgCisgICAgMTYsIDIyMCwgMTA4LCAyNTQsIDMxLCAyMTYsIDE3OCwgNDgsIDI3LCAxNiwgMjIwLCAxMDgsIDI1NCwgMzEsIDIxNywgMTg4LCAKKyAgICA0OCwgMjcsIDE2LCAyNDgsIDQwLCAyNDMsIDEyNiwgNDgsIDI3LCAxNiwgMjQ4LCA0NiwgMjI3LCA0MCwgNDgsIDI3LCAxNiwgCisgICAgMjE5LCA5MSwgNDgsIDI3LCAxNiwgMjU0LCA0OSwgMTk1LCA0OCwgMjcsIDE2LCAyNTQsIDQ5LCAyMTQsIDEwOSwgNDgsIDI3LCAKKyAgICAxNiwgMjU0LCA0OSwgMjQzLCAyMzAsIDQ4LCAyNywgMTYsIDI1NCwgNDksIDI0OCwgNzYsIDQ4LCAyNywgMTYsIDI1NCwgNDksIAorICAgIDIzNSwgNDQsIDQ4LCAyNywgMTYsIDI1NCwgNDksIDIxMiwgMTYsIDQ4LCAyNywgMTYsIDI1NCwgNDksIDIyOSwgMTI4LCA0OCwgCisgICAgMjcsIDE2LCAyMzUsIDI0LCAyMjksIDI0NSwgMjMxLCAxNzksIDQ4LCAyNywgMTYsIDIzNSwgMjUsIDIyOSwgMjQ1LCAyMzEsIAorICAgIDE3OSwgNDgsIDI3LCAxNiwgMjM1LCAyNCwgMjI5LCAyNDUsIDIzNSwgNTgsIDQ4LCAyNywgMTYsIDIzNSwgMjUsIDIyOSwgCisgICAgMjQ1LCAyMzUsIDU4LCA0OCwgMjcsIDE2LCAyMzQsIDE1OCwgMjM1LCA1OCwgNDgsIDI3LCAxNiwgMjQyLCAyNTUsIDIyOSwgCisgICAgMjQ1LCAyMzUsIDU4LCAyNywgMTYsIDIyMCwgMTAwLCAyNTIsIDE4MSwgMjcsIDE2LCA1MiwgMjUyLCAxODEsIDI3LCAxNiwgCisgICAgNDEsIDI1MiwgMTgxLCAyNywgMTYsIDIyMywgMjM3LCA0MSwgMjUyLCAxODEsIDI3LCAxNiwgMjQ4LCAyMjIsIDI1MiwgMTgxLCAKKyAgICAyNywgMTYsIDIyMCwgMTk2LCAyNTIsIDE4MSwgMjcsIDE2LCA0MywgMjI0LCA2LCA1MywgMjcsIDE2LCA0NywgMjI0LCA2LCAKKyAgICA1MywgMjcsIDE2LCAyMjQsIDYsIDI0NywgMTkzLCAyNywgMTYsIDI0OSwgNywgMjIyLCAxMDUsIDI3LCAxNiwgMjQ5LCAzMSwgCisgICAgMjUxLCA0OSwgMjcsIDE2LCAyMjIsIDEwNSwgMjcsIDE2LCAyNTAsIDM4LCAyNywgMTYsIDIyNCwgNCwgMjQ0LCAyMDAsIDI3LCAKKyAgICAxNiwgMjI0LCA0LCAyNDQsIDE5OSwgMjcsIDE2LCAyMjQsIDQsIDI0NCwgMTk4LCAyNywgMTYsIDI0NCwgMjIwLCAyNywgMTYsIAorICAgIDI0NCwgMjIxLCA1NSwgMjcsIDE2LCAyNTEsIDIwMSwgNzksIDI3LCAxNiwgMjUxLCA3OSwgMjcsIDE2LCAyNTEsIDIxMSwgCisgICAgMjcsIDE2LCAxMjUsIDI3LCAxNiwgMjI3LCA5NiwgMjE5LCAxMTYsIDI3LCAxNiwgMjE2LCAzMCwgMjE5LCAxMTYsIDI3LCAKKyAgICAxNiwgMjE3LCAxMDksIDIxOSwgMTE2LCAyNywgMTYsIDI0NCwgMTAwLCAyMTksIDExNiwgMjcsIDE2LCAyNDQsIDE2OSwgCisgICAgMjE5LCAxMTYsIDI3LCAxNiwgMjIwLCA3MSwgMjE5LCAxMTYsIDI3LCAxNiwgMjIwLCA2OSwgMjQ0LCA4NCwgMjcsIDE2LCAKKyAgICAyNDQsIDk4LCAyNDQsIDg0LCAyNywgMTYsIDI0NCwgNDIsIDI1MCwgNzQsIDI3LCAxNiwgMjQ0LCA0MiwgMjUwLCA3NSwgCisgICAgMjI3LCA0MiwgMjU0LCAxNzgsIDI3LCAxNiwgMjQ0LCA0MiwgMjUwLCA3NSwgMjI3LCA0MiwgMjUyLCAxNjgsIDI3LCAxNiwgCisgICAgMjUxLCAxMjIsIDI1MCwgNzQsIDI3LCAxNiwgMjQ1LCA5NiwgMjUwLCA3NCwgMjcsIDE2LCAyNDUsIDk2LCAyNTAsIDc1LCAKKyAgICAyMjcsIDQyLCAyNTQsIDE3OCwgMjcsIDE2LCAyNDUsIDk2LCAyNTAsIDc1LCAyMjcsIDQyLCAyNTIsIDE2OCwgMjcsIDE2LCAKKyAgICAyNDYsIDE1OSwgMjUwLCA3MywgMjcsIDE2LCAyNDYsIDE1OSwgMjUwLCA3MiwgMjcsIDE2LCAyMzAsIDIyNSwgMjMxLCAyMjUsIAorICAgIDIyMywgMjQ3LCAyNywgMTYsIDUyLCAyMjEsIDIwLCAyNywgMTYsIDUyLCAyNDQsIDE1NCwgMjcsIDE2LCAyNDQsIDE1NSwgCisgICAgMjE1LCAxNDAsIDI3LCAxNiwgMjQ0LCAxNTUsIDI0NiwgMTgxLCAyNywgMTYsIDIzMCwgNzcsIDIxNSwgMTQwLCAyNywgMTYsIAorICAgIDIzMCwgNzcsIDI0NiwgMTgxLCAyNywgMTYsIDIyMSwgMjEsIDIxNSwgMTQwLCAyNywgMTYsIDIyMSwgMjEsIDI0NiwgMTgxLCAKKyAgICAyNywgMTYsIDIyNCwgMjAyLCAxNjEsIDIyMSwgMjAsIDI3LCAxNiwgMjI0LCAyMDIsIDE2MSwgMjQ0LCAxNTQsIDI3LCAxNiwgCisgICAgMjUwLCAyMSwgMjE3LCA1NCwgMjcsIDE2LCAyNDksIDE1MCwgMjE3LCA1NCwgMjcsIDE2LCAyMjcsIDQyLCAyNTQsIDE3OCwgCisgICAgMjcsIDE2LCAyMjcsIDQyLCAyNTIsIDE2OCwgMjcsIDE2LCAyMjQsIDE4NCwgMjU0LCAxNzgsIDI3LCAxNiwgMjI0LCAxODQsIAorICAgIDI1MiwgMTY4LCAyNywgMTYsIDIzMCwgMjI4LCAyMjMsIDI0NywgMjcsIDE2LCAyMTMsIDIzOSwgMjIzLCAyNDcsIDI3LCAxNiwgCisgICAgMTU3LCAyMjMsIDI0NywgMjcsIDE2LCAyMjQsIDIwMiwgMjIzLCAyNDcsIDI3LCAxNiwgMjQ2LCAxMSwgMjIzLCAyNDcsIDI3LCAKKyAgICAxNiwgMjIwLCA2NSwgMjIzLCAyNDcsIDI3LCAxNiwgMjE3LCAxMjYsIDIyMywgMjQ3LCAyNywgMTYsIDIyMCwgNTcsIDIyMywgCisgICAgMjQ3LCAyNywgMTYsIDEyNCwgMjQxLCA2MywgMjE2LCA0MywgMjIzLCAyNDcsIDI3LCAxNiwgMjEzLCAxNzAsIDIyOCwgMTk3LCAKKyAgICAyNywgMTYsIDk1LCAyMjgsIDE5NywgMjcsIDE2LCAyNTAsIDk2LCAyMTMsIDE3MCwgMjI4LCAxOTcsIDI3LCAxNiwgNDIsIAorICAgIDIyOCwgMTk4LCAyMTMsIDI0MSwgMjcsIDE2LCA0MiwgMjI4LCAxOTgsIDI1MiwgMTMsIDI3LCAxNiwgMjE2LCAxOTcsIDIyOCwgCisgICAgMTk4LCAxMTYsIDIxMywgMjQxLCAyNywgMTYsIDIxNiwgMTk3LCAyMjgsIDE5OCwgMTE2LCAyNTIsIDEzLCAyNywgMTYsIAorICAgIDIxNiwgMTk3LCAyMjgsIDE5OCwgNDMsIDIxMywgMjQxLCAyNywgMTYsIDIxNiwgMTk3LCAyMjgsIDE5OCwgNDMsIDI1MiwgCisgICAgMTMsIDI3LCAxNiwgMjE2LCAxOTcsIDIyOCwgMTk4LCA0NywgMjEzLCAyNDEsIDI3LCAxNiwgMjE2LCAxOTcsIDIyOCwgMTk4LCAKKyAgICA0NywgMjUyLCAxMywgMjcsIDE2LCAyMTYsIDE5NywgMjI4LCAxOTgsIDEyMSwgMjEzLCAyNDEsIDI3LCAxNiwgMjE2LCAxOTcsIAorICAgIDIyOCwgMTk4LCAxMjEsIDI1MiwgMTMsIDI3LCAxNiwgMjE2LCAxOTcsIDIyOCwgMTk4LCAxMTYsIDQ3LCAyMTMsIDI0MSwgCisgICAgMjcsIDE2LCAyMTYsIDE5NywgMjI4LCAxOTgsIDExNiwgNDcsIDI1MiwgMTMsIDI3LCAxNiwgMjMxLCAxMywgMjI4LCAxOTgsIAorICAgIDIxMywgMjQxLCAyNywgMTYsIDIzMSwgMTMsIDIyOCwgMTk4LCAyNTIsIDEzLCAyNywgMTYsIDIxNiwgMTk0LCAyMjgsIDE5OCwgCisgICAgMTIxLCAyMTMsIDI0MSwgMjcsIDE2LCAyMTYsIDE5NCwgMjI4LCAxOTgsIDEyMSwgMjUyLCAxMywgMjcsIDE2LCAyMjYsIAorICAgIDE2OSwgMjI4LCAxOTcsIDI3LCAxNiwgMjE0LCAxMTcsIDIyOCwgMTk3LCAyNywgMTYsIDIyOCwgMTk4LCAyNTIsIDEzLCAyNywgCisgICAgMTYsIDIyOCwgMTAyLCAyMjgsIDE5NywgMjcsIDE2LCAyNTAsIDQ1LCAyMjgsIDE5OCwgMjEzLCAyNDEsIDI3LCAxNiwgMjUwLCAKKyAgICA0NSwgMjI4LCAxOTgsIDI1MiwgMTMsIDI3LCAxNiwgMjUxLCAxOTksIDI3LCAxNiwgMjEzLCAyMzksIDIyOCwgMjAxLCAyNywgCisgICAgMTYsIDE1NywgMjI4LCAyMDEsIDI3LCAxNiwgMjI0LCAyMDIsIDIyOCwgMjAxLCAyNywgMTYsIDI0NiwgMTEsIDIyOCwgMjAxLCAKKyAgICAyNywgMTYsIDIyMCwgNjUsIDIyOCwgMjAxLCAyNywgMTYsIDIxNywgMTI2LCAyMjgsIDIwMSwgMjcsIDE2LCAyMjAsIDU3LCAKKyAgICAyMjgsIDIwMSwgMjcsIDE2LCAxMjQsIDI0MSwgNjMsIDIxNiwgNDMsIDIyOCwgMjAxLCAyNywgMTYsIDM4LCAyMTksIDkzLCAKKyAgICAyNywgMTYsIDM4LCAyMTksIDE5MSwgMjE5LCA5MywgMjcsIDE2LCAzOCwgMjE2LCAyMDUsIDI3LCAxNiwgMzgsIDIxNiwgCisgICAgMjA0LCAyNywgMTYsIDM4LCAyMTYsIDIwMywgMjcsIDE2LCAyNDQsIDE5MCwgMjE2LCAyMDUsIDI3LCAxNiwgMjQ0LCAxOTAsIAorICAgIDIxNiwgMjA0LCAyNywgMTYsIDI0NCwgMTkwLCAyMTYsIDIwMywgMjcsIDE2LCAzOCwgMjUzLCAyMzIsIDI0NywgMTk1LCAyNywgCisgICAgMTYsIDM4LCAyNDQsIDE2MSwgMjcsIDE2LCAzOCwgMjQ0LCAxNjAsIDI3LCAxNiwgMzgsIDI0NCwgMTU5LCAyNywgMTYsIDM4LCAKKyAgICAyNDQsIDE1OCwgMjcsIDE2LCAzOCwgMjQ0LCAxNTcsIDI3LCAxNiwgMjUyLCAxMDQsIDI1MiwgMTIwLCAyNywgMTYsIDI0NSwgCisgICAgMjIyLCAyNTIsIDEyMCwgMjcsIDE2LCAyNTIsIDEwNCwgMjE3LCA3OCwgMjcsIDE2LCAyNDUsIDIyMiwgMjE3LCA3OCwgMjcsIAorICAgIDE2LCAyNTIsIDEwNCwgMjIwLCAyNywgMjcsIDE2LCAyNDUsIDIyMiwgMjIwLCAyNywgMjcsIDE2LCAyNTIsIDEwNCwgMjI2LCAKKyAgICAyNywgMjcsIDE2LCAyNDUsIDIyMiwgMjI2LCAyNywgMjcsIDE2LCAzOCwgMjU1LCA0NiwgMjcsIDE2LCAzOCwgMjE5LCAxMTgsIAorICAgIDI3LCAxNiwgMzgsIDIxNywgMjA0LCAyNywgMTYsIDM4LCAyMTksIDExOSwgMjcsIDE2LCAzOCwgMjMyLCA0MCwgMjcsIDE2LCAKKyAgICAzOCwgMjMyLCAzOSwgMjcsIDE2LCAzOCwgMjU1LCA0NSwgMjcsIDE2LCAzOCwgMjMyLCAyNDEsIDI3LCAxNiwgMjU0LCA0MCwgCisgICAgMjE1LCAxNDAsIDI3LCAxNiwgMjU0LCA0MCwgMjQ2LCAxODEsIDI3LCAxNiwgMzgsIDI0NywgMjEwLCAyNywgMTYsIDM4LCAKKyAgICAyMjMsIDE2MiwgMjcsIDE2LCAzOCwgMjQ0LCAxNDcsIDI3LCAxNiwgMzgsIDIyMCwgMjMsIDI3LCAxNiwgMzgsIDI1MiwgODUsIAorICAgIDI3LCAxNiwgMzgsIDUyLCAyMTYsIDI0NSwgMjcsIDE2LCAzOCwgMjE2LCAxODIsIDIxNiwgMjQ1LCAyNywgMTYsIDIyMywgCisgICAgMTY2LCAyNywgMTYsIDIxOSwgMzQsIDI3LCAxNiwgMjEyLCAxNTIsIDI3LCAxNiwgMjI2LCAxOSwgMjcsIDE2LCAyMzEsIAorICAgIDE2MiwgMjcsIDE2LCAyNDQsIDEwNiwgMjcsIDE2LCAyNDksIDIwMSwgMjcsIDE2LCAyNDgsIDE1MCwgMjcsIDE2LCAyNDIsIAorICAgIDI0NiwgMjI4LCAyMDIsIDIyMCwgNDIsIDI3LCAxNiwgMjQyLCAyNDYsIDIyOCwgMjAyLCAyMjgsIDIyOSwgMjIwLCA0MiwgCisgICAgMjcsIDE2LCAyMTYsIDIyNiwgMjcsIDE2LCAyMTYsIDY3LCAyNywgMTYsIDIzNiwgNTIsIDIxNiwgNjcsIDI3LCAxNiwgMjE2LCAKKyAgICA2OCwgMjIwLCA0MiwgMjcsIDE2LCAyMTYsIDY4LCAyMTUsIDE0MCwgMjcsIDE2LCAyMjcsIDUzLCAyMTksIDU4LCAyNywgMTYsIAorICAgIDIyNywgNTMsIDIxOSwgNTUsIDI3LCAxNiwgMjI3LCA1MywgMjE5LCA1NCwgMjcsIDE2LCAyMjcsIDUzLCAyMTksIDUzLCAyNywgCisgICAgMTYsIDIyNywgNTMsIDIxOSwgNTIsIDI3LCAxNiwgMjI3LCA1MywgMjE5LCA1MSwgMjcsIDE2LCAyMjcsIDUzLCAyMTksIDUwLCAKKyAgICAyNywgMTYsIDIyNywgNTMsIDIxOSwgNDksIDI3LCAxNiwgMjI3LCA1MywgMjE5LCA0OCwgMjcsIDE2LCAyMjcsIDUzLCAyMTksIAorICAgIDU3LCAyNywgMTYsIDIyNywgNTMsIDIxOSwgNTYsIDI3LCAxNiwgMjQyLCA5MiwgMjcsIDE2LCAyMjksIDI1MywgMjcsIDE2LCAKKyAgICAyNDUsIDIyMiwgNjgsIDIxOSwgODcsIDI3LCAxNiwgMjQ4LCAxNDMsIDIyMCwgNDIsIDI3LCAxNiwgMzgsIDEyMSwgMjUxLCAKKyAgICAyMjAsIDI3LCAxNiwgMzgsIDExNiwgMjUxLCAyMjAsIDI3LCAxNiwgMzgsIDI0MiwgMTAzLCAyNywgMTYsIDM4LCAyMjAsIAorICAgIDE0LCAyMjUsIDIxMSwgMjcsIDE2LCAyMjYsIDEyNywgNzksIDI3LCAxNiwgMjI2LCAxMjcsIDExNiwgNzksIDI3LCAxNiwgCisgICAgMTU3LCAyMjYsIDEyNywgNzksIDI3LCAxNiwgMjQzLCAyMiwgMjE1LCAxNDAsIDI3LCAxNiwgMjQzLCAyMiwgMjQ2LCAxODEsIAorICAgIDI3LCAxNiwgMiwgMjQ0LCAxODksIDI3LCAxNiwgMjQ4LCAyNDcsIDI3LCAxNiwgMjQ4LCAyNDgsIDI1NCwgMTkwLCAyNywgCisgICAgMTYsIDIzMiwgMTEsIDI3LCAxNiwgMjMzLCAwLCAyNywgMTYsIDI1MSwgMTk2LCAyNywgMTYsIDIyMSwgOTcsIDIxMywgMjQxLCAKKyAgICAyNywgMTYsIDIyMSwgOTcsIDI1MiwgMTMsIDI3LCAxNiwgMjMxLCA2NywgMjcsIDE2LCAyMzEsIDY4LCAyNTIsIDEzLCAyNywgCisgICAgMTYsIDIyMSwgOTEsIDIxMywgMjQxLCAyNywgMTYsIDIyMSwgOTEsIDI1MiwgMTMsIDI3LCAxNiwgMjQ0LCA1NiwgMjEzLCAKKyAgICAyNDEsIDI3LCAxNiwgMjQ0LCA1NiwgMjUyLCAxMywgMjcsIDE2LCAyMzMsIDEsIDIyNiwgOTEsIDIyMywgMjQ3LCAyNywgMTYsIAorICAgIDIzMywgMSwgMjM2LCAxMTcsIDIyMywgMjQ3LCAyNywgMTYsIDI1MSwgMTk3LCAyMjMsIDI0NywgMjcsIDE2LCAyMjEsIDk3LCAKKyAgICAyMjMsIDI0NywgMjcsIDE2LCAyMzEsIDY4LCAyMjMsIDI0NywgMjcsIDE2LCAyMjEsIDkxLCAyMjMsIDI0NywgMjcsIDE2LCAKKyAgICAyMTcsIDIxNSwgMjI2LCA4OSwgMjQ5LCAxNzEsIDIyNSwgOTQsIDIyNiwgOTAsIDI3LCAxNiwgMjE3LCAyMTUsIDIyNiwgODksIAorICAgIDI0OSwgMTcxLCAyMjUsIDk0LCAyMzYsIDExNiwgMjcsIDE2LCAyMTcsIDIxNSwgMjI2LCA4OSwgMjQ5LCAxNzEsIDIyNSwgCisgICAgOTQsIDIyNiwgOTEsIDI0OCwgMjgsIDI3LCAxNiwgMjE3LCAyMTUsIDIzNiwgMTE1LCAyNDksIDE3MSwgMjI1LCA5NCwgMjI2LCAKKyAgICA5MCwgMjcsIDE2LCAyMTcsIDIxNSwgMjM2LCAxMTUsIDI0OSwgMTcxLCAyMjUsIDk0LCAyMzYsIDExNiwgMjcsIDE2LCAyMTcsIAorICAgIDIxNSwgMjM2LCAxMTUsIDI0OSwgMTcxLCAyMjUsIDk0LCAyMzYsIDExNywgMjQ4LCAyOCwgMjcsIDE2LCAyMTcsIDIxNSwgCisgICAgMjM2LCAxMTUsIDI0OSwgMTcxLCAyMjUsIDk0LCAyMzYsIDExNywgMjQ4LCAyNywgMjcsIDE2LCAyMTcsIDIxNSwgMjM2LCAKKyAgICAxMTUsIDI0OSwgMTcxLCAyMjUsIDk0LCAyMzYsIDExNywgMjQ4LCAyNiwgMjcsIDE2LCAyNDksIDE5NiwgMjcsIDE2LCAyNDIsIAorICAgIDIyNCwgMjUxLCAxMjIsIDI1MCwgNzQsIDI3LCAxNiwgMjQyLCAyMjQsIDI0NSwgOTYsIDI1MCwgNzQsIDI3LCAxNiwgNDIsIAorICAgIDI1MywgMjAxLCAyNywgMTYsIDIxNCwgMTM2LCAyNywgMTYsIDIyNSwgMTg0LCAyNywgMTYsIDI1MCwgNjUsIDI3LCAxNiwgCisgICAgMjIyLCAxNDQsIDI3LCAxNiwgMjUwLCA2OSwgMjcsIDE2LCAyMTYsIDIzMywgMjcsIDE2LCAyMjUsIDE1OCwgMjcsIDE2LCAKKyAgICAyMjUsIDE1OSwgMjQ0LCAxNDksIDI3LCAxNiwgMjIyLCAxNDUsIDI0NCwgMTQ5LCAyNywgMTYsIDIxNiwgMjM0LCAyMjMsIAorICAgIDI0NCwgMjcsIDE2LCAyMjYsIDc1LCAyMTksIDI1LCAyNSwgMjE0LCAxMjIsIDE3OSwgMjE4LCAxODgsIDI1LCAyMTQsIDEyMiwgCisgICAgMTc5LCAyMTgsIDE3NywgMjUsIDIxNCwgMTIyLCAxNzksIDIxOCwgMTY3LCAyNSwgMjE0LCAxMjIsIDE3OSwgMjE4LCAxNjAsIAorICAgIDI1LCAyMTQsIDEyMiwgMTc5LCAyMTgsIDE1MiwgMjUsIDIxNCwgMTIyLCAxNzksIDIxOCwgMTQ2LCAyNSwgMjE0LCAxMjIsIAorICAgIDE3OSwgMjE4LCAxNDUsIDI1LCAyMTQsIDEyMiwgMTc5LCAyMTgsIDE0NCwgMjUsIDIxNCwgMTIyLCAxNzksIDIxOCwgMTQzLCAKKyAgICAyNSwgMjE0LCAxMjIsIDE3OSwgMjE4LCAxODcsIDI1LCAyMTQsIDEyMiwgMTc5LCAyMTgsIDE4NiwgMjUsIDIxNCwgMTIyLCAKKyAgICAxNzksIDIxOCwgMTg1LCAyNSwgMjE0LCAxMjIsIDE3OSwgMjE4LCAxODQsIDI1LCAyMTQsIDEyMiwgMTc5LCAyMTgsIDE4MywgCisgICAgMjUsIDIxNCwgMTIyLCAxNzksIDIxOCwgMTgyLCAyNSwgMjE0LCAxMjIsIDE3OSwgMjE4LCAxODEsIDI1LCAyMTQsIDEyMiwgCisgICAgMTc5LCAyMTgsIDE4MCwgMjUsIDIxNCwgMTIyLCAxNzksIDIxOCwgMTc5LCAyNSwgMjE0LCAxMjIsIDE3OSwgMjE4LCAxNzgsIAorICAgIDI1LCAyMTQsIDEyMiwgMTc5LCAyMTgsIDE3NiwgMjUsIDIxNCwgMTIyLCAxNzksIDIxOCwgMTc1LCAyNSwgMjE0LCAxMjIsIAorICAgIDE3OSwgMjE4LCAxNzQsIDI1LCAyMTQsIDEyMiwgMTc5LCAyMTgsIDE3MywgMjUsIDIxNCwgMTIyLCAxNzksIDIxOCwgMTcyLCAKKyAgICAyNSwgMjE0LCAxMjIsIDE3OSwgMjE4LCAxNTEsIDI1LCAyMTQsIDEyMiwgMTc5LCAyMTgsIDE1MCwgMjUsIDIxNCwgMTIyLCAKKyAgICAxNzksIDIxOCwgMTQ5LCAyNSwgMjE0LCAxMjIsIDE3OSwgMjE4LCAxNDgsIDI1LCAyMTQsIDEyMiwgMTc5LCAyMTgsIDE0NywgCisgICAgMjUsIDIzNiwgNzIsIDE3OSwgMjE4LCAxODgsIDI1LCAyMzYsIDcyLCAxNzksIDIxOCwgMTc3LCAyNSwgMjM2LCA3MiwgMTc5LCAKKyAgICAyMTgsIDE2MCwgMjUsIDIzNiwgNzIsIDE3OSwgMjE4LCAxNTIsIDI1LCAyMzYsIDcyLCAxNzksIDIxOCwgMTQ1LCAyNSwgCisgICAgMjM2LCA3MiwgMTc5LCAyMTgsIDE0NCwgMjUsIDIzNiwgNzIsIDE3OSwgMjE4LCAxODYsIDI1LCAyMzYsIDcyLCAxNzksIAorICAgIDIxOCwgMTg1LCAyNSwgMjM2LCA3MiwgMTc5LCAyMTgsIDE4NCwgMjUsIDIzNiwgNzIsIDE3OSwgMjE4LCAxODMsIDI1LCAKKyAgICAyMzYsIDcyLCAxNzksIDIxOCwgMTgwLCAyNSwgMjM2LCA3MiwgMTc5LCAyMTgsIDE3OSwgMjUsIDIzNiwgNzIsIDE3OSwgCisgICAgMjE4LCAxNzgsIDI1LCAyMzYsIDcyLCAxNzksIDIxOCwgMTczLCAyNSwgMjM2LCA3MiwgMTc5LCAyMTgsIDE3MiwgMjUsIAorICAgIDIzNiwgNzIsIDE3OSwgMjE4LCAxNzEsIDI1LCAyMzYsIDcyLCAxNzksIDIxOCwgMTcwLCAyNSwgMjM2LCA3MiwgMTc5LCAKKyAgICAyMTgsIDE2OSwgMjUsIDIzNiwgNzIsIDE3OSwgMjE4LCAxNjgsIDI1LCAyMzYsIDcyLCAxNzksIDIxOCwgMTY2LCAyNSwgCisgICAgMjM2LCA3MiwgMTc5LCAyMTgsIDE2NSwgMjUsIDIzNiwgNzIsIDE3OSwgMjE4LCAxNjQsIDI1LCAyMzYsIDcyLCAxNzksIAorICAgIDIxOCwgMTYzLCAyNSwgMjM2LCA3MiwgMTc5LCAyMTgsIDE2MiwgMjUsIDIzNiwgNzIsIDE3OSwgMjE4LCAxNjEsIDI1LCAKKyAgICAyMzYsIDcyLCAxNzksIDIxOCwgMTU5LCAyNSwgMjM2LCA3MiwgMTc5LCAyMTgsIDE1OCwgMjUsIDIzNiwgNzIsIDE3OSwgCisgICAgMjE4LCAxNTcsIDI1LCAyMzYsIDcyLCAxNzksIDIxOCwgMTU2LCAyNSwgMjM2LCA3MiwgMTc5LCAyMTgsIDE1NSwgMjUsIAorICAgIDIzNiwgNzIsIDE3OSwgMjE4LCAxNTQsIDI1LCAyMzYsIDcyLCAxNzksIDIxOCwgMTUzLCAyNSwgMjM2LCA3MiwgMTc5LCAKKyAgICAyMTgsIDE1MSwgMjUsIDIzNiwgNzIsIDE3OSwgMjE4LCAxNTAsIDI1LCAyMzYsIDcyLCAxNzksIDIxOCwgMTQ5LCAyNSwgCisgICAgMjM2LCA3MiwgMTc5LCAyMTgsIDE0OCwgMjUsIDIzNiwgNzIsIDE3OSwgMjE4LCAxNDcsIDM4LCAyNSwgMjcsIDIxNiwgMTc5LCAKKyAgICAzOCwgMjUsIDI3LCAyMTcsIDE4OSwgMzgsIDI1LCAyNywgMjI2LCA5OSwgMjUsIDI3LCAyMzMsIDE1MywgMjMxLCAyNiwgMzEsIAorICAgIDI0NiwgNDQsIDI0OCwgNDEsIDMxLCAyNDIsIDY5LCAyNDYsIDQ0LCAyNDgsIDQxLCAzMSwgMjQxLCA2NiwgMjQ2LCA0NCwgCisgICAgMjQ4LCA0MSwgMzEsIDI0NiwgNDMsIDI0MiwgNzAsIDI0OCwgNDEsIDMxLCAyNDYsIDQzLCAyNDEsIDY1LCAyNDgsIDQxLCAKKyAgICAzMSwgMjQ2LCA0NCwgMTc0LCAzMSwgMjUwLCAyMzEsIDE3NCwgMzEsIDI0NCwgNjQsIDI1MCwgOTUsIDE3NCwgMzEsIDIzMSwgCisgICAgNjAsIDE3NCwgMzEsIDI1MiwgMTc2LCAxNzQsIDMxLCAyMzUsIDQxLCAyMjAsIDI2LCAxNzQsIDMxLCAyNDksIDI0MSwgMTc0LCAKKyAgICAzMSwgMjU0LCAxOSwgMTc0LCAzMSwgMjI3LCA2NywgMTc0LCAzMSwgMjUxLCAyMDUsIDIyNywgMzYsIDE3NCwgMzEsIDI0OCwgCisgICAgMTQ1LCAxNzEsIDI0NywgMjUyLCAxNzQsIDMxLCAyNDcsIDI0OSwgMTc0LCAzMSwgMjEyLCAyMTQsIDE3NCwgMzEsIDIzNiwgCisgICAgMTA0LCAxNzQsIDMxLCAyMjYsIDEwOCwgMTc0LCAzMSwgMjI0LCA1NCwgMTc0LCAzMSwgMjQ5LCAyNTEsIDE3NCwgMzEsIAorICAgIDI0MSwgMTY1LCAyNTIsIDIyOCwgMTc0LCAzMSwgMjE0LCA0NiwgMTc0LCAzMSwgMjQ0LCAxMjgsIDE3NCwgMzEsIDI1NSwgCisgICAgMjMsIDE3NCwgMzEsIDIyNCwgMTcsIDE3NCwgMzEsIDIyMywgMjUxLCAxNzQsIDMxLCAyNDYsIDQyLCAxNzQsIDMxLCAyMzUsIAorICAgIDE3MCwgMTc0LCAzMSwgMjQ5LCAyNDYsIDE3NCwgMzEsIDI0NSwgMjIxLCAxNzQsIDMxLCAyNDYsIDEyOCwgMTc0LCAzMSwgCisgICAgMjUwLCAyMDQsIDE3NCwgMzEsIDI0OCwgMTU0LCAxNzQsIDMxLCAyMywgMjIzLCAyNTAsIDE3NCwgMzEsIDIyNiwgMjQzLCAKKyAgICAxNzQsIDMxLCAyMzMsIDE1NiwgMTc0LCAzMSwgMjUwLCA1OCwgMTc0LCAzMSwgMjM0LCAxOTcsIDE3NCwgMzEsIDI0MywgCisgICAgMTgyLCAxNzQsIDMxLCAyMTksIDY2LCAxNzQsIDMxLCAyMjUsIDUyLCAxNzQsIDMxLCAyNDQsIDYzLCAxNzQsIDMxLCAyMjMsIAorICAgIDI1MiwgMTc0LCAzMSwgMjMzLCAxOTMsIDE3MSwgMjMxLCA0MSwgMTc0LCAzMSwgMjIzLCAyNDgsIDE3NCwgMzEsIDI0MywgOCwgCisgICAgMjE3LCAxMCwgMjMxLCAyMTEsIDE3NCwgMzEsIDI0NSwgMjIzLCAxNzQsIDMxLCAyMTksIDc4LCAxNzQsIDMxLCAyNDIsIAorICAgIDIyNiwgMTc0LCAzMSwgMjQ1LCAyMTUsIDE3NCwgMzEsIDIyNiwgMTQ1LCAxNzQsIDMxLCAyMjMsIDE1NiwgMTc0LCAzMSwgCisgICAgMjQ0LCAxNDgsIDE3NCwgMzEsIDIxNCwgMjQ2LCAxNzEsIDIxNCwgMzEsIDE3NCwgMzEsIDI0OSwgMjU1LCAxNzQsIDMxLCAKKyAgICAyMzEsIDIyNCwgMTc0LCAzMSwgMjQ1LCAxNDgsIDE3NCwgMzEsIDIxNSwgMTQ5LCAxNzQsIDMxLCAyNDgsIDI5LCAxNzQsIAorICAgIDMxLCAyNTAsIDYwLCAyMzAsIDI1MCwgMTc0LCAzMSwgMjQyLCAyMDgsIDE3NCwgMzEsIDI0MywgMTgzLCAyMzYsIDExMiwgCisgICAgMTc0LCAzMSwgMjMyLCAxOSwgMTc0LCAzMSwgMjU1LCA0MiwgMTc0LCAzMSwgMjQ1LCAyMzYsIDE3NCwgMzEsIDI0NiwgMTg0LCAKKyAgICAxNzQsIDMxLCAyMTQsIDI5LCAxNzQsIDMxLCAyMjAsIDk3LCAxNzQsIDMxLCAyMzYsIDgwLCAxNzQsIDMxLCAyNDgsIDExNCwgCisgICAgMTc0LCAzMSwgMjQ4LCAyMjcsIDE3NCwgMzEsIDI0OCwgMjUsIDE3NCwgMzEsIDI0NSwgMTE3LCAxNzQsIDMxLCAyMjEsIDU5LCAKKyAgICAxNzQsIDMxLCAyMTksIDgyLCAxNzQsIDMxLCAyNDIsIDEwNSwgMTc0LCAzMSwgMjUwLCAxNywgMTc0LCAzMSwgMjUwLCA1NSwgCisgICAgMTc0LCAzMSwgMjQ1LCAxMCwgMTc0LCAzMSwgMjU0LCAyNDUsIDE3NCwgMzEsIDI1MCwgMTYsIDE3NCwgMzEsIDIyNywgMTAwLCAKKyAgICAyMTcsIDE2MiwgMjE0LCAyMjQsIDE3NCwgMzEsIDI0OCwgNDksIDE3NCwgMzEsIDIzMywgMjQ1LCAxNzQsIDMxLCAyNDQsIAorICAgIDEwMywgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTUsIDE1MSwgMjEsIDExOCwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTUsIDE1MSwgCisgICAgMjEsIDExMiwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTUsIDE1MSwgMjEsIDE3MCwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTUsIAorICAgIDE1MSwgMjEsIDE2NywgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTUsIDE1MSwgMjEsIDE4NSwgMjQ5LCAyMTEsIDIyMywgMTM3LCAKKyAgICAyMTUsIDE1MSwgMjEsIDE5MiwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTUsIDE1MSwgMjEsIDIwMCwgMjQ5LCAyMTEsIDIyMywgCisgICAgMTM3LCAyMTUsIDE1MSwgMjEsIDE5OCwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTUsIDE1MSwgMjEsIDIwMywgMjQ5LCAyMTEsIAorICAgIDIyMywgMTM3LCAyMTcsIDIwOSwgMjEsIDExOCwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTcsIDIwOSwgMjEsIDExMiwgMjQ5LCAKKyAgICAyMTEsIDIyMywgMTM3LCAyMTcsIDIwOSwgMjEsIDE3MCwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTcsIDIwOSwgMjEsIDE2NywgCisgICAgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTcsIDIwOSwgMjEsIDE4NSwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTcsIDIwOSwgMjEsIAorICAgIDE5MiwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTcsIDIwOSwgMjEsIDIwMCwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTcsIDIwOSwgCisgICAgMjEsIDE5OCwgMjQ5LCAyMTEsIDIyMywgMTM3LCAyMTcsIDIwOSwgMjEsIDIwMywgMTQsIDIzLCA2LCA2MywgMTQsIDIzLCA2LCAKKyAgICAyNTMsIDIwMSwgMTQsIDIzLCA2LCAyNTEsIDEyMSwgMTQsIDIzLCA2LCAyNDksIDEyNSwgMTQsIDIzLCA2LCA3NywgMTQsIAorICAgIDIzLCA2LCAyNDUsIDk1LCAxNCwgMjMsIDYsIDI0NCwgNDEsIDE0LCAyMywgNiwgMjQyLCAxNjIsIDE0LCAyMywgNiwgNzUsIAorICAgIDE0LCAyMywgNiwgMjM2LCAzLCAxNCwgMjMsIDYsIDIzNSwgMTQxLCAxNCwgMjMsIDYsIDE1NSwgMTQsIDIzLCA2LCAxODQsIAorICAgIDE0LCAyMywgNiwgMjA2LCAxNCwgMjMsIDYsIDc4LCAxNCwgMjMsIDYsIDIyNywgMTEsIDE0LCAyMywgNiwgMjI1LCAxOSwgCisgICAgMTQsIDIzLCA2LCAxNTIsIDE0LCAyMywgNiwgMTk2LCAxNCwgMjMsIDYsIDIxOCwgMTEzLCAxNCwgMjMsIDYsIDcyLCAxNCwgCisgICAgMjMsIDYsIDIxMSwgMjExLCAxNCwgMjMsIDYsIDIxNCwgODUsIDE0LCAyMywgNiwgMjEzLCAxNjksIDE0LCAyMywgNiwgMjEzLCAKKyAgICAxMDgsIDE0LCAyMywgNiwgMjEyLCAxNTIsIDE0LCAyMywgNCwgNjMsIDE0LCAyMywgNCwgMjUzLCAyMDEsIDE0LCAyMywgNCwgCisgICAgMjUxLCAxMjEsIDE0LCAyMywgNCwgMjQ5LCAxMjUsIDE0LCAyMywgNCwgNzcsIDE0LCAyMywgNCwgMjQ1LCA5NSwgMTQsIDIzLCAKKyAgICA0LCAyNDQsIDQxLCAxNCwgMjMsIDQsIDI0MiwgMTYyLCAxNCwgMjMsIDQsIDc1LCAxNCwgMjMsIDQsIDIzNiwgMywgMTQsIAorICAgIDIzLCA0LCAyMzUsIDE0MSwgMTQsIDIzLCA0LCAxNTUsIDE0LCAyMywgNCwgMTg0LCAxNCwgMjMsIDQsIDIwNiwgMTQsIDIzLCAKKyAgICA0LCA3OCwgMTQsIDIzLCA0LCAyMjcsIDExLCAxNCwgMjMsIDQsIDIyNSwgMTksIDE0LCAyMywgNCwgMTUyLCAxNCwgMjMsIDQsIAorICAgIDE5NiwgMTQsIDIzLCA0LCAyMTgsIDExMywgMTQsIDIzLCA0LCA3MiwgMTQsIDIzLCA0LCAyMTEsIDIxMSwgMTQsIDIzLCA0LCAKKyAgICAyMTQsIDg1LCAxNCwgMjMsIDQsIDIxMywgMTY5LCAxNCwgMjMsIDQsIDIxMywgMTA4LCAxNCwgMjMsIDQsIDIxMiwgMTUyLCAKKyAgICAxNCwgMzIsIDYsIDYzLCAxNCwgMzIsIDYsIDI1MywgMjAxLCAxNCwgMzIsIDYsIDI1MSwgMTIxLCAxNCwgMzIsIDYsIDI0OSwgCisgICAgMTI1LCAxNCwgMzIsIDYsIDc3LCAxNCwgMzIsIDYsIDI0NSwgOTUsIDE0LCAzMiwgNiwgMjQ0LCA0MSwgMTQsIDMyLCA2LCAKKyAgICAyNDIsIDE2MiwgMTQsIDMyLCA2LCA3NSwgMTQsIDMyLCA2LCAyMzYsIDMsIDE0LCAzMiwgNiwgMjM1LCAxNDEsIDE0LCAzMiwgCisgICAgNiwgMTU1LCAxNCwgMzIsIDYsIDE4NCwgMTQsIDMyLCA2LCAyMDYsIDE0LCAzMiwgNiwgNzgsIDE0LCAzMiwgNiwgMjI3LCAKKyAgICAxMSwgMTQsIDMyLCA2LCAyMjUsIDE5LCAxNCwgMzIsIDYsIDE1MiwgMTQsIDMyLCA2LCAxOTYsIDE0LCAzMiwgNiwgMjE4LCAKKyAgICAxMTMsIDE0LCAzMiwgNiwgNzIsIDE0LCAzMiwgNiwgMjExLCAyMTEsIDE0LCAzMiwgNiwgMjE0LCA4NSwgMTQsIDMyLCA2LCAKKyAgICAyMTMsIDE2OSwgMTQsIDMyLCA2LCAyMTMsIDEwOCwgMTQsIDMyLCA2LCAyMTIsIDE1MiwgMTQsIDMyLCA0LCA2MywgMTQsIAorICAgIDMyLCA0LCAyNTMsIDIwMSwgMTQsIDMyLCA0LCAyNTEsIDEyMSwgMTQsIDMyLCA0LCAyNDksIDEyNSwgMTQsIDMyLCA0LCA3NywgCisgICAgMTQsIDMyLCA0LCAyNDUsIDk1LCAxNCwgMzIsIDQsIDI0NCwgNDEsIDE0LCAzMiwgNCwgNzUsIDE0LCAzMiwgNCwgMjM2LCAzLCAKKyAgICAxNCwgMzIsIDQsIDIzNSwgMTQxLCAxNCwgMzIsIDQsIDE1NSwgMTQsIDMyLCA0LCAxODQsIDE0LCAzMiwgNCwgMjA2LCAxNCwgCisgICAgMzIsIDQsIDc4LCAxNCwgMzIsIDQsIDIyNywgMTEsIDE0LCAzMiwgNCwgMjI1LCAxOSwgMTQsIDMyLCA0LCAxNTIsIDE0LCAKKyAgICAzMiwgNCwgMTk2LCAxNCwgMzIsIDQsIDIxOCwgMTEzLCAxNCwgMzIsIDQsIDcyLCAxNCwgMzIsIDQsIDIxMSwgMjExLCAxNCwgCisgICAgMzIsIDQsIDIxNCwgODUsIDE0LCAzMiwgNCwgMjEzLCAxNjksIDE0LCAzMiwgNCwgMjEzLCAxMDgsIDE0LCAzMiwgNCwgMjEyLCAKKyAgICAxNTIsIDE0LCAyMywgMzIsIDYsIDYzLCAxNCwgMjMsIDMyLCA2LCAyNTMsIDIwMSwgMTQsIDIzLCAzMiwgNiwgMjUxLCAxMjEsIAorICAgIDE0LCAyMywgMzIsIDYsIDI0OSwgMTI1LCAxNCwgMjMsIDMyLCA2LCA3NywgMTQsIDIzLCAzMiwgNiwgMjQ1LCA5NSwgMTQsIAorICAgIDIzLCAzMiwgNiwgMjQ0LCA0MSwgMTQsIDIzLCAzMiwgNiwgMjQyLCAxNjIsIDE0LCAyMywgMzIsIDYsIDc1LCAxNCwgMjMsIAorICAgIDMyLCA2LCAyMzYsIDMsIDE0LCAyMywgMzIsIDYsIDIzNSwgMTQxLCAxNCwgMjMsIDMyLCA2LCAxNTUsIDE0LCAyMywgMzIsIAorICAgIDYsIDE4NCwgMTQsIDIzLCAzMiwgNiwgMjA2LCAxNCwgMjMsIDMyLCA2LCA3OCwgMTQsIDIzLCAzMiwgNiwgMjI3LCAxMSwgCisgICAgMTQsIDIzLCAzMiwgNiwgMjI1LCAxOSwgMTQsIDIzLCAzMiwgNiwgMTUyLCAxNCwgMjMsIDMyLCA2LCAxOTYsIDE0LCAyMywgCisgICAgMzIsIDYsIDIxOCwgMTEzLCAxNCwgMjMsIDMyLCA2LCA3MiwgMTQsIDIzLCAzMiwgNiwgMjExLCAyMTEsIDE0LCAyMywgMzIsIAorICAgIDYsIDIxNCwgODUsIDE0LCAyMywgMzIsIDYsIDIxMywgMTY5LCAxNCwgMjMsIDMyLCA2LCAyMTMsIDEwOCwgMTQsIDIzLCAzMiwgCisgICAgNiwgMjEyLCAxNTIsIDE0LCAyMywgMzIsIDQsIDYzLCAxNCwgMjMsIDMyLCA0LCAyNTMsIDIwMSwgMTQsIDIzLCAzMiwgNCwgCisgICAgMjUxLCAxMjEsIDE0LCAyMywgMzIsIDQsIDI0OSwgMTI1LCAxNCwgMjMsIDMyLCA0LCA3NywgMTQsIDIzLCAzMiwgNCwgMjQ1LCAKKyAgICA5NSwgMTQsIDIzLCAzMiwgNCwgMjQ0LCA0MSwgMTQsIDIzLCAzMiwgNCwgMjQyLCAxNjIsIDE0LCAyMywgMzIsIDQsIDc1LCAKKyAgICAxNCwgMjMsIDMyLCA0LCAyMzYsIDMsIDE0LCAyMywgMzIsIDQsIDIzNSwgMTQxLCAxNCwgMjMsIDMyLCA0LCAxNTUsIDE0LCAKKyAgICAyMywgMzIsIDQsIDE4NCwgMTQsIDIzLCAzMiwgNCwgMjA2LCAxNCwgMjMsIDMyLCA0LCA3OCwgMTQsIDIzLCAzMiwgNCwgCisgICAgMjI3LCAxMSwgMTQsIDIzLCAzMiwgNCwgMjI1LCAxOSwgMTQsIDIzLCAzMiwgNCwgMTUyLCAxNCwgMjMsIDMyLCA0LCAxOTYsIAorICAgIDE0LCAyMywgMzIsIDQsIDIxOCwgMTEzLCAxNCwgMjMsIDMyLCA0LCA3MiwgMTQsIDIzLCAzMiwgNCwgMjExLCAyMTEsIDE0LCAKKyAgICAyMywgMzIsIDQsIDIxNCwgODUsIDE0LCAyMywgMzIsIDQsIDIxMywgMTY5LCAxNCwgMjMsIDMyLCA0LCAyMTMsIDEwOCwgMTQsIAorICAgIDIzLCAzMiwgNCwgMjEyLCAxNTIsIDE0LCAxMTUsIDYsIDYzLCAxNCwgMTE1LCA2LCAyNTEsIDEyMSwgMTQsIDExNSwgNiwgCisgICAgMjQ5LCAxMjUsIDE0LCAxMTUsIDYsIDI0NCwgNDEsIDE0LCAxMTUsIDYsIDIzNiwgMywgMTQsIDExNSwgNiwgMjM1LCAxNDEsIAorICAgIDE0LCAxMTUsIDYsIDIwNiwgMTQsIDExNSwgNiwgNzgsIDE0LCAxMTUsIDYsIDIyNywgMTEsIDE0LCAxMTUsIDYsIDIyNSwgCisgICAgMTksIDE0LCAxMTUsIDYsIDE5NiwgMTQsIDExNSwgNiwgMjE4LCAxMTMsIDE0LCAxMTUsIDYsIDcyLCAxNCwgMTE1LCA2LCAKKyAgICAyMTEsIDIxMSwgMTQsIDExNSwgNiwgMjE0LCA4NSwgMTQsIDExNSwgNiwgMjEzLCAxNjksIDE0LCAxMTUsIDYsIDIxMywgCisgICAgMTA4LCAxNCwgMTE1LCA2LCAyMTIsIDE1MiwgMTQsIDExNSwgNCwgNjMsIDE0LCAxMTUsIDQsIDI1MywgMjAxLCAxNCwgMTE1LCAKKyAgICA0LCAyNTEsIDEyMSwgMTQsIDExNSwgNCwgMjQ5LCAxMjUsIDE0LCAxMTUsIDQsIDI0NSwgOTUsIDE0LCAxMTUsIDQsIDI0MiwgCisgICAgMTYyLCAxNCwgMTE1LCA0LCA3NSwgMTQsIDExNSwgNCwgMjM2LCAzLCAxNCwgMTE1LCA0LCAyMzUsIDE0MSwgMTQsIDExNSwgCisgICAgNCwgMTU1LCAxNCwgMTE1LCA0LCAxODQsIDE0LCAxMTUsIDQsIDIwNiwgMTQsIDExNSwgNCwgMjI3LCAxMSwgMTQsIDExNSwgCisgICAgNCwgMjI1LCAxOSwgMTQsIDExNSwgNCwgMTUyLCAxNCwgMTE1LCA0LCAxOTYsIDE0LCAxMTUsIDQsIDIxOCwgMTEzLCAxNCwgCisgICAgMTE1LCA0LCA3MiwgMTQsIDExNSwgNCwgMjExLCAyMTEsIDE0LCAxMTUsIDQsIDIxNCwgODUsIDE0LCAxMTUsIDQsIDIxMywgCisgICAgMTY5LCAxNCwgMTE1LCA0LCAyMTMsIDEwOCwgMTQsIDExNSwgNCwgMjEyLCAxNTIsIDE0LCAyMywgMTE1LCA2LCA2MywgMTQsIAorICAgIDIzLCAxMTUsIDYsIDI1MywgMjAxLCAxNCwgMjMsIDExNSwgNiwgMjUxLCAxMjEsIDE0LCAyMywgMTE1LCA2LCAyNDksIDEyNSwgCisgICAgMTQsIDIzLCAxMTUsIDYsIDc3LCAxNCwgMjMsIDExNSwgNiwgMjQ1LCA5NSwgMTQsIDIzLCAxMTUsIDYsIDI0NCwgNDEsIDE0LCAKKyAgICAyMywgMTE1LCA2LCAyNDIsIDE2MiwgMTQsIDIzLCAxMTUsIDYsIDc1LCAxNCwgMjMsIDExNSwgNiwgMjM2LCAzLCAxNCwgMjMsIAorICAgIDExNSwgNiwgMjM1LCAxNDEsIDE0LCAyMywgMTE1LCA2LCAxNTUsIDE0LCAyMywgMTE1LCA2LCAxODQsIDE0LCAyMywgMTE1LCAKKyAgICA2LCAyMDYsIDE0LCAyMywgMTE1LCA2LCA3OCwgMTQsIDIzLCAxMTUsIDYsIDIyNywgMTEsIDE0LCAyMywgMTE1LCA2LCAyMjUsIAorICAgIDE5LCAxNCwgMjMsIDExNSwgNiwgMTUyLCAxNCwgMjMsIDExNSwgNiwgMTk2LCAxNCwgMjMsIDExNSwgNiwgMjE4LCAxMTMsIAorICAgIDE0LCAyMywgMTE1LCA2LCA3MiwgMTQsIDIzLCAxMTUsIDYsIDIxMSwgMjExLCAxNCwgMjMsIDExNSwgNiwgMjE0LCA4NSwgCisgICAgMTQsIDIzLCAxMTUsIDYsIDIxMywgMTY5LCAxNCwgMjMsIDExNSwgNiwgMjEzLCAxMDgsIDE0LCAyMywgMTE1LCA2LCAyMTIsIAorICAgIDE1MiwgMTQsIDIzLCAxMTUsIDQsIDYzLCAxNCwgMjMsIDExNSwgNCwgMjUzLCAyMDEsIDE0LCAyMywgMTE1LCA0LCAyNTEsIAorICAgIDEyMSwgMTQsIDIzLCAxMTUsIDQsIDI0OSwgMTI1LCAxNCwgMjMsIDExNSwgNCwgNzcsIDE0LCAyMywgMTE1LCA0LCAyNDUsIAorICAgIDk1LCAxNCwgMjMsIDExNSwgNCwgMjQ0LCA0MSwgMTQsIDIzLCAxMTUsIDQsIDI0MiwgMTYyLCAxNCwgMjMsIDExNSwgNCwgCisgICAgNzUsIDE0LCAyMywgMTE1LCA0LCAyMzYsIDMsIDE0LCAyMywgMTE1LCA0LCAyMzUsIDE0MSwgMTQsIDIzLCAxMTUsIDQsIAorICAgIDE1NSwgMTQsIDIzLCAxMTUsIDQsIDE4NCwgMTQsIDIzLCAxMTUsIDQsIDIwNiwgMTQsIDIzLCAxMTUsIDQsIDc4LCAxNCwgCisgICAgMjMsIDExNSwgNCwgMjI3LCAxMSwgMTQsIDIzLCAxMTUsIDQsIDIyNSwgMTksIDE0LCAyMywgMTE1LCA0LCAxNTIsIDE0LCAKKyAgICAyMywgMTE1LCA0LCAxOTYsIDE0LCAyMywgMTE1LCA0LCAyMTgsIDExMywgMTQsIDIzLCAxMTUsIDQsIDcyLCAxNCwgMjMsIAorICAgIDExNSwgNCwgMjExLCAyMTEsIDE0LCAyMywgMTE1LCA0LCAyMTQsIDg1LCAxNCwgMjMsIDExNSwgNCwgMjEzLCAxNjksIDE0LCAKKyAgICAyMywgMTE1LCA0LCAyMTMsIDEwOCwgMTQsIDIzLCAxMTUsIDQsIDIxMiwgMTUyLCAxNCwgMTMxLCA2LCA2MywgMTQsIDEzMSwgCisgICAgNiwgMjUzLCAyMDEsIDE0LCAxMzEsIDYsIDI0OSwgMTI1LCAxNCwgMTMxLCA2LCA3NywgMTQsIDEzMSwgNiwgMjQ1LCA5NSwgCisgICAgMTQsIDEzMSwgNiwgMjQ0LCA0MSwgMTQsIDEzMSwgNiwgMjM2LCAzLCAxNCwgMTMxLCA2LCAyMzUsIDE0MSwgMTQsIDEzMSwgCisgICAgNiwgMTU1LCAxNCwgMTMxLCA2LCAxODQsIDE0LCAxMzEsIDYsIDIwNiwgMTQsIDEzMSwgNiwgNzgsIDE0LCAxMzEsIDYsIAorICAgIDIyNywgMTEsIDE0LCAxMzEsIDYsIDIyNSwgMTksIDE0LCAxMzEsIDYsIDE5NiwgMTQsIDEzMSwgNiwgMjE4LCAxMTMsIDE0LCAKKyAgICAxMzEsIDYsIDcyLCAxNCwgMTMxLCA2LCAyMTEsIDIxMSwgMTQsIDEzMSwgNiwgMjE0LCA4NSwgMTQsIDEzMSwgNiwgMjEzLCAKKyAgICAxNjksIDE0LCAxMzEsIDYsIDIxMywgMTA4LCAxNCwgMTMxLCA0LCA2MywgMTQsIDEzMSwgNCwgMjUzLCAyMDEsIDE0LCAxMzEsIAorICAgIDQsIDI1MSwgMTIxLCAxNCwgMTMxLCA0LCAyNDksIDEyNSwgMTQsIDEzMSwgNCwgNzcsIDE0LCAxMzEsIDQsIDI0NSwgOTUsIAorICAgIDE0LCAxMzEsIDQsIDI0NCwgNDEsIDE0LCAxMzEsIDQsIDI0MiwgMTYyLCAxNCwgMTMxLCA0LCA3NSwgMTQsIDEzMSwgNCwgCisgICAgMjM2LCAzLCAxNCwgMTMxLCA0LCAyMzUsIDE0MSwgMTQsIDEzMSwgNCwgMTU1LCAxNCwgMTMxLCA0LCAxODQsIDE0LCAxMzEsIAorICAgIDQsIDIwNiwgMTQsIDEzMSwgNCwgNzgsIDE0LCAxMzEsIDQsIDIyNywgMTEsIDE0LCAxMzEsIDQsIDIyNSwgMTksIDE0LCAKKyAgICAxMzEsIDQsIDE1MiwgMTQsIDEzMSwgNCwgMTk2LCAxNCwgMTMxLCA0LCAyMTgsIDExMywgMTQsIDEzMSwgNCwgNzIsIDE0LCAKKyAgICAxMzEsIDQsIDIxMSwgMjExLCAxNCwgMTMxLCA0LCAyMTQsIDg1LCAxNCwgMTMxLCA0LCAyMTMsIDE2OSwgMTQsIDEzMSwgNCwgCisgICAgMjEzLCAxMDgsIDE0LCAxMzEsIDQsIDIxMiwgMTUyLCAxNCwgMTkwLCA2LCA2MywgMTQsIDE5MCwgNiwgMjUzLCAyMDEsIDE0LCAKKyAgICAxOTAsIDYsIDI0OSwgMTI1LCAxNCwgMTkwLCA2LCA3NywgMTQsIDE5MCwgNiwgMjQ1LCA5NSwgMTQsIDE5MCwgNiwgMjQ0LCAKKyAgICA0MSwgMTQsIDE5MCwgNiwgNzUsIDE0LCAxOTAsIDYsIDIzNiwgMywgMTQsIDE5MCwgNiwgMjM1LCAxNDEsIDE0LCAxOTAsIDYsIAorICAgIDE1NSwgMTQsIDE5MCwgNiwgMTg0LCAxNCwgMTkwLCA2LCA3OCwgMTQsIDE5MCwgNiwgMTk2LCAxNCwgMTkwLCA2LCAyMTgsIAorICAgIDExMywgMTQsIDE5MCwgNiwgNzIsIDE0LCAxOTAsIDYsIDIxMSwgMjExLCAxNCwgMTkwLCA2LCAyMTQsIDg1LCAxNCwgMTkwLCAKKyAgICA2LCAyMTMsIDE2OSwgMTQsIDE5MCwgNiwgMjEzLCAxMDgsIDE0LCAxOTAsIDQsIDYzLCAxNCwgMTkwLCA0LCAyNTMsIDIwMSwgCisgICAgMTQsIDE5MCwgNCwgMjUxLCAxMjEsIDE0LCAxOTAsIDQsIDI0OSwgMTI1LCAxNCwgMTkwLCA0LCA3NywgMTQsIDE5MCwgNCwgCisgICAgMjQ1LCA5NSwgMTQsIDE5MCwgNCwgMjQ0LCA0MSwgMTQsIDE5MCwgNCwgMjQyLCAxNjIsIDE0LCAxOTAsIDQsIDc1LCAxNCwgCisgICAgMTkwLCA0LCAyMzYsIDMsIDE0LCAxOTAsIDQsIDIzNSwgMTQxLCAxNCwgMTkwLCA0LCAxNTUsIDE0LCAxOTAsIDQsIDE4NCwgCisgICAgMTQsIDE5MCwgNCwgMjA2LCAxNCwgMTkwLCA0LCA3OCwgMTQsIDE5MCwgNCwgMjI3LCAxMSwgMTQsIDE5MCwgNCwgMjI1LCAKKyAgICAxOSwgMTQsIDE5MCwgNCwgMTUyLCAxNCwgMTkwLCA0LCAxOTYsIDE0LCAxOTAsIDQsIDIxOCwgMTEzLCAxNCwgMTkwLCA0LCAKKyAgICA3MiwgMTQsIDE5MCwgNCwgMjExLCAyMTEsIDE0LCAxOTAsIDQsIDIxNCwgODUsIDE0LCAxOTAsIDQsIDIxMywgMTY5LCAxNCwgCisgICAgMTkwLCA0LCAyMTMsIDEwOCwgMTQsIDE5MCwgNCwgMjEyLCAxNTIsIDE0LCAyMywgMTMxLCA2LCA2MywgMTQsIDIzLCAxMzEsIAorICAgIDYsIDI1MywgMjAxLCAxNCwgMjMsIDEzMSwgNiwgMjUxLCAxMjEsIDE0LCAyMywgMTMxLCA2LCAyNDksIDEyNSwgMTQsIDIzLCAKKyAgICAxMzEsIDYsIDc3LCAxNCwgMjMsIDEzMSwgNiwgMjQ1LCA5NSwgMTQsIDIzLCAxMzEsIDYsIDI0NCwgNDEsIDE0LCAyMywgCisgICAgMTMxLCA2LCAyNDIsIDE2MiwgMTQsIDIzLCAxMzEsIDYsIDc1LCAxNCwgMjMsIDEzMSwgNiwgMjM2LCAzLCAxNCwgMjMsIAorICAgIDEzMSwgNiwgMjM1LCAxNDEsIDE0LCAyMywgMTMxLCA2LCAxNTUsIDE0LCAyMywgMTMxLCA2LCAxODQsIDE0LCAyMywgMTMxLCAKKyAgICA2LCAyMDYsIDE0LCAyMywgMTMxLCA2LCA3OCwgMTQsIDIzLCAxMzEsIDYsIDIyNywgMTEsIDE0LCAyMywgMTMxLCA2LCAyMjUsIAorICAgIDE5LCAxNCwgMjMsIDEzMSwgNiwgMTUyLCAxNCwgMjMsIDEzMSwgNiwgMTk2LCAxNCwgMjMsIDEzMSwgNiwgMjE4LCAxMTMsIAorICAgIDE0LCAyMywgMTMxLCA2LCA3MiwgMTQsIDIzLCAxMzEsIDYsIDIxMSwgMjExLCAxNCwgMjMsIDEzMSwgNiwgMjE0LCA4NSwgCisgICAgMTQsIDIzLCAxMzEsIDYsIDIxMywgMTY5LCAxNCwgMjMsIDEzMSwgNiwgMjEzLCAxMDgsIDE0LCAyMywgMTMxLCA2LCAyMTIsIAorICAgIDE1MiwgMTQsIDIzLCAxMzEsIDQsIDYzLCAxNCwgMjMsIDEzMSwgNCwgMjUzLCAyMDEsIDE0LCAyMywgMTMxLCA0LCAyNTEsIAorICAgIDEyMSwgMTQsIDIzLCAxMzEsIDQsIDI0OSwgMTI1LCAxNCwgMjMsIDEzMSwgNCwgNzcsIDE0LCAyMywgMTMxLCA0LCAyNDUsIAorICAgIDk1LCAxNCwgMjMsIDEzMSwgNCwgMjQ0LCA0MSwgMTQsIDIzLCAxMzEsIDQsIDI0MiwgMTYyLCAxNCwgMjMsIDEzMSwgNCwgCisgICAgNzUsIDE0LCAyMywgMTMxLCA0LCAyMzYsIDMsIDE0LCAyMywgMTMxLCA0LCAyMzUsIDE0MSwgMTQsIDIzLCAxMzEsIDQsIAorICAgIDE1NSwgMTQsIDIzLCAxMzEsIDQsIDE4NCwgMTQsIDIzLCAxMzEsIDQsIDIwNiwgMTQsIDIzLCAxMzEsIDQsIDc4LCAxNCwgCisgICAgMjMsIDEzMSwgNCwgMjI3LCAxMSwgMTQsIDIzLCAxMzEsIDQsIDIyNSwgMTksIDE0LCAyMywgMTMxLCA0LCAxNTIsIDE0LCAKKyAgICAyMywgMTMxLCA0LCAxOTYsIDE0LCAyMywgMTMxLCA0LCAyMTgsIDExMywgMTQsIDIzLCAxMzEsIDQsIDcyLCAxNCwgMjMsIAorICAgIDEzMSwgNCwgMjExLCAyMTEsIDE0LCAyMywgMTMxLCA0LCAyMTQsIDg1LCAxNCwgMjMsIDEzMSwgNCwgMjEzLCAxNjksIDE0LCAKKyAgICAyMywgMTMxLCA0LCAyMTMsIDEwOCwgMTQsIDIzLCAxMzEsIDQsIDIxMiwgMTUyLCAxNCwgMzUsIDYsIDYzLCAxNCwgMzUsIDYsIAorICAgIDI1MywgMjAxLCAxNCwgMzUsIDYsIDI1MSwgMTIxLCAxNCwgMzUsIDYsIDI0OSwgMTI1LCAxNCwgMzUsIDYsIDc3LCAxNCwgCisgICAgMzUsIDYsIDI0NSwgOTUsIDE0LCAzNSwgNiwgMjQ0LCA0MSwgMTQsIDM1LCA2LCAyNDIsIDE2MiwgMTQsIDM1LCA2LCA3NSwgCisgICAgMTQsIDM1LCA2LCAyMzYsIDMsIDE0LCAzNSwgNiwgMjM1LCAxNDEsIDE0LCAzNSwgNiwgMTU1LCAxNCwgMzUsIDYsIDE4NCwgCisgICAgMTQsIDM1LCA2LCAyMDYsIDE0LCAzNSwgNiwgNzgsIDE0LCAzNSwgNiwgMjI3LCAxMSwgMTQsIDM1LCA2LCAyMjUsIDE5LCAKKyAgICAxNCwgMzUsIDYsIDE1MiwgMTQsIDM1LCA2LCAxOTYsIDE0LCAzNSwgNiwgMjE4LCAxMTMsIDE0LCAzNSwgNiwgNzIsIDE0LCAKKyAgICAzNSwgNiwgMjExLCAyMTEsIDE0LCAzNSwgNiwgMjE0LCA4NSwgMTQsIDM1LCA2LCAyMTMsIDE2OSwgMTQsIDM1LCA2LCAyMTMsIAorICAgIDEwOCwgMTQsIDM1LCA2LCAyMTIsIDE1MiwgMTQsIDM1LCA0LCA2MywgMTQsIDM1LCA0LCAyNTMsIDIwMSwgMTQsIDM1LCA0LCAKKyAgICAyNTEsIDEyMSwgMTQsIDM1LCA0LCAyNDksIDEyNSwgMTQsIDM1LCA0LCA3NywgMTQsIDM1LCA0LCAyNDUsIDk1LCAxNCwgMzUsIAorICAgIDQsIDI0NCwgNDEsIDE0LCAzNSwgNCwgMjQyLCAxNjIsIDE0LCAzNSwgNCwgNzUsIDE0LCAzNSwgNCwgMjM2LCAzLCAxNCwgCisgICAgMzUsIDQsIDIzNSwgMTQxLCAxNCwgMzUsIDQsIDE1NSwgMTQsIDM1LCA0LCAxODQsIDE0LCAzNSwgNCwgMjA2LCAxNCwgMzUsIAorICAgIDQsIDc4LCAxNCwgMzUsIDQsIDIyNywgMTEsIDE0LCAzNSwgNCwgMjI1LCAxOSwgMTQsIDM1LCA0LCAxNTIsIDE0LCAzNSwgNCwgCisgICAgMTk2LCAxNCwgMzUsIDQsIDIxOCwgMTEzLCAxNCwgMzUsIDQsIDcyLCAxNCwgMzUsIDQsIDIxMSwgMjExLCAxNCwgMzUsIDQsIAorICAgIDIxNCwgODUsIDE0LCAzNSwgNCwgMjEzLCAxNjksIDE0LCAzNSwgNCwgMjEzLCAxMDgsIDE0LCAzNSwgNCwgMjEyLCAxNTIsIAorICAgIDE0LCAzNSwgMjMsIDYsIDYzLCAxNCwgMzUsIDIzLCA2LCAyNTMsIDIwMSwgMTQsIDM1LCAyMywgNiwgMjUxLCAxMjEsIDE0LCAKKyAgICAzNSwgMjMsIDYsIDI0OSwgMTI1LCAxNCwgMzUsIDIzLCA2LCA3NywgMTQsIDM1LCAyMywgNiwgMjQ1LCA5NSwgMTQsIDM1LCAKKyAgICAyMywgNiwgMjQ0LCA0MSwgMTQsIDM1LCAyMywgNiwgMjQyLCAxNjIsIDE0LCAzNSwgMjMsIDYsIDc1LCAxNCwgMzUsIDIzLCAKKyAgICA2LCAyMzYsIDMsIDE0LCAzNSwgMjMsIDYsIDIzNSwgMTQxLCAxNCwgMzUsIDIzLCA2LCAxNTUsIDE0LCAzNSwgMjMsIDYsIAorICAgIDE4NCwgMTQsIDM1LCAyMywgNiwgMjA2LCAxNCwgMzUsIDIzLCA2LCA3OCwgMTQsIDM1LCAyMywgNiwgMjI3LCAxMSwgMTQsIAorICAgIDM1LCAyMywgNiwgMjI1LCAxOSwgMTQsIDM1LCAyMywgNiwgMTUyLCAxNCwgMzUsIDIzLCA2LCAxOTYsIDE0LCAzNSwgMjMsIAorICAgIDYsIDIxOCwgMTEzLCAxNCwgMzUsIDIzLCA2LCA3MiwgMTQsIDM1LCAyMywgNiwgMjExLCAyMTEsIDE0LCAzNSwgMjMsIDYsIAorICAgIDIxNCwgODUsIDE0LCAzNSwgMjMsIDYsIDIxMywgMTY5LCAxNCwgMzUsIDIzLCA2LCAyMTMsIDEwOCwgMTQsIDM1LCAyMywgNiwgCisgICAgMjEyLCAxNTIsIDE0LCAzNSwgMjMsIDQsIDYzLCAxNCwgMzUsIDIzLCA0LCAyNTMsIDIwMSwgMTQsIDM1LCAyMywgNCwgMjUxLCAKKyAgICAxMjEsIDE0LCAzNSwgMjMsIDQsIDI0OSwgMTI1LCAxNCwgMzUsIDIzLCA0LCA3NywgMTQsIDM1LCAyMywgNCwgMjQ1LCA5NSwgCisgICAgMTQsIDM1LCAyMywgNCwgMjQ0LCA0MSwgMTQsIDM1LCAyMywgNCwgMjQyLCAxNjIsIDE0LCAzNSwgMjMsIDQsIDc1LCAxNCwgCisgICAgMzUsIDIzLCA0LCAyMzYsIDMsIDE0LCAzNSwgMjMsIDQsIDIzNSwgMTQxLCAxNCwgMzUsIDIzLCA0LCAxNTUsIDE0LCAzNSwgCisgICAgMjMsIDQsIDE4NCwgMTQsIDM1LCAyMywgNCwgMjA2LCAxNCwgMzUsIDIzLCA0LCA3OCwgMTQsIDM1LCAyMywgNCwgMjI3LCAKKyAgICAxMSwgMTQsIDM1LCAyMywgNCwgMjI1LCAxOSwgMTQsIDM1LCAyMywgNCwgMTUyLCAxNCwgMzUsIDIzLCA0LCAxOTYsIDE0LCAKKyAgICAzNSwgMjMsIDQsIDIxOCwgMTEzLCAxNCwgMzUsIDIzLCA0LCA3MiwgMTQsIDM1LCAyMywgNCwgMjExLCAyMTEsIDE0LCAzNSwgCisgICAgMjMsIDQsIDIxNCwgODUsIDE0LCAzNSwgMjMsIDQsIDIxMywgMTY5LCAxNCwgMzUsIDIzLCA0LCAyMTMsIDEwOCwgMTQsIDM1LCAKKyAgICAyMywgNCwgMjEyLCAxNTIsIDE0LCAzNSwgMzIsIDYsIDYzLCAxNCwgMzUsIDMyLCA2LCAyNTMsIDIwMSwgMTQsIDM1LCAzMiwgCisgICAgNiwgMjUxLCAxMjEsIDE0LCAzNSwgMzIsIDYsIDI0OSwgMTI1LCAxNCwgMzUsIDMyLCA2LCA3NywgMTQsIDM1LCAzMiwgNiwgCisgICAgMjQ1LCA5NSwgMTQsIDM1LCAzMiwgNiwgMjQ0LCA0MSwgMTQsIDM1LCAzMiwgNiwgMjQyLCAxNjIsIDE0LCAzNSwgMzIsIDYsIAorICAgIDc1LCAxNCwgMzUsIDMyLCA2LCAyMzYsIDMsIDE0LCAzNSwgMzIsIDYsIDIzNSwgMTQxLCAxNCwgMzUsIDMyLCA2LCAxNTUsIAorICAgIDE0LCAzNSwgMzIsIDYsIDE4NCwgMTQsIDM1LCAzMiwgNiwgMjA2LCAxNCwgMzUsIDMyLCA2LCA3OCwgMTQsIDM1LCAzMiwgNiwgCisgICAgMjI3LCAxMSwgMTQsIDM1LCAzMiwgNiwgMjI1LCAxOSwgMTQsIDM1LCAzMiwgNiwgMTUyLCAxNCwgMzUsIDMyLCA2LCAxOTYsIAorICAgIDE0LCAzNSwgMzIsIDYsIDIxOCwgMTEzLCAxNCwgMzUsIDMyLCA2LCA3MiwgMTQsIDM1LCAzMiwgNiwgMjExLCAyMTEsIDE0LCAKKyAgICAzNSwgMzIsIDYsIDIxNCwgODUsIDE0LCAzNSwgMzIsIDYsIDIxMywgMTY5LCAxNCwgMzUsIDMyLCA2LCAyMTMsIDEwOCwgMTQsIAorICAgIDM1LCAzMiwgNiwgMjEyLCAxNTIsIDE0LCAzNSwgMzIsIDQsIDYzLCAxNCwgMzUsIDMyLCA0LCAyNTMsIDIwMSwgMTQsIDM1LCAKKyAgICAzMiwgNCwgMjUxLCAxMjEsIDE0LCAzNSwgMzIsIDQsIDI0OSwgMTI1LCAxNCwgMzUsIDMyLCA0LCA3NywgMTQsIDM1LCAzMiwgCisgICAgNCwgMjQ1LCA5NSwgMTQsIDM1LCAzMiwgNCwgMjQ0LCA0MSwgMTQsIDM1LCAzMiwgNCwgMjQyLCAxNjIsIDE0LCAzNSwgMzIsIAorICAgIDQsIDc1LCAxNCwgMzUsIDMyLCA0LCAyMzYsIDMsIDE0LCAzNSwgMzIsIDQsIDIzNSwgMTQxLCAxNCwgMzUsIDMyLCA0LCAKKyAgICAxNTUsIDE0LCAzNSwgMzIsIDQsIDE4NCwgMTQsIDM1LCAzMiwgNCwgMjA2LCAxNCwgMzUsIDMyLCA0LCA3OCwgMTQsIDM1LCAKKyAgICAzMiwgNCwgMjI3LCAxMSwgMTQsIDM1LCAzMiwgNCwgMjI1LCAxOSwgMTQsIDM1LCAzMiwgNCwgMTUyLCAxNCwgMzUsIDMyLCAKKyAgICA0LCAxOTYsIDE0LCAzNSwgMzIsIDQsIDIxOCwgMTEzLCAxNCwgMzUsIDMyLCA0LCA3MiwgMTQsIDM1LCAzMiwgNCwgMjExLCAKKyAgICAyMTEsIDE0LCAzNSwgMzIsIDQsIDIxNCwgODUsIDE0LCAzNSwgMzIsIDQsIDIxMywgMTY5LCAxNCwgMzUsIDMyLCA0LCAyMTMsIAorICAgIDEwOCwgMTQsIDM1LCAzMiwgNCwgMjEyLCAxNTIsIDE0LCAzNSwgMjMsIDMyLCA2LCA2MywgMTQsIDM1LCAyMywgMzIsIDYsIAorICAgIDI1MywgMjAxLCAxNCwgMzUsIDIzLCAzMiwgNiwgMjUxLCAxMjEsIDE0LCAzNSwgMjMsIDMyLCA2LCAyNDksIDEyNSwgMTQsIAorICAgIDM1LCAyMywgMzIsIDYsIDc3LCAxNCwgMzUsIDIzLCAzMiwgNiwgMjQ1LCA5NSwgMTQsIDM1LCAyMywgMzIsIDYsIDI0NCwgCisgICAgNDEsIDE0LCAzNSwgMjMsIDMyLCA2LCAyNDIsIDE2MiwgMTQsIDM1LCAyMywgMzIsIDYsIDc1LCAxNCwgMzUsIDIzLCAzMiwgCisgICAgNiwgMjM2LCAzLCAxNCwgMzUsIDIzLCAzMiwgNiwgMjM1LCAxNDEsIDE0LCAzNSwgMjMsIDMyLCA2LCAxNTUsIDE0LCAzNSwgCisgICAgMjMsIDMyLCA2LCAxODQsIDE0LCAzNSwgMjMsIDMyLCA2LCAyMDYsIDE0LCAzNSwgMjMsIDMyLCA2LCA3OCwgMTQsIDM1LCAKKyAgICAyMywgMzIsIDYsIDIyNywgMTEsIDE0LCAzNSwgMjMsIDMyLCA2LCAyMjUsIDE5LCAxNCwgMzUsIDIzLCAzMiwgNiwgMTUyLCAKKyAgICAxNCwgMzUsIDIzLCAzMiwgNiwgMTk2LCAxNCwgMzUsIDIzLCAzMiwgNiwgMjE4LCAxMTMsIDE0LCAzNSwgMjMsIDMyLCA2LCAKKyAgICA3MiwgMTQsIDM1LCAyMywgMzIsIDYsIDIxMSwgMjExLCAxNCwgMzUsIDIzLCAzMiwgNiwgMjE0LCA4NSwgMTQsIDM1LCAyMywgCisgICAgMzIsIDYsIDIxMywgMTY5LCAxNCwgMzUsIDIzLCAzMiwgNiwgMjEzLCAxMDgsIDE0LCAzNSwgMjMsIDMyLCA2LCAyMTIsIAorICAgIDE1MiwgMTQsIDM1LCAyMywgMzIsIDQsIDYzLCAxNCwgMzUsIDIzLCAzMiwgNCwgMjUzLCAyMDEsIDE0LCAzNSwgMjMsIDMyLCAKKyAgICA0LCAyNTEsIDEyMSwgMTQsIDM1LCAyMywgMzIsIDQsIDI0OSwgMTI1LCAxNCwgMzUsIDIzLCAzMiwgNCwgNzcsIDE0LCAzNSwgCisgICAgMjMsIDMyLCA0LCAyNDUsIDk1LCAxNCwgMzUsIDIzLCAzMiwgNCwgMjQ0LCA0MSwgMTQsIDM1LCAyMywgMzIsIDQsIDI0MiwgCisgICAgMTYyLCAxNCwgMzUsIDIzLCAzMiwgNCwgNzUsIDE0LCAzNSwgMjMsIDMyLCA0LCAyMzYsIDMsIDE0LCAzNSwgMjMsIDMyLCA0LCAKKyAgICAyMzUsIDE0MSwgMTQsIDM1LCAyMywgMzIsIDQsIDE1NSwgMTQsIDM1LCAyMywgMzIsIDQsIDE4NCwgMTQsIDM1LCAyMywgMzIsIAorICAgIDQsIDIwNiwgMTQsIDM1LCAyMywgMzIsIDQsIDc4LCAxNCwgMzUsIDIzLCAzMiwgNCwgMjI3LCAxMSwgMTQsIDM1LCAyMywgCisgICAgMzIsIDQsIDIyNSwgMTksIDE0LCAzNSwgMjMsIDMyLCA0LCAxNTIsIDE0LCAzNSwgMjMsIDMyLCA0LCAxOTYsIDE0LCAzNSwgCisgICAgMjMsIDMyLCA0LCAyMTgsIDExMywgMTQsIDM1LCAyMywgMzIsIDQsIDcyLCAxNCwgMzUsIDIzLCAzMiwgNCwgMjExLCAyMTEsIAorICAgIDE0LCAzNSwgMjMsIDMyLCA0LCAyMTQsIDg1LCAxNCwgMzUsIDIzLCAzMiwgNCwgMjEzLCAxNjksIDE0LCAzNSwgMjMsIDMyLCAKKyAgICA0LCAyMTMsIDEwOCwgMTQsIDM1LCAyMywgMzIsIDQsIDIxMiwgMTUyLCAxNCwgMjMxLCAyMiwgNiwgNjMsIDE0LCAyMzEsIAorICAgIDIyLCA2LCAyNTMsIDIwMSwgMTQsIDIzMSwgMjIsIDYsIDI1MSwgMTIxLCAxNCwgMjMxLCAyMiwgNiwgMjQ5LCAxMjUsIDE0LCAKKyAgICAyMzEsIDIyLCA2LCA3NywgMTQsIDIzMSwgMjIsIDYsIDI0NSwgOTUsIDE0LCAyMzEsIDIyLCA2LCAyNDQsIDQxLCAxNCwgCisgICAgMjMxLCAyMiwgNiwgMjQyLCAxNjIsIDE0LCAyMzEsIDIyLCA2LCA3NSwgMTQsIDIzMSwgMjIsIDYsIDIzNiwgMywgMTQsIAorICAgIDIzMSwgMjIsIDYsIDIzNSwgMTQxLCAxNCwgMjMxLCAyMiwgNiwgMTU1LCAxNCwgMjMxLCAyMiwgNiwgMTg0LCAxNCwgMjMxLCAKKyAgICAyMiwgNiwgMjA2LCAxNCwgMjMxLCAyMiwgNiwgNzgsIDE0LCAyMzEsIDIyLCA2LCAyMjcsIDExLCAxNCwgMjMxLCAyMiwgNiwgCisgICAgMjI1LCAxOSwgMTQsIDIzMSwgMjIsIDYsIDE1MiwgMTQsIDIzMSwgMjIsIDYsIDE5NiwgMTQsIDIzMSwgMjIsIDYsIDIxOCwgCisgICAgMTEzLCAxNCwgMjMxLCAyMiwgNiwgNzIsIDE0LCAyMzEsIDIyLCA2LCAyMTEsIDIxMSwgMTQsIDIzMSwgMjIsIDYsIDIxNCwgCisgICAgODUsIDE0LCAyMzEsIDIyLCA2LCAyMTMsIDE2OSwgMTQsIDIzMSwgMjIsIDYsIDIxMywgMTA4LCAxNCwgMjMxLCAyMiwgNiwgCisgICAgMjEyLCAxNTIsIDE0LCAyMzEsIDIyLCA0LCA2MywgMTQsIDIzMSwgMjIsIDQsIDI1MywgMjAxLCAxNCwgMjMxLCAyMiwgNCwgCisgICAgMjUxLCAxMjEsIDE0LCAyMzEsIDIyLCA0LCAyNDksIDEyNSwgMTQsIDIzMSwgMjIsIDQsIDc3LCAxNCwgMjMxLCAyMiwgNCwgCisgICAgMjQ1LCA5NSwgMTQsIDIzMSwgMjIsIDQsIDI0NCwgNDEsIDE0LCAyMzEsIDIyLCA0LCAyNDIsIDE2MiwgMTQsIDIzMSwgMjIsIAorICAgIDQsIDc1LCAxNCwgMjMxLCAyMiwgNCwgMjM2LCAzLCAxNCwgMjMxLCAyMiwgNCwgMjM1LCAxNDEsIDE0LCAyMzEsIDIyLCA0LCAKKyAgICAxNTUsIDE0LCAyMzEsIDIyLCA0LCAxODQsIDE0LCAyMzEsIDIyLCA0LCAyMDYsIDE0LCAyMzEsIDIyLCA0LCA3OCwgMTQsIAorICAgIDIzMSwgMjIsIDQsIDIyNywgMTEsIDE0LCAyMzEsIDIyLCA0LCAyMjUsIDE5LCAxNCwgMjMxLCAyMiwgNCwgMTUyLCAxNCwgCisgICAgMjMxLCAyMiwgNCwgMTk2LCAxNCwgMjMxLCAyMiwgNCwgMjE4LCAxMTMsIDE0LCAyMzEsIDIyLCA0LCA3MiwgMTQsIDIzMSwgCisgICAgMjIsIDQsIDIxMSwgMjExLCAxNCwgMjMxLCAyMiwgNCwgMjE0LCA4NSwgMTQsIDIzMSwgMjIsIDQsIDIxMywgMTY5LCAxNCwgCisgICAgMjMxLCAyMiwgNCwgMjEzLCAxMDgsIDE0LCAyMzEsIDIyLCA0LCAyMTIsIDE1MiwgMTQsIDMyLCA0LCAyNDcsIDE5NCwgNzUsIAorICAgIDE0LCAzMiwgNCwgMjQ3LCAxOTQsIDIzNiwgMywgMTQsIDIzLCA2LCAyNTQsIDE3OSwgMTQsIDIzLCA2LCAyNTIsIDczLCAxNCwgCisgICAgMjMsIDYsIDI0MywgMjAzLCAxNCwgMjMsIDYsIDI0OCwgMTI2LCAxNCwgMjMsIDYsIDI0NSwgMTg0LCAxNCwgMjMsIDYsIAorICAgIDIxMiwgNzgsIDE0LCAyMywgNiwgMjQ1LCAxNDksIDE0LCAyMywgNiwgMjE3LCAxNDUsIDE0LCAyMywgNiwgMjM2LCA0NCwgCisgICAgMTQsIDIzLCA2LCAyMzUsIDg0LCAxNCwgMjMsIDYsIDIzMywgMjIwLCAxNCwgMjMsIDYsIDIzMCwgMjQyLCAxNCwgMjMsIDYsIAorICAgIDIyOCwgMTM1LCAxNCwgMjMsIDYsIDIxMywgMTQ4LCAxNCwgMjMsIDYsIDIyNywgMTAyLCAxNCwgMjMsIDYsIDIyNiwgMjAsIAorICAgIDE0LCAyMywgNiwgMjIzLCAyMjQsIDE0LCAyMywgNiwgMjE3LCAxNDYsIDg4LCAxNCwgMjMsIDYsIDIyMCwgMTIyLCAxNCwgCisgICAgMjMsIDYsIDIxOCwgNSwgMTQsIDIzLCA2LCAyMTUsIDEzNCwgMTQsIDIzLCA2LCAyMjYsIDQ1LCAxNCwgMjMsIDYsIDI1MCwgCisgICAgMTcwLCAxNCwgMjMsIDYsIDIyNSwgODIsIDE0LCAyMywgNiwgMjI3LCAxMDQsIDE0LCAyMywgMjMwLCAxMDgsIDE0LCAyMywgCisgICAgNCwgMjU0LCAxNzksIDE0LCAyMywgNCwgMjUyLCA3MywgMTQsIDIzLCA0LCAyNDMsIDIwMywgMTQsIDIzLCA0LCAyNDgsIAorICAgIDEyNiwgMTQsIDIzLCA0LCAyNDUsIDE4NCwgMTQsIDIzLCA0LCAyMTIsIDc4LCAxNCwgMjMsIDQsIDI0NSwgMTQ5LCAxNCwgCisgICAgMjMsIDQsIDIxNywgMTQ1LCAxNCwgMjMsIDQsIDIzNiwgNDQsIDE0LCAyMywgNCwgMjM1LCA4NCwgMTQsIDIzLCA0LCAyMzMsIAorICAgIDIyMCwgMTQsIDIzLCA0LCAyMzAsIDI0MiwgMTQsIDIzLCA0LCAyMjgsIDEzNSwgMTQsIDIzLCA0LCAyMTMsIDE0OCwgMTQsIAorICAgIDIzLCA0LCAyMjcsIDEwMiwgMTQsIDIzLCA0LCAyMjYsIDIwLCAxNCwgMjMsIDQsIDIyMywgMjI0LCAxNCwgMjMsIDQsIDQxLCAKKyAgICAyMjAsIDEyMiwgMTQsIDIzLCA0LCAyMjAsIDEyMiwgMTQsIDIzLCA0LCAyMTgsIDUsIDE0LCAyMywgNCwgMjE1LCAxMzQsIAorICAgIDE0LCAyMywgNCwgMjI2LCA0NSwgMTQsIDIzLCA0LCAyNTAsIDE3MCwgMTQsIDIzLCA0LCAyMjUsIDgyLCAxNCwgMjMsIDQsIAorICAgIDIyNywgMTA0LCAxNCwgMjMsIDIyNiwgMTYyLCAyNDgsIDUwLCAxNCwgMjMsIDI0NSwgMTg1LCA4OCwgMTQsIDIzLCAyMTcsIAorICAgIDE0NiwgODgsIDE0LCAyMywgMjM1LCA4NSwgODgsIDE0LCAyMywgMjI2LCA0NiwgODgsIDE0LCAyMywgMjIzLCAyMjUsIDg4LCAKKyAgICAxNCwgMjMsIDIyNiwgMjEsIDg4LCAxNCwgMzIsIDYsIDI1NCwgMTc5LCAxNCwgMzIsIDYsIDI1MiwgNzMsIDE0LCAzMiwgNiwgCisgICAgMjQzLCAyMDMsIDE0LCAzMiwgNiwgMjQ4LCAxMjYsIDE0LCAzMiwgNiwgMjQ1LCAxODQsIDE0LCAzMiwgNiwgMjEyLCA3OCwgCisgICAgMTQsIDMyLCA2LCAyNDUsIDE0OSwgMTQsIDMyLCA2LCAyMTcsIDE0NSwgMTQsIDMyLCA2LCAyMzYsIDQ0LCAxNCwgMzIsIDYsIAorICAgIDIzNSwgODQsIDE0LCAzMiwgNiwgMjMzLCAyMjAsIDE0LCAzMiwgNiwgMjMwLCAyNDIsIDE0LCAzMiwgNiwgMjI4LCAxMzUsIAorICAgIDE0LCAzMiwgNiwgMjEzLCAxNDgsIDE0LCAzMiwgNiwgMjI3LCAxMDIsIDE0LCAzMiwgNiwgMjI2LCAyMCwgMTQsIDMyLCA2LCAKKyAgICAyMjMsIDIyNCwgMTQsIDMyLCA2LCAyMTcsIDE0NiwgODgsIDE0LCAzMiwgNiwgMjIwLCAxMjIsIDE0LCAzMiwgNiwgMjE4LCAKKyAgICA1LCAxNCwgMzIsIDYsIDIxNSwgMTM0LCAxNCwgMzIsIDYsIDIyNiwgNDUsIDE0LCAzMiwgNiwgMjUwLCAxNzAsIDE0LCAzMiwgCisgICAgNiwgMjI1LCA4MiwgMTQsIDMyLCA2LCAyMjcsIDEwNCwgMTQsIDMyLCAyMzAsIDEwOCwgMTQsIDMyLCA0LCAyNTQsIDE3OSwgCisgICAgMTQsIDMyLCA0LCAyNTIsIDczLCAxNCwgMzIsIDQsIDI0MywgMjAzLCAxNCwgMzIsIDQsIDI0OCwgMTI2LCAxNCwgMzIsIDQsIAorICAgIDI0NSwgMTg0LCAxNCwgMzIsIDQsIDIxMiwgNzgsIDE0LCAzMiwgNCwgMjQ1LCAxNDksIDE0LCAzMiwgNCwgMjE3LCAxNDUsIAorICAgIDE0LCAzMiwgNCwgMjM2LCA0NCwgMTQsIDMyLCA0LCAyMzUsIDg0LCAxNCwgMzIsIDQsIDIzMywgMjIwLCAxNCwgMzIsIDQsIAorICAgIDIzMCwgMjQyLCAxNCwgMzIsIDQsIDIyOCwgMTM1LCAxNCwgMzIsIDQsIDIxMywgMTQ4LCAxNCwgMzIsIDQsIDIyNywgMTAyLCAKKyAgICAxNCwgMzIsIDQsIDIyNiwgMjAsIDE0LCAzMiwgNCwgMjIzLCAyMjQsIDE0LCAzMiwgNCwgNDEsIDIyMCwgMTIyLCAxNCwgMzIsIAorICAgIDQsIDIyMCwgMTIyLCAxNCwgMzIsIDQsIDIxOCwgNSwgMTQsIDMyLCA0LCAyMTUsIDEzNCwgMTQsIDMyLCA0LCAyMjYsIDQ1LCAKKyAgICAxNCwgMzIsIDQsIDI1MCwgMTcwLCAxNCwgMzIsIDQsIDIyNSwgODIsIDE0LCAzMiwgNCwgMjI3LCAxMDQsIDE0LCAzMiwgCisgICAgMjI2LCAxNjIsIDI0OCwgNTAsIDE0LCAzMiwgMjQ1LCAxODUsIDg4LCAxNCwgMzIsIDIxNywgMTQ2LCA4OCwgMTQsIDMyLCAKKyAgICAyMzUsIDg1LCA4OCwgMTQsIDMyLCAyMjYsIDQ2LCA4OCwgMTQsIDMyLCAyMjMsIDIyNSwgODgsIDE0LCAzMiwgMjI2LCAyMSwgCisgICAgODgsIDE0LCAyMywgMzIsIDYsIDI1NCwgMTc5LCAxNCwgMjMsIDMyLCA2LCAyNTIsIDczLCAxNCwgMjMsIDMyLCA2LCAyNDMsIAorICAgIDIwMywgMTQsIDIzLCAzMiwgNiwgMjQ4LCAxMjYsIDE0LCAyMywgMzIsIDYsIDI0NSwgMTg0LCAxNCwgMjMsIDMyLCA2LCAKKyAgICAyMTIsIDc4LCAxNCwgMjMsIDMyLCA2LCAyNDUsIDE0OSwgMTQsIDIzLCAzMiwgNiwgMjE3LCAxNDUsIDE0LCAyMywgMzIsIDYsIAorICAgIDIzNiwgNDQsIDE0LCAyMywgMzIsIDYsIDIzNSwgODQsIDE0LCAyMywgMzIsIDYsIDIzMywgMjIwLCAxNCwgMjMsIDMyLCA2LCAKKyAgICAyMzAsIDI0MiwgMTQsIDIzLCAzMiwgNiwgMjI4LCAxMzUsIDE0LCAyMywgMzIsIDYsIDIxMywgMTQ4LCAxNCwgMjMsIDMyLCAKKyAgICA2LCAyMjcsIDEwMiwgMTQsIDIzLCAzMiwgNiwgMjI2LCAyMCwgMTQsIDIzLCAzMiwgNiwgMjIzLCAyMjQsIDE0LCAyMywgMzIsIAorICAgIDYsIDIxNywgMTQ2LCA4OCwgMTQsIDIzLCAzMiwgNiwgMjIwLCAxMjIsIDE0LCAyMywgMzIsIDYsIDIxOCwgNSwgMTQsIDIzLCAKKyAgICAzMiwgNiwgMjE1LCAxMzQsIDE0LCAyMywgMzIsIDYsIDIyNiwgNDUsIDE0LCAyMywgMzIsIDYsIDI1MCwgMTcwLCAxNCwgMjMsIAorICAgIDMyLCA2LCAyMjUsIDgyLCAxNCwgMjMsIDMyLCA2LCAyMjcsIDEwNCwgMTQsIDIzLCAzMiwgMjMwLCAxMDgsIDE0LCAyMywgCisgICAgMzIsIDQsIDI1NCwgMTc5LCAxNCwgMjMsIDMyLCA0LCAyNTIsIDczLCAxNCwgMjMsIDMyLCA0LCAyNDMsIDIwMywgMTQsIDIzLCAKKyAgICAzMiwgNCwgMjQ4LCAxMjYsIDE0LCAyMywgMzIsIDQsIDI0NSwgMTg0LCAxNCwgMjMsIDMyLCA0LCAyMTIsIDc4LCAxNCwgMjMsIAorICAgIDMyLCA0LCAyNDUsIDE0OSwgMTQsIDIzLCAzMiwgNCwgMjE3LCAxNDUsIDE0LCAyMywgMzIsIDQsIDIzNiwgNDQsIDE0LCAyMywgCisgICAgMzIsIDQsIDIzNSwgODQsIDE0LCAyMywgMzIsIDQsIDIzMywgMjIwLCAxNCwgMjMsIDMyLCA0LCAyMzAsIDI0MiwgMTQsIDIzLCAKKyAgICAzMiwgNCwgMjI4LCAxMzUsIDE0LCAyMywgMzIsIDQsIDIxMywgMTQ4LCAxNCwgMjMsIDMyLCA0LCAyMjcsIDEwMiwgMTQsIAorICAgIDIzLCAzMiwgNCwgMjI2LCAyMCwgMTQsIDIzLCAzMiwgNCwgMjIzLCAyMjQsIDE0LCAyMywgMzIsIDQsIDQxLCAyMjAsIDEyMiwgCisgICAgMTQsIDIzLCAzMiwgNCwgMjIwLCAxMjIsIDE0LCAyMywgMzIsIDQsIDIxOCwgNSwgMTQsIDIzLCAzMiwgNCwgMjE1LCAxMzQsIAorICAgIDE0LCAyMywgMzIsIDQsIDIyNiwgNDUsIDE0LCAyMywgMzIsIDQsIDI1MCwgMTcwLCAxNCwgMjMsIDMyLCA0LCAyMjUsIDgyLCAKKyAgICAxNCwgMjMsIDMyLCA0LCAyMjcsIDEwNCwgMTQsIDIzLCAzMiwgMjI2LCAxNjIsIDI0OCwgNTAsIDE0LCAyMywgMzIsIDI0NSwgCisgICAgMTg1LCA4OCwgMTQsIDIzLCAzMiwgMjE3LCAxNDYsIDg4LCAxNCwgMjMsIDMyLCAyMzUsIDg1LCA4OCwgMTQsIDIzLCAzMiwgCisgICAgMjI2LCA0NiwgODgsIDE0LCAyMywgMzIsIDIyMywgMjI1LCA4OCwgMTQsIDIzLCAzMiwgMjI2LCAyMSwgODgsIDE0LCAzNSwgCisgICAgMjMsIDYsIDI1NCwgMTc5LCAxNCwgMzUsIDIzLCA2LCAyNTIsIDczLCAxNCwgMzUsIDIzLCA2LCAyNDMsIDIwMywgMTQsIDM1LCAKKyAgICAyMywgNiwgMjQ4LCAxMjYsIDE0LCAzNSwgMjMsIDYsIDI0NSwgMTg0LCAxNCwgMzUsIDIzLCA2LCAyMTIsIDc4LCAxNCwgMzUsIAorICAgIDIzLCA2LCAyNDUsIDE0OSwgMTQsIDM1LCAyMywgNiwgMjE3LCAxNDUsIDE0LCAzNSwgMjMsIDYsIDIzNiwgNDQsIDE0LCAzNSwgCisgICAgMjMsIDYsIDIzNSwgODQsIDE0LCAzNSwgMjMsIDYsIDIzMywgMjIwLCAxNCwgMzUsIDIzLCA2LCAyMzAsIDI0MiwgMTQsIDM1LCAKKyAgICAyMywgNiwgMjI4LCAxMzUsIDE0LCAzNSwgMjMsIDYsIDIxMywgMTQ4LCAxNCwgMzUsIDIzLCA2LCAyMjcsIDEwMiwgMTQsIAorICAgIDM1LCAyMywgNiwgMjI2LCAyMCwgMTQsIDM1LCAyMywgNiwgMjIzLCAyMjQsIDE0LCAzNSwgMjMsIDYsIDIxNywgMTQ2LCA4OCwgCisgICAgMTQsIDM1LCAyMywgNiwgMjIwLCAxMjIsIDE0LCAzNSwgMjMsIDYsIDIxOCwgNSwgMTQsIDM1LCAyMywgNiwgMjE1LCAxMzQsIAorICAgIDE0LCAzNSwgMjMsIDYsIDIyNiwgNDUsIDE0LCAzNSwgMjMsIDYsIDI1MCwgMTcwLCAxNCwgMzUsIDIzLCA2LCAyMjUsIDgyLCAKKyAgICAxNCwgMzUsIDIzLCA2LCAyMjcsIDEwNCwgMTQsIDM1LCAyMywgMjMwLCAxMDgsIDE0LCAzNSwgMjMsIDQsIDI1NCwgMTc5LCAKKyAgICAxNCwgMzUsIDIzLCA0LCAyNTIsIDczLCAxNCwgMzUsIDIzLCA0LCAyNDMsIDIwMywgMTQsIDM1LCAyMywgNCwgMjQ4LCAxMjYsIAorICAgIDE0LCAzNSwgMjMsIDQsIDI0NSwgMTg0LCAxNCwgMzUsIDIzLCA0LCAyMTIsIDc4LCAxNCwgMzUsIDIzLCA0LCAyNDUsIDE0OSwgCisgICAgMTQsIDM1LCAyMywgNCwgMjE3LCAxNDUsIDE0LCAzNSwgMjMsIDQsIDIzNiwgNDQsIDE0LCAzNSwgMjMsIDQsIDIzNSwgODQsIAorICAgIDE0LCAzNSwgMjMsIDQsIDIzMywgMjIwLCAxNCwgMzUsIDIzLCA0LCAyMzAsIDI0MiwgMTQsIDM1LCAyMywgNCwgMjI4LCAKKyAgICAxMzUsIDE0LCAzNSwgMjMsIDQsIDIxMywgMTQ4LCAxNCwgMzUsIDIzLCA0LCAyMjcsIDEwMiwgMTQsIDM1LCAyMywgNCwgCisgICAgMjI2LCAyMCwgMTQsIDM1LCAyMywgNCwgMjIzLCAyMjQsIDE0LCAzNSwgMjMsIDQsIDQxLCAyMjAsIDEyMiwgMTQsIDM1LCAKKyAgICAyMywgNCwgMjIwLCAxMjIsIDE0LCAzNSwgMjMsIDQsIDIxOCwgNSwgMTQsIDM1LCAyMywgNCwgMjE1LCAxMzQsIDE0LCAzNSwgCisgICAgMjMsIDQsIDIyNiwgNDUsIDE0LCAzNSwgMjMsIDQsIDI1MCwgMTcwLCAxNCwgMzUsIDIzLCA0LCAyMjUsIDgyLCAxNCwgMzUsIAorICAgIDIzLCA0LCAyMjcsIDEwNCwgMTQsIDM1LCAyMywgMjI2LCAxNjIsIDI0OCwgNTAsIDE0LCAzNSwgMjMsIDI0NSwgMTg1LCA4OCwgCisgICAgMTQsIDM1LCAyMywgMjE3LCAxNDYsIDg4LCAxNCwgMzUsIDIzLCAyMzUsIDg1LCA4OCwgMTQsIDM1LCAyMywgMjI2LCA0NiwgCisgICAgODgsIDE0LCAzNSwgMjMsIDIyMywgMjI1LCA4OCwgMTQsIDM1LCAyMywgMjI2LCAyMSwgODgsIDE0LCAzNSwgMjMsIDMyLCA2LCAKKyAgICAyNTQsIDE3OSwgMTQsIDM1LCAyMywgMzIsIDYsIDI1MiwgNzMsIDE0LCAzNSwgMjMsIDMyLCA2LCAyNDMsIDIwMywgMTQsIAorICAgIDM1LCAyMywgMzIsIDYsIDI0OCwgMTI2LCAxNCwgMzUsIDIzLCAzMiwgNiwgMjQ1LCAxODQsIDE0LCAzNSwgMjMsIDMyLCA2LCAKKyAgICAyMTIsIDc4LCAxNCwgMzUsIDIzLCAzMiwgNiwgMjQ1LCAxNDksIDE0LCAzNSwgMjMsIDMyLCA2LCAyMTcsIDE0NSwgMTQsIAorICAgIDM1LCAyMywgMzIsIDYsIDIzNiwgNDQsIDE0LCAzNSwgMjMsIDMyLCA2LCAyMzUsIDg0LCAxNCwgMzUsIDIzLCAzMiwgNiwgCisgICAgMjMzLCAyMjAsIDE0LCAzNSwgMjMsIDMyLCA2LCAyMzAsIDI0MiwgMTQsIDM1LCAyMywgMzIsIDYsIDIyOCwgMTM1LCAxNCwgCisgICAgMzUsIDIzLCAzMiwgNiwgMjEzLCAxNDgsIDE0LCAzNSwgMjMsIDMyLCA2LCAyMjcsIDEwMiwgMTQsIDM1LCAyMywgMzIsIDYsIAorICAgIDIyNiwgMjAsIDE0LCAzNSwgMjMsIDMyLCA2LCAyMjMsIDIyNCwgMTQsIDM1LCAyMywgMzIsIDYsIDIxNywgMTQ2LCA4OCwgCisgICAgMTQsIDM1LCAyMywgMzIsIDYsIDIyMCwgMTIyLCAxNCwgMzUsIDIzLCAzMiwgNiwgMjE4LCA1LCAxNCwgMzUsIDIzLCAzMiwgCisgICAgNiwgMjE1LCAxMzQsIDE0LCAzNSwgMjMsIDMyLCA2LCAyMjYsIDQ1LCAxNCwgMzUsIDIzLCAzMiwgNiwgMjUwLCAxNzAsIDE0LCAKKyAgICAzNSwgMjMsIDMyLCA2LCAyMjUsIDgyLCAxNCwgMzUsIDIzLCAzMiwgNiwgMjI3LCAxMDQsIDE0LCAzNSwgMjMsIDMyLCAyMzAsIAorICAgIDEwOCwgMTQsIDM1LCAyMywgMzIsIDQsIDI1NCwgMTc5LCAxNCwgMzUsIDIzLCAzMiwgNCwgMjUyLCA3MywgMTQsIDM1LCAyMywgCisgICAgMzIsIDQsIDI0MywgMjAzLCAxNCwgMzUsIDIzLCAzMiwgNCwgMjQ4LCAxMjYsIDE0LCAzNSwgMjMsIDMyLCA0LCAyNDUsIAorICAgIDE4NCwgMTQsIDM1LCAyMywgMzIsIDQsIDIxMiwgNzgsIDE0LCAzNSwgMjMsIDMyLCA0LCAyNDUsIDE0OSwgMTQsIDM1LCAyMywgCisgICAgMzIsIDQsIDIxNywgMTQ1LCAxNCwgMzUsIDIzLCAzMiwgNCwgMjM2LCA0NCwgMTQsIDM1LCAyMywgMzIsIDQsIDIzNSwgODQsIAorICAgIDE0LCAzNSwgMjMsIDMyLCA0LCAyMzMsIDIyMCwgMTQsIDM1LCAyMywgMzIsIDQsIDIzMCwgMjQyLCAxNCwgMzUsIDIzLCAzMiwgCisgICAgNCwgMjI4LCAxMzUsIDE0LCAzNSwgMjMsIDMyLCA0LCAyMTMsIDE0OCwgMTQsIDM1LCAyMywgMzIsIDQsIDIyNywgMTAyLCAKKyAgICAxNCwgMzUsIDIzLCAzMiwgNCwgMjI2LCAyMCwgMTQsIDM1LCAyMywgMzIsIDQsIDIyMywgMjI0LCAxNCwgMzUsIDIzLCAzMiwgCisgICAgNCwgNDEsIDIyMCwgMTIyLCAxNCwgMzUsIDIzLCAzMiwgNCwgMjIwLCAxMjIsIDE0LCAzNSwgMjMsIDMyLCA0LCAyMTgsIDUsIAorICAgIDE0LCAzNSwgMjMsIDMyLCA0LCAyMTUsIDEzNCwgMTQsIDM1LCAyMywgMzIsIDQsIDIyNiwgNDUsIDE0LCAzNSwgMjMsIDMyLCAKKyAgICA0LCAyNTAsIDE3MCwgMTQsIDM1LCAyMywgMzIsIDQsIDIyNSwgODIsIDE0LCAzNSwgMjMsIDMyLCA0LCAyMjcsIDEwNCwgMTQsIAorICAgIDM1LCAyMywgMzIsIDIyNiwgMTYyLCAyNDgsIDUwLCAxNCwgMzUsIDIzLCAzMiwgMjQ1LCAxODUsIDg4LCAxNCwgMzUsIDIzLCAKKyAgICAzMiwgMjE3LCAxNDYsIDg4LCAxNCwgMzUsIDIzLCAzMiwgMjM1LCA4NSwgODgsIDE0LCAzNSwgMjMsIDMyLCAyMjYsIDQ2LCAKKyAgICA4OCwgMTQsIDM1LCAyMywgMzIsIDIyMywgMjI1LCA4OCwgMTQsIDM1LCAyMywgMzIsIDIyNiwgMjEsIDg4LCAxNCwgMjMsIDYsIAorICAgIDI0OCwgNDQsIDE0LCAyMywgNCwgMjQ4LCA0NCwgMTQsIDIzLCAyMSwgMjEyLCA3OSwgMTQsIDIzLCAyMSwgMTE4LCAxNCwgCisgICAgMjMsIDIxLCAxMTIsIDE0LCAyMywgMjEsIDE3MCwgMTQsIDIzLCAyMSwgMTY3LCAxNCwgMjMsIDIxLCAxODUsIDE0LCAyMywgCisgICAgMjEsIDE5MiwgMTQsIDIzLCAyMSwgMjAwLCAxNCwgMjMsIDIxLCAxOTgsIDE0LCAyMywgMjEsIDIwMywgMTQsIDE5MCwgMjEsIAorICAgIDIxMiwgNzksIDE0LCAxOTAsIDIxLCAxMTgsIDE0LCAxOTAsIDIxLCAxMTIsIDE0LCAxOTAsIDIxLCAxNzAsIDE0LCAxOTAsIAorICAgIDIxLCAxNjcsIDE0LCAxOTAsIDIxLCAxODUsIDE0LCAxOTAsIDIxLCAxOTIsIDE0LCAxOTAsIDIxLCAyMDAsIDE0LCAxOTAsIAorICAgIDIxLCAxOTgsIDE0LCAxOTAsIDIxLCAyMDMsIDE0LCAzNSwgMjEsIDIxMiwgNzksIDE0LCAzNSwgMjEsIDExOCwgMTQsIDM1LCAKKyAgICAyMSwgMTEyLCAxNCwgMzUsIDIxLCAxNzAsIDE0LCAzNSwgMjEsIDE2NywgMTQsIDM1LCAyMSwgMTg1LCAxNCwgMzUsIDIxLCAKKyAgICAxOTIsIDE0LCAzNSwgMjEsIDIwMCwgMTQsIDM1LCAyMSwgMTk4LCAxNCwgMzUsIDIxLCAyMDMsIDE0LCAzNSwgMjMsIDIxLCAKKyAgICAyMTIsIDc5LCAxNCwgMzUsIDIzLCAyMSwgMTE4LCAxNCwgMzUsIDIzLCAyMSwgMTEyLCAxNCwgMzUsIDIzLCAyMSwgMTcwLCAKKyAgICAxNCwgMzUsIDIzLCAyMSwgMTY3LCAxNCwgMzUsIDIzLCAyMSwgMTg1LCAxNCwgMzUsIDIzLCAyMSwgMTkyLCAxNCwgMzUsIAorICAgIDIzLCAyMSwgMjAwLCAxNCwgMzUsIDIzLCAyMSwgMTk4LCAxNCwgMzUsIDIzLCAyMSwgMjAzLCAxNCwgMjMxLCAyMiwgMjEsIAorICAgIDIxMiwgNzksIDE0LCAyMzEsIDIyLCAyMSwgMTE4LCAxNCwgMjMxLCAyMiwgMjEsIDExMiwgMTQsIDIzMSwgMjIsIDIxLCAKKyAgICAxNzAsIDE0LCAyMzEsIDIyLCAyMSwgMTY3LCAxNCwgMjMxLCAyMiwgMjEsIDE4NSwgMTQsIDIzMSwgMjIsIDIxLCAxOTIsIAorICAgIDE0LCAyMzEsIDIyLCAyMSwgMjAwLCAxNCwgMjMxLCAyMiwgMjEsIDE5OCwgMTQsIDIzMSwgMjIsIDIxLCAyMDMsIDIzMiwgCisgICAgODMsIDg2LCAyNDYsIDQxLCAyMTMsIDIyNywgMjMyLCA4MywgODYsIDIxOSwgMjM0LCAyMTMsIDIyNywgMjMyLCA4MywgODYsIAorICAgIDIxMywgMjUzLCAyMTMsIDIyNywgMjMyLCA4MywgODYsIDIyOCwgMjEwLCAyMTMsIDIyNywgMjMyLCA4MywgODYsIDIyNCwgCisgICAgMzgsIDI0NiwgMTcxLCAyMzIsIDgzLCA4NiwgMjQyLCAyMjUsIDI0NiwgMTcxLCAyMzIsIDgzLCA4NiwgNjksIDI0NiwgMTcxLCAKKyAgICAyMzIsIDgzLCA4NiwgMTI0LCA2OCwgMjUwLCAyMDAsIDIzMiwgODMsIDg2LCAxMTksIDY4LCAyNTAsIDIwMCwgMjMyLCA4MywgCisgICAgODYsIDEzNywgNjgsIDI1MCwgMjAwLCAyMzIsIDgzLCA4NiwgMjQ0LCAxMDEsIDY4LCAyNTAsIDIwMCwgMjMyLCA4MywgODYsIAorICAgIDI0NCwgMTcwLCA2OCwgMjUwLCAyMDAsIDIzMiwgODMsIDg2LCAyMjAsIDcyLCA2OCwgMjUwLCAyMDAsIDIzMiwgODMsIDg2LCAKKyAgICAyMjEsIDY2LCA2OCwgMjUwLCAyMDAsIDIzMiwgODMsIDg2LCAyNDYsIDE1LCA2OCwgMjUwLCAyMDAsIDIzMiwgODMsIDg2LCAKKyAgICAyMjksIDk1LCA2OCwgMjUwLCAyMDAsIDIzMiwgODMsIDg2LCAxMjQsIDY4LCAyNTIsIDE5OSwgMjMyLCA4MywgODYsIDExOSwgCisgICAgNjgsIDI1MiwgMTk5LCAyMzIsIDgzLCA4NiwgMTM3LCA2OCwgMjUyLCAxOTksIDIzMiwgODMsIDg2LCAyNDQsIDEwMSwgNjgsIAorICAgIDI1MiwgMTk5LCAyMzIsIDgzLCA4NiwgMjQ0LCAxNzAsIDY4LCAyNTIsIDE5OSwgMjMyLCA4MywgODYsIDIyMCwgNzIsIDY4LCAKKyAgICAyNTIsIDE5OSwgMjMyLCA4MywgODYsIDIyMSwgNjYsIDY4LCAyNTIsIDE5OSwgMjMyLCA4MywgODYsIDI0NiwgMTUsIDY4LCAKKyAgICAyNTIsIDE5OSwgMjMyLCA4MywgODYsIDIyOSwgOTUsIDY4LCAyNTIsIDE5OSwgMjMyLCA4MywgODYsIDEyNCwgNjgsIDI1MCwgCisgICAgOTQsIDIzMiwgODMsIDg2LCAxMTksIDY4LCAyNTAsIDk0LCAyMzIsIDgzLCA4NiwgMTM3LCA2OCwgMjUwLCA5NCwgMjMyLCAKKyAgICA4MywgODYsIDI0NCwgMTAxLCA2OCwgMjUwLCA5NCwgMjMyLCA4MywgODYsIDI0NCwgMTcwLCA2OCwgMjUwLCA5NCwgMjMyLCAKKyAgICA4MywgODYsIDIyMCwgNzIsIDY4LCAyNTAsIDk0LCAyMzIsIDgzLCA4NiwgMjIxLCA2NiwgNjgsIDI1MCwgOTQsIDIzMiwgODMsIAorICAgIDg2LCAyNDYsIDE1LCA2OCwgMjUwLCA5NCwgMjMyLCA4MywgODYsIDIyOSwgOTUsIDY4LCAyNTAsIDk0LCAyMzIsIDgzLCA4NiwgCisgICAgMjI1LCAxOTUsIDIzMiwgODMsIDg2LCAyMjcsIDYwLCAyMzIsIDgzLCA4NiwgMjUyLCAyMDAsIDIzMiwgODMsIDg2LCAyNTAsIAorICAgIDEzMCwgMjMyLCA4MywgODYsIDIxOSwgMTkwLCAyMzIsIDgzLCA4NiwgMjE4LCAyNTQsIDIzMiwgODMsIDg2LCAyNTMsIDIyMiwgCisgICAgMjMyLCA4MywgODYsIDIxMywgMjIwLCAyMzIsIDgzLCA4NiwgMjM1LCAxNzksIDIzMiwgODMsIDg2LCAyNTIsIDIyOCwgMTI5LCAKKyAgICA4NiwgMjAxLCAyNTIsIDIyOCwgMTI5LCA4NiwgMjQxLCAxNDgsIDEyOSwgODYsIDI0MSwgMTQ3LCAxMjksIDg2LCAyNDEsIAorICAgIDE0NiwgMTI5LCA4NiwgMjQxLCAxNDUsIDEyOSwgODYsIDI0MSwgMTQ0LCAxMjksIDg2LCAyNDEsIDE0MywgMTI5LCA4NiwgCisgICAgMjQxLCAxNDIsIDEyOSwgODYsIDI0MSwgMTQxLCAxMjksIDg2LCAyNDEsIDE0MCwgMTI5LCA4NiwgMjQxLCAxMzksIDEyOSwgCisgICAgODYsIDI0MSwgMTM4LCAxMjksIDg2LCAyNDEsIDEzNywgMTI5LCA4NiwgMjQxLCAxMzYsIDEyOSwgODYsIDI0MSwgMTM1LCAKKyAgICAxMjksIDg2LCAyNDEsIDEzNCwgMTI5LCA4NiwgMjQxLCAxMzMsIDEyOSwgODYsIDI0MSwgMTMyLCAxMjksIDg2LCAyNDEsIAorICAgIDEzMSwgMTI5LCA4NiwgMjQxLCAxMzAsIDEyOSwgODYsIDI0MSwgMTI5LCAxMjksIDg2LCAyNDEsIDEyOCwgMTI5LCA4NiwgCisgICAgMjQxLCAxMjcsIDEyOSwgODYsIDI0MSwgMTI2LCAxMjksIDg2LCAyNDEsIDEyNSwgMTI5LCA4NiwgMjQxLCAxMjQsIDEyOSwgCisgICAgODYsIDI0MSwgMTIzLCAxMjksIDg2LCAyNDEsIDEyMiwgMTI5LCA4NiwgMjQxLCAxMjEsIDEyOSwgODYsIDI0MSwgMTIwLCAKKyAgICAxMjksIDg2LCAyNDEsIDExOSwgMTI5LCA4NiwgMjQxLCAxMTgsIDEyOSwgODYsIDI0MSwgMTE3LCAxMjksIDg2LCAyNDEsIAorICAgIDExNiwgMTI5LCA4NiwgMjQxLCAxMTUsIDEyOSwgODYsIDI0MSwgMTE0LCAxMjksIDg2LCAyNDEsIDExMywgMTI5LCA4NiwgCisgICAgMjQxLCAxMTIsIDEyOSwgODYsIDI0MSwgMTExLCAxMjksIDg2LCAyNDEsIDExMCwgMTI5LCA4NiwgMjQxLCAxMDksIDEyOSwgCisgICAgODYsIDI0MSwgMTA4LCAxMjksIDg2LCAyNDEsIDEwNywgMTI5LCA4NiwgMjQxLCAxMDYsIDEyOSwgODYsIDI0MSwgMTA1LCAKKyAgICAxMjksIDg2LCAyNDEsIDEwNCwgMTI5LCA4NiwgMjQxLCAxMDMsIDEyOSwgODYsIDI0MSwgMTAyLCAxMjksIDg2LCAyNDEsIAorICAgIDEwMSwgMTI5LCA4NiwgMjQxLCAxMDAsIDEyOSwgODYsIDY2LCAyNTIsIDIyOCwgMTI5LCA4NiwgMjE0LCAyMjAsIDEyOSwgCisgICAgODYsIDIxNCwgMjE5LCAxMjksIDg2LCAyMTQsIDIxOCwgMTI5LCA4NiwgMjE0LCAyMTcsIDEyOSwgODYsIDIxNCwgMjE2LCAKKyAgICAxMjksIDg2LCAyMTQsIDIxNSwgMTI5LCA4NiwgMjE0LCAyMTQsIDEyOSwgODYsIDIxNCwgMjEzLCAxMjksIDg2LCAyMTQsIAorICAgIDIxMiwgMTI5LCA4NiwgMjE0LCAyMTEsIDEyOSwgODYsIDIxNCwgMjEwLCAxMjksIDg2LCAyMTQsIDIwOSwgMTI5LCA4NiwgCisgICAgMjE0LCAyMDgsIDEyOSwgODYsIDIxNCwgMjA3LCAxMjksIDg2LCAyMTQsIDIwNiwgMTI5LCA4NiwgMjE0LCAyMDUsIDEyOSwgCisgICAgODYsIDIxNCwgMjA0LCAxMjksIDg2LCAyMTQsIDIwMywgMTI5LCA4NiwgMjE0LCAyMDIsIDEyOSwgODYsIDIxNCwgMjAxLCAKKyAgICAxMjksIDg2LCAyMTQsIDIwMCwgMTI5LCA4NiwgMjE0LCAxOTksIDEyOSwgODYsIDIxNCwgMTk4LCAxMjksIDg2LCAyMTQsIAorICAgIDE5NywgMTI5LCA4NiwgMjE0LCAxOTYsIDEyOSwgODYsIDIxNCwgMTk1LCAxMjksIDg2LCAyMTQsIDE5NCwgMTI5LCA4NiwgCisgICAgMjE0LCAxOTMsIDEyOSwgODYsIDIxNCwgMTkyLCAxMjksIDg2LCAyMTQsIDE5MSwgMTI5LCA4NiwgMjE0LCAxOTAsIDEyOSwgCisgICAgODYsIDIxNCwgMTg5LCAxMjksIDg2LCAyMTQsIDE4OCwgMTI5LCA4NiwgMjE0LCAxODcsIDEyOSwgODYsIDIxNCwgMTg2LCAKKyAgICAxMjksIDg2LCAyMTQsIDE4NSwgMTI5LCA4NiwgMjE0LCAxODQsIDEyOSwgODYsIDIxNCwgMTgzLCAxMjksIDg2LCAyMTQsIAorICAgIDE4MiwgMTI5LCA4NiwgMjE0LCAxODEsIDEyOSwgODYsIDIxNCwgMTgwLCAxMjksIDg2LCAyMTQsIDE3OSwgMTI5LCA4NiwgCisgICAgMjE0LCAxNzgsIDEyOSwgODYsIDIxNCwgMTc3LCAxMjksIDg2LCAyMTQsIDE3NiwgMTI5LCA4NiwgMjE0LCAxNzUsIDEyOSwgCisgICAgODYsIDIxNCwgMTc0LCAxMjksIDg2LCAyMTQsIDE3MywgMTI5LCA4NiwgMjE0LCAxNzIsIDIyNSwgMjAxLCAyNTEsIDQzLCAKKyAgICAyNTIsIDIyOCwgMjI1LCAyMDEsIDI1MSwgNDMsIDI1NSwgNDEsIDY4LCAyMTksIDIyMiwgMjI1LCAyMDEsIDI1MSwgNDMsIAorICAgIDExOSwgNjgsIDIxOSwgMjIyLCAyMjUsIDIwMSwgMjUxLCA0MywgMTM3LCA2OCwgMjE5LCAyMjIsIDIyNSwgMjAxLCAyNTEsIAorICAgIDQzLCAyNDQsIDEwMSwgNjgsIDIxOSwgMjIyLCAyMjUsIDIwMSwgMjUxLCA0MywgMjQ0LCAxNzAsIDY4LCAyMTksIDIyMiwgCisgICAgMjI1LCAyMDEsIDI1MSwgNDMsIDIyMCwgNzIsIDY4LCAyMTksIDIyMiwgMjI1LCAyMDEsIDI1MSwgNDMsIDIyMSwgNjYsIDY4LCAKKyAgICAyMTksIDIyMiwgMjI1LCAyMDEsIDI1MSwgNDMsIDI0NiwgMTUsIDY4LCAyMTksIDIyMiwgMjI1LCAyMDEsIDI1MSwgNDMsIAorICAgIDIyOSwgOTUsIDY4LCAyMTksIDIyMiwgMjI1LCAyMDEsIDI1MSwgNDMsIDIxNywgMjE0LCA2OCwgMjE5LCAyMjIsIDIyNSwgCisgICAgMjAxLCAyNTEsIDQzLCAyMzUsIDI1NCwgNjgsIDIxOSwgMjIyLCAyMjUsIDIwMSwgMjUxLCA0MywgMjM0LCAxNTEsIDY4LCAKKyAgICAyMTksIDIyMiwgMjI1LCAyMDEsIDI1MSwgNDMsIDIyNCwgMTk1LCA2OCwgMjE5LCAyMjIsIDIyNSwgMjAxLCAyNTEsIDQzLCAKKyAgICAyMzQsIDE5OSwgNjgsIDIxOSwgMjIyLCAyMjUsIDIwMSwgMjUxLCA0MywgMjU1LCA0MSwgNjgsIDI0MiwgNzIsIDIyNSwgCisgICAgMjAxLCAyNTEsIDQzLCAxMTksIDY4LCAyNDIsIDcyLCAyMjUsIDIwMSwgMjUxLCA0MywgMTM3LCA2OCwgMjQyLCA3MiwgMjI1LCAKKyAgICAyMDEsIDI1MSwgNDMsIDI0NCwgMTAxLCA2OCwgMjQyLCA3MiwgMjI1LCAyMDEsIDI1MSwgNDMsIDI0NCwgMTcwLCA2OCwgCisgICAgMjQyLCA3MiwgMjI1LCAyMDEsIDI1MSwgNDMsIDIyMCwgNzIsIDY4LCAyNDIsIDcyLCAyMjUsIDIwMSwgMjUxLCA0MywgMjIxLCAKKyAgICA2NiwgNjgsIDI0MiwgNzIsIDIyNSwgMjAxLCAyNTEsIDQzLCAyNDYsIDE1LCA2OCwgMjQyLCA3MiwgMjI1LCAyMDEsIDI1MSwgCisgICAgNDMsIDIyOSwgOTUsIDY4LCAyNDIsIDcyLCAyMjUsIDIwMSwgMjUxLCA0MywgMjE3LCAyMTQsIDY4LCAyNDIsIDcyLCAyMjUsIAorICAgIDIwMSwgMjUxLCA0MywgMjM1LCAyNTQsIDY4LCAyNDIsIDcyLCAyMjUsIDIwMSwgMjUxLCA0MywgMjM0LCAxNTEsIDY4LCAKKyAgICAyNDIsIDcyLCAyMjUsIDIwMSwgMjUxLCA0MywgMjI0LCAxOTUsIDY4LCAyNDIsIDcyLCAyMjUsIDIwMSwgMjUxLCA0MywgCisgICAgMjM0LCAxOTksIDY4LCAyNDIsIDcyLCAyMjUsIDIwMSwgMjUxLCA0MywgMjU1LCA0MSwgNjgsIDI0OCwgNjQsIDIyNSwgMjAxLCAKKyAgICAyNTEsIDQzLCAxMTksIDY4LCAyNDgsIDY0LCAyMjUsIDIwMSwgMjUxLCA0MywgMTM3LCA2OCwgMjQ4LCA2NCwgMjI1LCAyMDEsIAorICAgIDI1MSwgNDMsIDI0NCwgMTAxLCA2OCwgMjQ4LCA2NCwgMjI1LCAyMDEsIDI1MSwgNDMsIDI0NCwgMTcwLCA2OCwgMjQ4LCA2NCwgCisgICAgMjI1LCAyMDEsIDI1MSwgNDMsIDIyMCwgNzIsIDY4LCAyNDgsIDY0LCAyMjUsIDIwMSwgMjUxLCA0MywgMjIxLCA2NiwgNjgsIAorICAgIDI0OCwgNjQsIDIyNSwgMjAxLCAyNTEsIDQzLCAyNDYsIDE1LCA2OCwgMjQ4LCA2NCwgMjI1LCAyMDEsIDI1MSwgNDMsIDIyOSwgCisgICAgOTUsIDY4LCAyNDgsIDY0LCAyMjUsIDIwMSwgMjUxLCA0MywgMjE3LCAyMTQsIDY4LCAyNDgsIDY0LCAyMjUsIDIwMSwgMjUxLCAKKyAgICA0MywgMjM1LCAyNTQsIDY4LCAyNDgsIDY0LCAyMjUsIDIwMSwgMjUxLCA0MywgMjM0LCAxNTEsIDY4LCAyNDgsIDY0LCAyMjUsIAorICAgIDIwMSwgMjUxLCA0MywgMjI0LCAxOTUsIDY4LCAyNDgsIDY0LCAyMjUsIDIwMSwgMjUxLCA0MywgMjM0LCAxOTksIDY4LCAKKyAgICAyNDgsIDY0LCAyMjUsIDIwMSwgMjUxLCA0MywgODUsIDIzNSwgMTc5LCAyMjUsIDIwMSwgMjUxLCA0MywgMjU1LCA0MSwgNjgsIAorICAgIDI1MCwgNDYsIDIyNSwgMjAxLCAyNTEsIDQzLCAxMTksIDY4LCAyNTAsIDQ2LCAyMjUsIDIwMSwgMjUxLCA0MywgMTM3LCA2OCwgCisgICAgMjUwLCA0NiwgMjI1LCAyMDEsIDI1MSwgNDMsIDI0NCwgMTAxLCA2OCwgMjUwLCA0NiwgMjI1LCAyMDEsIDI1MSwgNDMsIAorICAgIDI0NCwgMTcwLCA2OCwgMjUwLCA0NiwgMjI1LCAyMDEsIDI1MSwgNDMsIDIyMCwgNzIsIDY4LCAyNTAsIDQ2LCAyMjUsIDIwMSwgCisgICAgMjUxLCA0MywgMjIxLCA2NiwgNjgsIDI1MCwgNDYsIDIyNSwgMjAxLCAyNTEsIDQzLCAyNDYsIDE1LCA2OCwgMjUwLCA0NiwgCisgICAgMjI1LCAyMDEsIDI1MSwgNDMsIDIyOSwgOTUsIDY4LCAyNTAsIDQ2LCAyMjUsIDIwMSwgMjUxLCA0MywgMjE3LCAyMTQsIDY4LCAKKyAgICAyNTAsIDQ2LCAyMjUsIDIwMSwgMjUxLCA0MywgMjM1LCAyNTQsIDY4LCAyNTAsIDQ2LCAyMjUsIDIwMSwgMjUxLCA0MywgCisgICAgMjM0LCAxNTEsIDY4LCAyNTAsIDQ2LCAyMjUsIDIwMSwgMjUxLCA0MywgMjI0LCAxOTUsIDY4LCAyNTAsIDQ2LCAyMjUsIAorICAgIDIwMSwgMjUxLCA0MywgMjM0LCAxOTksIDY4LCAyNTAsIDQ2LCAyMjUsIDIwMSwgMjUxLCA0MywgNjksIDIzNSwgMTc5LCAyMSwgCisgICAgMjEyLCA4MCwgMjQ0LCA2NCwgMjE5LCA4MywgMjEsIDIxMiwgODAsIDI1MCwgMjMsIDIxLCAxMjQsIDI1MCwgMjMsIDIxLCAKKyAgICAxMTksIDI1MCwgMjMsIDIxLCAxMzcsIDI1MCwgMjMsIDIxLCAyNDQsIDEwMSwgMjUwLCAyMywgMjEsIDI0NCwgMTcwLCAyNTAsIAorICAgIDIzLCAyMSwgMjIwLCA3MiwgMjUwLCAyMywgMjEsIDIyMSwgNjYsIDI1MCwgMjMsIDIxLCAyNDYsIDE1LCAyNTAsIDIzLCAyMSwgCisgICAgMjI5LCA5NSwgMjUwLCAyMywgODcsIDcsIDYsIDEsIDYzLCA4NywgNywgNiwgMSwgMjUzLCAyMDEsIDg3LCA3LCA2LCAxLCAKKyAgICAyNTEsIDEyMSwgODcsIDcsIDYsIDEsIDI0OSwgMTI1LCA4NywgNywgNiwgMSwgNzcsIDg3LCA3LCA2LCAxLCAyNDUsIDk1LCAKKyAgICA4NywgNywgNiwgMSwgMjQ0LCA0MSwgODcsIDcsIDYsIDEsIDI0MiwgMTYyLCA4NywgNywgNiwgMSwgNzUsIDg3LCA3LCA2LCAKKyAgICAxLCAyMzYsIDMsIDg3LCA3LCA2LCAxLCAyMzUsIDE0MSwgODcsIDcsIDYsIDEsIDE1NSwgODcsIDcsIDYsIDEsIDE4NCwgODcsIAorICAgIDcsIDYsIDEsIDIwNiwgODcsIDcsIDYsIDEsIDc4LCA4NywgNywgNiwgMSwgMjI3LCAxMSwgODcsIDcsIDYsIDEsIDIyNSwgCisgICAgMTksIDg3LCA3LCA2LCAxLCAxNTIsIDg3LCA3LCA2LCAxLCAxOTYsIDg3LCA3LCA2LCAxLCAyMTgsIDExMywgODcsIDcsIDYsIAorICAgIDEsIDcyLCA4NywgNywgNiwgMSwgMjExLCAyMTEsIDg3LCA3LCA2LCAxLCAyMTQsIDg1LCA4NywgNywgNiwgMSwgMjEzLCAKKyAgICAxNjksIDg3LCA3LCA2LCAxLCAyMTMsIDEwOCwgODcsIDcsIDYsIDEsIDIxMiwgMTUyLCAyMTYsIDIzMiwgMjIwLCAyNTQsIAorICAgIDI1MSwgMjA5LCA3LCA2LCAxLCAxOTYsIDM3LCAzMiwgNywgNiwgMSwgMjUxLCAxMjEsIDM3LCAzMiwgNywgNiwgMSwgMTUyLCAKKyAgICAzNywgMjUwLCAyNDgsIDM3LCAyMTMsIDE3MSwgOTIsIDcsIDYsIDEsIDYzLCA5MiwgNywgNiwgMSwgMjUzLCAyMDEsIDkyLCAKKyAgICA3LCA2LCAxLCAyNTEsIDEyMSwgOTIsIDcsIDYsIDEsIDI0OSwgMTI1LCA5MiwgNywgNiwgMSwgNzcsIDkyLCA3LCA2LCAxLCAKKyAgICAyNDUsIDk1LCA5MiwgNywgNiwgMSwgMjQ0LCA0MSwgOTIsIDcsIDYsIDEsIDI0MiwgMTYyLCA5MiwgNywgNiwgMSwgNzUsIAorICAgIDkyLCA3LCA2LCAxLCAyMzYsIDMsIDkyLCA3LCA2LCAxLCAyMzUsIDE0MSwgOTIsIDcsIDYsIDEsIDE1NSwgOTIsIDcsIDYsIAorICAgIDEsIDE4NCwgOTIsIDcsIDYsIDEsIDIwNiwgOTIsIDcsIDYsIDEsIDc4LCA5MiwgNywgNiwgMSwgMjI3LCAxMSwgOTIsIDcsIAorICAgIDYsIDEsIDIyNSwgMTksIDkyLCA3LCA2LCAxLCAxNTIsIDkyLCA3LCA2LCAxLCAxOTYsIDkyLCA3LCA2LCAxLCAyMTgsIDExMywgCisgICAgOTIsIDcsIDYsIDEsIDcyLCA5MiwgNywgNiwgMSwgMjExLCAyMTEsIDkyLCA3LCA2LCAxLCAyMTQsIDg1LCA5MiwgNywgNiwgCisgICAgMSwgMjEzLCAxNjksIDkyLCA3LCA2LCAxLCAyMTMsIDEwOCwgOTIsIDcsIDYsIDEsIDIxMiwgMTUyLCA5MiwgMjQxLCA1NCwgCisgICAgOTIsIDIzMCwgMTg5LCA5MiwgMjIyLCAxMjUsIDkyLCAyMTksIDE3NywgOTIsIDIyNSwgMTM0LCA5MiwgMjE0LCAxMCwgMTUwLCAKKyAgICAzNywgNywgNiwgMSwgNjMsIDE1MCwgMzcsIDcsIDYsIDEsIDI1MywgMjAxLCAxNTAsIDM3LCA3LCA2LCAxLCAyNTEsIDEyMSwgCisgICAgMTUwLCAzNywgNywgNiwgMSwgMjQ5LCAxMjUsIDE1MCwgMzcsIDcsIDYsIDEsIDc3LCAxNTAsIDM3LCA3LCA2LCAxLCAyNDUsIAorICAgIDk1LCAxNTAsIDM3LCA3LCA2LCAxLCAyNDQsIDQxLCAxNTAsIDM3LCA3LCA2LCAxLCAyNDIsIDE2MiwgMTUwLCAzNywgNywgNiwgCisgICAgMSwgNzUsIDE1MCwgMzcsIDcsIDYsIDEsIDIzNiwgMywgMTUwLCAzNywgNywgNiwgMSwgMjM1LCAxNDEsIDE1MCwgMzcsIDcsIAorICAgIDYsIDEsIDE1NSwgMTUwLCAzNywgNywgNiwgMSwgMTg0LCAxNTAsIDM3LCA3LCA2LCAxLCAyMDYsIDE1MCwgMzcsIDcsIDYsIAorICAgIDEsIDc4LCAxNTAsIDM3LCA3LCA2LCAxLCAyMjcsIDExLCAxNTAsIDM3LCA3LCA2LCAxLCAyMjUsIDE5LCAxNTAsIDM3LCA3LCAKKyAgICA2LCAxLCAxNTIsIDE1MCwgMzcsIDcsIDYsIDEsIDE5NiwgMTUwLCAzNywgNywgNiwgMSwgMjE4LCAxMTMsIDE1MCwgMzcsIDcsIAorICAgIDYsIDEsIDcyLCAxNTAsIDM3LCA3LCA2LCAxLCAyMTEsIDIxMSwgMTUwLCAzNywgNywgNiwgMSwgMjE0LCA4NSwgMTUwLCAzNywgCisgICAgNywgNiwgMSwgMjEzLCAxNjksIDE1MCwgMzcsIDcsIDYsIDEsIDIxMywgMTA4LCAxNTAsIDM3LCA3LCA2LCAxLCAyMTIsIAorICAgIDE1MiwgMTUwLCA5MiwgNywgNiwgMSwgNjMsIDE1MCwgOTIsIDcsIDYsIDEsIDI1MywgMjAxLCAxNTAsIDkyLCA3LCA2LCAxLCAKKyAgICAyNTEsIDEyMSwgMTUwLCA5MiwgNywgNiwgMSwgMjQ5LCAxMjUsIDE1MCwgOTIsIDcsIDYsIDEsIDc3LCAxNTAsIDkyLCA3LCAKKyAgICA2LCAxLCAyNDUsIDk1LCAxNTAsIDkyLCA3LCA2LCAxLCAyNDQsIDQxLCAxNTAsIDkyLCA3LCA2LCAxLCAyNDIsIDE2MiwgCisgICAgMTUwLCA5MiwgNywgNiwgMSwgNzUsIDE1MCwgOTIsIDcsIDYsIDEsIDIzNiwgMywgMTUwLCA5MiwgNywgNiwgMSwgMjM1LCAKKyAgICAxNDEsIDE1MCwgOTIsIDcsIDYsIDEsIDE1NSwgMTUwLCA5MiwgNywgNiwgMSwgMTg0LCAxNTAsIDkyLCA3LCA2LCAxLCAyMDYsIAorICAgIDE1MCwgOTIsIDcsIDYsIDEsIDc4LCAxNTAsIDkyLCA3LCA2LCAxLCAyMjcsIDExLCAxNTAsIDkyLCA3LCA2LCAxLCAyMjUsIAorICAgIDE5LCAxNTAsIDkyLCA3LCA2LCAxLCAxNTIsIDE1MCwgOTIsIDcsIDYsIDEsIDE5NiwgMTUwLCA5MiwgNywgNiwgMSwgMjE4LCAKKyAgICAxMTMsIDE1MCwgOTIsIDcsIDYsIDEsIDcyLCAxNTAsIDkyLCA3LCA2LCAxLCAyMTEsIDIxMSwgMTUwLCA5MiwgNywgNiwgMSwgCisgICAgMjE0LCA4NSwgMTUwLCA5MiwgNywgNiwgMSwgMjEzLCAxNjksIDE1MCwgOTIsIDcsIDYsIDEsIDIxMywgMTA4LCAxNTAsIDkyLCAKKyAgICA3LCA2LCAxLCAyMTIsIDE1MiwgMjQ5LCAxOTEsIDE1MCwgOTIsIDcsIDYsIDEsIDIyNywgMTEsIDE1MCwgOTIsIDI0MCwgCisgICAgMjIzLCAxNTAsIDkyLCAxOTUsIDE1MCwgOTIsIDIyMiwgMjI3LCAxNTAsIDkyLCAyNTUsIDU3LCAxNTAsIDkyLCAyMTQsIDEwLCAKKyAgICA0MiwgMjQ3LCAyMzcsIDkyLCAyNTAsIDgzLCA5MiwgMjQ5LCAyMzIsIDkyLCAyNDQsIDg2LCA5MiwgMjQwLCAyMTUsIDkyLCAKKyAgICAyMjksIDIzNSwgOTIsIDIyOSwgMjI4LCA5MiwgMjI3LCAxMTcsIDkyLCAyMTksIDI0MSwgOTIsIDExNiwgMiwgMjQ1LCAxMTksIAorICAgIDc5LCA5MiwgMjE0LCAxMDQsIDIyNCwgMzEsIDIzNiwgOTcsIDE2LCAxLCA2MywgMjI0LCAzMSwgMjM2LCA5NywgMTYsIDEsIAorICAgIDI1MywgMjAxLCAyMjQsIDMxLCAyMzYsIDk3LCAxNiwgMSwgMjUxLCAxMjEsIDIyNCwgMzEsIDIzNiwgOTcsIDE2LCAxLCAKKyAgICAyNDksIDEyNSwgMjI0LCAzMSwgMjM2LCA5NywgMTYsIDEsIDc3LCAyMjQsIDMxLCAyMzYsIDk3LCAxNiwgMSwgMjQ1LCA5NSwgCisgICAgMjI0LCAzMSwgMjM2LCA5NywgMTYsIDEsIDI0NCwgNDEsIDIyNCwgMzEsIDIzNiwgOTcsIDE2LCAxLCAyNDIsIDE2MiwgMjI0LCAKKyAgICAzMSwgMjM2LCA5NywgMTYsIDEsIDc1LCAyMjQsIDMxLCAyMzYsIDk3LCAxNiwgMSwgMjM2LCAzLCAyMjQsIDMxLCAyMzYsIAorICAgIDk3LCAxNiwgMSwgMjM1LCAxNDEsIDIyNCwgMzEsIDIzNiwgOTcsIDE2LCAxLCAxNTUsIDIyNCwgMzEsIDIzNiwgOTcsIDE2LCAKKyAgICAxLCAxODQsIDIyNCwgMzEsIDIzNiwgOTcsIDE2LCAxLCAyMDYsIDIyNCwgMzEsIDIzNiwgOTcsIDE2LCAxLCA3OCwgMjI0LCAKKyAgICAzMSwgMjM2LCA5NywgMTYsIDEsIDIyNywgMTEsIDIyNCwgMzEsIDIzNiwgOTcsIDE2LCAxLCAyMjUsIDE5LCAyMjQsIDMxLCAKKyAgICAyMzYsIDk3LCAxNiwgMSwgMTUyLCAyMjQsIDMxLCAyMzYsIDk3LCAxNiwgMSwgMTk2LCAyMjQsIDMxLCAyMzYsIDk3LCAxNiwgCisgICAgMSwgMjE4LCAxMTMsIDIyNCwgMzEsIDIzNiwgOTcsIDE2LCAxLCA3MiwgMjI0LCAzMSwgMjM2LCA5NywgMTYsIDEsIDIxMSwgCisgICAgMjExLCAyMjQsIDMxLCAyMzYsIDk3LCAxNiwgMSwgMjE0LCA4NSwgMjI0LCAzMSwgMjM2LCA5NywgMTYsIDEsIDIxMywgMTY5LCAKKyAgICAyMjQsIDMxLCAyMzYsIDk3LCAxNiwgMSwgMjEzLCAxMDgsIDIyNCwgMzEsIDIzNiwgOTcsIDE2LCAxLCAyMTIsIDE1MiwgNDIsIAorICAgIDEzNiwgMjQxLCAxNjgsIDkyLCA1NiwgMjM0LCAxMzgsIDkyLCA1NiwgMjIyLCAyMjcsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAKKyAgICAxNjAsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNjQsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNzIsIDkyLCA1NiwgMjQ4LCAKKyAgICAxNjIsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNzksIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNjYsIDkyLCA5LCAyMTUsIAorICAgIDE1NCwgMjM4LCAxMzgsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNjUsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNzgsIDkyLCAKKyAgICA5LCAyMTUsIDE1NCwgMjM4LCAxNTIsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNDUsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAKKyAgICAxNTQsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNzUsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNjEsIDkyLCA5LCAyMTUsIAorICAgIDE1NCwgMjM4LCAxNzcsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNTMsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNzYsIDkyLCAKKyAgICA5LCAyMTUsIDE1NCwgMjM4LCAxMzksIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNDQsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAKKyAgICAxMzcsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNjcsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNjksIDkyLCA5LCAyMTUsIAorICAgIDE1NCwgMjM4LCAxNDcsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNTgsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNTYsIDkyLCAKKyAgICA5LCAyMTUsIDE1NCwgMjM4LCAxODIsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxODEsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAKKyAgICAxMzUsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNjIsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxODAsIDkyLCA5LCAyMTUsIAorICAgIDE1NCwgMjM4LCAxNzEsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNTcsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxMzYsIDkyLCAKKyAgICA5LCAyMTUsIDE1NCwgMjM4LCAxNTksIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNDEsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAKKyAgICAxNDAsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNzAsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNDgsIDkyLCA5LCAyMTUsIAorICAgIDE1NCwgMjM4LCAxNTAsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNTEsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNDMsIDkyLCAKKyAgICA5LCAyMTUsIDE1NCwgMjM4LCAxNzQsIDkyLCA5LCAyMTUsIDE1NCwgMjM4LCAxNjgsIDIxNiwgMjMyLCAyMjAsIDI1NCwgCisgICAgMjUxLCAyMDksIDksIDIxNSwgMTU0LCAyMzgsIDE0OSwgMjE2LCAyMzIsIDIyMCwgMjU0LCAyNTEsIDIwOSwgOSwgMjE1LCAKKyAgICAxNTQsIDIzOCwgMTgxLCAyMTYsIDIzMiwgMjIwLCAyNTQsIDI1MSwgMjA5LCA5LCAyMTUsIDE1NCwgMjM4LCAxNzksIDIxNiwgCisgICAgMjMyLCAyMjAsIDI1NCwgMjUxLCAyMDksIDksIDIxNSwgMTU0LCAyMzgsIDE2MywgMjE2LCAyMzIsIDIyMCwgMjU0LCAyNTEsIAorICAgIDIwOSwgOSwgMjE1LCAxNTQsIDIzOCwgMTQ2LCAyMTYsIDIzMiwgMjIwLCAyNTQsIDI1MSwgMjA5LCA5LCAyMTUsIDE1NCwgCisgICAgMjM4LCAxNTksIDIxNiwgMjMyLCAyMjAsIDI1NCwgMjUxLCAyMDksIDksIDIxNSwgMTU0LCAyMzgsIDE0MiwgMjE2LCAyMzIsIAorICAgIDIyMCwgMjU0LCAyNTEsIDIwOSwgOSwgMjE1LCAxNTQsIDIzOCwgMTczLCAyMTYsIDIzMiwgMjIwLCAyNTQsIDI1MSwgMjA5LCAKKyAgICA5LCAyMTUsIDE1NCwgMjM4LCAxNTUsIDM3LCAxNDcsIDI1NSwgMjIsIDM3LCAxNDcsIDI1NSwgNDQsIDI0OSwgMTM2LCAyNDQsIAorICAgIDEzMSwgMjUwLCA2MCwgMjE1LCAxNzAsIDIyOSwgMTA4LCAyLCAyMTksIDEwNiwgMjE4LCAyNDcsIDExMywgMjMwLCAyNTQsIAorICAgIDIxOCwgMjQ2LCAyNTAsIDg2LCAyNTMsIDI1MCwgMjQ2LCAxMzAsIDIxOCwgMjQ1LCAxMTMsIDI1MSwgMTcyLCAyMjQsIDg0LCAKKyAgICAyNTEsIDE5MywgMjUzLCAyNTAsIDIyOSwgMTA3LCAyMTQsIDI4LCAyMTQsIDIyLCAyMTQsIDExNiwgMjMxLCA3OCwgMjE0LCAKKyAgICAxMiwgMjQ2LCA0NSwgMjQzLCAyMSwgMjQ1LCAxMzMsIDI0NiwgNDUsIDI0MywgMjEsIDI1NCwgMTY0LCAyNDYsIDQ1LCAyNDMsIAorICAgIDIxLCAyNTQsIDExLCAyNDMsIDIxLCAyLCAyMzEsIDE4NSwgMTYzLCAyMzEsIDEzLCA4OCwgMjE0LCAxNCwgMjQ5LCAyMDAsIAorICAgIDIzMSwgMTMsIDg4LCAyNDQsIDE4MSwgMjI0LCAyMDIsIDIzMSwgMTMsIDg4LCAyMTQsIDE0LCAyNDMsIDUwLCAyMzEsIDEzLCAKKyAgICA4OCwgMjQ0LCA2NCwgMjMxLCAxMywgODgsIDIxNCwgMzksIDI0MywgNTAsIDIzMSwgMTMsIDg4LCAyMzMsIDIwMiwgMjI0LCAKKyAgICAyMDIsIDIzMSwgMTMsIDg4LCAyMTQsIDM5LCAyNDksIDIwMCwgMjMxLCAxMywgODgsIDI0OSwgMjAwLCAyMzEsIDEyLCAxNjMsIAorICAgIDIzMSwgMTMsIDIsIDI0NSwgMjMsIDI0NCwgMTgxLCAyMjQsIDIwMiwgMjMxLCAxMywgMiwgMjQ1LCAyMywgMjMzLCAyMDIsIAorICAgIDIyNCwgMjAyLCAyMzEsIDEzLCAyLCAyNDUsIDIzLCAyNDQsIDY0LCAyMzEsIDEzLCAyLCAyNDUsIDIzLCAyMTgsIDI1MywgMiwgCisgICAgMjQ1LCAyMywgMjQzLCAxOSwgMjE5LCAxMDksIDIyMCwgMjAwLCAyMTksIDEwOSwgMjUwLCAxNzYsIDIyMiwgMTEwLCAyNDUsIAorICAgIDEyNywgMjE2LCAyMDYsIDI0OCwgMTU2LCAyMTYsIDIwNiwgMjI2LCAyMjMsIDIxNiwgMjA2LCAyNTEsIDgyLCAyMTYsIDgxLCAKKyAgICAyNTAsIDE3OCwgMjUyLCAyLCAyMjMsIDEyNywgMjQyLCAyNywgMjE4LCAyNTAsIDI1MiwgMiwgMjQ2LCA0OSwgNjgsIDIzMiwgCisgICAgNzIsIDI0NiwgNDksIDY4LCAyMjMsIDIxOCwgMjQyLCA1MSwgMjQ0LCAxMDEsIDIzMywgMTc2LCAyNTAsIDUwLCAyMzIsIDQ4LCAKKyAgICAyMzMsIDE3NSwgMjQ1LCA5LCAyMzMsIDE3NSwgMjMzLCAxNzYsIDI0NCwgMTM2LCAyMzYsIDExMywgMjEzLCAyMjcsIDIzMCwgCisgICAgMTk4LCAyMTcsIDIsIDI1MywgMjM0LCAyNDIsIDIzOSwgMjMxLCAyMDEsIDIxNCwgMjYsIDIxOCwgMjEsIDIzMywgMTQ4LCAKKyAgICAyNTIsIDE5NSwgMjI1LCAyMzAsIDIyNCwgMzgsIDI1NCwgOTQsIDI0MiwgMjI1LCAyNTQsIDk0LCAyMjYsIDEyOCwgMjI2LCAKKyAgICAxMjksIDI1MCwgMTc5LCAyMTksIDY4LCAyNDIsIDEyNiwgMjIwLCAzNywgNjgsIDIyNSwgMjEyLCAyMzEsIDIyMiwgMjI3LCAKKyAgICAxMDAsIDI1MSwgMjQ0LCAyMjUsIDE0NSwgMjMzLCAxNTgsIDIyMywgMjE5LCAyNDksIDIwNSwgMjIzLCAyMTksIDI1MiwgCisgICAgMjA1LCAyNDksIDIzNSwgMjIzLCAyMTgsIDI0OSwgMTU5LCAyMiwgMjIzLCAyMTgsIDIxOSwgOTUsIDI1MSwgMjE4LCAyMTksIAorICAgIDIyMSwgMjUxLCAyMDMsIDI0NCwgODUsIDI0NCwgODEsIDIyMywgMTQyLCAyMTgsIDIwNSwgMjI1LCAxNDcsIDI0OCwgMjQyLCAKKyAgICAyMjcsIDEzOCwgMjE4LCAyMjIsIDI0NCwgODIsIDIyMCwgMTc1LCAyNDQsIDE4MCwgMjUxLCA3NywgMiwgMjE4LCAxOTgsIAorICAgIDI0OCwgMTA3LCAyMTksIDI1NSwgMjQwLCAyMjIsIDI0OSwgMjA0LCAyMjEsIDE1LCAyNDAsIDIyMSwgMjQwLCAyMjIsIDI0OSwgCisgICAgMjA0LCAyNDYsIDE4MywgMjQ5LCAyMzQsIDI1MCwgMTQ0LCAxMzQsIDI1MSwgNTQsIDIzMywgMTIsIDI0OSwgMTUzLCAyNDEsIAorICAgIDE2MCwgMjI1LCAxNDksIDIyMCwgMTg1LCAyNTIsIDgzLCAyNTEsIDIxNCwgMjI1LCAxNTAsIDY4LCAyNDQsIDEyMiwgMjQ5LCAKKyAgICAyMzMsIDI0NCwgMTEzLCAyMiwgMjM0LCAxNTIsIDIxNywgMjQwLCAyMTMsIDIxOSwgMjQyLCAxMTYsIDIyMiwgMjA3LCAyNTEsIAorICAgIDIyOCwgMjIsIDI0OSwgMTY2LCAyMTMsIDIyNSwgMjQzLCAyNCwgMjUwLCAzOSwgMjQzLCAyNCwgMjE2LCAxNjQsIDI0NiwgCisgICAgMTY2LCAyNTIsIDEwOCwgMjMwLCAyMzMsIDI1MCwgNjcsIDI1MiwgMTA4LCAyMzAsIDIzMiwgMjUyLCAyMzEsIDI1MSwgMjI3LCAKKyAgICAyMjMsIDIyMCwgMjEzLCAxOTIsIDIyNSwgMTExLCAyNTIsIDI3LCAyNTEsIDc2LCAyMzUsIDI1MywgMjUwLCAxMzcsIDIxNiwgCisgICAgMjA2LCAyNDQsIDI1MSwgMjUwLCAxMzYsIDI0NCwgMTgzLCAyNDQsIDE4NCwgMjE5LCAyMTksIDI1MiwgMjA0LCAyMjYsIAorICAgIDE1OSwgMjI1LCAxNjAsIDI1MCwgOSwgMjUyLCAyMDUsIDIxOCwgMjMsIDIxNiwgMjA2LCAyNDksIDE5MSwgMjQ0LCAxNTYsIAorICAgIDIyNSwgMjMxLCAyNDgsIDE1MywgMjM1LCAyNDcsIDI0NywgMjA2LCAyNTEsIDMyLCAyMTksIDY3LCAyMTMsIDIyOCwgMjUwLCAKKyAgICAxNTgsIDIzMSwgMTMsIDIxNCwgMTQ5LCAyNTAsIDIxOSwgMjIyLCAxNDAsIDIyMiwgMTY1LCAyNDIsIDI0NCwgMjUxLCA1MSwgCisgICAgMjUxLCAzMywgMjQxLCA5NCwgMjQ0LCAyMTksIDIxMywgMjQ0LCAyMjMsIDEzNiwgMjUwLCA0MCwgMjQ0LCAxNzUsIDIyNSwgCisgICAgMTcyLCAyMiwgMjQ0LCAxNzksIDIzMSwgMTEwLCAyMzAsIDI0OCwgMjUxLCA2NiwgMjUwLCA5OSwgMjQyLCA3OSwgMjU0LCAKKyAgICAyNywgMjI2LCAyMjYsIDIxNiwgMjQwLCAyNDIsIDk4LCAyNTAsIDg5LCAyMTcsIDIwOCwgMjE3LCA4MCwgMjUwLCA4MCwgCisgICAgMjUxLCAyNTAsIDIyNiwgODgsIDI1NCwgMjYsIDIxNCwgMTU1LCAyNDMsIDIwNiwgMjQ4LCAxNCwgMjQyLCA1LCAyMjAsIDMxLCAKKyAgICAyMzIsIDExMiwgMjUyLCAzNywgMjQzLCAyMDcsIDI0OCwgNTcsIDI1MSwgMjE3LCAyNDQsIDE0MSwgMjI1LCAyMDEsIDI1MSwgCisgICAgNDEsIDI3LCAyMjgsIDIwMSwgMjMwLCAyMjUsIDI3LCAyMjgsIDE5NiwgMjIyLCAxNTMsIDI0MiwgMjAxLCAyNywgMjM0LCAKKyAgICAyNTUsIDIxNiwgMTYxLCAyMTQsIDEzOSwgMjcsIDIyMiwgMTM0LCAyMjMsIDYxLCAyMjAsIDIxMiwgMiwgMjIyLCAxNjcsIAorICAgIDIxNywgMjEwLCAyMjQsIDEwMywgMjIsIDI1MiwgMjA1LCAyMjAsIDUyLCAyMiwgMjIwLCA1MiwgMjUxLCAyMzcsIDI1MiwgCisgICAgMTY5LCAyMiwgMjQxLCAxNTQsIDI1MCwgMTgwLCAyNDQsIDE2MiwgMjIwLCAxMCwgMjIzLCA2MiwgMjE4LCAyMjYsIDIxNiwgCisgICAgMTY1LCAyNDEsIDk1LCAyMjQsIDEwNCwgMjU0LCAxNjUsIDI0NCwgMTIwLCAyMjMsIDczLCAyNDQsIDEyMCwgMjE4LCAyMDAsIAorICAgIDI0MSwgODQsIDI1MSwgMTczLCAyNDEsIDg0LCAyLCAyNDMsIDE5MCwgMjI3LCAxMzIsIDI1MSwgMTczLCAyMzUsIDI0NywgCisgICAgMjI1LCAxNTUsIDIyNywgMTMxLCAyNDUsIDEzMiwgMjI1LCAxNTUsIDIyNywgMTMxLCAyNDEsIDkzLCAyNTIsIDE5MSwgMjUzLCAKKyAgICAyMjQsIDIxNywgMjE4LCAyMzIsIDExMiwgMjQxLCA4OSwgMjMyLCAyNDAsIDI0MSwgODksIDI0OSwgMjM4LCAyMTksIDc5LCAKKyAgICAyMjIsIDEzOSwgMjQ4LCAxMTUsIDIxOSwgNzksIDI0NSwgMTMsIDIzNiwgOCwgMjMzLCAyMTEsIDIzNSwgMjQ3LCAyNTEsIAorICAgIDI2LCAyNDUsIDEzMiwgMjUxLCAyNiwgMjI0LCA2OCwgMjMwLCAyNTIsIDIyNywgMjAsIDIxNCwgMjgsIDI1MSwgMTc3LCAKKyAgICAyNDksIDIwNywgMjE3LCA3MywgMjMzLCAxNDAsIDIyNCwgMTA1LCAyNTEsIDI0LCAyNDYsIDE3MSwgMjQ5LCAxOTgsIDIxMywgCisgICAgMjQ3LCAyMjAsIDE3LCAyMjAsIDE1LCAyNDEsIDk0LCAyMjQsIDgwLCAyNDMsIDEwLCAyMjEsIDIsIDIzMSwgMjksIDIyMywgCisgICAgMTMwLCAyNTAsIDE2OCwgMjQ3LCAyMTEsIDIyNSwgMjQxLCAyNTEsIDI1MSwgMjQ1LCAyNDcsIDIyNywgMTQwLCAyMTksIAorICAgIDIwMywgMjIwLCAyNTMsIDI1MSwgMTc2LCAyNTQsIDEzMCwgMjQxLCAxNTksIDIzMywgMjQyLCAyNTIsIDEwNiwgMjQ0LCAKKyAgICAxNzksIDIxNiwgMTY0LCAyNDQsIDE3OSwgMjUyLCAxLCAyMTYsIDYzLCAyNDIsIDk2LCAyNTAsIDE2OSwgMjUyLCAyMzEsIAorICAgIDI1MCwgMTY5LCAyNDQsIDc2LCAyNTIsIDIzMSwgMjUwLCAxNjksIDI1MiwgMjksIDIyNiwgMTA2LCAyMzQsIDE0NiwgMjI1LCAKKyAgICAxNjQsIDI0NiwgMTYzLCAyNTEsIDY3LCAyNTIsIDIyMiwgMjUxLCA2NywgMjQ3LCAyMDUsIDIzMCwgMjUzLCAyNDUsIDIzLCAKKyAgICAyNDksIDIwOCwgMjQ1LCAyMywgMjE3LCA3NCwgMjQ1LCAyMywgMjI0LCAxMDYsIDI0NSwgMjMsIDI1MSwgMjUsIDI0NSwgMjMsIAorICAgIDI0NiwgMTcyLCAyNDUsIDIzLCAyMTksIDE5MiwgMjEzLCAyNDcsIDI0MSwgOTUsIDI0NSwgMjMsIDIzMSwgMzAsIDI0NSwgCisgICAgMjMsIDI0NywgMjEyLCAyNDUsIDIzLCAyMjUsIDI0MiwgMjQ1LCAyMywgMjQ0LCA3OSwgMjQ1LCAyMywgMjQyLCAxMjMsIAorICAgIDI0NSwgMjMsIDIxMywgMjE0LCAyNDUsIDIzLCAyNTIsIDExNywgMjQ1LCAyMywgMjI2LCAyMDksIDI0NSwgMjMsIDIyNSwgCisgICAgMjQyLCAyMjgsIDIwNywgMjI2LCAxNDIsIDIyNSwgMTAzLCAyNDUsIDEwMiwgMjQ2LCA0OCwgMjI4LCAyMDcsIDIzMCwgMjUwLCAKKyAgICAyMTYsIDI0NSwgNjksIDExNiwgMjI1LCAxNzcsIDI1MiwgMjI2LCAyMzYsIDEwMCwgNjksIDEyMSwgMjI1LCAxNzcsIDI1MiwgCisgICAgMjI2LCAyMzYsIDEwMCwgNjksIDQzLCAyMjUsIDE3NywgMjUyLCAyMjYsIDIzNiwgMTAwLCA2OSwgNDcsIDIyNSwgMTc3LCAKKyAgICAyNTIsIDIyNiwgMjM2LCAxMDAsIDI0NCwgMTczLCAyNDIsIDExOSwgNTMsIDIxNCwgMjAsIDI0MiwgMTE5LCA1MywgMjI3LCAKKyAgICAxMTgsIDI0MiwgMTE5LCA1MywgMjE3LCAxMDIsIDExNiwgNTMsIDIxNywgMTAyLCAxMjEsIDUzLCAyNTAsIDc5LCAyNDIsIAorICAgIDExNCwgNTMsIDIxMCwgMjQyLCAxMTQsIDUzLCAyNDksIDE4NiwgMjEzLCAyMTAsIDI0MiwgOTgsIDI0NSwgMTAzLCAyMjksIAorICAgIDI1MiwgMjE4LCAxMTIsIDIzNSwgMjQxLCAyNDYsIDE2OCwgMjM0LCAyMDIsIDI1MiwgMzksIDIxMywgMjEwLCAyNTAsIDUzLCAKKyAgICAyMjUsIDUwLCAyNDIsIDExNywgMjI1LCAxNDYsIDIzMiwgNTUsIDIyMCwgMjA1LCAyNTMsIDI0NiwgMjIwLCAyMDUsIDI0MiwgCisgICAgMTMsIDIyMCwgMjA1LCAyMTMsIDIxMCwgMjIyLCAxODAsIDIxMywgMjEwLCAyNTEsIDIzNiwgMjQ0LCAxMTgsIDI1MSwgMTQ0LCAKKyAgICAyMzYsIDExMywgMjIwLCAxMTQsIDI1MSwgMTQzLCAyMzYsIDExMywgMjIwLCAxMTQsIDI1MSwgMjEzLCAyNDMsIDM0LCAyMzIsIAorICAgIDYzLCAyMTMsIDIxMSwgMjQ1LCA3LCAyMzIsIDY0LCAyMiwgMjEzLCAyMTIsIDI0MSwgMTY1LCAyNDIsIDExMywgMTE5LCAKKyAgICAyMzEsIDE5MywgMjQxLCAxNjUsIDI0MiwgMTEzLCAxMTksIDIxMywgMjA5LCAyNDEsIDE2NSwgMjQyLCAxMTMsIDIyNSwgCisgICAgMTY5LCAyMjcsIDEzMCwgMjEzLCAyMTIsIDIsIDI1MSwgMTYwLCAyNDYsIDQ2LCAyNTEsIDE5NCwgMiwgMjE0LCAyMjgsIAorICAgIDIyNiwgODAsIDIsIDI1MiwgNCwgMjQyLCAxMzYsIDIzMiwgNjQsIDIsIDI0MiwgMjEwLCAyMjYsIDIxLCAyMzIsIDUyLCAKKyAgICAyMzIsIDY0LCAyLCAyMTYsIDY5LCAyMjcsIDExMSwgMjMyLCA2MywgMjI3LCAxMTEsIDIxMywgMjExLCAyNTIsIDIzMCwgCisgICAgMjQ5LCAyNTIsIDIxMywgMTk1LCAyMjUsIDEwNiwgMjM1LCAyNDcsIDIyNywgMTI2LCAyMzUsIDI0NywgMjQzLCA5LCAyNDMsIAorICAgIDYyLCAyNTIsIDIzMSwgMjU0LCAxNDksIDI0NSwgMTA3LCAyNTQsIDE5NiwgMjU0LCAxOTcsIDIzMSwgMjAsIDIzNiwgMTE4LCAKKyAgICAyMjAsIDQ3LCAyMzYsIDkwLCAyNDgsIDEwNiwgMjI2LCA3OSwgMjQyLCAyMDcsIDI0OCwgMjQ2LCAyMzMsIDcxLCAyMzAsIAorICAgIDk4LCAyMjUsIDE2OCwgMjQ1LCAyNCwgMjMyLCAyMCwgMjQyLCAxMzUsIDI1MiwgMTg0LCAyMjUsIDE3MSwgMjE4LCAxMzEsIAorICAgIDIyNSwgMjM0LCAyMzQsIDE4NCwgNzksIDIzMiwgMjQwLCAyMzMsIDEzMiwgMjIzLCAxNjQsIDI0MywgMTUwLCAyMTksIDg1LCAKKyAgICAyMzQsIDE4MywgMjUxLCAyMjIsIDI0OSwgMjEwLCAyLCAyNDIsIDc0LCAyMTQsIDYsIDI1MiwgMTE1LCAyNDIsIDc0LCAyNTEsIAorICAgIDE4OCwgMjQyLCA3NCwgMTE5LCAyNDIsIDcyLCAyMTksIDIxNywgMjQyLCA3NCwgMjQyLCAyMTksIDI0MiwgNzQsIDI0MiwgCisgICAgNzUsIDIsIDcxLCAyNTIsIDAsIDI0MiwgNzQsIDI0MiwgMjI1LCAyNDIsIDc0LCAyMTMsIDM0LCAyNDIsIDc0LCAyMjUsIDUxLCAKKyAgICAyNDIsIDc0LCAyNDIsIDc1LCAyLCAyMjMsIDIyMCwgMjIzLCAyMzEsIDI0MiwgNzIsIDI0MiwgNzUsIDI0OCwgMTUzLCAyNDgsIAorICAgIDY2LCAyMjEsIDI3LCAyLCAxMTEsIDYyLCAyMzYsIDczLCAyNDUsIDI1MCwgMTgyLCAyNTEsIDE3MCwgMjU0LCAxNDgsIDg4LCAKKyAgICAyNTEsIDI0NSwgMjIwLCAzOSwgODgsIDI1MCwgMzIsIDg4LCAyMTksIDE5NywgMjE4LCAyMDcsIDg4LCAyNDYsIDE2MSwgCisgICAgMjQ4LCAyMjQsIDg4LCAyMjUsIDIzNSwgNjgsIDIyNSwgMTY1LCAyNDQsIDE1MCwgMjUyLCA1MSwgMjQ3LCAyMzgsIDg4LCAKKyAgICAyMTksIDIxMCwgMjUyLCAyMDQsIDIxNywgMTE1LCAyNTIsIDIwNCwgNjksIDI0NCwgMTQwLCAyNDEsIDYzLCAyMjUsIDE3NSwgCisgICAgODgsIDIzMSwgMzMsIDI1MiwgMjE3LCAyNDksIDE2MiwgMjQ1LCAxMjAsIDExMCwgMjQ3LCAyMDcsIDUzLCAyNDksIDIwMiwgCisgICAgMjUxLCA0MiwgMjUyLCAxOTAsIDIsIDIxMywgMzIsIDUzLCAyNTIsIDE5MCwgMiwgMjQ3LCAyMDcsIDUzLCAyNTIsIDE5MCwgCisgICAgMiwgMjQ1LCAxMzUsIDUzLCAyNTIsIDE5MCwgMiwgMjI1LCAxNDQsIDUzLCAyMzEsIDMzLCAyLCAyMTMsIDIyMywgMjUwLCAKKyAgICAxOTcsIDIsIDIxNSwgMTMwLCAyMTYsIDIwMiwgMjIsIDIxMywgMzIsIDUzLCAyMjIsIDEyMCwgMjI2LCA3OCwgMjUwLCAxMywgCisgICAgMjUxLCAxOTIsIDIzMSwgNjksIDI0NCwgMTQ1LCAyNDgsIDIsIDIyNywgNjUsIDI0OCwgNywgMjQ2LCAxMjUsIDI0NCwgMTk2LCAKKyAgICAyNDQsIDEyOSwgMjEwLCAyNDQsIDE5NiwgMjQ0LCAxMjksIDIyNiwgMjM5LCAyLCAyNDksIDE2NCwgMjI2LCAyMzksIDI0NSwgCisgICAgMTYsIDIxNSwgMTQwLCAyNTEsIDcyLCAyMTcsIDIzOSwgMjUxLCA3MiwgMjUxLCA0MywgMjM2LCAxMDAsIDI1MCwgMTk3LCAyLCAKKyAgICAyMTUsIDEzMCwgMjE2LCAyMDEsIDI1MCwgMTk3LCAyLCAyNDYsIDE3OSwgMjE2LCAyMDEsIDI1MiwgMTg3LCAyNTAsIDE5NiwgCisgICAgMjUwLCA2NiwgMjI1LCA0NiwgMjIzLCAxMjEsIDIyNSwgNDYsIDIyNiwgMTg0LCAyMTksIDc1LCAyMjMsIDY4LCAyMTYsIAorICAgIDE5MywgMjIzLCA2OCwgMjUxLCAyNDEsIDIxOCwgNTMsIDIzMywgMTczLCAyMjgsIDE5OSwgMjI4LCAyMDAsIDIsIDI0OCwgCisgICAgMTUyLCAyNDksIDIwOSwgMjUwLCA2MCwgMjUxLCAyNDIsIDIxMCwgMjUxLCAyNDIsIDI0MiwgMjI1LCAyNTEsIDI0MiwgMjUyLCAKKyAgICAwLCAyNTEsIDI0MiwgMjI3LCA2MSwgMjUxLCAyNDIsIDI1MSwgMjM5LCAyMzAsIDkzLCAyNTIsIDIyMCwgMjIyLCAxMjgsIAorICAgIDIzMSwgMTk0LCAyMTcsIDIyMywgMjI0LCA1MCwgMjI2LCAyMzcsIDI0NCwgMjQ4LCAyMzIsIDExMiwgMjIyLCAxNjQsIDI1NCwgCisgICAgMTI3LCAyMjUsIDY3LCAyNTUsIDI5LCAyMzIsIDI0MiwgMjUwLCAxODYsIDIzMSwgMjA2LCAyMjcsIDM1LCAyMTYsIDIwOSwgCisgICAgMjM2LCAxMDksIDIxNiwgMjA5LCAyMjYsIDI0NCwgMjQ2LCAxMDEsIDg4LCAyMzYsIDEwNiwgMjQ1LCAxOTksIDI0NSwgMjAwLCAKKyAgICAyLCAyNDYsIDE3OSwgODAsIDUwLCAyNTAsIDYwLCAyMzIsIDc4LCAyLCAyMzIsIDIzNiwgMjQ0LCAxNjIsIDI1MCwgNjAsIAorICAgIDIzMiwgNzgsIDIsIDIyNCwgODMsIDI0NCwgMTYyLCAyMTAsIDIzMiwgNzgsIDIsIDIyNCwgODMsIDI0NCwgMTYyLCAyMTAsIAorICAgIDIzMiwgNzgsIDIsIDIzMiwgMjM2LCAyNDQsIDE2MiwgMjI1LCAxNTIsIDIyNSwgMTUzLCAyNDEsIDk3LCAyMjksIDIzMywgCisgICAgMjMxLCA0MywgMjI2LCAyOSwgMjMxLCA0MywgMjI2LCAzMCwgMiwgOTYsIDgwLCAyNTMsIDI1MCwgMjMzLCAxNjgsIDIxNCwgCisgICAgMTU4LCAyMzEsIDQyLCAyMzEsIDQzLCAyMjYsIDMwLCAyMjcsIDEzMywgMjI4LCAyMjksIDIzMSwgNDMsIDIyNiwgMjgsIAorICAgIDI1NCwgMTI4LCAyLCAyNTIsIDE3NSwgMjUxLCA2NiwgMjE0LCAxNTUsIDI1MSwgNjYsIDIxNywgMjIwLCAyMjQsIDk4LCAKKyAgICAyMTQsIDE1NCwgMjE2LCAzMiwgOTYsIDI1NCwgMzMsIDI1MCwgNjIsIDk2LCAyMiwgMTM1LCAyMTAsIDI1MCwgOTYsIDI1NCwgCisgICAgMzMsIDI1MCwgNjIsIDk2LCAyMiwgMTM1LCAyMTAsIDI1MCwgOTYsIDI1NCwgMzQsIDIsIDM3LCAxMjQsIDIyNywgMjYsIAorICAgIDI1MCwgNjIsIDI0NiwgMTc5LCAyMiwgMjE1LCAxMzAsIDIxMCwgMjUwLCA5NiwgMjU0LCAzMywgMjU0LCAxMjYsIDI0NiwgCisgICAgMTc5LCAyMiwgMjE1LCAxMzAsIDIxMCwgMjUwLCA5NiwgMjU0LCAzMywgMTE3LCAyNTEsIDE5MSwgODgsIDEyNywgMjUxLCAKKyAgICAxOTEsIDg4LCAyMTksIDIxNCwgMiwgMjUxLCA2MCwgOTEsIDIxOSwgMjEzLCAyMTksIDIxNCwgMiwgMTI0LCAyMTksIDIzNywgCisgICAgMjE0LCAyMiwgMjE5LCAyMTQsIDIsIDEzNywgMjE5LCAyMzcsIDIxNCwgMjEsIDI1MiwgMTYxLCAyNDUsIDI1MCwgMjI1LCAKKyAgICAxOTcsIDIzMywgMTY0LCAyMzIsIDg5LCAyNDMsIDI0LCAyMjMsIDE3OCwgMjMyLCA4OSwgMjQzLCAyNCwgMjMzLCAyMiwgMiwgCisgICAgMjM2LCA4MywgMjI2LCAxMTAsIDI1MCwgNjAsIDIzMywgMjIsIDIsIDIzNSwgMCwgMjM1LCAwLCAyMzMsIDIxLCAyMTAsIAorICAgIDIzMywgMjEsIDI1MiwgOTEsIDI1MiwgOTIsIDIsIDI1MSwgNjAsIDkxLCAyNTEsIDI0MCwgMjMzLCA3NCwgODgsIDIyNCwgCisgICAgOTksIDI1MSwgMTQwLCAyNTIsIDIyOSwgMiwgMTM1LCA4MCwgNTAsIDI0NSwgMjIyLCAyLCAxMzUsIDgwLCA1MCwgMjI3LCAKKyAgICAxMDAsIDIsIDI0NSwgMTE5LCAxNTYsIDIsIDQzLCA0NywgODAsIDUwLCAyMTksIDI0NCwgMiwgOTYsIDgwLCA1MCwgMjE2LCAKKyAgICAyNDAsIDIsIDIxNSwgMTMwLCA4MCwgNTAsIDIyOCwgMjI5LCAxMjQsIDIxNSwgMTYwLCAyNDYsIDEzLCA4OCwgMjM0LCAyNTQsIAorICAgIDIxNywgMjEzLCAyMzYsIDc3LCAxNiwgMzEsIDcsIDYsIDIzMywgMTMxLCAyMzYsIDc3LCAxNiwgMzEsIDcsIDQsIDIzMywgCisgICAgMTMxLCAyMzYsIDc3LCAxNiwgMzEsIDIyOCwgOTgsIDIzNiwgNzcsIDE2LCAzMSwgMjE4LCAxNDIsIDIzNiwgNzcsIDE2LCAKKyAgICAzMSwgNywgMjMzLCAxMzEsIDI0NCwgMTg1LCAyNDUsIDI1MCwgMjE2LCAyMzUsIDIxMywgMTkwLCAyNDIsIDEyNCwgMjI4LCAKKyAgICA4MSwgMjIsIDI1MSwgMjQ2LCAyNDEsIDE3MSwgMjI1LCAyMTgsIDIzMSwgMTA5LCAyMTcsIDIyMSwgMjQ5LCAxNzcsIDI1MiwgCisgICAgMjA1LCAyMjAsIDcyLCAyMjUsIDE3OSwgMjE5LCAxMTAsIDIsIDIzMSwgMTA3LCAyNDcsIDE5NSwgMjM1LCAyNDcsIDE2LCAKKyAgICAzMSwgMjUyLCAxMDMsIDIxNiwgMTkxLCAyNDUsIDIzNSwgODUsIDQyLCAyNTEsIDE0MCwgNjksIDQyLCAyNTEsIDE0MCwgCisgICAgMjMzLCAyMDcsIDIyNCwgMzgsIDI1MCwgOTUsIDIzMywgMjA3LCAyNTIsIDAsIDI1MCwgOTUsIDIzMywgMjA3LCAyMjcsIDYxLCAKKyAgICAyNDgsIDY1LCAyMzMsIDIwNywgMjUyLCAwLCAyNDgsIDY1LCA0LCAyMjcsIDYxLCAyNDgsIDY1LCA0LCAyNTIsIDAsIDI0OCwgCisgICAgNjUsIDIxNSwgMTM5LCAyMjQsIDM4LCAyMTYsIDE5NiwgMjQ2LCAxODAsIDIyNCwgMzgsIDIxNiwgMTk2LCAyMTUsIDEzOSwgCisgICAgNCwgMjI0LCAzOCwgMjE2LCAxOTYsIDI0NiwgMTgwLCA0LCAyMjQsIDM4LCAyMTYsIDE5NiwgMjUwLCA2NCwgMjQ1LCAyNCwgCisgICAgMTI0LCAyMjcsIDE0MywgMjUwLCA2NCwgMjQ1LCAyNCwgMTE5LCAyMjcsIDE0MywgMjUwLCA2NCwgMjQ1LCAyNCwgMTM3LCAKKyAgICAyMjcsIDE0MywgMjUwLCA2NCwgMjQ1LCAyNCwgMjQ0LCAxMDEsIDIyNywgMTQzLCAyNTAsIDY0LCAyNDUsIDI0LCAyNDQsIAorICAgIDE3MCwgMjI3LCAxNDMsIDI1MCwgNjQsIDI0NSwgMjQsIDIyMCwgNzIsIDIyNywgMTQzLCAyNTAsIDY0LCAyNDUsIDI0LCAKKyAgICAyMjEsIDY2LCAyMjcsIDE0MywgMjUwLCA2NCwgMjQ1LCAyNCwgMjQ2LCAxNSwgMjI3LCAxNDMsIDI1MCwgNjQsIDI0NSwgMjQsIAorICAgIDIyOSwgOTUsIDIyNywgMTQzLCAyNTAsIDY0LCAyNDUsIDI0LCAyMTcsIDIxNCwgMjI3LCAxNDMsIDI1MCwgNjQsIDI0NSwgCisgICAgMjQsIDI0NSwgMjQ2LCAyMjcsIDE0MywgMjUwLCA2NCwgMjQ1LCAyNCwgMjE2LCA0OSwgMjI3LCAxNDMsIDI1MCwgNjQsIAorICAgIDI0NSwgMjQsIDIyNywgOTUsIDI1MCwgNjQsIDI0NSwgMjQsIDIxNiwgMjksIDI1MCwgNjQsIDI0NSwgMjQsIDIxNywgMTA3LCAKKyAgICAyNTAsIDY0LCAyNDUsIDI0LCAyNDQsIDk3LCAyNTAsIDY0LCAyNDUsIDI0LCAyNDQsIDE2OCwgMjUwLCA2NCwgMjQ1LCAyNCwgCisgICAgMjIwLCA2OCwgMjUwLCA2NCwgMjQ1LCAyNCwgMjIxLCA2NSwgMjUwLCA2NCwgMjQ1LCAyNCwgMjQ2LCAxNCwgMjUwLCA2NCwgCisgICAgMjQ1LCAyNCwgMjI5LCA5NCwgMjUwLCA2NCwgMjQ1LCAyNCwgMjE3LCAyMTIsIDI1MCwgNjQsIDI0NSwgMjQsIDI0NSwgMjQ0LCAKKyAgICAyNTAsIDY0LCAyNDUsIDI0LCAyMTYsIDQ3LCAyMzEsIDEsIDI0NCwgNjUsIDIxNywgNCwgMjE2LCAyMjgsIDIxOSwgMTAyLCAKKyAgICA2OCwgMjMzLCAxMDksIDIyMCwgMTE1LCA2OCwgMjM1LCAyNDgsIDIzMCwgMjQ2LCAyNDIsIDIyMywgMjQ1LCAyNCwgMiwgCisgICAgMjIwLCAyMSwgMjQ1LCAxMDIsIDI0NSwgMjQsIDIsIDIxNywgMjM1LCA2OCwgMjM1LCAxNzAsIDIyMCwgMjEsIDI0NSwgMjQsIAorICAgIDIsIDIxMCwgMjMwLCAyNTAsIDIyMCwgMjEsIDI0NSwgMjQsIDIsIDIxMCwgMjMwLCAyNTEsIDIyLCAyMjAsIDIxLCAyNDUsIAorICAgIDEwMiwgMjIwLCAyMSwgMjQ1LCAyNCwgMiwgMjEwLCAyMzAsIDI1MSwgMjIsIDI1MCwgMzQsIDIxOCwgMjA2LCAyMjAsIDIxLCAKKyAgICAyNDUsIDI0LCAyLCAyMTAsIDIzMCwgMjUxLCAyMiwgMjE3LCA3MSwgMjQ1LCAxMDIsIDIyMCwgMjEsIDI0NSwgMjQsIDIsIAorICAgIDI0MiwgMTI4LCAyMjAsIDIxLCAyNDUsIDI0LCAyLCAyNDEsIDk2LCAyMTMsIDIyMSwgMjQ1LCAyMywgMjIwLCAyMSwgMjQ1LCAKKyAgICAyNCwgMiwgMjIwLCAyMSwgMjQ1LCAxMDIsIDI0NSwgMjQsIDIyMiwgMTU4LCAyNDgsIDEzNCwgMjQ0LCAxMjIsIDIyNCwgMTYsIAorICAgIDI0NSwgMjMsIDIyMCwgMjEsIDI0NSwgMjQsIDIsIDI0MiwgNzMsIDI0NSwgMTAyLCAyMjAsIDIxLCAyNDUsIDI0LCAyLCAKKyAgICAyMTgsIDI0OCwgMjIwLCAyMCwgMjQ1LCAyMywgMjI5LCAyMzYsIDI0NSwgMjMsIDIxNSwgMTY0LCAyNDUsIDIzLCAyNDUsIAorICAgIDI0LCAyLCAyNTAsIDM0LCAyMTgsIDIwNiwgMjI2LCAxMDMsIDI0NSwgMjMsIDI1MCwgNywgMjQ1LCAyMywgMjQ1LCAyNCwgCisgICAgMjE3LCAxMDQsIDExMSwgMjM0LCAxODMsIDIzNCwgMTgyLCAyNDUsIDI0LCAyLCAyNTAsIDYwLCAyNDUsIDEwMiwgMjQ1LCAKKyAgICAyNCwgMiwgMjE5LCA0NSwgMjE2LCAyNDYsIDIyLCAyMTMsIDIyMSwgMjQ1LCAxMDQsIDI0NSwgMjQsIDIsIDIxOSwgNDUsIAorICAgIDIxNiwgMjQ2LCAyMiwgMjE3LCA3MSwgMjQ1LCAxMDIsIDI0OCwgOSwgMjQ1LCAyMywgMjU0LCAxNDQsIDI0NSwgMjMsIDIyNSwgCisgICAgMTQzLCAyNDUsIDIzLCAyNDksIDE3OSwgMjQ1LCAyMywgMjI2LCA4MiwgMjQ1LCAyMywgMjQ1LCAyNCwgMiwgMjMyLCAyNTMsIAorICAgIDY4LCAyMTYsIDE3NSwgMjQ4LCA5LCAyNTEsIDE0MiwgMjI0LCAxNiwgMjQ1LCAyMywgMjQ0LCAyNDEsIDI0NSwgMjMsIDIxNCwgCisgICAgNywgMjQ1LCAyMywgMjIwLCAzOCwgMjQ1LCAyMywgMjE3LCAzOCwgMjQ1LCAyMywgMjMyLCAyNDMsIDI0OSwgMTc5LCAyNDUsIAorICAgIDIzLCAyNDUsIDI0LCAyLCAyMTAsIDIzMCwgMjUxLCAyMiwgMjUwLCAzNCwgMjE4LCAyMDYsIDI0NSwgMjQsIDIyMiwgMTMyLCAKKyAgICAyMzYsIDExMywgMjQ0LCAyNDIsIDI1NCwgMCwgMjQ1LCAyMywgMjQ0LCAxMzgsIDI0NSwgMjMsIDI0NywgMjM4LCAyNDUsIAorICAgIDIzLCAyNDUsIDI0LCAyMTMsIDIxOSwgMjMwLCAyNTAsIDI0NSwgMjQsIDIsIDIzMSwgMjE5LCAyMzIsIDIyLCAyNDIsIDIyMywgCisgICAgMjUxLCAyNSwgMjQ1LCAyNCwgMiwgMjIwLCAyMSwgMjQ1LCAxMDIsIDI1MSwgMjUsIDI0NSwgMjQsIDIsIDIxNywgMjM1LCAKKyAgICA2OCwgMjM1LCAxNzAsIDIyMCwgMjEsIDI1MSwgMjUsIDI0NSwgMjQsIDIsIDIxMCwgMjMwLCAyNTAsIDIyMCwgMjEsIDI1MSwgCisgICAgMjUsIDI0NSwgMjQsIDIsIDI0MiwgNzMsIDI0NSwgMTAyLCAyNTEsIDI1LCAyNDUsIDI0LCAyLCAyMTMsIDE4NywgMjIwLCAKKyAgICAyMiwgMjM0LCAxODIsIDI1MSwgMjUsIDI0NSwgMjQsIDIsIDI1MCwgNjAsIDI0NSwgMTAyLCAyMjUsIDE0MywgMjUxLCAyNSwgCisgICAgMjQ1LCAyMywgMjQ5LCAxNzksIDI1MSwgMjUsIDI0NSwgMjMsIDIxNCwgNywgMjUxLCAyNSwgMjQ1LCAyMywgMjQ1LCAyNCwgCisgICAgMiwgMjI4LCAyMjksIDI0MywgMywgMjQzLCAxMzAsIDI0NSwgMjQsIDIsIDIyNywgMTE4LCAyNDMsIDEzMCwgMjI2LCA4MCwgCisgICAgMjUxLCAyMTksIDI0OCwgMTQ3LCAyMjIsIDExMSwgMjMxLCAyOSwgMjQyLCA3NiwgMjMxLCAyOSwgMjE5LCAyMTUsIDIzMSwgCisgICAgMjksIDI0MiwgMTA4LCAyMjYsIDgwLCAyMjQsIDgyLCAxMjQsIDI0MiwgMTE4LCAyMjYsIDgwLCAyMjQsIDgyLCAyNTEsIAorICAgIDIyOSwgMjQyLCAxMTQsIDIzNiwgMTEzLCAyNTAsIDIzNiwgMjI2LCA4MCwgMjQ0LCA3MiwgMjI2LCA4MCwgMiwgMjI1LCAKKyAgICAxNDMsIDI0NSwgMjMsIDIyNiwgODAsIDIsIDI0NCwgMTMwLCAyNDIsIDExMywgMjIzLCAxMzgsIDI0MiwgNjEsIDIxOSwgOTcsIAorICAgIDIzMywgMjAsIDIyNCwgODgsIDI1MSwgNDQsIDI0MiwgMTEsIDIxNiwgMjE4LCAyNDIsIDExLCAyMTYsIDIxOSwgMiwgMjUxLCAKKyAgICAxNjgsIDIyOCwgMjA3LCAyMTYsIDIxOCwgMjMxLCAxNjksIDE4MiwgMjI0LCA4OSwgMjE5LCAxMDMsIDIxNiwgMjE2LCAyMTYsIAorICAgIDIxNywgMjUxLCA0NCwgMjUxLCAxNDYsIDIyNywgOTcsIDI1MSwgMTQ2LCAyMTYsIDE3MiwgMjUxLCAxNDcsIDIxOSwgODMsIAorICAgIDIzMSwgNzAsIDI1NCwgMTY2LCAyNDQsIDE4NiwgMjQ1LCAyMTYsIDIyNSwgMTY5LCAyNTEsIDQ0LCAyMjcsIDk3LCAyMjUsIAorICAgIDE2OSwgMjUxLCA0NCwgMjE3LCAyNTIsIDIyNywgOTcsIDIxNywgMjUyLCAyNTMsIDIyMywgMjI3LCA5NywgMjUzLCAyMjMsIAorICAgIDIyNCwgNDUsIDIxNCwgMjI5LCAyNDgsIDEzMCwgMjE2LCAxNjMsIDI1NCwgMjgsIDIzMiwgMjQ2LCAyMTYsIDIyNCwgMjMxLCAKKyAgICAyMywgMjMxLCAwLCAyMjQsIDg3LCAyMTgsIDIyMSwgMjI0LCA4NywgMjMxLCAwLCAyNTEsIDgzLCAyNTUsIDYsIDIxNiwgCisgICAgMjE1LCAyMjAsIDIxNywgMjIzLCAxMTgsIDIxOSwgMjA4LCAyMDEsIDIxNiwgMjIyLCAyMzMsIDEwMCwgNjYsIDIxNiwgMjIyLCAKKyAgICAyMzMsIDEwMCwgMjQ5LCAyNTIsIDUzLCAyMjUsIDE2OSwgMjUxLCAyOSwgMjIzLCAyMzEsIDIzMywgMTAwLCAyMTYsIDE5MywgCisgICAgMjQ0LCAxNjMsIDIyNywgMTAwLCAyMjUsIDE1NCwgMjQ3LCAxOTgsIDIyOCwgMjI5LCAyNDUsIDIwNSwgNTMsIDIyMCwgMTksIAorICAgIDg4LCAyMjgsIDIyOSwgMjIwLCAxOSwgODgsIDIyNSwgNDUsIDIzMywgNjMsIDIzNiwgMTEzLCAyMzYsIDE2LCAyMjUsIDIwOSwgCisgICAgODgsIDI0NywgMjIxLCAyMjgsIDIwNiwgMjMzLCA2MywgODgsIDIyNSwgMTQ4LCAyMTQsIDI4LCA4OCwgMjI4LCAyMjAsIAorICAgIDIxNCwgMjgsIDg4LCAyNTIsIDUwLCAyMjgsIDIyOSwgMjUyLCA0OSwgMjUyLCA0OCwgMjMxLCAwLCAyNTIsIDQ4LCAyMjYsIAorICAgIDEyNCwgMjI4LCAyMjksIDIyNiwgMTIzLCAyNTAsIDE2MCwgMjQ5LCAxODcsIDIzMSwgMTkwLCA4OCwgMjEzLCAyMDgsIDg4LCAKKyAgICAyMjMsIDI0NSwgMjUyLCAyMzEsIDg4LCAyMTcsIDUsIDIxNCwgMjgsIDI1MCwgNTcsIDIyMCwgMTc5LCAyNTIsIDE2NCwgCisgICAgMjUyLCAxNjIsIDIyNiwgMTUyLCAyNDksIDIzOSwgMjQ5LCAxNTEsIDI1MiwgMjE0LCAyNTAsIDgyLCA0MywgMjMyLCAyMjIsIAorICAgIDEwNiwgMTYsIDMxLCAyMjQsIDE4MywgMTA2LCAxNiwgMzEsIDI1NCwgMjI3LCAxMDYsIDE2LCAzMSwgMjQ0LCAxODUsIDEwNiwgCisgICAgMTYsIDMxLCAyNDYsIDQ0LCAxMDYsIDE2LCAzMSwgMjE0LCAyNywgMTA2LCAxNiwgMzEsIDI1NCwgODQsIDEwNiwgMTYsIDMxLCAKKyAgICAyNTQsIDg1LCAyMjQsIDMzLCAxMDYsIDE2LCAzMSwgMjU0LCA4NSwgMjI0LCAzMiwgMTA2LCAxNiwgMzEsIDI1NCwgODUsIAorICAgIDIxNCwgMTI4LCAxMDYsIDE2LCAzMSwgMjU0LCA4NSwgMjE0LCAxMjcsIDEwNiwgMTYsIDMxLCAyMTQsIDE0MiwgMTA2LCAxNiwgCisgICAgMzEsIDIxNCwgMTQxLCAxMDYsIDE2LCAzMSwgMjE0LCAxNDAsIDEwNiwgMTYsIDMxLCAyMTksIDMsIDEwNiwgMTYsIDMxLCAKKyAgICAyMjYsIDM3LCAyMTksIDMsIDEwNiwgMTYsIDMxLCA4NSwgMjE5LCAzLCAxMDYsIDE2LCAzMSwgMjMxLCAxODksIDIxOSwgMzAsIAorICAgIDEwNiwgMTYsIDMxLCAyMzEsIDE4OSwgMjE5LCAyOSwgMTA2LCAxNiwgMzEsIDIzMSwgMTg5LCAyMTksIDI4LCAxMDYsIDE2LCAKKyAgICAzMSwgMjUwLCA5OCwgMTA2LCAxNiwgMzEsIDIyMiwgMTk2LCAxMDYsIDE2LCAzMSwgMjI5LCA4MywgMTA2LCAxNiwgMzEsIAorICAgIDIxNCwgMTI2LCAxMDYsIDE2LCAzMSwgMjE0LCAxMjUsIDEwNiwgMTYsIDMxLCAyMjMsIDEzOSwgMjIyLCAxOTYsIDEwNiwgCisgICAgMTYsIDMxLCAyMjMsIDEzOSwgMjIyLCAxOTUsIDEwNiwgMTYsIDMxLCAyNDMsIDYsIDEwNiwgMTYsIDMxLCAyMjAsIDExMSwgCisgICAgMTA2LCAxNiwgMzEsIDIzNiwgMzYsIDIyNywgNTgsIDEwNiwgMTYsIDMxLCAyMzYsIDM2LCAyMjcsIDU3LCAxMDYsIDE2LCAKKyAgICAzMSwgMjQ5LCAxOTcsIDY4LCAyMzYsIDM1LCAxMDYsIDE2LCAzMSwgMjI0LCAyOSwgNjgsIDIzNiwgMzUsIDEwNiwgMTYsIAorICAgIDMxLCAyNDksIDIzMCwgMjI3LCA1OCwgMTA2LCAxNiwgMzEsIDIzNiwgMzQsIDIyNywgNTgsIDEwNiwgMTYsIDMxLCAyMTksIAorICAgIDMxLCA2OCwgMjQ5LCAyMjksIDEwNiwgMTYsIDMxLCAyNDksIDE5NywgNjgsIDI0OSwgMjI5LCAxMDYsIDE2LCAzMSwgMjQ5LCAKKyAgICAxOTcsIDY4LCAyNDksIDIyOCwgMTA2LCAxNiwgMzEsIDI0OSwgMjMwLCAyNTQsIDEyMSwgMTA2LCAxNiwgMzEsIDIyMiwgCisgICAgMTk3LCA2OCwgMjQ5LCAyMzAsIDI1NCwgMTIxLCAxMDYsIDE2LCAzMSwgMjE5LCAzMSwgNjgsIDIyMiwgMTk3LCA2OCwgMjQ5LCAKKyAgICAyMjksIDEwNiwgMTYsIDMxLCAyMTQsIDIyNSwgMTA2LCAxNiwgMzEsIDIxNywgNTEsIDIyNywgNTgsIDEwNiwgMTYsIDMxLCAKKyAgICAyMzMsIDE3OSwgMjI3LCA1OCwgMTA2LCAxNiwgMzEsIDI1NCwgMTIwLCAyMjcsIDU4LCAxMDYsIDE2LCAzMSwgMjE5LCAzMSwgCisgICAgNjgsIDI1NCwgMTE5LCAxMDYsIDE2LCAzMSwgMjIyLCAxOTcsIDY4LCAyNTQsIDExOSwgMTA2LCAxNiwgMzEsIDIxOSwgMzEsIAorICAgIDY4LCAyMjIsIDE5NywgNjgsIDI1NCwgMTE5LCAxMDYsIDE2LCAzMSwgMjE0LCAxNDMsIDY4LCAyNTQsIDExOSwgMTA2LCAxNiwgCisgICAgMzEsIDIyNCwgMjksIDY4LCAyNTQsIDExOSwgMTA2LCAxNiwgMzEsIDIyNCwgMjksIDY4LCAyNTQsIDExOCwgMTA2LCAxNiwgCisgICAgMzEsIDIyNCwgMjgsIDEwNiwgMTYsIDMxLCAyMjQsIDI3LCAxMDYsIDE2LCAzMSwgMjI0LCAyNiwgMTA2LCAxNiwgMzEsIAorICAgIDIyNCwgMjUsIDEwNiwgMTYsIDMxLCAyNTQsIDE5MywgMTA2LCAxNiwgMzEsIDI1NCwgMTkyLCAxMDYsIDE2LCAzMSwgMjMyLCAKKyAgICA0MSwgMTA2LCAxNiwgMzEsIDIyMiwgMjAyLCAxMDYsIDE2LCAzMSwgMjU0LCAzMiwgMTA2LCAxNiwgMzEsIDIyNCwgNTIsIAorICAgIDEwNiwgMTYsIDMxLCAyMjQsIDUxLCAxMDYsIDE2LCAzMSwgMjUzLCAyMjYsIDEwNiwgMTYsIDMxLCAyNTIsIDIxLCAyMjcsIAorICAgIDU4LCAxMDYsIDE2LCAzMSwgMjE4LCAxMywgMTA2LCAxNiwgMzEsIDIxOCwgMTIsIDEwNiwgMTYsIDMxLCAyMjQsIDE4OCwgCisgICAgMjMzLCA5MiwgMTA2LCAxNiwgMzEsIDI1MSwgMjM0LCAxMDYsIDE2LCAzMSwgMjUxLCAyMzMsIDEwNiwgMTYsIDMxLCAyNTEsIAorICAgIDIzMiwgMTA2LCAxNiwgMzEsIDI1NCwgMTc0LCAxMDYsIDE2LCAzMSwgMjI3LCAxMjEsIDEwNiwgMTYsIDMxLCAyMTksIDE5OSwgCisgICAgMTA2LCAxNiwgMzEsIDIxNywgNDksIDEwNiwgMTYsIDMxLCAyNDIsIDE5OCwgMTA2LCAxNiwgMzEsIDIxNCwgMTUsIDEwNiwgCisgICAgMTYsIDMxLCAyMjUsIDE0MiwgMTA2LCAxNiwgMzEsIDI1MSwgNzAsIDEwNiwgMTYsIDMxLCAyMTYsIDU4LCAxMDYsIDE2LCAKKyAgICAzMSwgMjUxLCA0NiwgMjMxLCA2LCAxMDYsIDE2LCAzMSwgMjIyLCAxNDMsIDY4LCAyMzUsIDE3MiwgMTA2LCAxNiwgMzEsIAorICAgIDI1MSwgODAsIDEwNiwgMTYsIDMxLCAyMTYsIDE5MCwgMTA2LCAxNiwgMzEsIDIxOSwgMTA3LCAyMTYsIDE5MCwgMTA2LCAxNiwgCisgICAgMzEsIDIzMywgMTksIDEwNiwgMTYsIDMxLCAyMjAsIDMsIDEwNiwgMTYsIDMxLCAyMTUsIDExOSwgMTA2LCAxNiwgMzEsIAorICAgIDI0MSwgOTUsIDI0NiwgMTQwLCAxMDYsIDE2LCAzMSwgMjU0LCAxMywgMTA2LCAxNiwgMzEsIDIyNSwgMTUwLCAyNTQsIDEzLCAKKyAgICAxMDYsIDE2LCAzMSwgMjUxLCAxOTUsIDEwNiwgMTYsIDMxLCAyMjUsIDE0MSwgMjUxLCAxOTUsIDEwNiwgMTYsIDMxLCAyNTQsIAorICAgIDE3MSwgMTA2LCAxNiwgMzEsIDIxOSwgNzEsIDIxOCwgMjQwLCAyMTksIDcwLCAxMDYsIDE2LCAzMSwgMjE5LCA3MSwgMjE4LCAKKyAgICAyNDAsIDIxOSwgNjksIDEwNiwgMTYsIDMxLCAyMTksIDI3LCAxMDYsIDE2LCAzMSwgMjI1LCAxMTYsIDEwNiwgMTYsIDMxLCAKKyAgICAyNDcsIDI1NCwgMTA2LCAxNiwgMzEsIDI0OCwgMCwgMTA2LCAxNiwgMzEsIDI0NywgMjU1LCAxMDYsIDE2LCAzMSwgMjI1LCAKKyAgICA1MywgMTA2LCAxNiwgMzEsIDIyNSwgNDMsIDEwNiwgMTYsIDMxLCAyNDksIDE4NSwgMTA2LCAxNiwgMzEsIDI0OSwgMTg0LCAKKyAgICAxMDYsIDE2LCAzMSwgMjQ5LCAxODMsIDEwNiwgMTYsIDMxLCAyNDksIDE4MiwgMTA2LCAxNiwgMzEsIDI0OSwgMTgxLCAxMDYsIAorICAgIDE2LCAzMSwgMjU0LCAyMDQsIDEwNiwgMTYsIDMxLCAyNTIsIDE2NSwgNjgsIDIzMiwgMjcsIDEwNiwgMTYsIDMxLCAyNTIsIAorICAgIDE2NSwgNjgsIDIxNCwgMjU1LCAxMDYsIDE2LCAzMSwgMjIzLCAyNDMsIDEwNiwgMTYsIDMxLCAyNDEsIDg3LCAxMDYsIDE2LCAKKyAgICAzMSwgMjI5LCAxMDcsIDEwNiwgMTYsIDMxLCAyNDgsIDIxMiwgMTA2LCAxNiwgMzEsIDIzMSwgMTgsIDEwNiwgMTYsIDMxLCAKKyAgICAxNTcsIDI0NiwgMTcwLCAxMDYsIDE2LCAzMSwgMTU3LCAyMjcsIDM4LCA5LCAxMywgMjQwLCAyMTIsIDksIDEzLCAyNDAsIAorICAgIDIxMSwgOSwgMTMsIDI0MCwgMjEwLCA5LCAxMywgMjQwLCAyMDksIDksIDEzLCAyNDAsIDIwOCwgOSwgMTMsIDI0MCwgMjA3LCAKKyAgICA5LCAxMywgMjQwLCAyMDYsIDksIDEzLCAyNDAsIDIwNSwgOSwgMTMsIDI0MCwgMjA0LCA5LCAxMywgMjQwLCAyMDMsIDksIAorICAgIDEzLCAyNDAsIDIwMiwgOSwgMTMsIDI0MCwgMjAxLCA5LCAxMywgMjQwLCAyMDAsIDksIDEzLCAyNDAsIDE5OSwgOSwgMTMsIAorICAgIDI0MCwgMTk4LCA5LCAxMywgMjQwLCAxOTcsIDksIDEzLCAyNDAsIDE5NiwgOSwgMTMsIDI0MCwgMTk1LCA5LCAxMywgMjQwLCAKKyAgICAxOTQsIDksIDEzLCAyNDAsIDE5MywgOSwgMTMsIDI0MCwgMTkyLCA5LCAxMywgMjQwLCAxOTEsIDksIDEzLCAyNDAsIDE5MCwgCisgICAgOSwgMTMsIDI0MCwgMTg5LCA5LCAxMywgMjQwLCAxODgsIDksIDEzLCAyNDAsIDE4NywgOSwgMTMsIDI0MCwgMTg2LCA5LCAKKyAgICAxMywgMjQwLCAxODUsIDksIDEzLCAyNDAsIDE4NCwgOSwgMTMsIDI0MCwgMTgzLCA5LCAxMywgMjQwLCAxODIsIDksIDEzLCAKKyAgICAyNDAsIDE4MSwgOSwgMTMsIDI0MCwgMTgwLCA5LCAxMywgMjQwLCAxNzksIDksIDEzLCAyNDAsIDE3OCwgOSwgMTMsIDI0MCwgCisgICAgMTc3LCA5LCAxMywgMjQwLCAxNzYsIDksIDEzLCAyNDAsIDE3NSwgOSwgMTMsIDI0MCwgMTc0LCA5LCAxMywgMjQwLCAxNzMsIAorICAgIDksIDEzLCAyNDAsIDE3MiwgOSwgMTMsIDI0MCwgMTcxLCA5LCAxMywgMjQwLCAxNzAsIDksIDEzLCAyNDAsIDE2OSwgOSwgCisgICAgMTMsIDI0MCwgMTY4LCA5LCAxMywgMjQwLCAxNjcsIDksIDEzLCAyNDAsIDE2NiwgOSwgMTMsIDI0MCwgMTY1LCA5LCAxMywgCisgICAgMjQwLCAxNjQsIDksIDEzLCAyNDAsIDE2MywgOSwgMTMsIDI0MCwgMTYyLCA5LCAxMywgMjQwLCAxNjEsIDksIDEzLCAyNDAsIAorICAgIDE2MCwgOSwgMTMsIDI0MCwgMTU5LCA5LCAxMywgMjQwLCAxNTgsIDksIDEzLCAyNDAsIDE1NywgOSwgMTMsIDI0MCwgMTU2LCAKKyAgICA5LCAxMywgMjQwLCAxNTUsIDksIDEzLCAyNDAsIDE1NCwgOSwgMTMsIDI0MCwgMTUzLCA5LCAxMywgMjQwLCAxNTIsIDksIAorICAgIDEzLCAyNDAsIDE1MSwgOSwgMTMsIDI0MCwgMTUwLCA5LCAxMywgMjQwLCAxNDksIDksIDEzLCAyNDAsIDE0OCwgOSwgMTMsIAorICAgIDI0MCwgMTQ3LCA5LCAxMywgMjQwLCAxNDYsIDksIDEzLCAyNDAsIDE0NSwgOSwgMTMsIDI0MCwgMTQ0LCA5LCAxMywgMjQwLCAKKyAgICAxNDMsIDksIDEzLCAyNDAsIDE0MiwgOSwgMTMsIDI0MCwgMTQxLCA5LCAxMywgMjQwLCAxNDAsIDksIDEzLCAyNDAsIDEzOSwgCisgICAgOSwgMTMsIDI0MCwgMTM4LCA5LCAxMywgMjQwLCAxMzcsIDksIDEzLCAyNDAsIDEzNiwgOSwgMTMsIDI0MCwgMTM1LCA5LCAKKyAgICAxMywgMjQwLCAxMzQsIDksIDEzLCAyNDAsIDEzMywgOSwgMTMsIDI0MCwgMTMyLCA5LCAxMywgMjQwLCAxMzEsIDksIDEzLCAKKyAgICAyNDAsIDEzMCwgOSwgMTMsIDI0MCwgMTI5LCA5LCAxMywgMjQwLCAxMjgsIDksIDEzLCAyNDAsIDEyNywgOSwgMTMsIDI0MCwgCisgICAgMTI2LCA5LCAxMywgMjQwLCAxMjUsIDksIDEzLCAyNDAsIDEyNCwgOSwgMTMsIDI0MCwgMTIzLCA5LCAxMywgMjQwLCAxMjIsIAorICAgIDksIDEzLCAyNDAsIDEyMSwgOSwgMTMsIDI0MCwgMTIwLCA5LCAxMywgMjQwLCAxMTksIDksIDEzLCAyNDAsIDExOCwgOSwgCisgICAgMTMsIDI0MCwgMTE3LCA5LCAxMywgMjQwLCAxMTYsIDksIDEzLCAyNDAsIDExNSwgOSwgMTMsIDI0MCwgMTE0LCA5LCAxMywgCisgICAgMjQwLCAxMTMsIDksIDEzLCAyNDAsIDExMiwgOSwgMTMsIDI0MCwgMTExLCA5LCAxMywgMjQwLCAxMTAsIDksIDEzLCAyNDAsIAorICAgIDEwOSwgOSwgMTMsIDI0MCwgMTA4LCA5LCAxMywgMjQwLCAxMDcsIDksIDEzLCAyNDAsIDEwNiwgOSwgMTMsIDI0MCwgMTA1LCAKKyAgICA5LCAxMywgMjQwLCAxMDQsIDksIDEzLCAyNDAsIDEwMywgOSwgMTMsIDI0MCwgMTAyLCA5LCAxMywgMjQwLCAxMDEsIDksIAorICAgIDEzLCAyNDAsIDEwMCwgOSwgMTMsIDI0MCwgOTksIDksIDEzLCAyNDAsIDk4LCA5LCAxMywgMjQwLCA5NywgOSwgMTMsIDI0MCwgCisgICAgOTYsIDksIDEzLCAyNDAsIDk1LCA5LCAxMywgMjQwLCA5NCwgOSwgMTMsIDI0MCwgOTMsIDksIDEzLCAyNDAsIDkyLCA5LCAKKyAgICAxMywgMjQwLCA5MSwgOSwgMTMsIDI0MCwgOTAsIDksIDEzLCAyNDAsIDg5LCA5LCAxMywgMjQwLCA4OCwgOSwgMTMsIDI0MCwgCisgICAgODcsIDksIDEzLCAyNDAsIDg2LCA5LCAxMywgMjQwLCA4NSwgOSwgMTMsIDI0MCwgODQsIDksIDEzLCAyNDAsIDgzLCA5LCAKKyAgICAxMywgMjQwLCA4MiwgOSwgMTMsIDI0MCwgODEsIDksIDEzLCAyNDAsIDgwLCA5LCAxMywgMjQwLCA3OSwgOSwgMTMsIDI0MCwgCisgICAgNzgsIDksIDEzLCAyNDAsIDc3LCA5LCAxMywgMjQwLCA3NiwgOSwgMTMsIDI0MCwgNzUsIDksIDEzLCAyNDAsIDc0LCA5LCAKKyAgICAxMywgMjQwLCA3MywgOSwgMTMsIDI0MCwgNzIsIDksIDEzLCAyNDAsIDcxLCA5LCAxMywgMjQwLCA3MCwgOSwgMTMsIDI0MCwgCisgICAgNjksIDksIDEzLCAyNDAsIDY4LCA5LCAxMywgMjQwLCA2NywgOSwgMTMsIDI0MCwgNjYsIDksIDEzLCAyNDAsIDY1LCA5LCAKKyAgICAxMywgMjQwLCA2NCwgOSwgMTMsIDI0MCwgNjMsIDksIDEzLCAyNDAsIDYyLCA5LCAxMywgMjQwLCA2MSwgOSwgMTMsIDI0MCwgCisgICAgNjAsIDksIDEzLCAyNDAsIDU5LCA5LCAxMywgMjQwLCA1OCwgOSwgMTMsIDI0MCwgNTcsIDksIDEzLCAyNDAsIDU2LCA5LCAKKyAgICAxMywgMjQwLCA1NSwgOSwgMTMsIDI0MCwgNTQsIDksIDEzLCAyNDAsIDUzLCA5LCAxMywgMjQwLCA1MiwgOSwgMTMsIDI0MCwgCisgICAgNTEsIDksIDEzLCAyNDAsIDUwLCA5LCAxMywgMjQwLCA0OSwgOSwgMTMsIDI0MCwgNDgsIDksIDEzLCAyNDAsIDQ3LCA5LCAKKyAgICAxMywgMjQwLCA0NiwgOSwgMTMsIDI0MCwgNDUsIDksIDEzLCAyNDAsIDQ0LCA5LCAxMywgMjQwLCA0MywgOSwgMTMsIDI0MCwgCisgICAgNDIsIDksIDEzLCAyNDAsIDQxLCA5LCAxMywgMjQwLCA0MCwgOSwgMTMsIDI0MCwgMzksIDksIDEzLCAyNDAsIDM4LCA5LCAKKyAgICAxMywgMjQwLCAzNywgOSwgMTMsIDI0MCwgMzYsIDksIDEzLCAyNDAsIDM1LCA5LCAxMywgMjQwLCAzNCwgOSwgMTMsIDI0MCwgCisgICAgMzMsIDksIDEzLCAyNDAsIDMyLCA5LCAxMywgMjQwLCAzMSwgOSwgMTMsIDI0MCwgMzAsIDksIDEzLCAyNDAsIDI5LCA5LCAKKyAgICAxMywgMjQwLCAyOCwgOSwgMTMsIDI0MCwgMjcsIDksIDEzLCAyNDAsIDI2LCA5LCAxMywgMjQwLCAyNSwgOSwgMTMsIDI0MCwgCisgICAgMjQsIDksIDEzLCAyNDAsIDIzLCA5LCAxMywgMjQwLCAyMiwgOSwgMTMsIDI0MCwgMjEsIDksIDEzLCAyNDAsIDIwLCA5LCAKKyAgICAxMywgMjQwLCAxOSwgOSwgMTMsIDI0MCwgMTgsIDksIDEzLCAyNDAsIDE3LCA5LCAxMywgMjQwLCAxNiwgOSwgMTMsIDI0MCwgCisgICAgMTUsIDksIDEzLCAyNDAsIDE0LCA5LCAxMywgMjQwLCAxMywgOSwgMTMsIDI0MCwgMTIsIDksIDEzLCAyNDAsIDExLCA5LCAKKyAgICAxMywgMjQwLCAxMCwgOSwgMTMsIDI0MCwgOSwgOSwgMTMsIDI0MCwgOCwgOSwgMTMsIDI0MCwgNywgOSwgMTMsIDI0MCwgNiwgCisgICAgOSwgMTMsIDI0MCwgNSwgOSwgMTMsIDI0MCwgNCwgOSwgMTMsIDI0MCwgMywgOSwgMTMsIDI0MCwgMiwgOSwgMTMsIDI0MCwgCisgICAgMSwgOSwgMTMsIDI0MCwgMCwgOSwgMTMsIDIzOSwgMjU1LCA5LCAxMywgMjM5LCAyNTQsIDksIDEzLCAyMzksIDI1MywgOSwgCisgICAgMTMsIDIzOSwgMjUyLCA5LCAxMywgMjM5LCAyNTEsIDksIDEzLCAyMzksIDI1MCwgOSwgMTMsIDIzOSwgMjQ5LCA5LCAxMywgCisgICAgMjM5LCAyNDgsIDksIDEzLCAyMzksIDI0NywgOSwgMTMsIDIzOSwgMjQ2LCA5LCAxMywgMjM5LCAyNDUsIDksIDEzLCAyMzksIAorICAgIDI0NCwgOSwgMTMsIDIzOSwgMjQzLCA5LCAxMywgMjM5LCAyNDIsIDksIDEzLCAyMzksIDI0MSwgOSwgMTMsIDIzOSwgMjQwLCAKKyAgICA5LCAxMywgMjM5LCAyMzksIDksIDEzLCAyMzksIDIzOCwgOSwgMTMsIDIzOSwgMjM3LCA5LCAxMywgMjM5LCAyMzYsIDksIAorICAgIDEzLCAyMzksIDIzNSwgOSwgMTMsIDIzOSwgMjM0LCA5LCAxMywgMjM5LCAyMzMsIDksIDEzLCAyMzksIDIzMiwgOSwgMTMsIAorICAgIDIzOSwgMjMxLCA5LCAxMywgMjM5LCAyMzAsIDksIDEzLCAyMzksIDIyOSwgOSwgMTMsIDIzOSwgMjI4LCA5LCAxMywgMjM5LCAKKyAgICAyMjcsIDksIDEzLCAyMzksIDIyNiwgOSwgMTMsIDIzOSwgMjI1LCA5LCAxMywgMjM5LCAyMjQsIDksIDEzLCAyMzksIDIyMywgCisgICAgOSwgMTMsIDIzOSwgMjIyLCA5LCAxMywgMjM5LCAyMjEsIDksIDEzLCAyMzksIDIyMCwgOSwgMTMsIDIzOSwgMjE5LCA5LCAKKyAgICAxMywgMjM5LCAyMTgsIDksIDEzLCAyMzksIDIxNywgOSwgMTMsIDIzOSwgMjE2LCA5LCAxMywgMjM5LCAyMTUsIDksIDEzLCAKKyAgICAyMzksIDIxNCwgOSwgMTMsIDIzOSwgMjEzLCA5LCAxMywgMjM5LCAyMTIsIDksIDEzLCAyMzksIDIxMSwgOSwgMTMsIDIzOSwgCisgICAgMjEwLCA5LCAxMywgMjM5LCAyMDksIDksIDEzLCAyMzksIDIwOCwgOSwgMTMsIDIzOSwgMjA3LCA5LCAxMywgMjM5LCAyMDYsIAorICAgIDksIDEzLCAyMzksIDIwNSwgOSwgMTMsIDIzOSwgMjA0LCA5LCAxMywgMjM5LCAyMDMsIDksIDEzLCAyMzksIDIwMiwgOSwgCisgICAgMTMsIDIzOSwgMjAxLCA5LCAxMywgMjM5LCAyMDAsIDksIDEzLCAyMzksIDE5OSwgOSwgMTMsIDIzOSwgMTk4LCA5LCAxMywgCisgICAgMjM5LCAxOTcsIDksIDEzLCAyMzksIDE5NiwgOSwgMTMsIDIzOSwgMTk1LCA5LCAxMywgMjM5LCAxOTQsIDksIDEzLCAyMzksIAorICAgIDE5MywgOSwgMTMsIDIzOSwgMTkyLCA5LCAxMywgMjM5LCAxOTEsIDksIDEzLCAyMzksIDE5MCwgOSwgMTMsIDIzOSwgMTg5LCAKKyAgICA5LCAxMywgMjM5LCAxODgsIDksIDEzLCAyMzksIDE4NywgOSwgMTMsIDIzOSwgMTg2LCA5LCAxMywgMjM5LCAxODUsIDksIAorICAgIDEzLCAyMzksIDE4NCwgOSwgMTMsIDIzOSwgMTgzLCA5LCAxMywgMjM5LCAxODIsIDksIDEzLCAyMzksIDE4MSwgOSwgMTMsIAorICAgIDIzOSwgMTgwLCA5LCAxMywgMjM5LCAxNzksIDksIDEzLCAyMzksIDE3OCwgOSwgMTMsIDIzOSwgMTc3LCA5LCAxMywgMjM5LCAKKyAgICAxNzYsIDksIDEzLCAyMzksIDE3NSwgOSwgMTMsIDIzOSwgMTc0LCA5LCAxMywgMjM5LCAxNzMsIDksIDEzLCAyMzksIDE3MiwgCisgICAgOSwgMTMsIDIzOSwgMTcxLCA5LCAxMywgMjM5LCAxNzAsIDksIDEzLCAyMzksIDE2OSwgOSwgMTMsIDIzOSwgMTY4LCA5LCAKKyAgICAxMywgMjM5LCAxNjcsIDksIDEzLCAyMzksIDE2NiwgOSwgMTMsIDIzOSwgMTY1LCA5LCAxMywgMjM5LCAxNjQsIDksIDEzLCAKKyAgICAyMzksIDE2MywgOSwgMTMsIDIzOSwgMTYyLCA5LCAxMywgMjM5LCAxNjEsIDksIDEzLCAyMzksIDE2MCwgOSwgMTMsIDIzOSwgCisgICAgMTU5LCA5LCAxMywgMjM5LCAxNTgsIDksIDEzLCAyMzksIDE1NywgOSwgMTMsIDIzOSwgMTU2LCA5LCAxMywgMjM5LCAxNTUsIAorICAgIDksIDEzLCAyMzksIDE1NCwgOSwgMTMsIDIzOSwgMTUzLCA5LCAxMywgMjM5LCAxNTIsIDksIDEzLCAyMzksIDE1MSwgOSwgCisgICAgMTMsIDIzOSwgMTUwLCA5LCAxMywgMjM5LCAxNDksIDksIDEzLCAyMzksIDE0OCwgOSwgMTMsIDIzOSwgMTQ3LCA5LCAxMywgCisgICAgMjM5LCAxNDYsIDksIDEzLCAyMzksIDE0NSwgOSwgMTMsIDIzOSwgMTQ0LCA5LCAxMywgMjM5LCAxNDMsIDksIDEzLCAyMzksIAorICAgIDE0MiwgOSwgMTMsIDIzOSwgMTQxLCA5LCAxMywgMjM5LCAxNDAsIDksIDEzLCAyMzksIDEzOSwgOSwgMTMsIDIzOSwgMTM4LCAKKyAgICA5LCAxMywgMjM5LCAxMzcsIDksIDEzLCAyMzksIDEzNiwgOSwgMTMsIDIzOSwgMTM1LCA5LCAxMywgMjM5LCAxMzQsIDksIAorICAgIDEzLCAyMzksIDEzMywgOSwgMTMsIDIzOSwgMTMyLCA5LCAxMywgMjM5LCAxMzEsIDksIDEzLCAyMzksIDEzMCwgOSwgMTMsIAorICAgIDIzOSwgMTI5LCA5LCAxMywgMjM5LCAxMjgsIDksIDEzLCAyMzksIDEyNywgOSwgMTMsIDIzOSwgMTI2LCA5LCAxMywgMjM5LCAKKyAgICAxMjUsIDksIDEzLCAyMzksIDEyNCwgOSwgMTMsIDIzOSwgMTIzLCA5LCAxMywgMjM5LCAxMjIsIDksIDEzLCAyMzksIDEyMSwgCisgICAgOSwgMTMsIDIzOSwgMTIwLCA5LCAxMywgMjM5LCAxMTksIDksIDEzLCAyMzksIDExOCwgOSwgMTMsIDIzOSwgMTE3LCA5LCAKKyAgICAxMywgMjM5LCAxMTYsIDksIDEzLCAyMzksIDExNSwgOSwgMTMsIDIzOSwgMTE0LCA5LCAxMywgMjM5LCAxMTMsIDksIDEzLCAKKyAgICAyMzksIDExMiwgOSwgMTMsIDIzOSwgMTExLCA5LCAxMywgMjM5LCAxMTAsIDksIDEzLCAyMzksIDEwOSwgOSwgMTMsIDIzOSwgCisgICAgMTA4LCA5LCAxMywgMjM5LCAxMDcsIDksIDEzLCAyMzksIDEwNiwgOSwgMTMsIDIzOSwgMTA1LCA5LCAxMywgMjM5LCAxMDQsIAorICAgIDksIDEzLCAyMzksIDEwMywgOSwgMTMsIDIzOSwgMTAyLCA5LCAxMywgMjM5LCAxMDEsIDksIDEzLCAyMzksIDEwMCwgOSwgCisgICAgMTMsIDIzOSwgOTksIDksIDEzLCAyMzksIDk4LCA5LCAxMywgMjM5LCA5NywgOSwgMTMsIDIzOSwgOTYsIDksIDEzLCAyMzksIAorICAgIDk1LCA5LCAxMywgMjM5LCA5NCwgOSwgMTMsIDIzOSwgOTMsIDksIDEzLCAyMzksIDkyLCA5LCAxMywgMjM5LCA5MSwgOSwgCisgICAgMTMsIDIzOSwgOTAsIDksIDEzLCAyMzksIDg5LCA5LCAxMywgMjM5LCA4OCwgOSwgMTMsIDIzOSwgODcsIDksIDEzLCAyMzksIAorICAgIDg2LCA5LCAxMywgMjM5LCA4NSwgOSwgMTMsIDIzOSwgODQsIDksIDEzLCAyMzksIDgzLCA5LCAxMywgMjM5LCA4MiwgOSwgCisgICAgMTMsIDIzOSwgODEsIDksIDEzLCAyMzksIDgwLCA5LCAxMywgMjM5LCA3OSwgOSwgMTMsIDIzOSwgNzgsIDksIDEzLCAyMzksIAorICAgIDc3LCA5LCAxMywgMjM5LCA3NiwgOSwgMTMsIDIzOSwgNzUsIDksIDEzLCAyMzksIDc0LCA5LCAxMywgMjM5LCA3MywgOSwgCisgICAgMTMsIDIzOSwgNzIsIDksIDEzLCAyMzksIDcxLCA5LCAxMywgMjM5LCA3MCwgOSwgMTMsIDIzOSwgNjksIDksIDEzLCAyMzksIAorICAgIDY4LCA5LCAxMywgMjM5LCA2NywgOSwgMTMsIDIzOSwgNjYsIDksIDEzLCAyMzksIDY1LCA5LCAxMywgMjM5LCA2NCwgOSwgCisgICAgMTMsIDIzOSwgNjMsIDksIDEzLCAyMzksIDYyLCA5LCAxMywgMjM5LCA2MSwgOSwgMTMsIDIzOSwgNjAsIDksIDEzLCAyMzksIAorICAgIDU5LCA5LCAxMywgMjM5LCA1OCwgOSwgMTMsIDIzOSwgNTcsIDksIDEzLCAyMzksIDU2LCA5LCAxMywgMjM5LCA1NSwgOSwgCisgICAgMTMsIDIzOSwgNTQsIDksIDEzLCAyMzksIDUzLCA5LCAxMywgMjM5LCA1MiwgOSwgMTMsIDIzOSwgNTEsIDksIDEzLCAyMzksIAorICAgIDUwLCA5LCAxMywgMjM5LCA0OSwgOSwgMTMsIDIzOSwgNDgsIDksIDEzLCAyMzksIDQ3LCA5LCAxMywgMjM5LCA0NiwgOSwgCisgICAgMTMsIDIzOSwgNDUsIDksIDEzLCAyMzksIDQ0LCA5LCAxMywgMjM5LCA0MywgOSwgMTMsIDIzOSwgNDIsIDksIDEzLCAyMzksIAorICAgIDQxLCA5LCAxMywgMjM5LCA0MCwgOSwgMTMsIDIzOSwgMzksIDksIDEzLCAyMzksIDM4LCA5LCAxMywgMjM5LCAzNywgOSwgCisgICAgMTMsIDIzOSwgMzYsIDksIDEzLCAyMzksIDM1LCA5LCAxMywgMjM5LCAzNCwgOSwgMTMsIDIzOSwgMzMsIDksIDEzLCAyMzksIAorICAgIDMyLCA5LCAxMywgMjM5LCAzMSwgOSwgMTMsIDIzOSwgMzAsIDksIDEzLCAyMzksIDI5LCA5LCAxMywgMjM5LCAyOCwgOSwgCisgICAgMTMsIDIzOSwgMjcsIDksIDEzLCAyMzksIDI2LCA5LCAxMywgMjM5LCAyNSwgOSwgMTMsIDIzOSwgMjQsIDksIDEzLCAyMzksIAorICAgIDIzLCA5LCAxMywgMjM5LCAyMiwgOSwgMTMsIDIzOSwgMjEsIDksIDEzLCAyMzksIDIwLCA5LCAxMywgMjM5LCAxOSwgOSwgCisgICAgMTMsIDIzOSwgMTgsIDksIDEzLCAyMzksIDE3LCA5LCAxMywgMjM5LCAxNiwgOSwgMTMsIDIzOSwgMTUsIDksIDEzLCAyMzksIAorICAgIDE0LCA5LCAxMywgMjM5LCAxMywgOSwgMTMsIDIzOSwgMTIsIDksIDEzLCAyMzksIDExLCA5LCAxMywgMjM5LCAxMCwgOSwgCisgICAgMTMsIDIzOSwgOSwgOSwgMTMsIDIzOSwgOCwgOSwgMTMsIDIzOSwgNywgOSwgMTMsIDIzOSwgNiwgOSwgMTMsIDIzOSwgNSwgCisgICAgOSwgMTMsIDIzOSwgNCwgOSwgMTMsIDIzOSwgMywgOSwgMTMsIDIzOSwgMiwgOSwgMTMsIDIzOSwgMSwgOSwgMTMsIDIzOSwgCisgICAgMCwgOSwgMTMsIDIzOCwgMjU1LCA5LCAxMywgMjM4LCAyNTQsIDksIDEzLCAyMzgsIDI1MywgOSwgMTMsIDIzOCwgMjUyLCA5LCAKKyAgICAxMywgMjM4LCAyNTEsIDksIDEzLCAyMzgsIDI1MCwgOSwgMTMsIDIzOCwgMjQ5LCA5LCAxMywgMjM4LCAyNDgsIDksIDEzLCAKKyAgICAyMzgsIDI0NywgOSwgMTMsIDIzOCwgMjQ2LCA5LCAxMywgMjM4LCAyNDUsIDksIDEzLCAyMzgsIDI0NCwgOSwgMTMsIDIzOCwgCisgICAgMjQzLCA5LCAxMywgMjM4LCAyNDIsIDksIDEzLCAyMzgsIDI0MSwgOSwgMTMsIDIzOCwgMjQwLCA5LCAxMywgMjM4LCAyMzksIAorICAgIDksIDEzLCAyMzgsIDIzOCwgOSwgMTMsIDIzOCwgMjM3LCA5LCAxMywgMjM4LCAyMzYsIDksIDEzLCAyMzgsIDIzNSwgOSwgCisgICAgMTMsIDIzOCwgMjM0LCA5LCAxMywgMjM4LCAyMzMsIDksIDEzLCAyMzgsIDIzMiwgOSwgMTMsIDIzOCwgMjMxLCA5LCAxMywgCisgICAgMjM4LCAyMzAsIDksIDEzLCAyMzgsIDIyOSwgOSwgMTMsIDIzOCwgMjI4LCA5LCAxMywgMjM4LCAyMjcsIDksIDEzLCAyMzgsIAorICAgIDIyNiwgOSwgMTMsIDIzOCwgMjI1LCA5LCAxMywgMjM4LCAyMjQsIDksIDEzLCAyMzgsIDIyMywgOSwgMTMsIDIzOCwgMjIyLCAKKyAgICA5LCAxMywgMjM4LCAyMjEsIDksIDEzLCAyMzgsIDIyMCwgOSwgMTMsIDIzOCwgMjE5LCA5LCAxMywgMjM4LCAyMTgsIDksIAorICAgIDEzLCAyMzgsIDIxNywgOSwgMTMsIDIzOCwgMjE2LCA5LCAxMywgMjM4LCAyMTUsIDksIDEzLCAyMzgsIDIxNCwgOSwgMTMsIAorICAgIDIzOCwgMjEzLCA5LCAxMywgMjM4LCAyMTIsIDksIDEzLCAyMzgsIDIxMSwgOSwgMTMsIDIzOCwgMjEwLCA5LCAxMywgMjM4LCAKKyAgICAyMDksIDksIDEzLCAyMzgsIDIwOCwgOSwgMTMsIDIzOCwgMjA3LCA5LCAxMywgMjM4LCAyMDYsIDksIDEzLCAyMzgsIDIwNSwgCisgICAgOSwgMTMsIDIzOCwgMjA0LCA5LCAxMywgMjM4LCAyMDMsIDksIDEzLCAyMzgsIDIwMiwgOSwgMTMsIDIzOCwgMjAxLCA5LCAKKyAgICAxMywgMjM4LCAyMDAsIDksIDEzLCAyMzgsIDE5OSwgOSwgMTMsIDIzOCwgMTk4LCA5LCAxMywgMjM4LCAxOTcsIDksIDEzLCAKKyAgICAyMzgsIDE5NiwgOSwgMTMsIDIzOCwgMTk1LCA5LCAxMywgMjM4LCAxOTQsIDksIDEzLCAyMzgsIDE5MywgOSwgMTMsIDIzOCwgCisgICAgMTkyLCA5LCAxMywgMjM4LCAxOTEsIDksIDEzLCAyMzgsIDE5MCwgOSwgMTMsIDIzOCwgMTg5LCA5LCAxMywgMjM4LCAxODgsIAorICAgIDksIDEzLCAyMzgsIDE4NywgOSwgMTMsIDIzOCwgMTg2LCA5LCAxMywgMjM4LCAxODUsIDksIDEzLCAyMzgsIDE4NCwgOSwgCisgICAgMTMsIDIzOCwgMTgzLCAyMzMsIDIxMiwgMjE4LCA0NywgMTI4LCAyMTksIDIyNSwgMTI4LCAyNDUsIDExOSwgNzksIDEyOCwgCisgICAgMjI0LCAxNzgsIDc5LCAxMjgsIDUxLCA1MywgMTI4LCAyNDcsIDIwNywgNTMsIDEyOCwgMjI2LCA5MywgNTMsIDEyOCwgMjU0LCAKKyAgICAxNjIsIDEyOCwgMjU0LCA5NywgMTI4LCA0MywgMjI2LCAxNjgsIDEyOCwgNDcsIDIyNiwgMTY4LCAxMjgsIDI1NCwgMywgCisgICAgMTI4LCA5NSwgNTMsIDEyOCwgMjUwLCAyMywgMTI4LCAyNDEsIDIwLCAxMjgsIDI0NCwgNjQsIDIxOSwgODMsIDEyOCwgMjE5LCAKKyAgICAyNTAsIDEyOCwgMjEsIDIxMiwgNzksIDEyOCwgMjEsIDExOCwgMTI4LCAyMSwgMTEyLCAxMjgsIDIxLCAxNzAsIDEyOCwgMjEsIAorICAgIDE2NywgMTI4LCAyMSwgMTg1LCAxMjgsIDIxLCAxOTIsIDEyOCwgMjEsIDIwMCwgMTI4LCAyMSwgMTk4LCAxMjgsIDIxLCAKKyAgICAyMDMsIDEyOCwgMjUwLCAzMCwgMTI4LCAyMjEsIDkzLCAxMjgsIDIzMywgMTM3LCA1MywgMTI4LCAyNDUsIDE4MiwgNTMsIAorICAgIDEyOCwgMjQyLCAyMjgsIDUzLCAxMjgsIDIyNCwgMTkzLCA3OSwgMTI4LCAyNTAsIDIyLCAyNTMsIDI0OSwgMTI4LCA3LCA2LCAKKyAgICAxLCA2MywgMTI4LCA3LCA2LCAxLCAyNTMsIDIwMSwgMTI4LCA3LCA2LCAxLCAyNTEsIDEyMSwgMTI4LCA3LCA2LCAxLCAyNDksIAorICAgIDEyNSwgMTI4LCA3LCA2LCAxLCA3NywgMTI4LCA3LCA2LCAxLCAyNDUsIDk1LCAxMjgsIDcsIDYsIDEsIDI0NCwgNDEsIDEyOCwgCisgICAgNywgNiwgMSwgMjQyLCAxNjIsIDEyOCwgNywgNiwgMSwgNzUsIDEyOCwgNywgNiwgMSwgMjM2LCAzLCAxMjgsIDcsIDYsIDEsIAorICAgIDIzNSwgMTQxLCAxMjgsIDcsIDYsIDEsIDE1NSwgMTI4LCA3LCA2LCAxLCAxODQsIDEyOCwgNywgNiwgMSwgMjA2LCAxMjgsIAorICAgIDcsIDYsIDEsIDc4LCAxMjgsIDcsIDYsIDEsIDIyNywgMTEsIDEyOCwgNywgNiwgMSwgMjI1LCAxOSwgMTI4LCA3LCA2LCAxLCAKKyAgICAxNTIsIDEyOCwgNywgNiwgMSwgMTk2LCAxMjgsIDcsIDYsIDEsIDIxOCwgMTEzLCAxMjgsIDcsIDYsIDEsIDcyLCAxMjgsIDcsIAorICAgIDYsIDEsIDIxMSwgMjExLCAxMjgsIDcsIDYsIDEsIDIxNCwgODUsIDEyOCwgNywgNiwgMSwgMjEzLCAxNjksIDEyOCwgNywgNiwgCisgICAgMSwgMjEzLCAxMDgsIDEyOCwgNywgNiwgMSwgMjEyLCAxNTIsIDEyOCwgNDMsIDQyLCAxMjUsIDEyOCwgMjIzLCAyMzcsIAorICAgIDIxOSwgMjUwLCAxMjgsIDQ3LCA0MiwgMTI1LCAxMjgsIDI1MCwgOTEsIDI1NSwgNDYsIDEyOCwgMTE3LCAyMzMsIDgzLCAKKyAgICAxMjgsIDI0MiwgMjM0LCAyNTUsIDQ2LCAxMjgsIDcsIDQsIDEsIDYzLCAxMjgsIDcsIDQsIDEsIDI1MywgMjAxLCAxMjgsIDcsIAorICAgIDQsIDEsIDI1MSwgMTIxLCAxMjgsIDcsIDQsIDEsIDI0OSwgMTI1LCAxMjgsIDcsIDQsIDEsIDc3LCAxMjgsIDcsIDQsIDEsIAorICAgIDI0NSwgOTUsIDEyOCwgNywgNCwgMSwgMjQ0LCA0MSwgMTI4LCA3LCA0LCAxLCAyNDIsIDE2MiwgMTI4LCA3LCA0LCAxLCA3NSwgCisgICAgMTI4LCA3LCA0LCAxLCAyMzYsIDMsIDEyOCwgNywgNCwgMSwgMjM1LCAxNDEsIDEyOCwgNywgNCwgMSwgMTU1LCAxMjgsIDcsIAorICAgIDQsIDEsIDE4NCwgMTI4LCA3LCA0LCAxLCAyMDYsIDEyOCwgNywgNCwgMSwgNzgsIDEyOCwgNywgNCwgMSwgMjI3LCAxMSwgCisgICAgMTI4LCA3LCA0LCAxLCAyMjUsIDE5LCAxMjgsIDcsIDQsIDEsIDE1MiwgMTI4LCA3LCA0LCAxLCAxOTYsIDEyOCwgNywgNCwgCisgICAgMSwgMjE4LCAxMTMsIDEyOCwgNywgNCwgMSwgNzIsIDEyOCwgNywgNCwgMSwgMjExLCAyMTEsIDEyOCwgNywgNCwgMSwgMjE0LCAKKyAgICA4NSwgMTI4LCA3LCA0LCAxLCAyMTMsIDE2OSwgMTI4LCA3LCA0LCAxLCAyMTMsIDEwOCwgMTI4LCA3LCA0LCAxLCAyMTIsIAorICAgIDE1MiwgMTI4LCA0MywgMjQ5LCAxNjMsIDEyNSwgMTI4LCA2NiwgMjMzLCA4MywgMTI4LCA0NywgMjQ5LCAxNjMsIDEyNSwgCisgICAgMTI4LCAxNzcsIDI1MSwgNjIsIDIxOCwgNDcsIDQ0LCAyMjIsIDIxLCA0NCwgMjIyLCAxMCwgNDQsIDIyMSwgMjU1LCA0NCwgCisgICAgMjIxLCAyNDMsIDQ0LCAyMjEsIDIzMiwgNDQsIDIyMSwgMjIxLCA0NCwgMjIxLCAyMTAsIDQ0LCAyMjEsIDE5OSwgNDQsIAorICAgIDIyMSwgMTg4LCA0NCwgMjIxLCAxODAsIDQ0LCAyMjEsIDE3OSwgNDQsIDIyMSwgMTc4LCA0NCwgMjIxLCAxNzcsIDQ0LCAKKyAgICAyMjEsIDE3NSwgNDQsIDIyMSwgMTc0LCA0NCwgMjIxLCAxNzMsIDQ0LCAyMjEsIDE3MiwgNDQsIDIyMSwgMTcxLCA0NCwgCisgICAgMjIxLCAxNzAsIDQ0LCAyMjEsIDE2OSwgNDQsIDIyMSwgMTY4LCA0NCwgMjIxLCAxNjcsIDQ0LCAyMjEsIDE2NiwgNDQsIAorICAgIDIyMSwgMTY0LCA0NCwgMjIxLCAxNjMsIDQ0LCAyMjEsIDE2MiwgNDQsIDIyMSwgMTYxLCA0NCwgMjIxLCAxNjAsIDQ0LCAKKyAgICAyMjEsIDE1OSwgNDQsIDIyMSwgMTU4LCA0NCwgMjIxLCAxNTcsIDQ0LCAyMjEsIDE1NiwgNDQsIDIyMSwgMTU1LCA0NCwgCisgICAgMjIxLCAxNTMsIDQ0LCAyMjEsIDE1MiwgNDQsIDIyMSwgMTUxLCA0NCwgMjIxLCAxNTAsIDQ0LCAyMjEsIDE0OSwgNDQsIAorICAgIDIyMSwgMTQ4LCA0NCwgMjIxLCAxNDcsIDQ0LCAyMjEsIDE0NiwgNDQsIDIyMSwgMTQ1LCA0NCwgMjIxLCAxNDQsIDQ0LCAKKyAgICAyMjEsIDE0MiwgNDQsIDIyMSwgMTQxLCA0NCwgMjIxLCAxNDAsIDQ0LCAyMjEsIDEzOSwgNDQsIDIyMSwgMTM4LCA0NCwgCisgICAgMjIxLCAxMzcsIDQ0LCAyMjEsIDEzNiwgNDQsIDIyMSwgMTM1LCA0NCwgMjIxLCAxMzQsIDQ0LCAyMjEsIDEzMywgNDQsIAorICAgIDIyMSwgMTMxLCA0NCwgMjIxLCAxMzAsIDQ0LCAyMjEsIDEyOSwgNDQsIDIyMSwgMTI4LCA0NCwgMjIxLCAxMjcsIDQ0LCAKKyAgICAyMjEsIDEyNiwgNDQsIDIyMSwgMTI1LCA0NCwgMjIxLCAxMjQsIDQ0LCAyMjEsIDEyMywgNDQsIDIyMSwgMTIyLCA0NCwgCisgICAgMjIxLCAxMjAsIDQ0LCAyMjEsIDExOSwgNDQsIDIyMSwgMTE4LCA0NCwgMjIxLCAxMTcsIDQ0LCAyMjEsIDExNiwgNDQsIAorICAgIDIyMSwgMTE1LCA0NCwgMjIxLCAxMTQsIDQ0LCAyMjEsIDExMywgNDQsIDIyMSwgMTEyLCA0NCwgMjIxLCAxMTEsIDQ0LCAKKyAgICAyMjEsIDEwOSwgNDQsIDIyMSwgMTA4LCA0NCwgMjIxLCAxMDcsIDQ0LCAyMjEsIDEwNiwgNDQsIDIyMSwgMTA1LCA0NCwgCisgICAgMjIxLCAxMDQsIDQ0LCAyMjEsIDEwMywgNDQsIDIyMSwgMTAyLCA0NCwgMjIxLCAxMDEsIDQ0LCAyMjEsIDEwMCwgNDQsIAorICAgIDIyMiwgOTcsIDQ0LCAyMjIsIDk2LCA0NCwgMjIyLCA5NSwgNDQsIDIyMiwgOTQsIDQ0LCAyMjIsIDkzLCA0NCwgMjIyLCA5MiwgCisgICAgNDQsIDIyMiwgOTEsIDQ0LCAyMjIsIDkwLCA0NCwgMjIyLCA4OSwgNDQsIDIyMiwgODgsIDQ0LCAyMjIsIDg2LCA0NCwgMjIyLCAKKyAgICA4NSwgNDQsIDIyMiwgODQsIDQ0LCAyMjIsIDgzLCA0NCwgMjIyLCA4MiwgNDQsIDIyMiwgODEsIDQ0LCAyMjIsIDgwLCA0NCwgCisgICAgMjIyLCA3OSwgNDQsIDIyMiwgNzgsIDQ0LCAyMjIsIDc3LCA0NCwgMjIyLCA3NSwgNDQsIDIyMiwgNzQsIDQ0LCAyMjIsIDczLCAKKyAgICA0NCwgMjIyLCA3MiwgNDQsIDIyMiwgNzEsIDQ0LCAyMjIsIDcwLCA0NCwgMjIyLCA2OSwgNDQsIDIyMiwgNjgsIDQ0LCAyMjIsIAorICAgIDY3LCA0NCwgMjIyLCA2NiwgNDQsIDIyMiwgNjQsIDQ0LCAyMjIsIDYzLCA0NCwgMjIyLCA2MiwgNDQsIDIyMiwgNjEsIDQ0LCAKKyAgICAyMjIsIDYwLCA0NCwgMjIyLCA1OSwgNDQsIDIyMiwgNTgsIDQ0LCAyMjIsIDU3LCA0NCwgMjIyLCA1NiwgNDQsIDIyMiwgNTUsIAorICAgIDQ0LCAyMjIsIDUzLCA0NCwgMjIyLCA1MiwgNDQsIDIyMiwgNTEsIDQ0LCAyMjIsIDUwLCA0NCwgMjIyLCA0OSwgNDQsIDIyMiwgCisgICAgNDgsIDQ0LCAyMjIsIDQ3LCA0NCwgMjIyLCA0NiwgNDQsIDIyMiwgNDUsIDQ0LCAyMjIsIDQ0LCA0NCwgMjIyLCA0MiwgNDQsIAorICAgIDIyMiwgNDEsIDQ0LCAyMjIsIDQwLCA0NCwgMjIyLCAzOSwgNDQsIDIyMiwgMzgsIDQ0LCAyMjIsIDM3LCA0NCwgMjIyLCAzNiwgCisgICAgNDQsIDIyMiwgMzUsIDQ0LCAyMjIsIDM0LCA0NCwgMjIyLCAzMywgNDQsIDIyMiwgMzEsIDQ0LCAyMjIsIDMwLCA0NCwgMjIyLCAKKyAgICAyOSwgNDQsIDIyMiwgMjgsIDQ0LCAyMjIsIDI3LCA0NCwgMjIyLCAyNiwgNDQsIDIyMiwgMjUsIDQ0LCAyMjIsIDI0LCA0NCwgCisgICAgMjIyLCAyMywgNDQsIDIyMiwgMjIsIDQ0LCAyMjIsIDIwLCA0NCwgMjIyLCAxOSwgNDQsIDIyMiwgMTgsIDQ0LCAyMjIsIDE3LCAKKyAgICA0NCwgMjIyLCAxNiwgNDQsIDIyMiwgMTUsIDQ0LCAyMjIsIDE0LCA0NCwgMjIyLCAxMywgNDQsIDIyMiwgMTIsIDQ0LCAyMjIsIAorICAgIDExLCA0NCwgMjIyLCA5LCA0NCwgMjIyLCA4LCA0NCwgMjIyLCA3LCA0NCwgMjIyLCA2LCA0NCwgMjIyLCA1LCA0NCwgMjIyLCAKKyAgICA0LCA0NCwgMjIyLCAzLCA0NCwgMjIyLCAyLCA0NCwgMjIyLCAxLCA0NCwgMjIyLCAwLCA0NCwgMjIxLCAyNTQsIDQ0LCAyMjEsIAorICAgIDI1MywgNDQsIDIyMSwgMjUyLCA0NCwgMjIxLCAyNTEsIDQ0LCAyMjEsIDI1MCwgNDQsIDIyMSwgMjQ5LCA0NCwgMjIxLCAKKyAgICAyNDgsIDQ0LCAyMjEsIDI0NywgNDQsIDIyMSwgMjQ2LCA0NCwgMjIxLCAyNDUsIDQ0LCAyMjEsIDI0MiwgNDQsIDIyMSwgCisgICAgMjQxLCA0NCwgMjIxLCAyNDAsIDQ0LCAyMjEsIDIzOSwgNDQsIDIyMSwgMjM4LCA0NCwgMjIxLCAyMzcsIDQ0LCAyMjEsIAorICAgIDIzNiwgNDQsIDIyMSwgMjM1LCA0NCwgMjIxLCAyMzQsIDQ0LCAyMjEsIDIzMywgNDQsIDIyMSwgMjMxLCA0NCwgMjIxLCAKKyAgICAyMzAsIDQ0LCAyMjEsIDIyOSwgNDQsIDIyMSwgMjI4LCA0NCwgMjIxLCAyMjcsIDQ0LCAyMjEsIDIyNiwgNDQsIDIyMSwgCisgICAgMjI1LCA0NCwgMjIxLCAyMjQsIDQ0LCAyMjEsIDIyMywgNDQsIDIyMSwgMjIyLCA0NCwgMjIxLCAyMjAsIDQ0LCAyMjEsIAorICAgIDIxOSwgNDQsIDIyMSwgMjE4LCA0NCwgMjIxLCAyMTcsIDQ0LCAyMjEsIDIxNiwgNDQsIDIyMSwgMjE1LCA0NCwgMjIxLCAKKyAgICAyMTQsIDQ0LCAyMjEsIDIxMywgNDQsIDIyMSwgMjEyLCA0NCwgMjIxLCAyMTEsIDQ0LCAyMjEsIDIwOSwgNDQsIDIyMSwgCisgICAgMjA4LCA0NCwgMjIxLCAyMDcsIDQ0LCAyMjEsIDIwNiwgNDQsIDIyMSwgMjA1LCA0NCwgMjIxLCAyMDQsIDQ0LCAyMjEsIAorICAgIDIwMywgNDQsIDIyMSwgMjAyLCA0NCwgMjIxLCAyMDEsIDQ0LCAyMjEsIDIwMCwgNDQsIDIyMSwgMTk4LCA0NCwgMjIxLCAKKyAgICAxOTcsIDQ0LCAyMjEsIDE5NiwgNDQsIDIyMSwgMTk1LCA0NCwgMjIxLCAxOTQsIDQ0LCAyMjEsIDE5MywgNDQsIDIyMSwgCisgICAgMTkyLCA0NCwgMjIxLCAxOTEsIDQ0LCAyMjEsIDE5MCwgNDQsIDIyMSwgMTg5LCA0NCwgMjIxLCAxODcsIDQ0LCAyMjEsIAorICAgIDE4NiwgNDQsIDIyMSwgMTg1LCA0NCwgMjIxLCAxODQsIDQ0LCAyMjEsIDE4MywgNDQsIDIyMSwgMTgyLCA0NCwgMjIxLCAKKyAgICAxODEsIDcsIDYsIDEsIDI0MywgODksIDcsIDQsIDEsIDI0MywgODksIDE1OCwgMSwgMjMzLCA0NSwgMjAyLCAxLCAyNDQsIAorICAgIDEzMywgMjQ0LCAxMjUsIDIwMiwgMSwgMjQ0LCAxMzMsIDI0NCwgMjQ2LCAyMDIsIDEsIDIyMywgMTQ2LCAyMDIsIDEsIDIzMywgCisgICAgMjYsIDYxLCAxNTYsIDI1MiwgMTUsIDIyMCwgMjA0LCAyNDMsIDU1LCAyMzEsIDEyOSwgMjIzLCAyMjgsIDgsIDMsIDIzNiwgCisgICAgMTcsIDc5LCAyMjUsIDExMCwgMjQ0LCAxMDksIDMxLCA2NiwgNDcsIDY5LCAyMzMsIDE0MiwgMTI1LCA0OCwgMjcsIDE2LCAKKyAgICAyNDQsIDcxLCAyMjAsIDQ5LCAyNTAsIDEzMywgMjE0LCAyNDcsIDcsIDYsIDEsIDExMSwgMiwgMjMyLCAxMTEsIDIyLCAyMDksIAorICAgIDcsIDQsIDEsIDExMSwgMiwgMjMyLCAxMTEsIDIyLCAyMDksIDcsIDYsIDEsIDE1NCwgMiwgNjYsIDIzMywgODQsIDU1LCA3LCAKKyAgICA0LCAxLCAxNTQsIDIsIDY2LCAyMzMsIDg0LCA1NSwgNywgNiwgMSwgMTU0LCAyLCA2NiwgMjMzLCA4NCwgMjUyLCA5MCwgMjIsIAorICAgIDIwOSwgNywgNCwgMSwgMTU0LCAyLCA2NiwgMjMzLCA4NCwgMjUyLCA5MCwgMjIsIDIwOSwgNywgNiwgMSwgMTU0LCAyLCA2NiwgCisgICAgMjMzLCA4NCwgMjUyLCA5MCwgMjIsIDEzOCwgNywgNCwgMSwgMTU0LCAyLCA2NiwgMjMzLCA4NCwgMjUyLCA5MCwgMjIsIAorICAgIDEzOCwgNywgNiwgMSwgMTU0LCAyLCAyNTAsIDkxLCAyMiwgMjMyLCAxMTAsIDcsIDQsIDEsIDE1NCwgMiwgMjUwLCA5MSwgCisgICAgMjIsIDIzMiwgMTEwLCA3LCA2LCAxLCAxNTQsIDIsIDI1MCwgOTEsIDIyLCAyNTEsIDM0LCA3LCA0LCAxLCAxNTQsIDIsIAorICAgIDI1MCwgOTEsIDIyLCAyNTEsIDM0LCA3LCA2LCAxLCAyNDEsIDcsIDIsIDIzMiwgMTExLCAyMiwgMjA5LCA3LCA0LCAxLCAKKyAgICAyNDEsIDcsIDIsIDIzMiwgMTExLCAyMiwgMjA5LCA3LCA0LCAxLCAyNDEsIDcsIDIsIDYyLCA3NCwgMjIsIDEzOCwgNywgNCwgCisgICAgMSwgMjI5LCAyMjksIDIsIDIxNywgNTYsIDUwLCA3LCA2LCAxLCAxNDEsIDIsIDY2LCAyMzMsIDg0LCA1NSwgNywgNCwgMSwgCisgICAgMTQxLCAyLCA2NiwgMjMzLCA4NCwgNTUsIDcsIDYsIDEsIDE0MSwgMiwgNjYsIDIzMywgODQsIDI1MiwgOTAsIDIyLCAyMDksIAorICAgIDcsIDQsIDEsIDE0MSwgMiwgNjYsIDIzMywgODQsIDI1MiwgOTAsIDIyLCAyMDksIDcsIDYsIDEsIDE0MSwgMiwgNjYsIDIzMywgCisgICAgODQsIDI1MiwgOTAsIDIyLCAxMzgsIDcsIDQsIDEsIDE0MSwgMiwgNjYsIDIzMywgODQsIDI1MiwgOTAsIDIyLCAxMzgsIDcsIAorICAgIDYsIDEsIDIyMywgMjksIDIsIDY2LCAyMzMsIDg0LCA1NSwgNywgNCwgMSwgMjIzLCAyOSwgMiwgNjYsIDIzMywgODQsIDU1LCAKKyAgICA3LCA2LCAxLCAxMDMsIDIsIDIzMiwgMTExLCAyMiwgMjA5LCA3LCA0LCAxLCAxMDMsIDIsIDIzMiwgMTExLCAyMiwgMjA5LCAKKyAgICA3LCA2LCAxLCAxMTEsIDIsIDIyNywgMTI4LCAyMiwgMTM4LCA3LCA0LCAxLCAxMTEsIDIsIDIyNywgMTI4LCAyMiwgMTM4LCAKKyAgICA3LCA2LCAxLCAxMTEsIDIsIDIyNywgMTI4LCAyMiwgMTc3LCA3LCA0LCAxLCAxMTEsIDIsIDIyNywgMTI4LCAyMiwgMTc3LCAKKyAgICA3LCA2LCAxLCAxNTQsIDIsIDIyNywgMTI4LCAyMiwgMTM4LCA3LCA0LCAxLCAxNTQsIDIsIDIyNywgMTI4LCAyMiwgMTM4LCAKKyAgICA3LCA2LCAxLCAxNTQsIDIsIDIyNywgMTI4LCAyMiwgMTc3LCA3LCA0LCAxLCAxNTQsIDIsIDIyNywgMTI4LCAyMiwgMTc3LCAKKyAgICA3LCA2LCAxLCAxNTQsIDIsIDYyLCA3NCwgMjIsIDEzOCwgNywgNCwgMSwgMTU0LCAyLCA2MiwgNzQsIDIyLCAxMzgsIDcsIDYsIAorICAgIDEsIDE1NCwgMiwgNjIsIDc0LCAyMiwgMTc3LCA3LCA0LCAxLCAxNTQsIDIsIDYyLCA3NCwgMjIsIDE3NywgNywgNCwgMSwgCisgICAgMjQxLCA3LCAyLCA2MiwgNzQsIDIyLCAyMDksIDcsIDQsIDEsIDI0MSwgNywgMiwgNjIsIDc0LCAyMiwgMTc3LCA3LCA2LCAxLCAKKyAgICAyNDEsIDcsIDIsIDIyNywgMTI4LCAyMiwgMTM4LCA3LCA0LCAxLCAyNDEsIDcsIDIsIDIyNywgMTI4LCAyMiwgNjIsIDc0LCAKKyAgICAyMiwgMTM4LCA3LCA2LCAxLCAyNDEsIDcsIDIsIDIyNywgMTI4LCAyMiwgMTc3LCA3LCA0LCAxLCAyNDEsIDcsIDIsIDIyNywgCisgICAgMTI4LCAyMiwgNjIsIDc0LCAyMiwgMTc3LCA3LCA2LCAxLCAyMzYsIDQsIDIsIDE3NywgNywgNCwgMSwgMjM2LCA0LCAyLCAKKyAgICA2MiwgNzQsIDIyLCAxNzcsIDcsIDYsIDEsIDIzNCwgMTMsIDIsIDE3NywgNywgNCwgMSwgMjM0LCAxMywgMiwgMTc3LCA3LCAKKyAgICA2LCAxLCAyMzIsIDE4MywgMiwgMTc3LCA3LCA0LCAxLCAyMzIsIDE4MywgMiwgMTc3LCA3LCA2LCAxLCAyMjQsIDE0OCwgMiwgCisgICAgMTc3LCA3LCA0LCAxLCAyMjQsIDE0OCwgMiwgMTc3LCA3LCA2LCAxLCAxMDMsIDIsIDIyNywgMTI4LCAyMiwgMTM4LCA3LCA0LCAKKyAgICAxLCAxMDMsIDIsIDIyNywgMTI4LCAyMiwgMTM4LCA3LCA2LCAxLCAxMDMsIDIsIDIyNywgMTI4LCAyMiwgMTc3LCA3LCA0LCAKKyAgICAxLCAxMDMsIDIsIDIyNywgMTI4LCAyMiwgMTc3LCA3LCA2LCAxLCAxMDMsIDIsIDIzMiwgMTExLCAyMiwgMTM4LCA3LCA0LCAKKyAgICAxLCAxMDMsIDIsIDIzMiwgMTExLCAyMiwgMTM4LCA3LCA2LCAxLCAxMDMsIDIsIDIzMiwgMTExLCAyMiwgMTc3LCA3LCA0LCAKKyAgICAxLCAxMDMsIDIsIDIzMiwgMTExLCAyMiwgMTc3LCA3LCA0LCAxLCAyNTUsIDIxLCAyLCAyMDksIDcsIDQsIDEsIDIxMCwgCisgICAgMTQxLCAyLCAyMDksIDcsIDQsIDEsIDIxMCwgMTQxLCAyLCAxMzgsIDcsIDQsIDEsIDIxNiwgNjYsIDIxNSwgODYsIDIsIAorICAgIDIwOSwgNywgNCwgMSwgMjE2LCA2NiwgMjE1LCA4NiwgMiwgMTM4LCA3LCA0LCAxLCAyMjIsIDEzNywgMiwgMjA5LCA3LCA0LCAKKyAgICAxLCAyMjIsIDEzNywgMiwgMTM4LCA3LCA0LCAxLCAyNDEsIDE1NiwgMjIyLCAxMzcsIDIsIDIwOSwgNywgNCwgMSwgMjQxLCAKKyAgICAxNTYsIDIyMiwgMTM3LCAyLCAxMzgsIDE0MiwgMSwgMjM0LCAyMjcsIDM2LCAxMjAsIDIzNSwgMTQxLCAzNiwgMTIwLCAyMjksIAorICAgIDIyOCwgMzYsIDEyMCwgMjUxLCAxMjEsIDM2LCAxMjAsIDIyOCwgNjYsIDM2LCAxMjAsIDIxNiwgMTMxLCAzNiwgMTIwLCAKKyAgICAyMjksIDcsIDM2LCAxMjAsIDIxOCwgMTEzLCAzNiwgMTIwLCAyMDYsIDM2LCAxMjAsIDIyNywgMTEsIDM2LCAxMjAsIDE4NCwgCisgICAgMzYsIDEyMCwgMjEzLCAxMDgsIDM2LCAxMjAsIDE1MiwgMzYsIDEyMCwgMTU1LCAzNiwgMTIwLCAyMTEsIDIxMSwgMzYsIAorICAgIDEyMCwgMjMzLCA0NiwgMzYsIDEyMCwgMjMzLCA1NSwgMzYsIDEyMCwgMjIzLCAxMTYsIDM2LCAxMjAsIDIyOCwgMjQ3LCAzNiwgCisgICAgMTIwLCAyMzYsIDMsIDM2LCAxMjAsIDIyMSwgNDksIDM2LCAxMjAsIDIxOSwgMTc3LCAzNiwgMTIwLCAxOTYsIDM2LCAxMjAsIAorICAgIDI0MiwgMTYyLCAzNiwgMTIwLCAyMzQsIDk2LCAzNiwgMywgMjM1LCAxMjgsIDM2LCAzLCAyMzQsIDIxMiwgMzYsIDMsIDIzNCwgCisgICAgMjAzLCAzNiwgMywgMjM0LCA4MSwgMzYsIDMsIDIzNCwgNTIsIDM2LCAzLCAyMzUsIDQ0LCAzNiwgMywgMjM1LCA0MywgMzYsIAorICAgIDMsIDIzNSwgMTA4LCAzNiwgMywgMjM0LCAxNDgsIDM2LCAzLCAyMzQsIDEzMCwgMzYsIDMsIDIzNSwgNTcsIDM2LCAzLCAKKyAgICAyMjksIDIyNSwgMzYsIDMsIDIyOSwgMTc4LCAzNiwgMywgMjI5LCAxNzQsIDM2LCAzLCAyMjksIDE0MywgMzYsIDMsIDIyOSwgCisgICAgMTM2LCAzNiwgMywgMjI5LCAyMTQsIDM2LCAzLCAyMjksIDIxMiwgMzYsIDMsIDIyOSwgMjIzLCAzNiwgMywgMjI5LCAxNTUsIAorICAgIDM2LCAzLCAyMjksIDE1MCwgMzYsIDMsIDIyOSwgMjE2LCAzNiwgMywgMjUxLCA4NywgMzYsIDMsIDI1MCwgMTExLCAzNiwgMywgCisgICAgMjUwLCAxMDEsIDM2LCAzLCAyNDksIDE3NiwgMzYsIDMsIDI0OSwgMTQ4LCAzNiwgMywgMjUwLCAyNDcsIDM2LCAzLCAyNTAsIAorICAgIDIzOSwgMzYsIDMsIDI1MSwgNzgsIDM2LCAzLCAyNTAsIDQyLCAzNiwgMywgMjQ5LCAyMzYsIDM2LCAzLCAyNTEsIDIyLCAzNiwgCisgICAgMywgMjI4LCA2MywgMzYsIDMsIDIyOCwgNDksIDM2LCAzLCAyMjgsIDQ0LCAzNiwgMywgMjI4LCAyOSwgMzYsIDMsIDIyOCwgCisgICAgMjIsIDM2LCAzLCAyMjgsIDU2LCAzNiwgMywgMjI4LCA1NSwgMzYsIDMsIDIyOCwgNjEsIDM2LCAzLCAyMjgsIDM1LCAzNiwgCisgICAgMywgMjI4LCAzMywgMzYsIDMsIDIyOCwgNTksIDM2LCAzLCAyMTYsIDEyNywgMzYsIDMsIDIxNiwgMTA3LCAzNiwgMywgMjE2LCAKKyAgICAxMDYsIDM2LCAzLCAyMTYsIDk1LCAzNiwgMywgMjE2LCA5MiwgMzYsIDMsIDIxNiwgMTIzLCAzNiwgMywgMjE2LCAxMjIsIAorICAgIDM2LCAzLCAyMTYsIDEyNiwgMzYsIDMsIDIxNiwgMTA1LCAzNiwgMywgMjE2LCAxMDQsIDM2LCAzLCAyMTYsIDEyNSwgMzYsIAorICAgIDMsIDIyOSwgNSwgMzYsIDMsIDIyOCwgMjQ5LCAzNiwgMywgMjI4LCAyNDgsIDM2LCAzLCAyMjgsIDIzMiwgMzYsIDMsIDIyOCwgCisgICAgMjMxLCAzNiwgMywgMjI5LCAyLCAzNiwgMywgMjI5LCAxLCAzNiwgMywgMjI5LCA0LCAzNiwgMywgMjI4LCAyMzQsIDM2LCAzLCAKKyAgICAyMjgsIDIzMywgMzYsIDMsIDIyOSwgMywgMzYsIDMsIDIxOCwgNjMsIDM2LCAzLCAyMTcsIDg0LCAzNiwgMywgMjE3LCA3MCwgCisgICAgMzYsIDMsIDIxNiwgOTAsIDM2LCAzLCAyMTYsIDU3LCAzNiwgMywgMjE3LCAyNDIsIDM2LCAzLCAyMTcsIDIzMiwgMzYsIDMsIAorICAgIDIxOCwgNDIsIDM2LCAzLCAxMDksIDM2LCAzLCAyMTYsIDI0MywgMzYsIDMsIDIxOCwgNSwgMzYsIDMsIDIzMCwgMTEyLCAzNiwgCisgICAgMywgMjI5LCAxMjgsIDM2LCAzLCAyMjksIDEwMywgMzYsIDMsIDIyOCwgMTM1LCAzNiwgMywgMjI4LCA3OCwgMzYsIDMsIAorICAgIDIyOSwgMjU0LCAzNiwgMywgMjI5LCAyNTEsIDM2LCAzLCAyMzAsIDk5LCAzNiwgMywgMjI4LCAyMjgsIDM2LCAzLCAyMjgsIAorICAgIDIxOCwgMzYsIDMsIDIzMCwgNzYsIDM2LCAzLCAyMjYsIDI1MSwgMzYsIDMsIDIyNiwgMjAsIDM2LCAzLCAyMjUsIDIzOSwgCisgICAgMzYsIDMsIDIyNSwgNzEsIDM2LCAzLCAyMjUsIDQyLCAzNiwgMywgMjI2LCAxMzIsIDM2LCAzLCAyMjYsIDEyMiwgMzYsIDMsIAorICAgIDIyNiwgMjM1LCAzNiwgMywgMjI1LCAxODYsIDM2LCAzLCAyMjUsIDE2NSwgMzYsIDMsIDIyNiwgMTQ0LCAzNiwgMywgMjMyLCAKKyAgICAxMTQsIDM2LCAzLCAyMzEsIDExMiwgMzYsIDMsIDIzMSwgODQsIDM2LCAzLCAyMzAsIDI0MiwgMzYsIDMsIDIzMCwgMTk0LCAKKyAgICAzNiwgMywgMjMxLCAyMjYsIDM2LCAzLCAyMzEsIDIxNSwgMzYsIDMsIDIzMiwgODEsIDM2LCAzLCAyMzEsIDQ1LCAzNiwgMywgCisgICAgMjMxLCAxNiwgMzYsIDMsIDIzMiwgMTMsIDM2LCAzLCAyMTMsIDk0LCAzNiwgMywgMjEzLCAwLCAzNiwgMywgMjEyLCAyNDcsIAorICAgIDM2LCAzLCAyMTIsIDIwNCwgMzYsIDMsIDIxMiwgMTczLCAzNiwgMywgMjEzLCAzOSwgMzYsIDMsIDIxMywgMzYsIDM2LCAzLCAKKyAgICAyMTMsIDczLCAzNiwgMywgMjEyLCAyMzYsIDM2LCAzLCAyMTIsIDIyMSwgMzYsIDMsIDIxMywgNDcsIDM2LCAzLCAyMjQsIAorICAgIDEwOSwgMzYsIDMsIDIyMywgMjIyLCAzNiwgMywgMjIzLCAxNzAsIDM2LCAzLCAyMjMsIDc3LCAzNiwgMywgMjIzLCA0OSwgCisgICAgMzYsIDMsIDIyNCwgNTUsIDM2LCAzLCAyMjQsIDM1LCAzNiwgMywgMjI0LCA5MiwgMzYsIDMsIDIyMywgMTQ2LCAzNiwgMywgCisgICAgMjIzLCAxMzMsIDM2LCAzLCAyMjQsIDYzLCAzNiwgMywgMjMzLCAyNTQsIDM2LCAzLCAyMzMsIDExMSwgMzYsIDMsIDIzMywgCisgICAgOTcsIDM2LCAzLCAyMzIsIDIzMCwgMzYsIDMsIDIzMiwgMjA1LCAzNiwgMywgMjMzLCAxODAsIDM2LCAzLCAyMzMsIDE3MiwgCisgICAgMzYsIDMsIDIzMywgMjMxLCAzNiwgMywgMjMzLCAyNiwgMzYsIDMsIDIzMiwgMjU0LCAzNiwgMywgMjMzLCAxOTYsIDM2LCAzLCAKKyAgICAyMTUsIDcsIDM2LCAzLCAyMTQsIDE1OSwgMzYsIDMsIDIxNCwgMTQ3LCAzNiwgMywgMjE0LCAxMDMsIDM2LCAzLCAyMTQsIAorICAgIDk2LCAzNiwgMywgMjE0LCAyMzcsIDM2LCAzLCAyMTQsIDIzMiwgMzYsIDMsIDIxNSwgNSwgMzYsIDMsIDIxNCwgMTIzLCAzNiwgCisgICAgMywgMjE0LCAxMTIsIDM2LCAzLCAyMTQsIDI0MywgMzYsIDMsIDIzMywgNDQsIDM2LCAzLCAyMzMsIDM5LCAzNiwgMywgMjMzLCAKKyAgICAzOCwgMzYsIDMsIDIzMywgMzUsIDM2LCAzLCAyMzMsIDM0LCAzNiwgMywgMjMzLCA0MSwgMzYsIDMsIDIzMywgNDAsIDM2LCAKKyAgICAzLCAyMzMsIDQzLCAzNiwgMywgMjMzLCAzNywgMzYsIDMsIDIzMywgMzYsIDM2LCAzLCAyMzMsIDQyLCAzNiwgMywgMjMzLCAKKyAgICA1MywgMzYsIDMsIDIzMywgNDgsIDM2LCAzLCAyMzMsIDQ3LCAzNiwgMywgMjMzLCAzMSwgMzYsIDMsIDIzMywgMzAsIDM2LCAKKyAgICAzLCAyMzMsIDUwLCAzNiwgMywgMjMzLCA0OSwgMzYsIDMsIDIzMywgNTIsIDM2LCAzLCAyMzMsIDMzLCAzNiwgMywgMjMzLCAKKyAgICAzMiwgMzYsIDMsIDIzMywgNTEsIDM2LCAzLCAyMjMsIDExNCwgMzYsIDMsIDIyMywgMTAzLCAzNiwgMywgMjIzLCAxMDIsIAorICAgIDM2LCAzLCAyMjMsIDk2LCAzNiwgMywgMjIzLCA4OSwgMzYsIDMsIDIyMywgMTEwLCAzNiwgMywgMjIzLCAxMDksIDM2LCAzLCAKKyAgICAyMjMsIDExMywgMzYsIDMsIDIyMywgMTAxLCAzNiwgMywgMjIzLCAxMDAsIDM2LCAzLCAyMjMsIDExMiwgMzYsIDMsIDIyOCwgCisgICAgMjQ1LCAzNiwgMywgMjI4LCAyNDAsIDM2LCAzLCAyMjgsIDIzOSwgMzYsIDMsIDIyOCwgMjM2LCAzNiwgMywgMjI4LCAyMzUsIAorICAgIDM2LCAzLCAyMjgsIDI0MiwgMzYsIDMsIDIyOCwgMjQxLCAzNiwgMywgMjI4LCAyNDQsIDM2LCAzLCAyMjgsIDIzOCwgMzYsIAorICAgIDMsIDIyOCwgMjM3LCAzNiwgMywgMjI4LCAyNDMsIDM2LCAzLCAyMzUsIDI1NSwgMzYsIDMsIDIzNSwgMjI1LCAzNiwgMywgCisgICAgMjM1LCAyMTgsIDM2LCAzLCAyMzUsIDE2OCwgMzYsIDMsIDIzNSwgMTUxLCAzNiwgMywgMjM1LCAyNDIsIDM2LCAzLCAyMzUsIAorICAgIDI0MCwgMzYsIDMsIDIzNSwgMjUxLCAzNiwgMywgMjM1LCAxODUsIDM2LCAzLCAyMzUsIDE3NiwgMzYsIDMsIDIzNSwgMjQ1LCAKKyAgICAzNiwgMywgMjIxLCA0MywgMzYsIDMsIDIyMCwgMjMzLCAzNiwgMywgMjIwLCAyMjgsIDM2LCAzLCAyMjAsIDE3MCwgMzYsIDMsIAorICAgIDIyMCwgMTU1LCAzNiwgMywgMjIxLCA4LCAzNiwgMywgMjIxLCA2LCAzNiwgMywgMjIxLCAzNSwgMzYsIDMsIDIyMCwgMjA4LCAKKyAgICAzNiwgMywgMjIwLCAyMDIsIDM2LCAzLCAyMjEsIDE2LCAzNiwgMywgMjE5LCAxNzUsIDM2LCAzLCAyMTksIDE0NSwgMzYsIDMsIAorICAgIDIxOSwgMTQxLCAzNiwgMywgMjE5LCAxMzIsIDM2LCAzLCAyMTksIDEyOSwgMzYsIDMsIDIxOSwgMTUwLCAzNiwgMywgMjE5LCAKKyAgICAxNDksIDM2LCAzLCAyMTksIDE3NCwgMzYsIDMsIDIxOSwgMTM3LCAzNiwgMywgMjE5LCAxMzYsIDM2LCAzLCAyMTksIDE1MiwgCisgICAgMzYsIDMsIDIyMiwgMjI1LCAzNiwgMywgMjIwLCAxMzYsIDM2LCAzLCAyMjAsIDEyMCwgMzYsIDMsIDIxOSwgNDEsIDM2LCAzLCAKKyAgICAyMTgsIDIxOSwgMzYsIDMsIDIyMiwgMTIzLCAzNiwgMywgMjIyLCAxMTIsIDM2LCAzLCAyMjIsIDIxMiwgMzYsIDMsIDIyMCwgCisgICAgNSwgMzYsIDMsIDIxOSwgMjQ1LCAzNiwgMywgMjIyLCAxNjAsIDM2LCAzLCAyNDIsIDE0OCwgMzYsIDMsIDI0MiwgMjgsIDM2LCAKKyAgICAzLCAyNDIsIDEwLCAzNiwgMywgMjQxLCA3NCwgMzYsIDMsIDI0MSwgNTUsIDM2LCAzLCAyNDIsIDg1LCAzNiwgMywgMjQyLCAKKyAgICA2NywgMzYsIDMsIDI0MiwgMTM4LCAzNiwgMywgMjQxLCAxNzMsIDM2LCAzLCAyNDEsIDE1OCwgMzYsIDMsIDI0MiwgOTMsIAorICAgIDM2LCAzLCAyMzQsIDk1LCAzNiwgMywgMjM0LCA5NCwgMzYsIDMsIDIzNCwgODksIDM2LCAzLCAyMzQsIDg4LCAzNiwgMywgCisgICAgMjM0LCA4NSwgMzYsIDMsIDIzNCwgODQsIDM2LCAzLCAyMzQsIDkxLCAzNiwgMywgMjM0LCA5MCwgMzYsIDMsIDIzNCwgOTMsIAorICAgIDM2LCAzLCAyMzQsIDg3LCAzNiwgMywgMjM0LCA4NiwgMzYsIDMsIDIzNCwgOTIsIDM2LCAzLCAyMjAsIDE3NiwgOTksIDEsIAorICAgIDIxNiwgMSwgNjcsIDEyMCwgNSwgMjUwLCAzNywgMTgzLCA2NywgMTIwLCA1LCAyNTAsIDM3LCAyMzQsIDI1MCwgNjcsIDEyMCwgCisgICAgNSwgMjUwLCAzNywgMjM0LCAxNDgsIDY3LCAxMjAsIDUsIDI1MCwgMzcsIDIzNCwgMjI0LCA2NywgMTIwLCA1LCAyNTAsIDM3LCAKKyAgICAyMjksIDE1NSwgNjcsIDEyMCwgNSwgMjUwLCAzNywgMjUxLCA4OCwgNjcsIDEyMCwgNSwgMjUwLCAzNywgMjUwLCAyMTUsIAorICAgIDY3LCAxMjAsIDUsIDI1MCwgMzcsIDI1MCwgNDIsIDY3LCAxMjAsIDUsIDI1MCwgMzcsIDI1MCwgMTQ2LCA2NywgMTIwLCA1LCAKKyAgICAyNTAsIDM3LCAyMjgsIDM1LCA2NywgMTIwLCA1LCAyNTAsIDM3LCAyNDksIDMwLCA2NywgMTIwLCA1LCAyNTAsIDM3LCAyMTYsIAorICAgIDExNiwgNjcsIDEyMCwgNSwgMjUwLCAzNywgMjQ3LCAyMjAsIDY3LCAxMjAsIDUsIDI1MCwgMzcsIDIxNiwgMTExLCA2NywgCisgICAgMTIwLCA1LCAyNTAsIDM3LCAyMDcsIDY3LCAxMjAsIDUsIDI1MCwgMzcsIDIxOCwgNjYsIDY3LCAxMjAsIDUsIDI1MCwgMzcsIAorICAgIDIxNywgMTc0LCA2NywgMTIwLCA1LCAyNTAsIDM3LCAxMDksIDY3LCAxMjAsIDUsIDI1MCwgMzcsIDIxNywgMTIyLCA2NywgCisgICAgMTIwLCA1LCAyNTAsIDM3LCAyMjgsIDIyOCwgNjcsIDEyMCwgNSwgMjUwLCAzNywgMjUyLCAyMzQsIDY3LCAxMjAsIDUsIAorICAgIDI1MCwgMzcsIDIyNiwgNTksIDY3LCAxMjAsIDUsIDI1MCwgMzcsIDIyNSwgMTg2LCA2NywgMTIwLCA1LCAyNTAsIDM3LCAKKyAgICAyMjYsIDMzLCA2NywgMTIwLCA1LCAyNTAsIDM3LCAyMzEsIDQ1LCA2NywgMTIwLCA1LCAyNTAsIDM3LCAyMTIsIDIzNiwgNjcsIAorICAgIDEyMCwgNSwgMjUwLCAzNywgMjIzLCAxNDYsIDY3LCAxMjAsIDUsIDI1MCwgMzcsIDIzMywgMjYsIDY3LCAxMjAsIDUsIDI1MCwgCisgICAgMzcsIDIxNCwgMTIzLCA2NywgMTIwLCA1LCAyNTAsIDM3LCAyMjEsIDQ3LCA2NywgMTIwLCA1LCAyNTAsIDM3LCAyMTksIAorICAgIDE3NiwgNjcsIDEyMCwgNSwgMjUwLCAzNywgMjIyLCAyMjcsIDY3LCAxMjAsIDUsIDI1MCwgMzcsIDE2MiwgNjcsIDEyMCwgNSwgCisgICAgMjUwLCAzNywgMjMzLCAyNTUsIDY3LCAzMCwgNSwgMjUwLCAzNywgMjI1LCAxMSwgNjcsIDIzNiwgMTAxLCAzMCwgNSwgMjUwLCAKKyAgICAzNywgMjI0LCAyMTAsIDY3LCAyMzYsIDEwMSwgMzAsIDUsIDI1MCwgMzcsIDIyMywgMzcsIDY3LCAyMzYsIDEwMSwgMzAsIDUsIAorICAgIDI1MCwgMzcsIDIyMywgMzAsIDY3LCAyMzYsIDEwMSwgMzAsIDUsIDI1MCwgMzcsIDIyNCwgMjQ4LCA2NywgMzAsIDUsIDIyNywgCisgICAgMTA3LCA2NywgMzAsIDUsIDI1NSwgNjUsIDEzNiwgMSwgMjUyLCA0NywgMjI5LCAyMjYsIDEzNiwgMSwgMjUyLCA0NywgMjI5LCAKKyAgICAxNzgsIDEzNiwgMSwgMjUyLCA0NywgMjI5LCAxNDMsIDEzNiwgMSwgMjUyLCA0NywgMjI5LCAyMTQsIDEzNiwgMSwgMjUyLCAKKyAgICA0NywgMjI5LCAxNTUsIDU2LCAxLCAyNTIsIDQ3LCAyMjksIDIyNiwgNTYsIDEsIDI1MiwgNDcsIDIyOSwgMTc4LCA1NiwgMSwgCisgICAgMjUyLCA0NywgMjI5LCAxNDMsIDU2LCAxLCAyNTIsIDQ3LCAyMjksIDIxNCwgNTYsIDEsIDI1MiwgNDcsIDIyOSwgMTU1LCAKKyAgICA1NiwgMSwgMjU0LCAyMjksIDI1MCwgMjQ3LCA1NiwgMSwgMjU0LCAyMjksIDIxNiwgOTAsIDU2LCAxLCAyNTQsIDIyOSwgCisgICAgMTA5LCA1NiwgMSwgMjU0LCAyMjksIDIyNywgMTEsIDU5LCAxLCAyNDUsIDEwOSwgMjQ1LCAxMDgsIDI0OSwgMjQ0LCAxNjEsIAorICAgIDEzNCwgNTksIDEsIDI0NSwgMTA4LCAyNDUsIDEwOSwgMjQ5LCAyNDQsIDE2MSwgMTM0LCAKIH07CiAKIHN0YXRpYyB1bnNpZ25lZCBjaGFyIHBocmFzZWJvb2tfb2Zmc2V0MVtdID0gewpAQCAtMTM1NTEsNiArMTM3MDksNyBAQAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAorICAgIDE3LCAxNywgMjE5LCAxNywgMjIwLCAyMjEsIDIyMiwgMjIzLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKQEAgLTEzNjA3LDcgKzEzNzY2LDcgQEAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKKyAgICAxNywgCiB9OwogCiBzdGF0aWMgdW5zaWduZWQgaW50IHBocmFzZWJvb2tfb2Zmc2V0MltdID0gewpAQCAtMTM2MTksMjU2OSArMTM3NzgsMjYyNiBAQAogICAgIDIwOSwgMjEyLCAyMTYsIDIxOSwgMjIzLCAyMjcsIDIzMiwgMjM3LCAyNDIsIDI0NiwgMjUxLCAyNTYsIDI2MSwgMjY1LCAKICAgICAyNzAsIDI3NSwgMjc5LCAyODMsIDI4NywgMjkxLCAyOTYsIDMwMSwgMzA1LCAzMDksIDMxNCwgMzE4LCAzMjMsIDMyOCwgCiAgICAgMzMzLCAzMzgsIDM0MywgMzQ3LCAzNTAsIDM1NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzU2LCAzNjAsIDM2NSwgCi0gICAgMzY4LCAzNzEsIDM3NCwgMzc3LCAzODAsIDM4MywgMzg1LCAzODgsIDM5NCwgNDAyLCA0MDUsIDQwOSwgNDEyLCA0MTQsIAotICAgIDQxNywgNDIwLCA0MjMsIDQyNiwgNDMwLCA0MzMsIDQzNiwgNDQwLCA0NDIsIDQ0NSwgNDUxLCA0NTksIDQ2NiwgNDczLCAKLSAgICA0ODAsIDQ4NSwgNDkyLCA0OTgsIDUwNSwgNTEyLCA1MTksIDUyNywgNTMyLCA1NDAsIDU0NywgNTUzLCA1NjAsIDU2NywgCi0gICAgNTc1LCA1ODIsIDU5MCwgNTk4LCA2MDMsIDYxMSwgNjE4LCA2MjQsIDYzMSwgNjM4LCA2NDUsIDY0OCwgNjU0LCA2NjEsIAotICAgIDY2NywgNjc0LCA2ODEsIDY4OCwgNjkzLCA2OTksIDcwNiwgNzEyLCA3MTksIDcyNiwgNzMzLCA3NDEsIDc0NiwgNzU0LCAKLSAgICA3NjEsIDc2NywgNzc0LCA3ODEsIDc4OSwgNzk2LCA4MDQsIDgxMiwgODE3LCA4MjUsIDgzMiwgODM4LCA4NDUsIDg1MiwgCi0gICAgODU5LCA4NjIsIDg2OCwgODc1LCA4ODEsIDg4OCwgODk1LCA5MDIsIDkwNywgOTE1LCA5MjIsIDkyOSwgOTM2LCA5NDMsIAotICAgIDk1MCwgOTU3LCA5NjQsIDk3MSwgOTc5LCA5ODcsIDk5NSwgMTAwMywgMTAxMSwgMTAxOSwgMTAyNywgMTAzNSwgMTA0MiwgCi0gICAgMTA0OSwgMTA1NiwgMTA2MywgMTA3MCwgMTA3NywgMTA4NCwgMTA5MSwgMTA5OCwgMTEwNSwgMTExMiwgMTExOSwgMTEyNywgCi0gICAgMTEzNSwgMTE0MywgMTE1MSwgMTE1OSwgMTE2NywgMTE3NSwgMTE4MywgMTE5MSwgMTE5OSwgMTIwNiwgMTIxMywgMTIyMSwgCi0gICAgMTIyOSwgMTIzNywgMTI0NSwgMTI1MywgMTI2MSwgMTI2OSwgMTI3NywgMTI4NSwgMTI5MSwgMTI5NiwgMTMwMSwgMTMwOSwgCi0gICAgMTMxNywgMTMyNSwgMTMzMywgMTMzOCwgMTM0NSwgMTM1MiwgMTM2MCwgMTM2OCwgMTM3NiwgMTM4NCwgMTM5NCwgMTQwNCwgCi0gICAgMTQxMSwgMTQxOCwgMTQyNSwgMTQzMiwgMTQ0MCwgMTQ0OCwgMTQ1NiwgMTQ2NCwgMTQ3NSwgMTQ4MCwgMTQ4NSwgMTQ5MiwgCi0gICAgMTQ5OSwgMTUwNiwgMTUxMywgMTUyMCwgMTUyNywgMTUzMiwgMTUzNywgMTU0NCwgMTU1MSwgMTU1OSwgMTU2NywgMTU3NSwgCi0gICAgMTU4MywgMTU5MCwgMTU5NywgMTYwNSwgMTYxMywgMTYyMSwgMTYyOSwgMTYzNywgMTY0NSwgMTY1MywgMTY2MSwgMTY2OSwgCi0gICAgMTY3NywgMTY4NCwgMTY5MSwgMTY5OCwgMTcwNSwgMTcxMiwgMTcxOSwgMTcyNiwgMTczMywgMTc0MSwgMTc0OSwgMTc1NiwgCi0gICAgMTc2MywgMTc3MCwgMTc3NywgMTc4NSwgMTc5MywgMTgwMSwgMTgwOSwgMTgxNywgMTgyNCwgMTgzMSwgMTgzOSwgMTg0NywgCi0gICAgMTg1NSwgMTg2MywgMTg2OCwgMTg3NCwgMTg4MCwgMTg4NywgMTg5NCwgMTg5OSwgMTkwNCwgMTkxMCwgMTkxNywgMTkyNCwgCi0gICAgMTkzMSwgMTkzOCwgMTk0NiwgMTk1NCwgMTk2MSwgMTk2NywgMTk3MiwgMTk3OCwgMTk4NSwgMTk5MiwgMTk5OSwgMjAwNCwgCi0gICAgMjAwOSwgMjAxNCwgMjAyMSwgMjAyOCwgMjAzNSwgMjA0MiwgMjA0OSwgMjA1NSwgMjA2MywgMjA3MywgMjA4MiwgMjA4OSwgCi0gICAgMjA5NiwgMjEwMSwgMjEwNiwgMjExMywgMjEyMCwgMjEyNCwgMjEyOSwgMjEzNCwgMjEzOSwgMjE0NywgMjE1NiwgMjE2MywgCi0gICAgMjE3MCwgMjE3OSwgMjE4NiwgMjE5MywgMjE5OCwgMjIwNSwgMjIxMiwgMjIxOSwgMjIyNiwgMjIzMywgMjIzOCwgMjI0NSwgCi0gICAgMjI1MiwgMjI2MCwgMjI2NSwgMjI3MCwgMjI3NSwgMjI4NSwgMjI4OSwgMjI5NSwgMjMwMSwgMjMwNywgMjMxMywgMjMyMSwgCi0gICAgMjMzNCwgMjM0MiwgMjM0NywgMjM1NywgMjM2MiwgMjM2NywgMjM3NywgMjM4MiwgMjM4OSwgMjM5NiwgMjQwNCwgMjQxMiwgCi0gICAgMjQxOSwgMjQyNiwgMjQzMywgMjQ0MCwgMjQ1MCwgMjQ2MCwgMjQ2OSwgMjQ3OCwgMjQ4OCwgMjQ5OCwgMjUwOCwgMjUxOCwgCi0gICAgMjUyNCwgMjUzNCwgMjU0NCwgMjU1NCwgMjU2NCwgMjU3MiwgMjU4MCwgMjU4NywgMjU5NCwgMjYwMiwgMjYxMCwgMjYxOCwgCi0gICAgMjYyNiwgMjYzMywgMjY0MCwgMjY1MCwgMjY2MCwgMjY2OCwgMjY3NiwgMjY4NCwgMjY4OSwgMjY5OSwgMjcwNCwgMjcxMSwgCi0gICAgMjcxOCwgMjcyMywgMjcyOCwgMjczNiwgMjc0NCwgMjc1NCwgMjc2NCwgMjc3MSwgMjc3OCwgMjc4NywgMjc5NiwgMjgwNCwgCi0gICAgMjgxMiwgMjgyMSwgMjgzMCwgMjgzOCwgMjg0NiwgMjg1NSwgMjg2NCwgMjg3MywgMjg4MiwgMjg5MiwgMjkwMiwgMjkxMCwgCi0gICAgMjkxOCwgMjkyNywgMjkzNiwgMjk0NSwgMjk1NCwgMjk2NCwgMjk3NCwgMjk4MiwgMjk5MCwgMjk5OSwgMzAwOCwgMzAxNywgCi0gICAgMzAyNiwgMzAzNSwgMzA0NCwgMzA0OSwgMzA1NCwgMzA2MiwgMzA3MCwgMzA4MCwgMzA4OCwgMzA5MywgMzA5OCwgMzEwNSwgCi0gICAgMzExMiwgMzExOSwgMzEyNiwgMzEzMywgMzE0MCwgMzE1MCwgMzE2MCwgMzE3MCwgMzE4MCwgMzE4NywgMzE5NCwgMzIwNCwgCi0gICAgMzIxNCwgMzIyMiwgMzIzMCwgMzIzOCwgMzI0NiwgMzI1NCwgMzI2MSwgMzI2OCwgMzI3NSwgMzI4MSwgMzI4OCwgMzI5NSwgCi0gICAgMzMwMiwgMzMxMSwgMzMyMSwgMzMzMSwgMzMzOCwgMzM0NSwgMzM1MSwgMzM1NiwgMzM2MywgMzM2OSwgMzM3NSwgMzM4MiwgCi0gICAgMzM4OSwgMzQwMCwgMzQxMCwgMzQxNywgMzQyNCwgMzQzMSwgMzQzOCwgMzQ0NCwgMzQ0OSwgMzQ1NiwgMzQ2MiwgMzQ2OCwgCi0gICAgMzQ3NiwgMzQ4NCwgMzQ5MSwgMzQ5NywgMzUwMiwgMzUwOSwgMzUxNSwgMzUyMywgMzUzMywgMzU0MywgMzU1MiwgMzU1OSwgCi0gICAgMzU2NSwgMzU3MSwgMzU3NiwgMzU4MywgMzU5MCwgMzU5NywgMzYwNCwgMzYxMSwgMzYxNiwgMzYyMSwgMzYzMSwgMzYzOSwgCi0gICAgMzY0OCwgMzY1MywgMzY1OSwgMzY3MCwgMzY3NywgMzY4NSwgMzY5NCwgMzY5OSwgMzcwNSwgMzcxMSwgMzcxOCwgMzcyMywgCi0gICAgMzcyOSwgMzc0MCwgMzc0OSwgMzc1OCwgMzc2NiwgMzc3NCwgMzc4NCwgMzc4OSwgMzc5NiwgMzgwMywgMzgwOCwgMzgyMCwgCi0gICAgMzgyOSwgMzgzNywgMzg0NCwgMzg1MywgMzg1OCwgMzg2MywgMzg3MCwgMzg3NywgMzg4NCwgMzg5MSwgMzg5NywgMzkwNiwgCi0gICAgMzkxNCwgMzkxOSwgMzkyNywgMzkzMywgMzk0MSwgMzk0OSwgMzk1NSwgMzk2MSwgMzk2NywgMzk3NSwgMzk4MywgMzk4OSwgCi0gICAgMzk5NywgNDAwNCwgNDAwOSwgNDAxNiwgNDAyNCwgNDAzNCwgNDA0MSwgNDA0OCwgNDA1OCwgNDA2NSwgNDA3MiwgNDA4MiwgCi0gICAgNDA4OSwgNDA5NiwgNDEwMywgNDEwOSwgNDExNSwgNDEyNSwgNDEzOCwgNDE0MywgNDE1MCwgNDE1NSwgNDE1OSwgNDE2NSwgCi0gICAgNDE3NCwgNDE4MSwgNDE4NiwgNDE5MSwgNDE5NSwgNDIwMCwgNDIwNiwgNDIxMCwgNDIxNiwgNDIyMiwgNDIyOCwgNDIzNCwgCi0gICAgNDI0MiwgNDI0NywgNDI1MiwgNDI1NywgNDI2MiwgNDI2OCwgNDI3MCwgNDI3NSwgNDI3OSwgNDI4NSwgNDI5MSwgNDI5NywgCi0gICAgNDMwMiwgNDMwOSwgNDMxNiwgNDMyMiwgNDMyOSwgNDMzNywgNDM0NSwgNDM1MCwgNDM1NSwgNDM1OSwgNDM2NCwgNDM2NiwgCi0gICAgNDM2OCwgNDM3MSwgNDM3MywgNDM3NiwgNDM4MSwgNDM4NiwgNDM5MiwgNDM5NywgNDQwMSwgNDQwNSwgNDQxMCwgNDQxOSwgCi0gICAgNDQyNSwgNDQzMCwgNDQzNiwgNDQ0MSwgNDQ0NywgNDQ1NSwgNDQ2MywgNDQ2NywgNDQ3MSwgNDQ3NiwgNDQ4MiwgNDQ4OCwgCi0gICAgNDQ5NCwgNDUwMCwgNDUwNSwgNDUxMywgNDUyMiwgNDUzMSwgNDUzNiwgNDU0MiwgNDU0OSwgNDU1NiwgNDU2MywgNDU3MCwgCi0gICAgNDU3NCwgNDU4MCwgNDU4NSwgNDU5MCwgNDU5NSwgNDYwMCwgNDYwMywgNDYwNiwgNDYwOSwgNDYxMiwgNDYxNSwgNDYxOCwgCi0gICAgNDYyMiwgNDYyNiwgNDYzMiwgNDYzNSwgNDY0MCwgNDY0NiwgNDY1MiwgNDY1NSwgNDY2MCwgNDY2NiwgNDY3MCwgNDY3NiwgCi0gICAgNDY4MiwgNDY4OCwgNDY5NCwgNDY5OSwgNDcwNCwgNDcwOSwgNDcxMiwgNDcxOCwgNDcyMywgNDcyOCwgNDczMiwgNDczNywgCi0gICAgNDc0MywgNDc0OSwgNDc1MiwgNDc1NiwgNDc2MCwgNDc2NCwgNDc2NywgNDc3MCwgNDc3NSwgNDc3OSwgNDc4NiwgNDc5MCwgCi0gICAgNDc5NiwgNDgwMCwgNDgwNiwgNDgxMCwgNDgxNCwgNDgxOCwgNDgyMywgNDgyOCwgNDgzNSwgNDg0MSwgNDg0OCwgNDg1NCwgCi0gICAgNDg2MCwgNDg2NiwgNDg2OSwgNDg3MywgNDg3NywgNDg4MSwgNDg4NSwgNDg5MCwgNDg5NSwgNDg5OSwgNDkwMywgNDkwOSwgCi0gICAgNDkxMywgNDkxNywgNDkyMiwgNDkyOCwgNDkzMywgNDkzOSwgNDk0MywgNDk1MCwgNDk1NSwgNDk2MCwgNDk2NSwgNDk3MCwgCi0gICAgNDk3NiwgNDk3OSwgNDk4MywgNDk4OCwgNDk5MywgNTAwMiwgNTAwOCwgNTAxMywgNTAxNywgNTAyMiwgNTAyNiwgNTAzMSwgCi0gICAgNTAzNSwgNTAzOSwgNTA0NCwgNTA0OCwgNTA1NCwgNTA1OSwgNTA2NCwgNTA2OSwgNTA3NCwgNTA3OSwgNTA4NCwgNTA5MCwgCi0gICAgNTA5NiwgNTEwMiwgNTEwNywgNTExMiwgNTExOCwgNTEyNCwgNTEzMCwgNTEzNSwgNTE0MCwgNTE0NywgNTE1NCwgNTE1OCwgCi0gICAgNTE2NCwgNTE3MSwgMCwgMCwgNTE3OCwgNTE4MSwgNTE5MCwgNTE5OSwgNTIxMCwgMCwgMCwgMCwgMCwgMCwgNTIxNCwgCi0gICAgNTIxNywgNTIyMiwgNTIzMCwgNTIzNSwgNTI0MywgNTI1MSwgMCwgNTI1OSwgMCwgNTI2NywgNTI3NSwgNTI4MywgNTI5NCwgCi0gICAgNTI5OSwgNTMwNCwgNTMwOSwgNTMxNCwgNTMxOSwgNTMyNCwgNTMyOSwgNTMzNCwgNTMzOSwgNTM0NCwgNTM0OSwgNTM1NCwgCi0gICAgNTM1OSwgNTM2NCwgNTM2OSwgNTM3NCwgMCwgNTM3OSwgNTM4NCwgNTM4OSwgNTM5NCwgNTM5OSwgNTQwNCwgNTQwOSwgCi0gICAgNTQxNCwgNTQyMiwgNTQzMCwgNTQzOCwgNTQ0NiwgNTQ1NCwgNTQ2MiwgNTQ3MywgNTQ3OCwgNTQ4MywgNTQ4OCwgNTQ5MywgCi0gICAgNTQ5OCwgNTUwMywgNTUwOCwgNTUxMywgNTUxOCwgNTUyMywgNTUyOCwgNTUzMywgNTUzOCwgNTU0MywgNTU0OCwgNTU1MywgCi0gICAgNTU1OCwgNTU2NCwgNTU2OSwgNTU3NCwgNTU3OSwgNTU4NCwgNTU4OSwgNTU5NCwgNTU5OSwgNTYwNywgNTYxNSwgNTYyMywgCi0gICAgNTYzMSwgNTYzOSwgNTY0NCwgNTY0OCwgNTY1MiwgNTY1OSwgNTY2OSwgNTY3OSwgNTY4MywgNTY4NywgNTY5MSwgNTY5NywgCi0gICAgNTcwNCwgNTcwOCwgNTcxMywgNTcxNywgNTcyMiwgNTcyNiwgNTczMSwgNTczNSwgNTc0MCwgNTc0NSwgNTc1MCwgNTc1NSwgCi0gICAgNTc2MCwgNTc2NSwgNTc3MCwgNTc3NSwgNTc4MCwgNTc4NSwgNTc5MCwgNTc5NSwgNTgwMCwgNTgwNSwgNTgxMCwgNTgxNCwgCi0gICAgNTgxOCwgNTgyNCwgNTgyOCwgNTgzMywgNTgzOSwgNTg0NywgNTg1MiwgNTg1NywgNTg2NCwgNTg2OSwgNTg3NCwgNTg4MSwgCi0gICAgNTg5MCwgNTg5OSwgNTkxMCwgNTkxOCwgNTkyMywgNTkyOCwgNTkzMywgNTk0MCwgNTk0NSwgNTk1MSwgNTk1NiwgNTk2MSwgCi0gICAgNTk2NiwgNTk3MSwgNTk3NiwgNTk4MSwgNTk4OSwgNTk5NSwgNjAwMCwgNjAwNCwgNjAwOSwgNjAxNCwgNjAxOSwgNjAyNCwgCi0gICAgNjAyOSwgNjAzNCwgNjAzOSwgNjA0MywgNjA0OSwgNjA1MywgNjA1OCwgNjA2MywgNjA2OCwgNjA3MiwgNjA3NywgNjA4MiwgCi0gICAgNjA4NywgNjA5MiwgNjA5NiwgNjEwMSwgNjEwNSwgNjExMCwgNjExNSwgNjEyMCwgNjEyNSwgNjEzMSwgNjEzNiwgNjE0MiwgCi0gICAgNjE0NiwgNjE1MSwgNjE1NSwgNjE1OSwgNjE2NCwgNjE2OSwgNjE3NCwgNjE3OSwgNjE4NCwgNjE4OSwgNjE5NCwgNjE5OCwgCi0gICAgNjIwNCwgNjIwOCwgNjIxMywgNjIxOCwgNjIyMywgNjIyNywgNjIzMiwgNjIzNywgNjI0MiwgNjI0NywgNjI1MSwgNjI1NiwgCi0gICAgNjI2MCwgNjI2NSwgNjI3MCwgNjI3NSwgNjI4MCwgNjI4NiwgNjI5MSwgNjI5NywgNjMwMSwgNjMwNiwgNjMxMCwgNjMxOCwgCi0gICAgNjMyMywgNjMyOCwgNjMzMywgNjM0MCwgNjM0NSwgNjM1MSwgNjM1NiwgNjM2MSwgNjM2NiwgNjM3MSwgNjM3NiwgNjM4MSwgCi0gICAgNjM4OSwgNjM5NSwgNjQwMCwgNjQwNSwgNjQxMCwgNjQxNSwgNjQyMCwgNjQyNiwgNjQzMiwgNjQzOSwgNjQ0NiwgNjQ1NSwgCi0gICAgNjQ2NCwgNjQ3MSwgNjQ3OCwgNjQ4NywgNjQ5NiwgNjUwMSwgNjUwNiwgNjUxMSwgNjUxNiwgNjUyMSwgNjUyNiwgNjUzMSwgCi0gICAgNjUzNiwgNjU0NywgNjU1OCwgNjU2MywgNjU2OCwgNjU3NSwgNjU4MiwgNjU5MCwgNjU5OCwgNjYwMywgNjYwOCwgNjYxMywgCi0gICAgNjYxOCwgNjYyMiwgNjYyNiwgNjYzMCwgNjYzNSwgNjY0MSwgNjY0NSwgNjY1MiwgNjY1NywgNjY2NywgNjY3NywgNjY4MywgCi0gICAgNjY4OSwgNjY5NywgNjcwNSwgNjcxMywgNjcyMSwgNjcyOCwgNjczNSwgNjc0NCwgNjc1MywgNjc2MSwgNjc2OSwgNjc3NywgCi0gICAgNjc4NSwgNjc5MywgNjgwMSwgNjgwOSwgNjgxNywgNjgyNCwgNjgzMSwgNjgzNywgNjg0MywgNjg1MSwgNjg1OSwgNjg2NiwgCi0gICAgNjg3MywgNjg4MiwgNjg5MSwgNjg5NywgNjkwMywgNjkxMSwgNjkxOSwgNjkyNywgNjkzNSwgNjk0MSwgNjk0NywgNjk1NSwgCi0gICAgNjk2MywgNjk3MSwgNjk3OSwgNjk4NiwgNjk5MywgNzAwMSwgNzAwOSwgNzAxNywgNzAyNSwgNzAzMCwgNzAzNSwgNzA0MiwgCi0gICAgNzA0OSwgNzA1OSwgNzA2OSwgNzA3MywgNzA4MSwgNzA4OSwgNzA5NiwgNzEwMywgNzExMSwgNzExOSwgNzEyNiwgNzEzMywgCi0gICAgNzE0MSwgNzE0OSwgNzE1NiwgNzE2MywgNzE3MSwgNzE3OSwgNzE4NCwgNzE5MSwgNzE5OCwgNzIwNSwgNzIxMiwgNzIxOCwgCi0gICAgNzIyNCwgNzIzMiwgNzI0MCwgNzI0NSwgNzI1MCwgNzI1OCwgNzI2NiwgNzI3NCwgNzI4MiwgNzI5MCwgNzI5OCwgNzMwNSwgCi0gICAgNzMxMiwgNzMyMCwgNzMyOCwgNzMzNiwgNzM0NCwgNzM1MSwgNzM1OCwgNzM2NCwgNzM3MCwgNzM3OSwgNzM4OCwgNzM5NSwgCi0gICAgNzQwMiwgNzQwOSwgNzQxNiwgNzQyMywgNzQzMCwgNzQzNywgNzQ0NCwgNzQ1MiwgNzQ2MCwgNzQ2OCwgNzQ3NiwgNzQ4NCwgCi0gICAgNzQ5MiwgNzUwMiwgNzUxMiwgNzUxOSwgNzUyNiwgNzUzMywgNzU0MCwgNzU0NywgNzU1NCwgNzU2MSwgNzU2OCwgNzU3NSwgCi0gICAgNzU4MiwgNzU4OSwgNzU5NiwgNzYwMywgNzYxMCwgNzYxNywgNzYyNCwgNzYzMSwgNzYzOCwgNzY0NSwgNzY1MiwgNzY1OSwgCi0gICAgNzY2NiwgNzY3MywgNzY4MCwgNzY4NSwgNzY5MCwgNzY5NSwgNzcwMCwgNzcwNSwgNzcxMCwgNzcxNSwgNzcyMCwgNzcyNSwgCi0gICAgNzczMCwgNzczNiwgNzc0MiwgNzc1MSwgNzc2MCwgNzc2OSwgNzc3OCwgNzc4NiwgNzc5NCwgNzgwMiwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNzgxMCwgNzgxNSwgNzgyMCwgNzgyNSwgNzgzMCwgNzgzNSwgNzg0MCwgNzg0NSwgNzg1MCwgCi0gICAgNzg1NCwgNzg1OSwgNzg2NCwgNzg2OSwgNzg3NCwgNzg3OSwgNzg4NCwgNzg4OSwgNzg5NCwgNzg5OSwgNzkwNCwgNzkwOSwgCi0gICAgNzkxNCwgNzkxOSwgNzkyNCwgNzkyOSwgNzkzNCwgNzkzOSwgNzk0NCwgNzk0OCwgNzk1MywgNzk1OCwgNzk2MywgNzk2OCwgCi0gICAgNzk3MywgNzk3OCwgNzk4MywgNzk4OCwgNzk5MywgMCwgMCwgNzk5OCwgODAwNSwgODAwOCwgODAxMiwgODAxNiwgODAxOSwgCi0gICAgODAyMywgMCwgODAyNywgODAzMiwgODAzNywgODA0MiwgODA0NywgODA1MiwgODA1NywgODA2MiwgODA2NywgODA3MSwgCi0gICAgODA3NiwgODA4MSwgODA4NiwgODA5MSwgODA5NiwgODEwMSwgODEwNiwgODExMSwgODExNiwgODEyMSwgODEyNiwgODEzMSwgCi0gICAgODEzNiwgODE0MSwgODE0NiwgODE1MSwgODE1NiwgODE2MSwgODE2NSwgODE3MCwgODE3NSwgODE4MCwgODE4NSwgODE5MCwgCi0gICAgODE5NSwgODIwMCwgODIwNSwgODIxMCwgODIxNSwgMCwgODIyMiwgODIyNywgMCwgMCwgMCwgMCwgMCwgMCwgODIzMCwgCi0gICAgODIzNSwgODI0MCwgODI0NSwgODI1MiwgODI1OSwgODI2NCwgODI2OSwgODI3NCwgODI3OSwgODI4NCwgODI4OSwgODI5NCwgCi0gICAgODMwMSwgODMwNiwgODMxMywgODMyMCwgODMyNSwgODMzMiwgODMzNywgODM0MiwgODM0NywgODM1NCwgODM1OSwgODM2NCwgCi0gICAgODM3MSwgODM4MCwgODM4NSwgODM5MCwgODM5NSwgODQwMCwgODQwNiwgODQxMSwgODQxOCwgODQyNSwgODQzMiwgODQzNywgCi0gICAgODQ0MiwgODQ0NywgODQ1MiwgODQ1NywgODQ2MiwgODQ3MiwgODQ3NywgODQ4NSwgODQ5MCwgODQ5NSwgODUwMCwgODUwNSwgCi0gICAgODUxMiwgODUxOSwgODUyNiwgODUzMiwgODUzOCwgODU0NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODU1MiwgODU1NiwgCi0gICAgODU2MCwgODU2NCwgODU2OCwgODU3MiwgODU3NiwgODU4MCwgODU4NCwgODU4OCwgODU5MiwgODU5NywgODYwMSwgODYwNSwgCi0gICAgODYxMCwgODYxNCwgODYxOSwgODYyMywgODYyNywgODYzMSwgODYzNiwgODY0MCwgODY0NSwgODY0OSwgODY1MywgODY1NywgCi0gICAgODY2MSwgMCwgMCwgMCwgMCwgMCwgODY2NSwgODY3MiwgODY4MCwgODY4NywgODY5MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgODY5NywgODcwMCwgODcwNCwgODcwOSwgMCwgMCwgODcxMywgODcxOSwgODcyNSwgODcyOCwgODczNSwgCi0gICAgODc0NCwgODc0NywgODc1MCwgODc1NSwgODc2MSwgODc2NSwgODc3MywgODc3OSwgODc4NSwgODc5MywgODc5NywgODgwMiwgCi0gICAgODgxMywgODgxOCwgODgyMiwgODgyNiwgODgzMCwgMCwgMCwgODgzMywgODg0MCwgODg0NCwgODg1MCwgODg1NCwgODg2MSwgCi0gICAgODg2NywgODg3NCwgODg4MCwgODg4NiwgODg5MCwgODg5NCwgODkwMCwgODkwNCwgODkwOCwgODkxMiwgODkxNiwgODkyMCwgCi0gICAgODkyNCwgODkyOCwgODkzMiwgODkzNiwgODk0MCwgODk0NCwgODk0OCwgODk1MiwgODk1NiwgODk2MCwgODk2NCwgODk2OCwgCi0gICAgODk3NiwgODk4NCwgODk5NCwgOTAwMywgOTAxMiwgOTAxNSwgOTAxOSwgOTAyMywgOTAyNywgOTAzMSwgOTAzNSwgOTAzOSwgCi0gICAgOTA0MywgOTA0NywgOTA1MiwgOTA1NiwgOTA1OSwgOTA2MiwgOTA2NSwgOTA2OCwgOTA3MSwgOTA3NCwgOTA3NywgOTA4MCwgCi0gICAgOTA4NCwgOTA4NywgOTA5MCwgOTA5NSwgOTEwMCwgOTEwNiwgOTEwOSwgOTExNiwgOTEyNSwgOTEzMCwgOTEzNSwgOTE0MiwgCi0gICAgOTE0NywgOTE1MiwgOTE1NiwgOTE2MCwgOTE2NCwgOTE2OCwgOTE3MiwgOTE3NiwgOTE4MCwgOTE4NCwgOTE4OCwgOTE5MiwgCi0gICAgOTE5NywgOTIwMiwgOTIwOSwgOTIxNSwgOTIyMSwgOTIyNywgOTIzMiwgOTI0MCwgOTI0OCwgOTI1MywgOTI1OSwgOTI2NSwgCi0gICAgOTI3MSwgOTI3NywgOTI4MSwgOTI4NSwgOTI4OSwgOTI5NiwgOTMwNiwgOTMxMCwgOTMxNCwgOTMxOCwgOTMyNCwgOTMzMiwgCi0gICAgOTMzNiwgOTM0MCwgOTM0NywgOTM1MSwgOTM1NSwgOTM1OSwgOTM2NiwgOTM3MywgOTM4NSwgOTM4OSwgOTM5MywgOTM5NywgCi0gICAgOTQwNywgOTQxNiwgOTQyMCwgOTQyOCwgOTQzNSwgOTQ0MiwgOTQ1MSwgOTQ2MiwgOTQ3MCwgOTQ3NCwgOTQ4MywgOTQ5NCwgCi0gICAgOTUwMiwgOTUxNSwgOTUyMywgOTUzMSwgOTUzOSwgOTU0NywgOTU1MywgOTU2MiwgOTU2OSwgOTU3MywgOTU4MSwgOTU4NSwgCi0gICAgOTU5MiwgOTYwMCwgOTYwNCwgOTYxMCwgOTYxNywgOTYyNCwgOTYyOCwgOTYzNiwgOTY0MCwgOTY0NywgOTY1MSwgOTY1OSwgCi0gICAgOTY2MywgOTY3MSwgOTY3OSwgOTY4NiwgOTY5NCwgOTcwMiwgOTcwOSwgOTcxNSwgOTcxOSwgOTcyNiwgOTczNCwgOTc0MCwgCi0gICAgOTc0NywgOTc1NCwgOTc2MCwgOTc2OSwgOTc3NywgOTc4NCwgOTc5MCwgOTc5NCwgOTc5NywgOTgwMSwgOTgwNywgOTgxNSwgCi0gICAgOTgxOSwgOTgyNSwgOTgzMSwgOTgzOCwgOTg0NSwgOTg0OCwgOTg1NSwgOTg2MCwgOTg2OCwgOTg3MywgOTg3NywgOTg5MCwgCi0gICAgOTkwMywgOTkwOSwgOTkxNiwgOTkyMSwgOTkyNywgOTkzMiwgOTkzOCwgOTk0OCwgOTk1NSwgOTk2NCwgOTk3NCwgOTk4MCwgCi0gICAgOTk4NSwgOTk5MCwgOTk5NCwgOTk5OCwgMTAwMDMsIDEwMDA4LCAxMDAxNCwgMTAwMjIsIDEwMDMwLCAxMDA0MSwgMTAwNDYsIAotICAgIDEwMDU1LCAxMDA2NCwgMTAwNzEsIDEwMDc3LCAxMDA4MywgMTAwODksIDEwMDk1LCAxMDEwMSwgMTAxMDcsIDEwMTEzLCAKLSAgICAxMDExOSwgMTAxMjUsIDEwMTMyLCAxMDEzOSwgMTAxNDYsIDEwMTUyLCAxMDE2MCwgMTAxNjksIDEwMTc1LCAxMDE4MiwgCi0gICAgMTAxODksIDEwMTk0LCAxMDE5OSwgMTAyMDMsIDEwMjEwLCAxMDIxNywgMTAyMjYsIDEwMjM1LCAxMDIzOCwgMTAyNDMsIAotICAgIDEwMjQ4LCAwLCAxMDI1MywgMTAyNTcsIDEwMjYxLCAxMDI2NywgMTAyNzEsIDEwMjc1LCAxMDI4MSwgMTAyODUsIDEwMjkzLCAKLSAgICAxMDI5NywgMTAzMDEsIDEwMzA1LCAxMDMwOSwgMTAzMTMsIDEwMzE5LCAxMDMyMywgMTAzMjksIDEwMzMzLCAxMDMzNywgCi0gICAgMTAzNDEsIDEwMzQ1LCAxMDM0OSwgMTAzNTQsIDEwMzU3LCAxMDM2MSwgMTAzNjcsIDEwMzcxLCAxMDM3NSwgMTAzNzksIAotICAgIDEwMzgzLCAxMDM4NywgMTAzOTMsIDEwMzk5LCAxMDQwNSwgMTA0MDksIDEwNDEzLCAxMDQxOCwgMTA0MjIsIDEwNDI2LCAKLSAgICAxMDQzMSwgMTA0MzUsIDEwNDM5LCAxMDQ0NiwgMTA0NTMsIDEwNDU3LCAxMDQ2MSwgMTA0NjYsIDEwNDcwLCAxMDQ3NCwgCi0gICAgMTA0NzcsIDEwNDgyLCAxMDQ4NSwgMTA0ODgsIDEwNDkzLCAxMDQ5OCwgMTA1MDIsIDEwNTA2LCAxMDUxMiwgMTA1MTgsIAotICAgIDEwNTIxLCAwLCAwLCAxMDUyNCwgMTA1MzAsIDEwNTM2LCAxMDU0MiwgMTA1NTIsIDEwNTY0LCAxMDU3NiwgMTA1OTMsIAotICAgIDEwNjA1LCAxMDYxNiwgMTA2MjQsIDEwNjMxLCAxMDY0MiwgMTA2NTcsIDEwNjY4LCAxMDY3NCwgMTA2ODMsIDEwNjkxLCAKLSAgICAxMDcwMywgMTA3MTMsIDEwNzIxLCAxMDczMywgMTA3NDAsIDEwNzQ4LCAxMDc2MCwgMTA3NjYsIDEwNzcyLCAxMDc4MCwgCi0gICAgMTA3ODgsIDEwNzk2LCAxMDgwMiwgMTA4MTIsIDEwODE5LCAxMDgyOSwgMTA4MzksIDEwODUyLCAxMDg2NiwgMTA4ODAsIAotICAgIDEwODkwLCAxMDkwMSwgMTA5MTIsIDEwOTI1LCAxMDkzOCwgMTA5NTIsIDEwOTY0LCAxMDk3NiwgMTA5ODksIDExMDAyLCAKLSAgICAxMTAxNCwgMTEwMjcsIDExMDM2LCAxMTA0NCwgMTEwNDksIDExMDU0LCAxMTA1OSwgMTEwNjQsIDExMDY5LCAxMTA3NCwgCi0gICAgMTEwNzksIDExMDg0LCAxMTA4OSwgMTEwOTQsIDExMDk5LCAxMTEwNCwgMTExMDksIDExMTE0LCAxMTExOSwgMTExMjQsIAotICAgIDExMTI5LCAxMTEzNCwgMTExMzksIDExMTQ0LCAxMTE0OSwgMTExNTQsIDExMTU5LCAxMTE2NCwgMTExNjksIDExMTc0LCAKLSAgICAxMTE3OSwgMTExODQsIDExMTg5LCAxMTE5NCwgMTExOTksIDExMjA0LCAxMTIwOCwgMTEyMTMsIDExMjE4LCAxMTIyMywgCi0gICAgMTEyMjgsIDExMjMzLCAxMTIzNywgMTEyNDEsIDExMjQ1LCAxMTI0OSwgMTEyNTMsIDExMjU3LCAxMTI2MSwgMTEyNjUsIAotICAgIDExMjY5LCAxMTI3MywgMTEyNzcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExMjgyLCAKLSAgICAxMTI4NywgMTEyOTEsIDExMjk1LCAxMTI5OSwgMTEzMDMsIDExMzA3LCAxMTMxMSwgMTEzMTUsIDExMzE5LCAxMTMyMywgCi0gICAgMTEzMjcsIDExMzMyLCAxMTMzNiwgMTEzNDAsIDExMzQ0LCAxMTM0OSwgMTEzNTMsIDExMzU4LCAxMTM2MiwgMTEzNjcsIAotICAgIDExMzcxLCAxMTM3NiwgMTEzODEsIDExMzg2LCAxMTM5MSwgMTEzOTUsIDExNDAwLCAxMTQwNSwgMTE0MTAsIDExNDE1LCAKLSAgICAxMTQxOSwgMTE0MjQsIDExNDMxLCAxMTQzNSwgMTE0NDAsIDExNDQ0LCAxMTQ0OCwgMTE0NTMsIDExNDU3LCAxMTQ2NCwgCi0gICAgMTE0NzEsIDExNDc4LCAxMTQ4NCwgMTE0OTIsIDExNTAwLCAxMTUwOSwgMTE1MTcsIDExNTI0LCAxMTUzMSwgMTE1MzksIAotICAgIDExNTQ1LCAxMTU1MSwgMTE1NTcsIDExNTYzLCAxMTU3MCwgMTE1NzUsIDExNTc5LCAxMTU4NCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTE1ODgsIDExNTkzLCAxMTU5OCwgMTE2MDMsIDExNjA4LCAxMTYxMywgMTE2MTgsIDExNjIzLCAxMTYyOCwgMTE2MzMsIAotICAgIDExNjM4LCAxMTY0MywgMTE2NDgsIDExNjUzLCAxMTY1OCwgMTE2NjMsIDExNjY4LCAxMTY3MywgMTE2NzgsIDExNjgzLCAKLSAgICAxMTY4OCwgMTE2OTMsIDExNjk4LCAxMTcwMywgMTE3MDgsIDExNzEzLCAxMTcxOCwgMTE3MjYsIDExNzMzLCAxMTczOSwgCi0gICAgMTE3NDQsIDExNzUyLCAxMTc1OSwgMTE3NjUsIDExNzcyLCAxMTc3OCwgMTE3ODMsIDExNzkwLCAxMTc5NywgMTE4MDMsIAotICAgIDExODA4LCAxMTgxMywgMTE4MTksIDExODI0LCAxMTgyOSwgMTE4MzUsIDAsIDAsIDExODQwLCAxMTg0NiwgMTE4NTIsIAotICAgIDExODU4LCAxMTg2NCwgMTE4NzAsIDExODc2LCAxMTg4MSwgMTE4ODksIDExODk1LCAxMTkwMSwgMTE5MDcsIDExOTEzLCAKLSAgICAxMTkxOSwgMTE5MjcsIDAsIDExOTMzLCAxMTkzOCwgMTE5NDMsIDExOTQ4LCAxMTk1MywgMTE5NTgsIDExOTYzLCAxMTk2OCwgCi0gICAgMTE5NzMsIDExOTc4LCAxMTk4MywgMTE5ODgsIDExOTkzLCAxMTk5OCwgMTIwMDMsIDEyMDA4LCAxMjAxMywgMTIwMTgsIAotICAgIDEyMDIzLCAxMjAyOCwgMTIwMzMsIDEyMDM4LCAxMjA0MywgMTIwNDgsIDEyMDUzLCAxMjA1OCwgMTIwNjMsIDEyMDY4LCAwLCAKLSAgICAwLCAxMjA3MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzU1LCAzNTksIDM2NCwgCisgICAgMzY3LCAzNzAsIDM3MywgMzc2LCAzNzksIDM4MiwgMzg0LCAzODcsIDM5MywgNDAxLCA0MDQsIDQwOCwgNDExLCA0MTMsIAorICAgIDQxNiwgNDE5LCA0MjIsIDQyNSwgNDI5LCA0MzIsIDQzNSwgNDM5LCA0NDEsIDQ0NCwgNDUwLCA0NTgsIDQ2NSwgNDcyLCAKKyAgICA0NzksIDQ4NCwgNDkwLCA0OTYsIDUwMywgNTA5LCA1MTYsIDUyNCwgNTI5LCA1MzcsIDU0MywgNTQ5LCA1NTYsIDU2MywgCisgICAgNTcwLCA1NzcsIDU4NSwgNTkzLCA1OTgsIDYwNSwgNjExLCA2MTcsIDYyNCwgNjMwLCA2MzcsIDY0MCwgNjQ2LCA2NTIsIAorICAgIDY1OCwgNjY1LCA2NzIsIDY3OSwgNjg0LCA2OTAsIDY5NiwgNzAyLCA3MDksIDcxNSwgNzIyLCA3MzAsIDczNSwgNzQzLCAKKyAgICA3NDksIDc1NSwgNzYyLCA3NjksIDc3NiwgNzgzLCA3OTEsIDc5OSwgODA0LCA4MTEsIDgxNywgODIzLCA4MzAsIDgzNiwgCisgICAgODQzLCA4NDYsIDg1MiwgODU4LCA4NjQsIDg3MSwgODc4LCA4ODUsIDg5MCwgODk4LCA5MDUsIDkxMiwgOTE5LCA5MjYsIAorICAgIDkzMywgOTQwLCA5NDcsIDk1NCwgOTYyLCA5NzAsIDk3OCwgOTg2LCA5OTQsIDEwMDIsIDEwMTAsIDEwMTgsIDEwMjUsIAorICAgIDEwMzIsIDEwMzksIDEwNDYsIDEwNTMsIDEwNjAsIDEwNjcsIDEwNzQsIDEwODEsIDEwODgsIDEwOTUsIDExMDIsIDExMTAsIAorICAgIDExMTgsIDExMjYsIDExMzQsIDExNDIsIDExNTAsIDExNTgsIDExNjYsIDExNzQsIDExODIsIDExODksIDExOTYsIDEyMDMsIAorICAgIDEyMTAsIDEyMTgsIDEyMjYsIDEyMzQsIDEyNDIsIDEyNTAsIDEyNTgsIDEyNjYsIDEyNzIsIDEyNzcsIDEyODIsIDEyOTAsIAorICAgIDEyOTgsIDEzMDYsIDEzMTQsIDEzMTksIDEzMjYsIDEzMzMsIDEzNDEsIDEzNDksIDEzNTcsIDEzNjUsIDEzNzUsIDEzODUsIAorICAgIDEzOTIsIDEzOTksIDE0MDYsIDE0MTMsIDE0MjEsIDE0MjksIDE0MzcsIDE0NDUsIDE0NTYsIDE0NjEsIDE0NjYsIDE0NzMsIAorICAgIDE0ODAsIDE0ODcsIDE0OTQsIDE1MDEsIDE1MDgsIDE1MTMsIDE1MTgsIDE1MjUsIDE1MzIsIDE1NDAsIDE1NDgsIDE1NTYsIAorICAgIDE1NjQsIDE1NzEsIDE1NzgsIDE1ODYsIDE1OTQsIDE2MDIsIDE2MTAsIDE2MTgsIDE2MjYsIDE2MzQsIDE2NDIsIDE2NTAsIAorICAgIDE2NTgsIDE2NjUsIDE2NzIsIDE2NzgsIDE2ODQsIDE2OTEsIDE2OTgsIDE3MDUsIDE3MTIsIDE3MjAsIDE3MjgsIDE3MzUsIAorICAgIDE3NDIsIDE3NDksIDE3NTYsIDE3NjQsIDE3NzIsIDE3ODAsIDE3ODgsIDE3OTYsIDE4MDMsIDE4MTAsIDE4MTgsIDE4MjYsIAorICAgIDE4MzQsIDE4NDIsIDE4NDcsIDE4NTMsIDE4NTksIDE4NjYsIDE4NzMsIDE4NzgsIDE4ODMsIDE4ODgsIDE4OTUsIDE5MDIsIAorICAgIDE5MDksIDE5MTYsIDE5MjQsIDE5MzIsIDE5MzksIDE5NDUsIDE5NTAsIDE5NTUsIDE5NjIsIDE5NjksIDE5NzYsIDE5ODEsIAorICAgIDE5ODYsIDE5OTEsIDE5OTgsIDIwMDUsIDIwMTIsIDIwMTksIDIwMjYsIDIwMzIsIDIwNDAsIDIwNTAsIDIwNTgsIDIwNjUsIAorICAgIDIwNzIsIDIwNzcsIDIwODIsIDIwODksIDIwOTYsIDIxMDAsIDIxMDUsIDIxMTAsIDIxMTUsIDIxMjMsIDIxMzIsIDIxMzksIAorICAgIDIxNDYsIDIxNTUsIDIxNjIsIDIxNjksIDIxNzQsIDIxODEsIDIxODgsIDIxOTUsIDIyMDIsIDIyMDksIDIyMTQsIDIyMjEsIAorICAgIDIyMjgsIDIyMzYsIDIyNDEsIDIyNDYsIDIyNTEsIDIyNjEsIDIyNjUsIDIyNzEsIDIyNzcsIDIyODMsIDIyODksIDIyOTcsIAorICAgIDIzMTAsIDIzMTgsIDIzMjMsIDIzMzMsIDIzMzgsIDIzNDMsIDIzNTMsIDIzNTgsIDIzNjUsIDIzNzIsIDIzODAsIDIzODgsIAorICAgIDIzOTUsIDI0MDIsIDI0MDksIDI0MTYsIDI0MjYsIDI0MzYsIDI0NDUsIDI0NTQsIDI0NjQsIDI0NzQsIDI0ODMsIDI0OTIsIAorICAgIDI0OTgsIDI1MDgsIDI1MTgsIDI1MjgsIDI1MzgsIDI1NDYsIDI1NTQsIDI1NjEsIDI1NjgsIDI1NzYsIDI1ODQsIDI1OTIsIAorICAgIDI2MDAsIDI2MDcsIDI2MTQsIDI2MjQsIDI2MzQsIDI2NDIsIDI2NTAsIDI2NTgsIDI2NjMsIDI2NzMsIDI2NzgsIDI2ODUsIAorICAgIDI2OTIsIDI2OTcsIDI3MDIsIDI3MDksIDI3MTYsIDI3MjYsIDI3MzYsIDI3NDMsIDI3NTAsIDI3NTksIDI3NjgsIDI3NzUsIAorICAgIDI3ODIsIDI3OTEsIDI4MDAsIDI4MDcsIDI4MTQsIDI4MjMsIDI4MzIsIDI4NDAsIDI4NDgsIDI4NTgsIDI4NjgsIDI4NzUsIAorICAgIDI4ODIsIDI4OTEsIDI5MDAsIDI5MDgsIDI5MTYsIDI5MjYsIDI5MzYsIDI5NDMsIDI5NTAsIDI5NTksIDI5NjgsIDI5NzcsIAorICAgIDI5ODYsIDI5OTUsIDMwMDQsIDMwMDksIDMwMTQsIDMwMjIsIDMwMzAsIDMwNDAsIDMwNDgsIDMwNTMsIDMwNTgsIDMwNjUsIAorICAgIDMwNzIsIDMwNzksIDMwODYsIDMwOTMsIDMxMDAsIDMxMTAsIDMxMjAsIDMxMzAsIDMxNDAsIDMxNDcsIDMxNTQsIDMxNjQsIAorICAgIDMxNzQsIDMxODIsIDMxOTAsIDMxOTgsIDMyMDYsIDMyMTQsIDMyMjEsIDMyMjgsIDMyMzUsIDMyNDEsIDMyNDgsIDMyNTUsIAorICAgIDMyNjIsIDMyNzEsIDMyODEsIDMyOTEsIDMyOTgsIDMzMDUsIDMzMTEsIDMzMTYsIDMzMjMsIDMzMjksIDMzMzUsIDMzNDIsIAorICAgIDMzNDksIDMzNjAsIDMzNzAsIDMzNzcsIDMzODQsIDMzOTEsIDMzOTgsIDM0MDQsIDM0MDksIDM0MTYsIDM0MjIsIDM0MjcsIAorICAgIDM0MzUsIDM0NDMsIDM0NTAsIDM0NTYsIDM0NjEsIDM0NjgsIDM0NzMsIDM0ODAsIDM0ODksIDM0OTgsIDM1MDcsIDM1MTQsIAorICAgIDM1MjAsIDM1MjYsIDM1MzEsIDM1MzgsIDM1NDUsIDM1NTIsIDM1NTksIDM1NjYsIDM1NzEsIDM1NzYsIDM1ODUsIDM1OTMsIAorICAgIDM2MDIsIDM2MDcsIDM2MTMsIDM2MjQsIDM2MzEsIDM2MzksIDM2NDgsIDM2NTMsIDM2NTksIDM2NjUsIDM2NzIsIDM2NzcsIAorICAgIDM2ODMsIDM2OTQsIDM3MDMsIDM3MTIsIDM3MjAsIDM3MjgsIDM3MzgsIDM3NDMsIDM3NTAsIDM3NTcsIDM3NjIsIDM3NzQsIAorICAgIDM3ODMsIDM3OTEsIDM3OTgsIDM4MDcsIDM4MTIsIDM4MTcsIDM4MjQsIDM4MzEsIDM4MzgsIDM4NDUsIDM4NTEsIDM4NjAsIAorICAgIDM4NjgsIDM4NzMsIDM4ODEsIDM4ODcsIDM4OTUsIDM5MDMsIDM5MDksIDM5MTUsIDM5MjEsIDM5MjgsIDM5MzYsIDM5NDIsIAorICAgIDM5NTAsIDM5NTcsIDM5NjIsIDM5NjksIDM5NzcsIDM5ODcsIDM5OTQsIDQwMDEsIDQwMTEsIDQwMTgsIDQwMjUsIDQwMzUsIAorICAgIDQwNDIsIDQwNDksIDQwNTYsIDQwNjIsIDQwNjgsIDQwNzgsIDQwOTEsIDQwOTYsIDQxMDMsIDQxMDgsIDQxMTIsIDQxMTgsIAorICAgIDQxMjcsIDQxMzQsIDQxMzksIDQxNDQsIDQxNDgsIDQxNTMsIDQxNTksIDQxNjMsIDQxNjksIDQxNzUsIDQxODEsIDQxODcsIAorICAgIDQxOTUsIDQyMDAsIDQyMDUsIDQyMTAsIDQyMTUsIDQyMjEsIDQyMjMsIDQyMjgsIDQyMzIsIDQyMzgsIDQyNDQsIDQyNTAsIAorICAgIDQyNTUsIDQyNjIsIDQyNjksIDQyNzUsIDQyODIsIDQyOTAsIDQyOTgsIDQzMDMsIDQzMDgsIDQzMTIsIDQzMTcsIDQzMTksIAorICAgIDQzMjEsIDQzMjQsIDQzMjYsIDQzMjgsIDQzMzMsIDQzMzgsIDQzNDQsIDQzNDksIDQzNTMsIDQzNTcsIDQzNjIsIDQzNzEsIAorICAgIDQzNzcsIDQzODIsIDQzODgsIDQzOTMsIDQzOTksIDQ0MDcsIDQ0MTUsIDQ0MTksIDQ0MjMsIDQ0MjgsIDQ0MzQsIDQ0NDAsIAorICAgIDQ0NDYsIDQ0NTIsIDQ0NTcsIDQ0NjUsIDQ0NzQsIDQ0ODMsIDQ0ODcsIDQ0OTMsIDQ1MDAsIDQ1MDcsIDQ1MTQsIDQ1MjEsIAorICAgIDQ1MjUsIDQ1MzAsIDQ1MzUsIDQ1NDAsIDQ1NDUsIDQ1NTAsIDQ1NTIsIDQ1NTUsIDQ1NTgsIDQ1NjEsIDQ1NjQsIDQ1NjcsIAorICAgIDQ1NzEsIDQ1NzUsIDQ1ODEsIDQ1ODQsIDQ1ODksIDQ1OTUsIDQ2MDEsIDQ2MDQsIDQ2MDksIDQ2MTUsIDQ2MTksIDQ2MjUsIAorICAgIDQ2MzEsIDQ2MzcsIDQ2NDMsIDQ2NDgsIDQ2NTMsIDQ2NTgsIDQ2NjEsIDQ2NjcsIDQ2NzIsIDQ2NzcsIDQ2ODEsIDQ2ODYsIAorICAgIDQ2OTIsIDQ2OTgsIDQ3MDEsIDQ3MDUsIDQ3MDksIDQ3MTMsIDQ3MTYsIDQ3MTksIDQ3MjQsIDQ3MjgsIDQ3MzUsIDQ3MzksIAorICAgIDQ3NDUsIDQ3NDksIDQ3NTUsIDQ3NTksIDQ3NjMsIDQ3NjcsIDQ3NzIsIDQ3NzcsIDQ3ODQsIDQ3OTAsIDQ3OTcsIDQ4MDMsIAorICAgIDQ4MDksIDQ4MTUsIDQ4MTgsIDQ4MjIsIDQ4MjYsIDQ4MjksIDQ4MzMsIDQ4MzgsIDQ4NDMsIDQ4NDcsIDQ4NTEsIDQ4NTcsIAorICAgIDQ4NjEsIDQ4NjUsIDQ4NzAsIDQ4NzYsIDQ4ODEsIDQ4ODcsIDQ4OTEsIDQ4OTgsIDQ5MDMsIDQ5MDgsIDQ5MTMsIDQ5MTgsIAorICAgIDQ5MjQsIDQ5MjcsIDQ5MzEsIDQ5MzYsIDQ5NDEsIDQ5NTAsIDQ5NTYsIDQ5NjEsIDQ5NjUsIDQ5NzAsIDQ5NzQsIDQ5NzksIAorICAgIDQ5ODMsIDQ5ODcsIDQ5OTIsIDQ5OTUsIDUwMDEsIDUwMDYsIDUwMTEsIDUwMTYsIDUwMjEsIDUwMjYsIDUwMzEsIDUwMzcsIAorICAgIDUwNDMsIDUwNDksIDUwNTQsIDUwNTksIDUwNjUsIDUwNzEsIDUwNzcsIDUwODIsIDUwODcsIDUwOTQsIDUxMDEsIDUxMDUsIAorICAgIDUxMTEsIDUxMTgsIDAsIDAsIDUxMjUsIDUxMjgsIDUxMzcsIDUxNDYsIDUxNTcsIDAsIDAsIDAsIDAsIDAsIDUxNjEsIAorICAgIDUxNjQsIDUxNjksIDUxNzcsIDUxODIsIDUxOTAsIDUxOTgsIDAsIDUyMDYsIDAsIDUyMTQsIDUyMjIsIDUyMzAsIDUyNDEsIAorICAgIDUyNDYsIDUyNTEsIDUyNTYsIDUyNjEsIDUyNjYsIDUyNzEsIDUyNzYsIDUyODEsIDUyODYsIDUyOTEsIDUyOTYsIDUzMDEsIAorICAgIDUzMDYsIDUzMTEsIDUzMTYsIDUzMjEsIDAsIDUzMjYsIDUzMzEsIDUzMzYsIDUzNDEsIDUzNDYsIDUzNTEsIDUzNTYsIAorICAgIDUzNjEsIDUzNjksIDUzNzcsIDUzODUsIDUzOTMsIDU0MDEsIDU0MDksIDU0MjAsIDU0MjUsIDU0MzAsIDU0MzUsIDU0NDAsIAorICAgIDU0NDUsIDU0NTAsIDU0NTUsIDU0NjAsIDU0NjUsIDU0NzAsIDU0NzUsIDU0ODAsIDU0ODUsIDU0OTAsIDU0OTUsIDU1MDAsIAorICAgIDU1MDUsIDU1MTEsIDU1MTYsIDU1MjEsIDU1MjYsIDU1MzEsIDU1MzYsIDU1NDEsIDU1NDYsIDU1NTQsIDU1NjIsIDU1NzAsIAorICAgIDU1NzgsIDU1ODYsIDU1OTEsIDU1OTUsIDU1OTksIDU2MDYsIDU2MTYsIDU2MjYsIDU2MzAsIDU2MzQsIDU2MzgsIDU2NDQsIAorICAgIDU2NTEsIDU2NTUsIDU2NjAsIDU2NjQsIDU2NjksIDU2NzMsIDU2NzgsIDU2ODIsIDU2ODcsIDU2OTIsIDU2OTcsIDU3MDIsIAorICAgIDU3MDcsIDU3MTIsIDU3MTcsIDU3MjIsIDU3MjcsIDU3MzIsIDU3MzcsIDU3NDIsIDU3NDcsIDU3NTIsIDU3NTcsIDU3NjEsIAorICAgIDU3NjUsIDU3NzEsIDU3NzUsIDU3ODAsIDU3ODYsIDU3OTQsIDU3OTksIDU4MDQsIDU4MTEsIDU4MTYsIDU4MjEsIDU4MjgsIAorICAgIDU4MzcsIDU4NDYsIDU4NTcsIDU4NjQsIDU4NjksIDU4NzQsIDU4NzksIDU4ODYsIDU4OTEsIDU4OTcsIDU5MDIsIDU5MDcsIAorICAgIDU5MTIsIDU5MTcsIDU5MjIsIDU5MjcsIDU5MzQsIDU5NDAsIDU5NDUsIDU5NDksIDU5NTQsIDU5NTksIDU5NjQsIDU5NjksIAorICAgIDU5NzQsIDU5NzksIDU5ODQsIDU5ODgsIDU5OTQsIDU5OTgsIDYwMDMsIDYwMDgsIDYwMTMsIDYwMTcsIDYwMjIsIDYwMjcsIAorICAgIDYwMzIsIDYwMzcsIDYwNDEsIDYwNDYsIDYwNTAsIDYwNTUsIDYwNjAsIDYwNjUsIDYwNzAsIDYwNzYsIDYwODEsIDYwODcsIAorICAgIDYwOTEsIDYwOTYsIDYxMDAsIDYxMDQsIDYxMDksIDYxMTQsIDYxMTksIDYxMjQsIDYxMjksIDYxMzQsIDYxMzksIDYxNDMsIAorICAgIDYxNDksIDYxNTMsIDYxNTgsIDYxNjMsIDYxNjgsIDYxNzIsIDYxNzcsIDYxODIsIDYxODcsIDYxOTIsIDYxOTYsIDYyMDEsIAorICAgIDYyMDUsIDYyMTAsIDYyMTUsIDYyMjAsIDYyMjUsIDYyMzEsIDYyMzYsIDYyNDIsIDYyNDYsIDYyNTEsIDYyNTUsIDYyNjIsIAorICAgIDYyNjcsIDYyNzIsIDYyNzcsIDYyODQsIDYyODksIDYyOTUsIDYzMDAsIDYzMDUsIDYzMTAsIDYzMTUsIDYzMjAsIDYzMjUsIAorICAgIDYzMzIsIDYzMzgsIDYzNDMsIDYzNDgsIDYzNTMsIDYzNTgsIDYzNjMsIDYzNjksIDYzNzUsIDYzODIsIDYzODksIDYzOTgsIAorICAgIDY0MDcsIDY0MTQsIDY0MjEsIDY0MzAsIDY0MzksIDY0NDQsIDY0NDksIDY0NTQsIDY0NTksIDY0NjQsIDY0NjksIDY0NzQsIAorICAgIDY0NzksIDY0OTAsIDY1MDEsIDY1MDYsIDY1MTEsIDY1MTgsIDY1MjUsIDY1MzMsIDY1NDEsIDY1NDYsIDY1NTEsIDY1NTYsIAorICAgIDY1NjEsIDY1NjUsIDY1NjksIDY1NzMsIDY1NzksIDY1ODUsIDY1ODksIDY1OTYsIDY2MDEsIDY2MTEsIDY2MjEsIDY2MjcsIAorICAgIDY2MzMsIDY2NDEsIDY2NDksIDY2NTcsIDY2NjUsIDY2NzIsIDY2NzksIDY2ODgsIDY2OTcsIDY3MDUsIDY3MTMsIDY3MjEsIAorICAgIDY3MjksIDY3MzcsIDY3NDUsIDY3NTMsIDY3NjEsIDY3NjgsIDY3NzUsIDY3ODEsIDY3ODcsIDY3OTUsIDY4MDMsIDY4MTAsIAorICAgIDY4MTcsIDY4MjYsIDY4MzUsIDY4NDEsIDY4NDcsIDY4NTUsIDY4NjMsIDY4NzEsIDY4NzksIDY4ODUsIDY4OTEsIDY4OTksIAorICAgIDY5MDcsIDY5MTUsIDY5MjMsIDY5MzAsIDY5MzcsIDY5NDUsIDY5NTMsIDY5NjEsIDY5NjksIDY5NzQsIDY5NzksIDY5ODYsIAorICAgIDY5OTMsIDcwMDMsIDcwMTMsIDcwMTcsIDcwMjUsIDcwMzMsIDcwNDAsIDcwNDcsIDcwNTUsIDcwNjMsIDcwNzAsIDcwNzcsIAorICAgIDcwODUsIDcwOTMsIDcxMDAsIDcxMDcsIDcxMTUsIDcxMjMsIDcxMjgsIDcxMzUsIDcxNDIsIDcxNDksIDcxNTYsIDcxNjIsIAorICAgIDcxNjgsIDcxNzYsIDcxODQsIDcxODksIDcxOTQsIDcyMDIsIDcyMTAsIDcyMTgsIDcyMjYsIDcyMzQsIDcyNDIsIDcyNDksIAorICAgIDcyNTYsIDcyNjQsIDcyNzIsIDcyODAsIDcyODgsIDcyOTUsIDczMDIsIDczMDgsIDczMTQsIDczMjMsIDczMzIsIDczMzksIAorICAgIDczNDYsIDczNTMsIDczNjAsIDczNjcsIDczNzQsIDczODEsIDczODgsIDczOTYsIDc0MDQsIDc0MTIsIDc0MjAsIDc0MjgsIAorICAgIDc0MzYsIDc0NDYsIDc0NTYsIDc0NjMsIDc0NzAsIDc0NzcsIDc0ODQsIDc0OTEsIDc0OTgsIDc1MDUsIDc1MTIsIDc1MTksIAorICAgIDc1MjYsIDc1MzMsIDc1NDAsIDc1NDcsIDc1NTQsIDc1NjEsIDc1NjgsIDc1NzUsIDc1ODIsIDc1ODksIDc1OTYsIDc2MDMsIAorICAgIDc2MTAsIDc2MTcsIDc2MjQsIDc2MjksIDc2MzQsIDc2MzksIDc2NDQsIDc2NDksIDc2NTQsIDc2NTksIDc2NjQsIDc2NjksIAorICAgIDc2NzQsIDc2ODAsIDc2ODYsIDc2OTUsIDc3MDQsIDc3MTMsIDc3MjIsIDc3MzAsIDc3MzgsIDc3NDYsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDc3NTQsIDc3NTksIDc3NjQsIDc3NjksIDc3NzQsIDc3NzksIDc3ODQsIDc3ODksIDc3OTQsIAorICAgIDc3OTgsIDc4MDMsIDc4MDgsIDc4MTMsIDc4MTgsIDc4MjMsIDc4MjgsIDc4MzMsIDc4MzgsIDc4NDMsIDc4NDgsIDc4NTMsIAorICAgIDc4NTgsIDc4NjMsIDc4NjgsIDc4NzMsIDc4NzgsIDc4ODMsIDc4ODgsIDc4OTIsIDc4OTcsIDc5MDIsIDc5MDcsIDc5MTIsIAorICAgIDc5MTcsIDc5MjIsIDc5MjcsIDc5MzIsIDc5MzcsIDAsIDAsIDc5NDIsIDc5NDksIDc5NTIsIDc5NTYsIDc5NjAsIDc5NjMsIAorICAgIDc5NjcsIDAsIDc5NzEsIDc5NzYsIDc5ODEsIDc5ODYsIDc5OTEsIDc5OTYsIDgwMDEsIDgwMDYsIDgwMTEsIDgwMTUsIAorICAgIDgwMjAsIDgwMjUsIDgwMzAsIDgwMzUsIDgwNDAsIDgwNDUsIDgwNTAsIDgwNTUsIDgwNjAsIDgwNjUsIDgwNzAsIDgwNzUsIAorICAgIDgwODAsIDgwODUsIDgwOTAsIDgwOTUsIDgxMDAsIDgxMDUsIDgxMDksIDgxMTQsIDgxMTksIDgxMjQsIDgxMjksIDgxMzQsIAorICAgIDgxMzksIDgxNDQsIDgxNDksIDgxNTQsIDgxNTksIDAsIDgxNjYsIDgxNzEsIDAsIDAsIDAsIDAsIDAsIDAsIDgxNzQsIAorICAgIDgxNzksIDgxODQsIDgxODksIDgxOTYsIDgyMDMsIDgyMDgsIDgyMTMsIDgyMTgsIDgyMjMsIDgyMjgsIDgyMzMsIDgyMzgsIAorICAgIDgyNDUsIDgyNTAsIDgyNTcsIDgyNjQsIDgyNjksIDgyNzYsIDgyODEsIDgyODYsIDgyOTEsIDgyOTgsIDgzMDMsIDgzMDgsIAorICAgIDgzMTUsIDgzMjQsIDgzMjksIDgzMzQsIDgzMzksIDgzNDQsIDgzNTAsIDgzNTUsIDgzNjIsIDgzNjksIDgzNzYsIDgzODEsIAorICAgIDgzODYsIDgzOTEsIDgzOTYsIDg0MDEsIDg0MDYsIDg0MTYsIDg0MjEsIDg0MjksIDg0MzQsIDg0MzksIDg0NDQsIDg0NDksIAorICAgIDg0NTYsIDg0NjMsIDg0NzAsIDg0NzYsIDg0ODIsIDg0ODksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg0OTYsIDg1MDAsIAorICAgIDg1MDQsIDg1MDgsIDg1MTIsIDg1MTYsIDg1MjAsIDg1MjQsIDg1MjgsIDg1MzIsIDg1MzYsIDg1NDEsIDg1NDUsIDg1NDksIAorICAgIDg1NTQsIDg1NTgsIDg1NjMsIDg1NjcsIDg1NzEsIDg1NzUsIDg1ODAsIDg1ODQsIDg1ODksIDg1OTMsIDg1OTcsIDg2MDEsIAorICAgIDg2MDUsIDAsIDAsIDAsIDAsIDAsIDg2MDksIDg2MTYsIDg2MjQsIDg2MzEsIDg2MzYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDg2NDEsIDg2NDQsIDg2NDgsIDg2NTMsIDAsIDAsIDg2NTcsIDg2NjMsIDg2NjksIDg2NzIsIDg2NzksIAorICAgIDg2ODgsIDg2OTEsIDg2OTQsIDg2OTksIDg3MDUsIDg3MDksIDg3MTcsIDg3MjMsIDg3MjksIDg3MzcsIDg3NDEsIDg3NDYsIAorICAgIDg3NTcsIDg3NjIsIDg3NjYsIDg3NzAsIDg3NzQsIDAsIDAsIDg3NzcsIDg3ODQsIDg3ODgsIDg3OTQsIDg3OTgsIDg4MDUsIAorICAgIDg4MTEsIDg4MTgsIDg4MjQsIDg4MzAsIDg4MzQsIDg4MzgsIDg4NDQsIDg4NDgsIDg4NTIsIDg4NTYsIDg4NjAsIDg4NjQsIAorICAgIDg4NjgsIDg4NzIsIDg4NzYsIDg4ODAsIDg4ODQsIDg4ODgsIDg4OTIsIDg4OTYsIDg5MDAsIDg5MDQsIDg5MDgsIDg5MTIsIAorICAgIDg5MjAsIDg5MjgsIDg5MzgsIDg5NDcsIDg5NTYsIDg5NTksIDg5NjMsIDg5NjcsIDg5NzEsIDg5NzUsIDg5NzksIDg5ODMsIAorICAgIDg5ODcsIDg5OTEsIDg5OTYsIDkwMDAsIDkwMDMsIDkwMDYsIDkwMDksIDkwMTIsIDkwMTUsIDkwMTgsIDkwMjEsIDkwMjQsIAorICAgIDkwMjgsIDkwMzEsIDkwMzQsIDkwMzksIDkwNDQsIDkwNTAsIDkwNTMsIDkwNjAsIDkwNjksIDkwNzQsIDkwNzksIDkwODYsIAorICAgIDkwOTEsIDkwOTYsIDkxMDAsIDkxMDQsIDkxMDgsIDkxMTIsIDkxMTYsIDkxMjAsIDkxMjQsIDkxMjgsIDkxMzIsIDkxMzYsIAorICAgIDkxNDEsIDkxNDYsIDkxNTMsIDkxNTksIDkxNjUsIDkxNzEsIDkxNzYsIDkxODQsIDkxOTIsIDkxOTcsIDkyMDMsIDkyMDksIAorICAgIDkyMTUsIDkyMjEsIDkyMjUsIDkyMjksIDkyMzMsIDkyNDAsIDkyNTAsIDkyNTQsIDkyNTgsIDkyNjIsIDkyNjgsIDkyNzYsIAorICAgIDkyODAsIDkyODQsIDkyOTEsIDkyOTUsIDkyOTksIDkzMDMsIDkzMTAsIDkzMTcsIDkzMjksIDkzMzMsIDkzMzcsIDkzNDEsIAorICAgIDkzNTEsIDkzNjAsIDkzNjQsIDkzNzIsIDkzNzksIDkzODYsIDkzOTUsIDk0MDYsIDk0MTQsIDk0MTgsIDk0MjcsIDk0MzgsIAorICAgIDk0NDYsIDk0NTksIDk0NjcsIDk0NzUsIDk0ODMsIDk0OTEsIDk0OTcsIDk1MDYsIDk1MTMsIDk1MTcsIDk1MjUsIDk1MjksIAorICAgIDk1MzYsIDk1NDQsIDk1NDgsIDk1NTQsIDk1NjEsIDk1NjgsIDk1NzIsIDk1ODAsIDk1ODQsIDk1OTEsIDk1OTUsIDk2MDMsIAorICAgIDk2MDcsIDk2MTUsIDk2MjMsIDk2MzAsIDk2MzgsIDk2NDYsIDk2NTMsIDk2NTksIDk2NjMsIDk2NzAsIDk2NzgsIDk2ODQsIAorICAgIDk2OTEsIDk2OTgsIDk3MDQsIDk3MTMsIDk3MjEsIDk3MjgsIDk3MzQsIDk3MzgsIDk3NDEsIDk3NDUsIDk3NTEsIDk3NTksIAorICAgIDk3NjMsIDk3NjksIDk3NzUsIDk3ODIsIDk3ODksIDk3OTIsIDk3OTksIDk4MDQsIDk4MTIsIDk4MTcsIDk4MjEsIDk4MzQsIAorICAgIDk4NDcsIDk4NTMsIDk4NjAsIDk4NjUsIDk4NzEsIDk4NzYsIDk4ODIsIDk4OTIsIDk4OTksIDk5MDgsIDk5MTgsIDk5MjQsIAorICAgIDk5MjksIDk5MzQsIDk5MzgsIDk5NDIsIDk5NDcsIDk5NTIsIDk5NTgsIDk5NjYsIDk5NzQsIDk5ODUsIDk5OTAsIDk5OTksIAorICAgIDEwMDA4LCAxMDAxNSwgMTAwMjEsIDEwMDI3LCAxMDAzMywgMTAwMzksIDEwMDQ1LCAxMDA1MSwgMTAwNTcsIDEwMDYzLCAKKyAgICAxMDA2OSwgMTAwNzYsIDEwMDgzLCAxMDA5MCwgMTAwOTYsIDEwMTA0LCAxMDExMywgMTAxMTksIDEwMTI2LCAxMDEzMywgCisgICAgMTAxMzgsIDEwMTQzLCAxMDE0NywgMTAxNTQsIDEwMTYxLCAxMDE3MCwgMTAxNzksIDEwMTgyLCAxMDE4NywgMTAxOTIsIDAsIAorICAgIDEwMTk3LCAxMDIwMSwgMTAyMDUsIDEwMjExLCAxMDIxNSwgMTAyMTksIDEwMjI1LCAxMDIyOSwgMTAyMzcsIDEwMjQxLCAKKyAgICAxMDI0NSwgMTAyNDksIDEwMjUzLCAxMDI1NywgMTAyNjMsIDEwMjY3LCAxMDI3MywgMTAyNzcsIDEwMjgxLCAxMDI4NSwgCisgICAgMTAyODksIDEwMjkzLCAxMDI5OCwgMTAzMDEsIDEwMzA1LCAxMDMxMSwgMTAzMTUsIDEwMzE5LCAxMDMyMywgMTAzMjcsIAorICAgIDEwMzMxLCAxMDMzNywgMTAzNDMsIDEwMzQ5LCAxMDM1MywgMTAzNTcsIDEwMzYyLCAxMDM2NiwgMTAzNzAsIDEwMzc1LCAKKyAgICAxMDM3OSwgMTAzODMsIDEwMzkwLCAxMDM5NywgMTA0MDEsIDEwNDA1LCAxMDQxMCwgMTA0MTQsIDEwNDE4LCAxMDQyMSwgCisgICAgMTA0MjYsIDEwNDI5LCAxMDQzMiwgMTA0MzcsIDEwNDQyLCAxMDQ0NiwgMTA0NTAsIDEwNDU2LCAxMDQ2MiwgMTA0NjUsIDAsIAorICAgIDAsIDEwNDY4LCAxMDQ3NCwgMTA0ODAsIDEwNDg2LCAxMDQ5NiwgMTA1MDgsIDEwNTIwLCAxMDUzNywgMTA1NDksIDEwNTYwLCAKKyAgICAxMDU2OCwgMTA1NzUsIDEwNTg2LCAxMDYwMSwgMTA2MTIsIDEwNjE4LCAxMDYyNywgMTA2MzUsIDEwNjQ3LCAxMDY1NywgCisgICAgMTA2NjUsIDEwNjc3LCAxMDY4NCwgMTA2OTIsIDEwNzA0LCAxMDcxMCwgMTA3MTYsIDEwNzI0LCAxMDczMiwgMTA3NDAsIAorICAgIDEwNzQ2LCAxMDc1NiwgMTA3NjMsIDEwNzczLCAxMDc4MywgMTA3OTYsIDEwODEwLCAxMDgyNCwgMTA4MzQsIDEwODQ1LCAKKyAgICAxMDg1NiwgMTA4NjksIDEwODgyLCAxMDg5NiwgMTA5MDgsIDEwOTIwLCAxMDkzMywgMTA5NDYsIDEwOTU4LCAxMDk3MSwgCisgICAgMTA5ODAsIDEwOTg4LCAxMDk5MywgMTA5OTgsIDExMDAzLCAxMTAwOCwgMTEwMTMsIDExMDE4LCAxMTAyMywgMTEwMjgsIAorICAgIDExMDMzLCAxMTAzOCwgMTEwNDMsIDExMDQ4LCAxMTA1MywgMTEwNTgsIDExMDYzLCAxMTA2OCwgMTEwNzMsIDExMDc4LCAKKyAgICAxMTA4MywgMTEwODgsIDExMDkzLCAxMTA5OCwgMTExMDMsIDExMTA4LCAxMTExMywgMTExMTgsIDExMTIzLCAxMTEyOCwgCisgICAgMTExMzMsIDExMTM4LCAxMTE0MywgMTExNDgsIDExMTUyLCAxMTE1NywgMTExNjIsIDExMTY3LCAxMTE3MiwgMTExNzcsIAorICAgIDExMTgxLCAxMTE4NSwgMTExODksIDExMTkzLCAxMTE5NywgMTEyMDEsIDExMjA1LCAxMTIwOSwgMTEyMTMsIDExMjE3LCAKKyAgICAxMTIyMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTEyMjYsIDExMjMxLCAxMTIzNSwgCisgICAgMTEyMzksIDExMjQzLCAxMTI0NywgMTEyNTEsIDExMjU1LCAxMTI1OSwgMTEyNjMsIDExMjY3LCAxMTI3MSwgMTEyNzYsIAorICAgIDExMjgwLCAxMTI4NCwgMTEyODgsIDExMjkzLCAxMTI5NywgMTEzMDIsIDExMzA2LCAxMTMxMSwgMTEzMTUsIDExMzIwLCAKKyAgICAxMTMyNSwgMTEzMzAsIDExMzM1LCAxMTMzOSwgMTEzNDQsIDExMzQ5LCAxMTM1NCwgMTEzNTksIDExMzYzLCAxMTM2OCwgCisgICAgMTEzNzUsIDExMzc5LCAxMTM4NCwgMTEzODgsIDExMzkyLCAxMTM5NywgMTE0MDEsIDExNDA4LCAxMTQxNSwgMTE0MjIsIAorICAgIDExNDI4LCAxMTQzNiwgMTE0NDQsIDExNDUzLCAxMTQ2MSwgMTE0NjgsIDExNDc1LCAxMTQ4MywgMTE0ODksIDExNDk1LCAKKyAgICAxMTUwMSwgMTE1MDcsIDExNTE0LCAxMTUxOSwgMTE1MjMsIDExNTI4LCAwLCAwLCAwLCAwLCAwLCAxMTUzMiwgMTE1MzcsIAorICAgIDExNTQyLCAxMTU0NywgMTE1NTIsIDExNTU3LCAxMTU2MiwgMTE1NjcsIDExNTcyLCAxMTU3NywgMTE1ODIsIDExNTg3LCAKKyAgICAxMTU5MiwgMTE1OTcsIDExNjAyLCAxMTYwNywgMTE2MTIsIDExNjE3LCAxMTYyMiwgMTE2MjcsIDExNjMyLCAxMTYzNywgCisgICAgMTE2NDIsIDExNjQ3LCAxMTY1MiwgMTE2NTcsIDExNjYyLCAxMTY3MCwgMTE2NzcsIDExNjgzLCAxMTY4OCwgMTE2OTYsIAorICAgIDExNzAzLCAxMTcwOSwgMTE3MTYsIDExNzIyLCAxMTcyNywgMTE3MzQsIDExNzQxLCAxMTc0NywgMTE3NTIsIDExNzU3LCAKKyAgICAxMTc2MywgMTE3NjgsIDExNzczLCAxMTc3OSwgMCwgMCwgMTE3ODQsIDExNzkwLCAxMTc5NiwgMTE4MDIsIDExODA4LCAKKyAgICAxMTgxNCwgMTE4MjAsIDExODI1LCAxMTgzMywgMTE4MzksIDExODQ1LCAxMTg1MSwgMTE4NTcsIDExODYzLCAxMTg3MSwgMCwgCisgICAgMTE4NzcsIDExODgyLCAxMTg4NywgMTE4OTIsIDExODk3LCAxMTkwMiwgMTE5MDcsIDExOTEyLCAxMTkxNywgMTE5MjIsIAorICAgIDExOTI3LCAxMTkzMiwgMTE5MzcsIDExOTQyLCAxMTk0NywgMTE5NTIsIDExOTU3LCAxMTk2MiwgMTE5NjcsIDExOTcyLCAKKyAgICAxMTk3NywgMTE5ODIsIDExOTg3LCAxMTk5MiwgMTE5OTcsIDEyMDAyLCAxMjAwNywgMTIwMTIsIDAsIDAsIDEyMDE3LCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjA3NywgMTIwODMsIAotICAgIDEyMDg3LCAxMjA5MSwgMTIwOTUsIDEyMTAwLCAxMjEwMywgMTIxMDcsIDEyMTEwLCAxMjExNCwgMTIxMTcsIDEyMTIxLCAKLSAgICAxMjEyNSwgMTIxMjksIDEyMTM0LCAxMjEzOSwgMTIxNDIsIDEyMTQ2LCAxMjE1MSwgMTIxNTYsIDEyMTU5LCAxMjE2MywgCi0gICAgMTIxNjYsIDEyMTcwLCAxMjE3NCwgMTIxNzgsIDEyMTgyLCAxMjE4NiwgMTIxOTAsIDEyMTk0LCAxMjE5OCwgMTIyMDIsIAotICAgIDEyMjA2LCAxMjIxMCwgMTIyMTQsIDEyMjE4LCAxMjIyMiwgMTIyMjYsIDEyMjMwLCAxMjIzNCwgMTIyMzgsIDEyMjQxLCAKLSAgICAxMjI0NSwgMTIyNDgsIDEyMjUyLCAxMjI1NiwgMTIyNjAsIDEyMjYzLCAxMjI2NiwgMTIyNjksIDEyMjczLCAxMjI3NywgCi0gICAgMTIyODEsIDEyMjg1LCAxMjI4OSwgMTIyOTMsIDEyMjk3LCAxMjMwMSwgMTIzMDQsIDEyMzA5LCAxMjMxNCwgMTIzMTgsIAotICAgIDEyMzIyLCAxMjMyNywgMTIzMzEsIDEyMzM2LCAxMjM0MCwgMTIzNDUsIDEyMzUwLCAxMjM1NiwgMTIzNjIsIDEyMzY4LCAKLSAgICAxMjM3MiwgMTIzNzcsIDEyMzgzLCAxMjM4OSwgMTIzOTMsIDEyMzk4LCAxMjQwMiwgMTI0MDgsIDEyNDEzLCAxMjQxNiwgCi0gICAgMTI0MjIsIDEyNDI4LCAxMjQzMywgMTI0MzgsIDEyNDQ1LCAxMjQ1MCwgMTI0NTUsIDEyNDU5LCAxMjQ2MywgMTI0NjcsIAotICAgIDEyNDcxLCAxMjQ3NSwgMTI0NzksIDEyNDgzLCAxMjQ4NywgMTI0OTIsIDEyNDk3LCAxMjUwMiwgMTI1MDgsIDEyNTExLCAKLSAgICAxMjUxNSwgMTI1MTksIDEyNTIyLCAxMjUyNSwgMTI1MjgsIDEyNTMxLCAxMjUzNCwgMTI1MzcsIDEyNTQwLCAxMjU0MywgCi0gICAgMTI1NDYsIDEyNTUwLCAxMjU1NywgMTI1NjIsIDEyNTY2LCAxMjU3MCwgMTI1NzQsIDEyNTc4LCAwLCAxMjU4MiwgMTI1ODYsIAotICAgIDEyNTkwLCAxMjU5NCwgMTI1OTgsIDEyNjA0LCAxMjYwOCwgMCwgMTI2MTIsIDEyNjE2LCAxMjYyMCwgMCwgMTI2MjQsIAotICAgIDEyNjI3LCAxMjYzMSwgMTI2MzQsIDEyNjM4LCAxMjY0MSwgMTI2NDUsIDEyNjQ5LCAwLCAwLCAxMjY1MywgMTI2NTYsIDAsIAotICAgIDAsIDEyNjYwLCAxMjY2MywgMTI2NjcsIDEyNjcwLCAxMjY3NCwgMTI2NzgsIDEyNjgyLCAxMjY4NiwgMTI2OTAsIDEyNjk0LCAKLSAgICAxMjY5OCwgMTI3MDIsIDEyNzA2LCAxMjcxMCwgMTI3MTQsIDEyNzE4LCAxMjcyMiwgMTI3MjYsIDEyNzMwLCAxMjczNCwgCi0gICAgMTI3MzgsIDEyNzQyLCAwLCAxMjc0NSwgMTI3NDgsIDEyNzUyLCAxMjc1NiwgMTI3NjAsIDEyNzYzLCAxMjc2NiwgMCwgCi0gICAgMTI3NjksIDAsIDAsIDAsIDEyNzczLCAxMjc3NywgMTI3ODEsIDEyNzg1LCAwLCAwLCAxMjc4OCwgMTI3OTIsIDEyNzk2LCAKLSAgICAxMjgwMSwgMTI4MDUsIDEyODEwLCAxMjgxNCwgMTI4MTksIDEyODI0LCAwLCAwLCAxMjgzMCwgMTI4MzQsIDAsIDAsIAotICAgIDEyODM5LCAxMjg0MywgMTI4NDgsIDEyODUyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjg1OCwgMCwgMCwgMCwgMCwgCi0gICAgMTI4NjQsIDEyODY4LCAwLCAxMjg3MiwgMTI4NzYsIDEyODgxLCAxMjg4NiwgMTI4OTEsIDAsIDAsIDEyODk3LCAxMjkwMSwgCi0gICAgMTI5MDQsIDEyOTA3LCAxMjkxMCwgMTI5MTMsIDEyOTE2LCAxMjkxOSwgMTI5MjIsIDEyOTI1LCAxMjkyOCwgMTI5MzcsIAotICAgIDEyOTQ2LCAxMjk1MCwgMTI5NTQsIDEyOTYwLCAxMjk2NiwgMTI5NzIsIDEyOTc4LCAxMjk5MiwgMTI5OTksIDEzMDAyLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAxMzAwNiwgMTMwMTIsIDEzMDE2LCAwLCAxMzAyMCwgMTMwMjMsIDEzMDI3LCAxMzAzMCwgMTMwMzQsIAotICAgIDEzMDM3LCAwLCAwLCAwLCAwLCAxMzA0MSwgMTMwNDUsIDAsIDAsIDEzMDQ5LCAxMzA1MywgMTMwNTcsIDEzMDYwLCAxMzA2NCwgCi0gICAgMTMwNjgsIDEzMDcyLCAxMzA3NiwgMTMwODAsIDEzMDg0LCAxMzA4OCwgMTMwOTIsIDEzMDk2LCAxMzEwMCwgMTMxMDQsIAotICAgIDEzMTA4LCAxMzExMiwgMTMxMTYsIDEzMTIwLCAxMzEyNCwgMTMxMjgsIDEzMTMyLCAwLCAxMzEzNSwgMTMxMzgsIDEzMTQyLCAKLSAgICAxMzE0NiwgMTMxNTAsIDEzMTUzLCAxMzE1NiwgMCwgMTMxNTksIDEzMTYzLCAwLCAxMzE2NywgMTMxNzEsIDAsIDEzMTc1LCAKLSAgICAxMzE3OSwgMCwgMCwgMTMxODIsIDAsIDEzMTg2LCAxMzE5MSwgMTMxOTUsIDEzMjAwLCAxMzIwNCwgMCwgMCwgMCwgMCwgCi0gICAgMTMyMDksIDEzMjE0LCAwLCAwLCAxMzIxOSwgMTMyMjQsIDEzMjI5LCAwLCAwLCAwLCAxMzIzMywgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMTMyMzcsIDEzMjQxLCAxMzI0NSwgMTMyNDksIDAsIDEzMjUzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzI1NywgCi0gICAgMTMyNjEsIDEzMjY0LCAxMzI2NywgMTMyNzAsIDEzMjczLCAxMzI3NiwgMTMyNzksIDEzMjgyLCAxMzI4NSwgMTMyODgsIAotICAgIDEzMjkxLCAxMzI5NCwgMTMyOTcsIDEzMzAwLCAxMzMwNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTMzMDksIDEzMzEzLCAxMzMxNywgMCwgMTMzMjEsIDEzMzI0LCAxMzMyOCwgMTMzMzEsIDEzMzM1LCAxMzMzOCwgMTMzNDIsIAotICAgIDEzMzQ2LCAxMzM1MCwgMCwgMTMzNTUsIDEzMzU4LCAxMzM2MiwgMCwgMTMzNjcsIDEzMzcwLCAxMzM3NCwgMTMzNzcsIAotICAgIDEzMzgxLCAxMzM4NSwgMTMzODksIDEzMzkzLCAxMzM5NywgMTM0MDEsIDEzNDA1LCAxMzQwOSwgMTM0MTMsIDEzNDE3LCAKLSAgICAxMzQyMSwgMTM0MjUsIDEzNDI5LCAxMzQzMywgMTM0MzcsIDEzNDQxLCAxMzQ0NSwgMTM0NDksIDAsIDEzNDUyLCAxMzQ1NSwgCi0gICAgMTM0NTksIDEzNDYzLCAxMzQ2NywgMTM0NzAsIDEzNDczLCAwLCAxMzQ3NiwgMTM0ODAsIDAsIDEzNDg0LCAxMzQ4OCwgCi0gICAgMTM0OTIsIDEzNDk2LCAxMzUwMCwgMCwgMCwgMTM1MDMsIDEzNTA3LCAxMzUxMSwgMTM1MTYsIDEzNTIwLCAxMzUyNSwgCi0gICAgMTM1MjksIDEzNTM0LCAxMzUzOSwgMTM1NDUsIDAsIDEzNTUxLCAxMzU1NSwgMTM1NjAsIDAsIDEzNTY2LCAxMzU3MCwgCi0gICAgMTM1NzUsIDAsIDAsIDEzNTc5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzU4MiwgCi0gICAgMTM1ODcsIDEzNTkyLCAxMzU5NywgMCwgMCwgMTM2MDMsIDEzNjA3LCAxMzYxMCwgMTM2MTMsIDEzNjE2LCAxMzYxOSwgCi0gICAgMTM2MjIsIDEzNjI1LCAxMzYyOCwgMTM2MzEsIDAsIDEzNjM0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAxMzYzOCwgMTM2NDIsIDEzNjQ2LCAwLCAxMzY1MCwgMTM2NTMsIDEzNjU3LCAxMzY2MCwgMTM2NjQsIAotICAgIDEzNjY3LCAxMzY3MSwgMTM2NzUsIDAsIDAsIDEzNjc5LCAxMzY4MiwgMCwgMCwgMTM2ODYsIDEzNjg5LCAxMzY5MywgCi0gICAgMTM2OTYsIDEzNzAwLCAxMzcwNCwgMTM3MDgsIDEzNzEyLCAxMzcxNiwgMTM3MjAsIDEzNzI0LCAxMzcyOCwgMTM3MzIsIAotICAgIDEzNzM2LCAxMzc0MCwgMTM3NDQsIDEzNzQ4LCAxMzc1MiwgMTM3NTYsIDEzNzYwLCAxMzc2NCwgMTM3NjgsIDAsIDEzNzcxLCAKLSAgICAxMzc3NCwgMTM3NzgsIDEzNzgyLCAxMzc4NiwgMTM3ODksIDEzNzkyLCAwLCAxMzc5NSwgMTM3OTksIDAsIDEzODAzLCAKLSAgICAxMzgwNywgMTM4MTEsIDEzODE1LCAxMzgxOSwgMCwgMCwgMTM4MjIsIDEzODI2LCAxMzgzMCwgMTM4MzUsIDEzODM5LCAKLSAgICAxMzg0NCwgMTM4NDgsIDEzODUzLCAxMzg1OCwgMCwgMCwgMTM4NjQsIDEzODY4LCAwLCAwLCAxMzg3MywgMTM4NzcsIAotICAgIDEzODgyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMzg4NiwgMTM4OTIsIDAsIDAsIDAsIDAsIDEzODk4LCAxMzkwMiwgMCwgCi0gICAgMTM5MDYsIDEzOTEwLCAxMzkxNSwgMTM5MjAsIDEzOTI1LCAwLCAwLCAxMzkzMSwgMTM5MzUsIDEzOTM4LCAxMzk0MSwgCi0gICAgMTM5NDQsIDEzOTQ3LCAxMzk1MCwgMTM5NTMsIDEzOTU2LCAxMzk1OSwgMTM5NjIsIDEzOTY1LCAxMzk2OSwgMTM5NzUsIAotICAgIDEzOTgxLCAxMzk4NywgMTM5OTMsIDEzOTk5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDAwNSwgMTQwMDksIAotICAgIDAsIDE0MDEzLCAxNDAxNiwgMTQwMjAsIDE0MDIzLCAxNDAyNywgMTQwMzAsIDAsIDAsIDAsIDE0MDM0LCAxNDAzNywgCi0gICAgMTQwNDEsIDAsIDE0MDQ1LCAxNDA0OCwgMTQwNTIsIDE0MDU2LCAwLCAwLCAwLCAxNDA1OSwgMTQwNjMsIDAsIDE0MDY3LCAwLCAKLSAgICAxNDA3MSwgMTQwNzUsIDAsIDAsIDAsIDE0MDc5LCAxNDA4MywgMCwgMCwgMCwgMTQwODcsIDE0MDkwLCAxNDA5NCwgMCwgMCwgCi0gICAgMCwgMTQwOTcsIDE0MTAwLCAxNDEwMywgMTQxMDYsIDE0MTEwLCAxNDExNCwgMTQxMTgsIDE0MTIyLCAxNDEyNiwgMTQxMzAsIAotICAgIDE0MTM0LCAxNDEzOCwgMCwgMCwgMCwgMCwgMTQxNDEsIDE0MTQ2LCAxNDE1MCwgMTQxNTUsIDE0MTU5LCAwLCAwLCAwLCAKLSAgICAxNDE2NCwgMTQxNjgsIDE0MTczLCAwLCAxNDE3OCwgMTQxODIsIDE0MTg3LCAxNDE5MiwgMCwgMCwgMTQxOTYsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDE0MTk5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDIwNSwgMTQyMDksIAotICAgIDE0MjEyLCAxNDIxNSwgMTQyMTgsIDE0MjIxLCAxNDIyNCwgMTQyMjcsIDE0MjMwLCAxNDIzMywgMTQyMzYsIDE0MjQwLCAKLSAgICAxNDI0NSwgMTQyNTAsIDE0MjU0LCAxNDI1OCwgMTQyNjIsIDE0MjY2LCAxNDI3MCwgMTQyNzUsIDE0Mjc5LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAxNDI4MiwgMTQyODYsIDE0MjkwLCAwLCAxNDI5NCwgMTQyOTcsIDE0MzAxLCAxNDMwNCwgMTQzMDgsIAotICAgIDE0MzExLCAxNDMxNSwgMTQzMTksIDAsIDE0MzIzLCAxNDMyNiwgMTQzMzAsIDAsIDE0MzM0LCAxNDMzNywgMTQzNDEsIAotICAgIDE0MzQ1LCAxNDM0OCwgMTQzNTIsIDE0MzU2LCAxNDM2MCwgMTQzNjQsIDE0MzY4LCAxNDM3MiwgMTQzNzYsIDE0MzgwLCAKLSAgICAxNDM4NCwgMTQzODgsIDE0MzkyLCAxNDM5NiwgMTQ0MDAsIDE0NDA0LCAxNDQwOCwgMTQ0MTIsIDE0NDE2LCAxNDQyMCwgMCwgCi0gICAgMTQ0MjMsIDE0NDI2LCAxNDQzMCwgMTQ0MzQsIDE0NDM4LCAxNDQ0MSwgMTQ0NDQsIDE0NDQ3LCAxNDQ1MSwgMTQ0NTUsIDAsIAotICAgIDE0NDU5LCAxNDQ2MywgMTQ0NjcsIDE0NDcxLCAxNDQ3NSwgMCwgMCwgMCwgMTQ0NzgsIDE0NDgyLCAxNDQ4NywgMTQ0OTEsIAotICAgIDE0NDk2LCAxNDUwMCwgMTQ1MDUsIDE0NTEwLCAwLCAxNDUxNiwgMTQ1MjAsIDE0NTI1LCAwLCAxNDUzMCwgMTQ1MzQsIAotICAgIDE0NTM5LCAxNDU0NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQ1NDgsIDE0NTUyLCAwLCAxNDU1OCwgMTQ1NjIsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDE0NTY2LCAxNDU3MSwgMTQ1NzYsIDE0NTgxLCAwLCAwLCAxNDU4NywgMTQ1OTEsIDE0NTk0LCAxNDU5NywgCi0gICAgMTQ2MDAsIDE0NjAzLCAxNDYwNiwgMTQ2MDksIDE0NjEyLCAxNDYxNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQ2MTgsIAotICAgIDE0NjMxLCAxNDY0MywgMTQ2NTUsIDE0NjY3LCAxNDY3OSwgMTQ2OTEsIDE0NzAzLCAwLCAwLCAxNDcwNywgMTQ3MTEsIDAsIAotICAgIDE0NzE1LCAxNDcxOCwgMTQ3MjIsIDE0NzI1LCAxNDcyOSwgMTQ3MzIsIDE0NzM2LCAxNDc0MCwgMCwgMTQ3NDQsIDE0NzQ3LCAKLSAgICAxNDc1MSwgMCwgMTQ3NTUsIDE0NzU4LCAxNDc2MiwgMTQ3NjYsIDE0NzY5LCAxNDc3MywgMTQ3NzcsIDE0NzgxLCAxNDc4NSwgCi0gICAgMTQ3ODksIDE0NzkzLCAxNDc5NywgMTQ4MDEsIDE0ODA1LCAxNDgwOSwgMTQ4MTMsIDE0ODE3LCAxNDgyMSwgMTQ4MjUsIAotICAgIDE0ODI5LCAxNDgzMywgMTQ4MzcsIDE0ODQxLCAwLCAxNDg0NCwgMTQ4NDcsIDE0ODUxLCAxNDg1NSwgMTQ4NTksIDE0ODYyLCAKLSAgICAxNDg2NSwgMTQ4NjgsIDE0ODcyLCAxNDg3NiwgMCwgMTQ4ODAsIDE0ODg0LCAxNDg4OCwgMTQ4OTIsIDE0ODk2LCAwLCAwLCAKLSAgICAxNDg5OSwgMTQ5MDMsIDE0OTA3LCAxNDkxMiwgMTQ5MTYsIDE0OTIxLCAxNDkyNSwgMTQ5MzAsIDE0OTM1LCAwLCAxNDk0MSwgCi0gICAgMTQ5NDUsIDE0OTUwLCAwLCAxNDk1NSwgMTQ5NTksIDE0OTY0LCAxNDk2OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQ5NzMsIAotICAgIDE0OTc3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDk4MywgMCwgMTQ5ODcsIDE0OTkyLCAxNDk5NywgMTUwMDIsIDAsIDAsIAotICAgIDE1MDA4LCAxNTAxMiwgMTUwMTUsIDE1MDE4LCAxNTAyMSwgMTUwMjQsIDE1MDI3LCAxNTAzMCwgMTUwMzMsIDE1MDM2LCAwLCAKLSAgICAxNTAzOSwgMTUwNDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE1MDQ3LCAxNTA1MSwgCi0gICAgMCwgMTUwNTUsIDE1MDU4LCAxNTA2MiwgMTUwNjUsIDE1MDY5LCAxNTA3MiwgMTUwNzYsIDE1MDgwLCAwLCAxNTA4NCwgCi0gICAgMTUwODcsIDE1MDkxLCAwLCAxNTA5NSwgMTUwOTgsIDE1MTAyLCAxNTEwNiwgMTUxMDksIDE1MTEzLCAxNTExNywgMTUxMjEsIAotICAgIDE1MTI1LCAxNTEyOSwgMTUxMzMsIDE1MTM3LCAxNTE0MSwgMTUxNDUsIDE1MTQ5LCAxNTE1MywgMTUxNTcsIDE1MTYxLCAKLSAgICAxNTE2NSwgMTUxNjksIDE1MTczLCAxNTE3NywgMTUxODEsIDE1MTg0LCAxNTE4OCwgMTUxOTEsIDE1MTk1LCAxNTE5OSwgCi0gICAgMTUyMDMsIDE1MjA2LCAxNTIwOSwgMTUyMTIsIDE1MjE2LCAxNTIyMCwgMTUyMjQsIDE1MjI4LCAxNTIzMiwgMTUyMzYsIAotICAgIDE1MjQwLCAxNTI0NCwgMTUyNDcsIDAsIDAsIDE1MjUxLCAxNTI1NSwgMTUyNjAsIDE1MjY0LCAxNTI2OSwgMTUyNzMsIAotICAgIDE1Mjc4LCAxNTI4MywgMCwgMTUyODksIDE1MjkzLCAxNTI5OCwgMCwgMTUzMDMsIDE1MzA3LCAxNTMxMiwgMTUzMTcsIAotICAgIDE1MzIxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNTMyNiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTUzMzIsIAotICAgIDE1MzM3LCAxNTM0MiwgMTUzNDcsIDAsIDAsIDE1MzUzLCAxNTM1NywgMTUzNjAsIDE1MzYzLCAxNTM2NiwgMTUzNjksIAotICAgIDE1MzcyLCAxNTM3NSwgMTUzNzgsIDE1MzgxLCAxNTM4NCwgMTUzODgsIDE1MzkzLCAxNTM5OCwgMTU0MDQsIDE1NDEwLCAwLCAKLSAgICAwLCAwLCAxNTQxNiwgMTU0MjAsIDE1NDI2LCAxNTQzMSwgMTU0MzcsIDE1NDQyLCAxNTQ0OCwgMCwgMCwgMTU0NTQsIAotICAgIDE1NDU4LCAwLCAxNTQ2MiwgMTU0NjYsIDE1NDcwLCAxNTQ3NCwgMTU0NzgsIDE1NDgyLCAxNTQ4NiwgMTU0OTAsIDE1NDk0LCAKLSAgICAxNTQ5OCwgMTU1MDIsIDE1NTA2LCAxNTUxMCwgMTU1MTQsIDE1NTE4LCAxNTUyMiwgMTU1MjYsIDE1NTMwLCAwLCAwLCAwLCAKLSAgICAxNTUzNCwgMTU1NDAsIDE1NTQ2LCAxNTU1MiwgMTU1NTgsIDE1NTY0LCAxNTU3MCwgMTU1NzYsIDE1NTgyLCAxNTU4OCwgCi0gICAgMTU1OTQsIDE1NjAwLCAxNTYwOCwgMTU2MTQsIDE1NjIwLCAxNTYyNiwgMTU2MzIsIDE1NjM4LCAxNTY0NCwgMTU2NTAsIAotICAgIDE1NjU2LCAxNTY2MiwgMTU2NjgsIDE1Njc0LCAwLCAxNTY4MCwgMTU2ODYsIDE1NjkyLCAxNTY5OCwgMTU3MDQsIDE1NzEwLCAKLSAgICAxNTcxNCwgMTU3MjAsIDE1NzI0LCAwLCAxNTcyOCwgMCwgMCwgMTU3MzQsIDE1NzM4LCAxNTc0NCwgMTU3NTAsIDE1NzU2LCAKLSAgICAxNTc2MCwgMTU3NjYsIDAsIDAsIDAsIDE1NzcwLCAwLCAwLCAwLCAwLCAxNTc3NCwgMTU3NzksIDE1Nzg2LCAxNTc5MywgCi0gICAgMTU4MDAsIDE1ODA3LCAwLCAxNTgxNCwgMCwgMTU4MjEsIDE1ODI2LCAxNTgzMSwgMTU4MzgsIDE1ODQ1LCAxNTg1NCwgCi0gICAgMTU4NjUsIDE1ODc0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAxNTg3OSwgMTU4ODYsIDE1ODkzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNTg5OCwgMTU5MDQsIAotICAgIDE1OTEwLCAxNTkxNiwgMTU5MjIsIDE1OTI4LCAxNTkzNCwgMTU5NDAsIDE1OTQ2LCAxNTk1MiwgMTU5NTgsIDE1OTY0LCAKLSAgICAxNTk3MCwgMTU5NzYsIDE1OTgyLCAxNTk4OCwgMTU5OTQsIDE2MDAwLCAxNjAwNiwgMTYwMTIsIDE2MDE4LCAxNjAyNCwgCi0gICAgMTYwMzAsIDE2MDM2LCAxNjA0MiwgMTYwNDgsIDE2MDU0LCAxNjA2MCwgMTYwNjYsIDE2MDcyLCAxNjA3OCwgMTYwODQsIAotICAgIDE2MDkwLCAxNjA5NSwgMTYxMDEsIDE2MTA3LCAxNjExMSwgMTYxMTcsIDE2MTIxLCAxNjEyNywgMTYxMzMsIDE2MTM5LCAKLSAgICAxNjE0NSwgMTYxNTEsIDE2MTU3LCAxNjE2MiwgMTYxNjgsIDE2MTcyLCAxNjE3NywgMTYxODMsIDE2MTg5LCAxNjE5NSwgCi0gICAgMTYyMDAsIDE2MjA2LCAxNjIxMiwgMTYyMTgsIDE2MjIzLCAxNjIyOSwgMCwgMCwgMCwgMCwgMTYyMzMsIDE2MjM5LCAKLSAgICAxNjI0NCwgMTYyNTAsIDE2MjU1LCAxNjI2MywgMTYyNzEsIDE2Mjc1LCAxNjI3OSwgMTYyODMsIDE2Mjg5LCAxNjI5NSwgCi0gICAgMTYzMDEsIDE2MzA3LCAxNjMxMSwgMTYzMTUsIDE2MzE5LCAxNjMyMywgMTYzMjcsIDE2MzMwLCAxNjMzMywgMTYzMzYsIAotICAgIDE2MzM5LCAxNjM0MiwgMTYzNDUsIDE2MzQ4LCAxNjM1MSwgMTYzNTQsIDE2MzU4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAxNjM2MiwgMTYzNjcsIDAsIDE2Mzc0LCAwLCAwLCAxNjM4MSwgMTYzODYsIDAsIDE2MzkxLCAwLCAKLSAgICAwLCAxNjM5OCwgMCwgMCwgMCwgMCwgMCwgMCwgMTY0MDMsIDE2NDA4LCAxNjQxMiwgMTY0MTksIDAsIDE2NDI2LCAxNjQzMSwgCi0gICAgMTY0MzYsIDE2NDQxLCAxNjQ0OCwgMTY0NTUsIDE2NDYyLCAwLCAxNjQ2OSwgMTY0NzQsIDE2NDc5LCAwLCAxNjQ4NiwgMCwgCi0gICAgMTY0OTMsIDAsIDAsIDE2NDk4LCAxNjUwNSwgMCwgMTY1MTIsIDE2NTE2LCAxNjUyMywgMTY1MjcsIDE2NTMyLCAxNjU0MCwgCi0gICAgMTY1NDYsIDE2NTUyLCAxNjU1NywgMTY1NjMsIDE2NTY5LCAxNjU3NSwgMTY1ODAsIDAsIDE2NTg2LCAxNjU5NCwgMTY2MDEsIAotICAgIDAsIDAsIDE2NjA4LCAxNjYxMywgMTY2MTksIDE2NjI0LCAxNjYzMCwgMCwgMTY2MzYsIDAsIDE2NjQyLCAxNjY0OSwgCi0gICAgMTY2NTYsIDE2NjYzLCAxNjY3MCwgMTY2NzUsIDAsIDAsIDE2Njc5LCAxNjY4NCwgMTY2ODgsIDE2NjkyLCAxNjY5NiwgCi0gICAgMTY3MDAsIDE2NzA0LCAxNjcwOCwgMTY3MTIsIDE2NzE2LCAwLCAwLCAxNjcyMCwgMTY3MjYsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyMDIxLCAxMjAyNywgMTIwMzEsIAorICAgIDEyMDM1LCAxMjAzOSwgMTIwNDQsIDEyMDQ3LCAxMjA1MSwgMTIwNTQsIDEyMDU4LCAxMjA2MSwgMTIwNjUsIDEyMDY5LCAKKyAgICAxMjA3MywgMTIwNzgsIDEyMDgzLCAxMjA4NiwgMTIwOTAsIDEyMDk1LCAxMjEwMCwgMTIxMDMsIDEyMTA3LCAxMjExMCwgCisgICAgMTIxMTQsIDEyMTE4LCAxMjEyMiwgMTIxMjYsIDEyMTMwLCAxMjEzNCwgMTIxMzgsIDEyMTQyLCAxMjE0NiwgMTIxNTAsIAorICAgIDEyMTU0LCAxMjE1OCwgMTIxNjIsIDEyMTY2LCAxMjE3MCwgMTIxNzQsIDEyMTc4LCAxMjE4MiwgMTIxODUsIDEyMTg5LCAKKyAgICAxMjE5MiwgMTIxOTYsIDEyMjAwLCAxMjIwNCwgMTIyMDcsIDEyMjEwLCAxMjIxMywgMTIyMTcsIDEyMjIxLCAxMjIyNSwgCisgICAgMTIyMjksIDEyMjMzLCAxMjIzNywgMTIyNDEsIDEyMjQ1LCAxMjI0OCwgMTIyNTMsIDEyMjU4LCAxMjI2MiwgMTIyNjYsIAorICAgIDEyMjcxLCAxMjI3NSwgMTIyODAsIDEyMjg0LCAxMjI4OSwgMTIyOTQsIDEyMzAwLCAxMjMwNiwgMTIzMTIsIDEyMzE2LCAKKyAgICAxMjMyMSwgMTIzMjcsIDEyMzMzLCAxMjMzNywgMTIzNDIsIDEyMzQ2LCAxMjM1MiwgMTIzNTcsIDEyMzYwLCAxMjM2NiwgCisgICAgMTIzNzIsIDEyMzc3LCAxMjM4MiwgMTIzODksIDEyMzk0LCAxMjM5OSwgMTI0MDMsIDEyNDA3LCAxMjQxMSwgMTI0MTUsIAorICAgIDEyNDE5LCAxMjQyMywgMTI0MjcsIDEyNDMxLCAxMjQzNiwgMTI0NDEsIDEyNDQ2LCAxMjQ1MiwgMTI0NTUsIDEyNDU5LCAKKyAgICAxMjQ2MywgMTI0NjYsIDEyNDY5LCAxMjQ3MiwgMTI0NzUsIDEyNDc4LCAxMjQ4MSwgMTI0ODQsIDEyNDg3LCAxMjQ5MCwgCisgICAgMTI0OTQsIDEyNTAxLCAxMjUwNiwgMTI1MTAsIDEyNTE0LCAxMjUxOCwgMTI1MjIsIDAsIDEyNTI2LCAxMjUzMCwgMTI1MzQsIAorICAgIDEyNTM4LCAxMjU0MiwgMTI1NDgsIDEyNTUyLCAwLCAxMjU1NiwgMTI1NjAsIDEyNTY0LCAwLCAxMjU2OCwgMTI1NzEsIAorICAgIDEyNTc1LCAxMjU3OCwgMTI1ODIsIDEyNTg1LCAxMjU4OSwgMTI1OTMsIDAsIDAsIDEyNTk3LCAxMjYwMCwgMCwgMCwgCisgICAgMTI2MDQsIDEyNjA3LCAxMjYxMSwgMTI2MTQsIDEyNjE4LCAxMjYyMiwgMTI2MjYsIDEyNjMwLCAxMjYzNCwgMTI2MzgsIAorICAgIDEyNjQyLCAxMjY0NiwgMTI2NTAsIDEyNjU0LCAxMjY1OCwgMTI2NjIsIDEyNjY2LCAxMjY3MCwgMTI2NzQsIDEyNjc4LCAKKyAgICAxMjY4MiwgMTI2ODYsIDAsIDEyNjg5LCAxMjY5MiwgMTI2OTYsIDEyNzAwLCAxMjcwNCwgMTI3MDcsIDEyNzEwLCAwLCAKKyAgICAxMjcxMywgMCwgMCwgMCwgMTI3MTcsIDEyNzIxLCAxMjcyNSwgMTI3MjksIDAsIDAsIDEyNzMyLCAxMjczNiwgMTI3NDAsIAorICAgIDEyNzQ1LCAxMjc0OSwgMTI3NTQsIDEyNzU4LCAxMjc2MywgMTI3NjgsIDAsIDAsIDEyNzc0LCAxMjc3OCwgMCwgMCwgCisgICAgMTI3ODMsIDEyNzg3LCAxMjc5MiwgMTI3OTYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyODAyLCAwLCAwLCAwLCAwLCAKKyAgICAxMjgwOCwgMTI4MTIsIDAsIDEyODE2LCAxMjgyMCwgMTI4MjUsIDEyODMwLCAxMjgzNSwgMCwgMCwgMTI4NDEsIDEyODQ1LCAKKyAgICAxMjg0OCwgMTI4NTEsIDEyODU0LCAxMjg1NywgMTI4NjAsIDEyODYzLCAxMjg2NiwgMTI4NjksIDEyODcyLCAxMjg4MSwgCisgICAgMTI4OTAsIDEyODk0LCAxMjg5OCwgMTI5MDQsIDEyOTEwLCAxMjkxNiwgMTI5MjIsIDEyOTM2LCAxMjk0MywgMTI5NDYsIDAsIAorICAgIDAsIDAsIDAsIDAsIDEyOTUwLCAxMjk1NiwgMTI5NjAsIDAsIDEyOTY0LCAxMjk2NywgMTI5NzEsIDEyOTc0LCAxMjk3OCwgCisgICAgMTI5ODEsIDAsIDAsIDAsIDAsIDEyOTg1LCAxMjk4OSwgMCwgMCwgMTI5OTMsIDEyOTk3LCAxMzAwMSwgMTMwMDQsIDEzMDA4LCAKKyAgICAxMzAxMiwgMTMwMTYsIDEzMDIwLCAxMzAyNCwgMTMwMjgsIDEzMDMyLCAxMzAzNiwgMTMwNDAsIDEzMDQ0LCAxMzA0OCwgCisgICAgMTMwNTIsIDEzMDU2LCAxMzA2MCwgMTMwNjQsIDEzMDY4LCAxMzA3MiwgMTMwNzYsIDAsIDEzMDc5LCAxMzA4MiwgMTMwODYsIAorICAgIDEzMDkwLCAxMzA5NCwgMTMwOTcsIDEzMTAwLCAwLCAxMzEwMywgMTMxMDcsIDAsIDEzMTExLCAxMzExNSwgMCwgMTMxMTksIAorICAgIDEzMTIzLCAwLCAwLCAxMzEyNiwgMCwgMTMxMzAsIDEzMTM1LCAxMzEzOSwgMTMxNDQsIDEzMTQ4LCAwLCAwLCAwLCAwLCAKKyAgICAxMzE1MywgMTMxNTgsIDAsIDAsIDEzMTYzLCAxMzE2OCwgMTMxNzMsIDAsIDAsIDAsIDEzMTc3LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAxMzE4MSwgMTMxODUsIDEzMTg5LCAxMzE5MywgMCwgMTMxOTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzMjAxLCAKKyAgICAxMzIwNSwgMTMyMDgsIDEzMjExLCAxMzIxNCwgMTMyMTcsIDEzMjIwLCAxMzIyMywgMTMyMjYsIDEzMjI5LCAxMzIzMiwgCisgICAgMTMyMzUsIDEzMjM4LCAxMzI0MSwgMTMyNDQsIDEzMjQ5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAxMzI1MywgMTMyNTcsIDEzMjYxLCAwLCAxMzI2NSwgMTMyNjgsIDEzMjcyLCAxMzI3NSwgMTMyNzksIDEzMjgyLCAxMzI4NiwgCisgICAgMTMyOTAsIDEzMjk0LCAwLCAxMzI5OSwgMTMzMDIsIDEzMzA2LCAwLCAxMzMxMSwgMTMzMTQsIDEzMzE4LCAxMzMyMSwgCisgICAgMTMzMjUsIDEzMzI5LCAxMzMzMywgMTMzMzcsIDEzMzQxLCAxMzM0NSwgMTMzNDksIDEzMzUzLCAxMzM1NywgMTMzNjEsIAorICAgIDEzMzY1LCAxMzM2OSwgMTMzNzMsIDEzMzc3LCAxMzM4MSwgMTMzODUsIDEzMzg5LCAxMzM5MywgMCwgMTMzOTYsIDEzMzk5LCAKKyAgICAxMzQwMywgMTM0MDcsIDEzNDExLCAxMzQxNCwgMTM0MTcsIDAsIDEzNDIwLCAxMzQyNCwgMCwgMTM0MjgsIDEzNDMyLCAKKyAgICAxMzQzNiwgMTM0NDAsIDEzNDQ0LCAwLCAwLCAxMzQ0NywgMTM0NTEsIDEzNDU1LCAxMzQ2MCwgMTM0NjQsIDEzNDY5LCAKKyAgICAxMzQ3MywgMTM0NzgsIDEzNDgzLCAxMzQ4OSwgMCwgMTM0OTUsIDEzNDk5LCAxMzUwNCwgMCwgMTM1MTAsIDEzNTE0LCAKKyAgICAxMzUxOSwgMCwgMCwgMTM1MjMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzNTI2LCAKKyAgICAxMzUzMSwgMTM1MzYsIDEzNTQxLCAwLCAwLCAxMzU0NywgMTM1NTEsIDEzNTU0LCAxMzU1NywgMTM1NjAsIDEzNTYzLCAKKyAgICAxMzU2NiwgMTM1NjksIDEzNTcyLCAxMzU3NSwgMCwgMTM1NzgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDEzNTgyLCAxMzU4NiwgMTM1OTAsIDAsIDEzNTk0LCAxMzU5NywgMTM2MDEsIDEzNjA0LCAxMzYwOCwgCisgICAgMTM2MTEsIDEzNjE1LCAxMzYxOSwgMCwgMCwgMTM2MjMsIDEzNjI2LCAwLCAwLCAxMzYzMCwgMTM2MzMsIDEzNjM3LCAKKyAgICAxMzY0MCwgMTM2NDQsIDEzNjQ4LCAxMzY1MiwgMTM2NTYsIDEzNjYwLCAxMzY2NCwgMTM2NjgsIDEzNjcyLCAxMzY3NiwgCisgICAgMTM2ODAsIDEzNjg0LCAxMzY4OCwgMTM2OTIsIDEzNjk2LCAxMzcwMCwgMTM3MDQsIDEzNzA4LCAxMzcxMiwgMCwgMTM3MTUsIAorICAgIDEzNzE4LCAxMzcyMiwgMTM3MjYsIDEzNzMwLCAxMzczMywgMTM3MzYsIDAsIDEzNzM5LCAxMzc0MywgMCwgMTM3NDcsIAorICAgIDEzNzUxLCAxMzc1NSwgMTM3NTksIDEzNzYzLCAwLCAwLCAxMzc2NiwgMTM3NzAsIDEzNzc0LCAxMzc3OSwgMTM3ODMsIAorICAgIDEzNzg4LCAxMzc5MiwgMTM3OTcsIDEzODAyLCAwLCAwLCAxMzgwOCwgMTM4MTIsIDAsIDAsIDEzODE3LCAxMzgyMSwgCisgICAgMTM4MjYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzODMwLCAxMzgzNiwgMCwgMCwgMCwgMCwgMTM4NDIsIDEzODQ2LCAwLCAKKyAgICAxMzg1MCwgMTM4NTQsIDEzODU5LCAxMzg2NCwgMTM4NjksIDAsIDAsIDEzODc1LCAxMzg3OSwgMTM4ODIsIDEzODg1LCAKKyAgICAxMzg4OCwgMTM4OTEsIDEzODk0LCAxMzg5NywgMTM5MDAsIDEzOTAzLCAxMzkwNiwgMTM5MDksIDEzOTEzLCAxMzkxOSwgCisgICAgMTM5MjUsIDEzOTMxLCAxMzkzNywgMTM5NDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEzOTQ5LCAxMzk1MywgCisgICAgMCwgMTM5NTcsIDEzOTYwLCAxMzk2NCwgMTM5NjcsIDEzOTcxLCAxMzk3NCwgMCwgMCwgMCwgMTM5NzgsIDEzOTgxLCAKKyAgICAxMzk4NSwgMCwgMTM5ODksIDEzOTkyLCAxMzk5NiwgMTQwMDAsIDAsIDAsIDAsIDE0MDAzLCAxNDAwNywgMCwgMTQwMTEsIDAsIAorICAgIDE0MDE1LCAxNDAxOSwgMCwgMCwgMCwgMTQwMjMsIDE0MDI3LCAwLCAwLCAwLCAxNDAzMSwgMTQwMzQsIDE0MDM4LCAwLCAwLCAKKyAgICAwLCAxNDA0MSwgMTQwNDQsIDE0MDQ3LCAxNDA1MCwgMTQwNTQsIDE0MDU4LCAxNDA2MiwgMTQwNjYsIDE0MDcwLCAxNDA3NCwgCisgICAgMTQwNzgsIDE0MDgyLCAwLCAwLCAwLCAwLCAxNDA4NSwgMTQwOTAsIDE0MDk0LCAxNDA5OSwgMTQxMDMsIDAsIDAsIDAsIAorICAgIDE0MTA4LCAxNDExMiwgMTQxMTcsIDAsIDE0MTIyLCAxNDEyNiwgMTQxMzEsIDE0MTM2LCAwLCAwLCAxNDE0MCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMTQxNDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE0MTQ5LCAxNDE1MywgCisgICAgMTQxNTYsIDE0MTU5LCAxNDE2MiwgMTQxNjUsIDE0MTY4LCAxNDE3MSwgMTQxNzQsIDE0MTc3LCAxNDE4MCwgMTQxODQsIAorICAgIDE0MTg5LCAxNDE5NCwgMTQxOTgsIDE0MjAyLCAxNDIwNiwgMTQyMTAsIDE0MjE0LCAxNDIxOSwgMTQyMjMsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDE0MjI2LCAxNDIzMCwgMTQyMzQsIDAsIDE0MjM4LCAxNDI0MSwgMTQyNDUsIDE0MjQ4LCAxNDI1MiwgCisgICAgMTQyNTUsIDE0MjU5LCAxNDI2MywgMCwgMTQyNjcsIDE0MjcwLCAxNDI3NCwgMCwgMTQyNzgsIDE0MjgxLCAxNDI4NSwgCisgICAgMTQyODksIDE0MjkyLCAxNDI5NiwgMTQzMDAsIDE0MzA0LCAxNDMwOCwgMTQzMTIsIDE0MzE2LCAxNDMyMCwgMTQzMjQsIAorICAgIDE0MzI4LCAxNDMzMiwgMTQzMzYsIDE0MzQwLCAxNDM0NCwgMTQzNDgsIDE0MzUyLCAxNDM1NiwgMTQzNjAsIDE0MzY0LCAwLCAKKyAgICAxNDM2NywgMTQzNzAsIDE0Mzc0LCAxNDM3OCwgMTQzODIsIDE0Mzg1LCAxNDM4OCwgMTQzOTEsIDE0Mzk1LCAxNDM5OSwgMCwgCisgICAgMTQ0MDMsIDE0NDA3LCAxNDQxMSwgMTQ0MTUsIDE0NDE5LCAwLCAwLCAwLCAxNDQyMiwgMTQ0MjYsIDE0NDMxLCAxNDQzNSwgCisgICAgMTQ0NDAsIDE0NDQ0LCAxNDQ0OSwgMTQ0NTQsIDAsIDE0NDYwLCAxNDQ2NCwgMTQ0NjksIDAsIDE0NDc0LCAxNDQ3OCwgCisgICAgMTQ0ODMsIDE0NDg4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDQ5MiwgMTQ0OTYsIDAsIDE0NTAyLCAxNDUwNiwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMTQ1MTAsIDE0NTE1LCAxNDUyMCwgMTQ1MjUsIDAsIDAsIDE0NTMxLCAxNDUzNSwgMTQ1MzgsIDE0NTQxLCAKKyAgICAxNDU0NCwgMTQ1NDcsIDE0NTUwLCAxNDU1MywgMTQ1NTYsIDE0NTU5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDU2MiwgCisgICAgMTQ1NzUsIDE0NTg3LCAxNDU5OSwgMTQ2MTEsIDE0NjIzLCAxNDYzNSwgMTQ2NDcsIDAsIDAsIDE0NjUxLCAxNDY1NSwgMCwgCisgICAgMTQ2NTksIDE0NjYyLCAxNDY2NiwgMTQ2NjksIDE0NjczLCAxNDY3NiwgMTQ2ODAsIDE0Njg0LCAwLCAxNDY4OCwgMTQ2OTEsIAorICAgIDE0Njk1LCAwLCAxNDY5OSwgMTQ3MDIsIDE0NzA2LCAxNDcxMCwgMTQ3MTMsIDE0NzE3LCAxNDcyMSwgMTQ3MjUsIDE0NzI5LCAKKyAgICAxNDczMywgMTQ3MzcsIDE0NzQxLCAxNDc0NSwgMTQ3NDksIDE0NzUzLCAxNDc1NywgMTQ3NjEsIDE0NzY1LCAxNDc2OSwgCisgICAgMTQ3NzMsIDE0Nzc3LCAxNDc4MSwgMTQ3ODUsIDAsIDE0Nzg4LCAxNDc5MSwgMTQ3OTUsIDE0Nzk5LCAxNDgwMywgMTQ4MDYsIAorICAgIDE0ODA5LCAxNDgxMiwgMTQ4MTYsIDE0ODIwLCAwLCAxNDgyNCwgMTQ4MjgsIDE0ODMyLCAxNDgzNiwgMTQ4NDAsIDAsIDAsIAorICAgIDE0ODQzLCAxNDg0NywgMTQ4NTEsIDE0ODU2LCAxNDg2MCwgMTQ4NjUsIDE0ODY5LCAxNDg3NCwgMTQ4NzksIDAsIDE0ODg1LCAKKyAgICAxNDg4OSwgMTQ4OTQsIDAsIDE0ODk5LCAxNDkwMywgMTQ5MDgsIDE0OTEzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNDkxNywgCisgICAgMTQ5MjEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE0OTI3LCAwLCAxNDkzMSwgMTQ5MzYsIDE0OTQxLCAxNDk0NiwgMCwgMCwgCisgICAgMTQ5NTIsIDE0OTU2LCAxNDk1OSwgMTQ5NjIsIDE0OTY1LCAxNDk2OCwgMTQ5NzEsIDE0OTc0LCAxNDk3NywgMTQ5ODAsIDAsIAorICAgIDE0OTgzLCAxNDk4NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTQ5OTEsIDE0OTk1LCAKKyAgICAwLCAxNDk5OSwgMTUwMDIsIDE1MDA2LCAxNTAwOSwgMTUwMTMsIDE1MDE2LCAxNTAyMCwgMTUwMjQsIDAsIDE1MDI4LCAKKyAgICAxNTAzMSwgMTUwMzUsIDAsIDE1MDM5LCAxNTA0MiwgMTUwNDYsIDE1MDUwLCAxNTA1MywgMTUwNTcsIDE1MDYxLCAxNTA2NSwgCisgICAgMTUwNjksIDE1MDczLCAxNTA3NywgMTUwODEsIDE1MDg1LCAxNTA4OSwgMTUwOTMsIDE1MDk3LCAxNTEwMSwgMTUxMDUsIAorICAgIDE1MTA5LCAxNTExMywgMTUxMTcsIDE1MTIxLCAxNTEyNSwgMTUxMjgsIDE1MTMyLCAxNTEzNSwgMTUxMzksIDE1MTQzLCAKKyAgICAxNTE0NywgMTUxNTAsIDE1MTUzLCAxNTE1NiwgMTUxNjAsIDE1MTY0LCAxNTE2OCwgMTUxNzIsIDE1MTc2LCAxNTE4MCwgCisgICAgMTUxODQsIDE1MTg4LCAxNTE5MSwgMCwgMCwgMTUxOTUsIDE1MTk5LCAxNTIwNCwgMTUyMDgsIDE1MjEzLCAxNTIxNywgCisgICAgMTUyMjIsIDE1MjI3LCAwLCAxNTIzMywgMTUyMzcsIDE1MjQyLCAwLCAxNTI0NywgMTUyNTEsIDE1MjU2LCAxNTI2MSwgCisgICAgMTUyNjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE1MjcwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNTI3NiwgCisgICAgMTUyODEsIDE1Mjg2LCAxNTI5MSwgMCwgMCwgMTUyOTcsIDE1MzAxLCAxNTMwNCwgMTUzMDcsIDE1MzEwLCAxNTMxMywgCisgICAgMTUzMTYsIDE1MzE5LCAxNTMyMiwgMTUzMjUsIDE1MzI4LCAxNTMzMiwgMTUzMzcsIDE1MzQyLCAxNTM0OCwgMTUzNTQsIDAsIAorICAgIDAsIDAsIDE1MzYwLCAxNTM2NCwgMTUzNzAsIDE1Mzc1LCAxNTM4MSwgMTUzODYsIDE1MzkyLCAwLCAwLCAxNTM5OCwgCisgICAgMTU0MDIsIDAsIDE1NDA2LCAxNTQxMCwgMTU0MTQsIDE1NDE4LCAxNTQyMiwgMTU0MjYsIDE1NDMwLCAxNTQzNCwgMTU0MzgsIAorICAgIDE1NDQyLCAxNTQ0NiwgMTU0NTAsIDE1NDU0LCAxNTQ1OCwgMTU0NjIsIDE1NDY2LCAxNTQ3MCwgMTU0NzQsIDAsIDAsIDAsIAorICAgIDE1NDc4LCAxNTQ4NCwgMTU0OTAsIDE1NDk2LCAxNTUwMiwgMTU1MDgsIDE1NTE0LCAxNTUyMCwgMTU1MjYsIDE1NTMyLCAKKyAgICAxNTUzOCwgMTU1NDQsIDE1NTUyLCAxNTU1OCwgMTU1NjQsIDE1NTcwLCAxNTU3NiwgMTU1ODIsIDE1NTg4LCAxNTU5NCwgCisgICAgMTU2MDAsIDE1NjA2LCAxNTYxMiwgMTU2MTgsIDAsIDE1NjI0LCAxNTYzMCwgMTU2MzYsIDE1NjQyLCAxNTY0OCwgMTU2NTQsIAorICAgIDE1NjU4LCAxNTY2NCwgMTU2NjgsIDAsIDE1NjcyLCAwLCAwLCAxNTY3OCwgMTU2ODIsIDE1Njg4LCAxNTY5NCwgMTU3MDAsIAorICAgIDE1NzA0LCAxNTcxMCwgMCwgMCwgMCwgMTU3MTQsIDAsIDAsIDAsIDAsIDE1NzE4LCAxNTcyMywgMTU3MzAsIDE1NzM3LCAKKyAgICAxNTc0NCwgMTU3NTEsIDAsIDE1NzU4LCAwLCAxNTc2NSwgMTU3NzAsIDE1Nzc1LCAxNTc4MiwgMTU3ODksIDE1Nzk4LCAKKyAgICAxNTgwOSwgMTU4MTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDE1ODIzLCAxNTgzMCwgMTU4MzcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE1ODQyLCAxNTg0OCwgCisgICAgMTU4NTQsIDE1ODYwLCAxNTg2NiwgMTU4NzIsIDE1ODc4LCAxNTg4NCwgMTU4OTAsIDE1ODk2LCAxNTkwMiwgMTU5MDgsIAorICAgIDE1OTE0LCAxNTkyMCwgMTU5MjYsIDE1OTMyLCAxNTkzOCwgMTU5NDQsIDE1OTUwLCAxNTk1NiwgMTU5NjIsIDE1OTY4LCAKKyAgICAxNTk3NCwgMTU5ODAsIDE1OTg2LCAxNTk5MiwgMTU5OTgsIDE2MDA0LCAxNjAxMCwgMTYwMTYsIDE2MDIyLCAxNjAyOCwgCisgICAgMTYwMzQsIDE2MDM5LCAxNjA0NSwgMTYwNTEsIDE2MDU1LCAxNjA2MSwgMTYwNjUsIDE2MDcxLCAxNjA3NywgMTYwODMsIAorICAgIDE2MDg5LCAxNjA5NSwgMTYxMDEsIDE2MTA2LCAxNjExMiwgMTYxMTYsIDE2MTIxLCAxNjEyNywgMTYxMzMsIDE2MTM5LCAKKyAgICAxNjE0NCwgMTYxNTAsIDE2MTU2LCAxNjE2MiwgMTYxNjcsIDE2MTczLCAwLCAwLCAwLCAwLCAxNjE3NywgMTYxODMsIAorICAgIDE2MTg4LCAxNjE5NCwgMTYxOTksIDE2MjA3LCAxNjIxNSwgMTYyMTksIDE2MjIzLCAxNjIyNywgMTYyMzMsIDE2MjM5LCAKKyAgICAxNjI0NSwgMTYyNTEsIDE2MjU1LCAxNjI1OSwgMTYyNjMsIDE2MjY3LCAxNjI3MSwgMTYyNzQsIDE2Mjc3LCAxNjI4MCwgCisgICAgMTYyODMsIDE2Mjg2LCAxNjI4OSwgMTYyOTIsIDE2Mjk1LCAxNjI5OCwgMTYzMDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDE2NzMyLCAxNjczNiwgMTY3NDcsIDE2NzYyLCAxNjc3NywgMTY3ODcsIDE2Nzk4LCAxNjgxMSwgCi0gICAgMTY4MjIsIDE2ODI4LCAxNjgzNiwgMTY4NDYsIDE2ODUyLCAxNjg2MCwgMTY4NjQsIDE2ODcwLCAxNjg3NiwgMTY4ODQsIAotICAgIDE2ODk0LCAxNjkwMiwgMTY5MTUsIDE2OTIxLCAxNjkyOSwgMTY5MzcsIDE2OTQ5LCAxNjk1NiwgMTY5NjQsIDE2OTcyLCAKLSAgICAxNjk4MCwgMTY5ODgsIDE2OTk2LCAxNzAwNCwgMTcwMTQsIDE3MDE4LCAxNzAyMSwgMTcwMjQsIDE3MDI3LCAxNzAzMCwgCi0gICAgMTcwMzMsIDE3MDM2LCAxNzAzOSwgMTcwNDIsIDE3MDQ1LCAxNzA0OSwgMTcwNTMsIDE3MDU3LCAxNzA2MSwgMTcwNjUsIAotICAgIDE3MDY5LCAxNzA3MywgMTcwNzcsIDE3MDgxLCAxNzA4NiwgMTcwOTIsIDE3MTAyLCAxNzExNiwgMTcxMjYsIDE3MTMyLCAKLSAgICAxNzEzOCwgMTcxNDYsIDE3MTU0LCAxNzE2MiwgMTcxNzAsIDE3MTc2LCAxNzE4MiwgMTcxODUsIDE3MTg5LCAxNzE5MywgCi0gICAgMTcxOTcsIDE3MjAxLCAxNzIwNSwgMTcyMDksIDAsIDE3MjEzLCAxNzIxNywgMTcyMjEsIDE3MjI1LCAxNzIyOSwgMTcyMzMsIAotICAgIDE3MjM3LCAxNzI0MSwgMTcyNDUsIDE3MjQ5LCAxNzI1MywgMTcyNTYsIDE3MjU5LCAxNzI2MywgMTcyNjcsIDE3MjcxLCAKLSAgICAxNzI3NCwgMTcyNzgsIDE3MjgyLCAxNzI4NiwgMTcyOTAsIDE3Mjk0LCAxNzI5OCwgMTczMDIsIDE3MzA2LCAxNzMwOSwgCi0gICAgMTczMTIsIDE3MzE2LCAxNzMyMCwgMTczMjQsIDE3MzI4LCAxNzMzMSwgMTczMzQsIDE3MzM4LCAxNzM0MywgMTczNDcsIDAsIAotICAgIDAsIDAsIDAsIDE3MzUxLCAxNzM1NiwgMTczNjAsIDE3MzY1LCAxNzM2OSwgMTczNzQsIDE3Mzc5LCAxNzM4NSwgMTczOTAsIAotICAgIDE3Mzk2LCAxNzQwMCwgMTc0MDUsIDE3NDA5LCAxNzQxNCwgMTc0MjQsIDE3NDMwLCAxNzQzNiwgMTc0NDMsIDE3NDUzLCAKLSAgICAxNzQ1OSwgMTc0NjMsIDE3NDY3LCAxNzQ3MywgMTc0NzksIDE3NDg3LCAxNzQ5MywgMTc1MDEsIDE3NTA5LCAxNzUxNywgCi0gICAgMTc1MjcsIDE3NTM1LCAxNzU0NSwgMTc1NTAsIDE3NTU2LCAxNzU2MiwgMTc1NjgsIDE3NTc0LCAxNzU4MCwgMTc1ODYsIDAsIAotICAgIDE3NTkyLCAxNzU5OCwgMTc2MDQsIDE3NjEwLCAxNzYxNiwgMTc2MjIsIDE3NjI4LCAxNzYzNCwgMTc2NDAsIDE3NjQ2LCAKLSAgICAxNzY1MiwgMTc2NTcsIDE3NjYyLCAxNzY2OCwgMTc2NzQsIDE3NjgwLCAxNzY4NSwgMTc2OTEsIDE3Njk3LCAxNzcwMywgCi0gICAgMTc3MDksIDE3NzE1LCAxNzcyMSwgMTc3MjcsIDE3NzMzLCAxNzczOCwgMTc3NDMsIDE3NzQ5LCAxNzc1NSwgMTc3NjEsIAotICAgIDE3NzY3LCAxNzc3MiwgMTc3NzcsIDE3NzgzLCAxNzc5MSwgMTc3OTgsIDAsIDE3ODA1LCAxNzgxMiwgMTc4MjUsIDE3ODMyLCAKLSAgICAxNzgzOSwgMTc4NDcsIDE3ODU1LCAxNzg2MSwgMTc4NjcsIDE3ODczLCAxNzg4MywgMTc4ODgsIDE3ODk0LCAxNzkwNCwgCi0gICAgMTc5MTQsIDAsIDE3OTI0LCAxNzkzNCwgMTc5NDIsIDE3OTU0LCAxNzk2NiwgMTc5NzIsIDE3OTg2LCAxODAwMSwgMTgwMDYsIAotICAgIDE4MDExLCAxODAxOSwgMTgwMjcsIDE4MDM1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxODA0MywgCi0gICAgMTgwNDYsIDE4MDUwLCAxODA1NCwgMTgwNTgsIDE4MDYyLCAxODA2NiwgMTgwNzAsIDE4MDc0LCAxODA3OCwgMTgwODIsIAotICAgIDE4MDg2LCAxODA5MCwgMTgwOTQsIDE4MDk4LCAxODEwMiwgMTgxMDYsIDE4MTEwLCAxODExNCwgMTgxMTgsIDE4MTIyLCAKLSAgICAxODEyNSwgMTgxMjgsIDE4MTMyLCAxODEzNiwgMTgxNDAsIDE4MTQzLCAxODE0NiwgMTgxNDksIDE4MTUzLCAxODE1NywgCi0gICAgMTgxNjEsIDE4MTY0LCAxODE2OCwgMTgxNzEsIDE4MTc2LCAxODE3OSwgMTgxODMsIDE4MTg2LCAxODE5MCwgMTgxOTMsIAotICAgIDE4MTk4LCAxODIwMSwgMTgyMDUsIDE4MjEyLCAxODIxNywgMTgyMjEsIDE4MjI2LCAxODIzMCwgMTgyMzUsIDE4MjM5LCAKLSAgICAxODI0NCwgMTgyNTEsIDE4MjU3LCAxODI2MiwgMTgyNjYsIDE4MjcwLCAxODI3NCwgMTgyNzgsIDE4MjgyLCAxODI4OCwgCi0gICAgMTgyOTQsIDE4MzAxLCAxODMwNywgMTgzMTMsIDE4MzE3LCAxODMyMCwgMTgzMjMsIDE4MzI2LCAxODMyOSwgMTgzMzIsIAotICAgIDE4MzM1LCAxODMzOCwgMTgzNDEsIDE4MzQ0LCAxODM1MCwgMTgzNTQsIDE4MzU4LCAxODM2MiwgMTgzNjYsIDE4MzcwLCAKLSAgICAxODM3NCwgMTgzNzgsIDE4MzgyLCAxODM4NywgMTgzOTEsIDE4Mzk2LCAxODQwMSwgMTg0MDcsIDE4NDEyLCAxODQxOCwgCi0gICAgMTg0MjQsIDE4NDMwLCAxODQzNiwgMTg0NDIsIDE4NDUwLCAxODQ1OCwgMTg0NjcsIDE4NDc1LCAxODQ4NCwgMTg0OTMsIAotICAgIDE4NTA0LCAxODUxNCwgMTg1MjQsIDE4NTM1LCAxODU0NiwgMTg1NTYsIDE4NTY2LCAxODU3NiwgMTg1ODYsIDE4NTk2LCAKLSAgICAxODYwNiwgMTg2MTYsIDE4NjI2LCAxODYzNCwgMTg2NDEsIDE4NjQ3LCAxODY1NCwgMTg2NTksIDE4NjY1LCAxODY3MSwgCi0gICAgMTg2NzcsIDE4NjgzLCAxODY4OSwgMTg2OTUsIDE4NzAwLCAxODcwNiwgMTg3MTIsIDE4NzE4LCAxODcyNCwgMTg3MjksIAotICAgIDE4NzM4LCAxODc0NSwgMTg3NTEsIDE4NzU4LCAxODc2NiwgMTg3NzIsIDE4Nzc4LCAxODc4NCwgMTg3OTAsIDE4Nzk4LCAKLSAgICAxODgwNiwgMTg4MTYsIDE4ODI0LCAxODgzMiwgMTg4MzgsIDE4ODQzLCAxODg0OCwgMTg4NTMsIDE4ODU4LCAxODg2MywgCi0gICAgMTg4NjgsIDE4ODczLCAxODg3OCwgMTg4ODMsIDE4ODg5LCAxODg5NSwgMTg5MDEsIDE4OTA4LCAxODkxMywgMTg5MTksIAotICAgIDE4OTI0LCAxODkyOSwgMTg5MzQsIDE4OTM5LCAxODk0NCwgMTg5NDksIDE4OTU0LCAxODk1OSwgMTg5NjQsIDE4OTY5LCAKLSAgICAxODk3NCwgMTg5NzksIDE4OTg0LCAxODk4OSwgMTg5OTQsIDE4OTk5LCAxOTAwNCwgMTkwMDksIDE5MDE0LCAxOTAxOSwgCi0gICAgMTkwMjQsIDE5MDI5LCAxOTAzNCwgMTkwMzksIDE5MDQ0LCAxOTA0OSwgMTkwNTQsIDE5MDU5LCAxOTA2NCwgMTkwNjksIAotICAgIDE5MDc0LCAxOTA3OSwgMTkwODQsIDE5MDg5LCAxOTA5NCwgMTkwOTksIDE5MTA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAxOTEwOSwgMTkxMTMsIDE5MTE3LCAxOTEyMSwgMTkxMjUsIDE5MTI5LCAxOTEzMywgMTkxMzcsIDE5MTQxLCAKLSAgICAxOTE0NSwgMTkxNDksIDE5MTUzLCAxOTE1NywgMTkxNjEsIDE5MTY1LCAxOTE2OSwgMTkxNzMsIDE5MTc3LCAxOTE4MSwgCi0gICAgMTkxODUsIDE5MTg5LCAxOTE5MywgMTkxOTcsIDE5MjAxLCAxOTIwNSwgMTkyMDksIDE5MjEzLCAxOTIxNywgMTkyMjEsIAotICAgIDE5MjI1LCAxOTIyOSwgMTkyMzMsIDE5MjM3LCAxOTI0MSwgMTkyNDUsIDE5MjQ5LCAxOTI1MywgMTkyNTcsIDE5MjYxLCAKLSAgICAxOTI2NSwgMTkyNjksIDE5MjczLCAxOTI3OSwgMTkyODMsIDE5Mjg4LCAwLCAwLCAwLCAxOTI5MywgMTkyOTcsIDE5MzAxLCAKLSAgICAxOTMwNSwgMTkzMDksIDE5MzEzLCAxOTMxNywgMTkzMjEsIDE5MzI1LCAxOTMyOSwgMTkzMzMsIDE5MzM3LCAxOTM0MSwgCi0gICAgMTkzNDUsIDE5MzQ5LCAxOTM1MywgMTkzNTcsIDE5MzYxLCAxOTM2NSwgMTkzNjksIDE5MzczLCAxOTM3NywgMTkzODEsIAotICAgIDE5Mzg1LCAxOTM4OSwgMTkzOTMsIDE5Mzk3LCAxOTQwMSwgMTk0MDUsIDE5NDA5LCAxOTQxMywgMTk0MTcsIDE5NDIxLCAKLSAgICAxOTQyNSwgMTk0MjksIDE5NDMzLCAxOTQzNywgMTk0NDEsIDE5NDQ1LCAxOTQ0OSwgMTk0NTMsIDE5NDU3LCAxOTQ2MSwgCi0gICAgMTk0NjUsIDE5NDY5LCAxOTQ3MywgMTk0NzcsIDE5NDgxLCAxOTQ4NSwgMTk0ODksIDE5NDkzLCAxOTQ5NywgMTk1MDEsIAotICAgIDE5NTA1LCAxOTUwOSwgMTk1MTMsIDE5NTE3LCAxOTUyMSwgMTk1MjUsIDE5NTI5LCAxOTUzMywgMTk1MzcsIDE5NTQxLCAKLSAgICAxOTU0NSwgMTk1NDksIDE5NTUzLCAxOTU1NywgMTk1NjEsIDE5NTY1LCAxOTU2OSwgMTk1NzMsIDE5NTc3LCAxOTU4MSwgCi0gICAgMTk1ODUsIDE5NTg5LCAxOTU5MywgMTk1OTcsIDE5NjAxLCAxOTYwNSwgMTk2MDksIDE5NjEzLCAxOTYxNywgMTk2MjEsIAotICAgIDE5NjI1LCAxOTYyOSwgMTk2MzMsIDE5NjM3LCAxOTY0MSwgMTk2NDUsIDE5NjQ5LCAxOTY1MywgMTk2NTcsIDE5NjYxLCAKLSAgICAxOTY2NSwgMTk2NjksIDE5NjczLCAxOTY3NywgMTk2ODEsIDE5Njg0LCAxOTY4OCwgMTk2OTEsIDE5Njk1LCAxOTY5OSwgCi0gICAgMTk3MDIsIDE5NzA2LCAxOTcxMCwgMTk3MTMsIDE5NzE3LCAxOTcyMSwgMTk3MjUsIDE5NzI5LCAxOTczMiwgMTk3MzYsIAotICAgIDE5NzQwLCAxOTc0NCwgMTk3NDgsIDE5NzUyLCAxOTc1NiwgMTk3NTksIDE5NzYzLCAxOTc2NywgMTk3NzEsIDE5Nzc1LCAKLSAgICAxOTc3OSwgMTk3ODMsIDE5Nzg3LCAxOTc5MSwgMTk3OTUsIDE5Nzk5LCAxOTgwMywgMTk4MDcsIDE5ODExLCAxOTgxNSwgCi0gICAgMTk4MTksIDE5ODIzLCAxOTgyNywgMTk4MzEsIDE5ODM1LCAxOTgzOSwgMTk4NDMsIDE5ODQ3LCAxOTg1MSwgMTk4NTUsIAotICAgIDE5ODU5LCAxOTg2MywgMTk4NjcsIDE5ODcxLCAxOTg3NSwgMTk4NzksIDE5ODgzLCAxOTg4NywgMTk4OTEsIDE5ODk1LCAKLSAgICAxOTg5OSwgMTk5MDMsIDE5OTA3LCAxOTkxMSwgMTk5MTUsIDE5OTE5LCAxOTkyMywgMTk5MjcsIDE5OTMxLCAxOTkzNSwgCi0gICAgMTk5MzksIDE5OTQzLCAxOTk0NywgMTk5NTEsIDE5OTU1LCAxOTk1OSwgMTk5NjMsIDE5OTY3LCAxOTk3MSwgMTk5NzUsIAotICAgIDE5OTc5LCAxOTk4MywgMTk5ODcsIDE5OTkxLCAxOTk5NSwgMTk5OTksIDIwMDAzLCAyMDAwNywgMjAwMTEsIDIwMDE1LCAKLSAgICAyMDAxOSwgMjAwMjMsIDIwMDI3LCAyMDAzMSwgMjAwMzUsIDIwMDM5LCAyMDA0MywgMjAwNDcsIDIwMDUxLCAyMDA1NSwgCi0gICAgMjAwNTksIDIwMDYzLCAyMDA2NywgMjAwNzEsIDIwMDc1LCAyMDA3OSwgMjAwODMsIDIwMDg3LCAyMDA5MSwgMjAwOTUsIAotICAgIDIwMDk5LCAyMDEwMywgMjAxMDcsIDIwMTExLCAyMDExNSwgMjAxMTksIDIwMTIzLCAyMDEyNywgMjAxMzEsIDIwMTM1LCAKLSAgICAyMDEzOSwgMjAxNDMsIDIwMTQ3LCAyMDE1MSwgMjAxNTUsIDIwMTU5LCAyMDE2MywgMjAxNjcsIDIwMTcxLCAyMDE3NSwgCi0gICAgMjAxNzksIDIwMTgzLCAyMDE4NywgMjAxOTEsIDIwMTk1LCAyMDE5OSwgMjAyMDMsIDIwMjA3LCAyMDIxMSwgMjAyMTUsIAotICAgIDIwMjE5LCAyMDIyMywgMjAyMjcsIDIwMjMxLCAyMDIzNSwgMjAyMzksIDIwMjQzLCAyMDI0NywgMjAyNTEsIDIwMjU1LCAKLSAgICAyMDI1OSwgMjAyNjMsIDIwMjY3LCAyMDI3MSwgMjAyNzUsIDIwMjc5LCAyMDI4MywgMjAyODcsIDIwMjkxLCAyMDI5NSwgCi0gICAgMjAyOTksIDIwMzAzLCAyMDMwNywgMjAzMTEsIDIwMzE0LCAyMDMxOCwgMjAzMjIsIDIwMzI2LCAyMDMzMCwgMjAzMzQsIAotICAgIDIwMzM4LCAyMDM0MiwgMjAzNDYsIDIwMzUwLCAyMDM1NCwgMjAzNTgsIDIwMzYyLCAyMDM2NiwgMjAzNzAsIDIwMzc0LCAKLSAgICAyMDM3OCwgMjAzODIsIDIwMzg2LCAyMDM5MCwgMjAzOTQsIDIwMzk4LCAyMDQwMiwgMjA0MDYsIDIwNDA5LCAyMDQxMywgCi0gICAgMjA0MTcsIDIwNDIxLCAyMDQyNSwgMjA0MjksIDIwNDMzLCAyMDQzNywgMjA0NDEsIDIwNDQ1LCAyMDQ0OSwgMjA0NTMsIAotICAgIDIwNDU3LCAyMDQ2MSwgMjA0NjUsIDIwNDY5LCAyMDQ3MiwgMjA0NzYsIDIwNDgwLCAyMDQ4NCwgMjA0ODgsIDIwNDkyLCAKLSAgICAyMDQ5NiwgMjA1MDAsIDIwNTA0LCAyMDUwOCwgMjA1MTIsIDIwNTE2LCAyMDUyMCwgMjA1MjQsIDIwNTI4LCAyMDUzMiwgCi0gICAgMjA1MzYsIDIwNTQwLCAyMDU0NCwgMjA1NDgsIDIwNTUyLCAyMDU1NiwgMjA1NjAsIDIwNTY0LCAyMDU2OCwgMjA1NzIsIAotICAgIDIwNTc2LCAyMDU4MCwgMjA1ODQsIDIwNTg4LCAyMDU5MiwgMjA1OTYsIDAsIDIwNjAwLCAyMDYwNCwgMjA2MDgsIDIwNjEyLCAKLSAgICAwLCAwLCAyMDYxNiwgMjA2MjAsIDIwNjI0LCAyMDYyOCwgMjA2MzIsIDIwNjM2LCAyMDY0MCwgMCwgMjA2NDQsIDAsIAotICAgIDIwNjQ4LCAyMDY1MiwgMjA2NTYsIDIwNjYwLCAwLCAwLCAyMDY2NCwgMjA2NjgsIDIwNjcyLCAyMDY3NiwgMjA2ODAsIAotICAgIDIwNjg0LCAyMDY4OCwgMjA2OTIsIDIwNjk2LCAyMDcwMCwgMjA3MDQsIDIwNzA4LCAyMDcxMiwgMjA3MTYsIDIwNzIwLCAKLSAgICAyMDcyNCwgMjA3MjgsIDIwNzMyLCAyMDczNiwgMjA3NDAsIDIwNzQ0LCAyMDc0OCwgMjA3NTIsIDIwNzU1LCAyMDc1OSwgCi0gICAgMjA3NjMsIDIwNzY3LCAyMDc3MSwgMjA3NzUsIDIwNzc5LCAyMDc4MywgMjA3ODcsIDIwNzkxLCAyMDc5NSwgMjA3OTksIAotICAgIDIwODAzLCAyMDgwNywgMjA4MTEsIDIwODE1LCAyMDgxOSwgMjA4MjMsIDAsIDIwODI3LCAyMDgzMSwgMjA4MzUsIDIwODM5LCAKLSAgICAwLCAwLCAyMDg0MywgMjA4NDYsIDIwODUwLCAyMDg1NCwgMjA4NTgsIDIwODYyLCAyMDg2NiwgMjA4NzAsIDIwODc0LCAKLSAgICAyMDg3OCwgMjA4ODIsIDIwODg2LCAyMDg5MCwgMjA4OTQsIDIwODk4LCAyMDkwMiwgMjA5MDYsIDIwOTExLCAyMDkxNiwgCi0gICAgMjA5MjEsIDIwOTI3LCAyMDkzMywgMjA5MzgsIDIwOTQzLCAyMDk0OSwgMjA5NTIsIDIwOTU2LCAyMDk2MCwgMjA5NjQsIAotICAgIDIwOTY4LCAyMDk3MiwgMjA5NzYsIDIwOTgwLCAwLCAyMDk4NCwgMjA5ODgsIDIwOTkyLCAyMDk5NiwgMCwgMCwgMjEwMDAsIAotICAgIDIxMDA0LCAyMTAwOCwgMjEwMTIsIDIxMDE2LCAyMTAyMCwgMjEwMjQsIDAsIDIxMDI4LCAwLCAyMTAzMiwgMjEwMzYsIAotICAgIDIxMDQwLCAyMTA0NCwgMCwgMCwgMjEwNDgsIDIxMDUyLCAyMTA1NiwgMjEwNjAsIDIxMDY0LCAyMTA2OCwgMjEwNzIsIAotICAgIDIxMDc2LCAyMTA4MCwgMjEwODUsIDIxMDkwLCAyMTA5NSwgMjExMDEsIDIxMTA3LCAyMTExMiwgMCwgMjExMTcsIDIxMTIxLCAKLSAgICAyMTEyNSwgMjExMjksIDIxMTMzLCAyMTEzNywgMjExNDEsIDIxMTQ1LCAyMTE0OSwgMjExNTMsIDIxMTU3LCAyMTE2MSwgCi0gICAgMjExNjUsIDIxMTY5LCAyMTE3MywgMjExNzcsIDIxMTgxLCAyMTE4NCwgMjExODgsIDIxMTkyLCAyMTE5NiwgMjEyMDAsIAotICAgIDIxMjA0LCAyMTIwOCwgMjEyMTIsIDIxMjE2LCAyMTIyMCwgMjEyMjQsIDIxMjI4LCAyMTIzMiwgMjEyMzYsIDIxMjQwLCAKLSAgICAyMTI0NCwgMjEyNDgsIDIxMjUyLCAyMTI1NiwgMjEyNjAsIDIxMjY0LCAyMTI2OCwgMjEyNzIsIDIxMjc2LCAyMTI4MCwgCi0gICAgMjEyODQsIDIxMjg4LCAyMTI5MiwgMjEyOTYsIDIxMzAwLCAyMTMwNCwgMjEzMDgsIDIxMzEyLCAyMTMxNiwgMjEzMjAsIAotICAgIDIxMzI0LCAyMTMyOCwgMjEzMzIsIDIxMzM2LCAyMTM0MCwgMCwgMjEzNDQsIDIxMzQ4LCAyMTM1MiwgMjEzNTYsIDAsIDAsIAotICAgIDIxMzYwLCAyMTM2NCwgMjEzNjgsIDIxMzcyLCAyMTM3NiwgMjEzODAsIDIxMzg0LCAyMTM4OCwgMjEzOTIsIDIxMzk2LCAKLSAgICAyMTQwMCwgMjE0MDQsIDIxNDA4LCAyMTQxMiwgMjE0MTYsIDIxNDIwLCAyMTQyNCwgMjE0MjgsIDIxNDMyLCAyMTQzNiwgCi0gICAgMjE0NDAsIDIxNDQ0LCAyMTQ0OCwgMjE0NTIsIDIxNDU2LCAyMTQ2MCwgMjE0NjQsIDIxNDY4LCAyMTQ3MiwgMjE0NzYsIAotICAgIDIxNDgwLCAyMTQ4NCwgMjE0ODgsIDIxNDkyLCAyMTQ5NiwgMjE1MDAsIDIxNTA0LCAyMTUwOCwgMjE1MTIsIDIxNTE2LCAKLSAgICAyMTUyMCwgMjE1MjQsIDIxNTI4LCAyMTUzMiwgMjE1MzYsIDIxNTQwLCAyMTU0NCwgMjE1NDgsIDIxNTUyLCAyMTU1NiwgCi0gICAgMjE1NjAsIDIxNTY0LCAyMTU2OCwgMjE1NzIsIDIxNTc2LCAyMTU4MCwgMjE1ODQsIDIxNTg3LCAyMTU5MSwgMjE1OTUsIAotICAgIDIxNTk5LCAyMTYwMywgMjE2MDcsIDIxNjExLCAyMTYxNSwgMjE2MTksIDIxNjIzLCAwLCAwLCAyMTYyNywgMjE2MzYsIAotICAgIDIxNjQyLCAyMTY0NywgMjE2NTEsIDIxNjU0LCAyMTY1OSwgMjE2NjIsIDIxNjY1LCAyMTY2OCwgMjE2NzMsIDIxNjc3LCAKLSAgICAyMTY4MiwgMjE2ODUsIDIxNjg4LCAyMTY5MSwgMjE2OTQsIDIxNjk3LCAyMTcwMCwgMjE3MDMsIDIxNzA2LCAyMTcwOSwgCi0gICAgMjE3MTMsIDIxNzE3LCAyMTcyMSwgMjE3MjUsIDIxNzI5LCAyMTczMywgMjE3MzcsIDIxNzQxLCAyMTc0NSwgMjE3NDksIDAsIAotICAgIDAsIDAsIDIxNzU1LCAyMTc2MSwgMjE3NjUsIDIxNzY5LCAyMTc3MywgMjE3NzksIDIxNzgzLCAyMTc4NywgMjE3OTEsIAotICAgIDIxNzk3LCAyMTgwMSwgMjE4MDUsIDIxODA5LCAyMTgxNSwgMjE4MTksIDIxODIzLCAyMTgyNywgMjE4MzMsIDIxODM5LCAKLSAgICAyMTg0NSwgMjE4NTMsIDIxODU5LCAyMTg2NSwgMjE4NzEsIDIxODc3LCAyMTg4MywgMCwgMCwgMCwgMCwgMCwgMCwgMjE4ODksIAotICAgIDIxODkyLCAyMTg5NSwgMjE4OTgsIDIxOTAxLCAyMTkwNCwgMjE5MDgsIDIxOTEyLCAyMTkxNSwgMjE5MTksIDIxOTIzLCAKLSAgICAyMTkyNywgMjE5MzEsIDIxOTM1LCAyMTkzOCwgMjE5NDIsIDIxOTQ2LCAyMTk1MCwgMjE5NTQsIDIxOTU4LCAyMTk2MiwgCi0gICAgMjE5NjYsIDIxOTcwLCAyMTk3NCwgMjE5NzgsIDIxOTgyLCAyMTk4NSwgMjE5ODksIDIxOTkzLCAyMTk5NywgMjIwMDEsIAotICAgIDIyMDA0LCAyMjAwOCwgMjIwMTIsIDIyMDE2LCAyMjAyMCwgMjIwMjQsIDIyMDI4LCAyMjAzMiwgMjIwMzYsIDIyMDQwLCAKLSAgICAyMjA0NCwgMjIwNDgsIDIyMDUyLCAyMjA1NiwgMjIwNjAsIDIyMDYzLCAyMjA2NywgMjIwNzEsIDIyMDc1LCAyMjA3OSwgCi0gICAgMjIwODMsIDIyMDg3LCAyMjA5MSwgMjIwOTUsIDIyMDk5LCAyMjEwMywgMjIxMDcsIDIyMTExLCAyMjExNSwgMjIxMTksIAotICAgIDIyMTIzLCAyMjEyNywgMjIxMzEsIDIyMTM1LCAyMjEzOSwgMjIxNDMsIDIyMTQ3LCAyMjE1MSwgMjIxNTUsIDIyMTU5LCAKLSAgICAyMjE2MywgMjIxNjcsIDIyMTcxLCAyMjE3NSwgMjIxNzksIDIyMTgzLCAyMjE4NywgMjIxOTEsIDIyMTk1LCAyMjE5OCwgCi0gICAgMjIyMDIsIDIyMjA2LCAyMjIxMCwgMjIyMTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIyMjE4LCAKLSAgICAyMjIyMiwgMjIyMjUsIDIyMjI5LCAyMjIzMiwgMjIyMzYsIDIyMjM5LCAyMjI0MywgMjIyNDksIDIyMjU0LCAyMjI1OCwgCi0gICAgMjIyNjEsIDIyMjY1LCAyMjI2OSwgMjIyNzQsIDIyMjc4LCAyMjI4MywgMjIyODcsIDIyMjkyLCAyMjI5NiwgMjIzMDEsIAotICAgIDIyMzA1LCAyMjMxMCwgMjIzMTYsIDIyMzIwLCAyMjMyNSwgMjIzMjksIDIyMzM0LCAyMjM0MCwgMjIzNDQsIDIyMzUwLCAKLSAgICAyMjM1NiwgMjIzNjAsIDIyMzY1LCAyMjM3MywgMjIzODEsIDIyMzg4LCAyMjM5MywgMjIzOTgsIDIyNDA3LCAyMjQxNCwgCi0gICAgMjI0MjEsIDIyNDI2LCAyMjQzMiwgMjI0MzYsIDIyNDQwLCAyMjQ0NCwgMjI0NDgsIDIyNDUyLCAyMjQ1NiwgMjI0NjAsIAotICAgIDIyNDY0LCAyMjQ2OCwgMjI0NzIsIDIyNDc4LCAyMjQ4MywgMjI0ODgsIDIyNDkxLCAyMjQ5NSwgMjI0OTksIDIyNTA0LCAKLSAgICAyMjUwOCwgMjI1MTMsIDIyNTE3LCAyMjUyMiwgMjI1MjYsIDIyNTMxLCAyMjUzNSwgMjI1NDAsIDIyNTQ0LCAyMjU0OSwgCi0gICAgMjI1NTMsIDIyNTU4LCAyMjU2NCwgMjI1NjgsIDIyNTczLCAyMjU3OCwgMjI1ODIsIDIyNTg2LCAyMjU5MCwgMjI1OTQsIAotICAgIDIyNTk3LCAyMjYwMSwgMjI2MDcsIDIyNjEyLCAyMjYxNywgMjI2MjEsIDIyNjI1LCAyMjYyOSwgMjI2MzQsIDIyNjM4LCAKLSAgICAyMjY0MywgMjI2NDcsIDIyNjUyLCAyMjY1NSwgMjI2NTksIDIyNjYzLCAyMjY2OCwgMjI2NzIsIDIyNjc3LCAyMjY4MSwgCi0gICAgMjI2ODYsIDIyNjkyLCAyMjY5NiwgMjI3MDAsIDIyNzA0LCAyMjcwOCwgMjI3MTIsIDIyNzE2LCAyMjcyMCwgMjI3MjQsIAotICAgIDIyNzI4LCAyMjczMiwgMjI3MzYsIDIyNzQyLCAyMjc0NSwgMjI3NDksIDIyNzUzLCAyMjc1OCwgMjI3NjIsIDIyNzY3LCAKLSAgICAyMjc3MSwgMjI3NzYsIDIyNzgwLCAyMjc4NSwgMjI3ODksIDIyNzk0LCAyMjc5OCwgMjI4MDMsIDIyODA3LCAyMjgxMiwgCi0gICAgMjI4MTgsIDIyODIyLCAyMjgyNiwgMjI4MzIsIDIyODM4LCAyMjg0NCwgMjI4NTAsIDIyODU0LCAyMjg1OCwgMjI4NjIsIAotICAgIDIyODY2LCAyMjg3MCwgMjI4NzQsIDIyODgwLCAyMjg4NCwgMjI4ODgsIDIyODkyLCAyMjg5NywgMjI5MDEsIDIyOTA2LCAKLSAgICAyMjkxMCwgMjI5MTUsIDIyOTE5LCAyMjkyNCwgMjI5MjgsIDIyOTMzLCAyMjkzNywgMjI5NDIsIDIyOTQ2LCAyMjk1MSwgCi0gICAgMjI5NTcsIDIyOTYxLCAyMjk2NywgMjI5NzEsIDIyOTc1LCAyMjk3OSwgMjI5ODMsIDIyOTg3LCAyMjk5MSwgMjI5OTcsIAotICAgIDIzMDAwLCAyMzAwNCwgMjMwMDgsIDIzMDEzLCAyMzAxNywgMjMwMjIsIDIzMDI2LCAyMzAzMSwgMjMwMzUsIDIzMDQwLCAKLSAgICAyMzA0NCwgMjMwNDksIDIzMDUzLCAyMzA1OCwgMjMwNjIsIDIzMDY3LCAyMzA3MywgMjMwNzYsIDIzMDgwLCAyMzA4NCwgCi0gICAgMjMwODksIDIzMDk0LCAyMzA5OCwgMjMxMDIsIDIzMTA2LCAyMzExMCwgMjMxMTQsIDIzMTE4LCAyMzEyNCwgMjMxMjcsIAotICAgIDIzMTMxLCAyMzEzNSwgMjMxNDAsIDIzMTQ0LCAyMzE0OSwgMjMxNTMsIDIzMTU4LCAyMzE2NCwgMjMxNjcsIDIzMTcyLCAKLSAgICAyMzE3NiwgMjMxODAsIDIzMTg0LCAyMzE4OCwgMjMxOTIsIDIzMTk2LCAyMzIwMCwgMjMyMDYsIDIzMjEwLCAyMzIxNCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMTYzMDYsIDE2MzEwLCAwLCAxNjMxNiwgMCwgMCwgMTYzMjIsIDE2MzI2LCAwLCAxNjMzMCwgMCwgCisgICAgMCwgMTYzMzYsIDAsIDAsIDAsIDAsIDAsIDAsIDE2MzQwLCAxNjM0NCwgMTYzNDcsIDE2MzUzLCAwLCAxNjM1OSwgMTYzNjMsIAorICAgIDE2MzY3LCAxNjM3MSwgMTYzNzcsIDE2MzgzLCAxNjM4OSwgMCwgMTYzOTUsIDE2Mzk5LCAxNjQwMywgMCwgMTY0MDksIDAsIAorICAgIDE2NDE1LCAwLCAwLCAxNjQxOSwgMTY0MjUsIDAsIDE2NDMxLCAxNjQzNCwgMTY0NDAsIDE2NDQzLCAxNjQ0NywgMTY0NTQsIAorICAgIDE2NDU5LCAxNjQ2NCwgMTY0NjgsIDE2NDczLCAxNjQ3OCwgMTY0ODMsIDE2NDg3LCAwLCAxNjQ5MiwgMTY0OTksIDE2NTA1LCAKKyAgICAwLCAwLCAxNjUxMSwgMTY1MTUsIDE2NTIwLCAxNjUyNCwgMTY1MjksIDAsIDE2NTM0LCAwLCAxNjUzOSwgMTY1NDUsIAorICAgIDE2NTUxLCAxNjU1NywgMTY1NjMsIDE2NTY3LCAwLCAwLCAxNjU3MCwgMTY1NzQsIDE2NTc3LCAxNjU4MCwgMTY1ODMsIAorICAgIDE2NTg2LCAxNjU4OSwgMTY1OTIsIDE2NTk1LCAxNjU5OCwgMCwgMCwgMTY2MDEsIDE2NjA2LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAxNjYxMSwgMTY2MTUsIDE2NjI2LCAxNjY0MSwgMTY2NTYsIDE2NjY2LCAxNjY3NywgMTY2OTAsIAorICAgIDE2NzAxLCAxNjcwNywgMTY3MTUsIDE2NzI1LCAxNjczMSwgMTY3MzksIDE2NzQzLCAxNjc0OSwgMTY3NTUsIDE2NzYzLCAKKyAgICAxNjc3MywgMTY3ODEsIDE2Nzk0LCAxNjgwMCwgMTY4MDgsIDE2ODE2LCAxNjgyOCwgMTY4MzUsIDE2ODQzLCAxNjg1MSwgCisgICAgMTY4NTksIDE2ODY3LCAxNjg3NSwgMTY4ODMsIDE2ODkzLCAxNjg5NywgMTY5MDAsIDE2OTAzLCAxNjkwNiwgMTY5MDksIAorICAgIDE2OTEyLCAxNjkxNSwgMTY5MTgsIDE2OTIxLCAxNjkyNCwgMTY5MjgsIDE2OTMyLCAxNjkzNiwgMTY5NDAsIDE2OTQ0LCAKKyAgICAxNjk0OCwgMTY5NTIsIDE2OTU2LCAxNjk2MCwgMTY5NjUsIDE2OTcxLCAxNjk4MSwgMTY5OTUsIDE3MDA1LCAxNzAxMSwgCisgICAgMTcwMTcsIDE3MDI1LCAxNzAzMywgMTcwNDEsIDE3MDQ5LCAxNzA1NSwgMTcwNjEsIDE3MDY0LCAxNzA2OCwgMTcwNzIsIAorICAgIDE3MDc2LCAxNzA4MCwgMTcwODQsIDE3MDg4LCAwLCAxNzA5MiwgMTcwOTYsIDE3MTAwLCAxNzEwNCwgMTcxMDgsIDE3MTEyLCAKKyAgICAxNzExNiwgMTcxMjAsIDE3MTI0LCAxNzEyOCwgMTcxMzIsIDE3MTM1LCAxNzEzOCwgMTcxNDIsIDE3MTQ2LCAxNzE1MCwgCisgICAgMTcxNTMsIDE3MTU3LCAxNzE2MSwgMTcxNjUsIDE3MTY5LCAxNzE3MywgMTcxNzcsIDE3MTgxLCAxNzE4NSwgMTcxODgsIAorICAgIDE3MTkxLCAxNzE5NSwgMTcxOTksIDE3MjAzLCAxNzIwNywgMTcyMTAsIDE3MjEzLCAxNzIxNywgMTcyMjIsIDE3MjI2LCAwLCAKKyAgICAwLCAwLCAwLCAxNzIzMCwgMTcyMzUsIDE3MjM5LCAxNzI0NCwgMTcyNDgsIDE3MjUzLCAxNzI1OCwgMTcyNjQsIDE3MjY5LCAKKyAgICAxNzI3NSwgMTcyNzksIDE3Mjg0LCAxNzI4OCwgMTcyOTMsIDE3MzAzLCAxNzMwOSwgMTczMTUsIDE3MzIyLCAxNzMzMiwgCisgICAgMTczMzgsIDE3MzQyLCAxNzM0NiwgMTczNTIsIDE3MzU4LCAxNzM2NiwgMTczNzIsIDE3MzgwLCAxNzM4OCwgMTczOTYsIAorICAgIDE3NDA2LCAxNzQxNCwgMTc0MjQsIDE3NDI5LCAxNzQzNSwgMTc0NDEsIDE3NDQ3LCAxNzQ1MywgMTc0NTksIDE3NDY1LCAwLCAKKyAgICAxNzQ3MSwgMTc0NzcsIDE3NDgzLCAxNzQ4OSwgMTc0OTUsIDE3NTAxLCAxNzUwNywgMTc1MTMsIDE3NTE5LCAxNzUyNSwgCisgICAgMTc1MzEsIDE3NTM2LCAxNzU0MSwgMTc1NDcsIDE3NTUzLCAxNzU1OSwgMTc1NjQsIDE3NTcwLCAxNzU3NiwgMTc1ODIsIAorICAgIDE3NTg4LCAxNzU5NCwgMTc2MDAsIDE3NjA2LCAxNzYxMiwgMTc2MTcsIDE3NjIyLCAxNzYyOCwgMTc2MzQsIDE3NjQwLCAKKyAgICAxNzY0NiwgMTc2NTEsIDE3NjU2LCAxNzY2MiwgMTc2NzAsIDE3Njc3LCAwLCAxNzY4NCwgMTc2OTEsIDE3NzA0LCAxNzcxMSwgCisgICAgMTc3MTgsIDE3NzI2LCAxNzczNCwgMTc3NDAsIDE3NzQ2LCAxNzc1MiwgMTc3NjIsIDE3NzY3LCAxNzc3MywgMTc3ODMsIAorICAgIDE3NzkzLCAwLCAxNzgwMywgMTc4MTMsIDE3ODIxLCAxNzgzMywgMTc4NDUsIDE3ODUxLCAxNzg2NSwgMTc4ODAsIDE3ODg1LCAKKyAgICAxNzg5MCwgMTc4OTgsIDE3OTA2LCAxNzkxNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTc5MjIsIAorICAgIDE3OTI1LCAxNzkyOSwgMTc5MzMsIDE3OTM3LCAxNzk0MSwgMTc5NDUsIDE3OTQ5LCAxNzk1MywgMTc5NTcsIDE3OTYxLCAKKyAgICAxNzk2NSwgMTc5NjksIDE3OTczLCAxNzk3NywgMTc5ODEsIDE3OTg1LCAxNzk4OSwgMTc5OTMsIDE3OTk3LCAxODAwMSwgCisgICAgMTgwMDQsIDE4MDA3LCAxODAxMSwgMTgwMTUsIDE4MDE5LCAxODAyMiwgMTgwMjUsIDE4MDI4LCAxODAzMiwgMTgwMzYsIAorICAgIDE4MDQwLCAxODA0MywgMTgwNDcsIDE4MDUwLCAxODA1NSwgMTgwNTgsIDE4MDYyLCAxODA2NSwgMTgwNjksIDE4MDcyLCAKKyAgICAxODA3NywgMTgwODAsIDE4MDg0LCAxODA5MSwgMTgwOTYsIDE4MTAwLCAxODEwNSwgMTgxMDksIDE4MTE0LCAxODExOCwgCisgICAgMTgxMjMsIDE4MTMwLCAxODEzNiwgMTgxNDEsIDE4MTQ1LCAxODE0OSwgMTgxNTMsIDE4MTU3LCAxODE2MSwgMTgxNjYsIAorICAgIDE4MTcxLCAxODE3NywgMTgxODIsIDE4MTg4LCAxODE5MiwgMTgxOTUsIDE4MTk4LCAxODIwMSwgMTgyMDQsIDE4MjA3LCAKKyAgICAxODIxMCwgMTgyMTMsIDE4MjE2LCAxODIxOSwgMTgyMjUsIDE4MjI5LCAxODIzMywgMTgyMzcsIDE4MjQxLCAxODI0NSwgCisgICAgMTgyNDksIDE4MjUzLCAxODI1NywgMTgyNjIsIDE4MjY2LCAxODI3MSwgMTgyNzYsIDE4MjgyLCAxODI4NywgMTgyOTMsIAorICAgIDE4Mjk5LCAxODMwNSwgMTgzMTEsIDE4MzE3LCAxODMyNCwgMTgzMzEsIDE4MzM5LCAxODM0NywgMTgzNTYsIDE4MzY1LCAKKyAgICAxODM3NiwgMTgzODYsIDE4Mzk2LCAxODQwNywgMTg0MTgsIDE4NDI4LCAxODQzOCwgMTg0NDgsIDE4NDU4LCAxODQ2OCwgCisgICAgMTg0NzgsIDE4NDg4LCAxODQ5OCwgMTg1MDYsIDE4NTEzLCAxODUxOSwgMTg1MjYsIDE4NTMxLCAxODUzNywgMTg1NDMsIAorICAgIDE4NTQ5LCAxODU1NSwgMTg1NjEsIDE4NTY3LCAxODU3MiwgMTg1NzgsIDE4NTg0LCAxODU5MCwgMTg1OTYsIDE4NjAxLCAKKyAgICAxODYwOSwgMTg2MTYsIDE4NjIyLCAxODYyOSwgMTg2MzcsIDE4NjQzLCAxODY0OSwgMTg2NTUsIDE4NjYxLCAxODY2OSwgCisgICAgMTg2NzcsIDE4Njg3LCAxODY5NSwgMTg3MDMsIDE4NzA5LCAxODcxNCwgMTg3MTksIDE4NzI0LCAxODcyOSwgMTg3MzQsIAorICAgIDE4NzM5LCAxODc0NCwgMTg3NDksIDE4NzU0LCAxODc2MCwgMTg3NjYsIDE4NzcyLCAxODc3OSwgMTg3ODQsIDE4NzkwLCAKKyAgICAxODc5NSwgMTg4MDAsIDE4ODA1LCAxODgxMCwgMTg4MTUsIDE4ODIwLCAxODgyNSwgMTg4MzAsIDE4ODM1LCAxODg0MCwgCisgICAgMTg4NDUsIDE4ODUwLCAxODg1NSwgMTg4NjAsIDE4ODY1LCAxODg3MCwgMTg4NzUsIDE4ODgwLCAxODg4NSwgMTg4OTAsIAorICAgIDE4ODk1LCAxODkwMCwgMTg5MDUsIDE4OTEwLCAxODkxNSwgMTg5MjAsIDE4OTI1LCAxODkzMCwgMTg5MzUsIDE4OTQwLCAKKyAgICAxODk0NSwgMTg5NTAsIDE4OTU1LCAxODk2MCwgMTg5NjUsIDE4OTcwLCAxODk3NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMTg5ODAsIDE4OTg0LCAxODk4OCwgMTg5OTIsIDE4OTk2LCAxOTAwMCwgMTkwMDQsIDE5MDA4LCAxOTAxMiwgCisgICAgMTkwMTYsIDE5MDIwLCAxOTAyNCwgMTkwMjgsIDE5MDMyLCAxOTAzNiwgMTkwNDAsIDE5MDQ0LCAxOTA0OCwgMTkwNTIsIAorICAgIDE5MDU2LCAxOTA2MCwgMTkwNjQsIDE5MDY4LCAxOTA3MiwgMTkwNzYsIDE5MDgwLCAxOTA4NCwgMTkwODgsIDE5MDkyLCAKKyAgICAxOTA5NiwgMTkxMDAsIDE5MTA0LCAxOTEwOCwgMTkxMTIsIDE5MTE2LCAxOTEyMCwgMTkxMjQsIDE5MTI4LCAxOTEzMiwgCisgICAgMTkxMzYsIDE5MTQwLCAxOTE0NCwgMTkxNTAsIDE5MTU0LCAxOTE1OSwgMCwgMCwgMCwgMTkxNjQsIDE5MTY4LCAxOTE3MiwgCisgICAgMTkxNzYsIDE5MTgwLCAxOTE4NCwgMTkxODgsIDE5MTkyLCAxOTE5NiwgMTkyMDAsIDE5MjA0LCAxOTIwOCwgMTkyMTIsIAorICAgIDE5MjE2LCAxOTIyMCwgMTkyMjQsIDE5MjI4LCAxOTIzMiwgMTkyMzYsIDE5MjQwLCAxOTI0NCwgMTkyNDgsIDE5MjUyLCAKKyAgICAxOTI1NiwgMTkyNjAsIDE5MjY0LCAxOTI2OCwgMTkyNzIsIDE5Mjc2LCAxOTI4MCwgMTkyODQsIDE5Mjg4LCAxOTI5MiwgCisgICAgMTkyOTYsIDE5MzAwLCAxOTMwNCwgMTkzMDgsIDE5MzEyLCAxOTMxNiwgMTkzMjAsIDE5MzI0LCAxOTMyOCwgMTkzMzIsIAorICAgIDE5MzM2LCAxOTM0MCwgMTkzNDQsIDE5MzQ4LCAxOTM1MiwgMTkzNTYsIDE5MzYwLCAxOTM2NCwgMTkzNjgsIDE5MzcyLCAKKyAgICAxOTM3NiwgMTkzODAsIDE5Mzg0LCAxOTM4OCwgMTkzOTIsIDE5Mzk2LCAxOTQwMCwgMTk0MDQsIDE5NDA4LCAxOTQxMiwgCisgICAgMTk0MTYsIDE5NDIwLCAxOTQyNCwgMTk0MjgsIDE5NDMyLCAxOTQzNiwgMTk0NDAsIDE5NDQ0LCAxOTQ0OCwgMTk0NTIsIAorICAgIDE5NDU2LCAxOTQ2MCwgMTk0NjQsIDE5NDY4LCAxOTQ3MiwgMTk0NzYsIDE5NDgwLCAxOTQ4NCwgMTk0ODgsIDE5NDkyLCAKKyAgICAxOTQ5NiwgMTk1MDAsIDE5NTA0LCAxOTUwOCwgMTk1MTIsIDE5NTE2LCAxOTUyMCwgMTk1MjQsIDE5NTI4LCAxOTUzMiwgCisgICAgMTk1MzYsIDE5NTQwLCAxOTU0NCwgMTk1NDgsIDE5NTUyLCAxOTU1NSwgMTk1NTksIDE5NTYyLCAxOTU2NiwgMTk1NzAsIAorICAgIDE5NTczLCAxOTU3NywgMTk1ODEsIDE5NTg0LCAxOTU4OCwgMTk1OTIsIDE5NTk2LCAxOTYwMCwgMTk2MDMsIDE5NjA3LCAKKyAgICAxOTYxMSwgMTk2MTUsIDE5NjE5LCAxOTYyMywgMTk2MjcsIDE5NjMwLCAxOTYzNCwgMTk2MzgsIDE5NjQyLCAxOTY0NiwgCisgICAgMTk2NTAsIDE5NjU0LCAxOTY1OCwgMTk2NjIsIDE5NjY2LCAxOTY3MCwgMTk2NzQsIDE5Njc4LCAxOTY4MiwgMTk2ODYsIAorICAgIDE5NjkwLCAxOTY5NCwgMTk2OTgsIDE5NzAyLCAxOTcwNiwgMTk3MTAsIDE5NzE0LCAxOTcxOCwgMTk3MjIsIDE5NzI2LCAKKyAgICAxOTczMCwgMTk3MzQsIDE5NzM4LCAxOTc0MiwgMTk3NDYsIDE5NzUwLCAxOTc1NCwgMTk3NTgsIDE5NzYyLCAxOTc2NiwgCisgICAgMTk3NzAsIDE5Nzc0LCAxOTc3OCwgMTk3ODIsIDE5Nzg2LCAxOTc5MCwgMTk3OTQsIDE5Nzk4LCAxOTgwMiwgMTk4MDYsIAorICAgIDE5ODEwLCAxOTgxNCwgMTk4MTgsIDE5ODIyLCAxOTgyNiwgMTk4MzAsIDE5ODM0LCAxOTgzOCwgMTk4NDIsIDE5ODQ2LCAKKyAgICAxOTg1MCwgMTk4NTQsIDE5ODU4LCAxOTg2MiwgMTk4NjYsIDE5ODcwLCAxOTg3NCwgMTk4NzgsIDE5ODgyLCAxOTg4NiwgCisgICAgMTk4OTAsIDE5ODk0LCAxOTg5OCwgMTk5MDIsIDE5OTA2LCAxOTkxMCwgMTk5MTQsIDE5OTE4LCAxOTkyMiwgMTk5MjYsIAorICAgIDE5OTMwLCAxOTkzNCwgMTk5MzgsIDE5OTQyLCAxOTk0NiwgMTk5NTAsIDE5OTU0LCAxOTk1OCwgMTk5NjIsIDE5OTY2LCAKKyAgICAxOTk3MCwgMTk5NzQsIDE5OTc4LCAxOTk4MiwgMTk5ODYsIDE5OTkwLCAxOTk5NCwgMTk5OTgsIDIwMDAyLCAyMDAwNiwgCisgICAgMjAwMTAsIDIwMDE0LCAyMDAxOCwgMjAwMjIsIDIwMDI2LCAyMDAzMCwgMjAwMzQsIDIwMDM4LCAyMDA0MiwgMjAwNDYsIAorICAgIDIwMDUwLCAyMDA1NCwgMjAwNTgsIDIwMDYyLCAyMDA2NiwgMjAwNzAsIDIwMDc0LCAyMDA3OCwgMjAwODIsIDIwMDg2LCAKKyAgICAyMDA5MCwgMjAwOTQsIDIwMDk4LCAyMDEwMiwgMjAxMDYsIDIwMTEwLCAyMDExNCwgMjAxMTgsIDIwMTIyLCAyMDEyNiwgCisgICAgMjAxMzAsIDIwMTM0LCAyMDEzOCwgMjAxNDIsIDIwMTQ2LCAyMDE1MCwgMjAxNTQsIDIwMTU4LCAyMDE2MiwgMjAxNjYsIAorICAgIDIwMTcwLCAyMDE3NCwgMjAxNzgsIDIwMTgyLCAyMDE4NSwgMjAxODksIDIwMTkzLCAyMDE5NywgMjAyMDEsIDIwMjA1LCAKKyAgICAyMDIwOSwgMjAyMTMsIDIwMjE3LCAyMDIyMSwgMjAyMjUsIDIwMjI5LCAyMDIzMywgMjAyMzcsIDIwMjQxLCAyMDI0NSwgCisgICAgMjAyNDksIDIwMjUzLCAyMDI1NywgMjAyNjEsIDIwMjY1LCAyMDI2OSwgMjAyNzMsIDIwMjc3LCAyMDI4MCwgMjAyODQsIAorICAgIDIwMjg4LCAyMDI5MiwgMjAyOTYsIDIwMzAwLCAyMDMwNCwgMjAzMDgsIDIwMzEyLCAyMDMxNiwgMjAzMjAsIDIwMzI0LCAKKyAgICAyMDMyOCwgMjAzMzIsIDIwMzM2LCAyMDM0MCwgMjAzNDMsIDIwMzQ3LCAyMDM1MSwgMjAzNTUsIDIwMzU5LCAyMDM2MywgCisgICAgMjAzNjcsIDIwMzcxLCAyMDM3NSwgMjAzNzksIDIwMzgzLCAyMDM4NywgMjAzOTEsIDIwMzk1LCAyMDM5OSwgMjA0MDMsIAorICAgIDIwNDA3LCAyMDQxMSwgMjA0MTUsIDIwNDE5LCAyMDQyMywgMjA0MjcsIDIwNDMxLCAyMDQzNSwgMjA0MzksIDIwNDQzLCAKKyAgICAyMDQ0NywgMjA0NTEsIDIwNDU1LCAyMDQ1OSwgMjA0NjMsIDIwNDY3LCAwLCAyMDQ3MSwgMjA0NzUsIDIwNDc5LCAyMDQ4MywgCisgICAgMCwgMCwgMjA0ODcsIDIwNDkxLCAyMDQ5NSwgMjA0OTksIDIwNTAzLCAyMDUwNywgMjA1MTEsIDAsIDIwNTE1LCAwLCAKKyAgICAyMDUxOSwgMjA1MjMsIDIwNTI3LCAyMDUzMSwgMCwgMCwgMjA1MzUsIDIwNTM5LCAyMDU0MywgMjA1NDcsIDIwNTUxLCAKKyAgICAyMDU1NSwgMjA1NTksIDIwNTYzLCAyMDU2NywgMjA1NzEsIDIwNTc1LCAyMDU3OSwgMjA1ODMsIDIwNTg3LCAyMDU5MSwgCisgICAgMjA1OTUsIDIwNTk5LCAyMDYwMywgMjA2MDcsIDIwNjExLCAyMDYxNSwgMjA2MTksIDIwNjIzLCAyMDYyNiwgMjA2MzAsIAorICAgIDIwNjM0LCAyMDYzOCwgMjA2NDIsIDIwNjQ2LCAyMDY1MCwgMjA2NTQsIDIwNjU4LCAyMDY2MiwgMjA2NjYsIDIwNjcwLCAKKyAgICAyMDY3NCwgMjA2NzgsIDIwNjgyLCAyMDY4NiwgMjA2OTAsIDIwNjk0LCAwLCAyMDY5OCwgMjA3MDIsIDIwNzA2LCAyMDcxMCwgCisgICAgMCwgMCwgMjA3MTQsIDIwNzE3LCAyMDcyMSwgMjA3MjUsIDIwNzI5LCAyMDczMywgMjA3MzcsIDIwNzQxLCAyMDc0NSwgCisgICAgMjA3NDksIDIwNzUzLCAyMDc1NywgMjA3NjEsIDIwNzY1LCAyMDc2OSwgMjA3NzMsIDIwNzc3LCAyMDc4MiwgMjA3ODcsIAorICAgIDIwNzkyLCAyMDc5OCwgMjA4MDQsIDIwODA5LCAyMDgxNCwgMjA4MjAsIDIwODIzLCAyMDgyNywgMjA4MzEsIDIwODM1LCAKKyAgICAyMDgzOSwgMjA4NDMsIDIwODQ3LCAyMDg1MSwgMCwgMjA4NTUsIDIwODU5LCAyMDg2MywgMjA4NjcsIDAsIDAsIDIwODcxLCAKKyAgICAyMDg3NSwgMjA4NzksIDIwODgzLCAyMDg4NywgMjA4OTEsIDIwODk1LCAwLCAyMDg5OSwgMCwgMjA5MDMsIDIwOTA3LCAKKyAgICAyMDkxMSwgMjA5MTUsIDAsIDAsIDIwOTE5LCAyMDkyMywgMjA5MjcsIDIwOTMxLCAyMDkzNSwgMjA5MzksIDIwOTQzLCAKKyAgICAyMDk0NywgMjA5NTEsIDIwOTU2LCAyMDk2MSwgMjA5NjYsIDIwOTcyLCAyMDk3OCwgMjA5ODMsIDAsIDIwOTg4LCAyMDk5MiwgCisgICAgMjA5OTYsIDIxMDAwLCAyMTAwNCwgMjEwMDgsIDIxMDEyLCAyMTAxNiwgMjEwMjAsIDIxMDI0LCAyMTAyOCwgMjEwMzIsIAorICAgIDIxMDM2LCAyMTA0MCwgMjEwNDQsIDIxMDQ4LCAyMTA1MiwgMjEwNTUsIDIxMDU5LCAyMTA2MywgMjEwNjcsIDIxMDcxLCAKKyAgICAyMTA3NSwgMjEwNzksIDIxMDgzLCAyMTA4NywgMjEwOTEsIDIxMDk1LCAyMTA5OSwgMjExMDMsIDIxMTA3LCAyMTExMSwgCisgICAgMjExMTUsIDIxMTE5LCAyMTEyMywgMjExMjcsIDIxMTMxLCAyMTEzNSwgMjExMzksIDIxMTQzLCAyMTE0NywgMjExNTEsIAorICAgIDIxMTU1LCAyMTE1OSwgMjExNjMsIDIxMTY3LCAyMTE3MSwgMjExNzUsIDIxMTc5LCAyMTE4MywgMjExODcsIDIxMTkxLCAKKyAgICAyMTE5NSwgMjExOTksIDIxMjAzLCAyMTIwNywgMjEyMTEsIDAsIDIxMjE1LCAyMTIxOSwgMjEyMjMsIDIxMjI3LCAwLCAwLCAKKyAgICAyMTIzMSwgMjEyMzUsIDIxMjM5LCAyMTI0MywgMjEyNDcsIDIxMjUxLCAyMTI1NSwgMjEyNTksIDIxMjYzLCAyMTI2NywgCisgICAgMjEyNzEsIDIxMjc1LCAyMTI3OSwgMjEyODMsIDIxMjg3LCAyMTI5MSwgMjEyOTUsIDIxMjk5LCAyMTMwMywgMjEzMDcsIAorICAgIDIxMzExLCAyMTMxNSwgMjEzMTksIDIxMzIzLCAyMTMyNywgMjEzMzEsIDIxMzM1LCAyMTMzOSwgMjEzNDMsIDIxMzQ3LCAKKyAgICAyMTM1MSwgMjEzNTUsIDIxMzU5LCAyMTM2MywgMjEzNjcsIDIxMzcxLCAyMTM3NSwgMjEzNzksIDIxMzgzLCAyMTM4NywgCisgICAgMjEzOTEsIDIxMzk1LCAyMTM5OSwgMjE0MDMsIDIxNDA3LCAyMTQxMSwgMjE0MTUsIDIxNDE5LCAyMTQyMywgMjE0MjcsIAorICAgIDIxNDMxLCAyMTQzNSwgMjE0MzksIDIxNDQzLCAyMTQ0NywgMjE0NTEsIDIxNDU1LCAyMTQ1OCwgMjE0NjIsIDIxNDY2LCAKKyAgICAyMTQ3MCwgMjE0NzQsIDIxNDc4LCAyMTQ4MiwgMjE0ODYsIDIxNDkwLCAyMTQ5NCwgMCwgMCwgMjE0OTgsIDIxNTA3LCAKKyAgICAyMTUxMywgMjE1MTgsIDIxNTIyLCAyMTUyNSwgMjE1MzAsIDIxNTMzLCAyMTUzNiwgMjE1MzksIDIxNTQ0LCAyMTU0OCwgCisgICAgMjE1NTMsIDIxNTU2LCAyMTU1OSwgMjE1NjIsIDIxNTY1LCAyMTU2OCwgMjE1NzEsIDIxNTc0LCAyMTU3NywgMjE1ODAsIAorICAgIDIxNTg0LCAyMTU4OCwgMjE1OTIsIDIxNTk2LCAyMTYwMCwgMjE2MDQsIDIxNjA4LCAyMTYxMiwgMjE2MTYsIDIxNjIwLCAwLCAKKyAgICAwLCAwLCAyMTYyNiwgMjE2MzIsIDIxNjM2LCAyMTY0MCwgMjE2NDQsIDIxNjUwLCAyMTY1NCwgMjE2NTgsIDIxNjYyLCAKKyAgICAyMTY2OCwgMjE2NzIsIDIxNjc2LCAyMTY4MCwgMjE2ODYsIDIxNjkwLCAyMTY5NCwgMjE2OTgsIDIxNzA0LCAyMTcxMCwgCisgICAgMjE3MTYsIDIxNzI0LCAyMTczMCwgMjE3MzYsIDIxNzQyLCAyMTc0OCwgMjE3NTQsIDAsIDAsIDAsIDAsIDAsIDAsIDIxNzYwLCAKKyAgICAyMTc2MywgMjE3NjYsIDIxNzY5LCAyMTc3MiwgMjE3NzUsIDIxNzc5LCAyMTc4MywgMjE3ODYsIDIxNzkwLCAyMTc5NCwgCisgICAgMjE3OTgsIDIxODAyLCAyMTgwNiwgMjE4MDksIDIxODEzLCAyMTgxNywgMjE4MjEsIDIxODI1LCAyMTgyOSwgMjE4MzMsIAorICAgIDIxODM3LCAyMTg0MSwgMjE4NDUsIDIxODQ5LCAyMTg1MywgMjE4NTYsIDIxODYwLCAyMTg2NCwgMjE4NjgsIDIxODcyLCAKKyAgICAyMTg3NSwgMjE4NzksIDIxODgzLCAyMTg4NywgMjE4OTEsIDIxODk1LCAyMTg5OSwgMjE5MDMsIDIxOTA3LCAyMTkxMSwgCisgICAgMjE5MTUsIDIxOTE5LCAyMTkyMywgMjE5MjcsIDIxOTMxLCAyMTkzNCwgMjE5MzgsIDIxOTQyLCAyMTk0NiwgMjE5NTAsIAorICAgIDIxOTU0LCAyMTk1OCwgMjE5NjIsIDIxOTY2LCAyMTk3MCwgMjE5NzQsIDIxOTc4LCAyMTk4MiwgMjE5ODYsIDIxOTkwLCAKKyAgICAyMTk5NCwgMjE5OTgsIDIyMDAyLCAyMjAwNiwgMjIwMTAsIDIyMDE0LCAyMjAxOCwgMjIwMjIsIDIyMDI2LCAyMjAzMCwgCisgICAgMjIwMzQsIDIyMDM4LCAyMjA0MiwgMjIwNDYsIDIyMDUwLCAyMjA1NCwgMjIwNTgsIDIyMDYyLCAyMjA2NiwgMjIwNjksIAorICAgIDIyMDczLCAyMjA3NywgMjIwODEsIDIyMDg1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMjA4OSwgCisgICAgMjIwOTMsIDIyMDk2LCAyMjEwMCwgMjIxMDMsIDIyMTA3LCAyMjExMCwgMjIxMTQsIDIyMTIwLCAyMjEyNSwgMjIxMjksIAorICAgIDIyMTMyLCAyMjEzNiwgMjIxNDAsIDIyMTQ1LCAyMjE0OSwgMjIxNTQsIDIyMTU4LCAyMjE2MywgMjIxNjcsIDIyMTcyLCAKKyAgICAyMjE3NiwgMjIxODEsIDIyMTg3LCAyMjE5MSwgMjIxOTYsIDIyMjAwLCAyMjIwNSwgMjIyMTEsIDIyMjE1LCAyMjIyMSwgCisgICAgMjIyMjcsIDIyMjMxLCAyMjIzNSwgMjIyNDMsIDIyMjUxLCAyMjI1OCwgMjIyNjMsIDIyMjY4LCAyMjI3NywgMjIyODQsIAorICAgIDIyMjkxLCAyMjI5NiwgMjIzMDIsIDIyMzA2LCAyMjMxMCwgMjIzMTQsIDIyMzE4LCAyMjMyMiwgMjIzMjYsIDIyMzMwLCAKKyAgICAyMjMzNCwgMjIzMzgsIDIyMzQyLCAyMjM0OCwgMjIzNTMsIDIyMzU4LCAyMjM2MSwgMjIzNjUsIDIyMzY5LCAyMjM3NCwgCisgICAgMjIzNzgsIDIyMzgzLCAyMjM4NywgMjIzOTIsIDIyMzk2LCAyMjQwMSwgMjI0MDUsIDIyNDEwLCAyMjQxNCwgMjI0MTksIAorICAgIDIyNDIzLCAyMjQyOCwgMjI0MzQsIDIyNDM4LCAyMjQ0MywgMjI0NDgsIDIyNDUyLCAyMjQ1NiwgMjI0NjAsIDIyNDY0LCAKKyAgICAyMjQ2NywgMjI0NzEsIDIyNDc3LCAyMjQ4MiwgMjI0ODcsIDIyNDkxLCAyMjQ5NSwgMjI0OTksIDIyNTA0LCAyMjUwOCwgCisgICAgMjI1MTMsIDIyNTE3LCAyMjUyMiwgMjI1MjUsIDIyNTI5LCAyMjUzMywgMjI1MzgsIDIyNTQyLCAyMjU0NywgMjI1NTEsIAorICAgIDIyNTU2LCAyMjU2MiwgMjI1NjYsIDIyNTcwLCAyMjU3NCwgMjI1NzgsIDIyNTgyLCAyMjU4NiwgMjI1OTAsIDIyNTk0LCAKKyAgICAyMjU5OCwgMjI2MDIsIDIyNjA2LCAyMjYxMiwgMjI2MTUsIDIyNjE5LCAyMjYyMywgMjI2MjgsIDIyNjMyLCAyMjYzNywgCisgICAgMjI2NDEsIDIyNjQ2LCAyMjY1MCwgMjI2NTUsIDIyNjU5LCAyMjY2NCwgMjI2NjgsIDIyNjczLCAyMjY3NywgMjI2ODIsIAorICAgIDIyNjg4LCAyMjY5MiwgMjI2OTYsIDIyNzAyLCAyMjcwOCwgMjI3MTQsIDIyNzIwLCAyMjcyNCwgMjI3MjgsIDIyNzMyLCAKKyAgICAyMjczNiwgMjI3NDAsIDIyNzQ0LCAyMjc1MCwgMjI3NTQsIDIyNzU4LCAyMjc2MiwgMjI3NjcsIDIyNzcxLCAyMjc3NiwgCisgICAgMjI3ODAsIDIyNzg1LCAyMjc4OSwgMjI3OTQsIDIyNzk4LCAyMjgwMywgMjI4MDcsIDIyODEyLCAyMjgxNiwgMjI4MjEsIAorICAgIDIyODI3LCAyMjgzMSwgMjI4MzcsIDIyODQxLCAyMjg0NSwgMjI4NDksIDIyODUzLCAyMjg1NywgMjI4NjEsIDIyODY3LCAKKyAgICAyMjg3MCwgMjI4NzQsIDIyODc4LCAyMjg4MywgMjI4ODcsIDIyODkyLCAyMjg5NiwgMjI5MDEsIDIyOTA1LCAyMjkxMCwgCisgICAgMjI5MTQsIDIyOTE5LCAyMjkyMywgMjI5MjgsIDIyOTMyLCAyMjkzNywgMjI5NDMsIDIyOTQ2LCAyMjk1MCwgMjI5NTQsIAorICAgIDIyOTU5LCAyMjk2NCwgMjI5NjgsIDIyOTcyLCAyMjk3NiwgMjI5ODAsIDIyOTg0LCAyMjk4OCwgMjI5OTQsIDIyOTk3LCAKKyAgICAyMzAwMSwgMjMwMDUsIDIzMDEwLCAyMzAxNCwgMjMwMTksIDIzMDIzLCAyMzAyOCwgMjMwMzQsIDIzMDM3LCAyMzA0MiwgCisgICAgMjMwNDYsIDIzMDUwLCAyMzA1NCwgMjMwNTgsIDIzMDYyLCAyMzA2NiwgMjMwNzAsIDIzMDc2LCAyMzA4MCwgMjMwODQsIAorICAgIDIzMDg4LCAyMzA5MywgMjMwOTcsIDIzMTAyLCAyMzEwNiwgMjMxMTEsIDIzMTE1LCAyMzEyMCwgMjMxMjQsIDIzMTI5LCAKKyAgICAyMzEzMywgMjMxMzgsIDIzMTQyLCAyMzE0NywgMjMxNTAsIDIzMTU0LCAyMzE1OCwgMjMxNjIsIDIzMTY2LCAyMzE3MCwgCisgICAgMjMxNzQsIDIzMTc4LCAyMzE4MiwgMjMxODgsIDIzMTkyLCAyMzE5NiwgMjMyMDAsIDIzMjA1LCAyMzIwOSwgMjMyMTQsIAogICAgIDIzMjE4LCAyMzIyMywgMjMyMjcsIDIzMjMyLCAyMzIzNiwgMjMyNDEsIDIzMjQ1LCAyMzI1MCwgMjMyNTQsIDIzMjU5LCAKLSAgICAyMzI2MywgMjMyNjgsIDIzMjcyLCAyMzI3NywgMjMyODAsIDIzMjg0LCAyMzI4OCwgMjMyOTIsIDIzMjk2LCAyMzMwMCwgCi0gICAgMjMzMDQsIDIzMzA4LCAyMzMxMiwgMjMzMTgsIDIzMzIyLCAyMzMyNiwgMjMzMzAsIDIzMzM1LCAyMzMzOSwgMjMzNDQsIAotICAgIDIzMzQ4LCAyMzM1MywgMjMzNTcsIDIzMzYyLCAyMzM2NiwgMjMzNzEsIDIzMzc1LCAyMzM4MCwgMjMzODQsIDIzMzg5LCAKLSAgICAyMzM5NSwgMjMzOTgsIDIzNDAzLCAyMzQwNywgMjM0MTIsIDIzNDE4LCAyMzQyNCwgMjM0MzAsIDIzNDM2LCAyMzQ0MiwgCi0gICAgMjM0NDgsIDIzNDU0LCAyMzQ1OCwgMjM0NjIsIDIzNDY2LCAyMzQ3MCwgMjM0NzQsIDIzNDc4LCAyMzQ4MiwgMjM0ODYsIAotICAgIDIzNDkxLCAyMzQ5NSwgMjM1MDAsIDIzNTA0LCAyMzUwOSwgMjM1MTMsIDIzNTE4LCAyMzUyMiwgMjM1MjcsIDIzNTMxLCAKLSAgICAyMzUzNiwgMjM1NDAsIDIzNTQ1LCAyMzU0OSwgMjM1NTMsIDIzNTU3LCAyMzU2MSwgMjM1NjUsIDIzNTY5LCAyMzU3MywgCi0gICAgMjM1NzksIDIzNTgyLCAyMzU4NiwgMjM1OTAsIDIzNTk1LCAyMzU5OSwgMjM2MDQsIDIzNjA4LCAyMzYxMywgMjM2MTcsIAotICAgIDIzNjIyLCAyMzYyNiwgMjM2MzEsIDIzNjM1LCAyMzY0MCwgMjM2NDQsIDIzNjQ5LCAyMzY1NSwgMjM2NTksIDIzNjY1LCAKLSAgICAyMzY3MCwgMjM2NzYsIDIzNjgwLCAyMzY4NiwgMjM2OTEsIDIzNjk1LCAyMzY5OSwgMjM3MDMsIDIzNzA3LCAyMzcxMSwgCi0gICAgMjM3MTYsIDIzNzE5LCAyMzcyMywgMjM3MjgsIDIzNzMyLCAyMzczNywgMjM3NDAsIDIzNzQ0LCAyMzc0OCwgMjM3NTIsIAotICAgIDIzNzU2LCAyMzc2MCwgMjM3NjQsIDIzNzY4LCAyMzc3MiwgMjM3NzYsIDIzNzgwLCAyMzc4NCwgMjM3ODksIDIzNzkzLCAKLSAgICAyMzc5NywgMjM4MDMsIDIzODA3LCAyMzgxMywgMjM4MTcsIDIzODIzLCAyMzgyNywgMjM4MzEsIDIzODM1LCAyMzgzOSwgCi0gICAgMjM4NDMsIDIzODQ4LCAyMzg1MiwgMjM4NTYsIDIzODYwLCAyMzg2NCwgMjM4NjgsIDIzODcyLCAyMzg3NiwgMjM4ODAsIAotICAgIDIzODg0LCAyMzg4OCwgMjM4OTQsIDIzOTAwLCAyMzkwNiwgMjM5MTIsIDIzOTE4LCAyMzkyMywgMjM5MjksIDIzOTM1LCAKLSAgICAyMzk0MSwgMjM5NDUsIDIzOTQ5LCAyMzk1MywgMjM5NTcsIDIzOTYxLCAyMzk2NSwgMjM5NjksIDIzOTczLCAyMzk3NywgCi0gICAgMjM5ODEsIDIzOTg1LCAyMzk4OSwgMjM5OTMsIDIzOTk4LCAyNDAwMywgMjQwMDgsIDI0MDEyLCAyNDAxNiwgMjQwMjAsIAotICAgIDI0MDI0LCAyNDAyOCwgMjQwMzIsIDI0MDM2LCAyNDA0MCwgMjQwNDQsIDI0MDQ4LCAyNDA1NCwgMjQwNjAsIDI0MDY2LCAKLSAgICAyNDA3MiwgMjQwNzgsIDI0MDg0LCAyNDA5MCwgMjQwOTYsIDI0MTAyLCAyNDEwNiwgMjQxMTAsIDI0MTE0LCAyNDExOCwgCi0gICAgMjQxMjIsIDI0MTI2LCAyNDEzMCwgMjQxMzYsIDI0MTQyLCAyNDE0OCwgMjQxNTQsIDI0MTYwLCAyNDE2NiwgMjQxNzIsIAotICAgIDI0MTc4LCAyNDE4NCwgMjQxODksIDI0MTk0LCAyNDE5OSwgMjQyMDQsIDI0MjEwLCAyNDIxNiwgMjQyMjIsIDI0MjI4LCAKLSAgICAyNDIzNCwgMjQyNDAsIDI0MjQ2LCAyNDI1MSwgMjQyNTcsIDI0MjYzLCAyNDI2OSwgMjQyNzQsIDI0MjgwLCAyNDI4NiwgCi0gICAgMjQyOTIsIDI0Mjk3LCAyNDMwMiwgMjQzMDcsIDI0MzEyLCAyNDMxNywgMjQzMjIsIDI0MzI3LCAyNDMzMiwgMjQzMzcsIAotICAgIDI0MzQyLCAyNDM0NywgMjQzNTIsIDI0MzU2LCAyNDM2MSwgMjQzNjYsIDI0MzcxLCAyNDM3NiwgMjQzODEsIDI0Mzg2LCAKLSAgICAyNDM5MSwgMjQzOTYsIDI0NDAxLCAyNDQwNiwgMjQ0MTEsIDI0NDE2LCAyNDQyMSwgMjQ0MjYsIDI0NDMxLCAyNDQzNiwgCi0gICAgMjQ0NDEsIDI0NDQ2LCAyNDQ1MSwgMjQ0NTYsIDI0NDYxLCAyNDQ2NiwgMjQ0NzEsIDI0NDc2LCAyNDQ4MSwgMjQ0ODYsIAotICAgIDI0NDkxLCAyNDQ5NiwgMjQ1MDEsIDI0NTA1LCAyNDUxMCwgMjQ1MTUsIDI0NTIwLCAyNDUyNSwgMjQ1MzAsIDI0NTM1LCAKLSAgICAyNDU0MCwgMjQ1NDUsIDI0NTUwLCAyNDU1NSwgMjQ1NjAsIDI0NTY1LCAyNDU3MCwgMjQ1NzUsIDI0NTgwLCAyNDU4NSwgCi0gICAgMjQ1OTAsIDI0NTk1LCAyNDYwMCwgMjQ2MDUsIDI0NjEwLCAyNDYxNSwgMjQ2MjAsIDI0NjI1LCAyNDYzMCwgMjQ2MzQsIAotICAgIDI0NjM5LCAyNDY0NCwgMjQ2NDksIDI0NjU0LCAyNDY1OSwgMjQ2NjMsIDI0NjY4LCAyNDY3MywgMjQ2NzgsIDI0NjgzLCAKLSAgICAyNDY4OCwgMjQ2OTIsIDI0Njk3LCAyNDcwMywgMjQ3MDgsIDI0NzEzLCAyNDcxOCwgMjQ3MjMsIDI0NzI5LCAyNDczNCwgCi0gICAgMjQ3MzksIDI0NzQ0LCAyNDc0OSwgMjQ3NTQsIDI0NzU5LCAyNDc2NCwgMjQ3NjksIDI0Nzc0LCAyNDc3OSwgMjQ3ODQsIAotICAgIDI0Nzg5LCAyNDc5NCwgMjQ3OTksIDI0ODA0LCAyNDgwOSwgMjQ4MTQsIDI0ODE5LCAyNDgyNCwgMjQ4MjksIDI0ODM0LCAKLSAgICAyNDgzOSwgMjQ4NDQsIDI0ODQ5LCAyNDg1NCwgMjQ4NTksIDI0ODY0LCAyNDg2OSwgMjQ4NzQsIDI0ODc5LCAyNDg4NCwgCi0gICAgMjQ4ODksIDI0ODk0LCAyNDg5OSwgMjQ5MDQsIDI0OTA5LCAyNDkxNCwgMjQ5MTksIDI0OTI0LCAyNDkyOSwgMjQ5MzQsIAotICAgIDI0OTM5LCAyNDk0NCwgMjQ5NDksIDI0OTU1LCAyNDk2MCwgMjQ5NjUsIDI0OTcwLCAyNDk3NSwgMjQ5ODAsIDI0OTg1LCAKLSAgICAyNDk5MCwgMjQ5OTUsIDI1MDAwLCAyNTAwNSwgMjUwMTAsIDI1MDE1LCAyNTAyMCwgMjUwMjUsIDI1MDMwLCAyNTAzNSwgCi0gICAgMjUwNDAsIDI1MDQ1LCAyNTA1MCwgMjUwNTUsIDI1MDYwLCAyNTA2NSwgMjUwNzAsIDI1MDc1LCAyNTA4MCwgMjUwODUsIAotICAgIDI1MDkwLCAyNTA5NSwgMjUxMDAsIDI1MTA1LCAyNTExMCwgMjUxMTUsIDI1MTIwLCAyNTEyNSwgMjUxMzAsIDI1MTM1LCAKLSAgICAyNTE0MCwgMjUxNDUsIDI1MTUxLCAyNTE1NSwgMjUxNTksIDI1MTYzLCAyNTE2NywgMjUxNzEsIDI1MTc1LCAyNTE3OSwgCi0gICAgMjUxODMsIDI1MTg5LCAyNTE5NSwgMjUyMDEsIDI1MjA3LCAyNTIxMywgMjUyMTksIDI1MjI1LCAyNTIzMiwgMjUyMzgsIAotICAgIDI1MjQzLCAyNTI0OCwgMjUyNTMsIDI1MjU4LCAyNTI2MywgMjUyNjgsIDI1MjczLCAyNTI3OCwgMjUyODMsIDI1Mjg4LCAKLSAgICAyNTI5MywgMjUyOTgsIDI1MzAzLCAyNTMwOCwgMjUzMTMsIDI1MzE4LCAyNTMyMywgMjUzMjgsIDI1MzMzLCAyNTMzOCwgCi0gICAgMjUzNDMsIDI1MzQ4LCAyNTM1MywgMjUzNTgsIDI1MzYzLCAyNTM2OCwgMjUzNzMsIDI1Mzc4LCAwLCAwLCAwLCAyNTM4NSwgCi0gICAgMjUzOTUsIDI1Mzk5LCAyNTQwNiwgMjU0MTAsIDI1NDE0LCAyNTQxOCwgMjU0MjYsIDI1NDMwLCAyNTQzNSwgMjU0NDAsIAotICAgIDI1NDQ1LCAyNTQ0OSwgMjU0NTQsIDI1NDU5LCAyNTQ2MiwgMjU0NjYsIDI1NDcwLCAyNTQ3OSwgMjU0ODMsIDI1NDg3LCAKLSAgICAyNTQ5MywgMjU0OTcsIDI1NTAxLCAyNTUwOSwgMjU1MTMsIDI1NTIxLCAyNTUyNywgMjU1MzMsIDI1NTM5LCAyNTU0NSwgCi0gICAgMjU1NTQsIDI1NTU5LCAyNTU2MywgMjU1NzIsIDI1NTc1LCAyNTU4MSwgMjU1ODUsIDI1NTkxLCAyNTU5NiwgMjU2MDIsIAotICAgIDI1NjEwLCAyNTYxNiwgMjU2MjEsIDI1NjI4LCAyNTYzMywgMjU2MzcsIDI1NjQxLCAyNTY1MSwgMjU2NTcsIDI1NjYxLCAKLSAgICAyNTY3MSwgMjU2NzcsIDI1NjgxLCAyNTY4NSwgMjU2OTIsIDI1Njk5LCAyNTcwNCwgMjU3MDksIDI1NzE4LCAyNTcyMiwgCi0gICAgMjU3MjYsIDI1NzMwLCAyNTczOCwgMjU3NDUsIDI1NzQ5LCAyNTc1MywgMjU3NTcsIDI1NzYxLCAyNTc2NSwgMjU3NjksIAotICAgIDI1NzczLCAyNTc3NywgMjU3ODEsIDI1Nzg1LCAyNTc4OSwgMjU3OTQsIDI1Nzk5LCAyNTgwNCwgMjU4MDgsIDI1ODEyLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNTgxNiwgMjU4MjAsIDI1ODI0LCAyNTgyOCwgCi0gICAgMjU4MzIsIDI1ODM3LCAyNTg0MiwgMjU4NDcsIDI1ODUyLCAyNTg1NiwgMjU4NjAsIDI1ODY1LCAyNTg2OSwgMCwgMjU4NzMsIAotICAgIDI1ODc4LCAyNTg4MywgMjU4ODgsIDI1ODkyLCAyNTg5NywgMjU5MDIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDI1OTA3LCAyNTkxMSwgMjU5MTUsIDI1OTE5LCAyNTkyMywgMjU5MjgsIDI1OTMzLCAyNTkzOCwgMjU5NDMsIDI1OTQ3LCAKLSAgICAyNTk1MSwgMjU5NTYsIDI1OTYwLCAyNTk2NCwgMjU5NjgsIDI1OTczLCAyNTk3OCwgMjU5ODMsIDI1OTg3LCAyNTk5MiwgCi0gICAgMjU5OTcsIDI2MDAyLCAyNjAwOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjYwMTMsIDI2MDE3LCAyNjAyMSwgCi0gICAgMjYwMjUsIDI2MDI5LCAyNjAzNCwgMjYwMzksIDI2MDQ0LCAyNjA0OSwgMjYwNTMsIDI2MDU3LCAyNjA2MiwgMjYwNjYsIAotICAgIDI2MDcwLCAyNjA3NCwgMjYwNzksIDI2MDg0LCAyNjA4OSwgMjYwOTMsIDI2MDk4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAyNjEwMywgMjYxMDcsIDI2MTExLCAyNjExNSwgMjYxMTksIDI2MTI0LCAyNjEyOSwgMjYxMzQsIAotICAgIDI2MTM5LCAyNjE0MywgMjYxNDcsIDI2MTUyLCAyNjE1NiwgMCwgMjYxNjAsIDI2MTY1LCAyNjE3MCwgMCwgMjYxNzUsIAotICAgIDI2MTgwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNjE4NSwgMjYxODgsIDI2MTkyLCAyNjE5NiwgCi0gICAgMjYyMDAsIDI2MjA0LCAyNjIwOCwgMjYyMTIsIDI2MjE2LCAyNjIyMCwgMjYyMjQsIDI2MjI4LCAyNjIzMiwgMjYyMzYsIAotICAgIDI2MjQwLCAyNjI0NCwgMjYyNDgsIDI2MjUyLCAyNjI1NSwgMjYyNTksIDI2MjYzLCAyNjI2NywgMjYyNzEsIDI2Mjc1LCAKLSAgICAyNjI3OSwgMjYyODMsIDI2Mjg3LCAyNjI5MSwgMjYyOTUsIDI2Mjk5LCAyNjMwMywgMjYzMDcsIDI2MzExLCAyNjMxNCwgCi0gICAgMjYzMTgsIDI2MzIyLCAyNjMyOCwgMjYzMzQsIDI2MzQwLCAyNjM0NiwgMjYzNTIsIDI2MzU4LCAyNjM2NCwgMjYzNzAsIAotICAgIDI2Mzc2LCAyNjM4MiwgMjYzODgsIDI2Mzk0LCAyNjQwMCwgMjY0MDYsIDI2NDE1LCAyNjQyNCwgMjY0MzAsIDI2NDM2LCAKLSAgICAyNjQ0MiwgMjY0NDcsIDI2NDUxLCAyNjQ1NiwgMjY0NjEsIDI2NDY2LCAyNjQ3MCwgMjY0NzUsIDI2NDgwLCAyNjQ4NSwgCi0gICAgMjY0ODksIDI2NDk0LCAyNjQ5OCwgMjY1MDMsIDI2NTA4LCAyNjUxMywgMjY1MTgsIDI2NTIyLCAyNjUyNiwgMjY1MzAsIAotICAgIDI2NTM0LCAyNjUzOCwgMjY1NDIsIDI2NTQ2LCAyNjU1MCwgMjY1NTQsIDI2NTU4LCAyNjU2NCwgMjY1NjgsIDI2NTcyLCAKLSAgICAyNjU3NiwgMjY1ODAsIDI2NTg0LCAyNjU5MiwgMjY1OTgsIDI2NjAyLCAyNjYwOCwgMjY2MTIsIDI2NjE4LCAyNjYyMiwgMCwgCi0gICAgMCwgMjY2MjYsIDI2NjMwLCAyNjYzMywgMjY2MzYsIDI2NjM5LCAyNjY0MiwgMjY2NDUsIDI2NjQ4LCAyNjY1MSwgMjY2NTQsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDI2NjU3LCAyNjY2NSwgMjY2NzMsIDI2NjgxLCAyNjY4OSwgMjY2OTcsIDI2NzA1LCAyNjcxMywgCi0gICAgMjY3MjEsIDI2NzI5LCAwLCAwLCAwLCAwLCAwLCAwLCAyNjczNywgMjY3NDAsIDI2NzQzLCAyNjc0NiwgMjY3NTEsIDI2NzU0LCAKLSAgICAyNjc1OSwgMjY3NjYsIDI2Nzc0LCAyNjc3OSwgMjY3ODYsIDI2Nzg5LCAyNjc5NiwgMjY4MDMsIDI2ODEwLCAwLCAyNjgxNCwgCi0gICAgMjY4MTgsIDI2ODIxLCAyNjgyNCwgMjY4MjcsIDI2ODMwLCAyNjgzMywgMjY4MzYsIDI2ODM5LCAyNjg0MiwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMjY4NDUsIDI2ODQ4LCAyNjg1MSwgMjY4NTQsIDI2ODU3LCAyNjg2MCwgMjY4NjQsIDI2ODY4LCAyNjg3MiwgCi0gICAgMjY4NzUsIDI2ODc5LCAyNjg4MywgMjY4ODYsIDI2ODkwLCAyNjg5NCwgMjY4OTcsIDI2OTAxLCAyNjkwNSwgMjY5MDksIAotICAgIDI2OTEzLCAyNjkxNywgMjY5MjEsIDI2OTI1LCAyNjkyOCwgMjY5MzEsIDI2OTM1LCAyNjkzOSwgMjY5NDIsIDI2OTQ2LCAKLSAgICAyNjk1MCwgMjY5NTQsIDI2OTU4LCAyNjk2MiwgMjY5NjYsIDI2OTcwLCAyNjk3NCwgMjY5ODEsIDI2OTg2LCAyNjk5MSwgCi0gICAgMjY5OTYsIDI3MDAxLCAyNzAwNywgMjcwMTMsIDI3MDE5LCAyNzAyNSwgMjcwMzAsIDI3MDM2LCAyNzA0MiwgMjcwNDcsIAotICAgIDI3MDUzLCAyNzA1OSwgMjcwNjUsIDI3MDcxLCAyNzA3NywgMjcwODIsIDI3MDg4LCAyNzA5MywgMjcwOTksIDI3MTA1LCAKLSAgICAyNzExMSwgMjcxMTcsIDI3MTIzLCAyNzEyOCwgMjcxMzMsIDI3MTM5LCAyNzE0NSwgMjcxNTAsIDI3MTU2LCAyNzE2MSwgCi0gICAgMjcxNjcsIDI3MTcyLCAyNzE3NywgMjcxODMsIDI3MTg5LCAyNzE5NSwgMjcyMDEsIDI3MjA3LCAyNzIxMywgMjcyMTksIAotICAgIDI3MjI1LCAyNzIzMSwgMjcyMzcsIDI3MjQzLCAyNzI0OSwgMjcyNTQsIDI3MjU5LCAyNzI2NCwgMjcyNzAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDI3Mjc2LCAyNzI4NSwgMjcyOTQsIDI3MzAyLCAyNzMxMCwgMjczMjAsIDI3MzI4LCAyNzMzNywgCi0gICAgMjczNDQsIDI3MzUxLCAyNzM1OCwgMjczNjYsIDI3Mzc0LCAyNzM4MiwgMjczOTAsIDI3Mzk4LCAyNzQwNiwgMjc0MTQsIAotICAgIDI3NDIyLCAyNzQyOSwgMjc0MzcsIDI3NDQ1LCAyNzQ1MywgMjc0NjEsIDI3NDY5LCAyNzQ3OSwgMjc0ODksIDI3NDk5LCAKLSAgICAyNzUwOSwgMjc1MTksIDI3NTI5LCAyNzUzOSwgMjc1NDksIDI3NTU5LCAyNzU2OSwgMjc1NzksIDI3NTg5LCAyNzU5OSwgCi0gICAgMjc2MDksIDI3NjE3LCAyNzYyNSwgMjc2MzUsIDI3NjQzLCAwLCAwLCAwLCAwLCAwLCAyNzY1MywgMjc2NTcsIDI3NjYxLCAKLSAgICAyNzY2NSwgMjc2NjksIDI3NjczLCAyNzY3NywgMjc2ODEsIDI3Njg1LCAyNzY4OSwgMjc2OTMsIDI3Njk3LCAyNzcwMSwgCi0gICAgMjc3MDUsIDI3NzA5LCAyNzcxMywgMjc3MTcsIDI3NzIxLCAyNzcyNSwgMjc3MjksIDI3NzMzLCAyNzczNywgMjc3NDEsIAotICAgIDI3NzQ1LCAyNzc1MSwgMjc3NTUsIDI3NzYxLCAyNzc2NSwgMjc3NzEsIDI3Nzc1LCAyNzc4MSwgMjc3ODUsIDI3Nzg5LCAKLSAgICAyNzc5MywgMjc3OTcsIDI3ODAxLCAyNzgwNSwgMjc4MTEsIDI3ODE3LCAyNzgyMywgMjc4MjksIDI3ODM0LCAyNzgzOSwgCi0gICAgMjc4NDQsIDI3ODUwLCAyNzg1NiwgMjc4NjIsIDI3ODY4LCAyNzg3NSwgMjc4ODEsIDI3ODg2LCAyNzg5MSwgMjc4OTUsIAotICAgIDI3ODk5LCAyNzkwMywgMjc5MDcsIDI3OTExLCAyNzkxNSwgMjc5MTksIDI3OTI1LCAyNzkzMSwgMjc5MzcsIDI3OTQyLCAKLSAgICAyNzk0OSwgMjc5NTQsIDI3OTU5LCAyNzk2NSwgMjc5NzAsIDI3OTc3LCAyNzk4NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMjc5OTAsIDI3OTk1LCAyNzk5OCwgMjgwMDIsIDI4MDA2LCAyODAxMCwgMjgwMTQsIDI4MDE4LCAyODAyMiwgCi0gICAgMjgwMjYsIDI4MDMwLCAyODAzNCwgMjgwMzgsIDI4MDQyLCAyODA0NiwgMjgwNTAsIDI4MDUzLCAyODA1NiwgMjgwNjAsIAotICAgIDI4MDY0LCAyODA2OCwgMjgwNzEsIDI4MDc0LCAyODA3NywgMjgwODEsIDI4MDg1LCAyODA4OSwgMjgwOTMsIDI4MDk3LCAwLCAKLSAgICAwLCAwLCAyODEwMCwgMjgxMDQsIDI4MTA4LCAyODExMiwgMjgxMTcsIDI4MTIyLCAyODEyNywgMjgxMzIsIDI4MTM2LCAKLSAgICAyODE0MCwgMjgxNDUsIDI4MTUwLCAwLCAwLCAwLCAwLCAyODE1NiwgMjgxNjAsIDI4MTY1LCAyODE3MCwgMjgxNzUsIAotICAgIDI4MTc5LCAyODE4MywgMjgxODcsIDI4MTkxLCAyODE5NiwgMjgyMDAsIDI4MjA0LCAwLCAwLCAwLCAwLCAyODIwOCwgMCwgMCwgCi0gICAgMCwgMjgyMTIsIDI4MjE2LCAyODIyMCwgMjgyMjQsIDI4MjI3LCAyODIzMCwgMjgyMzMsIDI4MjM2LCAyODIzOSwgMjgyNDIsIAotICAgIDI4MjQ1LCAyODI0OCwgMjgyNTEsIDI4MjU2LCAyODI2MiwgMjgyNjgsIDI4Mjc0LCAyODI4MCwgMjgyODUsIDI4MjkxLCAKLSAgICAyODI5NywgMjgzMDMsIDI4MzA4LCAyODMxNCwgMjgzMTksIDI4MzI1LCAyODMzMSwgMjgzMzYsIDI4MzQyLCAyODM0OCwgCi0gICAgMjgzNTQsIDI4MzU5LCAyODM2NCwgMjgzNjksIDI4Mzc1LCAyODM4MSwgMjgzODYsIDI4MzkyLCAyODM5NywgMjg0MDMsIAotICAgIDI4NDA4LCAyODQxNCwgMCwgMCwgMjg0MjAsIDI4NDI2LCAyODQzMiwgMjg0MzgsIDI4NDQ0LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAyODQ1MCwgMjg0NTcsIDI4NDY0LCAyODQ3MCwgMjg0NzcsIDI4NDg0LCAyODQ5MCwgMjg0OTcsIAotICAgIDI4NTA0LCAyODUxMSwgMjg1MTgsIDI4NTI0LCAyODUzMSwgMjg1MzgsIDI4NTQ0LCAyODU1MSwgMjg1NTgsIDI4NTY0LCAKLSAgICAyODU3MSwgMjg1NzgsIDI4NTg0LCAyODU5MCwgMjg1OTcsIDI4NjAzLCAyODYwOSwgMjg2MTYsIDI4NjIyLCAyODYyOSwgCi0gICAgMjg2MzYsIDI4NjQzLCAyODY1MCwgMjg2NTcsIDI4NjY0LCAyODY3MCwgMjg2NzcsIDI4Njg0LCAyODY5MCwgMjg2OTcsIAotICAgIDI4NzA0LCAyODcxMSwgMjg3MTgsIDI4NzI1LCAyODczMiwgMjg3MzksIDAsIDAsIDAsIDAsIDI4NzQ2LCAyODc1NCwgCi0gICAgMjg3NjEsIDI4NzY4LCAyODc3NCwgMjg3ODEsIDI4Nzg3LCAyODc5NCwgMjg4MDAsIDI4ODA3LCAyODgxNCwgMjg4MjEsIAotICAgIDI4ODI4LCAyODgzNSwgMjg4NDIsIDI4ODQ5LCAyODg1NiwgMjg4NjMsIDI4ODcwLCAyODg3NywgMjg4ODMsIDI4ODg5LCAKLSAgICAyODg5NiwgMjg5MDMsIDI4OTEwLCAyODkxNiwgMCwgMCwgMCwgMCwgMCwgMCwgMjg5MjIsIDI4OTI4LCAyODkzMywgMjg5MzgsIAotICAgIDI4OTQzLCAyODk0OCwgMjg5NTMsIDI4OTU4LCAyODk2MywgMjg5NjgsIDI4OTczLCAwLCAwLCAwLCAyODk3OSwgMjg5ODUsIAotICAgIDI4OTkxLCAyODk5NSwgMjkwMDEsIDI5MDA3LCAyOTAxMywgMjkwMTksIDI5MDI1LCAyOTAzMSwgMjkwMzcsIDI5MDQzLCAKLSAgICAyOTA0OSwgMjkwNTUsIDI5MDYxLCAyOTA2NywgMjkwNzMsIDI5MDc5LCAyOTA4NSwgMjkwODksIDI5MDk1LCAyOTEwMSwgCi0gICAgMjkxMDcsIDI5MTEzLCAyOTExOSwgMjkxMjUsIDI5MTMxLCAyOTEzNywgMjkxNDMsIDI5MTQ5LCAyOTE1NSwgMjkxNjEsIAotICAgIDI5MTY3LCAyOTE3MywgMjkxNzksIDI5MTgzLCAyOTE4OCwgMjkxOTMsIDI5MTk4LCAyOTIwMiwgMjkyMDcsIDI5MjExLCAKLSAgICAyOTIxNiwgMjkyMjEsIDI5MjI2LCAyOTIzMCwgMjkyMzUsIDI5MjQwLCAyOTI0NSwgMjkyNTAsIDI5MjU1LCAyOTI1OSwgCi0gICAgMjkyNjMsIDI5MjY4LCAyOTI3MywgMjkyNzgsIDI5MjgyLCAyOTI4NiwgMjkyOTEsIDI5Mjk2LCAyOTMwMSwgMjkzMDYsIDAsIAotICAgIDAsIDI5MzEyLCAyOTMxNiwgMjkzMjMsIDI5MzI4LCAyOTMzNCwgMjkzNDAsIDI5MzQ1LCAyOTM1MSwgMjkzNTcsIDI5MzYyLCAKLSAgICAyOTM2OCwgMjkzNzQsIDI5MzgwLCAyOTM4NiwgMjkzOTIsIDI5Mzk3LCAyOTQwMiwgMjk0MDgsIDI5NDEzLCAyOTQxOSwgCi0gICAgMjk0MjQsIDI5NDMwLCAyOTQzNiwgMjk0NDIsIDI5NDQ4LCAyOTQ1MiwgMjk0NTcsIDI5NDYyLCAyOTQ2OCwgMjk0NzQsIAotICAgIDI5NDc5LCAyOTQ4NSwgMjk0OTEsIDI5NDk1LCAyOTUwMCwgMjk1MDUsIDI5NTA5LCAyOTUxNCwgMjk1MTksIDI5NTI0LCAKLSAgICAyOTUyOSwgMjk1MzUsIDI5NTQxLCAyOTU0NywgMjk1NTIsIDI5NTU3LCAyOTU2MSwgMjk1NjYsIDI5NTcwLCAyOTU3NSwgCi0gICAgMjk1NzksIDI5NTg0LCAyOTU4OSwgMjk1OTQsIDI5NTk5LCAyOTYwNiwgMjk2MTMsIDI5NjIxLCAyOTYzMiwgMjk2NDEsIAotICAgIDI5NjQ5LCAyOTY1NiwgMjk2NjcsIDI5NjczLCAyOTY4MCwgMCwgMjk2ODcsIDI5NjkyLCAyOTY5NywgMjk3MDUsIDI5NzExLCAKLSAgICAyOTcxOSwgMjk3MjQsIDI5NzMwLCAyOTczNiwgMjk3NDIsIDI5NzQ3LCAyOTc1MywgMjk3NTgsIDI5NzY1LCAyOTc3MSwgCi0gICAgMjk3NzYsIDI5NzgyLCAyOTc4OCwgMjk3OTQsIDI5ODAxLCAyOTgwOCwgMjk4MTUsIDI5ODIwLCAyOTgyNSwgMjk4MzIsIAotICAgIDI5ODM5LCAyOTg0NiwgMjk4NTMsIDI5ODYwLCAwLCAwLCAyOTg2NywgMjk4NzQsIDI5ODgxLCAyOTg4NywgMjk4OTMsIAotICAgIDI5ODk5LCAyOTkwNSwgMjk5MTEsIDI5OTE3LCAyOTkyMywgMjk5MjksIDAsIDAsIDAsIDAsIDAsIDAsIDI5OTM1LCAyOTk0MSwgCi0gICAgMjk5NDYsIDI5OTUxLCAyOTk1NiwgMjk5NjEsIDI5OTY2LCAyOTk3MSwgMjk5NzYsIDI5OTgxLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAyOTk4NiwgMjk5OTEsIDI5OTk2LCAzMDAwMSwgMzAwMDYsIDMwMDExLCAzMDAxNiwgMzAwMjUsIDMwMDMyLCAzMDAzNywgCi0gICAgMzAwNDIsIDMwMDQ3LCAzMDA1MiwgMzAwNTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDIzMjY1LCAyMzI2OCwgMjMyNzMsIDIzMjc3LCAyMzI4MiwgMjMyODgsIDIzMjk0LCAyMzMwMCwgMjMzMDYsIDIzMzEyLCAKKyAgICAyMzMxOCwgMjMzMjQsIDIzMzI4LCAyMzMzMiwgMjMzMzYsIDIzMzQwLCAyMzM0NCwgMjMzNDgsIDIzMzUyLCAyMzM1NiwgCisgICAgMjMzNjEsIDIzMzY1LCAyMzM3MCwgMjMzNzQsIDIzMzc5LCAyMzM4MywgMjMzODgsIDIzMzkyLCAyMzM5NywgMjM0MDEsIAorICAgIDIzNDA2LCAyMzQxMCwgMjM0MTUsIDIzNDE5LCAyMzQyMywgMjM0MjcsIDIzNDMxLCAyMzQzNSwgMjM0MzksIDIzNDQzLCAKKyAgICAyMzQ0OSwgMjM0NTIsIDIzNDU2LCAyMzQ2MCwgMjM0NjUsIDIzNDY5LCAyMzQ3NCwgMjM0NzgsIDIzNDgzLCAyMzQ4NywgCisgICAgMjM0OTIsIDIzNDk2LCAyMzUwMSwgMjM1MDUsIDIzNTEwLCAyMzUxNCwgMjM1MTksIDIzNTI1LCAyMzUyOSwgMjM1MzUsIAorICAgIDIzNTQwLCAyMzU0NiwgMjM1NTAsIDIzNTU2LCAyMzU2MSwgMjM1NjUsIDIzNTY5LCAyMzU3MywgMjM1NzcsIDIzNTgxLCAKKyAgICAyMzU4NiwgMjM1ODksIDIzNTkzLCAyMzU5OCwgMjM2MDIsIDIzNjA3LCAyMzYxMCwgMjM2MTQsIDIzNjE4LCAyMzYyMiwgCisgICAgMjM2MjYsIDIzNjMwLCAyMzYzNCwgMjM2MzgsIDIzNjQyLCAyMzY0NiwgMjM2NTAsIDIzNjU0LCAyMzY1OSwgMjM2NjMsIAorICAgIDIzNjY3LCAyMzY3MywgMjM2NzcsIDIzNjgzLCAyMzY4NywgMjM2OTMsIDIzNjk3LCAyMzcwMSwgMjM3MDUsIDIzNzA5LCAKKyAgICAyMzcxMywgMjM3MTgsIDIzNzIyLCAyMzcyNiwgMjM3MzAsIDIzNzM0LCAyMzczOCwgMjM3NDIsIDIzNzQ2LCAyMzc1MCwgCisgICAgMjM3NTQsIDIzNzU4LCAyMzc2NCwgMjM3NzAsIDIzNzc2LCAyMzc4MiwgMjM3ODgsIDIzNzkzLCAyMzc5OSwgMjM4MDUsIAorICAgIDIzODExLCAyMzgxNSwgMjM4MTksIDIzODIzLCAyMzgyNywgMjM4MzEsIDIzODM1LCAyMzgzOSwgMjM4NDMsIDIzODQ3LCAKKyAgICAyMzg1MSwgMjM4NTUsIDIzODU5LCAyMzg2MywgMjM4NjgsIDIzODczLCAyMzg3OCwgMjM4ODIsIDIzODg2LCAyMzg5MCwgCisgICAgMjM4OTQsIDIzODk4LCAyMzkwMiwgMjM5MDYsIDIzOTEwLCAyMzkxNCwgMjM5MTgsIDIzOTI0LCAyMzkzMCwgMjM5MzYsIAorICAgIDIzOTQyLCAyMzk0OCwgMjM5NTQsIDIzOTYwLCAyMzk2NiwgMjM5NzIsIDIzOTc2LCAyMzk4MCwgMjM5ODQsIDIzOTg4LCAKKyAgICAyMzk5MiwgMjM5OTYsIDI0MDAwLCAyNDAwNiwgMjQwMTIsIDI0MDE4LCAyNDAyNCwgMjQwMzAsIDI0MDM2LCAyNDA0MiwgCisgICAgMjQwNDgsIDI0MDU0LCAyNDA1OSwgMjQwNjQsIDI0MDY5LCAyNDA3NCwgMjQwODAsIDI0MDg2LCAyNDA5MiwgMjQwOTgsIAorICAgIDI0MTA0LCAyNDExMCwgMjQxMTYsIDI0MTIxLCAyNDEyNywgMjQxMzMsIDI0MTM5LCAyNDE0NCwgMjQxNTAsIDI0MTU2LCAKKyAgICAyNDE2MiwgMjQxNjcsIDI0MTcyLCAyNDE3NywgMjQxODIsIDI0MTg3LCAyNDE5MiwgMjQxOTcsIDI0MjAyLCAyNDIwNywgCisgICAgMjQyMTIsIDI0MjE3LCAyNDIyMiwgMjQyMjYsIDI0MjMxLCAyNDIzNiwgMjQyNDEsIDI0MjQ2LCAyNDI1MSwgMjQyNTYsIAorICAgIDI0MjYxLCAyNDI2NiwgMjQyNzEsIDI0Mjc2LCAyNDI4MSwgMjQyODYsIDI0MjkxLCAyNDI5NiwgMjQzMDEsIDI0MzA2LCAKKyAgICAyNDMxMSwgMjQzMTYsIDI0MzIxLCAyNDMyNiwgMjQzMzEsIDI0MzM2LCAyNDM0MSwgMjQzNDYsIDI0MzUxLCAyNDM1NiwgCisgICAgMjQzNjEsIDI0MzY2LCAyNDM3MSwgMjQzNzUsIDI0MzgwLCAyNDM4NSwgMjQzOTAsIDI0Mzk1LCAyNDQwMCwgMjQ0MDUsIAorICAgIDI0NDEwLCAyNDQxNSwgMjQ0MjAsIDI0NDI1LCAyNDQzMCwgMjQ0MzUsIDI0NDQwLCAyNDQ0NSwgMjQ0NTAsIDI0NDU1LCAKKyAgICAyNDQ2MCwgMjQ0NjUsIDI0NDcwLCAyNDQ3NSwgMjQ0ODAsIDI0NDg1LCAyNDQ5MCwgMjQ0OTUsIDI0NTAwLCAyNDUwNCwgCisgICAgMjQ1MDksIDI0NTE0LCAyNDUxOSwgMjQ1MjQsIDI0NTI5LCAyNDUzMywgMjQ1MzgsIDI0NTQzLCAyNDU0OCwgMjQ1NTMsIAorICAgIDI0NTU4LCAyNDU2MiwgMjQ1NjcsIDI0NTczLCAyNDU3OCwgMjQ1ODMsIDI0NTg4LCAyNDU5MywgMjQ1OTksIDI0NjA0LCAKKyAgICAyNDYwOSwgMjQ2MTQsIDI0NjE5LCAyNDYyNCwgMjQ2MjksIDI0NjM0LCAyNDYzOSwgMjQ2NDQsIDI0NjQ5LCAyNDY1NCwgCisgICAgMjQ2NTksIDI0NjY0LCAyNDY2OSwgMjQ2NzQsIDI0Njc5LCAyNDY4NCwgMjQ2ODksIDI0Njk0LCAyNDY5OSwgMjQ3MDQsIAorICAgIDI0NzA5LCAyNDcxNCwgMjQ3MTksIDI0NzI0LCAyNDcyOSwgMjQ3MzQsIDI0NzM5LCAyNDc0NCwgMjQ3NDksIDI0NzU0LCAKKyAgICAyNDc1OSwgMjQ3NjQsIDI0NzY5LCAyNDc3NCwgMjQ3NzksIDI0Nzg0LCAyNDc4OSwgMjQ3OTQsIDI0Nzk5LCAyNDgwNCwgCisgICAgMjQ4MDksIDI0ODE0LCAyNDgxOSwgMjQ4MjUsIDI0ODMwLCAyNDgzNSwgMjQ4NDAsIDI0ODQ1LCAyNDg1MCwgMjQ4NTUsIAorICAgIDI0ODYwLCAyNDg2NSwgMjQ4NzAsIDI0ODc1LCAyNDg4MCwgMjQ4ODUsIDI0ODkwLCAyNDg5NSwgMjQ5MDAsIDI0OTA1LCAKKyAgICAyNDkxMCwgMjQ5MTUsIDI0OTIwLCAyNDkyNSwgMjQ5MzAsIDI0OTM1LCAyNDk0MCwgMjQ5NDUsIDI0OTUwLCAyNDk1NSwgCisgICAgMjQ5NjAsIDI0OTY1LCAyNDk3MCwgMjQ5NzUsIDI0OTgwLCAyNDk4NSwgMjQ5OTAsIDI0OTk1LCAyNTAwMCwgMjUwMDUsIAorICAgIDI1MDEwLCAyNTAxNSwgMjUwMjEsIDI1MDI1LCAyNTAyOSwgMjUwMzMsIDI1MDM3LCAyNTA0MSwgMjUwNDUsIDI1MDQ5LCAKKyAgICAyNTA1MywgMjUwNTksIDI1MDY1LCAyNTA3MSwgMjUwNzcsIDI1MDgzLCAyNTA4OSwgMjUwOTUsIDI1MTAyLCAyNTEwOCwgCisgICAgMjUxMTMsIDI1MTE4LCAyNTEyMywgMjUxMjgsIDI1MTMzLCAyNTEzOCwgMjUxNDMsIDI1MTQ4LCAyNTE1MywgMjUxNTgsIAorICAgIDI1MTYzLCAyNTE2OCwgMjUxNzMsIDI1MTc4LCAyNTE4MywgMjUxODgsIDI1MTkzLCAyNTE5OCwgMjUyMDMsIDI1MjA4LCAKKyAgICAyNTIxMywgMjUyMTgsIDI1MjIzLCAyNTIyOCwgMjUyMzMsIDI1MjM4LCAyNTI0MywgMjUyNDgsIDAsIDAsIDAsIDI1MjU1LCAKKyAgICAyNTI2NSwgMjUyNjksIDI1Mjc2LCAyNTI4MCwgMjUyODQsIDI1Mjg4LCAyNTI5NiwgMjUzMDAsIDI1MzA1LCAyNTMxMCwgCisgICAgMjUzMTUsIDI1MzE5LCAyNTMyNCwgMjUzMjksIDI1MzMyLCAyNTMzNiwgMjUzNDAsIDI1MzQ5LCAyNTM1MywgMjUzNTcsIAorICAgIDI1MzYzLCAyNTM2NywgMjUzNzEsIDI1Mzc5LCAyNTM4MywgMjUzOTEsIDI1Mzk3LCAyNTQwMywgMjU0MDksIDI1NDE1LCAKKyAgICAyNTQyNCwgMjU0MjksIDI1NDMzLCAyNTQ0MiwgMjU0NDUsIDI1NDUxLCAyNTQ1NSwgMjU0NjEsIDI1NDY2LCAyNTQ3MiwgCisgICAgMjU0ODAsIDI1NDg2LCAyNTQ5MSwgMjU0OTgsIDI1NTAzLCAyNTUwNywgMjU1MTEsIDI1NTIxLCAyNTUyNywgMjU1MzEsIAorICAgIDI1NTQxLCAyNTU0NywgMjU1NTEsIDI1NTU1LCAyNTU2MiwgMjU1NjksIDI1NTc0LCAyNTU3OSwgMjU1ODgsIDI1NTkyLCAKKyAgICAyNTU5NiwgMjU2MDAsIDI1NjA4LCAyNTYxNSwgMjU2MTksIDI1NjIzLCAyNTYyNywgMjU2MzEsIDI1NjM1LCAyNTYzOSwgCisgICAgMjU2NDMsIDI1NjQ3LCAyNTY1MSwgMjU2NTUsIDI1NjU5LCAyNTY2NCwgMjU2NjksIDI1Njc0LCAyNTY3OCwgMjU2ODIsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1Njg2LCAyNTY5MCwgMjU2OTQsIDI1Njk4LCAKKyAgICAyNTcwMiwgMjU3MDcsIDI1NzEyLCAyNTcxNywgMjU3MjIsIDI1NzI2LCAyNTczMCwgMjU3MzUsIDI1NzM5LCAwLCAyNTc0MywgCisgICAgMjU3NDgsIDI1NzUzLCAyNTc1OCwgMjU3NjIsIDI1NzY3LCAyNTc3MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMjU3NzcsIDI1NzgxLCAyNTc4NSwgMjU3ODksIDI1NzkzLCAyNTc5OCwgMjU4MDMsIDI1ODA4LCAyNTgxMywgMjU4MTcsIAorICAgIDI1ODIxLCAyNTgyNiwgMjU4MzAsIDI1ODM0LCAyNTgzOCwgMjU4NDMsIDI1ODQ4LCAyNTg1MywgMjU4NTcsIDI1ODYyLCAKKyAgICAyNTg2NywgMjU4NzIsIDI1ODc4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNTg4MywgMjU4ODcsIDI1ODkxLCAKKyAgICAyNTg5NSwgMjU4OTksIDI1OTA0LCAyNTkwOSwgMjU5MTQsIDI1OTE5LCAyNTkyMywgMjU5MjcsIDI1OTMyLCAyNTkzNiwgCisgICAgMjU5NDAsIDI1OTQ0LCAyNTk0OSwgMjU5NTQsIDI1OTU5LCAyNTk2MywgMjU5NjgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDI1OTczLCAyNTk3NywgMjU5ODEsIDI1OTg1LCAyNTk4OSwgMjU5OTQsIDI1OTk5LCAyNjAwNCwgCisgICAgMjYwMDksIDI2MDEzLCAyNjAxNywgMjYwMjIsIDI2MDI2LCAwLCAyNjAzMCwgMjYwMzUsIDI2MDQwLCAwLCAyNjA0NSwgCisgICAgMjYwNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI2MDU1LCAyNjA1OCwgMjYwNjIsIDI2MDY2LCAKKyAgICAyNjA3MCwgMjYwNzQsIDI2MDc4LCAyNjA4MiwgMjYwODYsIDI2MDkwLCAyNjA5NCwgMjYwOTgsIDI2MTAyLCAyNjEwNiwgCisgICAgMjYxMTAsIDI2MTE0LCAyNjExOCwgMjYxMjIsIDI2MTI1LCAyNjEyOSwgMjYxMzMsIDI2MTM3LCAyNjE0MSwgMjYxNDUsIAorICAgIDI2MTQ5LCAyNjE1MywgMjYxNTcsIDI2MTYxLCAyNjE2NSwgMjYxNjksIDI2MTczLCAyNjE3NywgMjYxODEsIDI2MTg0LCAKKyAgICAyNjE4OCwgMjYxOTIsIDI2MTk4LCAyNjIwNCwgMjYyMTAsIDI2MjE2LCAyNjIyMiwgMjYyMjgsIDI2MjM0LCAyNjI0MCwgCisgICAgMjYyNDYsIDI2MjUyLCAyNjI1OCwgMjYyNjQsIDI2MjcwLCAyNjI3NiwgMjYyODUsIDI2Mjk0LCAyNjMwMCwgMjYzMDYsIAorICAgIDI2MzEyLCAyNjMxNywgMjYzMjEsIDI2MzI2LCAyNjMzMSwgMjYzMzYsIDI2MzQwLCAyNjM0NSwgMjYzNTAsIDI2MzU1LCAKKyAgICAyNjM1OSwgMjYzNjQsIDI2MzY4LCAyNjM3MywgMjYzNzgsIDI2MzgzLCAyNjM4OCwgMjYzOTIsIDI2Mzk2LCAyNjQwMCwgCisgICAgMjY0MDQsIDI2NDA4LCAyNjQxMiwgMjY0MTYsIDI2NDIwLCAyNjQyNCwgMjY0MjgsIDI2NDM0LCAyNjQzOCwgMjY0NDIsIAorICAgIDI2NDQ2LCAyNjQ1MCwgMjY0NTQsIDI2NDYyLCAyNjQ2OCwgMjY0NzIsIDI2NDc4LCAyNjQ4MiwgMjY0ODgsIDI2NDkyLCAwLCAKKyAgICAwLCAyNjQ5NiwgMjY1MDAsIDI2NTAzLCAyNjUwNiwgMjY1MDksIDI2NTEyLCAyNjUxNSwgMjY1MTgsIDI2NTIxLCAyNjUyNCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMjY1MjcsIDI2NTM1LCAyNjU0MywgMjY1NTEsIDI2NTU5LCAyNjU2NywgMjY1NzUsIDI2NTgzLCAKKyAgICAyNjU5MSwgMjY1OTksIDAsIDAsIDAsIDAsIDAsIDAsIDI2NjA3LCAyNjYxMCwgMjY2MTMsIDI2NjE2LCAyNjYyMSwgMjY2MjQsIAorICAgIDI2NjI5LCAyNjYzNiwgMjY2NDQsIDI2NjQ5LCAyNjY1NiwgMjY2NTksIDI2NjY2LCAyNjY3MywgMjY2ODAsIDAsIDI2Njg0LCAKKyAgICAyNjY4OCwgMjY2OTEsIDI2Njk0LCAyNjY5NywgMjY3MDAsIDI2NzAzLCAyNjcwNiwgMjY3MDksIDI2NzEyLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAyNjcxNSwgMjY3MTgsIDI2NzIxLCAyNjcyNCwgMjY3MjcsIDI2NzMwLCAyNjczNCwgMjY3MzgsIDI2NzQyLCAKKyAgICAyNjc0NSwgMjY3NDksIDI2NzUzLCAyNjc1NiwgMjY3NjAsIDI2NzY0LCAyNjc2NywgMjY3NzEsIDI2Nzc1LCAyNjc3OSwgCisgICAgMjY3ODMsIDI2Nzg3LCAyNjc5MSwgMjY3OTUsIDI2Nzk4LCAyNjgwMSwgMjY4MDUsIDI2ODA5LCAyNjgxMiwgMjY4MTYsIAorICAgIDI2ODIwLCAyNjgyNCwgMjY4MjgsIDI2ODMyLCAyNjgzNiwgMjY4NDAsIDI2ODQ0LCAyNjg1MSwgMjY4NTYsIDI2ODYxLCAKKyAgICAyNjg2NiwgMjY4NzEsIDI2ODc3LCAyNjg4MywgMjY4ODksIDI2ODk1LCAyNjkwMCwgMjY5MDYsIDI2OTEyLCAyNjkxNywgCisgICAgMjY5MjMsIDI2OTI5LCAyNjkzNSwgMjY5NDEsIDI2OTQ3LCAyNjk1MiwgMjY5NTgsIDI2OTYzLCAyNjk2OSwgMjY5NzUsIAorICAgIDI2OTgxLCAyNjk4NywgMjY5OTMsIDI2OTk4LCAyNzAwMywgMjcwMDksIDI3MDE1LCAyNzAyMCwgMjcwMjYsIDI3MDMxLCAKKyAgICAyNzAzNywgMjcwNDIsIDI3MDQ3LCAyNzA1MywgMjcwNTksIDI3MDY1LCAyNzA3MSwgMjcwNzcsIDI3MDgzLCAyNzA4OSwgCisgICAgMjcwOTUsIDI3MTAxLCAyNzEwNywgMjcxMTMsIDI3MTE5LCAyNzEyNCwgMjcxMjksIDI3MTM0LCAyNzE0MCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMjcxNDYsIDI3MTU1LCAyNzE2NCwgMjcxNzIsIDI3MTgwLCAyNzE5MCwgMjcxOTgsIDI3MjA3LCAKKyAgICAyNzIxNCwgMjcyMjEsIDI3MjI4LCAyNzIzNiwgMjcyNDQsIDI3MjUyLCAyNzI2MCwgMjcyNjgsIDI3Mjc2LCAyNzI4NCwgCisgICAgMjcyOTIsIDI3Mjk5LCAyNzMwNywgMjczMTUsIDI3MzIzLCAyNzMzMSwgMjczMzksIDI3MzQ5LCAyNzM1OSwgMjczNjksIAorICAgIDI3Mzc5LCAyNzM4OSwgMjczOTksIDI3NDA5LCAyNzQxOSwgMjc0MjksIDI3NDM5LCAyNzQ0OSwgMjc0NTksIDI3NDY5LCAKKyAgICAyNzQ3OSwgMjc0ODcsIDI3NDk1LCAyNzUwNSwgMjc1MTMsIDAsIDAsIDAsIDAsIDAsIDI3NTIzLCAyNzUyNywgMjc1MzEsIAorICAgIDI3NTM1LCAyNzUzOSwgMjc1NDMsIDI3NTQ3LCAyNzU1MSwgMjc1NTUsIDI3NTU5LCAyNzU2MywgMjc1NjcsIDI3NTcxLCAKKyAgICAyNzU3NSwgMjc1NzksIDI3NTgzLCAyNzU4NywgMjc1OTEsIDI3NTk1LCAyNzU5OSwgMjc2MDMsIDI3NjA3LCAyNzYxMSwgCisgICAgMjc2MTUsIDI3NjIxLCAyNzYyNSwgMjc2MzEsIDI3NjM1LCAyNzY0MSwgMjc2NDUsIDI3NjUxLCAyNzY1NSwgMjc2NTksIAorICAgIDI3NjYzLCAyNzY2NywgMjc2NzEsIDI3Njc1LCAyNzY4MSwgMjc2ODcsIDI3NjkzLCAyNzY5OSwgMjc3MDQsIDI3NzA5LCAKKyAgICAyNzcxNCwgMjc3MjAsIDI3NzI2LCAyNzczMiwgMjc3MzgsIDI3NzQ1LCAyNzc1MSwgMjc3NTYsIDI3NzYxLCAyNzc2NSwgCisgICAgMjc3NjksIDI3NzczLCAyNzc3NywgMjc3ODEsIDI3Nzg1LCAyNzc4OSwgMjc3OTUsIDI3ODAxLCAyNzgwNywgMjc4MTIsIAorICAgIDI3ODE5LCAyNzgyNCwgMjc4MjksIDI3ODM1LCAyNzg0MCwgMjc4NDcsIDI3ODU0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAyNzg2MCwgMjc4NjYsIDI3ODcwLCAyNzg3NSwgMjc4ODAsIDI3ODg1LCAyNzg5MCwgMjc4OTUsIDI3OTAwLCAKKyAgICAyNzkwNSwgMjc5MTAsIDI3OTE1LCAyNzkyMCwgMjc5MjUsIDI3OTMwLCAyNzkzNSwgMjc5MzksIDI3OTQzLCAyNzk0OCwgCisgICAgMjc5NTMsIDI3OTU4LCAyNzk2MiwgMjc5NjYsIDI3OTcwLCAyNzk3NSwgMjc5ODAsIDI3OTg1LCAyNzk5MCwgMjc5OTUsIDAsIAorICAgIDAsIDAsIDI3OTk5LCAyODAwNCwgMjgwMDksIDI4MDE0LCAyODAyMCwgMjgwMjYsIDI4MDMyLCAyODAzOCwgMjgwNDMsIAorICAgIDI4MDQ4LCAyODA1NCwgMjgwNjAsIDAsIDAsIDAsIDAsIDI4MDY3LCAyODA3MiwgMjgwNzgsIDI4MDg0LCAyODA5MCwgCisgICAgMjgwOTUsIDI4MTAwLCAyODEwNSwgMjgxMTAsIDI4MTE2LCAyODEyMSwgMjgxMjYsIDAsIDAsIDAsIDAsIDI4MTMxLCAwLCAwLCAKKyAgICAwLCAyODEzNiwgMjgxNDEsIDI4MTQ2LCAyODE1MSwgMjgxNTUsIDI4MTU5LCAyODE2MywgMjgxNjcsIDI4MTcxLCAyODE3NSwgCisgICAgMjgxNzksIDI4MTgzLCAyODE4NywgMjgxOTIsIDI4MTk4LCAyODIwNCwgMjgyMTAsIDI4MjE2LCAyODIyMSwgMjgyMjcsIAorICAgIDI4MjMzLCAyODIzOSwgMjgyNDQsIDI4MjUwLCAyODI1NSwgMjgyNjEsIDI4MjY3LCAyODI3MiwgMjgyNzgsIDI4Mjg0LCAKKyAgICAyODI5MCwgMjgyOTUsIDI4MzAwLCAyODMwNSwgMjgzMTEsIDI4MzE3LCAyODMyMiwgMjgzMjgsIDI4MzMzLCAyODMzOSwgCisgICAgMjgzNDQsIDI4MzUwLCAwLCAwLCAyODM1NiwgMjgzNjIsIDI4MzY4LCAyODM3NCwgMjgzODAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDI4Mzg2LCAyODM5MywgMjg0MDAsIDI4NDA2LCAyODQxMywgMjg0MjAsIDI4NDI2LCAyODQzMywgCisgICAgMjg0NDAsIDI4NDQ3LCAyODQ1NCwgMjg0NjAsIDI4NDY3LCAyODQ3NCwgMjg0ODAsIDI4NDg3LCAyODQ5NCwgMjg1MDAsIAorICAgIDI4NTA3LCAyODUxNCwgMjg1MjAsIDI4NTI2LCAyODUzMywgMjg1MzksIDI4NTQ1LCAyODU1MiwgMjg1NTgsIDI4NTY1LCAKKyAgICAyODU3MiwgMjg1NzksIDI4NTg2LCAyODU5MywgMjg2MDAsIDI4NjA2LCAyODYxMywgMjg2MjAsIDI4NjI2LCAyODYzMywgCisgICAgMjg2NDAsIDI4NjQ3LCAyODY1NCwgMjg2NjEsIDI4NjY4LCAyODY3NSwgMCwgMCwgMCwgMCwgMjg2ODIsIDI4NjkwLCAKKyAgICAyODY5NywgMjg3MDQsIDI4NzEwLCAyODcxNywgMjg3MjMsIDI4NzMwLCAyODczNiwgMjg3NDMsIDI4NzUwLCAyODc1NywgCisgICAgMjg3NjQsIDI4NzcxLCAyODc3OCwgMjg3ODUsIDI4NzkyLCAyODc5OSwgMjg4MDYsIDI4ODEzLCAyODgxOSwgMjg4MjUsIAorICAgIDI4ODMyLCAyODgzOSwgMjg4NDYsIDI4ODUyLCAwLCAwLCAwLCAwLCAwLCAwLCAyODg1OCwgMjg4NjQsIDI4ODY5LCAyODg3NCwgCisgICAgMjg4NzksIDI4ODg0LCAyODg4OSwgMjg4OTQsIDI4ODk5LCAyODkwNCwgMjg5MDksIDAsIDAsIDAsIDI4OTE1LCAyODkyMSwgCisgICAgMjg5MjcsIDI4OTMxLCAyODkzNywgMjg5NDMsIDI4OTQ5LCAyODk1NSwgMjg5NjEsIDI4OTY3LCAyODk3MywgMjg5NzksIAorICAgIDI4OTg1LCAyODk5MSwgMjg5OTcsIDI5MDAzLCAyOTAwOSwgMjkwMTUsIDI5MDIxLCAyOTAyNSwgMjkwMzEsIDI5MDM3LCAKKyAgICAyOTA0MywgMjkwNDksIDI5MDU1LCAyOTA2MSwgMjkwNjcsIDI5MDczLCAyOTA3OSwgMjkwODUsIDI5MDkxLCAyOTA5NywgCisgICAgMjkxMDMsIDI5MTA5LCAyOTExNSwgMjkxMTksIDI5MTI0LCAyOTEyOSwgMjkxMzQsIDI5MTM4LCAyOTE0MywgMjkxNDcsIAorICAgIDI5MTUyLCAyOTE1NywgMjkxNjIsIDI5MTY2LCAyOTE3MSwgMjkxNzYsIDI5MTgxLCAyOTE4NiwgMjkxOTEsIDI5MTk1LCAKKyAgICAyOTE5OSwgMjkyMDQsIDI5MjA5LCAyOTIxNCwgMjkyMTgsIDI5MjIyLCAyOTIyNywgMjkyMzIsIDI5MjM3LCAyOTI0MiwgMCwgCisgICAgMCwgMjkyNDgsIDI5MjUyLCAyOTI1OSwgMjkyNjQsIDI5MjcwLCAyOTI3NiwgMjkyODEsIDI5Mjg3LCAyOTI5MywgMjkyOTgsIAorICAgIDI5MzA0LCAyOTMxMCwgMjkzMTYsIDI5MzIyLCAyOTMyOCwgMjkzMzMsIDI5MzM4LCAyOTM0NCwgMjkzNDksIDI5MzU1LCAKKyAgICAyOTM2MCwgMjkzNjYsIDI5MzcyLCAyOTM3OCwgMjkzODQsIDI5Mzg4LCAyOTM5MywgMjkzOTgsIDI5NDA0LCAyOTQxMCwgCisgICAgMjk0MTUsIDI5NDIxLCAyOTQyNywgMjk0MzEsIDI5NDM2LCAyOTQ0MSwgMjk0NDUsIDI5NDUwLCAyOTQ1NSwgMjk0NjAsIAorICAgIDI5NDY1LCAyOTQ3MSwgMjk0NzcsIDI5NDgzLCAyOTQ4OCwgMjk0OTMsIDI5NDk3LCAyOTUwMiwgMjk1MDYsIDI5NTExLCAKKyAgICAyOTUxNSwgMjk1MjAsIDI5NTI1LCAyOTUzMCwgMjk1MzUsIDI5NTQyLCAyOTU0OCwgMjk1NTUsIDI5NTY1LCAyOTU3NCwgCisgICAgMjk1ODEsIDI5NTg3LCAyOTU5NywgMjk2MDIsIDI5NjA4LCAwLCAyOTYxNCwgMjk2MTksIDI5NjI0LCAyOTYzMiwgMjk2MzgsIAorICAgIDI5NjQ2LCAyOTY1MSwgMjk2NTcsIDI5NjYzLCAyOTY2OSwgMjk2NzQsIDI5NjgwLCAyOTY4NSwgMjk2OTIsIDI5Njk4LCAKKyAgICAyOTcwMywgMjk3MDksIDI5NzE1LCAyOTcyMSwgMjk3MjgsIDI5NzM1LCAyOTc0MiwgMjk3NDcsIDI5NzUyLCAyOTc1OSwgCisgICAgMjk3NjYsIDI5NzczLCAyOTc4MCwgMjk3ODcsIDAsIDAsIDI5Nzk0LCAyOTgwMSwgMjk4MDgsIDI5ODE0LCAyOTgyMCwgCisgICAgMjk4MjYsIDI5ODMyLCAyOTgzOCwgMjk4NDQsIDI5ODUwLCAyOTg1NiwgMCwgMCwgMCwgMCwgMCwgMCwgMjk4NjIsIDI5ODY4LCAKKyAgICAyOTg3MywgMjk4NzgsIDI5ODgzLCAyOTg4OCwgMjk4OTMsIDI5ODk4LCAyOTkwMywgMjk5MDgsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDI5OTEzLCAyOTkxOCwgMjk5MjMsIDI5OTI4LCAyOTkzMywgMjk5MzgsIDI5OTQzLCAyOTk1MiwgMjk5NTksIDI5OTY0LCAKKyAgICAyOTk2OSwgMjk5NzQsIDI5OTc5LCAyOTk4NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzAwNjIsIDMwMDY4LCAKLSAgICAzMDA3NCwgMzAwNzgsIDMwMDgyLCAzMDA4NiwgMzAwOTAsIDMwMDk2LCAzMDEwMCwgMzAxMDYsIDMwMTEwLCAzMDExNiwgCi0gICAgMzAxMjIsIDMwMTMwLCAzMDEzNiwgMzAxNDQsIDMwMTQ4LCAzMDE1MiwgMzAxNTYsIDMwMTYyLCAzMDE2NSwgMzAxNzEsIAotICAgIDMwMTc1LCAzMDE4MSwgMzAxODUsIDMwMTg5LCAzMDE5NSwgMzAxOTksIDMwMjA1LCAzMDIwOSwgMzAyMTUsIDMwMjIzLCAKLSAgICAzMDIzMSwgMzAyMzksIDMwMjQ1LCAzMDI0OSwgMzAyNTUsIDMwMjU5LCAzMDI2NSwgMzAyNjgsIDMwMjcxLCAzMDI3NywgCi0gICAgMzAyODEsIDMwMjg3LCAzMDI5MCwgMzAyOTMsIDMwMjk2LCAzMDMwMCwgMzAzMDQsIDMwMzEwLCAzMDMxNiwgMzAzMjAsIAotICAgIDMwMzIzLCAzMDMyNywgMzAzMzIsIDMwMzM3LCAzMDM0NCwgMzAzNDksIDMwMzU2LCAzMDM2MywgMzAzNzIsIDMwMzc5LCAKLSAgICAzMDM4OCwgMzAzOTMsIDMwNDAwLCAzMDQwNywgMzA0MTYsIDMwNDIxLCAzMDQyOCwgMzA0MzMsIDMwNDM5LCAzMDQ0NSwgCi0gICAgMzA0NTEsIDMwNDU3LCAzMDQ2MywgMzA0NjksIDAsIDAsIDAsIDAsIDMwNDc1LCAzMDQ3OSwgMzA0ODIsIDMwNDg1LCAKLSAgICAzMDQ4OCwgMzA0OTEsIDMwNDk0LCAzMDQ5NywgMzA1MDAsIDMwNTAzLCAzMDUwNiwgMzA1MDksIDMwNTEyLCAzMDUxNSwgCi0gICAgMzA1MjAsIDMwNTI1LCAzMDUzMCwgMzA1MzMsIDMwNTM4LCAzMDU0MywgMzA1NDgsIDMwNTUzLCAzMDU2MCwgMzA1NjUsIAotICAgIDMwNTcwLCAzMDU3NSwgMzA1ODAsIDMwNTg3LCAzMDU5MywgMzA1OTksIDMwNjA1LCAzMDYxMSwgMzA2MTcsIDMwNjI2LCAKLSAgICAzMDYzNSwgMzA2NDEsIDMwNjQ3LCAzMDY1NiwgMzA2NjUsIDMwNjc0LCAzMDY4MywgMzA2OTIsIDMwNzAxLCAzMDcxMCwgCi0gICAgMzA3MTksIDAsIDAsIDAsIDMwNzI4LCAzMDczMywgMzA3MzgsIDMwNzQzLCAzMDc0NywgMzA3NTEsIDMwNzU1LCAzMDc2MCwgCi0gICAgMzA3NjQsIDMwNzY4LCAzMDc3MywgMzA3NzcsIDMwNzgyLCAzMDc4NywgMzA3OTIsIDMwNzk3LCAzMDgwMiwgMzA4MDcsIAotICAgIDMwODEyLCAzMDgxNywgMzA4MjIsIDMwODI2LCAzMDgzMCwgMzA4MzUsIDMwODQwLCAzMDg0NSwgMzA4NDksIDMwODUzLCAKLSAgICAzMDg1NywgMzA4NjIsIDMwODY3LCAzMDg3MiwgMzA4NzcsIDMwODgxLCAzMDg4OCwgMzA4OTUsIDMwOTAyLCAzMDkwOCwgCi0gICAgMzA5MTQsIDMwOTIwLCAzMDkyNiwgMzA5MzIsIDMwOTM4LCAwLCAwLCAwLCAzMDk0MywgMzA5NDgsIDMwOTUzLCAzMDk1OCwgCi0gICAgMzA5NjIsIDMwOTY2LCAzMDk3MCwgMzA5NzQsIDMwOTc4LCAzMDk4MiwgMzA5ODYsIDMwOTkwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAzMDk5NCwgMzA5OTgsIDMxMDA0LCAzMTAwOCwgMzEwMTQsIDMxMDIwLCAzMTAyNSwgMzEwMzIsIDMxMDM2LCAzMTA0MiwgCi0gICAgMzEwNDYsIDMxMDUyLCAzMTA1NywgMzEwNjQsIDMxMDcxLCAzMTA3NiwgMzEwODMsIDMxMDg4LCAzMTA5MywgMzEwOTcsIAotICAgIDMxMTAzLCAzMTEwNywgMzExMTMsIDMxMTIwLCAzMTEyNywgMzExMzIsIDMxMTM5LCAzMTE0NiwgMzExNTAsIDMxMTU2LCAKLSAgICAzMTE2MSwgMzExNjYsIDMxMTczLCAzMTE3OCwgMzExODMsIDMxMTg4LCAzMTE5MywgMzExOTcsIDMxMjAxLCAzMTIwNiwgCi0gICAgMzEyMTEsIDMxMjE4LCAzMTIyNCwgMzEyMjksIDMxMjM2LCAzMTI0MSwgMzEyNDgsIDMxMjUzLCAzMTI2MywgMzEyNzAsIAotICAgIDMxMjc3LCAzMTI4MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzEyODUsIDMxMjk0LCAzMTMwMSwgMzEzMDgsIDMxMzE1LCAKLSAgICAzMTMxOCwgMzEzMjIsIDMxMzI2LCAzMTMzMCwgMzEzMzQsIDMxMzM4LCAzMTM0MiwgMzEzNDYsIDMxMzUwLCAzMTM1NCwgCi0gICAgMzEzNTgsIDMxMzYyLCAzMTM2NiwgMzEzNjksIDMxMzcyLCAzMTM3NiwgMzEzODAsIDMxMzg0LCAzMTM4OCwgMzEzOTIsIAotICAgIDMxMzk2LCAzMTM5OSwgMzE0MDMsIDMxNDA3LCAzMTQxMSwgMzE0MTUsIDMxNDE4LCAzMTQyMSwgMzE0MjUsIDMxNDI4LCAKLSAgICAzMTQzMiwgMzE0MzYsIDMxNDQwLCAzMTQ0NCwgMzE0NDgsIDMxNDUxLCAzMTQ1NiwgMzE0NjEsIDMxNDY2LCAzMTQ3MCwgCi0gICAgMzE0NzQsIDMxNDc5LCAzMTQ4MywgMzE0ODgsIDMxNDkyLCAzMTQ5OCwgMzE1MDMsIDMxNTA4LCAzMTUxMywgMzE1MTksIAotICAgIDMxNTI0LCAzMTUzMCwgMzE1MzYsIDMxNTQyLCAzMTU0NiwgMCwgMCwgMCwgMzE1NTAsIDMxNTU1LCAzMTU2NCwgMzE1NjksIAotICAgIDMxNTc2LCAzMTU4MSwgMzE1ODUsIDMxNTg4LCAzMTU5MSwgMzE1OTQsIDMxNTk3LCAzMTYwMCwgMzE2MDMsIDMxNjA2LCAKLSAgICAzMTYwOSwgMCwgMCwgMCwgMzE2MTIsIDMxNjE2LCAzMTYyMCwgMzE2MjQsIDMxNjMxLCAzMTYzNywgMzE2NDMsIDMxNjQ5LCAKLSAgICAzMTY1NSwgMzE2NjEsIDMxNjY3LCAzMTY3MywgMzE2NzksIDMxNjg1LCAzMTY5MiwgMzE2OTksIDMxNzA2LCAzMTcxMywgCi0gICAgMzE3MjAsIDMxNzI3LCAzMTczNCwgMzE3NDEsIDMxNzQ4LCAzMTc1NSwgMzE3NjIsIDMxNzY5LCAzMTc3NiwgMzE3ODMsIAotICAgIDMxNzkwLCAzMTc5NywgMzE4MDQsIDMxODExLCAzMTgxOCwgMzE4MjUsIDMxODMyLCAzMTgzOSwgMzE4NDYsIDMxODUzLCAKLSAgICAzMTg2MCwgMzE4NjcsIDMxODc0LCAzMTg4MSwgMzE4ODgsIDMxODk1LCAzMTkwMywgMzE5MTEsIDMxOTE5LCAzMTkyNSwgCi0gICAgMzE5MzEsIDMxOTM3LCAzMTk0NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjk5ODksIDI5OTk1LCAKKyAgICAzMDAwMSwgMzAwMDUsIDMwMDA5LCAzMDAxMywgMzAwMTcsIDMwMDIzLCAzMDAyNywgMzAwMzMsIDMwMDM3LCAzMDA0MywgCisgICAgMzAwNDksIDMwMDU3LCAzMDA2MywgMzAwNzEsIDMwMDc1LCAzMDA3OSwgMzAwODMsIDMwMDg5LCAzMDA5MiwgMzAwOTgsIAorICAgIDMwMTAyLCAzMDEwOCwgMzAxMTIsIDMwMTE2LCAzMDEyMiwgMzAxMjYsIDMwMTMyLCAzMDEzNiwgMzAxNDIsIDMwMTUwLCAKKyAgICAzMDE1OCwgMzAxNjYsIDMwMTcyLCAzMDE3NiwgMzAxODIsIDMwMTg2LCAzMDE5MiwgMzAxOTUsIDMwMTk4LCAzMDIwNCwgCisgICAgMzAyMDgsIDMwMjE0LCAzMDIxNywgMzAyMjAsIDMwMjIzLCAzMDIyNywgMzAyMzEsIDMwMjM3LCAzMDI0MywgMzAyNDcsIAorICAgIDMwMjUwLCAzMDI1NCwgMzAyNTksIDMwMjY0LCAzMDI3MSwgMzAyNzYsIDMwMjgzLCAzMDI5MCwgMzAyOTksIDMwMzA2LCAKKyAgICAzMDMxNSwgMzAzMjAsIDMwMzI3LCAzMDMzNCwgMzAzNDMsIDMwMzQ4LCAzMDM1NSwgMzAzNjAsIDMwMzY2LCAzMDM3MiwgCisgICAgMzAzNzgsIDMwMzg0LCAzMDM5MCwgMzAzOTYsIDAsIDAsIDAsIDAsIDMwNDAyLCAzMDQwNiwgMzA0MDksIDMwNDEyLCAKKyAgICAzMDQxNSwgMzA0MTgsIDMwNDIxLCAzMDQyNCwgMzA0MjcsIDMwNDMwLCAzMDQzMywgMzA0MzYsIDMwNDM5LCAzMDQ0MiwgCisgICAgMzA0NDcsIDMwNDUyLCAzMDQ1NywgMzA0NjAsIDMwNDY1LCAzMDQ3MCwgMzA0NzUsIDMwNDgwLCAzMDQ4NywgMzA0OTIsIAorICAgIDMwNDk3LCAzMDUwMiwgMzA1MDcsIDMwNTE0LCAzMDUyMCwgMzA1MjYsIDMwNTMyLCAzMDUzOCwgMzA1NDQsIDMwNTUzLCAKKyAgICAzMDU2MiwgMzA1NjgsIDMwNTc0LCAzMDU4MiwgMzA1OTAsIDMwNTk5LCAzMDYwOCwgMzA2MTYsIDMwNjI0LCAzMDYzMywgCisgICAgMzA2NDIsIDAsIDAsIDAsIDMwNjUwLCAzMDY1NSwgMzA2NjAsIDMwNjY1LCAzMDY2OSwgMzA2NzMsIDMwNjc3LCAzMDY4MiwgCisgICAgMzA2ODYsIDMwNjkwLCAzMDY5NSwgMzA2OTksIDMwNzA0LCAzMDcwOSwgMzA3MTQsIDMwNzE5LCAzMDcyNCwgMzA3MjksIAorICAgIDMwNzM0LCAzMDczOSwgMzA3NDQsIDMwNzQ4LCAzMDc1MiwgMzA3NTcsIDMwNzYyLCAzMDc2NywgMzA3NzEsIDMwNzc1LCAKKyAgICAzMDc3OSwgMzA3ODQsIDMwNzg5LCAzMDc5NCwgMzA3OTksIDMwODAzLCAzMDgwOSwgMzA4MTUsIDMwODIxLCAzMDgyNywgCisgICAgMzA4MzMsIDMwODM5LCAzMDg0NSwgMzA4NTEsIDMwODU3LCAwLCAwLCAwLCAzMDg2MiwgMzA4NjcsIDMwODcyLCAzMDg3NywgCisgICAgMzA4ODEsIDMwODg1LCAzMDg4OSwgMzA4OTMsIDMwODk3LCAzMDkwMSwgMzA5MDUsIDMwOTA5LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAzMDkxMywgMzA5MTcsIDMwOTIzLCAzMDkyNywgMzA5MzMsIDMwOTM5LCAzMDk0NCwgMzA5NTEsIDMwOTU1LCAzMDk2MSwgCisgICAgMzA5NjUsIDMwOTcxLCAzMDk3NiwgMzA5ODMsIDMwOTkwLCAzMDk5NSwgMzEwMDIsIDMxMDA3LCAzMTAxMiwgMzEwMTYsIAorICAgIDMxMDIyLCAzMTAyNiwgMzEwMzIsIDMxMDM5LCAzMTA0NiwgMzEwNTEsIDMxMDU4LCAzMTA2NSwgMzEwNjksIDMxMDc1LCAKKyAgICAzMTA4MCwgMzEwODUsIDMxMDkyLCAzMTA5NywgMzExMDIsIDMxMTA3LCAzMTExMiwgMzExMTYsIDMxMTIwLCAzMTEyNSwgCisgICAgMzExMzAsIDMxMTM3LCAzMTE0MywgMzExNDgsIDMxMTU1LCAzMTE2MCwgMzExNjcsIDMxMTcyLCAzMTE4MiwgMzExODgsIAorICAgIDMxMTk0LCAzMTE5OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzEyMDIsIDMxMjExLCAzMTIxOCwgMzEyMjUsIDMxMjMyLCAKKyAgICAzMTIzNSwgMzEyMzksIDMxMjQzLCAzMTI0NywgMzEyNTEsIDMxMjU1LCAzMTI1OSwgMzEyNjMsIDMxMjY3LCAzMTI3MSwgCisgICAgMzEyNzUsIDMxMjc5LCAzMTI4MywgMzEyODYsIDMxMjg5LCAzMTI5MywgMzEyOTcsIDMxMzAxLCAzMTMwNSwgMzEzMDksIAorICAgIDMxMzEzLCAzMTMxNiwgMzEzMjAsIDMxMzI0LCAzMTMyOCwgMzEzMzIsIDMxMzM1LCAzMTMzOCwgMzEzNDIsIDMxMzQ1LCAKKyAgICAzMTM0OSwgMzEzNTMsIDMxMzU3LCAzMTM2MSwgMzEzNjUsIDMxMzY4LCAzMTM3MywgMzEzNzgsIDMxMzgzLCAzMTM4NywgCisgICAgMzEzOTEsIDMxMzk2LCAzMTQwMCwgMzE0MDUsIDMxNDA5LCAzMTQxNCwgMzE0MTgsIDMxNDIyLCAzMTQyNiwgMzE0MzEsIAorICAgIDMxNDM1LCAzMTQ0MCwgMzE0NDUsIDMxNDUwLCAzMTQ1NCwgMCwgMCwgMCwgMzE0NTgsIDMxNDYzLCAzMTQ3MiwgMzE0NzcsIAorICAgIDMxNDg0LCAzMTQ4OSwgMzE0OTMsIDMxNDk2LCAzMTQ5OSwgMzE1MDIsIDMxNTA1LCAzMTUwOCwgMzE1MTEsIDMxNTE0LCAKKyAgICAzMTUxNywgMCwgMCwgMCwgMzE1MjAsIDMxNTI0LCAzMTUyOCwgMzE1MzIsIDMxNTM5LCAzMTU0NSwgMzE1NTEsIDMxNTU3LCAKKyAgICAzMTU2MywgMzE1NjksIDMxNTc1LCAzMTU4MSwgMzE1ODcsIDMxNTkzLCAzMTYwMCwgMzE2MDcsIDMxNjE0LCAzMTYyMSwgCisgICAgMzE2MjgsIDMxNjM1LCAzMTY0MiwgMzE2NDksIDMxNjU2LCAzMTY2MywgMzE2NzAsIDMxNjc3LCAzMTY4NCwgMzE2OTEsIAorICAgIDMxNjk4LCAzMTcwNSwgMzE3MTIsIDMxNzE5LCAzMTcyNiwgMzE3MzMsIDMxNzQwLCAzMTc0NywgMzE3NTQsIDMxNzYxLCAKKyAgICAzMTc2OCwgMzE3NzUsIDMxNzgyLCAzMTc4OSwgMzE3OTYsIDMxODAzLCAzMTgxMSwgMzE4MTksIDMxODI3LCAzMTgzMywgCisgICAgMzE4MzksIDMxODQ1LCAzMTg1MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzE5NTQsIDMxOTU5LCAzMTk2NCwgMzE5NjksIAotICAgIDMxOTc0LCAzMTk4MywgMzE5OTQsIDMyMDAzLCAzMjAxNCwgMzIwMjAsIDMyMDMzLCAzMjAzOSwgMzIwNDYsIDMyMDUzLCAKLSAgICAzMjA1OCwgMzIwNjQsIDMyMDcwLCAzMjA4MSwgMzIwOTAsIDMyMDk3LCAzMjEwNCwgMzIxMTMsIDMyMTIwLCAzMjEyOSwgCi0gICAgMzIxMzksIDMyMTQ5LCAzMjE1NiwgMzIxNjMsIDMyMTcwLCAzMjE4MCwgMzIxODUsIDMyMTkzLCAzMjE5OSwgMzIyMDcsIAotICAgIDMyMjE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMjIyMSwgMzIyMjYsIDMyMjMyLCAzMjIzOSwgCi0gICAgMzIyNDcsIDMyMjUzLCAzMjI1OSwgMzIyNjUsIDMyMjcwLCAzMjI3OCwgMzIyODQsIDMyMjkwLCAzMjI5NiwgMzIzMDQsIAotICAgIDMyMzA5LCAzMjMxNiwgMzIzMjEsIDMyMzI4LCAzMjMzNCwgMzIzNDIsIDMyMzUwLCAzMjM1NywgMzIzNjMsIDMyMzcwLCAKLSAgICAzMjM3NywgMzIzODMsIDMyMzkwLCAzMjM5NywgMzI0MDMsIDMyNDA4LCAzMjQxNCwgMzI0MjIsIDMyNDMwLCAzMjQzNiwgCi0gICAgMzI0NDIsIDMyNDQ4LCAzMjQ1NCwgMzI0NjIsIDMyNDY2LCAzMjQ3MiwgMzI0NzgsIDMyNDg0LCAzMjQ5MCwgMzI0OTYsIAotICAgIDMyNTAyLCAzMjUwNiwgMzI1MTEsIDMyNTE2LCAzMjUyMywgMzI1MjgsIDMyNTMyLCAzMjUzOCwgMzI1NDMsIDMyNTQ4LCAKLSAgICAzMjU1MiwgMzI1NTcsIDMyNTYyLCAzMjU2NiwgMzI1NzAsIDMyNTc0LCAzMjU4MCwgMzI1ODQsIDMyNTg5LCAzMjU5NCwgCi0gICAgMzI1OTgsIDMyNjAzLCAzMjYwNywgMzI2MTIsIDMyNjE2LCAzMjYyMiwgMzI2MjcsIDMyNjM0LCAzMjYzOSwgMzI2NDQsIAotICAgIDMyNjQ4LCAzMjY1MywgMzI2NTksIDMyNjY3LCAzMjY3MiwgMzI2NzgsIDMyNjgzLCAzMjY4NywgMzI2OTIsIDMyNjk2LCAKLSAgICAzMjcwMiwgMzI3MDksIDMyNzE2LCAzMjcyMSwgMzI3MjYsIDMyNzMwLCAzMjczNiwgMzI3NDIsIDMyNzQ3LCAzMjc1MiwgCi0gICAgMzI3NTcsIDMyNzYzLCAzMjc2OCwgMzI3NzQsIDMyNzc5LCAzMjc4NSwgMzI3OTEsIDMyNzk3LCAzMjgwNCwgMzI4MTEsIAotICAgIDMyODE4LCAzMjgyNSwgMzI4MzIsIDMyODM5LCAzMjg0NCwgMzI4NTMsIDMyODYzLCAzMjg3MywgMzI4ODMsIDMyODkzLCAKLSAgICAzMjkwMywgMzI5MTMsIDMyOTI2LCAzMjkzNiwgMzI5NDYsIDMyOTU2LCAzMjk2MywgMzI5NjgsIDMyOTc1LCAzMjk4MywgCi0gICAgMzI5OTEsIDMyOTk4LCAzMzAwNSwgMzMwMTIsIDMzMDE5LCAzMzAyNywgMzMwMzYsIDMzMDQ1LCAzMzA1NCwgMzMwNjMsIAotICAgIDMzMDcyLCAzMzA4MSwgMzMwOTAsIDMzMDk5LCAzMzEwOCwgMzMxMTcsIDMzMTI2LCAzMzEzNSwgMzMxNDQsIDMzMTUzLCAKLSAgICAzMzE2MSwgMzMxNzAsIDMzMTgxLCAzMzE4OSwgMzMxOTksIDMzMjExLCAzMzIyMCwgMzMyMjksIDMzMjM5LCAzMzI0OCwgCi0gICAgMzMyNTYsIDMzMjY1LCAzMzI3MiwgMzMyNzcsIDMzMjg1LCAzMzI5MCwgMzMyOTgsIDMzMzAzLCAzMzMxMiwgMzMzMTgsIAotICAgIDMzMzI1LCAzMzMzMiwgMzMzMzcsIDMzMzQyLCAzMzM1MCwgMzMzNTgsIDMzMzY3LCAzMzM3NiwgMzMzODEsIDMzMzg4LCAKLSAgICAzMzM5OSwgMzM0MDcsIDMzNDE2LCAzMzQyMSwgMzM0MjcsIDMzNDMyLCAzMzQzOSwgMzM0NDQsIDMzNDUzLCAzMzQ1OCwgCi0gICAgMzM0NjMsIDMzNDY4LCAzMzQ3NSwgMzM0ODIsIDMzNDg3LCAzMzQ5NiwgMzM1MDQsIDMzNTA5LCAzMzUxNCwgMzM1MjEsIAotICAgIDMzNTI4LCAzMzUzMiwgMzM1MzYsIDMzNTM5LCAzMzU0MiwgMzM1NDUsIDMzNTQ4LCAzMzU1MSwgMzM1NTQsIDMzNTYxLCAKLSAgICAzMzU2NCwgMzM1NjcsIDMzNTcyLCAzMzU3NiwgMzM1ODAsIDMzNTg0LCAzMzU4OCwgMzM1OTIsIDMzNjAyLCAzMzYwOCwgCi0gICAgMzM2MTQsIDMzNjIwLCAzMzYyOCwgMzM2MzYsIDMzNjQyLCAzMzY0OCwgMzM2NTUsIDMzNjYxLCAzMzY2NiwgMzM2NzIsIAotICAgIDMzNjc4LCAzMzY4MywgMzM2ODksIDMzNjk1LCAzMzcwMywgMzM3MDgsIDMzNzE0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMzcyMCwgMzM3MjcsIDMzNzM0LCAzMzczOSwgMzM3NDgsIAotICAgIDMzNzU2LCAzMzc2NCwgMzM3NzEsIDMzNzc4LCAzMzc4NSwgMzM3OTIsIDMzODAwLCAzMzgwOCwgMzM4MTgsIDMzODI4LCAKLSAgICAzMzgzNiwgMzM4NDQsIDMzODUyLCAzMzg2MCwgMzM4NjksIDMzODc4LCAzMzg4NiwgMzM4OTQsIDMzOTAzLCAzMzkxMiwgCi0gICAgMzM5MjIsIDMzOTMyLCAzMzk0MSwgMzM5NTAsIDMzOTU4LCAzMzk2NiwgMzM5NzQsIDMzOTgyLCAzMzk5MiwgMzQwMDIsIAotICAgIDM0MDEwLCAzNDAxOCwgMzQwMjYsIDM0MDM0LCAzNDA0MiwgMzQwNTAsIDM0MDU4LCAzNDA2NiwgMzQwNzQsIDM0MDgyLCAKLSAgICAzNDA5MCwgMzQwOTgsIDM0MTA3LCAzNDExNiwgMzQxMjUsIDM0MTM0LCAzNDE0NCwgMzQxNTQsIDM0MTYxLCAzNDE2OCwgCi0gICAgMzQxNzYsIDM0MTg0LCAzNDE5MywgMzQyMDIsIDM0MjEwLCAzNDIxOCwgMzQyMzAsIDM0MjQyLCAzNDI1MSwgMzQyNjAsIAotICAgIDM0MjY5LCAzNDI3OCwgMzQyODUsIDM0MjkyLCAzNDMwMCwgMzQzMDgsIDM0MzE2LCAzNDMyNCwgMzQzMzIsIDM0MzQwLCAKLSAgICAzNDM0OCwgMzQzNTYsIDM0MzY1LCAzNDM3NCwgMzQzODMsIDM0MzkyLCAzNDQwMSwgMzQ0MTAsIDM0NDIwLCAzNDQzMCwgCi0gICAgMzQ0NDAsIDM0NDUwLCAzNDQ1OSwgMzQ0NjgsIDM0NDc1LCAzNDQ4MiwgMzQ0OTAsIDM0NDk4LCAzNDUwNiwgMzQ1MTQsIAotICAgIDM0NTIyLCAzNDUzMCwgMzQ1NDIsIDM0NTU0LCAzNDU2MywgMzQ1NzIsIDM0NTgwLCAzNDU4OCwgMzQ1OTYsIDM0NjA0LCAKLSAgICAzNDYxNSwgMzQ2MjYsIDM0NjM3LCAzNDY0OCwgMzQ2NjAsIDM0NjcyLCAzNDY4MCwgMzQ2ODgsIDM0Njk2LCAzNDcwNCwgCi0gICAgMzQ3MTMsIDM0NzIyLCAzNDczMSwgMzQ3NDAsIDM0NzQ4LCAzNDc1NiwgMzQ3NjQsIDM0NzcyLCAzNDc4MCwgMzQ3ODgsIAotICAgIDM0Nzk3LCAzNDgwNiwgMzQ4MTYsIDM0ODI2LCAzNDgzNCwgMzQ4NDIsIDM0ODUwLCAzNDg1OCwgMzQ4NjYsIDM0ODc0LCAKLSAgICAzNDg4MSwgMzQ4ODgsIDM0ODk2LCAzNDkwNCwgMzQ5MTIsIDM0OTIwLCAzNDkyOCwgMzQ5MzYsIDM0OTQ0LCAzNDk1MiwgCi0gICAgMzQ5NjAsIDM0OTY4LCAzNDk3NiwgMzQ5ODQsIDM0OTkyLCAzNTAwMCwgMzUwMDgsIDM1MDE2LCAzNTAyNSwgMzUwMzQsIAotICAgIDM1MDQzLCAzNTA1MSwgMzUwNjAsIDM1MDY5LCAzNTA3OCwgMzUwODcsIDM1MDk3LCAzNTEwNiwgMzUxMTIsIDM1MTE3LCAKLSAgICAzNTEyNCwgMzUxMzEsIDM1MTM5LCAzNTE0NywgMzUxNTYsIDM1MTY1LCAzNTE3NSwgMzUxODUsIDM1MTk2LCAzNTIwNywgCi0gICAgMzUyMTcsIDM1MjI3LCAzNTIzNywgMzUyNDcsIDM1MjU2LCAzNTI2NSwgMzUyNzUsIDM1Mjg1LCAzNTI5NiwgMzUzMDcsIAotICAgIDM1MzE3LCAzNTMyNywgMzUzMzcsIDM1MzQ3LCAzNTM1NCwgMzUzNjEsIDM1MzY5LCAzNTM3NywgMzUzODQsIDM1MzkxLCAKLSAgICAzNTQwMCwgMzU0MDksIDM1NDE5LCAzNTQyOSwgMzU0NDAsIDM1NDUxLCAzNTQ2MSwgMzU0NzEsIDM1NDgxLCAzNTQ5MSwgCi0gICAgMzU1MDAsIDM1NTA5LCAzNTUxNywgMzU1MjUsIDM1NTMyLCAzNTUzOSwgMzU1NDcsIDM1NTU1LCAzNTU2NCwgMzU1NzMsIAotICAgIDM1NTgzLCAzNTU5MywgMzU2MDQsIDM1NjE1LCAzNTYyNSwgMzU2MzUsIDM1NjQ1LCAzNTY1NSwgMzU2NjQsIDM1NjczLCAKLSAgICAzNTY4MywgMzU2OTMsIDM1NzA0LCAzNTcxNSwgMzU3MjUsIDM1NzM1LCAzNTc0NSwgMzU3NTUsIDM1NzYyLCAzNTc2OSwgCi0gICAgMzU3NzcsIDM1Nzg1LCAzNTc5NCwgMzU4MDMsIDM1ODEzLCAzNTgyMywgMzU4MzQsIDM1ODQ1LCAzNTg1NSwgMzU4NjUsIAotICAgIDM1ODc1LCAzNTg4NSwgMzU4OTMsIDM1OTAxLCAzNTkwOSwgMzU5MTcsIDM1OTI2LCAzNTkzNSwgMzU5NDMsIDM1OTUxLCAKLSAgICAzNTk1OCwgMzU5NjUsIDM1OTcyLCAzNTk3OSwgMzU5ODcsIDM1OTk1LCAzNjAwMywgMzYwMTEsIDM2MDIyLCAzNjAzMiwgCi0gICAgMzYwNDMsIDM2MDUzLCAzNjA2NCwgMzYwNzQsIDM2MDgyLCAzNjA5MCwgMzYxMDEsIDM2MTExLCAzNjEyMiwgMzYxMzIsIAotICAgIDM2MTQzLCAzNjE1MywgMzYxNjEsIDM2MTY5LCAzNjE4MCwgMzYxOTAsIDM2MjAxLCAwLCAwLCAzNjIxMSwgMzYyMTksIAotICAgIDM2MjI3LCAzNjIzOCwgMzYyNDgsIDM2MjU5LCAwLCAwLCAzNjI2OSwgMzYyNzcsIDM2Mjg1LCAzNjI5NiwgMzYzMDYsIAotICAgIDM2MzE3LCAzNjMyNywgMzYzMzgsIDM2MzQ4LCAzNjM1NiwgMzYzNjQsIDM2Mzc1LCAzNjM4NSwgMzYzOTYsIDM2NDA2LCAKLSAgICAzNjQxNywgMzY0MjcsIDM2NDM1LCAzNjQ0MywgMzY0NTQsIDM2NDY0LCAzNjQ3NSwgMzY0ODUsIDM2NDk2LCAzNjUwNiwgCi0gICAgMzY1MTQsIDM2NTIyLCAzNjUzMywgMzY1NDMsIDM2NTU0LCAzNjU2NCwgMzY1NzUsIDM2NTg1LCAzNjU5MywgMzY2MDEsIAotICAgIDM2NjEyLCAzNjYyMiwgMzY2MzMsIDAsIDAsIDM2NjQzLCAzNjY1MSwgMzY2NTksIDM2NjcwLCAzNjY4MCwgMzY2OTEsIDAsIAotICAgIDAsIDM2NzAxLCAzNjcwOSwgMzY3MTcsIDM2NzI4LCAzNjczOCwgMzY3NDksIDM2NzU5LCAzNjc3MCwgMCwgMzY3ODAsIDAsIAotICAgIDM2Nzg4LCAwLCAzNjc5OCwgMCwgMzY4MDgsIDM2ODE4LCAzNjgyNiwgMzY4MzQsIDM2ODQ1LCAzNjg1NSwgMzY4NjYsIAotICAgIDM2ODc2LCAzNjg4NywgMzY4OTcsIDM2OTA1LCAzNjkxMywgMzY5MjQsIDM2OTM0LCAzNjk0NSwgMzY5NTUsIDM2OTY2LCAKLSAgICAzNjk3NiwgMzY5ODQsIDM2OTkyLCAzNzAwMCwgMzcwMDgsIDM3MDE2LCAzNzAyNCwgMzcwMzIsIDM3MDQwLCAzNzA0OCwgCi0gICAgMzcwNTYsIDM3MDY0LCAzNzA3MiwgMzcwODAsIDAsIDAsIDM3MDg4LCAzNzA5OSwgMzcxMDksIDM3MTIzLCAzNzEzNiwgCi0gICAgMzcxNTAsIDM3MTYzLCAzNzE3NywgMzcxOTAsIDM3MjAxLCAzNzIxMSwgMzcyMjUsIDM3MjM4LCAzNzI1MiwgMzcyNjUsIAotICAgIDM3Mjc5LCAzNzI5MiwgMzczMDMsIDM3MzEzLCAzNzMyNywgMzczNDAsIDM3MzU0LCAzNzM2NywgMzczODEsIDM3Mzk0LCAKLSAgICAzNzQwNSwgMzc0MTUsIDM3NDI5LCAzNzQ0MiwgMzc0NTYsIDM3NDY5LCAzNzQ4MywgMzc0OTYsIDM3NTA3LCAzNzUxNywgCi0gICAgMzc1MzEsIDM3NTQ0LCAzNzU1OCwgMzc1NzEsIDM3NTg1LCAzNzU5OCwgMzc2MDksIDM3NjE5LCAzNzYzMywgMzc2NDYsIAotICAgIDM3NjYwLCAzNzY3MywgMzc2ODcsIDM3NzAwLCAzNzcwOCwgMzc3MTYsIDM3NzI3LCAzNzczNSwgMCwgMzc3NDYsIDM3NzU0LCAKLSAgICAzNzc2NSwgMzc3NzMsIDM3NzgxLCAzNzc4OSwgMzc3OTcsIDM3ODA1LCAzNzgwOCwgMzc4MTEsIDM3ODE0LCAzNzgxNywgCi0gICAgMzc4MjMsIDM3ODM0LCAzNzg0MiwgMCwgMzc4NTMsIDM3ODYxLCAzNzg3MiwgMzc4ODAsIDM3ODg4LCAzNzg5NiwgMzc5MDQsIAotICAgIDM3OTEyLCAzNzkxOCwgMzc5MjQsIDM3OTMwLCAzNzkzOCwgMzc5NDYsIDM3OTU3LCAwLCAwLCAzNzk2OCwgMzc5NzYsIAotICAgIDM3OTg3LCAzNzk5NSwgMzgwMDMsIDM4MDExLCAwLCAzODAxOSwgMzgwMjQsIDM4MDI5LCAzODAzNCwgMzgwNDIsIDM4MDUwLCAKLSAgICAzODA2MSwgMzgwNzIsIDM4MDgwLCAzODA4OCwgMzgwOTYsIDM4MTA3LCAzODExNSwgMzgxMjMsIDM4MTMxLCAzODEzOSwgCi0gICAgMzgxNDcsIDM4MTUzLCAzODE1OSwgMCwgMCwgMzgxNjIsIDM4MTczLCAzODE4MSwgMCwgMzgxOTIsIDM4MjAwLCAzODIxMSwgCi0gICAgMzgyMTksIDM4MjI3LCAzODIzNSwgMzgyNDMsIDM4MjUxLCAzODI1NCwgMCwgMzgyNTcsIDM4MjYxLCAzODI2NSwgMzgyNjksIAotICAgIDM4MjczLCAzODI3NywgMzgyODEsIDM4Mjg1LCAzODI4OSwgMzgyOTMsIDM4Mjk3LCAzODMwMSwgMzgzMDcsIDM4MzEzLCAKLSAgICAzODMxOSwgMzgzMjIsIDM4MzI1LCAzODMyNywgMzgzMzEsIDM4MzM1LCAzODMzOSwgMzgzNDMsIDM4MzQ1LCAzODM0OSwgCi0gICAgMzgzNTMsIDM4MzU5LCAzODM2NSwgMzgzNzIsIDM4Mzc5LCAzODM4NCwgMzgzODksIDM4Mzk1LCAzODQwMSwgMzg0MDMsIAotICAgIDM4NDA2LCAzODQwOCwgMzg0MTIsIDM4NDE2LCAzODQyMCwgMzg0MjMsIDM4NDI3LCAzODQzMSwgMzg0MzUsIDM4NDM5LCAKLSAgICAzODQ0MywgMzg0NDksIDM4NDUzLCAzODQ1NywgMzg0NjMsIDM4NDY4LCAzODQ3NSwgMzg0NzcsIDM4NDgwLCAzODQ4NCwgCi0gICAgMzg0ODgsIDM4NDkzLCAzODQ5OSwgMzg1MDEsIDM4NTEwLCAzODUxOSwgMzg1MjIsIDM4NTI2LCAzODUyOCwgMzg1MzAsIAotICAgIDM4NTMyLCAzODUzNSwgMzg1NDEsIDM4NTQzLCAzODU0NywgMzg1NTEsIDM4NTU4LCAzODU2NSwgMzg1NjksIDM4NTc0LCAKLSAgICAzODU3OSwgMzg1ODQsIDM4NTg5LCAzODU5MywgMzg1OTcsIDM4NjAwLCAzODYwNCwgMzg2MDgsIDM4NjE1LCAzODYyMCwgCi0gICAgMzg2MjQsIDM4NjI4LCAzODYzMywgMzg2MzcsIDM4NjQxLCAzODY0NiwgMzg2NTEsIDM4NjU1LCAzODY1OSwgMzg2NjMsIAotICAgIDM4NjY1LCAzODY3MCwgMzg2NzUsIDM4Njc5LCAzODY4MywgMzg2ODcsIDM4NjkxLCAwLCAwLCAwLCAwLCAwLCAzODY5NSwgCi0gICAgMzg3MDEsIDM4NzA3LCAzODcxNCwgMzg3MjEsIDM4NzI2LCAzODczMSwgMzg3MzUsIDAsIDAsIDM4NzQxLCAzODc0NCwgCi0gICAgMzg3NDcsIDM4NzUwLCAzODc1MywgMzg3NTYsIDM4NzU5LCAzODc2MywgMzg3NjcsIDM4NzcyLCAzODc3NywgMzg3ODIsIAotICAgIDM4Nzg4LCAzODc5MiwgMzg3OTUsIDM4Nzk4LCAzODgwMSwgMzg4MDQsIDM4ODA3LCAzODgxMCwgMzg4MTMsIDM4ODE2LCAKLSAgICAzODgxOSwgMzg4MjMsIDM4ODI3LCAzODgzMiwgMzg4MzcsIDAsIDM4ODQyLCAzODg0OCwgMzg4NTQsIDM4ODYwLCAzODg2NywgCi0gICAgMzg4NzQsIDM4ODgxLCAzODg4OCwgMzg4OTQsIDM4OTAwLCAzODkwNiwgMzg5MTMsIDM4OTE5LCAwLCAwLCAwLCAzODkyNiwgCi0gICAgMzg5MjksIDM4OTMyLCAzODkzNSwgMzg5NDAsIDM4OTQzLCAzODk0NiwgMzg5NDksIDM4OTUyLCAzODk1NSwgMzg5NTgsIAotICAgIDM4OTYyLCAzODk2NSwgMzg5NjgsIDM4OTcxLCAzODk3NCwgMzg5NzcsIDM4OTgyLCAzODk4NSwgMzg5ODgsIDM4OTkxLCAKLSAgICAzODk5NCwgMzg5OTcsIDM5MDAyLCAzOTAwNSwgMzkwMDgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM5MDEzLCAzOTAxOCwgMzkwMjMsIDM5MDMwLCAzOTAzOCwgMzkwNDMsIAotICAgIDM5MDQ4LCAzOTA1MiwgMzkwNTYsIDM5MDYxLCAzOTA2OCwgMzkwNzUsIDM5MDc5LCAzOTA4NCwgMzkwODksIDM5MDk0LCAKLSAgICAzOTA5OSwgMzkxMDYsIDM5MTExLCAzOTExNiwgMzkxMjEsIDM5MTMwLCAzOTEzNywgMzkxNDQsIDM5MTQ4LCAzOTE1MywgCi0gICAgMzkxNTksIDM5MTY0LCAzOTE3MSwgMzkxNzksIDM5MTg3LCAzOTE5MSwgMzkxOTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDM5MTk5LCAzOTIwMywgMzkyMTEsIDM5MjE1LCAzOTIxOSwgMzkyMjQsIDM5MjI4LCAKLSAgICAzOTIzMiwgMzkyMzYsIDM5MjM4LCAzOTI0MiwgMzkyNDYsIDM5MjUwLCAzOTI1NSwgMzkyNTksIDM5MjYzLCAzOTI3MSwgCi0gICAgMzkyNzQsIDM5Mjc4LCAzOTI4MSwgMzkyODQsIDM5MjkwLCAzOTI5MywgMzkyOTYsIDM5MzAyLCAzOTMwNiwgMzkzMTAsIAotICAgIDM5MzE0LCAzOTMxNywgMzkzMjEsIDM5MzI0LCAzOTMyOCwgMzkzMzAsIDM5MzMzLCAzOTMzNiwgMzkzNDAsIDM5MzQyLCAKLSAgICAzOTM0NiwgMzkzNDksIDM5MzUyLCAzOTM1NywgMzkzNjIsIDM5MzY5LCAzOTM3MiwgMzkzNzUsIDM5Mzc5LCAzOTM4NCwgCi0gICAgMzkzODcsIDM5MzkwLCAzOTM5MywgMzkzOTcsIDM5NDAyLCAzOTQwNSwgMzk0MDgsIDM5NDEwLCAzOTQxMywgMzk0MTYsIAotICAgIDM5NDE5LCAzOTQyMywgMzk0MjgsIDM5NDMxLCAzOTQzNSwgMzk0MzksIDM5NDQzLCAzOTQ0NywgMzk0NTIsIDM5NDU4LCAKLSAgICAzOTQ2MywgMzk0NjgsIDM5NDc0LCAzOTQ3OSwgMzk0ODQsIDM5NDg4LCAzOTQ5MiwgMzk0OTcsIDM5NTAxLCAzOTUwNSwgCi0gICAgMzk1MDgsIDM5NTEwLCAzOTUxNSwgMzk1MjEsIDM5NTI4LCAzOTUzNSwgMzk1NDIsIDM5NTQ5LCAzOTU1NiwgMzk1NjMsIAotICAgIDM5NTcwLCAzOTU3NywgMzk1ODUsIDM5NTkyLCAzOTYwMCwgMzk2MDcsIDM5NjE0LCAzOTYyMiwgMzk2MzAsIDM5NjM1LCAKLSAgICAzOTY0MCwgMzk2NDUsIDM5NjUwLCAzOTY1NSwgMzk2NjAsIDM5NjY1LCAzOTY3MCwgMzk2NzUsIDM5NjgwLCAzOTY4NiwgCi0gICAgMzk2OTIsIDM5Njk4LCAzOTcwNCwgMzk3MTEsIDM5NzE5LCAzOTcyNiwgMzk3MzIsIDM5NzM4LCAzOTc0NCwgMzk3NTAsIAotICAgIDM5NzU2LCAzOTc2MiwgMzk3NjgsIDM5Nzc0LCAzOTc4MCwgMzk3ODcsIDM5Nzk0LCAzOTgwMSwgMzk4MDgsIDM5ODE2LCAKLSAgICAzOTgyNSwgMzk4MzMsIDM5ODQ0LCAzOTg1MiwgMzk4NjAsIDM5ODY5LCAzOTg3NiwgMzk4ODUsIDM5ODk0LCAzOTkwMiwgCi0gICAgMzk5MTEsIDAsIDAsIDAsIDAsIDAsIDAsIDM5OTE5LCAzOTkyMSwgMzk5MjQsIDM5OTI2LCAzOTkyOSwgMzk5MzIsIDM5OTM1LCAKLSAgICAzOTk0MCwgMzk5NDUsIDM5OTUwLCAzOTk1NSwgMzk5NTksIDM5OTYzLCAzOTk2NywgMzk5NzEsIDM5OTc2LCAzOTk4MiwgCi0gICAgMzk5ODcsIDM5OTkzLCAzOTk5OCwgNDAwMDMsIDQwMDA4LCA0MDAxNCwgNDAwMTksIDQwMDI1LCA0MDAzMSwgNDAwMzUsIAotICAgIDQwMDM5LCA0MDA0NCwgNDAwNDksIDQwMDU0LCA0MDA1OSwgNDAwNjQsIDQwMDcyLCA0MDA4MCwgNDAwODgsIDQwMDk2LCAKLSAgICA0MDEwMywgNDAxMTEsIDQwMTE4LCA0MDEyNSwgNDAxMzQsIDQwMTQ2LCA0MDE1MywgNDAxNjAsIDQwMTY3LCA0MDE3NCwgCi0gICAgNDAxODIsIDQwMTkwLCA0MDE5NywgNDAyMDQsIDQwMjEyLCA0MDIyMCwgNDAyMjUsIDQwMjMzLCA0MDIzOCwgNDAyNDMsIAotICAgIDQwMjQ5LCA0MDI1NCwgNDAyNjAsIDQwMjY3LCA0MDI3NCwgNDAyNzksIDQwMjg1LCA0MDI5MCwgNDAyOTMsIDQwMjk3LCAKLSAgICA0MDMwMCwgNDAzMDQsIDQwMzA4LCA0MDMxMiwgNDAzMTgsIDQwMzI0LCA0MDMzMCwgNDAzMzYsIDQwMzQwLCA0MDM0NCwgCi0gICAgNDAzNDgsIDQwMzUyLCA0MDM1OCwgNDAzNjQsIDQwMzY4LCA0MDM3MywgNDAzNzcsIDQwMzgyLCA0MDM4NywgNDAzOTIsIAotICAgIDQwMzk1LCA0MDM5OSwgNDA0MDIsIDQwNDA2LCA0MDQxMywgNDA0MjEsIDQwNDMyLCA0MDQ0MywgNDA0NDgsIDQwNDU3LCAKLSAgICA0MDQ2NCwgNDA0NzMsIDQwNDgyLCA0MDQ4NiwgNDA0OTIsIDQwNTAwLCA0MDUwNCwgNDA1MDksIDQwNTE0LCA0MDUyMCwgCi0gICAgNDA1MjYsIDQwNTMyLCA0MDUzOSwgNDA1NDMsIDQwNTQ3LCA0MDU1MiwgNDA1NTUsIDQwNTU3LCA0MDU2MSwgNDA1NjUsIAotICAgIDQwNTczLCA0MDU3NywgNDA1NzksIDQwNTgxLCA0MDU4NSwgNDA1OTMsIDQwNTk4LCA0MDYwNCwgNDA2MTQsIDQwNjIxLCAKLSAgICA0MDYyNiwgNDA2MzAsIDQwNjM0LCA0MDYzOCwgNDA2NDEsIDQwNjQ0LCA0MDY0NywgNDA2NTEsIDQwNjU1LCA0MDY1OSwgCi0gICAgNDA2NjMsIDQwNjY3LCA0MDY3MCwgNDA2NzQsIDQwNjc4LCA0MDY4MSwgNDA2ODMsIDQwNjg2LCA0MDY4OCwgNDA2OTIsIAotICAgIDQwNjk2LCA0MDY5OCwgNDA3MDQsIDQwNzA3LCA0MDcxMiwgNDA3MTYsIDQwNzIwLCA0MDcyMiwgNDA3MjQsIDQwNzI2LCAKLSAgICA0MDcyOSwgNDA3MzMsIDQwNzM3LCA0MDc0MSwgNDA3NDUsIDQwNzQ5LCA0MDc1NSwgNDA3NjEsIDQwNzYzLCA0MDc2NSwgCi0gICAgNDA3NjcsIDQwNzY5LCA0MDc3MiwgNDA3NzQsIDQwNzc4LCA0MDc4MCwgNDA3ODQsIDQwNzg4LCA0MDc5MywgNDA3OTcsIAotICAgIDQwODAxLCA0MDgwNSwgNDA4MDksIDQwODEzLCA0MDgxOSwgNDA4MjMsIDQwODMzLCA0MDg0MywgNDA4NDcsIDQwODUzLCAKLSAgICA0MDg1OSwgNDA4NjMsIDQwODY3LCA0MDg3MCwgNDA4NzUsIDQwODc5LCA0MDg4NSwgNDA4ODksIDQwOTAxLCA0MDkwOSwgCi0gICAgNDA5MTMsIDQwOTE3LCA0MDkyMywgNDA5MjcsIDQwOTMwLCA0MDkzMiwgNDA5MzUsIDQwOTM5LCA0MDk0MywgNDA5NTAsIAotICAgIDQwOTU0LCA0MDk1OCwgNDA5NjIsIDQwOTY1LCA0MDk3MCwgNDA5NzUsIDQwOTgwLCA0MDk4NSwgNDA5OTAsIDQwOTk1LCAKLSAgICA0MTAwMywgNDEwMTEsIDQxMDE1LCA0MTAxOSwgNDEwMjEsIDQxMDI2LCA0MTAzMCwgNDEwMzQsIDQxMDQyLCA0MTA1MCwgCi0gICAgNDEwNTYsIDQxMDYyLCA0MTA3MSwgNDEwODAsIDQxMDg1LCA0MTA5MCwgNDEwOTgsIDQxMTA2LCA0MTEwOCwgNDExMTAsIAotICAgIDQxMTE1LCA0MTEyMCwgNDExMjYsIDQxMTMyLCA0MTEzOCwgNDExNDQsIDQxMTQ4LCA0MTE1MiwgNDExNTksIDQxMTY2LCAKLSAgICA0MTE3MiwgNDExNzgsIDQxMTg4LCA0MTE5OCwgNDEyMDYsIDQxMjE0LCA0MTIxNiwgNDEyMjAsIDQxMjI0LCA0MTIyOSwgCi0gICAgNDEyMzQsIDQxMjQxLCA0MTI0OCwgNDEyNTEsIDQxMjU0LCA0MTI1NywgNDEyNjAsIDQxMjYzLCA0MTI2OCwgNDEyNzIsIAotICAgIDQxMjc3LCA0MTI4MiwgNDEyODUsIDQxMjg4LCA0MTI5MSwgNDEyOTQsIDQxMjk3LCA0MTMwMSwgNDEzMDQsIDQxMzA3LCAKLSAgICA0MTMxMCwgNDEzMTMsIDQxMzE1LCA0MTMxNywgNDEzMTksIDQxMzIxLCA0MTMyOSwgNDEzMzcsIDQxMzQzLCA0MTM0NywgCi0gICAgNDEzNTMsIDQxMzYzLCA0MTM2OSwgNDEzNzUsIDQxMzgxLCA0MTM4OSwgNDEzOTcsIDQxNDA4LCA0MTQxMiwgNDE0MTYsIAotICAgIDQxNDE4LCA0MTQyNCwgNDE0MjYsIDQxNDI4LCA0MTQzMCwgNDE0MzIsIDQxNDM4LCA0MTQ0MSwgNDE0NDcsIDQxNDUzLCAKLSAgICA0MTQ1NywgNDE0NjEsIDQxNDY1LCA0MTQ2OCwgNDE0NzIsIDQxNDc2LCA0MTQ3OCwgNDE0ODcsIDQxNDk2LCA0MTUwMSwgCi0gICAgNDE1MDYsIDQxNTEyLCA0MTUxOCwgNDE1MjQsIDQxNTI3LCA0MTUzMCwgNDE1MzMsIDQxNTM2LCA0MTUzOCwgNDE1NDMsIAotICAgIDQxNTQ4LCA0MTU1MywgNDE1NTksIDQxNTY1LCA0MTU3MywgNDE1ODEsIDQxNTg3LCA0MTU5MywgNDE1OTksIDQxNjA1LCAKLSAgICA0MTYxNCwgNDE2MjMsIDQxNjMyLCA0MTY0MSwgNDE2NTAsIDQxNjU5LCA0MTY2OCwgNDE2NzcsIDQxNjg2LCA0MTY5NSwgCi0gICAgNDE3MDMsIDQxNzE1LCA0MTcyNSwgNDE3NDAsIDQxNzQzLCA0MTc0OCwgNDE3NTQsIDQxNzYwLCA0MTc2NywgNDE3ODEsIAotICAgIDQxNzk2LCA0MTgwMiwgNDE4MDgsIDQxODE1LCA0MTgyMSwgNDE4MjksIDQxODM1LCA0MTg0OCwgNDE4NjIsIDQxODY3LCAKLSAgICA0MTg3MywgNDE4ODAsIDQxODgzLCA0MTg4NiwgNDE4ODgsIDQxODkxLCA0MTg5NCwgNDE4OTYsIDQxODk4LCA0MTkwMiwgCi0gICAgNDE5MDUsIDQxOTA4LCA0MTkxMSwgNDE5MTQsIDQxOTE5LCA0MTkyNCwgNDE5MjksIDQxOTM0LCA0MTkzOSwgNDE5NDIsIAotICAgIDQxOTQ0LCA0MTk0NiwgNDE5NDgsIDQxOTUyLCA0MTk1NiwgNDE5NjAsIDQxOTY2LCA0MTk3MSwgNDE5NzMsIDQxOTc1LCAKLSAgICA0MTk4MCwgNDE5ODUsIDQxOTkwLCA0MTk5NSwgNDIwMDAsIDQyMDA1LCA0MjAwNywgNDIwMDksIDQyMDE4LCA0MjAyMiwgCi0gICAgNDIwMzAsIDQyMDM5LCA0MjA0MSwgNDIwNDYsIDQyMDUxLCA0MjA1OSwgNDIwNjMsIDQyMDY1LCA0MjA2OSwgNDIwNzEsIAotICAgIDQyMDc1LCA0MjA3OSwgNDIwODMsIDQyMDg1LCA0MjA4NywgNDIwODksIDQyMDk0LCA0MjEwMSwgNDIxMDgsIDQyMTE1LCAKLSAgICA0MjEyMiwgNDIxMjksIDQyMTM2LCA0MjE0MywgNDIxNTAsIDQyMTU2LCA0MjE2MiwgNDIxNjksIDQyMTc2LCA0MjE4MywgCi0gICAgNDIxOTAsIDQyMTk2LCA0MjIwMiwgNDIyMDksIDQyMjE2LCA0MjIyMywgNDIyMzEsIDQyMjM4LCA0MjI0NiwgNDIyNTMsIAotICAgIDQyMjYxLCA0MjI2OCwgNDIyNzYsIDQyMjg0LCA0MjI5MSwgNDIyOTksIDQyMzA2LCA0MjMxNCwgNDIzMjEsIDQyMzI5LCAKLSAgICA0MjMzNiwgNDIzNDMsIDQyMzUwLCA0MjM1NywgNDIzNjQsIDQyMzcyLCA0MjM3OSwgNDIzODYsIDQyMzkzLCA0MjQwMSwgCi0gICAgNDI0MDgsIDQyNDE1LCA0MjQyMiwgNDI0MjksIDQyNDM3LCA0MjQ0NSwgNDI0NTIsIDQyNDU5LCA0MjQ2NSwgNDI0NzIsIAotICAgIDQyNDc3LCA0MjQ4NCwgNDI0OTEsIDQyNTAwLCA0MjUwNywgNDI1MTUsIDQyNTIzLCA0MjUyOCwgNDI1MzMsIDQyNTM4LCAKLSAgICA0MjU0NSwgNDI1NTIsIDQyNTU5LCA0MjU2NiwgNDI1NzEsIDQyNTc2LCA0MjU4NSwgNDI1OTEsIDQyNTk0LCA0MjYwMiwgCi0gICAgNDI2MDUsIDQyNjEwLCA0MjYxNSwgNDI2MTgsIDQyNjIxLCA0MjYyOSwgNDI2MzIsIDQyNjM3LCA0MjY0MCwgNDI2NDcsIAotICAgIDQyNjUyLCA0MjY2MCwgNDI2NjMsIDQyNjY2LCA0MjY2OSwgNDI2NzQsIDQyNjc5LCA0MjY4MiwgNDI2ODUsIDQyNjkzLCAKLSAgICA0MjY5NiwgNDI3MDEsIDQyNzA4LCA0MjcxMiwgNDI3MTYsIDQyNzIxLCA0MjcyNiwgNDI3MzIsIDQyNzM3LCA0Mjc0MywgCi0gICAgNDI3NDksIDQyNzU0LCA0Mjc2MCwgNDI3NjgsIDQyNzc0LCA0Mjc4MiwgNDI3OTAsIDQyNzk2LCA0MjgwNCwgNDI4MTIsIAotICAgIDQyODIxLCA0MjgyOSwgNDI4MzUsIDQyODQzLCA0Mjg1MiwgNDI4NjAsIDQyODY0LCA0Mjg2OSwgNDI4ODIsIDQyODk1LCAKLSAgICA0Mjg5OSwgNDI5MDMsIDQyOTA3LCA0MjkxMSwgNDI5MjEsIDQyOTI1LCA0MjkzMCwgNDI5MzUsIDQyOTQwLCA0Mjk0NSwgCi0gICAgNDI5NTAsIDQyOTU1LCA0Mjk2NSwgNDI5NzUsIDQyOTgzLCA0Mjk5MywgNDMwMDMsIDQzMDExLCA0MzAyMSwgNDMwMzEsIAotICAgIDQzMDM5LCA0MzA0OSwgNDMwNTksIDQzMDY3LCA0MzA3NSwgNDMwODUsIDQzMDk1LCA0MzA5OCwgNDMxMDEsIDQzMTA0LCAKLSAgICA0MzEwOSwgNDMxMTMsIDQzMTE5LCA0MzEyNiwgNDMxMzMsIDQzMTQxLCA0MzE0OCwgNDMxNTIsIDQzMTU2LCA0MzE2MCwgCi0gICAgNDMxNjQsIDQzMTY2LCA0MzE3MCwgNDMxNzQsIDQzMTc5LCA0MzE4NCwgNDMxOTEsIDQzMTk4LCA0MzIwMSwgNDMyMDgsIAotICAgIDQzMjEwLCA0MzIxMiwgNDMyMTYsIDQzMjIwLCA0MzIyNSwgNDMyMzEsIDQzMjM3LCA0MzI0MywgNDMyNDksIDQzMjU4LCAKLSAgICA0MzI2NywgNDMyNzYsIDQzMjgwLCA0MzI4MiwgNDMyODYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDQzMjkzLCA0MzI5NywgNDMzMDQsIDQzMzExLCA0MzMxOCwgNDMzMjUsIDQzMzI5LCA0MzMzMywgNDMzMzcsIDQzMzQxLCAKLSAgICA0MzM0NiwgNDMzNTIsIDQzMzU3LCA0MzM2MywgNDMzNjksIDQzMzc1LCA0MzM4MSwgNDMzODksIDQzMzk2LCA0MzQwMywgCi0gICAgNDM0MTAsIDQzNDE3LCA0MzQyMiwgNDM0MjgsIDQzNDM3LCA0MzQ0MSwgNDM0NDgsIDQzNDUyLCA0MzQ1NiwgNDM0NjIsIAotICAgIDQzNDY4LCA0MzQ3NCwgNDM0ODAsIDQzNDg0LCA0MzQ4OCwgNDM0OTEsIDQzNDk1LCA0MzQ5OSwgNDM1MDYsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQzNTEzLCAKLSAgICA0MzUxNiwgNDM1MjAsIDQzNTI0LCA0MzUzMCwgNDM1MzYsIDQzNTQyLCA0MzU1MCwgNDM1NTcsIDQzNTYxLCA0MzU2OSwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNDM1NzQsIDQzNTc3LCAKLSAgICA0MzU4MCwgNDM1ODMsIDQzNTg2LCA0MzU4OSwgNDM1OTIsIDQzNTk1LCA0MzU5OCwgNDM2MDEsIDQzNjA1LCA0MzYwOSwgCi0gICAgNDM2MTMsIDQzNjE3LCA0MzYyMSwgNDM2MjUsIDQzNjI5LCA0MzYzMywgNDM2MzcsIDQzNjQxLCA0MzY0NSwgNDM2NDgsIAotICAgIDQzNjUxLCA0MzY1NCwgNDM2NTcsIDQzNjYwLCA0MzY2MywgNDM2NjYsIDQzNjY5LCA0MzY3MiwgNDM2NzYsIDQzNjgwLCAKLSAgICA0MzY4NCwgNDM2ODgsIDQzNjkyLCA0MzY5NiwgNDM3MDAsIDQzNzA0LCA0MzcwOCwgNDM3MTIsIDQzNzE2LCA0MzcyMiwgCi0gICAgNDM3MjgsIDQzNzM0LCA0Mzc0MSwgNDM3NDgsIDQzNzU1LCA0Mzc2MiwgNDM3NjksIDQzNzc2LCA0Mzc4MywgNDM3OTAsIAotICAgIDQzNzk3LCA0MzgwNCwgNDM4MTEsIDQzODE4LCA0MzgyNSwgNDM4MzIsIDQzODM5LCA0Mzg0NiwgNDM4NTMsIDQzODU4LCAKLSAgICA0Mzg2NCwgNDM4NzAsIDQzODc2LCA0Mzg4MSwgNDM4ODcsIDQzODkzLCA0Mzg5OSwgNDM5MDQsIDQzOTEwLCA0MzkxNiwgCi0gICAgNDM5MjEsIDQzOTI2LCA0MzkzMSwgNDM5MzYsIDQzOTQyLCA0Mzk0OCwgNDM5NTMsIDQzOTU4LCA0Mzk2NCwgNDM5NjksIAotICAgIDQzOTc1LCA0Mzk4MSwgNDM5ODcsIDQzOTkzLCA0Mzk5OSwgNDQwMDQsIDQ0MDEwLCA0NDAxNiwgNDQwMjIsIDQ0MDI3LCAKLSAgICA0NDAzMywgNDQwMzksIDQ0MDQ1LCA0NDA1MCwgNDQwNTYsIDQ0MDYyLCA0NDA2NywgNDQwNzIsIDQ0MDc3LCA0NDA4MiwgCi0gICAgNDQwODgsIDQ0MDk0LCA0NDA5OSwgNDQxMDQsIDQ0MTEwLCA0NDExNSwgNDQxMjEsIDQ0MTI3LCA0NDEzMywgNDQxMzksIAotICAgIDQ0MTQ1LCA0NDE1MCwgNDQxNTYsIDQ0MTYyLCA0NDE2OCwgNDQxNzMsIDQ0MTc5LCA0NDE4NSwgNDQxOTEsIDQ0MTk2LCAKLSAgICA0NDIwMiwgNDQyMDgsIDQ0MjEzLCA0NDIxOCwgNDQyMjMsIDQ0MjI4LCA0NDIzNCwgNDQyNDAsIDQ0MjQ1LCA0NDI1MCwgCi0gICAgNDQyNTYsIDQ0MjYxLCA0NDI2NywgNDQyNzMsIDQ0Mjc5LCA0NDI4NSwgNDQyOTEsIDQ0Mjk1LCA0NDMwMCwgNDQzMDUsIAotICAgIDQ0MzEwLCA0NDMxNSwgNDQzMjAsIDQ0MzI1LCA0NDMzMCwgNDQzMzUsIDQ0MzQwLCA0NDM0NSwgNDQzNDksIDQ0MzUzLCAKLSAgICA0NDM1NywgNDQzNjEsIDQ0MzY1LCA0NDM2OSwgNDQzNzMsIDQ0Mzc3LCA0NDM4MSwgNDQzODYsIDQ0MzkxLCA0NDM5NiwgCi0gICAgNDQ0MDEsIDQ0NDA2LCA0NDQxMSwgNDQ0MjAsIDQ0NDI5LCA0NDQzOCwgNDQ0NDcsIDQ0NDU2LCA0NDQ2NSwgNDQ0NzQsIAotICAgIDQ0NDgzLCA0NDQ5MCwgNDQ0OTgsIDQ0NTA2LCA0NDUxMywgNDQ1MjAsIDQ0NTI4LCA0NDUzNiwgNDQ1NDMsIDQ0NTUwLCAKLSAgICA0NDU1OCwgNDQ1NjYsIDQ0NTczLCA0NDU4MCwgNDQ1ODgsIDQ0NTk2LCA0NDYwMywgNDQ2MTAsIDQ0NjE4LCA0NDYyNywgCi0gICAgNDQ2MzYsIDQ0NjQ0LCA0NDY1MywgNDQ2NjIsIDQ0NjY5LCA0NDY3NiwgNDQ2ODQsIDQ0NjkzLCA0NDcwMiwgNDQ3MTAsIAotICAgIDQ0NzE5LCA0NDcyOCwgNDQ3MzUsIDQ0NzQyLCA0NDc1MSwgNDQ3NjAsIDQ0NzY4LCA0NDc3NiwgNDQ3ODUsIDQ0Nzk0LCAKLSAgICA0NDgwMSwgNDQ4MDgsIDQ0ODE3LCA0NDgyNiwgNDQ4MzQsIDQ0ODQyLCA0NDg1MSwgNDQ4NjAsIDQ0ODY3LCA0NDg3NCwgCi0gICAgNDQ4ODMsIDQ0ODkyLCA0NDkwMCwgNDQ5MDksIDQ0OTE4LCA0NDkyNiwgNDQ5MzYsIDQ0OTQ2LCA0NDk1NiwgNDQ5NjYsIAotICAgIDQ0OTc1LCA0NDk4NCwgNDQ5OTMsIDQ1MDAyLCA0NTAwOSwgNDUwMTcsIDQ1MDI1LCA0NTAzMywgNDUwNDEsIDQ1MDQ2LCAKLSAgICA0NTA1MSwgNDUwNjAsIDQ1MDY4LCA0NTA3NSwgNDUwODQsIDQ1MDkyLCA0NTA5OSwgNDUxMDgsIDQ1MTE2LCA0NTEyMywgCi0gICAgNDUxMzIsIDQ1MTQwLCA0NTE0NywgNDUxNTYsIDQ1MTY0LCA0NTE3MSwgNDUxODAsIDQ1MTg4LCA0NTE5NSwgNDUyMDQsIAotICAgIDQ1MjEyLCA0NTIxOSwgNDUyMjgsIDQ1MjM2LCA0NTI0MywgNDUyNTIsIDQ1MjYwLCA0NTI2NywgNDUyNzYsIDQ1Mjg1LCAKLSAgICA0NTI5NCwgNDUzMDMsIDQ1MzE3LCA0NTMzMSwgNDUzMzgsIDQ1MzQzLCA0NTM0OCwgNDUzNTMsIDQ1MzU4LCA0NTM2MywgCi0gICAgNDUzNjgsIDQ1MzczLCA0NTM3OCwgNDUzODYsIDQ1Mzk0LCA0NTQwMiwgNDU0MTAsIDQ1NDE1LCA0NTQyMiwgNDU0MjksIAotICAgIDQ1NDM2LCA0NTQ0MSwgNDU0NDksIDQ1NDU2LCA0NTQ2NCwgNDU0NjgsIDQ1NDc1LCA0NTQ4MSwgNDU0ODgsIDQ1NDkyLCAKLSAgICA0NTQ5OCwgNDU1MDQsIDQ1NTEwLCA0NTUxNCwgNDU1MTcsIDQ1NTIxLCA0NTUyNSwgNDU1MzIsIDQ1NTM4LCA0NTU0NCwgCi0gICAgNDU1NTAsIDQ1NTU2LCA0NTU3MCwgNDU1ODAsIDQ1NTk0LCA0NTYwOCwgNDU2MTQsIDQ1NjI0LCA0NTYzOCwgNDU2NDEsIAotICAgIDQ1NjQ0LCA0NTY1MSwgNDU2NTksIDQ1NjY0LCA0NTY2OSwgNDU2NzcsIDQ1Njg5LCA0NTcwMSwgNDU3MDksIDQ1NzEzLCAKLSAgICA0NTcxNywgNDU3MjAsIDQ1NzIzLCA0NTcyNywgNDU3MzEsIDQ1NzM0LCA0NTczNywgNDU3NDIsIDQ1NzQ3LCA0NTc1MywgCi0gICAgNDU3NTksIDQ1NzY0LCA0NTc2OSwgNDU3NzUsIDQ1NzgxLCA0NTc4NiwgNDU3OTEsIDQ1Nzk2LCA0NTgwMSwgNDU4MDcsIAotICAgIDQ1ODEzLCA0NTgxOCwgNDU4MjMsIDQ1ODI5LCA0NTgzNSwgNDU4NDAsIDQ1ODQ1LCA0NTg0OCwgNDU4NTEsIDQ1ODYwLCAKLSAgICA0NTg2MiwgNDU4NjQsIDQ1ODY3LCA0NTg3MSwgNDU4NzcsIDQ1ODc5LCA0NTg4MiwgNDU4ODksIDQ1ODk2LCA0NTkwNCwgCi0gICAgNDU5MTIsIDQ1OTIyLCA0NTkzNiwgNDU5NDEsIDQ1OTQ2LCA0NTk1MCwgNDU5NTUsIDQ1OTYzLCA0NTk3MSwgNDU5ODAsIAotICAgIDQ1OTg5LCA0NTk5OCwgNDYwMDcsIDQ2MDEyLCA0NjAxNywgNDYwMjMsIDQ2MDI5LCA0NjAzNSwgNDYwNDEsIDQ2MDQ0LCAKLSAgICA0NjA1MCwgNDYwNTYsIDQ2MDY2LCA0NjA3NiwgNDYwODQsIDQ2MDkyLCA0NjEwMSwgNDYxMTAsIDQ2MTE0LCA0NjEyMiwgCi0gICAgNDYxMzAsIDQ2MTM4LCA0NjE0NiwgNDYxNTUsIDQ2MTY0LCA0NjE3MywgNDYxODIsIDQ2MTg3LCA0NjE5MiwgNDYxOTcsIAotICAgIDQ2MjAyLCA0NjIwNywgNDYyMTMsIDQ2MjE5LCA0NjIyNCwgNDYyMzAsIDQ2MjMyLCA0NjIzNCwgNDYyMzYsIDQ2MjM4LCAKLSAgICA0NjI0MSwgNDYyNDQsIDQ2MjQ2LCA0NjI0OCwgNDYyNTAsIDQ2MjU0LCA0NjI1OCwgNDYyNjAsIDQ2MjYyLCA0NjI2NSwgCi0gICAgNDYyNjgsIDQ2MjcyLCA0NjI3OCwgNDYyODQsIDQ2Mjg2LCA0NjI5MywgNDYyOTcsIDQ2MzAyLCA0NjMwNywgNDYzMDksIAotICAgIDQ2MzE5LCA0NjMyNSwgNDYzMzEsIDQ2MzM3LCA0NjM0MywgNDYzNDksIDQ2MzU1LCA0NjM2MCwgNDYzNjMsIDQ2MzY2LCAKLSAgICA0NjM2OSwgNDYzNzEsIDQ2MzczLCA0NjM3NywgNDYzODEsIDQ2Mzg2LCA0NjM5MSwgNDYzOTYsIDQ2Mzk5LCA0NjQwMywgCi0gICAgNDY0MDgsIDQ2NDExLCA0NjQxNSwgNDY0MjAsIDQ2NDI1LCA0NjQzMCwgNDY0MzUsIDQ2NDQwLCA0NjQ0NSwgNDY0NTAsIAotICAgIDQ2NDU1LCA0NjQ2MCwgNDY0NjUsIDQ2NDcwLCA0NjQ3NSwgNDY0ODEsIDQ2NDg3LCA0NjQ5MywgNDY0OTUsIDQ2NDk4LCAKLSAgICA0NjUwMCwgNDY1MDMsIDQ2NTA1LCA0NjUwNywgNDY1MDksIDQ2NTExLCA0NjUxMywgNDY1MTUsIDQ2NTE3LCA0NjUxOSwgCi0gICAgNDY1MjEsIDQ2NTIzLCA0NjUyNSwgNDY1MjcsIDQ2NTI5LCA0NjUzMSwgNDY1MzMsIDQ2NTM1LCA0NjUzNywgNDY1NDIsIAotICAgIDQ2NTQ3LCA0NjU1MiwgNDY1NTcsIDQ2NTYyLCA0NjU2NywgNDY1NzIsIDQ2NTc3LCA0NjU4MiwgNDY1ODcsIDQ2NTkyLCAKLSAgICA0NjU5NywgNDY2MDIsIDQ2NjA3LCA0NjYxMiwgNDY2MTcsIDQ2NjIyLCA0NjYyNywgNDY2MzIsIDQ2NjM3LCA0NjY0MSwgCi0gICAgNDY2NDUsIDQ2NjQ5LCA0NjY1NSwgNDY2NjEsIDQ2NjY2LCA0NjY3MSwgNDY2NzYsIDQ2NjgxLCA0NjY4NiwgNDY2OTEsIAotICAgIDQ2Njk5LCA0NjcwNywgNDY3MTUsIDQ2NzIzLCA0NjczMSwgNDY3MzksIDQ2NzQ3LCA0Njc1NSwgNDY3NjEsIDQ2NzY2LCAKLSAgICA0Njc3MSwgNDY3NzYsIDQ2Nzc5LCA0Njc4MywgNDY3ODcsIDQ2NzkxLCA0Njc5NSwgNDY3OTksIDQ2ODAzLCA0NjgxMCwgCi0gICAgNDY4MTcsIDQ2ODI1LCA0NjgzMywgNDY4MzgsIDQ2ODQzLCA0Njg1MCwgNDY4NTcsIDQ2ODY0LCA0Njg3MSwgNDY4NzQsIAotICAgIDQ2ODc3LCA0Njg4MiwgNDY4ODQsIDQ2ODg4LCA0Njg5MywgNDY4OTUsIDQ2ODk3LCA0Njg5OSwgNDY5MDEsIDQ2OTA2LCAKLSAgICA0NjkwOSwgNDY5MTEsIDQ2OTE2LCA0NjkyMywgNDY5MzAsIDQ2OTMzLCA0NjkzNywgNDY5NDIsIDQ2OTQ3LCA0Njk1NSwgCi0gICAgNDY5NjEsIDQ2OTY3LCA0Njk3OSwgNDY5ODYsIDQ2OTkzLCA0Njk5OCwgNDcwMDMsIDQ3MDA5LCA0NzAxMiwgNDcwMTUsIAotICAgIDQ3MDIwLCA0NzAyMiwgNDcwMjYsIDQ3MDI4LCA0NzAzMCwgNDcwMzIsIDQ3MDM0LCA0NzAzNiwgNDcwMzgsIDQ3MDQzLCAKLSAgICA0NzA0NSwgNDcwNDcsIDQ3MDQ5LCA0NzA1MSwgNDcwNTUsIDQ3MDU3LCA0NzA2MCwgNDcwNjUsIDQ3MDcwLCA0NzA3NSwgCi0gICAgNDcwODAsIDQ3MDg2LCA0NzA5MiwgNDcwOTQsIDQ3MDk3LCA0NzEwNCwgNDcxMTEsIDQ3MTE4LCA0NzEyNSwgNDcxMjksIAotICAgIDQ3MTMzLCA0NzEzNSwgNDcxMzcsIDQ3MTQxLCA0NzE0NywgNDcxNTIsIDQ3MTU0LCA0NzE1OCwgNDcxNjcsIDQ3MTc1LCAKLSAgICA0NzE4MywgNDcxODksIDQ3MTk1LCA0NzIwMCwgNDcyMDYsIDQ3MjExLCA0NzIxNCwgNDcyMjgsIDQ3MjMxLCA0NzIzNiwgCi0gICAgNDcyNDEsIDQ3MjQ3LCA0NzI1NywgNDcyNTksIDQ3MjY1LCA0NzI3MSwgNDcyNzUsIDQ3MjgyLCA0NzI4NiwgNDcyODgsIAotICAgIDQ3MjkwLCA0NzI5NCwgNDczMDAsIDQ3MzA1LCA0NzMxMSwgNDczMTMsIDQ3MzE5LCA0NzMyMSwgNDczMjcsIDQ3MzI5LCAKLSAgICA0NzMzMSwgNDczMzYsIDQ3MzM4LCA0NzM0MiwgNDczNDcsIDQ3MzQ5LCA0NzM1NCwgNDczNTksIDQ3MzYzLCA0NzM3MCwgMCwgCi0gICAgNDczODAsIDQ3Mzg2LCA0NzM4OSwgNDczOTUsIDQ3Mzk4LCA0NzQwMywgNDc0MDgsIDQ3NDEyLCA0NzQxNCwgNDc0MTYsIAotICAgIDQ3NDIwLCA0NzQyNCwgNDc0MjgsIDQ3NDMyLCA0NzQzNywgNDc0MzksIDQ3NDQ0LCA0NzQ0NywgNDc0NTAsIDQ3NDUzLCAKLSAgICA0NzQ1NywgNDc0NjEsIDQ3NDY2LCA0NzQ3MCwgNDc0NzUsIDQ3NDgwLCA0NzQ4NCwgNDc0OTAsIDQ3NDk3LCA0NzUwMCwgCi0gICAgNDc1MDYsIDQ3NTExLCA0NzUxNSwgNDc1MjAsIDQ3NTI2LCA0NzUzMiwgNDc1MzksIDQ3NTQ1LCA0NzU1MiwgNDc1NTksIAotICAgIDQ3NTYxLCA0NzU2OCwgNDc1NzIsIDQ3NTc5LCA0NzU4NSwgNDc1OTAsIDQ3NTk2LCA0NzYwMCwgNDc2MDUsIDQ3NjA4LCAKLSAgICA0NzYxNCwgNDc2MjAsIDQ3NjI3LCA0NzYzNSwgNDc2NDIsIDQ3NjUxLCA0NzY2MSwgNDc2NjgsIDQ3Njc0LCA0NzY3OCwgCi0gICAgNDc2ODYsIDQ3NjkxLCA0NzcwMCwgNDc3MDMsIDQ3NzA2LCA0NzcxNSwgNDc3MjYsIDQ3NzMzLCA0NzczNSwgNDc3NDEsIAotICAgIDQ3NzQ2LCA0Nzc0OCwgNDc3NTEsIDQ3NzU1LCA0Nzc2MywgNDc3NzIsIDQ3Nzc1LCA0Nzc4MCwgNDc3ODUsIDQ3NzkzLCAKLSAgICA0NzgwMSwgNDc4MDksIDQ3ODE3LCA0NzgyMywgNDc4MjksIDQ3ODM1LCA0Nzg0MywgNDc4NDgsIDQ3ODUxLCA0Nzg1NSwgCi0gICAgNDc4NTgsIDQ3ODcwLCA0Nzg4MCwgNDc4OTEsIDQ3OTAwLCA0NzkxMSwgNDc5MjEsIDQ3OTMwLCA0NzkzNiwgNDc5NDQsIAotICAgIDQ3OTQ4LCA0Nzk1NiwgNDc5NjAsIDQ3OTY4LCA0Nzk3NSwgNDc5ODIsIDQ3OTkxLCA0ODAwMCwgNDgwMTAsIDQ4MDIwLCAKLSAgICA0ODAzMCwgNDgwNDAsIDQ4MDQ5LCA0ODA1OCwgNDgwNjgsIDQ4MDc4LCA0ODA4NywgNDgwOTYsIDQ4MTAyLCA0ODEwOCwgCi0gICAgNDgxMTQsIDQ4MTIwLCA0ODEyNiwgNDgxMzIsIDQ4MTM4LCA0ODE0NCwgNDgxNTAsIDQ4MTU3LCA0ODE2MywgNDgxNjksIAotICAgIDQ4MTc1LCA0ODE4MSwgNDgxODcsIDQ4MTkzLCA0ODE5OSwgNDgyMDUsIDQ4MjExLCA0ODIxOCwgNDgyMjUsIDQ4MjMyLCAKLSAgICA0ODIzOSwgNDgyNDYsIDQ4MjUzLCA0ODI2MCwgNDgyNjcsIDQ4Mjc0LCA0ODI4MSwgNDgyODksIDQ4Mjk0LCA0ODI5NywgCi0gICAgNDgzMDEsIDQ4MzA1LCA0ODMxMSwgNDgzMTQsIDQ4MzIwLCA0ODMyNiwgNDgzMzEsIDQ4MzM1LCA0ODM0MCwgNDgzNDYsIAotICAgIDQ4MzUzLCA0ODM1NiwgNDgzNjMsIDQ4MzcwLCA0ODM3NCwgNDgzODMsIDQ4MzkyLCA0ODM5NywgNDg0MDMsIDQ4NDA4LCAKLSAgICA0ODQxMywgNDg0MjAsIDQ4NDI3LCA0ODQzNSwgNDg0NDMsIDQ4NDUyLCA0ODQ1NiwgNDg0NjUsIDQ4NDcwLCA0ODQ3NCwgCi0gICAgNDg0ODEsIDQ4NDg1LCA0ODQ5MiwgNDg1MDAsIDQ4NTA1LCA0ODUxMywgNDg1MTcsIDQ4NTIyLCA0ODUyNiwgNDg1MzEsIAotICAgIDQ4NTM1LCA0ODU0MCwgNDg1NDUsIDQ4NTU0LCA0ODU1NiwgNDg1NjAsIDQ4NTY0LCA0ODU3MSwgNDg1NzgsIDQ4NTgzLCAKLSAgICA0ODU5MSwgNDg1OTcsIDAsIDQ4NjAzLCAwLCA0ODYwNiwgNDg2MTEsIDQ4NjE2LCA0ODYyNCwgNDg2MjgsIDQ4NjM1LCAKLSAgICA0ODY0MywgNDg2NTEsIDQ4NjU2LCA0ODY2MSwgNDg2NjcsIDQ4NjcyLCA0ODY3NywgNDg2ODMsIDQ4Njg4LCA0ODY5MSwgCi0gICAgNDg2OTUsIDQ4Njk5LCA0ODcwNiwgNDg3MTUsIDQ4NzIwLCA0ODcyOSwgNDg3MzgsIDQ4NzQ0LCA0ODc1MCwgNDg3NTUsIAotICAgIDQ4NzYwLCA0ODc2NSwgNDg3NzAsIDQ4Nzc2LCA0ODc4MiwgNDg3OTAsIDQ4Nzk4LCA0ODgwNCwgNDg4MTAsIDQ4ODE1LCAKLSAgICA0ODgyMCwgNDg4MjcsIDQ4ODM0LCA0ODg0MCwgNDg4NDMsIDQ4ODQ2LCA0ODg1MCwgNDg4NTQsIDQ4ODU4LCA0ODg2MywgCi0gICAgNDg4NjksIDQ4ODc1LCA0ODg4MiwgNDg4ODksIDQ4ODk0LCA0ODg5OCwgNDg5MDIsIDQ4OTA2LCA0ODkxMCwgNDg5MTQsIAotICAgIDQ4OTE4LCA0ODkyMiwgNDg5MjYsIDQ4OTMwLCA0ODkzNCwgNDg5MzgsIDQ4OTQyLCA0ODk0NiwgNDg5NTAsIDQ4OTU0LCAKLSAgICA0ODk1OCwgNDg5NjIsIDQ4OTY2LCA0ODk3MCwgNDg5NzQsIDQ4OTc4LCA0ODk4MiwgNDg5ODYsIDQ4OTkwLCA0ODk5NCwgCi0gICAgNDg5OTgsIDQ5MDAyLCA0OTAwNiwgNDkwMTAsIDQ5MDE0LCA0OTAxOCwgNDkwMjIsIDQ5MDI2LCA0OTAzMCwgNDkwMzQsIAotICAgIDQ5MDM4LCA0OTA0MiwgNDkwNDYsIDQ5MDUwLCA0OTA1NCwgNDkwNTgsIDQ5MDYyLCA0OTA2NiwgNDkwNzAsIDQ5MDc0LCAKLSAgICA0OTA3OCwgNDkwODIsIDQ5MDg2LCA0OTA5MCwgNDkwOTQsIDQ5MDk4LCA0OTEwMiwgNDkxMDYsIDQ5MTEwLCA0OTExNCwgCi0gICAgNDkxMTgsIDQ5MTIyLCA0OTEyNiwgNDkxMzAsIDQ5MTM0LCA0OTEzOCwgNDkxNDIsIDQ5MTQ2LCA0OTE1MCwgNDkxNTQsIAotICAgIDQ5MTU4LCA0OTE2MiwgNDkxNjYsIDQ5MTcwLCA0OTE3NCwgNDkxNzgsIDQ5MTgyLCA0OTE4NiwgNDkxOTAsIDQ5MTk0LCAKLSAgICA0OTE5OCwgNDkyMDIsIDQ5MjA2LCA0OTIxMCwgNDkyMTQsIDQ5MjE4LCA0OTIyMiwgNDkyMjYsIDQ5MjMwLCA0OTIzNCwgCi0gICAgNDkyMzgsIDQ5MjQyLCA0OTI0NiwgNDkyNTAsIDQ5MjU0LCA0OTI1OCwgNDkyNjIsIDQ5MjY2LCA0OTI3MCwgNDkyNzQsIAotICAgIDQ5Mjc4LCA0OTI4MiwgNDkyODYsIDQ5MjkwLCA0OTI5NCwgNDkyOTgsIDQ5MzAyLCA0OTMwNiwgNDkzMTAsIDQ5MzE0LCAKLSAgICA0OTMxOCwgNDkzMjIsIDQ5MzI2LCA0OTMzMCwgNDkzMzQsIDQ5MzM4LCA0OTM0MiwgNDkzNDYsIDQ5MzUwLCA0OTM1NCwgCi0gICAgNDkzNTgsIDQ5MzYyLCA0OTM2NiwgNDkzNzAsIDQ5Mzc0LCA0OTM3OCwgNDkzODIsIDQ5Mzg2LCA0OTM5MCwgNDkzOTQsIAotICAgIDQ5Mzk4LCA0OTQwMiwgNDk0MDYsIDQ5NDEwLCA0OTQxNCwgNDk0MTgsIDQ5NDIyLCA0OTQyNiwgNDk0MzAsIDQ5NDM0LCAKLSAgICA0OTQzOCwgNDk0NDIsIDQ5NDQ2LCA0OTQ1MCwgNDk0NTQsIDQ5NDU4LCA0OTQ2MiwgNDk0NjYsIDQ5NDcwLCA0OTQ3NCwgCi0gICAgNDk0NzgsIDQ5NDgyLCA0OTQ4NiwgNDk0OTAsIDQ5NDk0LCA0OTQ5OCwgNDk1MDIsIDQ5NTA2LCA0OTUxMCwgNDk1MTQsIAotICAgIDQ5NTE4LCA0OTUyMiwgNDk1MjYsIDQ5NTMwLCA0OTUzNCwgNDk1MzgsIDQ5NTQyLCA0OTU0NiwgNDk1NTAsIDQ5NTU0LCAKLSAgICA0OTU1OCwgNDk1NjIsIDQ5NTY2LCA0OTU3MCwgNDk1NzQsIDQ5NTc4LCA0OTU4MiwgNDk1ODYsIDQ5NTkwLCA0OTU5NCwgCi0gICAgNDk1OTgsIDQ5NjAyLCA0OTYwNiwgNDk2MTAsIDQ5NjE0LCA0OTYxOCwgNDk2MjIsIDQ5NjI2LCA0OTYzMCwgNDk2MzQsIAotICAgIDQ5NjM4LCA0OTY0MiwgNDk2NDYsIDQ5NjUwLCA0OTY1NCwgNDk2NTgsIDQ5NjYyLCA0OTY2NiwgNDk2NzAsIDQ5Njc0LCAKLSAgICA0OTY3OCwgNDk2ODIsIDQ5Njg2LCA0OTY5MCwgNDk2OTQsIDQ5Njk4LCA0OTcwMiwgNDk3MDYsIDQ5NzEwLCA0OTcxNCwgCi0gICAgNDk3MTgsIDQ5NzIyLCA0OTcyNiwgNDk3MzAsIDQ5NzM0LCA0OTczOCwgNDk3NDIsIDQ5NzQ2LCA0OTc1MCwgNDk3NTQsIAotICAgIDQ5NzU4LCA0OTc2MiwgNDk3NjYsIDQ5NzcwLCA0OTc3NCwgNDk3NzgsIDQ5NzgyLCA0OTc4NiwgNDk3OTAsIDQ5Nzk0LCAKLSAgICA0OTc5OCwgNDk4MDIsIDQ5ODA2LCA0OTgxMCwgNDk4MTQsIDQ5ODE4LCA0OTgyMiwgNDk4MjYsIDQ5ODMwLCA0OTgzNCwgCi0gICAgNDk4MzgsIDQ5ODQyLCA0OTg0NiwgNDk4NTAsIDQ5ODU0LCA0OTg1OCwgNDk4NjIsIDQ5ODY2LCA0OTg3MCwgNDk4NzQsIAotICAgIDQ5ODc4LCA0OTg4MiwgNDk4ODYsIDQ5ODkwLCA0OTg5NCwgNDk4OTgsIDQ5OTAyLCA0OTkwNiwgNDk5MTAsIDQ5OTE0LCAKLSAgICA0OTkxOCwgNDk5MjUsIDQ5OTMzLCA0OTkzOSwgNDk5NDUsIDQ5OTUyLCA0OTk1OSwgNDk5NjUsIDQ5OTcxLCA0OTk3NywgCi0gICAgNDk5ODMsIDQ5OTg4LCA0OTk5MywgNDk5OTgsIDUwMDAzLCA1MDAwOSwgNTAwMTUsIDUwMDIzLCA1MDAzMCwgNTAwMzYsIAotICAgIDUwMDQyLCA1MDA1MCwgNTAwNTksIDUwMDY2LCA1MDA3NiwgNTAwODcsIDUwMDkwLCA1MDA5MywgNTAwOTcsIDUwMTAxLCAKLSAgICA1MDEwOCwgNTAxMTUsIDUwMTI2LCA1MDEzNywgNTAxNDcsIDUwMTU3LCA1MDE2NCwgNTAxNzEsIDUwMTc4LCA1MDE4NSwgCi0gICAgNTAxOTYsIDUwMjA3LCA1MDIxOCwgNTAyMjksIDUwMjM5LCA1MDI0OSwgNTAyNjEsIDUwMjczLCA1MDI4NCwgNTAyOTUsIAotICAgIDUwMzA3LCA1MDMxOSwgNTAzMjgsIDUwMzM4LCA1MDM0OCwgNTAzNTksIDUwMzcwLCA1MDM3NywgNTAzODQsIDUwMzkxLCAKLSAgICA1MDM5OCwgNTA0MDgsIDUwNDE4LCA1MDQyNiwgNTA0MzQsIDUwNDQxLCA1MDQ0OCwgNTA0NTUsIDUwNDYyLCA1MDQ2OSwgCi0gICAgNTA0NzQsIDUwNDc5LCA1MDQ4NSwgNTA0OTMsIDUwNTAzLCA1MDUxMSwgNTA1MTksIDUwNTI3LCA1MDUzNSwgNTA1NDMsIAotICAgIDUwNTUxLCA1MDU1OSwgNTA1NjcsIDUwNTc2LCA1MDU4NSwgNTA1OTUsIDUwNjA1LCA1MDYxNCwgNTA2MjMsIDUwNjMzLCAKLSAgICA1MDY0MywgNTA2NTIsIDUwNjYxLCA1MDY3MSwgNTA2ODEsIDUwNjkwLCA1MDY5OSwgNTA3MDksIDUwNzE5LCA1MDczMywgCi0gICAgNTA3NTAsIDUwNzY0LCA1MDc4MSwgNTA3OTUsIDUwODA5LCA1MDgyMywgNTA4MzcsIDUwODQ3LCA1MDg1OCwgNTA4NjgsIAotICAgIDUwODc5LCA1MDg5NiwgNTA5MTMsIDUwOTIxLCA1MDkyNywgNTA5MzQsIDUwOTQxLCA1MDk0OCwgNTA5NTUsIDUwOTYwLCAKLSAgICA1MDk2NiwgNTA5NzEsIDUwOTc2LCA1MDk4MiwgNTA5ODcsIDUwOTkyLCA1MDk5NywgNTEwMDIsIDUxMDA3LCA1MTAxNCwgCi0gICAgNTEwMTksIDUxMDI2LCA1MTAzMSwgNTEwMzYsIDUxMDQwLCA1MTA0NCwgNTEwNTEsIDUxMDU4LCA1MTA2NSwgNTEwNzIsIAotICAgIDUxMDc5LCA1MTA4NiwgNTEwOTksIDUxMTEyLCA1MTEyNSwgNTExMzgsIDUxMTQ2LCA1MTE1NCwgNTExNjAsIDUxMTY2LCAKLSAgICA1MTE3MywgNTExODAsIDUxMTg3LCA1MTE5NCwgNTExOTgsIDUxMjAzLCA1MTIxMSwgNTEyMTksIDUxMjI3LCA1MTIzNCwgCi0gICAgNTEyMzgsIDUxMjQ2LCA1MTI1NCwgNTEyNTgsIDUxMjYyLCA1MTI2NywgNTEyNzQsIDUxMjgyLCA1MTI5MCwgNTEzMTAsIAotICAgIDUxMzMwLCA1MTM1MCwgNTEzNzAsIDUxMzkwLCA1MTQxMCwgNTE0MzAsIDUxNDUwLCA1MTQ1NiwgNTE0NjMsIDUxNDcyLCAKLSAgICA1MTQ4MCwgNTE0ODgsIDUxNDkzLCA1MTQ5NiwgNTE0OTksIDUxNTA0LCA1MTUwNywgNTE1MjYsIDUxNTMzLCA1MTUzOSwgCi0gICAgNTE1NDUsIDUxNTQ5LCA1MTU1MiwgNTE1NTUsIDUxNTU4LCA1MTU3MCwgNTE1ODMsIDUxNTkwLCA1MTU5NywgNTE2MDAsIAotICAgIDUxNjA0LCA1MTYwNywgNTE2MTIsIDUxNjE3LCA1MTYyMiwgNTE2MjgsIDUxNjM3LCA1MTY0NCwgNTE2NTEsIDUxNjU5LCAKLSAgICA1MTY2NiwgNTE2NzMsIDUxNjc2LCA1MTY4MiwgNTE2ODgsIDUxNjkxLCA1MTY5NCwgNTE2OTksIDUxNzA0LCA1MTcxMCwgCi0gICAgNTE3MTYsIDUxNzIwLCA1MTcyNSwgNTE3MzIsIDUxNzM2LCA1MTc0MiwgNTE3NDYsIDUxNzUwLCA1MTc1OCwgNTE3NzAsIAotICAgIDUxNzc5LCA1MTc4MywgNTE3ODUsIDUxNzk0LCA1MTgwMywgNTE4MDksIDUxODEyLCA1MTgxOCwgNTE4MjQsIDUxODI5LCAKLSAgICA1MTgzNCwgNTE4MzksIDUxODQ0LCA1MTg0OSwgNTE4NTQsIDUxODU2LCA1MTg2MiwgNTE4NjcsIDUxODc0LCA1MTg3OCwgCi0gICAgNTE4ODQsIDUxODg3LCA1MTg5MSwgNTE4OTgsIDUxOTA1LCA1MTkwNywgNTE5MDksIDUxOTE1LCA1MTkyMSwgNTE5MjcsIAotICAgIDUxOTM2LCA1MTk0NSwgNTE5NTIsIDUxOTU5LCA1MTk2NSwgNTE5NzEsIDUxOTc2LCA1MTk4MSwgNTE5ODYsIDUxOTkyLCAKLSAgICA1MTk5OCwgNTIwMDMsIDUyMDEwLCA1MjAxNCwgNTIwMTgsIDUyMDMxLCA1MjA0NCwgNTIwNTYsIDUyMDY1LCA1MjA3MSwgCi0gICAgNTIwNzgsIDUyMDgzLCA1MjA4OCwgNTIwOTMsIDUyMDk4LCA1MjEwMywgNTIxMDUsIDUyMTEyLCA1MjExOSwgNTIxMjYsIAotICAgIDUyMTMzLCA1MjE0MCwgNTIxNDgsIDUyMTU0LCA1MjE1OSwgNTIxNjUsIDUyMTcxLCA1MjE3NywgNTIxODQsIDUyMTkwLCAKLSAgICA1MjE5OCwgNTIyMDYsIDUyMjE0LCA1MjIyMiwgNTIyMjksIDUyMjM1LCA1MjI0MSwgNTIyNTAsIDUyMjU0LCA1MjI2MywgCi0gICAgNTIyNzIsIDUyMjgxLCA1MjI4OSwgNTIyOTMsIDUyMjk5LCA1MjMwNiwgNTIzMTMsIDUyMzE3LCA1MjMyMywgNTIzMzAsIAotICAgIDUyMzM1LCA1MjM0MCwgNTIzNDYsIDUyMzUxLCA1MjM1NiwgNTIzNjMsIDUyMzcwLCA1MjM3NSwgNTIzODAsIDUyMzg4LCAKLSAgICA1MjM5NiwgNTI0MDYsIDUyNDE2LCA1MjQyMywgNTI0MzAsIDUyNDM0LCA1MjQzOCwgNTI0NTAsIDUyNDU2LCA1MjQ2MiwgCi0gICAgNTI0NjcsIDUyNDcyLCA1MjQ3OSwgNTI0ODYsIDUyNDkyLCA1MjQ5OCwgNTI1MDcsIDUyNTE1LCA1MjUyMywgNTI1MzAsIAotICAgIDUyNTM3LCA1MjU0NCwgNTI1NTAsIDUyNTU3LCA1MjU2MywgNTI1NzAsIDUyNTc3LCA1MjU4NCwgNTI1OTEsIDUyNTk3LCAKLSAgICA1MjYwMiwgNTI2MTEsIDUyNjIxLCA1MjYyOCwgNTI2MzcsIDUyNjQzLCA1MjY0OCwgNTI2NTMsIDUyNjYzLCA1MjY2OSwgCi0gICAgNTI2NzUsIDUyNjgxLCA1MjY4OSwgNTI2OTQsIDUyNzAxLCA1MjcwOCwgNTI3MTksIDUyNzI2LCA1MjczMywgNTI3NDAsIAotICAgIDUyNzQ3LCA1Mjc1NCwgNTI3NjEsIDUyNzY4LCA1Mjc4MCwgNTI3OTIsIDUyODAzLCA1MjgxNCwgNTI4MjcsIDUyODQwLCAKLSAgICA1Mjg0NSwgNTI4NTAsIDUyODU5LCA1Mjg2OCwgNTI4NzUsIDUyODgyLCA1Mjg5MSwgNTI5MDAsIDUyOTA4LCA1MjkxNiwgCi0gICAgNTI5MjQsIDUyOTMyLCA1Mjk0MiwgNTI5NTIsIDUyOTY2LCA1Mjk4MCwgNTI5ODgsIDUyOTk2LCA1MzAwOCwgNTMwMjAsIAotICAgIDUzMDI4LCA1MzAzNiwgNTMwNDYsIDUzMDU2LCA1MzA2MSwgNTMwNjYsIDUzMDc1LCA1MzA4NCwgNTMwODksIDUzMDk0LCAKLSAgICA1MzEwMiwgNTMxMDgsIDUzMTE0LCA1MzEyMiwgNTMxMzAsIDUzMTQzLCA1MzE1NiwgNTMxNjAsIDUzMTY0LCA1MzE3MSwgCi0gICAgNTMxNzgsIDUzMTg1LCA1MzE5MywgNTMyMDEsIDUzMjEwLCA1MzIxOSwgNTMyMjUsIDUzMjMxLCA1MzIzOCwgNTMyNDUsIAotICAgIDUzMjUyLCA1MzI1OSwgNTMyNjgsIDUzMjc3LCA1MzI4MCwgNTMyODMsIDUzMjg4LCA1MzI5MywgNTMyOTksIDUzMzA1LCAKLSAgICA1MzMxMiwgNTMzMTksIDUzMzI5LCA1MzMzOSwgNTMzNDYsIDUzMzUzLCA1MzM2MSwgNTMzNjksIDUzMzc3LCA1MzM4NSwgCi0gICAgNTMzOTMsIDUzNDAxLCA1MzQwOCwgNTM0MTUsIDUzNDE5LCA1MzQyMywgNTM0MzAsIDUzNDM3LCA1MzQ0MiwgNTM0NDcsIAotICAgIDUzNDUyLCA1MzQ1NywgNTM0NjMsIDUzNDc3LCA1MzQ4NCwgNTM0OTEsIDUzNDk1LCA1MzQ5NywgNTM0OTksIDUzNTA0LCAKLSAgICA1MzUwOSwgNTM1MTQsIDUzNTE4LCA1MzUyNiwgNTM1MzMsIDUzNTQwLCA1MzU0OCwgNTM1NjAsIDUzNTY4LCA1MzU3NiwgCi0gICAgNTM1ODcsIDUzNTkxLCA1MzU5NSwgNTM2MDEsIDUzNjA5LCA1MzYyMiwgNTM2MjksIDUzNjM2LCA1MzY0MywgNTM2NDgsIAotICAgIDUzNjU1LCA1MzY2NCwgNTM2NzIsIDUzNjc4LCA1MzY4NCwgNTM2OTAsIDUzNjk5LCA1MzcwOCwgNTM3MTYsIDUzNzI1LCAKLSAgICA1MzczMCwgNTM3MzMsIDUzNzM4LCA1Mzc0NCwgNTM3NTAsIDUzNzU2LCA1Mzc2MiwgNTM3NjYsIDUzNzY5LCA1Mzc3MywgCi0gICAgNTM3NzcsIDUzNzgzLCA1Mzc4OSwgNTM3OTUsIDUzODAxLCA1MzgwNSwgNTM4MDksIDUzODE2LCA1MzgyMywgNTM4MzAsIAotICAgIDUzODM3LCA1Mzg0NCwgNTM4NTEsIDUzODYxLCA1Mzg3MSwgNTM4NzgsIDUzODg1LCA1Mzg5MywgNTM5MDEsIDUzOTA1LCAKLSAgICA1MzkxMCwgNTM5MTUsIDUzOTIxLCA1MzkyNywgNTM5MzAsIDUzOTMzLCA1MzkzNiwgNTM5MzksIDUzOTQzLCA1Mzk0OCwgCi0gICAgNTM5NTMsIDUzOTU4LCA1Mzk2MywgNTM5NjgsIDUzOTcyLCA1Mzk3NiwgNTM5ODAsIDUzOTg0LCA1Mzk4OCwgNTM5OTIsIAotICAgIDUzOTk2LCA1NDAwMiwgNTQwMDYsIDU0MDEyLCA1NDAxNywgNTQwMjQsIDU0MDMyLCA1NDAzOSwgNTQwNDcsIDU0MDU0LCAKLSAgICA1NDA2MiwgNTQwNzEsIDU0MDc4LCA1NDA4OCwgNTQwOTksIDU0MTA1LCA1NDExNCwgNTQxMjAsIDU0MTI5LCA1NDEzOCwgCi0gICAgNTQxNDQsIDU0MTUwLCA1NDE1NCwgNTQxNTgsIDU0MTY3LCA1NDE3NiwgNTQxODMsIDU0MTkwLCA1NDE5OSwgMCwgMCwgMCwgCi0gICAgNTQyMDgsIDU0MjEzLCA1NDIxNywgNTQyMjEsIDU0MjI2LCA1NDIzMSwgNTQyMzYsIDU0MjQ0LCA1NDI1MiwgNTQyNTUsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDMxODYyLCAzMTg2NywgMzE4NzIsIDMxODc3LCAKKyAgICAzMTg4MiwgMzE4OTEsIDMxOTAyLCAzMTkxMSwgMzE5MjIsIDMxOTI4LCAzMTk0MSwgMzE5NDcsIDMxOTU0LCAzMTk2MSwgCisgICAgMzE5NjYsIDMxOTcyLCAzMTk3OCwgMzE5ODksIDMxOTk4LCAzMjAwNSwgMzIwMTIsIDMyMDIxLCAzMjAyOCwgMzIwMzcsIAorICAgIDMyMDQ3LCAzMjA1NywgMzIwNjQsIDMyMDcxLCAzMjA3OCwgMzIwODgsIDMyMDkzLCAzMjEwMSwgMzIxMDcsIDMyMTE1LCAKKyAgICAzMjEyNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzIxMjksIDMyMTM0LCAzMjE0MCwgMzIxNDcsIAorICAgIDMyMTU1LCAzMjE2MSwgMzIxNjcsIDMyMTczLCAzMjE3OCwgMzIxODUsIDMyMTkxLCAzMjE5NywgMzIyMDMsIDMyMjExLCAKKyAgICAzMjIxNiwgMzIyMjMsIDMyMjI4LCAzMjIzNCwgMzIyNDAsIDMyMjQ3LCAzMjI1NSwgMzIyNjIsIDMyMjY4LCAzMjI3NSwgCisgICAgMzIyODIsIDMyMjg4LCAzMjI5NSwgMzIzMDIsIDMyMzA4LCAzMjMxMywgMzIzMTksIDMyMzI3LCAzMjMzNSwgMzIzNDEsIAorICAgIDMyMzQ3LCAzMjM1MywgMzIzNTksIDMyMzY3LCAzMjM3MSwgMzIzNzcsIDMyMzgzLCAzMjM4OSwgMzIzOTUsIDMyNDAxLCAKKyAgICAzMjQwNywgMzI0MTEsIDMyNDE2LCAzMjQyMSwgMzI0MjgsIDMyNDMzLCAzMjQzNywgMzI0NDMsIDMyNDQ4LCAzMjQ1MywgCisgICAgMzI0NTcsIDMyNDYyLCAzMjQ2NywgMzI0NzEsIDMyNDc1LCAzMjQ3OSwgMzI0ODUsIDMyNDg5LCAzMjQ5NCwgMzI0OTksIAorICAgIDMyNTAzLCAzMjUwOCwgMzI1MTIsIDMyNTE3LCAzMjUyMSwgMzI1MjcsIDMyNTMyLCAzMjUzOSwgMzI1NDQsIDMyNTQ5LCAKKyAgICAzMjU1MywgMzI1NTgsIDMyNTYzLCAzMjU3MCwgMzI1NzUsIDMyNTgxLCAzMjU4NiwgMzI1OTAsIDMyNTk1LCAzMjU5OSwgCisgICAgMzI2MDQsIDMyNjExLCAzMjYxOCwgMzI2MjMsIDMyNjI4LCAzMjYzMiwgMzI2MzgsIDMyNjQ0LCAzMjY0OSwgMzI2NTQsIAorICAgIDMyNjU5LCAzMjY2NSwgMzI2NzAsIDMyNjc2LCAzMjY4MSwgMzI2ODcsIDMyNjkzLCAzMjY5OSwgMzI3MDYsIDMyNzEzLCAKKyAgICAzMjcyMCwgMzI3MjcsIDMyNzM0LCAzMjc0MSwgMzI3NDYsIDMyNzU0LCAzMjc2MywgMzI3NzIsIDMyNzgxLCAzMjc5MCwgCisgICAgMzI3OTksIDMyODA4LCAzMjgyMCwgMzI4MjksIDMyODM4LCAzMjg0NywgMzI4NTQsIDMyODU5LCAzMjg2NiwgMzI4NzQsIAorICAgIDMyODgyLCAzMjg4OSwgMzI4OTYsIDMyOTAzLCAzMjkxMCwgMzI5MTgsIDMyOTI3LCAzMjkzNiwgMzI5NDUsIDMyOTU0LCAKKyAgICAzMjk2MywgMzI5NzIsIDMyOTgxLCAzMjk5MCwgMzI5OTksIDMzMDA4LCAzMzAxNywgMzMwMjYsIDMzMDM1LCAzMzA0NCwgCisgICAgMzMwNTIsIDMzMDYxLCAzMzA3MiwgMzMwODAsIDMzMDg5LCAzMzEwMCwgMzMxMDksIDMzMTE4LCAzMzEyNywgMzMxMzYsIAorICAgIDMzMTQ0LCAzMzE1MywgMzMxNjAsIDMzMTY1LCAzMzE3MywgMzMxNzgsIDMzMTg1LCAzMzE5MCwgMzMxOTksIDMzMjA1LCAKKyAgICAzMzIxMiwgMzMyMTksIDMzMjI0LCAzMzIyOSwgMzMyMzcsIDMzMjQ1LCAzMzI1NCwgMzMyNjMsIDMzMjY4LCAzMzI3NSwgCisgICAgMzMyODYsIDMzMjk0LCAzMzMwMywgMzMzMDgsIDMzMzE0LCAzMzMxOSwgMzMzMjYsIDMzMzMxLCAzMzM0MCwgMzMzNDUsIAorICAgIDMzMzUwLCAzMzM1NSwgMzMzNjIsIDMzMzY5LCAzMzM3NCwgMzMzODMsIDMzMzkxLCAzMzM5NiwgMzM0MDEsIDMzNDA4LCAKKyAgICAzMzQxNSwgMzM0MTksIDMzNDIzLCAzMzQyNiwgMzM0MjksIDMzNDMyLCAzMzQzNSwgMzM0MzgsIDMzNDQxLCAzMzQ0OCwgCisgICAgMzM0NTEsIDMzNDU0LCAzMzQ1OSwgMzM0NjMsIDMzNDY3LCAzMzQ3MSwgMzM0NzUsIDMzNDc5LCAzMzQ4OCwgMzM0OTQsIAorICAgIDMzNTAwLCAzMzUwNiwgMzM1MTQsIDMzNTIyLCAzMzUyOCwgMzM1MzQsIDMzNTQxLCAzMzU0NywgMzM1NTIsIDMzNTU4LCAKKyAgICAzMzU2NCwgMzM1NjksIDMzNTc1LCAzMzU4MSwgMzM1ODksIDMzNTk0LCAzMzYwMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzM2MDYsIDMzNjEzLCAzMzYyMCwgMzM2MjUsIDMzNjM0LCAKKyAgICAzMzY0MiwgMzM2NTAsIDMzNjU3LCAzMzY2NCwgMzM2NzEsIDMzNjc4LCAzMzY4NiwgMzM2OTQsIDMzNzA0LCAzMzcxNCwgCisgICAgMzM3MjIsIDMzNzMwLCAzMzczOCwgMzM3NDYsIDMzNzU1LCAzMzc2NCwgMzM3NzIsIDMzNzgwLCAzMzc4OSwgMzM3OTgsIAorICAgIDMzODA3LCAzMzgxNiwgMzM4MjUsIDMzODM0LCAzMzg0MiwgMzM4NTAsIDMzODU4LCAzMzg2NiwgMzM4NzYsIDMzODg2LCAKKyAgICAzMzg5NCwgMzM5MDIsIDMzOTEwLCAzMzkxOCwgMzM5MjYsIDMzOTM0LCAzMzk0MiwgMzM5NTAsIDMzOTU4LCAzMzk2NiwgCisgICAgMzM5NzQsIDMzOTgyLCAzMzk5MSwgMzQwMDAsIDM0MDA5LCAzNDAxOCwgMzQwMjgsIDM0MDM4LCAzNDA0NSwgMzQwNTIsIAorICAgIDM0MDYwLCAzNDA2OCwgMzQwNzcsIDM0MDg2LCAzNDA5NCwgMzQxMDIsIDM0MTE0LCAzNDEyNiwgMzQxMzUsIDM0MTQ0LCAKKyAgICAzNDE1MywgMzQxNjIsIDM0MTY5LCAzNDE3NiwgMzQxODQsIDM0MTkyLCAzNDIwMCwgMzQyMDgsIDM0MjE2LCAzNDIyNCwgCisgICAgMzQyMzIsIDM0MjQwLCAzNDI0OSwgMzQyNTgsIDM0MjY3LCAzNDI3NiwgMzQyODUsIDM0Mjk0LCAzNDMwNCwgMzQzMTQsIAorICAgIDM0MzIzLCAzNDMzMiwgMzQzNDEsIDM0MzUwLCAzNDM1NywgMzQzNjQsIDM0MzcyLCAzNDM4MCwgMzQzODgsIDM0Mzk2LCAKKyAgICAzNDQwNCwgMzQ0MTIsIDM0NDI0LCAzNDQzNiwgMzQ0NDUsIDM0NDU0LCAzNDQ2MiwgMzQ0NzAsIDM0NDc4LCAzNDQ4NiwgCisgICAgMzQ0OTcsIDM0NTA4LCAzNDUxOSwgMzQ1MzAsIDM0NTQyLCAzNDU1NCwgMzQ1NjIsIDM0NTcwLCAzNDU3OCwgMzQ1ODYsIAorICAgIDM0NTk1LCAzNDYwNCwgMzQ2MTMsIDM0NjIyLCAzNDYzMCwgMzQ2MzgsIDM0NjQ2LCAzNDY1NCwgMzQ2NjIsIDM0NjcwLCAKKyAgICAzNDY3OSwgMzQ2ODgsIDM0Njk4LCAzNDcwOCwgMzQ3MTUsIDM0NzIyLCAzNDczMCwgMzQ3MzgsIDM0NzQ1LCAzNDc1MiwgCisgICAgMzQ3NTksIDM0NzY2LCAzNDc3NCwgMzQ3ODIsIDM0NzkwLCAzNDc5OCwgMzQ4MDYsIDM0ODE0LCAzNDgyMiwgMzQ4MzAsIAorICAgIDM0ODM4LCAzNDg0NiwgMzQ4NTQsIDM0ODYyLCAzNDg3MCwgMzQ4NzgsIDM0ODg2LCAzNDg5NCwgMzQ5MDMsIDM0OTEyLCAKKyAgICAzNDkyMSwgMzQ5MjksIDM0OTM4LCAzNDk0NywgMzQ5NTYsIDM0OTY1LCAzNDk3NSwgMzQ5ODQsIDM0OTkwLCAzNDk5NSwgCisgICAgMzUwMDIsIDM1MDA5LCAzNTAxNywgMzUwMjUsIDM1MDM0LCAzNTA0MywgMzUwNTIsIDM1MDYxLCAzNTA3MiwgMzUwODMsIAorICAgIDM1MDkyLCAzNTEwMSwgMzUxMTEsIDM1MTIxLCAzNTEzMCwgMzUxMzksIDM1MTQ4LCAzNTE1NywgMzUxNjgsIDM1MTc5LCAKKyAgICAzNTE4OCwgMzUxOTcsIDM1MjA3LCAzNTIxNywgMzUyMjQsIDM1MjMxLCAzNTIzOSwgMzUyNDcsIDM1MjUzLCAzNTI1OSwgCisgICAgMzUyNjgsIDM1Mjc3LCAzNTI4NiwgMzUyOTUsIDM1MzA2LCAzNTMxNywgMzUzMjYsIDM1MzM1LCAzNTM0NSwgMzUzNTUsIAorICAgIDM1MzY0LCAzNTM3MywgMzUzODEsIDM1Mzg5LCAzNTM5NiwgMzU0MDMsIDM1NDExLCAzNTQxOSwgMzU0MjgsIDM1NDM3LCAKKyAgICAzNTQ0NiwgMzU0NTUsIDM1NDY2LCAzNTQ3NywgMzU0ODYsIDM1NDk1LCAzNTUwNSwgMzU1MTUsIDM1NTI0LCAzNTUzMywgCisgICAgMzU1NDIsIDM1NTUxLCAzNTU2MiwgMzU1NzMsIDM1NTgyLCAzNTU5MSwgMzU2MDEsIDM1NjExLCAzNTYxOCwgMzU2MjUsIAorICAgIDM1NjMzLCAzNTY0MSwgMzU2NTAsIDM1NjU5LCAzNTY2OCwgMzU2NzcsIDM1Njg4LCAzNTY5OSwgMzU3MDgsIDM1NzE3LCAKKyAgICAzNTcyNywgMzU3MzcsIDM1NzQ0LCAzNTc1MSwgMzU3NTksIDM1NzY3LCAzNTc3NiwgMzU3ODUsIDM1NzkyLCAzNTc5OSwgCisgICAgMzU4MDYsIDM1ODEzLCAzNTgyMCwgMzU4MjcsIDM1ODM1LCAzNTg0MywgMzU4NTEsIDM1ODU5LCAzNTg3MCwgMzU4ODEsIAorICAgIDM1ODkyLCAzNTkwMywgMzU5MTQsIDM1OTI1LCAzNTkzMywgMzU5NDEsIDM1OTUyLCAzNTk2MywgMzU5NzQsIDM1OTg1LCAKKyAgICAzNTk5NiwgMzYwMDcsIDM2MDE1LCAzNjAyMywgMzYwMzQsIDM2MDQ1LCAzNjA1NiwgMCwgMCwgMzYwNjcsIDM2MDc1LCAKKyAgICAzNjA4MywgMzYwOTQsIDM2MTA1LCAzNjExNiwgMCwgMCwgMzYxMjcsIDM2MTM1LCAzNjE0MywgMzYxNTQsIDM2MTY1LCAKKyAgICAzNjE3NiwgMzYxODcsIDM2MTk4LCAzNjIwOSwgMzYyMTcsIDM2MjI1LCAzNjIzNiwgMzYyNDcsIDM2MjU4LCAzNjI2OSwgCisgICAgMzYyODAsIDM2MjkxLCAzNjI5OSwgMzYzMDcsIDM2MzE4LCAzNjMyOSwgMzYzNDAsIDM2MzUxLCAzNjM2MiwgMzYzNzMsIAorICAgIDM2MzgxLCAzNjM4OSwgMzY0MDAsIDM2NDExLCAzNjQyMiwgMzY0MzMsIDM2NDQ0LCAzNjQ1NSwgMzY0NjMsIDM2NDcxLCAKKyAgICAzNjQ4MiwgMzY0OTMsIDM2NTA0LCAwLCAwLCAzNjUxNSwgMzY1MjMsIDM2NTMxLCAzNjU0MiwgMzY1NTMsIDM2NTY0LCAwLCAKKyAgICAwLCAzNjU3NSwgMzY1ODMsIDM2NTkxLCAzNjYwMiwgMzY2MTMsIDM2NjI0LCAzNjYzNSwgMzY2NDYsIDAsIDM2NjU3LCAwLCAKKyAgICAzNjY2NSwgMCwgMzY2NzYsIDAsIDM2Njg3LCAzNjY5OCwgMzY3MDYsIDM2NzE0LCAzNjcyNSwgMzY3MzYsIDM2NzQ3LCAKKyAgICAzNjc1OCwgMzY3NjksIDM2NzgwLCAzNjc4OCwgMzY3OTYsIDM2ODA3LCAzNjgxOCwgMzY4MjksIDM2ODQwLCAzNjg1MSwgCisgICAgMzY4NjIsIDM2ODcwLCAzNjg3OCwgMzY4ODYsIDM2ODk0LCAzNjkwMiwgMzY5MTAsIDM2OTE4LCAzNjkyNiwgMzY5MzQsIAorICAgIDM2OTQyLCAzNjk1MCwgMzY5NTgsIDM2OTY2LCAwLCAwLCAzNjk3NCwgMzY5ODUsIDM2OTk2LCAzNzAxMCwgMzcwMjQsIAorICAgIDM3MDM4LCAzNzA1MiwgMzcwNjYsIDM3MDgwLCAzNzA5MSwgMzcxMDIsIDM3MTE2LCAzNzEzMCwgMzcxNDQsIDM3MTU4LCAKKyAgICAzNzE3MiwgMzcxODYsIDM3MTk3LCAzNzIwOCwgMzcyMjIsIDM3MjM2LCAzNzI1MCwgMzcyNjQsIDM3Mjc4LCAzNzI5MiwgCisgICAgMzczMDMsIDM3MzE0LCAzNzMyOCwgMzczNDIsIDM3MzU2LCAzNzM3MCwgMzczODQsIDM3Mzk4LCAzNzQwOSwgMzc0MjAsIAorICAgIDM3NDM0LCAzNzQ0OCwgMzc0NjIsIDM3NDc2LCAzNzQ5MCwgMzc1MDQsIDM3NTE1LCAzNzUyNiwgMzc1NDAsIDM3NTU0LCAKKyAgICAzNzU2OCwgMzc1ODIsIDM3NTk2LCAzNzYxMCwgMzc2MTgsIDM3NjI2LCAzNzYzNywgMzc2NDUsIDAsIDM3NjU2LCAzNzY2NCwgCisgICAgMzc2NzUsIDM3NjgzLCAzNzY5MSwgMzc2OTksIDM3NzA3LCAzNzcxNSwgMzc3MTgsIDM3NzIxLCAzNzcyNCwgMzc3MjcsIAorICAgIDM3NzMzLCAzNzc0NCwgMzc3NTIsIDAsIDM3NzYzLCAzNzc3MSwgMzc3ODIsIDM3NzkwLCAzNzc5OCwgMzc4MDYsIDM3ODE0LCAKKyAgICAzNzgyMiwgMzc4MjgsIDM3ODM0LCAzNzg0MCwgMzc4NDgsIDM3ODU2LCAzNzg2NywgMCwgMCwgMzc4NzgsIDM3ODg2LCAKKyAgICAzNzg5NywgMzc5MDUsIDM3OTEzLCAzNzkyMSwgMCwgMzc5MjksIDM3OTM1LCAzNzk0MSwgMzc5NDcsIDM3OTU1LCAzNzk2MywgCisgICAgMzc5NzQsIDM3OTg1LCAzNzk5MywgMzgwMDEsIDM4MDA5LCAzODAyMCwgMzgwMjgsIDM4MDM2LCAzODA0NCwgMzgwNTIsIAorICAgIDM4MDYwLCAzODA2NiwgMzgwNzIsIDAsIDAsIDM4MDc1LCAzODA4NiwgMzgwOTQsIDAsIDM4MTA1LCAzODExMywgMzgxMjQsIAorICAgIDM4MTMyLCAzODE0MCwgMzgxNDgsIDM4MTU2LCAzODE2NCwgMzgxNjcsIDAsIDM4MTcwLCAzODE3NCwgMzgxNzgsIDM4MTgyLCAKKyAgICAzODE4NiwgMzgxOTAsIDM4MTk0LCAzODE5OCwgMzgyMDIsIDM4MjA2LCAzODIxMCwgMzgyMTQsIDM4MjIwLCAzODIyNiwgCisgICAgMzgyMzIsIDM4MjM1LCAzODIzOCwgMzgyNDAsIDM4MjQ0LCAzODI0OCwgMzgyNTIsIDM4MjU2LCAzODI1OCwgMzgyNjIsIAorICAgIDM4MjY2LCAzODI3MiwgMzgyNzgsIDM4Mjg1LCAzODI5MiwgMzgyOTcsIDM4MzAyLCAzODMwOCwgMzgzMTQsIDM4MzE2LCAKKyAgICAzODMxOSwgMzgzMjEsIDM4MzI1LCAzODMyOSwgMzgzMzMsIDM4MzM2LCAzODM0MCwgMzgzNDQsIDM4MzQ4LCAzODM1MiwgCisgICAgMzgzNTYsIDM4MzYyLCAzODM2NiwgMzgzNzAsIDM4Mzc2LCAzODM4MSwgMzgzODgsIDM4MzkwLCAzODM5MywgMzgzOTcsIAorICAgIDM4NDAxLCAzODQwNiwgMzg0MTIsIDM4NDE0LCAzODQyMywgMzg0MzIsIDM4NDM1LCAzODQzOSwgMzg0NDEsIDM4NDQzLCAKKyAgICAzODQ0NSwgMzg0NDgsIDM4NDU0LCAzODQ1NiwgMzg0NjAsIDM4NDY0LCAzODQ3MSwgMzg0NzgsIDM4NDgyLCAzODQ4NywgCisgICAgMzg0OTIsIDM4NDk3LCAzODUwMiwgMzg1MDYsIDM4NTEwLCAzODUxMywgMzg1MTcsIDM4NTIxLCAzODUyOCwgMzg1MzMsIAorICAgIDM4NTM3LCAzODU0MSwgMzg1NDYsIDM4NTUwLCAzODU1NCwgMzg1NTksIDM4NTY0LCAzODU2OCwgMzg1NzIsIDM4NTc2LCAKKyAgICAzODU3OCwgMzg1ODMsIDM4NTg4LCAzODU5MiwgMzg1OTYsIDM4NjAwLCAzODYwNCwgMCwgMCwgMCwgMCwgMCwgMzg2MDgsIAorICAgIDM4NjE0LCAzODYyMCwgMzg2MjcsIDM4NjM0LCAzODYzOSwgMzg2NDQsIDM4NjQ4LCAwLCAwLCAzODY1NCwgMzg2NTcsIAorICAgIDM4NjYwLCAzODY2MywgMzg2NjYsIDM4NjY5LCAzODY3MiwgMzg2NzYsIDM4NjgwLCAzODY4NSwgMzg2OTAsIDM4Njk1LCAKKyAgICAzODcwMSwgMzg3MDUsIDM4NzA4LCAzODcxMSwgMzg3MTQsIDM4NzE3LCAzODcyMCwgMzg3MjMsIDM4NzI2LCAzODcyOSwgCisgICAgMzg3MzIsIDM4NzM2LCAzODc0MCwgMzg3NDUsIDM4NzUwLCAwLCAzODc1NSwgMzg3NjEsIDM4NzY3LCAzODc3MywgMzg3ODAsIAorICAgIDM4Nzg3LCAzODc5NCwgMzg4MDEsIDM4ODA3LCAzODgxMywgMzg4MTksIDM4ODI2LCAzODgzMiwgMCwgMCwgMCwgMzg4MzksIAorICAgIDM4ODQyLCAzODg0NSwgMzg4NDgsIDM4ODUzLCAzODg1NiwgMzg4NTksIDM4ODYyLCAzODg2NSwgMzg4NjgsIDM4ODcxLCAKKyAgICAzODg3NSwgMzg4NzgsIDM4ODgxLCAzODg4NCwgMzg4ODcsIDM4ODkwLCAzODg5NSwgMzg4OTgsIDM4OTAxLCAzODkwNCwgCisgICAgMzg5MDcsIDM4OTEwLCAzODkxNSwgMzg5MTgsIDM4OTIxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzODkyNiwgMzg5MzEsIDM4OTM2LCAzODk0MywgMzg5NTEsIDM4OTU2LCAKKyAgICAzODk2MSwgMzg5NjUsIDM4OTY5LCAzODk3NCwgMzg5ODEsIDM4OTg4LCAzODk5MiwgMzg5OTcsIDM5MDAyLCAzOTAwNywgCisgICAgMzkwMTIsIDM5MDE5LCAzOTAyNCwgMzkwMjksIDM5MDM0LCAzOTA0MywgMzkwNTAsIDM5MDU3LCAzOTA2MSwgMzkwNjYsIAorICAgIDM5MDcyLCAzOTA3NywgMzkwODQsIDM5MDkzLCAzOTEwMiwgMzkxMDYsIDM5MTEwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzOTExNCwgMzkxMTgsIDM5MTI2LCAzOTEzMCwgMzkxMzQsIDM5MTM5LCAzOTE0MywgCisgICAgMzkxNDcsIDM5MTUxLCAzOTE1MywgMzkxNTcsIDM5MTYxLCAzOTE2NSwgMzkxNzAsIDM5MTc0LCAzOTE3OCwgMzkxODYsIAorICAgIDM5MTg5LCAzOTE5MywgMzkxOTYsIDM5MTk5LCAzOTIwNSwgMzkyMDgsIDM5MjExLCAzOTIxNywgMzkyMjEsIDM5MjI1LCAKKyAgICAzOTIyOSwgMzkyMzIsIDM5MjM2LCAzOTIzOSwgMzkyNDMsIDM5MjQ1LCAzOTI0OCwgMzkyNTEsIDM5MjU1LCAzOTI1NywgCisgICAgMzkyNjEsIDM5MjY0LCAzOTI2NywgMzkyNzIsIDM5Mjc3LCAzOTI4NCwgMzkyODcsIDM5MjkwLCAzOTI5NCwgMzkyOTksIAorICAgIDM5MzAyLCAzOTMwNSwgMzkzMDgsIDM5MzEyLCAzOTMxNywgMzkzMjAsIDM5MzIzLCAzOTMyNSwgMzkzMjgsIDM5MzMxLCAKKyAgICAzOTMzNCwgMzkzMzgsIDM5MzQzLCAzOTM0NiwgMzkzNTAsIDM5MzU0LCAzOTM1OCwgMzkzNjIsIDM5MzY3LCAzOTM3MywgCisgICAgMzkzNzgsIDM5MzgzLCAzOTM4OSwgMzkzOTQsIDM5Mzk5LCAzOTQwMywgMzk0MDcsIDM5NDEyLCAzOTQxNiwgMzk0MjAsIAorICAgIDM5NDIzLCAzOTQyNSwgMzk0MzAsIDM5NDM2LCAzOTQ0MywgMzk0NTAsIDM5NDU3LCAzOTQ2NCwgMzk0NzEsIDM5NDc4LCAKKyAgICAzOTQ4NSwgMzk0OTIsIDM5NTAwLCAzOTUwNywgMzk1MTUsIDM5NTIyLCAzOTUyOSwgMzk1MzcsIDM5NTQ1LCAzOTU1MCwgCisgICAgMzk1NTUsIDM5NTYwLCAzOTU2NSwgMzk1NzAsIDM5NTc1LCAzOTU4MCwgMzk1ODUsIDM5NTkwLCAzOTU5NSwgMzk2MDEsIAorICAgIDM5NjA3LCAzOTYxMywgMzk2MTksIDM5NjI2LCAzOTYzNCwgMzk2NDEsIDM5NjQ3LCAzOTY1MywgMzk2NTksIDM5NjY1LCAKKyAgICAzOTY3MSwgMzk2NzcsIDM5NjgzLCAzOTY4OSwgMzk2OTUsIDM5NzAyLCAzOTcwOSwgMzk3MTYsIDM5NzIzLCAzOTczMSwgCisgICAgMzk3NDAsIDM5NzQ4LCAzOTc1OSwgMzk3NjcsIDM5Nzc1LCAzOTc4NCwgMzk3OTEsIDM5ODAwLCAzOTgwOSwgMzk4MTcsIAorICAgIDM5ODI2LCAwLCAwLCAwLCAwLCAwLCAwLCAzOTgzNCwgMzk4MzYsIDM5ODM5LCAzOTg0MSwgMzk4NDQsIDM5ODQ3LCAzOTg1MCwgCisgICAgMzk4NTUsIDM5ODYwLCAzOTg2NSwgMzk4NzAsIDM5ODc0LCAzOTg3OCwgMzk4ODIsIDM5ODg2LCAzOTg5MSwgMzk4OTcsIAorICAgIDM5OTAyLCAzOTkwOCwgMzk5MTMsIDM5OTE4LCAzOTkyMywgMzk5MjksIDM5OTM0LCAzOTk0MCwgMzk5NDYsIDM5OTUwLCAKKyAgICAzOTk1NCwgMzk5NTksIDM5OTY0LCAzOTk2OSwgMzk5NzQsIDM5OTc5LCAzOTk4NywgMzk5OTUsIDQwMDAzLCA0MDAxMSwgCisgICAgNDAwMTgsIDQwMDI2LCA0MDAzMywgNDAwNDAsIDQwMDQ5LCA0MDA2MSwgNDAwNjcsIDQwMDczLCA0MDA4MSwgNDAwODksIAorICAgIDQwMDk4LCA0MDEwNywgNDAxMTUsIDQwMTIzLCA0MDEzMiwgNDAxNDEsIDQwMTQ2LCA0MDE1NCwgNDAxNTksIDQwMTY0LCAKKyAgICA0MDE3MCwgNDAxNzUsIDQwMTgxLCA0MDE4OCwgNDAxOTUsIDQwMjAwLCA0MDIwNiwgNDAyMTEsIDQwMjE0LCA0MDIxOCwgCisgICAgNDAyMjEsIDQwMjI1LCA0MDIyOSwgNDAyMzMsIDQwMjM5LCA0MDI0NSwgNDAyNTEsIDQwMjU3LCA0MDI2MSwgNDAyNjUsIAorICAgIDQwMjY5LCA0MDI3MywgNDAyNzksIDQwMjg1LCA0MDI4OSwgNDAyOTQsIDQwMjk4LCA0MDMwMywgNDAzMDgsIDQwMzEzLCAKKyAgICA0MDMxNiwgNDAzMjAsIDQwMzIzLCA0MDMyNywgNDAzMzQsIDQwMzQyLCA0MDM1MywgNDAzNjQsIDQwMzY5LCA0MDM3OCwgCisgICAgNDAzODUsIDQwMzk0LCA0MDQwMywgNDA0MDcsIDQwNDEzLCA0MDQyMSwgNDA0MjUsIDQwNDMwLCA0MDQzNSwgNDA0NDEsIAorICAgIDQwNDQ3LCA0MDQ1MywgNDA0NjAsIDQwNDY0LCA0MDQ2OCwgNDA0NzMsIDQwNDc2LCA0MDQ3OCwgNDA0ODIsIDQwNDg2LCAKKyAgICA0MDQ5NCwgNDA0OTgsIDQwNTAwLCA0MDUwMiwgNDA1MDYsIDQwNTE0LCA0MDUxOSwgNDA1MjUsIDQwNTM1LCA0MDU0MiwgCisgICAgNDA1NDcsIDQwNTUxLCA0MDU1NSwgNDA1NTksIDQwNTYyLCA0MDU2NSwgNDA1NjgsIDQwNTcyLCA0MDU3NiwgNDA1ODAsIAorICAgIDQwNTg0LCA0MDU4OCwgNDA1OTEsIDQwNTk1LCA0MDU5OSwgNDA2MDIsIDQwNjA0LCA0MDYwNywgNDA2MDksIDQwNjEzLCAKKyAgICA0MDYxNywgNDA2MTksIDQwNjI1LCA0MDYyOCwgNDA2MzMsIDQwNjM3LCA0MDY0MSwgNDA2NDMsIDQwNjQ1LCA0MDY0NywgCisgICAgNDA2NTAsIDQwNjU0LCA0MDY1OCwgNDA2NjIsIDQwNjY2LCA0MDY3MCwgNDA2NzYsIDQwNjgyLCA0MDY4NCwgNDA2ODYsIAorICAgIDQwNjg4LCA0MDY5MCwgNDA2OTMsIDQwNjk1LCA0MDY5OSwgNDA3MDEsIDQwNzA1LCA0MDcwOCwgNDA3MTMsIDQwNzE3LCAKKyAgICA0MDcyMSwgNDA3MjQsIDQwNzI3LCA0MDczMSwgNDA3MzcsIDQwNzQxLCA0MDc1MSwgNDA3NjEsIDQwNzY1LCA0MDc3MSwgCisgICAgNDA3NzcsIDQwNzgwLCA0MDc4NCwgNDA3ODcsIDQwNzkyLCA0MDc5NiwgNDA4MDIsIDQwODA2LCA0MDgxOCwgNDA4MjYsIAorICAgIDQwODMwLCA0MDgzNCwgNDA4NDAsIDQwODQ0LCA0MDg0NywgNDA4NDksIDQwODUyLCA0MDg1NiwgNDA4NjAsIDQwODY3LCAKKyAgICA0MDg3MSwgNDA4NzUsIDQwODc5LCA0MDg4MiwgNDA4ODcsIDQwODkyLCA0MDg5NywgNDA5MDIsIDQwOTA3LCA0MDkxMiwgCisgICAgNDA5MjAsIDQwOTI4LCA0MDkzMiwgNDA5MzYsIDQwOTM4LCA0MDk0MywgNDA5NDcsIDQwOTUxLCA0MDk1OSwgNDA5NjcsIAorICAgIDQwOTczLCA0MDk3OSwgNDA5ODgsIDQwOTk3LCA0MTAwMiwgNDEwMDcsIDQxMDE1LCA0MTAyMywgNDEwMjUsIDQxMDI3LCAKKyAgICA0MTAzMiwgNDEwMzcsIDQxMDQzLCA0MTA0OSwgNDEwNTUsIDQxMDYxLCA0MTA2NSwgNDEwNjksIDQxMDc2LCA0MTA4MywgCisgICAgNDEwODksIDQxMDk1LCA0MTEwNSwgNDExMTUsIDQxMTIzLCA0MTEzMSwgNDExMzMsIDQxMTM3LCA0MTE0MSwgNDExNDYsIAorICAgIDQxMTUxLCA0MTE1OCwgNDExNjUsIDQxMTY4LCA0MTE3MSwgNDExNzQsIDQxMTc3LCA0MTE4MCwgNDExODUsIDQxMTg5LCAKKyAgICA0MTE5NCwgNDExOTksIDQxMjAyLCA0MTIwNSwgNDEyMDgsIDQxMjExLCA0MTIxNCwgNDEyMTgsIDQxMjIxLCA0MTIyNCwgCisgICAgNDEyMjcsIDQxMjMwLCA0MTIzMiwgNDEyMzQsIDQxMjM2LCA0MTIzOCwgNDEyNDYsIDQxMjU0LCA0MTI2MCwgNDEyNjQsIAorICAgIDQxMjcwLCA0MTI4MCwgNDEyODYsIDQxMjkyLCA0MTI5OCwgNDEzMDYsIDQxMzE0LCA0MTMyNSwgNDEzMjksIDQxMzMzLCAKKyAgICA0MTMzNSwgNDEzNDEsIDQxMzQzLCA0MTM0NSwgNDEzNDcsIDQxMzQ5LCA0MTM1NSwgNDEzNTgsIDQxMzY0LCA0MTM3MCwgCisgICAgNDEzNzQsIDQxMzc4LCA0MTM4MiwgNDEzODUsIDQxMzg5LCA0MTM5MywgNDEzOTUsIDQxNDA0LCA0MTQxMywgNDE0MTgsIAorICAgIDQxNDIzLCA0MTQyOSwgNDE0MzUsIDQxNDQxLCA0MTQ0NCwgNDE0NDcsIDQxNDUwLCA0MTQ1MywgNDE0NTUsIDQxNDYwLCAKKyAgICA0MTQ2NSwgNDE0NzAsIDQxNDc2LCA0MTQ4MiwgNDE0OTAsIDQxNDk4LCA0MTUwNCwgNDE1MTAsIDQxNTE2LCA0MTUyMiwgCisgICAgNDE1MzEsIDQxNTQwLCA0MTU0OSwgNDE1NTgsIDQxNTY3LCA0MTU3NiwgNDE1ODUsIDQxNTk0LCA0MTYwMywgNDE2MTIsIAorICAgIDQxNjIwLCA0MTYzMiwgNDE2NDIsIDQxNjU3LCA0MTY2MCwgNDE2NjUsIDQxNjcxLCA0MTY3NywgNDE2ODQsIDQxNjk4LCAKKyAgICA0MTcxMywgNDE3MTksIDQxNzI1LCA0MTczMiwgNDE3MzgsIDQxNzQ2LCA0MTc1MiwgNDE3NjUsIDQxNzc5LCA0MTc4NCwgCisgICAgNDE3OTAsIDQxNzk3LCA0MTgwMCwgNDE4MDMsIDQxODA1LCA0MTgwOCwgNDE4MTEsIDQxODEzLCA0MTgxNSwgNDE4MTksIAorICAgIDQxODIyLCA0MTgyNSwgNDE4MjgsIDQxODMxLCA0MTgzNiwgNDE4NDEsIDQxODQ2LCA0MTg1MSwgNDE4NTYsIDQxODU5LCAKKyAgICA0MTg2MSwgNDE4NjMsIDQxODY1LCA0MTg2OSwgNDE4NzMsIDQxODc3LCA0MTg4MywgNDE4ODgsIDQxODkwLCA0MTg5MiwgCisgICAgNDE4OTcsIDQxOTAyLCA0MTkwNywgNDE5MTIsIDQxOTE3LCA0MTkyMiwgNDE5MjQsIDQxOTI2LCA0MTkzNSwgNDE5MzksIAorICAgIDQxOTQ3LCA0MTk1NiwgNDE5NTgsIDQxOTYzLCA0MTk2OCwgNDE5NzYsIDQxOTgwLCA0MTk4MiwgNDE5ODYsIDQxOTg4LCAKKyAgICA0MTk5MiwgNDE5OTYsIDQyMDAwLCA0MjAwMiwgNDIwMDQsIDQyMDA2LCA0MjAxMSwgNDIwMTgsIDQyMDI1LCA0MjAzMiwgCisgICAgNDIwMzksIDQyMDQ2LCA0MjA1MywgNDIwNjAsIDQyMDY3LCA0MjA3MywgNDIwNzksIDQyMDg2LCA0MjA5MywgNDIxMDAsIAorICAgIDQyMTA3LCA0MjExMywgNDIxMTksIDQyMTI2LCA0MjEzMywgNDIxNDAsIDQyMTQ4LCA0MjE1NSwgNDIxNjMsIDQyMTcwLCAKKyAgICA0MjE3OCwgNDIxODUsIDQyMTkzLCA0MjIwMSwgNDIyMDgsIDQyMjE2LCA0MjIyMywgNDIyMzEsIDQyMjM4LCA0MjI0NiwgCisgICAgNDIyNTMsIDQyMjYwLCA0MjI2NywgNDIyNzQsIDQyMjgxLCA0MjI4OSwgNDIyOTYsIDQyMzAzLCA0MjMxMCwgNDIzMTgsIAorICAgIDQyMzI1LCA0MjMzMiwgNDIzMzksIDQyMzQ2LCA0MjM1NCwgNDIzNjIsIDQyMzY5LCA0MjM3NiwgNDIzODIsIDQyMzg4LCAKKyAgICA0MjM5MywgNDIzOTksIDQyNDA2LCA0MjQxNSwgNDI0MjIsIDQyNDI5LCA0MjQzNiwgNDI0NDEsIDQyNDQ2LCA0MjQ1MSwgCisgICAgNDI0NTgsIDQyNDY1LCA0MjQ3MiwgNDI0NzksIDQyNDg0LCA0MjQ4OSwgNDI0OTgsIDQyNTAzLCA0MjUwNiwgNDI1MTQsIAorICAgIDQyNTE3LCA0MjUyMiwgNDI1MjcsIDQyNTMwLCA0MjUzMywgNDI1NDEsIDQyNTQ0LCA0MjU0OSwgNDI1NTIsIDQyNTU5LCAKKyAgICA0MjU2NCwgNDI1NzIsIDQyNTc1LCA0MjU3OCwgNDI1ODEsIDQyNTg2LCA0MjU5MSwgNDI1OTQsIDQyNTk3LCA0MjYwNSwgCisgICAgNDI2MDgsIDQyNjEzLCA0MjYyMCwgNDI2MjQsIDQyNjI4LCA0MjYzMywgNDI2MzgsIDQyNjQ0LCA0MjY0OSwgNDI2NTUsIAorICAgIDQyNjYxLCA0MjY2NiwgNDI2NzIsIDQyNjgwLCA0MjY4NiwgNDI2OTQsIDQyNzAyLCA0MjcwOCwgNDI3MTYsIDQyNzI0LCAKKyAgICA0MjczMywgNDI3NDEsIDQyNzQ3LCA0Mjc1NSwgNDI3NjQsIDQyNzcyLCA0Mjc3NiwgNDI3ODEsIDQyNzk0LCA0MjgwNywgCisgICAgNDI4MTEsIDQyODE1LCA0MjgxOSwgNDI4MjMsIDQyODMzLCA0MjgzNywgNDI4NDIsIDQyODQ3LCA0Mjg1MiwgNDI4NTcsIAorICAgIDQyODYyLCA0Mjg2NywgNDI4NzcsIDQyODg3LCA0Mjg5NSwgNDI5MDUsIDQyOTE1LCA0MjkyMywgNDI5MzMsIDQyOTQzLCAKKyAgICA0Mjk1MSwgNDI5NjEsIDQyOTcxLCA0Mjk3OSwgNDI5ODcsIDQyOTk3LCA0MzAwNywgNDMwMTAsIDQzMDEzLCA0MzAxNiwgCisgICAgNDMwMjEsIDQzMDI1LCA0MzAzMSwgNDMwMzgsIDQzMDQ1LCA0MzA1MywgNDMwNjAsIDQzMDY0LCA0MzA2OCwgNDMwNzIsIAorICAgIDQzMDc2LCA0MzA3OCwgNDMwODIsIDQzMDg2LCA0MzA5MSwgNDMwOTYsIDQzMTAzLCA0MzExMCwgNDMxMTMsIDQzMTIwLCAKKyAgICA0MzEyMiwgNDMxMjQsIDQzMTI4LCA0MzEzMiwgNDMxMzcsIDQzMTQzLCA0MzE0OSwgNDMxNTUsIDQzMTYxLCA0MzE3MCwgCisgICAgNDMxNzksIDQzMTg4LCA0MzE5MiwgNDMxOTQsIDQzMTk4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA0MzIwNSwgNDMyMDksIDQzMjE2LCA0MzIyMywgNDMyMzAsIDQzMjM3LCA0MzI0MSwgNDMyNDUsIDQzMjQ5LCA0MzI1MywgCisgICAgNDMyNTgsIDQzMjY0LCA0MzI2OSwgNDMyNzUsIDQzMjgxLCA0MzI4NywgNDMyOTMsIDQzMzAxLCA0MzMwOCwgNDMzMTUsIAorICAgIDQzMzIyLCA0MzMyOSwgNDMzMzQsIDQzMzQwLCA0MzM0OSwgNDMzNTMsIDQzMzYwLCA0MzM2NCwgNDMzNjgsIDQzMzc0LCAKKyAgICA0MzM4MCwgNDMzODYsIDQzMzkyLCA0MzM5NiwgNDM0MDAsIDQzNDAzLCA0MzQwNiwgNDM0MTAsIDQzNDE3LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA0MzQyNCwgCisgICAgNDM0MjcsIDQzNDMxLCA0MzQzNSwgNDM0NDEsIDQzNDQ3LCA0MzQ1MywgNDM0NjEsIDQzNDY4LCA0MzQ3MiwgNDM0ODAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDQzNDg1LCA0MzQ4OCwgCisgICAgNDM0OTEsIDQzNDk0LCA0MzQ5NywgNDM1MDAsIDQzNTAzLCA0MzUwNiwgNDM1MDksIDQzNTEyLCA0MzUxNiwgNDM1MjAsIAorICAgIDQzNTI0LCA0MzUyOCwgNDM1MzIsIDQzNTM2LCA0MzU0MCwgNDM1NDQsIDQzNTQ4LCA0MzU1MiwgNDM1NTYsIDQzNTU5LCAKKyAgICA0MzU2MiwgNDM1NjUsIDQzNTY4LCA0MzU3MSwgNDM1NzQsIDQzNTc3LCA0MzU4MCwgNDM1ODMsIDQzNTg3LCA0MzU5MSwgCisgICAgNDM1OTUsIDQzNTk5LCA0MzYwMywgNDM2MDcsIDQzNjExLCA0MzYxNSwgNDM2MTksIDQzNjIzLCA0MzYyNywgNDM2MzMsIAorICAgIDQzNjM5LCA0MzY0NSwgNDM2NTIsIDQzNjU5LCA0MzY2NiwgNDM2NzMsIDQzNjgwLCA0MzY4NywgNDM2OTQsIDQzNzAxLCAKKyAgICA0MzcwOCwgNDM3MTUsIDQzNzIyLCA0MzcyOSwgNDM3MzYsIDQzNzQzLCA0Mzc1MCwgNDM3NTcsIDQzNzY0LCA0Mzc2OSwgCisgICAgNDM3NzUsIDQzNzgxLCA0Mzc4NywgNDM3OTIsIDQzNzk4LCA0MzgwNCwgNDM4MTAsIDQzODE1LCA0MzgyMSwgNDM4MjcsIAorICAgIDQzODMyLCA0MzgzNywgNDM4NDIsIDQzODQ3LCA0Mzg1MywgNDM4NTksIDQzODY0LCA0Mzg2OSwgNDM4NzUsIDQzODgwLCAKKyAgICA0Mzg4NiwgNDM4OTIsIDQzODk4LCA0MzkwNCwgNDM5MTAsIDQzOTE1LCA0MzkyMSwgNDM5MjcsIDQzOTMzLCA0MzkzOCwgCisgICAgNDM5NDQsIDQzOTUwLCA0Mzk1NiwgNDM5NjEsIDQzOTY3LCA0Mzk3MywgNDM5NzgsIDQzOTgzLCA0Mzk4OCwgNDM5OTMsIAorICAgIDQzOTk5LCA0NDAwNSwgNDQwMTAsIDQ0MDE1LCA0NDAyMSwgNDQwMjYsIDQ0MDMyLCA0NDAzOCwgNDQwNDQsIDQ0MDUwLCAKKyAgICA0NDA1NiwgNDQwNjEsIDQ0MDY3LCA0NDA3MywgNDQwNzksIDQ0MDg0LCA0NDA5MCwgNDQwOTYsIDQ0MTAyLCA0NDEwNywgCisgICAgNDQxMTMsIDQ0MTE5LCA0NDEyNCwgNDQxMjksIDQ0MTM0LCA0NDEzOSwgNDQxNDUsIDQ0MTUxLCA0NDE1NiwgNDQxNjEsIAorICAgIDQ0MTY3LCA0NDE3MiwgNDQxNzgsIDQ0MTg0LCA0NDE5MCwgNDQxOTYsIDQ0MjAyLCA0NDIwNiwgNDQyMTEsIDQ0MjE2LCAKKyAgICA0NDIyMSwgNDQyMjYsIDQ0MjMxLCA0NDIzNiwgNDQyNDEsIDQ0MjQ2LCA0NDI1MSwgNDQyNTYsIDQ0MjYwLCA0NDI2NCwgCisgICAgNDQyNjgsIDQ0MjcyLCA0NDI3NiwgNDQyODAsIDQ0Mjg0LCA0NDI4OCwgNDQyOTIsIDQ0Mjk3LCA0NDMwMiwgNDQzMDcsIAorICAgIDQ0MzEyLCA0NDMxNywgNDQzMjIsIDQ0MzMxLCA0NDM0MCwgNDQzNDksIDQ0MzU4LCA0NDM2NywgNDQzNzYsIDQ0Mzg1LCAKKyAgICA0NDM5NCwgNDQ0MDEsIDQ0NDA5LCA0NDQxNywgNDQ0MjQsIDQ0NDMxLCA0NDQzOSwgNDQ0NDcsIDQ0NDU0LCA0NDQ2MSwgCisgICAgNDQ0NjksIDQ0NDc3LCA0NDQ4NCwgNDQ0OTEsIDQ0NDk5LCA0NDUwNywgNDQ1MTQsIDQ0NTIxLCA0NDUyOSwgNDQ1MzgsIAorICAgIDQ0NTQ3LCA0NDU1NSwgNDQ1NjQsIDQ0NTczLCA0NDU4MCwgNDQ1ODcsIDQ0NTk1LCA0NDYwNCwgNDQ2MTMsIDQ0NjIxLCAKKyAgICA0NDYzMCwgNDQ2MzksIDQ0NjQ2LCA0NDY1MywgNDQ2NjIsIDQ0NjcxLCA0NDY3OSwgNDQ2ODcsIDQ0Njk2LCA0NDcwNSwgCisgICAgNDQ3MTIsIDQ0NzE5LCA0NDcyOCwgNDQ3MzcsIDQ0NzQ1LCA0NDc1MywgNDQ3NjIsIDQ0NzcxLCA0NDc3OCwgNDQ3ODUsIAorICAgIDQ0Nzk0LCA0NDgwMywgNDQ4MTEsIDQ0ODIwLCA0NDgyOSwgNDQ4MzcsIDQ0ODQ3LCA0NDg1NywgNDQ4NjcsIDQ0ODc3LCAKKyAgICA0NDg4NiwgNDQ4OTUsIDQ0OTA0LCA0NDkxMywgNDQ5MjAsIDQ0OTI4LCA0NDkzNiwgNDQ5NDQsIDQ0OTUyLCA0NDk1NywgCisgICAgNDQ5NjIsIDQ0OTcxLCA0NDk3OSwgNDQ5ODYsIDQ0OTk1LCA0NTAwMywgNDUwMTAsIDQ1MDE5LCA0NTAyNywgNDUwMzQsIAorICAgIDQ1MDQzLCA0NTA1MSwgNDUwNTgsIDQ1MDY3LCA0NTA3NSwgNDUwODIsIDQ1MDkxLCA0NTA5OSwgNDUxMDYsIDQ1MTE1LCAKKyAgICA0NTEyMywgNDUxMzAsIDQ1MTM5LCA0NTE0NywgNDUxNTQsIDQ1MTYzLCA0NTE3MSwgNDUxNzgsIDQ1MTg3LCA0NTE5NiwgCisgICAgNDUyMDUsIDQ1MjE0LCA0NTIyOCwgNDUyNDIsIDQ1MjQ5LCA0NTI1NCwgNDUyNTksIDQ1MjY0LCA0NTI2OSwgNDUyNzQsIAorICAgIDQ1Mjc5LCA0NTI4NCwgNDUyODksIDQ1Mjk3LCA0NTMwNSwgNDUzMTMsIDQ1MzIxLCA0NTMyNiwgNDUzMzMsIDQ1MzQwLCAKKyAgICA0NTM0NywgNDUzNTIsIDQ1MzYwLCA0NTM2NywgNDUzNzUsIDQ1Mzc5LCA0NTM4NiwgNDUzOTIsIDQ1Mzk5LCA0NTQwMywgCisgICAgNDU0MDksIDQ1NDE1LCA0NTQyMSwgNDU0MjUsIDQ1NDI4LCA0NTQzMiwgNDU0MzYsIDQ1NDQzLCA0NTQ0OSwgNDU0NTUsIAorICAgIDQ1NDYxLCA0NTQ2NywgNDU0ODEsIDQ1NDkxLCA0NTUwNSwgNDU1MTksIDQ1NTI1LCA0NTUzNSwgNDU1NDksIDQ1NTUyLCAKKyAgICA0NTU1NSwgNDU1NjIsIDQ1NTcwLCA0NTU3NSwgNDU1ODAsIDQ1NTg4LCA0NTYwMCwgNDU2MTIsIDQ1NjIwLCA0NTYyNCwgCisgICAgNDU2MjgsIDQ1NjMxLCA0NTYzNCwgNDU2MzgsIDQ1NjQyLCA0NTY0NSwgNDU2NDgsIDQ1NjUzLCA0NTY1OCwgNDU2NjQsIAorICAgIDQ1NjcwLCA0NTY3NSwgNDU2ODAsIDQ1Njg2LCA0NTY5MiwgNDU2OTcsIDQ1NzAyLCA0NTcwNywgNDU3MTIsIDQ1NzE4LCAKKyAgICA0NTcyNCwgNDU3MjksIDQ1NzM0LCA0NTc0MCwgNDU3NDYsIDQ1NzUxLCA0NTc1NiwgNDU3NTksIDQ1NzYyLCA0NTc3MSwgCisgICAgNDU3NzMsIDQ1Nzc1LCA0NTc3OCwgNDU3ODIsIDQ1Nzg4LCA0NTc5MCwgNDU3OTMsIDQ1ODAwLCA0NTgwNywgNDU4MTUsIAorICAgIDQ1ODIzLCA0NTgzMywgNDU4NDcsIDQ1ODUyLCA0NTg1NywgNDU4NjEsIDQ1ODY2LCA0NTg3NCwgNDU4ODIsIDQ1ODkxLCAKKyAgICA0NTkwMCwgNDU5MDksIDQ1OTE4LCA0NTkyMywgNDU5MjgsIDQ1OTM0LCA0NTk0MCwgNDU5NDYsIDQ1OTUyLCA0NTk1NSwgCisgICAgNDU5NjEsIDQ1OTY3LCA0NTk3NywgNDU5ODcsIDQ1OTk1LCA0NjAwMywgNDYwMTIsIDQ2MDIxLCA0NjAyNSwgNDYwMzMsIAorICAgIDQ2MDQxLCA0NjA0OSwgNDYwNTcsIDQ2MDY2LCA0NjA3NSwgNDYwODQsIDQ2MDkzLCA0NjA5OCwgNDYxMDMsIDQ2MTA4LCAKKyAgICA0NjExMywgNDYxMTgsIDQ2MTI0LCA0NjEzMCwgNDYxMzUsIDQ2MTQxLCA0NjE0MywgNDYxNDUsIDQ2MTQ3LCA0NjE0OSwgCisgICAgNDYxNTIsIDQ2MTU1LCA0NjE1NywgNDYxNTksIDQ2MTYxLCA0NjE2NSwgNDYxNjksIDQ2MTcxLCA0NjE3MywgNDYxNzYsIAorICAgIDQ2MTc5LCA0NjE4MywgNDYxODksIDQ2MTk1LCA0NjE5NywgNDYyMDQsIDQ2MjA4LCA0NjIxMywgNDYyMTgsIDQ2MjIwLCAKKyAgICA0NjIzMCwgNDYyMzYsIDQ2MjQyLCA0NjI0OCwgNDYyNTQsIDQ2MjYwLCA0NjI2NiwgNDYyNzEsIDQ2Mjc0LCA0NjI3NywgCisgICAgNDYyODAsIDQ2MjgyLCA0NjI4NCwgNDYyODgsIDQ2MjkyLCA0NjI5NywgNDYzMDIsIDQ2MzA3LCA0NjMxMCwgNDYzMTQsIAorICAgIDQ2MzE5LCA0NjMyMiwgNDYzMjYsIDQ2MzMxLCA0NjMzNiwgNDYzNDEsIDQ2MzQ2LCA0NjM1MSwgNDYzNTYsIDQ2MzYxLCAKKyAgICA0NjM2NiwgNDYzNzEsIDQ2Mzc2LCA0NjM4MSwgNDYzODYsIDQ2MzkyLCA0NjM5OCwgNDY0MDQsIDQ2NDA2LCA0NjQwOSwgCisgICAgNDY0MTEsIDQ2NDE0LCA0NjQxNiwgNDY0MTgsIDQ2NDIwLCA0NjQyMiwgNDY0MjQsIDQ2NDI2LCA0NjQyOCwgNDY0MzAsIAorICAgIDQ2NDMyLCA0NjQzNCwgNDY0MzYsIDQ2NDM4LCA0NjQ0MCwgNDY0NDIsIDQ2NDQ0LCA0NjQ0NiwgNDY0NDgsIDQ2NDUzLCAKKyAgICA0NjQ1OCwgNDY0NjMsIDQ2NDY4LCA0NjQ3MywgNDY0NzgsIDQ2NDgzLCA0NjQ4OCwgNDY0OTMsIDQ2NDk4LCA0NjUwMywgCisgICAgNDY1MDgsIDQ2NTEzLCA0NjUxOCwgNDY1MjMsIDQ2NTI4LCA0NjUzMywgNDY1MzgsIDQ2NTQzLCA0NjU0OCwgNDY1NTIsIAorICAgIDQ2NTU2LCA0NjU2MCwgNDY1NjYsIDQ2NTcyLCA0NjU3NywgNDY1ODIsIDQ2NTg3LCA0NjU5MiwgNDY1OTcsIDQ2NjAyLCAKKyAgICA0NjYxMCwgNDY2MTgsIDQ2NjI2LCA0NjYzNCwgNDY2NDIsIDQ2NjUwLCA0NjY1OCwgNDY2NjYsIDQ2NjcyLCA0NjY3NywgCisgICAgNDY2ODIsIDQ2Njg3LCA0NjY5MCwgNDY2OTQsIDQ2Njk4LCA0NjcwMiwgNDY3MDYsIDQ2NzEwLCA0NjcxNCwgNDY3MjEsIAorICAgIDQ2NzI4LCA0NjczNiwgNDY3NDQsIDQ2NzQ5LCA0Njc1NCwgNDY3NjEsIDQ2NzY4LCA0Njc3NSwgNDY3ODIsIDQ2Nzg1LCAKKyAgICA0Njc4OCwgNDY3OTMsIDQ2Nzk1LCA0Njc5OSwgNDY4MDQsIDQ2ODA2LCA0NjgwOCwgNDY4MTAsIDQ2ODEyLCA0NjgxNywgCisgICAgNDY4MjAsIDQ2ODIyLCA0NjgyNywgNDY4MzQsIDQ2ODQxLCA0Njg0NCwgNDY4NDgsIDQ2ODUzLCA0Njg1OCwgNDY4NjYsIAorICAgIDQ2ODcyLCA0Njg3OCwgNDY4OTAsIDQ2ODk3LCA0NjkwNCwgNDY5MDksIDQ2OTE0LCA0NjkyMCwgNDY5MjMsIDQ2OTI2LCAKKyAgICA0NjkzMSwgNDY5MzMsIDQ2OTM3LCA0NjkzOSwgNDY5NDEsIDQ2OTQzLCA0Njk0NSwgNDY5NDcsIDQ2OTQ5LCA0Njk1NCwgCisgICAgNDY5NTYsIDQ2OTU4LCA0Njk2MCwgNDY5NjIsIDQ2OTY2LCA0Njk2OCwgNDY5NzEsIDQ2OTc2LCA0Njk4MSwgNDY5ODYsIAorICAgIDQ2OTkxLCA0Njk5NywgNDcwMDMsIDQ3MDA1LCA0NzAwOCwgNDcwMTUsIDQ3MDIyLCA0NzAyOSwgNDcwMzYsIDQ3MDQwLCAKKyAgICA0NzA0NCwgNDcwNDYsIDQ3MDQ4LCA0NzA1MiwgNDcwNTgsIDQ3MDYzLCA0NzA2NSwgNDcwNjksIDQ3MDc4LCA0NzA4NiwgCisgICAgNDcwOTQsIDQ3MTAwLCA0NzEwNiwgNDcxMTEsIDQ3MTE3LCA0NzEyMiwgNDcxMjUsIDQ3MTM5LCA0NzE0MiwgNDcxNDcsIAorICAgIDQ3MTUyLCA0NzE1OCwgNDcxNjgsIDQ3MTcwLCA0NzE3NiwgNDcxODIsIDQ3MTg2LCA0NzE5MywgNDcxOTcsIDQ3MTk5LCAKKyAgICA0NzIwMSwgNDcyMDUsIDQ3MjExLCA0NzIxNiwgNDcyMjIsIDQ3MjI0LCA0NzIzMCwgNDcyMzIsIDQ3MjM4LCA0NzI0MCwgCisgICAgNDcyNDIsIDQ3MjQ3LCA0NzI0OSwgNDcyNTMsIDQ3MjU4LCA0NzI2MCwgNDcyNjUsIDQ3MjcwLCA0NzI3NCwgNDcyODEsIDAsIAorICAgIDQ3MjkxLCA0NzI5NywgNDczMDAsIDQ3MzA2LCA0NzMwOSwgNDczMTQsIDQ3MzE5LCA0NzMyMywgNDczMjUsIDQ3MzI3LCAKKyAgICA0NzMzMSwgNDczMzUsIDQ3MzM5LCA0NzM0MywgNDczNDgsIDQ3MzUwLCA0NzM1NSwgNDczNTgsIDQ3MzYxLCA0NzM2NCwgCisgICAgNDczNjgsIDQ3MzcyLCA0NzM3NywgNDczODEsIDQ3Mzg2LCA0NzM5MSwgNDczOTUsIDQ3NDAwLCA0NzQwNiwgNDc0MDksIAorICAgIDQ3NDE1LCA0NzQyMCwgNDc0MjQsIDQ3NDI5LCA0NzQzNSwgNDc0NDEsIDQ3NDQ4LCA0NzQ1NCwgNDc0NjEsIDQ3NDY4LCAKKyAgICA0NzQ3MCwgNDc0NzcsIDQ3NDgxLCA0NzQ4NywgNDc0OTMsIDQ3NDk4LCA0NzUwNCwgNDc1MDgsIDQ3NTEzLCA0NzUxNiwgCisgICAgNDc1MjEsIDQ3NTI3LCA0NzUzNCwgNDc1NDIsIDQ3NTQ5LCA0NzU1OCwgNDc1NjgsIDQ3NTc1LCA0NzU4MSwgNDc1ODUsIAorICAgIDQ3NTkyLCA0NzU5NywgNDc2MDYsIDQ3NjA5LCA0NzYxMiwgNDc2MjEsIDQ3NjMxLCA0NzYzOCwgNDc2NDAsIDQ3NjQ2LCAKKyAgICA0NzY1MSwgNDc2NTMsIDQ3NjU2LCA0NzY2MCwgNDc2NjgsIDQ3Njc3LCA0NzY4MCwgNDc2ODUsIDQ3NjkwLCA0NzY5OCwgCisgICAgNDc3MDYsIDQ3NzE0LCA0NzcyMiwgNDc3MjgsIDQ3NzM0LCA0Nzc0MCwgNDc3NDgsIDQ3NzUzLCA0Nzc1NiwgNDc3NjAsIAorICAgIDQ3NzYzLCA0Nzc3NSwgNDc3ODUsIDQ3Nzk2LCA0NzgwNSwgNDc4MTYsIDQ3ODI2LCA0NzgzNSwgNDc4NDEsIDQ3ODQ5LCAKKyAgICA0Nzg1MywgNDc4NjEsIDQ3ODY1LCA0Nzg3MywgNDc4ODAsIDQ3ODg3LCA0Nzg5NiwgNDc5MDUsIDQ3OTE1LCA0NzkyNSwgCisgICAgNDc5MzUsIDQ3OTQ1LCA0Nzk1NCwgNDc5NjMsIDQ3OTczLCA0Nzk4MywgNDc5OTIsIDQ4MDAxLCA0ODAwNywgNDgwMTMsIAorICAgIDQ4MDE5LCA0ODAyNSwgNDgwMzEsIDQ4MDM3LCA0ODA0MywgNDgwNDksIDQ4MDU1LCA0ODA2MiwgNDgwNjgsIDQ4MDc0LCAKKyAgICA0ODA4MCwgNDgwODYsIDQ4MDkyLCA0ODA5OCwgNDgxMDQsIDQ4MTEwLCA0ODExNiwgNDgxMjMsIDQ4MTMwLCA0ODEzNywgCisgICAgNDgxNDQsIDQ4MTUxLCA0ODE1OCwgNDgxNjUsIDQ4MTcyLCA0ODE3OSwgNDgxODYsIDQ4MTk0LCA0ODE5OSwgNDgyMDIsIAorICAgIDQ4MjA2LCA0ODIxMCwgNDgyMTYsIDQ4MjE5LCA0ODIyNSwgNDgyMzEsIDQ4MjM2LCA0ODI0MCwgNDgyNDUsIDQ4MjUxLCAKKyAgICA0ODI1OCwgNDgyNjEsIDQ4MjY4LCA0ODI3NSwgNDgyNzksIDQ4Mjg4LCA0ODI5NywgNDgzMDIsIDQ4MzA4LCA0ODMxMywgCisgICAgNDgzMTgsIDQ4MzI1LCA0ODMzMiwgNDgzNDAsIDQ4MzQ4LCA0ODM1NywgNDgzNjEsIDQ4MzcwLCA0ODM3NSwgNDgzNzksIAorICAgIDQ4Mzg2LCA0ODM5MCwgNDgzOTcsIDQ4NDA1LCA0ODQxMCwgNDg0MTgsIDQ4NDIyLCA0ODQyNywgNDg0MzEsIDQ4NDM2LCAKKyAgICA0ODQ0MCwgNDg0NDUsIDQ4NDUwLCA0ODQ1OSwgNDg0NjEsIDQ4NDY0LCA0ODQ2NywgNDg0NzQsIDQ4NDgxLCA0ODQ4NiwgCisgICAgNDg0OTQsIDQ4NTAwLCAwLCA0ODUwNiwgMCwgNDg1MDksIDQ4NTE0LCA0ODUxOSwgNDg1MjcsIDQ4NTMxLCA0ODUzOCwgCisgICAgNDg1NDYsIDQ4NTU0LCA0ODU1OSwgNDg1NjQsIDQ4NTcwLCA0ODU3NSwgNDg1ODAsIDQ4NTg2LCA0ODU5MSwgNDg1OTQsIAorICAgIDQ4NTk4LCA0ODYwMiwgNDg2MDksIDQ4NjE4LCA0ODYyMywgNDg2MzIsIDQ4NjQxLCA0ODY0NywgNDg2NTMsIDQ4NjU4LCAKKyAgICA0ODY2MywgNDg2NjgsIDQ4NjczLCA0ODY3OSwgNDg2ODUsIDQ4NjkzLCA0ODcwMSwgNDg3MDcsIDQ4NzEzLCA0ODcxOCwgCisgICAgNDg3MjMsIDQ4NzMwLCA0ODczNywgNDg3NDMsIDQ4NzQ2LCA0ODc0OSwgNDg3NTMsIDQ4NzU3LCA0ODc2MSwgNDg3NjYsIAorICAgIDQ4NzcyLCA0ODc3OCwgNDg3ODUsIDQ4NzkyLCA0ODc5NywgNDg4MDEsIDQ4ODA1LCA0ODgwOSwgNDg4MTMsIDQ4ODE3LCAKKyAgICA0ODgyMSwgNDg4MjUsIDQ4ODI5LCA0ODgzMywgNDg4MzcsIDQ4ODQxLCA0ODg0NSwgNDg4NDksIDQ4ODUzLCA0ODg1NywgCisgICAgNDg4NjEsIDQ4ODY1LCA0ODg2OSwgNDg4NzMsIDQ4ODc3LCA0ODg4MSwgNDg4ODUsIDQ4ODg5LCA0ODg5MywgNDg4OTcsIAorICAgIDQ4OTAxLCA0ODkwNSwgNDg5MDksIDQ4OTEzLCA0ODkxNywgNDg5MjEsIDQ4OTI1LCA0ODkyOSwgNDg5MzMsIDQ4OTM3LCAKKyAgICA0ODk0MSwgNDg5NDUsIDQ4OTQ5LCA0ODk1MywgNDg5NTcsIDQ4OTYxLCA0ODk2NSwgNDg5NjksIDQ4OTczLCA0ODk3NywgCisgICAgNDg5ODEsIDQ4OTg1LCA0ODk4OSwgNDg5OTMsIDQ4OTk3LCA0OTAwMSwgNDkwMDUsIDQ5MDA5LCA0OTAxMywgNDkwMTcsIAorICAgIDQ5MDIxLCA0OTAyNSwgNDkwMjksIDQ5MDMzLCA0OTAzNywgNDkwNDEsIDQ5MDQ1LCA0OTA0OSwgNDkwNTMsIDQ5MDU3LCAKKyAgICA0OTA2MSwgNDkwNjUsIDQ5MDY5LCA0OTA3MywgNDkwNzcsIDQ5MDgxLCA0OTA4NSwgNDkwODksIDQ5MDkzLCA0OTA5NywgCisgICAgNDkxMDEsIDQ5MTA1LCA0OTEwOSwgNDkxMTMsIDQ5MTE3LCA0OTEyMSwgNDkxMjUsIDQ5MTI5LCA0OTEzMywgNDkxMzcsIAorICAgIDQ5MTQxLCA0OTE0NSwgNDkxNDksIDQ5MTUzLCA0OTE1NywgNDkxNjEsIDQ5MTY1LCA0OTE2OSwgNDkxNzMsIDQ5MTc3LCAKKyAgICA0OTE4MSwgNDkxODUsIDQ5MTg5LCA0OTE5MywgNDkxOTcsIDQ5MjAxLCA0OTIwNSwgNDkyMDksIDQ5MjEzLCA0OTIxNywgCisgICAgNDkyMjEsIDQ5MjI1LCA0OTIyOSwgNDkyMzMsIDQ5MjM3LCA0OTI0MSwgNDkyNDUsIDQ5MjQ5LCA0OTI1MywgNDkyNTcsIAorICAgIDQ5MjYxLCA0OTI2NSwgNDkyNjksIDQ5MjczLCA0OTI3NywgNDkyODEsIDQ5Mjg1LCA0OTI4OSwgNDkyOTMsIDQ5Mjk3LCAKKyAgICA0OTMwMSwgNDkzMDUsIDQ5MzA5LCA0OTMxMywgNDkzMTcsIDQ5MzIxLCA0OTMyNSwgNDkzMjksIDQ5MzMzLCA0OTMzNywgCisgICAgNDkzNDEsIDQ5MzQ1LCA0OTM0OSwgNDkzNTMsIDQ5MzU3LCA0OTM2MSwgNDkzNjUsIDQ5MzY5LCA0OTM3MywgNDkzNzcsIAorICAgIDQ5MzgxLCA0OTM4NSwgNDkzODksIDQ5MzkzLCA0OTM5NywgNDk0MDEsIDQ5NDA1LCA0OTQwOSwgNDk0MTMsIDQ5NDE3LCAKKyAgICA0OTQyMSwgNDk0MjUsIDQ5NDI5LCA0OTQzMywgNDk0MzcsIDQ5NDQxLCA0OTQ0NSwgNDk0NDksIDQ5NDUzLCA0OTQ1NywgCisgICAgNDk0NjEsIDQ5NDY1LCA0OTQ2OSwgNDk0NzMsIDQ5NDc3LCA0OTQ4MSwgNDk0ODUsIDQ5NDg5LCA0OTQ5MywgNDk0OTcsIAorICAgIDQ5NTAxLCA0OTUwNSwgNDk1MDksIDQ5NTEzLCA0OTUxNywgNDk1MjEsIDQ5NTI1LCA0OTUyOSwgNDk1MzMsIDQ5NTM3LCAKKyAgICA0OTU0MSwgNDk1NDUsIDQ5NTQ5LCA0OTU1MywgNDk1NTcsIDQ5NTYxLCA0OTU2NSwgNDk1NjksIDQ5NTczLCA0OTU3NywgCisgICAgNDk1ODEsIDQ5NTg1LCA0OTU4OSwgNDk1OTMsIDQ5NTk3LCA0OTYwMSwgNDk2MDUsIDQ5NjA5LCA0OTYxMywgNDk2MTcsIAorICAgIDQ5NjIxLCA0OTYyNSwgNDk2MjksIDQ5NjMzLCA0OTYzNywgNDk2NDEsIDQ5NjQ1LCA0OTY0OSwgNDk2NTMsIDQ5NjU3LCAKKyAgICA0OTY2MSwgNDk2NjUsIDQ5NjY5LCA0OTY3MywgNDk2NzcsIDQ5NjgxLCA0OTY4NSwgNDk2ODksIDQ5NjkzLCA0OTY5NywgCisgICAgNDk3MDEsIDQ5NzA1LCA0OTcwOSwgNDk3MTMsIDQ5NzE3LCA0OTcyMSwgNDk3MjUsIDQ5NzI5LCA0OTczMywgNDk3MzcsIAorICAgIDQ5NzQxLCA0OTc0NSwgNDk3NDksIDQ5NzUzLCA0OTc1NywgNDk3NjEsIDQ5NzY1LCA0OTc2OSwgNDk3NzMsIDQ5Nzc3LCAKKyAgICA0OTc4MSwgNDk3ODUsIDQ5Nzg5LCA0OTc5MywgNDk3OTcsIDQ5ODAxLCA0OTgwNSwgNDk4MDksIDQ5ODEzLCA0OTgxNywgCisgICAgNDk4MjEsIDQ5ODI4LCA0OTgzNiwgNDk4NDIsIDQ5ODQ4LCA0OTg1NSwgNDk4NjIsIDQ5ODY4LCA0OTg3NCwgNDk4ODAsIAorICAgIDQ5ODg2LCA0OTg5MSwgNDk4OTYsIDQ5OTAxLCA0OTkwNiwgNDk5MTIsIDQ5OTE4LCA0OTkyNiwgNDk5MzMsIDQ5OTM5LCAKKyAgICA0OTk0NSwgNDk5NTMsIDQ5OTYyLCA0OTk2OSwgNDk5NzksIDQ5OTkwLCA0OTk5MywgNDk5OTYsIDUwMDAwLCA1MDAwNCwgCisgICAgNTAwMTEsIDUwMDE4LCA1MDAyOSwgNTAwNDAsIDUwMDUwLCA1MDA2MCwgNTAwNjcsIDUwMDc0LCA1MDA4MSwgNTAwODgsIAorICAgIDUwMDk5LCA1MDExMCwgNTAxMjEsIDUwMTMyLCA1MDE0MiwgNTAxNTIsIDUwMTY0LCA1MDE3NiwgNTAxODcsIDUwMTk4LCAKKyAgICA1MDIxMCwgNTAyMjIsIDUwMjMxLCA1MDI0MSwgNTAyNTEsIDUwMjYyLCA1MDI3MywgNTAyODAsIDUwMjg3LCA1MDI5NCwgCisgICAgNTAzMDEsIDUwMzExLCA1MDMyMSwgNTAzMjksIDUwMzM3LCA1MDM0NCwgNTAzNTEsIDUwMzU4LCA1MDM2NSwgNTAzNzIsIAorICAgIDUwMzc3LCA1MDM4MiwgNTAzODgsIDUwMzk2LCA1MDQwNiwgNTA0MTYsIDUwNDI2LCA1MDQzNiwgNTA0NDYsIDUwNDU2LCAKKyAgICA1MDQ2NiwgNTA0NzYsIDUwNDg2LCA1MDQ5NiwgNTA1MDYsIDUwNTE3LCA1MDUyOCwgNTA1MzgsIDUwNTQ4LCA1MDU1OSwgCisgICAgNTA1NzAsIDUwNTgwLCA1MDU5MCwgNTA2MDEsIDUwNjEyLCA1MDYyMiwgNTA2MzIsIDUwNjQzLCA1MDY1NCwgNTA2NzAsIAorICAgIDUwNjg5LCA1MDcwNSwgNTA3MjQsIDUwNzQwLCA1MDc1NiwgNTA3NzIsIDUwNzg4LCA1MDc5OSwgNTA4MTEsIDUwODIyLCAKKyAgICA1MDgzNCwgNTA4NTMsIDUwODcyLCA1MDg4MCwgNTA4ODYsIDUwODkzLCA1MDkwMCwgNTA5MDcsIDUwOTE0LCA1MDkxOSwgCisgICAgNTA5MjUsIDUwOTMwLCA1MDkzNSwgNTA5NDEsIDUwOTQ2LCA1MDk1MSwgNTA5NTYsIDUwOTYxLCA1MDk2NiwgNTA5NzMsIAorICAgIDUwOTc4LCA1MDk4NSwgNTA5OTAsIDUwOTk1LCA1MDk5OSwgNTEwMDMsIDUxMDEwLCA1MTAxNywgNTEwMjQsIDUxMDMxLCAKKyAgICA1MTAzOCwgNTEwNDUsIDUxMDU4LCA1MTA3MSwgNTEwODQsIDUxMDk3LCA1MTEwNSwgNTExMTMsIDUxMTE5LCA1MTEyNSwgCisgICAgNTExMzIsIDUxMTM5LCA1MTE0NiwgNTExNTMsIDUxMTU3LCA1MTE2MiwgNTExNzAsIDUxMTc4LCA1MTE4NiwgNTExOTMsIAorICAgIDUxMTk3LCA1MTIwNSwgNTEyMTMsIDUxMjE3LCA1MTIyMSwgNTEyMjYsIDUxMjMzLCA1MTI0MSwgNTEyNDksIDUxMjY4LCAKKyAgICA1MTI4NywgNTEzMDYsIDUxMzI1LCA1MTM0NCwgNTEzNjMsIDUxMzgyLCA1MTQwMSwgNTE0MDcsIDUxNDE0LCA1MTQyMywgCisgICAgNTE0MzEsIDUxNDM5LCA1MTQ0NCwgNTE0NDcsIDUxNDUwLCA1MTQ1NSwgNTE0NTgsIDUxNDc3LCA1MTQ4NCwgNTE0OTAsIAorICAgIDUxNDk2LCA1MTUwMCwgNTE1MDMsIDUxNTA2LCA1MTUwOSwgNTE1MjEsIDUxNTM0LCA1MTU0MSwgNTE1NDgsIDUxNTUxLCAKKyAgICA1MTU1NSwgNTE1NTgsIDUxNTYzLCA1MTU2OCwgNTE1NzMsIDUxNTc5LCA1MTU4OCwgNTE1OTUsIDUxNjAyLCA1MTYxMCwgCisgICAgNTE2MTcsIDUxNjI0LCA1MTYyNywgNTE2MzMsIDUxNjM5LCA1MTY0MiwgNTE2NDUsIDUxNjUwLCA1MTY1NSwgNTE2NjEsIAorICAgIDUxNjY3LCA1MTY3MSwgNTE2NzYsIDUxNjgzLCA1MTY4NywgNTE2OTMsIDUxNjk3LCA1MTcwMSwgNTE3MDksIDUxNzIxLCAKKyAgICA1MTczMCwgNTE3MzQsIDUxNzM2LCA1MTc0NSwgNTE3NTQsIDUxNzYwLCA1MTc2MywgNTE3NjksIDUxNzc1LCA1MTc4MCwgCisgICAgNTE3ODUsIDUxNzkwLCA1MTc5NSwgNTE4MDAsIDUxODA1LCA1MTgwNywgNTE4MTMsIDUxODE4LCA1MTgyNSwgNTE4MjksIAorICAgIDUxODM1LCA1MTgzOCwgNTE4NDIsIDUxODQ5LCA1MTg1NiwgNTE4NTgsIDUxODYwLCA1MTg2NiwgNTE4NzIsIDUxODc4LCAKKyAgICA1MTg4NywgNTE4OTYsIDUxOTAzLCA1MTkxMCwgNTE5MTYsIDUxOTIyLCA1MTkyNywgNTE5MzIsIDUxOTM3LCA1MTk0MywgCisgICAgNTE5NDksIDUxOTU0LCA1MTk2MSwgNTE5NjUsIDUxOTY5LCA1MTk4MiwgNTE5OTUsIDUyMDA3LCA1MjAxNiwgNTIwMjIsIAorICAgIDUyMDI5LCA1MjAzNCwgNTIwMzksIDUyMDQ0LCA1MjA0OSwgNTIwNTQsIDUyMDU2LCA1MjA2MywgNTIwNzAsIDUyMDc3LCAKKyAgICA1MjA4NCwgNTIwOTEsIDUyMDk5LCA1MjEwNSwgNTIxMTAsIDUyMTE2LCA1MjEyMiwgNTIxMjgsIDUyMTM1LCA1MjE0MSwgCisgICAgNTIxNDksIDUyMTU3LCA1MjE2NSwgNTIxNzMsIDUyMTgwLCA1MjE4NiwgNTIxOTIsIDUyMjAxLCA1MjIwNSwgNTIyMTQsIAorICAgIDUyMjIzLCA1MjIzMiwgNTIyNDAsIDUyMjQ0LCA1MjI1MCwgNTIyNTcsIDUyMjY0LCA1MjI2OCwgNTIyNzQsIDUyMjgxLCAKKyAgICA1MjI4NiwgNTIyOTEsIDUyMjk3LCA1MjMwMiwgNTIzMDcsIDUyMzE0LCA1MjMyMSwgNTIzMjYsIDUyMzMxLCA1MjMzOSwgCisgICAgNTIzNDcsIDUyMzU3LCA1MjM2NywgNTIzNzQsIDUyMzgxLCA1MjM4NSwgNTIzODksIDUyNDAxLCA1MjQwNywgNTI0MTMsIAorICAgIDUyNDE4LCA1MjQyMywgNTI0MzAsIDUyNDM3LCA1MjQ0MywgNTI0NDksIDUyNDU4LCA1MjQ2NiwgNTI0NzQsIDUyNDgxLCAKKyAgICA1MjQ4OCwgNTI0OTUsIDUyNTAxLCA1MjUwOCwgNTI1MTQsIDUyNTIxLCA1MjUyOCwgNTI1MzUsIDUyNTQyLCA1MjU0OCwgCisgICAgNTI1NTMsIDUyNTYyLCA1MjU3MiwgNTI1NzksIDUyNTg4LCA1MjU5NCwgNTI1OTksIDUyNjA0LCA1MjYxNCwgNTI2MjAsIAorICAgIDUyNjI2LCA1MjYzMiwgNTI2NDAsIDUyNjQ1LCA1MjY1MiwgNTI2NTksIDUyNjcwLCA1MjY3NywgNTI2ODQsIDUyNjkxLCAKKyAgICA1MjY5OCwgNTI3MDUsIDUyNzEyLCA1MjcxOSwgNTI3MzEsIDUyNzQzLCA1Mjc1NCwgNTI3NjUsIDUyNzc4LCA1Mjc5MSwgCisgICAgNTI3OTYsIDUyODAxLCA1MjgxMCwgNTI4MTksIDUyODI2LCA1MjgzMywgNTI4NDIsIDUyODUxLCA1Mjg1OSwgNTI4NjcsIAorICAgIDUyODc1LCA1Mjg4MywgNTI4OTMsIDUyOTAzLCA1MjkxNywgNTI5MzEsIDUyOTM5LCA1Mjk0NywgNTI5NTksIDUyOTcxLCAKKyAgICA1Mjk3OSwgNTI5ODcsIDUyOTk3LCA1MzAwNywgNTMwMTIsIDUzMDE3LCA1MzAyNiwgNTMwMzUsIDUzMDQwLCA1MzA0NSwgCisgICAgNTMwNTMsIDUzMDU5LCA1MzA2NSwgNTMwNzMsIDUzMDgxLCA1MzA5NCwgNTMxMDcsIDUzMTExLCA1MzExNSwgNTMxMjIsIAorICAgIDUzMTI5LCA1MzEzNiwgNTMxNDQsIDUzMTUyLCA1MzE2MSwgNTMxNzAsIDUzMTc2LCA1MzE4MiwgNTMxODksIDUzMTk2LCAKKyAgICA1MzIwMywgNTMyMTAsIDUzMjE5LCA1MzIyOCwgNTMyMzEsIDUzMjM0LCA1MzIzOSwgNTMyNDQsIDUzMjUwLCA1MzI1NiwgCisgICAgNTMyNjMsIDUzMjcwLCA1MzI4MCwgNTMyOTAsIDUzMjk3LCA1MzMwNCwgNTMzMTIsIDUzMzIwLCA1MzMyOCwgNTMzMzYsIAorICAgIDUzMzQ0LCA1MzM1MiwgNTMzNTgsIDUzMzY0LCA1MzM2OCwgNTMzNzIsIDUzMzc5LCA1MzM4NiwgNTMzOTEsIDUzMzk2LCAKKyAgICA1MzQwMSwgNTM0MDYsIDUzNDEyLCA1MzQyNiwgNTM0MzMsIDUzNDQwLCA1MzQ0NCwgNTM0NDYsIDUzNDQ4LCA1MzQ1MywgCisgICAgNTM0NTgsIDUzNDYzLCA1MzQ2NywgNTM0NzUsIDUzNDgyLCA1MzQ4OSwgNTM0OTcsIDUzNTA5LCA1MzUxNywgNTM1MjUsIAorICAgIDUzNTM2LCA1MzU0MCwgNTM1NDQsIDUzNTUwLCA1MzU1OCwgNTM1NzEsIDUzNTc4LCA1MzU4NSwgNTM1OTIsIDUzNTk3LCAKKyAgICA1MzYwNCwgNTM2MTMsIDUzNjIxLCA1MzYyNywgNTM2MzMsIDUzNjM5LCA1MzY0OCwgNTM2NTcsIDUzNjY1LCA1MzY3NCwgCisgICAgNTM2NzksIDUzNjgyLCA1MzY4NywgNTM2OTMsIDUzNjk5LCA1MzcwNSwgNTM3MTEsIDUzNzE1LCA1MzcxOCwgNTM3MjIsIAorICAgIDUzNzI2LCA1MzczMiwgNTM3MzgsIDUzNzQ0LCA1Mzc1MCwgNTM3NTQsIDUzNzU4LCA1Mzc2NSwgNTM3NzIsIDUzNzc5LCAKKyAgICA1Mzc4NiwgNTM3OTMsIDUzODAwLCA1MzgxMCwgNTM4MjAsIDUzODI3LCA1MzgzNCwgNTM4NDIsIDUzODUwLCA1Mzg1NCwgCisgICAgNTM4NTksIDUzODY0LCA1Mzg3MCwgNTM4NzYsIDUzODc5LCA1Mzg4MiwgNTM4ODUsIDUzODg4LCA1Mzg5MiwgNTM4OTcsIAorICAgIDUzOTAyLCA1MzkwNywgNTM5MTIsIDUzOTE3LCA1MzkyMSwgNTM5MjUsIDUzOTI5LCA1MzkzMywgNTM5MzcsIDUzOTQxLCAKKyAgICA1Mzk0NSwgNTM5NTEsIDUzOTU1LCA1Mzk2MSwgNTM5NjYsIDUzOTczLCA1Mzk4MSwgNTM5ODgsIDUzOTk2LCA1NDAwMywgCisgICAgNTQwMTEsIDU0MDIwLCA1NDAyNywgNTQwMzcsIDU0MDQ4LCA1NDA1NCwgNTQwNjMsIDU0MDY5LCA1NDA3OCwgNTQwODcsIAorICAgIDU0MDkzLCA1NDA5OSwgNTQxMDMsIDU0MTA3LCA1NDExNiwgNTQxMjUsIDU0MTMyLCA1NDEzOSwgNTQxNDgsIDAsIDAsIDAsIAorICAgIDU0MTU3LCA1NDE2MiwgNTQxNjYsIDU0MTcwLCA1NDE3NSwgNTQxODAsIDU0MTg1LCA1NDE5MywgNTQyMDEsIDU0MjA0LCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NDI1OSwgNTQyNjQsIDU0MjY5LCA1NDI3NCwgNTQyNzksIAotICAgIDU0Mjg0LCA1NDI4OSwgNTQyOTQsIDU0Mjk5LCA1NDMwNCwgNTQzMDksIDU0MzE1LCA1NDMxOSwgNTQzMjQsIDU0MzI5LCAKLSAgICA1NDMzNCwgNTQzMzksIDU0MzQ0LCA1NDM0OSwgNTQzNTQsIDU0MzU5LCA1NDM2NCwgNTQzNjksIDU0Mzc0LCA1NDM3OSwgCi0gICAgNTQzODQsIDU0Mzg5LCA1NDM5NCwgNTQzOTksIDU0NDA0LCA1NDQwOSwgNTQ0MTQsIDU0NDE5LCA1NDQyNCwgNTQ0MjksIAotICAgIDU0NDM1LCA1NDQ0MCwgNTQ0NDYsIDU0NDU1LCA1NDQ2MCwgNTQ0NjgsIDU0NDc1LCA1NDQ4NCwgNTQ0ODksIDU0NDk0LCAKLSAgICA1NDQ5OSwgNTQ1MDUsIDAsIDU0NTEyLCA1NDUxNywgNTQ1MjIsIDU0NTI3LCA1NDUzMiwgNTQ1MzcsIDU0NTQyLCA1NDU0NywgCi0gICAgNTQ1NTIsIDU0NTU3LCA1NDU2MiwgNTQ1NjgsIDU0NTcyLCA1NDU3NywgNTQ1ODIsIDU0NTg3LCA1NDU5MiwgNTQ1OTcsIAotICAgIDU0NjAyLCA1NDYwNywgNTQ2MTIsIDU0NjE3LCA1NDYyMiwgNTQ2MjcsIDU0NjMyLCA1NDYzNywgNTQ2NDIsIDU0NjQ3LCAKLSAgICA1NDY1MiwgNTQ2NTcsIDU0NjYyLCA1NDY2NywgNTQ2NzIsIDU0Njc3LCA1NDY4MiwgNTQ2ODgsIDU0NjkzLCA1NDY5OSwgCi0gICAgNTQ3MDgsIDU0NzEzLCA1NDcyMSwgNTQ3MjgsIDU0NzM3LCA1NDc0MiwgNTQ3NDcsIDU0NzUyLCA1NDc1OCwgMCwgNTQ3NjUsIAotICAgIDU0NzczLCA1NDc4MSwgNTQ3OTEsIDU0Nzk4LCA1NDgwNiwgNTQ4MTIsIDU0ODIxLCA1NDgyOSwgNTQ4MzcsIDU0ODQ1LCAKLSAgICA1NDg1MywgNTQ4NjEsIDU0ODY5LCA1NDg3NCwgNTQ4ODEsIDU0ODg3LCA1NDg5NCwgNTQ5MDIsIDU0OTA5LCA1NDkxNiwgCi0gICAgNTQ5MjQsIDU0OTMwLCA1NDkzNiwgNTQ5NDMsIDU0OTUwLCA1NDk2MCwgNTQ5NzAsIDU0OTc3LCA1NDk4NCwgNTQ5ODksIAotICAgIDU0OTk5LCA1NTAwOSwgNTUwMTQsIDU1MDE5LCA1NTAyNCwgNTUwMjksIDU1MDM0LCA1NTAzOSwgNTUwNDQsIDU1MDQ5LCAKLSAgICA1NTA1NCwgNTUwNTksIDU1MDY0LCA1NTA2OSwgNTUwNzQsIDU1MDc5LCA1NTA4NCwgNTUwODksIDU1MDk0LCA1NTA5OSwgCi0gICAgNTUxMDQsIDU1MTA5LCA1NTExNCwgNTUxMTksIDU1MTI0LCA1NTEyOSwgNTUxMzQsIDU1MTM5LCA1NTE0NCwgNTUxNDksIAotICAgIDU1MTU0LCA1NTE1OSwgNTUxNjMsIDU1MTY3LCA1NTE3MiwgNTUxNzcsIDU1MTgyLCA1NTE4NywgNTUxOTIsIDU1MTk3LCAKLSAgICA1NTIwMiwgNTUyMDcsIDU1MjEyLCA1NTIxNywgNTUyMjIsIDU1MjI3LCA1NTIzMiwgNTUyMzcsIDU1MjQyLCA1NTI0NywgCi0gICAgNTUyNTIsIDU1MjU3LCA1NTI2NCwgNTUyNzEsIDU1Mjc4LCA1NTI4NSwgNTUyOTIsIDU1Mjk5LCA1NTMwNiwgNTUzMTMsIAotICAgIDU1MzIwLCA1NTMyNywgNTUzMzQsIDU1MzQxLCA1NTM0OCwgNTUzNTUsIDU1MzYwLCA1NTM2NSwgNTUzNzIsIDU1Mzc5LCAKLSAgICA1NTM4NiwgNTUzOTMsIDU1NDAwLCA1NTQwNywgNTU0MTQsIDU1NDIxLCA1NTQyOCwgNTU0MzUsIDU1NDQyLCA1NTQ0OSwgCi0gICAgNTU0NTUsIDU1NDYxLCA1NTQ2NywgNTU0NzMsIDU1NDgwLCA1NTQ4NywgNTU0OTQsIDU1NTAxLCA1NTUwOCwgNTU1MTUsIAotICAgIDU1NTIyLCA1NTUyOSwgNTU1MzYsIDU1NTQzLCA1NTU1MSwgNTU1NTksIDU1NTY3LCA1NTU3NSwgNTU1ODMsIDU1NTkxLCAKLSAgICA1NTU5OSwgNTU2MDcsIDU1NjExLCA1NTYxNywgNTU2MjMsIDU1NjI3LCA1NTYzMywgNTU2MzksIDU1NjQ1LCA1NTY1MiwgCi0gICAgNTU2NTksIDU1NjY2LCA1NTY3MywgNTU2NzgsIDU1Njg0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NTY5MCwgNTU2OTgsIAotICAgIDU1NzA3LCA1NTcxNiwgNTU3MjQsIDU1NzMwLCA1NTczNSwgNTU3NDAsIDU1NzQ1LCA1NTc1MCwgNTU3NTUsIDU1NzYwLCAKLSAgICA1NTc2NSwgNTU3NzAsIDU1Nzc1LCA1NTc4MCwgNTU3ODUsIDU1NzkwLCA1NTc5NSwgNTU4MDAsIDU1ODA1LCA1NTgxMCwgCi0gICAgNTU4MTUsIDU1ODIwLCA1NTgyNSwgNTU4MzAsIDU1ODM1LCA1NTg0MCwgNTU4NDUsIDU1ODUwLCA1NTg1NSwgNTU4NjAsIAotICAgIDU1ODY1LCA1NTg3MCwgNTU4NzUsIDU1ODgwLCA1NTg4NSwgNTU4OTAsIDU1ODk1LCA1NTkwMCwgNTU5MDUsIDU1OTEwLCAKLSAgICA1NTkxNSwgNTU5MjAsIDU1OTI1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NTkzMCwgNTU5MzQsIDU1OTM5LCAKLSAgICA1NTk0NCwgNTU5NDksIDU1OTU0LCA1NTk2MywgNTU5NjgsIDU1OTczLCA1NTk3OCwgNTU5ODMsIDU1OTg4LCA1NTk5MywgCi0gICAgNTU5OTgsIDU2MDAzLCA1NjAxMCwgNTYwMTUsIDU2MDIwLCA1NjAyOSwgNTYwMzYsIDU2MDQxLCA1NjA0NiwgNTYwNTEsIAotICAgIDU2MDU4LCA1NjA2MywgNTYwNzAsIDU2MDc1LCA1NjA4MCwgNTYwODcsIDU2MDk0LCA1NjA5OSwgNTYxMDQsIDU2MTA5LCAKLSAgICA1NjExNiwgNTYxMjMsIDU2MTI4LCA1NjEzMywgNTYxMzgsIDU2MTQzLCA1NjE0OCwgNTYxNTUsIDU2MTYyLCA1NjE2NywgCi0gICAgNTYxNzIsIDU2MTc3LCA1NjE4MiwgNTYxODcsIDU2MTkyLCA1NjE5NywgNTYyMDIsIDU2MjA3LCA1NjIxMiwgNTYyMTcsIAotICAgIDU2MjI0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NjIyOSwgNTYyMzYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDU2MjQxLCA1NjI0NywgNTYyNTEsIDU2MjU1LCA1NjI1OSwgNTYyNjMsIDU2MjY3LCA1NjI3MSwgCi0gICAgNTYyNzUsIDU2Mjc5LCA1NjI4MywgNTYyODcsIDU2MjkzLCA1NjI5NywgNTYzMDEsIDU2MzA1LCA1NjMwOSwgNTYzMTMsIAotICAgIDU2MzE3LCA1NjMyMSwgNTYzMjUsIDU2MzI5LCA1NjMzMywgNTYzMzcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDU2MzQxLCA1NjM0NSwgNTYzNDksIDU2MzUzLCA1NjM1NywgNTYzNjEsIDU2MzY1LCAwLCA1NjM2OSwgNTYzNzMsIDU2Mzc3LCAKLSAgICA1NjM4MSwgNTYzODUsIDU2Mzg5LCA1NjM5MywgMCwgNTYzOTcsIDU2NDAxLCA1NjQwNSwgNTY0MDksIDU2NDEzLCA1NjQxNywgCi0gICAgNTY0MjEsIDAsIDU2NDI1LCA1NjQyOSwgNTY0MzMsIDU2NDM3LCA1NjQ0MSwgNTY0NDUsIDU2NDQ5LCAwLCA1NjQ1MywgCi0gICAgNTY0NTcsIDU2NDYxLCA1NjQ2NSwgNTY0NjksIDU2NDczLCA1NjQ3NywgMCwgNTY0ODEsIDU2NDg1LCA1NjQ4OSwgNTY0OTMsIAotICAgIDU2NDk3LCA1NjUwMSwgNTY1MDUsIDAsIDU2NTA5LCA1NjUxMywgNTY1MTcsIDU2NTIxLCA1NjUyNSwgNTY1MjksIDU2NTMzLCAKLSAgICAwLCA1NjUzNywgNTY1NDEsIDU2NTQ1LCA1NjU0OSwgNTY1NTMsIDU2NTU3LCA1NjU2MSwgMCwgNTY1NjUsIDU2NTcwLCAKLSAgICA1NjU3NSwgNTY1ODAsIDU2NTg1LCA1NjU5MCwgNTY1OTUsIDU2NTk5LCA1NjYwNCwgNTY2MDksIDU2NjE0LCA1NjYxOCwgCi0gICAgNTY2MjMsIDU2NjI4LCA1NjYzMywgNTY2MzgsIDU2NjQyLCA1NjY0NywgNTY2NTIsIDU2NjU3LCA1NjY2MiwgNTY2NjcsIAotICAgIDU2NjcyLCA1NjY3NiwgNTY2ODEsIDU2Njg2LCA1NjY5MywgNTY2OTgsIDU2NzAzLCA1NjcwOSwgNTY3MTYsIDU2NzIzLCAKLSAgICA1NjczMiwgNTY3MzksIDU2NzQ4LCA1Njc1MiwgNTY3NTYsIDU2NzYyLCA1Njc2OCwgNTY3NzQsIDU2NzgyLCA1Njc4OCwgCi0gICAgNTY3OTIsIDU2Nzk2LCA1NjgwMCwgNTY4MDYsIDU2ODEyLCA1NjgxNiwgNTY4MTgsIDU2ODIyLCA1NjgyOCwgNTY4MzAsIAotICAgIDU2ODM0LCA1NjgzOCwgNTY4NDIsIDU2ODQ4LCA1Njg1MywgNTY4NTcsIDU2ODYxLCA1Njg2NiwgNTY4NzIsIDU2ODc3LCAKLSAgICA1Njg4MiwgNTY4ODcsIDU2ODkyLCA1Njg5OSwgNTY5MDYsIDU2OTExLCA1NjkxNiwgNTY5MjEsIDU2OTI2LCA1NjkzMSwgCi0gICAgNTY5MzYsIDU2OTQwLCA1Njk0NCwgNTY5NTEsIDU2OTU4LCA1Njk2NCwgNTY5NjgsIDU2OTczLCA1Njk3NiwgNTY5ODAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU0MjA4LCA1NDIxMywgNTQyMTgsIDU0MjIzLCA1NDIyOCwgCisgICAgNTQyMzMsIDU0MjM4LCA1NDI0MywgNTQyNDgsIDU0MjUzLCA1NDI1OCwgNTQyNjQsIDU0MjY4LCA1NDI3MywgNTQyNzgsIAorICAgIDU0MjgzLCA1NDI4OCwgNTQyOTMsIDU0Mjk4LCA1NDMwMywgNTQzMDgsIDU0MzEzLCA1NDMxOCwgNTQzMjMsIDU0MzI4LCAKKyAgICA1NDMzMywgNTQzMzgsIDU0MzQzLCA1NDM0OCwgNTQzNTMsIDU0MzU4LCA1NDM2MywgNTQzNjgsIDU0MzczLCA1NDM3OCwgCisgICAgNTQzODQsIDU0Mzg5LCA1NDM5NSwgNTQ0MDQsIDU0NDA5LCA1NDQxNywgNTQ0MjQsIDU0NDMzLCA1NDQzOCwgNTQ0NDMsIAorICAgIDU0NDQ4LCA1NDQ1NCwgMCwgNTQ0NjEsIDU0NDY2LCA1NDQ3MSwgNTQ0NzYsIDU0NDgxLCA1NDQ4NiwgNTQ0OTEsIDU0NDk2LCAKKyAgICA1NDUwMSwgNTQ1MDYsIDU0NTExLCA1NDUxNywgNTQ1MjEsIDU0NTI2LCA1NDUzMSwgNTQ1MzYsIDU0NTQxLCA1NDU0NiwgCisgICAgNTQ1NTEsIDU0NTU2LCA1NDU2MSwgNTQ1NjYsIDU0NTcxLCA1NDU3NiwgNTQ1ODEsIDU0NTg2LCA1NDU5MSwgNTQ1OTYsIAorICAgIDU0NjAxLCA1NDYwNiwgNTQ2MTEsIDU0NjE2LCA1NDYyMSwgNTQ2MjYsIDU0NjMxLCA1NDYzNywgNTQ2NDIsIDU0NjQ4LCAKKyAgICA1NDY1NywgNTQ2NjIsIDU0NjcwLCA1NDY3NywgNTQ2ODYsIDU0NjkxLCA1NDY5NiwgNTQ3MDEsIDU0NzA3LCAwLCA1NDcxNCwgCisgICAgNTQ3MjIsIDU0NzMwLCA1NDczOSwgNTQ3NDYsIDU0NzU0LCA1NDc2MCwgNTQ3NjksIDU0Nzc3LCA1NDc4NSwgNTQ3OTMsIAorICAgIDU0ODAxLCA1NDgwOSwgNTQ4MTcsIDU0ODIyLCA1NDgyOSwgNTQ4MzUsIDU0ODQyLCA1NDg1MCwgNTQ4NTcsIDU0ODY0LCAKKyAgICA1NDg3MiwgNTQ4NzgsIDU0ODg0LCA1NDg5MSwgNTQ4OTgsIDU0OTA4LCA1NDkxOCwgNTQ5MjUsIDU0OTMyLCA1NDkzNywgCisgICAgNTQ5NDcsIDU0OTU3LCA1NDk2MiwgNTQ5NjcsIDU0OTcyLCA1NDk3NywgNTQ5ODIsIDU0OTg3LCA1NDk5MiwgNTQ5OTcsIAorICAgIDU1MDAyLCA1NTAwNywgNTUwMTIsIDU1MDE3LCA1NTAyMiwgNTUwMjcsIDU1MDMyLCA1NTAzNywgNTUwNDIsIDU1MDQ3LCAKKyAgICA1NTA1MiwgNTUwNTcsIDU1MDYyLCA1NTA2NywgNTUwNzIsIDU1MDc3LCA1NTA4MiwgNTUwODcsIDU1MDkyLCA1NTA5NywgCisgICAgNTUxMDIsIDU1MTA3LCA1NTExMSwgNTUxMTUsIDU1MTIwLCA1NTEyNSwgNTUxMzAsIDU1MTM1LCA1NTE0MCwgNTUxNDUsIAorICAgIDU1MTUwLCA1NTE1NSwgNTUxNjAsIDU1MTY1LCA1NTE3MCwgNTUxNzUsIDU1MTgwLCA1NTE4NSwgNTUxOTAsIDU1MTk1LCAKKyAgICA1NTIwMCwgNTUyMDUsIDU1MjEyLCA1NTIxOSwgNTUyMjYsIDU1MjMzLCA1NTI0MCwgNTUyNDcsIDU1MjU0LCA1NTI2MSwgCisgICAgNTUyNjgsIDU1Mjc1LCA1NTI4MiwgNTUyODksIDU1Mjk2LCA1NTMwMywgNTUzMDgsIDU1MzEzLCA1NTMyMCwgNTUzMjcsIAorICAgIDU1MzM0LCA1NTM0MSwgNTUzNDgsIDU1MzU1LCA1NTM2MiwgNTUzNjksIDU1Mzc2LCA1NTM4MywgNTUzOTAsIDU1Mzk3LCAKKyAgICA1NTQwMywgNTU0MDksIDU1NDE1LCA1NTQyMSwgNTU0MjgsIDU1NDM1LCA1NTQ0MiwgNTU0NDksIDU1NDU2LCA1NTQ2MywgCisgICAgNTU0NzAsIDU1NDc3LCA1NTQ4NCwgNTU0OTEsIDU1NDk5LCA1NTUwNywgNTU1MTUsIDU1NTIzLCA1NTUzMSwgNTU1MzksIAorICAgIDU1NTQ3LCA1NTU1NSwgNTU1NTksIDU1NTY1LCA1NTU3MSwgNTU1NzUsIDU1NTgxLCA1NTU4NywgNTU1OTMsIDU1NjAwLCAKKyAgICA1NTYwNywgNTU2MTQsIDU1NjIxLCA1NTYyNiwgNTU2MzIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1NjM4LCA1NTY0NiwgCisgICAgNTU2NTUsIDU1NjY0LCA1NTY3MiwgNTU2NzgsIDU1NjgzLCA1NTY4OCwgNTU2OTMsIDU1Njk4LCA1NTcwMywgNTU3MDgsIAorICAgIDU1NzEzLCA1NTcxOCwgNTU3MjMsIDU1NzI4LCA1NTczMywgNTU3MzgsIDU1NzQzLCA1NTc0OCwgNTU3NTMsIDU1NzU4LCAKKyAgICA1NTc2MywgNTU3NjgsIDU1NzczLCA1NTc3OCwgNTU3ODMsIDU1Nzg4LCA1NTc5MywgNTU3OTgsIDU1ODAzLCA1NTgwOCwgCisgICAgNTU4MTMsIDU1ODE4LCA1NTgyMywgNTU4MjgsIDU1ODMzLCA1NTgzOCwgNTU4NDMsIDU1ODQ4LCA1NTg1MywgNTU4NTgsIAorICAgIDU1ODYzLCA1NTg2OCwgNTU4NzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1ODc4LCA1NTg4MiwgNTU4ODcsIAorICAgIDU1ODkyLCA1NTg5NywgNTU5MDIsIDU1OTExLCA1NTkxNiwgNTU5MjEsIDU1OTI2LCA1NTkzMSwgNTU5MzYsIDU1OTQxLCAKKyAgICA1NTk0NiwgNTU5NTEsIDU1OTU4LCA1NTk2MywgNTU5NjgsIDU1OTc3LCA1NTk4NCwgNTU5ODksIDU1OTk0LCA1NTk5OSwgCisgICAgNTYwMDYsIDU2MDExLCA1NjAxOCwgNTYwMjMsIDU2MDI4LCA1NjAzNSwgNTYwNDIsIDU2MDQ3LCA1NjA1MiwgNTYwNTcsIAorICAgIDU2MDY0LCA1NjA3MSwgNTYwNzYsIDU2MDgxLCA1NjA4NiwgNTYwOTEsIDU2MDk2LCA1NjEwMywgNTYxMTAsIDU2MTE1LCAKKyAgICA1NjEyMCwgNTYxMjUsIDU2MTMwLCA1NjEzNSwgNTYxNDAsIDU2MTQ1LCA1NjE1MCwgNTYxNTUsIDU2MTYwLCA1NjE2NSwgCisgICAgNTYxNzIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU2MTc3LCA1NjE4NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgNTYxODksIDU2MTk0LCA1NjE5OCwgNTYyMDIsIDU2MjA2LCA1NjIxMCwgNTYyMTQsIDU2MjE4LCAKKyAgICA1NjIyMiwgNTYyMjYsIDU2MjMwLCA1NjIzNCwgNTYyNDAsIDU2MjQ0LCA1NjI0OCwgNTYyNTIsIDU2MjU2LCA1NjI2MCwgCisgICAgNTYyNjQsIDU2MjY4LCA1NjI3MiwgNTYyNzYsIDU2MjgwLCA1NjI4NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNTYyODgsIDU2MjkyLCA1NjI5NiwgNTYzMDAsIDU2MzA0LCA1NjMwOCwgNTYzMTIsIDAsIDU2MzE2LCA1NjMyMCwgNTYzMjQsIAorICAgIDU2MzI4LCA1NjMzMiwgNTYzMzYsIDU2MzQwLCAwLCA1NjM0NCwgNTYzNDgsIDU2MzUyLCA1NjM1NiwgNTYzNjAsIDU2MzY0LCAKKyAgICA1NjM2OCwgMCwgNTYzNzIsIDU2Mzc2LCA1NjM4MCwgNTYzODQsIDU2Mzg4LCA1NjM5MiwgNTYzOTYsIDAsIDU2NDAwLCAKKyAgICA1NjQwNCwgNTY0MDgsIDU2NDEyLCA1NjQxNiwgNTY0MjAsIDU2NDI0LCAwLCA1NjQyOCwgNTY0MzIsIDU2NDM2LCA1NjQ0MCwgCisgICAgNTY0NDQsIDU2NDQ4LCA1NjQ1MiwgMCwgNTY0NTYsIDU2NDYwLCA1NjQ2NCwgNTY0NjgsIDU2NDcyLCA1NjQ3NiwgNTY0ODAsIAorICAgIDAsIDU2NDg0LCA1NjQ4OCwgNTY0OTIsIDU2NDk2LCA1NjUwMCwgNTY1MDQsIDU2NTA4LCAwLCA1NjUxMiwgNTY1MTcsIAorICAgIDU2NTIyLCA1NjUyNywgNTY1MzIsIDU2NTM3LCA1NjU0MiwgNTY1NDYsIDU2NTUxLCA1NjU1NiwgNTY1NjEsIDU2NTY1LCAKKyAgICA1NjU3MCwgNTY1NzUsIDU2NTgwLCA1NjU4NSwgNTY1ODksIDU2NTk0LCA1NjU5OSwgNTY2MDQsIDU2NjA5LCA1NjYxNCwgCisgICAgNTY2MTksIDU2NjIzLCA1NjYyOCwgNTY2MzMsIDU2NjQwLCA1NjY0NSwgNTY2NTAsIDU2NjU2LCA1NjY2MywgNTY2NzAsIAorICAgIDU2Njc5LCA1NjY4NiwgNTY2OTUsIDU2Njk5LCA1NjcwMywgNTY3MDksIDU2NzE1LCA1NjcyMSwgNTY3MjksIDU2NzM1LCAKKyAgICA1NjczOSwgNTY3NDMsIDU2NzQ3LCA1Njc1MywgNTY3NTksIDU2NzYzLCA1Njc2NSwgNTY3NjksIDU2Nzc1LCA1Njc3NywgCisgICAgNTY3ODEsIDU2Nzg1LCA1Njc4OSwgNTY3OTUsIDU2ODAwLCA1NjgwNCwgNTY4MDgsIDU2ODEzLCA1NjgxOSwgNTY4MjQsIAorICAgIDU2ODI5LCA1NjgzNCwgNTY4MzksIDU2ODQ2LCA1Njg1MywgNTY4NTgsIDU2ODYzLCA1Njg2OCwgNTY4NzMsIDU2ODc4LCAKKyAgICA1Njg4MywgNTY4ODcsIDU2ODkxLCA1Njg5OCwgNTY5MDUsIDU2OTExLCA1NjkxNSwgNTY5MjAsIDU2OTIyLCA1NjkyNiwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNTY5ODgsIDU2OTkyLCA1Njk5NiwgNTcwMDEsIDU3MDA2LCA1NzAxMSwgNTcwMTUsIDU3MDE5LCAKLSAgICA1NzAyMywgNTcwMjgsIDU3MDMzLCA1NzAzNywgNTcwNDEsIDU3MDQ1LCA1NzA0OSwgNTcwNTQsIDU3MDU5LCA1NzA2NCwgCi0gICAgNTcwNjksIDU3MDczLCA1NzA3NywgNTcwODIsIDU3MDg3LCA1NzA5MiwgNTcwOTcsIDU3MTAxLCAwLCA1NzEwNSwgNTcxMDksIAotICAgIDU3MTEzLCA1NzExNywgNTcxMjEsIDU3MTI1LCA1NzEyOSwgNTcxMzQsIDU3MTM5LCA1NzE0MywgNTcxNDgsIDU3MTUzLCAKLSAgICA1NzE2MiwgNTcxNjYsIDU3MTcwLCA1NzE3NCwgNTcxODEsIDU3MTg1LCA1NzE5MCwgNTcxOTUsIDU3MTk5LCA1NzIwMywgCi0gICAgNTcyMDksIDU3MjE0LCA1NzIxOSwgNTcyMjQsIDU3MjI5LCA1NzIzMywgNTcyMzcsIDU3MjQxLCA1NzI0NSwgNTcyNDksIAotICAgIDU3MjU0LCA1NzI1OSwgNTcyNjMsIDU3MjY3LCA1NzI3MiwgNTcyNzcsIDU3MjgyLCA1NzI4NiwgNTcyOTAsIDU3Mjk1LCAKLSAgICA1NzMwMCwgNTczMDYsIDU3MzEyLCA1NzMxNiwgNTczMjIsIDU3MzI4LCA1NzMzMiwgNTczMzgsIDU3MzQ0LCA1NzM0OSwgCi0gICAgNTczNTQsIDU3MzU4LCA1NzM2NCwgNTczNjgsIDU3MzcyLCA1NzM3OCwgNTczODQsIDU3Mzg5LCA1NzM5NCwgNTczOTgsIAotICAgIDU3NDAyLCA1NzQxMCwgNTc0MTYsIDU3NDIyLCA1NzQyOCwgNTc0MzMsIDU3NDM4LCA1NzQ0MywgNTc0NDksIDU3NDUzLCAKLSAgICA1NzQ1OSwgNTc0NjMsIDU3NDY3LCA1NzQ3MywgNTc0NzksIDU3NDg1LCA1NzQ5MSwgNTc0OTcsIDU3NTAzLCA1NzUwOSwgCi0gICAgNTc1MTUsIDU3NTIxLCA1NzUyNywgNTc1MzMsIDU3NTM5LCA1NzU0MywgNTc1NDksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDU3NTU1LCA1NzU1OCwgNTc1NjIsIDU3NTY2LCA1NzU3MCwgNTc1NzQsIDU3NTc3LCA1NzU4MCwgCi0gICAgNTc1ODQsIDU3NTg4LCA1NzU5MiwgNTc1OTYsIDU3NTk5LCA1NzYwNCwgNTc2MDgsIDU3NjEyLCA1NzYxNiwgNTc2MjIsIAotICAgIDU3NjI2LCA1NzYzMCwgNTc2MzQsIDU3NjM4LCA1NzY0NSwgNTc2NTEsIDU3NjU1LCA1NzY1OSwgNTc2NjMsIDU3NjY3LCAKLSAgICA1NzY3MSwgNTc2NzUsIDU3Njc5LCA1NzY4MywgNTc2ODcsIDU3NjkxLCA1NzY5NSwgNTc3MDEsIDU3NzA1LCA1NzcwOSwgCi0gICAgNTc3MTMsIDU3NzE3LCA1NzcyMSwgNTc3MjUsIDU3NzI5LCA1NzczMywgNTc3MzcsIDU3NzQxLCA1Nzc0NSwgNTc3NDksIAotICAgIDU3NzUzLCA1Nzc1NywgNTc3NjEsIDU3NzY1LCA1Nzc3MSwgNTc3NzcsIDU3NzgyLCA1Nzc4NywgNTc3OTEsIDU3Nzk1LCAKLSAgICA1Nzc5OSwgNTc4MDMsIDU3ODA3LCA1NzgxMSwgNTc4MTUsIDU3ODE5LCA1NzgyMywgNTc4MjcsIDU3ODMxLCA1NzgzNSwgCi0gICAgNTc4MzksIDU3ODQzLCA1Nzg0NywgNTc4NTEsIDU3ODU1LCA1Nzg1OSwgNTc4NjMsIDU3ODY3LCA1Nzg3MSwgNTc4NzUsIAotICAgIDU3ODc5LCA1Nzg4MywgNTc4ODksIDU3ODkzLCA1Nzg5NywgNTc5MDEsIDU3OTA1LCA1NzkwOSwgNTc5MTMsIDU3OTE3LCAKLSAgICA1NzkyMSwgNTc5MjYsIDU3OTMzLCA1NzkzNywgNTc5NDEsIDU3OTQ1LCA1Nzk0OSwgNTc5NTMsIDU3OTU3LCA1Nzk2MSwgCi0gICAgNTc5NjUsIDU3OTY5LCA1Nzk3MywgNTc5NzcsIDU3OTgxLCA1Nzk4OCwgNTc5OTIsIDU3OTk4LCA1ODAwMiwgNTgwMDYsIAotICAgIDU4MDEwLCA1ODAxNCwgNTgwMTgsIDU4MDIxLCA1ODAyNSwgNTgwMjksIDU4MDMzLCA1ODAzNywgNTgwNDEsIDU4MDQ1LCAKLSAgICA1ODA0OSwgNTgwNTMsIDU4MDU3LCA1ODA2MSwgNTgwNjUsIDU4MDY5LCA1ODA3MywgNTgwNzcsIDU4MDgxLCA1ODA4NSwgCi0gICAgNTgwODksIDU4MDkzLCA1ODA5NywgNTgxMDEsIDU4MTA1LCA1ODEwOSwgNTgxMTMsIDU4MTE3LCA1ODEyMSwgNTgxMjUsIAotICAgIDU4MTI5LCA1ODEzMywgNTgxMzcsIDU4MTQxLCA1ODE0NSwgNTgxNDksIDU4MTU1LCA1ODE1OSwgNTgxNjMsIDU4MTY3LCAKLSAgICA1ODE3MSwgNTgxNzUsIDU4MTc5LCA1ODE4MywgNTgxODcsIDU4MTkxLCA1ODE5NSwgNTgxOTksIDU4MjAzLCA1ODIwNywgCi0gICAgNTgyMTEsIDU4MjE1LCA1ODIxOSwgNTgyMjMsIDU4MjI3LCA1ODIzMSwgNTgyMzUsIDU4MjM5LCA1ODI0MywgNTgyNDcsIAotICAgIDU4MjUxLCA1ODI1NSwgNTgyNTksIDU4MjYzLCA1ODI3MSwgNTgyNzUsIDU4Mjc5LCA1ODI4MywgNTgyODcsIDU4MjkxLCAKLSAgICA1ODI5NywgNTgzMDEsIDU4MzA1LCA1ODMwOSwgNTgzMTMsIDU4MzE3LCA1ODMyMSwgNTgzMjUsIDU4MzI5LCA1ODMzMywgCi0gICAgNTgzMzcsIDU4MzQxLCA1ODM0NSwgNTgzNDksIDU4MzU1LCA1ODM1OSwgNTgzNjMsIDU4MzY3LCA1ODM3MSwgNTgzNzUsIAotICAgIDU4Mzc5LCA1ODM4MywgNTgzODcsIDU4MzkxLCA1ODM5NSwgNTgzOTksIDU4NDAzLCA1ODQwNywgNTg0MTEsIDU4NDE1LCAKLSAgICA1ODQxOSwgNTg0MjMsIDU4NDI3LCA1ODQzMSwgNTg0MzUsIDU4NDM5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1ODQ0MywgNTg0NTIsIDU4NDYwLCAKLSAgICA1ODQ3MiwgNTg0ODMsIDU4NDkxLCA1ODUwMCwgNTg1MDksIDU4NTE5LCA1ODUzMSwgNTg1NDMsIDU4NTU1LCAwLCAwLCAwLCAKLSAgICAwLCA1ODU2MSwgNTg1NjQsIDU4NTY3LCA1ODU3MiwgNTg1NzUsIDU4NTgyLCA1ODU4NiwgNTg1OTAsIDU4NTk0LCA1ODU5OCwgCi0gICAgNTg2MDIsIDU4NjA3LCA1ODYxMiwgNTg2MTYsIDU4NjIwLCA1ODYyNSwgNTg2MzAsIDU4NjM1LCA1ODY0MCwgNTg2NDMsIAotICAgIDU4NjQ2LCA1ODY1MiwgNTg2NTgsIDU4NjYzLCA1ODY2OCwgNTg2NzUsIDU4NjgyLCA1ODY4NiwgNTg2OTAsIDU4Njk0LCAKLSAgICA1ODcwMiwgNTg3MDgsIDU4NzE1LCA1ODcyMCwgNTg3MjUsIDU4NzMwLCA1ODczNSwgNTg3NDAsIDU4NzQ1LCA1ODc1MCwgCi0gICAgNTg3NTUsIDU4NzYwLCA1ODc2NSwgNTg3NzAsIDU4Nzc1LCA1ODc4MCwgNTg3ODUsIDU4NzkxLCA1ODc5NiwgNTg4MDAsIAotICAgIDU4ODA2LCA1ODgxNywgNTg4MjcsIDU4ODQyLCA1ODg1MiwgNTg4NTYsIDU4ODY1LCA1ODg3MSwgNTg4NzcsIDU4ODgzLCAKLSAgICA1ODg4OCwgNTg4OTEsIDU4ODk2LCA1ODkwMCwgMCwgNTg5MDYsIDU4OTEwLCA1ODkxMywgNTg5MTcsIDU4OTIwLCA1ODkyNCwgCi0gICAgNTg5MjcsIDU4OTMxLCA1ODkzNCwgNTg5MzgsIDU4OTQxLCA1ODk0NCwgNTg5NDgsIDU4OTUyLCA1ODk1NiwgNTg5NjAsIAotICAgIDU4OTY0LCA1ODk2OCwgNTg5NzIsIDU4OTc2LCA1ODk4MCwgNTg5ODQsIDU4OTg4LCA1ODk5MiwgNTg5OTYsIDU5MDAwLCAKLSAgICA1OTAwNCwgNTkwMDgsIDU5MDEyLCA1OTAxNiwgNTkwMjAsIDU5MDI0LCA1OTAyOCwgNTkwMzIsIDU5MDM2LCA1OTA0MSwgCi0gICAgNTkwNDUsIDU5MDQ5LCA1OTA1MywgNTkwNTcsIDU5MDYwLCA1OTA2NCwgNTkwNjcsIDU5MDcxLCA1OTA3NSwgNTkwNzksIAotICAgIDU5MDgzLCA1OTA4NiwgNTkwOTAsIDU5MDkzLCA1OTA5NywgNTkxMDEsIDU5MTA1LCA1OTEwOSwgNTkxMTMsIDU5MTE3LCAKLSAgICA1OTEyMSwgNTkxMjUsIDU5MTI5LCA1OTEzMywgNTkxMzcsIDU5MTQxLCA1OTE0NCwgNTkxNDgsIDU5MTUyLCA1OTE1NiwgCi0gICAgNTkxNjAsIDU5MTY0LCA1OTE2NywgNTkxNzIsIDU5MTc2LCA1OTE4MSwgNTkxODUsIDU5MTg4LCA1OTE5MiwgNTkxOTYsIAotICAgIDU5MjAwLCA1OTIwNCwgNTkyMDksIDU5MjEzLCA1OTIxNywgNTkyMjEsIDU5MjI1LCA1OTIyOCwgNTkyMzIsIDU5MjM2LCAwLCAKLSAgICAwLCA1OTI0MSwgNTkyNDksIDU5MjU3LCA1OTI2NCwgNTkyNzEsIDU5Mjc1LCA1OTI4MSwgNTkyODYsIDU5MjkxLCA1OTI5NSwgCi0gICAgNTkyOTgsIDU5MzAyLCA1OTMwNSwgNTkzMDksIDU5MzEyLCA1OTMxNiwgNTkzMTksIDU5MzIzLCA1OTMyNiwgNTkzMjksIAotICAgIDU5MzMzLCA1OTMzNywgNTkzNDEsIDU5MzQ1LCA1OTM0OSwgNTkzNTMsIDU5MzU3LCA1OTM2MSwgNTkzNjUsIDU5MzY5LCAKLSAgICA1OTM3MywgNTkzNzcsIDU5MzgxLCA1OTM4NSwgNTkzODksIDU5MzkzLCA1OTM5NywgNTk0MDEsIDU5NDA1LCA1OTQwOSwgCi0gICAgNTk0MTMsIDU5NDE3LCA1OTQyMSwgNTk0MjYsIDU5NDMwLCA1OTQzNCwgNTk0MzgsIDU5NDQyLCA1OTQ0NSwgNTk0NDksIAotICAgIDU5NDUyLCA1OTQ1NiwgNTk0NjAsIDU5NDY0LCA1OTQ2OCwgNTk0NzEsIDU5NDc1LCA1OTQ3OCwgNTk0ODIsIDU5NDg2LCAKLSAgICA1OTQ5MCwgNTk0OTQsIDU5NDk4LCA1OTUwMiwgNTk1MDYsIDU5NTEwLCA1OTUxNCwgNTk1MTgsIDU5NTIyLCA1OTUyNiwgCi0gICAgNTk1MjksIDU5NTMzLCA1OTUzNywgNTk1NDEsIDU5NTQ1LCA1OTU0OSwgNTk1NTIsIDU5NTU3LCA1OTU2MSwgNTk1NjYsIAotICAgIDU5NTcwLCA1OTU3MywgNTk1NzcsIDU5NTgxLCA1OTU4NSwgNTk1ODksIDU5NTk0LCA1OTU5OCwgNTk2MDIsIDU5NjA2LCAKLSAgICA1OTYxMCwgNTk2MTMsIDU5NjE3LCA1OTYyMSwgNTk2MjYsIDU5NjMwLCA1OTYzNCwgNTk2MzgsIDU5NjQyLCA1OTY0NywgCi0gICAgNTk2NTQsIDU5NjU4LCA1OTY2NCwgMCwgMCwgMCwgMCwgMCwgNTk2NjksIDU5NjczLCA1OTY3NywgNTk2ODAsIDU5Njg0LCAKLSAgICA1OTY4OCwgNTk2OTIsIDU5Njk1LCA1OTY5OCwgNTk3MDIsIDU5NzA2LCA1OTcxMCwgNTk3MTQsIDU5NzE4LCA1OTcyMiwgCi0gICAgNTk3MjYsIDU5NzMwLCA1OTczNCwgNTk3MzcsIDU5NzQxLCA1OTc0NSwgNTk3NDgsIDU5NzUxLCA1OTc1NCwgNTk3NTcsIAotICAgIDU5NzYxLCA1OTc2NSwgNTk3NjksIDU5NzczLCA1OTc3NywgNTk3ODEsIDU5Nzg1LCA1OTc4OSwgNTk3OTMsIDU5Nzk3LCAKLSAgICA1OTgwMCwgNTk4MDMsIDU5ODA3LCA1OTgxMSwgNTk4MTUsIDU5ODE5LCAwLCAwLCAwLCA1OTgyMywgNTk4MjcsIDU5ODMxLCAKLSAgICA1OTgzNSwgNTk4MzksIDU5ODQzLCA1OTg0NywgNTk4NTEsIDU5ODU1LCA1OTg1OSwgNTk4NjMsIDU5ODY3LCA1OTg3MSwgCi0gICAgNTk4NzUsIDU5ODc5LCA1OTg4MywgNTk4ODcsIDU5ODkxLCA1OTg5NSwgNTk4OTksIDU5OTAzLCA1OTkwNywgNTk5MTEsIAotICAgIDU5OTE1LCA1OTkxOSwgNTk5MjMsIDU5OTI3LCA1OTkzMSwgNTk5MzUsIDU5OTM5LCA1OTk0MywgNTk5NDYsIDU5OTUwLCAKLSAgICA1OTk1MywgNTk5NTcsIDU5OTYxLCA1OTk2NCwgNTk5NjgsIDU5OTcyLCA1OTk3NSwgNTk5NzksIDU5OTgzLCA1OTk4NywgCi0gICAgNTk5OTEsIDU5OTk0LCA1OTk5OCwgNjAwMDIsIDYwMDA2LCA2MDAxMCwgNjAwMTQsIDYwMDE4LCA2MDAyMSwgNjAwMjQsIAotICAgIDYwMDI4LCA2MDAzMiwgNjAwMzYsIDYwMDQwLCA2MDA0NCwgNjAwNDgsIDYwMDUyLCA2MDA1NiwgNjAwNjAsIDYwMDY0LCAKLSAgICA2MDA2OCwgNjAwNzIsIDYwMDc2LCA2MDA4MCwgNjAwODQsIDYwMDg4LCA2MDA5MiwgNjAwOTYsIDYwMTAwLCA2MDEwNCwgCi0gICAgNjAxMDgsIDYwMTEyLCA2MDExNiwgNjAxMjAsIDYwMTI0LCA2MDEyOCwgNjAxMzIsIDYwMTM2LCA2MDE0MCwgNjAxNDQsIAotICAgIDYwMTQ4LCA2MDE1MiwgNjAxNTYsIDYwMTYwLCA2MDE2NCwgNjAxNjgsIDYwMTcyLCA2MDE3NiwgNjAxODAsIDYwMTg0LCAKLSAgICA2MDE4OCwgMCwgNjAxOTIsIDYwMTk4LCA2MDIwNCwgNjAyMDksIDYwMjE0LCA2MDIxOSwgNjAyMjUsIDYwMjMxLCA2MDIzNywgCi0gICAgNjAyNDMsIDYwMjQ5LCA2MDI1NSwgNjAyNjEsIDYwMjY3LCA2MDI3MywgNjAyNzksIDYwMjg1LCA2MDI4OSwgNjAyOTMsIAotICAgIDYwMjk3LCA2MDMwMSwgNjAzMDUsIDYwMzA5LCA2MDMxMywgNjAzMTcsIDYwMzIxLCA2MDMyNSwgNjAzMjksIDYwMzMzLCAKLSAgICA2MDMzNywgNjAzNDEsIDYwMzQ1LCA2MDM0OSwgNjAzNTMsIDYwMzU3LCA2MDM2MSwgNjAzNjUsIDYwMzcwLCA2MDM3NSwgCi0gICAgNjAzODAsIDYwMzg1LCA2MDM4OSwgNjAzOTMsIDAsIDAsIDAsIDAsIDAsIDYwMzk3LCA2MDQwMiwgNjA0MDcsIDYwNDEyLCAKLSAgICA2MDQxNywgNjA0MjIsIDYwNDI3LCA2MDQzMiwgNjA0MzcsIDYwNDQyLCA2MDQ0NywgNjA0NTIsIDYwNDU3LCA2MDQ2MiwgCi0gICAgNjA0NjcsIDYwNDcyLCA2MDQ3NiwgNjA0ODEsIDYwNDg1LCA2MDQ5MCwgNjA0OTUsIDYwNTAwLCA2MDUwNSwgNjA1MTAsIAotICAgIDYwNTE1LCA2MDUyMCwgNjA1MjUsIDYwNTMwLCA2MDUzNSwgNjA1NDAsIDYwNTQ1LCA2MDU1MCwgNjA1NTUsIDYwNTYwLCAKLSAgICA2MDU2NSwgNjA1NzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYwNTc1LCA2MDU4MCwgNjA1ODUsIAotICAgIDYwNTkwLCA2MDU5NCwgNjA1OTksIDYwNjAzLCA2MDYwOCwgNjA2MTMsIDYwNjE4LCA2MDYyMywgNjA2MjgsIDYwNjMyLCAKLSAgICA2MDYzNywgNjA2NDIsIDYwNjQ3LCA2MDY1MiwgNjA2NTYsIDYwNjYwLCA2MDY2NCwgNjA2NjgsIDYwNjcyLCA2MDY3NiwgCi0gICAgNjA2ODAsIDYwNjg0LCA2MDY4OCwgNjA2OTIsIDYwNjk2LCA2MDcwMCwgNjA3MDQsIDYwNzA4LCA2MDcxMywgNjA3MTgsIAotICAgIDYwNzIzLCA2MDcyOCwgNjA3MzMsIDYwNzM4LCA2MDc0MywgNjA3NDgsIDYwNzUzLCA2MDc1OCwgNjA3NjMsIDYwNzY4LCAKLSAgICA2MDc3MywgNjA3NzgsIDYwNzgzLCA2MDc4OSwgMCwgNjA3OTYsIDYwNzk5LCA2MDgwMiwgNjA4MDUsIDYwODA4LCA2MDgxMSwgCi0gICAgNjA4MTQsIDYwODE3LCA2MDgyMCwgNjA4MjMsIDYwODI3LCA2MDgzMSwgNjA4MzUsIDYwODM5LCA2MDg0MywgNjA4NDcsIAotICAgIDYwODUxLCA2MDg1NSwgNjA4NTksIDYwODYzLCA2MDg2NywgNjA4NzEsIDYwODc1LCA2MDg3OSwgNjA4ODMsIDYwODg3LCAKLSAgICA2MDg5MSwgNjA4OTUsIDYwODk5LCA2MDkwMywgNjA5MDcsIDYwOTExLCA2MDkxNSwgNjA5MTksIDYwOTIzLCA2MDkyNywgCi0gICAgNjA5MzEsIDYwOTM1LCA2MDkzOSwgNjA5NDMsIDYwOTQ3LCA2MDk1NiwgNjA5NjUsIDYwOTc0LCA2MDk4MywgNjA5OTIsIAotICAgIDYxMDAxLCA2MTAxMCwgNjEwMTksIDYxMDIyLCA2MTAyNywgNjEwMzIsIDYxMDM3LCA2MTA0MiwgNjEwNDcsIDYxMDUyLCAKLSAgICA2MTA1NywgNjEwNjIsIDYxMDY3LCA2MTA3MSwgNjEwNzYsIDYxMDgxLCA2MTA4NiwgNjEwOTEsIDYxMDk2LCA2MTEwMCwgCi0gICAgNjExMDQsIDYxMTA4LCA2MTExMiwgNjExMTYsIDYxMTIwLCA2MTEyNCwgNjExMjgsIDYxMTMyLCA2MTEzNiwgNjExNDAsIAotICAgIDYxMTQ0LCA2MTE0OCwgNjExNTIsIDYxMTU3LCA2MTE2MiwgNjExNjcsIDYxMTcyLCA2MTE3NywgNjExODIsIDYxMTg3LCAKLSAgICA2MTE5MiwgNjExOTcsIDYxMjAyLCA2MTIwNywgNjEyMTIsIDYxMjE3LCA2MTIyMiwgNjEyMjgsIDYxMjM0LCA2MTIzOSwgCi0gICAgNjEyNDQsIDYxMjQ3LCA2MTI1MCwgNjEyNTMsIDYxMjU2LCA2MTI1OSwgNjEyNjIsIDYxMjY1LCA2MTI2OCwgNjEyNzEsIAotICAgIDYxMjc1LCA2MTI3OSwgNjEyODMsIDYxMjg3LCA2MTI5MSwgNjEyOTUsIDYxMjk5LCA2MTMwMywgNjEzMDcsIDYxMzExLCAKLSAgICA2MTMxNSwgNjEzMTksIDYxMzIzLCA2MTMyNywgNjEzMzEsIDYxMzM1LCA2MTMzOSwgNjEzNDMsIDYxMzQ3LCA2MTM1MSwgCi0gICAgNjEzNTUsIDYxMzU5LCA2MTM2MywgNjEzNjcsIDYxMzcxLCA2MTM3NSwgNjEzNzksIDYxMzgzLCA2MTM4NywgNjEzOTEsIAotICAgIDYxMzk1LCA2MTM5OSwgNjE0MDMsIDYxNDA3LCA2MTQxMSwgNjE0MTUsIDYxNDE5LCA2MTQyMywgNjE0MjcsIDYxNDMxLCAKLSAgICA2MTQzNiwgNjE0NDEsIDYxNDQ2LCA2MTQ1MSwgNjE0NTUsIDYxNDYwLCA2MTQ2NSwgNjE0NzAsIDYxNDc1LCA2MTQ4MCwgCi0gICAgNjE0ODUsIDYxNDkwLCA2MTQ5NSwgNjE1MDAsIDYxNTA0LCA2MTUxMCwgNjE1MTYsIDYxNTIyLCA2MTUyOCwgNjE1MzQsIAotICAgIDYxNTQwLCA2MTU0NiwgNjE1NTIsIDYxNTU4LCA2MTU2NCwgNjE1NzAsIDYxNTc2LCA2MTU3OSwgNjE1ODIsIDYxNTg1LCAKLSAgICA2MTU5MCwgNjE1OTMsIDYxNTk2LCA2MTU5OSwgNjE2MDIsIDYxNjA1LCA2MTYwOCwgNjE2MTIsIDYxNjE2LCA2MTYyMCwgCi0gICAgNjE2MjQsIDYxNjI4LCA2MTYzMiwgNjE2MzYsIDYxNjQwLCA2MTY0NCwgNjE2NDgsIDYxNjUyLCA2MTY1NiwgNjE2NjAsIAotICAgIDYxNjYzLCA2MTY2NiwgNjE2NzAsIDYxNjc0LCA2MTY3OCwgNjE2ODIsIDYxNjg1LCA2MTY4OSwgNjE2OTMsIDYxNjk3LCAKLSAgICA2MTcwMSwgNjE3MDQsIDYxNzA4LCA2MTcxMiwgNjE3MTYsIDYxNzIwLCA2MTcyMywgNjE3MjcsIDYxNzMxLCA2MTczNCwgCi0gICAgNjE3MzgsIDYxNzQyLCA2MTc0NiwgNjE3NTAsIDYxNzU0LCA2MTc1OCwgNjE3NjIsIDAsIDYxNzY2LCA2MTc2OSwgNjE3NzIsIAotICAgIDYxNzc1LCA2MTc3OCwgNjE3ODEsIDYxNzg0LCA2MTc4NywgNjE3OTAsIDYxNzkzLCA2MTc5NiwgNjE3OTksIDYxODAyLCAKLSAgICA2MTgwNSwgNjE4MDgsIDYxODExLCA2MTgxNCwgNjE4MTcsIDYxODIwLCA2MTgyMywgNjE4MjYsIDYxODI5LCA2MTgzMiwgCi0gICAgNjE4MzUsIDYxODM4LCA2MTg0MSwgNjE4NDQsIDYxODQ3LCA2MTg1MCwgNjE4NTMsIDYxODU2LCA2MTg1OSwgNjE4NjIsIAotICAgIDYxODY1LCA2MTg2OCwgNjE4NzEsIDYxODc0LCA2MTg3NywgNjE4ODAsIDYxODgzLCA2MTg4NiwgNjE4ODksIDYxODkyLCAKLSAgICA2MTg5NSwgNjE4OTgsIDYxOTAxLCA2MTkwNCwgNjE5MDcsIDYxOTEwLCA2MTkxMywgNjE5MTYsIDYxOTE5LCA2MTkyMiwgCi0gICAgNjE5MjUsIDYxOTI4LCA2MTkzMSwgNjE5MzQsIDYxOTM3LCA2MTk0MCwgNjE5NDMsIDYxOTQ2LCA2MTk0OSwgNjE5NTIsIAotICAgIDYxOTU1LCA2MTk1OCwgNjE5NjEsIDYxOTY0LCA2MTk2NywgNjE5NzAsIDYxOTczLCA2MTk3NiwgNjE5NzksIDYxOTgyLCAKLSAgICA2MTk4NSwgNjE5ODgsIDYxOTkxLCA2MTk5NCwgNjE5OTcsIDYyMDAwLCA2MjAwMywgNjIwMDYsIDYyMDA5LCA2MjAxMiwgCi0gICAgNjIwMTUsIDYyMDE4LCA2MjAyMSwgNjIwMjQsIDYyMDI3LCA2MjAzMCwgNjIwMzgsIDYyMDQ1LCA2MjA1MiwgNjIwNTksIAotICAgIDYyMDY2LCA2MjA3MywgNjIwODAsIDYyMDg3LCA2MjA5NCwgNjIxMDEsIDYyMTA5LCA2MjExNywgNjIxMjUsIDYyMTMzLCAKLSAgICA2MjE0MSwgNjIxNDksIDYyMTU3LCA2MjE2NSwgNjIxNzMsIDYyMTgxLCA2MjE4OSwgNjIxOTcsIDYyMjA1LCA2MjIxMywgCi0gICAgNjIyMjEsIDYyMjI0LCA2MjIyNywgNjIyMzAsIDYyMjMyLCA2MjIzNSwgNjIyMzgsIDYyMjQxLCA2MjI0NiwgNjIyNTEsIAotICAgIDYyMjU0LCA2MjI2MSwgNjIyNjgsIDYyMjc1LCA2MjI4MiwgNjIyODUsIDYyMjkwLCA2MjI5MiwgNjIyOTYsIDYyMjk4LCAKLSAgICA2MjMwMCwgNjIzMDMsIDYyMzA2LCA2MjMwOSwgNjIzMTIsIDYyMzE1LCA2MjMxOCwgNjIzMjEsIDYyMzI2LCA2MjMzMSwgCi0gICAgNjIzMzQsIDYyMzM3LCA2MjM0MCwgNjIzNDMsIDYyMzQ2LCA2MjM0OSwgNjIzNTIsIDYyMzU2LCA2MjM1OSwgNjIzNjIsIAotICAgIDYyMzY1LCA2MjM2OCwgNjIzNzEsIDYyMzc1LCA2MjM3OCwgNjIzODEsIDYyMzg0LCA2MjM4OSwgNjIzOTQsIDYyMzk5LCAKLSAgICA2MjQwNCwgNjI0MDksIDYyNDE0LCA2MjQxOSwgNjI0MjQsIDYyNDI5LCA2MjQzNywgNjI0MzksIDYyNDQyLCA2MjQ0NSwgCi0gICAgNjI0NDgsIDYyNDUxLCA2MjQ1NiwgNjI0NjQsIDYyNDY3LCA2MjQ3MCwgNjI0NzQsIDYyNDc3LCA2MjQ4MCwgNjI0ODMsIAotICAgIDYyNDg4LCA2MjQ5MSwgNjI0OTQsIDYyNDk5LCA2MjUwMiwgNjI1MDUsIDYyNTEwLCA2MjUxMywgNjI1MTYsIDYyNTIxLCAKLSAgICA2MjUyNiwgNjI1MzEsIDYyNTM0LCA2MjUzNywgNjI1NDAsIDYyNTQzLCA2MjU0OSwgNjI1NTIsIDYyNTU1LCA2MjU1OCwgCi0gICAgNjI1NjAsIDYyNTYzLCA2MjU2NiwgNjI1NjksIDYyNTc0LCA2MjU3NywgNjI1ODAsIDYyNTgzLCA2MjU4NiwgNjI1ODksIAotICAgIDYyNTk0LCA2MjU5NywgNjI2MDAsIDYyNjAzLCA2MjYwNiwgNjI2MDksIDYyNjEyLCA2MjYxNSwgNjI2MTgsIDYyNjIxLCAKLSAgICA2MjYyNiwgNjI2MzAsIDYyNjM3LCA2MjY0NCwgNjI2NTEsIDYyNjU4LCA2MjY2NSwgNjI2NzIsIDYyNjc5LCA2MjY4NiwgCi0gICAgNjI2OTMsIDYyNzAxLCA2MjcwOSwgNjI3MTcsIDYyNzI1LCA2MjczMywgNjI3NDEsIDYyNzQ5LCA2Mjc1NywgNjI3NjUsIAotICAgIDYyNzczLCA2Mjc4MSwgNjI3ODksIDYyNzk3LCA2MjgwNSwgNjI4MTMsIDYyODIxLCA2MjgyOSwgNjI4MzcsIDYyODQ1LCAKLSAgICA2Mjg1MywgNjI4NjEsIDYyODY5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA1NjkzNCwgNTY5MzgsIDU2OTQyLCA1Njk0NywgNTY5NTIsIDU2OTU3LCA1Njk2MSwgNTY5NjUsIAorICAgIDU2OTY5LCA1Njk3NCwgNTY5NzksIDU2OTgzLCA1Njk4NywgNTY5OTEsIDU2OTk1LCA1NzAwMCwgNTcwMDUsIDU3MDEwLCAKKyAgICA1NzAxNSwgNTcwMTksIDU3MDIzLCA1NzAyOCwgNTcwMzMsIDU3MDM4LCA1NzA0MywgNTcwNDcsIDAsIDU3MDUxLCA1NzA1NSwgCisgICAgNTcwNTksIDU3MDYzLCA1NzA2NywgNTcwNzEsIDU3MDc1LCA1NzA4MCwgNTcwODUsIDU3MDg5LCA1NzA5NCwgNTcwOTksIAorICAgIDU3MTA4LCA1NzExMiwgNTcxMTYsIDU3MTIwLCA1NzEyNywgNTcxMzEsIDU3MTM2LCA1NzE0MSwgNTcxNDUsIDU3MTQ5LCAKKyAgICA1NzE1NSwgNTcxNjAsIDU3MTY1LCA1NzE3MCwgNTcxNzUsIDU3MTc5LCA1NzE4MywgNTcxODcsIDU3MTkxLCA1NzE5NSwgCisgICAgNTcyMDAsIDU3MjA1LCA1NzIwOSwgNTcyMTMsIDU3MjE4LCA1NzIyMywgNTcyMjgsIDU3MjMyLCA1NzIzNiwgNTcyNDEsIAorICAgIDU3MjQ2LCA1NzI1MiwgNTcyNTgsIDU3MjYyLCA1NzI2OCwgNTcyNzQsIDU3Mjc4LCA1NzI4NCwgNTcyOTAsIDU3Mjk1LCAKKyAgICA1NzMwMCwgNTczMDQsIDU3MzEwLCA1NzMxNCwgNTczMTgsIDU3MzI0LCA1NzMzMCwgNTczMzUsIDU3MzQwLCA1NzM0NCwgCisgICAgNTczNDgsIDU3MzU2LCA1NzM2MiwgNTczNjgsIDU3Mzc0LCA1NzM3OSwgNTczODQsIDU3Mzg5LCA1NzM5NSwgNTczOTksIAorICAgIDU3NDA1LCA1NzQwOSwgNTc0MTMsIDU3NDE5LCA1NzQyNSwgNTc0MzEsIDU3NDM3LCA1NzQ0MywgNTc0NDksIDU3NDU1LCAKKyAgICA1NzQ2MSwgNTc0NjcsIDU3NDczLCA1NzQ3OSwgNTc0ODUsIDU3NDg5LCA1NzQ5NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgNTc1MDEsIDU3NTA0LCA1NzUwOCwgNTc1MTIsIDU3NTE2LCA1NzUyMCwgNTc1MjMsIDU3NTI2LCAKKyAgICA1NzUzMCwgNTc1MzQsIDU3NTM4LCA1NzU0MiwgNTc1NDUsIDU3NTUwLCA1NzU1NCwgNTc1NTgsIDU3NTYyLCA1NzU2NywgCisgICAgNTc1NzEsIDU3NTc1LCA1NzU3OSwgNTc1ODMsIDU3NTg5LCA1NzU5NSwgNTc1OTksIDU3NjAzLCA1NzYwNywgNTc2MTEsIAorICAgIDU3NjE1LCA1NzYxOSwgNTc2MjMsIDU3NjI3LCA1NzYzMSwgNTc2MzUsIDU3NjM5LCA1NzY0NSwgNTc2NDksIDU3NjUzLCAKKyAgICA1NzY1NywgNTc2NjEsIDU3NjY1LCA1NzY2OSwgNTc2NzMsIDU3Njc3LCA1NzY4MSwgNTc2ODUsIDU3Njg5LCA1NzY5MywgCisgICAgNTc2OTcsIDU3NzAxLCA1NzcwNSwgNTc3MDksIDU3NzE1LCA1NzcyMSwgNTc3MjYsIDU3NzMxLCA1NzczNSwgNTc3MzksIAorICAgIDU3NzQzLCA1Nzc0NywgNTc3NTEsIDU3NzU1LCA1Nzc1OSwgNTc3NjMsIDU3NzY3LCA1Nzc3MSwgNTc3NzUsIDU3Nzc5LCAKKyAgICA1Nzc4MywgNTc3ODcsIDU3NzkxLCA1Nzc5NSwgNTc3OTksIDU3ODAzLCA1NzgwNywgNTc4MTEsIDU3ODE1LCA1NzgxOSwgCisgICAgNTc4MjMsIDU3ODI3LCA1NzgzMywgNTc4MzcsIDU3ODQxLCA1Nzg0NSwgNTc4NDksIDU3ODUzLCA1Nzg1NywgNTc4NjEsIAorICAgIDU3ODY1LCA1Nzg3MCwgNTc4NzcsIDU3ODgxLCA1Nzg4NSwgNTc4ODksIDU3ODkzLCA1Nzg5NywgNTc5MDEsIDU3OTA1LCAKKyAgICA1NzkwOSwgNTc5MTMsIDU3OTE3LCA1NzkyMSwgNTc5MjUsIDU3OTMyLCA1NzkzNiwgNTc5NDIsIDU3OTQ2LCA1Nzk1MCwgCisgICAgNTc5NTQsIDU3OTU4LCA1Nzk2MiwgNTc5NjUsIDU3OTY5LCA1Nzk3MywgNTc5NzcsIDU3OTgxLCA1Nzk4NSwgNTc5ODksIAorICAgIDU3OTkzLCA1Nzk5NywgNTgwMDEsIDU4MDA1LCA1ODAwOSwgNTgwMTMsIDU4MDE3LCA1ODAyMSwgNTgwMjUsIDU4MDI5LCAKKyAgICA1ODAzMywgNTgwMzcsIDU4MDQxLCA1ODA0NSwgNTgwNDksIDU4MDUzLCA1ODA1NywgNTgwNjEsIDU4MDY1LCA1ODA2OSwgCisgICAgNTgwNzMsIDU4MDc3LCA1ODA4MSwgNTgwODUsIDU4MDg5LCA1ODA5MywgNTgwOTksIDU4MTAzLCA1ODEwNywgNTgxMTEsIAorICAgIDU4MTE1LCA1ODExOSwgNTgxMjMsIDU4MTI3LCA1ODEzMSwgNTgxMzUsIDU4MTM5LCA1ODE0MywgNTgxNDcsIDU4MTUxLCAKKyAgICA1ODE1NSwgNTgxNTksIDU4MTYzLCA1ODE2NywgNTgxNzEsIDU4MTc1LCA1ODE3OSwgNTgxODMsIDU4MTg3LCA1ODE5MSwgCisgICAgNTgxOTUsIDU4MTk5LCA1ODIwMywgNTgyMDcsIDU4MjE1LCA1ODIxOSwgNTgyMjMsIDU4MjI3LCA1ODIzMSwgNTgyMzUsIAorICAgIDU4MjQxLCA1ODI0NSwgNTgyNDksIDU4MjUzLCA1ODI1NywgNTgyNjEsIDU4MjY1LCA1ODI2OSwgNTgyNzMsIDU4Mjc3LCAKKyAgICA1ODI4MSwgNTgyODUsIDU4Mjg5LCA1ODI5MywgNTgyOTksIDU4MzAzLCA1ODMwNywgNTgzMTEsIDU4MzE1LCA1ODMxOSwgCisgICAgNTgzMjMsIDU4MzI3LCA1ODMzMSwgNTgzMzUsIDU4MzM5LCA1ODM0MywgNTgzNDcsIDU4MzUxLCA1ODM1NSwgNTgzNTksIAorICAgIDU4MzYzLCA1ODM2NywgNTgzNzEsIDU4Mzc1LCA1ODM3OSwgNTgzODMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU4Mzg3LCA1ODM5NiwgNTg0MDQsIAorICAgIDU4NDE2LCA1ODQyNywgNTg0MzUsIDU4NDQ0LCA1ODQ1MywgNTg0NjMsIDU4NDc1LCA1ODQ4NywgNTg0OTksIDAsIDAsIDAsIAorICAgIDAsIDU4NTA1LCA1ODUwOCwgNTg1MTEsIDU4NTE2LCA1ODUxOSwgNTg1MjYsIDU4NTMwLCA1ODUzNCwgNTg1MzgsIDU4NTQyLCAKKyAgICA1ODU0NiwgNTg1NTEsIDU4NTU2LCA1ODU2MCwgNTg1NjQsIDU4NTY5LCA1ODU3NCwgNTg1NzksIDU4NTg0LCA1ODU4NywgCisgICAgNTg1OTAsIDU4NTk2LCA1ODYwMiwgNTg2MDcsIDU4NjEyLCA1ODYxOSwgNTg2MjYsIDU4NjMwLCA1ODYzNCwgNTg2MzgsIAorICAgIDU4NjQ2LCA1ODY1MiwgNTg2NTksIDU4NjY0LCA1ODY2OSwgNTg2NzQsIDU4Njc5LCA1ODY4NCwgNTg2ODksIDU4Njk0LCAKKyAgICA1ODY5OSwgNTg3MDQsIDU4NzA5LCA1ODcxNCwgNTg3MTksIDU4NzI0LCA1ODcyOSwgNTg3MzUsIDU4NzQwLCA1ODc0NCwgCisgICAgNTg3NTAsIDU4NzYxLCA1ODc3MSwgNTg3ODYsIDU4Nzk2LCA1ODgwMCwgNTg4MDksIDU4ODE1LCA1ODgyMSwgNTg4MjcsIAorICAgIDU4ODMyLCA1ODgzNSwgNTg4NDAsIDU4ODQ0LCAwLCA1ODg1MCwgNTg4NTQsIDU4ODU3LCA1ODg2MSwgNTg4NjQsIDU4ODY4LCAKKyAgICA1ODg3MSwgNTg4NzUsIDU4ODc4LCA1ODg4MiwgNTg4ODUsIDU4ODg4LCA1ODg5MiwgNTg4OTYsIDU4OTAwLCA1ODkwNCwgCisgICAgNTg5MDgsIDU4OTEyLCA1ODkxNiwgNTg5MjAsIDU4OTI0LCA1ODkyOCwgNTg5MzIsIDU4OTM2LCA1ODk0MCwgNTg5NDQsIAorICAgIDU4OTQ4LCA1ODk1MiwgNTg5NTYsIDU4OTYwLCA1ODk2NCwgNTg5NjgsIDU4OTcyLCA1ODk3NiwgNTg5ODAsIDU4OTg1LCAKKyAgICA1ODk4OSwgNTg5OTMsIDU4OTk3LCA1OTAwMSwgNTkwMDQsIDU5MDA4LCA1OTAxMSwgNTkwMTUsIDU5MDE5LCA1OTAyMywgCisgICAgNTkwMjcsIDU5MDMwLCA1OTAzNCwgNTkwMzcsIDU5MDQxLCA1OTA0NSwgNTkwNDksIDU5MDUzLCA1OTA1NywgNTkwNjEsIAorICAgIDU5MDY1LCA1OTA2OSwgNTkwNzMsIDU5MDc3LCA1OTA4MSwgNTkwODUsIDU5MDg4LCA1OTA5MiwgNTkwOTYsIDU5MTAwLCAKKyAgICA1OTEwNCwgNTkxMDgsIDU5MTExLCA1OTExNiwgNTkxMjAsIDU5MTI1LCA1OTEyOSwgNTkxMzIsIDU5MTM2LCA1OTE0MCwgCisgICAgNTkxNDQsIDU5MTQ4LCA1OTE1MywgNTkxNTcsIDU5MTYxLCA1OTE2NSwgNTkxNjksIDU5MTcyLCA1OTE3NiwgNTkxODAsIDAsIAorICAgIDAsIDU5MTg1LCA1OTE5MywgNTkyMDEsIDU5MjA4LCA1OTIxNSwgNTkyMTksIDU5MjI1LCA1OTIzMCwgNTkyMzUsIDU5MjM5LCAKKyAgICA1OTI0MiwgNTkyNDYsIDU5MjQ5LCA1OTI1MywgNTkyNTYsIDU5MjYwLCA1OTI2MywgNTkyNjcsIDU5MjcwLCA1OTI3MywgCisgICAgNTkyNzcsIDU5MjgxLCA1OTI4NSwgNTkyODksIDU5MjkzLCA1OTI5NywgNTkzMDEsIDU5MzA1LCA1OTMwOSwgNTkzMTMsIAorICAgIDU5MzE3LCA1OTMyMSwgNTkzMjUsIDU5MzI5LCA1OTMzMywgNTkzMzcsIDU5MzQxLCA1OTM0NSwgNTkzNDksIDU5MzUzLCAKKyAgICA1OTM1NywgNTkzNjEsIDU5MzY1LCA1OTM3MCwgNTkzNzQsIDU5Mzc4LCA1OTM4MiwgNTkzODYsIDU5Mzg5LCA1OTM5MywgCisgICAgNTkzOTYsIDU5NDAwLCA1OTQwNCwgNTk0MDgsIDU5NDEyLCA1OTQxNSwgNTk0MTksIDU5NDIyLCA1OTQyNiwgNTk0MzAsIAorICAgIDU5NDM0LCA1OTQzOCwgNTk0NDIsIDU5NDQ2LCA1OTQ1MCwgNTk0NTQsIDU5NDU4LCA1OTQ2MiwgNTk0NjYsIDU5NDcwLCAKKyAgICA1OTQ3MywgNTk0NzcsIDU5NDgxLCA1OTQ4NSwgNTk0ODksIDU5NDkzLCA1OTQ5NiwgNTk1MDEsIDU5NTA1LCA1OTUxMCwgCisgICAgNTk1MTQsIDU5NTE3LCA1OTUyMSwgNTk1MjUsIDU5NTI5LCA1OTUzMywgNTk1MzgsIDU5NTQyLCA1OTU0NiwgNTk1NTAsIAorICAgIDU5NTU0LCA1OTU1NywgNTk1NjEsIDU5NTY1LCA1OTU3MCwgNTk1NzQsIDU5NTc4LCA1OTU4MiwgNTk1ODYsIDU5NTkxLCAKKyAgICA1OTU5OCwgNTk2MDIsIDU5NjA4LCAwLCAwLCAwLCAwLCAwLCA1OTYxMywgNTk2MTcsIDU5NjIxLCA1OTYyNCwgNTk2MjgsIAorICAgIDU5NjMyLCA1OTYzNiwgNTk2MzksIDU5NjQyLCA1OTY0NiwgNTk2NTAsIDU5NjU0LCA1OTY1OCwgNTk2NjIsIDU5NjY2LCAKKyAgICA1OTY3MCwgNTk2NzQsIDU5Njc4LCA1OTY4MSwgNTk2ODUsIDU5Njg5LCA1OTY5MiwgNTk2OTUsIDU5Njk4LCA1OTcwMSwgCisgICAgNTk3MDUsIDU5NzA5LCA1OTcxMywgNTk3MTcsIDU5NzIxLCA1OTcyNSwgNTk3MjksIDU5NzMzLCA1OTczNywgNTk3NDEsIAorICAgIDU5NzQ0LCA1OTc0NywgNTk3NTEsIDU5NzU1LCA1OTc1OSwgNTk3NjMsIDAsIDAsIDAsIDU5NzY3LCA1OTc3MSwgNTk3NzUsIAorICAgIDU5Nzc5LCA1OTc4MywgNTk3ODcsIDU5NzkxLCA1OTc5NSwgNTk3OTksIDU5ODAzLCA1OTgwNywgNTk4MTEsIDU5ODE1LCAKKyAgICA1OTgxOSwgNTk4MjMsIDU5ODI3LCA1OTgzMSwgNTk4MzUsIDU5ODM5LCA1OTg0MywgNTk4NDcsIDU5ODUxLCA1OTg1NSwgCisgICAgNTk4NTksIDU5ODYzLCA1OTg2NywgNTk4NzEsIDU5ODc1LCA1OTg3OSwgNTk4ODMsIDU5ODg3LCA1OTg5MCwgNTk4OTQsIAorICAgIDU5ODk3LCA1OTkwMSwgNTk5MDUsIDU5OTA4LCA1OTkxMiwgNTk5MTYsIDU5OTE5LCA1OTkyMywgNTk5MjcsIDU5OTMxLCAKKyAgICA1OTkzNSwgNTk5MzgsIDU5OTQyLCA1OTk0NiwgNTk5NTAsIDU5OTU0LCA1OTk1OCwgNTk5NjIsIDU5OTY1LCA1OTk2OCwgCisgICAgNTk5NzIsIDU5OTc2LCA1OTk4MCwgNTk5ODQsIDU5OTg4LCA1OTk5MiwgNTk5OTYsIDYwMDAwLCA2MDAwNCwgNjAwMDgsIAorICAgIDYwMDEyLCA2MDAxNiwgNjAwMjAsIDYwMDI0LCA2MDAyOCwgNjAwMzIsIDYwMDM2LCA2MDA0MCwgNjAwNDQsIDYwMDQ4LCAKKyAgICA2MDA1MiwgNjAwNTYsIDYwMDYwLCA2MDA2NCwgNjAwNjgsIDYwMDcyLCA2MDA3NiwgNjAwODAsIDYwMDg0LCA2MDA4OCwgCisgICAgNjAwOTIsIDYwMDk2LCA2MDEwMCwgNjAxMDQsIDYwMTA4LCA2MDExMiwgNjAxMTYsIDYwMTIwLCA2MDEyNCwgNjAxMjgsIAorICAgIDYwMTMyLCAwLCA2MDEzNiwgNjAxNDIsIDYwMTQ4LCA2MDE1MywgNjAxNTgsIDYwMTYzLCA2MDE2OSwgNjAxNzUsIDYwMTgxLCAKKyAgICA2MDE4NywgNjAxOTMsIDYwMTk5LCA2MDIwNSwgNjAyMTEsIDYwMjE3LCA2MDIyMywgNjAyMjksIDYwMjMzLCA2MDIzNywgCisgICAgNjAyNDEsIDYwMjQ1LCA2MDI0OSwgNjAyNTMsIDYwMjU3LCA2MDI2MSwgNjAyNjUsIDYwMjY5LCA2MDI3MywgNjAyNzcsIAorICAgIDYwMjgxLCA2MDI4NSwgNjAyODksIDYwMjkzLCA2MDI5NywgNjAzMDEsIDYwMzA1LCA2MDMwOSwgNjAzMTQsIDYwMzE5LCAKKyAgICA2MDMyNCwgNjAzMjksIDYwMzMzLCA2MDMzNywgMCwgMCwgMCwgMCwgMCwgNjAzNDEsIDYwMzQ2LCA2MDM1MSwgNjAzNTYsIAorICAgIDYwMzYxLCA2MDM2NiwgNjAzNzEsIDYwMzc2LCA2MDM4MSwgNjAzODYsIDYwMzkxLCA2MDM5NiwgNjA0MDEsIDYwNDA2LCAKKyAgICA2MDQxMSwgNjA0MTYsIDYwNDIwLCA2MDQyNSwgNjA0MjksIDYwNDM0LCA2MDQzOSwgNjA0NDQsIDYwNDQ5LCA2MDQ1NCwgCisgICAgNjA0NTksIDYwNDY0LCA2MDQ2OSwgNjA0NzQsIDYwNDc5LCA2MDQ4NCwgNjA0ODksIDYwNDk0LCA2MDQ5OSwgNjA1MDQsIAorICAgIDYwNTA5LCA2MDUxNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjA1MTksIDYwNTI0LCA2MDUyOSwgCisgICAgNjA1MzQsIDYwNTM4LCA2MDU0MywgNjA1NDcsIDYwNTUyLCA2MDU1NywgNjA1NjIsIDYwNTY3LCA2MDU3MiwgNjA1NzYsIAorICAgIDYwNTgxLCA2MDU4NiwgNjA1OTEsIDYwNTk2LCA2MDYwMCwgNjA2MDQsIDYwNjA4LCA2MDYxMiwgNjA2MTYsIDYwNjIwLCAKKyAgICA2MDYyNCwgNjA2MjgsIDYwNjMyLCA2MDYzNiwgNjA2NDAsIDYwNjQ0LCA2MDY0OCwgNjA2NTIsIDYwNjU3LCA2MDY2MiwgCisgICAgNjA2NjcsIDYwNjcyLCA2MDY3NywgNjA2ODIsIDYwNjg3LCA2MDY5MiwgNjA2OTcsIDYwNzAyLCA2MDcwNywgNjA3MTIsIAorICAgIDYwNzE3LCA2MDcyMiwgNjA3MjcsIDYwNzMzLCAwLCA2MDc0MCwgNjA3NDMsIDYwNzQ2LCA2MDc0OSwgNjA3NTIsIDYwNzU1LCAKKyAgICA2MDc1OCwgNjA3NjEsIDYwNzY0LCA2MDc2NywgNjA3NzEsIDYwNzc1LCA2MDc3OSwgNjA3ODMsIDYwNzg3LCA2MDc5MSwgCisgICAgNjA3OTUsIDYwNzk5LCA2MDgwMywgNjA4MDcsIDYwODExLCA2MDgxNSwgNjA4MTksIDYwODIzLCA2MDgyNywgNjA4MzEsIAorICAgIDYwODM1LCA2MDgzOSwgNjA4NDMsIDYwODQ3LCA2MDg1MSwgNjA4NTUsIDYwODU5LCA2MDg2MywgNjA4NjcsIDYwODcxLCAKKyAgICA2MDg3NSwgNjA4NzksIDYwODgzLCA2MDg4NywgNjA4OTEsIDYwOTAwLCA2MDkwOSwgNjA5MTgsIDYwOTI3LCA2MDkzNiwgCisgICAgNjA5NDUsIDYwOTU0LCA2MDk2MywgNjA5NjYsIDYwOTcxLCA2MDk3NiwgNjA5ODEsIDYwOTg2LCA2MDk5MSwgNjA5OTYsIAorICAgIDYxMDAxLCA2MTAwNiwgNjEwMTEsIDYxMDE1LCA2MTAyMCwgNjEwMjUsIDYxMDMwLCA2MTAzNSwgNjEwNDAsIDYxMDQ0LCAKKyAgICA2MTA0OCwgNjEwNTIsIDYxMDU2LCA2MTA2MCwgNjEwNjQsIDYxMDY4LCA2MTA3MiwgNjEwNzYsIDYxMDgwLCA2MTA4NCwgCisgICAgNjEwODgsIDYxMDkyLCA2MTA5NiwgNjExMDEsIDYxMTA2LCA2MTExMSwgNjExMTYsIDYxMTIxLCA2MTEyNiwgNjExMzEsIAorICAgIDYxMTM2LCA2MTE0MSwgNjExNDYsIDYxMTUxLCA2MTE1NiwgNjExNjEsIDYxMTY2LCA2MTE3MiwgNjExNzgsIDYxMTgzLCAKKyAgICA2MTE4OCwgNjExOTEsIDYxMTk0LCA2MTE5NywgNjEyMDAsIDYxMjAzLCA2MTIwNiwgNjEyMDksIDYxMjEyLCA2MTIxNSwgCisgICAgNjEyMTksIDYxMjIzLCA2MTIyNywgNjEyMzEsIDYxMjM1LCA2MTIzOSwgNjEyNDMsIDYxMjQ3LCA2MTI1MSwgNjEyNTUsIAorICAgIDYxMjU5LCA2MTI2MywgNjEyNjcsIDYxMjcxLCA2MTI3NSwgNjEyNzksIDYxMjgzLCA2MTI4NywgNjEyOTEsIDYxMjk1LCAKKyAgICA2MTI5OSwgNjEzMDMsIDYxMzA3LCA2MTMxMSwgNjEzMTUsIDYxMzE5LCA2MTMyMywgNjEzMjcsIDYxMzMxLCA2MTMzNSwgCisgICAgNjEzMzksIDYxMzQzLCA2MTM0NywgNjEzNTEsIDYxMzU1LCA2MTM1OSwgNjEzNjMsIDYxMzY3LCA2MTM3MSwgNjEzNzUsIAorICAgIDYxMzgwLCA2MTM4NSwgNjEzOTAsIDYxMzk1LCA2MTM5OSwgNjE0MDQsIDYxNDA5LCA2MTQxNCwgNjE0MTksIDYxNDI0LCAKKyAgICA2MTQyOSwgNjE0MzQsIDYxNDM5LCA2MTQ0NCwgNjE0NDgsIDYxNDU0LCA2MTQ2MCwgNjE0NjYsIDYxNDcyLCA2MTQ3OCwgCisgICAgNjE0ODQsIDYxNDkwLCA2MTQ5NiwgNjE1MDIsIDYxNTA4LCA2MTUxNCwgNjE1MjAsIDYxNTIzLCA2MTUyNiwgNjE1MjksIAorICAgIDYxNTM0LCA2MTUzNywgNjE1NDAsIDYxNTQzLCA2MTU0NiwgNjE1NDksIDYxNTUyLCA2MTU1NiwgNjE1NjAsIDYxNTY0LCAKKyAgICA2MTU2OCwgNjE1NzIsIDYxNTc2LCA2MTU4MCwgNjE1ODQsIDYxNTg4LCA2MTU5MiwgNjE1OTYsIDYxNjAwLCA2MTYwNCwgCisgICAgNjE2MDcsIDYxNjEwLCA2MTYxNCwgNjE2MTgsIDYxNjIyLCA2MTYyNiwgNjE2MjksIDYxNjMzLCA2MTYzNywgNjE2NDEsIAorICAgIDYxNjQ1LCA2MTY0OCwgNjE2NTIsIDYxNjU2LCA2MTY2MCwgNjE2NjQsIDYxNjY3LCA2MTY3MSwgNjE2NzUsIDYxNjc4LCAKKyAgICA2MTY4MiwgNjE2ODYsIDYxNjkwLCA2MTY5NCwgNjE2OTgsIDYxNzAyLCA2MTcwNiwgMCwgNjE3MTAsIDYxNzEzLCA2MTcxNiwgCisgICAgNjE3MTksIDYxNzIyLCA2MTcyNSwgNjE3MjgsIDYxNzMxLCA2MTczNCwgNjE3MzcsIDYxNzQwLCA2MTc0MywgNjE3NDYsIAorICAgIDYxNzQ5LCA2MTc1MiwgNjE3NTUsIDYxNzU4LCA2MTc2MSwgNjE3NjQsIDYxNzY3LCA2MTc3MCwgNjE3NzMsIDYxNzc2LCAKKyAgICA2MTc3OSwgNjE3ODIsIDYxNzg1LCA2MTc4OCwgNjE3OTEsIDYxNzk0LCA2MTc5NywgNjE4MDAsIDYxODAzLCA2MTgwNiwgCisgICAgNjE4MDksIDYxODEyLCA2MTgxNSwgNjE4MTgsIDYxODIxLCA2MTgyNCwgNjE4MjcsIDYxODMwLCA2MTgzMywgNjE4MzYsIAorICAgIDYxODM5LCA2MTg0MiwgNjE4NDUsIDYxODQ4LCA2MTg1MSwgNjE4NTQsIDYxODU3LCA2MTg2MCwgNjE4NjMsIDYxODY2LCAKKyAgICA2MTg2OSwgNjE4NzIsIDYxODc1LCA2MTg3OCwgNjE4ODEsIDYxODg0LCA2MTg4NywgNjE4OTAsIDYxODkzLCA2MTg5NiwgCisgICAgNjE4OTksIDYxOTAyLCA2MTkwNSwgNjE5MDgsIDYxOTExLCA2MTkxNCwgNjE5MTcsIDYxOTIwLCA2MTkyMywgNjE5MjYsIAorICAgIDYxOTI5LCA2MTkzMiwgNjE5MzUsIDYxOTM4LCA2MTk0MSwgNjE5NDQsIDYxOTQ3LCA2MTk1MCwgNjE5NTMsIDYxOTU2LCAKKyAgICA2MTk1OSwgNjE5NjIsIDYxOTY1LCA2MTk2OCwgNjE5NzEsIDYxOTc0LCA2MTk4MiwgNjE5ODksIDYxOTk2LCA2MjAwMywgCisgICAgNjIwMTAsIDYyMDE3LCA2MjAyNCwgNjIwMzEsIDYyMDM4LCA2MjA0NSwgNjIwNTMsIDYyMDYxLCA2MjA2OSwgNjIwNzcsIAorICAgIDYyMDg1LCA2MjA5MywgNjIxMDEsIDYyMTA5LCA2MjExNywgNjIxMjUsIDYyMTMzLCA2MjE0MSwgNjIxNDksIDYyMTU3LCAKKyAgICA2MjE2NSwgNjIxNjgsIDYyMTcxLCA2MjE3NCwgNjIxNzYsIDYyMTc5LCA2MjE4MiwgNjIxODUsIDYyMTkwLCA2MjE5NSwgCisgICAgNjIxOTgsIDYyMjA1LCA2MjIxMiwgNjIyMTksIDYyMjI2LCA2MjIyOSwgNjIyMzQsIDYyMjM2LCA2MjI0MCwgNjIyNDIsIAorICAgIDYyMjQ0LCA2MjI0NywgNjIyNTAsIDYyMjUzLCA2MjI1NiwgNjIyNTksIDYyMjYyLCA2MjI2NSwgNjIyNzAsIDYyMjc1LCAKKyAgICA2MjI3OCwgNjIyODEsIDYyMjg0LCA2MjI4NywgNjIyOTAsIDYyMjkzLCA2MjI5NiwgNjIzMDAsIDYyMzAzLCA2MjMwNiwgCisgICAgNjIzMDksIDYyMzEyLCA2MjMxNSwgNjIzMTksIDYyMzIyLCA2MjMyNSwgNjIzMjgsIDYyMzMzLCA2MjMzOCwgNjIzNDMsIAorICAgIDYyMzQ4LCA2MjM1MywgNjIzNTgsIDYyMzYzLCA2MjM2OCwgNjIzNzMsIDYyMzgxLCA2MjM4MywgNjIzODYsIDYyMzg5LCAKKyAgICA2MjM5MiwgNjIzOTUsIDYyNDAwLCA2MjQwOCwgNjI0MTEsIDYyNDE0LCA2MjQxOCwgNjI0MjEsIDYyNDI0LCA2MjQyNywgCisgICAgNjI0MzIsIDYyNDM1LCA2MjQzOCwgNjI0NDMsIDYyNDQ2LCA2MjQ0OSwgNjI0NTQsIDYyNDU3LCA2MjQ2MCwgNjI0NjUsIAorICAgIDYyNDcwLCA2MjQ3NSwgNjI0NzgsIDYyNDgxLCA2MjQ4NCwgNjI0ODcsIDYyNDkzLCA2MjQ5NiwgNjI0OTksIDYyNTAyLCAKKyAgICA2MjUwNCwgNjI1MDcsIDYyNTEwLCA2MjUxMywgNjI1MTgsIDYyNTIxLCA2MjUyNCwgNjI1MjcsIDYyNTMwLCA2MjUzMywgCisgICAgNjI1MzgsIDYyNTQxLCA2MjU0NCwgNjI1NDcsIDYyNTUwLCA2MjU1MywgNjI1NTYsIDYyNTU5LCA2MjU2MiwgNjI1NjUsIAorICAgIDYyNTcwLCA2MjU3NCwgNjI1ODEsIDYyNTg4LCA2MjU5NSwgNjI2MDIsIDYyNjA5LCA2MjYxNiwgNjI2MjMsIDYyNjMwLCAKKyAgICA2MjYzNywgNjI2NDUsIDYyNjUzLCA2MjY2MSwgNjI2NjksIDYyNjc3LCA2MjY4NSwgNjI2OTMsIDYyNzAxLCA2MjcwOSwgCisgICAgNjI3MTcsIDYyNzI1LCA2MjczMywgNjI3NDEsIDYyNzQ5LCA2Mjc1NywgNjI3NjUsIDYyNzczLCA2Mjc4MSwgNjI3ODksIAorICAgIDYyNzk3LCA2MjgwNSwgNjI4MTMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDYyODcyLCA2Mjg4MSwgNjI4OTAsIDYyOTAxLCA2MjkwOCwgNjI5MTMsIDYyOTE4LCA2MjkyNSwgNjI5MzIsIDYyOTM4LCAKLSAgICA2Mjk0MywgNjI5NDgsIDYyOTUzLCA2Mjk1OCwgNjI5NjUsIDYyOTcwLCA2Mjk3NSwgNjI5ODAsIDYyOTkxLCA2Mjk5NiwgCi0gICAgNjMwMDEsIDYzMDA4LCA2MzAxMywgNjMwMjAsIDYzMDI1LCA2MzAzMCwgNjMwMzcsIDYzMDQ0LCA2MzA1MSwgNjMwNjAsIAotICAgIDYzMDY5LCA2MzA3NCwgNjMwNzksIDYzMDg0LCA2MzA5MSwgNjMwOTYsIDYzMTA2LCA2MzExMywgNjMxMTgsIDYzMTIzLCAKLSAgICA2MzEyOCwgNjMxMzMsIDYzMTM4LCA2MzE0MywgNjMxNTIsIDYzMTU5LCA2MzE2NiwgNjMxNzEsIDYzMTc4LCA2MzE4MywgCi0gICAgNjMxOTAsIDYzMTk5LCA2MzIxMCwgNjMyMTUsIDYzMjI0LCA2MzIyOSwgNjMyMzYsIDYzMjQ1LCA2MzI1NCwgNjMyNTksIAotICAgIDYzMjY0LCA2MzI3MSwgNjMyNzcsIDYzMjg0LCA2MzI5MSwgNjMyOTUsIDYzMjk5LCA2MzMwMiwgNjMzMDYsIDYzMzEwLCAKLSAgICA2MzMxNCwgNjMzMTgsIDYzMzIyLCA2MzMyNiwgNjMzMzAsIDYzMzMzLCA2MzMzNywgNjMzNDEsIDYzMzQ1LCA2MzM0OSwgCi0gICAgNjMzNTMsIDYzMzU3LCA2MzM2MCwgNjMzNjQsIDYzMzY4LCA2MzM3MSwgNjMzNzUsIDYzMzc5LCA2MzM4MywgNjMzODcsIAotICAgIDYzMzkxLCA2MzM5NSwgNjMzOTksIDYzNDAzLCA2MzQwNywgNjM0MTEsIDYzNDE1LCA2MzQxOSwgNjM0MjMsIDYzNDI3LCAKLSAgICA2MzQzMSwgNjM0MzUsIDYzNDM5LCA2MzQ0MywgNjM0NDcsIDYzNDUxLCA2MzQ1NSwgNjM0NTksIDYzNDYzLCA2MzQ2NywgCi0gICAgNjM0NzEsIDYzNDc1LCA2MzQ3OSwgNjM0ODMsIDYzNDg3LCA2MzQ5MSwgNjM0OTUsIDYzNDk5LCA2MzUwMywgNjM1MDcsIAotICAgIDYzNTExLCA2MzUxNSwgNjM1MTksIDYzNTIzLCA2MzUyNywgNjM1MzEsIDYzNTM1LCA2MzUzOSwgNjM1NDMsIDYzNTQ3LCAKLSAgICA2MzU1MCwgNjM1NTQsIDYzNTU4LCA2MzU2MiwgNjM1NjYsIDYzNTcwLCA2MzU3NCwgNjM1NzgsIDYzNTgyLCA2MzU4NiwgCi0gICAgNjM1OTAsIDYzNTk0LCA2MzU5OCwgNjM2MDIsIDYzNjA2LCA2MzYxMCwgNjM2MTQsIDYzNjE4LCA2MzYyMiwgNjM2MjYsIAotICAgIDYzNjMwLCA2MzYzNCwgNjM2MzgsIDYzNjQyLCA2MzY0NiwgNjM2NTAsIDYzNjU0LCA2MzY1OCwgNjM2NjIsIDYzNjY2LCAKLSAgICA2MzY3MCwgNjM2NzQsIDYzNjc4LCA2MzY4MiwgNjM2ODYsIDYzNjkwLCA2MzY5NCwgNjM2OTgsIDYzNzAyLCA2MzcwNiwgCi0gICAgNjM3MTAsIDYzNzE0LCA2MzcxOCwgNjM3MjIsIDYzNzI2LCA2MzczMCwgNjM3MzQsIDYzNzM4LCA2Mzc0MiwgNjM3NDYsIAotICAgIDYzNzUwLCA2Mzc1NCwgNjM3NTgsIDYzNzYyLCA2Mzc2NiwgNjM3NzAsIDYzNzc0LCA2Mzc3OCwgNjM3ODIsIDYzNzg2LCAKLSAgICA2Mzc5MCwgNjM3OTQsIDYzNzk4LCA2MzgwMiwgNjM4MDYsIDYzODEwLCA2MzgxNCwgNjM4MTgsIDYzODIyLCA2MzgyNiwgCi0gICAgNjM4MzAsIDYzODM0LCA2MzgzOCwgNjM4NDIsIDYzODQ2LCA2Mzg1MCwgNjM4NTQsIDYzODU4LCA2Mzg2MiwgNjM4NjYsIAotICAgIDYzODcwLCA2Mzg3NCwgNjM4NzgsIDYzODgyLCA2Mzg4NiwgNjM4OTAsIDYzODk0LCA2Mzg5OCwgNjM5MDIsIDYzOTA2LCAKLSAgICA2MzkxMCwgNjM5MTQsIDYzOTE4LCA2MzkyMiwgNjM5MjYsIDYzOTMwLCA2MzkzNCwgNjM5MzgsIDYzOTQyLCA2Mzk0NiwgCi0gICAgNjM5NTAsIDYzOTU0LCA2Mzk1OCwgNjM5NjIsIDYzOTY2LCA2Mzk3MCwgNjM5NzQsIDYzOTc4LCA2Mzk4MiwgNjM5ODYsIAotICAgIDYzOTkwLCA2Mzk5NCwgNjM5OTgsIDY0MDAyLCA2NDAwNiwgNjQwMTAsIDY0MDE0LCA2NDAxOCwgNjQwMjEsIDY0MDI1LCAKLSAgICA2NDAyOSwgNjQwMzMsIDY0MDM3LCA2NDA0MSwgNjQwNDUsIDY0MDQ5LCA2NDA1MywgNjQwNTcsIDY0MDYxLCA2NDA2NSwgCi0gICAgNjQwNjksIDY0MDczLCA2NDA3NywgNjQwODEsIDY0MDg1LCA2NDA4OSwgNjQwOTMsIDY0MDk3LCA2NDEwMSwgNjQxMDUsIAotICAgIDY0MTA5LCA2NDExMywgNjQxMTcsIDY0MTIxLCA2NDEyNSwgNjQxMjksIDY0MTMzLCA2NDEzNywgNjQxNDEsIDY0MTQ1LCAKLSAgICA2NDE0OSwgNjQxNTMsIDY0MTU3LCA2NDE2MSwgNjQxNjUsIDY0MTY5LCA2NDE3MywgNjQxNzcsIDY0MTgxLCA2NDE4NSwgCi0gICAgNjQxODksIDY0MTkzLCA2NDE5NywgNjQyMDEsIDY0MjA1LCA2NDIwOSwgNjQyMTMsIDY0MjE3LCA2NDIyMSwgNjQyMjUsIAotICAgIDY0MjI5LCA2NDIzMywgNjQyMzcsIDY0MjQxLCA2NDI0NSwgNjQyNDksIDY0MjUzLCA2NDI1NywgNjQyNjEsIDY0MjY1LCAKLSAgICA2NDI2OSwgNjQyNzMsIDY0Mjc3LCA2NDI4MSwgNjQyODUsIDY0Mjg5LCA2NDI5MywgNjQyOTcsIDY0MzAxLCA2NDMwNSwgCi0gICAgNjQzMDksIDY0MzEzLCA2NDMxNywgNjQzMjEsIDY0MzI1LCA2NDMyOSwgNjQzMzMsIDY0MzM3LCA2NDM0MSwgNjQzNDUsIAotICAgIDY0MzQ5LCA2NDM1MywgNjQzNTcsIDY0MzYxLCA2NDM2NSwgNjQzNjksIDY0MzczLCA2NDM3NywgNjQzODEsIDY0Mzg1LCAKLSAgICA2NDM4OSwgNjQzOTMsIDY0Mzk3LCA2NDQwMSwgNjQ0MDUsIDY0NDA5LCA2NDQxMywgNjQ0MTcsIDY0NDIxLCA2NDQyNSwgCi0gICAgNjQ0MjksIDY0NDMzLCA2NDQzNywgNjQ0NDEsIDY0NDQ1LCA2NDQ0OSwgNjQ0NTMsIDY0NDU3LCA2NDQ2MSwgNjQ0NjUsIAotICAgIDY0NDY5LCA2NDQ3MywgNjQ0NzcsIDY0NDgxLCA2NDQ4NCwgNjQ0ODgsIDY0NDkyLCA2NDQ5NiwgNjQ1MDAsIDY0NTA0LCAKLSAgICA2NDUwOCwgNjQ1MTIsIDY0NTE2LCA2NDUyMCwgNjQ1MjQsIDY0NTI4LCA2NDUzMiwgNjQ1MzYsIDY0NTQwLCA2NDU0NCwgCi0gICAgNjQ1NDgsIDY0NTUyLCA2NDU1NiwgNjQ1NjAsIDY0NTY0LCA2NDU2OCwgNjQ1NzIsIDY0NTc2LCA2NDU4MCwgNjQ1ODQsIAotICAgIDY0NTg4LCA2NDU5MiwgNjQ1OTYsIDY0NjAwLCA2NDYwNCwgNjQ2MDgsIDY0NjEyLCA2NDYxNiwgNjQ2MjAsIDY0NjI0LCAKLSAgICA2NDYyOCwgNjQ2MzIsIDY0NjM2LCA2NDY0MCwgNjQ2NDQsIDY0NjQ4LCA2NDY1MiwgNjQ2NTYsIDY0NjYwLCA2NDY2NCwgCi0gICAgNjQ2NjgsIDY0NjcyLCA2NDY3NiwgNjQ2ODAsIDY0Njg0LCA2NDY4OCwgNjQ2OTIsIDY0Njk2LCA2NDcwMCwgNjQ3MDQsIAotICAgIDY0NzA4LCA2NDcxMiwgNjQ3MTYsIDY0NzIwLCA2NDcyNCwgNjQ3MjgsIDY0NzMyLCA2NDczNiwgNjQ3NDAsIDY0NzQ0LCAKLSAgICA2NDc0OCwgNjQ3NTIsIDY0NzU2LCA2NDc2MCwgNjQ3NjQsIDY0NzY4LCA2NDc3MiwgNjQ3NzYsIDY0NzgwLCA2NDc4NCwgCi0gICAgNjQ3ODgsIDY0NzkyLCA2NDc5NiwgNjQ4MDAsIDY0ODA0LCA2NDgwOCwgNjQ4MTIsIDY0ODE2LCA2NDgyMCwgNjQ4MjQsIAotICAgIDY0ODI4LCA2NDgzMiwgNjQ4MzYsIDY0ODQwLCA2NDg0MywgNjQ4NDcsIDY0ODUxLCA2NDg1NSwgNjQ4NTksIDY0ODYzLCAKLSAgICA2NDg2NywgNjQ4NzEsIDY0ODc1LCA2NDg3OSwgNjQ4ODMsIDY0ODg3LCA2NDg5MSwgNjQ4OTUsIDY0ODk5LCA2NDkwMywgCi0gICAgNjQ5MDcsIDY0OTExLCA2NDkxNSwgNjQ5MTksIDY0OTIzLCA2NDkyNywgNjQ5MzEsIDY0OTM1LCA2NDkzOSwgNjQ5NDMsIAotICAgIDY0OTQ3LCA2NDk1MSwgNjQ5NTUsIDY0OTU5LCA2NDk2MywgNjQ5NjcsIDY0OTcxLCA2NDk3NSwgNjQ5NzksIDY0OTgzLCAKLSAgICA2NDk4NywgNjQ5OTEsIDY0OTk1LCA2NDk5OSwgNjUwMDMsIDY1MDA3LCA2NTAxMSwgNjUwMTUsIDY1MDE5LCA2NTAyMywgCi0gICAgNjUwMjcsIDY1MDMxLCA2NTAzNSwgNjUwMzksIDY1MDQzLCA2NTA0NywgNjUwNTEsIDY1MDU1LCA2NTA1OSwgNjUwNjMsIAotICAgIDY1MDY3LCA2NTA3MSwgNjUwNzUsIDY1MDc5LCA2NTA4MywgNjUwODcsIDY1MDkxLCA2NTA5NSwgNjUwOTksIDY1MTAzLCAKLSAgICA2NTEwNywgNjUxMTEsIDY1MTE1LCA2NTExOSwgNjUxMjMsIDY1MTI3LCA2NTEzMSwgNjUxMzUsIDY1MTM5LCA2NTE0MywgCi0gICAgNjUxNDcsIDY1MTUxLCA2NTE1NSwgNjUxNTksIDY1MTYzLCA2NTE2NywgNjUxNzEsIDY1MTc1LCA2NTE3OSwgNjUxODMsIAotICAgIDY1MTg3LCA2NTE5MSwgNjUxOTUsIDY1MTk5LCA2NTIwMywgNjUyMDcsIDY1MjExLCA2NTIxNSwgNjUyMTksIDY1MjIzLCAKLSAgICA2NTIyNywgNjUyMzEsIDY1MjM1LCA2NTIzOSwgNjUyNDMsIDY1MjQ3LCA2NTI1MSwgNjUyNTUsIDY1MjU5LCA2NTI2MywgCi0gICAgNjUyNjcsIDY1MjcxLCA2NTI3NSwgNjUyNzksIDY1MjgzLCA2NTI4NywgNjUyOTEsIDY1Mjk1LCA2NTI5OSwgNjUzMDMsIAotICAgIDY1MzA3LCA2NTMxMSwgNjUzMTUsIDY1MzE5LCA2NTMyMywgNjUzMjcsIDY1MzMxLCA2NTMzNSwgNjUzMzgsIDY1MzQyLCAKLSAgICA2NTM0NiwgNjUzNTAsIDY1MzU0LCA2NTM1OCwgNjUzNjIsIDY1MzY2LCA2NTM3MCwgNjUzNzQsIDY1Mzc4LCA2NTM4MiwgCi0gICAgNjUzODYsIDY1MzkwLCA2NTM5NCwgNjUzOTgsIDY1NDAyLCA2NTQwNiwgNjU0MTAsIDY1NDE0LCA2NTQxOCwgNjU0MjIsIAotICAgIDY1NDI2LCA2NTQzMCwgNjU0MzQsIDY1NDM4LCA2NTQ0MiwgNjU0NDYsIDY1NDUwLCA2NTQ1NCwgNjU0NTgsIDY1NDYyLCAKLSAgICA2NTQ2NiwgNjU0NzAsIDY1NDc0LCA2NTQ3OCwgNjU0ODIsIDY1NDg2LCA2NTQ5MCwgNjU0OTQsIDY1NDk4LCA2NTUwMiwgCi0gICAgNjU1MDYsIDY1NTEwLCA2NTUxNCwgNjU1MTgsIDY1NTIyLCA2NTUyNiwgNjU1MzAsIDY1NTM0LCA2NTUzOCwgNjU1NDIsIAotICAgIDY1NTQ2LCA2NTU1MCwgNjU1NTQsIDY1NTU4LCA2NTU2MiwgNjU1NjYsIDY1NTcwLCA2NTU3NCwgNjU1NzgsIDY1NTgyLCAKLSAgICA2NTU4NiwgNjU1OTAsIDY1NTk0LCA2NTU5OCwgNjU2MDIsIDY1NjA2LCA2NTYxMCwgNjU2MTQsIDY1NjE4LCA2NTYyMiwgCi0gICAgNjU2MjYsIDY1NjMwLCA2NTYzNCwgNjU2MzgsIDY1NjQyLCA2NTY0NiwgNjU2NTAsIDY1NjU0LCA2NTY1OCwgNjU2NjIsIAotICAgIDY1NjY2LCA2NTY3MCwgNjU2NzQsIDY1Njc4LCA2NTY4MiwgNjU2ODYsIDY1NjkwLCA2NTY5NCwgNjU2OTgsIDY1NzAyLCAKLSAgICA2NTcwNiwgNjU3MTAsIDY1NzE0LCA2NTcxOCwgNjU3MjIsIDY1NzI2LCA2NTczMCwgNjU3MzQsIDY1NzM4LCA2NTc0MiwgCi0gICAgNjU3NDYsIDY1NzUwLCA2NTc1NCwgNjU3NTgsIDY1NzYyLCA2NTc2NiwgNjU3NzAsIDY1Nzc0LCA2NTc3OCwgNjU3ODIsIAotICAgIDY1Nzg2LCA2NTc5MCwgNjU3OTMsIDY1Nzk3LCA2NTgwMSwgNjU4MDUsIDY1ODA5LCA2NTgxMywgNjU4MTcsIDY1ODIxLCAKLSAgICA2NTgyNSwgNjU4MjksIDY1ODMzLCA2NTgzNywgNjU4NDEsIDY1ODQ1LCA2NTg0OSwgNjU4NTMsIDY1ODU3LCA2NTg2MSwgCi0gICAgNjU4NjUsIDY1ODY5LCA2NTg3MywgNjU4NzcsIDY1ODgxLCA2NTg4NSwgNjU4ODksIDY1ODkzLCA2NTg5NywgNjU5MDEsIAotICAgIDY1OTA1LCA2NTkwOSwgNjU5MTMsIDY1OTE3LCA2NTkyMSwgNjU5MjUsIDY1OTI5LCA2NTkzMywgNjU5MzcsIDY1OTQxLCAKLSAgICA2NTk0NSwgNjU5NDksIDY1OTUzLCA2NTk1NywgNjU5NjEsIDY1OTY1LCA2NTk2OSwgNjU5NzMsIDY1OTc3LCA2NTk4MSwgCi0gICAgNjU5ODUsIDY1OTg5LCA2NTk5MywgNjU5OTcsIDY2MDAxLCA2NjAwNSwgNjYwMDksIDY2MDEzLCA2NjAxNywgNjYwMjEsIAotICAgIDY2MDI1LCA2NjAyOSwgNjYwMzMsIDY2MDM3LCA2NjA0MSwgNjYwNDUsIDY2MDQ5LCA2NjA1MywgNjYwNTcsIDY2MDYxLCAKLSAgICA2NjA2NSwgNjYwNjksIDY2MDczLCA2NjA3NywgNjYwODEsIDY2MDg1LCA2NjA4OSwgNjYwOTMsIDY2MDk3LCA2NjEwMSwgCi0gICAgNjYxMDUsIDY2MTA5LCA2NjExMywgNjYxMTcsIDY2MTIxLCA2NjEyNSwgNjYxMjksIDY2MTMzLCA2NjEzNywgNjYxNDEsIAotICAgIDY2MTQ1LCA2NjE0OSwgNjYxNTMsIDY2MTU3LCA2NjE2MSwgNjYxNjUsIDY2MTY5LCA2NjE3MywgNjYxNzcsIDY2MTgxLCAKLSAgICA2NjE4NSwgNjYxODksIDY2MTkzLCA2NjE5NywgNjYyMDEsIDY2MjA1LCA2NjIwOSwgNjYyMTMsIDY2MjE3LCA2NjIyMSwgCi0gICAgNjYyMjUsIDY2MjI5LCA2NjIzMywgNjYyMzcsIDY2MjQxLCA2NjI0NSwgNjYyNDksIDY2MjUzLCA2NjI1NywgNjYyNjEsIAotICAgIDY2MjY1LCA2NjI2OSwgNjYyNzMsIDY2Mjc3LCA2NjI4MSwgNjYyODUsIDY2Mjg5LCA2NjI5MywgNjYyOTcsIDY2MzAxLCAKLSAgICA2NjMwNSwgNjYzMDksIDY2MzEzLCA2NjMxNywgNjYzMjEsIDY2MzI1LCA2NjMyOSwgNjYzMzMsIDY2MzM3LCA2NjM0MSwgCi0gICAgNjYzNDUsIDY2MzQ5LCA2NjM1MywgNjYzNTcsIDY2MzYxLCA2NjM2NSwgNjYzNjksIDY2MzczLCA2NjM3NywgNjYzODEsIAotICAgIDY2Mzg1LCA2NjM4OSwgNjYzOTMsIDY2Mzk2LCA2NjQwMCwgNjY0MDQsIDY2NDA4LCA2NjQxMiwgNjY0MTYsIDY2NDIwLCAKLSAgICA2NjQyNCwgNjY0MjgsIDY2NDMyLCA2NjQzNiwgNjY0NDAsIDY2NDQ0LCA2NjQ0OCwgNjY0NTIsIDY2NDU2LCA2NjQ2MCwgCi0gICAgNjY0NjQsIDY2NDY4LCA2NjQ3MiwgNjY0NzYsIDY2NDgwLCA2NjQ4NCwgNjY0ODgsIDY2NDkyLCA2NjQ5NiwgNjY1MDAsIAotICAgIDY2NTA0LCA2NjUwOCwgNjY1MTIsIDY2NTE2LCA2NjUyMCwgNjY1MjQsIDY2NTI4LCA2NjUzMiwgNjY1MzYsIDY2NTQwLCAKLSAgICA2NjU0NCwgNjY1NDgsIDY2NTUyLCA2NjU1NiwgNjY1NjAsIDY2NTY0LCA2NjU2OCwgNjY1NzIsIDY2NTc2LCA2NjU4MCwgCi0gICAgNjY1ODQsIDY2NTg4LCA2NjU5MiwgNjY1OTYsIDY2NjAwLCA2NjYwNCwgNjY2MDgsIDY2NjEyLCA2NjYxNiwgNjY2MjAsIAotICAgIDY2NjI0LCA2NjYyOCwgNjY2MzIsIDY2NjM2LCA2NjY0MCwgNjY2NDQsIDY2NjQ4LCA2NjY1MiwgNjY2NTYsIDY2NjYwLCAKLSAgICA2NjY2NCwgNjY2NjgsIDY2NjcyLCA2NjY3NiwgNjY2ODAsIDY2Njg0LCA2NjY4OCwgNjY2OTIsIDY2Njk2LCA2NjcwMCwgCi0gICAgNjY3MDQsIDY2NzA4LCA2NjcxMiwgNjY3MTYsIDY2NzIwLCA2NjcyNCwgNjY3MjgsIDY2NzMyLCA2NjczNiwgNjY3NDAsIAotICAgIDY2NzQ0LCA2Njc0OCwgNjY3NTIsIDY2NzU2LCA2Njc2MCwgNjY3NjQsIDY2NzY4LCA2Njc3MiwgNjY3NzYsIDY2NzgwLCAKLSAgICA2Njc4NCwgNjY3ODgsIDY2NzkyLCA2Njc5NiwgNjY4MDAsIDY2ODA0LCA2NjgwOCwgNjY4MTIsIDY2ODE2LCA2NjgyMCwgCi0gICAgNjY4MjQsIDY2ODI4LCA2NjgzMiwgNjY4MzYsIDY2ODQwLCA2Njg0NCwgNjY4NDgsIDY2ODUyLCA2Njg1NiwgNjY4NjAsIAotICAgIDY2ODY0LCA2Njg2OCwgNjY4NzIsIDY2ODc2LCA2Njg4MCwgNjY4ODQsIDY2ODg4LCA2Njg5MiwgNjY4OTYsIDY2OTAwLCAKLSAgICA2NjkwNCwgNjY5MDgsIDY2OTEyLCA2NjkxNiwgNjY5MjAsIDY2OTI0LCA2NjkyOCwgNjY5MzIsIDY2OTM2LCA2Njk0MCwgCi0gICAgNjY5NDQsIDY2OTQ4LCA2Njk1MiwgNjY5NTYsIDY2OTYwLCA2Njk2NCwgNjY5NjgsIDY2OTcyLCA2Njk3NiwgNjY5ODAsIAotICAgIDY2OTg0LCA2Njk4OCwgNjY5OTIsIDY2OTk2LCA2NzAwMCwgNjcwMDQsIDY3MDA4LCA2NzAxMiwgNjcwMTYsIDY3MDIwLCAKLSAgICA2NzAyNCwgNjcwMjgsIDY3MDMyLCA2NzAzNiwgNjcwNDAsIDY3MDQ0LCA2NzA0OCwgNjcwNTIsIDY3MDU2LCA2NzA2MCwgCi0gICAgNjcwNjQsIDY3MDY4LCA2NzA3MiwgNjcwNzYsIDY3MDgwLCA2NzA4NCwgNjcwODgsIDY3MDkyLCA2NzA5NiwgNjcxMDAsIAotICAgIDY3MTA0LCA2NzEwOCwgNjcxMTIsIDY3MTE2LCA2NzEyMCwgNjcxMjQsIDY3MTI4LCA2NzEzMiwgNjcxMzYsIDY3MTQwLCAKLSAgICA2NzE0NCwgNjcxNDgsIDY3MTUyLCA2NzE1NSwgNjcxNTksIDY3MTYzLCA2NzE2NywgNjcxNzEsIDY3MTc1LCA2NzE3OSwgCi0gICAgNjcxODMsIDY3MTg3LCA2NzE5MSwgNjcxOTUsIDY3MTk5LCA2NzIwMywgNjcyMDcsIDY3MjExLCA2NzIxNSwgNjcyMTksIAotICAgIDY3MjIzLCA2NzIyNywgNjcyMzEsIDY3MjM1LCA2NzIzOSwgNjcyNDMsIDY3MjQ3LCA2NzI1MSwgNjcyNTUsIDY3MjU5LCAKLSAgICA2NzI2MywgNjcyNjcsIDY3MjcxLCA2NzI3NSwgNjcyNzksIDY3MjgzLCA2NzI4NywgNjcyOTEsIDY3Mjk1LCA2NzI5OSwgCi0gICAgNjczMDMsIDY3MzA3LCA2NzMxMSwgNjczMTUsIDY3MzE5LCA2NzMyMywgNjczMjcsIDY3MzMxLCA2NzMzNSwgNjczMzksIAotICAgIDY3MzQzLCA2NzM0NywgNjczNTEsIDY3MzU1LCA2NzM1OSwgNjczNjMsIDY3MzY3LCA2NzM3MSwgNjczNzUsIDY3Mzc5LCAKLSAgICA2NzM4MywgNjczODcsIDY3MzkxLCA2NzM5NSwgNjczOTksIDY3NDAzLCA2NzQwNywgNjc0MTEsIDY3NDE1LCA2NzQxOSwgCi0gICAgNjc0MjMsIDY3NDI3LCA2NzQzMSwgNjc0MzUsIDY3NDM5LCA2NzQ0MywgNjc0NDcsIDY3NDUxLCA2NzQ1NSwgNjc0NTksIAotICAgIDY3NDYzLCA2NzQ2NywgNjc0NzEsIDY3NDc1LCA2NzQ3OSwgNjc0ODMsIDY3NDg3LCA2NzQ5MSwgNjc0OTUsIDY3NDk5LCAKLSAgICA2NzUwMywgNjc1MDcsIDY3NTExLCA2NzUxNSwgNjc1MTksIDY3NTIzLCA2NzUyNywgNjc1MzEsIDY3NTM1LCA2NzUzOSwgCi0gICAgNjc1NDMsIDY3NTQ3LCA2NzU1MSwgNjc1NTUsIDY3NTU5LCA2NzU2MywgNjc1NjcsIDY3NTcxLCA2NzU3NSwgNjc1NzksIAotICAgIDY3NTgzLCA2NzU4NywgNjc1OTEsIDY3NTk1LCA2NzU5OSwgNjc2MDMsIDY3NjA3LCA2NzYxMSwgNjc2MTUsIDY3NjE5LCAKLSAgICA2NzYyMywgNjc2MjcsIDY3NjMxLCA2NzYzNSwgNjc2MzksIDY3NjQzLCA2NzY0NywgNjc2NTEsIDY3NjU1LCA2NzY1OSwgCi0gICAgNjc2NjMsIDY3NjY3LCA2NzY3MSwgNjc2NzUsIDY3Njc5LCA2NzY4MywgNjc2ODcsIDY3NjkxLCA2NzY5NSwgNjc2OTksIAotICAgIDY3NzAzLCA2NzcwNywgNjc3MTEsIDY3NzE1LCA2NzcxOSwgNjc3MjMsIDY3NzI3LCA2NzczMSwgNjc3MzUsIDY3NzM5LCAKLSAgICA2Nzc0MywgNjc3NDcsIDY3NzUxLCA2Nzc1NSwgNjc3NTksIDY3NzYzLCA2Nzc2NywgNjc3NzEsIDY3Nzc1LCA2Nzc3OSwgCi0gICAgNjc3ODMsIDY3Nzg3LCA2Nzc5MSwgNjc3OTUsIDY3Nzk5LCA2NzgwMywgNjc4MDcsIDY3ODExLCA2NzgxNSwgNjc4MTksIAotICAgIDY3ODIzLCA2NzgyNywgNjc4MzEsIDY3ODM1LCA2NzgzOSwgNjc4NDMsIDY3ODQ3LCA2Nzg1MSwgNjc4NTUsIDY3ODU5LCAKLSAgICA2Nzg2MywgNjc4NjcsIDY3ODcxLCA2Nzg3NSwgNjc4NzksIDY3ODgzLCA2Nzg4NywgNjc4OTEsIDY3ODk1LCA2Nzg5OSwgCi0gICAgNjc5MDMsIDY3OTA3LCA2NzkxMSwgNjc5MTUsIDY3OTE5LCA2NzkyMywgNjc5MjcsIDY3OTMxLCA2NzkzNSwgMCwgMCwgMCwgCi0gICAgNjc5MzksIDY3OTQzLCA2Nzk0NywgNjc5NTEsIDY3OTU1LCA2Nzk1OSwgNjc5NjMsIDY3OTY3LCA2Nzk3MSwgNjc5NzUsIAotICAgIDY3OTc5LCA2Nzk4MywgNjc5ODcsIDY3OTkxLCA2Nzk5NSwgNjc5OTksIDY4MDAzLCA2ODAwNywgNjgwMTEsIDY4MDE1LCAKLSAgICA2ODAxOSwgNjgwMjMsIDY4MDI3LCA2ODAzMSwgNjgwMzUsIDY4MDM5LCA2ODA0MywgNjgwNDcsIDY4MDUxLCA2ODA1NSwgCi0gICAgNjgwNTksIDY4MDYzLCA2ODA2NywgNjgwNzEsIDY4MDc1LCA2ODA3OSwgNjgwODMsIDY4MDg3LCA2ODA5MSwgNjgwOTUsIAotICAgIDY4MDk5LCA2ODEwMywgNjgxMDcsIDY4MTExLCA2ODExNSwgNjgxMTksIDY4MTIzLCA2ODEyNywgNjgxMzEsIDY4MTM1LCAKLSAgICA2ODEzOSwgNjgxNDMsIDY4MTQ3LCA2ODE1MSwgNjgxNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDY4MTU5LCAKLSAgICA2ODE2NCwgNjgxNjgsIDY4MTczLCA2ODE3OCwgNjgxODMsIDY4MTg4LCA2ODE5MywgNjgxOTcsIDY4MjAyLCA2ODIwNywgCi0gICAgNjgyMTIsIDY4MjE3LCA2ODIyMiwgNjgyMjcsIDY4MjMyLCA2ODIzNiwgNjgyNDAsIDY4MjQ1LCA2ODI1MCwgNjgyNTUsIAotICAgIDY4MjYwLCA2ODI2NSwgNjgyNjksIDY4Mjc0LCA2ODI3OSwgNjgyODQsIDY4Mjg5LCA2ODI5NCwgNjgyOTgsIDY4MzAzLCAKLSAgICA2ODMwNywgNjgzMTIsIDY4MzE2LCA2ODMyMSwgNjgzMjUsIDY4MzI5LCA2ODMzMywgNjgzMzgsIDY4MzQzLCA2ODM0OCwgCi0gICAgNjgzNTYsIDY4MzY0LCA2ODM3MiwgNjgzODAsIDY4Mzg3LCA2ODM5NSwgNjg0MDEsIDY4NDA5LCA2ODQxMywgNjg0MTcsIAotICAgIDY4NDIxLCA2ODQyNSwgNjg0MjksIDY4NDMzLCA2ODQzNywgNjg0NDEsIDY4NDQ1LCA2ODQ0OSwgNjg0NTMsIDY4NDU3LCAKLSAgICA2ODQ2MSwgNjg0NjUsIDY4NDY5LCA2ODQ3MywgNjg0NzcsIDY4NDgxLCA2ODQ4NSwgNjg0ODksIDY4NDkzLCA2ODQ5NywgCi0gICAgNjg1MDEsIDY4NTA1LCA2ODUwOSwgNjg1MTMsIDY4NTE3LCA2ODUyMSwgNjg1MjUsIDY4NTI5LCA2ODUzMywgNjg1MzcsIAotICAgIDY4NTQxLCA2ODU0NSwgNjg1NDksIDY4NTUzLCA2ODU1NiwgNjg1NjAsIDY4NTY0LCA2ODU2OCwgNjg1NzIsIDY4NTc2LCAKLSAgICA2ODU4MCwgNjg1ODQsIDY4NTg4LCA2ODU5MiwgNjg1OTYsIDY4NjAwLCA2ODYwNCwgNjg2MDgsIDY4NjEyLCA2ODYxNiwgCi0gICAgNjg2MjAsIDY4NjI0LCA2ODYyOCwgNjg2MzIsIDY4NjM2LCA2ODY0MCwgNjg2NDQsIDY4NjQ4LCA2ODY1MiwgNjg2NTYsIAotICAgIDY4NjYwLCA2ODY2NCwgNjg2NjgsIDY4NjcyLCA2ODY3NiwgNjg2ODAsIDY4Njg0LCA2ODY4OCwgNjg2OTIsIDY4Njk2LCAKLSAgICA2ODcwMCwgNjg3MDMsIDY4NzA3LCA2ODcxMSwgNjg3MTQsIDY4NzE4LCA2ODcyMiwgNjg3MjYsIDY4NzI5LCA2ODczMywgCi0gICAgNjg3MzcsIDY4NzQxLCA2ODc0NSwgNjg3NDksIDY4NzUzLCA2ODc1NywgNjg3NjEsIDY4NzY1LCA2ODc2OSwgNjg3NzMsIAotICAgIDY4Nzc3LCA2ODc4MSwgNjg3ODUsIDY4Nzg4LCA2ODc5MiwgNjg3OTYsIDY4ODAwLCA2ODgwNCwgNjg4MDgsIDY4ODEyLCAKLSAgICA2ODgxNiwgNjg4MjAsIDY4ODI0LCA2ODgyNywgNjg4MzAsIDY4ODM0LCA2ODgzOCwgNjg4NDIsIDY4ODQ1LCA2ODg0OCwgCi0gICAgNjg4NTIsIDY4ODU2LCA2ODg2MCwgNjg4NjQsIDY4ODY4LCA2ODg3MiwgNjg4NzYsIDY4ODgwLCA2ODg4NCwgNjg4ODgsIAotICAgIDY4ODkyLCA2ODg5NiwgNjg5MDAsIDY4OTA0LCA2ODkwOCwgNjg5MTIsIDY4OTE2LCA2ODkyMCwgNjg5MjQsIDY4OTI4LCAKLSAgICA2ODkzMiwgNjg5MzYsIDY4OTQwLCA2ODk0NCwgNjg5NDgsIDY4OTUyLCA2ODk1NiwgNjg5NjAsIDY4OTY0LCA2ODk2OCwgCi0gICAgNjg5NzIsIDY4OTc2LCA2ODk4MCwgNjg5ODQsIDY4OTg4LCA2ODk5MiwgNjg5OTYsIDY4OTk5LCA2OTAwMywgNjkwMDcsIAotICAgIDY5MDExLCA2OTAxNSwgNjkwMTksIDY5MDIzLCA2OTAyNywgNjkwMzEsIDY5MDM1LCA2OTAzOSwgNjkwNDMsIDY5MDQ3LCAKLSAgICA2OTA1MSwgNjkwNTUsIDY5MDU5LCA2OTA2MywgNjkwNjcsIDY5MDcxLCA2OTA3NSwgNjkwNzksIDY5MDgzLCA2OTA4NywgCi0gICAgNjkwOTEsIDY5MDk1LCA2OTA5OSwgNjkxMDMsIDY5MTA3LCA2OTExMSwgNjkxMTUsIDY5MTE5LCA2OTEyMywgNjkxMjcsIAotICAgIDY5MTMxLCA2OTEzNSwgNjkxMzksIDY5MTQzLCA2OTE0NiwgNjkxNTAsIDY5MTU0LCA2OTE1OCwgNjkxNjIsIDY5MTY2LCAKLSAgICA2OTE3MCwgNjkxNzQsIDY5MTc4LCA2OTE4MiwgNjkxODYsIDY5MTkwLCA2OTE5NCwgNjkxOTgsIDY5MjAyLCA2OTIwNiwgCi0gICAgNjkyMTAsIDY5MjEzLCA2OTIxNywgNjkyMjEsIDY5MjI1LCA2OTIyOSwgNjkyMzMsIDY5MjM3LCA2OTI0MSwgNjkyNDUsIAotICAgIDY5MjQ5LCA2OTI1MywgNjkyNTcsIDY5MjYxLCA2OTI2NSwgNjkyNjksIDY5MjczLCA2OTI3NywgNjkyODEsIDY5Mjg1LCAKLSAgICA2OTI4OSwgNjkyOTMsIDY5Mjk3LCA2OTMwMCwgNjkzMDQsIDY5MzA4LCA2OTMxMiwgNjkzMTYsIDY5MzIwLCA2OTMyNCwgCi0gICAgNjkzMjgsIDY5MzMyLCA2OTMzNiwgNjkzNDAsIDY5MzQ0LCA2OTM0OCwgNjkzNTIsIDY5MzU2LCA2OTM2MCwgNjkzNjQsIAotICAgIDY5MzY4LCA2OTM3MiwgNjkzNzYsIDY5MzgwLCA2OTM4NCwgNjkzODgsIDY5MzkyLCA2OTM5NiwgNjk0MDAsIDY5NDA0LCAKLSAgICA2OTQwOCwgNjk0MTIsIDY5NDE2LCA2OTQyMCwgNjk0MjQsIDY5NDI4LCA2OTQzMiwgNjk0MzYsIDY5NDQwLCA2OTQ0NCwgCi0gICAgNjk0NDgsIDY5NDUyLCA2OTQ1NiwgNjk0NjAsIDY5NDY0LCA2OTQ2OCwgNjk0NzIsIDY5NDc1LCA2OTQ4MCwgNjk0ODQsIAotICAgIDY5NDkwLCA2OTQ5NSwgNjk1MDEsIDY5NTA1LCA2OTUwOSwgNjk1MTMsIDY5NTE3LCA2OTUyMSwgNjk1MjUsIDY5NTI5LCAKLSAgICA2OTUzMywgNjk1MzcsIDY5NTQxLCA2OTU0NSwgNjk1NDksIDY5NTUzLCA2OTU1NywgNjk1NjAsIDY5NTYzLCA2OTU2NiwgCi0gICAgNjk1NjksIDY5NTcyLCA2OTU3NSwgNjk1NzgsIDY5NTgxLCA2OTU4NCwgNjk1ODksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDY5NTk1LCA2OTYwMCwgNjk2MDUsIDY5NjEwLCA2OTYxNSwgCi0gICAgNjk2MjIsIDY5NjI5LCA2OTYzNCwgNjk2MzksIDY5NjQ0LCA2OTY0OSwgNjk2NTYsIDY5NjYzLCA2OTY3MCwgNjk2NzcsIAotICAgIDY5Njg0LCA2OTY5MSwgNjk3MDEsIDY5NzExLCA2OTcxOCwgNjk3MjUsIDY5NzMyLCA2OTczOSwgNjk3NDUsIDY5NzUxLCAKLSAgICA2OTc2MCwgNjk3NjksIDY5Nzc2LCA2OTc4MywgNjk3OTQsIDY5ODA1LCA2OTgxMCwgNjk4MTUsIDY5ODIyLCA2OTgyOSwgCi0gICAgNjk4MzYsIDY5ODQzLCA2OTg1MCwgNjk4NTcsIDY5ODY0LCA2OTg3MSwgNjk4NzcsIDY5ODgzLCA2OTg4OSwgNjk4OTUsIAotICAgIDY5OTAyLCA2OTkwOSwgNjk5MTQsIDY5OTE4LCA2OTkyNSwgNjk5MzIsIDY5OTM5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA2OTk0MywgNjk5NDcsIDY5OTUxLCA2OTk1NCwgNjk5NTcsIDY5OTYyLCA2OTk2NywgNjk5NzIsIDY5OTc3LCA2OTk4MiwgCi0gICAgNjk5ODcsIDY5OTkyLCA2OTk5NywgNzAwMDIsIDcwMDA3LCA3MDAxNiwgNzAwMjUsIDcwMDMwLCA3MDAzNSwgNzAwNDAsIAotICAgIDcwMDQ1LCA3MDA1MCwgNzAwNTUsIDcwMDYwLCA3MDA2NSwgNzAwNzAsIDcwMDc1LCA3MDA4MCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNzAwODUsIDcwMDg4LCA3MDA5MSwgNzAwOTQsIDcwMDk4LCA3MDEwMiwgNzAxMDYsIDcwMTEwLCA3MDExMywgCi0gICAgNzAxMTcsIDcwMTIwLCA3MDEyNCwgNzAxMjcsIDcwMTMxLCA3MDEzNSwgNzAxMzksIDcwMTQzLCA3MDE0NywgNzAxNTEsIAotICAgIDcwMTU1LCA3MDE1OCwgNzAxNjIsIDcwMTY2LCA3MDE3MCwgNzAxNzQsIDcwMTc4LCA3MDE4MiwgNzAxODYsIDcwMTkwLCAKLSAgICA3MDE5NCwgNzAxOTgsIDcwMjAyLCA3MDIwNiwgNzAyMTAsIDcwMjE0LCA3MDIxNywgNzAyMjEsIDcwMjI1LCA3MDIyOSwgCi0gICAgNzAyMzMsIDcwMjM3LCA3MDI0MSwgNzAyNDUsIDcwMjQ5LCA3MDI1MywgNzAyNTcsIDcwMjYxLCA3MDI2NSwgNzAyNjksIAotICAgIDcwMjczLCA3MDI3NywgNzAyODEsIDcwMjg1LCA3MDI4OSwgNzAyOTMsIDcwMjk3LCA3MDMwMSwgNzAzMDUsIDcwMzA5LCAKLSAgICA3MDMxMywgNzAzMTYsIDcwMzIwLCA3MDMyNCwgNzAzMjgsIDcwMzMyLCA3MDMzNiwgNzAzNDAsIDcwMzQ0LCA3MDM0NywgCi0gICAgNzAzNTEsIDcwMzU1LCA3MDM1OSwgNzAzNjMsIDcwMzY3LCA3MDM3MSwgNzAzNzUsIDcwMzc5LCA3MDM4MywgNzAzODcsIAotICAgIDcwMzkxLCA3MDM5NSwgNzA0MDAsIDcwNDA1LCA3MDQwOCwgNzA0MTMsIDcwNDE2LCA3MDQxOSwgNzA0MjIsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDcwNDI2LCA3MDQzNSwgNzA0NDQsIDcwNDUzLCA3MDQ2MiwgNzA0NzEsIDcwNDgwLCA3MDQ4OSwgCi0gICAgNzA0OTgsIDcwNTA2LCA3MDUxMywgNzA1MjEsIDcwNTI4LCA3MDUzNiwgNzA1NDYsIDcwNTU1LCA3MDU2NSwgNzA1NzQsIAotICAgIDcwNTg0LCA3MDU5MiwgNzA1OTksIDcwNjA3LCA3MDYxNCwgNzA2MjIsIDcwNjI3LCA3MDYzMiwgNzA2MzcsIDcwNjQ2LCAKLSAgICA3MDY1MiwgNzA2NTgsIDcwNjY1LCA3MDY3NCwgNzA2ODIsIDcwNjkwLCA3MDY5OCwgNzA3MDUsIDcwNzEyLCA3MDcxOSwgCi0gICAgNzA3MjYsIDcwNzMxLCA3MDczNiwgNzA3NDEsIDcwNzQ2LCA3MDc1MSwgNzA3NTYsIDcwNzYxLCA3MDc2NiwgNzA3NzQsIAotICAgIDcwNzgyLCA3MDc4OCwgNzA3OTMsIDcwNzk4LCA3MDgwMywgNzA4MDgsIDcwODEzLCA3MDgxOCwgNzA4MjMsIDcwODI4LCAKLSAgICA3MDgzMywgNzA4NDEsIDcwODQ5LCA3MDg1NCwgNzA4NTksIDcwODY5LCA3MDg3OSwgNzA4ODYsIDcwODkzLCA3MDkwMiwgCi0gICAgNzA5MTEsIDcwOTIzLCA3MDkzNSwgNzA5NDEsIDcwOTQ3LCA3MDk1NSwgNzA5NjMsIDcwOTczLCA3MDk4MywgNzA5OTAsIAotICAgIDcwOTk3LCA3MTAwMiwgNzEwMDcsIDcxMDE5LCA3MTAzMSwgNzEwMzksIDcxMDQ3LCA3MTA1NywgNzEwNjcsIDcxMDc5LCAKLSAgICA3MTA5MSwgNzExMDAsIDcxMTA5LCA3MTExNiwgNzExMjMsIDcxMTMwLCA3MTEzNywgNzExNDYsIDcxMTU1LCA3MTE2MCwgCi0gICAgNzExNjUsIDcxMTcyLCA3MTE3OSwgNzExODYsIDcxMTkzLCA3MTIwNSwgNzEyMTcsIDcxMjIyLCA3MTIyNywgNzEyMzIsIAotICAgIDcxMjM3LCA3MTI0MiwgNzEyNDcsIDcxMjUyLCA3MTI1NywgNzEyNjEsIDcxMjY2LCA3MTI3MSwgNzEyNzYsIDcxMjgxLCAKLSAgICA3MTI4NiwgNzEyOTIsIDcxMjk3LCA3MTMwMiwgNzEzMDksIDcxMzE2LCA3MTMyMywgNzEzMzAsIDcxMzM3LCA3MTM0NiwgCi0gICAgNzEzNTUsIDcxMzYxLCA3MTM2NywgNzEzNzMsIDcxMzc5LCA3MTM4NSwgNzEzOTEsIDcxMzk4LCA3MTQwNSwgNzE0MTIsIAotICAgIDcxNDE2LCA3MTQyMywgNzE0MjgsIDcxNDMzLCA3MTQ0MCwgMCwgNzE0NTMsIDcxNDYxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3MTQ2OSwgNzE0NzgsIDcxNDg3LCA3MTQ5NiwgNzE1MDUsIDcxNTE0LCA3MTUyMywgCi0gICAgNzE1MzIsIDcxNTQxLCA3MTU1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNjI4MTYsIDYyODI1LCA2MjgzNCwgNjI4NDUsIDYyODUyLCA2Mjg1NywgNjI4NjIsIDYyODY5LCA2Mjg3NiwgNjI4ODIsIAorICAgIDYyODg3LCA2Mjg5MiwgNjI4OTcsIDYyOTAyLCA2MjkwOSwgNjI5MTQsIDYyOTE5LCA2MjkyNCwgNjI5MzUsIDYyOTQwLCAKKyAgICA2Mjk0NSwgNjI5NTIsIDYyOTU3LCA2Mjk2NCwgNjI5NjksIDYyOTc0LCA2Mjk4MSwgNjI5ODgsIDYyOTk1LCA2MzAwNCwgCisgICAgNjMwMTMsIDYzMDE4LCA2MzAyMywgNjMwMjgsIDYzMDM1LCA2MzA0MCwgNjMwNTAsIDYzMDU3LCA2MzA2MiwgNjMwNjcsIAorICAgIDYzMDcyLCA2MzA3NywgNjMwODIsIDYzMDg3LCA2MzA5NiwgNjMxMDMsIDYzMTEwLCA2MzExNSwgNjMxMjIsIDYzMTI3LCAKKyAgICA2MzEzNCwgNjMxNDMsIDYzMTU0LCA2MzE1OSwgNjMxNjgsIDYzMTczLCA2MzE4MCwgNjMxODksIDYzMTk4LCA2MzIwMywgCisgICAgNjMyMDgsIDYzMjE1LCA2MzIyMSwgNjMyMjgsIDYzMjM1LCA2MzIzOSwgNjMyNDMsIDYzMjQ2LCA2MzI1MCwgNjMyNTQsIAorICAgIDYzMjU4LCA2MzI2MiwgNjMyNjYsIDYzMjcwLCA2MzI3NCwgNjMyNzcsIDYzMjgxLCA2MzI4NSwgNjMyODksIDYzMjkzLCAKKyAgICA2MzI5NywgNjMzMDEsIDYzMzA0LCA2MzMwOCwgNjMzMTIsIDYzMzE1LCA2MzMxOSwgNjMzMjMsIDYzMzI3LCA2MzMzMSwgCisgICAgNjMzMzUsIDYzMzM5LCA2MzM0MywgNjMzNDcsIDYzMzUxLCA2MzM1NSwgNjMzNTksIDYzMzYzLCA2MzM2NywgNjMzNzEsIAorICAgIDYzMzc1LCA2MzM3OSwgNjMzODMsIDYzMzg3LCA2MzM5MSwgNjMzOTUsIDYzMzk5LCA2MzQwMywgNjM0MDcsIDYzNDExLCAKKyAgICA2MzQxNSwgNjM0MTksIDYzNDIzLCA2MzQyNywgNjM0MzEsIDYzNDM1LCA2MzQzOSwgNjM0NDMsIDYzNDQ3LCA2MzQ1MSwgCisgICAgNjM0NTUsIDYzNDU5LCA2MzQ2MywgNjM0NjcsIDYzNDcxLCA2MzQ3NSwgNjM0NzksIDYzNDgzLCA2MzQ4NywgNjM0OTEsIAorICAgIDYzNDk0LCA2MzQ5OCwgNjM1MDIsIDYzNTA2LCA2MzUxMCwgNjM1MTQsIDYzNTE4LCA2MzUyMiwgNjM1MjYsIDYzNTMwLCAKKyAgICA2MzUzNCwgNjM1MzgsIDYzNTQyLCA2MzU0NiwgNjM1NTAsIDYzNTU0LCA2MzU1OCwgNjM1NjIsIDYzNTY2LCA2MzU3MCwgCisgICAgNjM1NzQsIDYzNTc4LCA2MzU4MiwgNjM1ODYsIDYzNTkwLCA2MzU5NCwgNjM1OTgsIDYzNjAyLCA2MzYwNiwgNjM2MTAsIAorICAgIDYzNjE0LCA2MzYxOCwgNjM2MjIsIDYzNjI2LCA2MzYzMCwgNjM2MzQsIDYzNjM4LCA2MzY0MiwgNjM2NDYsIDYzNjUwLCAKKyAgICA2MzY1NCwgNjM2NTgsIDYzNjYyLCA2MzY2NiwgNjM2NzAsIDYzNjc0LCA2MzY3OCwgNjM2ODIsIDYzNjg2LCA2MzY5MCwgCisgICAgNjM2OTQsIDYzNjk4LCA2MzcwMiwgNjM3MDYsIDYzNzEwLCA2MzcxNCwgNjM3MTgsIDYzNzIyLCA2MzcyNiwgNjM3MzAsIAorICAgIDYzNzM0LCA2MzczOCwgNjM3NDIsIDYzNzQ2LCA2Mzc1MCwgNjM3NTQsIDYzNzU4LCA2Mzc2MiwgNjM3NjYsIDYzNzcwLCAKKyAgICA2Mzc3NCwgNjM3NzgsIDYzNzgyLCA2Mzc4NiwgNjM3OTAsIDYzNzk0LCA2Mzc5OCwgNjM4MDIsIDYzODA2LCA2MzgxMCwgCisgICAgNjM4MTQsIDYzODE4LCA2MzgyMiwgNjM4MjYsIDYzODMwLCA2MzgzNCwgNjM4MzgsIDYzODQyLCA2Mzg0NiwgNjM4NTAsIAorICAgIDYzODU0LCA2Mzg1OCwgNjM4NjIsIDYzODY2LCA2Mzg3MCwgNjM4NzQsIDYzODc4LCA2Mzg4MiwgNjM4ODYsIDYzODkwLCAKKyAgICA2Mzg5NCwgNjM4OTgsIDYzOTAyLCA2MzkwNiwgNjM5MTAsIDYzOTE0LCA2MzkxOCwgNjM5MjIsIDYzOTI2LCA2MzkzMCwgCisgICAgNjM5MzQsIDYzOTM4LCA2Mzk0MiwgNjM5NDYsIDYzOTUwLCA2Mzk1NCwgNjM5NTgsIDYzOTYyLCA2Mzk2NSwgNjM5NjksIAorICAgIDYzOTczLCA2Mzk3NywgNjM5ODEsIDYzOTg1LCA2Mzk4OSwgNjM5OTMsIDYzOTk3LCA2NDAwMSwgNjQwMDUsIDY0MDA5LCAKKyAgICA2NDAxMywgNjQwMTcsIDY0MDIxLCA2NDAyNSwgNjQwMjksIDY0MDMzLCA2NDAzNywgNjQwNDEsIDY0MDQ1LCA2NDA0OSwgCisgICAgNjQwNTMsIDY0MDU3LCA2NDA2MSwgNjQwNjUsIDY0MDY5LCA2NDA3MywgNjQwNzcsIDY0MDgxLCA2NDA4NSwgNjQwODksIAorICAgIDY0MDkzLCA2NDA5NywgNjQxMDEsIDY0MTA1LCA2NDEwOSwgNjQxMTMsIDY0MTE3LCA2NDEyMSwgNjQxMjUsIDY0MTI5LCAKKyAgICA2NDEzMywgNjQxMzcsIDY0MTQxLCA2NDE0NSwgNjQxNDksIDY0MTUzLCA2NDE1NywgNjQxNjEsIDY0MTY1LCA2NDE2OSwgCisgICAgNjQxNzMsIDY0MTc3LCA2NDE4MSwgNjQxODUsIDY0MTg5LCA2NDE5MywgNjQxOTcsIDY0MjAxLCA2NDIwNSwgNjQyMDksIAorICAgIDY0MjEzLCA2NDIxNywgNjQyMjEsIDY0MjI1LCA2NDIyOSwgNjQyMzMsIDY0MjM3LCA2NDI0MSwgNjQyNDUsIDY0MjQ5LCAKKyAgICA2NDI1MywgNjQyNTcsIDY0MjYxLCA2NDI2NSwgNjQyNjksIDY0MjczLCA2NDI3NywgNjQyODEsIDY0Mjg1LCA2NDI4OSwgCisgICAgNjQyOTMsIDY0Mjk3LCA2NDMwMSwgNjQzMDUsIDY0MzA5LCA2NDMxMywgNjQzMTcsIDY0MzIxLCA2NDMyNSwgNjQzMjksIAorICAgIDY0MzMzLCA2NDMzNywgNjQzNDEsIDY0MzQ1LCA2NDM0OSwgNjQzNTMsIDY0MzU3LCA2NDM2MSwgNjQzNjUsIDY0MzY5LCAKKyAgICA2NDM3MywgNjQzNzcsIDY0MzgxLCA2NDM4NSwgNjQzODksIDY0MzkzLCA2NDM5NywgNjQ0MDEsIDY0NDA1LCA2NDQwOSwgCisgICAgNjQ0MTMsIDY0NDE3LCA2NDQyMSwgNjQ0MjUsIDY0NDI4LCA2NDQzMiwgNjQ0MzYsIDY0NDQwLCA2NDQ0NCwgNjQ0NDgsIAorICAgIDY0NDUyLCA2NDQ1NiwgNjQ0NjAsIDY0NDY0LCA2NDQ2OCwgNjQ0NzIsIDY0NDc2LCA2NDQ4MCwgNjQ0ODQsIDY0NDg4LCAKKyAgICA2NDQ5MiwgNjQ0OTYsIDY0NTAwLCA2NDUwNCwgNjQ1MDgsIDY0NTEyLCA2NDUxNiwgNjQ1MjAsIDY0NTI0LCA2NDUyOCwgCisgICAgNjQ1MzIsIDY0NTM2LCA2NDU0MCwgNjQ1NDQsIDY0NTQ4LCA2NDU1MiwgNjQ1NTYsIDY0NTYwLCA2NDU2NCwgNjQ1NjgsIAorICAgIDY0NTcyLCA2NDU3NiwgNjQ1ODAsIDY0NTg0LCA2NDU4OCwgNjQ1OTIsIDY0NTk2LCA2NDYwMCwgNjQ2MDQsIDY0NjA4LCAKKyAgICA2NDYxMiwgNjQ2MTYsIDY0NjIwLCA2NDYyNCwgNjQ2MjgsIDY0NjMyLCA2NDYzNiwgNjQ2NDAsIDY0NjQ0LCA2NDY0OCwgCisgICAgNjQ2NTIsIDY0NjU2LCA2NDY2MCwgNjQ2NjQsIDY0NjY4LCA2NDY3MiwgNjQ2NzYsIDY0NjgwLCA2NDY4NCwgNjQ2ODgsIAorICAgIDY0NjkyLCA2NDY5NiwgNjQ3MDAsIDY0NzA0LCA2NDcwOCwgNjQ3MTIsIDY0NzE2LCA2NDcyMCwgNjQ3MjQsIDY0NzI4LCAKKyAgICA2NDczMiwgNjQ3MzYsIDY0NzQwLCA2NDc0NCwgNjQ3NDgsIDY0NzUyLCA2NDc1NiwgNjQ3NjAsIDY0NzY0LCA2NDc2OCwgCisgICAgNjQ3NzIsIDY0Nzc2LCA2NDc4MCwgNjQ3ODQsIDY0Nzg3LCA2NDc5MSwgNjQ3OTUsIDY0Nzk5LCA2NDgwMywgNjQ4MDcsIAorICAgIDY0ODExLCA2NDgxNSwgNjQ4MTksIDY0ODIzLCA2NDgyNywgNjQ4MzEsIDY0ODM1LCA2NDgzOSwgNjQ4NDMsIDY0ODQ3LCAKKyAgICA2NDg1MSwgNjQ4NTUsIDY0ODU5LCA2NDg2MywgNjQ4NjcsIDY0ODcxLCA2NDg3NSwgNjQ4NzksIDY0ODgzLCA2NDg4NywgCisgICAgNjQ4OTEsIDY0ODk1LCA2NDg5OSwgNjQ5MDMsIDY0OTA3LCA2NDkxMSwgNjQ5MTUsIDY0OTE5LCA2NDkyMywgNjQ5MjcsIAorICAgIDY0OTMxLCA2NDkzNSwgNjQ5MzksIDY0OTQzLCA2NDk0NywgNjQ5NTEsIDY0OTU1LCA2NDk1OSwgNjQ5NjMsIDY0OTY3LCAKKyAgICA2NDk3MSwgNjQ5NzUsIDY0OTc5LCA2NDk4MywgNjQ5ODcsIDY0OTkxLCA2NDk5NSwgNjQ5OTksIDY1MDAzLCA2NTAwNywgCisgICAgNjUwMTEsIDY1MDE1LCA2NTAxOSwgNjUwMjMsIDY1MDI3LCA2NTAzMSwgNjUwMzUsIDY1MDM5LCA2NTA0MywgNjUwNDcsIAorICAgIDY1MDUxLCA2NTA1NSwgNjUwNTksIDY1MDYzLCA2NTA2NywgNjUwNzEsIDY1MDc1LCA2NTA3OSwgNjUwODMsIDY1MDg3LCAKKyAgICA2NTA5MSwgNjUwOTUsIDY1MDk5LCA2NTEwMywgNjUxMDcsIDY1MTExLCA2NTExNSwgNjUxMTksIDY1MTIzLCA2NTEyNywgCisgICAgNjUxMzEsIDY1MTM1LCA2NTEzOSwgNjUxNDMsIDY1MTQ3LCA2NTE1MSwgNjUxNTUsIDY1MTU5LCA2NTE2MywgNjUxNjcsIAorICAgIDY1MTcxLCA2NTE3NSwgNjUxNzksIDY1MTgzLCA2NTE4NywgNjUxOTEsIDY1MTk1LCA2NTE5OSwgNjUyMDMsIDY1MjA3LCAKKyAgICA2NTIxMSwgNjUyMTUsIDY1MjE5LCA2NTIyMywgNjUyMjcsIDY1MjMxLCA2NTIzNSwgNjUyMzksIDY1MjQzLCA2NTI0NywgCisgICAgNjUyNTEsIDY1MjU1LCA2NTI1OSwgNjUyNjMsIDY1MjY3LCA2NTI3MSwgNjUyNzUsIDY1Mjc5LCA2NTI4MiwgNjUyODYsIAorICAgIDY1MjkwLCA2NTI5NCwgNjUyOTgsIDY1MzAyLCA2NTMwNiwgNjUzMTAsIDY1MzE0LCA2NTMxOCwgNjUzMjIsIDY1MzI2LCAKKyAgICA2NTMzMCwgNjUzMzQsIDY1MzM4LCA2NTM0MiwgNjUzNDYsIDY1MzUwLCA2NTM1NCwgNjUzNTgsIDY1MzYyLCA2NTM2NiwgCisgICAgNjUzNzAsIDY1Mzc0LCA2NTM3OCwgNjUzODIsIDY1Mzg2LCA2NTM5MCwgNjUzOTQsIDY1Mzk4LCA2NTQwMiwgNjU0MDYsIAorICAgIDY1NDEwLCA2NTQxNCwgNjU0MTgsIDY1NDIyLCA2NTQyNiwgNjU0MzAsIDY1NDM0LCA2NTQzOCwgNjU0NDIsIDY1NDQ2LCAKKyAgICA2NTQ1MCwgNjU0NTQsIDY1NDU4LCA2NTQ2MiwgNjU0NjYsIDY1NDcwLCA2NTQ3NCwgNjU0NzgsIDY1NDgyLCA2NTQ4NiwgCisgICAgNjU0OTAsIDY1NDk0LCA2NTQ5OCwgNjU1MDIsIDY1NTA2LCA2NTUxMCwgNjU1MTQsIDY1NTE4LCA2NTUyMiwgNjU1MjYsIAorICAgIDY1NTMwLCA2NTUzNCwgNjU1MzgsIDY1NTQyLCA2NTU0NiwgNjU1NTAsIDY1NTU0LCA2NTU1OCwgNjU1NjIsIDY1NTY2LCAKKyAgICA2NTU3MCwgNjU1NzQsIDY1NTc4LCA2NTU4MiwgNjU1ODYsIDY1NTkwLCA2NTU5NCwgNjU1OTgsIDY1NjAyLCA2NTYwNiwgCisgICAgNjU2MTAsIDY1NjE0LCA2NTYxOCwgNjU2MjIsIDY1NjI2LCA2NTYzMCwgNjU2MzQsIDY1NjM4LCA2NTY0MiwgNjU2NDYsIAorICAgIDY1NjUwLCA2NTY1NCwgNjU2NTgsIDY1NjYyLCA2NTY2NiwgNjU2NzAsIDY1Njc0LCA2NTY3OCwgNjU2ODIsIDY1Njg2LCAKKyAgICA2NTY5MCwgNjU2OTQsIDY1Njk4LCA2NTcwMiwgNjU3MDYsIDY1NzEwLCA2NTcxNCwgNjU3MTgsIDY1NzIyLCA2NTcyNiwgCisgICAgNjU3MzAsIDY1NzM0LCA2NTczNywgNjU3NDEsIDY1NzQ1LCA2NTc0OSwgNjU3NTMsIDY1NzU3LCA2NTc2MSwgNjU3NjUsIAorICAgIDY1NzY5LCA2NTc3MywgNjU3NzcsIDY1NzgxLCA2NTc4NSwgNjU3ODksIDY1NzkzLCA2NTc5NywgNjU4MDEsIDY1ODA1LCAKKyAgICA2NTgwOSwgNjU4MTMsIDY1ODE3LCA2NTgyMSwgNjU4MjUsIDY1ODI5LCA2NTgzMywgNjU4MzcsIDY1ODQxLCA2NTg0NSwgCisgICAgNjU4NDksIDY1ODUzLCA2NTg1NywgNjU4NjEsIDY1ODY1LCA2NTg2OSwgNjU4NzMsIDY1ODc3LCA2NTg4MSwgNjU4ODUsIAorICAgIDY1ODg5LCA2NTg5MywgNjU4OTcsIDY1OTAxLCA2NTkwNSwgNjU5MDksIDY1OTEzLCA2NTkxNywgNjU5MjEsIDY1OTI1LCAKKyAgICA2NTkyOSwgNjU5MzMsIDY1OTM3LCA2NTk0MSwgNjU5NDUsIDY1OTQ5LCA2NTk1MywgNjU5NTcsIDY1OTYxLCA2NTk2NSwgCisgICAgNjU5NjksIDY1OTczLCA2NTk3NywgNjU5ODEsIDY1OTg1LCA2NTk4OSwgNjU5OTMsIDY1OTk3LCA2NjAwMSwgNjYwMDUsIAorICAgIDY2MDA5LCA2NjAxMywgNjYwMTcsIDY2MDIxLCA2NjAyNSwgNjYwMjksIDY2MDMzLCA2NjAzNywgNjYwNDEsIDY2MDQ1LCAKKyAgICA2NjA0OSwgNjYwNTMsIDY2MDU3LCA2NjA2MSwgNjYwNjUsIDY2MDY5LCA2NjA3MywgNjYwNzcsIDY2MDgxLCA2NjA4NSwgCisgICAgNjYwODksIDY2MDkzLCA2NjA5NywgNjYxMDEsIDY2MTA1LCA2NjEwOSwgNjYxMTMsIDY2MTE3LCA2NjEyMSwgNjYxMjUsIAorICAgIDY2MTI5LCA2NjEzMywgNjYxMzcsIDY2MTQxLCA2NjE0NSwgNjYxNDksIDY2MTUzLCA2NjE1NywgNjYxNjEsIDY2MTY1LCAKKyAgICA2NjE2OSwgNjYxNzMsIDY2MTc3LCA2NjE4MSwgNjYxODUsIDY2MTg5LCA2NjE5MywgNjYxOTcsIDY2MjAxLCA2NjIwNSwgCisgICAgNjYyMDksIDY2MjEzLCA2NjIxNywgNjYyMjEsIDY2MjI1LCA2NjIyOSwgNjYyMzMsIDY2MjM3LCA2NjI0MSwgNjYyNDUsIAorICAgIDY2MjQ5LCA2NjI1MywgNjYyNTcsIDY2MjYxLCA2NjI2NSwgNjYyNjksIDY2MjczLCA2NjI3NywgNjYyODEsIDY2Mjg1LCAKKyAgICA2NjI4OSwgNjYyOTMsIDY2Mjk3LCA2NjMwMSwgNjYzMDUsIDY2MzA5LCA2NjMxMywgNjYzMTcsIDY2MzIxLCA2NjMyNSwgCisgICAgNjYzMjksIDY2MzMzLCA2NjMzNywgNjYzNDAsIDY2MzQ0LCA2NjM0OCwgNjYzNTIsIDY2MzU2LCA2NjM2MCwgNjYzNjQsIAorICAgIDY2MzY4LCA2NjM3MiwgNjYzNzYsIDY2MzgwLCA2NjM4NCwgNjYzODgsIDY2MzkyLCA2NjM5NiwgNjY0MDAsIDY2NDA0LCAKKyAgICA2NjQwOCwgNjY0MTIsIDY2NDE2LCA2NjQyMCwgNjY0MjQsIDY2NDI4LCA2NjQzMiwgNjY0MzYsIDY2NDQwLCA2NjQ0NCwgCisgICAgNjY0NDgsIDY2NDUyLCA2NjQ1NiwgNjY0NjAsIDY2NDY0LCA2NjQ2OCwgNjY0NzIsIDY2NDc2LCA2NjQ4MCwgNjY0ODQsIAorICAgIDY2NDg4LCA2NjQ5MiwgNjY0OTYsIDY2NTAwLCA2NjUwNCwgNjY1MDgsIDY2NTEyLCA2NjUxNiwgNjY1MjAsIDY2NTI0LCAKKyAgICA2NjUyOCwgNjY1MzIsIDY2NTM2LCA2NjU0MCwgNjY1NDQsIDY2NTQ4LCA2NjU1MiwgNjY1NTYsIDY2NTYwLCA2NjU2NCwgCisgICAgNjY1NjgsIDY2NTcyLCA2NjU3NiwgNjY1ODAsIDY2NTg0LCA2NjU4OCwgNjY1OTIsIDY2NTk2LCA2NjYwMCwgNjY2MDQsIAorICAgIDY2NjA4LCA2NjYxMiwgNjY2MTYsIDY2NjIwLCA2NjYyNCwgNjY2MjgsIDY2NjMyLCA2NjYzNiwgNjY2NDAsIDY2NjQ0LCAKKyAgICA2NjY0OCwgNjY2NTIsIDY2NjU2LCA2NjY2MCwgNjY2NjQsIDY2NjY4LCA2NjY3MiwgNjY2NzYsIDY2NjgwLCA2NjY4NCwgCisgICAgNjY2ODgsIDY2NjkyLCA2NjY5NiwgNjY3MDAsIDY2NzA0LCA2NjcwOCwgNjY3MTIsIDY2NzE2LCA2NjcyMCwgNjY3MjQsIAorICAgIDY2NzI4LCA2NjczMiwgNjY3MzYsIDY2NzQwLCA2Njc0NCwgNjY3NDgsIDY2NzUyLCA2Njc1NiwgNjY3NjAsIDY2NzY0LCAKKyAgICA2Njc2OCwgNjY3NzIsIDY2Nzc2LCA2Njc4MCwgNjY3ODQsIDY2Nzg4LCA2Njc5MiwgNjY3OTYsIDY2ODAwLCA2NjgwNCwgCisgICAgNjY4MDgsIDY2ODEyLCA2NjgxNiwgNjY4MjAsIDY2ODI0LCA2NjgyOCwgNjY4MzIsIDY2ODM2LCA2Njg0MCwgNjY4NDQsIAorICAgIDY2ODQ4LCA2Njg1MiwgNjY4NTYsIDY2ODYwLCA2Njg2NCwgNjY4NjgsIDY2ODcyLCA2Njg3NiwgNjY4ODAsIDY2ODg0LCAKKyAgICA2Njg4OCwgNjY4OTIsIDY2ODk2LCA2NjkwMCwgNjY5MDQsIDY2OTA4LCA2NjkxMiwgNjY5MTYsIDY2OTIwLCA2NjkyNCwgCisgICAgNjY5MjgsIDY2OTMyLCA2NjkzNiwgNjY5NDAsIDY2OTQ0LCA2Njk0OCwgNjY5NTIsIDY2OTU2LCA2Njk2MCwgNjY5NjQsIAorICAgIDY2OTY4LCA2Njk3MiwgNjY5NzYsIDY2OTgwLCA2Njk4NCwgNjY5ODgsIDY2OTkyLCA2Njk5NiwgNjcwMDAsIDY3MDA0LCAKKyAgICA2NzAwOCwgNjcwMTIsIDY3MDE2LCA2NzAyMCwgNjcwMjQsIDY3MDI4LCA2NzAzMiwgNjcwMzYsIDY3MDQwLCA2NzA0NCwgCisgICAgNjcwNDgsIDY3MDUyLCA2NzA1NiwgNjcwNjAsIDY3MDY0LCA2NzA2OCwgNjcwNzIsIDY3MDc2LCA2NzA4MCwgNjcwODQsIAorICAgIDY3MDg4LCA2NzA5MiwgNjcwOTYsIDY3MDk5LCA2NzEwMywgNjcxMDcsIDY3MTExLCA2NzExNSwgNjcxMTksIDY3MTIzLCAKKyAgICA2NzEyNywgNjcxMzEsIDY3MTM1LCA2NzEzOSwgNjcxNDMsIDY3MTQ3LCA2NzE1MSwgNjcxNTUsIDY3MTU5LCA2NzE2MywgCisgICAgNjcxNjcsIDY3MTcxLCA2NzE3NSwgNjcxNzksIDY3MTgzLCA2NzE4NywgNjcxOTEsIDY3MTk1LCA2NzE5OSwgNjcyMDMsIAorICAgIDY3MjA3LCA2NzIxMSwgNjcyMTUsIDY3MjE5LCA2NzIyMywgNjcyMjcsIDY3MjMxLCA2NzIzNSwgNjcyMzksIDY3MjQzLCAKKyAgICA2NzI0NywgNjcyNTEsIDY3MjU1LCA2NzI1OSwgNjcyNjMsIDY3MjY3LCA2NzI3MSwgNjcyNzUsIDY3Mjc5LCA2NzI4MywgCisgICAgNjcyODcsIDY3MjkxLCA2NzI5NSwgNjcyOTksIDY3MzAzLCA2NzMwNywgNjczMTEsIDY3MzE1LCA2NzMxOSwgNjczMjMsIAorICAgIDY3MzI3LCA2NzMzMSwgNjczMzUsIDY3MzM5LCA2NzM0MywgNjczNDcsIDY3MzUxLCA2NzM1NSwgNjczNTksIDY3MzYzLCAKKyAgICA2NzM2NywgNjczNzEsIDY3Mzc1LCA2NzM3OSwgNjczODMsIDY3Mzg3LCA2NzM5MSwgNjczOTUsIDY3Mzk5LCA2NzQwMywgCisgICAgNjc0MDcsIDY3NDExLCA2NzQxNSwgNjc0MTksIDY3NDIzLCA2NzQyNywgNjc0MzEsIDY3NDM1LCA2NzQzOSwgNjc0NDMsIAorICAgIDY3NDQ3LCA2NzQ1MSwgNjc0NTUsIDY3NDU5LCA2NzQ2MywgNjc0NjcsIDY3NDcxLCA2NzQ3NSwgNjc0NzksIDY3NDgzLCAKKyAgICA2NzQ4NywgNjc0OTEsIDY3NDk1LCA2NzQ5OSwgNjc1MDMsIDY3NTA3LCA2NzUxMSwgNjc1MTUsIDY3NTE5LCA2NzUyMywgCisgICAgNjc1MjcsIDY3NTMxLCA2NzUzNSwgNjc1MzksIDY3NTQzLCA2NzU0NywgNjc1NTEsIDY3NTU1LCA2NzU1OSwgNjc1NjMsIAorICAgIDY3NTY3LCA2NzU3MSwgNjc1NzUsIDY3NTc5LCA2NzU4MywgNjc1ODcsIDY3NTkxLCA2NzU5NSwgNjc1OTksIDY3NjAzLCAKKyAgICA2NzYwNywgNjc2MTEsIDY3NjE1LCA2NzYxOSwgNjc2MjMsIDY3NjI3LCA2NzYzMSwgNjc2MzUsIDY3NjM5LCA2NzY0MywgCisgICAgNjc2NDcsIDY3NjUxLCA2NzY1NSwgNjc2NTksIDY3NjYzLCA2NzY2NywgNjc2NzEsIDY3Njc1LCA2NzY3OSwgNjc2ODMsIAorICAgIDY3Njg3LCA2NzY5MSwgNjc2OTUsIDY3Njk5LCA2NzcwMywgNjc3MDcsIDY3NzExLCA2NzcxNSwgNjc3MTksIDY3NzIzLCAKKyAgICA2NzcyNywgNjc3MzEsIDY3NzM1LCA2NzczOSwgNjc3NDMsIDY3NzQ3LCA2Nzc1MSwgNjc3NTUsIDY3NzU5LCA2Nzc2MywgCisgICAgNjc3NjcsIDY3NzcxLCA2Nzc3NSwgNjc3NzksIDY3NzgzLCA2Nzc4NywgNjc3OTEsIDY3Nzk1LCA2Nzc5OSwgNjc4MDMsIAorICAgIDY3ODA3LCA2NzgxMSwgNjc4MTUsIDY3ODE5LCA2NzgyMywgNjc4MjcsIDY3ODMxLCA2NzgzNSwgNjc4MzksIDY3ODQzLCAKKyAgICA2Nzg0NywgNjc4NTEsIDY3ODU1LCA2Nzg1OSwgNjc4NjMsIDY3ODY3LCA2Nzg3MSwgNjc4NzUsIDY3ODc5LCAwLCAwLCAwLCAKKyAgICA2Nzg4MywgNjc4ODcsIDY3ODkxLCA2Nzg5NSwgNjc4OTksIDY3OTAzLCA2NzkwNywgNjc5MTEsIDY3OTE1LCA2NzkxOSwgCisgICAgNjc5MjMsIDY3OTI3LCA2NzkzMSwgNjc5MzUsIDY3OTM5LCA2Nzk0MywgNjc5NDcsIDY3OTUxLCA2Nzk1NSwgNjc5NTksIAorICAgIDY3OTYzLCA2Nzk2NywgNjc5NzEsIDY3OTc1LCA2Nzk3OSwgNjc5ODMsIDY3OTg3LCA2Nzk5MSwgNjc5OTUsIDY3OTk5LCAKKyAgICA2ODAwMywgNjgwMDcsIDY4MDExLCA2ODAxNSwgNjgwMTksIDY4MDIzLCA2ODAyNywgNjgwMzEsIDY4MDM1LCA2ODAzOSwgCisgICAgNjgwNDMsIDY4MDQ3LCA2ODA1MSwgNjgwNTUsIDY4MDU5LCA2ODA2MywgNjgwNjcsIDY4MDcxLCA2ODA3NSwgNjgwNzksIAorICAgIDY4MDgzLCA2ODA4NywgNjgwOTEsIDY4MDk1LCA2ODA5OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjgxMDMsIAorICAgIDY4MTA4LCA2ODExMiwgNjgxMTcsIDY4MTIyLCA2ODEyNywgNjgxMzIsIDY4MTM3LCA2ODE0MSwgNjgxNDYsIDY4MTUxLCAKKyAgICA2ODE1NiwgNjgxNjEsIDY4MTY2LCA2ODE3MSwgNjgxNzYsIDY4MTgwLCA2ODE4NCwgNjgxODksIDY4MTk0LCA2ODE5OSwgCisgICAgNjgyMDQsIDY4MjA5LCA2ODIxMywgNjgyMTgsIDY4MjIzLCA2ODIyOCwgNjgyMzMsIDY4MjM4LCA2ODI0MiwgNjgyNDcsIAorICAgIDY4MjUxLCA2ODI1NiwgNjgyNjAsIDY4MjY1LCA2ODI2OSwgNjgyNzMsIDY4Mjc3LCA2ODI4MiwgNjgyODcsIDY4MjkyLCAKKyAgICA2ODMwMCwgNjgzMDgsIDY4MzE2LCA2ODMyNCwgNjgzMzEsIDY4MzM5LCA2ODM0NSwgNjgzNTMsIDY4MzU3LCA2ODM2MSwgCisgICAgNjgzNjUsIDY4MzY5LCA2ODM3MywgNjgzNzcsIDY4MzgxLCA2ODM4NSwgNjgzODksIDY4MzkzLCA2ODM5NywgNjg0MDEsIAorICAgIDY4NDA1LCA2ODQwOSwgNjg0MTMsIDY4NDE3LCA2ODQyMSwgNjg0MjUsIDY4NDI5LCA2ODQzMywgNjg0MzcsIDY4NDQxLCAKKyAgICA2ODQ0NSwgNjg0NDksIDY4NDUzLCA2ODQ1NywgNjg0NjEsIDY4NDY1LCA2ODQ2OSwgNjg0NzMsIDY4NDc3LCA2ODQ4MSwgCisgICAgNjg0ODUsIDY4NDg5LCA2ODQ5MywgNjg0OTcsIDY4NTAwLCA2ODUwNCwgNjg1MDgsIDY4NTEyLCA2ODUxNiwgNjg1MjAsIAorICAgIDY4NTI0LCA2ODUyOCwgNjg1MzIsIDY4NTM2LCA2ODU0MCwgNjg1NDQsIDY4NTQ4LCA2ODU1MiwgNjg1NTYsIDY4NTYwLCAKKyAgICA2ODU2NCwgNjg1NjgsIDY4NTcyLCA2ODU3NiwgNjg1ODAsIDY4NTg0LCA2ODU4OCwgNjg1OTIsIDY4NTk2LCA2ODYwMCwgCisgICAgNjg2MDQsIDY4NjA4LCA2ODYxMiwgNjg2MTYsIDY4NjIwLCA2ODYyNCwgNjg2MjgsIDY4NjMyLCA2ODYzNiwgNjg2NDAsIAorICAgIDY4NjQ0LCA2ODY0NywgNjg2NTEsIDY4NjU1LCA2ODY1OCwgNjg2NjIsIDY4NjY2LCA2ODY3MCwgNjg2NzMsIDY4Njc3LCAKKyAgICA2ODY4MSwgNjg2ODUsIDY4Njg5LCA2ODY5MywgNjg2OTcsIDY4NzAxLCA2ODcwNSwgNjg3MDksIDY4NzEzLCA2ODcxNywgCisgICAgNjg3MjEsIDY4NzI1LCA2ODcyOSwgNjg3MzIsIDY4NzM2LCA2ODc0MCwgNjg3NDQsIDY4NzQ4LCA2ODc1MiwgNjg3NTYsIAorICAgIDY4NzYwLCA2ODc2NCwgNjg3NjgsIDY4NzcxLCA2ODc3NCwgNjg3NzgsIDY4NzgyLCA2ODc4NiwgNjg3ODksIDY4NzkyLCAKKyAgICA2ODc5NiwgNjg4MDAsIDY4ODA0LCA2ODgwOCwgNjg4MTIsIDY4ODE2LCA2ODgyMCwgNjg4MjQsIDY4ODI4LCA2ODgzMiwgCisgICAgNjg4MzYsIDY4ODQwLCA2ODg0NCwgNjg4NDgsIDY4ODUyLCA2ODg1NiwgNjg4NjAsIDY4ODY0LCA2ODg2OCwgNjg4NzIsIAorICAgIDY4ODc2LCA2ODg4MCwgNjg4ODQsIDY4ODg4LCA2ODg5MiwgNjg4OTYsIDY4OTAwLCA2ODkwNCwgNjg5MDgsIDY4OTEyLCAKKyAgICA2ODkxNiwgNjg5MjAsIDY4OTI0LCA2ODkyOCwgNjg5MzIsIDY4OTM2LCA2ODk0MCwgNjg5NDMsIDY4OTQ3LCA2ODk1MSwgCisgICAgNjg5NTUsIDY4OTU5LCA2ODk2MywgNjg5NjcsIDY4OTcxLCA2ODk3NSwgNjg5NzksIDY4OTgzLCA2ODk4NywgNjg5OTEsIAorICAgIDY4OTk1LCA2ODk5OSwgNjkwMDMsIDY5MDA3LCA2OTAxMSwgNjkwMTUsIDY5MDE5LCA2OTAyMywgNjkwMjcsIDY5MDMxLCAKKyAgICA2OTAzNSwgNjkwMzksIDY5MDQzLCA2OTA0NywgNjkwNTEsIDY5MDU1LCA2OTA1OSwgNjkwNjMsIDY5MDY3LCA2OTA3MSwgCisgICAgNjkwNzUsIDY5MDc5LCA2OTA4MywgNjkwODcsIDY5MDkwLCA2OTA5NCwgNjkwOTgsIDY5MTAyLCA2OTEwNiwgNjkxMTAsIAorICAgIDY5MTE0LCA2OTExOCwgNjkxMjIsIDY5MTI2LCA2OTEzMCwgNjkxMzQsIDY5MTM4LCA2OTE0MiwgNjkxNDYsIDY5MTUwLCAKKyAgICA2OTE1NCwgNjkxNTcsIDY5MTYxLCA2OTE2NSwgNjkxNjksIDY5MTczLCA2OTE3NywgNjkxODEsIDY5MTg1LCA2OTE4OSwgCisgICAgNjkxOTMsIDY5MTk3LCA2OTIwMSwgNjkyMDUsIDY5MjA5LCA2OTIxMywgNjkyMTcsIDY5MjIxLCA2OTIyNSwgNjkyMjksIAorICAgIDY5MjMzLCA2OTIzNywgNjkyNDEsIDY5MjQ0LCA2OTI0OCwgNjkyNTIsIDY5MjU2LCA2OTI2MCwgNjkyNjQsIDY5MjY4LCAKKyAgICA2OTI3MiwgNjkyNzYsIDY5MjgwLCA2OTI4NCwgNjkyODgsIDY5MjkyLCA2OTI5NiwgNjkzMDAsIDY5MzA0LCA2OTMwOCwgCisgICAgNjkzMTIsIDY5MzE2LCA2OTMyMCwgNjkzMjQsIDY5MzI4LCA2OTMzMiwgNjkzMzYsIDY5MzQwLCA2OTM0NCwgNjkzNDgsIAorICAgIDY5MzUyLCA2OTM1NiwgNjkzNjAsIDY5MzY0LCA2OTM2OCwgNjkzNzIsIDY5Mzc2LCA2OTM4MCwgNjkzODQsIDY5Mzg4LCAKKyAgICA2OTM5MiwgNjkzOTYsIDY5NDAwLCA2OTQwNCwgNjk0MDgsIDY5NDEyLCA2OTQxNiwgNjk0MTksIDY5NDI0LCA2OTQyOCwgCisgICAgNjk0MzQsIDY5NDM5LCA2OTQ0NSwgNjk0NDksIDY5NDUzLCA2OTQ1NywgNjk0NjEsIDY5NDY1LCA2OTQ2OSwgNjk0NzMsIAorICAgIDY5NDc3LCA2OTQ4MSwgNjk0ODUsIDY5NDg5LCA2OTQ5MywgNjk0OTcsIDY5NTAxLCA2OTUwNCwgNjk1MDcsIDY5NTEwLCAKKyAgICA2OTUxMywgNjk1MTYsIDY5NTE5LCA2OTUyMiwgNjk1MjUsIDY5NTI4LCA2OTUzMywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjk1MzksIDY5NTQ0LCA2OTU0OSwgNjk1NTQsIDY5NTU5LCAKKyAgICA2OTU2NiwgNjk1NzMsIDY5NTc4LCA2OTU4MywgNjk1ODgsIDY5NTkzLCA2OTYwMCwgNjk2MDcsIDY5NjE0LCA2OTYyMSwgCisgICAgNjk2MjgsIDY5NjM1LCA2OTY0NSwgNjk2NTUsIDY5NjYyLCA2OTY2OSwgNjk2NzYsIDY5NjgzLCA2OTY4OSwgNjk2OTUsIAorICAgIDY5NzA0LCA2OTcxMywgNjk3MjAsIDY5NzI3LCA2OTczOCwgNjk3NDksIDY5NzU0LCA2OTc1OSwgNjk3NjYsIDY5NzczLCAKKyAgICA2OTc4MCwgNjk3ODcsIDY5Nzk0LCA2OTgwMSwgNjk4MDgsIDY5ODE1LCA2OTgyMSwgNjk4MjcsIDY5ODMzLCA2OTgzOSwgCisgICAgNjk4NDYsIDY5ODUzLCA2OTg1OCwgNjk4NjIsIDY5ODY5LCA2OTg3NiwgNjk4ODMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDY5ODg3LCA2OTg5MSwgNjk4OTUsIDY5ODk4LCA2OTkwMSwgNjk5MDYsIDY5OTExLCA2OTkxNiwgNjk5MjEsIDY5OTI2LCAKKyAgICA2OTkzMSwgNjk5MzYsIDY5OTQxLCA2OTk0NiwgNjk5NTEsIDY5OTYwLCA2OTk2OSwgNjk5NzQsIDY5OTc5LCA2OTk4NCwgCisgICAgNjk5ODksIDY5OTk0LCA2OTk5OSwgNzAwMDQsIDcwMDA5LCA3MDAxNCwgNzAwMTksIDcwMDI0LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA3MDAyOSwgNzAwMzIsIDcwMDM1LCA3MDAzOCwgNzAwNDIsIDcwMDQ2LCA3MDA1MCwgNzAwNTQsIDcwMDU3LCAKKyAgICA3MDA2MSwgNzAwNjQsIDcwMDY4LCA3MDA3MSwgNzAwNzUsIDcwMDc5LCA3MDA4MywgNzAwODcsIDcwMDkxLCA3MDA5NSwgCisgICAgNzAwOTksIDcwMTAyLCA3MDEwNiwgNzAxMTAsIDcwMTE0LCA3MDExOCwgNzAxMjIsIDcwMTI2LCA3MDEzMCwgNzAxMzQsIAorICAgIDcwMTM4LCA3MDE0MiwgNzAxNDYsIDcwMTUwLCA3MDE1NCwgNzAxNTgsIDcwMTYxLCA3MDE2NSwgNzAxNjksIDcwMTczLCAKKyAgICA3MDE3NywgNzAxODEsIDcwMTg1LCA3MDE4OSwgNzAxOTMsIDcwMTk3LCA3MDIwMSwgNzAyMDUsIDcwMjA5LCA3MDIxMywgCisgICAgNzAyMTcsIDcwMjIxLCA3MDIyNSwgNzAyMjksIDcwMjMzLCA3MDIzNywgNzAyNDEsIDcwMjQ1LCA3MDI0OSwgNzAyNTMsIAorICAgIDcwMjU3LCA3MDI2MCwgNzAyNjQsIDcwMjY4LCA3MDI3MiwgNzAyNzYsIDcwMjgwLCA3MDI4NCwgNzAyODgsIDcwMjkxLCAKKyAgICA3MDI5NSwgNzAyOTksIDcwMzAzLCA3MDMwNywgNzAzMTEsIDcwMzE1LCA3MDMxOSwgNzAzMjMsIDcwMzI3LCA3MDMzMSwgCisgICAgNzAzMzUsIDcwMzM5LCA3MDM0NCwgNzAzNDksIDcwMzUyLCA3MDM1NywgNzAzNjAsIDcwMzYzLCA3MDM2NiwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgNzAzNzAsIDcwMzc5LCA3MDM4OCwgNzAzOTcsIDcwNDA2LCA3MDQxNSwgNzA0MjQsIDcwNDMzLCAKKyAgICA3MDQ0MiwgNzA0NTAsIDcwNDU3LCA3MDQ2NSwgNzA0NzIsIDcwNDgwLCA3MDQ5MCwgNzA0OTksIDcwNTA5LCA3MDUxOCwgCisgICAgNzA1MjgsIDcwNTM2LCA3MDU0MywgNzA1NTEsIDcwNTU4LCA3MDU2NiwgNzA1NzEsIDcwNTc2LCA3MDU4MSwgNzA1OTAsIAorICAgIDcwNTk2LCA3MDYwMiwgNzA2MDksIDcwNjE4LCA3MDYyNiwgNzA2MzQsIDcwNjQyLCA3MDY0OSwgNzA2NTYsIDcwNjYzLCAKKyAgICA3MDY3MCwgNzA2NzUsIDcwNjgwLCA3MDY4NSwgNzA2OTAsIDcwNjk1LCA3MDcwMCwgNzA3MDUsIDcwNzEwLCA3MDcxOCwgCisgICAgNzA3MjYsIDcwNzMyLCA3MDczNywgNzA3NDIsIDcwNzQ3LCA3MDc1MiwgNzA3NTcsIDcwNzYyLCA3MDc2NywgNzA3NzIsIAorICAgIDcwNzc3LCA3MDc4NSwgNzA3OTMsIDcwNzk4LCA3MDgwMywgNzA4MTMsIDcwODIzLCA3MDgzMCwgNzA4MzcsIDcwODQ2LCAKKyAgICA3MDg1NSwgNzA4NjcsIDcwODc5LCA3MDg4NSwgNzA4OTEsIDcwODk5LCA3MDkwNywgNzA5MTcsIDcwOTI3LCA3MDkzNCwgCisgICAgNzA5NDEsIDcwOTQ2LCA3MDk1MSwgNzA5NjMsIDcwOTc1LCA3MDk4MywgNzA5OTEsIDcxMDAxLCA3MTAxMSwgNzEwMjMsIAorICAgIDcxMDM1LCA3MTA0NCwgNzEwNTMsIDcxMDYwLCA3MTA2NywgNzEwNzQsIDcxMDgxLCA3MTA5MCwgNzEwOTksIDcxMTA0LCAKKyAgICA3MTEwOSwgNzExMTYsIDcxMTIzLCA3MTEzMCwgNzExMzcsIDcxMTQ5LCA3MTE2MSwgNzExNjYsIDcxMTcxLCA3MTE3NiwgCisgICAgNzExODEsIDcxMTg2LCA3MTE5MSwgNzExOTYsIDcxMjAxLCA3MTIwNSwgNzEyMTAsIDcxMjE1LCA3MTIyMCwgNzEyMjUsIAorICAgIDcxMjMwLCA3MTIzNiwgNzEyNDEsIDcxMjQ2LCA3MTI1MywgNzEyNjAsIDcxMjY3LCA3MTI3NCwgNzEyODEsIDcxMjkwLCAKKyAgICA3MTI5OSwgNzEzMDUsIDcxMzExLCA3MTMxNywgNzEzMjMsIDcxMzI5LCA3MTMzNSwgNzEzNDIsIDcxMzQ5LCA3MTM1NiwgCisgICAgNzEzNjAsIDcxMzY3LCA3MTM3MiwgNzEzNzcsIDcxMzg0LCAwLCA3MTM5NywgNzE0MDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcxNDEzLCA3MTQyMiwgNzE0MzEsIDcxNDQwLCA3MTQ0OSwgNzE0NTgsIDcxNDY3LCAKKyAgICA3MTQ3NiwgNzE0ODUsIDcxNDk0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3MTU1OSwgNzE1NjYsIDcxNTc0LCA3MTU4MiwgCi0gICAgNzE1ODksIDcxNTk3LCA3MTYwNCwgNzE2MTAsIDcxNjE2LCA3MTYyMywgNzE2MjksIDcxNjM1LCA3MTY0MSwgNzE2NDgsIAotICAgIDcxNjU1LCA3MTY2MiwgNzE2NjksIDcxNjc2LCA3MTY4MywgNzE2OTAsIDcxNjk3LCA3MTcwNCwgNzE3MTEsIDcxNzE4LCAKLSAgICA3MTcyNSwgNzE3MzIsIDcxNzM5LCA3MTc0NSwgNzE3NTIsIDcxNzU5LCA3MTc2NiwgNzE3NzMsIDcxNzgwLCA3MTc4NywgCi0gICAgNzE3OTQsIDcxODAxLCA3MTgwOCwgNzE4MTUsIDcxODIyLCA3MTgyOSwgNzE4MzYsIDcxODQzLCA3MTg1MCwgNzE4NTcsIAotICAgIDcxODY0LCA3MTg3MSwgNzE4NzksIDcxODg3LCA3MTg5NSwgNzE5MDMsIDAsIDAsIDAsIDAsIDcxOTExLCA3MTkyMCwgCi0gICAgNzE5MjksIDcxOTM4LCA3MTk0NywgNzE5NTYsIDcxOTY1LCA3MTk3MiwgNzE5NzksIDcxOTg2LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA3MTk5MywgNzE5OTcsIDcyMDAyLCA3MjAwNywgNzIwMTIsIDcyMDE3LCA3MjAyMiwgNzIwMjcsIDcyMDMyLCA3MjAzNywgCi0gICAgNzIwNDIsIDcyMDQ3LCA3MjA1MSwgNzIwNTUsIDcyMDYwLCA3MjA2NSwgNzIwNjksIDcyMDc0LCA3MjA3OSwgNzIwODQsIAotICAgIDcyMDg5LCA3MjA5NCwgNzIwOTksIDcyMTA0LCA3MjEwOCwgNzIxMTIsIDcyMTE3LCA3MjEyMiwgNzIxMjcsIDcyMTMxLCAKLSAgICA3MjEzNSwgNzIxMzksIDcyMTQzLCA3MjE0NywgNzIxNTEsIDcyMTU2LCA3MjE2MSwgNzIxNjYsIDcyMTcxLCA3MjE3NiwgCi0gICAgNzIxODMsIDcyMTg5LCA3MjE5NCwgNzIxOTksIDcyMjA0LCA3MjIwOSwgNzIyMTUsIDcyMjIyLCA3MjIyOCwgNzIyMzUsIAotICAgIDcyMjQxLCA3MjI0NywgNzIyNTIsIDcyMjU5LCA3MjI2NSwgNzIyNzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDcyMjc2LCAKLSAgICA3MjI4MCwgNzIyODQsIDcyMjg3LCA3MjI5MSwgNzIyOTQsIDcyMjk4LCA3MjMwMSwgNzIzMDUsIDcyMzA5LCA3MjMxNCwgCi0gICAgNzIzMTgsIDcyMzIzLCA3MjMyNiwgNzIzMzAsIDcyMzM0LCA3MjMzNywgNzIzNDEsIDcyMzQ1LCA3MjM0OCwgNzIzNTIsIAotICAgIDcyMzU2LCA3MjM2MCwgNzIzNjQsIDcyMzY4LCA3MjM3MiwgNzIzNzYsIDcyMzgwLCA3MjM4NCwgNzIzODgsIDcyMzkyLCAKLSAgICA3MjM5NiwgNzI0MDAsIDcyNDA0LCA3MjQwOCwgNzI0MTIsIDcyNDE2LCA3MjQyMCwgNzI0MjMsIDcyNDI2LCA3MjQzMCwgCi0gICAgNzI0MzQsIDcyNDM4LCA3MjQ0MSwgNzI0NDQsIDcyNDQ3LCA3MjQ1MSwgNzI0NTUsIDcyNDU5LCA3MjQ2MywgNzI0NjcsIAotICAgIDcyNDcwLCA3MjQ3NCwgNzI0ODAsIDcyNDg1LCA3MjQ4OSwgNzI0OTQsIDcyNDk4LCA3MjUwMywgNzI1MDgsIDcyNTE0LCAKLSAgICA3MjUxOSwgNzI1MjUsIDcyNTI5LCA3MjUzNCwgNzI1MzksIDcyNTQzLCA3MjU0OCwgNzI1NTMsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDcyNTU3LCA3MjU2MCwgNzI1NjQsIDcyNTY4LCA3MjU3MSwgNzI1NzQsIDcyNTc3LCA3MjU4MCwgNzI1ODMsIAotICAgIDcyNTg2LCA3MjU4OSwgNzI1OTIsIDAsIDAsIDAsIDAsIDAsIDAsIDcyNTk1LCA3MjYwMCwgNzI2MDQsIDcyNjA4LCA3MjYxMiwgCi0gICAgNzI2MTYsIDcyNjIwLCA3MjYyNCwgNzI2MjgsIDcyNjMyLCA3MjYzNiwgNzI2NDAsIDcyNjQ0LCA3MjY0OCwgNzI2NTIsIAotICAgIDcyNjU2LCA3MjY2MCwgNzI2NjUsIDcyNjcwLCA3MjY3NiwgNzI2ODIsIDcyNjg5LCA3MjY5NCwgNzI2OTksIDcyNzA1LCAKLSAgICA3MjcwOSwgNzI3MTQsIDcyNzE3LCAwLCAwLCAwLCAwLCA3MjcyMCwgNzI3MjcsIDcyNzMzLCA3MjczOSwgNzI3NDUsIAotICAgIDcyNzUxLCA3Mjc1NywgNzI3NjMsIDcyNzY5LCA3Mjc3NSwgNzI3ODEsIDcyNzg3LCA3Mjc5NCwgNzI4MDEsIDcyODA4LCAKLSAgICA3MjgxNSwgNzI4MjIsIDcyODI5LCA3MjgzNiwgNzI4NDMsIDcyODUwLCA3Mjg1NiwgNzI4NjIsIDcyODY5LCA3Mjg3NSwgCi0gICAgNzI4ODIsIDcyODg5LCA3Mjg5NSwgNzI5MDEsIDcyOTA4LCA3MjkxNSwgNzI5MjIsIDcyOTI4LCA3MjkzNSwgNzI5NDIsIAotICAgIDcyOTQ4LCA3Mjk1NSwgNzI5NjEsIDcyOTY4LCA3Mjk3NSwgNzI5ODEsIDcyOTg3LCA3Mjk5NCwgNzMwMDAsIDczMDA3LCAKLSAgICA3MzAxNCwgNzMwMjMsIDczMDMwLCA3MzAzNywgNzMwNDEsIDczMDQ2LCA3MzA1MSwgNzMwNTYsIDczMDYxLCA3MzA2NSwgCi0gICAgNzMwNjksIDczMDc0LCA3MzA3OCwgNzMwODMsIDczMDg4LCA3MzA5MywgNzMwOTgsIDczMTAyLCA3MzEwNywgNzMxMTEsIAotICAgIDczMTE2LCA3MzEyMCwgNzMxMjUsIDczMTMwLCA3MzEzNSwgNzMxNDAsIDczMTQ0LCA3MzE0OSwgNzMxNTQsIDczMTU5LCAKLSAgICA3MzE2NSwgNzMxNzAsIDczMTc2LCA3MzE4MiwgNzMxODgsIDczMTk1LCA3MzIwMSwgNzMyMDcsIDczMjE0LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3MzIxOCwgNzMyMjMsIDczMjI3LCA3MzIzMSwgNzMyMzUsIDczMjM5LCA3MzI0MywgCi0gICAgNzMyNDcsIDczMjUxLCA3MzI1NSwgNzMyNTksIDczMjYzLCA3MzI2NywgNzMyNzEsIDczMjc1LCA3MzI3OSwgNzMyODMsIAotICAgIDczMjg3LCA3MzI5MSwgNzMyOTUsIDczMjk5LCA3MzMwMywgNzMzMDcsIDczMzExLCA3MzMxNSwgNzMzMTksIDczMzIzLCAKLSAgICA3MzMyNywgNzMzMzEsIDczMzM1LCAwLCAwLCAwLCA3MzMzOSwgNzMzNDMsIDczMzQ3LCA3MzM1MSwgNzMzNTUsIDczMzU4LCAKLSAgICA3MzM2NCwgNzMzNjcsIDczMzcxLCA3MzM3NCwgNzMzODAsIDczMzg2LCA3MzM5NCwgNzMzOTcsIDczNDAxLCA3MzQwNCwgCi0gICAgNzM0MDcsIDczNDEzLCA3MzQxOSwgNzM0MjMsIDczNDI5LCA3MzQzMywgNzM0MzcsIDczNDQzLCA3MzQ0NywgNzM0NTMsIAotICAgIDczNDU5LCA3MzQ2MywgNzM0NjcsIDczNDczLCA3MzQ3NywgNzM0ODMsIDczNDg5LCA3MzQ5MywgNzM0OTksIDczNTAzLCAKLSAgICA3MzUwOSwgNzM1MTIsIDczNTE1LCA3MzUyMSwgNzM1MjUsIDczNTMxLCA3MzUzNCwgNzM1MzcsIDczNTQwLCA3MzU0NiwgCi0gICAgNzM1NTAsIDczNTU0LCA3MzU2MCwgNzM1NjYsIDczNTcwLCA3MzU3MywgNzM1NzksIDczNTg0LCA3MzU4OSwgNzM1OTQsIAotICAgIDczNjAxLCA3MzYwNiwgNzM2MTMsIDczNjE4LCA3MzYyNSwgNzM2MzAsIDczNjM2LCA3MzY0MiwgNzM2NDgsIDczNjUxLCAKLSAgICA3MzY1NSwgNzM2NTksIDczNjY0LCA3MzY2OSwgNzM2NzQsIDczNjc5LCA3MzY4NCwgNzM2ODksIDczNjk0LCA3MzY5OSwgCi0gICAgNzM3MDYsIDczNzExLCAwLCA3MzcxOCwgNzM3MjEsIDczNzI1LCA3MzcyOCwgNzM3MzEsIDczNzM0LCA3MzczNywgNzM3NDAsIAotICAgIDczNzQzLCA3Mzc0NiwgNzM3NDksIDAsIDAsIDAsIDAsIDczNzUyLCA3Mzc1OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzE1MDMsIDcxNTEwLCA3MTUxOCwgNzE1MjYsIAorICAgIDcxNTMzLCA3MTU0MSwgNzE1NDgsIDcxNTU0LCA3MTU2MCwgNzE1NjcsIDcxNTczLCA3MTU3OSwgNzE1ODUsIDcxNTkyLCAKKyAgICA3MTU5OSwgNzE2MDYsIDcxNjEzLCA3MTYyMCwgNzE2MjcsIDcxNjM0LCA3MTY0MSwgNzE2NDgsIDcxNjU1LCA3MTY2MiwgCisgICAgNzE2NjksIDcxNjc2LCA3MTY4MywgNzE2ODksIDcxNjk2LCA3MTcwMywgNzE3MTAsIDcxNzE3LCA3MTcyNCwgNzE3MzEsIAorICAgIDcxNzM4LCA3MTc0NSwgNzE3NTIsIDcxNzU5LCA3MTc2NiwgNzE3NzMsIDcxNzgwLCA3MTc4NywgNzE3OTQsIDcxODAxLCAKKyAgICA3MTgwOCwgNzE4MTUsIDcxODIzLCA3MTgzMSwgNzE4MzksIDcxODQ3LCAwLCAwLCAwLCAwLCA3MTg1NSwgNzE4NjQsIAorICAgIDcxODczLCA3MTg4MiwgNzE4OTEsIDcxOTAwLCA3MTkwOSwgNzE5MTYsIDcxOTIzLCA3MTkzMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNzE5MzcsIDcxOTQxLCA3MTk0NiwgNzE5NTEsIDcxOTU2LCA3MTk2MSwgNzE5NjYsIDcxOTcxLCA3MTk3NiwgNzE5ODEsIAorICAgIDcxOTg2LCA3MTk5MSwgNzE5OTUsIDcxOTk5LCA3MjAwNCwgNzIwMDksIDcyMDEzLCA3MjAxOCwgNzIwMjMsIDcyMDI4LCAKKyAgICA3MjAzMywgNzIwMzgsIDcyMDQzLCA3MjA0OCwgNzIwNTIsIDcyMDU2LCA3MjA2MSwgNzIwNjYsIDcyMDcxLCA3MjA3NSwgCisgICAgNzIwNzksIDcyMDgzLCA3MjA4NywgNzIwOTEsIDcyMDk1LCA3MjEwMCwgNzIxMDUsIDcyMTEwLCA3MjExNSwgNzIxMjAsIAorICAgIDcyMTI3LCA3MjEzMywgNzIxMzgsIDcyMTQzLCA3MjE0OCwgNzIxNTMsIDcyMTU5LCA3MjE2NiwgNzIxNzIsIDcyMTc5LCAKKyAgICA3MjE4NSwgNzIxOTEsIDcyMTk2LCA3MjIwMywgNzIyMDksIDcyMjE0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3MjIyMCwgCisgICAgNzIyMjQsIDcyMjI4LCA3MjIzMSwgNzIyMzUsIDcyMjM4LCA3MjI0MiwgNzIyNDUsIDcyMjQ5LCA3MjI1MywgNzIyNTgsIAorICAgIDcyMjYyLCA3MjI2NywgNzIyNzAsIDcyMjc0LCA3MjI3OCwgNzIyODEsIDcyMjg1LCA3MjI4OSwgNzIyOTIsIDcyMjk2LCAKKyAgICA3MjMwMCwgNzIzMDQsIDcyMzA4LCA3MjMxMiwgNzIzMTYsIDcyMzIwLCA3MjMyNCwgNzIzMjgsIDcyMzMyLCA3MjMzNiwgCisgICAgNzIzNDAsIDcyMzQ0LCA3MjM0OCwgNzIzNTIsIDcyMzU2LCA3MjM2MCwgNzIzNjQsIDcyMzY3LCA3MjM3MCwgNzIzNzQsIAorICAgIDcyMzc4LCA3MjM4MiwgNzIzODUsIDcyMzg4LCA3MjM5MSwgNzIzOTUsIDcyMzk5LCA3MjQwMywgNzI0MDcsIDcyNDExLCAKKyAgICA3MjQxNCwgNzI0MTgsIDcyNDIzLCA3MjQyOCwgNzI0MzIsIDcyNDM3LCA3MjQ0MSwgNzI0NDYsIDcyNDUxLCA3MjQ1NywgCisgICAgNzI0NjIsIDcyNDY4LCA3MjQ3MiwgNzI0NzcsIDcyNDgyLCA3MjQ4NiwgNzI0OTEsIDcyNDk2LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCA3MjUwMCwgNzI1MDMsIDcyNTA3LCA3MjUxMSwgNzI1MTQsIDcyNTE3LCA3MjUyMCwgNzI1MjMsIDcyNTI2LCAKKyAgICA3MjUyOSwgNzI1MzIsIDcyNTM1LCAwLCAwLCAwLCAwLCAwLCAwLCA3MjUzOCwgNzI1NDMsIDcyNTQ3LCA3MjU1MSwgNzI1NTUsIAorICAgIDcyNTU5LCA3MjU2MywgNzI1NjcsIDcyNTcxLCA3MjU3NSwgNzI1NzksIDcyNTgzLCA3MjU4NywgNzI1OTEsIDcyNTk1LCAKKyAgICA3MjU5OSwgNzI2MDMsIDcyNjA4LCA3MjYxMywgNzI2MTksIDcyNjI1LCA3MjYzMiwgNzI2MzcsIDcyNjQyLCA3MjY0OCwgCisgICAgNzI2NTIsIDcyNjU3LCA3MjY2MCwgMCwgMCwgMCwgMCwgNzI2NjMsIDcyNjcwLCA3MjY3NiwgNzI2ODIsIDcyNjg4LCAKKyAgICA3MjY5NCwgNzI3MDAsIDcyNzA2LCA3MjcxMiwgNzI3MTgsIDcyNzI0LCA3MjczMCwgNzI3MzcsIDcyNzQ0LCA3Mjc1MSwgCisgICAgNzI3NTgsIDcyNzY1LCA3Mjc3MiwgNzI3NzksIDcyNzg2LCA3Mjc5MywgNzI3OTksIDcyODA1LCA3MjgxMiwgNzI4MTgsIAorICAgIDcyODI1LCA3MjgzMiwgNzI4MzgsIDcyODQ0LCA3Mjg1MSwgNzI4NTgsIDcyODY1LCA3Mjg3MSwgNzI4NzgsIDcyODg1LCAKKyAgICA3Mjg5MSwgNzI4OTgsIDcyOTA0LCA3MjkxMSwgNzI5MTgsIDcyOTI0LCA3MjkzMCwgNzI5MzcsIDcyOTQzLCA3Mjk1MCwgCisgICAgNzI5NTcsIDcyOTY2LCA3Mjk3MywgNzI5ODAsIDcyOTg0LCA3Mjk4OSwgNzI5OTQsIDcyOTk5LCA3MzAwNCwgNzMwMDgsIAorICAgIDczMDEyLCA3MzAxNywgNzMwMjEsIDczMDI2LCA3MzAzMSwgNzMwMzYsIDczMDQxLCA3MzA0NSwgNzMwNTAsIDczMDU0LCAKKyAgICA3MzA1OSwgNzMwNjMsIDczMDY4LCA3MzA3MywgNzMwNzgsIDczMDgzLCA3MzA4NywgNzMwOTIsIDczMDk3LCA3MzEwMiwgCisgICAgNzMxMDgsIDczMTEzLCA3MzExOSwgNzMxMjUsIDczMTMxLCA3MzEzNywgNzMxNDIsIDczMTQ3LCA3MzE1MywgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzMxNTcsIDczMTYyLCA3MzE2NiwgNzMxNzAsIDczMTc0LCA3MzE3OCwgNzMxODIsIAorICAgIDczMTg2LCA3MzE5MCwgNzMxOTQsIDczMTk4LCA3MzIwMiwgNzMyMDYsIDczMjEwLCA3MzIxNCwgNzMyMTgsIDczMjIyLCAKKyAgICA3MzIyNiwgNzMyMzAsIDczMjM0LCA3MzIzOCwgNzMyNDIsIDczMjQ2LCA3MzI1MCwgNzMyNTQsIDczMjU4LCA3MzI2MiwgCisgICAgNzMyNjYsIDczMjcwLCA3MzI3NCwgMCwgMCwgMCwgNzMyNzgsIDczMjgyLCA3MzI4NiwgNzMyOTAsIDczMjk0LCA3MzI5NywgCisgICAgNzMzMDMsIDczMzA2LCA3MzMxMCwgNzMzMTMsIDczMzE5LCA3MzMyNSwgNzMzMzMsIDczMzM2LCA3MzM0MCwgNzMzNDMsIAorICAgIDczMzQ2LCA3MzM1MiwgNzMzNTgsIDczMzYyLCA3MzM2OCwgNzMzNzIsIDczMzc2LCA3MzM4MiwgNzMzODYsIDczMzkyLCAKKyAgICA3MzM5OCwgNzM0MDIsIDczNDA2LCA3MzQxMiwgNzM0MTYsIDczNDIyLCA3MzQyOCwgNzM0MzIsIDczNDM4LCA3MzQ0MiwgCisgICAgNzM0NDgsIDczNDUxLCA3MzQ1NCwgNzM0NjAsIDczNDY0LCA3MzQ3MCwgNzM0NzMsIDczNDc2LCA3MzQ3OSwgNzM0ODUsIAorICAgIDczNDg5LCA3MzQ5MywgNzM0OTksIDczNTA1LCA3MzUwOSwgNzM1MTIsIDczNTE4LCA3MzUyMywgNzM1MjgsIDczNTMzLCAKKyAgICA3MzU0MCwgNzM1NDUsIDczNTUyLCA3MzU1NywgNzM1NjQsIDczNTY5LCA3MzU3NCwgNzM1NzksIDczNTg0LCA3MzU4NywgCisgICAgNzM1OTEsIDczNTk1LCA3MzYwMCwgNzM2MDUsIDczNjEwLCA3MzYxNSwgNzM2MjAsIDczNjI1LCA3MzYzMCwgNzM2MzUsIAorICAgIDczNjQyLCA3MzY0NywgMCwgNzM2NTQsIDczNjU3LCA3MzY2MSwgNzM2NjQsIDczNjY3LCA3MzY3MCwgNzM2NzMsIDczNjc2LCAKKyAgICA3MzY3OSwgNzM2ODIsIDczNjg1LCAwLCAwLCAwLCAwLCA3MzY4OCwgNzM2OTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDczNzY0LCA3Mzc2NywgNzM3NzAsIDczNzczLCA3Mzc3NiwgNzM3ODAsIDczNzgzLCA3Mzc4NiwgNzM3OTAsIDczNzk0LCAKLSAgICA3Mzc5OCwgNzM4MDIsIDczODA2LCA3MzgxMCwgNzM4MTQsIDczODE4LCA3MzgyMiwgNzM4MjYsIDczODMwLCA3MzgzNCwgCi0gICAgNzM4MzgsIDczODQyLCA3Mzg0NiwgNzM4NTAsIDczODU0LCA3Mzg1NywgNzM4NjEsIDczODY0LCA3Mzg2OCwgNzM4NzIsIAotICAgIDczODc2LCA3Mzg4MCwgNzM4ODQsIDczODg3LCA3Mzg5MSwgNzM4OTQsIDczODk3LCA3MzkwMSwgNzM5MDUsIDczOTA5LCAKLSAgICA3MzkxMywgNzM5MTYsIDczOTIxLCA3MzkyNSwgNzM5MzAsIDczOTM1LCA3MzkzOSwgNzM5NDQsIDczOTQ4LCA3Mzk1MywgCi0gICAgNzM5NTgsIDczOTYzLCA3Mzk2OCwgNzM5NzMsIDczOTc5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3Mzk4NSwgCi0gICAgNzM5OTAsIDczOTk1LCA3NDAwMCwgNzQwMDcsIDc0MDEyLCA3NDAxNywgNzQwMjEsIDc0MDI2LCA3NDAzMSwgNzQwMzUsIAotICAgIDc0MDM5LCA3NDA0NCwgNzQwNTAsIDAsIDAsIDc0MDU3LCA3NDA2MSwgNzQwNjQsIDc0MDY3LCA3NDA3MCwgNzQwNzMsIAotICAgIDc0MDc2LCA3NDA3OSwgNzQwODIsIDc0MDg1LCAwLCAwLCA3NDA4OCwgNzQwOTMsIDc0MDk4LCA3NDEwNCwgNzQxMTEsIAotICAgIDc0MTE3LCA3NDEyMywgNzQxMjksIDc0MTM1LCA3NDE0MSwgNzQxNDcsIDc0MTUzLCA3NDE1OSwgNzQxNjUsIDc0MTcxLCAKLSAgICA3NDE3NywgNzQxODIsIDc0MTg4LCA3NDE5MywgNzQxOTksIDc0MjA1LCA3NDIxMiwgNzQyMTgsIDc0MjI0LCA3NDIyOSwgCi0gICAgNzQyMzYsIDc0MjQzLCA3NDI1MCwgNzQyNTYsIDc0MjYxLCA3NDI2NiwgNzQyNzEsIDAsIDAsIDAsIDAsIDc0Mjc5LCAKLSAgICA3NDI4NSwgNzQyOTEsIDc0Mjk3LCA3NDMwMywgNzQzMDksIDc0MzE1LCA3NDMyMSwgNzQzMjcsIDc0MzMzLCA3NDMzOSwgCi0gICAgNzQzNDUsIDc0MzUxLCA3NDM1NywgNzQzNjMsIDc0MzY5LCA3NDM3NSwgNzQzODEsIDc0Mzg3LCA3NDM5MywgNzQzOTksIAotICAgIDc0NDA0LCA3NDQwOSwgNzQ0MTUsIDc0NDIxLCA3NDQyNywgNzQ0MzMsIDc0NDM5LCA3NDQ0NSwgNzQ0NTEsIDc0NDU3LCAKLSAgICA3NDQ2MywgNzQ0NjksIDc0NDc1LCA3NDQ4MSwgNzQ0ODcsIDc0NDkzLCA3NDQ5OSwgNzQ1MDUsIDc0NTExLCA3NDUxNywgCi0gICAgNzQ1MjMsIDc0NTI5LCA3NDUzNSwgNzQ1NDEsIDc0NTQ3LCA3NDU1MywgNzQ1NTgsIDc0NTYzLCA3NDU2OSwgNzQ1NzQsIAotICAgIDc0NTc4LCA3NDU4MywgNzQ1ODcsIDc0NTkxLCA3NDU5NSwgNzQ2MDEsIDc0NjA2LCA3NDYxMSwgNzQ2MTYsIDc0NjIxLCAKLSAgICA3NDYyNiwgNzQ2MzEsIDc0NjM2LCA3NDY0MywgNzQ2NTAsIDc0NjU3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3NDY2NCwgNzQ2NjksIDc0Njc0LCA3NDY3OSwgCi0gICAgNzQ2ODYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc0NjkzLCA3NDY5NywgNzQ3MDEsIDc0NzA1LCA3NDcwOSwgCi0gICAgNzQ3MTMsIDAsIDAsIDc0NzE3LCA3NDcyMSwgNzQ3MjUsIDc0NzI5LCA3NDczMywgNzQ3MzcsIDAsIDAsIDc0NzQxLCAKLSAgICA3NDc0NSwgNzQ3NDksIDc0NzUzLCA3NDc1NywgNzQ3NjEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc0NzY1LCAKLSAgICA3NDc2OSwgNzQ3NzMsIDc0Nzc3LCA3NDc4MSwgNzQ3ODUsIDc0Nzg5LCAwLCA3NDc5MywgNzQ3OTcsIDc0ODAxLCA3NDgwNSwgCi0gICAgNzQ4MDksIDc0ODEzLCA3NDgxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNzM3MDAsIDczNzAzLCA3MzcwNiwgNzM3MDksIDczNzEyLCA3MzcxNiwgNzM3MTksIDczNzIyLCA3MzcyNiwgNzM3MzAsIAorICAgIDczNzM0LCA3MzczOCwgNzM3NDIsIDczNzQ2LCA3Mzc1MCwgNzM3NTQsIDczNzU4LCA3Mzc2MiwgNzM3NjYsIDczNzcwLCAKKyAgICA3Mzc3NCwgNzM3NzgsIDczNzgyLCA3Mzc4NiwgNzM3OTAsIDczNzkzLCA3Mzc5NywgNzM4MDAsIDczODA0LCA3MzgwOCwgCisgICAgNzM4MTIsIDczODE2LCA3MzgyMCwgNzM4MjMsIDczODI3LCA3MzgzMCwgNzM4MzMsIDczODM3LCA3Mzg0MSwgNzM4NDUsIAorICAgIDczODQ5LCA3Mzg1MiwgNzM4NTcsIDczODYxLCA3Mzg2NiwgNzM4NzEsIDczODc1LCA3Mzg4MCwgNzM4ODQsIDczODg5LCAKKyAgICA3Mzg5NCwgNzM4OTksIDczOTAzLCA3MzkwNywgNzM5MTIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDczOTE3LCAKKyAgICA3MzkyMiwgNzM5MjcsIDczOTMyLCA3MzkzOCwgNzM5NDMsIDczOTQ4LCA3Mzk1MiwgNzM5NTcsIDczOTYyLCA3Mzk2NiwgCisgICAgNzM5NzAsIDczOTc1LCA3Mzk4MCwgMCwgMCwgNzM5ODYsIDczOTkwLCA3Mzk5MywgNzM5OTYsIDczOTk5LCA3NDAwMiwgCisgICAgNzQwMDUsIDc0MDA4LCA3NDAxMSwgNzQwMTQsIDAsIDAsIDc0MDE3LCA3NDAyMiwgNzQwMjcsIDc0MDMzLCA3NDA0MCwgCisgICAgNzQwNDYsIDc0MDUyLCA3NDA1OCwgNzQwNjQsIDc0MDcwLCA3NDA3NiwgNzQwODIsIDc0MDg4LCA3NDA5NCwgNzQxMDAsIAorICAgIDc0MTA2LCA3NDExMSwgNzQxMTcsIDc0MTIyLCA3NDEyOCwgNzQxMzQsIDc0MTQxLCA3NDE0NywgNzQxNTMsIDc0MTU4LCAKKyAgICA3NDE2NSwgNzQxNzIsIDc0MTc5LCA3NDE4NSwgNzQxOTAsIDc0MTk1LCA3NDIwMCwgMCwgMCwgMCwgMCwgNzQyMDgsIAorICAgIDc0MjE0LCA3NDIyMCwgNzQyMjYsIDc0MjMyLCA3NDIzOCwgNzQyNDQsIDc0MjUwLCA3NDI1NiwgNzQyNjIsIDc0MjY4LCAKKyAgICA3NDI3NCwgNzQyODAsIDc0Mjg2LCA3NDI5MiwgNzQyOTgsIDc0MzA0LCA3NDMxMCwgNzQzMTYsIDc0MzIyLCA3NDMyOCwgCisgICAgNzQzMzMsIDc0MzM4LCA3NDM0NCwgNzQzNTAsIDc0MzU2LCA3NDM2MiwgNzQzNjgsIDc0Mzc0LCA3NDM4MCwgNzQzODYsIAorICAgIDc0MzkyLCA3NDM5OCwgNzQ0MDQsIDc0NDEwLCA3NDQxNiwgNzQ0MjIsIDc0NDI4LCA3NDQzNCwgNzQ0NDAsIDc0NDQ2LCAKKyAgICA3NDQ1MiwgNzQ0NTgsIDc0NDY0LCA3NDQ3MCwgNzQ0NzYsIDc0NDgyLCA3NDQ4NywgNzQ0OTIsIDc0NDk4LCA3NDUwMywgCisgICAgNzQ1MDcsIDc0NTEyLCA3NDUxNiwgNzQ1MjAsIDc0NTI0LCA3NDUzMCwgNzQ1MzUsIDc0NTQwLCA3NDU0NSwgNzQ1NTAsIAorICAgIDc0NTU1LCA3NDU2MCwgNzQ1NjUsIDc0NTcyLCA3NDU3OSwgNzQ1ODYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc0NTkzLCA3NDU5OCwgNzQ2MDMsIDc0NjA4LCAKKyAgICA3NDYxNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzQ2MjIsIDc0NjI2LCA3NDYzMCwgNzQ2MzQsIDc0NjM4LCAKKyAgICA3NDY0MiwgMCwgMCwgNzQ2NDYsIDc0NjUwLCA3NDY1NCwgNzQ2NTgsIDc0NjYyLCA3NDY2NiwgMCwgMCwgNzQ2NzAsIAorICAgIDc0Njc0LCA3NDY3OCwgNzQ2ODIsIDc0Njg2LCA3NDY5MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzQ2OTQsIAorICAgIDc0Njk4LCA3NDcwMiwgNzQ3MDYsIDc0NzEwLCA3NDcxNCwgNzQ3MTgsIDAsIDc0NzIyLCA3NDcyNiwgNzQ3MzAsIDc0NzM0LCAKKyAgICA3NDczOCwgNzQ3NDIsIDc0NzQ2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3NDgyMSwgNzQ4MjgsIDc0ODM1LCA3NDg0MiwgNzQ4NDksIDc0ODU1LCA3NDg2MSwgCi0gICAgNzQ4NjgsIDc0ODc1LCA3NDg4MiwgNzQ4ODksIDc0ODk2LCA3NDkwMywgNzQ5MTAsIDc0OTE3LCA3NDkyNCwgNzQ5MzAsIAotICAgIDc0OTM3LCA3NDk0NCwgNzQ5NTEsIDc0OTU4LCA3NDk2NSwgNzQ5NzIsIDc0OTc5LCA3NDk4NiwgNzQ5OTMsIDc1MDAwLCAKLSAgICA3NTAwNywgNzUwMTYsIDc1MDI1LCA3NTAzNCwgNzUwNDMsIDc1MDUyLCA3NTA2MSwgNzUwNzAsIDc1MDc5LCA3NTA4NywgCi0gICAgNzUwOTUsIDc1MTAzLCA3NTExMSwgNzUxMTksIDc1MTI3LCA3NTEzNSwgNzUxNDMsIDc1MTQ5LCA3NTE1NywgMCwgMCwgCi0gICAgNzUxNjUsIDc1MTcyLCA3NTE3OCwgNzUxODQsIDc1MTkwLCA3NTE5NiwgNzUyMDIsIDc1MjA4LCA3NTIxNCwgNzUyMjAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc0NzUwLCA3NDc1NywgNzQ3NjQsIDc0NzcxLCA3NDc3OCwgNzQ3ODQsIDc0NzkwLCAKKyAgICA3NDc5NywgNzQ4MDQsIDc0ODExLCA3NDgxOCwgNzQ4MjUsIDc0ODMyLCA3NDgzOSwgNzQ4NDYsIDc0ODUzLCA3NDg1OSwgCisgICAgNzQ4NjYsIDc0ODczLCA3NDg4MCwgNzQ4ODcsIDc0ODk0LCA3NDkwMSwgNzQ5MDgsIDc0OTE1LCA3NDkyMiwgNzQ5MjksIAorICAgIDc0OTM2LCA3NDk0NSwgNzQ5NTQsIDc0OTYzLCA3NDk3MiwgNzQ5ODEsIDc0OTkwLCA3NDk5OSwgNzUwMDgsIDc1MDE2LCAKKyAgICA3NTAyNCwgNzUwMzIsIDc1MDQwLCA3NTA0OCwgNzUwNTYsIDc1MDY0LCA3NTA3MiwgNzUwNzgsIDc1MDg2LCAwLCAwLCAKKyAgICA3NTA5NCwgNzUxMDEsIDc1MTA3LCA3NTExMywgNzUxMTksIDc1MTI1LCA3NTEzMSwgNzUxMzcsIDc1MTQzLCA3NTE0OSwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNzUyMjYsIDc1MjMwLCA3NTIzNCwgNzUyMzgsIDc1MjQyLCA3NTI0NiwgNzUyNTAsIDc1MjU0LCAKLSAgICA3NTI1OCwgNzUyNjIsIDc1MjY2LCA3NTI3MCwgNzUyNzQsIDc1Mjc4LCA3NTI4MiwgNzUyODYsIDc1MjkwLCA3NTI5NCwgCi0gICAgNzUyOTgsIDc1MzAyLCA3NTMwNiwgNzUzMTAsIDc1MzE0LCAwLCAwLCAwLCAwLCA3NTMxOCwgNzUzMjIsIDc1MzI2LCAKLSAgICA3NTMzMCwgNzUzMzQsIDc1MzM4LCA3NTM0MiwgNzUzNDYsIDc1MzUwLCA3NTM1NCwgNzUzNTgsIDc1MzYyLCA3NTM2NiwgCi0gICAgNzUzNzAsIDc1Mzc0LCA3NTM3OCwgNzUzODIsIDc1Mzg2LCA3NTM5MCwgNzUzOTQsIDc1Mzk4LCA3NTQwMiwgNzU0MDYsIAotICAgIDc1NDEwLCA3NTQxNCwgNzU0MTgsIDc1NDIyLCA3NTQyNiwgNzU0MzAsIDc1NDM0LCA3NTQzOCwgNzU0NDIsIDc1NDQ2LCAKLSAgICA3NTQ1MCwgNzU0NTQsIDc1NDU4LCA3NTQ2MiwgNzU0NjYsIDc1NDcwLCA3NTQ3NCwgNzU0NzgsIDc1NDgyLCA3NTQ4NiwgCi0gICAgNzU0OTAsIDc1NDk0LCA3NTQ5OCwgNzU1MDIsIDc1NTA2LCA3NTUxMCwgMCwgMCwgMCwgMCwgNzU1MTQsIDc1NTE4LCAKLSAgICA3NTUyMiwgNzU1MjYsIDc1NTMwLCA3NTUzNCwgNzU1MzgsIDc1NTQyLCA3NTU0NiwgNzU1NTAsIDc1NTU0LCA3NTU1OCwgCi0gICAgNzU1NjIsIDc1NTY2LCA3NTU3MCwgNzU1NzQsIDc1NTc4LCA3NTU4MiwgNzU1ODYsIDc1NTkwLCA3NTU5NCwgNzU1OTgsIAotICAgIDc1NjAyLCA3NTYwNiwgNzU2MTAsIDc1NjE0LCA3NTYxOCwgNzU2MjIsIDc1NjI2LCA3NTYzMCwgNzU2MzQsIDc1NjM4LCAKLSAgICA3NTY0MiwgNzU2NDYsIDc1NjUwLCA3NTY1NCwgNzU2NTgsIDc1NjYyLCA3NTY2NiwgNzU2NzAsIDc1Njc0LCA3NTY3OCwgCi0gICAgNzU2ODIsIDc1Njg2LCA3NTY5MCwgNzU2OTQsIDc1Njk4LCA3NTcwMiwgNzU3MDYsIDc1NzEwLCA3NTcxNCwgNzU3MTgsIAotICAgIDc1NzIyLCA3NTcyNiwgNzU3MzAsIDc1NzM0LCA3NTczOCwgNzU3NDIsIDc1NzQ2LCA3NTc1MCwgNzU3NTQsIDc1NzU4LCAKLSAgICA3NTc2MiwgNzU3NjYsIDc1NzcwLCA3NTc3NCwgNzU3NzgsIDc1NzgyLCA3NTc4NiwgNzU3OTAsIDc1Nzk0LCA3NTc5OCwgCi0gICAgNzU4MDIsIDc1ODA2LCA3NTgxMCwgNzU4MTQsIDc1ODE4LCA3NTgyMiwgNzU4MjYsIDc1ODMwLCA3NTgzNCwgNzU4MzgsIAotICAgIDc1ODQyLCA3NTg0NiwgNzU4NTAsIDc1ODU0LCA3NTg1OCwgNzU4NjIsIDc1ODY2LCA3NTg3MCwgNzU4NzQsIDc1ODc4LCAKLSAgICA3NTg4MiwgNzU4ODYsIDc1ODkwLCA3NTg5NCwgNzU4OTgsIDc1OTAyLCA3NTkwNiwgNzU5MTAsIDc1OTE0LCA3NTkxOCwgCi0gICAgNzU5MjIsIDc1OTI2LCA3NTkzMCwgNzU5MzQsIDc1OTM4LCA3NTk0MiwgNzU5NDYsIDc1OTUwLCA3NTk1NCwgNzU5NTgsIAotICAgIDc1OTYyLCA3NTk2NiwgNzU5NzAsIDc1OTc0LCA3NTk3OCwgNzU5ODIsIDc1OTg2LCA3NTk5MCwgNzU5OTQsIDc1OTk4LCAKLSAgICA3NjAwMiwgNzYwMDYsIDc2MDEwLCA3NjAxNCwgNzYwMTgsIDc2MDIyLCA3NjAyNiwgNzYwMzAsIDc2MDM0LCA3NjAzOCwgCi0gICAgNzYwNDIsIDc2MDQ2LCA3NjA1MCwgNzYwNTQsIDc2MDU4LCA3NjA2MiwgNzYwNjYsIDc2MDcwLCA3NjA3NCwgNzYwNzgsIAotICAgIDc2MDgyLCA3NjA4NiwgNzYwOTAsIDc2MDk0LCA3NjA5OCwgNzYxMDIsIDc2MTA2LCA3NjExMCwgNzYxMTQsIDc2MTE4LCAKLSAgICA3NjEyMiwgNzYxMjYsIDc2MTMwLCA3NjEzNCwgNzYxMzgsIDc2MTQyLCA3NjE0NiwgNzYxNTAsIDc2MTU0LCA3NjE1OCwgCi0gICAgNzYxNjIsIDc2MTY2LCA3NjE3MCwgNzYxNzQsIDc2MTc4LCA3NjE4MiwgNzYxODYsIDc2MTkwLCA3NjE5NCwgNzYxOTgsIAotICAgIDc2MjAyLCA3NjIwNiwgNzYyMTAsIDc2MjE0LCA3NjIxOCwgNzYyMjIsIDc2MjI2LCA3NjIzMCwgNzYyMzQsIDc2MjM4LCAKLSAgICA3NjI0MiwgNzYyNDYsIDc2MjUwLCA3NjI1NCwgNzYyNTgsIDc2MjYyLCA3NjI2NiwgNzYyNzAsIDc2Mjc0LCA3NjI3OCwgCi0gICAgNzYyODIsIDc2Mjg2LCA3NjI5MCwgNzYyOTQsIDc2Mjk4LCA3NjMwMiwgNzYzMDYsIDc2MzEwLCA3NjMxNCwgNzYzMTgsIAotICAgIDc2MzIyLCA3NjMyNiwgNzYzMzAsIDc2MzM0LCA3NjMzOCwgNzYzNDIsIDc2MzQ2LCA3NjM1MCwgNzYzNTQsIDc2MzU4LCAKLSAgICA3NjM2MiwgNzYzNjYsIDc2MzcwLCA3NjM3NCwgNzYzNzgsIDc2MzgyLCA3NjM4NiwgNzYzOTAsIDc2Mzk0LCA3NjM5OCwgCi0gICAgNzY0MDIsIDc2NDA2LCA3NjQxMCwgNzY0MTQsIDc2NDE4LCA3NjQyMiwgNzY0MjYsIDc2NDMwLCA3NjQzNCwgNzY0MzgsIAotICAgIDc2NDQyLCA3NjQ0NiwgNzY0NTAsIDc2NDU0LCA3NjQ1OCwgNzY0NjIsIDc2NDY2LCA3NjQ3MCwgNzY0NzQsIDc2NDc4LCAKLSAgICA3NjQ4MiwgNzY0ODYsIDc2NDkwLCA3NjQ5NCwgNzY0OTgsIDc2NTAyLCA3NjUwNiwgNzY1MTAsIDc2NTE0LCA3NjUxOCwgCi0gICAgNzY1MjIsIDc2NTI2LCA3NjUzMCwgNzY1MzQsIDc2NTM4LCA3NjU0MiwgNzY1NDYsIDc2NTUwLCA3NjU1NCwgNzY1NTgsIAotICAgIDc2NTYyLCA3NjU2NiwgNzY1NzAsIDc2NTc0LCA3NjU3OCwgNzY1ODIsIDc2NTg2LCA3NjU5MCwgNzY1OTQsIDc2NTk4LCAKLSAgICA3NjYwMiwgNzY2MDYsIDc2NjEwLCA3NjYxNCwgNzY2MTgsIDc2NjIyLCA3NjYyNiwgNzY2MzAsIDc2NjM0LCA3NjYzOCwgCi0gICAgNzY2NDIsIDc2NjQ2LCA3NjY1MCwgNzY2NTQsIDc2NjU4LCA3NjY2MiwgNzY2NjYsIDc2NjcwLCA3NjY3NCwgNzY2NzgsIAotICAgIDc2NjgyLCA3NjY4NiwgNzY2OTAsIDc2Njk0LCA3NjY5OCwgNzY3MDIsIDc2NzA2LCA3NjcxMCwgNzY3MTQsIDc2NzE4LCAwLCAKLSAgICAwLCA3NjcyMiwgNzY3MjYsIDc2NzMwLCA3NjczNCwgNzY3MzgsIDc2NzQyLCA3Njc0NiwgNzY3NTAsIDc2NzU0LCA3Njc1OCwgCi0gICAgNzY3NjIsIDc2NzY2LCA3Njc3MCwgNzY3NzQsIDc2Nzc4LCA3Njc4MiwgNzY3ODYsIDc2NzkwLCA3Njc5NCwgNzY3OTgsIAotICAgIDc2ODAyLCA3NjgwNiwgNzY4MTAsIDc2ODE0LCA3NjgxOCwgNzY4MjIsIDc2ODI2LCA3NjgzMCwgNzY4MzQsIDc2ODM4LCAKLSAgICA3Njg0MiwgNzY4NDYsIDc2ODUwLCA3Njg1NCwgNzY4NTgsIDc2ODYyLCA3Njg2NiwgNzY4NzAsIDc2ODc0LCA3Njg3OCwgCi0gICAgNzY4ODIsIDc2ODg2LCA3Njg5MCwgNzY4OTQsIDc2ODk4LCA3NjkwMiwgNzY5MDYsIDc2OTEwLCA3NjkxNCwgNzY5MTgsIAotICAgIDc2OTIyLCA3NjkyNiwgNzY5MzAsIDc2OTM0LCA3NjkzOCwgNzY5NDIsIDc2OTQ2LCA3Njk1MCwgNzY5NTQsIDc2OTU4LCAKLSAgICA3Njk2MiwgNzY5NjYsIDAsIDAsIDc2OTcwLCA3Njk3NCwgNzY5NzgsIDc2OTgyLCA3Njk4NiwgNzY5OTAsIDc2OTk0LCAKLSAgICA3Njk5OCwgNzcwMDIsIDc3MDA2LCA3NzAxMCwgNzcwMTQsIDc3MDE4LCA3NzAyMiwgNzcwMjYsIDc3MDMwLCA3NzAzNCwgCi0gICAgNzcwMzgsIDc3MDQyLCA3NzA0NiwgNzcwNTAsIDc3MDU0LCA3NzA1OCwgNzcwNjIsIDc3MDY2LCA3NzA3MCwgNzcwNzQsIAotICAgIDc3MDc4LCA3NzA4MiwgNzcwODYsIDc3MDkwLCA3NzA5NCwgNzcwOTgsIDc3MTAyLCA3NzEwNiwgNzcxMTAsIDc3MTE0LCAKLSAgICA3NzExOCwgNzcxMjIsIDc3MTI2LCA3NzEzMCwgNzcxMzQsIDc3MTM4LCA3NzE0MiwgNzcxNDYsIDc3MTUwLCA3NzE1NCwgCi0gICAgNzcxNTgsIDc3MTYyLCA3NzE2NiwgNzcxNzAsIDc3MTc0LCA3NzE3OCwgNzcxODIsIDc3MTg2LCA3NzE5MCwgNzcxOTQsIAotICAgIDc3MTk4LCA3NzIwMiwgNzcyMDYsIDc3MjEwLCA3NzIxNCwgNzcyMTgsIDc3MjIyLCA3NzIyNiwgNzcyMzAsIDc3MjM0LCAKLSAgICA3NzIzOCwgNzcyNDIsIDc3MjQ2LCA3NzI1MCwgNzcyNTQsIDc3MjU4LCA3NzI2MiwgNzcyNjYsIDc3MjcwLCA3NzI3NCwgCi0gICAgNzcyNzgsIDc3MjgyLCA3NzI4NiwgNzcyOTAsIDc3Mjk0LCA3NzI5OCwgNzczMDIsIDc3MzA2LCA3NzMxMCwgNzczMTQsIAotICAgIDc3MzE4LCA3NzMyMiwgNzczMjYsIDc3MzMwLCA3NzMzNCwgNzczMzgsIDc3MzQyLCA3NzM0NiwgNzczNTAsIDc3MzU0LCAKLSAgICA3NzM1OCwgNzczNjIsIDc3MzY2LCA3NzM3MCwgNzczNzQsIDc3Mzc4LCA3NzM4MiwgNzczODYsIDc3MzkwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCA3NTE1NSwgNzUxNTksIDc1MTYzLCA3NTE2NywgNzUxNzEsIDc1MTc1LCA3NTE3OSwgNzUxODMsIAorICAgIDc1MTg3LCA3NTE5MSwgNzUxOTUsIDc1MTk5LCA3NTIwMywgNzUyMDcsIDc1MjExLCA3NTIxNSwgNzUyMTksIDc1MjIzLCAKKyAgICA3NTIyNywgNzUyMzEsIDc1MjM1LCA3NTIzOSwgNzUyNDMsIDAsIDAsIDAsIDAsIDc1MjQ3LCA3NTI1MSwgNzUyNTUsIAorICAgIDc1MjU5LCA3NTI2MywgNzUyNjcsIDc1MjcxLCA3NTI3NSwgNzUyNzksIDc1MjgzLCA3NTI4NywgNzUyOTEsIDc1Mjk1LCAKKyAgICA3NTI5OSwgNzUzMDMsIDc1MzA3LCA3NTMxMSwgNzUzMTUsIDc1MzE5LCA3NTMyMywgNzUzMjcsIDc1MzMxLCA3NTMzNSwgCisgICAgNzUzMzksIDc1MzQzLCA3NTM0NywgNzUzNTEsIDc1MzU1LCA3NTM1OSwgNzUzNjMsIDc1MzY3LCA3NTM3MSwgNzUzNzUsIAorICAgIDc1Mzc5LCA3NTM4MywgNzUzODcsIDc1MzkxLCA3NTM5NSwgNzUzOTksIDc1NDAzLCA3NTQwNywgNzU0MTEsIDc1NDE1LCAKKyAgICA3NTQxOSwgNzU0MjMsIDc1NDI3LCA3NTQzMSwgNzU0MzUsIDc1NDM5LCAwLCAwLCAwLCAwLCA3NTQ0MywgNzU0NDcsIAorICAgIDc1NDUxLCA3NTQ1NSwgNzU0NTksIDc1NDYzLCA3NTQ2NywgNzU0NzEsIDc1NDc1LCA3NTQ3OSwgNzU0ODMsIDc1NDg3LCAKKyAgICA3NTQ5MSwgNzU0OTUsIDc1NDk5LCA3NTUwMywgNzU1MDcsIDc1NTExLCA3NTUxNSwgNzU1MTksIDc1NTIzLCA3NTUyNywgCisgICAgNzU1MzEsIDc1NTM1LCA3NTUzOSwgNzU1NDMsIDc1NTQ3LCA3NTU1MSwgNzU1NTUsIDc1NTU5LCA3NTU2MywgNzU1NjcsIAorICAgIDc1NTcxLCA3NTU3NSwgNzU1NzksIDc1NTgzLCA3NTU4NywgNzU1OTEsIDc1NTk1LCA3NTU5OSwgNzU2MDMsIDc1NjA3LCAKKyAgICA3NTYxMSwgNzU2MTUsIDc1NjE5LCA3NTYyMywgNzU2MjcsIDc1NjMxLCA3NTYzNSwgNzU2MzksIDc1NjQzLCA3NTY0NywgCisgICAgNzU2NTEsIDc1NjU1LCA3NTY1OSwgNzU2NjMsIDc1NjY3LCA3NTY3MSwgNzU2NzUsIDc1Njc5LCA3NTY4MywgNzU2ODcsIAorICAgIDc1NjkxLCA3NTY5NSwgNzU2OTksIDc1NzAzLCA3NTcwNywgNzU3MTEsIDc1NzE1LCA3NTcxOSwgNzU3MjMsIDc1NzI3LCAKKyAgICA3NTczMSwgNzU3MzUsIDc1NzM5LCA3NTc0MywgNzU3NDcsIDc1NzUxLCA3NTc1NSwgNzU3NTksIDc1NzYzLCA3NTc2NywgCisgICAgNzU3NzEsIDc1Nzc1LCA3NTc3OSwgNzU3ODMsIDc1Nzg3LCA3NTc5MSwgNzU3OTUsIDc1Nzk5LCA3NTgwMywgNzU4MDcsIAorICAgIDc1ODExLCA3NTgxNSwgNzU4MTksIDc1ODIzLCA3NTgyNywgNzU4MzEsIDc1ODM1LCA3NTgzOSwgNzU4NDMsIDc1ODQ3LCAKKyAgICA3NTg1MSwgNzU4NTUsIDc1ODU5LCA3NTg2MywgNzU4NjcsIDc1ODcxLCA3NTg3NSwgNzU4NzksIDc1ODgzLCA3NTg4NywgCisgICAgNzU4OTEsIDc1ODk1LCA3NTg5OSwgNzU5MDMsIDc1OTA3LCA3NTkxMSwgNzU5MTUsIDc1OTE5LCA3NTkyMywgNzU5MjcsIAorICAgIDc1OTMxLCA3NTkzNSwgNzU5MzksIDc1OTQzLCA3NTk0NywgNzU5NTEsIDc1OTU1LCA3NTk1OSwgNzU5NjMsIDc1OTY3LCAKKyAgICA3NTk3MSwgNzU5NzUsIDc1OTc5LCA3NTk4MywgNzU5ODcsIDc1OTkxLCA3NTk5NSwgNzU5OTksIDc2MDAzLCA3NjAwNywgCisgICAgNzYwMTEsIDc2MDE1LCA3NjAxOSwgNzYwMjMsIDc2MDI3LCA3NjAzMSwgNzYwMzUsIDc2MDM5LCA3NjA0MywgNzYwNDcsIAorICAgIDc2MDUxLCA3NjA1NSwgNzYwNTksIDc2MDYzLCA3NjA2NywgNzYwNzEsIDc2MDc1LCA3NjA3OSwgNzYwODMsIDc2MDg3LCAKKyAgICA3NjA5MSwgNzYwOTUsIDc2MDk5LCA3NjEwMywgNzYxMDcsIDc2MTExLCA3NjExNSwgNzYxMTksIDc2MTIzLCA3NjEyNywgCisgICAgNzYxMzEsIDc2MTM1LCA3NjEzOSwgNzYxNDMsIDc2MTQ3LCA3NjE1MSwgNzYxNTUsIDc2MTU5LCA3NjE2MywgNzYxNjcsIAorICAgIDc2MTcxLCA3NjE3NSwgNzYxNzksIDc2MTgzLCA3NjE4NywgNzYxOTEsIDc2MTk1LCA3NjE5OSwgNzYyMDMsIDc2MjA3LCAKKyAgICA3NjIxMSwgNzYyMTUsIDc2MjE5LCA3NjIyMywgNzYyMjcsIDc2MjMxLCA3NjIzNSwgNzYyMzksIDc2MjQzLCA3NjI0NywgCisgICAgNzYyNTEsIDc2MjU1LCA3NjI1OSwgNzYyNjMsIDc2MjY3LCA3NjI3MSwgNzYyNzUsIDc2Mjc5LCA3NjI4MywgNzYyODcsIAorICAgIDc2MjkxLCA3NjI5NSwgNzYyOTksIDc2MzAzLCA3NjMwNywgNzYzMTEsIDc2MzE1LCA3NjMxOSwgNzYzMjMsIDc2MzI3LCAKKyAgICA3NjMzMSwgNzYzMzUsIDc2MzM5LCA3NjM0MywgNzYzNDcsIDc2MzUxLCA3NjM1NSwgNzYzNTksIDc2MzYzLCA3NjM2NywgCisgICAgNzYzNzEsIDc2Mzc1LCA3NjM3OSwgNzYzODMsIDc2Mzg3LCA3NjM5MSwgNzYzOTUsIDc2Mzk5LCA3NjQwMywgNzY0MDcsIAorICAgIDc2NDExLCA3NjQxNSwgNzY0MTksIDc2NDIzLCA3NjQyNywgNzY0MzEsIDc2NDM1LCA3NjQzOSwgNzY0NDMsIDc2NDQ3LCAKKyAgICA3NjQ1MSwgNzY0NTUsIDc2NDU5LCA3NjQ2MywgNzY0NjcsIDc2NDcxLCA3NjQ3NSwgNzY0NzksIDc2NDgzLCA3NjQ4NywgCisgICAgNzY0OTEsIDc2NDk1LCA3NjQ5OSwgNzY1MDMsIDc2NTA3LCA3NjUxMSwgNzY1MTUsIDc2NTE5LCA3NjUyMywgNzY1MjcsIAorICAgIDc2NTMxLCA3NjUzNSwgNzY1MzksIDc2NTQzLCA3NjU0NywgNzY1NTEsIDc2NTU1LCA3NjU1OSwgNzY1NjMsIDc2NTY3LCAKKyAgICA3NjU3MSwgNzY1NzUsIDc2NTc5LCA3NjU4MywgNzY1ODcsIDc2NTkxLCA3NjU5NSwgNzY1OTksIDc2NjAzLCA3NjYwNywgCisgICAgNzY2MTEsIDc2NjE1LCA3NjYxOSwgNzY2MjMsIDc2NjI3LCA3NjYzMSwgNzY2MzUsIDc2NjM5LCA3NjY0MywgNzY2NDcsIDAsIAorICAgIDAsIDc2NjUxLCA3NjY1NSwgNzY2NTksIDc2NjYzLCA3NjY2NywgNzY2NzEsIDc2Njc1LCA3NjY3OSwgNzY2ODMsIDc2Njg3LCAKKyAgICA3NjY5MSwgNzY2OTUsIDc2Njk5LCA3NjcwMywgNzY3MDcsIDc2NzExLCA3NjcxNSwgNzY3MTksIDc2NzIzLCA3NjcyNywgCisgICAgNzY3MzEsIDc2NzM1LCA3NjczOSwgNzY3NDMsIDc2NzQ3LCA3Njc1MSwgNzY3NTUsIDc2NzU5LCA3Njc2MywgNzY3NjcsIAorICAgIDc2NzcxLCA3Njc3NSwgNzY3NzksIDc2NzgzLCA3Njc4NywgNzY3OTEsIDc2Nzk1LCA3Njc5OSwgNzY4MDMsIDc2ODA3LCAKKyAgICA3NjgxMSwgNzY4MTUsIDc2ODE5LCA3NjgyMywgNzY4MjcsIDc2ODMxLCA3NjgzNSwgNzY4MzksIDc2ODQzLCA3Njg0NywgCisgICAgNzY4NTEsIDc2ODU1LCA3Njg1OSwgNzY4NjMsIDc2ODY3LCA3Njg3MSwgNzY4NzUsIDc2ODc5LCA3Njg4MywgNzY4ODcsIAorICAgIDc2ODkxLCA3Njg5NSwgMCwgMCwgNzY4OTksIDc2OTAzLCA3NjkwNywgNzY5MTEsIDc2OTE1LCA3NjkxOSwgNzY5MjMsIAorICAgIDc2OTI3LCA3NjkzMSwgNzY5MzUsIDc2OTM5LCA3Njk0MywgNzY5NDcsIDc2OTUxLCA3Njk1NSwgNzY5NTksIDc2OTYzLCAKKyAgICA3Njk2NywgNzY5NzEsIDc2OTc1LCA3Njk3OSwgNzY5ODMsIDc2OTg3LCA3Njk5MSwgNzY5OTUsIDc2OTk5LCA3NzAwMywgCisgICAgNzcwMDcsIDc3MDExLCA3NzAxNSwgNzcwMTksIDc3MDIzLCA3NzAyNywgNzcwMzEsIDc3MDM1LCA3NzAzOSwgNzcwNDMsIAorICAgIDc3MDQ3LCA3NzA1MSwgNzcwNTUsIDc3MDU5LCA3NzA2MywgNzcwNjcsIDc3MDcxLCA3NzA3NSwgNzcwNzksIDc3MDgzLCAKKyAgICA3NzA4NywgNzcwOTEsIDc3MDk1LCA3NzA5OSwgNzcxMDMsIDc3MTA3LCA3NzExMSwgNzcxMTUsIDc3MTE5LCA3NzEyMywgCisgICAgNzcxMjcsIDc3MTMxLCA3NzEzNSwgNzcxMzksIDc3MTQzLCA3NzE0NywgNzcxNTEsIDc3MTU1LCA3NzE1OSwgNzcxNjMsIAorICAgIDc3MTY3LCA3NzE3MSwgNzcxNzUsIDc3MTc5LCA3NzE4MywgNzcxODcsIDc3MTkxLCA3NzE5NSwgNzcxOTksIDc3MjAzLCAKKyAgICA3NzIwNywgNzcyMTEsIDc3MjE1LCA3NzIxOSwgNzcyMjMsIDc3MjI3LCA3NzIzMSwgNzcyMzUsIDc3MjM5LCA3NzI0MywgCisgICAgNzcyNDcsIDc3MjUxLCA3NzI1NSwgNzcyNTksIDc3MjYzLCA3NzI2NywgNzcyNzEsIDc3Mjc1LCA3NzI3OSwgNzcyODMsIAorICAgIDc3Mjg3LCA3NzI5MSwgNzcyOTUsIDc3Mjk5LCA3NzMwMywgNzczMDcsIDc3MzExLCA3NzMxNSwgNzczMTksIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDc3Mzk0LCA3NzM5OSwgNzc0MDQsIDc3NDA5LCA3NzQxNCwgCi0gICAgNzc0MTksIDc3NDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3NzQzMiwgNzc0MzksIDc3NDQ2LCAKLSAgICA3NzQ1MywgNzc0NjAsIDAsIDAsIDAsIDAsIDAsIDc3NDY3LCA3NzQ3NCwgNzc0ODEsIDc3NDkxLCA3NzQ5NywgNzc1MDMsIAotICAgIDc3NTA5LCA3NzUxNSwgNzc1MjEsIDc3NTI3LCA3NzUzNCwgNzc1NDAsIDc3NTQ2LCA3NzU1MiwgNzc1NjEsIDc3NTcwLCAKLSAgICA3NzU4MiwgNzc1OTQsIDc3NjAwLCA3NzYwNiwgNzc2MTIsIDc3NjE5LCA3NzYyNiwgNzc2MzMsIDc3NjQwLCA3NzY0NywgMCwgCi0gICAgNzc2NTQsIDc3NjYxLCA3NzY2OCwgNzc2NzYsIDc3NjgzLCAwLCA3NzY5MCwgMCwgNzc2OTcsIDc3NzA0LCAwLCA3NzcxMSwgCi0gICAgNzc3MTksIDAsIDc3NzI2LCA3NzczMywgNzc3NDAsIDc3NzQ3LCA3Nzc1NCwgNzc3NjEsIDc3NzY4LCA3Nzc3NSwgNzc3ODIsIAotICAgIDc3Nzg5LCA3Nzc5NCwgNzc4MDEsIDc3ODA4LCA3NzgxNCwgNzc4MjAsIDc3ODI2LCA3NzgzMiwgNzc4MzgsIDc3ODQ0LCAKLSAgICA3Nzg1MCwgNzc4NTYsIDc3ODYyLCA3Nzg2OCwgNzc4NzQsIDc3ODgwLCA3Nzg4NiwgNzc4OTIsIDc3ODk4LCA3NzkwNCwgCi0gICAgNzc5MTAsIDc3OTE2LCA3NzkyMiwgNzc5MjgsIDc3OTM0LCA3Nzk0MCwgNzc5NDYsIDc3OTUyLCA3Nzk1OCwgNzc5NjQsIAotICAgIDc3OTcwLCA3Nzk3NiwgNzc5ODIsIDc3OTg4LCA3Nzk5NCwgNzgwMDAsIDc4MDA2LCA3ODAxMiwgNzgwMTgsIDc4MDI0LCAKLSAgICA3ODAzMCwgNzgwMzYsIDc4MDQyLCA3ODA0OCwgNzgwNTQsIDc4MDYwLCA3ODA2NiwgNzgwNzIsIDc4MDc4LCA3ODA4NCwgCi0gICAgNzgwOTAsIDc4MDk2LCA3ODEwMiwgNzgxMDgsIDc4MTE0LCA3ODEyMCwgNzgxMjYsIDc4MTMyLCA3ODEzOCwgNzgxNDQsIAotICAgIDc4MTUwLCA3ODE1NiwgNzgxNjIsIDc4MTY4LCA3ODE3NCwgNzgxODAsIDc4MTg2LCA3ODE5MiwgNzgxOTgsIDc4MjA0LCAKLSAgICA3ODIxMCwgNzgyMTYsIDc4MjIyLCA3ODIyOCwgNzgyMzQsIDc4MjQwLCA3ODI0NiwgNzgyNTIsIDc4MjU4LCA3ODI2NCwgCi0gICAgNzgyNzIsIDc4MjgwLCA3ODI4NiwgNzgyOTIsIDc4Mjk4LCA3ODMwNCwgNzgzMTMsIDc4MzIyLCA3ODMzMCwgNzgzMzgsIAotICAgIDc4MzQ2LCA3ODM1NCwgNzgzNjIsIDc4MzcwLCA3ODM3OCwgNzgzODYsIDc4MzkzLCA3ODQwMCwgNzg0MTAsIDc4NDIwLCAKLSAgICA3ODQyNCwgNzg0MjgsIDc4NDMzLCA3ODQzOCwgNzg0NDMsIDc4NDQ4LCA3ODQ1NywgNzg0NjYsIDc4NDcyLCA3ODQ3OCwgCi0gICAgNzg0ODUsIDc4NDkyLCA3ODQ5OSwgNzg1MDMsIDc4NTA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA3ODUxNSwgNzg1MjEsIDc4NTI3LCA3ODUzMywgNzg1MzksIDc4NTQ0LCA3ODU0OSwgNzg1NTUsIAotICAgIDc4NTYxLCA3ODU2NywgNzg1NzMsIDc4NTgxLCA3ODU4NywgNzg1OTMsIDc4NjAxLCA3ODYwOSwgNzg2MTcsIDc4NjI1LCAKLSAgICA3ODYzMCwgNzg2MzUsIDc4NjQwLCA3ODY0NSwgNzg2NTcsIDc4NjY5LCA3ODY3OSwgNzg2ODksIDc4NzAwLCA3ODcxMSwgCi0gICAgNzg3MjIsIDc4NzMzLCA3ODc0MywgNzg3NTMsIDc4NzY0LCA3ODc3NSwgNzg3ODYsIDc4Nzk3LCA3ODgwNywgNzg4MTcsIAotICAgIDc4ODI3LCA3ODg0MiwgNzg4NTcsIDc4ODcyLCA3ODg3OSwgNzg4ODYsIDc4ODkzLCA3ODkwMCwgNzg5MTAsIDc4OTIwLCAKLSAgICA3ODkzMCwgNzg5NDEsIDc4OTUxLCA3ODk1OSwgNzg5NjcsIDc4OTc2LCA3ODk4NCwgNzg5OTMsIDc5MDAxLCA3OTAwOSwgCi0gICAgNzkwMTcsIDc5MDI2LCA3OTAzNCwgNzkwNDMsIDc5MDUxLCA3OTA1OSwgNzkwNjcsIDc5MDc2LCA3OTA4NCwgNzkwOTEsIAotICAgIDc5MDk4LCA3OTEwNSwgNzkxMTIsIDc5MTIwLCA3OTEyOCwgNzkxMzYsIDc5MTQ0LCA3OTE1MiwgNzkxNjEsIDc5MTY5LCAKLSAgICA3OTE3NywgNzkxODUsIDc5MTkzLCA3OTIwMSwgNzkyMTAsIDc5MjE4LCA3OTIyNiwgNzkyMzQsIDc5MjQyLCA3OTI1MCwgCi0gICAgNzkyNTgsIDc5MjY2LCA3OTI3NCwgNzkyODIsIDc5MjkwLCA3OTI5OSwgNzkzMDcsIDc5MzE2LCA3OTMyNCwgNzkzMzIsIAotICAgIDc5MzQwLCA3OTM0OSwgNzkzNTcsIDc5MzY1LCA3OTM3MywgNzkzODEsIDc5MzkwLCA3OTM5OSwgNzk0MDcsIDc5NDE2LCAKLSAgICA3OTQyNCwgNzk0MzIsIDc5NDQwLCA3OTQ0OSwgNzk0NTcsIDc5NDY2LCA3OTQ3NCwgNzk0ODEsIDc5NDg4LCA3OTQ5NiwgCi0gICAgNzk1MDMsIDc5NTExLCA3OTUxOCwgNzk1MjYsIDc5NTM0LCA3OTU0MywgNzk1NTEsIDc5NTYwLCA3OTU2OCwgNzk1NzYsIAotICAgIDc5NTg0LCA3OTU5MywgNzk2MDEsIDc5NjA4LCA3OTYxNSwgNzk2MjMsIDc5NjMwLCA3OTYzOCwgNzk2NDUsIDc5NjU1LCAKLSAgICA3OTY2NSwgNzk2NzUsIDc5Njg0LCA3OTY5MywgNzk3MDIsIDc5NzExLCA3OTcyMCwgNzk3MzAsIDc5NzQxLCA3OTc1MiwgCi0gICAgNzk3NjIsIDc5NzczLCA3OTc4NCwgNzk3OTQsIDc5ODAzLCA3OTgxMiwgNzk4MjAsIDc5ODI5LCA3OTgzOCwgNzk4NDYsIAotICAgIDc5ODU1LCA3OTg2NCwgNzk4NzIsIDc5ODgxLCA3OTg5MCwgNzk4OTgsIDc5OTA3LCA3OTkxNiwgNzk5MjQsIDc5OTMzLCAKLSAgICA3OTk0MiwgNzk5NTAsIDc5OTU5LCA3OTk2NywgNzk5NzYsIDc5OTg0LCA3OTk5MiwgODAwMDEsIDgwMDA5LCA4MDAxOCwgCi0gICAgODAwMjYsIDgwMDM0LCA4MDA0MywgODAwNTEsIDgwMDU4LCA4MDA2NSwgODAwNzQsIDgwMDgzLCA4MDA5MSwgODAxMDAsIAotICAgIDgwMTA5LCA4MDExNywgODAxMjcsIDgwMTM1LCA4MDE0MywgODAxNTAsIDgwMTU4LCA4MDE2NiwgODAxNzMsIDgwMTgzLCAKLSAgICA4MDE5MywgODAyMDQsIDgwMjE0LCA4MDIyNSwgODAyMzMsIDgwMjQxLCA4MDI1MCwgODAyNTgsIDgwMjY3LCA4MDI3NSwgCi0gICAgODAyODMsIDgwMjkyLCA4MDMwMCwgODAzMDksIDgwMzE3LCA4MDMyNCwgODAzMzEsIDgwMzM4LCA4MDM0NSwgODAzNTMsIAotICAgIDgwMzYxLCA4MDM2OSwgODAzNzcsIDgwMzg2LCA4MDM5NCwgODA0MDIsIDgwNDExLCA4MDQxOSwgODA0MjcsIDgwNDM1LCAKLSAgICA4MDQ0NCwgODA0NTIsIDgwNDYwLCA4MDQ2OCwgODA0NzYsIDgwNDg0LCA4MDQ5MiwgODA1MDAsIDgwNTA4LCA4MDUxNiwgCi0gICAgODA1MjUsIDgwNTMzLCA4MDU0MSwgODA1NDksIDgwNTU3LCA4MDU2NSwgODA1NzQsIDgwNTgzLCA4MDU5MSwgODA1OTksIAotICAgIDgwNjA3LCA4MDYxNiwgODA2MjQsIDgwNjMzLCA4MDY0MCwgODA2NDcsIDgwNjU1LCA4MDY2MiwgODA2NzAsIDgwNjc4LCAKLSAgICA4MDY4NywgODA2OTUsIDgwNzA0LCA4MDcxMiwgODA3MjAsIDgwNzMwLCA4MDczNywgODA3NDQsIDgwNzUyLCA4MDc1OSwgCi0gICAgODA3NjcsIDgwNzc3LCA4MDc4OCwgODA3OTYsIDgwODA1LCA4MDgxMywgODA4MjIsIDgwODMwLCA4MDgzOSwgODA4NDcsIAotICAgIDgwODU2LCA4MDg2NCwgODA4NzMsIDgwODgyLCA4MDg5MCwgODA4OTgsIDgwOTA2LCA4MDkxNSwgODA5MjIsIDgwOTMwLCAKLSAgICA4MDkzOSwgODA5NDgsIDgwOTU3LCA4MDk2NiwgODA5NzQsIDgwOTgzLCA4MDk5MSwgODEwMDAsIDgxMDA4LCA4MTAxNywgCi0gICAgODEwMjUsIDgxMDM0LCA4MTA0MiwgODEwNTAsIDgxMDU3LCA4MTA2NSwgODEwNzIsIDgxMDgxLCA4MTA4OSwgODEwOTgsIAotICAgIDgxMTA2LCA4MTExNSwgODExMjMsIDgxMTMxLCA4MTEzOSwgODExNDgsIDgxMTU2LCA4MTE2NSwgODExNzQsIDgxMTgzLCAKLSAgICA4MTE5MiwgODEyMDEsIDgxMjA5LCA4MTIxOCwgODEyMjYsIDgxMjM1LCA4MTI0MywgODEyNTIsIDgxMjYwLCA4MTI2OSwgCi0gICAgODEyNzcsIDgxMjg1LCA4MTI5MiwgODEzMDAsIDgxMzA3LCA4MTMxNiwgODEzMjQsIDgxMzMzLCA4MTM0MSwgODEzNTAsIAotICAgIDgxMzU4LCA4MTM2NiwgODEzNzQsIDgxMzgzLCA4MTM5MSwgODE0MDAsIDgxNDA5LCA4MTQxOCwgODE0MjcsIDgxNDM1LCAKLSAgICA4MTQ0MywgODE0NTIsIDgxNDYwLCA4MTQ2OSwgODE0NzgsIDgxNDg2LCA4MTQ5NCwgODE1MDIsIDgxNTExLCA4MTUxOSwgCi0gICAgODE1MjcsIDgxNTM2LCA4MTU0NCwgODE1NTIsIDgxNTYwLCA4MTU2OCwgODE1NzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDgxNTc4LCA4MTU4OCwgODE1OTgsIDgxNjA4LCA4MTYxOCwgODE2MjksIDgxNjM5LCAKLSAgICA4MTY0OSwgODE2NjAsIDgxNjY5LCA4MTY3OCwgODE2ODcsIDgxNjk3LCA4MTcwNywgODE3MTcsIDgxNzI4LCA4MTczOCwgCi0gICAgODE3NDgsIDgxNzU4LCA4MTc2OCwgODE3NzgsIDgxNzg4LCA4MTc5OCwgODE4MDgsIDgxODE4LCA4MTgyOCwgODE4MzgsIAotICAgIDgxODQ5LCA4MTg2MCwgODE4NzAsIDgxODgwLCA4MTg5MSwgODE5MDIsIDgxOTEzLCA4MTkyMywgODE5MzMsIDgxOTQzLCAKLSAgICA4MTk1MywgODE5NjMsIDgxOTczLCA4MTk4MywgODE5OTQsIDgyMDA0LCA4MjAxNCwgODIwMjUsIDgyMDM2LCA4MjA0NywgCi0gICAgODIwNTcsIDgyMDY3LCA4MjA3NywgODIwODcsIDgyMDk4LCA4MjEwOCwgODIxMTgsIDgyMTI5LCA4MjE0MCwgODIxNTAsIAotICAgIDgyMTYwLCA4MjE2OSwgODIxNzgsIDgyMTg3LCA4MjE5NiwgODIyMDUsIDgyMjE1LCAwLCAwLCA4MjIyNSwgODIyMzUsIAotICAgIDgyMjQ1LCA4MjI1NSwgODIyNjUsIDgyMjc2LCA4MjI4NiwgODIyOTYsIDgyMzA3LCA4MjMxNywgODIzMjgsIDgyMzM3LCAKLSAgICA4MjM0NiwgODIzNTcsIDgyMzY3LCA4MjM3OCwgODIzODksIDgyNDAxLCA4MjQxMSwgODI0MjIsIDgyNDMxLCA4MjQ0MSwgCi0gICAgODI0NTEsIDgyNDYzLCA4MjQ3MywgODI0ODMsIDgyNDkzLCA4MjUwMywgODI1MTMsIDgyNTIyLCA4MjUzMSwgODI1NDAsIAotICAgIDgyNTQ5LCA4MjU1OSwgODI1NjksIDgyNTc5LCA4MjU4OSwgODI1OTksIDgyNjA5LCA4MjYxOSwgODI2MjksIDgyNjM5LCAKLSAgICA4MjY0OSwgODI2NTksIDgyNjY5LCA4MjY3OCwgODI2ODcsIDgyNjk2LCA4MjcwNiwgODI3MTYsIDgyNzI2LCA4MjczNiwgCi0gICAgODI3NDYsIDgyNzU3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4Mjc2NywgODI3ODIsIAotICAgIDgyNzk3LCA4MjgwMywgODI4MDksIDgyODE1LCA4MjgyMSwgODI4MjcsIDgyODMzLCA4MjgzOSwgODI4NDUsIDgyODUzLCAKLSAgICA4Mjg1NywgODI4NjAsIDAsIDAsIDgyODY4LCA4Mjg3MSwgODI4NzQsIDgyODc3LCA4Mjg4MCwgODI4ODMsIDgyODg2LCAKLSAgICA4Mjg4OSwgODI4OTIsIDgyODk1LCA4Mjg5OCwgODI5MDEsIDgyOTA0LCA4MjkwNywgODI5MTAsIDgyOTEzLCA4MjkxNiwgCi0gICAgODI5MjQsIDgyOTMzLCA4Mjk0NCwgODI5NTIsIDgyOTYwLCA4Mjk2OSwgODI5NzgsIDgyOTg5LCA4MzAwMSwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgODMwMTAsIDgzMDE1LCA4MzAyMCwgODMwMjcsIDgzMDM0LCA4MzA0MCwgODMwNDYsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDgzMDUxLCA4MzA2MSwgODMwNzEsIDgzMDgxLCA4MzA5MCwgODMxMDEsIDgzMTEwLCA4MzExOSwgCi0gICAgODMxMjksIDgzMTM5LCA4MzE1MSwgODMxNjMsIDgzMTc0LCA4MzE4NSwgODMxOTYsIDgzMjA3LCA4MzIxNywgODMyMjcsIAotICAgIDgzMjM3LCA4MzI0NywgODMyNTgsIDgzMjY5LCA4MzI3MywgODMyNzgsIDgzMjg3LCA4MzI5NiwgODMzMDAsIDgzMzA0LCAKLSAgICA4MzMwOCwgODMzMTMsIDgzMzE4LCA4MzMyMywgODMzMjgsIDgzMzMxLCA4MzMzNSwgMCwgODMzNDAsIDgzMzQzLCA4MzM0NiwgCi0gICAgODMzNTAsIDgzMzU0LCA4MzM1OSwgODMzNjMsIDgzMzY3LCA4MzM3MiwgODMzNzcsIDgzMzg0LCA4MzM5MSwgODMzOTQsIAotICAgIDgzMzk3LCA4MzQwMCwgODM0MDMsIDgzNDA2LCA4MzQxMCwgODM0MTQsIDAsIDgzNDE4LCA4MzQyMywgODM0MjcsIDgzNDMxLCAKLSAgICAwLCAwLCAwLCAwLCA4MzQzNiwgODM0NDEsIDgzNDQ4LCA4MzQ1MywgODM0NTgsIDAsIDgzNDYzLCA4MzQ2OCwgODM0NzMsIAotICAgIDgzNDc4LCA4MzQ4MywgODM0ODgsIDgzNDkzLCA4MzQ5OCwgODM1MDMsIDgzNTA4LCA4MzUxMywgODM1MTgsIDgzNTI3LCAKLSAgICA4MzUzNiwgODM1NDQsIDgzNTUyLCA4MzU2MSwgODM1NzAsIDgzNTc5LCA4MzU4OCwgODM1OTYsIDgzNjA0LCA4MzYxMiwgCi0gICAgODM2MjAsIDgzNjI1LCA4MzYzMCwgODM2MzYsIDgzNjQyLCA4MzY0OCwgODM2NTQsIDgzNjYyLCA4MzY3MCwgODM2NzYsIAotICAgIDgzNjgyLCA4MzY4OCwgODM2OTQsIDgzNzAwLCA4MzcwNiwgODM3MTIsIDgzNzE4LCA4MzcyMywgODM3MjgsIDgzNzMzLCAKLSAgICA4MzczOCwgODM3NDMsIDgzNzQ4LCA4Mzc1MywgODM3NTgsIDgzNzY0LCA4Mzc3MCwgODM3NzYsIDgzNzgyLCA4Mzc4OCwgCi0gICAgODM3OTQsIDgzODAwLCA4MzgwNiwgODM4MTIsIDgzODE4LCA4MzgyNCwgODM4MzAsIDgzODM2LCA4Mzg0MiwgODM4NDgsIAotICAgIDgzODU0LCA4Mzg2MCwgODM4NjYsIDgzODcyLCA4Mzg3OCwgODM4ODQsIDgzODkwLCA4Mzg5NiwgODM5MDIsIDgzOTA4LCAKLSAgICA4MzkxNCwgODM5MjAsIDgzOTI2LCA4MzkzMiwgODM5MzgsIDgzOTQ0LCA4Mzk1MCwgODM5NTYsIDgzOTYyLCA4Mzk2OCwgCi0gICAgODM5NzQsIDgzOTgwLCA4Mzk4NiwgODM5OTIsIDgzOTk4LCA4NDAwNCwgODQwMTAsIDg0MDE2LCA4NDAyMiwgODQwMjgsIAotICAgIDg0MDM0LCA4NDA0MCwgODQwNDYsIDg0MDUyLCA4NDA1OCwgODQwNjQsIDg0MDcwLCA4NDA3NiwgODQwODIsIDg0MDg4LCAKLSAgICA4NDA5NCwgODQxMDAsIDg0MTA2LCA4NDExMiwgODQxMTgsIDg0MTIzLCA4NDEyOCwgODQxMzMsIDg0MTM4LCA4NDE0NCwgCi0gICAgODQxNTAsIDg0MTU2LCA4NDE2MiwgODQxNjgsIDg0MTc0LCA4NDE4MCwgODQxODYsIDg0MTkyLCA4NDE5OCwgODQyMDQsIAotICAgIDg0MjEwLCA4NDIxNSwgODQyMjAsIDg0MjI1LCA4NDIzMCwgODQyNDIsIDg0MjU0LCA4NDI2NSwgODQyNzYsIDg0Mjg4LCAKLSAgICA4NDMwMCwgODQzMDgsIDAsIDAsIDg0MzE2LCAwLCA4NDMyNCwgODQzMjgsIDg0MzMyLCA4NDMzNSwgODQzMzksIDg0MzQzLCAKLSAgICA4NDM0NiwgODQzNDksIDg0MzUzLCA4NDM1NywgODQzNjAsIDg0MzYzLCA4NDM2NiwgODQzNjksIDg0Mzc0LCA4NDM3NywgCi0gICAgODQzODEsIDg0Mzg0LCA4NDM4NywgODQzOTAsIDg0MzkzLCA4NDM5NiwgODQzOTksIDg0NDAyLCA4NDQwNSwgODQ0MDgsIAotICAgIDg0NDExLCA4NDQxNCwgODQ0MTgsIDg0NDIyLCA4NDQyNiwgODQ0MzAsIDg0NDM1LCA4NDQ0MCwgODQ0NDYsIDg0NDUyLCAKLSAgICA4NDQ1OCwgODQ0NjMsIDg0NDY5LCA4NDQ3NSwgODQ0ODEsIDg0NDg2LCA4NDQ5MiwgODQ0OTgsIDg0NTAzLCA4NDUwOCwgCi0gICAgODQ1MTMsIDg0NTE4LCA4NDUyNCwgODQ1MzAsIDg0NTM1LCA4NDU0MCwgODQ1NDYsIDg0NTUxLCA4NDU1NywgODQ1NjMsIAotICAgIDg0NTY5LCA4NDU3NSwgODQ1ODEsIDg0NTg1LCA4NDU5MCwgODQ1OTQsIDg0NTk5LCA4NDYwMywgODQ2MDgsIDg0NjEzLCAKLSAgICA4NDYxOSwgODQ2MjUsIDg0NjMxLCA4NDYzNiwgODQ2NDIsIDg0NjQ4LCA4NDY1NCwgODQ2NTksIDg0NjY1LCA4NDY3MSwgCi0gICAgODQ2NzYsIDg0NjgxLCA4NDY4NiwgODQ2OTEsIDg0Njk3LCA4NDcwMywgODQ3MDgsIDg0NzEzLCA4NDcxOSwgODQ3MjQsIAotICAgIDg0NzMwLCA4NDczNiwgODQ3NDIsIDg0NzQ4LCA4NDc1NCwgODQ3NTksIDg0NzYzLCA4NDc2OCwgODQ3NzEsIDg0Nzc2LCAKLSAgICA4NDc4MSwgODQ3ODcsIDg0NzkyLCA4NDc5NywgODQ4MDEsIDg0ODA3LCA4NDgxMiwgODQ4MTcsIDg0ODIyLCA4NDgyNywgCi0gICAgODQ4MzIsIDg0ODM3LCA4NDg0MiwgODQ4NDgsIDg0ODU0LCA4NDg2MCwgODQ4NjgsIDg0ODcyLCA4NDg3NiwgODQ4ODAsIAotICAgIDg0ODg0LCA4NDg4OCwgODQ4OTIsIDg0ODk3LCA4NDkwMiwgODQ5MDcsIDg0OTEyLCA4NDkxNywgODQ5MjIsIDg0OTI3LCAKLSAgICA4NDkzMiwgODQ5MzcsIDg0OTQyLCA4NDk0NywgODQ5NTIsIDg0OTU3LCA4NDk2MSwgODQ5NjUsIDg0OTcwLCA4NDk3NSwgCi0gICAgODQ5ODAsIDg0OTg1LCA4NDk4OSwgODQ5OTQsIDg0OTk5LCA4NTAwNCwgODUwMDksIDg1MDEzLCA4NTAxOCwgODUwMjMsIAotICAgIDg1MDI4LCA4NTAzMywgODUwMzcsIDg1MDQyLCA4NTA0NywgODUwNTEsIDg1MDU2LCA4NTA2MSwgODUwNjYsIDg1MDcxLCAKLSAgICA4NTA3NiwgODUwODAsIDg1MDg3LCA4NTA5NCwgODUwOTgsIDg1MTAzLCA4NTEwOCwgODUxMTMsIDg1MTE4LCA4NTEyMywgCi0gICAgODUxMjgsIDg1MTMzLCA4NTEzOCwgODUxNDMsIDg1MTQ4LCA4NTE1MywgODUxNTgsIDg1MTYzLCA4NTE2OCwgODUxNzMsIAotICAgIDg1MTc4LCA4NTE4MywgODUxODgsIDg1MTkzLCA4NTE5OCwgODUyMDMsIDg1MjA4LCA4NTIxMywgODUyMTgsIDg1MjIzLCAKLSAgICA4NTIyOCwgODUyMzMsIDg1MjM4LCA4NTI0MywgMCwgMCwgMCwgODUyNDgsIDg1MjUyLCA4NTI1NywgODUyNjEsIDg1MjY2LCAKLSAgICA4NTI3MSwgMCwgMCwgODUyNzUsIDg1MjgwLCA4NTI4NSwgODUyODksIDg1Mjk0LCA4NTI5OSwgMCwgMCwgODUzMDQsIAotICAgIDg1MzA5LCA4NTMxMywgODUzMTgsIDg1MzIzLCA4NTMyOCwgMCwgMCwgODUzMzMsIDg1MzM4LCA4NTM0MywgMCwgMCwgMCwgCi0gICAgODUzNDcsIDg1MzUxLCA4NTM1NSwgODUzNTksIDg1MzYyLCA4NTM2NiwgODUzNzAsIDAsIDg1Mzc0LCA4NTM4MCwgODUzODMsIAotICAgIDg1Mzg3LCA4NTM5MCwgODUzOTQsIDg1Mzk4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4NTQwMiwgODU0MDgsIAotICAgIDg1NDE0LCA4NTQyMCwgODU0MjYsIDAsIDAsIDg1NDMwLCA4NTQzNiwgODU0NDIsIDg1NDQ4LCA4NTQ1NCwgODU0NjAsIAotICAgIDg1NDY3LCA4NTQ3NCwgODU0ODEsIDg1NDg4LCA4NTQ5NSwgODU1MDIsIDAsIDg1NTA5LCA4NTUxNiwgODU1MjMsIDg1NTI5LCAKLSAgICA4NTUzNiwgODU1NDMsIDg1NTUwLCA4NTU1NywgODU1NjMsIDg1NTcwLCA4NTU3NywgODU1ODQsIDg1NTkxLCA4NTU5NywgCi0gICAgODU2MDQsIDg1NjExLCA4NTYxOCwgODU2MjUsIDg1NjMxLCA4NTYzOCwgODU2NDUsIDg1NjUyLCA4NTY1OSwgODU2NjYsIAotICAgIDg1NjczLCA4NTY4MCwgMCwgODU2ODcsIDg1NjkzLCA4NTcwMCwgODU3MDcsIDg1NzE0LCA4NTcyMSwgODU3MjgsIDg1NzM1LCAKLSAgICA4NTc0MiwgODU3NDksIDg1NzU2LCA4NTc2MywgODU3NzAsIDg1Nzc3LCA4NTc4MywgODU3OTAsIDg1Nzk3LCA4NTgwNCwgCi0gICAgODU4MTEsIDAsIDg1ODE4LCA4NTgyNSwgMCwgODU4MzIsIDg1ODM5LCA4NTg0NiwgODU4NTMsIDg1ODYwLCA4NTg2NywgCi0gICAgODU4NzQsIDg1ODgxLCA4NTg4OCwgODU4OTUsIDg1OTAyLCA4NTkwOSwgODU5MTYsIDg1OTIzLCA4NTkzMCwgMCwgMCwgCi0gICAgODU5MzYsIDg1OTQxLCA4NTk0NiwgODU5NTEsIDg1OTU2LCA4NTk2MSwgODU5NjYsIDg1OTcxLCA4NTk3NiwgODU5ODEsIAotICAgIDg1OTg2LCA4NTk5MSwgODU5OTYsIDg2MDAxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4NjAwNiwgODYwMTMsIAotICAgIDg2MDIwLCA4NjAyNywgODYwMzQsIDg2MDQxLCA4NjA0OCwgODYwNTUsIDg2MDYyLCA4NjA2OSwgODYwNzYsIDg2MDgzLCAKLSAgICA4NjA5MCwgODYwOTcsIDg2MTA0LCA4NjExMSwgODYxMTgsIDg2MTI1LCA4NjEzMiwgODYxMzksIDg2MTQ3LCA4NjE1NSwgCi0gICAgODYxNjIsIDg2MTY5LCA4NjE3NCwgODYxODIsIDg2MTkwLCA4NjE5NywgODYyMDQsIDg2MjA5LCA4NjIxNiwgODYyMjEsIAotICAgIDg2MjI2LCA4NjIzMywgODYyMzgsIDg2MjQzLCA4NjI0OCwgODYyNTYsIDg2MjYxLCA4NjI2NiwgODYyNzMsIDg2Mjc4LCAKLSAgICA4NjI4MywgODYyOTAsIDg2Mjk3LCA4NjMwMiwgODYzMDcsIDg2MzEyLCA4NjMxNywgODYzMjIsIDg2MzI3LCA4NjMzMiwgCi0gICAgODYzMzcsIDg2MzQyLCA4NjM0OSwgODYzNTQsIDg2MzYxLCA4NjM2NiwgODYzNzEsIDg2Mzc2LCA4NjM4MSwgODYzODYsIAotICAgIDg2MzkxLCA4NjM5NiwgODY0MDEsIDg2NDA2LCA4NjQxMSwgODY0MTYsIDg2NDIzLCA4NjQzMCwgODY0MzcsIDg2NDQ0LCAKLSAgICA4NjQ1MCwgODY0NTUsIDg2NDYyLCA4NjQ2NywgODY0NzIsIDg2NDgxLCA4NjQ4OCwgODY0OTcsIDg2NTA0LCA4NjUwOSwgCi0gICAgODY1MTQsIDg2NTIyLCA4NjUyNywgODY1MzIsIDg2NTM3LCA4NjU0MiwgODY1NDcsIDg2NTU0LCA4NjU1OSwgODY1NjQsIAotICAgIDg2NTY5LCA4NjU3NCwgODY1NzksIDg2NTg2LCA4NjU5MywgODY2MDAsIDg2NjA3LCA4NjYxNCwgODY2MjEsIDg2NjI4LCAKLSAgICA4NjYzNSwgODY2NDIsIDg2NjQ5LCA4NjY1NiwgODY2NjMsIDg2NjcwLCA4NjY3NywgODY2ODQsIDg2NjkxLCA4NjY5OCwgCi0gICAgODY3MDUsIDg2NzEyLCA4NjcxOSwgODY3MjYsIDg2NzMzLCA4Njc0MCwgODY3NDcsIDg2NzU0LCA4Njc2MSwgODY3NjgsIAotICAgIDg2Nzc1LCAwLCAwLCAwLCAwLCAwLCA4Njc4MiwgODY3OTAsIDg2Nzk4LCAwLCAwLCAwLCAwLCA4NjgwMywgODY4MDcsIAotICAgIDg2ODExLCA4NjgxNSwgODY4MTksIDg2ODIzLCA4NjgyNywgODY4MzEsIDg2ODM1LCA4NjgzOSwgODY4NDQsIDg2ODQ5LCAKLSAgICA4Njg1NCwgODY4NTksIDg2ODY0LCA4Njg2OSwgODY4NzQsIDg2ODc5LCA4Njg4NCwgODY4OTAsIDg2ODk2LCA4NjkwMiwgCi0gICAgODY5MDksIDg2OTE2LCA4NjkyMywgODY5MzAsIDg2OTM3LCA4Njk0NCwgODY5NTAsIDg2OTU2LCA4Njk2MiwgODY5NjksIAotICAgIDg2OTc2LCA4Njk4MywgODY5OTAsIDg2OTk3LCA4NzAwNCwgODcwMTEsIDg3MDE4LCA4NzAyNSwgODcwMzIsIDg3MDM5LCAKLSAgICA4NzA0NiwgODcwNTMsIDg3MDYwLCAwLCAwLCAwLCA4NzA2NywgODcwNzUsIDg3MDgzLCA4NzA5MSwgODcwOTksIDg3MTA3LCAKLSAgICA4NzExNywgODcxMjcsIDg3MTM1LCA4NzE0MywgODcxNTEsIDg3MTU5LCA4NzE2NywgODcxNzMsIDg3MTgwLCA4NzE4OSwgCi0gICAgODcxOTgsIDg3MjA3LCA4NzIxNiwgODcyMjUsIDg3MjM0LCA4NzI0NCwgODcyNTUsIDg3MjY1LCA4NzI3NiwgODcyODUsIAotICAgIDg3Mjk0LCA4NzMwMywgODczMTMsIDg3MzI0LCA4NzMzNCwgODczNDUsIDg3MzU2LCA4NzM2NSwgODczNzMsIDg3Mzc5LCAKLSAgICA4NzM4NSwgODczOTEsIDg3Mzk3LCA4NzQwNSwgODc0MTMsIDg3NDE5LCA4NzQyNiwgODc0MzYsIDg3NDQzLCA4NzQ1MCwgCi0gICAgODc0NTcsIDg3NDY0LCA4NzQ3MSwgODc0ODEsIDg3NDg4LCA4NzQ5NSwgODc1MDMsIDg3NTExLCA4NzUyMCwgODc1MjksIAotICAgIDg3NTM4LCA4NzU0NywgODc1NTYsIDg3NTY0LCA4NzU3MywgODc1ODIsIDg3NTkxLCA4NzU5NSwgODc2MDIsIDg3NjA3LCAKLSAgICA4NzYxMiwgODc2MTYsIDg3NjIwLCA4NzYyNCwgODc2MjgsIDg3NjMzLCA4NzYzOCwgODc2NDQsIDg3NjUwLCA4NzY1NCwgCi0gICAgODc2NjAsIDg3NjY0LCA4NzY2OCwgODc2NzIsIDg3Njc2LCA4NzY4MCwgODc2ODQsIDg3NjkwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA4NzY5NCwgODc2OTksIDg3NzA0LCA4NzcwOSwgODc3MTQsIDg3NzIxLCA4NzcyNiwgODc3MzEsIDg3NzM2LCA4Nzc0MSwgCi0gICAgODc3NDYsIDg3NzUxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3NzMyMywgNzczMjgsIDc3MzMzLCA3NzMzOCwgNzczNDMsIAorICAgIDc3MzQ4LCA3NzM1NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNzczNjEsIDc3MzY4LCA3NzM3NSwgCisgICAgNzczODIsIDc3Mzg5LCAwLCAwLCAwLCAwLCAwLCA3NzM5NiwgNzc0MDMsIDc3NDEwLCA3NzQyMCwgNzc0MjYsIDc3NDMyLCAKKyAgICA3NzQzOCwgNzc0NDQsIDc3NDUwLCA3NzQ1NiwgNzc0NjMsIDc3NDY5LCA3NzQ3NSwgNzc0ODEsIDc3NDkwLCA3NzQ5OSwgCisgICAgNzc1MTEsIDc3NTIzLCA3NzUyOSwgNzc1MzUsIDc3NTQxLCA3NzU0OCwgNzc1NTUsIDc3NTYyLCA3NzU2OSwgNzc1NzYsIDAsIAorICAgIDc3NTgzLCA3NzU5MCwgNzc1OTcsIDc3NjA1LCA3NzYxMiwgMCwgNzc2MTksIDAsIDc3NjI2LCA3NzYzMywgMCwgNzc2NDAsIAorICAgIDc3NjQ4LCAwLCA3NzY1NSwgNzc2NjIsIDc3NjY5LCA3NzY3NiwgNzc2ODMsIDc3NjkwLCA3NzY5NywgNzc3MDQsIDc3NzExLCAKKyAgICA3NzcxOCwgNzc3MjMsIDc3NzMwLCA3NzczNywgNzc3NDMsIDc3NzQ5LCA3Nzc1NSwgNzc3NjEsIDc3NzY3LCA3Nzc3MywgCisgICAgNzc3NzksIDc3Nzg1LCA3Nzc5MSwgNzc3OTcsIDc3ODAzLCA3NzgwOSwgNzc4MTUsIDc3ODIxLCA3NzgyNywgNzc4MzMsIAorICAgIDc3ODM5LCA3Nzg0NSwgNzc4NTEsIDc3ODU3LCA3Nzg2MywgNzc4NjksIDc3ODc1LCA3Nzg4MSwgNzc4ODcsIDc3ODkzLCAKKyAgICA3Nzg5OSwgNzc5MDUsIDc3OTExLCA3NzkxNywgNzc5MjMsIDc3OTI5LCA3NzkzNSwgNzc5NDEsIDc3OTQ3LCA3Nzk1MywgCisgICAgNzc5NTksIDc3OTY1LCA3Nzk3MSwgNzc5NzcsIDc3OTgzLCA3Nzk4OSwgNzc5OTUsIDc4MDAxLCA3ODAwNywgNzgwMTMsIAorICAgIDc4MDE5LCA3ODAyNSwgNzgwMzEsIDc4MDM3LCA3ODA0MywgNzgwNDksIDc4MDU1LCA3ODA2MSwgNzgwNjcsIDc4MDczLCAKKyAgICA3ODA3OSwgNzgwODUsIDc4MDkxLCA3ODA5NywgNzgxMDMsIDc4MTA5LCA3ODExNSwgNzgxMjEsIDc4MTI3LCA3ODEzMywgCisgICAgNzgxMzksIDc4MTQ1LCA3ODE1MSwgNzgxNTcsIDc4MTYzLCA3ODE2OSwgNzgxNzUsIDc4MTgxLCA3ODE4NywgNzgxOTMsIAorICAgIDc4MjAxLCA3ODIwOSwgNzgyMTUsIDc4MjIxLCA3ODIyNywgNzgyMzMsIDc4MjQyLCA3ODI1MSwgNzgyNTksIDc4MjY3LCAKKyAgICA3ODI3NSwgNzgyODMsIDc4MjkxLCA3ODI5OSwgNzgzMDcsIDc4MzE1LCA3ODMyMiwgNzgzMjksIDc4MzM5LCA3ODM0OSwgCisgICAgNzgzNTMsIDc4MzU3LCA3ODM2MiwgNzgzNjcsIDc4MzcyLCA3ODM3NywgNzgzODYsIDc4Mzk1LCA3ODQwMSwgNzg0MDcsIAorICAgIDc4NDE0LCA3ODQyMSwgNzg0MjgsIDc4NDMyLCA3ODQzOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgNzg0NDQsIDc4NDUwLCA3ODQ1NiwgNzg0NjIsIDc4NDY4LCA3ODQ3MywgNzg0NzgsIDc4NDg0LCAKKyAgICA3ODQ5MCwgNzg0OTYsIDc4NTAyLCA3ODUxMCwgNzg1MTYsIDc4NTIyLCA3ODUzMCwgNzg1MzgsIDc4NTQ2LCA3ODU1NCwgCisgICAgNzg1NTksIDc4NTY0LCA3ODU2OSwgNzg1NzQsIDc4NTg3LCA3ODYwMCwgNzg2MTAsIDc4NjIwLCA3ODYzMSwgNzg2NDIsIAorICAgIDc4NjUzLCA3ODY2NCwgNzg2NzQsIDc4Njg0LCA3ODY5NSwgNzg3MDYsIDc4NzE3LCA3ODcyOCwgNzg3MzgsIDc4NzQ4LCAKKyAgICA3ODc1OCwgNzg3NzQsIDc4NzkwLCA3ODgwNiwgNzg4MTMsIDc4ODIwLCA3ODgyNywgNzg4MzQsIDc4ODQ0LCA3ODg1NCwgCisgICAgNzg4NjQsIDc4ODc2LCA3ODg4NiwgNzg4OTQsIDc4OTAyLCA3ODkxMSwgNzg5MTksIDc4OTI5LCA3ODkzNywgNzg5NDUsIAorICAgIDc4OTUzLCA3ODk2MiwgNzg5NzAsIDc4OTgwLCA3ODk4OCwgNzg5OTYsIDc5MDA0LCA3OTAxNCwgNzkwMjIsIDc5MDI5LCAKKyAgICA3OTAzNiwgNzkwNDMsIDc5MDUwLCA3OTA1OCwgNzkwNjYsIDc5MDc0LCA3OTA4MiwgNzkwOTAsIDc5MDk5LCA3OTEwNywgCisgICAgNzkxMTUsIDc5MTIzLCA3OTEzMSwgNzkxMzksIDc5MTQ4LCA3OTE1NiwgNzkxNjQsIDc5MTcyLCA3OTE4MCwgNzkxODgsIAorICAgIDc5MTk2LCA3OTIwNCwgNzkyMTIsIDc5MjIwLCA3OTIyOCwgNzkyMzcsIDc5MjQ1LCA3OTI1NSwgNzkyNjMsIDc5MjcxLCAKKyAgICA3OTI3OSwgNzkyODksIDc5Mjk3LCA3OTMwNSwgNzkzMTMsIDc5MzIxLCA3OTMzMCwgNzkzMzksIDc5MzQ3LCA3OTM1NywgCisgICAgNzkzNjUsIDc5MzczLCA3OTM4MSwgNzkzOTAsIDc5Mzk4LCA3OTQwOCwgNzk0MTYsIDc5NDIzLCA3OTQzMCwgNzk0MzgsIAorICAgIDc5NDQ1LCA3OTQ1NCwgNzk0NjEsIDc5NDY5LCA3OTQ3NywgNzk0ODYsIDc5NDk0LCA3OTUwNCwgNzk1MTIsIDc5NTIwLCAKKyAgICA3OTUyOCwgNzk1MzgsIDc5NTQ2LCA3OTU1MywgNzk1NjAsIDc5NTY4LCA3OTU3NSwgNzk1ODQsIDc5NTkxLCA3OTYwMSwgCisgICAgNzk2MTEsIDc5NjIyLCA3OTYzMSwgNzk2NDAsIDc5NjQ5LCA3OTY1OCwgNzk2NjcsIDc5Njc3LCA3OTY4OCwgNzk2OTksIAorICAgIDc5NzA5LCA3OTcyMCwgNzk3MzIsIDc5NzQyLCA3OTc1MSwgNzk3NjAsIDc5NzY4LCA3OTc3NywgNzk3ODcsIDc5Nzk1LCAKKyAgICA3OTgwNCwgNzk4MTMsIDc5ODIxLCA3OTgzMCwgNzk4NDAsIDc5ODQ4LCA3OTg1NywgNzk4NjYsIDc5ODc0LCA3OTg4MywgCisgICAgNzk4OTMsIDc5OTAxLCA3OTkxMSwgNzk5MTksIDc5OTI5LCA3OTkzNywgNzk5NDUsIDc5OTU0LCA3OTk2MiwgNzk5NzIsIAorICAgIDc5OTgwLCA3OTk4OCwgNzk5OTgsIDgwMDA2LCA4MDAxMywgODAwMjAsIDgwMDI5LCA4MDAzOCwgODAwNDYsIDgwMDU1LCAKKyAgICA4MDA2NSwgODAwNzMsIDgwMDg0LCA4MDA5MiwgODAxMDAsIDgwMTA3LCA4MDExNSwgODAxMjQsIDgwMTMxLCA4MDE0MSwgCisgICAgODAxNTEsIDgwMTYyLCA4MDE3MiwgODAxODMsIDgwMTkxLCA4MDE5OSwgODAyMDgsIDgwMjE2LCA4MDIyNSwgODAyMzMsIAorICAgIDgwMjQxLCA4MDI1MCwgODAyNTgsIDgwMjY3LCA4MDI3NSwgODAyODIsIDgwMjg5LCA4MDI5NiwgODAzMDMsIDgwMzExLCAKKyAgICA4MDMxOSwgODAzMjcsIDgwMzM1LCA4MDM0NCwgODAzNTIsIDgwMzYwLCA4MDM2OSwgODAzNzcsIDgwMzg1LCA4MDM5MywgCisgICAgODA0MDIsIDgwNDEwLCA4MDQxOCwgODA0MjYsIDgwNDM0LCA4MDQ0MiwgODA0NTAsIDgwNDU4LCA4MDQ2NiwgODA0NzQsIAorICAgIDgwNDgzLCA4MDQ5MSwgODA0OTksIDgwNTA3LCA4MDUxNSwgODA1MjMsIDgwNTMyLCA4MDU0MSwgODA1NDksIDgwNTU3LCAKKyAgICA4MDU2NSwgODA1NzQsIDgwNTgyLCA4MDU5MSwgODA1OTgsIDgwNjA1LCA4MDYxMywgODA2MjAsIDgwNjI4LCA4MDYzNiwgCisgICAgODA2NDUsIDgwNjUzLCA4MDY2MiwgODA2NzAsIDgwNjc4LCA4MDY4OCwgODA2OTUsIDgwNzAyLCA4MDcxMCwgODA3MTcsIAorICAgIDgwNzI1LCA4MDczNSwgODA3NDYsIDgwNzU0LCA4MDc2MywgODA3NzEsIDgwNzgwLCA4MDc4OCwgODA3OTcsIDgwODA1LCAKKyAgICA4MDgxNCwgODA4MjIsIDgwODMxLCA4MDg0MCwgODA4NDgsIDgwODU2LCA4MDg2NCwgODA4NzMsIDgwODgwLCA4MDg4OCwgCisgICAgODA4OTcsIDgwOTA2LCA4MDkxNSwgODA5MjUsIDgwOTMzLCA4MDk0MywgODA5NTEsIDgwOTYxLCA4MDk2OSwgODA5NzksIAorICAgIDgwOTg3LCA4MDk5NywgODEwMDUsIDgxMDE0LCA4MTAyMSwgODEwMzAsIDgxMDM3LCA4MTA0NywgODEwNTUsIDgxMDY1LCAKKyAgICA4MTA3MywgODEwODMsIDgxMDkxLCA4MTA5OSwgODExMDcsIDgxMTE2LCA4MTEyNCwgODExMzMsIDgxMTQyLCA4MTE1MSwgCisgICAgODExNjAsIDgxMTcwLCA4MTE3OCwgODExODgsIDgxMTk2LCA4MTIwNiwgODEyMTQsIDgxMjI0LCA4MTIzMiwgODEyNDIsIAorICAgIDgxMjUwLCA4MTI1OSwgODEyNjYsIDgxMjc1LCA4MTI4MiwgODEyOTIsIDgxMzAwLCA4MTMxMCwgODEzMTgsIDgxMzI4LCAKKyAgICA4MTMzNiwgODEzNDQsIDgxMzUyLCA4MTM2MSwgODEzNjksIDgxMzc4LCA4MTM4NywgODEzOTYsIDgxNDA1LCA4MTQxMywgCisgICAgODE0MjEsIDgxNDMwLCA4MTQzOCwgODE0NDcsIDgxNDU2LCA4MTQ2NCwgODE0NzIsIDgxNDgwLCA4MTQ4OSwgODE0OTcsIAorICAgIDgxNTA1LCA4MTUxNCwgODE1MjIsIDgxNTMwLCA4MTUzOCwgODE1NDYsIDgxNTUxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4MTU1NiwgODE1NjYsIDgxNTc2LCA4MTU4NiwgODE1OTYsIDgxNjA3LCA4MTYxNywgCisgICAgODE2MjcsIDgxNjM4LCA4MTY0NywgODE2NTYsIDgxNjY1LCA4MTY3NiwgODE2ODYsIDgxNjk2LCA4MTcwOCwgODE3MTgsIAorICAgIDgxNzI4LCA4MTczOCwgODE3NDgsIDgxNzU4LCA4MTc2OCwgODE3NzgsIDgxNzg4LCA4MTc5OCwgODE4MDgsIDgxODE4LCAKKyAgICA4MTgyOSwgODE4NDAsIDgxODUwLCA4MTg2MCwgODE4NzIsIDgxODgzLCA4MTg5NCwgODE5MDQsIDgxOTE0LCA4MTkyNCwgCisgICAgODE5MzQsIDgxOTQ0LCA4MTk1NCwgODE5NjQsIDgxOTc2LCA4MTk4NiwgODE5OTYsIDgyMDA4LCA4MjAxOSwgODIwMzAsIAorICAgIDgyMDQwLCA4MjA1MCwgODIwNjAsIDgyMDcwLCA4MjA4MiwgODIwOTIsIDgyMTAyLCA4MjExMywgODIxMjQsIDgyMTM0LCAKKyAgICA4MjE0NCwgODIxNTMsIDgyMTYyLCA4MjE3MSwgODIxODAsIDgyMTg5LCA4MjE5OSwgMCwgMCwgODIyMDksIDgyMjE5LCAKKyAgICA4MjIyOSwgODIyMzksIDgyMjQ5LCA4MjI2MSwgODIyNzEsIDgyMjgxLCA4MjI5MywgODIzMDMsIDgyMzE1LCA4MjMyNCwgCisgICAgODIzMzMsIDgyMzQ0LCA4MjM1NCwgODIzNjYsIDgyMzc3LCA4MjM5MCwgODI0MDAsIDgyNDEyLCA4MjQyMSwgODI0MzIsIAorICAgIDgyNDQzLCA4MjQ1NiwgODI0NjYsIDgyNDc2LCA4MjQ4NiwgODI0OTYsIDgyNTA2LCA4MjUxNSwgODI1MjQsIDgyNTMzLCAKKyAgICA4MjU0MiwgODI1NTIsIDgyNTYyLCA4MjU3MiwgODI1ODIsIDgyNTkyLCA4MjYwMiwgODI2MTIsIDgyNjIyLCA4MjYzMiwgCisgICAgODI2NDIsIDgyNjUyLCA4MjY2MiwgODI2NzEsIDgyNjgwLCA4MjY4OSwgODI2OTksIDgyNzA5LCA4MjcxOSwgODI3MjksIAorICAgIDgyNzM5LCA4Mjc1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODI3NjAsIDgyNzc1LCAKKyAgICA4Mjc5MCwgODI3OTYsIDgyODAyLCA4MjgwOCwgODI4MTQsIDgyODIwLCA4MjgyNiwgODI4MzIsIDgyODM4LCA4Mjg0NiwgCisgICAgODI4NTAsIDgyODUzLCAwLCAwLCA4Mjg2MSwgODI4NjQsIDgyODY3LCA4Mjg3MCwgODI4NzMsIDgyODc2LCA4Mjg3OSwgCisgICAgODI4ODIsIDgyODg1LCA4Mjg4OCwgODI4OTEsIDgyODk0LCA4Mjg5NywgODI5MDAsIDgyOTAzLCA4MjkwNiwgODI5MDksIAorICAgIDgyOTE3LCA4MjkyNiwgODI5MzcsIDgyOTQ1LCA4Mjk1MywgODI5NjIsIDgyOTcxLCA4Mjk4MiwgODI5OTQsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDgzMDAzLCA4MzAwOCwgODMwMTMsIDgzMDIwLCA4MzAyNywgODMwMzMsIDgzMDM5LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCA4MzA0NCwgODMwNTQsIDgzMDY0LCA4MzA3NCwgODMwODMsIDgzMDk0LCA4MzEwMywgODMxMTIsIAorICAgIDgzMTIyLCA4MzEzMiwgODMxNDQsIDgzMTU2LCA4MzE2NywgODMxNzgsIDgzMTg5LCA4MzIwMCwgODMyMTAsIDgzMjIwLCAKKyAgICA4MzIzMCwgODMyNDAsIDgzMjUxLCA4MzI2MiwgODMyNjYsIDgzMjcxLCA4MzI4MCwgODMyODksIDgzMjkzLCA4MzI5NywgCisgICAgODMzMDEsIDgzMzA2LCA4MzMxMSwgODMzMTYsIDgzMzIxLCA4MzMyNCwgODMzMjgsIDAsIDgzMzMzLCA4MzMzNiwgODMzMzksIAorICAgIDgzMzQzLCA4MzM0NywgODMzNTIsIDgzMzU2LCA4MzM2MCwgODMzNjUsIDgzMzcwLCA4MzM3NywgODMzODQsIDgzMzg3LCAKKyAgICA4MzM5MCwgODMzOTMsIDgzMzk2LCA4MzM5OSwgODM0MDMsIDgzNDA3LCAwLCA4MzQxMSwgODM0MTYsIDgzNDIwLCA4MzQyNCwgCisgICAgMCwgMCwgMCwgMCwgODM0MjksIDgzNDM0LCA4MzQ0MSwgODM0NDYsIDgzNDUxLCAwLCA4MzQ1NiwgODM0NjEsIDgzNDY2LCAKKyAgICA4MzQ3MSwgODM0NzYsIDgzNDgxLCA4MzQ4NiwgODM0OTEsIDgzNDk2LCA4MzUwMSwgODM1MDYsIDgzNTExLCA4MzUyMCwgCisgICAgODM1MjksIDgzNTM3LCA4MzU0NSwgODM1NTQsIDgzNTYzLCA4MzU3MiwgODM1ODEsIDgzNTg5LCA4MzU5NywgODM2MDUsIAorICAgIDgzNjEzLCA4MzYxOCwgODM2MjMsIDgzNjI5LCA4MzYzNSwgODM2NDEsIDgzNjQ3LCA4MzY1NSwgODM2NjMsIDgzNjY5LCAKKyAgICA4MzY3NSwgODM2ODEsIDgzNjg3LCA4MzY5MywgODM2OTksIDgzNzA1LCA4MzcxMSwgODM3MTYsIDgzNzIxLCA4MzcyNiwgCisgICAgODM3MzEsIDgzNzM2LCA4Mzc0MSwgODM3NDYsIDgzNzUxLCA4Mzc1NywgODM3NjMsIDgzNzY5LCA4Mzc3NSwgODM3ODEsIAorICAgIDgzNzg3LCA4Mzc5MywgODM3OTksIDgzODA1LCA4MzgxMSwgODM4MTcsIDgzODIzLCA4MzgyOSwgODM4MzUsIDgzODQxLCAKKyAgICA4Mzg0NywgODM4NTMsIDgzODU5LCA4Mzg2NSwgODM4NzEsIDgzODc3LCA4Mzg4MywgODM4ODksIDgzODk1LCA4MzkwMSwgCisgICAgODM5MDcsIDgzOTEzLCA4MzkxOSwgODM5MjUsIDgzOTMxLCA4MzkzNywgODM5NDMsIDgzOTQ5LCA4Mzk1NSwgODM5NjEsIAorICAgIDgzOTY3LCA4Mzk3MywgODM5NzksIDgzOTg1LCA4Mzk5MSwgODM5OTcsIDg0MDAzLCA4NDAwOSwgODQwMTUsIDg0MDIxLCAKKyAgICA4NDAyNywgODQwMzMsIDg0MDM5LCA4NDA0NSwgODQwNTEsIDg0MDU3LCA4NDA2MywgODQwNjksIDg0MDc1LCA4NDA4MSwgCisgICAgODQwODcsIDg0MDkzLCA4NDA5OSwgODQxMDUsIDg0MTExLCA4NDExNiwgODQxMjEsIDg0MTI2LCA4NDEzMSwgODQxMzcsIAorICAgIDg0MTQzLCA4NDE0OSwgODQxNTUsIDg0MTYxLCA4NDE2NywgODQxNzMsIDg0MTc5LCA4NDE4NSwgODQxOTEsIDg0MTk4LCAKKyAgICA4NDIwNSwgODQyMTAsIDg0MjE1LCA4NDIyMCwgODQyMjUsIDg0MjM3LCA4NDI0OSwgODQyNjAsIDg0MjcxLCA4NDI4MywgCisgICAgODQyOTUsIDg0MzAzLCAwLCAwLCA4NDMxMSwgMCwgODQzMTksIDg0MzIzLCA4NDMyNywgODQzMzAsIDg0MzM0LCA4NDMzOCwgCisgICAgODQzNDEsIDg0MzQ0LCA4NDM0OCwgODQzNTIsIDg0MzU1LCA4NDM1OCwgODQzNjEsIDg0MzY0LCA4NDM2OSwgODQzNzIsIAorICAgIDg0Mzc2LCA4NDM3OSwgODQzODIsIDg0Mzg1LCA4NDM4OCwgODQzOTEsIDg0Mzk0LCA4NDM5NywgODQ0MDAsIDg0NDAzLCAKKyAgICA4NDQwNiwgODQ0MDksIDg0NDEzLCA4NDQxNywgODQ0MjEsIDg0NDI1LCA4NDQzMCwgODQ0MzUsIDg0NDQxLCA4NDQ0NywgCisgICAgODQ0NTMsIDg0NDU4LCA4NDQ2NCwgODQ0NzAsIDg0NDc2LCA4NDQ4MSwgODQ0ODcsIDg0NDkzLCA4NDQ5OCwgODQ1MDMsIAorICAgIDg0NTA4LCA4NDUxMywgODQ1MTksIDg0NTI1LCA4NDUzMCwgODQ1MzUsIDg0NTQxLCA4NDU0NiwgODQ1NTIsIDg0NTU4LCAKKyAgICA4NDU2NCwgODQ1NzAsIDg0NTc2LCA4NDU4MCwgODQ1ODUsIDg0NTg5LCA4NDU5NCwgODQ1OTgsIDg0NjAzLCA4NDYwOCwgCisgICAgODQ2MTQsIDg0NjIwLCA4NDYyNiwgODQ2MzEsIDg0NjM3LCA4NDY0MywgODQ2NDksIDg0NjU0LCA4NDY2MCwgODQ2NjYsIAorICAgIDg0NjcxLCA4NDY3NiwgODQ2ODEsIDg0Njg2LCA4NDY5MiwgODQ2OTgsIDg0NzAzLCA4NDcwOCwgODQ3MTQsIDg0NzE5LCAKKyAgICA4NDcyNSwgODQ3MzEsIDg0NzM3LCA4NDc0MywgODQ3NDksIDg0NzU0LCA4NDc1OCwgODQ3NjMsIDg0NzY1LCA4NDc3MCwgCisgICAgODQ3NzUsIDg0NzgxLCA4NDc4NiwgODQ3OTEsIDg0Nzk1LCA4NDgwMSwgODQ4MDYsIDg0ODExLCA4NDgxNiwgODQ4MjEsIAorICAgIDg0ODI2LCA4NDgzMSwgODQ4MzYsIDg0ODQyLCA4NDg0OCwgODQ4NTQsIDg0ODYyLCA4NDg2NiwgODQ4NzAsIDg0ODc0LCAKKyAgICA4NDg3OCwgODQ4ODIsIDg0ODg2LCA4NDg5MSwgODQ4OTYsIDg0OTAxLCA4NDkwNiwgODQ5MTEsIDg0OTE2LCA4NDkyMSwgCisgICAgODQ5MjYsIDg0OTMxLCA4NDkzNiwgODQ5NDEsIDg0OTQ2LCA4NDk1MSwgODQ5NTUsIDg0OTU5LCA4NDk2NCwgODQ5NjksIAorICAgIDg0OTc0LCA4NDk3OSwgODQ5ODMsIDg0OTg4LCA4NDk5MywgODQ5OTgsIDg1MDAzLCA4NTAwNywgODUwMTIsIDg1MDE3LCAKKyAgICA4NTAyMiwgODUwMjcsIDg1MDMxLCA4NTAzNiwgODUwNDEsIDg1MDQ1LCA4NTA1MCwgODUwNTUsIDg1MDYwLCA4NTA2NSwgCisgICAgODUwNzAsIDg1MDc0LCA4NTA4MSwgODUwODgsIDg1MDkyLCA4NTA5NywgODUxMDIsIDg1MTA3LCA4NTExMiwgODUxMTcsIAorICAgIDg1MTIyLCA4NTEyNywgODUxMzIsIDg1MTM3LCA4NTE0MiwgODUxNDcsIDg1MTUyLCA4NTE1NywgODUxNjIsIDg1MTY3LCAKKyAgICA4NTE3MiwgODUxNzcsIDg1MTgyLCA4NTE4NywgODUxOTIsIDg1MTk3LCA4NTIwMiwgODUyMDcsIDg1MjEyLCA4NTIxNywgCisgICAgODUyMjIsIDg1MjI3LCA4NTIzMiwgODUyMzcsIDAsIDAsIDAsIDg1MjQyLCA4NTI0NiwgODUyNTEsIDg1MjU1LCA4NTI2MCwgCisgICAgODUyNjUsIDAsIDAsIDg1MjY5LCA4NTI3NCwgODUyNzksIDg1MjgzLCA4NTI4OCwgODUyOTMsIDAsIDAsIDg1Mjk4LCAKKyAgICA4NTMwMywgODUzMDcsIDg1MzEyLCA4NTMxNywgODUzMjIsIDAsIDAsIDg1MzI3LCA4NTMzMiwgODUzMzcsIDAsIDAsIDAsIAorICAgIDg1MzQxLCA4NTM0NSwgODUzNDksIDg1MzUzLCA4NTM1NiwgODUzNjAsIDg1MzY0LCAwLCA4NTM2OCwgODUzNzQsIDg1Mzc3LCAKKyAgICA4NTM4MSwgODUzODQsIDg1Mzg4LCA4NTM5MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODUzOTYsIDg1NDAyLCAKKyAgICA4NTQwOCwgODU0MTQsIDg1NDIwLCAwLCAwLCA4NTQyNCwgODU0MzAsIDg1NDM2LCA4NTQ0MiwgODU0NDgsIDg1NDU0LCAKKyAgICA4NTQ2MSwgODU0NjgsIDg1NDc1LCA4NTQ4MiwgODU0ODksIDg1NDk2LCAwLCA4NTUwMywgODU1MTAsIDg1NTE3LCA4NTUyMywgCisgICAgODU1MzAsIDg1NTM3LCA4NTU0NCwgODU1NTEsIDg1NTU3LCA4NTU2NCwgODU1NzEsIDg1NTc4LCA4NTU4NSwgODU1OTEsIAorICAgIDg1NTk4LCA4NTYwNSwgODU2MTIsIDg1NjE5LCA4NTYyNSwgODU2MzIsIDg1NjM5LCA4NTY0NiwgODU2NTMsIDg1NjYwLCAKKyAgICA4NTY2NywgODU2NzQsIDAsIDg1NjgxLCA4NTY4NywgODU2OTQsIDg1NzAxLCA4NTcwOCwgODU3MTUsIDg1NzIyLCA4NTcyOSwgCisgICAgODU3MzYsIDg1NzQzLCA4NTc1MCwgODU3NTcsIDg1NzY0LCA4NTc3MSwgODU3NzcsIDg1Nzg0LCA4NTc5MSwgODU3OTgsIAorICAgIDg1ODA1LCAwLCA4NTgxMiwgODU4MTksIDAsIDg1ODI2LCA4NTgzMywgODU4NDAsIDg1ODQ3LCA4NTg1NCwgODU4NjEsIAorICAgIDg1ODY4LCA4NTg3NSwgODU4ODIsIDg1ODg5LCA4NTg5NiwgODU5MDMsIDg1OTEwLCA4NTkxNywgODU5MjQsIDAsIDAsIAorICAgIDg1OTMwLCA4NTkzNSwgODU5NDAsIDg1OTQ1LCA4NTk1MCwgODU5NTUsIDg1OTYwLCA4NTk2NSwgODU5NzAsIDg1OTc1LCAKKyAgICA4NTk4MCwgODU5ODUsIDg1OTkwLCA4NTk5NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODYwMDAsIDg2MDA3LCAKKyAgICA4NjAxNCwgODYwMjEsIDg2MDI4LCA4NjAzNSwgODYwNDIsIDg2MDQ5LCA4NjA1NiwgODYwNjMsIDg2MDcwLCA4NjA3NywgCisgICAgODYwODQsIDg2MDkxLCA4NjA5OCwgODYxMDUsIDg2MTEyLCA4NjExOSwgODYxMjYsIDg2MTMzLCA4NjE0MSwgODYxNDksIAorICAgIDg2MTU2LCA4NjE2MywgODYxNjgsIDg2MTc2LCA4NjE4NCwgODYxOTEsIDg2MTk4LCA4NjIwMywgODYyMTAsIDg2MjE1LCAKKyAgICA4NjIyMCwgODYyMjcsIDg2MjMyLCA4NjIzNywgODYyNDIsIDg2MjUwLCA4NjI1NSwgODYyNjAsIDg2MjY3LCA4NjI3MiwgCisgICAgODYyNzcsIDg2Mjg0LCA4NjI5MSwgODYyOTYsIDg2MzAxLCA4NjMwNiwgODYzMTEsIDg2MzE2LCA4NjMyMSwgODYzMjYsIAorICAgIDg2MzMxLCA4NjMzNiwgODYzNDMsIDg2MzQ4LCA4NjM1NSwgODYzNjAsIDg2MzY1LCA4NjM3MCwgODYzNzUsIDg2MzgwLCAKKyAgICA4NjM4NSwgODYzOTAsIDg2Mzk1LCA4NjQwMCwgODY0MDUsIDg2NDEwLCA4NjQxNywgODY0MjQsIDg2NDMxLCA4NjQzOCwgCisgICAgODY0NDQsIDg2NDQ5LCA4NjQ1NiwgODY0NjEsIDg2NDY2LCA4NjQ3NSwgODY0ODIsIDg2NDkxLCA4NjQ5OCwgODY1MDMsIAorICAgIDg2NTA4LCA4NjUxNiwgODY1MjEsIDg2NTI2LCA4NjUzMSwgODY1MzYsIDg2NTQxLCA4NjU0OCwgODY1NTMsIDg2NTU4LCAKKyAgICA4NjU2MywgODY1NjgsIDg2NTczLCA4NjU4MCwgODY1ODcsIDg2NTk0LCA4NjYwMSwgODY2MDgsIDg2NjE1LCA4NjYyMiwgCisgICAgODY2MjksIDg2NjM2LCA4NjY0MywgODY2NTAsIDg2NjU3LCA4NjY2NCwgODY2NzEsIDg2Njc4LCA4NjY4NSwgODY2OTIsIAorICAgIDg2Njk5LCA4NjcwNiwgODY3MTMsIDg2NzIwLCA4NjcyNywgODY3MzQsIDg2NzQxLCA4Njc0OCwgODY3NTUsIDg2NzYyLCAKKyAgICA4Njc2OSwgMCwgMCwgMCwgMCwgMCwgODY3NzYsIDg2Nzg0LCA4Njc5MiwgMCwgMCwgMCwgMCwgODY3OTcsIDg2ODAxLCAKKyAgICA4NjgwNSwgODY4MDksIDg2ODEzLCA4NjgxNywgODY4MjEsIDg2ODI1LCA4NjgyOSwgODY4MzMsIDg2ODM4LCA4Njg0MywgCisgICAgODY4NDgsIDg2ODUzLCA4Njg1OCwgODY4NjMsIDg2ODY4LCA4Njg3MywgODY4NzgsIDg2ODg0LCA4Njg5MCwgODY4OTYsIAorICAgIDg2OTAzLCA4NjkxMCwgODY5MTcsIDg2OTI0LCA4NjkzMSwgODY5MzgsIDg2OTQ0LCA4Njk1MCwgODY5NTYsIDg2OTYzLCAKKyAgICA4Njk3MCwgODY5NzcsIDg2OTg0LCA4Njk5MSwgODY5OTgsIDg3MDA1LCA4NzAxMiwgODcwMTksIDg3MDI2LCA4NzAzMywgCisgICAgODcwNDAsIDg3MDQ3LCA4NzA1NCwgMCwgMCwgMCwgODcwNjEsIDg3MDY5LCA4NzA3NywgODcwODUsIDg3MDkzLCA4NzEwMSwgCisgICAgODcxMTEsIDg3MTIxLCA4NzEyOSwgODcxMzcsIDg3MTQ1LCA4NzE1MywgODcxNjEsIDg3MTY3LCA4NzE3NCwgODcxODMsIAorICAgIDg3MTkyLCA4NzIwMSwgODcyMTAsIDg3MjE5LCA4NzIyOCwgODcyMzgsIDg3MjQ5LCA4NzI1OSwgODcyNzAsIDg3Mjc5LCAKKyAgICA4NzI4OCwgODcyOTcsIDg3MzA3LCA4NzMxOCwgODczMjgsIDg3MzM5LCA4NzM1MCwgODczNTksIDg3MzY3LCA4NzM3MywgCisgICAgODczNzksIDg3Mzg1LCA4NzM5MSwgODczOTksIDg3NDA3LCA4NzQxMywgODc0MjAsIDg3NDMwLCA4NzQzNywgODc0NDQsIAorICAgIDg3NDUxLCA4NzQ1OCwgODc0NjUsIDg3NDc1LCA4NzQ4MiwgODc0ODksIDg3NDk3LCA4NzUwNSwgODc1MTQsIDg3NTIzLCAKKyAgICA4NzUzMiwgODc1NDEsIDg3NTUwLCA4NzU1OCwgODc1NjcsIDg3NTc2LCA4NzU4NSwgODc1ODksIDg3NTk2LCA4NzYwMSwgCisgICAgODc2MDYsIDg3NjEwLCA4NzYxNCwgODc2MTgsIDg3NjIyLCA4NzYyNywgODc2MzIsIDg3NjM4LCA4NzY0NCwgODc2NDgsIAorICAgIDg3NjU0LCA4NzY1OCwgODc2NjIsIDg3NjY2LCA4NzY3MCwgODc2NzQsIDg3Njc4LCA4NzY4NCwgMCwgMCwgMCwgMCwgMCwgCisgICAgODc2ODgsIDg3NjkzLCA4NzY5OCwgODc3MDMsIDg3NzA4LCA4NzcxNSwgODc3MjAsIDg3NzI1LCA4NzczMCwgODc3MzUsIAorICAgIDg3NzQwLCA4Nzc0NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODc3NTYsIDg3NzYzLCA4Nzc3MiwgODc3ODEsIDg3Nzg4LCA4Nzc5NSwgODc4MDIsIAotICAgIDg3ODA5LCA4NzgxNiwgODc4MjMsIDg3ODI5LCA4NzgzNiwgODc4NDMsIDg3ODUwLCA4Nzg1NywgODc4NjQsIDg3ODcxLCAKLSAgICA4Nzg3OCwgODc4ODUsIDg3ODk0LCA4NzkwMSwgODc5MDgsIDg3OTE1LCA4NzkyMiwgODc5MjksIDg3OTM2LCA4Nzk0MywgCi0gICAgODc5NTAsIDg3OTU5LCA4Nzk2NiwgODc5NzMsIDg3OTgwLCA4Nzk4NywgODc5OTQsIDg4MDAxLCA4ODAxMCwgODgwMTcsIAotICAgIDg4MDI0LCA4ODAzMSwgODgwMzgsIDg4MDQ3LCA4ODA1NCwgODgwNjEsIDg4MDY4LCA4ODA3NiwgODgwODUsIDAsIDAsIAotICAgIDg4MDk0LCA4ODA5OCwgODgxMDIsIDg4MTA3LCA4ODExMiwgODgxMTcsIDg4MTIyLCA4ODEyNiwgODgxMzEsIDg4MTM2LCAKLSAgICA4ODE0MSwgODgxNDYsIDg4MTUxLCA4ODE1NiwgODgxNjAsIDg4MTY0LCA4ODE2OCwgODgxNzMsIDg4MTc4LCA4ODE4MiwgCi0gICAgODgxODcsIDg4MTkyLCA4ODE5NiwgODgyMDAsIDg4MjA1LCA4ODIxMCwgODgyMTUsIDg4MjIwLCA4ODIyNSwgMCwgMCwgMCwgCi0gICAgODgyMzAsIDg4MjM0LCA4ODIzOSwgODgyNDQsIDg4MjQ4LCA4ODI1MywgODgyNTcsIDg4MjYyLCA4ODI2NywgODgyNzIsIAotICAgIDg4Mjc3LCA4ODI4MSwgODgyODUsIDg4MjkwLCA4ODI5NSwgODgzMDAsIDg4MzA1LCA4ODMwOSwgODgzMTQsIDg4MzE4LCAKLSAgICA4ODMyMywgODgzMjgsIDg4MzMyLCA4ODMzNywgODgzNDIsIDg4MzQ3LCA4ODM1MSwgODgzNTUsIDg4MzYwLCA4ODM2NSwgCi0gICAgODgzNzAsIDg4Mzc1LCA4ODM4MCwgODgzODUsIDg4MzkwLCA4ODM5NSwgODg0MDAsIDg4NDA1LCA4ODQxMCwgODg0MTUsIAotICAgIDg4NDIwLCA4ODQyNSwgODg0MzAsIDg4NDM1LCA4ODQ0MCwgODg0NDUsIDg4NDUwLCA4ODQ1NSwgODg0NjAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg3NzUwLCA4Nzc1NywgODc3NjYsIDg3Nzc1LCA4Nzc4MiwgODc3ODksIDg3Nzk2LCAKKyAgICA4NzgwMywgODc4MTAsIDg3ODE3LCA4NzgyMywgODc4MzAsIDg3ODM3LCA4Nzg0NCwgODc4NTEsIDg3ODU4LCA4Nzg2NSwgCisgICAgODc4NzIsIDg3ODc5LCA4Nzg4OCwgODc4OTUsIDg3OTAyLCA4NzkwOSwgODc5MTYsIDg3OTIzLCA4NzkzMCwgODc5MzcsIAorICAgIDg3OTQ0LCA4Nzk1MywgODc5NjAsIDg3OTY3LCA4Nzk3NCwgODc5ODEsIDg3OTg4LCA4Nzk5NSwgODgwMDQsIDg4MDExLCAKKyAgICA4ODAxOCwgODgwMjUsIDg4MDMyLCA4ODA0MSwgODgwNDgsIDg4MDU1LCA4ODA2MiwgODgwNzAsIDg4MDc5LCAwLCAwLCAKKyAgICA4ODA4OCwgODgwOTIsIDg4MDk2LCA4ODEwMSwgODgxMDYsIDg4MTExLCA4ODExNiwgODgxMjAsIDg4MTI1LCA4ODEzMCwgCisgICAgODgxMzUsIDg4MTQwLCA4ODE0NSwgODgxNTAsIDg4MTU0LCA4ODE1OCwgODgxNjIsIDg4MTY3LCA4ODE3MiwgODgxNzYsIAorICAgIDg4MTgxLCA4ODE4NiwgODgxOTAsIDg4MTk0LCA4ODE5OSwgODgyMDQsIDg4MjA5LCA4ODIxNCwgODgyMTksIDAsIDAsIDAsIAorICAgIDg4MjI0LCA4ODIyOCwgODgyMzMsIDg4MjM4LCA4ODI0MiwgODgyNDcsIDg4MjUxLCA4ODI1NiwgODgyNjEsIDg4MjY2LCAKKyAgICA4ODI3MSwgODgyNzUsIDg4Mjc5LCA4ODI4NCwgODgyODksIDg4Mjk0LCA4ODI5OSwgODgzMDMsIDg4MzA4LCA4ODMxMiwgCisgICAgODgzMTcsIDg4MzIyLCA4ODMyNiwgODgzMzEsIDg4MzM2LCA4ODM0MSwgODgzNDUsIDg4MzQ5LCA4ODM1NCwgODgzNTksIAorICAgIDg4MzY0LCA4ODM2OSwgODgzNzQsIDg4Mzc5LCA4ODM4NCwgODgzODksIDg4Mzk0LCA4ODM5OSwgODg0MDQsIDg4NDA5LCAKKyAgICA4ODQxNCwgODg0MTksIDg4NDI0LCA4ODQyOSwgODg0MzQsIDg4NDM5LCA4ODQ0NCwgODg0NDksIDg4NDU0LCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA4ODQ2NSwgODg0NjksIAotICAgIDg4NDc0LCA4ODQ3OSwgODg0ODQsIDg4NDg4LCA4ODQ5MywgODg0OTgsIDg4NTAzLCA4ODUwOCwgODg1MTIsIDg4NTE2LCAKLSAgICA4ODUyMSwgODg1MjYsIDg4NTMxLCA4ODUzNiwgODg1NDAsIDg4NTQ1LCA4ODU1MCwgODg1NTUsIDg4NTYwLCA4ODU2NSwgCi0gICAgODg1NzAsIDg4NTc0LCA4ODU3OSwgODg1ODQsIDg4NTg5LCA4ODU5NCwgODg1OTksIDg4NjA0LCA4ODYwOSwgMCwgODg2MTQsIAotICAgIDg4NjE5LCA4ODYyNCwgODg2MzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg4NjM2LCA4ODY0MSwgCi0gICAgODg2NDYsIDg4NjUxLCA4ODY1NiwgODg2NjEsIDg4NjY2LCA4ODY3MSwgODg2NzYsIDg4NjgxLCA4ODY4NiwgODg2OTEsIAotICAgIDg4Njk2LCA4ODcwMSwgODg3MDYsIDg4NzExLCA4ODcxNiwgODg3MjEsIDg4NzI2LCA4ODczMSwgODg3MzYsIDg4NzQxLCAKLSAgICA4ODc0NiwgODg3NTEsIDg4NzU2LCA4ODc2MSwgODg3NjYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDg4NDU5LCA4ODQ2MywgCisgICAgODg0NjgsIDg4NDczLCA4ODQ3OCwgODg0ODIsIDg4NDg3LCA4ODQ5MiwgODg0OTcsIDg4NTAyLCA4ODUwNiwgODg1MTAsIAorICAgIDg4NTE1LCA4ODUyMCwgODg1MjUsIDg4NTMwLCA4ODUzNCwgODg1MzksIDg4NTQ0LCA4ODU0OSwgODg1NTQsIDg4NTU5LCAKKyAgICA4ODU2NCwgODg1NjgsIDg4NTczLCA4ODU3OCwgODg1ODMsIDg4NTg4LCA4ODU5MywgODg1OTgsIDg4NjAzLCAwLCA4ODYwOCwgCisgICAgODg2MTMsIDg4NjE4LCA4ODYyNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODg2MzAsIDg4NjM1LCAKKyAgICA4ODY0MCwgODg2NDUsIDg4NjUwLCA4ODY1NSwgODg2NjAsIDg4NjY1LCA4ODY3MCwgODg2NzUsIDg4NjgwLCA4ODY4NSwgCisgICAgODg2OTAsIDg4Njk1LCA4ODcwMCwgODg3MDUsIDg4NzEwLCA4ODcxNSwgODg3MjAsIDg4NzI1LCA4ODczMCwgODg3MzUsIAorICAgIDg4NzQwLCA4ODc0NSwgODg3NTAsIDg4NzU1LCA4ODc2MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODg3NzMsIDg4Nzc4LCA4ODc4MywgCi0gICAgODg3ODgsIDg4NzkzLCA4ODc5OCwgODg4MDMsIDg4ODA4LCA4ODgxMywgODg4MTgsIDg4ODIzLCA4ODgyOCwgODg4MzMsIAotICAgIDg4ODM4LCA4ODg0MywgODg4NDgsIDg4ODUzLCA4ODg1OCwgODg4NjMsIDg4ODY4LCA4ODg3MywgODg4NzgsIDg4ODgzLCAKLSAgICA4ODg4OCwgODg4OTMsIDg4ODk4LCA4ODkwMywgODg5MDcsIDg4OTExLCA4ODkxNSwgMCwgODg5MjAsIDg4OTI2LCA4ODkzMSwgCi0gICAgODg5MzYsIDg4OTQxLCA4ODk0NiwgODg5NTIsIDg4OTU4LCA4ODk2NCwgODg5NzAsIDg4OTc2LCA4ODk4MiwgODg5ODgsIAotICAgIDg4OTk0LCA4OTAwMCwgODkwMDYsIDg5MDEyLCA4OTAxOCwgODkwMjQsIDg5MDI5LCA4OTAzNSwgODkwNDEsIDg5MDQ2LCAKLSAgICA4OTA1MiwgODkwNTcsIDg5MDYzLCA4OTA2OSwgODkwNzQsIDg5MDgwLCA4OTA4NiwgODkwOTEsIDg5MDk3LCA4OTEwMywgCi0gICAgODkxMDksIDg5MTE1LCA4OTEyMSwgODkxMjcsIDAsIDAsIDAsIDAsIDg5MTMyLCA4OTEzOCwgODkxNDQsIDg5MTUwLCAKLSAgICA4OTE1NiwgODkxNjIsIDg5MTY4LCA4OTE3NCwgODkxODAsIDg5MTg3LCA4OTE5MiwgODkxOTcsIDg5MjAzLCA4OTIwOSwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODg3NjcsIDg4NzcyLCA4ODc3NywgCisgICAgODg3ODIsIDg4Nzg3LCA4ODc5MiwgODg3OTcsIDg4ODAyLCA4ODgwNywgODg4MTIsIDg4ODE3LCA4ODgyMiwgODg4MjcsIAorICAgIDg4ODMyLCA4ODgzNywgODg4NDIsIDg4ODQ3LCA4ODg1MiwgODg4NTcsIDg4ODYyLCA4ODg2NywgODg4NzIsIDg4ODc3LCAKKyAgICA4ODg4MiwgODg4ODcsIDg4ODkyLCA4ODg5NywgODg5MDEsIDg4OTA1LCA4ODkwOSwgMCwgODg5MTQsIDg4OTIwLCA4ODkyNSwgCisgICAgODg5MzAsIDg4OTM1LCA4ODk0MCwgODg5NDYsIDg4OTUyLCA4ODk1OCwgODg5NjQsIDg4OTcwLCA4ODk3NiwgODg5ODIsIAorICAgIDg4OTg4LCA4ODk5NCwgODkwMDAsIDg5MDA2LCA4OTAxMiwgODkwMTgsIDg5MDIzLCA4OTAyOSwgODkwMzUsIDg5MDQwLCAKKyAgICA4OTA0NiwgODkwNTEsIDg5MDU3LCA4OTA2MywgODkwNjgsIDg5MDc0LCA4OTA4MCwgODkwODUsIDg5MDkxLCA4OTA5NywgCisgICAgODkxMDMsIDg5MTA5LCA4OTExNSwgODkxMjEsIDAsIDAsIDAsIDAsIDg5MTI2LCA4OTEzMiwgODkxMzgsIDg5MTQ0LCAKKyAgICA4OTE1MCwgODkxNTYsIDg5MTYyLCA4OTE2OCwgODkxNzQsIDg5MTgxLCA4OTE4NiwgODkxOTEsIDg5MTk3LCA4OTIwMywgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODkyMTUsIDg5MjIwLCA4OTIyNSwgCi0gICAgODkyMzAsIDg5MjM2LCA4OTI0MSwgODkyNDcsIDg5MjUzLCA4OTI1OSwgODkyNjUsIDg5MjcyLCA4OTI3OCwgODkyODUsIAotICAgIDg5MjkwLCA4OTI5NSwgODkzMDAsIDg5MzA1LCA4OTMxMCwgODkzMTUsIDg5MzIwLCA4OTMyNSwgODkzMzAsIDg5MzM1LCAKLSAgICA4OTM0MCwgODkzNDUsIDg5MzUwLCA4OTM1NSwgODkzNjAsIDg5MzY1LCA4OTM3MCwgODkzNzUsIDg5MzgwLCA4OTM4NSwgCi0gICAgODkzOTAsIDg5Mzk1LCA4OTQwMCwgODk0MDUsIDg5NDEwLCA4OTQxNSwgODk0MjAsIDg5NDI1LCA4OTQzMCwgODk0MzUsIAotICAgIDg5NDQwLCA4OTQ0NiwgODk0NTEsIDg5NDU3LCA4OTQ2MywgODk0NjksIDg5NDc1LCA4OTQ4MiwgODk0ODgsIDg5NDk1LCAKLSAgICA4OTUwMCwgODk1MDUsIDg5NTEwLCA4OTUxNSwgODk1MjAsIDg5NTI1LCA4OTUzMCwgODk1MzUsIDg5NTQwLCA4OTU0NSwgCi0gICAgODk1NTAsIDg5NTU1LCA4OTU2MCwgODk1NjUsIDg5NTcwLCA4OTU3NSwgODk1ODAsIDg5NTg1LCA4OTU5MCwgODk1OTUsIAotICAgIDg5NjAwLCA4OTYwNSwgODk2MTAsIDg5NjE1LCA4OTYyMCwgODk2MjUsIDg5NjMwLCA4OTYzNSwgODk2NDAsIDg5NjQ1LCAKLSAgICA4OTY1MCwgODk2NTUsIDg5NjYwLCA4OTY2NSwgODk2NzAsIDg5Njc1LCA4OTY4MCwgODk2ODUsIDg5NjkwLCA4OTY5NSwgCi0gICAgODk3MDAsIDg5NzA1LCA4OTcxMCwgODk3MTUsIDg5NzIwLCA4OTcyNSwgODk3MzAsIDg5NzM1LCA4OTc0MCwgODk3NDUsIAotICAgIDg5NzUwLCA4OTc1NSwgODk3NjAsIDg5NzY1LCA4OTc3MCwgODk3NzUsIDg5NzgwLCA4OTc4NSwgODk3OTAsIDg5Nzk1LCAKLSAgICA4OTgwMCwgODk4MDUsIDg5ODEwLCA4OTgxNSwgODk4MjAsIDg5ODI1LCA4OTgzMCwgODk4MzUsIDg5ODQwLCA4OTg0NSwgCi0gICAgODk4NTAsIDg5ODU1LCA4OTg2MCwgODk4NjUsIDg5ODcwLCA4OTg3NSwgODk4ODAsIDg5ODg1LCA4OTg5MCwgODk4OTUsIAotICAgIDg5OTAwLCA4OTkwNSwgODk5MTAsIDg5OTE0LCA4OTkxOSwgODk5MjQsIDg5OTI5LCA4OTkzNCwgODk5MzksIDg5OTQ0LCAKLSAgICA4OTk0OSwgODk5NTQsIDg5OTU5LCA4OTk2NCwgODk5NjksIDg5OTc0LCA4OTk3OCwgODk5ODIsIDg5OTg2LCA4OTk5MCwgCi0gICAgODk5OTQsIDg5OTk4LCA5MDAwMiwgOTAwMDcsIDkwMDEyLCAwLCAwLCA5MDAxNywgOTAwMjIsIDkwMDI2LCA5MDAzMCwgCi0gICAgOTAwMzQsIDkwMDM4LCA5MDA0MiwgOTAwNDYsIDkwMDUwLCA5MDA1NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgODkyMDksIDg5MjE0LCA4OTIxOSwgCisgICAgODkyMjQsIDg5MjMwLCA4OTIzNSwgODkyNDEsIDg5MjQ3LCA4OTI1MywgODkyNTksIDg5MjY2LCA4OTI3MiwgODkyNzksIAorICAgIDg5Mjg0LCA4OTI4OSwgODkyOTQsIDg5Mjk5LCA4OTMwNCwgODkzMDksIDg5MzE0LCA4OTMxOSwgODkzMjQsIDg5MzI5LCAKKyAgICA4OTMzNCwgODkzMzksIDg5MzQ0LCA4OTM0OSwgODkzNTQsIDg5MzU5LCA4OTM2NCwgODkzNjksIDg5Mzc0LCA4OTM3OSwgCisgICAgODkzODQsIDg5Mzg5LCA4OTM5NCwgODkzOTksIDg5NDA0LCA4OTQwOSwgODk0MTQsIDg5NDE5LCA4OTQyNCwgODk0MjksIAorICAgIDg5NDM0LCA4OTQ0MCwgODk0NDUsIDg5NDUxLCA4OTQ1NywgODk0NjMsIDg5NDY5LCA4OTQ3NiwgODk0ODIsIDg5NDg5LCAKKyAgICA4OTQ5NCwgODk0OTksIDg5NTA0LCA4OTUwOSwgODk1MTQsIDg5NTE5LCA4OTUyNCwgODk1MjksIDg5NTM0LCA4OTUzOSwgCisgICAgODk1NDQsIDg5NTQ5LCA4OTU1NCwgODk1NTksIDg5NTY0LCA4OTU2OSwgODk1NzQsIDg5NTc5LCA4OTU4NCwgODk1ODksIAorICAgIDg5NTk0LCA4OTU5OSwgODk2MDQsIDg5NjA5LCA4OTYxNCwgODk2MTksIDg5NjI0LCA4OTYyOSwgODk2MzQsIDg5NjM5LCAKKyAgICA4OTY0NCwgODk2NDksIDg5NjU0LCA4OTY1OSwgODk2NjQsIDg5NjY5LCA4OTY3NCwgODk2NzksIDg5Njg0LCA4OTY4OSwgCisgICAgODk2OTQsIDg5Njk5LCA4OTcwNCwgODk3MDksIDg5NzE0LCA4OTcxOSwgODk3MjQsIDg5NzI5LCA4OTczNCwgODk3MzksIAorICAgIDg5NzQ0LCA4OTc0OSwgODk3NTQsIDg5NzU5LCA4OTc2NCwgODk3NjksIDg5Nzc0LCA4OTc3OSwgODk3ODQsIDg5Nzg5LCAKKyAgICA4OTc5NCwgODk3OTksIDg5ODA0LCA4OTgwOSwgODk4MTQsIDg5ODE5LCA4OTgyNCwgODk4MjksIDg5ODM0LCA4OTgzOSwgCisgICAgODk4NDQsIDg5ODQ5LCA4OTg1NCwgODk4NTksIDg5ODY0LCA4OTg2OSwgODk4NzQsIDg5ODc5LCA4OTg4NCwgODk4ODksIAorICAgIDg5ODk0LCA4OTg5OSwgODk5MDQsIDg5OTA4LCA4OTkxMywgODk5MTgsIDg5OTIzLCA4OTkyOCwgODk5MzMsIDg5OTM4LCAKKyAgICA4OTk0MywgODk5NDgsIDg5OTUzLCA4OTk1OCwgODk5NjMsIDg5OTY4LCA4OTk3MiwgODk5NzYsIDg5OTgwLCA4OTk4NCwgCisgICAgODk5ODgsIDg5OTkyLCA4OTk5NiwgOTAwMDEsIDkwMDA2LCAwLCAwLCA5MDAxMSwgOTAwMTYsIDkwMDIwLCA5MDAyNCwgCisgICAgOTAwMjgsIDkwMDMyLCA5MDAzNiwgOTAwNDAsIDkwMDQ0LCA5MDA0OCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgOTAwNTgsIDkwMDYyLCA5MDA2NiwgOTAwNzAsIDkwMDc0LCA5MDA3OCwgMCwgMCwgOTAwODMsIDAsIAotICAgIDkwMDg4LCA5MDA5MiwgOTAwOTcsIDkwMTAyLCA5MDEwNywgOTAxMTIsIDkwMTE3LCA5MDEyMiwgOTAxMjcsIDkwMTMyLCAKLSAgICA5MDEzNywgOTAxNDEsIDkwMTQ2LCA5MDE1MSwgOTAxNTYsIDkwMTYxLCA5MDE2NSwgOTAxNzAsIDkwMTc1LCA5MDE4MCwgCi0gICAgOTAxODUsIDkwMTg5LCA5MDE5NCwgOTAxOTksIDkwMjA0LCA5MDIwOSwgOTAyMTMsIDkwMjE4LCA5MDIyMywgOTAyMjgsIAotICAgIDkwMjMzLCA5MDIzOCwgOTAyNDMsIDkwMjQ4LCA5MDI1MywgOTAyNTgsIDkwMjYzLCA5MDI2OCwgOTAyNzMsIDkwMjc3LCAKLSAgICA5MDI4MiwgOTAyODcsIDkwMjkyLCA5MDI5NywgMCwgOTAzMDIsIDkwMzA3LCAwLCAwLCAwLCA5MDMxMiwgMCwgMCwgOTAzMTcsIAotICAgIDkwMzIyLCA5MDMyOSwgOTAzMzYsIDkwMzQzLCA5MDM1MCwgOTAzNTcsIDkwMzY0LCA5MDM3MSwgOTAzNzgsIDkwMzg1LCAKLSAgICA5MDM5MiwgOTAzOTksIDkwNDA2LCA5MDQxMywgOTA0MjAsIDkwNDI3LCA5MDQzNCwgOTA0NDEsIDkwNDQ4LCA5MDQ1NSwgCi0gICAgOTA0NjIsIDkwNDY5LCAwLCA5MDQ3NiwgOTA0ODMsIDkwNDg5LCA5MDQ5NSwgOTA1MDEsIDkwNTA4LCA5MDUxNSwgOTA1MjMsIAotICAgIDkwNTMxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5MDU0MCwgOTA1NDUsIDkwNTUwLCA5MDU1NSwgOTA1NjAsIDkwNTY1LCAKLSAgICA5MDU3MCwgOTA1NzUsIDkwNTgwLCA5MDU4NSwgOTA1OTAsIDkwNTk1LCA5MDYwMCwgOTA2MDUsIDkwNjEwLCA5MDYxNSwgCi0gICAgOTA2MjAsIDkwNjI1LCA5MDYzMCwgOTA2MzUsIDkwNjQwLCA5MDY0NSwgOTA2NTAsIDkwNjU0LCA5MDY1OSwgOTA2NjQsIAotICAgIDkwNjcwLCA5MDY3NCwgMCwgMCwgMCwgOTA2NzgsIDkwNjg0LCA5MDY4OCwgOTA2OTMsIDkwNjk4LCA5MDcwMywgOTA3MDcsIAotICAgIDkwNzEyLCA5MDcxNiwgOTA3MjEsIDkwNzI2LCA5MDczMCwgOTA3MzQsIDkwNzM4LCA5MDc0MiwgOTA3NDYsIDkwNzUxLCAKLSAgICA5MDc1NiwgOTA3NjAsIDkwNzY1LCA5MDc3MCwgOTA3NzQsIDkwNzc5LCA5MDc4NCwgOTA3ODksIDkwNzk0LCA5MDc5OSwgMCwgCi0gICAgMCwgMCwgMCwgMCwgOTA4MDQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDkwMDUyLCA5MDA1NiwgOTAwNjAsIDkwMDY0LCA5MDA2OCwgOTAwNzIsIDAsIDAsIDkwMDc3LCAwLCAKKyAgICA5MDA4MiwgOTAwODYsIDkwMDkxLCA5MDA5NiwgOTAxMDEsIDkwMTA2LCA5MDExMSwgOTAxMTYsIDkwMTIxLCA5MDEyNiwgCisgICAgOTAxMzEsIDkwMTM1LCA5MDE0MCwgOTAxNDUsIDkwMTUwLCA5MDE1NSwgOTAxNTksIDkwMTY0LCA5MDE2OSwgOTAxNzQsIAorICAgIDkwMTc5LCA5MDE4MywgOTAxODgsIDkwMTkzLCA5MDE5OCwgOTAyMDMsIDkwMjA3LCA5MDIxMiwgOTAyMTcsIDkwMjIyLCAKKyAgICA5MDIyNywgOTAyMzIsIDkwMjM3LCA5MDI0MiwgOTAyNDcsIDkwMjUyLCA5MDI1NywgOTAyNjIsIDkwMjY3LCA5MDI3MSwgCisgICAgOTAyNzYsIDkwMjgxLCA5MDI4NiwgOTAyOTEsIDAsIDkwMjk2LCA5MDMwMSwgMCwgMCwgMCwgOTAzMDYsIDAsIDAsIDkwMzExLCAKKyAgICA5MDMxNiwgOTAzMjMsIDkwMzMwLCA5MDMzNywgOTAzNDQsIDkwMzUxLCA5MDM1OCwgOTAzNjUsIDkwMzcyLCA5MDM3OSwgCisgICAgOTAzODYsIDkwMzkzLCA5MDQwMCwgOTA0MDcsIDkwNDE0LCA5MDQyMSwgOTA0MjgsIDkwNDM1LCA5MDQ0MiwgOTA0NDksIAorICAgIDkwNDU2LCA5MDQ2MywgMCwgOTA0NzAsIDkwNDc3LCA5MDQ4MywgOTA0ODksIDkwNDk1LCA5MDUwMiwgOTA1MDksIDkwNTE3LCAKKyAgICA5MDUyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTA1MzQsIDkwNTM5LCA5MDU0NCwgOTA1NDksIDkwNTU0LCA5MDU1OSwgCisgICAgOTA1NjQsIDkwNTY5LCA5MDU3NCwgOTA1NzksIDkwNTg0LCA5MDU4OSwgOTA1OTQsIDkwNTk5LCA5MDYwNCwgOTA2MDksIAorICAgIDkwNjE0LCA5MDYxOSwgOTA2MjQsIDkwNjI5LCA5MDYzNCwgOTA2MzksIDkwNjQ0LCA5MDY0OCwgOTA2NTMsIDkwNjU4LCAKKyAgICA5MDY2NCwgOTA2NjgsIDAsIDAsIDAsIDkwNjcyLCA5MDY3OCwgOTA2ODIsIDkwNjg3LCA5MDY5MiwgOTA2OTcsIDkwNzAxLCAKKyAgICA5MDcwNiwgOTA3MTAsIDkwNzE1LCA5MDcyMCwgOTA3MjQsIDkwNzI4LCA5MDczMiwgOTA3MzYsIDkwNzQwLCA5MDc0NSwgCisgICAgOTA3NTAsIDkwNzU0LCA5MDc1OSwgOTA3NjQsIDkwNzY4LCA5MDc3MywgOTA3NzgsIDkwNzgzLCA5MDc4OCwgOTA3OTMsIDAsIAorICAgIDAsIDAsIDAsIDAsIDkwNzk4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5MDgwOSwgCi0gICAgOTA4MTMsIDkwODE4LCA5MDgyMywgMCwgOTA4MjksIDkwODM0LCAwLCAwLCAwLCAwLCAwLCA5MDgzOSwgOTA4NDUsIDkwODUyLCAKLSAgICA5MDg1NywgOTA4NjIsIDkwODY2LCA5MDg3MSwgOTA4NzYsIDAsIDkwODgxLCA5MDg4NiwgOTA4OTEsIDAsIDkwODk2LCAKLSAgICA5MDkwMSwgOTA5MDYsIDkwOTExLCA5MDkxNiwgOTA5MjEsIDkwOTI2LCA5MDkzMSwgOTA5MzYsIDkwOTQxLCA5MDk0NiwgCi0gICAgOTA5NTAsIDkwOTU0LCA5MDk1OSwgOTA5NjQsIDkwOTY5LCA5MDk3MywgOTA5NzcsIDkwOTgxLCA5MDk4NiwgOTA5OTEsIAotICAgIDkwOTk2LCA5MTAwMSwgOTEwMDYsIDkxMDExLCA5MTAxNSwgOTEwMjAsIDAsIDAsIDAsIDAsIDkxMDI1LCA5MTAzMSwgCi0gICAgOTEwMzYsIDAsIDAsIDAsIDAsIDkxMDQxLCA5MTA0NSwgOTEwNDksIDkxMDUzLCA5MTA1NywgOTEwNjEsIDkxMDY2LCAKLSAgICA5MTA3MSwgOTEwNzcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkxMDgzLCA5MTA4OSwgOTEwOTYsIDkxMTAyLCA5MTEwOSwgCi0gICAgOTExMTUsIDkxMTIxLCA5MTEyNywgOTExMzQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkxMTQwLCA5MTE0OCwgOTExNTYsIAotICAgIDkxMTY0LCA5MTE3MiwgOTExODAsIDkxMTg4LCA5MTE5NiwgOTEyMDQsIDkxMjEyLCA5MTIyMCwgOTEyMjgsIDkxMjM2LCAKLSAgICA5MTI0NCwgOTEyNTIsIDkxMjYwLCA5MTI2OCwgOTEyNzYsIDkxMjg0LCA5MTI5MiwgOTEzMDAsIDkxMzA4LCA5MTMxNiwgCi0gICAgOTEzMjQsIDkxMzMyLCA5MTM0MCwgOTEzNDgsIDkxMzU2LCA5MTM2NCwgOTEzNzIsIDkxMzc5LCA5MTM4NywgOTEzOTUsIAotICAgIDkxMzk5LCA5MTQwNCwgOTE0MDksIDkxNDE0LCA5MTQxOSwgOTE0MjQsIDkxNDI5LCA5MTQzNCwgOTE0MzgsIDkxNDQzLCAKLSAgICA5MTQ0NywgOTE0NTIsIDkxNDU2LCA5MTQ2MSwgOTE0NjUsIDkxNDcwLCA5MTQ3NSwgOTE0ODAsIDkxNDg1LCA5MTQ5MCwgCi0gICAgOTE0OTUsIDkxNTAwLCA5MTUwNSwgOTE1MTAsIDkxNTE1LCA5MTUyMCwgOTE1MjUsIDkxNTMwLCA5MTUzNSwgOTE1NDAsIAotICAgIDkxNTQ1LCA5MTU1MCwgOTE1NTUsIDkxNTYwLCA5MTU2NSwgOTE1NzAsIDkxNTc1LCA5MTU4MCwgOTE1ODUsIDkxNTkwLCAKLSAgICA5MTU5NSwgOTE2MDAsIDkxNjA1LCA5MTYxMCwgOTE2MTUsIDkxNjIwLCA5MTYyNSwgOTE2MzAsIDkxNjM1LCA5MTY0MCwgCi0gICAgOTE2NDUsIDkxNjUwLCA5MTY1NSwgMCwgMCwgMCwgOTE2NjAsIDkxNjY1LCA5MTY3NCwgOTE2ODIsIDkxNjkxLCA5MTcwMCwgCi0gICAgOTE3MTEsIDkxNzIyLCA5MTcyOSwgOTE3MzYsIDkxNzQzLCA5MTc1MCwgOTE3NTcsIDkxNzY0LCA5MTc3MSwgOTE3NzgsIAotICAgIDkxNzg1LCA5MTc5MiwgOTE3OTksIDkxODA2LCA5MTgxMywgOTE4MjAsIDkxODI3LCA5MTgzNCwgOTE4NDEsIDkxODQ4LCAKLSAgICA5MTg1NSwgOTE4NjIsIDkxODY5LCAwLCAwLCA5MTg3NiwgOTE4ODIsIDkxODg4LCA5MTg5NCwgOTE5MDAsIDkxOTA3LCAKLSAgICA5MTkxNCwgOTE5MjIsIDkxOTMwLCA5MTkzNywgOTE5NDQsIDkxOTUxLCA5MTk1OCwgOTE5NjUsIDkxOTcyLCA5MTk3OSwgCi0gICAgOTE5ODYsIDkxOTkzLCA5MjAwMCwgOTIwMDcsIDkyMDE0LCA5MjAyMSwgOTIwMjgsIDkyMDM1LCA5MjA0MiwgOTIwNDksIAotICAgIDkyMDU2LCAwLCAwLCAwLCAwLCAwLCA5MjA2MywgOTIwNjksIDkyMDc1LCA5MjA4MSwgOTIwODcsIDkyMDk0LCA5MjEwMSwgCi0gICAgOTIxMDksIDkyMTE3LCA5MjEyMywgOTIxMjksIDkyMTM2LCA5MjE0MiwgOTIxNDgsIDkyMTU0LCA5MjE2MCwgOTIxNjcsIAotICAgIDkyMTc0LCA5MjE4MSwgOTIxODgsIDkyMTk1LCA5MjIwMiwgOTIyMDksIDkyMjE2LCA5MjIyMywgOTIyMzAsIDkyMjM3LCAKLSAgICA5MjI0NCwgOTIyNTEsIDkyMjU4LCA5MjI2NSwgOTIyNzIsIDkyMjc5LCA5MjI4NiwgOTIyOTMsIDkyMzAwLCA5MjMwNywgCi0gICAgOTIzMTQsIDkyMzIxLCA5MjMyOCwgOTIzMzUsIDkyMzQyLCA5MjM0OSwgOTIzNTYsIDkyMzYzLCA5MjM3MCwgOTIzNzcsIAotICAgIDkyMzg0LCA5MjM5MSwgOTIzOTgsIDkyNDA1LCA5MjQxMiwgOTI0MTksIDkyNDI2LCA5MjQzMywgOTI0NDAsIDkyNDQ3LCAKLSAgICA5MjQ1NCwgOTI0NjEsIDkyNDY4LCA5MjQ3NSwgOTI0ODIsIDkyNDg5LCA5MjQ5NiwgOTI1MDMsIDkyNTEwLCA5MjUxNywgCi0gICAgOTI1MjQsIDkyNTMxLCA5MjUzOCwgOTI1NDUsIDkyNTUyLCA5MjU1OSwgOTI1NjYsIDkyNTczLCA5MjU4MCwgOTI1ODcsIAotICAgIDkyNTk0LCA5MjYwMSwgOTI2MDgsIDkyNjE1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5MDgwMywgCisgICAgOTA4MDcsIDkwODEyLCA5MDgxNywgMCwgOTA4MjMsIDkwODI4LCAwLCAwLCAwLCAwLCAwLCA5MDgzMywgOTA4MzksIDkwODQ2LCAKKyAgICA5MDg1MSwgOTA4NTYsIDkwODYwLCA5MDg2NSwgOTA4NzAsIDAsIDkwODc1LCA5MDg4MCwgOTA4ODUsIDAsIDkwODkwLCAKKyAgICA5MDg5NSwgOTA5MDAsIDkwOTA1LCA5MDkxMCwgOTA5MTUsIDkwOTIwLCA5MDkyNSwgOTA5MzAsIDkwOTM1LCA5MDk0MCwgCisgICAgOTA5NDQsIDkwOTQ4LCA5MDk1MywgOTA5NTgsIDkwOTYzLCA5MDk2NywgOTA5NzEsIDkwOTc1LCA5MDk4MCwgOTA5ODUsIAorICAgIDkwOTkwLCA5MDk5NSwgOTEwMDAsIDkxMDA1LCA5MTAwOSwgOTEwMTQsIDAsIDAsIDAsIDAsIDkxMDE5LCA5MTAyNSwgCisgICAgOTEwMzAsIDAsIDAsIDAsIDAsIDkxMDM1LCA5MTAzOSwgOTEwNDMsIDkxMDQ3LCA5MTA1MSwgOTEwNTUsIDkxMDYwLCAKKyAgICA5MTA2NSwgOTEwNzEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkxMDc3LCA5MTA4MywgOTEwOTAsIDkxMDk2LCA5MTEwMywgCisgICAgOTExMDksIDkxMTE1LCA5MTEyMSwgOTExMjgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkxMTM0LCA5MTE0MiwgOTExNTAsIAorICAgIDkxMTU4LCA5MTE2NiwgOTExNzQsIDkxMTgyLCA5MTE5MCwgOTExOTgsIDkxMjA2LCA5MTIxNCwgOTEyMjIsIDkxMjMwLCAKKyAgICA5MTIzOCwgOTEyNDYsIDkxMjU0LCA5MTI2MiwgOTEyNzAsIDkxMjc4LCA5MTI4NiwgOTEyOTQsIDkxMzAyLCA5MTMxMCwgCisgICAgOTEzMTgsIDkxMzI2LCA5MTMzNCwgOTEzNDIsIDkxMzUwLCA5MTM1OCwgOTEzNjYsIDkxMzczLCA5MTM4MSwgOTEzODksIAorICAgIDkxMzkzLCA5MTM5OCwgOTE0MDMsIDkxNDA4LCA5MTQxMywgOTE0MTgsIDkxNDIzLCA5MTQyOCwgOTE0MzIsIDkxNDM3LCAKKyAgICA5MTQ0MSwgOTE0NDYsIDkxNDUwLCA5MTQ1NSwgOTE0NTksIDkxNDY0LCA5MTQ2OSwgOTE0NzQsIDkxNDc5LCA5MTQ4NCwgCisgICAgOTE0ODksIDkxNDk0LCA5MTQ5OSwgOTE1MDQsIDkxNTA5LCA5MTUxNCwgOTE1MTksIDkxNTI0LCA5MTUyOSwgOTE1MzQsIAorICAgIDkxNTM5LCA5MTU0NCwgOTE1NDksIDkxNTU0LCA5MTU1OSwgOTE1NjQsIDkxNTY5LCA5MTU3NCwgOTE1NzksIDkxNTg0LCAKKyAgICA5MTU4OSwgOTE1OTQsIDkxNTk5LCA5MTYwNCwgOTE2MDksIDkxNjE0LCA5MTYxOSwgOTE2MjQsIDkxNjI5LCA5MTYzNCwgCisgICAgOTE2MzksIDkxNjQ0LCA5MTY0OSwgMCwgMCwgMCwgOTE2NTQsIDkxNjU5LCA5MTY2OCwgOTE2NzYsIDkxNjg1LCA5MTY5NCwgCisgICAgOTE3MDUsIDkxNzE2LCA5MTcyMywgOTE3MzAsIDkxNzM3LCA5MTc0NCwgOTE3NTEsIDkxNzU4LCA5MTc2NSwgOTE3NzIsIAorICAgIDkxNzc5LCA5MTc4NiwgOTE3OTMsIDkxODAwLCA5MTgwNywgOTE4MTQsIDkxODIxLCA5MTgyOCwgOTE4MzUsIDkxODQyLCAKKyAgICA5MTg0OSwgOTE4NTYsIDkxODYzLCAwLCAwLCA5MTg3MCwgOTE4NzYsIDkxODgyLCA5MTg4OCwgOTE4OTQsIDkxOTAxLCAKKyAgICA5MTkwOCwgOTE5MTYsIDkxOTI0LCA5MTkzMSwgOTE5MzgsIDkxOTQ1LCA5MTk1MiwgOTE5NTksIDkxOTY2LCA5MTk3MywgCisgICAgOTE5ODAsIDkxOTg3LCA5MTk5NCwgOTIwMDEsIDkyMDA4LCA5MjAxNSwgOTIwMjIsIDkyMDI5LCA5MjAzNiwgOTIwNDMsIAorICAgIDkyMDUwLCAwLCAwLCAwLCAwLCAwLCA5MjA1NywgOTIwNjMsIDkyMDY5LCA5MjA3NSwgOTIwODEsIDkyMDg4LCA5MjA5NSwgCisgICAgOTIxMDMsIDkyMTExLCA5MjExNywgOTIxMjMsIDkyMTMwLCA5MjEzNiwgOTIxNDIsIDkyMTQ4LCA5MjE1NCwgOTIxNjEsIAorICAgIDkyMTY4LCA5MjE3NSwgOTIxODIsIDkyMTg5LCA5MjE5NiwgOTIyMDMsIDkyMjEwLCA5MjIxNywgOTIyMjQsIDkyMjMxLCAKKyAgICA5MjIzOCwgOTIyNDUsIDkyMjUyLCA5MjI1OSwgOTIyNjYsIDkyMjczLCA5MjI4MCwgOTIyODcsIDkyMjk0LCA5MjMwMSwgCisgICAgOTIzMDgsIDkyMzE1LCA5MjMyMiwgOTIzMjksIDkyMzM2LCA5MjM0MywgOTIzNTAsIDkyMzU3LCA5MjM2NCwgOTIzNzEsIAorICAgIDkyMzc4LCA5MjM4NSwgOTIzOTIsIDkyMzk5LCA5MjQwNiwgOTI0MTMsIDkyNDIwLCA5MjQyNywgOTI0MzQsIDkyNDQxLCAKKyAgICA5MjQ0OCwgOTI0NTUsIDkyNDYyLCA5MjQ2OSwgOTI0NzYsIDkyNDgzLCA5MjQ5MCwgOTI0OTcsIDkyNTA0LCA5MjUxMSwgCisgICAgOTI1MTgsIDkyNTI1LCA5MjUzMiwgOTI1MzksIDkyNTQ2LCA5MjU1MywgOTI1NjAsIDkyNTY3LCA5MjU3NCwgOTI1ODEsIAorICAgIDkyNTg4LCA5MjU5NSwgOTI2MDIsIDkyNjA5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5MjYyMiwgOTI2MjYsIDkyNjMwLCAKLSAgICA5MjYzNCwgOTI2MzgsIDkyNjQyLCA5MjY0NiwgOTI2NTAsIDkyNjU0LCA5MjY1OCwgOTI2NjMsIDkyNjY4LCA5MjY3MywgCi0gICAgOTI2NzgsIDkyNjgzLCA5MjY4OCwgOTI2OTMsIDkyNjk4LCA5MjcwMywgOTI3MDksIDkyNzE1LCA5MjcyMSwgOTI3MjgsIAotICAgIDkyNzM1LCA5Mjc0MiwgOTI3NDksIDkyNzU2LCA5Mjc2MywgOTI3NzAsIDkyNzc3LCA5Mjc4NCwgMCwgOTI3OTEsIDkyNzk1LCAKLSAgICA5Mjc5OSwgOTI4MDMsIDkyODA3LCA5MjgxMSwgOTI4MTQsIDkyODE4LCA5MjgyMSwgOTI4MjUsIDkyODI4LCA5MjgzMiwgCi0gICAgOTI4MzYsIDkyODQxLCA5Mjg0NSwgOTI4NTAsIDkyODUzLCA5Mjg1NywgOTI4NjAsIDkyODY0LCA5Mjg2NywgOTI4NzEsIAotICAgIDkyODc1LCA5Mjg3OSwgOTI4ODMsIDkyODg3LCA5Mjg5MSwgOTI4OTUsIDkyODk5LCA5MjkwMywgOTI5MDcsIDkyOTExLCAKLSAgICA5MjkxNSwgOTI5MTksIDkyOTIzLCA5MjkyNywgOTI5MzEsIDkyOTM1LCA5MjkzOSwgOTI5NDIsIDkyOTQ1LCA5Mjk0OSwgCi0gICAgOTI5NTMsIDkyOTU3LCA5Mjk2MCwgOTI5NjMsIDkyOTY2LCA5Mjk3MCwgOTI5NzQsIDkyOTc4LCA5Mjk4MiwgOTI5ODYsIAotICAgIDkyOTg5LCA5Mjk5MywgOTI5OTksIDkzMDA1LCA5MzAxMSwgOTMwMTYsIDkzMDIzLCA5MzAyNywgOTMwMzIsIDkzMDM2LCAKLSAgICA5MzA0MSwgOTMwNDYsIDkzMDUyLCA5MzA1NywgOTMwNjMsIDkzMDY3LCA5MzA3MiwgOTMwNzYsIDkzMDgxLCA5MzA4NCwgCi0gICAgOTMwODcsIDkzMDkxLCA5MzA5NiwgOTMxMDIsIDkzMTA3LCA5MzExMywgMCwgMCwgMCwgMCwgOTMxMTgsIDkzMTIxLCAKLSAgICA5MzEyNCwgOTMxMjcsIDkzMTMwLCA5MzEzMywgOTMxMzYsIDkzMTM5LCA5MzE0MiwgOTMxNDUsIDkzMTQ5LCA5MzE1MywgCi0gICAgOTMxNTcsIDkzMTYxLCA5MzE2NSwgOTMxNjksIDkzMTczLCA5MzE3NywgOTMxODEsIDkzMTg2LCA5MzE5MSwgOTMxOTUsIAotICAgIDkzMTk4LCA5MzIwMSwgOTMyMDQsIDkzMjA3LCA5MzIxMCwgOTMyMTMsIDkzMjE2LCA5MzIxOSwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTMyMjIsIDkzMjI2LCA5MzIzMCwgOTMyMzQsIDkzMjM3LCA5MzI0MSwgCi0gICAgOTMyNDQsIDkzMjQ4LCA5MzI1MSwgOTMyNTUsIDkzMjU4LCA5MzI2MiwgOTMyNjUsIDkzMjY5LCA5MzI3MiwgOTMyNzYsIAotICAgIDkzMjgwLCA5MzI4NCwgOTMyODgsIDkzMjkyLCA5MzI5NiwgOTMzMDAsIDkzMzA0LCA5MzMwOCwgOTMzMTIsIDkzMzE2LCAKLSAgICA5MzMyMCwgOTMzMjQsIDkzMzI4LCA5MzMzMiwgOTMzMzYsIDkzMzQwLCA5MzM0NCwgOTMzNDgsIDkzMzUyLCA5MzM1NSwgCi0gICAgOTMzNTgsIDkzMzYyLCA5MzM2NiwgOTMzNzAsIDkzMzczLCA5MzM3NiwgOTMzNzksIDkzMzgzLCA5MzM4NywgOTMzOTEsIAotICAgIDkzMzk1LCA5MzM5OSwgOTM0MDIsIDkzNDA3LCA5MzQxMSwgOTM0MTYsIDkzNDIwLCA5MzQyNSwgOTM0MjksIDkzNDM0LCAKLSAgICA5MzQzOCwgOTM0NDMsIDkzNDQ3LCA5MzQ1MSwgOTM0NTUsIDkzNDU5LCA5MzQ2MiwgOTM0NjYsIDkzNDcxLCA5MzQ3NCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgOTI2MTYsIDkyNjIwLCA5MjYyNCwgCisgICAgOTI2MjgsIDkyNjMyLCA5MjYzNiwgOTI2NDAsIDkyNjQ0LCA5MjY0OCwgOTI2NTIsIDkyNjU3LCA5MjY2MiwgOTI2NjcsIAorICAgIDkyNjcyLCA5MjY3NywgOTI2ODIsIDkyNjg3LCA5MjY5MiwgOTI2OTcsIDkyNzAzLCA5MjcwOSwgOTI3MTUsIDkyNzIyLCAKKyAgICA5MjcyOSwgOTI3MzYsIDkyNzQzLCA5Mjc1MCwgOTI3NTcsIDkyNzY0LCA5Mjc3MSwgOTI3NzgsIDAsIDkyNzg1LCA5Mjc4OSwgCisgICAgOTI3OTMsIDkyNzk3LCA5MjgwMSwgOTI4MDUsIDkyODA4LCA5MjgxMiwgOTI4MTUsIDkyODE5LCA5MjgyMiwgOTI4MjYsIAorICAgIDkyODMwLCA5MjgzNSwgOTI4MzksIDkyODQ0LCA5Mjg0NywgOTI4NTEsIDkyODU0LCA5Mjg1OCwgOTI4NjEsIDkyODY1LCAKKyAgICA5Mjg2OSwgOTI4NzMsIDkyODc3LCA5Mjg4MSwgOTI4ODUsIDkyODg5LCA5Mjg5MywgOTI4OTcsIDkyOTAxLCA5MjkwNSwgCisgICAgOTI5MDksIDkyOTEzLCA5MjkxNywgOTI5MjEsIDkyOTI1LCA5MjkyOSwgOTI5MzMsIDkyOTM2LCA5MjkzOSwgOTI5NDMsIAorICAgIDkyOTQ3LCA5Mjk1MSwgOTI5NTQsIDkyOTU3LCA5Mjk2MCwgOTI5NjQsIDkyOTY4LCA5Mjk3MiwgOTI5NzYsIDkyOTgwLCAKKyAgICA5Mjk4MywgOTI5ODcsIDkyOTkzLCA5Mjk5OSwgOTMwMDUsIDkzMDEwLCA5MzAxNywgOTMwMjEsIDkzMDI2LCA5MzAzMCwgCisgICAgOTMwMzUsIDkzMDQwLCA5MzA0NiwgOTMwNTEsIDkzMDU3LCA5MzA2MSwgOTMwNjYsIDkzMDcwLCA5MzA3NSwgOTMwNzgsIAorICAgIDkzMDgxLCA5MzA4NSwgOTMwOTAsIDkzMDk2LCA5MzEwMSwgOTMxMDcsIDAsIDAsIDAsIDAsIDkzMTEyLCA5MzExNSwgCisgICAgOTMxMTgsIDkzMTIxLCA5MzEyNCwgOTMxMjcsIDkzMTMwLCA5MzEzMywgOTMxMzYsIDkzMTM5LCA5MzE0MywgOTMxNDcsIAorICAgIDkzMTUxLCA5MzE1NSwgOTMxNTksIDkzMTYzLCA5MzE2NywgOTMxNzEsIDkzMTc1LCA5MzE4MCwgOTMxODUsIDkzMTg5LCAKKyAgICA5MzE5MiwgOTMxOTUsIDkzMTk4LCA5MzIwMSwgOTMyMDQsIDkzMjA3LCA5MzIxMCwgOTMyMTMsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkzMjE2LCA5MzIyMSwgOTMyMjYsIDkzMjMxLCA5MzIzNSwgOTMyNDAsIAorICAgIDkzMjQ0LCA5MzI0OSwgOTMyNTMsIDkzMjU4LCA5MzI2MiwgOTMyNjcsIDkzMjcxLCA5MzI3NiwgOTMyODAsIDkzMjg1LCAKKyAgICA5MzI5MCwgOTMyOTUsIDkzMzAwLCA5MzMwNSwgOTMzMTAsIDkzMzE1LCA5MzMyMCwgOTMzMjUsIDkzMzMwLCA5MzMzNSwgCisgICAgOTMzNDAsIDkzMzQ1LCA5MzM1MCwgOTMzNTUsIDkzMzYwLCA5MzM2NSwgOTMzNzAsIDkzMzc1LCA5MzM4MCwgOTMzODQsIAorICAgIDkzMzg4LCA5MzM5MywgOTMzOTgsIDkzNDAzLCA5MzQwNywgOTM0MTEsIDkzNDE1LCA5MzQyMCwgOTM0MjUsIDkzNDMwLCAKKyAgICA5MzQzNSwgOTM0NDAsIDkzNDQ0LCA5MzQ1MCwgOTM0NTUsIDkzNDYxLCA5MzQ2NiwgOTM0NzIsIDkzNDc3LCA5MzQ4MywgCisgICAgOTM0ODgsIDkzNDk0LCA5MzQ5OSwgOTM1MDQsIDkzNTA5LCA5MzUxNCwgOTM1MTgsIDkzNTIzLCA5MzUyOSwgOTM1MzMsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkzNDc4LCA5MzQ4MSwgOTM0ODYsIDkzNDkyLCA5MzUwMCwgCi0gICAgOTM1MDUsIDkzNTExLCA5MzUxOSwgOTM1MjUsIDkzNTMxLCA5MzUzNSwgOTM1MzksIDkzNTQ2LCA5MzU1NSwgOTM1NjIsIAotICAgIDkzNTcxLCA5MzU3NywgOTM1ODYsIDkzNTkzLCA5MzYwMCwgOTM2MDcsIDkzNjE3LCA5MzYyMywgOTM2MjcsIDkzNjM0LCAKLSAgICA5MzY0MywgOTM2NTMsIDkzNjYwLCA5MzY2NywgOTM2NzEsIDkzNjc1LCA5MzY4MiwgOTM2OTIsIDkzNjk2LCA5MzcwMywgCi0gICAgOTM3MTAsIDkzNzE3LCA5MzcyMywgOTM3MzAsIDkzNzM3LCA5Mzc0NCwgOTM3NTEsIDkzNzU1LCA5Mzc1OSwgOTM3NjMsIAotICAgIDkzNzcwLCA5Mzc3NCwgOTM3ODEsIDkzNzg4LCA5MzgwMiwgOTM4MTEsIDkzODE1LCA5MzgxOSwgOTM4MjMsIDkzODMwLCAKLSAgICA5MzgzNCwgOTM4MzgsIDkzODQyLCA5Mzg1MCwgOTM4NTgsIDkzODc3LCA5Mzg4NywgOTM5MDcsIDkzOTExLCA5MzkxNSwgCi0gICAgOTM5MTksIDkzOTIzLCA5MzkyNywgOTM5MzEsIDkzOTM1LCA5Mzk0MiwgOTM5NDYsIDkzOTQ5LCA5Mzk1MywgOTM5NTcsIAotICAgIDkzOTYzLCA5Mzk3MCwgOTM5NzksIDkzOTgzLCA5Mzk5MiwgOTQwMDEsIDk0MDA5LCA5NDAxMywgOTQwMjAsIDk0MDI0LCAKLSAgICA5NDAyOCwgOTQwMzIsIDk0MDM2LCA5NDA0NywgOTQwNTYsIDk0MDY1LCA5NDA3NCwgOTQwODMsIDk0MDk1LCA5NDEwNCwgCi0gICAgOTQxMTMsIDk0MTIyLCA5NDEzMCwgOTQxMzksIDk0MTUxLCA5NDE2MCwgOTQxNjksIDk0MTc4LCA5NDE5MCwgOTQxOTksIAotICAgIDk0MjA4LCA5NDIyMCwgOTQyMjksIDk0MjM4LCA5NDI1MCwgOTQyNTksIDk0MjYzLCA5NDI2NywgOTQyNzEsIDk0Mjc1LCAKLSAgICA5NDI3OSwgOTQyODMsIDk0Mjg3LCA5NDI5NCwgOTQyOTgsIDk0MzAyLCA5NDMxMywgOTQzMTcsIDk0MzIxLCA5NDMyOCwgCi0gICAgOTQzMzQsIDk0MzQwLCA5NDM0NCwgOTQzNTEsIDk0MzU1LCA5NDM1OSwgOTQzNjMsIDk0MzY3LCA5NDM3MSwgOTQzNzUsIAotICAgIDk0MzgxLCA5NDM4OSwgOTQzOTMsIDk0Mzk3LCA5NDQwMCwgOTQ0MDYsIDk0NDE2LCA5NDQyMCwgOTQ0MzIsIDk0NDM5LCAKLSAgICA5NDQ0NiwgOTQ0NTMsIDk0NDYwLCA5NDQ2NiwgOTQ0NzAsIDk0NDc0LCA5NDQ3OCwgOTQ0ODIsIDk0NDg5LCA5NDQ5OCwgCi0gICAgOTQ1MDUsIDk0NTEzLCA5NDUyMSwgOTQ1MjcsIDk0NTMxLCA5NDUzNSwgOTQ1MzksIDk0NTQzLCA5NDU0OSwgOTQ1NTgsIAotICAgIDk0NTcwLCA5NDU3NywgOTQ1ODQsIDk0NTkzLCA5NDYwNCwgOTQ2MTAsIDk0NjE5LCA5NDYyOCwgOTQ2MzUsIDk0NjQ0LCAKLSAgICA5NDY1MSwgOTQ2NTgsIDk0NjY4LCA5NDY3NSwgOTQ2ODIsIDk0Njg5LCA5NDY5NiwgOTQ3MDAsIDk0NzA2LCA5NDcxMCwgCi0gICAgOTQ3MjEsIDk0NzI5LCA5NDczOCwgOTQ3NTAsIDk0NzU3LCA5NDc2NCwgOTQ3NzQsIDk0NzgxLCA5NDc5MCwgOTQ3OTcsIAotICAgIDk0ODA2LCA5NDgxMywgOTQ4MjAsIDk0ODMwLCA5NDgzNywgOTQ4NDQsIDk0ODU0LCA5NDg2MSwgOTQ4NzMsIDk0ODgyLCAKLSAgICA5NDg4OSwgOTQ4OTYsIDk0OTAzLCA5NDkxMiwgOTQ5MjIsIDk0OTM1LCA5NDk0MiwgOTQ5NTIsIDk0OTYyLCA5NDk2OSwgCi0gICAgOTQ5NzgsIDk0OTkxLCA5NDk5OCwgOTUwMDUsIDk1MDEyLCA5NTAyMiwgOTUwMzIsIDk1MDM5LCA5NTA0OSwgOTUwNTYsIAotICAgIDk1MDYzLCA5NTA3MywgOTUwNzksIDk1MDg2LCA5NTA5MywgOTUxMDAsIDk1MTEwLCA5NTExNywgOTUxMjQsIDk1MTMxLCAKLSAgICA5NTEzNywgOTUxNDQsIDk1MTU0LCA5NTE2MSwgOTUxNjUsIDk1MTczLCA5NTE3NywgOTUxODksIDk1MTkzLCA5NTIwNywgCi0gICAgOTUyMTEsIDk1MjE1LCA5NTIxOSwgOTUyMjMsIDk1MjI5LCA5NTIzNiwgOTUyNDQsIDk1MjQ4LCA5NTI1MiwgOTUyNTYsIAotICAgIDk1MjYwLCA5NTI2NywgOTUyNzEsIDk1Mjc3LCA5NTI4MywgOTUyOTEsIDk1Mjk1LCA5NTMwMiwgOTUzMTAsIDk1MzE0LCAKLSAgICA5NTMxOCwgOTUzMjQsIDk1MzI4LCA5NTMzNywgOTUzNDYsIDk1MzUzLCA5NTM2MywgOTUzNjksIDk1MzczLCA5NTM3NywgCi0gICAgOTUzODUsIDk1MzkyLCA5NTM5OSwgOTU0MDUsIDk1NDA5LCA5NTQxNywgOTU0MjEsIDk1NDI4LCA5NTQ0MCwgOTU0NDcsIAotICAgIDk1NDU3LCA5NTQ2MywgOTU0NjcsIDk1NDc2LCA5NTQ4MywgOTU0OTIsIDk1NDk2LCA5NTUwMCwgOTU1MDcsIDk1NTExLCAKLSAgICA5NTUxNSwgOTU1MTksIDk1NTIzLCA5NTUyNiwgOTU1MzIsIDk1NTM4LCA5NTU0MiwgOTU1NDYsIDk1NTUzLCA5NTU2MCwgCi0gICAgOTU1NjcsIDk1NTc0LCA5NTU4MSwgOTU1ODgsIDk1NTk1LCA5NTYwMiwgOTU2MDgsIDk1NjEyLCA5NTYxNiwgOTU2MjMsIAotICAgIDk1NjMwLCA5NTYzNywgOTU2NDQsIDk1NjUxLCA5NTY1NSwgOTU2NTgsIDk1NjYzLCA5NTY2NywgOTU2NzEsIDk1NjgwLCAKLSAgICA5NTY4OSwgOTU2OTMsIDk1Njk3LCA5NTcwMywgOTU3MDksIDk1NzI2LCA5NTczMiwgOTU3MzYsIDk1NzQ1LCA5NTc0OSwgCi0gICAgOTU3NTMsIDk1NzYwLCA5NTc2OCwgOTU3NzYsIDk1NzgyLCA5NTc4NiwgOTU3OTAsIDk1Nzk0LCA5NTc5OCwgOTU4MDEsIAotICAgIDk1ODA3LCA5NTgxNCwgOTU4MjQsIDk1ODMxLCA5NTgzOCwgOTU4NDUsIDk1ODUxLCA5NTg1OCwgOTU4NjUsIDk1ODcyLCAKLSAgICA5NTg3OSwgOTU4ODYsIDk1ODk1LCA5NTkwMiwgOTU5MTQsIDk1OTIxLCA5NTkyOCwgOTU5MzgsIDk1OTQ5LCA5NTk1NiwgCi0gICAgOTU5NjMsIDk1OTcwLCA5NTk3NywgOTU5ODQsIDk1OTkxLCA5NTk5OCwgOTYwMDUsIDk2MDEyLCA5NjAxOSwgOTYwMjksIAotICAgIDk2MDM5LCA5NjA0OSwgOTYwNTYsIDk2MDY2LCA5NjA3MywgOTYwODAsIDk2MDg3LCA5NjA5NCwgOTYxMDEsIDk2MTA4LCAKLSAgICA5NjExNSwgOTYxMjIsIDk2MTI5LCA5NjEzNiwgOTYxNDMsIDk2MTUwLCA5NjE1NywgOTYxNjMsIDk2MTcwLCA5NjE3NywgCi0gICAgOTYxODYsIDk2MTkzLCA5NjIwMCwgOTYyMDQsIDk2MjEyLCA5NjIxNiwgOTYyMjAsIDk2MjI0LCA5NjIyOCwgOTYyMzIsIAotICAgIDk2MjM5LCA5NjI0MywgOTYyNTIsIDk2MjU2LCA5NjI2MywgOTYyNzEsIDk2Mjc1LCA5NjI3OSwgOTYyODMsIDk2Mjk2LCAKLSAgICA5NjMxMiwgOTYzMTYsIDk2MzIwLCA5NjMyNywgOTYzMzMsIDk2MzQwLCA5NjM0NCwgOTYzNDgsIDk2MzUyLCA5NjM1NiwgCi0gICAgOTYzNjAsIDk2MzY3LCA5NjM3MSwgOTYzODksIDk2MzkzLCA5NjM5NywgOTY0MDQsIDk2NDA4LCA5NjQxMiwgOTY0MTgsIAotICAgIDk2NDIyLCA5NjQyNiwgOTY0MzQsIDk2NDM4LCA5NjQ0MiwgOTY0NDYsIDk2NDUwLCA5NjQ1NiwgOTY0NjcsIDk2NDc2LCAKLSAgICA5NjQ4NSwgOTY0OTIsIDk2NDk5LCA5NjUxMCwgOTY1MTcsIDk2NTI0LCA5NjUzMSwgOTY1MzgsIDk2NTQ1LCA5NjU1MiwgCi0gICAgOTY1NTksIDk2NTY5LCA5NjU3NSwgOTY1ODIsIDk2NTkyLCA5NjYwMSwgOTY2MDgsIDk2NjE3LCA5NjYyNywgOTY2MzQsIAotICAgIDk2NjQxLCA5NjY0OCwgOTY2NTUsIDk2NjY3LCA5NjY3NCwgOTY2ODEsIDk2Njg4LCA5NjY5NSwgOTY3MDIsIDk2NzEyLCAKLSAgICA5NjcxOSwgOTY3MjYsIDk2NzM2LCA5Njc0OSwgOTY3NjEsIDk2NzY4LCA5Njc3OCwgOTY3ODUsIDk2NzkyLCA5Njc5OSwgCi0gICAgOTY4MTMsIDk2ODE5LCA5NjgyNywgOTY4MzcsIDk2ODQ3LCA5Njg1NCwgOTY4NjEsIDk2ODY3LCA5Njg3MSwgOTY4NzgsIAotICAgIDk2ODg4LCA5Njg5NCwgOTY5MDcsIDk2OTExLCA5NjkxNSwgOTY5MjIsIDk2OTI2LCA5NjkzMywgOTY5NDMsIDk2OTQ3LCAKLSAgICA5Njk1MSwgOTY5NTUsIDk2OTU5LCA5Njk2MywgOTY5NzAsIDk2OTc0LCA5Njk4MSwgOTY5ODgsIDk2OTk1LCA5NzAwNCwgCi0gICAgOTcwMTMsIDk3MDIzLCA5NzAzMCwgOTcwMzcsIDk3MDQ0LCA5NzA1NCwgOTcwNjEsIDk3MDcxLCA5NzA3OCwgOTcwODgsIAotICAgIDk3MDk1LCA5NzEwMiwgOTcxMTIsIDk3MTIyLCA5NzEyOSwgOTcxMzUsIDk3MTQzLCA5NzE1MSwgOTcxNTcsIDk3MTYzLCAKLSAgICA5NzE2NywgOTcxNzEsIDk3MTc4LCA5NzE4NiwgOTcxOTIsIDk3MTk2LCA5NzIwMCwgOTcyMDQsIDk3MjExLCA5NzIyMywgCi0gICAgOTcyMjYsIDk3MjMzLCA5NzIzOSwgOTcyNDMsIDk3MjQ3LCA5NzI1MSwgOTcyNTUsIDk3MjU5LCA5NzI2MywgOTcyNjcsIAotICAgIDk3MjcxLCA5NzI3NSwgOTcyNzksIDk3Mjg2LCA5NzI5MCwgOTcyOTYsIDk3MzAwLCA5NzMwNCwgOTczMDgsIDk3MzE0LCAKLSAgICA5NzMyMSwgOTczMjgsIDk3MzM1LCA5NzM0NiwgOTczNTQsIDk3MzU4LCA5NzM2NCwgOTczNzMsIDk3MzgwLCA5NzM4NiwgCi0gICAgOTczODksIDk3MzkzLCA5NzM5NywgOTc0MDMsIDk3NDEyLCA5NzQyMCwgOTc0MjQsIDk3NDMwLCA5NzQzNCwgOTc0MzgsIAotICAgIDk3NDQyLCA5NzQ0OCwgOTc0NTUsIDk3NDYxLCA5NzQ2NSwgOTc0NzEsIDk3NDc1LCA5NzQ3OSwgOTc0ODgsIDk3NTAwLCAKLSAgICA5NzUwNCwgOTc1MTEsIDk3NTE4LCA5NzUyOCwgOTc1MzUsIDk3NTQ3LCA5NzU1NCwgOTc1NjEsIDk3NTY4LCA5NzU3OSwgCi0gICAgOTc1ODksIDk3NjAyLCA5NzYxMiwgOTc2MTksIDk3NjIzLCA5NzYyNywgOTc2MzEsIDk3NjM1LCA5NzY0NCwgOTc2NTMsIAotICAgIDk3NjYyLCA5NzY3OSwgOTc2ODgsIDk3Njk0LCA5NzcwMSwgOTc3MDksIDk3NzIyLCA5NzcyNiwgOTc3MzUsIDk3NzQ0LCAKLSAgICA5Nzc1MywgOTc3NjIsIDk3NzczLCA5Nzc4MiwgOTc3OTEsIDk3ODAwLCA5NzgwOSwgOTc4MTgsIDk3ODI3LCA5NzgzNywgCi0gICAgOTc4NDAsIDk3ODQ0LCA5Nzg0OCwgOTc4NTIsIDk3ODU2LCA5Nzg2MCwgOTc4NjYsIDk3ODczLCA5Nzg4MCwgOTc4ODcsIAotICAgIDk3ODkzLCA5Nzg5OSwgOTc5MDYsIDk3OTEyLCA5NzkxOSwgOTc5MjcsIDk3OTMxLCA5NzkzOCwgOTc5NDUsIDk3OTUyLCAKLSAgICA5Nzk2MCwgOTc5NjMsIDk3OTY3LCA5Nzk3MSwgOTc5NzUsIDk3OTc5LCA5Nzk4NSwgOTc5ODksIDk3OTk1LCA5ODAwMiwgCi0gICAgOTgwMDksIDk4MDE1LCA5ODAyMiwgOTgwMjksIDk4MDM2LCA5ODA0MywgOTgwNTAsIDk4MDU3LCA5ODA2NCwgOTgwNzEsIAotICAgIDk4MDc4LCA5ODA4NSwgOTgwOTIsIDk4MDk5LCA5ODEwNiwgOTgxMTMsIDk4MTE5LCA5ODEyMywgOTgxMzIsIDk4MTM2LCAKLSAgICA5ODE0MCwgOTgxNDQsIDk4MTQ4LCA5ODE1NCwgOTgxNjEsIDk4MTY4LCA5ODE3NSwgOTgxODIsIDk4MTg5LCA5ODE5NSwgCi0gICAgOTgyMDMsIDk4MjA3LCA5ODIxMSwgOTgyMTUsIDk4MjE5LCA5ODIyNSwgOTgyNDIsIDk4MjU5LCA5ODI2MywgOTgyNjcsIAotICAgIDk4MjcxLCA5ODI3NSwgOTgyNzksIDk4MjgzLCA5ODI4OSwgOTgyOTYsIDk4MzAwLCA5ODMwNiwgOTgzMTMsIDk4MzIwLCAKLSAgICA5ODMyNywgOTgzMzQsIDk4MzQxLCA5ODM1MCwgOTgzNTcsIDk4MzY0LCA5ODM3MSwgOTgzNzgsIDk4MzgyLCA5ODM4NiwgCi0gICAgOTgzOTIsIDk4NDA0LCA5ODQwOCwgOTg0MTIsIDk4NDIxLCA5ODQyNSwgOTg0MjksIDk4NDMzLCA5ODQzOSwgOTg0NDMsIAotICAgIDk4NDQ3LCA5ODQ1NiwgOTg0NjAsIDk4NDY0LCA5ODQ2OCwgOTg0NzUsIDk4NDc5LCA5ODQ4MywgOTg0ODcsIDk4NDkxLCAKLSAgICA5ODQ5NSwgOTg0OTksIDk4NTAzLCA5ODUwNywgOTg1MTMsIDk4NTIwLCA5ODUyNywgOTg1MzMsIDk4NTM3LCA5ODU1NCwgCi0gICAgOTg1NjAsIDk4NTY0LCA5ODU3MCwgOTg1NzYsIDk4NTgyLCA5ODU4OCwgOTg1OTQsIDk4NjAwLCA5ODYwNCwgOTg2MDgsIAotICAgIDk4NjEyLCA5ODYxOCwgOTg2MjIsIDk4NjI4LCA5ODYzMiwgOTg2MzYsIDk4NjQzLCA5ODY1MCwgOTg2NjcsIDk4NjcxLCAKLSAgICA5ODY3NSwgOTg2NzksIDk4NjgzLCA5ODY4NywgOTg2OTksIDk4NzAyLCA5ODcwNywgOTg3MTIsIDk4NzI3LCA5ODczNywgCi0gICAgOTg3NDksIDk4NzUzLCA5ODc1NywgOTg3NjEsIDk4NzY3LCA5ODc3NCwgOTg3ODEsIDk4NzkxLCA5ODgwMywgOTg4MDksIAotICAgIDk4ODE1LCA5ODgyNCwgOTg4MjgsIDk4ODMyLCA5ODgzOSwgOTg4NDksIDk4ODU2LCA5ODg2MiwgOTg4NjYsIDk4ODcwLCAKLSAgICA5ODg3NywgOTg4ODMsIDk4ODg3LCA5ODg5MywgOTg4OTcsIDk4OTA1LCA5ODkxMSwgOTg5MTUsIDk4OTIzLCA5ODkzMSwgCi0gICAgOTg5MzgsIDk4OTQ0LCA5ODk1MSwgOTg5NTgsIDk4OTY4LCA5ODk3OCwgOTg5ODIsIDk4OTg2LCA5ODk5MCwgOTg5OTQsIAotICAgIDk5MDAwLCA5OTAwNywgOTkwMTMsIDk5MDIwLCA5OTAyNywgOTkwMzQsIDk5MDQzLCA5OTA1MCwgOTkwNTcsIDk5MDYzLCAKLSAgICA5OTA3MCwgOTkwNzcsIDk5MDg0LCA5OTA5MSwgOTkwOTgsIDk5MTA1LCA5OTExMSwgOTkxMTgsIDk5MTI1LCA5OTEzMiwgCi0gICAgOTkxNDEsIDk5MTQ4LCA5OTE1NSwgOTkxNTksIDk5MTY1LCA5OTE2OSwgOTkxNzUsIDk5MTgyLCA5OTE4OSwgOTkxOTYsIAotICAgIDk5MjAwLCA5OTIwNCwgOTkyMDgsIDk5MjEyLCA5OTIxNiwgOTkyMjMsIDk5MjI3LCA5OTIzMSwgOTkyMzcsIDk5MjQ1LCAKLSAgICA5OTI0OSwgOTkyNTMsIDk5MjU3LCA5OTI2MSwgOTkyNjgsIDk5MjcyLCA5OTI3NiwgOTkyODQsIDk5Mjg4LCA5OTI5MiwgCi0gICAgOTkyOTYsIDk5MzAwLCA5OTMwNiwgOTkzMTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDk5MzE0LCA5OTMyMCwgOTkzMjYsIDk5MzMzLCA5OTM0MCwgOTkzNDcsIDk5MzU0LCA5OTM2MSwgOTkzNjgsIAotICAgIDk5Mzc0LCA5OTM4MSwgOTkzODgsIDk5Mzk1LCA5OTQwMiwgOTk0MDksIDk5NDE2LCA5OTQyMiwgOTk0MjgsIDk5NDM0LCAKLSAgICA5OTQ0MCwgOTk0NDYsIDk5NDUyLCA5OTQ1OCwgOTk0NjQsIDk5NDcwLCA5OTQ3NywgOTk0ODQsIDk5NDkxLCA5OTQ5OCwgCi0gICAgOTk1MDUsIDk5NTEyLCA5OTUxOCwgOTk1MjQsIDk5NTMwLCA5OTUzNywgOTk1NDQsIDk5NTUwLCA5OTU1NiwgOTk1NjUsIAotICAgIDk5NTcyLCA5OTU3OSwgOTk1ODYsIDk5NTkzLCA5OTYwMCwgOTk2MDcsIDk5NjEzLCA5OTYxOSwgOTk2MjUsIDk5NjM0LCAKLSAgICA5OTY0MSwgOTk2NDgsIDk5NjU5LCA5OTY3MCwgOTk2NzYsIDk5NjgyLCA5OTY4OCwgOTk2OTcsIDk5NzA0LCA5OTcxMSwgCi0gICAgOTk3MjEsIDk5NzMxLCA5OTc0MiwgOTk3NTMsIDk5NzY1LCA5OTc3OCwgOTk3ODksIDk5ODAwLCA5OTgxMiwgOTk4MjUsIAotICAgIDk5ODM2LCA5OTg0NywgOTk4NTgsIDk5ODY5LCA5OTg4MCwgOTk4OTIsIDk5OTAwLCA5OTkwOCwgOTk5MTcsIDk5OTI2LCAKLSAgICA5OTkzNSwgOTk5NDEsIDk5OTQ3LCA5OTk1MywgOTk5NjAsIDk5OTcwLCA5OTk3NywgOTk5ODcsIDk5OTkyLCA5OTk5NywgCi0gICAgMTAwMDAzLCAxMDAwMDksIDEwMDAxNywgMTAwMDI1LCAxMDAwMzQsIDEwMDA0NSwgMTAwMDU2LCAxMDAwNjQsIDEwMDA3MiwgCi0gICAgMTAwMDgxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDAwOTAsIDEwMDEwMSwgMTAwMTA4LCAKLSAgICAxMDAxMTYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwMDEyNCwgMTAwMTI4LCAxMDAxMzIsIAotICAgIDEwMDEzNiwgMTAwMTQwLCAxMDAxNDQsIDEwMDE0OCwgMTAwMTUyLCAxMDAxNTYsIDEwMDE2MCwgMTAwMTY0LCAxMDAxNjgsIAotICAgIDEwMDE3MiwgMTAwMTc2LCAxMDAxODAsIDEwMDE4NCwgMTAwMTg4LCAxMDAxOTIsIDEwMDE5NiwgMTAwMjAwLCAxMDAyMDQsIAotICAgIDEwMDIwOCwgMTAwMjEyLCAxMDAyMTYsIDEwMDIyMCwgMTAwMjI0LCAxMDAyMjgsIDEwMDIzMiwgMTAwMjM2LCAxMDAyNDAsIAotICAgIDEwMDI0NCwgMTAwMjQ4LCAxMDAyNTIsIDEwMDI1NiwgMTAwMjYwLCAxMDAyNjQsIDEwMDI2OCwgMTAwMjcyLCAxMDAyNzYsIAotICAgIDEwMDI4MCwgMTAwMjg0LCAxMDAyODgsIDEwMDI5MiwgMTAwMjk2LCAxMDAzMDAsIDEwMDMwNCwgMTAwMzA4LCAxMDAzMTIsIAotICAgIDEwMDMxNiwgMTAwMzIwLCAxMDAzMjQsIDEwMDMyOCwgMTAwMzMyLCAxMDAzMzYsIDEwMDM0MCwgMTAwMzQ0LCAxMDAzNDgsIAotICAgIDEwMDM1MiwgMTAwMzU2LCAxMDAzNjAsIDEwMDM2NCwgMTAwMzY4LCAxMDAzNzIsIDEwMDM3NiwgMTAwMzgwLCAxMDAzODQsIAotICAgIDEwMDM4OCwgMTAwMzkyLCAxMDAzOTYsIDEwMDQwMCwgMTAwNDA0LCAxMDA0MDgsIDEwMDQxMiwgMTAwNDE2LCAxMDA0MjAsIAotICAgIDEwMDQyNCwgMTAwNDI4LCAxMDA0MzIsIDEwMDQzNiwgMTAwNDQwLCAxMDA0NDQsIDEwMDQ0OCwgMTAwNDUyLCAxMDA0NTYsIAotICAgIDEwMDQ2MCwgMTAwNDY0LCAxMDA0NjgsIDEwMDQ3MiwgMTAwNDc2LCAxMDA0ODAsIDEwMDQ4NCwgMTAwNDg4LCAxMDA0OTIsIAotICAgIDEwMDQ5NiwgMTAwNTAwLCAxMDA1MDQsIDEwMDUwOCwgMTAwNTEyLCAxMDA1MTYsIDEwMDUyMCwgMTAwNTI0LCAxMDA1MjgsIAotICAgIDEwMDUzMiwgMTAwNTM2LCAxMDA1NDAsIDEwMDU0NCwgMTAwNTQ4LCAxMDA1NTIsIDEwMDU1NiwgMTAwNTYwLCAxMDA1NjQsIAotICAgIDEwMDU2OCwgMTAwNTcyLCAxMDA1NzYsIDEwMDU4MCwgMTAwNTg0LCAxMDA1ODgsIDEwMDU5MiwgMTAwNTk2LCAxMDA2MDAsIAotICAgIDEwMDYwNCwgMTAwNjA4LCAxMDA2MTIsIDEwMDYxNiwgMTAwNjIwLCAxMDA2MjQsIDEwMDYyOCwgMTAwNjMyLCAxMDA2MzYsIAotICAgIDEwMDY0MCwgMTAwNjQ0LCAxMDA2NDgsIDEwMDY1MiwgMTAwNjU2LCAxMDA2NjAsIDEwMDY2NCwgMTAwNjY4LCAxMDA2NzIsIAotICAgIDEwMDY3NiwgMTAwNjgwLCAxMDA2ODQsIDEwMDY4OCwgMTAwNjkyLCAxMDA2OTYsIDEwMDcwMCwgMTAwNzA0LCAxMDA3MDgsIAotICAgIDEwMDcxMiwgMTAwNzE2LCAxMDA3MjAsIDEwMDcyNCwgMTAwNzI4LCAxMDA3MzIsIDEwMDczNiwgMTAwNzQwLCAxMDA3NDQsIAotICAgIDEwMDc0OCwgMTAwNzUyLCAxMDA3NTYsIDEwMDc2MCwgMTAwNzY0LCAxMDA3NjgsIDEwMDc3MiwgMTAwNzc2LCAxMDA3ODAsIAotICAgIDEwMDc4NCwgMTAwNzg4LCAxMDA3OTIsIDEwMDc5NiwgMTAwODAwLCAxMDA4MDQsIDEwMDgwOCwgMTAwODEyLCAxMDA4MTYsIAotICAgIDEwMDgyMCwgMTAwODI0LCAxMDA4MjgsIDEwMDgzMiwgMTAwODM2LCAxMDA4NDAsIDEwMDg0NCwgMTAwODQ4LCAxMDA4NTIsIAotICAgIDEwMDg1NiwgMTAwODYwLCAxMDA4NjQsIDEwMDg2OCwgMTAwODcyLCAxMDA4NzYsIDEwMDg4MCwgMTAwODg0LCAxMDA4ODgsIAotICAgIDEwMDg5MiwgMTAwODk2LCAxMDA5MDAsIDEwMDkwNCwgMTAwOTA4LCAxMDA5MTIsIDEwMDkxNiwgMTAwOTIwLCAxMDA5MjQsIAotICAgIDEwMDkyOCwgMTAwOTMyLCAxMDA5MzYsIDEwMDk0MCwgMTAwOTQ0LCAxMDA5NDgsIDEwMDk1MiwgMTAwOTU2LCAxMDA5NjAsIAotICAgIDEwMDk2NCwgMTAwOTY4LCAxMDA5NzIsIDEwMDk3NiwgMTAwOTgwLCAxMDA5ODQsIDEwMDk4OCwgMTAwOTkyLCAxMDA5OTYsIAotICAgIDEwMTAwMCwgMTAxMDA0LCAxMDEwMDgsIDEwMTAxMiwgMTAxMDE2LCAxMDEwMjAsIDEwMTAyNCwgMTAxMDI4LCAxMDEwMzIsIAotICAgIDEwMTAzNiwgMTAxMDQwLCAxMDEwNDQsIDEwMTA0OCwgMTAxMDUyLCAxMDEwNTYsIDEwMTA2MCwgMTAxMDY0LCAxMDEwNjgsIAotICAgIDEwMTA3MiwgMTAxMDc2LCAxMDEwODAsIDEwMTA4NCwgMTAxMDg4LCAxMDEwOTIsIDEwMTA5NiwgMTAxMTAwLCAxMDExMDQsIAotICAgIDEwMTEwOCwgMTAxMTEyLCAxMDExMTYsIDEwMTEyMCwgMTAxMTI0LCAxMDExMjgsIDEwMTEzMiwgMTAxMTM2LCAxMDExNDAsIAotICAgIDEwMTE0NCwgMTAxMTQ4LCAxMDExNTIsIDEwMTE1NiwgMTAxMTYwLCAxMDExNjQsIDEwMTE2OCwgMTAxMTcyLCAxMDExNzYsIAotICAgIDEwMTE4MCwgMTAxMTg0LCAxMDExODgsIDEwMTE5MiwgMTAxMTk2LCAxMDEyMDAsIDEwMTIwNCwgMTAxMjA4LCAxMDEyMTIsIAotICAgIDEwMTIxNiwgMTAxMjIwLCAxMDEyMjQsIDEwMTIyOCwgMTAxMjMyLCAxMDEyMzYsIDEwMTI0MCwgMTAxMjQ0LCAxMDEyNDgsIAotICAgIDEwMTI1MiwgMTAxMjU2LCAxMDEyNjAsIDEwMTI2NCwgMTAxMjY4LCAxMDEyNzIsIDEwMTI3NiwgMTAxMjgwLCAxMDEyODQsIAotICAgIDEwMTI4OCwgMTAxMjkyLCAxMDEyOTYsIDEwMTMwMCwgMTAxMzA0LCAxMDEzMDgsIDEwMTMxMiwgMTAxMzE2LCAxMDEzMjAsIAotICAgIDEwMTMyNCwgMTAxMzI4LCAxMDEzMzIsIDEwMTMzNiwgMTAxMzQwLCAxMDEzNDQsIDEwMTM0OCwgMTAxMzUyLCAxMDEzNTYsIAotICAgIDEwMTM2MCwgMTAxMzY0LCAxMDEzNjgsIDEwMTM3MiwgMTAxMzc2LCAxMDEzODAsIDEwMTM4NCwgMTAxMzg4LCAxMDEzOTIsIAotICAgIDEwMTM5NiwgMTAxNDAwLCAxMDE0MDQsIDEwMTQwOCwgMTAxNDEyLCAxMDE0MTYsIDEwMTQyMCwgMTAxNDI0LCAxMDE0MjgsIAotICAgIDEwMTQzMiwgMTAxNDM2LCAxMDE0NDAsIDEwMTQ0NCwgMTAxNDQ4LCAxMDE0NTIsIDEwMTQ1NiwgMTAxNDYwLCAxMDE0NjQsIAotICAgIDEwMTQ2OCwgMTAxNDcyLCAxMDE0NzYsIDEwMTQ4MCwgMTAxNDg0LCAxMDE0ODgsIDEwMTQ5MiwgMTAxNDk2LCAxMDE1MDAsIAotICAgIDEwMTUwNCwgMTAxNTA4LCAxMDE1MTIsIDEwMTUxNiwgMTAxNTIwLCAxMDE1MjQsIDEwMTUyOCwgMTAxNTMyLCAxMDE1MzYsIAotICAgIDEwMTU0MCwgMTAxNTQ0LCAxMDE1NDgsIDEwMTU1MiwgMTAxNTU2LCAxMDE1NjAsIDEwMTU2NCwgMTAxNTY4LCAxMDE1NzIsIAotICAgIDEwMTU3NiwgMTAxNTgwLCAxMDE1ODQsIDEwMTU4OCwgMTAxNTkyLCAxMDE1OTYsIDEwMTYwMCwgMTAxNjA0LCAxMDE2MDgsIAotICAgIDEwMTYxMiwgMTAxNjE2LCAxMDE2MjAsIDEwMTYyNCwgMTAxNjI4LCAxMDE2MzIsIDEwMTYzNiwgMTAxNjQwLCAxMDE2NDQsIAotICAgIDEwMTY0OCwgMTAxNjUyLCAxMDE2NTYsIDEwMTY2MCwgMTAxNjY0LCAxMDE2NjgsIDEwMTY3MiwgMTAxNjc2LCAxMDE2ODAsIAotICAgIDEwMTY4NCwgMTAxNjg4LCAxMDE2OTIsIDEwMTY5NiwgMTAxNzAwLCAxMDE3MDQsIDEwMTcwOCwgMTAxNzEyLCAxMDE3MTYsIAotICAgIDEwMTcyMCwgMTAxNzI0LCAxMDE3MjgsIDEwMTczMiwgMTAxNzM2LCAxMDE3NDAsIDEwMTc0NCwgMTAxNzQ4LCAxMDE3NTIsIAotICAgIDEwMTc1NiwgMTAxNzYwLCAxMDE3NjQsIDEwMTc2OCwgMTAxNzcyLCAxMDE3NzYsIDEwMTc4MCwgMTAxNzg0LCAxMDE3ODgsIAotICAgIDEwMTc5MiwgMTAxNzk2LCAxMDE4MDAsIDEwMTgwNCwgMTAxODA4LCAxMDE4MTIsIDEwMTgxNiwgMTAxODIwLCAxMDE4MjQsIAotICAgIDEwMTgyOCwgMTAxODMyLCAxMDE4MzYsIDEwMTg0MCwgMTAxODQ0LCAxMDE4NDgsIDEwMTg1MiwgMTAxODU2LCAxMDE4NjAsIAotICAgIDEwMTg2NCwgMTAxODY4LCAxMDE4NzIsIDEwMTg3NiwgMTAxODgwLCAxMDE4ODQsIDEwMTg4OCwgMTAxODkyLCAxMDE4OTYsIAotICAgIDEwMTkwMCwgMTAxOTA0LCAxMDE5MDgsIDEwMTkxMiwgMTAxOTE2LCAxMDE5MjAsIDEwMTkyNCwgMTAxOTI4LCAxMDE5MzIsIAotICAgIDEwMTkzNiwgMTAxOTQwLCAxMDE5NDQsIDEwMTk0OCwgMTAxOTUyLCAxMDE5NTYsIDEwMTk2MCwgMTAxOTY0LCAxMDE5NjgsIAotICAgIDEwMTk3MiwgMTAxOTc2LCAxMDE5ODAsIDEwMTk4NCwgMTAxOTg4LCAxMDE5OTIsIDEwMTk5NiwgMTAyMDAwLCAxMDIwMDQsIAotICAgIDEwMjAwOCwgMTAyMDEyLCAxMDIwMTYsIDEwMjAyMCwgMTAyMDI0LCAxMDIwMjgsIDEwMjAzMiwgMTAyMDM2LCAxMDIwNDAsIAotICAgIDEwMjA0NCwgMTAyMDQ4LCAxMDIwNTIsIDEwMjA1NiwgMTAyMDYwLCAxMDIwNjQsIDEwMjA2OCwgMTAyMDcyLCAxMDIwNzYsIAotICAgIDEwMjA4MCwgMTAyMDg0LCAxMDIwODgsIDEwMjA5MiwgMTAyMDk2LCAxMDIxMDAsIDEwMjEwNCwgMTAyMTA4LCAxMDIxMTIsIAotICAgIDEwMjExNiwgMTAyMTIwLCAxMDIxMjQsIDEwMjEyOCwgMTAyMTMyLCAxMDIxMzYsIDEwMjE0MCwgMTAyMTQ0LCAxMDIxNDgsIAotICAgIDEwMjE1MiwgMTAyMTU2LCAxMDIxNjAsIDEwMjE2NCwgMTAyMTY4LCAxMDIxNzIsIDEwMjE3NiwgMTAyMTgwLCAxMDIxODQsIAotICAgIDEwMjE4OCwgMTAyMTkyLCAxMDIxOTYsIDEwMjIwMCwgMTAyMjA0LCAxMDIyMDgsIDEwMjIxMiwgMTAyMjE2LCAxMDIyMjAsIAotICAgIDEwMjIyNCwgMTAyMjI4LCAxMDIyMzIsIDEwMjIzNiwgMTAyMjQwLCAxMDIyNDQsIDEwMjI0OCwgMTAyMjUyLCAxMDIyNTYsIAotICAgIDEwMjI2MCwgMTAyMjY0LCAxMDIyNjgsIDEwMjI3MiwgMTAyMjc2LCAxMDIyODAsIDEwMjI4NCwgMTAyMjg4LCAxMDIyOTIsIAotICAgIDEwMjI5NiwgMTAyMzAwLCAxMDIzMDQsIDEwMjMwOCwgMTAyMzEyLCAxMDIzMTYsIDEwMjMyMCwgMTAyMzI0LCAxMDIzMjgsIAotICAgIDEwMjMzMiwgMTAyMzM2LCAxMDIzNDAsIDEwMjM0NCwgMTAyMzQ4LCAxMDIzNTIsIDEwMjM1NiwgMTAyMzYwLCAxMDIzNjQsIAotICAgIDEwMjM2OCwgMTAyMzcyLCAxMDIzNzYsIDEwMjM4MCwgMTAyMzg0LCAxMDIzODgsIDEwMjM5MiwgMTAyMzk2LCAxMDI0MDAsIAotICAgIDEwMjQwNCwgMTAyNDA4LCAxMDI0MTIsIDEwMjQxNiwgMTAyNDIwLCAxMDI0MjQsIDEwMjQyOCwgMTAyNDMyLCAxMDI0MzYsIAotICAgIDEwMjQ0MCwgMTAyNDQ0LCAxMDI0NDgsIDEwMjQ1MiwgMTAyNDU2LCAxMDI0NjAsIDEwMjQ2NCwgMTAyNDY4LCAxMDI0NzIsIAotICAgIDEwMjQ3NiwgMTAyNDgwLCAxMDI0ODQsIDEwMjQ4OCwgMTAyNDkyLCAxMDI0OTYsIDEwMjUwMCwgMTAyNTA0LCAxMDI1MDgsIAotICAgIDEwMjUxMiwgMTAyNTE2LCAxMDI1MjAsIDEwMjUyNCwgMTAyNTI4LCAxMDI1MzIsIDEwMjUzNiwgMTAyNTQwLCAxMDI1NDQsIAotICAgIDEwMjU0OCwgMTAyNTUyLCAxMDI1NTYsIDEwMjU2MCwgMTAyNTY0LCAxMDI1NjgsIDEwMjU3MiwgMTAyNTc2LCAxMDI1ODAsIAotICAgIDEwMjU4NCwgMTAyNTg4LCAxMDI1OTIsIDEwMjU5NiwgMTAyNjAwLCAxMDI2MDQsIDEwMjYwOCwgMTAyNjEyLCAxMDI2MTYsIAotICAgIDEwMjYyMCwgMTAyNjI0LCAxMDI2MjgsIDEwMjYzMiwgMTAyNjM2LCAxMDI2NDAsIDEwMjY0NCwgMTAyNjQ4LCAxMDI2NTIsIAotICAgIDEwMjY1NiwgMTAyNjYwLCAxMDI2NjQsIDEwMjY2OCwgMTAyNjcyLCAxMDI2NzYsIDEwMjY4MCwgMTAyNjg0LCAxMDI2ODgsIAotICAgIDEwMjY5MiwgMTAyNjk2LCAxMDI3MDAsIDEwMjcwNCwgMTAyNzA4LCAxMDI3MTIsIDEwMjcxNiwgMTAyNzIwLCAxMDI3MjQsIAotICAgIDEwMjcyOCwgMTAyNzMyLCAxMDI3MzYsIDEwMjc0MCwgMTAyNzQ0LCAxMDI3NDgsIDEwMjc1MiwgMTAyNzU2LCAxMDI3NjAsIAotICAgIDEwMjc2NCwgMTAyNzY4LCAxMDI3NzIsIDEwMjc3NiwgMTAyNzgwLCAxMDI3ODQsIDEwMjc4OCwgMTAyNzkyLCAxMDI3OTYsIAotICAgIDEwMjgwMCwgMTAyODA0LCAxMDI4MDgsIDEwMjgxMiwgMTAyODE2LCAxMDI4MjAsIDEwMjgyNCwgMTAyODI4LCAxMDI4MzIsIAotICAgIDEwMjgzNiwgMTAyODQwLCAxMDI4NDQsIDEwMjg0OCwgMTAyODUyLCAxMDI4NTYsIDEwMjg2MCwgMTAyODY0LCAxMDI4NjgsIAotICAgIDEwMjg3MiwgMTAyODc2LCAxMDI4ODAsIDEwMjg4NCwgMTAyODg4LCAxMDI4OTIsIDEwMjg5NiwgMTAyOTAwLCAxMDI5MDQsIAotICAgIDEwMjkwOCwgMTAyOTEyLCAxMDI5MTYsIDEwMjkyMCwgMTAyOTI0LCAxMDI5MjgsIDEwMjkzMiwgMTAyOTM2LCAxMDI5NDAsIAotICAgIDEwMjk0NCwgMTAyOTQ4LCAxMDI5NTIsIDEwMjk1NiwgMTAyOTYwLCAxMDI5NjQsIDEwMjk2OCwgMTAyOTcyLCAxMDI5NzYsIAotICAgIDEwMjk4MCwgMTAyOTg0LCAxMDI5ODgsIDEwMjk5MiwgMTAyOTk2LCAxMDMwMDAsIDEwMzAwNCwgMTAzMDA4LCAxMDMwMTIsIAotICAgIDEwMzAxNiwgMTAzMDIwLCAxMDMwMjQsIDEwMzAyOCwgMTAzMDMyLCAxMDMwMzYsIDEwMzA0MCwgMTAzMDQ0LCAxMDMwNDgsIAotICAgIDEwMzA1MiwgMTAzMDU2LCAxMDMwNjAsIDEwMzA2NCwgMTAzMDY4LCAxMDMwNzIsIDEwMzA3NiwgMTAzMDgwLCAxMDMwODQsIAotICAgIDEwMzA4OCwgMTAzMDkyLCAxMDMwOTYsIDEwMzEwMCwgMTAzMTA0LCAxMDMxMDgsIDEwMzExMiwgMTAzMTE2LCAxMDMxMjAsIAotICAgIDEwMzEyNCwgMTAzMTI4LCAxMDMxMzIsIDEwMzEzNiwgMTAzMTQwLCAxMDMxNDQsIDEwMzE0OCwgMTAzMTUyLCAxMDMxNTYsIAotICAgIDEwMzE2MCwgMTAzMTY0LCAxMDMxNjgsIDEwMzE3MiwgMTAzMTc2LCAxMDMxODAsIDEwMzE4NCwgMTAzMTg4LCAxMDMxOTIsIAotICAgIDEwMzE5NiwgMTAzMjAwLCAxMDMyMDQsIDEwMzIwOCwgMTAzMjEyLCAxMDMyMTYsIDEwMzIyMCwgMTAzMjI0LCAxMDMyMjgsIAotICAgIDEwMzIzMiwgMTAzMjM2LCAxMDMyNDAsIDEwMzI0NCwgMTAzMjQ4LCAxMDMyNTIsIDEwMzI1NiwgMTAzMjYwLCAxMDMyNjQsIAotICAgIDEwMzI2OCwgMTAzMjcyLCAxMDMyNzYsIDEwMzI4MCwgMTAzMjg0LCAxMDMyODgsIDEwMzI5MiwgMTAzMjk2LCAxMDMzMDAsIAotICAgIDEwMzMwNCwgMTAzMzA4LCAxMDMzMTIsIDEwMzMxNiwgMTAzMzIwLCAxMDMzMjQsIDEwMzMyOCwgMTAzMzMyLCAxMDMzMzYsIAotICAgIDEwMzM0MCwgMTAzMzQ0LCAxMDMzNDgsIDEwMzM1MiwgMTAzMzU2LCAxMDMzNjAsIDEwMzM2NCwgMTAzMzY4LCAxMDMzNzIsIAotICAgIDEwMzM3NiwgMTAzMzgwLCAxMDMzODQsIDEwMzM4OCwgMTAzMzkyLCAxMDMzOTYsIDEwMzQwMCwgMTAzNDA0LCAxMDM0MDgsIAotICAgIDEwMzQxMiwgMTAzNDE2LCAxMDM0MjAsIDEwMzQyNCwgMTAzNDI4LCAxMDM0MzIsIDEwMzQzNiwgMTAzNDQwLCAxMDM0NDQsIAotICAgIDEwMzQ0OCwgMTAzNDUyLCAxMDM0NTYsIDEwMzQ2MCwgMTAzNDY0LCAxMDM0NjgsIDEwMzQ3MiwgMTAzNDc2LCAxMDM0ODAsIAotICAgIDEwMzQ4NCwgMTAzNDg4LCAxMDM0OTIsIDEwMzQ5NiwgMTAzNTAwLCAxMDM1MDQsIDEwMzUwOCwgMTAzNTEyLCAxMDM1MTYsIAotICAgIDEwMzUyMCwgMTAzNTI0LCAxMDM1MjgsIDEwMzUzMiwgMTAzNTM2LCAxMDM1NDAsIDEwMzU0NCwgMTAzNTQ4LCAxMDM1NTIsIAotICAgIDEwMzU1NiwgMTAzNTYwLCAxMDM1NjQsIDEwMzU2OCwgMTAzNTcyLCAxMDM1NzYsIDEwMzU4MCwgMTAzNTg0LCAxMDM1ODgsIAotICAgIDEwMzU5MiwgMTAzNTk2LCAxMDM2MDAsIDEwMzYwNCwgMTAzNjA4LCAxMDM2MTIsIDEwMzYxNiwgMTAzNjIwLCAxMDM2MjQsIAotICAgIDEwMzYyOCwgMTAzNjMyLCAxMDM2MzYsIDEwMzY0MCwgMTAzNjQ0LCAxMDM2NDgsIDEwMzY1MiwgMTAzNjU2LCAxMDM2NjAsIAotICAgIDEwMzY2NCwgMTAzNjY4LCAxMDM2NzIsIDEwMzY3NiwgMTAzNjgwLCAxMDM2ODQsIDEwMzY4OCwgMTAzNjkyLCAxMDM2OTYsIAotICAgIDEwMzcwMCwgMTAzNzA0LCAxMDM3MDgsIDEwMzcxMiwgMTAzNzE2LCAxMDM3MjAsIDEwMzcyNCwgMTAzNzI4LCAxMDM3MzIsIAotICAgIDEwMzczNiwgMTAzNzQwLCAxMDM3NDQsIDEwMzc0OCwgMTAzNzUyLCAxMDM3NTYsIDEwMzc2MCwgMTAzNzY0LCAxMDM3NjgsIAotICAgIDEwMzc3MiwgMTAzNzc2LCAxMDM3ODAsIDEwMzc4NCwgMTAzNzg4LCAxMDM3OTIsIDEwMzc5NiwgMTAzODAwLCAxMDM4MDQsIAotICAgIDEwMzgwOCwgMTAzODEyLCAxMDM4MTYsIDEwMzgyMCwgMTAzODI0LCAxMDM4MjgsIDEwMzgzMiwgMTAzODM2LCAxMDM4NDAsIAotICAgIDEwMzg0NCwgMTAzODQ4LCAxMDM4NTIsIDEwMzg1NiwgMTAzODYwLCAxMDM4NjQsIDEwMzg2OCwgMTAzODcyLCAxMDM4NzYsIAotICAgIDEwMzg4MCwgMTAzODg0LCAxMDM4ODgsIDEwMzg5MiwgMTAzODk2LCAxMDM5MDAsIDEwMzkwNCwgMTAzOTA4LCAxMDM5MTIsIAotICAgIDEwMzkxNiwgMTAzOTIwLCAxMDM5MjQsIDEwMzkyOCwgMTAzOTMyLCAxMDM5MzYsIDEwMzk0MCwgMTAzOTQ0LCAxMDM5NDgsIAotICAgIDEwMzk1MiwgMTAzOTU2LCAxMDM5NjAsIDEwMzk2NCwgMTAzOTY4LCAxMDM5NzIsIDEwMzk3NiwgMTAzOTgwLCAxMDM5ODQsIAotICAgIDEwMzk4OCwgMTAzOTkyLCAxMDM5OTYsIDEwNDAwMCwgMTA0MDA0LCAxMDQwMDgsIDEwNDAxMiwgMTA0MDE2LCAxMDQwMjAsIAotICAgIDEwNDAyNCwgMTA0MDI4LCAxMDQwMzIsIDEwNDAzNiwgMTA0MDQwLCAxMDQwNDQsIDEwNDA0OCwgMTA0MDUyLCAxMDQwNTYsIAotICAgIDEwNDA2MCwgMTA0MDY0LCAxMDQwNjgsIDEwNDA3MiwgMTA0MDc2LCAxMDQwODAsIDEwNDA4NCwgMTA0MDg4LCAxMDQwOTIsIAotICAgIDEwNDA5NiwgMTA0MTAwLCAxMDQxMDQsIDEwNDEwOCwgMTA0MTEyLCAxMDQxMTYsIDEwNDEyMCwgMTA0MTI0LCAxMDQxMjgsIAotICAgIDEwNDEzMiwgMTA0MTM2LCAxMDQxNDAsIDEwNDE0NCwgMTA0MTQ4LCAxMDQxNTIsIDEwNDE1NiwgMTA0MTYwLCAxMDQxNjQsIAotICAgIDEwNDE2OCwgMTA0MTcyLCAxMDQxNzYsIDEwNDE4MCwgMTA0MTg0LCAxMDQxODgsIDEwNDE5MiwgMTA0MTk2LCAxMDQyMDAsIAotICAgIDEwNDIwNCwgMTA0MjA4LCAxMDQyMTIsIDEwNDIxNiwgMTA0MjIwLCAxMDQyMjQsIDEwNDIyOCwgMTA0MjMyLCAxMDQyMzYsIAotICAgIDEwNDI0MCwgMTA0MjQ0LCAxMDQyNDgsIDEwNDI1MiwgMTA0MjU2LCAxMDQyNjAsIDEwNDI2NCwgMTA0MjY4LCAxMDQyNzIsIAotICAgIDEwNDI3NiwgMTA0MjgwLCAxMDQyODQsIDEwNDI4OCwgMTA0MjkyLCAxMDQyOTYsIDEwNDMwMCwgMTA0MzA0LCAxMDQzMDgsIAotICAgIDEwNDMxMiwgMTA0MzE2LCAxMDQzMjAsIDEwNDMyNCwgMTA0MzI4LCAxMDQzMzIsIDEwNDMzNiwgMTA0MzQwLCAxMDQzNDQsIAotICAgIDEwNDM0OCwgMTA0MzUyLCAxMDQzNTYsIDEwNDM2MCwgMTA0MzY0LCAxMDQzNjgsIDEwNDM3MiwgMTA0Mzc2LCAxMDQzODAsIAotICAgIDEwNDM4NCwgMTA0Mzg4LCAxMDQzOTIsIDEwNDM5NiwgMTA0NDAwLCAxMDQ0MDQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDkzNTM4LCA5MzU0MSwgOTM1NDYsIDkzNTUyLCA5MzU2MCwgCisgICAgOTM1NjUsIDkzNTcxLCA5MzU3OSwgOTM1ODUsIDkzNTkxLCA5MzU5NSwgOTM1OTksIDkzNjA2LCA5MzYxNSwgOTM2MjIsIAorICAgIDkzNjMxLCA5MzYzNywgOTM2NDYsIDkzNjUzLCA5MzY2MCwgOTM2NjcsIDkzNjc3LCA5MzY4MywgOTM2ODcsIDkzNjk0LCAKKyAgICA5MzcwMywgOTM3MTMsIDkzNzIwLCA5MzcyNywgOTM3MzEsIDkzNzM1LCA5Mzc0MiwgOTM3NTIsIDkzNzU2LCA5Mzc2MywgCisgICAgOTM3NzAsIDkzNzc3LCA5Mzc4MywgOTM3OTAsIDkzNzk3LCA5MzgwNCwgOTM4MTEsIDkzODE1LCA5MzgxOSwgOTM4MjMsIAorICAgIDkzODMwLCA5MzgzNCwgOTM4NDEsIDkzODQ4LCA5Mzg2MiwgOTM4NzEsIDkzODc1LCA5Mzg3OSwgOTM4ODMsIDkzODkwLCAKKyAgICA5Mzg5NCwgOTM4OTgsIDkzOTAyLCA5MzkxMCwgOTM5MTgsIDkzOTM3LCA5Mzk0NywgOTM5NjcsIDkzOTcxLCA5Mzk3NSwgCisgICAgOTM5NzksIDkzOTgzLCA5Mzk4NywgOTM5OTEsIDkzOTk1LCA5NDAwMiwgOTQwMDYsIDk0MDA5LCA5NDAxMywgOTQwMTcsIAorICAgIDk0MDIzLCA5NDAzMCwgOTQwMzksIDk0MDQzLCA5NDA1MiwgOTQwNjEsIDk0MDY5LCA5NDA3MywgOTQwODAsIDk0MDg0LCAKKyAgICA5NDA4OCwgOTQwOTIsIDk0MDk2LCA5NDEwNywgOTQxMTYsIDk0MTI1LCA5NDEzNCwgOTQxNDMsIDk0MTU1LCA5NDE2NCwgCisgICAgOTQxNzMsIDk0MTgyLCA5NDE5MCwgOTQxOTksIDk0MjExLCA5NDIyMCwgOTQyMjksIDk0MjM4LCA5NDI1MCwgOTQyNTksIAorICAgIDk0MjY4LCA5NDI4MCwgOTQyODksIDk0Mjk4LCA5NDMxMCwgOTQzMTksIDk0MzIzLCA5NDMyNywgOTQzMzEsIDk0MzM1LCAKKyAgICA5NDMzOSwgOTQzNDMsIDk0MzQ3LCA5NDM1NCwgOTQzNTgsIDk0MzYyLCA5NDM3MywgOTQzNzcsIDk0MzgxLCA5NDM4OCwgCisgICAgOTQzOTQsIDk0NDAwLCA5NDQwNCwgOTQ0MTEsIDk0NDE1LCA5NDQxOSwgOTQ0MjMsIDk0NDI3LCA5NDQzMSwgOTQ0MzUsIAorICAgIDk0NDQxLCA5NDQ0OSwgOTQ0NTMsIDk0NDU3LCA5NDQ2MCwgOTQ0NjYsIDk0NDc2LCA5NDQ4MCwgOTQ0OTIsIDk0NDk5LCAKKyAgICA5NDUwNiwgOTQ1MTMsIDk0NTIwLCA5NDUyNiwgOTQ1MzAsIDk0NTM0LCA5NDUzOCwgOTQ1NDIsIDk0NTQ5LCA5NDU1OCwgCisgICAgOTQ1NjUsIDk0NTczLCA5NDU4MSwgOTQ1ODcsIDk0NTkxLCA5NDU5NSwgOTQ1OTksIDk0NjAzLCA5NDYwOSwgOTQ2MTgsIAorICAgIDk0NjMwLCA5NDYzNywgOTQ2NDQsIDk0NjUzLCA5NDY2NCwgOTQ2NzAsIDk0Njc5LCA5NDY4OCwgOTQ2OTUsIDk0NzA0LCAKKyAgICA5NDcxMSwgOTQ3MTgsIDk0NzI4LCA5NDczNSwgOTQ3NDIsIDk0NzQ5LCA5NDc1NiwgOTQ3NjAsIDk0NzY2LCA5NDc3MCwgCisgICAgOTQ3ODEsIDk0Nzg5LCA5NDc5OCwgOTQ4MTAsIDk0ODE3LCA5NDgyNCwgOTQ4MzQsIDk0ODQxLCA5NDg1MCwgOTQ4NTcsIAorICAgIDk0ODY2LCA5NDg3MywgOTQ4ODAsIDk0ODkwLCA5NDg5NywgOTQ5MDQsIDk0OTE0LCA5NDkyMSwgOTQ5MzMsIDk0OTQyLCAKKyAgICA5NDk0OSwgOTQ5NTYsIDk0OTYzLCA5NDk3MiwgOTQ5ODIsIDk0OTk1LCA5NTAwMiwgOTUwMTIsIDk1MDIyLCA5NTAyOSwgCisgICAgOTUwMzgsIDk1MDUxLCA5NTA1OCwgOTUwNjUsIDk1MDcyLCA5NTA4MiwgOTUwOTIsIDk1MDk5LCA5NTEwOSwgOTUxMTYsIAorICAgIDk1MTIzLCA5NTEzMywgOTUxMzksIDk1MTQ2LCA5NTE1MywgOTUxNjAsIDk1MTcwLCA5NTE3NywgOTUxODQsIDk1MTkxLCAKKyAgICA5NTE5NywgOTUyMDQsIDk1MjE0LCA5NTIyMSwgOTUyMjUsIDk1MjMzLCA5NTIzNywgOTUyNDksIDk1MjUzLCA5NTI2NywgCisgICAgOTUyNzEsIDk1Mjc1LCA5NTI3OSwgOTUyODMsIDk1Mjg5LCA5NTI5NiwgOTUzMDQsIDk1MzA4LCA5NTMxMiwgOTUzMTYsIAorICAgIDk1MzIwLCA5NTMyNywgOTUzMzEsIDk1MzM3LCA5NTM0MywgOTUzNTEsIDk1MzU1LCA5NTM2MiwgOTUzNzAsIDk1Mzc0LCAKKyAgICA5NTM3OCwgOTUzODQsIDk1Mzg4LCA5NTM5NywgOTU0MDYsIDk1NDEzLCA5NTQyMywgOTU0MjksIDk1NDMzLCA5NTQzNywgCisgICAgOTU0NDUsIDk1NDUyLCA5NTQ1OSwgOTU0NjUsIDk1NDY5LCA5NTQ3NywgOTU0ODEsIDk1NDg4LCA5NTUwMCwgOTU1MDcsIAorICAgIDk1NTE3LCA5NTUyMywgOTU1MjcsIDk1NTM2LCA5NTU0MywgOTU1NTIsIDk1NTU2LCA5NTU2MCwgOTU1NjcsIDk1NTcxLCAKKyAgICA5NTU3NSwgOTU1NzksIDk1NTgzLCA5NTU4NiwgOTU1OTIsIDk1NTk4LCA5NTYwMiwgOTU2MDYsIDk1NjEzLCA5NTYyMCwgCisgICAgOTU2MjcsIDk1NjM0LCA5NTY0MSwgOTU2NDgsIDk1NjU1LCA5NTY2MiwgOTU2NjgsIDk1NjcyLCA5NTY3NiwgOTU2ODMsIAorICAgIDk1NjkwLCA5NTY5NywgOTU3MDQsIDk1NzExLCA5NTcxNSwgOTU3MTgsIDk1NzIzLCA5NTcyNywgOTU3MzEsIDk1NzQwLCAKKyAgICA5NTc0OSwgOTU3NTMsIDk1NzU3LCA5NTc2MywgOTU3NjksIDk1Nzg2LCA5NTc5MiwgOTU3OTYsIDk1ODA1LCA5NTgwOSwgCisgICAgOTU4MTMsIDk1ODIwLCA5NTgyOCwgOTU4MzYsIDk1ODQyLCA5NTg0NiwgOTU4NTAsIDk1ODU0LCA5NTg1OCwgOTU4NjEsIAorICAgIDk1ODY3LCA5NTg3NCwgOTU4ODQsIDk1ODkxLCA5NTg5OCwgOTU5MDUsIDk1OTExLCA5NTkxOCwgOTU5MjUsIDk1OTMyLCAKKyAgICA5NTkzOSwgOTU5NDYsIDk1OTU1LCA5NTk2MiwgOTU5NzQsIDk1OTgxLCA5NTk4OCwgOTU5OTgsIDk2MDA5LCA5NjAxNiwgCisgICAgOTYwMjMsIDk2MDMwLCA5NjAzNywgOTYwNDQsIDk2MDUxLCA5NjA1OCwgOTYwNjUsIDk2MDcyLCA5NjA3OSwgOTYwODksIAorICAgIDk2MDk5LCA5NjEwOSwgOTYxMTYsIDk2MTI2LCA5NjEzMywgOTYxNDAsIDk2MTQ3LCA5NjE1NCwgOTYxNjEsIDk2MTY4LCAKKyAgICA5NjE3NSwgOTYxODIsIDk2MTg5LCA5NjE5NiwgOTYyMDMsIDk2MjEwLCA5NjIxNywgOTYyMjMsIDk2MjMwLCA5NjIzNywgCisgICAgOTYyNDYsIDk2MjUzLCA5NjI2MCwgOTYyNjQsIDk2MjcyLCA5NjI3NiwgOTYyODAsIDk2Mjg0LCA5NjI4OCwgOTYyOTIsIAorICAgIDk2Mjk5LCA5NjMwMywgOTYzMTIsIDk2MzE2LCA5NjMyMywgOTYzMzEsIDk2MzM1LCA5NjMzOSwgOTYzNDMsIDk2MzU2LCAKKyAgICA5NjM3MiwgOTYzNzYsIDk2MzgwLCA5NjM4NywgOTYzOTMsIDk2NDAwLCA5NjQwNCwgOTY0MDgsIDk2NDEyLCA5NjQxNiwgCisgICAgOTY0MjAsIDk2NDI3LCA5NjQzMSwgOTY0NDksIDk2NDUzLCA5NjQ1NywgOTY0NjQsIDk2NDY4LCA5NjQ3MiwgOTY0NzgsIAorICAgIDk2NDgyLCA5NjQ4NiwgOTY0OTQsIDk2NDk4LCA5NjUwMiwgOTY1MDYsIDk2NTEwLCA5NjUxNiwgOTY1MjcsIDk2NTM2LCAKKyAgICA5NjU0NSwgOTY1NTIsIDk2NTU5LCA5NjU3MCwgOTY1NzcsIDk2NTg0LCA5NjU5MSwgOTY1OTgsIDk2NjA1LCA5NjYxMiwgCisgICAgOTY2MTksIDk2NjI5LCA5NjYzNSwgOTY2NDIsIDk2NjUyLCA5NjY2MSwgOTY2NjgsIDk2Njc3LCA5NjY4NywgOTY2OTQsIAorICAgIDk2NzAxLCA5NjcwOCwgOTY3MTUsIDk2NzI3LCA5NjczNCwgOTY3NDEsIDk2NzQ4LCA5Njc1NSwgOTY3NjIsIDk2NzcyLCAKKyAgICA5Njc3OSwgOTY3ODYsIDk2Nzk2LCA5NjgwOSwgOTY4MjEsIDk2ODI4LCA5NjgzOCwgOTY4NDUsIDk2ODUyLCA5Njg1OSwgCisgICAgOTY4NzMsIDk2ODc5LCA5Njg4NywgOTY4OTcsIDk2OTA3LCA5NjkxNCwgOTY5MjEsIDk2OTI3LCA5NjkzMSwgOTY5MzgsIAorICAgIDk2OTQ4LCA5Njk1NCwgOTY5NjcsIDk2OTcxLCA5Njk3NSwgOTY5ODIsIDk2OTg2LCA5Njk5MywgOTcwMDMsIDk3MDA3LCAKKyAgICA5NzAxMSwgOTcwMTUsIDk3MDE5LCA5NzAyMywgOTcwMzAsIDk3MDM0LCA5NzA0MSwgOTcwNDgsIDk3MDU1LCA5NzA2NCwgCisgICAgOTcwNzMsIDk3MDgzLCA5NzA5MCwgOTcwOTcsIDk3MTA0LCA5NzExNCwgOTcxMjEsIDk3MTMxLCA5NzEzOCwgOTcxNDgsIAorICAgIDk3MTU1LCA5NzE2MiwgOTcxNzIsIDk3MTgyLCA5NzE4OSwgOTcxOTUsIDk3MjAzLCA5NzIxMSwgOTcyMTcsIDk3MjIzLCAKKyAgICA5NzIyNywgOTcyMzEsIDk3MjM4LCA5NzI0NiwgOTcyNTIsIDk3MjU2LCA5NzI2MCwgOTcyNjQsIDk3MjcxLCA5NzI4MywgCisgICAgOTcyODYsIDk3MjkzLCA5NzI5OSwgOTczMDMsIDk3MzA3LCA5NzMxMSwgOTczMTUsIDk3MzE5LCA5NzMyMywgOTczMjcsIAorICAgIDk3MzMxLCA5NzMzNSwgOTczMzksIDk3MzQ2LCA5NzM1MCwgOTczNTYsIDk3MzYwLCA5NzM2NCwgOTczNjgsIDk3Mzc0LCAKKyAgICA5NzM4MSwgOTczODgsIDk3Mzk1LCA5NzQwNiwgOTc0MTQsIDk3NDE4LCA5NzQyNCwgOTc0MzMsIDk3NDQwLCA5NzQ0NiwgCisgICAgOTc0NDksIDk3NDUzLCA5NzQ1NywgOTc0NjMsIDk3NDcyLCA5NzQ4MCwgOTc0ODQsIDk3NDkwLCA5NzQ5NCwgOTc0OTgsIAorICAgIDk3NTAyLCA5NzUwOCwgOTc1MTUsIDk3NTIxLCA5NzUyNSwgOTc1MzEsIDk3NTM1LCA5NzUzOSwgOTc1NDgsIDk3NTYwLCAKKyAgICA5NzU2NCwgOTc1NzEsIDk3NTc4LCA5NzU4OCwgOTc1OTUsIDk3NjA3LCA5NzYxNCwgOTc2MjEsIDk3NjI4LCA5NzYzOSwgCisgICAgOTc2NDksIDk3NjYyLCA5NzY3MiwgOTc2NzksIDk3NjgzLCA5NzY4NywgOTc2OTEsIDk3Njk1LCA5NzcwNCwgOTc3MTMsIAorICAgIDk3NzIyLCA5NzczOSwgOTc3NDgsIDk3NzU0LCA5Nzc2MSwgOTc3NjksIDk3NzgyLCA5Nzc4NiwgOTc3OTUsIDk3ODA0LCAKKyAgICA5NzgxMywgOTc4MjIsIDk3ODMzLCA5Nzg0MiwgOTc4NTEsIDk3ODYwLCA5Nzg2OSwgOTc4NzgsIDk3ODg3LCA5Nzg5NywgCisgICAgOTc5MDAsIDk3OTA0LCA5NzkwOCwgOTc5MTIsIDk3OTE2LCA5NzkyMCwgOTc5MjYsIDk3OTMzLCA5Nzk0MCwgOTc5NDcsIAorICAgIDk3OTUzLCA5Nzk1OSwgOTc5NjYsIDk3OTcyLCA5Nzk3OSwgOTc5ODcsIDk3OTkxLCA5Nzk5OCwgOTgwMDUsIDk4MDEyLCAKKyAgICA5ODAyMCwgOTgwMjMsIDk4MDI3LCA5ODAzMSwgOTgwMzUsIDk4MDM5LCA5ODA0NSwgOTgwNDksIDk4MDU1LCA5ODA2MiwgCisgICAgOTgwNjksIDk4MDc1LCA5ODA4MiwgOTgwODksIDk4MDk2LCA5ODEwMywgOTgxMTAsIDk4MTE3LCA5ODEyNCwgOTgxMzEsIAorICAgIDk4MTM4LCA5ODE0NSwgOTgxNTIsIDk4MTU5LCA5ODE2NiwgOTgxNzMsIDk4MTc5LCA5ODE4MywgOTgxOTIsIDk4MTk2LCAKKyAgICA5ODIwMCwgOTgyMDQsIDk4MjA4LCA5ODIxNCwgOTgyMjEsIDk4MjI4LCA5ODIzNSwgOTgyNDIsIDk4MjQ5LCA5ODI1NSwgCisgICAgOTgyNjMsIDk4MjY3LCA5ODI3MSwgOTgyNzUsIDk4Mjc5LCA5ODI4NSwgOTgzMDIsIDk4MzE5LCA5ODMyMywgOTgzMjcsIAorICAgIDk4MzMxLCA5ODMzNSwgOTgzMzksIDk4MzQzLCA5ODM0OSwgOTgzNTYsIDk4MzYwLCA5ODM2NiwgOTgzNzMsIDk4MzgwLCAKKyAgICA5ODM4NywgOTgzOTQsIDk4NDAxLCA5ODQxMCwgOTg0MTcsIDk4NDI0LCA5ODQzMSwgOTg0MzgsIDk4NDQyLCA5ODQ0NiwgCisgICAgOTg0NTIsIDk4NDY0LCA5ODQ2OCwgOTg0NzIsIDk4NDgxLCA5ODQ4NSwgOTg0ODksIDk4NDkzLCA5ODQ5OSwgOTg1MDMsIAorICAgIDk4NTA3LCA5ODUxNiwgOTg1MjAsIDk4NTI0LCA5ODUyOCwgOTg1MzUsIDk4NTM5LCA5ODU0MywgOTg1NDcsIDk4NTUxLCAKKyAgICA5ODU1NSwgOTg1NTksIDk4NTYzLCA5ODU2NywgOTg1NzMsIDk4NTgwLCA5ODU4NywgOTg1OTMsIDk4NTk3LCA5ODYxNCwgCisgICAgOTg2MjAsIDk4NjI0LCA5ODYzMCwgOTg2MzYsIDk4NjQyLCA5ODY0OCwgOTg2NTQsIDk4NjYwLCA5ODY2NCwgOTg2NjgsIAorICAgIDk4NjcyLCA5ODY3OCwgOTg2ODIsIDk4Njg4LCA5ODY5MiwgOTg2OTYsIDk4NzAzLCA5ODcxMCwgOTg3MjcsIDk4NzMxLCAKKyAgICA5ODczNSwgOTg3MzksIDk4NzQzLCA5ODc0NywgOTg3NTksIDk4NzYyLCA5ODc2NywgOTg3NzIsIDk4Nzg3LCA5ODc5NywgCisgICAgOTg4MDksIDk4ODEzLCA5ODgxNywgOTg4MjEsIDk4ODI3LCA5ODgzNCwgOTg4NDEsIDk4ODUxLCA5ODg2MywgOTg4NjksIAorICAgIDk4ODc1LCA5ODg4NCwgOTg4ODgsIDk4ODkyLCA5ODg5OSwgOTg5MDksIDk4OTE2LCA5ODkyMiwgOTg5MjYsIDk4OTMwLCAKKyAgICA5ODkzNywgOTg5NDMsIDk4OTQ3LCA5ODk1MywgOTg5NTcsIDk4OTY1LCA5ODk3MSwgOTg5NzUsIDk4OTgzLCA5ODk5MSwgCisgICAgOTg5OTgsIDk5MDA0LCA5OTAxMSwgOTkwMTgsIDk5MDI4LCA5OTAzOCwgOTkwNDIsIDk5MDQ2LCA5OTA1MCwgOTkwNTQsIAorICAgIDk5MDYwLCA5OTA2NywgOTkwNzMsIDk5MDgwLCA5OTA4NywgOTkwOTQsIDk5MTAzLCA5OTExMCwgOTkxMTcsIDk5MTIzLCAKKyAgICA5OTEzMCwgOTkxMzcsIDk5MTQ0LCA5OTE1MSwgOTkxNTgsIDk5MTY1LCA5OTE3MSwgOTkxNzgsIDk5MTg1LCA5OTE5MiwgCisgICAgOTkyMDEsIDk5MjA4LCA5OTIxNSwgOTkyMTksIDk5MjI1LCA5OTIyOSwgOTkyMzUsIDk5MjQyLCA5OTI0OSwgOTkyNTYsIAorICAgIDk5MjYwLCA5OTI2NCwgOTkyNjgsIDk5MjcyLCA5OTI3NiwgOTkyODMsIDk5Mjg3LCA5OTI5MSwgOTkyOTcsIDk5MzA1LCAKKyAgICA5OTMwOSwgOTkzMTMsIDk5MzE3LCA5OTMyMSwgOTkzMjgsIDk5MzMyLCA5OTMzNiwgOTkzNDQsIDk5MzQ4LCA5OTM1MiwgCisgICAgOTkzNTYsIDk5MzYwLCA5OTM2NiwgOTkzNzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDk5Mzc0LCA5OTM4MCwgOTkzODYsIDk5MzkzLCA5OTQwMCwgOTk0MDcsIDk5NDE0LCA5OTQyMSwgOTk0MjgsIAorICAgIDk5NDM0LCA5OTQ0MSwgOTk0NDgsIDk5NDU1LCA5OTQ2MiwgOTk0NjksIDk5NDc2LCA5OTQ4MiwgOTk0ODgsIDk5NDk0LCAKKyAgICA5OTUwMCwgOTk1MDYsIDk5NTEyLCA5OTUxOCwgOTk1MjQsIDk5NTMwLCA5OTUzNywgOTk1NDQsIDk5NTUxLCA5OTU1OCwgCisgICAgOTk1NjUsIDk5NTcyLCA5OTU3OCwgOTk1ODQsIDk5NTkwLCA5OTU5NywgOTk2MDQsIDk5NjEwLCA5OTYxNiwgOTk2MjUsIAorICAgIDk5NjMyLCA5OTYzOSwgOTk2NDYsIDk5NjUzLCA5OTY2MCwgOTk2NjcsIDk5NjczLCA5OTY3OSwgOTk2ODUsIDk5Njk0LCAKKyAgICA5OTcwMSwgOTk3MDgsIDk5NzE5LCA5OTczMCwgOTk3MzYsIDk5NzQyLCA5OTc0OCwgOTk3NTcsIDk5NzY0LCA5OTc3MSwgCisgICAgOTk3ODEsIDk5NzkxLCA5OTgwMiwgOTk4MTMsIDk5ODI1LCA5OTgzOCwgOTk4NDksIDk5ODYwLCA5OTg3MiwgOTk4ODUsIAorICAgIDk5ODk2LCA5OTkwNywgOTk5MTgsIDk5OTI5LCA5OTk0MCwgOTk5NTIsIDk5OTYwLCA5OTk2OCwgOTk5NzcsIDk5OTg2LCAKKyAgICA5OTk5NSwgMTAwMDAxLCAxMDAwMDcsIDEwMDAxMywgMTAwMDIwLCAxMDAwMzAsIDEwMDAzNywgMTAwMDQ3LCAxMDAwNTIsIAorICAgIDEwMDA1NywgMTAwMDYzLCAxMDAwNjksIDEwMDA3NywgMTAwMDg1LCAxMDAwOTQsIDEwMDEwNSwgMTAwMTE2LCAxMDAxMjQsIAorICAgIDEwMDEzMiwgMTAwMTQxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDAxNTAsIDEwMDE2MSwgCisgICAgMTAwMTY4LCAxMDAxNzYsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwMDE4NCwgMTAwMTg4LCAKKyAgICAxMDAxOTIsIDEwMDE5NiwgMTAwMjAwLCAxMDAyMDQsIDEwMDIwOCwgMTAwMjEyLCAxMDAyMTYsIDEwMDIyMCwgMTAwMjI0LCAKKyAgICAxMDAyMjgsIDEwMDIzMiwgMTAwMjM2LCAxMDAyNDAsIDEwMDI0NCwgMTAwMjQ4LCAxMDAyNTIsIDEwMDI1NiwgMTAwMjYwLCAKKyAgICAxMDAyNjQsIDEwMDI2OCwgMTAwMjcyLCAxMDAyNzYsIDEwMDI4MCwgMTAwMjg0LCAxMDAyODgsIDEwMDI5MiwgMTAwMjk2LCAKKyAgICAxMDAzMDAsIDEwMDMwNCwgMTAwMzA4LCAxMDAzMTIsIDEwMDMxNiwgMTAwMzIwLCAxMDAzMjQsIDEwMDMyOCwgMTAwMzMyLCAKKyAgICAxMDAzMzYsIDEwMDM0MCwgMTAwMzQ0LCAxMDAzNDgsIDEwMDM1MiwgMTAwMzU2LCAxMDAzNjAsIDEwMDM2NCwgMTAwMzY4LCAKKyAgICAxMDAzNzIsIDEwMDM3NiwgMTAwMzgwLCAxMDAzODQsIDEwMDM4OCwgMTAwMzkyLCAxMDAzOTYsIDEwMDQwMCwgMTAwNDA0LCAKKyAgICAxMDA0MDgsIDEwMDQxMiwgMTAwNDE2LCAxMDA0MjAsIDEwMDQyNCwgMTAwNDI4LCAxMDA0MzIsIDEwMDQzNiwgMTAwNDQwLCAKKyAgICAxMDA0NDQsIDEwMDQ0OCwgMTAwNDUyLCAxMDA0NTYsIDEwMDQ2MCwgMTAwNDY0LCAxMDA0NjgsIDEwMDQ3MiwgMTAwNDc2LCAKKyAgICAxMDA0ODAsIDEwMDQ4NCwgMTAwNDg4LCAxMDA0OTIsIDEwMDQ5NiwgMTAwNTAwLCAxMDA1MDQsIDEwMDUwOCwgMTAwNTEyLCAKKyAgICAxMDA1MTYsIDEwMDUyMCwgMTAwNTI0LCAxMDA1MjgsIDEwMDUzMiwgMTAwNTM2LCAxMDA1NDAsIDEwMDU0NCwgMTAwNTQ4LCAKKyAgICAxMDA1NTIsIDEwMDU1NiwgMTAwNTYwLCAxMDA1NjQsIDEwMDU2OCwgMTAwNTcyLCAxMDA1NzYsIDEwMDU4MCwgMTAwNTg0LCAKKyAgICAxMDA1ODgsIDEwMDU5MiwgMTAwNTk2LCAxMDA2MDAsIDEwMDYwNCwgMTAwNjA4LCAxMDA2MTIsIDEwMDYxNiwgMTAwNjIwLCAKKyAgICAxMDA2MjQsIDEwMDYyOCwgMTAwNjMyLCAxMDA2MzYsIDEwMDY0MCwgMTAwNjQ0LCAxMDA2NDgsIDEwMDY1MiwgMTAwNjU2LCAKKyAgICAxMDA2NjAsIDEwMDY2NCwgMTAwNjY4LCAxMDA2NzIsIDEwMDY3NiwgMTAwNjgwLCAxMDA2ODQsIDEwMDY4OCwgMTAwNjkyLCAKKyAgICAxMDA2OTYsIDEwMDcwMCwgMTAwNzA0LCAxMDA3MDgsIDEwMDcxMiwgMTAwNzE2LCAxMDA3MjAsIDEwMDcyNCwgMTAwNzI4LCAKKyAgICAxMDA3MzIsIDEwMDczNiwgMTAwNzQwLCAxMDA3NDQsIDEwMDc0OCwgMTAwNzUyLCAxMDA3NTYsIDEwMDc2MCwgMTAwNzY0LCAKKyAgICAxMDA3NjgsIDEwMDc3MiwgMTAwNzc2LCAxMDA3ODAsIDEwMDc4NCwgMTAwNzg4LCAxMDA3OTIsIDEwMDc5NiwgMTAwODAwLCAKKyAgICAxMDA4MDQsIDEwMDgwOCwgMTAwODEyLCAxMDA4MTYsIDEwMDgyMCwgMTAwODI0LCAxMDA4MjgsIDEwMDgzMiwgMTAwODM2LCAKKyAgICAxMDA4NDAsIDEwMDg0NCwgMTAwODQ4LCAxMDA4NTIsIDEwMDg1NiwgMTAwODYwLCAxMDA4NjQsIDEwMDg2OCwgMTAwODcyLCAKKyAgICAxMDA4NzYsIDEwMDg4MCwgMTAwODg0LCAxMDA4ODgsIDEwMDg5MiwgMTAwODk2LCAxMDA5MDAsIDEwMDkwNCwgMTAwOTA4LCAKKyAgICAxMDA5MTIsIDEwMDkxNiwgMTAwOTIwLCAxMDA5MjQsIDEwMDkyOCwgMTAwOTMyLCAxMDA5MzYsIDEwMDk0MCwgMTAwOTQ0LCAKKyAgICAxMDA5NDgsIDEwMDk1MiwgMTAwOTU2LCAxMDA5NjAsIDEwMDk2NCwgMTAwOTY4LCAxMDA5NzIsIDEwMDk3NiwgMTAwOTgwLCAKKyAgICAxMDA5ODQsIDEwMDk4OCwgMTAwOTkyLCAxMDA5OTYsIDEwMTAwMCwgMTAxMDA0LCAxMDEwMDgsIDEwMTAxMiwgMTAxMDE2LCAKKyAgICAxMDEwMjAsIDEwMTAyNCwgMTAxMDI4LCAxMDEwMzIsIDEwMTAzNiwgMTAxMDQwLCAxMDEwNDQsIDEwMTA0OCwgMTAxMDUyLCAKKyAgICAxMDEwNTYsIDEwMTA2MCwgMTAxMDY0LCAxMDEwNjgsIDEwMTA3MiwgMTAxMDc2LCAxMDEwODAsIDEwMTA4NCwgMTAxMDg4LCAKKyAgICAxMDEwOTIsIDEwMTA5NiwgMTAxMTAwLCAxMDExMDQsIDEwMTEwOCwgMTAxMTEyLCAxMDExMTYsIDEwMTEyMCwgMTAxMTI0LCAKKyAgICAxMDExMjgsIDEwMTEzMiwgMTAxMTM2LCAxMDExNDAsIDEwMTE0NCwgMTAxMTQ4LCAxMDExNTIsIDEwMTE1NiwgMTAxMTYwLCAKKyAgICAxMDExNjQsIDEwMTE2OCwgMTAxMTcyLCAxMDExNzYsIDEwMTE4MCwgMTAxMTg0LCAxMDExODgsIDEwMTE5MiwgMTAxMTk2LCAKKyAgICAxMDEyMDAsIDEwMTIwNCwgMTAxMjA4LCAxMDEyMTIsIDEwMTIxNiwgMTAxMjIwLCAxMDEyMjQsIDEwMTIyOCwgMTAxMjMyLCAKKyAgICAxMDEyMzYsIDEwMTI0MCwgMTAxMjQ0LCAxMDEyNDgsIDEwMTI1MiwgMTAxMjU2LCAxMDEyNjAsIDEwMTI2NCwgMTAxMjY4LCAKKyAgICAxMDEyNzIsIDEwMTI3NiwgMTAxMjgwLCAxMDEyODQsIDEwMTI4OCwgMTAxMjkyLCAxMDEyOTYsIDEwMTMwMCwgMTAxMzA0LCAKKyAgICAxMDEzMDgsIDEwMTMxMiwgMTAxMzE2LCAxMDEzMjAsIDEwMTMyNCwgMTAxMzI4LCAxMDEzMzIsIDEwMTMzNiwgMTAxMzQwLCAKKyAgICAxMDEzNDQsIDEwMTM0OCwgMTAxMzUyLCAxMDEzNTYsIDEwMTM2MCwgMTAxMzY0LCAxMDEzNjgsIDEwMTM3MiwgMTAxMzc2LCAKKyAgICAxMDEzODAsIDEwMTM4NCwgMTAxMzg4LCAxMDEzOTIsIDEwMTM5NiwgMTAxNDAwLCAxMDE0MDQsIDEwMTQwOCwgMTAxNDEyLCAKKyAgICAxMDE0MTYsIDEwMTQyMCwgMTAxNDI0LCAxMDE0MjgsIDEwMTQzMiwgMTAxNDM2LCAxMDE0NDAsIDEwMTQ0NCwgMTAxNDQ4LCAKKyAgICAxMDE0NTIsIDEwMTQ1NiwgMTAxNDYwLCAxMDE0NjQsIDEwMTQ2OCwgMTAxNDcyLCAxMDE0NzYsIDEwMTQ4MCwgMTAxNDg0LCAKKyAgICAxMDE0ODgsIDEwMTQ5MiwgMTAxNDk2LCAxMDE1MDAsIDEwMTUwNCwgMTAxNTA4LCAxMDE1MTIsIDEwMTUxNiwgMTAxNTIwLCAKKyAgICAxMDE1MjQsIDEwMTUyOCwgMTAxNTMyLCAxMDE1MzYsIDEwMTU0MCwgMTAxNTQ0LCAxMDE1NDgsIDEwMTU1MiwgMTAxNTU2LCAKKyAgICAxMDE1NjAsIDEwMTU2NCwgMTAxNTY4LCAxMDE1NzIsIDEwMTU3NiwgMTAxNTgwLCAxMDE1ODQsIDEwMTU4OCwgMTAxNTkyLCAKKyAgICAxMDE1OTYsIDEwMTYwMCwgMTAxNjA0LCAxMDE2MDgsIDEwMTYxMiwgMTAxNjE2LCAxMDE2MjAsIDEwMTYyNCwgMTAxNjI4LCAKKyAgICAxMDE2MzIsIDEwMTYzNiwgMTAxNjQwLCAxMDE2NDQsIDEwMTY0OCwgMTAxNjUyLCAxMDE2NTYsIDEwMTY2MCwgMTAxNjY0LCAKKyAgICAxMDE2NjgsIDEwMTY3MiwgMTAxNjc2LCAxMDE2ODAsIDEwMTY4NCwgMTAxNjg4LCAxMDE2OTIsIDEwMTY5NiwgMTAxNzAwLCAKKyAgICAxMDE3MDQsIDEwMTcwOCwgMTAxNzEyLCAxMDE3MTYsIDEwMTcyMCwgMTAxNzI0LCAxMDE3MjgsIDEwMTczMiwgMTAxNzM2LCAKKyAgICAxMDE3NDAsIDEwMTc0NCwgMTAxNzQ4LCAxMDE3NTIsIDEwMTc1NiwgMTAxNzYwLCAxMDE3NjQsIDEwMTc2OCwgMTAxNzcyLCAKKyAgICAxMDE3NzYsIDEwMTc4MCwgMTAxNzg0LCAxMDE3ODgsIDEwMTc5MiwgMTAxNzk2LCAxMDE4MDAsIDEwMTgwNCwgMTAxODA4LCAKKyAgICAxMDE4MTIsIDEwMTgxNiwgMTAxODIwLCAxMDE4MjQsIDEwMTgyOCwgMTAxODMyLCAxMDE4MzYsIDEwMTg0MCwgMTAxODQ0LCAKKyAgICAxMDE4NDgsIDEwMTg1MiwgMTAxODU2LCAxMDE4NjAsIDEwMTg2NCwgMTAxODY4LCAxMDE4NzIsIDEwMTg3NiwgMTAxODgwLCAKKyAgICAxMDE4ODQsIDEwMTg4OCwgMTAxODkyLCAxMDE4OTYsIDEwMTkwMCwgMTAxOTA0LCAxMDE5MDgsIDEwMTkxMiwgMTAxOTE2LCAKKyAgICAxMDE5MjAsIDEwMTkyNCwgMTAxOTI4LCAxMDE5MzIsIDEwMTkzNiwgMTAxOTQwLCAxMDE5NDQsIDEwMTk0OCwgMTAxOTUyLCAKKyAgICAxMDE5NTYsIDEwMTk2MCwgMTAxOTY0LCAxMDE5NjgsIDEwMTk3MiwgMTAxOTc2LCAxMDE5ODAsIDEwMTk4NCwgMTAxOTg4LCAKKyAgICAxMDE5OTIsIDEwMTk5NiwgMTAyMDAwLCAxMDIwMDQsIDEwMjAwOCwgMTAyMDEyLCAxMDIwMTYsIDEwMjAyMCwgMTAyMDI0LCAKKyAgICAxMDIwMjgsIDEwMjAzMiwgMTAyMDM2LCAxMDIwNDAsIDEwMjA0NCwgMTAyMDQ4LCAxMDIwNTIsIDEwMjA1NiwgMTAyMDYwLCAKKyAgICAxMDIwNjQsIDEwMjA2OCwgMTAyMDcyLCAxMDIwNzYsIDEwMjA4MCwgMTAyMDg0LCAxMDIwODgsIDEwMjA5MiwgMTAyMDk2LCAKKyAgICAxMDIxMDAsIDEwMjEwNCwgMTAyMTA4LCAxMDIxMTIsIDEwMjExNiwgMTAyMTIwLCAxMDIxMjQsIDEwMjEyOCwgMTAyMTMyLCAKKyAgICAxMDIxMzYsIDEwMjE0MCwgMTAyMTQ0LCAxMDIxNDgsIDEwMjE1MiwgMTAyMTU2LCAxMDIxNjAsIDEwMjE2NCwgMTAyMTY4LCAKKyAgICAxMDIxNzIsIDEwMjE3NiwgMTAyMTgwLCAxMDIxODQsIDEwMjE4OCwgMTAyMTkyLCAxMDIxOTYsIDEwMjIwMCwgMTAyMjA0LCAKKyAgICAxMDIyMDgsIDEwMjIxMiwgMTAyMjE2LCAxMDIyMjAsIDEwMjIyNCwgMTAyMjI4LCAxMDIyMzIsIDEwMjIzNiwgMTAyMjQwLCAKKyAgICAxMDIyNDQsIDEwMjI0OCwgMTAyMjUyLCAxMDIyNTYsIDEwMjI2MCwgMTAyMjY0LCAxMDIyNjgsIDEwMjI3MiwgMTAyMjc2LCAKKyAgICAxMDIyODAsIDEwMjI4NCwgMTAyMjg4LCAxMDIyOTIsIDEwMjI5NiwgMTAyMzAwLCAxMDIzMDQsIDEwMjMwOCwgMTAyMzEyLCAKKyAgICAxMDIzMTYsIDEwMjMyMCwgMTAyMzI0LCAxMDIzMjgsIDEwMjMzMiwgMTAyMzM2LCAxMDIzNDAsIDEwMjM0NCwgMTAyMzQ4LCAKKyAgICAxMDIzNTIsIDEwMjM1NiwgMTAyMzYwLCAxMDIzNjQsIDEwMjM2OCwgMTAyMzcyLCAxMDIzNzYsIDEwMjM4MCwgMTAyMzg0LCAKKyAgICAxMDIzODgsIDEwMjM5MiwgMTAyMzk2LCAxMDI0MDAsIDEwMjQwNCwgMTAyNDA4LCAxMDI0MTIsIDEwMjQxNiwgMTAyNDIwLCAKKyAgICAxMDI0MjQsIDEwMjQyOCwgMTAyNDMyLCAxMDI0MzYsIDEwMjQ0MCwgMTAyNDQ0LCAxMDI0NDgsIDEwMjQ1MiwgMTAyNDU2LCAKKyAgICAxMDI0NjAsIDEwMjQ2NCwgMTAyNDY4LCAxMDI0NzIsIDEwMjQ3NiwgMTAyNDgwLCAxMDI0ODQsIDEwMjQ4OCwgMTAyNDkyLCAKKyAgICAxMDI0OTYsIDEwMjUwMCwgMTAyNTA0LCAxMDI1MDgsIDEwMjUxMiwgMTAyNTE2LCAxMDI1MjAsIDEwMjUyNCwgMTAyNTI4LCAKKyAgICAxMDI1MzIsIDEwMjUzNiwgMTAyNTQwLCAxMDI1NDQsIDEwMjU0OCwgMTAyNTUyLCAxMDI1NTYsIDEwMjU2MCwgMTAyNTY0LCAKKyAgICAxMDI1NjgsIDEwMjU3MiwgMTAyNTc2LCAxMDI1ODAsIDEwMjU4NCwgMTAyNTg4LCAxMDI1OTIsIDEwMjU5NiwgMTAyNjAwLCAKKyAgICAxMDI2MDQsIDEwMjYwOCwgMTAyNjEyLCAxMDI2MTYsIDEwMjYyMCwgMTAyNjI0LCAxMDI2MjgsIDEwMjYzMiwgMTAyNjM2LCAKKyAgICAxMDI2NDAsIDEwMjY0NCwgMTAyNjQ4LCAxMDI2NTIsIDEwMjY1NiwgMTAyNjYwLCAxMDI2NjQsIDEwMjY2OCwgMTAyNjcyLCAKKyAgICAxMDI2NzYsIDEwMjY4MCwgMTAyNjg0LCAxMDI2ODgsIDEwMjY5MiwgMTAyNjk2LCAxMDI3MDAsIDEwMjcwNCwgMTAyNzA4LCAKKyAgICAxMDI3MTIsIDEwMjcxNiwgMTAyNzIwLCAxMDI3MjQsIDEwMjcyOCwgMTAyNzMyLCAxMDI3MzYsIDEwMjc0MCwgMTAyNzQ0LCAKKyAgICAxMDI3NDgsIDEwMjc1MiwgMTAyNzU2LCAxMDI3NjAsIDEwMjc2NCwgMTAyNzY4LCAxMDI3NzIsIDEwMjc3NiwgMTAyNzgwLCAKKyAgICAxMDI3ODQsIDEwMjc4OCwgMTAyNzkyLCAxMDI3OTYsIDEwMjgwMCwgMTAyODA0LCAxMDI4MDgsIDEwMjgxMiwgMTAyODE2LCAKKyAgICAxMDI4MjAsIDEwMjgyNCwgMTAyODI4LCAxMDI4MzIsIDEwMjgzNiwgMTAyODQwLCAxMDI4NDQsIDEwMjg0OCwgMTAyODUyLCAKKyAgICAxMDI4NTYsIDEwMjg2MCwgMTAyODY0LCAxMDI4NjgsIDEwMjg3MiwgMTAyODc2LCAxMDI4ODAsIDEwMjg4NCwgMTAyODg4LCAKKyAgICAxMDI4OTIsIDEwMjg5NiwgMTAyOTAwLCAxMDI5MDQsIDEwMjkwOCwgMTAyOTEyLCAxMDI5MTYsIDEwMjkyMCwgMTAyOTI0LCAKKyAgICAxMDI5MjgsIDEwMjkzMiwgMTAyOTM2LCAxMDI5NDAsIDEwMjk0NCwgMTAyOTQ4LCAxMDI5NTIsIDEwMjk1NiwgMTAyOTYwLCAKKyAgICAxMDI5NjQsIDEwMjk2OCwgMTAyOTcyLCAxMDI5NzYsIDEwMjk4MCwgMTAyOTg0LCAxMDI5ODgsIDEwMjk5MiwgMTAyOTk2LCAKKyAgICAxMDMwMDAsIDEwMzAwNCwgMTAzMDA4LCAxMDMwMTIsIDEwMzAxNiwgMTAzMDIwLCAxMDMwMjQsIDEwMzAyOCwgMTAzMDMyLCAKKyAgICAxMDMwMzYsIDEwMzA0MCwgMTAzMDQ0LCAxMDMwNDgsIDEwMzA1MiwgMTAzMDU2LCAxMDMwNjAsIDEwMzA2NCwgMTAzMDY4LCAKKyAgICAxMDMwNzIsIDEwMzA3NiwgMTAzMDgwLCAxMDMwODQsIDEwMzA4OCwgMTAzMDkyLCAxMDMwOTYsIDEwMzEwMCwgMTAzMTA0LCAKKyAgICAxMDMxMDgsIDEwMzExMiwgMTAzMTE2LCAxMDMxMjAsIDEwMzEyNCwgMTAzMTI4LCAxMDMxMzIsIDEwMzEzNiwgMTAzMTQwLCAKKyAgICAxMDMxNDQsIDEwMzE0OCwgMTAzMTUyLCAxMDMxNTYsIDEwMzE2MCwgMTAzMTY0LCAxMDMxNjgsIDEwMzE3MiwgMTAzMTc2LCAKKyAgICAxMDMxODAsIDEwMzE4NCwgMTAzMTg4LCAxMDMxOTIsIDEwMzE5NiwgMTAzMjAwLCAxMDMyMDQsIDEwMzIwOCwgMTAzMjEyLCAKKyAgICAxMDMyMTYsIDEwMzIyMCwgMTAzMjI0LCAxMDMyMjgsIDEwMzIzMiwgMTAzMjM2LCAxMDMyNDAsIDEwMzI0NCwgMTAzMjQ4LCAKKyAgICAxMDMyNTIsIDEwMzI1NiwgMTAzMjYwLCAxMDMyNjQsIDEwMzI2OCwgMTAzMjcyLCAxMDMyNzYsIDEwMzI4MCwgMTAzMjg0LCAKKyAgICAxMDMyODgsIDEwMzI5MiwgMTAzMjk2LCAxMDMzMDAsIDEwMzMwNCwgMTAzMzA4LCAxMDMzMTIsIDEwMzMxNiwgMTAzMzIwLCAKKyAgICAxMDMzMjQsIDEwMzMyOCwgMTAzMzMyLCAxMDMzMzYsIDEwMzM0MCwgMTAzMzQ0LCAxMDMzNDgsIDEwMzM1MiwgMTAzMzU2LCAKKyAgICAxMDMzNjAsIDEwMzM2NCwgMTAzMzY4LCAxMDMzNzIsIDEwMzM3NiwgMTAzMzgwLCAxMDMzODQsIDEwMzM4OCwgMTAzMzkyLCAKKyAgICAxMDMzOTYsIDEwMzQwMCwgMTAzNDA0LCAxMDM0MDgsIDEwMzQxMiwgMTAzNDE2LCAxMDM0MjAsIDEwMzQyNCwgMTAzNDI4LCAKKyAgICAxMDM0MzIsIDEwMzQzNiwgMTAzNDQwLCAxMDM0NDQsIDEwMzQ0OCwgMTAzNDUyLCAxMDM0NTYsIDEwMzQ2MCwgMTAzNDY0LCAKKyAgICAxMDM0NjgsIDEwMzQ3MiwgMTAzNDc2LCAxMDM0ODAsIDEwMzQ4NCwgMTAzNDg4LCAxMDM0OTIsIDEwMzQ5NiwgMTAzNTAwLCAKKyAgICAxMDM1MDQsIDEwMzUwOCwgMTAzNTEyLCAxMDM1MTYsIDEwMzUyMCwgMTAzNTI0LCAxMDM1MjgsIDEwMzUzMiwgMTAzNTM2LCAKKyAgICAxMDM1NDAsIDEwMzU0NCwgMTAzNTQ4LCAxMDM1NTIsIDEwMzU1NiwgMTAzNTYwLCAxMDM1NjQsIDEwMzU2OCwgMTAzNTcyLCAKKyAgICAxMDM1NzYsIDEwMzU4MCwgMTAzNTg0LCAxMDM1ODgsIDEwMzU5MiwgMTAzNTk2LCAxMDM2MDAsIDEwMzYwNCwgMTAzNjA4LCAKKyAgICAxMDM2MTIsIDEwMzYxNiwgMTAzNjIwLCAxMDM2MjQsIDEwMzYyOCwgMTAzNjMyLCAxMDM2MzYsIDEwMzY0MCwgMTAzNjQ0LCAKKyAgICAxMDM2NDgsIDEwMzY1MiwgMTAzNjU2LCAxMDM2NjAsIDEwMzY2NCwgMTAzNjY4LCAxMDM2NzIsIDEwMzY3NiwgMTAzNjgwLCAKKyAgICAxMDM2ODQsIDEwMzY4OCwgMTAzNjkyLCAxMDM2OTYsIDEwMzcwMCwgMTAzNzA0LCAxMDM3MDgsIDEwMzcxMiwgMTAzNzE2LCAKKyAgICAxMDM3MjAsIDEwMzcyNCwgMTAzNzI4LCAxMDM3MzIsIDEwMzczNiwgMTAzNzQwLCAxMDM3NDQsIDEwMzc0OCwgMTAzNzUyLCAKKyAgICAxMDM3NTYsIDEwMzc2MCwgMTAzNzY0LCAxMDM3NjgsIDEwMzc3MiwgMTAzNzc2LCAxMDM3ODAsIDEwMzc4NCwgMTAzNzg4LCAKKyAgICAxMDM3OTIsIDEwMzc5NiwgMTAzODAwLCAxMDM4MDQsIDEwMzgwOCwgMTAzODEyLCAxMDM4MTYsIDEwMzgyMCwgMTAzODI0LCAKKyAgICAxMDM4MjgsIDEwMzgzMiwgMTAzODM2LCAxMDM4NDAsIDEwMzg0NCwgMTAzODQ4LCAxMDM4NTIsIDEwMzg1NiwgMTAzODYwLCAKKyAgICAxMDM4NjQsIDEwMzg2OCwgMTAzODcyLCAxMDM4NzYsIDEwMzg4MCwgMTAzODg0LCAxMDM4ODgsIDEwMzg5MiwgMTAzODk2LCAKKyAgICAxMDM5MDAsIDEwMzkwNCwgMTAzOTA4LCAxMDM5MTIsIDEwMzkxNiwgMTAzOTIwLCAxMDM5MjQsIDEwMzkyOCwgMTAzOTMyLCAKKyAgICAxMDM5MzYsIDEwMzk0MCwgMTAzOTQ0LCAxMDM5NDgsIDEwMzk1MiwgMTAzOTU2LCAxMDM5NjAsIDEwMzk2NCwgMTAzOTY4LCAKKyAgICAxMDM5NzIsIDEwMzk3NiwgMTAzOTgwLCAxMDM5ODQsIDEwMzk4OCwgMTAzOTkyLCAxMDM5OTYsIDEwNDAwMCwgMTA0MDA0LCAKKyAgICAxMDQwMDgsIDEwNDAxMiwgMTA0MDE2LCAxMDQwMjAsIDEwNDAyNCwgMTA0MDI4LCAxMDQwMzIsIDEwNDAzNiwgMTA0MDQwLCAKKyAgICAxMDQwNDQsIDEwNDA0OCwgMTA0MDUyLCAxMDQwNTYsIDEwNDA2MCwgMTA0MDY0LCAxMDQwNjgsIDEwNDA3MiwgMTA0MDc2LCAKKyAgICAxMDQwODAsIDEwNDA4NCwgMTA0MDg4LCAxMDQwOTIsIDEwNDA5NiwgMTA0MTAwLCAxMDQxMDQsIDEwNDEwOCwgMTA0MTEyLCAKKyAgICAxMDQxMTYsIDEwNDEyMCwgMTA0MTI0LCAxMDQxMjgsIDEwNDEzMiwgMTA0MTM2LCAxMDQxNDAsIDEwNDE0NCwgMTA0MTQ4LCAKKyAgICAxMDQxNTIsIDEwNDE1NiwgMTA0MTYwLCAxMDQxNjQsIDEwNDE2OCwgMTA0MTcyLCAxMDQxNzYsIDEwNDE4MCwgMTA0MTg0LCAKKyAgICAxMDQxODgsIDEwNDE5MiwgMTA0MTk2LCAxMDQyMDAsIDEwNDIwNCwgMTA0MjA4LCAxMDQyMTIsIDEwNDIxNiwgMTA0MjIwLCAKKyAgICAxMDQyMjQsIDEwNDIyOCwgMTA0MjMyLCAxMDQyMzYsIDEwNDI0MCwgMTA0MjQ0LCAxMDQyNDgsIDEwNDI1MiwgMTA0MjU2LCAKKyAgICAxMDQyNjAsIDEwNDI2NCwgMTA0MjY4LCAxMDQyNzIsIDEwNDI3NiwgMTA0MjgwLCAxMDQyODQsIDEwNDI4OCwgMTA0MjkyLCAKKyAgICAxMDQyOTYsIDEwNDMwMCwgMTA0MzA0LCAxMDQzMDgsIDEwNDMxMiwgMTA0MzE2LCAxMDQzMjAsIDEwNDMyNCwgMTA0MzI4LCAKKyAgICAxMDQzMzIsIDEwNDMzNiwgMTA0MzQwLCAxMDQzNDQsIDEwNDM0OCwgMTA0MzUyLCAxMDQzNTYsIDEwNDM2MCwgMTA0MzY0LCAKKyAgICAxMDQzNjgsIDEwNDM3MiwgMTA0Mzc2LCAxMDQzODAsIDEwNDM4NCwgMTA0Mzg4LCAxMDQzOTIsIDEwNDM5NiwgMTA0NDAwLCAKKyAgICAxMDQ0MDQsIDEwNDQwOCwgMTA0NDEyLCAxMDQ0MTYsIDEwNDQyMCwgMTA0NDI0LCAxMDQ0MjgsIDEwNDQzMiwgMTA0NDM2LCAKKyAgICAxMDQ0NDAsIDEwNDQ0NCwgMTA0NDQ4LCAxMDQ0NTIsIDEwNDQ1NiwgMTA0NDYwLCAxMDQ0NjQsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDEwNDQwOCwgMTA0NDE1LCAxMDQ0MjIsIDEwNDQzMSwgMTA0NDQwLCAxMDQ0NDcsIDEwNDQ1MiwgMTA0NDU5LCAKLSAgICAxMDQ0NjYsIDEwNDQ3NSwgMTA0NDg2LCAxMDQ0OTcsIDEwNDUwMiwgMTA0NTA5LCAxMDQ1MTQsIDEwNDUxOSwgMTA0NTI0LCAKLSAgICAxMDQ1MjksIDEwNDUzNCwgMTA0NTM5LCAxMDQ1NDQsIDEwNDU0OSwgMTA0NTU0LCAxMDQ1NTksIDEwNDU2NCwgMTA0NTcxLCAKLSAgICAxMDQ1NzgsIDEwNDU4MywgMTA0NTg4LCAxMDQ1OTMsIDEwNDU5OCwgMTA0NjA1LCAxMDQ2MTIsIDEwNDYyMCwgMTA0NjI1LCAKLSAgICAxMDQ2MzIsIDEwNDYzNywgMTA0NjQyLCAxMDQ2NDcsIDEwNDY1MiwgMTA0NjU3LCAxMDQ2NjQsIDEwNDY3MSwgMTA0Njc2LCAKLSAgICAxMDQ2ODEsIDEwNDY4NiwgMTA0NjkxLCAxMDQ2OTYsIDEwNDcwMSwgMTA0NzA2LCAxMDQ3MTEsIDEwNDcxNiwgMTA0NzIxLCAKLSAgICAxMDQ3MjYsIDEwNDczMSwgMTA0NzM2LCAxMDQ3NDEsIDEwNDc0NiwgMTA0NzUxLCAxMDQ3NTYsIDEwNDc2MSwgMTA0NzY2LCAKLSAgICAxMDQ3NzMsIDEwNDc3OCwgMTA0NzgzLCAxMDQ3OTIsIDEwNDc5OSwgMTA0ODA0LCAxMDQ4MDksIDEwNDgxNCwgMTA0ODE5LCAKLSAgICAxMDQ4MjQsIDEwNDgyOSwgMTA0ODM0LCAxMDQ4MzksIDEwNDg0NCwgMTA0ODQ5LCAxMDQ4NTQsIDEwNDg1OSwgMTA0ODY0LCAKLSAgICAxMDQ4NjksIDEwNDg3NCwgMTA0ODc5LCAxMDQ4ODQsIDEwNDg4OSwgMTA0ODk0LCAxMDQ4OTksIDEwNDkwNCwgMTA0OTEwLCAKLSAgICAxMDQ5MTgsIDEwNDkyNCwgMTA0OTMyLCAxMDQ5NDAsIDEwNDk0OCwgMTA0OTU0LCAxMDQ5NjAsIDEwNDk2NiwgMTA0OTcyLCAKLSAgICAxMDQ5NzgsIDEwNDk4NiwgMTA0OTk2LCAxMDUwMDQsIDEwNTAxMiwgMTA1MDE4LCAxMDUwMjQsIDEwNTAzMiwgMTA1MDQwLCAKLSAgICAxMDUwNDYsIDEwNTA1NCwgMTA1MDYyLCAxMDUwNzAsIDEwNTA3NiwgMTA1MDgyLCAxMDUwODgsIDEwNTA5NCwgMTA1MTAwLCAKLSAgICAxMDUxMDYsIDEwNTExNCwgMTA1MTIyLCAxMDUxMjgsIDEwNTEzNCwgMTA1MTQwLCAxMDUxNDYsIDEwNTE1MiwgMTA1MTYwLCAKLSAgICAxMDUxNjYsIDEwNTE3MiwgMTA1MTc4LCAxMDUxODQsIDEwNTE5MCwgMTA1MTk2LCAxMDUyMDQsIDEwNTIxMCwgMTA1MjE2LCAKLSAgICAxMDUyMjIsIDEwNTIyOCwgMTA1MjM2LCAxMDUyNDQsIDEwNTI1MCwgMTA1MjU2LCAxMDUyNjIsIDEwNTI2NywgMTA1MjczLCAKLSAgICAxMDUyNzksIDEwNTI4NiwgMTA1MjkxLCAxMDUyOTYsIDEwNTMwMSwgMTA1MzA2LCAxMDUzMTEsIDEwNTMxNiwgMTA1MzIxLCAKLSAgICAxMDUzMjYsIDEwNTMzMSwgMTA1MzQwLCAxMDUzNDcsIDEwNTM1MiwgMTA1MzU3LCAxMDUzNjIsIDEwNTM2OSwgMTA1Mzc0LCAKLSAgICAxMDUzNzksIDEwNTM4NCwgMTA1MzkxLCAxMDUzOTYsIDEwNTQwMSwgMTA1NDA2LCAxMDU0MTEsIDEwNTQxNiwgMTA1NDIxLCAKLSAgICAxMDU0MjYsIDEwNTQzMSwgMTA1NDM2LCAxMDU0NDEsIDEwNTQ0NiwgMTA1NDUzLCAxMDU0NTgsIDEwNTQ2NSwgMTA1NDcwLCAKLSAgICAxMDU0NzUsIDEwNTQ4MiwgMTA1NDg3LCAxMDU0OTIsIDEwNTQ5NywgMTA1NTAyLCAxMDU1MDcsIDEwNTUxMiwgMTA1NTE3LCAKLSAgICAxMDU1MjIsIDEwNTUyNywgMTA1NTMyLCAxMDU1MzcsIDEwNTU0MiwgMTA1NTQ3LCAxMDU1NTIsIDEwNTU1NywgMTA1NTYyLCAKLSAgICAxMDU1NjcsIDEwNTU3MiwgMTA1NTc3LCAxMDU1ODQsIDEwNTU4OSwgMTA1NTk0LCAxMDU1OTksIDEwNTYwNCwgMTA1NjA5LCAKLSAgICAxMDU2MTQsIDEwNTYxOSwgMTA1NjI0LCAxMDU2MjksIDEwNTYzNCwgMTA1NjM5LCAxMDU2NDQsIDEwNTY0OSwgMTA1NjU2LCAKLSAgICAxMDU2NjEsIDEwNTY2NiwgMTA1NjczLCAxMDU2NzgsIDEwNTY4MywgMTA1Njg4LCAxMDU2OTMsIDEwNTY5OCwgMTA1NzAzLCAKLSAgICAxMDU3MDgsIDEwNTcxMywgMTA1NzE4LCAxMDU3MjMsIDEwNTczMCwgMTA1NzM1LCAxMDU3NDAsIDEwNTc0NSwgMTA1NzUwLCAKLSAgICAxMDU3NTUsIDEwNTc2MiwgMTA1NzY5LCAxMDU3NzQsIDEwNTc3OSwgMTA1Nzg0LCAxMDU3ODksIDEwNTc5NCwgMTA1Nzk5LCAKLSAgICAxMDU4MDQsIDEwNTgwOSwgMTA1ODE0LCAxMDU4MTksIDEwNTgyNCwgMTA1ODI5LCAxMDU4MzQsIDEwNTgzOSwgMTA1ODQ0LCAKLSAgICAxMDU4NDksIDEwNTg1NCwgMTA1ODU5LCAxMDU4NjQsIDEwNTg2OSwgMTA1ODc0LCAxMDU4NzksIDEwNTg4NCwgMTA1ODg5LCAKLSAgICAxMDU4OTQsIDEwNTg5OSwgMTA1OTA0LCAxMDU5MDksIDEwNTkxNCwgMTA1OTE5LCAxMDU5MjQsIDEwNTkyOSwgMTA1OTM0LCAKLSAgICAxMDU5MzksIDEwNTk0NCwgMTA1OTQ5LCAxMDU5NTYsIDEwNTk2MSwgMTA1OTY2LCAxMDU5NzEsIDEwNTk3NiwgMTA1OTgxLCAKLSAgICAxMDU5ODYsIDEwNTk5MSwgMTA1OTk2LCAxMDYwMDEsIDEwNjAwNiwgMTA2MDExLCAxMDYwMTYsIDEwNjAyMSwgMTA2MDI2LCAKLSAgICAxMDYwMzEsIDEwNjAzNiwgMTA2MDQxLCAxMDYwNDYsIDEwNjA1MSwgMTA2MDU2LCAxMDYwNjEsIDEwNjA2NiwgMTA2MDcxLCAKLSAgICAxMDYwNzYsIDEwNjA4MSwgMTA2MDg2LCAxMDYwOTEsIDEwNjA5NiwgMTA2MTAxLCAxMDYxMDYsIDEwNjExMSwgMTA2MTE2LCAKLSAgICAxMDYxMjEsIDEwNjEyNiwgMTA2MTMxLCAxMDYxMzYsIDEwNjE0MSwgMTA2MTQ2LCAxMDYxNTEsIDEwNjE1NiwgMTA2MTYxLCAKLSAgICAxMDYxNjYsIDEwNjE3MSwgMTA2MTc2LCAxMDYxODEsIDEwNjE4NiwgMTA2MTkxLCAxMDYxOTYsIDEwNjIwMSwgMTA2MjA2LCAKLSAgICAxMDYyMTEsIDEwNjIxNiwgMTA2MjIxLCAxMDYyMjYsIDEwNjIzMSwgMTA2MjM2LCAxMDYyNDEsIDEwNjI0NiwgMTA2MjUzLCAKLSAgICAxMDYyNTgsIDEwNjI2MywgMTA2MjY4LCAxMDYyNzMsIDEwNjI3OCwgMTA2MjgzLCAxMDYyODcsIDEwNjI5MiwgMTA2Mjk3LCAKLSAgICAxMDYzMDIsIDEwNjMwNywgMTA2MzEyLCAxMDYzMTcsIDEwNjMyMiwgMTA2MzI3LCAxMDYzMzIsIDEwNjMzNywgMTA2MzQyLCAKLSAgICAxMDYzNDcsIDEwNjM1MiwgMTA2MzU3LCAxMDYzNjQsIDEwNjM2OSwgMTA2Mzc0LCAxMDYzODAsIDEwNjM4NSwgMTA2MzkwLCAKLSAgICAxMDYzOTUsIDEwNjQwMCwgMTA2NDA1LCAxMDY0MTAsIDEwNjQxNSwgMTA2NDIwLCAxMDY0MjUsIDEwNjQzMCwgMTA2NDM1LCAKLSAgICAxMDY0NDAsIDEwNjQ0NSwgMTA2NDUwLCAxMDY0NTUsIDEwNjQ2MCwgMTA2NDY1LCAxMDY0NzAsIDEwNjQ3NSwgMTA2NDgwLCAKLSAgICAxMDY0ODUsIDEwNjQ5MCwgMTA2NDk1LCAxMDY1MDAsIDEwNjUwNSwgMTA2NTEwLCAxMDY1MTUsIDEwNjUyMCwgMTA2NTI1LCAKLSAgICAxMDY1MzAsIDEwNjUzNSwgMTA2NTQwLCAxMDY1NDUsIDEwNjU1MCwgMTA2NTU1LCAxMDY1NjAsIDEwNjU2NSwgMTA2NTcwLCAKLSAgICAxMDY1NzUsIDEwNjU4MCwgMTA2NTg1LCAxMDY1OTAsIDEwNjU5NSwgMTA2NjAyLCAxMDY2MDcsIDEwNjYxMiwgMTA2NjE5LCAKLSAgICAxMDY2MjYsIDEwNjYzMSwgMTA2NjM2LCAxMDY2NDEsIDEwNjY0NiwgMTA2NjUxLCAxMDY2NTYsIDEwNjY2MSwgMTA2NjY2LCAKLSAgICAxMDY2NzEsIDEwNjY3NiwgMTA2NjgxLCAxMDY2ODYsIDEwNjY5MSwgMTA2Njk2LCAxMDY3MDEsIDEwNjcwNiwgMTA2NzExLCAKLSAgICAxMDY3MTYsIDEwNjcyMSwgMTA2NzI2LCAxMDY3MzEsIDEwNjczNiwgMTA2NzQxLCAxMDY3NDYsIDEwNjc1MSwgMTA2NzU4LCAKLSAgICAxMDY3NjMsIDEwNjc2OCwgMTA2NzczLCAxMDY3NzgsIDEwNjc4MywgMTA2Nzg4LCAxMDY3OTMsIDEwNjc5OCwgMTA2ODAzLCAKLSAgICAxMDY4MDgsIDEwNjgxMywgMTA2ODE4LCAxMDY4MjMsIDEwNjgyOCwgMTA2ODMzLCAxMDY4MzgsIDEwNjg0MywgMTA2ODQ4LCAKLSAgICAxMDY4NTUsIDEwNjg2MCwgMTA2ODY1LCAxMDY4NzAsIDEwNjg3NSwgMTA2ODgwLCAxMDY4ODUsIDEwNjg5MCwgMTA2ODk2LCAKLSAgICAxMDY5MDEsIDEwNjkwNiwgMTA2OTExLCAxMDY5MTYsIDEwNjkyMSwgMTA2OTI2LCAxMDY5MzEsIDEwNjkzNiwgMTA2OTQzLCAKLSAgICAxMDY5NTAsIDEwNjk1NSwgMTA2OTYwLCAxMDY5NjQsIDEwNjk2OSwgMTA2OTczLCAxMDY5NzcsIDEwNjk4MiwgMTA2OTg5LCAKLSAgICAxMDY5OTQsIDEwNjk5OSwgMTA3MDA4LCAxMDcwMTMsIDEwNzAxOCwgMTA3MDIzLCAxMDcwMjgsIDEwNzAzNSwgMTA3MDQyLCAKLSAgICAxMDcwNDcsIDEwNzA1MiwgMTA3MDU3LCAxMDcwNjIsIDEwNzA2OSwgMTA3MDc0LCAxMDcwNzksIDEwNzA4NCwgMTA3MDg5LCAKLSAgICAxMDcwOTQsIDEwNzA5OSwgMTA3MTA0LCAxMDcxMDksIDEwNzExNCwgMTA3MTE5LCAxMDcxMjQsIDEwNzEyOSwgMTA3MTM2LCAKLSAgICAxMDcxNDAsIDEwNzE0NSwgMTA3MTUwLCAxMDcxNTUsIDEwNzE2MCwgMTA3MTY0LCAxMDcxNjksIDEwNzE3NCwgMTA3MTc5LCAKLSAgICAxMDcxODQsIDEwNzE4OSwgMTA3MTk0LCAxMDcxOTksIDEwNzIwNCwgMTA3MjA5LCAxMDcyMTUsIDEwNzIyMSwgMTA3MjI3LCAKLSAgICAxMDcyMzMsIDEwNzIzOSwgMTA3MjQ1LCAxMDcyNTEsIDEwNzI1NywgMTA3MjYzLCAxMDcyNjksIDEwNzI3NSwgMTA3MjgxLCAKLSAgICAxMDcyODYsIDEwNzI5MiwgMTA3Mjk4LCAxMDczMDQsIDEwNzMxMCwgMTA3MzE2LCAxMDczMjIsIDEwNzMyOCwgMTA3MzM0LCAKLSAgICAxMDczNDAsIDEwNzM0NiwgMTA3MzUyLCAxMDczNTcsIDEwNzM2MywgMTA3MzY5LCAxMDczNzUsIDEwNzM4MSwgMTA3Mzg3LCAKLSAgICAxMDczOTMsIDEwNzM5OSwgMTA3NDA1LCAxMDc0MTEsIDEwNzQxNywgMTA3NDIzLCAxMDc0MjksIDEwNzQzNSwgMTA3NDQxLCAKLSAgICAxMDc0NDcsIDEwNzQ1MywgMTA3NDU5LCAxMDc0NjUsIDEwNzQ3MSwgMTA3NDc3LCAxMDc0ODIsIDEwNzQ4OCwgMTA3NDk0LCAKLSAgICAxMDc1MDAsIDEwNzUwNiwgMTA3NTEyLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAxMDQ0NjgsIDEwNDQ3NSwgMTA0NDgyLCAxMDQ0OTEsIDEwNDUwMCwgMTA0NTA3LCAxMDQ1MTIsIDEwNDUxOSwgCisgICAgMTA0NTI2LCAxMDQ1MzUsIDEwNDU0NiwgMTA0NTU3LCAxMDQ1NjIsIDEwNDU2OSwgMTA0NTc0LCAxMDQ1NzksIDEwNDU4NCwgCisgICAgMTA0NTg5LCAxMDQ1OTQsIDEwNDU5OSwgMTA0NjA0LCAxMDQ2MDksIDEwNDYxNCwgMTA0NjE5LCAxMDQ2MjQsIDEwNDYzMSwgCisgICAgMTA0NjM4LCAxMDQ2NDMsIDEwNDY0OCwgMTA0NjUzLCAxMDQ2NTgsIDEwNDY2NSwgMTA0NjcyLCAxMDQ2ODAsIDEwNDY4NSwgCisgICAgMTA0NjkyLCAxMDQ2OTcsIDEwNDcwMiwgMTA0NzA3LCAxMDQ3MTIsIDEwNDcxNywgMTA0NzI0LCAxMDQ3MzEsIDEwNDczNiwgCisgICAgMTA0NzQxLCAxMDQ3NDYsIDEwNDc1MSwgMTA0NzU2LCAxMDQ3NjEsIDEwNDc2NiwgMTA0NzcxLCAxMDQ3NzYsIDEwNDc4MSwgCisgICAgMTA0Nzg2LCAxMDQ3OTEsIDEwNDc5NiwgMTA0ODAxLCAxMDQ4MDYsIDEwNDgxMSwgMTA0ODE2LCAxMDQ4MjEsIDEwNDgyNiwgCisgICAgMTA0ODMzLCAxMDQ4MzgsIDEwNDg0MywgMTA0ODUyLCAxMDQ4NTksIDEwNDg2NCwgMTA0ODY5LCAxMDQ4NzQsIDEwNDg3OSwgCisgICAgMTA0ODg0LCAxMDQ4ODksIDEwNDg5NCwgMTA0ODk5LCAxMDQ5MDQsIDEwNDkwOSwgMTA0OTE0LCAxMDQ5MTksIDEwNDkyNCwgCisgICAgMTA0OTI5LCAxMDQ5MzQsIDEwNDkzOSwgMTA0OTQ0LCAxMDQ5NDksIDEwNDk1NCwgMTA0OTU5LCAxMDQ5NjQsIDEwNDk3MCwgCisgICAgMTA0OTc4LCAxMDQ5ODQsIDEwNDk5MiwgMTA1MDAwLCAxMDUwMDgsIDEwNTAxNCwgMTA1MDIwLCAxMDUwMjYsIDEwNTAzMiwgCisgICAgMTA1MDM4LCAxMDUwNDYsIDEwNTA1NiwgMTA1MDY0LCAxMDUwNzIsIDEwNTA3OCwgMTA1MDg0LCAxMDUwOTIsIDEwNTEwMCwgCisgICAgMTA1MTA2LCAxMDUxMTQsIDEwNTEyMiwgMTA1MTMwLCAxMDUxMzYsIDEwNTE0MiwgMTA1MTQ4LCAxMDUxNTQsIDEwNTE2MCwgCisgICAgMTA1MTY2LCAxMDUxNzQsIDEwNTE4MiwgMTA1MTg4LCAxMDUxOTQsIDEwNTIwMCwgMTA1MjA2LCAxMDUyMTIsIDEwNTIyMCwgCisgICAgMTA1MjI2LCAxMDUyMzIsIDEwNTIzOCwgMTA1MjQ0LCAxMDUyNTAsIDEwNTI1NiwgMTA1MjY0LCAxMDUyNzAsIDEwNTI3NiwgCisgICAgMTA1MjgyLCAxMDUyODgsIDEwNTI5NiwgMTA1MzA0LCAxMDUzMTAsIDEwNTMxNiwgMTA1MzIyLCAxMDUzMjcsIDEwNTMzMywgCisgICAgMTA1MzM5LCAxMDUzNDYsIDEwNTM1MSwgMTA1MzU2LCAxMDUzNjEsIDEwNTM2NiwgMTA1MzcxLCAxMDUzNzYsIDEwNTM4MSwgCisgICAgMTA1Mzg2LCAxMDUzOTEsIDEwNTQwMCwgMTA1NDA3LCAxMDU0MTIsIDEwNTQxNywgMTA1NDIyLCAxMDU0MjksIDEwNTQzNCwgCisgICAgMTA1NDM5LCAxMDU0NDQsIDEwNTQ1MSwgMTA1NDU2LCAxMDU0NjEsIDEwNTQ2NiwgMTA1NDcxLCAxMDU0NzYsIDEwNTQ4MSwgCisgICAgMTA1NDg2LCAxMDU0OTEsIDEwNTQ5NiwgMTA1NTAxLCAxMDU1MDYsIDEwNTUxMywgMTA1NTE4LCAxMDU1MjUsIDEwNTUzMCwgCisgICAgMTA1NTM1LCAxMDU1NDIsIDEwNTU0NywgMTA1NTUyLCAxMDU1NTcsIDEwNTU2MiwgMTA1NTY3LCAxMDU1NzIsIDEwNTU3NywgCisgICAgMTA1NTgyLCAxMDU1ODcsIDEwNTU5MiwgMTA1NTk3LCAxMDU2MDIsIDEwNTYwNywgMTA1NjEyLCAxMDU2MTcsIDEwNTYyMiwgCisgICAgMTA1NjI3LCAxMDU2MzIsIDEwNTYzNywgMTA1NjQ0LCAxMDU2NDksIDEwNTY1NCwgMTA1NjU5LCAxMDU2NjQsIDEwNTY2OSwgCisgICAgMTA1Njc0LCAxMDU2NzksIDEwNTY4NCwgMTA1Njg5LCAxMDU2OTQsIDEwNTY5OSwgMTA1NzA0LCAxMDU3MDksIDEwNTcxNiwgCisgICAgMTA1NzIxLCAxMDU3MjYsIDEwNTczMywgMTA1NzM4LCAxMDU3NDMsIDEwNTc0OCwgMTA1NzUzLCAxMDU3NTgsIDEwNTc2MywgCisgICAgMTA1NzY4LCAxMDU3NzMsIDEwNTc3OCwgMTA1NzgzLCAxMDU3OTAsIDEwNTc5NSwgMTA1ODAwLCAxMDU4MDUsIDEwNTgxMCwgCisgICAgMTA1ODE1LCAxMDU4MjIsIDEwNTgyOSwgMTA1ODM0LCAxMDU4MzksIDEwNTg0NCwgMTA1ODQ5LCAxMDU4NTQsIDEwNTg1OSwgCisgICAgMTA1ODY0LCAxMDU4NjksIDEwNTg3NCwgMTA1ODc5LCAxMDU4ODQsIDEwNTg4OSwgMTA1ODk0LCAxMDU4OTksIDEwNTkwNCwgCisgICAgMTA1OTA5LCAxMDU5MTQsIDEwNTkxOSwgMTA1OTI0LCAxMDU5MjksIDEwNTkzNCwgMTA1OTM5LCAxMDU5NDQsIDEwNTk0OSwgCisgICAgMTA1OTU0LCAxMDU5NTksIDEwNTk2NCwgMTA1OTY5LCAxMDU5NzQsIDEwNTk3OSwgMTA1OTg0LCAxMDU5ODksIDEwNTk5NCwgCisgICAgMTA1OTk5LCAxMDYwMDQsIDEwNjAwOSwgMTA2MDE2LCAxMDYwMjEsIDEwNjAyNiwgMTA2MDMxLCAxMDYwMzYsIDEwNjA0MSwgCisgICAgMTA2MDQ2LCAxMDYwNTEsIDEwNjA1NiwgMTA2MDYxLCAxMDYwNjYsIDEwNjA3MSwgMTA2MDc2LCAxMDYwODEsIDEwNjA4NiwgCisgICAgMTA2MDkxLCAxMDYwOTYsIDEwNjEwMSwgMTA2MTA2LCAxMDYxMTEsIDEwNjExNiwgMTA2MTIxLCAxMDYxMjYsIDEwNjEzMSwgCisgICAgMTA2MTM2LCAxMDYxNDEsIDEwNjE0NiwgMTA2MTUxLCAxMDYxNTYsIDEwNjE2MSwgMTA2MTY2LCAxMDYxNzEsIDEwNjE3NiwgCisgICAgMTA2MTgxLCAxMDYxODYsIDEwNjE5MSwgMTA2MTk2LCAxMDYyMDEsIDEwNjIwNiwgMTA2MjExLCAxMDYyMTYsIDEwNjIyMSwgCisgICAgMTA2MjI2LCAxMDYyMzEsIDEwNjIzNiwgMTA2MjQxLCAxMDYyNDYsIDEwNjI1MSwgMTA2MjU2LCAxMDYyNjEsIDEwNjI2NiwgCisgICAgMTA2MjcxLCAxMDYyNzYsIDEwNjI4MSwgMTA2Mjg2LCAxMDYyOTEsIDEwNjI5NiwgMTA2MzAxLCAxMDYzMDYsIDEwNjMxMywgCisgICAgMTA2MzE4LCAxMDYzMjMsIDEwNjMyOCwgMTA2MzMzLCAxMDYzMzgsIDEwNjM0MywgMTA2MzQ3LCAxMDYzNTIsIDEwNjM1NywgCisgICAgMTA2MzYyLCAxMDYzNjcsIDEwNjM3MiwgMTA2Mzc3LCAxMDYzODIsIDEwNjM4NywgMTA2MzkyLCAxMDYzOTcsIDEwNjQwMiwgCisgICAgMTA2NDA3LCAxMDY0MTIsIDEwNjQxNywgMTA2NDI0LCAxMDY0MjksIDEwNjQzNCwgMTA2NDQwLCAxMDY0NDUsIDEwNjQ1MCwgCisgICAgMTA2NDU1LCAxMDY0NjAsIDEwNjQ2NSwgMTA2NDcwLCAxMDY0NzUsIDEwNjQ4MCwgMTA2NDg1LCAxMDY0OTAsIDEwNjQ5NSwgCisgICAgMTA2NTAwLCAxMDY1MDUsIDEwNjUxMCwgMTA2NTE1LCAxMDY1MjAsIDEwNjUyNSwgMTA2NTMwLCAxMDY1MzUsIDEwNjU0MCwgCisgICAgMTA2NTQ1LCAxMDY1NTAsIDEwNjU1NSwgMTA2NTYwLCAxMDY1NjUsIDEwNjU3MCwgMTA2NTc1LCAxMDY1ODAsIDEwNjU4NSwgCisgICAgMTA2NTkwLCAxMDY1OTUsIDEwNjYwMCwgMTA2NjA1LCAxMDY2MTAsIDEwNjYxNSwgMTA2NjIwLCAxMDY2MjUsIDEwNjYzMCwgCisgICAgMTA2NjM1LCAxMDY2NDAsIDEwNjY0NSwgMTA2NjUwLCAxMDY2NTUsIDEwNjY2MiwgMTA2NjY3LCAxMDY2NzIsIDEwNjY3OSwgCisgICAgMTA2Njg2LCAxMDY2OTEsIDEwNjY5NiwgMTA2NzAxLCAxMDY3MDYsIDEwNjcxMSwgMTA2NzE2LCAxMDY3MjEsIDEwNjcyNiwgCisgICAgMTA2NzMxLCAxMDY3MzYsIDEwNjc0MSwgMTA2NzQ2LCAxMDY3NTEsIDEwNjc1NiwgMTA2NzYxLCAxMDY3NjYsIDEwNjc3MSwgCisgICAgMTA2Nzc2LCAxMDY3ODEsIDEwNjc4NiwgMTA2NzkxLCAxMDY3OTYsIDEwNjgwMSwgMTA2ODA2LCAxMDY4MTEsIDEwNjgxOCwgCisgICAgMTA2ODIzLCAxMDY4MjgsIDEwNjgzMywgMTA2ODM4LCAxMDY4NDMsIDEwNjg0OCwgMTA2ODUzLCAxMDY4NTgsIDEwNjg2MywgCisgICAgMTA2ODY4LCAxMDY4NzMsIDEwNjg3OCwgMTA2ODgzLCAxMDY4ODgsIDEwNjg5MywgMTA2ODk4LCAxMDY5MDMsIDEwNjkwOCwgCisgICAgMTA2OTE1LCAxMDY5MjAsIDEwNjkyNSwgMTA2OTMwLCAxMDY5MzUsIDEwNjk0MCwgMTA2OTQ1LCAxMDY5NTAsIDEwNjk1NiwgCisgICAgMTA2OTYxLCAxMDY5NjYsIDEwNjk3MSwgMTA2OTc2LCAxMDY5ODEsIDEwNjk4NiwgMTA2OTkxLCAxMDY5OTYsIDEwNzAwMywgCisgICAgMTA3MDEwLCAxMDcwMTUsIDEwNzAyMCwgMTA3MDI0LCAxMDcwMjksIDEwNzAzMywgMTA3MDM3LCAxMDcwNDIsIDEwNzA0OSwgCisgICAgMTA3MDU0LCAxMDcwNTksIDEwNzA2OCwgMTA3MDczLCAxMDcwNzgsIDEwNzA4MywgMTA3MDg4LCAxMDcwOTUsIDEwNzEwMiwgCisgICAgMTA3MTA3LCAxMDcxMTIsIDEwNzExNywgMTA3MTIyLCAxMDcxMjksIDEwNzEzNCwgMTA3MTM5LCAxMDcxNDQsIDEwNzE0OSwgCisgICAgMTA3MTU0LCAxMDcxNTksIDEwNzE2NCwgMTA3MTY5LCAxMDcxNzQsIDEwNzE3OSwgMTA3MTg0LCAxMDcxODksIDEwNzE5NiwgCisgICAgMTA3MjAwLCAxMDcyMDUsIDEwNzIxMCwgMTA3MjE1LCAxMDcyMjAsIDEwNzIyNCwgMTA3MjI5LCAxMDcyMzQsIDEwNzIzOSwgCisgICAgMTA3MjQ0LCAxMDcyNDksIDEwNzI1NCwgMTA3MjU5LCAxMDcyNjQsIDEwNzI2OSwgMTA3Mjc1LCAxMDcyODEsIDEwNzI4NywgCisgICAgMTA3MjkzLCAxMDcyOTksIDEwNzMwNSwgMTA3MzExLCAxMDczMTcsIDEwNzMyMywgMTA3MzI5LCAxMDczMzUsIDEwNzM0MSwgCisgICAgMTA3MzQ2LCAxMDczNTIsIDEwNzM1OCwgMTA3MzY0LCAxMDczNzAsIDEwNzM3NiwgMTA3MzgyLCAxMDczODgsIDEwNzM5NCwgCisgICAgMTA3NDAwLCAxMDc0MDYsIDEwNzQxMiwgMTA3NDE3LCAxMDc0MjMsIDEwNzQyOSwgMTA3NDM1LCAxMDc0NDEsIDEwNzQ0NywgCisgICAgMTA3NDUzLCAxMDc0NTksIDEwNzQ2NSwgMTA3NDcxLCAxMDc0NzcsIDEwNzQ4MywgMTA3NDg5LCAxMDc0OTUsIDEwNzUwMSwgCisgICAgMTA3NTA3LCAxMDc1MTMsIDEwNzUxOSwgMTA3NTI1LCAxMDc1MzEsIDEwNzUzNywgMTA3NTQyLCAxMDc1NDgsIDEwNzU1NCwgCisgICAgMTA3NTYwLCAxMDc1NjYsIDEwNzU3MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTA3NTE4LCAxMDc1MjMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEwNzU3OCwgMTA3NTgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDc1MjksIDEwNzUzNCwgCi0gICAgMTA3NTM5LCAxMDc1NDQsIDEwNzU1MSwgMTA3NTU4LCAxMDc1NjUsIDEwNzU3MiwgMTA3NTc3LCAxMDc1ODIsIDEwNzU4NywgCi0gICAgMTA3NTkyLCAxMDc1OTksIDEwNzYwNCwgMTA3NjExLCAxMDc2MTgsIDEwNzYyMywgMTA3NjI4LCAxMDc2MzMsIDEwNzY0MCwgCi0gICAgMTA3NjQ1LCAxMDc2NTAsIDEwNzY1NywgMTA3NjY0LCAxMDc2NjksIDEwNzY3NCwgMTA3Njc5LCAxMDc2ODYsIDEwNzY5MywgCi0gICAgMTA3NzAwLCAxMDc3MDUsIDEwNzcxMCwgMTA3NzE3LCAxMDc3MjQsIDEwNzczMSwgMTA3NzM4LCAxMDc3NDMsIDEwNzc0OCwgCi0gICAgMTA3NzUzLCAxMDc3NjAsIDEwNzc2NSwgMTA3NzcwLCAxMDc3NzUsIDEwNzc4MiwgMTA3NzkxLCAxMDc3OTgsIDEwNzgwMywgCi0gICAgMTA3ODA4LCAxMDc4MTMsIDEwNzgxOCwgMTA3ODIzLCAxMDc4MjgsIDEwNzgzNywgMTA3ODQ0LCAxMDc4NDksIDEwNzg1NiwgCi0gICAgMTA3ODYzLCAxMDc4NjgsIDEwNzg3MywgMTA3ODc4LCAxMDc4ODUsIDEwNzg5MCwgMTA3ODk3LCAxMDc5MDQsIDEwNzkwOSwgCi0gICAgMTA3OTE0LCAxMDc5MTksIDEwNzkyNiwgMTA3OTMzLCAxMDc5MzgsIDEwNzk0MywgMTA3OTUwLCAxMDc5NTcsIDEwNzk2NCwgCi0gICAgMTA3OTY5LCAxMDc5NzQsIDEwNzk3OSwgMTA3OTg0LCAxMDc5OTEsIDEwODAwMCwgMTA4MDA5LCAxMDgwMTQsIDEwODAyMSwgCi0gICAgMTA4MDMwLCAxMDgwMzUsIDEwODA0MCwgMTA4MDQ1LCAxMDgwNTAsIDEwODA1NywgMTA4MDY0LCAxMDgwNzEsIDEwODA3OCwgCi0gICAgMTA4MDgzLCAxMDgwODgsIDEwODA5MywgMTA4MTAwLCAxMDgxMDcsIDEwODExNCwgMTA4MTE5LCAxMDgxMjQsIDEwODEzMSwgCi0gICAgMTA4MTM2LCAxMDgxNDMsIDEwODE0OCwgMTA4MTU1LCAxMDgxNjAsIDEwODE2NywgMTA4MTc0LCAxMDgxNzksIDEwODE4NCwgCi0gICAgMTA4MTg5LCAxMDgxOTQsIDEwODE5OSwgMTA4MjA0LCAxMDgyMDksIDEwODIxNCwgMTA4MjE5LCAxMDgyMjYsIDEwODIzMywgCi0gICAgMTA4MjQwLCAxMDgyNDcsIDEwODI1NCwgMTA4MjYzLCAxMDgyNjgsIDEwODI3MywgMTA4MjgwLCAxMDgyODcsIDEwODI5MiwgCi0gICAgMTA4Mjk5LCAxMDgzMDYsIDEwODMxMywgMTA4MzIwLCAxMDgzMjcsIDEwODMzNCwgMTA4MzM5LCAxMDgzNDQsIDEwODM0OSwgCi0gICAgMTA4MzU0LCAxMDgzNTksIDEwODM2OCwgMTA4Mzc3LCAxMDgzODYsIDEwODM5NSwgMTA4NDA0LCAxMDg0MTMsIDEwODQyMiwgCi0gICAgMTA4NDMxLCAxMDg0MzYsIDEwODQ0NywgMTA4NDU4LCAxMDg0NjcsIDEwODQ3MiwgMTA4NDc3LCAxMDg0ODIsIDEwODQ4NywgCi0gICAgMTA4NDk2LCAxMDg1MDMsIDEwODUxMCwgMTA4NTE3LCAxMDg1MjQsIDEwODUzMSwgMTA4NTM4LCAxMDg1NDcsIDEwODU1NiwgCi0gICAgMTA4NTY3LCAxMDg1NzYsIDEwODU4NywgMTA4NTk2LCAxMDg2MDMsIDEwODYxMiwgMTA4NjIzLCAxMDg2MzIsIDEwODY0MSwgCi0gICAgMTA4NjUwLCAxMDg2NTksIDEwODY2NiwgMTA4NjczLCAxMDg2ODAsIDEwODY4OSwgMTA4Njk4LCAxMDg3MDksIDEwODcxOCwgCi0gICAgMTA4NzI3LCAxMDg3MzgsIDEwODc0MywgMTA4NzQ4LCAxMDg3NTksIDEwODc2NywgMTA4Nzc2LCAxMDg3ODUsIDEwODc5NCwgCi0gICAgMTA4ODA1LCAxMDg4MTQsIDEwODgyMywgMTA4ODM0LCAxMDg4NDUsIDEwODg1NiwgMTA4ODY3LCAxMDg4NzgsIDEwODg4OSwgCi0gICAgMTA4ODk2LCAxMDg5MDMsIDEwODkxMCwgMTA4OTE3LCAxMDg5MjgsIDEwODkzNywgMTA4OTQ0LCAxMDg5NTEsIDEwODk1OCwgCi0gICAgMTA4OTY5LCAxMDg5ODAsIDEwODk5MSwgMTA5MDAyLCAxMDkwMTMsIDEwOTAyNCwgMTA5MDM1LCAxMDkwNDYsIDEwOTA1MywgCi0gICAgMTA5MDYwLCAxMDkwNjksIDEwOTA3OCwgMTA5MDg1LCAxMDkwOTIsIDEwOTA5OSwgMTA5MTA4LCAxMDkxMTcsIDEwOTEyNiwgCi0gICAgMTA5MTMzLCAxMDkxNDIsIDEwOTE1MSwgMTA5MTYwLCAxMDkxNjcsIDEwOTE3NCwgMTA5MTc5LCAxMDkxODUsIDEwOTE5MiwgCi0gICAgMTA5MTk5LCAxMDkyMDYsIDEwOTIxMywgMTA5MjIwLCAxMDkyMjcsIDEwOTIzNiwgMTA5MjQ1LCAxMDkyNTQsIDEwOTI2MywgCi0gICAgMTA5MjcwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDkyNzksIDEwOTI4NSwgMTA5MjkwLCAxMDkyOTUsIAotICAgIDEwOTMwMiwgMTA5MzA4LCAxMDkzMTQsIDEwOTMyMCwgMTA5MzI2LCAxMDkzMzIsIDEwOTMzOCwgMTA5MzQ0LCAxMDkzNDgsIAotICAgIDEwOTM1MiwgMTA5MzU4LCAxMDkzNjQsIDEwOTM3MCwgMTA5Mzc0LCAxMDkzNzksIDEwOTM4NCwgMTA5Mzg4LCAxMDkzOTIsIAotICAgIDEwOTM5NSwgMTA5NDAxLCAxMDk0MDcsIDEwOTQxMywgMTA5NDE5LCAxMDk0MjUsIDEwOTQzMSwgMTA5NDM3LCAxMDk0NDMsIAotICAgIDEwOTQ0OSwgMTA5NDU5LCAxMDk0NjksIDEwOTQ3NSwgMTA5NDgxLCAxMDk0OTEsIDEwOTUwMSwgMTA5NTA3LCAwLCAwLCAKLSAgICAxMDk1MTMsIDEwOTUyMSwgMTA5NTI2LCAxMDk1MzEsIDEwOTUzNywgMTA5NTQzLCAxMDk1NDksIDEwOTU1NSwgMTA5NTYxLCAKLSAgICAxMDk1NjcsIDEwOTU3NCwgMTA5NTgxLCAxMDk1ODcsIDEwOTU5MywgMTA5NTk5LCAxMDk2MDUsIDEwOTYxMSwgMTA5NjE3LCAKLSAgICAxMDk2MjMsIDEwOTYyOSwgMTA5NjM0LCAxMDk2NDAsIDEwOTY0NiwgMTA5NjUyLCAxMDk2NTgsIDEwOTY2NCwgMTA5NjczLCAKLSAgICAxMDk2NzksIDEwOTY4NCwgMTA5NjkyLCAxMDk2OTksIDEwOTcwNiwgMTA5NzE1LCAxMDk3MjQsIDEwOTczMywgMTA5NzQyLCAKLSAgICAxMDk3NTEsIDEwOTc2MCwgMTA5NzY5LCAxMDk3NzgsIDEwOTc4OCwgMTA5Nzk4LCAxMDk4MDYsIDEwOTgxNCwgMTA5ODIzLCAKLSAgICAxMDk4MzIsIDEwOTgzOCwgMTA5ODQ0LCAxMDk4NTAsIDEwOTg1NiwgMTA5ODY0LCAxMDk4NzIsIDEwOTg3NiwgMTA5ODgyLCAKLSAgICAxMDk4ODcsIDEwOTg5MywgMTA5ODk5LCAxMDk5MDUsIDEwOTkxMSwgMTA5OTE3LCAxMDk5MjYsIDEwOTkzMSwgMTA5OTM4LCAKLSAgICAxMDk5NDMsIDEwOTk0OCwgMTA5OTUzLCAxMDk5NTksIDEwOTk2NSwgMTA5OTcxLCAxMDk5NzgsIDEwOTk4MywgMTA5OTg4LCAKLSAgICAxMDk5OTMsIDEwOTk5OCwgMTEwMDAzLCAxMTAwMDksIDExMDAxNSwgMTEwMDIxLCAxMTAwMjcsIDExMDAzMywgMTEwMDM5LCAKLSAgICAxMTAwNDUsIDExMDA1MSwgMTEwMDU2LCAxMTAwNjEsIDExMDA2NiwgMTEwMDcxLCAxMTAwNzYsIDExMDA4MSwgMTEwMDg2LCAKLSAgICAxMTAwOTEsIDExMDA5NywgMTEwMTAzLCAxMTAxMDgsIDExMDExMywgMTEwMTE4LCAxMTAxMjMsIDExMDEyOCwgMTEwMTM0LCAKLSAgICAxMTAxNDEsIDExMDE0NSwgMTEwMTQ5LCAxMTAxNTMsIDExMDE1NywgMTEwMTYxLCAxMTAxNjUsIDExMDE2OSwgMTEwMTczLCAKLSAgICAxMTAxODEsIDExMDE5MSwgMTEwMTk1LCAxMTAxOTksIDExMDIwNSwgMTEwMjExLCAxMTAyMTcsIDExMDIyMywgMTEwMjI5LCAKLSAgICAxMTAyMzUsIDExMDI0MSwgMTEwMjQ3LCAxMTAyNTMsIDExMDI1OSwgMTEwMjY1LCAxMTAyNzEsIDExMDI3NywgMTEwMjgzLCAKLSAgICAxMTAyODcsIDExMDI5MSwgMTEwMjk4LCAxMTAzMDQsIDExMDMxMCwgMTEwMzE2LCAxMTAzMjEsIDExMDMyOCwgMTEwMzMzLCAKLSAgICAxMTAzMzksIDExMDM0NSwgMTEwMzUxLCAxMTAzNTcsIDExMDM2MiwgMTEwMzY2LCAxMTAzNzIsIDExMDM3NiwgMTEwMzgwLCAKLSAgICAxMTAzODQsIDExMDM5MCwgMTEwMzk2LCAxMTA0MDAsIDExMDQwNiwgMTEwNDEyLCAxMTA0MTgsIDExMDQyNCwgMTEwNDMwLCAKLSAgICAxMTA0MzgsIDExMDQ0NiwgMTEwNDUyLCAxMTA0NTgsIDExMDQ2NCwgMTEwNDcwLCAxMTA0ODIsIDExMDQ5NCwgMTEwNTA4LCAKLSAgICAxMTA1MjAsIDExMDUzMiwgMTEwNTQ2LCAxMTA1NjAsIDExMDU3NCwgMTEwNTc4LCAxMTA1ODYsIDExMDU5NCwgMTEwNTk5LCAKLSAgICAxMTA2MDMsIDExMDYwNywgMTEwNjExLCAxMTA2MTUsIDExMDYxOSwgMTEwNjIzLCAxMTA2MjcsIDExMDYzMywgMTEwNjM5LCAKLSAgICAxMTA2NDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExMDY1MSwgMTEwNjU3LCAxMTA2NjMsIDExMDY2OSwgCi0gICAgMTEwNjc1LCAxMTA2ODEsIDExMDY4NywgMTEwNjkzLCAxMTA2OTksIDExMDcwNSwgMTEwNzExLCAxMTA3MTcsIDExMDcyMywgCi0gICAgMTEwNzI5LCAxMTA3MzUsIDExMDc0MSwgMTEwNzQ3LCAxMTA3NTMsIDExMDc1OSwgMTEwNzY1LCAxMTA3NzEsIDExMDc3NywgCi0gICAgMTEwNzgzLCAxMTA3ODksIDExMDc5NSwgMTEwODAxLCAxMTA4MDcsIDExMDgxMywgMTEwODE5LCAxMTA4MjUsIDExMDgzMSwgCi0gICAgMTEwODM3LCAxMTA4NDMsIDExMDg0OSwgMTEwODU1LCAxMTA4NjEsIDExMDg2NywgMTEwODczLCAxMTA4NzksIDExMDg4NSwgCi0gICAgMTEwODkxLCAxMTA4OTcsIDExMDkwMywgMTEwOTA5LCAxMTA5MTUsIDExMDkyMSwgMTEwOTI3LCAxMTA5MzMsIDExMDkzOSwgCi0gICAgMTEwOTQ1LCAxMTA5NTEsIDExMDk1NywgMTEwOTYzLCAxMTA5NjksIDExMDk3NSwgMTEwOTgxLCAxMTA5ODcsIDExMDk5MywgCi0gICAgMTEwOTk5LCAxMTEwMDUsIDExMTAxMSwgMTExMDE3LCAxMTEwMjMsIDExMTAyOSwgMTExMDM1LCAxMTEwNDEsIDExMTA0NywgCi0gICAgMTExMDUyLCAxMTEwNTcsIDExMTA2MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTA3NTg5LCAxMDc1OTQsIAorICAgIDEwNzU5OSwgMTA3NjA0LCAxMDc2MTEsIDEwNzYxOCwgMTA3NjI1LCAxMDc2MzIsIDEwNzYzNywgMTA3NjQyLCAxMDc2NDcsIAorICAgIDEwNzY1MiwgMTA3NjU5LCAxMDc2NjQsIDEwNzY3MSwgMTA3Njc4LCAxMDc2ODMsIDEwNzY4OCwgMTA3NjkzLCAxMDc3MDAsIAorICAgIDEwNzcwNSwgMTA3NzEwLCAxMDc3MTcsIDEwNzcyNCwgMTA3NzI5LCAxMDc3MzQsIDEwNzczOSwgMTA3NzQ2LCAxMDc3NTMsIAorICAgIDEwNzc2MCwgMTA3NzY1LCAxMDc3NzAsIDEwNzc3NywgMTA3Nzg0LCAxMDc3OTEsIDEwNzc5OCwgMTA3ODAzLCAxMDc4MDgsIAorICAgIDEwNzgxMywgMTA3ODIwLCAxMDc4MjUsIDEwNzgzMCwgMTA3ODM1LCAxMDc4NDIsIDEwNzg1MSwgMTA3ODU4LCAxMDc4NjMsIAorICAgIDEwNzg2OCwgMTA3ODczLCAxMDc4NzgsIDEwNzg4MywgMTA3ODg4LCAxMDc4OTcsIDEwNzkwNCwgMTA3OTA5LCAxMDc5MTYsIAorICAgIDEwNzkyMywgMTA3OTI4LCAxMDc5MzMsIDEwNzkzOCwgMTA3OTQ1LCAxMDc5NTAsIDEwNzk1NywgMTA3OTY0LCAxMDc5NjksIAorICAgIDEwNzk3NCwgMTA3OTc5LCAxMDc5ODYsIDEwNzk5MywgMTA3OTk4LCAxMDgwMDMsIDEwODAxMCwgMTA4MDE3LCAxMDgwMjQsIAorICAgIDEwODAyOSwgMTA4MDM0LCAxMDgwMzksIDEwODA0NCwgMTA4MDUxLCAxMDgwNjAsIDEwODA2OSwgMTA4MDc0LCAxMDgwODEsIAorICAgIDEwODA5MCwgMTA4MDk1LCAxMDgxMDAsIDEwODEwNSwgMTA4MTEwLCAxMDgxMTcsIDEwODEyNCwgMTA4MTMxLCAxMDgxMzgsIAorICAgIDEwODE0MywgMTA4MTQ4LCAxMDgxNTMsIDEwODE2MCwgMTA4MTY3LCAxMDgxNzQsIDEwODE3OSwgMTA4MTg0LCAxMDgxOTEsIAorICAgIDEwODE5NiwgMTA4MjAzLCAxMDgyMDgsIDEwODIxNSwgMTA4MjIwLCAxMDgyMjcsIDEwODIzNCwgMTA4MjM5LCAxMDgyNDQsIAorICAgIDEwODI0OSwgMTA4MjU0LCAxMDgyNTksIDEwODI2NCwgMTA4MjY5LCAxMDgyNzQsIDEwODI3OSwgMTA4Mjg2LCAxMDgyOTMsIAorICAgIDEwODMwMCwgMTA4MzA3LCAxMDgzMTQsIDEwODMyMywgMTA4MzI4LCAxMDgzMzMsIDEwODM0MCwgMTA4MzQ3LCAxMDgzNTIsIAorICAgIDEwODM1OSwgMTA4MzY2LCAxMDgzNzMsIDEwODM4MCwgMTA4Mzg3LCAxMDgzOTQsIDEwODM5OSwgMTA4NDA0LCAxMDg0MDksIAorICAgIDEwODQxNCwgMTA4NDE5LCAxMDg0MjgsIDEwODQzNywgMTA4NDQ2LCAxMDg0NTUsIDEwODQ2NCwgMTA4NDczLCAxMDg0ODIsIAorICAgIDEwODQ5MSwgMTA4NDk2LCAxMDg1MDcsIDEwODUxOCwgMTA4NTI3LCAxMDg1MzIsIDEwODUzNywgMTA4NTQyLCAxMDg1NDcsIAorICAgIDEwODU1NiwgMTA4NTYzLCAxMDg1NzAsIDEwODU3NywgMTA4NTg0LCAxMDg1OTEsIDEwODU5OCwgMTA4NjA3LCAxMDg2MTYsIAorICAgIDEwODYyNywgMTA4NjM2LCAxMDg2NDcsIDEwODY1NiwgMTA4NjYzLCAxMDg2NzIsIDEwODY4MywgMTA4NjkyLCAxMDg3MDEsIAorICAgIDEwODcxMCwgMTA4NzE5LCAxMDg3MjYsIDEwODczMywgMTA4NzQwLCAxMDg3NDksIDEwODc1OCwgMTA4NzY5LCAxMDg3NzgsIAorICAgIDEwODc4NywgMTA4Nzk4LCAxMDg4MDMsIDEwODgwOCwgMTA4ODE5LCAxMDg4MjcsIDEwODgzNiwgMTA4ODQ1LCAxMDg4NTQsIAorICAgIDEwODg2NSwgMTA4ODc0LCAxMDg4ODMsIDEwODg5NCwgMTA4OTA1LCAxMDg5MTYsIDEwODkyNywgMTA4OTM4LCAxMDg5NDksIAorICAgIDEwODk1NiwgMTA4OTYzLCAxMDg5NzAsIDEwODk3NywgMTA4OTg4LCAxMDg5OTcsIDEwOTAwNCwgMTA5MDExLCAxMDkwMTgsIAorICAgIDEwOTAyOSwgMTA5MDQwLCAxMDkwNTEsIDEwOTA2MiwgMTA5MDczLCAxMDkwODQsIDEwOTA5NSwgMTA5MTA2LCAxMDkxMTMsIAorICAgIDEwOTEyMCwgMTA5MTI5LCAxMDkxMzgsIDEwOTE0NSwgMTA5MTUyLCAxMDkxNTksIDEwOTE2OCwgMTA5MTc3LCAxMDkxODYsIAorICAgIDEwOTE5MywgMTA5MjAyLCAxMDkyMTEsIDEwOTIyMCwgMTA5MjI3LCAxMDkyMzQsIDEwOTIzOSwgMTA5MjQ1LCAxMDkyNTIsIAorICAgIDEwOTI1OSwgMTA5MjY2LCAxMDkyNzMsIDEwOTI4MCwgMTA5Mjg3LCAxMDkyOTYsIDEwOTMwNSwgMTA5MzE0LCAxMDkzMjMsIAorICAgIDEwOTMzMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTA5MzM5LCAxMDkzNDUsIDEwOTM1MCwgMTA5MzU1LCAKKyAgICAxMDkzNjIsIDEwOTM2OCwgMTA5Mzc0LCAxMDkzODAsIDEwOTM4NiwgMTA5MzkyLCAxMDkzOTgsIDEwOTQwNCwgMTA5NDA4LCAKKyAgICAxMDk0MTIsIDEwOTQxOCwgMTA5NDI0LCAxMDk0MzAsIDEwOTQzNCwgMTA5NDM5LCAxMDk0NDQsIDEwOTQ0OCwgMTA5NDUyLCAKKyAgICAxMDk0NTUsIDEwOTQ2MSwgMTA5NDY3LCAxMDk0NzMsIDEwOTQ3OSwgMTA5NDg1LCAxMDk0OTEsIDEwOTQ5NywgMTA5NTAzLCAKKyAgICAxMDk1MDksIDEwOTUxOSwgMTA5NTI5LCAxMDk1MzUsIDEwOTU0MSwgMTA5NTUxLCAxMDk1NjEsIDEwOTU2NywgMCwgMCwgCisgICAgMTA5NTczLCAxMDk1ODEsIDEwOTU4NiwgMTA5NTkxLCAxMDk1OTcsIDEwOTYwMywgMTA5NjA5LCAxMDk2MTUsIDEwOTYyMSwgCisgICAgMTA5NjI3LCAxMDk2MzQsIDEwOTY0MSwgMTA5NjQ3LCAxMDk2NTMsIDEwOTY1OSwgMTA5NjY1LCAxMDk2NzEsIDEwOTY3NywgCisgICAgMTA5NjgzLCAxMDk2ODksIDEwOTY5NCwgMTA5NzAwLCAxMDk3MDYsIDEwOTcxMiwgMTA5NzE4LCAxMDk3MjQsIDEwOTczMywgCisgICAgMTA5NzM5LCAxMDk3NDQsIDEwOTc1MiwgMTA5NzU5LCAxMDk3NjYsIDEwOTc3NSwgMTA5Nzg0LCAxMDk3OTMsIDEwOTgwMiwgCisgICAgMTA5ODExLCAxMDk4MjAsIDEwOTgyOSwgMTA5ODM4LCAxMDk4NDgsIDEwOTg1OCwgMTA5ODY2LCAxMDk4NzQsIDEwOTg4MywgCisgICAgMTA5ODkyLCAxMDk4OTgsIDEwOTkwNCwgMTA5OTEwLCAxMDk5MTYsIDEwOTkyNCwgMTA5OTMyLCAxMDk5MzYsIDEwOTk0MiwgCisgICAgMTA5OTQ3LCAxMDk5NTMsIDEwOTk1OSwgMTA5OTY1LCAxMDk5NzEsIDEwOTk3NywgMTA5OTg2LCAxMDk5OTEsIDEwOTk5OCwgCisgICAgMTEwMDAzLCAxMTAwMDgsIDExMDAxMywgMTEwMDE5LCAxMTAwMjUsIDExMDAzMSwgMTEwMDM4LCAxMTAwNDMsIDExMDA0OCwgCisgICAgMTEwMDUzLCAxMTAwNTgsIDExMDA2MywgMTEwMDY5LCAxMTAwNzUsIDExMDA4MSwgMTEwMDg3LCAxMTAwOTMsIDExMDA5OSwgCisgICAgMTEwMTA1LCAxMTAxMTEsIDExMDExNiwgMTEwMTIxLCAxMTAxMjYsIDExMDEzMSwgMTEwMTM2LCAxMTAxNDEsIDExMDE0NiwgCisgICAgMTEwMTUxLCAxMTAxNTcsIDExMDE2MywgMTEwMTY4LCAxMTAxNzMsIDExMDE3OCwgMTEwMTgzLCAxMTAxODgsIDExMDE5NCwgCisgICAgMTEwMjAxLCAxMTAyMDUsIDExMDIwOSwgMTEwMjEzLCAxMTAyMTcsIDExMDIyMSwgMTEwMjI1LCAxMTAyMjksIDExMDIzMywgCisgICAgMTEwMjQxLCAxMTAyNTEsIDExMDI1NSwgMTEwMjU5LCAxMTAyNjUsIDExMDI3MSwgMTEwMjc3LCAxMTAyODMsIDExMDI4OSwgCisgICAgMTEwMjk1LCAxMTAzMDEsIDExMDMwNywgMTEwMzEzLCAxMTAzMTksIDExMDMyNSwgMTEwMzMxLCAxMTAzMzcsIDExMDM0MywgCisgICAgMTEwMzQ3LCAxMTAzNTEsIDExMDM1OCwgMTEwMzY0LCAxMTAzNzAsIDExMDM3NiwgMTEwMzgxLCAxMTAzODgsIDExMDM5MywgCisgICAgMTEwMzk5LCAxMTA0MDUsIDExMDQxMSwgMTEwNDE3LCAxMTA0MjIsIDExMDQyNiwgMTEwNDMyLCAxMTA0MzYsIDExMDQ0MCwgCisgICAgMTEwNDQ0LCAxMTA0NTAsIDExMDQ1NiwgMTEwNDYwLCAxMTA0NjYsIDExMDQ3MiwgMTEwNDc4LCAxMTA0ODQsIDExMDQ5MCwgCisgICAgMTEwNDk4LCAxMTA1MDYsIDExMDUxMiwgMTEwNTE4LCAxMTA1MjQsIDExMDUzMCwgMTEwNTQyLCAxMTA1NTQsIDExMDU2OCwgCisgICAgMTEwNTgwLCAxMTA1OTIsIDExMDYwNiwgMTEwNjIwLCAxMTA2MzQsIDExMDYzOCwgMTEwNjQ2LCAxMTA2NTQsIDExMDY1OSwgCisgICAgMTEwNjYzLCAxMTA2NjcsIDExMDY3MSwgMTEwNjc1LCAxMTA2NzksIDExMDY4MywgMTEwNjg3LCAxMTA2OTMsIDExMDY5OSwgCisgICAgMTEwNzA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTA3MTEsIDExMDcxNywgMTEwNzIzLCAxMTA3MjksIAorICAgIDExMDczNSwgMTEwNzQxLCAxMTA3NDcsIDExMDc1MywgMTEwNzU5LCAxMTA3NjUsIDExMDc3MSwgMTEwNzc3LCAxMTA3ODMsIAorICAgIDExMDc4OSwgMTEwNzk1LCAxMTA4MDEsIDExMDgwNywgMTEwODEzLCAxMTA4MTksIDExMDgyNSwgMTEwODMxLCAxMTA4MzcsIAorICAgIDExMDg0MywgMTEwODQ5LCAxMTA4NTUsIDExMDg2MSwgMTEwODY3LCAxMTA4NzMsIDExMDg3OSwgMTEwODg1LCAxMTA4OTEsIAorICAgIDExMDg5NywgMTEwOTAzLCAxMTA5MDksIDExMDkxNSwgMTEwOTIxLCAxMTA5MjcsIDExMDkzMywgMTEwOTM5LCAxMTA5NDUsIAorICAgIDExMDk1MSwgMTEwOTU3LCAxMTA5NjMsIDExMDk2OSwgMTEwOTc1LCAxMTA5ODEsIDExMDk4NywgMTEwOTkzLCAxMTA5OTksIAorICAgIDExMTAwNSwgMTExMDExLCAxMTEwMTcsIDExMTAyMywgMTExMDI5LCAxMTEwMzUsIDExMTA0MSwgMTExMDQ3LCAxMTEwNTMsIAorICAgIDExMTA1OSwgMTExMDY1LCAxMTEwNzEsIDExMTA3NywgMTExMDgzLCAxMTEwODksIDExMTA5NSwgMTExMTAxLCAxMTExMDcsIAorICAgIDExMTExMiwgMTExMTE3LCAxMTExMjIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExMTA2NiwgMTExMDcxLCAKLSAgICAxMTEwNzgsIDExMTA4NSwgMTExMDkyLCAxMTEwOTksIDExMTEwNCwgMTExMTA4LCAxMTExMTQsIDExMTExOCwgMTExMTIyLCAKLSAgICAxMTExMjgsIDExMTEzMiwgMTExMTM2LCAxMTExNDAsIDExMTE0NiwgMTExMTUzLCAxMTExNTcsIDExMTE2MSwgMTExMTY1LCAKLSAgICAxMTExNjksIDExMTE3MywgMTExMTc3LCAxMTExODMsIDExMTE4NywgMTExMTkxLCAxMTExOTUsIDExMTE5OSwgMTExMjAzLCAKLSAgICAxMTEyMDcsIDExMTIxMSwgMTExMjE1LCAxMTEyMTksIDExMTIyMywgMTExMjI3LCAxMTEyMzEsIDExMTIzNiwgMTExMjQwLCAKLSAgICAxMTEyNDQsIDExMTI0OCwgMTExMjUyLCAxMTEyNTYsIDExMTI2MCwgMTExMjY0LCAxMTEyNjgsIDExMTI3MiwgMTExMjc5LCAKLSAgICAxMTEyODMsIDExMTI5MSwgMTExMjk1LCAxMTEyOTksIDExMTMwMywgMTExMzA3LCAxMTEzMTEsIDExMTMxNSwgMTExMzE5LCAKLSAgICAxMTEzMjYsIDExMTMzMCwgMTExMzM0LCAxMTEzMzgsIDExMTM0MiwgMTExMzQ2LCAxMTEzNTIsIDExMTM1NiwgMTExMzYyLCAKLSAgICAxMTEzNjYsIDExMTM3MCwgMTExMzc0LCAxMTEzNzgsIDExMTM4MiwgMTExMzg2LCAxMTEzOTAsIDExMTM5NCwgMTExMzk4LCAKLSAgICAxMTE0MDIsIDExMTQwNiwgMTExNDEwLCAxMTE0MTQsIDExMTQxOCwgMTExNDIyLCAxMTE0MjYsIDExMTQzMCwgMTExNDM0LCAKLSAgICAxMTE0MzgsIDExMTQ0NiwgMTExNDUwLCAxMTE0NTQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExMTQ1OCwgCi0gICAgMTExNDY2LCAxMTE0NzQsIDExMTQ4MiwgMTExNDkwLCAxMTE0OTgsIDExMTUwNiwgMTExNTE0LCAxMTE1MjIsIDExMTUzMCwgCi0gICAgMTExNTM4LCAxMTE1NDYsIDExMTU1NCwgMTExNTYyLCAxMTE1NzAsIDExMTU3OCwgMTExNTg2LCAxMTE1OTQsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExMTYwMiwgMTExNjA2LCAxMTE2MTEsIDExMTYxNiwgMTExNjIxLCAKLSAgICAxMTE2MjUsIDExMTYzMCwgMTExNjM1LCAxMTE2NDAsIDExMTY0NCwgMTExNjQ5LCAxMTE2NTQsIDExMTY1OCwgMTExNjYyLCAKLSAgICAxMTE2NjYsIDExMTY3MCwgMTExNjc1LCAxMTE2ODAsIDExMTY4NCwgMTExNjg4LCAxMTE2OTMsIDExMTY5NywgMTExNzAyLCAKLSAgICAxMTE3MDcsIDExMTcxMiwgMTExNzE3LCAxMTE3MjIsIDExMTcyNiwgMTExNzMxLCAxMTE3MzYsIDExMTc0MSwgMTExNzQ1LCAKLSAgICAxMTE3NTAsIDExMTc1NSwgMTExNzYwLCAxMTE3NjQsIDExMTc2OSwgMTExNzc0LCAxMTE3NzgsIDExMTc4MiwgMTExNzg2LCAKLSAgICAxMTE3OTAsIDExMTc5NSwgMTExODAwLCAxMTE4MDQsIDExMTgwOCwgMTExODEzLCAxMTE4MTcsIDExMTgyMiwgMTExODI3LCAKLSAgICAxMTE4MzIsIDExMTgzNywgMTExODQyLCAxMTE4NDYsIDExMTg1MSwgMTExODU2LCAxMTE4NjEsIDExMTg2NSwgMTExODcwLCAKLSAgICAxMTE4NzUsIDExMTg4MCwgMTExODg0LCAxMTE4ODksIDExMTg5NCwgMTExODk4LCAxMTE5MDIsIDExMTkwNiwgMTExOTEwLCAKLSAgICAxMTE5MTUsIDExMTkyMCwgMTExOTI0LCAxMTE5MjgsIDExMTkzMywgMTExOTM3LCAxMTE5NDIsIDExMTk0NywgMTExOTUyLCAKLSAgICAxMTE5NTcsIDExMTk2MiwgMTExOTY2LCAxMTE5NzEsIDExMTk3NiwgMTExOTgxLCAxMTE5ODUsIDExMTk5MCwgMCwgCi0gICAgMTExOTk1LCAxMTE5OTksIDExMjAwNCwgMTEyMDA5LCAxMTIwMTMsIDExMjAxNywgMTEyMDIxLCAxMTIwMjUsIDExMjAzMCwgCi0gICAgMTEyMDM1LCAxMTIwMzksIDExMjA0MywgMTEyMDQ4LCAxMTIwNTIsIDExMjA1NywgMTEyMDYyLCAxMTIwNjcsIDExMjA3MiwgCi0gICAgMTEyMDc3LCAxMTIwODIsIDExMjA4OCwgMTEyMDk0LCAxMTIxMDAsIDExMjEwNSwgMTEyMTExLCAxMTIxMTcsIDExMjEyMywgCi0gICAgMTEyMTI4LCAxMTIxMzQsIDExMjE0MCwgMTEyMTQ1LCAxMTIxNTAsIDExMjE1NSwgMTEyMTYwLCAxMTIxNjYsIDExMjE3MiwgCi0gICAgMTEyMTc3LCAxMTIxODIsIDExMjE4OCwgMTEyMTkzLCAxMTIxOTksIDExMjIwNSwgMTEyMjExLCAxMTIyMTcsIDExMjIyMywgCi0gICAgMTEyMjI4LCAxMTIyMzQsIDExMjI0MCwgMTEyMjQ2LCAxMTIyNTEsIDExMjI1NywgMTEyMjYzLCAxMTIyNjksIDExMjI3NCwgCi0gICAgMTEyMjgwLCAxMTIyODYsIDExMjI5MSwgMTEyMjk2LCAxMTIzMDEsIDExMjMwNiwgMTEyMzEyLCAxMTIzMTgsIDExMjMyMywgCi0gICAgMTEyMzI4LCAxMTIzMzQsIDExMjMzOSwgMTEyMzQ1LCAxMTIzNTEsIDExMjM1NywgMTEyMzYzLCAxMTIzNjksIDAsIAotICAgIDExMjM3MywgMTEyMzc4LCAwLCAwLCAxMTIzODMsIDAsIDAsIDExMjM4OCwgMTEyMzkzLCAwLCAwLCAxMTIzOTgsIDExMjQwMiwgCi0gICAgMTEyNDA2LCAxMTI0MTEsIDAsIDExMjQxNiwgMTEyNDIwLCAxMTI0MjUsIDExMjQyOSwgMTEyNDM0LCAxMTI0MzksIAotICAgIDExMjQ0NCwgMTEyNDQ5LCAxMTI0NTQsIDExMjQ1OCwgMTEyNDYzLCAxMTI0NjgsIDAsIDExMjQ3MywgMCwgMTEyNDc4LCAKLSAgICAxMTI0ODMsIDExMjQ4NywgMTEyNDkyLCAxMTI0OTcsIDExMjUwMSwgMTEyNTA1LCAwLCAxMTI1MDksIDExMjUxNCwgCi0gICAgMTEyNTE5LCAxMTI1MjMsIDExMjUyNywgMTEyNTMyLCAxMTI1MzYsIDExMjU0MSwgMTEyNTQ2LCAxMTI1NTEsIDExMjU1NiwgCi0gICAgMTEyNTYxLCAxMTI1NjYsIDExMjU3MiwgMTEyNTc4LCAxMTI1ODQsIDExMjU4OSwgMTEyNTk1LCAxMTI2MDEsIDExMjYwNywgCi0gICAgMTEyNjEyLCAxMTI2MTgsIDExMjYyNCwgMTEyNjI5LCAxMTI2MzQsIDExMjYzOSwgMTEyNjQ0LCAxMTI2NTAsIDExMjY1NiwgCi0gICAgMTEyNjYxLCAxMTI2NjYsIDExMjY3MiwgMTEyNjc3LCAxMTI2ODMsIDExMjY4OSwgMTEyNjk1LCAxMTI3MDEsIDExMjcwNywgCi0gICAgMTEyNzEyLCAxMTI3MTgsIDExMjcyNCwgMTEyNzMwLCAxMTI3MzUsIDExMjc0MSwgMTEyNzQ3LCAxMTI3NTMsIDExMjc1OCwgCi0gICAgMTEyNzY0LCAxMTI3NzAsIDExMjc3NSwgMTEyNzgwLCAxMTI3ODUsIDExMjc5MCwgMTEyNzk2LCAxMTI4MDIsIDExMjgwNywgCi0gICAgMTEyODEyLCAxMTI4MTgsIDExMjgyMywgMTEyODI5LCAxMTI4MzUsIDExMjg0MSwgMTEyODQ3LCAxMTI4NTMsIDExMjg1NywgCi0gICAgMCwgMTEyODYyLCAxMTI4NjcsIDExMjg3MSwgMTEyODc2LCAwLCAwLCAxMTI4ODEsIDExMjg4NiwgMTEyODkxLCAxMTI4OTUsIAotICAgIDExMjg5OSwgMTEyOTAzLCAxMTI5MDcsIDExMjkxMiwgMCwgMTEyOTE3LCAxMTI5MjEsIDExMjkyNiwgMTEyOTMwLCAKLSAgICAxMTI5MzUsIDExMjk0MCwgMTEyOTQ1LCAwLCAxMTI5NTAsIDExMjk1NCwgMTEyOTU5LCAxMTI5NjQsIDExMjk2OSwgCi0gICAgMTEyOTczLCAxMTI5NzgsIDExMjk4MywgMTEyOTg4LCAxMTI5OTIsIDExMjk5NywgMTEzMDAyLCAxMTMwMDYsIDExMzAxMCwgCi0gICAgMTEzMDE0LCAxMTMwMTgsIDExMzAyMywgMTEzMDI4LCAxMTMwMzIsIDExMzAzNiwgMTEzMDQxLCAxMTMwNDUsIDExMzA1MCwgCi0gICAgMTEzMDU1LCAxMTMwNjAsIDExMzA2NSwgMTEzMDcwLCAxMTMwNzQsIDAsIDExMzA3OSwgMTEzMDg0LCAxMTMwODgsIAotICAgIDExMzA5MywgMCwgMTEzMDk4LCAxMTMxMDIsIDExMzEwNywgMTEzMTEyLCAxMTMxMTYsIDAsIDExMzEyMCwgMCwgMCwgMCwgCi0gICAgMTEzMTI0LCAxMTMxMjgsIDExMzEzMywgMTEzMTM3LCAxMTMxNDIsIDExMzE0NywgMTEzMTUyLCAwLCAxMTMxNTcsIAotICAgIDExMzE2MSwgMTEzMTY2LCAxMTMxNzEsIDExMzE3NiwgMTEzMTgwLCAxMTMxODUsIDExMzE5MCwgMTEzMTk1LCAxMTMxOTksIAotICAgIDExMzIwNCwgMTEzMjA5LCAxMTMyMTMsIDExMzIxNywgMTEzMjIxLCAxMTMyMjUsIDExMzIzMCwgMTEzMjM1LCAxMTMyMzksIAotICAgIDExMzI0MywgMTEzMjQ4LCAxMTMyNTIsIDExMzI1NywgMTEzMjYyLCAxMTMyNjcsIDExMzI3MiwgMTEzMjc3LCAxMTMyODIsIAotICAgIDExMzI4OCwgMTEzMjk0LCAxMTMzMDAsIDExMzMwNSwgMTEzMzExLCAxMTMzMTcsIDExMzMyMywgMTEzMzI4LCAxMTMzMzQsIAotICAgIDExMzM0MCwgMTEzMzQ1LCAxMTMzNTAsIDExMzM1NSwgMTEzMzYwLCAxMTMzNjYsIDExMzM3MiwgMTEzMzc3LCAxMTMzODIsIAotICAgIDExMzM4OCwgMTEzMzkzLCAxMTMzOTksIDExMzQwNSwgMTEzNDExLCAxMTM0MTcsIDExMzQyMywgMTEzNDI4LCAxMTM0MzQsIAotICAgIDExMzQ0MCwgMTEzNDQ2LCAxMTM0NTEsIDExMzQ1NywgMTEzNDYzLCAxMTM0NjksIDExMzQ3NCwgMTEzNDgwLCAxMTM0ODYsIAotICAgIDExMzQ5MSwgMTEzNDk2LCAxMTM1MDEsIDExMzUwNiwgMTEzNTEyLCAxMTM1MTgsIDExMzUyMywgMTEzNTI4LCAxMTM1MzQsIAotICAgIDExMzUzOSwgMTEzNTQ1LCAxMTM1NTEsIDExMzU1NywgMTEzNTYzLCAxMTM1NjksIDExMzU3MywgMTEzNTc4LCAxMTM1ODMsIAotICAgIDExMzU4OCwgMTEzNTkyLCAxMTM1OTcsIDExMzYwMiwgMTEzNjA3LCAxMTM2MTEsIDExMzYxNiwgMTEzNjIxLCAxMTM2MjUsIAotICAgIDExMzYyOSwgMTEzNjMzLCAxMTM2MzcsIDExMzY0MiwgMTEzNjQ3LCAxMTM2NTEsIDExMzY1NSwgMTEzNjYwLCAxMTM2NjQsIAotICAgIDExMzY2OSwgMTEzNjc0LCAxMTM2NzksIDExMzY4NCwgMTEzNjg5LCAxMTM2OTMsIDExMzY5OCwgMTEzNzAzLCAxMTM3MDgsIAotICAgIDExMzcxMiwgMTEzNzE3LCAxMTM3MjIsIDExMzcyNywgMTEzNzMxLCAxMTM3MzYsIDExMzc0MSwgMTEzNzQ1LCAxMTM3NDksIAotICAgIDExMzc1MywgMTEzNzU3LCAxMTM3NjIsIDExMzc2NywgMTEzNzcxLCAxMTM3NzUsIDExMzc4MCwgMTEzNzg0LCAxMTM3ODksIAotICAgIDExMzc5NCwgMTEzNzk5LCAxMTM4MDQsIDExMzgwOSwgMTEzODE0LCAxMTM4MjAsIDExMzgyNiwgMTEzODMyLCAxMTM4MzcsIAotICAgIDExMzg0MywgMTEzODQ5LCAxMTM4NTUsIDExMzg2MCwgMTEzODY2LCAxMTM4NzIsIDExMzg3NywgMTEzODgyLCAxMTM4ODcsIAotICAgIDExMzg5MiwgMTEzODk4LCAxMTM5MDQsIDExMzkwOSwgMTEzOTE0LCAxMTM5MjAsIDExMzkyNSwgMTEzOTMxLCAxMTM5MzcsIAotICAgIDExMzk0MywgMTEzOTQ5LCAxMTM5NTUsIDExMzk2MCwgMTEzOTY2LCAxMTM5NzIsIDExMzk3OCwgMTEzOTgzLCAxMTM5ODksIAotICAgIDExMzk5NSwgMTE0MDAxLCAxMTQwMDYsIDExNDAxMiwgMTE0MDE4LCAxMTQwMjMsIDExNDAyOCwgMTE0MDMzLCAxMTQwMzgsIAotICAgIDExNDA0NCwgMTE0MDUwLCAxMTQwNTUsIDExNDA2MCwgMTE0MDY2LCAxMTQwNzEsIDExNDA3NywgMTE0MDgzLCAxMTQwODksIAotICAgIDExNDA5NSwgMTE0MTAxLCAxMTQxMDYsIDExNDExMiwgMTE0MTE4LCAxMTQxMjQsIDExNDEyOSwgMTE0MTM1LCAxMTQxNDEsIAotICAgIDExNDE0NywgMTE0MTUyLCAxMTQxNTgsIDExNDE2NCwgMTE0MTY5LCAxMTQxNzQsIDExNDE3OSwgMTE0MTg0LCAxMTQxOTAsIAotICAgIDExNDE5NiwgMTE0MjAxLCAxMTQyMDYsIDExNDIxMiwgMTE0MjE3LCAxMTQyMjMsIDExNDIyOSwgMTE0MjM1LCAxMTQyNDEsIAotICAgIDExNDI0NywgMTE0MjUyLCAxMTQyNTgsIDExNDI2NCwgMTE0MjcwLCAxMTQyNzUsIDExNDI4MSwgMTE0Mjg3LCAxMTQyOTMsIAotICAgIDExNDI5OCwgMTE0MzA0LCAxMTQzMTAsIDExNDMxNSwgMTE0MzIwLCAxMTQzMjUsIDExNDMzMCwgMTE0MzM2LCAxMTQzNDIsIAotICAgIDExNDM0NywgMTE0MzUyLCAxMTQzNTgsIDExNDM2MywgMTE0MzY5LCAxMTQzNzUsIDExNDM4MSwgMTE0Mzg3LCAxMTQzOTMsIAotICAgIDExNDM5OSwgMTE0NDA2LCAxMTQ0MTMsIDExNDQyMCwgMTE0NDI2LCAxMTQ0MzMsIDExNDQ0MCwgMTE0NDQ3LCAxMTQ0NTMsIAotICAgIDExNDQ2MCwgMTE0NDY3LCAxMTQ0NzMsIDExNDQ3OSwgMTE0NDg1LCAxMTQ0OTEsIDExNDQ5OCwgMTE0NTA1LCAxMTQ1MTEsIAotICAgIDExNDUxNywgMTE0NTI0LCAxMTQ1MzAsIDExNDUzNywgMTE0NTQ0LCAxMTQ1NTEsIDExNDU1OCwgMTE0NTY1LCAxMTQ1NzEsIAotICAgIDExNDU3OCwgMTE0NTg1LCAxMTQ1OTIsIDExNDU5OCwgMTE0NjA1LCAxMTQ2MTIsIDExNDYxOSwgMTE0NjI1LCAxMTQ2MzIsIAotICAgIDExNDYzOSwgMTE0NjQ1LCAxMTQ2NTEsIDExNDY1NywgMTE0NjYzLCAxMTQ2NzAsIDExNDY3NywgMTE0NjgzLCAxMTQ2ODksIAotICAgIDExNDY5NiwgMTE0NzAyLCAxMTQ3MDksIDExNDcxNiwgMTE0NzIzLCAxMTQ3MzAsIDExNDczNywgMTE0NzQyLCAxMTQ3NDgsIAotICAgIDExNDc1NCwgMTE0NzYwLCAxMTQ3NjUsIDExNDc3MSwgMTE0Nzc3LCAxMTQ3ODMsIDExNDc4OCwgMTE0Nzk0LCAxMTQ4MDAsIAotICAgIDExNDgwNSwgMTE0ODEwLCAxMTQ4MTUsIDExNDgyMCwgMTE0ODI2LCAxMTQ4MzIsIDExNDgzNywgMTE0ODQyLCAxMTQ4NDgsIAotICAgIDExNDg1MywgMTE0ODU5LCAxMTQ4NjUsIDExNDg3MSwgMTE0ODc3LCAxMTQ4ODMsIDExNDg4OCwgMTE0ODk0LCAxMTQ5MDAsIAotICAgIDExNDkwNiwgMTE0OTExLCAxMTQ5MTcsIDExNDkyMywgMTE0OTI5LCAxMTQ5MzQsIDExNDk0MCwgMTE0OTQ2LCAxMTQ5NTEsIAotICAgIDExNDk1NiwgMTE0OTYxLCAxMTQ5NjYsIDExNDk3MiwgMTE0OTc4LCAxMTQ5ODMsIDExNDk4OCwgMTE0OTk0LCAxMTQ5OTksIAotICAgIDExNTAwNSwgMTE1MDExLCAxMTUwMTcsIDExNTAyMywgMTE1MDI5LCAxMTUwMzUsIDAsIDAsIDExNTA0MiwgMTE1MDQ3LCAKLSAgICAxMTUwNTIsIDExNTA1NywgMTE1MDYyLCAxMTUwNjcsIDExNTA3MiwgMTE1MDc3LCAxMTUwODIsIDExNTA4NywgMTE1MDkyLCAKLSAgICAxMTUwOTcsIDExNTEwMiwgMTE1MTA3LCAxMTUxMTIsIDExNTExNywgMTE1MTIyLCAxMTUxMjcsIDExNTEzMywgMTE1MTM4LCAKLSAgICAxMTUxNDMsIDExNTE0OCwgMTE1MTUzLCAxMTUxNTgsIDExNTE2MywgMTE1MTY4LCAxMTUxNzIsIDExNTE3NywgMTE1MTgyLCAKLSAgICAxMTUxODcsIDExNTE5MiwgMTE1MTk3LCAxMTUyMDIsIDExNTIwNywgMTE1MjEyLCAxMTUyMTcsIDExNTIyMiwgMTE1MjI3LCAKLSAgICAxMTUyMzIsIDExNTIzNywgMTE1MjQyLCAxMTUyNDcsIDExNTI1MiwgMTE1MjU3LCAxMTUyNjMsIDExNTI2OCwgMTE1MjczLCAKLSAgICAxMTUyNzgsIDExNTI4MywgMTE1Mjg4LCAxMTUyOTMsIDExNTI5OCwgMTE1MzA0LCAxMTUzMDksIDExNTMxNCwgMTE1MzE5LCAKLSAgICAxMTUzMjQsIDExNTMyOSwgMTE1MzM0LCAxMTUzMzksIDExNTM0NCwgMTE1MzQ5LCAxMTUzNTQsIDExNTM1OSwgMTE1MzY0LCAKLSAgICAxMTUzNjksIDExNTM3NCwgMTE1Mzc5LCAxMTUzODQsIDExNTM4OSwgMTE1Mzk0LCAxMTUzOTksIDExNTQwNCwgMTE1NDA5LCAKLSAgICAxMTU0MTQsIDExNTQxOSwgMTE1NDI1LCAxMTU0MzAsIDExNTQzNSwgMTE1NDQwLCAxMTU0NDUsIDExNTQ1MCwgMTE1NDU1LCAKLSAgICAxMTU0NjAsIDExNTQ2NCwgMTE1NDY5LCAxMTU0NzQsIDExNTQ3OSwgMTE1NDg0LCAxMTU0ODksIDExNTQ5NCwgMTE1NDk5LCAKLSAgICAxMTU1MDQsIDExNTUwOSwgMTE1NTE0LCAxMTU1MTksIDExNTUyNCwgMTE1NTI5LCAxMTU1MzQsIDExNTUzOSwgMTE1NTQ0LCAKLSAgICAxMTU1NDksIDExNTU1NSwgMTE1NTYwLCAxMTU1NjUsIDExNTU3MCwgMTE1NTc1LCAxMTU1ODAsIDExNTU4NSwgMTE1NTkwLCAKLSAgICAxMTU1OTYsIDExNTYwMSwgMTE1NjA2LCAxMTU2MTEsIDExNTYxNiwgMTE1NjIxLCAxMTU2MjYsIDExNTYzMiwgMTE1NjM4LCAKLSAgICAxMTU2NDQsIDExNTY1MCwgMTE1NjU2LCAxMTU2NjIsIDExNTY2OCwgMTE1Njc0LCAxMTU2ODAsIDExNTY4NiwgMTE1NjkyLCAKLSAgICAxMTU2OTgsIDExNTcwNCwgMTE1NzEwLCAxMTU3MTYsIDExNTcyMiwgMTE1NzI4LCAxMTU3MzUsIDExNTc0MSwgMTE1NzQ3LCAKLSAgICAxMTU3NTMsIDExNTc1OSwgMTE1NzY1LCAxMTU3NzEsIDExNTc3NywgMTE1NzgyLCAxMTU3ODgsIDExNTc5NCwgMTE1ODAwLCAKLSAgICAxMTU4MDYsIDExNTgxMiwgMTE1ODE4LCAxMTU4MjQsIDExNTgzMCwgMTE1ODM2LCAxMTU4NDIsIDExNTg0OCwgMTE1ODU0LCAKLSAgICAxMTU4NjAsIDExNTg2NiwgMTE1ODcyLCAxMTU4NzgsIDExNTg4NCwgMTE1ODkxLCAxMTU4OTcsIDExNTkwMywgMTE1OTA5LCAKLSAgICAxMTU5MTUsIDExNTkyMSwgMTE1OTI3LCAxMTU5MzMsIDExNTk0MCwgMTE1OTQ2LCAxMTU5NTIsIDExNTk1OCwgMTE1OTY0LCAKLSAgICAxMTU5NzAsIDExNTk3NiwgMTE1OTgyLCAxMTU5ODgsIDExNTk5NCwgMTE2MDAwLCAxMTYwMDYsIDExNjAxMiwgMTE2MDE4LCAKLSAgICAxMTYwMjQsIDExNjAzMCwgMTE2MDM2LCAxMTYwNDIsIDExNjA0OCwgMTE2MDU0LCAxMTYwNjAsIDExNjA2NiwgMTE2MDcyLCAKLSAgICAxMTYwNzgsIDExNjA4NSwgMTE2MDkxLCAxMTYwOTcsIDExNjEwMywgMTE2MTA5LCAxMTYxMTUsIDExNjEyMSwgMTE2MTI3LCAKLSAgICAxMTYxMzIsIDExNjEzOCwgMTE2MTQ0LCAxMTYxNTAsIDExNjE1NiwgMTE2MTYyLCAxMTYxNjgsIDExNjE3NCwgMTE2MTgwLCAKLSAgICAxMTYxODYsIDExNjE5MiwgMTE2MTk4LCAxMTYyMDQsIDExNjIxMCwgMTE2MjE2LCAxMTYyMjIsIDExNjIyOCwgMTE2MjM0LCAKLSAgICAxMTYyNDEsIDExNjI0NywgMTE2MjUzLCAxMTYyNTksIDExNjI2NSwgMTE2MjcxLCAxMTYyNzcsIDExNjI4MywgMTE2MjkwLCAKLSAgICAxMTYyOTYsIDExNjMwMiwgMTE2MzA4LCAxMTYzMTQsIDExNjMyMCwgMTE2MzI2LCAxMTYzMzMsIDExNjM0MCwgMTE2MzQ3LCAKLSAgICAxMTYzNTQsIDExNjM2MSwgMTE2MzY4LCAxMTYzNzUsIDExNjM4MiwgMTE2Mzg5LCAxMTYzOTYsIDExNjQwMywgMTE2NDEwLCAKLSAgICAxMTY0MTcsIDExNjQyNCwgMTE2NDMxLCAxMTY0MzgsIDExNjQ0NSwgMTE2NDUzLCAxMTY0NjAsIDExNjQ2NywgMTE2NDc0LCAKLSAgICAxMTY0ODEsIDExNjQ4OCwgMTE2NDk1LCAxMTY1MDIsIDExNjUwOCwgMTE2NTE1LCAxMTY1MjIsIDExNjUyOSwgMTE2NTM2LCAKLSAgICAxMTY1NDMsIDExNjU1MCwgMTE2NTU3LCAxMTY1NjQsIDExNjU3MSwgMTE2NTc4LCAxMTY1ODUsIDExNjU5MiwgMTE2NTk5LCAKLSAgICAxMTY2MDYsIDExNjYxMywgMTE2NjIwLCAxMTY2MjcsIDExNjYzNSwgMTE2NjQyLCAxMTY2NDksIDExNjY1NiwgMTE2NjYzLCAKLSAgICAxMTY2NzAsIDExNjY3NywgMTE2Njg0LCAxMTY2OTIsIDExNjY5OSwgMTE2NzA2LCAxMTY3MTMsIDExNjcyMCwgMTE2NzI3LCAKLSAgICAxMTY3MzQsIDExNjczOSwgMCwgMCwgMTE2NzQ0LCAxMTY3NDksIDExNjc1MywgMTE2NzU3LCAxMTY3NjEsIDExNjc2NSwgCi0gICAgMTE2NzY5LCAxMTY3NzMsIDExNjc3NywgMTE2NzgxLCAxMTY3ODUsIDExNjc5MCwgMTE2Nzk0LCAxMTY3OTgsIDExNjgwMiwgCi0gICAgMTE2ODA2LCAxMTY4MTAsIDExNjgxNCwgMTE2ODE4LCAxMTY4MjIsIDExNjgyNiwgMTE2ODMxLCAxMTY4MzUsIDExNjgzOSwgCi0gICAgMTE2ODQzLCAxMTY4NDcsIDExNjg1MSwgMTE2ODU1LCAxMTY4NTksIDExNjg2MywgMTE2ODY3LCAxMTY4NzMsIDExNjg3OCwgCi0gICAgMTE2ODgzLCAxMTY4ODgsIDExNjg5MywgMTE2ODk4LCAxMTY5MDMsIDExNjkwOCwgMTE2OTEzLCAxMTY5MTgsIDExNjkyNCwgCi0gICAgMTE2OTI5LCAxMTY5MzQsIDExNjkzOSwgMTE2OTQ0LCAxMTY5NDksIDExNjk1NCwgMTE2OTU5LCAxMTY5NjQsIDExNjk2OSwgCi0gICAgMTE2OTc2LCAxMTY5ODMsIDExNjk5MCwgMTE2OTk3LCAxMTcwMDQsIDExNzAxMSwgMTE3MDE3LCAxMTcwMjQsIDExNzAzMSwgCi0gICAgMTE3MDM4LCAxMTcwNDYsIDExNzA1NCwgMTE3MDYyLCAxMTcwNzAsIDExNzA3OCwgMTE3MDg2LCAxMTcwOTMsIDExNzEwMCwgCi0gICAgMTE3MTA3LCAxMTcxMTUsIDExNzEyMywgMTE3MTMxLCAxMTcxMzksIDExNzE0NywgMTE3MTU1LCAxMTcxNjIsIDExNzE2OSwgCi0gICAgMTE3MTc2LCAxMTcxODQsIDExNzE5MiwgMTE3MjAwLCAxMTcyMDgsIDExNzIxNiwgMTE3MjI0LCAxMTcyMjksIDExNzIzNCwgCi0gICAgMTE3MjM5LCAxMTcyNDQsIDExNzI0OSwgMTE3MjU0LCAxMTcyNTksIDExNzI2NCwgMTE3MjY5LCAwLCAwLCAwLCAwLCAKLSAgICAxMTcyNzQsIDExNzI3OSwgMTE3MjgzLCAxMTcyODcsIDExNzI5MSwgMTE3Mjk1LCAxMTcyOTksIDExNzMwMywgMTE3MzA3LCAKLSAgICAxMTczMTEsIDExNzMxNSwgMTE3MzE5LCAxMTczMjMsIDExNzMyNywgMTE3MzMxLCAxMTczMzUsIDExNzMzOSwgMTE3MzQzLCAKLSAgICAxMTczNDcsIDExNzM1MSwgMTE3MzU1LCAxMTczNTksIDExNzM2MywgMTE3MzY3LCAxMTczNzEsIDExNzM3NSwgMTE3Mzc5LCAKLSAgICAxMTczODMsIDExNzM4NywgMTE3MzkxLCAxMTczOTUsIDExNzM5OSwgMTE3NDAzLCAxMTc0MDcsIDExNzQxMSwgMTE3NDE1LCAKLSAgICAxMTc0MTksIDExNzQyMywgMTE3NDI3LCAxMTc0MzEsIDExNzQzNSwgMTE3NDM5LCAxMTc0NDMsIDExNzQ0NywgMTE3NDUxLCAKLSAgICAxMTc0NTUsIDExNzQ1OSwgMTE3NDYzLCAxMTc0NjcsIDExNzQ3MSwgMTE3NDc1LCAxMTc0ODAsIDExNzQ4NCwgMTE3NDg4LCAKLSAgICAxMTc0OTIsIDExNzQ5NiwgMTE3NTAwLCAxMTc1MDQsIDExNzUwOCwgMTE3NTEyLCAxMTc1MTYsIDExNzUyMCwgMTE3NTI0LCAKLSAgICAxMTc1MjgsIDExNzUzMiwgMTE3NTM2LCAxMTc1NDAsIDExNzU0NCwgMTE3NTQ4LCAxMTc1NTIsIDExNzU1NiwgMTE3NTYwLCAKLSAgICAxMTc1NjQsIDExNzU2OCwgMTE3NTcyLCAxMTc1NzYsIDExNzU4MCwgMTE3NTg0LCAxMTc1ODgsIDExNzU5MiwgMTE3NTk2LCAKLSAgICAxMTc2MDAsIDExNzYwNCwgMTE3NjA4LCAxMTc2MTIsIDExNzYxNiwgMTE3NjIwLCAxMTc2MjQsIDExNzYyOCwgMTE3NjMyLCAKLSAgICAxMTc2MzYsIDExNzY0MCwgMTE3NjQ0LCAxMTc2NDgsIDExNzY1MiwgMTE3NjU2LCAxMTc2NjAsIDExNzY2NCwgMTE3NjY4LCAKLSAgICAxMTc2NzIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExNzY3NiwgMTE3NjgyLCAxMTc2OTEsIAotICAgIDExNzY5OSwgMTE3NzA3LCAxMTc3MTYsIDExNzcyNSwgMTE3NzM0LCAxMTc3NDMsIDExNzc1MiwgMTE3NzYxLCAxMTc3NzAsIAotICAgIDExNzc3OSwgMTE3Nzg4LCAxMTc3OTcsIDAsIDAsIDExNzgwNiwgMTE3ODE1LCAxMTc4MjMsIDExNzgzMSwgMTE3ODQwLCAKLSAgICAxMTc4NDksIDExNzg1OCwgMTE3ODY3LCAxMTc4NzYsIDExNzg4NSwgMTE3ODk0LCAxMTc5MDMsIDExNzkxMiwgMTE3OTIxLCAKLSAgICAwLCAwLCAxMTc5MzAsIDExNzkzOSwgMTE3OTQ3LCAxMTc5NTUsIDExNzk2NCwgMTE3OTczLCAxMTc5ODIsIDExNzk5MSwgCi0gICAgMTE4MDAwLCAxMTgwMDksIDExODAxOCwgMTE4MDI3LCAxMTgwMzYsIDExODA0NSwgMTE4MDU0LCAwLCAxMTgwNjEsIAotICAgIDExODA3MCwgMTE4MDc4LCAxMTgwODYsIDExODA5NSwgMTE4MTA0LCAxMTgxMTMsIDExODEyMiwgMTE4MTMxLCAxMTgxNDAsIAotICAgIDExODE0OSwgMTE4MTU4LCAxMTgxNjcsIDExODE3NiwgMTE4MTg1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTgxOTIsIAotICAgIDExODE5OSwgMTE4MjA0LCAxMTgyMDgsIDExODIxMiwgMTE4MjE2LCAxMTgyMjEsIDExODIyNiwgMTE4MjMxLCAxMTgyMzYsIAotICAgIDExODI0MSwgMCwgMCwgMCwgMCwgMCwgMTE4MjQ2LCAxMTgyNTEsIDExODI1NywgMTE4MjYzLCAxMTgyNjksIDExODI3NCwgCi0gICAgMTE4MjgwLCAxMTgyODYsIDExODI5MiwgMTE4Mjk3LCAxMTgzMDMsIDExODMwOSwgMTE4MzE0LCAxMTgzMTksIDExODMyNCwgCi0gICAgMTE4MzI5LCAxMTgzMzUsIDExODM0MSwgMTE4MzQ2LCAxMTgzNTEsIDExODM1NywgMTE4MzYyLCAxMTgzNjgsIDExODM3NCwgCi0gICAgMTE4MzgwLCAxMTgzODYsIDExODM5MiwgMTE4NDAyLCAxMTg0MDksIDExODQxNSwgMTE4NDE4LCAwLCAxMTg0MjEsIAotICAgIDExODQyNiwgMTE4NDMyLCAxMTg0MzgsIDExODQ0NCwgMTE4NDQ5LCAxMTg0NTUsIDExODQ2MSwgMTE4NDY3LCAxMTg0NzIsIAotICAgIDExODQ3OCwgMTE4NDg0LCAxMTg0ODksIDExODQ5NCwgMTE4NDk5LCAxMTg1MDQsIDExODUxMCwgMTE4NTE2LCAxMTg1MjEsIAotICAgIDExODUyNiwgMTE4NTMyLCAxMTg1MzcsIDExODU0MywgMTE4NTQ5LCAxMTg1NTUsIDExODU2MSwgMTE4NTY3LCAxMTg1NzAsIAotICAgIDExODU3MywgMTE4NTc2LCAxMTg1NzksIDExODU4MiwgMTE4NTg1LCAxMTg1OTEsIDExODU5OCwgMTE4NjA1LCAxMTg2MTIsIAotICAgIDExODYxOCwgMTE4NjI1LCAxMTg2MzIsIDExODYzOSwgMTE4NjQ1LCAxMTg2NTIsIDExODY1OSwgMTE4NjY1LCAxMTg2NzEsIAotICAgIDExODY3NywgMTE4NjgzLCAxMTg2OTAsIDExODY5NywgMTE4NzAzLCAxMTg3MDksIDExODcxNiwgMTE4NzIyLCAxMTg3MjksIAotICAgIDExODczNiwgMTE4NzQzLCAxMTg3NTAsIDAsIDAsIDAsIDAsIDAsIDAsIDExODc1NywgMTE4NzYzLCAxMTg3NzAsIDExODc3NywgCi0gICAgMTE4Nzg0LCAxMTg3OTAsIDExODc5NywgMTE4ODA0LCAxMTg4MTEsIDExODgxNywgMTE4ODI0LCAxMTg4MzEsIDExODgzNywgCi0gICAgMTE4ODQzLCAxMTg4NDksIDExODg1NSwgMTE4ODYyLCAxMTg4NjksIDExODg3NSwgMTE4ODgxLCAxMTg4ODgsIDExODg5NCwgCi0gICAgMTE4OTAxLCAxMTg5MDgsIDExODkxNSwgMTE4OTIyLCAxMTg5MjksIDExODkzOCwgMTE4OTQyLCAxMTg5NDUsIDExODk0OSwgCi0gICAgMTE4OTUzLCAxMTg5NTcsIDExODk2MCwgMTE4OTYzLCAxMTg5NjYsIDExODk2OSwgMTE4OTcyLCAxMTg5NzUsIDExODk3OCwgCi0gICAgMTE4OTgxLCAxMTg5ODQsIDExODk5MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTExMTI2LCAxMTExMzEsIAorICAgIDExMTEzOCwgMTExMTQ1LCAxMTExNTIsIDExMTE1OSwgMTExMTY0LCAxMTExNjgsIDExMTE3NCwgMTExMTc4LCAxMTExODIsIAorICAgIDExMTE4OCwgMTExMTkyLCAxMTExOTYsIDExMTIwMCwgMTExMjA2LCAxMTEyMTMsIDExMTIxNywgMTExMjIxLCAxMTEyMjUsIAorICAgIDExMTIyOSwgMTExMjMzLCAxMTEyMzcsIDExMTI0MywgMTExMjQ3LCAxMTEyNTEsIDExMTI1NSwgMTExMjU5LCAxMTEyNjMsIAorICAgIDExMTI2NywgMTExMjcxLCAxMTEyNzUsIDExMTI3OSwgMTExMjgzLCAxMTEyODcsIDExMTI5MSwgMTExMjk2LCAxMTEzMDAsIAorICAgIDExMTMwNCwgMTExMzA4LCAxMTEzMTIsIDExMTMxNiwgMTExMzIwLCAxMTEzMjQsIDExMTMyOCwgMTExMzMyLCAxMTEzMzksIAorICAgIDExMTM0MywgMTExMzUxLCAxMTEzNTUsIDExMTM1OSwgMTExMzYzLCAxMTEzNjcsIDExMTM3MSwgMTExMzc1LCAxMTEzNzksIAorICAgIDExMTM4NiwgMTExMzkwLCAxMTEzOTQsIDExMTM5OCwgMTExNDAyLCAxMTE0MDYsIDExMTQxMiwgMTExNDE2LCAxMTE0MjIsIAorICAgIDExMTQyNiwgMTExNDMwLCAxMTE0MzQsIDExMTQzOCwgMTExNDQyLCAxMTE0NDYsIDExMTQ1MCwgMTExNDU0LCAxMTE0NTgsIAorICAgIDExMTQ2MiwgMTExNDY2LCAxMTE0NzAsIDExMTQ3NCwgMTExNDc4LCAxMTE0ODIsIDExMTQ4NiwgMTExNDkwLCAxMTE0OTQsIAorICAgIDExMTQ5OCwgMTExNTA2LCAxMTE1MTAsIDExMTUxNCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTExNTE4LCAKKyAgICAxMTE1MjYsIDExMTUzNCwgMTExNTQyLCAxMTE1NTAsIDExMTU1OCwgMTExNTY2LCAxMTE1NzQsIDExMTU4MiwgMTExNTkwLCAKKyAgICAxMTE1OTgsIDExMTYwNiwgMTExNjE0LCAxMTE2MjIsIDExMTYzMCwgMTExNjM4LCAxMTE2NDYsIDExMTY1NCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTExNjYyLCAxMTE2NjYsIDExMTY3MSwgMTExNjc2LCAxMTE2ODEsIAorICAgIDExMTY4NSwgMTExNjkwLCAxMTE2OTUsIDExMTcwMCwgMTExNzA0LCAxMTE3MDksIDExMTcxNCwgMTExNzE4LCAxMTE3MjIsIAorICAgIDExMTcyNiwgMTExNzMwLCAxMTE3MzUsIDExMTc0MCwgMTExNzQ0LCAxMTE3NDgsIDExMTc1MywgMTExNzU3LCAxMTE3NjIsIAorICAgIDExMTc2NywgMTExNzcyLCAxMTE3NzcsIDExMTc4MiwgMTExNzg2LCAxMTE3OTEsIDExMTc5NiwgMTExODAxLCAxMTE4MDUsIAorICAgIDExMTgxMCwgMTExODE1LCAxMTE4MjAsIDExMTgyNCwgMTExODI5LCAxMTE4MzQsIDExMTgzOCwgMTExODQyLCAxMTE4NDYsIAorICAgIDExMTg1MCwgMTExODU1LCAxMTE4NjAsIDExMTg2NCwgMTExODY4LCAxMTE4NzMsIDExMTg3NywgMTExODgyLCAxMTE4ODcsIAorICAgIDExMTg5MiwgMTExODk3LCAxMTE5MDIsIDExMTkwNiwgMTExOTExLCAxMTE5MTYsIDExMTkyMSwgMTExOTI1LCAxMTE5MzAsIAorICAgIDExMTkzNSwgMTExOTQwLCAxMTE5NDQsIDExMTk0OSwgMTExOTU0LCAxMTE5NTgsIDExMTk2MiwgMTExOTY2LCAxMTE5NzAsIAorICAgIDExMTk3NSwgMTExOTgwLCAxMTE5ODQsIDExMTk4OCwgMTExOTkzLCAxMTE5OTcsIDExMjAwMiwgMTEyMDA3LCAxMTIwMTIsIAorICAgIDExMjAxNywgMTEyMDIyLCAxMTIwMjYsIDExMjAzMSwgMTEyMDM2LCAxMTIwNDEsIDExMjA0NSwgMTEyMDUwLCAwLCAKKyAgICAxMTIwNTUsIDExMjA1OSwgMTEyMDY0LCAxMTIwNjksIDExMjA3MywgMTEyMDc3LCAxMTIwODEsIDExMjA4NSwgMTEyMDkwLCAKKyAgICAxMTIwOTUsIDExMjA5OSwgMTEyMTAzLCAxMTIxMDgsIDExMjExMiwgMTEyMTE3LCAxMTIxMjIsIDExMjEyNywgMTEyMTMyLCAKKyAgICAxMTIxMzcsIDExMjE0MiwgMTEyMTQ4LCAxMTIxNTQsIDExMjE2MCwgMTEyMTY1LCAxMTIxNzEsIDExMjE3NywgMTEyMTgzLCAKKyAgICAxMTIxODgsIDExMjE5NCwgMTEyMjAwLCAxMTIyMDUsIDExMjIxMCwgMTEyMjE1LCAxMTIyMjAsIDExMjIyNiwgMTEyMjMyLCAKKyAgICAxMTIyMzcsIDExMjI0MiwgMTEyMjQ4LCAxMTIyNTMsIDExMjI1OSwgMTEyMjY1LCAxMTIyNzEsIDExMjI3NywgMTEyMjgzLCAKKyAgICAxMTIyODgsIDExMjI5NCwgMTEyMzAwLCAxMTIzMDYsIDExMjMxMSwgMTEyMzE3LCAxMTIzMjMsIDExMjMyOSwgMTEyMzM0LCAKKyAgICAxMTIzNDAsIDExMjM0NiwgMTEyMzUxLCAxMTIzNTYsIDExMjM2MSwgMTEyMzY2LCAxMTIzNzIsIDExMjM3OCwgMTEyMzgzLCAKKyAgICAxMTIzODgsIDExMjM5NCwgMTEyMzk5LCAxMTI0MDUsIDExMjQxMSwgMTEyNDE3LCAxMTI0MjMsIDExMjQyOSwgMCwgCisgICAgMTEyNDMzLCAxMTI0MzgsIDAsIDAsIDExMjQ0MywgMCwgMCwgMTEyNDQ4LCAxMTI0NTMsIDAsIDAsIDExMjQ1OCwgMTEyNDYyLCAKKyAgICAxMTI0NjYsIDExMjQ3MSwgMCwgMTEyNDc2LCAxMTI0ODAsIDExMjQ4NSwgMTEyNDg5LCAxMTI0OTQsIDExMjQ5OSwgCisgICAgMTEyNTA0LCAxMTI1MDksIDExMjUxNCwgMTEyNTE4LCAxMTI1MjMsIDExMjUyOCwgMCwgMTEyNTMzLCAwLCAxMTI1MzgsIAorICAgIDExMjU0MywgMTEyNTQ3LCAxMTI1NTIsIDExMjU1NywgMTEyNTYxLCAxMTI1NjUsIDAsIDExMjU2OSwgMTEyNTc0LCAKKyAgICAxMTI1NzksIDExMjU4MywgMTEyNTg3LCAxMTI1OTIsIDExMjU5NiwgMTEyNjAxLCAxMTI2MDYsIDExMjYxMSwgMTEyNjE2LCAKKyAgICAxMTI2MjEsIDExMjYyNiwgMTEyNjMyLCAxMTI2MzgsIDExMjY0NCwgMTEyNjQ5LCAxMTI2NTUsIDExMjY2MSwgMTEyNjY3LCAKKyAgICAxMTI2NzIsIDExMjY3OCwgMTEyNjg0LCAxMTI2ODksIDExMjY5NCwgMTEyNjk5LCAxMTI3MDQsIDExMjcxMCwgMTEyNzE2LCAKKyAgICAxMTI3MjEsIDExMjcyNiwgMTEyNzMyLCAxMTI3MzcsIDExMjc0MywgMTEyNzQ5LCAxMTI3NTUsIDExMjc2MSwgMTEyNzY3LCAKKyAgICAxMTI3NzIsIDExMjc3OCwgMTEyNzg0LCAxMTI3OTAsIDExMjc5NSwgMTEyODAxLCAxMTI4MDcsIDExMjgxMywgMTEyODE4LCAKKyAgICAxMTI4MjQsIDExMjgzMCwgMTEyODM1LCAxMTI4NDAsIDExMjg0NSwgMTEyODUwLCAxMTI4NTYsIDExMjg2MiwgMTEyODY3LCAKKyAgICAxMTI4NzIsIDExMjg3OCwgMTEyODgzLCAxMTI4ODksIDExMjg5NSwgMTEyOTAxLCAxMTI5MDcsIDExMjkxMywgMTEyOTE3LCAKKyAgICAwLCAxMTI5MjIsIDExMjkyNywgMTEyOTMxLCAxMTI5MzYsIDAsIDAsIDExMjk0MSwgMTEyOTQ2LCAxMTI5NTEsIDExMjk1NSwgCisgICAgMTEyOTU5LCAxMTI5NjMsIDExMjk2NywgMTEyOTcyLCAwLCAxMTI5NzcsIDExMjk4MSwgMTEyOTg2LCAxMTI5OTAsIAorICAgIDExMjk5NSwgMTEzMDAwLCAxMTMwMDUsIDAsIDExMzAxMCwgMTEzMDE0LCAxMTMwMTksIDExMzAyNCwgMTEzMDI5LCAKKyAgICAxMTMwMzMsIDExMzAzOCwgMTEzMDQzLCAxMTMwNDgsIDExMzA1MiwgMTEzMDU3LCAxMTMwNjIsIDExMzA2NiwgMTEzMDcwLCAKKyAgICAxMTMwNzQsIDExMzA3OCwgMTEzMDgzLCAxMTMwODgsIDExMzA5MiwgMTEzMDk2LCAxMTMxMDEsIDExMzEwNSwgMTEzMTEwLCAKKyAgICAxMTMxMTUsIDExMzEyMCwgMTEzMTI1LCAxMTMxMzAsIDExMzEzNCwgMCwgMTEzMTM5LCAxMTMxNDQsIDExMzE0OCwgCisgICAgMTEzMTUzLCAwLCAxMTMxNTgsIDExMzE2MiwgMTEzMTY3LCAxMTMxNzIsIDExMzE3NiwgMCwgMTEzMTgwLCAwLCAwLCAwLCAKKyAgICAxMTMxODQsIDExMzE4OCwgMTEzMTkzLCAxMTMxOTcsIDExMzIwMiwgMTEzMjA3LCAxMTMyMTIsIDAsIDExMzIxNywgCisgICAgMTEzMjIxLCAxMTMyMjYsIDExMzIzMSwgMTEzMjM2LCAxMTMyNDAsIDExMzI0NSwgMTEzMjUwLCAxMTMyNTUsIDExMzI1OSwgCisgICAgMTEzMjY0LCAxMTMyNjksIDExMzI3MywgMTEzMjc3LCAxMTMyODEsIDExMzI4NSwgMTEzMjkwLCAxMTMyOTUsIDExMzI5OSwgCisgICAgMTEzMzAzLCAxMTMzMDgsIDExMzMxMiwgMTEzMzE3LCAxMTMzMjIsIDExMzMyNywgMTEzMzMyLCAxMTMzMzcsIDExMzM0MiwgCisgICAgMTEzMzQ4LCAxMTMzNTQsIDExMzM2MCwgMTEzMzY1LCAxMTMzNzEsIDExMzM3NywgMTEzMzgzLCAxMTMzODgsIDExMzM5NCwgCisgICAgMTEzNDAwLCAxMTM0MDUsIDExMzQxMCwgMTEzNDE1LCAxMTM0MjAsIDExMzQyNiwgMTEzNDMyLCAxMTM0MzcsIDExMzQ0MiwgCisgICAgMTEzNDQ4LCAxMTM0NTMsIDExMzQ1OSwgMTEzNDY1LCAxMTM0NzEsIDExMzQ3NywgMTEzNDgzLCAxMTM0ODgsIDExMzQ5NCwgCisgICAgMTEzNTAwLCAxMTM1MDYsIDExMzUxMSwgMTEzNTE3LCAxMTM1MjMsIDExMzUyOSwgMTEzNTM0LCAxMTM1NDAsIDExMzU0NiwgCisgICAgMTEzNTUxLCAxMTM1NTYsIDExMzU2MSwgMTEzNTY2LCAxMTM1NzIsIDExMzU3OCwgMTEzNTgzLCAxMTM1ODgsIDExMzU5NCwgCisgICAgMTEzNTk5LCAxMTM2MDUsIDExMzYxMSwgMTEzNjE3LCAxMTM2MjMsIDExMzYyOSwgMTEzNjMzLCAxMTM2MzgsIDExMzY0MywgCisgICAgMTEzNjQ4LCAxMTM2NTIsIDExMzY1NywgMTEzNjYyLCAxMTM2NjcsIDExMzY3MSwgMTEzNjc2LCAxMTM2ODEsIDExMzY4NSwgCisgICAgMTEzNjg5LCAxMTM2OTMsIDExMzY5NywgMTEzNzAyLCAxMTM3MDcsIDExMzcxMSwgMTEzNzE1LCAxMTM3MjAsIDExMzcyNCwgCisgICAgMTEzNzI5LCAxMTM3MzQsIDExMzczOSwgMTEzNzQ0LCAxMTM3NDksIDExMzc1MywgMTEzNzU4LCAxMTM3NjMsIDExMzc2OCwgCisgICAgMTEzNzcyLCAxMTM3NzcsIDExMzc4MiwgMTEzNzg3LCAxMTM3OTEsIDExMzc5NiwgMTEzODAxLCAxMTM4MDUsIDExMzgwOSwgCisgICAgMTEzODEzLCAxMTM4MTcsIDExMzgyMiwgMTEzODI3LCAxMTM4MzEsIDExMzgzNSwgMTEzODQwLCAxMTM4NDQsIDExMzg0OSwgCisgICAgMTEzODU0LCAxMTM4NTksIDExMzg2NCwgMTEzODY5LCAxMTM4NzQsIDExMzg4MCwgMTEzODg2LCAxMTM4OTIsIDExMzg5NywgCisgICAgMTEzOTAzLCAxMTM5MDksIDExMzkxNSwgMTEzOTIwLCAxMTM5MjYsIDExMzkzMiwgMTEzOTM3LCAxMTM5NDIsIDExMzk0NywgCisgICAgMTEzOTUyLCAxMTM5NTgsIDExMzk2NCwgMTEzOTY5LCAxMTM5NzQsIDExMzk4MCwgMTEzOTg1LCAxMTM5OTEsIDExMzk5NywgCisgICAgMTE0MDAzLCAxMTQwMDksIDExNDAxNSwgMTE0MDIwLCAxMTQwMjYsIDExNDAzMiwgMTE0MDM4LCAxMTQwNDMsIDExNDA0OSwgCisgICAgMTE0MDU1LCAxMTQwNjEsIDExNDA2NiwgMTE0MDcyLCAxMTQwNzgsIDExNDA4MywgMTE0MDg4LCAxMTQwOTMsIDExNDA5OCwgCisgICAgMTE0MTA0LCAxMTQxMTAsIDExNDExNSwgMTE0MTIwLCAxMTQxMjYsIDExNDEzMSwgMTE0MTM3LCAxMTQxNDMsIDExNDE0OSwgCisgICAgMTE0MTU1LCAxMTQxNjEsIDExNDE2NiwgMTE0MTcyLCAxMTQxNzgsIDExNDE4NCwgMTE0MTg5LCAxMTQxOTUsIDExNDIwMSwgCisgICAgMTE0MjA3LCAxMTQyMTIsIDExNDIxOCwgMTE0MjI0LCAxMTQyMjksIDExNDIzNCwgMTE0MjM5LCAxMTQyNDQsIDExNDI1MCwgCisgICAgMTE0MjU2LCAxMTQyNjEsIDExNDI2NiwgMTE0MjcyLCAxMTQyNzcsIDExNDI4MywgMTE0Mjg5LCAxMTQyOTUsIDExNDMwMSwgCisgICAgMTE0MzA3LCAxMTQzMTIsIDExNDMxOCwgMTE0MzI0LCAxMTQzMzAsIDExNDMzNSwgMTE0MzQxLCAxMTQzNDcsIDExNDM1MywgCisgICAgMTE0MzU4LCAxMTQzNjQsIDExNDM3MCwgMTE0Mzc1LCAxMTQzODAsIDExNDM4NSwgMTE0MzkwLCAxMTQzOTYsIDExNDQwMiwgCisgICAgMTE0NDA3LCAxMTQ0MTIsIDExNDQxOCwgMTE0NDIzLCAxMTQ0MjksIDExNDQzNSwgMTE0NDQxLCAxMTQ0NDcsIDExNDQ1MywgCisgICAgMTE0NDU5LCAxMTQ0NjYsIDExNDQ3MywgMTE0NDgwLCAxMTQ0ODYsIDExNDQ5MywgMTE0NTAwLCAxMTQ1MDcsIDExNDUxMywgCisgICAgMTE0NTIwLCAxMTQ1MjcsIDExNDUzMywgMTE0NTM5LCAxMTQ1NDUsIDExNDU1MSwgMTE0NTU4LCAxMTQ1NjUsIDExNDU3MSwgCisgICAgMTE0NTc3LCAxMTQ1ODQsIDExNDU5MCwgMTE0NTk3LCAxMTQ2MDQsIDExNDYxMSwgMTE0NjE4LCAxMTQ2MjUsIDExNDYzMSwgCisgICAgMTE0NjM4LCAxMTQ2NDUsIDExNDY1MiwgMTE0NjU4LCAxMTQ2NjUsIDExNDY3MiwgMTE0Njc5LCAxMTQ2ODUsIDExNDY5MiwgCisgICAgMTE0Njk5LCAxMTQ3MDUsIDExNDcxMSwgMTE0NzE3LCAxMTQ3MjMsIDExNDczMCwgMTE0NzM3LCAxMTQ3NDMsIDExNDc0OSwgCisgICAgMTE0NzU2LCAxMTQ3NjIsIDExNDc2OSwgMTE0Nzc2LCAxMTQ3ODMsIDExNDc5MCwgMTE0Nzk3LCAxMTQ4MDIsIDExNDgwOCwgCisgICAgMTE0ODE0LCAxMTQ4MjAsIDExNDgyNSwgMTE0ODMxLCAxMTQ4MzcsIDExNDg0MywgMTE0ODQ4LCAxMTQ4NTQsIDExNDg2MCwgCisgICAgMTE0ODY1LCAxMTQ4NzAsIDExNDg3NSwgMTE0ODgwLCAxMTQ4ODYsIDExNDg5MiwgMTE0ODk3LCAxMTQ5MDIsIDExNDkwOCwgCisgICAgMTE0OTEzLCAxMTQ5MTksIDExNDkyNSwgMTE0OTMxLCAxMTQ5MzcsIDExNDk0MywgMTE0OTQ4LCAxMTQ5NTQsIDExNDk2MCwgCisgICAgMTE0OTY2LCAxMTQ5NzEsIDExNDk3NywgMTE0OTgzLCAxMTQ5ODksIDExNDk5NCwgMTE1MDAwLCAxMTUwMDYsIDExNTAxMSwgCisgICAgMTE1MDE2LCAxMTUwMjEsIDExNTAyNiwgMTE1MDMyLCAxMTUwMzgsIDExNTA0MywgMTE1MDQ4LCAxMTUwNTQsIDExNTA1OSwgCisgICAgMTE1MDY1LCAxMTUwNzEsIDExNTA3NywgMTE1MDgzLCAxMTUwODksIDExNTA5NSwgMCwgMCwgMTE1MTAyLCAxMTUxMDcsIAorICAgIDExNTExMiwgMTE1MTE3LCAxMTUxMjIsIDExNTEyNywgMTE1MTMyLCAxMTUxMzcsIDExNTE0MiwgMTE1MTQ3LCAxMTUxNTIsIAorICAgIDExNTE1NywgMTE1MTYyLCAxMTUxNjcsIDExNTE3MiwgMTE1MTc3LCAxMTUxODIsIDExNTE4NywgMTE1MTkzLCAxMTUxOTgsIAorICAgIDExNTIwMywgMTE1MjA4LCAxMTUyMTMsIDExNTIxOCwgMTE1MjIzLCAxMTUyMjgsIDExNTIzMiwgMTE1MjM3LCAxMTUyNDIsIAorICAgIDExNTI0NywgMTE1MjUyLCAxMTUyNTcsIDExNTI2MiwgMTE1MjY3LCAxMTUyNzIsIDExNTI3NywgMTE1MjgyLCAxMTUyODcsIAorICAgIDExNTI5MiwgMTE1Mjk3LCAxMTUzMDIsIDExNTMwNywgMTE1MzEyLCAxMTUzMTcsIDExNTMyMywgMTE1MzI4LCAxMTUzMzMsIAorICAgIDExNTMzOCwgMTE1MzQzLCAxMTUzNDgsIDExNTM1MywgMTE1MzU4LCAxMTUzNjQsIDExNTM2OSwgMTE1Mzc0LCAxMTUzNzksIAorICAgIDExNTM4NCwgMTE1Mzg5LCAxMTUzOTQsIDExNTM5OSwgMTE1NDA0LCAxMTU0MDksIDExNTQxNCwgMTE1NDE5LCAxMTU0MjQsIAorICAgIDExNTQyOSwgMTE1NDM0LCAxMTU0MzksIDExNTQ0NCwgMTE1NDQ5LCAxMTU0NTQsIDExNTQ1OSwgMTE1NDY0LCAxMTU0NjksIAorICAgIDExNTQ3NCwgMTE1NDc5LCAxMTU0ODUsIDExNTQ5MCwgMTE1NDk1LCAxMTU1MDAsIDExNTUwNSwgMTE1NTEwLCAxMTU1MTUsIAorICAgIDExNTUyMCwgMTE1NTI0LCAxMTU1MjksIDExNTUzNCwgMTE1NTM5LCAxMTU1NDQsIDExNTU0OSwgMTE1NTU0LCAxMTU1NTksIAorICAgIDExNTU2NCwgMTE1NTY5LCAxMTU1NzQsIDExNTU3OSwgMTE1NTg0LCAxMTU1ODksIDExNTU5NCwgMTE1NTk5LCAxMTU2MDQsIAorICAgIDExNTYwOSwgMTE1NjE1LCAxMTU2MjAsIDExNTYyNSwgMTE1NjMwLCAxMTU2MzUsIDExNTY0MCwgMTE1NjQ1LCAxMTU2NTAsIAorICAgIDExNTY1NiwgMTE1NjYxLCAxMTU2NjYsIDExNTY3MSwgMTE1Njc2LCAxMTU2ODEsIDExNTY4NiwgMTE1NjkyLCAxMTU2OTgsIAorICAgIDExNTcwNCwgMTE1NzEwLCAxMTU3MTYsIDExNTcyMiwgMTE1NzI4LCAxMTU3MzQsIDExNTc0MCwgMTE1NzQ2LCAxMTU3NTIsIAorICAgIDExNTc1OCwgMTE1NzY0LCAxMTU3NzAsIDExNTc3NiwgMTE1NzgyLCAxMTU3ODgsIDExNTc5NSwgMTE1ODAxLCAxMTU4MDcsIAorICAgIDExNTgxMywgMTE1ODE5LCAxMTU4MjUsIDExNTgzMSwgMTE1ODM3LCAxMTU4NDIsIDExNTg0OCwgMTE1ODU0LCAxMTU4NjAsIAorICAgIDExNTg2NiwgMTE1ODcyLCAxMTU4NzgsIDExNTg4NCwgMTE1ODkwLCAxMTU4OTYsIDExNTkwMiwgMTE1OTA4LCAxMTU5MTQsIAorICAgIDExNTkyMCwgMTE1OTI2LCAxMTU5MzIsIDExNTkzOCwgMTE1OTQ0LCAxMTU5NTEsIDExNTk1NywgMTE1OTYzLCAxMTU5NjksIAorICAgIDExNTk3NSwgMTE1OTgxLCAxMTU5ODcsIDExNTk5MywgMTE2MDAwLCAxMTYwMDYsIDExNjAxMiwgMTE2MDE4LCAxMTYwMjQsIAorICAgIDExNjAzMCwgMTE2MDM2LCAxMTYwNDIsIDExNjA0OCwgMTE2MDU0LCAxMTYwNjAsIDExNjA2NiwgMTE2MDcyLCAxMTYwNzgsIAorICAgIDExNjA4NCwgMTE2MDkwLCAxMTYwOTYsIDExNjEwMiwgMTE2MTA4LCAxMTYxMTQsIDExNjEyMCwgMTE2MTI2LCAxMTYxMzIsIAorICAgIDExNjEzOCwgMTE2MTQ1LCAxMTYxNTEsIDExNjE1NywgMTE2MTYzLCAxMTYxNjksIDExNjE3NSwgMTE2MTgxLCAxMTYxODcsIAorICAgIDExNjE5MiwgMTE2MTk4LCAxMTYyMDQsIDExNjIxMCwgMTE2MjE2LCAxMTYyMjIsIDExNjIyOCwgMTE2MjM0LCAxMTYyNDAsIAorICAgIDExNjI0NiwgMTE2MjUyLCAxMTYyNTgsIDExNjI2NCwgMTE2MjcwLCAxMTYyNzYsIDExNjI4MiwgMTE2Mjg4LCAxMTYyOTQsIAorICAgIDExNjMwMSwgMTE2MzA3LCAxMTYzMTMsIDExNjMxOSwgMTE2MzI1LCAxMTYzMzEsIDExNjMzNywgMTE2MzQzLCAxMTYzNTAsIAorICAgIDExNjM1NiwgMTE2MzYyLCAxMTYzNjgsIDExNjM3NCwgMTE2MzgwLCAxMTYzODYsIDExNjM5MywgMTE2NDAwLCAxMTY0MDcsIAorICAgIDExNjQxNCwgMTE2NDIxLCAxMTY0MjgsIDExNjQzNSwgMTE2NDQyLCAxMTY0NDksIDExNjQ1NiwgMTE2NDYzLCAxMTY0NzAsIAorICAgIDExNjQ3NywgMTE2NDg0LCAxMTY0OTEsIDExNjQ5OCwgMTE2NTA1LCAxMTY1MTMsIDExNjUyMCwgMTE2NTI3LCAxMTY1MzQsIAorICAgIDExNjU0MSwgMTE2NTQ4LCAxMTY1NTUsIDExNjU2MiwgMTE2NTY4LCAxMTY1NzUsIDExNjU4MiwgMTE2NTg5LCAxMTY1OTYsIAorICAgIDExNjYwMywgMTE2NjEwLCAxMTY2MTcsIDExNjYyNCwgMTE2NjMxLCAxMTY2MzgsIDExNjY0NSwgMTE2NjUyLCAxMTY2NTksIAorICAgIDExNjY2NiwgMTE2NjczLCAxMTY2ODAsIDExNjY4NywgMTE2Njk1LCAxMTY3MDIsIDExNjcwOSwgMTE2NzE2LCAxMTY3MjMsIAorICAgIDExNjczMCwgMTE2NzM3LCAxMTY3NDQsIDExNjc1MiwgMTE2NzU5LCAxMTY3NjYsIDExNjc3MywgMTE2NzgwLCAxMTY3ODcsIAorICAgIDExNjc5NCwgMTE2Nzk5LCAwLCAwLCAxMTY4MDQsIDExNjgwOSwgMTE2ODEzLCAxMTY4MTcsIDExNjgyMSwgMTE2ODI1LCAKKyAgICAxMTY4MjksIDExNjgzMywgMTE2ODM3LCAxMTY4NDEsIDExNjg0NSwgMTE2ODUwLCAxMTY4NTQsIDExNjg1OCwgMTE2ODYyLCAKKyAgICAxMTY4NjYsIDExNjg3MCwgMTE2ODc0LCAxMTY4NzgsIDExNjg4MiwgMTE2ODg2LCAxMTY4OTEsIDExNjg5NSwgMTE2ODk5LCAKKyAgICAxMTY5MDMsIDExNjkwNywgMTE2OTExLCAxMTY5MTUsIDExNjkxOSwgMTE2OTIzLCAxMTY5MjcsIDExNjkzMywgMTE2OTM4LCAKKyAgICAxMTY5NDMsIDExNjk0OCwgMTE2OTUzLCAxMTY5NTgsIDExNjk2MywgMTE2OTY4LCAxMTY5NzMsIDExNjk3OCwgMTE2OTg0LCAKKyAgICAxMTY5ODksIDExNjk5NCwgMTE2OTk5LCAxMTcwMDQsIDExNzAwOSwgMTE3MDE0LCAxMTcwMTksIDExNzAyNCwgMTE3MDI5LCAKKyAgICAxMTcwMzYsIDExNzA0MywgMTE3MDUwLCAxMTcwNTcsIDExNzA2NCwgMTE3MDcxLCAxMTcwNzcsIDExNzA4NCwgMTE3MDkxLCAKKyAgICAxMTcwOTgsIDExNzEwNiwgMTE3MTE0LCAxMTcxMjIsIDExNzEzMCwgMTE3MTM4LCAxMTcxNDYsIDExNzE1MywgMTE3MTYwLCAKKyAgICAxMTcxNjcsIDExNzE3NSwgMTE3MTgzLCAxMTcxOTEsIDExNzE5OSwgMTE3MjA3LCAxMTcyMTUsIDExNzIyMiwgMTE3MjI5LCAKKyAgICAxMTcyMzYsIDExNzI0NCwgMTE3MjUyLCAxMTcyNjAsIDExNzI2OCwgMTE3Mjc2LCAxMTcyODQsIDExNzI4OSwgMTE3Mjk0LCAKKyAgICAxMTcyOTksIDExNzMwNCwgMTE3MzA5LCAxMTczMTQsIDExNzMxOSwgMTE3MzI0LCAxMTczMjksIDAsIDAsIDAsIDAsIAorICAgIDExNzMzNCwgMTE3MzM5LCAxMTczNDMsIDExNzM0NywgMTE3MzUxLCAxMTczNTUsIDExNzM1OSwgMTE3MzYzLCAxMTczNjcsIAorICAgIDExNzM3MSwgMTE3Mzc1LCAxMTczNzksIDExNzM4MywgMTE3Mzg3LCAxMTczOTEsIDExNzM5NSwgMTE3Mzk5LCAxMTc0MDMsIAorICAgIDExNzQwNywgMTE3NDExLCAxMTc0MTUsIDExNzQxOSwgMTE3NDIzLCAxMTc0MjcsIDExNzQzMSwgMTE3NDM1LCAxMTc0MzksIAorICAgIDExNzQ0MywgMTE3NDQ3LCAxMTc0NTEsIDExNzQ1NSwgMTE3NDU5LCAxMTc0NjMsIDExNzQ2NywgMTE3NDcxLCAxMTc0NzUsIAorICAgIDExNzQ3OSwgMTE3NDgzLCAxMTc0ODcsIDExNzQ5MSwgMTE3NDk1LCAxMTc0OTksIDExNzUwMywgMTE3NTA3LCAxMTc1MTEsIAorICAgIDExNzUxNSwgMTE3NTE5LCAxMTc1MjMsIDExNzUyNywgMTE3NTMxLCAxMTc1MzUsIDExNzU0MCwgMTE3NTQ0LCAxMTc1NDgsIAorICAgIDExNzU1MiwgMTE3NTU2LCAxMTc1NjAsIDExNzU2NCwgMTE3NTY4LCAxMTc1NzIsIDExNzU3NiwgMTE3NTgwLCAxMTc1ODQsIAorICAgIDExNzU4OCwgMTE3NTkyLCAxMTc1OTYsIDExNzYwMCwgMTE3NjA0LCAxMTc2MDgsIDExNzYxMiwgMTE3NjE2LCAxMTc2MjAsIAorICAgIDExNzYyNCwgMTE3NjI4LCAxMTc2MzIsIDExNzYzNiwgMTE3NjQwLCAxMTc2NDQsIDExNzY0OCwgMTE3NjUyLCAxMTc2NTYsIAorICAgIDExNzY2MCwgMTE3NjY0LCAxMTc2NjgsIDExNzY3MiwgMTE3Njc2LCAxMTc2ODAsIDExNzY4NCwgMTE3Njg4LCAxMTc2OTIsIAorICAgIDExNzY5NiwgMTE3NzAwLCAxMTc3MDQsIDExNzcwOCwgMTE3NzEyLCAxMTc3MTYsIDExNzcyMCwgMTE3NzI0LCAxMTc3MjgsIAorICAgIDExNzczMiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTE3NzM2LCAxMTc3NDIsIDExNzc1MSwgCisgICAgMTE3NzU5LCAxMTc3NjcsIDExNzc3NiwgMTE3Nzg1LCAxMTc3OTQsIDExNzgwMywgMTE3ODEyLCAxMTc4MjEsIDExNzgzMCwgCisgICAgMTE3ODM5LCAxMTc4NDgsIDExNzg1NywgMCwgMCwgMTE3ODY2LCAxMTc4NzUsIDExNzg4MywgMTE3ODkxLCAxMTc5MDAsIAorICAgIDExNzkwOSwgMTE3OTE4LCAxMTc5MjcsIDExNzkzNiwgMTE3OTQ1LCAxMTc5NTQsIDExNzk2MywgMTE3OTcyLCAxMTc5ODEsIAorICAgIDAsIDAsIDExNzk5MCwgMTE3OTk5LCAxMTgwMDcsIDExODAxNSwgMTE4MDI0LCAxMTgwMzMsIDExODA0MiwgMTE4MDUxLCAKKyAgICAxMTgwNjAsIDExODA2OSwgMTE4MDc4LCAxMTgwODcsIDExODA5NiwgMTE4MTA1LCAxMTgxMTQsIDAsIDExODEyMSwgCisgICAgMTE4MTMwLCAxMTgxMzgsIDExODE0NiwgMTE4MTU1LCAxMTgxNjQsIDExODE3MywgMTE4MTgyLCAxMTgxOTEsIDExODIwMCwgCisgICAgMTE4MjA5LCAxMTgyMTgsIDExODIyNywgMTE4MjM2LCAxMTgyNDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExODI1MiwgCisgICAgMTE4MjU5LCAxMTgyNjQsIDExODI2OCwgMTE4MjcyLCAxMTgyNzYsIDExODI4MSwgMTE4Mjg2LCAxMTgyOTEsIDExODI5NiwgCisgICAgMTE4MzAxLCAwLCAwLCAwLCAwLCAwLCAxMTgzMDYsIDExODMxMSwgMTE4MzE3LCAxMTgzMjMsIDExODMyOSwgMTE4MzM0LCAKKyAgICAxMTgzNDAsIDExODM0NiwgMTE4MzUyLCAxMTgzNTcsIDExODM2MywgMTE4MzY5LCAxMTgzNzQsIDExODM3OSwgMTE4Mzg0LCAKKyAgICAxMTgzODksIDExODM5NSwgMTE4NDAxLCAxMTg0MDYsIDExODQxMSwgMTE4NDE3LCAxMTg0MjIsIDExODQyOCwgMTE4NDM0LCAKKyAgICAxMTg0NDAsIDExODQ0NiwgMTE4NDUyLCAxMTg0NjIsIDExODQ2OSwgMTE4NDc1LCAxMTg0NzgsIDAsIDExODQ4MSwgCisgICAgMTE4NDg2LCAxMTg0OTIsIDExODQ5OCwgMTE4NTA0LCAxMTg1MDksIDExODUxNSwgMTE4NTIxLCAxMTg1MjcsIDExODUzMiwgCisgICAgMTE4NTM4LCAxMTg1NDQsIDExODU0OSwgMTE4NTU0LCAxMTg1NTksIDExODU2NCwgMTE4NTcwLCAxMTg1NzYsIDExODU4MSwgCisgICAgMTE4NTg2LCAxMTg1OTIsIDExODU5NywgMTE4NjAzLCAxMTg2MDksIDExODYxNSwgMTE4NjIxLCAxMTg2MjcsIDExODYzMCwgCisgICAgMTE4NjMzLCAxMTg2MzYsIDExODYzOSwgMTE4NjQyLCAxMTg2NDUsIDExODY1MSwgMTE4NjU4LCAxMTg2NjUsIDExODY3MiwgCisgICAgMTE4Njc4LCAxMTg2ODUsIDExODY5MiwgMTE4Njk5LCAxMTg3MDUsIDExODcxMiwgMTE4NzE5LCAxMTg3MjUsIDExODczMSwgCisgICAgMTE4NzM3LCAxMTg3NDMsIDExODc1MCwgMTE4NzU3LCAxMTg3NjMsIDExODc2OSwgMTE4Nzc2LCAxMTg3ODIsIDExODc4OSwgCisgICAgMTE4Nzk2LCAxMTg4MDMsIDExODgxMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTE4ODE3LCAxMTg4MjMsIDExODgzMCwgMTE4ODM3LCAKKyAgICAxMTg4NDQsIDExODg1MCwgMTE4ODU3LCAxMTg4NjQsIDExODg3MSwgMTE4ODc3LCAxMTg4ODQsIDExODg5MSwgMTE4ODk3LCAKKyAgICAxMTg5MDMsIDExODkwOSwgMTE4OTE1LCAxMTg5MjIsIDExODkyOSwgMTE4OTM1LCAxMTg5NDEsIDExODk0OCwgMTE4OTU0LCAKKyAgICAxMTg5NjEsIDExODk2OCwgMTE4OTc1LCAxMTg5ODIsIDExODk4OSwgMTE4OTk4LCAxMTkwMDIsIDExOTAwNSwgMTE5MDA5LCAKKyAgICAxMTkwMTMsIDExOTAxNywgMTE5MDIwLCAxMTkwMjMsIDExOTAyNiwgMTE5MDI5LCAxMTkwMzIsIDExOTAzNSwgMTE5MDM4LCAKKyAgICAxMTkwNDEsIDExOTA0NCwgMTE5MDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTg5OTMsIDExOTAwMCwgMTE5MDA4LCAxMTkwMTYsIDExOTAyNCwgCi0gICAgMTE5MDMxLCAxMTkwMzksIDExOTA0NywgMTE5MDU1LCAxMTkwNjIsIDExOTA3MCwgMTE5MDc4LCAxMTkwODUsIDExOTA5MiwgCi0gICAgMTE5MDk5LCAxMTkxMDYsIDExOTExNCwgMTE5MTIyLCAxMTkxMjksIDExOTEzNiwgMTE5MTQ0LCAxMTkxNTEsIDExOTE1OSwgCi0gICAgMTE5MTY3LCAxMTkxNzUsIDExOTE4MywgMTE5MTkxLCAxMTkxOTUsIDExOTE5OSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMTE5MjAzLCAxMTkyMDksIDExOTIxNSwgMTE5MjIxLCAxMTkyMjUsIDExOTIzMSwgMTE5MjM3LCAKLSAgICAxMTkyNDMsIDExOTI0OSwgMTE5MjU1LCAxMTkyNjEsIDExOTI2NywgMTE5MjczLCAxMTkyNzksIDExOTI4NSwgMTE5MjkxLCAKLSAgICAxMTkyOTcsIDExOTMwMywgMTE5MzA5LCAxMTkzMTUsIDExOTMyMSwgMTE5MzI3LCAxMTkzMzMsIDExOTMzOSwgMTE5MzQ1LCAKLSAgICAxMTkzNTEsIDExOTM1NywgMTE5MzYzLCAxMTkzNjksIDExOTM3NSwgMTE5MzgxLCAxMTkzODcsIDExOTM5MywgMTE5Mzk5LCAKLSAgICAxMTk0MDUsIDExOTQxMSwgMTE5NDE3LCAxMTk0MjMsIDExOTQyOSwgMTE5NDM1LCAxMTk0NDEsIDExOTQ0NywgMTE5NDUzLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAxMTk0NTksIDExOTQ3MCwgMTE5NDgxLCAxMTk0OTIsIDExOTUwMywgMTE5NTE0LCAxMTk1MjUsIAotICAgIDExOTUzNiwgMTE5NTQ3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTk1NTgsIDExOTU2MiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTE5MDUzLCAxMTkwNjAsIDExOTA2OCwgMTE5MDc2LCAxMTkwODQsIAorICAgIDExOTA5MSwgMTE5MDk5LCAxMTkxMDcsIDExOTExNSwgMTE5MTIyLCAxMTkxMzAsIDExOTEzOCwgMTE5MTQ1LCAxMTkxNTIsIAorICAgIDExOTE1OSwgMTE5MTY2LCAxMTkxNzQsIDExOTE4MiwgMTE5MTg5LCAxMTkxOTYsIDExOTIwNCwgMTE5MjExLCAxMTkyMTksIAorICAgIDExOTIyNywgMTE5MjM1LCAxMTkyNDMsIDExOTI1MSwgMTE5MjU1LCAxMTkyNTksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDExOTI2MywgMTE5MjY5LCAxMTkyNzUsIDExOTI4MSwgMTE5Mjg1LCAxMTkyOTEsIDExOTI5NywgCisgICAgMTE5MzAzLCAxMTkzMDksIDExOTMxNSwgMTE5MzIxLCAxMTkzMjcsIDExOTMzMywgMTE5MzM5LCAxMTkzNDUsIDExOTM1MSwgCisgICAgMTE5MzU3LCAxMTkzNjMsIDExOTM2OSwgMTE5Mzc1LCAxMTkzODEsIDExOTM4NywgMTE5MzkzLCAxMTkzOTksIDExOTQwNSwgCisgICAgMTE5NDExLCAxMTk0MTcsIDExOTQyMywgMTE5NDI5LCAxMTk0MzUsIDExOTQ0MSwgMTE5NDQ3LCAxMTk0NTMsIDExOTQ1OSwgCisgICAgMTE5NDY1LCAxMTk0NzEsIDExOTQ3NywgMTE5NDgzLCAxMTk0ODksIDExOTQ5NSwgMTE5NTAxLCAxMTk1MDcsIDExOTUxMywgCisgICAgMCwgMCwgMCwgMCwgMCwgMTE5NTE5LCAxMTk1MzAsIDExOTU0MSwgMTE5NTUyLCAxMTk1NjMsIDExOTU3NCwgMTE5NTg1LCAKKyAgICAxMTk1OTYsIDExOTYwNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTE5NjE4LCAxMTk2MjIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExOTU2NiwgMTE5NTY4LCAxMTk1NzAsIAotICAgIDExOTU3NCwgMTE5NTc5LCAxMTk1ODQsIDExOTU4NiwgMTE5NTkyLCAxMTk1OTcsIDExOTU5OSwgMTE5NjA1LCAxMTk2MDksIAotICAgIDExOTYxMSwgMTE5NjE1LCAxMTk2MjEsIDExOTYyNywgMTE5NjMzLCAxMTk2MzgsIDExOTY0MiwgMTE5NjQ5LCAxMTk2NTYsIAotICAgIDExOTY2MywgMTE5NjY4LCAxMTk2NzUsIDExOTY4MiwgMTE5Njg5LCAxMTk2OTMsIDExOTY5OSwgMTE5NzA4LCAxMTk3MTcsIAotICAgIDExOTcyNCwgMTE5NzI5LCAxMTk3MzMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDExOTczNywgMTE5NzM5LCAxMTk3NDEsIDExOTc0NSwgMTE5NzQ5LCAxMTk3NTMsIDAsIDExOTc1NSwgMTE5NzU3LCAKLSAgICAxMTk3NjEsIDExOTc2MywgMTE5NzY1LCAxMTk3NjcsIDExOTc2OSwgMTE5Nzc0LCAxMTk3NzksIDExOTc4MSwgMTE5Nzg3LCAKLSAgICAxMTk3OTEsIDExOTc5NSwgMTE5ODAzLCAxMTk4MDUsIDExOTgwNywgMTE5ODA5LCAxMTk4MTEsIDExOTgxMywgMTE5ODE1LCAKLSAgICAxMTk4MTcsIDExOTgxOSwgMTE5ODIxLCAxMTk4MjMsIDExOTgyNywgMTE5ODMxLCAxMTk4MzMsIDExOTgzNSwgMTE5ODM3LCAKLSAgICAxMTk4MzksIDExOTg0MSwgMTE5ODQ2LCAxMTk4NTIsIDExOTg1NiwgMTE5ODYwLCAxMTk4NjQsIDExOTg2OCwgMTE5ODczLCAKLSAgICAxMTk4NzcsIDExOTg3OSwgMTE5ODgxLCAxMTk4ODUsIDExOTg5MSwgMTE5ODkzLCAxMTk4OTUsIDExOTg5NywgMTE5OTAxLCAKLSAgICAxMTk5MTAsIDExOTkxNiwgMTE5OTIwLCAxMTk5MjQsIDExOTkyNiwgMTE5OTI4LCAxMTk5MzEsIDExOTkzMywgMTE5OTM1LCAKLSAgICAxMTk5MzcsIDExOTk0MSwgMTE5OTQzLCAxMTk5NDcsIDExOTk1MiwgMTE5OTU0LCAxMTk5NTksIDExOTk2NSwgMTE5OTcyLCAKLSAgICAxMTk5NzYsIDExOTk4MCwgMTE5OTg0LCAxMTk5ODgsIDExOTk5NCwgMCwgMCwgMCwgMTE5OTk4LCAxMjAwMDAsIDEyMDAwNCwgCi0gICAgMTIwMDA4LCAxMjAwMTAsIDEyMDAxNCwgMTIwMDE4LCAxMjAwMjAsIDEyMDAyNCwgMTIwMDI2LCAxMjAwMzAsIDEyMDAzNCwgCi0gICAgMTIwMDM4LCAxMjAwNDIsIDEyMDA0NiwgMTIwMDUwLCAxMjAwNTQsIDEyMDA1OCwgMTIwMDY0LCAxMjAwNjgsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyMDA3MiwgMTIwMDc2LCAxMjAwODAsIDEyMDA4NCwgMTIwMDkxLCAKLSAgICAxMjAwOTMsIDEyMDA5NywgMTIwMDk5LCAxMjAxMDEsIDEyMDEwNSwgMTIwMTA5LCAxMjAxMTMsIDEyMDExNSwgMTIwMTE5LCAKLSAgICAxMjAxMjMsIDEyMDEyNywgMTIwMTMxLCAxMjAxMzUsIDEyMDEzNywgMTIwMTQxLCAxMjAxNDMsIDEyMDE0OSwgMTIwMTUyLCAKLSAgICAxMjAxNTcsIDEyMDE1OSwgMTIwMTYxLCAxMjAxNjQsIDEyMDE2NiwgMTIwMTY4LCAxMjAxNzEsIDEyMDE3OCwgMTIwMTg1LCAKLSAgICAxMjAxOTIsIDEyMDE5NywgMTIwMjAxLCAxMjAyMDMsIDEyMDIwNSwgMCwgMTIwMjA3LCAxMjAyMDksIDEyMDIxMywgCi0gICAgMTIwMjE3LCAxMjAyMjEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDEyMDIyMywgMTIwMjI3LCAxMjAyMzIsIDEyMDIzNiwgMTIwMjQyLCAxMjAyNDgsIDEyMDI1MCwgMTIwMjUyLCAKLSAgICAxMjAyNTgsIDEyMDI2MCwgMTIwMjY0LCAxMjAyNjgsIDEyMDI3MCwgMTIwMjc0LCAxMjAyNzYsIDEyMDI4MCwgMTIwMjg0LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjAyODgsIDEyMDI5MCwgMTIwMjkyLCAKLSAgICAxMjAyOTQsIDEyMDI5OCwgMTIwMzAwLCAxMjAzMDIsIDEyMDMwNCwgMTIwMzA2LCAxMjAzMDgsIDEyMDMxMCwgMTIwMzEyLCAKLSAgICAxMjAzMTQsIDEyMDMxNiwgMTIwMzE4LCAxMjAzMjAsIDEyMDMyMiwgMTIwMzI0LCAxMjAzMjYsIDEyMDMyOCwgMTIwMzMwLCAKLSAgICAxMjAzMzIsIDEyMDMzNCwgMTIwMzM2LCAxMjAzMzgsIDEyMDM0MCwgMTIwMzQyLCAxMjAzNDYsIDEyMDM0OCwgMTIwMzUwLCAKLSAgICAxMjAzNTIsIDEyMDM1NiwgMTIwMzU4LCAxMjAzNjIsIDEyMDM2NCwgMTIwMzY2LCAxMjAzNzAsIDEyMDM3NCwgMTIwMzgwLCAKLSAgICAxMjAzODIsIDEyMDM4NCwgMTIwMzg2LCAxMjAzODgsIDEyMDM5MiwgMTIwMzk2LCAxMjAzOTgsIDEyMDQwMiwgMTIwNDA2LCAKLSAgICAxMjA0MTAsIDEyMDQxNCwgMTIwNDE4LCAxMjA0MjIsIDEyMDQyNiwgMTIwNDMwLCAxMjA0MzQsIDEyMDQzOCwgMTIwNDQyLCAKLSAgICAxMjA0NDYsIDEyMDQ1MCwgMTIwNDU0LCAxMjA0NTgsIDEyMDQ2MiwgMTIwNDY2LCAwLCAxMjA0NzAsIDAsIDEyMDQ3MiwgCi0gICAgMTIwNDc0LCAxMjA0NzYsIDEyMDQ3OCwgMTIwNDgwLCAxMjA0ODgsIDEyMDQ5NiwgMTIwNTA0LCAxMjA1MTIsIDEyMDUxNywgCi0gICAgMTIwNTIyLCAxMjA1MjcsIDEyMDUzMSwgMTIwNTM1LCAxMjA1NDAsIDEyMDU0NSwgMTIwNTQ3LCAxMjA1NTEsIDEyMDU1MywgCi0gICAgMTIwNTU1LCAxMjA1NTcsIDEyMDU1OSwgMTIwNTYxLCAxMjA1NjMsIDEyMDU2NSwgMTIwNTY5LCAxMjA1NzEsIDEyMDU3MywgCi0gICAgMTIwNTc1LCAxMjA1NzksIDEyMDU4MywgMTIwNTg3LCAxMjA1OTEsIDEyMDU5NSwgMTIwNTk3LCAxMjA2MDMsIDEyMDYwOSwgCi0gICAgMTIwNjExLCAxMjA2MTMsIDEyMDYxNSwgMTIwNjE3LCAxMjA2MTksIDEyMDYyOCwgMTIwNjM1LCAxMjA2NDIsIDEyMDY0NiwgCi0gICAgMTIwNjUzLCAxMjA2NTgsIDEyMDY2NSwgMTIwNjc0LCAxMjA2NzksIDEyMDY4MywgMTIwNjg3LCAxMjA2ODksIDEyMDY5MywgCi0gICAgMTIwNjk1LCAxMjA2OTksIDEyMDcwMywgMTIwNzA1LCAxMjA3MDksIDEyMDcxMywgMTIwNzE3LCAxMjA3MTksIDEyMDcyMSwgCi0gICAgMTIwNzI3LCAxMjA3MjksIDEyMDczMSwgMTIwNzMzLCAxMjA3MzcsIDEyMDc0MSwgMTIwNzQzLCAxMjA3NDcsIDEyMDc0OSwgCi0gICAgMTIwNzUxLCAxMjA3NTQsIDEyMDc1OCwgMTIwNzYwLCAxMjA3NjQsIDEyMDc2NiwgMTIwNzY4LCAxMjA3NzMsIDEyMDc3NSwgCi0gICAgMTIwNzc5LCAxMjA3ODMsIDEyMDc4NiwgMTIwNzkwLCAxMjA3OTQsIDEyMDc5OCwgMTIwODAyLCAxMjA4MDYsIDEyMDgxMCwgCi0gICAgMTIwODE0LCAxMjA4MTksIDEyMDgyMywgMTIwODI3LCAxMjA4MzYsIDEyMDg0MSwgMTIwODQ0LCAxMjA4NDYsIDEyMDg0OSwgCi0gICAgMTIwODUyLCAxMjA4NTcsIDEyMDg1OSwgMTIwODYyLCAxMjA4NjcsIDEyMDg3MSwgMTIwODc0LCAxMjA4NzgsIDEyMDg4MiwgCi0gICAgMTIwODg1LCAxMjA4OTAsIDEyMDg5NCwgMTIwODk4LCAxMjA5MDIsIDEyMDkwNiwgMTIwOTEyLCAxMjA5MTgsIDEyMDkyNCwgCi0gICAgMTIwOTMwLCAxMjA5MzUsIDEyMDk0NiwgMTIwOTQ4LCAxMjA5NTIsIDEyMDk1NCwgMTIwOTU2LCAxMjA5NjAsIDEyMDk2NCwgCi0gICAgMTIwOTY2LCAxMjA5NzAsIDEyMDk3NiwgMTIwOTgxLCAxMjA5ODcsIDEyMDk4OSwgMTIwOTkzLCAxMjA5OTcsIDEyMTAwNCwgCi0gICAgMTIxMDExLCAxMjEwMTUsIDEyMTAxNywgMTIxMDE5LCAxMjEwMjMsIDEyMTAyNSwgMTIxMDI5LCAxMjEwMzMsIDEyMTAzNywgCi0gICAgMTIxMDM5LCAxMjEwNDEsIDEyMTA0OCwgMTIxMDUyLCAxMjEwNTYsIDEyMTA2MCwgMTIxMDY0LCAxMjEwNjgsIDEyMTA3MCwgCi0gICAgMTIxMDc0LCAxMjEwNzYsIDEyMTA3OCwgMTIxMDgyLCAxMjEwODQsIDEyMTA4OCwgMTIxMDkyLCAxMjEwOTgsIDEyMTEwMiwgCi0gICAgMTIxMTA2LCAxMjExMTAsIDEyMTExMiwgMTIxMTE1LCAxMjExMTksIDEyMTEyNiwgMTIxMTM1LCAxMjExNDQsIDEyMTE1MywgCi0gICAgMTIxMTYyLCAxMjExNjQsIDEyMTE2OCwgMTIxMTcwLCAxMjExNzQsIDEyMTE4NSwgMTIxMTg5LCAxMjExOTUsIDEyMTIwMSwgCi0gICAgMTIxMjA2LCAwLCAxMjEyMDgsIDEyMTIxMiwgMTIxMjE0LCAxMjEyMTYsIDAsIDAsIDAsIDEyMTIxOCwgMTIxMjIzLCAKLSAgICAxMjEyMzQsIDEyMTI1MCwgMTIxMjYzLCAxMjEyNzYsIDEyMTI4MCwgMTIxMjg0LCAxMjEyOTAsIDEyMTI5MiwgMTIxMzAwLCAKLSAgICAxMjEzMDgsIDEyMTMxMCwgMTIxMzE0LCAxMjEzMjAsIDEyMTMyNiwgMTIxMzMzLCAxMjEzNDAsIDEyMTM0MiwgMTIxMzQ0LCAKLSAgICAxMjEzNDgsIDEyMTM1MCwgMTIxMzU2LCAxMjEzNTgsIDEyMTM2MSwgMTIxMzY1LCAxMjEzNzEsIDEyMTM3NywgMTIxMzg4LCAKLSAgICAxMjEzOTQsIDEyMTQwMSwgMTIxNDA5LCAxMjE0MTMsIDEyMTQyMSwgMTIxNDI5LCAxMjE0MzUsIDEyMTQ0MSwgMTIxNDQ4LCAKLSAgICAxMjE0NTAsIDEyMTQ1NCwgMTIxNDU2LCAxMjE0NTgsIDEyMTQ2MywgMTIxNDY1LCAxMjE0NjcsIDEyMTQ2OSwgMTIxNDcxLCAKLSAgICAxMjE0NzUsIDEyMTQ4NiwgMTIxNDkyLCAxMjE0OTYsIDEyMTUwMCwgMTIxNTA0LCAxMjE1MTAsIDEyMTUxNiwgMTIxNTIyLCAKLSAgICAxMjE1MjgsIDEyMTUzMywgMTIxNTM4LCAxMjE1NDQsIDEyMTU1MCwgMTIxNTU3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjE1NjQsIDEyMTU3MSwgMTIxNTc4LCAxMjE1ODUsIDEyMTU5MywgCi0gICAgMTIxNjAxLCAxMjE2MDksIDEyMTYxNywgMTIxNjI1LCAxMjE2MzMsIDEyMTY0MSwgMTIxNjQ5LCAxMjE2NTcsIDEyMTY2MywgCi0gICAgMTIxNjY5LCAxMjE2NzUsIDEyMTY4MSwgMTIxNjg3LCAxMjE2OTMsIDEyMTY5OSwgMTIxNzA1LCAxMjE3MTEsIDEyMTcxNywgCi0gICAgMTIxNzIzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTk2MjYsIDExOTYyOCwgMTE5NjMwLCAKKyAgICAxMTk2MzQsIDExOTYzOSwgMTE5NjQ0LCAxMTk2NDYsIDExOTY1MiwgMTE5NjU3LCAxMTk2NTksIDExOTY2NSwgMTE5NjY5LCAKKyAgICAxMTk2NzEsIDExOTY3NSwgMTE5NjgxLCAxMTk2ODcsIDExOTY5MywgMTE5Njk4LCAxMTk3MDIsIDExOTcwOSwgMTE5NzE2LCAKKyAgICAxMTk3MjMsIDExOTcyOCwgMTE5NzM1LCAxMTk3NDIsIDExOTc0OSwgMTE5NzUzLCAxMTk3NTksIDExOTc2OCwgMTE5Nzc3LCAKKyAgICAxMTk3ODQsIDExOTc4OSwgMTE5NzkzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAxMTk3OTcsIDExOTc5OSwgMTE5ODAxLCAxMTk4MDUsIDExOTgwOSwgMTE5ODEzLCAwLCAxMTk4MTUsIDExOTgxNywgCisgICAgMTE5ODIxLCAxMTk4MjMsIDExOTgyNSwgMTE5ODI3LCAxMTk4MjksIDExOTgzNCwgMTE5ODM5LCAxMTk4NDEsIDExOTg0NywgCisgICAgMTE5ODUxLCAxMTk4NTUsIDExOTg2MywgMTE5ODY1LCAxMTk4NjcsIDExOTg2OSwgMTE5ODcxLCAxMTk4NzMsIDExOTg3NSwgCisgICAgMTE5ODc3LCAxMTk4NzksIDExOTg4MSwgMTE5ODgzLCAxMTk4ODcsIDExOTg5MSwgMTE5ODkzLCAxMTk4OTUsIDExOTg5NywgCisgICAgMTE5ODk5LCAxMTk5MDEsIDExOTkwNiwgMTE5OTEyLCAxMTk5MTYsIDExOTkyMCwgMTE5OTI0LCAxMTk5MjgsIDExOTkzMywgCisgICAgMTE5OTM3LCAxMTk5MzksIDExOTk0MSwgMTE5OTQ1LCAxMTk5NTEsIDExOTk1MywgMTE5OTU1LCAxMTk5NTcsIDExOTk2MSwgCisgICAgMTE5OTcwLCAxMTk5NzYsIDExOTk4MCwgMTE5OTg0LCAxMTk5ODYsIDExOTk4OCwgMTE5OTkxLCAxMTk5OTMsIDExOTk5NSwgCisgICAgMTE5OTk3LCAxMjAwMDEsIDEyMDAwMywgMTIwMDA3LCAxMjAwMTIsIDEyMDAxNCwgMTIwMDE5LCAxMjAwMjUsIDEyMDAzMiwgCisgICAgMTIwMDM2LCAxMjAwNDAsIDEyMDA0NCwgMTIwMDQ4LCAxMjAwNTQsIDAsIDAsIDAsIDEyMDA1OCwgMTIwMDYwLCAxMjAwNjQsIAorICAgIDEyMDA2OCwgMTIwMDcwLCAxMjAwNzQsIDEyMDA3OCwgMTIwMDgwLCAxMjAwODQsIDEyMDA4NiwgMTIwMDkwLCAxMjAwOTQsIAorICAgIDEyMDA5OCwgMTIwMTAyLCAxMjAxMDYsIDEyMDExMCwgMTIwMTE0LCAxMjAxMTgsIDEyMDEyNCwgMTIwMTI4LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjAxMzIsIDEyMDEzNiwgMTIwMTQwLCAxMjAxNDQsIDEyMDE1MSwgCisgICAgMTIwMTUzLCAxMjAxNTcsIDEyMDE1OSwgMTIwMTYxLCAxMjAxNjUsIDEyMDE2OSwgMTIwMTczLCAxMjAxNzUsIDEyMDE3OSwgCisgICAgMTIwMTgzLCAxMjAxODcsIDEyMDE5MSwgMTIwMTk1LCAxMjAxOTcsIDEyMDIwMSwgMTIwMjAzLCAxMjAyMDksIDEyMDIxMiwgCisgICAgMTIwMjE3LCAxMjAyMTksIDEyMDIyMSwgMTIwMjI0LCAxMjAyMjYsIDEyMDIyOCwgMTIwMjMxLCAxMjAyMzgsIDEyMDI0NSwgCisgICAgMTIwMjUyLCAxMjAyNTcsIDEyMDI2MSwgMTIwMjYzLCAxMjAyNjUsIDAsIDEyMDI2NywgMTIwMjY5LCAxMjAyNzMsIAorICAgIDEyMDI3NywgMTIwMjgxLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAxMjAyODMsIDEyMDI4NywgMTIwMjkyLCAxMjAyOTYsIDEyMDMwMiwgMTIwMzA4LCAxMjAzMTAsIDEyMDMxMiwgCisgICAgMTIwMzE4LCAxMjAzMjAsIDEyMDMyNCwgMTIwMzI4LCAxMjAzMzAsIDEyMDMzNCwgMTIwMzM2LCAxMjAzNDAsIDEyMDM0NCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTIwMzQ4LCAxMjAzNTAsIDEyMDM1MiwgCisgICAgMTIwMzU0LCAxMjAzNTgsIDEyMDM2MCwgMTIwMzYyLCAxMjAzNjQsIDEyMDM2NiwgMTIwMzY4LCAxMjAzNzAsIDEyMDM3MiwgCisgICAgMTIwMzc0LCAxMjAzNzYsIDEyMDM3OCwgMTIwMzgwLCAxMjAzODIsIDEyMDM4NCwgMTIwMzg2LCAxMjAzODgsIDEyMDM5MCwgCisgICAgMTIwMzkyLCAxMjAzOTQsIDEyMDM5NiwgMTIwMzk4LCAxMjA0MDAsIDEyMDQwMiwgMTIwNDA2LCAxMjA0MDgsIDEyMDQxMCwgCisgICAgMTIwNDEyLCAxMjA0MTYsIDEyMDQxOCwgMTIwNDIyLCAxMjA0MjQsIDEyMDQyNiwgMTIwNDMwLCAxMjA0MzQsIDEyMDQ0MCwgCisgICAgMTIwNDQyLCAxMjA0NDQsIDEyMDQ0NiwgMTIwNDQ4LCAxMjA0NTIsIDEyMDQ1NiwgMTIwNDU4LCAxMjA0NjIsIDEyMDQ2NiwgCisgICAgMTIwNDcwLCAxMjA0NzQsIDEyMDQ3OCwgMTIwNDgyLCAxMjA0ODYsIDEyMDQ5MCwgMTIwNDk0LCAxMjA0OTgsIDEyMDUwMiwgCisgICAgMTIwNTA2LCAxMjA1MTAsIDEyMDUxNCwgMTIwNTE4LCAxMjA1MjIsIDEyMDUyNiwgMCwgMTIwNTMwLCAwLCAxMjA1MzIsIAorICAgIDEyMDUzNCwgMTIwNTM2LCAxMjA1MzgsIDEyMDU0MCwgMTIwNTQ4LCAxMjA1NTYsIDEyMDU2NCwgMTIwNTcyLCAxMjA1NzcsIAorICAgIDEyMDU4MiwgMTIwNTg3LCAxMjA1OTEsIDEyMDU5NSwgMTIwNjAwLCAxMjA2MDQsIDEyMDYwNiwgMTIwNjEwLCAxMjA2MTIsIAorICAgIDEyMDYxNCwgMTIwNjE2LCAxMjA2MTgsIDEyMDYyMCwgMTIwNjIyLCAxMjA2MjQsIDEyMDYyOCwgMTIwNjMwLCAxMjA2MzIsIAorICAgIDEyMDYzNCwgMTIwNjM4LCAxMjA2NDIsIDEyMDY0NiwgMTIwNjUwLCAxMjA2NTQsIDEyMDY1NiwgMTIwNjYyLCAxMjA2NjgsIAorICAgIDEyMDY3MCwgMTIwNjcyLCAxMjA2NzQsIDEyMDY3NiwgMTIwNjc4LCAxMjA2ODcsIDEyMDY5NCwgMTIwNzAxLCAxMjA3MDUsIAorICAgIDEyMDcxMiwgMTIwNzE3LCAxMjA3MjQsIDEyMDczMywgMTIwNzM4LCAxMjA3NDIsIDEyMDc0NiwgMTIwNzQ4LCAxMjA3NTIsIAorICAgIDEyMDc1NCwgMTIwNzU4LCAxMjA3NjIsIDEyMDc2NCwgMTIwNzY4LCAxMjA3NzIsIDEyMDc3NiwgMTIwNzc4LCAxMjA3ODAsIAorICAgIDEyMDc4NiwgMTIwNzg4LCAxMjA3OTAsIDEyMDc5MiwgMTIwNzk2LCAxMjA4MDAsIDEyMDgwMiwgMTIwODA2LCAxMjA4MDgsIAorICAgIDEyMDgxMCwgMTIwODEzLCAxMjA4MTcsIDEyMDgxOSwgMTIwODIzLCAxMjA4MjUsIDEyMDgyNywgMTIwODMyLCAxMjA4MzQsIAorICAgIDEyMDgzOCwgMTIwODQyLCAxMjA4NDUsIDEyMDg0OSwgMTIwODUzLCAxMjA4NTcsIDEyMDg2MSwgMTIwODY1LCAxMjA4NjksIAorICAgIDEyMDg3MywgMTIwODc4LCAxMjA4ODIsIDEyMDg4NiwgMTIwODk1LCAxMjA5MDAsIDEyMDkwMywgMTIwOTA1LCAxMjA5MDgsIAorICAgIDEyMDkxMSwgMTIwOTE2LCAxMjA5MTgsIDEyMDkyMSwgMTIwOTI2LCAxMjA5MzAsIDEyMDkzMywgMTIwOTM3LCAxMjA5NDEsIAorICAgIDEyMDk0NCwgMTIwOTQ5LCAxMjA5NTMsIDEyMDk1NywgMTIwOTYxLCAxMjA5NjUsIDEyMDk3MSwgMTIwOTc3LCAxMjA5ODMsIAorICAgIDEyMDk4OSwgMTIwOTk0LCAxMjEwMDUsIDEyMTAwNywgMTIxMDExLCAxMjEwMTMsIDEyMTAxNSwgMTIxMDE5LCAxMjEwMjMsIAorICAgIDEyMTAyNSwgMTIxMDI5LCAxMjEwMzQsIDEyMTAzOSwgMTIxMDQ1LCAxMjEwNDcsIDEyMTA1MSwgMTIxMDU1LCAxMjEwNjIsIAorICAgIDEyMTA2OSwgMTIxMDczLCAxMjEwNzUsIDEyMTA3NywgMTIxMDgxLCAxMjEwODMsIDEyMTA4NywgMTIxMDkxLCAxMjEwOTUsIAorICAgIDEyMTA5NywgMTIxMDk5LCAxMjExMDYsIDEyMTExMCwgMTIxMTEzLCAxMjExMTcsIDEyMTEyMSwgMTIxMTI1LCAxMjExMjcsIAorICAgIDEyMTEzMSwgMTIxMTMzLCAxMjExMzUsIDEyMTEzOSwgMTIxMTQxLCAxMjExNDUsIDEyMTE0OSwgMTIxMTU1LCAxMjExNTksIAorICAgIDEyMTE2MywgMTIxMTY3LCAxMjExNjksIDEyMTE3MiwgMTIxMTc2LCAxMjExODMsIDEyMTE5MiwgMTIxMjAxLCAxMjEyMDksIAorICAgIDEyMTIxNywgMTIxMjE5LCAxMjEyMjMsIDEyMTIyNSwgMTIxMjI5LCAxMjEyNDAsIDEyMTI0NCwgMTIxMjUwLCAxMjEyNTYsIAorICAgIDEyMTI2MSwgMCwgMTIxMjYzLCAxMjEyNjcsIDEyMTI2OSwgMTIxMjcxLCAwLCAwLCAwLCAxMjEyNzMsIDEyMTI3OCwgCisgICAgMTIxMjg4LCAxMjEzMDMsIDEyMTMxNSwgMTIxMzI3LCAxMjEzMzEsIDEyMTMzNSwgMTIxMzQxLCAxMjEzNDMsIDEyMTM1MSwgCisgICAgMTIxMzU5LCAxMjEzNjEsIDEyMTM2NSwgMTIxMzcxLCAxMjEzNzcsIDEyMTM4NCwgMTIxMzkxLCAxMjEzOTMsIDEyMTM5NSwgCisgICAgMTIxMzk4LCAxMjE0MDAsIDEyMTQwNiwgMTIxNDA4LCAxMjE0MTEsIDEyMTQxNSwgMTIxNDIxLCAxMjE0MjcsIDEyMTQzOCwgCisgICAgMTIxNDQ0LCAxMjE0NTEsIDEyMTQ1OSwgMTIxNDYzLCAxMjE0NzEsIDEyMTQ3OSwgMTIxNDg1LCAxMjE0OTEsIDEyMTQ5OCwgCisgICAgMTIxNTAwLCAxMjE1MDQsIDEyMTUwNiwgMTIxNTA4LCAxMjE1MTMsIDEyMTUxNSwgMTIxNTE3LCAxMjE1MTksIDEyMTUyMSwgCisgICAgMTIxNTI1LCAxMjE1MzYsIDEyMTU0MiwgMTIxNTQ2LCAxMjE1NTAsIDEyMTU1NCwgMTIxNTYwLCAxMjE1NjYsIDEyMTU3MiwgCisgICAgMTIxNTc4LCAxMjE1ODMsIDEyMTU4OCwgMTIxNTk0LCAxMjE2MDAsIDEyMTYwNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTIxNjE0LCAxMjE2MjEsIDEyMTYyOCwgMTIxNjM1LCAxMjE2NDMsIAorICAgIDEyMTY1MSwgMTIxNjU5LCAxMjE2NjcsIDEyMTY3NSwgMTIxNjgzLCAxMjE2OTEsIDEyMTY5OSwgMTIxNzA3LCAxMjE3MTMsIAorICAgIDEyMTcxOSwgMTIxNzI1LCAxMjE3MzEsIDEyMTczNywgMTIxNzQzLCAxMjE3NDksIDEyMTc1NSwgMTIxNzYxLCAxMjE3NjcsIAorICAgIDEyMTc3MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMTIxNzI5LCAxMjE3MzMsIDEyMTczNywgMTIxNzQyLCAxMjE3NDcsIDAsIDEyMTc0OSwgMTIxNzU4LCAKLSAgICAxMjE3NjYsIDEyMTc3NSwgMTIxNzg5LCAxMjE4MDMsIDEyMTgxNywgMTIxODI0LCAxMjE4MzEsIDEyMTgzNSwgMTIxODQ0LCAKLSAgICAxMjE4NTIsIDEyMTg1NiwgMTIxODY1LCAxMjE4NzIsIDEyMTg3NiwgMCwgMTIxODgwLCAxMjE4ODQsIDEyMTg5MSwgMCwgCi0gICAgMTIxODk1LCAwLCAxMjE4OTksIDAsIDEyMTkwNiwgMCwgMTIxOTE1LCAxMjE5MjcsIDEyMTkzOSwgMCwgMTIxOTQzLCAKLSAgICAxMjE5NDcsIDEyMTk1MSwgMTIxOTU1LCAxMjE5NTksIDEyMTk2NywgMCwgMCwgMTIxOTc1LCAxMjE5NzksIDEyMTk4MywgCi0gICAgMTIxOTg3LCAwLCAxMjE5OTEsIDAsIDAsIDEyMTk5NywgMTIyMDA5LCAxMjIwMTcsIDEyMjAyMSwgMCwgMTIyMDI1LCAKLSAgICAxMjIwMjksIDEyMjAzNSwgMTIyMDQyLCAxMjIwNTMsIDEyMjA2MywgMTIyMDc0LCAxMjIwODUsIDEyMjA5NCwgMTIyMTA1LCAKLSAgICAxMjIxMTEsIDEyMjExNywgMCwgMCwgMCwgMCwgMTIyMTIzLCAxMjIxMzIsIDEyMjEzOSwgMTIyMTQ1LCAxMjIxNDksIAotICAgIDEyMjE1MywgMTIyMTU3LCAxMjIxNjYsIDEyMjE3OCwgMTIyMTgyLCAxMjIxODksIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDEyMTc3OSwgMTIxNzgzLCAxMjE3ODcsIDEyMTc5MiwgMTIxNzk3LCAwLCAxMjE3OTksIDEyMTgwOCwgCisgICAgMTIxODE2LCAxMjE4MjQsIDEyMTgzNywgMTIxODUwLCAxMjE4NjMsIDEyMTg3MCwgMTIxODc3LCAxMjE4ODEsIDEyMTg5MCwgCisgICAgMTIxODk4LCAxMjE5MDIsIDEyMTkxMSwgMTIxOTE4LCAxMjE5MjIsIDAsIDEyMTkyNiwgMTIxOTMwLCAxMjE5MzcsIDAsIAorICAgIDEyMTk0MSwgMCwgMTIxOTQ1LCAwLCAxMjE5NTIsIDAsIDEyMTk2MSwgMTIxOTczLCAxMjE5ODUsIDAsIDEyMTk4OSwgCisgICAgMTIxOTkzLCAxMjE5OTcsIDEyMjAwMSwgMTIyMDA1LCAxMjIwMTMsIDAsIDAsIDEyMjAyMSwgMTIyMDI1LCAxMjIwMjksIAorICAgIDEyMjAzMywgMCwgMTIyMDM3LCAwLCAwLCAxMjIwNDMsIDEyMjA1NCwgMTIyMDYyLCAxMjIwNjYsIDAsIDEyMjA3MCwgCisgICAgMTIyMDc0LCAxMjIwODAsIDEyMjA4NywgMTIyMDk4LCAxMjIxMDgsIDEyMjExOCwgMTIyMTI5LCAxMjIxMzgsIDEyMjE0OSwgCisgICAgMTIyMTU1LCAxMjIxNjEsIDAsIDAsIDAsIDAsIDEyMjE2NywgMTIyMTc2LCAxMjIxODMsIDEyMjE4OSwgMTIyMTkzLCAKKyAgICAxMjIxOTcsIDEyMjIwMSwgMTIyMjEwLCAxMjIyMjIsIDEyMjIyNiwgMTIyMjMzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjIxOTYsIDEyMjE5OCwgMTIyMjAwLCAKLSAgICAxMjIyMDQsIDEyMjIwOCwgMTIyMjEyLCAxMjIyMjEsIDEyMjIyMywgMTIyMjI1LCAxMjIyMjgsIDEyMjIzMCwgMTIyMjMyLCAKLSAgICAxMjIyMzYsIDEyMjIzOCwgMTIyMjQyLCAxMjIyNDQsIDEyMjI0OCwgMTIyMjUwLCAxMjIyNTIsIDEyMjI1NiwgMTIyMjYwLCAKLSAgICAxMjIyNjYsIDEyMjI2OCwgMTIyMjcyLCAxMjIyNzQsIDEyMjI3OCwgMTIyMjgyLCAxMjIyODYsIDEyMjI5MCwgMTIyMjkyLCAKLSAgICAxMjIyOTQsIDEyMjI5OCwgMTIyMzAyLCAxMjIzMDYsIDEyMjMxMCwgMTIyMzEyLCAxMjIzMTQsIDEyMjMxNiwgMTIyMzIxLCAKLSAgICAxMjIzMjYsIDEyMjMyOSwgMTIyMzM3LCAxMjIzNDUsIDEyMjM0NywgMTIyMzUyLCAxMjIzNTUsIDEyMjM2MCwgMTIyMzcxLCAKLSAgICAxMjIzNzgsIDEyMjM4MywgMTIyMzg4LCAxMjIzOTAsIDEyMjM5NCwgMTIyMzk2LCAxMjI0MDAsIDEyMjQwMiwgMTIyNDA2LCAKLSAgICAxMjI0MTAsIDEyMjQxMywgMTIyNDE2LCAxMjI0MTgsIDEyMjQyMSwgMTIyNDIzLCAxMjI0MjcsIDEyMjQyOSwgMTIyNDMxLCAKLSAgICAxMjI0MzMsIDEyMjQzNywgMTIyNDM5LCAxMjI0NDMsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyMjI0MCwgMTIyMjQyLCAxMjIyNDQsIAorICAgIDEyMjI0OCwgMTIyMjUyLCAxMjIyNTYsIDEyMjI2NSwgMTIyMjY3LCAxMjIyNjksIDEyMjI3MiwgMTIyMjc0LCAxMjIyNzYsIAorICAgIDEyMjI4MCwgMTIyMjgyLCAxMjIyODYsIDEyMjI4OCwgMTIyMjkyLCAxMjIyOTQsIDEyMjI5NiwgMTIyMzAwLCAxMjIzMDQsIAorICAgIDEyMjMxMCwgMTIyMzEyLCAxMjIzMTYsIDEyMjMxOCwgMTIyMzIyLCAxMjIzMjYsIDEyMjMzMCwgMTIyMzM0LCAxMjIzMzYsIAorICAgIDEyMjMzOCwgMTIyMzQyLCAxMjIzNDYsIDEyMjM1MCwgMTIyMzU0LCAxMjIzNTYsIDEyMjM1OCwgMTIyMzYwLCAxMjIzNjUsIAorICAgIDEyMjM3MCwgMTIyMzczLCAxMjIzODEsIDEyMjM4OSwgMTIyMzkxLCAxMjIzOTYsIDEyMjM5OSwgMTIyNDA0LCAxMjI0MTUsIAorICAgIDEyMjQyMiwgMTIyNDI3LCAxMjI0MzIsIDEyMjQzNCwgMTIyNDM4LCAxMjI0NDAsIDEyMjQ0NCwgMTIyNDQ2LCAxMjI0NTAsIAorICAgIDEyMjQ1NCwgMTIyNDU3LCAxMjI0NjAsIDEyMjQ2MiwgMTIyNDY1LCAxMjI0NjcsIDEyMjQ3MSwgMTIyNDczLCAxMjI0NzUsIAorICAgIDEyMjQ3NywgMTIyNDgxLCAxMjI0ODMsIDEyMjQ4NywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTIyNDQ2LCAKLSAgICAxMjI0NTEsIDEyMjQ1NiwgMTIyNDYxLCAxMjI0NjYsIDEyMjQ3MSwgMTIyNDc2LCAxMjI0ODMsIDEyMjQ5MCwgMTIyNDk3LCAKLSAgICAxMjI1MDQsIDEyMjUwOSwgMTIyNTE0LCAxMjI1MTksIDEyMjUyNCwgMTIyNTMxLCAxMjI1MzcsIDEyMjU0NCwgMTIyNTUxLCAKLSAgICAxMjI1NTgsIDEyMjU2MywgMTIyNTY4LCAxMjI1NzMsIDEyMjU3OCwgMTIyNTgzLCAxMjI1OTAsIDEyMjU5NywgMTIyNjAyLCAKLSAgICAxMjI2MDcsIDEyMjYxNCwgMTIyNjIxLCAxMjI2MjksIDEyMjYzNywgMTIyNjQ0LCAxMjI2NTEsIDEyMjY1OSwgMTIyNjY3LCAKLSAgICAxMjI2NzUsIDEyMjY4MiwgMTIyNjkyLCAxMjI3MDMsIDEyMjcwOCwgMTIyNzE1LCAxMjI3MjIsIDEyMjcyOSwgMTIyNzM3LCAKLSAgICAxMjI3NDUsIDEyMjc1NiwgMTIyNzY0LCAxMjI3NzIsIDEyMjc4MCwgMTIyNzg1LCAxMjI3OTAsIDEyMjc5NSwgMTIyODAwLCAKLSAgICAxMjI4MDUsIDEyMjgxMCwgMTIyODE1LCAxMjI4MjAsIDEyMjgyNSwgMTIyODMwLCAxMjI4MzUsIDEyMjg0MCwgMTIyODQ3LCAKLSAgICAxMjI4NTIsIDEyMjg1NywgMTIyODY0LCAxMjI4NjksIDEyMjg3NCwgMTIyODc5LCAxMjI4ODQsIDEyMjg4OSwgMTIyODk0LCAKLSAgICAxMjI4OTksIDEyMjkwNCwgMTIyOTA5LCAxMjI5MTQsIDEyMjkxOSwgMTIyOTI0LCAxMjI5MzEsIDEyMjkzOSwgMTIyOTQ0LCAKLSAgICAxMjI5NDksIDEyMjk1NiwgMTIyOTYxLCAxMjI5NjYsIDEyMjk3MSwgMTIyOTc4LCAxMjI5ODMsIDEyMjk5MCwgMTIyOTk1LCAKLSAgICAxMjMwMDIsIDEyMzAwNywgMTIzMDE2LCAxMjMwMjUsIDEyMzAzMCwgMTIzMDM1LCAxMjMwNDAsIDEyMzA0NSwgMTIzMDUwLCAKLSAgICAxMjMwNTUsIDEyMzA2MCwgMTIzMDY1LCAxMjMwNzAsIDEyMzA3NSwgMTIzMDgwLCAxMjMwODUsIDEyMzA5MCwgMTIzMDk4LCAKLSAgICAxMjMxMDYsIDEyMzExMSwgMTIzMTE2LCAxMjMxMjEsIDEyMzEyNiwgMTIzMTMxLCAxMjMxMzcsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDEyMzE0MywgMTIzMTQ3LCAxMjMxNTEsIDEyMzE1NSwgMTIzMTU5LCAxMjMxNjMsIDEyMzE2NywgCi0gICAgMTIzMTcxLCAxMjMxNzUsIDEyMzE3OSwgMTIzMTgzLCAxMjMxODcsIDEyMzE5MSwgMTIzMTk1LCAxMjMxOTksIDEyMzIwMywgCi0gICAgMTIzMjA3LCAxMjMyMTEsIDEyMzIxNSwgMTIzMjE5LCAxMjMyMjMsIDEyMzIyNywgMTIzMjMxLCAxMjMyMzUsIDEyMzIzOSwgCi0gICAgMTIzMjQzLCAxMjMyNDcsIDEyMzI1MSwgMTIzMjU1LCAxMjMyNTksIDEyMzI2MywgMTIzMjY3LCAxMjMyNzEsIDEyMzI3NSwgCi0gICAgMTIzMjc5LCAxMjMyODMsIDEyMzI4NywgMTIzMjkxLCAxMjMyOTUsIDEyMzI5OSwgMTIzMzAzLCAxMjMzMDcsIDEyMzMxMSwgCi0gICAgMTIzMzE1LCAxMjMzMTksIDEyMzMyMywgMTIzMzI3LCAxMjMzMzEsIDEyMzMzNSwgMTIzMzM5LCAxMjMzNDMsIDEyMzM0NywgCi0gICAgMTIzMzUxLCAxMjMzNTUsIDEyMzM1OSwgMTIzMzYzLCAxMjMzNjcsIDEyMzM3MSwgMTIzMzc1LCAxMjMzNzksIDEyMzM4MywgCi0gICAgMTIzMzg3LCAxMjMzOTEsIDEyMzM5NSwgMTIzMzk5LCAxMjM0MDMsIDEyMzQwNywgMTIzNDExLCAxMjM0MTUsIDEyMzQxOSwgCi0gICAgMTIzNDIzLCAxMjM0MjcsIDEyMzQzMSwgMTIzNDM1LCAxMjM0MzksIDEyMzQ0MywgMTIzNDQ3LCAxMjM0NTEsIDEyMzQ1NSwgCi0gICAgMTIzNDU5LCAxMjM0NjMsIDEyMzQ2NywgMTIzNDcxLCAxMjM0NzUsIDEyMzQ3OSwgMTIzNDgzLCAxMjM0ODcsIDEyMzQ5MSwgCi0gICAgMTIzNDk1LCAxMjM0OTksIDEyMzUwMywgMTIzNTA3LCAxMjM1MTEsIDEyMzUxNSwgMTIzNTE5LCAxMjM1MjMsIDEyMzUyNywgCi0gICAgMTIzNTMxLCAxMjM1MzUsIDEyMzUzOSwgMTIzNTQzLCAxMjM1NDcsIDEyMzU1MSwgMTIzNTU1LCAxMjM1NTksIDEyMzU2MywgCi0gICAgMTIzNTY3LCAxMjM1NzEsIDEyMzU3NSwgMTIzNTc5LCAxMjM1ODMsIDEyMzU4NywgMTIzNTkxLCAxMjM1OTUsIDEyMzU5OSwgCi0gICAgMTIzNjAzLCAxMjM2MDcsIDEyMzYxMSwgMTIzNjE1LCAxMjM2MTksIDEyMzYyMywgMTIzNjI3LCAxMjM2MzEsIDEyMzYzNSwgCi0gICAgMTIzNjM5LCAxMjM2NDMsIDEyMzY0NywgMTIzNjUxLCAxMjM2NTUsIDEyMzY1OSwgMTIzNjYzLCAxMjM2NjcsIDEyMzY3MSwgCi0gICAgMTIzNjc1LCAxMjM2NzksIDEyMzY4MywgMTIzNjg3LCAxMjM2OTEsIDEyMzY5NSwgMTIzNjk5LCAxMjM3MDMsIDEyMzcwNywgCi0gICAgMTIzNzExLCAxMjM3MTUsIDEyMzcxOSwgMTIzNzIzLCAxMjM3MjcsIDEyMzczMSwgMTIzNzM1LCAxMjM3MzksIDEyMzc0MywgCi0gICAgMTIzNzQ3LCAxMjM3NTEsIDEyMzc1NSwgMTIzNzU5LCAxMjM3NjMsIDEyMzc2NywgMTIzNzcxLCAxMjM3NzUsIDEyMzc3OSwgCi0gICAgMTIzNzgzLCAxMjM3ODcsIDEyMzc5MSwgMTIzNzk1LCAxMjM3OTksIDEyMzgwMywgMTIzODA3LCAxMjM4MTEsIDEyMzgxNSwgCi0gICAgMTIzODE5LCAxMjM4MjMsIDEyMzgyNywgMTIzODMxLCAxMjM4MzUsIDEyMzgzOSwgMTIzODQzLCAxMjM4NDcsIDEyMzg1MSwgCi0gICAgMTIzODU1LCAxMjM4NTksIDEyMzg2MywgMTIzODY3LCAxMjM4NzEsIDEyMzg3NSwgMTIzODc5LCAxMjM4ODMsIDEyMzg4NywgCi0gICAgMTIzODkxLCAxMjM4OTUsIDEyMzg5OSwgMTIzOTAzLCAxMjM5MDcsIDEyMzkxMSwgMTIzOTE1LCAxMjM5MTksIDEyMzkyMywgCi0gICAgMTIzOTI3LCAxMjM5MzEsIDEyMzkzNSwgMTIzOTM5LCAxMjM5NDMsIDEyMzk0NywgMTIzOTUxLCAxMjM5NTUsIDEyMzk1OSwgCi0gICAgMTIzOTYzLCAxMjM5NjcsIDEyMzk3MSwgMTIzOTc1LCAxMjM5NzksIDEyMzk4MywgMTIzOTg3LCAxMjM5OTEsIDEyMzk5NSwgCi0gICAgMTIzOTk5LCAxMjQwMDMsIDEyNDAwNywgMTI0MDExLCAxMjQwMTUsIDEyNDAxOSwgMTI0MDIzLCAxMjQwMjcsIDEyNDAzMSwgCi0gICAgMTI0MDM1LCAxMjQwMzksIDEyNDA0MywgMTI0MDQ3LCAxMjQwNTEsIDEyNDA1NSwgMTI0MDU5LCAxMjQwNjMsIDEyNDA2NywgCi0gICAgMTI0MDcxLCAxMjQwNzUsIDEyNDA3OSwgMTI0MDgzLCAxMjQwODcsIDEyNDA5MSwgMTI0MDk1LCAxMjQwOTksIDEyNDEwMywgCi0gICAgMTI0MTA3LCAxMjQxMTEsIDEyNDExNSwgMTI0MTE5LCAxMjQxMjMsIDEyNDEyNywgMTI0MTMxLCAxMjQxMzUsIDEyNDEzOSwgCi0gICAgMTI0MTQzLCAxMjQxNDcsIDEyNDE1MSwgMTI0MTU1LCAxMjQxNTksIDEyNDE2MywgMTI0MTY3LCAxMjQxNzEsIDEyNDE3NSwgCi0gICAgMTI0MTc5LCAxMjQxODMsIDEyNDE4NywgMTI0MTkxLCAxMjQxOTUsIDEyNDE5OSwgMTI0MjAzLCAxMjQyMDcsIDEyNDIxMSwgCi0gICAgMTI0MjE1LCAxMjQyMTksIDEyNDIyMywgMTI0MjI3LCAxMjQyMzEsIDEyNDIzNSwgMTI0MjM5LCAxMjQyNDMsIDEyNDI0NywgCi0gICAgMTI0MjUxLCAxMjQyNTUsIDEyNDI1OSwgMTI0MjYzLCAxMjQyNjcsIDEyNDI3MSwgMTI0Mjc1LCAxMjQyNzksIDEyNDI4MywgCi0gICAgMTI0Mjg3LCAxMjQyOTEsIDEyNDI5NSwgMTI0Mjk5LCAxMjQzMDMsIDEyNDMwNywgMTI0MzExLCAxMjQzMTUsIDEyNDMxOSwgCi0gICAgMTI0MzIzLCAxMjQzMjcsIDEyNDMzMSwgMTI0MzM1LCAxMjQzMzksIDEyNDM0MywgMTI0MzQ3LCAxMjQzNTEsIDEyNDM1NSwgCi0gICAgMTI0MzU5LCAxMjQzNjMsIDEyNDM2NywgMTI0MzcxLCAxMjQzNzUsIDEyNDM3OSwgMTI0MzgzLCAxMjQzODcsIDEyNDM5MSwgCi0gICAgMTI0Mzk1LCAxMjQzOTksIDEyNDQwMywgMTI0NDA3LCAxMjQ0MTEsIDEyNDQxNSwgMTI0NDE5LCAxMjQ0MjMsIDEyNDQyNywgCi0gICAgMTI0NDMxLCAxMjQ0MzUsIDEyNDQzOSwgMTI0NDQzLCAxMjQ0NDcsIDEyNDQ1MSwgMTI0NDU1LCAxMjQ0NTksIDEyNDQ2MywgCi0gICAgMTI0NDY3LCAxMjQ0NzEsIDEyNDQ3NSwgMTI0NDc5LCAxMjQ0ODMsIDEyNDQ4NywgMTI0NDkxLCAxMjQ0OTUsIDEyNDQ5OSwgCi0gICAgMTI0NTAzLCAxMjQ1MDcsIDEyNDUxMSwgMTI0NTE1LCAxMjQ1MTksIDEyNDUyMywgMTI0NTI3LCAxMjQ1MzEsIDEyNDUzNSwgCi0gICAgMTI0NTM5LCAxMjQ1NDMsIDEyNDU0NywgMTI0NTUxLCAxMjQ1NTUsIDEyNDU1OSwgMTI0NTYzLCAxMjQ1NjcsIDEyNDU3MSwgCi0gICAgMTI0NTc1LCAxMjQ1NzksIDEyNDU4MywgMTI0NTg3LCAxMjQ1OTEsIDEyNDU5NSwgMTI0NTk5LCAxMjQ2MDMsIDEyNDYwNywgCi0gICAgMTI0NjExLCAxMjQ2MTUsIDEyNDYxOSwgMTI0NjIzLCAxMjQ2MjcsIDEyNDYzMSwgMTI0NjM1LCAxMjQ2MzksIDEyNDY0MywgCi0gICAgMTI0NjQ3LCAxMjQ2NTEsIDEyNDY1NSwgMTI0NjU5LCAxMjQ2NjMsIDEyNDY2NywgMTI0NjcxLCAxMjQ2NzUsIDEyNDY3OSwgCi0gICAgMTI0NjgzLCAxMjQ2ODcsIDEyNDY5MSwgMTI0Njk1LCAxMjQ2OTksIDEyNDcwMywgMTI0NzA3LCAxMjQ3MTEsIDEyNDcxNSwgCi0gICAgMTI0NzE5LCAxMjQ3MjMsIDEyNDcyNywgMTI0NzMxLCAxMjQ3MzUsIDEyNDczOSwgMTI0NzQzLCAxMjQ3NDcsIDEyNDc1MSwgCi0gICAgMTI0NzU1LCAxMjQ3NTksIDEyNDc2MywgMTI0NzY3LCAxMjQ3NzEsIDEyNDc3NSwgMTI0Nzc5LCAxMjQ3ODMsIDEyNDc4NywgCi0gICAgMTI0NzkxLCAxMjQ3OTUsIDEyNDc5OSwgMTI0ODAzLCAxMjQ4MDcsIDEyNDgxMSwgMTI0ODE1LCAxMjQ4MTksIDEyNDgyMywgCi0gICAgMTI0ODI3LCAxMjQ4MzEsIDEyNDgzNSwgMTI0ODM5LCAxMjQ4NDMsIDEyNDg0NywgMTI0ODUxLCAxMjQ4NTUsIDEyNDg1OSwgCi0gICAgMTI0ODYzLCAxMjQ4NjcsIDEyNDg3MSwgMTI0ODc1LCAxMjQ4NzksIDEyNDg4MywgMTI0ODg3LCAxMjQ4OTEsIDEyNDg5NSwgCi0gICAgMTI0ODk5LCAxMjQ5MDMsIDEyNDkwNywgMTI0OTExLCAxMjQ5MTUsIDEyNDkxOSwgMTI0OTIzLCAxMjQ5MjcsIDEyNDkzMSwgCi0gICAgMTI0OTM1LCAxMjQ5MzksIDEyNDk0MywgMTI0OTQ3LCAxMjQ5NTEsIDEyNDk1NSwgMTI0OTU5LCAxMjQ5NjMsIDEyNDk2NywgCi0gICAgMTI0OTcxLCAxMjQ5NzUsIDEyNDk3OSwgMTI0OTgzLCAxMjQ5ODcsIDEyNDk5MSwgMTI0OTk1LCAxMjQ5OTksIDEyNTAwMywgCi0gICAgMTI1MDA3LCAxMjUwMTEsIDEyNTAxNSwgMTI1MDE5LCAxMjUwMjMsIDEyNTAyNywgMTI1MDMxLCAxMjUwMzUsIDEyNTAzOSwgCi0gICAgMTI1MDQzLCAxMjUwNDcsIDEyNTA1MSwgMTI1MDU1LCAxMjUwNTksIDEyNTA2MywgMTI1MDY3LCAxMjUwNzEsIDEyNTA3NSwgCi0gICAgMTI1MDc5LCAxMjUwODMsIDEyNTA4NywgMTI1MDkxLCAxMjUwOTUsIDEyNTA5OSwgMTI1MTAzLCAxMjUxMDcsIDEyNTExMSwgCi0gICAgMTI1MTE1LCAxMjUxMTksIDEyNTEyMywgMTI1MTI3LCAxMjUxMzEsIDEyNTEzNSwgMTI1MTM5LCAxMjUxNDMsIDEyNTE0NywgCi0gICAgMTI1MTUxLCAxMjUxNTUsIDEyNTE1OSwgMTI1MTYzLCAxMjUxNjcsIDEyNTE3MSwgMTI1MTc1LCAxMjUxNzksIDEyNTE4MywgCi0gICAgMTI1MTg3LCAxMjUxOTEsIDEyNTE5NSwgMTI1MTk5LCAxMjUyMDMsIDEyNTIwNywgMTI1MjExLCAxMjUyMTUsIDEyNTIxOSwgCi0gICAgMTI1MjIzLCAxMjUyMjcsIDEyNTIzMSwgMTI1MjM1LCAxMjUyMzksIDEyNTI0MywgMTI1MjQ3LCAxMjUyNTEsIDEyNTI1NSwgCi0gICAgMTI1MjU5LCAxMjUyNjMsIDEyNTI2NywgMTI1MjcxLCAxMjUyNzUsIDEyNTI3OSwgMTI1MjgzLCAxMjUyODcsIDEyNTI5MSwgCi0gICAgMTI1Mjk1LCAxMjUyOTksIDEyNTMwMywgMTI1MzA3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjI0OTAsIAorICAgIDEyMjQ5NSwgMTIyNTAwLCAxMjI1MDUsIDEyMjUxMCwgMTIyNTE1LCAxMjI1MjAsIDEyMjUyNywgMTIyNTM0LCAxMjI1NDEsIAorICAgIDEyMjU0OCwgMTIyNTUzLCAxMjI1NTgsIDEyMjU2MywgMTIyNTY4LCAxMjI1NzUsIDEyMjU4MSwgMTIyNTg4LCAxMjI1OTUsIAorICAgIDEyMjYwMiwgMTIyNjA3LCAxMjI2MTIsIDEyMjYxNywgMTIyNjIyLCAxMjI2MjcsIDEyMjYzNCwgMTIyNjQxLCAxMjI2NDYsIAorICAgIDEyMjY1MSwgMTIyNjU4LCAxMjI2NjUsIDEyMjY3MywgMTIyNjgxLCAxMjI2ODgsIDEyMjY5NSwgMTIyNzAzLCAxMjI3MTEsIAorICAgIDEyMjcxOSwgMTIyNzI2LCAxMjI3MzYsIDEyMjc0NywgMTIyNzUyLCAxMjI3NTksIDEyMjc2NiwgMTIyNzczLCAxMjI3ODEsIAorICAgIDEyMjc4OSwgMTIyODAwLCAxMjI4MDgsIDEyMjgxNiwgMTIyODI0LCAxMjI4MjksIDEyMjgzNCwgMTIyODM5LCAxMjI4NDQsIAorICAgIDEyMjg0OSwgMTIyODU0LCAxMjI4NTksIDEyMjg2NCwgMTIyODY5LCAxMjI4NzQsIDEyMjg3OSwgMTIyODg0LCAxMjI4OTEsIAorICAgIDEyMjg5NiwgMTIyOTAxLCAxMjI5MDgsIDEyMjkxMywgMTIyOTE4LCAxMjI5MjMsIDEyMjkyOCwgMTIyOTMzLCAxMjI5MzgsIAorICAgIDEyMjk0MywgMTIyOTQ4LCAxMjI5NTMsIDEyMjk1OCwgMTIyOTYzLCAxMjI5NjgsIDEyMjk3NSwgMTIyOTgzLCAxMjI5ODgsIAorICAgIDEyMjk5MywgMTIzMDAwLCAxMjMwMDUsIDEyMzAxMCwgMTIzMDE1LCAxMjMwMjIsIDEyMzAyNywgMTIzMDM0LCAxMjMwMzksIAorICAgIDEyMzA0NiwgMTIzMDUxLCAxMjMwNjAsIDEyMzA2OSwgMTIzMDc0LCAxMjMwNzksIDEyMzA4NCwgMTIzMDg5LCAxMjMwOTQsIAorICAgIDEyMzA5OSwgMTIzMTA0LCAxMjMxMDksIDEyMzExNCwgMTIzMTE5LCAxMjMxMjQsIDEyMzEyOSwgMTIzMTM0LCAxMjMxNDIsIAorICAgIDEyMzE1MCwgMTIzMTU1LCAxMjMxNjAsIDEyMzE2NSwgMTIzMTcwLCAxMjMxNzUsIDEyMzE4MSwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMTIzMTg3LCAxMjMxOTEsIDEyMzE5NSwgMTIzMTk5LCAxMjMyMDMsIDEyMzIwNywgMTIzMjExLCAKKyAgICAxMjMyMTUsIDEyMzIxOSwgMTIzMjIzLCAxMjMyMjcsIDEyMzIzMSwgMTIzMjM1LCAxMjMyMzksIDEyMzI0MywgMTIzMjQ3LCAKKyAgICAxMjMyNTEsIDEyMzI1NSwgMTIzMjU5LCAxMjMyNjMsIDEyMzI2NywgMTIzMjcxLCAxMjMyNzUsIDEyMzI3OSwgMTIzMjgzLCAKKyAgICAxMjMyODcsIDEyMzI5MSwgMTIzMjk1LCAxMjMyOTksIDEyMzMwMywgMTIzMzA3LCAxMjMzMTEsIDEyMzMxNSwgMTIzMzE5LCAKKyAgICAxMjMzMjMsIDEyMzMyNywgMTIzMzMxLCAxMjMzMzUsIDEyMzMzOSwgMTIzMzQzLCAxMjMzNDcsIDEyMzM1MSwgMTIzMzU1LCAKKyAgICAxMjMzNTksIDEyMzM2MywgMTIzMzY3LCAxMjMzNzEsIDEyMzM3NSwgMTIzMzc5LCAxMjMzODMsIDEyMzM4NywgMTIzMzkxLCAKKyAgICAxMjMzOTUsIDEyMzM5OSwgMTIzNDAzLCAxMjM0MDcsIDEyMzQxMSwgMTIzNDE1LCAxMjM0MTksIDEyMzQyMywgMTIzNDI3LCAKKyAgICAxMjM0MzEsIDEyMzQzNSwgMTIzNDM5LCAxMjM0NDMsIDEyMzQ0NywgMTIzNDUxLCAxMjM0NTUsIDEyMzQ1OSwgMTIzNDYzLCAKKyAgICAxMjM0NjcsIDEyMzQ3MSwgMTIzNDc1LCAxMjM0NzksIDEyMzQ4MywgMTIzNDg3LCAxMjM0OTEsIDEyMzQ5NSwgMTIzNDk5LCAKKyAgICAxMjM1MDMsIDEyMzUwNywgMTIzNTExLCAxMjM1MTUsIDEyMzUxOSwgMTIzNTIzLCAxMjM1MjcsIDEyMzUzMSwgMTIzNTM1LCAKKyAgICAxMjM1MzksIDEyMzU0MywgMTIzNTQ3LCAxMjM1NTEsIDEyMzU1NSwgMTIzNTU5LCAxMjM1NjMsIDEyMzU2NywgMTIzNTcxLCAKKyAgICAxMjM1NzUsIDEyMzU3OSwgMTIzNTgzLCAxMjM1ODcsIDEyMzU5MSwgMTIzNTk1LCAxMjM1OTksIDEyMzYwMywgMTIzNjA3LCAKKyAgICAxMjM2MTEsIDEyMzYxNSwgMTIzNjE5LCAxMjM2MjMsIDEyMzYyNywgMTIzNjMxLCAxMjM2MzUsIDEyMzYzOSwgMTIzNjQzLCAKKyAgICAxMjM2NDcsIDEyMzY1MSwgMTIzNjU1LCAxMjM2NTksIDEyMzY2MywgMTIzNjY3LCAxMjM2NzEsIDEyMzY3NSwgMTIzNjc5LCAKKyAgICAxMjM2ODMsIDEyMzY4NywgMTIzNjkxLCAxMjM2OTUsIDEyMzY5OSwgMTIzNzAzLCAxMjM3MDcsIDEyMzcxMSwgMTIzNzE1LCAKKyAgICAxMjM3MTksIDEyMzcyMywgMTIzNzI3LCAxMjM3MzEsIDEyMzczNSwgMTIzNzM5LCAxMjM3NDMsIDEyMzc0NywgMTIzNzUxLCAKKyAgICAxMjM3NTUsIDEyMzc1OSwgMTIzNzYzLCAxMjM3NjcsIDEyMzc3MSwgMTIzNzc1LCAxMjM3NzksIDEyMzc4MywgMTIzNzg3LCAKKyAgICAxMjM3OTEsIDEyMzc5NSwgMTIzNzk5LCAxMjM4MDMsIDEyMzgwNywgMTIzODExLCAxMjM4MTUsIDEyMzgxOSwgMTIzODIzLCAKKyAgICAxMjM4MjcsIDEyMzgzMSwgMTIzODM1LCAxMjM4MzksIDEyMzg0MywgMTIzODQ3LCAxMjM4NTEsIDEyMzg1NSwgMTIzODU5LCAKKyAgICAxMjM4NjMsIDEyMzg2NywgMTIzODcxLCAxMjM4NzUsIDEyMzg3OSwgMTIzODgzLCAxMjM4ODcsIDEyMzg5MSwgMTIzODk1LCAKKyAgICAxMjM4OTksIDEyMzkwMywgMTIzOTA3LCAxMjM5MTEsIDEyMzkxNSwgMTIzOTE5LCAxMjM5MjMsIDEyMzkyNywgMTIzOTMxLCAKKyAgICAxMjM5MzUsIDEyMzkzOSwgMTIzOTQzLCAxMjM5NDcsIDEyMzk1MSwgMTIzOTU1LCAxMjM5NTksIDEyMzk2MywgMTIzOTY3LCAKKyAgICAxMjM5NzEsIDEyMzk3NSwgMTIzOTc5LCAxMjM5ODMsIDEyMzk4NywgMTIzOTkxLCAxMjM5OTUsIDEyMzk5OSwgMTI0MDAzLCAKKyAgICAxMjQwMDcsIDEyNDAxMSwgMTI0MDE1LCAxMjQwMTksIDEyNDAyMywgMTI0MDI3LCAxMjQwMzEsIDEyNDAzNSwgMTI0MDM5LCAKKyAgICAxMjQwNDMsIDEyNDA0NywgMTI0MDUxLCAxMjQwNTUsIDEyNDA1OSwgMTI0MDYzLCAxMjQwNjcsIDEyNDA3MSwgMTI0MDc1LCAKKyAgICAxMjQwNzksIDEyNDA4MywgMTI0MDg3LCAxMjQwOTEsIDEyNDA5NSwgMTI0MDk5LCAxMjQxMDMsIDEyNDEwNywgMTI0MTExLCAKKyAgICAxMjQxMTUsIDEyNDExOSwgMTI0MTIzLCAxMjQxMjcsIDEyNDEzMSwgMTI0MTM1LCAxMjQxMzksIDEyNDE0MywgMTI0MTQ3LCAKKyAgICAxMjQxNTEsIDEyNDE1NSwgMTI0MTU5LCAxMjQxNjMsIDEyNDE2NywgMTI0MTcxLCAxMjQxNzUsIDEyNDE3OSwgMTI0MTgzLCAKKyAgICAxMjQxODcsIDEyNDE5MSwgMTI0MTk1LCAxMjQxOTksIDEyNDIwMywgMTI0MjA3LCAxMjQyMTEsIDEyNDIxNSwgMTI0MjE5LCAKKyAgICAxMjQyMjMsIDEyNDIyNywgMTI0MjMxLCAxMjQyMzUsIDEyNDIzOSwgMTI0MjQzLCAxMjQyNDcsIDEyNDI1MSwgMTI0MjU1LCAKKyAgICAxMjQyNTksIDEyNDI2MywgMTI0MjY3LCAxMjQyNzEsIDEyNDI3NSwgMTI0Mjc5LCAxMjQyODMsIDEyNDI4NywgMTI0MjkxLCAKKyAgICAxMjQyOTUsIDEyNDI5OSwgMTI0MzAzLCAxMjQzMDcsIDEyNDMxMSwgMTI0MzE1LCAxMjQzMTksIDEyNDMyMywgMTI0MzI3LCAKKyAgICAxMjQzMzEsIDEyNDMzNSwgMTI0MzM5LCAxMjQzNDMsIDEyNDM0NywgMTI0MzUxLCAxMjQzNTUsIDEyNDM1OSwgMTI0MzYzLCAKKyAgICAxMjQzNjcsIDEyNDM3MSwgMTI0Mzc1LCAxMjQzNzksIDEyNDM4MywgMTI0Mzg3LCAxMjQzOTEsIDEyNDM5NSwgMTI0Mzk5LCAKKyAgICAxMjQ0MDMsIDEyNDQwNywgMTI0NDExLCAxMjQ0MTUsIDEyNDQxOSwgMTI0NDIzLCAxMjQ0MjcsIDEyNDQzMSwgMTI0NDM1LCAKKyAgICAxMjQ0MzksIDEyNDQ0MywgMTI0NDQ3LCAxMjQ0NTEsIDEyNDQ1NSwgMTI0NDU5LCAxMjQ0NjMsIDEyNDQ2NywgMTI0NDcxLCAKKyAgICAxMjQ0NzUsIDEyNDQ3OSwgMTI0NDgzLCAxMjQ0ODcsIDEyNDQ5MSwgMTI0NDk1LCAxMjQ0OTksIDEyNDUwMywgMTI0NTA3LCAKKyAgICAxMjQ1MTEsIDEyNDUxNSwgMTI0NTE5LCAxMjQ1MjMsIDEyNDUyNywgMTI0NTMxLCAxMjQ1MzUsIDEyNDUzOSwgMTI0NTQzLCAKKyAgICAxMjQ1NDcsIDEyNDU1MSwgMTI0NTU1LCAxMjQ1NTksIDEyNDU2MywgMTI0NTY3LCAxMjQ1NzEsIDEyNDU3NSwgMTI0NTc5LCAKKyAgICAxMjQ1ODMsIDEyNDU4NywgMTI0NTkxLCAxMjQ1OTUsIDEyNDU5OSwgMTI0NjAzLCAxMjQ2MDcsIDEyNDYxMSwgMTI0NjE1LCAKKyAgICAxMjQ2MTksIDEyNDYyMywgMTI0NjI3LCAxMjQ2MzEsIDEyNDYzNSwgMTI0NjM5LCAxMjQ2NDMsIDEyNDY0NywgMTI0NjUxLCAKKyAgICAxMjQ2NTUsIDEyNDY1OSwgMTI0NjYzLCAxMjQ2NjcsIDEyNDY3MSwgMTI0Njc1LCAxMjQ2NzksIDEyNDY4MywgMTI0Njg3LCAKKyAgICAxMjQ2OTEsIDEyNDY5NSwgMTI0Njk5LCAxMjQ3MDMsIDEyNDcwNywgMTI0NzExLCAxMjQ3MTUsIDEyNDcxOSwgMTI0NzIzLCAKKyAgICAxMjQ3MjcsIDEyNDczMSwgMTI0NzM1LCAxMjQ3MzksIDEyNDc0MywgMTI0NzQ3LCAxMjQ3NTEsIDEyNDc1NSwgMTI0NzU5LCAKKyAgICAxMjQ3NjMsIDEyNDc2NywgMTI0NzcxLCAxMjQ3NzUsIDEyNDc3OSwgMTI0NzgzLCAxMjQ3ODcsIDEyNDc5MSwgMTI0Nzk1LCAKKyAgICAxMjQ3OTksIDEyNDgwMywgMTI0ODA3LCAxMjQ4MTEsIDEyNDgxNSwgMTI0ODE5LCAxMjQ4MjMsIDEyNDgyNywgMTI0ODMxLCAKKyAgICAxMjQ4MzUsIDEyNDgzOSwgMTI0ODQzLCAxMjQ4NDcsIDEyNDg1MSwgMTI0ODU1LCAxMjQ4NTksIDEyNDg2MywgMTI0ODY3LCAKKyAgICAxMjQ4NzEsIDEyNDg3NSwgMTI0ODc5LCAxMjQ4ODMsIDEyNDg4NywgMTI0ODkxLCAxMjQ4OTUsIDEyNDg5OSwgMTI0OTAzLCAKKyAgICAxMjQ5MDcsIDEyNDkxMSwgMTI0OTE1LCAxMjQ5MTksIDEyNDkyMywgMTI0OTI3LCAxMjQ5MzEsIDEyNDkzNSwgMTI0OTM5LCAKKyAgICAxMjQ5NDMsIDEyNDk0NywgMTI0OTUxLCAxMjQ5NTUsIDEyNDk1OSwgMTI0OTYzLCAxMjQ5NjcsIDEyNDk3MSwgMTI0OTc1LCAKKyAgICAxMjQ5NzksIDEyNDk4MywgMTI0OTg3LCAxMjQ5OTEsIDEyNDk5NSwgMTI0OTk5LCAxMjUwMDMsIDEyNTAwNywgMTI1MDExLCAKKyAgICAxMjUwMTUsIDEyNTAxOSwgMTI1MDIzLCAxMjUwMjcsIDEyNTAzMSwgMTI1MDM1LCAxMjUwMzksIDEyNTA0MywgMTI1MDQ3LCAKKyAgICAxMjUwNTEsIDEyNTA1NSwgMTI1MDU5LCAxMjUwNjMsIDEyNTA2NywgMTI1MDcxLCAxMjUwNzUsIDEyNTA3OSwgMTI1MDgzLCAKKyAgICAxMjUwODcsIDEyNTA5MSwgMTI1MDk1LCAxMjUwOTksIDEyNTEwMywgMTI1MTA3LCAxMjUxMTEsIDEyNTExNSwgMTI1MTE5LCAKKyAgICAxMjUxMjMsIDEyNTEyNywgMTI1MTMxLCAxMjUxMzUsIDEyNTEzOSwgMTI1MTQzLCAxMjUxNDcsIDEyNTE1MSwgMTI1MTU1LCAKKyAgICAxMjUxNTksIDEyNTE2MywgMTI1MTY3LCAxMjUxNzEsIDEyNTE3NSwgMTI1MTc5LCAxMjUxODMsIDEyNTE4NywgMTI1MTkxLCAKKyAgICAxMjUxOTUsIDEyNTE5OSwgMTI1MjAzLCAxMjUyMDcsIDEyNTIxMSwgMTI1MjE1LCAxMjUyMTksIDEyNTIyMywgMTI1MjI3LCAKKyAgICAxMjUyMzEsIDEyNTIzNSwgMTI1MjM5LCAxMjUyNDMsIDEyNTI0NywgMTI1MjUxLCAxMjUyNTUsIDEyNTI1OSwgMTI1MjYzLCAKKyAgICAxMjUyNjcsIDEyNTI3MSwgMTI1Mjc1LCAxMjUyNzksIDEyNTI4MywgMTI1Mjg3LCAxMjUyOTEsIDEyNTI5NSwgMTI1Mjk5LCAKKyAgICAxMjUzMDMsIDEyNTMwNywgMTI1MzExLCAxMjUzMTUsIDEyNTMxOSwgMTI1MzIzLCAxMjUzMjcsIDEyNTMzMSwgMTI1MzM1LCAKKyAgICAxMjUzMzksIDEyNTM0MywgMTI1MzQ3LCAxMjUzNTEsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyNTMxMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI1MzE1LCAKLSAgICAxMjUzMTgsIDEyNTMyMiwgMTI1MzI2LCAxMjUzMjksIDEyNTMzMywgMTI1MzM3LCAxMjUzNDAsIDEyNTM0MywgMTI1MzQ3LCAKLSAgICAxMjUzNTEsIDEyNTM1NCwgMTI1MzU3LCAxMjUzNjAsIDEyNTM2MywgMTI1MzY4LCAxMjUzNzEsIDEyNTM3NSwgMTI1Mzc4LCAKLSAgICAxMjUzODEsIDEyNTM4NCwgMTI1Mzg3LCAxMjUzOTAsIDEyNTM5MywgMTI1Mzk2LCAxMjUzOTksIDEyNTQwMiwgMTI1NDA1LCAKLSAgICAxMjU0MDgsIDEyNTQxMiwgMTI1NDE2LCAxMjU0MjAsIDEyNTQyNCwgMTI1NDI5LCAxMjU0MzQsIDEyNTQ0MCwgMTI1NDQ2LCAKLSAgICAxMjU0NTIsIDEyNTQ1NywgMTI1NDYzLCAxMjU0NjksIDEyNTQ3NSwgMTI1NDgwLCAxMjU0ODYsIDEyNTQ5MiwgMTI1NDk3LCAKLSAgICAxMjU1MDIsIDEyNTUwNywgMTI1NTEyLCAxMjU1MTgsIDEyNTUyNCwgMTI1NTI5LCAxMjU1MzQsIDEyNTU0MCwgMTI1NTQ1LCAKLSAgICAxMjU1NTEsIDEyNTU1NywgMTI1NTYzLCAxMjU1NjksIDEyNTU3NSwgMTI1NTc5LCAxMjU1ODQsIDEyNTU4OCwgMTI1NTkzLCAKLSAgICAxMjU1OTcsIDEyNTYwMiwgMTI1NjA3LCAxMjU2MTMsIDEyNTYxOSwgMTI1NjI1LCAxMjU2MzAsIDEyNTYzNiwgMTI1NjQyLCAKLSAgICAxMjU2NDgsIDEyNTY1MywgMTI1NjU5LCAxMjU2NjUsIDEyNTY3MCwgMTI1Njc1LCAxMjU2ODAsIDEyNTY4NSwgMTI1NjkxLCAKLSAgICAxMjU2OTcsIDEyNTcwMiwgMTI1NzA3LCAxMjU3MTMsIDEyNTcxOCwgMTI1NzI0LCAxMjU3MzAsIDEyNTczNiwgMTI1NzQyLCAKLSAgICAxMjU3NDgsIDEyNTc1MywgMTI1NzU3LCAxMjU3NjIsIDEyNTc2NSwgMTI1NzY5LCAxMjU3NzIsIDEyNTc3NSwgMTI1Nzc4LCAKLSAgICAxMjU3ODEsIDEyNTc4NCwgMTI1Nzg3LCAxMjU3OTAsIDEyNTc5MywgMTI1Nzk2LCAxMjU3OTksIDEyNTgwMiwgMTI1ODA1LCAKLSAgICAxMjU4MDgsIDEyNTgxMSwgMTI1ODE0LCAxMjU4MTcsIDEyNTgyMCwgMTI1ODIzLCAxMjU4MjYsIDEyNTgyOSwgMTI1ODMyLCAKLSAgICAxMjU4MzUsIDEyNTgzOCwgMTI1ODQxLCAxMjU4NDQsIDEyNTg0NywgMTI1ODUwLCAxMjU4NTMsIDEyNTg1NiwgMTI1ODU5LCAKLSAgICAxMjU4NjIsIDEyNTg2NSwgMTI1ODY4LCAxMjU4NzEsIDEyNTg3NCwgMTI1ODc3LCAxMjU4ODAsIDEyNTg4MywgMTI1ODg2LCAKLSAgICAxMjU4ODksIDEyNTg5MiwgMTI1ODk1LCAxMjU4OTgsIDEyNTkwMSwgMTI1OTA0LCAxMjU5MDcsIDEyNTkxMCwgMTI1OTEzLCAKLSAgICAxMjU5MTYsIDEyNTkxOSwgMTI1OTIyLCAxMjU5MjUsIDEyNTkyOCwgMTI1OTMxLCAxMjU5MzQsIDEyNTkzNywgMTI1OTQwLCAKLSAgICAxMjU5NDMsIDEyNTk0NiwgMTI1OTQ5LCAxMjU5NTIsIDEyNTk1NSwgMTI1OTU4LCAxMjU5NjEsIDEyNTk2NCwgMTI1OTY3LCAKLSAgICAxMjU5NzAsIDEyNTk3MywgMTI1OTc2LCAxMjU5NzksIDEyNTk4MiwgMTI1OTg1LCAxMjU5ODgsIDEyNTk5MSwgMTI1OTk0LCAKLSAgICAxMjU5OTcsIDEyNjAwMCwgMTI2MDAzLCAxMjYwMDYsIDEyNjAwOSwgMTI2MDEyLCAxMjYwMTUsIDEyNjAxOCwgMTI2MDIxLCAKLSAgICAxMjYwMjQsIDEyNjAyNywgMTI2MDMwLCAxMjYwMzMsIDEyNjAzNiwgMTI2MDM5LCAxMjYwNDIsIDEyNjA0NSwgMTI2MDQ4LCAKLSAgICAxMjYwNTEsIDEyNjA1NCwgMTI2MDU3LCAxMjYwNjAsIDEyNjA2MywgMTI2MDY2LCAxMjYwNjksIDEyNjA3MiwgMTI2MDc1LCAKLSAgICAxMjYwNzgsIDEyNjA4MSwgMTI2MDg0LCAxMjYwODcsIDEyNjA5MCwgMTI2MDkzLCAxMjYwOTYsIDEyNjA5OSwgMTI2MTAyLCAKLSAgICAxMjYxMDUsIDEyNjEwOCwgMTI2MTExLCAxMjYxMTQsIDEyNjExNywgMTI2MTIwLCAxMjYxMjMsIDEyNjEyNiwgMTI2MTI5LCAKLSAgICAxMjYxMzIsIDEyNjEzNSwgMTI2MTM4LCAxMjYxNDEsIDEyNjE0NCwgMTI2MTQ3LCAxMjYxNTAsIDEyNjE1MywgMTI2MTU2LCAKLSAgICAxMjYxNTksIDEyNjE2MiwgMTI2MTY1LCAxMjYxNjgsIDEyNjE3MSwgMTI2MTc0LCAxMjYxNzcsIDEyNjE4MCwgMTI2MTgzLCAKLSAgICAxMjYxODYsIDEyNjE4OSwgMTI2MTkyLCAxMjYxOTUsIDEyNjE5OCwgMTI2MjAxLCAxMjYyMDQsIDEyNjIwNywgMTI2MjEwLCAKLSAgICAxMjYyMTMsIDEyNjIxNiwgMTI2MjE5LCAxMjYyMjIsIDEyNjIyNSwgMTI2MjI4LCAxMjYyMzEsIDEyNjIzNCwgMTI2MjM3LCAKLSAgICAxMjYyNDAsIDEyNjI0MywgMTI2MjQ2LCAxMjYyNDksIDEyNjI1MiwgMTI2MjU1LCAxMjYyNTgsIDEyNjI2MSwgMTI2MjY0LCAKLSAgICAxMjYyNjcsIDEyNjI3MCwgMTI2MjczLCAxMjYyNzYsIDEyNjI3OSwgMTI2MjgyLCAxMjYyODUsIDEyNjI4OCwgMTI2MjkxLCAKLSAgICAxMjYyOTQsIDEyNjI5NywgMTI2MzAwLCAxMjYzMDMsIDEyNjMwNiwgMTI2MzA5LCAxMjYzMTIsIDEyNjMxNSwgMTI2MzE4LCAKLSAgICAxMjYzMjEsIDEyNjMyNCwgMTI2MzI3LCAxMjYzMzAsIDEyNjMzMywgMTI2MzM2LCAxMjYzMzksIDEyNjM0MiwgMTI2MzQ1LCAKLSAgICAxMjYzNDgsIDEyNjM1MSwgMTI2MzU0LCAxMjYzNTcsIDEyNjM2MCwgMTI2MzYzLCAxMjYzNjYsIDEyNjM2OSwgMTI2MzcyLCAKLSAgICAxMjYzNzUsIDEyNjM3OCwgMTI2MzgxLCAxMjYzODQsIDEyNjM4NywgMTI2MzkwLCAxMjYzOTMsIDEyNjM5NiwgMTI2Mzk5LCAKLSAgICAxMjY0MDIsIDEyNjQwNSwgMTI2NDA4LCAxMjY0MTEsIDEyNjQxNCwgMTI2NDE3LCAxMjY0MjAsIDEyNjQyMywgMTI2NDI2LCAKLSAgICAxMjY0MjksIDEyNjQzMiwgMTI2NDM1LCAxMjY0MzgsIDEyNjQ0MSwgMTI2NDQ0LCAxMjY0NDcsIDEyNjQ1MCwgMTI2NDUzLCAKLSAgICAxMjY0NTYsIDEyNjQ1OSwgMTI2NDYyLCAxMjY0NjUsIDEyNjQ2OCwgMTI2NDcxLCAxMjY0NzQsIDEyNjQ3NywgMTI2NDgwLCAKLSAgICAxMjY0ODMsIDEyNjQ4NiwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI1MzU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjUzNTksIAorICAgIDEyNTM2MiwgMTI1MzY2LCAxMjUzNzAsIDEyNTM3MywgMTI1Mzc3LCAxMjUzODEsIDEyNTM4NCwgMTI1Mzg3LCAxMjUzOTEsIAorICAgIDEyNTM5NSwgMTI1Mzk4LCAxMjU0MDEsIDEyNTQwNCwgMTI1NDA3LCAxMjU0MTIsIDEyNTQxNSwgMTI1NDE5LCAxMjU0MjIsIAorICAgIDEyNTQyNSwgMTI1NDI4LCAxMjU0MzEsIDEyNTQzNCwgMTI1NDM3LCAxMjU0NDAsIDEyNTQ0MywgMTI1NDQ2LCAxMjU0NDksIAorICAgIDEyNTQ1MiwgMTI1NDU2LCAxMjU0NjAsIDEyNTQ2NCwgMTI1NDY4LCAxMjU0NzMsIDEyNTQ3OCwgMTI1NDg0LCAxMjU0OTAsIAorICAgIDEyNTQ5NiwgMTI1NTAxLCAxMjU1MDcsIDEyNTUxMywgMTI1NTE5LCAxMjU1MjQsIDEyNTUzMCwgMTI1NTM2LCAxMjU1NDEsIAorICAgIDEyNTU0NiwgMTI1NTUxLCAxMjU1NTYsIDEyNTU2MiwgMTI1NTY4LCAxMjU1NzMsIDEyNTU3OCwgMTI1NTg0LCAxMjU1ODksIAorICAgIDEyNTU5NSwgMTI1NjAxLCAxMjU2MDcsIDEyNTYxMywgMTI1NjE5LCAxMjU2MjMsIDEyNTYyOCwgMTI1NjMyLCAxMjU2MzcsIAorICAgIDEyNTY0MSwgMTI1NjQ2LCAxMjU2NTEsIDEyNTY1NywgMTI1NjYzLCAxMjU2NjksIDEyNTY3NCwgMTI1NjgwLCAxMjU2ODYsIAorICAgIDEyNTY5MiwgMTI1Njk3LCAxMjU3MDMsIDEyNTcwOSwgMTI1NzE0LCAxMjU3MTksIDEyNTcyNCwgMTI1NzI5LCAxMjU3MzUsIAorICAgIDEyNTc0MSwgMTI1NzQ2LCAxMjU3NTEsIDEyNTc1NywgMTI1NzYyLCAxMjU3NjgsIDEyNTc3NCwgMTI1NzgwLCAxMjU3ODYsIAorICAgIDEyNTc5MiwgMTI1Nzk3LCAxMjU4MDEsIDEyNTgwNiwgMTI1ODA4LCAxMjU4MTIsIDEyNTgxNSwgMTI1ODE4LCAxMjU4MjEsIAorICAgIDEyNTgyNCwgMTI1ODI3LCAxMjU4MzAsIDEyNTgzMywgMTI1ODM2LCAxMjU4MzksIDEyNTg0MiwgMTI1ODQ1LCAxMjU4NDgsIAorICAgIDEyNTg1MSwgMTI1ODU0LCAxMjU4NTcsIDEyNTg2MCwgMTI1ODYzLCAxMjU4NjYsIDEyNTg2OSwgMTI1ODcyLCAxMjU4NzUsIAorICAgIDEyNTg3OCwgMTI1ODgxLCAxMjU4ODQsIDEyNTg4NywgMTI1ODkwLCAxMjU4OTMsIDEyNTg5NiwgMTI1ODk5LCAxMjU5MDIsIAorICAgIDEyNTkwNSwgMTI1OTA4LCAxMjU5MTEsIDEyNTkxNCwgMTI1OTE3LCAxMjU5MjAsIDEyNTkyMywgMTI1OTI2LCAxMjU5MjksIAorICAgIDEyNTkzMiwgMTI1OTM1LCAxMjU5MzgsIDEyNTk0MSwgMTI1OTQ0LCAxMjU5NDcsIDEyNTk1MCwgMTI1OTUzLCAxMjU5NTYsIAorICAgIDEyNTk1OSwgMTI1OTYyLCAxMjU5NjUsIDEyNTk2OCwgMTI1OTcxLCAxMjU5NzQsIDEyNTk3NywgMTI1OTgwLCAxMjU5ODMsIAorICAgIDEyNTk4NiwgMTI1OTg5LCAxMjU5OTIsIDEyNTk5NSwgMTI1OTk4LCAxMjYwMDEsIDEyNjAwNCwgMTI2MDA3LCAxMjYwMTAsIAorICAgIDEyNjAxMywgMTI2MDE2LCAxMjYwMTksIDEyNjAyMiwgMTI2MDI1LCAxMjYwMjgsIDEyNjAzMSwgMTI2MDM0LCAxMjYwMzcsIAorICAgIDEyNjA0MCwgMTI2MDQzLCAxMjYwNDYsIDEyNjA0OSwgMTI2MDUyLCAxMjYwNTUsIDEyNjA1OCwgMTI2MDYxLCAxMjYwNjQsIAorICAgIDEyNjA2NywgMTI2MDcwLCAxMjYwNzMsIDEyNjA3NiwgMTI2MDc5LCAxMjYwODIsIDEyNjA4NSwgMTI2MDg4LCAxMjYwOTEsIAorICAgIDEyNjA5NCwgMTI2MDk3LCAxMjYxMDAsIDEyNjEwMywgMTI2MTA2LCAxMjYxMDksIDEyNjExMiwgMTI2MTE1LCAxMjYxMTgsIAorICAgIDEyNjEyMSwgMTI2MTI0LCAxMjYxMjcsIDEyNjEzMCwgMTI2MTMzLCAxMjYxMzYsIDEyNjEzOSwgMTI2MTQyLCAxMjYxNDUsIAorICAgIDEyNjE0OCwgMTI2MTUxLCAxMjYxNTQsIDEyNjE1NywgMTI2MTYwLCAxMjYxNjMsIDEyNjE2NiwgMTI2MTY5LCAxMjYxNzIsIAorICAgIDEyNjE3NSwgMTI2MTc4LCAxMjYxODEsIDEyNjE4NCwgMTI2MTg3LCAxMjYxOTAsIDEyNjE5MywgMTI2MTk2LCAxMjYxOTksIAorICAgIDEyNjIwMiwgMTI2MjA1LCAxMjYyMDgsIDEyNjIxMSwgMTI2MjE0LCAxMjYyMTcsIDEyNjIyMCwgMTI2MjIzLCAxMjYyMjYsIAorICAgIDEyNjIyOSwgMTI2MjMyLCAxMjYyMzUsIDEyNjIzOCwgMTI2MjQxLCAxMjYyNDQsIDEyNjI0NywgMTI2MjUwLCAxMjYyNTMsIAorICAgIDEyNjI1NiwgMTI2MjU5LCAxMjYyNjIsIDEyNjI2NSwgMTI2MjY4LCAxMjYyNzEsIDEyNjI3NCwgMTI2Mjc3LCAxMjYyODAsIAorICAgIDEyNjI4MywgMTI2Mjg2LCAxMjYyODksIDEyNjI5MiwgMTI2Mjk1LCAxMjYyOTgsIDEyNjMwMSwgMTI2MzA0LCAxMjYzMDcsIAorICAgIDEyNjMxMCwgMTI2MzEzLCAxMjYzMTYsIDEyNjMxOSwgMTI2MzIyLCAxMjYzMjUsIDEyNjMyOCwgMTI2MzMxLCAxMjYzMzQsIAorICAgIDEyNjMzNywgMTI2MzQwLCAxMjYzNDMsIDEyNjM0NiwgMTI2MzQ5LCAxMjYzNTIsIDEyNjM1NSwgMTI2MzU4LCAxMjYzNjEsIAorICAgIDEyNjM2NCwgMTI2MzY3LCAxMjYzNzAsIDEyNjM3MywgMTI2Mzc2LCAxMjYzNzksIDEyNjM4MiwgMTI2Mzg1LCAxMjYzODgsIAorICAgIDEyNjM5MSwgMTI2Mzk0LCAxMjYzOTcsIDEyNjQwMCwgMTI2NDAzLCAxMjY0MDYsIDEyNjQwOSwgMTI2NDEyLCAxMjY0MTUsIAorICAgIDEyNjQxOCwgMTI2NDIxLCAxMjY0MjQsIDEyNjQyNywgMTI2NDMwLCAxMjY0MzMsIDEyNjQzNiwgMTI2NDM5LCAxMjY0NDIsIAorICAgIDEyNjQ0NSwgMTI2NDQ4LCAxMjY0NTEsIDEyNjQ1NCwgMTI2NDU3LCAxMjY0NjAsIDEyNjQ2MywgMTI2NDY2LCAxMjY0NjksIAorICAgIDEyNjQ3MiwgMTI2NDc1LCAxMjY0NzgsIDEyNjQ4MSwgMTI2NDg0LCAxMjY0ODcsIDEyNjQ5MCwgMTI2NDkzLCAxMjY0OTYsIAorICAgIDEyNjQ5OSwgMTI2NTAyLCAxMjY1MDUsIDEyNjUwOCwgMTI2NTExLCAxMjY1MTQsIDEyNjUxNywgMTI2NTIwLCAxMjY1MjMsIAorICAgIDEyNjUyNiwgMTI2NTI5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjY1MzIsIAorICAgIDEyNjUzNywgMTI2NTQyLCAxMjY1NDYsIDEyNjU1MiwgMTI2NTU4LCAxMjY1NjIsIDEyNjU2NiwgMTI2NTc4LCAxMjY1ODMsIAorICAgIDEyNjU5NCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTI2NjA1LCAxMjY2MTQsIDEyNjYyMywgMTI2NjMyLCAxMjY2NDEsIDEyNjY1MywgMTI2NjY1LCAxMjY2NzcsIDEyNjY4OSwgCisgICAgMTI2Njk5LCAxMjY3MDksIDEyNjcxOSwgMTI2NzI5LCAxMjY3MzksIDEyNjc0OSwgMTI2NzU5LCAxMjY3NjgsIDEyNjc3NywgCisgICAgMTI2Nzg2LCAxMjY3OTgsIDEyNjgxMCwgMTI2ODIyLCAxMjY4MzQsIDEyNjg0NCwgMTI2ODU0LCAxMjY4NjMsIDEyNjg3MiwgCisgICAgMTI2ODgxLCAxMjY4OTAsIDEyNjg5OSwgMTI2OTA4LCAxMjY5MTcsIDEyNjkyNiwgMTI2OTM1LCAxMjY5NDQsIDEyNjk1MywgCisgICAgMTI2OTYyLCAxMjY5NzEsIDEyNjk4MCwgMTI2OTkwLCAxMjcwMDAsIDEyNzAxMCwgMTI3MDIzLCAxMjcwMzMsIDEyNzA0NiwgCisgICAgMTI3MDUzLCAxMjcwNjMsIDEyNzA3MCwgMTI3MDc3LCAxMjcwODQsIDEyNzA5MSwgMTI3MDk4LCAxMjcxMDUsIDEyNzExNCwgCisgICAgMTI3MTIzLCAxMjcxMzIsIDEyNzE0MSwgMTI3MTUwLCAxMjcxNTksIDEyNzE2OCwgMTI3MTc3LCAxMjcxODQsIDEyNzE5MSwgCisgICAgMTI3MTk4LCAxMjcyMDcsIDEyNzIxNiwgMTI3MjIzLCAxMjcyMzAsIDEyNzIzOSwgMTI3MjQ4LCAxMjcyNTIsIDEyNzI1NiwgCisgICAgMTI3MjYwLCAxMjcyNjQsIDEyNzI2OCwgMTI3MjcyLCAxMjcyNzYsIDEyNzI4MCwgMTI3MjgzLCAxMjcyODcsIDEyNzI5MCwgCisgICAgMTI3Mjk0LCAxMjcyOTcsIDEyNzMwMCwgMTI3MzA0LCAxMjczMDgsIDEyNzMxMiwgMTI3MzE2LCAxMjczMjAsIDEyNzMyNCwgCisgICAgMTI3MzI4LCAxMjczMzIsIDEyNzMzNSwgMTI3MzM5LCAxMjczNDMsIDEyNzM0NywgMTI3MzUxLCAxMjczNTUsIDEyNzM1OSwgCisgICAgMTI3MzYzLCAxMjczNjcsIDEyNzM3MSwgMTI3Mzc1LCAxMjczNzksIDEyNzM4MywgMTI3Mzg3LCAxMjczOTEsIDEyNzM5NSwgCisgICAgMTI3Mzk5LCAxMjc0MDMsIDEyNzQwNywgMTI3NDExLCAxMjc0MTUsIDEyNzQxOSwgMTI3NDIzLCAxMjc0MjcsIDEyNzQzMSwgCisgICAgMTI3NDM1LCAxMjc0MzksIDEyNzQ0MywgMTI3NDQ3LCAxMjc0NTEsIDEyNzQ1NSwgMTI3NDU5LCAxMjc0NjMsIDEyNzQ2NywgCisgICAgMTI3NDcxLCAxMjc0NzUsIDEyNzQ3OSwgMTI3NDgzLCAxMjc0ODcsIDEyNzQ5MSwgMTI3NDk1LCAxMjc0OTksIDEyNzUwMywgCisgICAgMTI3NTA3LCAxMjc1MTEsIDEyNzUxNSwgMTI3NTE5LCAxMjc1MjMsIDEyNzUyNywgMTI3NTMxLCAxMjc1MzUsIDEyNzUzOSwgCisgICAgMTI3NTQzLCAxMjc1NDcsIDEyNzU1MSwgMTI3NTU1LCAxMjc1NTksIDEyNzU2MywgMTI3NTY3LCAxMjc1NzEsIDEyNzU3NSwgCisgICAgMTI3NTc5LCAxMjc1ODMsIDEyNzU4NywgMTI3NTkxLCAxMjc1OTUsIDEyNzU5OSwgMTI3NjAzLCAxMjc2MDcsIDEyNzYxMSwgCisgICAgMTI3NjE1LCAxMjc2MTksIDEyNzYyMywgMTI3NjI3LCAxMjc2MzEsIDEyNzYzNSwgMTI3NjM5LCAxMjc2NDIsIDEyNzY0NiwgCisgICAgMTI3NjUwLCAxMjc2NTQsIDEyNzY1OCwgMTI3NjYyLCAxMjc2NjYsIDEyNzY3MCwgMTI3Njc0LCAxMjc2NzgsIDEyNzY4MiwgCisgICAgMTI3Njg2LCAxMjc2OTAsIDEyNzY5NCwgMTI3Njk4LCAxMjc3MDIsIDEyNzcwNiwgMTI3NzEwLCAxMjc3MTQsIDEyNzcxOCwgCisgICAgMTI3NzIyLCAxMjc3MjYsIDEyNzczMCwgMTI3NzM0LCAxMjc3MzgsIDEyNzc0MiwgMTI3NzQ2LCAxMjc3NTAsIDEyNzc1NCwgCisgICAgMTI3NzU4LCAxMjc3NjIsIDEyNzc2NiwgMTI3NzcwLCAxMjc3NzQsIDEyNzc3OCwgMTI3NzgyLCAxMjc3ODYsIDEyNzc5MCwgCisgICAgMTI3Nzk0LCAxMjc3OTgsIDEyNzgwMiwgMTI3ODA2LCAxMjc4MTAsIDEyNzgxNCwgMTI3ODE4LCAxMjc4MjIsIDEyNzgyNiwgCisgICAgMTI3ODMwLCAxMjc4MzQsIDEyNzgzOCwgMTI3ODQyLCAxMjc4NDYsIDEyNzg1MCwgMTI3ODU0LCAxMjc4NTgsIDEyNzg2MiwgCisgICAgMTI3ODY2LCAxMjc4NzAsIDEyNzg3NCwgMTI3ODc4LCAxMjc4ODIsIDEyNzg4NiwgMTI3ODkwLCAxMjc4OTQsIDEyNzg5OCwgCisgICAgMTI3OTAyLCAxMjc5MDYsIDEyNzkxMCwgMTI3OTE0LCAxMjc5MTgsIDEyNzkyMiwgMTI3OTI2LCAxMjc5MzAsIDEyNzkzNCwgCisgICAgMTI3OTM4LCAxMjc5NDIsIDEyNzk0NiwgMTI3OTUwLCAxMjc5NTQsIDEyNzk1OCwgMTI3OTYyLCAxMjc5NjYsIDEyNzk3MCwgCisgICAgMTI3OTc0LCAxMjc5NzgsIDEyNzk4MiwgMTI3OTg2LCAxMjc5OTAsIDEyNzk5NCwgMTI3OTk4LCAxMjgwMDIsIDEyODAwNiwgCisgICAgMTI4MDEwLCAxMjgwMTQsIDEyODAxOCwgMTI4MDIyLCAxMjgwMjYsIDEyODAzMCwgMTI4MDM0LCAxMjgwMzgsIDEyODA0MiwgCisgICAgMTI4MDQ2LCAxMjgwNTAsIDEyODA1NCwgMTI4MDU4LCAxMjgwNjIsIDEyODA2NiwgMTI4MDcwLCAxMjgwNzQsIDEyODA3OCwgCisgICAgMTI4MDgyLCAxMjgwODYsIDEyODA5MCwgMTI4MDk0LCAxMjgwOTgsIDEyODEwMiwgMTI4MTA2LCAxMjgxMTAsIDEyODExNCwgCisgICAgMTI4MTE4LCAxMjgxMjIsIDEyODEyNiwgMTI4MTMwLCAxMjgxMzQsIDEyODEzOCwgMTI4MTQyLCAxMjgxNDYsIDEyODE1MCwgCisgICAgMTI4MTU0LCAxMjgxNTgsIDEyODE2MiwgMTI4MTY2LCAxMjgxNzAsIDEyODE3NCwgMTI4MTc4LCAxMjgxODIsIDEyODE4NiwgCisgICAgMTI4MTkwLCAxMjgxOTQsIDEyODE5OCwgMTI4MjAyLCAxMjgyMDYsIDEyODIxMCwgMTI4MjE0LCAxMjgyMTgsIDEyODIyMiwgCisgICAgMTI4MjI2LCAxMjgyMzAsIDEyODIzNCwgMTI4MjM4LCAxMjgyNDIsIDEyODI0NiwgMTI4MjUwLCAxMjgyNTQsIDEyODI1OCwgCisgICAgMTI4MjYyLCAxMjgyNjYsIDEyODI3MCwgMTI4Mjc0LCAxMjgyNzgsIDEyODI4MiwgMTI4Mjg2LCAxMjgyOTAsIDEyODI5NCwgCisgICAgMTI4Mjk4LCAxMjgzMDIsIDEyODMwNiwgMTI4MzEwLCAxMjgzMTQsIDEyODMxOCwgMTI4MzIyLCAxMjgzMjYsIDEyODMzMCwgCisgICAgMTI4MzM0LCAxMjgzMzgsIDEyODM0MiwgMTI4MzQ2LCAxMjgzNTAsIDEyODM1NCwgMTI4MzU4LCAxMjgzNjIsIDEyODM2NiwgCisgICAgMTI4MzcwLCAxMjgzNzQsIDEyODM3OCwgMTI4MzgyLCAxMjgzODYsIDEyODM5MCwgMTI4Mzk0LCAxMjgzOTgsIDEyODQwMiwgCisgICAgMTI4NDA2LCAxMjg0MTAsIDEyODQxNiwgMTI4NDIzLCAxMjg0MzAsIDEyODQzNywgMTI4NDQ0LCAxMjg0NTEsIDEyODQ1OCwgCisgICAgMTI4NDY1LCAxMjg0NzIsIDEyODQ3OSwgMTI4NDg2LCAxMjg0OTMsIDEyODUwMCwgMTI4NTA3LCAxMjg1MTMsIDEyODUyMCwgCisgICAgMTI4NTI3LCAxMjg1MzMsIDEyODU0MCwgMTI4NTQ3LCAxMjg1NTQsIDEyODU2MSwgMTI4NTY4LCAxMjg1NzUsIDEyODU4MiwgCisgICAgMTI4NTg5LCAxMjg1OTYsIDEyODYwMywgMTI4NjEwLCAxMjg2MTcsIDEyODYyNCwgMTI4NjMxLCAxMjg2MzcsIDEyODY0NCwgCisgICAgMTI4NjUxLCAxMjg2NjAsIDEyODY2OSwgMTI4Njc4LCAxMjg2ODcsIDEyODY5MiwgMTI4Njk3LCAxMjg3MDMsIDEyODcwOSwgCisgICAgMTI4NzE1LCAxMjg3MjEsIDEyODcyNywgMTI4NzMzLCAxMjg3MzksIDEyODc0NSwgMTI4NzUxLCAxMjg3NTcsIDEyODc2MywgCisgICAgMTI4NzY5LCAxMjg3NzQsIDEyODc4MCwgMTI4NzkwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKIH07CiAKIC8qIG5hbWUtPmNvZGUgZGljdGlvbmFyeSAqLwpAQCAtMTYxOTAsNjAgKzE2NDA2LDYxIEBACiAgICAgNjY0ODAsIDAsIDQyODMzLCA3NDUyOSwgMTIwNjQsIDAsIDU5NiwgMCwgMTI4MTAzLCAxMzE5MiwgODY1MSwgMCwgMCwgCiAgICAgMTIwMjE4LCAxMjk5NSwgNjQ4NjUsIDEzNzMsIDAsIDAsIDU4MTYsIDExOTA2NywgNjQ4MTAsIDQyMzEsIDY4MjUsIDQyODk3LCAKICAgICA0MjMzLCA0MjM0LCA0MjMyLCA5MTc4MzYsIDc0NDE1LCAxMjAyMTAsIDYzODQsIDkxNzg0MCwgNzgxMDgsIDg4NTEsIDAsIAotICAgIDEyODU1MywgMCwgNDE2MDEsIDg4NzQsIDAsIDc3NDgsIDAsIDAsIDAsIDEyNzkzOSwgNDE2MDMsIDk3ODQsIDAsIDkxODgsIAotICAgIDQxNjAwLCAwLCAxMjA2MTgsIDEyODM0MywgMTQ1NywgMzUzNSwgMCwgMCwgMCwgMCwgNjUyNDAsIDExOTUxLCAwLCAzNDA0LCAKLSAgICAwLCAwLCAwLCAxNzU5LCAwLCA0MTA3NiwgNjgzODMsIDEyMDU3MiwgMTE5MjA1LCA2NjU3NywgMCwgMTI3NzY0LCA2NTg1OSwgCi0gICAgMCwgNzQwNCwgMCwgMCwgMCwgMCwgNjU5MDgsIDk4MzQsIDMwNTUsIDk4NTIsIDAsIDY1Mjg4LCAwLCAxMTM5OCwgMCwgCi0gICAgOTI0MTcsIDExOTI1NSwgMCwgMCwgNjAzLCA3NDM5OCwgNDM1NDgsIDAsIDAsIDkxNzgyNCwgMzM1MCwgMTIwODE3LCAKLSAgICA2NDMxOCwgOTE3ODI4LCAxMjcwODksIDMzOTAsIDc0NDgzLCA0MzI2NSwgMTIwNTk5LCA5MTc4MzAsIDc4NTczLCAwLCAKLSAgICAxOTE5LCAzNDAwLCAxMjA2NTEsIDEyNzk0NCwgMTE2NDcsIDkxNzU0MCwgNjY0NDYsIDY0MTQxLCA4NTYyLCAyMTIxLCAKLSAgICA2NDEzOCwgNDA0MywgODcxMiwgNjQxMzQsIDY0MTMzLCAxMTI5NywgMCwgMCwgMTE5NjYsIDY0MTI4LCAxMjg1ODcsIDAsIDAsIAotICAgIDY0MTMyLCAxMDg2NywgNjQxMzAsIDY0MTI5LCAwLCA0MzM3NCwgOTc3OSwgMjc2NCwgNjYwMDIsIDEwMTY3LCA5NDcxLCAwLCAKLSAgICA2NjAyMSwgMCwgMCwgNTQ1NywgNTQ0MCwgODg1NywgMTI4NzcxLCA2NTI4MiwgMjg0MywgNTM1NSwgMTI3OTI4LCAwLCAwLCAKLSAgICA1MTk0LCAxMTY1NywgNDM5ODQsIDEyODI5MiwgMCwgMCwgMCwgMCwgMTI3MDI3LCAxMDcxNywgNjQ1NzAsIDU2MzAsIAotICAgIDc0MzUwLCA2NDE0MywgMTA2ODIsIDAsIDEwNjAyLCA4MDAsIDQyNDk5LCA2NjE4NiwgMCwgMCwgNjQ5MzAsIDExNjMxLCAKLSAgICA2NDE0NiwgNjQxNDUsIDY0MTQ0LCA3NjIsIDEzMTcyLCAxMTg4NTksIDE5NDY2MSwgNjQ0NjgsIDEwOTA2LCAxMzUzLCAKLSAgICA2OTYwLCAwLCAwLCA1ODI4LCA4NzI0LCA5MTc4MDYsIDg5MzMsIDE2MDEsIDQyMjQ0LCA4NTgsIDcwODAsIDY0MTA5LCAKLSAgICA2NDEwOCwgODA5MCwgMCwgNzQ0MDEsIDkxNzgxMSwgNTg3LCAwLCAxMjgxMzEsIDAsIDAsIDAsIDc4MjE0LCAyNzUwLCAKLSAgICA3NDIxOCwgNTU2LCA2NDE1OCwgNjQxNTcsIDAsIDEyMjEzLCAxOTQ2NzgsIDI3NjAsIDAsIDAsIDAsIDE5NDc5NCwgNjQxNTYsIAotICAgIDY0MTU1LCA0MjQ5NiwgMCwgNjQxNTEsIDY0MTUwLCAxMjY3OSwgMTAwNTMsIDEwNDIxLCAxMTA5MywgNjQxNTMsIDY0MTUyLCAKLSAgICAwLCAwLCA0ODM5LCAwLCAwLCAxODc0LCAxMTkwMTYsIDAsIDY1NzcsIDY0MTI1LCA2NDEyNCwgNjQxMjMsIDAsIDEyNzUzMSwgCi0gICAgOTI1MzQsIDcwMDcsIDc1OTAsIDY1NDQzLCA5MDM2LCA5MjU1MCwgNjQxMjIsIDc0NDIyLCA2NjYwOSwgMCwgNjQxMTcsIAotICAgIDY0MTE2LCA2Mjg3LCA2NDExNCwgMjcyNSwgNjQxMjAsIDY0MTE5LCA0Mzk4MSwgNDIxMjgsIDEyNzg0MiwgMTE3NywgCi0gICAgNjU2MDEsIDEyMzIyLCA2NDEwNiwgNjk2NDAsIDEyNzMwNiwgNjQxMDIsIDc4NTksIDE5NDUsIDY0MDk5LCAwLCAxMDQ1MywgCi0gICAgNjQxMDQsIDcxODgsIDc5OTcsIDAsIDczODksIDAsIDg3MDUsIDY0MDk3LCA2NDA5NiwgOTU3MSwgNTI4LCAxMjg2NzEsIAotICAgIDQ0MDE3LCAxMTQyOSwgMCwgMCwgMCwgOTE3OTkwLCA3Mzg0MSwgMCwgMCwgOTA1NiwgNjQzMTMsIDYxODgsIDEyMDAxOSwgCi0gICAgNjE1NSwgNjQwNjgsIDE4MjMsIDY0MDY2LCA2NDA2NSwgNjQwNzIsIDY0MDcxLCA2MywgNzIzMywgOTIyMTIsIDAsIDQxOTA0LCAKLSAgICA2NjM5LCA2NDA2NCwgMCwgMTI4MzQ0LCAwLCAxMTc2LCAxMTg5NTksIDEyNzkzMCwgODE2MiwgMTI4NjY3LCAwLCAwLCAKLSAgICAxMjA1MTksIDY2Mzc2LCA2NjI0MiwgMTE0MTUsIDQzMzMsIDk4NTUsIDY0MTEyLCA2NDY0MiwgMCwgNTM4OCwgMCwgMCwgMCwgCi0gICAgNzcxNCwgNjYyMjIsIDAsIDc3NjgsIDAsIDQxOTksIDY0NzA4LCAwLCAwLCAwLCA4NzA4LCA5NTYwLCA2NDA3NywgNjQwNzYsIAotICAgIDg5OTYsIDQ5OTIsIDQ0NzEsIDQyNjIyLCA2NDA3OSwgNjQwNzgsIDkyMTc5LCAwLCAwLCAwLCA2NDYxNSwgNDE5MTUsIDAsIAotICAgIDEyMDc1LCA5MjIxMSwgMCwgNTE3NCwgMCwgMCwgMTI3NTU3LCAzMTIzLCAwLCAxMjY4NSwgMTI3OTA0LCA4NDA4LCA2NDcwNCwgCi0gICAgMCwgMCwgOTIyMywgMCwgNDE2MTYsIDAsIDczNzk3LCAwLCAxMTE2LCAxMjgyMDQsIDQzMDQ5LCA3MTM2LCA0MzA1MCwgCi0gICAgODU0OCwgMTIwNDg1LCAwLCAxMTkwNjEsIDkxNzk5OSwgMCwgMTMxMTUsIDQzNjc1LCA2NDA5MSwgOTMyMiwgMCwgMTIwNTk1LCAKLSAgICA2NDA5NSwgNjQwOTQsIDgxMTEsIDY2MjQ3LCA0MjMzMiwgNjQwODksIDY0MDg4LCA2MTk5LCAwLCAwLCAxMTQzNCwgNjQwODMsIAotICAgIDY0MDgyLCAxMTMyOSwgNzczNywgNjQwODcsIDY0MDg2LCA2NDA4NSwgNjQwODQsIDE5NDgxNywgOTkyNywgNDEzMzUsIAotICAgIDQxMTgsIDE3OTcsIDAsIDQxMzM0LCAwLCA0NiwgNDM0NDgsIDEyNzg4MSwgMjk4LCAwLCAxMjgxMTQsIDAsIDQyNjI3LCAwLCAKLSAgICAzMiwgNjE4NywgMTE5MDUyLCAxMTQ5NSwgMTE0NTksIDM2NjUsIDAsIDQyODcxLCAwLCAxOTkyMywgNzQzMzUsIDAsIAotICAgIDEyNzE5MiwgNjYyMzksIDQyMjY0LCA2NDQwMywgNDQxMiwgNzI0MCwgOTI0OTUsIDAsIDAsIDY1NzU4LCAxMjc1MCwgNDE4MSwgCi0gICAgODU0NCwgMCwgMTIwMTk5LCA5MTc4OTcsIDEyMDE5OCwgNjk4MDksIDYxODEsIDY1MDE0LCAwLCAwLCAwLCAzNjM5LCAKLSAgICAxMTk1ODgsIDAsIDAsIDExODkwNCwgMTAwNzMsIDEyMDIwNiwgMTI4ODYyLCAxMjcxODYsIDY4NDA5LCA0Mjg0NCwgNzQ5OCwgCi0gICAgMTA5OCwgOTI1NjUsIDEyMDIwNSwgMCwgMCwgMTAyMDcsIDg3ODksIDAsIDAsIDAsIDAsIDkyMzQsIDAsIDYxODIsIDAsIAotICAgIDY1MDU4LCAwLCAwLCAwLCAwLCA1NDcxLCA5NDYxLCA1NTczLCAxMTg5MzYsIDU0NzMsIDQ0LCAwLCA2NjI0NCwgMTE4OTA3LCAKLSAgICAwLCA2NjIzOCwgMTI4NDQsIDAsIDE2MjIsIDc3NjcsIDE5MDAsIDQxMzM5LCAxMTQ1OCwgMCwgMCwgNjU4MSwgNTU3NiwgMCwgCi0gICAgNjQ0MDUsIDQxMzM3LCAwLCA0MTYzMSwgODk0NywgNjgzOTAsIDEyNzg0NCwgNDE2OTQsIDAsIDAsIDc5MDgsIDAsIDEwNDA4LCAKLSAgICA2NTc5LCAwLCA2NDYxOCwgMCwgMTIwMTQ3LCAyMTM4LCA2NTgzLCA3NzYxLCAxMjcwMTAsIDEyMDUwNCwgMTk0ODI4LCAwLCAKLSAgICA1MDU4LCA0MTAxMCwgOTk5MiwgMTI4Mjk5LCA1MDU3LCAwLCAwLCA3NDUzOCwgNTA1NCwgMTE4OTUxLCAxOTQ5NzEsIAotICAgIDc4NjA2LCAwLCAxNDM3LCA0MTYxNywgNjU4LCAzNDk3LCAxMjg1MDksIDc0ODYsIDUwNjEsIDUwNjAsIDQyMzUsIDAsIDAsIAotICAgIDAsIDEyMTEzLCA0MjM2LCA0NzI3LCAwLCAwLCA3NjkzLCAxMDc0OSwgMCwgNzQ4OCwgNTc3MywgOTc4LCAxMjgxMzQsIDAsIAotICAgIDQxNjE5LCAxMDIzOSwgNjg2MTEsIDAsIDY2MjA5LCAwLCAxMjg3MDAsIDk3NDgsIDAsIDEyNzUyNCwgMCwgMCwgMCwgMCwgCi0gICAgMTk1MDgzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA5MzQxLCAxMTk1OTYsIDIzNzksIDExMzI1LCAwLCA2NDY2OCwgNjc4NTQsIAotICAgIDgxMjUsIDEyMDU0NSwgNjc0MywgMTE5MTc1LCA5MTc5NDAsIDIzNjksIDAsIDAsIDAsIDExOTIzNSwgNzQwOTIsIDczOTM2LCAKLSAgICA3MDA4LCA0MzY2MCwgMCwgMCwgMCwgMjM2NywgMTI3ODI3LCAwLCAyNjQsIDIzNzUsIDgwNjAsIDYxOTQsIDExOTg1OCwgCi0gICAgMTg0NCwgMTE5MDg0LCAwLCA2MDE5LCAwLCAwLCA2OTYxLCAwLCAxMTg4MzksIDAsIDg4MDAsIDAsIDQyODYyLCA0NDYzLCAKLSAgICA2NTU4MSwgNjE5MiwgMTk0Njc2LCA0Mjc3MSwgMCwgOTIzMzMsIDcyNSwgNjUwNDIsIDExODc5NywgMTIwODAwLCAwLCAKLSAgICAxMjg5MiwgMCwgMCwgMCwgMCwgMCwgMCwgMTI3MjYxLCAxMjA3MDcsIDAsIDAsIDUwNzQsIDUwNzMsIDEyODc5MCwgODk4MywgCi0gICAgMTE4OTgxLCA3NDQ5MywgMCwgNTA3MiwgMTI4MDcxLCA2MTk4LCAxMTYxNCwgMCwgMTk2LCAwLCAwLCAwLCA0OTI5LCAKKyAgICAxMjg1NTMsIDAsIDQxNjAxLCA4ODc0LCA5ODM1MTgsIDc3NDgsIDAsIDAsIDAsIDEyNzkzOSwgNDE2MDMsIDk3ODQsIDAsIAorICAgIDkxODgsIDQxNjAwLCAwLCAxMjA2MTgsIDEyODM0MywgMTQ1NywgMzUzNSwgMCwgMCwgMCwgMCwgNjUyNDAsIDExOTUxLCAwLCAKKyAgICAzNDA0LCAwLCAwLCAwLCAxNzU5LCAwLCA0MTA3NiwgNjgzODMsIDEyMDU3MiwgMTE5MjA1LCA2NjU3NywgMCwgMTI3NzY0LCAKKyAgICA2NTg1OSwgMCwgNzQwNCwgMCwgMCwgMCwgMCwgNjU5MDgsIDk4MzQsIDMwNTUsIDk4NTIsIDk4MzU5NSwgNjUyODgsIDAsIAorICAgIDExMzk4LCAwLCA5MjQxNywgMTE5MjU1LCAwLCAwLCA2MDMsIDc0Mzk4LCA0MzU0OCwgMCwgMCwgOTE3ODI0LCAzMzUwLCAKKyAgICAxMjA4MTcsIDY0MzE4LCA5MTc4MjgsIDEyNzA4OSwgMzM5MCwgNzQ0ODMsIDQzMjY1LCAxMjA1OTksIDkxNzgzMCwgNzg1NzMsIAorICAgIDAsIDE5MTksIDM0MDAsIDEyMDY1MSwgMTI3OTQ0LCAxMTY0NywgOTE3NTQwLCA2NjQ0NiwgNjQxNDEsIDg1NjIsIDIxMjEsIAorICAgIDY0MTM4LCA0MDQzLCA4NzEyLCA2NDEzNCwgNjQxMzMsIDExMjk3LCA5ODM0MjMsIDAsIDExOTY2LCA2NDEyOCwgMTI4NTg3LCAKKyAgICAwLCAwLCA2NDEzMiwgMTA4NjcsIDY0MTMwLCA2NDEyOSwgOTgzNTc5LCA0MzM3NCwgOTc3OSwgMjc2NCwgNjYwMDIsIAorICAgIDEwMTY3LCA5NDcxLCAwLCA2NjAyMSwgMCwgMCwgNTQ1NywgNTQ0MCwgODg1NywgMTI4NzcxLCA2NTI4MiwgMjg0MywgNTM1NSwgCisgICAgMTI3OTI4LCA5ODM2OTcsIDAsIDUxOTQsIDExNjU3LCA0Mzk4NCwgMTI4MjkyLCAwLCA5ODMzNjQsIDAsIDAsIDEyNzAyNywgCisgICAgMTA3MTcsIDY0NTcwLCA1NjMwLCA3NDM1MCwgNjQxNDMsIDEwNjgyLCAwLCAxMDYwMiwgODAwLCA0MjQ5OSwgNjYxODYsIDAsIAorICAgIDAsIDY0OTMwLCAxMTYzMSwgNjQxNDYsIDY0MTQ1LCA2NDE0NCwgNzYyLCAxMzE3MiwgMTE4ODU5LCAxOTQ2NjEsIDY0NDY4LCAKKyAgICAxMDkwNiwgMTM1MywgNjk2MCwgMCwgMCwgNTgyOCwgODcyNCwgOTE3ODA2LCA4OTMzLCAxNjAxLCA0MjI0NCwgODU4LCAKKyAgICA3MDgwLCA2NDEwOSwgNjQxMDgsIDgwOTAsIDAsIDc0NDAxLCA5MTc4MTEsIDU4NywgMCwgMTI4MTMxLCAwLCAwLCAwLCAKKyAgICA3ODIxNCwgMjc1MCwgNzQyMTgsIDU1NiwgNjQxNTgsIDY0MTU3LCA5ODM2ODEsIDEyMjEzLCAxOTQ2NzgsIDI3NjAsIDAsIDAsIAorICAgIDAsIDE5NDc5NCwgNjQxNTYsIDY0MTU1LCA0MjQ5NiwgMCwgNjQxNTEsIDY0MTUwLCAxMjY3OSwgMTAwNTMsIDEwNDIxLCAKKyAgICAxMTA5MywgNjQxNTMsIDY0MTUyLCAwLCAwLCA0ODM5LCAwLCAwLCAxODc0LCAxMTkwMTYsIDAsIDY1NzcsIDY0MTI1LCAKKyAgICA2NDEyNCwgNjQxMjMsIDAsIDEyNzUzMSwgOTI1MzQsIDcwMDcsIDc1OTAsIDY1NDQzLCA5MDM2LCA5MjU1MCwgNjQxMjIsIAorICAgIDc0NDIyLCA2NjYwOSwgMCwgNjQxMTcsIDY0MTE2LCA2Mjg3LCA2NDExNCwgMjcyNSwgNjQxMjAsIDY0MTE5LCA0Mzk4MSwgCisgICAgNDIxMjgsIDEyNzg0MiwgMTE3NywgNjU2MDEsIDEyMzIyLCA2NDEwNiwgNjk2NDAsIDEyNzMwNiwgNjQxMDIsIDc4NTksIAorICAgIDE5NDUsIDY0MDk5LCAwLCAxMDQ1MywgNjQxMDQsIDcxODgsIDc5OTcsIDAsIDczODksIDAsIDg3MDUsIDY0MDk3LCA2NDA5NiwgCisgICAgOTU3MSwgNTI4LCAxMjg2NzEsIDQ0MDE3LCAxMTQyOSwgMCwgMCwgMCwgOTE3OTkwLCA3Mzg0MSwgMCwgMCwgOTA1NiwgCisgICAgNjQzMTMsIDYxODgsIDEyMDAxOSwgNjE1NSwgNjQwNjgsIDE4MjMsIDY0MDY2LCA2NDA2NSwgNjQwNzIsIDY0MDcxLCA2MywgCisgICAgNzIzMywgOTIyMTIsIDAsIDQxOTA0LCA2NjM5LCA2NDA2NCwgOTgzNTEwLCAxMjgzNDQsIDAsIDExNzYsIDExODk1OSwgCisgICAgMTI3OTMwLCA4MTYyLCAxMjg2NjcsIDk4MzU2NiwgMCwgMTIwNTE5LCA2NjM3NiwgNjYyNDIsIDExNDE1LCA0MzMzLCA5ODU1LCAKKyAgICA2NDExMiwgNjQ2NDIsIDAsIDUzODgsIDAsIDAsIDAsIDc3MTQsIDY2MjIyLCAwLCA3NzY4LCAwLCA0MTk5LCA2NDcwOCwgMCwgCisgICAgMCwgMCwgODcwOCwgOTU2MCwgNjQwNzcsIDY0MDc2LCA4OTk2LCA0OTkyLCA0NDcxLCA0MjYyMiwgNjQwNzksIDY0MDc4LCAKKyAgICA5MjE3OSwgMCwgMCwgMCwgNjQ2MTUsIDQxOTE1LCAwLCAxMjA3NSwgOTIyMTEsIDAsIDUxNzQsIDAsIDAsIDEyNzU1NywgCisgICAgMzEyMywgMCwgMTI2ODUsIDEyNzkwNCwgODQwOCwgNjQ3MDQsIDAsIDAsIDkyMjMsIDAsIDQxNjE2LCAwLCA3Mzc5NywgMCwgCisgICAgMTExNiwgMTI4MjA0LCA0MzA0OSwgNzEzNiwgNDMwNTAsIDg1NDgsIDEyMDQ4NSwgMCwgMTE5MDYxLCA5MTc5OTksIDAsIAorICAgIDEzMTE1LCA0MzY3NSwgNjQwOTEsIDkzMjIsIDAsIDEyMDU5NSwgNjQwOTUsIDY0MDk0LCA4MTExLCA2NjI0NywgNDIzMzIsIAorICAgIDY0MDg5LCA2NDA4OCwgNjE5OSwgMCwgMCwgMTE0MzQsIDY0MDgzLCA2NDA4MiwgMTEzMjksIDc3MzcsIDY0MDg3LCA2NDA4NiwgCisgICAgNjQwODUsIDY0MDg0LCAxOTQ4MTcsIDk5MjcsIDQxMzM1LCA0MTE4LCAxNzk3LCAwLCA0MTMzNCwgMCwgNDYsIDQzNDQ4LCAKKyAgICAxMjc4ODEsIDI5OCwgMCwgMTI4MTE0LCAwLCA0MjYyNywgMCwgMzIsIDYxODcsIDExOTA1MiwgMTE0OTUsIDExNDU5LCAKKyAgICAzNjY1LCA5ODMzNDQsIDQyODcxLCAwLCAxOTkyMywgNzQzMzUsIDAsIDEyNzE5MiwgNjYyMzksIDQyMjY0LCA2NDQwMywgCisgICAgNDQxMiwgNzI0MCwgOTI0OTUsIDAsIDk4MzM2NSwgNjU3NTgsIDEyNzUwLCA0MTgxLCA4NTQ0LCAwLCAxMjAxOTksIAorICAgIDkxNzg5NywgMTIwMTk4LCA2OTgwOSwgNjE4MSwgNjUwMTQsIDAsIDAsIDAsIDM2MzksIDExOTU4OCwgMCwgMCwgMTE4OTA0LCAKKyAgICAxMDA3MywgMTIwMjA2LCAxMjg4NjIsIDEyNzE4NiwgNjg0MDksIDQyODQ0LCA3NDk4LCAxMDk4LCA5MjU2NSwgMTIwMjA1LCAKKyAgICAwLCAwLCAxMDIwNywgODc4OSwgMCwgMCwgMCwgMCwgOTIzNCwgMCwgNjE4MiwgMCwgNjUwNTgsIDAsIDAsIDAsIDAsIDU0NzEsIAorICAgIDk0NjEsIDU1NzMsIDExODkzNiwgNTQ3MywgNDQsIDAsIDY2MjQ0LCAxMTg5MDcsIDAsIDY2MjM4LCAxMjg0NCwgMCwgMTYyMiwgCisgICAgNzc2NywgMTkwMCwgNDEzMzksIDExNDU4LCAwLCAwLCA2NTgxLCA1NTc2LCAwLCA2NDQwNSwgNDEzMzcsIDAsIDQxNjMxLCAKKyAgICA4OTQ3LCA2ODM5MCwgMTI3ODQ0LCA0MTY5NCwgMCwgMCwgNzkwOCwgMCwgMTA0MDgsIDY1NzksIDAsIDY0NjE4LCAwLCAKKyAgICAxMjAxNDcsIDIxMzgsIDY1ODMsIDc3NjEsIDEyNzAxMCwgMTIwNTA0LCAxOTQ4MjgsIDAsIDUwNTgsIDQxMDEwLCA5OTkyLCAKKyAgICAxMjgyOTksIDUwNTcsIDAsIDAsIDc0NTM4LCA1MDU0LCAxMTg5NTEsIDE5NDk3MSwgNzg2MDYsIDAsIDE0MzcsIDQxNjE3LCAKKyAgICA2NTgsIDM0OTcsIDEyODUwOSwgNzQ4NiwgNTA2MSwgNTA2MCwgNDIzNSwgMCwgMCwgMCwgMTIxMTMsIDQyMzYsIDQ3MjcsIDAsIAorICAgIDAsIDc2OTMsIDEwNzQ5LCAwLCA3NDg4LCA1NzczLCA5NzgsIDEyODEzNCwgMCwgNDE2MTksIDEwMjM5LCA2ODYxMSwgMCwgCisgICAgNjYyMDksIDAsIDEyODcwMCwgOTc0OCwgOTgzNjg4LCAxMjc1MjQsIDAsIDAsIDAsIDAsIDE5NTA4MywgMCwgOTgzNTc4LCAwLCAKKyAgICAwLCAwLCAwLCAwLCA5MzQxLCAxMTk1OTYsIDIzNzksIDExMzI1LCAwLCA2NDY2OCwgNjc4NTQsIDgxMjUsIDEyMDU0NSwgCisgICAgNjc0MywgMTE5MTc1LCA5MTc5NDAsIDIzNjksIDAsIDk4MzcwNCwgOTgzNzA1LCAxMTkyMzUsIDc0MDkyLCA3MzkzNiwgCisgICAgNzAwOCwgNDM2NjAsIDAsIDAsIDAsIDIzNjcsIDEyNzgyNywgOTgzNTkyLCAyNjQsIDIzNzUsIDgwNjAsIDYxOTQsIAorICAgIDExOTg1OCwgMTg0NCwgMTE5MDg0LCAwLCA2MDE5LCAwLCAwLCA2OTYxLCAwLCAxMTg4MzksIDAsIDg4MDAsIDAsIDQyODYyLCAKKyAgICA0NDYzLCA2NTU4MSwgNjE5MiwgMTk0Njc2LCA0Mjc3MSwgMCwgOTIzMzMsIDcyNSwgNjUwNDIsIDExODc5NywgMTIwODAwLCAKKyAgICAwLCAxMjg5MiwgMCwgMCwgMCwgMCwgMCwgMCwgMTI3MjYxLCAxMjA3MDcsIDAsIDAsIDUwNzQsIDUwNzMsIDEyODc5MCwgCisgICAgODk4MywgMTE4OTgxLCA3NDQ5MywgMCwgNTA3MiwgMTI4MDcxLCA2MTk4LCAxMTYxNCwgMCwgMTk2LCAwLCAwLCAwLCA0OTI5LCAKICAgICAxMjAzNDIsIDAsIDAsIDAsIDAsIDQyODQ3LCAwLCAwLCAwLCA0OTM0LCAwLCA0MTMyMywgOTc1OCwgMCwgOTIyODksIAogICAgIDEyNzkxNywgNDI1ODQsIDAsIDQzMjksIDQxMzIxLCA0OTc5LCAzMDQ4LCA3NzUyLCA0MTMyMCwgMCwgNzQ0MTgsIDEyODE5LCAKICAgICAwLCA1MDcxLCAwLCAzNjQyLCAwLCA1MDcwLCAxMDA0MiwgMTE4ODM1LCAzOTg3LCA1MDY4LCAwLCA4OTA5LCA3ODY1MCwgCkBAIC0xNjI1OCw4NiArMTY0NzUsODcgQEAKICAgICA4MTQzLCAxMjcxMTUsIDExOTgzLCA5MjI0OSwgNjI0LCA3NDUwOCwgNDA1NywgNDM3ODgsIDUwNzgsIDc0MjU4LCAxMjQ3OCwgCiAgICAgMCwgNTA3NiwgMCwgMTk0NjA5LCAwLCAxMjAwOTcsIDY4NSwgOTAyNSwgMTUyNCwgMTI2MTgsIDAsIDU1MzksIDAsIDkyNTIzLCAKICAgICAxMjAxMDIsIDcxMzgsIDEyMDU1MiwgMCwgMTk0NjExLCA3ODc1MiwgMCwgMTI1MjAsIDgwNTgsIDk3MzIsIDAsIDUwODAsIAotICAgIDY0Nzc1LCA1MDM2LCA1MDM1LCAxMjA1OTAsIDQyNjA0LCAwLCAwLCA4MDc0LCAyNzUsIDEzMjkxLCAxOTA3LCA3ODgzOCwgCi0gICAgNDQzMiwgMTI3MjcxLCA1MDMzLCAxMjcyNzMsIDEyNzI3MiwgNDgzNiwgMzg4OCwgNzM3OTIsIDEwNzI5LCA2NDU0NiwgCi0gICAgMTI3MjYyLCA0MzcwNCwgMTI3MjY0LCAxMjcyNTEsIDY3NTg4LCAxMTkwMDAsIDEyNzI1MiwgMTI3MjU1LCA4ODU4LCA2NDA5LCAKLSAgICAxMjcyNTYsIDEyMDI1MiwgMTI4MTAwLCAwLCAwLCA2NjMyMSwgMCwgMTI4MTQsIDEyNzI0OCwgMzQzMiwgMTAyMTgsIDAsIAotICAgIDYwOTQsIDc2NDEsIDQyNDQ1LCAwLCA5MjQ4NywgNDI0MDYsIDE2NzYsIDc0MzIwLCAxOTQ2MDcsIDAsIDUwMzAsIDAsIDAsIAotICAgIDAsIDczODY5LCA5NjIyLCAwLCAwLCA2Nzg3LCAwLCAwLCAwLCAwLCAxMDU0NCwgMTI5MTksIDAsIDkyMjE4LCAwLCAwLCAwLCAKLSAgICAxMjA3ODksIDAsIDk0NywgMTE5ODM1LCAxOTQ1ODYsIDE5NDU4NSwgMTA5NjksIDExOTkzNSwgNzYxMywgOTI1NjIsIAotICAgIDExOTkzNiwgNDc5NSwgMTE5OTMwLCA3MDE4LCA3Mzc2LCAxMjAxODEsIDEyMDE5MiwgMTIwMjY4LCAwLCA0MzU2NywgCi0gICAgNzQwNTYsIDkxNzkxMCwgMTE4OTYzLCAxMTk5MTksIDcyMTYsIDY1MjMyLCA3MjE3LCAyNTEsIDcyMTgsIDc4OTUsIDQzOTUsIAotICAgIDQzNTM4LCAxMTk5MjYsIDExOTkyOSwgMTE5OTI4LCA3MjEzLCAxMTk5MjIsIDcyMTQsIDcyMTUsIDAsIDc0MTQxLCA4ODgwLCAKLSAgICA3Njg1LCA2NjQ1OSwgMTIwMTczLCA2NTU0MCwgMTE5NjE4LCA2MjUsIDgxODcsIDQyODYxLCAxMTEzLCA3MjM2LCA3OTE1LCAKLSAgICAzNjMwLCAxMjAxNzYsIDgxNzksIDc0MjY0LCA2Nzg4NiwgOTMxNiwgMTA5ODAsIDI0ODksIDY1NjI0LCA4MTUwLCAxMzU5LCAKLSAgICA2NzY1MiwgMTI3MzI5LCAxMjczMzAsIDczNzU2LCA1MDQyLCA1MDQxLCA0Mjc2OSwgMTIwODQsIDEyNzMyNCwgMTI3MzIxLCAKLSAgICA5MjI3OSwgMTI3MzE5LCAxMjczMjAsIDEyNzMxNywgMTI3MzE4LCAxMjczMTUsIDEyMjgzLCAxNjE2LCAzNzk1LCAwLCAKLSAgICA4Nzk1LCA2NjI0NSwgMCwgMCwgMCwgMTEzOCwgNzM5MDUsIDEyNjc3LCAwLCAwLCAzMjM5LCAxMjczMTEsIDAsIDAsIDg0MzEsIAotICAgIDAsIDQyMTY0LCAwLCAxMTc3OCwgMTI2MjAsIDY4MjYsIDczNzczLCAxMTkwNzMsIDUwNDAsIDAsIDAsIDAsIDc4NDIwLCAwLCAKLSAgICA1MDM5LCAwLCA3ODQxOCwgMCwgNTAzOCwgMCwgMCwgMTMxODQsIDc0MjkzLCAwLCA2NDY0OCwgMCwgOTM1OSwgNzg0MTYsIDAsIAotICAgIDEyODc3MCwgNjUxNTcsIDY2NjIsIDAsIDAsIDM4NjMsIDczOTA5LCA0ODM1LCA1NTI2NiwgNDM0MzIsIDEyNzgyMiwgNDMwOSwgCi0gICAgNzEyNywgMTk0NTY5LCAwLCAxOTQ1NjgsIDEzMDEsIDAsIDQyNTg5LCA1NjksIDAsIDczODEzLCA3MTEsIDQzODksIDcxMzMsIAotICAgIDAsIDczODgwLCAxMTYxMCwgMTEzNjgsIDAsIDE5NDU3MCwgNDEzMzEsIDEwMDYsIDc0MjQwLCAwLCAxNTUwLCA4MjAxLCAKLSAgICA3MzczNywgNzYyNywgNTQ5OSwgNTAzMSwgNzc5MDgsIDQyNzM4LCA2NTc4NCwgNzc5MDcsIDY1MjY3LCAzNzU4LCAwLCAKLSAgICA2NTc4MSwgNjQ3MzQsIDAsIDI0NDAsIDY1NzgwLCA3NzkxMywgODQ0OSwgMCwgNTAwOCwgMCwgMjExOCwgMCwgMTIxMjEsIAotICAgIDgyNTUsIDU1MTIsIDczODc1LCAyMTI4LCAyMTMwLCAyMTMxLCAyMTI2LCAyMTMzLCAxMTE5LCAxMjcwNjgsIDIxMTQsIAotICAgIDIxMTYsIDI0NTUsIDAsIDIxMjIsIDIxMjMsIDIxMjQsIDIxMjUsIDAsIDg3MTQsIDAsIDIxMTMsIDAsIDIxMTUsIDEyODE3NywgCi0gICAgMTI3OTA3LCA0MzcxMywgNTA1MiwgNjYyMjAsIDU4MjEsIDYxODYsIDY1Nzc4LCA2NTc3NSwgNTA1MSwgNjU3NzMsIDE0MjksIAotICAgIDQyNjQ3LCA1MDUwLCAzMDIsIDM4OCwgNDExMTUsIDczNSwgNjYzNywgNTkwNywgNjUwODgsIDAsIDEyNzI2LCA3NDU5NCwgCi0gICAgOTExNywgMCwgMTIwMDMsIDU1MTMsIDY2NjYsIDUwNTMsIDc0MjMwLCA1NTEwLCA3ODQ1MSwgMCwgNzg0NDcsIDI0NzAsIAotICAgIDc4NDM3LCAwLCAxOTI1LCAwLCA5MjIzNywgNzQ4MDcsIDAsIDUwNDgsIDUwNDcsIDAsIDAsIDAsIDkyMzEzLCAwLCA3NDQ5NywgCi0gICAgOTIzOTUsIDgwODksIDY5MjksIDYzOSwgMCwgNjgxNzksIDY0NDQyLCAwLCA5MjM0OCwgNDU5OSwgNDE0MDIsIDY2NzQsIAotICAgIDQzMzk3LCA0MzI5NCwgMTQ3NiwgNjQ4LCAwLCA2NTgxOSwgMzIzMywgMCwgNDE3ODIsIDY5NTEsIDAsIDAsIDM1MzAsIAotICAgIDk3NTAsIDEyODMxNywgMCwgNjY1NiwgOTIzNjcsIDAsIDUwNDYsIDg1MTIsIDY1ODU2LCA3NDI2MSwgODk2NywgMCwgNTA0NSwgCi0gICAgMCwgMTkxNiwgNzk4NiwgNTA0NCwgMTIwNTU2LCA5MDA2LCAxMzEyOCwgNTA0MywgMCwgNzg1MywgNzQwNjgsIDc0MDA0LCAKLSAgICA5NjY5LCAxMjM0MSwgMTI3MDMsIDg0MDIsIDAsIDExOTA3MCwgOTE3NjAwLCA0MTc1MCwgMzU4NiwgNjQ1MDgsIDQzMTQ4LCAKLSAgICAwLCAwLCAxMTk2MDYsIDAsIDEzMjk2LCA1MTcsIDAsIDEyODUzNCwgMTk0OTQ2LCA0MTUyOCwgMTIzLCA2NTQ1NCwgMCwgMCwgCi0gICAgNzQ0NzgsIDEwNTMxLCA3Nzg0LCA0MTUyNiwgMTA4MjksIDczOTkxLCA4MDU3LCAxMTI2LCA3Mzg5NSwgMCwgMTk0NTkxLCAwLCAKLSAgICAzOTI1LCA0MjUxLCA4MDY5LCAxMDUxNywgMTIwNDM5LCA0ODksIDAsIDQyNTAsIDEyMDQ0MSwgMTIwNDUyLCA0MzE1MSwgMCwgCi0gICAgMTk0ODUxLCA2NjIwMCwgMCwgMCwgMCwgNzg0MjMsIDAsIDAsIDg3MTEsIDYxODMsIDAsIDAsIDAsIDEyMDQ0OCwgNzYyMywgCi0gICAgMTE4OTI1LCAxOTQ4NTMsIDkyMzUsIDEyNzYwLCA3NDE3NiwgNjk2NjIsIDY2NDQ1LCA0MzU0MCwgMTAwNjIsIDM3NDMsIAotICAgIDExNTE0LCAxMTA3OCwgMCwgMTIxMzYsIDAsIDAsIDEyMDQzNSwgMCwgNzcyNiwgMCwgMTk5MjIsIDI2NywgMzM5MywgCi0gICAgNDIxOTgsIDEzNzEsIDE5NDg0OSwgNjkyMzMsIDI0NTgsIDAsIDYyMDEsIDAsIDQxMDc0LCA0MjY2LCAxMDY1MiwgNDE2MTIsIAotICAgIDQxMDc3LCAzNDAyLCA5MDUwLCAzMzk4LCAwLCAwLCAwLCAzMzkxLCA0MTA3NSwgMjQ3NiwgMCwgMTI4MDE3LCAwLCAxMDYyNSwgCi0gICAgMCwgMTI3NjcsIDEzMDE3LCA3ODc0MywgNjQyNjEsIDY0OTM0LCAxMjc1MzcsIDEzMDE0LCAxMzAxMywgMCwgNjY3MywgMCwgCi0gICAgMCwgMCwgMTI0MzgsIDAsIDAsIDAsIDAsIDAsIDkwNTMsIDEzMDE1LCA3NDUyMywgMCwgNzA0LCA2NjIxNSwgNjE5NSwgMCwgCi0gICAgNjY2MCwgNzg3NTgsIDkxNzc2MCwgOTE3NzkzLCA0MjIxMiwgMTI2MjksIDExNDM1LCAwLCA1NTI1NiwgNjU1MzgsIDAsIAotICAgIDEyNzk0MCwgMCwgNzQ1NDcsIDAsIDY1NDQ4LCA3ODEwMCwgMTI5NDgsIDExOTAwMSwgMTk1MDAyLCAxMTkyMzgsIDE5NTAwNCwgCi0gICAgNzgwOTksIDEyNzA4NSwgMCwgMCwgNDI4NywgODI3NiwgNDkwMiwgMTEzMSwgMCwgNzg0NTgsIDY2NzI4LCAxODE2LCAwLCAKLSAgICA0MjUzMywgMTY4LCA0Mjg0NSwgNDg5OCwgNjQyOTgsIDAsIDAsIDQ5MDEsIDE4MjEsIDAsIDU3OCwgMzY1MywgMCwgNzkxLCAKLSAgICA5MTYyLCA2OTc3LCAwLCAxMTkyOTgsIDc0NTYxLCAwLCA3MzczMSwgODM1NCwgNDM1OTAsIDExOTMwMywgMCwgNzU1NywgCi0gICAgMTE5MzM5LCAxMTkzMDEsIDgyMzQsIDcyNDEsIDAsIDE5NDk5NCwgMTE5MTY3LCAxOTQ5OTYsIDEyODExLCA2NTkyNSwgCi0gICAgMzk0NiwgNzgwNzgsIDEwOTk4LCA3ODA4MCwgNjczLCAxOTQ4NjcsIDY0Mzk3LCAxMjgyNzYsIDc0NTk5LCA3ODQ0OSwgCi0gICAgODg5MCwgMTk0OTc3LCAxOTQ5NzYsIDI0NDgsIDc4MDg1LCAxMDI2NywgODQyNCwgMjQ1MiwgNzgwODMsIDE5NDg2NCwgCi0gICAgODcyOSwgNzg0NTYsIDAsIDc4NDUsIDkxNzkxNywgNzg2OTIsIDQ0MDgsIDQxMjIsIDY3NzIsIDExMDM5LCA4NzIzLCAKLSAgICAxOTQ5OTAsIDEyNzgzMywgMTE5MzAyLCA3MzEsIDExOTMwNCwgOTIyODYsIDI0MzgsIDY0ODU1LCAxMTkzMDAsIDExOTI5OSwgCi0gICAgMTE3NSwgMCwgNDIxMzUsIDM3MywgMTE5MTcyLCAyMTE5LCAxMTQ1NywgMTE1MjEsIDc3MjMsIDAsIDAsIDAsIDQxOTUyLCAwLCAKLSAgICA1MjczLCAyMTI3LCA1MjY5LCA2MzM3LCA1MjAyLCAyNDA0LCA1MjY3LCA0MjgyMywgMTEyOTEsIDE5OTE1LCA1Mjc3LCAKLSAgICAxMjk2MywgMTI3ODY0LCA2MTg5LCA0MTI1LCAxMzE0LCAxMjEzMywgMCwgMTE4ODczLCAxMjcxLCAwLCAwLCA2NjAyNCwgCi0gICAgNDE0ODIsIDM4NjQsIDc0NTM5LCAwLCAzODc5LCAwLCAxMjk3OCwgNDE2NiwgNDU3NCwgMCwgNzU2NywgNzQ1OSwgMCwgCi0gICAgNDEzOTAsIDUzODQsIDQxODgyLCA2NzY0NywgOTI1NDgsIDU3NTksIDAsIDAsIDQxMzg4LCA5MjM2MiwgNDEzOTIsIDY0Mjg4LCAKLSAgICA0MTM4NywgMCwgODcwNiwgNTU1MiwgMCwgNzAwLCAwLCA1NTUzLCAwLCA3MDg4LCA1MzU2LCA3NDk5LCA3ODExMCwgNjY1OTYsIAotICAgIDAsIDAsIDEwMjYzLCA1NTU0LCAwLCAxMjM0NCwgMTAzMTEsIDc4MTEzLCA2NjY1LCAwLCAwLCA3NjE4LCA4NTE3LCAxMTQ1NSwgCisgICAgNjQ3NzUsIDUwMzYsIDUwMzUsIDEyMDU5MCwgNDI2MDQsIDk4MzM5MSwgMCwgODA3NCwgMjc1LCAxMzI5MSwgMTkwNywgCisgICAgNzg4MzgsIDQ0MzIsIDEyNzI3MSwgNTAzMywgMTI3MjczLCAxMjcyNzIsIDQ4MzYsIDM4ODgsIDczNzkyLCAxMDcyOSwgCisgICAgNjQ1NDYsIDEyNzI2MiwgNDM3MDQsIDEyNzI2NCwgMTI3MjUxLCA2NzU4OCwgMTE5MDAwLCAxMjcyNTIsIDEyNzI1NSwgCisgICAgODg1OCwgNjQwOSwgMTI3MjU2LCAxMjAyNTIsIDEyODEwMCwgMCwgMCwgNjYzMjEsIDAsIDEyODE0LCAxMjcyNDgsIDM0MzIsIAorICAgIDEwMjE4LCAwLCA2MDk0LCA3NjQxLCA0MjQ0NSwgMCwgOTI0ODcsIDQyNDA2LCAxNjc2LCA3NDMyMCwgMTk0NjA3LCAwLCAKKyAgICA1MDMwLCAwLCAwLCAwLCA3Mzg2OSwgOTYyMiwgMCwgMCwgNjc4NywgMCwgMCwgMCwgOTgzMzI3LCAxMDU0NCwgMTI5MTksIDAsIAorICAgIDkyMjE4LCAwLCAwLCAwLCAxMjA3ODksIDAsIDk0NywgMTE5ODM1LCAxOTQ1ODYsIDE5NDU4NSwgMTA5NjksIDExOTkzNSwgCisgICAgNzYxMywgOTI1NjIsIDExOTkzNiwgNDc5NSwgMTE5OTMwLCA3MDE4LCA3Mzc2LCAxMjAxODEsIDEyMDE5MiwgMTIwMjY4LCAwLCAKKyAgICA0MzU2NywgNzQwNTYsIDkxNzkxMCwgMTE4OTYzLCAxMTk5MTksIDcyMTYsIDY1MjMyLCA3MjE3LCAyNTEsIDcyMTgsIDc4OTUsIAorICAgIDQzOTUsIDQzNTM4LCAxMTk5MjYsIDExOTkyOSwgMTE5OTI4LCA3MjEzLCAxMTk5MjIsIDcyMTQsIDcyMTUsIDk4MzU3MSwgCisgICAgNzQxNDEsIDg4ODAsIDc2ODUsIDY2NDU5LCAxMjAxNzMsIDY1NTQwLCAxMTk2MTgsIDYyNSwgODE4NywgNDI4NjEsIDExMTMsIAorICAgIDcyMzYsIDc5MTUsIDM2MzAsIDEyMDE3NiwgODE3OSwgNzQyNjQsIDY3ODg2LCA5MzE2LCAxMDk4MCwgMjQ4OSwgNjU2MjQsIAorICAgIDgxNTAsIDEzNTksIDY3NjUyLCAxMjczMjksIDEyNzMzMCwgNzM3NTYsIDUwNDIsIDUwNDEsIDQyNzY5LCAxMjA4NCwgCisgICAgMTI3MzI0LCAxMjczMjEsIDkyMjc5LCAxMjczMTksIDEyNzMyMCwgMTI3MzE3LCAxMjczMTgsIDEyNzMxNSwgMTIyODMsIAorICAgIDE2MTYsIDM3OTUsIDAsIDg3OTUsIDY2MjQ1LCAwLCAwLCAwLCAxMTM4LCA3MzkwNSwgMTI2NzcsIDAsIDAsIDMyMzksIAorICAgIDEyNzMxMSwgMCwgMCwgODQzMSwgMCwgNDIxNjQsIDAsIDExNzc4LCAxMjYyMCwgNjgyNiwgNzM3NzMsIDExOTA3MywgNTA0MCwgCisgICAgMCwgMCwgMCwgNzg0MjAsIDAsIDUwMzksIDAsIDc4NDE4LCAwLCA1MDM4LCAwLCAwLCAxMzE4NCwgNzQyOTMsIDAsIDY0NjQ4LCAKKyAgICAwLCA5MzU5LCA3ODQxNiwgMCwgMTI4NzcwLCA2NTE1NywgNjY2MiwgMCwgMCwgMzg2MywgNzM5MDksIDQ4MzUsIDU1MjY2LCAKKyAgICA0MzQzMiwgMTI3ODIyLCA0MzA5LCA3MTI3LCAxOTQ1NjksIDAsIDE5NDU2OCwgMTMwMSwgMCwgNDI1ODksIDU2OSwgMCwgCisgICAgNzM4MTMsIDcxMSwgNDM4OSwgNzEzMywgMCwgNzM4ODAsIDExNjEwLCAxMTM2OCwgMCwgMTk0NTcwLCA0MTMzMSwgMTAwNiwgCisgICAgNzQyNDAsIDAsIDE1NTAsIDgyMDEsIDczNzM3LCA3NjI3LCA1NDk5LCA1MDMxLCA3NzkwOCwgNDI3MzgsIDY1Nzg0LCAKKyAgICA3NzkwNywgNjUyNjcsIDM3NTgsIDAsIDY1NzgxLCA2NDczNCwgMCwgMjQ0MCwgNjU3ODAsIDc3OTEzLCA4NDQ5LCAwLCAKKyAgICA1MDA4LCA5ODMzMTYsIDIxMTgsIDAsIDEyMTIxLCA4MjU1LCA1NTEyLCA3Mzg3NSwgMjEyOCwgMjEzMCwgMjEzMSwgMjEyNiwgCisgICAgMjEzMywgMTExOSwgMTI3MDY4LCAyMTE0LCAyMTE2LCAyNDU1LCAwLCAyMTIyLCAyMTIzLCAyMTI0LCAyMTI1LCAwLCA4NzE0LCAKKyAgICAwLCAyMTEzLCAwLCAyMTE1LCAxMjgxNzcsIDEyNzkwNywgNDM3MTMsIDUwNTIsIDY2MjIwLCA1ODIxLCA2MTg2LCA2NTc3OCwgCisgICAgNjU3NzUsIDUwNTEsIDY1NzczLCAxNDI5LCA0MjY0NywgNTA1MCwgMzAyLCAzODgsIDQxMTE1LCA3MzUsIDY2MzcsIDU5MDcsIAorICAgIDY1MDg4LCAwLCAxMjcyNiwgNzQ1OTQsIDkxMTcsIDAsIDEyMDAzLCA1NTEzLCA2NjY2LCA1MDUzLCA3NDIzMCwgNTUxMCwgCisgICAgNzg0NTEsIDAsIDc4NDQ3LCAyNDcwLCA3ODQzNywgMCwgMTkyNSwgMCwgOTIyMzcsIDc0ODA3LCAwLCA1MDQ4LCA1MDQ3LCAwLCAKKyAgICAwLCAwLCA5MjMxMywgMCwgNzQ0OTcsIDkyMzk1LCA4MDg5LCA2OTI5LCA2MzksIDk4MzMwNywgNjgxNzksIDY0NDQyLCAwLCAKKyAgICA5MjM0OCwgNDU5OSwgNDE0MDIsIDY2NzQsIDQzMzk3LCA0MzI5NCwgMTQ3NiwgNjQ4LCAwLCA2NTgxOSwgMzIzMywgMCwgCisgICAgNDE3ODIsIDY5NTEsIDAsIDk4MzcwOCwgMzUzMCwgOTc1MCwgMTI4MzE3LCAwLCA2NjU2LCA5MjM2NywgMCwgNTA0NiwgCisgICAgODUxMiwgNjU4NTYsIDc0MjYxLCA4OTY3LCAwLCA1MDQ1LCAwLCAxOTE2LCA3OTg2LCA1MDQ0LCAxMjA1NTYsIDkwMDYsIAorICAgIDEzMTI4LCA1MDQzLCAwLCA3ODUzLCA3NDA2OCwgNzQwMDQsIDk2NjksIDEyMzQxLCAxMjcwMywgODQwMiwgMCwgMTE5MDcwLCAKKyAgICA5MTc2MDAsIDQxNzUwLCAzNTg2LCA2NDUwOCwgNDMxNDgsIDAsIDAsIDExOTYwNiwgMCwgMTMyOTYsIDUxNywgMCwgCisgICAgMTI4NTM0LCAxOTQ5NDYsIDQxNTI4LCAxMjMsIDY1NDU0LCAwLCAwLCA3NDQ3OCwgMTA1MzEsIDc3ODQsIDQxNTI2LCAKKyAgICAxMDgyOSwgNzM5OTEsIDgwNTcsIDExMjYsIDczODk1LCAwLCAxOTQ1OTEsIDAsIDM5MjUsIDQyNTEsIDgwNjksIDEwNTE3LCAKKyAgICAxMjA0MzksIDQ4OSwgMCwgNDI1MCwgMTIwNDQxLCAxMjA0NTIsIDQzMTUxLCAwLCAxOTQ4NTEsIDY2MjAwLCAwLCAwLCAwLCAKKyAgICA3ODQyMywgMCwgMCwgODcxMSwgNjE4MywgMCwgMCwgMCwgMTIwNDQ4LCA3NjIzLCAxMTg5MjUsIDE5NDg1MywgOTIzNSwgCisgICAgMTI3NjAsIDc0MTc2LCA2OTY2MiwgNjY0NDUsIDQzNTQwLCAxMDA2MiwgMzc0MywgMTE1MTQsIDExMDc4LCAwLCAxMjEzNiwgCisgICAgMCwgMCwgMTIwNDM1LCAwLCA3NzI2LCAwLCAxOTkyMiwgMjY3LCAzMzkzLCA0MjE5OCwgMTM3MSwgMTk0ODQ5LCA2OTIzMywgCisgICAgMjQ1OCwgMCwgNjIwMSwgMCwgNDEwNzQsIDQyNjYsIDEwNjUyLCA0MTYxMiwgNDEwNzcsIDM0MDIsIDkwNTAsIDMzOTgsIDAsIAorICAgIDAsIDAsIDMzOTEsIDQxMDc1LCAyNDc2LCAwLCAxMjgwMTcsIDAsIDEwNjI1LCAwLCAxMjc2NywgMTMwMTcsIDc4NzQzLCAKKyAgICA2NDI2MSwgNjQ5MzQsIDEyNzUzNywgMTMwMTQsIDEzMDEzLCAwLCA2NjczLCAwLCAwLCAwLCAxMjQzOCwgMCwgMCwgMCwgCisgICAgOTgzNjE1LCAwLCA5MDUzLCAxMzAxNSwgNzQ1MjMsIDAsIDcwNCwgNjYyMTUsIDYxOTUsIDk4MzU2MywgNjY2MCwgNzg3NTgsIAorICAgIDkxNzc2MCwgOTE3NzkzLCA0MjIxMiwgMTI2MjksIDExNDM1LCAwLCA1NTI1NiwgNjU1MzgsIDAsIDEyNzk0MCwgMCwgCisgICAgNzQ1NDcsIDAsIDY1NDQ4LCA3ODEwMCwgMTI5NDgsIDExOTAwMSwgMTk1MDAyLCAxMTkyMzgsIDE5NTAwNCwgNzgwOTksIAorICAgIDEyNzA4NSwgMCwgMCwgNDI4NywgODI3NiwgNDkwMiwgMTEzMSwgMCwgNzg0NTgsIDY2NzI4LCAxODE2LCAwLCA0MjUzMywgCisgICAgMTY4LCA0Mjg0NSwgNDg5OCwgNjQyOTgsIDAsIDAsIDQ5MDEsIDE4MjEsIDAsIDU3OCwgMzY1MywgMCwgNzkxLCA5MTYyLCAKKyAgICA2OTc3LCAwLCAxMTkyOTgsIDc0NTYxLCAwLCA3MzczMSwgODM1NCwgNDM1OTAsIDExOTMwMywgMCwgNzU1NywgMTE5MzM5LCAKKyAgICAxMTkzMDEsIDgyMzQsIDcyNDEsIDAsIDE5NDk5NCwgMTE5MTY3LCAxOTQ5OTYsIDEyODExLCA2NTkyNSwgMzk0NiwgNzgwNzgsIAorICAgIDEwOTk4LCA3ODA4MCwgNjczLCAxOTQ4NjcsIDY0Mzk3LCAxMjgyNzYsIDc0NTk5LCA3ODQ0OSwgODg5MCwgMTk0OTc3LCAKKyAgICAxOTQ5NzYsIDI0NDgsIDc4MDg1LCAxMDI2NywgODQyNCwgMjQ1MiwgNzgwODMsIDE5NDg2NCwgODcyOSwgNzg0NTYsIDAsIAorICAgIDc4NDUsIDkxNzkxNywgNzg2OTIsIDQ0MDgsIDQxMjIsIDY3NzIsIDExMDM5LCA4NzIzLCAxOTQ5OTAsIDEyNzgzMywgCisgICAgMTE5MzAyLCA3MzEsIDExOTMwNCwgOTIyODYsIDI0MzgsIDY0ODU1LCAxMTkzMDAsIDExOTI5OSwgMTE3NSwgMCwgNDIxMzUsIAorICAgIDM3MywgMTE5MTcyLCAyMTE5LCAxMTQ1NywgMTE1MjEsIDc3MjMsIDAsIDAsIDAsIDQxOTUyLCAwLCA1MjczLCAyMTI3LCAKKyAgICA1MjY5LCA2MzM3LCA1MjAyLCAyNDA0LCA1MjY3LCA0MjgyMywgMTEyOTEsIDE5OTE1LCA1Mjc3LCAxMjk2MywgMTI3ODY0LCAKKyAgICA2MTg5LCA0MTI1LCAxMzE0LCAxMjEzMywgMCwgMTE4ODczLCAxMjcxLCA5ODMzNzUsIDAsIDY2MDI0LCA0MTQ4MiwgMzg2NCwgCisgICAgNzQ1MzksIDAsIDM4NzksIDAsIDEyOTc4LCA0MTY2LCA0NTc0LCAwLCA3NTY3LCA3NDU5LCAwLCA0MTM5MCwgNTM4NCwgCisgICAgNDE4ODIsIDY3NjQ3LCA5MjU0OCwgNTc1OSwgMCwgMCwgNDEzODgsIDkyMzYyLCA0MTM5MiwgNjQyODgsIDQxMzg3LCAwLCAKKyAgICA4NzA2LCA1NTUyLCAwLCA3MDAsIDAsIDU1NTMsIDAsIDcwODgsIDUzNTYsIDc0OTksIDc4MTEwLCA2NjU5NiwgMCwgMCwgCisgICAgMTAyNjMsIDU1NTQsIDAsIDEyMzQ0LCAxMDMxMSwgNzgxMTMsIDY2NjUsIDAsIDAsIDc2MTgsIDg1MTcsIDExNDU1LCAKICAgICA3ODQ0MCwgNjQ2MzIsIDY0NDQ3LCA1NTU1LCA3ODA4OCwgNzgwOTMsIDc4MDkxLCAwLCA0MjgwMywgNjUwMzMsIDkxNDMsIAogICAgIDY2NjgsIDE5NTA2NywgMTk1MDY2LCAxOTUwNjksIDY1NiwgMTk1MDcxLCA2NTAzNywgNDU3NywgNjQ2MjQsIDAsIDAsIDAsIAotICAgIDAsIDQyNjksIDczODg1LCA5MTc3NzUsIDQyODQ2LCA2OTY0NCwgOTUwLCAwLCA5MjI3MywgNjY1ODAsIDExODg5NSwgCisgICAgOTgzMzg0LCA0MjY5LCA3Mzg4NSwgOTE3Nzc1LCA0Mjg0NiwgNjk2NDQsIDk1MCwgMCwgOTIyNzMsIDY2NTgwLCAxMTg4OTUsIAogICAgIDY2NjgzLCAxMDU1NCwgOTE3Nzc4LCAxMTkxMjEsIDAsIDUwOTgsIDkxNzc3MCwgMCwgMTE5MDk5LCA1MDk3LCA0OTM1LCAKLSAgICA5ODQ4LCAxMDM4MSwgMCwgMTI4ODcwLCAwLCAzNjUxLCAwLCAxOTQ2MTAsIDEyNzU1NiwgNTEwMiwgNTEwMSwgMTAyNjksIAotICAgIDEyOTgzLCA4MTM4LCA0NTE3LCAxOTMyLCA1MTAwLCAxNDM5LCAxMjA5MywgMTI0NywgMTAwMzQsIDE5NTA2NCwgNTA5OSwgCi0gICAgNzgzNzMsIDE0NDEsIDQyMDg3LCAzMDYzLCA2NTAsIDAsIDc4MzgsIDAsIDE5NTA0MSwgMTk1MDQwLCAxMTkxNDIsIDkwMzEsIAotICAgIDEyMDc5MCwgMTI4NTgyLCA5MDc4LCA4NTQ1LCA2NjM1NiwgMTI4Nzk5LCAwLCA5MTU0LCA5MTE4LCAwLCAwLCAyNjc2LCAKLSAgICA3NzUwLCAwLCA3MzgxMiwgNjE5MCwgODU5OSwgMTk1MDUzLCAwLCAxMDc5NSwgOTg1NywgNzAxNCwgOTg1NiwgMTk1MDMzLCAKLSAgICA5MjYyMCwgMTIxMjksIDAsIDg0ODEsIDAsIDYyMDIsIDE5NTAzNSwgMTA5MjAsIDEyODIzNywgNTIwMywgMTk1MDM5LCAKLSAgICAxOTUwMzgsIDUxMDgsIDUxMDcsIDY1ODE4LCA2NjAxOSwgOTc2MiwgMCwgNTU0MSwgNzQ3NzIsIDAsIDEyNjEzLCA1Mjg0LCAKLSAgICA2NjU3LCAyMDcsIDEyODgwNiwgNDI3NSwgNzQ4MTksIDg1NCwgNjgxNDcsIDc0MzgxLCAwLCAwLCA1MTAzLCAxMjc4NjEsIAotICAgIDY0MzQ4LCA0MTM2OCwgNDM5NzQsIDQ4OCwgNjk4MTEsIDAsIDAsIDEwMTU3LCAwLCA0MzAzNCwgMTE0MzgsIDAsIDAsIAotICAgIDkyNjk0LCA2ODQzMSwgNDE3NzEsIDUxMDYsIDY2NjksIDg1MDQsIDY1MTU0LCA2OTgxMywgNDEzNjcsIDUxMDUsIDE5NTAzMCwgCi0gICAgNjk3MjAsIDY0NzYsIDUxMDQsIDAsIDMwNCwgMzE3NiwgMCwgMCwgOTMyLCAxMjg2NjMsIDY1NjcsIDIzOCwgNjk2NTYsIAotICAgIDE5NTAxMSwgMTk0NTk1LCAxOTkwNSwgMTIwNTc3LCAxOTUwMTUsIDc4ODcwLCA0MTA0NCwgNjc2NDAsIDE5NDkwMiwgCi0gICAgNDIwNTUsIDk5MTIsIDY1OTM5LCAxMDY3MCwgNzQwOTMsIDEzMjczLCAwLCAxMjU1MiwgMTk1MDE5LCA4ODAzLCAzMDksIAotICAgIDY2MjIsIDgxNTEsIDEwODU4LCAxOTQ1OTYsIDY3NjM2LCAwLCAxMjU2OCwgMCwgMTI1NTMsIDEwODE0LCA0MzI3NSwgNjk1MCwgCi0gICAgOTcxMiwgNjg2ODAsIDQzOTcwLCAwLCA2NTE2NSwgOTI3MjUsIDAsIDY2NDY2LCAwLCAwLCAwLCA2NjcyNSwgNjE5MSwgCi0gICAgMTEzNTEsIDEwNDM3LCAxMTMxNiwgNjc2MzQsIDAsIDAsIDQxNzU0LCA2NzYzNSwgOTM3MCwgMjcyMCwgMTk0OTc1LCAKKyAgICA5ODQ4LCAxMDM4MSwgMCwgMTI4ODcwLCA5ODM0MzYsIDM2NTEsIDAsIDE5NDYxMCwgMTI3NTU2LCA1MTAyLCA1MTAxLCAKKyAgICAxMDI2OSwgMTI5ODMsIDgxMzgsIDQ1MTcsIDE5MzIsIDUxMDAsIDE0MzksIDEyMDkzLCAxMjQ3LCAxMDAzNCwgMTk1MDY0LCAKKyAgICA1MDk5LCA3ODM3MywgMTQ0MSwgNDIwODcsIDMwNjMsIDY1MCwgMCwgNzgzOCwgMCwgMTk1MDQxLCAxOTUwNDAsIDExOTE0MiwgCisgICAgOTAzMSwgMTIwNzkwLCAxMjg1ODIsIDkwNzgsIDg1NDUsIDY2MzU2LCAxMjg3OTksIDAsIDkxNTQsIDkxMTgsIDAsIDAsIAorICAgIDI2NzYsIDc3NTAsIDAsIDczODEyLCA2MTkwLCA4NTk5LCAxOTUwNTMsIDAsIDEwNzk1LCA5ODU3LCA3MDE0LCA5ODU2LCAKKyAgICAxOTUwMzMsIDkyNjIwLCAxMjEyOSwgMCwgODQ4MSwgMCwgNjIwMiwgMTk1MDM1LCAxMDkyMCwgMTI4MjM3LCA1MjAzLCAKKyAgICAxOTUwMzksIDE5NTAzOCwgNTEwOCwgNTEwNywgNjU4MTgsIDY2MDE5LCA5NzYyLCAwLCA1NTQxLCA3NDc3MiwgMCwgMTI2MTMsIAorICAgIDUyODQsIDY2NTcsIDIwNywgMTI4ODA2LCA0Mjc1LCA3NDgxOSwgODU0LCA2ODE0NywgNzQzODEsIDAsIDAsIDUxMDMsIAorICAgIDEyNzg2MSwgNjQzNDgsIDQxMzY4LCA0Mzk3NCwgNDg4LCA2OTgxMSwgMCwgMCwgMTAxNTcsIDAsIDQzMDM0LCAxMTQzOCwgMCwgCisgICAgMCwgOTI2OTQsIDY4NDMxLCA0MTc3MSwgNTEwNiwgNjY2OSwgODUwNCwgNjUxNTQsIDY5ODEzLCA0MTM2NywgNTEwNSwgCisgICAgMTk1MDMwLCA2OTcyMCwgNjQ3NiwgNTEwNCwgOTgzNDg0LCAzMDQsIDMxNzYsIDAsIDAsIDkzMiwgMTI4NjYzLCA2NTY3LCAKKyAgICAyMzgsIDY5NjU2LCAxOTUwMTEsIDE5NDU5NSwgMTk5MDUsIDEyMDU3NywgMTk1MDE1LCA3ODg3MCwgNDEwNDQsIDY3NjQwLCAKKyAgICAxOTQ5MDIsIDQyMDU1LCA5OTEyLCA2NTkzOSwgMTA2NzAsIDc0MDkzLCAxMzI3MywgMCwgMTI1NTIsIDE5NTAxOSwgODgwMywgCisgICAgMzA5LCA2NjIyLCA4MTUxLCAxMDg1OCwgMTk0NTk2LCA2NzYzNiwgMCwgMTI1NjgsIDAsIDEyNTUzLCAxMDgxNCwgNDMyNzUsIAorICAgIDY5NTAsIDk3MTIsIDY4NjgwLCA0Mzk3MCwgOTgzMDQwLCA2NTE2NSwgOTI3MjUsIDAsIDY2NDY2LCAwLCAwLCAwLCA2NjcyNSwgCisgICAgNjE5MSwgMTEzNTEsIDEwNDM3LCAxMTMxNiwgNjc2MzQsIDAsIDAsIDQxNzU0LCA2NzYzNSwgOTM3MCwgMjcyMCwgMTk0OTc1LCAKICAgICA2ODQ2MiwgODIzMiwgMTE4ODE3LCAwLCAzMjIyLCAwLCAwLCAwLCA2NjY2MywgMCwgMCwgMTA4MzQsIDAsIDAsIDY1NzMyLCAKICAgICAwLCA5MTc1NDcsIDkyNjgyLCA2NzY3OSwgMTk1MDIwLCAwLCA3NzgxLCA0MTM4MywgNjQ1NjgsIDAsIDEyMDczOCwgMTIwNzcsIAogICAgIDAsIDY0NTg2LCA5MTc2MjAsIDQyMzk2LCA1NTI1NSwgMzQ3NSwgMTI4MDM1LCAyNDc5LCAwLCAzNjMyLCAxMjA3MjgsIApAQCAtMTYzNDcsNzEgKzE2NTY1LDcyIEBACiAgICAgMjUyOSwgMCwgMCwgMCwgNDIwODMsIDEyMDY3OCwgNjgzOTgsIDE5NDk1NywgNjc2MTksIDY2MzY3LCAxOTQ5NTgsIDk2MzQsIAogICAgIDkyMzgwLCA5OTg4LCAwLCA0MTA2OCwgMCwgMCwgNjUyNjQsIDAsIDAsIDkyNTQ1LCAwLCA3ODUsIDgyMzYsIDEyODY0NywgCiAgICAgOTAyNywgNjgxNjAsIDY3NjIzLCA2NDM4MywgMTI4ODIxLCA5MjUsIDEyNzE1NiwgMCwgNDE5ODUsIDQxMDcxLCA5NTg2LCAwLCAKLSAgICA0MTk4NCwgOTIxNywgMCwgMCwgMCwgOTE4NiwgMjA2NywgNDAxNiwgMCwgMCwgMzgxLCAwLCAwLCA0MjA3NywgMCwgCi0gICAgMTI3NDgzLCA1MTg0LCA0MjA3OCwgMTk0OTQ3LCAxMDgxMCwgMTI4NTMxLCA0NTg1LCAxOTk0MywgNTg2MCwgNjc2MzMsIDAsIAotICAgIDAsIDgxMiwgMzYxNSwgMCwgNTE3OCwgNDQwMDAsIDEyMDU0OCwgNzg4MDcsIDUxODgsIDc0Mjg3LCA2NzYyOSwgMzYwNSwgCi0gICAgMTA2OTIsIDExNjYsIDY0NDI5LCA0MjYzOSwgOTI0LCAwLCA2NzYzMSwgMCwgMTIwNjcwLCAyNDQyLCAxMDcwMywgNzg3ODksIAotICAgIDY3NjMyLCA5MTc5MjQsIDEyNzcxLCAxMjczNiwgMTI3NTMsIDAsIDczOTMzLCA2NzYyNiwgNDI0MDEsIDAsIDAsIDEyNzM3MywgCi0gICAgNDIyODgsIDEyNzUxLCAwLCA4NTQyLCAxMzE0NSwgMTk0OTYzLCAyNDY4LCA2NjcwNiwgNDEyOTQsIDM2MjYsIDM4ODMsIAotICAgIDY0Mzg4LCA0MjQ3OSwgMCwgNDExMTcsIDAsIDkyNTgwLCAwLCAwLCA2NzYyNCwgMCwgMTI5MCwgMCwgNjU1ODUsIDI3MTUsIAotICAgIDgwNiwgNjUyMDgsIDQxODg0LCA5MTc4ODMsIDEzMTgsIDY0NzMxLCAwLCAwLCAwLCA2NjMyNSwgMzQ2NSwgMjQwNSwgOTI0MCwgCi0gICAgMCwgMTI3NTYsIDY1MjU5LCAwLCAwLCAxMjc1MiwgNTgzMywgMTQzMiwgMCwgNDE4ODMsIDczOTEyLCA5Nzk5LCAwLCAKLSAgICA0MTg4NiwgMjQ4MCwgMCwgMjA2MiwgMTI3MjkzLCA2NDk0LCA1NTM3LCA3ODY1NiwgMCwgMTk0NTg3LCAwLCAxMjExLCAwLCAKLSAgICAwLCAwLCAxMTg4MzIsIDEyMzE4LCAwLCAwLCAwLCAxMDYyMiwgMCwgMCwgNzg2NTQsIDY1NjYsIDc4NjU5LCAwLCA3Mzc4MCwgCi0gICAgMCwgNjQ4NjQsIDAsIDc4NjYwLCAwLCA4Mjg0LCAxMzA4MSwgMCwgMzU4OSwgNDIwNTEsIDQwMzUsIDY0OTIsIDkyMjM2LCAKLSAgICA0MjY1LCA2NjQyLCAzOTc3LCA3NDE4NiwgNDE3NzgsIDgzNiwgMTE5MjE2LCAyNDg4LCAwLCA0NTgyLCAwLCAwLCA0MTc3NywgCi0gICAgMTI5MjYsIDAsIDc1MjgsIDEwNTUwLCAwLCA5MjcwNiwgMCwgMTE0MzksIDAsIDEzNzQsIDY0ODc4LCAxMTkwMTQsIDAsIAotICAgIDQyMzg5LCA0MTM3NCwgMCwgMCwgNzg0OTIsIDQxMzc3LCAxMjc5MDksIDAsIDQwMCwgMTI1OTcsIDEyMDU4NiwgMCwgMCwgCi0gICAgNjY2MSwgMCwgNjQ4MjcsIDAsIDczODE3LCAzOTAsIDAsIDc0NzU1LCAwLCAzNDczLCA3NzE4LCAwLCAwLCAwLCA1NTI4NSwgCi0gICAgMCwgMCwgMCwgMTE5NjksIDAsIDEyNzg0MSwgNjM2NSwgMTg4NywgNjc2MywgMCwgODA4MCwgNzAwNiwgMCwgMCwgNjc1NywgCi0gICAgNjQzNTEsIDE1NDQsIDAsIDY3NjYsIDY0Njc3LCAxMjA3MTYsIDAsIDYxNDYsIDAsIDc3MSwgMCwgMCwgMTI4MTIsIDEzMTY4LCAKLSAgICA0MjI3MiwgMTIyMDAsIDkxNzkyNywgNzkwNCwgMCwgOTUzLCAxMjkxNywgMTE5NTYwLCAxMjMwMCwgMCwgMTE0OTEsIDk3MjQsIAotICAgIDEwMzQxLCAwLCA5NTI0LCA3NDkwLCAxMTM4OSwgNzQ4OSwgMzM3OSwgMCwgNzQ4NywgMCwgNDcxLCA3NDg0LCA3NDgyLCAKLSAgICA2NzUzLCA3NDgwLCA3NDc5LCA3NDc4LCA3NDc3LCA2NTAxLCA3NDc1LCA2OTE4LCA3NDczLCA3NDcyLCAyNDc0LCA3NDcwLCAKLSAgICA3NDY4LCAxMDIzMiwgMTA2MTUsIDEwMjEzLCAxMjcyODgsIDkyMzU3LCAxMDA0OSwgNzg4ODQsIDM1NDQsIDAsIDYwMTcsIAotICAgIDY1MzExLCAxMjc0ODEsIDEyMDIxNiwgMTMzMDYsIDEwNTMzLCA3ODcwLCA3Mzk0OSwgNzYyNSwgMCwgMTIwNTQ0LCAwLCAwLCAKLSAgICA5MjY2MCwgMCwgMCwgMCwgMTk5NjEsIDI0NzIsIDQyNjY1LCA5MjM0MSwgMCwgMjEzOSwgNDI1NiwgMTIwNzc2LCA3NDM4MCwgCi0gICAgMCwgNDI2NzUsIDQyNjU4LCAxMjg0NSwgMCwgMCwgNjUxMzgsIDExOTM1NSwgNjc4NjIsIDAsIDY1NjcxLCAxMjAwMDAsIAotICAgIDEyMDAwOCwgODA2NiwgNzY3OCwgNzQ4NjUsIDAsIDAsIDAsIDAsIDcxODYsIDAsIDEyMDU1NSwgMCwgNDQ1LCAxMjA1NjYsIAotICAgIDEyODMwOCwgMCwgMCwgODMzMCwgMCwgMCwgNDI3OTcsIDAsIDEyMDIxNSwgMCwgMzkwMiwgMCwgMTc3MCwgMCwgMTI4ODY2LCAKLSAgICAxNTYwLCAxMjAyMDksIDE5NDk3MiwgNDU4NCwgNzM4NDMsIDAsIDExNzEyLCAxMDg2NiwgMTE4OTI4LCAxMTE4LCA5MjIwOSwgCi0gICAgMCwgMCwgMTA4MSwgNzQzNiwgNjg0MjAsIDcyNTIsIDAsIDU5OTYsIDAsIDQ5MDMsIDAsIDQxMzg2LCA1MTYyLCAxMTkxODksIAotICAgIDEzMzAsIDAsIDcxMzksIDAsIDEyMDQ3LCA0MTM4NCwgMCwgMCwgMTg0OCwgNDMzNCwgNjMyNCwgNDE5NzUsIDY0Nzc3LCAKLSAgICAxMDY3NCwgMTIzMDgsIDEyMTg2LCAwLCAwLCAwLCAxMjcxNSwgMTI4MzQ5LCAwLCAwLCAyMDE4LCA2NjY3MiwgNDE5NzksIAotICAgIDY2Njg1LCAxMTkxNTcsIDAsIDkyNDY0LCAwLCAxMjY5ODQsIDAsIDkzMzQsIDkyNzA1LCA5MjMxNSwgMCwgNzk3NSwgMCwgCi0gICAgNzc5NTcsIDAsIDY2NjIxLCA0ODg0LCA2NjU5NywgNjk3MzIsIDAsIDAsIDYzMTMsIDY1NTEzLCAwLCAwLCAwLCAwLCAyMzQ1LCAKLSAgICA0MzY5NywgNDYzLCAwLCAwLCAxMTk2MDcsIDMxMTcsIDU0NjAsIDAsIDAsIDAsIDAsIDQyMjc5LCAxOTQ1NzcsIDAsIAotICAgIDc4NDE1LCAwLCAxOTUwMDgsIDAsIDEzMjQ4LCAwLCAwLCAwLCAwLCAwLCAwLCA1NjYzLCAwLCAwLCAwLCAwLCAyNDgyLCAKLSAgICAxNDcxLCAwLCAwLCA0MjI0NywgMTIzNzgsIDczOTI1LCA2OTY2NCwgMCwgMTIzNzQsIDAsIDAsIDAsIDAsIDI0NjAsIDAsIAotICAgIDExOTQ0LCAxMjM3NiwgMTI3ODY4LCA2NDY3OSwgMCwgMTIzODAsIDEwNTU3LCA2NDQ3MywgNTg3MCwgMCwgMjAyNCwgCi0gICAgMTI3MTgwLCAwLCAwLCA1MzksIDAsIDEyNzc2NSwgMCwgMzg1MywgNjUxODAsIDEyNzkyMywgMTIwNzk2LCAxMjAyNDUsIAotICAgIDkyMzI0LCAwLCA4NjU5LCAwLCAxMjQ3NCwgOTI1NzksIDk1MDMsIDE5NDk2OSwgMjQ3OCwgMCwgNDE2MiwgMCwgNDI2MCwgCi0gICAgMTI5NTMsIDY5NjMzLCAxMjAwODksIDEyNDcwLCAwLCA3NDE4OSwgMjc0MiwgMTI0NzYsIDExNzk4LCAxMDk0NiwgMTI3MzEwLCAKLSAgICA1MDAwLCAwLCAwLCAwLCA2OTY3MiwgODIxMywgNzQwMTcsIDc3NzEsIDYxNjEsIDAsIDY3MDksIDAsIDc4ODg1LCAwLCAKLSAgICAxMjc5NzEsIDEyMDU4MiwgNzg1NDcsIDAsIDEwMzAxLCAxMDMzMywgMTAzOTcsIDAsIDAsIDczNzkxLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA0MDE0LCAxMjg0MiwgNzM5NTIsIDEyMDE1LCAxMjcyOTAsIDgyNzUsIDM4OTMsIDAsIDAsIDEyMjEwLCA3MjIxLCAKLSAgICA0MjE0NywgMCwgNzQ1NTAsIDc0NDY1LCA2NDc0NywgMTE4ODQxLCAwLCAxMjUxNiwgNDQ0NCwgMCwgOTIyNzEsIDc0NTM3LCAKLSAgICAxMDg5MiwgODIzMSwgMCwgNjQ3MywgNDE5NjgsIDc4Mzg4LCA0MTk3MywgMzU5MSwgNDE5NjksIDAsIDI0NTMsIDEyODU0OSwgCi0gICAgOTI2NjYsIDY0NzA1LCAwLCAwLCAxMDM0OSwgMTA0MTMsIDQzNTkxLCA0MTk2MiwgMzIwMiwgNzQzNTMsIDAsIDgzMTYsIDAsIAotICAgIDAsIDAsIDY4NywgMCwgMCwgMCwgMTg0MCwgMCwgNjg2NzEsIDExOTgwOSwgNDg4MywgMjg1LCA0NzIzLCA3NzkyNywgCi0gICAgOTI2OTIsIDQ0NTksIDc0NTc3LCA0MjkyMSwgNDE3MjAsIDExMDg5LCAyNDAsIDE5OTA2LCAwLCA0MjMyMywgMCwgOTc0MywgCi0gICAgMTIwMjMyLCAxMzEzNCwgMCwgMCwgMCwgMCwgMCwgNDI2MzQsIDAsIDQzNDM3LCAzMDgxLCAxMTQ2MywgMTIwMTU0LCAwLCAwLCAKLSAgICAxMDQ0NSwgMCwgMCwgNjY3MTcsIDI2MTQsIDkxMjUsIDExOTAyMywgMTcyOSwgMCwgMTIwMjM2LCA2NTIyMSwgNjM4ODMsIAotICAgIDQzMzM0LCA2NDg1MiwgMCwgMTIwMjM1LCA2NjIwMSwgMCwgNjY1NzgsIDUwMDEsIDQxODc5LCA3NDQyNywgNDEyMSwgNTAwMywgCi0gICAgODg0LCA2NjcwMCwgNjM4NzksIDQ5NDMsIDUxNTAsIDczODg5LCA3NDE4MiwgMTI3OTE1LCA2NDMsIDMwODYsIDAsIDQyNDQ4LCAKLSAgICA0MjI5OSwgNTgsIDAsIDkxNzk1MiwgMTIwMDgzLCA2Mzg3MywgODQ5MSwgMCwgMCwgMCwgNDUzMCwgNDI0MDksIDcxMjYsIAotICAgIDE5NDU3NSwgMjcyMSwgMTIwMDc0LCAxMTkwOTYsIDE5OTI5LCAwLCAxOTQ1NzQsIDAsIDQyNDIsIDQyNjQsIDEyMDA3NywgCi0gICAgMTI4MTMyLCA2NjE3OSwgNDI0MTIsIDY1OTQxLCAxMzExNCwgNjQ1MjIsIDEwNzQwLCAzMDk0LCAwLCA5NzU0LCAxMTkxMDIsIAotICAgIDQ0MzcsIDczOTQ4LCAxMjg2OTIsIDAsIDU1MjgwLCA0MjE3NCwgMTk0OTI1LCA0MjQzMCwgMCwgMCwgNDIzNTUsIDY2MDI2LCAKLSAgICA0MzA2LCA0MTM4MCwgNjg0MzIsIDkyNTg2LCAwLCA2NjY2NywgMTI3MzA5LCAwLCAwLCA0MjIwMCwgNDI1NjYsIDAsIDAsIAotICAgIDUwODgsIDY5NDgsIDAsIDg1MjQsIDAsIDAsIDEyMzg1LCAwLCAwLCA2OTY0NiwgMTM4NiwgNjQ1ODAsIDExNDgwLCA2MTE2LCAKLSAgICA2NTAzOSwgNjUwMzgsIDEyMzkyLCA2NTAzNiwgODA2NCwgMCwgMTIxMDEsIDU4MjIsIDExOTAwNCwgMjA4MCwgNzEwLCAKLSAgICA3Nzk5OSwgMTE2NjMsIDE2NjYsIDQyMDkxLCAxMTk2NTcsIDEyMzgzLCA0MzY3MSwgNDIwOTIsIDY4NDE4LCA0Mjg5LCAwLCAKLSAgICA2Mzg5NiwgMTIwNjEsIDQyMDk2LCA0MzYyMSwgMzM2MiwgMTIzNzcsIDAsIDAsIDY4NDQ5LCA3NDYxLCA3MzkwMSwgMTI0NCwgCi0gICAgMzMxLCA3Mzc4NiwgMTI2ODMsIDEwNjYyLCAwLCA4MTEyLCAwLCA2NTg1MiwgMCwgMTIzNzksIDE5NDg3NywgMTIwODE4LCAKLSAgICA0MTk2NCwgNDIyMDgsIDYzODQzLCAyMDg0LCA0MTk2NSwgMCwgNjU4NjYsIDQzMjcsIDAsIDYzODQwLCA3ODU0OSwgNDEyMjAsIAotICAgIDEzMDMyLCAwLCA1ODQsIDEyOTMzLCA0MzE3NywgMTIzNzMsIDAsIDEzMDAwLCAxMzUxLCAyOTM1LCA4Njk4LCAxMjY2NSwgMCwgCi0gICAgMTkzMCwgMCwgNzgyMjksIDEyNDI3LCA2NjUxNCwgMCwgMTMwMzEsIDAsIDYzOTAxLCAwLCAzNjU3LCAxMjg1NzIsIDY1MjAyLCAKKyAgICA0MTk4NCwgOTIxNywgMCwgMCwgMCwgOTE4NiwgMjA2NywgNDAxNiwgOTgzNTM4LCAwLCAzODEsIDk4MzQwNCwgMCwgNDIwNzcsIAorICAgIDAsIDEyNzQ4MywgNTE4NCwgNDIwNzgsIDE5NDk0NywgMTA4MTAsIDEyODUzMSwgNDU4NSwgMTk5NDMsIDU4NjAsIDY3NjMzLCAKKyAgICAwLCAwLCA4MTIsIDM2MTUsIDAsIDUxNzgsIDQ0MDAwLCAxMjA1NDgsIDc4ODA3LCA1MTg4LCA3NDI4NywgNjc2MjksIDM2MDUsIAorICAgIDEwNjkyLCAxMTY2LCA2NDQyOSwgNDI2MzksIDkyNCwgMCwgNjc2MzEsIDk4MzQ2NCwgMTIwNjcwLCAyNDQyLCAxMDcwMywgCisgICAgNzg3ODksIDY3NjMyLCA5MTc5MjQsIDEyNzcxLCAxMjczNiwgMTI3NTMsIDAsIDczOTMzLCA2NzYyNiwgNDI0MDEsIDAsIDAsIAorICAgIDEyNzM3MywgNDIyODgsIDEyNzUxLCAwLCA4NTQyLCAxMzE0NSwgMTk0OTYzLCAyNDY4LCA2NjcwNiwgNDEyOTQsIDM2MjYsIAorICAgIDM4ODMsIDY0Mzg4LCA0MjQ3OSwgMCwgNDExMTcsIDAsIDkyNTgwLCAwLCAwLCA2NzYyNCwgMCwgMTI5MCwgMCwgNjU1ODUsIAorICAgIDI3MTUsIDgwNiwgNjUyMDgsIDQxODg0LCA5MTc4ODMsIDEzMTgsIDY0NzMxLCAwLCAwLCAwLCA2NjMyNSwgMzQ2NSwgMjQwNSwgCisgICAgOTI0MCwgMCwgMTI3NTYsIDY1MjU5LCAwLCA5ODM1MTYsIDEyNzUyLCA1ODMzLCAxNDMyLCAwLCA0MTg4MywgNzM5MTIsIAorICAgIDk3OTksIDAsIDQxODg2LCAyNDgwLCAwLCAyMDYyLCAxMjcyOTMsIDY0OTQsIDU1MzcsIDc4NjU2LCAwLCAxOTQ1ODcsIDAsIAorICAgIDEyMTEsIDAsIDAsIDAsIDExODgzMiwgMTIzMTgsIDAsIDAsIDAsIDEwNjIyLCA5ODM1MTQsIDAsIDc4NjU0LCA2NTY2LCAKKyAgICA3ODY1OSwgMCwgNzM3ODAsIDAsIDY0ODY0LCAwLCA3ODY2MCwgMCwgODI4NCwgMTMwODEsIDAsIDM1ODksIDQyMDUxLCAKKyAgICA0MDM1LCA2NDkyLCA5MjIzNiwgNDI2NSwgNjY0MiwgMzk3NywgNzQxODYsIDQxNzc4LCA4MzYsIDExOTIxNiwgMjQ4OCwgMCwgCisgICAgNDU4MiwgMCwgMCwgNDE3NzcsIDEyOTI2LCAwLCA3NTI4LCAxMDU1MCwgMCwgOTI3MDYsIDAsIDExNDM5LCAwLCAxMzc0LCAKKyAgICA2NDg3OCwgMTE5MDE0LCAwLCA0MjM4OSwgNDEzNzQsIDAsIDAsIDc4NDkyLCA0MTM3NywgMTI3OTA5LCAwLCA0MDAsIAorICAgIDEyNTk3LCAxMjA1ODYsIDAsIDAsIDY2NjEsIDAsIDY0ODI3LCAwLCA3MzgxNywgMzkwLCAwLCA3NDc1NSwgOTgzNTk3LCAKKyAgICAzNDczLCA3NzE4LCAwLCAwLCAwLCA1NTI4NSwgMCwgMCwgMCwgMTE5NjksIDAsIDEyNzg0MSwgNjM2NSwgMTg4NywgNjc2MywgCisgICAgMCwgODA4MCwgNzAwNiwgMCwgMCwgNjc1NywgNjQzNTEsIDE1NDQsIDAsIDY3NjYsIDY0Njc3LCAxMjA3MTYsIDAsIDYxNDYsIAorICAgIDAsIDc3MSwgMCwgMCwgMTI4MTIsIDEzMTY4LCA0MjI3MiwgMTIyMDAsIDkxNzkyNywgNzkwNCwgMCwgOTUzLCAxMjkxNywgCisgICAgMTE5NTYwLCAxMjMwMCwgMCwgMTE0OTEsIDk3MjQsIDEwMzQxLCA5ODM1MDgsIDk1MjQsIDc0OTAsIDExMzg5LCA3NDg5LCAKKyAgICAzMzc5LCAwLCA3NDg3LCAwLCA0NzEsIDc0ODQsIDc0ODIsIDY3NTMsIDc0ODAsIDc0NzksIDc0NzgsIDc0NzcsIDY1MDEsIAorICAgIDc0NzUsIDY5MTgsIDc0NzMsIDc0NzIsIDI0NzQsIDc0NzAsIDc0NjgsIDEwMjMyLCAxMDYxNSwgMTAyMTMsIDEyNzI4OCwgCisgICAgOTIzNTcsIDEwMDQ5LCA3ODg4NCwgMzU0NCwgMCwgNjAxNywgNjUzMTEsIDEyNzQ4MSwgMTIwMjE2LCAxMzMwNiwgMTA1MzMsIAorICAgIDc4NzAsIDczOTQ5LCA3NjI1LCAwLCAxMjA1NDQsIDAsIDAsIDkyNjYwLCAwLCAwLCAwLCAxOTk2MSwgMjQ3MiwgNDI2NjUsIAorICAgIDkyMzQxLCAwLCAyMTM5LCA0MjU2LCAxMjA3NzYsIDc0MzgwLCAwLCA0MjY3NSwgNDI2NTgsIDEyODQ1LCAwLCAwLCA2NTEzOCwgCisgICAgMTE5MzU1LCA2Nzg2MiwgMCwgNjU2NzEsIDEyMDAwMCwgMTIwMDA4LCA4MDY2LCA3Njc4LCA3NDg2NSwgMCwgMCwgMCwgMCwgCisgICAgNzE4NiwgMCwgMTIwNTU1LCAwLCA0NDUsIDEyMDU2NiwgMTI4MzA4LCAwLCAwLCA4MzMwLCAwLCAwLCA0Mjc5NywgMCwgCisgICAgMTIwMjE1LCAwLCAzOTAyLCAwLCAxNzcwLCAwLCAxMjg4NjYsIDE1NjAsIDEyMDIwOSwgMTk0OTcyLCA0NTg0LCA3Mzg0MywgCisgICAgMCwgMTE3MTIsIDEwODY2LCAxMTg5MjgsIDExMTgsIDkyMjA5LCAwLCAwLCAxMDgxLCA3NDM2LCA2ODQyMCwgNzI1MiwgMCwgCisgICAgNTk5NiwgMCwgNDkwMywgMCwgNDEzODYsIDUxNjIsIDExOTE4OSwgMTMzMCwgMCwgNzEzOSwgMCwgMTIwNDcsIDQxMzg0LCAwLCAKKyAgICAwLCAxODQ4LCA0MzM0LCA2MzI0LCA0MTk3NSwgNjQ3NzcsIDEwNjc0LCAxMjMwOCwgMTIxODYsIDAsIDAsIDk4MzQ3NiwgCisgICAgMTI3MTUsIDEyODM0OSwgMCwgMCwgMjAxOCwgNjY2NzIsIDQxOTc5LCA2NjY4NSwgMTE5MTU3LCAwLCA5MjQ2NCwgMCwgCisgICAgMTI2OTg0LCAwLCA5MzM0LCA5MjcwNSwgOTIzMTUsIDAsIDc5NzUsIDAsIDc3OTU3LCAwLCA2NjYyMSwgNDg4NCwgNjY1OTcsIAorICAgIDY5NzMyLCAwLCAwLCA2MzEzLCA2NTUxMywgMCwgMCwgMCwgMCwgMjM0NSwgNDM2OTcsIDQ2MywgMCwgMCwgMTE5NjA3LCAKKyAgICAzMTE3LCA1NDYwLCAwLCAwLCAwLCAwLCA0MjI3OSwgMTk0NTc3LCAwLCA3ODQxNSwgMCwgMTk1MDA4LCAwLCAxMzI0OCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgNTY2MywgMCwgMCwgMCwgMCwgMjQ4MiwgMTQ3MSwgMCwgMCwgNDIyNDcsIDEyMzc4LCA3MzkyNSwgCisgICAgNjk2NjQsIDAsIDEyMzc0LCAwLCAwLCAwLCA5ODM0MjksIDI0NjAsIDAsIDExOTQ0LCAxMjM3NiwgMTI3ODY4LCA2NDY3OSwgCisgICAgMCwgMTIzODAsIDEwNTU3LCA2NDQ3MywgNTg3MCwgMCwgMjAyNCwgMTI3MTgwLCAwLCAwLCA1MzksIDAsIDEyNzc2NSwgMCwgCisgICAgMzg1MywgNjUxODAsIDEyNzkyMywgMTIwNzk2LCAxMjAyNDUsIDkyMzI0LCAwLCA4NjU5LCAwLCAxMjQ3NCwgOTI1NzksIAorICAgIDk1MDMsIDE5NDk2OSwgMjQ3OCwgMCwgNDE2MiwgMCwgNDI2MCwgMTI5NTMsIDY5NjMzLCAxMjAwODksIDEyNDcwLCAwLCAKKyAgICA3NDE4OSwgMjc0MiwgMTI0NzYsIDExNzk4LCAxMDk0NiwgMTI3MzEwLCA1MDAwLCAwLCA5ODMzMjMsIDAsIDY5NjcyLCAKKyAgICA4MjEzLCA3NDAxNywgNzc3MSwgNjE2MSwgMCwgNjcwOSwgMCwgNzg4ODUsIDk4MzQ0MywgMTI3OTcxLCAxMjA1ODIsIAorICAgIDc4NTQ3LCAwLCAxMDMwMSwgMTAzMzMsIDEwMzk3LCAwLCAwLCA3Mzc5MSwgMCwgMCwgMCwgMCwgMCwgNDAxNCwgMTI4NDIsIAorICAgIDczOTUyLCAxMjAxNSwgMTI3MjkwLCA4Mjc1LCAzODkzLCAwLCAwLCAxMjIxMCwgNzIyMSwgNDIxNDcsIDAsIDc0NTUwLCAKKyAgICA3NDQ2NSwgNjQ3NDcsIDExODg0MSwgMCwgMTI1MTYsIDQ0NDQsIDAsIDkyMjcxLCA3NDUzNywgMTA4OTIsIDgyMzEsIDAsIAorICAgIDY0NzMsIDQxOTY4LCA3ODM4OCwgNDE5NzMsIDM1OTEsIDQxOTY5LCAwLCAyNDUzLCAxMjg1NDksIDkyNjY2LCA2NDcwNSwgMCwgCisgICAgMCwgMTAzNDksIDEwNDEzLCA0MzU5MSwgNDE5NjIsIDMyMDIsIDc0MzUzLCAwLCA4MzE2LCAwLCAwLCAwLCA2ODcsIDAsIDAsIAorICAgIDAsIDE4NDAsIDAsIDY4NjcxLCAxMTk4MDksIDQ4ODMsIDI4NSwgNDcyMywgNzc5MjcsIDkyNjkyLCA0NDU5LCA3NDU3NywgCisgICAgNDI5MjEsIDQxNzIwLCAxMTA4OSwgMjQwLCAxOTkwNiwgMCwgNDIzMjMsIDAsIDk3NDMsIDEyMDIzMiwgMTMxMzQsIDAsIDAsIAorICAgIDAsIDAsIDAsIDQyNjM0LCAwLCA0MzQzNywgMzA4MSwgMTE0NjMsIDEyMDE1NCwgMCwgMCwgMTA0NDUsIDAsIDAsIDY2NzE3LCAKKyAgICAyNjE0LCA5MTI1LCAxMTkwMjMsIDE3MjksIDAsIDEyMDIzNiwgNjUyMjEsIDYzODgzLCA0MzMzNCwgNjQ4NTIsIDAsIAorICAgIDEyMDIzNSwgNjYyMDEsIDAsIDY2NTc4LCA1MDAxLCA0MTg3OSwgNzQ0MjcsIDQxMjEsIDUwMDMsIDg4NCwgNjY3MDAsIAorICAgIDYzODc5LCA0OTQzLCA1MTUwLCA3Mzg4OSwgNzQxODIsIDEyNzkxNSwgNjQzLCAzMDg2LCAwLCA0MjQ0OCwgNDIyOTksIDU4LCAKKyAgICAwLCA5MTc5NTIsIDEyMDA4MywgNjM4NzMsIDg0OTEsIDAsIDAsIDAsIDQ1MzAsIDQyNDA5LCA3MTI2LCAxOTQ1NzUsIDI3MjEsIAorICAgIDEyMDA3NCwgMTE5MDk2LCAxOTkyOSwgMCwgMTk0NTc0LCAwLCA0MjQyLCA0MjY0LCAxMjAwNzcsIDEyODEzMiwgNjYxNzksIAorICAgIDQyNDEyLCA2NTk0MSwgMTMxMTQsIDY0NTIyLCAxMDc0MCwgMzA5NCwgMCwgOTc1NCwgMTE5MTAyLCA0NDM3LCA3Mzk0OCwgCisgICAgMTI4NjkyLCAwLCA1NTI4MCwgNDIxNzQsIDE5NDkyNSwgNDI0MzAsIDAsIDAsIDQyMzU1LCA2NjAyNiwgNDMwNiwgNDEzODAsIAorICAgIDY4NDMyLCA5MjU4NiwgMCwgNjY2NjcsIDEyNzMwOSwgMCwgMCwgNDIyMDAsIDQyNTY2LCAwLCAwLCA1MDg4LCA2OTQ4LCAwLCAKKyAgICA4NTI0LCAwLCAwLCAxMjM4NSwgMCwgMCwgNjk2NDYsIDEzODYsIDY0NTgwLCAxMTQ4MCwgNjExNiwgNjUwMzksIDY1MDM4LCAKKyAgICAxMjM5MiwgNjUwMzYsIDgwNjQsIDAsIDEyMTAxLCA1ODIyLCAxMTkwMDQsIDIwODAsIDcxMCwgNzc5OTksIDExNjYzLCAKKyAgICAxNjY2LCA0MjA5MSwgMTE5NjU3LCAxMjM4MywgNDM2NzEsIDQyMDkyLCA2ODQxOCwgNDI4OSwgMCwgNjM4OTYsIDEyMDYxLCAKKyAgICA0MjA5NiwgNDM2MjEsIDMzNjIsIDEyMzc3LCA5ODM1NjcsIDAsIDY4NDQ5LCA3NDYxLCA3MzkwMSwgMTI0NCwgMzMxLCAKKyAgICA3Mzc4NiwgMTI2ODMsIDEwNjYyLCAwLCA4MTEyLCAwLCA2NTg1MiwgMCwgMTIzNzksIDE5NDg3NywgMTIwODE4LCA0MTk2NCwgCisgICAgNDIyMDgsIDYzODQzLCAyMDg0LCA0MTk2NSwgMCwgNjU4NjYsIDQzMjcsIDAsIDYzODQwLCA3ODU0OSwgNDEyMjAsIDEzMDMyLCAKKyAgICAwLCA1ODQsIDEyOTMzLCA0MzE3NywgMTIzNzMsIDAsIDEzMDAwLCAxMzUxLCAyOTM1LCA4Njk4LCAxMjY2NSwgMCwgMTkzMCwgCisgICAgMCwgNzgyMjksIDEyNDI3LCA2NjUxNCwgOTgzMzU3LCAxMzAzMSwgMCwgNjM5MDEsIDAsIDM2NTcsIDEyODU3MiwgNjUyMDIsIAogICAgIDYwMDAsIDExOTIwNiwgMTI0MjYsIDEyNzE4MSwgMCwgNDE3NDAsIDEyNDI4LCA0MTI4MywgNDE5MTYsIDExOTIxMCwgMCwgMCwgCiAgICAgMTI0MjksIDY3MjcsIDAsIDc1NjIsIDAsIDUxNzAsIDAsIDQxNzU1LCA2NzYsIDAsIDY2NzA0LCA2NjY2NCwgOTk3OCwgCiAgICAgNjY0OTEsIDM1MzYsIDAsIDk3NTIsIDkyMzk3LCA2MTYyLCAwLCA2OTIyOCwgMTAxMTMsIDQxODI5LCA2NTg4NiwgNTE1OSwgCkBAIC0xNjQyMywxMDMgKzE2NjQyLDEwNCBAQAogICAgIDQxNTAxLCAwLCA0MjAzMSwgNTcxOSwgNzE3MiwgNDI2ODcsIDgzNjgsIDAsIDQxNDk5LCAwLCAwLCA0MjI0MiwgNDE0OTgsIAogICAgIDkxNzc5NCwgNDIwMjUsIDc4NTY3LCA2NTgwNSwgNDI0NjMsIDAsIDI5MjQsIDAsIDEyMDUxMCwgMCwgMCwgMTE5MjEzLCAKICAgICA3Mzk0MSwgMCwgNDIzMzAsIDkxNzc4NCwgMzk2OSwgMCwgMCwgNzE2OSwgMTk5MiwgOTY1MiwgNzM5NzcsIDcyNDYsIAotICAgIDQyMDg2LCA5MTc3OTAsIDkxNzc4OSwgMCwgMCwgMTI4ODAxLCAwLCAwLCAzMjcsIDAsIDkwNDIsIDkxNzc3NywgOTE3Nzc2LCAKLSAgICA2NTE0OCwgMTI0MzMsIDkxNzc4MSwgMTI3Mjc2LCA5MTc3NzksIDEyNDMxLCA4NjY4LCAxMjQzNCwgMCwgOTE3NzgyLCAKLSAgICA1OTk5LCAwLCA3NzEyLCAxMjQzMiwgMTI4MjQzLCA0MzY1MywgMTcyNiwgMTAxNSwgMCwgODIxMiwgMCwgMTI4MDE0LCAKLSAgICA0MjQyMywgMTE5MDY2LCAwLCAxMjgxMDgsIDY2NzA5LCAwLCA4ODExLCA5MjcsIDAsIDAsIDEyNDM2LCAwLCA0MjAyMSwgMCwgCi0gICAgMCwgMTI5OSwgMTIyNDAsIDQyMzUwLCA2NTE0MywgMCwgMTk1MDE2LCAwLCA3ODE5NywgMTEzNDgsIDAsIDc4MDM3LCA5MTk0LCAKLSAgICAwLCAwLCAxOTkxNCwgMTIxNzksIDAsIDk2NDgsIDE5NDkyMywgNjM4MzYsIDYzODMyLCA5MTc3NzMsIDEwOTY3LCA2MzgxNiwgCi0gICAgMjU5NCwgMzQ0NCwgNjM4MTcsIDY0NjUxLCAwLCA0MTUwMywgMTI3NDc4LCAxMTI2NSwgMCwgMTIwNzU2LCAxOTQ5MjIsIDAsIAotICAgIDU2NjQsIDM5NzIsIDAsIDAsIDAsIDEyODUwOCwgMTI0MTYsIDkxNzc2NCwgMTE5NjA4LCAxMDgxNiwgOTE3NzY5LCAKLSAgICA5MTc3NjgsIDEyNDE4LCA3NDExMSwgMzg4MiwgODUzMiwgOTE3NzcxLCAxNTczLCAxMjg2NDgsIDExOTg0NywgNDU5NiwgCi0gICAgNjYzMzksIDEyNDE3LCA2NjAwMSwgNjUzNDMsIDE5NDc4MiwgMTI0MTQsIDgyODcsIDY4MjE5LCAxOTUwMTcsIDY4MTA4LCAKLSAgICAxMTQzLCAxMTkxNjksIDExOTg0NiwgMTI0MTUsIDY2MjYsIDQyNzYzLCAwLCAxMTg4ODQsIDkwMjEsIDEyMDc4MywgMCwgCi0gICAgMTE3MjQsIDAsIDAsIDEyNzEwNCwgMTI4NTI2LCAwLCAwLCA4MDI3LCAxMDk5NywgOTE3MSwgMTI3NDEsIDExNDAwLCAKLSAgICA3NDE5NywgMTk0Nzk5LCAwLCAxMjgyMzksIDAsIDEyODg4MSwgMTE5NjA0LCAxMjc1MjMsIDEyMDE5MCwgMTk0NzczLCAKLSAgICA2NzYwOCwgMTI4MjE0LCA0MjM2OCwgMCwgNzcxNSwgMzg4MSwgNDE0ODcsIDEyMTE4LCA0MjUxNCwgNjg2NTEsIDAsIDAsIAotICAgIDMwMDksIDQxNDc2LCA0MTQ4OSwgNjk4MjUsIDMwMDcsIDE0NDgsIDMwMTgsIDE5NDgwOSwgMzg4OSwgODUyMSwgNTA4MywgCi0gICAgNTA4MiwgMTE5ODU5LCAxMjAxODQsIDg1MTksIDAsIDMwMTQsIDUwODEsIDY1ODUzLCAxMjA3MTUsIDAsIDEyMDE4MywgCi0gICAgNzgyMTksIDUwNzksIDY0ODAyLCA0MjIxMCwgNDU5NywgNjU1MzIsIDc4NDQ0LCAxMjAxODUsIDEyMzcxLCAwLCA4NDA3LCAwLCAKLSAgICAxMDgwNSwgODUxOCwgMTA3NzksIDEyMDE4OCwgMCwgMCwgMTIzNjcsIDQyMTcwLCAwLCA5MjU1NywgNjI5LCAxOTI0LCAwLCAKLSAgICAxMjAzNywgNzQzNjYsIDU5ODcsIDg0NjIsIDgwMDUsIDEyMzY1LCA2MzkzMywgNjk3MzUsIDEyMDgxNSwgMTIzNjksIAotICAgIDEwNjQ5LCAwLCA1MDc3LCAxMjcxMDgsIDEwODgwLCA2MzkyNywgNTA3NSwgOTE3ODgxLCAwLCA2NTA3NSwgMCwgMTEwMDcsIAotICAgIDAsIDY2NjU5LCA5MjYwNywgMCwgNjY2ODQsIDAsIDM0MzQsIDQ5NTQsIDE5MDQsIDAsIDUyNjYsIDEyNjk4MCwgNTI3MiwgCi0gICAgMTA0OTksIDQ1MDcsIDk1NzgsIDYzOTIzLCAxMjAxNzcsIDc5NzksIDAsIDk4MzEsIDAsIDE5NDkyNiwgNDYxLCA5ODAzLCAwLCAKLSAgICA0NTA0LCAxNTA1LCAwLCA2MzI1LCA1Mjc2LCA0MzAyMSwgMTIwNDg4LCAwLCA1NTIzNiwgMCwgNjY0NjEsIDUxNzcsIAotICAgIDQxMzI0LCAxMjA1NSwgODcyMiwgMCwgNDEzMjcsIDAsIDY2Njk1LCA0MTE0LCA0MDksIDQzODMsIDg5MDAsIDg5NDgsIAotICAgIDQxMzI1LCAwLCA3MjEsIDEwMTgyLCA5MTA4LCAwLCAwLCAxMTkxODUsIDQyMjI5LCAxOTQ5MTIsIDAsIDU5OTgsIDAsIAotICAgIDQyMzUzLCA3NDgyNSwgMCwgMTI1ODcsIDAsIDc4NTcxLCAwLCAwLCAxOTQ1NjIsIDQxNTc2LCA0MjIxNSwgNzg1NzAsIAotICAgIDExOTIwNywgMCwgODU3OCwgNTk5NSwgNzU3MywgNDE1NzUsIDc0Nzg5LCA3NDc1MiwgNjM5NDQsIDYzOTQ5LCA2NDc2NywgCi0gICAgMjY3MCwgNDE2NywgMCwgMTE3MjMsIDAsIDc0MTIwLCAwLCA2NTA3NiwgOTM4LCA0MzQxNCwgNzM4NTQsIDExNzM3LCA5NzIxLCAKLSAgICAwLCAwLCAwLCAxMTc0MiwgMjQxOSwgMCwgMTE0OTMsIDEyMzM0LCAxOTQ5MTMsIDQxNTMsIDEyMzAyLCAxMDc5MywgNTI1MCwgCi0gICAgMTI0MDcsIDExOTc4LCA0NDA0LCA5MTg5LCAxMjQwMSwgNDIwMDcsIDU3NzUsIDY3NTksIDY1ODA2LCA0Mzk5NywgMCwgCi0gICAgNDIwMDIsIDEyNDA0LCAwLCAwLCA0OTQwLCAxMjQxMCwgNzY4MywgMTE2NywgNzM3MjksIDQ5ODMsIDAsIDg2MSwgMCwgMCwgCi0gICAgMCwgMCwgNjU1NzcsIDQzMzcwLCAwLCAwLCAxMTk1NiwgMCwgMCwgMCwgOTYxNiwgNjYzMSwgMCwgMTI4MTYsIDc0NTgzLCAKLSAgICA0MjIxOCwgMTI3MTAsIDY4Njc0LCAxMjcyMSwgNDEwMSwgNjYxODUsIDAsIDU5OTIsIDc2MTYsIDE5NTA0NCwgMCwgMTI1NzcsIAotICAgIDAsIDAsIDg1MywgNDI2OTMsIDE5NTAxNCwgMCwgMCwgNTAxNiwgNDM1MzUsIDYzODkzLCA0MjgzNSwgOTQ5MSwgOTE3OTEzLCAKLSAgICAwLCA5MTc5MTQsIDAsIDEyNzEyLCA3MTA1LCAxMjc4MDcsIDY1MDYwLCAxMjA3OTcsIDk5MDAsIDAsIDAsIDE5NDkxOSwgMCwgCi0gICAgMTI3ODMwLCAwLCA2NDc3OCwgMTI1ODUsIDEwNTY1LCAxMjgxNTEsIDEyMTc3LCAwLCAwLCAwLCA3NzgyNCwgMCwgNDkwMCwgCi0gICAgMTI3ODc0LCAxMjg3OCwgOTI2MzAsIDg5ODQsIDQxMTksIDc0NzY4LCA4OTcxLCA3ODU5MywgNDMxMTMsIDk3MDIsIDc4NTk0LCAKLSAgICAxMTAyNSwgOTI0NSwgMTMwNDgsIDQ5MjcsIDQxMzgsIDc0MTg1LCA5MjQ4MSwgOTI3MTAsIDEyMzk3LCA3NzgyNywgMCwgCi0gICAgMTMwNTQsIDEyMzk0LCAwLCAwLCAwLCAxMzA1MywgMCwgMzk0OCwgMTA3ODEsIDE1NDYsIDAsIDUwMTAsIDE2ODAsIDEwNTA3LCAKLSAgICA3ODU5MCwgNzg1ODMsIDAsIDAsIDAsIDE5NDkxNSwgNzI2NywgMCwgNzQ4MzMsIDEyODE4MSwgNTk5MywgMjgxOSwgMCwgCi0gICAgMTI3MDYsIDc3ODQwLCAxODkzLCA3MjY2LCA2MzkxNSwgNzI2NCwgNzI2NSwgMCwgMTM2MywgMCwgNjM5OTcsIDYzOTEwLCAKLSAgICA2Mzk5NiwgMzA3NywgMCwgMCwgMTUxMiwgMCwgMTI1ODksIDQxNDc5LCAxMjgzMTMsIDAsIDQzMzM5LCAwLCA5ODM2LCAKLSAgICAxMjA3MjcsIDAsIDQxNDgxLCA0MzMzNSwgNzgzMiwgNDIzNDMsIDMwOTAsIDQzMzM3LCA4MTcsIDE2NjQsIDE4NTAsIAotICAgIDEyODg0MSwgMzA3OSwgMTEzNDAsIDQyNDA4LCA0MjQ0NywgMTI3MTQwLCAxMjAwMjAsIDQyMzA3LCAxMjM4NiwgNDIzMDQsIAotICAgIDkxNzU1NSwgMCwgMTIzODksIDAsIDkyMzY2LCA0MTk5NiwgMTE1MjYsIDYzOTg1LCA1ODY0LCAxMTQ3LCA2Mzk5MiwgCi0gICAgNDI4ODcsIDE5ODcsIDkyNzE4LCA1NDgwLCA3ODU4LCAxMTY1MywgNDExNiwgMTIzOTEsIDY2MTkzLCAwLCA0OTM5LCAKLSAgICAxMjM4NCwgMCwgMCwgNDE2ODYsIDYzOTA1LCAxMTk2MDEsIDE5NDY4OCwgMCwgMCwgMTI2NDksIDAsIDAsIDgyNDcsIDUwNywgCi0gICAgOTEsIDIwNDIsIDEyMDc3NSwgNDM2NDMsIDE5NDY4OSwgNjYwMjgsIDEwMDM2LCA0MTg0NCwgMTE5ODEzLCA3NzQsIAotICAgIDExOTgzMSwgMCwgMTE5ODE1LCA1OTk0LCAxMjUzOSwgMCwgNzgzNzUsIDEyMDU5NywgMTE5ODMzLCAwLCAxMTk2MDAsIDAsIAotICAgIDAsIDc3MTksIDYwMjYsIDI0ODYsIDEyODMxMiwgMTE5ODA4LCAxNjIsIDAsIDY1MjE5LCA0MTA3MywgOTY4NywgNDE2ODEsIAotICAgIDYzMDQsIDExOTgxMiwgNjYxOTYsIDE5NDg4MSwgNTI2MiwgMCwgNTUyMzMsIDEyNjgxLCA0MjM3OSwgMCwgNzUzNCwgCi0gICAgMTIyMTksIDAsIDEyNzUyOCwgNDI4MTAsIDEwNDkyLCAwLCAwLCAwLCA0MzExOSwgMCwgMTIwNzUzLCAxMjQwMywgMjUwMCwgCi0gICAgMTk1MDEzLCAwLCA0ODk5LCAxMjcyOSwgMCwgMCwgNzQxMTMsIDIzNDMsIDQxMDMsIDE5OTQ2LCA3NDExMiwgNzc4NTEsIAotICAgIDEzMTEyLCAwLCAxOTUwMTIsIDEyODU5LCAwLCAxMjAxNDgsIDY2MzY5LCA1ODYxLCAxMjc3NTgsIDExOTk5LCAxMjQwMCwgMCwgCi0gICAgMCwgMTI2NDUsIDUxNDYsIDExMzIwLCA2ODQxMCwgNjc0OCwgNjUwNDAsIDAsIDY0MTg0LCAxMjk3NCwgNjQxODMsIDY3NjEzLCAKLSAgICAxMjA2NDUsIDUxNDcsIDAsIDAsIDc0NTI0LCAwLCAxOTI4LCAwLCA2NzY0OSwgNTk5MSwgMzQ0NSwgNjc2MDksIDQ5NzYsIAotICAgIDY0MTc2LCAwLCA2NzYxMCwgODI0MSwgMCwgNzc4NjgsIDQyMDYsIDAsIDAsIDAsIDEyODI5OCwgMCwgMTAxMzgsIDAsIDAsIAotICAgIDg4OTcsIDAsIDAsIDgzNTcsIDQxMjQsIDc3ODYyLCA2NTgzNiwgMTIwNjQxLCAxMjc5MjYsIDc3ODU5LCAwLCAwLCAxMTIzLCAKLSAgICA5NjMsIDQxNTUzLCAxMDEyMCwgMTI0MDUsIDEyMDE1MCwgOTI2NjQsIDM5OCwgMTMyNzgsIDk3MjMsIDYzNjYsIDEyMDMxMSwgCi0gICAgNzk0NSwgMCwgNDQwMiwgOTk3MCwgMTI0MDIsIDAsIDQyMzkyLCAxMzA1LCAxMjQwOCwgMCwgNDQwMDcsIDAsIDAsIDQxNDY0LCAKLSAgICAxMjQxMSwgMTI5NjksIDEyMDgyNCwgNDE0NjUsIDAsIDg1MjgsIDE1NzUsIDAsIDYzOTU1LCAxNjUsIDMwMjQsIDQxNDY3LCAKLSAgICAxMTkxNjMsIDAsIDkwOTMsIDAsIDkxNDcsIDAsIDYzOTU4LCAwLCA5MTQ4LCA5NjkyLCA0MDk2LCA1MywgNzM3NzYsIDY3NTAsIAotICAgIDE5NTAxOCwgMCwgOTU5NCwgMCwgMCwgNDM1MjcsIDAsIDcyNywgMTk0NzAzLCAwLCA1ODA1LCAwLCA2NzI2LCAwLCA0MjE3NiwgCi0gICAgMTIzNzAsIDExNjU1LCAxMTkwOTUsIDEwNTkxLCAxMjM2NCwgMCwgMTIzNzIsIDEyMDY0MiwgMTIwMzA3LCAwLCA5MjM0MywgCi0gICAgMCwgMTIzNjYsIDEwOTYzLCA2MDY2LCAxMzI5LCAwLCAzMDUyLCA5MjIwLCAwLCA2NDQ3OCwgMTk0NzAxLCAxMDgwMywgCi0gICAgNDEzMiwgMTIwMzA2LCA2ODQ3NCwgOTI0NzMsIDAsIDAsIDc0ODM3LCAxMjAxNTUsIDE0OTksIDAsIDgwNTUsIDQyNzQwLCAKLSAgICA2Mzk2NSwgMCwgNjM5NjIsIDc0MDQyLCA4OTI0LCA0MzEyMywgNTk4OCwgMzY2MCwgNjM5NjksIDExNzgxLCA0MjcxOCwgCi0gICAgODc4OCwgMTM1NywgNjQ4NTEsIDY1NzQzLCAwLCA4Nzc0LCAwLCAxMjcwODYsIDk5NDEsIDEyMDE3MiwgMCwgMTkzMywgCi0gICAgNjk2NTUsIDk1NjQsIDAsIDkyNDM1LCA3Mzg2NiwgMCwgMCwgMjQ4NywgNjc2MTQsIDMxMjEsIDE4MDQsIDMzMTEsIDY3NjE1LCAKLSAgICAwLCA3ODMwMiwgMTIyMjAsIDY3NjE2LCAxMjA1OTgsIDEyNzQ3NSwgMCwgNjgyMDAsIDY2NzUsIDEyODE0NCwgMCwgNjc1OTIsIAotICAgIDEyMDY4NSwgMCwgNjQ3NzEsIDExOTgsIDkxMzIsIDAsIDY0NjE5LCA1MTAsIDY0NjYzLCAwLCAwLCA0NTYxLCAyMTAxLCAKLSAgICAxMzk4LCAwLCA5MjU1NCwgNzQwMzQsIDQxNTY5LCA5MjY4NCwgMTE0MDYsIDgxNjcsIDEyMTI3LCAwLCA4NDAsIDAsIDAsIDAsIAotICAgIDY5NjcsIDAsIDAsIDk3OTYsIDAsIDMzMywgMCwgMCwgODE0NCwgMjExNywgMCwgMCwgMTI0MDYsIDAsIDE5OTMxLCAKLSAgICAxMTkwODksIDY2NzgsIDc3NjksIDAsIDEyNjIxLCAwLCAxMjczNjYsIDEwMjI3LCA0NzY0LCA0MzEwMSwgOTk4MSwgMCwgCi0gICAgNDA5ODYsIDQxMjcsIDY2NDg3LCAwLCA0MjIwMiwgMTI3NTQsIDE5NTAyMiwgMCwgMCwgMCwgNjc1OTQsIDIwNDgsIDEyOTQ0LCAKLSAgICA0MDUwLCA2NzU5NSwgOTE3OTY3LCA0MzEwMiwgMTA1ODEsIDEyOTg1LCA0NTMzLCAxOTUwMjEsIDc0MDAzLCA2NDkwLCAwLCAKLSAgICAxMjAzOCwgMCwgMCwgMTIwNzA0LCA2NTQ2MSwgOTc5OCwgNjk3MDQsIDAsIDE5NDgsIDExOTAwNywgMCwgOTUyLCAxMjgyMzUsIAotICAgIDAsIDAsIDEyMDgwMiwgNjQ0OSwgOTQ5NCwgMTIwMzEzLCAwLCA0MzA5OCwgNDg0MywgODE0MiwgNjQxNjAsIDQwOTgsIAotICAgIDY0MTcwLCAwLCAwLCAzNDM2LCAxMTk5NzMsIDAsIDEyODE3LCA2NzU5NywgNjY3NiwgMzkzMCwgNjY3MDgsIDAsIDAsIAotICAgIDY3NTk4LCAwLCAwLCAwLCA2NTU5MSwgNDE1ODEsIDY1OTE2LCAxNDUzLCAwLCAwLCAwLCA4NTAwLCA0MjIyMiwgMTIwMTQyLCAKLSAgICA3Mzc0MywgMTIwNDAwLCA0MzE3LCAxMTU0MywgNjc2NzYsIDY0Njc2LCAwLCAwLCA2NzYwNiwgMTE5MDgzLCAwLCA0MjIxNywgCi0gICAgMTMxMDIsIDAsIDY2MDAzLCA2NjcyLCAwLCAwLCAwLCAwLCA2Mzg0MSwgOTYxMywgOTAwMSwgNDUyNiwgMTEyNzQsIDY3NjAxLCAKLSAgICA2NDUyMCwgNjQyMTAsIDY2NjQsIDc4NzA0LCA0MjA1NiwgMTAyMjgsIDY0OTU3LCAxMTI4MSwgMCwgNjQyMTMsIDE0NjksIAotICAgIDY2NjQwLCA2NTM4MSwgNDIxOTcsIDQ5ODgsIDQyMzcyLCAwLCA5NTk4LCA5MDQsIDM1MiwgNDIyMjUsIDE0NTEsIDgwNjEsIAotICAgIDg0NTMsIDQxMzQsIDAsIDc0ODQ3LCA2NjU3NiwgMTI3OTE2LCAwLCAxMDUyMCwgODU3NSwgOTk2MCwgMTIwMSwgMTI3Mjg5LCAKLSAgICAxMjg0NiwgMTI3MjkxLCAxMjcyOTIsIDExOTE5LCA2NDk2MiwgMTI3Mjg3LCA0MzczOSwgMTI3MjgxLCA4NTExLCA5NDYwLCAKLSAgICA4MjMsIDExNTg3LCAxMjMwNSwgMCwgNjQ2OTUsIDEyNzMwNSwgMTIzODcsIDEyNTMsIDEzMTgzLCA2NTc2NiwgNTAwLCAKLSAgICA0Mjc4MywgNjU3NjUsIDY0MjA4LCA2NDM2OSwgNjU3NjAsIDY1NzYxLCAxMTk1ODUsIDExNjA2LCA2NDc4NCwgMTE3MDIsIAotICAgIDY2NDk4LCA5ODIxLCA2NDMwNCwgMCwgNTE1MiwgMTEwNDgsIDc1MzMsIDY4MzY2LCA2NDQxMCwgOTIzMDUsIDAsIDQzMjMsIAotICAgIDEyMDA2MiwgOTI2NjksIDAsIDEyNzA1MiwgNDI1ODcsIDQyMjE0LCA0MTM5NCwgMCwgNDc2MywgNDExMiwgMTE4OTM1LCAwLCAKLSAgICA1MjYwLCA0MzE0MywgMCwgMzI2LCAxMjAxMzEsIDY4NDIzLCAwLCAxMDc3MSwgMjg3NiwgNzQwNzQsIDkyNTMwLCAxOTQ5MjQsIAotICAgIDQxMzk4LCA3MzgyLCA5ODAyLCAxMjcwNzcsIDEyNzA3NiwgNDUzLCA0MTM5NiwgMTIwNTI0LCA0MjcyMCwgMTIxNDAsIAotICAgIDk1NzIsIDAsIDcwMDMsIDE5NDg4MywgNDIzMzQsIDc3MDQsIDAsIDE5NDg4NSwgNDMxNDQsIDQxMjMsIDg0OTQsIDQzMTQ2LCAKLSAgICA5OTc3LCAwLCAwLCA2NTc1OSwgMTA3NjUsIDY0MDYxLCA0NDY1LCA5ODA4LCA2NDA1NiwgNjU1ODIsIDQxMjYsIDAsIDk1MjEsIAotICAgIDk1ODksIDY0NzU1LCAwLCA2NDAyMCwgMCwgMTA0NjQsIDAsIDAsIDE5NDg2OSwgNjQ1MTQsIDExNTI4LCA2NDAyNCwgCi0gICAgMTI4MDcyLCA2NzksIDY0MDEzLCAwLCA1ODUwLCA3NTgsIDc1MzYsIDAsIDkyMjM0LCA0MTQ0MSwgMTA2OTMsIDY0MDA2LCAwLCAKLSAgICA2NDAwNSwgNDA1OCwgMTE5MDE5LCAwLCA2NDY2MCwgMCwgMTE5MDUwLCAwLCAwLCAxMTM5LCA0MzI5OCwgNjQwMjcsIAorICAgIDQyMDg2LCA5MTc3OTAsIDkxNzc4OSwgMCwgMCwgMTI4ODAxLCA5ODM1NDMsIDAsIDMyNywgMCwgOTA0MiwgOTE3Nzc3LCAKKyAgICA5MTc3NzYsIDY1MTQ4LCAxMjQzMywgOTE3NzgxLCAxMjcyNzYsIDkxNzc3OSwgMTI0MzEsIDg2NjgsIDEyNDM0LCA5ODM1NzAsIAorICAgIDkxNzc4MiwgNTk5OSwgMCwgNzcxMiwgMTI0MzIsIDEyODI0MywgNDM2NTMsIDE3MjYsIDEwMTUsIDAsIDgyMTIsIDAsIAorICAgIDEyODAxNCwgNDI0MjMsIDExOTA2NiwgMCwgMTI4MTA4LCA2NjcwOSwgMCwgODgxMSwgOTI3LCAwLCAwLCAxMjQzNiwgMCwgCisgICAgNDIwMjEsIDAsIDAsIDEyOTksIDEyMjQwLCA0MjM1MCwgNjUxNDMsIDAsIDE5NTAxNiwgMCwgNzgxOTcsIDExMzQ4LCAwLCAKKyAgICA3ODAzNywgOTE5NCwgMCwgMCwgMTk5MTQsIDEyMTc5LCA5ODM1NDcsIDk2NDgsIDE5NDkyMywgNjM4MzYsIDYzODMyLCAKKyAgICA5MTc3NzMsIDEwOTY3LCA2MzgxNiwgMjU5NCwgMzQ0NCwgNjM4MTcsIDY0NjUxLCAwLCA0MTUwMywgMTI3NDc4LCAxMTI2NSwgCisgICAgMCwgMTIwNzU2LCAxOTQ5MjIsIDAsIDU2NjQsIDM5NzIsIDAsIDAsIDAsIDEyODUwOCwgMTI0MTYsIDkxNzc2NCwgMTE5NjA4LCAKKyAgICAxMDgxNiwgOTE3NzY5LCA5MTc3NjgsIDEyNDE4LCA3NDExMSwgMzg4MiwgODUzMiwgOTE3NzcxLCAxNTczLCAxMjg2NDgsIAorICAgIDExOTg0NywgNDU5NiwgNjYzMzksIDEyNDE3LCA2NjAwMSwgNjUzNDMsIDE5NDc4MiwgMTI0MTQsIDgyODcsIDY4MjE5LCAKKyAgICAxOTUwMTcsIDY4MTA4LCAxMTQzLCAxMTkxNjksIDExOTg0NiwgMTI0MTUsIDY2MjYsIDQyNzYzLCAwLCAxMTg4ODQsIDkwMjEsIAorICAgIDEyMDc4MywgMCwgMTE3MjQsIDAsIDAsIDEyNzEwNCwgMTI4NTI2LCAwLCAwLCA4MDI3LCAxMDk5NywgOTE3MSwgMTI3NDEsIAorICAgIDExNDAwLCA3NDE5NywgMTk0Nzk5LCAwLCAxMjgyMzksIDAsIDEyODg4MSwgMTE5NjA0LCAxMjc1MjMsIDEyMDE5MCwgCisgICAgMTk0NzczLCA2NzYwOCwgMTI4MjE0LCA0MjM2OCwgMCwgNzcxNSwgMzg4MSwgNDE0ODcsIDEyMTE4LCA0MjUxNCwgNjg2NTEsIAorICAgIDAsIDk4MzYzMCwgMzAwOSwgNDE0NzYsIDQxNDg5LCA2OTgyNSwgMzAwNywgMTQ0OCwgMzAxOCwgMTk0ODA5LCAzODg5LCAKKyAgICA4NTIxLCA1MDgzLCA1MDgyLCAxMTk4NTksIDEyMDE4NCwgODUxOSwgMCwgMzAxNCwgNTA4MSwgNjU4NTMsIDEyMDcxNSwgMCwgCisgICAgMTIwMTgzLCA3ODIxOSwgNTA3OSwgNjQ4MDIsIDQyMjEwLCA0NTk3LCA2NTUzMiwgNzg0NDQsIDEyMDE4NSwgMTIzNzEsIDAsIAorICAgIDg0MDcsIDAsIDEwODA1LCA4NTE4LCAxMDc3OSwgMTIwMTg4LCAwLCA5ODM2NjUsIDEyMzY3LCA0MjE3MCwgMCwgOTI1NTcsIAorICAgIDYyOSwgMTkyNCwgMCwgMTIwMzcsIDc0MzY2LCA1OTg3LCA4NDYyLCA4MDA1LCAxMjM2NSwgNjM5MzMsIDY5NzM1LCAKKyAgICAxMjA4MTUsIDEyMzY5LCAxMDY0OSwgMCwgNTA3NywgMTI3MTA4LCAxMDg4MCwgNjM5MjcsIDUwNzUsIDkxNzg4MSwgMCwgCisgICAgNjUwNzUsIDAsIDExMDA3LCA5ODM0NDAsIDY2NjU5LCA5MjYwNywgMCwgNjY2ODQsIDAsIDM0MzQsIDQ5NTQsIDE5MDQsIDAsIAorICAgIDUyNjYsIDEyNjk4MCwgNTI3MiwgMTA0OTksIDQ1MDcsIDk1NzgsIDYzOTIzLCAxMjAxNzcsIDc5NzksIDAsIDk4MzEsIDAsIAorICAgIDE5NDkyNiwgNDYxLCA5ODAzLCAwLCA0NTA0LCAxNTA1LCAwLCA2MzI1LCA1Mjc2LCA0MzAyMSwgMTIwNDg4LCAwLCA1NTIzNiwgCisgICAgMCwgNjY0NjEsIDUxNzcsIDQxMzI0LCAxMjA1NSwgODcyMiwgMCwgNDEzMjcsIDAsIDY2Njk1LCA0MTE0LCA0MDksIDQzODMsIAorICAgIDg5MDAsIDg5NDgsIDQxMzI1LCAwLCA3MjEsIDEwMTgyLCA5MTA4LCAwLCAwLCAxMTkxODUsIDQyMjI5LCAxOTQ5MTIsIDAsIAorICAgIDU5OTgsIDAsIDQyMzUzLCA3NDgyNSwgMCwgMTI1ODcsIDAsIDc4NTcxLCAwLCAwLCAxOTQ1NjIsIDQxNTc2LCA0MjIxNSwgCisgICAgNzg1NzAsIDExOTIwNywgMCwgODU3OCwgNTk5NSwgNzU3MywgNDE1NzUsIDc0Nzg5LCA3NDc1MiwgNjM5NDQsIDYzOTQ5LCAKKyAgICA2NDc2NywgMjY3MCwgNDE2NywgMCwgMTE3MjMsIDAsIDc0MTIwLCAwLCA2NTA3NiwgOTM4LCA0MzQxNCwgNzM4NTQsIAorICAgIDExNzM3LCA5NzIxLCAwLCAwLCAwLCAxMTc0MiwgMjQxOSwgMCwgMTE0OTMsIDEyMzM0LCAxOTQ5MTMsIDQxNTMsIDEyMzAyLCAKKyAgICAxMDc5MywgNTI1MCwgMTI0MDcsIDExOTc4LCA0NDA0LCA5MTg5LCAxMjQwMSwgNDIwMDcsIDU3NzUsIDY3NTksIDY1ODA2LCAKKyAgICA0Mzk5NywgMCwgNDIwMDIsIDEyNDA0LCA5ODMyOTcsIDAsIDQ5NDAsIDEyNDEwLCA3NjgzLCAxMTY3LCA3MzcyOSwgNDk4MywgCisgICAgMCwgODYxLCAwLCAwLCAwLCAwLCA2NTU3NywgNDMzNzAsIDAsIDAsIDExOTU2LCAwLCAwLCAwLCA5NjE2LCA2NjMxLCAwLCAKKyAgICAxMjgxNiwgNzQ1ODMsIDQyMjE4LCAxMjcxMCwgNjg2NzQsIDEyNzIxLCA0MTAxLCA2NjE4NSwgMCwgNTk5MiwgNzYxNiwgCisgICAgMTk1MDQ0LCAwLCAxMjU3NywgMCwgMCwgODUzLCA0MjY5MywgMTk1MDE0LCAwLCA5ODMzODIsIDUwMTYsIDQzNTM1LCAKKyAgICA2Mzg5MywgNDI4MzUsIDk0OTEsIDkxNzkxMywgMCwgOTE3OTE0LCAwLCAxMjcxMiwgNzEwNSwgMTI3ODA3LCA2NTA2MCwgCisgICAgMTIwNzk3LCA5OTAwLCAwLCAwLCAxOTQ5MTksIDAsIDEyNzgzMCwgMCwgNjQ3NzgsIDEyNTg1LCAxMDU2NSwgMTI4MTUxLCAKKyAgICAxMjE3NywgMCwgMCwgMCwgNzc4MjQsIDAsIDQ5MDAsIDEyNzg3NCwgMTI4NzgsIDkyNjMwLCA4OTg0LCA0MTE5LCA3NDc2OCwgCisgICAgODk3MSwgNzg1OTMsIDQzMTEzLCA5NzAyLCA3ODU5NCwgMTEwMjUsIDkyNDUsIDEzMDQ4LCA0OTI3LCA0MTM4LCA3NDE4NSwgCisgICAgOTI0ODEsIDkyNzEwLCAxMjM5NywgNzc4MjcsIDAsIDEzMDU0LCAxMjM5NCwgMCwgMCwgMCwgMTMwNTMsIDAsIDM5NDgsIAorICAgIDEwNzgxLCAxNTQ2LCAwLCA1MDEwLCAxNjgwLCAxMDUwNywgNzg1OTAsIDc4NTgzLCAwLCAwLCAwLCAxOTQ5MTUsIDcyNjcsIAorICAgIDAsIDc0ODMzLCAxMjgxODEsIDU5OTMsIDI4MTksIDAsIDEyNzA2LCA3Nzg0MCwgMTg5MywgNzI2NiwgNjM5MTUsIDcyNjQsIAorICAgIDcyNjUsIDAsIDEzNjMsIDAsIDYzOTk3LCA2MzkxMCwgNjM5OTYsIDMwNzcsIDAsIDAsIDE1MTIsIDAsIDEyNTg5LCA0MTQ3OSwgCisgICAgMTI4MzEzLCAwLCA0MzMzOSwgMCwgOTgzNiwgMTIwNzI3LCAwLCA0MTQ4MSwgNDMzMzUsIDc4MzIsIDQyMzQzLCAzMDkwLCAKKyAgICA0MzMzNywgODE3LCAxNjY0LCAxODUwLCAxMjg4NDEsIDMwNzksIDExMzQwLCA0MjQwOCwgNDI0NDcsIDEyNzE0MCwgCisgICAgMTIwMDIwLCA0MjMwNywgMTIzODYsIDQyMzA0LCA5MTc1NTUsIDAsIDEyMzg5LCAwLCA5MjM2NiwgNDE5OTYsIDExNTI2LCAKKyAgICA2Mzk4NSwgNTg2NCwgMTE0NywgNjM5OTIsIDQyODg3LCAxOTg3LCA5MjcxOCwgNTQ4MCwgNzg1OCwgMTE2NTMsIDQxMTYsIAorICAgIDEyMzkxLCA2NjE5MywgMCwgNDkzOSwgMTIzODQsIDAsIDAsIDQxNjg2LCA2MzkwNSwgMTE5NjAxLCAxOTQ2ODgsIDk4MzYwMywgCisgICAgMCwgMTI2NDksIDAsIDAsIDgyNDcsIDUwNywgOTEsIDIwNDIsIDEyMDc3NSwgNDM2NDMsIDE5NDY4OSwgNjYwMjgsIDEwMDM2LCAKKyAgICA0MTg0NCwgMTE5ODEzLCA3NzQsIDExOTgzMSwgMCwgMTE5ODE1LCA1OTk0LCAxMjUzOSwgMCwgNzgzNzUsIDEyMDU5NywgCisgICAgMTE5ODMzLCAwLCAxMTk2MDAsIDAsIDAsIDc3MTksIDYwMjYsIDI0ODYsIDEyODMxMiwgMTE5ODA4LCAxNjIsIDAsIDY1MjE5LCAKKyAgICA0MTA3MywgOTY4NywgNDE2ODEsIDYzMDQsIDExOTgxMiwgNjYxOTYsIDE5NDg4MSwgNTI2MiwgMCwgNTUyMzMsIDEyNjgxLCAKKyAgICA0MjM3OSwgMCwgNzUzNCwgMTIyMTksIDAsIDEyNzUyOCwgNDI4MTAsIDEwNDkyLCAwLCA5ODMzOTYsIDAsIDQzMTE5LCAwLCAKKyAgICAxMjA3NTMsIDEyNDAzLCAyNTAwLCAxOTUwMTMsIDAsIDQ4OTksIDEyNzI5LCAwLCAwLCA3NDExMywgMjM0MywgNDEwMywgCisgICAgMTk5NDYsIDc0MTEyLCA3Nzg1MSwgMTMxMTIsIDAsIDE5NTAxMiwgMTI4NTksIDk4MzU2OSwgMTIwMTQ4LCA2NjM2OSwgCisgICAgNTg2MSwgMTI3NzU4LCAxMTk5OSwgMTI0MDAsIDAsIDk4MzU3NCwgMTI2NDUsIDUxNDYsIDExMzIwLCA2ODQxMCwgNjc0OCwgCisgICAgNjUwNDAsIDAsIDY0MTg0LCAxMjk3NCwgNjQxODMsIDY3NjEzLCAxMjA2NDUsIDUxNDcsIDAsIDAsIDc0NTI0LCAwLCAxOTI4LCAKKyAgICAwLCA2NzY0OSwgNTk5MSwgMzQ0NSwgNjc2MDksIDQ5NzYsIDY0MTc2LCAwLCA2NzYxMCwgODI0MSwgMCwgNzc4NjgsIDQyMDYsIAorICAgIDAsIDAsIDAsIDEyODI5OCwgMCwgMTAxMzgsIDAsIDAsIDg4OTcsIDAsIDAsIDgzNTcsIDQxMjQsIDc3ODYyLCA2NTgzNiwgCisgICAgMTIwNjQxLCAxMjc5MjYsIDc3ODU5LCAwLCAwLCAxMTIzLCA5NjMsIDQxNTUzLCAxMDEyMCwgMTI0MDUsIDEyMDE1MCwgCisgICAgOTI2NjQsIDM5OCwgMTMyNzgsIDk3MjMsIDYzNjYsIDEyMDMxMSwgNzk0NSwgMCwgNDQwMiwgOTk3MCwgMTI0MDIsIDAsIAorICAgIDQyMzkyLCAxMzA1LCAxMjQwOCwgMCwgNDQwMDcsIDAsIDAsIDQxNDY0LCAxMjQxMSwgMTI5NjksIDEyMDgyNCwgNDE0NjUsIAorICAgIDk4MzMwOSwgODUyOCwgMTU3NSwgMCwgNjM5NTUsIDE2NSwgMzAyNCwgNDE0NjcsIDExOTE2MywgMCwgOTA5MywgMCwgOTE0NywgCisgICAgMCwgNjM5NTgsIDAsIDkxNDgsIDk2OTIsIDQwOTYsIDUzLCA3Mzc3NiwgNjc1MCwgMTk1MDE4LCAwLCA5NTk0LCAwLCAwLCAKKyAgICA0MzUyNywgMCwgNzI3LCAxOTQ3MDMsIDAsIDU4MDUsIDAsIDY3MjYsIDAsIDQyMTc2LCAxMjM3MCwgMTE2NTUsIDExOTA5NSwgCisgICAgMTA1OTEsIDEyMzY0LCAwLCAxMjM3MiwgMTIwNjQyLCAxMjAzMDcsIDAsIDkyMzQzLCAwLCAxMjM2NiwgMTA5NjMsIDYwNjYsIAorICAgIDEzMjksIDAsIDMwNTIsIDkyMjAsIDAsIDY0NDc4LCAxOTQ3MDEsIDEwODAzLCA0MTMyLCAxMjAzMDYsIDY4NDc0LCA5MjQ3MywgCisgICAgMCwgMCwgNzQ4MzcsIDEyMDE1NSwgMTQ5OSwgMCwgODA1NSwgNDI3NDAsIDYzOTY1LCAwLCA2Mzk2MiwgNzQwNDIsIDg5MjQsIAorICAgIDQzMTIzLCA1OTg4LCAzNjYwLCA2Mzk2OSwgMTE3ODEsIDQyNzE4LCA4Nzg4LCAxMzU3LCA2NDg1MSwgNjU3NDMsIDAsIAorICAgIDg3NzQsIDAsIDEyNzA4NiwgOTk0MSwgMTIwMTcyLCAwLCAxOTMzLCA2OTY1NSwgOTU2NCwgMCwgOTI0MzUsIDczODY2LCAwLCAKKyAgICAwLCAyNDg3LCA2NzYxNCwgMzEyMSwgMTgwNCwgMzMxMSwgNjc2MTUsIDAsIDc4MzAyLCAxMjIyMCwgNjc2MTYsIDEyMDU5OCwgCisgICAgMTI3NDc1LCAwLCA2ODIwMCwgNjY3NSwgMTI4MTQ0LCAwLCA2NzU5MiwgMTIwNjg1LCAwLCA2NDc3MSwgMTE5OCwgOTEzMiwgCisgICAgMCwgNjQ2MTksIDUxMCwgNjQ2NjMsIDAsIDAsIDQ1NjEsIDIxMDEsIDEzOTgsIDAsIDkyNTU0LCA3NDAzNCwgNDE1NjksIAorICAgIDkyNjg0LCAxMTQwNiwgODE2NywgMTIxMjcsIDAsIDg0MCwgMCwgMCwgMCwgNjk2NywgMCwgMCwgOTc5NiwgMCwgMzMzLCAwLCAKKyAgICAwLCA4MTQ0LCAyMTE3LCAwLCA5ODMzMzksIDEyNDA2LCAwLCAxOTkzMSwgMTE5MDg5LCA2Njc4LCA3NzY5LCAwLCAxMjYyMSwgCisgICAgMCwgMTI3MzY2LCAxMDIyNywgNDc2NCwgNDMxMDEsIDk5ODEsIDAsIDQwOTg2LCA0MTI3LCA2NjQ4NywgMCwgNDIyMDIsIAorICAgIDEyNzU0LCAxOTUwMjIsIDAsIDAsIDAsIDY3NTk0LCAyMDQ4LCAxMjk0NCwgNDA1MCwgNjc1OTUsIDkxNzk2NywgNDMxMDIsIAorICAgIDEwNTgxLCAxMjk4NSwgNDUzMywgMTk1MDIxLCA3NDAwMywgNjQ5MCwgMCwgMTIwMzgsIDAsIDAsIDEyMDcwNCwgNjU0NjEsIAorICAgIDk3OTgsIDY5NzA0LCAwLCAxOTQ4LCAxMTkwMDcsIDAsIDk1MiwgMTI4MjM1LCAwLCAwLCAxMjA4MDIsIDY0NDksIDk0OTQsIAorICAgIDEyMDMxMywgMCwgNDMwOTgsIDQ4NDMsIDgxNDIsIDY0MTYwLCA0MDk4LCA2NDE3MCwgMCwgMCwgMzQzNiwgMTE5OTczLCAwLCAKKyAgICAxMjgxNywgNjc1OTcsIDY2NzYsIDM5MzAsIDY2NzA4LCAwLCAwLCA2NzU5OCwgMCwgMCwgMCwgNjU1OTEsIDQxNTgxLCAKKyAgICA2NTkxNiwgMTQ1MywgMCwgMCwgMCwgODUwMCwgNDIyMjIsIDEyMDE0MiwgNzM3NDMsIDEyMDQwMCwgNDMxNywgMTE1NDMsIAorICAgIDY3Njc2LCA2NDY3NiwgMCwgMCwgNjc2MDYsIDExOTA4MywgMCwgNDIyMTcsIDEzMTAyLCAwLCA2NjAwMywgNjY3MiwgMCwgMCwgCisgICAgMCwgOTgzNDgyLCA2Mzg0MSwgOTYxMywgOTAwMSwgNDUyNiwgMTEyNzQsIDY3NjAxLCA2NDUyMCwgNjQyMTAsIDY2NjQsIAorICAgIDc4NzA0LCA0MjA1NiwgMTAyMjgsIDY0OTU3LCAxMTI4MSwgMCwgNjQyMTMsIDE0NjksIDY2NjQwLCA2NTM4MSwgNDIxOTcsIAorICAgIDQ5ODgsIDQyMzcyLCAwLCA5NTk4LCA5MDQsIDM1MiwgNDIyMjUsIDE0NTEsIDgwNjEsIDg0NTMsIDQxMzQsIDAsIDc0ODQ3LCAKKyAgICA2NjU3NiwgMTI3OTE2LCAwLCAxMDUyMCwgODU3NSwgOTk2MCwgMTIwMSwgMTI3Mjg5LCAxMjg0NiwgMTI3MjkxLCAxMjcyOTIsIAorICAgIDExOTE5LCA2NDk2MiwgMTI3Mjg3LCA0MzczOSwgMTI3MjgxLCA4NTExLCA5NDYwLCA4MjMsIDExNTg3LCAxMjMwNSwgMCwgCisgICAgNjQ2OTUsIDEyNzMwNSwgMTIzODcsIDEyNTMsIDEzMTgzLCA2NTc2NiwgNTAwLCA0Mjc4MywgNjU3NjUsIDY0MjA4LCAKKyAgICA2NDM2OSwgNjU3NjAsIDY1NzYxLCAxMTk1ODUsIDExNjA2LCA2NDc4NCwgMTE3MDIsIDY2NDk4LCA5ODIxLCA2NDMwNCwgMCwgCisgICAgNTE1MiwgMTEwNDgsIDc1MzMsIDY4MzY2LCA2NDQxMCwgOTIzMDUsIDAsIDQzMjMsIDEyMDA2MiwgOTI2NjksIDAsIAorICAgIDEyNzA1MiwgNDI1ODcsIDQyMjE0LCA0MTM5NCwgMCwgNDc2MywgNDExMiwgMTE4OTM1LCAwLCA1MjYwLCA0MzE0MywgMCwgCisgICAgMzI2LCAxMjAxMzEsIDY4NDIzLCAwLCAxMDc3MSwgMjg3NiwgNzQwNzQsIDkyNTMwLCAxOTQ5MjQsIDQxMzk4LCA3MzgyLCAKKyAgICA5ODAyLCAxMjcwNzcsIDEyNzA3NiwgNDUzLCA0MTM5NiwgMTIwNTI0LCA0MjcyMCwgMTIxNDAsIDk1NzIsIDAsIDcwMDMsIAorICAgIDE5NDg4MywgNDIzMzQsIDc3MDQsIDAsIDE5NDg4NSwgNDMxNDQsIDQxMjMsIDg0OTQsIDQzMTQ2LCA5OTc3LCAwLCAwLCAKKyAgICA2NTc1OSwgMTA3NjUsIDY0MDYxLCA0NDY1LCA5ODA4LCA2NDA1NiwgNjU1ODIsIDQxMjYsIDAsIDk1MjEsIDk1ODksIAorICAgIDY0NzU1LCAwLCA2NDAyMCwgMCwgMTA0NjQsIDAsIDAsIDE5NDg2OSwgNjQ1MTQsIDExNTI4LCA2NDAyNCwgMTI4MDcyLCAKKyAgICA2NzksIDY0MDEzLCAwLCA1ODUwLCA3NTgsIDc1MzYsIDAsIDkyMjM0LCA0MTQ0MSwgMTA2OTMsIDY0MDA2LCA5ODMzMTEsIAorICAgIDY0MDA1LCA0MDU4LCAxMTkwMTksIDAsIDY0NjYwLCAwLCAxMTkwNTAsIDAsIDk4MzQzNCwgMTEzOSwgNDMyOTgsIDY0MDI3LCAKICAgICA2NDAyOSwgODk3MCwgMCwgOTkzNCwgMCwgMTA3NzQsIDEyODAyMCwgNDIyMDEsIDEyNDIxLCAxMjgyMTYsIDAsIDE4NTIsIAogICAgIDMwNTcsIDEyODExMywgNzM3NDQsIDY0MDM0LCA2NDAzOSwgMCwgMCwgMCwgMCwgOTIzMjIsIDc2NDUsIDEyODU0LCA3NDMzOCwgCiAgICAgMzQ5NiwgMCwgMCwgMCwgOTEwMiwgNjI3LCAxMjc3OTUsIDYxNTgsIDgzMjcsIDc0NTUzLCA2NjYzMiwgMTI0MTksIDEzMzA5LCAKQEAgLTE2NTI5LDE0MyArMTY3NDksMTQ1IEBACiAgICAgNzQ3NzksIDAsIDE4NSwgNjUwODUsIDc0NTMzLCA2NDc1NCwgMTk0ODQ4LCA3NTM1LCA4MDg1LCA0MjUyNSwgMTIwMzg3LCAKICAgICA5NzQ5LCA0MTcwMSwgNjEzMSwgMTk0OSwgNDExNywgNzg0NywgMTIwNDg5LCAxOTQ3MTEsIDY0NDgzLCA2NTY5MywgMCwgMCwgCiAgICAgMCwgNjk2OTUsIDQyMjQwLCAwLCAwLCA0Mjg2NCwgMCwgNjQ2NjcsIDQxODY4LCAxMTg0LCAwLCA4MTUsIDExNDg0LCAKLSAgICAxMjc1MzUsIDY3ODQwLCAwLCAwLCAxMjg3OTMsIDAsIDEwOTg2LCA2NDY4MywgMCwgMCwgMTk0NzA5LCAwLCAwLCA5ODc5LCAKLSAgICAwLCAwLCA0MTU4LCAxMjgwNTAsIDY4MTY2LCAwLCAwLCAwLCAwLCA2OTY0NSwgMzMyLCAxMTg4MDgsIDAsIDUxNDIsIDI0MDcsIAotICAgIDY5NjQzLCA0MjE5OSwgMCwgOTI0MDQsIDc0MzczLCAwLCA1NTIxNywgMCwgNjM4NzAsIDQzMTYzLCAwLCAwLCA5MjM5MCwgCi0gICAgNDI4NjcsIDE4MzQsIDAsIDkyNDYxLCA2OTgxNywgMTA5NDAsIDY1MjQ5LCAxMTkwNDAsIDg2NjIsIDAsIDAsIDI2NTIsIAotICAgIDEyMDUyNywgNzE2NCwgMTA3ODQsIDE5NTA5MywgNjc2NzQsIDAsIDkyMjMzLCA5MjQ4MiwgMTk0NzQ5LCA3NDU2MiwgCisgICAgMTI3NTM1LCA2Nzg0MCwgOTgzMzg2LCAwLCAxMjg3OTMsIDAsIDEwOTg2LCA2NDY4MywgOTgzNTIwLCAwLCAxOTQ3MDksIDAsIAorICAgIDAsIDk4NzksIDAsIDAsIDQxNTgsIDEyODA1MCwgNjgxNjYsIDAsIDAsIDAsIDAsIDY5NjQ1LCAzMzIsIDExODgwOCwgMCwgCisgICAgNTE0MiwgMjQwNywgNjk2NDMsIDQyMTk5LCAwLCA5MjQwNCwgNzQzNzMsIDAsIDU1MjE3LCAwLCA2Mzg3MCwgNDMxNjMsIDAsIAorICAgIDAsIDkyMzkwLCA0Mjg2NywgMTgzNCwgMCwgOTI0NjEsIDY5ODE3LCAxMDk0MCwgNjUyNDksIDExOTA0MCwgODY2MiwgMCwgMCwgCisgICAgMjY1MiwgMTIwNTI3LCA3MTY0LCAxMDc4NCwgMTk1MDkzLCA2NzY3NCwgMCwgOTIyMzMsIDkyNDgyLCAxOTQ3NDksIDc0NTYyLCAKICAgICA5MTc1MDUsIDE4MjgsIDc0NDc0LCAxMjAzMjcsIDc4NjIwLCA4NTMxLCAxMjQ5OSwgNjI4MCwgMTIzMjQsIDExODg1NCwgCiAgICAgNjUyMzgsIDY4Mzc0LCA0ODMyLCA2NTU3MywgMCwgNjI3OSwgMTI1MDgsIDEyOTA0LCAxMjUwMiwgOTE2MSwgMCwgMTYyMCwgCiAgICAgNjQ0MzYsIDM2MDEsIDE5NTA5NCwgMTI4MDczLCAwLCA2MDksIDExNTU1LCAwLCAxMjQ5NiwgMTI3ODM5LCA3NDE4MSwgCiAgICAgNDM0MywgMTI1MDUsIDAsIDEyNzg2MywgMCwgMTEzNzcsIDIzOSwgMCwgNjM3LCAwLCAwLCA0MjY3MSwgMCwgMCwgMCwgCi0gICAgNDM1NjUsIDEyNzA4MiwgMCwgMTI2OTYsIDEyODI1NiwgMCwgMTk0Nzk2LCAxMjkyOSwgMCwgNzEyLCAwLCA0MTk3LCAwLCAKLSAgICA0MjgxOCwgMTI4Njg4LCAwLCAxMjA0OTAsIDAsIDExOTEzNywgMTUwNiwgNDM1NjIsIDAsIDAsIDAsIDEyNjUxLCAwLCAKLSAgICA2NDYyOCwgNzQ1MTcsIDEyMDU4LCA3NDA4NCwgOTE3ODM4LCA3NDk0LCAwLCA0OTI0LCA2NTU5MiwgMTE4ODQ0LCAwLCAKKyAgICA0MzU2NSwgMTI3MDgyLCA5ODM2NTYsIDEyNjk2LCAxMjgyNTYsIDAsIDE5NDc5NiwgMTI5MjksIDAsIDcxMiwgMCwgNDE5NywgCisgICAgOTgzMDQ1LCA0MjgxOCwgMTI4Njg4LCAwLCAxMjA0OTAsIDAsIDExOTEzNywgMTUwNiwgNDM1NjIsIDAsIDAsIDAsIDEyNjUxLCAKKyAgICAwLCA2NDYyOCwgNzQ1MTcsIDEyMDU4LCA3NDA4NCwgOTE3ODM4LCA3NDk0LCAwLCA0OTI0LCA2NTU5MiwgMTE4ODQ0LCAwLCAKICAgICAxMjcwODgsIDM1NSwgOTcxOSwgMTI3MDg3LCAxMzA2NiwgNjQ3OTYsIDAsIDAsIDEyMDMzLCA0MjE3OCwgMCwgNjk3NjAsIAogICAgIDQyNTcxLCA5MjYzNSwgMCwgMCwgMCwgMCwgMCwgMTI3MTc2LCAzMTc4LCAwLCAwLCA5MjcwNCwgMCwgOTA4MCwgMTI3MDAwLCAKICAgICAxMjAzNTIsIDAsIDY4MjA5LCAwLCAxMTA4MiwgMCwgNTY5OSwgMTk1MTAwLCA2NjAwMCwgOTQ4OCwgNjUxNjYsIDExOTExMiwgCiAgICAgMCwgMCwgMCwgMCwgMTI4MjA4LCAwLCA1MjY1LCA2OTIzNSwgMCwgMTE0ODcsIDY3ODU4LCAxMjQ2NCwgMCwgNDMwNDUsIDAsIAogICAgIDAsIDQzMzQ1LCAwLCAxMDc3MCwgMTE4OTk0LCA2ODA3LCA0NjUsIDk4MjksIDAsIDc0MzQ4LCAwLCA0MzM0NiwgODExNiwgCi0gICAgNzk1LCAwLCAwLCAxMjQ2MiwgMTA5MzAsIDEwODMxLCAwLCAxMTg5NTIsIDY0MzYyLCA3NDMzNCwgMCwgMTIwODExLCAwLCAKLSAgICAxMjQ2OCwgODYwNywgMTAwOCwgMCwgMTAwOTIsIDE5NTA3OCwgOTE3ODQyLCA2Nzg1NSwgNTUyNTcsIDczNzcxLCAxNzY2LCAKLSAgICAxMTI4MiwgMTE5OTYsIDE4MjAsIDQ1NDcsIDAsIDAsIDAsIDAsIDEzMjIzLCAxMjg2NjUsIDY0NTk1LCAxMjcyOTQsIDAsIAotICAgIDkyMzExLCA0MzQ1LCAxMjYxNiwgMCwgMCwgMCwgNzQ0NjcsIDAsIDAsIDAsIDUzODIsIDAsIDAsIDAsIDExOTA2MCwgCisgICAgNzk1LCAwLCAwLCAxMjQ2MiwgMTA5MzAsIDEwODMxLCAwLCAxMTg5NTIsIDY0MzYyLCA3NDMzNCwgOTgzMzQ2LCAxMjA4MTEsIAorICAgIDAsIDEyNDY4LCA4NjA3LCAxMDA4LCAwLCAxMDA5MiwgMTk1MDc4LCA5MTc4NDIsIDY3ODU1LCA1NTI1NywgNzM3NzEsIAorICAgIDE3NjYsIDExMjgyLCAxMTk5NiwgMTgyMCwgNDU0NywgMCwgMCwgMCwgMCwgMTMyMjMsIDEyODY2NSwgNjQ1OTUsIDEyNzI5NCwgCisgICAgMCwgOTIzMTEsIDQzNDUsIDEyNjE2LCAwLCAwLCAwLCA3NDQ2NywgMCwgMCwgMCwgNTM4MiwgMCwgMCwgMCwgMTE5MDYwLCAKICAgICA2NDk1MywgNTQwNiwgMTk5MjAsIDkyMjE2LCA2NjUxMCwgMzU5MCwgMCwgMTEzMCwgMCwgMCwgNDIwMTYsIDExODIzLCAKICAgICA0MzAyMywgMCwgMTE4ODk2LCA3NzQyLCAwLCAxMzI4MCwgMCwgOTMyNiwgNzM4MjYsIDUzMTAsIDc0ODEyLCA3ODU4NCwgCi0gICAgOTIyMjksIDg5NTksIDQzNTg5LCA2NzQ3LCA2NjcyMywgMCwgODU2OCwgMCwgMTIwNDk2LCA3MzgxNiwgMTIwODAzLCAwLCAKLSAgICA0MjY3MCwgMCwgMTE2MjEsIDEyNDYwLCAwLCAxMjA2MzEsIDAsIDQzMDYzLCA3NDUxOSwgMTI3MTgyLCAwLCAwLCAwLCAKLSAgICA2OTc4MywgMTE2ODksIDU0MTAsIDU3ODMsIDEwNDY4LCA4NDAzLCA1NDAwLCAxMTU5NCwgMTI4MjQ3LCAwLCAxMTg5OTAsIAorICAgIDkyMjI5LCA4OTU5LCA0MzU4OSwgNjc0NywgNjY3MjMsIDAsIDg1NjgsIDAsIDEyMDQ5NiwgNzM4MTYsIDEyMDgwMywgCisgICAgOTgzNTgzLCA0MjY3MCwgMCwgMTE2MjEsIDEyNDYwLCAwLCAxMjA2MzEsIDAsIDQzMDYzLCA3NDUxOSwgMTI3MTgyLCAwLCAwLCAKKyAgICAwLCA2OTc4MywgMTE2ODksIDU0MTAsIDU3ODMsIDEwNDY4LCA4NDAzLCA1NDAwLCAxMTU5NCwgMTI4MjQ3LCAwLCAxMTg5OTAsIAogICAgIDEwNDkxLCAwLCA2NDQxMiwgMCwgMCwgNTU4NywgNDI4NjUsIDY0NDA0LCA4MjY4LCA0OTIzLCA2NTA4NiwgODk4MSwgCiAgICAgMTIzODIsIDQyMTMzLCAxMjA3NTUsIDk3MDYsIDY5NzM4LCAwLCA2NjYxMCwgMTA0NjEsIDEyMTAzLCAwLCA4NjQyLCAwLCAKLSAgICA0Mjc2NiwgMCwgNjY1NjYsIDk5ODMsIDAsIDExOTEwNSwgMCwgMCwgMCwgNzM5OCwgNDE1MTUsIDAsIDExODAyLCA4MDQxLCAKLSAgICAxNDYxLCA5MTAsIDExOTEzMywgMCwgNjc0OSwgMzY1OCwgMCwgMTIwNTI1LCAwLCA3NjE3LCAxOTQ4NDEsIDEyODg4LCAwLCAKLSAgICA2NzY2OCwgMTMxNDMsIDAsIDkxOTMsIDExMDk3LCA1NzAzLCAwLCA0MTUxNywgNDE1MDQsIDQxNTE5LCAxMDAxNiwgNjQzMDUsIAotICAgIDAsIDY1ODY0LCA2MjMsIDc4MSwgNjcwLCAxMDY2MCwgNTc2OSwgNjEzLCA3NTQzLCAxMjAyNzksIDQ3NywgNDEwODMsIAotICAgIDkyNTIxLCAwLCA1OTIsIDE1NzgsIDEyNDU5LCA0MzQ0OSwgMCwgMCwgODIyNSwgMCwgNjU0LCAxMTM0NSwgNjUzLCA2NTIsIAotICAgIDAsIDY0NywgMCwgNjMzLCAxMjA3NDQsIDAsIDAsIDEyNDgwLCA0MzI0MywgMCwgMzksIDEyNDg3LCAwLCAxMjA1MjksIAotICAgIDc0MTk5LCAxMjQ4MiwgMCwgMTI0ODksIDAsIDMxOTUsIDU1NTAsIDAsIDc4OTcsIDAsIDEyMDMsIDc0Mzk2LCAxODEzLCAKLSAgICA2NDU0NCwgNDEzMTEsIDEyMDkwLCAwLCAyODc3LCAwLCAwLCAxNjc1LCAwLCAwLCAwLCAwLCAxMDA3MCwgMTA1OTUsIDAsIAotICAgIDExOTA3NywgMCwgMCwgMCwgMCwgMCwgNDMyNDQsIDAsIDAsIDAsIDExOTU2MSwgMCwgMCwgMTk0OTIxLCAxMjgxNjAsIAotICAgIDk5MzksIDAsIDAsIDc3ODYwLCAwLCAwLCAyNzAsIDAsIDEwNzE0LCAwLCAwLCAwLCAwLCAwLCA2NTM3MiwgMCwgNzQwMzgsIAotICAgIDExOTU1OCwgNjI3MywgNjY2NzksIDM2NCwgOTU5NSwgMTk0OTA4LCAwLCAwLCA3MDcsIDAsIDAsIDkyODIsIDY2NDg5LCAKLSAgICAyMjQsIDAsIDY4NjcwLCA5MzMyLCA0OTY2LCA2ODY3NywgMCwgNjg2NDQsIDAsIDM4NDEsIDY4NjM0LCAwLCAxMDczMiwgCi0gICAgNjg2NDAsIDg1MCwgNDk3MiwgMCwgNjQ2OTksIDI5MDksIDY4NjE5LCA0NDAwOCwgNjg2MjcsIDAsIDExNTQ0LCAxMDIwMywgCi0gICAgOTYwOCwgMCwgMCwgMTE5NjIsIDE5NDY5NCwgMTI1MDcsIDExOTYsIDEyODY4NywgMTI4MzExLCA3NzcsIDEyMDE4NywgCi0gICAgNDM3NSwgNjUyNzEsIDY3Njc4LCAwLCAxMjE5OCwgMCwgNjQ4MjQsIDExOTM0MywgMCwgOTQ1NCwgNjM3NzgsIDg2NTgsIAotICAgIDQyNTI4LCA3ODAwMCwgMjcwNSwgOTE3OTc1LCA0MTUyMCwgMCwgMCwgMTE5ODYsIDc3NjUsIDQyNTAyLCA4MjgwLCAwLCAKLSAgICAyNzAxLCAwLCAwLCA1NzY3LCAwLCAwLCA5ODA5LCA4MzUzLCA2Mzc0NywgNjY3MDEsIDYzNzcyLCAwLCA2Mzc0NSwgMTc0OCwgCi0gICAgNjM3NzAsIDAsIDAsIDAsIDY1NTQyLCA2Mzc2NiwgNTUyNDQsIDMwNjEsIDAsIDYzNzY0LCA2Mzc4NywgOTA2NywgNjA5NiwgCi0gICAgMCwgNzY5NCwgMCwgNzI1NywgNjM3NjgsIDM0ODUsIDEyOTg3LCAwLCAxMjc1MjIsIDEyMDYyOCwgNjM4MDcsIDE1OTEsIDAsIAotICAgIDYzODYsIDYzNzgzLCAwLCAwLCAxMjcxNzMsIDAsIDAsIDAsIDc0NTc1LCAwLCA2NTcxOSwgMTMwODMsIDY0NTc0LCA2NTAxMiwgCi0gICAgMCwgMTY0MCwgMTI0OTUsIDY2NjkxLCA3NjI0LCAzMTM4LCAxMDk5NiwgOTIyNDcsIDE5MjIsIDAsIDEyNDk4LCAxMDk4NywgCi0gICAgMCwgMCwgMzg5NCwgNjU1NDMsIDAsIDE5NDg0MiwgMCwgNDkzLCAwLCA0MzE5NywgMTcxNywgNDIyOCwgNDc5LCAxMDMwMywgCi0gICAgNzQwMjAsIDAsIDkxNzkzNSwgMTAzMzUsIDM1MjAsIDkxNzkzMiwgMTI0OTAsIDY0MzE1LCAwLCAxMjcwMzksIDEyNDkzLCAKLSAgICA2MjMzLCA0MjY4MSwgMTAwMiwgMTI0OTEsIDAsIDY0OTExLCA5MjYxNSwgMjA5NiwgNjUxMjAsIDAsIDAsIDAsIDExNjExLCAKLSAgICAxMTYzMiwgMTI3MDQxLCA2NjIxMywgNjM4NjQsIDY2MjIxLCA2NjIyNiwgNjYyMjksIDEzMjE4LCA2NjIzMSwgNjYyMTYsIAotICAgIDg1MDcsIDY2MjM2LCA2NjIxMSwgNjYyMTgsIDkyNjcyLCA2NjI0MCwgNzgwNDEsIDY2MjMzLCA4OTI4LCAwLCA3OTA5LCAKLSAgICA2NjIzNCwgMTE2MDUsIDYzNzU5LCAwLCA2NjIwOCwgNzM5OTksIDYzNzk5LCA2MzgwMywgMjQ0LCAxMTU0MiwgMTI4OTgsIAotICAgIDEyNDk0LCA3Mzc2MSwgMTI0OTIsIDEyNjY5LCAwLCAwLCA3NDE1MywgMCwgMTI4Mjc4LCAxMjA2ODAsIDQ4ODIsIDEzMDQwLCAKLSAgICAwLCA4NjEyLCA0ODg1LCA3NDA1MywgMCwgMTMwNDIsIDQ4ODAsIDY0NjYyLCAyNDI5LCAxMzYwLCAyNDgsIDAsIDYzNzk3LCAKLSAgICA5MjM5NCwgNDIzNTgsIDAsIDcyOTIsIDAsIDYzNzU2LCA0Mjc4NiwgNjY2OTMsIDAsIDE4NzAsIDc4MDQwLCA0NzAsIAotICAgIDc4MDM4LCA3ODAzNSwgNzgwMzYsIDAsIDc4MDM0LCA0NTc5LCAxMjgwOTAsIDAsIDEyNTExLCA3NDQ1MywgMTI1MTQsIDAsIAotICAgIDc0NTc5LCA3MjM5LCA3MDAxLCA4NjIzLCAwLCAxMjgwNTIsIDEyODA0OCwgNzM3OCwgMTI1MTIsIDExNjE1LCA2MTA0LCAwLCAKLSAgICAwLCA2NTksIDYwOTgsIDAsIDEyMjM0LCAxMjczMDcsIDEyNzA2NywgODMxMSwgMTI1MTAsIDQxODAzLCAxMzAzOSwgCi0gICAgMTI3MDcyLCAxMjUxMywgMTAyMDIsIDEyNDcxLCAwLCA4NzQ3LCAwLCAwLCAwLCAyMzIzLCAwLCAyMzE5LCA3NzkxNywgCi0gICAgMTI0NzcsIDc3OTE2LCAyMzExLCAwLCA0NDE1LCAyMzcsIDYyODEsIDEyNzI4MCwgMCwgMCwgMjMwOSwgMTMxMiwgODE3MywgCi0gICAgMTI4ODcxLCAxMjQ2OSwgMCwgNzg1MDUsIDY0MzM1LCAxMDYwOSwgMCwgMTI4MTExLCA5Mzk3LCAxMTUyNCwgOTM5NSwgCi0gICAgOTM5NiwgOTM5MywgOTM5NCwgOTM5MSwgOTM5MiwgOTM4OSwgNjIwOSwgOTM4NywgOTM4OCwgNDkzMiwgOTM4NiwgOTM4MywgCi0gICAgOTM4NCwgNjc0MCwgMCwgNjU0NTEsIDgxODUsIDAsIDkxNzgzMiwgNDMwMjQsIDQzMzM2LCA2NzY1OSwgMjMxMywgMTI4MTY3LCAKLSAgICA3OTQ4LCA5MjM2LCAwLCAwLCAwLCAxMDU3MCwgNDM0NzMsIDYyODksIDEwNDg0LCAwLCAwLCAxMTk5OCwgMTIwODIsIAotICAgIDEwOTI0LCAzMTQ3LCAwLCAxMjA2ODQsIDEyNTI0LCAxMTkwODEsIDIzMTAsIDExODE4LCA5MzgxLCA5MzgyLCA5Mzc5LCAKLSAgICA5MzgwLCA5Mzc3LCA5Mzc4LCA5Mzc1LCA5Mzc2LCAxNjgzLCA5Mzc0LCAwLCA5MzcyLCAxMjQ0NCwgMCwgMCwgMTMwMTYsIAotICAgIDgyMTAsIDAsIDQyMDI5LCAxMTA3OSwgMTIzMzEsIDQzNDUxLCA0MjAzMiwgODc0NCwgNzI2LCAwLCAwLCA0MTU1LCAwLCAwLCAKLSAgICA0MjAzMCwgNTAwNywgMTI1MjIsIDQzMDg4LCAwLCA0OTUxLCAxMjc4MDUsIDEyNzI0MCwgMCwgOTkyMiwgNDMzMDksIDAsIAotICAgIDEyNTI1LCAwLCAxMjAxNiwgNjU3NzAsIDk1NDgsIDY3NjY1LCA0MDMsIDc4MjMwLCAxMjUwMywgMCwgMCwgMTEwMzAsIDAsIAotICAgIDkyNTY3LCA2NTY5MSwgNjM5OTgsIDE4MTksIDEwNDk2LCAwLCAwLCAxMTk5MjAsIDAsIDE5NDY2OCwgMCwgMTI1MDYsIDAsIAotICAgIDEyMjMxLCAwLCAxMjUwMCwgNDQwMjMsIDEyNTA5LCA2NDM5MywgNzg4MzAsIDMzODksIDEwNTg5LCA2NjA4LCA0MTA0NywgCi0gICAgMTIwMzIxLCA3ODM5NSwgNzgzOTQsIDc0MDY5LCA3Nzk5NSwgNzgzOTEsIDM2MDgsIDgyODEsIDEyMDMyMCwgMTEwNywgMCwgCi0gICAgOTA3NiwgODg2MiwgNjk3NDMsIDQxMDUyLCAxMzA4NCwgNjQ3NjYsIDQzMjE3LCA3ODAzLCAxMzIyMiwgNzQxNjUsIDc0NzgyLCAKLSAgICAxMjg4MTcsIDg1NDYsIDExNTUzLCA2Mzk5NSwgMTMxNzcsIDkwNDMsIDYzMDMsIDAsIDQ5OCwgNjQ0NzEsIDEyMDMyNCwgCi0gICAgMTI4NTY3LCAxMjUyOSwgODA0MiwgMCwgMjM0NCwgMTI1MjgsIDgwMzEsIDI0MTQsIDAsIDY5NzE5LCAzMjMxLCAwLCA2NDIyLCAKLSAgICA2NjUxMiwgNjk2NTMsIDEyNTMwLCAyNTM3LCA3ODQwNSwgNDE0MjksIDEyNjU4LCAxMzAzNiwgNjU3NzIsIDAsIDc4NzM4LCAKLSAgICA0MTQzMywgNDcxOSwgNDY5LCAwLCA0MzYzLCAzMzEzLCA0MTQyOCwgNzg0MDcsIDIwMjMsIDE3NzIsIDc4MjI0LCA3ODIyNSwgCi0gICAgNjU3MDYsIDEwMDUxLCA2NDgxMiwgNzgyMjAsIDAsIDk5MjAsIDEyMjE1LCAwLCA0OTMxLCAxOTUxLCAxMjQ5NywgMTE5MzYzLCAKLSAgICA5NjA3LCAwLCA5NjYzLCAwLCAxMTk2MzQsIDY1MDMsIDQxMTEwLCAwLCAxNDkxLCAwLCAwLCAxMjczMDQsIDQxMDYxLCAwLCAKLSAgICAwLCAxMjcxODcsIDY1MDI2LCA0MTk5MywgNDE1MDksIDExMDQ1LCA2NTAyOCwgNzg2MDIsIDY2NDc2LCA0MTEwOCwgOTczOCwgCi0gICAgNDE5OTUsIDEwNzUsIDE5NTgsIDEyNTM1LCA0MTk5MiwgNDE1MDYsIDAsIDQxNjg3LCAwLCAxMjA3MTcsIDEyNzc3NiwgCi0gICAgOTk0MCwgMTI3Mjk5LCA3NjkyLCAwLCA4MDA4LCA0MTEzMSwgMzMwLCA4NTY2LCA2NTA4MywgNDExMzMsIDk4MTYsIAotICAgIDEyODA3NCwgMTI1MzIsIDc4NTUwLCA3ODU0NiwgMzUwOCwgMTI3MDU4LCA0MzIzNSwgMCwgMTI3Mjk4LCA2NDEzOSwgCisgICAgNDI3NjYsIDk4MzYwMSwgNjY1NjYsIDk5ODMsIDAsIDExOTEwNSwgMCwgMCwgMCwgNzM5OCwgNDE1MTUsIDAsIDExODAyLCAKKyAgICA4MDQxLCAxNDYxLCA5MTAsIDExOTEzMywgMCwgNjc0OSwgMzY1OCwgMCwgMTIwNTI1LCAwLCA3NjE3LCAxOTQ4NDEsIAorICAgIDEyODg4LCAwLCA2NzY2OCwgMTMxNDMsIDAsIDkxOTMsIDExMDk3LCA1NzAzLCAwLCA0MTUxNywgNDE1MDQsIDQxNTE5LCAKKyAgICAxMDAxNiwgNjQzMDUsIDAsIDY1ODY0LCA2MjMsIDc4MSwgNjcwLCAxMDY2MCwgNTc2OSwgNjEzLCA3NTQzLCAxMjAyNzksIAorICAgIDQ3NywgNDEwODMsIDkyNTIxLCAwLCA1OTIsIDE1NzgsIDEyNDU5LCA0MzQ0OSwgMCwgMCwgODIyNSwgMCwgNjU0LCAxMTM0NSwgCisgICAgNjUzLCA2NTIsIDAsIDY0NywgMCwgNjMzLCAxMjA3NDQsIDAsIDAsIDEyNDgwLCA0MzI0MywgMCwgMzksIDEyNDg3LCAwLCAKKyAgICAxMjA1MjksIDc0MTk5LCAxMjQ4MiwgMCwgMTI0ODksIDAsIDMxOTUsIDU1NTAsIDk4MzI5OCwgNzg5NywgMCwgMTIwMywgCisgICAgNzQzOTYsIDE4MTMsIDY0NTQ0LCA0MTMxMSwgMTIwOTAsIDAsIDI4NzcsIDAsIDAsIDE2NzUsIDAsIDAsIDAsIDAsIDEwMDcwLCAKKyAgICAxMDU5NSwgMCwgMTE5MDc3LCAwLCA5ODMzNTUsIDAsIDAsIDAsIDQzMjQ0LCAwLCAwLCA5ODM2NTEsIDExOTU2MSwgMCwgMCwgCisgICAgMTk0OTIxLCAxMjgxNjAsIDk5MzksIDAsIDAsIDc3ODYwLCAwLCAwLCAyNzAsIDAsIDEwNzE0LCAwLCAwLCAwLCAwLCAwLCAKKyAgICA2NTM3MiwgMCwgNzQwMzgsIDExOTU1OCwgNjI3MywgNjY2NzksIDM2NCwgOTU5NSwgMTk0OTA4LCAwLCAwLCA3MDcsIDAsIDAsIAorICAgIDkyODIsIDY2NDg5LCAyMjQsIDAsIDY4NjcwLCA5MzMyLCA0OTY2LCA2ODY3NywgMCwgNjg2NDQsIDAsIDM4NDEsIDY4NjM0LCAKKyAgICAwLCAxMDczMiwgNjg2NDAsIDg1MCwgNDk3MiwgMCwgNjQ2OTksIDI5MDksIDY4NjE5LCA0NDAwOCwgNjg2MjcsIDk4MzQ1MywgCisgICAgMTE1NDQsIDEwMjAzLCA5NjA4LCAwLCAwLCAxMTk2MiwgMTk0Njk0LCAxMjUwNywgMTE5NiwgMTI4Njg3LCAxMjgzMTEsIAorICAgIDc3NywgMTIwMTg3LCA0Mzc1LCA2NTI3MSwgNjc2NzgsIDAsIDEyMTk4LCAwLCA2NDgyNCwgMTE5MzQzLCAwLCA5NDU0LCAKKyAgICA2Mzc3OCwgODY1OCwgNDI1MjgsIDc4MDAwLCAyNzA1LCA5MTc5NzUsIDQxNTIwLCAwLCAwLCAxMTk4NiwgNzc2NSwgNDI1MDIsIAorICAgIDgyODAsIDAsIDI3MDEsIDAsIDAsIDU3NjcsIDAsIDAsIDk4MDksIDgzNTMsIDYzNzQ3LCA2NjcwMSwgNjM3NzIsIDk4MzU0OSwgCisgICAgNjM3NDUsIDE3NDgsIDYzNzcwLCAwLCAwLCAwLCA2NTU0MiwgNjM3NjYsIDU1MjQ0LCAzMDYxLCAwLCA2Mzc2NCwgNjM3ODcsIAorICAgIDkwNjcsIDYwOTYsIDAsIDc2OTQsIDAsIDcyNTcsIDYzNzY4LCAzNDg1LCAxMjk4NywgMCwgMTI3NTIyLCAxMjA2MjgsIAorICAgIDYzODA3LCAxNTkxLCAwLCA2Mzg2LCA2Mzc4MywgMCwgMCwgMTI3MTczLCAwLCAwLCAwLCA3NDU3NSwgMCwgNjU3MTksIAorICAgIDEzMDgzLCA2NDU3NCwgNjUwMTIsIDAsIDE2NDAsIDEyNDk1LCA2NjY5MSwgNzYyNCwgMzEzOCwgMTA5OTYsIDkyMjQ3LCAKKyAgICAxOTIyLCAwLCAxMjQ5OCwgMTA5ODcsIDAsIDAsIDM4OTQsIDY1NTQzLCAwLCAxOTQ4NDIsIDk4MzMzMiwgNDkzLCAwLCAKKyAgICA0MzE5NywgMTcxNywgNDIyOCwgNDc5LCAxMDMwMywgNzQwMjAsIDAsIDkxNzkzNSwgMTAzMzUsIDM1MjAsIDkxNzkzMiwgCisgICAgMTI0OTAsIDY0MzE1LCAwLCAxMjcwMzksIDEyNDkzLCA2MjMzLCA0MjY4MSwgMTAwMiwgMTI0OTEsIDAsIDY0OTExLCAKKyAgICA5MjYxNSwgMjA5NiwgNjUxMjAsIDAsIDAsIDAsIDExNjExLCAxMTYzMiwgMTI3MDQxLCA2NjIxMywgNjM4NjQsIDY2MjIxLCAKKyAgICA2NjIyNiwgNjYyMjksIDEzMjE4LCA2NjIzMSwgNjYyMTYsIDg1MDcsIDY2MjM2LCA2NjIxMSwgNjYyMTgsIDkyNjcyLCAKKyAgICA2NjI0MCwgNzgwNDEsIDY2MjMzLCA4OTI4LCA5ODMyOTYsIDc5MDksIDY2MjM0LCAxMTYwNSwgNjM3NTksIDk4MzM4OSwgCisgICAgNjYyMDgsIDczOTk5LCA2Mzc5OSwgNjM4MDMsIDI0NCwgMTE1NDIsIDEyODk4LCAxMjQ5NCwgNzM3NjEsIDEyNDkyLCAKKyAgICAxMjY2OSwgMCwgMCwgNzQxNTMsIDAsIDEyODI3OCwgMTIwNjgwLCA0ODgyLCAxMzA0MCwgMCwgODYxMiwgNDg4NSwgNzQwNTMsIAorICAgIDAsIDEzMDQyLCA0ODgwLCA2NDY2MiwgMjQyOSwgMTM2MCwgMjQ4LCAwLCA2Mzc5NywgOTIzOTQsIDQyMzU4LCAwLCA3MjkyLCAKKyAgICAwLCA2Mzc1NiwgNDI3ODYsIDY2NjkzLCAwLCAxODcwLCA3ODA0MCwgNDcwLCA3ODAzOCwgNzgwMzUsIDc4MDM2LCA5ODMzMTMsIAorICAgIDc4MDM0LCA0NTc5LCAxMjgwOTAsIDAsIDEyNTExLCA3NDQ1MywgMTI1MTQsIDAsIDc0NTc5LCA3MjM5LCA3MDAxLCA4NjIzLCAKKyAgICAwLCAxMjgwNTIsIDEyODA0OCwgNzM3OCwgMTI1MTIsIDExNjE1LCA2MTA0LCAwLCAwLCA2NTksIDYwOTgsIDAsIDEyMjM0LCAKKyAgICAxMjczMDcsIDEyNzA2NywgODMxMSwgMTI1MTAsIDQxODAzLCAxMzAzOSwgMTI3MDcyLCAxMjUxMywgMTAyMDIsIDEyNDcxLCAKKyAgICAwLCA4NzQ3LCA5ODM2NTUsIDAsIDAsIDIzMjMsIDAsIDIzMTksIDc3OTE3LCAxMjQ3NywgNzc5MTYsIDIzMTEsIDAsIDQ0MTUsIAorICAgIDIzNywgNjI4MSwgMTI3MjgwLCAwLCAwLCAyMzA5LCAxMzEyLCA4MTczLCAxMjg4NzEsIDEyNDY5LCAwLCA3ODUwNSwgCisgICAgNjQzMzUsIDEwNjA5LCAwLCAxMjgxMTEsIDkzOTcsIDExNTI0LCA5Mzk1LCA5Mzk2LCA5MzkzLCA5Mzk0LCA5MzkxLCA5MzkyLCAKKyAgICA5Mzg5LCA2MjA5LCA5Mzg3LCA5Mzg4LCA0OTMyLCA5Mzg2LCA5MzgzLCA5Mzg0LCA2NzQwLCAwLCA2NTQ1MSwgODE4NSwgMCwgCisgICAgOTE3ODMyLCA0MzAyNCwgNDMzMzYsIDY3NjU5LCAyMzEzLCAxMjgxNjcsIDc5NDgsIDkyMzYsIDAsIDAsIDAsIDEwNTcwLCAKKyAgICA0MzQ3MywgNjI4OSwgMTA0ODQsIDAsIDAsIDExOTk4LCAxMjA4MiwgMTA5MjQsIDMxNDcsIDAsIDEyMDY4NCwgMTI1MjQsIAorICAgIDExOTA4MSwgMjMxMCwgMTE4MTgsIDkzODEsIDkzODIsIDkzNzksIDkzODAsIDkzNzcsIDkzNzgsIDkzNzUsIDkzNzYsIAorICAgIDE2ODMsIDkzNzQsIDk4MzUxMywgOTM3MiwgMTI0NDQsIDAsIDAsIDEzMDE2LCA4MjEwLCA5ODM2OTAsIDQyMDI5LCAxMTA3OSwgCisgICAgMTIzMzEsIDQzNDUxLCA0MjAzMiwgODc0NCwgNzI2LCAwLCA5ODM1NzIsIDQxNTUsIDAsIDAsIDQyMDMwLCA1MDA3LCAKKyAgICAxMjUyMiwgNDMwODgsIDAsIDQ5NTEsIDEyNzgwNSwgMTI3MjQwLCAwLCA5OTIyLCA0MzMwOSwgOTgzNTc2LCAxMjUyNSwgMCwgCisgICAgMTIwMTYsIDY1NzcwLCA5NTQ4LCA2NzY2NSwgNDAzLCA3ODIzMCwgMTI1MDMsIDAsIDAsIDExMDMwLCAwLCA5MjU2NywgCisgICAgNjU2OTEsIDYzOTk4LCAxODE5LCAxMDQ5NiwgMCwgMCwgMTE5OTIwLCAwLCAxOTQ2NjgsIDAsIDEyNTA2LCAwLCAxMjIzMSwgCisgICAgMCwgMTI1MDAsIDQ0MDIzLCAxMjUwOSwgNjQzOTMsIDc4ODMwLCAzMzg5LCAxMDU4OSwgNjYwOCwgNDEwNDcsIDEyMDMyMSwgCisgICAgNzgzOTUsIDc4Mzk0LCA3NDA2OSwgNzc5OTUsIDc4MzkxLCAzNjA4LCA4MjgxLCAxMjAzMjAsIDExMDcsIDAsIDkwNzYsIAorICAgIDg4NjIsIDY5NzQzLCA0MTA1MiwgMTMwODQsIDY0NzY2LCA0MzIxNywgNzgwMywgMTMyMjIsIDc0MTY1LCA3NDc4MiwgCisgICAgMTI4ODE3LCA4NTQ2LCAxMTU1MywgNjM5OTUsIDEzMTc3LCA5MDQzLCA2MzAzLCA5ODM2NzksIDQ5OCwgNjQ0NzEsIAorICAgIDEyMDMyNCwgMTI4NTY3LCAxMjUyOSwgODA0MiwgMCwgMjM0NCwgMTI1MjgsIDgwMzEsIDI0MTQsIDAsIDY5NzE5LCAzMjMxLCAKKyAgICAwLCA2NDIyLCA2NjUxMiwgNjk2NTMsIDEyNTMwLCAyNTM3LCA3ODQwNSwgNDE0MjksIDEyNjU4LCAxMzAzNiwgNjU3NzIsIDAsIAorICAgIDc4NzM4LCA0MTQzMywgNDcxOSwgNDY5LCAwLCA0MzYzLCAzMzEzLCA0MTQyOCwgNzg0MDcsIDIwMjMsIDE3NzIsIDc4MjI0LCAKKyAgICA3ODIyNSwgNjU3MDYsIDEwMDUxLCA2NDgxMiwgNzgyMjAsIDAsIDk5MjAsIDEyMjE1LCAwLCA0OTMxLCAxOTUxLCAxMjQ5NywgCisgICAgMTE5MzYzLCA5NjA3LCAwLCA5NjYzLCAwLCAxMTk2MzQsIDY1MDMsIDQxMTEwLCAwLCAxNDkxLCAwLCAwLCAxMjczMDQsIAorICAgIDQxMDYxLCAwLCAwLCAxMjcxODcsIDY1MDI2LCA0MTk5MywgNDE1MDksIDExMDQ1LCA2NTAyOCwgNzg2MDIsIDY2NDc2LCAKKyAgICA0MTEwOCwgOTczOCwgNDE5OTUsIDEwNzUsIDE5NTgsIDEyNTM1LCA0MTk5MiwgNDE1MDYsIDAsIDQxNjg3LCAwLCAxMjA3MTcsIAorICAgIDEyNzc3NiwgOTk0MCwgMTI3Mjk5LCA3NjkyLCAwLCA4MDA4LCA0MTEzMSwgMzMwLCA4NTY2LCA2NTA4MywgNDExMzMsIAorICAgIDk4MTYsIDEyODA3NCwgMTI1MzIsIDc4NTUwLCA3ODU0NiwgMzUwOCwgMTI3MDU4LCA0MzIzNSwgMCwgMTI3Mjk4LCA2NDEzOSwgCiAgICAgNzgyMzEsIDY0MTEsIDEyOTEwLCA3ODU1NCwgNjY2NDQsIDEzMDI4LCA2NzM3LCAxMjUzNywgMCwgMCwgNjQxMzYsIDEyNTM2LCAKLSAgICAyMzUwLCAxMzAyOSwgNzgyMzMsIDAsIDAsIDEzMDMwLCA2NzAyLCA0NTI3LCAwLCAxMjUzOCwgMTI4ODEwLCAwLCA2NTU5OSwgCi0gICAgNjU3MTcsIDk5NjYsIDAsIDQ5NDgsIDEyNDg0LCA0MDMyLCAxMjgxNDksIDEyNjIzLCAwLCA2MjA3LCAwLCA2MTE3LCAKLSAgICA2NTkzMCwgODQxMiwgMCwgNzQzOCwgMTI5NiwgMjMyNSwgNDE1MTEsIDAsIDEwMTQ5LCA3NDExOCwgMCwgMTI3Mjg2LCAKLSAgICAxMjQ4MSwgMCwgMTI0ODgsIDAsIDAsIDQxNTU2LCA2NDQxNCwgMTE4ODAyLCAyMzU0LCAxMjg1NzEsIDczNzY2LCAwLCAKLSAgICA2Mjk1LCA5MDEsIDQxNTEwLCA3OTUzLCAwLCA2NTAzMiwgNDE1MTMsIDAsIDExOTI3LCA2NjU4NCwgNzg1NTksIDc4NTYwLCAKLSAgICA3ODU1NywgNzg1NTgsIDAsIDc4NTU2LCA4NDgsIDk4NjgsIDAsIDY0MjQsIDc4NTY4LCAxMTkzMzgsIDc4NTY1LCA3NDAzMSwgCi0gICAgNzg1NjMsIDc4NTY0LCAyMzUyLCA3ODU3MiwgODkzLCA2NDU3NiwgMTEyODksIDE0MDcsIDAsIDAsIDEzMDI2LCA2NzYyLCAKLSAgICA3ODU3OSwgNzg1ODAsIDEzMDIzLCA4OTAzLCA5Nzc3LCA2NjcxNSwgMTg3MSwgODA5OSwgMCwgMCwgMTM0MywgMCwgMCwgCi0gICAgOTMyNSwgNjgxOCwgNjI4MywgMTE3MzgsIDAsIDAsIDAsIDExNzQxLCAwLCAwLCA5MjE2LCA4MjYzLCAxMTI3OSwgMTk0NzUyLCAKLSAgICAwLCAxOTQ3NTQsIDEzMDIxLCA2NDQ5NCwgMzEzNiwgMTk0NzU4LCAxOTQ3NTcsIDE5NDc2MCwgMTMwMjIsIDQyNzM3LCAKLSAgICA5OTU2LCAwLCAwLCA3NDU1MiwgMTAwMTQsIDAsIDQxMjYwLCAxMTkzNDAsIDEzMDIwLCAxMDAyNCwgMTk0NzY0LCAxOTQ3NjcsIAotICAgIDc0MzQwLCA2OTY4MSwgMCwgNjQ5NDUsIDgwMjksIDAsIDAsIDAsIDMzMzUsIDAsIDAsIDk3NzYsIDEyMDUyNiwgMTk0NzQ4LCAKLSAgICA1MjE1LCA0MjY0NCwgMzMzMywgMTYzMiwgMTk0NzUxLCA2NDg0OSwgMzM0MiwgNzg1ODIsIDUzNjMsIDEyOTU3LCA3ODU4MSwgCi0gICAgNDE1NiwgMCwgMCwgNjQyMSwgNzg1OTEsIDE2MTEsIDc4NTg5LCAxMzAxOCwgNzQyNTcsIDc4NTg4LCA3NDU0MiwgMzMzNywgCi0gICAgNDUzNywgNjc4OTUsIDExNzM2LCAwLCA2ODYwOCwgNjQ4MiwgNDIxNCwgNzM3OTAsIDExOTQ1LCAwLCAxMzA0NiwgODgzOCwgCi0gICAgNDI1LCA0MDI1LCAxMDcwOSwgNzg1OTUsIDIxMDgsIDIzOTIsIDEzMDQ3LCAwLCAwLCA2ODE5LCAxMzA0OSwgNjQ5OSwgCi0gICAgOTIyNDMsIDEyNDI0LCA2ODYxNCwgNzM5NDQsIDEzMDUwLCA5OTI0LCAxOTQ3NDUsIDY1MDcsIDEyNzkxOSwgMCwgMTI4MDY5LCAKLSAgICAzMjc3LCA4OTI5LCA0OTQ3LCA0MTA1NSwgMCwgMTk0NzIyLCAxOTQ3MjEsIDE5NDcyNCwgMTMwNDUsIDY0NjI2LCA2NjAzNCwgCi0gICAgNzc1MSwgMTk0NzI3LCA4MzcxLCAxOTQ3MjksIDM5OTcsIDEyODA2LCA4NzY4LCAxMzA0NCwgMCwgMTI0MjAsIDQwMjQsIAotICAgIDE5NDczMCwgNDEwNTQsIDEwNzgsIDk3NTcsIDY5NzM2LCA0MTA1NywgMCwgMCwgMCwgMCwgMCwgOTIyMTAsIDkyNDExLCAwLCAKLSAgICA0MTQ5NiwgMCwgOTE2NSwgMTU3MiwgMTE5MTEsIDAsIDExODg0MiwgMjM0NiwgMTMyNzAsIDg5NTgsIDAsIDk2NDYsIDM3NzMsIAotICAgIDQzMTgzLCA2NDAxLCA1ODMxLCAwLCAwLCAxMzA0MywgODA1NiwgOTI0OTQsIDY1NjgxLCAyMDgsIDEyNzM4MiwgNDE1MTQsIAotICAgIDAsIDAsIDAsIDEwNjk5LCA2NDA4LCA5MjIyNywgNzgyNSwgNTY2MSwgMCwgMTIwNjMwLCAzNjAzLCA0MTEwOSwgMjM5OCwgCi0gICAgMzU0OCwgMCwgMCwgMTE5OTMzLCAwLCAzMTE1LCA5OTE4LCAwLCAxMTMyMSwgNDI5MTIsIDAsIDAsIDE5NDcyNiwgNDg3NiwgCi0gICAgNjU4MDQsIDAsIDAsIDQzNDY4LCAwLCA0MTU1OCwgNDE0NzEsIDczOTUwLCA4MTU4LCA5OTQ0LCA0MTQ3MiwgMTIwMjk4LCAKLSAgICAxMzA1MSwgNzg2ODksIDMxNDMsIDE5NDY3NCwgNjcwMSwgNDE1NTksIDE4OTYsIDY2MjU2LCAxMzA1MiwgMTk0NjgwLCAKLSAgICA1NjY1LCAwLCAxMTkwNzEsIDcwMjUsIDYzOTc0LCAwLCA3NDM1MiwgNzQxNjEsIDQxNTQsIDk4NjMsIDQzNTUwLCAxMjMxMCwgCi0gICAgNTY2MiwgNDIzODIsIDE5NDY4NiwgNzM5MjQsIDExMjEsIDE5NDY2NSwgNjM5NTksIDAsIDk5NDIsIDEzMjMxLCAwLCAKLSAgICA2NDc1MiwgNDczMiwgMTk0NjY2LCAxMTU5NiwgMTE5OTMxLCA2NTE4NywgMTYyNiwgNjM5ODMsIDEwMTEwLCA2NDc3MiwgCi0gICAgNDIwMjQsIDY0MjAsIDQyMDI4LCAwLCAxMDUwOSwgMjc5NSwgNDkxMCwgMTk0NzI4LCA2OTIzMSwgNjQ3NTMsIDYyNzUsIAotICAgIDkxNzgwOCwgMTE4ODMwLCA2Mzk3OCwgMTEwNDQsIDMyMjksIDY0MjMsIDQyNzc0LCAwLCAwLCAwLCAxMjgyMywgMjMzMSwgCi0gICAgOTE3ODEwLCA0MjAyNiwgNjEzNywgMCwgNzUyNCwgMCwgOTE3ODA5LCA4MzQ2LCAwLCA4MzM4LCAxMjgzMTUsIDY1MDQzLCAwLCAKLSAgICA4MjIsIDEyNzk4NCwgOTkwMywgNjQ3MjEsIDQyNzIyLCAxOTQ2NTYsIDE5NDY1OSwgNzg2NTUsIDc4NjYxLCAxOTQ2NjAsIAotICAgIDc4NjYyLCA0MTI2NSwgNTMxMSwgMTc5NSwgOTY1LCAxMTg3OTEsIDEwNTg3LCA3ODA1NSwgMTEyNzgsIDc4NjMyLCAKLSAgICAxOTQ2NDAsIDAsIDEyOTQ2LCAxOTQ2NDEsIDExOTM0MSwgMTIwMzQ5LCA2Mjk0LCAzMTQ0LCAxOTQ2NDgsIDE5NDY0NywgCi0gICAgNjUwMTksIDE5NDY0OSwgNzM5OTAsIDAsIDAsIDc0OCwgNDEwNjcsIDIzMzAsIDUzNSwgMzE0OCwgMTIzNzUsIDE5NDY1MiwgCi0gICAgMTk0NjI5LCAxMDU1NiwgMjQ3NSwgMTIzODgsIDQ4ODksIDg5NjgsIDY3ODYzLCAzNTkzLCAwLCAwLCAyMzQyLCAwLCAKLSAgICAxOTQ2MzQsIDY1MjA2LCA0ODk0LCAxOTQ2MzUsIDQ4OTAsIDE5NDYzNywgOTE3ODA0LCA1ODEsIDQ4OTMsIDAsIDY1NzEsIAotICAgIDY1NTQ1LCA0ODg4LCA0MTU3LCA3ODA0OCwgNzgwNDksIDc4MDQ2LCA3ODA0NywgMCwgMTAxMTksIDY0MTUsIDQyODkzLCAwLCAKLSAgICA2OTcwMiwgMCwgMCwgMTEzNzUsIDY0NzQ2LCAyMzMyLCA3ODA2MywgNDEyLCA3ODA2MSwgNjQ5MzIsIDQyODgwLCA0MzU4NywgCi0gICAgMCwgMCwgMCwgMCwgNjUxOTcsIDc4MDY2LCAxMjIwMywgNzgwNjQsIDc4MDY1LCA4OTEzLCA2NTg1NCwgNDg3NSwgNjU4MTEsIAotICAgIDEyMDM4MSwgMTIwMzg5LCAxMTg4ODgsIDkzNDQsIDg4MjYsIDEyMDM4NiwgMTIwMzk1LCAxMzEwNCwgNzQ3ODEsIDExOTk3LCAKLSAgICAxMjAzOTMsIDc4MDc1LCAwLCAzMTM0LCAwLCA2NTY5NiwgOTIzMzEsIDAsIDY2MjE3LCAwLCA4MzM0LCAxMTkzNDQsIDAsIAotICAgIDM0NDksIDAsIDAsIDc4NDE0LCA3ODQxMywgMTE4OTUwLCA3NDAxMSwgMCwgMCwgMCwgMCwgMTkwOCwgMTIwMTY3LCA0MzI4LCAKLSAgICAxMDczNCwgMTI3MDE0LCAwLCAxMjc5MTQsIDc4MDQsIDc4MjcyLCAxMDgxMSwgNjI1MCwgMTEzMzksIDQ5MTQsIDExMzY3LCAKLSAgICAwLCA3ODA1NCwgNDkxNywgNzQ1MTYsIDc0MjA4LCA2NDI4NSwgNDkxMiwgNTQ2NCwgMTI3ODM2LCAxMTg4OTMsIDIzNjEsIAotICAgIDc5NzEsIDc4MDcyLCA3ODA3MywgNTUyNDMsIDc4MDcxLCAwLCA4MDg2LCA3NDMxNywgNjcwNywgODMxOSwgMjMxMiwgCi0gICAgNDA5NzcsIDEwOTYwLCA0MDk2MiwgODMwNSwgMTI1NzMsIDAsIDQwOTgwLCAwLCAxMzIwMiwgMCwgMTI1ODIsIDc4MjgyLCAwLCAKLSAgICAwLCA0MjQzOCwgNTUyMjEsIDYyODgsIDc4MjgwLCAxMjc5NDYsIDU2NTMsIDQyNDAwLCAxMDg5MSwgNzY5OCwgNTY1OCwgCi0gICAgNzQwNDUsIDEyMDE2NSwgMCwgMCwgNDkxMywgMCwgMCwgMCwgNDIzMjYsIDEyODE5NCwgMTI3MjgsIDkyNjg1LCA0MjQ3OCwgCisgICAgMjM1MCwgMTMwMjksIDc4MjMzLCAwLCAwLCAxMzAzMCwgNjcwMiwgNDUyNywgMCwgMTI1MzgsIDEyODgxMCwgOTgzMzgwLCAKKyAgICA2NTU5OSwgNjU3MTcsIDk5NjYsIDAsIDQ5NDgsIDEyNDg0LCA0MDMyLCAxMjgxNDksIDEyNjIzLCAwLCA2MjA3LCAwLCAKKyAgICA2MTE3LCA2NTkzMCwgODQxMiwgMCwgNzQzOCwgMTI5NiwgMjMyNSwgNDE1MTEsIDAsIDEwMTQ5LCA3NDExOCwgMCwgCisgICAgMTI3Mjg2LCAxMjQ4MSwgMCwgMTI0ODgsIDAsIDAsIDQxNTU2LCA2NDQxNCwgMTE4ODAyLCAyMzU0LCAxMjg1NzEsIDczNzY2LCAKKyAgICAwLCA2Mjk1LCA5MDEsIDQxNTEwLCA3OTUzLCAwLCA2NTAzMiwgNDE1MTMsIDAsIDExOTI3LCA2NjU4NCwgNzg1NTksIAorICAgIDc4NTYwLCA3ODU1NywgNzg1NTgsIDAsIDc4NTU2LCA4NDgsIDk4NjgsIDAsIDY0MjQsIDc4NTY4LCAxMTkzMzgsIDc4NTY1LCAKKyAgICA3NDAzMSwgNzg1NjMsIDc4NTY0LCAyMzUyLCA3ODU3MiwgODkzLCA2NDU3NiwgMTEyODksIDE0MDcsIDAsIDAsIDEzMDI2LCAKKyAgICA2NzYyLCA3ODU3OSwgNzg1ODAsIDEzMDIzLCA4OTAzLCA5Nzc3LCA2NjcxNSwgMTg3MSwgODA5OSwgMCwgMCwgMTM0MywgCisgICAgOTgzNTU4LCAwLCA5MzI1LCA2ODE4LCA2MjgzLCAxMTczOCwgMCwgOTgzNjY2LCAwLCAxMTc0MSwgMCwgMCwgOTIxNiwgCisgICAgODI2MywgMTEyNzksIDE5NDc1MiwgOTgzNTYwLCAxOTQ3NTQsIDEzMDIxLCA2NDQ5NCwgMzEzNiwgMTk0NzU4LCAxOTQ3NTcsIAorICAgIDE5NDc2MCwgMTMwMjIsIDQyNzM3LCA5OTU2LCAwLCAwLCA3NDU1MiwgMTAwMTQsIDAsIDQxMjYwLCAxMTkzNDAsIDEzMDIwLCAKKyAgICAxMDAyNCwgMTk0NzY0LCAxOTQ3NjcsIDc0MzQwLCA2OTY4MSwgMCwgNjQ5NDUsIDgwMjksIDAsIDAsIDk4MzUxNSwgMzMzNSwgCisgICAgMCwgMCwgOTc3NiwgMTIwNTI2LCAxOTQ3NDgsIDUyMTUsIDQyNjQ0LCAzMzMzLCAxNjMyLCAxOTQ3NTEsIDY0ODQ5LCAzMzQyLCAKKyAgICA3ODU4MiwgNTM2MywgMTI5NTcsIDc4NTgxLCA0MTU2LCAwLCAwLCA2NDIxLCA3ODU5MSwgMTYxMSwgNzg1ODksIDEzMDE4LCAKKyAgICA3NDI1NywgNzg1ODgsIDc0NTQyLCAzMzM3LCA0NTM3LCA2Nzg5NSwgMTE3MzYsIDAsIDY4NjA4LCA2NDgyLCA0MjE0LCAKKyAgICA3Mzc5MCwgMTE5NDUsIDAsIDEzMDQ2LCA4ODM4LCA0MjUsIDQwMjUsIDEwNzA5LCA3ODU5NSwgMjEwOCwgMjM5MiwgMTMwNDcsIAorICAgIDAsIDAsIDY4MTksIDEzMDQ5LCA2NDk5LCA5MjI0MywgMTI0MjQsIDY4NjE0LCA3Mzk0NCwgMTMwNTAsIDk5MjQsIDE5NDc0NSwgCisgICAgNjUwNywgMTI3OTE5LCAwLCAxMjgwNjksIDMyNzcsIDg5MjksIDQ5NDcsIDQxMDU1LCAwLCAxOTQ3MjIsIDE5NDcyMSwgCisgICAgMTk0NzI0LCAxMzA0NSwgNjQ2MjYsIDY2MDM0LCA3NzUxLCAxOTQ3MjcsIDgzNzEsIDE5NDcyOSwgMzk5NywgMTI4MDYsIAorICAgIDg3NjgsIDEzMDQ0LCAwLCAxMjQyMCwgNDAyNCwgMTk0NzMwLCA0MTA1NCwgMTA3OCwgOTc1NywgNjk3MzYsIDQxMDU3LCAwLCAKKyAgICAwLCAwLCAwLCAwLCA5MjIxMCwgOTI0MTEsIDAsIDQxNDk2LCAwLCA5MTY1LCAxNTcyLCAxMTkxMSwgMCwgMTE4ODQyLCAKKyAgICAyMzQ2LCAxMzI3MCwgODk1OCwgMCwgOTY0NiwgMzc3MywgNDMxODMsIDY0MDEsIDU4MzEsIDAsIDAsIDEzMDQzLCA4MDU2LCAKKyAgICA5MjQ5NCwgNjU2ODEsIDIwOCwgMTI3MzgyLCA0MTUxNCwgMCwgMCwgMCwgMTA2OTksIDY0MDgsIDkyMjI3LCA3ODI1LCAKKyAgICA1NjYxLCAwLCAxMjA2MzAsIDM2MDMsIDQxMTA5LCAyMzk4LCAzNTQ4LCAwLCAwLCAxMTk5MzMsIDAsIDMxMTUsIDk5MTgsIDAsIAorICAgIDExMzIxLCA0MjkxMiwgMCwgMCwgMTk0NzI2LCA0ODc2LCA2NTgwNCwgMCwgMCwgNDM0NjgsIDAsIDQxNTU4LCA0MTQ3MSwgCisgICAgNzM5NTAsIDgxNTgsIDk5NDQsIDQxNDcyLCAxMjAyOTgsIDEzMDUxLCA3ODY4OSwgMzE0MywgMTk0Njc0LCA2NzAxLCAKKyAgICA0MTU1OSwgMTg5NiwgNjYyNTYsIDEzMDUyLCAxOTQ2ODAsIDU2NjUsIDAsIDExOTA3MSwgNzAyNSwgNjM5NzQsIDAsIAorICAgIDc0MzUyLCA3NDE2MSwgNDE1NCwgOTg2MywgNDM1NTAsIDEyMzEwLCA1NjYyLCA0MjM4MiwgMTk0Njg2LCA3MzkyNCwgMTEyMSwgCisgICAgMTk0NjY1LCA2Mzk1OSwgMCwgOTk0MiwgMTMyMzEsIDAsIDY0NzUyLCA0NzMyLCAxOTQ2NjYsIDExNTk2LCAxMTk5MzEsIAorICAgIDY1MTg3LCAxNjI2LCA2Mzk4MywgMTAxMTAsIDY0NzcyLCA0MjAyNCwgNjQyMCwgNDIwMjgsIDAsIDEwNTA5LCAyNzk1LCAKKyAgICA0OTEwLCAxOTQ3MjgsIDY5MjMxLCA2NDc1MywgNjI3NSwgOTE3ODA4LCAxMTg4MzAsIDYzOTc4LCAxMTA0NCwgMzIyOSwgCisgICAgNjQyMywgNDI3NzQsIDAsIDAsIDAsIDEyODIzLCAyMzMxLCA5MTc4MTAsIDQyMDI2LCA2MTM3LCAwLCA3NTI0LCAwLCAKKyAgICA5MTc4MDksIDgzNDYsIDAsIDgzMzgsIDEyODMxNSwgNjUwNDMsIDAsIDgyMiwgMTI3OTg0LCA5OTAzLCA2NDcyMSwgNDI3MjIsIAorICAgIDE5NDY1NiwgMTk0NjU5LCA3ODY1NSwgNzg2NjEsIDE5NDY2MCwgNzg2NjIsIDQxMjY1LCA1MzExLCAxNzk1LCA5NjUsIAorICAgIDExODc5MSwgMTA1ODcsIDc4MDU1LCAxMTI3OCwgNzg2MzIsIDE5NDY0MCwgMCwgMTI5NDYsIDE5NDY0MSwgMTE5MzQxLCAKKyAgICAxMjAzNDksIDYyOTQsIDMxNDQsIDE5NDY0OCwgMTk0NjQ3LCA2NTAxOSwgMTk0NjQ5LCA3Mzk5MCwgMCwgOTgzNjkyLCA3NDgsIAorICAgIDQxMDY3LCAyMzMwLCA1MzUsIDMxNDgsIDEyMzc1LCAxOTQ2NTIsIDE5NDYyOSwgMTA1NTYsIDI0NzUsIDEyMzg4LCA0ODg5LCAKKyAgICA4OTY4LCA2Nzg2MywgMzU5MywgMCwgMCwgMjM0MiwgMCwgMTk0NjM0LCA2NTIwNiwgNDg5NCwgMTk0NjM1LCA0ODkwLCAKKyAgICAxOTQ2MzcsIDkxNzgwNCwgNTgxLCA0ODkzLCAwLCA2NTcxLCA2NTU0NSwgNDg4OCwgNDE1NywgNzgwNDgsIDc4MDQ5LCAKKyAgICA3ODA0NiwgNzgwNDcsIDAsIDEwMTE5LCA2NDE1LCA0Mjg5MywgMCwgNjk3MDIsIDAsIDAsIDExMzc1LCA2NDc0NiwgMjMzMiwgCisgICAgNzgwNjMsIDQxMiwgNzgwNjEsIDY0OTMyLCA0Mjg4MCwgNDM1ODcsIDAsIDAsIDAsIDAsIDY1MTk3LCA3ODA2NiwgMTIyMDMsIAorICAgIDc4MDY0LCA3ODA2NSwgODkxMywgNjU4NTQsIDQ4NzUsIDY1ODExLCAxMjAzODEsIDEyMDM4OSwgMTE4ODg4LCA5MzQ0LCAKKyAgICA4ODI2LCAxMjAzODYsIDEyMDM5NSwgMTMxMDQsIDc0NzgxLCAxMTk5NywgMTIwMzkzLCA3ODA3NSwgMCwgMzEzNCwgMCwgCisgICAgNjU2OTYsIDkyMzMxLCAwLCA2NjIxNywgMCwgODMzNCwgMTE5MzQ0LCAwLCAzNDQ5LCAwLCAwLCA3ODQxNCwgNzg0MTMsIAorICAgIDExODk1MCwgNzQwMTEsIDAsIDAsIDAsIDAsIDE5MDgsIDEyMDE2NywgNDMyOCwgMTA3MzQsIDEyNzAxNCwgMCwgMTI3OTE0LCAKKyAgICA3ODA0LCA3ODI3MiwgMTA4MTEsIDYyNTAsIDExMzM5LCA0OTE0LCAxMTM2NywgMCwgNzgwNTQsIDQ5MTcsIDc0NTE2LCAKKyAgICA3NDIwOCwgNjQyODUsIDQ5MTIsIDU0NjQsIDEyNzgzNiwgMTE4ODkzLCAyMzYxLCA3OTcxLCA3ODA3MiwgNzgwNzMsIAorICAgIDU1MjQzLCA3ODA3MSwgMCwgODA4NiwgNzQzMTcsIDY3MDcsIDgzMTksIDIzMTIsIDQwOTc3LCAxMDk2MCwgNDA5NjIsIAorICAgIDgzMDUsIDEyNTczLCA5ODMzNTIsIDQwOTgwLCA5ODM2OTYsIDEzMjAyLCAwLCAxMjU4MiwgNzgyODIsIDAsIDk4MzQyNywgCisgICAgNDI0MzgsIDU1MjIxLCA2Mjg4LCA3ODI4MCwgMTI3OTQ2LCA1NjUzLCA0MjQwMCwgMTA4OTEsIDc2OTgsIDU2NTgsIDc0MDQ1LCAKKyAgICAxMjAxNjUsIDAsIDAsIDQ5MTMsIDAsIDk4MzY5MSwgMCwgNDIzMjYsIDEyODE5NCwgMTI3MjgsIDkyNjg1LCA0MjQ3OCwgCiAgICAgMjMyNywgMCwgMTI1NjMsIDQyMjg3LCAxMjcwNSwgMCwgMCwgMTI1ODgsIDg4MjEsIDYxNTMsIDI4NjcsIDE5NDcwOCwgCiAgICAgNjYzMTIsIDY5OCwgMTI4MDA3LCAxOTQ2MDYsIDEwMzU2LCA3NDA3NSwgMTk0NzEzLCA2NTEsIDEyNjQxLCAwLCAwLCAwLCAwLCAKICAgICA0MTU1MiwgNjUxMTUsIDc4NDY1LCA3ODQ2NywgNzg0NjMsIDc4NDY0LCAxMjg4NTEsIDc4NDYxLCAxOTQ2OTcsIDc0MzU2LCAKQEAgLTE2NjczLDM3MyArMTY4OTUsMzc3IEBACiAgICAgMTIwNjc2LCA4NzAzLCA1NDYyLCA5MTc2MjksIDAsIDEwMTAxLCAwLCAwLCA4NDc5LCA0MTUxLCA0MTkzMywgMCwgMCwgCiAgICAgNjYyNTQsIDEyMDgyMSwgMCwgMCwgMTI4NjU0LCAwLCAxMTkxOTQsIDc0MDUwLCA5MjcwMSwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMTIyNzgsIDAsIDAsIDAsIDI3MDAsIDEyNTc2LCA3ODQyLCAxMjg5OSwgMCwgMCwgMjY5OSwgMCwgNzM4NDUsIDI5ODUsIAotICAgIDkyNTY4LCAwLCA5MTc4NDUsIDEyMTkyLCAxMTkzMTQsIDAsIDExOTMxMiwgOTgyNywgMTE5MzEwLCAxMTkzMTEsIDExOTMwOCwgCi0gICAgMTE5MzA5LCAxMTkzMDYsIDExNDgxLCA0MTIxMCwgMTE5MzA1LCAwLCAzNSwgNzg0ODEsIDc4NDgyLCA2NjY5NCwgNjg0NzksIAotICAgIDc4NDc3LCA3ODQ3OCwgNDM1OTYsIDYwOTAsIDY0MjU3LCA3ODEyLCAxMDUzNCwgMCwgNzg0ODUsIDczODQ4LCA3ODQ4MywgCi0gICAgNDI3MiwgMCwgNDA5NjcsIDQwOTY0LCA5MTc4MjUsIDEyNzA0LCA3ODQ4NywgNDMzMDYsIDAsIDY0NDk3LCAxMjEzOCwgCi0gICAgNzkzMCwgMCwgNDMzMDMsIDY4MjE2LCAwLCA5MTc4MjYsIDUyNDQsIDQxODksIDEyNzA5OCwgNjc1OTYsIDEyNzUwNCwgCi0gICAgNDE4OCwgMTg3OSwgMCwgOTY4LCAwLCA0Mzc0MywgMCwgODg3MywgMCwgMCwgOTE3ODI3LCA2NTU1NSwgMTI1NzQsIDAsIDAsIAotICAgIDAsIDc0NDkwLCAxMjcwOTksIDQzNjU3LCAwLCAwLCAwLCA0MjY4MiwgMTI1NzgsIDEyNzIwLCAwLCA0MTIyNywgMCwgCi0gICAgMTIzNDYsIDEyNzEwMSwgNjQ4NDgsIDAsIDAsIDcyNTEsIDAsIDAsIDExODg1MCwgMTE5MTQxLCAxMjg1NDYsIDY2MDE1LCAwLCAKLSAgICA5NTksIDg4ODUsIDEyNTY0LCA2NjQ1NywgNzg4MDgsIDk0NjksIDk2MzIsIDkyMzIzLCA3NDc2MSwgNjQzMjMsIDAsIDAsIDAsIAotICAgIDAsIDMxMCwgMCwgNDEyODEsIDEwOTc2LCAwLCA5MjE5MCwgMCwgNzQyNjYsIDEwMDU0LCA2NDk3LCA4NTc0LCAwLCA5MDEyLCAKLSAgICAxOTk1OCwgNzQ0MjAsIDY1MDg5LCAxMzIxNSwgMTI3MzAsIDY1MTYzLCA3NDA0NCwgMzc0LCA0MzE5NSwgODE2LCAwLCAwLCAKLSAgICAwLCA0MTkzNCwgNzQ2NSwgMCwgMTI4MTY4LCAwLCA0NzE1LCA2MTAxLCAwLCA0MTkzNiwgMCwgNDg3OSwgMCwgNjU0NDYsIDAsIAotICAgIDMwNywgMTI3MTQ3LCA5NTg1LCA1Mzc0LCAwLCAxMjgwNTksIDAsIDAsIDAsIDAsIDAsIDY1NTY3LCAxMjA2MTQsIDE5MjksIAotICAgIDAsIDEyMTQyLCAwLCAxMjIzNiwgNDE0MTksIDE5NDYxOCwgMTIwNjEwLCAxMjk4MiwgMTk0NjIzLCA1Mzc4LCA3ODc5MSwgCi0gICAgMTI4Njc5LCA0MTQyMSwgMCwgNDQ2MiwgMCwgMCwgMTI4MDkyLCA4MjEsIDAsIDI0OTgsIDU4MDAsIDEyMDE1NywgMCwgCi0gICAgMTc2MCwgMjQyMSwgNDQ2OSwgMjMyNCwgODI4LCAzNjExLCA3ODQwMCwgNzU3LCAxMTg1LCAwLCA3ODc3MCwgNDM1OTcsIAotICAgIDEwNjI4LCA3NDgwOCwgMTk0NTcyLCA3OTk5LCA0Mzk3MSwgMCwgMCwgMTA2MzQsIDEwOTQyLCA3NzEzLCAyMzQ4LCAwLCAKLSAgICA2NDM3NCwgNDM4MCwgMTk0NjA4LCAxMTkwNDQsIDk5ODIsIDY0MzI0LCA0MTI0MCwgODYyLCA2NTYyNiwgNzg0NjIsIDE4MTAsIAotICAgIDM2NzMsIDUxMzcsIDE5NDYxNywgMCwgNzI3NywgNjU2MjIsIDAsIDc1NjYsIDY0Njg4LCAxOTQ1OTMsIDE5NDU5MiwgCi0gICAgNzgwOTIsIDc0MzU3LCAxOTQ1OTcsIDQ3NDgsIDkyMjI4LCAxOTQ1OTgsIDE5NDYwMSwgNDIyNjAsIDU4NzEsIDExOTA3NSwgCi0gICAgMCwgNzQ1NzYsIDQ0MDE5LCAwLCAxMjgxODksIDM5NjcsIDE5NDYwNCwgMTMxMzcsIDg3NzUsIDEyNzk0NSwgMCwgMjk2MywgCi0gICAgMCwgODQxMCwgNDQ1NCwgNzIzLCAxMjc4ODIsIDk2NiwgNDQ0OSwgOTIzMzAsIDkyMjM4LCAwLCA3ODE5LCAyMzIwLCAKLSAgICAxOTQ1ODksIDMzOSwgNDk2OCwgMTk0NTkwLCAxMjAzOTksIDgwNzUsIDU1Mjc2LCAwLCA4MDQ3LCAwLCA3ODgyNywgMTI2MzQsIAotICAgIDQxNTQyLCA3ODc4MCwgNzQ2NiwgNjcwNSwgMTIxNzQsIDQyNjEwLCAwLCA3NDQ1MiwgMCwgMTU4NCwgNjY2NDUsIDYwNDUsIAotICAgIDY3MjksIDEyMDY0MCwgNjUyMTgsIDc4Nzc3LCAwLCA3ODA2MiwgNzUzNywgMCwgMTEzNzAsIDAsIDEwMzMwLCAwLCAxMDM5NCwgCi0gICAgMCwgNzQxOTQsIDAsIDEyNzkyOSwgOTc4MCwgMCwgMTMwOTIsIDE5NDU3NiwgMTE5NjA1LCAxOTQ1NzgsIDcwNzQsIDkyNjQ4LCAKLSAgICAxOTQ1NzksIDE5NDU4MiwgMTE0MTQsIDEyODg2OCwgMjUzMSwgMTMwMzQsIDAsIDAsIDQyMTEsIDEyNTksIDc1MTcsIDAsIDAsIAotICAgIDE5NDU2MSwgNDA5OTYsIDEzMDM3LCA3MDkyLCA2NDEsIDUyMTksIDE5NDU2NywgMTk0NTY2LCAxMTA2NCwgNDExMjksIDAsIAotICAgIDQyODUwLCAxMzAzNSwgOTA3NSwgOTIzODcsIDU0NjYsIDEyODE1MywgMCwgNjQwOTgsIDY1NzkzLCA0NTM1LCAxOTQ1NzMsIAotICAgIDQyNzEsIDc4NDE3LCAxMjgzNTcsIDY3NjksIDQxNDEwLCAwLCA2NDI2MiwgNjc2NywgNDE0MDcsIDAsIDAsIDY3NTUsIAotICAgIDExODg2NCwgOTA0NiwgMTI3OTM0LCAwLCAwLCAwLCAwLCAwLCA2NzY3NSwgMCwgMCwgMCwgNjQzMzgsIDI1NjMsIDEzMDMzLCAKLSAgICAyNDcsIDExODkxNSwgMCwgMTIzMzgsIDQ2NTEsIDAsIDExMjcwLCAwLCAwLCAxMTkzMywgMCwgMCwgNDE5MDMsIDQzNDQ3LCAKLSAgICAxMTAwMSwgMCwgNDIyNTUsIDAsIDkyNjYxLCA2OTgyMSwgNDE5MDUsIDAsIDAsIDEwNzc1LCA5NzkzLCA1MDA5LCAwLCAKLSAgICA0MjI2OSwgNjQ1ODcsIDAsIDQyNTM1LCA2OTgxMiwgNjQ1MjksIDQxNDA4LCA0Mjg1MywgMzg3NywgMTIwNzk1LCA0MjY3NCwgCi0gICAgODE0NywgNDM1NjYsIDExOTAyMSwgMCwgMTAyMzYsIDY1OTE4LCA0Mzc4MiwgMCwgMCwgNjQ1MDYsIDY5NjUyLCAxMTg5MjEsIAotICAgIDQ3NDcsIDEyODA1OCwgMCwgNDMyMDAsIDU4MzIsIDAsIDAsIDUxNDEsIDQyNjAwLCAwLCA0MzIwMywgMCwgMCwgNDMyODYsIAotICAgIDAsIDEyODIxMSwgNDM3NzgsIDAsIDQxMzA1LCA3ODc3NiwgNDM3ODEsIDExMzAzLCA2NTU0NywgMCwgNzAzMSwgODU5LCAwLCAKLSAgICAwLCAwLCA2MDU5LCAxMjY5ODUsIDU1MjM1LCAwLCA4NTM1LCAwLCA2NTE5NiwgMTk0Nzg3LCA2NjAzMiwgMTE0ODgsIDAsIAotICAgIDEyMDc4NiwgNDIyMzMsIDY0MTQwLCA5OTQ2LCA2Mzg4NSwgMCwgMTE4MjIsIDAsIDQzMTg5LCAwLCAwLCAxNzg4LCAxNTc5LCAKLSAgICAxMjA0ODIsIDkxNzgxNywgMCwgMCwgMCwgOTAyOCwgMTE5NTcxLCA2OTIzNCwgMCwgMCwgMTI4NSwgNjQ4ODIsIDQxMjQyLCAKLSAgICAwLCAwLCAxMjY0MCwgMCwgNzQwMSwgMCwgMTI2MjUsIDY4MTk4LCAwLCA5MjI1NCwgMzk0MCwgNDE1OTcsIDU1MjYwLCAKLSAgICAzMzk2LCAxMjY0MiwgODY2NSwgMCwgMCwgMTI2MzAsIDE2NTMsIDkxNzgxNSwgMTAxNTMsIDAsIDYxNjYsIDEyMDUxNiwgCi0gICAgMTIwNTIzLCAwLCA4ODE1LCA2NjY3MywgNjUwNDYsIDkyODUsIDkxMywgNDIyNTksIDExOTMxNywgMTE5MzE4LCAyMTQyLCAKLSAgICA2ODQ1NCwgNDI0ODUsIDExODgzNywgNzg3OCwgODIxMSwgNDIyOTMsIDY0Mzc3LCAwLCA5MjY0MywgMCwgMTk0NjczLCAKLSAgICAxMjAzMiwgMCwgOTcyNSwgMCwgNzg0MzEsIDUyNjMsIDEyODE4LCA3ODQzMCwgNDE5MzksIDEwMDIyLCA2NTM4NywgNzg0MTksIAotICAgIDQyNzc3LCAxMDEzOSwgOTgwLCA0MzY5OCwgNjUzODYsIDAsIDAsIDQzNzAxLCA0MzE5OCwgNzE4NCwgMTIwNjczLCAKLSAgICAxOTQ3OTcsIDkxNzgxOSwgMTAwODUsIDExOTk5MiwgMCwgMTE5OTkzLCA2NjM0LCA5MjM3MywgMCwgMTE5MzIzLCA4MDcyLCAKLSAgICAxMTkzMjEsIDQzNzAwLCAwLCA4ODcyLCA3NzgzLCA5MTc5OTIsIDEyMzk4LCA4MjM3LCAwLCAwLCAxMjM5NSwgMCwgCi0gICAgMTI2OTc3LCAxMjA1NjUsIDk5MTQsIDEyNzAxMSwgOTE3ODU0LCA3Mzk3NSwgNjM2NywgNjM1MSwgNjY2ODgsIDAsIDc4MTA3LCAKLSAgICAwLCA2NDczNSwgNDEyNDMsIDkyMTk5LCA3ODA4LCAxODI5LCAwLCA0MTkzNywgNDM1OCwgNDMyNzIsIDYzNTMsIDAsIDAsIAotICAgIDEyMDQyMiwgMCwgMTcxMCwgMCwgMCwgNjU2MDcsIDAsIDQ5LCA2NjI3LCAwLCA2MjU4LCAxMDY4MywgNzg2NzIsIDk3NDEsIAotICAgIDc4MzI5LCA1NjQ5LCA3ODQ0MSwgNDM0NDMsIDY0NDE4LCAxNjQzLCA2NTIxMywgODQwNSwgMzQ3MCwgMTI4MjI1LCAxMzIxMywgCi0gICAgNDI0NTIsIDc4MzMxLCAwLCA3ODQ0NSwgMCwgMTA3MiwgNzg0NTcsIDc4NDUyLCA3ODQ1NCwgNjU3NiwgNDE5ODgsIDQxMTMyLCAKLSAgICA2NTY3NSwgMTA4MCwgMTIwMDAyLCA5ODg2LCA1NTIyNSwgMTEwMSwgNjg0MDQsIDEyMzA5LCA1NTIyNywgMCwgMTI2MzIsIAotICAgIDEwODYsIDE4NjksIDc4Njg1LCA3NjgwLCAwLCA2NTQ1OCwgMTIwNzE0LCAxMjYzOSwgMzM4MCwgODEyMywgMTA5MSwgCi0gICAgMTI2MzgsIDc5NzcsIDQ1MDEsIDQxMDk5LCAwLCA2NjMwOSwgMCwgMCwgMTQ5NCwgMCwgMCwgMCwgMTE2OTMsIDAsIDEwNDk0LCAKLSAgICA5MjY1NSwgNjU4NzIsIDEyMzYzLCAxMTM4NiwgMCwgMCwgMCwgMCwgNjQ1ODIsIDAsIDczNzk0LCAwLCA4MDIyLCAwLCAKLSAgICAxMjA0NjIsIDc0MTA2LCAxMjQxMywgMTk0ODI5LCA5MTc5OTQsIDAsIDkxNzk5NSwgNTU3MCwgMTg4MSwgNzIxMCwgMCwgCi0gICAgMTAxMiwgNjY2MzAsIDAsIDEyMDcwOSwgNzIwOCwgNjY0NDIsIDU1NjksIDAsIDQyMzM5LCAwLCA2MDYzLCAwLCAwLCAKLSAgICAxMTk1OTQsIDYwNTMsIDY1NjAyLCAwLCA5MjIwMSwgNjQ3MjcsIDkxNjAsIDE5NDgyNywgMCwgMCwgOTIxODAsIDEwNTAzLCAKLSAgICAxMTg4MTAsIDYwNTUsIDM4NzAsIDQyNzksIDg0OTAsIDEyMDExNCwgNDMxOSwgNjQ3ODYsIDg2MDIsIDEyMDExMCwgMTEzMjYsIAotICAgIDkyMjA0LCAwLCAwLCAxMjAxMTksIDc4MzMzLCAxMjAxMTcsIDEyMDExOCwgMTIwMDk5LCAxMjAxMDAsIDY1MDg3LCA1NTcxLCAKLSAgICAzNjc0LCA5NzQwLCA5MTIxLCA1NTY4LCAxMjAxMDcsIDEyMDEwOCwgNDIwODUsIDEwMTA3LCA0MjE1OSwgNDI4NzAsIAotICAgIDEyMDEwMSwgNTg5LCA3MDUwLCAwLCA0MzI4MSwgMTAyMzMsIDQxMjYzLCA2NjI1MSwgNjU3MjksIDY2MjUzLCAwLCA3NDA5OSwgCi0gICAgNDI2NDUsIDAsIDE5NDgxNSwgODU4MywgMCwgNTg0NywgNjkyOCwgMCwgMCwgMCwgMCwgMCwgNjY1OTIsIDEyMjA0LCAKLSAgICA5MTc5NjIsIDE5OTY2LCA3Nzg1NiwgNDI1NjEsIDEyMDYyNiwgMCwgMCwgODEyMCwgMTIwNzAxLCAwLCAwLCAxMjgwMTIsIAotICAgIDQxMDYzLCAwLCAxMDY2NCwgMCwgODM2OSwgMCwgNDU1MSwgMTk0OTY0LCAzMzY5LCAwLCAwLCA5NjczLCA2NjMzNCwgCi0gICAgNjU1ODAsIDEwNDc4LCAxMTg5NjAsIDEyNTE3LCA1NTcsIDk0NTcsIDEyMDM0LCAwLCA2MzU1LCAxMjUxOSwgNDEwMDQsIDAsIAotICAgIDE5NTAyNSwgNzQwOTQsIDAsIDAsIDc3OTcwLCAwLCAwLCAxMjgxNzUsIDEyMTExLCAzOTI3LCAwLCAxMjUxNSwgMTQ3NCwgCi0gICAgNjc4OTMsIDU0OTIsIDY5MjMsIDEyODA5OSwgMTA0NDEsIDczODM2LCAwLCA0Mzk5MCwgNTQ5MywgMCwgNzQzMTksIDAsIAotICAgIDY2NjM1LCAxMjAxOSwgMCwgMTYxOCwgMCwgMTIwNDc0LCA5NjQ1LCAxMDQzMCwgOTE3OTU5LCA1ODUzLCAxMzA2MywgCi0gICAgMTAzNjMsIDAsIDEyOTU2LCAxMjgxNjksIDEyMDcyOSwgMTEzMTQsIDkxNzU4MiwgMTIwNjAsIDAsIDc4MzkyLCAxMjgyNiwgCi0gICAgNjMyOSwgMCwgMTA1MTQsIDY1NTE3LCA3NDM5NSwgMjcwNywgODMwOSwgMCwgMTI3MDU0LCA3ODM5OCwgNDM1NzAsIDI2OTcsIAotICAgIDQzNDIwLCA3ODM5NiwgMTI3MDU3LCAyNjk1LCA0MjE3MSwgMCwgMCwgMCwgNjc2MTcsIDExODk3MSwgMCwgMjY5MywgCi0gICAgMTIxMjUsIDEyNzY2LCAwLCAxMTY0LCAwLCAwLCA0MTkxOCwgMCwgMTI3NTQyLCA4Njg3LCA2NjAwOSwgMTIxNzgsIDcwNTMsIAotICAgIDEyODAwMSwgNzQ2OSwgMCwgNTI0OCwgMTIyMTgsIDEyMDUzOCwgNjQyNywgNDI4ODQsIDQxMTIzLCAwLCAwLCA0Mjg3MywgCi0gICAgNDExMjYsIDk5OTEsIDQxMTI4LCA3NDM3MSwgMTI3MDMxLCAwLCA5ODczLCAwLCA0Mjg3NywgNzk5NCwgNjQ3NjIsIDIwNTMsIAotICAgIDQyODQzLCA2NTkxLCA5MzQwLCAwLCAxNTg5LCAwLCAyOTYsIDc0NDM4LCA3ODg1MiwgMCwgNjc4NDEsIDc0MzcwLCAwLCAKLSAgICA4OTIyLCAxMjgwNjgsIDc0NjAwLCAxMjcwMCwgNzQ4MzYsIDAsIDEyNTc5LCAwLCAxMjU3NSwgNjQxNiwgNTY1NiwgMjg5MSwgCi0gICAgMTMyNjIsIDY1NTkwLCA1Mjk5LCAwLCAxMTQ3MywgNTQ0OSwgMTI1MiwgMCwgNzg0MDQsIDQxNDMxLCA3NDM2OSwgNjUzNzMsIAotICAgIDUyOTUsIDkxNzU2OSwgNzQxMTQsIDEyMjMsIDE2NDIsIDE3NCwgNzgzOTksIDg4MywgNDE2MSwgMTI2OTEsIDQyNjAzLCAKLSAgICA0MTQxMywgMzIxMiwgNDE0NTksIDMyMTEsIDc0ODEwLCA0MTQyNSwgMTI3MDI5LCA3ODQxMiwgNzQ0NTAsIDk3MjgsIDM4NDYsIAotICAgIDgwNzAsIDYxNTAsIDY2MzYsIDQzNzAsIDAsIDAsIDc0MTc4LCA3NDU4NywgNzQxMTcsIDAsIDAsIDAsIDQ5ODYsIDEyMTg5LCAKLSAgICAwLCA2NzY0OCwgMTIwNDk5LCA5MTc1NTMsIDQyNTcsIDEyMTA0LCA3Nzk0MiwgNjIyMCwgOTAwNCwgNjU1NjEsIDAsIAotICAgIDc3OTQ5LCAwLCA2ODEzNSwgOTE3NTc2LCA3Nzk0NiwgMCwgNjk2NzksIDY5Njg0LCA5ODkwLCA3ODU2MSwgMTI5NzEsIAotICAgIDc4NDUzLCA5MjU1NiwgNzM4OTgsIDExOTc5LCAwLCAxMTg5MDAsIDkxNzg5NCwgMCwgOTYzNSwgMTI2MDAsIDg4NzEsIDAsIAotICAgIDAsIDAsIDY0NjksIDc0MjI3LCAwLCA2NTMwNCwgNDY3OSwgMTAyMzAsIDY0MzAwLCA2NDg2NywgMzQyNywgNDI0MCwgMCwgMCwgCi0gICAgMCwgMCwgNDI5MTYsIDAsIDAsIDAsIDcyODIsIDc4NzI4LCA2NTczMywgNDQ0NSwgMTI3MTM4LCAxMjgwODIsIDM0OTQsIAotICAgIDc0NjA2LCA2NTU1LCAwLCA3Nzk3NiwgMCwgMCwgNzg1NjYsIDAsIDAsIDY1ODk4LCAwLCA2NTMxMiwgNTQ0NywgMCwgCi0gICAgMTI4OTUsIDY1NTkzLCA0MDEwLCAwLCA0MTEwNiwgMCwgNjQ0NDgsIDAsIDQxMTA1LCAwLCA2NTgyMCwgNjIzMiwgMCwgCi0gICAgMTI4MjgwLCAwLCA0MzYwOCwgMTE5MDkxLCAwLCA2NTM4LCA0MzM1LCA3ODM2NCwgMzk0MSwgNDExMjIsIDExMDYxLCAKLSAgICA3ODM2MywgNjQ4OTIsIDkxMTMsIDE5NTQsIDEyMTU1LCAwLCA0Mjg3OCwgMTE1MDAsIDAsIDAsIDc0NTc4LCAwLCA2NTgzMiwgCi0gICAgMCwgMCwgMCwgNzc5NzUsIDExOTIzMCwgNDU4NiwgMCwgMzUwLCAxMDk1MSwgMCwgNTA5LCAwLCAwLCA5MjMwNywgMCwgMCwgCi0gICAgNTEzMywgMCwgMCwgOTUwMCwgMCwgNDk1NywgNjQ3NDEsIDI0MjIsIDkzNTQsIDAsIDAsIDAsIDI0OTYsIDExNTE2LCA5NDQsIAotICAgIDExODg1MSwgMzg5MCwgMTIxNjgsIDE0MzgsIDAsIDAsIDAsIDQxOTQ3LCAxMjIwLCAxMjA4MjgsIDEyODU1NSwgMCwgMCwgCi0gICAgMTU3MSwgNDI2MzAsIDQxOTQ5LCA0MjgwNSwgODI3MCwgOTQzLCA1NjQsIDAsIDMxMiwgNDE5ODAsIDAsIDAsIDc4MTIwLCAKLSAgICA4ODc3LCAyNjksIDQ0MjksIDYyNzIsIDk2MTcsIDE0NjAsIDY5NTQsIDc4NjU3LCA0MTEyMCwgNjUxMjEsIDEwODYyLCAKLSAgICA2MDYwLCA0MTExOSwgNDE0MTYsIDc0MzU1LCA0MTczLCAwLCAwLCAwLCAxOTA2LCA5MTc5ODYsIDExNTMyLCA3NDA3MywgMCwgCi0gICAgMCwgMTk4NSwgNjI5NiwgOTU4MiwgOTE3ODk1LCA2NDI4NywgMCwgNzgxMTUsIDExNDI4LCAxNzMwLCAyNDU3LCAwLCAKLSAgICAxOTkxOCwgMTA0NjksIDAsIDAsIDc3MDMsIDg4NDAsIDgwMzUsIDAsIDAsIDkyNDkxLCAwLCA2MTI5LCAwLCAwLCAxMjgyNjgsIAotICAgIDAsIDc4NzQsIDg2ODEsIDExOTA5MiwgMCwgMTMxMzYsIDAsIDAsIDc0Mjc4LCA2Mzg4NiwgMTE4ODgxLCA5NjA1LCA3Mzg5MiwgCi0gICAgMTMyMjAsIDEyODc3NiwgMTIwMjc0LCA1NTE0LCAwLCA5MjI4LCAwLCAwLCAwLCA1MjQwLCA5ODExLCAxMDAxMiwgMzA5NiwgCi0gICAgMCwgMCwgMCwgNjY2NzYsIDY1ODczLCAwLCAwLCAwLCA5NTAxLCAwLCAxMjcyLCA2NDUzNiwgNjU0NjUsIDY0NjU0LCA3NDY3LCAKLSAgICAwLCAxNDY3LCAxMDE1OCwgMTAwNDAsIDAsIDk1MTksIDAsIDkxNzgxMiwgMCwgMTE4ODk5LCAxMjE5MywgMCwgMCwgMCwgMCwgCi0gICAgMCwgMTk5MzUsIDAsIDkyMTYyLCA2OTY3NiwgMCwgMCwgMCwgNTI3NSwgMCwgMCwgODYzNywgMCwgMCwgMzc4OSwgNjM4ODAsIAotICAgIDExNDcxLCA0MzU1NCwgNjU4NjIsIDExNDc0LCA2NjMzMiwgNjY2MDMsIDEyODEzOCwgMjQyNiwgMTIwNDIsIDkyMTk0LCAwLCAKLSAgICA5NTM3LCAzOTYxLCAxMjExNSwgNzc5NTMsIDI2MDUsIDQ1MDAsIDY0NTYxLCA1NTIyNCwgNDk4MSwgMCwgMCwgNjM4NzYsIAotICAgIDExNjY3LCA0MjY4NiwgNzc5NzMsIDQyMzYyLCA2NDY4NiwgNDQ5OSwgNDE2NDksIDc1ODksIDAsIDAsIDMyMzcsIDAsIAotICAgIDY4MjE1LCAwLCA4NTQxLCA3ODI5OCwgMCwgNDE4NjYsIDAsIDAsIDAsIDAsIDAsIDQzNTU1LCAyODIzLCA5NTU5LCAxMDA2MCwgCi0gICAgNDE5NDAsIDgyOTksIDQxOTQ1LCA3MTMyLCA0MTk0MSwgMzMwOCwgNzE5MCwgNjQ4ODAsIDg2MTQsIDY1MjIwLCA0MTQ5MywgCi0gICAgMCwgNDE2OTksIDEwNzYyLCA0Mzc4MCwgMTI5OTksIDAsIDAsIDgxMDYsIDQxMjgsIDAsIDAsIDQ0OTQsIDAsIDQwMTIsIAotICAgIDEwMzk1LCAwLCA0MzYzMywgNjU0NDcsIDAsIDAsIDExMDA0LCA2OTUsIDczOSwgNjk2LCA3NjExLCAwLCA0Mjc1NSwgCi0gICAgNzQ4MDIsIDkyMjcsIDc1MDYsIDc1MTAsIDkyMjgxLCA2OTEsIDczOCwgNzUxMSwgNzUxMiwgNzUxNSwgMzg2OCwgNjg4LCAKLSAgICA0MTg0NywgNjkwLCAyNTQ4LCA3MzcsIDk3NCwgODAwMywgNzQwNiwgOTE3OTExLCAwLCAwLCAzOTg1LCA5MTc5MTIsIAotICAgIDY1ODYwLCA2MzkyMSwgNzA1MSwgNjk3NzcsIDQ2ODIsIDkxNzgwNSwgMTI4MDksIDY0MDYsIDQ2ODUsIDkyNTA1LCAxMDg3OSwgCi0gICAgMTAzNDcsIDQ2ODAsIDYzNDEsIDAsIDM4NTEsIDgxMzIsIDc0MzI1LCAwLCA5MTc5MDcsIDAsIDQxOTU4LCAxMTkxNzYsIAotICAgIDkxNzkwOCwgMCwgMCwgNDI2NTcsIDkyNDY4LCA3NjQzLCA0MjM3MywgMTE3MTQsIDY3NTg3LCA0MzU2OCwgMCwgMTE3MTcsIAotICAgIDc2NTAsIDEwNTk0LCA2NDk1MSwgNzY0NywgNzY0OSwgMTI4MTU1LCA3NjQ2LCAwLCA3ODA4MiwgOTY1MSwgMCwgMzg5MSwgMCwgCi0gICAgMCwgMjMzNywgMTczNSwgNzQzMjQsIDY3ODYwLCAyMzYzLCAwLCAwLCA0MzU2MSwgMCwgMCwgNzQxNDYsIDE4NjAsIDc0OTUsIAotICAgIDc1ODAsIDU4MTIsIDc0OTcsIDc1ODQsIDExOTE0MCwgMTI3ODUzLCAwLCAxMjAzNDcsIDc3MjcsIDAsIDg0OTgsIDY5ODE4LCAKLSAgICA4OTQ5LCAzMDY1LCA0MjcxOSwgNzEzNSwgMTU2OSwgOTIzNzUsIDEyNTM0LCAxMjEyNCwgNzY5MCwgMCwgMTI1MzMsIDAsIAotICAgIDY0MTgsIDQ1NDMsIDc4MDg2LCA2OTY5LCAwLCA3NDgwMCwgMCwgMCwgMTE5ODAsIDEyODY1MCwgMCwgNjM4OTQsIDEyMDc2MCwgCisgICAgOTI1NjgsIDk4MzQ5OCwgOTE3ODQ1LCAxMjE5MiwgMTE5MzE0LCAwLCAxMTkzMTIsIDk4MjcsIDExOTMxMCwgMTE5MzExLCAKKyAgICAxMTkzMDgsIDExOTMwOSwgMTE5MzA2LCAxMTQ4MSwgNDEyMTAsIDExOTMwNSwgMCwgMzUsIDc4NDgxLCA3ODQ4MiwgNjY2OTQsIAorICAgIDY4NDc5LCA3ODQ3NywgNzg0NzgsIDQzNTk2LCA2MDkwLCA2NDI1NywgNzgxMiwgMTA1MzQsIDAsIDc4NDg1LCA3Mzg0OCwgCisgICAgNzg0ODMsIDQyNzIsIDAsIDQwOTY3LCA0MDk2NCwgOTE3ODI1LCAxMjcwNCwgNzg0ODcsIDQzMzA2LCAwLCA2NDQ5NywgCisgICAgMTIxMzgsIDc5MzAsIDAsIDQzMzAzLCA2ODIxNiwgMCwgOTE3ODI2LCA1MjQ0LCA0MTg5LCAxMjcwOTgsIDY3NTk2LCAKKyAgICAxMjc1MDQsIDQxODgsIDE4NzksIDAsIDk2OCwgMCwgNDM3NDMsIDAsIDg4NzMsIDAsIDAsIDkxNzgyNywgNjU1NTUsIAorICAgIDEyNTc0LCAwLCAwLCAwLCA3NDQ5MCwgMTI3MDk5LCA0MzY1NywgMCwgMCwgMCwgNDI2ODIsIDEyNTc4LCAxMjcyMCwgMCwgCisgICAgNDEyMjcsIDAsIDEyMzQ2LCAxMjcxMDEsIDY0ODQ4LCAwLCAwLCA3MjUxLCAwLCAwLCAxMTg4NTAsIDExOTE0MSwgMTI4NTQ2LCAKKyAgICA2NjAxNSwgMCwgOTU5LCA4ODg1LCAxMjU2NCwgNjY0NTcsIDc4ODA4LCA5NDY5LCA5NjMyLCA5MjMyMywgNzQ3NjEsIAorICAgIDY0MzIzLCAwLCAwLCAwLCAwLCAzMTAsIDAsIDQxMjgxLCAxMDk3NiwgMCwgOTIxOTAsIDAsIDc0MjY2LCAxMDA1NCwgNjQ5NywgCisgICAgODU3NCwgMCwgOTAxMiwgMTk5NTgsIDc0NDIwLCA2NTA4OSwgMTMyMTUsIDEyNzMwLCA2NTE2MywgNzQwNDQsIDM3NCwgCisgICAgNDMxOTUsIDgxNiwgMCwgMCwgMCwgNDE5MzQsIDc0NjUsIDAsIDEyODE2OCwgMCwgNDcxNSwgNjEwMSwgMCwgNDE5MzYsIDAsIAorICAgIDQ4NzksIDAsIDY1NDQ2LCAwLCAzMDcsIDEyNzE0NywgOTU4NSwgNTM3NCwgMCwgMTI4MDU5LCAwLCAwLCAwLCA5ODMzMDMsIAorICAgIDAsIDY1NTY3LCAxMjA2MTQsIDE5MjksIDAsIDEyMTQyLCAwLCAxMjIzNiwgNDE0MTksIDE5NDYxOCwgMTIwNjEwLCAxMjk4MiwgCisgICAgMTk0NjIzLCA1Mzc4LCA3ODc5MSwgMTI4Njc5LCA0MTQyMSwgMCwgNDQ2MiwgMCwgMCwgMTI4MDkyLCA4MjEsIDAsIDI0OTgsIAorICAgIDU4MDAsIDEyMDE1NywgOTgzNjE4LCAxNzYwLCAyNDIxLCA0NDY5LCAyMzI0LCA4MjgsIDM2MTEsIDc4NDAwLCA3NTcsIAorICAgIDExODUsIDAsIDc4NzcwLCA0MzU5NywgMTA2MjgsIDc0ODA4LCAxOTQ1NzIsIDc5OTksIDQzOTcxLCAwLCAwLCAxMDYzNCwgCisgICAgMTA5NDIsIDc3MTMsIDIzNDgsIDAsIDY0Mzc0LCA0MzgwLCAxOTQ2MDgsIDExOTA0NCwgOTk4MiwgNjQzMjQsIDQxMjQwLCAKKyAgICA4NjIsIDY1NjI2LCA3ODQ2MiwgMTgxMCwgMzY3MywgNTEzNywgMTk0NjE3LCAwLCA3Mjc3LCA2NTYyMiwgMCwgNzU2NiwgCisgICAgNjQ2ODgsIDE5NDU5MywgMTk0NTkyLCA3ODA5MiwgNzQzNTcsIDE5NDU5NywgNDc0OCwgOTIyMjgsIDE5NDU5OCwgMTk0NjAxLCAKKyAgICA0MjI2MCwgNTg3MSwgMTE5MDc1LCAwLCA3NDU3NiwgNDQwMTksIDAsIDEyODE4OSwgMzk2NywgMTk0NjA0LCAxMzEzNywgCisgICAgODc3NSwgMTI3OTQ1LCAwLCAyOTYzLCAwLCA4NDEwLCA0NDU0LCA3MjMsIDEyNzg4MiwgOTY2LCA0NDQ5LCA5MjMzMCwgCisgICAgOTIyMzgsIDAsIDc4MTksIDIzMjAsIDE5NDU4OSwgMzM5LCA0OTY4LCAxOTQ1OTAsIDEyMDM5OSwgODA3NSwgNTUyNzYsIDAsIAorICAgIDgwNDcsIDAsIDc4ODI3LCAxMjYzNCwgNDE1NDIsIDc4NzgwLCA3NDY2LCA2NzA1LCAxMjE3NCwgNDI2MTAsIDAsIDc0NDUyLCAKKyAgICAwLCAxNTg0LCA2NjY0NSwgNjA0NSwgNjcyOSwgMTIwNjQwLCA2NTIxOCwgNzg3NzcsIDAsIDc4MDYyLCA3NTM3LCAwLCAKKyAgICAxMTM3MCwgMCwgMTAzMzAsIDAsIDEwMzk0LCAwLCA3NDE5NCwgMCwgMTI3OTI5LCA5NzgwLCAwLCAxMzA5MiwgMTk0NTc2LCAKKyAgICAxMTk2MDUsIDE5NDU3OCwgNzA3NCwgOTI2NDgsIDE5NDU3OSwgMTk0NTgyLCAxMTQxNCwgMTI4ODY4LCAyNTMxLCAxMzAzNCwgCisgICAgMCwgMCwgNDIxMSwgMTI1OSwgNzUxNywgMCwgMCwgMTk0NTYxLCA0MDk5NiwgMTMwMzcsIDcwOTIsIDY0MSwgNTIxOSwgCisgICAgMTk0NTY3LCAxOTQ1NjYsIDExMDY0LCA0MTEyOSwgMCwgNDI4NTAsIDEzMDM1LCA5MDc1LCA5MjM4NywgNTQ2NiwgMTI4MTUzLCAKKyAgICAwLCA2NDA5OCwgNjU3OTMsIDQ1MzUsIDE5NDU3MywgNDI3MSwgNzg0MTcsIDEyODM1NywgNjc2OSwgNDE0MTAsIDAsIAorICAgIDY0MjYyLCA2NzY3LCA0MTQwNywgMCwgMCwgNjc1NSwgMTE4ODY0LCA5MDQ2LCAxMjc5MzQsIDAsIDAsIDAsIDAsIDAsIAorICAgIDY3Njc1LCAwLCAwLCAwLCA2NDMzOCwgMjU2MywgMTMwMzMsIDI0NywgMTE4OTE1LCAwLCAxMjMzOCwgNDY1MSwgMCwgCisgICAgMTEyNzAsIDAsIDAsIDExOTMzLCAwLCAwLCA0MTkwMywgNDM0NDcsIDExMDAxLCAwLCA0MjI1NSwgMCwgOTI2NjEsIDY5ODIxLCAKKyAgICA0MTkwNSwgMCwgMCwgMTA3NzUsIDk3OTMsIDUwMDksIDAsIDQyMjY5LCA2NDU4NywgMCwgNDI1MzUsIDY5ODEyLCA2NDUyOSwgCisgICAgNDE0MDgsIDQyODUzLCAzODc3LCAxMjA3OTUsIDQyNjc0LCA4MTQ3LCA0MzU2NiwgMTE5MDIxLCA5ODM1MTEsIDEwMjM2LCAKKyAgICA2NTkxOCwgNDM3ODIsIDAsIDAsIDY0NTA2LCA2OTY1MiwgMTE4OTIxLCA0NzQ3LCAxMjgwNTgsIDAsIDQzMjAwLCA1ODMyLCAKKyAgICAwLCAwLCA1MTQxLCA0MjYwMCwgMCwgNDMyMDMsIDAsIDk4MzUzNCwgNDMyODYsIDAsIDEyODIxMSwgNDM3NzgsIDAsIAorICAgIDQxMzA1LCA3ODc3NiwgNDM3ODEsIDExMzAzLCA2NTU0NywgMCwgNzAzMSwgODU5LCAwLCAwLCAwLCA2MDU5LCAxMjY5ODUsIAorICAgIDU1MjM1LCAwLCA4NTM1LCAwLCA2NTE5NiwgMTk0Nzg3LCA2NjAzMiwgMTE0ODgsIDAsIDEyMDc4NiwgNDIyMzMsIDY0MTQwLCAKKyAgICA5OTQ2LCA2Mzg4NSwgMCwgMTE4MjIsIDAsIDQzMTg5LCA5ODM2MzMsIDAsIDE3ODgsIDE1NzksIDEyMDQ4MiwgOTE3ODE3LCAKKyAgICAwLCAwLCAwLCA5MDI4LCAxMTk1NzEsIDY5MjM0LCAwLCAwLCAxMjg1LCA2NDg4MiwgNDEyNDIsIDAsIDAsIDEyNjQwLCAwLCAKKyAgICA3NDAxLCAwLCAxMjYyNSwgNjgxOTgsIDAsIDkyMjU0LCAzOTQwLCA0MTU5NywgNTUyNjAsIDMzOTYsIDEyNjQyLCA4NjY1LCAKKyAgICAwLCAwLCAxMjYzMCwgMTY1MywgOTE3ODE1LCAxMDE1MywgMCwgNjE2NiwgMTIwNTE2LCAxMjA1MjMsIDAsIDg4MTUsIAorICAgIDY2NjczLCA2NTA0NiwgOTI4NSwgOTEzLCA0MjI1OSwgMTE5MzE3LCAxMTkzMTgsIDIxNDIsIDY4NDU0LCA0MjQ4NSwgCisgICAgMTE4ODM3LCA3ODc4LCA4MjExLCA0MjI5MywgNjQzNzcsIDAsIDkyNjQzLCAwLCAxOTQ2NzMsIDEyMDMyLCAwLCA5NzI1LCAwLCAKKyAgICA3ODQzMSwgNTI2MywgMTI4MTgsIDc4NDMwLCA0MTkzOSwgMTAwMjIsIDY1Mzg3LCA3ODQxOSwgNDI3NzcsIDEwMTM5LCA5ODAsIAorICAgIDQzNjk4LCA2NTM4NiwgMCwgMCwgNDM3MDEsIDQzMTk4LCA3MTg0LCAxMjA2NzMsIDE5NDc5NywgOTE3ODE5LCAxMDA4NSwgCisgICAgMTE5OTkyLCAwLCAxMTk5OTMsIDY2MzQsIDkyMzczLCAwLCAxMTkzMjMsIDgwNzIsIDExOTMyMSwgNDM3MDAsIDAsIDg4NzIsIAorICAgIDc3ODMsIDkxNzk5MiwgMTIzOTgsIDgyMzcsIDAsIDAsIDEyMzk1LCAwLCAxMjY5NzcsIDEyMDU2NSwgOTkxNCwgMTI3MDExLCAKKyAgICA5MTc4NTQsIDczOTc1LCA2MzY3LCA2MzUxLCA2NjY4OCwgMCwgNzgxMDcsIDAsIDY0NzM1LCA0MTI0MywgOTIxOTksIDc4MDgsIAorICAgIDE4MjksIDAsIDQxOTM3LCA0MzU4LCA0MzI3MiwgNjM1MywgMCwgMCwgMTIwNDIyLCAwLCAxNzEwLCAwLCAwLCA2NTYwNywgMCwgCisgICAgNDksIDY2MjcsIDAsIDYyNTgsIDEwNjgzLCA3ODY3MiwgOTc0MSwgNzgzMjksIDU2NDksIDc4NDQxLCA0MzQ0MywgNjQ0MTgsIAorICAgIDE2NDMsIDY1MjEzLCA4NDA1LCAzNDcwLCAxMjgyMjUsIDEzMjEzLCA0MjQ1MiwgNzgzMzEsIDAsIDc4NDQ1LCAwLCAxMDcyLCAKKyAgICA3ODQ1NywgNzg0NTIsIDc4NDU0LCA2NTc2LCA0MTk4OCwgNDExMzIsIDY1Njc1LCAxMDgwLCAxMjAwMDIsIDk4ODYsIAorICAgIDU1MjI1LCAxMTAxLCA2ODQwNCwgMTIzMDksIDU1MjI3LCAwLCAxMjYzMiwgMTA4NiwgMTg2OSwgNzg2ODUsIDc2ODAsIDAsIAorICAgIDY1NDU4LCAxMjA3MTQsIDEyNjM5LCAzMzgwLCA4MTIzLCAxMDkxLCAxMjYzOCwgNzk3NywgNDUwMSwgNDEwOTksIDAsIAorICAgIDY2MzA5LCAwLCAwLCAxNDk0LCAwLCAwLCAwLCAxMTY5MywgMCwgMTA0OTQsIDkyNjU1LCA2NTg3MiwgMTIzNjMsIDExMzg2LCAKKyAgICAwLCAwLCAwLCAwLCA2NDU4MiwgMCwgNzM3OTQsIDAsIDgwMjIsIDAsIDEyMDQ2MiwgNzQxMDYsIDEyNDEzLCAxOTQ4MjksIAorICAgIDkxNzk5NCwgMCwgOTE3OTk1LCA1NTcwLCAxODgxLCA3MjEwLCAwLCAxMDEyLCA2NjYzMCwgMCwgMTIwNzA5LCA3MjA4LCAKKyAgICA2NjQ0MiwgNTU2OSwgMCwgNDIzMzksIDAsIDYwNjMsIDAsIDAsIDExOTU5NCwgNjA1MywgNjU2MDIsIDAsIDkyMjAxLCAKKyAgICA2NDcyNywgOTE2MCwgMTk0ODI3LCAwLCAwLCA5MjE4MCwgMTA1MDMsIDExODgxMCwgNjA1NSwgMzg3MCwgNDI3OSwgODQ5MCwgCisgICAgMTIwMTE0LCA0MzE5LCA2NDc4NiwgODYwMiwgMTIwMTEwLCAxMTMyNiwgOTIyMDQsIDAsIDAsIDEyMDExOSwgNzgzMzMsIAorICAgIDEyMDExNywgMTIwMTE4LCAxMjAwOTksIDEyMDEwMCwgNjUwODcsIDU1NzEsIDM2NzQsIDk3NDAsIDkxMjEsIDU1NjgsIAorICAgIDEyMDEwNywgMTIwMTA4LCA0MjA4NSwgMTAxMDcsIDQyMTU5LCA0Mjg3MCwgMTIwMTAxLCA1ODksIDcwNTAsIDAsIDQzMjgxLCAKKyAgICAxMDIzMywgNDEyNjMsIDY2MjUxLCA2NTcyOSwgNjYyNTMsIDAsIDc0MDk5LCA0MjY0NSwgMCwgMTk0ODE1LCA4NTgzLCAwLCAKKyAgICA1ODQ3LCA2OTI4LCAwLCAwLCAwLCAwLCAwLCA2NjU5MiwgMTIyMDQsIDkxNzk2MiwgMTk5NjYsIDc3ODU2LCA0MjU2MSwgCisgICAgMTIwNjI2LCAwLCAwLCA4MTIwLCAxMjA3MDEsIDAsIDAsIDEyODAxMiwgNDEwNjMsIDAsIDEwNjY0LCAwLCA4MzY5LCAwLCAKKyAgICA0NTUxLCAxOTQ5NjQsIDMzNjksIDAsIDAsIDk2NzMsIDY2MzM0LCA2NTU4MCwgMTA0NzgsIDExODk2MCwgMTI1MTcsIDU1NywgCisgICAgOTQ1NywgMTIwMzQsIDk4MzQwNiwgNjM1NSwgMTI1MTksIDQxMDA0LCAwLCAxOTUwMjUsIDc0MDk0LCAwLCAwLCA3Nzk3MCwgCisgICAgMCwgMCwgMTI4MTc1LCAxMjExMSwgMzkyNywgMCwgMTI1MTUsIDE0NzQsIDY3ODkzLCA1NDkyLCA2OTIzLCAxMjgwOTksIAorICAgIDEwNDQxLCA3MzgzNiwgMCwgNDM5OTAsIDU0OTMsIDAsIDc0MzE5LCAwLCA2NjYzNSwgMTIwMTksIDAsIDE2MTgsIDAsIAorICAgIDEyMDQ3NCwgOTY0NSwgMTA0MzAsIDkxNzk1OSwgNTg1MywgMTMwNjMsIDEwMzYzLCAwLCAxMjk1NiwgMTI4MTY5LCAKKyAgICAxMjA3MjksIDExMzE0LCA5MTc1ODIsIDEyMDYwLCAwLCA3ODM5MiwgMTI4MjYsIDYzMjksIDAsIDEwNTE0LCA2NTUxNywgCisgICAgNzQzOTUsIDI3MDcsIDgzMDksIDAsIDEyNzA1NCwgNzgzOTgsIDQzNTcwLCAyNjk3LCA0MzQyMCwgNzgzOTYsIDEyNzA1NywgCisgICAgMjY5NSwgNDIxNzEsIDAsIDAsIDAsIDY3NjE3LCAxMTg5NzEsIDAsIDI2OTMsIDEyMTI1LCAxMjc2NiwgMCwgMTE2NCwgMCwgCisgICAgMCwgNDE5MTgsIDAsIDEyNzU0MiwgODY4NywgNjYwMDksIDEyMTc4LCA3MDUzLCAxMjgwMDEsIDc0NjksIDAsIDUyNDgsIAorICAgIDEyMjE4LCAxMjA1MzgsIDY0MjcsIDQyODg0LCA0MTEyMywgMCwgMCwgNDI4NzMsIDQxMTI2LCA5OTkxLCA0MTEyOCwgCisgICAgNzQzNzEsIDEyNzAzMSwgMCwgOTg3MywgMCwgNDI4NzcsIDc5OTQsIDY0NzYyLCAyMDUzLCA0Mjg0MywgNjU5MSwgOTM0MCwgCisgICAgMCwgMTU4OSwgMCwgMjk2LCA3NDQzOCwgNzg4NTIsIDAsIDY3ODQxLCA3NDM3MCwgMCwgODkyMiwgMTI4MDY4LCA3NDYwMCwgCisgICAgMTI3MDAsIDc0ODM2LCAwLCAxMjU3OSwgMCwgMTI1NzUsIDY0MTYsIDU2NTYsIDI4OTEsIDEzMjYyLCA2NTU5MCwgNTI5OSwgCisgICAgMCwgMTE0NzMsIDU0NDksIDEyNTIsIDAsIDc4NDA0LCA0MTQzMSwgNzQzNjksIDY1MzczLCA1Mjk1LCA5MTc1NjksIDc0MTE0LCAKKyAgICAxMjIzLCAxNjQyLCAxNzQsIDc4Mzk5LCA4ODMsIDQxNjEsIDEyNjkxLCA0MjYwMywgNDE0MTMsIDMyMTIsIDQxNDU5LCAKKyAgICAzMjExLCA3NDgxMCwgNDE0MjUsIDEyNzAyOSwgNzg0MTIsIDc0NDUwLCA5NzI4LCAzODQ2LCA4MDcwLCA2MTUwLCA2NjM2LCAKKyAgICA0MzcwLCAwLCAwLCA3NDE3OCwgNzQ1ODcsIDc0MTE3LCAwLCAwLCAwLCA0OTg2LCAxMjE4OSwgMCwgNjc2NDgsIDEyMDQ5OSwgCisgICAgOTE3NTUzLCA0MjU3LCAxMjEwNCwgNzc5NDIsIDYyMjAsIDkwMDQsIDY1NTYxLCAwLCA3Nzk0OSwgMCwgNjgxMzUsIAorICAgIDkxNzU3NiwgNzc5NDYsIDAsIDY5Njc5LCA2OTY4NCwgOTg5MCwgNzg1NjEsIDEyOTcxLCA3ODQ1MywgOTI1NTYsIDczODk4LCAKKyAgICAxMTk3OSwgMCwgMTE4OTAwLCA5MTc4OTQsIDAsIDk2MzUsIDEyNjAwLCA4ODcxLCAwLCAwLCAwLCA2NDY5LCA3NDIyNywgMCwgCisgICAgNjUzMDQsIDQ2NzksIDEwMjMwLCA2NDMwMCwgNjQ4NjcsIDM0MjcsIDQyNDAsIDAsIDAsIDAsIDAsIDQyOTE2LCAwLCAwLCAwLCAKKyAgICA3MjgyLCA3ODcyOCwgNjU3MzMsIDQ0NDUsIDEyNzEzOCwgMTI4MDgyLCAzNDk0LCA3NDYwNiwgNjU1NSwgMCwgNzc5NzYsIDAsIAorICAgIDAsIDc4NTY2LCAwLCAwLCA2NTg5OCwgMCwgNjUzMTIsIDU0NDcsIDAsIDEyODk1LCA2NTU5MywgNDAxMCwgMCwgNDExMDYsIAorICAgIDAsIDY0NDQ4LCAwLCA0MTEwNSwgMCwgNjU4MjAsIDYyMzIsIDAsIDEyODI4MCwgMCwgNDM2MDgsIDExOTA5MSwgMCwgNjUzOCwgCisgICAgNDMzNSwgNzgzNjQsIDM5NDEsIDQxMTIyLCAxMTA2MSwgNzgzNjMsIDY0ODkyLCA5MTEzLCAxOTU0LCAxMjE1NSwgOTgzNDA5LCAKKyAgICA0Mjg3OCwgMTE1MDAsIDAsIDAsIDc0NTc4LCAwLCA2NTgzMiwgMCwgMCwgMCwgNzc5NzUsIDExOTIzMCwgNDU4NiwgMCwgCisgICAgMzUwLCAxMDk1MSwgMCwgNTA5LCAwLCAwLCA5MjMwNywgMCwgMCwgNTEzMywgMCwgMCwgOTUwMCwgMCwgNDk1NywgNjQ3NDEsIAorICAgIDI0MjIsIDkzNTQsIDAsIDAsIDAsIDI0OTYsIDExNTE2LCA5NDQsIDExODg1MSwgMzg5MCwgMTIxNjgsIDE0MzgsIDAsIDAsIAorICAgIDAsIDQxOTQ3LCAxMjIwLCAxMjA4MjgsIDEyODU1NSwgMCwgMCwgMTU3MSwgNDI2MzAsIDQxOTQ5LCA0MjgwNSwgODI3MCwgCisgICAgOTQzLCA1NjQsIDAsIDMxMiwgNDE5ODAsIDk4MzY3NiwgMCwgNzgxMjAsIDg4NzcsIDI2OSwgNDQyOSwgNjI3MiwgOTYxNywgCisgICAgMTQ2MCwgNjk1NCwgNzg2NTcsIDQxMTIwLCA2NTEyMSwgMTA4NjIsIDYwNjAsIDQxMTE5LCA0MTQxNiwgNzQzNTUsIDQxNzMsIAorICAgIDAsIDAsIDAsIDE5MDYsIDkxNzk4NiwgMTE1MzIsIDc0MDczLCAwLCAwLCAxOTg1LCA2Mjk2LCA5NTgyLCA5MTc4OTUsIAorICAgIDY0Mjg3LCAwLCA3ODExNSwgMTE0MjgsIDE3MzAsIDI0NTcsIDAsIDE5OTE4LCAxMDQ2OSwgMCwgMCwgNzcwMywgODg0MCwgCisgICAgODAzNSwgMCwgMCwgOTI0OTEsIDAsIDYxMjksIDAsIDAsIDEyODI2OCwgMCwgNzg3NCwgODY4MSwgMTE5MDkyLCAwLCAKKyAgICAxMzEzNiwgMCwgMCwgNzQyNzgsIDYzODg2LCAxMTg4ODEsIDk2MDUsIDczODkyLCAxMzIyMCwgMTI4Nzc2LCAxMjAyNzQsIAorICAgIDU1MTQsIDAsIDkyMjgsIDAsIDAsIDAsIDUyNDAsIDk4MTEsIDEwMDEyLCAzMDk2LCAwLCAwLCAwLCA2NjY3NiwgNjU4NzMsIAorICAgIDAsIDAsIDAsIDk1MDEsIDAsIDEyNzIsIDY0NTM2LCA2NTQ2NSwgNjQ2NTQsIDc0NjcsIDAsIDE0NjcsIDEwMTU4LCAxMDA0MCwgCisgICAgMCwgOTUxOSwgMCwgOTE3ODEyLCAwLCAxMTg4OTksIDEyMTkzLCAwLCAwLCAwLCAwLCAwLCAxOTkzNSwgMCwgOTIxNjIsIAorICAgIDY5Njc2LCAwLCAwLCAwLCA1Mjc1LCAwLCAwLCA4NjM3LCAwLCAwLCAzNzg5LCA2Mzg4MCwgMTE0NzEsIDQzNTU0LCA2NTg2MiwgCisgICAgMTE0NzQsIDY2MzMyLCA2NjYwMywgMTI4MTM4LCAyNDI2LCAxMjA0MiwgOTIxOTQsIDk4MzY0NiwgOTUzNywgMzk2MSwgCisgICAgMTIxMTUsIDc3OTUzLCAyNjA1LCA0NTAwLCA2NDU2MSwgNTUyMjQsIDQ5ODEsIDAsIDAsIDYzODc2LCAxMTY2NywgNDI2ODYsIAorICAgIDc3OTczLCA0MjM2MiwgNjQ2ODYsIDQ0OTksIDQxNjQ5LCA3NTg5LCAwLCAwLCAzMjM3LCAwLCA2ODIxNSwgMCwgODU0MSwgCisgICAgNzgyOTgsIDAsIDQxODY2LCAwLCAwLCAwLCAwLCAwLCA0MzU1NSwgMjgyMywgOTU1OSwgMTAwNjAsIDQxOTQwLCA4Mjk5LCAKKyAgICA0MTk0NSwgNzEzMiwgNDE5NDEsIDMzMDgsIDcxOTAsIDY0ODgwLCA4NjE0LCA2NTIyMCwgNDE0OTMsIDAsIDQxNjk5LCAKKyAgICAxMDc2MiwgNDM3ODAsIDEyOTk5LCAwLCAwLCA4MTA2LCA0MTI4LCAwLCAwLCA0NDk0LCAwLCA0MDEyLCAxMDM5NSwgCisgICAgOTgzMzM1LCA0MzYzMywgNjU0NDcsIDAsIDAsIDExMDA0LCA2OTUsIDczOSwgNjk2LCA3NjExLCAwLCA0Mjc1NSwgNzQ4MDIsIAorICAgIDkyMjcsIDc1MDYsIDc1MTAsIDkyMjgxLCA2OTEsIDczOCwgNzUxMSwgNzUxMiwgNzUxNSwgMzg2OCwgNjg4LCA0MTg0NywgCisgICAgNjkwLCAyNTQ4LCA3MzcsIDk3NCwgODAwMywgNzQwNiwgOTE3OTExLCAwLCAwLCAzOTg1LCA5MTc5MTIsIDY1ODYwLCAKKyAgICA2MzkyMSwgNzA1MSwgNjk3NzcsIDQ2ODIsIDkxNzgwNSwgMTI4MDksIDY0MDYsIDQ2ODUsIDkyNTA1LCAxMDg3OSwgMTAzNDcsIAorICAgIDQ2ODAsIDYzNDEsIDAsIDM4NTEsIDgxMzIsIDc0MzI1LCAwLCA5MTc5MDcsIDAsIDQxOTU4LCAxMTkxNzYsIDkxNzkwOCwgMCwgCisgICAgMCwgNDI2NTcsIDkyNDY4LCA3NjQzLCA0MjM3MywgMTE3MTQsIDY3NTg3LCA0MzU2OCwgMCwgMTE3MTcsIDc2NTAsIDEwNTk0LCAKKyAgICA2NDk1MSwgNzY0NywgNzY0OSwgMTI4MTU1LCA3NjQ2LCAwLCA3ODA4MiwgOTY1MSwgMCwgMzg5MSwgMCwgMCwgMjMzNywgCisgICAgMTczNSwgNzQzMjQsIDY3ODYwLCAyMzYzLCAwLCAwLCA0MzU2MSwgMCwgMCwgNzQxNDYsIDE4NjAsIDc0OTUsIDc1ODAsIAorICAgIDU4MTIsIDc0OTcsIDc1ODQsIDExOTE0MCwgMTI3ODUzLCAwLCAxMjAzNDcsIDc3MjcsIDAsIDg0OTgsIDY5ODE4LCA4OTQ5LCAKKyAgICAzMDY1LCA0MjcxOSwgNzEzNSwgMTU2OSwgOTIzNzUsIDEyNTM0LCAxMjEyNCwgNzY5MCwgMCwgMTI1MzMsIDAsIDY0MTgsIAorICAgIDQ1NDMsIDc4MDg2LCA2OTY5LCAwLCA3NDgwMCwgMCwgMCwgMTE5ODAsIDEyODY1MCwgOTgzNTM2LCA2Mzg5NCwgMTIwNzYwLCAKICAgICAxMjI4MiwgNjYxOTIsIDAsIDc0NTkyLCA4ODUwLCA3NDI3NSwgOTIzOCwgMTA2MTcsIDkxNzU0NSwgMCwgOTI2MjUsIDAsIAogICAgIDEyNzkxLCAwLCAwLCAwLCA0NDQ3LCA3MzczMiwgMTI3OTMsIDEyOTAwLCA5MjM3NywgMTA5NTAsIDAsIDc4MDg3LCAxMjc5MCwgCiAgICAgNDE0MDAsIDExOTEyOCwgNjY2MDcsIDEyNzkyLCA0MjIzMiwgMTk0OTM4LCAxNzQ0LCAxMjc4OSwgMTAzNjYsIDEyMzE3LCAKLSAgICA0MTMxMCwgMCwgNDEzOTksIDAsIDAsIDU1MjU4LCAwLCAxMjY5MCwgMCwgMCwgNDM2NzIsIDEyNzg0MCwgNDE2NTIsIDI5NzQsIAotICAgIDkwMTAsIDExMzE1LCAwLCAyNzgsIDAsIDQxNDA1LCAxMTkyNTQsIDAsIDEwMDc3LCA2Mzg1MywgNzQ1NTcsIDQyNTg2LCAwLCAKLSAgICAwLCA2MDAyLCAwLCA0MzU1MywgMCwgNjc5MDMsIDAsIDEyNzg3LCA0MTMwOCwgNzkzNCwgNjUzMDYsIDAsIDAsIDAsIDg2NDYsIAotICAgIDAsIDc3ODI5LCAwLCAwLCA2NDEzLCA2NTUwLCAwLCAxOTQwLCAwLCA0MzYzNywgMjIwLCA2NTE5MywgNDM1NTEsIDEwNjc4LCAKLSAgICAxMDA0NCwgMCwgMCwgMCwgNjg2NTksIDY0MDMsIDU3MDcsIDEwMzkzLCAxMjc1MzIsIDAsIDY2NjE0LCAwLCAwLCAwLCAKLSAgICAxMDI5NywgMCwgMzc0MiwgMCwgMzk1OSwgMCwgMCwgMCwgMjQ2NywgMCwgNjAwMywgNjM4NDQsIDY2NjMsIDgwNDAsIDAsIAotICAgIDYzODQ1LCA0MTgyLCA3ODE3MSwgNDY3NiwgMTIwNTAxLCAwLCAwLCAyNTEwLCAwLCAxMDIwOCwgNzgxNjgsIDkyMzYxLCAKLSAgICAxMTU0MCwgNDM1NDYsIDY2OTIsIDAsIDQxMDYwLCAwLCAwLCA5MDgzLCAwLCAwLCA3ODE0NCwgMTU1OSwgNjM4MzEsIDk2NzcsIAotICAgIDEyMDI2MCwgMCwgNjUyNTYsIDAsIDc0MDcwLCAwLCAwLCAzNjUsIDEyMDU2LCA0MzAyNywgMTIwNDIzLCA0MTcxNiwgCi0gICAgMTI4MjM2LCAwLCAxMjA0NzIsIDU1MTYsIDI4NDUsIDc3MTcsIDgwMzYsIDQxNzE3LCA3MzgyNywgNTQ0LCAxMjA0NSwgCi0gICAgNjI3OCwgMCwgNTUxNSwgMCwgMCwgMCwgNjUzMzksIDQzMjIxLCA2NTE5NCwgMCwgNTUxNywgMCwgMCwgNzQ4NDEsIDY3ODg0LCAKLSAgICAwLCA2Nzg5MCwgNjc4ODUsIDY3ODgwLCA2Nzg4MSwgNjc4ODIsIDY3ODgzLCAwLCAwLCA2Nzg3OSwgMTI3MTg4LCAxOTAyLCAKLSAgICA2Nzg4NywgOTYzOCwgMTI5NzYsIDAsIDEyNDgzLCAxMjM2OCwgNDE3NjksIDQyNzI2LCA0MTc2NSwgMTI4ODE5LCA2NjY3LCAKLSAgICA2Nzg3NCwgNzU1NiwgNjc4NzgsIDc0MzUxLCAxMTI2NCwgOTg5LCA0MjY3NywgNjc4ODksIDAsIDEzMTEsIDkxNzk2NiwgCi0gICAgNDMyNiwgMTEwMDAsIDYzODI0LCAxMzA2OCwgMTA5MzIsIDEyODg4MCwgNjkxNywgNzgxNTUsIDAsIDk0OSwgNzgxNjIsIDAsIAotICAgIDYxNDgsIDg2MDUsIDQyMjUzLCA3ODE3NywgMCwgMCwgNDI3MTUsIDAsIDAsIDAsIDYzODcxLCAwLCA0MTc5NiwgMTI2OSwgCi0gICAgNjUzMCwgMCwgNjUwNTcsIDAsIDUxNDQsIDEyMjIxLCA0MjcxNiwgMCwgNDQzMSwgNDMzMSwgMCwgMTI4Njc1LCA0MTgzNCwgCi0gICAgNTI3OSwgMCwgMTAzMzYsIDgzMTIsIDAsIDQyNzAxLCAxMjg4MjUsIDAsIDc4MTY1LCA2NjAzNiwgMCwgMCwgNjQyOCwgCi0gICAgNDIyNzAsIDAsIDAsIDQzMDU5LCA0MjY2NiwgNTI1NiwgMTA2NywgMjU1LCAxMjEzMSwgMCwgOTQ5MywgMCwgNDEwMTQsIAotICAgIDExNzkzLCAwLCAwLCA3NDM5NCwgNDM0NjAsIDEwNjUzLCA0MjcyMywgMCwgMTE5NjMyLCAwLCA2NTYwLCA3MDE2LCA3NDI3NCwgCi0gICAgMCwgNDM1NTYsIDM5MjksIDczOTAwLCA2NjE0LCAyNzY4LCA5MjUwNCwgOTc0NiwgNTEzNSwgMTE4MTEsIDEyNzk2LCAKLSAgICAxMTk1MywgMCwgNjk3NjEsIDUxMzksIDM0NiwgNzQzMDMsIDYzMDUsIDEyNzk1LCA0Njc1LCA1MTY4LCA3ODU1MiwgCi0gICAgMTI3NzUzLCA3NDMxNSwgNzQzNjEsIDgyNTMsIDg4MTcsIDExMzYsIDAsIDQzNTYzLCA5MjIzMiwgMCwgMTk0NzUwLCA3MzkyLCAKLSAgICA4MjMwLCA5MzY1LCAwLCAwLCAwLCAwLCAwLCA0MDQxLCAwLCAyMzU3LCA0MzI0MCwgMTI3ODYsIDIyOSwgMTE5ODg1LCAKLSAgICAxMTk4ODQsIDQ0MDA0LCA3MTQyLCAxMTk4ODEsIDEyMzUwLCA2NTU1NCwgMTE5ODgyLCAxMTk4NzcsIDExOTg3NiwgMTI3ODUsIAotICAgIDYzODYzLCA0Mzc5NSwgNzc3MCwgMTA3MTIsIDY0ODUzLCAxMjY4NiwgMTE4OTE2LCA0MjM3NSwgMCwgMTI3MjM4LCA2NjM1MiwgCi0gICAgMTA0NzAsIDAsIDExMDU5LCAxMDc5MSwgOTE3OTQ0LCA0NTAsIDAsIDAsIDEwNDMyLCAxMjA5NywgNTQ1MCwgNjQ2OTEsIAotICAgIDEyMzMsIDAsIDQ0MDA5LCA3ODI4NCwgNjYzMzgsIDAsIDAsIDE4MzksIDExODc5OSwgMCwgMTA5MjcsIDE3MDEsIDAsIAotICAgIDIzODgsIDQxNzQ5LCA0MTc2MSwgNTQ1MywgODM2MSwgMTE5ODY1LCA0MTc1OCwgNTQ0NCwgNDE3NjMsIDY0ODg5LCA3MTQzLCAKLSAgICA5MjQ5MywgNzg2NzcsIDAsIDkyNDI5LCA3ODE3NCwgNjY0MzIsIDg4MDEsIDMwNTMsIDQzNDAsIDAsIDAsIDY1ODEyLCAKLSAgICA5MTc4MzEsIDAsIDQxODI0LCAwLCAxMjAyMDMsIDE5NDgwMCwgMTk0ODAzLCA0MjcwMCwgMTk0ODA1LCAxMjc5ODAsIAotICAgIDE5NDgwNywgNzg2NzYsIDkyMzU2LCAxOTQ4MDgsIDAsIDAsIDQ0OTMsIDQzMzYsIDAsIDIzMTQsIDQzNjAyLCA3ODgyNiwgCi0gICAgMTE5MzI1LCAxOTQ4MTEsIDQyNDM5LCA2NDYzOCwgNDIzMjcsIDQzNTI4LCA0NDg5LCAxOTQ3OTEsIDAsIDE5NDc5MywgCi0gICAgMTkxMiwgNDIzODUsIDEwMzA2LCAxMDM3MCwgMCwgMCwgODg2NywgMTAyNTAsIDEwMjU4LCAyNzEyLCAxNjM1LCA3ODgyMSwgCi0gICAgMTQxMCwgOTI2NzEsIDAsIDExODg3OCwgMCwgMCwgOTkxOSwgMCwgNTU5LCAxMjgxNTcsIDQxODI1LCAxMjc5NzUsIDc4MTg4LCAKLSAgICA0ODkyLCA3NDAxNiwgMTk0NzgxLCA2NTQyLCA0MTk1NywgMTI4ODY1LCA1Nzc3LCAwLCA3NTksIDY1NzQ5LCAyMDc5LCAKLSAgICA2NTI0OCwgMTI3ODgsIDY0NDg3LCA2NDU1MiwgMCwgMTAyMjMsIDQyMDYyLCAwLCAwLCAwLCAzNjY4LCA2NTc1NCwgNDM1NjAsIAotICAgIDEyMjI2LCAwLCA2NTE0OSwgMjM0MCwgNDE5NTksIDE5NDc4NiwgMTk0Nzg1LCAxOTQ3ODgsIDQzNjE4LCA2NTc0NywgCi0gICAgMTA5MzcsIDI5NjIsIDAsIDIzMjEsIDM1ODcsIDY1NzQ1LCA5MjQzNiwgODkyMSwgOTk1MiwgMCwgMCwgNDI3MTQsIDk5NTEsIAotICAgIDQzNDA5LCAxOTQ3NzAsIDI5NDksIDY2MDEyLCAxOTQ3NzUsIDE5NDc3NCwgMjk1OCwgNjgzNTksIDQxODIwLCA0MzAzOCwgCi0gICAgMjM5NSwgMCwgOTk3NiwgMTIwMDQzLCAxMjAwNTAsIDEyMDA1OCwgNjgyMjAsIDEyODE0MywgNDI4MDksIDQyODA3LCAwLCAKLSAgICAxMjAwNDYsIDEwMTk4LCA0MTUwLCA2NDM3MSwgODMxOCwgNDE3OTAsIDAsIDQxODk4LCAyMzYwLCA0MTc5NCwgOTE3OTQyLCAKLSAgICAwLCAxMjc4MTgsIDAsIDAsIDI0MTgsIDAsIDI0MTEsIDExMzM2LCA3OTksIDYzODIzLCAxMDI3NiwgMTAzMDgsIDEwMzcyLCAKLSAgICA5MTc1NDEsIDQxNzcyLCA0MjgxMywgMjMxNywgMTAyNjAsIDExODk4MCwgNTUyODQsIDkyMjAzLCAwLCAxMDM4NCwgMCwgMCwgCi0gICAgMCwgNzc1MywgMjM1MSwgNjY1NSwgNjQ0ODksIDAsIDAsIDc3ODcyLCA0NDQzLCA0Mjc3OSwgMjMwLCAwLCAwLCA0MzU0OSwgCi0gICAgNDg1NSwgNDIxNTAsIDY1NzM5LCA1NDQxLCA0MTg5NiwgMTAyODgsIDEwMzIwLCAwLCA4NTUsIDcwNDYsIDYxMDksIDY1MDQ1LCAKLSAgICA2MzgzOSwgNzgxOTgsIDIwNDksIDEwMDk4LCAwLCA3NDE0NSwgMTI3OTQzLCAxMDI2NCwgMTAyODAsIDkxODQsIDEwMzc2LCAKLSAgICA3MDEzLCA0NDY3LCAwLCAwLCAwLCA0MTg4NywgMCwgNDg2MiwgOTczNSwgNjUzNywgMTIwNTkxLCA3NDI4NiwgMzkxNCwgCi0gICAgOTIxNzgsIDAsIDkwNjUsIDEyOTYxLCAwLCAwLCA5MjI1MywgMCwgMjg5LCAwLCA0Njk0LCAxMTQyMCwgNDY5MCwgMCwgCi0gICAgMTIwNTE0LCA5MTc5NzgsIDQ2OTMsIDAsIDQyNzI0LCAwLCA0Njg4LCAxMjA0NTQsIDAsIDAsIDExOTYyOSwgODIzOCwgCi0gICAgMzExMCwgMTIwMTYyLCAwLCAxMjAxNjMsIDY1MjgsIDEyNzU1MywgNDMwMzUsIDEyMDE2MSwgMjE4LCAwLCAxNTIwLCAwLCAKLSAgICA0Nzg2LCAwLCA0MzIyNSwgNDYwMiwgMCwgNzgxNjcsIDEwMDg4LCA2NTQ4LCAwLCAxMjAxNTYsIDQzOTc4LCA4OTg4LCAKLSAgICA4ODg4LCAwLCAwLCAwLCAwLCAxMDY2NiwgMCwgNzM5MDIsIDY5NzQwLCAwLCAwLCA5OTc1LCAwLCAxMTk5MDIsIDQ2ODksIAotICAgIDg5MzIsIDAsIDY1NTYwLCAxMTkyMDksIDc0NDQxLCA3ODgxMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTAwNjUsIAotICAgIDgyMDcsIDAsIDkyNjEzLCAxMjgwMTEsIDAsIDY2MiwgMCwgOTI0NCwgMTk0ODYzLCAwLCAxMTkyNjEsIDAsIDAsIDAsIDAsIAotICAgIDQxOTI5LCAwLCAwLCA2NjY3NCwgNDE5MjYsIDEyMDQwOCwgMTIwNDQzLCAxMDUxMywgNjQ2MzcsIDE5NDg2MiwgMCwgNTIsIAotICAgIDEzMTE4LCA2NDc1LCAwLCAxMjAzNDEsIDEyMDk1LCAxMDIyNSwgNDgxMiwgOTI1NzgsIDAsIDAsIDc0MDg1LCAwLCAzOTc4LCAKLSAgICAwLCA5MTc5NDUsIDEyNzgyMywgMTE1ODIsIDEyMDc2MSwgMTIyODEsIDAsIDY1NDQsIDEzMjQxLCAwLCA2OTc4MiwgCi0gICAgMTI4NTU3LCAxOTQ4NjAsIDExNzY1LCA2NTI1OCwgMTAzNjksIDAsIDE1ODUsIDcxOTIsIDEwMjQ5LCA0MjIsIDE1MDAsIAotICAgIDIwMzYsIDk4NiwgMTk0ODU5LCA2NDM5NCwgNTc4MSwgNTU5OSwgNjQyOTQsIDI0OTQsIDEyMDQ1MCwgNDg2MSwgNzQwMjEsIAotICAgIDY0MzM0LCA3ODIwMywgMTI3ODA4LCAwLCA5MjI2NiwgNjUxMDIsIDg5NjEsIDY1ODQyLCAxMDI0MywgMTAyNDUsIDkxNzkzMywgCi0gICAgMTIwNDEwLCAwLCAxMjA0NTMsIDY0ODIxLCA5NDc4LCAyNTA4LCA5MjY4MywgMCwgMjAyLCAxMjgyNDYsIDc0MTMxLCAxMjQyLCAKLSAgICA2NTUxNCwgMCwgNjM5NDAsIDEyODcwNiwgNjQ1MzMsIDEyMDEyOSwgMCwgNjc4NDIsIDExOTkwLCA5MjQzMCwgNjM5MzksIAotICAgIDQzMzc1LCA2NTQ0MCwgMjUwNCwgMCwgNzg2NzEsIDY0ODI5LCAwLCA2OTQzLCA5MTc5MzQsIDU4NTksIDAsIDI4NTgsIDAsIAotICAgIDc0Mjk0LCAwLCA2OTIzOSwgMCwgMTE5MDI3LCAxMjk5MiwgMjc1MywgMTkzNiwgNzQ0OTEsIDkyNTc0LCAyNzUxLCAxMjY2MiwgCi0gICAgMjc2MywgODk1MywgNjQ3MDEsIDEwNzMxLCAxMjkyMiwgNzA1MiwgOTE3ODM5LCAwLCAwLCAwLCA2MzkyMCwgNzQxMjgsIAotICAgIDI4NTYsIDExOTkxMCwgNDcsIDExOTkxMSwgMTI2OTg2LCA2NTg1OCwgMCwgMCwgMCwgNzg5OSwgMCwgODQxNywgNDM3OTgsIAotICAgIDcwNzIsIDAsIDAsIDQwMzMsIDEyODE2NCwgNDM5OTIsIDAsIDAsIDIxMiwgNjQ2MDAsIDE5MDMsIDEyMzIwLCAwLCAwLCAwLCAKLSAgICAwLCA4OTE1LCAyNzU5LCA5NDUsIDY2ODksIDAsIDAsIDAsIDAsIDEyOTEsIDc0ODI4LCAwLCAwLCA5NTMxLCAxMzE1NSwgCi0gICAgODUwNSwgNjgzNzksIDEyMDYyLCAwLCAwLCA2NTQ4NywgOTIxODksIDQxODM3LCAxMjA2MTEsIDEyMDQzMiwgMCwgMCwgMCwgCi0gICAgMTIwNDMzLCAwLCA2MzkzNSwgNzM5NjIsIDEyMDgwNiwgNjQ3ODcsIDQzNTI0LCAwLCA2NDQyNiwgMCwgMTk0OTQ4LCAwLCAwLCAKLSAgICA2NTY2NCwgNjY5MywgOTg0MywgMCwgODY3NCwgMTE5ODg3LCAxMjg4MTIsIDkyNzE1LCAwLCAxMjYyNCwgMCwgMTY3MywgCi0gICAgNDgxMSwgOTIzODMsIDU5ODYsIDkzMzgsIDMwNDYsIDc0NDgwLCA1OTg1LCA5MTc5MjgsIDExOTU5OCwgOTgyMCwgMCwgCi0gICAgMTIxODcsIDAsIDAsIDU5ODQsIDAsIDQzMzA4LCA0MzkzLCAwLCAwLCAwLCAwLCAwLCA3NDgyNiwgNjQ3MzMsIDAsIDAsIAotICAgIDM0OTEsIDAsIDAsIDEyODIxOSwgMzUxNCwgNjU0ODUsIDAsIDc0OTIsIDAsIDc0NjA1LCA5MjQ4MywgNzUxNCwgMCwgMCwgCi0gICAgMTk0NzMxLCA3NTAyLCA3NTg3LCA2ODM1MywgMCwgMCwgNjM5MjUsIDAsIDc2MTAsIDIxOSwgMCwgMCwgNjkyLCA0MzU4OCwgCi0gICAgNzQ0MzMsIDQxNjM1LCA0MzI0MSwgOTY4OCwgNzE0NywgOTUzNSwgMCwgMCwgMCwgNjQ1MzAsIDAsIDY0NjEwLCAxMTgwNCwgCi0gICAgMCwgNzE0OSwgNzQ1MywgMCwgODAxMywgMCwgOTIzMDEsIDAsIDg4OTUsIDUyNTMsIDAsIDU0NTgsIDAsIDI4NjYsIDAsIAotICAgIDEyNzg2MCwgNjUxMTEsIDY4NDMzLCA2NzAwLCAxMjA0ODQsIDAsIDAsIDAsIDg5NjIsIDc3OTYwLCA5NjQxLCA0MzY5NCwgCi0gICAgNzA1OSwgMCwgMCwgOTYwNCwgNzg3MDAsIDc0NDEsIDYzODI2LCA3ODcwNiwgMTE4OTQxLCA2NDM5MiwgMTk0NzM1LCAwLCAKLSAgICAyODQ0LCAwLCA0MTk3NCwgMCwgMTIxMzksIDAsIDAsIDAsIDMzNTgsIDY1Mjk1LCAwLCAzMTA0LCAxOTQ3MzQsIDAsIAotICAgIDE5NDc2NSwgMCwgNTMwOCwgMCwgMjkwLCAwLCAwLCAyODYyLCAyNzkyLCAxOTUwODgsIDAsIDAsIDMyNjgsIDY2NTkxLCAwLCAKLSAgICA2NTUyLCA0MjM2NywgNzAzNSwgMTIwNTU4LCAwLCAwLCAxODE0LCAwLCAxMDI0MCwgOTIzMzgsIDc0MzA1LCAwLCA3NDUyOCwgCi0gICAgNjU5MDMsIDAsIDQyNjQ2LCA3NjA2LCAyNTkxLCAyODM3LCA0MzQxLCA3Nzk1NiwgNjQ0ODIsIDEyNzMzNywgODE2MywgCi0gICAgNjUyNzAsIDAsIDAsIDAsIDkxMTIsIDc0NDMxLCA4NjMsIDk0OTAsIDExOTg5OCwgOTE3ODM3LCA0MzMyMywgMTIwNTEzLCAKLSAgICAxMTk4OTcsIDkwNzEsIDEyNzMzMywgMCwgMzY1NCwgNzc4OSwgOTYzNywgMCwgMjUzNSwgNjU1MDQsIDc2NTMsIDQwOTkzLCAKLSAgICAxMTk4OTksIDY2NTg3LCAxOTUwOTgsIDAsIDkyNDAxLCAwLCAxMTAwNiwgMTI5MjcsIDc4MDcsIDgwNzMsIDAsIDEwNjI5LCAKLSAgICAwLCA3NDA4OCwgMzA1NiwgMTA4MjMsIDEyODc5NywgMTI3MzI3LCA4NzYyLCAxMDUwOCwgNjk2ODksIDczNzcwLCA0Mzk2OSwgCi0gICAgNDMxOTMsIDEwNzM3LCAzNDYzLCAwLCAwLCA2NjYzMywgODY5NSwgNDgxNSwgMTEzMjIsIDU4MTEsIDEyMzQ1LCA3MDQ5LCAwLCAKLSAgICA1MTk1LCAxOTUwODEsIDAsIDY2NjM5LCAwLCAwLCAwLCAxMjgwNDEsIDAsIDkyMzg1LCAxMjYyLCAwLCA2NTYxLCAxOTkzOSwgCi0gICAgMCwgMCwgMCwgMTE5OTA2LCAwLCAwLCAwLCAwLCAwLCAxMTk5MDcsIDY0NjEyLCAxMTk5MSwgMCwgMCwgMCwgMTUwMiwgMCwgCi0gICAgMCwgOTEwNywgMTI3MzE2LCA1NzAyLCAzNjU1LCA2NzY2MSwgODQzMCwgMCwgNzQxMzIsIDEyMDc1OCwgMCwgNzQwNTcsIAotICAgIDk2MDMsIDAsIDUyNTQsIDEyMDc0MiwgNzcyNCwgNzQzODgsIDY4Mzc1LCAxMDc5NiwgNTEyOSwgMCwgMCwgNTkwLCA3NTc5LCAKLSAgICA1NjE0LCA1ODkzLCA5MjI4MCwgMTE3MjAsIDkyNDk2LCAxMTcyMSwgMCwgNDc5OCwgMCwgMTE5MzE2LCA2NjAzOCwgNDc5MywgCi0gICAgNjc4NTEsIDExNzI2LCAxMjc1NDEsIDc0MjA0LCA2ODYxMCwgMCwgNjg2MjYsIDg5NCwgMzAwLCA5MTc4MTMsIDEyMzA2LCAKLSAgICA2NjIzNSwgODAwNCwgMCwgMCwgMjU2MiwgMCwgMCwgNDI1MDMsIDAsIDExNjUyLCAwLCAwLCAxMTkyNDEsIDkyNjQ5LCAwLCAKLSAgICA1MDk2LCA1MDk1LCAyODYzLCAzNDI0LCA5MjI0NCwgMTA0NTQsIDQyNTMwLCA1MDk0LCAxMTk2MzgsIDAsIDEzMTU2LCAwLCAKLSAgICAxMDgzMiwgNTA5MywgMCwgMCwgMCwgNTA5MiwgMTA3MDgsIDExMzI3LCAwLCA1MDkxLCAxNzYsIDAsIDkxNTMsIDQxMDQsIAotICAgIDc4NTk5LCA3ODYwMSwgMTIxNSwgNDI3MTIsIDU3NDQsIDEyMjcyLCA5ODMyLCAxMTc3NywgMCwgMTI3MzcxLCA0Mjg4MSwgMCwgCi0gICAgODk4MCwgMTE4OTg4LCA2Nzg2MSwgODg0NCwgNzIwOSwgMCwgMCwgNDI3OCwgMCwgMCwgMTk0Nzg5LCAwLCA5MDc0LCA0MzQ4LCAKLSAgICAwLCA2NTU1OCwgNjU5NDYsIDgxMTMsIDcwODcsIDUyNTUsIDE3ODYsIDY2MSwgMCwgMCwgMCwgNzQ0MjMsIDAsIDU4NiwgCi0gICAgNzQ0MTQsIDY0MzU5LCAxMjY3LCAwLCA2NTQ2OCwgMCwgNjU3MzEsIDAsIDEyNzE3OSwgMzYyMSwgMTIwNDczLCA2NjY2NiwgCi0gICAgNjQyMTEsIDAsIDY1NjIsIDEyOTI4LCAwLCAxMjI4LCA2NTQ5MCwgMTEzODMsIDAsIDAsIDAsIDE3MTQsIDc0NDA2LCAKLSAgICAxMjc4MzEsIDAsIDAsIDAsIDY2MjI1LCAwLCAwLCA0MjY2MCwgMTE0MzYsIDIwNzAsIDY0LCAxMjA2OTQsIDAsIDEwMjkxLCAKLSAgICAxMDMyMywgMjgyNiwgMCwgMCwgMCwgNDIwMDgsIDk3MDgsIDQyNzEwLCAwLCA0MjAxMSwgNDE5OTksIDkyMTY0LCAxMjIwNiwgCi0gICAgNTgzOSwgMTcwMiwgMTI0MCwgNzQwNjUsIDYyODYsIDAsIDAsIDY1ODMzLCA3Nzg0OCwgMCwgMTc2NSwgMCwgMCwgNjU1ODgsIAotICAgIDAsIDAsIDAsIDg0MDEsIDAsIDQyMDE0LCAwLCA3MDMwLCAxOTQ3MDQsIDEwNDc5LCA2NDk1OSwgMjg1MiwgMCwgMCwgMCwgMCwgCisgICAgNDEzMTAsIDk4MzYwNCwgNDEzOTksIDAsIDAsIDU1MjU4LCAwLCAxMjY5MCwgMCwgMCwgNDM2NzIsIDEyNzg0MCwgNDE2NTIsIAorICAgIDI5NzQsIDkwMTAsIDExMzE1LCAwLCAyNzgsIDAsIDQxNDA1LCAxMTkyNTQsIDAsIDEwMDc3LCA2Mzg1MywgNzQ1NTcsIAorICAgIDQyNTg2LCAwLCAwLCA2MDAyLCAwLCA0MzU1MywgMCwgNjc5MDMsIDAsIDEyNzg3LCA0MTMwOCwgNzkzNCwgNjUzMDYsIDAsIAorICAgIDAsIDAsIDg2NDYsIDk4MzU1NCwgNzc4MjksIDAsIDAsIDY0MTMsIDY1NTAsIDAsIDE5NDAsIDAsIDQzNjM3LCAyMjAsIAorICAgIDY1MTkzLCA0MzU1MSwgMTA2NzgsIDEwMDQ0LCAwLCAwLCAwLCA2ODY1OSwgNjQwMywgNTcwNywgMTAzOTMsIDEyNzUzMiwgMCwgCisgICAgNjY2MTQsIDAsIDAsIDAsIDEwMjk3LCAwLCAzNzQyLCAwLCAzOTU5LCAwLCAwLCAwLCAyNDY3LCAwLCA2MDAzLCA2Mzg0NCwgCisgICAgNjY2MywgODA0MCwgMCwgNjM4NDUsIDQxODIsIDc4MTcxLCA0Njc2LCAxMjA1MDEsIDAsIDAsIDI1MTAsIDAsIDEwMjA4LCAKKyAgICA3ODE2OCwgOTIzNjEsIDExNTQwLCA0MzU0NiwgNjY5MiwgMCwgNDEwNjAsIDAsIDAsIDkwODMsIDAsIDAsIDc4MTQ0LCAKKyAgICAxNTU5LCA2MzgzMSwgOTY3NywgMTIwMjYwLCAwLCA2NTI1NiwgMCwgNzQwNzAsIDAsIDAsIDM2NSwgMTIwNTYsIDQzMDI3LCAKKyAgICAxMjA0MjMsIDQxNzE2LCAxMjgyMzYsIDAsIDEyMDQ3MiwgNTUxNiwgMjg0NSwgNzcxNywgODAzNiwgNDE3MTcsIDczODI3LCAKKyAgICA1NDQsIDEyMDQ1LCA2Mjc4LCAwLCA1NTE1LCAwLCAwLCAwLCA2NTMzOSwgNDMyMjEsIDY1MTk0LCAwLCA1NTE3LCAwLCAwLCAKKyAgICA3NDg0MSwgNjc4ODQsIDAsIDY3ODkwLCA2Nzg4NSwgNjc4ODAsIDY3ODgxLCA2Nzg4MiwgNjc4ODMsIDAsIDAsIDY3ODc5LCAKKyAgICAxMjcxODgsIDE5MDIsIDY3ODg3LCA5NjM4LCAxMjk3NiwgMCwgMTI0ODMsIDEyMzY4LCA0MTc2OSwgNDI3MjYsIDQxNzY1LCAKKyAgICAxMjg4MTksIDY2NjcsIDY3ODc0LCA3NTU2LCA2Nzg3OCwgNzQzNTEsIDExMjY0LCA5ODksIDQyNjc3LCA2Nzg4OSwgMCwgCisgICAgMTMxMSwgOTE3OTY2LCA0MzI2LCAxMTAwMCwgNjM4MjQsIDEzMDY4LCAxMDkzMiwgMTI4ODgwLCA2OTE3LCA3ODE1NSwgMCwgCisgICAgOTQ5LCA3ODE2MiwgMCwgNjE0OCwgODYwNSwgNDIyNTMsIDc4MTc3LCAwLCAwLCA0MjcxNSwgMCwgMCwgMCwgNjM4NzEsIDAsIAorICAgIDQxNzk2LCAxMjY5LCA2NTMwLCAwLCA2NTA1NywgMCwgNTE0NCwgMTIyMjEsIDQyNzE2LCAwLCA0NDMxLCA0MzMxLCAwLCAKKyAgICAxMjg2NzUsIDQxODM0LCA1Mjc5LCAwLCAxMDMzNiwgODMxMiwgMCwgNDI3MDEsIDEyODgyNSwgMCwgNzgxNjUsIDY2MDM2LCAKKyAgICAwLCAwLCA2NDI4LCA0MjI3MCwgMCwgOTgzMzQwLCA0MzA1OSwgNDI2NjYsIDUyNTYsIDEwNjcsIDI1NSwgMTIxMzEsIDAsIAorICAgIDk0OTMsIDAsIDQxMDE0LCAxMTc5MywgMCwgMCwgNzQzOTQsIDQzNDYwLCAxMDY1MywgNDI3MjMsIDk4MzU4OSwgMTE5NjMyLCAKKyAgICAwLCA2NTYwLCA3MDE2LCA3NDI3NCwgOTgzMzU5LCA0MzU1NiwgMzkyOSwgNzM5MDAsIDY2MTQsIDI3NjgsIDkyNTA0LCAKKyAgICA5NzQ2LCA1MTM1LCAxMTgxMSwgMTI3OTYsIDExOTUzLCAwLCA2OTc2MSwgNTEzOSwgMzQ2LCA3NDMwMywgNjMwNSwgMTI3OTUsIAorICAgIDQ2NzUsIDUxNjgsIDc4NTUyLCAxMjc3NTMsIDc0MzE1LCA3NDM2MSwgODI1MywgODgxNywgMTEzNiwgMCwgNDM1NjMsIAorICAgIDkyMjMyLCAwLCAxOTQ3NTAsIDczOTIsIDgyMzAsIDkzNjUsIDAsIDAsIDk4MzM1MSwgMCwgMCwgNDA0MSwgMCwgMjM1NywgCisgICAgNDMyNDAsIDEyNzg2LCAyMjksIDExOTg4NSwgMTE5ODg0LCA0NDAwNCwgNzE0MiwgMTE5ODgxLCAxMjM1MCwgNjU1NTQsIAorICAgIDExOTg4MiwgMTE5ODc3LCAxMTk4NzYsIDEyNzg1LCA2Mzg2MywgNDM3OTUsIDc3NzAsIDEwNzEyLCA2NDg1MywgMTI2ODYsIAorICAgIDExODkxNiwgNDIzNzUsIDAsIDEyNzIzOCwgNjYzNTIsIDEwNDcwLCAwLCAxMTA1OSwgMTA3OTEsIDkxNzk0NCwgNDUwLCAwLCAKKyAgICAwLCAxMDQzMiwgMTIwOTcsIDU0NTAsIDY0NjkxLCAxMjMzLCAwLCA0NDAwOSwgNzgyODQsIDY2MzM4LCAwLCAwLCAxODM5LCAKKyAgICAxMTg3OTksIDAsIDEwOTI3LCAxNzAxLCA5ODMzOTksIDIzODgsIDQxNzQ5LCA0MTc2MSwgNTQ1MywgODM2MSwgMTE5ODY1LCAKKyAgICA0MTc1OCwgNTQ0NCwgNDE3NjMsIDY0ODg5LCA3MTQzLCA5MjQ5MywgNzg2NzcsIDAsIDkyNDI5LCA3ODE3NCwgNjY0MzIsIAorICAgIDg4MDEsIDMwNTMsIDQzNDAsIDAsIDAsIDY1ODEyLCA5MTc4MzEsIDAsIDQxODI0LCAwLCAxMjAyMDMsIDE5NDgwMCwgCisgICAgMTk0ODAzLCA0MjcwMCwgMTk0ODA1LCAxMjc5ODAsIDE5NDgwNywgNzg2NzYsIDkyMzU2LCAxOTQ4MDgsIDAsIDAsIDQ0OTMsIAorICAgIDQzMzYsIDAsIDIzMTQsIDQzNjAyLCA3ODgyNiwgMTE5MzI1LCAxOTQ4MTEsIDQyNDM5LCA2NDYzOCwgNDIzMjcsIDQzNTI4LCAKKyAgICA0NDg5LCAxOTQ3OTEsIDAsIDE5NDc5MywgMTkxMiwgNDIzODUsIDEwMzA2LCAxMDM3MCwgMCwgMCwgODg2NywgMTAyNTAsIAorICAgIDEwMjU4LCAyNzEyLCAxNjM1LCA3ODgyMSwgMTQxMCwgOTI2NzEsIDAsIDExODg3OCwgMCwgMCwgOTkxOSwgMCwgNTU5LCAKKyAgICAxMjgxNTcsIDQxODI1LCAxMjc5NzUsIDc4MTg4LCA0ODkyLCA3NDAxNiwgMTk0NzgxLCA2NTQyLCA0MTk1NywgMTI4ODY1LCAKKyAgICA1Nzc3LCAwLCA3NTksIDY1NzQ5LCAyMDc5LCA2NTI0OCwgMTI3ODgsIDY0NDg3LCA2NDU1MiwgMCwgMTAyMjMsIDQyMDYyLCAKKyAgICAwLCAwLCAwLCAzNjY4LCA2NTc1NCwgNDM1NjAsIDEyMjI2LCAwLCA2NTE0OSwgMjM0MCwgNDE5NTksIDE5NDc4NiwgCisgICAgMTk0Nzg1LCAxOTQ3ODgsIDQzNjE4LCA2NTc0NywgMTA5MzcsIDI5NjIsIDAsIDIzMjEsIDM1ODcsIDY1NzQ1LCA5MjQzNiwgCisgICAgODkyMSwgOTk1MiwgMCwgMCwgNDI3MTQsIDk5NTEsIDQzNDA5LCAxOTQ3NzAsIDI5NDksIDY2MDEyLCAxOTQ3NzUsIAorICAgIDE5NDc3NCwgMjk1OCwgNjgzNTksIDQxODIwLCA0MzAzOCwgMjM5NSwgMCwgOTk3NiwgMTIwMDQzLCAxMjAwNTAsIDEyMDA1OCwgCisgICAgNjgyMjAsIDEyODE0MywgNDI4MDksIDQyODA3LCAwLCAxMjAwNDYsIDEwMTk4LCA0MTUwLCA2NDM3MSwgODMxOCwgNDE3OTAsIAorICAgIDAsIDQxODk4LCAyMzYwLCA0MTc5NCwgOTE3OTQyLCAwLCAxMjc4MTgsIDAsIDAsIDI0MTgsIDAsIDI0MTEsIDExMzM2LCAKKyAgICA3OTksIDYzODIzLCAxMDI3NiwgMTAzMDgsIDEwMzcyLCA5MTc1NDEsIDQxNzcyLCA0MjgxMywgMjMxNywgMTAyNjAsIAorICAgIDExODk4MCwgNTUyODQsIDkyMjAzLCAwLCAxMDM4NCwgMCwgMCwgMCwgNzc1MywgMjM1MSwgNjY1NSwgNjQ0ODksIDAsIDAsIAorICAgIDc3ODcyLCA0NDQzLCA0Mjc3OSwgMjMwLCAwLCAwLCA0MzU0OSwgNDg1NSwgNDIxNTAsIDY1NzM5LCA1NDQxLCA0MTg5NiwgCisgICAgMTAyODgsIDEwMzIwLCAwLCA4NTUsIDcwNDYsIDYxMDksIDY1MDQ1LCA2MzgzOSwgNzgxOTgsIDIwNDksIDEwMDk4LCAwLCAKKyAgICA3NDE0NSwgMTI3OTQzLCAxMDI2NCwgMTAyODAsIDkxODQsIDEwMzc2LCA3MDEzLCA0NDY3LCAwLCAwLCAwLCA0MTg4NywgMCwgCisgICAgNDg2MiwgOTczNSwgNjUzNywgMTIwNTkxLCA3NDI4NiwgMzkxNCwgOTIxNzgsIDAsIDkwNjUsIDEyOTYxLCAwLCAwLCAKKyAgICA5MjI1MywgMCwgMjg5LCAwLCA0Njk0LCAxMTQyMCwgNDY5MCwgMCwgMTIwNTE0LCA5MTc5NzgsIDQ2OTMsIDAsIDQyNzI0LCAKKyAgICAwLCA0Njg4LCAxMjA0NTQsIDAsIDAsIDExOTYyOSwgODIzOCwgMzExMCwgMTIwMTYyLCA5ODM2NDMsIDEyMDE2MywgNjUyOCwgCisgICAgMTI3NTUzLCA0MzAzNSwgMTIwMTYxLCAyMTgsIDAsIDE1MjAsIDAsIDQ3ODYsIDAsIDQzMjI1LCA0NjAyLCAwLCA3ODE2NywgCisgICAgMTAwODgsIDY1NDgsIDAsIDEyMDE1NiwgNDM5NzgsIDg5ODgsIDg4ODgsIDAsIDAsIDAsIDAsIDEwNjY2LCAwLCA3MzkwMiwgCisgICAgNjk3NDAsIDAsIDAsIDk5NzUsIDAsIDExOTkwMiwgNDY4OSwgODkzMiwgMCwgNjU1NjAsIDExOTIwOSwgNzQ0NDEsIDc4ODEwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDA2NSwgODIwNywgMCwgOTI2MTMsIDEyODAxMSwgMCwgNjYyLCAwLCA5MjQ0LCAKKyAgICAxOTQ4NjMsIDAsIDExOTI2MSwgMCwgMCwgMCwgMCwgNDE5MjksIDAsIDAsIDY2Njc0LCA0MTkyNiwgMTIwNDA4LCAxMjA0NDMsIAorICAgIDEwNTEzLCA2NDYzNywgMTk0ODYyLCAwLCA1MiwgMTMxMTgsIDY0NzUsIDAsIDEyMDM0MSwgMTIwOTUsIDEwMjI1LCA0ODEyLCAKKyAgICA5MjU3OCwgMCwgMCwgNzQwODUsIDAsIDM5NzgsIDAsIDkxNzk0NSwgMTI3ODIzLCAxMTU4MiwgMTIwNzYxLCAxMjI4MSwgMCwgCisgICAgNjU0NCwgMTMyNDEsIDAsIDY5NzgyLCAxMjg1NTcsIDE5NDg2MCwgMTE3NjUsIDY1MjU4LCAxMDM2OSwgMCwgMTU4NSwgCisgICAgNzE5MiwgMTAyNDksIDQyMiwgMTUwMCwgMjAzNiwgOTg2LCAxOTQ4NTksIDY0Mzk0LCA1NzgxLCA1NTk5LCA2NDI5NCwgCisgICAgMjQ5NCwgMTIwNDUwLCA0ODYxLCA3NDAyMSwgNjQzMzQsIDc4MjAzLCAxMjc4MDgsIDAsIDkyMjY2LCA2NTEwMiwgODk2MSwgCisgICAgNjU4NDIsIDEwMjQzLCAxMDI0NSwgOTE3OTMzLCAxMjA0MTAsIDAsIDEyMDQ1MywgNjQ4MjEsIDk0NzgsIDI1MDgsIDkyNjgzLCAKKyAgICAwLCAyMDIsIDEyODI0NiwgNzQxMzEsIDEyNDIsIDY1NTE0LCAwLCA2Mzk0MCwgMTI4NzA2LCA2NDUzMywgMTIwMTI5LCAwLCAKKyAgICA2Nzg0MiwgMTE5OTAsIDkyNDMwLCA2MzkzOSwgNDMzNzUsIDY1NDQwLCAyNTA0LCAwLCA3ODY3MSwgNjQ4MjksIDk4MzY0NSwgCisgICAgNjk0MywgOTE3OTM0LCA1ODU5LCAwLCAyODU4LCA5ODM2NDcsIDc0Mjk0LCA5ODM2NDksIDY5MjM5LCAwLCAxMTkwMjcsIAorICAgIDEyOTkyLCAyNzUzLCAxOTM2LCA3NDQ5MSwgOTI1NzQsIDI3NTEsIDEyNjYyLCAyNzYzLCA4OTUzLCA2NDcwMSwgMTA3MzEsIAorICAgIDEyOTIyLCA3MDUyLCA5MTc4MzksIDAsIDAsIDAsIDYzOTIwLCA3NDEyOCwgMjg1NiwgMTE5OTEwLCA0NywgMTE5OTExLCAKKyAgICAxMjY5ODYsIDY1ODU4LCAwLCAwLCAwLCA3ODk5LCAwLCA4NDE3LCA0Mzc5OCwgNzA3MiwgMCwgMCwgNDAzMywgMTI4MTY0LCAKKyAgICA0Mzk5MiwgMCwgMCwgMjEyLCA2NDYwMCwgMTkwMywgMTIzMjAsIDAsIDAsIDAsIDAsIDg5MTUsIDI3NTksIDk0NSwgNjY4OSwgCisgICAgMCwgMCwgMCwgMCwgMTI5MSwgNzQ4MjgsIDAsIDAsIDk1MzEsIDEzMTU1LCA4NTA1LCA2ODM3OSwgMTIwNjIsIDAsIDAsIAorICAgIDY1NDg3LCA5MjE4OSwgNDE4MzcsIDEyMDYxMSwgMTIwNDMyLCAwLCAwLCAwLCAxMjA0MzMsIDAsIDYzOTM1LCA3Mzk2MiwgCisgICAgMTIwODA2LCA2NDc4NywgNDM1MjQsIDAsIDY0NDI2LCAwLCAxOTQ5NDgsIDAsIDAsIDY1NjY0LCA2NjkzLCA5ODQzLCAwLCAKKyAgICA4Njc0LCAxMTk4ODcsIDEyODgxMiwgOTI3MTUsIDAsIDEyNjI0LCAwLCAxNjczLCA0ODExLCA5MjM4MywgNTk4NiwgOTMzOCwgCisgICAgMzA0NiwgNzQ0ODAsIDU5ODUsIDkxNzkyOCwgMTE5NTk4LCA5ODIwLCAwLCAxMjE4NywgMCwgMCwgNTk4NCwgMCwgNDMzMDgsIAorICAgIDQzOTMsIDAsIDAsIDAsIDAsIDAsIDc0ODI2LCA2NDczMywgMCwgMCwgMzQ5MSwgMCwgMCwgMTI4MjE5LCAzNTE0LCA2NTQ4NSwgCisgICAgMCwgNzQ5MiwgMCwgNzQ2MDUsIDkyNDgzLCA3NTE0LCAwLCAwLCAxOTQ3MzEsIDc1MDIsIDc1ODcsIDY4MzUzLCAwLCAwLCAKKyAgICA2MzkyNSwgMCwgNzYxMCwgMjE5LCAwLCAwLCA2OTIsIDQzNTg4LCA3NDQzMywgNDE2MzUsIDQzMjQxLCA5Njg4LCA3MTQ3LCAKKyAgICA5NTM1LCAwLCAwLCAwLCA2NDUzMCwgMCwgNjQ2MTAsIDExODA0LCAwLCA3MTQ5LCA3NDUzLCAwLCA4MDEzLCAwLCA5MjMwMSwgCisgICAgMCwgODg5NSwgNTI1MywgMCwgNTQ1OCwgMCwgMjg2NiwgMCwgMTI3ODYwLCA2NTExMSwgNjg0MzMsIDY3MDAsIDEyMDQ4NCwgCisgICAgMCwgMCwgMCwgODk2MiwgNzc5NjAsIDk2NDEsIDQzNjk0LCA3MDU5LCA5ODM0MTIsIDAsIDk2MDQsIDc4NzAwLCA3NDQxLCAKKyAgICA2MzgyNiwgNzg3MDYsIDExODk0MSwgNjQzOTIsIDE5NDczNSwgOTgzNDIyLCAyODQ0LCA5ODM2NzMsIDQxOTc0LCAwLCAKKyAgICAxMjEzOSwgMCwgMCwgMCwgMzM1OCwgNjUyOTUsIDAsIDMxMDQsIDE5NDczNCwgMCwgMTk0NzY1LCA5ODMwNDgsIDUzMDgsIDAsIAorICAgIDI5MCwgMCwgMCwgMjg2MiwgMjc5MiwgMTk1MDg4LCAwLCAwLCAzMjY4LCA2NjU5MSwgMCwgNjU1MiwgNDIzNjcsIDcwMzUsIAorICAgIDEyMDU1OCwgMCwgMCwgMTgxNCwgMCwgMTAyNDAsIDkyMzM4LCA3NDMwNSwgMCwgNzQ1MjgsIDY1OTAzLCAwLCA0MjY0NiwgCisgICAgNzYwNiwgMjU5MSwgMjgzNywgNDM0MSwgNzc5NTYsIDY0NDgyLCAxMjczMzcsIDgxNjMsIDY1MjcwLCAwLCAwLCAwLCA5MTEyLCAKKyAgICA3NDQzMSwgODYzLCA5NDkwLCAxMTk4OTgsIDkxNzgzNywgNDMzMjMsIDEyMDUxMywgMTE5ODk3LCA5MDcxLCAxMjczMzMsIDAsIAorICAgIDM2NTQsIDc3ODksIDk2MzcsIDAsIDI1MzUsIDY1NTA0LCA3NjUzLCA0MDk5MywgMTE5ODk5LCA2NjU4NywgMTk1MDk4LCAwLCAKKyAgICA5MjQwMSwgOTgzNjI5LCAxMTAwNiwgMTI5MjcsIDc4MDcsIDgwNzMsIDAsIDEwNjI5LCAwLCA3NDA4OCwgMzA1NiwgMTA4MjMsIAorICAgIDEyODc5NywgMTI3MzI3LCA4NzYyLCAxMDUwOCwgNjk2ODksIDczNzcwLCA0Mzk2OSwgNDMxOTMsIDEwNzM3LCAzNDYzLCAwLCAKKyAgICAwLCA2NjYzMywgODY5NSwgNDgxNSwgMTEzMjIsIDU4MTEsIDEyMzQ1LCA3MDQ5LCAwLCA1MTk1LCAxOTUwODEsIDAsIAorICAgIDY2NjM5LCAwLCAwLCAwLCAxMjgwNDEsIDAsIDkyMzg1LCAxMjYyLCAwLCA2NTYxLCAxOTkzOSwgMCwgMCwgMCwgMTE5OTA2LCAKKyAgICAwLCAwLCAwLCAwLCA5ODM0MDIsIDExOTkwNywgNjQ2MTIsIDExOTkxLCAwLCAwLCAwLCAxNTAyLCAwLCAwLCA5MTA3LCAKKyAgICAxMjczMTYsIDU3MDIsIDM2NTUsIDY3NjYxLCA4NDMwLCAwLCA3NDEzMiwgMTIwNzU4LCAwLCA3NDA1NywgOTYwMywgMCwgCisgICAgNTI1NCwgMTIwNzQyLCA3NzI0LCA3NDM4OCwgNjgzNzUsIDEwNzk2LCA1MTI5LCAwLCAwLCA1OTAsIDc1NzksIDU2MTQsIAorICAgIDU4OTMsIDkyMjgwLCAxMTcyMCwgOTI0OTYsIDExNzIxLCAwLCA0Nzk4LCAwLCAxMTkzMTYsIDY2MDM4LCA0NzkzLCA2Nzg1MSwgCisgICAgMTE3MjYsIDEyNzU0MSwgNzQyMDQsIDY4NjEwLCAwLCA2ODYyNiwgODk0LCAzMDAsIDkxNzgxMywgMTIzMDYsIDY2MjM1LCAKKyAgICA4MDA0LCAwLCAwLCAyNTYyLCAwLCAwLCA0MjUwMywgMCwgMTE2NTIsIDAsIDAsIDExOTI0MSwgOTI2NDksIDAsIDUwOTYsIAorICAgIDUwOTUsIDI4NjMsIDM0MjQsIDkyMjQ0LCAxMDQ1NCwgNDI1MzAsIDUwOTQsIDExOTYzOCwgMCwgMTMxNTYsIDAsIDEwODMyLCAKKyAgICA1MDkzLCAwLCAwLCAwLCA1MDkyLCAxMDcwOCwgMTEzMjcsIDAsIDUwOTEsIDE3NiwgMCwgOTE1MywgNDEwNCwgNzg1OTksIAorICAgIDc4NjAxLCAxMjE1LCA0MjcxMiwgNTc0NCwgMTIyNzIsIDk4MzIsIDExNzc3LCAwLCAxMjczNzEsIDQyODgxLCAwLCA4OTgwLCAKKyAgICAxMTg5ODgsIDY3ODYxLCA4ODQ0LCA3MjA5LCAwLCAwLCA0Mjc4LCAwLCAwLCAxOTQ3ODksIDAsIDkwNzQsIDQzNDgsIDAsIAorICAgIDY1NTU4LCA2NTk0NiwgODExMywgNzA4NywgNTI1NSwgMTc4NiwgNjYxLCAwLCAwLCAwLCA3NDQyMywgMCwgNTg2LCA3NDQxNCwgCisgICAgNjQzNTksIDEyNjcsIDAsIDY1NDY4LCAwLCA2NTczMSwgMCwgMTI3MTc5LCAzNjIxLCAxMjA0NzMsIDY2NjY2LCA2NDIxMSwgCisgICAgMCwgNjU2MiwgMTI5MjgsIDAsIDEyMjgsIDY1NDkwLCAxMTM4MywgMCwgMCwgMCwgMTcxNCwgNzQ0MDYsIDEyNzgzMSwgMCwgCisgICAgMCwgMCwgNjYyMjUsIDAsIDAsIDQyNjYwLCAxMTQzNiwgMjA3MCwgNjQsIDEyMDY5NCwgMCwgMTAyOTEsIDEwMzIzLCAyODI2LCAKKyAgICAwLCAwLCAwLCA0MjAwOCwgOTcwOCwgNDI3MTAsIDAsIDQyMDExLCA0MTk5OSwgOTIxNjQsIDEyMjA2LCA1ODM5LCAxNzAyLCAKKyAgICAxMjQwLCA3NDA2NSwgNjI4NiwgMCwgOTgzNzAxLCA2NTgzMywgNzc4NDgsIDAsIDE3NjUsIDAsIDAsIDY1NTg4LCAwLCAwLCAKKyAgICAwLCA4NDAxLCAwLCA0MjAxNCwgMCwgNzAzMCwgMTk0NzA0LCAxMDQ3OSwgNjQ5NTksIDI4NTIsIDAsIDAsIDAsIDAsIAogICAgIDEyODU4NiwgOTE3OTUxLCA2OTYzLCAwLCAxMjY2NywgNjQ1NDAsIDc0Nzg2LCAxMDE0NywgMTI5MzUsIDEyNzU2OCwgMCwgMCwgCiAgICAgMCwgMCwgNzg3NTcsIDAsIDAsIDAsIDAsIDk5OTQsIDEyNDY3LCAyODY0LCA2NDcxOSwgMTE0OCwgMTA0MzUsIDExNDYyLCAKICAgICA0MTY3NSwgMCwgMjc2NSwgMCwgMCwgMCwgMTIwNzE5LCAxMjgxODgsIDkyNTE2LCA2NjY2MiwgMCwgNzgxMzMsIDkzNjQsIAotICAgIDE5NDY4NSwgNzQ0MTYsIDAsIDAsIDc3OTg4LCAyNjMsIDEwNDQ5LCA0MTI4OCwgMCwgNDE4MzksIDc4Mzg3LCAwLCA3Nzk4NiwgCi0gICAgMCwgNjkzMSwgNjk3MjIsIDY0MzU1LCA3MTc3LCAxMjA1MzAsIDAsIDAsIDAsIDQyNjIsIDEwMjg1LCAxMDcyMiwgNDIwMjAsIAotICAgIDAsIDY4MDYsIDY5OTIsIDQyMDE5LCAwLCA0MTI5MCwgMCwgNzUwLCAwLCAwLCAxMDE2MywgNjM5MTMsIDc0MDY2LCA3MDMyLCAKLSAgICA1OTU0LCA2NDkzMSwgNDMxNCwgMCwgMTk4LCA2ODQ1MywgNzMwLCAxMjAwOTQsIDYzOTA3LCA3Nzk5MywgNzg4OTEsIAotICAgIDEzMTY1LCA3MTA3LCA3NDE3MSwgNDI4MDQsIDY3OCwgODI0MCwgNzgwMTUsIDEyODc4NCwgNDEzNzgsIDExMDA4LCA2OTM4LCAKLSAgICA5MjIyMiwgOTI2MzcsIDIwOTcsIDY2MjQ2LCAxMjA1NjAsIDAsIDAsIDAsIDM4OTIsIDY4NjMyLCA2OTY0MiwgNjcxMiwgCi0gICAgNjYwNDUsIDQxNDcwLCA2NDgwNSwgMCwgMCwgMCwgNjQ4MDEsIDAsIDQ5NywgMTIxMDAsIDU5NTMsIDkyNjY3LCA3Nzk2LCAKLSAgICA2OTY2OSwgNDMyNTQsIDczODMxLCAwLCAxMDI5MywgNTk1MiwgMTI4MSwgMCwgMCwgMCwgMTA2NzcsIDYwNCwgNDEwOTcsIAotICAgIDkxODIsIDE4NTksIDAsIDkyNjAzLCAzNDI1LCAxMjc0ODgsIDAsIDI4MzYsIDAsIDAsIDk3MDcsIDAsIDQzMjAyLCAwLCAwLCAKLSAgICA2NTE5OSwgMTczOCwgOTE3ODE4LCAxMjgxNTgsIDI4MzIsIDkyNzAyLCA5NjcwLCAxMjkzNywgMCwgNjYzNzQsIDkxNzk1NiwgCi0gICAgMCwgMjgyMiwgNjgxMjIsIDQ0MzYsIDkyNTE5LCAwLCA3Mzc1MiwgMCwgNjQ4NzIsIDkyMzQwLCAxMzMxLCAwLCAwLCAwLCAKLSAgICAxMjcwOCwgMCwgNTA5MCwgNTA4OSwgMCwgMCwgMTE5MTA5LCAwLCAxMjg2ODEsIDMxOSwgMTE4ODQ3LCA0MzQ3OSwgOTQ3NywgCi0gICAgMCwgMCwgNTA4NywgOTIzMjUsIDc2NDAsIDk2LCA1MDg2LCAwLCA5MjM3OSwgMCwgNTA4NSwgNjQyODYsIDkyNjY1LCAwLCAKLSAgICA0MTQyMiwgMCwgMTE5OTAxLCA0MjM1NiwgMzc3MiwgMCwgMCwgNTAxMSwgMCwgMCwgMCwgMCwgMTI3MTY1LCAxMjcyNDEsIAotICAgIDY2NzcsIDc2MDEsIDAsIDU5MSwgNjQ0MTksIDExODk1MywgOTIyNjIsIDAsIDExODkyMywgNzM3MzQsIDAsIDEwOTM5LCAKLSAgICA2MTA2LCA2OTMzLCA0MTI3MSwgNjc2MCwgMTE5OTAzLCA0NTM0LCA0MTI3MCwgMTI4ODc2LCAwLCA2NTU3NCwgMCwgOTIyNCwgCi0gICAgMCwgMzY3MSwgODk3NiwgMCwgMCwgNDEyNzUsIDYzNzIsIDEyODA4NCwgNTUyNjEsIDc5NjMsIDYzNzEsIDAsIDU2OCwgMCwgCi0gICAgNDEyNzMsIDAsIDAsIDY3MjgsIDAsIDk3MTUsIDAsIDgyNTgsIDExNzUzLCA3NDgyMCwgMCwgOTYwMiwgMTE4OTE5LCA0MiwgCi0gICAgMCwgNDM2ODgsIDAsIDAsIDc0NTgsIDAsIDAsIDY1Mzg1LCAxMTk5MDAsIDAsIDExOTU4LCAwLCA5MTc4MjIsIDAsIDYyNTQsIAotICAgIDQyNzIxLCA2NjMzNiwgODA0NSwgMTE1NTAsIDAsIDAsIDAsIDQyODU4LCAxMTc4OSwgNjU4NjgsIDU1NTcsIDEwMTMzLCAKLSAgICA5NzM3LCAxMzEwOSwgMCwgOTQ2NywgNTU1OCwgODg3OCwgMTI4MTM2LCAxOTUwMzYsIDc0NTEsIDY3MDYsIDEwMTQ2LCAwLCAKLSAgICA5MDg2LCA2NDU2NiwgMCwgNjQ1ODQsIDc0MzcsIDc0NTQsIDEyNTk0LCAxMjg2OTAsIDY4MzYyLCA0NTQ2LCA3NzMxLCAwLCAKLSAgICAxMTk5MDksIDc0MjQzLCAwLCAzODA1LCAwLCAxOTQ1NjUsIDQ0MDAxLCA0MTAwOCwgMCwgNjMwNywgMTk5NDksIDAsIDc1NDQsIAotICAgIDAsIDQzNDY5LCAwLCAwLCAxMDE1MiwgNjQ0MjIsIDY1MDkxLCAxMTkxMTMsIDc2MDIsIDY0NzI5LCAwLCA0MzUyMSwgMCwgCi0gICAgNDIzMDIsIDQzNzExLCA0MzUyMywgNDE0NDcsIDU1NTksIDAsIDg3MDQsIDIzOTcsIDU1NTYsIDAsIDAsIDAsIDkwMTEsIAotICAgIDk2MzAsIDkyNjMzLCAwLCAwLCA1NTA2LCAwLCAxOTExLCA2NjY1MiwgMCwgOTk2MSwgODg0NSwgNjY2OTgsIDAsIDEwNzkyLCAKLSAgICA4ODg5LCAwLCAyMDk4LCAwLCA2NDc1MSwgMCwgNjY2MjIsIDAsIDAsIDc0MzY0LCAwLCAwLCAwLCA3NDM2NSwgNzU1MiwgMCwgCi0gICAgMCwgNjUzODQsIDcyMjMsIDQ1NTksIDAsIDE5NTYsIDQzMTM4LCA3MDI0LCA2NTcyOCwgNjQ1MDEsIDEyMTAsIDE5NTA3NywgCi0gICAgNjUxNzUsIDEwMTg0LCA0MzE0MCwgNDM2NTQsIDAsIDAsIDAsIDM4LCA4NTMzLCA2NjY2OSwgMTE5MTI0LCAwLCAwLCAwLCAKLSAgICA0MzU3LCAwLCAxMTk4MzcsIDAsIDc0MjMzLCA5OTY3LCAxMTk4NTIsIDQyODYwLCAxMTk4MzgsIDEwOTQxLCA2NTcyMSwgCi0gICAgNjk2MiwgMCwgMCwgMTE5MzI0LCAwLCAxMTAxNCwgMTI3OTcyLCA4OTQyLCAxMjAwMCwgNjkyMjQsIDkyMjY3LCAxMjg1MzYsIAotICAgIDExOTc0LCA5MjIxMywgNDI3NzIsIDEyNzUxOCwgMTE2NTAsIDUwMTMsIDkyNjYzLCAxMjg2NzcsIDY2MjEwLCAxMTg5MTQsIAotICAgIDY2MTMsIDkyNDc2LCAwLCA0MzgxOSwgMCwgMCwgNjQ3MTQsIDAsIDAsIDEyMTYyLCAxMjEyMCwgNDM0NzYsIDAsIDExMDI0LCAKLSAgICA3NDgxMSwgNjYyMjgsIDEwNTYzLCAwLCAxMjcxOTYsIDQzNTIyLCAyNDYyLCAwLCAxODM3LCAwLCA2Mzk3MiwgNjk1NywgMCwgCi0gICAgMTIwNTU5LCA0OTUyLCA2NTcxOCwgNjU4MjcsIDU1MDQsIDY1NzIwLCA2NTcxNCwgNjU3MTUsIDY1NzE2LCAwLCAxMjcwMDUsIAotICAgIDEyNzExOSwgMzEwOSwgNjM5NzUsIDc0MDI4LCAwLCA4MTA3LCAxMTkyMzQsIDExMjcsIDQ1NSwgMCwgNjM5NjgsIDEyNzkyNCwgCi0gICAgMzQ4MywgMTE5NTkzLCAxOTg5LCAwLCA2OTY3OCwgOTEwNCwgMzUwMywgNjUzNzUsIDkyNTA5LCA2Njk0LCA0MjYzMywgCi0gICAgMTg2NCwgMCwgNzQzMDYsIDQxNDQ2LCAyNTQwLCA3NzM2LCAwLCA3NDA2NCwgMCwgMTA1MjEsIDAsIDQyMTczLCA5NzA1LCAKLSAgICA3NDEyNCwgODYwNCwgNjk1NSwgMTA5MTYsIDQzNjg0LCA2MTQ5LCAzODg3LCAxOTk1NiwgMTQxMSwgMjgyNCwgMCwgMTAxMDYsIAotICAgIDEyNzg2MiwgMTQwMywgMTI4ODM5LCAxMzQ3LCA5NjMxLCA3NDQ0NCwgMCwgMCwgMCwgMCwgODY0MCwgMCwgMjU4LCAxNjU0LCAKLSAgICAwLCAwLCAwLCA0MzMxNCwgMCwgMCwgNDA0MiwgMTE0NzgsIDI4NzMsIDYzOTc3LCAxMTUyMiwgNDE2NjgsIDg1NDksIAotICAgIDEwODYxLCAwLCA2Mzk3NiwgMCwgNjg2MjMsIDAsIDc0NTg1LCA0MTM5MSwgMCwgOTE3OTAzLCAzNzYsIDY5ODcsIDkyMjEsIAotICAgIDAsIDAsIDg4MjMsIDEyODY5NywgMTI5NDMsIDY1MTg1LCA0MTg2OSwgMTI2MTksIDAsIDEwMTU0LCAwLCA3NDQzOSwgMjAzOSwgCi0gICAgMCwgNzQ0NiwgMTY4NCwgNjM5NzksIDEwOTc0LCA0NTgsIDEyMDYyMCwgMCwgNjk3OTEsIDEyNzE2MSwgMTE5MTYsIDY1MDE2LCAKLSAgICAwLCA2OTY3MSwgNDIxMTUsIDAsIDEyMjg4LCA3ODA1NywgMCwgMTQ5MywgNDIxMTEsIDc1NTMsIDQwOTcsIDEyODE5OSwgCi0gICAgMTMwODAsIDAsIDY1ODA4LCA2NjEwLCA2MDMwLCA4MDU5LCA3NTA4LCAxMzEzMSwgMCwgMCwgMCwgODc5NCwgNDEyNzgsIAotICAgIDQxNjI5LCAxMjE1NCwgMTI4MTkyLCA0MTI3NywgNjQ2NTgsIDAsIDY0MzgwLCA2NjI1LCA3NDM1NCwgMTk5MDQsIDAsIDAsIAotICAgIDAsIDY1MzcxLCA3MDc4LCAwLCA4MzMsIDAsIDYzNjksIDAsIDEwOTc5LCA0MTk1MywgMCwgNDE0MzQsIDYwNjIsIDAsIDAsIAotICAgIDE5OTE2LCA2OTEzLCA5MzMsIDEzNDEsIDk4NDIsIDY3MjAsIDY1NzQ0LCAwLCAwLCAxMjgyOTUsIDAsIDc0MDUsIDEwMTA1LCAKLSAgICA2NTgxMCwgMCwgNDE2MzIsIDc0OTMsIDU1MjkwLCAwLCA0MTYyMiwgMCwgMCwgMTE5NTU2LCA3NDU4NCwgNzYzMiwgOTcxNiwgCi0gICAgMTk5NTQsIDk4MDUsIDU5OTAsIDkwMCwgMCwgNjM5NTcsIDAsIDAsIDM2MTIsIDAsIDY0Mzc2LCAwLCA1Mzg5LCA5MjU5NywgCi0gICAgMCwgNjU5MzgsIDI4MzksIDk2MjEsIDU4MiwgMCwgNzQzNjgsIDM3NDksIDY5NDksIDc1NjksIDc0MDYxLCAwLCAwLCA2OTU2LCAKLSAgICA0NDAzLCAxOTk2MiwgNjU1NTksIDMyOTksIDAsIDkxNzU2NiwgMTE5MTI3LCA5MDAyLCAwLCA3NDM3MiwgNzQyMzYsIDg0NzgsIAotICAgIDc1OTgsIDU0NiwgNDI0NjksIDY1NTY5LCAxOTE4LCA5NTQyLCA0NzIsIDc3MTYsIDEwMzE5LCAxMDM4MywgNjk5NiwgMCwgCi0gICAgNjM5NTIsIDg0MjUsIDM2MDIsIDgzMjgsIDExNzY0LCAxMTg4OTQsIDAsIDY5Nzk2LCA0MTE4MywgMTI5MDcsIDEwMjcxLCAKLSAgICAxMDI4NywgNjg0LCA0MzUyNSwgMCwgMjg1NCwgMTE5NTg2LCA0NTkyLCA2NTc1NSwgMCwgOTIyNTYsIDExOTYzLCA0MzYyMCwgCi0gICAgMCwgNzg4ODksIDAsIDAsIDEyODgwOSwgOTg4MSwgNDMxMTUsIDY1NzU3LCAzNDE1LCAwLCAwLCA4NjQ4LCAwLCA2NzQxLCAKLSAgICA0MzA0NywgMCwgMTMxODAsIDEyODUxNywgNDE4LCA5MTc5NzIsIDY0NDk1LCAxMDI5NSwgMTAzMjcsIDEwMzkxLCA0MTc1MiwgCi0gICAgNzQzMzksIDg2NDEsIDQxNDQ5LCAwLCA3NDEwMCwgMCwgMTA5MTEsIDY5NDIsIDAsIDEwMjQsIDQyODQ5LCA0MTc1MSwgCi0gICAgNjk3NzYsIDg5NDEsIDAsIDQ1NTQsIDAsIDkwMjMsIDExNjg1LCAwLCA5OTI4LCA3ODYxNywgMCwgMTE0MzcsIDQzNzQxLCAKLSAgICA5MjE2MywgMTIwNzAwLCA2Mzk2NywgMCwgNDEyMDYsIDEyMDcyNCwgOTA0OSwgNDExODUsIDQzMTY2LCAwLCAxMTY4MCwgCi0gICAgOTI2MTksIDExNjg2LCA3ODU0NCwgNjUyMjQsIDQ1NjUsIDQ2NTUsIDExOTU1MywgMCwgOTIxODMsIDY0NTIzLCAxMDM0MywgCi0gICAgMTA0MDcsIDAsIDY2NjcxLCAxMTQ2NiwgMCwgMTI4MDAzLCA0Mjg5MCwgMCwgMTIwNTAsIDY4MjAxLCAyODYwLCAwLCAwLCAwLCAKLSAgICA0Mjc5MiwgNTc0MywgMTA0MjQsIDEyMDY1LCA0Mjg3MiwgMCwgOTIzNDIsIDAsIDg4NzUsIDAsIDAsIDkxNzk5MSwgNzUzMSwgCi0gICAgMTI4NDcsIDI0MTMsIDAsIDc4NjM1LCA5NjIsIDAsIDEyODU1LCA0MTE5NiwgNDI1NjQsIDAsIDE1ODIsIDAsIDU1MDgsIDAsIAotICAgIDAsIDAsIDEwODAxLCAwLCA5MjM1NCwgMCwgNzE3MywgNDk2LCAxMDQzOSwgNDMxMywgNjQ2MDcsIDY5NjM4LCA3ODYwLCAwLCAKLSAgICA5MDYsIDQyNzkzLCAyODQyLCA2NDA1LCA2NDcyMiwgMTMxMzIsIDc5OCwgNjQ2OTQsIDEyODAxLCA4NDA2LCAxMTUzLCAKLSAgICA5MjE3MywgNjQ3ODgsIDAsIDgwNTQsIDkxNzQsIDEyODY1MiwgOTE3OTc2LCA5OTY0LCAwLCA0MTYxMSwgNDY0MiwgNjY1NzQsIAotICAgIDExNTU2LCA5MTc5ODIsIDAsIDc4ODU3LCA0MjA4OSwgNzg4NTUsIDkwMDgsIDAsIDAsIDE5NTA5NiwgNDIwNzksIDkxNzk4MSwgCi0gICAgNzc5MjQsIDQyNTEzLCAwLCA0Mjg0MiwgNzM5ODUsIDY1Mjg1LCAxMTg5NzQsIDEyNzAwMywgMCwgMCwgMCwgMCwgMTEzMzUsIAotICAgIDY0MDY5LCA0MjA5MywgMzkyMCwgMCwgMCwgMCwgMCwgNDU4MCwgNDE5NjcsIDAsIDY0Mzg0LCA5MjE2NywgMTE5MTU4LCAKLSAgICAzMDIxLCA0MjAwNCwgMCwgMCwgNDIzMTcsIDQxOTk4LCAwLCA2OTQ2LCAwLCAwLCAwLCAxMjgxOTMsIDY1MjA0LCAwLCAKLSAgICA2ODExMywgNDI2OTAsIDk4ODAsIDQyMDEwLCA3NDgyNCwgNjQ1ODksIDEwMTExLCA2NDg3NSwgMTI3ODgwLCA2ODM5OSwgCi0gICAgNDM5OTgsIDExMzYwLCAwLCAwLCAwLCAxMTg4MjYsIDQyMTQ5LCAwLCAwLCAwLCA2NDk0MSwgNzc5MTksIDEyMDQyMSwgCi0gICAgMTI4MDc3LCAwLCA1NTI0NywgNDExMCwgNjYwMDUsIDY5NTksIDEwOTI5LCAxMTkxMTAsIDAsIDY2NzAzLCA3NzkyMSwgCi0gICAgODYxNywgNDE5ODIsIDYwMjUsIDY5MjQyLCAwLCAwLCAwLCAwLCA5NTk3LCA0MjA5OSwgNDMxNzIsIDAsIDEwMTE3LCAwLCAKLSAgICA5MjI5NywgNDE2MzYsIDAsIDAsIDEyMDY4MSwgODMwMSwgMCwgMCwgMTg3LCAwLCA2NTY2OSwgMTI4MzM5LCA0OTYzLCAwLCAKLSAgICAxMjc1MTcsIDAsIDg5NjQsIDY1Njc2LCA2NTc4NSwgMCwgNDE5NDgsIDAsIDAsIDAsIDQxOTQyLCA2NTQ0OSwgMzE2MCwgCi0gICAgMTAwODEsIDEzMjI2LCA0MjEyMSwgNDI0NzUsIDQyNjYzLCAxMjgyMTAsIDQxNzY2LCAwLCA2NTg4MiwgNzg4NDksIDQxNzYwLCAKLSAgICAxMTg5LCA5MDUsIDQ4MCwgMTA5ODUsIDQxNzMzLCA2Nzg1OSwgOTYyOSwgNjc0MiwgMTc0NSwgNDM2MjUsIDczODM1LCAKLSAgICA3ODg4LCAwLCAzOTgwLCAwLCA0MjY1NiwgNDE1MDcsIDg4MDYsIDcwMjMsIDAsIDc0Mjc5LCA5NDQ3LCA3ODY1MSwgNzg2NywgCi0gICAgNjkyMTgsIDYyMzYsIDAsIDAsIDEwNTA1LCAwLCAxMjg1MSwgMTE4OTQ4LCAzNDgsIDU0NzQsIDEyODg0MywgMzEwMywgMCwgCi0gICAgNDE3NTMsIDEyODU0MCwgMCwgMCwgNzg4NDQsIDc4ODQ1LCA0MTczOSwgNzg4NDMsIDQyNTE1LCAxMDkzMSwgNDE3NTYsIAotICAgIDQzMzQ3LCA0MjU2MCwgNTM5MSwgNDE3NDYsIDExOTE0NywgOTI1OTEsIDQxMjU5LCA1NTYxLCA3NDM2MCwgMjY5MSwgMCwgCi0gICAgNjU1NTMsIDc5MzMsIDU1NjIsIDY5ODAwLCAxMjgyNjUsIDQxMjYyLCAxMjgxNDYsIDY0NDIxLCA3NDg0NiwgNDEyNTEsIDAsIAotICAgIDAsIDM5NzksIDAsIDAsIDc0ODEzLCAwLCAwLCAwLCAwLCA5MjUyNCwgNDEyNjYsIDAsIDAsIDEyODgzNiwgMTA1ODUsIAotICAgIDY1NzQxLCA0MTczNywgOTU3NCwgMjY2NiwgMCwgNDE3MzgsIDgzMSwgNDE5LCAxMzEyNiwgMTA3MTYsIDAsIDQyODIyLCAwLCAKLSAgICA2NDM0LCAwLCA2OTM5LCA3NzY2LCA2NDMyLCAxMjgxMDYsIDAsIDkxNiwgNzY5LCA0MTc0MiwgMTE5NjgsIDc0ODA1LCAKLSAgICA2NDMzLCA1NTYzLCA1NDcsIDE5NDMsIDY0MzksIDU1NjAsIDQ5OTQsIDQ4NywgMCwgNDQ5NywgMzc1NCwgMTI3MDU2LCAKLSAgICAxMjA0MjQsIDkwMzksIDAsIDQxNzc2LCAwLCA4NzE2LCAxNTk1LCA0MTYxNSwgMCwgMCwgNzQyNjAsIDAsIDQyODU0LCAKLSAgICA0MzIxOSwgMTI4NzA5LCAwLCAxMjE4NSwgMTI4ODc5LCAwLCA2ODM1NSwgNjgzNTcsIDAsIDQyODU2LCA4NjM0LCAwLCAwLCAKLSAgICA0MjA5LCAxMjA3MDIsIDAsIDY1ODc5LCA0MTUzOCwgNjU2MTIsIDEyNzU0MywgNjY5LCA1Njc5LCAwLCA2OTc4NiwgOTI1NDAsIAotICAgIDAsIDAsIDU2NzgsIDExODIxLCAwLCA2NzExLCA0NjAsIDAsIDAsIDAsIDAsIDEyMDc0NywgMCwgMCwgNzgwNTAsIDExOTAyMiwgCi0gICAgMCwgMCwgMCwgNzc4MiwgOTA0NCwgNDk3NCwgMTE3NjAsIDc4NDk0LCA3NTc3LCA2NTcxMSwgNDE5MTIsIDEyMTYsIDAsIAotICAgIDEyODA3OSwgNTc5MiwgMCwgMCwgNzg1MDEsIDAsIDI5MzMsIDEyMjQ0LCAwLCA1NjgzLCAwLCAwLCA3ODExOSwgMTU0OSwgMCwgCi0gICAgMCwgMTIwMzk4LCA1NjgyLCA2MjA2LCA4NjcwLCAxMDI1NiwgNTY4MCwgOTE3NTY4LCAxMDAwMSwgMCwgNjk3NjgsIDE0NDksIAorICAgIDE5NDY4NSwgNzQ0MTYsIDAsIDAsIDc3OTg4LCAyNjMsIDEwNDQ5LCA0MTI4OCwgMCwgNDE4MzksIDc4Mzg3LCA5ODM0NzcsIAorICAgIDc3OTg2LCAwLCA2OTMxLCA2OTcyMiwgNjQzNTUsIDcxNzcsIDEyMDUzMCwgMCwgMCwgMCwgNDI2MiwgMTAyODUsIDEwNzIyLCAKKyAgICA0MjAyMCwgMCwgNjgwNiwgNjk5MiwgNDIwMTksIDAsIDQxMjkwLCA5ODM0NTEsIDc1MCwgMCwgMCwgMTAxNjMsIDYzOTEzLCAKKyAgICA3NDA2NiwgNzAzMiwgNTk1NCwgNjQ5MzEsIDQzMTQsIDAsIDE5OCwgNjg0NTMsIDczMCwgMTIwMDk0LCA2MzkwNywgNzc5OTMsIAorICAgIDc4ODkxLCAxMzE2NSwgNzEwNywgNzQxNzEsIDQyODA0LCA2NzgsIDgyNDAsIDc4MDE1LCAxMjg3ODQsIDQxMzc4LCAxMTAwOCwgCisgICAgNjkzOCwgOTIyMjIsIDkyNjM3LCAyMDk3LCA2NjI0NiwgMTIwNTYwLCAwLCAwLCAwLCAzODkyLCA2ODYzMiwgNjk2NDIsIAorICAgIDY3MTIsIDY2MDQ1LCA0MTQ3MCwgNjQ4MDUsIDAsIDAsIDAsIDY0ODAxLCAwLCA0OTcsIDEyMTAwLCA1OTUzLCA5MjY2NywgCisgICAgNzc5NiwgNjk2NjksIDQzMjU0LCA3MzgzMSwgMCwgMTAyOTMsIDU5NTIsIDEyODEsIDAsIDAsIDAsIDEwNjc3LCA2MDQsIAorICAgIDQxMDk3LCA5MTgyLCAxODU5LCAwLCA5MjYwMywgMzQyNSwgMTI3NDg4LCAwLCAyODM2LCAwLCAwLCA5NzA3LCAwLCA0MzIwMiwgCisgICAgMCwgMCwgNjUxOTksIDE3MzgsIDkxNzgxOCwgMTI4MTU4LCAyODMyLCA5MjcwMiwgOTY3MCwgMTI5MzcsIDAsIDY2Mzc0LCAKKyAgICA5MTc5NTYsIDAsIDI4MjIsIDY4MTIyLCA0NDM2LCA5MjUxOSwgOTgzNDU4LCA3Mzc1MiwgMCwgNjQ4NzIsIDkyMzQwLCAKKyAgICAxMzMxLCAwLCAwLCAwLCAxMjcwOCwgMCwgNTA5MCwgNTA4OSwgMCwgMCwgMTE5MTA5LCAwLCAxMjg2ODEsIDMxOSwgCisgICAgMTE4ODQ3LCA0MzQ3OSwgOTQ3NywgMCwgMCwgNTA4NywgOTIzMjUsIDc2NDAsIDk2LCA1MDg2LCAwLCA5MjM3OSwgMCwgCisgICAgNTA4NSwgNjQyODYsIDkyNjY1LCAwLCA0MTQyMiwgMCwgMTE5OTAxLCA0MjM1NiwgMzc3MiwgMCwgMCwgNTAxMSwgMCwgMCwgCisgICAgMCwgMCwgMTI3MTY1LCAxMjcyNDEsIDY2NzcsIDc2MDEsIDAsIDU5MSwgNjQ0MTksIDExODk1MywgOTIyNjIsIDAsIAorICAgIDExODkyMywgNzM3MzQsIDAsIDEwOTM5LCA2MTA2LCA2OTMzLCA0MTI3MSwgNjc2MCwgMTE5OTAzLCA0NTM0LCA0MTI3MCwgCisgICAgMTI4ODc2LCAwLCA2NTU3NCwgMCwgOTIyNCwgMCwgMzY3MSwgODk3NiwgMCwgMCwgNDEyNzUsIDYzNzIsIDEyODA4NCwgCisgICAgNTUyNjEsIDc5NjMsIDYzNzEsIDAsIDU2OCwgMCwgNDEyNzMsIDk4MzQ2NSwgMCwgNjcyOCwgMCwgOTcxNSwgMCwgODI1OCwgCisgICAgMTE3NTMsIDc0ODIwLCAwLCA5NjAyLCAxMTg5MTksIDQyLCAwLCA0MzY4OCwgMCwgMCwgNzQ1OCwgMCwgMCwgNjUzODUsIAorICAgIDExOTkwMCwgMCwgMTE5NTgsIDAsIDkxNzgyMiwgMCwgNjI1NCwgNDI3MjEsIDY2MzM2LCA4MDQ1LCAxMTU1MCwgMCwgMCwgCisgICAgOTgzMzQxLCA0Mjg1OCwgMTE3ODksIDY1ODY4LCA1NTU3LCAxMDEzMywgOTczNywgMTMxMDksIDAsIDk0NjcsIDU1NTgsIAorICAgIDg4NzgsIDEyODEzNiwgMTk1MDM2LCA3NDUxLCA2NzA2LCAxMDE0NiwgMCwgOTA4NiwgNjQ1NjYsIDAsIDY0NTg0LCA3NDM3LCAKKyAgICA3NDU0LCAxMjU5NCwgMTI4NjkwLCA2ODM2MiwgNDU0NiwgNzczMSwgMCwgMTE5OTA5LCA3NDI0MywgMCwgMzgwNSwgMCwgCisgICAgMTk0NTY1LCA0NDAwMSwgNDEwMDgsIDAsIDYzMDcsIDE5OTQ5LCAwLCA3NTQ0LCAwLCA0MzQ2OSwgMCwgMCwgMTAxNTIsIAorICAgIDY0NDIyLCA2NTA5MSwgMTE5MTEzLCA3NjAyLCA2NDcyOSwgMCwgNDM1MjEsIDAsIDQyMzAyLCA0MzcxMSwgNDM1MjMsIAorICAgIDQxNDQ3LCA1NTU5LCAwLCA4NzA0LCAyMzk3LCA1NTU2LCAwLCAwLCAwLCA5MDExLCA5NjMwLCA5MjYzMywgMCwgMCwgNTUwNiwgCisgICAgMCwgMTkxMSwgNjY2NTIsIDAsIDk5NjEsIDg4NDUsIDY2Njk4LCAwLCAxMDc5MiwgODg4OSwgMCwgMjA5OCwgMCwgNjQ3NTEsIAorICAgIDAsIDY2NjIyLCAwLCAwLCA3NDM2NCwgMCwgMCwgOTgzNTQwLCA3NDM2NSwgNzU1MiwgMCwgMCwgNjUzODQsIDcyMjMsIAorICAgIDQ1NTksIDAsIDE5NTYsIDQzMTM4LCA3MDI0LCA2NTcyOCwgNjQ1MDEsIDEyMTAsIDE5NTA3NywgNjUxNzUsIDEwMTg0LCAKKyAgICA0MzE0MCwgNDM2NTQsIDAsIDAsIDAsIDM4LCA4NTMzLCA2NjY2OSwgMTE5MTI0LCAwLCAwLCAwLCA0MzU3LCAwLCAxMTk4MzcsIAorICAgIDAsIDc0MjMzLCA5OTY3LCAxMTk4NTIsIDQyODYwLCAxMTk4MzgsIDEwOTQxLCA2NTcyMSwgNjk2MiwgMCwgMCwgMTE5MzI0LCAKKyAgICAwLCAxMTAxNCwgMTI3OTcyLCA4OTQyLCAxMjAwMCwgNjkyMjQsIDkyMjY3LCAxMjg1MzYsIDExOTc0LCA5MjIxMywgNDI3NzIsIAorICAgIDEyNzUxOCwgMTE2NTAsIDUwMTMsIDkyNjYzLCAxMjg2NzcsIDY2MjEwLCAxMTg5MTQsIDY2MTMsIDkyNDc2LCAwLCA0MzgxOSwgCisgICAgOTgzNTA1LCAwLCA2NDcxNCwgMCwgMCwgMTIxNjIsIDEyMTIwLCA0MzQ3NiwgOTgzNTAxLCAxMTAyNCwgNzQ4MTEsIDY2MjI4LCAKKyAgICAxMDU2MywgMCwgMTI3MTk2LCA0MzUyMiwgMjQ2MiwgMCwgMTgzNywgMCwgNjM5NzIsIDY5NTcsIDAsIDEyMDU1OSwgNDk1MiwgCisgICAgNjU3MTgsIDY1ODI3LCA1NTA0LCA2NTcyMCwgNjU3MTQsIDY1NzE1LCA2NTcxNiwgMCwgMTI3MDA1LCAxMjcxMTksIDMxMDksIAorICAgIDYzOTc1LCA3NDAyOCwgMCwgODEwNywgMTE5MjM0LCAxMTI3LCA0NTUsIDAsIDYzOTY4LCAxMjc5MjQsIDM0ODMsIDExOTU5MywgCisgICAgMTk4OSwgMCwgNjk2NzgsIDkxMDQsIDM1MDMsIDY1Mzc1LCA5MjUwOSwgNjY5NCwgNDI2MzMsIDE4NjQsIDAsIDc0MzA2LCAKKyAgICA0MTQ0NiwgMjU0MCwgNzczNiwgMCwgNzQwNjQsIDAsIDEwNTIxLCAwLCA0MjE3MywgOTcwNSwgNzQxMjQsIDg2MDQsIDY5NTUsIAorICAgIDEwOTE2LCA0MzY4NCwgNjE0OSwgMzg4NywgMTk5NTYsIDE0MTEsIDI4MjQsIDAsIDEwMTA2LCAxMjc4NjIsIDE0MDMsIAorICAgIDEyODgzOSwgMTM0NywgOTYzMSwgNzQ0NDQsIDAsIDAsIDAsIDAsIDg2NDAsIDAsIDI1OCwgMTY1NCwgMCwgMCwgMCwgCisgICAgNDMzMTQsIDAsIDAsIDQwNDIsIDExNDc4LCAyODczLCA2Mzk3NywgMTE1MjIsIDQxNjY4LCA4NTQ5LCAxMDg2MSwgMCwgCisgICAgNjM5NzYsIDAsIDY4NjIzLCAwLCA3NDU4NSwgNDEzOTEsIDAsIDkxNzkwMywgMzc2LCA2OTg3LCA5MjIxLCAwLCAwLCA4ODIzLCAKKyAgICAxMjg2OTcsIDEyOTQzLCA2NTE4NSwgNDE4NjksIDEyNjE5LCAwLCAxMDE1NCwgMCwgNzQ0MzksIDIwMzksIDAsIDc0NDYsIAorICAgIDE2ODQsIDYzOTc5LCAxMDk3NCwgNDU4LCAxMjA2MjAsIDAsIDY5NzkxLCAxMjcxNjEsIDExOTE2LCA2NTAxNiwgMCwgCisgICAgNjk2NzEsIDQyMTE1LCAwLCAxMjI4OCwgNzgwNTcsIDAsIDE0OTMsIDQyMTExLCA3NTUzLCA0MDk3LCAxMjgxOTksIDEzMDgwLCAKKyAgICAwLCA2NTgwOCwgNjYxMCwgNjAzMCwgODA1OSwgNzUwOCwgMTMxMzEsIDAsIDAsIDAsIDg3OTQsIDQxMjc4LCA0MTYyOSwgCisgICAgMTIxNTQsIDEyODE5MiwgNDEyNzcsIDY0NjU4LCAwLCA2NDM4MCwgNjYyNSwgNzQzNTQsIDE5OTA0LCAwLCAwLCAwLCAKKyAgICA2NTM3MSwgNzA3OCwgMCwgODMzLCAwLCA2MzY5LCAwLCAxMDk3OSwgNDE5NTMsIDAsIDQxNDM0LCA2MDYyLCAwLCAwLCAKKyAgICAxOTkxNiwgNjkxMywgOTMzLCAxMzQxLCA5ODQyLCA2NzIwLCA2NTc0NCwgMCwgOTgzMzM2LCAxMjgyOTUsIDAsIDc0MDUsIAorICAgIDEwMTA1LCA2NTgxMCwgMCwgNDE2MzIsIDc0OTMsIDU1MjkwLCAwLCA0MTYyMiwgMCwgMCwgMTE5NTU2LCA3NDU4NCwgNzYzMiwgCisgICAgOTcxNiwgMTk5NTQsIDk4MDUsIDU5OTAsIDkwMCwgMCwgNjM5NTcsIDAsIDAsIDM2MTIsIDAsIDY0Mzc2LCAwLCA1Mzg5LCAKKyAgICA5MjU5NywgMCwgNjU5MzgsIDI4MzksIDk2MjEsIDU4MiwgMCwgNzQzNjgsIDM3NDksIDY5NDksIDc1NjksIDc0MDYxLCAwLCAKKyAgICAwLCA2OTU2LCA0NDAzLCAxOTk2MiwgNjU1NTksIDMyOTksIDAsIDkxNzU2NiwgMTE5MTI3LCA5MDAyLCAwLCA3NDM3MiwgCisgICAgNzQyMzYsIDg0NzgsIDc1OTgsIDU0NiwgNDI0NjksIDY1NTY5LCAxOTE4LCA5NTQyLCA0NzIsIDc3MTYsIDEwMzE5LCAKKyAgICAxMDM4MywgNjk5NiwgMCwgNjM5NTIsIDg0MjUsIDM2MDIsIDgzMjgsIDExNzY0LCAxMTg4OTQsIDAsIDY5Nzk2LCA0MTE4MywgCisgICAgMTI5MDcsIDEwMjcxLCAxMDI4NywgNjg0LCA0MzUyNSwgMCwgMjg1NCwgMTE5NTg2LCA0NTkyLCA2NTc1NSwgMCwgOTIyNTYsIAorICAgIDExOTYzLCA0MzYyMCwgMCwgNzg4ODksIDAsIDAsIDEyODgwOSwgOTg4MSwgNDMxMTUsIDY1NzU3LCAzNDE1LCAwLCAwLCAKKyAgICA4NjQ4LCAwLCA2NzQxLCA0MzA0NywgMCwgMTMxODAsIDEyODUxNywgNDE4LCA5MTc5NzIsIDY0NDk1LCAxMDI5NSwgMTAzMjcsIAorICAgIDEwMzkxLCA0MTc1MiwgNzQzMzksIDg2NDEsIDQxNDQ5LCAwLCA3NDEwMCwgMCwgMTA5MTEsIDY5NDIsIDAsIDEwMjQsIAorICAgIDQyODQ5LCA0MTc1MSwgNjk3NzYsIDg5NDEsIDk4MzMwMCwgNDU1NCwgMCwgOTAyMywgMTE2ODUsIDAsIDk5MjgsIDc4NjE3LCAKKyAgICAwLCAxMTQzNywgNDM3NDEsIDkyMTYzLCAxMjA3MDAsIDYzOTY3LCAwLCA0MTIwNiwgMTIwNzI0LCA5MDQ5LCA0MTE4NSwgCisgICAgNDMxNjYsIDAsIDExNjgwLCA5MjYxOSwgMTE2ODYsIDc4NTQ0LCA2NTIyNCwgNDU2NSwgNDY1NSwgMTE5NTUzLCAwLCAKKyAgICA5MjE4MywgNjQ1MjMsIDEwMzQzLCAxMDQwNywgMCwgNjY2NzEsIDExNDY2LCAwLCAxMjgwMDMsIDQyODkwLCAwLCAxMjA1MCwgCisgICAgNjgyMDEsIDI4NjAsIDAsIDAsIDAsIDQyNzkyLCA1NzQzLCAxMDQyNCwgMTIwNjUsIDQyODcyLCAwLCA5MjM0MiwgMCwgCisgICAgODg3NSwgMCwgMCwgOTE3OTkxLCA3NTMxLCAxMjg0NywgMjQxMywgMCwgNzg2MzUsIDk2MiwgMCwgMTI4NTUsIDQxMTk2LCAKKyAgICA0MjU2NCwgMCwgMTU4MiwgOTgzNDUwLCA1NTA4LCAwLCAwLCAwLCAxMDgwMSwgMCwgOTIzNTQsIDAsIDcxNzMsIDQ5NiwgCisgICAgMTA0MzksIDQzMTMsIDY0NjA3LCA2OTYzOCwgNzg2MCwgMCwgOTA2LCA0Mjc5MywgMjg0MiwgNjQwNSwgNjQ3MjIsIDEzMTMyLCAKKyAgICA3OTgsIDY0Njk0LCAxMjgwMSwgODQwNiwgMTE1MywgOTIxNzMsIDY0Nzg4LCAwLCA4MDU0LCA5MTc0LCAxMjg2NTIsIAorICAgIDkxNzk3NiwgOTk2NCwgMCwgNDE2MTEsIDQ2NDIsIDY2NTc0LCAxMTU1NiwgOTE3OTgyLCAwLCA3ODg1NywgNDIwODksIAorICAgIDc4ODU1LCA5MDA4LCAwLCAwLCAxOTUwOTYsIDQyMDc5LCA5MTc5ODEsIDc3OTI0LCA0MjUxMywgMCwgNDI4NDIsIDczOTg1LCAKKyAgICA2NTI4NSwgMTE4OTc0LCAxMjcwMDMsIDk4MzQzNywgMCwgMCwgMCwgMTEzMzUsIDY0MDY5LCA0MjA5MywgMzkyMCwgMCwgMCwgCisgICAgMCwgMCwgNDU4MCwgNDE5NjcsIDk4MzQ2NywgNjQzODQsIDkyMTY3LCAxMTkxNTgsIDMwMjEsIDQyMDA0LCAwLCAwLCAKKyAgICA0MjMxNywgNDE5OTgsIDAsIDY5NDYsIDAsIDAsIDAsIDEyODE5MywgNjUyMDQsIDAsIDY4MTEzLCA0MjY5MCwgOTg4MCwgCisgICAgNDIwMTAsIDc0ODI0LCA2NDU4OSwgMTAxMTEsIDY0ODc1LCAxMjc4ODAsIDY4Mzk5LCA0Mzk5OCwgMTEzNjAsIDAsIDAsIDAsIAorICAgIDExODgyNiwgNDIxNDksIDAsIDAsIDAsIDY0OTQxLCA3NzkxOSwgMTIwNDIxLCAxMjgwNzcsIDAsIDU1MjQ3LCA0MTEwLCAKKyAgICA2NjAwNSwgNjk1OSwgMTA5MjksIDExOTExMCwgMCwgNjY3MDMsIDc3OTIxLCA4NjE3LCA0MTk4MiwgNjAyNSwgNjkyNDIsIDAsIAorICAgIDAsIDAsIDAsIDk1OTcsIDQyMDk5LCA0MzE3MiwgMCwgMTAxMTcsIDk4MzUyNywgOTIyOTcsIDQxNjM2LCAwLCAwLCAKKyAgICAxMjA2ODEsIDgzMDEsIDAsIDAsIDE4NywgMCwgNjU2NjksIDEyODMzOSwgNDk2MywgMCwgMTI3NTE3LCAwLCA4OTY0LCAKKyAgICA2NTY3NiwgNjU3ODUsIDAsIDQxOTQ4LCAwLCAwLCAwLCA0MTk0MiwgNjU0NDksIDMxNjAsIDEwMDgxLCAxMzIyNiwgNDIxMjEsIAorICAgIDQyNDc1LCA0MjY2MywgMTI4MjEwLCA0MTc2NiwgMCwgNjU4ODIsIDc4ODQ5LCA0MTc2MCwgMTE4OSwgOTA1LCA0ODAsIAorICAgIDEwOTg1LCA0MTczMywgNjc4NTksIDk2MjksIDY3NDIsIDE3NDUsIDQzNjI1LCA3MzgzNSwgNzg4OCwgMCwgMzk4MCwgMCwgCisgICAgNDI2NTYsIDQxNTA3LCA4ODA2LCA3MDIzLCAwLCA3NDI3OSwgOTQ0NywgNzg2NTEsIDc4NjcsIDY5MjE4LCA2MjM2LCAwLCAwLCAKKyAgICAxMDUwNSwgMCwgMTI4NTEsIDExODk0OCwgMzQ4LCA1NDc0LCAxMjg4NDMsIDMxMDMsIDAsIDQxNzUzLCAxMjg1NDAsIDAsIDAsIAorICAgIDc4ODQ0LCA3ODg0NSwgNDE3MzksIDc4ODQzLCA0MjUxNSwgMTA5MzEsIDQxNzU2LCA0MzM0NywgNDI1NjAsIDUzOTEsIAorICAgIDQxNzQ2LCAxMTkxNDcsIDkyNTkxLCA0MTI1OSwgNTU2MSwgNzQzNjAsIDI2OTEsIDAsIDY1NTUzLCA3OTMzLCA1NTYyLCAKKyAgICA2OTgwMCwgMTI4MjY1LCA0MTI2MiwgMTI4MTQ2LCA2NDQyMSwgNzQ4NDYsIDQxMjUxLCAwLCAwLCAzOTc5LCAwLCAwLCAKKyAgICA3NDgxMywgMCwgMCwgMCwgMCwgOTI1MjQsIDQxMjY2LCAwLCAwLCAxMjg4MzYsIDEwNTg1LCA2NTc0MSwgNDE3MzcsIDk1NzQsIAorICAgIDI2NjYsIDAsIDQxNzM4LCA4MzEsIDQxOSwgMTMxMjYsIDEwNzE2LCAwLCA0MjgyMiwgMCwgNjQzNCwgMCwgNjkzOSwgNzc2NiwgCisgICAgNjQzMiwgMTI4MTA2LCAwLCA5MTYsIDc2OSwgNDE3NDIsIDExOTY4LCA3NDgwNSwgNjQzMywgNTU2MywgNTQ3LCAxOTQzLCAKKyAgICA2NDM5LCA1NTYwLCA0OTk0LCA0ODcsIDAsIDQ0OTcsIDM3NTQsIDEyNzA1NiwgMTIwNDI0LCA5MDM5LCAwLCA0MTc3NiwgMCwgCisgICAgODcxNiwgMTU5NSwgNDE2MTUsIDAsIDAsIDc0MjYwLCAwLCA0Mjg1NCwgNDMyMTksIDEyODcwOSwgMCwgMTIxODUsIAorICAgIDEyODg3OSwgMCwgNjgzNTUsIDY4MzU3LCAwLCA0Mjg1NiwgODYzNCwgMCwgOTgzNDY5LCA0MjA5LCAxMjA3MDIsIDAsIAorICAgIDY1ODc5LCA0MTUzOCwgNjU2MTIsIDEyNzU0MywgNjY5LCA1Njc5LCAwLCA2OTc4NiwgOTI1NDAsIDAsIDAsIDU2NzgsIAorICAgIDExODIxLCAwLCA2NzExLCA0NjAsIDAsIDAsIDAsIDAsIDEyMDc0NywgMCwgMCwgNzgwNTAsIDExOTAyMiwgMCwgMCwgMCwgCisgICAgNzc4MiwgOTA0NCwgNDk3NCwgMTE3NjAsIDc4NDk0LCA3NTc3LCA2NTcxMSwgNDE5MTIsIDEyMTYsIDAsIDEyODA3OSwgCisgICAgNTc5MiwgMCwgMCwgNzg1MDEsIDAsIDI5MzMsIDEyMjQ0LCAwLCA1NjgzLCAwLCAwLCA3ODExOSwgMTU0OSwgMCwgMCwgCisgICAgMTIwMzk4LCA1NjgyLCA2MjA2LCA4NjcwLCAxMDI1NiwgNTY4MCwgOTE3NTY4LCAxMDAwMSwgMCwgNjk3NjgsIDE0NDksIAogICAgIDEwMjQxLCA3ODI5MCwgMTI4MjI4LCAwLCAxMDU1MiwgNjQzNDIsIDQxOTIyLCAxMjg1NDgsIDg1ODQsIDAsIDU1NjcsIAotICAgIDI3MTcsIDAsIDAsIDU1NjQsIDQyODg2LCA0MTkwOCwgNDI4ODIsIDU1NjUsIDAsIDEyODAyNiwgMCwgNjU3MDgsIDY1NzA5LCAKLSAgICA1NTY2LCA2OTgwMywgNjU3MDQsIDY1NzA1LCAxMTkwNCwgNDI4NzUsIDQzMzczLCA0MjUzOSwgNTk0MiwgODQ2OCwgCisgICAgMjcxNywgMCwgMCwgNTU2NCwgNDI4ODYsIDQxOTA4LCA0Mjg4MiwgNTU2NSwgOTgzMDUwLCAxMjgwMjYsIDAsIDY1NzA4LCAKKyAgICA2NTcwOSwgNTU2NiwgNjk4MDMsIDY1NzA0LCA2NTcwNSwgMTE5MDQsIDQyODc1LCA0MzM3MywgNDI1MzksIDU5NDIsIDg0NjgsIAogICAgIDEyMDU2MSwgMTAzNjEsIDEwNDI1LCA2NTY5NywgNjU2OTgsIDY1Njk5LCAwLCA2NjU5OCwgMCwgNjQ2NjQsIDEwNjQ3LCAKICAgICA3ODcwMiwgNzg3MDMsIDc4NjkwLCA0NTcsIDc4NTAyLCA2NTcwMSwgMTkzNCwgNDMwMDYsIDAsIDg4MDIsIDc4NzEwLCAKICAgICA2NTEzMCwgMTE3NDcsIDc4NzA5LCA2MDg3LCA3ODcwNSwgNzg3MTYsIDQxNzU3LCA3ODcxMSwgODA0MywgODk1MCwgNjU2OTQsIAogICAgIDY0NDg1LCA0MzUzNCwgMTA0NTcsIDAsIDExOTYxLCA3ODcyNSwgNzg3MjIsIDc4NzIzLCA3ODcyMCwgNzg3MjEsIDAsIAogICAgIDY1NTE1LCA5NDk5LCAxMDAzNSwgMTMwNjksIDAsIDAsIDk4ODksIDY4MTg0LCA0MjgwNiwgMCwgNzI1NiwgMCwgMCwgMTY2NywgCi0gICAgNDIxNjEsIDAsIDQyNDI4LCAwLCA2OTM0LCAwLCAxMDgwMiwgNjQ4NjEsIDY1NTYsIDc4MzkwLCAwLCA4MTAxLCAzNjEwLCAwLCAKLSAgICA0MTc0OCwgNDk5NSwgOTU1LCA2NTkwNywgMTE5MjA4LCA1MzUwLCA2NDMzOSwgNzgzMDYsIDY0NTQ5LCAxMDg3NSwgCi0gICAgMTI4NjYyLCA1NDc3LCA2NTY5MiwgMCwgMTI4NTMyLCAxMjAzOTcsIDEyODk2LCAxMDQ1NiwgOTE3OTU0LCAwLCAzODc0LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA2NTYwMywgMCwgNjU2ODcsIDAsIDQxMDM4LCA3NDAwOSwgMTE5NTcwLCA0MjIzOSwgODUzNiwgCi0gICAgNzg3NDAsIDAsIDc4NzI2LCA3NDQzMiwgNzI0LCAwLCAxNDU1LCA3ODc0OSwgNzE4MywgNjQ1ODMsIDc4NzQ3LCA2ODQ0MywgCi0gICAgNDE3NSwgNzg3NDEsIDQzNjE0LCA2OTgwMSwgOTM5LCAwLCA0MzUyMCwgNjg2MTMsIDc0NTY5LCA5MTc5NTgsIDAsIDc4NzYzLCAKLSAgICA3ODc2NCwgNzg3NjAsIDEwNzg4LCA2MDg4LCA3ODc1OSwgNzg3NTUsIDE5MCwgMCwgMTI1OTMsIDAsIDgxODgsIDY0NDA4LCAKLSAgICAwLCA0NDE3LCAwLCA5MjI2MSwgNjM3MCwgMCwgNzgyNywgNjg0NDEsIDY5NjUsIDAsIDAsIDEzMjAxLCAxMjgyMDUsIDAsIDAsIAotICAgIDc0MzgyLCA3Mzc4MSwgNzkxOCwgNzM5ODgsIDAsIDAsIDkxNzg4NCwgMTcyOCwgMCwgMTIwNzEwLCAxNzgsIDEyOTcyLCAKLSAgICA5MjY3OSwgMCwgOTE3ODg3LCA5MjU2MywgMCwgMCwgNzgzMjcsIDEyMDQwNSwgNjU2OTAsIDAsIDAsIDExOTA1NCwgMCwgCi0gICAgOTI1MiwgOTE3ODg5LCA0NjUyLCA2ODM3MSwgMCwgMCwgMCwgMTMwNjUsIDk5MjMsIDEwODA2LCAwLCAxMTc2MywgMCwgCi0gICAgMTIwNjg4LCA2NzIzLCA3ODE4NywgMCwgNjk5MywgMCwgMCwgODMzMywgMCwgMCwgMTEzOTAsIDAsIDc0NDY0LCAwLCAKLSAgICA5MjMyMCwgNzQwODAsIDAsIDAsIDExOTEwLCA5MjU1OSwgODI3OCwgODk2MywgNDAzNCwgMTI4NTYwLCAwLCA2NTM0NCwgCi0gICAgMTIwNTE3LCA0MTc0NywgMCwgMCwgODY3NywgMCwgMTI3MDcsIDkzNTAsIDY2MDM3LCAxMjgxODAsIDg4MzYsIDEyMzE1LCAKLSAgICAxMjc0NywgODMwMCwgMCwgMCwgNzQ5MSwgODg1NiwgMTI4MDY0LCAwLCA0MzE1MCwgMTI3NzY4LCAxMjA0MDQsIDY1Mzg5LCAKLSAgICAxMjA0MDIsIDEyMDQwMywgMTA4MTMsIDI1OTIsIDEyODUzLCA0MzI2OSwgNzI2MywgMTIwMjQ0LCA2NTM2LCAxMjAyMzgsIAotICAgIDEyMDIzOSwgNjU1MTYsIDEyMzIxLCAxMjAzOTEsIDEyMDM4OCwgNTUyODcsIDEwMDA3LCAxMjAyNDYsIDk1ODgsIDEyMDI0OCwgCi0gICAgMTU5NiwgMTIwMzgzLCA0MTk5NCwgNjU4MDEsIDEyODgwOCwgMCwgNjY1NzIsIDAsIDAsIDEwNjEzLCA2Njk3LCAxMjgwNSwgCi0gICAgNDE5MjgsIDQwOTgxLCA3ODQwMywgNzg0MDksIDUwMDYsIDY0MzI4LCAwLCA5OTMxLCAwLCA4ODI1LCA3NDU1NSwgNjU5NDAsIAotICAgIDQzMjU5LCAwLCA2MTA3LCAwLCAxMTkxNzcsIDAsIDc4NDAxLCAxMjg2NDEsIDExNzgzLCAzMzUsIDEyMDIyNywgNjQ2ODksIAotICAgIDQzOCwgNDUxMCwgNTc2NSwgODcyMSwgMTIwMjMzLCAxMTkyMjcsIDYwOTIsIDEyODQwLCA0MzExMiwgODg3NiwgMTIwMjMxLCAKLSAgICA4MDk2LCAxMDI4NCwgMTI4NTE1LCAwLCAwLCAxMDM4MCwgODczMywgMCwgMTI4MjQwLCA0MTYwMiwgMCwgOTIzMDgsIAotICAgIDc0ODMxLCA5MTc5MDEsIDAsIDczNzQ3LCA2NTM5OSwgMCwgNjQ1OTEsIDQyNDA1LCAwLCAxMjA4MjAsIDg0MywgMTE1NDEsIAotICAgIDAsIDkxNzg5OCwgMjA2NSwgNDE5MzUsIDc0NDk2LCA0MTkwMiwgMCwgMCwgMjE1LCA0MTI1OCwgNzc4NzUsIDQzMTU5LCAKLSAgICAxOTUzLCA5NTc5LCA0MTkzOCwgMTI1NiwgMzkxMCwgOTQwNywgNjI0MiwgMCwgMCwgNDEyNTcsIDQxOTAwLCA4Njc1LCAKLSAgICAxMDcwMCwgODgwNSwgMTc0MiwgMCwgOTMzMywgODIwMiwgMTI3NzUwLCAwLCAwLCAwLCAwLCA3Mzg4MiwgNDk5LCAwLCAKLSAgICA0MzQ2NywgMCwgNDM4MTgsIDAsIDE3MTIsIDU5MzIsIDc3ODQ1LCA0MTc2MiwgMCwgMCwgMTE5NjcsIDE3NzUsIDAsIDAsIDAsIAotICAgIDAsIDEyODAwOSwgOTQ1OCwgMCwgNjQ3MCwgOTE4MCwgMTIwMzgwLCA0MzE3NiwgMCwgMCwgNDI3ODIsIDAsIDAsIDAsIAorICAgIDQyMTYxLCAwLCA0MjQyOCwgMCwgNjkzNCwgMCwgMTA4MDIsIDY0ODYxLCA2NTU2LCA3ODM5MCwgMCwgODEwMSwgMzYxMCwgCisgICAgOTgzMDQxLCA0MTc0OCwgNDk5NSwgOTU1LCA2NTkwNywgMTE5MjA4LCA1MzUwLCA2NDMzOSwgNzgzMDYsIDY0NTQ5LCAKKyAgICAxMDg3NSwgMTI4NjYyLCA1NDc3LCA2NTY5MiwgMCwgMTI4NTMyLCAxMjAzOTcsIDEyODk2LCAxMDQ1NiwgOTE3OTU0LCAwLCAKKyAgICAzODc0LCAwLCAwLCA5ODMzNjMsIDAsIDAsIDAsIDY1NjAzLCAwLCA2NTY4NywgMCwgNDEwMzgsIDc0MDA5LCAxMTk1NzAsIAorICAgIDQyMjM5LCA4NTM2LCA3ODc0MCwgMCwgNzg3MjYsIDc0NDMyLCA3MjQsIDAsIDE0NTUsIDc4NzQ5LCA3MTgzLCA2NDU4MywgCisgICAgNzg3NDcsIDY4NDQzLCA0MTc1LCA3ODc0MSwgNDM2MTQsIDY5ODAxLCA5MzksIDAsIDQzNTIwLCA2ODYxMywgNzQ1NjksIAorICAgIDkxNzk1OCwgMCwgNzg3NjMsIDc4NzY0LCA3ODc2MCwgMTA3ODgsIDYwODgsIDc4NzU5LCA3ODc1NSwgMTkwLCAwLCAxMjU5MywgCisgICAgMCwgODE4OCwgNjQ0MDgsIDAsIDQ0MTcsIDAsIDkyMjYxLCA2MzcwLCAwLCA3ODI3LCA2ODQ0MSwgNjk2NSwgMCwgMCwgCisgICAgMTMyMDEsIDEyODIwNSwgMCwgMCwgNzQzODIsIDczNzgxLCA3OTE4LCA3Mzk4OCwgMCwgMCwgOTE3ODg0LCAxNzI4LCAwLCAKKyAgICAxMjA3MTAsIDE3OCwgMTI5NzIsIDkyNjc5LCAwLCA5MTc4ODcsIDkyNTYzLCAwLCAwLCA3ODMyNywgMTIwNDA1LCA2NTY5MCwgCisgICAgMCwgMCwgMTE5MDU0LCAwLCA5MjUyLCA5MTc4ODksIDQ2NTIsIDY4MzcxLCAwLCAwLCAwLCAxMzA2NSwgOTkyMywgMTA4MDYsIAorICAgIDAsIDExNzYzLCAwLCAxMjA2ODgsIDY3MjMsIDc4MTg3LCAwLCA2OTkzLCAwLCAwLCA4MzMzLCAwLCAwLCAxMTM5MCwgMCwgCisgICAgNzQ0NjQsIDAsIDkyMzIwLCA3NDA4MCwgMCwgMCwgMTE5MTAsIDkyNTU5LCA4Mjc4LCA4OTYzLCA0MDM0LCAxMjg1NjAsIDAsIAorICAgIDY1MzQ0LCAxMjA1MTcsIDQxNzQ3LCAwLCAwLCA4Njc3LCAwLCAxMjcwNywgOTM1MCwgNjYwMzcsIDEyODE4MCwgODgzNiwgCisgICAgMTIzMTUsIDEyNzQ3LCA4MzAwLCAwLCAwLCA3NDkxLCA4ODU2LCAxMjgwNjQsIDAsIDQzMTUwLCAxMjc3NjgsIDEyMDQwNCwgCisgICAgNjUzODksIDEyMDQwMiwgMTIwNDAzLCAxMDgxMywgMjU5MiwgMTI4NTMsIDQzMjY5LCA3MjYzLCAxMjAyNDQsIDY1MzYsIAorICAgIDEyMDIzOCwgMTIwMjM5LCA2NTUxNiwgMTIzMjEsIDEyMDM5MSwgMTIwMzg4LCA1NTI4NywgMTAwMDcsIDEyMDI0NiwgOTU4OCwgCisgICAgMTIwMjQ4LCAxNTk2LCAxMjAzODMsIDQxOTk0LCA2NTgwMSwgMTI4ODA4LCAwLCA2NjU3MiwgMCwgMCwgMTA2MTMsIDY2OTcsIAorICAgIDEyODA1LCA0MTkyOCwgNDA5ODEsIDc4NDAzLCA3ODQwOSwgNTAwNiwgNjQzMjgsIDAsIDk5MzEsIDAsIDg4MjUsIDc0NTU1LCAKKyAgICA2NTk0MCwgNDMyNTksIDAsIDYxMDcsIDAsIDExOTE3NywgMCwgNzg0MDEsIDEyODY0MSwgMTE3ODMsIDMzNSwgMTIwMjI3LCAKKyAgICA2NDY4OSwgNDM4LCA0NTEwLCA1NzY1LCA4NzIxLCAxMjAyMzMsIDExOTIyNywgNjA5MiwgMTI4NDAsIDQzMTEyLCA4ODc2LCAKKyAgICAxMjAyMzEsIDgwOTYsIDEwMjg0LCAxMjg1MTUsIDAsIDAsIDEwMzgwLCA4NzMzLCAwLCAxMjgyNDAsIDQxNjAyLCAwLCAKKyAgICA5MjMwOCwgNzQ4MzEsIDkxNzkwMSwgMCwgNzM3NDcsIDY1Mzk5LCAwLCA2NDU5MSwgNDI0MDUsIDAsIDEyMDgyMCwgODQzLCAKKyAgICAxMTU0MSwgMCwgOTE3ODk4LCAyMDY1LCA0MTkzNSwgNzQ0OTYsIDQxOTAyLCAwLCAwLCAyMTUsIDQxMjU4LCA3Nzg3NSwgCisgICAgNDMxNTksIDE5NTMsIDk1NzksIDQxOTM4LCAxMjU2LCAzOTEwLCA5NDA3LCA2MjQyLCAwLCAwLCA0MTI1NywgNDE5MDAsIAorICAgIDg2NzUsIDEwNzAwLCA4ODA1LCAxNzQyLCAwLCA5MzMzLCA4MjAyLCAxMjc3NTAsIDAsIDAsIDAsIDAsIDczODgyLCA0OTksIAorICAgIDAsIDQzNDY3LCAwLCA0MzgxOCwgMCwgMTcxMiwgNTkzMiwgNzc4NDUsIDQxNzYyLCAwLCAwLCAxMTk2NywgMTc3NSwgMCwgMCwgCisgICAgMCwgMCwgMTI4MDA5LCA5NDU4LCAwLCA2NDcwLCA5MTgwLCAxMjAzODAsIDQzMTc2LCAwLCAwLCA0Mjc4MiwgMCwgMCwgMCwgCiAgICAgMTI4MzA5LCA3NDc3NywgMTIwNjY5LCA5NDE0LCAxMjAzODIsIDczNzgyLCA3Mzk2OSwgNTY1LCA0MjQ4NCwgNTc5NCwgMjAxLCAKICAgICAyNjYyLCA0MjI5MiwgMCwgODI1NCwgMCwgMTA5NzUsIDAsIDEyMDYyNSwgNzQ3NjMsIDEwMjIsIDQxMDgsIDM4ODAsIAogICAgIDc0MjQ3LCAwLCAwLCA5MjI2MywgOTE3OTgwLCA3NTA3LCAwLCA0MzE0OSwgMCwgNjUwMzEsIDc5NjEsIDE2MzYsIDAsIApAQCAtMTcwNTgsMTIgKzE3Mjg0LDEyIEBACiAgICAgMTA0ODAsIDAsIDAsIDc3OTM2LCA4MjY0LCAxMjYxMCwgMCwgNjQ1LCAwLCA3NjA5LCA0MDk3MywgMCwgNzM4MzMsIDc4MjQ5LCAKICAgICA1ODI0LCA5ODQsIDc3OTE4LCAxMDY4OCwgNTg1MSwgMCwgNzcyOSwgNzM5ODIsIDEyMDUxOCwgMCwgMTk1MDg2LCA0MzM2OSwgCiAgICAgMCwgMTI4MTQwLCA2ODQxNSwgMCwgNDUzOCwgMTIwNDA2LCA0MzE0MSwgMCwgMCwgNzQyMTQsIDczODg2LCAwLCAwLCAKLSAgICAxMTg5MDIsIDQzMDA1LCA3ODQ0OCwgOTU1MiwgMCwgMCwgMCwgMTI5OTcsIDAsIDAsIDAsIDAsIDIzODEsIDEyODgzLCAKKyAgICAxMTg5MDIsIDQzMDA1LCA3ODQ0OCwgOTU1MiwgMCwgMCwgOTgzMzIyLCAxMjk5NywgMCwgMCwgMCwgMCwgMjM4MSwgMTI4ODMsIAogICAgIDEwOTk0LCAxMDUyOSwgNDE5MDYsIDAsIDAsIDAsIDEyNDI1LCAxMDY2MSwgMTA4NTYsIDk2MTQsIDI0MjgsIDQxNDc4LCAKICAgICA4NTgyLCAxMDA2NCwgNzM5MzAsIDAsIDAsIDAsIDY0ODk2LCAxMTkxNjIsIDE5NTIsIDkyMTgxLCA4NDU1LCAxMDA4MiwgCiAgICAgMTE1NzUsIDAsIDExOTU2NiwgMCwgMTI4MDgsIDEyMTgzLCA2MTQ1LCAxMTg5NTUsIDY0OTI5LCA5MjQzMywgMCwgMCwgCi0gICAgNDMxODYsIDQyNTA5LCAwLCAzOTIyLCA5MTg3LCAwLCAwLCAxMDE5MSwgMTE5MDU3LCAxMTc1MiwgMzM1MywgOTM1OCwgMCwgCi0gICAgOTE3OTU3LCA2NjY4MCwgMTIwMDkwLCA4MjQ4LCA3OTMxLCA4NTU4LCA5Nzk1LCA2ODM4MCwgMCwgMCwgMTIwMDgyLCAKKyAgICA0MzE4NiwgNDI1MDksIDAsIDM5MjIsIDkxODcsIDk4MzM1OCwgMCwgMTAxOTEsIDExOTA1NywgMTE3NTIsIDMzNTMsIDkzNTgsIAorICAgIDAsIDkxNzk1NywgNjY2ODAsIDEyMDA5MCwgODI0OCwgNzkzMSwgODU1OCwgOTc5NSwgNjgzODAsIDAsIDAsIDEyMDA4MiwgCiAgICAgMTIwMDgxLCAxMjAwODQsIDQxMDI3LCAxMjAwODYsIDAsIDEyMDA4OCwgMTIwMDg3LCA3MDE5LCAxMjAwNzMsIDAsIDExNzUxLCAKICAgICAxMjAwNzgsIDc4Mjk0LCA2NDY1NywgODY1NywgMTIwMDQ4LCA4NTk0LCAxMjAwNjgsIDAsIDAsIDEyMDA2OSwgMTIwMDcyLCAKICAgICAxMjAwNzEsIDAsIDAsIDQzMTU0LCA0MTAyOSwgMCwgMTEzMzIsIDY1MzgwLCA3NzI4LCAwLCAxMTI5NCwgMCwgNjY2NjUsIApAQCAtMTcwNzUsMTc5ICsxNzMwMSwxODAgQEAKICAgICAxMDA5LCA5MjE3MSwgMjQwMiwgMjMzMywgNjQ0MCwgMCwgMCwgNjUxMjUsIDQxMjQ0LCAwLCAxMzI3MSwgOTEwMywgNDExODAsIAogICAgIDAsIDAsIDAsIDAsIDEwMjE5LCAwLCAwLCAwLCAwLCA0MzE3OCwgMTI3MDcwLCA0MTI2MSwgMTE5MzYyLCA0MzY0MCwgODYxMywgCiAgICAgMCwgMTE4OTg5LCA2NzM2LCAxOTUwOTIsIDQxNDkyLCAxMjAwNSwgMTI3ODg5LCAwLCAxODkwLCAxMjAwNTYsIDAsIDAsIDAsIAotICAgIDcyOTMsIDc5OTEsIDAsIDEwNTc4LCAwLCA3ODA3NiwgMTk0NzM4LCA3ODA3NywgMCwgMCwgNzg4MDAsIDkyNjUzLCA2NDQ0NSwgCi0gICAgNDI2NjgsIDY2MzUsIDAsIDYxNjQsIDY1MTcwLCAwLCAwLCA3Njc2LCAxMTY2NCwgMCwgMCwgNjk3MDcsIDAsIDExODgxMiwgCi0gICAgMCwgMCwgMTI4MDQ1LCA5MTc1LCAxMTkyNSwgNzgwNDUsIDkwODgsIDAsIDY0NTQ1LCAxMzk2LCAwLCA3NTQ2LCAzODQ3LCAwLCAKLSAgICAxMjc4MzUsIDQ5ODUsIDEzMjg4LCA2NzIsIDgwOTgsIDQzMTk2LCAxOTQ3NDYsIDAsIDEyODEyNiwgMCwgNzQwNDMsIAotICAgIDY1MDcyLCAxNTc3LCAxMTc3MiwgMTMwNDEsIDU5MjgsIDQ1MjUsIDEwNjU4LCA2NTkxMSwgMTI2NiwgMTAxODAsIDAsIAotICAgIDEyODU4NCwgMTI2MjIsIDAsIDAsIDAsIDE5NDcxNCwgMTI3MTM5LCAxMzMxMCwgNzczLCAxOTkzMywgMTUzOSwgMCwgCi0gICAgMTI2OTgzLCA0MjczMSwgOTIyMDUsIDAsIDAsIDAsIDMwNTEsIDU4NjIsIDc4MjMsIDkyNDc4LCAwLCAxMjA0MTEsIDMyNTAsIAotICAgIDQzOTkxLCA2OTY4NywgNjY2NDksIDk1MTAsIDY2MjM3LCAwLCAwLCA0MTA2NiwgNjQ2NzMsIDkxNzk2MywgOTE3OTY0LCAwLCAKLSAgICAzNTA1LCA4NzA3LCA5MTc5NjgsIDY3MjUsIDEyODAxMywgOTE3OTcxLCA5MjMxNCwgMzQ3MSwgOTE3OTcwLCA1NDc5LCA4ODIsIAotICAgIDY2ODYsIDExOTU4NCwgMTE2MTMsIDEyMDc3MiwgNDI3NTQsIDAsIDAsIDkyNjk2LCAwLCAwLCAwLCAxMjg1MjMsIDMyMjUsIAotICAgIDkxNzk5NiwgNDQzMywgNDExNTYsIDQzOTczLCA0MzE3MywgMTQ0MywgNDM4MSwgMCwgMCwgMTA5MjYsIDExNzU2LCAxMTc1NywgCi0gICAgNjQ4NzksIDkxNzk0OSwgOTE3OTUwLCAxMjc4NDgsIDEzMjI3LCAwLCAxMDAyMSwgNTE2MCwgMTM4NywgMCwgOTE3OTUzLCAKLSAgICA0MTQxOCwgMCwgNjU5MTQsIDY3MjEsIDIxNywgOTE3OTU1LCA5MTc5NjAsIDkxNzk2MSwgMTA0NDMsIDEwNzg5LCA0MTE1OCwgCi0gICAgMTE5MjU3LCA0Mjc0LCAwLCA0MTQ4MywgMCwgNDEyNTAsIDAsIDQyMTc5LCAwLCA1OTMxLCAxMTc0NCwgNjkyMzIsIDAsIAotICAgIDQxMjUyLCA2NjY4MiwgMCwgMTE5NjM3LCA0MTI0OSwgMTM2NiwgNjQ2MzUsIDY1MDQ3LCAxMjQ2NiwgMCwgMCwgNDM5NywgCi0gICAgMTI4MDM3LCAxMjgzMzYsIDQxMjk2LCA5NTQ1LCA0MTI5MSwgMTI4MDQ5LCAwLCA0MTQ4NSwgMzUxMSwgNDEyODIsIDU5MjMsIAotICAgIDEwNDAwLCAwLCAxMjg4MTgsIDc2MCwgMCwgMTIwODgsIDU3ODYsIDAsIDQyMjU2LCAxMTk4NjksIDExOTg2MCwgNDE3LCAKLSAgICA0MTQ3NCwgMTE5NTYyLCA0MTU2NSwgMCwgNTkzNCwgMTE5ODY3LCA2NjU4MywgMTE5MjMxLCA2NDg3NywgMCwgNjQ0ODEsIAotICAgIDc4NjE0LCA2NjAxMywgNDE5NTYsIDQzNDU1LCAxMjY5OTUsIDAsIDAsIDAsIDQyMjczLCA1ODE5LCAwLCA5MTc1NTYsIDAsIAotICAgIDAsIDAsIDY1OTEwLCAxMjc3NDcsIDEwMjQ2LCAxMjA4MTYsIDAsIDEyMzcsIDEwMjc0LCA0NTUyLCAxMTk1NzYsIDAsIDAsIAotICAgIDEzNzUsIDY2NzA1LCA0MzU3MywgNjUyNjAsIDQyMDYzLCAwLCA0MjgxMSwgMTAzMTIsIDc0MTkyLCAxMjA3OTQsIDc4NDAsIAotICAgIDAsIDQzNjMwLCAxMDI1MiwgMCwgMTI4MTA0LCA0MzE4NSwgMCwgNDM5NiwgMCwgMTE5ODgwLCAxMDc2OSwgOTY3NiwgCi0gICAgMTE5MDQxLCAwLCA5NzUzLCAwLCA4OTQ0LCAwLCAwLCAxMDQ3MywgMCwgMCwgNjA3MiwgNDMwMjUsIDEwMjk5LCAwLCAwLCAKLSAgICAxMjA2MDgsIDY2MzI2LCAwLCAwLCAwLCA0MzgxMSwgOTMzMCwgMCwgNzIyMiwgMTAyODMsIDEwMzE1LCAxMDM3OSwgNDk5NiwgCi0gICAgMCwgMTMyODEsIDY2NTE3LCA3ODY1LCAxMDA4NywgNzgzNDMsIDAsIDc4MzQ3LCAwLCAwLCA3NTY1LCA2NjM2MywgMTI5NTIsIAotICAgIDY0ODA2LCA0MzE4MCwgNzc5MjgsIDY4MDk2LCA3NzkyOSwgNDM5ODIsIDc0Mjg4LCA2MjIsIDc0MDIzLCA4ODUsIDQzNDA1LCAKLSAgICAxNjAyLCAwLCAwLCA4NTIsIDAsIDEyMTYwLCAwLCAxMDIxMiwgNjU0MzUsIDAsIDEyMDcxLCA5NjA5LCAxMjE1NiwgCi0gICAgOTE3OTgzLCA5MTc5ODQsIDQzNTg2LCAxMTAzNSwgMTA0MTEsIDkxNzk4OCwgMTAyNTUsIDY3MTAsIDEwMjc5LCA0MTk0LCAKLSAgICAxMDM3NSwgOTE3OTkzLCAwLCA0MzE1LCAxMjY0NCwgMTI3NTE2LCA3NzkzNywgNDM2MzksIDQzMzQzLCAwLCA5MTc5OTgsIAotICAgIDExNTAxLCA0MTE3NywgMTI4Njg5LCAwLCA5MTc3OTIsIDAsIDkyNDEzLCA4NzE1LCAwLCA0MTE3OSwgMCwgNDMzMTMsIDAsIAotICAgIDQxMTc2LCAwLCA5OTQsIDAsIDg0NTIsIDEyNzEwMywgNzM5NjYsIDAsIDAsIDU5MjEsIDAsIDI1OTcsIDAsIDU5MjIsIAotICAgIDExODkwMywgNzc5NDMsIDQxODYsIDkyNTMxLCAxMjcxMDYsIDEyNzEwNSwgNjcxOCwgMCwgNDQwNiwgNzQ2MDEsIDg0ODAsIAotICAgIDkxOTIsIDk3NDcsIDEyODY5OSwgNDQxMywgOTIxOTYsIDQyMjY4LCAzMTk4LCA1OTI0LCA1OTIwLCA5MjQ2OSwgNjkyMSwgCi0gICAgNzgwODEsIDc0MDA3LCA0Mjg2OSwgODQxOCwgMTE2ODEsIDQzMTY5LCAxMDE3NiwgMCwgNzQyLCAwLCAyODkzLCAxMDc3MiwgCi0gICAgNjUyNzYsIDU5MzcsIDE5MTQsIDI1NTMsIDExNjgyLCA2NzU2LCAxMjg1OTAsIDEyODY0NiwgODM2MywgMCwgMjk5MywgCi0gICAgNzc3MiwgMzkxNiwgMCwgMTIwNDk0LCAxMTQxLCA0MjQwNywgODE1OSwgNzE4LCA3NTcyLCA5NzMsIDAsIDEyMDcxOCwgCi0gICAgMzIzNSwgMjQxNSwgNDMxNjQsIDAsIDgwMTgsIDQyMzMzLCA3NDc1NiwgMTA2NzUsIDY5MzcsIDQyNDg2LCA0MzM4MSwgCi0gICAgNjUzOTAsIDEwMDY3LCAwLCAxMjAyLCAwLCAwLCA2NTg2MywgMCwgMCwgMCwgNzgxODIsIDY0NTQyLCAzMjYwLCA3MzgyOSwgCi0gICAgNjUzODgsIDk5NDUsIDg0MTksIDc4MDQyLCA2NzM4LCAwLCA0MzY4MSwgNjk3MjgsIDIwNTksIDAsIDAsIDU1MjM3LCAxNDMxLCAKLSAgICAwLCA2NjU2NSwgMTA4MjEsIDAsIDEyODA0LCAxMjgwNzYsIDgyMjksIDEyMzUsIDMzMDcsIDExNDcyLCA3ODA4OSwgNzgxODQsIAotICAgIDQ1NDQsIDAsIDAsIDAsIDE3NDAsIDc4MDk3LCA4NzU4LCA5ODUsIDEyODcyLCA2NDUxMSwgNzgwOTQsIDEyMDY4LCA3ODEwMiwgCi0gICAgMCwgMTAxNDEsIDAsIDYzNzYxLCA4Nzg1LCA0NDc2LCA3ODEwOSwgNjM3NjMsIDEyNjU1LCA4OTA3LCA3ODEwNSwgNzgxMDYsIAotICAgIDc4MTAzLCA3ODEwNCwgMCwgMTE5NTcyLCAxMDY2NSwgNjQ2MTYsIDQxNTcyLCAwLCAxMjcxNjAsIDAsIDQxNTczLCAwLCAKLSAgICAzOTMxLCAxMjAyOTUsIDc0MTQzLCAwLCAwLCAwLCAwLCAxMTk4MiwgMCwgMCwgMCwgMTI4MDE2LCA2NDQ4NCwgMCwgNDExNjcsIAotICAgIDAsIDQxNzM1LCAwLCA3MTcsIDEwNzU0LCAwLCAwLCAxMjc5NzksIDAsIDYzNzY3LCAwLCAxNzgwLCA2OTM2LCAwLCAwLCAKLSAgICA4MTksIDEwNjExLCA5Njk0LCAxMjY5NzgsIDAsIDAsIDAsIDAsIDgzNDMsIDgzNDIsIDgzNDUsIDgzNDQsIDY1NzgsIDcwMDksIAotICAgIDc1MjMsIDY5MjIsIDgzNDgsIDgzNDcsIDc1MjUsIDMzNDYsIDgzMzksIDEyODE2NSwgMTI4MzM4LCA1NzUsIDI2OCwgCi0gICAgNzgxMTEsIDg1NjMsIDU3NTQsIDEyMDM0MywgNDE1NDEsIDY1NTY1LCA4MzM2LCA1OTM2LCA3MjkwLCA3ODExNywgODMzNywgCi0gICAgODM0MSwgMzA4LCAxMTM4OCwgNzUyMiwgMTIwNzIxLCA3ODEyMywgNjU0NjYsIDExMDkwLCA2OTUzLCAwLCAxMjAzNDYsIDAsIAotICAgIDc4MTMyLCA1OTI2LCA3ODEyOCwgNzgxMzAsIDc4MTI2LCA3ODEyNywgNzgxMjQsIDc4MTI1LCA5MDM4LCA3ODg3LCA0MzQ1NiwgCi0gICAgNzgzMCwgMTE2NTEsIDEzMDkzLCA2NDAwMiwgMCwgNjU3NDIsIDEyODc0LCAxMTk1OTcsIDExNTkwLCAwLCA3NDA0OCwgCi0gICAgMTI4MzUwLCA4NTk1LCAwLCA5MTc5NDcsIDQzNzAzLCAxMzA5NywgMCwgNjQ2NDMsIDEzMjgzLCAxMjY5NywgMCwgMTIzODEsIAotICAgIDM0ODgsIDU5MzMsIDEwMDMzLCA3MzczOCwgNjYyNDEsIDY1NTcwLCAwLCAxMjI5NywgMTE5MTUzLCAxOTU1LCAwLCA1MzQ5LCAKLSAgICA0MjUzOCwgMCwgMCwgNjUzMDgsIDk0NjIsIDkxNzU1NCwgMCwgMCwgMCwgNDI3MzYsIDAsIDU3NTYsIDAsIDc2MzgsIAotICAgIDQxNjQyLCA0Mjc2NCwgMCwgNDMxMDksIDc2MzcsIDU3NTIsIDEyMDYwMCwgMCwgNzM4MzIsIDEyODgyNywgMTIwNjM1LCAKLSAgICAxMjgyMzEsIDc4MzM0LCAwLCA3NjM2LCA2NTE3MSwgOTEyNCwgMCwgNzg4OTIsIDAsIDI5MSwgMCwgMCwgMjAyNywgNjYyMzAsIAotICAgIDEwMDgwLCA3ODEzNiwgMTA0MDMsIDAsIDQ2NDAsIDY0NzEzLCAxMDIyNCwgMTIwNDI5LCA0MjUxMiwgMTIwNDMxLCAKLSAgICAxMjA0MzAsIDAsIDEyODM1MSwgMTI3NDg5LCAxMjcxNDgsIDAsIDkyNDk5LCAwLCAxMTkwOTQsIDc0MjEzLCA3ODI0LCAwLCAKLSAgICAwLCA0MTI3NCwgNTc3OCwgNjMwMiwgMCwgMCwgMTI2ODAsIDExOTEzMCwgMTQxNywgNzc4ODksIDE5NDkxNCwgOTQ1MiwgMCwgCi0gICAgNzQzOTMsIDExNTUyLCAwLCAxMjc4NTUsIDAsIDY1MzkxLCAwLCAxMDE3MiwgNjU0NTMsIDYzNzg5LCA0MTI2NCwgNzg2NTgsIAotICAgIDY0MjYsIDQ2NDEsIDkxNzksIDY0ODE5LCA1NTI3OCwgNDEyNTUsIDQyMDM2LCA0MTQ2OSwgNDEyNjksIDEyMDQxMiwgCi0gICAgNDEyNjcsIDQ2NDYsIDEyMDQyNSwgODY1LCA0MjAzNCwgNzgyNzQsIDc4MjczLCA0NjQ1LCA0MjAzMywgNzgyNzAsIAotICAgIDEyNzk4MiwgMCwgNjQ3MjgsIDAsIDc4NjczLCA3ODY3NCwgMTY1OSwgOTE5LCA0Mjc4NCwgMTY3MSwgMTk1MDg5LCA2MDY5LCAKLSAgICA5MjE5LCAxOTUwOTAsIDE2NjEsIDEzMTIwLCA2Mzc4NCwgNjk4MTksIDEwMTQwLCA5NzEzLCAxMTkxNDMsIDAsIDAsIDAsIAotICAgIDIzMDYsIDEwNDg1LCAxMTg5NDMsIDYwNjgsIDEwNjEyLCAxOTUwOTksIDExOTU2NywgMTk1MTAxLCA5MjU2MSwgNDE0NjIsIAotICAgIDEyMDQ3MCwgMTk1MDc5LCA1NDIyLCAxMjgyMzQsIDAsIDAsIDAsIDEwMjI5LCAxMDYzNSwgODI2LCAxMjgwODEsIDE5NTA4MiwgCi0gICAgMTk1MDg1LCAxOTUwODQsIDE5NTA4NywgNjQ4MywgMCwgMTgwOCwgNzg0OCwgMCwgODEwMCwgNzgyMjcsIDc4NjY5LCAKLSAgICA3ODY3MCwgMTMzMDEsIDc4NjY3LCA5NjY3LCA3ODY2NSwgNzg4NzIsIDAsIDExMDAzLCA5OTA0LCAwLCAwLCAxMjA2OTAsIAotICAgIDkxNDQsIDEwOTIxLCAwLCA3ODY4MCwgOTg0MCwgNjUxMzEsIDc4Njc4LCA3Nzg0MSwgMTAzMTMsIDAsIDAsIDY0MzIwLCAKLSAgICAxMDI2NSwgNzg2ODYsIDEwOTYyLCA3ODY4NCwgNDMwMDgsIDg5NDUsIDc4NjgzLCAwLCA0MSwgMTk1MDcyLCAxNzkyLCAKLSAgICAxMjA1MTUsIDE5NTA3MywgODY1NSwgMTk1MDc1LCA5MjU0NCwgNzc5NTEsIDEyMDY2LCAwLCAzODUsIDQxNTIsIDI1ODUsIAotICAgIDEyNzgwNCwgMTE5MDY4LCAzMTI2LCAwLCA3NDEzNiwgMTA5NTcsIDAsIDQzMjU4LCAwLCAxMjc4NzMsIDEzMTU3LCAwLCAwLCAKLSAgICAzNTcwLCAwLCA3NDQzLCAwLCA0NDAwNiwgNjk5NywgMCwgMCwgNzg3OSwgODczOSwgMTEwNzUsIDAsIDY1MjE2LCAwLCAKLSAgICA2OTc5NSwgMjU5MywgODQ2MywgNzgxMCwgOTE3ODYyLCA3ODM5LCAxMTk5MTMsIDc4ODA2LCAxMTk5MTIsIDk2OTEsIDQ0MTEsIAotICAgIDc4ODAyLCAwLCAwLCA0MzQ0MiwgNzg3OTksIDY1MjU0LCAxMDA2NiwgMCwgMCwgMCwgMCwgMTMwNjEsIDgwMTYsIDc4Njg3LCAKLSAgICAxOTkzMiwgNjQ4MzEsIDAsIDExOTkyMywgMTIzOTAsIDExOTE3MSwgMTYzNCwgNjgxMTUsIDAsIDExMDU2LCAwLCAxMTk5MjUsIAotICAgIDAsIDQxMTY1LCAxMTMyOCwgMTI0NTAsIDAsIDQxMTY2LCAwLCAxMjQ1NiwgMTE5OTE0LCAxNzEsIDU5NDEsIDEyNDUyLCAKLSAgICA5MTc1NDQsIDEyNDU4LCAxMjUzMSwgNzg3NzksIDQzMDEzLCA2MzgwMCwgNzQxNjIsIDEyNzU2OSwgMTIwNDgzLCA5OTY5LCAKLSAgICAwLCAxMjQ1NCwgNjM4MDYsIDQyMTMyLCAxMjA2MywgNzg0MjUsIDc4NDI0LCAzMjMwLCAwLCAwLCAwLCA1MjA5LCAyOTcsIAotICAgIDU4MTAsIDg1MjIsIDg0MTUsIDExOTkzNywgNzg0MjksIDc4NDI4LCA3MDc3LCAyNDk3LCAxMjg2NTEsIDk2MCwgNzQxNTYsIAotICAgIDY5ODEsIDkyMzc0LCAxMjkzOCwgNDI5MiwgMCwgNzQ4MTUsIDEwNTEyLCAwLCA3NDgxNCwgNzg4NzUsIDEyNzUwNSwgCi0gICAgNzg4NzYsIDI1MDMsIDczNzc4LCAxNzYyLCA2OTc5NCwgMjQ5NSwgNzg4NzMsIDU4NDQsIDc4ODc0LCAxMTg4MzgsIDAsIAotICAgIDEyNjU0LCA0NjYzLCAxODk5LCA3ODg3NywgMjUwNywgNjQxMjEsIDg3MjYsIDY1NTk0LCAwLCAwLCAwLCA4ODkyLCAwLCAKLSAgICA5MjMzOSwgMCwgMCwgNTc4MiwgNDIwLCAwLCAwLCA0Mzc5NiwgMTA3OTcsIDYzNzk0LCAwLCAwLCA2NDgxNCwgNjM3OTYsIAotICAgIDc3OTY1LCAwLCA2NjU4MSwgMTE5MjA0LCA0MTYwOCwgMCwgMCwgNjM3OTIsIDQ2NTksIDEyMDc4OCwgMCwgNDM2NzYsIDAsIAotICAgIDY5NjczLCAwLCAwLCAwLCAzMjksIDc3OTY4LCA5MjcwNywgOTE3NTQ4LCA3Mzk5LCAwLCA0MTE4OCwgMTMyNDQsIDEyMDQ2NiwgCi0gICAgNDIxNjcsIDc0MzUsIDc4MTkzLCA1MzgwLCAxMTkwODYsIDY5MjI1LCAxMTU1LCAxMTM2NSwgNDMxMjYsIDc3OTcyLCAwLCAKLSAgICA2NTY4NCwgMCwgNTYwMSwgNjUxOTIsIDQyNzY1LCA2Mzc1MiwgMCwgNzk4NywgMCwgMTE3MiwgNjk3OTksIDY3ODYsIAotICAgIDQzNjAxLCAxMjA0NzYsIDc0MTI2LCA1NjAzLCAwLCA0NDczLCAwLCAxOTQ4MjMsIDAsIDY1MzQ3LCA2NTM0NiwgNjUzNDUsIAotICAgIDAsIDEyNzM4NCwgNTM0NywgNjk4MDIsIDAsIDczODY4LCAxMTg5NDQsIDEwNTg4LCAwLCAwLCA2Mzc1NSwgMCwgNTM0MywgCi0gICAgNzg0MjIsIDAsIDQ1NTUsIDUzNDEsIDAsIDAsIDEyODY3MCwgNTM1MSwgMCwgNDMxMDQsIDY1MjQ0LCA5MTc4OTIsIDY0NTQxLCAKLSAgICA0MjUxOSwgNzQ0NzIsIDAsIDAsIDc0NzY1LCA5MTc4ODgsIDE5NDg5MiwgNjYzOCwgMCwgNjUxMTMsIDI3MSwgNzQxODAsIAotICAgIDY1MzcwLCA4ODM1LCA2NTM2OCwgMTI2NTMsIDY1MzY2LCA0MjE3MiwgNDEwODYsIDY1MzYzLCA2NTM2MiwgNjUzNjEsIAotICAgIDExOTEyLCA0MzQxMCwgMTEzMjMsIDY1MzU3LCAxMTgwMCwgNjUzNTUsIDUzNDUsIDY1MzUzLCA2NTM1MiwgNjUzNTEsIDc2MSwgCi0gICAgNjUzNDksIDE5OTU5LCA2OTcxOCwgNjM4NTYsIDAsIDI0MjMsIDc3OTU4LCA2NDY0NywgNzc5NTksIDExOTU3LCA0Njk5LCAwLCAKLSAgICAwLCAwLCAwLCA2NDYwNSwgMCwgMCwgMCwgNDkxNiwgMCwgMzgwLCAxMDk1OCwgNjY1NjMsIDc3OTU1LCA2OTc3MywgOTc3MywgCi0gICAgMTMxNjcsIDEyOTE4LCA0MTA5NiwgNzM5ODAsIDY5MjQ1LCA3ODI1NCwgOTE3ODkzLCAxMDY4NCwgMCwgOTE3ODk2LCAwLCAKLSAgICA3OTQ2LCAxMjU0MSwgODE4MiwgNjc1ODYsIDY5NzgwLCAwLCAwLCAwLCAwLCA5MDA1LCAxMjI1LCA2NjMwLCAwLCAwLCAwLCAKLSAgICAwLCA4ODQ3LCAwLCA2NTg3NiwgNTUzNSwgODMyOSwgNzQ1OTAsIDAsIDkyNjA5LCAwLCAwLCAzMTI3LCAyNTk1LCA2NTcxMywgCi0gICAgNDIwMTMsIDAsIDU2MDcsIDQxMDg5LCAwLCAwLCA3NDI1NiwgMjY2NSwgMTEzMDQsIDAsIDc0MjAwLCA0OTcwLCA4NzY0LCAKKyAgICA3MjkzLCA3OTkxLCAwLCAxMDU3OCwgMCwgNzgwNzYsIDE5NDczOCwgNzgwNzcsIDk4MzQ2MiwgMCwgNzg4MDAsIDkyNjUzLCAKKyAgICA2NDQ0NSwgNDI2NjgsIDY2MzUsIDAsIDYxNjQsIDY1MTcwLCAwLCAwLCA3Njc2LCAxMTY2NCwgMCwgOTgzMzkzLCA2OTcwNywgCisgICAgMCwgMTE4ODEyLCAwLCAwLCAxMjgwNDUsIDkxNzUsIDExOTI1LCA3ODA0NSwgOTA4OCwgMCwgNjQ1NDUsIDEzOTYsIDAsIAorICAgIDc1NDYsIDM4NDcsIDAsIDEyNzgzNSwgNDk4NSwgMTMyODgsIDY3MiwgODA5OCwgNDMxOTYsIDE5NDc0NiwgMCwgMTI4MTI2LCAKKyAgICAwLCA3NDA0MywgNjUwNzIsIDE1NzcsIDExNzcyLCAxMzA0MSwgNTkyOCwgNDUyNSwgMTA2NTgsIDY1OTExLCAxMjY2LCAKKyAgICAxMDE4MCwgMCwgMTI4NTg0LCAxMjYyMiwgMCwgMCwgMCwgMTk0NzE0LCAxMjcxMzksIDEzMzEwLCA3NzMsIDE5OTMzLCAKKyAgICAxNTM5LCAwLCAxMjY5ODMsIDQyNzMxLCA5MjIwNSwgMCwgMCwgMCwgMzA1MSwgNTg2MiwgNzgyMywgOTI0NzgsIDAsIAorICAgIDEyMDQxMSwgMzI1MCwgNDM5OTEsIDY5Njg3LCA2NjY0OSwgOTUxMCwgNjYyMzcsIDAsIDAsIDQxMDY2LCA2NDY3MywgCisgICAgOTE3OTYzLCA5MTc5NjQsIDAsIDM1MDUsIDg3MDcsIDkxNzk2OCwgNjcyNSwgMTI4MDEzLCA5MTc5NzEsIDkyMzE0LCAzNDcxLCAKKyAgICA5MTc5NzAsIDU0NzksIDg4MiwgNjY4NiwgMTE5NTg0LCAxMTYxMywgMTIwNzcyLCA0Mjc1NCwgMCwgMCwgOTI2OTYsIDAsIDAsIAorICAgIDAsIDEyODUyMywgMzIyNSwgOTE3OTk2LCA0NDMzLCA0MTE1NiwgNDM5NzMsIDQzMTczLCAxNDQzLCA0MzgxLCAwLCAwLCAKKyAgICAxMDkyNiwgMTE3NTYsIDExNzU3LCA2NDg3OSwgOTE3OTQ5LCA5MTc5NTAsIDEyNzg0OCwgMTMyMjcsIDAsIDEwMDIxLCAKKyAgICA1MTYwLCAxMzg3LCAwLCA5MTc5NTMsIDQxNDE4LCAwLCA2NTkxNCwgNjcyMSwgMjE3LCA5MTc5NTUsIDkxNzk2MCwgCisgICAgOTE3OTYxLCAxMDQ0MywgMTA3ODksIDQxMTU4LCAxMTkyNTcsIDQyNzQsIDAsIDQxNDgzLCAwLCA0MTI1MCwgMCwgNDIxNzksIAorICAgIDAsIDU5MzEsIDExNzQ0LCA2OTIzMiwgMCwgNDEyNTIsIDY2NjgyLCAwLCAxMTk2MzcsIDQxMjQ5LCAxMzY2LCA2NDYzNSwgCisgICAgNjUwNDcsIDEyNDY2LCAwLCAwLCA0Mzk3LCAxMjgwMzcsIDEyODMzNiwgNDEyOTYsIDk1NDUsIDQxMjkxLCAxMjgwNDksIDAsIAorICAgIDQxNDg1LCAzNTExLCA0MTI4MiwgNTkyMywgMTA0MDAsIDAsIDEyODgxOCwgNzYwLCAwLCAxMjA4OCwgNTc4NiwgMCwgCisgICAgNDIyNTYsIDExOTg2OSwgMTE5ODYwLCA0MTcsIDQxNDc0LCAxMTk1NjIsIDQxNTY1LCAwLCA1OTM0LCAxMTk4NjcsIDY2NTgzLCAKKyAgICAxMTkyMzEsIDY0ODc3LCAwLCA2NDQ4MSwgNzg2MTQsIDY2MDEzLCA0MTk1NiwgNDM0NTUsIDEyNjk5NSwgMCwgMCwgMCwgCisgICAgNDIyNzMsIDU4MTksIDAsIDkxNzU1NiwgMCwgMCwgMCwgNjU5MTAsIDEyNzc0NywgMTAyNDYsIDEyMDgxNiwgMCwgMTIzNywgCisgICAgMTAyNzQsIDQ1NTIsIDExOTU3NiwgMCwgMCwgMTM3NSwgNjY3MDUsIDQzNTczLCA2NTI2MCwgNDIwNjMsIDAsIDQyODExLCAKKyAgICAxMDMxMiwgNzQxOTIsIDEyMDc5NCwgNzg0MCwgMCwgNDM2MzAsIDEwMjUyLCAwLCAxMjgxMDQsIDQzMTg1LCAwLCA0Mzk2LCAKKyAgICAwLCAxMTk4ODAsIDEwNzY5LCA5Njc2LCAxMTkwNDEsIDAsIDk3NTMsIDAsIDg5NDQsIDAsIDAsIDEwNDczLCAwLCAwLCAKKyAgICA2MDcyLCA0MzAyNSwgMTAyOTksIDAsIDAsIDEyMDYwOCwgNjYzMjYsIDAsIDAsIDAsIDQzODExLCA5MzMwLCAwLCA3MjIyLCAKKyAgICAxMDI4MywgMTAzMTUsIDEwMzc5LCA0OTk2LCAwLCAxMzI4MSwgNjY1MTcsIDc4NjUsIDEwMDg3LCA3ODM0MywgMCwgNzgzNDcsIAorICAgIDAsIDAsIDc1NjUsIDY2MzYzLCAxMjk1MiwgNjQ4MDYsIDQzMTgwLCA3NzkyOCwgNjgwOTYsIDc3OTI5LCA0Mzk4MiwgCisgICAgNzQyODgsIDYyMiwgNzQwMjMsIDg4NSwgNDM0MDUsIDE2MDIsIDAsIDAsIDg1MiwgMCwgMTIxNjAsIDAsIDEwMjEyLCAKKyAgICA2NTQzNSwgMCwgMTIwNzEsIDk2MDksIDEyMTU2LCA5MTc5ODMsIDkxNzk4NCwgNDM1ODYsIDExMDM1LCAxMDQxMSwgCisgICAgOTE3OTg4LCAxMDI1NSwgNjcxMCwgMTAyNzksIDQxOTQsIDEwMzc1LCA5MTc5OTMsIDAsIDQzMTUsIDEyNjQ0LCAxMjc1MTYsIAorICAgIDc3OTM3LCA0MzYzOSwgNDMzNDMsIDAsIDkxNzk5OCwgMTE1MDEsIDQxMTc3LCAxMjg2ODksIDAsIDkxNzc5MiwgMCwgCisgICAgOTI0MTMsIDg3MTUsIDAsIDQxMTc5LCAwLCA0MzMxMywgMCwgNDExNzYsIDAsIDk5NCwgMCwgODQ1MiwgMTI3MTAzLCAKKyAgICA3Mzk2NiwgMCwgMCwgNTkyMSwgMCwgMjU5NywgMCwgNTkyMiwgMTE4OTAzLCA3Nzk0MywgNDE4NiwgOTI1MzEsIDEyNzEwNiwgCisgICAgMTI3MTA1LCA2NzE4LCAwLCA0NDA2LCA3NDYwMSwgODQ4MCwgOTE5MiwgOTc0NywgMTI4Njk5LCA0NDEzLCA5MjE5NiwgCisgICAgNDIyNjgsIDMxOTgsIDU5MjQsIDU5MjAsIDkyNDY5LCA2OTIxLCA3ODA4MSwgNzQwMDcsIDQyODY5LCA4NDE4LCAxMTY4MSwgCisgICAgNDMxNjksIDEwMTc2LCAwLCA3NDIsIDAsIDI4OTMsIDEwNzcyLCA2NTI3NiwgNTkzNywgMTkxNCwgMjU1MywgMTE2ODIsIAorICAgIDY3NTYsIDEyODU5MCwgMTI4NjQ2LCA4MzYzLCAwLCAyOTkzLCA3NzcyLCAzOTE2LCAwLCAxMjA0OTQsIDExNDEsIDQyNDA3LCAKKyAgICA4MTU5LCA3MTgsIDc1NzIsIDk3MywgMCwgMTIwNzE4LCAzMjM1LCAyNDE1LCA0MzE2NCwgMCwgODAxOCwgNDIzMzMsIAorICAgIDc0NzU2LCAxMDY3NSwgNjkzNywgNDI0ODYsIDQzMzgxLCA2NTM5MCwgMTAwNjcsIDAsIDEyMDIsIDAsIDAsIDY1ODYzLCAwLCAKKyAgICAwLCAwLCA3ODE4MiwgNjQ1NDIsIDMyNjAsIDczODI5LCA2NTM4OCwgOTk0NSwgODQxOSwgNzgwNDIsIDY3MzgsIDAsIAorICAgIDQzNjgxLCA2OTcyOCwgMjA1OSwgMCwgMCwgNTUyMzcsIDE0MzEsIDAsIDY2NTY1LCAxMDgyMSwgMCwgMTI4MDQsIDEyODA3NiwgCisgICAgODIyOSwgMTIzNSwgMzMwNywgMTE0NzIsIDc4MDg5LCA3ODE4NCwgNDU0NCwgMCwgMCwgMCwgMTc0MCwgNzgwOTcsIDg3NTgsIAorICAgIDk4NSwgMTI4NzIsIDY0NTExLCA3ODA5NCwgMTIwNjgsIDc4MTAyLCAwLCAxMDE0MSwgMCwgNjM3NjEsIDg3ODUsIDQ0NzYsIAorICAgIDc4MTA5LCA2Mzc2MywgMTI2NTUsIDg5MDcsIDc4MTA1LCA3ODEwNiwgNzgxMDMsIDc4MTA0LCAwLCAxMTk1NzIsIDEwNjY1LCAKKyAgICA2NDYxNiwgNDE1NzIsIDAsIDEyNzE2MCwgMCwgNDE1NzMsIDAsIDM5MzEsIDEyMDI5NSwgNzQxNDMsIDAsIDAsIDAsIDAsIAorICAgIDExOTgyLCAwLCAwLCAwLCAxMjgwMTYsIDY0NDg0LCAwLCA0MTE2NywgMCwgNDE3MzUsIDAsIDcxNywgMTA3NTQsIDAsIDAsIAorICAgIDEyNzk3OSwgMCwgNjM3NjcsIDAsIDE3ODAsIDY5MzYsIDAsIDAsIDgxOSwgMTA2MTEsIDk2OTQsIDEyNjk3OCwgMCwgMCwgMCwgCisgICAgMCwgODM0MywgODM0MiwgODM0NSwgODM0NCwgNjU3OCwgNzAwOSwgNzUyMywgNjkyMiwgODM0OCwgODM0NywgNzUyNSwgCisgICAgMzM0NiwgODMzOSwgMTI4MTY1LCAxMjgzMzgsIDU3NSwgMjY4LCA3ODExMSwgODU2MywgNTc1NCwgMTIwMzQzLCA0MTU0MSwgCisgICAgNjU1NjUsIDgzMzYsIDU5MzYsIDcyOTAsIDc4MTE3LCA4MzM3LCA4MzQxLCAzMDgsIDExMzg4LCA3NTIyLCAxMjA3MjEsIAorICAgIDc4MTIzLCA2NTQ2NiwgMTEwOTAsIDY5NTMsIDAsIDEyMDM0NiwgMCwgNzgxMzIsIDU5MjYsIDc4MTI4LCA3ODEzMCwgCisgICAgNzgxMjYsIDc4MTI3LCA3ODEyNCwgNzgxMjUsIDkwMzgsIDc4ODcsIDQzNDU2LCA3ODMwLCAxMTY1MSwgMTMwOTMsIDY0MDAyLCAKKyAgICAwLCA2NTc0MiwgMTI4NzQsIDExOTU5NywgMTE1OTAsIDAsIDc0MDQ4LCAxMjgzNTAsIDg1OTUsIDAsIDkxNzk0NywgNDM3MDMsIAorICAgIDEzMDk3LCAwLCA2NDY0MywgMTMyODMsIDEyNjk3LCAwLCAxMjM4MSwgMzQ4OCwgNTkzMywgMTAwMzMsIDczNzM4LCA2NjI0MSwgCisgICAgNjU1NzAsIDAsIDEyMjk3LCAxMTkxNTMsIDE5NTUsIDAsIDUzNDksIDQyNTM4LCAwLCAwLCA2NTMwOCwgOTQ2MiwgOTE3NTU0LCAKKyAgICAwLCAwLCAwLCA0MjczNiwgMCwgNTc1NiwgMCwgNzYzOCwgNDE2NDIsIDQyNzY0LCAwLCA0MzEwOSwgNzYzNywgNTc1MiwgCisgICAgMTIwNjAwLCAwLCA3MzgzMiwgMTI4ODI3LCAxMjA2MzUsIDEyODIzMSwgNzgzMzQsIDAsIDc2MzYsIDY1MTcxLCA5MTI0LCAwLCAKKyAgICA3ODg5MiwgMCwgMjkxLCAwLCAwLCAyMDI3LCA2NjIzMCwgMTAwODAsIDc4MTM2LCAxMDQwMywgMCwgNDY0MCwgNjQ3MTMsIAorICAgIDEwMjI0LCAxMjA0MjksIDQyNTEyLCAxMjA0MzEsIDEyMDQzMCwgMCwgMTI4MzUxLCAxMjc0ODksIDEyNzE0OCwgMCwgCisgICAgOTI0OTksIDAsIDExOTA5NCwgNzQyMTMsIDc4MjQsIDAsIDAsIDQxMjc0LCA1Nzc4LCA2MzAyLCAwLCAwLCAxMjY4MCwgCisgICAgMTE5MTMwLCAxNDE3LCA3Nzg4OSwgMTk0OTE0LCA5NDUyLCAwLCA3NDM5MywgMTE1NTIsIDAsIDEyNzg1NSwgMCwgNjUzOTEsIAorICAgIDAsIDEwMTcyLCA2NTQ1MywgNjM3ODksIDQxMjY0LCA3ODY1OCwgNjQyNiwgNDY0MSwgOTE3OSwgNjQ4MTksIDU1Mjc4LCAKKyAgICA0MTI1NSwgNDIwMzYsIDQxNDY5LCA0MTI2OSwgMTIwNDEyLCA0MTI2NywgNDY0NiwgMTIwNDI1LCA4NjUsIDQyMDM0LCAKKyAgICA3ODI3NCwgNzgyNzMsIDQ2NDUsIDQyMDMzLCA3ODI3MCwgMTI3OTgyLCAwLCA2NDcyOCwgMCwgNzg2NzMsIDc4Njc0LCAKKyAgICAxNjU5LCA5MTksIDQyNzg0LCAxNjcxLCAxOTUwODksIDYwNjksIDkyMTksIDE5NTA5MCwgMTY2MSwgMTMxMjAsIDYzNzg0LCAKKyAgICA2OTgxOSwgMTAxNDAsIDk3MTMsIDExOTE0MywgMCwgMCwgMCwgMjMwNiwgMTA0ODUsIDExODk0MywgNjA2OCwgMTA2MTIsIAorICAgIDE5NTA5OSwgMTE5NTY3LCAxOTUxMDEsIDkyNTYxLCA0MTQ2MiwgMTIwNDcwLCAxOTUwNzksIDU0MjIsIDEyODIzNCwgMCwgMCwgCisgICAgMCwgMTAyMjksIDEwNjM1LCA4MjYsIDEyODA4MSwgMTk1MDgyLCAxOTUwODUsIDE5NTA4NCwgMTk1MDg3LCA2NDgzLCAwLCAKKyAgICAxODA4LCA3ODQ4LCAwLCA4MTAwLCA3ODIyNywgNzg2NjksIDc4NjcwLCAxMzMwMSwgNzg2NjcsIDk2NjcsIDc4NjY1LCAKKyAgICA3ODg3MiwgMCwgMTEwMDMsIDk5MDQsIDAsIDAsIDEyMDY5MCwgOTE0NCwgMTA5MjEsIDAsIDc4NjgwLCA5ODQwLCA2NTEzMSwgCisgICAgNzg2NzgsIDc3ODQxLCAxMDMxMywgMCwgMCwgNjQzMjAsIDEwMjY1LCA3ODY4NiwgMTA5NjIsIDc4Njg0LCA0MzAwOCwgCisgICAgODk0NSwgNzg2ODMsIDAsIDQxLCAxOTUwNzIsIDE3OTIsIDEyMDUxNSwgMTk1MDczLCA4NjU1LCAxOTUwNzUsIDkyNTQ0LCAKKyAgICA3Nzk1MSwgMTIwNjYsIDAsIDM4NSwgNDE1MiwgMjU4NSwgMTI3ODA0LCAxMTkwNjgsIDMxMjYsIDAsIDc0MTM2LCAxMDk1NywgCisgICAgOTgzNDM4LCA0MzI1OCwgMCwgMTI3ODczLCAxMzE1NywgMCwgMCwgMzU3MCwgMCwgNzQ0MywgMCwgNDQwMDYsIDY5OTcsIDAsIAorICAgIDAsIDc4NzksIDg3MzksIDExMDc1LCAwLCA2NTIxNiwgMCwgNjk3OTUsIDI1OTMsIDg0NjMsIDc4MTAsIDkxNzg2MiwgNzgzOSwgCisgICAgMTE5OTEzLCA3ODgwNiwgMTE5OTEyLCA5NjkxLCA0NDExLCA3ODgwMiwgMCwgMCwgNDM0NDIsIDc4Nzk5LCA2NTI1NCwgCisgICAgMTAwNjYsIDk4MzYyNCwgMCwgMCwgMCwgMTMwNjEsIDgwMTYsIDc4Njg3LCAxOTkzMiwgNjQ4MzEsIDAsIDExOTkyMywgCisgICAgMTIzOTAsIDExOTE3MSwgMTYzNCwgNjgxMTUsIDAsIDExMDU2LCAwLCAxMTk5MjUsIDAsIDQxMTY1LCAxMTMyOCwgMTI0NTAsIAorICAgIDAsIDQxMTY2LCAwLCAxMjQ1NiwgMTE5OTE0LCAxNzEsIDU5NDEsIDEyNDUyLCA5MTc1NDQsIDEyNDU4LCAxMjUzMSwgCisgICAgNzg3NzksIDQzMDEzLCA2MzgwMCwgNzQxNjIsIDEyNzU2OSwgMTIwNDgzLCA5OTY5LCAwLCAxMjQ1NCwgNjM4MDYsIDQyMTMyLCAKKyAgICAxMjA2MywgNzg0MjUsIDc4NDI0LCAzMjMwLCAwLCAwLCAwLCA1MjA5LCAyOTcsIDU4MTAsIDg1MjIsIDg0MTUsIDExOTkzNywgCisgICAgNzg0MjksIDc4NDI4LCA3MDc3LCAyNDk3LCAxMjg2NTEsIDk2MCwgNzQxNTYsIDY5ODEsIDkyMzc0LCAxMjkzOCwgNDI5MiwgCisgICAgMCwgNzQ4MTUsIDEwNTEyLCAwLCA3NDgxNCwgNzg4NzUsIDEyNzUwNSwgNzg4NzYsIDI1MDMsIDczNzc4LCAxNzYyLCAKKyAgICA2OTc5NCwgMjQ5NSwgNzg4NzMsIDU4NDQsIDc4ODc0LCAxMTg4MzgsIDAsIDEyNjU0LCA0NjYzLCAxODk5LCA3ODg3NywgCisgICAgMjUwNywgNjQxMjEsIDg3MjYsIDY1NTk0LCAwLCAwLCAwLCA4ODkyLCAwLCA5MjMzOSwgMCwgMCwgNTc4MiwgNDIwLCAwLCAwLCAKKyAgICA0Mzc5NiwgMTA3OTcsIDYzNzk0LCAwLCAwLCA2NDgxNCwgNjM3OTYsIDc3OTY1LCAwLCA2NjU4MSwgMTE5MjA0LCA0MTYwOCwgCisgICAgMCwgMCwgNjM3OTIsIDQ2NTksIDEyMDc4OCwgMCwgNDM2NzYsIDAsIDY5NjczLCAwLCAwLCAwLCAzMjksIDc3OTY4LCAKKyAgICA5MjcwNywgOTE3NTQ4LCA3Mzk5LCAwLCA0MTE4OCwgMTMyNDQsIDEyMDQ2NiwgNDIxNjcsIDc0MzUsIDc4MTkzLCA1MzgwLCAKKyAgICAxMTkwODYsIDY5MjI1LCAxMTU1LCAxMTM2NSwgNDMxMjYsIDc3OTcyLCAwLCA2NTY4NCwgMCwgNTYwMSwgNjUxOTIsIAorICAgIDQyNzY1LCA2Mzc1MiwgMCwgNzk4NywgMCwgMTE3MiwgNjk3OTksIDY3ODYsIDQzNjAxLCAxMjA0NzYsIDc0MTI2LCA1NjAzLCAKKyAgICAwLCA0NDczLCAwLCAxOTQ4MjMsIDAsIDY1MzQ3LCA2NTM0NiwgNjUzNDUsIDAsIDEyNzM4NCwgNTM0NywgNjk4MDIsIAorICAgIDk4MzM2NywgNzM4NjgsIDExODk0NCwgMTA1ODgsIDAsIDAsIDYzNzU1LCAwLCA1MzQzLCA3ODQyMiwgMCwgNDU1NSwgNTM0MSwgCisgICAgMCwgMCwgMTI4NjcwLCA1MzUxLCAwLCA0MzEwNCwgNjUyNDQsIDkxNzg5MiwgNjQ1NDEsIDQyNTE5LCA3NDQ3MiwgMCwgMCwgCisgICAgNzQ3NjUsIDkxNzg4OCwgMTk0ODkyLCA2NjM4LCAwLCA2NTExMywgMjcxLCA3NDE4MCwgNjUzNzAsIDg4MzUsIDY1MzY4LCAKKyAgICAxMjY1MywgNjUzNjYsIDQyMTcyLCA0MTA4NiwgNjUzNjMsIDY1MzYyLCA2NTM2MSwgMTE5MTIsIDQzNDEwLCAxMTMyMywgCisgICAgNjUzNTcsIDExODAwLCA2NTM1NSwgNTM0NSwgNjUzNTMsIDY1MzUyLCA2NTM1MSwgNzYxLCA2NTM0OSwgMTk5NTksIDY5NzE4LCAKKyAgICA2Mzg1NiwgMCwgMjQyMywgNzc5NTgsIDY0NjQ3LCA3Nzk1OSwgMTE5NTcsIDQ2OTksIDAsIDAsIDAsIDAsIDY0NjA1LCAwLCAKKyAgICAwLCAwLCA0OTE2LCAwLCAzODAsIDEwOTU4LCA2NjU2MywgNzc5NTUsIDY5NzczLCA5NzczLCAxMzE2NywgMTI5MTgsIAorICAgIDQxMDk2LCA3Mzk4MCwgNjkyNDUsIDc4MjU0LCA5MTc4OTMsIDEwNjg0LCAwLCA5MTc4OTYsIDAsIDc5NDYsIDEyNTQxLCAKKyAgICA4MTgyLCA2NzU4NiwgNjk3ODAsIDAsIDAsIDAsIDAsIDkwMDUsIDEyMjUsIDY2MzAsIDAsIDAsIDAsIDAsIDg4NDcsIDAsIAorICAgIDY1ODc2LCA1NTM1LCA4MzI5LCA3NDU5MCwgOTgzMDQ3LCA5MjYwOSwgMCwgMCwgMzEyNywgMjU5NSwgNjU3MTMsIDQyMDEzLCAKKyAgICA5ODM1OTMsIDU2MDcsIDQxMDg5LCAwLCAwLCA3NDI1NiwgMjY2NSwgMTEzMDQsIDAsIDc0MjAwLCA0OTcwLCA4NzY0LCAKICAgICAxMjA0NTksIDg5MzQsIDkyNzI2LCA0MTU2NiwgNDQ5MiwgMCwgNjUwMTEsIDQxMDkwLCAwLCAwLCAxMTg4LCA3MjU0LCAKICAgICAxMTAwLCAwLCAxMjgzMDEsIDQxMDgxLCAyOTEyLCAxMTc0OSwgNjk3OTIsIDAsIDAsIDM1NzIsIDEwMDIzLCA0OTU5LCAKICAgICAxMzA3OSwgMCwgMCwgOTcyOSwgMCwgMCwgMCwgNDMzNjEsIDAsIDAsIDExODAzLCA3OTk2LCA5OTA3LCA0MTQ1MCwgMTMzMDQsIAogICAgIDEyODI5MCwgMTI3MjYwLCA0MTQ1MSwgMCwgMTEwOTUsIDgyNzMsIDEyNzUzMywgMzQ1MSwgMCwgOTcyLCA0MTQ1MywgMCwgMCwgCi0gICAgNzM4ODMsIDkyNDA4LCA3Mzk0NSwgMCwgMzQ1NSwgMTk5NTUsIDk1MzgsIDAsIDY5ODA3LCAwLCAwLCAwLCAwLCAxMTM5NiwgCi0gICAgMCwgMTEwMTksIDAsIDAsIDAsIDEyMDUwNywgNDEwNzgsIDAsIDI2MSwgNTkyNywgNzc5MSwgMCwgNjQ0NDYsIDAsIDEwNjk2LCAKLSAgICAwLCA2MDczLCA5ODM4LCAxMTg5MjAsIDAsIDYwNzUsIDEyODU2MywgMjgyLCAwLCA2NDM3LCA3NDA3OCwgMTI4MDAwLCAKLSAgICA5ODAxLCAwLCAwLCAwLCAwLCAzNDc0LCAxMTg3ODcsIDAsIDEyMDY1NSwgNjA4MSwgMCwgMTI3ODQzLCA3NDA3NiwgNzg4NzksIAotICAgIDAsIDAsIDAsIDAsIDAsIDg3NTEsIDExNDk5LCAxMjAyNzMsIDc4MTYsIDEyNjM2LCA0NjY1LCAxMjYyOCwgNDY3MCwgCi0gICAgOTI2MDgsIDEyMDI3MiwgMCwgOTY0MiwgMTA5MTIsIDk1OCwgMCwgMTEzODcsIDc4ODc4LCA0NjY2LCAwLCA0OTE1LCAwLCAKLSAgICA0NjY5LCAwLCA2ODA5OSwgMTMyODcsIDQ2NjQsIDEwODM2LCAxMjA1NTAsIDAsIDY5Nzc1LCAwLCA0MzU5NSwgNzQ1MCwgMCwgCi0gICAgOTE3ODc1LCA4NjY0LCA5Njk3LCAzNjA2LCA5MTc4NzMsIDAsIDAsIDY0ODE1LCAxMDYzLCAxMjAyNTAsIDEyMDI1MSwgCi0gICAgOTc3MiwgNzI1NSwgODg4NiwgMTM4OSwgMTI3OTMyLCAxMjAyNTcsIDEyMDI1OCwgMTIwMjU5LCAxMjk0MSwgNDI2NjEsIAotICAgIDkyMzgxLCAxMjAyNTUsIDEyMDI1NiwgMTIzMDEsIDEyMDI2NiwgNjk4MjAsIDQxMTAyLCA2NjYwNCwgMTIwMjYyLCAKLSAgICAxMjAyNjMsIDEyMDI2NCwgMTAxNywgNjY2MDAsIDUyMywgNTA1LCAxNDQ3LCA3NDQzNiwgMCwgMCwgMCwgODYwOCwgNDI3ODksIAotICAgIDEyMDYxMywgMTI4NzA0LCAwLCAxMTkxOTYsIDExMzA3LCA2NjcwNywgOTE3ODcxLCAxMjc3NTEsIDExNzQ1LCA3OTE5LCAwLCAKLSAgICAxNjQxLCAwLCAwLCA4OTY2LCAwLCAwLCA1OTA4LCAwLCAwLCA2NzQ0LCAxMjgzNTUsIDE2OTksIDc0MTkxLCA3NDg0MywgMCwgCi0gICAgMCwgNjMwNiwgMTAxNjksIDAsIDExOTI1MSwgMTAwNjgsIDM3NjYsIDIzODksIDEyMDQ1NiwgMTIwNDU1LCA2NjExLCAyNTcsIAotICAgIDQzMTcwLCAxMzE1MywgMCwgNDIzODYsIDAsIDk0MzYsIDI1OTksIDAsIDY0OTYsIDk0NDksIDU5MzAsIDExNDc2LCAxMTAzMywgCi0gICAgMTE0NDcsIDEwNTQxLCA1NjIyLCAxMjA0MzYsIDg0NzcsIDM3NjAsIDE3MTgsIDk0NDIsIDY2NDMzLCAzNzc2LCAwLCAKLSAgICA0MTQzNSwgNDM1MiwgMCwgMjQzNSwgMTIwODA5LCA1NjIxLCAxMjAzODUsIDQyMDEsIDM3NzgsIDQyMDMsIDQyMDIsIDQyMDUsIAotICAgIDQyMDQsIDEyMDQ0NywgMzc2OCwgNjgxNDIsIDc2NSwgNDE0NDAsIDM3NjQsIDg0NzMsIDYzNzMsIDg0NjksIDEyMDQzOCwgCi0gICAgMTI5NDcsIDQ1NjQsIDAsIDAsIDc0MjcxLCA3Mzc1MywgODM3NCwgMCwgMCwgNjgyOSwgNTIyNSwgMTI4ODA3LCAxMjczODUsIAotICAgIDAsIDAsIDExOTYxNSwgMCwgNzQ3OTMsIDU2MjYsIDczODA3LCAxMTc3MSwgMCwgMTI3MjM2LCAxMjgwMTksIDAsIDUzNTMsIAotICAgIDU2MjUsIDc0MTc5LCAwLCAwLCAxMDEwLCA2NDU3MiwgNDE3ODAsIDQyNjIzLCA2NDI3NywgMCwgNjk1MiwgMCwgMTIwNzUyLCAKLSAgICA3ODc2MiwgMjU5MCwgNTYyOSwgNjU1NTIsIDc1NTEsIDEwMzI1LCA1NjMyLCAxMDQ3MSwgMTIwMDM4LCAxMjAwMjcsIAotICAgIDEyMDAyOCwgMTIwMDI1LCA1NjI4LCAxMjAwMzEsIDk3MCwgMTIwMDI5LCA0NzcyLCAyNDAwLCA1NjI3LCAxMjAwMTcsIAotICAgIDEyMDAxOCwgMTIwMDIzLCA2NDI3NSwgMTIwMDIxLCAxMDk2MSwgMCwgMjAzLCAwLCAwLCAwLCAwLCA3ODM1MCwgMCwgCi0gICAgNjQzNzgsIDQyMDU0LCAwLCAwLCA1NTQsIDExOTY0OSwgMTEzNTgsIDAsIDEyMTgyLCA0MjA0OCwgMTEwNjUsIDEyNzg3OCwgCi0gICAgNzM4OTEsIDAsIDAsIDU2OTQsIDc2ODksIDY5Nzk4LCA5MzIzLCA0MzI1LCAzMDQ3LCAxMDMxNywgMTc1LCAwLCAwLCAKLSAgICA2OTc2NCwgMCwgMCwgMTI0MywgNDIxNTQsIDU0MzEsIDY2NTIsIDAsIDY5NzcwLCA0MzY1MSwgMCwgNjgxMTgsIDEyODAyNCwgCi0gICAgMTEyOSwgMCwgMCwgNjU5MDAsIDE5ODYsIDc4NDYsIDc4ODA0LCA4NjYxLCA5MTc3NzIsIDY1MjU1LCAwLCAzODQ1LCA0NDkwLCAKLSAgICAxMTg5NjksIDY2NDksIDc0NDAwLCAxNDU2LCA3NTMwLCAxMTk3NywgNzI0OSwgODM2NiwgMCwgNzc1NiwgMTIzNDIsIAotICAgIDEyODU2OCwgNTEsIDQxNTE2LCAwLCA4NTcwLCA5NTY4LCA5MTc4NjMsIDQ1NiwgNzAyNiwgODE0NSwgMTE2OCwgOTI1MSwgCi0gICAgOTA4MiwgMTE5OTY0LCA2NDA1NSwgNDI3ODEsIDM4NjYsIDEyMzIzLCA0MTUxMiwgNzM4MDUsIDY4MTIxLCAwLCA0MTQ5NCwgCi0gICAgOTIzMTYsIDQ2NjAsIDAsIDEwNDA1LCAwLCA3ODgwMywgMCwgMCwgNDIwNDAsIDczOTE4LCAxMTk2MjcsIDc5NDQsIDQxNDU0LCAKLSAgICAxMjYwNSwgMCwgNDIyMDUsIDQxNDU1LCAyMzYsIDY0MDUxLCA3ODg2NywgODIxNCwgMCwgMCwgMCwgNDE0NTcsIDAsIAotICAgIDExOTU4OSwgMTk2OSwgMjM4NCwgODA5NywgOTE3ODY0LCAwLCAxMjczODAsIDc4MDI5LCA4NzY2LCAwLCA3ODA3OSwgNTg1NCwgCi0gICAgMTI3OTc0LCAxMDU4MywgMCwgMTE5OTg5LCAwLCAxMDQxNiwgOTE3ODY5LCAzODcyLCA5MTc4NjgsIDAsIDg0MjksIDAsIAotICAgIDExODgwNiwgMjgzOCwgMTI4ODAyLCAwLCA5MTc4NjYsIDAsIDAsIDAsIDAsIDAsIDExMDk2LCAxMjA4MTMsIDEwNTUzLCAKLSAgICAxNjYyLCA4NDgzLCAxMjAzOTYsIDQzNjA1LCA1ODkyLCA0MzQxOCwgMCwgNzM3NDIsIDY2LCA2NSwgNjgsIDY3LCA3MCwgNjksIAotICAgIDcyLCA3MSwgNzQsIDczLCA3NiwgNzUsIDc4LCA3NywgODAsIDc5LCA4MiwgODEsIDg0LCA4MywgODYsIDg1LCA4OCwgODcsIAotICAgIDkwLCA4OSwgMTE5ODYyLCAxMDM1NywgNzM4NSwgODE3MCwgMTcwNCwgODU1NiwgMCwgOTY1OSwgMCwgMCwgMCwgOTU1NiwgMCwgCi0gICAgNDUwMywgMTEzNTMsIDk2NDcsIDAsIDc4MTg1LCAwLCAwLCA5MjcxMywgNzg4ODYsIDAsIDAsIDc0MjI5LCA2NjU5MywgCi0gICAgNjQzOCwgOTE3OTc5LCA5MTA5LCA3ODg4MiwgMTI4OSwgNjQ1OTksIDAsIDAsIDAsIDY1NTA3LCAyNDQ3LCAwLCAwLCAKLSAgICAxMjgwNDIsIDAsIDAsIDAsIDYzMzQsIDAsIDAsIDE5OTM3LCAwLCA5MjM2OCwgMCwgNTY3NSwgMjU0LCAwLCAwLCA2OTY4NiwgCi0gICAgNDI0MjUsIDg5MTgsIDY0MDAzLCA1NzE2LCA0MjMxMiwgMCwgMCwgNjk3MiwgNDI4MjYsIDAsIDQyNDY0LCAxMjA1NjcsIDAsIAotICAgIDkyNjQ1LCA3NDc5NiwgNjQ0MDAsIDY0NjkzLCAwLCA3Nzg2MSwgNjU0MjksIDk1MTUsIDQ0MzUsIDAsIDQyNTIyLCAwLCAwLCAKLSAgICAxMTc4NSwgMCwgNjQ2NzEsIDQxOTc4LCAxNDEyLCA0NTk0LCAxMzkxLCAxMDUzNiwgODA2NywgOTkwMSwgNzc3NSwgCi0gICAgMTI4MjkzLCAwLCA3NDU4OCwgMTIwNzQ4LCAzMTQwLCAxMjg4NTQsIDc5NjAsIDQzMjcxLCAwLCAxMjUxOCwgMTA5MDksIAotICAgIDEyNzUwOCwgMTQyOCwgMTI0NzIsIDAsIDEyODc4NywgNzY5OSwgMTIzOTMsIDAsIDAsIDAsIDc0NTE4LCA4MjIzLCAwLCAKLSAgICA0MjYxLCAwLCAwLCAwLCAwLCAwLCAxMjgzMDIsIDAsIDEyODA0NiwgNDM0MTksIDAsIDY0NTU0LCAxMDU3NCwgMzg3OCwgMCwgCi0gICAgNDIzNTIsIDE3NTIsIDczNzg1LCAwLCA0MjUwNiwgMTI4NTQxLCAxMDE5OSwgMCwgMCwgMCwgNjU5MTksIDAsIDY2OTUsIAotICAgIDcyMCwgMzI0LCAwLCAwLCA0MzQwNiwgMCwgMTQ2NCwgNDA5ODUsIDAsIDc5NzQsIDAsIDQzNDc0LCAwLCA2NDQ4OCwgMCwgMCwgCi0gICAgNjQwNDEsIDc0Nzg3LCAwLCA3ODg2NSwgOTIyNTgsIDY1NTk3LCAwLCA3ODg2MywgMCwgMTMwMiwgMCwgNzg4NjEsIDAsIDAsIAotICAgIDAsIDUyMDQsIDc0Nzc0LCA0MzQwNCwgNDMzOTYsIDAsIDM5OTUsIDY4MzYwLCA2NTYwOCwgMzcxNCwgMCwgMCwgMCwgCi0gICAgMTA5OTksIDExNzUwLCAwLCA0MzI1MSwgNjg2NjAsIDQzMzAxLCAwLCAxMjA1NTcsIDgxMzAsIDg2NzIsIDEwODQ1LCAKLSAgICAxMTk2NCwgMCwgMCwgMCwgMCwgNjg0NTUsIDQyODYzLCA3MzgzOSwgMCwgMCwgMCwgMCwgMCwgMCwgNDY4LCA2MTIsIDAsIAotICAgIDY0NDAxLCA2NjQ0OCwgNjgzNzYsIDAsIDE2NzQsIDAsIDU4MjMsIDAsIDEyMjgwLCAwLCA1NDAsIDc0NTY0LCAxMTkwMTcsIAotICAgIDAsIDg0MzIsIDAsIDExMDczLCAwLCA2NDMxNiwgMCwgMCwgODIwLCA0MTc0MSwgMCwgMTIwNjY3LCAwLCA2NDY4NCwgCi0gICAgMTI2OTkyLCAzMzU5LCA3ODAwLCAxMjg2NDQsIDY1MTc3LCA2MjI2LCAzNTMsIDEyMzk2LCAwLCAxMTk2MTIsIDY0NzQyLCAKLSAgICAxMjg2ODIsIDEyMDI4MiwgMCwgMCwgMTI0MTIsIDE5OTQxLCAwLCAxMjAyNzcsIDc4ODQ3LCAxODg0LCA5NDgxLCA0MjQxOCwgCi0gICAgMCwgNDExNTcsIDAsIDExOTUsIDY0ODk4LCA3OTI0LCAwLCA0MTE1MSwgMjAxMCwgMCwgNDEzMjgsIDQyMzQ0LCAwLCAKLSAgICAxMjQwOSwgMCwgNDM2MCwgMTI3MDA5LCA5NzM5LCAwLCA3NDM5MiwgNzM5MjEsIDAsIDQyNTIxLCA4NTM5LCAwLCAwLCAKLSAgICAxMTg5ODYsIDAsIDQ3ODgsIDAsIDAsIDY1NzM0LCAwLCA0Mzc5MCwgMCwgMTMwNzUsIDc0NDI5LCAwLCA2NDU2OSwgNDM1MzIsIAotICAgIDEwODM3LCAyNDkyLCAxMjcxOTcsIDExODkwMSwgNjg2MzcsIDQxMTM2LCA0Mzc4NSwgMTE4MTMsIDk2NDksIDQxMTU0LCAKLSAgICAxMTk2MTcsIDUxMjgsIDQwMzgsIDQxMTQzLCA2NTYwNCwgNjQ4NTksIDQxNTkyLCA2NzcxLCAxNjQ4LCA1NDM1LCAwLCAKLSAgICA2NzM0LCA0MTM0MywgMTE5ODQ4LCA2NTQzOSwgMTI3MDksIDY5ODYsIDkyMzY0LCAwLCAwLCA0MTM0OSwgMTE5MTIzLCAKKyAgICA3Mzg4MywgOTI0MDgsIDczOTQ1LCA5ODM0NzAsIDM0NTUsIDE5OTU1LCA5NTM4LCAwLCA2OTgwNywgMCwgMCwgMCwgMCwgCisgICAgMTEzOTYsIDAsIDExMDE5LCAwLCAwLCAwLCAxMjA1MDcsIDQxMDc4LCAwLCAyNjEsIDU5MjcsIDc3OTEsIDAsIDY0NDQ2LCAwLCAKKyAgICAxMDY5NiwgMCwgNjA3MywgOTgzOCwgMTE4OTIwLCAwLCA2MDc1LCAxMjg1NjMsIDI4MiwgMCwgNjQzNywgNzQwNzgsIAorICAgIDEyODAwMCwgOTgwMSwgMCwgMCwgMCwgMCwgMzQ3NCwgMTE4Nzg3LCAwLCAxMjA2NTUsIDYwODEsIDAsIDEyNzg0MywgCisgICAgNzQwNzYsIDc4ODc5LCAwLCAwLCAwLCAwLCAwLCA4NzUxLCAxMTQ5OSwgMTIwMjczLCA3ODE2LCAxMjYzNiwgNDY2NSwgCisgICAgMTI2MjgsIDQ2NzAsIDkyNjA4LCAxMjAyNzIsIDAsIDk2NDIsIDEwOTEyLCA5NTgsIDAsIDExMzg3LCA3ODg3OCwgNDY2NiwgCisgICAgMCwgNDkxNSwgMCwgNDY2OSwgMCwgNjgwOTksIDEzMjg3LCA0NjY0LCAxMDgzNiwgMTIwNTUwLCAwLCA2OTc3NSwgMCwgCisgICAgNDM1OTUsIDc0NTAsIDAsIDkxNzg3NSwgODY2NCwgOTY5NywgMzYwNiwgOTE3ODczLCAwLCAwLCA2NDgxNSwgMTA2MywgCisgICAgMTIwMjUwLCAxMjAyNTEsIDk3NzIsIDcyNTUsIDg4ODYsIDEzODksIDEyNzkzMiwgMTIwMjU3LCAxMjAyNTgsIDEyMDI1OSwgCisgICAgMTI5NDEsIDQyNjYxLCA5MjM4MSwgMTIwMjU1LCAxMjAyNTYsIDEyMzAxLCAxMjAyNjYsIDY5ODIwLCA0MTEwMiwgNjY2MDQsIAorICAgIDEyMDI2MiwgMTIwMjYzLCAxMjAyNjQsIDEwMTcsIDY2NjAwLCA1MjMsIDUwNSwgMTQ0NywgNzQ0MzYsIDAsIDAsIDAsIAorICAgIDg2MDgsIDQyNzg5LCAxMjA2MTMsIDEyODcwNCwgMCwgMTE5MTk2LCAxMTMwNywgNjY3MDcsIDkxNzg3MSwgMTI3NzUxLCAKKyAgICAxMTc0NSwgNzkxOSwgMCwgMTY0MSwgMCwgMCwgODk2NiwgMCwgMCwgNTkwOCwgMCwgMCwgNjc0NCwgMTI4MzU1LCAxNjk5LCAKKyAgICA3NDE5MSwgNzQ4NDMsIDAsIDAsIDYzMDYsIDEwMTY5LCA5ODMwNDYsIDExOTI1MSwgMTAwNjgsIDM3NjYsIDIzODksIAorICAgIDEyMDQ1NiwgMTIwNDU1LCA2NjExLCAyNTcsIDQzMTcwLCAxMzE1MywgMCwgNDIzODYsIDAsIDk0MzYsIDI1OTksIDAsIAorICAgIDY0OTYsIDk0NDksIDU5MzAsIDExNDc2LCAxMTAzMywgMTE0NDcsIDEwNTQxLCA1NjIyLCAxMjA0MzYsIDg0NzcsIDM3NjAsIAorICAgIDE3MTgsIDk0NDIsIDY2NDMzLCAzNzc2LCAwLCA0MTQzNSwgNDM1MiwgOTgzMzU0LCAyNDM1LCAxMjA4MDksIDU2MjEsIAorICAgIDEyMDM4NSwgNDIwMSwgMzc3OCwgNDIwMywgNDIwMiwgNDIwNSwgNDIwNCwgMTIwNDQ3LCAzNzY4LCA2ODE0MiwgNzY1LCAKKyAgICA0MTQ0MCwgMzc2NCwgODQ3MywgNjM3MywgODQ2OSwgMTIwNDM4LCAxMjk0NywgNDU2NCwgMCwgMCwgNzQyNzEsIDczNzUzLCAKKyAgICA4Mzc0LCAwLCAwLCA2ODI5LCA1MjI1LCAxMjg4MDcsIDEyNzM4NSwgMCwgMCwgMTE5NjE1LCAwLCA3NDc5MywgNTYyNiwgCisgICAgNzM4MDcsIDExNzcxLCAwLCAxMjcyMzYsIDEyODAxOSwgMCwgNTM1MywgNTYyNSwgNzQxNzksIDAsIDAsIDEwMTAsIDY0NTcyLCAKKyAgICA0MTc4MCwgNDI2MjMsIDY0Mjc3LCAwLCA2OTUyLCAwLCAxMjA3NTIsIDc4NzYyLCAyNTkwLCA1NjI5LCA2NTU1MiwgNzU1MSwgCisgICAgMTAzMjUsIDU2MzIsIDEwNDcxLCAxMjAwMzgsIDEyMDAyNywgMTIwMDI4LCAxMjAwMjUsIDU2MjgsIDEyMDAzMSwgOTcwLCAKKyAgICAxMjAwMjksIDQ3NzIsIDI0MDAsIDU2MjcsIDEyMDAxNywgMTIwMDE4LCAxMjAwMjMsIDY0Mjc1LCAxMjAwMjEsIDEwOTYxLCAKKyAgICAwLCAyMDMsIDAsIDAsIDAsIDAsIDc4MzUwLCAwLCA2NDM3OCwgNDIwNTQsIDAsIDAsIDU1NCwgMTE5NjQ5LCAxMTM1OCwgMCwgCisgICAgMTIxODIsIDQyMDQ4LCAxMTA2NSwgMTI3ODc4LCA3Mzg5MSwgMCwgMCwgNTY5NCwgNzY4OSwgNjk3OTgsIDkzMjMsIDQzMjUsIAorICAgIDMwNDcsIDEwMzE3LCAxNzUsIDAsIDAsIDY5NzY0LCAwLCAwLCAxMjQzLCA0MjE1NCwgNTQzMSwgNjY1MiwgMCwgNjk3NzAsIAorICAgIDQzNjUxLCAwLCA2ODExOCwgMTI4MDI0LCAxMTI5LCAwLCAwLCA2NTkwMCwgMTk4NiwgNzg0NiwgNzg4MDQsIDg2NjEsIAorICAgIDkxNzc3MiwgNjUyNTUsIDAsIDM4NDUsIDQ0OTAsIDExODk2OSwgNjY0OSwgNzQ0MDAsIDE0NTYsIDc1MzAsIDExOTc3LCAKKyAgICA3MjQ5LCA4MzY2LCAwLCA3NzU2LCAxMjM0MiwgMTI4NTY4LCA1MSwgNDE1MTYsIDAsIDg1NzAsIDk1NjgsIDkxNzg2MywgCisgICAgNDU2LCA3MDI2LCA4MTQ1LCAxMTY4LCA5MjUxLCA5MDgyLCAxMTk5NjQsIDY0MDU1LCA0Mjc4MSwgMzg2NiwgMTIzMjMsIAorICAgIDQxNTEyLCA3MzgwNSwgNjgxMjEsIDAsIDQxNDk0LCA5MjMxNiwgNDY2MCwgMCwgMTA0MDUsIDAsIDc4ODAzLCAwLCAwLCAKKyAgICA0MjA0MCwgNzM5MTgsIDExOTYyNywgNzk0NCwgNDE0NTQsIDEyNjA1LCAwLCA0MjIwNSwgNDE0NTUsIDIzNiwgNjQwNTEsIAorICAgIDc4ODY3LCA4MjE0LCAwLCAwLCAwLCA0MTQ1NywgOTgzNzAyLCAxMTk1ODksIDE5NjksIDIzODQsIDgwOTcsIDkxNzg2NCwgMCwgCisgICAgMTI3MzgwLCA3ODAyOSwgODc2NiwgMCwgNzgwNzksIDU4NTQsIDEyNzk3NCwgMTA1ODMsIDAsIDExOTk4OSwgMCwgMTA0MTYsIAorICAgIDkxNzg2OSwgMzg3MiwgOTE3ODY4LCAwLCA4NDI5LCAwLCAxMTg4MDYsIDI4MzgsIDEyODgwMiwgMCwgOTE3ODY2LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAxMTA5NiwgMTIwODEzLCAxMDU1MywgMTY2MiwgODQ4MywgMTIwMzk2LCA0MzYwNSwgNTg5MiwgNDM0MTgsIDAsIAorICAgIDczNzQyLCA2NiwgNjUsIDY4LCA2NywgNzAsIDY5LCA3MiwgNzEsIDc0LCA3MywgNzYsIDc1LCA3OCwgNzcsIDgwLCA3OSwgCisgICAgODIsIDgxLCA4NCwgODMsIDg2LCA4NSwgODgsIDg3LCA5MCwgODksIDExOTg2MiwgMTAzNTcsIDczODUsIDgxNzAsIDE3MDQsIAorICAgIDg1NTYsIDAsIDk2NTksIDAsIDAsIDAsIDk1NTYsIDAsIDQ1MDMsIDExMzUzLCA5NjQ3LCAwLCA3ODE4NSwgMCwgMCwgCisgICAgOTI3MTMsIDc4ODg2LCAwLCAwLCA3NDIyOSwgNjY1OTMsIDY0MzgsIDkxNzk3OSwgOTEwOSwgNzg4ODIsIDEyODksIDY0NTk5LCAKKyAgICAwLCAwLCAwLCA2NTUwNywgMjQ0NywgMCwgMCwgMTI4MDQyLCAwLCAwLCAwLCA2MzM0LCAwLCAwLCAxOTkzNywgMCwgOTIzNjgsIAorICAgIDAsIDU2NzUsIDI1NCwgMCwgMCwgNjk2ODYsIDQyNDI1LCA4OTE4LCA2NDAwMywgNTcxNiwgNDIzMTIsIDAsIDAsIDY5NzIsIAorICAgIDQyODI2LCAwLCA0MjQ2NCwgMTIwNTY3LCAwLCA5MjY0NSwgNzQ3OTYsIDY0NDAwLCA2NDY5MywgMCwgNzc4NjEsIDY1NDI5LCAKKyAgICA5NTE1LCA0NDM1LCAwLCA0MjUyMiwgMCwgMCwgMTE3ODUsIDAsIDY0NjcxLCA0MTk3OCwgMTQxMiwgNDU5NCwgMTM5MSwgCisgICAgMTA1MzYsIDgwNjcsIDk5MDEsIDc3NzUsIDEyODI5MywgMCwgNzQ1ODgsIDEyMDc0OCwgMzE0MCwgMTI4ODU0LCA3OTYwLCAKKyAgICA0MzI3MSwgMCwgMTI1MTgsIDEwOTA5LCAxMjc1MDgsIDE0MjgsIDEyNDcyLCAwLCAxMjg3ODcsIDc2OTksIDEyMzkzLCAwLCAKKyAgICAwLCAwLCA3NDUxOCwgODIyMywgMCwgNDI2MSwgMCwgMCwgMCwgMCwgMCwgMTI4MzAyLCAwLCAxMjgwNDYsIDQzNDE5LCAwLCAKKyAgICA2NDU1NCwgMTA1NzQsIDM4NzgsIDAsIDQyMzUyLCAxNzUyLCA3Mzc4NSwgMCwgNDI1MDYsIDEyODU0MSwgMTAxOTksIDAsIDAsIAorICAgIDAsIDY1OTE5LCAwLCA2Njk1LCA3MjAsIDMyNCwgMCwgMCwgNDM0MDYsIDAsIDE0NjQsIDQwOTg1LCAwLCA3OTc0LCAwLCAKKyAgICA0MzQ3NCwgMCwgNjQ0ODgsIDAsIDAsIDY0MDQxLCA3NDc4NywgMCwgNzg4NjUsIDkyMjU4LCA2NTU5NywgMCwgNzg4NjMsIDAsIAorICAgIDEzMDIsIDAsIDc4ODYxLCAwLCAwLCAwLCA1MjA0LCA3NDc3NCwgNDM0MDQsIDQzMzk2LCAwLCAzOTk1LCA2ODM2MCwgCisgICAgNjU2MDgsIDM3MTQsIDAsIDAsIDAsIDEwOTk5LCAxMTc1MCwgMCwgNDMyNTEsIDY4NjYwLCA0MzMwMSwgMCwgMTIwNTU3LCAKKyAgICA4MTMwLCA4NjcyLCAxMDg0NSwgMTE5NjQsIDAsIDAsIDAsIDAsIDY4NDU1LCA0Mjg2MywgNzM4MzksIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDQ2OCwgNjEyLCAwLCA2NDQwMSwgNjY0NDgsIDY4Mzc2LCAwLCAxNjc0LCAwLCA1ODIzLCAwLCAxMjI4MCwgMCwgNTQwLCAKKyAgICA3NDU2NCwgMTE5MDE3LCAwLCA4NDMyLCAwLCAxMTA3MywgMCwgNjQzMTYsIDAsIDAsIDgyMCwgNDE3NDEsIDAsIDEyMDY2NywgCisgICAgMCwgNjQ2ODQsIDEyNjk5MiwgMzM1OSwgNzgwMCwgMTI4NjQ0LCA2NTE3NywgNjIyNiwgMzUzLCAxMjM5NiwgMCwgMTE5NjEyLCAKKyAgICA2NDc0MiwgMTI4NjgyLCAxMjAyODIsIDAsIDAsIDEyNDEyLCAxOTk0MSwgMCwgMTIwMjc3LCA3ODg0NywgMTg4NCwgOTQ4MSwgCisgICAgNDI0MTgsIDAsIDQxMTU3LCAwLCAxMTk1LCA2NDg5OCwgNzkyNCwgMCwgNDExNTEsIDIwMTAsIDAsIDQxMzI4LCA0MjM0NCwgCisgICAgMCwgMTI0MDksIDAsIDQzNjAsIDEyNzAwOSwgOTczOSwgMCwgNzQzOTIsIDczOTIxLCAwLCA0MjUyMSwgODUzOSwgOTgzNDYwLCAKKyAgICAwLCAxMTg5ODYsIDAsIDQ3ODgsIDAsIDAsIDY1NzM0LCAwLCA0Mzc5MCwgMCwgMTMwNzUsIDc0NDI5LCAwLCA2NDU2OSwgCisgICAgNDM1MzIsIDEwODM3LCAyNDkyLCAxMjcxOTcsIDExODkwMSwgNjg2MzcsIDQxMTM2LCA0Mzc4NSwgMTE4MTMsIDk2NDksIAorICAgIDQxMTU0LCAxMTk2MTcsIDUxMjgsIDQwMzgsIDQxMTQzLCA2NTYwNCwgNjQ4NTksIDQxNTkyLCA2NzcxLCAxNjQ4LCA1NDM1LCAKKyAgICAwLCA2NzM0LCA0MTM0MywgMTE5ODQ4LCA2NTQzOSwgMTI3MDksIDY5ODYsIDkyMzY0LCAwLCAwLCA0MTM0OSwgMTE5MTIzLCAKICAgICAxMjU4MSwgMTAzNzQsIDUxNzUsIDAsIDczODA2LCAxMDI1NCwgMCwgMTAyNzgsIDEwMjYyLCA3Nzk1MCwgNDEzNDYsIDAsIAogICAgIDYwNywgMCwgMTE5ODUzLCAxMjg4NDYsIDEyOTIzLCAxMDMxNCwgMTAyODIsIDY1NDc3LCAxMDM3OCwgMTIwMjk3LCA0MDk3NiwgCi0gICAgODI2NSwgMCwgMTE5ODM0LCA0MDk3NSwgNTg0MCwgNDI4MzgsIDAsIDQwOTc4LCAwLCAxMTk4NDAsIDAsIDAsIDAsIDY2NDQ0LCAKLSAgICAxMDUzOCwgMCwgMjU1MCwgMTE5ODM2LCA2Nzc5LCAwLCAwLCAzNTI1LCA2ODI0LCAxMTg4ODYsIDAsIDAsIDU2MTksIAotICAgIDY1ODIyLCAwLCAxOTQ4ODIsIDc0NTUsIDAsIDU2MTYsIDExNDg2LCA5NjU2LCAwLCAwLCAxMDcyNywgNTYxNSwgMCwgCisgICAgODI2NSwgMCwgMTE5ODM0LCA0MDk3NSwgNTg0MCwgNDI4MzgsIDAsIDQwOTc4LCA5ODM2MzIsIDExOTg0MCwgMCwgMCwgMCwgCisgICAgNjY0NDQsIDEwNTM4LCAwLCAyNTUwLCAxMTk4MzYsIDY3NzksIDAsIDAsIDM1MjUsIDY4MjQsIDExODg4NiwgMCwgMCwgCisgICAgNTYxOSwgNjU4MjIsIDAsIDE5NDg4MiwgNzQ1NSwgMCwgNTYxNiwgMTE0ODYsIDk2NTYsIDAsIDAsIDEwNzI3LCA1NjE1LCAwLCAKICAgICAxMjA1NTEsIDQyMzgwLCA2NDg5NSwgNDM2OTMsIDY2NDUxLCA4MDgsIDU0NTUsIDExMzQ3LCAwLCAxMDI2LCA1NjIwLCAKICAgICAxOTQ4ODcsIDAsIDExMzUwLCA1NjE3LCAwLCA5MjI1LCA2NDYzOSwgMTI3MDczLCA5MTQ1LCAxMjgwNjAsIDEzMzgsIAogICAgIDEyMDU4MSwgMCwgMTI3MzksIDQ2MDMsIDMwODQsIDAsIDkyNDg0LCA5ODU4LCA2MDM3LCAwLCAzOTc0LCA3ODIxMywgCkBAIC0xNzI1OSwxMjYgKzE3NDg2LDEyOCBAQAogICAgIDkxNzYyNCwgNDM3NDAsIDAsIDQwOTY2LCA5MTc2MjMsIDEzMjg2LCAzOTk4LCA0MjU5OCwgNDI1OTYsIDUwMywgNzQyMzcsIAogICAgIDg3MzUsIDI2OTAsIDY2NDg4LCA0MjgzNiwgMTI3MTUwLCA0MTk1NCwgOTE3NjE3LCAxNjUyLCA3NzIsIDY2ODgsIDgzMTAsIAogICAgIDY1NDI4LCAzNDg3LCA0MzQxNiwgMzU4NSwgMTAxOTQsIDQzMzIwLCAxMTkxNTksIDEyODE4MywgMTk0ODc0LCA2NDY4LCAKLSAgICA0MTk3NiwgOTcyMCwgOTE3NjA2LCAxMTc2NywgNDE5NzAsIDAsIDU4MzYsIDEyMzU4LCAwLCA0MzU1LCA5MDQ4LCAxMjE4MCwgCi0gICAgNjUwMjcsIDY0NjgwLCAxMzAzOCwgNDM2OTksIDAsIDQxNDg4LCAxMjgwODcsIDg1MjcsIDE5NDkxNywgMTIzNjIsIDEyNDM1LCAKLSAgICAxMjM2MCwgNDEwNTMsIDMyNjYsIDAsIDEyMzU2LCA4NjE2LCA0MTQ2NiwgMCwgOTI1ODgsIDExNDUwLCAwLCAzNjM4LCAKLSAgICAxMjM1NCwgMCwgMzIxNiwgMCwgMjM1OCwgOTI2MDYsIDg2MzMsIDAsIDAsIDExOTE4MiwgNjkyNDQsIDAsIDAsIDExNzU5LCAKLSAgICAxOTQ5MDMsIDYzNjgsIDc0ODIzLCAwLCA0MTQyMywgODA3OCwgMTA1MDQsIDAsIDQxNjk4LCA0MjIzNywgMCwgNzAwMiwgMCwgCi0gICAgNDE0MzAsIDQyMjY3LCA0MTA1MSwgNDE0ODQsIDAsIDAsIDQxMDUwLCA0MTQ3MywgMTA0NjYsIDEzMDk5LCAwLCAwLCAwLCAKLSAgICA2NDM1LCAwLCAxMTM2MiwgMCwgMCwgNjUzODIsIDAsIDQxNDIwLCAwLCAzNjI1LCA3ODE1NywgNDE0MDksIDAsIDY5NjM5LCAKLSAgICAyMDQxLCA5MTc4LCA5NjcyLCA0MTQyNywgNDM1NDEsIDQzMzE3LCAwLCAwLCAwLCA0MTQyNCwgOTE3NTk4LCAxMjA1NDYsIDAsIAotICAgIDEyODIxMiwgMCwgNDE0MTcsIDEyNjEsIDAsIDAsIDEyMTAyLCAxMTk2NjIsIDQxNDAxLCAwLCAxMjc1MzgsIDAsIDc4MjUxLCAKLSAgICAwLCA0MjI5MCwgMzI3NSwgOTI0NzIsIDQyMzI5LCA3NDc1OSwgMCwgMCwgMCwgOTIzODgsIDY5NjQ5LCAxMDk4OSwgNzQyMzQsIAotICAgIDAsIDEwNTk4LCA3NDEwLCAyNjY5LCA5MDMsIDAsIDI5MjAsIDAsIDEyNzIzMiwgNzQ2MDMsIDY0NTA0LCAxOTkyOCwgMCwgMCwgCi0gICAgMzkxNywgMCwgMTE3MzIsIDAsIDAsIDQxNDQ4LCA0MTQ2MSwgMTI4ODIzLCAwLCAxMjc5MTIsIDAsIDg4MTksIDEyNjYzLCAwLCAKLSAgICA0MTE4NCwgNzQwMTQsIDIzMiwgNzQ4MzUsIDEyMDY0NiwgOTE2OCwgNjU3ODYsIDAsIDAsIDAsIDkwOTQsIDAsIDExNzU4LCAKLSAgICA2ODQyNSwgMCwgMTA2NCwgNDI0NjcsIDEyODA0NCwgMTAxMTUsIDE5OTI0LCA5MjcxMSwgMCwgNzg2MiwgNjQ1NTEsIAotICAgIDEzMjI0LCA4NTE2LCA0MTg2MiwgNjY2NTAsIDc1NjEsIDc4NjE4LCA2OTc5MywgMTg3OCwgMCwgMCwgMjkxMSwgMCwgCi0gICAgNDExNzgsIDU0MjcsIDY0ODIzLCAwLCAwLCAzNzg3LCA0MTE3NCwgMCwgNDE0NTgsIDAsIDQxNDYzLCA0MjQxMywgMTEyOTIsIAotICAgIDI0MDYsIDc3NSwgMCwgNjU1ODQsIDAsIDYwNzQsIDk2MTgsIDEyODY2OCwgMCwgNDM0NDAsIDAsIDE5NDkwMSwgNDE0MzYsIAotICAgIDM2NTYsIDAsIDE5NDg5OSwgNDE0NTYsIDAsIDE1OTksIDExMzMzLCAwLCA2NzAzLCA4NTEzLCAwLCAxNjEzLCAwLCA2ODQ1NiwgCi0gICAgMTI1OTgsIDAsIDEyMDczNCwgNzg3NDUsIDc0NTAwLCA0MTQ2MCwgMTAxNDUsIDEwNTQyLCA5OTM3LCA3ODc0NiwgMCwgCi0gICAgOTkwNSwgMCwgNjU3MzAsIDAsIDEyMDM3NCwgODQyNywgMTIwMzc1LCA1NTI0NiwgMTIwMzc2LCAwLCAxMTQ5NywgNjQ2ODcsIAotICAgIDc0MDA4LCA0MjU5MiwgMzg3MSwgMCwgMTI4MzA1LCA5MTExLCA1NzQxLCAwLCAxOTQ4NDYsIDEyMDM2NiwgMTE5MTExLCAKLSAgICAxMjA3NDUsIDAsIDEyMDM2OCwgMCwgMTE2NDgsIDAsIDE5NDg3MywgMTIwMzY0LCA0MTU4NywgMTIwMzY1LCAwLCA3NDMyMiwgCi0gICAgNDIxMTMsIDAsIDEyNzE1NSwgMTIxNzIsIDAsIDc0NTMwLCA2NTI5OCwgNjU3MjMsIDE5NDg0MCwgNzM4NzEsIDY1NzI0LCAKLSAgICA3OTI4LCAxMjAzNTQsIDAsIDQxNTk1LCA3MzczMCwgMCwgNDIxMTgsIDczODMwLCA2NjA0MiwgMTAzNTUsIDAsIDc4NzUsIDAsIAotICAgIDQxNTk4LCAzOTkzLCAwLCAxNTQ1LCA0MDk3MSwgNTM2LCAxMjg1MjEsIDQzMDI5LCAwLCAwLCA2NTE3MywgNjUyODYsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDQxMzc1LCA1NDAyLCAwLCAwLCAxNjg3LCAxMjA1MDMsIDAsIDAsIDc4MTk0LCA2NDMyNiwgCi0gICAgNDA5NjksIDEwNTI2LCA3ODc1MywgODMyMywgNDA5NjgsIDEzMzksIDExNzMxLCA3ODc1NiwgMCwgNjU0NjAsIDEyMjQyLCAKLSAgICAxMjg1MTMsIDgwMjAsIDEwODQzLCAxMTU1NCwgMCwgMCwgODI2NiwgNDEwMDYsIDY1NzIyLCAwLCAxMDcxMCwgMCwgCi0gICAgMTE4OTQyLCA2NzY2NywgNjQ1NjcsIDExOTE1NSwgMTk1MDkxLCAwLCAxMTk2MzYsIDY3ODU3LCAxMjA2ODcsIDAsIDAsIAotICAgIDExNzU1LCA2NjMwNSwgMCwgMCwgMTA5MTcsIDEyMDc2NywgMCwgMTEyNzIsIDIwNDAsIDQxMjQ3LCA0MTMyNiwgMTk1MDYwLCAKLSAgICAxNzQxLCA0MjM3MCwgMTIyNywgMCwgMCwgMTE0MTMsIDAsIDAsIDUyODMsIDE1ODYsIDQ5NzgsIDAsIDE5ODQsIDE5NDYyMSwgCi0gICAgMCwgOTIyOTMsIDQwOTg0LCAxMjgzMDYsIDkzNzMsIDAsIDEyOTE2LCA2Mjg0LCAwLCA0MTY2MywgMCwgMCwgMCwgOTIzNywgCi0gICAgOTM4NSwgNDE2NDgsIDAsIDAsIDAsIDQxNjY2LCAxODMwLCA3Mzc4MywgMjA1NiwgNDEyODcsIDkyNjEwLCAwLCAwLCAKLSAgICA0MjIxOSwgMTI4MjU3LCAwLCA0MTk4NywgNDE2NzYsIDAsIDEyMDgyMywgMCwgNDE2NzAsIDAsIDkyNTkwLCAyNzk2LCAKLSAgICA1NTI5MSwgMTE2ODMsIDk5MDIsIDc0NTIxLCAwLCAxMTQ1MSwgMCwgMTI4ODIyLCA0MjYzMSwgMjM1OSwgMCwgNjc4NDQsIAotICAgIDc0MTY0LCA0MTIzOCwgNTQ4LCAxMTQwNSwgMTMxMzMsIDY0MzY4LCAwLCAxMjg3OTUsIDAsIDM5NywgNDM2MjIsIDQyMTM5LCAKLSAgICA5NTQ3LCA5NTkwLCAxMjgyMzgsIDE2MTQsIDQzNjYxLCA2NDM1NiwgNjYzMDcsIDY2NTEsIDEzNTgsIDAsIDQyOCwgOTYyMCwgCi0gICAgMTQ2NiwgNzgxMTIsIDEwOTgyLCAxMTg4MzEsIDEzMzMsIDcxMDQsIDQwNywgNjQyNSwgMTI4ODM0LCA3NDI1MywgMCwgMCwgCi0gICAgMCwgNTgwNCwgMTE5NzYsIDg1NTQsIDkyNzIxLCAwLCAwLCA5MDU3LCA0MjI5NCwgNDEyMTgsIDAsIDAsIDc4MTM3LCAxODgzLCAKLSAgICAxMDk1MiwgODA0OCwgNzgxNDIsIDQxMjI1LCA5MjYyMSwgNDI5MTUsIDAsIDEyODY4NCwgMCwgNDQwNywgMCwgNjU4MDksIAotICAgIDExOTA3NCwgMTk0ODIxLCA4NDQ4LCA3MTQxLCA3NDE4MywgMCwgMTI2NzUsIDEyNjU5LCAwLCA0MjM2MywgMTIwNjI0LCAKLSAgICAxOTQ4MjQsIDU1MjczLCAxMDc2NiwgMTIwMTIsIDIzODYsIDY0NzMyLCA5MTcwLCA5MTc4MjEsIDkxMjMsIDY0NTg1LCAKLSAgICAxMjA1MDAsIDAsIDcxNDAsIDEwOTc3LCAxMjczNzgsIDQxNjQsIDkwODEsIDAsIDEyMDU2OSwgNDIwNDksIDQyMDQyLCAKLSAgICA4NzA5LCAxMjgyODMsIDAsIDEyMDYzNywgNDI0MTksIDY0Nzk5LCA0MjA0NywgMCwgMCwgODQ3MCwgMTE4MDcsIDY1ODk3LCAKLSAgICA1NzcsIDAsIDAsIDc0MzAwLCAwLCAxMjczMDgsIDc0ODQwLCAwLCAwLCAxMjg3OTEsIDkyMjI0LCA4NzM2LCAxNDE0LCAKLSAgICA0MjY0MywgOTY4MywgNDM0ODYsIDc0MzQ0LCAwLCAyNTM2LCAwLCA2NjMzMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNjYzMTcsIAotICAgIDkxNzYxMiwgNjYzMTUsIDIxMDYsIDEyMDIyMiwgMTEyNzMsIDAsIDQzMDA0LCA3NTQxLCAwLCAwLCA5NjEsIDY0MzA3LCAKLSAgICA2NjMyNCwgNjQ5MDYsIDEyODU5MSwgMzEwNiwgNjU5MTcsIDQxMjg0LCAxNjk2LCAwLCA4OTEsIDEyMTA1LCAwLCA0MjYyNCwgCi0gICAgMTI4MDIsIDMyNjQsIDg4MjQsIDEzMjY4LCA0MzAwMywgMTA5MzYsIDAsIDAsIDAsIDE5NDgyNiwgOTI2ODgsIDAsIDIzMjIsIAotICAgIDEyMDM3MSwgMCwgMTE0NDksIDEyODE4NywgNDI4NjgsIDQxMjg1LCAzNTQ3LCAwLCAwLCAwLCAwLCA0MzIxNiwgNjA4OSwgCi0gICAgNzg2ODIsIDAsIDEyMDU3OCwgNDE3MCwgMTAyOSwgMTI3NzYxLCAxMjcwMzYsIDExOTIyNCwgNDIzNzQsIDAsIDc0NCwgMCwgCi0gICAgMCwgMCwgNjU4MjMsIDEyNzgyNiwgMCwgMzU1MSwgMCwgMCwgNDYyMywgNTUyNjgsIDAsIDQ1OTgsIDAsIDY1MTM2LCAKLSAgICAxMjcxMzYsIDAsIDAsIDEwODUxLCAwLCA2MTc5LCA5MjYwMiwgNjE4MCwgMCwgMTE5NTIsIDEyMDc3OCwgNzg2NDgsIAotICAgIDExOTcyLCA3ODY0NiwgNzg2NDcsIDc4NjQ0LCA3ODY0NSwgMTc3LCA3ODY0MywgNjE3NiwgMTIwNTgwLCAwLCAwLCA2MTc3LCAKLSAgICA5MDIwLCA3ODY1MiwgNzg2NTMsIDYxNzgsIDEyMDI0OSwgMTIwMjQyLCAxMjgwMjcsIDY3NjczLCA3NTE4LCA4NzU0LCAwLCAKLSAgICAxMjAyMzcsIDIxMzcsIDQzMDgxLCAwLCAwLCA5MTM2LCAxMjAyNDAsIDQ0MDEsIDQxMjgwLCAwLCA4OTc0LCAyMzA4LCAwLCAKLSAgICA3NDE0OSwgMCwgMjMxOCwgMCwgNjYzNjEsIDgxOTgsIDAsIDY0MzYwLCAxMjYwMSwgNDI1MzYsIDY1MjY2LCAxMjA4MjcsIAotICAgIDc0MzA3LCAwLCA2OTcwLCA1NDA0LCA0MzMzMiwgMzY2NywgNzkzNiwgMTI5MjUsIDEyNjk4OSwgNjM4NSwgMCwgMCwgCi0gICAgMTE4OTQ5LCAxMDg3NCwgNjU1MDUsIDEyODA4MywgMCwgNDIwNTMsIDIwNzUsIDQyMDU3LCAxMTA4MywgNDIwNTIsIDAsIDAsIAotICAgIDY3NjUxLCAwLCA5NjY1LCA5MjMwMCwgMCwgMTMxODEsIDAsIDAsIDAsIDAsIDc0MTQ4LCAwLCAwLCAxMjAyMjUsIDEyMDIyOSwgCi0gICAgMTIwMjI0LCA3NDE3MiwgNDExNDUsIDAsIDAsIDAsIDQxMTQ4LCA4NjgzLCA3NTk0LCAxMjc1MTksIDAsIDExOTA5MCwgCi0gICAgMTA4NjksIDQzNDU4LCA0MTE0NiwgOTI0MDcsIDExNDQxLCAwLCAzNTEyLCAxMTk2MzMsIDAsIDgxMDMsIDAsIDAsIDY1MTg0LCAKLSAgICAxMTc4MCwgNDE1NjMsIDQyNzk2LCAwLCA2OTc0MiwgNDE1NDQsIDY1MTQ2LCAwLCAwLCAwLCAwLCAxOTk0MiwgMCwgCi0gICAgMTE4OTA4LCA3OTg4LCAxMDQzNiwgNzQyNzMsIDMyNzEsIDczODA0LCA2NDcxMSwgMCwgMCwgMCwgMCwgMzgwNCwgMTMwNzAsIAotICAgIDExNTU3LCA0MjA0NCwgMCwgMTA5NSwgMCwgMzU5OSwgMTI3Nzc0LCAwLCAxMjg4NjEsIDg1MTQsIDAsIDAsIDAsIDc0MzQ2LCAKLSAgICA2NjY5NywgMCwgMTE2ODQsIDAsIDkyNDg2LCAwLCAwLCA0MjA0MywgNDMyMzIsIDY2Njc3LCAwLCA0MjA0NiwgNzgyNDEsIAotICAgIDQwMzYsIDAsIDAsIDEyODIxMywgMTk0ODYxLCAwLCAxMTk1NCwgMCwgMTQ1MCwgMTI5ODYsIDEzNDAsIDAsIDY1NDQxLCAKLSAgICA5MjcyMiwgMCwgMCwgMTI3NzcyLCAwLCA5MTc1NDIsIDAsIDAsIDY1MzksIDAsIDAsIDAsIDE5NDg1NiwgMCwgMTIwNDkyLCAKLSAgICA0MTE5MCwgMzk3MywgMTE5MzY1LCA0NTc1LCA0MTE5MywgNzk4MiwgNDI5LCAwLCAxMjcxOTQsIDAsIDE5NDg1NCwgNjU3OTIsIAotICAgIDAsIDExODk2OCwgNjQxNywgMTE4OTE4LCA3ODE3OCwgMCwgMTk0ODUwLCAwLCAwLCA0OTE5LCAxMDU5MCwgMCwgNzc1NSwgMCwgCi0gICAgMCwgNjQ1NDgsIDEyMDUwNiwgMTYyMSwgMTAyMTQsIDY1MTI2LCAwLCAxMjcwMDQsIDAsIDEyMTg4LCAwLCAxNjE3LCA4MDUwLCAKLSAgICAwLCA1MDE1LCAwLCAxMTkxNzQsIDQyNTkwLCAxOTQ4NzEsIDE3NTYsIDc4MTgxLCAwLCA2NTc2OCwgNjM1MiwgNDE4OTIsIDAsIAorICAgIDQxOTc2LCA5NzIwLCA5MTc2MDYsIDExNzY3LCA0MTk3MCwgOTgzMzE4LCA1ODM2LCAxMjM1OCwgMCwgNDM1NSwgOTA0OCwgCisgICAgMTIxODAsIDY1MDI3LCA2NDY4MCwgMTMwMzgsIDQzNjk5LCAwLCA0MTQ4OCwgMTI4MDg3LCA4NTI3LCAxOTQ5MTcsIDEyMzYyLCAKKyAgICAxMjQzNSwgMTIzNjAsIDQxMDUzLCAzMjY2LCAwLCAxMjM1NiwgODYxNiwgNDE0NjYsIDAsIDkyNTg4LCAxMTQ1MCwgMCwgCisgICAgMzYzOCwgMTIzNTQsIDAsIDMyMTYsIDAsIDIzNTgsIDkyNjA2LCA4NjMzLCAwLCA5ODM0ODAsIDExOTE4MiwgNjkyNDQsIDAsIAorICAgIDAsIDExNzU5LCAxOTQ5MDMsIDYzNjgsIDc0ODIzLCAwLCA0MTQyMywgODA3OCwgMTA1MDQsIDAsIDQxNjk4LCA0MjIzNywgMCwgCisgICAgNzAwMiwgOTgzNDEzLCA0MTQzMCwgNDIyNjcsIDQxMDUxLCA0MTQ4NCwgMCwgMCwgNDEwNTAsIDQxNDczLCAxMDQ2NiwgCisgICAgMTMwOTksIDAsIDAsIDAsIDY0MzUsIDAsIDExMzYyLCAwLCAwLCA2NTM4MiwgMCwgNDE0MjAsIDAsIDM2MjUsIDc4MTU3LCAKKyAgICA0MTQwOSwgMCwgNjk2MzksIDIwNDEsIDkxNzgsIDk2NzIsIDQxNDI3LCA0MzU0MSwgNDMzMTcsIDAsIDAsIDAsIDQxNDI0LCAKKyAgICA5MTc1OTgsIDEyMDU0NiwgMCwgMTI4MjEyLCAwLCA0MTQxNywgMTI2MSwgMCwgMCwgMTIxMDIsIDExOTY2MiwgNDE0MDEsIDAsIAorICAgIDEyNzUzOCwgMCwgNzgyNTEsIDAsIDQyMjkwLCAzMjc1LCA5MjQ3MiwgNDIzMjksIDc0NzU5LCAwLCAwLCAwLCA5MjM4OCwgCisgICAgNjk2NDksIDEwOTg5LCA3NDIzNCwgMCwgMTA1OTgsIDc0MTAsIDI2NjksIDkwMywgMCwgMjkyMCwgMCwgMTI3MjMyLCAKKyAgICA3NDYwMywgNjQ1MDQsIDE5OTI4LCAwLCAwLCAzOTE3LCAwLCAxMTczMiwgMCwgOTgzNDk2LCA0MTQ0OCwgNDE0NjEsIAorICAgIDEyODgyMywgMCwgMTI3OTEyLCAwLCA4ODE5LCAxMjY2MywgMCwgNDExODQsIDc0MDE0LCAyMzIsIDc0ODM1LCAxMjA2NDYsIAorICAgIDkxNjgsIDY1Nzg2LCAwLCAwLCAwLCA5MDk0LCAwLCAxMTc1OCwgNjg0MjUsIDAsIDEwNjQsIDQyNDY3LCAxMjgwNDQsIAorICAgIDEwMTE1LCAxOTkyNCwgOTI3MTEsIDAsIDc4NjIsIDY0NTUxLCAxMzIyNCwgODUxNiwgNDE4NjIsIDY2NjUwLCA3NTYxLCAKKyAgICA3ODYxOCwgNjk3OTMsIDE4NzgsIDAsIDAsIDI5MTEsIDAsIDQxMTc4LCA1NDI3LCA2NDgyMywgMCwgMCwgMzc4NywgNDExNzQsIAorICAgIDAsIDQxNDU4LCAwLCA0MTQ2MywgNDI0MTMsIDExMjkyLCAyNDA2LCA3NzUsIDAsIDY1NTg0LCAwLCA2MDc0LCA5NjE4LCAKKyAgICAxMjg2NjgsIDk4MzY4NCwgNDM0NDAsIDAsIDE5NDkwMSwgNDE0MzYsIDM2NTYsIDAsIDE5NDg5OSwgNDE0NTYsIDAsIDE1OTksIAorICAgIDExMzMzLCAwLCA2NzAzLCA4NTEzLCAwLCAxNjEzLCAwLCA2ODQ1NiwgMTI1OTgsIDAsIDEyMDczNCwgNzg3NDUsIDc0NTAwLCAKKyAgICA0MTQ2MCwgMTAxNDUsIDEwNTQyLCA5OTM3LCA3ODc0NiwgMCwgOTkwNSwgMCwgNjU3MzAsIDAsIDEyMDM3NCwgODQyNywgCisgICAgMTIwMzc1LCA1NTI0NiwgMTIwMzc2LCAwLCAxMTQ5NywgNjQ2ODcsIDc0MDA4LCA0MjU5MiwgMzg3MSwgMCwgMTI4MzA1LCAKKyAgICA5MTExLCA1NzQxLCAwLCAxOTQ4NDYsIDEyMDM2NiwgMTE5MTExLCAxMjA3NDUsIDAsIDEyMDM2OCwgMCwgMTE2NDgsIDAsIAorICAgIDE5NDg3MywgMTIwMzY0LCA0MTU4NywgMTIwMzY1LCAwLCA3NDMyMiwgNDIxMTMsIDAsIDEyNzE1NSwgMTIxNzIsIDAsIAorICAgIDc0NTMwLCA2NTI5OCwgNjU3MjMsIDE5NDg0MCwgNzM4NzEsIDY1NzI0LCA3OTI4LCAxMjAzNTQsIDAsIDQxNTk1LCA3MzczMCwgCisgICAgMCwgNDIxMTgsIDczODMwLCA2NjA0MiwgMTAzNTUsIDAsIDc4NzUsIDAsIDQxNTk4LCAzOTkzLCAwLCAxNTQ1LCA0MDk3MSwgCisgICAgNTM2LCAxMjg1MjEsIDQzMDI5LCAwLCAwLCA2NTE3MywgNjUyODYsIDAsIDAsIDAsIDAsIDAsIDAsIDQxMzc1LCA1NDAyLCAwLCAKKyAgICAwLCAxNjg3LCAxMjA1MDMsIDAsIDAsIDc4MTk0LCA2NDMyNiwgNDA5NjksIDEwNTI2LCA3ODc1MywgODMyMywgNDA5NjgsIAorICAgIDEzMzksIDExNzMxLCA3ODc1NiwgMCwgNjU0NjAsIDEyMjQyLCAxMjg1MTMsIDgwMjAsIDEwODQzLCAxMTU1NCwgMCwgMCwgCisgICAgODI2NiwgNDEwMDYsIDY1NzIyLCAwLCAxMDcxMCwgMCwgMTE4OTQyLCA2NzY2NywgNjQ1NjcsIDExOTE1NSwgMTk1MDkxLCAwLCAKKyAgICAxMTk2MzYsIDY3ODU3LCAxMjA2ODcsIDAsIDAsIDExNzU1LCA2NjMwNSwgMCwgMCwgMTA5MTcsIDEyMDc2NywgMCwgMTEyNzIsIAorICAgIDIwNDAsIDQxMjQ3LCA0MTMyNiwgMTk1MDYwLCAxNzQxLCA0MjM3MCwgMTIyNywgMCwgMCwgMTE0MTMsIDAsIDAsIDUyODMsIAorICAgIDE1ODYsIDQ5NzgsIDAsIDE5ODQsIDE5NDYyMSwgMCwgOTIyOTMsIDQwOTg0LCAxMjgzMDYsIDkzNzMsIDAsIDEyOTE2LCAKKyAgICA2Mjg0LCAwLCA0MTY2MywgMCwgMCwgMCwgOTIzNywgOTM4NSwgNDE2NDgsIDAsIDAsIDAsIDQxNjY2LCAxODMwLCA3Mzc4MywgCisgICAgMjA1NiwgNDEyODcsIDkyNjEwLCAwLCAwLCA0MjIxOSwgMTI4MjU3LCAwLCA0MTk4NywgNDE2NzYsIDAsIDEyMDgyMywgMCwgCisgICAgNDE2NzAsIDAsIDkyNTkwLCAyNzk2LCA1NTI5MSwgMTE2ODMsIDk5MDIsIDc0NTIxLCAwLCAxMTQ1MSwgMCwgMTI4ODIyLCAKKyAgICA0MjYzMSwgMjM1OSwgMCwgNjc4NDQsIDc0MTY0LCA0MTIzOCwgNTQ4LCAxMTQwNSwgMTMxMzMsIDY0MzY4LCAwLCAxMjg3OTUsIAorICAgIDAsIDM5NywgNDM2MjIsIDQyMTM5LCA5NTQ3LCA5NTkwLCAxMjgyMzgsIDE2MTQsIDQzNjYxLCA2NDM1NiwgNjYzMDcsIAorICAgIDY2NTEsIDEzNTgsIDAsIDQyOCwgOTYyMCwgMTQ2NiwgNzgxMTIsIDEwOTgyLCAxMTg4MzEsIDEzMzMsIDcxMDQsIDQwNywgCisgICAgNjQyNSwgMTI4ODM0LCA3NDI1MywgMCwgMCwgMCwgNTgwNCwgMTE5NzYsIDg1NTQsIDkyNzIxLCAwLCAwLCA5MDU3LCAKKyAgICA0MjI5NCwgNDEyMTgsIDAsIDAsIDc4MTM3LCAxODgzLCAxMDk1MiwgODA0OCwgNzgxNDIsIDQxMjI1LCA5MjYyMSwgNDI5MTUsIAorICAgIDk4MzQxMSwgMTI4Njg0LCAwLCA0NDA3LCAwLCA2NTgwOSwgMTE5MDc0LCAxOTQ4MjEsIDg0NDgsIDcxNDEsIDc0MTgzLCAwLCAKKyAgICAxMjY3NSwgMTI2NTksIDAsIDQyMzYzLCAxMjA2MjQsIDE5NDgyNCwgNTUyNzMsIDEwNzY2LCAxMjAxMiwgMjM4NiwgNjQ3MzIsIAorICAgIDkxNzAsIDkxNzgyMSwgOTEyMywgNjQ1ODUsIDEyMDUwMCwgOTgzNDAxLCA3MTQwLCAxMDk3NywgMTI3Mzc4LCA0MTY0LCAKKyAgICA5MDgxLCAwLCAxMjA1NjksIDQyMDQ5LCA0MjA0MiwgODcwOSwgMTI4MjgzLCA5ODMzMTcsIDEyMDYzNywgNDI0MTksIAorICAgIDY0Nzk5LCA0MjA0NywgMCwgMCwgODQ3MCwgMTE4MDcsIDY1ODk3LCA1NzcsIDAsIDk4MzQ5NSwgNzQzMDAsIDAsIDEyNzMwOCwgCisgICAgNzQ4NDAsIDAsIDAsIDEyODc5MSwgOTIyMjQsIDg3MzYsIDE0MTQsIDQyNjQzLCA5NjgzLCA0MzQ4NiwgNzQzNDQsIDAsIAorICAgIDI1MzYsIDAsIDY2MzMwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA2NjMxNywgOTE3NjEyLCA2NjMxNSwgMjEwNiwgMTIwMjIyLCAKKyAgICAxMTI3MywgMCwgNDMwMDQsIDc1NDEsIDAsIDAsIDk2MSwgNjQzMDcsIDY2MzI0LCA2NDkwNiwgMTI4NTkxLCAzMTA2LCAKKyAgICA2NTkxNywgNDEyODQsIDE2OTYsIDAsIDg5MSwgMTIxMDUsIDAsIDQyNjI0LCAxMjgwMiwgMzI2NCwgODgyNCwgMTMyNjgsIAorICAgIDQzMDAzLCAxMDkzNiwgMCwgMCwgMCwgMTk0ODI2LCA5MjY4OCwgMCwgMjMyMiwgMTIwMzcxLCA5ODMzMjgsIDExNDQ5LCAKKyAgICAxMjgxODcsIDQyODY4LCA0MTI4NSwgMzU0NywgMCwgMCwgMCwgMCwgNDMyMTYsIDYwODksIDc4NjgyLCAwLCAxMjA1NzgsIAorICAgIDQxNzAsIDEwMjksIDEyNzc2MSwgMTI3MDM2LCAxMTkyMjQsIDQyMzc0LCAwLCA3NDQsIDAsIDAsIDAsIDY1ODIzLCAKKyAgICAxMjc4MjYsIDAsIDM1NTEsIDAsIDAsIDQ2MjMsIDU1MjY4LCAwLCA0NTk4LCAwLCA2NTEzNiwgMTI3MTM2LCAwLCAwLCAKKyAgICAxMDg1MSwgMCwgNjE3OSwgOTI2MDIsIDYxODAsIDAsIDExOTUyLCAxMjA3NzgsIDc4NjQ4LCAxMTk3MiwgNzg2NDYsIAorICAgIDc4NjQ3LCA3ODY0NCwgNzg2NDUsIDE3NywgNzg2NDMsIDYxNzYsIDEyMDU4MCwgMCwgMCwgNjE3NywgOTAyMCwgNzg2NTIsIAorICAgIDc4NjUzLCA2MTc4LCAxMjAyNDksIDEyMDI0MiwgMTI4MDI3LCA2NzY3MywgNzUxOCwgODc1NCwgMCwgMTIwMjM3LCAyMTM3LCAKKyAgICA0MzA4MSwgMCwgMCwgOTEzNiwgMTIwMjQwLCA0NDAxLCA0MTI4MCwgMCwgODk3NCwgMjMwOCwgMCwgNzQxNDksIDAsIDIzMTgsIAorICAgIDAsIDY2MzYxLCA4MTk4LCAwLCA2NDM2MCwgMTI2MDEsIDQyNTM2LCA2NTI2NiwgMTIwODI3LCA3NDMwNywgMCwgNjk3MCwgCisgICAgNTQwNCwgNDMzMzIsIDM2NjcsIDc5MzYsIDEyOTI1LCAxMjY5ODksIDYzODUsIDAsIDAsIDExODk0OSwgMTA4NzQsIDY1NTA1LCAKKyAgICAxMjgwODMsIDAsIDQyMDUzLCAyMDc1LCA0MjA1NywgMTEwODMsIDQyMDUyLCAwLCAwLCA2NzY1MSwgMCwgOTY2NSwgOTIzMDAsIAorICAgIDAsIDEzMTgxLCAwLCAwLCAwLCAwLCA3NDE0OCwgMCwgMCwgMTIwMjI1LCAxMjAyMjksIDEyMDIyNCwgNzQxNzIsIDQxMTQ1LCAKKyAgICAwLCAwLCA5ODM2NzgsIDQxMTQ4LCA4NjgzLCA3NTk0LCAxMjc1MTksIDAsIDExOTA5MCwgMTA4NjksIDQzNDU4LCA0MTE0NiwgCisgICAgOTI0MDcsIDExNDQxLCAwLCAzNTEyLCAxMTk2MzMsIDk4MzQ0NCwgODEwMywgMCwgMCwgNjUxODQsIDExNzgwLCA0MTU2MywgCisgICAgNDI3OTYsIDAsIDY5NzQyLCA0MTU0NCwgNjUxNDYsIDAsIDAsIDAsIDAsIDE5OTQyLCAwLCAxMTg5MDgsIDc5ODgsIDEwNDM2LCAKKyAgICA3NDI3MywgMzI3MSwgNzM4MDQsIDY0NzExLCAwLCAwLCAwLCAwLCAzODA0LCAxMzA3MCwgMTE1NTcsIDQyMDQ0LCAwLCAKKyAgICAxMDk1LCAwLCAzNTk5LCAxMjc3NzQsIDAsIDEyODg2MSwgODUxNCwgMCwgMCwgMCwgNzQzNDYsIDY2Njk3LCAwLCAxMTY4NCwgCisgICAgMCwgOTI0ODYsIDAsIDAsIDQyMDQzLCA0MzIzMiwgNjY2NzcsIDAsIDQyMDQ2LCA3ODI0MSwgNDAzNiwgMCwgMCwgMTI4MjEzLCAKKyAgICAxOTQ4NjEsIDAsIDExOTU0LCAwLCAxNDUwLCAxMjk4NiwgMTM0MCwgMCwgNjU0NDEsIDkyNzIyLCAwLCAwLCAxMjc3NzIsIDAsIAorICAgIDkxNzU0MiwgMCwgMCwgNjUzOSwgMCwgMCwgMCwgMTk0ODU2LCAwLCAxMjA0OTIsIDQxMTkwLCAzOTczLCAxMTkzNjUsIAorICAgIDQ1NzUsIDQxMTkzLCA3OTgyLCA0MjksIDAsIDEyNzE5NCwgMCwgMTk0ODU0LCA2NTc5MiwgMCwgMTE4OTY4LCA2NDE3LCAKKyAgICAxMTg5MTgsIDc4MTc4LCAwLCAxOTQ4NTAsIDAsIDAsIDQ5MTksIDEwNTkwLCAwLCA3NzU1LCAwLCAwLCA2NDU0OCwgCisgICAgMTIwNTA2LCAxNjIxLCAxMDIxNCwgNjUxMjYsIDAsIDEyNzAwNCwgMCwgMTIxODgsIDk4MzQwMywgMTYxNywgODA1MCwgMCwgCisgICAgNTAxNSwgMCwgMTE5MTc0LCA0MjU5MCwgMTk0ODcxLCAxNzU2LCA3ODE4MSwgMCwgNjU3NjgsIDYzNTIsIDQxODkyLCAwLCAKICAgICA3NTU1LCAxMzEwMywgNTQwOCwgMjgxNywgMTIxNCwgMCwgOTIzMzUsIDAsIDAsIDAsIDAsIDEyNzE5NSwgNzk1NywgODY4OSwgCi0gICAgNjQ3MjMsIDEwNTYsIDQyODk2LCA3NDE0NywgMTk0ODEzLCAwLCA1NTI4NiwgNzA3MywgNjU4NTAsIDEyMzI3LCAwLCAKKyAgICA2NDcyMywgMTA1NiwgNDI4OTYsIDc0MTQ3LCAxOTQ4MTMsIDAsIDU1Mjg2LCA3MDczLCA2NTg1MCwgMTIzMjcsIDk4MzY4MCwgCiAgICAgMTE5MDI4LCAwLCAwLCAwLCAyMzQxLCA4NDUwLCA4NDg0LCA4NDc0LCAwLCAwLCAwLCA4NDYxLCAxMjgxMDIsIDEyMTUzLCAKICAgICAxMjc5OSwgMCwgNDM3MDksIDQzNzA4LCA5NDUxLCA3NTcxLCAxMzA3MywgMCwgMCwgNjgxLCAwLCA3MDMsIDAsIDMyNzIsIAogICAgIDg3ODEsIDEyODk0LCAwLCAxMTcwOSwgOTIyODgsIDc0NDQ2LCAwLCA5MjUzMiwgMCwgMTEzMzgsIDEyMDc2OCwgMzI3NiwgMCwgCiAgICAgMCwgNjU5MjgsIDAsIDAsIDY1MDIxLCA2NDc5NSwgNzQ1NzQsIDAsIDEwMDQ3LCA3ODgxNCwgMzI2MiwgNzg4MTEsIDQyNzExLCAKICAgICAwLCAwLCA2ODQ3OCwgMTYzLCA1NzYsIDk4OTUsIDE2NTUsIDc4ODE3LCA3NDU5MSwgNzg4MTUsIDc4ODE2LCAwLCAwLCAwLCAKLSAgICAwLCAxMDAzOSwgMCwgMCwgNTYyMywgNTcxNywgNTc3NiwgMCwgMCwgMCwgNDE1OTEsIDExMDM2LCA2NTI1MiwgOTIzODIsIDAsIAotICAgIDAsIDAsIDY3ODQ4LCAwLCAwLCAwLCA4ODg3LCAwLCA3Mjk1LCAxMTAzMSwgMCwgNDMxNTcsIDAsIDg5NDYsIDEwMzQ4LCAKLSAgICAxMDQxMiwgODc1NSwgMCwgMCwgNTcxOCwgMTMyMjEsIDAsIDAsIDc4MTM1LCAwLCAwLCA4ODEwLCA3NDQ5OSwgNjg2LCAwLCAKLSAgICAwLCA0NjE5LCAxMTg5NTQsIDY2NTQsIDczNzY5LCA3NDQyNiwgMCwgMTIwNDAsIDY1Njg5LCAxMDEyOCwgNjUxMTgsIDAsIAotICAgIDExOTE1MSwgNzQyMDUsIDkyNjUxLCAwLCAyNDAxLCA2ODE0NCwgODc5MiwgMCwgMCwgNjU0NTUsIDAsIDkyMjQ2LCAwLCAKLSAgICAxMTkxMjksIDAsIDEyODg2LCAxMjc5MjAsIDY2NjI0LCAwLCA0MzU1NywgMTAzMDAsIDEwMTYxLCAxMDM5NiwgNzQxMzUsIDAsIAotICAgIDExODk0NSwgNzgxMTgsIDczODUxLCAzMDEwLCA2NDQxLCA3ODEyMiwgMTQ1OCwgNDE0NzUsIDEyODY3MiwgMCwgMCwgCi0gICAgMTE0NzksIDAsIDAsIDYzNTAsIDEyODY0LCA2OTY3NCwgNzgxMTQsIDEwNjEsIDY0NzgwLCAyMDAxLCA0MzExMSwgNTUyMzAsIAotICAgIDEyODY4NiwgNDA1MiwgMCwgNzYyNiwgMCwgMCwgMTA0NSwgMCwgNTYzMSwgNDExMTMsIDAsIDAsIDQzNzA3LCA3NDEyNywgMCwgCi0gICAgMCwgODQ4NiwgMCwgNzM3NTgsIDIzMzUsIDQzNjIsIDAsIDAsIDY5MjIxLCAxMDI1LCAwLCA0MjYyNSwgOTE3NjI3LCAKLSAgICA3ODA4NCwgNDE0NDMsIDAsIDEyODIwNiwgMCwgMTc3NCwgMTUyMywgMCwgMCwgNDE0NDUsIDc4MjM2LCAwLCA4NTY3LCAKLSAgICA0MTQ0MiwgMzk4OCwgMCwgNzgyMzcsIDExODkxMCwgMCwgNjUyNzQsIDg1NjQsIDc4MTk5LCA3ODIzOCwgMTI3NTE1LCAwLCAKLSAgICAwLCA0MzQ0NiwgMCwgNjY1MTMsIDYyNTYsIDAsIDU3OSwgNTUyMTgsIDEwMjA2LCAwLCA2Mzc1LCAyNjczLCAwLCAxMTgxNCwgCi0gICAgMCwgNDQ4OCwgMCwgMTI3MzM2LCA2ODQ1MSwgMTA0NDQsIDExODg0NiwgMTI3MzM0LCAxMTc5OSwgNzQ0MDcsIDY4NDY2LCAKLSAgICA0NDg3LCAxMjc4NDksIDQyODMyLCAxMDMyLCAxMjAyNjcsIDQzNDUwLCA3ODI1NywgNzIwMywgMCwgNjE0LCA3ODE5MSwgCi0gICAgMTI3MzI1LCAxMjA2MTUsIDAsIDc4MjYyLCAxMjg2NjksIDEyNzMyMywgMCwgNDMxMjEsIDAsIDAsIDkyNTEzLCAxMDUwLCAKLSAgICA3NTQ5LCAwLCAwLCA5MzE0LCAwLCAwLCAxMjA2MTYsIDAsIDEwMDU3LCAwLCAxMjczMTMsIDAsIDY2NTA0LCAwLCAwLCAKLSAgICAyMzA3LCAwLCA2NDMzMywgMTI3MzEyLCAxMjg1NDcsIDczODczLCAwLCAwLCAwLCAxMjc5NzMsIDEyODcwOCwgMCwgMTAzNjAsIAotICAgIDY3NDYsIDAsIDkyMjQ1LCA0NDAsIDAsIDEzMDg1LCA5MjMzLCA3NDIxNiwgMCwgMCwgOTk1NywgMCwgNjY0NDcsIDgwNDYsIAotICAgIDY0OTYzLCA2NTc3NywgMTAxMjUsIDc0MjEyLCA0MjgxOSwgMTA5MTAsIDAsIDE1MjEsIDk4OTYsIDAsIDEwNDg3LCAwLCAKLSAgICAxMjUyNywgMCwgNzk3MCwgMCwgMTI4NjYwLCAwLCA2NTc2OSwgNTI0MywgOTg0OSwgNTIzOSwgNjU3NzEsIDAsIDAsIDUyMzcsIAotICAgIDY5NzE0LCAwLCAxMDEwMywgNTI0NywgNDc2OSwgMCwgMTE4OTc3LCAxMjg3MywgNTc2NCwgMCwgMCwgMzAwOCwgNDg5NiwgMCwgCi0gICAgMTIwODcsIDAsIDU1MjMxLCA0MTEwMywgMCwgNjQ1NjUsIDQ3NzMsIDAsIDkyNzE3LCAwLCA0NzcwLCAwLCA5MTc1NjcsIAotICAgIDg3MzEsIDY1Mzc4LCAxMjczNjIsIDEyMDYxOSwgOTEyMiwgMTI4MDMzLCAwLCA0Nzc0LCAzMDE5LCA5OTk3LCAxMjgzNCwgMCwgCi0gICAgOTQ1NiwgMTAyMTUsIDEyMDU0NywgMCwgMCwgMCwgMCwgNzQ3NzYsIDQyODEsIDQ3NjgsIDAsIDQxNTM1LCA0MDk5LCA5MDE3LCAKLSAgICAwLCAwLCA3ODA5NSwgMCwgNzgwOTYsIDAsIDAsIDAsIDc4MDk4LCAwLCA0MjgxNCwgODgwLCAwLCAwLCAxMjgwMjEsIDIxMzQsIAotICAgIDAsIDEwMTE2LCA5ODc3LCA5MjMyOSwgMCwgMCwgNzA5NSwgMCwgNzQxMTYsIDY3NzgsIDAsIDc4MDkwLCA4MjQzLCAyNDI3LCAKLSAgICAxMjgxNDEsIDcwOTMsIDAsIDExNTg1LCAxOTUwMDMsIDk5NjIsIDAsIDEyMjIzLCAwLCAwLCAxNDM0LCAxMjAyNTQsIDU2MzcsIAotICAgIDExNTczLCAwLCAwLCAwLCAxOTk1MSwgMCwgNzgxMjEsIDAsIDAsIDU1MjgzLCAwLCAwLCA3NDQzNywgMTE1NiwgODc0MCwgCi0gICAgOTI0MTUsIDM3ODIsIDY0MzMxLCAwLCA0MTM3MCwgMTAxNCwgODI2MSwgMCwgMCwgMTA4MzUsIDAsIDY1NTM2LCAwLCAKLSAgICAxMjA0NjMsIDAsIDc3MDIsIDExODgyNCwgMCwgNDMwMTAsIDY1Nzc5LCA2NTc4MywgMTE1MCwgMTA1NDcsIDU3MDAsIDAsIAotICAgIDEyMDYwMywgNjUzODMsIDIzMzksIDQyNTk0LCA1Njk3LCAxMTg3ODgsIDAsIDEyODU3NiwgMCwgNDIyNTcsIDU2OTYsIAotICAgIDkyNjc3LCAxMjA0NjUsIDM4NjIsIDk2NDMsIDAsIDAsIDc2MzQsIDY1MTY3LCA5ODQ1LCAwLCAwLCA1NzAxLCA5NzIyLCAKLSAgICA0MTQ5MCwgMCwgMTQyNiwgNjgyMTcsIDAsIDY4NDQ3LCA0MjIwNCwgNTUyNzAsIDg1NzEsIDE5NDk5MSwgNzgwNjcsIDAsIAotICAgIDc4ODE4LCA5MjcxOSwgNDMxODIsIDEyMTg0LCAwLCA0MjAyMiwgMCwgMTAyODEsIDAsIDU2NTAsIDQzMTk0LCA2NDcxMiwgCi0gICAgMTA3NDQsIDAsIDk5MCwgNTY0NywgMCwgNzM4NywgNzg3MzQsIDQxMTE0LCAxMTQ3NywgNTY0NiwgMTI4NzksIDExMDE4LCAwLCAKLSAgICAzOTQ1LCA5MjU4OSwgMCwgMCwgMCwgMCwgNzgyMTIsIDEyNzc0NiwgMTAyMCwgNzM3NjMsIDAsIDc4NzMxLCA1NjQ4LCAKLSAgICA2NDc0OCwgMTk0OTEwLCAwLCAxMDIwNSwgMzU0NSwgMCwgNjk4NCwgMCwgNzQwNTEsIDAsIDQzMjQyLCAxMjA0NTgsIDI2NjcsIAotICAgIDAsIDAsIDAsIDk5MTEsIDAsIDY1MDIwLCAxMDA5NywgMTE5MTY2LCAxMjcxNDUsIDAsIDExODgzNiwgMCwgNzg0MjcsIAotICAgIDExNDAsIDc4NDI2LCAwLCAxMDE1OSwgMCwgMCwgODEyOCwgMCwgMCwgOTE3OTY1LCAxODE1LCAxOTkxMCwgODkwLCAwLCAKLSAgICAzMjY3LCA5MjI5MSwgMCwgMTAxMjMsIDAsIDQ0MTAsIDEwNDEsIDEwNTc2LCA2MzU0LCA5MjU4MSwgNTgwLCA3NDIzMiwgMCwgCisgICAgMCwgMTAwMzksIDAsIDk4MzY3NywgNTYyMywgNTcxNywgNTc3NiwgMCwgMCwgMCwgNDE1OTEsIDExMDM2LCA2NTI1MiwgCisgICAgOTIzODIsIDAsIDAsIDAsIDY3ODQ4LCAwLCAwLCAwLCA4ODg3LCAwLCA3Mjk1LCAxMTAzMSwgMCwgNDMxNTcsIDAsIDg5NDYsIAorICAgIDEwMzQ4LCAxMDQxMiwgODc1NSwgMCwgMCwgNTcxOCwgMTMyMjEsIDAsIDAsIDc4MTM1LCAwLCAwLCA4ODEwLCA3NDQ5OSwgCisgICAgNjg2LCAwLCAwLCA0NjE5LCAxMTg5NTQsIDY2NTQsIDczNzY5LCA3NDQyNiwgMCwgMTIwNDAsIDY1Njg5LCAxMDEyOCwgCisgICAgNjUxMTgsIDAsIDExOTE1MSwgNzQyMDUsIDkyNjUxLCAwLCAyNDAxLCA2ODE0NCwgODc5MiwgOTgzMzgzLCAwLCA2NTQ1NSwgCisgICAgMCwgOTIyNDYsIDAsIDExOTEyOSwgMCwgMTI4ODYsIDEyNzkyMCwgNjY2MjQsIDAsIDQzNTU3LCAxMDMwMCwgMTAxNjEsIAorICAgIDEwMzk2LCA3NDEzNSwgMCwgMTE4OTQ1LCA3ODExOCwgNzM4NTEsIDMwMTAsIDY0NDEsIDc4MTIyLCAxNDU4LCA0MTQ3NSwgCisgICAgMTI4NjcyLCAwLCAwLCAxMTQ3OSwgMCwgMCwgNjM1MCwgMTI4NjQsIDY5Njc0LCA3ODExNCwgMTA2MSwgNjQ3ODAsIDIwMDEsIAorICAgIDQzMTExLCA1NTIzMCwgMTI4Njg2LCA0MDUyLCAwLCA3NjI2LCAwLCAwLCAxMDQ1LCAwLCA1NjMxLCA0MTExMywgMCwgMCwgCisgICAgNDM3MDcsIDc0MTI3LCAwLCAwLCA4NDg2LCAwLCA3Mzc1OCwgMjMzNSwgNDM2MiwgMCwgMCwgNjkyMjEsIDEwMjUsIDAsIAorICAgIDQyNjI1LCA5MTc2MjcsIDc4MDg0LCA0MTQ0MywgMCwgMTI4MjA2LCAwLCAxNzc0LCAxNTIzLCAwLCAwLCA0MTQ0NSwgCisgICAgNzgyMzYsIDAsIDg1NjcsIDQxNDQyLCAzOTg4LCAwLCA3ODIzNywgMTE4OTEwLCAwLCA2NTI3NCwgODU2NCwgNzgxOTksIAorICAgIDc4MjM4LCAxMjc1MTUsIDAsIDAsIDQzNDQ2LCAwLCA2NjUxMywgNjI1NiwgMCwgNTc5LCA1NTIxOCwgMTAyMDYsIDAsIAorICAgIDYzNzUsIDI2NzMsIDAsIDExODE0LCAwLCA0NDg4LCAwLCAxMjczMzYsIDY4NDUxLCAxMDQ0NCwgMTE4ODQ2LCAxMjczMzQsIAorICAgIDExNzk5LCA3NDQwNywgNjg0NjYsIDQ0ODcsIDEyNzg0OSwgNDI4MzIsIDEwMzIsIDEyMDI2NywgNDM0NTAsIDc4MjU3LCAKKyAgICA3MjAzLCAwLCA2MTQsIDc4MTkxLCAxMjczMjUsIDEyMDYxNSwgMCwgNzgyNjIsIDEyODY2OSwgMTI3MzIzLCAwLCA0MzEyMSwgCisgICAgMCwgMCwgOTI1MTMsIDEwNTAsIDc1NDksIDAsIDAsIDkzMTQsIDAsIDAsIDEyMDYxNiwgMCwgMTAwNTcsIDAsIDEyNzMxMywgCisgICAgMCwgNjY1MDQsIDAsIDAsIDIzMDcsIDAsIDY0MzMzLCAxMjczMTIsIDEyODU0NywgNzM4NzMsIDAsIDAsIDAsIDEyNzk3MywgCisgICAgMTI4NzA4LCAwLCAxMDM2MCwgNjc0NiwgMCwgOTIyNDUsIDQ0MCwgMCwgMTMwODUsIDkyMzMsIDc0MjE2LCAwLCAwLCA5OTU3LCAKKyAgICAwLCA2NjQ0NywgODA0NiwgNjQ5NjMsIDY1Nzc3LCAxMDEyNSwgNzQyMTIsIDQyODE5LCAxMDkxMCwgMCwgMTUyMSwgOTg5NiwgCisgICAgMCwgMTA0ODcsIDAsIDEyNTI3LCAwLCA3OTcwLCAwLCAxMjg2NjAsIDAsIDY1NzY5LCA1MjQzLCA5ODQ5LCA1MjM5LCAKKyAgICA2NTc3MSwgMCwgMCwgNTIzNywgNjk3MTQsIDAsIDEwMTAzLCA1MjQ3LCA0NzY5LCAwLCAxMTg5NzcsIDEyODczLCA1NzY0LCAKKyAgICAwLCAwLCAzMDA4LCA0ODk2LCAwLCAxMjA4NywgMCwgNTUyMzEsIDQxMTAzLCAwLCA2NDU2NSwgNDc3MywgMCwgOTI3MTcsIAorICAgIDk4MzY1MywgNDc3MCwgMCwgOTE3NTY3LCA4NzMxLCA2NTM3OCwgMTI3MzYyLCAxMjA2MTksIDkxMjIsIDEyODAzMywgCisgICAgOTgzMzI1LCA0Nzc0LCAzMDE5LCA5OTk3LCAxMjgzNCwgMCwgOTQ1NiwgMTAyMTUsIDEyMDU0NywgMCwgMCwgMCwgMCwgCisgICAgNzQ3NzYsIDQyODEsIDQ3NjgsIDAsIDQxNTM1LCA0MDk5LCA5MDE3LCAwLCAwLCA3ODA5NSwgMCwgNzgwOTYsIDAsIDAsIDAsIAorICAgIDc4MDk4LCAwLCA0MjgxNCwgODgwLCAwLCAwLCAxMjgwMjEsIDIxMzQsIDAsIDEwMTE2LCA5ODc3LCA5MjMyOSwgMCwgMCwgCisgICAgNzA5NSwgMCwgNzQxMTYsIDY3NzgsIDAsIDc4MDkwLCA4MjQzLCAyNDI3LCAxMjgxNDEsIDcwOTMsIDAsIDExNTg1LCAKKyAgICAxOTUwMDMsIDk5NjIsIDAsIDEyMjIzLCAwLCAwLCAxNDM0LCAxMjAyNTQsIDU2MzcsIDExNTczLCAwLCAwLCAwLCAxOTk1MSwgCisgICAgMCwgNzgxMjEsIDAsIDAsIDU1MjgzLCAwLCAwLCA3NDQzNywgMTE1NiwgODc0MCwgOTI0MTUsIDM3ODIsIDY0MzMxLCAwLCAKKyAgICA0MTM3MCwgMTAxNCwgODI2MSwgMCwgMCwgMTA4MzUsIDAsIDY1NTM2LCAwLCAxMjA0NjMsIDAsIDc3MDIsIDExODgyNCwgMCwgCisgICAgNDMwMTAsIDY1Nzc5LCA2NTc4MywgMTE1MCwgMTA1NDcsIDU3MDAsIDAsIDEyMDYwMywgNjUzODMsIDIzMzksIDQyNTk0LCAKKyAgICA1Njk3LCAxMTg3ODgsIDAsIDEyODU3NiwgMCwgNDIyNTcsIDU2OTYsIDkyNjc3LCAxMjA0NjUsIDM4NjIsIDk2NDMsIDAsIDAsIAorICAgIDc2MzQsIDY1MTY3LCA5ODQ1LCAwLCAwLCA1NzAxLCA5NzIyLCA0MTQ5MCwgMCwgMTQyNiwgNjgyMTcsIDAsIDY4NDQ3LCAKKyAgICA0MjIwNCwgNTUyNzAsIDg1NzEsIDE5NDk5MSwgNzgwNjcsIDAsIDc4ODE4LCA5MjcxOSwgNDMxODIsIDEyMTg0LCAwLCAKKyAgICA0MjAyMiwgMCwgMTAyODEsIDAsIDU2NTAsIDQzMTk0LCA2NDcxMiwgMTA3NDQsIDAsIDk5MCwgNTY0NywgMCwgNzM4NywgCisgICAgNzg3MzQsIDQxMTE0LCAxMTQ3NywgNTY0NiwgMTI4NzksIDExMDE4LCA5ODM2NjIsIDM5NDUsIDkyNTg5LCAwLCAwLCAwLCAwLCAKKyAgICA3ODIxMiwgMTI3NzQ2LCAxMDIwLCA3Mzc2MywgMCwgNzg3MzEsIDU2NDgsIDY0NzQ4LCAxOTQ5MTAsIDAsIDEwMjA1LCAKKyAgICAzNTQ1LCA5ODMzMjksIDY5ODQsIDAsIDc0MDUxLCA5ODMzOTAsIDQzMjQyLCAxMjA0NTgsIDI2NjcsIDAsIDAsIDAsIDk5MTEsIAorICAgIDAsIDY1MDIwLCAxMDA5NywgMTE5MTY2LCAxMjcxNDUsIDk4MzM5NywgMTE4ODM2LCA5ODM0ODMsIDc4NDI3LCAxMTQwLCAKKyAgICA3ODQyNiwgMCwgMTAxNTksIDAsIDAsIDgxMjgsIDAsIDAsIDkxNzk2NSwgMTgxNSwgMTk5MTAsIDg5MCwgMCwgMzI2NywgCisgICAgOTIyOTEsIDAsIDEwMTIzLCAwLCA0NDEwLCAxMDQxLCAxMDU3NiwgNjM1NCwgOTI1ODEsIDU4MCwgNzQyMzIsIDAsIAogICAgIDEyODM0NywgMCwgMCwgMCwgMTk5MzgsIDY1OTA2LCAxMjc4MTksIDAsIDAsIDMyOTgsIDUzNzUsIDEwMTQyLCAwLCA4MjE1LCAKICAgICAwLCA2MTM0LCA0MTI0NiwgNjQ0MDIsIDAsIDEyODIxNSwgMCwgMCwgMCwgNDEzODIsIDAsIDEyODY1MywgNTE3MywgNjUzNDgsIAogICAgIDUyNywgMCwgMCwgOTI2MTIsIDEyODI1MCwgNzg3OTcsIDExOTE1LCAwLCAwLCAxMDA3MiwgMCwgNDI2OTUsIDIzMjksIApAQCAtMTczOTMsNyArMTc2MjIsNyBAQAogICAgIDkwOTAsIDY1Mzc3LCA0MTU5NiwgMCwgNDI5MjAsIDE2OTgsIDAsIDY0NDc3LCAwLCA0MzgxMywgMTA1MywgMCwgNzgyNjksIAogICAgIDAsIDAsIDEwNTIsIDEwNTEsIDQ1OSwgMTA2MCwgNzQzNDksIDY2NDc5LCAwLCAwLCAwLCAwLCA0MjQ5MCwgNjg5LCA2NTA4LCAKICAgICA0MTYzLCA0MjI5OCwgODYzOSwgNjY2NDEsIDQyNDYsIDAsIDAsIDEyMTMwLCAwLCA0MjMzNywgNjQ1OTYsIDY0Mzc1LCAKLSAgICA2NjQ4MSwgMTI3ODUwLCAwLCAwLCA2MzU5LCAwLCA0MzQ3MSwgMCwgMCwgMCwgMTI3Mjc0LCAwLCA2MzU4LCA2MzYxLCAKKyAgICA2NjQ4MSwgMTI3ODUwLCAwLCAwLCA2MzU5LCAwLCA0MzQ3MSwgOTgzNTAzLCAwLCAwLCAxMjcyNzQsIDAsIDYzNTgsIDYzNjEsIAogICAgIDE5MjYsIDYzNTYsIDkyNjI3LCA3ODk4LCA4MTEwLCAxMDkzNSwgMCwgMTAwNjksIDU4MzAsIDAsIDQzNjg1LCAwLCAwLCAwLCAKICAgICAwLCA4NjkzLCA3ODYxMSwgMTE5NTY1LCAwLCAxMjA0MTMsIDAsIDEyNzI1NywgNjU4OTQsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDExOTE4NywgMjEzNSwgNzg4NjgsIDAsIDAsIDc4ODY5LCA0MjMxMywgNTU3OSwgOTI0MTIsIDAsIDAsIDAsIDAsIDU1NzgsIApAQCAtMTc0MDYsMTE2ICsxNzYzNSwxMTggQEAKICAgICA5MTc3NjMsIDUyMTEsIDAsIDY0MDAsIDAsIDE5NDk4MywgMCwgODE4OSwgMTEyNzYsIDAsIDAsIDM3MiwgMTI4ODI5LCAwLCAKICAgICAxMTg4NzQsIDQyMTAyLCA0MTU4NSwgMTI4MjAyLCAwLCA0MjEwMSwgMjc2LCA3ODQwMiwgMCwgMzMsIDc0MjI2LCAxMjczMDMsIAogICAgIDkwMDcsIDExODc5NiwgNDE1ODgsIDY2MDMzLCA0MjcsIDEwNzYzLCAxMTg4MTksIDAsIDEyNzg4NCwgMCwgMTAzMSwgNjI1NywgCi0gICAgMCwgNDIxMDQsIDAsIDAsIDIzMjgsIDkyNDA5LCAxMDcxLCAwLCAwLCA3NDg0OCwgMCwgMCwgMCwgMTA0NywgMCwgMCwgCi0gICAgNjQ3OTAsIDAsIDY5NzIzLCAxMDY1MSwgMCwgMCwgMCwgMCwgOTIyMDYsIDExOTE4MSwgNTcxMSwgNDE2MzMsIDEyMDk4LCAKLSAgICA2NTU3MSwgOTE2NiwgMCwgNTcxMCwgMCwgNjc5MCwgNjUxNjgsIDEzMjE2LCAwLCA2OTcxNiwgNjk3MjYsIDAsIDY0NjExLCAKLSAgICA0MTYyMywgMTk1MDAxLCA1NzE1LCA2OTY1NCwgMCwgMCwgNTcxMiwgMjc2MSwgNDE2MjAsIDY4MTI0LCAzMDc0LCA1NzIyLCAKLSAgICAwLCA4NjQzLCA3Mzc2OCwgMCwgMTE4OTA2LCAyNzU3LCAxMTA2NywgOTcxOCwgNzQ0OTgsIDg5MTAsIDEwNjg5LCA2NDc5LCAKLSAgICAwLCAwLCAwLCA3ODYwNywgOTE5NiwgNjk2NzAsIDAsIDAsIDAsIDAsIDExODkxMSwgMCwgMCwgMCwgMCwgMCwgMTIwMDEwLCAKLSAgICAwLCA4NzAxLCA2ODEzMCwgMTE5NjE2LCAxMjA1MjIsIDAsIDQyNDc3LCAwLCAxMjEyMywgNDQ5NSwgNDM1NjksIDAsIDAsIDAsIAotICAgIDY0OTQ2LCAxMDk5MiwgMCwgMTIwMDA5LCAwLCAwLCA5MzE4LCAxMjA2NjEsIDEzMjQ5LCA2NTY3OSwgNzM4MDgsIDAsIAotICAgIDY1NDU3LCA0MjI0OSwgNzYzOSwgNDM5OTUsIDY3ODQ1LCA0MjY0MSwgNTQ1NCwgMCwgMCwgMTk0OTk3LCAxMjAwMDUsIDAsIAotICAgIDAsIDUwODQsIDAsIDAsIDExODg2MSwgMCwgNzMzLCA5MTc4NzYsIDc4MDE0LCA3ODQzNiwgNzg0MzUsIDQxNjc3LCAwLCAKLSAgICA5MjE4LCAxNzMxLCAwLCAwLCAwLCAxOTUwMTAsIDAsIDAsIDAsIDEyMDAwMSwgMTI3MDE4LCA5MjQ5MiwgNTE1NSwgMCwgCi0gICAgNTM1OCwgMCwgMCwgOTE3NzY3LCA2NDQyNCwgMCwgMzg0MCwgNjQzMTQsIDQxNDMyLCAwLCAwLCA2ODQzMCwgMTE5MTE2LCAKLSAgICA0MzI1MywgNjU5NDMsIDAsIDMzNzEsIDEwOTg4LCAwLCA4NzcxLCAxNDc5LCAwLCAwLCAxMTA5LCAxMTU4MCwgMCwgNjQ2MDEsIAotICAgIDEyMjA1LCAwLCAwLCA2NDUwNywgODg2OCwgMzk5LCAwLCA3NDg0MiwgMCwgMCwgMTIxNDksIDEzMDg4LCA1NTEsIDAsIAotICAgIDEwMTU2LCAxMjExOSwgOTI1NzIsIDAsIDI1NDQsIDY1MDc0LCAxMTkyMTEsIDAsIDAsIDc4MDExLCAzNTEsIDExOTE0OSwgMCwgCi0gICAgMCwgNTUyMjksIDAsIDc0MjY4LCAwLCAwLCAwLCA0MjM3NywgMCwgMCwgMCwgMCwgMCwgOTAxMywgNDA1NCwgMCwgMCwgMCwgCi0gICAgMCwgNzM5NjAsIDU1ODUsIDY1ODgxLCAyNTQ5LCA3NDQ2OSwgMCwgMCwgNTU4NCwgODM1OCwgMCwgNzQ0MTEsIDkyMjE5LCAKLSAgICAxMDkxOSwgMCwgNzk4MCwgMCwgMCwgMCwgNDE4MDAsIDU1ODksIDAsIDI2NjQsIDQxNjEzLCA1NTg2LCAxMTg4OTAsIDAsIAotICAgIDExMzU2LCAwLCAwLCA0MzQ1MiwgNzg2MDksIDAsIDQyNTczLCA2Nzg1NiwgMCwgNzgxMjksIDAsIDAsIDkyNTM1LCA4MTM1LCAKLSAgICA2NDUwLCAxMDA1NSwgNzc5OTYsIDAsIDAsIDAsIDU2NTcsIDAsIDk2MjYsIDAsIDc3OTk0LCAxMDE3OSwgNTY1NCwgMTI5MzksIAotICAgIDkyNTczLCAxMjA3OTksIDAsIDAsIDU2NTIsIDEwOTQ1LCAwLCA2NjQ4NiwgMCwgMzY2MSwgNzg2MywgMCwgMCwgMCwgCi0gICAgNzQ1MDksIDAsIDU2NTksIDAsIDEyNzUxMCwgNjY3MjksIDU2NTUsIDAsIDQyMTY4LCAwLCAxMDU1LCA5MTc2MjgsIAotICAgIDEyNzc5MiwgNjYzMTAsIDc0MDMwLCAwLCAxMjE0NiwgNzM5NTUsIDczOTU2LCAxMTYxOCwgMCwgMTI2OTkwLCAwLCAxMDI3MiwgCi0gICAgMTAzMDQsIDEwMzY4LCA0MjUxOCwgNTk0LCAxMDI0NCwgMTAyNDgsIDc0MDcsIDAsIDY0ODcwLCAwLCAzNDY3LCAwLCAwLCAKLSAgICAzMzMxLCA5NDYsIDEwMjMxLCAxNDk1LCA4MTMxLCA3NDMzMCwgMCwgOTU2MiwgNjkyMjIsIDY1OTI3LCAwLCAwLCA2OTY5NiwgCi0gICAgNjk3NjksIDY0NjU2LCAwLCAwLCAxOTQ4MzcsIDAsIDU2NjYsIDY1MjI3LCA1MzE4LCA2Mzk5NCwgMCwgOTA5MSwgMTA3OTgsIAotICAgIDAsIDEyODE2NiwgMTAxODYsIDAsIDc3MzIsIDAsIDY0NTU2LCAwLCAwLCA1NjY4LCA3NDQ0NSwgMCwgMCwgNTY3MCwgMCwgCisgICAgMCwgNDIxMDQsIDAsIDk4MzcxMiwgMjMyOCwgOTI0MDksIDEwNzEsIDAsIDAsIDc0ODQ4LCAwLCA5ODMzMjQsIDAsIDEwNDcsIAorICAgIDAsIDAsIDY0NzkwLCAwLCA2OTcyMywgMTA2NTEsIDAsIDAsIDAsIDAsIDkyMjA2LCAxMTkxODEsIDU3MTEsIDQxNjMzLCAKKyAgICAxMjA5OCwgNjU1NzEsIDkxNjYsIDAsIDU3MTAsIDAsIDY3OTAsIDY1MTY4LCAxMzIxNiwgMCwgNjk3MTYsIDY5NzI2LCAwLCAKKyAgICA2NDYxMSwgNDE2MjMsIDE5NTAwMSwgNTcxNSwgNjk2NTQsIDAsIDAsIDU3MTIsIDI3NjEsIDQxNjIwLCA2ODEyNCwgMzA3NCwgCisgICAgNTcyMiwgMCwgODY0MywgNzM3NjgsIDAsIDExODkwNiwgMjc1NywgMTEwNjcsIDk3MTgsIDc0NDk4LCA4OTEwLCAxMDY4OSwgCisgICAgNjQ3OSwgMCwgMCwgMCwgNzg2MDcsIDkxOTYsIDY5NjcwLCAwLCAwLCAwLCAwLCAxMTg5MTEsIDAsIDAsIDAsIDAsIDAsIAorICAgIDEyMDAxMCwgMCwgODcwMSwgNjgxMzAsIDExOTYxNiwgMTIwNTIyLCAwLCA0MjQ3NywgMCwgMTIxMjMsIDQ0OTUsIDQzNTY5LCAKKyAgICAwLCAwLCAwLCA2NDk0NiwgMTA5OTIsIDAsIDEyMDAwOSwgMCwgMCwgOTMxOCwgMTIwNjYxLCAxMzI0OSwgNjU2NzksIAorICAgIDczODA4LCAwLCA2NTQ1NywgNDIyNDksIDc2MzksIDQzOTk1LCA2Nzg0NSwgNDI2NDEsIDU0NTQsIDAsIDAsIDE5NDk5NywgCisgICAgMTIwMDA1LCAwLCA5ODM2OTgsIDUwODQsIDAsIDAsIDExODg2MSwgMCwgNzMzLCA5MTc4NzYsIDc4MDE0LCA3ODQzNiwgCisgICAgNzg0MzUsIDQxNjc3LCAwLCA5MjE4LCAxNzMxLCAwLCA5ODM0ODEsIDAsIDE5NTAxMCwgMCwgMCwgMCwgMTIwMDAxLCAKKyAgICAxMjcwMTgsIDkyNDkyLCA1MTU1LCAwLCA1MzU4LCA5ODM0NzksIDAsIDkxNzc2NywgNjQ0MjQsIDAsIDM4NDAsIDY0MzE0LCAKKyAgICA0MTQzMiwgMCwgMCwgNjg0MzAsIDExOTExNiwgNDMyNTMsIDY1OTQzLCAwLCAzMzcxLCAxMDk4OCwgMCwgODc3MSwgMTQ3OSwgCisgICAgMCwgMCwgMTEwOSwgMTE1ODAsIDAsIDY0NjAxLCAxMjIwNSwgMCwgMCwgNjQ1MDcsIDg4NjgsIDM5OSwgMCwgNzQ4NDIsIDAsIAorICAgIDk4MzQ1NiwgMTIxNDksIDEzMDg4LCA1NTEsIDAsIDEwMTU2LCAxMjExOSwgOTI1NzIsIDAsIDI1NDQsIDY1MDc0LCAKKyAgICAxMTkyMTEsIDAsIDAsIDc4MDExLCAzNTEsIDExOTE0OSwgMCwgMCwgNTUyMjksIDAsIDc0MjY4LCAwLCAwLCAwLCA0MjM3NywgCisgICAgMCwgMCwgMCwgMCwgMCwgOTAxMywgNDA1NCwgMCwgOTgzMzE0LCAwLCAwLCA3Mzk2MCwgNTU4NSwgNjU4ODEsIDI1NDksIAorICAgIDc0NDY5LCAwLCAwLCA1NTg0LCA4MzU4LCAwLCA3NDQxMSwgOTIyMTksIDEwOTE5LCAwLCA3OTgwLCAwLCA5ODM1MTksIDAsIAorICAgIDQxODAwLCA1NTg5LCAwLCAyNjY0LCA0MTYxMywgNTU4NiwgMTE4ODkwLCAwLCAxMTM1NiwgMCwgMCwgNDM0NTIsIDc4NjA5LCAKKyAgICAwLCA0MjU3MywgNjc4NTYsIDAsIDc4MTI5LCAwLCAwLCA5MjUzNSwgODEzNSwgNjQ1MCwgMTAwNTUsIDc3OTk2LCAwLCAwLCAKKyAgICAwLCA1NjU3LCAwLCA5NjI2LCAwLCA3Nzk5NCwgMTAxNzksIDU2NTQsIDEyOTM5LCA5MjU3MywgMTIwNzk5LCAwLCAwLCAKKyAgICA1NjUyLCAxMDk0NSwgMCwgNjY0ODYsIDAsIDM2NjEsIDc4NjMsIDAsIDAsIDAsIDc0NTA5LCA5ODM1ODcsIDU2NTksIDAsIAorICAgIDEyNzUxMCwgNjY3MjksIDU2NTUsIDAsIDQyMTY4LCAwLCAxMDU1LCA5MTc2MjgsIDEyNzc5MiwgNjYzMTAsIDc0MDMwLCAwLCAKKyAgICAxMjE0NiwgNzM5NTUsIDczOTU2LCAxMTYxOCwgMCwgMTI2OTkwLCAwLCAxMDI3MiwgMTAzMDQsIDEwMzY4LCA0MjUxOCwgCisgICAgNTk0LCAxMDI0NCwgMTAyNDgsIDc0MDcsIDk4MzYyMiwgNjQ4NzAsIDAsIDM0NjcsIDk4MzYyNiwgMCwgMzMzMSwgOTQ2LCAKKyAgICAxMDIzMSwgMTQ5NSwgODEzMSwgNzQzMzAsIDAsIDk1NjIsIDY5MjIyLCA2NTkyNywgMCwgOTgzNDU3LCA2OTY5NiwgNjk3NjksIAorICAgIDY0NjU2LCA5ODM0NjEsIDAsIDE5NDgzNywgMCwgNTY2NiwgNjUyMjcsIDUzMTgsIDYzOTk0LCAwLCA5MDkxLCAxMDc5OCwgMCwgCisgICAgMTI4MTY2LCAxMDE4NiwgMCwgNzczMiwgOTgzNDU5LCA2NDU1NiwgMCwgMCwgNTY2OCwgNzQ0NDUsIDAsIDAsIDU2NzAsIDAsIAogICAgIDEyNzI5NywgMTE4MjAsIDI5OTIsIDc4MjYsIDU2NjcsIDE5OTUyLCAxMjA4MDcsIDAsIDEyNzQ5LCA3NDU1MSwgMCwgMCwgCi0gICAgNjY0OTYsIDQzNjEsIDExOTI2MCwgMTMwNiwgOTI4NiwgMTQ5NywgMCwgMCwgMCwgMCwgMzU3MSwgMTMyNDcsIDAsIDc5NzMsIAotICAgIDY2MzUzLCA2ODQzNSwgNzgyNzgsIDY3ODk2LCA0MzE5MiwgMCwgNzgyNjUsIDU1MywgMTIwNjUzLCAwLCAxMjg1NTQsIAotICAgIDU4MjksIDAsIDQ1ODcsIDc4Mjg1LCA2NTkxMiwgMCwgMTI3NDYsIDAsIDAsIDExOTkyNCwgNTYzMywgMTE5OTI3LCAwLCAwLCAKLSAgICAwLCA2NDkwNSwgMCwgOTUxMiwgMTIwNjcxLCAxMjc0MiwgNjQ0MywgMCwgMCwgOTEzNSwgMCwgNDE1NjQsIDAsIDU1MjE5LCAKLSAgICAxMjg4MzIsIDAsIDAsIDEyMTQ4LCAwLCA3ODI5NywgMCwgNjQyNTYsIDAsIDExNjY5LCAwLCA1NjM0LCA0NTI0LCAwLCAKLSAgICAxMjcyNzAsIDAsIDExODg4MCwgMjQyNSwgNjUxODIsIDEyODc2OSwgNDM2MzYsIDUyMjEsIDc4NDEwLCAzMjgsIDAsIDAsIAotICAgIDY5ODE1LCA1NjM2LCAwLCA1MzI5LCAwLCA1NjM4LCAxMTk5MTgsIDc5NDAsIDY0OTM4LCA0MzIyMywgMCwgNTYzNSwgMzM3MywgCi0gICAgMjk4NiwgNzgyOTIsIDc0MjIzLCAzNDM3LCA3ODI5MSwgNjIwMywgNDI0NywgMCwgMTE5MjAsIDgyNzQsIDAsIDAsIDE2NTcsIAotICAgIDQxNTYxLCA3ODI5OSwgNzgyOTUsIDU2MzksIDI5NTQsIDU2NjAsIDU2NDAsIDc4MzAzLCAwLCA3ODMwMCwgNDIyMjcsIDAsIAotICAgIDAsIDQxNjM3LCA2Nzg3MiwgMCwgNzgzMTAsIDQxNjI1LCA0MzM2MiwgNzgzMDksIDEyMDcxMywgMTE3MDUsIDU2NDIsIDAsIAotICAgIDU0ODYsIDAsIDQzNTYsIDExNzEwLCAwLCAxMjA1MSwgMCwgMCwgNTY0MSwgODI1OSwgMCwgMTA1OCwgMCwgNjc2MzAsIDAsIAotICAgIDAsIDExNDQsIDc4NzUwLCAwLCA0MjIyOCwgMCwgNzM4OTAsIDExODk3MiwgMCwgNjUzMjIsIDAsIDU2NDUsIDY0OTY0LCAKLSAgICA4NjUyLCAyNTQ3LCA2NjQ4NCwgNDM2MzQsIDAsIDU2MDgsIDY1ODkwLCA0MzgwOCwgMCwgNjc2MjEsIDExOTkzNCwgOTAwMCwgCi0gICAgMCwgMCwgOTI2NzMsIDE4NjUsIDAsIDU2MTMsIDc0MjY3LCAwLCAwLCA1NjEwLCAwLCAwLCA2NTgyNiwgMjA2OSwgMCwgCi0gICAgMTA3ODcsIDQzOTk5LCAyOTk3LCAwLCA1NjA5LCA3ODMxNiwgNjUzMTksIDc4MzEzLCAxMjMxNiwgNjUzNzYsIDI0MTIsIDAsIAotICAgIDgxODYsIDk4MDcsIDc0MjY5LCAwLCAxMzEzMCwgNjU4NzQsIDAsIDU4MDcsIDAsIDEwMDMwLCA1MzA2LCAxMjkzNiwgMCwgMCwgCi0gICAgMTE3MDQsIDAsIDkyNTgzLCAxMDIxMSwgMCwgMCwgMCwgMCwgMTE3MDYsIDk3MTAsIDAsIDAsIDAsIDQxMywgNjU2MjMsIAotICAgIDcxMTgsIDAsIDkxMzMsIDc0MjYyLCAwLCAxMDQyLCAwLCA2NDc3OSwgMTIxNzEsIDExOTI0MCwgNjE4NSwgNjQ3NzYsIAotICAgIDQ5ODQsIDAsIDcwOCwgMTEzOTEsIDAsIDEyMjQxLCA5MjcyMCwgMCwgMTMwOCwgMCwgMjUzNCwgODEwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAxOTE3LCAzMDAwLCAwLCAwLCAxMjA3MzksIDIzNjQsIDkyNDQzLCA3NDQ3MCwgNjY2MTgsIDY1NjgwLCAwLCAxMDAyNywgCi0gICAgMCwgMTI4MTU0LCAxMjMzNywgMTIwNzIyLCAxMjczNjgsIDAsIDI5ODAsIDc1NSwgNjk3NzQsIDkzMSwgMTMxMjQsIDY4MTgyLCAKLSAgICA2MzYzLCAyNzQ4LCAwLCAwLCA2NTA0MSwgMCwgNDQwMTEsIDg3MzAsIDAsIDEyNzg1NCwgNzgzMTIsIDcyNzQsIDExOTI1MCwgCi0gICAgMCwgNzI3NSwgNzgzMDQsIDkzNSwgMCwgNjU4NDAsIDM3NywgNDIzMjUsIDExNjQ5LCAxMjczNjMsIDY1MjUzLCA2NDMwMSwgCi0gICAgMTI4ODM1LCA3ODMwOCwgNDIzNDEsIDY1Mjg0LCAyNDE3LCAwLCAxMjg4NCwgMTk5MTIsIDc5MDcsIDEwNzY4LCAwLCAKLSAgICAxOTQ5OTgsIDAsIDEwNjczLCAxMTkyMTcsIDcyNDgsIDAsIDEyODM0NiwgMTc4MSwgNTQ5NiwgMzYyNywgNjIsIDE2NDksIDAsIAotICAgIDk2NCwgMCwgMTI3ODc2LCA3ODIyNiwgMTI4Nzc1LCAxMjc1MTIsIDAsIDAsIDAsIDAsIDQzNjg5LCAxMjc5MTEsIDEzMTQyLCAKLSAgICA3ODgxMiwgNDI0MTUsIDY2NTc1LCA0NTQyLCA3NDAzNywgNDM1NDcsIDAsIDAsIDc2NzcsIDI5OTEsIDQ5NDYsIDQyNDU0LCAKLSAgICAwLCA3OTQ5LCAwLCAwLCAxMTM0MSwgNDI0OTQsIDMwNzMsIDY1NjI1LCA5NzE0LCAxMTY5MiwgNDY1NywgMCwgOTI3MjQsIAotICAgIDY0NzgsIDk4OTgsIDQzNjczLCA2NTIzNywgNjI0MSwgNzEwNiwgNDg3NywgMCwgNjIzOCwgMCwgMTA1NDgsIDEyNzA0OSwgCi0gICAgNDQwOSwgMCwgMCwgNjQ3OTgsIDAsIDUzNDYsIDAsIDEyMDUyOCwgNjIzNywgNDg3NCwgMCwgOTE3NiwgMCwgMCwgNjUyMzEsIAotICAgIDY1ODg0LCAxMjY3OCwgNzg3NDgsIDExODkxMiwgMTEzNzgsIDQ0MDE4LCA0Mjc4NSwgMjQwOCwgMzI1MSwgMCwgMCwgNTY4NSwgCi0gICAgMCwgMjQ2MSwgMTEwNTIsIDcwOTEsIDUzNDIsIDgzMTcsIDAsIDY4MTYzLCA1MzQwLCAwLCAxMjc4MjAsIDQzNjM1LCAKLSAgICA3MzkyOCwgMTI3NTI5LCAwLCAwLCAwLCAxMjg1MTAsIDY1NDgyLCAwLCA5MTQyLCAwLCAwLCAwLCAxMDkzOCwgMCwgCi0gICAgMTE4NzkwLCAxMTgyLCAyNTQyLCA0ODI2LCAwLCAwLCAxMjgxNzYsIDUyOSwgODU4MCwgMCwgMCwgMTA1ODYsIDEwNzkwLCAKLSAgICAxMDgzOSwgNjYwMjMsIDQxNTkzLCA0MTIwNywgMCwgMCwgNDE1OTQsIDIyNSwgNDI4MjgsIDAsIDAsIDAsIDExMzc2LCAKLSAgICA3NDM3OSwgMTA3MjEsIDY3NjY0LCAzNDM4LCA0MjA5NywgMTI3MjY3LCAxMTA4NCwgMzE5NCwgNDE4NzAsIDI2NiwgNzgzMDUsIAotICAgIDAsIDQxODczLCAxMjA1NzUsIDExMzI0LCAxMjA1MzEsIDAsIDg0MjAsIDY0OTE4LCAxMjg4NDQsIDQxODcxLCA0MTMzOCwgCi0gICAgMzczNCwgNzczNCwgNDM2ODMsIDg3NTAsIDY2NjA1LCA2NjAxMSwgMCwgNDA5NjUsIDEyNzkzNywgMCwgNTE2MSwgMTA1NzIsIAotICAgIDAsIDAsIDAsIDY0MzQ5LCA3Mjg3LCA0MjE2MiwgMTI3NTUyLCAwLCAwLCAxMTk0OCwgNjkyMjAsIDEyMzU5LCA0MzQyOSwgCi0gICAgNDEzNjksIDE2OTcsIDEyMTkxLCAwLCA2ODYzMywgNzI4NiwgMCwgNjg2MzUsIDEwMDMxLCAwLCA5ODcwLCA2ODY0NSwgCi0gICAgODYyMCwgNjU4MjQsIDAsIDExOTM4LCAwLCA3Mjg1LCAwLCAxMTk1NzcsIDQyNjc4LCAwLCA0MzY3NywgNDE1ODMsIDAsIAotICAgIDY1Nzk5LCA5MjYyMywgMCwgMCwgMCwgNzgxNjksIDY2MTk5LCAwLCAzNjA5LCA2ODYyNCwgMCwgODMyLCAxMjA2OTMsIAotICAgIDEyMDc3MCwgNzg0NzMsIDY2MDA3LCA3ODQ3MSwgNjU3MDMsIDAsIDAsIDQyNzMyLCA1MTgwLCA5MjY5OSwgNDEzOTUsIAotICAgIDQxNTMwLCAxMTY5MSwgNjQ3NzMsIDkyMjE0LCA3NDAwMiwgMCwgMCwgMTI4NjQ1LCA2MzQ4LCAyNDMsIDEzMjAwLCAwLCAKLSAgICA2MDI0LCA5MjMwOSwgOTk3OSwgMTAwMzcsIDQxNTI5LCAxMDY0OCwgODUzOCwgNDM2ODcsIDAsIDAsIDQyODUsIDY2MTk1LCAKLSAgICAwLCA0MjMwLCAwLCAxMzMwNywgNDMyNTYsIDkyMzUzLCA3NTYzLCA0MjM3NiwgMCwgNjg0NDIsIDEyMDUxMiwgMCwgMCwgCi0gICAgMjE0LCAwLCAwLCA3ODQ2NiwgNjU4OTMsIDEyMjA4LCA5OTczLCAwLCA2NjMxMSwgNjU1ODksIDEyODI3NywgMjYwMywgMCwgCi0gICAgMCwgMCwgMCwgMCwgNjAyMiwgMCwgMjg4NCwgMCwgMTE2MjAsIDAsIDQzLCAwLCA2NjQ1MywgMTAxNiwgNDExMDcsIDAsIAotICAgIDQxMTIxLCAzODg1LCA5MiwgNjU0NTYsIDY0NjA4LCAwLCA3NDgwMSwgMCwgMjA3NCwgMCwgNzgyODMsIDAsIDEyNDUzLCAKLSAgICAxMjgxMjgsIDAsIDc0MjQxLCAwLCA2NzkxLCAxMjQ1NywgNzgyNjgsIDAsIDAsIDAsIDc4Mjc5LCAwLCAwLCA5MjM1OCwgCi0gICAgNjY2MzcsIDc5OTUsIDg3NTksIDQzNDIxLCA3ODI3NywgMTI0NDksIDEyODU1MiwgMCwgMCwgODc1MiwgMzE5NywgNDcyMCwgCi0gICAgMTAxNjUsIDAsIDExOTI0OSwgMCwgMTE1OTUsIDY0ODkzLCAwLCA0MzQzNSwgMCwgMCwgNDk5MywgMCwgNjE2OCwgMTA5MzQsIAotICAgIDE5NDYsIDc0MSwgMCwgNTQ5NCwgNDYzOSwgMCwgMTk5MCwgNjY1ODksIDQ0OTgsIDc4NjY0LCAxMTkxODMsIDAsIDAsIAotICAgIDY5NzM0LCAyOTYwLCA3Mzc3OSwgMCwgODk2OSwgMTI4MTE3LCA0MzQyNCwgMTI3MDU5LCAwLCAyOTUwLCAxMTk1NzksIAotICAgIDYyMTAsIDY1NzUzLCAzNzAsIDAsIDAsIDAsIDQ5NTMsIDAsIDAsIDAsIDAsIDY5MjMwLCAwLCAwLCA2NTY4OCwgMCwgNTA2MywgCi0gICAgMzUxNywgMjk2NCwgNDM2NjMsIDkxNzc2MiwgNjM0NCwgNzQ3OTEsIDEwNTY2LCAxMDE0NCwgNjYzMzMsIDgyNTIsIDcyOSwgCi0gICAgNjYwMTYsIDc4MjUzLCAwLCAwLCA2NDkyMywgMTI4MDQwLCA0MzY2OSwgOTAzMiwgNzgyNjMsIDc4MjY0LCAwLCA0MTIxNSwgCi0gICAgMCwgNjU4ODMsIDAsIDkxNzc3NCwgMTIwNjAyLCAzNzYxLCAwLCAwLCAwLCAwLCAxMjkxMiwgMTE5MDEyLCAzODUwLCAKLSAgICAxMjgxOTEsIDAsIDAsIDAsIDAsIDkwOCwgMCwgODYxMSwgMCwgMCwgMTI3NTU1LCA0MzY5MSwgNDExOTcsIDAsIDg5NzgsIAotICAgIDEyMDU0MCwgMTE5MTM1LCA0MTU4NiwgMTA1MjcsIDAsIDkxNzg0OCwgMzg0OCwgNzg3MzksIDE5NDkzNywgMTI3NTM2LCAKLSAgICA2NTI0MSwgNTMzNiwgMCwgMTI4Nzg2LCA2NjMsIDAsIDEwNzgwLCAwLCAwLCA3ODc2NywgMCwgMTI3MTYzLCA2ODE5MywgCi0gICAgMzQ3LCAwLCAwLCA3ODc3NSwgNjQ2NzUsIDQxNTgyLCA3ODc3NCwgNzg3NDQsIDY1NTc5LCAxMjk4MCwgNzg3NjksIDEyMTQzLCAKLSAgICA2OTY1NywgNzg1MTIsIDAsIDQzNDQxLCA0MTgwNCwgNzg1MjMsIDAsIDc4NTI1LCAwLCAxMjg4NTksIDQxNTg0LCAxMDY4MSwgCi0gICAgMCwgMCwgNzM5MzgsIDAsIDEyODAyMiwgNDgwMCwgNjY2NjEsIDAsIDY2MzA2LCA2NDcxNSwgNzg1MzQsIDk1MTgsIDY2MDksIAotICAgIDEwNDM0LCAwLCAxMTMxOSwgMTA5NywgMCwgOTE3ODUwLCA0MTczMCwgMCwgMCwgNzM4NDcsIDc4NzYxLCA2NTE3MiwgCi0gICAgNDE3MjgsIDQxNzIxLCAwLCAwLCAwLCA0MTIwMywgMCwgMTMxMTAsIDQxNzI2LCAwLCAwLCAxMDAwLCA2OTY1MSwgMCwgCi0gICAgNDExNDAsIDEyMDksIDczOTc4LCAwLCA3Mzc1MCwgMTA3MywgNjMyMSwgNzc4NzgsIDQxMTM4LCAwLCA2ODIxMywgMCwgCi0gICAgMTIxNjcsIDExMTUsIDQxNjA1LCA5Nzk0LCAxMjcwNjIsIDY3NjcxLCA1NTI0OCwgMTIyMzcsIDc4Nzg3LCA2NjMxNCwgCi0gICAgNjU4NywgOTI5MCwgNzg3ODIsIDc4NzgzLCA5MjMxLCA3ODc4MSwgMjk1OSwgNzkyNiwgMCwgMCwgMCwgNjQzOTgsIDAsIAotICAgIDExOTk3MCwgMTIzMTEsIDAsIDc4Nzk2LCA3ODc5OCwgNzg3OTQsIDc4Nzk1LCA2ODQzNCwgNzg3OTMsIDY2NjcwLCAwLCAwLCAKLSAgICAxMjI5MCwgMTIwMTY5LCAwLCAxMTk4NzMsIDQyMTQyLCA5OTY4LCA4MjA1LCAwLCA1MTMxLCAwLCA5NjI3LCA3ODUzNiwgCi0gICAgNzg1NDIsIDc4NTM1LCAwLCAxOTQ0LCAxMjQ4LCAxMDE0OCwgMTI3NzU1LCAxMTk5OTAsIDExOTk5MSwgMTI3MDEsIDc4Mzc2LCAKLSAgICAxMTMwOCwgMTE5OTk1LCAwLCAxMTk5OTcsIDExOTk5OCwgNjUzMDUsIDY1MTAwLCA0MDMxLCA0Mjc5NCwgMTIwMDAzLCAKLSAgICA3MDc1LCA4MTU0LCAxMTk5ODUsIDEyMDAwNywgNDE4MTcsIDczOTM0LCA0MjI3NSwgMTIwMDExLCAxMjAwMTIsIDc4NTI2LCAKLSAgICAxMjAwMTQsIDEyMDAxNSwgNjA0MSwgMCwgNDE4OTksIDAsIDgwMDIsIDAsIDQzNjQsIDAsIDAsIDY0MzMyLCAwLCA3ODEzLCAKLSAgICA5MDY0LCAxMTk5ODYsIDEwMTI0LCA3NTI2LCA4NjAxLCA3MjgxLCA3ODQ1NSwgNzI3OSwgMTIwNDEsIDE0MTgsIDEwODg1LCAKLSAgICAxMjY3MywgMCwgMCwgOTY2MCwgMCwgMTMwMTIsIDQ1NzEsIDAsIDAsIDAsIDEyMDc4LCAyOTcwLCAwLCAxMDkzMywgMCwgCi0gICAgNzc4NzAsIDAsIDAsIDAsIDQxNTk5LCAwLCAxMjg4MzEsIDAsIDEyOTUwLCA5MjE2MCwgMzQ4NiwgMCwgNzgzMTEsIDQyMzksIAotICAgIDAsIDEyNzc5OSwgNjY1MTEsIDAsIDI2MzcsIDY0NjI5LCA4NDYwLCAxMjcwNTMsIDg0NzYsIDAsIDAsIDAsIDAsIDY1NjczLCAKLSAgICAxMDE5LCA3ODQ5NSwgNDE0OCwgMCwgMTIyODksIDAsIDQzMTYsIDAsIDEzMTE5LCAwLCA1NDEyLCA2NjI0MywgOTkzNSwgMCwgCi0gICAgNzM4NjQsIDAsIDQxNzM0LCA4MjA2LCA3NDA4MSwgOTE2MywgMzI4NiwgOTA3MiwgNTg2NywgMTMzMDIsIDc2MjIsIDcxMjAsIAotICAgIDQxNzM2LCA5MjU0NiwgNDE3MzEsIDAsIDc0MDAsIDU0MTYsIDY4NjYzLCAxMTg5MjQsIDEwODE3LCAwLCA0MTUzOSwgCisgICAgNjY0OTYsIDQzNjEsIDExOTI2MCwgMTMwNiwgOTI4NiwgMTQ5NywgOTgzMzYwLCAwLCAwLCAwLCAzNTcxLCAxMzI0NywgMCwgCisgICAgNzk3MywgNjYzNTMsIDY4NDM1LCA3ODI3OCwgNjc4OTYsIDQzMTkyLCAwLCA3ODI2NSwgNTUzLCAxMjA2NTMsIDAsIAorICAgIDEyODU1NCwgNTgyOSwgMCwgNDU4NywgNzgyODUsIDY1OTEyLCAwLCAxMjc0NiwgMCwgMCwgMTE5OTI0LCA1NjMzLCAKKyAgICAxMTk5MjcsIDAsIDAsIDAsIDY0OTA1LCAwLCA5NTEyLCAxMjA2NzEsIDEyNzQyLCA2NDQzLCA5ODM1NDEsIDAsIDkxMzUsIDAsIAorICAgIDQxNTY0LCAwLCA1NTIxOSwgMTI4ODMyLCA5ODM1ODYsIDAsIDEyMTQ4LCAwLCA3ODI5NywgMCwgNjQyNTYsIDAsIDExNjY5LCAKKyAgICAwLCA1NjM0LCA0NTI0LCAwLCAxMjcyNzAsIDAsIDExODg4MCwgMjQyNSwgNjUxODIsIDEyODc2OSwgNDM2MzYsIDUyMjEsIAorICAgIDc4NDEwLCAzMjgsIDAsIDk4MzU0NCwgNjk4MTUsIDU2MzYsIDAsIDUzMjksIDAsIDU2MzgsIDExOTkxOCwgNzk0MCwgCisgICAgNjQ5MzgsIDQzMjIzLCAwLCA1NjM1LCAzMzczLCAyOTg2LCA3ODI5MiwgNzQyMjMsIDM0MzcsIDc4MjkxLCA2MjAzLCA0MjQ3LCAKKyAgICAwLCAxMTkyMCwgODI3NCwgMCwgMCwgMTY1NywgNDE1NjEsIDc4Mjk5LCA3ODI5NSwgNTYzOSwgMjk1NCwgNTY2MCwgNTY0MCwgCisgICAgNzgzMDMsIDk4MzQyMCwgNzgzMDAsIDQyMjI3LCAwLCAwLCA0MTYzNywgNjc4NzIsIDAsIDc4MzEwLCA0MTYyNSwgNDMzNjIsIAorICAgIDc4MzA5LCAxMjA3MTMsIDExNzA1LCA1NjQyLCAwLCA1NDg2LCAwLCA0MzU2LCAxMTcxMCwgMCwgMTIwNTEsIDAsIDAsIAorICAgIDU2NDEsIDgyNTksIDAsIDEwNTgsIDAsIDY3NjMwLCAwLCAwLCAxMTQ0LCA3ODc1MCwgMCwgNDIyMjgsIDAsIDczODkwLCAKKyAgICAxMTg5NzIsIDAsIDY1MzIyLCAwLCA1NjQ1LCA2NDk2NCwgODY1MiwgMjU0NywgNjY0ODQsIDQzNjM0LCAwLCA1NjA4LCAKKyAgICA2NTg5MCwgNDM4MDgsIDAsIDY3NjIxLCAxMTk5MzQsIDkwMDAsIDAsIDAsIDkyNjczLCAxODY1LCAwLCA1NjEzLCA3NDI2NywgCisgICAgMCwgMCwgNTYxMCwgMCwgMCwgNjU4MjYsIDIwNjksIDAsIDEwNzg3LCA0Mzk5OSwgMjk5NywgMCwgNTYwOSwgNzgzMTYsIAorICAgIDY1MzE5LCA3ODMxMywgMTIzMTYsIDY1Mzc2LCAyNDEyLCAwLCA4MTg2LCA5ODA3LCA3NDI2OSwgMCwgMTMxMzAsIDY1ODc0LCAKKyAgICAwLCA1ODA3LCAwLCAxMDAzMCwgNTMwNiwgMTI5MzYsIDk4MzU1NywgMCwgMTE3MDQsIDAsIDkyNTgzLCAxMDIxMSwgMCwgMCwgCisgICAgMCwgMCwgMTE3MDYsIDk3MTAsIDAsIDAsIDAsIDQxMywgNjU2MjMsIDcxMTgsIDAsIDkxMzMsIDc0MjYyLCAwLCAxMDQyLCAwLCAKKyAgICA2NDc3OSwgMTIxNzEsIDExOTI0MCwgNjE4NSwgNjQ3NzYsIDQ5ODQsIDAsIDcwOCwgMTEzOTEsIDAsIDEyMjQxLCA5MjcyMCwgCisgICAgMCwgMTMwOCwgMCwgMjUzNCwgODEwLCAwLCAwLCAwLCAwLCAwLCAxOTE3LCAzMDAwLCAwLCAwLCAxMjA3MzksIDIzNjQsIAorICAgIDkyNDQzLCA3NDQ3MCwgNjY2MTgsIDY1NjgwLCAwLCAxMDAyNywgMCwgMTI4MTU0LCAxMjMzNywgMTIwNzIyLCAxMjczNjgsIAorICAgIDAsIDI5ODAsIDc1NSwgNjk3NzQsIDkzMSwgMTMxMjQsIDY4MTgyLCA2MzYzLCAyNzQ4LCAwLCAwLCA2NTA0MSwgMCwgCisgICAgNDQwMTEsIDg3MzAsIDAsIDEyNzg1NCwgNzgzMTIsIDcyNzQsIDExOTI1MCwgMCwgNzI3NSwgNzgzMDQsIDkzNSwgMCwgCisgICAgNjU4NDAsIDM3NywgNDIzMjUsIDExNjQ5LCAxMjczNjMsIDY1MjUzLCA2NDMwMSwgMTI4ODM1LCA3ODMwOCwgNDIzNDEsIAorICAgIDY1Mjg0LCAyNDE3LCAwLCAxMjg4NCwgMTk5MTIsIDc5MDcsIDEwNzY4LCAwLCAxOTQ5OTgsIDAsIDEwNjczLCAxMTkyMTcsIAorICAgIDcyNDgsIDAsIDEyODM0NiwgMTc4MSwgNTQ5NiwgMzYyNywgNjIsIDE2NDksIDAsIDk2NCwgMCwgMTI3ODc2LCA3ODIyNiwgCisgICAgMTI4Nzc1LCAxMjc1MTIsIDAsIDAsIDAsIDAsIDQzNjg5LCAxMjc5MTEsIDEzMTQyLCA3ODgxMiwgNDI0MTUsIDY2NTc1LCAKKyAgICA0NTQyLCA3NDAzNywgNDM1NDcsIDAsIDAsIDc2NzcsIDI5OTEsIDQ5NDYsIDQyNDU0LCAwLCA3OTQ5LCAwLCAwLCAxMTM0MSwgCisgICAgNDI0OTQsIDMwNzMsIDY1NjI1LCA5NzE0LCAxMTY5MiwgNDY1NywgMCwgOTI3MjQsIDY0NzgsIDk4OTgsIDQzNjczLCAKKyAgICA2NTIzNywgNjI0MSwgNzEwNiwgNDg3NywgMCwgNjIzOCwgMCwgMTA1NDgsIDEyNzA0OSwgNDQwOSwgMCwgMCwgNjQ3OTgsIDAsIAorICAgIDUzNDYsIDAsIDEyMDUyOCwgNjIzNywgNDg3NCwgMCwgOTE3NiwgMCwgMCwgNjUyMzEsIDY1ODg0LCAxMjY3OCwgNzg3NDgsIAorICAgIDExODkxMiwgMTEzNzgsIDQ0MDE4LCA0Mjc4NSwgMjQwOCwgMzI1MSwgMCwgMCwgNTY4NSwgMCwgMjQ2MSwgMTEwNTIsIAorICAgIDcwOTEsIDUzNDIsIDgzMTcsIDAsIDY4MTYzLCA1MzQwLCAwLCAxMjc4MjAsIDQzNjM1LCA3MzkyOCwgMTI3NTI5LCAwLCAwLCAKKyAgICAwLCAxMjg1MTAsIDY1NDgyLCAwLCA5MTQyLCAwLCAwLCAwLCAxMDkzOCwgMCwgMTE4NzkwLCAxMTgyLCAyNTQyLCA0ODI2LCAKKyAgICAwLCAwLCAxMjgxNzYsIDUyOSwgODU4MCwgMCwgMCwgMTA1ODYsIDEwNzkwLCAxMDgzOSwgNjYwMjMsIDQxNTkzLCA0MTIwNywgCisgICAgMCwgMCwgNDE1OTQsIDIyNSwgNDI4MjgsIDAsIDAsIDk4MzY3MCwgMTEzNzYsIDc0Mzc5LCAxMDcyMSwgNjc2NjQsIDM0MzgsIAorICAgIDQyMDk3LCAxMjcyNjcsIDExMDg0LCAzMTk0LCA0MTg3MCwgMjY2LCA3ODMwNSwgMCwgNDE4NzMsIDEyMDU3NSwgMTEzMjQsIAorICAgIDEyMDUzMSwgMCwgODQyMCwgNjQ5MTgsIDEyODg0NCwgNDE4NzEsIDQxMzM4LCAzNzM0LCA3NzM0LCA0MzY4MywgODc1MCwgCisgICAgNjY2MDUsIDY2MDExLCAwLCA0MDk2NSwgMTI3OTM3LCAwLCA1MTYxLCAxMDU3MiwgMCwgMCwgMCwgNjQzNDksIDcyODcsIAorICAgIDQyMTYyLCAxMjc1NTIsIDAsIDAsIDExOTQ4LCA2OTIyMCwgMTIzNTksIDQzNDI5LCA0MTM2OSwgMTY5NywgMTIxOTEsIDAsIAorICAgIDY4NjMzLCA3Mjg2LCAwLCA2ODYzNSwgMTAwMzEsIDAsIDk4NzAsIDY4NjQ1LCA4NjIwLCA2NTgyNCwgMCwgMTE5MzgsIDAsIAorICAgIDcyODUsIDAsIDExOTU3NywgNDI2NzgsIDAsIDQzNjc3LCA0MTU4MywgMCwgNjU3OTksIDkyNjIzLCAwLCAwLCA5ODM2NjgsIAorICAgIDc4MTY5LCA2NjE5OSwgMCwgMzYwOSwgNjg2MjQsIDAsIDgzMiwgMTIwNjkzLCAxMjA3NzAsIDc4NDczLCA2NjAwNywgCisgICAgNzg0NzEsIDY1NzAzLCAwLCAwLCA0MjczMiwgNTE4MCwgOTI2OTksIDQxMzk1LCA0MTUzMCwgMTE2OTEsIDY0NzczLCAKKyAgICA5MjIxNCwgNzQwMDIsIDAsIDAsIDEyODY0NSwgNjM0OCwgMjQzLCAxMzIwMCwgOTgzNTQ4LCA2MDI0LCA5MjMwOSwgOTk3OSwgCisgICAgMTAwMzcsIDQxNTI5LCAxMDY0OCwgODUzOCwgNDM2ODcsIDAsIDAsIDQyODUsIDY2MTk1LCAwLCA0MjMwLCAwLCAxMzMwNywgCisgICAgNDMyNTYsIDkyMzUzLCA3NTYzLCA0MjM3NiwgMCwgNjg0NDIsIDEyMDUxMiwgMCwgMCwgMjE0LCAwLCAwLCA3ODQ2NiwgCisgICAgNjU4OTMsIDEyMjA4LCA5OTczLCAwLCA2NjMxMSwgNjU1ODksIDEyODI3NywgMjYwMywgMCwgMCwgMCwgMCwgMCwgNjAyMiwgCisgICAgMCwgMjg4NCwgMCwgMTE2MjAsIDAsIDQzLCAwLCA2NjQ1MywgMTAxNiwgNDExMDcsIDAsIDQxMTIxLCAzODg1LCA5MiwgCisgICAgNjU0NTYsIDY0NjA4LCAwLCA3NDgwMSwgMCwgMjA3NCwgMCwgNzgyODMsIDAsIDEyNDUzLCAxMjgxMjgsIDk4MzU2MSwgCisgICAgNzQyNDEsIDAsIDY3OTEsIDEyNDU3LCA3ODI2OCwgMCwgMCwgMCwgNzgyNzksIDAsIDAsIDkyMzU4LCA2NjYzNywgNzk5NSwgCisgICAgODc1OSwgNDM0MjEsIDc4Mjc3LCAxMjQ0OSwgMTI4NTUyLCAwLCAwLCA4NzUyLCAzMTk3LCA0NzIwLCAxMDE2NSwgMCwgCisgICAgMTE5MjQ5LCAwLCAxMTU5NSwgNjQ4OTMsIDAsIDQzNDM1LCAwLCAwLCA0OTkzLCAwLCA2MTY4LCAxMDkzNCwgMTk0NiwgNzQxLCAKKyAgICAwLCA1NDk0LCA0NjM5LCAwLCAxOTkwLCA2NjU4OSwgNDQ5OCwgNzg2NjQsIDExOTE4MywgMCwgMCwgNjk3MzQsIDI5NjAsIAorICAgIDczNzc5LCAwLCA4OTY5LCAxMjgxMTcsIDQzNDI0LCAxMjcwNTksIDAsIDI5NTAsIDExOTU3OSwgNjIxMCwgNjU3NTMsIDM3MCwgCisgICAgMCwgMCwgMCwgNDk1MywgOTgzNDE3LCAwLCAwLCAwLCA2OTIzMCwgMCwgMCwgNjU2ODgsIDAsIDUwNjMsIDM1MTcsIDI5NjQsIAorICAgIDQzNjYzLCA5MTc3NjIsIDYzNDQsIDc0NzkxLCAxMDU2NiwgMTAxNDQsIDY2MzMzLCA4MjUyLCA3MjksIDY2MDE2LCA3ODI1MywgCisgICAgMCwgMCwgNjQ5MjMsIDEyODA0MCwgNDM2NjksIDkwMzIsIDc4MjYzLCA3ODI2NCwgMCwgNDEyMTUsIDAsIDY1ODgzLCAwLCAKKyAgICA5MTc3NzQsIDEyMDYwMiwgMzc2MSwgMCwgMCwgMCwgMCwgMTI5MTIsIDExOTAxMiwgMzg1MCwgMTI4MTkxLCAwLCAwLCAwLCAKKyAgICAwLCA5MDgsIDAsIDg2MTEsIDAsIDAsIDEyNzU1NSwgNDM2OTEsIDQxMTk3LCAwLCA4OTc4LCAxMjA1NDAsIDExOTEzNSwgCisgICAgNDE1ODYsIDEwNTI3LCAwLCA5MTc4NDgsIDM4NDgsIDc4NzM5LCAxOTQ5MzcsIDEyNzUzNiwgNjUyNDEsIDUzMzYsIDAsIAorICAgIDEyODc4NiwgNjYzLCAwLCAxMDc4MCwgMCwgMCwgNzg3NjcsIDAsIDEyNzE2MywgNjgxOTMsIDM0NywgMCwgMCwgNzg3NzUsIAorICAgIDY0Njc1LCA0MTU4MiwgNzg3NzQsIDc4NzQ0LCA2NTU3OSwgMTI5ODAsIDc4NzY5LCAxMjE0MywgNjk2NTcsIDc4NTEyLCAwLCAKKyAgICA0MzQ0MSwgNDE4MDQsIDc4NTIzLCAwLCA3ODUyNSwgMCwgMTI4ODU5LCA0MTU4NCwgMTA2ODEsIDAsIDk4MzQzMCwgNzM5MzgsIAorICAgIDAsIDEyODAyMiwgNDgwMCwgNjY2NjEsIDAsIDY2MzA2LCA2NDcxNSwgNzg1MzQsIDk1MTgsIDY2MDksIDEwNDM0LCAwLCAKKyAgICAxMTMxOSwgMTA5NywgMCwgOTE3ODUwLCA0MTczMCwgMCwgMCwgNzM4NDcsIDc4NzYxLCA2NTE3MiwgNDE3MjgsIDQxNzIxLCAKKyAgICAwLCAwLCAwLCA0MTIwMywgMCwgMTMxMTAsIDQxNzI2LCA5ODM1OTAsIDAsIDEwMDAsIDY5NjUxLCAwLCA0MTE0MCwgMTIwOSwgCisgICAgNzM5NzgsIDAsIDczNzUwLCAxMDczLCA2MzIxLCA3Nzg3OCwgNDExMzgsIDAsIDY4MjEzLCAwLCAxMjE2NywgMTExNSwgCisgICAgNDE2MDUsIDk3OTQsIDEyNzA2MiwgNjc2NzEsIDU1MjQ4LCAxMjIzNywgNzg3ODcsIDY2MzE0LCA2NTg3LCA5MjkwLCAKKyAgICA3ODc4MiwgNzg3ODMsIDkyMzEsIDc4NzgxLCAyOTU5LCA3OTI2LCAwLCAwLCAwLCA2NDM5OCwgMCwgMTE5OTcwLCAxMjMxMSwgCisgICAgMCwgNzg3OTYsIDc4Nzk4LCA3ODc5NCwgNzg3OTUsIDY4NDM0LCA3ODc5MywgNjY2NzAsIDAsIDAsIDEyMjkwLCAxMjAxNjksIAorICAgIDAsIDExOTg3MywgNDIxNDIsIDk5NjgsIDgyMDUsIDAsIDUxMzEsIDAsIDk2MjcsIDc4NTM2LCA3ODU0MiwgNzg1MzUsIDAsIAorICAgIDE5NDQsIDEyNDgsIDEwMTQ4LCAxMjc3NTUsIDExOTk5MCwgMTE5OTkxLCAxMjcwMSwgNzgzNzYsIDExMzA4LCAxMTk5OTUsIAorICAgIDAsIDExOTk5NywgMTE5OTk4LCA2NTMwNSwgNjUxMDAsIDQwMzEsIDQyNzk0LCAxMjAwMDMsIDcwNzUsIDgxNTQsIDExOTk4NSwgCisgICAgMTIwMDA3LCA0MTgxNywgNzM5MzQsIDQyMjc1LCAxMjAwMTEsIDEyMDAxMiwgNzg1MjYsIDEyMDAxNCwgMTIwMDE1LCA2MDQxLCAKKyAgICAwLCA0MTg5OSwgMCwgODAwMiwgMCwgNDM2NCwgMCwgMCwgNjQzMzIsIDAsIDc4MTMsIDkwNjQsIDExOTk4NiwgMTAxMjQsIAorICAgIDc1MjYsIDg2MDEsIDcyODEsIDc4NDU1LCA3Mjc5LCAxMjA0MSwgMTQxOCwgMTA4ODUsIDEyNjczLCAwLCAwLCA5NjYwLCAwLCAKKyAgICAxMzAxMiwgNDU3MSwgMCwgMCwgOTgzNTk0LCAxMjA3OCwgMjk3MCwgMCwgMTA5MzMsIDAsIDc3ODcwLCAwLCAwLCAwLCAKKyAgICA0MTU5OSwgMCwgMTI4ODMxLCAwLCAxMjk1MCwgOTIxNjAsIDM0ODYsIDAsIDc4MzExLCA0MjM5LCAwLCAxMjc3OTksIAorICAgIDY2NTExLCAwLCAyNjM3LCA2NDYyOSwgODQ2MCwgMTI3MDUzLCA4NDc2LCA5ODM3MDcsIDAsIDAsIDAsIDY1NjczLCAxMDE5LCAKKyAgICA3ODQ5NSwgNDE0OCwgMCwgMTIyODksIDAsIDQzMTYsIDAsIDEzMTE5LCA5ODM2MzYsIDU0MTIsIDY2MjQzLCA5OTM1LCAwLCAKKyAgICA3Mzg2NCwgOTgzMDQyLCA0MTczNCwgODIwNiwgNzQwODEsIDkxNjMsIDMyODYsIDkwNzIsIDU4NjcsIDEzMzAyLCA3NjIyLCAKKyAgICA3MTIwLCA0MTczNiwgOTI1NDYsIDQxNzMxLCAwLCA3NDAwLCA1NDE2LCA2ODY2MywgMTE4OTI0LCAxMDgxNywgMCwgNDE1MzksIAogICAgIDEyNzI4NCwgMCwgNzM5NjMsIDQxODU1LCA0MTg2NywgNjU1NjQsIDExMjc3LCA2NTg5MiwgMTE1MzYsIDEwNjIwLCA5MjI3MiwgCiAgICAgNzExNSwgNjYwMzAsIDczOTMyLCA1NDk4LCA3Mzk0MiwgNDE1MzYsIDAsIDY4MjA0LCA5MjU4NywgMzQ1OSwgODk5NywgMCwgCiAgICAgMCwgMCwgMCwgOTI1MTIsIDAsIDY2Mzc3LCA2OTc4MSwgMCwgMCwgNzg1MTEsIDMxNjEsIDI5NSwgMTIwMjA3LCAwLCAKQEAgLTE3NTMwLDYxICsxNzc2MSw2MiBAQAogICAgIDk0OTcsIDAsIDYzODkxLCA2Mzg5MCwgNjM4ODksIDYzODg4LCA1NTM4LCA5OTg3LCAwLCAxMTg5MzIsIDE2NzgsIDEzMjc0LCAKICAgICA1NTIsIDEyMDY1NCwgNDQwMTAsIDEwNzg1LCAwLCAxMTkxNzAsIDQ1NTcsIDc0NDU5LCA5MTU5LCAxMDE3MSwgMTMxMjUsIAogICAgIDYzODYwLCA1NTQwLCA2Mzg1OCwgNjM4NjUsIDI4MSwgMTMyNDIsIDYzODYyLCA3NDE1NCwgMCwgNTUzNiwgNjU1NjgsIAotICAgIDYzODU3LCAxMzg4LCA3NDE2OSwgMCwgMTA3NywgMCwgNjUwOTksIDExNTMxLCA1ODM0LCAwLCAwLCAwLCAwLCA0Mjc3MywgMCwgCi0gICAgMCwgMCwgMTE5MjIwLCAwLCAzNjYzLCAwLCAxMTEyLCAxMTkxMjIsIDg2ODYsIDAsIDUzMzQsIDY1MDgxLCA0MzI0OSwgCi0gICAgNzQ3NzgsIDEyNzk2OCwgMTEwNzcsIDAsIDY1MDksIDAsIDUzMjcsIDAsIDE5OTA3LCA2Mzg2OSwgMzQ3OCwgNzU4MywgCi0gICAgNzY3OSwgMjkwMywgMCwgMzAwMSwgMTE1OCwgODc0NSwgMCwgNzM3NDgsIDYzODY2LCAwLCAxOTE1LCA0ODQ2LCAwLCAKKyAgICA2Mzg1NywgMTM4OCwgNzQxNjksIDAsIDEwNzcsIDk4MzMyMSwgNjUwOTksIDExNTMxLCA1ODM0LCAwLCAwLCAwLCAwLCAKKyAgICA0Mjc3MywgMCwgMCwgMCwgMTE5MjIwLCAwLCAzNjYzLCAwLCAxMTEyLCAxMTkxMjIsIDg2ODYsIDAsIDUzMzQsIDY1MDgxLCAKKyAgICA0MzI0OSwgNzQ3NzgsIDEyNzk2OCwgMTEwNzcsIDAsIDY1MDksIDAsIDUzMjcsIDAsIDE5OTA3LCA2Mzg2OSwgMzQ3OCwgCisgICAgNzU4MywgNzY3OSwgMjkwMywgMCwgMzAwMSwgMTE1OCwgODc0NSwgMCwgNzM3NDgsIDYzODY2LCAwLCAxOTE1LCA0ODQ2LCAwLCAKICAgICA2NjM3MSwgMTE4OTg0LCA0MjEwNSwgMjk5MCwgMTIwMTI4LCA4MDUsIDY5MjM4LCA2NDQzOCwgMTIwNzAsIDg3NjAsIDExMTcsIAogICAgIDExODk4NywgMTIyMTIsIDEyMDEyMywgNjUxNzQsIDQyMzU3LCA2MzgzNSwgNjM4MzQsIDAsIDc4MjQwLCAxMjIyNSwgCi0gICAgNjM4MzgsIDYzODM3LCAwLCAwLCA2MzgzMywgNjA0MiwgNjYzNjAsIDgwODMsIDAsIDAsIDYzODIxLCA2MzgyMCwgNjM4MTksIAotICAgIDYzODE4LCAwLCA1MjI3LCA5MDQ3LCA2MzgyMiwgMTI3MTYyLCA2MDkxLCAwLCAxMDY5MSwgNTYwLCA1NjQzLCA4MjI2LCAKLSAgICAxMTk1NzgsIDYzODEyLCA2MzgxMSwgNjM4MTAsIDYzODA5LCA1NTQyLCA2MzgxNSwgNjM4MTQsIDYzODEzLCA2MDQ3LCAKLSAgICAxNTk3LCAxMjAxNDMsIDc4MCwgMjA2LCA3NzkyNSwgNDkzNiwgNjUxNDcsIDgxNjgsIDYzOTMwLCAyMDc2LCAxMDkzLCAKLSAgICA5ODgyLCA2MzkzNCwgMjA4MiwgNjM5MzIsIDEyODE1MCwgNjM5MjksIDM1NDYsIDE2MDUsIDc3OTM0LCA5ODA2LCA0MzQ3MiwgCi0gICAgNzc5MzMsIDg0MDAsIDExMzQzLCAyMDg2LCAwLCA2MzkyNiwgMjk4NCwgNTk2OCwgOTI4NywgMCwgNDYxOCwgNDIyMDksIAotICAgIDQzNDMxLCAxMzE2OSwgNTI5MCwgMjA4OSwgMTY5NSwgMTA3NDMsIDEwODgsIDYzODI1LCA3MjY4LCAxMDg0LCAxMDg1LCAKLSAgICA2MzgyOSwgMTA4MywgMTAxMzEsIDcyODMsIDAsIDYzOTcwLCAxMjgzNTgsIDEwOTIsIDQ3NTQsIDcyNzMsIDUyNTIsIAotICAgIDQ0MDE2LCA0MzYyNywgMTI3OTIxLCAwLCA3NDA4LCAxMTgwOSwgMCwgMCwgMCwgMjk2NSwgNzI1OCwgODgwOCwgMCwgMTA4OSwgCi0gICAgNDE4NywgNjM5MzcsIDQyMTE5LCA0MjEyMCwgMCwgOTQwLCA1Nzg3LCAxMDA5OSwgNjM5MzgsIDAsIDc0NDk0LCAxMjQ2MywgCi0gICAgMjk5NCwgMCwgMTE4ODI3LCAwLCA5NjY0LCA3NzkzOSwgNzc5NDAsIDY3ODkyLCA3NzkzOCwgNzQzNDMsIDAsIDAsIDY2MCwgCi0gICAgMTAxMjcsIDY2NiwgOTAyMiwgNTUzMiwgNDM2NjcsIDU1MzMsIDc3OTQxLCA3ODUwNywgNjExOCwgMjIyLCA5NzksIDM4ODQsIAotICAgIDAsIDc0MTUxLCA5MjY1MiwgNjUwMiwgMCwgMTI3MTE4LCAxMjg2OTUsIDYzOTUxLCAxMjQ2NSwgMCwgMCwgMTI4NzgyLCAKLSAgICA2Mzk0NiwgMTcwNywgNjM5MjQsIDEyNDYxLCA2Mzk1MCwgNjM4OTcsIDYzOTQ4LCA2Mzk0NywgNjM5NDUsIDYwMzgsIAotICAgIDYzOTQzLCA2Mzk0MiwgNjQ2ODUsIDYzODk1LCA2NTgzOCwgMCwgNzc3NiwgMCwgMCwgMTI3NzczLCAxMjA0NDQsIDY5NzMwLCAKLSAgICA4MDEsIDQzMTY1LCAxNjkwLCA2MzkxOSwgNjM5MTgsIDYzOTE3LCAxMzI3NywgNDM2NTksIDEyOTUxLCAxMjA2MzgsIDk5MDYsIAotICAgIDIwNTQsIDIzMzQsIDc4NTE1LCA2MzkxNiwgNTQ4MywgNjM5MTQsIDY5NzM3LCA2MzkxMSwgNTQ4NCwgNjM5MDksIDYzOTA4LCAKLSAgICAyNTM5LCAwLCA0Mzk4MCwgNTQ4NSwgMCwgNDI2OTcsIDkwNjEsIDU1MzQsIDEwNjcyLCA0NTAyLCAwLCAyNTMsIDAsIAotICAgIDY4MjA4LCAwLCA5MjAzLCA3NDIzMSwgMCwgMTE1MzAsIDkyNTQyLCA2ODY2OCwgMCwgMTI4ODE2LCAwLCAxMDQ3NCwgCi0gICAgNDM0MjYsIDEzMjU3LCA0MjM1NCwgMCwgMCwgMCwgMTk1MDY1LCAwLCA4NDEzLCAwLCAwLCA1NjkzLCA3MjcyLCAwLCAKLSAgICAxMzIwOSwgNjQ0NzAsIDY1ODMxLCA3ODQ2MCwgMTk1MDYzLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMjgxMzMsIDEyNzc2NywgCi0gICAgNjY2MDgsIDMxMTEsIDQxODYzLCA4ODA0LCA0MjkxMywgOTIxODcsIDcyNzAsIDAsIDY2NjA2LCA2NjI4LCAxMDc2LCA3NDMzLCAKLSAgICAxNDM2LCA3Mzg0NCwgNTUyMjYsIDEyODM1MywgNjM5ODIsIDczOTMsIDEyODA3LCA0MzQxMywgNjM5MDYsIDE1OTgsIAotICAgIDYzOTA0LCAwLCAwLCA0MTcyOSwgNDQyMywgMTMwNywgMCwgMTA1MTUsIDQxNTg5LCAxMjg2OTgsIDAsIDYyMTgsIDAsIAotICAgIDE0MzAsIDAsIDAsIDEyMDYwNiwgNzg3NTQsIDU0MTMsIDc2MTksIDMyNTUsIDM0OTMsIDc0MDMyLCAxMTU0OSwgMTA3MzUsIAotICAgIDQxNzQzLCA3MzkzNywgNjgwMSwgMCwgNDUxOCwgMTA5OTAsIDY1MDczLCA1MTY3LCA0NDgxLCAzNzcxLCAwLCAyNzEwLCAwLCAKLSAgICA2OTI0MywgNDE3MjQsIDAsIDQzMDczLCA0MTY5MCwgMTI0NzksIDAsIDAsIDAsIDAsIDExOTY1OSwgMTYyOCwgMTI3MTQ5LCAKLSAgICAwLCAwLCA2NTI2MiwgNjMzMywgMTA3ODMsIDQyMzE1LCAwLCA2Mzg1NSwgMTIwNjgzLCAwLCAwLCA1MzM5LCA3NDMyMywgMCwgCi0gICAgMTMwMDQsIDAsIDQ0NTcsIDAsIDAsIDAsIDAsIDU2ODQsIDg2NzgsIDEwOTE0LCAwLCA1Njg5LCA2NTgwNywgMCwgNjg0NjQsIAotICAgIDEyNjMzLCAxMjg3MCwgNjk3MDUsIDY1MTgzLCA1Njg4LCAxMTkyNiwgNjAzMywgNjMxMCwgNTY4NiwgMCwgNzQyNTEsIDAsIAotICAgIDEyMDY0NywgMCwgNTAsIDEwNTU4LCA5ODcxLCAwLCA0MzY1NSwgMCwgMCwgMCwgNjY0NjgsIDAsIDEzMjU5LCA0NDQ4LCAwLCAKLSAgICAwLCAwLCAwLCA2Nzg1MywgMCwgMTA2NDAsIDExNTM5LCAxMTUxLCAwLCA5MTc2MDcsIDEyNzU0NCwgMTI3MDc5LCAxOTUwNTAsIAotICAgIDEyNzg1MiwgMCwgMCwgMCwgMTI1MDEsIDY0NjA0LCAwLCAxMTUyNywgMTE4ODcwLCA4ODEyLCAwLCAxMTUzOCwgODY3MywgCi0gICAgMTI2NTAsIDExMDIwLCAwLCA2NjQ2NywgMjEwNSwgODA4NywgNzgxNjMsIDY5NjMyLCA5ODk0LCAwLCAwLCAwLCA0NjM2LCAKLSAgICA1NTI2MiwgNzg1MTMsIDQ1MTUsIDIzODIsIDAsIDEyNzA1NSwgMCwgMTIwNDk1LCAwLCAxMjgyODQsIDEyMjc3LCAxOTQ2MjcsIAotICAgIDExOTk1LCA5MjU1MywgMCwgMTIxNTgsIDAsIDg3NDEsIDEwMTk3LCAwLCA5MjQyNiwgMCwgNjUzMSwgMCwgMTI3ODQ2LCAKLSAgICA0NzMsIDQzNDE1LCAwLCAwLCAxODczLCAxMDg3LCAwLCAwLCAwLCA3ODUyNywgNjY0MzksIDQzMjE4LCAwLCAxOTQ3MTYsIAotICAgIDcyMzcsIDEyNTA0LCA3NDI4MiwgMCwgMCwgMCwgOTQ4OSwgMCwgMCwgNDM4NCwgNzQyMjAsIDE5NTA1NSwgMjA1OCwgCi0gICAgMTI4ODYzLCAxMzI5NSwgNDMxOTEsIDEyODAzMCwgMCwgMTE1NCwgMzg1NywgMTIwNSwgMCwgMCwgMTMxMDAsIDEyOTU4LCAKLSAgICAxMjA3MDYsIDc0MTY4LCAwLCAwLCA0NDIxLCAxMDU5MiwgMCwgNDk1LCAwLCA0MTcxMiwgNzk4MywgMCwgMTIwNzc5LCAwLCAKLSAgICA2MzQ3LCAwLCA3NjU0LCA0MTcxMCwgNDE5NiwgMCwgNDM3LCA0MTcwOSwgNzM3NzIsIDAsIDAsIDk0NjUsIDEzMjkwLCAKLSAgICAxMTkxODAsIDQ5OTcsIDY0MzA2LCAwLCAwLCA0OTk5LCAxOTQ2NDIsIDAsIDAsIDQ3MTEsIDEyMDc2OSwgMCwgMjczOSwgMCwgCi0gICAgODA0NCwgNzQ4MzQsIDE5NDY0MywgNDE3ODksIDEyODE0MiwgMTA4MDksIDAsIDAsIDAsIDE3NzksIDY2MDAsIDY2MDEsIAotICAgIDQxNTQzLCA1MzI1LCA2NDIsIDY0MTg3LCAxMzA1OCwgMTIwNDQ5LCAxMjg3NSwgMCwgOTIxODYsIDEzMjI5LCAwLCAxMDU3NSwgCi0gICAgNDMzOTksIDAsIDAsIDQxNzkxLCAxMTA0LCAwLCAwLCAxMDY1NSwgMCwgMCwgMCwgMCwgMTA4MiwgMTk1MDQ5LCA4NDI4LCAKLSAgICA2NTY5LCAwLCAwLCAwLCAwLCA2NzgzLCAwLCAxMjk5MywgODA0OSwgNDE1NDgsIDQ0MDIxLCA2NDU4LCAwLCAxMjg4ODIsIAotICAgIDQ3NjEsIDYzODI4LCA0NzY2LCA2NDYyMywgMTI3MywgNDM0MDcsIDAsIDExODg3NiwgMTk1MDQ1LCA2OTEyLCAxMzEzLCAKLSAgICA2MzIyLCAxMDQ4MywgMCwgNDE1NDUsIDAsIDkyNDQ5LCAwLCAwLCAwLCAwLCA3ODYyNCwgMzQ4NCwgNzQzMzcsIDAsIDAsIAotICAgIDg1MDMsIDUxMjIsIDQxNTI3LCAwLCA2NjMyMCwgMCwgMCwgMCwgMCwgNDE1MzcsIDY5NjgzLCA4MzAzLCA4MjgyLCAxMTgxNywgCisgICAgNjM4MzgsIDYzODM3LCA5ODM1ODgsIDk4MzUzOSwgNjM4MzMsIDYwNDIsIDY2MzYwLCA4MDgzLCAwLCAwLCA2MzgyMSwgCisgICAgNjM4MjAsIDYzODE5LCA2MzgxOCwgOTgzNjM5LCA1MjI3LCA5MDQ3LCA2MzgyMiwgMTI3MTYyLCA2MDkxLCAwLCAxMDY5MSwgCisgICAgNTYwLCA1NjQzLCA4MjI2LCAxMTk1NzgsIDYzODEyLCA2MzgxMSwgNjM4MTAsIDYzODA5LCA1NTQyLCA2MzgxNSwgNjM4MTQsIAorICAgIDYzODEzLCA2MDQ3LCAxNTk3LCAxMjAxNDMsIDc4MCwgMjA2LCA3NzkyNSwgNDkzNiwgNjUxNDcsIDgxNjgsIDYzOTMwLCAKKyAgICAyMDc2LCAxMDkzLCA5ODgyLCA2MzkzNCwgMjA4MiwgNjM5MzIsIDEyODE1MCwgNjM5MjksIDM1NDYsIDE2MDUsIDc3OTM0LCAKKyAgICA5ODA2LCA0MzQ3MiwgNzc5MzMsIDg0MDAsIDExMzQzLCAyMDg2LCAwLCA2MzkyNiwgMjk4NCwgNTk2OCwgOTI4NywgMCwgCisgICAgNDYxOCwgNDIyMDksIDQzNDMxLCAxMzE2OSwgNTI5MCwgMjA4OSwgMTY5NSwgMTA3NDMsIDEwODgsIDYzODI1LCA3MjY4LCAKKyAgICAxMDg0LCAxMDg1LCA2MzgyOSwgMTA4MywgMTAxMzEsIDcyODMsIDAsIDYzOTcwLCAxMjgzNTgsIDEwOTIsIDQ3NTQsIDcyNzMsIAorICAgIDUyNTIsIDQ0MDE2LCA0MzYyNywgMTI3OTIxLCAwLCA3NDA4LCAxMTgwOSwgMCwgMCwgMCwgMjk2NSwgNzI1OCwgODgwOCwgMCwgCisgICAgMTA4OSwgNDE4NywgNjM5MzcsIDQyMTE5LCA0MjEyMCwgMCwgOTQwLCA1Nzg3LCAxMDA5OSwgNjM5MzgsIDAsIDc0NDk0LCAKKyAgICAxMjQ2MywgMjk5NCwgMCwgMTE4ODI3LCAwLCA5NjY0LCA3NzkzOSwgNzc5NDAsIDY3ODkyLCA3NzkzOCwgNzQzNDMsIDAsIDAsIAorICAgIDY2MCwgMTAxMjcsIDY2NiwgOTAyMiwgNTUzMiwgNDM2NjcsIDU1MzMsIDc3OTQxLCA3ODUwNywgNjExOCwgMjIyLCA5NzksIAorICAgIDM4ODQsIDAsIDc0MTUxLCA5MjY1MiwgNjUwMiwgMCwgMTI3MTE4LCAxMjg2OTUsIDYzOTUxLCAxMjQ2NSwgMCwgMCwgCisgICAgMTI4NzgyLCA2Mzk0NiwgMTcwNywgNjM5MjQsIDEyNDYxLCA2Mzk1MCwgNjM4OTcsIDYzOTQ4LCA2Mzk0NywgNjM5NDUsIAorICAgIDYwMzgsIDYzOTQzLCA2Mzk0MiwgNjQ2ODUsIDYzODk1LCA2NTgzOCwgMCwgNzc3NiwgMCwgMCwgMTI3NzczLCAxMjA0NDQsIAorICAgIDY5NzMwLCA4MDEsIDQzMTY1LCAxNjkwLCA2MzkxOSwgNjM5MTgsIDYzOTE3LCAxMzI3NywgNDM2NTksIDEyOTUxLCAKKyAgICAxMjA2MzgsIDk5MDYsIDIwNTQsIDIzMzQsIDc4NTE1LCA2MzkxNiwgNTQ4MywgNjM5MTQsIDY5NzM3LCA2MzkxMSwgNTQ4NCwgCisgICAgNjM5MDksIDYzOTA4LCAyNTM5LCAwLCA0Mzk4MCwgNTQ4NSwgMCwgNDI2OTcsIDkwNjEsIDU1MzQsIDEwNjcyLCA0NTAyLCAwLCAKKyAgICAyNTMsIDAsIDY4MjA4LCAwLCA5MjAzLCA3NDIzMSwgMCwgMTE1MzAsIDkyNTQyLCA2ODY2OCwgMCwgMTI4ODE2LCAwLCAKKyAgICAxMDQ3NCwgNDM0MjYsIDEzMjU3LCA0MjM1NCwgMCwgOTgzNDMzLCAwLCAxOTUwNjUsIDAsIDg0MTMsIDk4MzU1MSwgMCwgCisgICAgNTY5MywgNzI3MiwgMCwgMTMyMDksIDY0NDcwLCA2NTgzMSwgNzg0NjAsIDE5NTA2MywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMTI4MTMzLCAxMjc3NjcsIDY2NjA4LCAzMTExLCA0MTg2MywgODgwNCwgNDI5MTMsIDkyMTg3LCA3MjcwLCAwLCA2NjYwNiwgCisgICAgNjYyOCwgMTA3NiwgNzQzMywgMTQzNiwgNzM4NDQsIDU1MjI2LCAxMjgzNTMsIDYzOTgyLCA3MzkzLCAxMjgwNywgNDM0MTMsIAorICAgIDYzOTA2LCAxNTk4LCA2MzkwNCwgMCwgMCwgNDE3MjksIDQ0MjMsIDEzMDcsIDAsIDEwNTE1LCA0MTU4OSwgMTI4Njk4LCAwLCAKKyAgICA2MjE4LCAwLCAxNDMwLCAwLCAwLCAxMjA2MDYsIDc4NzU0LCA1NDEzLCA3NjE5LCAzMjU1LCAzNDkzLCA3NDAzMiwgMTE1NDksIAorICAgIDEwNzM1LCA0MTc0MywgNzM5MzcsIDY4MDEsIDk4MzM2OCwgNDUxOCwgMTA5OTAsIDY1MDczLCA1MTY3LCA0NDgxLCAzNzcxLCAKKyAgICAwLCAyNzEwLCAwLCA2OTI0MywgNDE3MjQsIDAsIDQzMDczLCA0MTY5MCwgMTI0NzksIDk4MzM3MCwgMCwgMCwgOTgzNTUzLCAKKyAgICAxMTk2NTksIDE2MjgsIDEyNzE0OSwgMCwgOTgzNDY2LCA2NTI2MiwgNjMzMywgMTA3ODMsIDQyMzE1LCAwLCA2Mzg1NSwgCisgICAgMTIwNjgzLCAwLCAwLCA1MzM5LCA3NDMyMywgMCwgMTMwMDQsIDAsIDQ0NTcsIDAsIDAsIDAsIDAsIDU2ODQsIDg2NzgsIAorICAgIDEwOTE0LCAwLCA1Njg5LCA2NTgwNywgMCwgNjg0NjQsIDEyNjMzLCAxMjg3MCwgNjk3MDUsIDY1MTgzLCA1Njg4LCAxMTkyNiwgCisgICAgNjAzMywgNjMxMCwgNTY4NiwgMCwgNzQyNTEsIDAsIDEyMDY0NywgMCwgNTAsIDEwNTU4LCA5ODcxLCAwLCA0MzY1NSwgMCwgCisgICAgMCwgMCwgNjY0NjgsIDAsIDEzMjU5LCA0NDQ4LCAwLCA5ODM1ODAsIDAsIDAsIDY3ODUzLCAwLCAxMDY0MCwgMTE1MzksIAorICAgIDExNTEsIDAsIDkxNzYwNywgMTI3NTQ0LCAxMjcwNzksIDE5NTA1MCwgMTI3ODUyLCAwLCAwLCAwLCAxMjUwMSwgNjQ2MDQsIAorICAgIDAsIDExNTI3LCAxMTg4NzAsIDg4MTIsIDAsIDExNTM4LCA4NjczLCAxMjY1MCwgMTEwMjAsIDAsIDY2NDY3LCAyMTA1LCAKKyAgICA4MDg3LCA3ODE2MywgNjk2MzIsIDk4OTQsIDAsIDAsIDAsIDQ2MzYsIDU1MjYyLCA3ODUxMywgNDUxNSwgMjM4MiwgMCwgCisgICAgMTI3MDU1LCAwLCAxMjA0OTUsIDAsIDEyODI4NCwgMTIyNzcsIDE5NDYyNywgMTE5OTUsIDkyNTUzLCAwLCAxMjE1OCwgMCwgCisgICAgODc0MSwgMTAxOTcsIDAsIDkyNDI2LCAwLCA2NTMxLCAwLCAxMjc4NDYsIDQ3MywgNDM0MTUsIDAsIDk4MzM4NSwgMTg3MywgCisgICAgMTA4NywgMCwgMCwgMCwgNzg1MjcsIDY2NDM5LCA0MzIxOCwgOTgzNDM5LCAxOTQ3MTYsIDcyMzcsIDEyNTA0LCA3NDI4MiwgCisgICAgMCwgOTgzMzE1LCAwLCA5NDg5LCAwLCAwLCA0Mzg0LCA3NDIyMCwgMTk1MDU1LCAyMDU4LCAxMjg4NjMsIDEzMjk1LCAKKyAgICA0MzE5MSwgMTI4MDMwLCAwLCAxMTU0LCAzODU3LCAxMjA1LCAwLCAwLCAxMzEwMCwgMTI5NTgsIDEyMDcwNiwgNzQxNjgsIDAsIAorICAgIDAsIDQ0MjEsIDEwNTkyLCAwLCA0OTUsIDAsIDQxNzEyLCA3OTgzLCAwLCAxMjA3NzksIDAsIDYzNDcsIDAsIDc2NTQsIAorICAgIDQxNzEwLCA0MTk2LCAwLCA0MzcsIDQxNzA5LCA3Mzc3MiwgMCwgMCwgOTQ2NSwgMTMyOTAsIDExOTE4MCwgNDk5NywgCisgICAgNjQzMDYsIDAsIDAsIDQ5OTksIDE5NDY0MiwgMCwgMCwgNDcxMSwgMTIwNzY5LCAwLCAyNzM5LCAwLCA4MDQ0LCA3NDgzNCwgCisgICAgMTk0NjQzLCA0MTc4OSwgMTI4MTQyLCAxMDgwOSwgMCwgMCwgMCwgMTc3OSwgNjYwMCwgNjYwMSwgNDE1NDMsIDUzMjUsIAorICAgIDY0MiwgNjQxODcsIDEzMDU4LCAxMjA0NDksIDEyODc1LCAwLCA5MjE4NiwgMTMyMjksIDAsIDEwNTc1LCA0MzM5OSwgMCwgMCwgCisgICAgNDE3OTEsIDExMDQsIDAsIDAsIDEwNjU1LCAwLCAwLCAwLCAwLCAxMDgyLCAxOTUwNDksIDg0MjgsIDY1NjksIDAsIDAsIDAsIAorICAgIDAsIDY3ODMsIDAsIDEyOTkzLCA4MDQ5LCA0MTU0OCwgNDQwMjEsIDY0NTgsIDk4MzU0MiwgMTI4ODgyLCA0NzYxLCA2MzgyOCwgCisgICAgNDc2NiwgNjQ2MjMsIDEyNzMsIDQzNDA3LCAwLCAxMTg4NzYsIDE5NTA0NSwgNjkxMiwgMTMxMywgNjMyMiwgMTA0ODMsIAorICAgIDk4MzM0NywgNDE1NDUsIDAsIDkyNDQ5LCAwLCAwLCAwLCAwLCA3ODYyNCwgMzQ4NCwgNzQzMzcsIDAsIDAsIDg1MDMsIAorICAgIDUxMjIsIDQxNTI3LCAwLCA2NjMyMCwgOTgzNTQ2LCAwLCAwLCAwLCA0MTUzNywgNjk2ODMsIDgzMDMsIDgyODIsIDExODE3LCAKICAgICA3Mzg1NywgMTAwMDMsIDczODU5LCA2NTkwNCwgMTk0NjYzLCAxNjg2LCAwLCA3ODQwNiwgMTE0NjcsIDM2NjQsIDY1OTIxLCAKICAgICA2NDI5OSwgMTk0NjY0LCAwLCAwLCA0MzI0LCAxMjYsIDQyMjQ2LCAxMTkxNTIsIDAsIDc0Mzc4LCA2NTkyNiwgNzc0NCwgCiAgICAgMTk0NjM2LCA3NDI3NywgNzQzMDIsIDc4MDUyLCA0MzgxNywgNjk2NiwgNDM4MjIsIDgxMzYsIDAsIDY1NjAwLCAxNjMzLCAwLCAKQEAgLTE3NjAyLDU0ICsxNzgzNCw1NCBAQAogICAgIDg2NCwgMCwgMTE4OTI2LCA4OTcyLCAwLCA3ODQ5LCAxMjAwOTIsIDkyNTMzLCAxMzI0MCwgMTk1MDY4LCA1MTkyLCA0MzM4LCAKICAgICAwLCAxMDk0OCwgOTE3NjAxLCAxMzE5OSwgOTI1NzUsIDEyMzYsIDEzMjA4LCAxMzI2MSwgMTMxODksIDEzMTg4LCAxMjAxNjQsIAogICAgIDAsIDc0NDAsIDAsIDEyMDE1MywgOTU1MywgMTU5MCwgNjM3NzcsIDYzNzc2LCAxMzE3OCwgNjM3ODIsIDYzNzgxLCA2Mzc4MCwgCi0gICAgNjM3NzksIDE1ODMsIDAsIDEzMjYwLCA0NTUwLCAwLCA2NDIwNSwgMCwgMCwgNDE1MjIsIDAsIDkyMTY4LCAwLCA5MTc4NTgsIAotICAgIDExMzU0LCAwLCAwLCA0Mjc5NSwgMCwgMTE5MTk1LCAxMTM5NCwgMTk0NjQ2LCAxMzIzNiwgMTMyNzIsIDEzMTk0LCAxMzM0LCAKLSAgICAwLCA0NDc5LCAxMTc4LCA2NTU4NiwgMTIwNjYzLCA2NjY4MSwgMTE5MTkzLCA0NjAxLCAwLCAwLCAwLCAwLCAwLCAxOTQ2NTgsIAotICAgIDAsIDY4MDksIDYzNzg2LCA2MDMxLCAwLCA2Mzc5MSwgNjM3OTAsIDExNDUsIDYzNzg4LCA3OTEwLCA2Mzc4NSwgNDMxNTMsIAotICAgIDc1NCwgMTAxOTIsIDEzMTA1LCA4MTgzLCAxMjA3NDEsIDIwMzcsIDAsIDAsIDEwNzQ3LCAxMjUsIDAsIDY0ODkwLCAwLCAwLCAKLSAgICAwLCA0MTcxOSwgNjM3NTgsIDM1MjMsIDEwNzQsIDEzMjU4LCA5NTM2LCA3NDA3NywgMCwgNDQyNywgNzQyNDIsIDYzNzU3LCAKLSAgICA0MzE0NSwgMTIyMTcsIDYzNzU0LCA0MTUzMiwgMTM0OSwgNjM3NTAsIDYzNzQ5LCAwLCAwLCAwLCA2Mzc1MywgNjM4MDIsIAotICAgIDQxMDg0LCAxMjA2MjIsIDY4MTMzLCA0MTkzMCwgNjM4MDUsIDYzODA0LCA0MzYzMiwgNjM4MDEsIDQxMDgyLCA4MTQwLCAKLSAgICA2Mzc5OCwgNjI2MCwgMCwgMCwgMTE5MjI1LCA2Mzc5MywgMTE5ODgsIDM4OTgsIDEyODI0MSwgMTAyMDEsIDEyMjM4LCAKLSAgICA2Mzc5NSwgNDIxOTQsIDEwMzY3LCAxMjUyMSwgMTA0MzEsIDQyMTE0LCA0MTkzMiwgMTA2OCwgMCwgMTI1MjMsIDEyOTQ1LCAKLSAgICAwLCA0MjIwMywgNzk1MCwgMTA4MDQsIDYzNzcxLCA0Mjc4NywgNDM4NiwgMTIyMjQsIDY5NzMsIDI3OTMsIDEyNDc1LCAwLCAKLSAgICAwLCA2Mzc2OSwgOTUzMCwgMCwgMTIyMzIsIDEzMTM1LCA4NTk2LCA1NjgxLCA2Mzc2MiwgNDU5NSwgNjM3NjAsIDc5MiwgMCwgCi0gICAgNjQ4MDMsIDAsIDg3NDIsIDAsIDExMDUzLCAxMjg3OTYsIDYzNzQ0LCAxMjgxMDcsIDAsIDc1ODgsIDYzNzQ4LCAxNjkzLCAKLSAgICA2Mzc0NiwgNDMyMDQsIDUwNTUsIDY4NDI2LCA5MTc4NTMsIDEwOTAsIDEyMDY3OSwgMTI4MzU2LCAxMTY2NSwgNzQxMzMsIAotICAgIDQ1NTgsIDY1Njg1LCA5NTIzLCAwLCAwLCA3ODY4MSwgMTE1MTMsIDAsIDYxNTcsIDYzNzc1LCA2Mzc3NCwgNjM3NzMsIAotICAgIDEzMTkxLCAxMjE3MCwgMzUwMCwgMzEzOSwgMCwgMzE3MCwgMTI0ODUsIDAsIDEwODcyLCA3ODI3MSwgMTMwMDYsIDY0NDMzLCAKLSAgICAwLCAwLCA5NDEsIDAsIDAsIDAsIDY1NTQxLCAxMTA2MywgMCwgODIyOCwgMCwgNDIwNjUsIDAsIDAsIDAsIDAsIDkyNDU1LCAKLSAgICA3Mzg2LCAwLCA2NDQ0NCwgMCwgMTE5ODYzLCA0MzYwMywgMCwgNjUzOTcsIDI4OCwgMCwgMCwgMCwgMTAwMjUsIDkxNzkxNiwgCi0gICAgMjkxOCwgMCwgNjUzMDAsIDExOTg3MSwgOTg4MywgNjQ3MjYsIDI3OTAsIDY1Mzk1LCAzNzkzLCAwLCAxMjc4MjksIDY1MzkzLCAKLSAgICAwLCA3NDEzOCwgMCwgMCwgMCwgNzQxMzksIDkyNzEyLCA2NTM5NCwgMTE1NDgsIDUyNzAsIDAsIDY1Mzk2LCAwLCA2NTgxMywgCi0gICAgMTMyNTYsIDEyODIsIDEyMDc3MSwgMCwgMCwgMTA4ODgsIDAsIDY1MjQyLCAwLCAzMzMwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA3NDI1OSwgMzMwNCwgNDI3NTMsIDAsIDAsIDAsIDE2MjcsIDAsIDAsIDAsIDUzNzEsIDEzMTE2LCAwLCAxODI2LCAxMTg3OTQsIAotICAgIDAsIDQzMDk0LCAwLCA0MzY1MCwgMCwgMCwgOTAzNSwgMCwgMCwgMTI4MDA1LCAwLCA5MjIwNywgNjgxMjUsIDAsIDE2NCwgMCwgCi0gICAgMCwgMCwgNjk1OCwgMCwgNDMxMTYsIDAsIDAsIDEzMjQ1LCAwLCAwLCAxMjczNzYsIDAsIDczODkzLCAxMjc3NTYsIDEyNjY2LCAKLSAgICAxMzE3NSwgMTMyMDcsIDEyMDQxNCwgNjYwMTQsIDEyMDQyOCwgNzQ0NywgNTkyOSwgMCwgNjU1MDksIDAsIDc0NDksIAotICAgIDExMzA2LCAwLCA3MzkyMCwgMzE4MCwgMCwgNjM4MDgsIDkwNTQsIDk3MSwgMTMwNjIsIDAsIDAsIDY1MTk1LCAxMDE2NCwgCi0gICAgOTIyNTIsIDc0NDI4LCAwLCA3ODE0NiwgOTI2MTEsIDAsIDAsIDAsIDEwMDQ1LCAxMjg4MiwgMTMyNzUsIDEyODE2MSwgCi0gICAgMTEwNTcsIDAsIDEzMjc2LCAwLCA0MTUyNSwgNzgxNTAsIDcyNzEsIDExNDQ0LCAwLCAwLCAwLCAxMjIyOSwgNDE1MjMsIDAsIAotICAgIDQzNDExLCA3Mzc1MSwgMCwgNjQ4MTMsIDAsIDAsIDEwNDc2LCAzODU4LCAwLCAzOTMyLCA2NDk1OCwgMCwgMCwgNzM5ODksIAotICAgIDY4MTkyLCAwLCAwLCAzNjksIDAsIDQxNzg0LCAwLCA2NDE2MywgMCwgMCwgMCwgNjU0NzQsIDQ3OTYsIDEyMjkyLCAwLCAKLSAgICA2NTQ3OSwgMCwgNDE3ODEsIDEwNDg2LCA0MTQ4MCwgNDMwMDIsIDk4OTksIDAsIDAsIDQwNCwgMTI4MjEsIDM3NDEsIDAsIAotICAgIDU3ODgsIDgwOTIsIDY4MjEyLCA0MTIyMiwgMTgzMSwgNjYwMjAsIDM5ODIsIDAsIDQzODgsIDAsIDc0NiwgMTIwNzg0LCAwLCAKLSAgICAwLCAxMjAxOCwgNjUyOTQsIDAsIDAsIDAsIDAsIDQ0MjIsIDQ3MDgsIDM3OTksIDc0MjkyLCAxMTkzNTcsIDAsIDc0NDMwLCAKLSAgICAwLCAxMTcwMCwgNDM3NCwgMCwgMTI4MTc5LCAxMzY0LCAwLCA4MDM4LCAwLCA5MTc1OTcsIDEyODY4LCA2OTgxNCwgMCwgCi0gICAgNjczNSwgNzM5NzksIDEzMTc0LCA3Mzk2OCwgMTMyMjUsIDAsIDY5ODA4LCA2NTgzNSwgMCwgMjM2NSwgNzg0MSwgMCwgCi0gICAgNDI4NTUsIDExODg1NiwgNDI4NjYsIDAsIDAsIDAsIDY2NDM4LCA0MTc4NSwgMTI2MTcsIDY0MTcyLCAxMzE3MywgNDM3MiwgCi0gICAgMTE5MzU0LCAwLCAwLCAwLCAwLCA5MjQwMiwgMTI4MDYyLCAxMjk2NSwgMzg0LCA2NDUxMiwgMTA0MDQsIDEwMzQwLCAKLSAgICAxMTkzNTIsIDE1NTYsIDUyNzQsIDEzMjEwLCAxMjAxMjUsIDEwMDE3LCA5NzMzLCA0MTc4NywgMCwgMTI2OTk0LCA0MTM3MywgCi0gICAgNzgwMzksIDEyMzAzLCAwLCAxMzIzMiwgMTMyMzMsIDM0OSwgNDg2MywgNDEzNzEsIDExNjU2LCAwLCAxMjA3MDMsIAotICAgIDExOTg4MywgMTI4NjEsIDQzOTgsIDg1NDMsIDY1NjE4LCAxMjgwMTgsIDEwOTYsIDAsIDAsIDQyNjg4LCAxMjQ0MSwgCi0gICAgMTIzNTUsIDExOTM0OCwgMTE5MzQ3LCA0MzE4LCAxMDQ1MiwgMCwgODAzMiwgMTMyNDMsIDEzMjM3LCAxMjcxOSwgMCwgCi0gICAgMTE5MTAxLCAwLCA2NDg4NCwgMTE5ODcyLCAxMTkzNDUsIDg1OTcsIDAsIDAsIDk4NjQsIDAsIDEyMDc4NSwgMTE5ODc0LCAwLCAKLSAgICAxMzE5NSwgNDE0NTIsIDY0OTYxLCA3NzIyLCAwLCAxMDQ1OSwgMTE5ODc4LCAwLCAxMTk4NzksIDY2NTkwLCAxMjgxMjMsIAorICAgIDYzNzc5LCAxNTgzLCAwLCAxMzI2MCwgNDU1MCwgMCwgNjQyMDUsIDAsIDAsIDQxNTIyLCA5ODM2NTAsIDkyMTY4LCAKKyAgICA5ODM1MDcsIDkxNzg1OCwgMTEzNTQsIDAsIDAsIDQyNzk1LCAwLCAxMTkxOTUsIDExMzk0LCAxOTQ2NDYsIDEzMjM2LCAKKyAgICAxMzI3MiwgMTMxOTQsIDEzMzQsIDAsIDQ0NzksIDExNzgsIDY1NTg2LCAxMjA2NjMsIDY2NjgxLCAxMTkxOTMsIDQ2MDEsIDAsIAorICAgIDAsIDk4MzUwMCwgMCwgMCwgMTk0NjU4LCAwLCA2ODA5LCA2Mzc4NiwgNjAzMSwgMCwgNjM3OTEsIDYzNzkwLCAxMTQ1LCAKKyAgICA2Mzc4OCwgNzkxMCwgNjM3ODUsIDQzMTUzLCA3NTQsIDEwMTkyLCAxMzEwNSwgODE4MywgMTIwNzQxLCAyMDM3LCAwLCAwLCAKKyAgICAxMDc0NywgMTI1LCAwLCA2NDg5MCwgMCwgMCwgMCwgNDE3MTksIDYzNzU4LCAzNTIzLCAxMDc0LCAxMzI1OCwgOTUzNiwgCisgICAgNzQwNzcsIDAsIDQ0MjcsIDc0MjQyLCA2Mzc1NywgNDMxNDUsIDEyMjE3LCA2Mzc1NCwgNDE1MzIsIDEzNDksIDYzNzUwLCAKKyAgICA2Mzc0OSwgMCwgMCwgMCwgNjM3NTMsIDYzODAyLCA0MTA4NCwgMTIwNjIyLCA2ODEzMywgNDE5MzAsIDYzODA1LCA2MzgwNCwgCisgICAgNDM2MzIsIDYzODAxLCA0MTA4MiwgODE0MCwgNjM3OTgsIDYyNjAsIDAsIDAsIDExOTIyNSwgNjM3OTMsIDExOTg4LCAzODk4LCAKKyAgICAxMjgyNDEsIDEwMjAxLCAxMjIzOCwgNjM3OTUsIDQyMTk0LCAxMDM2NywgMTI1MjEsIDEwNDMxLCA0MjExNCwgNDE5MzIsIAorICAgIDEwNjgsIDAsIDEyNTIzLCAxMjk0NSwgMCwgNDIyMDMsIDc5NTAsIDEwODA0LCA2Mzc3MSwgNDI3ODcsIDQzODYsIDEyMjI0LCAKKyAgICA2OTczLCAyNzkzLCAxMjQ3NSwgMCwgMCwgNjM3NjksIDk1MzAsIDAsIDEyMjMyLCAxMzEzNSwgODU5NiwgNTY4MSwgNjM3NjIsIAorICAgIDQ1OTUsIDYzNzYwLCA3OTIsIDAsIDY0ODAzLCAwLCA4NzQyLCAwLCAxMTA1MywgMTI4Nzk2LCA2Mzc0NCwgMTI4MTA3LCAwLCAKKyAgICA3NTg4LCA2Mzc0OCwgMTY5MywgNjM3NDYsIDQzMjA0LCA1MDU1LCA2ODQyNiwgOTE3ODUzLCAxMDkwLCAxMjA2NzksIAorICAgIDEyODM1NiwgMTE2NjUsIDc0MTMzLCA0NTU4LCA2NTY4NSwgOTUyMywgMCwgMCwgNzg2ODEsIDExNTEzLCAwLCA2MTU3LCAKKyAgICA2Mzc3NSwgNjM3NzQsIDYzNzczLCAxMzE5MSwgMTIxNzAsIDM1MDAsIDMxMzksIDAsIDMxNzAsIDEyNDg1LCAwLCAxMDg3MiwgCisgICAgNzgyNzEsIDEzMDA2LCA2NDQzMywgMCwgMCwgOTQxLCAwLCAwLCAwLCA2NTU0MSwgMTEwNjMsIDAsIDgyMjgsIDAsIDQyMDY1LCAKKyAgICAwLCAwLCAwLCAwLCA5MjQ1NSwgNzM4NiwgMCwgNjQ0NDQsIDAsIDExOTg2MywgNDM2MDMsIDAsIDY1Mzk3LCAyODgsIDAsIDAsIAorICAgIDAsIDEwMDI1LCA5MTc5MTYsIDI5MTgsIDAsIDY1MzAwLCAxMTk4NzEsIDk4ODMsIDY0NzI2LCAyNzkwLCA2NTM5NSwgMzc5MywgCisgICAgMCwgMTI3ODI5LCA2NTM5MywgMCwgNzQxMzgsIDAsIDAsIDAsIDc0MTM5LCA5MjcxMiwgNjUzOTQsIDExNTQ4LCA1MjcwLCAwLCAKKyAgICA2NTM5NiwgMCwgNjU4MTMsIDEzMjU2LCAxMjgyLCAxMjA3NzEsIDAsIDAsIDEwODg4LCAwLCA2NTI0MiwgMCwgMzMzMCwgMCwgCisgICAgMCwgOTgzNzA2LCAwLCAwLCA3NDI1OSwgMzMwNCwgNDI3NTMsIDAsIDAsIDAsIDE2MjcsIDAsIDAsIDAsIDUzNzEsIDEzMTE2LCAKKyAgICAwLCAxODI2LCAxMTg3OTQsIDAsIDQzMDk0LCAwLCA0MzY1MCwgMCwgMCwgOTAzNSwgMCwgMCwgMTI4MDA1LCAwLCA5MjIwNywgCisgICAgNjgxMjUsIDAsIDE2NCwgMCwgMCwgMCwgNjk1OCwgMCwgNDMxMTYsIDAsIDAsIDEzMjQ1LCAwLCAwLCAxMjczNzYsIDAsIAorICAgIDczODkzLCAxMjc3NTYsIDEyNjY2LCAxMzE3NSwgMTMyMDcsIDEyMDQxNCwgNjYwMTQsIDEyMDQyOCwgNzQ0NywgNTkyOSwgMCwgCisgICAgNjU1MDksIDAsIDc0NDksIDExMzA2LCAwLCA3MzkyMCwgMzE4MCwgMCwgNjM4MDgsIDkwNTQsIDk3MSwgMTMwNjIsIDAsIDAsIAorICAgIDY1MTk1LCAxMDE2NCwgOTIyNTIsIDc0NDI4LCAwLCA3ODE0NiwgOTI2MTEsIDAsIDAsIDAsIDEwMDQ1LCAxMjg4MiwgCisgICAgMTMyNzUsIDEyODE2MSwgMTEwNTcsIDAsIDEzMjc2LCAwLCA0MTUyNSwgNzgxNTAsIDcyNzEsIDExNDQ0LCAwLCAwLCAwLCAKKyAgICAxMjIyOSwgNDE1MjMsIDAsIDQzNDExLCA3Mzc1MSwgMCwgNjQ4MTMsIDAsIDAsIDEwNDc2LCAzODU4LCAwLCAzOTMyLCAKKyAgICA2NDk1OCwgMCwgMCwgNzM5ODksIDY4MTkyLCAwLCAwLCAzNjksIDAsIDQxNzg0LCAwLCA2NDE2MywgMCwgMCwgMCwgNjU0NzQsIAorICAgIDQ3OTYsIDEyMjkyLCAwLCA2NTQ3OSwgMCwgNDE3ODEsIDEwNDg2LCA0MTQ4MCwgNDMwMDIsIDk4OTksIDAsIDAsIDQwNCwgCisgICAgMTI4MjEsIDM3NDEsIDAsIDU3ODgsIDgwOTIsIDY4MjEyLCA0MTIyMiwgMTgzMSwgNjYwMjAsIDM5ODIsIDAsIDQzODgsIDAsIAorICAgIDc0NiwgMTIwNzg0LCAwLCAwLCAxMjAxOCwgNjUyOTQsIDAsIDAsIDAsIDAsIDQ0MjIsIDQ3MDgsIDM3OTksIDc0MjkyLCAKKyAgICAxMTkzNTcsIDAsIDc0NDMwLCAwLCAxMTcwMCwgNDM3NCwgMCwgMTI4MTc5LCAxMzY0LCAwLCA4MDM4LCAwLCA5MTc1OTcsIAorICAgIDEyODY4LCA2OTgxNCwgMCwgNjczNSwgNzM5NzksIDEzMTc0LCA3Mzk2OCwgMTMyMjUsIDAsIDY5ODA4LCA2NTgzNSwgMCwgCisgICAgMjM2NSwgNzg0MSwgMCwgNDI4NTUsIDExODg1NiwgNDI4NjYsIDAsIDAsIDAsIDY2NDM4LCA0MTc4NSwgMTI2MTcsIDY0MTcyLCAKKyAgICAxMzE3MywgNDM3MiwgMTE5MzU0LCAwLCA5ODMzMTIsIDAsIDAsIDkyNDAyLCAxMjgwNjIsIDEyOTY1LCAzODQsIDY0NTEyLCAKKyAgICAxMDQwNCwgMTAzNDAsIDExOTM1MiwgMTU1NiwgNTI3NCwgMTMyMTAsIDEyMDEyNSwgMTAwMTcsIDk3MzMsIDQxNzg3LCAwLCAKKyAgICAxMjY5OTQsIDQxMzczLCA3ODAzOSwgMTIzMDMsIDAsIDEzMjMyLCAxMzIzMywgMzQ5LCA0ODYzLCA0MTM3MSwgMTE2NTYsIDAsIAorICAgIDEyMDcwMywgMTE5ODgzLCAxMjg2MSwgNDM5OCwgODU0MywgNjU2MTgsIDEyODAxOCwgMTA5NiwgMCwgMCwgNDI2ODgsIAorICAgIDEyNDQxLCAxMjM1NSwgMTE5MzQ4LCAxMTkzNDcsIDQzMTgsIDEwNDUyLCAwLCA4MDMyLCAxMzI0MywgMTMyMzcsIDEyNzE5LCAKKyAgICAwLCAxMTkxMDEsIDAsIDY0ODg0LCAxMTk4NzIsIDExOTM0NSwgODU5NywgMCwgMCwgOTg2NCwgMCwgMTIwNzg1LCAxMTk4NzQsIAorICAgIDAsIDEzMTk1LCA0MTQ1MiwgNjQ5NjEsIDc3MjIsIDAsIDEwNDU5LCAxMTk4NzgsIDAsIDExOTg3OSwgNjY1OTAsIDEyODEyMywgCiAgICAgNDE1MzMsIDY2MzM3LCAwLCA5MjE4NCwgMCwgNDk2NSwgNDM0NDUsIDkxNzUzNiwgNzM4NDksIDAsIDQzNjM4LCA3ODUzNywgCiAgICAgMTI4Mjg3LCA2MjYxLCAxMTkzNDIsIDQzMTQ3LCA2NjU3MCwgMTk1NywgMTA0MjAsIDk4MiwgMjc1NiwgMTMyOTIsIDEzMjA2LCAKICAgICAxMjg4MjgsIDAsIDI5MjUsIDczODA5LCAxMzA1NiwgMTI3NTU5LCAxMzIxMiwgNDMyMzgsIDAsIDEzMTkwLCAxMzE4NywgCiAgICAgOTI1NDEsIDEzMTk4LCAxMTg3OTMsIDAsIDUyNDIsIDExOTE3OSwgNjQ0NzYsIDE2OTQsIDgyMTYsIDAsIDY3NzAsIDQzMzMxLCAKLSAgICAwLCA2NTYyMCwgMCwgNDM1NDQsIDAsIDAsIDQxNDQ0LCA2NTYyMSwgMTIwMzI1LCA5MTk3LCA1MjQ2LCAxMTkxMDYsIAorICAgIDAsIDY1NjIwLCA5ODM0NjMsIDQzNTQ0LCAwLCAwLCA0MTQ0NCwgNjU2MjEsIDEyMDMyNSwgOTE5NywgNTI0NiwgMTE5MTA2LCAKICAgICAxMzE4NSwgOTcwOSwgMTIwMzIzLCAxMjAzMjIsIDEyMzE0LCA2NTYxNiwgNTIzOCwgMTE5MzMzLCAwLCAxMTkzMzcsIDUyMzYsIAogICAgIDQwOTc5LCAwLCA3NDIwMSwgODI4NiwgMCwgMzkzNiwgMTE5MzMxLCAxMTY5OSwgNDEzNDcsIDEyNzI0OSwgMTMyMzUsIAogICAgIDg4NDIsIDQxMjQ4LCAwLCA0Mzc5LCAxMzIzOSwgMTI2OTIsIDc5NjksIDEyNzI2NiwgNzIxOSwgMTI3MjUwLCAwLCAKQEAgLTE3NjcxLDcgKzE3OTAzLDcgQEAKICAgICAxMjAwMzksIDQyNjgzLCAwLCAwLCA3MTE0LCAwLCAwLCA0MzE5MCwgNjU0NjMsIDE1NTQsIDAsIDQyNjExLCA0MjU2MywgMCwgCiAgICAgNTY1MSwgMjkyOSwgNjc5MiwgNDMyMDEsIDAsIDE5OTYzLCA1Njk4LCAwLCAwLCAwLCAwLCA1NjQ0LCAxMDI5MiwgNjU1NDYsIAogICAgIDY5NzI3LCA2ODE0MSwgODM3MiwgMCwgNjUxMTYsIDAsIDEyMDAyMiwgMTAxNzUsIDEwMzg4LCA0Mjc5OSwgMCwgNDEwMTMsIAotICAgIDEwNTY4LCAwLCAwLCAyODY5LCAwLCA0MTAxNSwgMTk0NjkyLCAyNzg1LCA0MzY2LCAwLCAxMDk1NCwgNDE4MDIsIDAsIAorICAgIDEwNTY4LCAwLCA5ODMzNjIsIDI4NjksIDAsIDQxMDE1LCAxOTQ2OTIsIDI3ODUsIDQzNjYsIDAsIDEwOTU0LCA0MTgwMiwgMCwgCiAgICAgNDI2MDgsIDc4NDY5LCA5ODg0LCA0NzU5LCAwLCAwLCAxMDI2NiwgNDEzNTksIDExNzAsIDQzMzY1LCA2OTgxMCwgNzM5MDgsIAogICAgIDE2MDksIDkwMiwgMCwgNjM5MzYsIDEyODg3NSwgMTE2NjEsIDgxMjIsIDU4MTgsIDAsIDAsIDM4NjEsIDk1NDAsIDExMDI4LCAKICAgICAyNTU0LCA1MTU4LCA1NzE0LCAxMjcwMTUsIDAsIDAsIDgwNywgNDMwNzksIDAsIDc4NDc1LCA5NzYsIDU1MTEsIDY0NTUzLCAKQEAgLTE3NjgwLDM3ICsxNzkxMiwzOCBAQAogICAgIDEyMDAxNiwgNzQyODMsIDExMDA1LCAwLCA2NjY1NiwgNjYwNDQsIDAsIDE5NDY5OCwgMCwgMCwgNDMzOTMsIDEwMDk0LCAwLCAKICAgICAxMTUyOSwgMTA4NTcsIDEyMDY0MywgNjY0MzYsIDY1NDYsIDkzLCA4MTAyLCAwLCA2ODQwNSwgMCwgMCwgODE3MSwgMCwgCiAgICAgMTE5MDk3LCAxMjcwNjQsIDkxNzU0MywgMzgzLCA3MTU0LCA0MTY1NiwgOTI2MzQsIDAsIDAsIDUxODcsIDAsIDEyNzI3NywgCi0gICAgMTEyODYsIDY4NjIwLCA2NDIxNywgMCwgNTIzMiwgMCwgNDEwMDksIDAsIDQxMDA1LCAwLCAwLCAwLCA4MjkyLCAxOTUwNzQsIAotICAgIDQ5ODAsIDg4NjAsIDczOTQ3LCAxMDAyOCwgNjUyOTEsIDcwNzYsIDEzMTgyLCAxOTQ3MDUsIDAsIDAsIDEwNjMxLCA2NjAzMSwgCi0gICAgNzk3MiwgMCwgNzg3ODUsIDAsIDc5MDAsIDAsIDExMzA5LCA3ODMxOSwgNDE5OCwgNDI3MjUsIDAsIDY3NjU2LCA5OTk1LCAwLCAKLSAgICA5MjU1MiwgMCwgMTI5MzEsIDAsIDQyNjg0LCA3NDI4NSwgMjA4OCwgMCwgNjQzNjYsIDY1MTU2LCA4ODE0LCA0MjIzOCwgCi0gICAgNzQ3NzEsIDAsIDAsIDEyODM2LCAwLCAwLCA3NDM0MiwgODU5MywgMCwgMCwgNjg0NDUsIDEzMjU1LCAwLCAwLCA3NDY0LCAwLCAKLSAgICA2NTg2NSwgMCwgMTk0NjUwLCAxMjcxNDQsIDAsIDkzNDIsIDEyMDQ2NCwgMCwgNjQ1MTYsIDAsIDc4NzkyLCAxMDEyOSwgCi0gICAgNDEwMDcsIDc0Mzc1LCAwLCA0MDk5NSwgMTIyMDksIDQxMDEyLCAxMTkxMzYsIDAsIDAsIDY5NzI0LCA0MDk5MiwgOTIyNjQsIAotICAgIDEyNzE1MywgNjg2NTMsIDQzNTU4LCA1NTIyLCAwLCA2MSwgMCwgNzQxMDUsIDM2MzMsIDAsIDY1MTYyLCA0MTIzNCwgCi0gICAgMTIwODksIDc4MjgxLCA5NzcxLCAwLCAxMzI1MSwgMTI4NzAxLCAwLCA2MjYyLCAyNzg0LCA0Mjc0MywgMCwgODEyNiwgCi0gICAgNjY0ODMsIDAsIDAsIDQ0MSwgNDI2MjEsIDAsIDAsIDQxMDAyLCA0MDk5OSwgMTE5NjIzLCA0MzI2NiwgNzEwOCwgMTk0Nzc5LCAKLSAgICAxMDg5MCwgNzQ0ODEsIDY1ODM0LCA4MzI0LCAxMTkxMDMsIDY0NDE3LCA3NDgxNywgMTI3NDY1LCA2NDczNywgMCwgMCwgCi0gICAgODkzMCwgNjY2NzgsIDc0MjQ5LCAxMTkzLCAxMDA1NiwgMTgwMCwgMTMyNTMsIDEzMjUyLCA3ODI5LCAwLCAwLCA3NzQzLCAwLCAKLSAgICAwLCA3NzkwNCwgOTI2NDAsIDc3OTA1LCA5MDM0LCA2MDM5LCAwLCAxMDA3NSwgMCwgNDEwMTgsIDY1NjgzLCAxMDMzOCwgCi0gICAgNjY0NjksIDAsIDAsIDAsIDQyODE1LCAwLCA0MTk2NiwgMCwgMCwgMCwgMTE3OTIsIDQzMDY0LCA0MTAyNSwgOTExLCA3NTM5LCAKLSAgICAwLCAwLCAxMjAzMzksIDY1MTU5LCA2NDM5MCwgMCwgMCwgNTUyMCwgMTE2NjIsIDAsIDY1MzMwLCA0MjgxMiwgMCwgMCwgCi0gICAgMTIzMjYsIDAsIDAsIDQyODA4LCAxMjgzMzcsIDkzNDgsIDY0OTAxLCAwLCAwLCAwLCAwLCAwLCAwLCA5MTc1ODQsIDQzNzAyLCAKLSAgICAwLCA1ODU3LCA2NTM0MiwgOTI3MjcsIDExOTEyMCwgMTIwMDc5LCA4NjQ0LCAwLCAwLCAwLCA3NDI5NiwgNDE5MDksIDAsIAotICAgIDEyMDMzMiwgMjc5MSwgNjk2NjMsIDE4OTEsIDY5ODI0LCAwLCA0MTkwNywgNjY2NDcsIDExODkzOSwgODc2MSwgMTI5NDIsIAotICAgIDU3NDgsIDAsIDEwNzczLCAwLCAwLCA4Nzk2LCA3ODE0OSwgNjQxMiwgMjA2MSwgODUyMCwgMTMxNDYsIDEyNzE4NSwgCi0gICAgNjM5MzEsIDAsIDY1OTAyLCAyODgyLCAwLCAwLCAxMjg0MywgNDUyMCwgMTIwMzQ1LCA5MjQ1OSwgMCwgMCwgMCwgNzM4NjAsIAotICAgIDAsIDAsIDY0MzQ1LCAwLCA5MjAxLCAxMjgzMTQsIDE5NDk0MCwgMCwgMCwgNDM2NzksIDkxNzU4NSwgNjUxMTcsIDkyMjcwLCAKLSAgICAwLCAxMDQyNywgMCwgMzg0NCwgMTIwNjc1LCA5NzU1LCAxMTEwLCA2NjEyLCAxMjIyMiwgMCwgMTI4Nzg5LCAwLCAwLCA3ODMsIAotICAgIDE5NDkzNSwgMCwgMCwgMCwgMTk0NzIwLCA2NTA1NiwgMzYyMCwgMCwgNjgzNzgsIDQ1NTYsIDAsIDAsIDE5NDkzMywgCi0gICAgNzQyNTAsIDAsIDY3NjU3LCAxMDUxMCwgNDM4MiwgNjY0ODIsIDAsIDAsIDEyNzUyNywgOTE3NywgODkwMiwgMCwgOTgzOSwgCi0gICAgMCwgMTI4OTEsIDAsIDAsIDYzOTk5LCAyMDE2LCA0MTkxNywgOTc4OCwgNjM5MjgsIDAsIDE4NjIsIDY1ODAwLCA5MTU1LCAKLSAgICA2NjYyMywgOTc4NiwgNjUwODIsIDQxOTE5LCA4NTc5LCA0MTkxNCwgNzk4MSwgMCwgNjYwMTcsIDQ1MDgsIDY0ODgzLCAKLSAgICA5MjQ1NiwgOTI1MjIsIDEyNzgxNCwgMCwgNjQ1OTIsIDc0Mjc2LCAxMjAwODAsIDY3ODQsIDc4Nzg4LCA2ODE4MSwgMCwgMCwgCi0gICAgMCwgMTI3NTM0LCAxMjE0NywgOTAyNCwgNjYzNzgsIDY2NDcyLCAwLCA2NDI4OSwgNjUyODksIDc4MTUxLCA2NjY1OCwgCisgICAgMTEyODYsIDY4NjIwLCA2NDIxNywgMCwgNTIzMiwgMCwgNDEwMDksIDAsIDQxMDA1LCAwLCAwLCA5ODM1NjIsIDgyOTIsIAorICAgIDE5NTA3NCwgNDk4MCwgODg2MCwgNzM5NDcsIDEwMDI4LCA2NTI5MSwgNzA3NiwgMTMxODIsIDE5NDcwNSwgMCwgMCwgCisgICAgMTA2MzEsIDY2MDMxLCA3OTcyLCAwLCA3ODc4NSwgMCwgNzkwMCwgMCwgMTEzMDksIDc4MzE5LCA0MTk4LCA0MjcyNSwgMCwgCisgICAgNjc2NTYsIDk5OTUsIDAsIDkyNTUyLCAwLCAxMjkzMSwgMCwgNDI2ODQsIDc0Mjg1LCAyMDg4LCAwLCA2NDM2NiwgNjUxNTYsIAorICAgIDg4MTQsIDQyMjM4LCA3NDc3MSwgMCwgMCwgMTI4MzYsIDAsIDAsIDc0MzQyLCA4NTkzLCAwLCAwLCA2ODQ0NSwgMTMyNTUsIAorICAgIDAsIDAsIDc0NjQsIDAsIDY1ODY1LCAwLCAxOTQ2NTAsIDEyNzE0NCwgMCwgOTM0MiwgMTIwNDY0LCAwLCA2NDUxNiwgMCwgCisgICAgNzg3OTIsIDEwMTI5LCA0MTAwNywgNzQzNzUsIDAsIDQwOTk1LCAxMjIwOSwgNDEwMTIsIDExOTEzNiwgMCwgMCwgNjk3MjQsIAorICAgIDQwOTkyLCA5MjI2NCwgMTI3MTUzLCA2ODY1MywgNDM1NTgsIDU1MjIsIDAsIDYxLCAwLCA3NDEwNSwgMzYzMywgOTgzNjM1LCAKKyAgICA2NTE2MiwgNDEyMzQsIDEyMDg5LCA3ODI4MSwgOTc3MSwgOTgzNjQwLCAxMzI1MSwgMTI4NzAxLCAwLCA2MjYyLCAyNzg0LCAKKyAgICA0Mjc0MywgMCwgODEyNiwgNjY0ODMsIDAsIDAsIDQ0MSwgNDI2MjEsIDAsIDAsIDQxMDAyLCA0MDk5OSwgMTE5NjIzLCAKKyAgICA0MzI2NiwgNzEwOCwgMTk0Nzc5LCAxMDg5MCwgNzQ0ODEsIDY1ODM0LCA4MzI0LCAxMTkxMDMsIDY0NDE3LCA3NDgxNywgCisgICAgMTI3NDY1LCA2NDczNywgMCwgOTgzMzk0LCA4OTMwLCA2NjY3OCwgNzQyNDksIDExOTMsIDEwMDU2LCAxODAwLCAxMzI1MywgCisgICAgMTMyNTIsIDc4MjksIDAsIDAsIDc3NDMsIDAsIDAsIDc3OTA0LCA5MjY0MCwgNzc5MDUsIDkwMzQsIDYwMzksIDAsIDEwMDc1LCAKKyAgICAwLCA0MTAxOCwgNjU2ODMsIDEwMzM4LCA2NjQ2OSwgMCwgMCwgMCwgNDI4MTUsIDAsIDQxOTY2LCAwLCAwLCAwLCAxMTc5MiwgCisgICAgNDMwNjQsIDQxMDI1LCA5MTEsIDc1MzksIDAsIDAsIDEyMDMzOSwgNjUxNTksIDY0MzkwLCAwLCAwLCA1NTIwLCAxMTY2MiwgCisgICAgMCwgNjUzMzAsIDQyODEyLCAwLCAwLCAxMjMyNiwgOTgzNTkxLCAwLCA0MjgwOCwgMTI4MzM3LCA5MzQ4LCA2NDkwMSwgCisgICAgOTgzNTk2LCAwLCAwLCAwLCAwLCAwLCA5MTc1ODQsIDQzNzAyLCA5ODMzMjAsIDU4NTcsIDY1MzQyLCA5MjcyNywgMTE5MTIwLCAKKyAgICAxMjAwNzksIDg2NDQsIDAsIDAsIDAsIDc0Mjk2LCA0MTkwOSwgMCwgMTIwMzMyLCAyNzkxLCA2OTY2MywgMTg5MSwgNjk4MjQsIAorICAgIDAsIDQxOTA3LCA2NjY0NywgMTE4OTM5LCA4NzYxLCAxMjk0MiwgNTc0OCwgMCwgMTA3NzMsIDAsIDAsIDg3OTYsIDc4MTQ5LCAKKyAgICA2NDEyLCAyMDYxLCA4NTIwLCAxMzE0NiwgMTI3MTg1LCA2MzkzMSwgMCwgNjU5MDIsIDI4ODIsIDAsIDAsIDEyODQzLCAKKyAgICA0NTIwLCAxMjAzNDUsIDkyNDU5LCAwLCA5ODMzOTUsIDAsIDczODYwLCAwLCAwLCA2NDM0NSwgMCwgOTIwMSwgMTI4MzE0LCAKKyAgICAxOTQ5NDAsIDAsIDAsIDQzNjc5LCA5MTc1ODUsIDY1MTE3LCA5MjI3MCwgMCwgMTA0MjcsIDAsIDM4NDQsIDEyMDY3NSwgCisgICAgOTc1NSwgMTExMCwgNjYxMiwgMTIyMjIsIDAsIDEyODc4OSwgMCwgMCwgNzgzLCAxOTQ5MzUsIDAsIDAsIDk4MzUyNSwgCisgICAgMTk0NzIwLCA2NTA1NiwgMzYyMCwgMCwgNjgzNzgsIDQ1NTYsIDAsIDAsIDE5NDkzMywgNzQyNTAsIDAsIDY3NjU3LCAKKyAgICAxMDUxMCwgNDM4MiwgNjY0ODIsIDAsIDAsIDEyNzUyNywgOTE3NywgODkwMiwgMCwgOTgzOSwgMCwgMTI4OTEsIDk4MzQ5MCwgCisgICAgOTgzMzcxLCA2Mzk5OSwgMjAxNiwgNDE5MTcsIDk3ODgsIDYzOTI4LCAwLCAxODYyLCA2NTgwMCwgOTE1NSwgNjY2MjMsIAorICAgIDk3ODYsIDY1MDgyLCA0MTkxOSwgODU3OSwgNDE5MTQsIDc5ODEsIDAsIDY2MDE3LCA0NTA4LCA2NDg4MywgOTI0NTYsIAorICAgIDkyNTIyLCAxMjc4MTQsIDAsIDY0NTkyLCA3NDI3NiwgMTIwMDgwLCA2Nzg0LCA3ODc4OCwgNjgxODEsIDAsIDAsIDAsIAorICAgIDEyNzUzNCwgMTIxNDcsIDkwMjQsIDY2Mzc4LCA2NjQ3MiwgOTgzNjYxLCA2NDI4OSwgNjUyODksIDc4MTUxLCA2NjY1OCwgCiAgICAgMTk0OTI5LCA2NDUwOSwgNzgxNTIsIDAsIDAsIDExMDUxLCAwLCAwLCAxMTM1NSwgNjU4ODUsIDAsIDEyODMxMCwgNDEyMTQsIAogICAgIDAsIDEyMjk5LCAwLCA3NTAwLCA0NTA2LCA3NzczLCAwLCAwLCA5OTYzLCA2ODY0OSwgMCwgNDA0MCwgMTIwNTcwLCA2MTY3LCAKLSAgICAwLCA2MzkyMiwgNjU5NCwgMCwgMCwgMCwgMzYyNCwgNDMwMzYsIDAsIDYzODcsIDYzOTkwLCAxOTk0NywgNjM5ODgsIAorICAgIDAsIDYzOTIyLCA2NTk0LCA5ODM0NzUsIDAsIDAsIDM2MjQsIDQzMDM2LCAwLCA2Mzg3LCA2Mzk5MCwgMTk5NDcsIDYzOTg4LCAKICAgICA0MTk1NSwgMCwgNjM5OTMsIDEwNDQwLCA5NjExLCAwLCA2ODAzLCAwLCA3NzM4LCA2Mzk4NiwgMTE0NDYsIDYzOTg0LCAKICAgICA5MjY0MSwgMzQzNSwgNzgxNjQsIDQzODE0LCA0MzgxMCwgNzAyOSwgNjQyNTgsIDQxMjkyLCAxMTg4OTgsIDEyNzQ4LCAKICAgICA0Mjc0MiwgOTUxNywgMTE1MTgsIDAsIDc4NzkwLCAwLCAxOTQ3NzcsIDYzOTU2LCA0MjQ1OCwgNjM5NTQsIDYzOTUzLCAKQEAgLTE3NzI1LDEzMyArMTc5NTgsMTM1IEBACiAgICAgMTk2NiwgNDM2MjgsIDAsIDAsIDAsIDAsIDYzOTcxLCA0MzQ3LCA0NDE2LCA0MjA5OCwgMTEwMDksIDEwNjk0LCA2Mzk3MywgCiAgICAgNDAyLCAwLCAxMzE0NywgMCwgNDIxMDAsIDY0NjQ2LCAxMzIyOCwgMCwgNDE4NzUsIDM1MTUsIDc0MjUyLCAxMTgwNSwgMCwgCiAgICAgMTEzMDIsIDYyNTksIDQzMzk1LCAwLCAwLCAxOTQ2NzAsIDAsIDkyMzUxLCAwLCA3NDQyNSwgMTEyOTksIDE1NjEsIDAsIAotICAgIDkyMzU5LCA2NDk0MiwgMCwgMTk0NzMzLCAwLCAxOTQ3MzIsIDAsIDc0MzAxLCAwLCAxMTI4MCwgMCwgNjk3ODQsIDc0MDYwLCAKLSAgICAwLCAwLCAxMTk2NjQsIDUxNDUsIDEyNDg2LCA2NTAxOCwgNjY1MTYsIDU0MDksIDEyNzM3OSwgMTk0NjY5LCA3NDAyLCAKLSAgICA1Mzk5LCA5Njg1LCA3NDA4OSwgNzk1MiwgNTQwMSwgMCwgNjY2MTYsIDY4NDIxLCAwLCAwLCA1NDA1LCAxMjc4NzUsIAotICAgIDY0ODY2LCAwLCAxMTk1ODMsIDEyODM0NSwgNzg3ODQsIDc0MjQ4LCAxMTMzMCwgMTk0NzIzLCA2NDY5MCwgMzI1NCwgMCwgMCwgCi0gICAgMCwgNDIzOTAsIDQzNjc4LCAxOTQ3MjUsIDAsIDY1MDc3LCAwLCA2Mzg4LCAzMzU1LCA5NTA4LCA5ODY3LCA1NzIzLCAKLSAgICAxMTUyMCwgNTYxMSwgMCwgMzM3NywgMCwgMCwgMCwgMCwgNzgyMjgsIDAsIDAsIDQyNjkxLCA5MTc4ODYsIDEyNzE5OCwgCi0gICAgNzQ3NjcsIDAsIDEyNzA3NSwgMTM3OSwgMjQ2LCAwLCAwLCAzNzg4LCAwLCAxMTA0MSwgOTI1NDksIDY2MzA0LCAwLCAwLCAKLSAgICA4OTE3LCA0MjQwMywgMzAxLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDY1NiwgMCwgNjUyMTQsIDExOTI0MiwgNDI1NjcsIAotICAgIDkyMjE3LCAxMzE2MywgMCwgMTIwODMxLCA3NDU5NywgMzE4MiwgMCwgMCwgMCwgNjUwMzQsIDY1ODg5LCA0MjE2OSwgNDc1NSwgCi0gICAgNzQyNDQsIDAsIDExNDQzLCAwLCA2NjMxOSwgNzQ1OTgsIDYwOCwgNjAwLCAwLCAxMjE5LCAzOTM0LCA2NDIwNiwgMTE0ODMsIAotICAgIDc0NTEwLCAwLCA3NDQ4NSwgNDI0NDIsIDY1NDcwLCAwLCA2NDIwMiwgMTMxNjAsIDc3NTksIDQyNDgyLCA0ODUsIDEyODAwNiwgCi0gICAgMCwgOTgyOCwgMCwgMCwgNDIyODAsIDAsIDkzNTEsIDc3NzgsIDY0Mzc5LCA3NDk2LCA0MjQzMSwgNjkxNiwgMTIwOCwgMCwgCi0gICAgMTE5NjMxLCAxMTAwMiwgNDI0NzAsIDAsIDExODk0NiwgMCwgMCwgNzQwNDEsIDAsIDEyMDYzMywgNDM1MzksIDU0MTEsIAotICAgIDQyMTk2LCAwLCAwLCAwLCA5MTUwLCAwLCA0MjM5MywgMTMwODYsIDEzMTAsIDE5NDY4NywgOTMzNywgMTIwNTIsIDEwNjQzLCAKLSAgICA1NTI3MSwgMCwgMTIxNjYsIDI1NDYsIDE5NDY4MywgMjEzLCAxMTg4NTIsIDY1NjExLCAwLCAwLCAxOTQ3NTYsIDc0MzEwLCAKLSAgICA2NTU0LCAwLCAxMTkxNCwgNTQ1MiwgMCwgMCwgMCwgMCwgMCwgMTk0NjgxLCA5MjU2MCwgMjcxMywgMCwgOTY1MCwgNDMzMzAsIAotICAgIDAsIDE5NDY3NSwgMTQwNiwgMCwgMCwgOTI2NTksIDAsIDY4MjIzLCA0MTQzLCAxOTQ2NzcsIDAsIDY1NzQ4LCA0MTQxLCAKLSAgICA5NjgyLCA2NTI4NywgMTUwOCwgMTI3MDEzLCA4Nzc5LCAxMDU2OSwgODcyNSwgMTMyOTksIDY2NjM4LCA2NTc1MCwgNDIyNjMsIAotICAgIDQxNDUsIDYzODAsIDY1NzUxLCA2NjYxMywgNDM5OTQsIDY1NzM4LCA1NTI1MCwgOTE4NSwgOTU1MCwgMCwgNDM0MDMsIDAsIAotICAgIDAsIDAsIDY1NzM2LCA0MTk1MSwgNjQ4MTYsIDY1NzU2LCAwLCAxMjk1NSwgMTA1OTYsIDI4ODgsIDAsIDAsIDAsIDk2NTcsIAotICAgIDkwMTksIDE5NDc2NiwgMCwgMjg3OCwgNTM5MCwgMCwgMTk0OTYxLCAwLCA2ODY3OSwgNDM1NTIsIDc1MDEsIDYzMjgsIDAsIAotICAgIDEwNDI5LCAxMDM2NSwgMCwgMCwgNDE5NDYsIDc1MDMsIDUyMzUsIDgwMywgNjgzODEsIDAsIDAsIDg5ODYsIDAsIDEwNjMyLCAKLSAgICAxMTkzNCwgMTE0NTIsIDEzMzIsIDAsIDAsIDAsIDAsIDExODg4NywgMTc5MSwgNTE5MSwgOTI4OCwgNjQ4MjIsIDI4OTIsIDAsIAotICAgIDQzMzk0LCA1NTUsIDAsIDAsIDY2NjQ2LCAwLCAxMTkwMDIsIDEzMTUxLCA3NDUxMiwgNzI4OSwgNzQwNTUsIDAsIDg4NTQsIAotICAgIDY0MTYyLCA1ODU4LCA0MTkyNywgMTA1ODIsIDAsIDE3ODQsIDEzNjEsIDE5NTA0NywgMCwgNzkwNSwgMCwgNjQ4NjgsIAotICAgIDEyODgxMywgMTMxNTgsIDkyMTY2LCA3MjExLCAwLCA5MzcxLCA3Mzk3MywgMCwgNjgyOCwgMTYyNSwgOTIzMDIsIDAsIAotICAgIDEzNDIsIDY4NDQwLCA2NDE3MSwgMCwgMTA5MDMsIDAsIDAsIDAsIDAsIDAsIDQ0ODIsIDQxNjA2LCAwLCAxMjg1NjksIDAsIAotICAgIDAsIDY0MzgxLCAwLCAwLCAwLCA0MjI0NSwgMCwgNDE5NzIsIDAsIDQ0NCwgMCwgOTEyNywgNjY2ODcsIDY2NjE5LCAwLCAKLSAgICA3ODAyNSwgMCwgMTEzNDksIDQwOTkxLCAwLCAwLCAxMTk1OTksIDEyMDgzMCwgMCwgMTE5NywgMTI4MjgyLCAxMTQ5LCAKLSAgICAxOTQ5NzAsIDAsIDAsIDQwOTkwLCAwLCAwLCAzNDkyLCAwLCAxMjc5NDIsIDAsIDAsIDAsIDEyODM4LCAwLCAxOTk0OCwgMCwgCi0gICAgMzA5OSwgMCwgMCwgNDEwODcsIDAsIDAsIDAsIDExOTA1OSwgMTIwMzYsIDQxMzA5LCAwLCAwLCA4MTUyLCAwLCA2NDQyOCwgCi0gICAgMTIyMjcsIDAsIDAsIDEyODI4LCAxMjc1MTEsIDAsIDAsIDEyMDcwOCwgMCwgMCwgMTAzODYsIDExOTU3NCwgMCwgMCwgCi0gICAgOTI2ODAsIDAsIDY4MTU0LCAwLCAxNzQzLCAwLCAwLCA5MjIzOSwgNjUxODYsIDAsIDAsIDk2MDYsIDAsIDAsIDY0NDM5LCAwLCAKLSAgICAwLCA5MjY4NiwgMCwgMCwgMTk0OTY3LCAwLCAwLCAzMzk1LCA5MzYyLCAxMDg3OCwgMCwgMCwgNzgzNjIsIDY0ODMwLCAwLCAKLSAgICAwLCA0MTA5MSwgMzQyNiwgMTM0NCwgODg3MCwgMCwgMCwgNDczNSwgMTI3MDE3LCA2MTE5LCAxMjgyMiwgNDI2OTksIDAsIDAsIAotICAgIDc0ODE4LCA1Mzk2LCAwLCA0MjYzNywgNDEwODAsIDAsIDEyMDM5LCAxMDU1OSwgMCwgMTE4ODkyLCAwLCA5NDcyLCAwLCAKLSAgICAxMTkyOSwgMCwgNzE3MCwgOTU5NiwgNjEzMCwgMTI4ODI2LCA0MzYyOSwgMTE1NzksIDE5NDc0MSwgMCwgMTk0NzQwLCAKLSAgICAxMjg2OTEsIDkyMTg1LCA2NjY5OSwgNjQ0NDAsIDEwMDQsIDkyNTg0LCAxOTQ3MzcsIDQzMjM0LCA2NjAwOCwgMTI2MjcsIDAsIAotICAgIDY4NDE0LCAwLCA0MzYxOSwgNDMzODIsIDExMzAwLCA0MzMwNCwgOTY4NiwgNTg5MCwgMTE3NzYsIDc1NTgsIDEyNzE1OCwgCi0gICAgNjU2MjcsIDAsIDEwNzE4LCAxMzE1NCwgMzQ2MSwgOTEzOSwgMCwgMCwgMCwgMCwgNjUzNjUsIDczODc3LCA2NTYyOCwgCi0gICAgNzgwMTksIDAsIDAsIDQxNzA4LCAxMjg2MCwgMjY0MSwgMTIwNjksIDEwODM4LCA1NDAzLCAxMDM1MiwgNzM5MTcsIDEwMDYxLCAKLSAgICA0MzIzNywgMCwgNTE0MCwgMjA5LCAxMjg4NDcsIDQxNzA0LCA0MTA1NiwgNDMwNzgsIDEyODEyNSwgMTE4ODA5LCAwLCAKLSAgICAxMDg5OSwgNjU0NjksIDAsIDAsIDAsIDI0MTAsIDk5MywgMCwgMTIwNTg5LCAxMjA2ODksIDc4NjkzLCAwLCAwLCA3MjMyLCAKLSAgICAwLCAxMTkyNTMsIDAsIDcxMTAsIDc0NDYyLCAyMDY2LCAxMDQ4OSwgNDIxNjYsIDQzNDYzLCAxMDY1OSwgMzYwMCwgMCwgCi0gICAgNDIyNCwgMTMzNiwgNDE1MTgsIDAsIDAsIDAsIDAsIDQxMTM5LCA2NDgyMCwgOTI1MzgsIDEyOTY2LCA0MTEzNCwgMCwgMCwgCi0gICAgMCwgMCwgMjcyLCA0MjYzLCA4NzkzLCAwLCAwLCA0MTUwMiwgMCwgOTgzLCAxMjU0OSwgMCwgMCwgMTE5MCwgNDEwOSwgCi0gICAgMTMzNSwgODQxLCA1ODg4LCA0MTM1OCwgNjQ4NjMsIDk1NDQsIDQzNDgxLCAwLCAwLCAwLCAyMDk5LCA1MTIwLCAyNDA5LCAKLSAgICA3Nzk5LCAwLCA3NDQyNCwgMCwgMCwgNDczMSwgMCwgNjY2MjksIDAsIDAsIDEyNTUsIDQxNDksIDkyNDcsIDAsIDk5MTMsIDAsIAotICAgIDAsIDY0OTE0LCA5MTc3ODcsIDY1MTAxLCAwLCAxMTY5NCwgOTI0NzUsIDExNjkwLCA1ODM1LCAxMjcxNjQsIDY2NjI1LCAKLSAgICAxMDg0MiwgNDEzNTQsIDQyMTIzLCA0MzA5NywgMTE2ODgsIDY2NjM0LCAxMDk0LCAxOTQsIDY0NjkyLCAwLCA4MTgwLCAwLCAKLSAgICAwLCA5OTcyLCA3Mzg2NSwgNDUxOSwgNjExNCwgMTA4OTgsIDQzMDcyLCAwLCAwLCAxMjg4NTgsIDAsIDAsIDEwNjk1LCAwLCAKLSAgICA3NTQwLCAwLCA4ODEsIDc4NTcsIDYwNjcsIDY1MTY0LCAwLCAwLCAwLCAxMzMxMSwgNjg0MDMsIDQxODU3LCA2NDMyMSwgCi0gICAgODM1OSwgMCwgMTI2ODksIDAsIDE5NDU5NCwgMCwgMCwgMCwgNjgxODMsIDAsIDAsIDEyODcsIDU0MzYsIDAsIDAsIDc0MTQyLCAKKyAgICA5MjM1OSwgNjQ5NDIsIDAsIDE5NDczMywgOTgzNDIxLCAxOTQ3MzIsIDAsIDc0MzAxLCAwLCAxMTI4MCwgMCwgNjk3ODQsIAorICAgIDc0MDYwLCAwLCAwLCAxMTk2NjQsIDUxNDUsIDEyNDg2LCA2NTAxOCwgNjY1MTYsIDU0MDksIDEyNzM3OSwgMTk0NjY5LCAKKyAgICA3NDAyLCA1Mzk5LCA5Njg1LCA3NDA4OSwgNzk1MiwgNTQwMSwgMCwgNjY2MTYsIDY4NDIxLCA5ODM2NTQsIDAsIDU0MDUsIAorICAgIDEyNzg3NSwgNjQ4NjYsIDAsIDExOTU4MywgMTI4MzQ1LCA3ODc4NCwgNzQyNDgsIDExMzMwLCAxOTQ3MjMsIDY0NjkwLCAKKyAgICAzMjU0LCAwLCAwLCAwLCA0MjM5MCwgNDM2NzgsIDE5NDcyNSwgOTgzNjQ0LCA2NTA3NywgMCwgNjM4OCwgMzM1NSwgOTUwOCwgCisgICAgOTg2NywgNTcyMywgMTE1MjAsIDU2MTEsIDAsIDMzNzcsIDAsIDAsIDAsIDAsIDc4MjI4LCAwLCA5ODM0OTcsIDQyNjkxLCAKKyAgICA5MTc4ODYsIDEyNzE5OCwgNzQ3NjcsIDAsIDEyNzA3NSwgMTM3OSwgMjQ2LCAwLCAwLCAzNzg4LCAwLCAxMTA0MSwgOTI1NDksIAorICAgIDY2MzA0LCAwLCAwLCA4OTE3LCA0MjQwMywgMzAxLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDY1NiwgMCwgNjUyMTQsIDExOTI0MiwgCisgICAgNDI1NjcsIDkyMjE3LCAxMzE2MywgOTgzMDQzLCAxMjA4MzEsIDc0NTk3LCAzMTgyLCAwLCAwLCAwLCA2NTAzNCwgNjU4ODksIAorICAgIDQyMTY5LCA0NzU1LCA3NDI0NCwgMCwgMTE0NDMsIDAsIDY2MzE5LCA3NDU5OCwgNjA4LCA2MDAsIDAsIDEyMTksIDM5MzQsIAorICAgIDY0MjA2LCAxMTQ4MywgNzQ1MTAsIDAsIDc0NDg1LCA0MjQ0MiwgNjU0NzAsIDk4MzY0MiwgNjQyMDIsIDEzMTYwLCA3NzU5LCAKKyAgICA0MjQ4MiwgNDg1LCAxMjgwMDYsIDAsIDk4MjgsIDAsIDAsIDQyMjgwLCAwLCA5MzUxLCA3Nzc4LCA2NDM3OSwgNzQ5NiwgCisgICAgNDI0MzEsIDY5MTYsIDEyMDgsIDAsIDExOTYzMSwgMTEwMDIsIDQyNDcwLCAwLCAxMTg5NDYsIDAsIDAsIDc0MDQxLCAwLCAKKyAgICAxMjA2MzMsIDQzNTM5LCA1NDExLCA0MjE5NiwgMCwgMCwgMCwgOTE1MCwgMCwgNDIzOTMsIDEzMDg2LCAxMzEwLCAxOTQ2ODcsIAorICAgIDkzMzcsIDEyMDUyLCAxMDY0MywgNTUyNzEsIDAsIDEyMTY2LCAyNTQ2LCAxOTQ2ODMsIDIxMywgMTE4ODUyLCA2NTYxMSwgMCwgCisgICAgMCwgMTk0NzU2LCA3NDMxMCwgNjU1NCwgMCwgMTE5MTQsIDU0NTIsIDAsIDAsIDAsIDAsIDAsIDE5NDY4MSwgOTI1NjAsIAorICAgIDI3MTMsIDAsIDk2NTAsIDQzMzMwLCAwLCAxOTQ2NzUsIDE0MDYsIDAsIDAsIDkyNjU5LCAwLCA2ODIyMywgNDE0MywgCisgICAgMTk0Njc3LCAwLCA2NTc0OCwgNDE0MSwgOTY4MiwgNjUyODcsIDE1MDgsIDEyNzAxMywgODc3OSwgMTA1NjksIDg3MjUsIAorICAgIDEzMjk5LCA2NjYzOCwgNjU3NTAsIDQyMjYzLCA0MTQ1LCA2MzgwLCA2NTc1MSwgNjY2MTMsIDQzOTk0LCA2NTczOCwgCisgICAgNTUyNTAsIDkxODUsIDk1NTAsIDAsIDQzNDAzLCAwLCAwLCAwLCA2NTczNiwgNDE5NTEsIDY0ODE2LCA2NTc1NiwgOTgzMDQ0LCAKKyAgICAxMjk1NSwgMTA1OTYsIDI4ODgsIDAsIDAsIDAsIDk2NTcsIDkwMTksIDE5NDc2NiwgMCwgMjg3OCwgNTM5MCwgMCwgCisgICAgMTk0OTYxLCAwLCA2ODY3OSwgNDM1NTIsIDc1MDEsIDYzMjgsIDAsIDEwNDI5LCAxMDM2NSwgMCwgMCwgNDE5NDYsIDc1MDMsIAorICAgIDUyMzUsIDgwMywgNjgzODEsIDAsIDAsIDg5ODYsIDAsIDEwNjMyLCAxMTkzNCwgMTE0NTIsIDEzMzIsIDAsIDAsIDAsIDAsIAorICAgIDExODg4NywgMTc5MSwgNTE5MSwgOTI4OCwgNjQ4MjIsIDI4OTIsIDAsIDQzMzk0LCA1NTUsIDAsIDAsIDY2NjQ2LCAwLCAKKyAgICAxMTkwMDIsIDEzMTUxLCA3NDUxMiwgNzI4OSwgNzQwNTUsIDAsIDg4NTQsIDY0MTYyLCA1ODU4LCA0MTkyNywgMTA1ODIsIDAsIAorICAgIDE3ODQsIDEzNjEsIDE5NTA0NywgMCwgNzkwNSwgMCwgNjQ4NjgsIDEyODgxMywgMTMxNTgsIDkyMTY2LCA3MjExLCAwLCAKKyAgICA5MzcxLCA3Mzk3MywgMCwgNjgyOCwgMTYyNSwgOTIzMDIsIDAsIDEzNDIsIDY4NDQwLCA2NDE3MSwgMCwgMTA5MDMsIDAsIDAsIAorICAgIDAsIDAsIDAsIDQ0ODIsIDQxNjA2LCAwLCAxMjg1NjksIDAsIDAsIDY0MzgxLCAwLCAwLCAwLCA0MjI0NSwgMCwgNDE5NzIsIAorICAgIDAsIDQ0NCwgMCwgOTEyNywgNjY2ODcsIDY2NjE5LCAwLCA3ODAyNSwgMCwgMTEzNDksIDQwOTkxLCAwLCAwLCAxMTk1OTksIAorICAgIDEyMDgzMCwgMCwgMTE5NywgMTI4MjgyLCAxMTQ5LCAxOTQ5NzAsIDAsIDAsIDQwOTkwLCAwLCAwLCAzNDkyLCAwLCAKKyAgICAxMjc5NDIsIDAsIDAsIDAsIDEyODM4LCA5ODM3MTAsIDE5OTQ4LCAwLCAzMDk5LCAwLCAwLCA0MTA4NywgMCwgMCwgMCwgCisgICAgMTE5MDU5LCAxMjAzNiwgNDEzMDksIDAsIDAsIDgxNTIsIDAsIDY0NDI4LCAxMjIyNywgMCwgMCwgMTI4MjgsIDEyNzUxMSwgCisgICAgMCwgMCwgMTIwNzA4LCAwLCAwLCAxMDM4NiwgMTE5NTc0LCAwLCAwLCA5MjY4MCwgOTgzNTI0LCA2ODE1NCwgMCwgMTc0MywgCisgICAgMCwgMCwgOTIyMzksIDY1MTg2LCAwLCAwLCA5NjA2LCAwLCAwLCA2NDQzOSwgMCwgMCwgOTI2ODYsIDAsIDAsIDE5NDk2NywgCisgICAgMCwgMCwgMzM5NSwgOTM2MiwgMTA4NzgsIDAsIDAsIDc4MzYyLCA2NDgzMCwgMCwgMCwgNDEwOTEsIDM0MjYsIDEzNDQsIAorICAgIDg4NzAsIDAsIDAsIDQ3MzUsIDEyNzAxNywgNjExOSwgMTI4MjIsIDQyNjk5LCAwLCAwLCA3NDgxOCwgNTM5NiwgMCwgCisgICAgNDI2MzcsIDQxMDgwLCAwLCAxMjAzOSwgMTA1NTksIDAsIDExODg5MiwgMCwgOTQ3MiwgMCwgMTE5MjksIDAsIDcxNzAsIAorICAgIDk1OTYsIDYxMzAsIDEyODgyNiwgNDM2MjksIDExNTc5LCAxOTQ3NDEsIDAsIDE5NDc0MCwgMTI4NjkxLCA5MjE4NSwgCisgICAgNjY2OTksIDY0NDQwLCAxMDA0LCA5MjU4NCwgMTk0NzM3LCA0MzIzNCwgNjYwMDgsIDEyNjI3LCAwLCA2ODQxNCwgMCwgCisgICAgNDM2MTksIDQzMzgyLCAxMTMwMCwgNDMzMDQsIDk2ODYsIDU4OTAsIDExNzc2LCA3NTU4LCAxMjcxNTgsIDY1NjI3LCAwLCAKKyAgICAxMDcxOCwgMTMxNTQsIDM0NjEsIDkxMzksIDAsIDAsIDAsIDAsIDY1MzY1LCA3Mzg3NywgNjU2MjgsIDc4MDE5LCAwLCAwLCAKKyAgICA0MTcwOCwgMTI4NjAsIDI2NDEsIDEyMDY5LCAxMDgzOCwgNTQwMywgMTAzNTIsIDczOTE3LCAxMDA2MSwgNDMyMzcsIDAsIAorICAgIDUxNDAsIDIwOSwgMTI4ODQ3LCA0MTcwNCwgNDEwNTYsIDQzMDc4LCAxMjgxMjUsIDExODgwOSwgMCwgMTA4OTksIDY1NDY5LCAKKyAgICAwLCAwLCAwLCAyNDEwLCA5OTMsIDAsIDEyMDU4OSwgMTIwNjg5LCA3ODY5MywgMCwgMCwgNzIzMiwgMCwgMTE5MjUzLCAwLCAKKyAgICA3MTEwLCA3NDQ2MiwgMjA2NiwgMTA0ODksIDQyMTY2LCA0MzQ2MywgMTA2NTksIDM2MDAsIDAsIDQyMjQsIDEzMzYsIAorICAgIDQxNTE4LCAwLCAwLCAwLCAwLCA0MTEzOSwgNjQ4MjAsIDkyNTM4LCAxMjk2NiwgNDExMzQsIDAsIDAsIDAsIDAsIDI3MiwgCisgICAgNDI2MywgODc5MywgMCwgMCwgNDE1MDIsIDAsIDk4MywgMTI1NDksIDAsIDAsIDExOTAsIDQxMDksIDEzMzUsIDg0MSwgCisgICAgNTg4OCwgNDEzNTgsIDY0ODYzLCA5NTQ0LCA0MzQ4MSwgMCwgMCwgMCwgMjA5OSwgNTEyMCwgMjQwOSwgNzc5OSwgMCwgCisgICAgNzQ0MjQsIDAsIDAsIDQ3MzEsIDAsIDY2NjI5LCAwLCAwLCAxMjU1LCA0MTQ5LCA5MjQ3LCAwLCA5OTEzLCAwLCAwLCAKKyAgICA2NDkxNCwgOTE3Nzg3LCA2NTEwMSwgMCwgMTE2OTQsIDkyNDc1LCAxMTY5MCwgNTgzNSwgMTI3MTY0LCA2NjYyNSwgMTA4NDIsIAorICAgIDQxMzU0LCA0MjEyMywgNDMwOTcsIDExNjg4LCA2NjYzNCwgMTA5NCwgMTk0LCA2NDY5MiwgMCwgODE4MCwgMCwgMCwgOTk3MiwgCisgICAgNzM4NjUsIDQ1MTksIDYxMTQsIDEwODk4LCA0MzA3MiwgMCwgMCwgMTI4ODU4LCAwLCAwLCAxMDY5NSwgMCwgNzU0MCwgMCwgCisgICAgODgxLCA3ODU3LCA2MDY3LCA2NTE2NCwgMCwgMCwgMCwgMTMzMTEsIDY4NDAzLCA0MTg1NywgNjQzMjEsIDgzNTksIDAsIAorICAgIDEyNjg5LCAwLCAxOTQ1OTQsIDAsIDAsIDk4MzYxNiwgNjgxODMsIDAsIDAsIDEyODcsIDU0MzYsIDAsIDAsIDc0MTQyLCAKICAgICA5MjMyOCwgNzQxNTIsIDExOTA3OCwgNjA1MSwgMTA0OTcsIDY5NjY4LCA4OTg1LCAxMjEwOSwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMzY1MiwgMTA1MzcsIDAsIDEyNzYsIDEyMDQ0MCwgNjU0OSwgMjc5LCA3Mzc0NSwgMCwgMCwgMCwgMTQ4OSwgMCwgMCwgMCwgCi0gICAgMzg5OSwgMTAwNywgNDIxMjQsIDAsIDQyMTIyLCA5MjMzNywgMCwgMCwgMTE5ODUsIDEzNDUsIDc4NjAwLCAwLCAwLCA4OTU2LCAKLSAgICA0MzA4MywgMTE5ODMwLCA0MjEzOCwgNzg2MTAsIDAsIDEyMTUxLCA3ODYwOCwgNzg2MDQsIDc4NjA1LCA2Mjg1LCA3ODYwMywgCi0gICAgNzg2MTIsIDc4NjEzLCA2NTk0MiwgNDkyLCA4Njg1LCAwLCAwLCAwLCA3ODYyMiwgNDM3MTIsIDI1ODIsIDExNDcwLCAKLSAgICA2NDUzOCwgNzQ0NCwgNzg2MTUsIDc4NjE2LCA0MTU1MCwgMCwgNzM4MzcsIDExOTgyMywgMjUyNywgMTE5ODI0LCAxOTcsIAotICAgIDI3OTksIDkyNTk0LCA0MTk0NCwgMTIwMjc2LCA5OTMzLCAwLCA2NjUxNSwgNzY3LCA1NTI0LCA3MDI4LCAwLCAwLCAKKyAgICAzODk5LCAxMDA3LCA0MjEyNCwgOTgzMzAxLCA0MjEyMiwgOTIzMzcsIDAsIDAsIDExOTg1LCAxMzQ1LCA3ODYwMCwgMCwgMCwgCisgICAgODk1NiwgNDMwODMsIDExOTgzMCwgNDIxMzgsIDc4NjEwLCAwLCAxMjE1MSwgNzg2MDgsIDc4NjA0LCA3ODYwNSwgNjI4NSwgCisgICAgNzg2MDMsIDc4NjEyLCA3ODYxMywgNjU5NDIsIDQ5MiwgODY4NSwgMCwgOTgzNDk0LCAwLCA3ODYyMiwgNDM3MTIsIDI1ODIsIAorICAgIDExNDcwLCA2NDUzOCwgNzQ0NCwgNzg2MTUsIDc4NjE2LCA0MTU1MCwgMCwgNzM4MzcsIDExOTgyMywgMjUyNywgMTE5ODI0LCAKKyAgICAxOTcsIDI3OTksIDkyNTk0LCA0MTk0NCwgMTIwMjc2LCA5OTMzLCAwLCA2NjUxNSwgNzY3LCA1NTI0LCA3MDI4LCAwLCAwLCAKICAgICAxMTk4MjcsIDExOTgxNywgMTE5ODI4LCA3ODYzMywgMTA4OTYsIDAsIDE3OTksIDEyMDQ5NywgNjk3MSwgNzQzMzYsIAotICAgIDEyODM0MiwgMCwgNjUzNDAsIDExODk3OSwgNDE1NTEsIDI0MzQsIDAsIDAsIDEyMDU3OSwgMCwgNDYzMSwgMCwgMCwgNjQwNywgCi0gICAgMCwgNjMzOCwgNDMyMTQsIDAsIDc1NzAsIDAsIDMxOTIsIDAsIDg0MTQsIDAsIDAsIDAsIDAsIDAsIDkxNjQsIDY2NjEyLCAwLCAKLSAgICAzMTcxLCA2NjIzLCA0OTYxLCA2ODM5NiwgODg2LCA1NTIxNiwgODY1NCwgNzg4MzIsIDk5OTMsIDc0MzkwLCA2NDYwMywgMCwgCi0gICAgNjkyNDEsIDk1OTksIDc4NjI5LCA0MzA4NCwgNzg2MjcsIDc4NjI4LCA3ODYyNSwgMjM5OSwgNjk2OTMsIDg5OTQsIDEwOTQ0LCAKLSAgICA0MTIwOCwgMCwgNDExNjgsIDgxNzgsIDAsIDMzNjcsIDkyMzM0LCA0MjUxMCwgNzg2NDEsIDc4NjM2LCA2ODA0LCA3ODYzNCwgCi0gICAgMTk0NywgMCwgMCwgOTI2ODEsIDQyNzU5LCAxMTA2OCwgMTcwNSwgOTMzMSwgMCwgNzQ3OTgsIDkxODEsIDY1MzU5LCAwLCAKLSAgICA4MDE3LCAwLCA2NTA5NiwgNjY3MjAsIDAsIDQzNDc1LCAwLCA0OTA5LCAxMjEyNiwgMTI4NjczLCAxMjA2OTYsIDQ5MDQsIDAsIAotICAgIDY5NjUwLCAxMzY1LCA5MjUzLCA0Mjc1NywgNDM0MzYsIDc0NjIsIDAsIDAsIDAsIDAsIDExOTU4NywgNjQ0MTUsIDAsIDAsIAotICAgIDUzOTgsIDAsIDEyNzM4NiwgMCwgMCwgMCwgMTE5MDE1LCAwLCAwLCA5NDc2LCAwLCAwLCAxMjc2MywgMCwgMzYyOSwgMCwgCi0gICAgMTMwMDUsIDAsIDM2MjgsIDAsIDAsIDkyNTAyLCAzNDY5LCA0MjEwNywgNDIxMTYsIDkxNzU3OCwgNjQ4MDksIDI5MjgsIAotICAgIDQ5MDUsIDk4NTMsIDg1MSwgOTA0MCwgMCwgNjQ2NjUsIDQzMDg2LCA5MTE0LCAwLCA0MjU4MywgOTMxNSwgNDgyMiwgNDkwNiwgCi0gICAgMzg1MiwgMjg0NywgMTE5ODIxLCAzMjM2LCAxMTMxNywgMTI1MSwgNzc3NywgNDE4NTIsIDExNDEwLCAxMDk2NCwgMCwgCi0gICAgNDMyMjIsIDEyNjQ2LCAxMjAyNjksIDEwMjU5LCA5ODY1LCA2NTgyMSwgMCwgNjAxOCwgOTIyOTAsIDAsIDEyMjc2LCAwLCAKLSAgICA2ODM3MiwgMCwgOTIyNTksIDExOTI0NCwgMCwgMCwgMTA0NjcsIDAsIDI0NDMsIDEwOTE4LCA3ODIxNywgMTE5ODI1LCAKLSAgICAxMDAxLCA5MjQxLCAxOTI3LCAwLCAwLCA3Mzk4NywgMTI3ODg1LCAwLCAwLCAxMTg4MjgsIDEyMDI3MSwgNjU2NzgsIAotICAgIDEyODY3LCAwLCA4MjYwLCA3Nzk0NSwgNzUxOSwgMTE1MDUsIDEyMjc0LCA4OTA0LCA1MTgsIDY1ODU3LCAwLCAxMjg2NzQsIAotICAgIDEzMjA0LCA0Mzg3LCA4NTcsIDAsIDY1MzY5LCAwLCA5MjMzNiwgNDMxMjUsIDEyMDU5MiwgMCwgMCwgMCwgMCwgNTEzNiwgCi0gICAgMTk2OCwgMCwgMTk1MDIzLCAxMzM3LCA2NDk2NywgMTYyOSwgMCwgNzk2LCA2NjUwNiwgMCwgNzQxMjMsIDEyODc3LCAwLCAKLSAgICA0MjMxNCwgNDMzODgsIDAsIDc0NDAzLCA2MTIwLCA0NzgsIDY1MTUxLCA2ODEyOCwgMTI4MTQ3LCA0MzA4MiwgNjAxNiwgMCwgCi0gICAgNDIyODQsIDEyODUwNywgNDI3NiwgMTIwNiwgMzYxOSwgNDE2MzgsIDY5NjkxLCAzODQzLCAxMjAxMSwgODg1MywgMzM2MSwgCi0gICAgMCwgNDkwLCAxMDcxNSwgNzU3OCwgNjgzODQsIDAsIDY1MzUwLCAxMDUzMCwgMTIzNDgsIDg2NTMsIDc0MzE0LCA0MjQzNSwgCi0gICAgNjE1NCwgOTU1MSwgNjUzNTQsIDc4NTIyLCA3ODQsIDQyMzk3LCAzMzQsIDAsIDQyNDE2LCA2NTM1NiwgNjUyNzMsIDc3OTg3LCAKLSAgICA2OTY2NiwgNDQ0MiwgMTAzNjQsIDAsIDc3OCwgNDE2MjYsIDQyNDU1LCA3OTg5LCA3NDA2MywgMzIyNywgMCwgMTI3Mjc1LCAKLSAgICA3Mzk4MywgMjkxNSwgMTE1MDIsIDQxMDIyLCA0MTcwMiwgMTAzMDksIDEyNzAzNSwgNzgzMjAsIDAsIDY5NzUsIDAsIDU0MTUsIAotICAgIDEyMTc2LCAwLCA3NDE5MywgMzQ2MiwgNjUyMTUsIDQyNjI5LCA3ODY5MSwgNzM3ODQsIDAsIDAsIDk3NTksIDAsIDc4MzI0LCAKLSAgICAxMjcyNTQsIDgxMTQsIDc4Njk4LCA3ODY5NywgNzg2OTYsIDc4Njk1LCA4NzEwLCA0MjQ5NSwgMTE4OTU2LCAwLCA0MDUxLCAKLSAgICAxMDQ2MCwgNDMzNjQsIDExODkxNywgMTM1NiwgMTIxNjEsIDQyNzEzLCAxMjg4NTcsIDEyNzI2OCwgMTYxOSwgOTcwMywgCi0gICAgNDMxNTIsIDQyNDg5LCA0MjExMiwgMCwgMTg3NSwgMTA4MDgsIDQyMTA5LCAxMjAyODQsIDQxODYwLCA2NDg2MiwgMTMzMDUsIAotICAgIDY0OTA3LCA1Mjg5LCAxMzE0NCwgMTI4NjU4LCAwLCA1NTc1LCA5Njc1LCAwLCA1OTQwLCAyMjYsIDI2NDksIDYzMzYsIDAsIAotICAgIDAsIDQzMjM2LCAzMzgyLCA0MjQ0OSwgNjQ5OCwgMTY1OCwgMTE5MzYsIDc4MjMyLCAwLCAxMTI2OSwgMTAxNTEsIDczNzU5LCAKLSAgICA0MzEwMCwgNzQ0NDksIDY1NTA4LCAwLCAwLCAwLCA4OTM1LCA5MTc5ODUsIDAsIDAsIDAsIDYxNiwgNzQ3NTMsIDY1MTc4LCAKLSAgICA0Njg0LCA3ODcwMSwgMTE5NjUzLCAwLCAwLCAwLCA2MDQ4LCA3NDQ2MCwgNDIxMTAsIDczOTY1LCAxMDg3MCwgODU1NywgCi0gICAgMTEwNTQsIDY4NjY0LCAxMTkwNDksIDk2ODEsIDQ0NzUsIDAsIDQxMTQyLCAyMTAwLCAwLCAxMjA3MzEsIDYwMzUsIDAsIAotICAgIDc2NTEsIDEwMjk2LCA2NDQ0MywgMCwgMCwgOTE3OTg3LCAwLCAxMTg5NjYsIDc0MTQ0LCA0MDk5NywgMCwgMTAzOTIsIAotICAgIDEwMzI4LCA0MDk5OCwgNDM0NjIsIDc0NDg4LCAwLCA5ODAwLCA4OTc5LCAwLCAxMTkxMzEsIDQxMDAwLCAwLCAxMTkyMzksIAotICAgIDY0ODcsIDMzODYsIDAsIDEwMzQ0LCAwLCA2NTI5OSwgNTM5NCwgNDMyNDYsIDc4MjQzLCAxMDIyMCwgNjY1MDUsIDQxMjAwLCAKLSAgICAxMjg1ODMsIDQ0MjUsIDAsIDAsIDAsIDQzMDc0LCA3Mzc5OSwgMCwgNzgxNDcsIDAsIDEyMTczLCA3ODU0NSwgMCwgMCwgCi0gICAgNjUzMzgsIDAsIDAsIDExOTU4MiwgNDQ3NCwgMCwgNDMwOTMsIDAsIDE1ODcsIDAsIDEyNzM3MiwgNjQ0NzUsIDEyODA5OCwgCi0gICAgMTM2OSwgMCwgOTk1OSwgNzkyNywgMCwgNDU2MCwgMCwgMCwgOTIyNzcsIDAsIDY0OTQ4LCA0NDMwLCA3NDM0NywgNDI2MDEsIAotICAgIDQ1MTQsIDY2NDM0LCAwLCA4MTk0LCA2NTQ2MiwgMTA2MjYsIDEwOTY1LCAwLCA4ODkzLCAwLCAxMjU0MiwgMCwgNjUzNDEsIAotICAgIDAsIDY1ODI5LCA3OTI1LCAxMTk4MjIsIDEwNDc1LCAwLCAwLCAxMzUyLCAxMTA2OSwgNzcwNywgMTI3NTYwLCAwLCA2NTI3OSwgCi0gICAgMTI3MTAyLCA2ODIwNywgMTI3MTAwLCA2NTYwNSwgNjA0MCwgMTI3MDk3LCAxMDA3MSwgMCwgOTMzNiwgMTI4ODI0LCAwLCAKLSAgICA4ODk5LCA3Nzk4LCA2NDQ3NCwgNjQyNTksIDAsIDY1MTg4LCA3ODIwLCA0MzAxOCwgMCwgMCwgNzc0NiwgMTQ5MiwgNzg1NTEsIAotICAgIDEwODg0LCA3Nzk4MiwgMCwgNTEyNywgMTEyODUsIDQyNTAxLCA1NDk1LCA0MjczLCA0MzA5NSwgNDE0MjYsIDEwODQ5LCAKLSAgICA1NzMwLCAyOTk5LCA2MzQyLCA2ODYzNiwgNzQzMDQsIDM3MSwgNjQzNzMsIDYwMjMsIDE2OSwgNTQ5NywgMTE3MDgsIDAsIDAsIAotICAgIDYzMjMsIDE5NDY4NCwgODIyNCwgMCwgODkzOCwgNjA0MywgMTI3MzgsIDAsIDAsIDUzMjEsIDAsIDE5NDc5OCwgMCwgMjU4OSwgCi0gICAgNzQzMzIsIDE2ODksIDc4MDIsIDQ2ODMsIDc0MzE4LCA0MjcwNCwgMTIwMjk2LCAxMTkwNSwgMCwgMCwgMTI4NTE2LCAKLSAgICAxMjgxNjMsIDc0NTEzLCA2MDQ5LCAwLCA0MDI3LCA4MzQsIDExODk2MiwgMTgwMywgMCwgMTUwMywgMCwgMCwgMCwgNTczMSwgCi0gICAgMTM4MSwgMjM4NywgMCwgMCwgODI4OSwgNjQ1MjUsIDY1ODE3LCAyODgxLCA0MzE0MiwgMCwgOTYwMSwgMjg3OSwgOTY2OCwgCi0gICAgOTc2NiwgMCwgNTcyOSwgOTE3ODMzLCA3NDQxMCwgNjAzNiwgNjQ4ODEsIDQwMjYsIDkzNjEsIDEyNzA5MSwgMjg4NywgMCwgCi0gICAgMzUyNiwgNjI5OCwgMCwgNzc4OTcsIDEyMDA5NSwgNzg1MTksIDAsIDg1NzIsIDYwMjEsIDc3ODk2LCAxMjgyODgsIDc3ODk1LCAKLSAgICA0MzE1NSwgMCwgMTE5ODQ5LCAzMTQ2LCAxMDk1OSwgOTQ4MywgMCwgNzc4OTMsIDEwOTgxLCAxNjYsIDkxNzg0MSwgODYzNSwgCi0gICAgMCwgMTA2MjMsIDQwOCwgMTE5MDU4LCAxMjc1MDcsIDEzMjk4LCAwLCA3NDI2LCA0MTY0MSwgMTI3MTcsIDAsIDc2MDcsIAotICAgIDEwNjM5LCA2NjcxMywgMCwgMCwgNDE2NDMsIDc0MTM0LCAwLCA4NzEzLCA0MTY0MCwgMTAyMjEsIDQxNjQ1LCA2NjcxMiwgCi0gICAgNjY0NSwgNjQ2LCA2NjcyNiwgNjY3MTEsIDQyMTI5LCAwLCA3NzkwMSwgMzQ3MiwgODY5NywgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNTgwOSwgMTk1MCwgMTE5MzU2LCA5MjQzMiwgNzQ1NzIsIDAsIDQyMTM2LCAwLCAwLCAwLCAwLCAzMjQ3LCAxMTk4NTQsIAotICAgIDY1MDE3LCAwLCA2ODQyOCwgNjY2NjgsIDAsIDAsIDEwOTgzLCAwLCAwLCAwLCA0MTU2NywgMCwgMCwgMCwgMTk0NjI0LCAwLCAKLSAgICAwLCAwLCA4Mjg1LCAwLCA0NTA5LCAwLCA2NjQ3MSwgMTIyMTYsIDAsIDQwOTg4LCA5MjU5MiwgMCwgNDE3MjcsIDAsIAotICAgIDQyODQ4LCAyMzk2LCA5MTc3NjYsIDAsIDc0MDE4LCA5MTc1MzgsIDY0OTQwLCA3MDI3LCAzODg2LCAwLCA0MjQ1NywgCi0gICAgMTE5MDA4LCAwLCA5OTYsIDY4MTIzLCA5MTc1NzEsIDQyNDksIDAsIDkxNzU5NCwgMTE3MDcsIDgyMjIsIDAsIDc5MzksIAotICAgIDkyNDU0LCA5MjQ2MCwgMTI3ODAxLCA5MTc1OTIsIDEyODM1OSwgODUzNCwgMTI3MTU0LCA0MDk4MywgMCwgMCwgMCwgNzIwMSwgCi0gICAgMTI1NjEsIDAsIDQyMzcxLCAxMjU1OCwgMCwgOTE3NTQ5LCAxMDA1MiwgNDA5ODIsIDAsIDAsIDE0ODgsIDAsIDAsIDAsIAotICAgIDkxNzU1OSwgMCwgMCwgMTU2MywgMTI4MDM0LCA5NjE5LCAwLCAwLCAwLCAxMjc4NzIsIDAsIDU4MDMsIDc3OTcsIDYwNzAsIAotICAgIDEwMDA2LCAwLCAyOTIyLCA2MDgyLCAwLCA2NTAwOSwgMCwgMTI1NjcsIDEyODcwMywgMCwgNDE0MTIsIDAsIDAsIDM2MDcsIAotICAgIDkyMDAsIDEwMDQ2LCA5NjEyLCA0MjE1MywgODIxOCwgOTQ4NSwgMCwgMjAzMiwgNzgzNTQsIDAsIDAsIDAsIDAsIDAsIAotICAgIDQzMDg1LCA2MDU3LCA1MDgsIDEyODU4NSwgMTI4MDE1LCAxMjAyNjUsIDAsIDkyNDA1LCAwLCAwLCA2MzgsIDYwODMsIAorICAgIDEyODM0MiwgMCwgNjUzNDAsIDExODk3OSwgNDE1NTEsIDI0MzQsIDk4MzU1OSwgMCwgMTIwNTc5LCAwLCA0NjMxLCAwLCAwLCAKKyAgICA2NDA3LCAwLCA2MzM4LCA0MzIxNCwgMCwgNzU3MCwgMCwgMzE5MiwgMCwgODQxNCwgMCwgMCwgMCwgMCwgMCwgOTE2NCwgCisgICAgNjY2MTIsIDAsIDMxNzEsIDY2MjMsIDQ5NjEsIDY4Mzk2LCA4ODYsIDU1MjE2LCA4NjU0LCA3ODgzMiwgOTk5MywgNzQzOTAsIAorICAgIDY0NjAzLCAwLCA2OTI0MSwgOTU5OSwgNzg2MjksIDQzMDg0LCA3ODYyNywgNzg2MjgsIDc4NjI1LCAyMzk5LCA2OTY5MywgCisgICAgODk5NCwgMTA5NDQsIDQxMjA4LCA5ODM0NDgsIDQxMTY4LCA4MTc4LCAwLCAzMzY3LCA5MjMzNCwgNDI1MTAsIDc4NjQxLCAKKyAgICA3ODYzNiwgNjgwNCwgNzg2MzQsIDE5NDcsIDAsIDAsIDkyNjgxLCA0Mjc1OSwgMTEwNjgsIDE3MDUsIDkzMzEsIDAsIAorICAgIDc0Nzk4LCA5MTgxLCA2NTM1OSwgMCwgODAxNywgMCwgNjUwOTYsIDY2NzIwLCAwLCA0MzQ3NSwgMCwgNDkwOSwgMTIxMjYsIAorICAgIDEyODY3MywgMTIwNjk2LCA0OTA0LCAwLCA2OTY1MCwgMTM2NSwgOTI1MywgNDI3NTcsIDQzNDM2LCA3NDYyLCAwLCAwLCAwLCAKKyAgICAwLCAxMTk1ODcsIDY0NDE1LCAwLCAwLCA1Mzk4LCAwLCAxMjczODYsIDAsIDAsIDAsIDExOTAxNSwgMCwgMCwgOTQ3NiwgMCwgCisgICAgOTgzNTEyLCAxMjc2MywgMCwgMzYyOSwgMCwgMTMwMDUsIDAsIDM2MjgsIDAsIDAsIDkyNTAyLCAzNDY5LCA0MjEwNywgCisgICAgNDIxMTYsIDkxNzU3OCwgNjQ4MDksIDI5MjgsIDQ5MDUsIDk4NTMsIDg1MSwgOTA0MCwgMCwgNjQ2NjUsIDQzMDg2LCA5MTE0LCAKKyAgICAwLCA0MjU4MywgOTMxNSwgNDgyMiwgNDkwNiwgMzg1MiwgMjg0NywgMTE5ODIxLCAzMjM2LCAxMTMxNywgMTI1MSwgNzc3NywgCisgICAgNDE4NTIsIDExNDEwLCAxMDk2NCwgMCwgNDMyMjIsIDEyNjQ2LCAxMjAyNjksIDEwMjU5LCA5ODY1LCA2NTgyMSwgMCwgCisgICAgNjAxOCwgOTIyOTAsIDAsIDEyMjc2LCAwLCA2ODM3MiwgMCwgOTIyNTksIDExOTI0NCwgMCwgMCwgMTA0NjcsIDAsIDI0NDMsIAorICAgIDEwOTE4LCA3ODIxNywgMTE5ODI1LCAxMDAxLCA5MjQxLCAxOTI3LCAwLCAwLCA3Mzk4NywgMTI3ODg1LCAwLCAwLCAKKyAgICAxMTg4MjgsIDEyMDI3MSwgNjU2NzgsIDEyODY3LCAwLCA4MjYwLCA3Nzk0NSwgNzUxOSwgMTE1MDUsIDEyMjc0LCA4OTA0LCAKKyAgICA1MTgsIDY1ODU3LCAwLCAxMjg2NzQsIDEzMjA0LCA0Mzg3LCA4NTcsIDAsIDY1MzY5LCAwLCA5MjMzNiwgNDMxMjUsIAorICAgIDEyMDU5MiwgMCwgMCwgMCwgMCwgNTEzNiwgMTk2OCwgMCwgMTk1MDIzLCAxMzM3LCA2NDk2NywgMTYyOSwgMCwgNzk2LCAKKyAgICA2NjUwNiwgMCwgNzQxMjMsIDEyODc3LCAwLCA0MjMxNCwgNDMzODgsIDAsIDc0NDAzLCA2MTIwLCA0NzgsIDY1MTUxLCAKKyAgICA2ODEyOCwgMTI4MTQ3LCA0MzA4MiwgNjAxNiwgMCwgNDIyODQsIDEyODUwNywgNDI3NiwgMTIwNiwgMzYxOSwgNDE2MzgsIAorICAgIDY5NjkxLCAzODQzLCAxMjAxMSwgODg1MywgMzM2MSwgMCwgNDkwLCAxMDcxNSwgNzU3OCwgNjgzODQsIDAsIDY1MzUwLCAKKyAgICAxMDUzMCwgMTIzNDgsIDg2NTMsIDc0MzE0LCA0MjQzNSwgNjE1NCwgOTU1MSwgNjUzNTQsIDc4NTIyLCA3ODQsIDQyMzk3LCAKKyAgICAzMzQsIDAsIDQyNDE2LCA2NTM1NiwgNjUyNzMsIDc3OTg3LCA2OTY2NiwgNDQ0MiwgMTAzNjQsIDAsIDc3OCwgNDE2MjYsIAorICAgIDQyNDU1LCA3OTg5LCA3NDA2MywgMzIyNywgMCwgMTI3Mjc1LCA3Mzk4MywgMjkxNSwgMTE1MDIsIDQxMDIyLCA0MTcwMiwgCisgICAgMTAzMDksIDEyNzAzNSwgNzgzMjAsIDAsIDY5NzUsIDAsIDU0MTUsIDEyMTc2LCAwLCA3NDE5MywgMzQ2MiwgNjUyMTUsIAorICAgIDQyNjI5LCA3ODY5MSwgNzM3ODQsIDAsIDAsIDk3NTksIDAsIDc4MzI0LCAxMjcyNTQsIDgxMTQsIDc4Njk4LCA3ODY5NywgCisgICAgNzg2OTYsIDc4Njk1LCA4NzEwLCA0MjQ5NSwgMTE4OTU2LCAwLCA0MDUxLCAxMDQ2MCwgNDMzNjQsIDExODkxNywgMTM1NiwgCisgICAgMTIxNjEsIDQyNzEzLCAxMjg4NTcsIDEyNzI2OCwgMTYxOSwgOTcwMywgNDMxNTIsIDQyNDg5LCA0MjExMiwgMCwgMTg3NSwgCisgICAgMTA4MDgsIDQyMTA5LCAxMjAyODQsIDQxODYwLCA2NDg2MiwgMTMzMDUsIDY0OTA3LCA1Mjg5LCAxMzE0NCwgMTI4NjU4LCAwLCAKKyAgICA1NTc1LCA5Njc1LCAwLCA1OTQwLCAyMjYsIDI2NDksIDYzMzYsIDAsIDAsIDQzMjM2LCAzMzgyLCA0MjQ0OSwgNjQ5OCwgCisgICAgMTY1OCwgMTE5MzYsIDc4MjMyLCAwLCAxMTI2OSwgMTAxNTEsIDczNzU5LCA0MzEwMCwgNzQ0NDksIDY1NTA4LCAwLCAwLCAwLCAKKyAgICA4OTM1LCA5MTc5ODUsIDAsIDAsIDAsIDYxNiwgNzQ3NTMsIDY1MTc4LCA0Njg0LCA3ODcwMSwgMTE5NjUzLCAwLCAwLCAwLCAKKyAgICA2MDQ4LCA3NDQ2MCwgNDIxMTAsIDczOTY1LCAxMDg3MCwgODU1NywgMTEwNTQsIDY4NjY0LCAxMTkwNDksIDk2ODEsIDQ0NzUsIAorICAgIDAsIDQxMTQyLCAyMTAwLCAwLCAxMjA3MzEsIDYwMzUsIDAsIDc2NTEsIDEwMjk2LCA2NDQ0MywgMCwgMCwgOTE3OTg3LCAwLCAKKyAgICAxMTg5NjYsIDc0MTQ0LCA0MDk5NywgMCwgMTAzOTIsIDEwMzI4LCA0MDk5OCwgNDM0NjIsIDc0NDg4LCAwLCA5ODAwLCAKKyAgICA4OTc5LCAwLCAxMTkxMzEsIDQxMDAwLCAwLCAxMTkyMzksIDY0ODcsIDMzODYsIDAsIDEwMzQ0LCAwLCA2NTI5OSwgNTM5NCwgCisgICAgNDMyNDYsIDc4MjQzLCAxMDIyMCwgNjY1MDUsIDQxMjAwLCAxMjg1ODMsIDQ0MjUsIDAsIDAsIDAsIDQzMDc0LCA3Mzc5OSwgCisgICAgMCwgNzgxNDcsIDAsIDEyMTczLCA3ODU0NSwgMCwgMCwgNjUzMzgsIDAsIDAsIDExOTU4MiwgNDQ3NCwgMCwgNDMwOTMsIDAsIAorICAgIDE1ODcsIDAsIDEyNzM3MiwgNjQ0NzUsIDEyODA5OCwgMTM2OSwgOTgzNDA3LCA5OTU5LCA3OTI3LCAwLCA0NTYwLCAwLCAwLCAKKyAgICA5MjI3NywgMCwgNjQ5NDgsIDQ0MzAsIDc0MzQ3LCA0MjYwMSwgNDUxNCwgNjY0MzQsIDk4MzY4MiwgODE5NCwgNjU0NjIsIAorICAgIDEwNjI2LCAxMDk2NSwgMCwgODg5MywgMCwgMTI1NDIsIDAsIDY1MzQxLCAwLCA2NTgyOSwgNzkyNSwgMTE5ODIyLCAxMDQ3NSwgCisgICAgMCwgMCwgMTM1MiwgMTEwNjksIDc3MDcsIDEyNzU2MCwgMCwgNjUyNzksIDEyNzEwMiwgNjgyMDcsIDEyNzEwMCwgNjU2MDUsIAorICAgIDYwNDAsIDEyNzA5NywgMTAwNzEsIDAsIDkzMzYsIDEyODgyNCwgMCwgODg5OSwgNzc5OCwgNjQ0NzQsIDY0MjU5LCAwLCAKKyAgICA2NTE4OCwgNzgyMCwgNDMwMTgsIDAsIDAsIDc3NDYsIDE0OTIsIDc4NTUxLCAxMDg4NCwgNzc5ODIsIDAsIDUxMjcsIAorICAgIDExMjg1LCA0MjUwMSwgNTQ5NSwgNDI3MywgNDMwOTUsIDQxNDI2LCAxMDg0OSwgNTczMCwgMjk5OSwgNjM0MiwgNjg2MzYsIAorICAgIDc0MzA0LCAzNzEsIDY0MzczLCA2MDIzLCAxNjksIDU0OTcsIDExNzA4LCAwLCAwLCA2MzIzLCAxOTQ2ODQsIDgyMjQsIDAsIAorICAgIDg5MzgsIDYwNDMsIDEyNzM4LCAwLCAwLCA1MzIxLCAwLCAxOTQ3OTgsIDAsIDI1ODksIDc0MzMyLCAxNjg5LCA3ODAyLCAKKyAgICA0NjgzLCA3NDMxOCwgNDI3MDQsIDEyMDI5NiwgMTE5MDUsIDAsIDAsIDEyODUxNiwgMTI4MTYzLCA3NDUxMywgNjA0OSwgMCwgCisgICAgNDAyNywgODM0LCAxMTg5NjIsIDE4MDMsIDAsIDE1MDMsIDAsIDAsIDAsIDU3MzEsIDEzODEsIDIzODcsIDAsIDAsIDgyODksIAorICAgIDY0NTI1LCA2NTgxNywgMjg4MSwgNDMxNDIsIDAsIDk2MDEsIDI4NzksIDk2NjgsIDk3NjYsIDAsIDU3MjksIDkxNzgzMywgCisgICAgNzQ0MTAsIDYwMzYsIDY0ODgxLCA0MDI2LCA5MzYxLCAxMjcwOTEsIDI4ODcsIDAsIDM1MjYsIDYyOTgsIDAsIDc3ODk3LCAKKyAgICAxMjAwOTUsIDc4NTE5LCAwLCA4NTcyLCA2MDIxLCA3Nzg5NiwgMTI4Mjg4LCA3Nzg5NSwgNDMxNTUsIDAsIDExOTg0OSwgCisgICAgMzE0NiwgMTA5NTksIDk0ODMsIDAsIDc3ODkzLCAxMDk4MSwgMTY2LCA5MTc4NDEsIDg2MzUsIDAsIDEwNjIzLCA0MDgsIAorICAgIDExOTA1OCwgMTI3NTA3LCAxMzI5OCwgMCwgNzQyNiwgNDE2NDEsIDEyNzE3LCAwLCA3NjA3LCAxMDYzOSwgNjY3MTMsIDAsIAorICAgIDAsIDQxNjQzLCA3NDEzNCwgMCwgODcxMywgNDE2NDAsIDEwMjIxLCA0MTY0NSwgNjY3MTIsIDY2NDUsIDY0NiwgNjY3MjYsIAorICAgIDY2NzExLCA0MjEyOSwgMCwgNzc5MDEsIDM0NzIsIDg2OTcsIDAsIDAsIDk4MzU1MCwgMCwgMCwgMCwgNTgwOSwgMTk1MCwgCisgICAgMTE5MzU2LCA5MjQzMiwgNzQ1NzIsIDAsIDQyMTM2LCAwLCAwLCAwLCAwLCAzMjQ3LCAxMTk4NTQsIDY1MDE3LCA5ODM2ODUsIAorICAgIDY4NDI4LCA2NjY2OCwgMCwgMCwgMTA5ODMsIDAsIDAsIDAsIDQxNTY3LCAwLCAwLCAwLCAxOTQ2MjQsIDAsIDAsIDAsIAorICAgIDgyODUsIDAsIDQ1MDksIDAsIDY2NDcxLCAxMjIxNiwgMCwgNDA5ODgsIDkyNTkyLCAwLCA0MTcyNywgMCwgNDI4NDgsIAorICAgIDIzOTYsIDkxNzc2NiwgMCwgNzQwMTgsIDkxNzUzOCwgNjQ5NDAsIDcwMjcsIDM4ODYsIDAsIDQyNDU3LCAxMTkwMDgsIDAsIAorICAgIDk5NiwgNjgxMjMsIDkxNzU3MSwgNDI0OSwgMCwgOTE3NTk0LCAxMTcwNywgODIyMiwgMCwgNzkzOSwgOTI0NTQsIDkyNDYwLCAKKyAgICAxMjc4MDEsIDkxNzU5MiwgMTI4MzU5LCA4NTM0LCAxMjcxNTQsIDQwOTgzLCAwLCA5ODMzNDgsIDAsIDcyMDEsIDEyNTYxLCAKKyAgICAwLCA0MjM3MSwgMTI1NTgsIDAsIDkxNzU0OSwgMTAwNTIsIDQwOTgyLCAwLCAwLCAxNDg4LCAwLCAwLCAwLCA5MTc1NTksIDAsIAorICAgIDAsIDE1NjMsIDEyODAzNCwgOTYxOSwgOTgzNjcyLCAwLCAwLCAxMjc4NzIsIDk4MzQ3MSwgNTgwMywgNzc5NywgNjA3MCwgCisgICAgMTAwMDYsIDAsIDI5MjIsIDYwODIsIDAsIDY1MDA5LCA5ODM2NzQsIDEyNTY3LCAxMjg3MDMsIDAsIDQxNDEyLCAwLCAwLCAKKyAgICAzNjA3LCA5MjAwLCAxMDA0NiwgOTYxMiwgNDIxNTMsIDgyMTgsIDk0ODUsIDAsIDIwMzIsIDc4MzU0LCAwLCAwLCAwLCAwLCAKKyAgICAwLCA0MzA4NSwgNjA1NywgNTA4LCAxMjg1ODUsIDEyODAxNSwgMTIwMjY1LCAwLCA5MjQwNSwgMCwgMCwgNjM4LCA2MDgzLCAKICAgICAxMTkwNzIsIDAsIDAsIDIzMDUsIDc4MzQ4LCAwLCAwLCA2MDU2LCA2NjU5LCAwLCAwLCA2MDg1LCAwLCAwLCAzOTE1LCAKICAgICA0MTYzNCwgMCwgNDE2MzksIDYzOTEyLCAxMTk0MSwgMCwgNDAyOCwgMTc4NywgNDIxODAsIDQzMDk2LCA5MjY5MCwgMzI0OSwgCiAgICAgMTc2OCwgMCwgMTIzMjgsIDUwMSwgMTI3MDc0LCAxMDYwMSwgMCwgNTgzLCAwLCA0MTk3NywgMCwgNjYwMDQsIDExOTM1MCwgCkBAIC0xNzg2MCw2NSArMTgwOTUsNjYgQEAKICAgICA3ODM0MSwgMTE5MTE1LCA3ODM0MiwgMCwgMCwgNzQxMDEsIDAsIDExNzYyLCAwLCA5MjQyMiwgNzc5OTcsIDEyODc4OCwgCiAgICAgNjY0NzUsIDAsIDUwMjcsIDc4MTcyLCAxMjg4NzgsIDAsIDUwNjksIDczODYyLCA1MDI4LCA5ODk3LCAwLCA3MzczOSwgCiAgICAgNTAyNiwgMCwgNjg2MzksIDYzMzEsIDEwMDc5LCA4OTMxLCAwLCAxNDE1LCA4ODY2LCA0MTkwMSwgNzQ3OTAsIDc4MTM4LCAKLSAgICAxMTkzNjEsIDAsIDQzMTA2LCA1MDI5LCA2NTMwOSwgMTU4MCwgMzU5OCwgNjg0MjQsIDQxMDcwLCA3NzkwMywgMCwgMzQ0MCwgCi0gICAgNzgyMTUsIDE1NjIsIDEyODY1NiwgMTI3MTc1LCAxMTkzNTgsIDE3MTYsIDAsIDEwNjAwLCA5MTc4NjcsIDYyMCwgNDEwMDEsIAotICAgIDYwMjgsIDAsIDQyODkyLCAwLCA3NDgyMiwgNTAyNCwgMTIwODI5LCA0MTAwMywgMCwgNTAyNSwgMTI4MjY5LCAwLCAwLCAKLSAgICAxMTkzMjgsIDAsIDY1NTU3LCAwLCA3NDU0MSwgMCwgMTE1OTksIDEyODIwOSwgMTE2MDIsIDYyNDMsIDExNTc0LCAxMTU4MSwgCi0gICAgMTE1OTcsIDExNTk4LCA2MjUzLCA2MTA1LCAxMTU4NCwgNzQxOTUsIDExNTY5LCA2NTI3NSwgODkwNiwgMTI3MDk2LCA1NzU1LCAKLSAgICAyNjM2LCAwLCAxMDgxNSwgMTE2MTksIDc4NzE3LCA0MTU0MCwgNzgxNSwgMTE2MTYsIDY5NzksIDEyMDgwLCA3NzIxLCAKLSAgICAxMTYwNCwgNzg2OSwgMTU5MiwgMCwgNDIxNTIsIDc4NDk4LCA0MTA0OCwgMCwgODI5LCAwLCA5MjQwNiwgMTk5NTAsIDAsIAotICAgIDEyODIxNywgNjYxNiwgMCwgMTE4ODc1LCAxMDk1MywgMzkxLCAwLCA2OTc4NSwgNDgyLCA0MjI5NiwgMTE1ODgsIDAsIAotICAgIDQzNjA2LCAwLCA2ODM5NywgNjYzNzAsIDc0NTA2LCA0MjMzNSwgMCwgMCwgMCwgNzUzOCwgNTMxNSwgMTIwNjQ0LCA0MjQ5MSwgCi0gICAgMCwgNDIwNjEsIDEyODA4OCwgNDU3NiwgMCwgNjg0MTcsIDQzODA5LCA0Mjc3LCAwLCA0MDM5LCA2NDQ3MiwgNDIzMzgsIAotICAgIDM2OCwgNDIwNTgsIDM5NjAsIDExMDQzLCAxMTMzNywgNzgyMDksIDkxNzgyMCwgNjM5ODksIDM5NTgsIDEyMTMyLCAxODQ5LCAKLSAgICAwLCA5OTIxLCA0MjQ1MSwgNDI1MywgNDExNDcsIDQyMDY0LCAxMTk1OSwgNDI0MDQsIDQxMTYwLCAwLCAzNjE4LCA3ODMzOCwgCi0gICAgMCwgNDMzMDAsIDUxNTYsIDkyNjI5LCAwLCA5MjksIDY4MjcsIDQyMDM1LCA0MjQzNywgMTU1NSwgMCwgODY5MSwgNjY0MzUsIAotICAgIDAsIDQxNjYyLCAwLCAwLCAwLCAwLCAwLCA0NTc4LCA2NDUxMywgNDE2NjQsIDAsIDQyNTc4LCAxMjg3OTQsIDQxNjYxLCAKLSAgICA3ODcxNSwgNDMyNjcsIDkzNTYsIDAsIDAsIDAsIDEyODYsIDEwMTY2LCAwLCAwLCA2NDcwNywgMCwgNDI0NzYsIDc3MzAsIDAsIAotICAgIDEyODUyMiwgNDI0ODMsIDAsIDAsIDQyMzI0LCA0MjI5MSwgMTAwMjAsIDQzMzU5LCAwLCA2NjQxLCA1MjUsIDQxNjI3LCAKLSAgICA5MTc5MjMsIDg3NjMsIDEyODMwNCwgNDE2MjgsIDUzMywgMTE5MzEsIDY1MjI1LCA4MzIxLCA0MjUwNCwgNDI1ODEsIDAsIAotICAgIDY5MTUsIDQyMzEwLCA0Mzc3LCA4NTU5LCAwLCAxMjAyMzQsIDAsIDEzMTkzLCA2NDM1MCwgMTE2NjYsIDg2NzksIDQxOTI0LCAKLSAgICAxNTc2LCA3NzM1LCA5MjM5OCwgMCwgNzM4NDAsIDAsIDExMzc0LCA3ODA0MywgMTA4ODksIDQzNDYxLCA3NzU3LCA0MjQ2MiwgCi0gICAgMTIwMjI2LCAxMDAyOSwgNjY0OTMsIDI3MTgsIDQxNjgsIDczODQyLCAxMzMwOCwgMTIwMTEyLCAwLCAxMTc5LCA0NDQwLCAwLCAKLSAgICA3Nzk0OCwgMzYzLCAxMTAxNSwgNzc5NDcsIDc3OTQ0LCA2NDI5NiwgMTI3MDkwLCA2NjY5MiwgMTIwODI2LCAwLCA2NjQ5MiwgCi0gICAgNjU5MywgNjQ2MjUsIDQxOTYzLCA5MjE3NywgMTE5MzI5LCAwLCAxMDAxMywgNjQ0MzQsIDkyNTIwLCAxMjcwOTUsIDk0OTIsIAotICAgIDExNzgyLCA2NDM4MiwgMTI4MzMsIDc3ODMwLCAwLCAxMjk3LCA0MTYzMCwgNjMwLCAxMjcwOTQsIDAsIDEyMDc3NCwgCi0gICAgOTI0NjUsIDEwNDMsIDQzNjUyLCA2NjIyMywgMTAwOTAsIDAsIDEyODY2NCwgMzEzLCA5MTc1NjMsIDQxODgxLCAwLCAKLSAgICA0MjMxMSwgNzQ0NSwgMCwgNTc1MCwgMTA3NTksIDk0MTksIDU1MjIyLCA5NDA1LCAxMTI2OCwgNDI5MTksIDkzOTgsIDg1MjYsIAotICAgIDkzOTksIDk0MjIsIDAsIDY2NDk1LCAwLCAwLCAxMjcyMzksIDQxNzE4LCAxMDcwNywgMTYwMywgMCwgMTE5MDAzLCAwLCAKLSAgICA2MzEsIDc3OTUyLCA2OTcwMywgMTMxNjEsIDY1MjcyLCAwLCAxMDU0NiwgNzQyMTAsIDc4MTAxLCAxMTYwMCwgNzc5NjEsIAotICAgIDI3OTcsIDczODIxLCA0MjQyNywgMzA2LCA3MTQsIDMwNTgsIDQyMzgxLCA3Nzk2MiwgMTI3MDgwLCAxMjM1MSwgNDIzOTUsIAotICAgIDAsIDExNjA3LCAwLCA0MjI4MiwgNzc5NzEsIDc3OTY3LCA5MTU3LCA3Mzc2NSwgNjYzNjQsIDQyNDMzLCA3Nzk2NCwgNzYwMywgCi0gICAgMTI4MDMsIDE4MCwgNDIxNDEsIDAsIDEyMDYxMiwgNjY0OTQsIDEyNjc0LCA4MjQ0LCAzNjIsIDkyNDM5LCAwLCA4MDM3LCAKLSAgICA0Mzc3NywgMTE1MzUsIDAsIDc0ODQ1LCA1MTg1LCA3MTY1LCA1NTIxLCAxMDMzNCwgMjA5MywgNzc5ODMsIDEwMzAyLCAKLSAgICAxMjgxMTIsIDEwMTA0LCAxMDI3LCA1MTgxLCAwLCAwLCAxMDUyMywgMTQ0NiwgNDIzMjAsIDQxNjQ2LCA5OTEsIDUxODksIAotICAgIDQyNDcyLCA0MTY0NywgMTIwMTA1LCAxNzIyLCA1NTgxLCA3Nzk3OSwgMzQwNSwgMCwgMTk0NjQ0LCA1NTIzLCAwLCA0MjYyMCwgCi0gICAgOTI0NDcsIDAsIDk1NDksIDAsIDEwNTQ5LCA1NTI4MiwgOTY2MSwgNDM2ODIsIDAsIDc3OTEwLCAxMjAwMjYsIDc4NzA4LCAwLCAKLSAgICA3NzkxMSwgMCwgNDE5OTEsIDAsIDAsIDc2MzAsIDk4NDYsIDc2ODQsIDEwMzUwLCAwLCAxMTc0LCA3Nzk4MSwgNDI3MzMsIAotICAgIDc3OTc4LCA3Nzk4MCwgNjY0ODUsIDc3OTc3LCA0MjI3NywgNzc5NzQsIDQyNDU2LCA2NTY2NywgMTI3MDM3LCAxMjMzMCwgCi0gICAgMTI4MjcyLCAwLCA0MjQxNywgNDIzODMsIDAsIDQxMzQ0LCA2MjkzLCAwLCA2NjI1MiwgNzc5ODQsIDc0NDQzLCAwLCAKLSAgICAxMDIwOSwgODMxMywgNDE5NSwgNzQ0MzUsIDEzMTYsIDY2NjkwLCAxMjAwMzIsIDYzMzIsIDY0ODk0LCAwLCA2NTg3MSwgCi0gICAgNzgwNjAsIDE3MzYsIDAsIDM5MDEsIDEyMjI4LCAxMjAxNTEsIDY1MjAwLCAzMzgzLCAxMDQ0NiwgNzg4NDEsIDY5MywgCi0gICAgOTEzMCwgMzE0LCA2NDE0OSwgNDI0MjAsIDExOTQ5LCAwLCAxMjAxNTIsIDExMDI2LCAwLCA1MzMyLCA2OTQwLCA2NDE1NCwgCi0gICAgMTI2MzUsIDEyNzAwNywgNDI3MDYsIDE3NTEsIDI3MywgODE2NSwgMTMxNjYsIDEyMDc2MywgNzg4NDAsIDAsIDEyODI0LCAwLCAKLSAgICA0NTI4LCA1MzIwLCA2MzAxLCA0MzY2MiwgNjEzMywgOTMzOSwgOTQ2MywgNDIzNDYsIDEwOTIyLCA2NDU2MCwgMzc1NywgMCwgCi0gICAgMCwgMCwgNjU4NjksIDczNzYwLCAyNTY5LCAwLCAyMzI2LCA2NTc0MCwgMjU2NSwgNDI0NTksIDc1OTYsIDc5MjEsIDAsIAotICAgIDc0MDk1LCAxMjc5ODEsIDQxODQ4LCAyNTY3LCA2NjAwNiwgMCwgNDA0NCwgOTI2NDYsIDAsIDEyMjMzLCAwLCAxMDIzLCAKLSAgICA0NzQsIDAsIDExOTgxOCwgMCwgMCwgNDI0ODcsIDY1NTU2LCAwLCAwLCA0MjI5NSwgMCwgMCwgMCwgOTI1MTgsIDk4MzUsIAotICAgIDY2NDk5LCAwLCA1NDE3LCAxMjI3NSwgMTA4OTUsIDAsIDI3NCwgMCwgMTg1OCwgMCwgMCwgNTUyNTEsIDEwMTE4LCAzMTMzLCAKLSAgICAxMjgwMDgsIDczNzk1LCAwLCA5NjEwLCA4MDY4LCA4MTk3LCAwLCA2OTksIDAsIDQxNjY1LCA1ODY4LCAwLCA5MjY5NSwgCi0gICAgNDIxODIsIDc1ODEsIDE5OTQwLCA0MzY2OCwgNDE2NjcsIDEyODA1NywgMCwgMTkyMywgNjU1ODMsIDY1ODAyLCAwLCAKLSAgICA2NDU5NywgNDM0NDQsIDExOTE4NCwgOTIxOTcsIDAsIDY0NjQsIDcwMzYsIDI5OTYsIDE5MzcsIDAsIDAsIDQxODM1LCAKLSAgICA0MDQ3LCA0MTg0MiwgMCwgNjQxMDcsIDAsIDAsIDExMDE3LCAwLCAwLCAyOTMsIDc3OTY2LCA5MjE2OSwgNjQ3OTEsIAotICAgIDQxODI3LCA0MjQ2NiwgNDM0MjIsIDEwNTc5LCA4NTYwLCAwLCA2NTQxMywgNzc5NjMsIDQ4MDMsIDEyOTY0LCAxNzM5LCAKLSAgICAxOTQxLCAzOTAwLCAwLCAxNzEzLCA3Nzk2OSwgMCwgNzM5NTcsIDExNDA3LCA0MjQ0MSwgNDE5NzEsIDYyOTcsIDEyMDA5OCwgCi0gICAgNjQxMDUsIDEyODA4MCwgNDI0ODEsIDExNzE2LCA2NjQ3MywgNzE3OSwgNDIyODksIDAsIDY0MTAzLCA5NjksIDAsIDkzNTIsIAotICAgIDAsIDYxNjUsIDY0MTAwLCAwLCA2NjMyLCA3Mzg2MSwgNDI0MDIsIDc0MzI3LCA3ODA2LCAwLCA4OTE0LCAwLCAwLCAzMTgzLCAKKyAgICAxMTkzNjEsIDk4MzMwOCwgNDMxMDYsIDUwMjksIDY1MzA5LCAxNTgwLCAzNTk4LCA2ODQyNCwgNDEwNzAsIDc3OTAzLCAwLCAKKyAgICAzNDQwLCA3ODIxNSwgMTU2MiwgMTI4NjU2LCAxMjcxNzUsIDExOTM1OCwgMTcxNiwgOTgzNDE0LCAxMDYwMCwgOTE3ODY3LCAKKyAgICA2MjAsIDQxMDAxLCA2MDI4LCAwLCA0Mjg5MiwgMCwgNzQ4MjIsIDUwMjQsIDEyMDgyOSwgNDEwMDMsIDAsIDUwMjUsIAorICAgIDEyODI2OSwgMCwgMCwgMTE5MzI4LCAwLCA2NTU1NywgMCwgNzQ1NDEsIDk4MzMzMSwgMTE1OTksIDEyODIwOSwgMTE2MDIsIAorICAgIDYyNDMsIDExNTc0LCAxMTU4MSwgMTE1OTcsIDExNTk4LCA2MjUzLCA2MTA1LCAxMTU4NCwgNzQxOTUsIDExNTY5LCA2NTI3NSwgCisgICAgODkwNiwgMTI3MDk2LCA1NzU1LCAyNjM2LCAwLCAxMDgxNSwgMTE2MTksIDc4NzE3LCA0MTU0MCwgNzgxNSwgMTE2MTYsIAorICAgIDY5NzksIDEyMDgwLCA3NzIxLCAxMTYwNCwgNzg2OSwgMTU5MiwgMCwgNDIxNTIsIDc4NDk4LCA0MTA0OCwgMCwgODI5LCAwLCAKKyAgICA5MjQwNiwgMTk5NTAsIDAsIDEyODIxNywgNjYxNiwgMCwgMTE4ODc1LCAxMDk1MywgMzkxLCAwLCA2OTc4NSwgNDgyLCAKKyAgICA0MjI5NiwgMTE1ODgsIDAsIDQzNjA2LCAwLCA2ODM5NywgNjYzNzAsIDc0NTA2LCA0MjMzNSwgMCwgMCwgMCwgNzUzOCwgCisgICAgNTMxNSwgMTIwNjQ0LCA0MjQ5MSwgMCwgNDIwNjEsIDEyODA4OCwgNDU3NiwgMCwgNjg0MTcsIDQzODA5LCA0Mjc3LCAwLCAKKyAgICA0MDM5LCA2NDQ3MiwgNDIzMzgsIDM2OCwgNDIwNTgsIDM5NjAsIDExMDQzLCAxMTMzNywgNzgyMDksIDkxNzgyMCwgNjM5ODksIAorICAgIDM5NTgsIDEyMTMyLCAxODQ5LCAwLCA5OTIxLCA0MjQ1MSwgNDI1MywgNDExNDcsIDQyMDY0LCAxMTk1OSwgNDI0MDQsIAorICAgIDQxMTYwLCAwLCAzNjE4LCA3ODMzOCwgMCwgNDMzMDAsIDUxNTYsIDkyNjI5LCAwLCA5MjksIDY4MjcsIDQyMDM1LCA0MjQzNywgCisgICAgMTU1NSwgMCwgODY5MSwgNjY0MzUsIDAsIDQxNjYyLCAwLCAwLCAwLCAwLCAwLCA0NTc4LCA2NDUxMywgNDE2NjQsIDAsIAorICAgIDQyNTc4LCAxMjg3OTQsIDQxNjYxLCA3ODcxNSwgNDMyNjcsIDkzNTYsIDAsIDAsIDAsIDEyODYsIDEwMTY2LCAwLCAwLCAKKyAgICA2NDcwNywgMCwgNDI0NzYsIDc3MzAsIDAsIDEyODUyMiwgNDI0ODMsIDAsIDAsIDQyMzI0LCA0MjI5MSwgMTAwMjAsIAorICAgIDQzMzU5LCAwLCA2NjQxLCA1MjUsIDQxNjI3LCA5MTc5MjMsIDg3NjMsIDEyODMwNCwgNDE2MjgsIDUzMywgMTE5MzEsIAorICAgIDY1MjI1LCA4MzIxLCA0MjUwNCwgNDI1ODEsIDAsIDY5MTUsIDQyMzEwLCA0Mzc3LCA4NTU5LCAwLCAxMjAyMzQsIDAsIAorICAgIDEzMTkzLCA2NDM1MCwgMTE2NjYsIDg2NzksIDQxOTI0LCAxNTc2LCA3NzM1LCA5MjM5OCwgMCwgNzM4NDAsIDAsIDExMzc0LCAKKyAgICA3ODA0MywgMTA4ODksIDQzNDYxLCA3NzU3LCA0MjQ2MiwgMTIwMjI2LCAxMDAyOSwgNjY0OTMsIDI3MTgsIDQxNjgsIAorICAgIDczODQyLCAxMzMwOCwgMTIwMTEyLCAwLCAxMTc5LCA0NDQwLCAwLCA3Nzk0OCwgMzYzLCAxMTAxNSwgNzc5NDcsIDc3OTQ0LCAKKyAgICA2NDI5NiwgMTI3MDkwLCA2NjY5MiwgMTIwODI2LCAwLCA2NjQ5MiwgNjU5MywgNjQ2MjUsIDQxOTYzLCA5MjE3NywgCisgICAgMTE5MzI5LCAwLCAxMDAxMywgNjQ0MzQsIDkyNTIwLCAxMjcwOTUsIDk0OTIsIDExNzgyLCA2NDM4MiwgMTI4MzMsIDc3ODMwLCAKKyAgICAwLCAxMjk3LCA0MTYzMCwgNjMwLCAxMjcwOTQsIDAsIDEyMDc3NCwgOTI0NjUsIDEwNDMsIDQzNjUyLCA2NjIyMywgMTAwOTAsIAorICAgIDAsIDEyODY2NCwgMzEzLCA5MTc1NjMsIDQxODgxLCAwLCA0MjMxMSwgNzQ0NSwgMCwgNTc1MCwgMTA3NTksIDk0MTksIAorICAgIDU1MjIyLCA5NDA1LCAxMTI2OCwgNDI5MTksIDkzOTgsIDg1MjYsIDkzOTksIDk0MjIsIDAsIDY2NDk1LCAwLCAwLCAKKyAgICAxMjcyMzksIDQxNzE4LCAxMDcwNywgMTYwMywgMCwgMTE5MDAzLCAwLCA2MzEsIDc3OTUyLCA2OTcwMywgMTMxNjEsIAorICAgIDY1MjcyLCAwLCAxMDU0NiwgNzQyMTAsIDc4MTAxLCAxMTYwMCwgNzc5NjEsIDI3OTcsIDczODIxLCA0MjQyNywgMzA2LCAKKyAgICA3MTQsIDMwNTgsIDQyMzgxLCA3Nzk2MiwgMTI3MDgwLCAxMjM1MSwgNDIzOTUsIDAsIDExNjA3LCAwLCA0MjI4MiwgNzc5NzEsIAorICAgIDc3OTY3LCA5MTU3LCA3Mzc2NSwgNjYzNjQsIDQyNDMzLCA3Nzk2NCwgNzYwMywgMTI4MDMsIDE4MCwgNDIxNDEsIDAsIAorICAgIDEyMDYxMiwgNjY0OTQsIDEyNjc0LCA4MjQ0LCAzNjIsIDkyNDM5LCAwLCA4MDM3LCA0Mzc3NywgMTE1MzUsIDAsIDc0ODQ1LCAKKyAgICA1MTg1LCA3MTY1LCA1NTIxLCAxMDMzNCwgMjA5MywgNzc5ODMsIDEwMzAyLCAxMjgxMTIsIDEwMTA0LCAxMDI3LCA1MTgxLCAKKyAgICAwLCAwLCAxMDUyMywgMTQ0NiwgNDIzMjAsIDQxNjQ2LCA5OTEsIDUxODksIDQyNDcyLCA0MTY0NywgMTIwMTA1LCAxNzIyLCAKKyAgICA1NTgxLCA3Nzk3OSwgMzQwNSwgMCwgMTk0NjQ0LCA1NTIzLCAwLCA0MjYyMCwgOTI0NDcsIDAsIDk1NDksIDAsIDEwNTQ5LCAKKyAgICA1NTI4MiwgOTY2MSwgNDM2ODIsIDAsIDc3OTEwLCAxMjAwMjYsIDc4NzA4LCAwLCA3NzkxMSwgMCwgNDE5OTEsIDk4MzYyOCwgCisgICAgMCwgNzYzMCwgOTg0NiwgNzY4NCwgMTAzNTAsIDAsIDExNzQsIDc3OTgxLCA0MjczMywgNzc5NzgsIDc3OTgwLCA2NjQ4NSwgCisgICAgNzc5NzcsIDQyMjc3LCA3Nzk3NCwgNDI0NTYsIDY1NjY3LCAxMjcwMzcsIDEyMzMwLCAxMjgyNzIsIDAsIDQyNDE3LCAKKyAgICA0MjM4MywgMCwgNDEzNDQsIDYyOTMsIDAsIDY2MjUyLCA3Nzk4NCwgNzQ0NDMsIDAsIDEwMjA5LCA4MzEzLCA0MTk1LCAKKyAgICA3NDQzNSwgMTMxNiwgNjY2OTAsIDEyMDAzMiwgNjMzMiwgNjQ4OTQsIDAsIDY1ODcxLCA3ODA2MCwgMTczNiwgOTgzNDE5LCAKKyAgICAzOTAxLCAxMjIyOCwgMTIwMTUxLCA2NTIwMCwgMzM4MywgMTA0NDYsIDc4ODQxLCA2OTMsIDkxMzAsIDMxNCwgNjQxNDksIAorICAgIDQyNDIwLCAxMTk0OSwgMCwgMTIwMTUyLCAxMTAyNiwgMCwgNTMzMiwgNjk0MCwgNjQxNTQsIDEyNjM1LCAxMjcwMDcsIAorICAgIDQyNzA2LCAxNzUxLCAyNzMsIDgxNjUsIDEzMTY2LCAxMjA3NjMsIDc4ODQwLCAwLCAxMjgyNCwgMCwgNDUyOCwgNTMyMCwgCisgICAgNjMwMSwgNDM2NjIsIDYxMzMsIDkzMzksIDk0NjMsIDQyMzQ2LCAxMDkyMiwgNjQ1NjAsIDM3NTcsIDAsIDAsIDAsIDY1ODY5LCAKKyAgICA3Mzc2MCwgMjU2OSwgMCwgMjMyNiwgNjU3NDAsIDI1NjUsIDQyNDU5LCA3NTk2LCA3OTIxLCAwLCA3NDA5NSwgMTI3OTgxLCAKKyAgICA0MTg0OCwgMjU2NywgNjYwMDYsIDAsIDQwNDQsIDkyNjQ2LCAwLCAxMjIzMywgOTgzNjA2LCAxMDIzLCA0NzQsIDAsIAorICAgIDExOTgxOCwgMCwgMCwgNDI0ODcsIDY1NTU2LCAwLCAwLCA0MjI5NSwgMCwgMCwgMCwgOTI1MTgsIDk4MzUsIDY2NDk5LCAwLCAKKyAgICA1NDE3LCAxMjI3NSwgMTA4OTUsIDAsIDI3NCwgMCwgMTg1OCwgMCwgMCwgNTUyNTEsIDEwMTE4LCAzMTMzLCAxMjgwMDgsIAorICAgIDczNzk1LCAwLCA5NjEwLCA4MDY4LCA4MTk3LCAwLCA2OTksIDAsIDQxNjY1LCA1ODY4LCAwLCA5MjY5NSwgNDIxODIsIAorICAgIDc1ODEsIDE5OTQwLCA0MzY2OCwgNDE2NjcsIDEyODA1NywgMCwgMTkyMywgNjU1ODMsIDY1ODAyLCAwLCA2NDU5NywgCisgICAgNDM0NDQsIDExOTE4NCwgOTIxOTcsIDAsIDY0NjQsIDcwMzYsIDI5OTYsIDE5MzcsIDk4MzQ4NiwgMCwgNDE4MzUsIDQwNDcsIAorICAgIDQxODQyLCAwLCA2NDEwNywgMCwgMCwgMTEwMTcsIDAsIDAsIDI5MywgNzc5NjYsIDkyMTY5LCA2NDc5MSwgNDE4MjcsIAorICAgIDQyNDY2LCA0MzQyMiwgMTA1NzksIDg1NjAsIDAsIDY1NDEzLCA3Nzk2MywgNDgwMywgMTI5NjQsIDE3MzksIDE5NDEsIAorICAgIDM5MDAsIDAsIDE3MTMsIDc3OTY5LCAwLCA3Mzk1NywgMTE0MDcsIDQyNDQxLCA0MTk3MSwgNjI5NywgMTIwMDk4LCA2NDEwNSwgCisgICAgMTI4MDgwLCA0MjQ4MSwgMTE3MTYsIDY2NDczLCA3MTc5LCA0MjI4OSwgMCwgNjQxMDMsIDk2OSwgMCwgOTM1MiwgMCwgCisgICAgNjE2NSwgNjQxMDAsIDAsIDY2MzIsIDczODYxLCA0MjQwMiwgNzQzMjcsIDc4MDYsIDAsIDg5MTQsIDAsIDAsIDMxODMsIAogICAgIDE0MzUsIDY0ODc2LCAyOTY5LCA2MDQ2LCA2NDQ0MSwgNjIwOCwgNjc4NDksIDU3NDYsIDczNzQ5LCAwLCA2NDQxNiwgCiAgICAgNDI0MjIsIDAsIDAsIDcwODIsIDczNzc1LCAzMzgsIDUwNTksIDE5NDcxOSwgMCwgNDIzMjgsIDEwNzY3LCAwLCA4MTE1LCAwLCAKICAgICA3NDc1OCwgMCwgODIyNywgMjA3MywgMTIxOCwgMCwgMCwgNjU4NDgsIDAsIDAsIDAsIDAsIDEyNjk4NywgNDQ4NiwgMCwgMCwgCi0gICAgMCwgMTA5MjUsIDAsIDAsIDAsIDAsIDQyMzA5LCAxMDI1NywgNjUxOTEsIDEwMjczLCAwLCAxMDMwNSwgNDI0NjEsIDAsIAotICAgIDQyMzQ5LCA4ODMyLCA3ODA1MSwgNjQxMjcsIDEwNjQ0LCA0MjY2MiwgNzg4MjgsIDQyMjc4LCA3NDQ1MSwgMTI2OTg4LCAKKyAgICAwLCAxMDkyNSwgMCwgMCwgMCwgOTgzMzMwLCA0MjMwOSwgMTAyNTcsIDY1MTkxLCAxMDI3MywgMCwgMTAzMDUsIDQyNDYxLCAKKyAgICAwLCA0MjM0OSwgODgzMiwgNzgwNTEsIDY0MTI3LCAxMDY0NCwgNDI2NjIsIDc4ODI4LCA0MjI3OCwgNzQ0NTEsIDEyNjk4OCwgCiAgICAgOTE3ODU3LCA3Nzk0LCAwLCA0MjQyOSwgNjM3NywgNDIzMTYsIDExOTAyNiwgMzY2OSwgMzk2OCwgNDI0NjgsIDAsIDY5NjU4LCAKICAgICAwLCA2NTQwMiwgMTE5NTgxLCAwLCAwLCA2NDkzMywgMCwgNDE5NjAsIDY2OTksIDAsIDAsIDEyODM1NCwgNjgyMywgNDIzOTEsIAogICAgIDE1ODgsIDY1NDAwLCA4NDA5LCA3ODIyMywgMTk5NjcsIDY1Mzk4LCA3ODcsIDAsIDkxNzkzOSwgMTI3NzQ0LCA2MTE1LCAKQEAgLTE3OTMwLDI2NiArMTgxNjYsMjY5IEBACiAgICAgNzQ2MDIsIDk5NTUsIDExOTU1NywgNDA1NSwgNDI4MTcsIDAsIDY1MjEyLCAxMTcxNSwgMTIxOTAsIDEyMzE5LCA3ODYzMCwgCiAgICAgMCwgNzg2MzEsIDk1MDIsIDY1NDI3LCAwLCA2NTQyNCwgMTI2MDcsIDAsIDk3MzQsIDY1NDI1LCAwLCAwLCAxMjczNTcsIAogICAgIDc4ODM1LCA5MjQxMCwgMTAxMTIsIDEwODI3LCAwLCA5ODY2LCA3NDUyNywgNjY2NzUsIDAsIDg2MjUsIDY0MzQ2LCAxMTI5MCwgCi0gICAgMTA0NzcsIDAsIDg2MzYsIDAsIDgzMTUsIDY1NDQ0LCAwLCAwLCA3NDU5NSwgNjE1MiwgMCwgMCwgNjYyOSwgMTI4MjUxLCAKLSAgICAxMjAxNzEsIDAsIDc0NTg5LCA0Mzk5MywgMCwgNjk3OTAsIDY0NDM1LCAwLCA0MzY5MCwgMTEwNDYsIDExNDkwLCA0MjczMCwgCi0gICAgNDQ4NSwgMTI3MTA3LCAwLCA2NDkyNiwgMCwgMCwgMCwgNTg2OSwgMTI0MzcsIDQyNzI4LCAwLCA3MDQwLCAzNTg4LCAwLCAKLSAgICAxMjgyNSwgMCwgMCwgMTI3MjUsIDAsIDAsIDc4NjQyLCAyMjMsIDAsIDY5Njc1LCAxMjAxNjYsIDQyNDQ0LCAwLCA2NDQ5OSwgCi0gICAgNjUyNDUsIDAsIDExNzEsIDAsIDY5NzE3LCAwLCAxODA1LCA4NzcyLCA0MzgyMCwgMCwgOTkzMCwgNjUyNDcsIDc4NjE5LCAKLSAgICAxMjAxMTEsIDIzMzgsIDAsIDExODg1MywgMCwgNDI2NzYsIDAsIDY0ODAwLCA2NTIzNiwgNjc2NDQsIDY4MTI2LCAxMjEzLCAKLSAgICAwLCA2NDA3NSwgNzk3LCA2NDA3NCwgODczNCwgNDIxMiwgMCwgNjQzODcsIDQxMTUsIDAsIDUwMDUsIDY0MDcwLCA2NDA3MywgCi0gICAgMTA2NzksIDAsIDc3OTU0LCA5NDAyLCA2NDI3NiwgNDI2LCAwLCAwLCA4MjUxLCAxMDEzNiwgNjU0MzYsIDAsIDIxMjAsIAotICAgIDQzMzAyLCAxMjI0LCAwLCA2NTU3NiwgMTIwMTU4LCAxMDcwMSwgMTc2NCwgMzEwMSwgMTI3ODE1LCAxMjg1OCwgMTIwMTU5LCAKLSAgICAwLCAxMTM3MywgNjM3OCwgMTI3ODU5LCAxMjAxMDMsIDg2NjMsIDkzMTIsIDQxNjQ0LCA0NTM5LCAyMTI5LCAwLCA5MjIyLCAKLSAgICAwLCAwLCA0MjU5LCA5MDkyLCA3NDU2NywgNDE5NjEsIDAsIDEyNzI0LCA2NjM1NywgNDIzMzEsIDY0OTM1LCAwLCAwLCAKLSAgICAxMjkzLCA3OTQ3LCAyMTMyLCAwLCA3NDU5MywgMTIwMzA4LCAyNDU0LCA0MjcxNywgMzYxMywgMTI4ODM3LCAwLCAwLCAKLSAgICA2NTg4OCwgODgxNiwgMTA5NzgsIDEwODQwLCAwLCAxMDY2OCwgMCwgNDMwODcsIDEyNTk1LCAxMjAzMDQsIDAsIDg4MjIsIDAsIAotICAgIDExNTcsIDY0OTAzLCA4NjM4LCAwLCAwLCAwLCAwLCAxMjAzMTksIDgyMzUsIDEyMDMxNiwgNDQwNSwgMTAwODYsIDEyMDI0NywgCi0gICAgMCwgNjkyMTYsIDAsIDY1NDMwLCA3NDAxMywgNjA3OSwgNjgxNywgMTA3NjQsIDEyNzkxMCwgNjQyOTEsIDEyODA1MSwgOTk4LCAKLSAgICAxMjAzMTIsIDExMDYyLCAxMzE3LCA2NDMyNywgMTU1OCwgMCwgMTk5MSwgNzg4MiwgNDIyNTQsIDAsIDQxNzAwLCA1MzAsIDAsIAotICAgIDEwNDI4LCAxMTkzMzUsIDEyMDAyLCAxMTkzMzYsIDU3NDIsIDQzMDc2LCA0NjkyLCA2NDYzMCwgNDE4MjMsIDQwMDcsIAotICAgIDUwMDQsIDExOTMzNCwgNzg5NiwgNzUxLCA2NTk1LCA2NTk2LCAwLCA2NjM3MywgMCwgMCwgNjQ5MDgsIDkyNjkxLCA2MzExLCAKLSAgICAwLCAxMjAwNCwgMTE5MTkyLCAxMjA0OSwgNDMxMDgsIDEyMDMyNiwgMCwgNDE3MDUsIDkyMTg4LCA2NTk4LCAwLCA2NTk5LCAKLSAgICAxMjAzMzQsIDAsIDQyMTQ4LCAxMTg4MjUsIDY2MDI3LCAwLCA2NTk3LCA5NDEyLCA4MzQwLCAxMTgyNCwgNjQ3NDUsIDAsIDAsIAotICAgIDAsIDE5ODgsIDU0MDcsIDY3ODY1LCAyNDMwLCA0MTY3OCwgMCwgMTIwMjQzLCAyMzM2LCAwLCAwLCA3ODg3MSwgMTIwNDQyLCAKLSAgICAwLCAxOTIxLCAxMDk0NywgMTk5MjcsIDAsIDY1NDA2LCAwLCAxOTkxMywgNDI4NCwgMTMyMTcsIDAsIDQzNzg5LCAxMjg0MSwgCi0gICAgOTIyOSwgMTA5NTYsIDQyMjg1LCA0MTY3NCwgMTk5NjQsIDQxNjc5LCA2NTA4NCwgMzUyMSwgMCwgNTc3NCwgODMyNSwgMCwgCi0gICAgNjU0MDMsIDAsIDE4NTQsIDEwNzk0LCAwLCA2NzY2MCwgMCwgMCwgNzgzNTksIDUyODAsIDAsIDQzNDQsIDEyOTA1LCAKLSAgICA2NTQzMywgNjA3NiwgNjQ3OTMsIDQxNjEwLCA3NjgsIDEyMDc0LCA0NDIsIDAsIDY4MTYyLCA2NDA4MSwgMTI5MzQsIAotICAgIDQxNjgyLCA2NTQzMiwgNDE2OTMsIDAsIDYwNzEsIDY1NDM0LCAxMjc0NjcsIDQ4MDQsIDQwNTMsIDAsIDEyNzQ2OSwgCi0gICAgMTk0NjUzLCA0MTY5NiwgNDY3LCA2OTgyMywgMTI3NDYzLCA2OTc5NywgMCwgMCwgODQyMSwgMTI3NDcyLCA2OTY4MiwgCi0gICAgNDM3MDUsIDUwMiwgMCwgNjU0MzEsIDExOTA1NiwgMCwgMTIwNDMsIDEzMDMsIDMxNiwgOTI0NjIsIDIwMjksIDIxMzYsIAotICAgIDExOTI0NiwgMTE1MzMsIDY0MzY1LCA0MzQ4MCwgOTI2MzksIDQ4NjAsIDE5NDY0NSwgMTI3ODc3LCA0MjQ4OCwgMCwgOTU4MywgCi0gICAgMTI4ODQ5LCA1NTQ2LCA4MDE5LCA3Mzg1NiwgMCwgMCwgMCwgNTU0NCwgMjM1NSwgMTIxNTAsIDY1NzI1LCA1NTQzLCAKLSAgICA3Nzk4OSwgNjM3NTEsIDEyMTM3LCA1NTQ4LCA3Nzk4NSwgMCwgNjU3MjcsIDY4Mzg4LCA2NTcyNiwgNjA3NywgMTI4MzUyLCAKLSAgICA2NTQ1MiwgMCwgMTEzMDEsIDc4MDEzLCA3ODAwOCwgNzgwMTAsIDk4NzQsIDc4MDA3LCAwLCAxMzE5LCAzMDUwLCA2NTQxMCwgCi0gICAgMCwgMCwgNzgwMTYsIDc4MDE3LCA0MjgzMCwgNDM5OTYsIDY2NzE2LCAxMjgxMzcsIDQ2OTEsIDkyMjQyLCA5MzQ1LCA2MjEsIAotICAgIDkyNzA5LCAxMjgyMjIsIDAsIDY1NDExLCAwLCA0MTE4MiwgNzM4ODEsIDY1NDA4LCA3Mzg5OSwgNzgwMjQsIDk0NzQsIAotICAgIDEwNTQ1LCAxMTkxMTgsIDEwODg3LCAzNzg2LCA2NTQwOSwgODg5NCwgNDMxNzksIDExOTYxMSwgNzkyMywgMzcxNiwgCi0gICAgOTIzNjMsIDk5OTYsIDg1MDgsIDAsIDcwMTIsIDgxOTUsIDEyNzgzNCwgOTU2NiwgMCwgMzcyMiwgMCwgNDE3MDcsIDg0OTMsIAotICAgIDU0NSwgOTU3NSwgNDEzNzksIDEwMDUwLCAxMjcxOCwgMCwgODg1OSwgNjgyMCwgNzQzNDUsIDY1MTEwLCAxMjA3NDAsIDAsIAotICAgIDAsIDkxMTksIDI3ODcsIDc5MjAsIDExODgyMywgNDAyMSwgMjAxMiwgNzk4NSwgMCwgMTE5NjYzLCAwLCAwLCA3ODAyMSwgCi0gICAgNzgwMjIsIDQxMCwgNzgwMjAsIDE4MDIsIDc4MDE4LCA3NDEwNywgMCwgNDE2NTksIDQxNjcxLCAxODI3LCAwLCA2NDM5NiwgCi0gICAgMTAxMjYsIDEyMTE2LCA0MTY3MywgMTIwMzcwLCAxMTQyMiwgNzgxNDEsIDEyMDM3MywgMzg2MCwgMTIwMzY3LCA2ODQxMiwgCi0gICAgNDEzNDUsIDEyMDM2MiwgMTIwMzYzLCAxMTc0OCwgNDIxNTgsIDc5NDEsIDExMDc2LCA4NzQ5LCAxMjAzNjEsIDIxMDQsIAotICAgIDY0ODU4LCAzNjEsIDEyMDM1NywgODQ1LCAwLCA0MTU2MCwgMTE5NzAsIDQ1NjIsIDkxNzkyMCwgMjkyNiwgOTE3OTE5LCAKLSAgICA0NTY5LCA3NDEzMCwgMCwgNDM0ODcsIDE5NDYzMCwgNjExLCA3NDEyOSwgNjQ4NzEsIDExODg5MSwgNjU2MjksIDAsIAotICAgIDE5NDg1OCwgMCwgMCwgMTI3NTQ1LCAxMjA1NDMsIDAsIDAsIDYyOTEsIDAsIDc4NjM5LCA0MTY2OSwgNzA5NCwgOTE3OTIxLCAKLSAgICAwLCAwLCA3NDA1NCwgMTI3NzU0LCAxOTUwMjksIDAsIDgzOSwgMCwgNzY5NSwgODc2OSwgNjUyNDYsIDQ4MjksIDAsIDQ4NTksIAotICAgIDY0NDY3LCAwLCAwLCAxMTg5OTgsIDcyMDYsIDAsIDY2NDcsIDQzOTg2LCAwLCA2OTc2NiwgMCwgNjQ3NjQsIDQyMTAsIDAsIAotICAgIDEyNzkzNiwgODA0LCAwLCAwLCAxMjI5OCwgMCwgNjY2NTMsIDAsIDY0OTI0LCAxMDA5MSwgNzM5MzEsIDk0NjgsIDc0MjQ1LCAKLSAgICAwLCAwLCA3NDI0NiwgOTI1MDMsIDEyODM5LCA2NDY2OSwgOTIyMDIsIDAsIDEyNzksIDE0MjUsIDYyMjQsIDExOTIyOSwgCi0gICAgMTEwNDksIDAsIDkyNjk3LCA0MzIzOSwgODQ4MiwgOTI0NDAsIDAsIDUwMzIsIDY5Njc3LCAxMTk0MCwgNjc4ODgsIDY2NCwgCi0gICAgMTIwNDM3LCA1MDM0LCAwLCAwLCAxMjc1MjUsIDQyNzAyLCA3Mzg4OCwgMCwgMTMyOTQsIDY3ODczLCA2NDg2OSwgNjAzMiwgCi0gICAgMCwgOTExNSwgNzQzMCwgMTIwMzc3LCAwLCAxMjA4MTksIDY4Mzg3LCAxMjAxNjgsIDczOTEzLCAxMjAxNzAsIDQxMTYxLCAKLSAgICA1NTE4LCA0MTc0LCAxMDk5MywgNDExNjIsIDEyMDE2MCwgNjQ1MjgsIDExNjksIDQzNCwgNDE0MzcsIDE5MDUsIDYwMzQsIAotICAgIDQxMTY0LCA2NDc0NCwgOTUyOCwgMTE4ODY3LCAxMjg4MDAsIDUyNCwgMCwgNzQwMjksIDc4OCwgNzQwMjcsIDAsIDE5NDYzOCwgCi0gICAgMCwgMTY2MywgMTA0MTksIDc0MDI1LCA0MjYzNiwgMCwgNjk3MjUsIDAsIDEyMDY1NiwgMCwgNjc4NzYsIDAsIDAsIDAsIAotICAgIDY3ODk3LCA3NDAzOSwgMCwgMCwgMTEzOTUsIDAsIDExOTEwNywgNDM2MTIsIDY0MzQ0LCAwLCAwLCAxMDg1NSwgNTQ0NSwgCi0gICAgOTM1NSwgMCwgNjUxOTgsIDczOTEsIDg5ODksIDIyMSwgNjU2ODYsIDAsIDAsIDgwMTAsIDcxOTEsIDQ5NjIsIDY5NzcyLCAKLSAgICA4ODU1LCAwLCAwLCA2NDQ2OSwgMTIwNDI2LCAxMDU1NSwgMCwgNDMzMzMsIDkyMjk5LCAwLCAxMjA0MjcsIDEwNDUxLCAwLCAKLSAgICA2NzY1MywgNzI0NSwgMTI0NDMsIDc0NDA1LCA5OTQ3LCAxMjAxNDksIDc4MzE3LCAzODczLCA4MzY3LCAwLCAxMjAxNDYsIAotICAgIDQzNDMzLCA0MzY0OSwgMTE5ODcsIDAsIDAsIDExMDEwLCAxMjcyMywgNzQwNTksIDc0MDYyLCA2MjE3LCA1ODk2LCAwLCAKLSAgICA3NjgyLCA3NDA0OSwgMTQ2MiwgMTAyMzUsIDAsIDAsIDAsIDAsIDAsIDAsIDQyNTk1LCAwLCA3NDQwMiwgMTE4ODYwLCAwLCAKLSAgICAxMjA0MTksIDkyNDk3LCA3NDA1MiwgMCwgMCwgMTIwNTQ5LCAxMTkwODIsIDY0Mjk1LCAxMjA0MTgsIDAsIDY0NzY1LCAKLSAgICA3MzkyMywgMTIwNDE3LCAxMjA2NjIsIDEyMDczMCwgMTk0NzAyLCA2MjE2LCAwLCAxMDc1NSwgOTQ1NSwgMCwgODEyNCwgCi0gICAgMTI3MDQyLCA5NDcwLCA2OTQ0LCAxMjc1NDAsIDAsIDY5NjgwLCAyODI4LCAwLCA1MzEsIDQyNjM4LCAwLCAwLCAwLCAKLSAgICA0MzQyOCwgODIwNCwgMzYxNCwgMjgyNywgOTY5NiwgMCwgMCwgODcyOCwgNDM1NCwgMTA5MDQsIDc4NTYyLCAxOTkzNiwgCi0gICAgNzgzMywgMTIwNjkxLCAwLCA0MjU5OSwgNDI1OTcsIDQyNzA5LCAxMjA0MDksIDEyNzA0NCwgMCwgODUzNywgMCwgMCwgMCwgCi0gICAgMCwgMCwgNDExOTksIDEwMTIxLCAyMDI4LCAwLCAwLCA2OTcxNSwgMCwgMzA2MiwgMCwgNzQ0NDcsIDEyNjA4LCAwLCAKLSAgICA2NjQ0MCwgNzU0NSwgOTcwMCwgMTI1ODAsIDAsIDEyMDc3NywgMTIwNTAyLCA0MTE1NSwgMCwgNzQwNzEsIDAsIDAsIAotICAgIDEyNzEzLCAwLCAwLCAwLCA3ODc3MiwgMCwgMTczNCwgMCwgMCwgMTI3MDQwLCA2NDU5NCwgMjQ1NiwgMjMxLCAwLCA3NDE2NywgCi0gICAgNTQyLCAwLCAxMTg3ODYsIDAsIDAsIDEyMzAsIDAsIDAsIDM1OTcsIDQ0NDYsIDEwNTg0LCA3NDIzNSwgOTIyMTUsIDQwMzcsIAotICAgIDEyNzkzOCwgODM1MiwgMCwgNTY4NywgMCwgNjQ1MTUsIDAsIDE5NDgwMSwgNTUyNjUsIDY3ODQ2LCA3ODQzNCwgOTcwNCwgMCwgCi0gICAgMCwgNzQyODQsIDEyODI4NSwgMCwgODY2MCwgMCwgMCwgMCwgNzg3NzMsIDc0NDgyLCA0NDgzLCAxNzA5LCA2OTcyMSwgCi0gICAgOTkwOSwgNjA4MCwgMCwgMTIwMzU4LCAxNzQ2LCAxMzE1LCA4NjY3LCAwLCAwLCAxMzE0MCwgNjU4OTksIDEwNjA0LCAwLCAKLSAgICA0NDgwLCAxMTI2NiwgMTI4MTUyLCAxMjI2LCA2OTMwLCAwLCAwLCA2MzYwLCAxMDg5NywgNDEyMzAsIDYwNSwgMCwgNzQ3ODUsIAotICAgIDEyMDM1NiwgMCwgMCwgNDE1MDAsIDAsIDMxMSwgMTE0NTMsIDYyMjEsIDEwNjA4LCA2NDk0MywgNzQyODAsIDEwODc3LCAKLSAgICAxMTg4NjgsIDY0ODg1LCA3NDI3MiwgMCwgMCwgMCwgMTIwNzM2LCA3NDMxMiwgMzQ1LCAwLCA3NDQ1NiwgNjQ2MDYsIDk5MTcsIAotICAgIDAsIDkyMjMxLCA1MDM3LCAwLCAxNzc2LCA4NDIyLCAwLCAxMTg4MTQsIDQxNTA4LCA0MTIwMSwgMzIzLCA0MzMyOCwgMCwgCi0gICAgNDI2OTgsIDEyOTUsIDAsIDQ2MjUsIDAsIDQ2MzAsIDEzMTE3LCAwLCAxMjg3NzIsIDY1MTIzLCAxMTI5MywgMjY2OCwgCi0gICAgMTEyODgsIDAsIDQyNjQwLCA2NTY2NiwgMjUxOSwgOTIzNjksIDY1NDIwLCA5MjQ3OSwgMCwgNDI1MiwgNTA0OSwgNDI2NTksIAotICAgIDExOTAxMSwgNzA2LCA3NzU0LCAxMDg1NCwgODczOCwgMCwgNjU0MTksIDAsIDAsIDY0OSwgNjU0MjEsIDAsIDY2NzAyLCAwLCAKLSAgICAxMjY3MCwgMTAxMywgMCwgNjQ5MTksIDcwNSwgMCwgNjU0MjIsIDEyNzgwMywgMTE4MywgMCwgNzAxNywgNDI4NTIsIDAsIAotICAgIDgxNTcsIDk3MzYsIDY0NTAzLCA2NTQxOCwgMCwgMCwgNzQwMzUsIDAsIDExOTEzLCA3Mzg3NCwgNjY5NiwgMCwgODkyMCwgMCwgCi0gICAgMCwgNzk2MiwgMTIyMTEsIDk4MzcsIDIwNTEsIDY2MjI3LCAwLCA0MTg0LCAwLCAwLCAxMDE3NywgNzM3NzcsIDE4NTcsIDAsIAotICAgIDQ2MjYsIDg0NjQsIDg0NzIsIDAsIDQ2MjksIDg0OTksIDc4MzIxLCA3ODMyMiwgNDYyNCwgNzgxOCwgMTE5MTczLCAwLCAwLCAKLSAgICA3ODA1LCAwLCAwLCA2OTM1LCA5MjI5MiwgNzgzMjUsIDc4MzI2LCA3ODMyMywgNDMzMjcsIDQzOTg5LCAxMTkwNDYsIDg0OTIsIAotICAgIDgyNTAsIDg0NTksIDAsIDg0OTcsIDg0OTYsIDAsIDAsIDc4MzM2LCA3ODMzOSwgOTU0MywgNzgzMzUsIDc4MzMyLCA3NzgzMiwgCi0gICAgNjU4NDksIDc3ODMxLCAwLCAwLCAxMjQ1MSwgMCwgODY4NCwgMCwgNjEwMiwgMCwgNTI5OCwgMCwgNTI5NCwgMCwgMCwgMCwgCi0gICAgMTk1MDYyLCA5OTQ5LCAxMTk4MjYsIDQzNjE3LCAxMTkyMTUsIDAsIDEyMDczLCAwLCAwLCA3Nzg2MywgMTMxMDgsIAotICAgIDEyMDYxNywgNzQzOTcsIDQxNDY4LCAwLCAwLCA1MjkyLCA1NTI3MiwgMCwgMTkzOSwgNTMwMiwgMzk3MCwgOTE3ODc5LCAKLSAgICAxMjQ1NSwgMTc5MywgMCwgMCwgMCwgNjY0MywgOTI0NzcsIDY1MjYzLCAwLCA3ODMzMCwgNDEyOTMsIDc4MzI4LCA2NTkyMywgCi0gICAgMCwgMTMyMTksIDk1NjksIDAsIDc0MzgzLCAwLCAwLCAwLCA1NTAwLCA4ODEzLCAwLCAwLCA3NDU2NiwgNTMyMiwgMCwgCi0gICAgNzgzNDAsIDQzNjMxLCA1MzI0LCA2NjQ0MywgMzc4NCwgNDE2MTQsIDY1MjY5LCA2MjMwLCA3ODM0OSwgNzgzNDUsIDQzMzI0LCAKLSAgICAzMzYwLCA3ODM0NCwgMTE1MjMsIDAsIDkyNDg4LCA5OTI2LCA3MTk3LCAwLCA2ODQyOSwgNDI4OTQsIDQxODIxLCAxMjQ5LCAKLSAgICA3ODM2MCwgNzgzNjEsIDc4MzU2LCA3ODM1OCwgNzgzNTMsIDY0ODk5LCA2NDc2MywgNDExNDksIDQxODA3LCA0MzE2MiwgCi0gICAgNDE4MTUsIDQxMTUwLCAwLCAxMDU3MSwgMTAwOTYsIDAsIDAsIDc4MDc0LCA2OTQ3LCA0MTE1MiwgODg3LCA5MjQ5LCA2NTY1LCAKLSAgICA3ODUxMCwgNDE5OTAsIDc4NTA5LCA0MTgxMSwgNzQ0NjYsIDAsIDY2NzAsIDc3ODgyLCAwLCAwLCA0MzA5MiwgNDMzMjUsIDAsIAotICAgIDEwMTY4LCAwLCA5NzgxLCAxMjg2NTUsIDkxOTAsIDAsIDk2NjYsIDgyNjksIDY1OTQ0LCA3NDAwNSwgMTMwMTksIDExNjcwLCAKLSAgICAxMjczODMsIDMxNSwgMTI4MTMsIDAsIDc4NDMyLCA3ODI1NiwgNzgzNTEsIDc4MzUyLCAwLCAwLCAwLCAwLCAxMzc4LCAKLSAgICA5NTA5LCAwLCAwLCA3NDQ3NSwgMzA2NiwgOTIyMjAsIDY3ODQ3LCAwLCA5MjM1NSwgMCwgNzgzNjUsIDg3ODcsIDEyMDM3OSwgCi0gICAgMTk0NjE2LCA0MTYxOCwgMTk0NjE1LCA3ODI2MSwgMTk0NjE0LCAwLCA2NDY1MiwgMCwgMTk0NjEyLCAwLCA3ODM2NiwgCi0gICAgNDIwODgsIDAsIDE5NTA2MSwgNzE3NiwgMTI4ODMzLCAxMDEzNywgNjEyMSwgMTA5OTUsIDc4MjU5LCA3NDUzNCwgODExOSwgCi0gICAgNjQ4NzQsIDkxNzgxNiwgMTI3MTk5LCAxOTQ5MzksIDAsIDc0NTI1LCAwLCAwLCAxMjkzMCwgMTM5NCwgNzQ1MTQsIDAsIAotICAgIDc0NTE1LCAwLCAxMTg4MDQsIDI5OTgsIDk1MjcsIDEyMDY1OSwgNjUxOTAsIDEyOTc3LCA0MjA5MCwgMTE5MTY1LCAwLCAKLSAgICAxMTkxMDAsIDQxMjM2LCA5MjIzNSwgNDIwMDUsIDQyMDAzLCA0MTIzNywgNTg0OCwgMCwgMCwgMzY3MCwgMTI4NjU3LCAKLSAgICAxOTQ2MDAsIDAsIDAsIDc4OTAsIDAsIDExMjk4LCA0MzMxNSwgMCwgNjIyOSwgMTU5MywgMCwgMCwgNjE5LCA0NjM1LCAKLSAgICA2NTA4MCwgMCwgMTI4MDAyLCA0MTIwLCA2NTMzNywgNjUzMzYsIDAsIDExODA4LCAxMTkyMTQsIDc0MTE1LCA5MzY2LCAKLSAgICA0Mjc5MCwgNDIwMDYsIDAsIDY1MzI3LCA2NTMyNiwgNjUzMjUsIDEwNzU3LCAxNTA3LCA0MjIxNiwgNjUzMjEsIDY1MzIwLCAKLSAgICA2NTMzNSwgNjUzMzQsIDY1MzMzLCA2NTMzMiwgNjUzMzEsIDQyMDU5LCA2NTMyOSwgNDI2ODksIDkyNDI3LCA5MTI4LCAKLSAgICAxMTg4ODUsIDQyMDczLCA2Nzg1LCA2NDU5MCwgMCwgNDM3MSwgNzE5NiwgNjUzMTgsIDIwMzUsIDY1MzE2LCA0MTA2LCAKLSAgICA2NTMxNCwgNjUzMTMsIDQyMDc0LCAxMjc4NDcsIDQxMjI4LCAwLCA2NTYwOSwgNDEyNDEsIDc5MDMsIDQxMjM5LCA0MzUzMywgCi0gICAgNzg0NTksIDcxODksIDAsIDAsIDAsIDEyMzU3LCA0MjgwMiwgNzg0NTAsIDg0ODcsIDkxMzEsIDAsIDQ2MTUsIDEyNjk1LCAKLSAgICAxMjc3NTIsIDAsIDEyMTc1LCAwLCA2NDUzNSwgMCwgNzgwOSwgMCwgMCwgNTYyLCAxMjE2OSwgNjU5MCwgNjk3NjIsIAotICAgIDY2NDU1LCA2NDczOCwgMzIxOSwgNjg2NTQsIDAsIDAsIDEwMzcsIDAsIDIwMjUsIDEyODI2MywgMTMwOTgsIDc4NDQyLCAKLSAgICAxMDYzNywgNDU2OCwgNTQ5LCAxNTcwLCAwLCAyODM1LCAwLCAxMDYyNCwgNDM2MjMsIDExMDcyLCAxMjcxOTEsIDAsIDAsIAotICAgIDEyNjA2LCA3ODQzMywgMjgyNSwgMCwgMTA4MjUsIDgwNzksIDI4MjEsIDQxMDQ2LCA5MjMyNywgMCwgMCwgMTIwNTkzLCAKLSAgICAxMzA3MSwgMCwgNDUyLCA0MTA0OSwgNDI4NDAsIDYzNDYsIDI4MzEsIDU0NjEsIDc0NTk2LCAxMTQ2NSwgNTIxMiwgMCwgCi0gICAgNjQ3MDMsIDExOTE5MSwgNDIzMDgsIDcxODEsIDAsIDQxMzMyLCAwLCAxMjMzMywgMCwgMTY2OCwgMCwgMCwgMCwgMTE4NywgCi0gICAgMCwgNDI2MjgsIDc4NTc1LCAwLCAxMjg3NzcsIDAsIDMyNDAsIDEyODUxOCwgMTIxOTQsIDAsIDExNTkxLCA0MTA2NSwgCi0gICAgNTMyMywgODE2NiwgMCwgMCwgMCwgNzQ1MzUsIDE2MjMsIDY1Mjk3LCAxMjg4NTYsIDU3MSwgMCwgNDkxOCwgMCwgNTI4OCwgCi0gICAgMTI3Mjk1LCA4OTE2LCA2NTA0OCwgMTkwOSwgODg2NCwgMCwgMCwgMTA3MzYsIDkyNTA4LCAxMTU3MSwgNzYxNSwgMTI3MzAwLCAKLSAgICA5MjI5NiwgNDIzNywgOTI1NzYsIDEwMzUsIDY1ODE1LCAwLCA3ODgxLCA3MDEsIDY1OTM2LCAzNDg5LCAwLCAwLCAxMjA3NTEsIAotICAgIDExNDAzLCAwLCAwLCAxMjcxNDYsIDM3OTYsIDY4MDAsIDAsIDM5OTQsIDExNDIxLCAwLCAxOTUwNzYsIDAsIDAsIDAsIDAsIAotICAgIDY0ODU3LCAxMjgxMDUsIDI4NTUsIDEyNzgyOCwgNjYzMDgsIDQxNjIxLCA2ODIxNCwgMTI3MjgzLCAxMjc4MTcsIDEwNjU0LCAKLSAgICAwLCAxMTkyMjYsIDEyMTY0LCAzMjQ2LCA3OTA2LCA0Mzk3MiwgNjU4NDcsIDcxODIsIDAsIDEzMDI0LCAxOTQ4MjIsIAotICAgIDc0MjcwLCAxMjgyODksIDAsIDAsIDAsIDE0OTYsIDc0NywgMCwgOTQyLCAyMzc4LCA0MzEzNiwgMTI3OTA1LCA4NDY2LCAwLCAKLSAgICA5MzIwLCA4MDAxLCAxMjMyLCA4MTM5LCAxMTYxNywgMCwgMCwgMTE0MDksIDY4MzczLCA2MzgyLCAwLCA2NDYzNCwgCi0gICAgMTI4Mjc5LCAwLCAxMTYxMiwgMCwgNjc2MDAsIDIzNzQsIDAsIDg0NzUsIDExNjA5LCA2NjMxMywgMCwgMCwgNTI4NiwgCi0gICAgMTE5Mjk3LCAwLCAwLCA2NDkyNSwgMTIwMjgzLCAxOTQ1ODQsIDExODk4MiwgMTk0NTgzLCA3NzA1LCAxMTk0MiwgMTEzMDUsIAotICAgIDE5NDU4MSwgMzMwOSwgMCwgMCwgMCwgMCwgNjgwMiwgMCwgNDE2NTMsIDEyODAsIDEyNDEsIDcxNjgsIDEyMDk2LCAwLCAKLSAgICA2NjYxNSwgNDI1NjUsIDQxNjUxLCAwLCAwLCAwLCA0MTY1MCwgNjY1MDcsIDY2NDcwLCAwLCAxMjkxNCwgNDE0OTEsIAotICAgIDY2MDEwLCAxMTk1NTIsIDYwNzgsIDk5NTQsIDAsIDE0NzUsIDAsIDk5MzgsIDYwODQsIDkxNzU0NiwgNDEwNjQsIDQxMDYyLCAKLSAgICAwLCAwLCAzMjU2LCAxMjg2NDAsIDQyMDc2LCA0MzI1MiwgNzg4MjMsIDkxNzkwNiwgODcyNywgMCwgNjU4NzUsIDAsIDAsIAotICAgIDEyNzc2MiwgMTA1NjIsIDc0MjE1LCA0MzA2NSwgMCwgMCwgMzI0OCwgNzQyOTcsIDMyNjEsIDkwMTUsIDAsIDAsIDM2MzUsIAotICAgIDY0MzM3LCAwLCAwLCAwLCA3MTk1LCAwLCAyMDA3LCA2NDQzMSwgMCwgMCwgMCwgMCwgNjM1LCAwLCAwLCA2NTYxMywgCi0gICAgNzc5MDksIDkyNDIwLCA3Mzk5NywgMCwgMCwgMTE5MjE4LCA3OTg0LCA4NjAwLCA3NDQzNCwgMTI3NzcwLCA0MTc2LCAwLCAKLSAgICAyMDM0LCA5MjU1MSwgMTIwODA1LCA2NTg5MSwgMTI3MDM4LCAwLCAzMTgsIDIwMzgsIDEyODg2MCwgNzg1OTYsIDAsIDM2NDksIAotICAgIDEzMTQ5LCA0MjE0NSwgNDI3OTgsIDM2MzQsIDEyMDI5MSwgMTE4OTI3LCA2NzY3NywgMTIwMTI0LCA3ODY2LCAwLCAxMTQwMiwgCi0gICAgNDIxNDYsIDEyMDEzNCwgNzQyMzgsIDQyNjY0LCAyODQ5LCAxMjcwMzQsIDAsIDc5MzgsIDEyOTYwLCAxNzYxLCAxMTgxMiwgCi0gICAgNjUzNzksIDY4Mzg2LCAxMjgxODUsIDExNTksIDAsIDY5NzI5LCAwLCAwLCA3MTc4LCAxOTQ2MzIsIDAsIDQxNjgwLCAwLCAKLSAgICAxMjgyMDMsIDExNTM0LCAxNTE0LCAxMTY2OCwgNjc4OTEsIDkzMTMsIDcwMTUsIDAsIDY3ODc3LCAwLCAxMjk4OSwgNjY0NzQsIAotICAgIDkzNjgsIDEyODQ4LCAxNjI0LCA0MzI3MCwgMCwgMTk0NTYzLCAxMDgxOCwgMTI4MjA3LCA5OTUzLCAwLCA3ODQyMSwgMTE5NCwgCi0gICAgMzI0MiwgOTc2MSwgOTU1NSwgODU5OCwgMTIwMjk5LCA2MTY5LCAxMjg3MSwgMTU1MSwgMjc5OCwgNjUxNzYsIDQ5NTgsIAotICAgIDQyNzUyLCAxMTkwMjUsIDAsIDY3ODc1LCAxMjAzMDEsIDM0OTUsIDY2NjQ4LCAxOTQ3NjgsIDAsIDY4MzY0LCAwLCA0ODkxLCAKLSAgICAwLCAxMDY0MSwgMCwgNzM3NDYsIDAsIDY4MzUyLCAwLCA3Mzc4NywgMCwgMTk0NjMzLCA3MTk5LCA2NDk1NSwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNDI2ODUsIDQyNjc5LCAxOTMsIDAsIDAsIDAsIDQyNjY3LCAwLCA1MjcxLCA5MjMxOCwgOTI1MTcsIDExODg4MiwgCi0gICAgMTM2MiwgMTMyOTcsIDAsIDEyODA5NCwgMCwgMCwgNzM3ODksIDAsIDY2NTgsIDQ0MjYsIDAsIDkyNjI4LCAwLCA5MjMxOSwgCi0gICAgNzI3NiwgNDIxNjMsIDUyMjAsIDAsIDAsIDAsIDI0MTYsIDMzMTAsIDQyNzAzLCAwLCAzNzksIDAsIDEyNzk3NywgMCwgMCwgCi0gICAgMzIyMywgNjU0OTIsIDEyODQsIDE5NDc3MSwgNDU0OSwgMCwgMCwgMCwgMTI3NzYzLCAxMDgwNywgOTU1OCwgMTk0NjEzLCAwLCAKLSAgICA4NTE1LCA4Njg4LCAxMjg2NiwgMCwgMzI5NCwgMCwgODUyOSwgMTI4MTAxLCA0MzM4NSwgNzU2NCwgMCwgNDMzMjksIDAsIAotICAgIDkyNDU4LCA3Mzc1NywgNjY0NTYsIDQyMzU5LCAwLCAyMDMxLCAwLCA3MjAyLCAwLCAxMjY3NiwgNDI3MjksIDkyMTk4LCAKLSAgICAzMjE1LCAwLCA3NzEwLCAxNjEwLCA3MzgwMSwgMCwgMCwgNjU2ODIsIDAsIDEyMDUzNywgNjU5MjQsIDk5NzQsIDIyOCwgCi0gICAgNjYzNTQsIDE1MDEsIDAsIDY0Mzk1LCA1MTc5LCA3MjAwLCA2MjI1LCAwLCA2NTc5NCwgMTcyNSwgNjU1MzMsIDgxOTYsIAotICAgIDc0NzYsIDc0Mzk5LCAwLCAwLCA3MTUyLCA4NTAyLCA1NzYyLCAxOTY3LCA3NDgzLCAwLCAwLCA4MTA0LCAwLCA3NDc0LCAKLSAgICA5MjU3MSwgMCwgMCwgMTA0MTQsIDEzMDAxLCA4MTQxLCAwLCA0MjUzNywgMTU1NywgNDM1OTQsIDEyODY0MiwgNjMzMCwgCi0gICAgNjgwNSwgODYzMSwgMjU0NSwgMTIwNjcyLCAxMjcxNjYsIDAsIDc0MTkwLCAwLCAwLCAwLCA0Mjc2MiwgMCwgNDI5MTQsIAotICAgIDE2NTAsIDI2MiwgMTYzNywgMCwgNzkwMSwgMzIzOCwgMTI4MTczLCA0MTg2MSwgMCwgMCwgNjUxNTgsIDEwODYwLCAwLCAKLSAgICA0MzY1OCwgNzUyNywgMCwgNDMzMTksIDY0MTksIDAsIDQ1LCAwLCA2NDU4OCwgMCwgMCwgMTE5ODEwLCA3MTk0LCA1MjkxLCAKLSAgICAwLCA0MzY2NiwgMTMxMjksIDAsIDkwODQsIDAsIDg3MzcsIDAsIDEyODgxLCAwLCAxMjkwNiwgOTYzOSwgNzkxMiwgMjYyMCwgCi0gICAgMCwgMCwgMCwgMCwgMTc5LCA2NTg5NiwgMCwgNjQ3NTYsIDI4NTMsIDc4NDQzLCAxMTg4MTMsIDAsIDExODk5NiwgMTE5MDA5LCAKLSAgICAyODUwLCA4MDg0LCAwLCA3Mzg1MCwgMjgwMSwgOTIyODQsIDQyMDY5LCAxMTk4MzksIDc0NzU0LCAxMTk4NDEsIDQyMDcyLCAKLSAgICAxMTk4NDMsIDExOTg0MiwgMTAzOTgsIDAsIDAsIDgzNzcsIDEyNzExNiwgODI0NSwgNjg0MDEsIDMxNTgsIDkyMzk2LCAKLSAgICAzOTgzLCA0MzY1NiwgOTIzLCAxMTk4NTcsIDExOTg1NiwgMjkyLCAxMzAwMiwgMTE5ODQ1LCAxMTk4NDQsIDMyMjEsIDE3NjMsIAotICAgIDkyNDYzLCA0NjEyLCAxMTk4NTEsIDExOTg1MCwgNzI1MywgMTI3MTEwLCA2ODM5MSwgMCwgMTA3ODIsIDM2MzcsIDEyOTk2LCAKLSAgICA0MzU0MiwgMCwgNjQ1NzgsIDAsIDMyMjgsIDY5NjM2LCA4NzgzLCAwLCAxMTk2MTQsIDI3MzEsIDAsIDAsIDc4NTg1LCAKLSAgICA0MTAyLCA3Njk2LCA3Mzg3OCwgMCwgMCwgNzg1ODYsIDQzMzE2LCA0MTc3LCAxMTI4MywgOTA4OSwgMCwgNzM5OTYsIDAsIAotICAgIDY0NTAwLCA0MzY3NCwgMCwgNjQ5NDcsIDE4NTYsIDAsIDAsIDYzNzksIDAsIDAsIDAsIDMyMDgsIDEyOTc1LCA3NDc3NSwgMCwgCi0gICAgMCwgOTIzODksIDc0MDcyLCA1NTI2OSwgMCwgMCwgMCwgMjAzMywgNzg1NzcsIDc4NTc2LCAxOTUwMjYsIDU1MjU0LCA3NzQwLCAKLSAgICAwLCAwLCAwLCA3Mzk2NCwgMCwgMCwgNjc2MTIsIDY1Njc0LCAwLCAwLCA0MTY4OSwgMCwgNzQwMDYsIDY0OTA5LCA2NjQ2LCAKLSAgICAxMTc5MCwgNzQwMTksIDAsIDEyODA2NiwgMTI4MDMxLCA4NTYxLCA0NTczLCAwLCA1MzI2LCAwLCAxMjA2MDUsIDcyMzAsIAotICAgIDgyNTcsIDAsIDg3NzgsIDQxNjg4LCAwLCA2NTc3NiwgMjA3MSwgODMxNCwgNjQ1OSwgMCwgNzYyOCwgNjUwOTIsIDczOTAzLCAKLSAgICA2NjcyMSwgMTEzNDIsIDEyODU2MSwgMCwgMCwgMTI4MjI2LCAxMjcwMDEsIDAsIDExODEwLCAxMzE2NCwgMTA3MjMsIDk2NywgCi0gICAgMCwgMCwgMTE5NDYsIDAsIDMyNTcsIDAsIDEyMzA3LCAxODQ1LCAwLCA0MzUyNiwgMCwgMCwgMTg4NiwgNDIzNDIsIDEwMDg5LCAKLSAgICA4NzAsIDc2NDgsIDM0OTksIDg2MDksIDc2NTIsIDg3NiwgODcxLCA4NzcsIDAsIDg3OCwgNDIwMTUsIDg3OSwgNDM2OTIsIAotICAgIDQ1NjMsIDAsIDAsIDc1OTEsIDY1ODg3LCA4NjcsIDk1MjAsIDg3MiwgMCwgODY4LCA4NzMsIDc2NDIsIDAsIDg2OSwgODc0LCAKLSAgICA3NjQ0LCAwLCA4NzUsIDc5MCwgMTI4MzAzLCAwLCAwLCAwLCA2NjE4MiwgMCwgNTQyOSwgMCwgNjYxODAsIDAsIDY2MTgxLCAKLSAgICA2ODQ1MiwgMCwgMCwgNDIwNjcsIDAsIDU0MzMsIDEwNjU3LCA3OTExLCAxOTQ2MjIsIDE1NDcsIDY2MTc2LCA0MjAxMiwgCi0gICAgMTIwNTc2LCA1NDI1LCA0OTc3LCA5OTk5LCA1MzE3LCA1NDIzLCA0NjExLCAwLCA2NzYzNywgMCwgOTY3OSwgNzQxMjIsIDAsIAotICAgIDAsIDAsIDY2MTk0LCA0NDE4LCA2NjE4NCwgNDYyOCwgNDI0NSwgMTE5NjQ4LCAwLCAwLCAxODUxLCAwLCAxMjcxODksIAotICAgIDExOTA4LCAwLCA5MzYwLCAxMTg4OTcsIDAsIDQyNzc2LCA2NjE4NywgMTI4MzcsIDg4MjksIDc3MTEsIDkyNzE0LCAwLCAKLSAgICA5MjMyMSwgNDMzMTgsIDAsIDg4MDksIDExOTk3NCwgMCwgMCwgMTIwNjA0LCAwLCAwLCAwLCAwLCAwLCAwLCA3NDI3LCAKLSAgICA5OTU4LCA0NTg4LCA0MzY4MCwgMCwgNzQ0ODQsIDAsIDI0MzMsIDAsIDExOTYyMiwgMzM1MiwgNzQzNjMsIDAsIDAsIDc5MywgCi0gICAgNzQ0MDQsIDAsIDMwNSwgNTY3LCA2NzY2MiwgODQyLCAxMjg1MTksIDgyMDgsIDAsIDQxNjk1LCAxNjQ3LCAxMTg4NzcsIDAsIAotICAgIDc4MzcsIDkxNzYyNSwgODE4LCA1MzM3LCA5MTc2MjIsIDkxNzYyMSwgNDEzNzYsIDExOTk3OCwgOTE3NjE4LCAxMjA1OTQsIAotICAgIDc0MDg2LCA5MTc2MTUsIDkxNzYxNCwgOTE3NjEzLCAxMDk3MywgNjYzNTksIDEzNzIsIDEyNzE3MiwgOTE3NjA4LCA0OTY5LCAKLSAgICAxMjU0LCA5MTc2MDUsIDkxNzYwNCwgOTE3NjAzLCA5MTc2MDIsIDY1MjI4LCA3ODIyMSwgMCwgMCwgMjg0MCwgMCwgCi0gICAgMTE5OTgyLCAwLCAwLCAzMjQ1LCA5MDY4LCA2ODE5NCwgNjQ3MjUsIDAsIDAsIDEyOTkxLCAwLCAyNjUxLCAxMjg1MjgsIDAsIAotICAgIDkxNzYxMSwgMTI3MDI2LCAxMjg4ODMsIDAsIDAsIDQzNjQ4LCAxMjA4MTIsIDAsIDQzMzIyLCA5MjY2MiwgMCwgMCwgCi0gICAgNjQzNzIsIDkyNjk4LCAzMjI2LCA2NTUsIDc1MiwgNzQ1NywgNzQ1NiwgNzQ1MiwgMzI4NSwgMTI4Nzc5LCAxMjc4MjEsIAotICAgIDExOTk4OCwgNjU2MTAsIDIzOTEsIDAsIDkyMjQ4LCA2NzEsIDI1MCwgNzQzNCwgNjE4LCA2NjgsIDYxMCwgNDI4MDAsIAotICAgIDc0MzEsIDExNTIsIDQyODAxLCA2NDAsIDEyMDY2NiwgNzQ0OCwgNzQzOSwgNjI4LCAzOTA1LCA3MzgxMCwgMCwgMTI4MjY2LCAKLSAgICA2NDc0OSwgNjc4NTAsIDIxMDcsIDAsIDAsIDQ2MDUsIDEyODE3NCwgMCwgNDMzNzIsIDY1OTQ1LCAxMjg4MzgsIDAsIAotICAgIDExOTU5MCwgMCwgMCwgMCwgOTg3LCA2OTI3LCAxMTU3MiwgNDIyNjEsIDExNDY0LCAzMzY1LCA5OTcxLCAwLCAwLCAKLSAgICAxMjgyOTcsIDAsIDAsIDAsIDAsIDExMzM0LCA0MzMyNiwgMTI2MDksIDExNTE5LCAxMTUwMywgNTUzMCwgNTIxMCwgMCwgCi0gICAgNDYyNywgMCwgNTIwOCwgMCwgMTI4ODQyLCAxMDMzMiwgNTIxOCwgNzk3NiwgOTE1NiwgMCwgMzI0NCwgNTUyOSwgNjk2NDcsIAotICAgIDczODk0LCAxMjg4NTIsIDU0MzIsIDY0OTY1LCA1NTI3LCA3NDAzMywgMTA1MTYsIDc3OTAsIDU1MjgsIDAsIDQyMTQwLCAKLSAgICAxMjAyODEsIDAsIDAsIDQzNTQ1LCA5ODg3LCAwLCA0MDAwLCA3NDI5LCA3NDI4LCA2NjUsIDc0MjQsIDMyMDYsIDEyMDI3OCwgCi0gICAgNzg4NCwgMCwgMTI4NTY2LCA5MTc5ODksIDEyODY2NiwgMjExLCAyNTA5LCAwLCAxMjA1NzMsIDY4NjcyLCAzMjIwLCAKLSAgICA0MjIzNSwgMCwgMTA2OTAsIDg5NTEsIDUyMTQsIDQyNDc0LCA4MTE4LCAwLCA3MDQ4LCA0NTkwLCAxMjcyNTgsIDU4NTIsIDAsIAotICAgIDAsIDEyNzI1OSwgMTcwOCwgMCwgMCwgMjYyMywgMTE5NDMsIDAsIDY5MjI2LCAwLCA0Njk4LCA2NjUwOSwgMTA2NiwgCi0gICAgMTE5OTIxLCA0NzAxLCAwLCAxMjAyODUsIDc0MjI1LCAxMTkxMTQsIDgyNjcsIDAsIDEyNzI2NSwgMCwgNzUxNiwgMCwgCi0gICAgMjYyNSwgMCwgODAzNCwgNzQzMDksIDAsIDM2MzEsIDEwOTU1LCA3ODUwLCAxMjAyOTMsIDg0MTYsIDAsIDAsIDAsIDQzMzg0LCAKLSAgICAxMjY2MCwgMCwgMCwgMCwgNzQ4NTAsIDQxMDY5LCAwLCAxMjgxNTYsIDEyMDk5LCA0MzEwLCAxMDAzMiwgNjI1MiwgNzEzLCAKLSAgICA3OTkwLCAwLCAzOTkwLCAwLCAwLCA2NjM2OCwgNTAxNywgNjQ5NTYsIDcwNzEsIDAsIDExOTE0NCwgMTAzMCwgMTE4ODAwLCAKLSAgICAwLCA5NTEzLCA0MTA1OSwgOTM1NywgMCwgMTc3MywgMCwgMTIwMzUwLCAwLCA2MzM5LCA3NzQ1LCA5ODQ0LCAwLCA2NDY1MCwgCi0gICAgOTQsIDE4ODAsIDc0NzY2LCAwLCA4OTA4LCAwLCAxMjg3MDcsIDY1OTEzLCA3ODQ3MCwgMTA3NTIsIDEzMDAzLCAwLCAwLCAKLSAgICA0MTMwNywgODczMiwgMTIwMzM4LCAwLCAxNzU3LCA2OTY0LCA0Njk2LCAwLCAwLCA2NDc4NSwgNzM5NCwgMzY0MSwgNTQxOSwgCi0gICAgMTI4MDU1LCAwLCAxMjc4ODMsIDAsIDEyMDM0NCwgNDM5ODgsIDAsIDg2MTAsIDQzMDYyLCA3NTkyLCA4NTYsIDc0Mjk5LCAKLSAgICA5MzYsIDEzMjg5LCAxMjc1MjEsIDQzMTcxLCAxNDU5LCAwLCA2NTI0MywgNzg2MzgsIDE5OTUzLCAwLCAxNTA0LCAxMTkxMDgsIAotICAgIDAsIDEyOTEzLCA3NDIwNiwgNzUyOSwgMCwgMCwgMCwgMTIwNzgyLCA0MTEzLCAwLCAyMzcyLCAzMzYsIDAsIDc1MDksIAotICAgIDEyMTUyLCAwLCA2ODIsIDY2NDU4LCA0MTUwNSwgMCwgNjQ3NDMsIDEwNTkzLCAxNzAzLCAwLCAwLCA4MDMzLCAwLCAwLCAKLSAgICA5ODEwLCAxMjcyNjksIDAsIDEyOTcwLCAwLCA0MjM1MSwgMTAxMDksIDAsIDAsIDE5NDY5MywgMCwgMTE5MjQ3LCAwLCAwLCAKLSAgICA3NDI5MSwgMTk2NSwgNzA2OSwgNDMzMTIsIDAsIDczODg3LCAwLCAyMDg3LCA2NDM3MCwgNjMxNCwgNDE3MTQsIDg1MDEsIDAsIAotICAgIDAsIDc0MjM5LCA0MTMxNywgOTI2MTQsIDIwOTEsIDc0NTQ1LCAyMDkwLCAwLCA5MzUzLCA3MTE3LCAyMDc3LCA3Nzg4NiwgMCwgCi0gICAgMTA0OTgsIDIwODMsIDc3ODg4LCAwLCAwLCAxMTkyMzYsIDYzNCwgMCwgMCwgMCwgNjk3NzksIDQxNjUsIDg3NDYsIDAsIAotICAgIDk2NTQsIDEyODU2LCA2OTI0LCAwLCA3MDY2LCAwLCAwLCAxMjgxMzUsIDQxMDM3LCA0MjY5MiwgNzc4NiwgMTI5NTksIAorICAgIDEwNDc3LCAwLCA4NjM2LCA5ODM2NTksIDgzMTUsIDY1NDQ0LCA5ODM1MjgsIDAsIDc0NTk1LCA2MTUyLCAwLCAwLCA2NjI5LCAKKyAgICAxMjgyNTEsIDEyMDE3MSwgMCwgNzQ1ODksIDQzOTkzLCAwLCA2OTc5MCwgNjQ0MzUsIDAsIDQzNjkwLCAxMTA0NiwgMTE0OTAsIAorICAgIDQyNzMwLCA0NDg1LCAxMjcxMDcsIDAsIDY0OTI2LCAwLCAwLCAwLCA1ODY5LCAxMjQzNywgNDI3MjgsIDAsIDcwNDAsIAorICAgIDM1ODgsIDAsIDEyODI1LCAwLCAwLCAxMjcyNSwgMCwgMCwgNzg2NDIsIDIyMywgMCwgNjk2NzUsIDEyMDE2NiwgNDI0NDQsIAorICAgIDAsIDY0NDk5LCA2NTI0NSwgMCwgMTE3MSwgMCwgNjk3MTcsIDAsIDE4MDUsIDg3NzIsIDQzODIwLCAwLCA5OTMwLCA2NTI0NywgCisgICAgNzg2MTksIDEyMDExMSwgMjMzOCwgMCwgMTE4ODUzLCAwLCA0MjY3NiwgMCwgNjQ4MDAsIDY1MjM2LCA2NzY0NCwgNjgxMjYsIAorICAgIDEyMTMsIDAsIDY0MDc1LCA3OTcsIDY0MDc0LCA4NzM0LCA0MjEyLCAwLCA2NDM4NywgNDExNSwgMCwgNTAwNSwgNjQwNzAsIAorICAgIDY0MDczLCAxMDY3OSwgMCwgNzc5NTQsIDk0MDIsIDY0Mjc2LCA0MjYsIDAsIDAsIDgyNTEsIDEwMTM2LCA2NTQzNiwgMCwgCisgICAgMjEyMCwgNDMzMDIsIDEyMjQsIDAsIDY1NTc2LCAxMjAxNTgsIDEwNzAxLCAxNzY0LCAzMTAxLCAxMjc4MTUsIDEyODU4LCAKKyAgICAxMjAxNTksIDAsIDExMzczLCA2Mzc4LCAxMjc4NTksIDEyMDEwMywgODY2MywgOTMxMiwgNDE2NDQsIDQ1MzksIDIxMjksIDAsIAorICAgIDkyMjIsIDk4MzQ3MywgMCwgNDI1OSwgOTA5MiwgNzQ1NjcsIDQxOTYxLCAwLCAxMjcyNCwgNjYzNTcsIDQyMzMxLCA2NDkzNSwgCisgICAgMCwgMCwgMTI5MywgNzk0NywgMjEzMiwgOTgzNTAyLCA3NDU5MywgMTIwMzA4LCAyNDU0LCA0MjcxNywgMzYxMywgMTI4ODM3LCAKKyAgICAwLCAwLCA2NTg4OCwgODgxNiwgMTA5NzgsIDEwODQwLCAwLCAxMDY2OCwgMCwgNDMwODcsIDEyNTk1LCAxMjAzMDQsIDAsIAorICAgIDg4MjIsIDAsIDExNTcsIDY0OTAzLCA4NjM4LCAwLCAwLCAwLCAwLCAxMjAzMTksIDgyMzUsIDEyMDMxNiwgNDQwNSwgCisgICAgMTAwODYsIDEyMDI0NywgMCwgNjkyMTYsIDAsIDY1NDMwLCA3NDAxMywgNjA3OSwgNjgxNywgMTA3NjQsIDEyNzkxMCwgCisgICAgNjQyOTEsIDEyODA1MSwgOTk4LCAxMjAzMTIsIDExMDYyLCAxMzE3LCA2NDMyNywgMTU1OCwgMCwgMTk5MSwgNzg4MiwgCisgICAgNDIyNTQsIDAsIDQxNzAwLCA1MzAsIDAsIDEwNDI4LCAxMTkzMzUsIDEyMDAyLCAxMTkzMzYsIDU3NDIsIDQzMDc2LCA0NjkyLCAKKyAgICA2NDYzMCwgNDE4MjMsIDQwMDcsIDUwMDQsIDExOTMzNCwgNzg5NiwgNzUxLCA2NTk1LCA2NTk2LCA5ODM0MTYsIDY2MzczLCAKKyAgICAwLCAwLCA2NDkwOCwgOTI2OTEsIDYzMTEsIDAsIDEyMDA0LCAxMTkxOTIsIDEyMDQ5LCA0MzEwOCwgMTIwMzI2LCAwLCAKKyAgICA0MTcwNSwgOTIxODgsIDY1OTgsIDAsIDY1OTksIDEyMDMzNCwgMCwgNDIxNDgsIDExODgyNSwgNjYwMjcsIDAsIDY1OTcsIAorICAgIDk0MTIsIDgzNDAsIDExODI0LCA2NDc0NSwgMCwgMCwgMCwgMTk4OCwgNTQwNywgNjc4NjUsIDI0MzAsIDQxNjc4LCAwLCAKKyAgICAxMjAyNDMsIDIzMzYsIDk4MzYzOCwgMCwgNzg4NzEsIDEyMDQ0MiwgOTgzNTA0LCAxOTIxLCAxMDk0NywgMTk5MjcsIDAsIAorICAgIDY1NDA2LCAwLCAxOTkxMywgNDI4NCwgMTMyMTcsIDAsIDQzNzg5LCAxMjg0MSwgOTIyOSwgMTA5NTYsIDQyMjg1LCA0MTY3NCwgCisgICAgMTk5NjQsIDQxNjc5LCA2NTA4NCwgMzUyMSwgMCwgNTc3NCwgODMyNSwgMCwgNjU0MDMsIDAsIDE4NTQsIDEwNzk0LCAwLCAKKyAgICA2NzY2MCwgMCwgMCwgNzgzNTksIDUyODAsIDAsIDQzNDQsIDEyOTA1LCA2NTQzMywgNjA3NiwgNjQ3OTMsIDQxNjEwLCA3NjgsIAorICAgIDEyMDc0LCA0NDIsIDAsIDY4MTYyLCA2NDA4MSwgMTI5MzQsIDQxNjgyLCA2NTQzMiwgNDE2OTMsIDAsIDYwNzEsIDY1NDM0LCAKKyAgICAxMjc0NjcsIDQ4MDQsIDQwNTMsIDAsIDEyNzQ2OSwgMTk0NjUzLCA0MTY5NiwgNDY3LCA2OTgyMywgMTI3NDYzLCA2OTc5NywgCisgICAgMCwgMCwgODQyMSwgMTI3NDcyLCA2OTY4MiwgNDM3MDUsIDUwMiwgMCwgNjU0MzEsIDExOTA1NiwgMCwgMTIwNDMsIDEzMDMsIAorICAgIDMxNiwgOTI0NjIsIDIwMjksIDIxMzYsIDExOTI0NiwgMTE1MzMsIDY0MzY1LCA0MzQ4MCwgOTI2MzksIDQ4NjAsIDE5NDY0NSwgCisgICAgMTI3ODc3LCA0MjQ4OCwgMCwgOTU4MywgMTI4ODQ5LCA1NTQ2LCA4MDE5LCA3Mzg1NiwgMCwgMCwgMCwgNTU0NCwgMjM1NSwgCisgICAgMTIxNTAsIDY1NzI1LCA1NTQzLCA3Nzk4OSwgNjM3NTEsIDEyMTM3LCA1NTQ4LCA3Nzk4NSwgMCwgNjU3MjcsIDY4Mzg4LCAKKyAgICA2NTcyNiwgNjA3NywgMTI4MzUyLCA2NTQ1MiwgMCwgMTEzMDEsIDc4MDEzLCA3ODAwOCwgNzgwMTAsIDk4NzQsIDc4MDA3LCAKKyAgICAwLCAxMzE5LCAzMDUwLCA2NTQxMCwgMCwgMCwgNzgwMTYsIDc4MDE3LCA0MjgzMCwgNDM5OTYsIDY2NzE2LCAxMjgxMzcsIAorICAgIDQ2OTEsIDkyMjQyLCA5MzQ1LCA2MjEsIDkyNzA5LCAxMjgyMjIsIDAsIDY1NDExLCAwLCA0MTE4MiwgNzM4ODEsIDY1NDA4LCAKKyAgICA3Mzg5OSwgNzgwMjQsIDk0NzQsIDEwNTQ1LCAxMTkxMTgsIDEwODg3LCAzNzg2LCA2NTQwOSwgODg5NCwgNDMxNzksIAorICAgIDExOTYxMSwgNzkyMywgMzcxNiwgOTIzNjMsIDk5OTYsIDg1MDgsIDAsIDcwMTIsIDgxOTUsIDEyNzgzNCwgOTU2NiwgMCwgCisgICAgMzcyMiwgMCwgNDE3MDcsIDg0OTMsIDU0NSwgOTU3NSwgNDEzNzksIDEwMDUwLCAxMjcxOCwgMCwgODg1OSwgNjgyMCwgCisgICAgNzQzNDUsIDY1MTEwLCAxMjA3NDAsIDAsIDAsIDkxMTksIDI3ODcsIDc5MjAsIDExODgyMywgNDAyMSwgMjAxMiwgNzk4NSwgCisgICAgMCwgMTE5NjYzLCAwLCAwLCA3ODAyMSwgNzgwMjIsIDQxMCwgNzgwMjAsIDE4MDIsIDc4MDE4LCA3NDEwNywgMCwgNDE2NTksIAorICAgIDQxNjcxLCAxODI3LCAwLCA2NDM5NiwgMTAxMjYsIDEyMTE2LCA0MTY3MywgMTIwMzcwLCAxMTQyMiwgNzgxNDEsIDEyMDM3MywgCisgICAgMzg2MCwgMTIwMzY3LCA2ODQxMiwgNDEzNDUsIDEyMDM2MiwgMTIwMzYzLCAxMTc0OCwgNDIxNTgsIDc5NDEsIDExMDc2LCAKKyAgICA4NzQ5LCAxMjAzNjEsIDIxMDQsIDY0ODU4LCAzNjEsIDEyMDM1NywgODQ1LCAwLCA0MTU2MCwgMTE5NzAsIDQ1NjIsIAorICAgIDkxNzkyMCwgMjkyNiwgOTE3OTE5LCA0NTY5LCA3NDEzMCwgMCwgNDM0ODcsIDE5NDYzMCwgNjExLCA3NDEyOSwgNjQ4NzEsIAorICAgIDExODg5MSwgNjU2MjksIDAsIDE5NDg1OCwgMCwgMCwgMTI3NTQ1LCAxMjA1NDMsIDAsIDAsIDYyOTEsIDAsIDc4NjM5LCAKKyAgICA0MTY2OSwgNzA5NCwgOTE3OTIxLCAwLCAwLCA3NDA1NCwgMTI3NzU0LCAxOTUwMjksIDAsIDgzOSwgMCwgNzY5NSwgODc2OSwgCisgICAgNjUyNDYsIDQ4MjksIDAsIDQ4NTksIDY0NDY3LCAwLCA5ODM2OTUsIDExODk5OCwgNzIwNiwgMCwgNjY0NywgNDM5ODYsIDAsIAorICAgIDY5NzY2LCAwLCA2NDc2NCwgNDIxMCwgOTgzNTk4LCAxMjc5MzYsIDgwNCwgMCwgMCwgMTIyOTgsIDAsIDY2NjUzLCAwLCAKKyAgICA2NDkyNCwgMTAwOTEsIDczOTMxLCA5NDY4LCA3NDI0NSwgMCwgMCwgNzQyNDYsIDkyNTAzLCAxMjgzOSwgNjQ2NjksIAorICAgIDkyMjAyLCAwLCAxMjc5LCAxNDI1LCA2MjI0LCAxMTkyMjksIDExMDQ5LCAwLCA5MjY5NywgNDMyMzksIDg0ODIsIDkyNDQwLCAKKyAgICAwLCA1MDMyLCA2OTY3NywgMTE5NDAsIDY3ODg4LCA2NjQsIDEyMDQzNywgNTAzNCwgMCwgMCwgMTI3NTI1LCA0MjcwMiwgCisgICAgNzM4ODgsIDAsIDEzMjk0LCA2Nzg3MywgNjQ4NjksIDYwMzIsIDAsIDkxMTUsIDc0MzAsIDEyMDM3NywgMCwgMTIwODE5LCAKKyAgICA2ODM4NywgMTIwMTY4LCA3MzkxMywgMTIwMTcwLCA0MTE2MSwgNTUxOCwgNDE3NCwgMTA5OTMsIDQxMTYyLCAxMjAxNjAsIAorICAgIDY0NTI4LCAxMTY5LCA0MzQsIDQxNDM3LCAxOTA1LCA2MDM0LCA0MTE2NCwgNjQ3NDQsIDk1MjgsIDExODg2NywgMTI4ODAwLCAKKyAgICA1MjQsIDAsIDc0MDI5LCA3ODgsIDc0MDI3LCAwLCAxOTQ2MzgsIDAsIDE2NjMsIDEwNDE5LCA3NDAyNSwgNDI2MzYsIDAsIAorICAgIDY5NzI1LCAwLCAxMjA2NTYsIDAsIDY3ODc2LCAwLCAwLCAwLCA2Nzg5NywgNzQwMzksIDAsIDAsIDExMzk1LCAwLCAKKyAgICAxMTkxMDcsIDQzNjEyLCA2NDM0NCwgMCwgMCwgMTA4NTUsIDU0NDUsIDkzNTUsIDAsIDY1MTk4LCA3MzkxLCA4OTg5LCAyMjEsIAorICAgIDY1Njg2LCAwLCAwLCA4MDEwLCA3MTkxLCA0OTYyLCA2OTc3MiwgODg1NSwgMCwgMCwgNjQ0NjksIDEyMDQyNiwgMTA1NTUsIAorICAgIDAsIDQzMzMzLCA5MjI5OSwgMCwgMTIwNDI3LCAxMDQ1MSwgMCwgNjc2NTMsIDcyNDUsIDEyNDQzLCA3NDQwNSwgOTk0NywgCisgICAgMTIwMTQ5LCA3ODMxNywgMzg3MywgODM2NywgMCwgMTIwMTQ2LCA0MzQzMywgNDM2NDksIDExOTg3LCAwLCAwLCAxMTAxMCwgCisgICAgMTI3MjMsIDc0MDU5LCA3NDA2MiwgNjIxNywgNTg5NiwgMCwgNzY4MiwgNzQwNDksIDE0NjIsIDEwMjM1LCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA0MjU5NSwgMCwgNzQ0MDIsIDExODg2MCwgMCwgMTIwNDE5LCA5MjQ5NywgNzQwNTIsIDAsIDAsIDEyMDU0OSwgCisgICAgMTE5MDgyLCA2NDI5NSwgMTIwNDE4LCAwLCA2NDc2NSwgNzM5MjMsIDEyMDQxNywgMTIwNjYyLCAxMjA3MzAsIDE5NDcwMiwgCisgICAgNjIxNiwgMCwgMTA3NTUsIDk0NTUsIDAsIDgxMjQsIDEyNzA0MiwgOTQ3MCwgNjk0NCwgMTI3NTQwLCAwLCA2OTY4MCwgCisgICAgMjgyOCwgMCwgNTMxLCA0MjYzOCwgMCwgMCwgMCwgNDM0MjgsIDgyMDQsIDM2MTQsIDI4MjcsIDk2OTYsIDAsIDAsIDg3MjgsIAorICAgIDQzNTQsIDEwOTA0LCA3ODU2MiwgMTk5MzYsIDc4MzMsIDEyMDY5MSwgMCwgNDI1OTksIDQyNTk3LCA0MjcwOSwgMTIwNDA5LCAKKyAgICAxMjcwNDQsIDAsIDg1MzcsIDAsIDAsIDAsIDAsIDAsIDQxMTk5LCAxMDEyMSwgMjAyOCwgMCwgMCwgNjk3MTUsIDAsIDMwNjIsIAorICAgIDAsIDc0NDQ3LCAxMjYwOCwgMCwgNjY0NDAsIDc1NDUsIDk3MDAsIDEyNTgwLCAwLCAxMjA3NzcsIDEyMDUwMiwgNDExNTUsIAorICAgIDAsIDc0MDcxLCAwLCAwLCAxMjcxMywgMCwgMCwgMCwgNzg3NzIsIDAsIDE3MzQsIDAsIDAsIDEyNzA0MCwgNjQ1OTQsIAorICAgIDI0NTYsIDIzMSwgMCwgNzQxNjcsIDU0MiwgMCwgMTE4Nzg2LCAwLCA5ODM3MTEsIDEyMzAsIDAsIDAsIDM1OTcsIDQ0NDYsIAorICAgIDEwNTg0LCA3NDIzNSwgOTIyMTUsIDQwMzcsIDEyNzkzOCwgODM1MiwgMCwgNTY4NywgMCwgNjQ1MTUsIDAsIDE5NDgwMSwgCisgICAgNTUyNjUsIDY3ODQ2LCA3ODQzNCwgOTcwNCwgMCwgMCwgNzQyODQsIDEyODI4NSwgMCwgODY2MCwgMCwgMCwgMCwgNzg3NzMsIAorICAgIDc0NDgyLCA0NDgzLCAxNzA5LCA2OTcyMSwgOTkwOSwgNjA4MCwgMCwgMTIwMzU4LCAxNzQ2LCAxMzE1LCA4NjY3LCAwLCAwLCAKKyAgICAxMzE0MCwgNjU4OTksIDEwNjA0LCAwLCA0NDgwLCAxMTI2NiwgMTI4MTUyLCAxMjI2LCA2OTMwLCAwLCAwLCA2MzYwLCAKKyAgICAxMDg5NywgNDEyMzAsIDYwNSwgMCwgNzQ3ODUsIDEyMDM1NiwgMCwgMCwgNDE1MDAsIDAsIDMxMSwgMTE0NTMsIDYyMjEsIAorICAgIDEwNjA4LCA2NDk0MywgNzQyODAsIDEwODc3LCAxMTg4NjgsIDY0ODg1LCA3NDI3MiwgMCwgMCwgMCwgMTIwNzM2LCA3NDMxMiwgCisgICAgMzQ1LCAwLCA3NDQ1NiwgNjQ2MDYsIDk5MTcsIDAsIDkyMjMxLCA1MDM3LCAwLCAxNzc2LCA4NDIyLCAwLCAxMTg4MTQsIAorICAgIDQxNTA4LCA0MTIwMSwgMzIzLCA0MzMyOCwgMCwgNDI2OTgsIDEyOTUsIDAsIDQ2MjUsIDAsIDQ2MzAsIDEzMTE3LCAwLCAKKyAgICAxMjg3NzIsIDY1MTIzLCAxMTI5MywgMjY2OCwgMTEyODgsIDAsIDQyNjQwLCA2NTY2NiwgMjUxOSwgOTIzNjksIDY1NDIwLCAKKyAgICA5MjQ3OSwgMCwgNDI1MiwgNTA0OSwgNDI2NTksIDExOTAxMSwgNzA2LCA3NzU0LCAxMDg1NCwgODczOCwgMCwgNjU0MTksIDAsIAorICAgIDAsIDY0OSwgNjU0MjEsIDAsIDY2NzAyLCAwLCAxMjY3MCwgMTAxMywgMCwgNjQ5MTksIDcwNSwgMCwgNjU0MjIsIDEyNzgwMywgCisgICAgMTE4MywgMCwgNzAxNywgNDI4NTIsIDAsIDgxNTcsIDk3MzYsIDY0NTAzLCA2NTQxOCwgMCwgOTgzNjEzLCA3NDAzNSwgMCwgCisgICAgMTE5MTMsIDczODc0LCA2Njk2LCAwLCA4OTIwLCAwLCAwLCA3OTYyLCAxMjIxMSwgOTgzNywgMjA1MSwgNjYyMjcsIDAsIAorICAgIDQxODQsIDAsIDAsIDEwMTc3LCA3Mzc3NywgMTg1NywgMCwgNDYyNiwgODQ2NCwgODQ3MiwgMCwgNDYyOSwgODQ5OSwgCisgICAgNzgzMjEsIDc4MzIyLCA0NjI0LCA3ODE4LCAxMTkxNzMsIDAsIDAsIDc4MDUsIDAsIDAsIDY5MzUsIDkyMjkyLCA3ODMyNSwgCisgICAgNzgzMjYsIDc4MzIzLCA0MzMyNywgNDM5ODksIDExOTA0NiwgODQ5MiwgODI1MCwgODQ1OSwgMCwgODQ5NywgODQ5NiwgMCwgCisgICAgMCwgNzgzMzYsIDc4MzM5LCA5NTQzLCA3ODMzNSwgNzgzMzIsIDc3ODMyLCA2NTg0OSwgNzc4MzEsIDk4MzY5MywgMCwgCisgICAgMTI0NTEsIDAsIDg2ODQsIDAsIDYxMDIsIDAsIDUyOTgsIDAsIDUyOTQsIDAsIDAsIDAsIDE5NTA2MiwgOTk0OSwgMTE5ODI2LCAKKyAgICA0MzYxNywgMTE5MjE1LCAwLCAxMjA3MywgMCwgMCwgNzc4NjMsIDEzMTA4LCAxMjA2MTcsIDc0Mzk3LCA0MTQ2OCwgCisgICAgOTgzNDkyLCAwLCA1MjkyLCA1NTI3MiwgMCwgMTkzOSwgNTMwMiwgMzk3MCwgOTE3ODc5LCAxMjQ1NSwgMTc5MywgMCwgMCwgCisgICAgMCwgNjY0MywgOTI0NzcsIDY1MjYzLCAwLCA3ODMzMCwgNDEyOTMsIDc4MzI4LCA2NTkyMywgMCwgMTMyMTksIDk1NjksIDAsIAorICAgIDc0MzgzLCAwLCAwLCAwLCA1NTAwLCA4ODEzLCAwLCAwLCA3NDU2NiwgNTMyMiwgMCwgNzgzNDAsIDQzNjMxLCA1MzI0LCAKKyAgICA2NjQ0MywgMzc4NCwgNDE2MTQsIDY1MjY5LCA2MjMwLCA3ODM0OSwgNzgzNDUsIDQzMzI0LCAzMzYwLCA3ODM0NCwgMTE1MjMsIAorICAgIDAsIDkyNDg4LCA5OTI2LCA3MTk3LCAwLCA2ODQyOSwgNDI4OTQsIDQxODIxLCAxMjQ5LCA3ODM2MCwgNzgzNjEsIDc4MzU2LCAKKyAgICA3ODM1OCwgNzgzNTMsIDY0ODk5LCA2NDc2MywgNDExNDksIDQxODA3LCA0MzE2MiwgNDE4MTUsIDQxMTUwLCAwLCAxMDU3MSwgCisgICAgMTAwOTYsIDAsIDAsIDc4MDc0LCA2OTQ3LCA0MTE1MiwgODg3LCA5MjQ5LCA2NTY1LCA3ODUxMCwgNDE5OTAsIDc4NTA5LCAKKyAgICA0MTgxMSwgNzQ0NjYsIDAsIDY2NzAsIDc3ODgyLCAwLCAwLCA0MzA5MiwgNDMzMjUsIDAsIDEwMTY4LCAwLCA5NzgxLCAKKyAgICAxMjg2NTUsIDkxOTAsIDAsIDk2NjYsIDgyNjksIDY1OTQ0LCA3NDAwNSwgMTMwMTksIDExNjcwLCAxMjczODMsIDMxNSwgCisgICAgMTI4MTMsIDAsIDc4NDMyLCA3ODI1NiwgNzgzNTEsIDc4MzUyLCAwLCA5ODMzOTIsIDAsIDAsIDEzNzgsIDk1MDksIDAsIDAsIAorICAgIDc0NDc1LCAzMDY2LCA5MjIyMCwgNjc4NDcsIDAsIDkyMzU1LCAwLCA3ODM2NSwgODc4NywgMTIwMzc5LCAxOTQ2MTYsIAorICAgIDQxNjE4LCAxOTQ2MTUsIDc4MjYxLCAxOTQ2MTQsIDAsIDY0NjUyLCAwLCAxOTQ2MTIsIDAsIDc4MzY2LCA0MjA4OCwgMCwgCisgICAgMTk1MDYxLCA3MTc2LCAxMjg4MzMsIDEwMTM3LCA2MTIxLCAxMDk5NSwgNzgyNTksIDc0NTM0LCA4MTE5LCA2NDg3NCwgCisgICAgOTE3ODE2LCAxMjcxOTksIDE5NDkzOSwgMCwgNzQ1MjUsIDAsIDAsIDEyOTMwLCAxMzk0LCA3NDUxNCwgMCwgNzQ1MTUsIDAsIAorICAgIDExODgwNCwgMjk5OCwgOTUyNywgMTIwNjU5LCA2NTE5MCwgMTI5NzcsIDQyMDkwLCAxMTkxNjUsIDAsIDExOTEwMCwgCisgICAgNDEyMzYsIDkyMjM1LCA0MjAwNSwgNDIwMDMsIDQxMjM3LCA1ODQ4LCAwLCAwLCAzNjcwLCAxMjg2NTcsIDE5NDYwMCwgMCwgCisgICAgMCwgNzg5MCwgMCwgMTEyOTgsIDQzMzE1LCAwLCA2MjI5LCAxNTkzLCAwLCAwLCA2MTksIDQ2MzUsIDY1MDgwLCAwLCAKKyAgICAxMjgwMDIsIDQxMjAsIDY1MzM3LCA2NTMzNiwgMCwgMTE4MDgsIDExOTIxNCwgNzQxMTUsIDkzNjYsIDQyNzkwLCA0MjAwNiwgCisgICAgMCwgNjUzMjcsIDY1MzI2LCA2NTMyNSwgMTA3NTcsIDE1MDcsIDQyMjE2LCA2NTMyMSwgNjUzMjAsIDY1MzM1LCA2NTMzNCwgCisgICAgNjUzMzMsIDY1MzMyLCA2NTMzMSwgNDIwNTksIDY1MzI5LCA0MjY4OSwgOTI0MjcsIDkxMjgsIDExODg4NSwgNDIwNzMsIAorICAgIDY3ODUsIDY0NTkwLCA5ODM1NjUsIDQzNzEsIDcxOTYsIDY1MzE4LCAyMDM1LCA2NTMxNiwgNDEwNiwgNjUzMTQsIDY1MzEzLCAKKyAgICA0MjA3NCwgMTI3ODQ3LCA0MTIyOCwgMCwgNjU2MDksIDQxMjQxLCA3OTAzLCA0MTIzOSwgNDM1MzMsIDc4NDU5LCA3MTg5LCAKKyAgICAwLCAwLCAwLCAxMjM1NywgNDI4MDIsIDc4NDUwLCA4NDg3LCA5MTMxLCAwLCA0NjE1LCAxMjY5NSwgMTI3NzUyLCAwLCAKKyAgICAxMjE3NSwgMCwgNjQ1MzUsIDAsIDc4MDksIDAsIDAsIDU2MiwgMTIxNjksIDY1OTAsIDY5NzYyLCA2NjQ1NSwgNjQ3MzgsIAorICAgIDMyMTksIDY4NjU0LCA5ODM1MjIsIDAsIDEwMzcsIDAsIDIwMjUsIDEyODI2MywgMTMwOTgsIDc4NDQyLCAxMDYzNywgNDU2OCwgCisgICAgNTQ5LCAxNTcwLCAwLCAyODM1LCAwLCAxMDYyNCwgNDM2MjMsIDExMDcyLCAxMjcxOTEsIDAsIDAsIDEyNjA2LCA3ODQzMywgCisgICAgMjgyNSwgMCwgMTA4MjUsIDgwNzksIDI4MjEsIDQxMDQ2LCA5MjMyNywgMCwgOTgzNDg4LCAxMjA1OTMsIDEzMDcxLCAwLCAKKyAgICA0NTIsIDQxMDQ5LCA0Mjg0MCwgNjM0NiwgMjgzMSwgNTQ2MSwgNzQ1OTYsIDExNDY1LCA1MjEyLCAwLCA2NDcwMywgCisgICAgMTE5MTkxLCA0MjMwOCwgNzE4MSwgMCwgNDEzMzIsIDAsIDEyMzMzLCAwLCAxNjY4LCAwLCAwLCAwLCAxMTg3LCAwLCAKKyAgICA0MjYyOCwgNzg1NzUsIDAsIDEyODc3NywgMCwgMzI0MCwgMTI4NTE4LCAxMjE5NCwgMCwgMTE1OTEsIDQxMDY1LCA1MzIzLCAKKyAgICA4MTY2LCAwLCAwLCAwLCA3NDUzNSwgMTYyMywgNjUyOTcsIDEyODg1NiwgNTcxLCAwLCA0OTE4LCAwLCA1Mjg4LCAxMjcyOTUsIAorICAgIDg5MTYsIDY1MDQ4LCAxOTA5LCA4ODY0LCAwLCAwLCAxMDczNiwgOTI1MDgsIDExNTcxLCA3NjE1LCAxMjczMDAsIDkyMjk2LCAKKyAgICA0MjM3LCA5MjU3NiwgMTAzNSwgNjU4MTUsIDAsIDc4ODEsIDcwMSwgNjU5MzYsIDM0ODksIDAsIDAsIDEyMDc1MSwgMTE0MDMsIAorICAgIDAsIDAsIDEyNzE0NiwgMzc5NiwgNjgwMCwgMCwgMzk5NCwgMTE0MjEsIDAsIDE5NTA3NiwgMCwgMCwgMCwgMCwgNjQ4NTcsIAorICAgIDEyODEwNSwgMjg1NSwgMTI3ODI4LCA2NjMwOCwgNDE2MjEsIDY4MjE0LCAxMjcyODMsIDEyNzgxNywgMTA2NTQsIDAsIAorICAgIDExOTIyNiwgMTIxNjQsIDMyNDYsIDc5MDYsIDQzOTcyLCA2NTg0NywgNzE4MiwgMCwgMTMwMjQsIDE5NDgyMiwgNzQyNzAsIAorICAgIDEyODI4OSwgMCwgMCwgMCwgMTQ5NiwgNzQ3LCAwLCA5NDIsIDIzNzgsIDQzMTM2LCAxMjc5MDUsIDg0NjYsIDAsIDkzMjAsIAorICAgIDgwMDEsIDEyMzIsIDgxMzksIDExNjE3LCAwLCAwLCAxMTQwOSwgNjgzNzMsIDYzODIsIDAsIDY0NjM0LCAxMjgyNzksIDAsIAorICAgIDExNjEyLCAwLCA2NzYwMCwgMjM3NCwgMCwgODQ3NSwgMTE2MDksIDY2MzEzLCAwLCAwLCA1Mjg2LCAxMTkyOTcsIDAsIDAsIAorICAgIDY0OTI1LCAxMjAyODMsIDE5NDU4NCwgMTE4OTgyLCAxOTQ1ODMsIDc3MDUsIDExOTQyLCAxMTMwNSwgMTk0NTgxLCAzMzA5LCAKKyAgICAwLCAwLCAwLCAwLCA2ODAyLCAwLCA0MTY1MywgMTI4MCwgMTI0MSwgNzE2OCwgMTIwOTYsIDAsIDY2NjE1LCA0MjU2NSwgCisgICAgNDE2NTEsIDAsIDAsIDAsIDQxNjUwLCA2NjUwNywgNjY0NzAsIDAsIDEyOTE0LCA0MTQ5MSwgNjYwMTAsIDExOTU1MiwgCisgICAgNjA3OCwgOTk1NCwgMCwgMTQ3NSwgMCwgOTkzOCwgNjA4NCwgOTE3NTQ2LCA0MTA2NCwgNDEwNjIsIDAsIDAsIDMyNTYsIAorICAgIDEyODY0MCwgNDIwNzYsIDQzMjUyLCA3ODgyMywgOTE3OTA2LCA4NzI3LCAwLCA2NTg3NSwgMCwgMCwgMTI3NzYyLCAxMDU2MiwgCisgICAgNzQyMTUsIDQzMDY1LCAwLCAwLCAzMjQ4LCA3NDI5NywgMzI2MSwgOTAxNSwgMCwgMCwgMzYzNSwgNjQzMzcsIDAsIDAsIDAsIAorICAgIDcxOTUsIDAsIDIwMDcsIDY0NDMxLCAwLCAwLCAwLCAwLCA2MzUsIDAsIDAsIDY1NjEzLCA3NzkwOSwgOTI0MjAsIDczOTk3LCAKKyAgICAwLCAwLCAxMTkyMTgsIDc5ODQsIDg2MDAsIDc0NDM0LCAxMjc3NzAsIDQxNzYsIDAsIDIwMzQsIDkyNTUxLCAxMjA4MDUsIAorICAgIDY1ODkxLCAxMjcwMzgsIDAsIDMxOCwgMjAzOCwgMTI4ODYwLCA3ODU5NiwgMCwgMzY0OSwgMTMxNDksIDQyMTQ1LCA0Mjc5OCwgCisgICAgMzYzNCwgMTIwMjkxLCAxMTg5MjcsIDY3Njc3LCAxMjAxMjQsIDc4NjYsIDAsIDExNDAyLCA0MjE0NiwgMTIwMTM0LCAKKyAgICA3NDIzOCwgNDI2NjQsIDI4NDksIDEyNzAzNCwgMCwgNzkzOCwgMTI5NjAsIDE3NjEsIDExODEyLCA2NTM3OSwgNjgzODYsIAorICAgIDEyODE4NSwgMTE1OSwgMCwgNjk3MjksIDAsIDAsIDcxNzgsIDE5NDYzMiwgMCwgNDE2ODAsIDAsIDEyODIwMywgMTE1MzQsIAorICAgIDE1MTQsIDExNjY4LCA2Nzg5MSwgOTMxMywgNzAxNSwgMCwgNjc4NzcsIDAsIDEyOTg5LCA2NjQ3NCwgOTM2OCwgMTI4NDgsIAorICAgIDE2MjQsIDQzMjcwLCAwLCAxOTQ1NjMsIDEwODE4LCAxMjgyMDcsIDk5NTMsIDAsIDc4NDIxLCAxMTk0LCAzMjQyLCA5NzYxLCAKKyAgICA5NTU1LCA4NTk4LCAxMjAyOTksIDYxNjksIDEyODcxLCAxNTUxLCAyNzk4LCA2NTE3NiwgNDk1OCwgNDI3NTIsIDExOTAyNSwgCisgICAgMCwgNjc4NzUsIDEyMDMwMSwgMzQ5NSwgNjY2NDgsIDE5NDc2OCwgMCwgNjgzNjQsIDAsIDQ4OTEsIDAsIDEwNjQxLCAwLCAKKyAgICA3Mzc0NiwgMCwgNjgzNTIsIDAsIDczNzg3LCAwLCAxOTQ2MzMsIDcxOTksIDY0OTU1LCAwLCAwLCAwLCAwLCAwLCA0MjY4NSwgCisgICAgNDI2NzksIDE5MywgMCwgMCwgMCwgNDI2NjcsIDAsIDUyNzEsIDkyMzE4LCA5MjUxNywgMTE4ODgyLCAxMzYyLCAxMzI5NywgCisgICAgMCwgMTI4MDk0LCAwLCAwLCA3Mzc4OSwgMCwgNjY1OCwgNDQyNiwgMCwgOTI2MjgsIDk4MzU3NywgOTIzMTksIDcyNzYsIAorICAgIDQyMTYzLCA1MjIwLCAwLCAwLCAwLCAyNDE2LCAzMzEwLCA0MjcwMywgMCwgMzc5LCAwLCAxMjc5NzcsIDAsIDAsIDMyMjMsIAorICAgIDY1NDkyLCAxMjg0LCAxOTQ3NzEsIDQ1NDksIDAsIDAsIDAsIDEyNzc2MywgMTA4MDcsIDk1NTgsIDE5NDYxMywgMCwgODUxNSwgCisgICAgODY4OCwgMTI4NjYsIDAsIDMyOTQsIDAsIDg1MjksIDEyODEwMSwgNDMzODUsIDc1NjQsIDAsIDQzMzI5LCAwLCA5MjQ1OCwgCisgICAgNzM3NTcsIDY2NDU2LCA0MjM1OSwgMCwgMjAzMSwgMCwgNzIwMiwgMCwgMTI2NzYsIDQyNzI5LCA5MjE5OCwgMzIxNSwgMCwgCisgICAgNzcxMCwgMTYxMCwgNzM4MDEsIDAsIDAsIDY1NjgyLCAwLCAxMjA1MzcsIDY1OTI0LCA5OTc0LCAyMjgsIDY2MzU0LCAxNTAxLCAKKyAgICAwLCA2NDM5NSwgNTE3OSwgNzIwMCwgNjIyNSwgMCwgNjU3OTQsIDE3MjUsIDY1NTMzLCA4MTk2LCA3NDc2LCA3NDM5OSwgMCwgCisgICAgMCwgNzE1MiwgODUwMiwgNTc2MiwgMTk2NywgNzQ4MywgMCwgMCwgODEwNCwgMCwgNzQ3NCwgOTI1NzEsIDAsIDAsIDEwNDE0LCAKKyAgICAxMzAwMSwgODE0MSwgMCwgNDI1MzcsIDE1NTcsIDQzNTk0LCAxMjg2NDIsIDYzMzAsIDY4MDUsIDg2MzEsIDI1NDUsIAorICAgIDEyMDY3MiwgMTI3MTY2LCAwLCA3NDE5MCwgMCwgMCwgOTgzNTIxLCA0Mjc2MiwgMCwgNDI5MTQsIDE2NTAsIDI2MiwgMTYzNywgCisgICAgMCwgNzkwMSwgMzIzOCwgMTI4MTczLCA0MTg2MSwgMCwgMCwgNjUxNTgsIDEwODYwLCA5ODM1NzUsIDQzNjU4LCA3NTI3LCAwLCAKKyAgICA0MzMxOSwgNjQxOSwgMCwgNDUsIDAsIDY0NTg4LCAwLCAwLCAxMTk4MTAsIDcxOTQsIDUyOTEsIDAsIDQzNjY2LCAxMzEyOSwgCisgICAgMCwgOTA4NCwgMCwgODczNywgMCwgMTI4ODEsIDAsIDEyOTA2LCA5NjM5LCA3OTEyLCAyNjIwLCAwLCAwLCAwLCAwLCAxNzksIAorICAgIDY1ODk2LCAwLCA2NDc1NiwgMjg1MywgNzg0NDMsIDExODgxMywgOTgzNjI1LCAxMTg5OTYsIDExOTAwOSwgMjg1MCwgODA4NCwgCisgICAgMCwgNzM4NTAsIDI4MDEsIDkyMjg0LCA0MjA2OSwgMTE5ODM5LCA3NDc1NCwgMTE5ODQxLCA0MjA3MiwgMTE5ODQzLCAKKyAgICAxMTk4NDIsIDEwMzk4LCAwLCAwLCA4Mzc3LCAxMjcxMTYsIDgyNDUsIDY4NDAxLCAzMTU4LCA5MjM5NiwgMzk4MywgNDM2NTYsIAorICAgIDkyMywgMTE5ODU3LCAxMTk4NTYsIDI5MiwgMTMwMDIsIDExOTg0NSwgMTE5ODQ0LCAzMjIxLCAxNzYzLCA5MjQ2MywgNDYxMiwgCisgICAgMTE5ODUxLCAxMTk4NTAsIDcyNTMsIDEyNzExMCwgNjgzOTEsIDAsIDEwNzgyLCAzNjM3LCAxMjk5NiwgNDM1NDIsIDAsIAorICAgIDY0NTc4LCAwLCAzMjI4LCA2OTYzNiwgODc4MywgMCwgMTE5NjE0LCAyNzMxLCAwLCAwLCA3ODU4NSwgNDEwMiwgNzY5NiwgCisgICAgNzM4NzgsIDAsIDAsIDc4NTg2LCA0MzMxNiwgNDE3NywgMTEyODMsIDkwODksIDAsIDczOTk2LCAwLCA2NDUwMCwgNDM2NzQsIAorICAgIDAsIDY0OTQ3LCAxODU2LCAwLCAwLCA2Mzc5LCAwLCAwLCAwLCAzMjA4LCAxMjk3NSwgNzQ3NzUsIDAsIDk4MzY2MywgCisgICAgOTIzODksIDc0MDcyLCA1NTI2OSwgMCwgMCwgOTgzNDE4LCAyMDMzLCA3ODU3NywgNzg1NzYsIDE5NTAyNiwgNTUyNTQsIAorICAgIDc3NDAsIDAsIDAsIDAsIDczOTY0LCAwLCAwLCA2NzYxMiwgNjU2NzQsIDAsIDAsIDQxNjg5LCAwLCA3NDAwNiwgNjQ5MDksIAorICAgIDY2NDYsIDExNzkwLCA3NDAxOSwgMCwgMTI4MDY2LCAxMjgwMzEsIDg1NjEsIDQ1NzMsIDAsIDUzMjYsIDAsIDEyMDYwNSwgCisgICAgNzIzMCwgODI1NywgMCwgODc3OCwgNDE2ODgsIDAsIDY1Nzc2LCAyMDcxLCA4MzE0LCA2NDU5LCAwLCA3NjI4LCA2NTA5MiwgCisgICAgNzM5MDMsIDY2NzIxLCAxMTM0MiwgMTI4NTYxLCAwLCAwLCAxMjgyMjYsIDEyNzAwMSwgMCwgMTE4MTAsIDEzMTY0LCAKKyAgICAxMDcyMywgOTY3LCA5ODM2ODMsIDAsIDExOTQ2LCAwLCAzMjU3LCAwLCAxMjMwNywgMTg0NSwgMCwgNDM1MjYsIDAsIDAsIAorICAgIDE4ODYsIDQyMzQyLCAxMDA4OSwgODcwLCA3NjQ4LCAzNDk5LCA4NjA5LCA3NjUyLCA4NzYsIDg3MSwgODc3LCAwLCA4NzgsIAorICAgIDQyMDE1LCA4NzksIDQzNjkyLCA0NTYzLCAwLCAwLCA3NTkxLCA2NTg4NywgODY3LCA5NTIwLCA4NzIsIDk4MzYxNCwgODY4LCAKKyAgICA4NzMsIDc2NDIsIDAsIDg2OSwgODc0LCA3NjQ0LCA5ODM2MTAsIDg3NSwgNzkwLCAxMjgzMDMsIDAsIDAsIDAsIDY2MTgyLCAKKyAgICAwLCA1NDI5LCAwLCA2NjE4MCwgMCwgNjYxODEsIDY4NDUyLCAwLCAwLCA0MjA2NywgMCwgNTQzMywgMTA2NTcsIDc5MTEsIAorICAgIDE5NDYyMiwgMTU0NywgNjYxNzYsIDQyMDEyLCAxMjA1NzYsIDU0MjUsIDQ5NzcsIDk5OTksIDUzMTcsIDU0MjMsIDQ2MTEsIAorICAgIDAsIDY3NjM3LCAwLCA5Njc5LCA3NDEyMiwgMCwgMCwgMCwgNjYxOTQsIDQ0MTgsIDY2MTg0LCA0NjI4LCA0MjQ1LCAKKyAgICAxMTk2NDgsIDAsIDAsIDE4NTEsIDAsIDEyNzE4OSwgMTE5MDgsIDAsIDkzNjAsIDExODg5NywgOTgzNTMwLCA0Mjc3NiwgCisgICAgNjYxODcsIDEyODM3LCA4ODI5LCA3NzExLCA5MjcxNCwgMCwgOTIzMjEsIDQzMzE4LCAwLCA4ODA5LCAxMTk5NzQsIDAsIDAsIAorICAgIDEyMDYwNCwgMCwgOTgzNjE3LCAwLCAwLCAwLCAwLCA3NDI3LCA5OTU4LCA0NTg4LCA0MzY4MCwgMCwgNzQ0ODQsIDAsIAorICAgIDI0MzMsIDAsIDExOTYyMiwgMzM1MiwgNzQzNjMsIDk4MzYyMCwgMCwgNzkzLCA3NDQwNCwgMCwgMzA1LCA1NjcsIDY3NjYyLCAKKyAgICA4NDIsIDEyODUxOSwgODIwOCwgMCwgNDE2OTUsIDE2NDcsIDExODg3NywgMCwgNzgzNywgOTE3NjI1LCA4MTgsIDUzMzcsIAorICAgIDkxNzYyMiwgOTE3NjIxLCA0MTM3NiwgMTE5OTc4LCA5MTc2MTgsIDEyMDU5NCwgNzQwODYsIDkxNzYxNSwgOTE3NjE0LCAKKyAgICA5MTc2MTMsIDEwOTczLCA2NjM1OSwgMTM3MiwgMTI3MTcyLCA5MTc2MDgsIDQ5NjksIDEyNTQsIDkxNzYwNSwgOTE3NjA0LCAKKyAgICA5MTc2MDMsIDkxNzYwMiwgNjUyMjgsIDc4MjIxLCAwLCAwLCAyODQwLCAwLCAxMTk5ODIsIDk4MzY3MSwgMCwgMzI0NSwgCisgICAgOTA2OCwgNjgxOTQsIDY0NzI1LCAwLCAwLCAxMjk5MSwgMCwgMjY1MSwgMTI4NTI4LCA5ODM2MTksIDkxNzYxMSwgMTI3MDI2LCAKKyAgICAxMjg4ODMsIDAsIDAsIDQzNjQ4LCAxMjA4MTIsIDAsIDQzMzIyLCA5MjY2MiwgMCwgMCwgNjQzNzIsIDkyNjk4LCAzMjI2LCAKKyAgICA2NTUsIDc1MiwgNzQ1NywgNzQ1NiwgNzQ1MiwgMzI4NSwgMTI4Nzc5LCAxMjc4MjEsIDExOTk4OCwgNjU2MTAsIDIzOTEsIDAsIAorICAgIDkyMjQ4LCA2NzEsIDI1MCwgNzQzNCwgNjE4LCA2NjgsIDYxMCwgNDI4MDAsIDc0MzEsIDExNTIsIDQyODAxLCA2NDAsIAorICAgIDEyMDY2NiwgNzQ0OCwgNzQzOSwgNjI4LCAzOTA1LCA3MzgxMCwgMCwgMTI4MjY2LCA2NDc0OSwgNjc4NTAsIDIxMDcsIDAsIAorICAgIDAsIDQ2MDUsIDEyODE3NCwgMCwgNDMzNzIsIDY1OTQ1LCAxMjg4MzgsIDAsIDExOTU5MCwgMCwgMCwgMCwgOTg3LCA2OTI3LCAKKyAgICAxMTU3MiwgNDIyNjEsIDExNDY0LCAzMzY1LCA5OTcxLCAwLCAwLCAxMjgyOTcsIDAsIDAsIDAsIDAsIDExMzM0LCA0MzMyNiwgCisgICAgMTI2MDksIDExNTE5LCAxMTUwMywgNTUzMCwgNTIxMCwgMCwgNDYyNywgOTgzNjI3LCA1MjA4LCAwLCAxMjg4NDIsIDEwMzMyLCAKKyAgICA1MjE4LCA3OTc2LCA5MTU2LCAwLCAzMjQ0LCA1NTI5LCA2OTY0NywgNzM4OTQsIDEyODg1MiwgNTQzMiwgNjQ5NjUsIDU1MjcsIAorICAgIDc0MDMzLCAxMDUxNiwgNzc5MCwgNTUyOCwgMCwgNDIxNDAsIDEyMDI4MSwgMCwgMCwgNDM1NDUsIDk4ODcsIDAsIDQwMDAsIAorICAgIDc0MjksIDc0MjgsIDY2NSwgNzQyNCwgMzIwNiwgMTIwMjc4LCA3ODg0LCAwLCAxMjg1NjYsIDkxNzk4OSwgMTI4NjY2LCAKKyAgICAyMTEsIDI1MDksIDAsIDEyMDU3MywgNjg2NzIsIDMyMjAsIDQyMjM1LCAwLCAxMDY5MCwgODk1MSwgNTIxNCwgNDI0NzQsIAorICAgIDgxMTgsIDAsIDcwNDgsIDQ1OTAsIDEyNzI1OCwgNTg1MiwgMCwgMCwgMTI3MjU5LCAxNzA4LCAwLCAwLCAyNjIzLCAxMTk0MywgCisgICAgMCwgNjkyMjYsIDAsIDQ2OTgsIDY2NTA5LCAxMDY2LCAxMTk5MjEsIDQ3MDEsIDk4MzYxMSwgMTIwMjg1LCA3NDIyNSwgCisgICAgMTE5MTE0LCA4MjY3LCAwLCAxMjcyNjUsIDAsIDc1MTYsIDAsIDI2MjUsIDk4MzcwOSwgODAzNCwgNzQzMDksIDAsIDM2MzEsIAorICAgIDEwOTU1LCA3ODUwLCAxMjAyOTMsIDg0MTYsIDAsIDAsIDAsIDQzMzg0LCAxMjY2MCwgMCwgMCwgMCwgNzQ4NTAsIDQxMDY5LCAKKyAgICAwLCAxMjgxNTYsIDEyMDk5LCA0MzEwLCAxMDAzMiwgNjI1MiwgNzEzLCA3OTkwLCAwLCAzOTkwLCAwLCAwLCA2NjM2OCwgCisgICAgNTAxNywgNjQ5NTYsIDcwNzEsIDAsIDExOTE0NCwgMTAzMCwgMTE4ODAwLCAwLCA5NTEzLCA0MTA1OSwgOTM1NywgMCwgCisgICAgMTc3MywgMCwgMTIwMzUwLCAwLCA2MzM5LCA3NzQ1LCA5ODQ0LCAwLCA2NDY1MCwgOTQsIDE4ODAsIDc0NzY2LCA5ODM1NzMsIAorICAgIDg5MDgsIDAsIDEyODcwNywgNjU5MTMsIDc4NDcwLCAxMDc1MiwgMTMwMDMsIDAsIDAsIDQxMzA3LCA4NzMyLCAxMjAzMzgsIAorICAgIDAsIDE3NTcsIDY5NjQsIDQ2OTYsIDAsIDAsIDY0Nzg1LCA3Mzk0LCAzNjQxLCA1NDE5LCAxMjgwNTUsIDAsIDEyNzg4MywgMCwgCisgICAgMTIwMzQ0LCA0Mzk4OCwgMCwgODYxMCwgNDMwNjIsIDc1OTIsIDg1NiwgNzQyOTksIDkzNiwgMTMyODksIDEyNzUyMSwgCisgICAgNDMxNzEsIDE0NTksIDAsIDY1MjQzLCA3ODYzOCwgMTk5NTMsIDAsIDE1MDQsIDExOTEwOCwgMCwgMTI5MTMsIDc0MjA2LCAKKyAgICA3NTI5LCAwLCAwLCA5ODM2ODksIDEyMDc4MiwgNDExMywgMCwgMjM3MiwgMzM2LCAwLCA3NTA5LCAxMjE1MiwgMCwgNjgyLCAKKyAgICA2NjQ1OCwgNDE1MDUsIDAsIDY0NzQzLCAxMDU5MywgMTcwMywgMCwgOTgzNjg3LCA4MDMzLCAwLCAwLCA5ODEwLCAxMjcyNjksIAorICAgIDAsIDEyOTcwLCAwLCA0MjM1MSwgMTAxMDksIDAsIDAsIDE5NDY5MywgMCwgMTE5MjQ3LCAwLCAwLCA3NDI5MSwgMTk2NSwgCisgICAgNzA2OSwgNDMzMTIsIDAsIDczODg3LCAwLCAyMDg3LCA2NDM3MCwgNjMxNCwgNDE3MTQsIDg1MDEsIDAsIDAsIDc0MjM5LCAKKyAgICA0MTMxNywgOTI2MTQsIDIwOTEsIDc0NTQ1LCAyMDkwLCAwLCA5MzUzLCA3MTE3LCAyMDc3LCA3Nzg4NiwgMCwgMTA0OTgsIAorICAgIDIwODMsIDc3ODg4LCAwLCAwLCAxMTkyMzYsIDYzNCwgMCwgMCwgMCwgNjk3NzksIDQxNjUsIDg3NDYsIDAsIDk2NTQsIAorICAgIDEyODU2LCA2OTI0LCAwLCA3MDY2LCA5ODM0NTQsIDAsIDEyODEzNSwgNDEwMzcsIDQyNjkyLCA3Nzg2LCAxMjk1OSwgCiAgICAgNDEwMzksIDAsIDAsIDY4MCwgNjI3NCwgMTI4MjAwLCAxMTgxLCA3MDU2LCAzMTc0LCAwLCAwLCA5MjY2OCwgNjU2NjUsIAogICAgIDEyNzM3NSwgMCwgNjkyMCwgMCwgOTIyOTUsIDAsIDExODk2NSwgMCwgNjQ2NDQsIDEyNjk4MSwgMCwgMCwgNDEwMjgsIDAsIAotICAgIDYyMzEsIDI2MTMsIDY1MzAyLCA0MDk4OSwgMCwgMTk0Njk2LCAwLCA0Mjc2MCwgMCwgMCwgMCwgNDA5ODcsIDQ2NjcsIDAsIAotICAgIDAsIDg4MjgsIDAsIDAsIDEyNDYsIDQ3NDYsIDAsIDAsIDExMDIxLCA0NzQ5LCA5MjY3NSwgMCwgOTIxLCA0NzQ0LCAwLCAKLSAgICAxMjcwMiwgMjQyLCAwLCAxNTY2LCA4MjE3LCAwLCA2NDY1MywgNzgzODYsIDEyODEyMSwgNzQwMzYsIDc0NTA1LCA0MzI3NCwgCi0gICAgNTMxMywgOTUxLCAwLCAwLCAwLCA3NjA0LCAwLCA0MDA5LCAxMjc4MTYsIDAsIDEyMDU2MiwgMCwgMCwgNjQ4NjAsIAotICAgIDExOTEzOCwgMTE5MDY5LCAwLCAxMjczNzAsIDQwNDgsIDAsIDAsIDEyMDU5NiwgMTY0NiwgNzc4OTAsIDY0NTM0LCA3Mzk5NSwgCi0gICAgMTIwNzA1LCAwLCAxMTk4OTAsIDI1NzksIDExOTkwNSwgMzE3NywgMTEzNTcsIDkwOTksIDQxMDcsIDM0NDEsIDExOTg5NCwgCi0gICAgMjk3NSwgNzQ0NDIsIDk4MjIsIDAsIDU1MjIwLCAxMDA4NCwgNzM5NDMsIDExODg0MCwgMCwgOTE3NTYyLCAwLCAzMzk5LCAKLSAgICA5ODUxLCAwLCAxMTkwOSwgOTA1OSwgMCwgNzY4NywgMCwgNjc4OSwgMCwgMCwgMCwgMCwgMCwgMCwgMTc3NywgOTE1MSwgCi0gICAgMTEzNywgNjk3NjcsIDc0OSwgNDIzNjYsIDAsIDUzODUsIDEyODU3NCwgMTI4MjE4LCAwLCAwLCA1OTg5LCAwLCAwLCAKLSAgICAxMjgwOTEsIDAsIDQxNjg1LCA2OTIyMywgMCwgOTc2OSwgNDE2ODQsIDAsIDUxOSwgMCwgMTE3NDAsIDU3NjYsIDAsIDAsIAotICAgIDI2MDAsIDg4NDgsIDEyMDEzOCwgNDEyOTcsIDAsIDM2NjYsIDc0NDczLCA0MTMwMCwgNzQ0NjgsIDY1MTYwLCAwLCA2OTY4OCwgCi0gICAgNjk3NzEsIDc0NDc5LCAwLCA2NTU4LCAwLCAwLCA2OTc2NSwgMTIwNzUwLCAyNTIsIDAsIDQxMzAyLCAwLCAwLCAwLCAKLSAgICA2OTc2MywgMCwgMTE3MjksIDg3MTksIDkwNjAsIDAsIDEyMDEzOSwgMTA3NjEsIDAsIDAsIDAsIDExODc5MiwgMTE3MzQsIDAsIAotICAgIDExNzMwLCAwLCA5NTkzLCA1NzU3LCAyNDAzLCA2NDgwOCwgNTUyNzUsIDAsIDExNzI4LCA0MzU3MiwgMCwgMCwgNzc2NCwgMCwgCi0gICAgMTEwOTQsIDEyMDgyNSwgMCwgMCwgNDI4MiwgODI5OCwgMCwgMCwgMCwgMCwgMCwgNjQ0NDksIDAsIDEyNzUwOSwgNjM4NTQsIAotICAgIDg0NTYsIDAsIDc0NzgzLCA2NTY3MCwgMCwgNzgyNTAsIDAsIDc3NzQsIDEwNjA3LCA5NzkyLCAwLCAwLCAwLCAwLCAKLSAgICAxMjA3NjQsIDAsIDEwMDE5LCA3NDc2MiwgMCwgMzQ1OCwgNDM2NSwgMCwgMCwgMzY0NywgMCwgMjYwMiwgMTI4MzQxLCAwLCAKLSAgICAxOTQ3MDcsIDQxMTM1LCAwLCAwLCAwLCA2NDYzMSwgMTcyLCA0OTcxLCA0MTIxOSwgNDExMzcsIDE4ODksIDcyMzgsIDY1NDUsIAotICAgIDAsIDkyMTkzLCA3NTk3LCAxMDUyOCwgMCwgMCwgMzczMiwgNzM5MTAsIDE5NDU4OCwgNTM0NCwgMCwgNDMzNjYsIDQzMzYzLCAKLSAgICA5MDYyLCAxMTkyNTIsIDAsIDAsIDAsIDY0NDc5LCA5MjMyLCA5MjU5NiwgMCwgMCwgMTk0NzEyLCAxMDkwMCwgNDE1MzEsIAotICAgIDEyNjMsIDM3MjAsIDEyMDQ4LCAwLCA2NDI5MiwgNDE1MjQsIDcyMjcsIDExOTYzNSwgNjA5OSwgNDE1MzQsIDAsIDEyNzM1NCwgCi0gICAgMTI3MzQ1LCAyOTksIDAsIDg1MjUsIDEyNzM0NywgMzUyNCwgOTE3NTY1LCA4ODMxLCAxMjczNDksIDkyNTY0LCAzMDc1LCAKLSAgICA2Nzg2NywgMTI3MzUyLCAwLCA2NjM2MiwgMCwgNjQzNTMsIDAsIDAsIDU4NDUsIDAsIDAsIDAsIDI1ODEsIDgyMDAsIAotICAgIDY1MTE0LCA2ODQ2MCwgMCwgNDMyODMsIDU1NTEsIDAsIDEyMDczNSwgMCwgNjM0MCwgMTE4ODU1LCAwLCA3ODEzNCwgODY4MCwgCi0gICAgNzIwNCwgMCwgMjU4OCwgMjkxNCwgNzAxMSwgNTUyODEsIDAsIDI0NzEsIDE5NDYzMSwgMjg4MywgMjc0OSwgMTE5NTYzLCAKLSAgICA3Mzc3NCwgMTA5MTMsIDAsIDAsIDg2NjYsIDY3NSwgNDI0OTMsIDAsIDQzNTcxLCAwLCA2MjE5LCAwLCA5OTgwLCA0MTIzMiwgCi0gICAgMTA5MjgsIDAsIDQxMTUzLCA0MTIyOSwgMTE4OTY3LCAwLCAzNzM4LCAxMjczNjksIDAsIDEyNzExLCAzMTgxLCA2NjIxMiwgCi0gICAgNzQyODksIDY4NDcyLCA0Mjg1NywgODI2MiwgMCwgMCwgMCwgMCwgNDIzNDcsIDEyMDkyLCA5NjE1LCA3MjM0LCA3NDA0NywgCi0gICAgMCwgMCwgNjQ2NzQsIDAsIDAsIDczODQ2LCAyOTM0LCAxMjcyMiwgMTIwNzYyLCA5MjIsIDQzOTgzLCA3NDUwNywgMCwgCi0gICAgNzQ0NjEsIDMyMTgsIDEyMDQ3MSwgNzQyOTAsIDEyMDQ2OSwgNjQ1NjIsIDEyMDQ3NSwgODU2OSwgMTE0MDQsIDExOTMyLCAKLSAgICA3MzcyOCwgMzIxNCwgMTIwNDYxLCAxMjA0NjgsIDEyMTI4LCAzMjA3LCA2NTQ4NiwgNzg3MjksIDE5MDEsIDc4NzI3LCAKLSAgICAxMjczMjYsIDEyMDQ2MCwgNzQyNSwgMzIwNSwgMCwgNzg3MzcsIDc4NzM2LCA3ODczNSwgNDMzODMsIDc4NzMzLCA2NTQ1OSwgCi0gICAgMjYwNiwgNzg3MzAsIDczODk3LCAwLCAxMTQ5NiwgMTE3MywgMCwgNDEyNzIsIDExOTY2MSwgMCwgMCwgMCwgMTIwNzM3LCAwLCAKLSAgICAwLCAwLCAzNzgsIDI2MTAsIDAsIDY1MDc5LCAwLCA2NTY5NSwgMCwgMzcsIDcwNjgsIDAsIDEyMDQ4MCwgMTIwNDc5LCAKLSAgICAzMjA5LCAxMjA0NzcsIDAsIDEwNjM4LCA5NzY4LCAxMjA0ODEsIDAsIDAsIDAsIDAsIDAsIDAsIDY1NTEwLCAwLCAwLCAKLSAgICA1MjMzLCAwLCA2NDc5MiwgMCwgMCwgMCwgMCwgNzA2MCwgOTg0NywgMTIwMTQ0LCAxNjg1LCA1OTUsIDAsIDczOTcxLCAKLSAgICAxMjkyLCA4OTQwLCA3MzgwLCAxMTA4OCwgMCwgMTAwMDQsIDEyNjk5NywgMCwgNjU0MSwgMCwgMCwgMCwgMzI0MywgOTAxNCwgCi0gICAgNTYwNiwgMCwgNTM4LCA2NDYyMCwgNTYwMiwgODQ2NywgNzQzOTEsIDY1NDcsIDAsIDgyMDMsIDc4NDg4LCAwLCA4NDU4LCAKLSAgICA2NTIxMSwgODQ5NSwgMTE5OTA0LCAwLCA5MTc1NTIsIDc3OSwgNzgzMTQsIDY0MzY3LCAyNDY1LCAwLCA4MTkzLCA1NTI3OSwgCi0gICAgOTczMCwgOTI4MCwgMCwgNzA2NSwgNzQxNTUsIDQzNDYsIDAsIDczNzk4LCA1MDQsIDAsIDkyNDE0LCA4OTgyLCAwLCAwLCAwLCAKLSAgICA3ODIsIDAsIDEwODgzLCAwLCAxOTQ4NTIsIDczMiwgMzczNywgMTI3MjUzLCAxNTQ4LCA2ODY1MCwgMCwgMTgzMiwgNTYwNCwgCi0gICAgNTczNSwgNDExNDEsIDExOTAyMCwgNDM3NiwgMCwgMTE3ODcsIDM3NDUsIDAsIDAsIDQyODg4LCA2NTcxMiwgMCwgMzg2OSwgCi0gICAgMTE5MzcsIDU3MjUsIDEyNzUzOSwgMTc4MywgNjg2NDgsIDU3MjgsIDAsIDAsIDAsIDExOTE4LCA2NjU2NywgNTcyNCwgMCwgCi0gICAgNTcyNywgNzg1MjEsIDAsIDAsIDc2NCwgMCwgMTI4MTE2LCA0MzUzMSwgMCwgOTAzMywgMCwgNDI1MzIsIDYyMjMsIDExMDQyLCAKKyAgICA2MjMxLCAyNjEzLCA2NTMwMiwgNDA5ODksIDAsIDE5NDY5NiwgMCwgNDI3NjAsIDAsIDk4MzMxMCwgMCwgNDA5ODcsIDQ2NjcsIAorICAgIDAsIDk4MzY2NCwgODgyOCwgMCwgMCwgMTI0NiwgNDc0NiwgMCwgMCwgMTEwMjEsIDQ3NDksIDkyNjc1LCAwLCA5MjEsIAorICAgIDQ3NDQsIDAsIDEyNzAyLCAyNDIsIDAsIDE1NjYsIDgyMTcsIDAsIDY0NjUzLCA3ODM4NiwgMTI4MTIxLCA3NDAzNiwgCisgICAgNzQ1MDUsIDQzMjc0LCA1MzEzLCA5NTEsIDAsIDAsIDk4MzYwMiwgNzYwNCwgMCwgNDAwOSwgMTI3ODE2LCA5ODM0NDUsIAorICAgIDEyMDU2MiwgMCwgOTgzNDU1LCA2NDg2MCwgMTE5MTM4LCAxMTkwNjksIDAsIDEyNzM3MCwgNDA0OCwgOTgzMzQyLCAwLCAKKyAgICAxMjA1OTYsIDE2NDYsIDc3ODkwLCA2NDUzNCwgNzM5OTUsIDEyMDcwNSwgMCwgMTE5ODkwLCAyNTc5LCAxMTk5MDUsIDMxNzcsIAorICAgIDExMzU3LCA5MDk5LCA0MTA3LCAzNDQxLCAxMTk4OTQsIDI5NzUsIDc0NDQyLCA5ODIyLCA5ODM2NjcsIDU1MjIwLCAxMDA4NCwgCisgICAgNzM5NDMsIDExODg0MCwgMCwgOTE3NTYyLCAwLCAzMzk5LCA5ODUxLCA5ODM0NTIsIDExOTA5LCA5MDU5LCAwLCA3Njg3LCAwLCAKKyAgICA2Nzg5LCAwLCAwLCAwLCAwLCAwLCAwLCAxNzc3LCA5MTUxLCAxMTM3LCA2OTc2NywgNzQ5LCA0MjM2NiwgMCwgNTM4NSwgCisgICAgMTI4NTc0LCAxMjgyMTgsIDAsIDAsIDU5ODksIDAsIDAsIDEyODA5MSwgMCwgNDE2ODUsIDY5MjIzLCAwLCA5NzY5LCAKKyAgICA0MTY4NCwgMCwgNTE5LCAwLCAxMTc0MCwgNTc2NiwgMCwgMCwgMjYwMCwgODg0OCwgMTIwMTM4LCA0MTI5NywgMCwgMzY2NiwgCisgICAgNzQ0NzMsIDQxMzAwLCA3NDQ2OCwgNjUxNjAsIDAsIDY5Njg4LCA2OTc3MSwgNzQ0NzksIDAsIDY1NTgsIDAsIDAsIDY5NzY1LCAKKyAgICAxMjA3NTAsIDI1MiwgMCwgNDEzMDIsIDAsIDAsIDAsIDY5NzYzLCAwLCAxMTcyOSwgODcxOSwgOTA2MCwgMCwgMTIwMTM5LCAKKyAgICAxMDc2MSwgMCwgMCwgMCwgMTE4NzkyLCAxMTczNCwgMCwgMTE3MzAsIDAsIDk1OTMsIDU3NTcsIDI0MDMsIDY0ODA4LCAKKyAgICA1NTI3NSwgMCwgMTE3MjgsIDQzNTcyLCAwLCAwLCA3NzY0LCA5ODM0NDksIDExMDk0LCAxMjA4MjUsIDAsIDAsIDQyODIsIAorICAgIDgyOTgsIDAsIDAsIDAsIDAsIDAsIDY0NDQ5LCAwLCAxMjc1MDksIDYzODU0LCA4NDU2LCAwLCA3NDc4MywgNjU2NzAsIDAsIAorICAgIDc4MjUwLCAwLCA3Nzc0LCAxMDYwNywgOTc5MiwgMCwgMCwgMCwgMCwgMTIwNzY0LCAwLCAxMDAxOSwgNzQ3NjIsIDAsIAorICAgIDM0NTgsIDQzNjUsIDAsIDk4MzQ0NywgMzY0NywgMCwgMjYwMiwgMTI4MzQxLCAwLCAxOTQ3MDcsIDQxMTM1LCAwLCAwLCAwLCAKKyAgICA2NDYzMSwgMTcyLCA0OTcxLCA0MTIxOSwgNDExMzcsIDE4ODksIDcyMzgsIDY1NDUsIDAsIDkyMTkzLCA3NTk3LCAxMDUyOCwgCisgICAgMCwgMCwgMzczMiwgNzM5MTAsIDE5NDU4OCwgNTM0NCwgMCwgNDMzNjYsIDQzMzYzLCA5MDYyLCAxMTkyNTIsIDAsIDAsIDAsIAorICAgIDY0NDc5LCA5MjMyLCA5MjU5NiwgMCwgMCwgMTk0NzEyLCAxMDkwMCwgNDE1MzEsIDEyNjMsIDM3MjAsIDEyMDQ4LCAwLCAKKyAgICA2NDI5MiwgNDE1MjQsIDcyMjcsIDExOTYzNSwgNjA5OSwgNDE1MzQsIDAsIDEyNzM1NCwgMTI3MzQ1LCAyOTksIDAsIDg1MjUsIAorICAgIDEyNzM0NywgMzUyNCwgOTE3NTY1LCA4ODMxLCAxMjczNDksIDkyNTY0LCAzMDc1LCA2Nzg2NywgMTI3MzUyLCAwLCA2NjM2MiwgCisgICAgMCwgNjQzNTMsIDAsIDAsIDU4NDUsIDAsIDAsIDAsIDI1ODEsIDgyMDAsIDY1MTE0LCA2ODQ2MCwgMCwgNDMyODMsIDU1NTEsIAorICAgIDAsIDEyMDczNSwgMCwgNjM0MCwgMTE4ODU1LCAwLCA3ODEzNCwgODY4MCwgNzIwNCwgMCwgMjU4OCwgMjkxNCwgNzAxMSwgCisgICAgNTUyODEsIDAsIDI0NzEsIDE5NDYzMSwgMjg4MywgMjc0OSwgMTE5NTYzLCA3Mzc3NCwgMTA5MTMsIDAsIDAsIDg2NjYsIAorICAgIDY3NSwgNDI0OTMsIDAsIDQzNTcxLCAwLCA2MjE5LCAwLCA5OTgwLCA0MTIzMiwgMTA5MjgsIDAsIDQxMTUzLCA0MTIyOSwgCisgICAgMTE4OTY3LCAwLCAzNzM4LCAxMjczNjksIDAsIDEyNzExLCAzMTgxLCA2NjIxMiwgNzQyODksIDY4NDcyLCA0Mjg1NywgCisgICAgODI2MiwgMCwgMCwgMCwgMCwgNDIzNDcsIDEyMDkyLCA5NjE1LCA3MjM0LCA3NDA0NywgMCwgMCwgNjQ2NzQsIDAsIDAsIAorICAgIDczODQ2LCAyOTM0LCAxMjcyMiwgMTIwNzYyLCA5MjIsIDQzOTgzLCA3NDUwNywgMCwgNzQ0NjEsIDMyMTgsIDEyMDQ3MSwgCisgICAgNzQyOTAsIDEyMDQ2OSwgNjQ1NjIsIDEyMDQ3NSwgODU2OSwgMTE0MDQsIDExOTMyLCA3MzcyOCwgMzIxNCwgMTIwNDYxLCAKKyAgICAxMjA0NjgsIDEyMTI4LCAzMjA3LCA2NTQ4NiwgNzg3MjksIDE5MDEsIDc4NzI3LCAxMjczMjYsIDEyMDQ2MCwgNzQyNSwgCisgICAgMzIwNSwgMCwgNzg3MzcsIDc4NzM2LCA3ODczNSwgNDMzODMsIDc4NzMzLCA2NTQ1OSwgMjYwNiwgNzg3MzAsIDczODk3LCAwLCAKKyAgICAxMTQ5NiwgMTE3MywgMCwgNDEyNzIsIDExOTY2MSwgMCwgMCwgMCwgMTIwNzM3LCAwLCA5ODM3MDMsIDAsIDM3OCwgMjYxMCwgCisgICAgMCwgNjUwNzksIDk4MzUxNywgNjU2OTUsIDAsIDM3LCA3MDY4LCAwLCAxMjA0ODAsIDEyMDQ3OSwgMzIwOSwgMTIwNDc3LCAwLCAKKyAgICAxMDYzOCwgOTc2OCwgMTIwNDgxLCAwLCAwLCAwLCAwLCAwLCAwLCA2NTUxMCwgMCwgMCwgNTIzMywgMCwgNjQ3OTIsIDAsIDAsIAorICAgIDAsIDAsIDcwNjAsIDk4NDcsIDEyMDE0NCwgMTY4NSwgNTk1LCAwLCA3Mzk3MSwgMTI5MiwgODk0MCwgNzM4MCwgMTEwODgsIAorICAgIDAsIDEwMDA0LCAxMjY5OTcsIDAsIDY1NDEsIDAsIDAsIDAsIDMyNDMsIDkwMTQsIDU2MDYsIDAsIDUzOCwgNjQ2MjAsIAorICAgIDU2MDIsIDg0NjcsIDc0MzkxLCA2NTQ3LCA5ODMzMzgsIDgyMDMsIDc4NDg4LCAwLCA4NDU4LCA2NTIxMSwgODQ5NSwgCisgICAgMTE5OTA0LCAwLCA5MTc1NTIsIDc3OSwgNzgzMTQsIDY0MzY3LCAyNDY1LCAwLCA4MTkzLCA1NTI3OSwgOTczMCwgOTI4MCwgCisgICAgMCwgNzA2NSwgNzQxNTUsIDQzNDYsIDAsIDczNzk4LCA1MDQsIDAsIDkyNDE0LCA4OTgyLCAwLCAwLCAwLCA3ODIsIDAsIAorICAgIDEwODgzLCAwLCAxOTQ4NTIsIDczMiwgMzczNywgMTI3MjUzLCAxNTQ4LCA2ODY1MCwgMCwgMTgzMiwgNTYwNCwgNTczNSwgCisgICAgNDExNDEsIDExOTAyMCwgNDM3NiwgMCwgMTE3ODcsIDM3NDUsIDAsIDAsIDQyODg4LCA2NTcxMiwgMCwgMzg2OSwgMTE5MzcsIAorICAgIDU3MjUsIDEyNzUzOSwgMTc4MywgNjg2NDgsIDU3MjgsIDAsIDAsIDAsIDExOTE4LCA2NjU2NywgNTcyNCwgMCwgNTcyNywgCisgICAgNzg1MjEsIDAsIDAsIDc2NCwgMCwgMTI4MTE2LCA0MzUzMSwgMCwgOTAzMywgMCwgNDI1MzIsIDYyMjMsIDExMDQyLCAKICAgICAxMjA3NDksIDExNDIzLCAwLCAxMTk4NjEsIDAsIDQzNDY1LCAwLCAxMjgyNjcsIDY1NTksIDY0NTU3LCAwLCAwLCAxMjA2NDgsIAogICAgIDQzMDE5LCA0MzQ3NywgMTAyMzgsIDAsIDAsIDQzMzc3LCA5MjI4MiwgMCwgMTQ3OCwgOTc4MywgMTE4MjUsIDI2MDcsIAogICAgIDY0NzQwLCAwLCA3NzM5LCA3NDU0MywgMCwgMCwgMCwgNjEzMiwgMCwgNjM3NjUsIDAsIDAsIDQxMTQ0LCAwLCA5MjQzOCwgCkBAIC0xODIwMSw5OSArMTg0NDAsMTAwIEBACiAgICAgMTE5NjUwLCA0MTIxNywgMTE5NjYwLCAxMDAxOCwgMzYwLCAwLCAwLCA2ODE3NiwgNTg2MywgMzEzNywgMCwgNDE0NywgMCwgCiAgICAgNDEyMTYsIDc4NDQsIDI2MTYsIDExOTE5MCwgNjg0NjEsIDY1MjM0LCAwLCAxMzA3NiwgMzEzNSwgMCwgNzgxNDMsIAogICAgIDExOTEzOSwgMzE0MiwgOTI0NTEsIDAsIDEwODE5LCAxMTk1ODAsIDEwMTgzLCAwLCAyNjA4LCAxNDcwLCA3Mzk2NywgMCwgCi0gICAgNjIyNywgMCwgMCwgNjk3NDEsIDAsIDYxNjMsIDAsIDAsIDEyNzMxNCwgMCwgMCwgODYwMywgMCwgMTE5ODY2LCAzMzA2LCAKLSAgICAxMDg3NiwgNDMzOTIsIDExOTU3MywgMTI3OTMxLCA1NzUxLCAwLCA2MjIyLCAwLCAwLCAxMjA4NiwgNzQwMywgMTYwMCwgCi0gICAgNjQzMDksIDY0OTM5LCAwLCA2NDc4MywgOTI2NTgsIDExMzEwLCAwLCA4ODgyLCAwLCAwLCAyNTcwLCA3MDIxLCAwLCAwLCAKLSAgICA0MzExMCwgMCwgMTIzNCwgNjU0MCwgNjk3NCwgMCwgMCwgMCwgNTAwMiwgMCwgNDEyODYsIDAsIDEyNzAxOSwgMCwgNDM1ODUsIAotICAgIDAsIDY1NTEsIDAsIDEyODIyOSwgMCwgNDEyODksIDAsIDE5NDYwMiwgMCwgODk3NywgNjAyLCAxMjA4MTQsIDAsIDEyODc3OCwgCi0gICAgMTI4NjYxLCAwLCAwLCA0MTI3OSwgMCwgMCwgMCwgMTEwODEsIDQzNjE1LCAwLCAwLCAwLCAwLCAxMjcyNywgMCwgMCwgCi0gICAgNzgzOTcsIDk0NzUsIDcxMTIsIDY1MTA1LCAwLCA5NjMzLCAxMDg4NiwgNDM1OTIsIDc4MzEsIDAsIDE5NDU3MSwgMCwgCi0gICAgNzM5MTUsIDgwNzYsIDQzMDQ4LCA4MjkwLCA4MjkxLCA0MzA1MSwgOTI1NzAsIDAsIDI1OTYsIDQzNTg0LCAwLCAxMzExMywgCi0gICAgMCwgMTI3NzU3LCAyMzkzLCA3MDU4LCA5MDg3LCA3NDA2NywgNjg2NzMsIDQxNTc0LCA3ODMzNywgMCwgNzQwNTgsIDYzNzYsIAotICAgIDAsIDAsIDAsIDAsIDk4NTQsIDEyNzc0OCwgNjQ2OTYsIDAsIDEyODIyMCwgMCwgNjk5NCwgMCwgMTcyMCwgMCwgMCwgMCwgCi0gICAgNjUyOSwgNzA2MywgMCwgMzc1MSwgOTEyMCwgMCwgMCwgMTc5OCwgNzA5LCAwLCAxMzU0LCAxODc2LCAxMzE1MiwgNjU1NywgCi0gICAgMTI0MzAsIDgxMzcsIDAsIDkyNjQyLCAwLCAwLCAyNDUsIDEyODA5NywgMTE0NTYsIDQxMjMzLCA3MDcwLCAwLCAwLCA2MTM2LCAKLSAgICA5MTc2MDksIDY1Njc3LCA4NjgyLCA0MTIzNSwgOTI1OTUsIDQyMDQ1LCA5ODA0LCAwLCA0MzIsIDM1OTUsIDAsIDY1NDM3LCAKLSAgICAwLCA3NDQ1NSwgNDIzOTksIDAsIDAsIDEyODI3NCwgMCwgMTE5NjU4LCAwLCAwLCAwLCA3Nzg5NCwgODc5NywgMCwgOTA1MiwgCi0gICAgNjQ4ODgsIDcxNjcsIDIzNTYsIDk1LCA3NDc4NCwgMTA1ODAsIDAsIDQyMjg2LCAwLCA2NDY0MCwgMCwgMTE5MTA0LCAwLCAKLSAgICA3NDEzNywgMCwgMTAwNjMsIDEyNjUyLCAxMjE5OSwgOTI0ODAsIDAsIDI1NjYsIDExOTcxLCAwLCAwLCAxMDY1LCAwLCAwLCAKLSAgICA0MzQwMCwgMjU3NiwgNjY2OTYsIDAsIDAsIDQzNjA0LCAwLCAwLCA3NDA4MiwgNTE0LCA3NDUwMiwgMCwgMjkyMSwgNDMyMTUsIAotICAgIDY0NDkzLCA1NzcyLCAxMjk2OCwgMCwgMTk0OTQ0LCA3NDU4MCwgNDMzOTgsIDI1ODAsIDAsIDQxMzQxLCA0MTIyMywgNjU2NCwgCi0gICAgMTQ2MywgNDEzNDIsIDAsIDUyOTMsIDAsIDAsIDM3MzMsIDExMzQ2LCAwLCAxMjA1NCwgMCwgNzQwOTgsIDQyODI3LCAwLCAKLSAgICAxMzA5MSwgMCwgMCwgMCwgOTE3OTE1LCAwLCAxMjcwMjUsIDAsIDc0ODIxLCAwLCAwLCAxMTkwNDIsIDAsIDEyNzg2NSwgCi0gICAgMTMwOTAsIDY2NjQzLCAwLCAxMjcwLCAxMTMyLCA0MjM2MCwgMCwgNzQwOTYsIDY2NjU1LCA0MjU2OSwgMTI3ODI0LCAwLCAKLSAgICA2NDc2MSwgMCwgNDEwMjEsIDg1MTAsIDQyNDMyLCAwLCAwLCAwLCAwLCA2NDQ5NiwgNzQxMDksIDAsIDk5MTUsIDAsIDAsIAotICAgIDcwNjEsIDQxMzM2LCAzODU0LCA2OTcwMCwgMTMxNDEsIDY4NDEzLCA0MzQwMSwgNDIzMTksIDEzMDgyLCAwLCA3MDY3LCAKLSAgICA2ODIyMSwgMCwgMCwgMTI3MTcxLCAwLCAwLCAxMjc3OTcsIDkwMjksIDQzNTQzLCAxMTkzMTUsIDIzNTMsIDYzMDgsIDAsIAotICAgIDc0NzkyLCAyNjExLCAxMTkxODYsIDAsIDAsIDAsIDQzNjY0LCA5MjM5OSwgNjY2MjcsIDAsIDQ0ODQsIDg1MDksIDExODk3NiwgCi0gICAgNzgxMTYsIDY1MjMzLCAwLCA0MTIyNCwgNDEwMTcsIDAsIDM3NDcsIDEwNTIyLCAwLCAwLCAxNjkxLCA0MTIyNiwgMCwgCi0gICAgMTIxMDcsIDQ0MDAyLCAxMDkwNSwgNjUwMTAsIDE5NDk4NiwgNjk3LCA2NjAxOCwgOTI4NCwgNDI0NCwgMCwgMCwgOTI2NDQsIAotICAgIDEzMTIxLCAxMjAwMzYsIDAsIDEyMDEwLCAxMjg1NzMsIDEyODIyMSwgMCwgMCwgMCwgMTI3MTkzLCA2NTgxNiwgNjgxMTEsIAotICAgIDAsIDEyNzkzMywgNjU2NjgsIDkyMjU3LCA2NjE4LCAxMTg3ODQsIDY2MzY1LCAwLCA0MjIzNCwgMTI2NDgsIDEyODAzOSwgCi0gICAgNzEyMywgMCwgNTc4NSwgOTE5OCwgOTc2NCwgNDEzMTYsIDY1ODc3LCA3MzgzLCAxMzIzMCwgNDEyOTksIDAsIDAsIDY4MzY1LCAKLSAgICAxMjgyNTgsIDAsIDAsIDAsIDEzMTIyLCAwLCAxOTEsIDc0MTE5LCA4NTg1LCA4MDAwLCA2NDQxMSwgMTIwNjUyLCA0Mjg4OSwgCi0gICAgNjQ4NTAsIDQxMDcyLCA0MTU3OCwgMCwgNDE1NzcsIDAsIDEwMDAyLCAwLCA2NTMzLCA3MzgwMiwgNDE1NzAsIDAsIDY4MywgCi0gICAgMzk2LCA0MTU4MCwgNjgxNDYsIDAsIDEyOTAxLCA0MzA1OCwgMCwgMzQzLCA3MTI5LCA0MjY4MCwgNDEzNjAsIDc4MTU0LCAwLCAKLSAgICA0NzQzLCAwLCAwLCA3NDA0MCwgNzQxMDgsIDg3NDMsIDE3MjQsIDE0MzMsIDExOTMyMiwgMCwgMzczOSwgNjI2MywgOTI1MTQsIAotICAgIDAsIDM5NjQsIDY1OTIsIDAsIDEyODY5MywgNjYwNDAsIDAsIDQyNTY4LCA2OTgwNiwgMCwgMTc3OCwgMzk1NiwgMCwgCi0gICAgNDIwNzAsIDY1NjMsIDQzMDc1LCA5MDE4LCAwLCAwLCAxMjA2NywgNDEzMTIsIDAsIDU1NDcsIDc0NTMxLCAxMjc5NjksIDAsIAotICAgIDgxNzUsIDAsIDI4NCwgODEwOCwgOTM0LCAwLCA3NDAwMSwgMTczLCA2NjQ2MCwgNzE3NCwgOTI3MDMsIDExODgyMiwgMTc1MCwgCi0gICAgMCwgNDM5NCwgNjgzNjgsIDE4MDcsIDAsIDkyMjk4LCAwLCA1ODg5LCAwLCA3MTgwLCAwLCAxMTkxNDUsIDAsIDkxNzU1OCwgCi0gICAgNDI0NzEsIDY5ODIsIDE3MjEsIDQ0MDIyLCA3ODkxLCA0MjI0MywgNDIxNjAsIDI1ODMsIDQ1MTIsIDExOTM2MCwgNjUyMzAsIAotICAgIDEyODEwOSwgMCwgMCwgMzg1NSwgMCwgMCwgMCwgMCwgNzQyOTUsIDAsIDAsIDkyNDE2LCAzOTc1LCAwLCA3NDA4NywgMCwgCi0gICAgMTI2NzIsIDM3OTgsIDI3MDMsIDAsIDAsIDIxMDksIDk3NzQsIDEyNzUsIDAsIDAsIDQxMDk1LCAzOTYyLCAwLCAyOTMyLCAKLSAgICA0MTEwMSwgMzk1NCwgNjQ1NywgNDUxMywgMCwgMCwgNzM5OTQsIDczOTkyLCAxNDY4LCAwLCAwLCA0MTg1MSwgMTI4MjMwLCAKLSAgICA0MTg0NiwgMCwgNTUyMzgsIDc2MzMsIDQxODQ5LCA2ODM4NSwgNDMyMCwgMzIyNCwgMCwgMTI4MDMyLCAwLCA0MjUzMSwgMCwgCi0gICAgMTUxMCwgMCwgODI1NiwgMCwgMTEzOTMsIDAsIDg4NzksIDEyODA3NSwgOTI0NzQsIDg3NzAsIDAsIDAsIDc4Mzc3LCAxOTEwLCAKLSAgICA4NjcxLCA3ODM3NCwgNDI4MywgMCwgMTI3MTE3LCA2ODM2MSwgNzgzMTgsIDI2NTQsIDc4OTMsIDE5NTAwNywgMCwgMCwgMCwgCi0gICAgNjUxMDYsIDQyNzYxLCAxMjg1NywgNDU4MSwgODQxMSwgNzgzNzIsIDc4MzcxLCA3ODM3MCwgNzgzNjksIDc4MzY4LCAwLCAwLCAKLSAgICAwLCAxNzMzLCA0MzkyLCAyNTY4LCAxMDc4NiwgNjk2NjEsIDAsIDgxODQsIDQxNDg2LCAwLCA3Mzk2LCA3MTE2LCAwLCAKLSAgICA2OTc4OCwgMCwgNzE4NSwgNzk2NSwgMCwgMCwgOTIzNDcsIDAsIDQxMzUwLCA5MTI5LCAwLCAwLCAwLCAwLCA5MjQ4OSwgMCwgCi0gICAgMTA0ODEsIDAsIDEyNzQ4NiwgNzE3MSwgMCwgMzQwLCA5MjQ5OCwgMCwgMCwgMCwgOTIyMDAsIDAsIDAsIDY3NjQsIAotICAgIDEyNzQ4NywgMCwgMCwgMCwgMCwgNjUyMDMsIDExMzkyLCAxMTkwOTgsIDExOTM1OSwgMCwgMzIxMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTI3OTcwLCA5MTc2MTksIDAsIDAsIDEwMDQzLCAwLCAxMTg2LCA0MTU3MSwgNjk5OSwgNjE3LCA5NDY0LCAxMjgyNDQsIAotICAgIDM2NzUsIDUyMDcsIDY1MDYyLCA1MjEzLCAxOTQ3NjksIDI2MTcsIDQxMzQ4LCA0MTU2OCwgMTI4ODAzLCAzMjUzLCAKLSAgICAxMjA1MzUsIDAsIDg2MzAsIDEyODU0NCwgMCwgNTU5NiwgNTU0NSwgNzI4OCwgMjU4NiwgNjQ4ODcsIDAsIDUyMTcsIDAsIDAsIAotICAgIDAsIDAsIDY0MjkzLCA2ODA5OCwgMjYzNSwgMCwgMCwgMCwgMCwgMCwgNzgzNSwgMCwgMCwgMTk0OTg4LCA5MjI4NSwgCisgICAgNjIyNywgMCwgMCwgNjk3NDEsIDk4MzMyNiwgNjE2MywgOTgzMzAyLCAwLCAxMjczMTQsIDAsIDAsIDg2MDMsIDAsIAorICAgIDExOTg2NiwgMzMwNiwgMTA4NzYsIDQzMzkyLCAxMTk1NzMsIDEyNzkzMSwgNTc1MSwgMCwgNjIyMiwgMCwgMCwgMTIwODYsIAorICAgIDc0MDMsIDE2MDAsIDY0MzA5LCA2NDkzOSwgMCwgNjQ3ODMsIDkyNjU4LCAxMTMxMCwgMCwgODg4MiwgMCwgMCwgMjU3MCwgCisgICAgNzAyMSwgMCwgMCwgNDMxMTAsIDAsIDEyMzQsIDY1NDAsIDY5NzQsIDAsIDAsIDAsIDUwMDIsIDAsIDQxMjg2LCAwLCAKKyAgICAxMjcwMTksIDAsIDQzNTg1LCAwLCA2NTUxLCA5ODM2OTQsIDEyODIyOSwgMCwgNDEyODksIDAsIDE5NDYwMiwgMCwgODk3NywgCisgICAgNjAyLCAxMjA4MTQsIDAsIDEyODc3OCwgMTI4NjYxLCAwLCAwLCA0MTI3OSwgMCwgMCwgMCwgMTEwODEsIDQzNjE1LCAwLCAwLCAKKyAgICAwLCA5ODMzNTYsIDEyNzI3LCAwLCAwLCA3ODM5NywgOTQ3NSwgNzExMiwgNjUxMDUsIDAsIDk2MzMsIDEwODg2LCA0MzU5MiwgCisgICAgNzgzMSwgOTgzNTY0LCAxOTQ1NzEsIDAsIDczOTE1LCA4MDc2LCA0MzA0OCwgODI5MCwgODI5MSwgNDMwNTEsIDkyNTcwLCAwLCAKKyAgICAyNTk2LCA0MzU4NCwgMCwgMTMxMTMsIDAsIDEyNzc1NywgMjM5MywgNzA1OCwgOTA4NywgNzQwNjcsIDY4NjczLCA0MTU3NCwgCisgICAgNzgzMzcsIDAsIDc0MDU4LCA2Mzc2LCAwLCAwLCAwLCAwLCA5ODU0LCAxMjc3NDgsIDY0Njk2LCAwLCAxMjgyMjAsIDAsIAorICAgIDY5OTQsIDAsIDE3MjAsIDAsIDAsIDAsIDY1MjksIDcwNjMsIDAsIDM3NTEsIDkxMjAsIDAsIDAsIDE3OTgsIDcwOSwgMCwgCisgICAgMTM1NCwgMTg3NiwgMTMxNTIsIDY1NTcsIDEyNDMwLCA4MTM3LCAwLCA5MjY0MiwgMCwgMCwgMjQ1LCAxMjgwOTcsIDExNDU2LCAKKyAgICA0MTIzMywgNzA3MCwgMCwgMCwgNjEzNiwgOTE3NjA5LCA2NTY3NywgODY4MiwgNDEyMzUsIDkyNTk1LCA0MjA0NSwgOTgwNCwgCisgICAgMCwgNDMyLCAzNTk1LCAwLCA2NTQzNywgMCwgNzQ0NTUsIDQyMzk5LCAwLCAwLCAxMjgyNzQsIDAsIDExOTY1OCwgMCwgMCwgCisgICAgMCwgNzc4OTQsIDg3OTcsIDAsIDkwNTIsIDY0ODg4LCA3MTY3LCAyMzU2LCA5NSwgNzQ3ODQsIDEwNTgwLCAwLCA0MjI4NiwgCisgICAgMCwgNjQ2NDAsIDAsIDExOTEwNCwgMCwgNzQxMzcsIDAsIDEwMDYzLCAxMjY1MiwgMTIxOTksIDkyNDgwLCAwLCAyNTY2LCAKKyAgICAxMTk3MSwgOTgzNDcyLCAwLCAxMDY1LCAwLCAwLCA0MzQwMCwgMjU3NiwgNjY2OTYsIDAsIDAsIDQzNjA0LCAwLCAwLCAKKyAgICA3NDA4MiwgNTE0LCA3NDUwMiwgMCwgMjkyMSwgNDMyMTUsIDY0NDkzLCA1NzcyLCAxMjk2OCwgOTgzMzUwLCAxOTQ5NDQsIAorICAgIDc0NTgwLCA0MzM5OCwgMjU4MCwgOTgzNTQ1LCA0MTM0MSwgNDEyMjMsIDY1NjQsIDE0NjMsIDQxMzQyLCAwLCA1MjkzLCAwLCAKKyAgICAwLCAzNzMzLCAxMTM0NiwgMCwgMTIwNTQsIDAsIDc0MDk4LCA0MjgyNywgMCwgMTMwOTEsIDAsIDAsIDAsIDkxNzkxNSwgMCwgCisgICAgMTI3MDI1LCAwLCA3NDgyMSwgMCwgOTgzNDY4LCAxMTkwNDIsIDAsIDEyNzg2NSwgMTMwOTAsIDY2NjQzLCAwLCAxMjcwLCAKKyAgICAxMTMyLCA0MjM2MCwgMCwgNzQwOTYsIDY2NjU1LCA0MjU2OSwgMTI3ODI0LCAwLCA2NDc2MSwgMCwgNDEwMjEsIDg1MTAsIAorICAgIDQyNDMyLCAwLCAwLCAwLCAwLCA2NDQ5NiwgNzQxMDksIDAsIDk5MTUsIDAsIDAsIDcwNjEsIDQxMzM2LCAzODU0LCA2OTcwMCwgCisgICAgMTMxNDEsIDY4NDEzLCA0MzQwMSwgNDIzMTksIDEzMDgyLCAwLCA3MDY3LCA2ODIyMSwgMCwgMCwgMTI3MTcxLCAwLCAwLCAKKyAgICAxMjc3OTcsIDkwMjksIDQzNTQzLCAxMTkzMTUsIDIzNTMsIDYzMDgsIDAsIDc0NzkyLCAyNjExLCAxMTkxODYsIDAsIDAsIDAsIAorICAgIDQzNjY0LCA5MjM5OSwgNjY2MjcsIDAsIDQ0ODQsIDg1MDksIDExODk3NiwgNzgxMTYsIDY1MjMzLCAwLCA0MTIyNCwgCisgICAgNDEwMTcsIDAsIDM3NDcsIDEwNTIyLCAwLCAwLCAxNjkxLCA0MTIyNiwgMCwgMTIxMDcsIDQ0MDAyLCAxMDkwNSwgNjUwMTAsIAorICAgIDE5NDk4NiwgNjk3LCA2NjAxOCwgOTI4NCwgNDI0NCwgMCwgMCwgOTI2NDQsIDEzMTIxLCAxMjAwMzYsIDAsIDEyMDEwLCAKKyAgICAxMjg1NzMsIDEyODIyMSwgMCwgMCwgMCwgMTI3MTkzLCA2NTgxNiwgNjgxMTEsIDAsIDEyNzkzMywgNjU2NjgsIDkyMjU3LCAKKyAgICA2NjE4LCAxMTg3ODQsIDY2MzY1LCAwLCA0MjIzNCwgMTI2NDgsIDEyODAzOSwgNzEyMywgMCwgNTc4NSwgOTE5OCwgOTc2NCwgCisgICAgNDEzMTYsIDY1ODc3LCA3MzgzLCAxMzIzMCwgNDEyOTksIDAsIDAsIDY4MzY1LCAxMjgyNTgsIDAsIDAsIDAsIDEzMTIyLCAwLCAKKyAgICAxOTEsIDc0MTE5LCA4NTg1LCA4MDAwLCA2NDQxMSwgMTIwNjUyLCA0Mjg4OSwgNjQ4NTAsIDQxMDcyLCA0MTU3OCwgMCwgCisgICAgNDE1NzcsIDAsIDEwMDAyLCAwLCA2NTMzLCA3MzgwMiwgNDE1NzAsIDAsIDY4MywgMzk2LCA0MTU4MCwgNjgxNDYsIDAsIAorICAgIDEyOTAxLCA0MzA1OCwgMCwgMzQzLCA3MTI5LCA0MjY4MCwgNDEzNjAsIDc4MTU0LCAwLCA0NzQzLCAwLCAwLCA3NDA0MCwgCisgICAgNzQxMDgsIDg3NDMsIDE3MjQsIDE0MzMsIDExOTMyMiwgMCwgMzczOSwgNjI2MywgOTI1MTQsIDAsIDM5NjQsIDY1OTIsIDAsIAorICAgIDEyODY5MywgNjYwNDAsIDAsIDQyNTY4LCA2OTgwNiwgMCwgMTc3OCwgMzk1NiwgMCwgNDIwNzAsIDY1NjMsIDQzMDc1LCAKKyAgICA5MDE4LCAwLCAwLCAxMjA2NywgNDEzMTIsIDAsIDU1NDcsIDc0NTMxLCAxMjc5NjksIDAsIDgxNzUsIDAsIDI4NCwgODEwOCwgCisgICAgOTM0LCAwLCA3NDAwMSwgMTczLCA2NjQ2MCwgNzE3NCwgOTI3MDMsIDExODgyMiwgMTc1MCwgMCwgNDM5NCwgNjgzNjgsIAorICAgIDE4MDcsIDk4MzYyMywgOTIyOTgsIDAsIDU4ODksIDAsIDcxODAsIDAsIDExOTE0NSwgMCwgOTE3NTU4LCA0MjQ3MSwgNjk4MiwgCisgICAgMTcyMSwgNDQwMjIsIDc4OTEsIDQyMjQzLCA0MjE2MCwgMjU4MywgNDUxMiwgMTE5MzYwLCA2NTIzMCwgMTI4MTA5LCAwLCAwLCAKKyAgICAzODU1LCAwLCAwLCAwLCAwLCA3NDI5NSwgMCwgMCwgOTI0MTYsIDM5NzUsIDAsIDc0MDg3LCAwLCAxMjY3MiwgMzc5OCwgCisgICAgMjcwMywgOTgzMzQzLCAwLCAyMTA5LCA5Nzc0LCAxMjc1LCAwLCAwLCA0MTA5NSwgMzk2MiwgMCwgMjkzMiwgNDExMDEsIAorICAgIDM5NTQsIDY0NTcsIDQ1MTMsIDAsIDAsIDczOTk0LCA3Mzk5MiwgMTQ2OCwgMCwgMCwgNDE4NTEsIDEyODIzMCwgNDE4NDYsIAorICAgIDAsIDU1MjM4LCA3NjMzLCA0MTg0OSwgNjgzODUsIDQzMjAsIDMyMjQsIDAsIDEyODAzMiwgMCwgNDI1MzEsIDAsIDE1MTAsIAorICAgIDAsIDgyNTYsIDAsIDExMzkzLCAwLCA4ODc5LCAxMjgwNzUsIDkyNDc0LCA4NzcwLCAwLCAwLCA3ODM3NywgMTkxMCwgODY3MSwgCisgICAgNzgzNzQsIDQyODMsIDAsIDEyNzExNywgNjgzNjEsIDc4MzE4LCAyNjU0LCA3ODkzLCAxOTUwMDcsIDAsIDAsIDAsIDY1MTA2LCAKKyAgICA0Mjc2MSwgMTI4NTcsIDQ1ODEsIDg0MTEsIDc4MzcyLCA3ODM3MSwgNzgzNzAsIDc4MzY5LCA3ODM2OCwgMCwgMCwgMCwgCisgICAgMTczMywgNDM5MiwgMjU2OCwgMTA3ODYsIDY5NjYxLCAwLCA4MTg0LCA0MTQ4NiwgMCwgNzM5NiwgNzExNiwgMCwgNjk3ODgsIAorICAgIDAsIDcxODUsIDc5NjUsIDAsIDAsIDkyMzQ3LCAwLCA0MTM1MCwgOTEyOSwgMCwgMCwgMCwgMCwgOTI0ODksIDAsIDEwNDgxLCAKKyAgICAwLCAxMjc0ODYsIDcxNzEsIDAsIDM0MCwgOTI0OTgsIDAsIDAsIDAsIDkyMjAwLCAwLCAwLCA2NzY0LCAxMjc0ODcsIDAsIDAsIAorICAgIDAsIDAsIDY1MjAzLCAxMTM5MiwgMTE5MDk4LCAxMTkzNTksIDAsIDMyMTAsIDAsIDAsIDAsIDAsIDAsIDEyNzk3MCwgCisgICAgOTE3NjE5LCAwLCAwLCAxMDA0MywgMCwgMTE4NiwgNDE1NzEsIDY5OTksIDYxNywgOTQ2NCwgMTI4MjQ0LCAzNjc1LCA1MjA3LCAKKyAgICA2NTA2MiwgNTIxMywgMTk0NzY5LCAyNjE3LCA0MTM0OCwgNDE1NjgsIDEyODgwMywgMzI1MywgMTIwNTM1LCAwLCA4NjMwLCAKKyAgICAxMjg1NDQsIDAsIDU1OTYsIDU1NDUsIDcyODgsIDI1ODYsIDY0ODg3LCAwLCA1MjE3LCA5ODM1NTUsIDAsIDAsIDAsIAorICAgIDY0MjkzLCA2ODA5OCwgMjYzNSwgMCwgMCwgOTgzNTgxLCAwLCA5ODMzNzYsIDc4MzUsIDAsIDAsIDE5NDk4OCwgOTIyODUsIAogICAgIDY0NTU4LCAxMjcxMjIsIDAsIDEyNzEyMSwgMCwgMTI3OTEzLCAwLCA1Nzg0LCAwLCAwLCAwLCAwLCA0MDExLCA5MTc2MTYsIAogICAgIDY4MTAxLCAwLCA3ODY0LCA0MjU0LCA2NTA5NSwgMCwgNTYwMCwgMzkwMywgMTI3MDgzLCAxMDQ0NywgNTU5OCwgMTIwNywgCiAgICAgMTIwNTIxLCA2NjY4OSwgMzUwMSwgNDI1ODIsIDQzNjAwLCAxOTQ3ODAsIDAsIDExMjQsIDU1OTcsIDE5NDc3OCwgMTk0NzcyLCAKLSAgICA5MzIxLCAwLCAwLCAwLCAwLCAxNzE5LCA2ODM1NiwgNjgzNTQsIDk2NzEsIDExMjUsIDQzOTksIDEyNzQ3OSwgOTE3NjEwLCAKLSAgICAwLCA3NjMxLCA1NDg4LCA3MTI4LCAxMjA1MzIsIDAsIDU0OTEsIDAsIDg5MzcsIDQzMDQ0LCAyNjA0LCA3NDE4NywgNTQ5MCwgCi0gICAgNDMwNDYsIDU0ODksIDcyMTIsIDExNzY4LCA0MzA0MywgNjMwMCwgMCwgNzEyMiwgMCwgNDM5MCwgNDU0LCA0MTM5NywgMCwgCi0gICAgOTg3NSwgNzU5MywgMTk0NzkyLCA5MjI3NCwgMTE4OTEzLCA3MjA3LCAwLCA2NTkwMSwgMjM5NCwgMjU3NSwgMCwgMzc0NiwgCi0gICAgMTEwMTYsIDY1NzUyLCAxMjAwMzcsIDAsIDQzNDIzLCAxMjg2ODMsIDExOTg5LCAwLCAwLCAwLCAwLCAwLCA4MjQ5LCAKLSAgICAxMjgxNzIsIDAsIDc4NTMxLCA2NjQwLCA3NDgwNiwgMjU5OCwgNTEzLCAwLCA2NTg2LCA4NjU2LCAwLCAxMjcwMDIsIAotICAgIDY1MDA4LCAwLCAxOTQ3ODQsIDE5NDk4OSwgMTk0Nzk1LCAwLCA5MjUxNSwgNjg0NzUsIDAsIDAsIDAsIDc4NjM3LCAxMjY0NywgCi0gICAgMCwgMTI4MDQzLCAwLCAxMDM2LCAwLCA5MjQxOSwgMTcyMywgMTI4MDU2LCAwLCAwLCA0MTU3OSwgMjQ0NCwgMCwgMTA3MDUsIAotICAgIDczODc2LCAwLCA3NDQ4NiwgMCwgNzQwLCAxMTkyMjIsIDE5NDk3OCwgMTk0OTg0LCAwLCA0MjM4LCAxMTA3MSwgOTQ1OSwgCi0gICAgNjg0MzcsIDc4MTQwLCA3ODEzOSwgMTk0OTg1LCA4MTIxLCAxMDQzOCwgNzQ0ODcsIDQyNTc0LCAxMzI4NSwgNTUyNjMsIAotICAgIDExOTA3LCAxOTUwMDAsIDU2OTAsIDkyMjU1LCAwLCAwLCA0MzE4MSwgMTMwOTUsIDAsIDEyNzg1NywgNjQ0OTgsIDAsIAotICAgIDk1MDYsIDY5NzgsIDE5NDk5MywgNzc5OTIsIDAsIDAsIDE5NDk5MiwgMCwgMTI3ODQ1LCAxMTIyLCAzMTcsIDAsIDAsIDAsIAotICAgIDAsIDE5MjAsIDAsIDEwMTczLCA4MjcsIDAsIDAsIDc4Mzc4LCAxMjAxMjYsIDUyMjMsIDEzMDQsIDAsIDExOTU2NCwgNTIyNiwgCi0gICAgMTI2MDIsIDAsIDAsIDkzMjksIDc3NTgsIDkyMzksIDQxMTczLCA1MjI0LCA1NDg3LCAxMjIyLCA1NjkyLCA0MTcyNSwgCi0gICAgNjkyMjksIDk2NzQsIDU2OTUsIDQxNzExLCA2NDYyNywgMTk5MDksIDAsIDc0NjA0LCA1NjkxLCAyODcsIDg2NiwgMjMzLCAKLSAgICAxMjc0OTAsIDAsIDQyODE2LCAwLCA2NTE0MCwgNzQ3OTcsIDAsIDg4MzAsIDY1NjgsIDQyMzAwLCAxMDUyNCwgNDExNzUsIDAsIAotICAgIDAsIDAsIDUyOTYsIDAsIDQyNDkyLCA0MzQwMiwgOTI0NjYsIDMzMDIsIDAsIDAsIDY1MTYsIDY1MTUsIDY1MTQsIDY1MTMsIAotICAgIDY1MTIsIDAsIDc4NTYsIDg2OTAsIDAsIDAsIDEyMTIyLCAxMTk2MDIsIDQzOTc2LCAwLCAxNzg1LCA5MjUwNywgNjg2MjIsIAotICAgIDY1MTUzLCAxOTQ4MTAsIDUxMzgsIDAsIDAsIDAsIDAsIDQ1NDAsIDQxMTgxLCAwLCA2MjAwLCAwLCA1MTM0LCAwLCAzMjIsIAotICAgIDQ2NDMsIDUxMzIsIDAsIDYzODksIDAsIDUxNDMsIDAsIDg3OTAsIDEyODY5NCwgMCwgMTk0ODAyLCAwLCA4ODY5LCAKLSAgICAxMjA2MDEsIDAsIDQyMDYwLCAwLCAwLCAxOTQ4MDQsIDEyNzAxMiwgMTAyNzAsIDEwMjg2LCAxMDMxOCwgMTAzODIsIAotICAgIDQzNTI5LCA2NjQ3NywgMCwgMCwgNzQxNzAsIDAsIDMyMzQsIDAsIDAsIDc0Mzc2LCA0MzEzOSwgMTE4ODE1LCAxMjcwODQsIAotICAgIDEyMDYyNywgODc2NywgMCwgNzQ0ODksIDk2OTUsIDEyMDc0NiwgNTIwMSwgMCwgNjIxNSwgMTI3MTQsIDYyMTQsIDEzMTAxLCAKLSAgICAwLCAxOTQ5OTksIDY1MjY4LCAwLCAwLCAwLCAxMTAyNywgMCwgMTAwNTksIDEwNTExLCA0MjA3NSwgOTc2NywgNzg5LCAKLSAgICAxNzQ5LCA3ODg5MCwgMTI3MDcxLCAwLCAzMjAsIDAsIDg2NDcsIDAsIDMwNDksIDAsIDY0NzEsIDQyMDcxLCA0MzE1NiwgCi0gICAgOTkyNSwgMTI3MzU2LCAxMjczNTUsIDY2NDc4LCA0OTYwLCA1NTQ5LCAxMjczNTksIDEyNzM0NiwgODQ4NSwgNDY3MSwgCi0gICAgNTQxOCwgMTI3MzUwLCAzMzUxLCAxMjcwMDYsIDEyNzM1MSwgMTA2MTAsIDU0MTQsIDMwNjQsIDYyMTIsIDQyODYsIDU0MjEsIAotICAgIDEyNzM0NCwgOTU1NCwgMCwgMTI3Nzk0LCAxMjcxMDksIDY2NTMsIDEyODgxMSwgMCwgNjQ1MTAsIDYyMTMsIDEyODg1LCAwLCAKLSAgICAxMTkwNDUsIDY0NzIwLCAwLCAxMjA3NTksIDczNzQxLCAxMjYwMywgNzEzMSwgMTE0MzAsIDQ1NjYsIDc4NDMsIDkzMTcsIAotICAgIDM4MDEsIDEwMzQyLCAxMDQwNiwgMCwgMTE5MjU5LCA0MjU3NiwgMCwgNTIwMCwgMCwgOTE3OTQ4LCAwLCA5MTgzLCAKLSAgICAxMjczNjEsIDc0NDU4LCA3MzgyNSwgMzk1LCA1NDgyLCA1MTk4LCA4Nzg2LCAxMDM5MCwgNzQyMDIsIDUxOTYsIDQzMjI0LCAKLSAgICA2MTEzLCA0MjAwOSwgNTIwNSwgMCwgNDMzMDcsIDAsIDExODk3MywgMCwgMTIxMzQsIDAsIDAsIDExODg0MywgOTEyNiwgCi0gICAgNDM1LCAwLCAxMjAxNCwgMTAzNzcsIDgwOTMsIDkwNzksIDMyMDMsIDE5MiwgNjUxMDksIDMzODUsIDAsIDY0NDMwLCA1MzgzLCAKLSAgICAxMDI5NCwgMTAzMjYsIDEyODE3OCwgNTczOCwgMCwgMzMzNiwgNzgzNTUsIDUzNjEsIDM2MjMsIDQxMTU5LCAwLCA2ODExMiwgCi0gICAgNzg3MiwgODU4MSwgMCwgMTI2MCwgMzE0OSwgNTM1OSwgMCwgMCwgNzkxNCwgNTM1NywgOTIxNzAsIDEyODY1OSwgMjYyNCwgCi0gICAgNTM2NCwgMCwgMTE0MzEsIDEyMDAzMCwgOTEwMSwgMTEwNTgsIDc4Mjg4LCAwLCA3ODI5MywgNDIyNzEsIDc4Mjg5LCAKKyAgICA5MzIxLCA5ODM1MjYsIDAsIDAsIDAsIDE3MTksIDY4MzU2LCA2ODM1NCwgOTY3MSwgMTEyNSwgNDM5OSwgMTI3NDc5LCAKKyAgICA5MTc2MTAsIDAsIDc2MzEsIDU0ODgsIDcxMjgsIDEyMDUzMiwgMCwgNTQ5MSwgMCwgODkzNywgNDMwNDQsIDI2MDQsIAorICAgIDc0MTg3LCA1NDkwLCA0MzA0NiwgNTQ4OSwgNzIxMiwgMTE3NjgsIDQzMDQzLCA2MzAwLCAwLCA3MTIyLCAwLCA0MzkwLCAKKyAgICA0NTQsIDQxMzk3LCAwLCA5ODc1LCA3NTkzLCAxOTQ3OTIsIDkyMjc0LCAxMTg5MTMsIDcyMDcsIDAsIDY1OTAxLCAyMzk0LCAKKyAgICAyNTc1LCAwLCAzNzQ2LCAxMTAxNiwgNjU3NTIsIDEyMDAzNywgMCwgNDM0MjMsIDEyODY4MywgMTE5ODksIDAsIDAsIDAsIDAsIAorICAgIDAsIDgyNDksIDEyODE3MiwgMCwgNzg1MzEsIDY2NDAsIDc0ODA2LCAyNTk4LCA1MTMsIDAsIDY1ODYsIDg2NTYsIDAsIAorICAgIDEyNzAwMiwgNjUwMDgsIDAsIDE5NDc4NCwgMTk0OTg5LCAxOTQ3OTUsIDAsIDkyNTE1LCA2ODQ3NSwgMCwgMCwgMCwgCisgICAgNzg2MzcsIDEyNjQ3LCAwLCAxMjgwNDMsIDAsIDEwMzYsIDAsIDkyNDE5LCAxNzIzLCAxMjgwNTYsIDAsIDAsIDQxNTc5LCAKKyAgICAyNDQ0LCAwLCAxMDcwNSwgNzM4NzYsIDAsIDc0NDg2LCAwLCA3NDAsIDExOTIyMiwgMTk0OTc4LCAxOTQ5ODQsIDAsIDQyMzgsIAorICAgIDExMDcxLCA5NDU5LCA2ODQzNywgNzgxNDAsIDc4MTM5LCAxOTQ5ODUsIDgxMjEsIDEwNDM4LCA3NDQ4NywgNDI1NzQsIAorICAgIDEzMjg1LCA1NTI2MywgMTE5MDcsIDE5NTAwMCwgNTY5MCwgOTIyNTUsIDAsIDAsIDQzMTgxLCAxMzA5NSwgMCwgMTI3ODU3LCAKKyAgICA2NDQ5OCwgMCwgOTUwNiwgNjk3OCwgMTk0OTkzLCA3Nzk5MiwgMCwgMCwgMTk0OTkyLCAwLCAxMjc4NDUsIDExMjIsIDMxNywgCisgICAgMCwgMCwgMCwgMCwgMTkyMCwgMCwgMTAxNzMsIDgyNywgMCwgMCwgNzgzNzgsIDEyMDEyNiwgNTIyMywgMTMwNCwgMCwgCisgICAgMTE5NTY0LCA1MjI2LCAxMjYwMiwgMCwgMCwgOTMyOSwgNzc1OCwgOTIzOSwgNDExNzMsIDUyMjQsIDU0ODcsIDEyMjIsIAorICAgIDU2OTIsIDQxNzI1LCA2OTIyOSwgOTY3NCwgNTY5NSwgNDE3MTEsIDY0NjI3LCAxOTkwOSwgMCwgNzQ2MDQsIDU2OTEsIDI4NywgCisgICAgODY2LCAyMzMsIDEyNzQ5MCwgMCwgNDI4MTYsIDAsIDY1MTQwLCA3NDc5NywgMCwgODgzMCwgNjU2OCwgNDIzMDAsIDEwNTI0LCAKKyAgICA0MTE3NSwgMCwgMCwgMCwgNTI5NiwgMCwgNDI0OTIsIDQzNDAyLCA5MjQ2NiwgMzMwMiwgMCwgMCwgNjUxNiwgNjUxNSwgCisgICAgNjUxNCwgNjUxMywgNjUxMiwgMCwgNzg1NiwgODY5MCwgMCwgMCwgMTIxMjIsIDExOTYwMiwgNDM5NzYsIDAsIDE3ODUsIAorICAgIDkyNTA3LCA2ODYyMiwgNjUxNTMsIDE5NDgxMCwgNTEzOCwgMCwgMCwgMCwgMCwgNDU0MCwgNDExODEsIDAsIDYyMDAsIDAsIAorICAgIDUxMzQsIDAsIDMyMiwgNDY0MywgNTEzMiwgMCwgNjM4OSwgMCwgNTE0MywgMCwgODc5MCwgMTI4Njk0LCAwLCAxOTQ4MDIsIAorICAgIDAsIDg4NjksIDEyMDYwMSwgMCwgNDIwNjAsIDAsIDAsIDE5NDgwNCwgMTI3MDEyLCAxMDI3MCwgMTAyODYsIDEwMzE4LCAKKyAgICAxMDM4MiwgNDM1MjksIDY2NDc3LCAwLCAwLCA3NDE3MCwgMCwgMzIzNCwgMCwgMCwgNzQzNzYsIDQzMTM5LCAxMTg4MTUsIAorICAgIDEyNzA4NCwgMTIwNjI3LCA4NzY3LCAwLCA3NDQ4OSwgOTY5NSwgMTIwNzQ2LCA1MjAxLCAwLCA2MjE1LCAxMjcxNCwgNjIxNCwgCisgICAgMTMxMDEsIDAsIDE5NDk5OSwgNjUyNjgsIDAsIDAsIDAsIDExMDI3LCAwLCAxMDA1OSwgMTA1MTEsIDQyMDc1LCA5NzY3LCAKKyAgICA3ODksIDE3NDksIDc4ODkwLCAxMjcwNzEsIDk4MzQwNSwgMzIwLCAwLCA4NjQ3LCAwLCAzMDQ5LCAwLCA2NDcxLCA0MjA3MSwgCisgICAgNDMxNTYsIDk5MjUsIDEyNzM1NiwgMTI3MzU1LCA2NjQ3OCwgNDk2MCwgNTU0OSwgMTI3MzU5LCAxMjczNDYsIDg0ODUsIAorICAgIDQ2NzEsIDU0MTgsIDEyNzM1MCwgMzM1MSwgMTI3MDA2LCAxMjczNTEsIDEwNjEwLCA1NDE0LCAzMDY0LCA2MjEyLCA0Mjg2LCAKKyAgICA1NDIxLCAxMjczNDQsIDk1NTQsIDAsIDEyNzc5NCwgMTI3MTA5LCA2NjUzLCAxMjg4MTEsIDAsIDY0NTEwLCA2MjEzLCAKKyAgICAxMjg4NSwgMCwgMTE5MDQ1LCA2NDcyMCwgMCwgMTIwNzU5LCA3Mzc0MSwgMTI2MDMsIDcxMzEsIDExNDMwLCA0NTY2LCAKKyAgICA3ODQzLCA5MzE3LCAzODAxLCAxMDM0MiwgMTA0MDYsIDAsIDExOTI1OSwgNDI1NzYsIDAsIDUyMDAsIDAsIDkxNzk0OCwgMCwgCisgICAgOTE4MywgMTI3MzYxLCA3NDQ1OCwgNzM4MjUsIDM5NSwgNTQ4MiwgNTE5OCwgODc4NiwgMTAzOTAsIDc0MjAyLCA1MTk2LCAKKyAgICA0MzIyNCwgNjExMywgNDIwMDksIDUyMDUsIDAsIDQzMzA3LCAwLCAxMTg5NzMsIDAsIDEyMTM0LCAwLCAwLCAxMTg4NDMsIAorICAgIDkxMjYsIDQzNSwgMCwgMTIwMTQsIDEwMzc3LCA4MDkzLCA5MDc5LCAzMjAzLCAxOTIsIDY1MTA5LCAzMzg1LCAwLCA2NDQzMCwgCisgICAgNTM4MywgMTAyOTQsIDEwMzI2LCAxMjgxNzgsIDU3MzgsIDAsIDMzMzYsIDc4MzU1LCA1MzYxLCAzNjIzLCA0MTE1OSwgMCwgCisgICAgNjgxMTIsIDc4NzIsIDg1ODEsIDAsIDEyNjAsIDMxNDksIDUzNTksIDAsIDAsIDc5MTQsIDUzNTcsIDkyMTcwLCAxMjg2NTksIAorICAgIDI2MjQsIDUzNjQsIDAsIDExNDMxLCAxMjAwMzAsIDkxMDEsIDExMDU4LCA3ODI4OCwgMCwgNzgyOTMsIDQyMjcxLCA3ODI4OSwgCiAgICAgNDI5MTcsIDEyMDc5MywgMCwgNjU1NjYsIDY3MTcsIDEwNjE5LCA0MzM2MCwgNzgzODUsIDc4Mzg0LCA3ODM4MywgNzgzODIsIAogICAgIDc4MzgxLCA3ODM4MCwgNzgzNzksIDkzMTksIDcwOTcsIDExOTA1NSwgNzc5MDYsIDMyMzIsIDczODI0LCA3NDU4MSwgCiAgICAgMTIwNjMyLCAwLCAwLCA0MTg4OSwgOTI0NTMsIDAsIDExNjEsIDQxODk1LCA3NDEwMywgOTcwMSwgODYyMiwgMCwgMCwgCkBAIC0xODMwOCwyNjEgKzE4NTQ4LDI2NCBAQAogICAgIDAsIDAsIDExMjgsIDY1OTIwLCAwLCA5NzExLCA3MDU3LCA5NDA4LCA5NDA5LCA5NDEwLCA5NDExLCAzNjYyLCA5NDEzLCAKICAgICAzMzc4LCA5NDE1LCA5NDE2LCA5NDE3LCA5NDE4LCA2MzIwLCA5NDIwLCA5NDIxLCA1ODk3LCA5NDIzLCA1MTY1LCA1MTI2LCAKICAgICA0MTM4NSwgMCwgNDEzODksIDkxNzkzOCwgODk1NSwgMzM3NCwgOTQwMCwgOTQwMSwgNzExOSwgOTQwMywgOTQwNCwgMzUwNywgCi0gICAgOTQwNiwgNzYyOSwgMCwgMTk5MjUsIDQyNjY5LCA2ODQ2MywgMTgzLCA0Mzk4NSwgMjYzMSwgMCwgMTA2MjcsIDQxMTMwLCAKLSAgICA3ODI2MCwgMzk5NiwgMCwgNzg3NzEsIDAsIDExOTMxMywgMTE5MzA3LCA3ODc2OCwgNjU4MCwgNDMzMiwgNjQ4MjUsIAotICAgIDY2MzI5LCAxMDcyNiwgNjY2ODYsIDQxMTI1LCA1ODk5LCA0MTM2NSwgOTE3OTE4LCAxMjA4NSwgMCwgNTc0LCA5MTc5MjIsIAotICAgIDc3ODI1LCA3MzgyOCwgNTQ0OCwgNDEwNTgsIDU0NDYsIDY5NzA5LCA0MTMyMiwgNDIyMTEsIDU0NDIsIDQxOTAsIDc3ODM0LCAKLSAgICA3NzgzNSwgNTQ1MSwgNzc4MzMsIDM2MTYsIDc3ODI4LCA3NzgzNywgNzc4MzgsIDc3MDgsIDc3ODM2LCAxMDg1OSwgNjU4NjcsIAotICAgIDEwMzQ1LCAxMDQwOSwgNDE5MSwgMCwgNzc4NDQsIDczODAwLCA0MjE4MSwgNzc4NDMsIDc3ODM5LCAyMDYwLCAwLCA3MTExLCAKLSAgICAxMTc4OCwgNjU1ODcsIDY4MTI5LCAxMDQxNSwgNzQxMDIsIDAsIDIwNSwgMCwgMTAzNTEsIDExOTA3NiwgMCwgOTg2MiwgCi0gICAgNjU4OCwgNDMyNTcsIDY0Njk3LCA3Mzk5OCwgNDEzNTUsIDU1MDUsIDExOTE1NCwgNTUwMywgODAyMSwgMCwgNzEyNSwgCi0gICAgOTgxOSwgNDEzNTcsIDgwMTEsIDQyODg1LCA1NTA3LCAxMjA0NCwgOTI2MzYsIDAsIDEwMDI2LCA1NDcyLCA3MTA5LCAxMTkxLCAKLSAgICAxMzEwNiwgNTQ3MCwgMTAzMjksIDU0NzYsIDg5OTEsIDY2MzIyLCA2OTc3OCwgNzgyNjcsIDQyODc0LCA4NTUwLCA0Mjg3NiwgCi0gICAgNTU5MiwgMjkxOSwgMCwgMjY3NSwgNTU5NSwgNzg0MTEsIDAsIDQzNjcsIDAsIDAsIDU0NzgsIDU5MDQsIDU1OTQsIDAsIAotICAgIDc0MTUwLCA3MjkxLCA1NTkwLCA3Nzg0OSwgMTMwNjcsIDExODkwOSwgMTIwMzcyLCAwLCA5NzMxLCA2OTczMSwgNjQ2MzMsIAotICAgIDc3ODU3LCA3Nzg1NCwgNzc4NTUsIDc3ODUyLCA3Nzg1MywgNzc4NTAsIDEwNzUwLCA0MzcxNCwgNzc4NTgsIDcxMzcsIDAsIAotICAgIDEyODI5NiwgMTI4ODcsIDEwNTUxLCAxOTQ1NjQsIDc3ODY2LCA3Nzg2NywgNzc4NjQsIDc3ODY1LCA5OTI5LCA1MTk5LCAKLSAgICA5OTM2LCAxMTIwLCA0MjM4NywgMCwgMTQ0NCwgOTQ4NiwgNzU1NCwgNjU4MzksIDU1MjUyLCAwLCAxNDQyLCAwLCA1ODk0LCAKLSAgICAwLCAwLCA0MTE3MSwgOTI1MTEsIDc0MzEzLCAwLCAxMzE2MiwgMCwgMzMzNCwgMCwgMTE4ODAzLCA3Nzg4MSwgNjYwMjIsIDAsIAotICAgIDAsIDE2NTEsIDAsIDg4NjEsIDAsIDAsIDExNDIsIDAsIDgyNzEsIDAsIDAsIDAsIDEyOTAzLCAwLCA0MDAyLCA0MzYyNiwgCi0gICAgMTA0NDIsIDEwNjc2LCAzMzQ0LCAwLCAwLCAxMjkyMCwgMTk0NTYwLCAwLCAwLCA2NjY0MiwgMTI3NywgMCwgNzg3MSwgMCwgCi0gICAgMCwgNzg4NTMsIDAsIDc4ODU0LCAxMjAzNjAsIDAsIDExNzg0LCAwLCA3ODAxMiwgNDcwMCwgNjYzNjYsIDc4ODU4LCAKLSAgICAxMjAzNTksIDExMDEyLCAwLCA3ODg1NiwgOTI0MDAsIDc3ODc5LCA0OTczLCA4Nzg0LCA3Nzg3NywgNzQ4MDQsIDc3ODc0LCAKLSAgICA3Nzg2OSwgNzc4NzEsIDQyNDQwLCAwLCA0MzExOCwgMCwgNDIzNjQsIDY3NzQsIDY3NzMsIDkxNzU2MCwgMTIwMzY5LCAKLSAgICAxMDM0NiwgMTA0MTAsIDc4ODU5LCA5MjQzLCAyNDY0LCA3NDI2MywgNjEwOCwgMzM3MiwgMCwgNjI0NywgNDMxMTcsIAotICAgIDc0NTI2LCA3MTIxLCA3NDE2NiwgMCwgMTIwMzU1LCA5MjUzNywgMCwgMCwgMTk1MDM0LCAwLCAwLCAwLCA3NDIxNywgMzM1NCwgCi0gICAgMTk1MDM3LCA0MTkyLCA5Mjg5LCAxMTg5OTksIDQxMTkxLCAzODc2LCAwLCAxMjc5ODMsIDEyMDY2MCwgNDM2OTYsIDQzMzgwLCAKLSAgICAwLCAwLCAwLCAwLCAxMTYwMywgMCwgMCwgNjU4OSwgMTI4NTg4LCAxOTQ2NzksIDAsIDAsIDAsIDAsIDAsIDQyNTcyLCAKLSAgICAxMjgyNjQsIDEwNjMwLCA3NDgyNywgMTk2MywgMTE4ODg5LCAxMjc5NzgsIDExNjU0LCAwLCA3NTUwLCAxMDY4NiwgNTkwMywgCi0gICAgMCwgNzgwMDksIDQxMzI5LCA5NjYyLCA5MTc5MzcsIDY0Njk4LCAzMzY2LCAxMDM5OSwgMCwgMCwgMTEwMTMsIDEyNzkyNywgCi0gICAgMTI4MzAwLCAwLCA3ODYyMSwgMTk0NjcyLCA2OTI1LCAwLCAwLCA5MTc5MjksIDAsIDExNTY4LCAwLCA0MzM2NywgNjQ1NzksIAotICAgIDkxNzkzMCwgNzg1MiwgMCwgMCwgNjc1NCwgNjMxMiwgMCwgNjQ2NzIsIDY1Mjk2LCAwLCAxMTg5NTcsIDAsIDQxNiwgCi0gICAgMTIyOTYsIDY4NDU3LCA3MzgzNCwgNjgxNzcsIDExMDUwLCAxMDk4NCwgOTIyMDgsIDAsIDAsIDkyMTgyLCAwLCAwLCA5NTMyLCAKLSAgICA2NjM1NSwgMCwgMCwgOTE3OTI1LCA2NDM0MywgMTk1MDMyLCAxMjgyODEsIDE5NTAzMSwgMCwgMCwgMTk1MDU3LCAxMTQ0NSwgCi0gICAgMCwgMjExMiwgMTk1MDU2LCAxMjg4MTQsIDEwMTg1LCAxMDIxLCAxMjgxMzAsIDk1MDcsIDEwMjEwLCA3NDU0NCwgODAyMywgCi0gICAgMTIwMCwgMTIyNDMsIDc4MDAxLCA1MjgyLCA3ODAwMywgOTYyNCwgMTE1NDUsIDAsIDEyMDQ5MywgMzM0MywgNDQyNCwgCi0gICAgMTEwNDcsIDE4ODUsIDQzMjY4LCAzODk2LCA3ODYyNiwgNjY0OTcsIDI5NDcsIDM5MiwgNzg5NCwgNDM5MSwgNjgxMzksIDAsIAotICAgIDEzMDU5LCA3NDgxNiwgNzc5OTgsIDMzODEsIDc5NDIsIDAsIDY5MjE5LCAwLCA2NDc1NywgMCwgMzkxMywgMCwgMCwgCi0gICAgNzgyMzUsIDcwNDQsIDEyNjUsIDAsIDYzMDksIDcwNDUsIDcxNzUsIDcwNDcsIDc4MjM5LCAxMTc5MSwgMCwgMCwgODIyMSwgCi0gICAgNzgzMDcsIDQxODY0LCAwLCAwLCAwLCAwLCAxNjcsIDAsIDc4MzAxLCAwLCA3NDIxMSwgNDE4OTcsIDY4NDc3LCAwLCAKLSAgICA5MTc1ODMsIDAsIDAsIDI0OTMsIDAsIDExODgxMSwgMCwgMCwgNjQzNTQsIDAsIDg3NzcsIDAsIDQwNiwgODg4NCwgMjM4NSwgCi0gICAgMCwgOTI0NTAsIDAsIDkxNzU3MywgNDMwMzAsIDQyMDI3LCAxMjExNCwgMCwgOTE3NTc5LCA2NDkzNiwgMTk0Njk1LCAwLCAKLSAgICAxMjA2MjksIDEwNTYxLCAwLCA4MzY1LCAxMjA1MzksIDAsIDY1ODQxLCAxMjA3ODcsIDExNjAxLCAwLCA3NDEyMSwgMCwgCi0gICAgOTE3NTc1LCA3ODM0LCA3NDE1OSwgMCwgOTE3NTc0LCAxMDI5OCwgNjYyNCwgNDkwOCwgOTE3NTk2LCAxNjM5LCAwLCAwLCAKLSAgICA3NDE1NywgNjMyNywgNjcyNCwgMCwgMTI4MDg2LCA5MjU2NiwgMCwgNDgxNywgNzg0NDYsIDE5NDc1OSwgOTI1MzYsIDcwNDMsIAotICAgIDk2MDAsIDExMDIyLCAwLCAwLCAwLCAwLCAwLCAwLCA3NTQ4LCA2NDc5NCwgNDIwNTAsIDEyMjkxLCA1NTI4OSwgMTk0NzYxLCAKLSAgICAxMjM0MywgNjU3LCAxOTUwNTQsIDQyNzA1LCA0NDYxLCAxMTM0LCAxODM4LCA3ODQzOCwgMjA1NywgMCwgNDQ2OCwgMCwgMCwgCi0gICAgMCwgNDQ1NiwgNTIwNiwgMTA3MjAsIDAsIDQyNTIzLCAxMjc1MjAsIDAsIDAsIDkxNzU5NSwgNjU1NTAsIDI2MCwgNDgxNiwgCi0gICAgNjc2NTgsIDEwNjg3LCAwLCA0ODIxLCA0NDY2LCAwLCAxOTUwNDMsIDQ4MTgsIDE5NTA0OCwgNDE0MDMsIDExOTk3NywgMCwgCi0gICAgMCwgNDE0MDYsIDQzMjczLCA3NDE2MCwgMTE5OTgzLCA3MzkzOSwgOTI2MzgsIDExOTk4NCwgMTE5OTc5LCA0MTQwNCwgCi0gICAgMTE2NSwgMTE5OTgwLCA0NDUxLCAxMzA4NywgMCwgMTEyODQsIDExOTk4NywgNzM4NTUsIDY1MTU1LCA0MzAxNCwgNTQzOSwgCi0gICAgOTM2MywgMTI3NTU4LCAzMzc1LCAxMjg4NjksIDU5MDAsIDAsIDc4ODksIDI3MjIsIDQyMjYyLCAwLCAwLCAxMjg3NzQsIDAsIAotICAgIDAsIDAsIDEyNzgxMCwgMTE0MDEsIDAsIDAsIDY4NDU5LCAwLCAwLCAwLCAwLCA2NTQzOCwgMCwgNzI4MCwgMTI3ODg3LCAwLCAKLSAgICAxMjczODEsIDQ4NjgsIDExOTk2NywgMTE5OTY2LCAxMTg3OTgsIDAsIDAsIDQzMTYxLCAwLCA5MjM2MCwgMCwgNTE4MiwgMCwgCi0gICAgMTIwNTQyLCAwLCAwLCA0MjI2LCAxMjA3OTgsIDEyMTM1LCA1NzMyLCA0NDY0LCAwLCAwLCA5NzcsIDQ0NTgsIDAsIDAsIAotICAgIDY0NzcwLCA3NDgzOCwgMCwgMzQ0LCAwLCAxOTQ3OTAsIDEzOTUsIDY0Mjc5LCAwLCA5MjI0MCwgMCwgNzg2LCAwLCA0MzE3NCwgCi0gICAgNjQzNDAsIDAsIDAsIDEyMDcyMywgNDMwMjYsIDc2MTIsIDEwMTMyLCA2NDQxMywgNjUwMjUsIDAsIDAsIDAsIDAsIDAsIAotICAgIDY4NDQ0LCAwLCA5MjQzNywgMCwgMTE5MTYwLCAxMDIwNCwgOTI2NTYsIDAsIDEyNzgwOSwgMCwgMTM5OSwgMCwgNjUyMTcsIAotICAgIDAsIDg4NTIsIDAsIDI0MSwgMTI4NzgwLCA0OTA3LCAwLCAwLCA3OTMyLCA5NzI3LCAxMjg4NzMsIDc0MjU1LCA4NzQ4LCAwLCAKLSAgICAwLCAwLCAwLCA0Mjc4MCwgMCwgMCwgMCwgNDIxNywgMCwgODY1MCwgMCwgMCwgMCwgMCwgMTE4ODcyLCA0MzA5OSwgMzk2NSwgCi0gICAgMTE5MTE5LCA2NzE5LCAwLCAxMzMwMCwgNzg0MzksIDEyODI2MSwgNDMwNTcsIDY2NTg4LCAxMTg5OTEsIDAsIDAsIDczODE1LCAKLSAgICA0NDIwLCAwLCA2NDEwLCA3NzYwLCAwLCAwLCAwLCAwLCAwLCA3Mjk0LCAwLCAwLCAwLCA5MDY2LCAwLCAxMTk5MywgNDMxODgsIAotICAgIDI2MjYsIDc3NjIsIDAsIDAsIDAsIDkyNjAxLCA0MjgyNSwgNDE4NTQsIDUzMDQsIDAsIDc4NTE2LCA2OTE5LCA4NjE5LCAKLSAgICAxMTk2NTUsIDEwMDM4LCA2NjQ1NCwgOTU5MiwgNDI4NTEsIDEyNjk5MywgMTU0MiwgOTIzMDMsIDAsIDAsIDAsIDAsIAorICAgIDk0MDYsIDc2MjksIDk4MzM2MSwgMTk5MjUsIDQyNjY5LCA2ODQ2MywgMTgzLCA0Mzk4NSwgMjYzMSwgMCwgMTA2MjcsIAorICAgIDQxMTMwLCA3ODI2MCwgMzk5NiwgMCwgNzg3NzEsIDAsIDExOTMxMywgMTE5MzA3LCA3ODc2OCwgNjU4MCwgNDMzMiwgCisgICAgNjQ4MjUsIDY2MzI5LCAxMDcyNiwgNjY2ODYsIDQxMTI1LCA1ODk5LCA0MTM2NSwgOTE3OTE4LCAxMjA4NSwgMCwgNTc0LCAKKyAgICA5MTc5MjIsIDc3ODI1LCA3MzgyOCwgNTQ0OCwgNDEwNTgsIDU0NDYsIDY5NzA5LCA0MTMyMiwgNDIyMTEsIDU0NDIsIDQxOTAsIAorICAgIDc3ODM0LCA3NzgzNSwgNTQ1MSwgNzc4MzMsIDM2MTYsIDc3ODI4LCA3NzgzNywgNzc4MzgsIDc3MDgsIDc3ODM2LCAxMDg1OSwgCisgICAgNjU4NjcsIDEwMzQ1LCAxMDQwOSwgNDE5MSwgMCwgNzc4NDQsIDczODAwLCA0MjE4MSwgNzc4NDMsIDc3ODM5LCAyMDYwLCAwLCAKKyAgICA3MTExLCAxMTc4OCwgNjU1ODcsIDY4MTI5LCAxMDQxNSwgNzQxMDIsIDAsIDIwNSwgMCwgMTAzNTEsIDExOTA3NiwgMCwgCisgICAgOTg2MiwgNjU4OCwgNDMyNTcsIDY0Njk3LCA3Mzk5OCwgNDEzNTUsIDU1MDUsIDExOTE1NCwgNTUwMywgODAyMSwgMCwgCisgICAgNzEyNSwgOTgxOSwgNDEzNTcsIDgwMTEsIDQyODg1LCA1NTA3LCAxMjA0NCwgOTI2MzYsIDAsIDEwMDI2LCA1NDcyLCA3MTA5LCAKKyAgICAxMTkxLCAxMzEwNiwgNTQ3MCwgMTAzMjksIDU0NzYsIDg5OTEsIDY2MzIyLCA2OTc3OCwgNzgyNjcsIDQyODc0LCA4NTUwLCAKKyAgICA0Mjg3NiwgNTU5MiwgMjkxOSwgMCwgMjY3NSwgNTU5NSwgNzg0MTEsIDAsIDQzNjcsIDAsIDAsIDU0NzgsIDU5MDQsIDU1OTQsIAorICAgIDAsIDc0MTUwLCA3MjkxLCA1NTkwLCA3Nzg0OSwgMTMwNjcsIDExODkwOSwgMTIwMzcyLCAwLCA5NzMxLCA2OTczMSwgCisgICAgNjQ2MzMsIDc3ODU3LCA3Nzg1NCwgNzc4NTUsIDc3ODUyLCA3Nzg1MywgNzc4NTAsIDEwNzUwLCA0MzcxNCwgNzc4NTgsIAorICAgIDcxMzcsIDAsIDEyODI5NiwgMTI4ODcsIDEwNTUxLCAxOTQ1NjQsIDc3ODY2LCA3Nzg2NywgNzc4NjQsIDc3ODY1LCA5OTI5LCAKKyAgICA1MTk5LCA5OTM2LCAxMTIwLCA0MjM4NywgMCwgMTQ0NCwgOTQ4NiwgNzU1NCwgNjU4MzksIDU1MjUyLCAwLCAxNDQyLCAwLCAKKyAgICA1ODk0LCA5ODM0MTAsIDAsIDQxMTcxLCA5MjUxMSwgNzQzMTMsIDAsIDEzMTYyLCAwLCAzMzM0LCAwLCAxMTg4MDMsIAorICAgIDc3ODgxLCA2NjAyMiwgMCwgMCwgMTY1MSwgMCwgODg2MSwgMCwgMCwgMTE0MiwgMCwgODI3MSwgMCwgMCwgMCwgMTI5MDMsIAorICAgIDAsIDQwMDIsIDQzNjI2LCAxMDQ0MiwgMTA2NzYsIDMzNDQsIDAsIDAsIDEyOTIwLCAxOTQ1NjAsIDAsIDAsIDY2NjQyLCAKKyAgICAxMjc3LCAwLCA3ODcxLCAwLCAwLCA3ODg1MywgMCwgNzg4NTQsIDEyMDM2MCwgMCwgMTE3ODQsIDAsIDc4MDEyLCA0NzAwLCAKKyAgICA2NjM2NiwgNzg4NTgsIDEyMDM1OSwgMTEwMTIsIDAsIDc4ODU2LCA5MjQwMCwgNzc4NzksIDQ5NzMsIDg3ODQsIDc3ODc3LCAKKyAgICA3NDgwNCwgNzc4NzQsIDc3ODY5LCA3Nzg3MSwgNDI0NDAsIDAsIDQzMTE4LCAwLCA0MjM2NCwgNjc3NCwgNjc3MywgCisgICAgOTE3NTYwLCAxMjAzNjksIDEwMzQ2LCAxMDQxMCwgNzg4NTksIDkyNDMsIDI0NjQsIDc0MjYzLCA2MTA4LCAzMzcyLCAwLCAKKyAgICA2MjQ3LCA0MzExNywgNzQ1MjYsIDcxMjEsIDc0MTY2LCAwLCAxMjAzNTUsIDkyNTM3LCAwLCAwLCAxOTUwMzQsIDAsIDAsIDAsIAorICAgIDc0MjE3LCAzMzU0LCAxOTUwMzcsIDQxOTIsIDkyODksIDExODk5OSwgNDExOTEsIDM4NzYsIDAsIDEyNzk4MywgMTIwNjYwLCAKKyAgICA0MzY5NiwgNDMzODAsIDAsIDAsIDAsIDAsIDExNjAzLCA5ODM2ODYsIDAsIDY1ODksIDEyODU4OCwgMTk0Njc5LCAwLCAwLCAKKyAgICA5ODM0MzUsIDAsIDAsIDQyNTcyLCAxMjgyNjQsIDEwNjMwLCA3NDgyNywgMTk2MywgMTE4ODg5LCAxMjc5NzgsIDExNjU0LCAKKyAgICAwLCA3NTUwLCAxMDY4NiwgNTkwMywgMCwgNzgwMDksIDQxMzI5LCA5NjYyLCA5MTc5MzcsIDY0Njk4LCAzMzY2LCAxMDM5OSwgCisgICAgMCwgMCwgMTEwMTMsIDEyNzkyNywgMTI4MzAwLCAwLCA3ODYyMSwgMTk0NjcyLCA2OTI1LCAwLCAwLCA5MTc5MjksIDAsIAorICAgIDExNTY4LCA5ODM0MDgsIDQzMzY3LCA2NDU3OSwgOTE3OTMwLCA3ODUyLCAwLCAwLCA2NzU0LCA2MzEyLCAwLCA2NDY3MiwgCisgICAgNjUyOTYsIDAsIDExODk1NywgMCwgNDE2LCAxMjI5NiwgNjg0NTcsIDczODM0LCA2ODE3NywgMTEwNTAsIDEwOTg0LCAKKyAgICA5MjIwOCwgMCwgMCwgOTIxODIsIDAsIDk4MzM0OSwgOTUzMiwgNjYzNTUsIDAsIDk4MzA0OSwgOTE3OTI1LCA2NDM0MywgCisgICAgMTk1MDMyLCAxMjgyODEsIDE5NTAzMSwgMCwgMCwgMTk1MDU3LCAxMTQ0NSwgMCwgMjExMiwgMTk1MDU2LCAxMjg4MTQsIAorICAgIDEwMTg1LCAxMDIxLCAxMjgxMzAsIDk1MDcsIDEwMjEwLCA3NDU0NCwgODAyMywgMTIwMCwgMTIyNDMsIDc4MDAxLCA1MjgyLCAKKyAgICA3ODAwMywgOTYyNCwgMTE1NDUsIDAsIDEyMDQ5MywgMzM0MywgNDQyNCwgMTEwNDcsIDE4ODUsIDQzMjY4LCAzODk2LCAKKyAgICA3ODYyNiwgNjY0OTcsIDI5NDcsIDM5MiwgNzg5NCwgNDM5MSwgNjgxMzksIDAsIDEzMDU5LCA3NDgxNiwgNzc5OTgsIDMzODEsIAorICAgIDc5NDIsIDAsIDY5MjE5LCAwLCA2NDc1NywgMCwgMzkxMywgMCwgMCwgNzgyMzUsIDcwNDQsIDEyNjUsIDAsIDYzMDksIAorICAgIDcwNDUsIDcxNzUsIDcwNDcsIDc4MjM5LCAxMTc5MSwgMCwgMCwgODIyMSwgNzgzMDcsIDQxODY0LCAwLCAwLCAwLCAwLCAKKyAgICAxNjcsIDk4MzY0MSwgNzgzMDEsIDAsIDc0MjExLCA0MTg5NywgNjg0NzcsIDAsIDkxNzU4MywgOTgzMzY5LCAwLCAyNDkzLCAKKyAgICAwLCAxMTg4MTEsIDAsIDAsIDY0MzU0LCAwLCA4Nzc3LCAwLCA0MDYsIDg4ODQsIDIzODUsIDAsIDkyNDUwLCAwLCA5MTc1NzMsIAorICAgIDQzMDMwLCA0MjAyNywgMTIxMTQsIDAsIDkxNzU3OSwgNjQ5MzYsIDE5NDY5NSwgMCwgMTIwNjI5LCAxMDU2MSwgMCwgODM2NSwgCisgICAgMTIwNTM5LCA5ODM1MDksIDY1ODQxLCAxMjA3ODcsIDExNjAxLCAwLCA3NDEyMSwgMCwgOTE3NTc1LCA3ODM0LCA3NDE1OSwgCisgICAgMCwgOTE3NTc0LCAxMDI5OCwgNjYyNCwgNDkwOCwgOTE3NTk2LCAxNjM5LCAwLCAwLCA3NDE1NywgNjMyNywgNjcyNCwgMCwgCisgICAgMTI4MDg2LCA5MjU2NiwgMCwgNDgxNywgNzg0NDYsIDE5NDc1OSwgOTI1MzYsIDcwNDMsIDk2MDAsIDExMDIyLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCA3NTQ4LCA2NDc5NCwgNDIwNTAsIDEyMjkxLCA1NTI4OSwgMTk0NzYxLCAxMjM0MywgNjU3LCAxOTUwNTQsIAorICAgIDQyNzA1LCA0NDYxLCAxMTM0LCAxODM4LCA3ODQzOCwgMjA1NywgMCwgNDQ2OCwgMCwgMCwgMCwgNDQ1NiwgNTIwNiwgCisgICAgMTA3MjAsIDAsIDQyNTIzLCAxMjc1MjAsIDAsIDAsIDkxNzU5NSwgNjU1NTAsIDI2MCwgNDgxNiwgNjc2NTgsIDEwNjg3LCAwLCAKKyAgICA0ODIxLCA0NDY2LCAwLCAxOTUwNDMsIDQ4MTgsIDE5NTA0OCwgNDE0MDMsIDExOTk3NywgMCwgMCwgNDE0MDYsIDQzMjczLCAKKyAgICA3NDE2MCwgMTE5OTgzLCA3MzkzOSwgOTI2MzgsIDExOTk4NCwgMTE5OTc5LCA0MTQwNCwgMTE2NSwgMTE5OTgwLCA0NDUxLCAKKyAgICAxMzA4NywgMCwgMTEyODQsIDExOTk4NywgNzM4NTUsIDY1MTU1LCA0MzAxNCwgNTQzOSwgOTM2MywgMTI3NTU4LCAzMzc1LCAKKyAgICAxMjg4NjksIDU5MDAsIDAsIDc4ODksIDI3MjIsIDQyMjYyLCAwLCAwLCAxMjg3NzQsIDAsIDAsIDAsIDEyNzgxMCwgMTE0MDEsIAorICAgIDAsIDAsIDY4NDU5LCAwLCAwLCAwLCAwLCA2NTQzOCwgMCwgNzI4MCwgMTI3ODg3LCAwLCAxMjczODEsIDQ4NjgsIDExOTk2NywgCisgICAgMTE5OTY2LCAxMTg3OTgsIDAsIDAsIDQzMTYxLCAwLCA5MjM2MCwgMCwgNTE4MiwgMCwgMTIwNTQyLCAwLCAwLCA0MjI2LCAKKyAgICAxMjA3OTgsIDEyMTM1LCA1NzMyLCA0NDY0LCAwLCAwLCA5NzcsIDQ0NTgsIDAsIDAsIDY0NzcwLCA3NDgzOCwgMCwgMzQ0LCAKKyAgICAwLCAxOTQ3OTAsIDEzOTUsIDY0Mjc5LCAwLCA5MjI0MCwgMCwgNzg2LCAwLCA0MzE3NCwgNjQzNDAsIDAsIDAsIDEyMDcyMywgCisgICAgNDMwMjYsIDc2MTIsIDEwMTMyLCA2NDQxMywgNjUwMjUsIDAsIDAsIDAsIDAsIDAsIDY4NDQ0LCAwLCA5MjQzNywgMCwgCisgICAgMTE5MTYwLCAxMDIwNCwgOTI2NTYsIDAsIDEyNzgwOSwgOTgzMzc5LCAxMzk5LCA5ODMzODcsIDY1MjE3LCAwLCA4ODUyLCAwLCAKKyAgICAyNDEsIDEyODc4MCwgNDkwNywgMCwgOTgzMzc0LCA3OTMyLCA5NzI3LCAxMjg4NzMsIDc0MjU1LCA4NzQ4LCAwLCAwLCAKKyAgICA5ODMzNzgsIDAsIDQyNzgwLCAwLCAwLCAwLCA0MjE3LCAwLCA4NjUwLCAwLCAwLCAwLCAwLCAxMTg4NzIsIDQzMDk5LCAKKyAgICAzOTY1LCAxMTkxMTksIDY3MTksIDAsIDEzMzAwLCA3ODQzOSwgMTI4MjYxLCA0MzA1NywgNjY1ODgsIDExODk5MSwgMCwgMCwgCisgICAgNzM4MTUsIDQ0MjAsIDAsIDY0MTAsIDc3NjAsIDAsIDAsIDAsIDAsIDAsIDcyOTQsIDAsIDAsIDAsIDkwNjYsIDAsIDExOTkzLCAKKyAgICA0MzE4OCwgMjYyNiwgNzc2MiwgMCwgMCwgMCwgOTI2MDEsIDQyODI1LCA0MTg1NCwgNTMwNCwgMCwgNzg1MTYsIDY5MTksIAorICAgIDg2MTksIDExOTY1NSwgMTAwMzgsIDY2NDU0LCA5NTkyLCA0Mjg1MSwgMTI2OTkzLCAxNTQyLCA5MjMwMywgMCwgMCwgMCwgMCwgCiAgICAgNzQzMTEsIDc4NDk3LCAwLCAxMDE4MSwgMCwgNDM2MjQsIDAsIDc3NzksIDAsIDEwMTk1LCA5NDc5LCA2MDI5LCAwLCAKICAgICA5MjI2OCwgOTY4OSwgMCwgMCwgODk5MywgNjYzNTgsIDAsIDQyMzc4LCAzMzY4LCA2MDYsIDEyNzAzMCwgNzY5NywgNjkyMzcsIAogICAgIDY5Nzg3LCAyMDMwLCAwLCA2MDI3LCA4MzcwLCA0MzIyLCAwLCA2NTIwNywgMCwgMCwgMCwgMCwgMCwgMjczNSwgNDI4MzEsIAotICAgIDc3OTM1LCAxMjcxMjAsIDc0ODY2LCA4ODgxLCAxMTkwNDcsIDAsIDAsIDczOTQ2LCAwLCAwLCAwLCA2ODE0MCwgMCwgOTU3NiwgCi0gICAgMTI4ODcyLCAzMzQ3LCA0MTYwLCA1MTU0LCA1NTI4OCwgMzc5NCwgNjY1NjQsIDg1MzAsIDEyNzA2MywgNzcwOSwgNDExMTIsIAotICAgIDAsIDY2NTYwLCA0MjA0MSwgNDU3MiwgMTI4NzYsIDY2NTYxLCAwLCA2NzU4LCAwLCAxNjE1LCA1ODU1LCA4MDksIDAsIAotICAgIDkyMjgzLCAxMjgzMTYsIDEyODAwNCwgNTc5OSwgMCwgMCwgMCwgNzI2MCwgMCwgNDMwMzEsIDY0NDI1LCA2NTEyOCwgCi0gICAgNzg4MTksIDY0Mzg2LCA2NTI1NywgMCwgNjg2MTYsIDEyMDYwNywgOTM0NywgMTI4MDY3LCA2NTMyLCAwLCAwLCAwLCAKLSAgICAxMjcwNjAsIDY1ODI4LCAwLCAyODMsIDY4NjY1LCA3ODgxMywgNTMyLCA3ODY2MywgMCwgMCwgMTIwNjA5LCAwLCAzMzcwLCAKLSAgICAwLCAxMTM2MSwgNTQ0MywgNzg3NzgsIDgxNTMsIDczNzY3LCAwLCAxMDc0MSwgMCwgMCwgMCwgMCwgNjU0OTUsIDY0NzA2LCAKLSAgICAwLCA0MzM0NCwgMCwgNzE0NCwgOTQ2NiwgNzg4NjYsIDk4MjQsIDAsIDAsIDAsIDAsIDkxNSwgNDM0MjUsIDAsIDAsIDAsIDAsIAotICAgIDEyNzE3OCwgNDMyNjQsIDAsIDAsIDAsIDAsIDc4ODY0LCA2NzMwLCA3ODg2MiwgNjgxNjEsIDY0NTUwLCA1MTg2LCAxMjg5MCwgCi0gICAgMTI3ODM3LCAwLCAxMjEwOCwgMCwgNjUxMjQsIDQzMTI3LCA2NjA0MywgMCwgNjMyNiwgNDMxMDcsIDc3ODI2LCAwLCAKLSAgICA0MjU2MiwgMCwgMCwgMCwgMTI4NTIwLCAxMTQ4NSwgNjEwMywgMTI3MTIzLCAwLCAxMTcxOCwgMCwgMTI4ODksIDkyNjU3LCAKLSAgICAxMjcxMzcsIDAsIDAsIDAsIDU1MjQ1LCAwLCAxNjMwLCAxMjgyMzIsIDY1NDgzLCAwLCAxMjU2NSwgMCwgNjU0NzYsIAotICAgIDEyMDAxMywgMCwgMTE5NTU0LCA5MjgzLCA3NzAwLCA5MTc1MzcsIDk2OTAsIDY1NDk5LCAwLCA2NDU5MywgNTEyLCAzMzc2LCAKLSAgICA2ODIxMCwgMCwgMCwgNzc4OTIsIDYzMiwgMTI5NDAsIDc3ODkxLCA0MjUyOSwgNzg1ODcsIDAsIDU5NTcsIDExMDU5MywgCi0gICAgODkyNiwgMCwgMCwgMTI4MjczLCAxMDc0NSwgMTAxNzQsIDczNzksIDY0NTgxLCA1Mzg2LCAxMjA2ODYsIDExNzEzLCAKLSAgICAxMDYzMywgNjk3MDgsIDUwNTYsIDAsIDAsIDAsIDEyMDc3MywgMCwgOTgxMiwgMCwgNDQ2MCwgMCwgMCwgMCwgMTI4MDM4LCAKLSAgICAwLCAwLCAxMjcxNzQsIDY0Mjc4LCA5MjM3MCwgNDM0NjYsIDAsIDAsIDY0Mzg5LCAyOTUzLCA3Mzg3OSwgMTgwMSwgMTI4MzUsIAotICAgIDExOTAyOSwgMCwgNzM4MjMsIDAsIDY2Mzc1LCAyMDg1LCA3MDIsIDQyNTc5LCA3Nzg4NCwgNzc4ODUsIDEzMDc0LCA3Nzg4MywgCi0gICAgMCwgMCwgMTI4NTcwLCAxMjEwNiwgMCwgNzQyMDcsIDE3NTUsIDEwNDgyLCAxMjg2MywgNzc4OTgsIDExNjMsIDI5NTEsIAotICAgIDk1MjIsIDc0MDc5LCA3ODI2NiwgMTIwNjc0LCAwLCAzMzg0LCA2OTIyNywgMTA3MDIsIDgzMCwgNzc5MDIsIDc3ODk5LCAKLSAgICA3NzkwMCwgODQ1MSwgMCwgMCwgMCwgNjk3MzksIDAsIDAsIDAsIDAsIDI5MDgsIDAsIDQzMzg2LCA2NDkwMiwgNDI0MywgMCwgCi0gICAgMTIyMzksIDAsIDAsIDQ0NDEsIDAsIDAsIDczOTQwLCA2NDM1MiwgMTI3NTEzLCAwLCA0MTEsIDAsIDkxOTksIDAsIDQwNTYsIAotICAgIDExODk5MiwgNDE4OTAsIDAsIDI3MzAsIDQxNjA0LCAwLCA1NDI4LCAxOTQ3NDMsIDMzNjQsIDQyMjY1LCA2NDQzNywgCi0gICAgMTI3OTM1LCAxMTg4MTYsIDE5NDc0MiwgOTY4NCwgMjE2LCAwLCAxNDAxLCAxMjgwNTMsIDQ0MDEyLCAwLCAwLCA5MjU4NSwgCi0gICAgOTE1OCwgNzc4NDIsIDEyMDY2NCwgNTc2OCwgMCwgMCwgMCwgNDg0LCAxOTQ3MzksIDAsIDAsIDY1ODk1LCAwLCAwLCAzMzM4LCAKLSAgICA3MzkzNSwgNTcyLCA3MDQxLCAyNzM2LCA2NzYwNSwgMCwgMTI4NjgwLCAyNzk0LCA4ODA3LCA2NDQ5MSwgNzc4NDcsIDU0MzgsIAotICAgIDUyMjIsIDUzODEsIDQzMTE0LCAwLCA1MTkzLCA1MTI1LCA1NDU2LCA1NTA5LCA3Nzg0NiwgMTk0NzQ3LCA5NTM0LCAwLCAwLCAKLSAgICAwLCAzNDMwLCAwLCAwLCAwLCAwLCA5ODEsIDAsIDQzMzAsIDczOTI5LCAxMjA1MzYsIDE4MjQsIDEwOTA4LCAwLCA3MDM0LCAKLSAgICA0MTY4MywgNjQ2MTcsIDAsIDczNzU0LCAzOTU3LCA2NDM1OCwgNjQ1NDcsIDEyODI1OSwgNjc0LCA2Mzk5MSwgMCwgMjk0NiwgCi0gICAgNTM1NCwgNTI1MSwgNTMyOCwgNTMwNywgMzc1OSwgMTE0MTEsIDgzNjQsIDUxMjMsIDExOTYyOCwgNTI4MSwgNTQ2OSwgCi0gICAgNTEyMSwgMTE5MjQ1LCAxMTg5OTMsIDAsIDUxMzAsIDAsIDAsIDc3OTkwLCAwLCAxMjA3MjYsIDEyMjEsIDI3MzMsIDExNzQ2LCAKLSAgICA3Nzk5MSwgNTIxNiwgMCwgMCwgMCwgMCwgMzQ2OCwgNzAzMywgOTIzMCwgNTkzOSwgMTk1MDUyLCAwLCAwLCAxMjA2NzcsIAotICAgIDY4NDAwLCA3Mjc4LCAxMDMyMSwgMTAyODksIDY0NjEzLCAxMDM4NSwgNDE3MDYsIDAsIDAsIDAsIDAsIDExNzM5LCAwLCAKLSAgICA0MTk4MSwgMCwgNTkzOCwgMCwgMCwgMTI0NDgsIDc1NzYsIDEwNDAxLCAxMDMzNywgNzM4NTIsIDAsIDEzMDU3LCAwLCAKLSAgICAxMjY5NzYsIDAsIDEwMDA5LCAwLCA0MTcwMywgMCwgMTIxNjUsIDAsIDAsIDk4ODUsIDAsIDgwNzcsIDAsIDEyNzkwOCwgMCwgCi0gICAgMCwgMCwgOTI0NTcsIDAsIDQyMjAsIDEwNzI1LCAxMDQzMywgMCwgNjgzOTUsIDQ5ODcsIDY0NTE5LCAwLCAxMjgzNDAsIDAsIAotICAgIDAsIDAsIDEwOTcwLCAxMTczMywgMCwgMTIwNzkyLCAwLCAxOTk0NCwgMCwgOTAwOSwgODU1MSwgOTIzNDUsIDExNDY4LCAKLSAgICA2NDYzNiwgNzU3NSwgMCwgMjcyNCwgMCwgMCwgMTIzMTMsIDExMDU5MiwgNTE1LCAxMTk5NDcsIDQyNzkxLCA2Mzk4NywgCi0gICAgNzgyODYsIDExOTk0MywgMTE5OTQwLCAxMTk5NDEsIDExOTkzOCwgOTc3NSwgNDA0NiwgNDU4OSwgNDUyMSwgNjg2MjksIAotICAgIDkxNDEsIDAsIDc4ODUwLCAyNzQxLCA2NDM5OSwgNjE5NywgMTM3MCwgMCwgMCwgMCwgMCwgMCwgMCwgNjE4NCwgODYwNiwgCi0gICAgMzMwMywgNDEzNzIsIDExNzg2LCA5NDczLCA2NjIwMywgNjYxNzcsIDkyNDQ2LCAxMTU5MywgNDMwMDcsIDQ0NzgsIDY2MTc4LCAKLSAgICAwLCAwLCAyNzQ0LCAwLCA0NDc3LCAxMTg5NjQsIDgxNCwgNDIwNjYsIDY2MTgzLCA2NjIwNCwgNDM3ODYsIDExOTk2MSwgCi0gICAgNjYxOTgsIDQxODgwLCA2NjE4OCwgNjYxOTcsIDc4MTQ4LCAxMTk1NSwgNjYxOTAsIDY2MTkxLCA0MTExMSwgNjYxODksIAotICAgIDczNzg4LCA3Nzg4LCA0ODQ3LCAwLCAxMjc3NTksIDAsIDAsIDAsIDE1ODEsIDY1MzUsIDc4MTYxLCAxMjk1NCwgNDMwLCAKLSAgICA3ODE2MCwgNTUyNTksIDc4MTU4LCAxMjgwMzYsIDUyNzgsIDQ5NDUsIDQyODgzLCA0OTUwLCAwLCA2ODYyNSwgMCwgNzI2OSwgCi0gICAgMCwgNTk2NCwgMTI5MDgsIDAsIDAsIDc0NzY0LCA3NDQ3NywgMTE5MTQ2LCAxOTQ5MzYsIDQ5NDksIDAsIDQ0MywgMCwgCi0gICAgNDk0NCwgNTQ2NywgMTE5NjAzLCAwLCA2NTEzNywgNjA0NCwgNjUzOTIsIDAsIDQyMTMsIDAsIDQxMzAzLCAwLCAxOTQ5MzEsIAorICAgIDc3OTM1LCAxMjcxMjAsIDc0ODY2LCA4ODgxLCAxMTkwNDcsIDAsIDAsIDczOTQ2LCAwLCAwLCAwLCA2ODE0MCwgOTgzNjYwLCAKKyAgICA5NTc2LCAxMjg4NzIsIDMzNDcsIDQxNjAsIDUxNTQsIDU1Mjg4LCAzNzk0LCA2NjU2NCwgODUzMCwgMTI3MDYzLCA3NzA5LCAKKyAgICA0MTExMiwgMCwgNjY1NjAsIDQyMDQxLCA0NTcyLCAxMjg3NiwgNjY1NjEsIDk4MzQ5MywgNjc1OCwgOTgzNjU4LCAxNjE1LCAKKyAgICA1ODU1LCA4MDksIDAsIDkyMjgzLCAxMjgzMTYsIDEyODAwNCwgNTc5OSwgMCwgMCwgMCwgNzI2MCwgMCwgNDMwMzEsIAorICAgIDY0NDI1LCA2NTEyOCwgNzg4MTksIDY0Mzg2LCA2NTI1NywgMCwgNjg2MTYsIDEyMDYwNywgOTM0NywgMTI4MDY3LCA2NTMyLCAKKyAgICAwLCAwLCAwLCAxMjcwNjAsIDY1ODI4LCAwLCAyODMsIDY4NjY1LCA3ODgxMywgNTMyLCA3ODY2MywgMCwgOTgzNTMxLCAKKyAgICAxMjA2MDksIDAsIDMzNzAsIDAsIDExMzYxLCA1NDQzLCA3ODc3OCwgODE1MywgNzM3NjcsIDAsIDEwNzQxLCAwLCAwLCAwLCAKKyAgICA5ODM2NTIsIDY1NDk1LCA2NDcwNiwgMCwgNDMzNDQsIDAsIDcxNDQsIDk0NjYsIDc4ODY2LCA5ODI0LCAwLCAwLCAwLCAwLCAKKyAgICA5MTUsIDQzNDI1LCAwLCAwLCAwLCAwLCAxMjcxNzgsIDQzMjY0LCAwLCAwLCAwLCAwLCA3ODg2NCwgNjczMCwgNzg4NjIsIAorICAgIDY4MTYxLCA2NDU1MCwgNTE4NiwgMTI4OTAsIDEyNzgzNywgMCwgMTIxMDgsIDAsIDY1MTI0LCA0MzEyNywgNjYwNDMsIDAsIAorICAgIDYzMjYsIDQzMTA3LCA3NzgyNiwgMCwgNDI1NjIsIDAsIDAsIDAsIDEyODUyMCwgMTE0ODUsIDYxMDMsIDEyNzEyMywgMCwgCisgICAgMTE3MTgsIDAsIDEyODg5LCA5MjY1NywgMTI3MTM3LCAwLCAwLCAwLCA1NTI0NSwgMCwgMTYzMCwgMTI4MjMyLCA2NTQ4MywgCisgICAgMCwgMTI1NjUsIDAsIDY1NDc2LCAxMjAwMTMsIDAsIDExOTU1NCwgOTI4MywgNzcwMCwgOTE3NTM3LCA5NjkwLCA2NTQ5OSwgCisgICAgMCwgNjQ1OTMsIDUxMiwgMzM3NiwgNjgyMTAsIDAsIDAsIDc3ODkyLCA2MzIsIDEyOTQwLCA3Nzg5MSwgNDI1MjksIDc4NTg3LCAKKyAgICAwLCA1OTU3LCAxMTA1OTMsIDg5MjYsIDAsIDAsIDEyODI3MywgMTA3NDUsIDEwMTc0LCA3Mzc5LCA2NDU4MSwgNTM4NiwgCisgICAgMTIwNjg2LCAxMTcxMywgMTA2MzMsIDY5NzA4LCA1MDU2LCAwLCAwLCAwLCAxMjA3NzMsIDAsIDk4MTIsIDAsIDQ0NjAsIDAsIAorICAgIDAsIDAsIDEyODAzOCwgMCwgMCwgMTI3MTc0LCA2NDI3OCwgOTIzNzAsIDQzNDY2LCAwLCAwLCA2NDM4OSwgMjk1MywgCisgICAgNzM4NzksIDE4MDEsIDEyODM1LCAxMTkwMjksIDAsIDczODIzLCAwLCA2NjM3NSwgMjA4NSwgNzAyLCA0MjU3OSwgNzc4ODQsIAorICAgIDc3ODg1LCAxMzA3NCwgNzc4ODMsIDAsIDAsIDEyODU3MCwgMTIxMDYsIDAsIDc0MjA3LCAxNzU1LCAxMDQ4MiwgMTI4NjMsIAorICAgIDc3ODk4LCAxMTYzLCAyOTUxLCA5NTIyLCA3NDA3OSwgNzgyNjYsIDEyMDY3NCwgMCwgMzM4NCwgNjkyMjcsIDEwNzAyLCAKKyAgICA4MzAsIDc3OTAyLCA3Nzg5OSwgNzc5MDAsIDg0NTEsIDAsIDAsIDAsIDY5NzM5LCAwLCAwLCAwLCAwLCAyOTA4LCAwLCAKKyAgICA0MzM4NiwgNjQ5MDIsIDQyNDMsIDAsIDEyMjM5LCAwLCAwLCA0NDQxLCAwLCAwLCA3Mzk0MCwgNjQzNTIsIDEyNzUxMywgMCwgCisgICAgNDExLCAwLCA5MTk5LCAwLCA0MDU2LCAxMTg5OTIsIDQxODkwLCAwLCAyNzMwLCA0MTYwNCwgOTgzNjY5LCA1NDI4LCAKKyAgICAxOTQ3NDMsIDMzNjQsIDQyMjY1LCA2NDQzNywgMTI3OTM1LCAxMTg4MTYsIDE5NDc0MiwgOTY4NCwgMjE2LCAwLCAxNDAxLCAKKyAgICAxMjgwNTMsIDQ0MDEyLCAwLCAwLCA5MjU4NSwgOTE1OCwgNzc4NDIsIDEyMDY2NCwgNTc2OCwgMCwgMCwgMCwgNDg0LCAKKyAgICAxOTQ3MzksIDAsIDAsIDY1ODk1LCAwLCAwLCAzMzM4LCA3MzkzNSwgNTcyLCA3MDQxLCAyNzM2LCA2NzYwNSwgMCwgCisgICAgMTI4NjgwLCAyNzk0LCA4ODA3LCA2NDQ5MSwgNzc4NDcsIDU0MzgsIDUyMjIsIDUzODEsIDQzMTE0LCAwLCA1MTkzLCA1MTI1LCAKKyAgICA1NDU2LCA1NTA5LCA3Nzg0NiwgMTk0NzQ3LCA5NTM0LCAwLCAwLCAwLCAzNDMwLCAwLCAwLCAwLCAwLCA5ODEsIDAsIDQzMzAsIAorICAgIDczOTI5LCAxMjA1MzYsIDE4MjQsIDEwOTA4LCAwLCA3MDM0LCA0MTY4MywgNjQ2MTcsIDAsIDczNzU0LCAzOTU3LCA2NDM1OCwgCisgICAgNjQ1NDcsIDEyODI1OSwgNjc0LCA2Mzk5MSwgMCwgMjk0NiwgNTM1NCwgNTI1MSwgNTMyOCwgNTMwNywgMzc1OSwgMTE0MTEsIAorICAgIDgzNjQsIDUxMjMsIDExOTYyOCwgNTI4MSwgNTQ2OSwgNTEyMSwgMTE5MjQ1LCAxMTg5OTMsIDAsIDUxMzAsIDAsIDAsIAorICAgIDc3OTkwLCAwLCAxMjA3MjYsIDEyMjEsIDI3MzMsIDExNzQ2LCA3Nzk5MSwgNTIxNiwgMCwgMCwgMCwgMCwgMzQ2OCwgNzAzMywgCisgICAgOTIzMCwgNTkzOSwgMTk1MDUyLCAwLCAwLCAxMjA2NzcsIDY4NDAwLCA3Mjc4LCAxMDMyMSwgMTAyODksIDY0NjEzLCAKKyAgICAxMDM4NSwgNDE3MDYsIDAsIDAsIDAsIDAsIDExNzM5LCAwLCA0MTk4MSwgMCwgNTkzOCwgMCwgMCwgMTI0NDgsIDc1NzYsIAorICAgIDEwNDAxLCAxMDMzNywgNzM4NTIsIDAsIDEzMDU3LCAwLCAxMjY5NzYsIDAsIDEwMDA5LCAwLCA0MTcwMywgOTgzMzczLCAKKyAgICAxMjE2NSwgMCwgMCwgOTg4NSwgMCwgODA3NywgMCwgMTI3OTA4LCAwLCAwLCAwLCA5MjQ1NywgMCwgNDIyMCwgMTA3MjUsIAorICAgIDEwNDMzLCAwLCA2ODM5NSwgNDk4NywgNjQ1MTksIDAsIDEyODM0MCwgMCwgMCwgMCwgMTA5NzAsIDExNzMzLCAwLCAKKyAgICAxMjA3OTIsIDAsIDE5OTQ0LCAwLCA5MDA5LCA4NTUxLCA5MjM0NSwgMTE0NjgsIDY0NjM2LCA3NTc1LCAwLCAyNzI0LCAwLCAKKyAgICAwLCAxMjMxMywgMTEwNTkyLCA1MTUsIDExOTk0NywgNDI3OTEsIDYzOTg3LCA3ODI4NiwgMTE5OTQzLCAxMTk5NDAsIAorICAgIDExOTk0MSwgMTE5OTM4LCA5Nzc1LCA0MDQ2LCA0NTg5LCA0NTIxLCA2ODYyOSwgOTE0MSwgMCwgNzg4NTAsIDI3NDEsIAorICAgIDY0Mzk5LCA2MTk3LCAxMzcwLCAwLCAwLCAwLCAwLCAwLCAwLCA2MTg0LCA4NjA2LCAzMzAzLCA0MTM3MiwgMTE3ODYsIAorICAgIDk0NzMsIDY2MjAzLCA2NjE3NywgOTI0NDYsIDExNTkzLCA0MzAwNywgNDQ3OCwgNjYxNzgsIDAsIDAsIDI3NDQsIDAsIAorICAgIDQ0NzcsIDExODk2NCwgODE0LCA0MjA2NiwgNjYxODMsIDY2MjA0LCA0Mzc4NiwgMTE5OTYxLCA2NjE5OCwgNDE4ODAsIAorICAgIDY2MTg4LCA2NjE5NywgNzgxNDgsIDExOTU1LCA2NjE5MCwgNjYxOTEsIDQxMTExLCA2NjE4OSwgNzM3ODgsIDc3ODgsIAorICAgIDQ4NDcsIDAsIDEyNzc1OSwgMCwgMCwgMCwgMTU4MSwgNjUzNSwgNzgxNjEsIDEyOTU0LCA0MzAsIDc4MTYwLCA1NTI1OSwgCisgICAgNzgxNTgsIDEyODAzNiwgNTI3OCwgNDk0NSwgNDI4ODMsIDQ5NTAsIDAsIDY4NjI1LCAwLCA3MjY5LCAwLCA1OTY0LCAKKyAgICAxMjkwOCwgOTgzMjk5LCAwLCA3NDc2NCwgNzQ0NzcsIDExOTE0NiwgMTk0OTM2LCA0OTQ5LCAwLCA0NDMsIDAsIDQ5NDQsIAorICAgIDU0NjcsIDExOTYwMywgMCwgNjUxMzcsIDYwNDQsIDY1MzkyLCAwLCA0MjEzLCAwLCA0MTMwMywgMCwgMTk0OTMxLCAKICAgICAxMTk5NjIsIDQxMzA2LCA3Mzk4NCwgMjY5OCwgMTI3MTU5LCAwLCAxMjA3MiwgMzE5MywgMCwgNDEzMDQsIDgyNCwgCiAgICAgMTI4Njc2LCAxMjA5MSwgNzg4OTMsIDc4ODk0LCAxMTk4MTYsIDQ2NzMsIDY0ODA0LCA0Njc4LCAxMTk4MjAsIDExOTgxOSwgCiAgICAgNjUwNTksIDAsIDY3MzksIDAsIDU0ODEsIDM0OTAsIDExOTksIDExOTgxMSwgODM1NiwgMTE5ODI5LCAxMTk4MzIsIDQ2NzcsIAogICAgIDEyNjg4LCAzMTAyLCAwLCA0NjcyLCA3ODE3MywgNzgxNzUsIDU1MzEsIDY4MzY3LCA0MjU3NSwgNzgxNzAsIDc4MTY2LCAKICAgICA0Njc0LCA0NTQ4LCA0NDAwNSwgMTE5OTQ5LCA2ODY1OCwgMTE5OTQ2LCA4MDI1LCA2ODYzMCwgMTI3MDI0LCAxODU1LCAwLCAKICAgICA2ODY2OSwgMCwgOTI0NDUsIDEyNzU1NCwgMCwgMCwgMTE5NjUyLCAyNzQ1LCAxMTc5NywgMCwgMTI4MTU5LCA5MjAyLCAKLSAgICA0NjU0LCAwLCAwLCA2ODYzOCwgNzM5OTMsIDEwNTI1LCA0NjQ5LCA2NTIwOSwgMCwgMCwgNDY0OCwgNDMwODAsIDAsIDAsIDAsIAotICAgIDYyNDYsIDY0OTUwLCA3ODI4LCA0NjUwLCA2Nzc3LCA2Nzc2LCA2Nzc1LCA0NjUzLCA3ODIyLCA3ODAwNSwgOTIzODQsIAotICAgIDQzMTg3LCA4NjY5LCAwLCA2ODIxLCA2NTA5MywgMCwgNzg4ODEsIDI3MTYsIDAsIDAsIDAsIDAsIDY4MzY5LCAxMjAwNTQsIAotICAgIDExMDYwLCA4NTQ3LCAyNzExLCA0MjE2NSwgNzgwMjcsIDc4MDI2LCA3OTkyLCAwLCAwLCA0NjYyLCA3ODAzMywgNzgwMzIsIAotICAgIDkxNDksIDkxNDYsIDU5OSwgMjA4MSwgNzgwMzEsIDc4MDMwLCAxOTQ5NjIsIDQ2NTYsIDEwMTMwLCA2ODQ1MCwgNzgxMSwgCi0gICAgNDA5OTQsIDE5NDk2NSwgNjQxNCwgNTk2NywgNDY1OCwgMzcyNSwgNTcxMywgNTgxNCwgNDY2MSwgNDI0MzQsIDAsIDAsIDAsIAotICAgIDY0OTA0LCA5MDI2LCAxMDgzMywgNzQ4NjQsIDc1NDcsIDQ4NjcsIDAsIDEwMDA4LCAxMDIyMiwgMzA1NCwgMTk0OTU2LCAKLSAgICA5NzQ0LCA3ODg2MCwgNzYwNSwgNDYyMiwgMTE5NjU2LCAwLCAwLCAwLCAwLCAwLCA5MDQ1LCA3ODg4OCwgNDIyNSwgMTk5MjYsIAotICAgIDc4ODg3LCAxMjg4MCwgNjUzMDcsIDQ2MTcsIDc4ODgzLCAwLCA0MTczMiwgNDYxNiwgMTA1MTgsIDEwNDIzLCAxMDM1OSwgMCwgCi0gICAgNTk1OCwgMCwgMCwgNDIxNSwgOTc4OSwgOTE3OTQxLCA0MzIxLCA0NjIxLCAwLCA0MTMxMywgNTIyLCA1MzY4LCAwLCAKLSAgICA2NTgwMywgMCwgNTM2NiwgMTIyMDEsIDUzNzIsIDAsIDAsIDAsIDc3MjAsIDczOTAsIDI2OTYsIDAsIDAsIDQ2MzgsIDAsIAotICAgIDE3OTAsIDc4MjQyLCA1OTY1LCA2NDM2MywgNjY1NjksIDY4NjQ2LCAxOTQ5NjgsIDUzNzYsIDE4MzUsIDUzMzUsIDE5NDk2NiwgCi0gICAgMTI4MDg5LCA0NjMzLCAwLCA2ODExOSwgMTE4MCwgNDYzMiwgMTI4MDkzLCA1Mzg3LCA1MzMzLCAwLCAwLCA0MjA5NCwgCi0gICAgNTMzMSwgNDYzNCwgMTE5MjgsIDAsIDUzMzgsIDQ2MzcsIDEyODE3MCwgNTk3MSwgNDI0MTQsIDAsIDEyNjgsIDY1MDk3LCAKLSAgICA0MjM2MSwgMCwgMCwgNzM4NTMsIDE0MjcsIDAsIDAsIDU5NzAsIDM0MzEsIDAsIDEwMzU4LCAxMDQyMiwgNDc1OCwgMCwgCi0gICAgMTYwOCwgMjczOCwgMCwgMTA0NTUsIDQ3NTMsIDc0MDI2LCAxMTM0NCwgNDIyMiwgNjI0MCwgNTIzMSwgNzQzODQsIDAsIAotICAgIDY4Mzc3LCA2MjQ4LCAwLCAwLCAwLCA0MjMxOCwgOTI1ODIsIDUyMjksIDQ3NTcsIDAsIDAsIDI3MjgsIDQ3NTIsIDY0NTYzLCAKLSAgICA2NTIzNSwgNTIzNCwgMCwgMTI4MTQ1LCAwLCAxMDcxMywgNzE2NiwgMCwgMjYyMiwgNzQ2MCwgMTI3MzAyLCAwLCAwLCAKLSAgICA4OTU0LCA3NDc2MCwgNjUxODksIDI2MzIsIDkyMjMwLCAxMDEwOCwgMTAxMSwgNTU3NCwgMTg1MywgMjcwOSwgNjUxMzksIAotICAgIDU1NzcsIDAsIDAsIDExODg3MSwgNjg2NDEsIDg5NjUsIDc2MzUsIDQyMTc3LCA1MzE2LCAwLCA1MzE0LCA2NDUxLCA1NTcyLCAKLSAgICAwLCA1MzEyLCAwLCA1NTI1LCA1MzMwLCA1MzE5LCAwLCAwLCAxOTQ5MDcsIDQ0MDAzLCAwLCAwLCAwLCAxMjA0OTgsIAotICAgIDEyNzg1MSwgMTk1MDA5LCAwLCA3NDAyMiwgMCwgNjQ2MDksIDY4NjQzLCAxMjA2MzQsIDAsIDU3MjEsIDAsIDU1MTksIAotICAgIDg2MzIsIDY2NDY1LCAxMTI2NywgNzM5NjEsIDkyMjc4LCA1NzIwLCAwLCAxNjkyLCA0MjE5LCA0NjEwLCA4Njk2LCA0MzA1LCAKLSAgICAwLCA0NjA5LCA0MzQ3OCwgNDYxNCwgNTQxLCAwLCA1Mjg3LCA1MzA5LCA1Mjg1LCA2ODM4OSwgNTk2MSwgNDY0NywgNTYsIAotICAgIDQyMTYsIDEwNTc3LCA0MTM4MSwgNjAxLCA0NjEzLCAwLCAwLCA5MjI3NiwgNDYwOCwgNjQyNjAsIDQxMTI0LCA1MTkwLCAKLSAgICA2NzYyOCwgMCwgNjgxNDUsIDcwODYsIDAsIDExOTI0MywgNjc2MjAsIDAsIDI3MzQsIDExMDc0LCAwLCA2NzYyNywgNDM1OTMsIAotICAgIDAsIDY3NjI1LCA1OTYwLCAwLCA4OTkyLCA0MjU5MywgMTI4MjYwLCAxNzgyLCA2NzYyMiwgNjgxMTQsIDExOTkzOSwgMCwgCi0gICAgNjgxODAsIDU1MDEsIDExOTk1MiwgNDI1MDgsIDc0NDIsIDQzNjY1LCAzNTksIDQxMjUzLCA2ODM5MiwgNjIzOSwgMTE5OTU2LCAKLSAgICA0MTI1NiwgMCwgNjgxMzQsIDAsIDc0MjA5LCA5MTc1NTAsIDkzNDYsIDY5NjYwLCA0MTI1NCwgMTI4MDQ3LCA0MzI5MSwgCi0gICAgMzc2NywgNTczNywgMCwgNDg2NSwgMCwgNTc0MCwgOTE3OTk3LCA1NzM2LCA0MzY4LCA2NDcyNCwgNzE5MywgNjgxMzcsIDAsIAotICAgIDU3MzksIDQxMDI0LCA0ODY2LCAwLCA3MzkwNCwgMCwgNDg2OSwgMTIwNTYzLCAwLCA0MjIzLCAxMjgyMDEsIDY2NTAsIDAsIAotICAgIDAsIDAsIDEyNzg5MCwgNDg3MCwgMTIwNDQ1LCA2ODY2MSwgNjcxNiwgNzgxNzYsIDY4NjY3LCA2ODM4MiwgNjg2NzYsIAotICAgIDEyNzkyNSwgMTAxMjIsIDQ4NjQsIDY2NTY4LCA0MTQ0LCA3OTM3LCAwLCA2MjQ1LCA2ODY1MiwgMjczMiwgNDI3MzQsIDc0NSwgCi0gICAgMCwgMTk1MDk3LCA5MjE5NSwgNDc3NywgNzgyMSwgMCwgNjg2MzEsIDQyNzc1LCAwLCAxOTQ5NTQsIDAsIDMwOTcsIDAsIAotICAgIDU5NjYsIDAsIDQ3NzgsIDAsIDEwODYzLCAwLCA0NzgxLCAwLCA2NDQwNywgMCwgMCwgODU3NywgMTI4NTYyLCA2ODE5NiwgCi0gICAgNDMyODUsIDEwMjE2LCA0NzgyLCAwLCAwLCAxMjA3NTcsIDY4NjE4LCAxMjMyNSwgNDMwNTYsIDg3MTcsIDAsIDAsIDQ3NzYsIAotICAgIDczODE4LCAxMTQ5MiwgODcwMCwgMCwgMTMxNzYsIDY4MzYzLCAxMDQyNiwgMCwgOTE3NTk5LCAxMDM2MiwgMTk0NzA2LCAKLSAgICAxNzE1LCA0ODQ5LCA4MjQyLCA5NTYxLCA3MzkyMiwgNDMyNzgsIDQyNjM1LCAwLCAwLCA1OTYzLCA5MTc5MjYsIDAsIDAsIAotICAgIDQ4NTAsIDAsIDE2MDcsIDQ2NiwgNDg1MywgMTE4OTk1LCA0ODU0LCAxMjc5MTgsIDUxNjQsIDAsIDEzNTAsIDUxMjQsIAotICAgIDY0NDIwLCAxOTkzLCA1MzYyLCA4NDcxLCAyNzA4LCA5MjQ3MSwgMTI0NDUsIDM3ODUsIDIzNCwgMzE5OSwgMCwgNDEyNjgsIAotICAgIDQ4NDgsIDI1MzAsIDkxNzkwOSwgMjA2OCwgMTk2NCwgMCwgNzM3NjIsIDEwNDU4LCAwLCA4NTc2LCA3ODU0MywgMCwgMjcwNCwgCi0gICAgNDc5NCwgMCwgNjgyMTEsIDgzMjIsIDQ3OTcsIDU3NTMsIDAsIDI2OTQsIDQ3OTIsIDAsIDI0MzksIDY1MTA0LCA2OTgwNCwgCi0gICAgMCwgMzAzLCAwLCA5MjYyMiwgMCwgMjQzNywgMCwgNDIyMSwgNDg0NCwgMTE4ODY5LCAwLCAwLCAwLCAwLCAwLCA0MzI5MiwgCi0gICAgMCwgMjQ0MSwgMTA3MzksIDY1MDkwLCAwLCAxMTkzMjcsIDAsIDI0NTEsIDI3MTQsIDExOTMyNiwgMCwgNDMzNzksIDQ5MzcsIAotICAgIDQzMzc2LCA3NTMsIDU4NDksIDEwNTk3LCA0MzA4OSwgMTE3MjIsIDkyNDgsIDkyNTU1LCA0Mjg3OSwgMTE3MjUsIDAsIDAsIAotICAgIDI3MjYsIDMxMDcsIDczOTU4LCA0OTQxLCA2NDkzNywgMTE5MjMzLCA5MTQwLCAxNDA4LCA1MjYxLCA0NjA3LCAwLCAxODEsIAotICAgIDAsIDQ5NDIsIDk1MzksIDQ5MzgsIDAsIDY1MjAxLCA1MjU5LCA5MzY5LCA2NDE4NSwgNDE0MiwgNTI1NywgMCwgMCwgNDk2NCwgCi0gICAgNTI2NCwgNjQxNzgsIDY0MTc3LCAxMjk3OSwgNDE0MTEsIDY0MTgyLCA2NDE4MSwgNjQxODAsIDY0MTc5LCA5NDgyLCA0ODczLCAKLSAgICA0MTIzMSwgMTgyMiwgNDI1MjYsIDEyODU4MSwgMTI3NTgsIDM4NjUsIDAsIDAsIDEwNTAwLCAwLCAwLCA3ODAyOCwgMCwgCi0gICAgOTgzMCwgNDM2NDIsIDM4OSwgMTA4OTMsIDc1MjEsIDEyNzg3OSwgNDg3MiwgNTQ2MywgMCwgMzEyNSwgOTU2NywgMCwgCi0gICAgNDg3OCwgNTQ1OSwgNDYwNCwgOTE3OTMxLCA5NTU3LCA1NDY1LCA2ODYxNywgMCwgMTE0OTQsIDAsIDk1NjMsIDEwODY1LCAKLSAgICA3NDU3MCwgNDMyNzksIDY0MTg2LCAwLCA3ODcxNCwgNjQxOTEsIDY0MTkwLCA4ODk4LCA2NDE4OCwgMCwgNDEwMzAsIAotICAgIDc4ODM2LCAwLCA5MTc4MzUsIDc4ODIwLCA5MTc4MzQsIDAsIDc4ODA1LCA0MTAzMSwgNzg4MDEsIDExOTYwLCA2NzQ1LCAKLSAgICAzMDgyLCAwLCA3ODUzOSwgNzM5MTksIDEwNTczLCA0MTc0NCwgNzA3OSwgNTg1NiwgMTI3MDQzLCA1MTYzLCA3ODgwOSwgCi0gICAgMTI4MTYyLCAxODE3LCA2NjcyNCwgNzg1MzgsIDAsIDEwNTY0LCA3NzYzLCAxMzA3NywgNDE4MTMsIDQ0MDAsIDQxNzQ1LCAKLSAgICA2NDIwNywgMTAyNzUsIDg5MjUsIDEwMzcxLCAxMDMwNywgNDE4MTQsIDQyNDgsIDAsIDAsIDQ1NDEsIDYyOTksIDY0MjA0LCAKLSAgICA2NDIwMywgNjQyMDEsIDY0MjAwLCA2NDE5OSwgNjQxOTgsIDAsIDQyMTU2LCA3ODY4OCwgMCwgNjQxOTMsIDY0MTkyLCAKLSAgICA2NTIyMywgOTk0MywgNjQxOTcsIDY0MTk2LCA2NDE5NSwgNjQxOTQsIDEzMjgyLCA2NDE3NSwgNjQxNzQsIDY0MTczLCAKLSAgICA3ODE4OSwgODQ2LCA3ODE4NiwgOTk2NSwgMCwgMCwgMCwgMCwgMjU0MywgMTIxNjMsIDMxMDgsIDk3NDUsIDY0MTY3LCAKLSAgICA2NDE2NiwgNjQxNjUsIDY0MTY0LCAyMTEwLCA5MjE3NiwgNjQxNjksIDY0MTY4LCA2NDk0OSwgMTA5NzIsIDEwMjUxLCAKLSAgICAxMDI0NywgNDI3NjgsIDcxNSwgNjQxNjEsIDQzMjk5LCA5NDUzLCA1MzQ4LCAxMDk0MywgMTIwMzc4LCAwLCAxMTM1MiwgCi0gICAgNTUwLCA5OTEwLCAwLCAwLCA2NjU3OSwgMTE1NTEsIDAsIDE5NTA4MCwgOTUwNCwgNzE4NywgMCwgMTAzNzMsIDAsIAotICAgIDEyMDc5MSwgMTAyNjEsIDEwMjUzLCA2NDA0LCAxMDI3NywgNzgxODMsIDExOTg0LCAxNTUyLCA2NTIyMiwgNjk5OCwgCi0gICAgNzgxODAsIDAsIDMxMjgsIDQ3ODksIDUwNjcsIDUwNjYsIDExODg0OSwgNDc4NCwgMCwgODgyNywgMTE0NiwgNTA2NSwgCi0gICAgNzgxOTYsIDc4MTkyLCA2ODEzNiwgNzgxOTAsIDQzNDEyLCA1MDY0LCAyNDMxLCAwLCA5NDUwLCAxODA5LCAwLCA3ODIwMCwgCi0gICAgNzgyMDEsIDUwNjIsIDEyNjQsIDY0ODE3LCAxMzI1NCwgMTE2OTcsIDAsIDk3ODUsIDY0NzE2LCAwLCAzOTMzLCA3NDU1OSwgCi0gICAgNDc0MCwgNzk1NCwgMCwgMCwgNDI2MDksIDAsIDc0MTc1LCAwLCAxMjcwMTYsIDAsIDAsIDQyMTMwLCAwLCA1MTUxLCAKLSAgICA5MTc4MjksIDkxNzgyMywgMCwgMCwgMCwgNzYyMCwgMzgwMCwgNjUxMjIsIDAsIDAsIDgzNTUsIDc4NTQsIDAsIDk1NCwgCi0gICAgNjQ5MjcsIDQxODUsIDQxMDQ1LCAxMjcxNDEsIDQxNDM4LCA0MTQzOSwgNjg2NjYsIDEwNzExLCA0NTkzLCAxMjc3NDUsIAotICAgIDEyMDU4NCwgMCwgNjQ3NzQsIDgwNTMsIDEwNTMyLCA2NjcyNywgMCwgMCwgMCwgNjQ3NTksIDYzODEsIDUxNjYsIDk4ODgsIAotICAgIDEyNzgwMCwgNTE0OCwgNDI4MzQsIDAsIDc4MjA1LCA3ODIwNiwgNDM3ODcsIDc4MjA0LCA2NDEzMSwgMzExOSwgOTE3ODE0LCAKLSAgICAwLCAzMDYwLCA2NDEzNSwgOTk4NiwgMCwgNzc4NzYsIDYzNiwgMTE2OTgsIDAsIDAsIDk5MTYsIDExNzAxLCA3ODM2LCAKLSAgICA0Mjc0MSwgNjQxMzcsIDgzMjAsIDc4NjQwLCA4ODYzLCA5MjQzMSwgMTE5OTYwLCAxNDc3LCA0MzI4OSwgMCwgNzQzNTgsIAotICAgIDg2MTgsIDAsIDk5MDgsIDAsIDAsIDAsIDM5MzcsIDEyMzEyLCAwLCAwLCAwLCA2NDc4MSwgOTEyLCA2MzQ5LCA0NTM2LCAKLSAgICAxMTk5NjMsIDc0NTMyLCAwLCA2MjQ0LCAwLCAxOTQ1ODAsIDM5MzUsIDEyMDY2NSwgMCwgMCwgMTE5NTAsIDUzOTIsIAotICAgIDQyMjQ4LCA2NTEyOSwgNjg2NTYsIDUzOTcsIDAsIDEyMDQ2LCAxMjU5OSwgMCwgMCwgNTM5NSwgMCwgNTM5MywgMzU0LCAKLSAgICA2ODYxNSwgMTE5OTQ4LCA3ODUwMywgMCwgMCwgNDIwMzksIDAsIDAsIDY0MTQyLCA2MjYsIDAsIDU4OTUsIDAsIDAsIDU3ODAsIAotICAgIDAsIDAsIDEyODg3NCwgMCwgMCwgNDMyOTcsIDAsIDQzMTEsIDQ2NDQsIDg4MTgsIDAsIDEyODE4NiwgMCwgNzE0NSwgMzkxOCwgCi0gICAgNjY0NTIsIDM3OTcsIDE2NDQsIDkyMzQ2LCA5NjU4LCA0MTQwLCAxMTM4NSwgNjU5NDcsIDY0NTUsIDkwMzAsIDgxMywgCi0gICAgMTE5OTQ1LCA2ODEzMSwgNDE0NiwgMTE5OTU3LCA1MzYwLCAyNDY2LCAwLCA2NzY2OSwgMTE5OTQyLCA2MjQ5LCA0MjExNywgCi0gICAgOTIyODcsIDEyODIyNCwgMCwgMCwgNzQwNDYsIDEyMDU4MywgNDkxMSwgOTg4LCA5MTc4MDcsIDAsIDAsIDQzMDYxLCA3MDU0LCAKLSAgICA2NDE0NywgMCwgNjQ5MjAsIDY4MTk1LCA2Njk4LCAxMTg5MzMsIDkyNTA2LCAwLCAxMjAwMDYsIDExOTgxLCAxMjIwMiwgMCwgCi0gICAgMTEwMzIsIDY3NjU0LCA2MDkzLCAxMTYwOCwgOTc1LCA2ODY2MiwgNjU4NDMsIDE3MCwgMCwgMCwgNDE2OSwgMCwgNDE4NTksIAotICAgIDYwNTgsIDEyMDQwMSwgMTMyMDMsIDEyMDY1NywgMCwgMCwgNjg2NTcsIDk4MTgsIDEwMTc4LCAxMDMyNCwgNDIxMDYsIAotICAgIDU4OTgsIDc0NTQwLCA0NzM4LCA0MTg1NiwgNzA2MiwgOTE3ODY1LCA0NzM3LCAxMTc3OSwgNDc0MiwgMTIwNTY0LCA5MjM5MSwgCi0gICAgNzM3MzYsIDAsIDk4MjUsIDY0NDgsIDY3MTUsIDEyNzAwOCwgNDgzMSwgMCwgOTI1MjUsIDAsIDUzMDAsIDQ3NDEsIDQyMTA4LCAKLSAgICAwLCA2NDE1OSwgNDczNiwgNjQxNDgsIDAsIDg0OSwgOTIxOTEsIDc4NDkxLCA0MzI4OCwgMCwgNjY2MjAsIDAsIDEyNzMzMSwgCi0gICAgNjU1NDksIDk0OTYsIDY0NTk4LCAxMTg4NjYsIDAsIDc4NzYsIDY4MTMyLCA5MTc4NzIsIDM5MjgsIDkxNzg3MCwgNDMzNzgsIAotICAgIDEwNzA2LCA3MTk4LCAwLCA0ODQyLCAxMjA1MywgMTI4MTI5LCAwLCA0ODQxLCAwLCA0MTcxLCAxMjAwOCwgNjI1MSwgMzkyMywgCi0gICAgMTQ5MCwgMCwgMTE5NTkxLCAwLCA0MDk3MiwgNTI0NSwgMCwgMTAxMTQsIDQyMDAxLCA0MTg4OCwgNDg0NSwgODMzMiwgCi0gICAgNDA5NzQsIDY0MzQ3LCA0ODQwLCA5MDc3LCA3ODM0NiwgMTc0NywgOTE3ODQ5LCA0ODI1LCA2OTI0MCwgOTE3ODUyLCAKLSAgICA2ODY1NSwgMCwgMCwgMCwgMCwgNjg2MjgsIDAsIDk4NTAsIDExODkzNywgMzY3LCAxNDcyLCA5MTc4NTksIDY2ODcsIDEyNzQsIAotICAgIDAsIDU5MDUsIDEyMzM5LCA4OTE5LCA3Mzk1MywgMTA5MDcsIDY1MjYxLCAxMTAyMywgMTE5NTU5LCA0ODMwLCA5MTM0LCAKLSAgICA3ODY2NiwgNjQxMjYsIDQzMDExLCAwLCAwLCA2NDEwMSwgMCwgMCwgNDgyNCwgMTA2MTQsIDEyMDM5MCwgMCwgMTg4OCwgCi0gICAgMTk2MCwgNzg2MSwgOTE3ODU2LCA3ODUyNCwgNDE4MzYsIDQzMDEyLCA2MDUyLCA2MDY0LCA1NCwgNDMwMDksIDEyMjE0LCAwLCAKLSAgICA2MjExLCAwLCAzNTgsIDQxOTk3LCA0MTgzMywgMTE0NDIsIDEwNzU4LCA2NTc3NCwgMCwgMTIwMzg0LCA2NDExNSwgOTIyMjEsIAotICAgIDAsIDAsIDAsIDExOTA1MywgMCwgMTI3NjUsIDY0MTE4LCAxMjY5OTgsIDEyOTYyLCAwLCAwLCA0MDE3LCAxMjgyNywgNTI0MSwgCi0gICAgMTIwMzkyLCAwLCA0MTExOCwgMzkyNCwgMCwgMTEzNjYsIDkxNzg0MywgMCwgMCwgOTE3ODQ2LCA0MTExNiwgOTE3ODQ0LCAKLSAgICA5MTc1NjQsIDAsIDExMzYzLCAxMjA1NywgMTE5MTcsIDE1NjcsIDc0MDAwLCA0NzIxLCAwLCA2NjIwMiwgODk1NywgNDEzOSwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMTI3NDAsIDEyODcwMiwgNDcyMiwgNjgxNiwgMTI3NzkzLCAxMjc1OSwgNDcyNSwgMCwgNDcyNiwgCi0gICAgMCwgMCwgMCwgOTE3OTA0LCA5MTc5MDUsIDAsIDEyNzU1LCAxMjc2MiwgNDAxNSwgMCwgODA1MiwgNDc2LCAwLCAwLCAKLSAgICAxMjgyOTQsIDY0MjEyLCA0MTAyMCwgMTM4MiwgNjQyMDksIDY0MjE2LCA2NDIxNSwgNjQyMTQsIDE2NTYsIDQxODMxLCAwLCAKLSAgICAwLCA0MTg0MywgODcyMCwgMzkwOCwgMTQ1MiwgMTMxMTEsIDAsIDY0MDY3LCAxMjczMjgsIDg1NTIsIDY0MTEzLCA0MTg0NSwgCi0gICAgMzg0OSwgNzg3MzIsIDY2MjMyLCA5Nzc4LCAxMjAwNjYsIDU4OTEsIDcwNjQsIDU1LCA5OTQ4LCAxMTkwODUsIDAsIDAsIAotICAgIDc5MzUsIDI0MjAsIDAsIDExMTQsIDkyNTk5LCA2NzU4NSwgNzg2NzUsIDEyMDA1MywgOTIzNTAsIDEyMDA1MSwgMzkzOCwgCi0gICAgMTIwMDU3LCA2NTQxNywgNjQ3MTcsIDEyMDA2MCwgMTIwMDYxLCA2NTQxNSwgMTIwMDU5LCA2MjkyLCA2NTMwMywgNzk1NSwgCi0gICAgNjQ1MiwgNDcxMywgMTI4MTk2LCA2NjI0OSwgOTE3ODg1LCA5MTc4OTAsIDkxNzg5MSwgNjUxNTIsIDcxOSwgMTIwMDQ0LCAKLSAgICA3ODYyMywgMTIwMDQyLCA2NzEzLCA0NTMyLCA2NTQxMiwgNjk4MjIsIDEwODY4LCA0NzE3LCAyMzQ5LCA1OTAyLCA2NjQ1MCwgCi0gICAgNDcxMiwgOTE3OTAyLCA5MTc4OTksIDkxNzkwMCwgNjU0MTYsIDgxNTUsIDQ3MTgsIDM5NDIsIDQ3MTQsIDk2MjUsIDAsIAotICAgIDYzODMsIDE5NDc0NCwgMTIwMDYsIDEyODU2NSwgMCwgMCwgMCwgMCwgNjU0MTQsIDY0NTQsIDEyMjksIDAsIDY2NDM3LCAKLSAgICA2NjAyNSwgNzg2OTksIDAsIDQyNTAwLCAxMjA1MDgsIDQ4MDksIDk2MjMsIDkxNzg3NCwgNzg2OTQsIDkxNzg4MCwgCi0gICAgOTE3ODc3LCA5MTc4NzgsIDY1NDA1LCA2ODE1OSwgMTI4OTMsIDkxNzg4MiwgNTM2NSwgNDU0NSwgODkwMSwgOTI0MjEsIAotICAgIDExOTU1NSwgNDgxMywgMTI4MjYyLCAwLCA1OTI1LCA0ODA4LCA2NDMzMCwgMCwgNjU0NzUsIDExODk0MCwgMTk1MDI4LCAKLSAgICA0ODE0LCAwLCA0ODEwLCAwLCAwLCA2NDkyOCwgMTA1NDMsIDAsIDM1MjIsIDAsIDQxNCwgNjU0MDQsIDAsIDE5NTAyNywgCi0gICAgNjQ1NiwgNzM4MjAsIDAsIDY2OTEsIDQyMTkzLCA5MjIyNSwgMTI4MTcxLCAwLCA3NDQ5NSwgMCwgMCwgMCwgMTE4ODIwLCAKLSAgICA5NzUxLCA2NTQwNywgMTI4MDg1LCAxMTc3MCwgMzkxOSwgMCwgMCwgNjUwNjEsIDAsIDAsIDAsIDEyMjM1LCAwLCAwLCAKLSAgICAxMjcyMzMsIDY0MDkyLCAwLCA2NDA4MCwgMCwgNjQwOTAsIDAsIDAsIDEwMTYyLCAxMDMxMCwgMCwgODQ1NCwgMTI3ODg4LCAKLSAgICA0MjAzOCwgMzg3LCA0MTM2MywgMTI3MzcsIDAsIDQ3ODAsIDQzMzY4LCAwLCA2NDMxMCwgNjQ2MjEsIDY3MzIsIDAsIDAsIDAsIAotICAgIDAsIDAsIDg4OTYsIDAsIDM3NSwgNjk3NiwgNjY1ODIsIDExOTAwNSwgMCwgMCwgMCwgMTE5MjAyLCAxMTkyMDMsIDEyNTI2LCAKLSAgICA0MzEyMCwgMjMxNSwgMCwgMTkzOCwgMTE5MTk3LCAwLCA0NTI5LCAxMTkyMDAsIDExOTIwMSwgMTE5MTk4LCAxMTkxOTksIAotICAgIDY5NjkyLCAwLCA2OTY5OCwgMTMxNTAsIDY0NDkyLCAwLCAwLCAwLCAxMjkwMiwgMCwgNDI4OTEsIDY2MzI3LCA3NDI5OCwgMCwgCi0gICAgMTA3OTksIDY5NjkwLCAyNTg3LCA2NjM3MiwgMCwgNDE5MywgOTIyNTAsIDQyNDEsIDAsIDc5OTgsIDAsIDAsIDAsIDAsIAotICAgIDIzMTYsIDExODgyMSwgMCwgMCwgMCwgNjQyOTcsIDc0Nzk5LCA5MjQ0MiwgNzQxNDAsIDAsIDUzNzMsIDAsIDAsIDM3NjIsIAotICAgIDEwMDE1LCAxMjczMzUsIDExOTIzMiwgMCwgNDE1OTAsIDAsIDkyMzc4LCAzNzgwLCA3NDg1LCA1Nzc5LCAwLCA0MjAzNywgMCwgCi0gICAgMzkwNiwgMTIzNDksIDAsIDgzMjYsIDAsIDY1NDk4LCAzNzYzLCA2OTgzLCA1NjE4LCAwLCAzNzc5LCAwLCA0MzYxMywgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMjgwLCA3NDU1OCwgMTI3MzMyLCA2ODEzOCwgMTMwNzIsIDE4OTQsIDAsIDAsIDY1NDc4LCAKLSAgICA0MzMxMCwgNzIzMSwgMCwgMTE3NzMsIDAsIDAsIDAsIDAsIDI1NTEsIDAsIDY0NTMsIDEwMjAwLCA2MjM1LCAwLCAxMTkyMzcsIAotICAgIDAsIDEyODgwNSwgNDQ3MCwgMTE5NjEzLCA5MTc1NTcsIDc3ODAsIDUzNjksIDExODk1OCwgNTI0OSwgMCwgNTM2NywgODc1NiwgCi0gICAgMTI3MTQzLCAwLCA1Mzc3LCAxMjA1ODUsIDY4MTQzLCAxNjg4LCA3ODI0NSwgMCwgNjk2ODUsIDAsIDAsIDAsIDQ0MDIwLCAKLSAgICA2ODA4LCA0MTMxOSwgMTMwMCwgMTA2NTAsIDQxNjkyLCA2NDUwNSwgNDY2OCwgMCwgMTE5NjI0LCAxNDY1LCAxMDg1MCwgCi0gICAgMzk0MywgMCwgNDEyMDUsIDQxMzE1LCAxMTg5NjEsIDAsIDAsIDUzNTIsIDAsIDAsIDg4MzksIDQxMzE0LCA3Mzg0LCA3Nzg1LCAKLSAgICA0MTIwNCwgMTI3MzIyLCA0MTIwOSwgNjk2MzcsIDkyMjQxLCA0MzYwNywgMCwgMCwgNTQyMCwgMzg5NywgMTAxMzQsIDAsIAotICAgIDc0NDE3LCA0MDE4LCA3MTUwLCA2ODEyNywgMCwgMCwgMCwgMCwgMTI3NTI2LCAyNTYxLCA2ODYyMSwgMzU0MiwgNzE0OCwgCi0gICAgMTIwNzYsIDc5NTEsIDY4MTUyLCAxMTg4NTcsIDUzMDMsIDYyNzYsIDE3MDYsIDAsIDc4NzUxLCA3MTQ2LCAwLCA2NTE1MCwgCi0gICAgNDE4MTksIDAsIDczOTUxLCAxMDg0NywgNDE4MjIsIDk5ODUsIDg2MCwgMCwgMTA1MDYsIDAsIDY5NjQxLCAxMDc1MywgCi0gICAgMTA4MzAsIDAsIDYxNSwgNjQ0OTAsIDc1NzQsIDkyNjE3LCA3NzkyMiwgMCwgMTI5MDksIDQzMDE2LCA2NDU1OSwgMTI3MDI4LCAKLSAgICAwLCAwLCAwLCAyMDIwLCAwLCA0MDIyLCAxMjg3ODMsIDAsIDc3OTIzLCAwLCA0MTY5MSwgMCwgMCwgNzQzMjksIDAsIAotICAgIDY0NjIyLCA5MDcwLCAwLCA2ODQxMSwgMzkxMSwgNDI4MjksIDQzMTIyLCAxMDMzLCA3NDQ0MCwgMCwgNzAwMCwgMzkwNCwgMCwgCisgICAgNDY1NCwgMCwgOTgzNjM0LCA2ODYzOCwgNzM5OTMsIDEwNTI1LCA0NjQ5LCA2NTIwOSwgOTgzNjEyLCAwLCA0NjQ4LCAKKyAgICA0MzA4MCwgMCwgMCwgMCwgNjI0NiwgNjQ5NTAsIDc4MjgsIDQ2NTAsIDY3NzcsIDY3NzYsIDY3NzUsIDQ2NTMsIDc4MjIsIAorICAgIDc4MDA1LCA5MjM4NCwgNDMxODcsIDg2NjksIDk4MzMwNiwgNjgyMSwgNjUwOTMsIDAsIDc4ODgxLCAyNzE2LCAwLCAwLCAwLCAKKyAgICAwLCA2ODM2OSwgMTIwMDU0LCAxMTA2MCwgODU0NywgMjcxMSwgNDIxNjUsIDc4MDI3LCA3ODAyNiwgNzk5MiwgMCwgMCwgCisgICAgNDY2MiwgNzgwMzMsIDc4MDMyLCA5MTQ5LCA5MTQ2LCA1OTksIDIwODEsIDc4MDMxLCA3ODAzMCwgMTk0OTYyLCA0NjU2LCAKKyAgICAxMDEzMCwgNjg0NTAsIDc4MTEsIDQwOTk0LCAxOTQ5NjUsIDY0MTQsIDU5NjcsIDQ2NTgsIDM3MjUsIDU3MTMsIDU4MTQsIAorICAgIDQ2NjEsIDQyNDM0LCAwLCAwLCAwLCA2NDkwNCwgOTAyNiwgMTA4MzMsIDc0ODY0LCA3NTQ3LCA0ODY3LCAwLCAxMDAwOCwgCisgICAgMTAyMjIsIDMwNTQsIDE5NDk1NiwgOTc0NCwgNzg4NjAsIDc2MDUsIDQ2MjIsIDExOTY1NiwgMCwgMCwgMCwgMCwgMCwgCisgICAgOTA0NSwgNzg4ODgsIDQyMjUsIDE5OTI2LCA3ODg4NywgMTI4ODAsIDY1MzA3LCA0NjE3LCA3ODg4MywgMCwgNDE3MzIsIAorICAgIDQ2MTYsIDEwNTE4LCAxMDQyMywgMTAzNTksIDAsIDU5NTgsIDAsIDAsIDQyMTUsIDk3ODksIDkxNzk0MSwgNDMyMSwgNDYyMSwgCisgICAgMCwgNDEzMTMsIDUyMiwgNTM2OCwgMCwgNjU4MDMsIDAsIDUzNjYsIDEyMjAxLCA1MzcyLCAwLCAwLCAwLCA3NzIwLCA3MzkwLCAKKyAgICAyNjk2LCAwLCAwLCA0NjM4LCAwLCAxNzkwLCA3ODI0MiwgNTk2NSwgNjQzNjMsIDY2NTY5LCA2ODY0NiwgMTk0OTY4LCAKKyAgICA1Mzc2LCAxODM1LCA1MzM1LCAxOTQ5NjYsIDEyODA4OSwgNDYzMywgMCwgNjgxMTksIDExODAsIDQ2MzIsIDEyODA5MywgCisgICAgNTM4NywgNTMzMywgMCwgMCwgNDIwOTQsIDUzMzEsIDQ2MzQsIDExOTI4LCAwLCA1MzM4LCA0NjM3LCAxMjgxNzAsIDU5NzEsIAorICAgIDQyNDE0LCAwLCAxMjY4LCA2NTA5NywgNDIzNjEsIDAsIDAsIDczODUzLCAxNDI3LCAwLCAwLCA1OTcwLCAzNDMxLCAwLCAKKyAgICAxMDM1OCwgMTA0MjIsIDQ3NTgsIDAsIDE2MDgsIDI3MzgsIDAsIDEwNDU1LCA0NzUzLCA3NDAyNiwgMTEzNDQsIDQyMjIsIAorICAgIDYyNDAsIDUyMzEsIDc0Mzg0LCAwLCA2ODM3NywgNjI0OCwgMCwgMCwgMCwgNDIzMTgsIDkyNTgyLCA1MjI5LCA0NzU3LCAwLCAKKyAgICAwLCAyNzI4LCA0NzUyLCA2NDU2MywgNjUyMzUsIDUyMzQsIDAsIDEyODE0NSwgMCwgMTA3MTMsIDcxNjYsIDAsIDI2MjIsIAorICAgIDc0NjAsIDEyNzMwMiwgMCwgMCwgODk1NCwgNzQ3NjAsIDY1MTg5LCAyNjMyLCA5MjIzMCwgMTAxMDgsIDEwMTEsIDU1NzQsIAorICAgIDE4NTMsIDI3MDksIDY1MTM5LCA1NTc3LCAwLCAwLCAxMTg4NzEsIDY4NjQxLCA4OTY1LCA3NjM1LCA0MjE3NywgNTMxNiwgMCwgCisgICAgNTMxNCwgNjQ1MSwgNTU3MiwgMCwgNTMxMiwgMCwgNTUyNSwgNTMzMCwgNTMxOSwgMCwgOTgzNjA3LCAxOTQ5MDcsIDQ0MDAzLCAKKyAgICAwLCAwLCAwLCAxMjA0OTgsIDEyNzg1MSwgMTk1MDA5LCA5ODM2MDAsIDc0MDIyLCAwLCA2NDYwOSwgNjg2NDMsIDEyMDYzNCwgCisgICAgMCwgNTcyMSwgMCwgNTUxOSwgODYzMiwgNjY0NjUsIDExMjY3LCA3Mzk2MSwgOTIyNzgsIDU3MjAsIDAsIDE2OTIsIDQyMTksIAorICAgIDQ2MTAsIDg2OTYsIDQzMDUsIDAsIDQ2MDksIDQzNDc4LCA0NjE0LCA1NDEsIDAsIDUyODcsIDUzMDksIDUyODUsIDY4Mzg5LCAKKyAgICA1OTYxLCA0NjQ3LCA1NiwgNDIxNiwgMTA1NzcsIDQxMzgxLCA2MDEsIDQ2MTMsIDAsIDAsIDkyMjc2LCA0NjA4LCA2NDI2MCwgCisgICAgNDExMjQsIDUxOTAsIDY3NjI4LCAwLCA2ODE0NSwgNzA4NiwgMCwgMTE5MjQzLCA2NzYyMCwgMCwgMjczNCwgMTEwNzQsIDAsIAorICAgIDY3NjI3LCA0MzU5MywgMCwgNjc2MjUsIDU5NjAsIDAsIDg5OTIsIDQyNTkzLCAxMjgyNjAsIDE3ODIsIDY3NjIyLCA2ODExNCwgCisgICAgMTE5OTM5LCAwLCA2ODE4MCwgNTUwMSwgMTE5OTUyLCA0MjUwOCwgNzQ0MiwgNDM2NjUsIDM1OSwgNDEyNTMsIDY4MzkyLCAKKyAgICA2MjM5LCAxMTk5NTYsIDQxMjU2LCAwLCA2ODEzNCwgMCwgNzQyMDksIDkxNzU1MCwgOTM0NiwgNjk2NjAsIDQxMjU0LCAKKyAgICAxMjgwNDcsIDQzMjkxLCAzNzY3LCA1NzM3LCAwLCA0ODY1LCAwLCA1NzQwLCA5MTc5OTcsIDU3MzYsIDQzNjgsIDY0NzI0LCAKKyAgICA3MTkzLCA2ODEzNywgMCwgNTczOSwgNDEwMjQsIDQ4NjYsIDAsIDczOTA0LCAwLCA0ODY5LCAxMjA1NjMsIDAsIDQyMjMsIAorICAgIDEyODIwMSwgNjY1MCwgMCwgMCwgMCwgMTI3ODkwLCA0ODcwLCAxMjA0NDUsIDY4NjYxLCA2NzE2LCA3ODE3NiwgNjg2NjcsIAorICAgIDY4MzgyLCA2ODY3NiwgMTI3OTI1LCAxMDEyMiwgNDg2NCwgNjY1NjgsIDQxNDQsIDc5MzcsIDAsIDYyNDUsIDY4NjUyLCAKKyAgICAyNzMyLCA0MjczNCwgNzQ1LCAwLCAxOTUwOTcsIDkyMTk1LCA0Nzc3LCA3ODIxLCAwLCA2ODYzMSwgNDI3NzUsIDAsIAorICAgIDE5NDk1NCwgMCwgMzA5NywgMCwgNTk2NiwgMCwgNDc3OCwgMCwgMTA4NjMsIDAsIDQ3ODEsIDAsIDY0NDA3LCAwLCAwLCAKKyAgICA4NTc3LCAxMjg1NjIsIDY4MTk2LCA0MzI4NSwgMTAyMTYsIDQ3ODIsIDAsIDAsIDEyMDc1NywgNjg2MTgsIDEyMzI1LCAKKyAgICA0MzA1NiwgODcxNywgMCwgMCwgNDc3NiwgNzM4MTgsIDExNDkyLCA4NzAwLCAwLCAxMzE3NiwgNjgzNjMsIDEwNDI2LCAwLCAKKyAgICA5MTc1OTksIDEwMzYyLCAxOTQ3MDYsIDE3MTUsIDQ4NDksIDgyNDIsIDk1NjEsIDczOTIyLCA0MzI3OCwgNDI2MzUsIDAsIDAsIAorICAgIDU5NjMsIDkxNzkyNiwgMCwgMCwgNDg1MCwgMCwgMTYwNywgNDY2LCA0ODUzLCAxMTg5OTUsIDQ4NTQsIDEyNzkxOCwgNTE2NCwgCisgICAgOTgzNjA1LCAxMzUwLCA1MTI0LCA2NDQyMCwgMTk5MywgNTM2MiwgODQ3MSwgMjcwOCwgOTI0NzEsIDEyNDQ1LCAzNzg1LCAKKyAgICAyMzQsIDMxOTksIDAsIDQxMjY4LCA0ODQ4LCAyNTMwLCA5MTc5MDksIDIwNjgsIDE5NjQsIDAsIDczNzYyLCAxMDQ1OCwgMCwgCisgICAgODU3NiwgNzg1NDMsIDAsIDI3MDQsIDQ3OTQsIDAsIDY4MjExLCA4MzIyLCA0Nzk3LCA1NzUzLCAwLCAyNjk0LCA0NzkyLCAwLCAKKyAgICAyNDM5LCA2NTEwNCwgNjk4MDQsIDAsIDMwMywgMCwgOTI2MjIsIDAsIDI0MzcsIDAsIDQyMjEsIDQ4NDQsIDExODg2OSwgMCwgCisgICAgMCwgMCwgMCwgMCwgNDMyOTIsIDAsIDI0NDEsIDEwNzM5LCA2NTA5MCwgMCwgMTE5MzI3LCAwLCAyNDUxLCAyNzE0LCAKKyAgICAxMTkzMjYsIDAsIDQzMzc5LCA0OTM3LCA0MzM3NiwgNzUzLCA1ODQ5LCAxMDU5NywgNDMwODksIDExNzIyLCA5MjQ4LCAKKyAgICA5MjU1NSwgNDI4NzksIDExNzI1LCAwLCAwLCAyNzI2LCAzMTA3LCA3Mzk1OCwgNDk0MSwgNjQ5MzcsIDExOTIzMywgOTE0MCwgCisgICAgMTQwOCwgNTI2MSwgNDYwNywgMCwgMTgxLCAwLCA0OTQyLCA5NTM5LCA0OTM4LCAwLCA2NTIwMSwgNTI1OSwgOTM2OSwgCisgICAgNjQxODUsIDQxNDIsIDUyNTcsIDk4MzM0NSwgMCwgNDk2NCwgNTI2NCwgNjQxNzgsIDY0MTc3LCAxMjk3OSwgNDE0MTEsIAorICAgIDY0MTgyLCA2NDE4MSwgNjQxODAsIDY0MTc5LCA5NDgyLCA0ODczLCA0MTIzMSwgMTgyMiwgNDI1MjYsIDEyODU4MSwgCisgICAgMTI3NTgsIDM4NjUsIDAsIDAsIDEwNTAwLCAwLCAwLCA3ODAyOCwgMCwgOTgzMCwgNDM2NDIsIDM4OSwgMTA4OTMsIDc1MjEsIAorICAgIDEyNzg3OSwgNDg3MiwgNTQ2MywgMCwgMzEyNSwgOTU2NywgMCwgNDg3OCwgNTQ1OSwgNDYwNCwgOTE3OTMxLCA5NTU3LCAKKyAgICA1NDY1LCA2ODYxNywgMCwgMTE0OTQsIDAsIDk1NjMsIDEwODY1LCA3NDU3MCwgNDMyNzksIDY0MTg2LCAwLCA3ODcxNCwgCisgICAgNjQxOTEsIDY0MTkwLCA4ODk4LCA2NDE4OCwgMCwgNDEwMzAsIDc4ODM2LCAwLCA5MTc4MzUsIDc4ODIwLCA5MTc4MzQsIDAsIAorICAgIDc4ODA1LCA0MTAzMSwgNzg4MDEsIDExOTYwLCA2NzQ1LCAzMDgyLCAwLCA3ODUzOSwgNzM5MTksIDEwNTczLCA0MTc0NCwgCisgICAgNzA3OSwgNTg1NiwgMTI3MDQzLCA1MTYzLCA3ODgwOSwgMTI4MTYyLCAxODE3LCA2NjcyNCwgNzg1MzgsIDAsIDEwNTY0LCAKKyAgICA3NzYzLCAxMzA3NywgNDE4MTMsIDQ0MDAsIDQxNzQ1LCA2NDIwNywgMTAyNzUsIDg5MjUsIDEwMzcxLCAxMDMwNywgNDE4MTQsIAorICAgIDQyNDgsIDAsIDAsIDQ1NDEsIDYyOTksIDY0MjA0LCA2NDIwMywgNjQyMDEsIDY0MjAwLCA2NDE5OSwgNjQxOTgsIDAsIAorICAgIDQyMTU2LCA3ODY4OCwgMCwgNjQxOTMsIDY0MTkyLCA2NTIyMywgOTk0MywgNjQxOTcsIDY0MTk2LCA2NDE5NSwgNjQxOTQsIAorICAgIDEzMjgyLCA2NDE3NSwgNjQxNzQsIDY0MTczLCA3ODE4OSwgODQ2LCA3ODE4NiwgOTk2NSwgMCwgMCwgMCwgMCwgMjU0MywgCisgICAgMTIxNjMsIDMxMDgsIDk3NDUsIDY0MTY3LCA2NDE2NiwgNjQxNjUsIDY0MTY0LCAyMTEwLCA5MjE3NiwgNjQxNjksIDY0MTY4LCAKKyAgICA2NDk0OSwgMTA5NzIsIDEwMjUxLCAxMDI0NywgNDI3NjgsIDcxNSwgNjQxNjEsIDQzMjk5LCA5NDUzLCA1MzQ4LCAxMDk0MywgCisgICAgMTIwMzc4LCAwLCAxMTM1MiwgNTUwLCA5OTEwLCAwLCAwLCA2NjU3OSwgMTE1NTEsIDAsIDE5NTA4MCwgOTUwNCwgNzE4NywgCisgICAgMCwgMTAzNzMsIDAsIDEyMDc5MSwgMTAyNjEsIDEwMjUzLCA2NDA0LCAxMDI3NywgNzgxODMsIDExOTg0LCAxNTUyLCAKKyAgICA2NTIyMiwgNjk5OCwgNzgxODAsIDAsIDMxMjgsIDQ3ODksIDUwNjcsIDUwNjYsIDExODg0OSwgNDc4NCwgMCwgODgyNywgCisgICAgMTE0NiwgNTA2NSwgNzgxOTYsIDc4MTkyLCA2ODEzNiwgNzgxOTAsIDQzNDEyLCA1MDY0LCAyNDMxLCAwLCA5NDUwLCAxODA5LCAKKyAgICAwLCA3ODIwMCwgNzgyMDEsIDUwNjIsIDEyNjQsIDY0ODE3LCAxMzI1NCwgMTE2OTcsIDAsIDk3ODUsIDY0NzE2LCAwLCAKKyAgICAzOTMzLCA3NDU1OSwgNDc0MCwgNzk1NCwgMCwgMCwgNDI2MDksIDAsIDc0MTc1LCAwLCAxMjcwMTYsIDAsIDk4MzYwOCwgCisgICAgNDIxMzAsIDAsIDUxNTEsIDkxNzgyOSwgOTE3ODIzLCAwLCAwLCAwLCA3NjIwLCAzODAwLCA2NTEyMiwgMCwgMCwgODM1NSwgCisgICAgNzg1NCwgMCwgOTU0LCA2NDkyNywgNDE4NSwgNDEwNDUsIDEyNzE0MSwgNDE0MzgsIDQxNDM5LCA2ODY2NiwgMTA3MTEsIAorICAgIDQ1OTMsIDEyNzc0NSwgMTIwNTg0LCAwLCA2NDc3NCwgODA1MywgMTA1MzIsIDY2NzI3LCAwLCAwLCAwLCA2NDc1OSwgNjM4MSwgCisgICAgNTE2NiwgOTg4OCwgMTI3ODAwLCA1MTQ4LCA0MjgzNCwgMCwgNzgyMDUsIDc4MjA2LCA0Mzc4NywgNzgyMDQsIDY0MTMxLCAKKyAgICAzMTE5LCA5MTc4MTQsIDAsIDMwNjAsIDY0MTM1LCA5OTg2LCAwLCA3Nzg3NiwgNjM2LCAxMTY5OCwgMCwgMCwgOTkxNiwgCisgICAgMTE3MDEsIDc4MzYsIDQyNzQxLCA2NDEzNywgODMyMCwgNzg2NDAsIDg4NjMsIDkyNDMxLCAxMTk5NjAsIDE0NzcsIDQzMjg5LCAKKyAgICAwLCA3NDM1OCwgODYxOCwgMCwgOTkwOCwgOTgzNzEzLCAwLCAwLCAzOTM3LCAxMjMxMiwgMCwgMCwgMCwgNjQ3ODEsIDkxMiwgCisgICAgNjM0OSwgNDUzNiwgMTE5OTYzLCA3NDUzMiwgMCwgNjI0NCwgMCwgMTk0NTgwLCAzOTM1LCAxMjA2NjUsIDAsIDAsIDExOTUwLCAKKyAgICA1MzkyLCA0MjI0OCwgNjUxMjksIDY4NjU2LCA1Mzk3LCAwLCAxMjA0NiwgMTI1OTksIDAsIDAsIDUzOTUsIDAsIDUzOTMsIAorICAgIDM1NCwgNjg2MTUsIDExOTk0OCwgNzg1MDMsIDAsIDAsIDQyMDM5LCAwLCAwLCA2NDE0MiwgNjI2LCAwLCA1ODk1LCAwLCAwLCAKKyAgICA1NzgwLCAwLCAwLCAxMjg4NzQsIDAsIDAsIDQzMjk3LCAwLCA0MzExLCA0NjQ0LCA4ODE4LCAwLCAxMjgxODYsIDAsIDcxNDUsIAorICAgIDM5MTgsIDY2NDUyLCAzNzk3LCAxNjQ0LCA5MjM0NiwgOTY1OCwgNDE0MCwgMTEzODUsIDY1OTQ3LCA2NDU1LCA5MDMwLCAKKyAgICA4MTMsIDExOTk0NSwgNjgxMzEsIDQxNDYsIDExOTk1NywgNTM2MCwgMjQ2NiwgMCwgNjc2NjksIDExOTk0MiwgNjI0OSwgCisgICAgNDIxMTcsIDkyMjg3LCAxMjgyMjQsIDAsIDAsIDc0MDQ2LCAxMjA1ODMsIDQ5MTEsIDk4OCwgOTE3ODA3LCAwLCAwLCAKKyAgICA0MzA2MSwgNzA1NCwgNjQxNDcsIDAsIDY0OTIwLCA2ODE5NSwgNjY5OCwgMTE4OTMzLCA5MjUwNiwgMCwgMTIwMDA2LCAKKyAgICAxMTk4MSwgMTIyMDIsIDAsIDExMDMyLCA2NzY1NCwgNjA5MywgMTE2MDgsIDk3NSwgNjg2NjIsIDY1ODQzLCAxNzAsIDAsIDAsIAorICAgIDQxNjksIDAsIDQxODU5LCA2MDU4LCAxMjA0MDEsIDEzMjAzLCAxMjA2NTcsIDAsIDAsIDY4NjU3LCA5ODE4LCAxMDE3OCwgCisgICAgMTAzMjQsIDQyMTA2LCA1ODk4LCA3NDU0MCwgNDczOCwgNDE4NTYsIDcwNjIsIDkxNzg2NSwgNDczNywgMTE3NzksIDQ3NDIsIAorICAgIDEyMDU2NCwgOTIzOTEsIDczNzM2LCAwLCA5ODI1LCA2NDQ4LCA2NzE1LCAxMjcwMDgsIDQ4MzEsIDAsIDkyNTI1LCAwLCAKKyAgICA1MzAwLCA0NzQxLCA0MjEwOCwgMCwgNjQxNTksIDQ3MzYsIDY0MTQ4LCAwLCA4NDksIDkyMTkxLCA3ODQ5MSwgNDMyODgsIDAsIAorICAgIDY2NjIwLCAwLCAxMjczMzEsIDY1NTQ5LCA5NDk2LCA2NDU5OCwgMTE4ODY2LCAwLCA3ODc2LCA2ODEzMiwgOTE3ODcyLCAKKyAgICAzOTI4LCA5MTc4NzAsIDQzMzc4LCAxMDcwNiwgNzE5OCwgMCwgNDg0MiwgMTIwNTMsIDEyODEyOSwgMCwgNDg0MSwgMCwgCisgICAgNDE3MSwgMTIwMDgsIDYyNTEsIDM5MjMsIDE0OTAsIDAsIDExOTU5MSwgOTgzNDc0LCA0MDk3MiwgNTI0NSwgMCwgMTAxMTQsIAorICAgIDQyMDAxLCA0MTg4OCwgNDg0NSwgODMzMiwgNDA5NzQsIDY0MzQ3LCA0ODQwLCA5MDc3LCA3ODM0NiwgMTc0NywgOTE3ODQ5LCAKKyAgICA0ODI1LCA2OTI0MCwgOTE3ODUyLCA2ODY1NSwgMCwgMCwgMCwgMCwgNjg2MjgsIDAsIDk4NTAsIDExODkzNywgMzY3LCAKKyAgICAxNDcyLCA5MTc4NTksIDY2ODcsIDEyNzQsIDAsIDU5MDUsIDEyMzM5LCA4OTE5LCA3Mzk1MywgMTA5MDcsIDY1MjYxLCAKKyAgICAxMTAyMywgMTE5NTU5LCA0ODMwLCA5MTM0LCA3ODY2NiwgNjQxMjYsIDQzMDExLCAwLCAwLCA2NDEwMSwgMCwgMCwgNDgyNCwgCisgICAgMTA2MTQsIDEyMDM5MCwgMCwgMTg4OCwgMTk2MCwgNzg2MSwgOTE3ODU2LCA3ODUyNCwgNDE4MzYsIDQzMDEyLCA2MDUyLCAKKyAgICA2MDY0LCA1NCwgNDMwMDksIDEyMjE0LCAwLCA2MjExLCAwLCAzNTgsIDQxOTk3LCA0MTgzMywgMTE0NDIsIDEwNzU4LCAKKyAgICA2NTc3NCwgMCwgMTIwMzg0LCA2NDExNSwgOTIyMjEsIDAsIDAsIDAsIDExOTA1MywgMCwgMTI3NjUsIDY0MTE4LCAxMjY5OTgsIAorICAgIDEyOTYyLCAwLCAwLCA0MDE3LCAxMjgyNywgNTI0MSwgMTIwMzkyLCAwLCA0MTExOCwgMzkyNCwgMCwgMTEzNjYsIDkxNzg0MywgCisgICAgMCwgMCwgOTE3ODQ2LCA0MTExNiwgOTE3ODQ0LCA5MTc1NjQsIDAsIDExMzYzLCAxMjA1NywgMTE5MTcsIDE1NjcsIDc0MDAwLCAKKyAgICA0NzIxLCA5ODMzMDUsIDY2MjAyLCA4OTU3LCA0MTM5LCAwLCAwLCAwLCAwLCAwLCAxMjc0MCwgMTI4NzAyLCA0NzIyLCAKKyAgICA2ODE2LCAxMjc3OTMsIDEyNzU5LCA0NzI1LCAwLCA0NzI2LCAwLCAwLCAwLCA5MTc5MDQsIDkxNzkwNSwgMCwgMTI3NTUsIAorICAgIDEyNzYyLCA0MDE1LCAwLCA4MDUyLCA0NzYsIDAsIDAsIDEyODI5NCwgNjQyMTIsIDQxMDIwLCAxMzgyLCA2NDIwOSwgCisgICAgNjQyMTYsIDY0MjE1LCA2NDIxNCwgMTY1NiwgNDE4MzEsIDAsIDAsIDQxODQzLCA4NzIwLCAzOTA4LCAxNDUyLCAxMzExMSwgCisgICAgMCwgNjQwNjcsIDEyNzMyOCwgODU1MiwgNjQxMTMsIDQxODQ1LCAzODQ5LCA3ODczMiwgNjYyMzIsIDk3NzgsIDEyMDA2NiwgCisgICAgNTg5MSwgNzA2NCwgNTUsIDk5NDgsIDExOTA4NSwgMCwgMCwgNzkzNSwgMjQyMCwgMCwgMTExNCwgOTI1OTksIDY3NTg1LCAKKyAgICA3ODY3NSwgMTIwMDUzLCA5MjM1MCwgMTIwMDUxLCAzOTM4LCAxMjAwNTcsIDY1NDE3LCA2NDcxNywgMTIwMDYwLCAxMjAwNjEsIAorICAgIDY1NDE1LCAxMjAwNTksIDYyOTIsIDY1MzAzLCA3OTU1LCA2NDUyLCA0NzEzLCAxMjgxOTYsIDY2MjQ5LCA5MTc4ODUsIAorICAgIDkxNzg5MCwgOTE3ODkxLCA2NTE1MiwgNzE5LCAxMjAwNDQsIDc4NjIzLCAxMjAwNDIsIDY3MTMsIDQ1MzIsIDY1NDEyLCAKKyAgICA2OTgyMiwgMTA4NjgsIDQ3MTcsIDIzNDksIDU5MDIsIDY2NDUwLCA0NzEyLCA5MTc5MDIsIDkxNzg5OSwgOTE3OTAwLCAKKyAgICA2NTQxNiwgODE1NSwgNDcxOCwgMzk0MiwgNDcxNCwgOTYyNSwgMCwgNjM4MywgMTk0NzQ0LCAxMjAwNiwgMTI4NTY1LCAwLCAKKyAgICAwLCAwLCAwLCA2NTQxNCwgNjQ1NCwgMTIyOSwgMCwgNjY0MzcsIDY2MDI1LCA3ODY5OSwgMCwgNDI1MDAsIDEyMDUwOCwgCisgICAgNDgwOSwgOTYyMywgOTE3ODc0LCA3ODY5NCwgOTE3ODgwLCA5MTc4NzcsIDkxNzg3OCwgNjU0MDUsIDY4MTU5LCAxMjg5MywgCisgICAgOTE3ODgyLCA1MzY1LCA0NTQ1LCA4OTAxLCA5MjQyMSwgMTE5NTU1LCA0ODEzLCAxMjgyNjIsIDAsIDU5MjUsIDQ4MDgsIAorICAgIDY0MzMwLCAwLCA2NTQ3NSwgMTE4OTQwLCAxOTUwMjgsIDQ4MTQsIDAsIDQ4MTAsIDAsIDAsIDY0OTI4LCAxMDU0MywgMCwgCisgICAgMzUyMiwgMCwgNDE0LCA2NTQwNCwgMCwgMTk1MDI3LCA2NDU2LCA3MzgyMCwgMCwgNjY5MSwgNDIxOTMsIDkyMjI1LCAKKyAgICAxMjgxNzEsIDAsIDc0NDk1LCAwLCAwLCAwLCAxMTg4MjAsIDk3NTEsIDY1NDA3LCAxMjgwODUsIDExNzcwLCAzOTE5LCAwLCAKKyAgICAwLCA2NTA2MSwgMCwgMCwgMCwgMTIyMzUsIDAsIDAsIDEyNzIzMywgNjQwOTIsIDAsIDY0MDgwLCAwLCA2NDA5MCwgMCwgCisgICAgOTgzNTk5LCAxMDE2MiwgMTAzMTAsIDAsIDg0NTQsIDEyNzg4OCwgNDIwMzgsIDM4NywgNDEzNjMsIDEyNzM3LCAwLCA0NzgwLCAKKyAgICA0MzM2OCwgMCwgNjQzMTAsIDY0NjIxLCA2NzMyLCAwLCAwLCAwLCAwLCAwLCA4ODk2LCAwLCAzNzUsIDY5NzYsIDY2NTgyLCAKKyAgICAxMTkwMDUsIDk4MzYwOSwgMCwgMCwgMTE5MjAyLCAxMTkyMDMsIDEyNTI2LCA0MzEyMCwgMjMxNSwgMCwgMTkzOCwgCisgICAgMTE5MTk3LCAwLCA0NTI5LCAxMTkyMDAsIDExOTIwMSwgMTE5MTk4LCAxMTkxOTksIDY5NjkyLCAwLCA2OTY5OCwgMTMxNTAsIAorICAgIDY0NDkyLCAwLCAwLCAwLCAxMjkwMiwgMCwgNDI4OTEsIDY2MzI3LCA3NDI5OCwgMCwgMTA3OTksIDY5NjkwLCAyNTg3LCAKKyAgICA2NjM3MiwgMCwgNDE5MywgOTIyNTAsIDQyNDEsIDAsIDc5OTgsIDAsIDAsIDAsIDAsIDIzMTYsIDExODgyMSwgMCwgMCwgMCwgCisgICAgNjQyOTcsIDc0Nzk5LCA5MjQ0MiwgNzQxNDAsIDAsIDUzNzMsIDAsIDk4MzYyMSwgMzc2MiwgMTAwMTUsIDEyNzMzNSwgCisgICAgMTE5MjMyLCAwLCA0MTU5MCwgMCwgOTIzNzgsIDM3ODAsIDc0ODUsIDU3NzksIDAsIDQyMDM3LCAwLCAzOTA2LCAxMjM0OSwgCisgICAgMCwgODMyNiwgMCwgNjU0OTgsIDM3NjMsIDY5ODMsIDU2MTgsIDAsIDM3NzksIDAsIDQzNjEzLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAyODAsIDc0NTU4LCAxMjczMzIsIDY4MTM4LCAxMzA3MiwgMTg5NCwgMCwgMCwgNjU0NzgsIDQzMzEwLCA3MjMxLCAwLCAKKyAgICAxMTc3MywgMCwgMCwgMCwgMCwgMjU1MSwgMCwgNjQ1MywgMTAyMDAsIDYyMzUsIDk4MzQ4NywgMTE5MjM3LCAwLCAxMjg4MDUsIAorICAgIDQ0NzAsIDExOTYxMywgOTE3NTU3LCA3NzgwLCA1MzY5LCAxMTg5NTgsIDUyNDksIDAsIDUzNjcsIDg3NTYsIDEyNzE0MywgMCwgCisgICAgNTM3NywgMTIwNTg1LCA2ODE0MywgMTY4OCwgNzgyNDUsIDAsIDY5Njg1LCA5ODM0OTEsIDAsIDAsIDQ0MDIwLCA2ODA4LCAKKyAgICA0MTMxOSwgMTMwMCwgMTA2NTAsIDQxNjkyLCA2NDUwNSwgNDY2OCwgMCwgMTE5NjI0LCAxNDY1LCAxMDg1MCwgMzk0MywgMCwgCisgICAgNDEyMDUsIDQxMzE1LCAxMTg5NjEsIDAsIDAsIDUzNTIsIDAsIDAsIDg4MzksIDQxMzE0LCA3Mzg0LCA3Nzg1LCA0MTIwNCwgCisgICAgMTI3MzIyLCA0MTIwOSwgNjk2MzcsIDkyMjQxLCA0MzYwNywgMCwgMCwgNTQyMCwgMzg5NywgMTAxMzQsIDAsIDc0NDE3LCAKKyAgICA0MDE4LCA3MTUwLCA2ODEyNywgMCwgMCwgMCwgMCwgMTI3NTI2LCAyNTYxLCA2ODYyMSwgMzU0MiwgNzE0OCwgMTIwNzYsIAorICAgIDc5NTEsIDY4MTUyLCAxMTg4NTcsIDUzMDMsIDYyNzYsIDE3MDYsIDAsIDc4NzUxLCA3MTQ2LCAwLCA2NTE1MCwgNDE4MTksIAorICAgIDAsIDczOTUxLCAxMDg0NywgNDE4MjIsIDk5ODUsIDg2MCwgMCwgMTA1MDYsIDAsIDY5NjQxLCAxMDc1MywgMTA4MzAsIDAsIAorICAgIDYxNSwgNjQ0OTAsIDc1NzQsIDkyNjE3LCA3NzkyMiwgMCwgMTI5MDksIDQzMDE2LCA2NDU1OSwgMTI3MDI4LCAwLCAwLCAwLCAKKyAgICAyMDIwLCAwLCA0MDIyLCAxMjg3ODMsIDAsIDc3OTIzLCA5ODM0NDYsIDQxNjkxLCAwLCAwLCA3NDMyOSwgMCwgNjQ2MjIsIAorICAgIDkwNzAsIDAsIDY4NDExLCAzOTExLCA0MjgyOSwgNDMxMjIsIDEwMzMsIDc0NDQwLCAwLCA3MDAwLCAzOTA0LCAwLCAKICAgICAxMjgxOTgsIDAsIDExODkzMSwgMTE5NjMwLCAxMzEyMywgMTA4NDYsIDM0NTAsIDEyNzM2MCwgNzM5NywgMTE4ODA3LCAwLCAKICAgICA0Mjc3OCwgMTAwMDAsIDQxMDg4LCA0NDksIDAsIDM3NzcsIDY4NDU4LCAwLCA5NjM2LCAwLCAxMDczOCwgNjk2MzQsIDkzNjcsIAogICAgIDU5MywgNDEwODUsIDM5OTksIDY1MjI2LCA0MTcxMywgMTI3NjQsIDAsIDY0NDA5LCAzNTk2LCAwLCAwLCA5NzYzLCAKQEAgLTE4NTc0LDI0MCArMTg4MTcsNjg2IEBACiAgICAgNjg2NzUsIDEyODA1NCwgMTUxMSwgOTMyNCwgNzgyMTEsIDEwNTE5LCA2NjMzMSwgMzQ1NCwgMTk5MzAsIDAsIDQxMDE5LCAwLCAKICAgICAwLCA2NTI5MiwgNjgyMiwgMTI4NjIsIDAsIDAsIDQyMTQzLCA0MTgyOCwgNzgyMDcsIDY1NTMxLCA3ODIwOCwgMTE4ODc5LCAKICAgICA1NTIyMywgMCwgMCwgNDE4MjYsIDg4NjUsIDY0MDIsIDAsIDEzMjc5LCA3OTE3LCAxMjAzNDAsIDAsIDc3MzMsIDAsIDQ5OTgsIAotICAgIDAsIDkyMzMyLCA0MTk1MCwgMCwgNDI2OCwgMCwgMCwgMCwgNDAxMywgMCwgMTA4ODEsIDAsIDAsIDAsIDc0Nzg4LCAyMDE0LCAKLSAgICAwLCAwLCA5NzY1LCAwLCAwLCAwLCAxOTUwNTksIDc4MzU3LCA2NTI4MSwgMTI3ODI1LCAxMDk0OSwgMCwgMCwgMCwgMjAxNSwgCi0gICAgMCwgMCwgMCwgNjYzMTgsIDQzMjMzLCAwLCA0MjUxNywgMCwgMCwgMCwgMTI2OTgsIDgwOTQsIDEwMTM1LCA2NTkwOSwgCi0gICAgNjQ3NCwgNzk0LCAwLCAxMjY1NiwgMTI4MTIyLCAxMTkzNTMsIDEyODI3MCwgMTY2NSwgMCwgNDgzMywgMCwgMTE5MzUxLCAKLSAgICAxMjczNjcsIDAsIDE4OSwgMTI2MTEsIDAsIDAsIDI4NTksIDQ4MzgsIDAsIDQ4MzQsIDY1MDc4LCAwLCAwLCA0ODM3LCAKLSAgICAxMjcwNjEsIDc3MCwgMCwgODExLCAwLCA0MTA0MiwgOTE3NTUxLCA0MTMxOCwgNjQ0MjcsIDAsIDAsIDc4ODQ4LCAzODk1LCAKLSAgICAwLCA3NDM0MSwgMzk3NiwgMCwgNDI4NTksIDEwMTkzLCAzMTE2LCA3NzQ3LCAwLCAwLCAwLCAwLCAwLCA0MzY4NiwgNzg4NDYsIAotICAgIDQxODc3LCAwLCAyODcxLCA2NDYxNCwgMTI4Nzg1LCA5OTksIDAsIDYzNDUsIDQxODc2LCAyNjYzLCAyMDE3LCAwLCAwLCAKLSAgICAxMTA0MCwgMTAxNTAsIDAsIDY0MzA4LCAxNTIyLCA1OTcsIDQ3NzUsIDEyNTU1LCAxMjU3MSwgMTI1NTAsIDEyNTgzLCAKKyAgICA5ODM2MzEsIDkyMzMyLCA0MTk1MCwgMCwgNDI2OCwgMCwgMCwgMCwgNDAxMywgMCwgMTA4ODEsIDAsIDAsIDAsIDc0Nzg4LCAKKyAgICAyMDE0LCAwLCAwLCA5NzY1LCAwLCAwLCAwLCAxOTUwNTksIDc4MzU3LCA2NTI4MSwgMTI3ODI1LCAxMDk0OSwgMCwgMCwgMCwgCisgICAgMjAxNSwgMCwgMCwgMCwgNjYzMTgsIDQzMjMzLCAwLCA0MjUxNywgMCwgMCwgMCwgMTI2OTgsIDgwOTQsIDEwMTM1LCAKKyAgICA2NTkwOSwgNjQ3NCwgNzk0LCAwLCAxMjY1NiwgMTI4MTIyLCAxMTkzNTMsIDEyODI3MCwgMTY2NSwgMCwgNDgzMywgMCwgCisgICAgMTE5MzUxLCAxMjczNjcsIDAsIDE4OSwgMTI2MTEsIDAsIDAsIDI4NTksIDQ4MzgsIDAsIDQ4MzQsIDY1MDc4LCAwLCAwLCAKKyAgICA0ODM3LCAxMjcwNjEsIDc3MCwgMCwgODExLCAwLCA0MTA0MiwgOTE3NTUxLCA0MTMxOCwgNjQ0MjcsIDAsIDAsIDc4ODQ4LCAKKyAgICAzODk1LCAwLCA3NDM0MSwgMzk3NiwgMCwgNDI4NTksIDEwMTkzLCAzMTE2LCA3NzQ3LCAwLCAwLCAwLCAwLCAwLCA0MzY4NiwgCisgICAgNzg4NDYsIDQxODc3LCAwLCAyODcxLCA2NDYxNCwgMTI4Nzg1LCA5OTksIDAsIDYzNDUsIDQxODc2LCAyNjYzLCAyMDE3LCAwLCAKKyAgICAwLCAxMTA0MCwgMTAxNTAsIDAsIDY0MzA4LCAxNTIyLCA1OTcsIDQ3NzUsIDEyNTU1LCAxMjU3MSwgMTI1NTAsIDEyNTgzLCAKICAgICAxMjU2MCwgMjAxOSwgMTI1NTYsIDEyNTg0LCAzMDkyLCAwLCAxMjU2MiwgNDc4MywgMTI1NjYsIDEyNTY5LCAxMjU1NCwgMCwgCiAgICAgMTA4MTIsIDc4ODUxLCAwLCAwLCAzMDc4LCAxNDAyLCAwLCAxMjgyNzUsIDAsIDAsIDExOTI0OCwgMzk0LCAzMDg4LCAwLCAKICAgICA5MjE3MiwgMCwgMzk5MSwgNjQzOTEsIDAsIDAsIDQyNCwgNjYzMjgsIDE5OTksIDY5NjU5LCA3MzkxNCwgMCwgMCwgMCwgMCwgCi0gICAgNDIyMzEsIDgyNDYsIDAsIDAsIDAsIDQxODQwLCAwLCAyMzc3LCAxMjk4LCA2NDAxMSwgMTI1NzIsIDExMzE4LCAxMjU1NywgCi0gICAgMTI1NTksIDEyNTcwLCA4NDg4LCAxMDAzLCAyMzczLCA5NDQ2LCA3NDgxLCA5NDQ4LCA0OCwgMCwgOTQ4MCwgNDgxLCAwLCAKLSAgICA5NDM4LCA5NDM5LCA5NDQwLCA5NDQxLCA4NDY1LCA5NDQzLCA5NDQ0LCA5NDQ1LCA5NDMwLCA5NDMxLCA5NDMyLCA5NDMzLCAKLSAgICA5NDM0LCA5NDM1LCAzOTg0LCA5NDM3LCAwLCAwLCA5NDI0LCA5NDI1LCA5NDI2LCA5NDI3LCA5NDI4LCA5NDI5LCA2NDc1OCwgCi0gICAgMjM2MiwgOTY1NSwgMCwgMjAwNCwgOTA5NiwgOTc4MiwgMTI4ODQ4LCA5MTcyLCAxMjg1NDUsIDE5OTY1LCAwLCA1OTU1LCAKLSAgICA2NzY2NiwgMTEwOCwgMCwgNzQ3NzMsIDAsIDAsIDY0NzgyLCAzOTI2LCA5MjQ0OCwgNjUyMTAsIDg3OTgsIDAsIDkyMTY1LCAKLSAgICAxMzkyLCAwLCAwLCAxMjczNjQsIDEwNjA2LCA4MDY1LCAxMTg4MDUsIDEwMzUzLCAxMDQxNywgMCwgMCwgNjQ1MjQsIAotICAgIDkyNDE4LCA0MDE5LCAwLCAwLCA0MzI4MCwgODIxOSwgNjg0MDIsIDE4MTIsIDAsIDAsIDAsIDAsIDQyNDEwLCA3NDQ0OCwgCi0gICAgMTE5MTMyLCA2MDU0LCAxMDY5NywgMzE2OSwgNDIyOTcsIDQyMzIyLCAxMDY0MiwgMzkwOSwgOTk1MCwgMCwgMTI4MTM5LCAwLCAKLSAgICA2ODY3OCwgMCwgMCwgMTA0OSwgMCwgNjU3MDcsIDIzMDQsIDQxODA2LCA5MjMyNiwgNDIzMzYsIDM5MjEsIDAsIDExNzc1LCAKLSAgICA2NDc2MCwgMTE3NjYsIDEwMzgsIDQyMzAzLCA5ODIzLCAxMjcyNzgsIDY5MjM2LCA0MDA4LCA2NDAwNCwgODc3MywgMTA3MzMsIAotICAgIDM2LCAwLCA1MTUzLCA0MTgwNSwgMCwgNzM3MzUsIDc2MywgNDE4MDgsIDY0OTEwLCAwLCAyMDA5LCAwLCAwLCAxMjcxNDIsIAotICAgIDk2NDAsIDExOTk1MSwgMCwgMTIwNjk1LCA4NjIxLCAwLCAxMjg1MiwgMzAzMSwgMCwgNjQzNjEsIDAsIDE4MiwgMTk0NzE4LCAKLSAgICA5MjcxNiwgOTI1OTgsIDExOTk1MCwgMCwgOTA1OCwgMzY2LCAwLCA5ODkyLCA1OTY5LCAxMTc1NCwgMTA4NDgsIDQ1NzAsIAotICAgIDY1MzAxLCA0NDAxMywgNDI1NSwgMCwgMTAxMDIsIDQxMTg5LCA0MDAzLCA0MTAyNiwgNjgxMDksIDEzMjkzLCA0MTE5MiwgCi0gICAgNjk2MzUsIDAsIDQyMjUxLCAwLCA0MjUzNCwgNjUxNzksIDExMjg3LCA2MTI4LCAwLCAxMTAzNCwgMTA5MjMsIDY0NDIzLCAwLCAKLSAgICA2NTUwNiwgMCwgNjU4NjEsIDc0MDgzLCA5MjYwMCwgOTkzMiwgMCwgOTI0MjMsIDExOTk1NSwgMCwgOTgxNywgMCwgCi0gICAgMTIwMTQwLCAwLCAxMjExNywgNjY1ODYsIDQxODMsIDEwNTQwLCA2NjI1MCwgOTA2MywgMTI3MDQ1LCAwLCAxMTk5NTQsIDAsIAotICAgIDEyODk3LCAzNzkyLCAyMDExLCAwLCA2MDY1LCA0MzE2MCwgMCwgMTk0NzE1LCA4NjkyLCA0MTE4NiwgNDE4MTYsIDQxMDIzLCAKLSAgICA0MTgxOCwgNDExODcsIDExNjU5LCA3OTIyLCAxMjYxNCwgMjAwNSwgODUyMywgNzgwMDIsIDAsIDc1MTMsIDE4NjMsIDQ3MTAsIAotICAgIDAsIDU5NTYsIDc2MjEsIDc4MDA2LCA5MjYyNCwgNDcwNSwgNzE2LCA3ODAwNCwgMCwgNDcwNCwgMTIwMDQwLCAxMjAyNzAsIAotICAgIDQyMjQxLCAxNjEsIDQzOTc3LCA3NDU0NiwgNjYyMTQsIDQ3MDYsIDAsIDAsIDQyNjcyLCA0NzA5LCAxMDY4MCwgMCwgCi0gICAgNDMyOTMsIDExOTk0NCwgMCwgMTE5MTY0LCAxMjAzMjgsIDkyNDY3LCAwLCAxNzAwLCAxMTkyMjMsIDAsIDAsIDEyODExOSwgCi0gICAgNDAwNCwgMCwgMTA5NjgsIDQzMjk2LCAwLCA4NTA2LCAwLCAwLCAxMjY5OTYsIDEwMDUsIDkzNywgNzgyMTYsIDQ3MzQsIAotICAgIDI4NzAsIDAsIDc4MjE4LCAwLCA3NDYzLCA0NzI5LCAwLCAyMzUsIDEzODQsIDQ3MjgsIDAsIDEyMDQyMCwgOTI0OTAsIAotICAgIDEyMDMzMSwgODEwOSwgNDMxMDUsIDAsIDQ3MzAsIDQ0NywgMTMxODYsIDE1MTMsIDQ3MzMsIDEyMDQxNSwgMCwgMCwgCi0gICAgNDI1MjcsIDEyOTExLCA0MzQyNywgMTM4MywgODU2NSwgMjQ2OSwgMTIwMDI0LCA2NjkwLCA2MTU2LCA2ODExNywgNDM0MzksIAotICAgIDc5OTMsIDQyODgsIDEyMDQxNiwgMjY3NCwgMTMyMzgsIDExOTIyLCAwLCAxMjAzMzAsIDM1MTAsIDEzMjM0LCAwLCAKLSAgICAxMjA0MDcsIDU2MDUsIDQyMDk1LCAxMTM2NCwgMCwgMTM4MCwgNjU2MTcsIDEyMDI1MywgMTIwMjYxLCAxMzE5NiwgMTMxOTcsIAotICAgIDEyMDMwOSwgMTIwNjgyLCA5NDk1LCAxMTkzNDYsIDAsIDU5NTksIDAsIDczOTc2LCAxMjAzMDUsIDQzMzcxLCA2OTQxLCAKLSAgICAxMTkzNDksIDEzMjA1LCAxMzIxMSwgNTgwMSwgMTI3NjksIDY1OTA1LCA0MTY5NywgMTI4MywgMTIwMzAyLCA0Nzc5LCAwLCAKLSAgICAzNzE5LCA0MDA2LCAwLCAxOTk1NywgMTI4NzczLCAyMDIxLCAxMTkzMzIsIDEyMDY5OSwgMTE5MTUwLCA0MzAyOCwgNjU0OTMsIAotICAgIDQxODM4LCAzODc1LCA1OTYyLCA2NDM0MSwgOTI2MTYsIDk4MTQsIDQzNDU3LCA1ODI3LCAzMzE0LCA3Nzg3LCA3ODIzNCwgCi0gICAgNjU0OTQsIDY4MTUzLCAwLCAwLCAxMjA2MzYsIDY0NTMxLCAxMjA2OTIsIDE5NDYyNiwgMCwgMCwgNjYzMTYsIDY1NDY3LCAKLSAgICA1NzcxLCA0MTI5OCwgMCwgOTc0MiwgNTIxLCAwLCAxMDgwMCwgMCwgODQwNCwgMTk0NjI1LCA0ODMsIDcwOTYsIDcwODksIAotICAgIDY2MzIzLCA5MjgsIDAsIDAsIDExOTAxOCwgMTA1OTksIDExNTg2LCAzOTg5LCAxMDk3MSwgMCwgNjU3ODIsIDk4NDEsIAotICAgIDg4NDMsIDEyMTQ1LCA5MjQ3MCwgMTAwNzQsIDc4NTQ4LCAwLCAzNzY5LCAwLCAwLCAwLCAwLCA5NTczLCAwLCA2NTI5MCwgCi0gICAgODg0OSwgMCwgNjU4NTUsIDY1MTEyLCAxNzk2LCAxMjA1MDUsIDAsIDY5NjY1LCA4MTY0LCA0MTMwMSwgMzUwMiwgMCwgCi0gICAgNzM4OCwgMTA2MjEsIDczODM4LCA3ODU1MywgNTgyNSwgMTMwMDcsIDY4MTY1LCAwLCAxMjA0NTcsIDEyNjYxLCA3NjA4LCAKLSAgICAxMDM1NCwgMTA0MTgsIDQyNDExLCAyMDIyLCAwLCAxNDA5LCAxMjE5NSwgNDAwMSwgMzExMiwgMTA4MjQsIDEyMDYzOSwgCi0gICAgMTM5MCwgMCwgMCwgNDIxLCA0MzUzNiwgNTg0NiwgMTIwMTIwLCA0MTMwLCAxMjc3NzUsIDc1OTUsIDQyNTg4LCA3NjAwLCAKLSAgICAxMjAxMjEsIDY2MDM1LCAwLCAwLCA2NTg1MSwgNDI2MDcsIDEyODE5MCwgOTI0MDMsIDMxNjgsIDAsIDQyMTM0LCAwLCAKLSAgICAyMzcwLCAyODQ2LCA5MjYwNSwgMCwgMCwgMTIwMTMyLCAwLCAxODM2LCAwLCAwLCA5MjU1OCwgMzc0MCwgOTI1NDcsIDYyOTAsIAotICAgIDY1Mzc0LCAxMjA0NTEsIDIzOTAsIDM5NDQsIDY2NjI4LCAxMjA0MzQsIDAsIDYxMzUsIDMxMTgsIDc0MjY1LCAxMTkwOTMsIAotICAgIDEyMDQ0NiwgMCwgMCwgODEyNywgODk3NSwgNjQ3MzksIDc5NDMsIDAsIDAsIDEwNjE4LCAyNTg0LCAwLCAwLCAwLCA5OTk4LCAKLSAgICAwLCAwLCAwLCAwLCAwLCA2MjA0LCAwLCAwLCA4Mjc5LCA4Nzc2LCA2NDk1NCwgNDk3NSwgNzQ4MDksIDEyMDEzMCwgNDI2NywgCi0gICAgMTYzMSwgNDIyMDYsIDEyNzg2NiwgMCwgMTk1MDQ2LCA2NTcwMCwgNjY1NjIsIDAsIDY0NjQ1LCAwLCAwLCAwLCAxMjU4NiwgCi0gICAgMCwgOTI0MiwgMTI3OTIyLCAwLCA0NTIzLCA1ODQyLCAxMDQ5NSwgMzEyMiwgMCwgNzc5MywgNzgyNzUsIDkzMjgsIDAsIAotICAgIDc4MzkzLCAxMjYwNCwgMCwgNjYxNSwgNjc2NTAsIDkyMzQ0LCAzOTg2LCA0NDAyNSwgMCwgODkxMiwgNjQ1NTUsIDc0MDksIAotICAgIDAsIDAsIDk1NDEsIDc4Mjc2LCAwLCAxMTI3NSwgODU0MCwgMTE0OTgsIDAsIDAsIDQxMDQwLCAyNDU5LCAwLCAxMzA2MCwgCi0gICAgNDEwNDEsIDc0NDEzLCAwLCAwLCAwLCA2ODQyNywgMTA0NTAsIDEyNTUxLCA0MTA0MywgNzAyMCwgMTIwMzUzLCAzNzY1LCAwLCAKLSAgICAwLCAxNjA2LCAxMjAzNDgsIDEyMDM1MSwgMzA5MywgNjg0MzYsIDAsIDAsIDEyMDY0OSwgMCwgMCwgNDMxMiwgNzQwOTEsIAotICAgIDEyMDMzNywgMTIwMzM2LCAxMTkyMywgNDAyMywgMTIwMzMzLCA1NzYzLCAxMjAzMzUsIDQ4MjcsIDEwODk0LCAxMjgxMCwgCi0gICAgNjQ0MDYsIDExODc4NSwgNDQ1NSwgNzQzMjEsIDQzMywgMTE5NjIwLCA2NjY2MCwgMjQ5OSwgMCwgMCwgMCwgMTE5NzMsIAotICAgIDEzMDg5LCA0MjkzLCAxMjAzMjksIDQyMjI0LCA0Mjc1OCwgMTIxOTYsIDQyODM3LCA0MjIyNiwgMTE5MzE5LCAwLCAKLSAgICAxMTkxMjYsIDU4MTcsIDEyNzgwNiwgNTUyNzcsIDMxMjAsIDk3OTcsIDAsIDAsIDAsIDEwMzg5LCAwLCAwLCA0ODk1LCAKLSAgICA2NTM1OCwgMCwgNDM1OSwgNTg1LCAyMzgzLCAzNTA5LCAxOTQ5MjAsIDQ4NiwgNDI5MCwgNTc1OCwgMTI3NTQ2LCAwLCAwLCAKLSAgICA3MDA0LCAwLCA2NTg4MCwgMTI3ODg2LCAxMTkwNDgsIDIzODAsIDExMzgwLCAwLCAwLCAyMzc2LCAwLCAxMTkzMjAsIDAsIAotICAgIDUxOTcsIDEyNzA0NiwgMTI3MDQ3LCAxMjcwNDgsIDIzNjYsIDEyNzA1MCwgMTI3MDUxLCAxMjA1NTQsIDEyMDA0NSwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNzQxODgsIDEyMDI0MSwgMCwgMCwgMTIwMDQ3LCAxMjg1NzUsIDAsIDAsIDEyMDA0OSwgMCwgCi0gICAgMTg0NywgMCwgMTAzMzksIDAsIDQyMzg0LCAwLCA0MjI3LCA3NDE1OCwgMCwgOTI1MDEsIDQzMDMyLCAwLCA0MjM2NSwgMCwgCi0gICAgMTI2NzEsIDExMzg0LCAwLCAwLCAwLCA2NDc5NywgMCwgNTgyMCwgMCwgMTIwMDUyLCAxMjAwNjUsIDAsIDEyMDA2NCwgCi0gICAgMTIwNjUwLCA0MjEzNywgOTg5MywgMjc1NCwgMTI2NjQsIDEyMDA2MywgMCwgNzM3NywgMTI3ODY3LCA0MTc5OSwgNjU1MzAsIAotICAgIDE3MTEsIDEyOTg0LCA0MzAzOSwgMzExNCwgNjI1NSwgMCwgMTE4OTM4LCAwLCAxMDg1MywgOTI2LCAwLCA3NDE4NCwgMCwgCi0gICAgMTIwMDU1LCAwLCA0MzE3NSwgMCwgNDMwMzcsIDQxNzk4LCA0MTAzNSwgMTE1ODMsIDEyNzc2OSwgNDE4MDEsIDExOTA4OCwgCi0gICAgMCwgNTIwLCA0MjAwLCAxMjY5OSwgODMzMSwgMCwgMzA5MSwgNDEwMzQsIDEyNzM1MywgMCwgODM2MCwgMCwgNzgwNDQsIAotICAgIDMyMSwgNDIyOSwgNjQ1NDMsIDkxNzk0NiwgNjU1NjMsIDAsIDkxNzk3NCwgMjg2MSwgNDM3OTMsIDEwMDk1LCAwLCA5MTk1LCAKKyAgICA0MjIzMSwgODI0NiwgMCwgMCwgMCwgNDE4NDAsIDk4MzM1MywgMjM3NywgMTI5OCwgNjQwMTEsIDEyNTcyLCAxMTMxOCwgCisgICAgMTI1NTcsIDEyNTU5LCAxMjU3MCwgODQ4OCwgMTAwMywgMjM3MywgOTQ0NiwgNzQ4MSwgOTQ0OCwgNDgsIDAsIDk0ODAsIAorICAgIDQ4MSwgMCwgOTQzOCwgOTQzOSwgOTQ0MCwgOTQ0MSwgODQ2NSwgOTQ0MywgOTQ0NCwgOTQ0NSwgOTQzMCwgOTQzMSwgOTQzMiwgCisgICAgOTQzMywgOTQzNCwgOTQzNSwgMzk4NCwgOTQzNywgMCwgMCwgOTQyNCwgOTQyNSwgOTQyNiwgOTQyNywgOTQyOCwgOTQyOSwgCisgICAgNjQ3NTgsIDIzNjIsIDk2NTUsIDAsIDIwMDQsIDkwOTYsIDk3ODIsIDEyODg0OCwgOTE3MiwgMTI4NTQ1LCAxOTk2NSwgMCwgCisgICAgNTk1NSwgNjc2NjYsIDExMDgsIDAsIDc0NzczLCAwLCAwLCA2NDc4MiwgMzkyNiwgOTI0NDgsIDY1MjEwLCA4Nzk4LCAwLCAKKyAgICA5MjE2NSwgMTM5MiwgMCwgMCwgMTI3MzY0LCAxMDYwNiwgODA2NSwgMTE4ODA1LCAxMDM1MywgMTA0MTcsIDAsIDAsIAorICAgIDY0NTI0LCA5MjQxOCwgNDAxOSwgMCwgOTgzMzA0LCA0MzI4MCwgODIxOSwgNjg0MDIsIDE4MTIsIDAsIDAsIDAsIDAsIAorICAgIDQyNDEwLCA3NDQ0OCwgMTE5MTMyLCA2MDU0LCAxMDY5NywgMzE2OSwgNDIyOTcsIDQyMzIyLCAxMDY0MiwgMzkwOSwgOTk1MCwgCisgICAgMCwgMTI4MTM5LCAwLCA2ODY3OCwgMCwgMCwgMTA0OSwgMCwgNjU3MDcsIDIzMDQsIDQxODA2LCA5MjMyNiwgNDIzMzYsIAorICAgIDM5MjEsIDAsIDExNzc1LCA2NDc2MCwgMTE3NjYsIDEwMzgsIDQyMzAzLCA5ODIzLCAxMjcyNzgsIDY5MjM2LCA0MDA4LCAKKyAgICA2NDAwNCwgODc3MywgMTA3MzMsIDM2LCAwLCA1MTUzLCA0MTgwNSwgMCwgNzM3MzUsIDc2MywgNDE4MDgsIDY0OTEwLCAwLCAKKyAgICAyMDA5LCAwLCAwLCAxMjcxNDIsIDk2NDAsIDExOTk1MSwgMCwgMTIwNjk1LCA4NjIxLCA5ODM2OTksIDEyODUyLCAzMDMxLCAKKyAgICAwLCA2NDM2MSwgMCwgMTgyLCAxOTQ3MTgsIDkyNzE2LCA5MjU5OCwgMTE5OTUwLCAwLCA5MDU4LCAzNjYsIDAsIDk4OTIsIAorICAgIDU5NjksIDExNzU0LCAxMDg0OCwgNDU3MCwgNjUzMDEsIDQ0MDEzLCA0MjU1LCA5ODM3MDAsIDEwMTAyLCA0MTE4OSwgNDAwMywgCisgICAgNDEwMjYsIDY4MTA5LCAxMzI5MywgNDExOTIsIDY5NjM1LCAwLCA0MjI1MSwgMCwgNDI1MzQsIDY1MTc5LCAxMTI4NywgCisgICAgNjEyOCwgMCwgMTEwMzQsIDEwOTIzLCA2NDQyMywgMCwgNjU1MDYsIDAsIDY1ODYxLCA3NDA4MywgOTI2MDAsIDk5MzIsIDAsIAorICAgIDkyNDIzLCAxMTk5NTUsIDAsIDk4MTcsIDAsIDEyMDE0MCwgMCwgMTIxMTcsIDY2NTg2LCA0MTgzLCAxMDU0MCwgNjYyNTAsIAorICAgIDkwNjMsIDEyNzA0NSwgMCwgMTE5OTU0LCAwLCAxMjg5NywgMzc5MiwgMjAxMSwgMCwgNjA2NSwgNDMxNjAsIDAsIDE5NDcxNSwgCisgICAgODY5MiwgNDExODYsIDQxODE2LCA0MTAyMywgNDE4MTgsIDQxMTg3LCAxMTY1OSwgNzkyMiwgMTI2MTQsIDIwMDUsIDg1MjMsIAorICAgIDc4MDAyLCAwLCA3NTEzLCAxODYzLCA0NzEwLCAwLCA1OTU2LCA3NjIxLCA3ODAwNiwgOTI2MjQsIDQ3MDUsIDcxNiwgCisgICAgNzgwMDQsIDAsIDQ3MDQsIDEyMDA0MCwgMTIwMjcwLCA0MjI0MSwgMTYxLCA0Mzk3NywgNzQ1NDYsIDY2MjE0LCA0NzA2LCAwLCAKKyAgICAwLCA0MjY3MiwgNDcwOSwgMTA2ODAsIDk4MzQ4NSwgNDMyOTMsIDExOTk0NCwgMCwgMTE5MTY0LCAxMjAzMjgsIDkyNDY3LCAKKyAgICAwLCAxNzAwLCAxMTkyMjMsIDAsIDAsIDEyODExOSwgNDAwNCwgMCwgMTA5NjgsIDQzMjk2LCA5ODMzNzcsIDg1MDYsIDAsIDAsIAorICAgIDEyNjk5NiwgMTAwNSwgOTM3LCA3ODIxNiwgNDczNCwgMjg3MCwgMCwgNzgyMTgsIDAsIDc0NjMsIDQ3MjksIDAsIDIzNSwgCisgICAgMTM4NCwgNDcyOCwgMCwgMTIwNDIwLCA5MjQ5MCwgMTIwMzMxLCA4MTA5LCA0MzEwNSwgOTgzNTM1LCA0NzMwLCA0NDcsIAorICAgIDEzMTg2LCAxNTEzLCA0NzMzLCAxMjA0MTUsIDAsIDAsIDQyNTI3LCAxMjkxMSwgNDM0MjcsIDEzODMsIDg1NjUsIDI0NjksIAorICAgIDEyMDAyNCwgNjY5MCwgNjE1NiwgNjgxMTcsIDQzNDM5LCA3OTkzLCA0Mjg4LCAxMjA0MTYsIDI2NzQsIDEzMjM4LCAxMTkyMiwgCisgICAgMCwgMTIwMzMwLCAzNTEwLCAxMzIzNCwgMCwgMTIwNDA3LCA1NjA1LCA0MjA5NSwgMTEzNjQsIDAsIDEzODAsIDY1NjE3LCAKKyAgICAxMjAyNTMsIDEyMDI2MSwgMTMxOTYsIDEzMTk3LCAxMjAzMDksIDEyMDY4MiwgOTQ5NSwgMTE5MzQ2LCAwLCA1OTU5LCAwLCAKKyAgICA3Mzk3NiwgMTIwMzA1LCA0MzM3MSwgNjk0MSwgMTE5MzQ5LCAxMzIwNSwgMTMyMTEsIDU4MDEsIDEyNzY5LCA2NTkwNSwgCisgICAgNDE2OTcsIDEyODMsIDEyMDMwMiwgNDc3OSwgMCwgMzcxOSwgNDAwNiwgMCwgMTk5NTcsIDEyODc3MywgMjAyMSwgMTE5MzMyLCAKKyAgICAxMjA2OTksIDExOTE1MCwgNDMwMjgsIDY1NDkzLCA0MTgzOCwgMzg3NSwgNTk2MiwgNjQzNDEsIDkyNjE2LCA5ODE0LCAKKyAgICA0MzQ1NywgNTgyNywgMzMxNCwgNzc4NywgNzgyMzQsIDY1NDk0LCA2ODE1MywgMCwgMCwgMTIwNjM2LCA2NDUzMSwgCisgICAgMTIwNjkyLCAxOTQ2MjYsIDAsIDAsIDY2MzE2LCA2NTQ2NywgNTc3MSwgNDEyOTgsIDk4MzUyOSwgOTc0MiwgNTIxLCAwLCAKKyAgICAxMDgwMCwgMCwgODQwNCwgMTk0NjI1LCA0ODMsIDcwOTYsIDcwODksIDY2MzIzLCA5MjgsIDAsIDAsIDExOTAxOCwgMTA1OTksIAorICAgIDExNTg2LCAzOTg5LCAxMDk3MSwgMCwgNjU3ODIsIDk4NDEsIDg4NDMsIDEyMTQ1LCA5MjQ3MCwgMTAwNzQsIDc4NTQ4LCAwLCAKKyAgICAzNzY5LCAwLCAwLCAwLCAwLCA5NTczLCAwLCA2NTI5MCwgODg0OSwgMCwgNjU4NTUsIDY1MTEyLCAxNzk2LCAxMjA1MDUsIDAsIAorICAgIDY5NjY1LCA4MTY0LCA0MTMwMSwgMzUwMiwgMCwgNzM4OCwgMTA2MjEsIDczODM4LCA3ODU1MywgNTgyNSwgMTMwMDcsIAorICAgIDY4MTY1LCAwLCAxMjA0NTcsIDEyNjYxLCA3NjA4LCAxMDM1NCwgMTA0MTgsIDQyNDExLCAyMDIyLCAwLCAxNDA5LCAxMjE5NSwgCisgICAgNDAwMSwgMzExMiwgMTA4MjQsIDEyMDYzOSwgMTM5MCwgMCwgMCwgNDIxLCA0MzUzNiwgNTg0NiwgMTIwMTIwLCA0MTMwLCAKKyAgICAxMjc3NzUsIDc1OTUsIDQyNTg4LCA3NjAwLCAxMjAxMjEsIDY2MDM1LCA5ODM2NDgsIDAsIDY1ODUxLCA0MjYwNywgCisgICAgMTI4MTkwLCA5MjQwMywgMzE2OCwgMCwgNDIxMzQsIDAsIDIzNzAsIDI4NDYsIDkyNjA1LCAwLCAwLCAxMjAxMzIsIDAsIAorICAgIDE4MzYsIDAsIDAsIDkyNTU4LCAzNzQwLCA5MjU0NywgNjI5MCwgNjUzNzQsIDEyMDQ1MSwgMjM5MCwgMzk0NCwgNjY2MjgsIAorICAgIDEyMDQzNCwgMCwgNjEzNSwgMzExOCwgNzQyNjUsIDExOTA5MywgMTIwNDQ2LCAwLCAwLCA4MTI3LCA4OTc1LCA2NDczOSwgCisgICAgNzk0MywgOTgzNDc4LCAwLCAxMDYxOCwgMjU4NCwgMCwgMCwgMCwgOTk5OCwgMCwgMCwgMCwgMCwgMCwgNjIwNCwgMCwgMCwgCisgICAgODI3OSwgODc3NiwgNjQ5NTQsIDQ5NzUsIDc0ODA5LCAxMjAxMzAsIDQyNjcsIDE2MzEsIDQyMjA2LCAxMjc4NjYsIDAsIAorICAgIDE5NTA0NiwgNjU3MDAsIDY2NTYyLCAwLCA2NDY0NSwgMCwgMCwgMCwgMTI1ODYsIDAsIDkyNDIsIDEyNzkyMiwgMCwgNDUyMywgCisgICAgNTg0MiwgMTA0OTUsIDMxMjIsIDk4MzUzMiwgNzc5MywgNzgyNzUsIDkzMjgsIDAsIDc4MzkzLCAxMjYwNCwgMCwgNjYxNSwgCisgICAgNjc2NTAsIDkyMzQ0LCAzOTg2LCA0NDAyNSwgMCwgODkxMiwgNjQ1NTUsIDc0MDksIDAsIDAsIDk1NDEsIDc4Mjc2LCAwLCAKKyAgICAxMTI3NSwgODU0MCwgMTE0OTgsIDAsIDAsIDQxMDQwLCAyNDU5LCAwLCAxMzA2MCwgNDEwNDEsIDc0NDEzLCA5ODM1NjgsIDAsIAorICAgIDAsIDY4NDI3LCAxMDQ1MCwgMTI1NTEsIDQxMDQzLCA3MDIwLCAxMjAzNTMsIDM3NjUsIDAsIDAsIDE2MDYsIDEyMDM0OCwgCisgICAgMTIwMzUxLCAzMDkzLCA2ODQzNiwgMCwgMCwgMTIwNjQ5LCAwLCAwLCA0MzEyLCA3NDA5MSwgMTIwMzM3LCAxMjAzMzYsIAorICAgIDExOTIzLCA0MDIzLCAxMjAzMzMsIDU3NjMsIDEyMDMzNSwgNDgyNywgMTA4OTQsIDEyODEwLCA2NDQwNiwgMTE4Nzg1LCAKKyAgICA0NDU1LCA3NDMyMSwgNDMzLCAxMTk2MjAsIDY2NjYwLCAyNDk5LCAwLCAwLCAwLCAxMTk3MywgMTMwODksIDQyOTMsIAorICAgIDEyMDMyOSwgNDIyMjQsIDQyNzU4LCAxMjE5NiwgNDI4MzcsIDQyMjI2LCAxMTkzMTksIDAsIDExOTEyNiwgNTgxNywgCisgICAgMTI3ODA2LCA1NTI3NywgMzEyMCwgOTc5NywgMCwgMCwgMCwgMTAzODksIDAsIDAsIDQ4OTUsIDY1MzU4LCAwLCA0MzU5LCAKKyAgICA1ODUsIDIzODMsIDM1MDksIDE5NDkyMCwgNDg2LCA0MjkwLCA1NzU4LCAxMjc1NDYsIDAsIDAsIDcwMDQsIDAsIDY1ODgwLCAKKyAgICAxMjc4ODYsIDExOTA0OCwgMjM4MCwgMTEzODAsIDAsIDAsIDIzNzYsIDAsIDExOTMyMCwgMCwgNTE5NywgMTI3MDQ2LCAKKyAgICAxMjcwNDcsIDEyNzA0OCwgMjM2NiwgMTI3MDUwLCAxMjcwNTEsIDEyMDU1NCwgMTIwMDQ1LCAwLCAwLCAwLCA5ODM0MjUsIDAsIAorICAgIDAsIDAsIDc0MTg4LCAxMjAyNDEsIDAsIDAsIDEyMDA0NywgMTI4NTc1LCAwLCAwLCAxMjAwNDksIDAsIDE4NDcsIDAsIAorICAgIDEwMzM5LCAwLCA0MjM4NCwgMCwgNDIyNywgNzQxNTgsIDAsIDkyNTAxLCA0MzAzMiwgMCwgNDIzNjUsIDAsIDEyNjcxLCAKKyAgICAxMTM4NCwgMCwgMCwgMCwgNjQ3OTcsIDAsIDU4MjAsIDAsIDEyMDA1MiwgMTIwMDY1LCAwLCAxMjAwNjQsIDEyMDY1MCwgCisgICAgNDIxMzcsIDk4OTMsIDI3NTQsIDEyNjY0LCAxMjAwNjMsIDAsIDczNzcsIDEyNzg2NywgNDE3OTksIDY1NTMwLCAxNzExLCAKKyAgICAxMjk4NCwgNDMwMzksIDMxMTQsIDYyNTUsIDAsIDExODkzOCwgMCwgMTA4NTMsIDkyNiwgMCwgNzQxODQsIDAsIDEyMDA1NSwgCisgICAgMCwgNDMxNzUsIDAsIDQzMDM3LCA0MTc5OCwgNDEwMzUsIDExNTgzLCAxMjc3NjksIDQxODAxLCAxMTkwODgsIDAsIDUyMCwgCisgICAgNDIwMCwgMTI2OTksIDgzMzEsIDAsIDMwOTEsIDQxMDM0LCAxMjczNTMsIDk4MzUzMywgODM2MCwgMCwgNzgwNDQsIDMyMSwgCisgICAgNDIyOSwgNjQ1NDMsIDkxNzk0NiwgNjU1NjMsIDAsIDkxNzk3NCwgMjg2MSwgNDM3OTMsIDEwMDk1LCAwLCA5MTk1LCAKICAgICA5MjM4NiwgMTg2MSwgMCwgNzM3MzMsIDAsIDAsIDQzMDQxLCAwLCA0Mzc5NCwgMTI4NTMwLCAzODU5LCAxMjE4MSwgNDE2NjAsIAogICAgIDgyMDksIDAsIDczODY3LCAxMjk3MywgMCwgNzQ3NTcsIDEyNzUxNCwgNDE2NTgsIDAsIDAsIDU3NjAsIDAsIDc0MywgNDQxNCwgCiAgICAgMTIwNzY2LCAwLCA0MjYzMiwgOTE3OTczLCA2NTE2MSwgNzM4OTYsIDEyODU4OSwgMCwgMTQwNSwgMTE5MDYzLCA0MzIyMCwgCiAgICAgNDMzNDEsIDAsIDE5OTE5LCAwLCA2NDUzMiwgNjUzNjcsIDQzNzEwLCAwLCAwLCAzNTEzLCAwLCAxMTg4ODMsIDQzMzQyLCAKICAgICAxMTkwNjQsIDY1NTI5LCA2NTM2NCwgMTI4MTk3LCAwLCA2NDg1LCAxMzk3LCAwLCA0MTk4NiwgOTI2NzgsIDAsIDAsIAotICAgIDc0MDk3LCAwLCA3NDcxLCAxMjA3OSwgMCwgMTI2ODIsIDQzMjg3LCA5MjMxNywgMCwgMCwgMCwgMCwgMCwgMTA5OSwgCisgICAgNzQwOTcsIDAsIDc0NzEsIDEyMDc5LCAwLCAxMjY4MiwgNDMyODcsIDkyMzE3LCAwLCAwLCA5ODM0NDIsIDAsIDAsIDEwOTksIAogICAgIDEwNDkwLCAwLCAxMDUwMSwgNjUxODEsIDc0NDYzLCAwLCA0NjQsIDQxNjI0LCA2NTI4MywgNjc2NjMsIDc4MjIyLCAxMzQ2LCAKICAgICAwLCA5MTc2MzEsIDY0NTczLCA2NDg5NywgNDIzLCAxODE4LCA2NTE0NCwgMCwgODI3MiwgMTI3ODEyLCAxOTkxMSwgNDIxOCwgCi0gICAgMzA4NywgNjQ5NjAsIDEyNzIzNCwgNDM1NjQsIDAsIDAsIDk1ODQsIDEwNDY1LCAwLCA3NDM1OSwgMTI2MjYsIDkxMDYsIDAsIAotICAgIDQyNjQyLCAxMjAyMzAsIDY0NzUwLCA5MzkwLCAwLCA0MTc5NywgMCwgMCwgMjY1LCA0MTc5NSwgNjQ2NjYsIDAsIDQzNTMwLCAKLSAgICAyNzUyLCAwLCAwLCAwLCA1OSwgMCwgMCwgMCwgOTIzNzEsIDc3ODczLCA0MTgxMCwgMCwgNzAxMCwgMCwgNDE4MDksIAotICAgIDQxNDk1LCAxMTkzNjQsIDAsIDQyMjUyLCA0MjIxMywgODAwOSwgMzMwNSwgNDMwMzMsIDUxMSwgOTI3MDAsIDY2MjU1LCAKLSAgICAxMzEyNywgMTIwMDY3LCAwLCAwLCAwLCA5MTc5NzcsIDY1OTE1LCAxNDAwLCA0MTgxMiwgMTA2ODUsIDE5NDg3MCwgMjEwMywgCi0gICAgMTAzODcsIDQ0NTMsIDQzMjc2LCA5MTc3ODMsIDEzMTU5LCAwLCA2NDgxLCA0MTIxMywgMCwgMCwgMCwgMCwgNDE5ODMsIAotICAgIDc0MTk4LCA2NjE3LCA5MTE2LCAxMTk2NTQsIDAsIDQ2MiwgNjgxMTAsIDEwNDkzLCAwLCA4MTI5LCAwLCAwLCA3NDQ3MSwgCi0gICAgNjY0NCwgMTE2NTgsIDAsIDEyODI0NSwgMzQ1MiwgMTE5MDYsIDk1ODEsIDEzODUsIDMwOTgsIDAsIDExOTAxMywgNDMzNDAsIAotICAgIDAsIDQxMDMzLCA2NDkzLCA0MjYyNiwgMCwgMCwgMTE0MjYsIDc3ODg3LCAxNjgxLCAxMTg3ODksIDEyMDQsIDM3NTUsIAotICAgIDY0NjYxLCA3MjM1LCAxMDE3MCwgMzk2NiwgODkxMSwgMCwgNDE4NDEsIDQzMzM4LCAwLCAwLCA1NzI2LCA2NDkxNSwgCi0gICAgNDIxNzUsIDAsIDAsIDQxNDk3LCA2NTA0NCwgMTIwMTA5LCAyODUxLCA0MzAxNywgMCwgMCwgNDM3MywgNzgwNTgsIDAsIAotICAgIDk1ODcsIDE3ODksIDY2NzEsIDEyODg0MCwgMzEwMCwgMCwgNjUzNjAsIDAsIDkyMzY1LCAwLCA2NDkyMiwgMCwgODE5MCwgCi0gICAgMTIwODMsIDAsIDAsIDY1MDYsIDY0MzEyLCA3NDM3NCwgMjM2OCwgMCwgNDQxOSwgMCwgMTE5MTI1LCAzNDM5LCAxODI1LCAKLSAgICAxMTkyLCAxMjAxMDYsIDg4OTEsIDMwODAsIDEyMDIyOCwgMjM0NywgNTQzMCwgMCwgODk5MCwgMjg0OCwgMCwgMTI4MjIzLCAKLSAgICA5MjUyOCwgMjQ5LCAwLCAwLCAwLCAxMjA2NTgsIDAsIDAsIDg4ODMsIDkxNzgwMiwgNzI4LCA2ODE3OCwgOTk1LCAwLCAwLCAKLSAgICA2NDgyNiwgMCwgOTE3Nzk4LCAxMjgzNDgsIDAsIDE5OTQ1LCA4MDkxLCA1NTgsIDAsIDEyMjczLCAxOTQ4MTQsIDAsIAotICAgIDEyMTEyLCAwLCAwLCAwLCA3NDQxOSwgMTIzMzUsIDEyMDEwNCwgOTE3Nzk1LCAzNDQzLCAzMTI5LCAwLCAyMTAyLCA2NTQ0NSwgCi0gICAgNzgyNTgsIDY0ODkxLCAwLCA3NzI1LCA2NTEwOCwgNzgyNTUsIDAsIDg2MjQsIDY5MjQ2LCAxMjQ0NiwgNDMyOTUsIDAsIAotICAgIDQxODk0LCAwLCA2Mjc3LCA0MTY3MiwgNDE4OTMsIDEwMDEwLCAxMjg2NzgsIDM1NDAsIDEyODY0OSwgODM1LCAwLCA2OTgxNiwgCi0gICAgMTE5ODY4LCA3NDQwOCwgMCwgNzM5NTksIDU0MjYsIDQyNTgsIDAsIDAsIDU0MjQsIDEyODEyNywgODI4MywgMCwgNTQzNCwgCi0gICAgMCwgMCwgMTk5MTcsIDExNDA4LCAwLCAxMTk0NywgMCwgMTQwNCwgMzA5NSwgMTE0MzIsIDEyODMwNywgMzQ2NCwgNjQ4NiwgCi0gICAgNDgxOSwgMTI4MjMzLCAwLCA1NzAsIDgwOTUsIDM2NzIsIDExOTg2NCwgMTQ5OCwgNjc4NjYsIDAsIDAsIDQzMSwgMCwgMCwgCi0gICAgMTI4MTgyLCAxMjgwOTYsIDY4MTY3LCAwLCAxMzA5NiwgMTI4NjQzLCAwLCA0MzQwOCwgOTUxNiwgMTI4NTM4LCA1MjY4LCAKLSAgICA0MjIzMCwgNDIyMjAsIDAsIDQ0NTAsIDEyMDUxMSwgMTE1NDcsIDQzNDE3LCAxMjg1NDIsIDM1NiwgMzQ3NywgMjI3LCAKLSAgICAxMDQ4OCwgNjgyMDMsIDM4MiwgMTE0MTgsIDAsIDAsIDAsIDAsIDAsIDAsIDY0ODQsIDI1NDEsIDY2MDM5LCAwLCA3ODcxOCwgCi0gICAgOTI3MjMsIDM1NDksIDAsIDkxMTAsIDExOTY2NSwgMjc0MywgMCwgNDMyOTAsIDE5NDgxMiwgOTA5NywgMCwgNDMwMTUsIAotICAgIDg3ODIsIDAsIDc3NiwgMjUyNCwgNDI3MDcsIDg1NzMsIDAsIDAsIDAsIDAsIDQyNjk0LCA2NDk0NCwgODk1MiwgMzg1NiwgCi0gICAgMTE4ODE4LCAwLCA1ODcyLCA2NDk1LCAwLCAwLCAwLCA5MjU0MywgMCwgMTIwNzMzLCAxMjg0OSwgMzk1MywgMTg5NywgMCwgCi0gICAgNjUwOTQsIDExOTk0LCA0MzM5LCA3NDU1NiwgOTI2NTQsIDY3ODQzLCAwLCAwLCAwLCA2ODQ3MywgNzQxMDQsIDUyMjgsIAotICAgIDEyODgwNCwgNzg2OCwgNDMxODQsIDAsIDAsIDczOTg2LCA0MzQzOCwgMCwgNDMwMjIsIDAsIDExNjIsIDAsIDI2NzEsIDAsIAotICAgIDAsIDkyNjMyLCA5MjYzMSwgMTE4ODY1LCA0NTUzLCA3MzgxMSwgMCwgMTk1MDA1LCAwLCAwLCAxOTkyMSwgNzQzMzEsIAotICAgIDExNDI0LCAxOTUwMDYsIDQ1NjcsIDQxODkxLCAwLCAwLCA1NTI0OSwgNDgyMCwgNjUyMzksIDE5NDY2MiwgMCwgMCwgCi0gICAgNDMwNDIsIDExOTIxMiwgMTM3NywgMTI4NjksIDQ4OTcsIDQyODIxLCA5MjUwLCAwLCA0NDM4LCA2NDM4NSwgMCwgMTc1MywgCi0gICAgMTEzMzEsIDYxNDcsIDE5NDk0MSwgNDMyODIsIDg4MzMsIDAsIDAsIDY1MDQsIDc4NDA4LCAxMjY5NzksIDEwNzE5LCAwLCAKLSAgICAxODk4LCAxNDEzLCA0MjQ0MywgMCwgODAyLCAxMjE0MSwgMCwgMTk0NjcxLCA2NjQ4LCAxMDY3MSwgMjUyOCwgMCwgNjQ3ODksIAotICAgIDkxNjksIDgzOCwgMTI3MDkyLCAxMjA2OTcsIDg0NCwgNTAxNCwgMCwgMjU2LCAwLCA5OTkwLCAwLCA0MjczOSwgOTE3ODUxLCAKLSAgICA3NTQyLCA2NTQ2NCwgOTcyNiwgMCwgNjQ4OSwgMTAwNDgsIDc0MzI2LCA3ODcxOSwgNjY1NzMsIDAsIDc4NzI0LCA3ODcxMiwgCi0gICAgMTE3NjEsIDE5NDY1NSwgMCwgNDEwOTQsIDAsIDAsIDAsIDAsIDkyNjg5LCA2MTk2LCA2OTQ1LCAxOTQ2MjgsIDE5NDg5MCwgCi0gICAgMTI4MTg0LCAxMjA0OTEsIDExODE2LCAxOTQ5NDMsIDU3MzMsIDI5MzAsIDAsIDAsIDQxMDk4LCAwLCA0MTA5MywgMCwgCi0gICAgNjY2MjYsIDU4OCwgOTc2MCwgMCwgMTk0NzE3LCAxMjM4LCAyMDAsIDAsIDE2NjAsIDczOTE2LCAwLCAxMTg5MDUsIDc0MzYyLCAKLSAgICAwLCA5MjQ4NSwgMTk0NjUxLCAwLCAwLCAzMzk0LCAxOTQ4OTQsIDEyMDY2OCwgMCwgMCwgMTI3MzU4LCA2NjIxOSwgCi0gICAgMTI3MTgzLCA0MzI4NCwgMTk0NjU3LCA3ODE3LCAxODQxLCAxMTA1NSwgMTIwNTMzLCAxOTQ5NzksIDE5NDk4MiwgMTY2OSwgCi0gICAgMTA3NzYsIDE5NDk4MSwgNzcwMSwgMTk0OTgwLCAwLCAxOTQ5OTUsIDE3MzIsIDQwMzAsIDAsIDM5NjMsIDY2NjExLCAKLSAgICAxMjc1MzAsIDQxNzY4LCA2NDkxLCAwLCA2NTMyNCwgOTE0LCA2NTMyMywgODA3MSwgMzUzOCwgMCwgNzg3MTMsIDY1MzI4LCAKLSAgICA5MjQ0MSwgNzQzNjcsIDc2MTQsIDAsIDExODE5LCAwLCAxMjAwOSwgMTIzOTksIDAsIDY3ODUyLCA2NTUzNywgMCwgMTA4NDEsIAotICAgIDQzNDMwLCA1MzAxLCAwLCA5MjYxOCwgNTczNCwgODk2MCwgMCwgOTI1MjcsIDY1MzE3LCA3Nzg4MCwgMCwgMCwgMCwgCi0gICAgMTIzMDQsIDAsIDAsIDY1MzE1LCA5MjY3MCwgMTI4NTExLCAwLCAwLCAwLCAxMTk2MjEsIDkyNTI5LCA3NDUzNiwgMTI0NDcsIAotICAgIDY0NDg2LCAxMjczNzQsIDAsIDAsIDAsIDAsIDAsIDQyNzY3LCAxMDkxNSwgMCwgMTIwMDcsIDQzNjk1LCAxMjA1MjAsIAotICAgIDExOTc1LCAxOTQ4NzgsIDAsIDkyNjA0LCAyNTU1LCA4NjI5LCAwLCA0MzE2OCwgNDE4NzIsIDQzNzA2LCA0NDk2LCAKLSAgICAxOTQ4NzksIDEyODE0OCwgMCwgMCwgMCwgMCwgMCwgNjQ3MzAsIDAsIDY2NzE0LCA2ODIyMiwgMCwgMCwgNjU1OTYsIAotICAgIDkyMzA2LCAxMTQxNiwgNDI4MCwgNjc2NTUsIDg3NjUsIDEyNzg0LCA3NzkyLCAxMzkzLCAxMjcyNDIsIDY3ODcxLCA3NDM4NiwgCi0gICAgMCwgODIzMywgMTI4MjAsIDAsIDY2ODMsIDE5NDg3NiwgMzQ0MiwgMTIxNDQsIDI4NDEsIDEyNTQzLCAwLCAxNDczLCAKLSAgICA0MjgyMCwgNjQzMjksIDEyNzgzMiwgMCwgNjg2NDIsIDY0ODgsIDM1NywgMTA0OCwgNDExMDAsIDAsIDQxMTA0LCAwLCAKLSAgICAzNDA2LCAxMDU0LCAxMTkwNjUsIDEwNDAsIDY1NDUwLCAwLCA0NDM0LCAxMDY5LCAwLCAxMTg4NjIsIDY1NzM3LCA5MTc3NjUsIAotICAgIDEyODcwNSwgMCwgMCwgOTY5MywgNDE5NDMsIDAsIDQxOTMxLCA0MTc1OSwgMTI3NTcsIDQzNTMsIDAsIDEwNTksIDk3OTAsIAotICAgIDg5OTUsIDEyODI4NiwgMCwgNjU5MzcsIDAsIDQxNzY0LCAxMDY0NiwgMCwgMTE4ODMzLCA5MjM3MiwgMCwgNzQ4MzAsIAotICAgIDc4NTY5LCAxMjc0MywgMCwgNjQ4MCwgOTE3NzYxLCA0MTc3OSwgNDI1ODAsIDY2NjAxLCAxMjIwNywgMTE5NjE5LCA2MzM1LCAKLSAgICA2NjYwMiwgMTEzMTIsIDY0ODA3LCAwLCAwLCA0MTc2NywgMCwgMCwgNDMwMjAsIDEyODI3MSwgMzk1NSwgNzQyNTQsIDAsIDAsIAotICAgIDkxNzg2MSwgMCwgNzc5MjYsIDk3NzAsIDkyNDYsIDEyMjMwLCAwLCAwLCAwLCAxMDQ0OCwgNDE3ODMsIDQxNzg2LCAKLSAgICAxMjcwOTMsIDEyNzk3LCAyNzU1LCA2NDU3MSwgNzg1NzgsIDE5NDkyNywgNDg1NywgMCwgNDQyOCwgMTI3OTQsIDczNzU1LCAKLSAgICAxMjgwNjEsIDc4NTc0LCAwLCAwLCAwLCA1NzQ3LCA3ODgyNSwgMCwgNzk3OCwgNDEwOTIsIDc0NTcxLCAwLCAxMTkyNCwgCi0gICAgNDM4MTIsIDQyMTQ0LCA2NTAxNSwgMCwgNTYzLCAwLCAwLCAxMjc5OCwgMTEyNzEsIDU3LCAwLCAwLCA5MTc4NjAsIAotICAgIDExOTA0MywgMCwgMTE5MTM0LCA0MzEzNywgNjk0LCAwLCA5ODc2LCAwLCAxMTkxNjgsIDAsIDc4ODIyLCA2NDUzNywgMCwgCi0gICAgMjc3LCA3NDM4NSwgNzIyOSwgMTI3NjEsIDAsIDAsIDEzMDI1LCA2NDgxMSwgODc1NywgNzg4MjQsIDAsIDE1NzQsIDczODEsIAotICAgIDAsIDI1MjUsIDQ4NTIsIDU3NDksIDY4NDY1LCAxMzAyNywgNDI4MjQsIDEyMDU3NCwgMTAzOSwgNzE1MSwgMTAxNTUsIAotICAgIDU3NDUsIDE4OCwgNDE4NTgsIDExNTkyLCAwLCA3NDAxNSwgOTA1NSwgNDE4NTMsIDQ4NTgsIDkxNzc4MCwgMCwgNDM2LCAKLSAgICA0NzcxLCAwLCAyNzg2LCAwLCA0ODU2LCA4MDUxLCAwLCAxMTk2MDksIDAsIDk2NDQsIDAsIDAsIDAsIDE5NDkxNiwgCi0gICAgMTIwNzMyLCA2NjcxMCwgMTE4ODM0LCAwLCA3MzkwNiwgMCwgMTI3MTE0LCAwLCAxMDIzNCwgNTg0MywgMTE5MzksIDAsIAotICAgIDQyMTU3LCAwLCAzMTU3LCAxOTQ5MTgsIDY4MzkzLCAwLCAzNTA0LCAxMTkxNzgsIDAsIDEwODIyLCA1MTQ5LCA2NjAyOSwgCi0gICAgMTAyMjYsIDY1MTQyLCAwLCAzNTk0LCA0MjQyNCwgMTk0OTU5LCA0MCwgMTI2NTcsIDAsIDAsIDM4NiwgMCwgODgzNCwgMCwgCi0gICAgMTI4MTUsIDQzNTc0LCAwLCA3MzkwNywgMCwgNzQxOTYsIDcyMjAsIDc0NTA0LCAwLCA3NDMxNiwgMCwgNzc5MzIsIDQzMDQsIAotICAgIDc0NTAzLCA4MTYwLCA3ODcwNywgMTk0NzUzLCAwLCAwLCAwLCAxMzQ4LCA5MjM0OSwgNzg1OTcsIDAsIDEzMzAzLCAwLCAKLSAgICA5MjM5MiwgMTk0NzU1LCA3NTk5LCAxMjc4LCA0MzYxNiwgMTMyNjksIDAsIDAsIDc0Mzg3LCA3ODE3OSwgNzg1OTgsIAotICAgIDc0NDkyLCA2MDk3LCA3NTY4LCA4NzgwLCA0OTgyLCAxMjc0NjQsIDc0NTAxLCAxOTQ3NjMsIDc4NTkyLCAxOTQ3NjIsIAotICAgIDI2NzIsIDM3MzUsIDEyNzQ3MSwgMTMxMzgsIDQyMjY2LCA5NDg0LCAxMDcyNCwgNDEyMDIsIDExOTAyNCwgMCwgNDM3NDIsIAotICAgIDAsIDk0ODcsIDExOTk1OSwgMTE5MTE3LCAzODQyLCAxMjg3NjgsIDc4NjY4LCAxMjQ0MiwgNjE5MywgOTc5MSwgMTI3OTc2LCAKLSAgICAwLCA0MjUxNiwgNzIyOCwgNzU1OSwgNzQ4MDMsIDc4NDY4LCA3ODczLCAxMTM5OSwgMTE5MjE5LCAxOTQ2OTEsIDE5NDg1NSwgCi0gICAgMTk0NjkwLCAxOTQ4NTcsIDM2MDQsIDAsIDExOTE4OCwgMTI4ODc3LCA3ODU0MCwgNzg1NDEsIDQyNTA3LCAxOTYyLCAKLSAgICA0MzMwNSwgNzg0NzYsIDQyNTA1LCAxMTY2MCwgMCwgMjA3MiwgOTIzMTIsIDY5OTUsIDc0MTczLCA1NDM3LCA3NDE3NCwgCi0gICAgMTA2NjksIDg3MDIsIDc5NjQsIDkyMzUyLCAwLCAxOTksIDE5NDg0MywgNDEwNSwgMTk0ODQ1LCAxOTQ2OTksIDE5NDg0NywgCi0gICAgMTk0NzEwLCAxMTk4NzUsIDEzMTQ4LCA3NTYwLCA3ODQ3OSwgOTIyNiwgNzg0ODAsIDE5NTA3MCwgNjQ3MiwgNjU4MTQsIAotICAgIDczOTU0LCAwLCA0NzI0LCAwLCAwLCA5MTkxLCAwLCA2NDQzMiwgMCwgMCwgMTk1MDI0LCAxMDE5NiwgNzg4NiwgMCwgNjU4NSwgCi0gICAgMCwgNjY4MCwgMTk1MDQyLCAwLCAxOTUwNTEsIDY2NzksIDc0NDEyLCA5MjI1MSwgMTk0ODY2LCA3NDQyMSwgMTEzODIsIDAsIAotICAgIDAsIDEyNzg5MSwgMTI3NDg0LCAxOTQ4MzMsIDE5NDgzMiwgNjY4MSwgMTI3NDgyLCAxMjY5MywgMTk0ODM2LCA0MjcyNywgCi0gICAgMTk0ODM4LCAxMjgyNTIsIDc4MTk1LCA2NTQ0MiwgMTE5NjEwLCA2OTczMywgOTk4OSwgNDMyNDgsIDY2MjQ4LCAxOTQ4MTYsIAotICAgIDAsIDE5NDgxOCwgMTI4ODQ1LCAxOTQ4MjAsIDE5NDgxOSwgNTI5NywgNzA0MiwgMTMyODQsIDYxMTIsIDc5NjgsIDE5NDgyNSwgCi0gICAgNzM5MjcsIDkyNDQ0LCAxOTQ3MzYsIDY1NzQ2LCAxMjc0NzYsIDc0NDA5LCA3NDM4OSwgMTI4Njk2LCA0MzQyLCA0MjgzOSwgCi0gICAgMTk0ODMxLCAxNjc3LCAwLCAwLCAxOTQ4MDYsIDkxNzg1NSwgMTEwOTEsIDExMDExLCAyNzE5LCAwLCAwLCAxMTk1OTUsIAotICAgIDEwMTYwLCAwLCAwLCA3NTg1LCA2NTE2OSwgMjA1MiwgNDMwOCwgOTIxNzQsIDc0MTc3LCA3NTA1LCA1NDMsIDY0OTE2LCAKLSAgICA2NDczNiwgMCwgMCwgNjQ2NTUsIDAsIDExODkyMiwgMjA2NCwgMCwgNDMxNTgsIDc5MDIsIDAsIDY1MjY1LCAxOTQ2MzksIDAsIAotICAgIDEyNzE3MCwgMCwgMCwgMCwgMCwgMTI5OTQsIDkyNzI4LCAxMDgyOCwgMCwgNjIyOCwgNDMwNywgMzQ4MiwgMTI4NTI3LCAwLCAKLSAgICAwLCAwLCA1MDYsIDc0NTczLCA0MTE5NCwgNjU3MzUsIDIwNTUsIDQzMjU1LCA0MTE5NSwgMCwgODE2OSwgMCwgODg0MSwgMCwgCi0gICAgNTE2LCAwLCAyMDYzLCAxMTkwNTEsIDM0LCAxMjg4NTAsIDEyMDE4NiwgMTE1MDQsIDE2MTIsIDc0MzMzLCAxMjAxODIsIAotICAgIDc0NTIwLCA3NDMwOCwgMTIwMDEsIDEyMDE3OCwgMTAyNDIsIDY0NTY0LCAxMjAxNzksIDEyMDE3NCwgNjU4NCwgNzc0OSwgCi0gICAgMTEwMzcsIDAsIDE3NTgsIDAsIDEwNjY3LCAxMDU2MCwgMTIwMTk3LCA5MjU5MywgMTkzNSwgMTE1MTcsIDEyMDE5MywgCi0gICAgMTIwMTk2LCAxMjAxOTUsIDE5MzEsIDEyMDE4OSwgNzQ4MzksIDEyMDE5MSwgMTIxNywgNjQ3MDIsIDEyNjQzLCA4MjUsIAotICAgIDEyNzgzOCwgMTk0OTA1LCAxMjI5NCwgOTI0MjgsIDc4ODM0LCA5MTM4LCA3ODgzMSwgNzg4MzMsIDEyNjMxLCA3ODgyOSwgCi0gICAgMTEwODAsIDc0NTU0LCA2NDAwMCwgNTU5MSwgMTIzOSwgMCwgMTEzMTMsIDAsIDM0MDMsIDAsIDAsIDY0MzY0LCA5MjI2OSwgCi0gICAgMCwgNzQ1ODIsIDg5OTgsIDEyOTg4LCAwLCA5MTUyLCAwLCAwLCAxOTQ4OTgsIDY3NTg5LCA0MTg1MCwgNjQyOTAsIDM0MzMsIAotICAgIDkyMzkzLCAxMjYxNSwgMTU5NCwgNDIxOTIsIDY5MTQsIDY3NjAzLCAwLCAxMTk1NjksIDc0NTY1LCA0MTM1MywgNjc2MDIsIAotICAgIDY3NjExLCA0MzM3LCAwLCAxMjcyOTYsIDkxOCwgNjUwMzUsIDQxMzUxLCA3NjgxLCAxOTQ5MDAsIDQyNTc3LCA0MTM5MywgCi0gICAgMTI2NjgsIDE5NDkwNCwgMjQ3NywgMTI3Mjg1LCAwLCAxMjczMDEsIDAsIDY3NjA0LCAxOTQ4ODAsIDEyNzIzNSwgNTczLCAKLSAgICAxMjcyODIsIDE5NDg4NCwgMTE0MTcsIDE5NDg4NiwgMTE5ODE0LCAxOTQ4ODgsIDY3NTk5LCAwLCAxOTQ4ODksIDY3NjA3LCAKLSAgICAxMTQ4MiwgMCwgMzk4MSwgMzM1NywgMCwgNDIyMjMsIDQyMDcsIDEyODgsIDc4ODQyLCA3ODgzOSwgNjg0MTksIDc4ODM3LCAKLSAgICAxMTU4OSwgNDIxOTUsIDE5NDg3MiwgMTk0NTk5LCAxMjcyNjMsIDY0NjAyLCA2NzYxOCwgOTI1MzksIDAsIDQyNzg4LCAKLSAgICA2ODQxNiwgNjQ0ODAsIDE5NDg3NSwgODQyMywgMzM0OCwgNDQ4LCA2ODQ3NiwgOTcxNywgMCwgMCwgOTk3LCAwLCAwLCAKLSAgICA5MjU3NywgMCwgMTE0NDAsIDExMzc5LCA0MjAwMCwgMTMxMzksIDQyMjIxLCA2NTAxMywgMTI2OTk5LCAxMjc3NjAsIAotICAgIDczNzk2LCAwLCAxMTkyMjgsIDEyMDM1LCAwLCAyODE4LCAwLCAwLCA3Mzc5MywgMCwgNDE3MiwgMCwgMCwgODM3MywgCi0gICAgMTA4NzMsIDEyMTk3LCAwLCAwLCA5MjI2NSwgNjk3MDYsIDAsIDc4MjEwLCAwLCAxMjgxMTAsIDE5NDg2NSwgMTI2OTgyLCAKLSAgICA3NDU2MywgNjQ4MjgsIDExNDE5LCAxOTQ4NjgsIDc2NiwgMTI1NywgMCwgMTE4ODQ1LCAxMTM4MSwgMzI2NSwgNjY2MTcsIAotICAgIDMyNzQsIDEyNzM2NSwgMCwgMCwgMCwgNzQ1MjIsIDQxOTg5LCAwLCAwLCAxMjg3OTgsIDMyNjMsIDAsIDY1NjcyLCAwLCAKLSAgICAzMjcwLCA2NDUzOSwgMTE0ODksIDAsIDAsIDAsIDAsIDk1MDUsIDY1NTE4LCAxOTQ3NzYsIDc1NiwgMTk0NjA1LCAwLCAwLCAKLSAgICAwLCA3MjYxLCAwLCAxODYsIDAsIDExOTE1NiwgNTc3MCwgMTMxNzksIDY1ODMwLCAxMjYxMiwgMTI5NDksIDY0ODU2LCAKLSAgICAxMjgwMCwgMCwgNzQyMDMsIDY0NzE4LCAwLCAwLCA5MjQzNCwgMTE4OTI5LCAwLCAxMTU3OCwgMCwgMTE5Mjk2LCAwLCAwLCAKLSAgICAwLCAwLCA3NDU2OCwgOTI1NCwgMCwgMTc5NCwgMTIwMjE3LCA2NDUyMSwgNTYyNCwgMTIwMjIwLCAxMjAyMjEsIDExOTk1OCwgCi0gICAgMTIwMjIzLCAzNjE3LCA2NjYzNiwgNjQ4ODYsIDEyMDIxMSwgMTIwMjEyLCAxMjAyMTMsIDEyMDIxNCwgMTg3MiwgNjY1MDgsIAotICAgIDEyMDQ2NywgNDEwNzksIDEwNzQ4LCA1NTAyLCAxMTkzMzAsIDQ0NTIsIDAsIDAsIDkyNTI2LCA0NTExLCAwLCAwLCA2NDY3OCwgCi0gICAgMTE0MjUsIDAsIDQzMjQ1LCAxMjMxLCAxOTQ3ODMsIDAsIDAsIDkwMDMsIDgxOTIsIDAsIDUzMDUsIDk2NTMsIDEwNjE2LCAKLSAgICA4Njk0LCA5NTQ2LCAwLCAwLCAxMjA0NzgsIDEyMDIwMCwgNjUyMDUsIDEyMDIwMiwgNjQwNjMsIDk4NzgsIDc0NzgwLCAKLSAgICAxMTk2MjYsIDc4MjAyLCA2NDA1OCwgODc5OSwgNDIxMzEsIDAsIDY0MDYyLCAxMDI4LCA2NDA2MCwgNjQwNTksIDgzNywgCi0gICAgMTA1NjcsIDAsIDQzMTAzLCAwLCAxMjA3NTQsIDExNDI3LCAyOTAyLCA2NDA0MywgNjQwNDIsIDY2NDY0LCAxMDc1NiwgMCwgCi0gICAgNDI2MDYsIDY0MDQ1LCA2NDA0NCwgNDM5NzksIDEwMDc2LCA2NDA0MCwgNDMwNjAsIDE5NDk0MiwgMTAzNCwgMzM5MiwgCi0gICAgMTI3NzcxLCA0MzA5MSwgNjQwMzMsIDY0MDMyLCA0MjczNSwgNjQwMzgsIDY0MDM3LCA2NDAzNiwgNjQwMzUsIDQyOTEsIAotICAgIDE5NDkyOCwgNjQwMTUsIDY0MDE0LCA2NDY4MSwgMTk0OTMwLCAwLCA3ODE0NSwgMCwgNDMwOTAsIDAsIDM0NzYsIDg5NzMsIAotICAgIDY0MDEyLCA0MjQ3MywgNjQwMTAsIDY0MDA4LCA2NDAwNywgMjAwMywgNzcwNiwgNjQ1MTcsIDc4MTUzLCAyNTM4LCA2NDAwOSwgCi0gICAgMjA0LCAwLCA0ODAyLCA0MTExLCA4MjM5LCA5MDk4LCA0ODA1LCA2NDAwMSwgNjQwNTcsIDc4ODUsIDcyNDcsIDY0MDU0LCAwLCAKLSAgICAwLCA0NzY3LCA5MzQzLCA2NDA0OSwgNjQwNDgsIDEyMDAzNCwgMTEzMywgNjQwNTMsIDY0MDUyLCA0MzQ1MywgNjQwNTAsIAotICAgIDQxMzQwLCAxMTg5NzUsIDE5NDgzNSwgMTAwMDUsIDEyMzI5LCA0MTMzMywgMCwgODQ4OSwgMTk0MiwgMCwgMTk0ODM0LCAKLSAgICA0MjUyMCwgMTI4MjQ5LCAwLCAwLCAxMDc2MCwgNjQwMjMsIDY0MDIyLCA2NDAyMSwgNjU4MiwgNDM2NzAsIDAsIDY0MDI1LCAKLSAgICA5MTY3LCA0MjE1MSwgNzgyNDQsIDAsIDIwMjYsIDY0MDE5LCA2NDAxOCwgNjQwMTcsIDY0MDE2LCAxMjc2OCwgMCwgNzU4MiwgCi0gICAgNzgyNTIsIDc4MjQ4LCA3NzkxNCwgNzgyNDYsIDc4MjQ3LCAwLCA3NzkxNSwgNzg3NjYsIDY3ODgsIDEzMDk0LCA3NzkyMCwgCi0gICAgNzUzMiwgNDE0MTQsIDc4NTIwLCAzMTc5LCA3ODUxOCwgNjQ3NjksIDc4NTE0LCA3ODUxNywgMTE0NjEsIDc0NDU0LCAKLSAgICAxMDc1MSwgOTA1MSwgMTIwNzIwLCA2NzA4LCAxMDUzNSwgMCwgNjgyMTgsIDU1Mjc0LCAyMDA4LCA2NDAzMSwgNjQwMzAsIAotICAgIDI5NCwgNDE4NzQsIDAsIDEyNjk5MSwgNjU5MjksIDAsIDAsIDAsIDAsIDY0MDI4LCA4MTQ2LCA2NDAyNiwgNDE3ODgsIAotICAgIDE5NDg0NCwgMCwgMTE4Nzk1LCA2MzQzLCA0MzI0NywgMTE5ODg4LCAwLCAxMTk4ODYsIDExOTg5MSwgMTE5ODkyLCAKLSAgICAxMTk4ODksIDExNDMzLCAxMTk4OTUsIDExOTg5NiwgMCwgNzgwMSwgNjU1NzgsIDE5NDgzOSwgMTI5MTUsIDQzOTY4LCAKLSAgICAzMjk3LCA5Njk5LCAxOTQ5NTUsIDExMzUsIDAsIDAsIDEyODUyNSwgMTk5NSwgNjcyMiwgMCwgMCwgMjU1MiwgNDE1NDYsIAotICAgIDYwLCA2ODM5NCwgODY0OSwgNDE1NDksIDc4NDk2LCAwLCAwLCA2NjgyLCAwLCA3ODY3OSwgNjQ3MTAsIDQxNTQ3LCAwLCAKLSAgICAyMDEzLCAxMjgyOTEsIDc4NTMwLCA3ODUzMiwgNzg1MjgsIDc4NTI5LCAxMjgzMiwgNzg0OTMsIDgwODEsIDgzNjIsIDM1MzcsIAotICAgIDExOTkwOCwgOTEzNywgNzE1NSwgODk5OSwgMCwgNzg1MzMsIDM0NjYsIDAsIDAsIDE5OTYsIDAsIDM0NTMsIDYyODIsIDAsIAotICAgIDIwMDIsIDIwMDAsIDEyMDE3NSwgNTM3LCAwLCA0MTc5LCA2NTExOSwgMTk5OCwgMCwgMTg0MiwgMCwgOTI2NzQsIDk2MjgsIAotICAgIDY4NDQ2LCAxMjA4MSwgOTgyNiwgNjQ1MDIsIDE3NjcsIDAsIDAsIDAsIDEyMDIwMSwgMCwgMCwgMCwgMzA1OSwgNDQwMjQsIAotICAgIDEyMDIwNCwgMTE5OTUzLCA5MjY5MywgMCwgMCwgOTI0NTIsIDQxMDAsIDkyMCwgMTgxMSwgMTM1NSwgMCwgMCwgMzU5MiwgCi0gICAgMTAwNzgsIDAsIDAsIDAsIDg1OTIsIDY1ODcwLCA2ODE2NCwgMTI4NzkyLCAxMDc0MiwgMCwgNDI5MTgsIDE5OTQsIDkyODEsIAotICAgIDMyOTYsIDEyODY1LCAxOTk3LCAxODk1LCAKKyAgICAzMDg3LCA2NDk2MCwgMTI3MjM0LCA0MzU2NCwgMCwgMCwgOTU4NCwgMTA0NjUsIDk4MzYzNywgNzQzNTksIDEyNjI2LCAKKyAgICA5MTA2LCAwLCA0MjY0MiwgMTIwMjMwLCA2NDc1MCwgOTM5MCwgMCwgNDE3OTcsIDAsIDAsIDI2NSwgNDE3OTUsIDY0NjY2LCAKKyAgICAwLCA0MzUzMCwgMjc1MiwgMCwgMCwgMCwgNTksIDAsIDk4MzMzNywgMCwgOTIzNzEsIDc3ODczLCA0MTgxMCwgMCwgNzAxMCwgCisgICAgMCwgNDE4MDksIDQxNDk1LCAxMTkzNjQsIDAsIDQyMjUyLCA0MjIxMywgODAwOSwgMzMwNSwgNDMwMzMsIDUxMSwgOTI3MDAsIAorICAgIDY2MjU1LCAxMzEyNywgMTIwMDY3LCAwLCAwLCAwLCA5MTc5NzcsIDY1OTE1LCAxNDAwLCA0MTgxMiwgMTA2ODUsIDE5NDg3MCwgCisgICAgMjEwMywgMTAzODcsIDQ0NTMsIDQzMjc2LCA5MTc3ODMsIDEzMTU5LCAwLCA2NDgxLCA0MTIxMywgMCwgMCwgMCwgMCwgCisgICAgNDE5ODMsIDc0MTk4LCA2NjE3LCA5MTE2LCAxMTk2NTQsIDAsIDQ2MiwgNjgxMTAsIDEwNDkzLCAwLCA4MTI5LCAwLCAwLCAKKyAgICA3NDQ3MSwgNjY0NCwgMTE2NTgsIDAsIDEyODI0NSwgMzQ1MiwgMTE5MDYsIDk1ODEsIDEzODUsIDMwOTgsIDAsIDExOTAxMywgCisgICAgNDMzNDAsIDAsIDQxMDMzLCA2NDkzLCA0MjYyNiwgMCwgMCwgMTE0MjYsIDc3ODg3LCAxNjgxLCAxMTg3ODksIDEyMDQsIAorICAgIDM3NTUsIDY0NjYxLCA3MjM1LCAxMDE3MCwgMzk2NiwgODkxMSwgMCwgNDE4NDEsIDQzMzM4LCAwLCAwLCA1NzI2LCA2NDkxNSwgCisgICAgNDIxNzUsIDAsIDAsIDQxNDk3LCA2NTA0NCwgMTIwMTA5LCAyODUxLCA0MzAxNywgOTgzMzMzLCAwLCA0MzczLCA3ODA1OCwgCisgICAgMCwgOTU4NywgMTc4OSwgNjY3MSwgMTI4ODQwLCAzMTAwLCAwLCA2NTM2MCwgMCwgOTIzNjUsIDk4MzU1NiwgNjQ5MjIsIDAsIAorICAgIDgxOTAsIDEyMDgzLCAwLCAwLCA2NTA2LCA2NDMxMiwgNzQzNzQsIDIzNjgsIDAsIDQ0MTksIDk4MzU4MiwgMTE5MTI1LCAKKyAgICAzNDM5LCAxODI1LCAxMTkyLCAxMjAxMDYsIDg4OTEsIDMwODAsIDEyMDIyOCwgMjM0NywgNTQzMCwgMCwgODk5MCwgMjg0OCwgCisgICAgMCwgMTI4MjIzLCA5MjUyOCwgMjQ5LCAwLCAwLCAwLCAxMjA2NTgsIDAsIDAsIDg4ODMsIDkxNzgwMiwgNzI4LCA2ODE3OCwgCisgICAgOTk1LCAwLCAwLCA2NDgyNiwgMCwgOTE3Nzk4LCAxMjgzNDgsIDAsIDE5OTQ1LCA4MDkxLCA1NTgsIDAsIDEyMjczLCAKKyAgICAxOTQ4MTQsIDk4MzU4NSwgMTIxMTIsIDAsIDAsIDAsIDc0NDE5LCAxMjMzNSwgMTIwMTA0LCA5MTc3OTUsIDM0NDMsIDMxMjksIAorICAgIDAsIDIxMDIsIDY1NDQ1LCA3ODI1OCwgNjQ4OTEsIDAsIDc3MjUsIDY1MTA4LCA3ODI1NSwgMCwgODYyNCwgNjkyNDYsIAorICAgIDEyNDQ2LCA0MzI5NSwgMCwgNDE4OTQsIDAsIDYyNzcsIDQxNjcyLCA0MTg5MywgMTAwMTAsIDEyODY3OCwgMzU0MCwgCisgICAgMTI4NjQ5LCA4MzUsIDAsIDY5ODE2LCAxMTk4NjgsIDc0NDA4LCAwLCA3Mzk1OSwgNTQyNiwgNDI1OCwgMCwgMCwgNTQyNCwgCisgICAgMTI4MTI3LCA4MjgzLCAwLCA1NDM0LCA5ODMzMzQsIDAsIDE5OTE3LCAxMTQwOCwgMCwgMTE5NDcsIDAsIDE0MDQsIDMwOTUsIAorICAgIDExNDMyLCAxMjgzMDcsIDM0NjQsIDY0ODYsIDQ4MTksIDEyODIzMywgMCwgNTcwLCA4MDk1LCAzNjcyLCAxMTk4NjQsIAorICAgIDE0OTgsIDY3ODY2LCAwLCAwLCA0MzEsIDAsIDAsIDEyODE4MiwgMTI4MDk2LCA2ODE2NywgOTgzMzk4LCAxMzA5NiwgCisgICAgMTI4NjQzLCAwLCA0MzQwOCwgOTUxNiwgMTI4NTM4LCA1MjY4LCA0MjIzMCwgNDIyMjAsIDAsIDQ0NTAsIDEyMDUxMSwgCisgICAgMTE1NDcsIDQzNDE3LCAxMjg1NDIsIDM1NiwgMzQ3NywgMjI3LCAxMDQ4OCwgNjgyMDMsIDM4MiwgMTE0MTgsIDAsIAorICAgIDk4MzMxOSwgMCwgMCwgMCwgMCwgNjQ4NCwgMjU0MSwgNjYwMzksIDAsIDc4NzE4LCA5MjcyMywgMzU0OSwgMCwgOTExMCwgCisgICAgMTE5NjY1LCAyNzQzLCAwLCA0MzI5MCwgMTk0ODEyLCA5MDk3LCAwLCA0MzAxNSwgODc4MiwgMCwgNzc2LCAyNTI0LCAKKyAgICA0MjcwNywgODU3MywgMCwgMCwgMCwgMCwgNDI2OTQsIDY0OTQ0LCA4OTUyLCAzODU2LCAxMTg4MTgsIDAsIDU4NzIsIDY0OTUsIAorICAgIDAsIDAsIDAsIDkyNTQzLCAwLCAxMjA3MzMsIDEyODQ5LCAzOTUzLCAxODk3LCAwLCA2NTA5NCwgMTE5OTQsIDQzMzksIAorICAgIDc0NTU2LCA5MjY1NCwgNjc4NDMsIDAsIDAsIDAsIDY4NDczLCA3NDEwNCwgNTIyOCwgMTI4ODA0LCA3ODY4LCA0MzE4NCwgMCwgCisgICAgMCwgNzM5ODYsIDQzNDM4LCAwLCA0MzAyMiwgMCwgMTE2MiwgMCwgMjY3MSwgMCwgMCwgOTI2MzIsIDkyNjMxLCAxMTg4NjUsIAorICAgIDQ1NTMsIDczODExLCAwLCAxOTUwMDUsIDAsIDAsIDE5OTIxLCA3NDMzMSwgMTE0MjQsIDE5NTAwNiwgNDU2NywgNDE4OTEsIAorICAgIDAsIDk4MzUyMywgNTUyNDksIDQ4MjAsIDY1MjM5LCAxOTQ2NjIsIDAsIDAsIDQzMDQyLCAxMTkyMTIsIDEzNzcsIDEyODY5LCAKKyAgICA0ODk3LCA0MjgyMSwgOTI1MCwgMCwgNDQzOCwgNjQzODUsIDAsIDE3NTMsIDExMzMxLCA2MTQ3LCAxOTQ5NDEsIDQzMjgyLCAKKyAgICA4ODMzLCAwLCAwLCA2NTA0LCA3ODQwOCwgMTI2OTc5LCAxMDcxOSwgMCwgMTg5OCwgMTQxMywgNDI0NDMsIDAsIDgwMiwgCisgICAgMTIxNDEsIDAsIDE5NDY3MSwgNjY0OCwgMTA2NzEsIDI1MjgsIDAsIDY0Nzg5LCA5MTY5LCA4MzgsIDEyNzA5MiwgMTIwNjk3LCAKKyAgICA4NDQsIDUwMTQsIDAsIDI1NiwgMCwgOTk5MCwgMCwgNDI3MzksIDkxNzg1MSwgNzU0MiwgNjU0NjQsIDk3MjYsIDAsIDY0ODksIAorICAgIDEwMDQ4LCA3NDMyNiwgNzg3MTksIDY2NTczLCAwLCA3ODcyNCwgNzg3MTIsIDExNzYxLCAxOTQ2NTUsIDAsIDQxMDk0LCAwLCAKKyAgICAwLCAwLCAwLCA5MjY4OSwgNjE5NiwgNjk0NSwgMTk0NjI4LCAxOTQ4OTAsIDEyODE4NCwgMTIwNDkxLCAxMTgxNiwgCisgICAgMTk0OTQzLCA1NzMzLCAyOTMwLCAwLCAwLCA0MTA5OCwgMCwgNDEwOTMsIDAsIDY2NjI2LCA1ODgsIDk3NjAsIDAsIAorICAgIDE5NDcxNywgMTIzOCwgMjAwLCAwLCAxNjYwLCA3MzkxNiwgMCwgMTE4OTA1LCA3NDM2MiwgMCwgOTI0ODUsIDE5NDY1MSwgMCwgCisgICAgOTgzNDQxLCAzMzk0LCAxOTQ4OTQsIDEyMDY2OCwgMCwgMCwgMTI3MzU4LCA2NjIxOSwgMTI3MTgzLCA0MzI4NCwgMTk0NjU3LCAKKyAgICA3ODE3LCAxODQxLCAxMTA1NSwgMTIwNTMzLCAxOTQ5NzksIDE5NDk4MiwgMTY2OSwgMTA3NzYsIDE5NDk4MSwgNzcwMSwgCisgICAgMTk0OTgwLCAwLCAxOTQ5OTUsIDE3MzIsIDQwMzAsIDAsIDM5NjMsIDY2NjExLCAxMjc1MzAsIDQxNzY4LCA2NDkxLCAwLCAKKyAgICA2NTMyNCwgOTE0LCA2NTMyMywgODA3MSwgMzUzOCwgMCwgNzg3MTMsIDY1MzI4LCA5MjQ0MSwgNzQzNjcsIDc2MTQsIDAsIAorICAgIDExODE5LCAwLCAxMjAwOSwgMTIzOTksIDAsIDY3ODUyLCA2NTUzNywgMCwgMTA4NDEsIDQzNDMwLCA1MzAxLCAwLCA5MjYxOCwgCisgICAgNTczNCwgODk2MCwgMCwgOTI1MjcsIDY1MzE3LCA3Nzg4MCwgMCwgMCwgMCwgMTIzMDQsIDAsIDAsIDY1MzE1LCA5MjY3MCwgCisgICAgMTI4NTExLCAwLCAwLCAwLCAxMTk2MjEsIDkyNTI5LCA3NDUzNiwgMTI0NDcsIDY0NDg2LCAxMjczNzQsIDAsIDAsIDAsIDAsIAorICAgIDk4MzUzNywgNDI3NjcsIDEwOTE1LCAwLCAxMjAwNywgNDM2OTUsIDEyMDUyMCwgMTE5NzUsIDE5NDg3OCwgMCwgOTI2MDQsIAorICAgIDI1NTUsIDg2MjksIDAsIDQzMTY4LCA0MTg3MiwgNDM3MDYsIDQ0OTYsIDE5NDg3OSwgMTI4MTQ4LCAwLCAwLCAwLCAwLCAwLCAKKyAgICA2NDczMCwgMCwgNjY3MTQsIDY4MjIyLCAwLCAwLCA2NTU5NiwgOTIzMDYsIDExNDE2LCA0MjgwLCA2NzY1NSwgODc2NSwgCisgICAgMTI3ODQsIDc3OTIsIDEzOTMsIDEyNzI0MiwgNjc4NzEsIDc0Mzg2LCAwLCA4MjMzLCAxMjgyMCwgMCwgNjY4MywgMTk0ODc2LCAKKyAgICAzNDQyLCAxMjE0NCwgMjg0MSwgMTI1NDMsIDAsIDE0NzMsIDQyODIwLCA2NDMyOSwgMTI3ODMyLCAwLCA2ODY0MiwgNjQ4OCwgCisgICAgMzU3LCAxMDQ4LCA0MTEwMCwgMCwgNDExMDQsIDAsIDM0MDYsIDEwNTQsIDExOTA2NSwgMTA0MCwgNjU0NTAsIDAsIDQ0MzQsIAorICAgIDEwNjksIDAsIDExODg2MiwgNjU3MzcsIDkxNzc2NSwgMTI4NzA1LCAwLCA5ODM0MjgsIDk2OTMsIDQxOTQzLCAwLCA0MTkzMSwgCisgICAgNDE3NTksIDEyNzU3LCA0MzUzLCAwLCAxMDU5LCA5NzkwLCA4OTk1LCAxMjgyODYsIDk4MzQzMSwgNjU5MzcsIDAsIDQxNzY0LCAKKyAgICAxMDY0NiwgMCwgMTE4ODMzLCA5MjM3MiwgMCwgNzQ4MzAsIDc4NTY5LCAxMjc0MywgOTgzNDI0LCA2NDgwLCA5MTc3NjEsIAorICAgIDQxNzc5LCA0MjU4MCwgNjY2MDEsIDEyMjA3LCAxMTk2MTksIDYzMzUsIDY2NjAyLCAxMTMxMiwgNjQ4MDcsIDAsIDAsIAorICAgIDQxNzY3LCAwLCA5ODM0OTksIDQzMDIwLCAxMjgyNzEsIDM5NTUsIDc0MjU0LCAwLCA5ODM0ODksIDkxNzg2MSwgMCwgCisgICAgNzc5MjYsIDk3NzAsIDkyNDYsIDEyMjMwLCAwLCAwLCAwLCAxMDQ0OCwgNDE3ODMsIDQxNzg2LCAxMjcwOTMsIDEyNzk3LCAKKyAgICAyNzU1LCA2NDU3MSwgNzg1NzgsIDE5NDkyNywgNDg1NywgMCwgNDQyOCwgMTI3OTQsIDczNzU1LCAxMjgwNjEsIDc4NTc0LCAKKyAgICAwLCAwLCAwLCA1NzQ3LCA3ODgyNSwgMCwgNzk3OCwgNDEwOTIsIDc0NTcxLCAwLCAxMTkyNCwgNDM4MTIsIDQyMTQ0LCAKKyAgICA2NTAxNSwgMCwgNTYzLCAwLCA5ODM0MjYsIDEyNzk4LCAxMTI3MSwgNTcsIDAsIDAsIDkxNzg2MCwgMTE5MDQzLCAwLCAKKyAgICAxMTkxMzQsIDQzMTM3LCA2OTQsIDAsIDk4NzYsIDAsIDExOTE2OCwgMCwgNzg4MjIsIDY0NTM3LCAwLCAyNzcsIDc0Mzg1LCAKKyAgICA3MjI5LCAxMjc2MSwgMCwgMCwgMTMwMjUsIDY0ODExLCA4NzU3LCA3ODgyNCwgMCwgMTU3NCwgNzM4MSwgMCwgMjUyNSwgCisgICAgNDg1MiwgNTc0OSwgNjg0NjUsIDEzMDI3LCA0MjgyNCwgMTIwNTc0LCAxMDM5LCA3MTUxLCAxMDE1NSwgNTc0NSwgMTg4LCAKKyAgICA0MTg1OCwgMTE1OTIsIDAsIDc0MDE1LCA5MDU1LCA0MTg1MywgNDg1OCwgOTE3NzgwLCAwLCA0MzYsIDQ3NzEsIDAsIDI3ODYsIAorICAgIDAsIDQ4NTYsIDgwNTEsIDAsIDExOTYwOSwgMCwgOTY0NCwgMCwgMCwgMCwgMTk0OTE2LCAxMjA3MzIsIDY2NzEwLCAKKyAgICAxMTg4MzQsIDAsIDczOTA2LCAwLCAxMjcxMTQsIDAsIDEwMjM0LCA1ODQzLCAxMTkzOSwgMCwgNDIxNTcsIDAsIDMxNTcsIAorICAgIDE5NDkxOCwgNjgzOTMsIDAsIDM1MDQsIDExOTE3OCwgMCwgMTA4MjIsIDUxNDksIDY2MDI5LCAxMDIyNiwgNjUxNDIsIDAsIAorICAgIDM1OTQsIDQyNDI0LCAxOTQ5NTksIDQwLCAxMjY1NywgOTgzNDAwLCAwLCAzODYsIDAsIDg4MzQsIDAsIDEyODE1LCA0MzU3NCwgCisgICAgMCwgNzM5MDcsIDAsIDc0MTk2LCA3MjIwLCA3NDUwNCwgMCwgNzQzMTYsIDAsIDc3OTMyLCA0MzA0LCA3NDUwMywgODE2MCwgCisgICAgNzg3MDcsIDE5NDc1MywgMCwgMCwgMCwgMTM0OCwgOTIzNDksIDc4NTk3LCAwLCAxMzMwMywgMCwgOTIzOTIsIDE5NDc1NSwgCisgICAgNzU5OSwgMTI3OCwgNDM2MTYsIDEzMjY5LCAwLCAwLCA3NDM4NywgNzgxNzksIDc4NTk4LCA3NDQ5MiwgNjA5NywgNzU2OCwgCisgICAgODc4MCwgNDk4MiwgMTI3NDY0LCA3NDUwMSwgMTk0NzYzLCA3ODU5MiwgMTk0NzYyLCAyNjcyLCAzNzM1LCAxMjc0NzEsIAorICAgIDEzMTM4LCA0MjI2NiwgOTQ4NCwgMTA3MjQsIDQxMjAyLCAxMTkwMjQsIDAsIDQzNzQyLCAwLCA5NDg3LCAxMTk5NTksIAorICAgIDExOTExNywgMzg0MiwgMTI4NzY4LCA3ODY2OCwgMTI0NDIsIDYxOTMsIDk3OTEsIDEyNzk3NiwgMCwgNDI1MTYsIDcyMjgsIAorICAgIDc1NTksIDc0ODAzLCA3ODQ2OCwgNzg3MywgMTEzOTksIDExOTIxOSwgMTk0NjkxLCAxOTQ4NTUsIDE5NDY5MCwgMTk0ODU3LCAKKyAgICAzNjA0LCA5ODMzODgsIDExOTE4OCwgMTI4ODc3LCA3ODU0MCwgNzg1NDEsIDQyNTA3LCAxOTYyLCA0MzMwNSwgNzg0NzYsIAorICAgIDQyNTA1LCAxMTY2MCwgMCwgMjA3MiwgOTIzMTIsIDY5OTUsIDc0MTczLCA1NDM3LCA3NDE3NCwgMTA2NjksIDg3MDIsIAorICAgIDc5NjQsIDkyMzUyLCAwLCAxOTksIDE5NDg0MywgNDEwNSwgMTk0ODQ1LCAxOTQ2OTksIDE5NDg0NywgMTk0NzEwLCAKKyAgICAxMTk4NzUsIDEzMTQ4LCA3NTYwLCA3ODQ3OSwgOTIyNiwgNzg0ODAsIDE5NTA3MCwgNjQ3MiwgNjU4MTQsIDczOTU0LCAwLCAKKyAgICA0NzI0LCAwLCAwLCA5MTkxLCAwLCA2NDQzMiwgOTgzNTUyLCAwLCAxOTUwMjQsIDEwMTk2LCA3ODg2LCAwLCA2NTg1LCAwLCAKKyAgICA2NjgwLCAxOTUwNDIsIDAsIDE5NTA1MSwgNjY3OSwgNzQ0MTIsIDkyMjUxLCAxOTQ4NjYsIDc0NDIxLCAxMTM4MiwgCisgICAgOTgzMzY2LCA5ODMzNzIsIDEyNzg5MSwgMTI3NDg0LCAxOTQ4MzMsIDE5NDgzMiwgNjY4MSwgMTI3NDgyLCAxMjY5MywgCisgICAgMTk0ODM2LCA0MjcyNywgMTk0ODM4LCAxMjgyNTIsIDc4MTk1LCA2NTQ0MiwgMTE5NjEwLCA2OTczMywgOTk4OSwgNDMyNDgsIAorICAgIDY2MjQ4LCAxOTQ4MTYsIDAsIDE5NDgxOCwgMTI4ODQ1LCAxOTQ4MjAsIDE5NDgxOSwgNTI5NywgNzA0MiwgMTMyODQsIAorICAgIDYxMTIsIDc5NjgsIDE5NDgyNSwgNzM5MjcsIDkyNDQ0LCAxOTQ3MzYsIDY1NzQ2LCAxMjc0NzYsIDc0NDA5LCA3NDM4OSwgCisgICAgMTI4Njk2LCA0MzQyLCA0MjgzOSwgMTk0ODMxLCAxNjc3LCAwLCAwLCAxOTQ4MDYsIDkxNzg1NSwgMTEwOTEsIDExMDExLCAKKyAgICAyNzE5LCAwLCAwLCAxMTk1OTUsIDEwMTYwLCAwLCAwLCA3NTg1LCA2NTE2OSwgMjA1MiwgNDMwOCwgOTIxNzQsIDc0MTc3LCAKKyAgICA3NTA1LCA1NDMsIDY0OTE2LCA2NDczNiwgMCwgMCwgNjQ2NTUsIDAsIDExODkyMiwgMjA2NCwgMCwgNDMxNTgsIDc5MDIsIDAsIAorICAgIDY1MjY1LCAxOTQ2MzksIDAsIDEyNzE3MCwgMCwgMCwgMCwgMCwgMTI5OTQsIDkyNzI4LCAxMDgyOCwgOTgzNjc1LCA2MjI4LCAKKyAgICA0MzA3LCAzNDgyLCAxMjg1MjcsIDAsIDAsIDAsIDUwNiwgNzQ1NzMsIDQxMTk0LCA2NTczNSwgMjA1NSwgNDMyNTUsIAorICAgIDQxMTk1LCAwLCA4MTY5LCA5ODM0MTUsIDg4NDEsIDAsIDUxNiwgMCwgMjA2MywgMTE5MDUxLCAzNCwgMTI4ODUwLCAKKyAgICAxMjAxODYsIDExNTA0LCAxNjEyLCA3NDMzMywgMTIwMTgyLCA3NDUyMCwgNzQzMDgsIDEyMDAxLCAxMjAxNzgsIDEwMjQyLCAKKyAgICA2NDU2NCwgMTIwMTc5LCAxMjAxNzQsIDY1ODQsIDc3NDksIDExMDM3LCAwLCAxNzU4LCAwLCAxMDY2NywgMTA1NjAsIAorICAgIDEyMDE5NywgOTI1OTMsIDE5MzUsIDExNTE3LCAxMjAxOTMsIDEyMDE5NiwgMTIwMTk1LCAxOTMxLCAxMjAxODksIDc0ODM5LCAKKyAgICAxMjAxOTEsIDEyMTcsIDY0NzAyLCAxMjY0MywgODI1LCAxMjc4MzgsIDE5NDkwNSwgMTIyOTQsIDkyNDI4LCA3ODgzNCwgCisgICAgOTEzOCwgNzg4MzEsIDc4ODMzLCAxMjYzMSwgNzg4MjksIDExMDgwLCA3NDU1NCwgNjQwMDAsIDU1OTEsIDEyMzksIDAsIAorICAgIDExMzEzLCAwLCAzNDAzLCAwLCAwLCA2NDM2NCwgOTIyNjksIDAsIDc0NTgyLCA4OTk4LCAxMjk4OCwgMCwgOTE1MiwgCisgICAgOTgzNTg0LCAwLCAxOTQ4OTgsIDY3NTg5LCA0MTg1MCwgNjQyOTAsIDM0MzMsIDkyMzkzLCAxMjYxNSwgMTU5NCwgNDIxOTIsIAorICAgIDY5MTQsIDY3NjAzLCAwLCAxMTk1NjksIDc0NTY1LCA0MTM1MywgNjc2MDIsIDY3NjExLCA0MzM3LCAwLCAxMjcyOTYsIDkxOCwgCisgICAgNjUwMzUsIDQxMzUxLCA3NjgxLCAxOTQ5MDAsIDQyNTc3LCA0MTM5MywgMTI2NjgsIDE5NDkwNCwgMjQ3NywgMTI3Mjg1LCAwLCAKKyAgICAxMjczMDEsIDAsIDY3NjA0LCAxOTQ4ODAsIDEyNzIzNSwgNTczLCAxMjcyODIsIDE5NDg4NCwgMTE0MTcsIDE5NDg4NiwgCisgICAgMTE5ODE0LCAxOTQ4ODgsIDY3NTk5LCAwLCAxOTQ4ODksIDY3NjA3LCAxMTQ4MiwgMCwgMzk4MSwgMzM1NywgMCwgNDIyMjMsIAorICAgIDQyMDcsIDEyODgsIDc4ODQyLCA3ODgzOSwgNjg0MTksIDc4ODM3LCAxMTU4OSwgNDIxOTUsIDE5NDg3MiwgMTk0NTk5LCAKKyAgICAxMjcyNjMsIDY0NjAyLCA2NzYxOCwgOTI1MzksIDAsIDQyNzg4LCA2ODQxNiwgNjQ0ODAsIDE5NDg3NSwgODQyMywgMzM0OCwgCisgICAgNDQ4LCA2ODQ3NiwgOTcxNywgMCwgMCwgOTk3LCAwLCAwLCA5MjU3NywgMCwgMTE0NDAsIDExMzc5LCA0MjAwMCwgMTMxMzksIAorICAgIDQyMjIxLCA2NTAxMywgMTI2OTk5LCAxMjc3NjAsIDczNzk2LCAwLCAxMTkyMjgsIDEyMDM1LCAwLCAyODE4LCAwLCAwLCAKKyAgICA3Mzc5MywgMCwgNDE3MiwgMCwgMCwgODM3MywgMTA4NzMsIDEyMTk3LCAwLCAwLCA5MjI2NSwgNjk3MDYsIDAsIDc4MjEwLCAKKyAgICAwLCAxMjgxMTAsIDE5NDg2NSwgMTI2OTgyLCA3NDU2MywgNjQ4MjgsIDExNDE5LCAxOTQ4NjgsIDc2NiwgMTI1NywgMCwgCisgICAgMTE4ODQ1LCAxMTM4MSwgMzI2NSwgNjY2MTcsIDMyNzQsIDEyNzM2NSwgOTgzNDMyLCAwLCAwLCA3NDUyMiwgNDE5ODksIDAsIAorICAgIDAsIDEyODc5OCwgMzI2MywgMCwgNjU2NzIsIDAsIDMyNzAsIDY0NTM5LCAxMTQ4OSwgMCwgMCwgMCwgMCwgOTUwNSwgCisgICAgNjU1MTgsIDE5NDc3NiwgNzU2LCAxOTQ2MDUsIDAsIDAsIDAsIDcyNjEsIDAsIDE4NiwgMCwgMTE5MTU2LCA1NzcwLCAKKyAgICAxMzE3OSwgNjU4MzAsIDEyNjEyLCAxMjk0OSwgNjQ4NTYsIDEyODAwLCAwLCA3NDIwMywgNjQ3MTgsIDAsIDAsIDkyNDM0LCAKKyAgICAxMTg5MjksIDAsIDExNTc4LCAwLCAxMTkyOTYsIDAsIDAsIDAsIDAsIDc0NTY4LCA5MjU0LCAwLCAxNzk0LCAxMjAyMTcsIAorICAgIDY0NTIxLCA1NjI0LCAxMjAyMjAsIDEyMDIyMSwgMTE5OTU4LCAxMjAyMjMsIDM2MTcsIDY2NjM2LCA2NDg4NiwgMTIwMjExLCAKKyAgICAxMjAyMTIsIDEyMDIxMywgMTIwMjE0LCAxODcyLCA2NjUwOCwgMTIwNDY3LCA0MTA3OSwgMTA3NDgsIDU1MDIsIDExOTMzMCwgCisgICAgNDQ1MiwgMCwgOTgzNTA2LCA5MjUyNiwgNDUxMSwgMCwgMCwgNjQ2NzgsIDExNDI1LCAwLCA0MzI0NSwgMTIzMSwgMTk0NzgzLCAKKyAgICAwLCAwLCA5MDAzLCA4MTkyLCAwLCA1MzA1LCA5NjUzLCAxMDYxNiwgODY5NCwgOTU0NiwgMCwgMCwgMTIwNDc4LCAxMjAyMDAsIAorICAgIDY1MjA1LCAxMjAyMDIsIDY0MDYzLCA5ODc4LCA3NDc4MCwgMTE5NjI2LCA3ODIwMiwgNjQwNTgsIDg3OTksIDQyMTMxLCAwLCAKKyAgICA2NDA2MiwgMTAyOCwgNjQwNjAsIDY0MDU5LCA4MzcsIDEwNTY3LCAwLCA0MzEwMywgMCwgMTIwNzU0LCAxMTQyNywgMjkwMiwgCisgICAgNjQwNDMsIDY0MDQyLCA2NjQ2NCwgMTA3NTYsIDAsIDQyNjA2LCA2NDA0NSwgNjQwNDQsIDQzOTc5LCAxMDA3NiwgNjQwNDAsIAorICAgIDQzMDYwLCAxOTQ5NDIsIDEwMzQsIDMzOTIsIDEyNzc3MSwgNDMwOTEsIDY0MDMzLCA2NDAzMiwgNDI3MzUsIDY0MDM4LCAKKyAgICA2NDAzNywgNjQwMzYsIDY0MDM1LCA0MjkxLCAxOTQ5MjgsIDY0MDE1LCA2NDAxNCwgNjQ2ODEsIDE5NDkzMCwgMCwgNzgxNDUsIAorICAgIDAsIDQzMDkwLCAwLCAzNDc2LCA4OTczLCA2NDAxMiwgNDI0NzMsIDY0MDEwLCA2NDAwOCwgNjQwMDcsIDIwMDMsIDc3MDYsIAorICAgIDY0NTE3LCA3ODE1MywgMjUzOCwgNjQwMDksIDIwNCwgMCwgNDgwMiwgNDExMSwgODIzOSwgOTA5OCwgNDgwNSwgNjQwMDEsIAorICAgIDY0MDU3LCA3ODg1LCA3MjQ3LCA2NDA1NCwgMCwgMCwgNDc2NywgOTM0MywgNjQwNDksIDY0MDQ4LCAxMjAwMzQsIDExMzMsIAorICAgIDY0MDUzLCA2NDA1MiwgNDM0NTMsIDY0MDUwLCA0MTM0MCwgMTE4OTc1LCAxOTQ4MzUsIDEwMDA1LCAxMjMyOSwgNDEzMzMsIAorICAgIDAsIDg0ODksIDE5NDIsIDAsIDE5NDgzNCwgNDI1MjAsIDEyODI0OSwgMCwgMCwgMTA3NjAsIDY0MDIzLCA2NDAyMiwgCisgICAgNjQwMjEsIDY1ODIsIDQzNjcwLCAwLCA2NDAyNSwgOTE2NywgNDIxNTEsIDc4MjQ0LCAwLCAyMDI2LCA2NDAxOSwgNjQwMTgsIAorICAgIDY0MDE3LCA2NDAxNiwgMTI3NjgsIDAsIDc1ODIsIDc4MjUyLCA3ODI0OCwgNzc5MTQsIDc4MjQ2LCA3ODI0NywgMCwgCisgICAgNzc5MTUsIDc4NzY2LCA2Nzg4LCAxMzA5NCwgNzc5MjAsIDc1MzIsIDQxNDE0LCA3ODUyMCwgMzE3OSwgNzg1MTgsIDY0NzY5LCAKKyAgICA3ODUxNCwgNzg1MTcsIDExNDYxLCA3NDQ1NCwgMTA3NTEsIDkwNTEsIDEyMDcyMCwgNjcwOCwgMTA1MzUsIDAsIDY4MjE4LCAKKyAgICA1NTI3NCwgMjAwOCwgNjQwMzEsIDY0MDMwLCAyOTQsIDQxODc0LCAwLCAxMjY5OTEsIDY1OTI5LCAwLCAwLCAwLCAwLCAKKyAgICA2NDAyOCwgODE0NiwgNjQwMjYsIDQxNzg4LCAxOTQ4NDQsIDAsIDExODc5NSwgNjM0MywgNDMyNDcsIDExOTg4OCwgMCwgCisgICAgMTE5ODg2LCAxMTk4OTEsIDExOTg5MiwgMTE5ODg5LCAxMTQzMywgMTE5ODk1LCAxMTk4OTYsIDAsIDc4MDEsIDY1NTc4LCAKKyAgICAxOTQ4MzksIDEyOTE1LCA0Mzk2OCwgMzI5NywgOTY5OSwgMTk0OTU1LCAxMTM1LCAwLCAwLCAxMjg1MjUsIDE5OTUsIDY3MjIsIAorICAgIDk4MzY1NywgMCwgMjU1MiwgNDE1NDYsIDYwLCA2ODM5NCwgODY0OSwgNDE1NDksIDc4NDk2LCAwLCAwLCA2NjgyLCAwLCAKKyAgICA3ODY3OSwgNjQ3MTAsIDQxNTQ3LCAwLCAyMDEzLCAxMjgyOTEsIDc4NTMwLCA3ODUzMiwgNzg1MjgsIDc4NTI5LCAxMjgzMiwgCisgICAgNzg0OTMsIDgwODEsIDgzNjIsIDM1MzcsIDExOTkwOCwgOTEzNywgNzE1NSwgODk5OSwgMCwgNzg1MzMsIDM0NjYsIDAsIDAsIAorICAgIDE5OTYsIDAsIDM0NTMsIDYyODIsIDAsIDIwMDIsIDIwMDAsIDEyMDE3NSwgNTM3LCAwLCA0MTc5LCA2NTExOSwgMTk5OCwgMCwgCisgICAgMTg0MiwgMCwgOTI2NzQsIDk2MjgsIDY4NDQ2LCAxMjA4MSwgOTgyNiwgNjQ1MDIsIDE3NjcsIDAsIDAsIDAsIDEyMDIwMSwgCisgICAgOTgzMzgxLCAwLCAwLCAzMDU5LCA0NDAyNCwgMTIwMjA0LCAxMTk5NTMsIDkyNjkzLCAwLCAwLCA5MjQ1MiwgNDEwMCwgOTIwLCAKKyAgICAxODExLCAxMzU1LCAwLCAwLCAzNTkyLCAxMDA3OCwgMCwgMCwgMCwgODU5MiwgNjU4NzAsIDY4MTY0LCAxMjg3OTIsIAorICAgIDEwNzQyLCAwLCA0MjkxOCwgMTk5NCwgOTI4MSwgMzI5NiwgMTI4NjUsIDE5OTcsIDE4OTUsIAogfTsKIAogI2RlZmluZSBjb2RlX21hZ2ljIDQ3CiAjZGVmaW5lIGNvZGVfc2l6ZSAzMjc2OAogI2RlZmluZSBjb2RlX3BvbHkgMzI3NzEKKworc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBhbGlhc2VzX3N0YXJ0ID0gMHhmMDAwMDsKK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgYWxpYXNlc19lbmQgPSAweGYwMDBiOworc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBuYW1lX2FsaWFzZXNbXSA9IHsKKyAgICAweDAxQTIsCisgICAgMHgwMUEzLAorICAgIDB4MENERSwKKyAgICAweDBFOUQsCisgICAgMHgwRTlGLAorICAgIDB4MEVBMywKKyAgICAweDBFQTUsCisgICAgMHgwRkQwLAorICAgIDB4QTAxNSwKKyAgICAweEZFMTgsCisgICAgMHgxRDBDNSwKK307CisKK3R5cGVkZWYgc3RydWN0IE5hbWVkU2VxdWVuY2UgeworICAgIGludCBzZXFsZW47CisgICAgUHlfVUNTMiBzZXFbNF07Cit9IG5hbWVkX3NlcXVlbmNlOworCitzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IG5hbWVkX3NlcXVlbmNlc19zdGFydCA9IDB4ZjAxMDA7CitzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IG5hbWVkX3NlcXVlbmNlc19lbmQgPSAweGYwMmEyOworc3RhdGljIGNvbnN0IG5hbWVkX3NlcXVlbmNlIG5hbWVkX3NlcXVlbmNlc1tdID0geworICAgIHsyLCB7MHgwMTAwLCAweDAzMDB9fSwKKyAgICB7MiwgezB4MDEwMSwgMHgwMzAwfX0sCisgICAgezIsIHsweDAwNDUsIDB4MDMyOX19LAorICAgIHsyLCB7MHgwMDY1LCAweDAzMjl9fSwKKyAgICB7MiwgezB4MDBDOCwgMHgwMzI5fX0sCisgICAgezIsIHsweDAwRTgsIDB4MDMyOX19LAorICAgIHsyLCB7MHgwMEM5LCAweDAzMjl9fSwKKyAgICB7MiwgezB4MDBFOSwgMHgwMzI5fX0sCisgICAgezIsIHsweDAwQ0EsIDB4MDMwNH19LAorICAgIHsyLCB7MHgwMEVBLCAweDAzMDR9fSwKKyAgICB7MiwgezB4MDBDQSwgMHgwMzBDfX0sCisgICAgezIsIHsweDAwRUEsIDB4MDMwQ319LAorICAgIHsyLCB7MHgwMTJBLCAweDAzMDB9fSwKKyAgICB7MiwgezB4MDEyQiwgMHgwMzAwfX0sCisgICAgezMsIHsweDAwNjksIDB4MDMwNywgMHgwMzAxfX0sCisgICAgezMsIHsweDAwNkUsIDB4MDM2MCwgMHgwMDY3fX0sCisgICAgezIsIHsweDAwNEYsIDB4MDMyOX19LAorICAgIHsyLCB7MHgwMDZGLCAweDAzMjl9fSwKKyAgICB7MiwgezB4MDBEMiwgMHgwMzI5fX0sCisgICAgezIsIHsweDAwRjIsIDB4MDMyOX19LAorICAgIHsyLCB7MHgwMEQzLCAweDAzMjl9fSwKKyAgICB7MiwgezB4MDBGMywgMHgwMzI5fX0sCisgICAgezIsIHsweDAwNTMsIDB4MDMyOX19LAorICAgIHsyLCB7MHgwMDczLCAweDAzMjl9fSwKKyAgICB7MiwgezB4MDE2QSwgMHgwMzAwfX0sCisgICAgezIsIHsweDAxNkIsIDB4MDMwMH19LAorICAgIHsyLCB7MHgwMTA0LCAweDAzMDF9fSwKKyAgICB7MiwgezB4MDEwNSwgMHgwMzAxfX0sCisgICAgezIsIHsweDAxMDQsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMTA1LCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDExOCwgMHgwMzAxfX0sCisgICAgezIsIHsweDAxMTksIDB4MDMwMX19LAorICAgIHsyLCB7MHgwMTE4LCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDExOSwgMHgwMzAzfX0sCisgICAgezIsIHsweDAxMTYsIDB4MDMwMX19LAorICAgIHsyLCB7MHgwMTE3LCAweDAzMDF9fSwKKyAgICB7MiwgezB4MDExNiwgMHgwMzAzfX0sCisgICAgezIsIHsweDAxMTcsIDB4MDMwM319LAorICAgIHszLCB7MHgwMDY5LCAweDAzMDcsIDB4MDMwMH19LAorICAgIHszLCB7MHgwMDY5LCAweDAzMDcsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMTJFLCAweDAzMDF9fSwKKyAgICB7MywgezB4MDEyRiwgMHgwMzA3LCAweDAzMDF9fSwKKyAgICB7MiwgezB4MDEyRSwgMHgwMzAzfX0sCisgICAgezMsIHsweDAxMkYsIDB4MDMwNywgMHgwMzAzfX0sCisgICAgezIsIHsweDAwNEEsIDB4MDMwM319LAorICAgIHszLCB7MHgwMDZBLCAweDAzMDcsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMDRDLCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDA2QywgMHgwMzAzfX0sCisgICAgezIsIHsweDAwNEQsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMDZELCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDA1MiwgMHgwMzAzfX0sCisgICAgezIsIHsweDAwNzIsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMTcyLCAweDAzMDF9fSwKKyAgICB7MiwgezB4MDE3MywgMHgwMzAxfX0sCisgICAgezIsIHsweDAxNzIsIDB4MDMwM319LAorICAgIHsyLCB7MHgwMTczLCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDE2QSwgMHgwMzAxfX0sCisgICAgezIsIHsweDAxNkIsIDB4MDMwMX19LAorICAgIHsyLCB7MHgwMTZBLCAweDAzMDN9fSwKKyAgICB7MiwgezB4MDE2QiwgMHgwMzAzfX0sCisgICAgezIsIHsweDAwRTYsIDB4MDMwMH19LAorICAgIHsyLCB7MHgwMjU0LCAweDAzMDB9fSwKKyAgICB7MiwgezB4MDI1NCwgMHgwMzAxfX0sCisgICAgezIsIHsweDAyOEMsIDB4MDMwMH19LAorICAgIHsyLCB7MHgwMjhDLCAweDAzMDF9fSwKKyAgICB7MiwgezB4MDI1OSwgMHgwMzAwfX0sCisgICAgezIsIHsweDAyNTksIDB4MDMwMX19LAorICAgIHsyLCB7MHgwMjVBLCAweDAzMDB9fSwKKyAgICB7MiwgezB4MDI1QSwgMHgwMzAxfX0sCisgICAgezMsIHsweDA5OTUsIDB4MDlDRCwgMHgwOUI3fX0sCisgICAgezIsIHsweDBCOTUsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQjk5LCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEI5QSwgMHgwQkNEfX0sCisgICAgezIsIHsweDBCOUUsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQjlGLCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJBMywgMHgwQkNEfX0sCisgICAgezIsIHsweDBCQTQsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkE4LCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJBQSwgMHgwQkNEfX0sCisgICAgezIsIHsweDBCQUUsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkFGLCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJCMCwgMHgwQkNEfX0sCisgICAgezIsIHsweDBCQjIsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkI1LCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJCNCwgMHgwQkNEfX0sCisgICAgezIsIHsweDBCQjMsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkIxLCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJBOSwgMHgwQkNEfX0sCisgICAgezIsIHsweDBCOUMsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkI2LCAweDBCQ0R9fSwKKyAgICB7MiwgezB4MEJCNywgMHgwQkNEfX0sCisgICAgezIsIHsweDBCQjgsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQkI5LCAweDBCQ0R9fSwKKyAgICB7NCwgezB4MEI5NSwgMHgwQkNELCAweDBCQjcsIDB4MEJDRH19LAorICAgIHsyLCB7MHgwQjk1LCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEI5NSwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCOTUsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQjk1LCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEI5NSwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCOTUsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQjk1LCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEI5NSwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCOTUsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQjk1LCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEI5NSwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCOTksIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQjk5LCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEI5OSwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCOTksIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQjk5LCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEI5OSwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCOTksIDB4MEJDN319LAorICAgIHsyLCB7MHgwQjk5LCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEI5OSwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCOTksIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQjk5LCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEI5QSwgMHgwQkJFfX0sCisgICAgezIsIHsweDBCOUEsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQjlBLCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEI5QSwgMHgwQkMxfX0sCisgICAgezIsIHsweDBCOUEsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQjlBLCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEI5QSwgMHgwQkM3fX0sCisgICAgezIsIHsweDBCOUEsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQjlBLCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEI5QSwgMHgwQkNCfX0sCisgICAgezIsIHsweDBCOUEsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQjlFLCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEI5RSwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCOUUsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQjlFLCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEI5RSwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCOUUsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQjlFLCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEI5RSwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCOUUsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQjlFLCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEI5RSwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCOUYsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQjlGLCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEI5RiwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCOUYsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQjlGLCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEI5RiwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCOUYsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQjlGLCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEI5RiwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCOUYsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQjlGLCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJBMywgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQTMsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkEzLCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJBMywgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQTMsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkEzLCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJBMywgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQTMsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkEzLCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJBMywgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQTMsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQkE0LCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEJBNCwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCQTQsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQkE0LCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEJBNCwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCQTQsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQkE0LCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEJBNCwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCQTQsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQkE0LCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEJBNCwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQTgsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkE4LCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJBOCwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQTgsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkE4LCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJBOCwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQTgsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkE4LCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJBOCwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQTgsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkE4LCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJBQSwgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQUEsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkFBLCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJBQSwgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQUEsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkFBLCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJBQSwgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQUEsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkFBLCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJBQSwgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQUEsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQkFFLCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEJBRSwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCQUUsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQkFFLCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEJBRSwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCQUUsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQkFFLCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEJBRSwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCQUUsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQkFFLCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEJBRSwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQUYsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkFGLCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJBRiwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQUYsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkFGLCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJBRiwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQUYsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkFGLCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJBRiwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQUYsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkFGLCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJCMCwgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQjAsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkIwLCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJCMCwgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQjAsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkIwLCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJCMCwgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQjAsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkIwLCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJCMCwgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQjAsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQkIyLCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEJCMiwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCQjIsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQkIyLCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEJCMiwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCQjIsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQkIyLCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEJCMiwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCQjIsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQkIyLCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEJCMiwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQjUsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkI1LCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJCNSwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQjUsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkI1LCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJCNSwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQjUsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkI1LCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJCNSwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQjUsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkI1LCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJCNCwgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQjQsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkI0LCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJCNCwgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQjQsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkI0LCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJCNCwgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQjQsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkI0LCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJCNCwgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQjQsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQkIzLCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEJCMywgMHgwQkJGfX0sCisgICAgezIsIHsweDBCQjMsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQkIzLCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEJCMywgMHgwQkMyfX0sCisgICAgezIsIHsweDBCQjMsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQkIzLCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEJCMywgMHgwQkM4fX0sCisgICAgezIsIHsweDBCQjMsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQkIzLCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEJCMywgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQjEsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkIxLCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJCMSwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQjEsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkIxLCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJCMSwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQjEsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkIxLCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJCMSwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQjEsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkIxLCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJBOSwgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQTksIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkE5LCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJBOSwgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQTksIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkE5LCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJBOSwgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQTksIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkE5LCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJBOSwgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQTksIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQjlDLCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEI5QywgMHgwQkJGfX0sCisgICAgezIsIHsweDBCOUMsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQjlDLCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEI5QywgMHgwQkMyfX0sCisgICAgezIsIHsweDBCOUMsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQjlDLCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEI5QywgMHgwQkM4fX0sCisgICAgezIsIHsweDBCOUMsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQjlDLCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEI5QywgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQjYsIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkI2LCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJCNiwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQjYsIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkI2LCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJCNiwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQjYsIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkI2LCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJCNiwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQjYsIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkI2LCAweDBCQ0N9fSwKKyAgICB7MiwgezB4MEJCNywgMHgwQkJFfX0sCisgICAgezIsIHsweDBCQjcsIDB4MEJCRn19LAorICAgIHsyLCB7MHgwQkI3LCAweDBCQzB9fSwKKyAgICB7MiwgezB4MEJCNywgMHgwQkMxfX0sCisgICAgezIsIHsweDBCQjcsIDB4MEJDMn19LAorICAgIHsyLCB7MHgwQkI3LCAweDBCQzZ9fSwKKyAgICB7MiwgezB4MEJCNywgMHgwQkM3fX0sCisgICAgezIsIHsweDBCQjcsIDB4MEJDOH19LAorICAgIHsyLCB7MHgwQkI3LCAweDBCQ0F9fSwKKyAgICB7MiwgezB4MEJCNywgMHgwQkNCfX0sCisgICAgezIsIHsweDBCQjcsIDB4MEJDQ319LAorICAgIHsyLCB7MHgwQkI4LCAweDBCQkV9fSwKKyAgICB7MiwgezB4MEJCOCwgMHgwQkJGfX0sCisgICAgezIsIHsweDBCQjgsIDB4MEJDMH19LAorICAgIHsyLCB7MHgwQkI4LCAweDBCQzF9fSwKKyAgICB7MiwgezB4MEJCOCwgMHgwQkMyfX0sCisgICAgezIsIHsweDBCQjgsIDB4MEJDNn19LAorICAgIHsyLCB7MHgwQkI4LCAweDBCQzd9fSwKKyAgICB7MiwgezB4MEJCOCwgMHgwQkM4fX0sCisgICAgezIsIHsweDBCQjgsIDB4MEJDQX19LAorICAgIHsyLCB7MHgwQkI4LCAweDBCQ0J9fSwKKyAgICB7MiwgezB4MEJCOCwgMHgwQkNDfX0sCisgICAgezIsIHsweDBCQjksIDB4MEJCRX19LAorICAgIHsyLCB7MHgwQkI5LCAweDBCQkZ9fSwKKyAgICB7MiwgezB4MEJCOSwgMHgwQkMwfX0sCisgICAgezIsIHsweDBCQjksIDB4MEJDMX19LAorICAgIHsyLCB7MHgwQkI5LCAweDBCQzJ9fSwKKyAgICB7MiwgezB4MEJCOSwgMHgwQkM2fX0sCisgICAgezIsIHsweDBCQjksIDB4MEJDN319LAorICAgIHsyLCB7MHgwQkI5LCAweDBCQzh9fSwKKyAgICB7MiwgezB4MEJCOSwgMHgwQkNBfX0sCisgICAgezIsIHsweDBCQjksIDB4MEJDQn19LAorICAgIHsyLCB7MHgwQkI5LCAweDBCQ0N9fSwKKyAgICB7MywgezB4MEI5NSwgMHgwQkNELCAweDBCQjd9fSwKKyAgICB7NCwgezB4MEI5NSwgMHgwQkNELCAweDBCQjcsIDB4MEJCRX19LAorICAgIHs0LCB7MHgwQjk1LCAweDBCQ0QsIDB4MEJCNywgMHgwQkJGfX0sCisgICAgezQsIHsweDBCOTUsIDB4MEJDRCwgMHgwQkI3LCAweDBCQzB9fSwKKyAgICB7NCwgezB4MEI5NSwgMHgwQkNELCAweDBCQjcsIDB4MEJDMX19LAorICAgIHs0LCB7MHgwQjk1LCAweDBCQ0QsIDB4MEJCNywgMHgwQkMyfX0sCisgICAgezQsIHsweDBCOTUsIDB4MEJDRCwgMHgwQkI3LCAweDBCQzZ9fSwKKyAgICB7NCwgezB4MEI5NSwgMHgwQkNELCAweDBCQjcsIDB4MEJDN319LAorICAgIHs0LCB7MHgwQjk1LCAweDBCQ0QsIDB4MEJCNywgMHgwQkM4fX0sCisgICAgezQsIHsweDBCOTUsIDB4MEJDRCwgMHgwQkI3LCAweDBCQ0F9fSwKKyAgICB7NCwgezB4MEI5NSwgMHgwQkNELCAweDBCQjcsIDB4MEJDQn19LAorICAgIHs0LCB7MHgwQjk1LCAweDBCQ0QsIDB4MEJCNywgMHgwQkNDfX0sCisgICAgezQsIHsweDBCQjYsIDB4MEJDRCwgMHgwQkIwLCAweDBCQzB9fSwKKyAgICB7MiwgezB4MTBFMywgMHgwMzAyfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4MH19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3ODF9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzgyfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4M319LAorICAgIHsyLCB7MHgxN0QyLCAweDE3ODR9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzg1fX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4Nn19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3ODd9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzg4fX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4OX19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OEF9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzhCfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4Q319LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OER9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzhFfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc4Rn19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OTB9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzkxfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc5Mn19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OTN9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzk0fX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc5NX19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OTZ9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzk3fX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc5OH19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OTl9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzlBfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc5Qn19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OUN9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxNzlEfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTc5RX19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3OUZ9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxN0EwfX0sCisgICAgezIsIHsweDE3RDIsIDB4MTdBMX19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3QTJ9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxN0E3fX0sCisgICAgezIsIHsweDE3RDIsIDB4MTdBQn19LAorICAgIHsyLCB7MHgxN0QyLCAweDE3QUN9fSwKKyAgICB7MiwgezB4MTdEMiwgMHgxN0FGfX0sCisgICAgezIsIHsweDE3QkIsIDB4MTdDNn19LAorICAgIHsyLCB7MHgxN0I2LCAweDE3QzZ9fSwKKyAgICB7MiwgezB4MzA0QiwgMHgzMDlBfX0sCisgICAgezIsIHsweDMwNEQsIDB4MzA5QX19LAorICAgIHsyLCB7MHgzMDRGLCAweDMwOUF9fSwKKyAgICB7MiwgezB4MzA1MSwgMHgzMDlBfX0sCisgICAgezIsIHsweDMwNTMsIDB4MzA5QX19LAorICAgIHsyLCB7MHgzMEFCLCAweDMwOUF9fSwKKyAgICB7MiwgezB4MzBBRCwgMHgzMDlBfX0sCisgICAgezIsIHsweDMwQUYsIDB4MzA5QX19LAorICAgIHsyLCB7MHgzMEIxLCAweDMwOUF9fSwKKyAgICB7MiwgezB4MzBCMywgMHgzMDlBfX0sCisgICAgezIsIHsweDMwQkIsIDB4MzA5QX19LAorICAgIHsyLCB7MHgzMEM0LCAweDMwOUF9fSwKKyAgICB7MiwgezB4MzBDOCwgMHgzMDlBfX0sCisgICAgezIsIHsweDMxRjcsIDB4MzA5QX19LAorICAgIHsyLCB7MHgwMkU1LCAweDAyRTl9fSwKKyAgICB7MiwgezB4MDJFOSwgMHgwMkU1fX0sCit9OwpkaWZmIC0tZ2l0IGEvTW9kdWxlcy94eGxpbWl0ZWQuYyBiL01vZHVsZXMveHhsaW1pdGVkLmMKaW5kZXggZWM5MjRmMi4uNjYxYjZlMiAxMDA2NDQKLS0tIGEvTW9kdWxlcy94eGxpbWl0ZWQuYworKysgYi9Nb2R1bGVzL3h4bGltaXRlZC5jCkBAIC0xODcsOCArMTg3LDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBudWxsX3JpY2hjb21wYXJlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqb3RoZXIsIGludCBvcCkKIHsKLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKIHN0YXRpYyBQeVR5cGVfU2xvdCBOdWxsX1R5cGVfc2xvdHNbXSA9IHsKZGlmZiAtLWdpdCBhL01vZHVsZXMvemlwaW1wb3J0LmMgYi9Nb2R1bGVzL3ppcGltcG9ydC5jCmluZGV4IGQ4YzNkOGEuLmY4MjJmOTIgMTAwNjQ0Ci0tLSBhL01vZHVsZXMvemlwaW1wb3J0LmMKKysrIGIvTW9kdWxlcy96aXBpbXBvcnQuYwpAQCAtNDksNyArNDksNyBAQAogLyogZm9yd2FyZCBkZWNscyAqLwogc3RhdGljIFB5T2JqZWN0ICpyZWFkX2RpcmVjdG9yeShQeU9iamVjdCAqYXJjaGl2ZSk7CiBzdGF0aWMgUHlPYmplY3QgKmdldF9kYXRhKFB5T2JqZWN0ICphcmNoaXZlLCBQeU9iamVjdCAqdG9jX2VudHJ5KTsKLXN0YXRpYyBQeU9iamVjdCAqZ2V0X21vZHVsZV9jb2RlKFppcEltcG9ydGVyICpzZWxmLCBjaGFyICpmdWxsbmFtZSwKK3N0YXRpYyBQeU9iamVjdCAqZ2V0X21vZHVsZV9jb2RlKFppcEltcG9ydGVyICpzZWxmLCBQeU9iamVjdCAqZnVsbG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBfaXNwYWNrYWdlLCBQeU9iamVjdCAqKnBfbW9kcGF0aCk7CiAKIApAQCAtNjMsMTA5ICs2MywxMDkgQEAKIHN0YXRpYyBpbnQKIHppcGltcG9ydGVyX2luaXQoWmlwSW1wb3J0ZXIgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKLSAgICBQeU9iamVjdCAqcGF0aG9iaiwgKmZpbGVzOwotICAgIFB5X1VOSUNPREUgKnBhdGgsICpwLCAqcHJlZml4LCBidWZbTUFYUEFUSExFTisyXTsKLSAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICBQeU9iamVjdCAqcGF0aCwgKmZpbGVzLCAqdG1wOworICAgIFB5T2JqZWN0ICpmaWxlbmFtZSA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBsZW4sIGZsZW47CisjaWZkZWYgQUxUU0VQCisgICAgX1B5X0lERU5USUZJRVIocmVwbGFjZSk7CisjZW5kaWYKIAogICAgIGlmICghX1B5QXJnX05vS2V5d29yZHMoInppcGltcG9ydGVyKCkiLCBrd2RzKSkKICAgICAgICAgcmV0dXJuIC0xOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPJjp6aXBpbXBvcnRlciIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0RlY29kZXIsICZwYXRob2JqKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTRGVjb2RlciwgJnBhdGgpKQogICAgICAgICByZXR1cm4gLTE7CiAKLSAgICAvKiBjb3B5IHBhdGggdG8gYnVmICovCi0gICAgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHBhdGhvYmopOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocGF0aCkgPT0gLTEpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHBhdGgpOwogICAgIGlmIChsZW4gPT0gMCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoWmlwSW1wb3J0RXJyb3IsICJhcmNoaXZlIHBhdGggaXMgZW1wdHkiKTsKICAgICAgICAgZ290byBlcnJvcjsKICAgICB9Ci0gICAgaWYgKGxlbiA+PSBNQVhQQVRITEVOKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhaaXBJbXBvcnRFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJhcmNoaXZlIHBhdGggdG9vIGxvbmciKTsKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICB9Ci0gICAgUHlfVU5JQ09ERV9zdHJjcHkoYnVmLCBQeVVuaWNvZGVfQVNfVU5JQ09ERShwYXRob2JqKSk7CiAKICNpZmRlZiBBTFRTRVAKLSAgICBmb3IgKHAgPSBidWY7ICpwOyBwKyspIHsKLSAgICAgICAgaWYgKCpwID09IEFMVFNFUCkKLSAgICAgICAgICAgICpwID0gU0VQOwotICAgIH0KKyAgICB0bXAgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHBhdGgsICZQeUlkX3JlcGxhY2UsICJDQyIsIEFMVFNFUCwgU0VQKTsKKyAgICBpZiAoIXRtcCkKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICBQeV9ERUNSRUYocGF0aCk7CisgICAgcGF0aCA9IHRtcDsKICNlbmRpZgogCi0gICAgcGF0aCA9IE5VTEw7Ci0gICAgcHJlZml4ID0gTlVMTDsKKyAgICBmaWxlbmFtZSA9IHBhdGg7CisgICAgUHlfSU5DUkVGKGZpbGVuYW1lKTsKKyAgICBmbGVuID0gbGVuOwogICAgIGZvciAoOzspIHsKICAgICAgICAgc3RydWN0IHN0YXQgc3RhdGJ1ZjsKICAgICAgICAgaW50IHJ2OwogCi0gICAgICAgIGlmIChwYXRob2JqID09IE5VTEwpIHsKLSAgICAgICAgICAgIHBhdGhvYmogPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoYnVmLCBsZW4pOwotICAgICAgICAgICAgaWYgKHBhdGhvYmogPT0gTlVMTCkKLSAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICB9Ci0gICAgICAgIHJ2ID0gX1B5X3N0YXQocGF0aG9iaiwgJnN0YXRidWYpOworICAgICAgICBydiA9IF9QeV9zdGF0KGZpbGVuYW1lLCAmc3RhdGJ1Zik7CisgICAgICAgIGlmIChydiA9PSAtMikKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIGlmIChydiA9PSAwKSB7CiAgICAgICAgICAgICAvKiBpdCBleGlzdHMgKi8KLSAgICAgICAgICAgIGlmIChTX0lTUkVHKHN0YXRidWYuc3RfbW9kZSkpCi0gICAgICAgICAgICAgICAgLyogaXQncyBhIGZpbGUgKi8KLSAgICAgICAgICAgICAgICBwYXRoID0gYnVmOworICAgICAgICAgICAgaWYgKCFTX0lTUkVHKHN0YXRidWYuc3RfbW9kZSkpCisgICAgICAgICAgICAgICAgLyogaXQncyBhIG5vdCBmaWxlICovCisgICAgICAgICAgICAgICAgUHlfQ0xFQVIoZmlsZW5hbWUpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSAgICAgICAgZWxzZSBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIFB5X0NMRUFSKGZpbGVuYW1lKTsKICAgICAgICAgLyogYmFjayB1cCBvbmUgcGF0aCBlbGVtZW50ICovCi0gICAgICAgIHAgPSBQeV9VTklDT0RFX3N0cnJjaHIoYnVmLCBTRVApOwotICAgICAgICBpZiAocHJlZml4ICE9IE5VTEwpCi0gICAgICAgICAgICAqcHJlZml4ID0gU0VQOwotICAgICAgICBpZiAocCA9PSBOVUxMKQorICAgICAgICBmbGVuID0gUHlVbmljb2RlX0ZpbmRDaGFyKHBhdGgsIFNFUCwgMCwgZmxlbiwgLTEpOworICAgICAgICBpZiAoZmxlbiA9PSAtMSkKICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAqcCA9ICdcMCc7Ci0gICAgICAgIGxlbiA9IHAgLSBidWY7Ci0gICAgICAgIHByZWZpeCA9IHA7Ci0gICAgICAgIFB5X0NMRUFSKHBhdGhvYmopOworICAgICAgICBmaWxlbmFtZSA9IFB5VW5pY29kZV9TdWJzdHJpbmcocGF0aCwgMCwgZmxlbik7CiAgICAgfQotICAgIGlmIChwYXRoID09IE5VTEwpIHsKKyAgICBpZiAoZmlsZW5hbWUgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoWmlwSW1wb3J0RXJyb3IsICJub3QgYSBaaXAgZmlsZSIpOwogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KIAotICAgIGZpbGVzID0gUHlEaWN0X0dldEl0ZW0oemlwX2RpcmVjdG9yeV9jYWNoZSwgcGF0aG9iaik7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShmaWxlbmFtZSkgPCAwKQorICAgICAgICBnb3RvIGVycm9yOworCisgICAgZmlsZXMgPSBQeURpY3RfR2V0SXRlbSh6aXBfZGlyZWN0b3J5X2NhY2hlLCBmaWxlbmFtZSk7CiAgICAgaWYgKGZpbGVzID09IE5VTEwpIHsKLSAgICAgICAgZmlsZXMgPSByZWFkX2RpcmVjdG9yeShwYXRob2JqKTsKKyAgICAgICAgZmlsZXMgPSByZWFkX2RpcmVjdG9yeShmaWxlbmFtZSk7CiAgICAgICAgIGlmIChmaWxlcyA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtKHppcF9kaXJlY3RvcnlfY2FjaGUsIHBhdGhvYmosIGZpbGVzKSAhPSAwKQorICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW0oemlwX2RpcmVjdG9yeV9jYWNoZSwgZmlsZW5hbWUsIGZpbGVzKSAhPSAwKQogICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CiAgICAgZWxzZQogICAgICAgICBQeV9JTkNSRUYoZmlsZXMpOwogICAgIHNlbGYtPmZpbGVzID0gZmlsZXM7CiAKLSAgICBzZWxmLT5hcmNoaXZlID0gcGF0aG9iajsKLSAgICBwYXRob2JqID0gTlVMTDsKKyAgICAvKiBUcmFuc2ZlciByZWZlcmVuY2UgKi8KKyAgICBzZWxmLT5hcmNoaXZlID0gZmlsZW5hbWU7CisgICAgZmlsZW5hbWUgPSBOVUxMOwogCi0gICAgaWYgKHByZWZpeCAhPSBOVUxMKSB7Ci0gICAgICAgIHByZWZpeCsrOwotICAgICAgICBsZW4gPSBQeV9VTklDT0RFX3N0cmxlbihwcmVmaXgpOwotICAgICAgICBpZiAocHJlZml4W2xlbi0xXSAhPSBTRVApIHsKKyAgICAvKiBDaGVjayBpZiB0aGVyZSBpcyBhIHByZWZpeCBkaXJlY3RvcnkgZm9sbG93aW5nIHRoZSBmaWxlbmFtZS4gKi8KKyAgICBpZiAoZmxlbiAhPSBsZW4pIHsKKyAgICAgICAgdG1wID0gUHlVbmljb2RlX1N1YnN0cmluZyhwYXRoLCBmbGVuKzEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgocGF0aCkpOworICAgICAgICBpZiAodG1wID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICBzZWxmLT5wcmVmaXggPSB0bXA7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRF9DSEFSKHBhdGgsIGxlbi0xKSAhPSBTRVApIHsKICAgICAgICAgICAgIC8qIGFkZCB0cmFpbGluZyBTRVAgKi8KLSAgICAgICAgICAgIHByZWZpeFtsZW5dID0gU0VQOwotICAgICAgICAgICAgcHJlZml4W2xlbiArIDFdID0gJ1wwJzsKLSAgICAgICAgICAgIGxlbisrOworICAgICAgICAgICAgdG1wID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVJWMiLCBzZWxmLT5wcmVmaXgsIFNFUCk7CisgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpCisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzZWxmLT5wcmVmaXgpOworICAgICAgICAgICAgc2VsZi0+cHJlZml4ID0gdG1wOwogICAgICAgICB9CiAgICAgfQogICAgIGVsc2UKLSAgICAgICAgbGVuID0gMDsKLSAgICBzZWxmLT5wcmVmaXggPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocHJlZml4LCBsZW4pOwotICAgIGlmIChzZWxmLT5wcmVmaXggPT0gTlVMTCkKLSAgICAgICAgZ290byBlcnJvcjsKLQorICAgICAgICBzZWxmLT5wcmVmaXggPSBQeVVuaWNvZGVfTmV3KDAsIDApOworICAgIFB5X0RFQ1JFRihwYXRoKTsKICAgICByZXR1cm4gMDsKIAogZXJyb3I6Ci0gICAgUHlfWERFQ1JFRihwYXRob2JqKTsKKyAgICBQeV9ERUNSRUYocGF0aCk7CisgICAgUHlfWERFQ1JFRihmaWxlbmFtZSk7CiAgICAgcmV0dXJuIC0xOwogfQogCkBAIC0xOTMsNyArMTkzLDcgQEAKIHsKICAgICBpZiAoc2VsZi0+YXJjaGl2ZSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoIjx6aXBpbXBvcnRlciBvYmplY3QgXCI/Pz9cIj4iKTsKLSAgICBlbHNlIGlmIChzZWxmLT5wcmVmaXggIT0gTlVMTCAmJiBQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZi0+cHJlZml4KSAhPSAwKQorICAgIGVsc2UgaWYgKHNlbGYtPnByZWZpeCAhPSBOVUxMICYmIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYtPnByZWZpeCkgIT0gMCkKICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCI8emlwaW1wb3J0ZXIgb2JqZWN0IFwiJVUlYyVVXCI+IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPmFyY2hpdmUsIFNFUCwgc2VsZi0+cHJlZml4KTsKICAgICBlbHNlCkBAIC0yMDIsNDkgKzIwMiw1NCBAQAogfQogCiAvKiByZXR1cm4gZnVsbG5hbWUuc3BsaXQoIi4iKVstMV0gKi8KLXN0YXRpYyBjaGFyICoKLWdldF9zdWJuYW1lKGNoYXIgKmZ1bGxuYW1lKQorc3RhdGljIFB5T2JqZWN0ICoKK2dldF9zdWJuYW1lKFB5T2JqZWN0ICpmdWxsbmFtZSkKIHsKLSAgICBjaGFyICpzdWJuYW1lID0gc3RycmNocihmdWxsbmFtZSwgJy4nKTsKLSAgICBpZiAoc3VibmFtZSA9PSBOVUxMKQotICAgICAgICBzdWJuYW1lID0gZnVsbG5hbWU7Ci0gICAgZWxzZQotICAgICAgICBzdWJuYW1lKys7Ci0gICAgcmV0dXJuIHN1Ym5hbWU7CisgICAgUHlfc3NpemVfdCBsZW4sIGRvdDsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGZ1bGxuYW1lKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGZ1bGxuYW1lKTsKKyAgICBkb3QgPSBQeVVuaWNvZGVfRmluZENoYXIoZnVsbG5hbWUsICcuJywgMCwgbGVuLCAtMSk7CisgICAgaWYgKGRvdCA9PSAtMSkgeworICAgICAgICBQeV9JTkNSRUYoZnVsbG5hbWUpOworICAgICAgICByZXR1cm4gZnVsbG5hbWU7CisgICAgfSBlbHNlCisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfU3Vic3RyaW5nKGZ1bGxuYW1lLCBkb3QrMSwgbGVuKTsKIH0KIAogLyogR2l2ZW4gYSAoc3ViKW1vZHVsZW5hbWUsIHdyaXRlIHRoZSBwb3RlbnRpYWwgZmlsZSBwYXRoIGluIHRoZQogICAgYXJjaGl2ZSAod2l0aG91dCBleHRlbnNpb24pIHRvIHRoZSBwYXRoIGJ1ZmZlci4gUmV0dXJuIHRoZQotICAgbGVuZ3RoIG9mIHRoZSByZXN1bHRpbmcgc3RyaW5nLiAqLwotc3RhdGljIGludAotbWFrZV9maWxlbmFtZShQeU9iamVjdCAqcHJlZml4X29iaiwgY2hhciAqbmFtZSwgY2hhciAqcGF0aCwgc2l6ZV90IHBhdGhzaXplKQorICAgbGVuZ3RoIG9mIHRoZSByZXN1bHRpbmcgc3RyaW5nLgorCisgICByZXR1cm4gc2VsZi5wcmVmaXggKyBuYW1lLnJlcGxhY2UoJy4nLCBvcy5zZXApICovCitzdGF0aWMgUHlPYmplY3QqCittYWtlX2ZpbGVuYW1lKFB5T2JqZWN0ICpwcmVmaXgsIFB5T2JqZWN0ICpuYW1lKQogewotICAgIHNpemVfdCBsZW47Ci0gICAgY2hhciAqcDsKLSAgICBQeU9iamVjdCAqcHJlZml4OworICAgIFB5T2JqZWN0ICpwYXRob2JqOworICAgIFB5X1VDUzQgKnAsICpidWY7CisgICAgUHlfc3NpemVfdCBsZW47CiAKLSAgICBwcmVmaXggPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KHByZWZpeF9vYmopOwotICAgIGlmIChwcmVmaXggPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIGxlbiA9IFB5Qnl0ZXNfR0VUX1NJWkUocHJlZml4KTsKLQotICAgIC8qIHNlbGYucHJlZml4ICsgbmFtZSBbKyBTRVAgKyAiX19pbml0X18iXSArICIucHlbY29dIiAqLwotICAgIGlmIChsZW4gKyBzdHJsZW4obmFtZSkgKyAxMyA+PSBwYXRoc2l6ZSAtIDEpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFppcEltcG9ydEVycm9yLCAicGF0aCB0b28gbG9uZyIpOwotICAgICAgICBQeV9ERUNSRUYocHJlZml4KTsKLSAgICAgICAgcmV0dXJuIC0xOworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHByZWZpeCkgKyBQeVVuaWNvZGVfR0VUX0xFTkdUSChuYW1lKSArIDE7CisgICAgcCA9IGJ1ZiA9IFB5TWVtX01hbGxvYyhzaXplb2YoUHlfVUNTNCkgKiBsZW4pOworICAgIGlmIChidWYgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBzdHJjcHkocGF0aCwgUHlCeXRlc19BU19TVFJJTkcocHJlZml4KSk7Ci0gICAgUHlfREVDUkVGKHByZWZpeCk7Ci0gICAgc3RyY3B5KHBhdGggKyBsZW4sIG5hbWUpOwotICAgIGZvciAocCA9IHBhdGggKyBsZW47ICpwOyBwKyspIHsKKyAgICBpZiAoIVB5VW5pY29kZV9Bc1VDUzQocHJlZml4LCBwLCBsZW4sIDApKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBwICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHByZWZpeCk7CisgICAgbGVuIC09IFB5VW5pY29kZV9HRVRfTEVOR1RIKHByZWZpeCk7CisgICAgaWYgKCFQeVVuaWNvZGVfQXNVQ1M0KG5hbWUsIHAsIGxlbiwgMSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGZvciAoOyAqcDsgcCsrKSB7CiAgICAgICAgIGlmICgqcCA9PSAnLicpCiAgICAgICAgICAgICAqcCA9IFNFUDsKICAgICB9Ci0gICAgbGVuICs9IHN0cmxlbihuYW1lKTsKLSAgICBhc3NlcnQobGVuIDwgSU5UX01BWCk7Ci0gICAgcmV0dXJuIChpbnQpbGVuOworICAgIHBhdGhvYmogPSBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKFB5VW5pY29kZV80QllURV9LSU5ELAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZiwgcC1idWYpOworICAgIFB5TWVtX0ZyZWUoYnVmKTsKKyAgICByZXR1cm4gcGF0aG9iajsKIH0KIAogZW51bSB6aV9tb2R1bGVfaW5mbyB7CkBAIC0yNTYsMjcgKzI2MSwzOCBAQAogCiAvKiBSZXR1cm4gc29tZSBpbmZvcm1hdGlvbiBhYm91dCBhIG1vZHVsZS4gKi8KIHN0YXRpYyBlbnVtIHppX21vZHVsZV9pbmZvCi1nZXRfbW9kdWxlX2luZm8oWmlwSW1wb3J0ZXIgKnNlbGYsIGNoYXIgKmZ1bGxuYW1lKQorZ2V0X21vZHVsZV9pbmZvKFppcEltcG9ydGVyICpzZWxmLCBQeU9iamVjdCAqZnVsbG5hbWUpCiB7Ci0gICAgY2hhciAqc3VibmFtZSwgcGF0aFtNQVhQQVRITEVOICsgMV07Ci0gICAgaW50IGxlbjsKKyAgICBQeU9iamVjdCAqc3VibmFtZTsKKyAgICBQeU9iamVjdCAqcGF0aCwgKmZ1bGxwYXRoLCAqaXRlbTsKICAgICBzdHJ1Y3Qgc3RfemlwX3NlYXJjaG9yZGVyICp6c287CiAKICAgICBzdWJuYW1lID0gZ2V0X3N1Ym5hbWUoZnVsbG5hbWUpOworICAgIGlmIChzdWJuYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybiBNSV9FUlJPUjsKIAotICAgIGxlbiA9IG1ha2VfZmlsZW5hbWUoc2VsZi0+cHJlZml4LCBzdWJuYW1lLCBwYXRoLCBzaXplb2YocGF0aCkpOwotICAgIGlmIChsZW4gPCAwKQorICAgIHBhdGggPSBtYWtlX2ZpbGVuYW1lKHNlbGYtPnByZWZpeCwgc3VibmFtZSk7CisgICAgUHlfREVDUkVGKHN1Ym5hbWUpOworICAgIGlmIChwYXRoID09IE5VTEwpCiAgICAgICAgIHJldHVybiBNSV9FUlJPUjsKIAogICAgIGZvciAoenNvID0gemlwX3NlYXJjaG9yZGVyOyAqenNvLT5zdWZmaXg7IHpzbysrKSB7Ci0gICAgICAgIHN0cmNweShwYXRoICsgbGVuLCB6c28tPnN1ZmZpeCk7Ci0gICAgICAgIGlmIChQeURpY3RfR2V0SXRlbVN0cmluZyhzZWxmLT5maWxlcywgcGF0aCkgIT0gTlVMTCkgeworICAgICAgICBmdWxscGF0aCA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlVSVzIiwgcGF0aCwgenNvLT5zdWZmaXgpOworICAgICAgICBpZiAoZnVsbHBhdGggPT0gTlVMTCkgeworICAgICAgICAgICAgUHlfREVDUkVGKHBhdGgpOworICAgICAgICAgICAgcmV0dXJuIE1JX0VSUk9SOworICAgICAgICB9CisgICAgICAgIGl0ZW0gPSBQeURpY3RfR2V0SXRlbShzZWxmLT5maWxlcywgZnVsbHBhdGgpOworICAgICAgICBQeV9ERUNSRUYoZnVsbHBhdGgpOworICAgICAgICBpZiAoaXRlbSAhPSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYocGF0aCk7CiAgICAgICAgICAgICBpZiAoenNvLT50eXBlICYgSVNfUEFDS0FHRSkKICAgICAgICAgICAgICAgICByZXR1cm4gTUlfUEFDS0FHRTsKICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICByZXR1cm4gTUlfTU9EVUxFOwogICAgICAgICB9CiAgICAgfQorICAgIFB5X0RFQ1JFRihwYXRoKTsKICAgICByZXR1cm4gTUlfTk9UX0ZPVU5EOwogfQogCkBAIC0yODcsMTAgKzMwMywxMCBAQAogewogICAgIFppcEltcG9ydGVyICpzZWxmID0gKFppcEltcG9ydGVyICopb2JqOwogICAgIFB5T2JqZWN0ICpwYXRoID0gTlVMTDsKLSAgICBjaGFyICpmdWxsbmFtZTsKKyAgICBQeU9iamVjdCAqZnVsbG5hbWU7CiAgICAgZW51bSB6aV9tb2R1bGVfaW5mbyBtaTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAic3xPOnppcGltcG9ydGVyLmZpbmRfbW9kdWxlIiwKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlV8Tzp6aXBpbXBvcnRlci5maW5kX21vZHVsZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZmdWxsbmFtZSwgJnBhdGgpKQogICAgICAgICByZXR1cm4gTlVMTDsKIApAQCAtMzExLDE5ICszMjcsMjEgQEAKIHsKICAgICBaaXBJbXBvcnRlciAqc2VsZiA9IChaaXBJbXBvcnRlciAqKW9iajsKICAgICBQeU9iamVjdCAqY29kZSA9IE5VTEwsICptb2QsICpkaWN0OwotICAgIGNoYXIgKmZ1bGxuYW1lOwotICAgIFB5T2JqZWN0ICptb2RwYXRoID0gTlVMTCwgKm1vZHBhdGhfYnl0ZXM7CisgICAgUHlPYmplY3QgKmZ1bGxuYW1lOworICAgIFB5T2JqZWN0ICptb2RwYXRoID0gTlVMTDsKICAgICBpbnQgaXNwYWNrYWdlOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzOnppcGltcG9ydGVyLmxvYWRfbW9kdWxlIiwKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6emlwaW1wb3J0ZXIubG9hZF9tb2R1bGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAmZnVsbG5hbWUpKQogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGZ1bGxuYW1lKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBjb2RlID0gZ2V0X21vZHVsZV9jb2RlKHNlbGYsIGZ1bGxuYW1lLCAmaXNwYWNrYWdlLCAmbW9kcGF0aCk7CiAgICAgaWYgKGNvZGUgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKIAotICAgIG1vZCA9IFB5SW1wb3J0X0FkZE1vZHVsZShmdWxsbmFtZSk7CisgICAgbW9kID0gUHlJbXBvcnRfQWRkTW9kdWxlT2JqZWN0KGZ1bGxuYW1lKTsKICAgICBpZiAobW9kID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgZGljdCA9IFB5TW9kdWxlX0dldERpY3QobW9kKTsKQEAgLTMzNiwxNyArMzU0LDE3IEBACiAgICAgICAgIC8qIGFkZCBfX3BhdGhfXyB0byB0aGUgbW9kdWxlICpiZWZvcmUqIHRoZSBjb2RlIGdldHMKICAgICAgICAgICAgZXhlY3V0ZWQgKi8KICAgICAgICAgUHlPYmplY3QgKnBrZ3BhdGgsICpmdWxscGF0aDsKLSAgICAgICAgY2hhciAqc3VibmFtZSA9IGdldF9zdWJuYW1lKGZ1bGxuYW1lKTsKKyAgICAgICAgUHlPYmplY3QgKnN1Ym5hbWUgPSBnZXRfc3VibmFtZShmdWxsbmFtZSk7CiAgICAgICAgIGludCBlcnI7CiAKLSAgICAgICAgZnVsbHBhdGggPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVUlYyVVJXMiLAorICAgICAgICBmdWxscGF0aCA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlVSVjJVUlVSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPmFyY2hpdmUsIFNFUCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+cHJlZml4LCBzdWJuYW1lKTsKKyAgICAgICAgUHlfREVDUkVGKHN1Ym5hbWUpOwogICAgICAgICBpZiAoZnVsbHBhdGggPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAKLSAgICAgICAgcGtncGF0aCA9IFB5X0J1aWxkVmFsdWUoIltPXSIsIGZ1bGxwYXRoKTsKLSAgICAgICAgUHlfREVDUkVGKGZ1bGxwYXRoKTsKKyAgICAgICAgcGtncGF0aCA9IFB5X0J1aWxkVmFsdWUoIltOXSIsIGZ1bGxwYXRoKTsKICAgICAgICAgaWYgKHBrZ3BhdGggPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIGVyciA9IFB5RGljdF9TZXRJdGVtU3RyaW5nKGRpY3QsICJfX3BhdGhfXyIsIHBrZ3BhdGgpOwpAQCAtMzU0LDE4ICszNzIsMTMgQEAKICAgICAgICAgaWYgKGVyciAhPSAwKQogICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICB9Ci0gICAgbW9kcGF0aF9ieXRlcyA9IFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQobW9kcGF0aCk7Ci0gICAgaWYgKG1vZHBhdGhfYnl0ZXMgPT0gTlVMTCkKLSAgICAgICAgZ290byBlcnJvcjsKLSAgICBtb2QgPSBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZUV4KGZ1bGxuYW1lLCBjb2RlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcobW9kcGF0aF9ieXRlcykpOwotICAgIFB5X0RFQ1JFRihtb2RwYXRoX2J5dGVzKTsKKyAgICBtb2QgPSBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZU9iamVjdChmdWxsbmFtZSwgY29kZSwgbW9kcGF0aCwgTlVMTCk7CiAgICAgUHlfQ0xFQVIoY29kZSk7CiAgICAgaWYgKG1vZCA9PSBOVUxMKQogICAgICAgICBnb3RvIGVycm9yOwogCiAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoImltcG9ydCAlcyAjIGxvYWRlZCBmcm9tIFppcCAlVVxuIiwKKyAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCJpbXBvcnQgJVUgIyBsb2FkZWQgZnJvbSBaaXAgJVVcbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsbmFtZSwgbW9kcGF0aCk7CiAgICAgUHlfREVDUkVGKG1vZHBhdGgpOwogICAgIHJldHVybiBtb2Q7CkBAIC0zODAsMTIgKzM5MywxMCBAQAogemlwaW1wb3J0ZXJfZ2V0X2ZpbGVuYW1lKFB5T2JqZWN0ICpvYmosIFB5T2JqZWN0ICphcmdzKQogewogICAgIFppcEltcG9ydGVyICpzZWxmID0gKFppcEltcG9ydGVyICopb2JqOwotICAgIFB5T2JqZWN0ICpjb2RlOwotICAgIGNoYXIgKmZ1bGxuYW1lOwotICAgIFB5T2JqZWN0ICptb2RwYXRoOworICAgIFB5T2JqZWN0ICpmdWxsbmFtZSwgKmNvZGUsICptb2RwYXRoOwogICAgIGludCBpc3BhY2thZ2U7CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInM6emlwaW1wb3J0ZXIuZ2V0X2ZpbGVuYW1lIiwKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6emlwaW1wb3J0ZXIuZ2V0X2ZpbGVuYW1lIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZ1bGxuYW1lKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKQEAgLTQwNCwxMCArNDE1LDEwIEBACiB6aXBpbXBvcnRlcl9pc19wYWNrYWdlKFB5T2JqZWN0ICpvYmosIFB5T2JqZWN0ICphcmdzKQogewogICAgIFppcEltcG9ydGVyICpzZWxmID0gKFppcEltcG9ydGVyICopb2JqOwotICAgIGNoYXIgKmZ1bGxuYW1lOworICAgIFB5T2JqZWN0ICpmdWxsbmFtZTsKICAgICBlbnVtIHppX21vZHVsZV9pbmZvIG1pOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzOnppcGltcG9ydGVyLmlzX3BhY2thZ2UiLAorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVTp6aXBpbXBvcnRlci5pc19wYWNrYWdlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZ1bGxuYW1lKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKQEAgLTQxNSw3MSArNDI2LDcwIEBACiAgICAgaWYgKG1pID09IE1JX0VSUk9SKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAobWkgPT0gTUlfTk9UX0ZPVU5EKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChaaXBJbXBvcnRFcnJvciwgImNhbid0IGZpbmQgbW9kdWxlICclcyciLCBmdWxsbmFtZSk7CisgICAgICAgIFB5RXJyX0Zvcm1hdChaaXBJbXBvcnRFcnJvciwgImNhbid0IGZpbmQgbW9kdWxlICVSIiwgZnVsbG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZyhtaSA9PSBNSV9QQUNLQUdFKTsKIH0KIAorCiBzdGF0aWMgUHlPYmplY3QgKgogemlwaW1wb3J0ZXJfZ2V0X2RhdGEoUHlPYmplY3QgKm9iaiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgWmlwSW1wb3J0ZXIgKnNlbGYgPSAoWmlwSW1wb3J0ZXIgKilvYmo7Ci0gICAgUHlPYmplY3QgKnBhdGhvYmosICprZXk7Ci0gICAgY29uc3QgUHlfVU5JQ09ERSAqcGF0aDsKKyAgICBQeU9iamVjdCAqcGF0aCwgKmtleTsKICNpZmRlZiBBTFRTRVAKLSAgICBQeV9VTklDT0RFICpwLCBidWZbTUFYUEFUSExFTiArIDFdOworICAgIF9QeV9JREVOVElGSUVSKHJlcGxhY2UpOwogI2VuZGlmCi0gICAgUHlfVU5JQ09ERSAqYXJjaGl2ZTsKICAgICBQeU9iamVjdCAqdG9jX2VudHJ5OwotICAgIFB5X3NzaXplX3QgcGF0aF9sZW4sIGxlbjsKKyAgICBQeV9zc2l6ZV90IHBhdGhfc3RhcnQsIHBhdGhfbGVuLCBsZW47CiAKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6emlwaW1wb3J0ZXIuZ2V0X2RhdGEiLCAmcGF0aG9iaikpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOnppcGltcG9ydGVyLmdldF9kYXRhIiwgJnBhdGgpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHBhdGhfbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHBhdGhvYmopOwotICAgIHBhdGggPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShwYXRob2JqKTsKICNpZmRlZiBBTFRTRVAKLSAgICBpZiAocGF0aF9sZW4gPj0gTUFYUEFUSExFTikgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoWmlwSW1wb3J0RXJyb3IsICJwYXRoIHRvbyBsb25nIik7CisgICAgcGF0aCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocGF0aCwgJlB5SWRfcmVwbGFjZSwgIkNDIiwgQUxUU0VQLCBTRVApOworICAgIGlmICghcGF0aCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIFB5X1VOSUNPREVfc3RyY3B5KGJ1ZiwgcGF0aCk7Ci0gICAgZm9yIChwID0gYnVmOyAqcDsgcCsrKSB7Ci0gICAgICAgIGlmICgqcCA9PSBBTFRTRVApCi0gICAgICAgICAgICAqcCA9IFNFUDsKLSAgICB9Ci0gICAgcGF0aCA9IGJ1ZjsKKyNlbHNlCisgICAgUHlfSU5DUkVGKHBhdGgpOwogI2VuZGlmCi0gICAgYXJjaGl2ZSA9IFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYtPmFyY2hpdmUpOwotICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShzZWxmLT5hcmNoaXZlKTsKLSAgICBpZiAoKHNpemVfdClsZW4gPCBQeV9VTklDT0RFX3N0cmxlbihwYXRoKSAmJgotICAgICAgICBQeV9VTklDT0RFX3N0cm5jbXAocGF0aCwgYXJjaGl2ZSwgbGVuKSA9PSAwICYmCi0gICAgICAgIHBhdGhbbGVuXSA9PSBTRVApIHsKLSAgICAgICAgcGF0aCArPSBsZW4gKyAxOwotICAgICAgICBwYXRoX2xlbiAtPSBsZW4gKyAxOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocGF0aCkgPT0gLTEpCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICBwYXRoX2xlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHBhdGgpOworCisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZi0+YXJjaGl2ZSk7CisgICAgcGF0aF9zdGFydCA9IDA7CisgICAgaWYgKFB5VW5pY29kZV9UYWlsbWF0Y2gocGF0aCwgc2VsZi0+YXJjaGl2ZSwgMCwgbGVuLCAtMSkKKyAgICAgICAgJiYgUHlVbmljb2RlX1JFQURfQ0hBUihwYXRoLCBsZW4pID09IFNFUCkgeworICAgICAgICBwYXRoX3N0YXJ0ID0gbGVuICsgMTsKICAgICB9CiAKLSAgICBrZXkgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocGF0aCwgcGF0aF9sZW4pOworICAgIGtleSA9IFB5VW5pY29kZV9TdWJzdHJpbmcocGF0aCwgcGF0aF9zdGFydCwgcGF0aF9sZW4pOwogICAgIGlmIChrZXkgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgdG9jX2VudHJ5ID0gUHlEaWN0X0dldEl0ZW0oc2VsZi0+ZmlsZXMsIGtleSk7CiAgICAgaWYgKHRvY19lbnRyeSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX1NldEZyb21FcnJub1dpdGhGaWxlbmFtZU9iamVjdChQeUV4Y19JT0Vycm9yLCBrZXkpOwogICAgICAgICBQeV9ERUNSRUYoa2V5KTsKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQogICAgIFB5X0RFQ1JFRihrZXkpOworICAgIFB5X0RFQ1JFRihwYXRoKTsKICAgICByZXR1cm4gZ2V0X2RhdGEoc2VsZi0+YXJjaGl2ZSwgdG9jX2VudHJ5KTsKKyAgZXJyb3I6CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIHJldHVybiBOVUxMOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogemlwaW1wb3J0ZXJfZ2V0X2NvZGUoUHlPYmplY3QgKm9iaiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgWmlwSW1wb3J0ZXIgKnNlbGYgPSAoWmlwSW1wb3J0ZXIgKilvYmo7Ci0gICAgY2hhciAqZnVsbG5hbWU7CisgICAgUHlPYmplY3QgKmZ1bGxuYW1lOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzOnppcGltcG9ydGVyLmdldF9jb2RlIiwgJmZ1bGxuYW1lKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6emlwaW1wb3J0ZXIuZ2V0X2NvZGUiLCAmZnVsbG5hbWUpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHJldHVybiBnZXRfbW9kdWxlX2NvZGUoc2VsZiwgZnVsbG5hbWUsIE5VTEwsIE5VTEwpOwpAQCAtNDkwLDM0ICs1MDAsMzkgQEAKIHsKICAgICBaaXBJbXBvcnRlciAqc2VsZiA9IChaaXBJbXBvcnRlciAqKW9iajsKICAgICBQeU9iamVjdCAqdG9jX2VudHJ5OwotICAgIGNoYXIgKmZ1bGxuYW1lLCAqc3VibmFtZSwgcGF0aFtNQVhQQVRITEVOKzFdOwotICAgIGludCBsZW47CisgICAgUHlPYmplY3QgKmZ1bGxuYW1lLCAqc3VibmFtZSwgKnBhdGgsICpmdWxscGF0aDsKICAgICBlbnVtIHppX21vZHVsZV9pbmZvIG1pOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzOnppcGltcG9ydGVyLmdldF9zb3VyY2UiLCAmZnVsbG5hbWUpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVTp6aXBpbXBvcnRlci5nZXRfc291cmNlIiwgJmZ1bGxuYW1lKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBtaSA9IGdldF9tb2R1bGVfaW5mbyhzZWxmLCBmdWxsbmFtZSk7CiAgICAgaWYgKG1pID09IE1JX0VSUk9SKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAobWkgPT0gTUlfTk9UX0ZPVU5EKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChaaXBJbXBvcnRFcnJvciwgImNhbid0IGZpbmQgbW9kdWxlICclcyciLCBmdWxsbmFtZSk7CisgICAgICAgIFB5RXJyX0Zvcm1hdChaaXBJbXBvcnRFcnJvciwgImNhbid0IGZpbmQgbW9kdWxlICVSIiwgZnVsbG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CisKICAgICBzdWJuYW1lID0gZ2V0X3N1Ym5hbWUoZnVsbG5hbWUpOwotCi0gICAgbGVuID0gbWFrZV9maWxlbmFtZShzZWxmLT5wcmVmaXgsIHN1Ym5hbWUsIHBhdGgsIHNpemVvZihwYXRoKSk7Ci0gICAgaWYgKGxlbiA8IDApCisgICAgaWYgKHN1Ym5hbWUgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAobWkgPT0gTUlfUEFDS0FHRSkgewotICAgICAgICBwYXRoW2xlbl0gPSBTRVA7Ci0gICAgICAgIHN0cmNweShwYXRoICsgbGVuICsgMSwgIl9faW5pdF9fLnB5Iik7Ci0gICAgfQotICAgIGVsc2UKLSAgICAgICAgc3RyY3B5KHBhdGggKyBsZW4sICIucHkiKTsKKyAgICBwYXRoID0gbWFrZV9maWxlbmFtZShzZWxmLT5wcmVmaXgsIHN1Ym5hbWUpOworICAgIFB5X0RFQ1JFRihzdWJuYW1lKTsKKyAgICBpZiAocGF0aCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHRvY19lbnRyeSA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKHNlbGYtPmZpbGVzLCBwYXRoKTsKKyAgICBpZiAobWkgPT0gTUlfUEFDS0FHRSkKKyAgICAgICAgZnVsbHBhdGggPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVUlY19faW5pdF9fLnB5IiwgcGF0aCwgU0VQKTsKKyAgICBlbHNlCisgICAgICAgIGZ1bGxwYXRoID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVLnB5IiwgcGF0aCk7CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIGlmIChmdWxscGF0aCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHRvY19lbnRyeSA9IFB5RGljdF9HZXRJdGVtKHNlbGYtPmZpbGVzLCBmdWxscGF0aCk7CisgICAgUHlfREVDUkVGKGZ1bGxwYXRoKTsKICAgICBpZiAodG9jX2VudHJ5ICE9IE5VTEwpIHsKICAgICAgICAgUHlPYmplY3QgKnJlcywgKmJ5dGVzOwogICAgICAgICBieXRlcyA9IGdldF9kYXRhKHNlbGYtPmFyY2hpdmUsIHRvY19lbnRyeSk7CkBAIC03MDgsNTAgKzcyMyw0MSBAQAogICAgZGF0YV9zaXplIGFuZCBmaWxlX29mZnNldCBhcmUgMC4KICovCiBzdGF0aWMgUHlPYmplY3QgKgotcmVhZF9kaXJlY3RvcnkoUHlPYmplY3QgKmFyY2hpdmVfb2JqKQorcmVhZF9kaXJlY3RvcnkoUHlPYmplY3QgKmFyY2hpdmUpCiB7Ci0gICAgLyogRklYTUU6IHdvcmsgb24gUHlfVU5JQ09ERSogaW5zdGVhZCBvZiBjaGFyKiAqLwogICAgIFB5T2JqZWN0ICpmaWxlcyA9IE5VTEw7CiAgICAgRklMRSAqZnA7CiAgICAgdW5zaWduZWQgc2hvcnQgZmxhZ3M7CiAgICAgc2hvcnQgY29tcHJlc3MsIHRpbWUsIGRhdGUsIG5hbWVfc2l6ZTsKICAgICBsb25nIGNyYywgZGF0YV9zaXplLCBmaWxlX3NpemUsIGhlYWRlcl9zaXplOwogICAgIFB5X3NzaXplX3QgZmlsZV9vZmZzZXQsIGhlYWRlcl9wb3NpdGlvbiwgaGVhZGVyX29mZnNldDsKLSAgICBsb25nIGksIGwsIGNvdW50OwotICAgIHNpemVfdCBsZW5ndGg7Ci0gICAgUHlfVU5JQ09ERSBwYXRoW01BWFBBVEhMRU4gKyA1XTsKKyAgICBsb25nIGwsIGNvdW50OworICAgIFB5X3NzaXplX3QgaTsKICAgICBjaGFyIG5hbWVbTUFYUEFUSExFTiArIDVdOwogICAgIFB5T2JqZWN0ICpuYW1lb2JqID0gTlVMTDsKICAgICBjaGFyICpwLCBlbmRvZl9jZW50cmFsX2RpclsyMl07CiAgICAgUHlfc3NpemVfdCBhcmNfb2Zmc2V0OyAgLyogQWJzb2x1dGUgb2Zmc2V0IHRvIHN0YXJ0IG9mIHRoZSB6aXAtYXJjaGl2ZS4gKi8KLSAgICBQeU9iamVjdCAqcGF0aG9iajsKKyAgICBQeU9iamVjdCAqcGF0aDsKICAgICBjb25zdCBjaGFyICpjaGFyc2V0OwogICAgIGludCBib290c3RyYXA7CiAKLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKGFyY2hpdmVfb2JqKSA+IE1BWFBBVEhMRU4pIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiWmlwIHBhdGggbmFtZSBpcyB0b28gbG9uZyIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgUHlfVU5JQ09ERV9zdHJjcHkocGF0aCwgUHlVbmljb2RlX0FTX1VOSUNPREUoYXJjaGl2ZV9vYmopKTsKLQotICAgIGZwID0gX1B5X2ZvcGVuKGFyY2hpdmVfb2JqLCAicmIiKTsKKyAgICBmcCA9IF9QeV9mb3BlbihhcmNoaXZlLCAicmIiKTsKICAgICBpZiAoZnAgPT0gTlVMTCkgewogICAgICAgICBpZiAoIVB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgICAgICBQeUVycl9Gb3JtYXQoWmlwSW1wb3J0RXJyb3IsICJjYW4ndCBvcGVuIFppcCBmaWxlOiAnJVUnIiwgYXJjaGl2ZV9vYmopOworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFppcEltcG9ydEVycm9yLCAiY2FuJ3Qgb3BlbiBaaXAgZmlsZTogJVIiLCBhcmNoaXZlKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIGZzZWVrKGZwLCAtMjIsIFNFRUtfRU5EKTsKICAgICBoZWFkZXJfcG9zaXRpb24gPSBmdGVsbChmcCk7CiAgICAgaWYgKGZyZWFkKGVuZG9mX2NlbnRyYWxfZGlyLCAxLCAyMiwgZnApICE9IDIyKSB7CiAgICAgICAgIGZjbG9zZShmcCk7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChaaXBJbXBvcnRFcnJvciwgImNhbid0IHJlYWQgWmlwIGZpbGU6ICclVSciLCBhcmNoaXZlX29iaik7CisgICAgICAgIFB5RXJyX0Zvcm1hdChaaXBJbXBvcnRFcnJvciwgImNhbid0IHJlYWQgWmlwIGZpbGU6ICVSIiwgYXJjaGl2ZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBpZiAoZ2V0X2xvbmcoKHVuc2lnbmVkIGNoYXIgKillbmRvZl9jZW50cmFsX2RpcikgIT0gMHgwNjA1NEI1MCkgewogICAgICAgICAvKiBCYWQ6IEVuZCBvZiBDZW50cmFsIERpciBzaWduYXR1cmUgKi8KICAgICAgICAgZmNsb3NlKGZwKTsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFppcEltcG9ydEVycm9yLCAibm90IGEgWmlwIGZpbGU6ICclVSciLCBhcmNoaXZlX29iaik7CisgICAgICAgIFB5RXJyX0Zvcm1hdChaaXBJbXBvcnRFcnJvciwgIm5vdCBhIFppcCBmaWxlOiAlUiIsIGFyY2hpdmUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKQEAgLTc2NCw5ICs3NzAsNiBAQAogICAgIGlmIChmaWxlcyA9PSBOVUxMKQogICAgICAgICBnb3RvIGVycm9yOwogCi0gICAgbGVuZ3RoID0gUHlfVU5JQ09ERV9zdHJsZW4ocGF0aCk7Ci0gICAgcGF0aFtsZW5ndGhdID0gU0VQOwotCiAgICAgLyogU3RhcnQgb2YgQ2VudHJhbCBEaXJlY3RvcnkgKi8KICAgICBjb3VudCA9IDA7CiAgICAgZm9yICg7OykgewpAQCAtNzk1LDcgKzc5OCw3IEBACiAgICAgICAgICAgICBuYW1lX3NpemUgPSBNQVhQQVRITEVOOwogCiAgICAgICAgIHAgPSBuYW1lOwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbmFtZV9zaXplOyBpKyspIHsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IChQeV9zc2l6ZV90KW5hbWVfc2l6ZTsgaSsrKSB7CiAgICAgICAgICAgICAqcCA9IChjaGFyKWdldGMoZnApOwogICAgICAgICAgICAgaWYgKCpwID09ICcvJykKICAgICAgICAgICAgICAgICAqcCA9IFNFUDsKQEAgLTgyMCw2ICs4MjMsOCBAQAogICAgICAgICBlbHNlCiAgICAgICAgICAgICBjaGFyc2V0ID0gImNwNDM3IjsKICAgICAgICAgbmFtZW9iaiA9IFB5VW5pY29kZV9EZWNvZGUobmFtZSwgbmFtZV9zaXplLCBjaGFyc2V0LCBOVUxMKTsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShuYW1lb2JqKSA9PSAtMSkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIGlmIChuYW1lb2JqID09IE5VTEwpIHsKICAgICAgICAgICAgIGlmIChib290c3RyYXApCiAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX05vdEltcGxlbWVudGVkRXJyb3IsCkBAIC04MjgsMTIgKzgzMywxMCBAQAogICAgICAgICAgICAgICAgICAgICBQWV9NQUpPUl9WRVJTSU9OLCBQWV9NSU5PUl9WRVJTSU9OKTsKICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIH0KLSAgICAgICAgUHlfVU5JQ09ERV9zdHJuY3B5KHBhdGggKyBsZW5ndGggKyAxLCBQeVVuaWNvZGVfQVNfVU5JQ09ERShuYW1lb2JqKSwgTUFYUEFUSExFTiAtIGxlbmd0aCAtIDEpOwotCi0gICAgICAgIHBhdGhvYmogPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocGF0aCwgUHlfVU5JQ09ERV9zdHJsZW4ocGF0aCkpOwotICAgICAgICBpZiAocGF0aG9iaiA9PSBOVUxMKQorICAgICAgICBwYXRoID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVJWMlVSIsIGFyY2hpdmUsIFNFUCwgbmFtZW9iaik7CisgICAgICAgIGlmIChwYXRoID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICB0ID0gUHlfQnVpbGRWYWx1ZSgiTmhsbG5oaGwiLCBwYXRob2JqLCBjb21wcmVzcywgZGF0YV9zaXplLAorICAgICAgICB0ID0gUHlfQnVpbGRWYWx1ZSgiTmhsbG5oaGwiLCBwYXRoLCBjb21wcmVzcywgZGF0YV9zaXplLAogICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxlX3NpemUsIGZpbGVfb2Zmc2V0LCB0aW1lLCBkYXRlLCBjcmMpOwogICAgICAgICBpZiAodCA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKQEAgLTg0Niw4ICs4NDksOCBAQAogICAgIH0KICAgICBmY2xvc2UoZnApOwogICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjIHppcGltcG9ydDogZm91bmQgJWxkIG5hbWVzIGluICVVXG4iLAotICAgICAgICAgICAgY291bnQsIGFyY2hpdmVfb2JqKTsKKyAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjIHppcGltcG9ydDogZm91bmQgJWxkIG5hbWVzIGluICVSXG4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY291bnQsIGFyY2hpdmUpOwogICAgIHJldHVybiBmaWxlczsKIGVycm9yOgogICAgIGZjbG9zZShmcCk7CkBAIC04NjUsNiArODY4LDcgQEAKICAgICBzdGF0aWMgaW50IGltcG9ydGluZ196bGliID0gMDsKICAgICBQeU9iamVjdCAqemxpYjsKICAgICBQeU9iamVjdCAqZGVjb21wcmVzczsKKyAgICBfUHlfSURFTlRJRklFUihkZWNvbXByZXNzKTsKIAogICAgIGlmIChpbXBvcnRpbmdfemxpYiAhPSAwKQogICAgICAgICAvKiBTb21lb25lIGhhcyBhIHpsaWIucHlbY29dIGluIHRoZWlyIFppcCBmaWxlOwpAQCAtODc0LDggKzg3OCw4IEBACiAgICAgemxpYiA9IFB5SW1wb3J0X0ltcG9ydE1vZHVsZU5vQmxvY2soInpsaWIiKTsKICAgICBpbXBvcnRpbmdfemxpYiA9IDA7CiAgICAgaWYgKHpsaWIgIT0gTlVMTCkgewotICAgICAgICBkZWNvbXByZXNzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh6bGliLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGVjb21wcmVzcyIpOworICAgICAgICBkZWNvbXByZXNzID0gX1B5T2JqZWN0X0dldEF0dHJJZCh6bGliLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmUHlJZF9kZWNvbXByZXNzKTsKICAgICAgICAgUHlfREVDUkVGKHpsaWIpOwogICAgIH0KICAgICBlbHNlIHsKQEAgLTEwMDEsNyArMTAwNSw3IEBACiAgICB0byAucHkgaWYgYXZhaWxhYmxlIGFuZCB3ZSBkb24ndCB3YW50IHRvIG1hc2sgb3RoZXIgZXJyb3JzKS4KICAgIFJldHVybnMgYSBuZXcgcmVmZXJlbmNlLiAqLwogc3RhdGljIFB5T2JqZWN0ICoKLXVubWFyc2hhbF9jb2RlKGNoYXIgKnBhdGhuYW1lLCBQeU9iamVjdCAqZGF0YSwgdGltZV90IG10aW1lKQordW5tYXJzaGFsX2NvZGUoUHlPYmplY3QgKnBhdGhuYW1lLCBQeU9iamVjdCAqZGF0YSwgdGltZV90IG10aW1lKQogewogICAgIFB5T2JqZWN0ICpjb2RlOwogICAgIGNoYXIgKmJ1ZiA9IFB5Qnl0ZXNfQXNTdHJpbmcoZGF0YSk7CkBAIC0xMDE1LDggKzEwMTksOCBAQAogCiAgICAgaWYgKGdldF9sb25nKCh1bnNpZ25lZCBjaGFyICopYnVmKSAhPSBQeUltcG9ydF9HZXRNYWdpY051bWJlcigpKSB7CiAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCIjICVzIGhhcyBiYWQgbWFnaWNcbiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRobmFtZSk7CisgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiMgJVIgaGFzIGJhZCBtYWdpY1xuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRobmFtZSk7CiAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICAgICAgcmV0dXJuIFB5X05vbmU7ICAvKiBzaWduYWwgY2FsbGVyIHRvIHRyeSBhbHRlcm5hdGl2ZSAqLwogICAgIH0KQEAgLTEwMjQsMTkgKzEwMjgsMjEgQEAKICAgICBpZiAobXRpbWUgIT0gMCAmJiAhZXFfbXRpbWUoZ2V0X2xvbmcoKHVuc2lnbmVkIGNoYXIgKilidWYgKyA0KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXRpbWUpKSB7CiAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCIjICVzIGhhcyBiYWQgbXRpbWVcbiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRobmFtZSk7CisgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiMgJVIgaGFzIGJhZCBtdGltZVxuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRobmFtZSk7CiAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICAgICAgcmV0dXJuIFB5X05vbmU7ICAvKiBzaWduYWwgY2FsbGVyIHRvIHRyeSBhbHRlcm5hdGl2ZSAqLwogICAgIH0KIAotICAgIGNvZGUgPSBQeU1hcnNoYWxfUmVhZE9iamVjdEZyb21TdHJpbmcoYnVmICsgOCwgc2l6ZSAtIDgpOworICAgIC8qIFhYWCB0aGUgcHljJ3Mgc2l6ZSBmaWVsZCBpcyBpZ25vcmVkOyB0aW1lc3RhbXAgY29sbGlzaW9ucyBhcmUgcHJvYmFibHkKKyAgICAgICB1bmltcG9ydGFudCB3aXRoIHppcCBmaWxlcy4gKi8KKyAgICBjb2RlID0gUHlNYXJzaGFsX1JlYWRPYmplY3RGcm9tU3RyaW5nKGJ1ZiArIDEyLCBzaXplIC0gMTIpOwogICAgIGlmIChjb2RlID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmICghUHlDb2RlX0NoZWNrKGNvZGUpKSB7CiAgICAgICAgIFB5X0RFQ1JFRihjb2RlKTsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAiY29tcGlsZWQgbW9kdWxlICVzIGlzIG5vdCBhIGNvZGUgb2JqZWN0IiwKKyAgICAgICAgICAgICAiY29tcGlsZWQgbW9kdWxlICVSIGlzIG5vdCBhIGNvZGUgb2JqZWN0IiwKICAgICAgICAgICAgICBwYXRobmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KQEAgLTEwNTAsMTEgKzEwNTYsMTIgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBub3JtYWxpemVfbGluZV9lbmRpbmdzKFB5T2JqZWN0ICpzb3VyY2UpCiB7Ci0gICAgY2hhciAqYnVmLCAqcSwgKnAgPSBQeUJ5dGVzX0FzU3RyaW5nKHNvdXJjZSk7CisgICAgY2hhciAqYnVmLCAqcSwgKnA7CiAgICAgUHlPYmplY3QgKmZpeGVkX3NvdXJjZTsKICAgICBpbnQgbGVuID0gMDsKIAotICAgIGlmICghcCkgeworICAgIHAgPSBQeUJ5dGVzX0FzU3RyaW5nKHNvdXJjZSk7CisgICAgaWYgKHAgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgiXG5cMCIsIDIpOwogICAgIH0KIApAQCAtMTA4NywxNiArMTA5NCwyNCBAQAogLyogR2l2ZW4gYSBzdHJpbmcgYnVmZmVyIGNvbnRhaW5pbmcgUHl0aG9uIHNvdXJjZSBjb2RlLCBjb21waWxlIGl0CiAgICByZXR1cm4gYW5kIHJldHVybiBhIGNvZGUgb2JqZWN0IGFzIGEgbmV3IHJlZmVyZW5jZS4gKi8KIHN0YXRpYyBQeU9iamVjdCAqCi1jb21waWxlX3NvdXJjZShjaGFyICpwYXRobmFtZSwgUHlPYmplY3QgKnNvdXJjZSkKK2NvbXBpbGVfc291cmNlKFB5T2JqZWN0ICpwYXRobmFtZSwgUHlPYmplY3QgKnNvdXJjZSkKIHsKLSAgICBQeU9iamVjdCAqY29kZSwgKmZpeGVkX3NvdXJjZTsKKyAgICBQeU9iamVjdCAqY29kZSwgKmZpeGVkX3NvdXJjZSwgKnBhdGhieXRlczsKIAotICAgIGZpeGVkX3NvdXJjZSA9IG5vcm1hbGl6ZV9saW5lX2VuZGluZ3Moc291cmNlKTsKLSAgICBpZiAoZml4ZWRfc291cmNlID09IE5VTEwpCisgICAgcGF0aGJ5dGVzID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChwYXRobmFtZSk7CisgICAgaWYgKHBhdGhieXRlcyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGNvZGUgPSBQeV9Db21waWxlU3RyaW5nKFB5Qnl0ZXNfQXNTdHJpbmcoZml4ZWRfc291cmNlKSwgcGF0aG5hbWUsCisgICAgZml4ZWRfc291cmNlID0gbm9ybWFsaXplX2xpbmVfZW5kaW5ncyhzb3VyY2UpOworICAgIGlmIChmaXhlZF9zb3VyY2UgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYocGF0aGJ5dGVzKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgY29kZSA9IFB5X0NvbXBpbGVTdHJpbmcoUHlCeXRlc19Bc1N0cmluZyhmaXhlZF9zb3VyY2UpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQXNTdHJpbmcocGF0aGJ5dGVzKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9maWxlX2lucHV0KTsKKyAgICBQeV9ERUNSRUYocGF0aGJ5dGVzKTsKICAgICBQeV9ERUNSRUYoZml4ZWRfc291cmNlKTsKICAgICByZXR1cm4gY29kZTsKIH0KQEAgLTExMjUsMTQgKzExNDAsMjIgQEAKICAgIG1vZGlmaWNhdGlvbiB0aW1lIG9mIHRoZSBtYXRjaGluZyAucHkgZmlsZSwgb3IgMCBpZiBubyBzb3VyY2UKICAgIGlzIGF2YWlsYWJsZS4gKi8KIHN0YXRpYyB0aW1lX3QKLWdldF9tdGltZV9vZl9zb3VyY2UoWmlwSW1wb3J0ZXIgKnNlbGYsIGNoYXIgKnBhdGgpCitnZXRfbXRpbWVfb2Zfc291cmNlKFppcEltcG9ydGVyICpzZWxmLCBQeU9iamVjdCAqcGF0aCkKIHsKLSAgICBQeU9iamVjdCAqdG9jX2VudHJ5OwotICAgIHRpbWVfdCBtdGltZSA9IDA7Ci0gICAgUHlfc3NpemVfdCBsYXN0Y2hhciA9IHN0cmxlbihwYXRoKSAtIDE7Ci0gICAgY2hhciBzYXZlY2hhciA9IHBhdGhbbGFzdGNoYXJdOwotICAgIHBhdGhbbGFzdGNoYXJdID0gJ1wwJzsgIC8qIHN0cmlwICdjJyBvciAnbycgZnJvbSAqLnB5W2NvXSAqLwotICAgIHRvY19lbnRyeSA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKHNlbGYtPmZpbGVzLCBwYXRoKTsKKyAgICBQeU9iamVjdCAqdG9jX2VudHJ5LCAqc3RyaXBwZWQ7CisgICAgdGltZV90IG10aW1lOworCisgICAgLyogc3RyaXAgJ2MnIG9yICdvJyBmcm9tICoucHlbY29dICovCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShwYXRoKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuICh0aW1lX3QpLTE7CisgICAgc3RyaXBwZWQgPSBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKFB5VW5pY29kZV9LSU5EKHBhdGgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfREFUQShwYXRoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgocGF0aCkgLSAxKTsKKyAgICBpZiAoc3RyaXBwZWQgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuICh0aW1lX3QpLTE7CisKKyAgICB0b2NfZW50cnkgPSBQeURpY3RfR2V0SXRlbShzZWxmLT5maWxlcywgc3RyaXBwZWQpOworICAgIFB5X0RFQ1JFRihzdHJpcHBlZCk7CiAgICAgaWYgKHRvY19lbnRyeSAhPSBOVUxMICYmIFB5VHVwbGVfQ2hlY2sodG9jX2VudHJ5KSAmJgogICAgICAgICBQeVR1cGxlX1NpemUodG9jX2VudHJ5KSA9PSA4KSB7CiAgICAgICAgIC8qIGZldGNoIHRoZSB0aW1lIHN0YW1wIG9mIHRoZSAucHkgZmlsZSBmb3IgY29tcGFyaXNvbgpAQCAtMTE0MSw4ICsxMTY0LDggQEAKICAgICAgICAgdGltZSA9IFB5TG9uZ19Bc0xvbmcoUHlUdXBsZV9HZXRJdGVtKHRvY19lbnRyeSwgNSkpOwogICAgICAgICBkYXRlID0gUHlMb25nX0FzTG9uZyhQeVR1cGxlX0dldEl0ZW0odG9jX2VudHJ5LCA2KSk7CiAgICAgICAgIG10aW1lID0gcGFyc2VfZG9zdGltZSh0aW1lLCBkYXRlKTsKLSAgICB9Ci0gICAgcGF0aFtsYXN0Y2hhcl0gPSBzYXZlY2hhcjsKKyAgICB9IGVsc2UKKyAgICAgICAgbXRpbWUgPSAwOwogICAgIHJldHVybiBtdGltZTsKIH0KIApAQCAtMTE1MiwyNCArMTE3NSwxNyBAQAogZ2V0X2NvZGVfZnJvbV9kYXRhKFppcEltcG9ydGVyICpzZWxmLCBpbnQgaXNwYWNrYWdlLCBpbnQgaXNieXRlY29kZSwKICAgICAgICAgICAgICAgICAgICB0aW1lX3QgbXRpbWUsIFB5T2JqZWN0ICp0b2NfZW50cnkpCiB7Ci0gICAgUHlPYmplY3QgKmRhdGEsICpjb2RlOwotICAgIFB5T2JqZWN0ICptb2RwYXRoOworICAgIFB5T2JqZWN0ICpkYXRhLCAqbW9kcGF0aCwgKmNvZGU7CiAKICAgICBkYXRhID0gZ2V0X2RhdGEoc2VsZi0+YXJjaGl2ZSwgdG9jX2VudHJ5KTsKICAgICBpZiAoZGF0YSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIG1vZHBhdGggPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KFB5VHVwbGVfR2V0SXRlbSh0b2NfZW50cnksIDApKTsKLSAgICBpZiAobW9kcGF0aCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5X0RFQ1JFRihkYXRhKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCisgICAgbW9kcGF0aCA9IFB5VHVwbGVfR2V0SXRlbSh0b2NfZW50cnksIDApOwogICAgIGlmIChpc2J5dGVjb2RlKQotICAgICAgICBjb2RlID0gdW5tYXJzaGFsX2NvZGUoUHlCeXRlc19BU19TVFJJTkcobW9kcGF0aCksIGRhdGEsIG10aW1lKTsKKyAgICAgICAgY29kZSA9IHVubWFyc2hhbF9jb2RlKG1vZHBhdGgsIGRhdGEsIG10aW1lKTsKICAgICBlbHNlCi0gICAgICAgIGNvZGUgPSBjb21waWxlX3NvdXJjZShQeUJ5dGVzX0FTX1NUUklORyhtb2RwYXRoKSwgZGF0YSk7Ci0gICAgUHlfREVDUkVGKG1vZHBhdGgpOworICAgICAgICBjb2RlID0gY29tcGlsZV9zb3VyY2UobW9kcGF0aCwgZGF0YSk7CiAgICAgUHlfREVDUkVGKGRhdGEpOwogICAgIHJldHVybiBjb2RlOwogfQpAQCAtMTE3NywzNSArMTE5Myw0NSBAQAogLyogR2V0IHRoZSBjb2RlIG9iamVjdCBhc3NvY2lhdGVkIHdpdGggdGhlIG1vZHVsZSBzcGVjaWZpZWQgYnkKICAgICdmdWxsbmFtZScuICovCiBzdGF0aWMgUHlPYmplY3QgKgotZ2V0X21vZHVsZV9jb2RlKFppcEltcG9ydGVyICpzZWxmLCBjaGFyICpmdWxsbmFtZSwKK2dldF9tb2R1bGVfY29kZShaaXBJbXBvcnRlciAqc2VsZiwgUHlPYmplY3QgKmZ1bGxuYW1lLAogICAgICAgICAgICAgICAgIGludCAqcF9pc3BhY2thZ2UsIFB5T2JqZWN0ICoqcF9tb2RwYXRoKQogewotICAgIFB5T2JqZWN0ICp0b2NfZW50cnk7Ci0gICAgY2hhciAqc3VibmFtZSwgcGF0aFtNQVhQQVRITEVOICsgMV07Ci0gICAgaW50IGxlbjsKKyAgICBQeU9iamVjdCAqY29kZSA9IE5VTEwsICp0b2NfZW50cnksICpzdWJuYW1lOworICAgIFB5T2JqZWN0ICpwYXRoLCAqZnVsbHBhdGggPSBOVUxMOwogICAgIHN0cnVjdCBzdF96aXBfc2VhcmNob3JkZXIgKnpzbzsKIAogICAgIHN1Ym5hbWUgPSBnZXRfc3VibmFtZShmdWxsbmFtZSk7CisgICAgaWYgKHN1Ym5hbWUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBsZW4gPSBtYWtlX2ZpbGVuYW1lKHNlbGYtPnByZWZpeCwgc3VibmFtZSwgcGF0aCwgc2l6ZW9mKHBhdGgpKTsKLSAgICBpZiAobGVuIDwgMCkKKyAgICBwYXRoID0gbWFrZV9maWxlbmFtZShzZWxmLT5wcmVmaXgsIHN1Ym5hbWUpOworICAgIFB5X0RFQ1JFRihzdWJuYW1lKTsKKyAgICBpZiAocGF0aCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGZvciAoenNvID0gemlwX3NlYXJjaG9yZGVyOyAqenNvLT5zdWZmaXg7IHpzbysrKSB7Ci0gICAgICAgIFB5T2JqZWN0ICpjb2RlID0gTlVMTDsKKyAgICAgICAgY29kZSA9IE5VTEw7CiAKLSAgICAgICAgc3RyY3B5KHBhdGggKyBsZW4sIHpzby0+c3VmZml4KTsKKyAgICAgICAgZnVsbHBhdGggPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVUlcyIsIHBhdGgsIHpzby0+c3VmZml4KTsKKyAgICAgICAgaWYgKGZ1bGxwYXRoID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGV4aXQ7CisKICAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnID4gMSkKLSAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiIyB0cnlpbmcgJVUlYyVzXG4iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPmFyY2hpdmUsIChpbnQpU0VQLCBwYXRoKTsKLSAgICAgICAgdG9jX2VudHJ5ID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcoc2VsZi0+ZmlsZXMsIHBhdGgpOworICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjIHRyeWluZyAlVSVjJVVcbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+YXJjaGl2ZSwgKGludClTRVAsIGZ1bGxwYXRoKTsKKyAgICAgICAgdG9jX2VudHJ5ID0gUHlEaWN0X0dldEl0ZW0oc2VsZi0+ZmlsZXMsIGZ1bGxwYXRoKTsKICAgICAgICAgaWYgKHRvY19lbnRyeSAhPSBOVUxMKSB7CiAgICAgICAgICAgICB0aW1lX3QgbXRpbWUgPSAwOwogICAgICAgICAgICAgaW50IGlzcGFja2FnZSA9IHpzby0+dHlwZSAmIElTX1BBQ0tBR0U7CiAgICAgICAgICAgICBpbnQgaXNieXRlY29kZSA9IHpzby0+dHlwZSAmIElTX0JZVEVDT0RFOwogCi0gICAgICAgICAgICBpZiAoaXNieXRlY29kZSkKLSAgICAgICAgICAgICAgICBtdGltZSA9IGdldF9tdGltZV9vZl9zb3VyY2Uoc2VsZiwgcGF0aCk7CisgICAgICAgICAgICBpZiAoaXNieXRlY29kZSkgeworICAgICAgICAgICAgICAgIG10aW1lID0gZ2V0X210aW1lX29mX3NvdXJjZShzZWxmLCBmdWxscGF0aCk7CisgICAgICAgICAgICAgICAgaWYgKG10aW1lID09ICh0aW1lX3QpLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkgeworICAgICAgICAgICAgICAgICAgICBnb3RvIGV4aXQ7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgUHlfQ0xFQVIoZnVsbHBhdGgpOwogICAgICAgICAgICAgaWYgKHBfaXNwYWNrYWdlICE9IE5VTEwpCiAgICAgICAgICAgICAgICAgKnBfaXNwYWNrYWdlID0gaXNwYWNrYWdlOwogICAgICAgICAgICAgY29kZSA9IGdldF9jb2RlX2Zyb21fZGF0YShzZWxmLCBpc3BhY2thZ2UsCkBAIC0xMjIxLDExICsxMjQ3LDE2IEBACiAgICAgICAgICAgICAgICAgKnBfbW9kcGF0aCA9IFB5VHVwbGVfR2V0SXRlbSh0b2NfZW50cnksIDApOwogICAgICAgICAgICAgICAgIFB5X0lOQ1JFRigqcF9tb2RwYXRoKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHJldHVybiBjb2RlOworICAgICAgICAgICAgZ290byBleGl0OwogICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIFB5X0NMRUFSKGZ1bGxwYXRoKTsKICAgICB9Ci0gICAgUHlFcnJfRm9ybWF0KFppcEltcG9ydEVycm9yLCAiY2FuJ3QgZmluZCBtb2R1bGUgJyVzJyIsIGZ1bGxuYW1lKTsKLSAgICByZXR1cm4gTlVMTDsKKyAgICBQeUVycl9Gb3JtYXQoWmlwSW1wb3J0RXJyb3IsICJjYW4ndCBmaW5kIG1vZHVsZSAlUiIsIGZ1bGxuYW1lKTsKK2V4aXQ6CisgICAgUHlfREVDUkVGKHBhdGgpOworICAgIFB5X1hERUNSRUYoZnVsbHBhdGgpOworICAgIHJldHVybiBjb2RlOwogfQogCiAKZGlmZiAtLWdpdCBhL01vZHVsZXMvemxpYm1vZHVsZS5jIGIvTW9kdWxlcy96bGlibW9kdWxlLmMKaW5kZXggYTFlNjA1Yi4uYTZkYTA1NiAxMDA2NDQKLS0tIGEvTW9kdWxlcy96bGlibW9kdWxlLmMKKysrIGIvTW9kdWxlcy96bGlibW9kdWxlLmMKQEAgLTQzLDYgKzQzLDcgQEAKICAgICB6X3N0cmVhbSB6c3Q7CiAgICAgUHlPYmplY3QgKnVudXNlZF9kYXRhOwogICAgIFB5T2JqZWN0ICp1bmNvbnN1bWVkX3RhaWw7CisgICAgY2hhciBlb2Y7CiAgICAgaW50IGlzX2luaXRpYWxpc2VkOwogICAgICNpZmRlZiBXSVRIX1RIUkVBRAogICAgICAgICBQeVRocmVhZF90eXBlX2xvY2sgbG9jazsKQEAgLTk1LDYgKzk2LDcgQEAKICAgICBzZWxmID0gUHlPYmplY3RfTmV3KGNvbXBvYmplY3QsIHR5cGUpOwogICAgIGlmIChzZWxmID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOworICAgIHNlbGYtPmVvZiA9IDA7CiAgICAgc2VsZi0+aXNfaW5pdGlhbGlzZWQgPSAwOwogICAgIHNlbGYtPnVudXNlZF9kYXRhID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgiIiwgMCk7CiAgICAgaWYgKHNlbGYtPnVudXNlZF9kYXRhID09IE5VTEwpIHsKQEAgLTI5Nyw3ICsyOTksNyBAQAogCiAgICAgZXJyID0gaW5mbGF0ZUVuZCgmenN0KTsKICAgICBpZiAoZXJyICE9IFpfT0spIHsKLSAgICAgICAgemxpYl9lcnJvcih6c3QsIGVyciwgIndoaWxlIGZpbmlzaGluZyBkYXRhIGRlY29tcHJlc3Npb24iKTsKKyAgICAgICAgemxpYl9lcnJvcih6c3QsIGVyciwgIndoaWxlIGZpbmlzaGluZyBkZWNvbXByZXNzaW9uIik7CiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgfQogCkBAIC00ODIsNyArNDg0LDcgQEAKICAgICAqLwogCiAgICAgaWYgKGVyciAhPSBaX09LICYmIGVyciAhPSBaX0JVRl9FUlJPUikgewotICAgICAgICB6bGliX2Vycm9yKHNlbGYtPnpzdCwgZXJyLCAid2hpbGUgY29tcHJlc3NpbmciKTsKKyAgICAgICAgemxpYl9lcnJvcihzZWxmLT56c3QsIGVyciwgIndoaWxlIGNvbXByZXNzaW5nIGRhdGEiKTsKICAgICAgICAgUHlfREVDUkVGKFJldFZhbCk7CiAgICAgICAgIFJldFZhbCA9IE5VTEw7CiAgICAgICAgIGdvdG8gZXJyb3I7CkBAIC02MTcsMTIgKzYxOSwxMyBAQAogICAgICAgICAgICAgUHlfREVDUkVGKFJldFZhbCk7CiAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICB9CisgICAgICAgIHNlbGYtPmVvZiA9IDE7CiAgICAgICAgIC8qIFdlIHdpbGwgb25seSBnZXQgWl9CVUZfRVJST1IgaWYgdGhlIG91dHB1dCBidWZmZXIgd2FzIGZ1bGwKICAgICAgICAgICAgYnV0IHRoZXJlIHdhc24ndCBtb3JlIG91dHB1dCB3aGVuIHdlIHRyaWVkIGFnYWluLCBzbyBpdCBpcwogICAgICAgICAgICBub3QgYW4gZXJyb3IgY29uZGl0aW9uLgogICAgICAgICAqLwogICAgIH0gZWxzZSBpZiAoZXJyICE9IFpfT0sgJiYgZXJyICE9IFpfQlVGX0VSUk9SKSB7Ci0gICAgICAgIHpsaWJfZXJyb3Ioc2VsZi0+enN0LCBlcnIsICJ3aGlsZSBkZWNvbXByZXNzaW5nIik7CisgICAgICAgIHpsaWJfZXJyb3Ioc2VsZi0+enN0LCBlcnIsICJ3aGlsZSBkZWNvbXByZXNzaW5nIGRhdGEiKTsKICAgICAgICAgUHlfREVDUkVGKFJldFZhbCk7CiAgICAgICAgIFJldFZhbCA9IE5VTEw7CiAgICAgICAgIGdvdG8gZXJyb3I7CkBAIC03MDMsNyArNzA2LDcgQEAKICAgICBpZiAoZXJyID09IFpfU1RSRUFNX0VORCAmJiBmbHVzaG1vZGUgPT0gWl9GSU5JU0gpIHsKICAgICAgICAgZXJyID0gZGVmbGF0ZUVuZCgmKHNlbGYtPnpzdCkpOwogICAgICAgICBpZiAoZXJyICE9IFpfT0spIHsKLSAgICAgICAgICAgIHpsaWJfZXJyb3Ioc2VsZi0+enN0LCBlcnIsICJmcm9tIGRlZmxhdGVFbmQoKSIpOworICAgICAgICAgICAgemxpYl9lcnJvcihzZWxmLT56c3QsIGVyciwgIndoaWxlIGZpbmlzaGluZyBjb21wcmVzc2lvbiIpOwogICAgICAgICAgICAgUHlfREVDUkVGKFJldFZhbCk7CiAgICAgICAgICAgICBSZXRWYWwgPSBOVUxMOwogICAgICAgICAgICAgZ290byBlcnJvcjsKQEAgLTc3MSw2ICs3NzQsNyBAQAogICAgIFB5X1hERUNSRUYocmV0dmFsLT51bmNvbnN1bWVkX3RhaWwpOwogICAgIHJldHZhbC0+dW51c2VkX2RhdGEgPSBzZWxmLT51bnVzZWRfZGF0YTsKICAgICByZXR2YWwtPnVuY29uc3VtZWRfdGFpbCA9IHNlbGYtPnVuY29uc3VtZWRfdGFpbDsKKyAgICByZXR2YWwtPmVvZiA9IHNlbGYtPmVvZjsKIAogICAgIC8qIE1hcmsgaXQgYXMgYmVpbmcgaW5pdGlhbGl6ZWQgKi8KICAgICByZXR2YWwtPmlzX2luaXRpYWxpc2VkID0gMTsKQEAgLTgyMiw2ICs4MjYsNyBAQAogICAgIFB5X1hERUNSRUYocmV0dmFsLT51bmNvbnN1bWVkX3RhaWwpOwogICAgIHJldHZhbC0+dW51c2VkX2RhdGEgPSBzZWxmLT51bnVzZWRfZGF0YTsKICAgICByZXR2YWwtPnVuY29uc3VtZWRfdGFpbCA9IHNlbGYtPnVuY29uc3VtZWRfdGFpbDsKKyAgICByZXR2YWwtPmVvZiA9IHNlbGYtPmVvZjsKIAogICAgIC8qIE1hcmsgaXQgYXMgYmVpbmcgaW5pdGlhbGl6ZWQgKi8KICAgICByZXR2YWwtPmlzX2luaXRpYWxpc2VkID0gMTsKQEAgLTg4NywxNCArODkyLDEzIEBACiAgICAgICAgIFB5X0VORF9BTExPV19USFJFQURTCiAgICAgfQogCi0gICAgLyogSWYgZmx1c2htb2RlIGlzIFpfRklOSVNILCB3ZSBhbHNvIGhhdmUgdG8gY2FsbCBkZWZsYXRlRW5kKCkgdG8gZnJlZQotICAgICAgIHZhcmlvdXMgZGF0YSBzdHJ1Y3R1cmVzLiBOb3RlIHdlIHNob3VsZCBvbmx5IGdldCBaX1NUUkVBTV9FTkQgd2hlbgotICAgICAgIGZsdXNobW9kZSBpcyBaX0ZJTklTSCAqLworICAgIC8qIElmIGF0IGVuZCBvZiBzdHJlYW0sIGNsZWFuIHVwIGFueSBtZW1vcnkgYWxsb2NhdGVkIGJ5IHpsaWIuICovCiAgICAgaWYgKGVyciA9PSBaX1NUUkVBTV9FTkQpIHsKLSAgICAgICAgZXJyID0gaW5mbGF0ZUVuZCgmKHNlbGYtPnpzdCkpOworICAgICAgICBzZWxmLT5lb2YgPSAxOwogICAgICAgICBzZWxmLT5pc19pbml0aWFsaXNlZCA9IDA7CisgICAgICAgIGVyciA9IGluZmxhdGVFbmQoJihzZWxmLT56c3QpKTsKICAgICAgICAgaWYgKGVyciAhPSBaX09LKSB7Ci0gICAgICAgICAgICB6bGliX2Vycm9yKHNlbGYtPnpzdCwgZXJyLCAiZnJvbSBpbmZsYXRlRW5kKCkiKTsKKyAgICAgICAgICAgIHpsaWJfZXJyb3Ioc2VsZi0+enN0LCBlcnIsICJ3aGlsZSBmaW5pc2hpbmcgZGVjb21wcmVzc2lvbiIpOwogICAgICAgICAgICAgUHlfREVDUkVGKHJldHZhbCk7CiAgICAgICAgICAgICByZXR2YWwgPSBOVUxMOwogICAgICAgICAgICAgZ290byBlcnJvcjsKQEAgLTk0Miw2ICs5NDYsNyBAQAogc3RhdGljIFB5TWVtYmVyRGVmIERlY29tcF9tZW1iZXJzW10gPSB7CiAgICAgeyJ1bnVzZWRfZGF0YSIsICAgICBUX09CSkVDVCwgQ09NUF9PRkYodW51c2VkX2RhdGEpLCBSRUFET05MWX0sCiAgICAgeyJ1bmNvbnN1bWVkX3RhaWwiLCBUX09CSkVDVCwgQ09NUF9PRkYodW5jb25zdW1lZF90YWlsKSwgUkVBRE9OTFl9LAorICAgIHsiZW9mIiwgICAgICAgICAgICAgVF9CT09MLCAgIENPTVBfT0ZGKGVvZiksIFJFQURPTkxZfSwKICAgICB7TlVMTH0sCiB9OwogCkBAIC0xMTY0LDYgKzExNjksMTAgQEAKICAgICBpZiAodmVyICE9IE5VTEwpCiAgICAgICAgIFB5TW9kdWxlX0FkZE9iamVjdChtLCAiWkxJQl9WRVJTSU9OIiwgdmVyKTsKIAorICAgIHZlciA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKHpsaWJWZXJzaW9uKCkpOworICAgIGlmICh2ZXIgIT0gTlVMTCkKKyAgICAgICAgUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJaTElCX1JVTlRJTUVfVkVSU0lPTiIsIHZlcik7CisKICAgICBQeU1vZHVsZV9BZGRTdHJpbmdDb25zdGFudChtLCAiX192ZXJzaW9uX18iLCAiMS4wIik7CiAKICAgICByZXR1cm4gbTsKZGlmZiAtLWdpdCBhL09iamVjdHMvYWJzdHJhY3QuYyBiL09iamVjdHMvYWJzdHJhY3QuYwppbmRleCAyZjg4N2FhLi40NzAxMGQ2IDEwMDY0NAotLS0gYS9PYmplY3RzL2Fic3RyYWN0LmMKKysrIGIvT2JqZWN0cy9hYnN0cmFjdC5jCkBAIC03NCw3ICs3NCw3IEBACiBQeV9zc2l6ZV90CiBfUHlPYmplY3RfTGVuZ3RoSGludChQeU9iamVjdCAqbywgUHlfc3NpemVfdCBkZWZhdWx0dmFsdWUpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpoaW50c3Ryb2JqID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX2xlbmd0aF9oaW50X18pOwogICAgIFB5T2JqZWN0ICpybywgKmhpbnRtZXRoOwogICAgIFB5X3NzaXplX3QgcnY7CiAKQEAgLTg5LDcgKzg5LDcgQEAKICAgICB9CiAKICAgICAvKiB0cnkgby5fX2xlbmd0aF9oaW50X18oKSAqLwotICAgIGhpbnRtZXRoID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobywgIl9fbGVuZ3RoX2hpbnRfXyIsICZoaW50c3Ryb2JqKTsKKyAgICBoaW50bWV0aCA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKG8sICZQeUlkX19fbGVuZ3RoX2hpbnRfXyk7CiAgICAgaWYgKGhpbnRtZXRoID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgICAgICByZXR1cm4gLTE7CkBAIC0yMzcsNyArMjM3LDggQEAKICAgICBwYiA9IG9iai0+b2JfdHlwZS0+dHBfYXNfYnVmZmVyOwogICAgIGlmIChwYiA9PSBOVUxMIHx8IHBiLT5iZl9nZXRidWZmZXIgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgImV4cGVjdGVkIGFuIG9iamVjdCB3aXRoIHRoZSBidWZmZXIgaW50ZXJmYWNlIik7CisgICAgICAgICAgICAgICAgICAgICAgICAiZXhwZWN0ZWQgYnl0ZXMsIGJ5dGVhcnJheSAiCisgICAgICAgICAgICAgICAgICAgICAgICAib3IgYnVmZmVyIGNvbXBhdGlibGUgb2JqZWN0Iik7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAgICAgaWYgKCgqcGItPmJmX2dldGJ1ZmZlcikob2JqLCAmdmlldywgUHlCVUZfU0lNUExFKSkgcmV0dXJuIC0xOwpAQCAtMzMxLDcgKzMzMiw3IEBACiB7CiAgICAgaWYgKCFQeU9iamVjdF9DaGVja0J1ZmZlcihvYmopKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiJyUxMDBzJyBkb2VzIG5vdCBzdXBwb3J0IHRoZSBidWZmZXIgaW50ZXJmYWNlIiwKKyAgICAgICAgICAgICAgICAgICAgICInJS4xMDBzJyBkb2VzIG5vdCBzdXBwb3J0IHRoZSBidWZmZXIgaW50ZXJmYWNlIiwKICAgICAgICAgICAgICAgICAgICAgIFB5X1RZUEUob2JqKS0+dHBfbmFtZSk7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CkBAIC02OTYsMTYgKzY5NywxNiBAQAogICAgIFB5T2JqZWN0ICptZXRoOwogICAgIFB5T2JqZWN0ICplbXB0eSA9IE5VTEw7CiAgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpmb3JtYXRfY2FjaGUgPSBOVUxMOworICAgIF9QeV9JREVOVElGSUVSKF9fZm9ybWF0X18pOwogCiAgICAgLyogSWYgbm8gZm9ybWF0X3NwZWMgaXMgcHJvdmlkZWQsIHVzZSBhbiBlbXB0eSBzdHJpbmcgKi8KICAgICBpZiAoZm9ybWF0X3NwZWMgPT0gTlVMTCkgewotICAgICAgICBlbXB0eSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCAwKTsKKyAgICAgICAgZW1wdHkgPSBQeVVuaWNvZGVfTmV3KDAsIDApOwogICAgICAgICBmb3JtYXRfc3BlYyA9IGVtcHR5OwogICAgIH0KIAogICAgIC8qIEZpbmQgdGhlICh1bmJvdW5kISkgX19mb3JtYXRfXyBtZXRob2QgKGEgYm9ycm93ZWQgcmVmZXJlbmNlKSAqLwotICAgIG1ldGggPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChvYmosICJfX2Zvcm1hdF9fIiwgJmZvcm1hdF9jYWNoZSk7CisgICAgbWV0aCA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKG9iaiwgJlB5SWRfX19mb3JtYXRfXyk7CiAgICAgaWYgKG1ldGggPT0gTlVMTCkgewogICAgICAgICBpZiAoIVB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLApAQCAtNzkyLDggKzc5Myw3IEBACiAgICAgICAgICAgICByZXR1cm4geDsKICAgICAgICAgUHlfREVDUkVGKHgpOyAvKiBjYW4ndCBkbyBpdCAqLwogICAgIH0KLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0xMzc5LDkgKzEzNzksNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVzX0dFVF9TSVpFKG8pKTsKICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKG8pKQogICAgICAgICAvKiBUaGUgYWJvdmUgY2hlY2sgaXMgZG9uZSBpbiBQeUxvbmdfRnJvbVVuaWNvZGUoKS4gKi8KLSAgICAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tVW5pY29kZShQeVVuaWNvZGVfQVNfVU5JQ09ERShvKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUobyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTApOworICAgICAgICByZXR1cm4gUHlMb25nX0Zyb21Vbmljb2RlT2JqZWN0KG8sIDEwKTsKICAgICBpZiAoIVB5T2JqZWN0X0FzQ2hhckJ1ZmZlcihvLCAmYnVmZmVyLCAmYnVmZmVyX2xlbikpCiAgICAgICAgIHJldHVybiBsb25nX2Zyb21fc3RyaW5nKGJ1ZmZlciwgYnVmZmVyX2xlbik7CiAKQEAgLTE5ODYsNyArMTk4NCw3IEBACiBpbnQKIFB5TWFwcGluZ19DaGVjayhQeU9iamVjdCAqbykKIHsKLSAgICByZXR1cm4gICAgICBvICYmIG8tPm9iX3R5cGUtPnRwX2FzX21hcHBpbmcgJiYKKyAgICByZXR1cm4gbyAmJiBvLT5vYl90eXBlLT50cF9hc19tYXBwaW5nICYmCiAgICAgICAgIG8tPm9iX3R5cGUtPnRwX2FzX21hcHBpbmctPm1wX3N1YnNjcmlwdDsKIH0KIApAQCAtMjA4NCwxMCArMjA4MiwxMSBAQAogewogICAgIFB5T2JqZWN0ICprZXlzOwogICAgIFB5T2JqZWN0ICpmYXN0OworICAgIF9QeV9JREVOVElGSUVSKGtleXMpOwogCiAgICAgaWYgKFB5RGljdF9DaGVja0V4YWN0KG8pKQogICAgICAgICByZXR1cm4gUHlEaWN0X0tleXMobyk7Ci0gICAga2V5cyA9IFB5T2JqZWN0X0NhbGxNZXRob2QobywgImtleXMiLCBOVUxMKTsKKyAgICBrZXlzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChvLCAmUHlJZF9rZXlzLCBOVUxMKTsKICAgICBpZiAoa2V5cyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBmYXN0ID0gUHlTZXF1ZW5jZV9GYXN0KGtleXMsICJvLmtleXMoKSBhcmUgbm90IGl0ZXJhYmxlIik7CkBAIC0yMTAwLDEwICsyMDk5LDExIEBACiB7CiAgICAgUHlPYmplY3QgKml0ZW1zOwogICAgIFB5T2JqZWN0ICpmYXN0OworICAgIF9QeV9JREVOVElGSUVSKGl0ZW1zKTsKIAogICAgIGlmIChQeURpY3RfQ2hlY2tFeGFjdChvKSkKICAgICAgICAgcmV0dXJuIFB5RGljdF9JdGVtcyhvKTsKLSAgICBpdGVtcyA9IFB5T2JqZWN0X0NhbGxNZXRob2QobywgIml0ZW1zIiwgTlVMTCk7CisgICAgaXRlbXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKG8sICZQeUlkX2l0ZW1zLCBOVUxMKTsKICAgICBpZiAoaXRlbXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgZmFzdCA9IFB5U2VxdWVuY2VfRmFzdChpdGVtcywgIm8uaXRlbXMoKSBhcmUgbm90IGl0ZXJhYmxlIik7CkBAIC0yMTE2LDEwICsyMTE2LDExIEBACiB7CiAgICAgUHlPYmplY3QgKnZhbHVlczsKICAgICBQeU9iamVjdCAqZmFzdDsKKyAgICBfUHlfSURFTlRJRklFUih2YWx1ZXMpOwogCiAgICAgaWYgKFB5RGljdF9DaGVja0V4YWN0KG8pKQogICAgICAgICByZXR1cm4gUHlEaWN0X1ZhbHVlcyhvKTsKLSAgICB2YWx1ZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKG8sICJ2YWx1ZXMiLCBOVUxMKTsKKyAgICB2YWx1ZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKG8sICZQeUlkX3ZhbHVlcywgTlVMTCk7CiAgICAgaWYgKHZhbHVlcyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBmYXN0ID0gUHlTZXF1ZW5jZV9GYXN0KHZhbHVlcywgIm8udmFsdWVzKCkgYXJlIG5vdCBpdGVyYWJsZSIpOwpAQCAtMjIyNSwyMiArMjIyNiwxMSBAQAogICAgIHJldHVybiBjYWxsX2Z1bmN0aW9uX3RhaWwoY2FsbGFibGUsIGFyZ3MpOwogfQogCi1QeU9iamVjdCAqCi1QeU9iamVjdF9DYWxsTWV0aG9kKFB5T2JqZWN0ICpvLCBjaGFyICpuYW1lLCBjaGFyICpmb3JtYXQsIC4uLikKK3N0YXRpYyBQeU9iamVjdCoKK2NhbGxtZXRob2QoUHlPYmplY3QqIGZ1bmMsIGNoYXIgKmZvcm1hdCwgdmFfbGlzdCB2YSwgaW50IGlzX3NpemVfdCkKIHsKLSAgICB2YV9saXN0IHZhOwotICAgIFB5T2JqZWN0ICphcmdzOwotICAgIFB5T2JqZWN0ICpmdW5jID0gTlVMTDsKICAgICBQeU9iamVjdCAqcmV0dmFsID0gTlVMTDsKLQotICAgIGlmIChvID09IE5VTEwgfHwgbmFtZSA9PSBOVUxMKQotICAgICAgICByZXR1cm4gbnVsbF9lcnJvcigpOwotCi0gICAgZnVuYyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcobywgbmFtZSk7Ci0gICAgaWYgKGZ1bmMgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQXR0cmlidXRlRXJyb3IsIG5hbWUpOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9CisgICAgUHlPYmplY3QgKmFyZ3M7CiAKICAgICBpZiAoIVB5Q2FsbGFibGVfQ2hlY2soZnVuYykpIHsKICAgICAgICAgdHlwZV9lcnJvcigiYXR0cmlidXRlIG9mIHR5cGUgJyUuMjAwcycgaXMgbm90IGNhbGxhYmxlIiwgZnVuYyk7CkBAIC0yMjQ4LDkgKzIyMzgsMTAgQEAKICAgICB9CiAKICAgICBpZiAoZm9ybWF0ICYmICpmb3JtYXQpIHsKLSAgICAgICAgdmFfc3RhcnQodmEsIGZvcm1hdCk7Ci0gICAgICAgIGFyZ3MgPSBQeV9WYUJ1aWxkVmFsdWUoZm9ybWF0LCB2YSk7Ci0gICAgICAgIHZhX2VuZCh2YSk7CisgICAgICAgIGlmIChpc19zaXplX3QpCisgICAgICAgICAgICBhcmdzID0gX1B5X1ZhQnVpbGRWYWx1ZV9TaXplVChmb3JtYXQsIHZhKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgYXJncyA9IFB5X1ZhQnVpbGRWYWx1ZShmb3JtYXQsIHZhKTsKICAgICB9CiAgICAgZWxzZQogICAgICAgICBhcmdzID0gUHlUdXBsZV9OZXcoMCk7CkBAIC0yMjY1LDQ0ICsyMjU2LDg2IEBACiB9CiAKIFB5T2JqZWN0ICoKK1B5T2JqZWN0X0NhbGxNZXRob2QoUHlPYmplY3QgKm8sIGNoYXIgKm5hbWUsIGNoYXIgKmZvcm1hdCwgLi4uKQoreworICAgIHZhX2xpc3QgdmE7CisgICAgUHlPYmplY3QgKmZ1bmMgPSBOVUxMOworICAgIFB5T2JqZWN0ICpyZXR2YWwgPSBOVUxMOworCisgICAgaWYgKG8gPT0gTlVMTCB8fCBuYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybiBudWxsX2Vycm9yKCk7CisKKyAgICBmdW5jID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvLCBuYW1lKTsKKyAgICBpZiAoZnVuYyA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIHZhX3N0YXJ0KHZhLCBmb3JtYXQpOworICAgIHJldHZhbCA9IGNhbGxtZXRob2QoZnVuYywgZm9ybWF0LCB2YSwgMCk7CisgICAgdmFfZW5kKHZhKTsKKyAgICByZXR1cm4gcmV0dmFsOworfQorCitQeU9iamVjdCAqCitfUHlPYmplY3RfQ2FsbE1ldGhvZElkKFB5T2JqZWN0ICpvLCBfUHlfSWRlbnRpZmllciAqbmFtZSwgY2hhciAqZm9ybWF0LCAuLi4pCit7CisgICAgdmFfbGlzdCB2YTsKKyAgICBQeU9iamVjdCAqZnVuYyA9IE5VTEw7CisgICAgUHlPYmplY3QgKnJldHZhbCA9IE5VTEw7CisKKyAgICBpZiAobyA9PSBOVUxMIHx8IG5hbWUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIG51bGxfZXJyb3IoKTsKKworICAgIGZ1bmMgPSBfUHlPYmplY3RfR2V0QXR0cklkKG8sIG5hbWUpOworICAgIGlmIChmdW5jID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgdmFfc3RhcnQodmEsIGZvcm1hdCk7CisgICAgcmV0dmFsID0gY2FsbG1ldGhvZChmdW5jLCBmb3JtYXQsIHZhLCAwKTsKKyAgICB2YV9lbmQodmEpOworICAgIHJldHVybiByZXR2YWw7Cit9CisKK1B5T2JqZWN0ICoKIF9QeU9iamVjdF9DYWxsTWV0aG9kX1NpemVUKFB5T2JqZWN0ICpvLCBjaGFyICpuYW1lLCBjaGFyICpmb3JtYXQsIC4uLikKIHsKICAgICB2YV9saXN0IHZhOwotICAgIFB5T2JqZWN0ICphcmdzOwogICAgIFB5T2JqZWN0ICpmdW5jID0gTlVMTDsKLSAgICBQeU9iamVjdCAqcmV0dmFsID0gTlVMTDsKKyAgICBQeU9iamVjdCAqcmV0dmFsOwogCiAgICAgaWYgKG8gPT0gTlVMTCB8fCBuYW1lID09IE5VTEwpCiAgICAgICAgIHJldHVybiBudWxsX2Vycm9yKCk7CiAKICAgICBmdW5jID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvLCBuYW1lKTsKICAgICBpZiAoZnVuYyA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19BdHRyaWJ1dGVFcnJvciwgbmFtZSk7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KLQotICAgIGlmICghUHlDYWxsYWJsZV9DaGVjayhmdW5jKSkgewotICAgICAgICB0eXBlX2Vycm9yKCJhdHRyaWJ1dGUgb2YgdHlwZSAnJS4yMDBzJyBpcyBub3QgY2FsbGFibGUiLCBmdW5jKTsKLSAgICAgICAgZ290byBleGl0OwotICAgIH0KLQotICAgIGlmIChmb3JtYXQgJiYgKmZvcm1hdCkgewotICAgICAgICB2YV9zdGFydCh2YSwgZm9ybWF0KTsKLSAgICAgICAgYXJncyA9IF9QeV9WYUJ1aWxkVmFsdWVfU2l6ZVQoZm9ybWF0LCB2YSk7Ci0gICAgICAgIHZhX2VuZCh2YSk7Ci0gICAgfQotICAgIGVsc2UKLSAgICAgICAgYXJncyA9IFB5VHVwbGVfTmV3KDApOwotCi0gICAgcmV0dmFsID0gY2FsbF9mdW5jdGlvbl90YWlsKGZ1bmMsIGFyZ3MpOwotCi0gIGV4aXQ6Ci0gICAgLyogYXJncyBnZXRzIGNvbnN1bWVkIGluIGNhbGxfZnVuY3Rpb25fdGFpbCAqLwotICAgIFB5X1hERUNSRUYoZnVuYyk7Ci0KKyAgICB2YV9zdGFydCh2YSwgZm9ybWF0KTsKKyAgICByZXR2YWwgPSBjYWxsbWV0aG9kKGZ1bmMsIGZvcm1hdCwgdmEsIDEpOworICAgIHZhX2VuZCh2YSk7CiAgICAgcmV0dXJuIHJldHZhbDsKIH0KIAorUHlPYmplY3QgKgorX1B5T2JqZWN0X0NhbGxNZXRob2RJZF9TaXplVChQeU9iamVjdCAqbywgX1B5X0lkZW50aWZpZXIgKm5hbWUsIGNoYXIgKmZvcm1hdCwgLi4uKQoreworICAgIHZhX2xpc3QgdmE7CisgICAgUHlPYmplY3QgKmZ1bmMgPSBOVUxMOworICAgIFB5T2JqZWN0ICpyZXR2YWw7CisKKyAgICBpZiAobyA9PSBOVUxMIHx8IG5hbWUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIG51bGxfZXJyb3IoKTsKKworICAgIGZ1bmMgPSBfUHlPYmplY3RfR2V0QXR0cklkKG8sIG5hbWUpOworICAgIGlmIChmdW5jID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHZhX3N0YXJ0KHZhLCBmb3JtYXQpOworICAgIHJldHZhbCA9IGNhbGxtZXRob2QoZnVuYywgZm9ybWF0LCB2YSwgMSk7CisgICAgdmFfZW5kKHZhKTsKKyAgICByZXR1cm4gcmV0dmFsOworfQogCiBzdGF0aWMgUHlPYmplY3QgKgogb2JqYXJnc19ta3R1cGxlKHZhX2xpc3QgdmEpCkBAIC0yNTM4LDcgKzI1NzEsNyBAQAogaW50CiBQeU9iamVjdF9Jc0luc3RhbmNlKFB5T2JqZWN0ICppbnN0LCBQeU9iamVjdCAqY2xzKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqbmFtZSA9IE5VTEw7CisgICAgX1B5X0lERU5USUZJRVIoX19pbnN0YW5jZWNoZWNrX18pOwogICAgIFB5T2JqZWN0ICpjaGVja2VyOwogCiAgICAgLyogUXVpY2sgdGVzdCBmb3IgYW4gZXhhY3QgbWF0Y2ggKi8KQEAgLTI1NjQsNyArMjU5Nyw3IEBACiAgICAgICAgIHJldHVybiByOwogICAgIH0KIAotICAgIGNoZWNrZXIgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChjbHMsICJfX2luc3RhbmNlY2hlY2tfXyIsICZuYW1lKTsKKyAgICBjaGVja2VyID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoY2xzLCAmUHlJZF9fX2luc3RhbmNlY2hlY2tfXyk7CiAgICAgaWYgKGNoZWNrZXIgIT0gTlVMTCkgewogICAgICAgICBQeU9iamVjdCAqcmVzOwogICAgICAgICBpbnQgb2sgPSAtMTsKQEAgLTI2MDcsNyArMjY0MCw3IEBACiBpbnQKIFB5T2JqZWN0X0lzU3ViY2xhc3MoUHlPYmplY3QgKmRlcml2ZWQsIFB5T2JqZWN0ICpjbHMpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpuYW1lID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX3N1YmNsYXNzY2hlY2tfXyk7CiAgICAgUHlPYmplY3QgKmNoZWNrZXI7CiAKICAgICBpZiAoUHlUdXBsZV9DaGVjayhjbHMpKSB7CkBAIC0yNjI5LDcgKzI2NjIsNyBAQAogICAgICAgICByZXR1cm4gcjsKICAgICB9CiAKLSAgICBjaGVja2VyID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoY2xzLCAiX19zdWJjbGFzc2NoZWNrX18iLCAmbmFtZSk7CisgICAgY2hlY2tlciA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKGNscywgJlB5SWRfX19zdWJjbGFzc2NoZWNrX18pOwogICAgIGlmIChjaGVja2VyICE9IE5VTEwpIHsKICAgICAgICAgUHlPYmplY3QgKnJlczsKICAgICAgICAgaW50IG9rID0gLTE7CmRpZmYgLS1naXQgYS9PYmplY3RzL2J5dGVhcnJheW9iamVjdC5jIGIvT2JqZWN0cy9ieXRlYXJyYXlvYmplY3QuYwppbmRleCA0MjAyZmYyLi4yNTcxODU4IDEwMDY0NAotLS0gYS9PYmplY3RzL2J5dGVhcnJheW9iamVjdC5jCisrKyBiL09iamVjdHMvYnl0ZWFycmF5b2JqZWN0LmMKQEAgLTEzOSw3ICsxMzksNyBAQAogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgYWxsb2MgPSBzaXplICsgMTsKLSAgICAgICAgbmV3LT5vYl9ieXRlcyA9IFB5TWVtX01hbGxvYyhhbGxvYyk7CisgICAgICAgIG5ldy0+b2JfYnl0ZXMgPSBQeU9iamVjdF9NYWxsb2MoYWxsb2MpOwogICAgICAgICBpZiAobmV3LT5vYl9ieXRlcyA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYobmV3KTsKICAgICAgICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOwpAQCAtMjA5LDcgKzIwOSw3IEBACiAgICAgICAgIGFsbG9jID0gc2l6ZSArIDE7CiAgICAgfQogCi0gICAgc3ZhbCA9IFB5TWVtX1JlYWxsb2MoKChQeUJ5dGVBcnJheU9iamVjdCAqKXNlbGYpLT5vYl9ieXRlcywgYWxsb2MpOworICAgIHN2YWwgPSBQeU9iamVjdF9SZWFsbG9jKCgoUHlCeXRlQXJyYXlPYmplY3QgKilzZWxmKS0+b2JfYnl0ZXMsIGFsbG9jKTsKICAgICBpZiAoc3ZhbCA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgIHJldHVybiAtMTsKQEAgLTg1MCw4NyArODUwLDgyIEBACiBzdGF0aWMgUHlPYmplY3QgKgogYnl0ZWFycmF5X3JlcHIoUHlCeXRlQXJyYXlPYmplY3QgKnNlbGYpCiB7Ci0gICAgc3RhdGljIGNvbnN0IGNoYXIgKmhleGRpZ2l0cyA9ICIwMTIzNDU2Nzg5YWJjZGVmIjsKICAgICBjb25zdCBjaGFyICpxdW90ZV9wcmVmaXggPSAiYnl0ZWFycmF5KGIiOwogICAgIGNvbnN0IGNoYXIgKnF1b3RlX3Bvc3RmaXggPSAiKSI7CiAgICAgUHlfc3NpemVfdCBsZW5ndGggPSBQeV9TSVpFKHNlbGYpOwotICAgIC8qIDE0ID09IHN0cmxlbihxdW90ZV9wcmVmaXgpICsgMiArIHN0cmxlbihxdW90ZV9wb3N0Zml4KSAqLworICAgIC8qIDE1ID09IHN0cmxlbihxdW90ZV9wcmVmaXgpICsgMiArIHN0cmxlbihxdW90ZV9wb3N0Zml4KSArIDEgKi8KICAgICBzaXplX3QgbmV3c2l6ZTsKICAgICBQeU9iamVjdCAqdjsKLSAgICBpZiAobGVuZ3RoID4gKFBZX1NTSVpFX1RfTUFYIC0gMTQpIC8gNCkgeworICAgIHJlZ2lzdGVyIFB5X3NzaXplX3QgaTsKKyAgICByZWdpc3RlciBjaGFyIGM7CisgICAgcmVnaXN0ZXIgY2hhciAqcDsKKyAgICBpbnQgcXVvdGU7CisgICAgY2hhciAqdGVzdCwgKnN0YXJ0OworICAgIGNoYXIgKmJ1ZmZlcjsKKworICAgIGlmIChsZW5ndGggPiAoUFlfU1NJWkVfVF9NQVggLSAxNSkgLyA0KSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAogICAgICAgICAgICAgImJ5dGVhcnJheSBvYmplY3QgaXMgdG9vIGxhcmdlIHRvIG1ha2UgcmVwciIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgbmV3c2l6ZSA9IDE0ICsgNCAqIGxlbmd0aDsKLSAgICB2ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIG5ld3NpemUpOwotICAgIGlmICh2ID09IE5VTEwpIHsKKworICAgIG5ld3NpemUgPSAxNSArIGxlbmd0aCAqIDQ7CisgICAgYnVmZmVyID0gUHlPYmplY3RfTWFsbG9jKG5ld3NpemUpOworICAgIGlmIChidWZmZXIgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIHJlZ2lzdGVyIFB5X3NzaXplX3QgaTsKLSAgICAgICAgcmVnaXN0ZXIgUHlfVU5JQ09ERSBjOwotICAgICAgICByZWdpc3RlciBQeV9VTklDT0RFICpwOwotICAgICAgICBpbnQgcXVvdGU7CiAKLSAgICAgICAgLyogRmlndXJlIG91dCB3aGljaCBxdW90ZSB0byB1c2U7IHNpbmdsZSBpcyBwcmVmZXJyZWQgKi8KLSAgICAgICAgcXVvdGUgPSAnXCcnOwotICAgICAgICB7Ci0gICAgICAgICAgICBjaGFyICp0ZXN0LCAqc3RhcnQ7Ci0gICAgICAgICAgICBzdGFydCA9IFB5Qnl0ZUFycmF5X0FTX1NUUklORyhzZWxmKTsKLSAgICAgICAgICAgIGZvciAodGVzdCA9IHN0YXJ0OyB0ZXN0IDwgc3RhcnQrbGVuZ3RoOyArK3Rlc3QpIHsKLSAgICAgICAgICAgICAgICBpZiAoKnRlc3QgPT0gJyInKSB7Ci0gICAgICAgICAgICAgICAgICAgIHF1b3RlID0gJ1wnJzsgLyogYmFjayB0byBzaW5nbGUgKi8KLSAgICAgICAgICAgICAgICAgICAgZ290byBkZWNpZGVkOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBlbHNlIGlmICgqdGVzdCA9PSAnXCcnKQotICAgICAgICAgICAgICAgICAgICBxdW90ZSA9ICciJzsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICBkZWNpZGVkOgotICAgICAgICAgICAgOworICAgIC8qIEZpZ3VyZSBvdXQgd2hpY2ggcXVvdGUgdG8gdXNlOyBzaW5nbGUgaXMgcHJlZmVycmVkICovCisgICAgcXVvdGUgPSAnXCcnOworICAgIHN0YXJ0ID0gUHlCeXRlQXJyYXlfQVNfU1RSSU5HKHNlbGYpOworICAgIGZvciAodGVzdCA9IHN0YXJ0OyB0ZXN0IDwgc3RhcnQrbGVuZ3RoOyArK3Rlc3QpIHsKKyAgICAgICAgaWYgKCp0ZXN0ID09ICciJykgeworICAgICAgICAgICAgcXVvdGUgPSAnXCcnOyAvKiBiYWNrIHRvIHNpbmdsZSAqLworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLQotICAgICAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7Ci0gICAgICAgIHdoaWxlICgqcXVvdGVfcHJlZml4KQotICAgICAgICAgICAgKnArKyA9ICpxdW90ZV9wcmVmaXgrKzsKLSAgICAgICAgKnArKyA9IHF1b3RlOwotCi0gICAgICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewotICAgICAgICAgICAgLyogVGhlcmUncyBhdCBsZWFzdCBlbm91Z2ggcm9vbSBmb3IgYSBoZXggZXNjYXBlCi0gICAgICAgICAgICAgICBhbmQgYSBjbG9zaW5nIHF1b3RlLiAqLwotICAgICAgICAgICAgYXNzZXJ0KG5ld3NpemUgLSAocCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA+PSA1KTsKLSAgICAgICAgICAgIGMgPSBzZWxmLT5vYl9ieXRlc1tpXTsKLSAgICAgICAgICAgIGlmIChjID09ICdcJycgfHwgYyA9PSAnXFwnKQotICAgICAgICAgICAgICAgICpwKysgPSAnXFwnLCAqcCsrID0gYzsKLSAgICAgICAgICAgIGVsc2UgaWYgKGMgPT0gJ1x0JykKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9ICd0JzsKLSAgICAgICAgICAgIGVsc2UgaWYgKGMgPT0gJ1xuJykKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9ICduJzsKLSAgICAgICAgICAgIGVsc2UgaWYgKGMgPT0gJ1xyJykKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9ICdyJzsKLSAgICAgICAgICAgIGVsc2UgaWYgKGMgPT0gMCkKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9ICd4JywgKnArKyA9ICcwJywgKnArKyA9ICcwJzsKLSAgICAgICAgICAgIGVsc2UgaWYgKGMgPCAnICcgfHwgYyA+PSAweDdmKSB7Ci0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAgICAgKnArKyA9ICd4JzsKLSAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjICYgMHhmMCkgPj4gNF07Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjICYgMHhmXTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAqcCsrID0gYzsKLSAgICAgICAgfQotICAgICAgICBhc3NlcnQobmV3c2l6ZSAtIChwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodikpID49IDEpOwotICAgICAgICAqcCsrID0gcXVvdGU7Ci0gICAgICAgIHdoaWxlICgqcXVvdGVfcG9zdGZpeCkgewotICAgICAgICAgICAqcCsrID0gKnF1b3RlX3Bvc3RmaXgrKzsKLSAgICAgICAgfQotICAgICAgICAqcCA9ICdcMCc7Ci0gICAgICAgIGlmIChQeVVuaWNvZGVfUmVzaXplKCZ2LCAocCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSkpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRih2KTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIHJldHVybiB2OworICAgICAgICBlbHNlIGlmICgqdGVzdCA9PSAnXCcnKQorICAgICAgICAgICAgcXVvdGUgPSAnIic7CiAgICAgfQorCisgICAgcCA9IGJ1ZmZlcjsKKyAgICB3aGlsZSAoKnF1b3RlX3ByZWZpeCkKKyAgICAgICAgKnArKyA9ICpxdW90ZV9wcmVmaXgrKzsKKyAgICAqcCsrID0gcXVvdGU7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgLyogVGhlcmUncyBhdCBsZWFzdCBlbm91Z2ggcm9vbSBmb3IgYSBoZXggZXNjYXBlCisgICAgICAgICAgIGFuZCBhIGNsb3NpbmcgcXVvdGUuICovCisgICAgICAgIGFzc2VydChuZXdzaXplIC0gKHAgLSBidWZmZXIpID49IDUpOworICAgICAgICBjID0gc2VsZi0+b2JfYnl0ZXNbaV07CisgICAgICAgIGlmIChjID09ICdcJycgfHwgYyA9PSAnXFwnKQorICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSBjOworICAgICAgICBlbHNlIGlmIChjID09ICdcdCcpCisgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9ICd0JzsKKyAgICAgICAgZWxzZSBpZiAoYyA9PSAnXG4nKQorICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAnbic7CisgICAgICAgIGVsc2UgaWYgKGMgPT0gJ1xyJykKKyAgICAgICAgICAgICpwKysgPSAnXFwnLCAqcCsrID0gJ3InOworICAgICAgICBlbHNlIGlmIChjID09IDApCisgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9ICd4JywgKnArKyA9ICcwJywgKnArKyA9ICcwJzsKKyAgICAgICAgZWxzZSBpZiAoYyA8ICcgJyB8fCBjID49IDB4N2YpIHsKKyAgICAgICAgICAgICpwKysgPSAnXFwnOworICAgICAgICAgICAgKnArKyA9ICd4JzsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGMgJiAweGYwKSA+PiA0XTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbYyAmIDB4Zl07CisgICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICAgICAgKnArKyA9IGM7CisgICAgfQorICAgIGFzc2VydChuZXdzaXplIC0gKHAgLSBidWZmZXIpID49IDEpOworICAgICpwKysgPSBxdW90ZTsKKyAgICB3aGlsZSAoKnF1b3RlX3Bvc3RmaXgpIHsKKyAgICAgICAqcCsrID0gKnF1b3RlX3Bvc3RmaXgrKzsKKyAgICB9CisKKyAgICB2ID0gUHlVbmljb2RlX0RlY29kZUFTQ0lJKGJ1ZmZlciwgcCAtIGJ1ZmZlciwgTlVMTCk7CisgICAgUHlPYmplY3RfRnJlZShidWZmZXIpOworICAgIHJldHVybiB2OwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtOTY0LDIzICs5NTksMjAgQEAKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogCi0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIH0KIAogICAgIHNlbGZfc2l6ZSA9IF9nZXRidWZmZXIoc2VsZiwgJnNlbGZfYnl0ZXMpOwogICAgIGlmIChzZWxmX3NpemUgPCAwKSB7CiAgICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIH0KIAogICAgIG90aGVyX3NpemUgPSBfZ2V0YnVmZmVyKG90aGVyLCAmb3RoZXJfYnl0ZXMpOwogICAgIGlmIChvdGhlcl9zaXplIDwgMCkgewogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZzZWxmX2J5dGVzKTsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgfQogCiAgICAgaWYgKHNlbGZfc2l6ZSAhPSBvdGhlcl9zaXplICYmIChvcCA9PSBQeV9FUSB8fCBvcCA9PSBQeV9ORSkpIHsKQEAgLTEwMjgsNyArMTAyMCw3IEBACiAgICAgICAgIFB5RXJyX1ByaW50KCk7CiAgICAgfQogICAgIGlmIChzZWxmLT5vYl9ieXRlcyAhPSAwKSB7Ci0gICAgICAgIFB5TWVtX0ZyZWUoc2VsZi0+b2JfYnl0ZXMpOworICAgICAgICBQeU9iamVjdF9GcmVlKHNlbGYtPm9iX2J5dGVzKTsKICAgICB9CiAgICAgUHlfVFlQRShzZWxmKS0+dHBfZnJlZSgoUHlPYmplY3QgKilzZWxmKTsKIH0KQEAgLTEwMzcsNiArMTAyOSw4IEBACiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogLyogTWV0aG9kcyAqLwogCisjZGVmaW5lIEZBU1RTRUFSQ0ggZmFzdHNlYXJjaAorI2RlZmluZSBTVFJJTkdMSUIoRikgc3RyaW5nbGliXyMjRgogI2RlZmluZSBTVFJJTkdMSUJfQ0hBUiBjaGFyCiAjZGVmaW5lIFNUUklOR0xJQl9MRU4gUHlCeXRlQXJyYXlfR0VUX1NJWkUKICNkZWZpbmUgU1RSSU5HTElCX1NUUiBQeUJ5dGVBcnJheV9BU19TVFJJTkcKQEAgLTEwNzcsMjQgKzEwNzEsNDEgQEAKIGJ5dGVhcnJheV9maW5kX2ludGVybmFsKFB5Qnl0ZUFycmF5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgaW50IGRpcikKIHsKICAgICBQeU9iamVjdCAqc3Vib2JqOworICAgIGNoYXIgYnl0ZTsKICAgICBQeV9idWZmZXIgc3ViYnVmOworICAgIGNvbnN0IGNoYXIgKnN1YjsKKyAgICBQeV9zc2l6ZV90IHN1Yl9sZW47CiAgICAgUHlfc3NpemVfdCBzdGFydD0wLCBlbmQ9UFlfU1NJWkVfVF9NQVg7CiAgICAgUHlfc3NpemVfdCByZXM7CiAKLSAgICBpZiAoIXN0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzKCJmaW5kL3JmaW5kL2luZGV4L3JpbmRleCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzLCAmc3Vib2JqLCAmc3RhcnQsICZlbmQpKQorICAgIGlmICghc3RyaW5nbGliX3BhcnNlX2FyZ3NfZmluZHNfYnl0ZSgiZmluZC9yZmluZC9pbmRleC9yaW5kZXgiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzLCAmc3Vib2JqLCAmYnl0ZSwgJnN0YXJ0LCAmZW5kKSkKICAgICAgICAgcmV0dXJuIC0yOwotICAgIGlmIChfZ2V0YnVmZmVyKHN1Ym9iaiwgJnN1YmJ1ZikgPCAwKQotICAgICAgICByZXR1cm4gLTI7CisKKyAgICBpZiAoc3Vib2JqKSB7CisgICAgICAgIGlmIChfZ2V0YnVmZmVyKHN1Ym9iaiwgJnN1YmJ1ZikgPCAwKQorICAgICAgICAgICAgcmV0dXJuIC0yOworCisgICAgICAgIHN1YiA9IHN1YmJ1Zi5idWY7CisgICAgICAgIHN1Yl9sZW4gPSBzdWJidWYubGVuOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgc3ViID0gJmJ5dGU7CisgICAgICAgIHN1Yl9sZW4gPSAxOworICAgIH0KKwogICAgIGlmIChkaXIgPiAwKQogICAgICAgICByZXMgPSBzdHJpbmdsaWJfZmluZF9zbGljZSgKICAgICAgICAgICAgIFB5Qnl0ZUFycmF5X0FTX1NUUklORyhzZWxmKSwgUHlCeXRlQXJyYXlfR0VUX1NJWkUoc2VsZiksCi0gICAgICAgICAgICBzdWJidWYuYnVmLCBzdWJidWYubGVuLCBzdGFydCwgZW5kKTsKKyAgICAgICAgICAgIHN1Yiwgc3ViX2xlbiwgc3RhcnQsIGVuZCk7CiAgICAgZWxzZQogICAgICAgICByZXMgPSBzdHJpbmdsaWJfcmZpbmRfc2xpY2UoCiAgICAgICAgICAgICBQeUJ5dGVBcnJheV9BU19TVFJJTkcoc2VsZiksIFB5Qnl0ZUFycmF5X0dFVF9TSVpFKHNlbGYpLAotICAgICAgICAgICAgc3ViYnVmLmJ1Ziwgc3ViYnVmLmxlbiwgc3RhcnQsIGVuZCk7Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSgmc3ViYnVmKTsKKyAgICAgICAgICAgIHN1Yiwgc3ViX2xlbiwgc3RhcnQsIGVuZCk7CisKKyAgICBpZiAoc3Vib2JqKQorICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZzdWJidWYpOworCiAgICAgcmV0dXJuIHJlczsKIH0KIApAQCAtMTEyNywyNiArMTEzOCw2NiBAQAogYnl0ZWFycmF5X2NvdW50KFB5Qnl0ZUFycmF5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBQeU9iamVjdCAqc3ViX29iajsKLSAgICBjb25zdCBjaGFyICpzdHIgPSBQeUJ5dGVBcnJheV9BU19TVFJJTkcoc2VsZik7CisgICAgY29uc3QgY2hhciAqc3RyID0gUHlCeXRlQXJyYXlfQVNfU1RSSU5HKHNlbGYpLCAqc3ViOworICAgIFB5X3NzaXplX3Qgc3ViX2xlbjsKKyAgICBjaGFyIGJ5dGU7CiAgICAgUHlfc3NpemVfdCBzdGFydCA9IDAsIGVuZCA9IFBZX1NTSVpFX1RfTUFYOworCiAgICAgUHlfYnVmZmVyIHZzdWI7CiAgICAgUHlPYmplY3QgKmNvdW50X29iajsKIAotICAgIGlmICghc3RyaW5nbGliX3BhcnNlX2FyZ3NfZmluZHMoImNvdW50IiwgYXJncywgJnN1Yl9vYmosICZzdGFydCwgJmVuZCkpCisgICAgaWYgKCFzdHJpbmdsaWJfcGFyc2VfYXJnc19maW5kc19ieXRlKCJjb3VudCIsIGFyZ3MsICZzdWJfb2JqLCAmYnl0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0LCAmZW5kKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoX2dldGJ1ZmZlcihzdWJfb2JqLCAmdnN1YikgPCAwKQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoc3ViX29iaikgeworICAgICAgICBpZiAoX2dldGJ1ZmZlcihzdWJfb2JqLCAmdnN1YikgPCAwKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAgICAgc3ViID0gdnN1Yi5idWY7CisgICAgICAgIHN1Yl9sZW4gPSB2c3ViLmxlbjsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHN1YiA9ICZieXRlOworICAgICAgICBzdWJfbGVuID0gMTsKKyAgICB9CiAKICAgICBBREpVU1RfSU5ESUNFUyhzdGFydCwgZW5kLCBQeUJ5dGVBcnJheV9HRVRfU0laRShzZWxmKSk7CiAKICAgICBjb3VudF9vYmogPSBQeUxvbmdfRnJvbVNzaXplX3QoCi0gICAgICAgIHN0cmluZ2xpYl9jb3VudChzdHIgKyBzdGFydCwgZW5kIC0gc3RhcnQsIHZzdWIuYnVmLCB2c3ViLmxlbiwgUFlfU1NJWkVfVF9NQVgpCisgICAgICAgIHN0cmluZ2xpYl9jb3VudChzdHIgKyBzdGFydCwgZW5kIC0gc3RhcnQsIHN1Yiwgc3ViX2xlbiwgUFlfU1NJWkVfVF9NQVgpCiAgICAgICAgICk7Ci0gICAgUHlCdWZmZXJfUmVsZWFzZSgmdnN1Yik7CisKKyAgICBpZiAoc3ViX29iaikKKyAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmdnN1Yik7CisKICAgICByZXR1cm4gY291bnRfb2JqOwogfQogCitQeURvY19TVFJWQVIoY2xlYXJfX2RvY19fLAorIkIuY2xlYXIoKSAtPiBOb25lXG5cCitcblwKK1JlbW92ZSBhbGwgaXRlbXMgZnJvbSBCLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorYnl0ZWFycmF5X2NsZWFyKFB5Qnl0ZUFycmF5T2JqZWN0ICpzZWxmKQoreworICAgIGlmIChQeUJ5dGVBcnJheV9SZXNpemUoKFB5T2JqZWN0ICopc2VsZiwgMCkgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9SRVRVUk5fTk9ORTsKK30KKworUHlEb2NfU1RSVkFSKGNvcHlfX2RvY19fLAorIkIuY29weSgpIC0+IGJ5dGVhcnJheVxuXAorXG5cCitSZXR1cm4gYSBjb3B5IG9mIEIuIik7CisKK3N0YXRpYyBQeU9iamVjdCAqCitieXRlYXJyYXlfY29weShQeUJ5dGVBcnJheU9iamVjdCAqc2VsZikKK3sKKyAgICByZXR1cm4gUHlCeXRlQXJyYXlfRnJvbVN0cmluZ0FuZFNpemUoUHlCeXRlQXJyYXlfQVNfU1RSSU5HKChQeU9iamVjdCAqKXNlbGYpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUJ5dGVBcnJheV9HRVRfU0laRShzZWxmKSk7Cit9CiAKIFB5RG9jX1NUUlZBUihpbmRleF9fZG9jX18sCiAiQi5pbmRleChzdWJbLCBzdGFydFssIGVuZF1dKSAtPiBpbnRcblwKQEAgLTI0NDQsNyArMjQ5NSw3IEBACiBzdGF0aWMgUHlPYmplY3QgKgogYnl0ZWFycmF5X3JzdHJpcChQeUJ5dGVBcnJheU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlfc3NpemVfdCBsZWZ0LCByaWdodCwgbXlzaXplLCBhcmdzaXplOworICAgIFB5X3NzaXplX3QgcmlnaHQsIG15c2l6ZSwgYXJnc2l6ZTsKICAgICB2b2lkICpteXB0ciwgKmFyZ3B0cjsKICAgICBQeU9iamVjdCAqYXJnID0gUHlfTm9uZTsKICAgICBQeV9idWZmZXIgdmFyZzsKQEAgLTI0NjIsMTEgKzI1MTMsMTAgQEAKICAgICB9CiAgICAgbXlwdHIgPSBzZWxmLT5vYl9ieXRlczsKICAgICBteXNpemUgPSBQeV9TSVpFKHNlbGYpOwotICAgIGxlZnQgPSAwOwogICAgIHJpZ2h0ID0gcnN0cmlwX2hlbHBlcihteXB0ciwgbXlzaXplLCBhcmdwdHIsIGFyZ3NpemUpOwogICAgIGlmIChhcmcgIT0gUHlfTm9uZSkKICAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmdmFyZyk7Ci0gICAgcmV0dXJuIFB5Qnl0ZUFycmF5X0Zyb21TdHJpbmdBbmRTaXplKHNlbGYtPm9iX2J5dGVzICsgbGVmdCwgcmlnaHQgLSBsZWZ0KTsKKyAgICByZXR1cm4gUHlCeXRlQXJyYXlfRnJvbVN0cmluZ0FuZFNpemUoc2VsZi0+b2JfYnl0ZXMsIHJpZ2h0KTsKIH0KIAogUHlEb2NfU1RSVkFSKGRlY29kZV9kb2MsCkBAIC0yNTg4LDExICsyNjM4LDEzIEBACiBpcyBnaXZlbiBhbmQgdHJ1ZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotYnl0ZWFycmF5X3NwbGl0bGluZXMoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQorYnl0ZWFycmF5X3NwbGl0bGluZXMoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7ImtlZXBlbmRzIiwgMH07CiAgICAgaW50IGtlZXBlbmRzID0gMDsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifGk6c3BsaXRsaW5lcyIsICZrZWVwZW5kcykpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxpOnNwbGl0bGluZXMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3bGlzdCwgJmtlZXBlbmRzKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICByZXR1cm4gc3RyaW5nbGliX3NwbGl0bGluZXMoCkBAIC0yNjA5LDcgKzI2NjEsNyBAQAogRXhhbXBsZTogYnl0ZWFycmF5LmZyb21oZXgoJ0I5IDAxRUYnKSAtPiBieXRlYXJyYXkoYidcXHhiOVxceDAxXFx4ZWYnKS4iKTsKIAogc3RhdGljIGludAotaGV4X2RpZ2l0X3RvX2ludChQeV9VTklDT0RFIGMpCitoZXhfZGlnaXRfdG9faW50KFB5X1VDUzQgYykKIHsKICAgICBpZiAoYyA+PSAxMjgpCiAgICAgICAgIHJldHVybiAtMTsKQEAgLTI2MjksMTUgKzI2ODEsMjAgQEAKIHsKICAgICBQeU9iamVjdCAqbmV3Ynl0ZXMsICpoZXhvYmo7CiAgICAgY2hhciAqYnVmOwotICAgIFB5X1VOSUNPREUgKmhleDsKICAgICBQeV9zc2l6ZV90IGhleGxlbiwgYnl0ZXNsZW4sIGksIGo7CiAgICAgaW50IHRvcCwgYm90OworICAgIHZvaWQgKmRhdGE7CisgICAgdW5zaWduZWQgaW50IGtpbmQ7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6ZnJvbWhleCIsICZoZXhvYmopKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBhc3NlcnQoUHlVbmljb2RlX0NoZWNrKGhleG9iaikpOwotICAgIGhleGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShoZXhvYmopOwotICAgIGhleCA9IFB5VW5pY29kZV9BU19VTklDT0RFKGhleG9iaik7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShoZXhvYmopKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoaGV4b2JqKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoaGV4b2JqKTsKKyAgICBoZXhsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChoZXhvYmopOworCiAgICAgYnl0ZXNsZW4gPSBoZXhsZW4vMjsgLyogVGhpcyBvdmVyZXN0aW1hdGVzIGlmIHRoZXJlIGFyZSBzcGFjZXMgKi8KICAgICBuZXdieXRlcyA9IFB5Qnl0ZUFycmF5X0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGJ5dGVzbGVuKTsKICAgICBpZiAoIW5ld2J5dGVzKQpAQCAtMjY0NSwxMiArMjcwMiwxMiBAQAogICAgIGJ1ZiA9IFB5Qnl0ZUFycmF5X0FTX1NUUklORyhuZXdieXRlcyk7CiAgICAgZm9yIChpID0gaiA9IDA7IGkgPCBoZXhsZW47IGkgKz0gMikgewogICAgICAgICAvKiBza2lwIG92ZXIgc3BhY2VzIGluIHRoZSBpbnB1dCAqLwotICAgICAgICB3aGlsZSAoaGV4W2ldID09ICcgJykKKyAgICAgICAgd2hpbGUgKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpID09ICcgJykKICAgICAgICAgICAgIGkrKzsKICAgICAgICAgaWYgKGkgPj0gaGV4bGVuKQogICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIHRvcCA9IGhleF9kaWdpdF90b19pbnQoaGV4W2ldKTsKLSAgICAgICAgYm90ID0gaGV4X2RpZ2l0X3RvX2ludChoZXhbaSsxXSk7CisgICAgICAgIHRvcCA9IGhleF9kaWdpdF90b19pbnQoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpOworICAgICAgICBib3QgPSBoZXhfZGlnaXRfdG9faW50KFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkrMSkpOwogICAgICAgICBpZiAodG9wID09IC0xIHx8IGJvdCA9PSAtMSkgewogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIm5vbi1oZXhhZGVjaW1hbCBudW1iZXIgZm91bmQgaW4gIgpAQCAtMjY2OCwyNiArMjcyNSw1OSBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1QeURvY19TVFJWQVIocmVkdWNlX2RvYywgIlJldHVybiBzdGF0ZSBpbmZvcm1hdGlvbiBmb3IgcGlja2xpbmcuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi1ieXRlYXJyYXlfcmVkdWNlKFB5Qnl0ZUFycmF5T2JqZWN0ICpzZWxmKQorX2NvbW1vbl9yZWR1Y2UoUHlCeXRlQXJyYXlPYmplY3QgKnNlbGYsIGludCBwcm90bykKIHsKLSAgICBQeU9iamVjdCAqbGF0aW4xLCAqZGljdDsKLSAgICBpZiAoc2VsZi0+b2JfYnl0ZXMpCi0gICAgICAgIGxhdGluMSA9IFB5VW5pY29kZV9EZWNvZGVMYXRpbjEoc2VsZi0+b2JfYnl0ZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfU0laRShzZWxmKSwgTlVMTCk7Ci0gICAgZWxzZQotICAgICAgICBsYXRpbjEgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiIik7CisgICAgUHlPYmplY3QgKmRpY3Q7CisgICAgX1B5X0lERU5USUZJRVIoX19kaWN0X18pOwogCi0gICAgZGljdCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoKFB5T2JqZWN0ICopc2VsZiwgIl9fZGljdF9fIik7CisgICAgZGljdCA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0ICopc2VsZiwgJlB5SWRfX19kaWN0X18pOwogICAgIGlmIChkaWN0ID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgZGljdCA9IFB5X05vbmU7CiAgICAgICAgIFB5X0lOQ1JFRihkaWN0KTsKICAgICB9CiAKLSAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiKE8oTnMpTikiLCBQeV9UWVBFKHNlbGYpLCBsYXRpbjEsICJsYXRpbi0xIiwgZGljdCk7CisgICAgaWYgKHByb3RvIDwgMykgeworICAgICAgICAvKiB1c2Ugc3RyIGJhc2VkIHJlZHVjdGlvbiBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2l0aCBQeXRob24gMi54ICovCisgICAgICAgIFB5T2JqZWN0ICpsYXRpbjE7CisgICAgICAgIGlmIChzZWxmLT5vYl9ieXRlcykKKyAgICAgICAgICAgIGxhdGluMSA9IFB5VW5pY29kZV9EZWNvZGVMYXRpbjEoc2VsZi0+b2JfYnl0ZXMsIFB5X1NJWkUoc2VsZiksIE5VTEwpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBsYXRpbjEgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiIik7CisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTyhOcylOKSIsIFB5X1RZUEUoc2VsZiksIGxhdGluMSwgImxhdGluLTEiLCBkaWN0KTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIC8qIHVzZSBtb3JlIGVmZmljaWVudCBieXRlIGJhc2VkIHJlZHVjdGlvbiAqLworICAgICAgICBpZiAoc2VsZi0+b2JfYnl0ZXMpIHsKKyAgICAgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTyh5IylOKSIsIFB5X1RZUEUoc2VsZiksIHNlbGYtPm9iX2J5dGVzLCBQeV9TSVpFKHNlbGYpLCBkaWN0KTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTygpTikiLCBQeV9UWVBFKHNlbGYpLCBkaWN0KTsKKyAgICAgICAgfQorICAgIH0KK30KKworUHlEb2NfU1RSVkFSKHJlZHVjZV9kb2MsICJSZXR1cm4gc3RhdGUgaW5mb3JtYXRpb24gZm9yIHBpY2tsaW5nLiIpOworCitzdGF0aWMgUHlPYmplY3QgKgorYnl0ZWFycmF5X3JlZHVjZShQeUJ5dGVBcnJheU9iamVjdCAqc2VsZikKK3sKKyAgICByZXR1cm4gX2NvbW1vbl9yZWR1Y2Uoc2VsZiwgMik7Cit9CisKK1B5RG9jX1NUUlZBUihyZWR1Y2VfZXhfZG9jLCAiUmV0dXJuIHN0YXRlIGluZm9ybWF0aW9uIGZvciBwaWNrbGluZy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2J5dGVhcnJheV9yZWR1Y2VfZXgoUHlCeXRlQXJyYXlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQoreworICAgIGludCBwcm90byA9IDA7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInxpOl9fcmVkdWNlX2V4X18iLCAmcHJvdG8pKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHJldHVybiBfY29tbW9uX3JlZHVjZShzZWxmLCBwcm90byk7CiB9CiAKIFB5RG9jX1NUUlZBUihzaXplb2ZfZG9jLApAQCAtMjczMSwxMSArMjgyMSwxNCBAQAogYnl0ZWFycmF5X21ldGhvZHNbXSA9IHsKICAgICB7Il9fYWxsb2NfXyIsIChQeUNGdW5jdGlvbilieXRlYXJyYXlfYWxsb2MsIE1FVEhfTk9BUkdTLCBhbGxvY19kb2N9LAogICAgIHsiX19yZWR1Y2VfXyIsIChQeUNGdW5jdGlvbilieXRlYXJyYXlfcmVkdWNlLCBNRVRIX05PQVJHUywgcmVkdWNlX2RvY30sCisgICAgeyJfX3JlZHVjZV9leF9fIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9yZWR1Y2VfZXgsIE1FVEhfVkFSQVJHUywgcmVkdWNlX2V4X2RvY30sCiAgICAgeyJfX3NpemVvZl9fIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9zaXplb2YsIE1FVEhfTk9BUkdTLCBzaXplb2ZfZG9jfSwKICAgICB7ImFwcGVuZCIsIChQeUNGdW5jdGlvbilieXRlYXJyYXlfYXBwZW5kLCBNRVRIX08sIGFwcGVuZF9fZG9jX199LAogICAgIHsiY2FwaXRhbGl6ZSIsIChQeUNGdW5jdGlvbilzdHJpbmdsaWJfY2FwaXRhbGl6ZSwgTUVUSF9OT0FSR1MsCiAgICAgIF9QeV9jYXBpdGFsaXplX19kb2NfX30sCiAgICAgeyJjZW50ZXIiLCAoUHlDRnVuY3Rpb24pc3RyaW5nbGliX2NlbnRlciwgTUVUSF9WQVJBUkdTLCBjZW50ZXJfX2RvY19ffSwKKyAgICB7ImNsZWFyIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9jbGVhciwgTUVUSF9OT0FSR1MsIGNsZWFyX19kb2NfX30sCisgICAgeyJjb3B5IiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9jb3B5LCBNRVRIX05PQVJHUywgY29weV9fZG9jX199LAogICAgIHsiY291bnQiLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X2NvdW50LCBNRVRIX1ZBUkFSR1MsIGNvdW50X19kb2NfX30sCiAgICAgeyJkZWNvZGUiLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X2RlY29kZSwgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUywgZGVjb2RlX2RvY30sCiAgICAgeyJlbmRzd2l0aCIsIChQeUNGdW5jdGlvbilieXRlYXJyYXlfZW5kc3dpdGgsIE1FVEhfVkFSQVJHUywgZW5kc3dpdGhfX2RvY19ffSwKQEAgLTI3NzksOCArMjg3Miw4IEBACiAgICAgeyJyc3BsaXQiLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X3JzcGxpdCwgTUVUSF9WQVJBUkdTLCByc3BsaXRfX2RvY19ffSwKICAgICB7InJzdHJpcCIsIChQeUNGdW5jdGlvbilieXRlYXJyYXlfcnN0cmlwLCBNRVRIX1ZBUkFSR1MsIHJzdHJpcF9fZG9jX199LAogICAgIHsic3BsaXQiLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X3NwbGl0LCBNRVRIX1ZBUkFSR1MsIHNwbGl0X19kb2NfX30sCi0gICAgeyJzcGxpdGxpbmVzIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9zcGxpdGxpbmVzLCBNRVRIX1ZBUkFSR1MsCi0gICAgIHNwbGl0bGluZXNfX2RvY19ffSwKKyAgICB7InNwbGl0bGluZXMiLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X3NwbGl0bGluZXMsCisgICAgIE1FVEhfVkFSQVJHUyB8IE1FVEhfS0VZV09SRFMsIHNwbGl0bGluZXNfX2RvY19ffSwKICAgICB7InN0YXJ0c3dpdGgiLCAoUHlDRnVuY3Rpb24pYnl0ZWFycmF5X3N0YXJ0c3dpdGgsIE1FVEhfVkFSQVJHUyAsCiAgICAgIHN0YXJ0c3dpdGhfX2RvY19ffSwKICAgICB7InN0cmlwIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVhcnJheV9zdHJpcCwgTUVUSF9WQVJBUkdTLCBzdHJpcF9fZG9jX199LApkaWZmIC0tZ2l0IGEvT2JqZWN0cy9ieXRlc19tZXRob2RzLmMgYi9PYmplY3RzL2J5dGVzX21ldGhvZHMuYwppbmRleCA3MjMzY2VhLi5lZjNjMmY3IDEwMDY0NAotLS0gYS9PYmplY3RzL2J5dGVzX21ldGhvZHMuYworKysgYi9PYmplY3RzL2J5dGVzX21ldGhvZHMuYwpAQCAtMjQ4LDEyICsyNDgsOCBAQAogewogICAgIFB5X3NzaXplX3QgaTsKIAotICAgIFB5X01FTUNQWShyZXN1bHQsIGNwdHIsIGxlbik7Ci0KICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHsKLSAgICAgICAgaW50IGMgPSBQeV9DSEFSTUFTSyhyZXN1bHRbaV0pOwotICAgICAgICBpZiAoUHlfSVNVUFBFUihjKSkKLSAgICAgICAgICAgIHJlc3VsdFtpXSA9IFB5X1RPTE9XRVIoYyk7CisgICAgICAgIHJlc3VsdFtpXSA9IFB5X1RPTE9XRVIoKHVuc2lnbmVkIGNoYXIpIGNwdHJbaV0pOwogICAgIH0KIH0KIApAQCAtMjY4LDEyICsyNjQsOCBAQAogewogICAgIFB5X3NzaXplX3QgaTsKIAotICAgIFB5X01FTUNQWShyZXN1bHQsIGNwdHIsIGxlbik7Ci0KICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHsKLSAgICAgICAgaW50IGMgPSBQeV9DSEFSTUFTSyhyZXN1bHRbaV0pOwotICAgICAgICBpZiAoUHlfSVNMT1dFUihjKSkKLSAgICAgICAgICAgIHJlc3VsdFtpXSA9IFB5X1RPVVBQRVIoYyk7CisgICAgICAgIHJlc3VsdFtpXSA9IFB5X1RPVVBQRVIoKHVuc2lnbmVkIGNoYXIpIGNwdHJbaV0pOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvT2JqZWN0cy9ieXRlc29iamVjdC5jIGIvT2JqZWN0cy9ieXRlc29iamVjdC5jCmluZGV4IGEwZDRjYmQuLmE5OGNkY2YgMTAwNjQ0Ci0tLSBhL09iamVjdHMvYnl0ZXNvYmplY3QuYworKysgYi9PYmplY3RzL2J5dGVzb2JqZWN0LmMKQEAgLTQxLDEwICs0MSw2IEBACiAjZGVmaW5lIFB5Qnl0ZXNPYmplY3RfU0laRSAob2Zmc2V0b2YoUHlCeXRlc09iamVjdCwgb2Jfc3ZhbCkgKyAxKQogCiAvKgotICAgRm9yIGJvdGggUHlCeXRlc19Gcm9tU3RyaW5nKCkgYW5kIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoKSwgdGhlCi0gICBwYXJhbWV0ZXIgYHNpemUnIGRlbm90ZXMgbnVtYmVyIG9mIGNoYXJhY3RlcnMgdG8gYWxsb2NhdGUsIG5vdCBjb3VudGluZyBhbnkKLSAgIG51bGwgdGVybWluYXRpbmcgY2hhcmFjdGVyLgotCiAgICBGb3IgUHlCeXRlc19Gcm9tU3RyaW5nKCksIHRoZSBwYXJhbWV0ZXIgYHN0cicgcG9pbnRzIHRvIGEgbnVsbC10ZXJtaW5hdGVkCiAgICBzdHJpbmcgY29udGFpbmluZyBleGFjdGx5IGBzaXplJyBieXRlcy4KIApAQCAtNjEsOCArNTcsOCBAQAogCiAgICBUaGUgUHlPYmplY3QgbWVtYmVyIGBvcC0+b2Jfc2l6ZScsIHdoaWNoIGRlbm90ZXMgdGhlIG51bWJlciBvZiAiZXh0cmEKICAgIGl0ZW1zIiBpbiBhIHZhcmlhYmxlLXNpemUgb2JqZWN0LCB3aWxsIGNvbnRhaW4gdGhlIG51bWJlciBvZiBieXRlcwotICAgYWxsb2NhdGVkIGZvciBzdHJpbmcgZGF0YSwgbm90IGNvdW50aW5nIHRoZSBudWxsIHRlcm1pbmF0aW5nIGNoYXJhY3Rlci4gIEl0Ci0gICBpcyB0aGVyZWZvcmUgZXF1YWwgdG8gdGhlIGVxdWFsIHRvIHRoZSBgc2l6ZScgcGFyYW1ldGVyIChmb3IKKyAgIGFsbG9jYXRlZCBmb3Igc3RyaW5nIGRhdGEsIG5vdCBjb3VudGluZyB0aGUgbnVsbCB0ZXJtaW5hdGluZyBjaGFyYWN0ZXIuCisgICBJdCBpcyB0aGVyZWZvcmUgZXF1YWwgdG8gdGhlIGBzaXplJyBwYXJhbWV0ZXIgKGZvcgogICAgUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgpKSBvciB0aGUgbGVuZ3RoIG9mIHRoZSBzdHJpbmcgaW4gdGhlIGBzdHInCiAgICBwYXJhbWV0ZXIgKGZvciBQeUJ5dGVzX0Zyb21TdHJpbmcoKSkuCiAqLwpAQCAtNTY4LDc2ICs1NjQsNjkgQEAKIFB5T2JqZWN0ICoKIFB5Qnl0ZXNfUmVwcihQeU9iamVjdCAqb2JqLCBpbnQgc21hcnRxdW90ZXMpCiB7Ci0gICAgc3RhdGljIGNvbnN0IGNoYXIgKmhleGRpZ2l0cyA9ICIwMTIzNDU2Nzg5YWJjZGVmIjsKICAgICByZWdpc3RlciBQeUJ5dGVzT2JqZWN0KiBvcCA9IChQeUJ5dGVzT2JqZWN0Kikgb2JqOwotICAgIFB5X3NzaXplX3QgbGVuZ3RoID0gUHlfU0laRShvcCk7Ci0gICAgc2l6ZV90IG5ld3NpemU7CisgICAgUHlfc3NpemVfdCBpLCBsZW5ndGggPSBQeV9TSVpFKG9wKTsKKyAgICBzaXplX3QgbmV3c2l6ZSwgc3F1b3RlcywgZHF1b3RlczsKICAgICBQeU9iamVjdCAqdjsKLSAgICBpZiAobGVuZ3RoID4gKFBZX1NTSVpFX1RfTUFYIC0gMykgLyA0KSB7CisgICAgdW5zaWduZWQgY2hhciBxdW90ZSwgKnMsICpwOworCisgICAgLyogQ29tcHV0ZSBzaXplIG9mIG91dHB1dCBzdHJpbmcgKi8KKyAgICBzcXVvdGVzID0gZHF1b3RlcyA9IDA7CisgICAgbmV3c2l6ZSA9IDM7IC8qIGInJyAqLworICAgIHMgPSAodW5zaWduZWQgY2hhciopb3AtPm9iX3N2YWw7CisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIHN3aXRjaChzW2ldKSB7CisgICAgICAgIGNhc2UgJ1wnJzogc3F1b3RlcysrOyBuZXdzaXplKys7IGJyZWFrOworICAgICAgICBjYXNlICciJzogIGRxdW90ZXMrKzsgbmV3c2l6ZSsrOyBicmVhazsKKyAgICAgICAgY2FzZSAnXFwnOiBjYXNlICdcdCc6IGNhc2UgJ1xuJzogY2FzZSAnXHInOgorICAgICAgICAgICAgbmV3c2l6ZSArPSAyOyBicmVhazsgLyogXEMgKi8KKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIGlmIChzW2ldIDwgJyAnIHx8IHNbaV0gPj0gMHg3ZikKKyAgICAgICAgICAgICAgICBuZXdzaXplICs9IDQ7IC8qIFx4SEggKi8KKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBuZXdzaXplKys7CisgICAgICAgIH0KKyAgICB9CisgICAgcXVvdGUgPSAnXCcnOworICAgIGlmIChzbWFydHF1b3RlcyAmJiBzcXVvdGVzICYmICFkcXVvdGVzKQorICAgICAgICBxdW90ZSA9ICciJzsKKyAgICBpZiAoc3F1b3RlcyAmJiBxdW90ZSA9PSAnXCcnKQorICAgICAgICBuZXdzaXplICs9IHNxdW90ZXM7CisKKyAgICBpZiAobmV3c2l6ZSA+IChQWV9TU0laRV9UX01BWCAtIHNpemVvZihQeVVuaWNvZGVPYmplY3QpIC0gMSkpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCiAgICAgICAgICAgICAiYnl0ZXMgb2JqZWN0IGlzIHRvbyBsYXJnZSB0byBtYWtlIHJlcHIiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIG5ld3NpemUgPSAzICsgNCAqIGxlbmd0aDsKLSAgICB2ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIG5ld3NpemUpOworCisgICAgdiA9IFB5VW5pY29kZV9OZXcobmV3c2l6ZSwgMTI3KTsKICAgICBpZiAodiA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBpOwotICAgICAgICByZWdpc3RlciBQeV9VTklDT0RFIGM7Ci0gICAgICAgIHJlZ2lzdGVyIFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KTsKLSAgICAgICAgaW50IHF1b3RlOworICAgIHAgPSBQeVVuaWNvZGVfMUJZVEVfREFUQSh2KTsKIAotICAgICAgICAvKiBGaWd1cmUgb3V0IHdoaWNoIHF1b3RlIHRvIHVzZTsgc2luZ2xlIGlzIHByZWZlcnJlZCAqLwotICAgICAgICBxdW90ZSA9ICdcJyc7Ci0gICAgICAgIGlmIChzbWFydHF1b3RlcykgewotICAgICAgICAgICAgY2hhciAqdGVzdCwgKnN0YXJ0OwotICAgICAgICAgICAgc3RhcnQgPSBQeUJ5dGVzX0FTX1NUUklORyhvcCk7Ci0gICAgICAgICAgICBmb3IgKHRlc3QgPSBzdGFydDsgdGVzdCA8IHN0YXJ0K2xlbmd0aDsgKyt0ZXN0KSB7Ci0gICAgICAgICAgICAgICAgaWYgKCp0ZXN0ID09ICciJykgewotICAgICAgICAgICAgICAgICAgICBxdW90ZSA9ICdcJyc7IC8qIGJhY2sgdG8gc2luZ2xlICovCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZGVjaWRlZDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAoKnRlc3QgPT0gJ1wnJykKLSAgICAgICAgICAgICAgICAgICAgcXVvdGUgPSAnIic7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBkZWNpZGVkOgotICAgICAgICAgICAgOworICAgICpwKysgPSAnYicsICpwKysgPSBxdW90ZTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgdW5zaWduZWQgY2hhciBjID0gb3AtPm9iX3N2YWxbaV07CisgICAgICAgIGlmIChjID09IHF1b3RlIHx8IGMgPT0gJ1xcJykKKyAgICAgICAgICAgICpwKysgPSAnXFwnLCAqcCsrID0gYzsKKyAgICAgICAgZWxzZSBpZiAoYyA9PSAnXHQnKQorICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAndCc7CisgICAgICAgIGVsc2UgaWYgKGMgPT0gJ1xuJykKKyAgICAgICAgICAgICpwKysgPSAnXFwnLCAqcCsrID0gJ24nOworICAgICAgICBlbHNlIGlmIChjID09ICdccicpCisgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9ICdyJzsKKyAgICAgICAgZWxzZSBpZiAoYyA8ICcgJyB8fCBjID49IDB4N2YpIHsKKyAgICAgICAgICAgICpwKysgPSAnXFwnOworICAgICAgICAgICAgKnArKyA9ICd4JzsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGMgJiAweGYwKSA+PiA0XTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbYyAmIDB4Zl07CiAgICAgICAgIH0KLQotICAgICAgICAqcCsrID0gJ2InLCAqcCsrID0gcXVvdGU7Ci0gICAgICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewotICAgICAgICAgICAgLyogVGhlcmUncyBhdCBsZWFzdCBlbm91Z2ggcm9vbSBmb3IgYSBoZXggZXNjYXBlCi0gICAgICAgICAgICAgICBhbmQgYSBjbG9zaW5nIHF1b3RlLiAqLwotICAgICAgICAgICAgYXNzZXJ0KG5ld3NpemUgLSAocCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA+PSA1KTsKLSAgICAgICAgICAgIGMgPSBvcC0+b2Jfc3ZhbFtpXTsKLSAgICAgICAgICAgIGlmIChjID09IHF1b3RlIHx8IGMgPT0gJ1xcJykKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJywgKnArKyA9IGM7Ci0gICAgICAgICAgICBlbHNlIGlmIChjID09ICdcdCcpCi0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAndCc7Ci0gICAgICAgICAgICBlbHNlIGlmIChjID09ICdcbicpCi0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAnbic7Ci0gICAgICAgICAgICBlbHNlIGlmIChjID09ICdccicpCi0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCcsICpwKysgPSAncic7Ci0gICAgICAgICAgICBlbHNlIGlmIChjIDwgJyAnIHx8IGMgPj0gMHg3ZikgewotICAgICAgICAgICAgICAgICpwKysgPSAnXFwnOwotICAgICAgICAgICAgICAgICpwKysgPSAneCc7Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soYyAmIDB4ZjApID4+IDRdOwotICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbYyAmIDB4Zl07Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgKnArKyA9IGM7Ci0gICAgICAgIH0KLSAgICAgICAgYXNzZXJ0KG5ld3NpemUgLSAocCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA+PSAxKTsKLSAgICAgICAgKnArKyA9IHF1b3RlOwotICAgICAgICAqcCA9ICdcMCc7Ci0gICAgICAgIGlmIChQeVVuaWNvZGVfUmVzaXplKCZ2LCAocCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSkpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRih2KTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIHJldHVybiB2OworICAgICAgICBlbHNlCisgICAgICAgICAgICAqcCsrID0gYzsKICAgICB9CisgICAgKnArKyA9IHF1b3RlOworICAgIHJldHVybiB2OwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtODcxLDIyICs4NjAsMTEgQEAKIHN0YXRpYyBQeV9oYXNoX3QKIGJ5dGVzX2hhc2goUHlCeXRlc09iamVjdCAqYSkKIHsKLSAgICByZWdpc3RlciBQeV9zc2l6ZV90IGxlbjsKLSAgICByZWdpc3RlciB1bnNpZ25lZCBjaGFyICpwOwotICAgIHJlZ2lzdGVyIFB5X2hhc2hfdCB4OwotCi0gICAgaWYgKGEtPm9iX3NoYXNoICE9IC0xKQotICAgICAgICByZXR1cm4gYS0+b2Jfc2hhc2g7Ci0gICAgbGVuID0gUHlfU0laRShhKTsKLSAgICBwID0gKHVuc2lnbmVkIGNoYXIgKikgYS0+b2Jfc3ZhbDsKLSAgICB4ID0gKnAgPDwgNzsKLSAgICB3aGlsZSAoLS1sZW4gPj0gMCkKLSAgICAgICAgeCA9IChfUHlIQVNIX01VTFRJUExJRVIqeCkgXiAqcCsrOwotICAgIHggXj0gUHlfU0laRShhKTsKLSAgICBpZiAoeCA9PSAtMSkKLSAgICAgICAgeCA9IC0yOwotICAgIGEtPm9iX3NoYXNoID0geDsKLSAgICByZXR1cm4geDsKKyAgICBpZiAoYS0+b2Jfc2hhc2ggPT0gLTEpIHsKKyAgICAgICAgLyogQ2FuJ3QgZmFpbCAqLworICAgICAgICBhLT5vYl9zaGFzaCA9IF9QeV9IYXNoQnl0ZXMoKHVuc2lnbmVkIGNoYXIgKikgYS0+b2Jfc3ZhbCwgUHlfU0laRShhKSk7CisgICAgfQorICAgIHJldHVybiBhLT5vYl9zaGFzaDsKIH0KIAogc3RhdGljIFB5T2JqZWN0KgpAQCAtMTI0MSwzMSArMTIxOSw0MiBAQAogYnl0ZXNfZmluZF9pbnRlcm5hbChQeUJ5dGVzT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgaW50IGRpcikKIHsKICAgICBQeU9iamVjdCAqc3Vib2JqOworICAgIGNoYXIgYnl0ZTsKKyAgICBQeV9idWZmZXIgc3ViYnVmOwogICAgIGNvbnN0IGNoYXIgKnN1YjsKICAgICBQeV9zc2l6ZV90IHN1Yl9sZW47CiAgICAgUHlfc3NpemVfdCBzdGFydD0wLCBlbmQ9UFlfU1NJWkVfVF9NQVg7CisgICAgUHlfc3NpemVfdCByZXM7CiAKLSAgICBpZiAoIXN0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzKCJmaW5kL3JmaW5kL2luZGV4L3JpbmRleCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzLCAmc3Vib2JqLCAmc3RhcnQsICZlbmQpKQorICAgIGlmICghc3RyaW5nbGliX3BhcnNlX2FyZ3NfZmluZHNfYnl0ZSgiZmluZC9yZmluZC9pbmRleC9yaW5kZXgiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzLCAmc3Vib2JqLCAmYnl0ZSwgJnN0YXJ0LCAmZW5kKSkKICAgICAgICAgcmV0dXJuIC0yOwogCi0gICAgaWYgKFB5Qnl0ZXNfQ2hlY2soc3Vib2JqKSkgewotICAgICAgICBzdWIgPSBQeUJ5dGVzX0FTX1NUUklORyhzdWJvYmopOwotICAgICAgICBzdWJfbGVuID0gUHlCeXRlc19HRVRfU0laRShzdWJvYmopOworICAgIGlmIChzdWJvYmopIHsKKyAgICAgICAgaWYgKF9nZXRidWZmZXIoc3Vib2JqLCAmc3ViYnVmKSA8IDApCisgICAgICAgICAgICByZXR1cm4gLTI7CisKKyAgICAgICAgc3ViID0gc3ViYnVmLmJ1ZjsKKyAgICAgICAgc3ViX2xlbiA9IHN1YmJ1Zi5sZW47CiAgICAgfQotICAgIGVsc2UgaWYgKFB5T2JqZWN0X0FzQ2hhckJ1ZmZlcihzdWJvYmosICZzdWIsICZzdWJfbGVuKSkKLSAgICAgICAgLyogWFhYIC0gdGhlICJleHBlY3RlZCBhIGNoYXJhY3RlciBidWZmZXIgb2JqZWN0IiBpcyBwcmV0dHkKLSAgICAgICAgICAgY29uZnVzaW5nIGZvciBhIG5vbi1leHBlcnQuICByZW1hcCB0byBzb21ldGhpbmcgZWxzZSA/ICovCi0gICAgICAgIHJldHVybiAtMjsKKyAgICBlbHNlIHsKKyAgICAgICAgc3ViID0gJmJ5dGU7CisgICAgICAgIHN1Yl9sZW4gPSAxOworICAgIH0KIAogICAgIGlmIChkaXIgPiAwKQotICAgICAgICByZXR1cm4gc3RyaW5nbGliX2ZpbmRfc2xpY2UoCisgICAgICAgIHJlcyA9IHN0cmluZ2xpYl9maW5kX3NsaWNlKAogICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZiksIFB5Qnl0ZXNfR0VUX1NJWkUoc2VsZiksCiAgICAgICAgICAgICBzdWIsIHN1Yl9sZW4sIHN0YXJ0LCBlbmQpOwogICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIHN0cmluZ2xpYl9yZmluZF9zbGljZSgKKyAgICAgICAgcmVzID0gc3RyaW5nbGliX3JmaW5kX3NsaWNlKAogICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoc2VsZiksIFB5Qnl0ZXNfR0VUX1NJWkUoc2VsZiksCiAgICAgICAgICAgICBzdWIsIHN1Yl9sZW4sIHN0YXJ0LCBlbmQpOworCisgICAgaWYgKHN1Ym9iaikKKyAgICAgICAgUHlCdWZmZXJfUmVsZWFzZSgmc3ViYnVmKTsKKworICAgIHJldHVybiByZXM7CiB9CiAKIApAQCAtMTQ5MSwyMyArMTQ4MCwzOCBAQAogICAgIFB5T2JqZWN0ICpzdWJfb2JqOwogICAgIGNvbnN0IGNoYXIgKnN0ciA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHNlbGYpLCAqc3ViOwogICAgIFB5X3NzaXplX3Qgc3ViX2xlbjsKKyAgICBjaGFyIGJ5dGU7CiAgICAgUHlfc3NpemVfdCBzdGFydCA9IDAsIGVuZCA9IFBZX1NTSVpFX1RfTUFYOwogCi0gICAgaWYgKCFzdHJpbmdsaWJfcGFyc2VfYXJnc19maW5kcygiY291bnQiLCBhcmdzLCAmc3ViX29iaiwgJnN0YXJ0LCAmZW5kKSkKKyAgICBQeV9idWZmZXIgdnN1YjsKKyAgICBQeU9iamVjdCAqY291bnRfb2JqOworCisgICAgaWYgKCFzdHJpbmdsaWJfcGFyc2VfYXJnc19maW5kc19ieXRlKCJjb3VudCIsIGFyZ3MsICZzdWJfb2JqLCAmYnl0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0LCAmZW5kKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoUHlCeXRlc19DaGVjayhzdWJfb2JqKSkgewotICAgICAgICBzdWIgPSBQeUJ5dGVzX0FTX1NUUklORyhzdWJfb2JqKTsKLSAgICAgICAgc3ViX2xlbiA9IFB5Qnl0ZXNfR0VUX1NJWkUoc3ViX29iaik7CisgICAgaWYgKHN1Yl9vYmopIHsKKyAgICAgICAgaWYgKF9nZXRidWZmZXIoc3ViX29iaiwgJnZzdWIpIDwgMCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCisgICAgICAgIHN1YiA9IHZzdWIuYnVmOworICAgICAgICBzdWJfbGVuID0gdnN1Yi5sZW47CiAgICAgfQotICAgIGVsc2UgaWYgKFB5T2JqZWN0X0FzQ2hhckJ1ZmZlcihzdWJfb2JqLCAmc3ViLCAmc3ViX2xlbikpCi0gICAgICAgIHJldHVybiBOVUxMOworICAgIGVsc2UgeworICAgICAgICBzdWIgPSAmYnl0ZTsKKyAgICAgICAgc3ViX2xlbiA9IDE7CisgICAgfQogCiAgICAgQURKVVNUX0lORElDRVMoc3RhcnQsIGVuZCwgUHlCeXRlc19HRVRfU0laRShzZWxmKSk7CiAKLSAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KAorICAgIGNvdW50X29iaiA9IFB5TG9uZ19Gcm9tU3NpemVfdCgKICAgICAgICAgc3RyaW5nbGliX2NvdW50KHN0ciArIHN0YXJ0LCBlbmQgLSBzdGFydCwgc3ViLCBzdWJfbGVuLCBQWV9TU0laRV9UX01BWCkKICAgICAgICAgKTsKKworICAgIGlmIChzdWJfb2JqKQorICAgICAgICBQeUJ1ZmZlcl9SZWxlYXNlKCZ2c3ViKTsKKworICAgIHJldHVybiBjb3VudF9vYmo7CiB9CiAKIApAQCAtMjMxNiwxMSArMjMyMCwxMyBAQAogaXMgZ2l2ZW4gYW5kIHRydWUuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLWJ5dGVzX3NwbGl0bGluZXMoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQorYnl0ZXNfc3BsaXRsaW5lcyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogeworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsia2VlcGVuZHMiLCAwfTsKICAgICBpbnQga2VlcGVuZHMgPSAwOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJ8aTpzcGxpdGxpbmVzIiwgJmtlZXBlbmRzKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAifGk6c3BsaXRsaW5lcyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAma2VlcGVuZHMpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIHJldHVybiBzdHJpbmdsaWJfc3BsaXRsaW5lcygKQEAgLTIzMzgsNyArMjM0NCw3IEBACiBFeGFtcGxlOiBieXRlcy5mcm9taGV4KCdCOSAwMUVGJykgLT4gYidcXHhiOVxceDAxXFx4ZWYnLiIpOwogCiBzdGF0aWMgaW50Ci1oZXhfZGlnaXRfdG9faW50KFB5X1VOSUNPREUgYykKK2hleF9kaWdpdF90b19pbnQoUHlfVUNTNCBjKQogewogICAgIGlmIChjID49IDEyOCkKICAgICAgICAgcmV0dXJuIC0xOwpAQCAtMjM1OCwxNSArMjM2NCwyMCBAQAogewogICAgIFB5T2JqZWN0ICpuZXdzdHJpbmcsICpoZXhvYmo7CiAgICAgY2hhciAqYnVmOwotICAgIFB5X1VOSUNPREUgKmhleDsKICAgICBQeV9zc2l6ZV90IGhleGxlbiwgYnl0ZXNsZW4sIGksIGo7CiAgICAgaW50IHRvcCwgYm90OworICAgIHZvaWQgKmRhdGE7CisgICAgdW5zaWduZWQgaW50IGtpbmQ7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6ZnJvbWhleCIsICZoZXhvYmopKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBhc3NlcnQoUHlVbmljb2RlX0NoZWNrKGhleG9iaikpOwotICAgIGhleGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShoZXhvYmopOwotICAgIGhleCA9IFB5VW5pY29kZV9BU19VTklDT0RFKGhleG9iaik7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShoZXhvYmopKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoaGV4b2JqKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoaGV4b2JqKTsKKyAgICBoZXhsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChoZXhvYmopOworCiAgICAgYnl0ZXNsZW4gPSBoZXhsZW4vMjsgLyogVGhpcyBvdmVyZXN0aW1hdGVzIGlmIHRoZXJlIGFyZSBzcGFjZXMgKi8KICAgICBuZXdzdHJpbmcgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGJ5dGVzbGVuKTsKICAgICBpZiAoIW5ld3N0cmluZykKQEAgLTIzNzQsMTIgKzIzODUsMTIgQEAKICAgICBidWYgPSBQeUJ5dGVzX0FTX1NUUklORyhuZXdzdHJpbmcpOwogICAgIGZvciAoaSA9IGogPSAwOyBpIDwgaGV4bGVuOyBpICs9IDIpIHsKICAgICAgICAgLyogc2tpcCBvdmVyIHNwYWNlcyBpbiB0aGUgaW5wdXQgKi8KLSAgICAgICAgd2hpbGUgKGhleFtpXSA9PSAnICcpCisgICAgICAgIHdoaWxlIChQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSA9PSAnICcpCiAgICAgICAgICAgICBpKys7CiAgICAgICAgIGlmIChpID49IGhleGxlbikKICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB0b3AgPSBoZXhfZGlnaXRfdG9faW50KGhleFtpXSk7Ci0gICAgICAgIGJvdCA9IGhleF9kaWdpdF90b19pbnQoaGV4W2krMV0pOworICAgICAgICB0b3AgPSBoZXhfZGlnaXRfdG9faW50KFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKTsKKyAgICAgICAgYm90ID0gaGV4X2RpZ2l0X3RvX2ludChQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKzEpKTsKICAgICAgICAgaWYgKHRvcCA9PSAtMSB8fCBib3QgPT0gLTEpIHsKICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICJub24taGV4YWRlY2ltYWwgbnVtYmVyIGZvdW5kIGluICIKQEAgLTI0NjIsNyArMjQ3Myw3IEBACiAgICAgeyJyc3BsaXQiLCAoUHlDRnVuY3Rpb24pYnl0ZXNfcnNwbGl0LCBNRVRIX1ZBUkFSR1MsIHJzcGxpdF9fZG9jX199LAogICAgIHsicnN0cmlwIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVzX3JzdHJpcCwgTUVUSF9WQVJBUkdTLCByc3RyaXBfX2RvY19ffSwKICAgICB7InNwbGl0IiwgKFB5Q0Z1bmN0aW9uKWJ5dGVzX3NwbGl0LCBNRVRIX1ZBUkFSR1MsIHNwbGl0X19kb2NfX30sCi0gICAgeyJzcGxpdGxpbmVzIiwgKFB5Q0Z1bmN0aW9uKWJ5dGVzX3NwbGl0bGluZXMsIE1FVEhfVkFSQVJHUywKKyAgICB7InNwbGl0bGluZXMiLCAoUHlDRnVuY3Rpb24pYnl0ZXNfc3BsaXRsaW5lcywgTUVUSF9WQVJBUkdTIHwgTUVUSF9LRVlXT1JEUywKICAgICAgc3BsaXRsaW5lc19fZG9jX199LAogICAgIHsic3RhcnRzd2l0aCIsIChQeUNGdW5jdGlvbilieXRlc19zdGFydHN3aXRoLCBNRVRIX1ZBUkFSR1MsCiAgICAgIHN0YXJ0c3dpdGhfX2RvY19ffSwKQEAgLTI5MjAsNyArMjkzMSw3IEBACiAgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgbGxlbiA9IFB5VW5pY29kZV9HZXRTaXplKHJlc3VsdCk7CisgICAgbGxlbiA9IFB5VW5pY29kZV9HZXRMZW5ndGgocmVzdWx0KTsKICAgICBpZiAobGxlbiA+IElOVF9NQVgpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaW5nIHRvbyBsYXJnZSBpbiBfUHlCeXRlc19Gb3JtYXRMb25nIik7CmRpZmYgLS1naXQgYS9PYmplY3RzL2NsYXNzb2JqZWN0LmMgYi9PYmplY3RzL2NsYXNzb2JqZWN0LmMKaW5kZXggNmRmOTMwZi4uMDliOTViZiAxMDA2NDQKLS0tIGEvT2JqZWN0cy9jbGFzc29iamVjdC5jCisrKyBiL09iamVjdHMvY2xhc3NvYmplY3QuYwpAQCAtMTQsNiArMTQsOCBAQAogI2RlZmluZSBQeU1ldGhvZF9NQVhGUkVFTElTVCAyNTYKICNlbmRpZgogCitfUHlfSURFTlRJRklFUihfX25hbWVfXyk7CisKIFB5T2JqZWN0ICoKIFB5TWV0aG9kX0Z1bmN0aW9uKFB5T2JqZWN0ICppbSkKIHsKQEAgLTE5MCw4ICsxOTIsNyBAQAogICAgICAgICAhUHlNZXRob2RfQ2hlY2soc2VsZikgfHwKICAgICAgICAgIVB5TWV0aG9kX0NoZWNrKG90aGVyKSkKICAgICB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIH0KICAgICBhID0gKFB5TWV0aG9kT2JqZWN0ICopc2VsZjsKICAgICBiID0gKFB5TWV0aG9kT2JqZWN0ICopb3RoZXI7CkBAIC0yMjcsNyArMjI4LDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgZnVuY25hbWUgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGZ1bmMsICJfX25hbWVfXyIpOworICAgIGZ1bmNuYW1lID0gX1B5T2JqZWN0X0dldEF0dHJJZChmdW5jLCAmUHlJZF9fX25hbWVfXyk7CiAgICAgaWYgKGZ1bmNuYW1lID09IE5VTEwpIHsKICAgICAgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjQxLDcgKzI0Miw3IEBACiAgICAgaWYgKGtsYXNzID09IE5VTEwpCiAgICAgICAgIGtsYXNzbmFtZSA9IE5VTEw7CiAgICAgZWxzZSB7Ci0gICAgICAgIGtsYXNzbmFtZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoa2xhc3MsICJfX25hbWVfXyIpOworICAgICAgICBrbGFzc25hbWUgPSBfUHlPYmplY3RfR2V0QXR0cklkKGtsYXNzLCAmUHlJZF9fX25hbWVfXyk7CiAgICAgICAgIGlmIChrbGFzc25hbWUgPT0gTlVMTCkgewogICAgICAgICAgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTUxNiw4ICs1MTcsNyBAQAogICAgICAgICAhUHlJbnN0YW5jZU1ldGhvZF9DaGVjayhzZWxmKSB8fAogICAgICAgICAhUHlJbnN0YW5jZU1ldGhvZF9DaGVjayhvdGhlcikpCiAgICAgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICB9CiAgICAgYSA9IChQeUluc3RhbmNlTWV0aG9kT2JqZWN0ICopc2VsZjsKICAgICBiID0gKFB5SW5zdGFuY2VNZXRob2RPYmplY3QgKilvdGhlcjsKQEAgLTU0NCw3ICs1NDQsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBmdW5jbmFtZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZnVuYywgIl9fbmFtZV9fIik7CisgICAgZnVuY25hbWUgPSBfUHlPYmplY3RfR2V0QXR0cklkKGZ1bmMsICZQeUlkX19fbmFtZV9fKTsKICAgICBpZiAoZnVuY25hbWUgPT0gTlVMTCkgewogICAgICAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CmRpZmYgLS1naXQgYS9PYmplY3RzL2NvZGVvYmplY3QuYyBiL09iamVjdHMvY29kZW9iamVjdC5jCmluZGV4IGJiOTM4ZWEuLjU1MGUyODQgMTAwNjQ0Ci0tLSBhL09iamVjdHMvY29kZW9iamVjdC5jCisrKyBiL09iamVjdHMvY29kZW9iamVjdC5jCkBAIC04LDE5ICs4LDI0IEBACiAvKiBhbGxfbmFtZV9jaGFycyhzKTogdHJ1ZSBpZmYgYWxsIGNoYXJzIGluIHMgYXJlIHZhbGlkIE5BTUVfQ0hBUlMgKi8KIAogc3RhdGljIGludAotYWxsX25hbWVfY2hhcnMoUHlfVU5JQ09ERSAqcykKK2FsbF9uYW1lX2NoYXJzKFB5T2JqZWN0ICpvKQogewogICAgIHN0YXRpYyBjaGFyIG9rX25hbWVfY2hhclsyNTZdOwogICAgIHN0YXRpYyB1bnNpZ25lZCBjaGFyICpuYW1lX2NoYXJzID0gKHVuc2lnbmVkIGNoYXIgKilOQU1FX0NIQVJTOworICAgIFB5VW5pY29kZU9iamVjdCAqdSA9IChQeVVuaWNvZGVPYmplY3QgKilvOworICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnM7CisKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhvKSB8fCBQeVVuaWNvZGVfUkVBRFkodSkgPT0gLTEgfHwKKyAgICAgICAgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHUpID49IDEyOCkKKyAgICAgICAgcmV0dXJuIDA7CiAKICAgICBpZiAob2tfbmFtZV9jaGFyWypuYW1lX2NoYXJzXSA9PSAwKSB7CiAgICAgICAgIHVuc2lnbmVkIGNoYXIgKnA7CiAgICAgICAgIGZvciAocCA9IG5hbWVfY2hhcnM7ICpwOyBwKyspCiAgICAgICAgICAgICBva19uYW1lX2NoYXJbKnBdID0gMTsKICAgICB9CisgICAgcyA9IFB5VW5pY29kZV8xQllURV9EQVRBKHUpOwogICAgIHdoaWxlICgqcykgewotICAgICAgICBpZiAoKnMgPj0gMTI4KQotICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIGlmIChva19uYW1lX2NoYXJbKnMrK10gPT0gMCkKICAgICAgICAgICAgIHJldHVybiAwOwogICAgIH0KQEAgLTUxLDcgKzU2LDggQEAKICAgICAgICAgICAgUHlPYmplY3QgKmxub3RhYikKIHsKICAgICBQeUNvZGVPYmplY3QgKmNvOwotICAgIFB5X3NzaXplX3QgaTsKKyAgICB1bnNpZ25lZCBjaGFyICpjZWxsMmFyZyA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBpLCBuX2NlbGx2YXJzOwogCiAgICAgLyogQ2hlY2sgYXJndW1lbnQgdHlwZXMgKi8KICAgICBpZiAoYXJnY291bnQgPCAwIHx8IGt3b25seWFyZ2NvdW50IDwgMCB8fCBubG9jYWxzIDwgMCB8fApAQCAtNjgsNDggKzc0LDc5IEBACiAgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CisgICAgbl9jZWxsdmFycyA9IFB5VHVwbGVfR0VUX1NJWkUoY2VsbHZhcnMpOwogICAgIGludGVybl9zdHJpbmdzKG5hbWVzKTsKICAgICBpbnRlcm5fc3RyaW5ncyh2YXJuYW1lcyk7CiAgICAgaW50ZXJuX3N0cmluZ3MoZnJlZXZhcnMpOwogICAgIGludGVybl9zdHJpbmdzKGNlbGx2YXJzKTsKICAgICAvKiBJbnRlcm4gc2VsZWN0ZWQgc3RyaW5nIGNvbnN0YW50cyAqLwotICAgIGZvciAoaSA9IFB5VHVwbGVfU2l6ZShjb25zdHMpOyAtLWkgPj0gMDsgKSB7CisgICAgZm9yIChpID0gUHlUdXBsZV9HRVRfU0laRShjb25zdHMpOyAtLWkgPj0gMDsgKSB7CiAgICAgICAgIFB5T2JqZWN0ICp2ID0gUHlUdXBsZV9HZXRJdGVtKGNvbnN0cywgaSk7Ci0gICAgICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHYpKQotICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgIGlmICghYWxsX25hbWVfY2hhcnMoUHlVbmljb2RlX0FTX1VOSUNPREUodikpKQorICAgICAgICBpZiAoIWFsbF9uYW1lX2NoYXJzKHYpKQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIFB5VW5pY29kZV9JbnRlcm5JblBsYWNlKCZQeVR1cGxlX0dFVF9JVEVNKGNvbnN0cywgaSkpOwogICAgIH0KLSAgICBjbyA9IFB5T2JqZWN0X05FVyhQeUNvZGVPYmplY3QsICZQeUNvZGVfVHlwZSk7Ci0gICAgaWYgKGNvICE9IE5VTEwpIHsKLSAgICAgICAgY28tPmNvX2FyZ2NvdW50ID0gYXJnY291bnQ7Ci0gICAgICAgIGNvLT5jb19rd29ubHlhcmdjb3VudCA9IGt3b25seWFyZ2NvdW50OwotICAgICAgICBjby0+Y29fbmxvY2FscyA9IG5sb2NhbHM7Ci0gICAgICAgIGNvLT5jb19zdGFja3NpemUgPSBzdGFja3NpemU7Ci0gICAgICAgIGNvLT5jb19mbGFncyA9IGZsYWdzOwotICAgICAgICBQeV9JTkNSRUYoY29kZSk7Ci0gICAgICAgIGNvLT5jb19jb2RlID0gY29kZTsKLSAgICAgICAgUHlfSU5DUkVGKGNvbnN0cyk7Ci0gICAgICAgIGNvLT5jb19jb25zdHMgPSBjb25zdHM7Ci0gICAgICAgIFB5X0lOQ1JFRihuYW1lcyk7Ci0gICAgICAgIGNvLT5jb19uYW1lcyA9IG5hbWVzOwotICAgICAgICBQeV9JTkNSRUYodmFybmFtZXMpOwotICAgICAgICBjby0+Y29fdmFybmFtZXMgPSB2YXJuYW1lczsKLSAgICAgICAgUHlfSU5DUkVGKGZyZWV2YXJzKTsKLSAgICAgICAgY28tPmNvX2ZyZWV2YXJzID0gZnJlZXZhcnM7Ci0gICAgICAgIFB5X0lOQ1JFRihjZWxsdmFycyk7Ci0gICAgICAgIGNvLT5jb19jZWxsdmFycyA9IGNlbGx2YXJzOwotICAgICAgICBQeV9JTkNSRUYoZmlsZW5hbWUpOwotICAgICAgICBjby0+Y29fZmlsZW5hbWUgPSBmaWxlbmFtZTsKLSAgICAgICAgUHlfSU5DUkVGKG5hbWUpOwotICAgICAgICBjby0+Y29fbmFtZSA9IG5hbWU7Ci0gICAgICAgIGNvLT5jb19maXJzdGxpbmVubyA9IGZpcnN0bGluZW5vOwotICAgICAgICBQeV9JTkNSRUYobG5vdGFiKTsKLSAgICAgICAgY28tPmNvX2xub3RhYiA9IGxub3RhYjsKLSAgICAgICAgY28tPmNvX3pvbWJpZWZyYW1lID0gTlVMTDsKLSAgICAgICAgY28tPmNvX3dlYWtyZWZsaXN0ID0gTlVMTDsKKyAgICAvKiBDcmVhdGUgbWFwcGluZyBiZXR3ZWVuIGNlbGxzIGFuZCBhcmd1bWVudHMgaWYgbmVlZGVkLiAqLworICAgIGlmIChuX2NlbGx2YXJzKSB7CisgICAgICAgIFB5X3NzaXplX3QgdG90YWxfYXJncyA9IGFyZ2NvdW50ICsga3dvbmx5YXJnY291bnQgKworICAgICAgICAgICAgKChmbGFncyAmIENPX1ZBUkFSR1MpICE9IDApICsgKChmbGFncyAmIENPX1ZBUktFWVdPUkRTKSAhPSAwKTsKKyAgICAgICAgUHlfc3NpemVfdCBhbGxvY19zaXplID0gc2l6ZW9mKHVuc2lnbmVkIGNoYXIpICogbl9jZWxsdmFyczsKKyAgICAgICAgaW50IHVzZWRfY2VsbDJhcmcgPSAwOworICAgICAgICBjZWxsMmFyZyA9IFB5TWVtX01BTExPQyhhbGxvY19zaXplKTsKKyAgICAgICAgaWYgKGNlbGwyYXJnID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgbWVtc2V0KGNlbGwyYXJnLCBDT19DRUxMX05PVF9BTl9BUkcsIGFsbG9jX3NpemUpOworICAgICAgICAvKiBGaW5kIGNlbGxzIHdoaWNoIGFyZSBhbHNvIGFyZ3VtZW50cy4gKi8KKyAgICAgICAgZm9yIChpID0gMDsgaSA8IG5fY2VsbHZhcnM7IGkrKykgeworICAgICAgICAgICAgUHlfc3NpemVfdCBqOworICAgICAgICAgICAgUHlPYmplY3QgKmNlbGwgPSBQeVR1cGxlX0dFVF9JVEVNKGNlbGx2YXJzLCBpKTsKKyAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCB0b3RhbF9hcmdzOyBqKyspIHsKKyAgICAgICAgICAgICAgICBQeU9iamVjdCAqYXJnID0gUHlUdXBsZV9HRVRfSVRFTSh2YXJuYW1lcywgaik7CisgICAgICAgICAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ29tcGFyZShjZWxsLCBhcmcpKSB7CisgICAgICAgICAgICAgICAgICAgIGNlbGwyYXJnW2ldID0gajsKKyAgICAgICAgICAgICAgICAgICAgdXNlZF9jZWxsMmFyZyA9IDE7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiAoIXVzZWRfY2VsbDJhcmcpIHsKKyAgICAgICAgICAgIFB5TWVtX0ZSRUUoY2VsbDJhcmcpOworICAgICAgICAgICAgY2VsbDJhcmcgPSBOVUxMOworICAgICAgICB9CiAgICAgfQorICAgIGNvID0gUHlPYmplY3RfTkVXKFB5Q29kZU9iamVjdCwgJlB5Q29kZV9UeXBlKTsKKyAgICBpZiAoY28gPT0gTlVMTCkgeworICAgICAgICBpZiAoY2VsbDJhcmcpCisgICAgICAgICAgICBQeU1lbV9GUkVFKGNlbGwyYXJnKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGNvLT5jb19hcmdjb3VudCA9IGFyZ2NvdW50OworICAgIGNvLT5jb19rd29ubHlhcmdjb3VudCA9IGt3b25seWFyZ2NvdW50OworICAgIGNvLT5jb19ubG9jYWxzID0gbmxvY2FsczsKKyAgICBjby0+Y29fc3RhY2tzaXplID0gc3RhY2tzaXplOworICAgIGNvLT5jb19mbGFncyA9IGZsYWdzOworICAgIFB5X0lOQ1JFRihjb2RlKTsKKyAgICBjby0+Y29fY29kZSA9IGNvZGU7CisgICAgUHlfSU5DUkVGKGNvbnN0cyk7CisgICAgY28tPmNvX2NvbnN0cyA9IGNvbnN0czsKKyAgICBQeV9JTkNSRUYobmFtZXMpOworICAgIGNvLT5jb19uYW1lcyA9IG5hbWVzOworICAgIFB5X0lOQ1JFRih2YXJuYW1lcyk7CisgICAgY28tPmNvX3Zhcm5hbWVzID0gdmFybmFtZXM7CisgICAgUHlfSU5DUkVGKGZyZWV2YXJzKTsKKyAgICBjby0+Y29fZnJlZXZhcnMgPSBmcmVldmFyczsKKyAgICBQeV9JTkNSRUYoY2VsbHZhcnMpOworICAgIGNvLT5jb19jZWxsdmFycyA9IGNlbGx2YXJzOworICAgIGNvLT5jb19jZWxsMmFyZyA9IGNlbGwyYXJnOworICAgIFB5X0lOQ1JFRihmaWxlbmFtZSk7CisgICAgY28tPmNvX2ZpbGVuYW1lID0gZmlsZW5hbWU7CisgICAgUHlfSU5DUkVGKG5hbWUpOworICAgIGNvLT5jb19uYW1lID0gbmFtZTsKKyAgICBjby0+Y29fZmlyc3RsaW5lbm8gPSBmaXJzdGxpbmVubzsKKyAgICBQeV9JTkNSRUYobG5vdGFiKTsKKyAgICBjby0+Y29fbG5vdGFiID0gbG5vdGFiOworICAgIGNvLT5jb196b21iaWVmcmFtZSA9IE5VTEw7CisgICAgY28tPmNvX3dlYWtyZWZsaXN0ID0gTlVMTDsKICAgICByZXR1cm4gY287CiB9CiAKQEAgLTIxMiw5ICsyNDksNyBAQAogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBpdGVtID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKAotICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKGl0ZW0pLAotICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShpdGVtKSk7CisgICAgICAgICAgICBpdGVtID0gX1B5VW5pY29kZV9Db3B5KGl0ZW0pOwogICAgICAgICAgICAgaWYgKGl0ZW0gPT0gTlVMTCkgewogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihuZXd0dXBsZSk7CiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0zMzAsNiArMzY1LDggQEAKICAgICBQeV9YREVDUkVGKGNvLT5jb19maWxlbmFtZSk7CiAgICAgUHlfWERFQ1JFRihjby0+Y29fbmFtZSk7CiAgICAgUHlfWERFQ1JFRihjby0+Y29fbG5vdGFiKTsKKyAgICBpZiAoY28tPmNvX2NlbGwyYXJnICE9IE5VTEwpCisgICAgICAgIFB5TWVtX0ZSRUUoY28tPmNvX2NlbGwyYXJnKTsKICAgICBpZiAoY28tPmNvX3pvbWJpZWZyYW1lICE9IE5VTEwpCiAgICAgICAgIFB5T2JqZWN0X0dDX0RlbChjby0+Y29fem9tYmllZnJhbWUpOwogICAgIGlmIChjby0+Y29fd2Vha3JlZmxpc3QgIT0gTlVMTCkKQEAgLTM2Niw4ICs0MDMsNyBAQAogICAgIGlmICgob3AgIT0gUHlfRVEgJiYgb3AgIT0gUHlfTkUpIHx8CiAgICAgICAgICFQeUNvZGVfQ2hlY2soc2VsZikgfHwKICAgICAgICAgIVB5Q29kZV9DaGVjayhvdGhlcikpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgfQogCiAgICAgY28gPSAoUHlDb2RlT2JqZWN0ICopc2VsZjsKZGlmZiAtLWdpdCBhL09iamVjdHMvY29tcGxleG9iamVjdC5jIGIvT2JqZWN0cy9jb21wbGV4b2JqZWN0LmMKaW5kZXggZTI0N2JhOS4uYjczZGM0YiAxMDA2NDQKLS0tIGEvT2JqZWN0cy9jb21wbGV4b2JqZWN0LmMKKysrIGIvT2JqZWN0cy9jb21wbGV4b2JqZWN0LmMKQEAgLTI2NSw5ICsyNjUsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHRyeV9jb21wbGV4X3NwZWNpYWxfbWV0aG9kKFB5T2JqZWN0ICpvcCkgewogICAgIFB5T2JqZWN0ICpmOwotICAgIHN0YXRpYyBQeU9iamVjdCAqY29tcGxleHN0cjsKKyAgICBfUHlfSURFTlRJRklFUihfX2NvbXBsZXhfXyk7CiAKLSAgICBmID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwob3AsICJfX2NvbXBsZXhfXyIsICZjb21wbGV4c3RyKTsKKyAgICBmID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwob3AsICZQeUlkX19fY29tcGxleF9fKTsKICAgICBpZiAoZikgewogICAgICAgICBQeU9iamVjdCAqcmVzID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhmLCBOVUxMKTsKICAgICAgICAgUHlfREVDUkVGKGYpOwpAQCAtMzMwLDEyICszMzAsMTAgQEAKICAgICBpbnQgcHJlY2lzaW9uID0gMDsKICAgICBjaGFyIGZvcm1hdF9jb2RlID0gJ3InOwogICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwotICAgIFB5X3NzaXplX3QgbGVuOwogCiAgICAgLyogSWYgdGhlc2UgYXJlIG5vbi1OVUxMLCB0aGV5J2xsIG5lZWQgdG8gYmUgZnJlZWQuICovCiAgICAgY2hhciAqcHJlID0gTlVMTDsKICAgICBjaGFyICppbSA9IE5VTEw7Ci0gICAgY2hhciAqYnVmID0gTlVMTDsKIAogICAgIC8qIFRoZXNlIGRvIG5vdCBuZWVkIHRvIGJlIGZyZWVkLiByZSBpcyBlaXRoZXIgYW4gYWxpYXMKICAgICAgICBmb3IgcHJlIG9yIGEgcG9pbnRlciB0byBhIGNvbnN0YW50LiAgbGVhZCBhbmQgdGFpbApAQCAtMzc0LDIwICszNzIsMTAgQEAKICAgICAgICAgbGVhZCA9ICIoIjsKICAgICAgICAgdGFpbCA9ICIpIjsKICAgICB9Ci0gICAgLyogQWxsb2MgdGhlIGZpbmFsIGJ1ZmZlci4gQWRkIG9uZSBmb3IgdGhlICJqIiBpbiB0aGUgZm9ybWF0IHN0cmluZywKLSAgICAgICBhbmQgb25lIGZvciB0aGUgdHJhaWxpbmcgemVybyBieXRlLiAqLwotICAgIGxlbiA9IHN0cmxlbihsZWFkKSArIHN0cmxlbihyZSkgKyBzdHJsZW4oaW0pICsgc3RybGVuKHRhaWwpICsgMjsKLSAgICBidWYgPSBQeU1lbV9NYWxsb2MobGVuKTsKLSAgICBpZiAoIWJ1ZikgewotICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotICAgIFB5T1Nfc25wcmludGYoYnVmLCBsZW4sICIlcyVzJXNqJXMiLCBsZWFkLCByZSwgaW0sIHRhaWwpOwotICAgIHJlc3VsdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKGJ1Zik7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVzJXMlc2olcyIsIGxlYWQsIHJlLCBpbSwgdGFpbCk7CiAgIGRvbmU6CiAgICAgUHlNZW1fRnJlZShpbSk7CiAgICAgUHlNZW1fRnJlZShwcmUpOwotICAgIFB5TWVtX0ZyZWUoYnVmKTsKIAogICAgIHJldHVybiByZXN1bHQ7CiB9CkBAIC02NjIsOCArNjUwLDcgQEAKICAgICByZXR1cm4gcmVzOwogCiBVbmltcGxlbWVudGVkOgotICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTcxNSw5ICs3MDIsOCBAQAogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOl9fZm9ybWF0X18iLCAmZm9ybWF0X3NwZWMpKQogICAgIHJldHVybiBOVUxMOwotICAgIHJldHVybiBfUHlDb21wbGV4X0Zvcm1hdEFkdmFuY2VkKHNlbGYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoZm9ybWF0X3NwZWMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShmb3JtYXRfc3BlYykpOworICAgIHJldHVybiBfUHlDb21wbGV4X0Zvcm1hdEFkdmFuY2VkKHNlbGYsIGZvcm1hdF9zcGVjLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKGZvcm1hdF9zcGVjKSk7CiB9CiAKICNpZiAwCkBAIC03NjgsMjAgKzc1NCwxMCBAQAogICAgIFB5X3NzaXplX3QgbGVuOwogCiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayh2KSkgewotICAgICAgICBQeV9zc2l6ZV90IGksIGJ1ZmxlbiA9IFB5VW5pY29kZV9HRVRfU0laRSh2KTsKLSAgICAgICAgUHlfVU5JQ09ERSAqYnVmcHRyOwotICAgICAgICBzX2J1ZmZlciA9IFB5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsVG9BU0NJSSgKLSAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHYpLCBidWZsZW4pOworICAgICAgICBzX2J1ZmZlciA9IF9QeVVuaWNvZGVfVHJhbnNmb3JtRGVjaW1hbEFuZFNwYWNlVG9BU0NJSSh2KTsKICAgICAgICAgaWYgKHNfYnVmZmVyID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgLyogUmVwbGFjZSBub24tQVNDSUkgd2hpdGVzcGFjZSB3aXRoICcgJyAqLwotICAgICAgICBidWZwdHIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzX2J1ZmZlcik7Ci0gICAgICAgIGZvciAoaSA9IDA7IGkgPCBidWZsZW47IGkrKykgewotICAgICAgICAgICAgUHlfVU5JQ09ERSBjaCA9IGJ1ZnB0cltpXTsKLSAgICAgICAgICAgIGlmIChjaCA+IDEyNyAmJiBQeV9VTklDT0RFX0lTU1BBQ0UoY2gpKQotICAgICAgICAgICAgICAgIGJ1ZnB0cltpXSA9ICcgJzsKLSAgICAgICAgfQotICAgICAgICBzID0gX1B5VW5pY29kZV9Bc1N0cmluZ0FuZFNpemUoc19idWZmZXIsICZsZW4pOworICAgICAgICBzID0gUHlVbmljb2RlX0FzVVRGOEFuZFNpemUoc19idWZmZXIsICZsZW4pOwogICAgICAgICBpZiAocyA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CmRpZmYgLS1naXQgYS9PYmplY3RzL2Rlc2Nyb2JqZWN0LmMgYi9PYmplY3RzL2Rlc2Nyb2JqZWN0LmMKaW5kZXggYTc4NmJhZS4uZWNmMzcyYSAxMDA2NDQKLS0tIGEvT2JqZWN0cy9kZXNjcm9iamVjdC5jCisrKyBiL09iamVjdHMvZGVzY3JvYmplY3QuYwpAQCAtOSw2ICs5LDcgQEAKICAgICBfUHlPYmplY3RfR0NfVU5UUkFDSyhkZXNjcik7CiAgICAgUHlfWERFQ1JFRihkZXNjci0+ZF90eXBlKTsKICAgICBQeV9YREVDUkVGKGRlc2NyLT5kX25hbWUpOworICAgIFB5X1hERUNSRUYoZGVzY3ItPmRfcXVhbG5hbWUpOwogICAgIFB5T2JqZWN0X0dDX0RlbChkZXNjcik7CiB9CiAKQEAgLTMyMSw2ICszMjIsNDQgQEAKICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoZGVzY3ItPmRfbWV0aG9kLT5tbF9kb2MpOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorY2FsY3VsYXRlX3F1YWxuYW1lKFB5RGVzY3JPYmplY3QgKmRlc2NyKQoreworICAgIFB5T2JqZWN0ICp0eXBlX3F1YWxuYW1lLCAqcmVzOworICAgIF9QeV9JREVOVElGSUVSKF9fcXVhbG5hbWVfXyk7CisKKyAgICBpZiAoZGVzY3ItPmRfbmFtZSA9PSBOVUxMIHx8ICFQeVVuaWNvZGVfQ2hlY2soZGVzY3ItPmRfbmFtZSkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICI8ZGVzY3JpcHRvcj4uX19uYW1lX18gaXMgbm90IGEgdW5pY29kZSBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgdHlwZV9xdWFsbmFtZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0ICopZGVzY3ItPmRfdHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmUHlJZF9fX3F1YWxuYW1lX18pOworICAgIGlmICh0eXBlX3F1YWxuYW1lID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodHlwZV9xdWFsbmFtZSkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgIjxkZXNjcmlwdG9yPi5fX29iamNsYXNzX18uIgorICAgICAgICAgICAgICAgICAgICAgICAgIl9fcXVhbG5hbWVfXyBpcyBub3QgYSB1bmljb2RlIG9iamVjdCIpOworICAgICAgICBQeV9YREVDUkVGKHR5cGVfcXVhbG5hbWUpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICByZXMgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVMuJVMiLCB0eXBlX3F1YWxuYW1lLCBkZXNjci0+ZF9uYW1lKTsKKyAgICBQeV9ERUNSRUYodHlwZV9xdWFsbmFtZSk7CisgICAgcmV0dXJuIHJlczsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2Rlc2NyX2dldF9xdWFsbmFtZShQeURlc2NyT2JqZWN0ICpkZXNjcikKK3sKKyAgICBpZiAoZGVzY3ItPmRfcXVhbG5hbWUgPT0gTlVMTCkKKyAgICAgICAgZGVzY3ItPmRfcXVhbG5hbWUgPSBjYWxjdWxhdGVfcXVhbG5hbWUoZGVzY3IpOworICAgIFB5X1hJTkNSRUYoZGVzY3ItPmRfcXVhbG5hbWUpOworICAgIHJldHVybiBkZXNjci0+ZF9xdWFsbmFtZTsKK30KKwogc3RhdGljIFB5TWVtYmVyRGVmIGRlc2NyX21lbWJlcnNbXSA9IHsKICAgICB7Il9fb2JqY2xhc3NfXyIsIFRfT0JKRUNULCBvZmZzZXRvZihQeURlc2NyT2JqZWN0LCBkX3R5cGUpLCBSRUFET05MWX0sCiAgICAgeyJfX25hbWVfXyIsIFRfT0JKRUNULCBvZmZzZXRvZihQeURlc2NyT2JqZWN0LCBkX25hbWUpLCBSRUFET05MWX0sCkBAIC0zMjksNiArMzY4LDcgQEAKIAogc3RhdGljIFB5R2V0U2V0RGVmIG1ldGhvZF9nZXRzZXRbXSA9IHsKICAgICB7Il9fZG9jX18iLCAoZ2V0dGVyKW1ldGhvZF9nZXRfZG9jfSwKKyAgICB7Il9fcXVhbG5hbWVfXyIsIChnZXR0ZXIpZGVzY3JfZ2V0X3F1YWxuYW1lfSwKICAgICB7MH0KIH07CiAKQEAgLTM0NCw2ICszODQsNyBAQAogCiBzdGF0aWMgUHlHZXRTZXREZWYgbWVtYmVyX2dldHNldFtdID0gewogICAgIHsiX19kb2NfXyIsIChnZXR0ZXIpbWVtYmVyX2dldF9kb2N9LAorICAgIHsiX19xdWFsbmFtZV9fIiwgKGdldHRlcilkZXNjcl9nZXRfcXVhbG5hbWV9LAogICAgIHswfQogfTsKIApAQCAtMzU5LDYgKzQwMCw3IEBACiAKIHN0YXRpYyBQeUdldFNldERlZiBnZXRzZXRfZ2V0c2V0W10gPSB7CiAgICAgeyJfX2RvY19fIiwgKGdldHRlcilnZXRzZXRfZ2V0X2RvY30sCisgICAgeyJfX3F1YWxuYW1lX18iLCAoZ2V0dGVyKWRlc2NyX2dldF9xdWFsbmFtZX0sCiAgICAgezB9CiB9OwogCkBAIC0zNzQsNiArNDE2LDcgQEAKIAogc3RhdGljIFB5R2V0U2V0RGVmIHdyYXBwZXJkZXNjcl9nZXRzZXRbXSA9IHsKICAgICB7Il9fZG9jX18iLCAoZ2V0dGVyKXdyYXBwZXJkZXNjcl9nZXRfZG9jfSwKKyAgICB7Il9fcXVhbG5hbWVfXyIsIChnZXR0ZXIpZGVzY3JfZ2V0X3F1YWxuYW1lfSwKICAgICB7MH0KIH07CiAKQEAgLTU4NSw2ICs2MjgsOSBAQAogICAgICAgICAgICAgUHlfREVDUkVGKGRlc2NyKTsKICAgICAgICAgICAgIGRlc2NyID0gTlVMTDsKICAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGRlc2NyLT5kX3F1YWxuYW1lID0gTlVMTDsKKyAgICAgICAgfQogICAgIH0KICAgICByZXR1cm4gZGVzY3I7CiB9CkBAIC03MDMsMzQgKzc0OSwzOSBAQAogcHJveHlfZ2V0KHByb3h5b2JqZWN0ICpwcCwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKmtleSwgKmRlZiA9IFB5X05vbmU7CisgICAgX1B5X0lERU5USUZJRVIoZ2V0KTsKIAogICAgIGlmICghUHlBcmdfVW5wYWNrVHVwbGUoYXJncywgImdldCIsIDEsIDIsICZrZXksICZkZWYpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChwcC0+ZGljdCwgImdldCIsICIoT08pIiwga2V5LCBkZWYpOworICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHBwLT5kaWN0LCAmUHlJZF9nZXQsICIoT08pIiwga2V5LCBkZWYpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogcHJveHlfa2V5cyhwcm94eW9iamVjdCAqcHApCiB7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QocHAtPmRpY3QsICJrZXlzIiwgTlVMTCk7CisgICAgX1B5X0lERU5USUZJRVIoa2V5cyk7CisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocHAtPmRpY3QsICZQeUlkX2tleXMsIE5VTEwpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogcHJveHlfdmFsdWVzKHByb3h5b2JqZWN0ICpwcCkKIHsKLSAgICByZXR1cm4gUHlPYmplY3RfQ2FsbE1ldGhvZChwcC0+ZGljdCwgInZhbHVlcyIsIE5VTEwpOworICAgIF9QeV9JREVOVElGSUVSKHZhbHVlcyk7CisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocHAtPmRpY3QsICZQeUlkX3ZhbHVlcywgTlVMTCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBwcm94eV9pdGVtcyhwcm94eW9iamVjdCAqcHApCiB7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QocHAtPmRpY3QsICJpdGVtcyIsIE5VTEwpOworICAgIF9QeV9JREVOVElGSUVSKGl0ZW1zKTsKKyAgICByZXR1cm4gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChwcC0+ZGljdCwgJlB5SWRfaXRlbXMsIE5VTEwpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogcHJveHlfY29weShwcm94eW9iamVjdCAqcHApCiB7Ci0gICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QocHAtPmRpY3QsICJjb3B5IiwgTlVMTCk7CisgICAgX1B5X0lERU5USUZJRVIoY29weSk7CisgICAgcmV0dXJuIF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocHAtPmRpY3QsICZQeUlkX2NvcHksIE5VTEwpOwogfQogCiBzdGF0aWMgUHlNZXRob2REZWYgcHJveHlfbWV0aG9kc1tdID0gewpAQCAtOTgyLDkgKzEwMzMsMTYgQEAKICAgICB9CiB9CiAKK3N0YXRpYyBQeU9iamVjdCAqCit3cmFwcGVyX3F1YWxuYW1lKHdyYXBwZXJvYmplY3QgKndwKQoreworICAgIHJldHVybiBkZXNjcl9nZXRfcXVhbG5hbWUoKFB5RGVzY3JPYmplY3QgKil3cC0+ZGVzY3IpOworfQorCiBzdGF0aWMgUHlHZXRTZXREZWYgd3JhcHBlcl9nZXRzZXRzW10gPSB7CiAgICAgeyJfX29iamNsYXNzX18iLCAoZ2V0dGVyKXdyYXBwZXJfb2JqY2xhc3N9LAogICAgIHsiX19uYW1lX18iLCAoZ2V0dGVyKXdyYXBwZXJfbmFtZX0sCisgICAgeyJfX3F1YWxuYW1lX18iLCAoZ2V0dGVyKXdyYXBwZXJfcXVhbG5hbWV9LAogICAgIHsiX19kb2NfXyIsIChnZXR0ZXIpd3JhcHBlcl9kb2N9LAogICAgIHswfQogfTsKQEAgLTEyOTQsNyArMTM1Miw4IEBACiAKICAgICAvKiBpZiBubyBkb2NzdHJpbmcgZ2l2ZW4gYW5kIHRoZSBnZXR0ZXIgaGFzIG9uZSwgdXNlIHRoYXQgb25lICovCiAgICAgaWYgKChkb2MgPT0gTlVMTCB8fCBkb2MgPT0gUHlfTm9uZSkgJiYgZ2V0ICE9IE5VTEwpIHsKLSAgICAgICAgUHlPYmplY3QgKmdldF9kb2MgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGdldCwgIl9fZG9jX18iKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoX19kb2NfXyk7CisgICAgICAgIFB5T2JqZWN0ICpnZXRfZG9jID0gX1B5T2JqZWN0X0dldEF0dHJJZChnZXQsICZQeUlkX19fZG9jX18pOwogICAgICAgICBpZiAoZ2V0X2RvYykgewogICAgICAgICAgICAgaWYgKFB5X1RZUEUoc2VsZikgPT0gJlB5UHJvcGVydHlfVHlwZSkgewogICAgICAgICAgICAgICAgIFB5X1hERUNSRUYocHJvcC0+cHJvcF9kb2MpOwpAQCAtMTMwNSw3ICsxMzY0LDcgQEAKICAgICAgICAgICAgICAgICBpbiBkaWN0IG9mIHRoZSBzdWJjbGFzcyBpbnN0YW5jZSBpbnN0ZWFkLAogICAgICAgICAgICAgICAgIG90aGVyd2lzZSBpdCBnZXRzIHNoYWRvd2VkIGJ5IF9fZG9jX18gaW4gdGhlCiAgICAgICAgICAgICAgICAgY2xhc3MncyBkaWN0LiAqLwotICAgICAgICAgICAgICAgIGludCBlcnIgPSBQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHNlbGYsICJfX2RvY19fIiwgZ2V0X2RvYyk7CisgICAgICAgICAgICAgICAgaW50IGVyciA9IF9QeU9iamVjdF9TZXRBdHRySWQoc2VsZiwgJlB5SWRfX19kb2NfXywgZ2V0X2RvYyk7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGdldF9kb2MpOwogICAgICAgICAgICAgICAgIGlmIChlcnIgPCAwKQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CkBAIC0xMzIzLDYgKzEzODIsNDMgQEAKICAgICByZXR1cm4gMDsKIH0KIAorc3RhdGljIFB5T2JqZWN0ICoKK3Byb3BlcnR5X2dldF9fX2lzYWJzdHJhY3RtZXRob2RfXyhwcm9wZXJ0eW9iamVjdCAqcHJvcCwgdm9pZCAqY2xvc3VyZSkKK3sKKyAgICBpbnQgcmVzID0gX1B5T2JqZWN0X0lzQWJzdHJhY3QocHJvcC0+cHJvcF9nZXQpOworICAgIGlmIChyZXMgPT0gLTEpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGVsc2UgaWYgKHJlcykgeworICAgICAgICBQeV9SRVRVUk5fVFJVRTsKKyAgICB9CisKKyAgICByZXMgPSBfUHlPYmplY3RfSXNBYnN0cmFjdChwcm9wLT5wcm9wX3NldCk7CisgICAgaWYgKHJlcyA9PSAtMSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZWxzZSBpZiAocmVzKSB7CisgICAgICAgIFB5X1JFVFVSTl9UUlVFOworICAgIH0KKworICAgIHJlcyA9IF9QeU9iamVjdF9Jc0Fic3RyYWN0KHByb3AtPnByb3BfZGVsKTsKKyAgICBpZiAocmVzID09IC0xKSB7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBlbHNlIGlmIChyZXMpIHsKKyAgICAgICAgUHlfUkVUVVJOX1RSVUU7CisgICAgfQorICAgIFB5X1JFVFVSTl9GQUxTRTsKK30KKworc3RhdGljIFB5R2V0U2V0RGVmIHByb3BlcnR5X2dldHNldGxpc3RbXSA9IHsKKyAgICB7Il9faXNhYnN0cmFjdG1ldGhvZF9fIiwKKyAgICAgKGdldHRlcilwcm9wZXJ0eV9nZXRfX19pc2Fic3RyYWN0bWV0aG9kX18sIE5VTEwsCisgICAgIE5VTEwsCisgICAgIE5VTEx9LAorICAgIHtOVUxMfSAvKiBTZW50aW5lbCAqLworfTsKKwogUHlEb2NfU1RSVkFSKHByb3BlcnR5X2RvYywKICJwcm9wZXJ0eShmZ2V0PU5vbmUsIGZzZXQ9Tm9uZSwgZmRlbD1Ob25lLCBkb2M9Tm9uZSkgLT4gcHJvcGVydHkgYXR0cmlidXRlXG4iCiAiXG4iCkBAIC0xMzg4LDcgKzE0ODQsNyBAQAogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KICAgICBwcm9wZXJ0eV9tZXRob2RzLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21ldGhvZHMgKi8KICAgICBwcm9wZXJ0eV9tZW1iZXJzLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLworICAgIHByb3BlcnR5X2dldHNldGxpc3QsICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0c2V0ICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNlICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0ICovCiAgICAgcHJvcGVydHlfZGVzY3JfZ2V0LCAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kZXNjcl9nZXQgKi8KZGlmZiAtLWdpdCBhL09iamVjdHMvZGljdG9iamVjdC5jIGIvT2JqZWN0cy9kaWN0b2JqZWN0LmMKaW5kZXggNzY4MzUxZS4uNWE4YThhNyAxMDA2NDQKLS0tIGEvT2JqZWN0cy9kaWN0b2JqZWN0LmMKKysrIGIvT2JqZWN0cy9kaWN0b2JqZWN0LmMKQEAgLTIxNywxNiArMjE3LDIzIEBACiBzdGF0aWMgUHlEaWN0T2JqZWN0ICpmcmVlX2xpc3RbUHlEaWN0X01BWEZSRUVMSVNUXTsKIHN0YXRpYyBpbnQgbnVtZnJlZSA9IDA7CiAKLXZvaWQKLVB5RGljdF9GaW5pKHZvaWQpCitpbnQKK1B5RGljdF9DbGVhckZyZWVMaXN0KHZvaWQpCiB7CiAgICAgUHlEaWN0T2JqZWN0ICpvcDsKLQorICAgIGludCByZXQgPSBudW1mcmVlOwogICAgIHdoaWxlIChudW1mcmVlKSB7CiAgICAgICAgIG9wID0gZnJlZV9saXN0Wy0tbnVtZnJlZV07CiAgICAgICAgIGFzc2VydChQeURpY3RfQ2hlY2tFeGFjdChvcCkpOwogICAgICAgICBQeU9iamVjdF9HQ19EZWwob3ApOwogICAgIH0KKyAgICByZXR1cm4gcmV0OworfQorCit2b2lkCitQeURpY3RfRmluaSh2b2lkKQoreworICAgIFB5RGljdF9DbGVhckZyZWVMaXN0KCk7CiB9CiAKIFB5T2JqZWN0ICoKQEAgLTQxOCw3ICs0MjUsNyBAQAogICAgICAgICBtcC0+bWFfbG9va3VwID0gbG9va2RpY3Q7CiAgICAgICAgIHJldHVybiBsb29rZGljdChtcCwga2V5LCBoYXNoKTsKICAgICB9Ci0gICAgaSA9IGhhc2ggJiBtYXNrOworICAgIGkgPSAoc2l6ZV90KWhhc2ggJiBtYXNrOwogICAgIGVwID0gJmVwMFtpXTsKICAgICBpZiAoZXAtPm1lX2tleSA9PSBOVUxMIHx8IGVwLT5tZV9rZXkgPT0ga2V5KQogICAgICAgICByZXR1cm4gZXA7CkBAIC01NzIsNyArNTc5LDcgQEAKICAgICByZWdpc3RlciBQeURpY3RFbnRyeSAqZXA7CiAKICAgICBNQUlOVEFJTl9UUkFDS0lORyhtcCwga2V5LCB2YWx1ZSk7Ci0gICAgaSA9IGhhc2ggJiBtYXNrOworICAgIGkgPSAoc2l6ZV90KWhhc2ggJiBtYXNrOwogICAgIGVwID0gJmVwMFtpXTsKICAgICBmb3IgKHBlcnR1cmIgPSBoYXNoOyBlcC0+bWVfa2V5ICE9IE5VTEw7IHBlcnR1cmIgPj49IFBFUlRVUkJfU0hJRlQpIHsKICAgICAgICAgaSA9IChpIDw8IDIpICsgaSArIHBlcnR1cmIgKyAxOwpAQCAtNzEwLDcgKzcxNyw3IEBACiAgICAgaWYgKCFQeURpY3RfQ2hlY2sob3ApKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkKKyAgICAgICAgKGhhc2ggPSAoKFB5QVNDSUlPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpCiAgICAgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkgewpAQCAtNzYyLDcgKzc2OSw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkKKyAgICAgICAgKGhhc2ggPSAoKFB5QVNDSUlPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpCiAgICAgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkgewpAQCAtNzk3LDcgKzgwNCw3IEBACiAgICAgYXNzZXJ0KHZhbHVlKTsKICAgICBtcCA9IChQeURpY3RPYmplY3QgKilvcDsKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkKKyAgICAgICAgKGhhc2ggPSAoKFB5QVNDSUlPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpCiAgICAgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKQEAgLTg0Miw3ICs4NDksNyBAQAogICAgIH0KICAgICBhc3NlcnQoa2V5KTsKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgeworICAgICAgICAoaGFzaCA9ICgoUHlBU0NJSU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiAtMTsKQEAgLTExMjIsNyArMTEyOSw3IEBACiAgICAgUHlEaWN0RW50cnkgKmVwOwogICAgIGFzc2VydChtcC0+bWFfdGFibGUgIT0gTlVMTCk7CiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2tFeGFjdChrZXkpIHx8Ci0gICAgICAgIChoYXNoID0gKChQeVVuaWNvZGVPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpIHsKKyAgICAgICAgKGhhc2ggPSAoKFB5QVNDSUlPYmplY3QgKikga2V5KS0+aGFzaCkgPT0gLTEpIHsKICAgICAgICAgaGFzaCA9IFB5T2JqZWN0X0hhc2goa2V5KTsKICAgICAgICAgaWYgKGhhc2ggPT0gLTEpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTExMzUsMTAgKzExNDIsOCBAQAogICAgICAgICBpZiAoIVB5RGljdF9DaGVja0V4YWN0KG1wKSkgewogICAgICAgICAgICAgLyogTG9vayB1cCBfX21pc3NpbmdfXyBtZXRob2QgaWYgd2UncmUgYSBzdWJjbGFzcy4gKi8KICAgICAgICAgICAgIFB5T2JqZWN0ICptaXNzaW5nLCAqcmVzOwotICAgICAgICAgICAgc3RhdGljIFB5T2JqZWN0ICptaXNzaW5nX3N0ciA9IE5VTEw7Ci0gICAgICAgICAgICBtaXNzaW5nID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoKFB5T2JqZWN0ICopbXAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl9fbWlzc2luZ19fIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWlzc2luZ19zdHIpOworICAgICAgICAgICAgX1B5X0lERU5USUZJRVIoX19taXNzaW5nX18pOworICAgICAgICAgICAgbWlzc2luZyA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKChQeU9iamVjdCAqKW1wLCAmUHlJZF9fX21pc3NpbmdfXyk7CiAgICAgICAgICAgICBpZiAobWlzc2luZyAhPSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgcmVzID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhtaXNzaW5nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5LCBOVUxMKTsKQEAgLTEzOTUsNyArMTQwMCw4IEBACiAgICAgICAgIHJlc3VsdCA9IC0xOwogCiAgICAgZWxzZSBpZiAoYXJnICE9IE5VTEwpIHsKLSAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcoYXJnLCAia2V5cyIpKQorICAgICAgICBfUHlfSURFTlRJRklFUihrZXlzKTsKKyAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQoYXJnLCAmUHlJZF9rZXlzKSkKICAgICAgICAgICAgIHJlc3VsdCA9IFB5RGljdF9NZXJnZShzZWxmLCBhcmcsIDEpOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICByZXN1bHQgPSBQeURpY3RfTWVyZ2VGcm9tU2VxMihzZWxmLCBhcmcsIDEpOwpAQCAtMTczNCw3ICsxNzQwLDcgQEAKICAgICBQeURpY3RFbnRyeSAqZXA7CiAKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgeworICAgICAgICAoaGFzaCA9ICgoUHlBU0NJSU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTc1OCw3ICsxNzY0LDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgeworICAgICAgICAoaGFzaCA9ICgoUHlBU0NJSU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTc4Nyw3ICsxNzkzLDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgeworICAgICAgICAoaGFzaCA9ICgoUHlBU0NJSU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTgzMiw3ICsxODM4LDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIGlmICghUHlVbmljb2RlX0NoZWNrRXhhY3Qoa2V5KSB8fAotICAgICAgICAoaGFzaCA9ICgoUHlVbmljb2RlT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CisgICAgICAgIChoYXNoID0gKChQeUFTQ0lJT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CiAgICAgICAgIGhhc2ggPSBQeU9iamVjdF9IYXNoKGtleSk7CiAgICAgICAgIGlmIChoYXNoID09IC0xKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yMDQxLDcgKzIwNDcsNyBAQAogICAgIFB5RGljdEVudHJ5ICplcDsKIAogICAgIGlmICghUHlVbmljb2RlX0NoZWNrRXhhY3Qoa2V5KSB8fAotICAgICAgICAoaGFzaCA9ICgoUHlVbmljb2RlT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CisgICAgICAgIChoYXNoID0gKChQeUFTQ0lJT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CiAgICAgICAgIGhhc2ggPSBQeU9iamVjdF9IYXNoKGtleSk7CiAgICAgICAgIGlmIChoYXNoID09IC0xKQogICAgICAgICAgICAgcmV0dXJuIC0xOwpAQCAtMjYxNiwxMCArMjYyMiw4IEBACiAgICAgYXNzZXJ0KFB5RGljdFZpZXdTZXRfQ2hlY2soc2VsZikpOwogICAgIGFzc2VydChvdGhlciAhPSBOVUxMKTsKIAotICAgIGlmICghUHlBbnlTZXRfQ2hlY2sob3RoZXIpICYmICFQeURpY3RWaWV3U2V0X0NoZWNrKG90aGVyKSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlBbnlTZXRfQ2hlY2sob3RoZXIpICYmICFQeURpY3RWaWV3U2V0X0NoZWNrKG90aGVyKSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogCiAgICAgbGVuX3NlbGYgPSBQeU9iamVjdF9TaXplKHNlbGYpOwogICAgIGlmIChsZW5fc2VsZiA8IDApCkBAIC0yNzE3LDEwICsyNzIxLDEyIEBACiB7CiAgICAgUHlPYmplY3QgKnJlc3VsdCA9IFB5U2V0X05ldyhzZWxmKTsKICAgICBQeU9iamVjdCAqdG1wOworICAgIF9QeV9JREVOVElGSUVSKGRpZmZlcmVuY2VfdXBkYXRlKTsKKwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICB0bXAgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHJlc3VsdCwgImRpZmZlcmVuY2VfdXBkYXRlIiwgIk8iLCBvdGhlcik7CisgICAgdG1wID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChyZXN1bHQsICZQeUlkX2RpZmZlcmVuY2VfdXBkYXRlLCAiTyIsIG90aGVyKTsKICAgICBpZiAodG1wID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjczNSwxMCArMjc0MSwxMiBAQAogewogICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBQeVNldF9OZXcoc2VsZik7CiAgICAgUHlPYmplY3QgKnRtcDsKKyAgICBfUHlfSURFTlRJRklFUihpbnRlcnNlY3Rpb25fdXBkYXRlKTsKKwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICB0bXAgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHJlc3VsdCwgImludGVyc2VjdGlvbl91cGRhdGUiLCAiTyIsIG90aGVyKTsKKyAgICB0bXAgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHJlc3VsdCwgJlB5SWRfaW50ZXJzZWN0aW9uX3VwZGF0ZSwgIk8iLCBvdGhlcik7CiAgICAgaWYgKHRtcCA9PSBOVUxMKSB7CiAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTI3NTMsMTAgKzI3NjEsMTIgQEAKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0ID0gUHlTZXRfTmV3KHNlbGYpOwogICAgIFB5T2JqZWN0ICp0bXA7CisgICAgX1B5X0lERU5USUZJRVIodXBkYXRlKTsKKwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICB0bXAgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHJlc3VsdCwgInVwZGF0ZSIsICJPIiwgb3RoZXIpOworICAgIHRtcCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocmVzdWx0LCAmUHlJZF91cGRhdGUsICJPIiwgb3RoZXIpOwogICAgIGlmICh0bXAgPT0gTlVMTCkgewogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yNzcxLDEwICsyNzgxLDEyIEBACiB7CiAgICAgUHlPYmplY3QgKnJlc3VsdCA9IFB5U2V0X05ldyhzZWxmKTsKICAgICBQeU9iamVjdCAqdG1wOworICAgIF9QeV9JREVOVElGSUVSKHN5bW1ldHJpY19kaWZmZXJlbmNlX3VwZGF0ZSk7CisKICAgICBpZiAocmVzdWx0ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgdG1wID0gUHlPYmplY3RfQ2FsbE1ldGhvZChyZXN1bHQsICJzeW1tZXRyaWNfZGlmZmVyZW5jZV91cGRhdGUiLCAiTyIsCisgICAgdG1wID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChyZXN1bHQsICZQeUlkX3N5bW1ldHJpY19kaWZmZXJlbmNlX3VwZGF0ZSwgIk8iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3RoZXIpOwogICAgIGlmICh0bXAgPT0gTlVMTCkgewogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKZGlmZiAtLWdpdCBhL09iamVjdHMvZW51bW9iamVjdC5jIGIvT2JqZWN0cy9lbnVtb2JqZWN0LmMKaW5kZXggMDBhMzM0Ni4uMjNiMzgwOCAxMDA2NDQKLS0tIGEvT2JqZWN0cy9lbnVtb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9lbnVtb2JqZWN0LmMKQEAgLTIyNCw4ICsyMjQsOCBAQAogewogICAgIFB5X3NzaXplX3QgbjsKICAgICBQeU9iamVjdCAqc2VxLCAqcmV2ZXJzZWRfbWV0aDsKLSAgICBzdGF0aWMgUHlPYmplY3QgKnJldmVyc2VkX2NhY2hlID0gTlVMTDsKICAgICByZXZlcnNlZG9iamVjdCAqcm87CisgICAgX1B5X0lERU5USUZJRVIoX19yZXZlcnNlZF9fKTsKIAogICAgIGlmICh0eXBlID09ICZQeVJldmVyc2VkX1R5cGUgJiYgIV9QeUFyZ19Ob0tleXdvcmRzKCJyZXZlcnNlZCgpIiwga3dkcykpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMjMzLDcgKzIzMyw3IEBACiAgICAgaWYgKCFQeUFyZ19VbnBhY2tUdXBsZShhcmdzLCAicmV2ZXJzZWQiLCAxLCAxLCAmc2VxKSApCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgcmV2ZXJzZWRfbWV0aCA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKHNlcSwgIl9fcmV2ZXJzZWRfXyIsICZyZXZlcnNlZF9jYWNoZSk7CisgICAgcmV2ZXJzZWRfbWV0aCA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKHNlcSwgJlB5SWRfX19yZXZlcnNlZF9fKTsKICAgICBpZiAocmV2ZXJzZWRfbWV0aCAhPSBOVUxMKSB7CiAgICAgICAgIFB5T2JqZWN0ICpyZXMgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzKHJldmVyc2VkX21ldGgsIE5VTEwpOwogICAgICAgICBQeV9ERUNSRUYocmV2ZXJzZWRfbWV0aCk7CmRpZmYgLS1naXQgYS9PYmplY3RzL2V4Y2VwdGlvbnMuYyBiL09iamVjdHMvZXhjZXB0aW9ucy5jCmluZGV4IGU1NTA1OTEuLjY1Mjk0ODIgMTAwNjQ0Ci0tLSBhL09iamVjdHMvZXhjZXB0aW9ucy5jCisrKyBiL09iamVjdHMvZXhjZXB0aW9ucy5jCkBAIC0xMCw2ICsxMCwyMCBAQAogI2luY2x1ZGUgIm9zZGVmcy5oIgogCiAKKy8qIENvbXBhdGliaWxpdHkgYWxpYXNlcyAqLworUHlPYmplY3QgKlB5RXhjX0Vudmlyb25tZW50RXJyb3IgPSBOVUxMOworUHlPYmplY3QgKlB5RXhjX0lPRXJyb3IgPSBOVUxMOworI2lmZGVmIE1TX1dJTkRPV1MKK1B5T2JqZWN0ICpQeUV4Y19XaW5kb3dzRXJyb3IgPSBOVUxMOworI2VuZGlmCisjaWZkZWYgX19WTVMKK1B5T2JqZWN0ICpQeUV4Y19WTVNFcnJvciA9IE5VTEw7CisjZW5kaWYKKworLyogVGhlIGRpY3QgbWFwIGZyb20gZXJybm8gY29kZXMgdG8gT1NFcnJvciBzdWJjbGFzc2VzICovCitzdGF0aWMgUHlPYmplY3QgKmVycm5vbWFwID0gTlVMTDsKKworCiAvKiBOT1RFOiBJZiB0aGUgZXhjZXB0aW9uIGNsYXNzIGhpZXJhcmNoeSBjaGFuZ2VzLCBkb24ndCBmb3JnZXQgdG8gdXBkYXRlCiAgKiBMaWIvdGVzdC9leGNlcHRpb25faGllcmFyY2h5LnR4dAogICovCkBAIC00NCw3ICs1OCw3IEBACiAgICAgaWYgKCFfUHlBcmdfTm9LZXl3b3JkcyhQeV9UWVBFKHNlbGYpLT50cF9uYW1lLCBrd2RzKSkKICAgICAgICAgcmV0dXJuIC0xOwogCi0gICAgUHlfREVDUkVGKHNlbGYtPmFyZ3MpOworICAgIFB5X1hERUNSRUYoc2VsZi0+YXJncyk7CiAgICAgc2VsZi0+YXJncyA9IGFyZ3M7CiAgICAgUHlfSU5DUkVGKHNlbGYtPmFyZ3MpOwogCkBAIC00MzMsMTEgKzQ0NywxMyBAQAogICAgIFB5RG9jX1NUUihFWENET0MpLCAodHJhdmVyc2Vwcm9jKUVYQ1NUT1JFICMjIF90cmF2ZXJzZSwgXAogICAgIChpbnF1aXJ5KUVYQ1NUT1JFICMjIF9jbGVhciwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgJl8gIyMgRVhDQkFTRSwgXAogICAgIDAsIDAsIDAsIG9mZnNldG9mKFB5ICMjIEVYQ1NUT1JFICMjIE9iamVjdCwgZGljdCksIFwKLSAgICAoaW5pdHByb2MpRVhDU1RPUkUgIyMgX2luaXQsIDAsIEJhc2VFeGNlcHRpb25fbmV3LFwKKyAgICAoaW5pdHByb2MpRVhDU1RPUkUgIyMgX2luaXQsIDAsIDAsIFwKIH07IFwKIFB5T2JqZWN0ICpQeUV4Y18gIyMgRVhDTkFNRSA9IChQeU9iamVjdCAqKSZfUHlFeGNfICMjIEVYQ05BTUUKIAotI2RlZmluZSBDb21wbGV4RXh0ZW5kc0V4Y2VwdGlvbihFWENCQVNFLCBFWENOQU1FLCBFWENTVE9SRSwgRVhDREVBTExPQywgRVhDTUVUSE9EUywgRVhDTUVNQkVSUywgRVhDU1RSLCBFWENET0MpIFwKKyNkZWZpbmUgQ29tcGxleEV4dGVuZHNFeGNlcHRpb24oRVhDQkFTRSwgRVhDTkFNRSwgRVhDU1RPUkUsIEVYQ05FVywgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFWENNRVRIT0RTLCBFWENNRU1CRVJTLCBFWENHRVRTRVQsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVhDU1RSLCBFWENET0MpIFwKIHN0YXRpYyBQeVR5cGVPYmplY3QgX1B5RXhjXyAjIyBFWENOQU1FID0geyBcCiAgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKE5VTEwsIDApIFwKICAgICAjIEVYQ05BTUUsIFwKQEAgLTQ0Nyw5ICs0NjMsOSBAQAogICAgIFB5X1RQRkxBR1NfREVGQVVMVCB8IFB5X1RQRkxBR1NfQkFTRVRZUEUgfCBQeV9UUEZMQUdTX0hBVkVfR0MsIFwKICAgICBQeURvY19TVFIoRVhDRE9DKSwgKHRyYXZlcnNlcHJvYylFWENTVE9SRSAjIyBfdHJhdmVyc2UsIFwKICAgICAoaW5xdWlyeSlFWENTVE9SRSAjIyBfY2xlYXIsIDAsIDAsIDAsIDAsIEVYQ01FVEhPRFMsIFwKLSAgICBFWENNRU1CRVJTLCAwLCAmXyAjIyBFWENCQVNFLCBcCisgICAgRVhDTUVNQkVSUywgRVhDR0VUU0VULCAmXyAjIyBFWENCQVNFLCBcCiAgICAgMCwgMCwgMCwgb2Zmc2V0b2YoUHkgIyMgRVhDU1RPUkUgIyMgT2JqZWN0LCBkaWN0KSwgXAotICAgIChpbml0cHJvYylFWENTVE9SRSAjIyBfaW5pdCwgMCwgQmFzZUV4Y2VwdGlvbl9uZXcsXAorICAgIChpbml0cHJvYylFWENTVE9SRSAjIyBfaW5pdCwgMCwgRVhDTkVXLFwKIH07IFwKIFB5T2JqZWN0ICpQeUV4Y18gIyMgRVhDTkFNRSA9IChQeU9iamVjdCAqKSZfUHlFeGNfICMjIEVYQ05BTUUKIApAQCAtNDcxLDggKzQ4Nyw3MCBAQAogLyoKICAqICAgIFN0b3BJdGVyYXRpb24gZXh0ZW5kcyBFeGNlcHRpb24KICAqLwotU2ltcGxlRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19FeGNlcHRpb24sIFN0b3BJdGVyYXRpb24sCi0gICAgICAgICAgICAgICAgICAgICAgICJTaWduYWwgdGhlIGVuZCBmcm9tIGl0ZXJhdG9yLl9fbmV4dF9fKCkuIik7CisKK3N0YXRpYyBQeU1lbWJlckRlZiBTdG9wSXRlcmF0aW9uX21lbWJlcnNbXSA9IHsKKyAgICB7InZhbHVlIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5U3RvcEl0ZXJhdGlvbk9iamVjdCwgdmFsdWUpLCAwLAorICAgICAgICBQeURvY19TVFIoImdlbmVyYXRvciByZXR1cm4gdmFsdWUiKX0sCisgICAge05VTEx9ICAvKiBTZW50aW5lbCAqLworfTsKKworc3RhdGljIGludAorU3RvcEl0ZXJhdGlvbl9pbml0KFB5U3RvcEl0ZXJhdGlvbk9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQoreworICAgIFB5X3NzaXplX3Qgc2l6ZSA9IFB5VHVwbGVfR0VUX1NJWkUoYXJncyk7CisgICAgUHlPYmplY3QgKnZhbHVlOworCisgICAgaWYgKEJhc2VFeGNlcHRpb25faW5pdCgoUHlCYXNlRXhjZXB0aW9uT2JqZWN0ICopc2VsZiwgYXJncywga3dkcykgPT0gLTEpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBQeV9DTEVBUihzZWxmLT52YWx1ZSk7CisgICAgaWYgKHNpemUgPiAwKQorICAgICAgICB2YWx1ZSA9IFB5VHVwbGVfR0VUX0lURU0oYXJncywgMCk7CisgICAgZWxzZQorICAgICAgICB2YWx1ZSA9IFB5X05vbmU7CisgICAgUHlfSU5DUkVGKHZhbHVlKTsKKyAgICBzZWxmLT52YWx1ZSA9IHZhbHVlOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50CitTdG9wSXRlcmF0aW9uX2NsZWFyKFB5U3RvcEl0ZXJhdGlvbk9iamVjdCAqc2VsZikKK3sKKyAgICBQeV9DTEVBUihzZWxmLT52YWx1ZSk7CisgICAgcmV0dXJuIEJhc2VFeGNlcHRpb25fY2xlYXIoKFB5QmFzZUV4Y2VwdGlvbk9iamVjdCAqKXNlbGYpOworfQorCitzdGF0aWMgdm9pZAorU3RvcEl0ZXJhdGlvbl9kZWFsbG9jKFB5U3RvcEl0ZXJhdGlvbk9iamVjdCAqc2VsZikKK3sKKyAgICBfUHlPYmplY3RfR0NfVU5UUkFDSyhzZWxmKTsKKyAgICBTdG9wSXRlcmF0aW9uX2NsZWFyKHNlbGYpOworICAgIFB5X1RZUEUoc2VsZiktPnRwX2ZyZWUoKFB5T2JqZWN0ICopc2VsZik7Cit9CisKK3N0YXRpYyBpbnQKK1N0b3BJdGVyYXRpb25fdHJhdmVyc2UoUHlTdG9wSXRlcmF0aW9uT2JqZWN0ICpzZWxmLCB2aXNpdHByb2MgdmlzaXQsIHZvaWQgKmFyZykKK3sKKyAgICBQeV9WSVNJVChzZWxmLT52YWx1ZSk7CisgICAgcmV0dXJuIEJhc2VFeGNlcHRpb25fdHJhdmVyc2UoKFB5QmFzZUV4Y2VwdGlvbk9iamVjdCAqKXNlbGYsIHZpc2l0LCBhcmcpOworfQorCitQeU9iamVjdCAqCitQeVN0b3BJdGVyYXRpb25fQ3JlYXRlKFB5T2JqZWN0ICp2YWx1ZSkKK3sKKyAgICByZXR1cm4gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhQeUV4Y19TdG9wSXRlcmF0aW9uLCB2YWx1ZSwgTlVMTCk7Cit9CisKK0NvbXBsZXhFeHRlbmRzRXhjZXB0aW9uKAorICAgIFB5RXhjX0V4Y2VwdGlvbiwgICAgICAgLyogYmFzZSAqLworICAgIFN0b3BJdGVyYXRpb24sICAgICAgICAgLyogbmFtZSAqLworICAgIFN0b3BJdGVyYXRpb24sICAgICAgICAgLyogcHJlZml4IGZvciAqX2luaXQsIGV0YyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgLyogbmV3ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAvKiBtZXRob2RzICovCisgICAgU3RvcEl0ZXJhdGlvbl9tZW1iZXJzLCAvKiBtZW1iZXJzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAvKiBnZXRzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgIC8qIHN0ciAqLworICAgICJTaWduYWwgdGhlIGVuZCBmcm9tIGl0ZXJhdG9yLl9fbmV4dF9fKCkuIgorKTsKIAogCiAvKgpAQCAtNDk5LDcgKzU3Nyw3IEBACiAgICAgUHlfQ0xFQVIoc2VsZi0+Y29kZSk7CiAgICAgaWYgKHNpemUgPT0gMSkKICAgICAgICAgc2VsZi0+Y29kZSA9IFB5VHVwbGVfR0VUX0lURU0oYXJncywgMCk7Ci0gICAgZWxzZSBpZiAoc2l6ZSA+IDEpCisgICAgZWxzZSAvKiBzaXplID4gMSAqLwogICAgICAgICBzZWxmLT5jb2RlID0gYXJnczsKICAgICBQeV9JTkNSRUYoc2VsZi0+Y29kZSk7CiAgICAgcmV0dXJuIDA7CkBAIC01MzQsNyArNjEyLDcgQEAKIH07CiAKIENvbXBsZXhFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX0Jhc2VFeGNlcHRpb24sIFN5c3RlbUV4aXQsIFN5c3RlbUV4aXQsCi0gICAgICAgICAgICAgICAgICAgICAgICBTeXN0ZW1FeGl0X2RlYWxsb2MsIDAsIFN5c3RlbUV4aXRfbWVtYmVycywgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgIDAsIDAsIFN5c3RlbUV4aXRfbWVtYmVycywgMCwgMCwKICAgICAgICAgICAgICAgICAgICAgICAgICJSZXF1ZXN0IHRvIGV4aXQgZnJvbSB0aGUgaW50ZXJwcmV0ZXIuIik7CiAKIC8qCkBAIC01NTIsMTI0ICs2MzAsMzM1IEBACiAKIAogLyoKLSAqICAgIEVudmlyb25tZW50RXJyb3IgZXh0ZW5kcyBFeGNlcHRpb24KKyAqICAgIE9TRXJyb3IgZXh0ZW5kcyBFeGNlcHRpb24KICAqLwogCisjaWZkZWYgTVNfV0lORE9XUworI2luY2x1ZGUgImVycm1hcC5oIgorI2VuZGlmCisKIC8qIFdoZXJlIGEgZnVuY3Rpb24gaGFzIGEgc2luZ2xlIGZpbGVuYW1lLCBzdWNoIGFzIG9wZW4oKSBvciBzb21lCiAgKiBvZiB0aGUgb3MgbW9kdWxlIGZ1bmN0aW9ucywgUHlFcnJfU2V0RnJvbUVycm5vV2l0aEZpbGVuYW1lKCkgaXMKICAqIGNhbGxlZCwgZ2l2aW5nIGEgdGhpcmQgYXJndW1lbnQgd2hpY2ggaXMgdGhlIGZpbGVuYW1lLiAgQnV0LCBzbwogICogdGhhdCBvbGQgY29kZSB1c2luZyBpbi1wbGFjZSB1bnBhY2tpbmcgZG9lc24ndCBicmVhaywgZS5nLjoKICAqCi0gKiBleGNlcHQgSU9FcnJvciwgKGVycm5vLCBzdHJlcnJvcik6CisgKiBleGNlcHQgT1NFcnJvciwgKGVycm5vLCBzdHJlcnJvcik6CiAgKgogICogd2UgaGFjayBhcmdzIHNvIHRoYXQgaXQgb25seSBjb250YWlucyB0d28gaXRlbXMuICBUaGlzIGFsc28KICAqIG1lYW5zIHdlIG5lZWQgb3VyIG93biBfX3N0cl9fKCkgd2hpY2ggcHJpbnRzIG91dCB0aGUgZmlsZW5hbWUKICAqIHdoZW4gaXQgd2FzIHN1cHBsaWVkLgogICovCisKKy8qIFRoaXMgZnVuY3Rpb24gZG9lc24ndCBjbGVhbnVwIG9uIGVycm9yLCB0aGUgY2FsbGVyIHNob3VsZCAqLwogc3RhdGljIGludAotRW52aXJvbm1lbnRFcnJvcl9pbml0KFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsCi0gICAgUHlPYmplY3QgKmt3ZHMpCitvc2Vycm9yX3BhcnNlX2FyZ3MoUHlPYmplY3QgKipwX2FyZ3MsCisgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipteWVycm5vLCBQeU9iamVjdCAqKnN0cmVycm9yLAorICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICoqZmlsZW5hbWUKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgICAgICAgICAgICAgICAgLCBQeU9iamVjdCAqKndpbmVycm9yCisjZW5kaWYKKyAgICAgICAgICAgICAgICAgICkKIHsKLSAgICBQeU9iamVjdCAqbXllcnJubyA9IE5VTEwsICpzdHJlcnJvciA9IE5VTEwsICpmaWxlbmFtZSA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKnN1YnNsaWNlID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IG5hcmdzOworICAgIFB5T2JqZWN0ICphcmdzID0gKnBfYXJnczsKIAotICAgIGlmIChCYXNlRXhjZXB0aW9uX2luaXQoKFB5QmFzZUV4Y2VwdGlvbk9iamVjdCAqKXNlbGYsIGFyZ3MsIGt3ZHMpID09IC0xKQotICAgICAgICByZXR1cm4gLTE7CisgICAgbmFyZ3MgPSBQeVR1cGxlX0dFVF9TSVpFKGFyZ3MpOwogCi0gICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoYXJncykgPD0gMSB8fCBQeVR1cGxlX0dFVF9TSVpFKGFyZ3MpID4gMykgewotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0KLSAgICBpZiAoIVB5QXJnX1VucGFja1R1cGxlKGFyZ3MsICJFbnZpcm9ubWVudEVycm9yIiwgMiwgMywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICZteWVycm5vLCAmc3RyZXJyb3IsICZmaWxlbmFtZSkpIHsKLSAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSAgICBQeV9DTEVBUihzZWxmLT5teWVycm5vKTsgICAgICAgLyogcmVwbGFjaW5nICovCi0gICAgc2VsZi0+bXllcnJubyA9IG15ZXJybm87Ci0gICAgUHlfSU5DUkVGKHNlbGYtPm15ZXJybm8pOwotCi0gICAgUHlfQ0xFQVIoc2VsZi0+c3RyZXJyb3IpOyAgICAgIC8qIHJlcGxhY2luZyAqLwotICAgIHNlbGYtPnN0cmVycm9yID0gc3RyZXJyb3I7Ci0gICAgUHlfSU5DUkVGKHNlbGYtPnN0cmVycm9yKTsKLQotICAgIC8qIHNlbGYtPmZpbGVuYW1lIHdpbGwgcmVtYWluIFB5X05vbmUgb3RoZXJ3aXNlICovCi0gICAgaWYgKGZpbGVuYW1lICE9IE5VTEwpIHsKLSAgICAgICAgUHlfQ0xFQVIoc2VsZi0+ZmlsZW5hbWUpOyAgICAgIC8qIHJlcGxhY2luZyAqLwotICAgICAgICBzZWxmLT5maWxlbmFtZSA9IGZpbGVuYW1lOwotICAgICAgICBQeV9JTkNSRUYoc2VsZi0+ZmlsZW5hbWUpOwotCi0gICAgICAgIHN1YnNsaWNlID0gUHlUdXBsZV9HZXRTbGljZShhcmdzLCAwLCAyKTsKLSAgICAgICAgaWYgKCFzdWJzbGljZSkKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgaWYgKG5hcmdzID49IDIgJiYgbmFyZ3MgPD0gNCkgeworICAgICAgICBpZiAoIVB5QXJnX1VucGFja1R1cGxlKGFyZ3MsICJPU0Vycm9yIiwgMiwgNCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBteWVycm5vLCBzdHJlcnJvciwgZmlsZW5hbWUsIHdpbmVycm9yKSkKICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgaWYgKCp3aW5lcnJvciAmJiBQeUxvbmdfQ2hlY2soKndpbmVycm9yKSkgeworICAgICAgICAgICAgbG9uZyBlcnJjb2RlLCB3aW5lcnJjb2RlOworICAgICAgICAgICAgUHlPYmplY3QgKm5ld2FyZ3M7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGk7CiAKLSAgICAgICAgUHlfREVDUkVGKHNlbGYtPmFyZ3MpOyAgLyogcmVwbGFjaW5nIGFyZ3MgKi8KLSAgICAgICAgc2VsZi0+YXJncyA9IHN1YnNsaWNlOworICAgICAgICAgICAgd2luZXJyY29kZSA9IFB5TG9uZ19Bc0xvbmcoKndpbmVycm9yKTsKKyAgICAgICAgICAgIGlmICh3aW5lcnJjb2RlID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgLyogU2V0IGVycm5vIHRvIHRoZSBjb3JyZXNwb25kaW5nIFBPU0lYIGVycm5vIChvdmVycmlkaW5nCisgICAgICAgICAgICAgICBmaXJzdCBhcmd1bWVudCkuICBXaW5kb3dzIFNvY2tldCBlcnJvciBjb2RlcyAoPj0gMTAwMDApCisgICAgICAgICAgICAgICBoYXZlIHRoZSBzYW1lIHZhbHVlIGFzIHRoZWlyIFBPU0lYIGNvdW50ZXJwYXJ0cy4KKyAgICAgICAgICAgICovCisgICAgICAgICAgICBpZiAod2luZXJyY29kZSA8IDEwMDAwKQorICAgICAgICAgICAgICAgIGVycmNvZGUgPSB3aW5lcnJvcl90b19lcnJubyh3aW5lcnJjb2RlKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBlcnJjb2RlID0gd2luZXJyY29kZTsKKyAgICAgICAgICAgICpteWVycm5vID0gUHlMb25nX0Zyb21Mb25nKGVycmNvZGUpOworICAgICAgICAgICAgaWYgKCEqbXllcnJubykKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgICAgICBuZXdhcmdzID0gUHlUdXBsZV9OZXcobmFyZ3MpOworICAgICAgICAgICAgaWYgKCFuZXdhcmdzKQorICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIFB5VHVwbGVfU0VUX0lURU0obmV3YXJncywgMCwgKm15ZXJybm8pOworICAgICAgICAgICAgZm9yIChpID0gMTsgaSA8IG5hcmdzOyBpKyspIHsKKyAgICAgICAgICAgICAgICBQeU9iamVjdCAqdmFsID0gUHlUdXBsZV9HRVRfSVRFTShhcmdzLCBpKTsKKyAgICAgICAgICAgICAgICBQeV9JTkNSRUYodmFsKTsKKyAgICAgICAgICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKG5ld2FyZ3MsIGksIHZhbCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBQeV9ERUNSRUYoYXJncyk7CisgICAgICAgICAgICBhcmdzID0gKnBfYXJncyA9IG5ld2FyZ3M7CisgICAgICAgIH0KICAgICB9CisjZWxzZQorICAgIGlmIChuYXJncyA+PSAyICYmIG5hcmdzIDw9IDMpIHsKKyAgICAgICAgaWYgKCFQeUFyZ19VbnBhY2tUdXBsZShhcmdzLCAiT1NFcnJvciIsIDIsIDMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXllcnJubywgc3RyZXJyb3IsIGZpbGVuYW1lKSkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisjZW5kaWYKKwogICAgIHJldHVybiAwOwogfQogCiBzdGF0aWMgaW50Ci1FbnZpcm9ubWVudEVycm9yX2NsZWFyKFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCAqc2VsZikKK29zZXJyb3JfaW5pdChQeU9TRXJyb3JPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICoqcF9hcmdzLAorICAgICAgICAgICAgIFB5T2JqZWN0ICpteWVycm5vLCBQeU9iamVjdCAqc3RyZXJyb3IsCisgICAgICAgICAgICAgUHlPYmplY3QgKmZpbGVuYW1lCisjaWZkZWYgTVNfV0lORE9XUworICAgICAgICAgICAgICwgUHlPYmplY3QgKndpbmVycm9yCisjZW5kaWYKKyAgICAgICAgICAgICApCit7CisgICAgUHlPYmplY3QgKmFyZ3MgPSAqcF9hcmdzOworICAgIFB5X3NzaXplX3QgbmFyZ3MgPSBQeVR1cGxlX0dFVF9TSVpFKGFyZ3MpOworCisgICAgLyogc2VsZi0+ZmlsZW5hbWUgd2lsbCByZW1haW4gUHlfTm9uZSBvdGhlcndpc2UgKi8KKyAgICBpZiAoZmlsZW5hbWUgJiYgZmlsZW5hbWUgIT0gUHlfTm9uZSkgeworICAgICAgICBpZiAoUHlfVFlQRShzZWxmKSA9PSAoUHlUeXBlT2JqZWN0ICopIFB5RXhjX0Jsb2NraW5nSU9FcnJvciAmJgorICAgICAgICAgICAgUHlOdW1iZXJfQ2hlY2soZmlsZW5hbWUpKSB7CisgICAgICAgICAgICAvKiBCbG9ja2luZ0lPRXJyb3IncyAzcmQgYXJndW1lbnQgY2FuIGJlIHRoZSBudW1iZXIgb2YKKyAgICAgICAgICAgICAqIGNoYXJhY3RlcnMgd3JpdHRlbi4KKyAgICAgICAgICAgICAqLworICAgICAgICAgICAgc2VsZi0+d3JpdHRlbiA9IFB5TnVtYmVyX0FzU3NpemVfdChmaWxlbmFtZSwgUHlFeGNfVmFsdWVFcnJvcik7CisgICAgICAgICAgICBpZiAoc2VsZi0+d3JpdHRlbiA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIFB5X0lOQ1JFRihmaWxlbmFtZSk7CisgICAgICAgICAgICBzZWxmLT5maWxlbmFtZSA9IGZpbGVuYW1lOworCisgICAgICAgICAgICBpZiAobmFyZ3MgPj0gMiAmJiBuYXJncyA8PSAzKSB7CisgICAgICAgICAgICAgICAgLyogZmlsZW5hbWUgaXMgcmVtb3ZlZCBmcm9tIHRoZSBhcmdzIHR1cGxlIChmb3IgY29tcGF0aWJpbGl0eQorICAgICAgICAgICAgICAgICAgIHB1cnBvc2VzLCBzZWUgdGVzdF9leGNlcHRpb25zLnB5KSAqLworICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWJzbGljZSA9IFB5VHVwbGVfR2V0U2xpY2UoYXJncywgMCwgMik7CisgICAgICAgICAgICAgICAgaWYgKCFzdWJzbGljZSkKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworCisgICAgICAgICAgICAgICAgUHlfREVDUkVGKGFyZ3MpOyAgLyogcmVwbGFjaW5nIGFyZ3MgKi8KKyAgICAgICAgICAgICAgICAqcF9hcmdzID0gYXJncyA9IHN1YnNsaWNlOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorICAgIFB5X1hJTkNSRUYobXllcnJubyk7CisgICAgc2VsZi0+bXllcnJubyA9IG15ZXJybm87CisKKyAgICBQeV9YSU5DUkVGKHN0cmVycm9yKTsKKyAgICBzZWxmLT5zdHJlcnJvciA9IHN0cmVycm9yOworCisjaWZkZWYgTVNfV0lORE9XUworICAgIFB5X1hJTkNSRUYod2luZXJyb3IpOworICAgIHNlbGYtPndpbmVycm9yID0gd2luZXJyb3I7CisjZW5kaWYKKworICAgIC8qIFN0ZWFscyB0aGUgcmVmZXJlbmNlIHRvIGFyZ3MgKi8KKyAgICBzZWxmLT5hcmdzID0gYXJnczsKKyAgICBhcmdzID0gTlVMTDsKKworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgUHlPYmplY3QgKgorT1NFcnJvcl9uZXcoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpOworc3RhdGljIGludAorT1NFcnJvcl9pbml0KFB5T1NFcnJvck9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKTsKKworc3RhdGljIGludAorb3NlcnJvcl91c2VfaW5pdChQeVR5cGVPYmplY3QgKnR5cGUpCit7CisgICAgLyogV2hlbiBfX2luaXRfXyBpcyBkZWZpbmVkIGluIGEgT1NFcnJvciBzdWJjbGFzcywgd2Ugd2FudCBhbnkKKyAgICAgICBleHRyYW5lb3VzIGFyZ3VtZW50IHRvIF9fbmV3X18gdG8gYmUgaWdub3JlZC4gIFRoZSBvbmx5IHJlYXNvbmFibGUKKyAgICAgICBzb2x1dGlvbiwgZ2l2ZW4gX19uZXdfXyB0YWtlcyBhIHZhcmlhYmxlIG51bWJlciBvZiBhcmd1bWVudHMsCisgICAgICAgaXMgdG8gZGVmZXIgYXJnIHBhcnNpbmcgYW5kIGluaXRpYWxpemF0aW9uIHRvIF9faW5pdF9fLgorCisgICAgICAgQnV0IHdoZW4gX19uZXdfXyBpcyBvdmVycmlkZW4gYXMgd2VsbCwgaXQgc2hvdWxkIGNhbGwgb3VyIF9fbmV3X18KKyAgICAgICB3aXRoIHRoZSByaWdodCBhcmd1bWVudHMuCisKKyAgICAgICAoc2VlIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWUxMjU1NSNtc2cxNDg4MjkgKQorICAgICovCisgICAgaWYgKHR5cGUtPnRwX2luaXQgIT0gKGluaXRwcm9jKSBPU0Vycm9yX2luaXQgJiYKKyAgICAgICAgdHlwZS0+dHBfbmV3ID09IChuZXdmdW5jKSBPU0Vycm9yX25ldykgeworICAgICAgICBhc3NlcnQoKFB5T2JqZWN0ICopIHR5cGUgIT0gUHlFeGNfT1NFcnJvcik7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK09TRXJyb3JfbmV3KFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQoreworICAgIFB5T1NFcnJvck9iamVjdCAqc2VsZiA9IE5VTEw7CisgICAgUHlPYmplY3QgKm15ZXJybm8gPSBOVUxMLCAqc3RyZXJyb3IgPSBOVUxMLCAqZmlsZW5hbWUgPSBOVUxMOworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICBQeU9iamVjdCAqd2luZXJyb3IgPSBOVUxMOworI2VuZGlmCisKKyAgICBpZiAoIW9zZXJyb3JfdXNlX2luaXQodHlwZSkpIHsKKyAgICAgICAgaWYgKCFfUHlBcmdfTm9LZXl3b3Jkcyh0eXBlLT50cF9uYW1lLCBrd2RzKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCisgICAgICAgIFB5X0lOQ1JFRihhcmdzKTsKKyAgICAgICAgaWYgKG9zZXJyb3JfcGFyc2VfYXJncygmYXJncywgJm15ZXJybm8sICZzdHJlcnJvciwgJmZpbGVuYW1lCisjaWZkZWYgTVNfV0lORE9XUworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgJndpbmVycm9yCisjZW5kaWYKKyAgICAgICAgICAgICkpCisgICAgICAgICAgICBnb3RvIGVycm9yOworCisgICAgICAgIGlmIChteWVycm5vICYmIFB5TG9uZ19DaGVjayhteWVycm5vKSAmJgorICAgICAgICAgICAgZXJybm9tYXAgJiYgKFB5T2JqZWN0ICopIHR5cGUgPT0gUHlFeGNfT1NFcnJvcikgeworICAgICAgICAgICAgUHlPYmplY3QgKm5ld3R5cGU7CisgICAgICAgICAgICBuZXd0eXBlID0gUHlEaWN0X0dldEl0ZW0oZXJybm9tYXAsIG15ZXJybm8pOworICAgICAgICAgICAgaWYgKG5ld3R5cGUpIHsKKyAgICAgICAgICAgICAgICBhc3NlcnQoUHlUeXBlX0NoZWNrKG5ld3R5cGUpKTsKKyAgICAgICAgICAgICAgICB0eXBlID0gKFB5VHlwZU9iamVjdCAqKSBuZXd0eXBlOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgfQorCisgICAgc2VsZiA9IChQeU9TRXJyb3JPYmplY3QgKikgdHlwZS0+dHBfYWxsb2ModHlwZSwgMCk7CisgICAgaWYgKCFzZWxmKQorICAgICAgICBnb3RvIGVycm9yOworCisgICAgc2VsZi0+ZGljdCA9IE5VTEw7CisgICAgc2VsZi0+dHJhY2ViYWNrID0gc2VsZi0+Y2F1c2UgPSBzZWxmLT5jb250ZXh0ID0gTlVMTDsKKyAgICBzZWxmLT53cml0dGVuID0gLTE7CisKKyAgICBpZiAoIW9zZXJyb3JfdXNlX2luaXQodHlwZSkpIHsKKyAgICAgICAgaWYgKG9zZXJyb3JfaW5pdChzZWxmLCAmYXJncywgbXllcnJubywgc3RyZXJyb3IsIGZpbGVuYW1lCisjaWZkZWYgTVNfV0lORE9XUworICAgICAgICAgICAgICAgICAgICAgICAgICwgd2luZXJyb3IKKyNlbmRpZgorICAgICAgICAgICAgKSkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgfQorCisgICAgcmV0dXJuIChQeU9iamVjdCAqKSBzZWxmOworCitlcnJvcjoKKyAgICBQeV9YREVDUkVGKGFyZ3MpOworICAgIFB5X1hERUNSRUYoc2VsZik7CisgICAgcmV0dXJuIE5VTEw7Cit9CisKK3N0YXRpYyBpbnQKK09TRXJyb3JfaW5pdChQeU9TRXJyb3JPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKK3sKKyAgICBQeU9iamVjdCAqbXllcnJubyA9IE5VTEwsICpzdHJlcnJvciA9IE5VTEwsICpmaWxlbmFtZSA9IE5VTEw7CisjaWZkZWYgTVNfV0lORE9XUworICAgIFB5T2JqZWN0ICp3aW5lcnJvciA9IE5VTEw7CisjZW5kaWYKKworICAgIGlmICghb3NlcnJvcl91c2VfaW5pdChQeV9UWVBFKHNlbGYpKSkKKyAgICAgICAgLyogRXZlcnl0aGluZyBhbHJlYWR5IGRvbmUgaW4gT1NFcnJvcl9uZXcgKi8KKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAoIV9QeUFyZ19Ob0tleXdvcmRzKFB5X1RZUEUoc2VsZiktPnRwX25hbWUsIGt3ZHMpKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBQeV9JTkNSRUYoYXJncyk7CisgICAgaWYgKG9zZXJyb3JfcGFyc2VfYXJncygmYXJncywgJm15ZXJybm8sICZzdHJlcnJvciwgJmZpbGVuYW1lCisjaWZkZWYgTVNfV0lORE9XUworICAgICAgICAgICAgICAgICAgICAgICAgICAgLCAmd2luZXJyb3IKKyNlbmRpZgorICAgICAgICApKQorICAgICAgICBnb3RvIGVycm9yOworCisgICAgaWYgKG9zZXJyb3JfaW5pdChzZWxmLCAmYXJncywgbXllcnJubywgc3RyZXJyb3IsIGZpbGVuYW1lCisjaWZkZWYgTVNfV0lORE9XUworICAgICAgICAgICAgICAgICAgICAgLCB3aW5lcnJvcgorI2VuZGlmCisgICAgICAgICkpCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICByZXR1cm4gMDsKKworZXJyb3I6CisgICAgUHlfWERFQ1JFRihhcmdzKTsKKyAgICByZXR1cm4gLTE7Cit9CisKK3N0YXRpYyBpbnQKK09TRXJyb3JfY2xlYXIoUHlPU0Vycm9yT2JqZWN0ICpzZWxmKQogewogICAgIFB5X0NMRUFSKHNlbGYtPm15ZXJybm8pOwogICAgIFB5X0NMRUFSKHNlbGYtPnN0cmVycm9yKTsKICAgICBQeV9DTEVBUihzZWxmLT5maWxlbmFtZSk7CisjaWZkZWYgTVNfV0lORE9XUworICAgIFB5X0NMRUFSKHNlbGYtPndpbmVycm9yKTsKKyNlbmRpZgogICAgIHJldHVybiBCYXNlRXhjZXB0aW9uX2NsZWFyKChQeUJhc2VFeGNlcHRpb25PYmplY3QgKilzZWxmKTsKIH0KIAogc3RhdGljIHZvaWQKLUVudmlyb25tZW50RXJyb3JfZGVhbGxvYyhQeUVudmlyb25tZW50RXJyb3JPYmplY3QgKnNlbGYpCitPU0Vycm9yX2RlYWxsb2MoUHlPU0Vycm9yT2JqZWN0ICpzZWxmKQogewogICAgIF9QeU9iamVjdF9HQ19VTlRSQUNLKHNlbGYpOwotICAgIEVudmlyb25tZW50RXJyb3JfY2xlYXIoc2VsZik7CisgICAgT1NFcnJvcl9jbGVhcihzZWxmKTsKICAgICBQeV9UWVBFKHNlbGYpLT50cF9mcmVlKChQeU9iamVjdCAqKXNlbGYpOwogfQogCiBzdGF0aWMgaW50Ci1FbnZpcm9ubWVudEVycm9yX3RyYXZlcnNlKFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCAqc2VsZiwgdmlzaXRwcm9jIHZpc2l0LAorT1NFcnJvcl90cmF2ZXJzZShQeU9TRXJyb3JPYmplY3QgKnNlbGYsIHZpc2l0cHJvYyB2aXNpdCwKICAgICAgICAgdm9pZCAqYXJnKQogewogICAgIFB5X1ZJU0lUKHNlbGYtPm15ZXJybm8pOwogICAgIFB5X1ZJU0lUKHNlbGYtPnN0cmVycm9yKTsKICAgICBQeV9WSVNJVChzZWxmLT5maWxlbmFtZSk7CisjaWZkZWYgTVNfV0lORE9XUworICAgIFB5X1ZJU0lUKHNlbGYtPndpbmVycm9yKTsKKyNlbmRpZgogICAgIHJldHVybiBCYXNlRXhjZXB0aW9uX3RyYXZlcnNlKChQeUJhc2VFeGNlcHRpb25PYmplY3QgKilzZWxmLCB2aXNpdCwgYXJnKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKLUVudmlyb25tZW50RXJyb3Jfc3RyKFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCAqc2VsZikKK09TRXJyb3Jfc3RyKFB5T1NFcnJvck9iamVjdCAqc2VsZikKIHsKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgLyogSWYgYXZhaWxhYmxlLCB3aW5lcnJvciBoYXMgdGhlIHByaW9yaXR5IG92ZXIgbXllcnJubyAqLworICAgIGlmIChzZWxmLT53aW5lcnJvciAmJiBzZWxmLT5maWxlbmFtZSkKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCJbRXJyb3IgJVNdICVTOiAlUiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT53aW5lcnJvciA/IHNlbGYtPndpbmVycm9yOiBQeV9Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+c3RyZXJyb3IgPyBzZWxmLT5zdHJlcnJvcjogUHlfTm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPmZpbGVuYW1lKTsKKyAgICBpZiAoc2VsZi0+d2luZXJyb3IgJiYgc2VsZi0+c3RyZXJyb3IpCisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiW0Vycm9yICVTXSAlUyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT53aW5lcnJvciA/IHNlbGYtPndpbmVycm9yOiBQeV9Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+c3RyZXJyb3IgPyBzZWxmLT5zdHJlcnJvcjogUHlfTm9uZSk7CisjZW5kaWYKICAgICBpZiAoc2VsZi0+ZmlsZW5hbWUpCiAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiW0Vycm5vICVTXSAlUzogJVIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+bXllcnJubyA/IHNlbGYtPm15ZXJybm86IFB5X05vbmUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5zdHJlcnJvciA/IHNlbGYtPnN0cmVycm9yOiBQeV9Ob25lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+ZmlsZW5hbWUpOwotICAgIGVsc2UgaWYgKHNlbGYtPm15ZXJybm8gJiYgc2VsZi0+c3RyZXJyb3IpCisgICAgaWYgKHNlbGYtPm15ZXJybm8gJiYgc2VsZi0+c3RyZXJyb3IpCiAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiW0Vycm5vICVTXSAlUyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5teWVycm5vID8gc2VsZi0+bXllcnJubzogUHlfTm9uZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPnN0cmVycm9yID8gc2VsZi0+c3RyZXJyb3I6IFB5X05vbmUpOwotICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIEJhc2VFeGNlcHRpb25fc3RyKChQeUJhc2VFeGNlcHRpb25PYmplY3QgKilzZWxmKTsKKyAgICByZXR1cm4gQmFzZUV4Y2VwdGlvbl9zdHIoKFB5QmFzZUV4Y2VwdGlvbk9iamVjdCAqKXNlbGYpOwogfQogCi1zdGF0aWMgUHlNZW1iZXJEZWYgRW52aXJvbm1lbnRFcnJvcl9tZW1iZXJzW10gPSB7Ci0gICAgeyJlcnJubyIsIFRfT0JKRUNULCBvZmZzZXRvZihQeUVudmlyb25tZW50RXJyb3JPYmplY3QsIG15ZXJybm8pLCAwLAotICAgICAgICBQeURvY19TVFIoImV4Y2VwdGlvbiBlcnJubyIpfSwKLSAgICB7InN0cmVycm9yIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCwgc3RyZXJyb3IpLCAwLAotICAgICAgICBQeURvY19TVFIoImV4Y2VwdGlvbiBzdHJlcnJvciIpfSwKLSAgICB7ImZpbGVuYW1lIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCwgZmlsZW5hbWUpLCAwLAotICAgICAgICBQeURvY19TVFIoImV4Y2VwdGlvbiBmaWxlbmFtZSIpfSwKLSAgICB7TlVMTH0gIC8qIFNlbnRpbmVsICovCi19OwotCi0KIHN0YXRpYyBQeU9iamVjdCAqCi1FbnZpcm9ubWVudEVycm9yX3JlZHVjZShQeUVudmlyb25tZW50RXJyb3JPYmplY3QgKnNlbGYpCitPU0Vycm9yX3JlZHVjZShQeU9TRXJyb3JPYmplY3QgKnNlbGYpCiB7CiAgICAgUHlPYmplY3QgKmFyZ3MgPSBzZWxmLT5hcmdzOwogICAgIFB5T2JqZWN0ICpyZXMgPSBOVUxMLCAqdG1wOwogCiAgICAgLyogc2VsZi0+YXJncyBpcyBvbmx5IHRoZSBmaXJzdCB0d28gcmVhbCBhcmd1bWVudHMgaWYgdGhlcmUgd2FzIGEKLSAgICAgKiBmaWxlIG5hbWUgZ2l2ZW4gdG8gRW52aXJvbm1lbnRFcnJvci4gKi8KKyAgICAgKiBmaWxlIG5hbWUgZ2l2ZW4gdG8gT1NFcnJvci4gKi8KICAgICBpZiAoUHlUdXBsZV9HRVRfU0laRShhcmdzKSA9PSAyICYmIHNlbGYtPmZpbGVuYW1lKSB7CiAgICAgICAgIGFyZ3MgPSBQeVR1cGxlX05ldygzKTsKICAgICAgICAgaWYgKCFhcmdzKSByZXR1cm4gTlVMTDsKQEAgLTY5NSwxNDQgKzk4NCw5MyBAQAogICAgIHJldHVybiByZXM7CiB9CiAKK3N0YXRpYyBQeU9iamVjdCAqCitPU0Vycm9yX3dyaXR0ZW5fZ2V0KFB5T1NFcnJvck9iamVjdCAqc2VsZiwgdm9pZCAqY29udGV4dCkKK3sKKyAgICBpZiAoc2VsZi0+d3JpdHRlbiA9PSAtMSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfQXR0cmlidXRlRXJyb3IsICJjaGFyYWN0ZXJzX3dyaXR0ZW4iKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3Qoc2VsZi0+d3JpdHRlbik7Cit9CiAKLXN0YXRpYyBQeU1ldGhvZERlZiBFbnZpcm9ubWVudEVycm9yX21ldGhvZHNbXSA9IHsKLSAgICB7Il9fcmVkdWNlX18iLCAoUHlDRnVuY3Rpb24pRW52aXJvbm1lbnRFcnJvcl9yZWR1Y2UsIE1FVEhfTk9BUkdTfSwKK3N0YXRpYyBpbnQKK09TRXJyb3Jfd3JpdHRlbl9zZXQoUHlPU0Vycm9yT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJnLCB2b2lkICpjb250ZXh0KQoreworICAgIFB5X3NzaXplX3QgbjsKKyAgICBuID0gUHlOdW1iZXJfQXNTc2l6ZV90KGFyZywgUHlFeGNfVmFsdWVFcnJvcik7CisgICAgaWYgKG4gPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIHNlbGYtPndyaXR0ZW4gPSBuOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgUHlNZW1iZXJEZWYgT1NFcnJvcl9tZW1iZXJzW10gPSB7CisgICAgeyJlcnJubyIsIFRfT0JKRUNULCBvZmZzZXRvZihQeU9TRXJyb3JPYmplY3QsIG15ZXJybm8pLCAwLAorICAgICAgICBQeURvY19TVFIoIlBPU0lYIGV4Y2VwdGlvbiBjb2RlIil9LAorICAgIHsic3RyZXJyb3IiLCBUX09CSkVDVCwgb2Zmc2V0b2YoUHlPU0Vycm9yT2JqZWN0LCBzdHJlcnJvciksIDAsCisgICAgICAgIFB5RG9jX1NUUigiZXhjZXB0aW9uIHN0cmVycm9yIil9LAorICAgIHsiZmlsZW5hbWUiLCBUX09CSkVDVCwgb2Zmc2V0b2YoUHlPU0Vycm9yT2JqZWN0LCBmaWxlbmFtZSksIDAsCisgICAgICAgIFB5RG9jX1NUUigiZXhjZXB0aW9uIGZpbGVuYW1lIil9LAorI2lmZGVmIE1TX1dJTkRPV1MKKyAgICB7IndpbmVycm9yIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5T1NFcnJvck9iamVjdCwgd2luZXJyb3IpLCAwLAorICAgICAgICBQeURvY19TVFIoIldpbjMyIGV4Y2VwdGlvbiBjb2RlIil9LAorI2VuZGlmCisgICAge05VTEx9ICAvKiBTZW50aW5lbCAqLworfTsKKworc3RhdGljIFB5TWV0aG9kRGVmIE9TRXJyb3JfbWV0aG9kc1tdID0geworICAgIHsiX19yZWR1Y2VfXyIsIChQeUNGdW5jdGlvbilPU0Vycm9yX3JlZHVjZSwgTUVUSF9OT0FSR1N9LAogICAgIHtOVUxMfQogfTsKIAotQ29tcGxleEV4dGVuZHNFeGNlcHRpb24oUHlFeGNfRXhjZXB0aW9uLCBFbnZpcm9ubWVudEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgRW52aXJvbm1lbnRFcnJvciwgRW52aXJvbm1lbnRFcnJvcl9kZWFsbG9jLAotICAgICAgICAgICAgICAgICAgICAgICAgRW52aXJvbm1lbnRFcnJvcl9tZXRob2RzLCBFbnZpcm9ubWVudEVycm9yX21lbWJlcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICBFbnZpcm9ubWVudEVycm9yX3N0ciwKK3N0YXRpYyBQeUdldFNldERlZiBPU0Vycm9yX2dldHNldFtdID0geworICAgIHsiY2hhcmFjdGVyc193cml0dGVuIiwgKGdldHRlcikgT1NFcnJvcl93cml0dGVuX2dldCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChzZXR0ZXIpIE9TRXJyb3Jfd3JpdHRlbl9zZXQsIE5VTEx9LAorICAgIHtOVUxMfQorfTsKKworCitDb21wbGV4RXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19FeGNlcHRpb24sIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICBPU0Vycm9yLCBPU0Vycm9yX25ldywKKyAgICAgICAgICAgICAgICAgICAgICAgIE9TRXJyb3JfbWV0aG9kcywgT1NFcnJvcl9tZW1iZXJzLCBPU0Vycm9yX2dldHNldCwKKyAgICAgICAgICAgICAgICAgICAgICAgIE9TRXJyb3Jfc3RyLAogICAgICAgICAgICAgICAgICAgICAgICAgIkJhc2UgY2xhc3MgZm9yIEkvTyByZWxhdGVkIGVycm9ycy4iKTsKIAogCiAvKgotICogICAgSU9FcnJvciBleHRlbmRzIEVudmlyb25tZW50RXJyb3IKKyAqICAgIFZhcmlvdXMgT1NFcnJvciBzdWJjbGFzc2VzCiAgKi8KLU1pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19FbnZpcm9ubWVudEVycm9yLCBJT0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgIEVudmlyb25tZW50RXJyb3IsICJJL08gb3BlcmF0aW9uIGZhaWxlZC4iKTsKLQotCi0vKgotICogICAgT1NFcnJvciBleHRlbmRzIEVudmlyb25tZW50RXJyb3IKLSAqLwotTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX0Vudmlyb25tZW50RXJyb3IsIE9TRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgRW52aXJvbm1lbnRFcnJvciwgIk9TIHN5c3RlbSBjYWxsIGZhaWxlZC4iKTsKLQotCi0vKgotICogICAgV2luZG93c0Vycm9yIGV4dGVuZHMgT1NFcnJvcgotICovCi0jaWZkZWYgTVNfV0lORE9XUwotI2luY2x1ZGUgImVycm1hcC5oIgotCi1zdGF0aWMgaW50Ci1XaW5kb3dzRXJyb3JfY2xlYXIoUHlXaW5kb3dzRXJyb3JPYmplY3QgKnNlbGYpCi17Ci0gICAgUHlfQ0xFQVIoc2VsZi0+bXllcnJubyk7Ci0gICAgUHlfQ0xFQVIoc2VsZi0+c3RyZXJyb3IpOwotICAgIFB5X0NMRUFSKHNlbGYtPmZpbGVuYW1lKTsKLSAgICBQeV9DTEVBUihzZWxmLT53aW5lcnJvcik7Ci0gICAgcmV0dXJuIEJhc2VFeGNlcHRpb25fY2xlYXIoKFB5QmFzZUV4Y2VwdGlvbk9iamVjdCAqKXNlbGYpOwotfQotCi1zdGF0aWMgdm9pZAotV2luZG93c0Vycm9yX2RlYWxsb2MoUHlXaW5kb3dzRXJyb3JPYmplY3QgKnNlbGYpCi17Ci0gICAgX1B5T2JqZWN0X0dDX1VOVFJBQ0soc2VsZik7Ci0gICAgV2luZG93c0Vycm9yX2NsZWFyKHNlbGYpOwotICAgIFB5X1RZUEUoc2VsZiktPnRwX2ZyZWUoKFB5T2JqZWN0ICopc2VsZik7Ci19Ci0KLXN0YXRpYyBpbnQKLVdpbmRvd3NFcnJvcl90cmF2ZXJzZShQeVdpbmRvd3NFcnJvck9iamVjdCAqc2VsZiwgdmlzaXRwcm9jIHZpc2l0LCB2b2lkICphcmcpCi17Ci0gICAgUHlfVklTSVQoc2VsZi0+bXllcnJubyk7Ci0gICAgUHlfVklTSVQoc2VsZi0+c3RyZXJyb3IpOwotICAgIFB5X1ZJU0lUKHNlbGYtPmZpbGVuYW1lKTsKLSAgICBQeV9WSVNJVChzZWxmLT53aW5lcnJvcik7Ci0gICAgcmV0dXJuIEJhc2VFeGNlcHRpb25fdHJhdmVyc2UoKFB5QmFzZUV4Y2VwdGlvbk9iamVjdCAqKXNlbGYsIHZpc2l0LCBhcmcpOwotfQotCi1zdGF0aWMgaW50Ci1XaW5kb3dzRXJyb3JfaW5pdChQeVdpbmRvd3NFcnJvck9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQotewotICAgIFB5T2JqZWN0ICpvX2VycmNvZGUgPSBOVUxMOwotICAgIGxvbmcgZXJyY29kZTsKLSAgICBsb25nIHBvc2l4X2Vycm5vOwotCi0gICAgaWYgKEVudmlyb25tZW50RXJyb3JfaW5pdCgoUHlFbnZpcm9ubWVudEVycm9yT2JqZWN0ICopc2VsZiwgYXJncywga3dkcykKLSAgICAgICAgICAgID09IC0xKQotICAgICAgICByZXR1cm4gLTE7Ci0KLSAgICBpZiAoc2VsZi0+bXllcnJubyA9PSBOVUxMKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIC8qIFNldCBlcnJubyB0byB0aGUgUE9TSVggZXJybm8sIGFuZCB3aW5lcnJvciB0byB0aGUgV2luMzIKLSAgICAgICBlcnJvciBjb2RlLiAqLwotICAgIGVycmNvZGUgPSBQeUxvbmdfQXNMb25nKHNlbGYtPm15ZXJybm8pOwotICAgIGlmIChlcnJjb2RlID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgIHJldHVybiAtMTsKLSAgICBwb3NpeF9lcnJubyA9IHdpbmVycm9yX3RvX2Vycm5vKGVycmNvZGUpOwotCi0gICAgUHlfQ0xFQVIoc2VsZi0+d2luZXJyb3IpOwotICAgIHNlbGYtPndpbmVycm9yID0gc2VsZi0+bXllcnJubzsKLQotICAgIG9fZXJyY29kZSA9IFB5TG9uZ19Gcm9tTG9uZyhwb3NpeF9lcnJubyk7Ci0gICAgaWYgKCFvX2VycmNvZGUpCi0gICAgICAgIHJldHVybiAtMTsKLQotICAgIHNlbGYtPm15ZXJybm8gPSBvX2VycmNvZGU7Ci0KLSAgICByZXR1cm4gMDsKLX0KLQotCi1zdGF0aWMgUHlPYmplY3QgKgotV2luZG93c0Vycm9yX3N0cihQeVdpbmRvd3NFcnJvck9iamVjdCAqc2VsZikKLXsKLSAgICBpZiAoc2VsZi0+ZmlsZW5hbWUpCi0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiW0Vycm9yICVTXSAlUzogJVIiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+d2luZXJyb3IgPyBzZWxmLT53aW5lcnJvcjogUHlfTm9uZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPnN0cmVycm9yID8gc2VsZi0+c3RyZXJyb3I6IFB5X05vbmUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT5maWxlbmFtZSk7Ci0gICAgZWxzZSBpZiAoc2VsZi0+d2luZXJyb3IgJiYgc2VsZi0+c3RyZXJyb3IpCi0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiW0Vycm9yICVTXSAlUyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLT53aW5lcnJvciA/IHNlbGYtPndpbmVycm9yOiBQeV9Ob25lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi0+c3RyZXJyb3IgPyBzZWxmLT5zdHJlcnJvcjogUHlfTm9uZSk7Ci0gICAgZWxzZQotICAgICAgICByZXR1cm4gRW52aXJvbm1lbnRFcnJvcl9zdHIoKFB5RW52aXJvbm1lbnRFcnJvck9iamVjdCAqKXNlbGYpOwotfQotCi1zdGF0aWMgUHlNZW1iZXJEZWYgV2luZG93c0Vycm9yX21lbWJlcnNbXSA9IHsKLSAgICB7ImVycm5vIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5V2luZG93c0Vycm9yT2JqZWN0LCBteWVycm5vKSwgMCwKLSAgICAgICAgUHlEb2NfU1RSKCJQT1NJWCBleGNlcHRpb24gY29kZSIpfSwKLSAgICB7InN0cmVycm9yIiwgVF9PQkpFQ1QsIG9mZnNldG9mKFB5V2luZG93c0Vycm9yT2JqZWN0LCBzdHJlcnJvciksIDAsCi0gICAgICAgIFB5RG9jX1NUUigiZXhjZXB0aW9uIHN0cmVycm9yIil9LAotICAgIHsiZmlsZW5hbWUiLCBUX09CSkVDVCwgb2Zmc2V0b2YoUHlXaW5kb3dzRXJyb3JPYmplY3QsIGZpbGVuYW1lKSwgMCwKLSAgICAgICAgUHlEb2NfU1RSKCJleGNlcHRpb24gZmlsZW5hbWUiKX0sCi0gICAgeyJ3aW5lcnJvciIsIFRfT0JKRUNULCBvZmZzZXRvZihQeVdpbmRvd3NFcnJvck9iamVjdCwgd2luZXJyb3IpLCAwLAotICAgICAgICBQeURvY19TVFIoIldpbjMyIGV4Y2VwdGlvbiBjb2RlIil9LAotICAgIHtOVUxMfSAgLyogU2VudGluZWwgKi8KLX07Ci0KLUNvbXBsZXhFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX09TRXJyb3IsIFdpbmRvd3NFcnJvciwgV2luZG93c0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgV2luZG93c0Vycm9yX2RlYWxsb2MsIDAsIFdpbmRvd3NFcnJvcl9tZW1iZXJzLAotICAgICAgICAgICAgICAgICAgICAgICAgV2luZG93c0Vycm9yX3N0ciwgIk1TLVdpbmRvd3MgT1Mgc3lzdGVtIGNhbGwgZmFpbGVkLiIpOwotCi0jZW5kaWYgLyogTVNfV0lORE9XUyAqLwotCi0KLS8qCi0gKiAgICBWTVNFcnJvciBleHRlbmRzIE9TRXJyb3IgKEkgdGhpbmspCi0gKi8KLSNpZmRlZiBfX1ZNUwotTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX09TRXJyb3IsIFZNU0Vycm9yLCBFbnZpcm9ubWVudEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICJPcGVuVk1TIE9TIHN5c3RlbSBjYWxsIGZhaWxlZC4iKTsKLSNlbmRpZgotCitNaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfT1NFcnJvciwgQmxvY2tpbmdJT0Vycm9yLCBPU0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJJL08gb3BlcmF0aW9uIHdvdWxkIGJsb2NrLiIpOworTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX09TRXJyb3IsIENvbm5lY3Rpb25FcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiQ29ubmVjdGlvbiBlcnJvci4iKTsKK01pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19PU0Vycm9yLCBDaGlsZFByb2Nlc3NFcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiQ2hpbGQgcHJvY2VzcyBlcnJvci4iKTsKK01pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19Db25uZWN0aW9uRXJyb3IsIEJyb2tlblBpcGVFcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiQnJva2VuIHBpcGUuIik7CitNaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfQ29ubmVjdGlvbkVycm9yLCBDb25uZWN0aW9uQWJvcnRlZEVycm9yLCBPU0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJDb25uZWN0aW9uIGFib3J0ZWQuIik7CitNaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfQ29ubmVjdGlvbkVycm9yLCBDb25uZWN0aW9uUmVmdXNlZEVycm9yLCBPU0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJDb25uZWN0aW9uIHJlZnVzZWQuIik7CitNaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfQ29ubmVjdGlvbkVycm9yLCBDb25uZWN0aW9uUmVzZXRFcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiQ29ubmVjdGlvbiByZXNldC4iKTsKK01pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19PU0Vycm9yLCBGaWxlRXhpc3RzRXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkZpbGUgYWxyZWFkeSBleGlzdHMuIik7CitNaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfT1NFcnJvciwgRmlsZU5vdEZvdW5kRXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkZpbGUgbm90IGZvdW5kLiIpOworTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX09TRXJyb3IsIElzQURpcmVjdG9yeUVycm9yLCBPU0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICJPcGVyYXRpb24gZG9lc24ndCB3b3JrIG9uIGRpcmVjdG9yaWVzLiIpOworTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX09TRXJyb3IsIE5vdEFEaXJlY3RvcnlFcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiT3BlcmF0aW9uIG9ubHkgd29ya3Mgb24gZGlyZWN0b3JpZXMuIik7CitNaWRkbGluZ0V4dGVuZHNFeGNlcHRpb24oUHlFeGNfT1NFcnJvciwgSW50ZXJydXB0ZWRFcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiSW50ZXJydXB0ZWQgYnkgc2lnbmFsLiIpOworTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX09TRXJyb3IsIFBlcm1pc3Npb25FcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiTm90IGVub3VnaCBwZXJtaXNzaW9ucy4iKTsKK01pZGRsaW5nRXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19PU0Vycm9yLCBQcm9jZXNzTG9va3VwRXJyb3IsIE9TRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIlByb2Nlc3Mgbm90IGZvdW5kLiIpOworTWlkZGxpbmdFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX09TRXJyb3IsIFRpbWVvdXRFcnJvciwgT1NFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiVGltZW91dCBleHBpcmVkLiIpOwogCiAvKgogICogICAgRU9GRXJyb3IgZXh0ZW5kcyBFeGNlcHRpb24KQEAgLTk2MiwyMSArMTIwMCwyMyBAQAogc3RhdGljIFB5T2JqZWN0KgogbXlfYmFzZW5hbWUoUHlPYmplY3QgKm5hbWUpCiB7Ci0gICAgUHlfVU5JQ09ERSAqdW5pY29kZTsKICAgICBQeV9zc2l6ZV90IGksIHNpemUsIG9mZnNldDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogCi0gICAgdW5pY29kZSA9IFB5VW5pY29kZV9BU19VTklDT0RFKG5hbWUpOwotICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUobmFtZSk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShuYW1lKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKG5hbWUpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShuYW1lKTsKKyAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgobmFtZSk7CiAgICAgb2Zmc2V0ID0gMDsKICAgICBmb3IoaT0wOyBpIDwgc2l6ZTsgaSsrKSB7Ci0gICAgICAgIGlmICh1bmljb2RlW2ldID09IFNFUCkKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpID09IFNFUCkKICAgICAgICAgICAgIG9mZnNldCA9IGkgKyAxOwogICAgIH0KLSAgICBpZiAob2Zmc2V0ICE9IDApIHsKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKLSAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKG5hbWUpICsgb2Zmc2V0LAotICAgICAgICAgICAgc2l6ZSAtIG9mZnNldCk7Ci0gICAgfSBlbHNlIHsKKyAgICBpZiAob2Zmc2V0ICE9IDApCisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfU3Vic3RyaW5nKG5hbWUsIG9mZnNldCwgc2l6ZSk7CisgICAgZWxzZSB7CiAgICAgICAgIFB5X0lOQ1JFRihuYW1lKTsKICAgICAgICAgcmV0dXJuIG5hbWU7CiAgICAgfQpAQCAtMTA0NCw3ICsxMjg0LDcgQEAKIH07CiAKIENvbXBsZXhFeHRlbmRzRXhjZXB0aW9uKFB5RXhjX0V4Y2VwdGlvbiwgU3ludGF4RXJyb3IsIFN5bnRheEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgU3ludGF4RXJyb3JfZGVhbGxvYywgMCwgU3ludGF4RXJyb3JfbWVtYmVycywKKyAgICAgICAgICAgICAgICAgICAgICAgIDAsIDAsIFN5bnRheEVycm9yX21lbWJlcnMsIDAsCiAgICAgICAgICAgICAgICAgICAgICAgICBTeW50YXhFcnJvcl9zdHIsICJJbnZhbGlkIHN5bnRheC4iKTsKIAogCkBAIC0xMDk4LDcgKzEzMzgsNyBAQAogfQogCiBDb21wbGV4RXh0ZW5kc0V4Y2VwdGlvbihQeUV4Y19Mb29rdXBFcnJvciwgS2V5RXJyb3IsIEJhc2VFeGNlcHRpb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAwLCBLZXlFcnJvcl9zdHIsICJNYXBwaW5nIGtleSBub3QgZm91bmQuIik7CisgICAgICAgICAgICAgICAgICAgICAgICAwLCAwLCAwLCAwLCBLZXlFcnJvcl9zdHIsICJNYXBwaW5nIGtleSBub3QgZm91bmQuIik7CiAKIAogLyoKQEAgLTExOTcsNyArMTQzNyw3IEBACiAgICAgaWYgKCFvYmopCiAgICAgICAgIHJldHVybiAtMTsKICAgICAqc3RhcnQgPSAoKFB5VW5pY29kZUVycm9yT2JqZWN0ICopZXhjKS0+c3RhcnQ7Ci0gICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShvYmopOworICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvYmopOwogICAgIGlmICgqc3RhcnQ8MCkKICAgICAgICAgKnN0YXJ0ID0gMDsgLypYWFggY2hlY2sgZm9yIHZhbHVlcyA8MCovCiAgICAgaWYgKCpzdGFydD49c2l6ZSkKQEAgLTEyNjUsNyArMTUwNSw3IEBACiAgICAgaWYgKCFvYmopCiAgICAgICAgIHJldHVybiAtMTsKICAgICAqZW5kID0gKChQeVVuaWNvZGVFcnJvck9iamVjdCAqKWV4YyktPmVuZDsKLSAgICBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKG9iaik7CisgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKG9iaik7CiAgICAgaWYgKCplbmQ8MSkKICAgICAgICAgKmVuZCA9IDE7CiAgICAgaWYgKCplbmQ+c2l6ZSkKQEAgLTE0MzcsNiArMTY3NywxMSBAQAogICAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGVyci0+b2JqZWN0KSA8IC0xKSB7CisgICAgICAgIGVyci0+ZW5jb2RpbmcgPSBOVUxMOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCiAgICAgUHlfSU5DUkVGKGVyci0+ZW5jb2RpbmcpOwogICAgIFB5X0lOQ1JFRihlcnItPm9iamVjdCk7CiAgICAgUHlfSU5DUkVGKGVyci0+cmVhc29uKTsKQEAgLTE0NjEsOCArMTcwNiw4IEBACiAgICAgaWYgKGVuY29kaW5nX3N0ciA9PSBOVUxMKQogICAgICAgICBnb3RvIGRvbmU7CiAKLSAgICBpZiAodXNlbGYtPnN0YXJ0IDwgUHlVbmljb2RlX0dFVF9TSVpFKHVzZWxmLT5vYmplY3QpICYmIHVzZWxmLT5lbmQgPT0gdXNlbGYtPnN0YXJ0KzEpIHsKLSAgICAgICAgaW50IGJhZGNoYXIgPSAoaW50KVB5VW5pY29kZV9BU19VTklDT0RFKHVzZWxmLT5vYmplY3QpW3VzZWxmLT5zdGFydF07CisgICAgaWYgKHVzZWxmLT5zdGFydCA8IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVzZWxmLT5vYmplY3QpICYmIHVzZWxmLT5lbmQgPT0gdXNlbGYtPnN0YXJ0KzEpIHsKKyAgICAgICAgUHlfVUNTNCBiYWRjaGFyID0gUHlVbmljb2RlX1JlYWRDaGFyKHVzZWxmLT5vYmplY3QsIHVzZWxmLT5zdGFydCk7CiAgICAgICAgIGNvbnN0IGNoYXIgKmZtdDsKICAgICAgICAgaWYgKGJhZGNoYXIgPD0gMHhmZikKICAgICAgICAgICAgIGZtdCA9ICInJVUnIGNvZGVjIGNhbid0IGVuY29kZSBjaGFyYWN0ZXIgJ1xceCUwMngnIGluIHBvc2l0aW9uICV6ZDogJVUiOwpAQCAtMTQ3Myw3ICsxNzE4LDcgQEAKICAgICAgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoCiAgICAgICAgICAgICBmbXQsCiAgICAgICAgICAgICBlbmNvZGluZ19zdHIsCi0gICAgICAgICAgICBiYWRjaGFyLAorICAgICAgICAgICAgKGludCliYWRjaGFyLAogICAgICAgICAgICAgdXNlbGYtPnN0YXJ0LAogICAgICAgICAgICAgcmVhc29uX3N0cik7CiAgICAgfQpAQCAtMTY3MCw4ICsxOTE1LDggQEAKICAgICBpZiAocmVhc29uX3N0ciA9PSBOVUxMKQogICAgICAgICBnb3RvIGRvbmU7CiAKLSAgICBpZiAodXNlbGYtPnN0YXJ0IDwgUHlVbmljb2RlX0dFVF9TSVpFKHVzZWxmLT5vYmplY3QpICYmIHVzZWxmLT5lbmQgPT0gdXNlbGYtPnN0YXJ0KzEpIHsKLSAgICAgICAgaW50IGJhZGNoYXIgPSAoaW50KVB5VW5pY29kZV9BU19VTklDT0RFKHVzZWxmLT5vYmplY3QpW3VzZWxmLT5zdGFydF07CisgICAgaWYgKHVzZWxmLT5zdGFydCA8IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVzZWxmLT5vYmplY3QpICYmIHVzZWxmLT5lbmQgPT0gdXNlbGYtPnN0YXJ0KzEpIHsKKyAgICAgICAgUHlfVUNTNCBiYWRjaGFyID0gUHlVbmljb2RlX1JlYWRDaGFyKHVzZWxmLT5vYmplY3QsIHVzZWxmLT5zdGFydCk7CiAgICAgICAgIGNvbnN0IGNoYXIgKmZtdDsKICAgICAgICAgaWYgKGJhZGNoYXIgPD0gMHhmZikKICAgICAgICAgICAgIGZtdCA9ICJjYW4ndCB0cmFuc2xhdGUgY2hhcmFjdGVyICdcXHglMDJ4JyBpbiBwb3NpdGlvbiAlemQ6ICVVIjsKQEAgLTE2ODEsNyArMTkyNiw3IEBACiAgICAgICAgICAgICBmbXQgPSAiY2FuJ3QgdHJhbnNsYXRlIGNoYXJhY3RlciAnXFxVJTA4eCcgaW4gcG9zaXRpb24gJXpkOiAlVSI7CiAgICAgICAgIHJlc3VsdCA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KAogICAgICAgICAgICAgZm10LAotICAgICAgICAgICAgYmFkY2hhciwKKyAgICAgICAgICAgIChpbnQpYmFkY2hhciwKICAgICAgICAgICAgIHVzZWxmLT5zdGFydCwKICAgICAgICAgICAgIHJlYXNvbl9zdHIKICAgICAgICAgKTsKQEAgLTE3MTIsNiArMTk1Nyw3IEBACiB9OwogUHlPYmplY3QgKlB5RXhjX1VuaWNvZGVUcmFuc2xhdGVFcnJvciA9IChQeU9iamVjdCAqKSZfUHlFeGNfVW5pY29kZVRyYW5zbGF0ZUVycm9yOwogCisvKiBEZXByZWNhdGVkLiAqLwogUHlPYmplY3QgKgogUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfQ3JlYXRlKAogICAgIGNvbnN0IFB5X1VOSUNPREUgKm9iamVjdCwgUHlfc3NpemVfdCBsZW5ndGgsCkBAIC0xNzIxLDYgKzE5NjcsMTQgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdCwgbGVuZ3RoLCBzdGFydCwgZW5kLCByZWFzb24pOwogfQogCitQeU9iamVjdCAqCitfUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfQ3JlYXRlKAorICAgIFB5T2JqZWN0ICpvYmplY3QsCisgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQsIGNvbnN0IGNoYXIgKnJlYXNvbikKK3sKKyAgICByZXR1cm4gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uKFB5RXhjX1VuaWNvZGVUcmFuc2xhdGVFcnJvciwgIk9ucyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QsIHN0YXJ0LCBlbmQsIHJlYXNvbik7Cit9CiAKIC8qCiAgKiAgICBBc3NlcnRpb25FcnJvciBleHRlbmRzIEV4Y2VwdGlvbgpAQCAtMTk3MCw2ICsyMjI0LDQ3IEBACiAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGJkaWN0LCAjIFRZUEUsIFB5RXhjXyAjIyBUWVBFKSkgXAogICAgICAgICBQeV9GYXRhbEVycm9yKCJNb2R1bGUgZGljdGlvbmFyeSBpbnNlcnRpb24gcHJvYmxlbS4iKTsKIAorI2RlZmluZSBJTklUX0FMSUFTKE5BTUUsIFRZUEUpIFB5X0lOQ1JFRihQeUV4Y18gIyMgVFlQRSk7IFwKKyAgICBQeV9YREVDUkVGKFB5RXhjXyAjIyBOQU1FKTsgXAorICAgIFB5RXhjXyAjIyBOQU1FID0gUHlFeGNfICMjIFRZUEU7IFwKKyAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoYmRpY3QsICMgTkFNRSwgUHlFeGNfICMjIE5BTUUpKSBcCisgICAgICAgIFB5X0ZhdGFsRXJyb3IoIk1vZHVsZSBkaWN0aW9uYXJ5IGluc2VydGlvbiBwcm9ibGVtLiIpOworCisjZGVmaW5lIEFERF9FUlJOTyhUWVBFLCBDT0RFKSB7IFwKKyAgICBQeU9iamVjdCAqX2NvZGUgPSBQeUxvbmdfRnJvbUxvbmcoQ09ERSk7IFwKKyAgICBhc3NlcnQoX1B5T2JqZWN0X1JlYWxJc1N1YmNsYXNzKFB5RXhjXyAjIyBUWVBFLCBQeUV4Y19PU0Vycm9yKSk7IFwKKyAgICBpZiAoIV9jb2RlIHx8IFB5RGljdF9TZXRJdGVtKGVycm5vbWFwLCBfY29kZSwgUHlFeGNfICMjIFRZUEUpKSBcCisgICAgICAgIFB5X0ZhdGFsRXJyb3IoImVycm1hcCBpbnNlcnRpb24gcHJvYmxlbS4iKTsgXAorICAgIFB5X0RFQ1JFRihfY29kZSk7IFwKKyAgICB9CisKKyNpZmRlZiBNU19XSU5ET1dTCisjaW5jbHVkZSA8V2luc29jazIuaD4KKyNpZiBkZWZpbmVkKFdTQUVBTFJFQURZKSAmJiAhZGVmaW5lZChFQUxSRUFEWSkKKyNkZWZpbmUgRUFMUkVBRFkgV1NBRUFMUkVBRFkKKyNlbmRpZgorI2lmIGRlZmluZWQoV1NBRUNPTk5BQk9SVEVEKSAmJiAhZGVmaW5lZChFQ09OTkFCT1JURUQpCisjZGVmaW5lIEVDT05OQUJPUlRFRCBXU0FFQ09OTkFCT1JURUQKKyNlbmRpZgorI2lmIGRlZmluZWQoV1NBRUNPTk5SRUZVU0VEKSAmJiAhZGVmaW5lZChFQ09OTlJFRlVTRUQpCisjZGVmaW5lIEVDT05OUkVGVVNFRCBXU0FFQ09OTlJFRlVTRUQKKyNlbmRpZgorI2lmIGRlZmluZWQoV1NBRUNPTk5SRVNFVCkgJiYgIWRlZmluZWQoRUNPTk5SRVNFVCkKKyNkZWZpbmUgRUNPTk5SRVNFVCBXU0FFQ09OTlJFU0VUCisjZW5kaWYKKyNpZiBkZWZpbmVkKFdTQUVJTlBST0dSRVNTKSAmJiAhZGVmaW5lZChFSU5QUk9HUkVTUykKKyNkZWZpbmUgRUlOUFJPR1JFU1MgV1NBRUlOUFJPR1JFU1MKKyNlbmRpZgorI2lmIGRlZmluZWQoV1NBRVNIVVRET1dOKSAmJiAhZGVmaW5lZChFU0hVVERPV04pCisjZGVmaW5lIEVTSFVURE9XTiBXU0FFU0hVVERPV04KKyNlbmRpZgorI2lmIGRlZmluZWQoV1NBRVRJTUVET1VUKSAmJiAhZGVmaW5lZChFVElNRURPVVQpCisjZGVmaW5lIEVUSU1FRE9VVCBXU0FFVElNRURPVVQKKyNlbmRpZgorI2lmIGRlZmluZWQoV1NBRVdPVUxEQkxPQ0spICYmICFkZWZpbmVkKEVXT1VMREJMT0NLKQorI2RlZmluZSBFV09VTERCTE9DSyBXU0FFV09VTERCTE9DSworI2VuZGlmCisjZW5kaWYgLyogTVNfV0lORE9XUyAqLwogCiB2b2lkCiBfUHlFeGNfSW5pdCh2b2lkKQpAQCAtMTk4NCwxNSArMjI3OSw3IEBACiAgICAgUFJFX0lOSVQoU3lzdGVtRXhpdCkKICAgICBQUkVfSU5JVChLZXlib2FyZEludGVycnVwdCkKICAgICBQUkVfSU5JVChJbXBvcnRFcnJvcikKLSAgICBQUkVfSU5JVChFbnZpcm9ubWVudEVycm9yKQotICAgIFBSRV9JTklUKElPRXJyb3IpCiAgICAgUFJFX0lOSVQoT1NFcnJvcikKLSNpZmRlZiBNU19XSU5ET1dTCi0gICAgUFJFX0lOSVQoV2luZG93c0Vycm9yKQotI2VuZGlmCi0jaWZkZWYgX19WTVMKLSAgICBQUkVfSU5JVChWTVNFcnJvcikKLSNlbmRpZgogICAgIFBSRV9JTklUKEVPRkVycm9yKQogICAgIFBSRV9JTklUKFJ1bnRpbWVFcnJvcikKICAgICBQUkVfSU5JVChOb3RJbXBsZW1lbnRlZEVycm9yKQpAQCAtMjAzMiw2ICsyMzE5LDI0IEBACiAgICAgUFJFX0lOSVQoQnl0ZXNXYXJuaW5nKQogICAgIFBSRV9JTklUKFJlc291cmNlV2FybmluZykKIAorICAgIC8qIE9TRXJyb3Igc3ViY2xhc3NlcyAqLworICAgIFBSRV9JTklUKENvbm5lY3Rpb25FcnJvcik7CisKKyAgICBQUkVfSU5JVChCbG9ja2luZ0lPRXJyb3IpOworICAgIFBSRV9JTklUKEJyb2tlblBpcGVFcnJvcik7CisgICAgUFJFX0lOSVQoQ2hpbGRQcm9jZXNzRXJyb3IpOworICAgIFBSRV9JTklUKENvbm5lY3Rpb25BYm9ydGVkRXJyb3IpOworICAgIFBSRV9JTklUKENvbm5lY3Rpb25SZWZ1c2VkRXJyb3IpOworICAgIFBSRV9JTklUKENvbm5lY3Rpb25SZXNldEVycm9yKTsKKyAgICBQUkVfSU5JVChGaWxlRXhpc3RzRXJyb3IpOworICAgIFBSRV9JTklUKEZpbGVOb3RGb3VuZEVycm9yKTsKKyAgICBQUkVfSU5JVChJc0FEaXJlY3RvcnlFcnJvcik7CisgICAgUFJFX0lOSVQoTm90QURpcmVjdG9yeUVycm9yKTsKKyAgICBQUkVfSU5JVChJbnRlcnJ1cHRlZEVycm9yKTsKKyAgICBQUkVfSU5JVChQZXJtaXNzaW9uRXJyb3IpOworICAgIFBSRV9JTklUKFByb2Nlc3NMb29rdXBFcnJvcik7CisgICAgUFJFX0lOSVQoVGltZW91dEVycm9yKTsKKwogICAgIGJsdGlubW9kID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlKCJidWlsdGlucyIpOwogICAgIGlmIChibHRpbm1vZCA9PSBOVUxMKQogICAgICAgICBQeV9GYXRhbEVycm9yKCJleGNlcHRpb25zIGJvb3RzdHJhcHBpbmcgZXJyb3IuIik7CkBAIC0yMDQ3LDE0ICsyMzUyLDE0IEBACiAgICAgUE9TVF9JTklUKFN5c3RlbUV4aXQpCiAgICAgUE9TVF9JTklUKEtleWJvYXJkSW50ZXJydXB0KQogICAgIFBPU1RfSU5JVChJbXBvcnRFcnJvcikKLSAgICBQT1NUX0lOSVQoRW52aXJvbm1lbnRFcnJvcikKLSAgICBQT1NUX0lOSVQoSU9FcnJvcikKICAgICBQT1NUX0lOSVQoT1NFcnJvcikKKyAgICBJTklUX0FMSUFTKEVudmlyb25tZW50RXJyb3IsIE9TRXJyb3IpCisgICAgSU5JVF9BTElBUyhJT0Vycm9yLCBPU0Vycm9yKQogI2lmZGVmIE1TX1dJTkRPV1MKLSAgICBQT1NUX0lOSVQoV2luZG93c0Vycm9yKQorICAgIElOSVRfQUxJQVMoV2luZG93c0Vycm9yLCBPU0Vycm9yKQogI2VuZGlmCiAjaWZkZWYgX19WTVMKLSAgICBQT1NUX0lOSVQoVk1TRXJyb3IpCisgICAgSU5JVF9BTElBUyhWTVNFcnJvciwgT1NFcnJvcikKICNlbmRpZgogICAgIFBPU1RfSU5JVChFT0ZFcnJvcikKICAgICBQT1NUX0lOSVQoUnVudGltZUVycm9yKQpAQCAtMjA5NSw2ICsyNDAwLDQ5IEBACiAgICAgUE9TVF9JTklUKEJ5dGVzV2FybmluZykKICAgICBQT1NUX0lOSVQoUmVzb3VyY2VXYXJuaW5nKQogCisgICAgaWYgKCFlcnJub21hcCkgeworICAgICAgICBlcnJub21hcCA9IFB5RGljdF9OZXcoKTsKKyAgICAgICAgaWYgKCFlcnJub21hcCkKKyAgICAgICAgICAgIFB5X0ZhdGFsRXJyb3IoIkNhbm5vdCBhbGxvY2F0ZSBtYXAgZnJvbSBlcnJub3MgdG8gT1NFcnJvciBzdWJjbGFzc2VzIik7CisgICAgfQorCisgICAgLyogT1NFcnJvciBzdWJjbGFzc2VzICovCisgICAgUE9TVF9JTklUKENvbm5lY3Rpb25FcnJvcik7CisKKyAgICBQT1NUX0lOSVQoQmxvY2tpbmdJT0Vycm9yKTsKKyAgICBBRERfRVJSTk8oQmxvY2tpbmdJT0Vycm9yLCBFQUdBSU4pOworICAgIEFERF9FUlJOTyhCbG9ja2luZ0lPRXJyb3IsIEVBTFJFQURZKTsKKyAgICBBRERfRVJSTk8oQmxvY2tpbmdJT0Vycm9yLCBFSU5QUk9HUkVTUyk7CisgICAgQUREX0VSUk5PKEJsb2NraW5nSU9FcnJvciwgRVdPVUxEQkxPQ0spOworICAgIFBPU1RfSU5JVChCcm9rZW5QaXBlRXJyb3IpOworICAgIEFERF9FUlJOTyhCcm9rZW5QaXBlRXJyb3IsIEVQSVBFKTsKKyAgICBBRERfRVJSTk8oQnJva2VuUGlwZUVycm9yLCBFU0hVVERPV04pOworICAgIFBPU1RfSU5JVChDaGlsZFByb2Nlc3NFcnJvcik7CisgICAgQUREX0VSUk5PKENoaWxkUHJvY2Vzc0Vycm9yLCBFQ0hJTEQpOworICAgIFBPU1RfSU5JVChDb25uZWN0aW9uQWJvcnRlZEVycm9yKTsKKyAgICBBRERfRVJSTk8oQ29ubmVjdGlvbkFib3J0ZWRFcnJvciwgRUNPTk5BQk9SVEVEKTsKKyAgICBQT1NUX0lOSVQoQ29ubmVjdGlvblJlZnVzZWRFcnJvcik7CisgICAgQUREX0VSUk5PKENvbm5lY3Rpb25SZWZ1c2VkRXJyb3IsIEVDT05OUkVGVVNFRCk7CisgICAgUE9TVF9JTklUKENvbm5lY3Rpb25SZXNldEVycm9yKTsKKyAgICBBRERfRVJSTk8oQ29ubmVjdGlvblJlc2V0RXJyb3IsIEVDT05OUkVTRVQpOworICAgIFBPU1RfSU5JVChGaWxlRXhpc3RzRXJyb3IpOworICAgIEFERF9FUlJOTyhGaWxlRXhpc3RzRXJyb3IsIEVFWElTVCk7CisgICAgUE9TVF9JTklUKEZpbGVOb3RGb3VuZEVycm9yKTsKKyAgICBBRERfRVJSTk8oRmlsZU5vdEZvdW5kRXJyb3IsIEVOT0VOVCk7CisgICAgUE9TVF9JTklUKElzQURpcmVjdG9yeUVycm9yKTsKKyAgICBBRERfRVJSTk8oSXNBRGlyZWN0b3J5RXJyb3IsIEVJU0RJUik7CisgICAgUE9TVF9JTklUKE5vdEFEaXJlY3RvcnlFcnJvcik7CisgICAgQUREX0VSUk5PKE5vdEFEaXJlY3RvcnlFcnJvciwgRU5PVERJUik7CisgICAgUE9TVF9JTklUKEludGVycnVwdGVkRXJyb3IpOworICAgIEFERF9FUlJOTyhJbnRlcnJ1cHRlZEVycm9yLCBFSU5UUik7CisgICAgUE9TVF9JTklUKFBlcm1pc3Npb25FcnJvcik7CisgICAgQUREX0VSUk5PKFBlcm1pc3Npb25FcnJvciwgRUFDQ0VTKTsKKyAgICBBRERfRVJSTk8oUGVybWlzc2lvbkVycm9yLCBFUEVSTSk7CisgICAgUE9TVF9JTklUKFByb2Nlc3NMb29rdXBFcnJvcik7CisgICAgQUREX0VSUk5PKFByb2Nlc3NMb29rdXBFcnJvciwgRVNSQ0gpOworICAgIFBPU1RfSU5JVChUaW1lb3V0RXJyb3IpOworICAgIEFERF9FUlJOTyhUaW1lb3V0RXJyb3IsIEVUSU1FRE9VVCk7CisKICAgICBwcmVhbGxvY2F0ZV9tZW1lcnJvcnMoKTsKIAogICAgIGlmICghUHlFeGNfUmVjdXJzaW9uRXJyb3JJbnN0KSB7CkBAIC0yMTMwLDQgKzI0NzgsNSBAQAogewogICAgIFB5X0NMRUFSKFB5RXhjX1JlY3Vyc2lvbkVycm9ySW5zdCk7CiAgICAgZnJlZV9wcmVhbGxvY2F0ZWRfbWVtZXJyb3JzKCk7CisgICAgUHlfQ0xFQVIoZXJybm9tYXApOwogfQpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9maWxlb2JqZWN0LmMgYi9PYmplY3RzL2ZpbGVvYmplY3QuYwppbmRleCBkMjBmMTk2Li5lMWM0N2NlIDEwMDY0NAotLS0gYS9PYmplY3RzL2ZpbGVvYmplY3QuYworKysgYi9PYmplY3RzL2ZpbGVvYmplY3QuYwpAQCAtMzAsMTEgKzMwLDEyIEBACiAgICAgICAgICAgICAgIGNoYXIgKmVycm9ycywgY2hhciAqbmV3bGluZSwgaW50IGNsb3NlZmQpCiB7CiAgICAgUHlPYmplY3QgKmlvLCAqc3RyZWFtOworICAgIF9QeV9JREVOVElGSUVSKG9wZW4pOwogCiAgICAgaW8gPSBQeUltcG9ydF9JbXBvcnRNb2R1bGUoImlvIik7CiAgICAgaWYgKGlvID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHN0cmVhbSA9IFB5T2JqZWN0X0NhbGxNZXRob2QoaW8sICJvcGVuIiwgImlzaXNzc2kiLCBmZCwgbW9kZSwKKyAgICBzdHJlYW0gPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGlvLCAmUHlJZF9vcGVuLCAiaXNpc3NzaSIsIGZkLCBtb2RlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyaW5nLCBlbmNvZGluZywgZXJyb3JzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3bGluZSwgY2xvc2VmZCk7CiAgICAgUHlfREVDUkVGKGlvKTsKQEAgLTU4LDggKzU5LDkgQEAKICAgICB7CiAgICAgICAgIFB5T2JqZWN0ICpyZWFkZXI7CiAgICAgICAgIFB5T2JqZWN0ICphcmdzOworICAgICAgICBfUHlfSURFTlRJRklFUihyZWFkbGluZSk7CiAKLSAgICAgICAgcmVhZGVyID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmLCAicmVhZGxpbmUiKTsKKyAgICAgICAgcmVhZGVyID0gX1B5T2JqZWN0X0dldEF0dHJJZChmLCAmUHlJZF9yZWFkbGluZSk7CiAgICAgICAgIGlmIChyZWFkZXIgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAobiA8PSAwKQpAQCAtMTAzLDIzICsxMDUsMTggQEAKICAgICAgICAgfQogICAgIH0KICAgICBpZiAobiA8IDAgJiYgcmVzdWx0ICE9IE5VTEwgJiYgUHlVbmljb2RlX0NoZWNrKHJlc3VsdCkpIHsKLSAgICAgICAgUHlfVU5JQ09ERSAqcyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCk7Ci0gICAgICAgIFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHJlc3VsdCk7CisgICAgICAgIFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocmVzdWx0KTsKICAgICAgICAgaWYgKGxlbiA9PSAwKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKICAgICAgICAgICAgIHJlc3VsdCA9IE5VTEw7CiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfRU9GRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkVPRiB3aGVuIHJlYWRpbmcgYSBsaW5lIik7CiAgICAgICAgIH0KLSAgICAgICAgZWxzZSBpZiAoc1tsZW4tMV0gPT0gJ1xuJykgewotICAgICAgICAgICAgaWYgKHJlc3VsdC0+b2JfcmVmY250ID09IDEpCi0gICAgICAgICAgICAgICAgUHlVbmljb2RlX1Jlc2l6ZSgmcmVzdWx0LCBsZW4tMSk7Ci0gICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICBQeU9iamVjdCAqdjsKLSAgICAgICAgICAgICAgICB2ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHMsIGxlbi0xKTsKLSAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKLSAgICAgICAgICAgICAgICByZXN1bHQgPSB2OwotICAgICAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChQeVVuaWNvZGVfUkVBRF9DSEFSKHJlc3VsdCwgbGVuLTEpID09ICdcbicpIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICp2OworICAgICAgICAgICAgdiA9IFB5VW5pY29kZV9TdWJzdHJpbmcocmVzdWx0LCAwLCBsZW4tMSk7CisgICAgICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKKyAgICAgICAgICAgIHJlc3VsdCA9IHY7CiAgICAgICAgIH0KICAgICB9CiAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTEzMSwxMSArMTI4LDEzIEBACiBQeUZpbGVfV3JpdGVPYmplY3QoUHlPYmplY3QgKnYsIFB5T2JqZWN0ICpmLCBpbnQgZmxhZ3MpCiB7CiAgICAgUHlPYmplY3QgKndyaXRlciwgKnZhbHVlLCAqYXJncywgKnJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUih3cml0ZSk7CisKICAgICBpZiAoZiA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJ3cml0ZW9iamVjdCB3aXRoIE5VTEwgZmlsZSIpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQotICAgIHdyaXRlciA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZiwgIndyaXRlIik7CisgICAgd3JpdGVyID0gX1B5T2JqZWN0X0dldEF0dHJJZChmLCAmUHlJZF93cml0ZSk7CiAgICAgaWYgKHdyaXRlciA9PSBOVUxMKQogICAgICAgICByZXR1cm4gLTE7CiAgICAgaWYgKGZsYWdzICYgUHlfUFJJTlRfUkFXKSB7CkBAIC0xOTgsMTEgKzE5NywxMiBAQAogewogICAgIGludCBmZDsKICAgICBQeU9iamVjdCAqbWV0aDsKKyAgICBfUHlfSURFTlRJRklFUihmaWxlbm8pOwogCiAgICAgaWYgKFB5TG9uZ19DaGVjayhvKSkgewogICAgICAgICBmZCA9IFB5TG9uZ19Bc0xvbmcobyk7CiAgICAgfQotICAgIGVsc2UgaWYgKChtZXRoID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvLCAiZmlsZW5vIikpICE9IE5VTEwpCisgICAgZWxzZSBpZiAoKG1ldGggPSBfUHlPYmplY3RfR2V0QXR0cklkKG8sICZQeUlkX2ZpbGVubykpICE9IE5VTEwpCiAgICAgewogICAgICAgICBQeU9iamVjdCAqZm5vID0gUHlFdmFsX0NhbGxPYmplY3QobWV0aCwgTlVMTCk7CiAgICAgICAgIFB5X0RFQ1JFRihtZXRoKTsKQEAgLTI5Nyw4ICsyOTcsOCBAQAogICAgICAgICAqcCsrID0gYzsKICAgICAgICAgaWYgKGMgPT0gJ1xuJykgYnJlYWs7CiAgICAgfQotICAgIGlmICggYyA9PSBFT0YgJiYgc2tpcG5leHRsZiApCi0gICAgICAgIG5ld2xpbmV0eXBlcyB8PSBORVdMSU5FX0NSOworICAgIC8qIGlmICggYyA9PSBFT0YgJiYgc2tpcG5leHRsZiApCisgICAgICAgIG5ld2xpbmV0eXBlcyB8PSBORVdMSU5FX0NSOyAqLwogICAgIEZVTkxPQ0tGSUxFKHN0cmVhbSk7CiAgICAgKnAgPSAnXDAnOwogICAgIGlmICggc2tpcG5leHRsZiApIHsKZGlmZiAtLWdpdCBhL09iamVjdHMvZmxvYXRvYmplY3QuYyBiL09iamVjdHMvZmxvYXRvYmplY3QuYwppbmRleCBlMTQ2YTRmLi5hNzM4MjQ5IDEwMDY0NAotLS0gYS9PYmplY3RzL2Zsb2F0b2JqZWN0LmMKKysrIGIvT2JqZWN0cy9mbG9hdG9iamVjdC5jCkBAIC0xNSwxMSArMTUsNiBAQAogI2RlZmluZSBNSU4oeCwgeSkgKCh4KSA8ICh5KSA/ICh4KSA6ICh5KSkKIAogCi0jaWZkZWYgX09TRl9TT1VSQ0UKLS8qIE9TRjEgNS4xIGRvZXNuJ3QgbWFrZSB0aGlzIGF2YWlsYWJsZSB3aXRoIFhPUEVOX1NPVVJDRV9FWFRFTkRFRCBkZWZpbmVkICovCi1leHRlcm4gaW50IGZpbml0ZShkb3VibGUpOwotI2VuZGlmCi0KIC8qIFNwZWNpYWwgZnJlZSBsaXN0CiAKICAgIFNpbmNlIHNvbWUgUHl0aG9uIHByb2dyYW1zIGNhbiBzcGVuZCBtdWNoIG9mIHRoZWlyIHRpbWUgYWxsb2NhdGluZwpAQCAtMTc5LDI1ICsxNzQsMTQgQEAKICAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKIAogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sodikpIHsKLSAgICAgICAgUHlfc3NpemVfdCBpLCBidWZsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUodik7Ci0gICAgICAgIFB5X1VOSUNPREUgKmJ1ZnB0cjsKLSAgICAgICAgc19idWZmZXIgPSBQeVVuaWNvZGVfVHJhbnNmb3JtRGVjaW1hbFRvQVNDSUkoCi0gICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSwgYnVmbGVuKTsKKyAgICAgICAgc19idWZmZXIgPSBfUHlVbmljb2RlX1RyYW5zZm9ybURlY2ltYWxBbmRTcGFjZVRvQVNDSUkodik7CiAgICAgICAgIGlmIChzX2J1ZmZlciA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIC8qIFJlcGxhY2Ugbm9uLUFTQ0lJIHdoaXRlc3BhY2Ugd2l0aCAnICcgKi8KLSAgICAgICAgYnVmcHRyID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc19idWZmZXIpOwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgYnVmbGVuOyBpKyspIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgY2ggPSBidWZwdHJbaV07Ci0gICAgICAgICAgICBpZiAoY2ggPiAxMjcgJiYgUHlfVU5JQ09ERV9JU1NQQUNFKGNoKSkKLSAgICAgICAgICAgICAgICBidWZwdHJbaV0gPSAnICc7Ci0gICAgICAgIH0KLSAgICAgICAgcyA9IF9QeVVuaWNvZGVfQXNTdHJpbmdBbmRTaXplKHNfYnVmZmVyLCAmbGVuKTsKKyAgICAgICAgcyA9IFB5VW5pY29kZV9Bc1VURjhBbmRTaXplKHNfYnVmZmVyLCAmbGVuKTsKICAgICAgICAgaWYgKHMgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKHNfYnVmZmVyKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIGxhc3QgPSBzICsgbGVuOwogICAgIH0KICAgICBlbHNlIGlmIChQeU9iamVjdF9Bc0NoYXJCdWZmZXIodiwgJnMsICZsZW4pKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCkBAIC01MjMsOCArNTA3LDcgQEAKICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKHIpOwogCiAgVW5pbXBsZW1lbnRlZDoKLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKIHN0YXRpYyBQeV9oYXNoX3QKQEAgLTEwODAsNyArMTA2Myw3IEBACiBjaGFyX2Zyb21faGV4KGludCB4KQogewogICAgIGFzc2VydCgwIDw9IHggJiYgeCA8IDE2KTsKLSAgICByZXR1cm4gIjAxMjM0NTY3ODlhYmNkZWYiW3hdOworICAgIHJldHVybiBQeV9oZXhkaWdpdHNbeF07CiB9CiAKIHN0YXRpYyBpbnQKQEAgLTE3NTMsOSArMTczNiw4IEBACiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6X19mb3JtYXRfXyIsICZmb3JtYXRfc3BlYykpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJldHVybiBfUHlGbG9hdF9Gb3JtYXRBZHZhbmNlZChzZWxmLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShmb3JtYXRfc3BlYyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShmb3JtYXRfc3BlYykpOworICAgIHJldHVybiBfUHlGbG9hdF9Gb3JtYXRBZHZhbmNlZChzZWxmLCBmb3JtYXRfc3BlYywgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoZm9ybWF0X3NwZWMpKTsKIH0KIAogUHlEb2NfU1RSVkFSKGZsb2F0X19mb3JtYXRfX2RvYywKQEAgLTIyNTEsNyArMjIzMyw3IEBACiAKICAgICAgICAgLyogRWlnaHRoIGJ5dGUgKi8KICAgICAgICAgKnAgPSBmbG8gJiAweEZGOwotICAgICAgICBwICs9IGluY3I7CisgICAgICAgIC8qIHAgKz0gaW5jcjsgKi8KIAogICAgICAgICAvKiBEb25lICovCiAgICAgICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9mcmFtZW9iamVjdC5jIGIvT2JqZWN0cy9mcmFtZW9iamVjdC5jCmluZGV4IDEwZmI4YjMuLjliMDViOWQgMTAwNjQ0Ci0tLSBhL09iamVjdHMvZnJhbWVvYmplY3QuYworKysgYi9PYmplY3RzL2ZyYW1lb2JqZWN0LmMKQEAgLTE1LDExICsxNSwxMiBAQAogI2RlZmluZSBPRkYoeCkgb2Zmc2V0b2YoUHlGcmFtZU9iamVjdCwgeCkKIAogc3RhdGljIFB5TWVtYmVyRGVmIGZyYW1lX21lbWJlcmxpc3RbXSA9IHsKLSAgICB7ImZfYmFjayIsICAgICAgICAgIFRfT0JKRUNULCAgICAgICBPRkYoZl9iYWNrKSwgICAgUkVBRE9OTFl9LAotICAgIHsiZl9jb2RlIiwgICAgICAgICAgVF9PQkpFQ1QsICAgICAgIE9GRihmX2NvZGUpLCAgICBSRUFET05MWX0sCi0gICAgeyJmX2J1aWx0aW5zIiwgICAgICBUX09CSkVDVCwgICAgICAgT0ZGKGZfYnVpbHRpbnMpLFJFQURPTkxZfSwKLSAgICB7ImZfZ2xvYmFscyIsICAgICAgIFRfT0JKRUNULCAgICAgICBPRkYoZl9nbG9iYWxzKSwgUkVBRE9OTFl9LAotICAgIHsiZl9sYXN0aSIsICAgICAgICAgVF9JTlQsICAgICAgICAgIE9GRihmX2xhc3RpKSwgICBSRUFET05MWX0sCisgICAgeyJmX2JhY2siLCAgICAgICAgICBUX09CSkVDVCwgICAgICAgT0ZGKGZfYmFjayksICAgICAgUkVBRE9OTFl9LAorICAgIHsiZl9jb2RlIiwgICAgICAgICAgVF9PQkpFQ1QsICAgICAgIE9GRihmX2NvZGUpLCAgICAgIFJFQURPTkxZfSwKKyAgICB7ImZfYnVpbHRpbnMiLCAgICAgIFRfT0JKRUNULCAgICAgICBPRkYoZl9idWlsdGlucyksICBSRUFET05MWX0sCisgICAgeyJmX2dsb2JhbHMiLCAgICAgICBUX09CSkVDVCwgICAgICAgT0ZGKGZfZ2xvYmFscyksICAgUkVBRE9OTFl9LAorICAgIHsiZl9sYXN0aSIsICAgICAgICAgVF9JTlQsICAgICAgICAgIE9GRihmX2xhc3RpKSwgICAgIFJFQURPTkxZfSwKKyAgICB7ImZfeWllbGRmcm9tIiwgICAgIFRfT0JKRUNULCAgICAgICBPRkYoZl95aWVsZGZyb20pLCBSRUFET05MWX0sCiAgICAge05VTEx9ICAgICAgLyogU2VudGluZWwgKi8KIH07CiAKQEAgLTQ0NCw2ICs0NDUsNyBAQAogICAgIFB5X0NMRUFSKGYtPmZfZXhjX3R5cGUpOwogICAgIFB5X0NMRUFSKGYtPmZfZXhjX3ZhbHVlKTsKICAgICBQeV9DTEVBUihmLT5mX2V4Y190cmFjZWJhY2spOworICAgIFB5X0NMRUFSKGYtPmZfeWllbGRmcm9tKTsKIAogICAgIGNvID0gZi0+Zl9jb2RlOwogICAgIGlmIChjby0+Y29fem9tYmllZnJhbWUgPT0gTlVMTCkKQEAgLTQ3NSw2ICs0NzcsNyBAQAogICAgIFB5X1ZJU0lUKGYtPmZfZXhjX3R5cGUpOwogICAgIFB5X1ZJU0lUKGYtPmZfZXhjX3ZhbHVlKTsKICAgICBQeV9WSVNJVChmLT5mX2V4Y190cmFjZWJhY2spOworICAgIFB5X1ZJU0lUKGYtPmZfeWllbGRmcm9tKTsKIAogICAgIC8qIGxvY2FscyAqLwogICAgIHNsb3RzID0gZi0+Zl9jb2RlLT5jb19ubG9jYWxzICsgUHlUdXBsZV9HRVRfU0laRShmLT5mX2NvZGUtPmNvX2NlbGx2YXJzKSArIFB5VHVwbGVfR0VUX1NJWkUoZi0+Zl9jb2RlLT5jb19mcmVldmFycyk7CkBAIC01MDgsNiArNTExLDcgQEAKICAgICBQeV9DTEVBUihmLT5mX2V4Y192YWx1ZSk7CiAgICAgUHlfQ0xFQVIoZi0+Zl9leGNfdHJhY2ViYWNrKTsKICAgICBQeV9DTEVBUihmLT5mX3RyYWNlKTsKKyAgICBQeV9DTEVBUihmLT5mX3lpZWxkZnJvbSk7CiAKICAgICAvKiBsb2NhbHMgKi8KICAgICBzbG90cyA9IGYtPmZfY29kZS0+Y29fbmxvY2FscyArIFB5VHVwbGVfR0VUX1NJWkUoZi0+Zl9jb2RlLT5jb19jZWxsdmFycykgKyBQeVR1cGxlX0dFVF9TSVpFKGYtPmZfY29kZS0+Y29fZnJlZXZhcnMpOwpAQCAtNzExLDYgKzcxNSw3IEBACiAgICAgZi0+Zl9sYXN0aSA9IC0xOwogICAgIGYtPmZfbGluZW5vID0gY29kZS0+Y29fZmlyc3RsaW5lbm87CiAgICAgZi0+Zl9pYmxvY2sgPSAwOworICAgIGYtPmZfeWllbGRmcm9tID0gTlVMTDsKIAogICAgIF9QeU9iamVjdF9HQ19UUkFDSyhmKTsKICAgICByZXR1cm4gZjsKZGlmZiAtLWdpdCBhL09iamVjdHMvZnVuY29iamVjdC5jIGIvT2JqZWN0cy9mdW5jb2JqZWN0LmMKaW5kZXggNDVmOWY1Ny4uYjkzZjM0MCAxMDA2NDQKLS0tIGEvT2JqZWN0cy9mdW5jb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9mdW5jb2JqZWN0LmMKQEAgLTYsNyArNiw3IEBACiAjaW5jbHVkZSAic3RydWN0bWVtYmVyLmgiCiAKIFB5T2JqZWN0ICoKLVB5RnVuY3Rpb25fTmV3KFB5T2JqZWN0ICpjb2RlLCBQeU9iamVjdCAqZ2xvYmFscykKK1B5RnVuY3Rpb25fTmV3V2l0aFF1YWxOYW1lKFB5T2JqZWN0ICpjb2RlLCBQeU9iamVjdCAqZ2xvYmFscywgUHlPYmplY3QgKnF1YWxuYW1lKQogewogICAgIFB5RnVuY3Rpb25PYmplY3QgKm9wID0gUHlPYmplY3RfR0NfTmV3KFB5RnVuY3Rpb25PYmplY3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlB5RnVuY3Rpb25fVHlwZSk7CkBAIC01NCw2ICs1NCwxMSBAQAogICAgICAgICAgICAgUHlfSU5DUkVGKG1vZHVsZSk7CiAgICAgICAgICAgICBvcC0+ZnVuY19tb2R1bGUgPSBtb2R1bGU7CiAgICAgICAgIH0KKyAgICAgICAgaWYgKHF1YWxuYW1lKQorICAgICAgICAgICAgb3AtPmZ1bmNfcXVhbG5hbWUgPSBxdWFsbmFtZTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgb3AtPmZ1bmNfcXVhbG5hbWUgPSBvcC0+ZnVuY19uYW1lOworICAgICAgICBQeV9JTkNSRUYob3AtPmZ1bmNfcXVhbG5hbWUpOwogICAgIH0KICAgICBlbHNlCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNjIsNiArNjcsMTIgQEAKIH0KIAogUHlPYmplY3QgKgorUHlGdW5jdGlvbl9OZXcoUHlPYmplY3QgKmNvZGUsIFB5T2JqZWN0ICpnbG9iYWxzKQoreworICAgIHJldHVybiBQeUZ1bmN0aW9uX05ld1dpdGhRdWFsTmFtZShjb2RlLCBnbG9iYWxzLCBOVUxMKTsKK30KKworUHlPYmplY3QgKgogUHlGdW5jdGlvbl9HZXRDb2RlKFB5T2JqZWN0ICpvcCkKIHsKICAgICBpZiAoIVB5RnVuY3Rpb25fQ2hlY2sob3ApKSB7CkBAIC0zMzQsNiArMzQ1LDMyIEBACiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCitmdW5jX2dldF9xdWFsbmFtZShQeUZ1bmN0aW9uT2JqZWN0ICpvcCkKK3sKKyAgICBQeV9JTkNSRUYob3AtPmZ1bmNfcXVhbG5hbWUpOworICAgIHJldHVybiBvcC0+ZnVuY19xdWFsbmFtZTsKK30KKworc3RhdGljIGludAorZnVuY19zZXRfcXVhbG5hbWUoUHlGdW5jdGlvbk9iamVjdCAqb3AsIFB5T2JqZWN0ICp2YWx1ZSkKK3sKKyAgICBQeU9iamVjdCAqdG1wOworCisgICAgLyogTm90IGxlZ2FsIHRvIGRlbCBmLl9fcXVhbG5hbWVfXyBvciB0byBzZXQgaXQgdG8gYW55dGhpbmcKKyAgICAgKiBvdGhlciB0aGFuIGEgc3RyaW5nIG9iamVjdC4gKi8KKyAgICBpZiAodmFsdWUgPT0gTlVMTCB8fCAhUHlVbmljb2RlX0NoZWNrKHZhbHVlKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIl9fcXVhbG5hbWVfXyBtdXN0IGJlIHNldCB0byBhIHN0cmluZyBvYmplY3QiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICB0bXAgPSBvcC0+ZnVuY19xdWFsbmFtZTsKKyAgICBQeV9JTkNSRUYodmFsdWUpOworICAgIG9wLT5mdW5jX3F1YWxuYW1lID0gdmFsdWU7CisgICAgUHlfREVDUkVGKHRtcCk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCiBmdW5jX2dldF9kZWZhdWx0cyhQeUZ1bmN0aW9uT2JqZWN0ICpvcCkKIHsKICAgICBpZiAob3AtPmZ1bmNfZGVmYXVsdHMgPT0gTlVMTCkgewpAQCAtNDQxLDYgKzQ3OCw3IEBACiAgICAgIChzZXR0ZXIpZnVuY19zZXRfYW5ub3RhdGlvbnN9LAogICAgIHsiX19kaWN0X18iLCAoZ2V0dGVyKWZ1bmNfZ2V0X2RpY3QsIChzZXR0ZXIpZnVuY19zZXRfZGljdH0sCiAgICAgeyJfX25hbWVfXyIsIChnZXR0ZXIpZnVuY19nZXRfbmFtZSwgKHNldHRlcilmdW5jX3NldF9uYW1lfSwKKyAgICB7Il9fcXVhbG5hbWVfXyIsIChnZXR0ZXIpZnVuY19nZXRfcXVhbG5hbWUsIChzZXR0ZXIpZnVuY19zZXRfcXVhbG5hbWV9LAogICAgIHtOVUxMfSAvKiBTZW50aW5lbCAqLwogfTsKIApAQCAtNTYxLDYgKzU5OSw3IEBACiAgICAgUHlfWERFQ1JFRihvcC0+ZnVuY19kaWN0KTsKICAgICBQeV9YREVDUkVGKG9wLT5mdW5jX2Nsb3N1cmUpOwogICAgIFB5X1hERUNSRUYob3AtPmZ1bmNfYW5ub3RhdGlvbnMpOworICAgIFB5X1hERUNSRUYob3AtPmZ1bmNfcXVhbG5hbWUpOwogICAgIFB5T2JqZWN0X0dDX0RlbChvcCk7CiB9CiAKQEAgLTU2OCw3ICs2MDcsNyBAQAogZnVuY19yZXByKFB5RnVuY3Rpb25PYmplY3QgKm9wKQogewogICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPGZ1bmN0aW9uICVVIGF0ICVwPiIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3AtPmZ1bmNfbmFtZSwgb3ApOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wLT5mdW5jX3F1YWxuYW1lLCBvcCk7CiB9CiAKIHN0YXRpYyBpbnQKQEAgLTU4NCw2ICs2MjMsNyBAQAogICAgIFB5X1ZJU0lUKGYtPmZ1bmNfZGljdCk7CiAgICAgUHlfVklTSVQoZi0+ZnVuY19jbG9zdXJlKTsKICAgICBQeV9WSVNJVChmLT5mdW5jX2Fubm90YXRpb25zKTsKKyAgICBQeV9WSVNJVChmLT5mdW5jX3F1YWxuYW1lKTsKICAgICByZXR1cm4gMDsKIH0KIApAQCAtNzc0LDYgKzgxNCwyNyBAQAogICAgIHtOVUxMfSAgLyogU2VudGluZWwgKi8KIH07CiAKK3N0YXRpYyBQeU9iamVjdCAqCitjbV9nZXRfX19pc2Fic3RyYWN0bWV0aG9kX18oY2xhc3NtZXRob2QgKmNtLCB2b2lkICpjbG9zdXJlKQoreworICAgIGludCByZXMgPSBfUHlPYmplY3RfSXNBYnN0cmFjdChjbS0+Y21fY2FsbGFibGUpOworICAgIGlmIChyZXMgPT0gLTEpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGVsc2UgaWYgKHJlcykgeworICAgICAgICBQeV9SRVRVUk5fVFJVRTsKKyAgICB9CisgICAgUHlfUkVUVVJOX0ZBTFNFOworfQorCitzdGF0aWMgUHlHZXRTZXREZWYgY21fZ2V0c2V0bGlzdFtdID0geworICAgIHsiX19pc2Fic3RyYWN0bWV0aG9kX18iLAorICAgICAoZ2V0dGVyKWNtX2dldF9fX2lzYWJzdHJhY3RtZXRob2RfXywgTlVMTCwKKyAgICAgTlVMTCwKKyAgICAgTlVMTH0sCisgICAge05VTEx9IC8qIFNlbnRpbmVsICovCit9OworCiBQeURvY19TVFJWQVIoY2xhc3NtZXRob2RfZG9jLAogImNsYXNzbWV0aG9kKGZ1bmN0aW9uKSAtPiBtZXRob2RcblwKIFxuXApAQCAtODI1LDcgKzg4Niw3IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLwogICAgIGNtX21lbWJlcmxpc3QsICAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KKyAgICBjbV9nZXRzZXRsaXN0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYmFzZSAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdCAqLwogICAgIGNtX2Rlc2NyX2dldCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVzY3JfZ2V0ICovCkBAIC05MjksNiArOTkwLDI3IEBACiAgICAge05VTEx9ICAvKiBTZW50aW5lbCAqLwogfTsKIAorc3RhdGljIFB5T2JqZWN0ICoKK3NtX2dldF9fX2lzYWJzdHJhY3RtZXRob2RfXyhzdGF0aWNtZXRob2QgKnNtLCB2b2lkICpjbG9zdXJlKQoreworICAgIGludCByZXMgPSBfUHlPYmplY3RfSXNBYnN0cmFjdChzbS0+c21fY2FsbGFibGUpOworICAgIGlmIChyZXMgPT0gLTEpIHsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGVsc2UgaWYgKHJlcykgeworICAgICAgICBQeV9SRVRVUk5fVFJVRTsKKyAgICB9CisgICAgUHlfUkVUVVJOX0ZBTFNFOworfQorCitzdGF0aWMgUHlHZXRTZXREZWYgc21fZ2V0c2V0bGlzdFtdID0geworICAgIHsiX19pc2Fic3RyYWN0bWV0aG9kX18iLAorICAgICAoZ2V0dGVyKXNtX2dldF9fX2lzYWJzdHJhY3RtZXRob2RfXywgTlVMTCwKKyAgICAgTlVMTCwKKyAgICAgTlVMTH0sCisgICAge05VTEx9IC8qIFNlbnRpbmVsICovCit9OworCiBQeURvY19TVFJWQVIoc3RhdGljbWV0aG9kX2RvYywKICJzdGF0aWNtZXRob2QoZnVuY3Rpb24pIC0+IG1ldGhvZFxuXAogXG5cCkBAIC05NzcsNyArMTA1OSw3IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLwogICAgIHNtX21lbWJlcmxpc3QsICAgICAgICAgICAgICAvKiB0cF9tZW1iZXJzICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KKyAgICBzbV9nZXRzZXRsaXN0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYmFzZSAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdCAqLwogICAgIHNtX2Rlc2NyX2dldCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGVzY3JfZ2V0ICovCmRpZmYgLS1naXQgYS9PYmplY3RzL2dlbm9iamVjdC5jIGIvT2JqZWN0cy9nZW5vYmplY3QuYwppbmRleCA0MjYwOGVmLi5iMzJkOWI2IDEwMDY0NAotLS0gYS9PYmplY3RzL2dlbm9iamVjdC5jCisrKyBiL09iamVjdHMvZ2Vub2JqZWN0LmMKQEAgLTUsNiArNSw5IEBACiAjaW5jbHVkZSAic3RydWN0bWVtYmVyLmgiCiAjaW5jbHVkZSAib3Bjb2RlLmgiCiAKK3N0YXRpYyBQeU9iamVjdCAqZ2VuX2Nsb3NlKFB5R2VuT2JqZWN0ICpnZW4sIFB5T2JqZWN0ICphcmdzKTsKK3N0YXRpYyB2b2lkIGdlbl91bmRlbGVnYXRlKFB5R2VuT2JqZWN0ICpnZW4pOworCiBzdGF0aWMgaW50CiBnZW5fdHJhdmVyc2UoUHlHZW5PYmplY3QgKmdlbiwgdmlzaXRwcm9jIHZpc2l0LCB2b2lkICphcmcpCiB7CkBAIC05MCwxMiArOTMsMTggQEAKIAogICAgIC8qIElmIHRoZSBnZW5lcmF0b3IganVzdCByZXR1cm5lZCAoYXMgb3Bwb3NlZCB0byB5aWVsZGluZyksIHNpZ25hbAogICAgICAqIHRoYXQgdGhlIGdlbmVyYXRvciBpcyBleGhhdXN0ZWQuICovCi0gICAgaWYgKHJlc3VsdCA9PSBQeV9Ob25lICYmIGYtPmZfc3RhY2t0b3AgPT0gTlVMTCkgewotICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKLSAgICAgICAgcmVzdWx0ID0gTlVMTDsKLSAgICAgICAgLyogU2V0IGV4Y2VwdGlvbiBpZiBub3QgY2FsbGVkIGJ5IGdlbl9pdGVybmV4dCgpICovCi0gICAgICAgIGlmIChhcmcpCisgICAgaWYgKHJlc3VsdCAmJiBmLT5mX3N0YWNrdG9wID09IE5VTEwpIHsKKyAgICAgICAgaWYgKHJlc3VsdCA9PSBQeV9Ob25lKSB7CisgICAgICAgICAgICAvKiBEZWxheSBleGNlcHRpb24gaW5zdGFudGlhdGlvbiBpZiB3ZSBjYW4gKi8KICAgICAgICAgICAgIFB5RXJyX1NldE5vbmUoUHlFeGNfU3RvcEl0ZXJhdGlvbik7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBQeU9iamVjdCAqZSA9IFB5U3RvcEl0ZXJhdGlvbl9DcmVhdGUocmVzdWx0KTsKKyAgICAgICAgICAgIGlmIChlICE9IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNfU3RvcEl0ZXJhdGlvbiwgZSk7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKGUpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIFB5X0NMRUFSKHJlc3VsdCk7CiAgICAgfQogCiAgICAgaWYgKCFyZXN1bHQgfHwgZi0+Zl9zdGFja3RvcCA9PSBOVUxMKSB7CkBAIC0xMTEsOCArMTIwLDggQEAKICAgICAgICAgUHlfWERFQ1JFRih0KTsKICAgICAgICAgUHlfWERFQ1JFRih2KTsKICAgICAgICAgUHlfWERFQ1JFRih0Yik7Ci0gICAgICAgIFB5X0RFQ1JFRihmKTsKICAgICAgICAgZ2VuLT5naV9mcmFtZSA9IE5VTEw7CisgICAgICAgIFB5X0RFQ1JFRihmKTsKICAgICB9CiAKICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMTI1LDE3ICsxMzQsOTEgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBnZW5fc2VuZChQeUdlbk9iamVjdCAqZ2VuLCBQeU9iamVjdCAqYXJnKQogewotICAgIHJldHVybiBnZW5fc2VuZF9leChnZW4sIGFyZywgMCk7CisgICAgaW50IGV4YyA9IDA7CisgICAgUHlPYmplY3QgKnJldDsKKyAgICBQeU9iamVjdCAqeWYgPSBnZW4tPmdpX2ZyYW1lID8gZ2VuLT5naV9mcmFtZS0+Zl95aWVsZGZyb20gOiBOVUxMOworICAgIC8qIFhYWCAobmNvZ2hsYW4pOiBBcmUgdGhlIGluY3JlZi9kZWNyZWYgb24gYXJnIGFuZCB5ZiBzdHJpY3RseSBuZWVkZWQ/CisgICAgICogICAgICAgICAgICAgICAgIE9yIHdvdWxkIGl0IGJlIHZhbGlkIHRvIHJlbHkgb24gYm9ycm93ZWQgcmVmZXJlbmNlcz8KKyAgICAgKi8KKyAgICBQeV9JTkNSRUYoYXJnKTsKKyAgICBpZiAoeWYpIHsKKyAgICAgICAgUHlfSU5DUkVGKHlmKTsKKyAgICAgICAgaWYgKFB5R2VuX0NoZWNrRXhhY3QoeWYpKSB7CisgICAgICAgICAgICByZXQgPSBnZW5fc2VuZCgoUHlHZW5PYmplY3QgKil5ZiwgYXJnKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGlmIChhcmcgPT0gUHlfTm9uZSkKKyAgICAgICAgICAgICAgICByZXQgPSBQeUl0ZXJfTmV4dCh5Zik7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmV0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZCh5ZiwgInNlbmQiLCAiTyIsIGFyZyk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHJldCkgeworICAgICAgICAgICAgUHlfREVDUkVGKHlmKTsKKyAgICAgICAgICAgIGdvdG8gZG9uZTsKKyAgICAgICAgfQorICAgICAgICBnZW5fdW5kZWxlZ2F0ZShnZW4pOworICAgICAgICBQeV9DTEVBUihhcmcpOworICAgICAgICBpZiAoUHlHZW5fRmV0Y2hTdG9wSXRlcmF0aW9uVmFsdWUoJmFyZykgPCAwKSB7CisgICAgICAgICAgICBleGMgPSAxOworICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRih5Zik7CisgICAgfQorICAgIHJldCA9IGdlbl9zZW5kX2V4KGdlbiwgYXJnLCBleGMpOworZG9uZToKKyAgICBQeV9YREVDUkVGKGFyZyk7CisgICAgcmV0dXJuIHJldDsKIH0KIAogUHlEb2NfU1RSVkFSKGNsb3NlX2RvYywKICJjbG9zZShhcmcpIC0+IHJhaXNlIEdlbmVyYXRvckV4aXQgaW5zaWRlIGdlbmVyYXRvci4iKTsKIAorLyoKKyAqICAgVGhpcyBoZWxwZXIgZnVuY3Rpb24gaXMgdXNlZCBieSBnZW5fY2xvc2UgYW5kIGdlbl90aHJvdyB0bworICogICBjbG9zZSBhIHN1Yml0ZXJhdG9yIGJlaW5nIGRlbGVnYXRlZCB0byBieSB5aWVsZC1mcm9tLgorICovCisKK3N0YXRpYyBpbnQKK2dlbl9jbG9zZV9pdGVyKFB5T2JqZWN0ICp5ZikKK3sKKyAgICBQeU9iamVjdCAqcmV0dmFsID0gTlVMTDsKKyAgICAKKyAgICBpZiAoUHlHZW5fQ2hlY2tFeGFjdCh5ZikpIHsKKyAgICAgICAgcmV0dmFsID0gZ2VuX2Nsb3NlKChQeUdlbk9iamVjdCAqKXlmLCBOVUxMKTsKKyAgICAgICAgaWYgKHJldHZhbCA9PSBOVUxMKSB7CisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICBQeU9iamVjdCAqbWV0aCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoeWYsICJjbG9zZSIpOworICAgICAgICBpZiAobWV0aCA9PSBOVUxMKSB7CisgICAgICAgICAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKSB7CisgICAgICAgICAgICAgICAgUHlFcnJfV3JpdGVVbnJhaXNhYmxlKHlmKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICByZXR2YWwgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb24obWV0aCwgIiIpOworICAgICAgICAgICAgUHlfREVDUkVGKG1ldGgpOworICAgICAgICAgICAgaWYgKCFyZXR2YWwpCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgfQorICAgIFB5X1hERUNSRUYocmV0dmFsKTsKKyAgICByZXR1cm4gMDsKK30gICAgICAgCisKIHN0YXRpYyBQeU9iamVjdCAqCiBnZW5fY2xvc2UoUHlHZW5PYmplY3QgKmdlbiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKnJldHZhbDsKLSAgICBQeUVycl9TZXROb25lKFB5RXhjX0dlbmVyYXRvckV4aXQpOworICAgIFB5T2JqZWN0ICp5ZiA9IGdlbi0+Z2lfZnJhbWUgPyBnZW4tPmdpX2ZyYW1lLT5mX3lpZWxkZnJvbSA6IE5VTEw7CisgICAgaW50IGVyciA9IDA7CisKKyAgICBpZiAoeWYpIHsKKyAgICAgICAgUHlfSU5DUkVGKHlmKTsKKyAgICAgICAgZXJyID0gZ2VuX2Nsb3NlX2l0ZXIoeWYpOworICAgICAgICBnZW5fdW5kZWxlZ2F0ZShnZW4pOworICAgICAgICBQeV9ERUNSRUYoeWYpOworICAgIH0KKyAgICBpZiAoZXJyID09IDApCisgICAgICAgIFB5RXJyX1NldE5vbmUoUHlFeGNfR2VuZXJhdG9yRXhpdCk7CiAgICAgcmV0dmFsID0gZ2VuX3NlbmRfZXgoZ2VuLCBQeV9Ob25lLCAxKTsKICAgICBpZiAocmV0dmFsKSB7CiAgICAgICAgIFB5X0RFQ1JFRihyZXR2YWwpOwpAQCAtMTk2LDcgKzI3OSw3IEBACiAgICAgICAgIF9QeV9OZXdSZWZlcmVuY2Uoc2VsZik7CiAgICAgICAgIHNlbGYtPm9iX3JlZmNudCA9IHJlZmNudDsKICAgICB9Ci0gICAgYXNzZXJ0KFB5VHlwZV9JU19HQyhzZWxmLT5vYl90eXBlKSAmJgorICAgIGFzc2VydChQeVR5cGVfSVNfR0MoUHlfVFlQRShzZWxmKSkgJiYKICAgICAgICAgICAgX1B5X0FTX0dDKHNlbGYpLT5nYy5nY19yZWZzICE9IF9QeUdDX1JFRlNfVU5UUkFDS0VEKTsKIAogICAgIC8qIElmIFB5X1JFRl9ERUJVRywgX1B5X05ld1JlZmVyZW5jZSBidW1wZWQgX1B5X1JlZlRvdGFsLCBzbwpAQCAtMjA5LDggKzI5Miw4IEBACiAgICAgICogdW5kb25lLgogICAgICAqLwogI2lmZGVmIENPVU5UX0FMTE9DUwotICAgIC0tc2VsZi0+b2JfdHlwZS0+dHBfZnJlZXM7Ci0gICAgLS1zZWxmLT5vYl90eXBlLT50cF9hbGxvY3M7CisgICAgLS0oUHlfVFlQRShzZWxmKS0+dHBfZnJlZXMpOworICAgIC0tKFB5X1RZUEUoc2VsZiktPnRwX2FsbG9jcyk7CiAjZW5kaWYKIH0KIApAQCAtMjI2LDEwICszMDksNTUgQEAKICAgICBQeU9iamVjdCAqdHlwOwogICAgIFB5T2JqZWN0ICp0YiA9IE5VTEw7CiAgICAgUHlPYmplY3QgKnZhbCA9IE5VTEw7CisgICAgUHlPYmplY3QgKnlmID0gZ2VuLT5naV9mcmFtZSA/IGdlbi0+Z2lfZnJhbWUtPmZfeWllbGRmcm9tIDogTlVMTDsKIAogICAgIGlmICghUHlBcmdfVW5wYWNrVHVwbGUoYXJncywgInRocm93IiwgMSwgMywgJnR5cCwgJnZhbCwgJnRiKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKKyAgICBpZiAoeWYpIHsKKyAgICAgICAgUHlPYmplY3QgKnJldDsKKyAgICAgICAgaW50IGVycjsKKyAgICAgICAgUHlfSU5DUkVGKHlmKTsKKyAgICAgICAgaWYgKFB5RXJyX0dpdmVuRXhjZXB0aW9uTWF0Y2hlcyh0eXAsIFB5RXhjX0dlbmVyYXRvckV4aXQpKSB7CisgICAgICAgICAgICBlcnIgPSBnZW5fY2xvc2VfaXRlcih5Zik7CisgICAgICAgICAgICBQeV9ERUNSRUYoeWYpOworICAgICAgICAgICAgZ2VuX3VuZGVsZWdhdGUoZ2VuKTsKKyAgICAgICAgICAgIGlmIChlcnIgPCAwKQorICAgICAgICAgICAgICAgIHJldHVybiBnZW5fc2VuZF9leChnZW4sIFB5X05vbmUsIDEpOworICAgICAgICAgICAgZ290byB0aHJvd19oZXJlOworICAgICAgICB9CisgICAgICAgIGlmIChQeUdlbl9DaGVja0V4YWN0KHlmKSkgeworICAgICAgICAgICAgcmV0ID0gZ2VuX3Rocm93KChQeUdlbk9iamVjdCAqKXlmLCBhcmdzKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICptZXRoID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh5ZiwgInRocm93Iik7CisgICAgICAgICAgICBpZiAobWV0aCA9PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgaWYgKCFQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkgeworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoeWYpOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYoeWYpOworICAgICAgICAgICAgICAgIGdlbl91bmRlbGVnYXRlKGdlbik7CisgICAgICAgICAgICAgICAgZ290byB0aHJvd19oZXJlOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0ID0gUHlPYmplY3RfQ2FsbE9iamVjdChtZXRoLCBhcmdzKTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihtZXRoKTsKKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYoeWYpOworICAgICAgICBpZiAoIXJldCkgeworICAgICAgICAgICAgUHlPYmplY3QgKnZhbDsKKyAgICAgICAgICAgIGdlbl91bmRlbGVnYXRlKGdlbik7CisgICAgICAgICAgICBpZiAoUHlHZW5fRmV0Y2hTdG9wSXRlcmF0aW9uVmFsdWUoJnZhbCkgPT0gMCkgeworICAgICAgICAgICAgICAgIHJldCA9IGdlbl9zZW5kX2V4KGdlbiwgdmFsLCAwKTsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgcmV0ID0gZ2VuX3NlbmRfZXgoZ2VuLCBQeV9Ob25lLCAxKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICByZXR1cm4gcmV0OworICAgIH0KKwordGhyb3dfaGVyZToKICAgICAvKiBGaXJzdCwgY2hlY2sgdGhlIHRyYWNlYmFjayBhcmd1bWVudCwgcmVwbGFjaW5nIE5vbmUgd2l0aAogICAgICAgIE5VTEwuICovCiAgICAgaWYgKHRiID09IFB5X05vbmUpIHsKQEAgLTI3Miw3ICs0MDAsNyBAQAogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgImV4Y2VwdGlvbnMgbXVzdCBiZSBjbGFzc2VzIG9yIGluc3RhbmNlcyAiCiAgICAgICAgICAgICAgICAgICAgICAiZGVyaXZpbmcgZnJvbSBCYXNlRXhjZXB0aW9uLCBub3QgJXMiLAotICAgICAgICAgICAgICAgICAgICAgdHlwLT5vYl90eXBlLT50cF9uYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgIFB5X1RZUEUodHlwKS0+dHBfbmFtZSk7CiAgICAgICAgICAgICBnb3RvIGZhaWxlZF90aHJvdzsKICAgICB9CiAKQEAgLTI5MSw5ICs0MTksNzUgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBnZW5faXRlcm5leHQoUHlHZW5PYmplY3QgKmdlbikKIHsKLSAgICByZXR1cm4gZ2VuX3NlbmRfZXgoZ2VuLCBOVUxMLCAwKTsKKyAgICBQeU9iamVjdCAqdmFsID0gTlVMTDsKKyAgICBQeU9iamVjdCAqcmV0OworICAgIGludCBleGMgPSAwOworICAgIFB5T2JqZWN0ICp5ZiA9IGdlbi0+Z2lfZnJhbWUgPyBnZW4tPmdpX2ZyYW1lLT5mX3lpZWxkZnJvbSA6IE5VTEw7CisgICAgaWYgKHlmKSB7CisgICAgICAgIFB5X0lOQ1JFRih5Zik7CisgICAgICAgIC8qIGNldmFsLmMgZW5zdXJlcyB0aGF0IHlmIGlzIGFuIGl0ZXJhdG9yICovCisgICAgICAgIHJldCA9IFB5X1RZUEUoeWYpLT50cF9pdGVybmV4dCh5Zik7CisgICAgICAgIGlmIChyZXQpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRih5Zik7CisgICAgICAgICAgICByZXR1cm4gcmV0OworICAgICAgICB9CisgICAgICAgIGdlbl91bmRlbGVnYXRlKGdlbik7CisgICAgICAgIGlmIChQeUdlbl9GZXRjaFN0b3BJdGVyYXRpb25WYWx1ZSgmdmFsKSA8IDApCisgICAgICAgICAgICBleGMgPSAxOworICAgICAgICBQeV9ERUNSRUYoeWYpOworICAgIH0KKyAgICByZXQgPSBnZW5fc2VuZF9leChnZW4sIHZhbCwgZXhjKTsKKyAgICBQeV9YREVDUkVGKHZhbCk7CisgICAgcmV0dXJuIHJldDsKIH0KIAorLyoKKyAqICAgSW4gY2VydGFpbiByZWN1cnNpdmUgc2l0dWF0aW9ucywgYSBnZW5lcmF0b3IgbWF5IGxvc2UgaXRzIGZyYW1lCisgKiAgIGJlZm9yZSB3ZSBnZXQgYSBjaGFuY2UgdG8gY2xlYXIgZl95aWVsZGZyb20sIHNvIHdlIHVzZSB0aGlzCisgKiAgIGhlbHBlciBmdW5jdGlvbi4KKyAqLworCitzdGF0aWMgdm9pZAorZ2VuX3VuZGVsZWdhdGUoUHlHZW5PYmplY3QgKmdlbikgeworICAgIGlmIChnZW4tPmdpX2ZyYW1lKSB7CisgICAgICAgIFB5X1hERUNSRUYoZ2VuLT5naV9mcmFtZS0+Zl95aWVsZGZyb20pOworICAgICAgICBnZW4tPmdpX2ZyYW1lLT5mX3lpZWxkZnJvbSA9IE5VTEw7CisgICAgfQorfQorCisvKgorICogICBJZiBTdG9wSXRlcmF0aW9uIGV4Y2VwdGlvbiBpcyBzZXQsIGZldGNoZXMgaXRzICd2YWx1ZScKKyAqICAgYXR0cmlidXRlIGlmIGFueSwgb3RoZXJ3aXNlIHNldHMgcHZhbHVlIHRvIE5vbmUuCisgKgorICogICBSZXR1cm5zIDAgaWYgbm8gZXhjZXB0aW9uIG9yIFN0b3BJdGVyYXRpb24gaXMgc2V0LgorICogICBJZiBhbnkgb3RoZXIgZXhjZXB0aW9uIGlzIHNldCwgcmV0dXJucyAtMSBhbmQgbGVhdmVzCisgKiAgIHB2YWx1ZSB1bmNoYW5nZWQuCisgKi8KKworaW50CitQeUdlbl9GZXRjaFN0b3BJdGVyYXRpb25WYWx1ZShQeU9iamVjdCAqKnB2YWx1ZSkgeworICAgIFB5T2JqZWN0ICpldCwgKmV2LCAqdGI7CisgICAgUHlPYmplY3QgKnZhbHVlID0gTlVMTDsKKyAgICAKKyAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19TdG9wSXRlcmF0aW9uKSkgeworICAgICAgICBQeUVycl9GZXRjaCgmZXQsICZldiwgJnRiKTsKKyAgICAgICAgUHlfWERFQ1JFRihldCk7CisgICAgICAgIFB5X1hERUNSRUYodGIpOworICAgICAgICBpZiAoZXYpIHsKKyAgICAgICAgICAgIHZhbHVlID0gKChQeVN0b3BJdGVyYXRpb25PYmplY3QgKilldiktPnZhbHVlOworICAgICAgICAgICAgUHlfSU5DUkVGKHZhbHVlKTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihldik7CisgICAgICAgIH0KKyAgICB9IGVsc2UgaWYgKFB5RXJyX09jY3VycmVkKCkpIHsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAodmFsdWUgPT0gTlVMTCkgeworICAgICAgICB2YWx1ZSA9IFB5X05vbmU7CisgICAgICAgIFB5X0lOQ1JFRih2YWx1ZSk7CisgICAgfQorICAgICpwdmFsdWUgPSB2YWx1ZTsKKyAgICByZXR1cm4gMDsKK30KIAogc3RhdGljIFB5T2JqZWN0ICoKIGdlbl9yZXByKFB5R2VuT2JqZWN0ICpnZW4pCkBAIC00MTAsMTUgKzYwNCwxMyBAQAogICAgIGludCBpOwogICAgIFB5RnJhbWVPYmplY3QgKmYgPSBnZW4tPmdpX2ZyYW1lOwogCi0gICAgaWYgKGYgPT0gTlVMTCB8fCBmLT5mX3N0YWNrdG9wID09IE5VTEwgfHwgZi0+Zl9pYmxvY2sgPD0gMCkKKyAgICBpZiAoZiA9PSBOVUxMIHx8IGYtPmZfc3RhY2t0b3AgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIDA7IC8qIG5vIGZyYW1lIG9yIGVtcHR5IGJsb2Nrc3RhY2sgPT0gbm8gZmluYWxpemF0aW9uICovCiAKICAgICAvKiBBbnkgYmxvY2sgdHlwZSBiZXNpZGVzIGEgbG9vcCByZXF1aXJlcyBjbGVhbnVwLiAqLwotICAgIGkgPSBmLT5mX2libG9jazsKLSAgICB3aGlsZSAoLS1pID49IDApIHsKKyAgICBmb3IgKGkgPSAwOyBpIDwgZi0+Zl9pYmxvY2s7IGkrKykKICAgICAgICAgaWYgKGYtPmZfYmxvY2tzdGFja1tpXS5iX3R5cGUgIT0gU0VUVVBfTE9PUCkKICAgICAgICAgICAgIHJldHVybiAxOwotICAgIH0KIAogICAgIC8qIE5vIGJsb2NrcyBleGNlcHQgbG9vcHMsIGl0J3Mgc2FmZSB0byBza2lwIGZpbmFsaXphdGlvbi4gKi8KICAgICByZXR1cm4gMDsKZGlmZiAtLWdpdCBhL09iamVjdHMvbGlzdG9iamVjdC5jIGIvT2JqZWN0cy9saXN0b2JqZWN0LmMKaW5kZXggMDBkZTU5Ny4uNmYxZWRjNSAxMDA2NDQKLS0tIGEvT2JqZWN0cy9saXN0b2JqZWN0LmMKKysrIGIvT2JqZWN0cy9saXN0b2JqZWN0LmMKQEAgLTk3LDE2ICs5NywyMyBAQAogc3RhdGljIFB5TGlzdE9iamVjdCAqZnJlZV9saXN0W1B5TGlzdF9NQVhGUkVFTElTVF07CiBzdGF0aWMgaW50IG51bWZyZWUgPSAwOwogCi12b2lkCi1QeUxpc3RfRmluaSh2b2lkKQoraW50CitQeUxpc3RfQ2xlYXJGcmVlTGlzdCh2b2lkKQogewogICAgIFB5TGlzdE9iamVjdCAqb3A7Ci0KKyAgICBpbnQgcmV0ID0gbnVtZnJlZTsKICAgICB3aGlsZSAobnVtZnJlZSkgewogICAgICAgICBvcCA9IGZyZWVfbGlzdFstLW51bWZyZWVdOwogICAgICAgICBhc3NlcnQoUHlMaXN0X0NoZWNrRXhhY3Qob3ApKTsKICAgICAgICAgUHlPYmplY3RfR0NfRGVsKG9wKTsKICAgICB9CisgICAgcmV0dXJuIHJldDsKK30KKwordm9pZAorUHlMaXN0X0Zpbmkodm9pZCkKK3sKKyAgICBQeUxpc3RfQ2xlYXJGcmVlTGlzdCgpOwogfQogCiBQeU9iamVjdCAqCkBAIC03MzYsNiArNzQzLDE5IEBACiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCitsaXN0Y2xlYXIoUHlMaXN0T2JqZWN0ICpzZWxmKQoreworICAgIGxpc3RfY2xlYXIoc2VsZik7CisgICAgUHlfUkVUVVJOX05PTkU7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitsaXN0Y29weShQeUxpc3RPYmplY3QgKnNlbGYpCit7CisgICAgcmV0dXJuIGxpc3Rfc2xpY2Uoc2VsZiwgMCwgUHlfU0laRShzZWxmKSk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCiBsaXN0YXBwZW5kKFB5TGlzdE9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnYpCiB7CiAgICAgaWYgKGFwcDEoc2VsZiwgdikgPT0gMCkKQEAgLTIxMDgsOCArMjEyOCw3IEBACiBsaXN0aW5kZXgoUHlMaXN0T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBQeV9zc2l6ZV90IGksIHN0YXJ0PTAsIHN0b3A9UHlfU0laRShzZWxmKTsKLSAgICBQeU9iamVjdCAqdiwgKmZvcm1hdF90dXBsZSwgKmVycl9zdHJpbmc7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICplcnJfZm9ybWF0ID0gTlVMTDsKKyAgICBQeU9iamVjdCAqdjsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiT3xPJk8mOmluZGV4IiwgJnYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9QeUV2YWxfU2xpY2VJbmRleCwgJnN0YXJ0LApAQCAtMjEzMiwyMCArMjE1MSw3IEBACiAgICAgICAgIGVsc2UgaWYgKGNtcCA8IDApCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgaWYgKGVycl9mb3JtYXQgPT0gTlVMTCkgewotICAgICAgICBlcnJfZm9ybWF0ID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIiVyIGlzIG5vdCBpbiBsaXN0Iik7Ci0gICAgICAgIGlmIChlcnJfZm9ybWF0ID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgZm9ybWF0X3R1cGxlID0gUHlUdXBsZV9QYWNrKDEsIHYpOwotICAgIGlmIChmb3JtYXRfdHVwbGUgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgZXJyX3N0cmluZyA9IFB5VW5pY29kZV9Gb3JtYXQoZXJyX2Zvcm1hdCwgZm9ybWF0X3R1cGxlKTsKLSAgICBQeV9ERUNSRUYoZm9ybWF0X3R1cGxlKTsKLSAgICBpZiAoZXJyX3N0cmluZyA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNfVmFsdWVFcnJvciwgZXJyX3N0cmluZyk7Ci0gICAgUHlfREVDUkVGKGVycl9zdHJpbmcpOworICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLCAiJVIgaXMgbm90IGluIGxpc3QiLCB2KTsKICAgICByZXR1cm4gTlVMTDsKIH0KIApAQCAtMjIwMSwxMCArMjIwNyw4IEBACiAgICAgUHlMaXN0T2JqZWN0ICp2bCwgKndsOwogICAgIFB5X3NzaXplX3QgaTsKIAotICAgIGlmICghUHlMaXN0X0NoZWNrKHYpIHx8ICFQeUxpc3RfQ2hlY2sodykpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBpZiAoIVB5TGlzdF9DaGVjayh2KSB8fCAhUHlMaXN0X0NoZWNrKHcpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAKICAgICB2bCA9IChQeUxpc3RPYmplY3QgKil2OwogICAgIHdsID0gKFB5TGlzdE9iamVjdCAqKXc7CkBAIC0yMzEzLDE3ICsyMzE3LDIxIEBACiAiTC5fX3JldmVyc2VkX18oKSAtLSByZXR1cm4gYSByZXZlcnNlIGl0ZXJhdG9yIG92ZXIgdGhlIGxpc3QiKTsKIFB5RG9jX1NUUlZBUihzaXplb2ZfZG9jLAogIkwuX19zaXplb2ZfXygpIC0tIHNpemUgb2YgTCBpbiBtZW1vcnksIGluIGJ5dGVzIik7CitQeURvY19TVFJWQVIoY2xlYXJfZG9jLAorIkwuY2xlYXIoKSAtPiBOb25lIC0tIHJlbW92ZSBhbGwgaXRlbXMgZnJvbSBMIik7CitQeURvY19TVFJWQVIoY29weV9kb2MsCisiTC5jb3B5KCkgLT4gbGlzdCAtLSBhIHNoYWxsb3cgY29weSBvZiBMIik7CiBQeURvY19TVFJWQVIoYXBwZW5kX2RvYywKLSJMLmFwcGVuZChvYmplY3QpIC0tIGFwcGVuZCBvYmplY3QgdG8gZW5kIik7CisiTC5hcHBlbmQob2JqZWN0KSAtPiBOb25lIC0tIGFwcGVuZCBvYmplY3QgdG8gZW5kIik7CiBQeURvY19TVFJWQVIoZXh0ZW5kX2RvYywKLSJMLmV4dGVuZChpdGVyYWJsZSkgLS0gZXh0ZW5kIGxpc3QgYnkgYXBwZW5kaW5nIGVsZW1lbnRzIGZyb20gdGhlIGl0ZXJhYmxlIik7CisiTC5leHRlbmQoaXRlcmFibGUpIC0+IE5vbmUgLS0gZXh0ZW5kIGxpc3QgYnkgYXBwZW5kaW5nIGVsZW1lbnRzIGZyb20gdGhlIGl0ZXJhYmxlIik7CiBQeURvY19TVFJWQVIoaW5zZXJ0X2RvYywKICJMLmluc2VydChpbmRleCwgb2JqZWN0KSAtLSBpbnNlcnQgb2JqZWN0IGJlZm9yZSBpbmRleCIpOwogUHlEb2NfU1RSVkFSKHBvcF9kb2MsCiAiTC5wb3AoW2luZGV4XSkgLT4gaXRlbSAtLSByZW1vdmUgYW5kIHJldHVybiBpdGVtIGF0IGluZGV4IChkZWZhdWx0IGxhc3QpLlxuIgogIlJhaXNlcyBJbmRleEVycm9yIGlmIGxpc3QgaXMgZW1wdHkgb3IgaW5kZXggaXMgb3V0IG9mIHJhbmdlLiIpOwogUHlEb2NfU1RSVkFSKHJlbW92ZV9kb2MsCi0iTC5yZW1vdmUodmFsdWUpIC0tIHJlbW92ZSBmaXJzdCBvY2N1cnJlbmNlIG9mIHZhbHVlLlxuIgorIkwucmVtb3ZlKHZhbHVlKSAtPiBOb25lIC0tIHJlbW92ZSBmaXJzdCBvY2N1cnJlbmNlIG9mIHZhbHVlLlxuIgogIlJhaXNlcyBWYWx1ZUVycm9yIGlmIHRoZSB2YWx1ZSBpcyBub3QgcHJlc2VudC4iKTsKIFB5RG9jX1NUUlZBUihpbmRleF9kb2MsCiAiTC5pbmRleCh2YWx1ZSwgW3N0YXJ0LCBbc3RvcF1dKSAtPiBpbnRlZ2VyIC0tIHJldHVybiBmaXJzdCBpbmRleCBvZiB2YWx1ZS5cbiIKQEAgLTIzMzMsNyArMjM0MSw3IEBACiBQeURvY19TVFJWQVIocmV2ZXJzZV9kb2MsCiAiTC5yZXZlcnNlKCkgLS0gcmV2ZXJzZSAqSU4gUExBQ0UqIik7CiBQeURvY19TVFJWQVIoc29ydF9kb2MsCi0iTC5zb3J0KGtleT1Ob25lLCByZXZlcnNlPUZhbHNlKSAtLSBzdGFibGUgc29ydCAqSU4gUExBQ0UqIik7CisiTC5zb3J0KGtleT1Ob25lLCByZXZlcnNlPUZhbHNlKSAtPiBOb25lIC0tIHN0YWJsZSBzb3J0ICpJTiBQTEFDRSoiKTsKIAogc3RhdGljIFB5T2JqZWN0ICpsaXN0X3N1YnNjcmlwdChQeUxpc3RPYmplY3QqLCBQeU9iamVjdCopOwogCkBAIC0yMzQxLDkgKzIzNDksMTEgQEAKICAgICB7Il9fZ2V0aXRlbV9fIiwgKFB5Q0Z1bmN0aW9uKWxpc3Rfc3Vic2NyaXB0LCBNRVRIX098TUVUSF9DT0VYSVNULCBnZXRpdGVtX2RvY30sCiAgICAgeyJfX3JldmVyc2VkX18iLChQeUNGdW5jdGlvbilsaXN0X3JldmVyc2VkLCBNRVRIX05PQVJHUywgcmV2ZXJzZWRfZG9jfSwKICAgICB7Il9fc2l6ZW9mX18iLCAgKFB5Q0Z1bmN0aW9uKWxpc3Rfc2l6ZW9mLCBNRVRIX05PQVJHUywgc2l6ZW9mX2RvY30sCisgICAgeyJjbGVhciIsICAgICAgICAgICAoUHlDRnVuY3Rpb24pbGlzdGNsZWFyLCAgIE1FVEhfTk9BUkdTLCBjbGVhcl9kb2N9LAorICAgIHsiY29weSIsICAgICAgICAgICAgKFB5Q0Z1bmN0aW9uKWxpc3Rjb3B5LCAgIE1FVEhfTk9BUkdTLCBjb3B5X2RvY30sCiAgICAgeyJhcHBlbmQiLCAgICAgICAgICAoUHlDRnVuY3Rpb24pbGlzdGFwcGVuZCwgIE1FVEhfTywgYXBwZW5kX2RvY30sCiAgICAgeyJpbnNlcnQiLCAgICAgICAgICAoUHlDRnVuY3Rpb24pbGlzdGluc2VydCwgIE1FVEhfVkFSQVJHUywgaW5zZXJ0X2RvY30sCi0gICAgeyJleHRlbmQiLCAgICAgIChQeUNGdW5jdGlvbilsaXN0ZXh0ZW5kLCAgTUVUSF9PLCBleHRlbmRfZG9jfSwKKyAgICB7ImV4dGVuZCIsICAgICAgICAgIChQeUNGdW5jdGlvbilsaXN0ZXh0ZW5kLCAgTUVUSF9PLCBleHRlbmRfZG9jfSwKICAgICB7InBvcCIsICAgICAgICAgICAgIChQeUNGdW5jdGlvbilsaXN0cG9wLCAgICAgTUVUSF9WQVJBUkdTLCBwb3BfZG9jfSwKICAgICB7InJlbW92ZSIsICAgICAgICAgIChQeUNGdW5jdGlvbilsaXN0cmVtb3ZlLCAgTUVUSF9PLCByZW1vdmVfZG9jfSwKICAgICB7ImluZGV4IiwgICAgICAgICAgIChQeUNGdW5jdGlvbilsaXN0aW5kZXgsICAgTUVUSF9WQVJBUkdTLCBpbmRleF9kb2N9LApAQCAtMjQwNiw3ICsyNDE2LDcgQEAKICAgICAgICAgICAgIHNyYyA9IHNlbGYtPm9iX2l0ZW07CiAgICAgICAgICAgICBkZXN0ID0gKChQeUxpc3RPYmplY3QgKilyZXN1bHQpLT5vYl9pdGVtOwogICAgICAgICAgICAgZm9yIChjdXIgPSBzdGFydCwgaSA9IDA7IGkgPCBzbGljZWxlbmd0aDsKLSAgICAgICAgICAgICAgICAgY3VyICs9IHN0ZXAsIGkrKykgeworICAgICAgICAgICAgICAgICBjdXIgKz0gKHNpemVfdClzdGVwLCBpKyspIHsKICAgICAgICAgICAgICAgICBpdCA9IHNyY1tjdXJdOwogICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihpdCk7CiAgICAgICAgICAgICAgICAgZGVzdFtpXSA9IGl0OwpAQCAtMjQ5Nyw3ICsyNTA3LDcgQEAKICAgICAgICAgICAgICAgICAgICAgc2VsZi0+b2JfaXRlbSArIGN1ciArIDEsCiAgICAgICAgICAgICAgICAgICAgIGxpbSAqIHNpemVvZihQeU9iamVjdCAqKSk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBjdXIgPSBzdGFydCArIHNsaWNlbGVuZ3RoKnN0ZXA7CisgICAgICAgICAgICBjdXIgPSBzdGFydCArIChzaXplX3Qpc2xpY2VsZW5ndGggKiBzdGVwOwogICAgICAgICAgICAgaWYgKGN1ciA8IChzaXplX3QpUHlfU0laRShzZWxmKSkgewogICAgICAgICAgICAgICAgIG1lbW1vdmUoc2VsZi0+b2JfaXRlbSArIGN1ciAtIHNsaWNlbGVuZ3RoLAogICAgICAgICAgICAgICAgICAgICBzZWxmLT5vYl9pdGVtICsgY3VyLApAQCAtMjU2MSw3ICsyNTcxLDcgQEAKICAgICAgICAgICAgIHNlbGZpdGVtcyA9IHNlbGYtPm9iX2l0ZW07CiAgICAgICAgICAgICBzZXFpdGVtcyA9IFB5U2VxdWVuY2VfRmFzdF9JVEVNUyhzZXEpOwogICAgICAgICAgICAgZm9yIChjdXIgPSBzdGFydCwgaSA9IDA7IGkgPCBzbGljZWxlbmd0aDsKLSAgICAgICAgICAgICAgICAgY3VyICs9IHN0ZXAsIGkrKykgeworICAgICAgICAgICAgICAgICBjdXIgKz0gKHNpemVfdClzdGVwLCBpKyspIHsKICAgICAgICAgICAgICAgICBnYXJiYWdlW2ldID0gc2VsZml0ZW1zW2N1cl07CiAgICAgICAgICAgICAgICAgaW5zID0gc2VxaXRlbXNbaV07CiAgICAgICAgICAgICAgICAgUHlfSU5DUkVGKGlucyk7CmRpZmYgLS1naXQgYS9PYmplY3RzL2xvbmdvYmplY3QuYyBiL09iamVjdHMvbG9uZ29iamVjdC5jCmluZGV4IGEwYjE2YTYuLmFiNDlmMjggMTAwNjQ0Ci0tLSBhL09iamVjdHMvbG9uZ29iamVjdC5jCisrKyBiL09iamVjdHMvbG9uZ29iamVjdC5jCkBAIC0zMjIsOCArMzIyLDE1IEBACiAjZGVmaW5lIFBZX0FCU19MT05HX01JTiAgICAgICAgICgwLSh1bnNpZ25lZCBsb25nKUxPTkdfTUlOKQogI2RlZmluZSBQWV9BQlNfU1NJWkVfVF9NSU4gICAgICAoMC0oc2l6ZV90KVBZX1NTSVpFX1RfTUlOKQogCi0vKiBHZXQgYSBDIGxvbmcgaW50IGZyb20gYSBsb25nIGludCBvYmplY3QuCi0gICBSZXR1cm5zIC0xIGFuZCBzZXRzIGFuIGVycm9yIGNvbmRpdGlvbiBpZiBvdmVyZmxvdyBvY2N1cnMuICovCisvKiBHZXQgYSBDIGxvbmcgaW50IGZyb20gYSBsb25nIGludCBvYmplY3Qgb3IgYW55IG9iamVjdCB0aGF0IGhhcyBhbiBfX2ludF9fCisgICBtZXRob2QuCisKKyAgIE9uIG92ZXJmbG93LCByZXR1cm4gLTEgYW5kIHNldCAqb3ZlcmZsb3cgdG8gMSBvciAtMSBkZXBlbmRpbmcgb24gdGhlIHNpZ24gb2YKKyAgIHRoZSByZXN1bHQuICBPdGhlcndpc2UgKm92ZXJmbG93IGlzIDAuCisKKyAgIEZvciBvdGhlciBlcnJvcnMgKGUuZy4sIFR5cGVFcnJvciksIHJldHVybiAtMSBhbmQgc2V0IGFuIGVycm9yIGNvbmRpdGlvbi4KKyAgIEluIHRoaXMgY2FzZSAqb3ZlcmZsb3cgd2lsbCBiZSAwLgorKi8KIAogbG9uZwogUHlMb25nX0FzTG9uZ0FuZE92ZXJmbG93KFB5T2JqZWN0ICp2diwgaW50ICpvdmVyZmxvdykKQEAgLTQxMiw2ICs0MTksOSBAQAogICAgIHJldHVybiByZXM7CiB9CiAKKy8qIEdldCBhIEMgbG9uZyBpbnQgZnJvbSBhIGxvbmcgaW50IG9iamVjdCBvciBhbnkgb2JqZWN0IHRoYXQgaGFzIGFuIF9faW50X18KKyAgIG1ldGhvZC4gIFJldHVybiAtMSBhbmQgc2V0IGFuIGVycm9yIGlmIG92ZXJmbG93IG9jY3Vycy4gKi8KKwogbG9uZwogUHlMb25nX0FzTG9uZyhQeU9iamVjdCAqb2JqKQogewpAQCAtOTIzLDcgKzkzMyw3IEBACiAKIH0KIAotLyogQ3JlYXRlIGEgbmV3IGxvbmcgKG9yIGludCkgb2JqZWN0IGZyb20gYSBDIHBvaW50ZXIgKi8KKy8qIENyZWF0ZSBhIG5ldyBsb25nIGludCBvYmplY3QgZnJvbSBhIEMgcG9pbnRlciAqLwogCiBQeU9iamVjdCAqCiBQeUxvbmdfRnJvbVZvaWRQdHIodm9pZCAqcCkKQEAgLTk0MSwxNSArOTUxLDExIEBACiAKIH0KIAotLyogR2V0IGEgQyBwb2ludGVyIGZyb20gYSBsb25nIG9iamVjdCAob3IgYW4gaW50IG9iamVjdCBpbiBzb21lIGNhc2VzKSAqLworLyogR2V0IGEgQyBwb2ludGVyIGZyb20gYSBsb25nIGludCBvYmplY3QuICovCiAKIHZvaWQgKgogUHlMb25nX0FzVm9pZFB0cihQeU9iamVjdCAqdnYpCiB7Ci0gICAgLyogVGhpcyBmdW5jdGlvbiB3aWxsIGFsbG93IGludCBvciBsb25nIG9iamVjdHMuIElmIHZ2IGlzIG5laXRoZXIsCi0gICAgICAgdGhlbiB0aGUgUHlMb25nX0FzTG9uZyooKSBmdW5jdGlvbnMgd2lsbCByYWlzZSB0aGUgZXhjZXB0aW9uOgotICAgICAgIFB5RXhjX1N5c3RlbUVycm9yLCAiYmFkIGFyZ3VtZW50IHRvIGludGVybmFsIGZ1bmN0aW9uIgotICAgICovCiAjaWYgU0laRU9GX1ZPSURfUCA8PSBTSVpFT0ZfTE9ORwogICAgIGxvbmcgeDsKIApAQCAtMTEzMCw4ICsxMTM2LDggQEAKICAgICByZXR1cm4gKFB5T2JqZWN0ICopdjsKIH0KIAotLyogR2V0IGEgQyBQWV9MT05HX0xPTkcgaW50IGZyb20gYSBsb25nIGludCBvYmplY3QuCi0gICBSZXR1cm4gLTEgYW5kIHNldCBhbiBlcnJvciBpZiBvdmVyZmxvdyBvY2N1cnMuICovCisvKiBHZXQgYSBDIGxvbmcgbG9uZyBpbnQgZnJvbSBhIGxvbmcgaW50IG9iamVjdCBvciBhbnkgb2JqZWN0IHRoYXQgaGFzIGFuCisgICBfX2ludF9fIG1ldGhvZC4gIFJldHVybiAtMSBhbmQgc2V0IGFuIGVycm9yIGlmIG92ZXJmbG93IG9jY3Vycy4gKi8KIAogUFlfTE9OR19MT05HCiBQeUxvbmdfQXNMb25nTG9uZyhQeU9iamVjdCAqdnYpCkBAIC0xMTkzLDEwICsxMTk5LDE0IEBACiAgICAgaW50IG9uZSA9IDE7CiAgICAgaW50IHJlczsKIAotICAgIGlmICh2diA9PSBOVUxMIHx8ICFQeUxvbmdfQ2hlY2sodnYpKSB7CisgICAgaWYgKHZ2ID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CiAgICAgICAgIHJldHVybiAodW5zaWduZWQgUFlfTE9OR19MT05HKS0xOwogICAgIH0KKyAgICBpZiAoIVB5TG9uZ19DaGVjayh2dikpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImFuIGludGVnZXIgaXMgcmVxdWlyZWQiKTsKKyAgICAgICAgcmV0dXJuICh1bnNpZ25lZCBQWV9MT05HX0xPTkcpLTE7CisgICAgfQogCiAgICAgdiA9IChQeUxvbmdPYmplY3QqKXZ2OwogICAgIHN3aXRjaChQeV9TSVpFKHYpKSB7CkBAIC0xMjgzLDEyICsxMjkzLDE0IEBACiB9CiAjdW5kZWYgSVNfTElUVExFX0VORElBTgogCi0vKiBHZXQgYSBDIGxvbmcgbG9uZyBpbnQgZnJvbSBhIFB5dGhvbiBsb25nIG9yIFB5dGhvbiBpbnQgb2JqZWN0LgotICAgT24gb3ZlcmZsb3csIHJldHVybnMgLTEgYW5kIHNldHMgKm92ZXJmbG93IHRvIDEgb3IgLTEgZGVwZW5kaW5nCi0gICBvbiB0aGUgc2lnbiBvZiB0aGUgcmVzdWx0LiAgT3RoZXJ3aXNlICpvdmVyZmxvdyBpcyAwLgorLyogR2V0IGEgQyBsb25nIGxvbmcgaW50IGZyb20gYSBsb25nIGludCBvYmplY3Qgb3IgYW55IG9iamVjdCB0aGF0IGhhcyBhbgorICAgX19pbnRfXyBtZXRob2QuCiAKLSAgIEZvciBvdGhlciBlcnJvcnMgKGUuZy4sIHR5cGUgZXJyb3IpLCByZXR1cm5zIC0xIGFuZCBzZXRzIGFuIGVycm9yCi0gICBjb25kaXRpb24uCisgICBPbiBvdmVyZmxvdywgcmV0dXJuIC0xIGFuZCBzZXQgKm92ZXJmbG93IHRvIDEgb3IgLTEgZGVwZW5kaW5nIG9uIHRoZSBzaWduIG9mCisgICB0aGUgcmVzdWx0LiAgT3RoZXJ3aXNlICpvdmVyZmxvdyBpcyAwLgorCisgICBGb3Igb3RoZXIgZXJyb3JzIChlLmcuLCBUeXBlRXJyb3IpLCByZXR1cm4gLTEgYW5kIHNldCBhbiBlcnJvciBjb25kaXRpb24uCisgICBJbiB0aGlzIGNhc2UgKm92ZXJmbG93IHdpbGwgYmUgMC4KICovCiAKIFBZX0xPTkdfTE9ORwpAQCAtMTM4MiwxMCArMTM5NCw4IEBACiAKICNkZWZpbmUgQ0hFQ0tfQklOT1Aodix3KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgIGlmICghUHlMb25nX0NoZWNrKHYpIHx8ICFQeUxvbmdfQ2hlY2sodykpIHsgICAgIFwKLSAgICAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7ICAgICAgICAgICAgICAgXAotICAgICAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOyAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgaWYgKCFQeUxvbmdfQ2hlY2sodikgfHwgIVB5TG9uZ19DaGVjayh3KSkgICAgICAgXAorICAgICAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOyAgICAgICAgICAgICAgICAgICBcCiAgICAgfSB3aGlsZSgwKQogCiAvKiBiaXRzX2luX2RpZ2l0KGQpIHJldHVybnMgdGhlIHVuaXF1ZSBpbnRlZ2VyIGsgc3VjaCB0aGF0IDIqKihrLTEpIDw9IGQgPApAQCAtMTU0OSw3ICsxNTU5LDcgQEAKICAgICBQeU9iamVjdCAqc3RyOwogICAgIFB5X3NzaXplX3Qgc2l6ZSwgc3RybGVuLCBzaXplX2EsIGksIGo7CiAgICAgZGlnaXQgKnBvdXQsICpwaW4sIHJlbSwgdGVucG93OwotICAgIFB5X1VOSUNPREUgKnA7CisgICAgdW5zaWduZWQgY2hhciAqcDsKICAgICBpbnQgbmVnYXRpdmU7CiAKICAgICBhID0gKFB5TG9uZ09iamVjdCAqKWFhOwpAQCAtMTYxNywxNCArMTYyNywxNSBAQAogICAgICAgICB0ZW5wb3cgKj0gMTA7CiAgICAgICAgIHN0cmxlbisrOwogICAgIH0KLSAgICBzdHIgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgc3RybGVuKTsKKyAgICBzdHIgPSBQeVVuaWNvZGVfTmV3KHN0cmxlbiwgJzknKTsKICAgICBpZiAoc3RyID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKHNjcmF0Y2gpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKICAgICAvKiBmaWxsIHRoZSBzdHJpbmcgcmlnaHQtdG8tbGVmdCAqLwotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpICsgc3RybGVuOworICAgIGFzc2VydChQeVVuaWNvZGVfS0lORChzdHIpID09IFB5VW5pY29kZV8xQllURV9LSU5EKTsKKyAgICBwID0gUHlVbmljb2RlXzFCWVRFX0RBVEEoc3RyKSArIHN0cmxlbjsKICAgICAqcCA9ICdcMCc7CiAgICAgLyogcG91dFswXSB0aHJvdWdoIHBvdXRbc2l6ZS0yXSBjb250cmlidXRlIGV4YWN0bHkKICAgICAgICBfUHlMb25nX0RFQ0lNQUxfU0hJRlQgZGlnaXRzIGVhY2ggKi8KQEAgLTE2NDcsNyArMTY1OCw3IEBACiAgICAgICAgICotLXAgPSAnLSc7CiAKICAgICAvKiBjaGVjayB3ZSd2ZSBjb3VudGVkIGNvcnJlY3RseSAqLwotICAgIGFzc2VydChwID09IFB5VW5pY29kZV9BU19VTklDT0RFKHN0cikpOworICAgIGFzc2VydChwID09IFB5VW5pY29kZV8xQllURV9EQVRBKHN0cikpOwogICAgIFB5X0RFQ1JFRihzY3JhdGNoKTsKICAgICByZXR1cm4gKFB5T2JqZWN0ICopc3RyOwogfQpAQCAtMTY2MCwxMCArMTY3MSwxMiBAQAogX1B5TG9uZ19Gb3JtYXQoUHlPYmplY3QgKmFhLCBpbnQgYmFzZSkKIHsKICAgICByZWdpc3RlciBQeUxvbmdPYmplY3QgKmEgPSAoUHlMb25nT2JqZWN0ICopYWE7Ci0gICAgUHlPYmplY3QgKnN0cjsKKyAgICBQeU9iamVjdCAqdjsKICAgICBQeV9zc2l6ZV90IGksIHN6OwogICAgIFB5X3NzaXplX3Qgc2l6ZV9hOwotICAgIFB5X1VOSUNPREUgKnAsIHNpZ24gPSAnXDAnOworICAgIGNoYXIgKnA7CisgICAgY2hhciBzaWduID0gJ1wwJzsKKyAgICBjaGFyICpidWZmZXI7CiAgICAgaW50IGJpdHM7CiAKICAgICBhc3NlcnQoYmFzZSA9PSAyIHx8IGJhc2UgPT0gOCB8fCBiYXNlID09IDEwIHx8IGJhc2UgPT0gMTYpOwpAQCAtMTY5Myw3ICsxNzA2LDcgQEAKICAgICB9CiAgICAgLyogY29tcHV0ZSBsZW5ndGggb2Ygb3V0cHV0IHN0cmluZzogYWxsb3cgMiBjaGFyYWN0ZXJzIGZvciBwcmVmaXggYW5kCiAgICAgICAgMSBmb3IgcG9zc2libGUgJy0nIHNpZ24uICovCi0gICAgaWYgKHNpemVfYSA+IChQWV9TU0laRV9UX01BWCAtIDMpIC8gUHlMb25nX1NISUZUKSB7CisgICAgaWYgKHNpemVfYSA+IChQWV9TU0laRV9UX01BWCAtIDMpIC8gUHlMb25nX1NISUZUIC8gc2l6ZW9mKFB5X1VDUzQpKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgImludCBpcyB0b28gbGFyZ2UgdG8gZm9ybWF0Iik7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTcwMiwxMSArMTcxNSwxMiBAQAogICAgICAgIGlzIHNhZmUgZnJvbSBvdmVyZmxvdyAqLwogICAgIHN6ID0gMyArIChzaXplX2EgKiBQeUxvbmdfU0hJRlQgKyAoYml0cyAtIDEpKSAvIGJpdHM7CiAgICAgYXNzZXJ0KHN6ID49IDApOwotICAgIHN0ciA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBzeik7Ci0gICAgaWYgKHN0ciA9PSBOVUxMKQorICAgIGJ1ZmZlciA9IFB5TWVtX01hbGxvYyhzeik7CisgICAgaWYgKGJ1ZmZlciA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpICsgc3o7Ci0gICAgKnAgPSAnXDAnOworICAgIH0KKyAgICBwID0gJmJ1ZmZlcltzel07CiAgICAgaWYgKFB5X1NJWkUoYSkgPCAwKQogICAgICAgICBzaWduID0gJy0nOwogCkBAIC0xNzIyLDEwICsxNzM2LDEwIEBACiAgICAgICAgICAgICBhY2N1bWJpdHMgKz0gUHlMb25nX1NISUZUOwogICAgICAgICAgICAgYXNzZXJ0KGFjY3VtYml0cyA+PSBiaXRzKTsKICAgICAgICAgICAgIGRvIHsKLSAgICAgICAgICAgICAgICBQeV9VTklDT0RFIGNkaWdpdDsKLSAgICAgICAgICAgICAgICBjZGlnaXQgPSAoUHlfVU5JQ09ERSkoYWNjdW0gJiAoYmFzZSAtIDEpKTsKKyAgICAgICAgICAgICAgICBjaGFyIGNkaWdpdDsKKyAgICAgICAgICAgICAgICBjZGlnaXQgPSAoY2hhcikoYWNjdW0gJiAoYmFzZSAtIDEpKTsKICAgICAgICAgICAgICAgICBjZGlnaXQgKz0gKGNkaWdpdCA8IDEwKSA/ICcwJyA6ICdhJy0xMDsKLSAgICAgICAgICAgICAgICBhc3NlcnQocCA+IFB5VW5pY29kZV9BU19VTklDT0RFKHN0cikpOworICAgICAgICAgICAgICAgIGFzc2VydChwID4gYnVmZmVyKTsKICAgICAgICAgICAgICAgICAqLS1wID0gY2RpZ2l0OwogICAgICAgICAgICAgICAgIGFjY3VtYml0cyAtPSBiaXRzOwogICAgICAgICAgICAgICAgIGFjY3VtID4+PSBiaXRzOwpAQCAtMTc0MiwxOSArMTc1Niw5IEBACiAgICAgKi0tcCA9ICcwJzsKICAgICBpZiAoc2lnbikKICAgICAgICAgKi0tcCA9IHNpZ247Ci0gICAgaWYgKHAgIT0gUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKSkgewotICAgICAgICBQeV9VTklDT0RFICpxID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyKTsKLSAgICAgICAgYXNzZXJ0KHAgPiBxKTsKLSAgICAgICAgZG8gewotICAgICAgICB9IHdoaWxlICgoKnErKyA9ICpwKyspICE9ICdcMCcpOwotICAgICAgICBxLS07Ci0gICAgICAgIGlmIChQeVVuaWNvZGVfUmVzaXplKCZzdHIsKFB5X3NzaXplX3QpIChxIC0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpKSkpIHsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihzdHIpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXN0cjsKKyAgICB2ID0gUHlVbmljb2RlX0RlY29kZUFTQ0lJKHAsICZidWZmZXJbc3pdIC0gcCwgTlVMTCk7CisgICAgUHlNZW1fRnJlZShidWZmZXIpOworICAgIHJldHVybiB2OwogfQogCiAvKiBUYWJsZSBvZiBkaWdpdCB2YWx1ZXMgZm9yIDgtYml0IHN0cmluZyAtPiBpbnRlZ2VyIGNvbnZlcnNpb24uCkBAIC0yMTMyLDIzICsyMTM2LDI2IEBACiBQeU9iamVjdCAqCiBQeUxvbmdfRnJvbVVuaWNvZGUoUHlfVU5JQ09ERSAqdSwgUHlfc3NpemVfdCBsZW5ndGgsIGludCBiYXNlKQogeworICAgIFB5T2JqZWN0ICp2LCAqdW5pY29kZSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSh1LCBsZW5ndGgpOworICAgIGlmICh1bmljb2RlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHYgPSBQeUxvbmdfRnJvbVVuaWNvZGVPYmplY3QodW5pY29kZSwgYmFzZSk7CisgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgIHJldHVybiB2OworfQorCitQeU9iamVjdCAqCitQeUxvbmdfRnJvbVVuaWNvZGVPYmplY3QoUHlPYmplY3QgKnUsIGludCBiYXNlKQorewogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAgICAgUHlPYmplY3QgKmFzY2lpZGlnOwogICAgIGNoYXIgKmJ1ZmZlciwgKmVuZDsKLSAgICBQeV9zc2l6ZV90IGksIGJ1ZmxlbjsKLSAgICBQeV9VTklDT0RFICpwdHI7CisgICAgUHlfc3NpemVfdCBidWZsZW47CiAKLSAgICBhc2NpaWRpZyA9IFB5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsVG9BU0NJSSh1LCBsZW5ndGgpOworICAgIGFzY2lpZGlnID0gX1B5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsQW5kU3BhY2VUb0FTQ0lJKHUpOwogICAgIGlmIChhc2NpaWRpZyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAvKiBSZXBsYWNlIG5vbi1BU0NJSSB3aGl0ZXNwYWNlIHdpdGggJyAnICovCi0gICAgcHRyID0gUHlVbmljb2RlX0FTX1VOSUNPREUoYXNjaWlkaWcpOwotICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewotICAgICAgICBQeV9VTklDT0RFIGNoID0gcHRyW2ldOwotICAgICAgICBpZiAoY2ggPiAxMjcgJiYgUHlfVU5JQ09ERV9JU1NQQUNFKGNoKSkKLSAgICAgICAgICAgIHB0cltpXSA9ICcgJzsKLSAgICB9Ci0gICAgYnVmZmVyID0gX1B5VW5pY29kZV9Bc1N0cmluZ0FuZFNpemUoYXNjaWlkaWcsICZidWZsZW4pOworICAgIGJ1ZmZlciA9IFB5VW5pY29kZV9Bc1VURjhBbmRTaXplKGFzY2lpZGlnLCAmYnVmbGVuKTsKICAgICBpZiAoYnVmZmVyID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKGFzY2lpZGlnKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yNDQ1LDggKzI0NTIsNyBAQAogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICB9CiAgICAgfQotICAgIGFzc2VydCgxIDw9IHhfc2l6ZSAmJgotICAgICAgICAgICB4X3NpemUgPD0gKFB5X3NzaXplX3QpKHNpemVvZih4X2RpZ2l0cykvc2l6ZW9mKGRpZ2l0KSkpOworICAgIGFzc2VydCgxIDw9IHhfc2l6ZSAmJiB4X3NpemUgPD0gKFB5X3NzaXplX3QpUHlfQVJSQVlfTEVOR1RIKHhfZGlnaXRzKSk7CiAKICAgICAvKiBSb3VuZCwgYW5kIGNvbnZlcnQgdG8gZG91YmxlLiAqLwogICAgIHhfZGlnaXRzWzBdICs9IGhhbGZfZXZlbl9jb3JyZWN0aW9uW3hfZGlnaXRzWzBdICYgN107CkBAIC0yNDgzLDEwICsyNDg5LDE0IEBACiAgICAgUHlfc3NpemVfdCBleHBvbmVudDsKICAgICBkb3VibGUgeDsKIAotICAgIGlmICh2ID09IE5VTEwgfHwgIVB5TG9uZ19DaGVjayh2KSkgeworICAgIGlmICh2ID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CiAgICAgICAgIHJldHVybiAtMS4wOwogICAgIH0KKyAgICBpZiAoIVB5TG9uZ19DaGVjayh2KSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiYW4gaW50ZWdlciBpcyByZXF1aXJlZCIpOworICAgICAgICByZXR1cm4gLTEuMDsKKyAgICB9CiAgICAgeCA9IF9QeUxvbmdfRnJleHAoKFB5TG9uZ09iamVjdCAqKXYsICZleHBvbmVudCk7CiAgICAgaWYgKCh4ID09IC0xLjAgJiYgUHlFcnJfT2NjdXJyZWQoKSkgfHwgZXhwb25lbnQgPiBEQkxfTUFYX0VYUCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKQEAgLTM2MTEsOCArMzYyMSw3IEBACiAgICAgZWxzZSB7CiAgICAgICAgIFB5X0RFQ1JFRihhKTsKICAgICAgICAgUHlfREVDUkVGKGIpOwotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICB9CiAKICAgICBpZiAoUHlfU0laRShiKSA8IDApIHsgIC8qIGlmIGV4cG9uZW50IGlzIG5lZ2F0aXZlICovCkBAIC00MTM5LDkgKzQxNDgsNyBAQAogICAgIH0KIAogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2soeCkpCi0gICAgICAgIHJldHVybiBQeUxvbmdfRnJvbVVuaWNvZGUoUHlVbmljb2RlX0FTX1VOSUNPREUoeCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHgpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbnQpYmFzZSk7CisgICAgICAgIHJldHVybiBQeUxvbmdfRnJvbVVuaWNvZGVPYmplY3QoeCwgKGludCliYXNlKTsKICAgICBlbHNlIGlmIChQeUJ5dGVBcnJheV9DaGVjayh4KSB8fCBQeUJ5dGVzX0NoZWNrKHgpKSB7CiAgICAgICAgIC8qIFNpbmNlIFB5TG9uZ19Gcm9tU3RyaW5nIGRvZXNuJ3QgaGF2ZSBhIGxlbmd0aCBwYXJhbWV0ZXIsCiAgICAgICAgICAqIGNoZWNrIGhlcmUgZm9yIHBvc3NpYmxlIE5VTHMgaW4gdGhlIHN0cmluZy4gKi8KQEAgLTQyMjMsOSArNDIzMCw4IEBACiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6X19mb3JtYXRfXyIsICZmb3JtYXRfc3BlYykpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJldHVybiBfUHlMb25nX0Zvcm1hdEFkdmFuY2VkKHNlbGYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoZm9ybWF0X3NwZWMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShmb3JtYXRfc3BlYykpOworICAgIHJldHVybiBfUHlMb25nX0Zvcm1hdEFkdmFuY2VkKHNlbGYsIGZvcm1hdF9zcGVjLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKGZvcm1hdF9zcGVjKSk7CiB9CiAKIC8qIFJldHVybiBhIHBhaXIgKHEsIHIpIHN1Y2ggdGhhdCBhID0gYiAqIHEgKyByLCBhbmQKZGlmZiAtLWdpdCBhL09iamVjdHMvbWVtb3J5b2JqZWN0LmMgYi9PYmplY3RzL21lbW9yeW9iamVjdC5jCmluZGV4IDJlMzJiMmEuLjI5NWE3NDIgMTAwNjQ0Ci0tLSBhL09iamVjdHMvbWVtb3J5b2JqZWN0LmMKKysrIGIvT2JqZWN0cy9tZW1vcnlvYmplY3QuYwpAQCAtODQsNiArODQsNyBAQAogICAgICAgICBQeU9iamVjdF9HQ19OZXcoUHlNZW1vcnlWaWV3T2JqZWN0LCAmUHlNZW1vcnlWaWV3X1R5cGUpOwogICAgIGlmIChtdmlldyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBtdmlldy0+aGFzaCA9IC0xOwogICAgIGR1cF9idWZmZXIoJm12aWV3LT52aWV3LCBpbmZvKTsKICAgICAvKiBOT1RFOiBtdmlldy0+dmlldy5vYmogc2hvdWxkIGFscmVhZHkgaGF2ZSBiZWVuIGluY3JlZidlZCBhcwogICAgICAgIHBhcnQgb2YgUHlCdWZmZXJfRmlsbEluZm8oKS4gKi8KQEAgLTUxMiw2ICs1MTMsMzcgQEAKICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCI8bWVtb3J5IGF0ICVwPiIsIHNlbGYpOwogfQogCitzdGF0aWMgUHlfaGFzaF90CittZW1vcnlfaGFzaChQeU1lbW9yeVZpZXdPYmplY3QgKnNlbGYpCit7CisgICAgaWYgKHNlbGYtPmhhc2ggPT0gLTEpIHsKKyAgICAgICAgUHlfYnVmZmVyICp2aWV3ID0gJnNlbGYtPnZpZXc7CisgICAgICAgIENIRUNLX1JFTEVBU0VEX0lOVChzZWxmKTsKKyAgICAgICAgaWYgKHZpZXctPm5kaW0gPiAxKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY2FuJ3QgaGFzaCBtdWx0aS1kaW1lbnNpb25hbCBtZW1vcnl2aWV3IG9iamVjdCIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIGlmICh2aWV3LT5zdHJpZGVzICYmIHZpZXctPnN0cmlkZXNbMF0gIT0gdmlldy0+aXRlbXNpemUpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjYW4ndCBoYXNoIHN0cmlkZWQgbWVtb3J5dmlldyBvYmplY3QiKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBpZiAoIXZpZXctPnJlYWRvbmx5KSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY2FuJ3QgaGFzaCB3cml0YWJsZSBtZW1vcnl2aWV3IG9iamVjdCIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIGlmICh2aWV3LT5vYmogIT0gTlVMTCAmJiBQeU9iamVjdF9IYXNoKHZpZXctPm9iaikgPT0gLTEpIHsKKyAgICAgICAgICAgIC8qIEtlZXAgdGhlIG9yaWdpbmFsIGVycm9yIG1lc3NhZ2UgKi8KKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICAvKiBDYW4ndCBmYWlsICovCisgICAgICAgIHNlbGYtPmhhc2ggPSBfUHlfSGFzaEJ5dGVzKCh1bnNpZ25lZCBjaGFyICopIHZpZXctPmJ1Ziwgdmlldy0+bGVuKTsKKyAgICB9CisgICAgcmV0dXJuIHNlbGYtPmhhc2g7Cit9CisKIC8qIFNlcXVlbmNlIG1ldGhvZHMgKi8KIHN0YXRpYyBQeV9zc2l6ZV90CiBtZW1vcnlfbGVuZ3RoKFB5TWVtb3J5Vmlld09iamVjdCAqc2VsZikKQEAgLTc3Myw4ICs4MDUsNyBAQAogX25vdGltcGw6CiAgICAgUHlCdWZmZXJfUmVsZWFzZSgmdnYpOwogICAgIFB5QnVmZmVyX1JlbGVhc2UoJnd3KTsKLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKIApAQCAtODMwLDcgKzg2MSw3IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfbnVtYmVyICovCiAgICAgJm1lbW9yeV9hc19zZXF1ZW5jZSwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYXNfc2VxdWVuY2UgKi8KICAgICAmbWVtb3J5X2FzX21hcHBpbmcsICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19tYXBwaW5nICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaGFzaCAqLworICAgIChoYXNoZnVuYyltZW1vcnlfaGFzaCwgICAgICAgICAgICAgICAgICAgIC8qIHRwX2hhc2ggKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jYWxsICovCiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc3RyICovCiAgICAgUHlPYmplY3RfR2VuZXJpY0dldEF0dHIsICAgICAgICAgICAgICAgICAgLyogdHBfZ2V0YXR0cm8gKi8KZGlmZiAtLWdpdCBhL09iamVjdHMvbWV0aG9kb2JqZWN0LmMgYi9PYmplY3RzL21ldGhvZG9iamVjdC5jCmluZGV4IGYxYTlmNGIuLmMzYTY0MDkgMTAwNjQ0Ci0tLSBhL09iamVjdHMvbWV0aG9kb2JqZWN0LmMKKysrIGIvT2JqZWN0cy9tZXRob2RvYmplY3QuYwpAQCAtNDQsNyArNDQsNyBAQAogICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiAoKFB5Q0Z1bmN0aW9uT2JqZWN0ICopb3ApIC0+IG1fbWwgLT4gbWxfbWV0aDsKKyAgICByZXR1cm4gUHlDRnVuY3Rpb25fR0VUX0ZVTkNUSU9OKG9wKTsKIH0KIAogUHlPYmplY3QgKgpAQCAtNTQsNyArNTQsNyBAQAogICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiAoKFB5Q0Z1bmN0aW9uT2JqZWN0ICopb3ApIC0+IG1fc2VsZjsKKyAgICByZXR1cm4gUHlDRnVuY3Rpb25fR0VUX1NFTEYob3ApOwogfQogCiBpbnQKQEAgLTY0LDcgKzY0LDcgQEAKICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9Ci0gICAgcmV0dXJuICgoUHlDRnVuY3Rpb25PYmplY3QgKilvcCkgLT4gbV9tbCAtPiBtbF9mbGFnczsKKyAgICByZXR1cm4gUHlDRnVuY3Rpb25fR0VUX0ZMQUdTKG9wKTsKIH0KIAogUHlPYmplY3QgKgpAQCAtMTUxLDYgKzE1MSw0MSBAQAogICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhtLT5tX21sLT5tbF9uYW1lKTsKIH0KIAorc3RhdGljIFB5T2JqZWN0ICoKK21ldGhfZ2V0X19xdWFsbmFtZV9fKFB5Q0Z1bmN0aW9uT2JqZWN0ICptLCB2b2lkICpjbG9zdXJlKQoreworICAgIC8qIElmIF9fc2VsZl9fIGlzIGEgbW9kdWxlIG9yIE5VTEwsIHJldHVybiBtLl9fbmFtZV9fCisgICAgICAgKGUuZy4gbGVuLl9fcXVhbG5hbWVfXyA9PSAnbGVuJykKKworICAgICAgIElmIF9fc2VsZl9fIGlzIGEgdHlwZSwgcmV0dXJuIG0uX19zZWxmX18uX19xdWFsbmFtZV9fICsgJy4nICsgbS5fX25hbWVfXworICAgICAgIChlLmcuIGRpY3QuZnJvbWtleXMuX19xdWFsbmFtZV9fID09ICdkaWN0LmZyb21rZXlzJykKKworICAgICAgIE90aGVyd2lzZSByZXR1cm4gdHlwZShtLl9fc2VsZl9fKS5fX3F1YWxuYW1lX18gKyAnLicgKyBtLl9fbmFtZV9fCisgICAgICAgKGUuZy4gW10uYXBwZW5kLl9fcXVhbG5hbWVfXyA9PSAnbGlzdC5hcHBlbmQnKSAqLworICAgIFB5T2JqZWN0ICp0eXBlLCAqdHlwZV9xdWFsbmFtZSwgKnJlczsKKyAgICBfUHlfSURFTlRJRklFUihfX3F1YWxuYW1lX18pOworCisgICAgaWYgKG0tPm1fc2VsZiA9PSBOVUxMIHx8IFB5TW9kdWxlX0NoZWNrKG0tPm1fc2VsZikpCisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhtLT5tX21sLT5tbF9uYW1lKTsKKworICAgIHR5cGUgPSBQeVR5cGVfQ2hlY2sobS0+bV9zZWxmKSA/IG0tPm1fc2VsZiA6IChQeU9iamVjdCopUHlfVFlQRShtLT5tX3NlbGYpOworCisgICAgdHlwZV9xdWFsbmFtZSA9IF9QeU9iamVjdF9HZXRBdHRySWQodHlwZSwgJlB5SWRfX19xdWFsbmFtZV9fKTsKKyAgICBpZiAodHlwZV9xdWFsbmFtZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHR5cGVfcXVhbG5hbWUpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICI8bWV0aG9kPi5fX2NsYXNzX18uIgorICAgICAgICAgICAgICAgICAgICAgICAgIl9fcXVhbG5hbWVfXyBpcyBub3QgYSB1bmljb2RlIG9iamVjdCIpOworICAgICAgICBQeV9YREVDUkVGKHR5cGVfcXVhbG5hbWUpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICByZXMgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVMuJXMiLCB0eXBlX3F1YWxuYW1lLCBtLT5tX21sLT5tbF9uYW1lKTsKKyAgICBQeV9ERUNSRUYodHlwZV9xdWFsbmFtZSk7CisgICAgcmV0dXJuIHJlczsKK30KKwogc3RhdGljIGludAogbWV0aF90cmF2ZXJzZShQeUNGdW5jdGlvbk9iamVjdCAqbSwgdmlzaXRwcm9jIHZpc2l0LCB2b2lkICphcmcpCiB7CkBAIC0xNjQsNyArMTk5LDcgQEAKIHsKICAgICBQeU9iamVjdCAqc2VsZjsKIAotICAgIHNlbGYgPSBtLT5tX3NlbGY7CisgICAgc2VsZiA9IFB5Q0Z1bmN0aW9uX0dFVF9TRUxGKG0pOwogICAgIGlmIChzZWxmID09IE5VTEwpCiAgICAgICAgIHNlbGYgPSBQeV9Ob25lOwogICAgIFB5X0lOQ1JFRihzZWxmKTsKQEAgLTE3NCw2ICsyMDksNyBAQAogc3RhdGljIFB5R2V0U2V0RGVmIG1ldGhfZ2V0c2V0cyBbXSA9IHsKICAgICB7Il9fZG9jX18iLCAgKGdldHRlciltZXRoX2dldF9fZG9jX18sICBOVUxMLCBOVUxMfSwKICAgICB7Il9fbmFtZV9fIiwgKGdldHRlciltZXRoX2dldF9fbmFtZV9fLCBOVUxMLCBOVUxMfSwKKyAgICB7Il9fcXVhbG5hbWVfXyIsIChnZXR0ZXIpbWV0aF9nZXRfX3F1YWxuYW1lX18sIE5VTEwsIE5VTEx9LAogICAgIHsiX19zZWxmX18iLCAoZ2V0dGVyKW1ldGhfZ2V0X19zZWxmX18sIE5VTEwsIE5VTEx9LAogICAgIHswfQogfTsKQEAgLTIwOCw4ICsyNDQsNyBAQAogICAgICAgICAhUHlDRnVuY3Rpb25fQ2hlY2soc2VsZikgfHwKICAgICAgICAgIVB5Q0Z1bmN0aW9uX0NoZWNrKG90aGVyKSkKICAgICB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIH0KICAgICBhID0gKFB5Q0Z1bmN0aW9uT2JqZWN0ICopc2VsZjsKICAgICBiID0gKFB5Q0Z1bmN0aW9uT2JqZWN0ICopb3RoZXI7CmRpZmYgLS1naXQgYS9PYmplY3RzL21vZHVsZW9iamVjdC5jIGIvT2JqZWN0cy9tb2R1bGVvYmplY3QuYwppbmRleCBmMzFiNWRhLi5iNjliY2U2IDEwMDY0NAotLS0gYS9PYmplY3RzL21vZHVsZW9iamVjdC5jCisrKyBiL09iamVjdHMvbW9kdWxlb2JqZWN0LmMKQEAgLTI3LDM2ICsyNyw0NSBAQAogCiAKIFB5T2JqZWN0ICoKLVB5TW9kdWxlX05ldyhjb25zdCBjaGFyICpuYW1lKQorUHlNb2R1bGVfTmV3T2JqZWN0KFB5T2JqZWN0ICpuYW1lKQogewogICAgIFB5TW9kdWxlT2JqZWN0ICptOwotICAgIFB5T2JqZWN0ICpuYW1lb2JqOwogICAgIG0gPSBQeU9iamVjdF9HQ19OZXcoUHlNb2R1bGVPYmplY3QsICZQeU1vZHVsZV9UeXBlKTsKICAgICBpZiAobSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBtLT5tZF9kZWYgPSBOVUxMOwogICAgIG0tPm1kX3N0YXRlID0gTlVMTDsKLSAgICBuYW1lb2JqID0gUHlVbmljb2RlX0Zyb21TdHJpbmcobmFtZSk7CiAgICAgbS0+bWRfZGljdCA9IFB5RGljdF9OZXcoKTsKLSAgICBpZiAobS0+bWRfZGljdCA9PSBOVUxMIHx8IG5hbWVvYmogPT0gTlVMTCkKKyAgICBpZiAobS0+bWRfZGljdCA9PSBOVUxMKQogICAgICAgICBnb3RvIGZhaWw7Ci0gICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKG0tPm1kX2RpY3QsICJfX25hbWVfXyIsIG5hbWVvYmopICE9IDApCisgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKG0tPm1kX2RpY3QsICJfX25hbWVfXyIsIG5hbWUpICE9IDApCiAgICAgICAgIGdvdG8gZmFpbDsKICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcobS0+bWRfZGljdCwgIl9fZG9jX18iLCBQeV9Ob25lKSAhPSAwKQogICAgICAgICBnb3RvIGZhaWw7CiAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKG0tPm1kX2RpY3QsICJfX3BhY2thZ2VfXyIsIFB5X05vbmUpICE9IDApCiAgICAgICAgIGdvdG8gZmFpbDsKLSAgICBQeV9ERUNSRUYobmFtZW9iaik7CiAgICAgUHlPYmplY3RfR0NfVHJhY2sobSk7CiAgICAgcmV0dXJuIChQeU9iamVjdCAqKW07CiAKICBmYWlsOgotICAgIFB5X1hERUNSRUYobmFtZW9iaik7CiAgICAgUHlfREVDUkVGKG0pOwogICAgIHJldHVybiBOVUxMOwogfQogCiBQeU9iamVjdCAqCitQeU1vZHVsZV9OZXcoY29uc3QgY2hhciAqbmFtZSkKK3sKKyAgICBQeU9iamVjdCAqbmFtZW9iaiwgKm1vZHVsZTsKKyAgICBuYW1lb2JqID0gUHlVbmljb2RlX0Zyb21TdHJpbmcobmFtZSk7CisgICAgaWYgKG5hbWVvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbW9kdWxlID0gUHlNb2R1bGVfTmV3T2JqZWN0KG5hbWVvYmopOworICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKKyAgICByZXR1cm4gbW9kdWxlOworfQorCisKK1B5T2JqZWN0ICoKIFB5TW9kdWxlX0NyZWF0ZTIoc3RydWN0IFB5TW9kdWxlRGVmKiBtb2R1bGUsIGludCBtb2R1bGVfYXBpX3ZlcnNpb24pCiB7CiAgICAgUHlPYmplY3QgKmQsICp2LCAqbjsKQEAgLTE2OSwyNCArMTc4LDM1IEBACiAgICAgcmV0dXJuIGQ7CiB9CiAKLWNvbnN0IGNoYXIgKgotUHlNb2R1bGVfR2V0TmFtZShQeU9iamVjdCAqbSkKK1B5T2JqZWN0KgorUHlNb2R1bGVfR2V0TmFtZU9iamVjdChQeU9iamVjdCAqbSkKIHsKICAgICBQeU9iamVjdCAqZDsKLSAgICBQeU9iamVjdCAqbmFtZW9iajsKKyAgICBQeU9iamVjdCAqbmFtZTsKICAgICBpZiAoIVB5TW9kdWxlX0NoZWNrKG0pKSB7CiAgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBkID0gKChQeU1vZHVsZU9iamVjdCAqKW0pLT5tZF9kaWN0OwogICAgIGlmIChkID09IE5VTEwgfHwKLSAgICAgICAgKG5hbWVvYmogPSBQeURpY3RfR2V0SXRlbVN0cmluZyhkLCAiX19uYW1lX18iKSkgPT0gTlVMTCB8fAotICAgICAgICAhUHlVbmljb2RlX0NoZWNrKG5hbWVvYmopKQorICAgICAgICAobmFtZSA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKGQsICJfX25hbWVfXyIpKSA9PSBOVUxMIHx8CisgICAgICAgICFQeVVuaWNvZGVfQ2hlY2sobmFtZSkpCiAgICAgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfU3lzdGVtRXJyb3IsICJuYW1lbGVzcyBtb2R1bGUiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiBfUHlVbmljb2RlX0FzU3RyaW5nKG5hbWVvYmopOworICAgIFB5X0lOQ1JFRihuYW1lKTsKKyAgICByZXR1cm4gbmFtZTsKK30KKworY29uc3QgY2hhciAqCitQeU1vZHVsZV9HZXROYW1lKFB5T2JqZWN0ICptKQoreworICAgIFB5T2JqZWN0ICpuYW1lID0gUHlNb2R1bGVfR2V0TmFtZU9iamVjdChtKTsKKyAgICBpZiAobmFtZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeV9ERUNSRUYobmFtZSk7ICAgLyogbW9kdWxlIGRpY3QgaGFzIHN0aWxsIGEgcmVmZXJlbmNlICovCisgICAgcmV0dXJuIF9QeVVuaWNvZGVfQXNTdHJpbmcobmFtZSk7CiB9CiAKIFB5T2JqZWN0KgpAQCAtMjE5LDcgKzIzOSw3IEBACiAgICAgaWYgKGZpbGVvYmogPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgdXRmOCA9IF9QeVVuaWNvZGVfQXNTdHJpbmcoZmlsZW9iaik7Ci0gICAgUHlfREVDUkVGKGZpbGVvYmopOworICAgIFB5X0RFQ1JFRihmaWxlb2JqKTsgICAvKiBtb2R1bGUgZGljdCBoYXMgc3RpbGwgYSByZWZlcmVuY2UgKi8KICAgICByZXR1cm4gdXRmODsKIH0KIApAQCAtMjY1LDggKzI4NSw4IEBACiAgICAgcG9zID0gMDsKICAgICB3aGlsZSAoUHlEaWN0X05leHQoZCwgJnBvcywgJmtleSwgJnZhbHVlKSkgewogICAgICAgICBpZiAodmFsdWUgIT0gUHlfTm9uZSAmJiBQeVVuaWNvZGVfQ2hlY2soa2V5KSkgewotICAgICAgICAgICAgUHlfVU5JQ09ERSAqdSA9IFB5VW5pY29kZV9BU19VTklDT0RFKGtleSk7Ci0gICAgICAgICAgICBpZiAodVswXSA9PSAnXycgJiYgdVsxXSAhPSAnXycpIHsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRF9DSEFSKGtleSwgMCkgPT0gJ18nICYmIAorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEX0NIQVIoa2V5LCAxKSAhPSAnXycpIHsKICAgICAgICAgICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcgPiAxKSB7CiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnMgPSBfUHlVbmljb2RlX0FzU3RyaW5nKGtleSk7CiAgICAgICAgICAgICAgICAgICAgIGlmIChzICE9IE5VTEwpCkBAIC0yODMsOSArMzAzLDggQEAKICAgICBwb3MgPSAwOwogICAgIHdoaWxlIChQeURpY3RfTmV4dChkLCAmcG9zLCAma2V5LCAmdmFsdWUpKSB7CiAgICAgICAgIGlmICh2YWx1ZSAhPSBQeV9Ob25lICYmIFB5VW5pY29kZV9DaGVjayhrZXkpKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFICp1ID0gUHlVbmljb2RlX0FTX1VOSUNPREUoa2V5KTsKLSAgICAgICAgICAgIGlmICh1WzBdICE9ICdfJwotICAgICAgICAgICAgICAgIHx8IFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKGtleSwgIl9fYnVpbHRpbnNfXyIpICE9IDApCisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURfQ0hBUihrZXksIDApICE9ICdfJyB8fAorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKGtleSwgIl9fYnVpbHRpbnNfXyIpICE9IDApCiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnID4gMSkgewogICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzID0gX1B5VW5pY29kZV9Bc1N0cmluZyhrZXkpOwpAQCAtMzQ3LDIxICszNjYsMjUgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBtb2R1bGVfcmVwcihQeU1vZHVsZU9iamVjdCAqbSkKIHsKLSAgICBjb25zdCBjaGFyICpuYW1lOwotICAgIFB5T2JqZWN0ICpmaWxlbmFtZSwgKnJlcHI7CisgICAgUHlPYmplY3QgKm5hbWUsICpmaWxlbmFtZSwgKnJlcHI7CiAKLSAgICBuYW1lID0gUHlNb2R1bGVfR2V0TmFtZSgoUHlPYmplY3QgKiltKTsKKyAgICBuYW1lID0gUHlNb2R1bGVfR2V0TmFtZU9iamVjdCgoUHlPYmplY3QgKiltKTsKICAgICBpZiAobmFtZSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgICAgIG5hbWUgPSAiPyI7CisgICAgICAgIG5hbWUgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUoIj8iLCAxKTsKKyAgICAgICAgaWYgKG5hbWUgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBmaWxlbmFtZSA9IFB5TW9kdWxlX0dldEZpbGVuYW1lT2JqZWN0KChQeU9iamVjdCAqKW0pOwogICAgIGlmIChmaWxlbmFtZSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPG1vZHVsZSAnJXMnIChidWlsdC1pbik+IiwgbmFtZSk7CisgICAgICAgIHJlcHIgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPG1vZHVsZSAlUiAoYnVpbHQtaW4pPiIsIG5hbWUpOwogICAgIH0KLSAgICByZXByID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIjxtb2R1bGUgJyVzJyBmcm9tICclVSc+IiwgbmFtZSwgZmlsZW5hbWUpOwotICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CisgICAgZWxzZSB7CisgICAgICAgIHJlcHIgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPG1vZHVsZSAlUiBmcm9tICVSPiIsIG5hbWUsIGZpbGVuYW1lKTsKKyAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICB9CisgICAgUHlfREVDUkVGKG5hbWUpOwogICAgIHJldHVybiByZXByOwogfQogCkBAIC0zODksNiArNDEyLDM1IEBACiAgICAgcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyBQeU9iamVjdCAqCittb2R1bGVfZGlyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBfUHlfSURFTlRJRklFUihfX2RpY3RfXyk7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisgICAgUHlPYmplY3QgKmRpY3QgPSBfUHlPYmplY3RfR2V0QXR0cklkKHNlbGYsICZQeUlkX19fZGljdF9fKTsKKworICAgIGlmIChkaWN0ICE9IE5VTEwpIHsKKyAgICAgICAgaWYgKFB5RGljdF9DaGVjayhkaWN0KSkKKyAgICAgICAgICAgIHJlc3VsdCA9IFB5RGljdF9LZXlzKGRpY3QpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGNvbnN0IGNoYXIgKm5hbWUgPSBQeU1vZHVsZV9HZXROYW1lKHNlbGYpOworICAgICAgICAgICAgaWYgKG5hbWUpCisgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiUuMjAwcy5fX2RpY3RfXyBpcyBub3QgYSBkaWN0aW9uYXJ5IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBQeV9YREVDUkVGKGRpY3QpOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3N0YXRpYyBQeU1ldGhvZERlZiBtb2R1bGVfbWV0aG9kc1tdID0geworICAgIHsiX19kaXJfXyIsIG1vZHVsZV9kaXIsIE1FVEhfTk9BUkdTLAorICAgICBQeURvY19TVFIoIl9fZGlyX18oKSAtPiBsaXN0XG5zcGVjaWFsaXplZCBkaXIoKSBpbXBsZW1lbnRhdGlvbiIpfSwKKyAgICB7MH0KK307CisKIAogUHlEb2NfU1RSVkFSKG1vZHVsZV9kb2MsCiAibW9kdWxlKG5hbWVbLCBkb2NdKVxuXApAQCAtNDI1LDcgKzQ3Nyw3IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF93ZWFrbGlzdG9mZnNldCAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlcm5leHQgKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21ldGhvZHMgKi8KKyAgICBtb2R1bGVfbWV0aG9kcywgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21ldGhvZHMgKi8KICAgICBtb2R1bGVfbWVtYmVycywgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2dldHNldCAqLwogICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYmFzZSAqLwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9vYmplY3QuYyBiL09iamVjdHMvb2JqZWN0LmMKaW5kZXggNjk0ZTdlNy4uODZmNWUxYiAxMDA2NDQKLS0tIGEvT2JqZWN0cy9vYmplY3QuYworKysgYi9PYmplY3RzL29iamVjdC5jCkBAIC0xLDUgKzEsNSBAQAogCi0vKiBHZW5lcmljIG9iamVjdCBvcGVyYXRpb25zOyBhbmQgaW1wbGVtZW50YXRpb24gb2YgTm9uZSAoTm9PYmplY3QpICovCisvKiBHZW5lcmljIG9iamVjdCBvcGVyYXRpb25zOyBhbmQgaW1wbGVtZW50YXRpb24gb2YgTm9uZSAqLwogCiAjaW5jbHVkZSAiUHl0aG9uLmgiCiAjaW5jbHVkZSAiZnJhbWVvYmplY3QuaCIKQEAgLTI5LDggKzI5LDYgQEAKIH0KICNlbmRpZiAvKiBQeV9SRUZfREVCVUcgKi8KIAotaW50IFB5X0RpdmlzaW9uV2FybmluZ0ZsYWc7Ci0KIC8qIE9iamVjdCBhbGxvY2F0aW9uIHJvdXRpbmVzIHVzZWQgYnkgTkVXT0JKIGFuZCBORVdWQVJPQkogbWFjcm9zLgogICAgVGhlc2UgYXJlIHVzZWQgYnkgdGhlIGluZGl2aWR1YWwgcm91dGluZXMgZm9yIG9iamVjdCBjcmVhdGlvbi4KICAgIERvIG5vdCBjYWxsIHRoZW0gb3RoZXJ3aXNlLCB0aGV5IGRvIG5vdCBpbml0aWFsaXplIHRoZSBvYmplY3QhICovCkBAIC0yOTcsOSArMjk1LDcgQEAKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjayhzKSkgewogICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp0OwotICAgICAgICAgICAgICAgIHQgPSBQeVVuaWNvZGVfRW5jb2RlVVRGOChQeVVuaWNvZGVfQVNfVU5JQ09ERShzKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHMpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYmFja3NsYXNocmVwbGFjZSIpOworICAgICAgICAgICAgICAgIHQgPSBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKHMsICJ1dGYtOCIsICJiYWNrc2xhc2hyZXBsYWNlIik7CiAgICAgICAgICAgICAgICAgaWYgKHQgPT0gTlVMTCkKICAgICAgICAgICAgICAgICAgICAgcmV0ID0gMDsKICAgICAgICAgICAgICAgICBlbHNlIHsKQEAgLTM4MiwxMyArMzc4LDE5IEBACiAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiPCVzIG9iamVjdCBhdCAlcD4iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdi0+b2JfdHlwZS0+dHBfbmFtZSwgdik7CiAgICAgcmVzID0gKCp2LT5vYl90eXBlLT50cF9yZXByKSh2KTsKLSAgICBpZiAocmVzICE9IE5VTEwgJiYgIVB5VW5pY29kZV9DaGVjayhyZXMpKSB7CisgICAgaWYgKHJlcyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhyZXMpKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAiX19yZXByX18gcmV0dXJuZWQgbm9uLXN0cmluZyAodHlwZSAlLjIwMHMpIiwKICAgICAgICAgICAgICAgICAgICAgIHJlcy0+b2JfdHlwZS0+dHBfbmFtZSk7CiAgICAgICAgIFB5X0RFQ1JFRihyZXMpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CisjaWZuZGVmIFB5X0RFQlVHCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShyZXMpIDwgMCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisjZW5kaWYKICAgICByZXR1cm4gcmVzOwogfQogCkBAIC00MDcsNiArNDA5LDEwIEBACiAgICAgaWYgKHYgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKCI8TlVMTD4iKTsKICAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3QodikpIHsKKyNpZm5kZWYgUHlfREVCVUcKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh2KSA8IDApCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyNlbmRpZgogICAgICAgICBQeV9JTkNSRUYodik7CiAgICAgICAgIHJldHVybiB2OwogICAgIH0KQEAgLTQyOCw2ICs0MzQsMTEgQEAKICAgICAgICAgUHlfREVDUkVGKHJlcyk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KKyNpZm5kZWYgUHlfREVCVUcKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHJlcykgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKyNlbmRpZgorICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzLCAxKSk7CiAgICAgcmV0dXJuIHJlczsKIH0KIApAQCAtNDQxLDExICs0NTIsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIC8qIHJlcHIgaXMgZ3VhcmFudGVlZCB0byBiZSBhIFB5VW5pY29kZSBvYmplY3QgYnkgUHlPYmplY3RfUmVwciAqLwotICAgIGFzY2lpID0gUHlVbmljb2RlX0VuY29kZUFTQ0lJKAotICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXByKSwKLSAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHJlcHIpLAotICAgICAgICAiYmFja3NsYXNocmVwbGFjZSIpOwotCisgICAgYXNjaWkgPSBfUHlVbmljb2RlX0FzQVNDSUlTdHJpbmcocmVwciwgImJhY2tzbGFzaHJlcGxhY2UiKTsKICAgICBQeV9ERUNSRUYocmVwcik7CiAgICAgaWYgKGFzY2lpID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtNDYzLDcgKzQ3MCw3IEBACiBQeU9iamVjdF9CeXRlcyhQeU9iamVjdCAqdikKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0LCAqZnVuYzsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmJ5dGVzc3RyaW5nID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX2J5dGVzX18pOwogCiAgICAgaWYgKHYgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZygiPE5VTEw+Iik7CkBAIC00NzMsNyArNDgwLDcgQEAKICAgICAgICAgcmV0dXJuIHY7CiAgICAgfQogCi0gICAgZnVuYyA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKHYsICJfX2J5dGVzX18iLCAmYnl0ZXNzdHJpbmcpOworICAgIGZ1bmMgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbCh2LCAmUHlJZF9fX2J5dGVzX18pOwogICAgIGlmIChmdW5jICE9IE5VTEwpIHsKICAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhmdW5jLCBOVUxMKTsKICAgICAgICAgUHlfREVDUkVGKGZ1bmMpOwpAQCAtNzQ3LDYgKzc1NCwyMSBAQAogfQogCiBQeV9oYXNoX3QKK19QeV9IYXNoQnl0ZXModW5zaWduZWQgY2hhciAqcCwgUHlfc3NpemVfdCBsZW4pCit7CisgICAgUHlfdWhhc2hfdCB4OworICAgIFB5X3NzaXplX3QgaTsKKworICAgIHggPSAoUHlfdWhhc2hfdCkgKnAgPDwgNzsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspCisgICAgICAgIHggPSAoX1B5SEFTSF9NVUxUSVBMSUVSICogeCkgXiAoUHlfdWhhc2hfdCkgKnArKzsKKyAgICB4IF49IChQeV91aGFzaF90KSBsZW47CisgICAgaWYgKHggPT0gLTEpCisgICAgICAgIHggPSAtMjsKKyAgICByZXR1cm4geDsKK30KKworUHlfaGFzaF90CiBQeU9iamVjdF9IYXNoTm90SW1wbGVtZW50ZWQoUHlPYmplY3QgKnYpCiB7CiAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgInVuaGFzaGFibGUgdHlwZTogJyUuMjAwcyciLApAQCAtODE4LDYgKzg0MCw2MiBAQAogICAgIHJldHVybiByZXM7CiB9CiAKK2ludAorX1B5T2JqZWN0X0lzQWJzdHJhY3QoUHlPYmplY3QgKm9iaikKK3sKKyAgICBpbnQgcmVzOworICAgIFB5T2JqZWN0KiBpc2Fic3RyYWN0OworICAgIF9QeV9JREVOVElGSUVSKF9faXNhYnN0cmFjdG1ldGhvZF9fKTsKKworICAgIGlmIChvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpc2Fic3RyYWN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX19faXNhYnN0cmFjdG1ldGhvZF9fKTsKKyAgICBpZiAoaXNhYnN0cmFjdCA9PSBOVUxMKSB7CisgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkgeworICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgcmVzID0gUHlPYmplY3RfSXNUcnVlKGlzYWJzdHJhY3QpOworICAgIFB5X0RFQ1JFRihpc2Fic3RyYWN0KTsKKyAgICByZXR1cm4gcmVzOworfQorCitQeU9iamVjdCAqCitfUHlPYmplY3RfR2V0QXR0cklkKFB5T2JqZWN0ICp2LCBfUHlfSWRlbnRpZmllciAqbmFtZSkKK3sKKyAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICpvbmFtZSA9IF9QeVVuaWNvZGVfRnJvbUlkKG5hbWUpOyAvKiBib3Jyb3dlZCAqLworICAgIGlmICghb25hbWUpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJlc3VsdCA9IFB5T2JqZWN0X0dldEF0dHIodiwgb25hbWUpOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK2ludAorX1B5T2JqZWN0X0hhc0F0dHJJZChQeU9iamVjdCAqdiwgX1B5X0lkZW50aWZpZXIgKm5hbWUpCit7CisgICAgaW50IHJlc3VsdDsKKyAgICBQeU9iamVjdCAqb25hbWUgPSBfUHlVbmljb2RlX0Zyb21JZChuYW1lKTsgLyogYm9ycm93ZWQgKi8KKyAgICBpZiAoIW9uYW1lKQorICAgICAgICByZXR1cm4gLTE7CisgICAgcmVzdWx0ID0gUHlPYmplY3RfSGFzQXR0cih2LCBvbmFtZSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworaW50CitfUHlPYmplY3RfU2V0QXR0cklkKFB5T2JqZWN0ICp2LCBfUHlfSWRlbnRpZmllciAqbmFtZSwgUHlPYmplY3QgKncpCit7CisgICAgaW50IHJlc3VsdDsKKyAgICBQeU9iamVjdCAqb25hbWUgPSBfUHlVbmljb2RlX0Zyb21JZChuYW1lKTsgLyogYm9ycm93ZWQgKi8KKyAgICBpZiAoIW9uYW1lKQorICAgICAgICByZXR1cm4gLTE7CisgICAgcmVzdWx0ID0gUHlPYmplY3RfU2V0QXR0cih2LCBvbmFtZSwgdyk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogUHlPYmplY3QgKgogUHlPYmplY3RfR2V0QXR0cihQeU9iamVjdCAqdiwgUHlPYmplY3QgKm5hbWUpCiB7CkBAIC0xMTg0LDY2ICsxMjYyLDYgQEAKICAgICByZXR1cm4geC0+b2JfdHlwZS0+dHBfY2FsbCAhPSBOVUxMOwogfQogCi0vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFB5T2JqZWN0X0RpcigpIGhlbHBlcnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwotCi0vKiBIZWxwZXIgZm9yIFB5T2JqZWN0X0Rpci4KLSAgIE1lcmdlIHRoZSBfX2RpY3RfXyBvZiBhY2xhc3MgaW50byBkaWN0LCBhbmQgcmVjdXJzaXZlbHkgYWxzbyBhbGwKLSAgIHRoZSBfX2RpY3RfX3Mgb2YgYWNsYXNzJ3MgYmFzZSBjbGFzc2VzLiAgVGhlIG9yZGVyIG9mIG1lcmdpbmcgaXNuJ3QKLSAgIGRlZmluZWQsIGFzIGl0J3MgZXhwZWN0ZWQgdGhhdCBvbmx5IHRoZSBmaW5hbCBzZXQgb2YgZGljdCBrZXlzIGlzCi0gICBpbnRlcmVzdGluZy4KLSAgIFJldHVybiAwIG9uIHN1Y2Nlc3MsIC0xIG9uIGVycm9yLgotKi8KLQotc3RhdGljIGludAotbWVyZ2VfY2xhc3NfZGljdChQeU9iamVjdCogZGljdCwgUHlPYmplY3QqIGFjbGFzcykKLXsKLSAgICBQeU9iamVjdCAqY2xhc3NkaWN0OwotICAgIFB5T2JqZWN0ICpiYXNlczsKLQotICAgIGFzc2VydChQeURpY3RfQ2hlY2soZGljdCkpOwotICAgIGFzc2VydChhY2xhc3MpOwotCi0gICAgLyogTWVyZ2UgaW4gdGhlIHR5cGUncyBkaWN0IChpZiBhbnkpLiAqLwotICAgIGNsYXNzZGljdCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoYWNsYXNzLCAiX19kaWN0X18iKTsKLSAgICBpZiAoY2xhc3NkaWN0ID09IE5VTEwpCi0gICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIGludCBzdGF0dXMgPSBQeURpY3RfVXBkYXRlKGRpY3QsIGNsYXNzZGljdCk7Ci0gICAgICAgIFB5X0RFQ1JFRihjbGFzc2RpY3QpOwotICAgICAgICBpZiAoc3RhdHVzIDwgMCkKLSAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0KLSAgICAvKiBSZWN1cnNpdmVseSBtZXJnZSBpbiB0aGUgYmFzZSB0eXBlcycgKGlmIGFueSkgZGljdHMuICovCi0gICAgYmFzZXMgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGFjbGFzcywgIl9fYmFzZXNfXyIpOwotICAgIGlmIChiYXNlcyA9PSBOVUxMKQotICAgICAgICBQeUVycl9DbGVhcigpOwotICAgIGVsc2UgewotICAgICAgICAvKiBXZSBoYXZlIG5vIGd1YXJhbnRlZSB0aGF0IGJhc2VzIGlzIGEgcmVhbCB0dXBsZSAqLwotICAgICAgICBQeV9zc2l6ZV90IGksIG47Ci0gICAgICAgIG4gPSBQeVNlcXVlbmNlX1NpemUoYmFzZXMpOyAvKiBUaGlzIGJldHRlciBiZSByaWdodCAqLwotICAgICAgICBpZiAobiA8IDApCi0gICAgICAgICAgICBQeUVycl9DbGVhcigpOwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspIHsKLSAgICAgICAgICAgICAgICBpbnQgc3RhdHVzOwotICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpiYXNlID0gUHlTZXF1ZW5jZV9HZXRJdGVtKGJhc2VzLCBpKTsKLSAgICAgICAgICAgICAgICBpZiAoYmFzZSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihiYXNlcyk7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgc3RhdHVzID0gbWVyZ2VfY2xhc3NfZGljdChkaWN0LCBiYXNlKTsKLSAgICAgICAgICAgICAgICBQeV9ERUNSRUYoYmFzZSk7Ci0gICAgICAgICAgICAgICAgaWYgKHN0YXR1cyA8IDApIHsKLSAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGJhc2VzKTsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICBQeV9ERUNSRUYoYmFzZXMpOwotICAgIH0KLSAgICByZXR1cm4gMDsKLX0KIAogLyogSGVscGVyIGZvciBQeU9iamVjdF9EaXIgd2l0aG91dCBhcmd1bWVudHM6IHJldHVybnMgdGhlIGxvY2FsIHNjb3BlLiAqLwogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTEyNjcsMTQwICsxMjg1LDQzIEBACiAgICAgICAgIFB5X0RFQ1JFRihuYW1lcyk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KKyAgICBpZiAoUHlMaXN0X1NvcnQobmFtZXMpKSB7CisgICAgICAgIFB5X0RFQ1JFRihuYW1lcyk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KICAgICAvKiB0aGUgbG9jYWxzIGRvbid0IG5lZWQgdG8gYmUgREVDUkVGJ2QgKi8KICAgICByZXR1cm4gbmFtZXM7CiB9CiAKLS8qIEhlbHBlciBmb3IgUHlPYmplY3RfRGlyIG9mIHR5cGUgb2JqZWN0czogcmV0dXJucyBfX2RpY3RfXyBhbmQgX19iYXNlc19fLgotICAgV2UgZGVsaWJlcmF0ZWx5IGRvbid0IHN1Y2sgdXAgaXRzIF9fY2xhc3NfXywgYXMgbWV0aG9kcyBiZWxvbmdpbmcgdG8gdGhlCi0gICBtZXRhY2xhc3Mgd291bGQgcHJvYmFibHkgYmUgbW9yZSBjb25mdXNpbmcgdGhhbiBoZWxwZnVsLgotKi8KLXN0YXRpYyBQeU9iamVjdCAqCi1fc3BlY2lhbGl6ZWRfZGlyX3R5cGUoUHlPYmplY3QgKm9iaikKLXsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqZGljdCA9IFB5RGljdF9OZXcoKTsKLQotICAgIGlmIChkaWN0ICE9IE5VTEwgJiYgbWVyZ2VfY2xhc3NfZGljdChkaWN0LCBvYmopID09IDApCi0gICAgICAgIHJlc3VsdCA9IFB5RGljdF9LZXlzKGRpY3QpOwotCi0gICAgUHlfWERFQ1JFRihkaWN0KTsKLSAgICByZXR1cm4gcmVzdWx0OwotfQotCi0vKiBIZWxwZXIgZm9yIFB5T2JqZWN0X0RpciBvZiBtb2R1bGUgb2JqZWN0czogcmV0dXJucyB0aGUgbW9kdWxlJ3MgX19kaWN0X18uICovCi1zdGF0aWMgUHlPYmplY3QgKgotX3NwZWNpYWxpemVkX2Rpcl9tb2R1bGUoUHlPYmplY3QgKm9iaikKLXsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqZGljdCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiX19kaWN0X18iKTsKLQotICAgIGlmIChkaWN0ICE9IE5VTEwpIHsKLSAgICAgICAgaWYgKFB5RGljdF9DaGVjayhkaWN0KSkKLSAgICAgICAgICAgIHJlc3VsdCA9IFB5RGljdF9LZXlzKGRpY3QpOwotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGNvbnN0IGNoYXIgKm5hbWUgPSBQeU1vZHVsZV9HZXROYW1lKG9iaik7Ci0gICAgICAgICAgICBpZiAobmFtZSkKLSAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJS4yMDBzLl9fZGljdF9fIGlzIG5vdCBhIGRpY3Rpb25hcnkiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lKTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIFB5X1hERUNSRUYoZGljdCk7Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotLyogSGVscGVyIGZvciBQeU9iamVjdF9EaXIgb2YgZ2VuZXJpYyBvYmplY3RzOiByZXR1cm5zIF9fZGljdF9fLCBfX2NsYXNzX18sCi0gICBhbmQgcmVjdXJzaXZlbHkgdXAgdGhlIF9fY2xhc3NfXy5fX2Jhc2VzX18gY2hhaW4uCi0qLwotc3RhdGljIFB5T2JqZWN0ICoKLV9nZW5lcmljX2RpcihQeU9iamVjdCAqb2JqKQotewotICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwotICAgIFB5T2JqZWN0ICpkaWN0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqaXRzY2xhc3MgPSBOVUxMOwotCi0gICAgLyogR2V0IF9fZGljdF9fICh3aGljaCBtYXkgb3IgbWF5IG5vdCBiZSBhIHJlYWwgZGljdC4uLikgKi8KLSAgICBkaWN0ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJfX2RpY3RfXyIpOwotICAgIGlmIChkaWN0ID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgZGljdCA9IFB5RGljdF9OZXcoKTsKLSAgICB9Ci0gICAgZWxzZSBpZiAoIVB5RGljdF9DaGVjayhkaWN0KSkgewotICAgICAgICBQeV9ERUNSRUYoZGljdCk7Ci0gICAgICAgIGRpY3QgPSBQeURpY3RfTmV3KCk7Ci0gICAgfQotICAgIGVsc2UgewotICAgICAgICAvKiBDb3B5IF9fZGljdF9fIHRvIGF2b2lkIG11dGF0aW5nIGl0LiAqLwotICAgICAgICBQeU9iamVjdCAqdGVtcCA9IFB5RGljdF9Db3B5KGRpY3QpOwotICAgICAgICBQeV9ERUNSRUYoZGljdCk7Ci0gICAgICAgIGRpY3QgPSB0ZW1wOwotICAgIH0KLQotICAgIGlmIChkaWN0ID09IE5VTEwpCi0gICAgICAgIGdvdG8gZXJyb3I7Ci0KLSAgICAvKiBNZXJnZSBpbiBhdHRycyByZWFjaGFibGUgZnJvbSBpdHMgY2xhc3MuICovCi0gICAgaXRzY2xhc3MgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIl9fY2xhc3NfXyIpOwotICAgIGlmIChpdHNjbGFzcyA9PSBOVUxMKQotICAgICAgICAvKiBYWFgodG9tZXIpOiBQZXJoYXBzIGZhbGwgYmFjayB0byBvYmotPm9iX3R5cGUgaWYgbm8KLSAgICAgICAgICAgICAgICAgICAgICAgX19jbGFzc19fIGV4aXN0cz8gKi8KLSAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICBlbHNlIHsKLSAgICAgICAgaWYgKG1lcmdlX2NsYXNzX2RpY3QoZGljdCwgaXRzY2xhc3MpICE9IDApCi0gICAgICAgICAgICBnb3RvIGVycm9yOwotICAgIH0KLQotICAgIHJlc3VsdCA9IFB5RGljdF9LZXlzKGRpY3QpOwotICAgIC8qIGZhbGwgdGhyb3VnaCAqLwotZXJyb3I6Ci0gICAgUHlfWERFQ1JFRihpdHNjbGFzcyk7Ci0gICAgUHlfWERFQ1JFRihkaWN0KTsKLSAgICByZXR1cm4gcmVzdWx0OwotfQotCi0vKiBIZWxwZXIgZm9yIFB5T2JqZWN0X0Rpcjogb2JqZWN0IGludHJvc3BlY3Rpb24uCi0gICBUaGlzIGNhbGxzIG9uZSBvZiB0aGUgYWJvdmUgc3BlY2lhbGl6ZWQgdmVyc2lvbnMgaWYgbm8gX19kaXJfXyBtZXRob2QKLSAgIGV4aXN0cy4gKi8KKy8qIEhlbHBlciBmb3IgUHlPYmplY3RfRGlyOiBvYmplY3QgaW50cm9zcGVjdGlvbi4gKi8KIHN0YXRpYyBQeU9iamVjdCAqCiBfZGlyX29iamVjdChQeU9iamVjdCAqb2JqKQogewotICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOwotICAgIHN0YXRpYyBQeU9iamVjdCAqZGlyX3N0ciA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKmRpcmZ1bmMgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChvYmosICJfX2Rpcl9fIiwgJmRpcl9zdHIpOworICAgIFB5T2JqZWN0ICpyZXN1bHQsICpzb3J0ZWQ7CisgICAgX1B5X0lERU5USUZJRVIoX19kaXJfXyk7CisgICAgUHlPYmplY3QgKmRpcmZ1bmMgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChvYmosICZQeUlkX19fZGlyX18pOwogCiAgICAgYXNzZXJ0KG9iaik7CiAgICAgaWYgKGRpcmZ1bmMgPT0gTlVMTCkgewotICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAvKiB1c2UgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiAqLwotICAgICAgICBpZiAoUHlNb2R1bGVfQ2hlY2sob2JqKSkKLSAgICAgICAgICAgIHJlc3VsdCA9IF9zcGVjaWFsaXplZF9kaXJfbW9kdWxlKG9iaik7Ci0gICAgICAgIGVsc2UgaWYgKFB5VHlwZV9DaGVjayhvYmopKQotICAgICAgICAgICAgcmVzdWx0ID0gX3NwZWNpYWxpemVkX2Rpcl90eXBlKG9iaik7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIHJlc3VsdCA9IF9nZW5lcmljX2RpcihvYmopOworICAgICAgICBpZiAoIVB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAib2JqZWN0IGRvZXMgbm90IHByb3ZpZGUgX19kaXJfXyIpOworICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8qIHVzZSBfX2Rpcl9fICovCi0gICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3MoZGlyZnVuYywgTlVMTCk7Ci0gICAgICAgIFB5X0RFQ1JFRihkaXJmdW5jKTsKLSAgICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICAgICAgLyogcmVzdWx0IG11c3QgYmUgYSBsaXN0ICovCi0gICAgICAgIC8qIFhYWChnYnJhbmRsKTogY291bGQgYWxzbyBjaGVjayBpZiBhbGwgaXRlbXMgYXJlIHN0cmluZ3MgKi8KLSAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2socmVzdWx0KSkgewotICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAiX19kaXJfXygpIG11c3QgcmV0dXJuIGEgbGlzdCwgbm90ICUuMjAwcyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgUHlfVFlQRShyZXN1bHQpLT50cF9uYW1lKTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwotICAgICAgICAgICAgcmVzdWx0ID0gTlVMTDsKLSAgICAgICAgfQorICAgIC8qIHVzZSBfX2Rpcl9fICovCisgICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncyhkaXJmdW5jLCBOVUxMKTsKKyAgICBQeV9ERUNSRUYoZGlyZnVuYyk7CisgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAvKiByZXR1cm4gc29ydGVkKHJlc3VsdCkgKi8KKyAgICBzb3J0ZWQgPSBQeVNlcXVlbmNlX0xpc3QocmVzdWx0KTsKKyAgICBQeV9ERUNSRUYocmVzdWx0KTsKKyAgICBpZiAoc29ydGVkID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChQeUxpc3RfU29ydChzb3J0ZWQpKSB7CisgICAgICAgIFB5X0RFQ1JFRihzb3J0ZWQpOworICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0KLSAgICByZXR1cm4gcmVzdWx0OworICAgIHJldHVybiBzb3J0ZWQ7CiB9CiAKIC8qIEltcGxlbWVudGF0aW9uIG9mIGRpcigpIC0tIGlmIG9iaiBpcyBOVUxMLCByZXR1cm5zIHRoZSBuYW1lcyBpbiB0aGUgY3VycmVudApAQCAtMTQxMCwzMSArMTMzMSwxMyBAQAogUHlPYmplY3QgKgogUHlPYmplY3RfRGlyKFB5T2JqZWN0ICpvYmopCiB7Ci0gICAgUHlPYmplY3QgKiByZXN1bHQ7Ci0KLSAgICBpZiAob2JqID09IE5VTEwpCi0gICAgICAgIC8qIG5vIG9iamVjdCAtLSBpbnRyb3NwZWN0IHRoZSBsb2NhbHMgKi8KLSAgICAgICAgcmVzdWx0ID0gX2Rpcl9sb2NhbHMoKTsKLSAgICBlbHNlCi0gICAgICAgIC8qIG9iamVjdCAtLSBpbnRyb3NwZWN0IHRoZSBvYmplY3QgKi8KLSAgICAgICAgcmVzdWx0ID0gX2Rpcl9vYmplY3Qob2JqKTsKLQotICAgIGFzc2VydChyZXN1bHQgPT0gTlVMTCB8fCBQeUxpc3RfQ2hlY2socmVzdWx0KSk7Ci0KLSAgICBpZiAocmVzdWx0ICE9IE5VTEwgJiYgUHlMaXN0X1NvcnQocmVzdWx0KSAhPSAwKSB7Ci0gICAgICAgIC8qIHNvcnRpbmcgdGhlIGxpc3QgZmFpbGVkICovCi0gICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwotICAgICAgICByZXN1bHQgPSBOVUxMOwotICAgIH0KLQotICAgIHJldHVybiByZXN1bHQ7CisgICAgcmV0dXJuIChvYmogPT0gTlVMTCkgPyBfZGlyX2xvY2FscygpIDogX2Rpcl9vYmplY3Qob2JqKTsKIH0KIAogLyoKLU5vT2JqZWN0IGlzIHVzYWJsZSBhcyBhIG5vbi1OVUxMIHVuZGVmaW5lZCB2YWx1ZSwgdXNlZCBieSB0aGUgbWFjcm8gTm9uZS4KK05vbmUgaXMgYSBub24tTlVMTCB1bmRlZmluZWQgdmFsdWUuCiBUaGVyZSBpcyAoYW5kIHNob3VsZCBiZSEpIG5vIHdheSB0byBjcmVhdGUgb3RoZXIgb2JqZWN0cyBvZiB0aGlzIHR5cGUsCiBzbyB0aGVyZSBpcyBleGFjdGx5IG9uZSAod2hpY2ggaXMgaW5kZXN0cnVjdGlibGUsIGJ5IHRoZSB3YXkpLgotKFhYWCBUaGlzIHR5cGUgYW5kIHRoZSB0eXBlIG9mIE5vdEltcGxlbWVudGVkIGJlbG93IHNob3VsZCBiZSB1bmlmaWVkLikKICovCiAKIC8qIEFSR1NVU0VEICovCkBAIC0xNDU0LDYgKzEzNTcsNTggQEAKICAgICBQeV9GYXRhbEVycm9yKCJkZWFsbG9jYXRpbmcgTm9uZSIpOwogfQogCitzdGF0aWMgUHlPYmplY3QgKgorbm9uZV9uZXcoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKK3sKKyAgICBpZiAoUHlUdXBsZV9HRVRfU0laRShhcmdzKSB8fCAoa3dhcmdzICYmIFB5RGljdF9TaXplKGt3YXJncykpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJOb25lVHlwZSB0YWtlcyBubyBhcmd1bWVudHMiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIFB5X1JFVFVSTl9OT05FOworfQorCitzdGF0aWMgaW50Citub25lX2Jvb2woUHlPYmplY3QgKnYpCit7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBQeU51bWJlck1ldGhvZHMgbm9uZV9hc19udW1iZXIgPSB7CisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2FkZCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9zdWJ0cmFjdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9tdWx0aXBseSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9yZW1haW5kZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfZGl2bW9kICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX3Bvd2VyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX25lZ2F0aXZlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX3Bvc2l0aXZlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2Fic29sdXRlICovCisgICAgKGlucXVpcnkpbm9uZV9ib29sLCAgICAgICAgIC8qIG5iX2Jvb2wgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW52ZXJ0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2xzaGlmdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9yc2hpZnQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfYW5kICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX3hvciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9vciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9pbnQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfcmVzZXJ2ZWQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfZmxvYXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5wbGFjZV9hZGQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5wbGFjZV9zdWJ0cmFjdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9pbnBsYWNlX211bHRpcGx5ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2VfcmVtYWluZGVyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG5iX2lucGxhY2VfcG93ZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5wbGFjZV9sc2hpZnQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5wbGFjZV9yc2hpZnQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5wbGFjZV9hbmQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5wbGFjZV94b3IgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5wbGFjZV9vciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9mbG9vcl9kaXZpZGUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfdHJ1ZV9kaXZpZGUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5wbGFjZV9mbG9vcl9kaXZpZGUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbmJfaW5wbGFjZV90cnVlX2RpdmlkZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBuYl9pbmRleCAqLworfTsKIAogc3RhdGljIFB5VHlwZU9iamVjdCBQeU5vbmVfVHlwZSA9IHsKICAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoJlB5VHlwZV9UeXBlLCAwKQpAQCAtMTQ2NiwxMCArMTQyMSwzNCBAQAogICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9zZXRhdHRyKi8KICAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfcmVzZXJ2ZWQqLwogICAgIG5vbmVfcmVwciwgICAgICAgICAgLyp0cF9yZXByKi8KLSAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfYXNfbnVtYmVyKi8KKyAgICAmbm9uZV9hc19udW1iZXIsICAgIC8qdHBfYXNfbnVtYmVyKi8KICAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfYXNfc2VxdWVuY2UqLwogICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9hc19tYXBwaW5nKi8KICAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfaGFzaCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9jYWxsICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX3N0ciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9nZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9zZXRhdHRybyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9hc19idWZmZXIgKi8KKyAgICBQeV9UUEZMQUdTX0RFRkFVTFQsIC8qdHBfZmxhZ3MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfZG9jICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2NsZWFyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX3JpY2hjb21wYXJlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2l0ZXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfaXRlcm5leHQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfbWV0aG9kcyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9tZW1iZXJzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2dldHNldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9iYXNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2RpY3QgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfZGVzY3JfZ2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2Rlc2NyX3NldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9kaWN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2luaXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfYWxsb2MgKi8KKyAgICBub25lX25ldywgICAgICAgICAgIC8qdHBfbmV3ICovCiB9OwogCiBQeU9iamVjdCBfUHlfTm9uZVN0cnVjdCA9IHsKQEAgLTE0ODYsNiArMTQ2NSwxNiBAQAogICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZygiTm90SW1wbGVtZW50ZWQiKTsKIH0KIAorc3RhdGljIFB5T2JqZWN0ICoKK25vdGltcGxlbWVudGVkX25ldyhQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQoreworICAgIGlmIChQeVR1cGxlX0dFVF9TSVpFKGFyZ3MpIHx8IChrd2FyZ3MgJiYgUHlEaWN0X1NpemUoa3dhcmdzKSkpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgIk5vdEltcGxlbWVudGVkVHlwZSB0YWtlcyBubyBhcmd1bWVudHMiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKK30KKwogc3RhdGljIFB5VHlwZU9iamVjdCBQeU5vdEltcGxlbWVudGVkX1R5cGUgPSB7CiAgICAgUHlWYXJPYmplY3RfSEVBRF9JTklUKCZQeVR5cGVfVHlwZSwgMCkKICAgICAiTm90SW1wbGVtZW50ZWRUeXBlIiwKQEAgLTE1MDEsNiArMTQ5MCwzMCBAQAogICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9hc19zZXF1ZW5jZSovCiAgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2FzX21hcHBpbmcqLwogICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9oYXNoICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2NhbGwgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfc3RyICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2dldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX3NldGF0dHJvICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2FzX2J1ZmZlciAqLworICAgIFB5X1RQRkxBR1NfREVGQVVMVCwgLyp0cF9mbGFncyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9kb2MgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfdHJhdmVyc2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfcmljaGNvbXBhcmUgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfd2Vha2xpc3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9pdGVybmV4dCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9tZXRob2RzICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX21lbWJlcnMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfZ2V0c2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2Jhc2UgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfZGljdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9kZXNjcl9nZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfZGVzY3Jfc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAvKnRwX2RpY3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgIC8qdHBfaW5pdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgLyp0cF9hbGxvYyAqLworICAgIG5vdGltcGxlbWVudGVkX25ldywgLyp0cF9uZXcgKi8KIH07CiAKIFB5T2JqZWN0IF9QeV9Ob3RJbXBsZW1lbnRlZFN0cnVjdCA9IHsKZGlmZiAtLWdpdCBhL09iamVjdHMvb2JtYWxsb2MuYyBiL09iamVjdHMvb2JtYWxsb2MuYwppbmRleCAzOTE2MjYyLi4zZDc4MmEyIDEwMDY0NAotLS0gYS9PYmplY3RzL29ibWFsbG9jLmMKKysrIGIvT2JqZWN0cy9vYm1hbGxvYy5jCkBAIC0yLDYgKzIsMTMgQEAKIAogI2lmZGVmIFdJVEhfUFlNQUxMT0MKIAorI2lmZGVmIEhBVkVfTU1BUAorICNpbmNsdWRlIDxzeXMvbW1hbi5oPgorICNpZmRlZiBNQVBfQU5PTllNT1VTCisgICNkZWZpbmUgQVJFTkFTX1VTRV9NTUFQCisgI2VuZGlmCisjZW5kaWYKKwogI2lmZGVmIFdJVEhfVkFMR1JJTkQKICNpbmNsdWRlIDx2YWxncmluZC92YWxncmluZC5oPgogCkBAIC03NSw3ICs4Miw4IEBACiAgKiBBbGxvY2F0aW9uIHN0cmF0ZWd5IGFic3RyYWN0OgogICoKICAqIEZvciBzbWFsbCByZXF1ZXN0cywgdGhlIGFsbG9jYXRvciBzdWItYWxsb2NhdGVzIDxCaWc+IGJsb2NrcyBvZiBtZW1vcnkuCi0gKiBSZXF1ZXN0cyBncmVhdGVyIHRoYW4gMjU2IGJ5dGVzIGFyZSByb3V0ZWQgdG8gdGhlIHN5c3RlbSdzIGFsbG9jYXRvci4KKyAqIFJlcXVlc3RzIGdyZWF0ZXIgdGhhbiBTTUFMTF9SRVFVRVNUX1RIUkVTSE9MRCBieXRlcyBhcmUgcm91dGVkIHRvIHRoZQorICogc3lzdGVtJ3MgYWxsb2NhdG9yLgogICoKICAqIFNtYWxsIHJlcXVlc3RzIGFyZSBncm91cGVkIGluIHNpemUgY2xhc3NlcyBzcGFjZWQgOCBieXRlcyBhcGFydCwgZHVlCiAgKiB0byB0aGUgcmVxdWlyZWQgdmFsaWQgYWxpZ25tZW50IG9mIHRoZSByZXR1cm5lZCBhZGRyZXNzLiBSZXF1ZXN0cyBvZgpAQCAtMTA3LDEwICsxMTUsMTEgQEAKICAqICAgICAgIDU3LTY0ICAgICAgICAgICAgICAgICAgIDY0ICAgICAgICAgICAgICAgICAgICAgICA3CiAgKiAgICAgICA2NS03MiAgICAgICAgICAgICAgICAgICA3MiAgICAgICAgICAgICAgICAgICAgICAgOAogICogICAgICAgIC4uLiAgICAgICAgICAgICAgICAgICAuLi4gICAgICAgICAgICAgICAgICAgICAuLi4KLSAqICAgICAgMjQxLTI0OCAgICAgICAgICAgICAgICAgMjQ4ICAgICAgICAgICAgICAgICAgICAgIDMwCi0gKiAgICAgIDI0OS0yNTYgICAgICAgICAgICAgICAgIDI1NiAgICAgICAgICAgICAgICAgICAgICAzMQorICogICAgICA0OTctNTA0ICAgICAgICAgICAgICAgICA1MDQgICAgICAgICAgICAgICAgICAgICAgNjIKKyAqICAgICAgNTA1LTUxMiAgICAgICAgICAgICAgICAgNTEyICAgICAgICAgICAgICAgICAgICAgIDYzCiAgKgotICogICAgICAwLCAyNTcgYW5kIHVwOiByb3V0ZWQgdG8gdGhlIHVuZGVybHlpbmcgYWxsb2NhdG9yLgorICogICAgICAwLCBTTUFMTF9SRVFVRVNUX1RIUkVTSE9MRCArIDEgYW5kIHVwOiByb3V0ZWQgdG8gdGhlIHVuZGVybHlpbmcKKyAqICAgICAgYWxsb2NhdG9yLgogICovCiAKIC8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwpAQCAtMTM5LDE0ICsxNDgsMTcgQEAKICAqIHNtYWxsIGVub3VnaCBpbiBvcmRlciB0byB1c2UgcHJlYWxsb2NhdGVkIG1lbW9yeSBwb29scy4gWW91IGNhbiB0dW5lCiAgKiB0aGlzIHZhbHVlIGFjY29yZGluZyB0byB5b3VyIGFwcGxpY2F0aW9uIGJlaGF2aW91ciBhbmQgbWVtb3J5IG5lZWRzLgogICoKKyAqIE5vdGU6IGEgc2l6ZSB0aHJlc2hvbGQgb2YgNTEyIGd1YXJhbnRlZXMgdGhhdCBuZXdseSBjcmVhdGVkIGRpY3Rpb25hcmllcworICogd2lsbCBiZSBhbGxvY2F0ZWQgZnJvbSBwcmVhbGxvY2F0ZWQgbWVtb3J5IHBvb2xzIG9uIDY0LWJpdC4KKyAqCiAgKiBUaGUgZm9sbG93aW5nIGludmFyaWFudHMgbXVzdCBob2xkOgotICogICAgICAxKSBBTElHTk1FTlQgPD0gU01BTExfUkVRVUVTVF9USFJFU0hPTEQgPD0gMjU2CisgKiAgICAgIDEpIEFMSUdOTUVOVCA8PSBTTUFMTF9SRVFVRVNUX1RIUkVTSE9MRCA8PSA1MTIKICAqICAgICAgMikgU01BTExfUkVRVUVTVF9USFJFU0hPTEQgaXMgZXZlbmx5IGRpdmlzaWJsZSBieSBBTElHTk1FTlQKICAqCiAgKiBBbHRob3VnaCBub3QgcmVxdWlyZWQsIGZvciBiZXR0ZXIgcGVyZm9ybWFuY2UgYW5kIHNwYWNlIGVmZmljaWVuY3ksCiAgKiBpdCBpcyByZWNvbW1lbmRlZCB0aGF0IFNNQUxMX1JFUVVFU1RfVEhSRVNIT0xEIGlzIHNldCB0byBhIHBvd2VyIG9mIDIuCiAgKi8KLSNkZWZpbmUgU01BTExfUkVRVUVTVF9USFJFU0hPTEQgMjU2CisjZGVmaW5lIFNNQUxMX1JFUVVFU1RfVEhSRVNIT0xEIDUxMgogI2RlZmluZSBOQl9TTUFMTF9TSVpFX0NMQVNTRVMgICAoU01BTExfUkVRVUVTVF9USFJFU0hPTEQgLyBBTElHTk1FTlQpCiAKIC8qCkBAIC0xNzQsMTUgKzE4NiwxNSBAQAogLyoKICAqIFRoZSBhbGxvY2F0b3Igc3ViLWFsbG9jYXRlcyA8QmlnPiBibG9ja3Mgb2YgbWVtb3J5IChjYWxsZWQgYXJlbmFzKSBhbGlnbmVkCiAgKiBvbiBhIHBhZ2UgYm91bmRhcnkuIFRoaXMgaXMgYSByZXNlcnZlZCB2aXJ0dWFsIGFkZHJlc3Mgc3BhY2UgZm9yIHRoZQotICogY3VycmVudCBwcm9jZXNzIChvYnRhaW5lZCB0aHJvdWdoIGEgbWFsbG9jIGNhbGwpLiBJbiBubyB3YXkgdGhpcyBtZWFucwotICogdGhhdCB0aGUgbWVtb3J5IGFyZW5hcyB3aWxsIGJlIHVzZWQgZW50aXJlbHkuIEEgbWFsbG9jKDxCaWc+KSBpcyB1c3VhbGx5Ci0gKiBhbiBhZGRyZXNzIHJhbmdlIHJlc2VydmF0aW9uIGZvciA8QmlnPiBieXRlcywgdW5sZXNzIGFsbCBwYWdlcyB3aXRoaW4gdGhpcwotICogc3BhY2UgYXJlIHJlZmVyZW5jZWQgc3Vic2VxdWVudGx5LiBTbyBtYWxsb2MnaW5nIGJpZyBibG9ja3MgYW5kIG5vdCB1c2luZwotICogdGhlbSBkb2VzIG5vdCBtZWFuICJ3YXN0aW5nIG1lbW9yeSIuIEl0J3MgYW4gYWRkcmVzc2FibGUgcmFuZ2Ugd2FzdGFnZS4uLgorICogY3VycmVudCBwcm9jZXNzIChvYnRhaW5lZCB0aHJvdWdoIGEgbWFsbG9jKCkvbW1hcCgpIGNhbGwpLiBJbiBubyB3YXkgdGhpcworICogbWVhbnMgdGhhdCB0aGUgbWVtb3J5IGFyZW5hcyB3aWxsIGJlIHVzZWQgZW50aXJlbHkuIEEgbWFsbG9jKDxCaWc+KSBpcworICogdXN1YWxseSBhbiBhZGRyZXNzIHJhbmdlIHJlc2VydmF0aW9uIGZvciA8QmlnPiBieXRlcywgdW5sZXNzIGFsbCBwYWdlcyB3aXRoaW4KKyAqIHRoaXMgc3BhY2UgYXJlIHJlZmVyZW5jZWQgc3Vic2VxdWVudGx5LiBTbyBtYWxsb2MnaW5nIGJpZyBibG9ja3MgYW5kIG5vdAorICogdXNpbmcgdGhlbSBkb2VzIG5vdCBtZWFuICJ3YXN0aW5nIG1lbW9yeSIuIEl0J3MgYW4gYWRkcmVzc2FibGUgcmFuZ2UKKyAqIHdhc3RhZ2UuLi4KICAqCi0gKiBUaGVyZWZvcmUsIGFsbG9jYXRpbmcgYXJlbmFzIHdpdGggbWFsbG9jIGlzIG5vdCBvcHRpbWFsLCBiZWNhdXNlIHRoZXJlIGlzCi0gKiBzb21lIGFkZHJlc3Mgc3BhY2Ugd2FzdGFnZSwgYnV0IHRoaXMgaXMgdGhlIG1vc3QgcG9ydGFibGUgd2F5IHRvIHJlcXVlc3QKLSAqIG1lbW9yeSBmcm9tIHRoZSBzeXN0ZW0gYWNyb3NzIHZhcmlvdXMgcGxhdGZvcm1zLgorICogQXJlbmFzIGFyZSBhbGxvY2F0ZWQgd2l0aCBtbWFwKCkgb24gc3lzdGVtcyBzdXBwb3J0aW5nIGFub255bW91cyBtZW1vcnkKKyAqIG1hcHBpbmdzIHRvIHJlZHVjZSBoZWFwIGZyYWdtZW50YXRpb24uCiAgKi8KICNkZWZpbmUgQVJFTkFfU0laRSAgICAgICAgICAgICAgKDI1NiA8PCAxMCkgICAgIC8qIDI1NktCICovCiAKQEAgLTQ0MCw2ICs0NTIsOSBAQAogICAgICwgUFQoNDgpLCBQVCg0OSksIFBUKDUwKSwgUFQoNTEpLCBQVCg1MiksIFBUKDUzKSwgUFQoNTQpLCBQVCg1NSkKICNpZiBOQl9TTUFMTF9TSVpFX0NMQVNTRVMgPiA1NgogICAgICwgUFQoNTYpLCBQVCg1NyksIFBUKDU4KSwgUFQoNTkpLCBQVCg2MCksIFBUKDYxKSwgUFQoNjIpLCBQVCg2MykKKyNpZiBOQl9TTUFMTF9TSVpFX0NMQVNTRVMgPiA2NAorI2Vycm9yICJOQl9TTUFMTF9TSVpFX0NMQVNTRVMgc2hvdWxkIGJlIGxlc3MgdGhhbiA2NCIKKyNlbmRpZiAvKiBOQl9TTUFMTF9TSVpFX0NMQVNTRVMgPiA2NCAqLwogI2VuZGlmIC8qIE5CX1NNQUxMX1NJWkVfQ0xBU1NFUyA+IDU2ICovCiAjZW5kaWYgLyogTkJfU01BTExfU0laRV9DTEFTU0VTID4gNDggKi8KICNlbmRpZiAvKiBOQl9TTUFMTF9TSVpFX0NMQVNTRVMgPiA0MCAqLwpAQCAtNTc3LDcgKzU5MiwxMiBAQAogICAgIGFyZW5hb2JqID0gdW51c2VkX2FyZW5hX29iamVjdHM7CiAgICAgdW51c2VkX2FyZW5hX29iamVjdHMgPSBhcmVuYW9iai0+bmV4dGFyZW5hOwogICAgIGFzc2VydChhcmVuYW9iai0+YWRkcmVzcyA9PSAwKTsKKyNpZmRlZiBBUkVOQVNfVVNFX01NQVAKKyAgICBhcmVuYW9iai0+YWRkcmVzcyA9ICh1cHRyKW1tYXAoTlVMTCwgQVJFTkFfU0laRSwgUFJPVF9SRUFEfFBST1RfV1JJVEUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE1BUF9QUklWQVRFfE1BUF9BTk9OWU1PVVMsIC0xLCAwKTsKKyNlbHNlCiAgICAgYXJlbmFvYmotPmFkZHJlc3MgPSAodXB0ciltYWxsb2MoQVJFTkFfU0laRSk7CisjZW5kaWYKICAgICBpZiAoYXJlbmFvYmotPmFkZHJlc3MgPT0gMCkgewogICAgICAgICAvKiBUaGUgYWxsb2NhdGlvbiBmYWlsZWQ6IHJldHVybiBOVUxMIGFmdGVyIHB1dHRpbmcgdGhlCiAgICAgICAgICAqIGFyZW5hb2JqIGJhY2suCkBAIC0xMDU0LDcgKzEwNzQsMTEgQEAKICAgICAgICAgICAgICAgICB1bnVzZWRfYXJlbmFfb2JqZWN0cyA9IGFvOwogCiAgICAgICAgICAgICAgICAgLyogRnJlZSB0aGUgZW50aXJlIGFyZW5hLiAqLworI2lmZGVmIEFSRU5BU19VU0VfTU1BUAorICAgICAgICAgICAgICAgIG11bm1hcCgodm9pZCAqKWFvLT5hZGRyZXNzLCBBUkVOQV9TSVpFKTsKKyNlbHNlCiAgICAgICAgICAgICAgICAgZnJlZSgodm9pZCAqKWFvLT5hZGRyZXNzKTsKKyNlbmRpZgogICAgICAgICAgICAgICAgIGFvLT5hZGRyZXNzID0gMDsgICAgICAgICAgICAgICAgICAgICAgICAvKiBtYXJrIHVuYXNzb2NpYXRlZCAqLwogICAgICAgICAgICAgICAgIC0tbmFyZW5hc19jdXJyZW50bHlfYWxsb2NhdGVkOwogCkBAIC0xNzc1LDcgKzE3OTksNiBAQAogICAgICAqIHdpbGwgYmUgbGl2aW5nIGluIGZ1bGwgcG9vbHMgLS0gd291bGQgYmUgYSBzaGFtZSB0byBtaXNzIHRoZW0uCiAgICAgICovCiAgICAgZm9yIChpID0gMDsgaSA8IG1heGFyZW5hczsgKytpKSB7Ci0gICAgICAgIHVpbnQgcG9vbHNpbmFyZW5hOwogICAgICAgICB1aW50IGo7CiAgICAgICAgIHVwdHIgYmFzZSA9IGFyZW5hc1tpXS5hZGRyZXNzOwogCkBAIC0xNzg0LDcgKzE4MDcsNiBAQAogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIG5hcmVuYXMgKz0gMTsKIAotICAgICAgICBwb29sc2luYXJlbmEgPSBhcmVuYXNbaV0ubnRvdGFscG9vbHM7CiAgICAgICAgIG51bWZyZWVwb29scyArPSBhcmVuYXNbaV0ubmZyZWVwb29sczsKIAogICAgICAgICAvKiByb3VuZCB1cCB0byBwb29sIGFsaWdubWVudCAqLwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9yYW5nZW9iamVjdC5jIGIvT2JqZWN0cy9yYW5nZW9iamVjdC5jCmluZGV4IDU4ZDM3M2MuLmZiNmE1ZmUgMTAwNjQ0Ci0tLSBhL09iamVjdHMvcmFuZ2VvYmplY3QuYworKysgYi9PYmplY3RzL3Jhbmdlb2JqZWN0LmMKQEAgLTEsNiArMSw3IEBACiAvKiBSYW5nZSBvYmplY3QgaW1wbGVtZW50YXRpb24gKi8KIAogI2luY2x1ZGUgIlB5dGhvbi5oIgorI2luY2x1ZGUgInN0cnVjdG1lbWJlci5oIgogCiAvKiBTdXBwb3J0IG9iamVjdHMgd2hvc2UgbGVuZ3RoIGlzID4gUFlfU1NJWkVfVF9NQVguCiAKQEAgLTYwOSw2ICs2MTAsMTM3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQWV9JVEVSU0VBUkNIX0NPTlRBSU5TKTsKIH0KIAorLyogQ29tcGFyZSB0d28gcmFuZ2Ugb2JqZWN0cy4gIFJldHVybiAxIGZvciBlcXVhbCwgMCBmb3Igbm90IGVxdWFsCisgICBhbmQgLTEgb24gZXJyb3IuICBUaGUgYWxnb3JpdGhtIGlzIHJvdWdobHkgdGhlIEMgZXF1aXZhbGVudCBvZgorCisgICBpZiByMCBpcyByMToKKyAgICAgICByZXR1cm4gVHJ1ZQorICAgaWYgbGVuKHIwKSAhPSBsZW4ocjEpOgorICAgICAgIHJldHVybiBGYWxzZQorICAgaWYgbm90IGxlbihyMCk6CisgICAgICAgcmV0dXJuIFRydWUKKyAgIGlmIHIwLnN0YXJ0ICE9IHIxLnN0YXJ0OgorICAgICAgIHJldHVybiBGYWxzZQorICAgaWYgbGVuKHIwKSA9PSAxOgorICAgICAgIHJldHVybiBUcnVlCisgICByZXR1cm4gcjAuc3RlcCA9PSByMS5zdGVwCisqLworc3RhdGljIGludAorcmFuZ2VfZXF1YWxzKHJhbmdlb2JqZWN0ICpyMCwgcmFuZ2VvYmplY3QgKnIxKQoreworICAgIGludCBjbXBfcmVzdWx0OworICAgIFB5T2JqZWN0ICpvbmU7CisKKyAgICBpZiAocjAgPT0gcjEpCisgICAgICAgIHJldHVybiAxOworICAgIGNtcF9yZXN1bHQgPSBQeU9iamVjdF9SaWNoQ29tcGFyZUJvb2wocjAtPmxlbmd0aCwgcjEtPmxlbmd0aCwgUHlfRVEpOworICAgIC8qIFJldHVybiBGYWxzZSBvciBlcnJvciB0byB0aGUgY2FsbGVyLiAqLworICAgIGlmIChjbXBfcmVzdWx0ICE9IDEpCisgICAgICAgIHJldHVybiBjbXBfcmVzdWx0OworICAgIGNtcF9yZXN1bHQgPSBQeU9iamVjdF9Ob3QocjAtPmxlbmd0aCk7CisgICAgLyogUmV0dXJuIFRydWUgb3IgZXJyb3IgdG8gdGhlIGNhbGxlci4gKi8KKyAgICBpZiAoY21wX3Jlc3VsdCAhPSAwKQorICAgICAgICByZXR1cm4gY21wX3Jlc3VsdDsKKyAgICBjbXBfcmVzdWx0ID0gUHlPYmplY3RfUmljaENvbXBhcmVCb29sKHIwLT5zdGFydCwgcjEtPnN0YXJ0LCBQeV9FUSk7CisgICAgLyogUmV0dXJuIEZhbHNlIG9yIGVycm9yIHRvIHRoZSBjYWxsZXIuICovCisgICAgaWYgKGNtcF9yZXN1bHQgIT0gMSkKKyAgICAgICAgcmV0dXJuIGNtcF9yZXN1bHQ7CisgICAgb25lID0gUHlMb25nX0Zyb21Mb25nKDEpOworICAgIGlmICghb25lKQorICAgICAgICByZXR1cm4gLTE7CisgICAgY21wX3Jlc3VsdCA9IFB5T2JqZWN0X1JpY2hDb21wYXJlQm9vbChyMC0+bGVuZ3RoLCBvbmUsIFB5X0VRKTsKKyAgICBQeV9ERUNSRUYob25lKTsKKyAgICAvKiBSZXR1cm4gVHJ1ZSBvciBlcnJvciB0byB0aGUgY2FsbGVyLiAqLworICAgIGlmIChjbXBfcmVzdWx0ICE9IDApCisgICAgICAgIHJldHVybiBjbXBfcmVzdWx0OworICAgIHJldHVybiBQeU9iamVjdF9SaWNoQ29tcGFyZUJvb2wocjAtPnN0ZXAsIHIxLT5zdGVwLCBQeV9FUSk7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCityYW5nZV9yaWNoY29tcGFyZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm90aGVyLCBpbnQgb3ApCit7CisgICAgaW50IHJlc3VsdDsKKworICAgIGlmICghUHlSYW5nZV9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKKyAgICBzd2l0Y2ggKG9wKSB7CisgICAgY2FzZSBQeV9ORToKKyAgICBjYXNlIFB5X0VROgorICAgICAgICByZXN1bHQgPSByYW5nZV9lcXVhbHMoKHJhbmdlb2JqZWN0KilzZWxmLCAocmFuZ2VvYmplY3QqKW90aGVyKTsKKyAgICAgICAgaWYgKHJlc3VsdCA9PSAtMSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBpZiAob3AgPT0gUHlfTkUpCisgICAgICAgICAgICByZXN1bHQgPSAhcmVzdWx0OworICAgICAgICBpZiAocmVzdWx0KQorICAgICAgICAgICAgUHlfUkVUVVJOX1RSVUU7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIFB5X1JFVFVSTl9GQUxTRTsKKyAgICBjYXNlIFB5X0xFOgorICAgIGNhc2UgUHlfR0U6CisgICAgY2FzZSBQeV9MVDoKKyAgICBjYXNlIFB5X0dUOgorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorfQorCisvKiBIYXNoIGZ1bmN0aW9uIGZvciByYW5nZSBvYmplY3RzLiAgUm91Z2ggQyBlcXVpdmFsZW50IG9mCisKKyAgIGlmIG5vdCBsZW4ocik6CisgICAgICAgcmV0dXJuIGhhc2goKGxlbihyKSwgTm9uZSwgTm9uZSkpCisgICBpZiBsZW4ocikgPT0gMToKKyAgICAgICByZXR1cm4gaGFzaCgobGVuKHIpLCByLnN0YXJ0LCBOb25lKSkKKyAgIHJldHVybiBoYXNoKChsZW4ociksIHIuc3RhcnQsIHIuc3RlcCkpCisqLworc3RhdGljIFB5X2hhc2hfdAorcmFuZ2VfaGFzaChyYW5nZW9iamVjdCAqcikKK3sKKyAgICBQeU9iamVjdCAqdDsKKyAgICBQeV9oYXNoX3QgcmVzdWx0ID0gLTE7CisgICAgaW50IGNtcF9yZXN1bHQ7CisKKyAgICB0ID0gUHlUdXBsZV9OZXcoMyk7CisgICAgaWYgKCF0KQorICAgICAgICByZXR1cm4gLTE7CisgICAgUHlfSU5DUkVGKHItPmxlbmd0aCk7CisgICAgUHlUdXBsZV9TRVRfSVRFTSh0LCAwLCByLT5sZW5ndGgpOworICAgIGNtcF9yZXN1bHQgPSBQeU9iamVjdF9Ob3Qoci0+bGVuZ3RoKTsKKyAgICBpZiAoY21wX3Jlc3VsdCA9PSAtMSkKKyAgICAgICAgZ290byBlbmQ7CisgICAgaWYgKGNtcF9yZXN1bHQgPT0gMSkgeworICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CisgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICAgICAgUHlUdXBsZV9TRVRfSVRFTSh0LCAxLCBQeV9Ob25lKTsKKyAgICAgICAgUHlUdXBsZV9TRVRfSVRFTSh0LCAyLCBQeV9Ob25lKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIFB5T2JqZWN0ICpvbmU7CisgICAgICAgIFB5X0lOQ1JFRihyLT5zdGFydCk7CisgICAgICAgIFB5VHVwbGVfU0VUX0lURU0odCwgMSwgci0+c3RhcnQpOworICAgICAgICBvbmUgPSBQeUxvbmdfRnJvbUxvbmcoMSk7CisgICAgICAgIGlmICghb25lKQorICAgICAgICAgICAgZ290byBlbmQ7CisgICAgICAgIGNtcF9yZXN1bHQgPSBQeU9iamVjdF9SaWNoQ29tcGFyZUJvb2woci0+bGVuZ3RoLCBvbmUsIFB5X0VRKTsKKyAgICAgICAgUHlfREVDUkVGKG9uZSk7CisgICAgICAgIGlmIChjbXBfcmVzdWx0ID09IC0xKQorICAgICAgICAgICAgZ290byBlbmQ7CisgICAgICAgIGlmIChjbXBfcmVzdWx0ID09IDEpIHsKKyAgICAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICAgICAgICAgIFB5VHVwbGVfU0VUX0lURU0odCwgMiwgUHlfTm9uZSk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBQeV9JTkNSRUYoci0+c3RlcCk7CisgICAgICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKHQsIDIsIHItPnN0ZXApOworICAgICAgICB9CisgICAgfQorICAgIHJlc3VsdCA9IFB5T2JqZWN0X0hhc2godCk7CisgIGVuZDoKKyAgICBQeV9ERUNSRUYodCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogc3RhdGljIFB5T2JqZWN0ICoKIHJhbmdlX2NvdW50KHJhbmdlb2JqZWN0ICpyLCBQeU9iamVjdCAqb2IpCiB7CkBAIC03NDksNiArODgxLDEzIEBACiAgICAge05VTEwsICAgICAgICAgICAgICBOVUxMfSAgICAgICAgICAgLyogc2VudGluZWwgKi8KIH07CiAKK3N0YXRpYyBQeU1lbWJlckRlZiByYW5nZV9tZW1iZXJzW10gPSB7CisgICAgeyJzdGFydCIsICAgVF9PQkpFQ1RfRVgsICAgIG9mZnNldG9mKHJhbmdlb2JqZWN0LCBzdGFydCksICAgUkVBRE9OTFl9LAorICAgIHsic3RvcCIsICAgIFRfT0JKRUNUX0VYLCAgICBvZmZzZXRvZihyYW5nZW9iamVjdCwgc3RvcCksICAgIFJFQURPTkxZfSwKKyAgICB7InN0ZXAiLCAgICBUX09CSkVDVF9FWCwgICAgb2Zmc2V0b2YocmFuZ2VvYmplY3QsIHN0ZXApLCAgICBSRUFET05MWX0sCisgICAgezB9Cit9OworCiBQeVR5cGVPYmplY3QgUHlSYW5nZV9UeXBlID0gewogICAgICAgICBQeVZhck9iamVjdF9IRUFEX0lOSVQoJlB5VHlwZV9UeXBlLCAwKQogICAgICAgICAicmFuZ2UiLCAgICAgICAgICAgICAgICAvKiBOYW1lIG9mIHRoaXMgdHlwZSAqLwpAQCAtNzYzLDcgKzkwMiw3IEBACiAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2FzX251bWJlciAqLwogICAgICAgICAmcmFuZ2VfYXNfc2VxdWVuY2UsICAgICAvKiB0cF9hc19zZXF1ZW5jZSAqLwogICAgICAgICAmcmFuZ2VfYXNfbWFwcGluZywgICAgICAvKiB0cF9hc19tYXBwaW5nICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2hhc2ggKi8KKyAgICAgICAgKGhhc2hmdW5jKXJhbmdlX2hhc2gsICAgLyogdHBfaGFzaCAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9jYWxsICovCiAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3N0ciAqLwogICAgICAgICBQeU9iamVjdF9HZW5lcmljR2V0QXR0ciwgIC8qIHRwX2dldGF0dHJvICovCkBAIC03NzMsMTIgKzkxMiwxMiBAQAogICAgICAgICByYW5nZV9kb2MsICAgICAgICAgICAgICAvKiB0cF9kb2MgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfdHJhdmVyc2UgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KKyAgICAgICAgcmFuZ2VfcmljaGNvbXBhcmUsICAgICAgLyogdHBfcmljaGNvbXBhcmUgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfd2Vha2xpc3RvZmZzZXQgKi8KICAgICAgICAgcmFuZ2VfaXRlciwgICAgICAgICAgICAgLyogdHBfaXRlciAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pdGVybmV4dCAqLwogICAgICAgICByYW5nZV9tZXRob2RzLCAgICAgICAgICAvKiB0cF9tZXRob2RzICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KKyAgICAgICAgcmFuZ2VfbWVtYmVycywgICAgICAgICAgLyogdHBfbWVtYmVycyAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYmFzZSAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9kaWN0ICovCmRpZmYgLS1naXQgYS9PYmplY3RzL3NldG9iamVjdC5jIGIvT2JqZWN0cy9zZXRvYmplY3QuYwppbmRleCAzYWJlZWZiLi5hMDVhOTdiIDEwMDY0NAotLS0gYS9PYmplY3RzL3NldG9iamVjdC5jCisrKyBiL09iamVjdHMvc2V0b2JqZWN0LmMKQEAgLTc3LDcgKzc3LDcgQEAKIHN0YXRpYyBzZXRlbnRyeSAqCiBzZXRfbG9va2tleShQeVNldE9iamVjdCAqc28sIFB5T2JqZWN0ICprZXksIHJlZ2lzdGVyIFB5X2hhc2hfdCBoYXNoKQogewotICAgIHJlZ2lzdGVyIFB5X3NzaXplX3QgaTsKKyAgICByZWdpc3RlciBzaXplX3QgaTsKICAgICByZWdpc3RlciBzaXplX3QgcGVydHVyYjsKICAgICByZWdpc3RlciBzZXRlbnRyeSAqZnJlZXNsb3Q7CiAgICAgcmVnaXN0ZXIgc2l6ZV90IG1hc2sgPSBzby0+bWFzazsKQEAgLTg2LDcgKzg2LDcgQEAKICAgICByZWdpc3RlciBpbnQgY21wOwogICAgIFB5T2JqZWN0ICpzdGFydGtleTsKIAotICAgIGkgPSBoYXNoICYgbWFzazsKKyAgICBpID0gKHNpemVfdCloYXNoICYgbWFzazsKICAgICBlbnRyeSA9ICZ0YWJsZVtpXTsKICAgICBpZiAoZW50cnktPmtleSA9PSBOVUxMIHx8IGVudHJ5LT5rZXkgPT0ga2V5KQogICAgICAgICByZXR1cm4gZW50cnk7CkBAIC0xNTksNyArMTU5LDcgQEAKIHN0YXRpYyBzZXRlbnRyeSAqCiBzZXRfbG9va2tleV91bmljb2RlKFB5U2V0T2JqZWN0ICpzbywgUHlPYmplY3QgKmtleSwgcmVnaXN0ZXIgUHlfaGFzaF90IGhhc2gpCiB7Ci0gICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBpOworICAgIHJlZ2lzdGVyIHNpemVfdCBpOwogICAgIHJlZ2lzdGVyIHNpemVfdCBwZXJ0dXJiOwogICAgIHJlZ2lzdGVyIHNldGVudHJ5ICpmcmVlc2xvdDsKICAgICByZWdpc3RlciBzaXplX3QgbWFzayA9IHNvLT5tYXNrOwpAQCAtMTc0LDcgKzE3NCw3IEBACiAgICAgICAgIHNvLT5sb29rdXAgPSBzZXRfbG9va2tleTsKICAgICAgICAgcmV0dXJuIHNldF9sb29ra2V5KHNvLCBrZXksIGhhc2gpOwogICAgIH0KLSAgICBpID0gaGFzaCAmIG1hc2s7CisgICAgaSA9IChzaXplX3QpaGFzaCAmIG1hc2s7CiAgICAgZW50cnkgPSAmdGFibGVbaV07CiAgICAgaWYgKGVudHJ5LT5rZXkgPT0gTlVMTCB8fCBlbnRyeS0+a2V5ID09IGtleSkKICAgICAgICAgcmV0dXJuIGVudHJ5OwpAQCAtMjU2LDcgKzI1Niw3IEBACiAgICAgc2V0ZW50cnkgKnRhYmxlID0gc28tPnRhYmxlOwogICAgIHJlZ2lzdGVyIHNldGVudHJ5ICplbnRyeTsKIAotICAgIGkgPSBoYXNoICYgbWFzazsKKyAgICBpID0gKHNpemVfdCloYXNoICYgbWFzazsKICAgICBlbnRyeSA9ICZ0YWJsZVtpXTsKICAgICBmb3IgKHBlcnR1cmIgPSBoYXNoOyBlbnRyeS0+a2V5ICE9IE5VTEw7IHBlcnR1cmIgPj49IFBFUlRVUkJfU0hJRlQpIHsKICAgICAgICAgaSA9IChpIDw8IDIpICsgaSArIHBlcnR1cmIgKyAxOwpAQCAtMzg2LDcgKzM4Niw3IEBACiAgICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBuX3VzZWQ7CiAKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgeworICAgICAgICAoaGFzaCA9ICgoUHlBU0NJSU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiAtMTsKQEAgLTQzNCw3ICs0MzQsNyBAQAogICAgIGFzc2VydCAoUHlBbnlTZXRfQ2hlY2soc28pKTsKIAogICAgIGlmICghUHlVbmljb2RlX0NoZWNrRXhhY3Qoa2V5KSB8fAotICAgICAgICAoaGFzaCA9ICgoUHlVbmljb2RlT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CisgICAgICAgIChoYXNoID0gKChQeUFTQ0lJT2JqZWN0ICopIGtleSktPmhhc2gpID09IC0xKSB7CiAgICAgICAgIGhhc2ggPSBQeU9iamVjdF9IYXNoKGtleSk7CiAgICAgICAgIGlmIChoYXNoID09IC0xKQogICAgICAgICAgICAgcmV0dXJuIC0xOwpAQCAtNTc5LDExICs1NzksOCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHNldF9yZXByKFB5U2V0T2JqZWN0ICpzbykKIHsKLSAgICBQeU9iamVjdCAqa2V5cywgKnJlc3VsdD1OVUxMOwotICAgIFB5X1VOSUNPREUgKnU7CisgICAgUHlPYmplY3QgKnJlc3VsdD1OVUxMLCAqa2V5cywgKmxpc3RyZXByLCAqdG1wOwogICAgIGludCBzdGF0dXMgPSBQeV9SZXByRW50ZXIoKFB5T2JqZWN0Kilzbyk7Ci0gICAgUHlPYmplY3QgKmxpc3RyZXByOwotICAgIFB5X3NzaXplX3QgbmV3c2l6ZTsKIAogICAgIGlmIChzdGF0dXMgIT0gMCkgewogICAgICAgICBpZiAoc3RhdHVzIDwgMCkKQEAgLTYwMSwyOSArNTk4LDI0IEBACiAgICAgaWYgKGtleXMgPT0gTlVMTCkKICAgICAgICAgZ290byBkb25lOwogCisgICAgLyogcmVwcihrZXlzKVsxOi0xXSAqLwogICAgIGxpc3RyZXByID0gUHlPYmplY3RfUmVwcihrZXlzKTsKICAgICBQeV9ERUNSRUYoa2V5cyk7CiAgICAgaWYgKGxpc3RyZXByID09IE5VTEwpCiAgICAgICAgIGdvdG8gZG9uZTsKLSAgICBuZXdzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKGxpc3RyZXByKTsKLSAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoTlVMTCwgbmV3c2l6ZSk7Ci0gICAgaWYgKHJlc3VsdCkgewotICAgICAgICB1ID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KTsKLSAgICAgICAgKnUrKyA9ICd7JzsKLSAgICAgICAgLyogT21pdCB0aGUgYnJhY2tldHMgZnJvbSB0aGUgbGlzdHJlcHIgKi8KLSAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHUsIFB5VW5pY29kZV9BU19VTklDT0RFKGxpc3RyZXByKSsxLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKGxpc3RyZXByKS0yKTsKLSAgICAgICAgdSArPSBuZXdzaXplLTI7Ci0gICAgICAgICp1KysgPSAnfSc7Ci0gICAgfQorICAgIHRtcCA9IFB5VW5pY29kZV9TdWJzdHJpbmcobGlzdHJlcHIsIDEsIFB5VW5pY29kZV9HRVRfTEVOR1RIKGxpc3RyZXByKS0xKTsKICAgICBQeV9ERUNSRUYobGlzdHJlcHIpOwotICAgIGlmIChQeV9UWVBFKHNvKSAhPSAmUHlTZXRfVHlwZSkgewotICAgICAgICBQeU9iamVjdCAqdG1wID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVzKCVVKSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9UWVBFKHNvKS0+dHBfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCk7Ci0gICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOwotICAgICAgICByZXN1bHQgPSB0bXA7Ci0gICAgfQorICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgZ290byBkb25lOworICAgIGxpc3RyZXByID0gdG1wOworCisgICAgaWYgKFB5X1RZUEUoc28pICE9ICZQeVNldF9UeXBlKQorICAgICAgICByZXN1bHQgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJXMoeyVVfSkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9UWVBFKHNvKS0+dHBfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdHJlcHIpOworICAgIGVsc2UKKyAgICAgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoInslVX0iLCBsaXN0cmVwcik7CisgICAgUHlfREVDUkVGKGxpc3RyZXByKTsKIGRvbmU6CiAgICAgUHlfUmVwckxlYXZlKChQeU9iamVjdCopc28pOwogICAgIHJldHVybiByZXN1bHQ7CkBAIC02ODIsNyArNjc0LDcgQEAKICAgICBzZXRlbnRyeSAqZW50cnk7CiAKICAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KGtleSkgfHwKLSAgICAgICAgKGhhc2ggPSAoKFB5VW5pY29kZU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgeworICAgICAgICAoaGFzaCA9ICgoUHlBU0NJSU9iamVjdCAqKSBrZXkpLT5oYXNoKSA9PSAtMSkgewogICAgICAgICBoYXNoID0gUHlPYmplY3RfSGFzaChrZXkpOwogICAgICAgICBpZiAoaGFzaCA9PSAtMSkKICAgICAgICAgICAgIHJldHVybiAtMTsKQEAgLTc2OCwxNCArNzYwLDE0IEBACiBmcm96ZW5zZXRfaGFzaChQeU9iamVjdCAqc2VsZikKIHsKICAgICBQeVNldE9iamVjdCAqc28gPSAoUHlTZXRPYmplY3QgKilzZWxmOwotICAgIFB5X2hhc2hfdCBoLCBoYXNoID0gMTkyNzg2ODIzN0w7CisgICAgUHlfdWhhc2hfdCBoLCBoYXNoID0gMTkyNzg2ODIzN1U7CiAgICAgc2V0ZW50cnkgKmVudHJ5OwogICAgIFB5X3NzaXplX3QgcG9zID0gMDsKIAogICAgIGlmIChzby0+aGFzaCAhPSAtMSkKICAgICAgICAgcmV0dXJuIHNvLT5oYXNoOwogCi0gICAgaGFzaCAqPSBQeVNldF9HRVRfU0laRShzZWxmKSArIDE7CisgICAgaGFzaCAqPSAoUHlfdWhhc2hfdClQeVNldF9HRVRfU0laRShzZWxmKSArIDE7CiAgICAgd2hpbGUgKHNldF9uZXh0KHNvLCAmcG9zLCAmZW50cnkpKSB7CiAgICAgICAgIC8qIFdvcmsgdG8gaW5jcmVhc2UgdGhlIGJpdCBkaXNwZXJzaW9uIGZvciBjbG9zZWx5IHNwYWNlZCBoYXNoCiAgICAgICAgICAgIHZhbHVlcy4gIFRoZSBpcyBpbXBvcnRhbnQgYmVjYXVzZSBzb21lIHVzZSBjYXNlcyBoYXZlIG1hbnkKQEAgLTc4MywxMSArNzc1LDExIEBACiAgICAgICAgICAgIGhhc2hlcyBzbyB0aGF0IG1hbnkgZGlzdGluY3QgY29tYmluYXRpb25zIGNvbGxhcHNlIHRvIG9ubHkKICAgICAgICAgICAgYSBoYW5kZnVsIG9mIGRpc3RpbmN0IGhhc2ggdmFsdWVzLiAqLwogICAgICAgICBoID0gZW50cnktPmhhc2g7Ci0gICAgICAgIGhhc2ggXj0gKGggXiAoaCA8PCAxNikgXiA4OTg2OTc0N0wpICAqIDM2NDQ3OTgxNjd1OworICAgICAgICBoYXNoIF49IChoIF4gKGggPDwgMTYpIF4gODk4Njk3NDdVKSAgKiAzNjQ0Nzk4MTY3VTsKICAgICB9Ci0gICAgaGFzaCA9IGhhc2ggKiA2OTA2OUwgKyA5MDcxMzM5MjNMOworICAgIGhhc2ggPSBoYXNoICogNjkwNjlVICsgOTA3MTMzOTIzVTsKICAgICBpZiAoaGFzaCA9PSAtMSkKLSAgICAgICAgaGFzaCA9IDU5MDkyMzcxM0w7CisgICAgICAgIGhhc2ggPSA1OTA5MjM3MTNVOwogICAgIHNvLT5oYXNoID0gaGFzaDsKICAgICByZXR1cm4gaGFzaDsKIH0KQEAgLTEwNzYsOSArMTA2OCwxMCBAQAogICAgIHJldHVybiBlbXB0eWZyb3plbnNldDsKIH0KIAotdm9pZAotUHlTZXRfRmluaSh2b2lkKQoraW50CitQeVNldF9DbGVhckZyZWVMaXN0KHZvaWQpCiB7CisgICAgaW50IGZyZWVsaXN0X3NpemUgPSBudW1mcmVlOwogICAgIFB5U2V0T2JqZWN0ICpzbzsKIAogICAgIHdoaWxlIChudW1mcmVlKSB7CkBAIC0xMDg2LDYgKzEwNzksMTMgQEAKICAgICAgICAgc28gPSBmcmVlX2xpc3RbbnVtZnJlZV07CiAgICAgICAgIFB5T2JqZWN0X0dDX0RlbChzbyk7CiAgICAgfQorICAgIHJldHVybiBmcmVlbGlzdF9zaXplOworfQorCit2b2lkCitQeVNldF9GaW5pKHZvaWQpCit7CisgICAgUHlTZXRfQ2xlYXJGcmVlTGlzdCgpOwogICAgIFB5X0NMRUFSKGR1bW15KTsKICAgICBQeV9DTEVBUihlbXB0eWZyb3plbnNldCk7CiB9CkBAIC0xMjEwLDEwICsxMjEwLDggQEAKIHsKICAgICBQeVNldE9iamVjdCAqcmVzdWx0OwogCi0gICAgaWYgKCFQeUFueVNldF9DaGVjayhzbykgfHwgIVB5QW55U2V0X0NoZWNrKG90aGVyKSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlBbnlTZXRfQ2hlY2soc28pIHx8ICFQeUFueVNldF9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIAogICAgIHJlc3VsdCA9IChQeVNldE9iamVjdCAqKXNldF9jb3B5KHNvKTsKICAgICBpZiAocmVzdWx0ID09IE5VTEwpCkBAIC0xMjMwLDEwICsxMjI4LDkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzZXRfaW9yKFB5U2V0T2JqZWN0ICpzbywgUHlPYmplY3QgKm90aGVyKQogewotICAgIGlmICghUHlBbnlTZXRfQ2hlY2sob3RoZXIpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCFQeUFueVNldF9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKKwogICAgIGlmIChzZXRfdXBkYXRlX2ludGVybmFsKHNvLCBvdGhlcikgPT0gLTEpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIFB5X0lOQ1JFRihzbyk7CkBAIC0xMzgzLDEwICsxMzgwLDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzZXRfYW5kKFB5U2V0T2JqZWN0ICpzbywgUHlPYmplY3QgKm90aGVyKQogewotICAgIGlmICghUHlBbnlTZXRfQ2hlY2soc28pIHx8ICFQeUFueVNldF9DaGVjayhvdGhlcikpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBpZiAoIVB5QW55U2V0X0NoZWNrKHNvKSB8fCAhUHlBbnlTZXRfQ2hlY2sob3RoZXIpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgcmV0dXJuIHNldF9pbnRlcnNlY3Rpb24oc28sIG90aGVyKTsKIH0KIApAQCAtMTM5NSwxMCArMTM5MCw4IEBACiB7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKIAotICAgIGlmICghUHlBbnlTZXRfQ2hlY2sob3RoZXIpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCFQeUFueVNldF9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICByZXN1bHQgPSBzZXRfaW50ZXJzZWN0aW9uX3VwZGF0ZShzbywgb3RoZXIpOwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xNjI1LDIwICsxNjE4LDE2IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc2V0X3N1YihQeVNldE9iamVjdCAqc28sIFB5T2JqZWN0ICpvdGhlcikKIHsKLSAgICBpZiAoIVB5QW55U2V0X0NoZWNrKHNvKSB8fCAhUHlBbnlTZXRfQ2hlY2sob3RoZXIpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICB9CisgICAgaWYgKCFQeUFueVNldF9DaGVjayhzbykgfHwgIVB5QW55U2V0X0NoZWNrKG90aGVyKSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIHJldHVybiBzZXRfZGlmZmVyZW5jZShzbywgb3RoZXIpOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgogc2V0X2lzdWIoUHlTZXRPYmplY3QgKnNvLCBQeU9iamVjdCAqb3RoZXIpCiB7Ci0gICAgaWYgKCFQeUFueVNldF9DaGVjayhvdGhlcikpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBpZiAoIVB5QW55U2V0X0NoZWNrKG90aGVyKSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIGlmIChzZXRfZGlmZmVyZW5jZV91cGRhdGVfaW50ZXJuYWwoc28sIG90aGVyKSA9PSAtMSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgUHlfSU5DUkVGKHNvKTsKQEAgLTE3MzYsMTAgKzE3MjUsOCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHNldF94b3IoUHlTZXRPYmplY3QgKnNvLCBQeU9iamVjdCAqb3RoZXIpCiB7Ci0gICAgaWYgKCFQeUFueVNldF9DaGVjayhzbykgfHwgIVB5QW55U2V0X0NoZWNrKG90aGVyKSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlBbnlTZXRfQ2hlY2soc28pIHx8ICFQeUFueVNldF9DaGVjayhvdGhlcikpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKICAgICByZXR1cm4gc2V0X3N5bW1ldHJpY19kaWZmZXJlbmNlKHNvLCBvdGhlcik7CiB9CiAKQEAgLTE3NDgsMTAgKzE3MzUsOCBAQAogewogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAKLSAgICBpZiAoIVB5QW55U2V0X0NoZWNrKG90aGVyKSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlBbnlTZXRfQ2hlY2sob3RoZXIpKQorICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgcmVzdWx0ID0gc2V0X3N5bW1ldHJpY19kaWZmZXJlbmNlX3VwZGF0ZShzbywgb3RoZXIpOwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xODEzLDEwICsxNzk4LDkgQEAKIHsKICAgICBQeU9iamVjdCAqcjEsICpyMjsKIAotICAgIGlmKCFQeUFueVNldF9DaGVjayh3KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmKCFQeUFueVNldF9DaGVjayh3KSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOworCiAgICAgc3dpdGNoIChvcCkgewogICAgIGNhc2UgUHlfRVE6CiAgICAgICAgIGlmIChQeVNldF9HRVRfU0laRSh2KSAhPSBQeVNldF9HRVRfU0laRSh3KSkKQEAgLTE4NDYsOCArMTgzMCw3IEBACiAgICAgICAgICAgICBQeV9SRVRVUk5fRkFMU0U7CiAgICAgICAgIHJldHVybiBzZXRfaXNzdXBlcnNldCh2LCB3KTsKICAgICB9Ci0gICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7CisgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogfQogCiBzdGF0aWMgUHlPYmplY3QgKgpAQCAtMTk1OSw2ICsxOTQyLDcgQEAKIHNldF9yZWR1Y2UoUHlTZXRPYmplY3QgKnNvKQogewogICAgIFB5T2JqZWN0ICprZXlzPU5VTEwsICphcmdzPU5VTEwsICpyZXN1bHQ9TlVMTCwgKmRpY3Q9TlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihfX2RpY3RfXyk7CiAKICAgICBrZXlzID0gUHlTZXF1ZW5jZV9MaXN0KChQeU9iamVjdCAqKXNvKTsKICAgICBpZiAoa2V5cyA9PSBOVUxMKQpAQCAtMTk2Niw3ICsxOTUwLDcgQEAKICAgICBhcmdzID0gUHlUdXBsZV9QYWNrKDEsIGtleXMpOwogICAgIGlmIChhcmdzID09IE5VTEwpCiAgICAgICAgIGdvdG8gZG9uZTsKLSAgICBkaWN0ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZygoUHlPYmplY3QgKilzbywgIl9fZGljdF9fIik7CisgICAgZGljdCA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0ICopc28sICZQeUlkX19fZGljdF9fKTsKICAgICBpZiAoZGljdCA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIGRpY3QgPSBQeV9Ob25lOwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zbGljZW9iamVjdC5jIGIvT2JqZWN0cy9zbGljZW9iamVjdC5jCmluZGV4IGQ3Yjk3YzkuLmM0YTE5MDcgMTAwNjQ0Ci0tLSBhL09iamVjdHMvc2xpY2VvYmplY3QuYworKysgYi9PYmplY3RzL3NsaWNlb2JqZWN0LmMKQEAgLTE3LDYgKzE3LDE3IEBACiAjaW5jbHVkZSAic3RydWN0bWVtYmVyLmgiCiAKIHN0YXRpYyBQeU9iamVjdCAqCitlbGxpcHNpc19uZXcoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3YXJncykKK3sKKyAgICBpZiAoUHlUdXBsZV9HRVRfU0laRShhcmdzKSB8fCAoa3dhcmdzICYmIFB5RGljdF9TaXplKGt3YXJncykpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJFbGxpcHNpc1R5cGUgdGFrZXMgbm8gYXJndW1lbnRzIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBQeV9JTkNSRUYoUHlfRWxsaXBzaXMpOworICAgIHJldHVybiBQeV9FbGxpcHNpczsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKIGVsbGlwc2lzX3JlcHIoUHlPYmplY3QgKm9wKQogewogICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZygiRWxsaXBzaXMiKTsKQEAgLTQzLDYgKzU0LDI0IEBACiAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfc2V0YXR0cm8gKi8KICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9hc19idWZmZXIgKi8KICAgICBQeV9UUEZMQUdTX0RFRkFVTFQsICAgICAgICAgICAgICAgICAvKiB0cF9mbGFncyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RvYyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3RyYXZlcnNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfY2xlYXIgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9yaWNoY29tcGFyZSAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX3dlYWtsaXN0b2Zmc2V0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfaXRlciAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2l0ZXJuZXh0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfbWV0aG9kcyAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX21lbWJlcnMgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9nZXRzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9iYXNlICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfZGljdCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX2dldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2Rlc2NyX3NldCAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRwX2RpY3RvZmZzZXQgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9pbml0ICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdHBfYWxsb2MgKi8KKyAgICBlbGxpcHNpc19uZXcsICAgICAgICAgICAgICAgICAgICAgICAvKiB0cF9uZXcgKi8KIH07CiAKIFB5T2JqZWN0IF9QeV9FbGxpcHNpc09iamVjdCA9IHsKQEAgLTUxLDE5ICs4MCwzOCBAQAogfTsKIAogCi0vKiBTbGljZSBvYmplY3QgaW1wbGVtZW50YXRpb24KKy8qIFNsaWNlIG9iamVjdCBpbXBsZW1lbnRhdGlvbiAqLwogCi0gICBzdGFydCwgc3RvcCwgYW5kIHN0ZXAgYXJlIHB5dGhvbiBvYmplY3RzIHdpdGggTm9uZSBpbmRpY2F0aW5nIG5vCisvKiBVc2luZyBhIGNhY2hlIGlzIHZlcnkgZWZmZWN0aXZlIHNpbmNlIHR5cGljYWxseSBvbmx5IGEgc2luZ2xlIHNsaWNlIGlzCisgKiBjcmVhdGVkIGFuZCB0aGVuIGRlbGV0ZWQgYWdhaW4KKyAqLworc3RhdGljIFB5U2xpY2VPYmplY3QgKnNsaWNlX2NhY2hlID0gTlVMTDsKK3ZvaWQgUHlTbGljZV9GaW5pKHZvaWQpCit7CisgICAgUHlTbGljZU9iamVjdCAqb2JqID0gc2xpY2VfY2FjaGU7CisgICAgaWYgKG9iaiAhPSBOVUxMKSB7CisgICAgICAgIHNsaWNlX2NhY2hlID0gTlVMTDsKKyAgICAgICAgUHlPYmplY3RfRGVsKG9iaik7CisgICAgfQorfQorCisvKiBzdGFydCwgc3RvcCwgYW5kIHN0ZXAgYXJlIHB5dGhvbiBvYmplY3RzIHdpdGggTm9uZSBpbmRpY2F0aW5nIG5vCiAgICBpbmRleCBpcyBwcmVzZW50LgogKi8KIAogUHlPYmplY3QgKgogUHlTbGljZV9OZXcoUHlPYmplY3QgKnN0YXJ0LCBQeU9iamVjdCAqc3RvcCwgUHlPYmplY3QgKnN0ZXApCiB7Ci0gICAgUHlTbGljZU9iamVjdCAqb2JqID0gUHlPYmplY3RfTmV3KFB5U2xpY2VPYmplY3QsICZQeVNsaWNlX1R5cGUpOwotCi0gICAgaWYgKG9iaiA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBQeVNsaWNlT2JqZWN0ICpvYmo7CisgICAgaWYgKHNsaWNlX2NhY2hlICE9IE5VTEwpIHsKKyAgICAgICAgb2JqID0gc2xpY2VfY2FjaGU7CisgICAgICAgIHNsaWNlX2NhY2hlID0gTlVMTDsKKyAgICAgICAgX1B5X05ld1JlZmVyZW5jZSgoUHlPYmplY3QgKilvYmopOworICAgIH0gZWxzZSB7CisgICAgICAgIG9iaiA9IFB5T2JqZWN0X05ldyhQeVNsaWNlT2JqZWN0LCAmUHlTbGljZV9UeXBlKTsKKyAgICAgICAgaWYgKG9iaiA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogCiAgICAgaWYgKHN0ZXAgPT0gTlVMTCkgc3RlcCA9IFB5X05vbmU7CiAgICAgUHlfSU5DUkVGKHN0ZXApOwpAQCAtMjMxLDcgKzI3OSwxMCBAQAogICAgIFB5X0RFQ1JFRihyLT5zdGVwKTsKICAgICBQeV9ERUNSRUYoci0+c3RhcnQpOwogICAgIFB5X0RFQ1JFRihyLT5zdG9wKTsKLSAgICBQeU9iamVjdF9EZWwocik7CisgICAgaWYgKHNsaWNlX2NhY2hlID09IE5VTEwpCisgICAgICAgIHNsaWNlX2NhY2hlID0gcjsKKyAgICBlbHNlCisgICAgICAgIFB5T2JqZWN0X0RlbChyKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTI5NywxMCArMzQ4LDggQEAKICAgICBQeU9iamVjdCAqdDI7CiAgICAgUHlPYmplY3QgKnJlczsKIAotICAgIGlmICghUHlTbGljZV9DaGVjayh2KSB8fCAhUHlTbGljZV9DaGVjayh3KSkgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgICAgICByZXR1cm4gUHlfTm90SW1wbGVtZW50ZWQ7Ci0gICAgfQorICAgIGlmICghUHlTbGljZV9DaGVjayh2KSB8fCAhUHlTbGljZV9DaGVjayh3KSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogCiAgICAgaWYgKHYgPT0gdykgewogICAgICAgICAvKiBYWFggRG8gd2UgcmVhbGx5IG5lZWQgdGhpcyBzaG9ydGN1dD8KZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL2FzY2lpbGliLmggYi9PYmplY3RzL3N0cmluZ2xpYi9hc2NpaWxpYi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFlNjhlM2MKLS0tIC9kZXYvbnVsbAorKysgYi9PYmplY3RzL3N0cmluZ2xpYi9hc2NpaWxpYi5oCkBAIC0wLDAgKzEsMzIgQEAKKy8qIHRoaXMgaXMgc29ydCBvZiBhIGhhY2suICB0aGVyZSdzIGF0IGxlYXN0IG9uZSBwbGFjZSAoZm9ybWF0dGluZworICAgZmxvYXRzKSB3aGVyZSBzb21lIHN0cmluZ2xpYiBjb2RlIHRha2VzIGEgZGlmZmVyZW50IHBhdGggaWYgaXQncworICAgY29tcGlsZWQgYXMgdW5pY29kZS4gKi8KKyNkZWZpbmUgU1RSSU5HTElCX0lTX1VOSUNPREUgICAgIDEKKworI2RlZmluZSBGQVNUU0VBUkNIICAgICAgICAgICAgICAgYXNjaWlsaWJfZmFzdHNlYXJjaAorI2RlZmluZSBTVFJJTkdMSUIoRikgICAgICAgICAgICAgYXNjaWlsaWJfIyNGCisjZGVmaW5lIFNUUklOR0xJQl9PQkpFQ1QgICAgICAgICBQeVVuaWNvZGVPYmplY3QKKyNkZWZpbmUgU1RSSU5HTElCX1NJWkVPRl9DSEFSICAgIDEKKyNkZWZpbmUgU1RSSU5HTElCX0NIQVIgICAgICAgICAgIFB5X1VDUzEKKyNkZWZpbmUgU1RSSU5HTElCX1RZUEVfTkFNRSAgICAgICJ1bmljb2RlIgorI2RlZmluZSBTVFJJTkdMSUJfUEFSU0VfQ09ERSAgICAgIlUiCisjZGVmaW5lIFNUUklOR0xJQl9FTVBUWSAgICAgICAgICB1bmljb2RlX2VtcHR5CisjZGVmaW5lIFNUUklOR0xJQl9JU1NQQUNFICAgICAgICBQeV9VTklDT0RFX0lTU1BBQ0UKKyNkZWZpbmUgU1RSSU5HTElCX0lTTElORUJSRUFLICAgIEJMT09NX0xJTkVCUkVBSworI2RlZmluZSBTVFJJTkdMSUJfSVNERUNJTUFMICAgICAgUHlfVU5JQ09ERV9JU0RFQ0lNQUwKKyNkZWZpbmUgU1RSSU5HTElCX1RPREVDSU1BTCAgICAgIFB5X1VOSUNPREVfVE9ERUNJTUFMCisjZGVmaW5lIFNUUklOR0xJQl9TVFIgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQQorI2RlZmluZSBTVFJJTkdMSUJfTEVOICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgKKyNkZWZpbmUgU1RSSU5HTElCX05FVyAgICAgICAgICAgIHVuaWNvZGVfZnJvbWFzY2lpCisjZGVmaW5lIFNUUklOR0xJQl9SRVNJWkUgICAgICAgICBub3Rfc3VwcG9ydGVkCisjZGVmaW5lIFNUUklOR0xJQl9DSEVDSyAgICAgICAgICBQeVVuaWNvZGVfQ2hlY2sKKyNkZWZpbmUgU1RSSU5HTElCX0NIRUNLX0VYQUNUICAgIFB5VW5pY29kZV9DaGVja0V4YWN0CisjZGVmaW5lIFNUUklOR0xJQl9HUk9VUElORyAgICAgICBfUHlVbmljb2RlX0luc2VydFRob3VzYW5kc0dyb3VwaW5nCisjZGVmaW5lIFNUUklOR0xJQl9HUk9VUElOR19MT0NBTEUgX1B5VW5pY29kZV9JbnNlcnRUaG91c2FuZHNHcm91cGluZ0xvY2FsZQorCisjZGVmaW5lIFNUUklOR0xJQl9UT1NUUiAgICAgICAgICBQeU9iamVjdF9TdHIKKyNkZWZpbmUgU1RSSU5HTElCX1RPQVNDSUkgICAgICAgIFB5T2JqZWN0X0FTQ0lJCisKKyNkZWZpbmUgX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nIF9QeVVuaWNvZGVfYXNjaWlfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcKKyNkZWZpbmUgX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nTG9jYWxlIF9QeVVuaWNvZGVfYXNjaWlfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmdMb2NhbGUKKwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvY29kZWNzLmggYi9PYmplY3RzL3N0cmluZ2xpYi9jb2RlY3MuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMzk5NDhiCi0tLSAvZGV2L251bGwKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvY29kZWNzLmgKQEAgLTAsMCArMSwzNTMgQEAKKy8qIHN0cmluZ2xpYjogY29kZWMgaW1wbGVtZW50YXRpb25zICovCisKKyNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQorCisvKiBNYXNrIHRvIGNoZWNrIG9yIGZvcmNlIGFsaWdubWVudCBvZiBhIHBvaW50ZXIgdG8gQyAnbG9uZycgYm91bmRhcmllcyAqLworI2RlZmluZSBMT05HX1BUUl9NQVNLIChzaXplX3QpIChTSVpFT0ZfTE9ORyAtIDEpCisKKy8qIE1hc2sgdG8gcXVpY2tseSBjaGVjayB3aGV0aGVyIGEgQyAnbG9uZycgY29udGFpbnMgYQorICAgbm9uLUFTQ0lJLCBVVEY4LWVuY29kZWQgY2hhci4gKi8KKyNpZiAoU0laRU9GX0xPTkcgPT0gOCkKKyMgZGVmaW5lIEFTQ0lJX0NIQVJfTUFTSyAweDgwODA4MDgwODA4MDgwODBMCisjZWxpZiAoU0laRU9GX0xPTkcgPT0gNCkKKyMgZGVmaW5lIEFTQ0lJX0NIQVJfTUFTSyAweDgwODA4MDgwTAorI2Vsc2UKKyMgZXJyb3IgQyAnbG9uZycgc2l6ZSBzaG91bGQgYmUgZWl0aGVyIDQgb3IgOCEKKyNlbmRpZgorCitQeV9MT0NBTF9JTkxJTkUoaW50KQorU1RSSU5HTElCKHV0ZjhfdHJ5X2RlY29kZSkoY29uc3QgY2hhciAqc3RhcnQsIGNvbnN0IGNoYXIgKmVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFNUUklOR0xJQl9DSEFSICpkZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqKnNyY19wb3MsIFB5X3NzaXplX3QgKmRlc3RfaW5kZXgpCit7CisgICAgaW50IHJldDsKKyAgICBQeV9zc2l6ZV90IG47CisgICAgY29uc3QgY2hhciAqcyA9IHN0YXJ0OworICAgIGNvbnN0IGNoYXIgKmFsaWduZWRfZW5kID0gKGNvbnN0IGNoYXIgKikgKChzaXplX3QpIGVuZCAmIH5MT05HX1BUUl9NQVNLKTsKKyAgICBTVFJJTkdMSUJfQ0hBUiAqcCA9IGRlc3Q7CisKKyAgICB3aGlsZSAocyA8IGVuZCkgeworICAgICAgICBQeV9VQ1M0IGNoID0gKHVuc2lnbmVkIGNoYXIpKnM7CisKKyAgICAgICAgaWYgKGNoIDwgMHg4MCkgeworICAgICAgICAgICAgLyogRmFzdCBwYXRoIGZvciBydW5zIG9mIEFTQ0lJIGNoYXJhY3RlcnMuIEdpdmVuIHRoYXQgY29tbW9uIFVURi04CisgICAgICAgICAgICAgICBpbnB1dCB3aWxsIGNvbnNpc3Qgb2YgYW4gb3ZlcndoZWxtaW5nIG1ham9yaXR5IG9mIEFTQ0lJCisgICAgICAgICAgICAgICBjaGFyYWN0ZXJzLCB3ZSB0cnkgdG8gb3B0aW1pemUgZm9yIHRoaXMgY2FzZSBieSBjaGVja2luZworICAgICAgICAgICAgICAgYXMgbWFueSBjaGFyYWN0ZXJzIGFzIGEgQyAnbG9uZycgY2FuIGNvbnRhaW4uCisgICAgICAgICAgICAgICBGaXJzdCwgY2hlY2sgaWYgd2UgY2FuIGRvIGFuIGFsaWduZWQgcmVhZCwgYXMgbW9zdCBDUFVzIGhhdmUKKyAgICAgICAgICAgICAgIGEgcGVuYWx0eSBmb3IgdW5hbGlnbmVkIHJlYWRzLgorICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGlmICghKChzaXplX3QpIHMgJiBMT05HX1BUUl9NQVNLKSkgeworICAgICAgICAgICAgICAgIC8qIEhlbHAgcmVnaXN0ZXIgYWxsb2NhdGlvbiAqLworICAgICAgICAgICAgICAgIHJlZ2lzdGVyIGNvbnN0IGNoYXIgKl9zID0gczsKKyAgICAgICAgICAgICAgICByZWdpc3RlciBTVFJJTkdMSUJfQ0hBUiAqX3AgPSBwOworICAgICAgICAgICAgICAgIHdoaWxlIChfcyA8IGFsaWduZWRfZW5kKSB7CisgICAgICAgICAgICAgICAgICAgIC8qIFJlYWQgYSB3aG9sZSBsb25nIGF0IGEgdGltZSAoZWl0aGVyIDQgb3IgOCBieXRlcyksCisgICAgICAgICAgICAgICAgICAgICAgIGFuZCBkbyBhIGZhc3QgdW5yb2xsZWQgY29weSBpZiBpdCBvbmx5IGNvbnRhaW5zIEFTQ0lJCisgICAgICAgICAgICAgICAgICAgICAgIGNoYXJhY3RlcnMuICovCisgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgdmFsdWUgPSAqKHVuc2lnbmVkIGxvbmcgKikgX3M7CisgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSAmIEFTQ0lJX0NIQVJfTUFTSykKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgICAgICBfcFswXSA9IF9zWzBdOworICAgICAgICAgICAgICAgICAgICBfcFsxXSA9IF9zWzFdOworICAgICAgICAgICAgICAgICAgICBfcFsyXSA9IF9zWzJdOworICAgICAgICAgICAgICAgICAgICBfcFszXSA9IF9zWzNdOworI2lmIChTSVpFT0ZfTE9ORyA9PSA4KQorICAgICAgICAgICAgICAgICAgICBfcFs0XSA9IF9zWzRdOworICAgICAgICAgICAgICAgICAgICBfcFs1XSA9IF9zWzVdOworICAgICAgICAgICAgICAgICAgICBfcFs2XSA9IF9zWzZdOworICAgICAgICAgICAgICAgICAgICBfcFs3XSA9IF9zWzddOworI2VuZGlmCisgICAgICAgICAgICAgICAgICAgIF9zICs9IFNJWkVPRl9MT05HOworICAgICAgICAgICAgICAgICAgICBfcCArPSBTSVpFT0ZfTE9ORzsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgcyA9IF9zOworICAgICAgICAgICAgICAgIHAgPSBfcDsKKyAgICAgICAgICAgICAgICBpZiAocyA9PSBlbmQpCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGNoID0gKHVuc2lnbmVkIGNoYXIpKnM7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBpZiAoY2ggPCAweDgwKSB7CisgICAgICAgICAgICBzKys7CisgICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCisgICAgICAgIG4gPSB1dGY4X2NvZGVfbGVuZ3RoW2NoXTsKKworICAgICAgICBpZiAocyArIG4gPiBlbmQpIHsKKyAgICAgICAgICAgIC8qIHVuZXhwZWN0ZWQgZW5kIG9mIGRhdGE6IHRoZSBjYWxsZXIgd2lsbCBkZWNpZGUgd2hldGhlcgorICAgICAgICAgICAgICAgaXQncyBhbiBlcnJvciBvciBub3QgKi8KKyAgICAgICAgICAgIGdvdG8gX2Vycm9yOworICAgICAgICB9CisKKyAgICAgICAgc3dpdGNoIChuKSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIC8qIGludmFsaWQgc3RhcnQgYnl0ZSAqLworICAgICAgICAgICAgZ290byBfZXJyb3I7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIC8qIGludGVybmFsIGVycm9yICovCisgICAgICAgICAgICBnb3RvIF9lcnJvcjsKKyAgICAgICAgY2FzZSAyOgorICAgICAgICAgICAgaWYgKChzWzFdICYgMHhjMCkgIT0gMHg4MCkKKyAgICAgICAgICAgICAgICAvKiBpbnZhbGlkIGNvbnRpbnVhdGlvbiBieXRlICovCisgICAgICAgICAgICAgICAgZ290byBfZXJyb3I7CisgICAgICAgICAgICBjaCA9ICgoc1swXSAmIDB4MWYpIDw8IDYpICsgKHNbMV0gJiAweDNmKTsKKyAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHgwMDdGKSAmJiAoY2ggPD0gMHgwN0ZGKSk7CisgICAgICAgICAgICBzICs9IDI7CisgICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgICAgICBicmVhazsKKworICAgICAgICBjYXNlIDM6CisgICAgICAgICAgICAvKiBEZWNvZGluZyBVVEYtOCBzZXF1ZW5jZXMgaW4gcmFuZ2UgXHhlZFx4YTBceDgwLVx4ZWRceGJmXHhiZgorICAgICAgICAgICAgICAgd2lsbCByZXN1bHQgaW4gc3Vycm9nYXRlcyBpbiByYW5nZSBkODAwLWRmZmYuIFN1cnJvZ2F0ZXMgYXJlCisgICAgICAgICAgICAgICBub3QgdmFsaWQgVVRGLTggc28gdGhleSBhcmUgcmVqZWN0ZWQuCisgICAgICAgICAgICAgICBTZWUgaHR0cDovL3d3dy51bmljb2RlLm9yZy92ZXJzaW9ucy9Vbmljb2RlNS4yLjAvY2gwMy5wZGYKKyAgICAgICAgICAgICAgICh0YWJsZSAzLTcpIGFuZCBodHRwOi8vd3d3LnJmYy1lZGl0b3Iub3JnL3JmYy9yZmMzNjI5LnR4dCAqLworICAgICAgICAgICAgaWYgKChzWzFdICYgMHhjMCkgIT0gMHg4MCB8fAorICAgICAgICAgICAgICAgIChzWzJdICYgMHhjMCkgIT0gMHg4MCB8fAorICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhcilzWzBdID09IDB4RTAgJiYKKyAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIpc1sxXSA8IDB4QTApIHx8CisgICAgICAgICAgICAgICAgKCh1bnNpZ25lZCBjaGFyKXNbMF0gPT0gMHhFRCAmJgorICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hhcilzWzFdID4gMHg5RikpIHsKKyAgICAgICAgICAgICAgICAvKiBpbnZhbGlkIGNvbnRpbnVhdGlvbiBieXRlICovCisgICAgICAgICAgICAgICAgZ290byBfZXJyb3I7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBjaCA9ICgoc1swXSAmIDB4MGYpIDw8IDEyKSArICgoc1sxXSAmIDB4M2YpIDw8IDYpICsgKHNbMl0gJiAweDNmKTsKKyAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHgwN0ZGKSAmJiAoY2ggPD0gMHhGRkZGKSk7CisgICAgICAgICAgICBzICs9IDM7CisgICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgICAgICBicmVhazsKKworICAgICAgICBjYXNlIDQ6CisgICAgICAgICAgICBpZiAoKHNbMV0gJiAweGMwKSAhPSAweDgwIHx8CisgICAgICAgICAgICAgICAgKHNbMl0gJiAweGMwKSAhPSAweDgwIHx8CisgICAgICAgICAgICAgICAgKHNbM10gJiAweGMwKSAhPSAweDgwIHx8CisgICAgICAgICAgICAgICAgKCh1bnNpZ25lZCBjaGFyKXNbMF0gPT0gMHhGMCAmJgorICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hhcilzWzFdIDwgMHg5MCkgfHwKKyAgICAgICAgICAgICAgICAoKHVuc2lnbmVkIGNoYXIpc1swXSA9PSAweEY0ICYmCisgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyKXNbMV0gPiAweDhGKSkgeworICAgICAgICAgICAgICAgIC8qIGludmFsaWQgY29udGludWF0aW9uIGJ5dGUgKi8KKyAgICAgICAgICAgICAgICBnb3RvIF9lcnJvcjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGNoID0gKChzWzBdICYgMHg3KSA8PCAxOCkgKyAoKHNbMV0gJiAweDNmKSA8PCAxMikgKworICAgICAgICAgICAgICAgICAoKHNbMl0gJiAweDNmKSA8PCA2KSArIChzWzNdICYgMHgzZik7CisgICAgICAgICAgICBhc3NlcnQgKChjaCA+IDB4RkZGRikgJiYgKGNoIDw9IDB4MTBmZmZmKSk7CisgICAgICAgICAgICBzICs9IDQ7CisgICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXQgPSAwOworICAgIGdvdG8gX29rOworX2Vycm9yOgorICAgIHJldCA9IC0xOworX29rOgorICAgICpzcmNfcG9zID0gczsKKyAgICAqZGVzdF9pbmRleCA9IHAgLSBkZXN0OworICAgIHJldHVybiByZXQ7Cit9CisKKyN1bmRlZiBMT05HX1BUUl9NQVNLCisjdW5kZWYgQVNDSUlfQ0hBUl9NQVNLCisKKworLyogVVRGLTggZW5jb2RlciBzcGVjaWFsaXplZCBmb3IgYSBVbmljb2RlIGtpbmQgdG8gYXZvaWQgdGhlIHNsb3cKKyAgIFB5VW5pY29kZV9SRUFEKCkgbWFjcm8uIERlbGV0ZSBzb21lIHBhcnRzIG9mIHRoZSBjb2RlIGRlcGVuZGluZyBvbiB0aGUga2luZDoKKyAgIFVDUy0xIHN0cmluZ3MgZG9uJ3QgbmVlZCB0byBoYW5kbGUgc3Vycm9nYXRlcyBmb3IgZXhhbXBsZS4gKi8KK1B5X0xPQ0FMX0lOTElORShQeU9iamVjdCAqKQorU1RSSU5HTElCKHV0ZjhfZW5jb2RlcikoUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICBTVFJJTkdMSUJfQ0hBUiAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK3sKKyNkZWZpbmUgTUFYX1NIT1JUX1VOSUNIQVJTIDMwMCAgLyogbGFyZ2VzdCBzaXplIHdlJ2xsIGRvIG9uIHRoZSBzdGFjayAqLworCisgICAgUHlfc3NpemVfdCBpOyAgICAgICAgICAgICAgICAvKiBpbmRleCBpbnRvIHMgb2YgbmV4dCBpbnB1dCBieXRlICovCisgICAgUHlPYmplY3QgKnJlc3VsdDsgICAgICAgICAgICAvKiByZXN1bHQgc3RyaW5nIG9iamVjdCAqLworICAgIGNoYXIgKnA7ICAgICAgICAgICAgICAgICAgICAgLyogbmV4dCBmcmVlIGJ5dGUgaW4gb3V0cHV0IGJ1ZmZlciAqLworICAgIFB5X3NzaXplX3QgbmFsbG9jYXRlZDsgICAgICAvKiBudW1iZXIgb2YgcmVzdWx0IGJ5dGVzIGFsbG9jYXRlZCAqLworICAgIFB5X3NzaXplX3Qgbm5lZWRlZDsgICAgICAgICAgICAvKiBudW1iZXIgb2YgcmVzdWx0IGJ5dGVzIG5lZWRlZCAqLworI2lmIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA+IDEKKyAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKKyAgICBQeU9iamVjdCAqZXhjID0gTlVMTDsKKyAgICBQeU9iamVjdCAqcmVwID0gTlVMTDsKKyNlbmRpZgorI2lmIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA9PSAxCisgICAgY29uc3QgUHlfc3NpemVfdCBtYXhfY2hhcl9zaXplID0gMjsKKyAgICBjaGFyIHN0YWNrYnVmW01BWF9TSE9SVF9VTklDSEFSUyAqIDJdOworI2VsaWYgU1RSSU5HTElCX1NJWkVPRl9DSEFSID09IDIKKyAgICBjb25zdCBQeV9zc2l6ZV90IG1heF9jaGFyX3NpemUgPSAzOworICAgIGNoYXIgc3RhY2tidWZbTUFYX1NIT1JUX1VOSUNIQVJTICogM107CisjZWxzZSAvKiAgU1RSSU5HTElCX1NJWkVPRl9DSEFSID09IDQgKi8KKyAgICBjb25zdCBQeV9zc2l6ZV90IG1heF9jaGFyX3NpemUgPSA0OworICAgIGNoYXIgc3RhY2tidWZbTUFYX1NIT1JUX1VOSUNIQVJTICogNF07CisjZW5kaWYKKworICAgIGFzc2VydChzaXplID49IDApOworCisgICAgaWYgKHNpemUgPD0gTUFYX1NIT1JUX1VOSUNIQVJTKSB7CisgICAgICAgIC8qIFdyaXRlIGludG8gdGhlIHN0YWNrIGJ1ZmZlcjsgbmFsbG9jYXRlZCBjYW4ndCBvdmVyZmxvdy4KKyAgICAgICAgICogQXQgdGhlIGVuZCwgd2UnbGwgYWxsb2NhdGUgZXhhY3RseSBhcyBtdWNoIGhlYXAgc3BhY2UgYXMgaXQKKyAgICAgICAgICogdHVybnMgb3V0IHdlIG5lZWQuCisgICAgICAgICAqLworICAgICAgICBuYWxsb2NhdGVkID0gUHlfU0FGRV9ET1dOQ0FTVChzaXplb2Yoc3RhY2tidWYpLCBzaXplX3QsIGludCk7CisgICAgICAgIHJlc3VsdCA9IE5VTEw7ICAgLyogd2lsbCBhbGxvY2F0ZSBhZnRlciB3ZSdyZSBkb25lICovCisgICAgICAgIHAgPSBzdGFja2J1ZjsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGlmIChzaXplID4gUFlfU1NJWkVfVF9NQVggLyBtYXhfY2hhcl9zaXplKSB7CisgICAgICAgICAgICAvKiBpbnRlZ2VyIG92ZXJmbG93ICovCisgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgfQorICAgICAgICAvKiBPdmVyYWxsb2NhdGUgb24gdGhlIGhlYXAsIGFuZCBnaXZlIHRoZSBleGNlc3MgYmFjayBhdCB0aGUgZW5kLiAqLworICAgICAgICBuYWxsb2NhdGVkID0gc2l6ZSAqIG1heF9jaGFyX3NpemU7CisgICAgICAgIHJlc3VsdCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgbmFsbG9jYXRlZCk7CisgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBwID0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKKyAgICB9CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZTspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IGRhdGFbaSsrXTsKKworICAgICAgICBpZiAoY2ggPCAweDgwKSB7CisgICAgICAgICAgICAvKiBFbmNvZGUgQVNDSUkgKi8KKyAgICAgICAgICAgICpwKysgPSAoY2hhcikgY2g7CisKKyAgICAgICAgfQorICAgICAgICBlbHNlCisjaWYgU1RSSU5HTElCX1NJWkVPRl9DSEFSID4gMQorICAgICAgICBpZiAoY2ggPCAweDA4MDApCisjZW5kaWYKKyAgICAgICAgeworICAgICAgICAgICAgLyogRW5jb2RlIExhdGluLTEgKi8KKyAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHhjMCB8IChjaCA+PiA2KSk7CisgICAgICAgICAgICAqcCsrID0gKGNoYXIpKDB4ODAgfCAoY2ggJiAweDNmKSk7CisgICAgICAgIH0KKyNpZiBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPiAxCisgICAgICAgIGVsc2UgaWYgKFB5X1VOSUNPREVfSVNfU1VSUk9HQVRFKGNoKSkgeworICAgICAgICAgICAgUHlfc3NpemVfdCBuZXdwb3M7CisgICAgICAgICAgICBQeV9zc2l6ZV90IHJlcHNpemUsIGssIHN0YXJ0cG9zOworICAgICAgICAgICAgc3RhcnRwb3MgPSBpLTE7CisgICAgICAgICAgICByZXAgPSB1bmljb2RlX2VuY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKKyAgICAgICAgICAgICAgICAgIGVycm9ycywgJmVycm9ySGFuZGxlciwgInV0Zi04IiwgInN1cnJvZ2F0ZXMgbm90IGFsbG93ZWQiLAorICAgICAgICAgICAgICAgICAgdW5pY29kZSwgJmV4Yywgc3RhcnRwb3MsIHN0YXJ0cG9zKzEsICZuZXdwb3MpOworICAgICAgICAgICAgaWYgKCFyZXApCisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKworICAgICAgICAgICAgaWYgKFB5Qnl0ZXNfQ2hlY2socmVwKSkKKyAgICAgICAgICAgICAgICByZXBzaXplID0gUHlCeXRlc19HRVRfU0laRShyZXApOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJlcHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZXApOworCisgICAgICAgICAgICBpZiAocmVwc2l6ZSA+IG1heF9jaGFyX3NpemUpIHsKKyAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG9mZnNldDsKKworICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICAgICAgb2Zmc2V0ID0gcCAtIHN0YWNrYnVmOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgb2Zmc2V0ID0gcCAtIFB5Qnl0ZXNfQVNfU1RSSU5HKHJlc3VsdCk7CisKKyAgICAgICAgICAgICAgICBpZiAobmFsbG9jYXRlZCA+IFBZX1NTSVpFX1RfTUFYIC0gcmVwc2l6ZSArIG1heF9jaGFyX3NpemUpIHsKKyAgICAgICAgICAgICAgICAgICAgLyogaW50ZWdlciBvdmVyZmxvdyAqLworICAgICAgICAgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBuYWxsb2NhdGVkICs9IHJlcHNpemUgLSBtYXhfY2hhcl9zaXplOworICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKCZyZXN1bHQsIG5hbGxvY2F0ZWQpIDwgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBuYWxsb2NhdGVkKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICAgICAgUHlfTUVNQ1BZKFB5Qnl0ZXNfQVNfU1RSSU5HKHJlc3VsdCksIHN0YWNrYnVmLCBvZmZzZXQpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBwID0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KSArIG9mZnNldDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaWYgKFB5Qnl0ZXNfQ2hlY2socmVwKSkgeworICAgICAgICAgICAgICAgIGNoYXIgKnByZXAgPSBQeUJ5dGVzX0FTX1NUUklORyhyZXApOworICAgICAgICAgICAgICAgIGZvcihrID0gcmVwc2l6ZTsgayA+IDA7IGstLSkKKyAgICAgICAgICAgICAgICAgICAgKnArKyA9ICpwcmVwKys7CisgICAgICAgICAgICB9IGVsc2UgLyogcmVwIGlzIHVuaWNvZGUgKi8geworICAgICAgICAgICAgICAgIGVudW0gUHlVbmljb2RlX0tpbmQgcmVwa2luZDsKKyAgICAgICAgICAgICAgICB2b2lkICpyZXBkYXRhOworCisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShyZXApIDwgMCkKKyAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICByZXBraW5kID0gUHlVbmljb2RlX0tJTkQocmVwKTsKKyAgICAgICAgICAgICAgICByZXBkYXRhID0gUHlVbmljb2RlX0RBVEEocmVwKTsKKworICAgICAgICAgICAgICAgIGZvcihrPTA7IGs8cmVwc2l6ZTsgaysrKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X1VDUzQgYyA9IFB5VW5pY29kZV9SRUFEKHJlcGtpbmQsIHJlcGRhdGEsIGspOworICAgICAgICAgICAgICAgICAgICBpZiAoMHg4MCA8PSBjKSB7CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsICJ1dGYtOCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGktMSwgaSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN1cnJvZ2F0ZXMgbm90IGFsbG93ZWQiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgKnArKyA9IChjaGFyKWM7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgUHlfQ0xFQVIocmVwKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlCisjaWYgU1RSSU5HTElCX1NJWkVPRl9DSEFSID4gMgorICAgICAgICBpZiAoY2ggPCAweDEwMDAwKQorI2VuZGlmCisgICAgICAgIHsKKyAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHhlMCB8IChjaCA+PiAxMikpOworICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKChjaCA+PiA2KSAmIDB4M2YpKTsKKyAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHg4MCB8IChjaCAmIDB4M2YpKTsKKyAgICAgICAgfQorI2lmIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA+IDIKKyAgICAgICAgZWxzZSAvKiBjaCA+PSAweDEwMDAwICovCisgICAgICAgIHsKKyAgICAgICAgICAgIGFzc2VydChjaCA8PSBNQVhfVU5JQ09ERSk7CisgICAgICAgICAgICAvKiBFbmNvZGUgVUNTNCBVbmljb2RlIG9yZGluYWxzICovCisgICAgICAgICAgICAqcCsrID0gKGNoYXIpKDB4ZjAgfCAoY2ggPj4gMTgpKTsKKyAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHg4MCB8ICgoY2ggPj4gMTIpICYgMHgzZikpOworICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKChjaCA+PiA2KSAmIDB4M2YpKTsKKyAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHg4MCB8IChjaCAmIDB4M2YpKTsKKyAgICAgICAgfQorI2VuZGlmIC8qIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA+IDIgKi8KKyNlbmRpZiAvKiBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPiAxICovCisgICAgfQorCisgICAgaWYgKHJlc3VsdCA9PSBOVUxMKSB7CisgICAgICAgIC8qIFRoaXMgd2FzIHN0YWNrIGFsbG9jYXRlZC4gKi8KKyAgICAgICAgbm5lZWRlZCA9IHAgLSBzdGFja2J1ZjsKKyAgICAgICAgYXNzZXJ0KG5uZWVkZWQgPD0gbmFsbG9jYXRlZCk7CisgICAgICAgIHJlc3VsdCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoc3RhY2tidWYsIG5uZWVkZWQpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgLyogQ3V0IGJhY2sgdG8gc2l6ZSBhY3R1YWxseSBuZWVkZWQuICovCisgICAgICAgIG5uZWVkZWQgPSBwIC0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKKyAgICAgICAgYXNzZXJ0KG5uZWVkZWQgPD0gbmFsbG9jYXRlZCk7CisgICAgICAgIF9QeUJ5dGVzX1Jlc2l6ZSgmcmVzdWx0LCBubmVlZGVkKTsKKyAgICB9CisKKyNpZiBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPiAxCisgICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOworICAgIFB5X1hERUNSRUYoZXhjKTsKKyNlbmRpZgorICAgIHJldHVybiByZXN1bHQ7CisKKyNpZiBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPiAxCisgZXJyb3I6CisgICAgUHlfWERFQ1JFRihyZXApOworICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKKyAgICBQeV9YREVDUkVGKGV4Yyk7CisgICAgUHlfWERFQ1JFRihyZXN1bHQpOworICAgIHJldHVybiBOVUxMOworI2VuZGlmCisKKyN1bmRlZiBNQVhfU0hPUlRfVU5JQ0hBUlMKK30KKworI2VuZGlmIC8qIFNUUklOR0xJQl9JU19VTklDT0RFICovCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi9jb3VudC5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvY291bnQuaAppbmRleCBkZTM0Zjk2Li5mNDg1MDBiIDEwMDY0NAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi9jb3VudC5oCisrKyBiL09iamVjdHMvc3RyaW5nbGliL2NvdW50LmgKQEAgLTEsMTQgKzEsMTEgQEAKIC8qIHN0cmluZ2xpYjogY291bnQgaW1wbGVtZW50YXRpb24gKi8KIAotI2lmbmRlZiBTVFJJTkdMSUJfQ09VTlRfSAotI2RlZmluZSBTVFJJTkdMSUJfQ09VTlRfSAotCiAjaWZuZGVmIFNUUklOR0xJQl9GQVNUU0VBUkNIX0gKICNlcnJvciBtdXN0IGluY2x1ZGUgInN0cmluZ2xpYi9mYXN0c2VhcmNoLmgiIGJlZm9yZSBpbmNsdWRpbmcgdGhpcyBtb2R1bGUKICNlbmRpZgogCiBQeV9MT0NBTF9JTkxJTkUoUHlfc3NpemVfdCkKLXN0cmluZ2xpYl9jb3VudChjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCitTVFJJTkdMSUIoY291bnQpKGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3ViLCBQeV9zc2l6ZV90IHN1Yl9sZW4sCiAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhjb3VudCkKIHsKQEAgLTE5LDcgKzE2LDcgQEAKICAgICBpZiAoc3ViX2xlbiA9PSAwKQogICAgICAgICByZXR1cm4gKHN0cl9sZW4gPCBtYXhjb3VudCkgPyBzdHJfbGVuICsgMSA6IG1heGNvdW50OwogCi0gICAgY291bnQgPSBmYXN0c2VhcmNoKHN0ciwgc3RyX2xlbiwgc3ViLCBzdWJfbGVuLCBtYXhjb3VudCwgRkFTVF9DT1VOVCk7CisgICAgY291bnQgPSBGQVNUU0VBUkNIKHN0ciwgc3RyX2xlbiwgc3ViLCBzdWJfbGVuLCBtYXhjb3VudCwgRkFTVF9DT1VOVCk7CiAKICAgICBpZiAoY291bnQgPCAwKQogICAgICAgICByZXR1cm4gMDsgLyogbm8gbWF0Y2ggKi8KQEAgLTI3LDQgKzI0LDQgQEAKICAgICByZXR1cm4gY291bnQ7CiB9CiAKLSNlbmRpZgorCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi9lcS5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvZXEuaAppbmRleCAzZTdmNWU4Li44ZTc5YTQzIDEwMDY0NAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi9lcS5oCisrKyBiL09iamVjdHMvc3RyaW5nbGliL2VxLmgKQEAgLTksMTMgKzksMjYgQEAKICAgICByZWdpc3RlciBQeVVuaWNvZGVPYmplY3QgKmEgPSAoUHlVbmljb2RlT2JqZWN0ICopYWE7CiAgICAgcmVnaXN0ZXIgUHlVbmljb2RlT2JqZWN0ICpiID0gKFB5VW5pY29kZU9iamVjdCAqKWJiOwogCi0gICAgaWYgKGEtPmxlbmd0aCAhPSBiLT5sZW5ndGgpCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShhKSA9PSAtMSB8fCBQeVVuaWNvZGVfUkVBRFkoYikgPT0gLTEpIHsKKyAgICAgICAgYXNzZXJ0KDAgJiYgInVuaWNvZGVfZXEgcmVhZHkgZmFpbCIpOwogICAgICAgICByZXR1cm4gMDsKLSAgICBpZiAoYS0+bGVuZ3RoID09IDApCi0gICAgICAgIHJldHVybiAxOwotICAgIGlmIChhLT5zdHJbMF0gIT0gYi0+c3RyWzBdKQorICAgIH0KKworICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSChhKSAhPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChiKSkKICAgICAgICAgcmV0dXJuIDA7Ci0gICAgaWYgKGEtPmxlbmd0aCA9PSAxKQorICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSChhKSA9PSAwKQogICAgICAgICByZXR1cm4gMTsKLSAgICByZXR1cm4gbWVtY21wKGEtPnN0ciwgYi0+c3RyLCBhLT5sZW5ndGggKiBzaXplb2YoUHlfVU5JQ09ERSkpID09IDA7CisgICAgaWYgKFB5VW5pY29kZV9LSU5EKGEpICE9IFB5VW5pY29kZV9LSU5EKGIpKQorICAgICAgICByZXR1cm4gMDsKKyAgICAvKiBKdXN0IGNvbXBhcmluZyB0aGUgZmlyc3QgYnl0ZSBpcyBlbm91Z2ggdG8gc2VlIGlmIGEgYW5kIGIgZGlmZmVyLgorICAgICAqIElmIHRoZXkgYXJlIDIgYnl0ZSBvciA0IGJ5dGUgY2hhcmFjdGVyIG1vc3QgZGlmZmVyZW5jZXMgd2lsbCBoYXBwZW4gaW4KKyAgICAgKiB0aGUgbG93ZXIgYnl0ZXMgYW55d2F5cy4KKyAgICAgKi8KKyAgICBpZiAoUHlVbmljb2RlXzFCWVRFX0RBVEEoYSlbMF0gIT0gUHlVbmljb2RlXzFCWVRFX0RBVEEoYilbMF0pCisgICAgICAgIHJldHVybiAwOworICAgIGlmIChQeVVuaWNvZGVfS0lORChhKSA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCAmJgorICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChhKSA9PSAxKQorICAgICAgICByZXR1cm4gMTsKKyAgICByZXR1cm4gbWVtY21wKFB5VW5pY29kZV8xQllURV9EQVRBKGEpLCBQeVVuaWNvZGVfMUJZVEVfREFUQShiKSwKKyAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKGEpICogUHlVbmljb2RlX0tJTkQoYSkpID09IDA7CiB9CmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi9mYXN0c2VhcmNoLmggYi9PYmplY3RzL3N0cmluZ2xpYi9mYXN0c2VhcmNoLmgKaW5kZXggZTIzMWM1OC4uZjNlMDQ2MSAxMDA2NDQKLS0tIGEvT2JqZWN0cy9zdHJpbmdsaWIvZmFzdHNlYXJjaC5oCisrKyBiL09iamVjdHMvc3RyaW5nbGliL2Zhc3RzZWFyY2guaApAQCAtMSw2ICsxLDUgQEAKIC8qIHN0cmluZ2xpYjogZmFzdHNlYXJjaCBpbXBsZW1lbnRhdGlvbiAqLwogCi0jaWZuZGVmIFNUUklOR0xJQl9GQVNUU0VBUkNIX0gKICNkZWZpbmUgU1RSSU5HTElCX0ZBU1RTRUFSQ0hfSAogCiAvKiBmYXN0IHNlYXJjaC9jb3VudCBpbXBsZW1lbnRhdGlvbiwgYmFzZWQgb24gYSBtaXggYmV0d2VlbiBib3llci0KQEAgLTMzLDggKzMyLDYyIEBACiAjZGVmaW5lIFNUUklOR0xJQl9CTE9PTShtYXNrLCBjaCkgICAgIFwKICAgICAoKG1hc2sgJiAgKDFVTCA8PCAoKGNoKSAmIChTVFJJTkdMSUJfQkxPT01fV0lEVEggLTEpKSkpKQogCisKIFB5X0xPQ0FMX0lOTElORShQeV9zc2l6ZV90KQotZmFzdHNlYXJjaChjb25zdCBTVFJJTkdMSUJfQ0hBUiogcywgUHlfc3NpemVfdCBuLAorU1RSSU5HTElCKGZhc3RzZWFyY2hfbWVtY2hyXzFjaGFyKShjb25zdCBTVFJJTkdMSUJfQ0hBUiogcywgUHlfc3NpemVfdCBuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTVFJJTkdMSUJfQ0hBUiBjaCwgdW5zaWduZWQgY2hhciBuZWVkbGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbWF4Y291bnQsIGludCBtb2RlKQoreworICAgIHZvaWQgKmNhbmRpZGF0ZTsKKyAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiAqZm91bmQ7CisKKyNkZWZpbmUgRE9fTUVNQ0hSKG1lbWNociwgcywgbmVlZGxlLCBuY2hhcnMpIGRvIHsgXAorICAgIGNhbmRpZGF0ZSA9IG1lbWNocigoY29uc3Qgdm9pZCAqKSAocyksIChuZWVkbGUpLCAobmNoYXJzKSAqIHNpemVvZihTVFJJTkdMSUJfQ0hBUikpOyBcCisgICAgZm91bmQgPSAoY29uc3QgU1RSSU5HTElCX0NIQVIgKikgXAorICAgICAgICAoKFB5X3NzaXplX3QpIGNhbmRpZGF0ZSAmICh+ICgoUHlfc3NpemVfdCkgc2l6ZW9mKFNUUklOR0xJQl9DSEFSKSAtIDEpKSk7IFwKKyAgICB9IHdoaWxlICgwKQorCisgICAgaWYgKG1vZGUgPT0gRkFTVF9TRUFSQ0gpIHsKKyAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIgKl9zID0gczsKKyAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIgKmUgPSBzICsgbjsKKyAgICAgICAgd2hpbGUgKF9zIDwgZSkgeworICAgICAgICAgICAgRE9fTUVNQ0hSKG1lbWNociwgX3MsIG5lZWRsZSwgZSAtIF9zKTsKKyAgICAgICAgICAgIGlmIChmb3VuZCA9PSBOVUxMKQorICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIGlmIChzaXplb2YoU1RSSU5HTElCX0NIQVIpID09IDEgfHwgKmZvdW5kID09IGNoKQorICAgICAgICAgICAgICAgIHJldHVybiAoZm91bmQgLSBfcyk7CisgICAgICAgICAgICAvKiBGYWxzZSBwb3NpdGl2ZSAqLworICAgICAgICAgICAgX3MgPSBmb3VuZCArIDE7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyNpZmRlZiBIQVZFX01FTVJDSFIKKyAgICAvKiBtZW1yY2hyKCkgaXMgYSBHTlUgZXh0ZW5zaW9uLCBhdmFpbGFibGUgc2luY2UgZ2xpYmMgMi4xLjkxLgorICAgICAgIGl0IGRvZXNuJ3Qgc2VlbSBhcyBvcHRpbWl6ZWQgYXMgbWVtY2hyKCksIGJ1dCBpcyBzdGlsbCBxdWl0ZQorICAgICAgIGZhc3RlciB0aGFuIG91ciBoYW5kLXdyaXR0ZW4gbG9vcCBpbiBGQVNUU0VBUkNIIGJlbG93ICovCisgICAgZWxzZSBpZiAobW9kZSA9PSBGQVNUX1JTRUFSQ0gpIHsKKyAgICAgICAgd2hpbGUgKG4gPiAwKSB7CisgICAgICAgICAgICBET19NRU1DSFIobWVtcmNociwgcywgbmVlZGxlLCBuKTsKKyAgICAgICAgICAgIGlmIChmb3VuZCA9PSBOVUxMKQorICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIG4gPSBmb3VuZCAtIHM7CisgICAgICAgICAgICBpZiAoc2l6ZW9mKFNUUklOR0xJQl9DSEFSKSA9PSAxIHx8ICpmb3VuZCA9PSBjaCkKKyAgICAgICAgICAgICAgICByZXR1cm4gbjsKKyAgICAgICAgICAgIC8qIEZhbHNlIHBvc2l0aXZlICovCisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyNlbmRpZgorICAgIGVsc2UgeworICAgICAgICBhc3NlcnQoMCk7IC8qIFNob3VsZCBuZXZlciBnZXQgaGVyZSAqLworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyN1bmRlZiBET19NRU1DSFIKK30KKworUHlfTE9DQUxfSU5MSU5FKFB5X3NzaXplX3QpCitGQVNUU0VBUkNIKGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzLCBQeV9zc2l6ZV90IG4sCiAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBwLCBQeV9zc2l6ZV90IG0sCiAgICAgICAgICAgIFB5X3NzaXplX3QgbWF4Y291bnQsIGludCBtb2RlKQogewpAQCAtNTIsNiArMTA1LDI0IEBACiAgICAgICAgIGlmIChtIDw9IDApCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIC8qIHVzZSBzcGVjaWFsIGNhc2UgZm9yIDEtY2hhcmFjdGVyIHN0cmluZ3MgKi8KKyAgICAgICAgaWYgKG4gPiAxMCAmJiAobW9kZSA9PSBGQVNUX1NFQVJDSAorI2lmZGVmIEhBVkVfTUVNUkNIUgorICAgICAgICAgICAgICAgICAgICB8fCBtb2RlID09IEZBU1RfUlNFQVJDSAorI2VuZGlmCisgICAgICAgICAgICAgICAgICAgICkpIHsKKyAgICAgICAgICAgIC8qIHVzZSBtZW1jaHIgaWYgd2UgY2FuIGNob29zZSBhIG5lZWRsZSB3aXRob3V0IHR3byBtYW55IGxpa2VseQorICAgICAgICAgICAgICAgZmFsc2UgcG9zaXRpdmVzICovCisgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIG5lZWRsZTsKKyAgICAgICAgICAgIG5lZWRsZSA9IHBbMF0gJiAweGZmOworI2lmIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA+IDEKKyAgICAgICAgICAgIC8qIElmIGxvb2tpbmcgZm9yIGEgbXVsdGlwbGUgb2YgMjU2LCB3ZSdkIGhhdmUgdG9vCisgICAgICAgICAgICAgICBtYW55IGZhbHNlIHBvc2l0aXZlcyBsb29raW5nIGZvciB0aGUgJ1wwJyBieXRlIGluIFVDUzIKKyAgICAgICAgICAgICAgIGFuZCBVQ1M0IHJlcHJlc2VudGF0aW9ucy4gKi8KKyAgICAgICAgICAgIGlmIChuZWVkbGUgIT0gMCkKKyNlbmRpZgorICAgICAgICAgICAgICAgIHJldHVybiBTVFJJTkdMSUIoZmFzdHNlYXJjaF9tZW1jaHJfMWNoYXIpCisgICAgICAgICAgICAgICAgICAgICAgIChzLCBuLCBwWzBdLCBuZWVkbGUsIG1heGNvdW50LCBtb2RlKTsKKyAgICAgICAgfQogICAgICAgICBpZiAobW9kZSA9PSBGQVNUX0NPVU5UKSB7CiAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKQogICAgICAgICAgICAgICAgIGlmIChzW2ldID09IHBbMF0pIHsKQEAgLTE1Nyw0ICsyMjgsMyBAQAogICAgIHJldHVybiBjb3VudDsKIH0KIAotI2VuZGlmCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi9maW5kLmggYi9PYmplY3RzL3N0cmluZ2xpYi9maW5kLmgKaW5kZXggY2U2MTVkYy4uNTE4ZTAxMiAxMDA2NDQKLS0tIGEvT2JqZWN0cy9zdHJpbmdsaWIvZmluZC5oCisrKyBiL09iamVjdHMvc3RyaW5nbGliL2ZpbmQuaApAQCAtMSwxNCArMSwxMSBAQAogLyogc3RyaW5nbGliOiBmaW5kL2luZGV4IGltcGxlbWVudGF0aW9uICovCiAKLSNpZm5kZWYgU1RSSU5HTElCX0ZJTkRfSAotI2RlZmluZSBTVFJJTkdMSUJfRklORF9ICi0KICNpZm5kZWYgU1RSSU5HTElCX0ZBU1RTRUFSQ0hfSAogI2Vycm9yIG11c3QgaW5jbHVkZSAic3RyaW5nbGliL2Zhc3RzZWFyY2guaCIgYmVmb3JlIGluY2x1ZGluZyB0aGlzIG1vZHVsZQogI2VuZGlmCiAKIFB5X0xPQ0FMX0lOTElORShQeV9zc2l6ZV90KQotc3RyaW5nbGliX2ZpbmQoY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAorU1RSSU5HTElCKGZpbmQpKGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdWIsIFB5X3NzaXplX3Qgc3ViX2xlbiwKICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgb2Zmc2V0KQogewpAQCAtMTksNyArMTYsNyBAQAogICAgIGlmIChzdWJfbGVuID09IDApCiAgICAgICAgIHJldHVybiBvZmZzZXQ7CiAKLSAgICBwb3MgPSBmYXN0c2VhcmNoKHN0ciwgc3RyX2xlbiwgc3ViLCBzdWJfbGVuLCAtMSwgRkFTVF9TRUFSQ0gpOworICAgIHBvcyA9IEZBU1RTRUFSQ0goc3RyLCBzdHJfbGVuLCBzdWIsIHN1Yl9sZW4sIC0xLCBGQVNUX1NFQVJDSCk7CiAKICAgICBpZiAocG9zID49IDApCiAgICAgICAgIHBvcyArPSBvZmZzZXQ7CkBAIC0yOCw3ICsyNSw3IEBACiB9CiAKIFB5X0xPQ0FMX0lOTElORShQeV9zc2l6ZV90KQotc3RyaW5nbGliX3JmaW5kKGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKK1NUUklOR0xJQihyZmluZCkoY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAogICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdWIsIFB5X3NzaXplX3Qgc3ViX2xlbiwKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG9mZnNldCkKIHsKQEAgLTM5LDcgKzM2LDcgQEAKICAgICBpZiAoc3ViX2xlbiA9PSAwKQogICAgICAgICByZXR1cm4gc3RyX2xlbiArIG9mZnNldDsKIAotICAgIHBvcyA9IGZhc3RzZWFyY2goc3RyLCBzdHJfbGVuLCBzdWIsIHN1Yl9sZW4sIC0xLCBGQVNUX1JTRUFSQ0gpOworICAgIHBvcyA9IEZBU1RTRUFSQ0goc3RyLCBzdHJfbGVuLCBzdWIsIHN1Yl9sZW4sIC0xLCBGQVNUX1JTRUFSQ0gpOwogCiAgICAgaWYgKHBvcyA+PSAwKQogICAgICAgICBwb3MgKz0gb2Zmc2V0OwpAQCAtNjMsMjkgKzYwLDI5IEBACiAgICAgfQogCiBQeV9MT0NBTF9JTkxJTkUoUHlfc3NpemVfdCkKLXN0cmluZ2xpYl9maW5kX3NsaWNlKGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKK1NUUklOR0xJQihmaW5kX3NsaWNlKShjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCiAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3ViLCBQeV9zc2l6ZV90IHN1Yl9sZW4sCiAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCkKIHsKICAgICBBREpVU1RfSU5ESUNFUyhzdGFydCwgZW5kLCBzdHJfbGVuKTsKLSAgICByZXR1cm4gc3RyaW5nbGliX2ZpbmQoc3RyICsgc3RhcnQsIGVuZCAtIHN0YXJ0LCBzdWIsIHN1Yl9sZW4sIHN0YXJ0KTsKKyAgICByZXR1cm4gU1RSSU5HTElCKGZpbmQpKHN0ciArIHN0YXJ0LCBlbmQgLSBzdGFydCwgc3ViLCBzdWJfbGVuLCBzdGFydCk7CiB9CiAKIFB5X0xPQ0FMX0lOTElORShQeV9zc2l6ZV90KQotc3RyaW5nbGliX3JmaW5kX3NsaWNlKGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKK1NUUklOR0xJQihyZmluZF9zbGljZSkoY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAogICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdWIsIFB5X3NzaXplX3Qgc3ViX2xlbiwKICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCkKIHsKICAgICBBREpVU1RfSU5ESUNFUyhzdGFydCwgZW5kLCBzdHJfbGVuKTsKLSAgICByZXR1cm4gc3RyaW5nbGliX3JmaW5kKHN0ciArIHN0YXJ0LCBlbmQgLSBzdGFydCwgc3ViLCBzdWJfbGVuLCBzdGFydCk7CisgICAgcmV0dXJuIFNUUklOR0xJQihyZmluZCkoc3RyICsgc3RhcnQsIGVuZCAtIHN0YXJ0LCBzdWIsIHN1Yl9sZW4sIHN0YXJ0KTsKIH0KIAogI2lmZGVmIFNUUklOR0xJQl9XQU5UX0NPTlRBSU5TX09CSgogCiBQeV9MT0NBTF9JTkxJTkUoaW50KQotc3RyaW5nbGliX2NvbnRhaW5zX29iaihQeU9iamVjdCogc3RyLCBQeU9iamVjdCogc3ViKQorU1RSSU5HTElCKGNvbnRhaW5zX29iaikoUHlPYmplY3QqIHN0ciwgUHlPYmplY3QqIHN1YikKIHsKLSAgICByZXR1cm4gc3RyaW5nbGliX2ZpbmQoCisgICAgcmV0dXJuIFNUUklOR0xJQihmaW5kKSgKICAgICAgICAgU1RSSU5HTElCX1NUUihzdHIpLCBTVFJJTkdMSUJfTEVOKHN0ciksCiAgICAgICAgIFNUUklOR0xJQl9TVFIoc3ViKSwgU1RSSU5HTElCX0xFTihzdWIpLCAwCiAgICAgICAgICkgIT0gLTE7CkBAIC05OCwxNCArOTUsMTQgQEAKIHJpbmRleCkgYW5kIGZvciBjb3VudCwgc3RhcnRzd2l0aCBhbmQgZW5kc3dpdGgsIGJlY2F1c2UgdGhleSBhbGwgaGF2ZQogdGhlIHNhbWUgYmVoYXZpb3VyIGZvciB0aGUgYXJndW1lbnRzLgogCi1JdCBkb2VzIG5vdCB0b3VjaCB0aGUgdmFyaWFibGVzIHJlY2VpdmVkIHVudGlsIGl0IGtub3dzIGV2ZXJ5dGhpbmcgCitJdCBkb2VzIG5vdCB0b3VjaCB0aGUgdmFyaWFibGVzIHJlY2VpdmVkIHVudGlsIGl0IGtub3dzIGV2ZXJ5dGhpbmcKIGlzIG9rLgogKi8KIAogI2RlZmluZSBGT1JNQVRfQlVGRkVSX1NJWkUgNTAKIAogUHlfTE9DQUxfSU5MSU5FKGludCkKLXN0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzKGNvbnN0IGNoYXIgKiBmdW5jdGlvbl9uYW1lLCBQeU9iamVjdCAqYXJncywKK1NUUklOR0xJQihwYXJzZV9hcmdzX2ZpbmRzKShjb25zdCBjaGFyICogZnVuY3Rpb25fbmFtZSwgUHlPYmplY3QgKmFyZ3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnN1Ym9iaiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKnN0YXJ0LCBQeV9zc2l6ZV90ICplbmQpCiB7CkBAIC0xNDgsMjggKzE0NSw3NiBAQAogCiBOb3RlIHRoYXQgd2UgcmVjZWl2ZSBhIHBvaW50ZXIgdG8gdGhlIHBvaW50ZXIgb2YgdGhlIHN1YnN0cmluZyBvYmplY3QsCiBzbyB3aGVuIHdlIGNyZWF0ZSB0aGF0IG9iamVjdCBpbiB0aGlzIGZ1bmN0aW9uIHdlIGRvbid0IERFQ1JFRiBpdCwKLWJlY2F1c2UgaXQgY29udGludWVzIGxpdmluZyBpbiB0aGUgY2FsbGVyIGZ1bmN0aW9ucyAodGhvc2UgZnVuY3Rpb25zLCAKK2JlY2F1c2UgaXQgY29udGludWVzIGxpdmluZyBpbiB0aGUgY2FsbGVyIGZ1bmN0aW9ucyAodGhvc2UgZnVuY3Rpb25zLAogYWZ0ZXIgZmluaXNoaW5nIHVzaW5nIHRoZSBzdWJzdHJpbmcsIG11c3QgREVDUkVGIGl0KS4KICovCiAKIFB5X0xPQ0FMX0lOTElORShpbnQpCi1zdHJpbmdsaWJfcGFyc2VfYXJnc19maW5kc191bmljb2RlKGNvbnN0IGNoYXIgKiBmdW5jdGlvbl9uYW1lLCBQeU9iamVjdCAqYXJncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlT2JqZWN0ICoqc3Vic3RyaW5nLAorU1RSSU5HTElCKHBhcnNlX2FyZ3NfZmluZHNfdW5pY29kZSkoY29uc3QgY2hhciAqIGZ1bmN0aW9uX25hbWUsIFB5T2JqZWN0ICphcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnN1YnN0cmluZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqc3RhcnQsIFB5X3NzaXplX3QgKmVuZCkKIHsKICAgICBQeU9iamVjdCAqdG1wX3N1YnN0cmluZzsKIAotICAgIGlmKHN0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzKGZ1bmN0aW9uX25hbWUsIGFyZ3MsICZ0bXBfc3Vic3RyaW5nLAorICAgIGlmKFNUUklOR0xJQihwYXJzZV9hcmdzX2ZpbmRzKShmdW5jdGlvbl9uYW1lLCBhcmdzLCAmdG1wX3N1YnN0cmluZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFydCwgZW5kKSkgewogICAgICAgICB0bXBfc3Vic3RyaW5nID0gUHlVbmljb2RlX0Zyb21PYmplY3QodG1wX3N1YnN0cmluZyk7CiAgICAgICAgIGlmICghdG1wX3N1YnN0cmluZykKICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAqc3Vic3RyaW5nID0gKFB5VW5pY29kZU9iamVjdCAqKXRtcF9zdWJzdHJpbmc7CisgICAgICAgICpzdWJzdHJpbmcgPSB0bXBfc3Vic3RyaW5nOwogICAgICAgICByZXR1cm4gMTsKICAgICB9CiAgICAgcmV0dXJuIDA7CiB9CiAKLSNlbmRpZiAvKiBTVFJJTkdMSUJfSVNfVU5JQ09ERSAqLworI2Vsc2UgLyogIVNUUklOR0xJQl9JU19VTklDT0RFICovCiAKLSNlbmRpZiAvKiBTVFJJTkdMSUJfRklORF9IICovCisvKgorV3JhcHMgc3RyaW5nbGliX3BhcnNlX2FyZ3NfZmluZHMoKSBhbmQgYWRkaXRpb25hbGx5IGNoZWNrcyB3aGV0aGVyIHRoZQorZmlyc3QgYXJndW1lbnQgaXMgYW4gaW50ZWdlciBpbiByYW5nZSgwLCAyNTYpLgorCitJZiB0aGlzIGlzIHRoZSBjYXNlLCB3cml0ZXMgdGhlIGludGVnZXIgdmFsdWUgdG8gdGhlIGJ5dGUgcGFyYW1ldGVyCithbmQgc2V0cyBzdWJvYmogdG8gTlVMTC4gT3RoZXJ3aXNlLCBzZXRzIHRoZSBmaXJzdCBhcmd1bWVudCB0byBzdWJvYmoKK2FuZCBkb2Vzbid0IHRvdWNoIGJ5dGUuIFRoZSBvdGhlciBwYXJhbWV0ZXJzIGFyZSBzaW1pbGFyIHRvIHRob3NlIG9mCitzdHJpbmdsaWJfcGFyc2VfYXJnc19maW5kcygpLgorKi8KKworUHlfTE9DQUxfSU5MSU5FKGludCkKK1NUUklOR0xJQihwYXJzZV9hcmdzX2ZpbmRzX2J5dGUpKGNvbnN0IGNoYXIgKmZ1bmN0aW9uX25hbWUsIFB5T2JqZWN0ICphcmdzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipzdWJvYmosIGNoYXIgKmJ5dGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpzdGFydCwgUHlfc3NpemVfdCAqZW5kKQoreworICAgIFB5T2JqZWN0ICp0bXBfc3Vib2JqOworICAgIFB5X3NzaXplX3QgaXZhbDsKKyAgICBQeU9iamVjdCAqZXJyOworCisgICAgaWYoIVNUUklOR0xJQihwYXJzZV9hcmdzX2ZpbmRzKShmdW5jdGlvbl9uYW1lLCBhcmdzLCAmdG1wX3N1Ym9iaiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0LCBlbmQpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmICghUHlOdW1iZXJfQ2hlY2sodG1wX3N1Ym9iaikpIHsKKyAgICAgICAgKnN1Ym9iaiA9IHRtcF9zdWJvYmo7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKworICAgIGl2YWwgPSBQeU51bWJlcl9Bc1NzaXplX3QodG1wX3N1Ym9iaiwgUHlFeGNfT3ZlcmZsb3dFcnJvcik7CisgICAgaWYgKGl2YWwgPT0gLTEpIHsKKyAgICAgICAgZXJyID0gUHlFcnJfT2NjdXJyZWQoKTsKKyAgICAgICAgaWYgKGVyciAmJiAhUHlFcnJfR2l2ZW5FeGNlcHRpb25NYXRjaGVzKGVyciwgUHlFeGNfT3ZlcmZsb3dFcnJvcikpIHsKKyAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgICAgICAqc3Vib2JqID0gdG1wX3N1Ym9iajsKKyAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKGl2YWwgPCAwIHx8IGl2YWwgPiAyNTUpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJieXRlIG11c3QgYmUgaW4gcmFuZ2UoMCwgMjU2KSIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICAqc3Vib2JqID0gTlVMTDsKKyAgICAqYnl0ZSA9IChjaGFyKWl2YWw7CisgICAgcmV0dXJuIDE7Cit9CisKKyNlbmRpZiAvKiBTVFJJTkdMSUJfSVNfVU5JQ09ERSAqLwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvZmluZF9tYXhfY2hhci5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvZmluZF9tYXhfY2hhci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA5OGFlZWMKLS0tIC9kZXYvbnVsbAorKysgYi9PYmplY3RzL3N0cmluZ2xpYi9maW5kX21heF9jaGFyLmgKQEAgLTAsMCArMSwxMzYgQEAKKy8qIEZpbmRpbmcgdGhlIG9wdGltYWwgd2lkdGggb2YgdW5pY29kZSBjaGFyYWN0ZXJzIGluIGEgYnVmZmVyICovCisKKyNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQorCisvKiBNYXNrIHRvIGNoZWNrIG9yIGZvcmNlIGFsaWdubWVudCBvZiBhIHBvaW50ZXIgdG8gQyAnbG9uZycgYm91bmRhcmllcyAqLworI2RlZmluZSBMT05HX1BUUl9NQVNLIChzaXplX3QpIChTSVpFT0ZfTE9ORyAtIDEpCisKKy8qIE1hc2sgdG8gcXVpY2tseSBjaGVjayB3aGV0aGVyIGEgQyAnbG9uZycgY29udGFpbnMgYQorICAgbm9uLUFTQ0lJLCBVVEY4LWVuY29kZWQgY2hhci4gKi8KKyNpZiAoU0laRU9GX0xPTkcgPT0gOCkKKyMgZGVmaW5lIFVDUzFfQVNDSUlfQ0hBUl9NQVNLIDB4ODA4MDgwODA4MDgwODA4MEwKKyNlbGlmIChTSVpFT0ZfTE9ORyA9PSA0KQorIyBkZWZpbmUgVUNTMV9BU0NJSV9DSEFSX01BU0sgMHg4MDgwODA4MEwKKyNlbHNlCisjIGVycm9yIEMgJ2xvbmcnIHNpemUgc2hvdWxkIGJlIGVpdGhlciA0IG9yIDghCisjZW5kaWYKKworI2lmIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA9PSAxCisKK1B5X0xPQ0FMX0lOTElORShQeV9VQ1M0KQorU1RSSU5HTElCKGZpbmRfbWF4X2NoYXIpKGNvbnN0IFNUUklOR0xJQl9DSEFSICpiZWdpbiwgY29uc3QgU1RSSU5HTElCX0NIQVIgKmVuZCkKK3sKKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpwID0gKGNvbnN0IHVuc2lnbmVkIGNoYXIgKikgYmVnaW47CisgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWxpZ25lZF9lbmQgPSAoY29uc3QgdW5zaWduZWQgY2hhciAqKSAoKHNpemVfdCkgZW5kICYgfkxPTkdfUFRSX01BU0spOworCisgICAgd2hpbGUgKHAgPCBlbmQpIHsKKyAgICAgICAgaWYgKCEoKHNpemVfdCkgcCAmIExPTkdfUFRSX01BU0spKSB7CisgICAgICAgICAgICAvKiBIZWxwIHJlZ2lzdGVyIGFsbG9jYXRpb24gKi8KKyAgICAgICAgICAgIHJlZ2lzdGVyIGNvbnN0IHVuc2lnbmVkIGNoYXIgKl9wID0gcDsKKyAgICAgICAgICAgIHdoaWxlIChfcCA8IGFsaWduZWRfZW5kKSB7CisgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyB2YWx1ZSA9ICoodW5zaWduZWQgbG9uZyAqKSBfcDsKKyAgICAgICAgICAgICAgICBpZiAodmFsdWUgJiBVQ1MxX0FTQ0lJX0NIQVJfTUFTSykKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDI1NTsKKyAgICAgICAgICAgICAgICBfcCArPSBTSVpFT0ZfTE9ORzsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHAgPSBfcDsKKyAgICAgICAgICAgIGlmIChwID09IGVuZCkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBpZiAoKnArKyAmIDB4ODApCisgICAgICAgICAgICByZXR1cm4gMjU1OworICAgIH0KKyAgICByZXR1cm4gMTI3OworfQorCisjdW5kZWYgTE9OR19QVFJfTUFTSworI3VuZGVmIEFTQ0lJX0NIQVJfTUFTSworCisjZWxzZSAvKiBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPT0gMSAqLworCisjZGVmaW5lIE1BU0tfQVNDSUkgMHhGRkZGRkY4MAorI2RlZmluZSBNQVNLX1VDUzEgMHhGRkZGRkYwMAorI2RlZmluZSBNQVNLX1VDUzIgMHhGRkZGMDAwMAorCisjZGVmaW5lIE1BWF9DSEFSX0FTQ0lJIDB4N2YKKyNkZWZpbmUgTUFYX0NIQVJfVUNTMSAgMHhmZgorI2RlZmluZSBNQVhfQ0hBUl9VQ1MyICAweGZmZmYKKyNkZWZpbmUgTUFYX0NIQVJfVUNTNCAgMHgxMGZmZmYKKworUHlfTE9DQUxfSU5MSU5FKFB5X1VDUzQpCitTVFJJTkdMSUIoZmluZF9tYXhfY2hhcikoY29uc3QgU1RSSU5HTElCX0NIQVIgKmJlZ2luLCBjb25zdCBTVFJJTkdMSUJfQ0hBUiAqZW5kKQoreworI2lmIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiA9PSAyCisgICAgY29uc3QgUHlfVUNTNCBtYXNrX2xpbWl0ID0gTUFTS19VQ1MxOworICAgIGNvbnN0IFB5X1VDUzQgbWF4X2NoYXJfbGltaXQgPSBNQVhfQ0hBUl9VQ1MyOworI2VsaWYgU1RSSU5HTElCX1NJWkVPRl9DSEFSID09IDQKKyAgICBjb25zdCBQeV9VQ1M0IG1hc2tfbGltaXQgPSBNQVNLX1VDUzI7CisgICAgY29uc3QgUHlfVUNTNCBtYXhfY2hhcl9saW1pdCA9IE1BWF9DSEFSX1VDUzQ7CisjZWxzZQorI2Vycm9yIEludmFsaWQgU1RSSU5HTElCX1NJWkVPRl9DSEFSIChtdXN0IGJlIDEsIDIgb3IgNCkKKyNlbmRpZgorICAgIHJlZ2lzdGVyIFB5X1VDUzQgbWFzazsKKyAgICBQeV9zc2l6ZV90IG4gPSBlbmQgLSBiZWdpbjsKKyAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiAqcCA9IGJlZ2luOworICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSICp1bnJvbGxlZF9lbmQgPSBiZWdpbiArIChuICYgfiAoUHlfc3NpemVfdCkgMyk7CisgICAgUHlfVUNTNCBtYXhfY2hhcjsKKworICAgIG1heF9jaGFyID0gTUFYX0NIQVJfQVNDSUk7CisgICAgbWFzayA9IE1BU0tfQVNDSUk7CisgICAgd2hpbGUgKHAgPCB1bnJvbGxlZF9lbmQpIHsKKyAgICAgICAgU1RSSU5HTElCX0NIQVIgYml0cyA9IHBbMF0gfCBwWzFdIHwgcFsyXSB8IHBbM107CisgICAgICAgIGlmIChiaXRzICYgbWFzaykgeworICAgICAgICAgICAgaWYgKG1hc2sgPT0gbWFza19saW1pdCkgeworICAgICAgICAgICAgICAgIC8qIExpbWl0IHJlYWNoZWQgKi8KKyAgICAgICAgICAgICAgICByZXR1cm4gbWF4X2NoYXJfbGltaXQ7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAobWFzayA9PSBNQVNLX0FTQ0lJKSB7CisgICAgICAgICAgICAgICAgbWF4X2NoYXIgPSBNQVhfQ0hBUl9VQ1MxOworICAgICAgICAgICAgICAgIG1hc2sgPSBNQVNLX1VDUzE7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAvKiBtYXNrIGNhbid0IGJlIE1BU0tfVUNTMiBiZWNhdXNlIG9mIG1hc2tfbGltaXQgYWJvdmUgKi8KKyAgICAgICAgICAgICAgICBhc3NlcnQobWFzayA9PSBNQVNLX1VDUzEpOworICAgICAgICAgICAgICAgIG1heF9jaGFyID0gTUFYX0NIQVJfVUNTMjsKKyAgICAgICAgICAgICAgICBtYXNrID0gTUFTS19VQ1MyOworICAgICAgICAgICAgfQorICAgICAgICAgICAgLyogV2UgY2hlY2sgdGhlIG5ldyBtYXNrIG9uIHRoZSBzYW1lIGNoYXJzIGluIHRoZSBuZXh0IGl0ZXJhdGlvbiAqLworICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0KKyAgICAgICAgcCArPSA0OworICAgIH0KKyAgICB3aGlsZSAocCA8IGVuZCkgeworICAgICAgICBpZiAocFswXSAmIG1hc2spIHsKKyAgICAgICAgICAgIGlmIChtYXNrID09IG1hc2tfbGltaXQpIHsKKyAgICAgICAgICAgICAgICAvKiBMaW1pdCByZWFjaGVkICovCisgICAgICAgICAgICAgICAgcmV0dXJuIG1heF9jaGFyX2xpbWl0OworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKG1hc2sgPT0gTUFTS19BU0NJSSkgeworICAgICAgICAgICAgICAgIG1heF9jaGFyID0gTUFYX0NIQVJfVUNTMTsKKyAgICAgICAgICAgICAgICBtYXNrID0gTUFTS19VQ1MxOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgLyogbWFzayBjYW4ndCBiZSBNQVNLX1VDUzIgYmVjYXVzZSBvZiBtYXNrX2xpbWl0IGFib3ZlICovCisgICAgICAgICAgICAgICAgYXNzZXJ0KG1hc2sgPT0gTUFTS19VQ1MxKTsKKyAgICAgICAgICAgICAgICBtYXhfY2hhciA9IE1BWF9DSEFSX1VDUzI7CisgICAgICAgICAgICAgICAgbWFzayA9IE1BU0tfVUNTMjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIC8qIFdlIGNoZWNrIHRoZSBuZXcgbWFzayBvbiB0aGUgc2FtZSBjaGFycyBpbiB0aGUgbmV4dCBpdGVyYXRpb24gKi8KKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CisgICAgICAgIHArKzsKKyAgICB9CisgICAgcmV0dXJuIG1heF9jaGFyOworfQorCisjdW5kZWYgTUFTS19BU0NJSQorI3VuZGVmIE1BU0tfVUNTMQorI3VuZGVmIE1BU0tfVUNTMgorI3VuZGVmIE1BWF9DSEFSX0FTQ0lJCisjdW5kZWYgTUFYX0NIQVJfVUNTMQorI3VuZGVmIE1BWF9DSEFSX1VDUzIKKyN1bmRlZiBNQVhfQ0hBUl9VQ1M0CisKKyNlbmRpZiAvKiBTVFJJTkdMSUJfU0laRU9GX0NIQVIgPT0gMSAqLworI2VuZGlmIC8qIFNUUklOR0xJQl9JU19VTklDT0RFICovCisKZGlmZiAtLWdpdCBhL09iamVjdHMvc3RyaW5nbGliL2Zvcm1hdHRlci5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvZm9ybWF0dGVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRmZGM2MmQuLjAwMDAwMDAKLS0tIGEvT2JqZWN0cy9zdHJpbmdsaWIvZm9ybWF0dGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxNTE4ICswLDAgQEAKLS8qIGltcGxlbWVudHMgdGhlIHN0cmluZywgbG9uZywgYW5kIGZsb2F0IGZvcm1hdHRlcnMuICB0aGF0IGlzLAotICAgc3RyaW5nLl9fZm9ybWF0X18sIGV0Yy4gKi8KLQotI2luY2x1ZGUgPGxvY2FsZS5oPgotCi0vKiBCZWZvcmUgaW5jbHVkaW5nIHRoaXMsIHlvdSBtdXN0IGluY2x1ZGUgZWl0aGVyOgotICAgc3RyaW5nbGliL3VuaWNvZGVkZWZzLmgKLSAgIHN0cmluZ2xpYi9zdHJpbmdkZWZzLmgKLQotICAgQWxzbywgeW91IHNob3VsZCBkZWZpbmUgdGhlIG5hbWVzOgotICAgRk9STUFUX1NUUklORwotICAgRk9STUFUX0xPTkcKLSAgIEZPUk1BVF9GTE9BVAotICAgRk9STUFUX0NPTVBMRVgKLSAgIHRvIGJlIHdoYXRldmVyIHlvdSB3YW50IHRoZSBwdWJsaWMgbmFtZXMgb2YgdGhlc2UgZnVuY3Rpb25zIHRvCi0gICBiZS4gIFRoZXNlIGFyZSB0aGUgb25seSBub24tc3RhdGljIGZ1bmN0aW9ucyBkZWZpbmVkIGhlcmUuCi0qLwotCi0vKiBSYWlzZXMgYW4gZXhjZXB0aW9uIGFib3V0IGFuIHVua25vd24gcHJlc2VudGF0aW9uIHR5cGUgZm9yIHRoaXMKLSAqIHR5cGUuICovCi0KLXN0YXRpYyB2b2lkCi11bmtub3duX3ByZXNlbnRhdGlvbl90eXBlKFNUUklOR0xJQl9DSEFSIHByZXNlbnRhdGlvbl90eXBlLAotICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyKiB0eXBlX25hbWUpCi17Ci0jaWYgU1RSSU5HTElCX0lTX1VOSUNPREUKLSAgICAvKiBJZiBTVFJJTkdMSUJfQ0hBUiBpcyBQeV9VTklDT0RFLCAlYyBtaWdodCBiZSBvdXQtb2YtcmFuZ2UsCi0gICAgICAgaGVuY2UgdGhlIHR3byBjYXNlcy4gSWYgaXQgaXMgY2hhciwgZ2NjIGNvbXBsYWlucyB0aGF0IHRoZQotICAgICAgIGNvbmRpdGlvbiBiZWxvdyBpcyBhbHdheXMgdHJ1ZSwgaGVuY2UgdGhlIGlmZGVmLiAqLwotICAgIGlmIChwcmVzZW50YXRpb25fdHlwZSA+IDMyICYmIHByZXNlbnRhdGlvbl90eXBlIDwgMTI4KQotI2VuZGlmCi0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIlVua25vd24gZm9ybWF0IGNvZGUgJyVjJyAiCi0gICAgICAgICAgICAgICAgICAgICAiZm9yIG9iamVjdCBvZiB0eXBlICclLjIwMHMnIiwKLSAgICAgICAgICAgICAgICAgICAgIChjaGFyKXByZXNlbnRhdGlvbl90eXBlLAotICAgICAgICAgICAgICAgICAgICAgdHlwZV9uYW1lKTsKLSNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQotICAgIGVsc2UKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiVW5rbm93biBmb3JtYXQgY29kZSAnXFx4JXgnICIKLSAgICAgICAgICAgICAgICAgICAgICJmb3Igb2JqZWN0IG9mIHR5cGUgJyUuMjAwcyciLAotICAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGludClwcmVzZW50YXRpb25fdHlwZSwKLSAgICAgICAgICAgICAgICAgICAgIHR5cGVfbmFtZSk7Ci0jZW5kaWYKLX0KLQotc3RhdGljIHZvaWQKLWludmFsaWRfY29tbWFfdHlwZShTVFJJTkdMSUJfQ0hBUiBwcmVzZW50YXRpb25fdHlwZSkKLXsKLSNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQotICAgIC8qIFNlZSBjb21tZW50IGluIHVua25vd25fcHJlc2VudGF0aW9uX3R5cGUgKi8KLSAgICBpZiAocHJlc2VudGF0aW9uX3R5cGUgPiAzMiAmJiBwcmVzZW50YXRpb25fdHlwZSA8IDEyOCkKLSNlbmRpZgotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJDYW5ub3Qgc3BlY2lmeSAnLCcgd2l0aCAnJWMnLiIsCi0gICAgICAgICAgICAgICAgICAgICAoY2hhcilwcmVzZW50YXRpb25fdHlwZSk7Ci0jaWYgU1RSSU5HTElCX0lTX1VOSUNPREUKLSAgICBlbHNlCi0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBzcGVjaWZ5ICcsJyB3aXRoICdcXHgleCcuIiwKLSAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBpbnQpcHJlc2VudGF0aW9uX3R5cGUpOwotI2VuZGlmCi19Ci0KLS8qCi0gICAgZ2V0X2ludGVnZXIgY29uc3VtZXMgMCBvciBtb3JlIGRlY2ltYWwgZGlnaXQgY2hhcmFjdGVycyBmcm9tIGFuCi0gICAgaW5wdXQgc3RyaW5nLCB1cGRhdGVzICpyZXN1bHQgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBwb3NpdGl2ZQotICAgIGludGVnZXIsIGFuZCByZXR1cm5zIHRoZSBudW1iZXIgb2YgZGlnaXRzIGNvbnN1bWVkLgotCi0gICAgcmV0dXJucyAtMSBvbiBlcnJvci4KLSovCi1zdGF0aWMgaW50Ci1nZXRfaW50ZWdlcihTVFJJTkdMSUJfQ0hBUiAqKnB0ciwgU1RSSU5HTElCX0NIQVIgKmVuZCwKLSAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKnJlc3VsdCkKLXsKLSAgICBQeV9zc2l6ZV90IGFjY3VtdWxhdG9yLCBkaWdpdHZhbCwgb2xkYWNjdW11bGF0b3I7Ci0gICAgaW50IG51bWRpZ2l0czsKLSAgICBhY2N1bXVsYXRvciA9IG51bWRpZ2l0cyA9IDA7Ci0gICAgZm9yICg7OygqcHRyKSsrLCBudW1kaWdpdHMrKykgewotICAgICAgICBpZiAoKnB0ciA+PSBlbmQpCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgZGlnaXR2YWwgPSBTVFJJTkdMSUJfVE9ERUNJTUFMKCoqcHRyKTsKLSAgICAgICAgaWYgKGRpZ2l0dmFsIDwgMCkKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAvKgotICAgICAgICAgICBUaGlzIHRyaWNrIHdhcyBjb3BpZWQgZnJvbSBvbGQgVW5pY29kZSBmb3JtYXQgY29kZS4gIEl0J3MgY3V0ZSwKLSAgICAgICAgICAgYnV0IHdvdWxkIHJlYWxseSBzdWNrIG9uIGFuIG9sZCBtYWNoaW5lIHdpdGggYSBzbG93IGRpdmlkZQotICAgICAgICAgICBpbXBsZW1lbnRhdGlvbi4gIEZvcnR1bmF0ZWx5LCBpbiB0aGUgbm9ybWFsIGNhc2Ugd2UgZG8gbm90Ci0gICAgICAgICAgIGV4cGVjdCB0b28gbWFueSBkaWdpdHMuCi0gICAgICAgICovCi0gICAgICAgIG9sZGFjY3VtdWxhdG9yID0gYWNjdW11bGF0b3I7Ci0gICAgICAgIGFjY3VtdWxhdG9yICo9IDEwOwotICAgICAgICBpZiAoKGFjY3VtdWxhdG9yKzEwKS8xMCAhPSBvbGRhY2N1bXVsYXRvcisxKSB7Ci0gICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAiVG9vIG1hbnkgZGVjaW1hbCBkaWdpdHMgaW4gZm9ybWF0IHN0cmluZyIpOwotICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICB9Ci0gICAgICAgIGFjY3VtdWxhdG9yICs9IGRpZ2l0dmFsOwotICAgIH0KLSAgICAqcmVzdWx0ID0gYWNjdW11bGF0b3I7Ci0gICAgcmV0dXJuIG51bWRpZ2l0czsKLX0KLQotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qKioqKioqKioqKiBzdGFuZGFyZCBmb3JtYXQgc3BlY2lmaWVyIHBhcnNpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi0vKiByZXR1cm5zIHRydWUgaWYgdGhpcyBjaGFyYWN0ZXIgaXMgYSBzcGVjaWZpZXIgYWxpZ25tZW50IHRva2VuICovCi1QeV9MT0NBTF9JTkxJTkUoaW50KQotaXNfYWxpZ25tZW50X3Rva2VuKFNUUklOR0xJQl9DSEFSIGMpCi17Ci0gICAgc3dpdGNoIChjKSB7Ci0gICAgY2FzZSAnPCc6IGNhc2UgJz4nOiBjYXNlICc9JzogY2FzZSAnXic6Ci0gICAgICAgIHJldHVybiAxOwotICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiAwOwotICAgIH0KLX0KLQotLyogcmV0dXJucyB0cnVlIGlmIHRoaXMgY2hhcmFjdGVyIGlzIGEgc2lnbiBlbGVtZW50ICovCi1QeV9MT0NBTF9JTkxJTkUoaW50KQotaXNfc2lnbl9lbGVtZW50KFNUUklOR0xJQl9DSEFSIGMpCi17Ci0gICAgc3dpdGNoIChjKSB7Ci0gICAgY2FzZSAnICc6IGNhc2UgJysnOiBjYXNlICctJzoKLSAgICAgICAgcmV0dXJuIDE7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgcmV0dXJuIDA7Ci0gICAgfQotfQotCi0KLXR5cGVkZWYgc3RydWN0IHsKLSAgICBTVFJJTkdMSUJfQ0hBUiBmaWxsX2NoYXI7Ci0gICAgU1RSSU5HTElCX0NIQVIgYWxpZ247Ci0gICAgaW50IGFsdGVybmF0ZTsKLSAgICBTVFJJTkdMSUJfQ0hBUiBzaWduOwotICAgIFB5X3NzaXplX3Qgd2lkdGg7Ci0gICAgaW50IHRob3VzYW5kc19zZXBhcmF0b3JzOwotICAgIFB5X3NzaXplX3QgcHJlY2lzaW9uOwotICAgIFNUUklOR0xJQl9DSEFSIHR5cGU7Ci19IEludGVybmFsRm9ybWF0U3BlYzsKLQotCi0jaWYgMAotLyogT2NjYXNzaW9uYWxseSB1c2VmdWwgZm9yIGRlYnVnZ2luZy4gU2hvdWxkIG5vcm1hbGx5IGJlIGNvbW1lbnRlZCBvdXQuICovCi1zdGF0aWMgdm9pZAotREVCVUdfUFJJTlRfRk9STUFUX1NQRUMoSW50ZXJuYWxGb3JtYXRTcGVjICpmb3JtYXQpCi17Ci0gICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogZmlsbF9jaGFyICVkXG4iLCBmb3JtYXQtPmZpbGxfY2hhcik7Ci0gICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogYWxpZ24gJWRcbiIsIGZvcm1hdC0+YWxpZ24pOwotICAgIHByaW50ZigiaW50ZXJuYWwgZm9ybWF0IHNwZWM6IGFsdGVybmF0ZSAlZFxuIiwgZm9ybWF0LT5hbHRlcm5hdGUpOwotICAgIHByaW50ZigiaW50ZXJuYWwgZm9ybWF0IHNwZWM6IHNpZ24gJWRcbiIsIGZvcm1hdC0+c2lnbik7Ci0gICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogd2lkdGggJXpkXG4iLCBmb3JtYXQtPndpZHRoKTsKLSAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiB0aG91c2FuZHNfc2VwYXJhdG9ycyAlZFxuIiwKLSAgICAgICAgICAgZm9ybWF0LT50aG91c2FuZHNfc2VwYXJhdG9ycyk7Ci0gICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogcHJlY2lzaW9uICV6ZFxuIiwgZm9ybWF0LT5wcmVjaXNpb24pOwotICAgIHByaW50ZigiaW50ZXJuYWwgZm9ybWF0IHNwZWM6IHR5cGUgJWNcbiIsIGZvcm1hdC0+dHlwZSk7Ci0gICAgcHJpbnRmKCJcbiIpOwotfQotI2VuZGlmCi0KLQotLyoKLSAgcHRyIHBvaW50cyB0byB0aGUgc3RhcnQgb2YgdGhlIGZvcm1hdF9zcGVjLCBlbmQgcG9pbnRzIGp1c3QgcGFzdCBpdHMgZW5kLgotICBmaWxscyBpbiBmb3JtYXQgd2l0aCB0aGUgcGFyc2VkIGluZm9ybWF0aW9uLgotICByZXR1cm5zIDEgb24gc3VjY2VzcywgMCBvbiBmYWlsdXJlLgotICBpZiBmYWlsdXJlLCBzZXRzIHRoZSBleGNlcHRpb24KLSovCi1zdGF0aWMgaW50Ci1wYXJzZV9pbnRlcm5hbF9yZW5kZXJfZm9ybWF0X3NwZWMoU1RSSU5HTElCX0NIQVIgKmZvcm1hdF9zcGVjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZm9ybWF0X3NwZWNfbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEludGVybmFsRm9ybWF0U3BlYyAqZm9ybWF0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgZGVmYXVsdF90eXBlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgZGVmYXVsdF9hbGlnbikKLXsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqcHRyID0gZm9ybWF0X3NwZWM7Ci0gICAgU1RSSU5HTElCX0NIQVIgKmVuZCA9IGZvcm1hdF9zcGVjICsgZm9ybWF0X3NwZWNfbGVuOwotCi0gICAgLyogZW5kLXB0ciBpcyB1c2VkIHRocm91Z2hvdXQgdGhpcyBjb2RlIHRvIHNwZWNpZnkgdGhlIGxlbmd0aCBvZgotICAgICAgIHRoZSBpbnB1dCBzdHJpbmcgKi8KLQotICAgIFB5X3NzaXplX3QgY29uc3VtZWQ7Ci0gICAgaW50IGFsaWduX3NwZWNpZmllZCA9IDA7Ci0KLSAgICBmb3JtYXQtPmZpbGxfY2hhciA9ICdcMCc7Ci0gICAgZm9ybWF0LT5hbGlnbiA9IGRlZmF1bHRfYWxpZ247Ci0gICAgZm9ybWF0LT5hbHRlcm5hdGUgPSAwOwotICAgIGZvcm1hdC0+c2lnbiA9ICdcMCc7Ci0gICAgZm9ybWF0LT53aWR0aCA9IC0xOwotICAgIGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMgPSAwOwotICAgIGZvcm1hdC0+cHJlY2lzaW9uID0gLTE7Ci0gICAgZm9ybWF0LT50eXBlID0gZGVmYXVsdF90eXBlOwotCi0gICAgLyogSWYgdGhlIHNlY29uZCBjaGFyIGlzIGFuIGFsaWdubWVudCB0b2tlbiwKLSAgICAgICB0aGVuIHBhcnNlIHRoZSBmaWxsIGNoYXIgKi8KLSAgICBpZiAoZW5kLXB0ciA+PSAyICYmIGlzX2FsaWdubWVudF90b2tlbihwdHJbMV0pKSB7Ci0gICAgICAgIGZvcm1hdC0+YWxpZ24gPSBwdHJbMV07Ci0gICAgICAgIGZvcm1hdC0+ZmlsbF9jaGFyID0gcHRyWzBdOwotICAgICAgICBhbGlnbl9zcGVjaWZpZWQgPSAxOwotICAgICAgICBwdHIgKz0gMjsKLSAgICB9Ci0gICAgZWxzZSBpZiAoZW5kLXB0ciA+PSAxICYmIGlzX2FsaWdubWVudF90b2tlbihwdHJbMF0pKSB7Ci0gICAgICAgIGZvcm1hdC0+YWxpZ24gPSBwdHJbMF07Ci0gICAgICAgIGFsaWduX3NwZWNpZmllZCA9IDE7Ci0gICAgICAgICsrcHRyOwotICAgIH0KLQotICAgIC8qIFBhcnNlIHRoZSB2YXJpb3VzIHNpZ24gb3B0aW9ucyAqLwotICAgIGlmIChlbmQtcHRyID49IDEgJiYgaXNfc2lnbl9lbGVtZW50KHB0clswXSkpIHsKLSAgICAgICAgZm9ybWF0LT5zaWduID0gcHRyWzBdOwotICAgICAgICArK3B0cjsKLSAgICB9Ci0KLSAgICAvKiBJZiB0aGUgbmV4dCBjaGFyYWN0ZXIgaXMgIywgd2UncmUgaW4gYWx0ZXJuYXRlIG1vZGUuICBUaGlzIG9ubHkKLSAgICAgICBhcHBsaWVzIHRvIGludGVnZXJzLiAqLwotICAgIGlmIChlbmQtcHRyID49IDEgJiYgcHRyWzBdID09ICcjJykgewotICAgICAgICBmb3JtYXQtPmFsdGVybmF0ZSA9IDE7Ci0gICAgICAgICsrcHRyOwotICAgIH0KLQotICAgIC8qIFRoZSBzcGVjaWFsIGNhc2UgZm9yIDAtcGFkZGluZyAoYmFja3dhcmRzIGNvbXBhdCkgKi8KLSAgICBpZiAoZm9ybWF0LT5maWxsX2NoYXIgPT0gJ1wwJyAmJiBlbmQtcHRyID49IDEgJiYgcHRyWzBdID09ICcwJykgewotICAgICAgICBmb3JtYXQtPmZpbGxfY2hhciA9ICcwJzsKLSAgICAgICAgaWYgKCFhbGlnbl9zcGVjaWZpZWQpIHsKLSAgICAgICAgICAgIGZvcm1hdC0+YWxpZ24gPSAnPSc7Ci0gICAgICAgIH0KLSAgICAgICAgKytwdHI7Ci0gICAgfQotCi0gICAgY29uc3VtZWQgPSBnZXRfaW50ZWdlcigmcHRyLCBlbmQsICZmb3JtYXQtPndpZHRoKTsKLSAgICBpZiAoY29uc3VtZWQgPT0gLTEpCi0gICAgICAgIC8qIE92ZXJmbG93IGVycm9yLiBFeGNlcHRpb24gYWxyZWFkeSBzZXQuICovCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgLyogSWYgY29uc3VtZWQgaXMgMCwgd2UgZGlkbid0IGNvbnN1bWUgYW55IGNoYXJhY3RlcnMgZm9yIHRoZQotICAgICAgIHdpZHRoLiBJbiB0aGF0IGNhc2UsIHJlc2V0IHRoZSB3aWR0aCB0byAtMSwgYmVjYXVzZQotICAgICAgIGdldF9pbnRlZ2VyKCkgd2lsbCBoYXZlIHNldCBpdCB0byB6ZXJvLiAtMSBpcyBob3cgd2UgcmVjb3JkCi0gICAgICAgdGhhdCB0aGUgd2lkdGggd2Fzbid0IHNwZWNpZmllZC4gKi8KLSAgICBpZiAoY29uc3VtZWQgPT0gMCkKLSAgICAgICAgZm9ybWF0LT53aWR0aCA9IC0xOwotCi0gICAgLyogQ29tbWEgc2lnbmlmaWVzIGFkZCB0aG91c2FuZHMgc2VwYXJhdG9ycyAqLwotICAgIGlmIChlbmQtcHRyICYmIHB0clswXSA9PSAnLCcpIHsKLSAgICAgICAgZm9ybWF0LT50aG91c2FuZHNfc2VwYXJhdG9ycyA9IDE7Ci0gICAgICAgICsrcHRyOwotICAgIH0KLQotICAgIC8qIFBhcnNlIGZpZWxkIHByZWNpc2lvbiAqLwotICAgIGlmIChlbmQtcHRyICYmIHB0clswXSA9PSAnLicpIHsKLSAgICAgICAgKytwdHI7Ci0KLSAgICAgICAgY29uc3VtZWQgPSBnZXRfaW50ZWdlcigmcHRyLCBlbmQsICZmb3JtYXQtPnByZWNpc2lvbik7Ci0gICAgICAgIGlmIChjb25zdW1lZCA9PSAtMSkKLSAgICAgICAgICAgIC8qIE92ZXJmbG93IGVycm9yLiBFeGNlcHRpb24gYWxyZWFkeSBzZXQuICovCi0gICAgICAgICAgICByZXR1cm4gMDsKLQotICAgICAgICAvKiBOb3QgaGF2aW5nIGEgcHJlY2lzaW9uIGFmdGVyIGEgZG90IGlzIGFuIGVycm9yLiAqLwotICAgICAgICBpZiAoY29uc3VtZWQgPT0gMCkgewotICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIkZvcm1hdCBzcGVjaWZpZXIgbWlzc2luZyBwcmVjaXNpb24iKTsKLSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICB9Ci0KLSAgICB9Ci0KLSAgICAvKiBGaW5hbGx5LCBwYXJzZSB0aGUgdHlwZSBmaWVsZC4gKi8KLQotICAgIGlmIChlbmQtcHRyID4gMSkgewotICAgICAgICAvKiBNb3JlIHRoYW4gb25lIGNoYXIgcmVtYWluLCBpbnZhbGlkIGNvbnZlcnNpb24gc3BlYy4gKi8KLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsICJJbnZhbGlkIGNvbnZlcnNpb24gc3BlY2lmaWNhdGlvbiIpOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0KLSAgICBpZiAoZW5kLXB0ciA9PSAxKSB7Ci0gICAgICAgIGZvcm1hdC0+dHlwZSA9IHB0clswXTsKLSAgICAgICAgKytwdHI7Ci0gICAgfQotCi0gICAgLyogRG8gYXMgbXVjaCB2YWxpZGF0aW5nIGFzIHdlIGNhbiwganVzdCBieSBsb29raW5nIGF0IHRoZSBmb3JtYXQKLSAgICAgICBzcGVjaWZpZXIuICBEbyBub3QgdGFrZSBpbnRvIGFjY291bnQgd2hhdCB0eXBlIG9mIGZvcm1hdHRpbmcKLSAgICAgICB3ZSdyZSBkb2luZyAoaW50LCBmbG9hdCwgc3RyaW5nKS4gKi8KLQotICAgIGlmIChmb3JtYXQtPnRob3VzYW5kc19zZXBhcmF0b3JzKSB7Ci0gICAgICAgIHN3aXRjaCAoZm9ybWF0LT50eXBlKSB7Ci0gICAgICAgIGNhc2UgJ2QnOgotICAgICAgICBjYXNlICdlJzoKLSAgICAgICAgY2FzZSAnZic6Ci0gICAgICAgIGNhc2UgJ2cnOgotICAgICAgICBjYXNlICdFJzoKLSAgICAgICAgY2FzZSAnRyc6Ci0gICAgICAgIGNhc2UgJyUnOgotICAgICAgICBjYXNlICdGJzoKLSAgICAgICAgY2FzZSAnXDAnOgotICAgICAgICAgICAgLyogVGhlc2UgYXJlIGFsbG93ZWQuIFNlZSBQRVAgMzc4LiovCi0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIGludmFsaWRfY29tbWFfdHlwZShmb3JtYXQtPnR5cGUpOwotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICByZXR1cm4gMTsKLX0KLQotLyogQ2FsY3VsYXRlIHRoZSBwYWRkaW5nIG5lZWRlZC4gKi8KLXN0YXRpYyB2b2lkCi1jYWxjX3BhZGRpbmcoUHlfc3NpemVfdCBuY2hhcnMsIFB5X3NzaXplX3Qgd2lkdGgsIFNUUklOR0xJQl9DSEFSIGFsaWduLAotICAgICAgICAgICAgIFB5X3NzaXplX3QgKm5fbHBhZGRpbmcsIFB5X3NzaXplX3QgKm5fcnBhZGRpbmcsCi0gICAgICAgICAgICAgUHlfc3NpemVfdCAqbl90b3RhbCkKLXsKLSAgICBpZiAod2lkdGggPj0gMCkgewotICAgICAgICBpZiAobmNoYXJzID4gd2lkdGgpCi0gICAgICAgICAgICAqbl90b3RhbCA9IG5jaGFyczsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgKm5fdG90YWwgPSB3aWR0aDsKLSAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8qIG5vdCBzcGVjaWZpZWQsIHVzZSBhbGwgb2YgdGhlIGNoYXJzIGFuZCBubyBtb3JlICovCi0gICAgICAgICpuX3RvdGFsID0gbmNoYXJzOwotICAgIH0KLQotICAgIC8qIEZpZ3VyZSBvdXQgaG93IG11Y2ggbGVhZGluZyBzcGFjZSB3ZSBuZWVkLCBiYXNlZCBvbiB0aGUKLSAgICAgICBhbGlnbmluZyAqLwotICAgIGlmIChhbGlnbiA9PSAnPicpCi0gICAgICAgICpuX2xwYWRkaW5nID0gKm5fdG90YWwgLSBuY2hhcnM7Ci0gICAgZWxzZSBpZiAoYWxpZ24gPT0gJ14nKQotICAgICAgICAqbl9scGFkZGluZyA9ICgqbl90b3RhbCAtIG5jaGFycykgLyAyOwotICAgIGVsc2UgaWYgKGFsaWduID09ICc8JyB8fCBhbGlnbiA9PSAnPScpCi0gICAgICAgICpuX2xwYWRkaW5nID0gMDsKLSAgICBlbHNlIHsKLSAgICAgICAgLyogV2Ugc2hvdWxkIG5ldmVyIGhhdmUgYW4gdW5zcGVjaWZpZWQgYWxpZ25tZW50LiAqLwotICAgICAgICAqbl9scGFkZGluZyA9IDA7Ci0gICAgICAgIGFzc2VydCgwKTsKLSAgICB9Ci0KLSAgICAqbl9ycGFkZGluZyA9ICpuX3RvdGFsIC0gbmNoYXJzIC0gKm5fbHBhZGRpbmc7Ci19Ci0KLS8qIERvIHRoZSBwYWRkaW5nLCBhbmQgcmV0dXJuIGEgcG9pbnRlciB0byB3aGVyZSB0aGUgY2FsbGVyLXN1cHBsaWVkCi0gICBjb250ZW50IGdvZXMuICovCi1zdGF0aWMgU1RSSU5HTElCX0NIQVIgKgotZmlsbF9wYWRkaW5nKFNUUklOR0xJQl9DSEFSICpwLCBQeV9zc2l6ZV90IG5jaGFycywgU1RSSU5HTElCX0NIQVIgZmlsbF9jaGFyLAotICAgICAgICAgICAgIFB5X3NzaXplX3Qgbl9scGFkZGluZywgUHlfc3NpemVfdCBuX3JwYWRkaW5nKQotewotICAgIC8qIFBhZCBvbiBsZWZ0LiAqLwotICAgIGlmIChuX2xwYWRkaW5nKQotICAgICAgICBTVFJJTkdMSUJfRklMTChwLCBmaWxsX2NoYXIsIG5fbHBhZGRpbmcpOwotCi0gICAgLyogUGFkIG9uIHJpZ2h0LiAqLwotICAgIGlmIChuX3JwYWRkaW5nKQotICAgICAgICBTVFJJTkdMSUJfRklMTChwICsgbmNoYXJzICsgbl9scGFkZGluZywgZmlsbF9jaGFyLCBuX3JwYWRkaW5nKTsKLQotICAgIC8qIFBvaW50ZXIgdG8gdGhlIHVzZXIgY29udGVudC4gKi8KLSAgICByZXR1cm4gcCArIG5fbHBhZGRpbmc7Ci19Ci0KLSNpZiBkZWZpbmVkIEZPUk1BVF9GTE9BVCB8fCBkZWZpbmVkIEZPUk1BVF9MT05HIHx8IGRlZmluZWQgRk9STUFUX0NPTVBMRVgKLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKioqKioqKioqKiogY29tbW9uIHJvdXRpbmVzIGZvciBudW1lcmljIGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqLwotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQotLyogTG9jYWxlIHR5cGUgY29kZXMuICovCi0jZGVmaW5lIExUX0NVUlJFTlRfTE9DQUxFIDAKLSNkZWZpbmUgTFRfREVGQVVMVF9MT0NBTEUgMQotI2RlZmluZSBMVF9OT19MT0NBTEUgMgotCi0vKiBMb2NhbGUgaW5mbyBuZWVkZWQgZm9yIGZvcm1hdHRpbmcgaW50ZWdlcnMgYW5kIHRoZSBwYXJ0IG9mIGZsb2F0cwotICAgYmVmb3JlIGFuZCBpbmNsdWRpbmcgdGhlIGRlY2ltYWwuIE5vdGUgdGhhdCBsb2NhbGVzIG9ubHkgc3VwcG9ydAotICAgOC1iaXQgY2hhcnMsIG5vdCB1bmljb2RlLiAqLwotdHlwZWRlZiBzdHJ1Y3QgewotICAgIGNoYXIgKmRlY2ltYWxfcG9pbnQ7Ci0gICAgY2hhciAqdGhvdXNhbmRzX3NlcDsKLSAgICBjaGFyICpncm91cGluZzsKLX0gTG9jYWxlSW5mbzsKLQotLyogZGVzY3JpYmVzIHRoZSBsYXlvdXQgZm9yIGFuIGludGVnZXIsIHNlZSB0aGUgY29tbWVudCBpbgotICAgY2FsY19udW1iZXJfd2lkdGhzKCkgZm9yIGRldGFpbHMgKi8KLXR5cGVkZWYgc3RydWN0IHsKLSAgICBQeV9zc2l6ZV90IG5fbHBhZGRpbmc7Ci0gICAgUHlfc3NpemVfdCBuX3ByZWZpeDsKLSAgICBQeV9zc2l6ZV90IG5fc3BhZGRpbmc7Ci0gICAgUHlfc3NpemVfdCBuX3JwYWRkaW5nOwotICAgIGNoYXIgc2lnbjsKLSAgICBQeV9zc2l6ZV90IG5fc2lnbjsgICAgICAvKiBudW1iZXIgb2YgZGlnaXRzIG5lZWRlZCBmb3Igc2lnbiAoMC8xKSAqLwotICAgIFB5X3NzaXplX3Qgbl9ncm91cGVkX2RpZ2l0czsgLyogU3BhY2UgdGFrZW4gdXAgYnkgdGhlIGRpZ2l0cywgaW5jbHVkaW5nCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbnkgZ3JvdXBpbmcgY2hhcnMuICovCi0gICAgUHlfc3NpemVfdCBuX2RlY2ltYWw7ICAgLyogMCBpZiBvbmx5IGFuIGludGVnZXIgKi8KLSAgICBQeV9zc2l6ZV90IG5fcmVtYWluZGVyOyAvKiBEaWdpdHMgaW4gZGVjaW1hbCBhbmQvb3IgZXhwb25lbnQgcGFydCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGNsdWRpbmcgdGhlIGRlY2ltYWwgaXRzZWxmLCBpZgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXNlbnQuICovCi0KLSAgICAvKiBUaGVzZSAyIGFyZSBub3QgdGhlIHdpZHRocyBvZiBmaWVsZHMsIGJ1dCBhcmUgbmVlZGVkIGJ5Ci0gICAgICAgU1RSSU5HTElCX0dST1VQSU5HLiAqLwotICAgIFB5X3NzaXplX3Qgbl9kaWdpdHM7ICAgIC8qIFRoZSBudW1iZXIgb2YgZGlnaXRzIGJlZm9yZSBhIGRlY2ltYWwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBleHBvbmVudC4gKi8KLSAgICBQeV9zc2l6ZV90IG5fbWluX3dpZHRoOyAvKiBUaGUgbWluX3dpZHRoIHdlIHVzZWQgd2hlbiB3ZSBjb21wdXRlZAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSBuX2dyb3VwZWRfZGlnaXRzIHdpZHRoLiAqLwotfSBOdW1iZXJGaWVsZFdpZHRoczsKLQotCi0vKiBHaXZlbiBhIG51bWJlciBvZiB0aGUgZm9ybToKLSAgIGRpZ2l0c1tyZW1haW5kZXJdCi0gICB3aGVyZSBwdHIgcG9pbnRzIHRvIHRoZSBzdGFydCBhbmQgZW5kIHBvaW50cyB0byB0aGUgZW5kLCBmaW5kIHdoZXJlCi0gICAgdGhlIGludGVnZXIgcGFydCBlbmRzLiBUaGlzIGNvdWxkIGJlIGEgZGVjaW1hbCwgYW4gZXhwb25lbnQsIGJvdGgsCi0gICAgb3IgbmVpdGhlci4KLSAgIElmIGEgZGVjaW1hbCBwb2ludCBpcyBwcmVzZW50LCBzZXQgKmhhc19kZWNpbWFsIGFuZCBpbmNyZW1lbnQKLSAgICByZW1haW5kZXIgYmV5b25kIGl0LgotICAgUmVzdWx0cyBhcmUgdW5kZWZpbmVkIChidXQgc2hvdWxkbid0IGNyYXNoKSBmb3IgaW1wcm9wZXJseQotICAgIGZvcm1hdHRlZCBzdHJpbmdzLgotKi8KLXN0YXRpYyB2b2lkCi1wYXJzZV9udW1iZXIoU1RSSU5HTElCX0NIQVIgKnB0ciwgUHlfc3NpemVfdCBsZW4sCi0gICAgICAgICAgICAgUHlfc3NpemVfdCAqbl9yZW1haW5kZXIsIGludCAqaGFzX2RlY2ltYWwpCi17Ci0gICAgU1RSSU5HTElCX0NIQVIgKmVuZCA9IHB0ciArIGxlbjsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqcmVtYWluZGVyOwotCi0gICAgd2hpbGUgKHB0cjxlbmQgJiYgaXNkaWdpdCgqcHRyKSkKLSAgICAgICAgKytwdHI7Ci0gICAgcmVtYWluZGVyID0gcHRyOwotCi0gICAgLyogRG9lcyByZW1haW5kZXIgc3RhcnQgd2l0aCBhIGRlY2ltYWwgcG9pbnQ/ICovCi0gICAgKmhhc19kZWNpbWFsID0gcHRyPGVuZCAmJiAqcmVtYWluZGVyID09ICcuJzsKLQotICAgIC8qIFNraXAgdGhlIGRlY2ltYWwgcG9pbnQuICovCi0gICAgaWYgKCpoYXNfZGVjaW1hbCkKLSAgICAgICAgcmVtYWluZGVyKys7Ci0KLSAgICAqbl9yZW1haW5kZXIgPSBlbmQgLSByZW1haW5kZXI7Ci19Ci0KLS8qIG5vdCBhbGwgZmllbGRzIG9mIGZvcm1hdCBhcmUgdXNlZC4gIGZvciBleGFtcGxlLCBwcmVjaXNpb24gaXMKLSAgIHVudXNlZC4gIHNob3VsZCB0aGlzIHRha2UgZGlzY3JldGUgcGFyYW1zIGluIG9yZGVyIHRvIGJlIG1vcmUgY2xlYXIKLSAgIGFib3V0IHdoYXQgaXQgZG9lcz8gIG9yIGlzIHBhc3NpbmcgYSBzaW5nbGUgZm9ybWF0IHBhcmFtZXRlciBlYXNpZXIKLSAgIGFuZCBtb3JlIGVmZmljaWVudCBlbm91Z2ggdG8ganVzdGlmeSBhIGxpdHRsZSBvYmZ1c2NhdGlvbj8gKi8KLXN0YXRpYyBQeV9zc2l6ZV90Ci1jYWxjX251bWJlcl93aWR0aHMoTnVtYmVyRmllbGRXaWR0aHMgKnNwZWMsIFB5X3NzaXplX3Qgbl9wcmVmaXgsCi0gICAgICAgICAgICAgICAgICAgU1RSSU5HTElCX0NIQVIgc2lnbl9jaGFyLCBTVFJJTkdMSUJfQ0hBUiAqbnVtYmVyLAotICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgbl9udW1iZXIsIFB5X3NzaXplX3Qgbl9yZW1haW5kZXIsCi0gICAgICAgICAgICAgICAgICAgaW50IGhhc19kZWNpbWFsLCBjb25zdCBMb2NhbGVJbmZvICpsb2NhbGUsCi0gICAgICAgICAgICAgICAgICAgY29uc3QgSW50ZXJuYWxGb3JtYXRTcGVjICpmb3JtYXQpCi17Ci0gICAgUHlfc3NpemVfdCBuX25vbl9kaWdpdF9ub25fcGFkZGluZzsKLSAgICBQeV9zc2l6ZV90IG5fcGFkZGluZzsKLQotICAgIHNwZWMtPm5fZGlnaXRzID0gbl9udW1iZXIgLSBuX3JlbWFpbmRlciAtIChoYXNfZGVjaW1hbD8xOjApOwotICAgIHNwZWMtPm5fbHBhZGRpbmcgPSAwOwotICAgIHNwZWMtPm5fcHJlZml4ID0gbl9wcmVmaXg7Ci0gICAgc3BlYy0+bl9kZWNpbWFsID0gaGFzX2RlY2ltYWwgPyBzdHJsZW4obG9jYWxlLT5kZWNpbWFsX3BvaW50KSA6IDA7Ci0gICAgc3BlYy0+bl9yZW1haW5kZXIgPSBuX3JlbWFpbmRlcjsKLSAgICBzcGVjLT5uX3NwYWRkaW5nID0gMDsKLSAgICBzcGVjLT5uX3JwYWRkaW5nID0gMDsKLSAgICBzcGVjLT5zaWduID0gJ1wwJzsKLSAgICBzcGVjLT5uX3NpZ24gPSAwOwotCi0gICAgLyogdGhlIG91dHB1dCB3aWxsIGxvb2sgbGlrZToKLSAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Ci0gICAgICAgfCA8bHBhZGRpbmc+IDxzaWduPiA8cHJlZml4PiA8c3BhZGRpbmc+IDxncm91cGVkX2RpZ2l0cz4gPGRlY2ltYWw+IDxyZW1haW5kZXI+IDxycGFkZGluZz4gfAotICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLQotICAgICAgIHNpZ24gaXMgY29tcHV0ZWQgZnJvbSBmb3JtYXQtPnNpZ24gYW5kIHRoZSBhY3R1YWwKLSAgICAgICBzaWduIG9mIHRoZSBudW1iZXIKLQotICAgICAgIHByZWZpeCBpcyBnaXZlbiAoaXQncyBmb3IgdGhlICcweCcgcHJlZml4KQotCi0gICAgICAgZGlnaXRzIGlzIGFscmVhZHkga25vd24KLQotICAgICAgIHRoZSB0b3RhbCB3aWR0aCBpcyBlaXRoZXIgZ2l2ZW4sIG9yIGNvbXB1dGVkIGZyb20gdGhlCi0gICAgICAgYWN0dWFsIGRpZ2l0cwotCi0gICAgICAgb25seSBvbmUgb2YgbHBhZGRpbmcsIHNwYWRkaW5nLCBhbmQgcnBhZGRpbmcgY2FuIGJlIG5vbi16ZXJvLAotICAgICAgIGFuZCBpdCdzIGNhbGN1bGF0ZWQgZnJvbSB0aGUgd2lkdGggYW5kIG90aGVyIGZpZWxkcwotICAgICovCi0KLSAgICAvKiBjb21wdXRlIHRoZSB2YXJpb3VzIHBhcnRzIHdlJ3JlIGdvaW5nIHRvIHdyaXRlICovCi0gICAgc3dpdGNoIChmb3JtYXQtPnNpZ24pIHsKLSAgICBjYXNlICcrJzoKLSAgICAgICAgLyogYWx3YXlzIHB1dCBhICsgb3IgLSAqLwotICAgICAgICBzcGVjLT5uX3NpZ24gPSAxOwotICAgICAgICBzcGVjLT5zaWduID0gKHNpZ25fY2hhciA9PSAnLScgPyAnLScgOiAnKycpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlICcgJzoKLSAgICAgICAgc3BlYy0+bl9zaWduID0gMTsKLSAgICAgICAgc3BlYy0+c2lnbiA9IChzaWduX2NoYXIgPT0gJy0nID8gJy0nIDogJyAnKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgLyogTm90IHNwZWNpZmllZCwgb3IgdGhlIGRlZmF1bHQgKC0pICovCi0gICAgICAgIGlmIChzaWduX2NoYXIgPT0gJy0nKSB7Ci0gICAgICAgICAgICBzcGVjLT5uX3NpZ24gPSAxOwotICAgICAgICAgICAgc3BlYy0+c2lnbiA9ICctJzsKLSAgICAgICAgfQotICAgIH0KLQotICAgIC8qIFRoZSBudW1iZXIgb2YgY2hhcnMgdXNlZCBmb3Igbm9uLWRpZ2l0cyBhbmQgbm9uLXBhZGRpbmcuICovCi0gICAgbl9ub25fZGlnaXRfbm9uX3BhZGRpbmcgPSBzcGVjLT5uX3NpZ24gKyBzcGVjLT5uX3ByZWZpeCArIHNwZWMtPm5fZGVjaW1hbCArCi0gICAgICAgIHNwZWMtPm5fcmVtYWluZGVyOwotCi0gICAgLyogbWluX3dpZHRoIGNhbiBnbyBuZWdhdGl2ZSwgdGhhdCdzIG9rYXkuIGZvcm1hdC0+d2lkdGggPT0gLTEgbWVhbnMKLSAgICAgICB3ZSBkb24ndCBjYXJlLiAqLwotICAgIGlmIChmb3JtYXQtPmZpbGxfY2hhciA9PSAnMCcgJiYgZm9ybWF0LT5hbGlnbiA9PSAnPScpCi0gICAgICAgIHNwZWMtPm5fbWluX3dpZHRoID0gZm9ybWF0LT53aWR0aCAtIG5fbm9uX2RpZ2l0X25vbl9wYWRkaW5nOwotICAgIGVsc2UKLSAgICAgICAgc3BlYy0+bl9taW5fd2lkdGggPSAwOwotCi0gICAgaWYgKHNwZWMtPm5fZGlnaXRzID09IDApCi0gICAgICAgIC8qIFRoaXMgY2FzZSBvbmx5IG9jY3VycyB3aGVuIHVzaW5nICdjJyBmb3JtYXR0aW5nLCB3ZSBuZWVkCi0gICAgICAgICAgIHRvIHNwZWNpYWwgY2FzZSBpdCBiZWNhdXNlIHRoZSBncm91cGluZyBjb2RlIGFsd2F5cyB3YW50cwotICAgICAgICAgICB0byBoYXZlIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIuICovCi0gICAgICAgIHNwZWMtPm5fZ3JvdXBlZF9kaWdpdHMgPSAwOwotICAgIGVsc2UKLSAgICAgICAgc3BlYy0+bl9ncm91cGVkX2RpZ2l0cyA9IFNUUklOR0xJQl9HUk9VUElORyhOVUxMLCAwLCBOVUxMLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwZWMtPm5fZGlnaXRzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwZWMtPm5fbWluX3dpZHRoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZS0+Z3JvdXBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlLT50aG91c2FuZHNfc2VwKTsKLQotICAgIC8qIEdpdmVuIHRoZSBkZXNpcmVkIHdpZHRoIGFuZCB0aGUgdG90YWwgb2YgZGlnaXQgYW5kIG5vbi1kaWdpdAotICAgICAgIHNwYWNlIHdlIGNvbnN1bWUsIHNlZSBpZiB3ZSBuZWVkIGFueSBwYWRkaW5nLiBmb3JtYXQtPndpZHRoIGNhbgotICAgICAgIGJlIG5lZ2F0aXZlIChtZWFuaW5nIG5vIHBhZGRpbmcpLCBidXQgdGhpcyBjb2RlIHN0aWxsIHdvcmtzIGluCi0gICAgICAgdGhhdCBjYXNlLiAqLwotICAgIG5fcGFkZGluZyA9IGZvcm1hdC0+d2lkdGggLQotICAgICAgICAgICAgICAgICAgICAgICAgKG5fbm9uX2RpZ2l0X25vbl9wYWRkaW5nICsgc3BlYy0+bl9ncm91cGVkX2RpZ2l0cyk7Ci0gICAgaWYgKG5fcGFkZGluZyA+IDApIHsKLSAgICAgICAgLyogU29tZSBwYWRkaW5nIGlzIG5lZWRlZC4gRGV0ZXJtaW5lIGlmIGl0J3MgbGVmdCwgc3BhY2UsIG9yIHJpZ2h0LiAqLwotICAgICAgICBzd2l0Y2ggKGZvcm1hdC0+YWxpZ24pIHsKLSAgICAgICAgY2FzZSAnPCc6Ci0gICAgICAgICAgICBzcGVjLT5uX3JwYWRkaW5nID0gbl9wYWRkaW5nOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgJ14nOgotICAgICAgICAgICAgc3BlYy0+bl9scGFkZGluZyA9IG5fcGFkZGluZyAvIDI7Ci0gICAgICAgICAgICBzcGVjLT5uX3JwYWRkaW5nID0gbl9wYWRkaW5nIC0gc3BlYy0+bl9scGFkZGluZzsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlICc9JzoKLSAgICAgICAgICAgIHNwZWMtPm5fc3BhZGRpbmcgPSBuX3BhZGRpbmc7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSAnPic6Ci0gICAgICAgICAgICBzcGVjLT5uX2xwYWRkaW5nID0gbl9wYWRkaW5nOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICAvKiBTaG91bGRuJ3QgZ2V0IGhlcmUsIGJ1dCB0cmVhdCBpdCBhcyAnPicgKi8KLSAgICAgICAgICAgIHNwZWMtPm5fbHBhZGRpbmcgPSBuX3BhZGRpbmc7Ci0gICAgICAgICAgICBhc3NlcnQoMCk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgIH0KLSAgICByZXR1cm4gc3BlYy0+bl9scGFkZGluZyArIHNwZWMtPm5fc2lnbiArIHNwZWMtPm5fcHJlZml4ICsKLSAgICAgICAgc3BlYy0+bl9zcGFkZGluZyArIHNwZWMtPm5fZ3JvdXBlZF9kaWdpdHMgKyBzcGVjLT5uX2RlY2ltYWwgKwotICAgICAgICBzcGVjLT5uX3JlbWFpbmRlciArIHNwZWMtPm5fcnBhZGRpbmc7Ci19Ci0KLS8qIEZpbGwgaW4gdGhlIGRpZ2l0IHBhcnRzIG9mIGEgbnVtYmVycydzIHN0cmluZyByZXByZXNlbnRhdGlvbiwKLSAgIGFzIGRldGVybWluZWQgaW4gY2FsY19udW1iZXJfd2lkdGhzKCkuCi0gICBObyBlcnJvciBjaGVja2luZywgc2luY2Ugd2Uga25vdyB0aGUgYnVmZmVyIGlzIHRoZSBjb3JyZWN0IHNpemUuICovCi1zdGF0aWMgdm9pZAotZmlsbF9udW1iZXIoU1RSSU5HTElCX0NIQVIgKmJ1ZiwgY29uc3QgTnVtYmVyRmllbGRXaWR0aHMgKnNwZWMsCi0gICAgICAgICAgICBTVFJJTkdMSUJfQ0hBUiAqZGlnaXRzLCBQeV9zc2l6ZV90IG5fZGlnaXRzLAotICAgICAgICAgICAgU1RSSU5HTElCX0NIQVIgKnByZWZpeCwgU1RSSU5HTElCX0NIQVIgZmlsbF9jaGFyLAotICAgICAgICAgICAgTG9jYWxlSW5mbyAqbG9jYWxlLCBpbnQgdG91cHBlcikKLXsKLSAgICAvKiBVc2VkIHRvIGtlZXAgdHJhY2sgb2YgZGlnaXRzLCBkZWNpbWFsLCBhbmQgcmVtYWluZGVyLiAqLwotICAgIFNUUklOR0xJQl9DSEFSICpwID0gZGlnaXRzOwotCi0jaWZuZGVmIE5ERUJVRwotICAgIFB5X3NzaXplX3QgcjsKLSNlbmRpZgotCi0gICAgaWYgKHNwZWMtPm5fbHBhZGRpbmcpIHsKLSAgICAgICAgU1RSSU5HTElCX0ZJTEwoYnVmLCBmaWxsX2NoYXIsIHNwZWMtPm5fbHBhZGRpbmcpOwotICAgICAgICBidWYgKz0gc3BlYy0+bl9scGFkZGluZzsKLSAgICB9Ci0gICAgaWYgKHNwZWMtPm5fc2lnbiA9PSAxKSB7Ci0gICAgICAgICpidWYrKyA9IHNwZWMtPnNpZ247Ci0gICAgfQotICAgIGlmIChzcGVjLT5uX3ByZWZpeCkgewotICAgICAgICBtZW1tb3ZlKGJ1ZiwKLSAgICAgICAgICAgICAgICBwcmVmaXgsCi0gICAgICAgICAgICAgICAgc3BlYy0+bl9wcmVmaXggKiBzaXplb2YoU1RSSU5HTElCX0NIQVIpKTsKLSAgICAgICAgaWYgKHRvdXBwZXIpIHsKLSAgICAgICAgICAgIFB5X3NzaXplX3QgdDsKLSAgICAgICAgICAgIGZvciAodCA9IDA7IHQgPCBzcGVjLT5uX3ByZWZpeDsgKyt0KQotICAgICAgICAgICAgICAgIGJ1Zlt0XSA9IFNUUklOR0xJQl9UT1VQUEVSKGJ1Zlt0XSk7Ci0gICAgICAgIH0KLSAgICAgICAgYnVmICs9IHNwZWMtPm5fcHJlZml4OwotICAgIH0KLSAgICBpZiAoc3BlYy0+bl9zcGFkZGluZykgewotICAgICAgICBTVFJJTkdMSUJfRklMTChidWYsIGZpbGxfY2hhciwgc3BlYy0+bl9zcGFkZGluZyk7Ci0gICAgICAgIGJ1ZiArPSBzcGVjLT5uX3NwYWRkaW5nOwotICAgIH0KLQotICAgIC8qIE9ubHkgZm9yIHR5cGUgJ2MnIHNwZWNpYWwgY2FzZSwgaXQgaGFzIG5vIGRpZ2l0cy4gKi8KLSAgICBpZiAoc3BlYy0+bl9kaWdpdHMgIT0gMCkgewotICAgICAgICAvKiBGaWxsIHRoZSBkaWdpdHMgd2l0aCBJbnNlcnRUaG91c2FuZHNHcm91cGluZy4gKi8KLSNpZm5kZWYgTkRFQlVHCi0gICAgICAgIHIgPQotI2VuZGlmCi0gICAgICAgICAgICBTVFJJTkdMSUJfR1JPVVBJTkcoYnVmLCBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzLCBkaWdpdHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlYy0+bl9kaWdpdHMsIHNwZWMtPm5fbWluX3dpZHRoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZS0+Z3JvdXBpbmcsIGxvY2FsZS0+dGhvdXNhbmRzX3NlcCk7Ci0jaWZuZGVmIE5ERUJVRwotICAgICAgICBhc3NlcnQociA9PSBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzKTsKLSNlbmRpZgotICAgICAgICBwICs9IHNwZWMtPm5fZGlnaXRzOwotICAgIH0KLSAgICBpZiAodG91cHBlcikgewotICAgICAgICBQeV9zc2l6ZV90IHQ7Ci0gICAgICAgIGZvciAodCA9IDA7IHQgPCBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzOyArK3QpCi0gICAgICAgICAgICBidWZbdF0gPSBTVFJJTkdMSUJfVE9VUFBFUihidWZbdF0pOwotICAgIH0KLSAgICBidWYgKz0gc3BlYy0+bl9ncm91cGVkX2RpZ2l0czsKLQotICAgIGlmIChzcGVjLT5uX2RlY2ltYWwpIHsKLSAgICAgICAgUHlfc3NpemVfdCB0OwotICAgICAgICBmb3IgKHQgPSAwOyB0IDwgc3BlYy0+bl9kZWNpbWFsOyArK3QpCi0gICAgICAgICAgICBidWZbdF0gPSBsb2NhbGUtPmRlY2ltYWxfcG9pbnRbdF07Ci0gICAgICAgIGJ1ZiArPSBzcGVjLT5uX2RlY2ltYWw7Ci0gICAgICAgIHAgKz0gMTsKLSAgICB9Ci0KLSAgICBpZiAoc3BlYy0+bl9yZW1haW5kZXIpIHsKLSAgICAgICAgbWVtY3B5KGJ1ZiwgcCwgc3BlYy0+bl9yZW1haW5kZXIgKiBzaXplb2YoU1RSSU5HTElCX0NIQVIpKTsKLSAgICAgICAgYnVmICs9IHNwZWMtPm5fcmVtYWluZGVyOwotICAgICAgICBwICs9IHNwZWMtPm5fcmVtYWluZGVyOwotICAgIH0KLQotICAgIGlmIChzcGVjLT5uX3JwYWRkaW5nKSB7Ci0gICAgICAgIFNUUklOR0xJQl9GSUxMKGJ1ZiwgZmlsbF9jaGFyLCBzcGVjLT5uX3JwYWRkaW5nKTsKLSAgICAgICAgYnVmICs9IHNwZWMtPm5fcnBhZGRpbmc7Ci0gICAgfQotfQotCi1zdGF0aWMgY2hhciBub19ncm91cGluZ1sxXSA9IHtDSEFSX01BWH07Ci0KLS8qIEZpbmQgdGhlIGRlY2ltYWwgcG9pbnQgY2hhcmFjdGVyKHM/KSwgdGhvdXNhbmRzX3NlcGFyYXRvcihzPyksIGFuZAotICAgZ3JvdXBpbmcgZGVzY3JpcHRpb24sIGVpdGhlciBmb3IgdGhlIGN1cnJlbnQgbG9jYWxlIGlmIHR5cGUgaXMKLSAgIExUX0NVUlJFTlRfTE9DQUxFLCBhIGhhcmQtY29kZWQgbG9jYWxlIGlmIExUX0RFRkFVTFRfTE9DQUxFLCBvcgotICAgbm9uZSBpZiBMVF9OT19MT0NBTEUuICovCi1zdGF0aWMgdm9pZAotZ2V0X2xvY2FsZV9pbmZvKGludCB0eXBlLCBMb2NhbGVJbmZvICpsb2NhbGVfaW5mbykKLXsKLSAgICBzd2l0Y2ggKHR5cGUpIHsKLSAgICBjYXNlIExUX0NVUlJFTlRfTE9DQUxFOiB7Ci0gICAgICAgIHN0cnVjdCBsY29udiAqbG9jYWxlX2RhdGEgPSBsb2NhbGVjb252KCk7Ci0gICAgICAgIGxvY2FsZV9pbmZvLT5kZWNpbWFsX3BvaW50ID0gbG9jYWxlX2RhdGEtPmRlY2ltYWxfcG9pbnQ7Ci0gICAgICAgIGxvY2FsZV9pbmZvLT50aG91c2FuZHNfc2VwID0gbG9jYWxlX2RhdGEtPnRob3VzYW5kc19zZXA7Ci0gICAgICAgIGxvY2FsZV9pbmZvLT5ncm91cGluZyA9IGxvY2FsZV9kYXRhLT5ncm91cGluZzsKLSAgICAgICAgYnJlYWs7Ci0gICAgfQotICAgIGNhc2UgTFRfREVGQVVMVF9MT0NBTEU6Ci0gICAgICAgIGxvY2FsZV9pbmZvLT5kZWNpbWFsX3BvaW50ID0gIi4iOwotICAgICAgICBsb2NhbGVfaW5mby0+dGhvdXNhbmRzX3NlcCA9ICIsIjsKLSAgICAgICAgbG9jYWxlX2luZm8tPmdyb3VwaW5nID0gIlwzIjsgLyogR3JvdXAgZXZlcnkgMyBjaGFyYWN0ZXJzLiAgVGhlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbXBsaWNpdCkgdHJhaWxpbmcgMCBtZWFucyByZXBlYXQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5maW5pdGVseS4gKi8KLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSBMVF9OT19MT0NBTEU6Ci0gICAgICAgIGxvY2FsZV9pbmZvLT5kZWNpbWFsX3BvaW50ID0gIi4iOwotICAgICAgICBsb2NhbGVfaW5mby0+dGhvdXNhbmRzX3NlcCA9ICIiOwotICAgICAgICBsb2NhbGVfaW5mby0+Z3JvdXBpbmcgPSBub19ncm91cGluZzsKLSAgICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgICAgYXNzZXJ0KDApOwotICAgIH0KLX0KLQotI2VuZGlmIC8qIEZPUk1BVF9GTE9BVCB8fCBGT1JNQVRfTE9ORyB8fCBGT1JNQVRfQ09NUExFWCAqLwotCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyoqKioqKioqKioqIHN0cmluZyBmb3JtYXR0aW5nICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0KLXN0YXRpYyBQeU9iamVjdCAqCi1mb3JtYXRfc3RyaW5nX2ludGVybmFsKFB5T2JqZWN0ICp2YWx1ZSwgY29uc3QgSW50ZXJuYWxGb3JtYXRTcGVjICpmb3JtYXQpCi17Ci0gICAgUHlfc3NpemVfdCBscGFkOwotICAgIFB5X3NzaXplX3QgcnBhZDsKLSAgICBQeV9zc2l6ZV90IHRvdGFsOwotICAgIFNUUklOR0xJQl9DSEFSICpwOwotICAgIFB5X3NzaXplX3QgbGVuID0gU1RSSU5HTElCX0xFTih2YWx1ZSk7Ci0gICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7Ci0KLSAgICAvKiBzaWduIGlzIG5vdCBhbGxvd2VkIG9uIHN0cmluZ3MgKi8KLSAgICBpZiAoZm9ybWF0LT5zaWduICE9ICdcMCcpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiU2lnbiBub3QgYWxsb3dlZCBpbiBzdHJpbmcgZm9ybWF0IHNwZWNpZmllciIpOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotCi0gICAgLyogYWx0ZXJuYXRlIGlzIG5vdCBhbGxvd2VkIG9uIHN0cmluZ3MgKi8KLSAgICBpZiAoZm9ybWF0LT5hbHRlcm5hdGUpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiQWx0ZXJuYXRlIGZvcm0gKCMpIG5vdCBhbGxvd2VkIGluIHN0cmluZyBmb3JtYXQgIgotICAgICAgICAgICAgICAgICAgICAgICAgInNwZWNpZmllciIpOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotCi0gICAgLyogJz0nIGFsaWdubWVudCBub3QgYWxsb3dlZCBvbiBzdHJpbmdzICovCi0gICAgaWYgKGZvcm1hdC0+YWxpZ24gPT0gJz0nKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgIic9JyBhbGlnbm1lbnQgbm90IGFsbG93ZWQgIgotICAgICAgICAgICAgICAgICAgICAgICAgImluIHN0cmluZyBmb3JtYXQgc3BlY2lmaWVyIik7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0KLSAgICAvKiBpZiBwcmVjaXNpb24gaXMgc3BlY2lmaWVkLCBvdXRwdXQgbm8gbW9yZSB0aGF0IGZvcm1hdC5wcmVjaXNpb24KLSAgICAgICBjaGFyYWN0ZXJzICovCi0gICAgaWYgKGZvcm1hdC0+cHJlY2lzaW9uID49IDAgJiYgbGVuID49IGZvcm1hdC0+cHJlY2lzaW9uKSB7Ci0gICAgICAgIGxlbiA9IGZvcm1hdC0+cHJlY2lzaW9uOwotICAgIH0KLQotICAgIGNhbGNfcGFkZGluZyhsZW4sIGZvcm1hdC0+d2lkdGgsIGZvcm1hdC0+YWxpZ24sICZscGFkLCAmcnBhZCwgJnRvdGFsKTsKLQotICAgIC8qIGFsbG9jYXRlIHRoZSByZXN1bHRpbmcgc3RyaW5nICovCi0gICAgcmVzdWx0ID0gU1RSSU5HTElCX05FVyhOVUxMLCB0b3RhbCk7Ci0gICAgaWYgKHJlc3VsdCA9PSBOVUxMKQotICAgICAgICBnb3RvIGRvbmU7Ci0KLSAgICAvKiBXcml0ZSBpbnRvIHRoYXQgc3BhY2UuIEZpcnN0IHRoZSBwYWRkaW5nLiAqLwotICAgIHAgPSBmaWxsX3BhZGRpbmcoU1RSSU5HTElCX1NUUihyZXN1bHQpLCBsZW4sCi0gICAgICAgICAgICAgICAgICAgICBmb3JtYXQtPmZpbGxfY2hhcj09J1wwJz8nICc6Zm9ybWF0LT5maWxsX2NoYXIsCi0gICAgICAgICAgICAgICAgICAgICBscGFkLCBycGFkKTsKLQotICAgIC8qIFRoZW4gdGhlIHNvdXJjZSBzdHJpbmcuICovCi0gICAgbWVtY3B5KHAsIFNUUklOR0xJQl9TVFIodmFsdWUpLCBsZW4gKiBzaXplb2YoU1RSSU5HTElCX0NIQVIpKTsKLQotZG9uZToKLSAgICByZXR1cm4gcmVzdWx0OwotfQotCi0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKioqKioqKioqKiogbG9uZyBmb3JtYXR0aW5nICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQotI2lmIGRlZmluZWQgRk9STUFUX0xPTkcgfHwgZGVmaW5lZCBGT1JNQVRfSU5UCi10eXBlZGVmIFB5T2JqZWN0KgotKCpJbnRPckxvbmdUb1N0cmluZykoUHlPYmplY3QgKnZhbHVlLCBpbnQgYmFzZSk7Ci0KLXN0YXRpYyBQeU9iamVjdCAqCi1mb3JtYXRfaW50X29yX2xvbmdfaW50ZXJuYWwoUHlPYmplY3QgKnZhbHVlLCBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbnRPckxvbmdUb1N0cmluZyB0b3N0cmluZykKLXsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBQeU9iamVjdCAqdG1wID0gTlVMTDsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqcG51bWVyaWNfY2hhcnM7Ci0gICAgU1RSSU5HTElCX0NIQVIgbnVtZXJpY19jaGFyOwotICAgIFNUUklOR0xJQl9DSEFSIHNpZ25fY2hhciA9ICdcMCc7Ci0gICAgUHlfc3NpemVfdCBuX2RpZ2l0czsgICAgICAgLyogY291bnQgb2YgZGlnaXRzIG5lZWQgZnJvbSB0aGUgY29tcHV0ZWQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcgKi8KLSAgICBQeV9zc2l6ZV90IG5fcmVtYWluZGVyID0gMDsgLyogVXNlZCBvbmx5IGZvciAnYycgZm9ybWF0dGluZywgd2hpY2gKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvZHVjZXMgbm9uLWRpZ2l0cyAqLwotICAgIFB5X3NzaXplX3Qgbl9wcmVmaXggPSAwOyAgIC8qIENvdW50IG9mIHByZWZpeCBjaGFycywgKGUuZy4sICcweCcpICovCi0gICAgUHlfc3NpemVfdCBuX3RvdGFsOwotICAgIFNUUklOR0xJQl9DSEFSICpwcmVmaXggPSBOVUxMOwotICAgIE51bWJlckZpZWxkV2lkdGhzIHNwZWM7Ci0gICAgbG9uZyB4OwotCi0gICAgLyogTG9jYWxlIHNldHRpbmdzLCBlaXRoZXIgZnJvbSB0aGUgYWN0dWFsIGxvY2FsZSBvcgotICAgICAgIGZyb20gYSBoYXJkLWNvZGUgcHNldWRvLWxvY2FsZSAqLwotICAgIExvY2FsZUluZm8gbG9jYWxlOwotCi0gICAgLyogbm8gcHJlY2lzaW9uIGFsbG93ZWQgb24gaW50ZWdlcnMgKi8KLSAgICBpZiAoZm9ybWF0LT5wcmVjaXNpb24gIT0gLTEpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiUHJlY2lzaW9uIG5vdCBhbGxvd2VkIGluIGludGVnZXIgZm9ybWF0IHNwZWNpZmllciIpOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotCi0gICAgLyogc3BlY2lhbCBjYXNlIGZvciBjaGFyYWN0ZXIgZm9ybWF0dGluZyAqLwotICAgIGlmIChmb3JtYXQtPnR5cGUgPT0gJ2MnKSB7Ci0gICAgICAgIC8qIGVycm9yIHRvIHNwZWNpZnkgYSBzaWduICovCi0gICAgICAgIGlmIChmb3JtYXQtPnNpZ24gIT0gJ1wwJykgewotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIlNpZ24gbm90IGFsbG93ZWQgd2l0aCBpbnRlZ2VyIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgZm9ybWF0IHNwZWNpZmllciAnYyciKTsKLSAgICAgICAgICAgIGdvdG8gZG9uZTsKLSAgICAgICAgfQotCi0gICAgICAgIC8qIHRha2VuIGZyb20gdW5pY29kZW9iamVjdC5jIGZvcm1hdGNoYXIoKSAqLwotICAgICAgICAvKiBJbnRlZ2VyIGlucHV0IHRydW5jYXRlZCB0byBhIGNoYXJhY3RlciAqLwotLyogWFhYOiB3b24ndCB3b3JrIGZvciBpbnQgKi8KLSAgICAgICAgeCA9IFB5TG9uZ19Bc0xvbmcodmFsdWUpOwotICAgICAgICBpZiAoeCA9PSAtMSAmJiBQeUVycl9PY2N1cnJlZCgpKQotICAgICAgICAgICAgZ290byBkb25lOwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICBpZiAoeCA8IDAgfHwgeCA+IDB4MTBmZmZmKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJWMgYXJnIG5vdCBpbiByYW5nZSgweDExMDAwMCkgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICIod2lkZSBQeXRob24gYnVpbGQpIik7Ci0gICAgICAgICAgICBnb3RvIGRvbmU7Ci0gICAgICAgIH0KLSNlbHNlCi0gICAgICAgIGlmICh4IDwgMCB8fCB4ID4gMHhmZmZmKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJWMgYXJnIG5vdCBpbiByYW5nZSgweDEwMDAwKSAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIihuYXJyb3cgUHl0aG9uIGJ1aWxkKSIpOwotICAgICAgICAgICAgZ290byBkb25lOwotICAgICAgICB9Ci0jZW5kaWYKLSAgICAgICAgbnVtZXJpY19jaGFyID0gKFNUUklOR0xJQl9DSEFSKXg7Ci0gICAgICAgIHBudW1lcmljX2NoYXJzID0gJm51bWVyaWNfY2hhcjsKLSAgICAgICAgbl9kaWdpdHMgPSAxOwotCi0gICAgICAgIC8qIEFzIGEgc29ydC1vZiBoYWNrLCB3ZSB0ZWxsIGNhbGNfbnVtYmVyX3dpZHRocyB0aGF0IHdlIG9ubHkKLSAgICAgICAgICAgaGF2ZSAicmVtYWluZGVyIiBjaGFyYWN0ZXJzLiBjYWxjX251bWJlcl93aWR0aHMgdGhpbmtzCi0gICAgICAgICAgIHRoZXNlIGFyZSBjaGFyYWN0ZXJzIHRoYXQgZG9uJ3QgZ2V0IGZvcm1hdHRlZCwgb25seSBjb3BpZWQKLSAgICAgICAgICAgaW50byB0aGUgb3V0cHV0IHN0cmluZy4gV2UgZG8gdGhpcyBmb3IgJ2MnIGZvcm1hdHRpbmcsCi0gICAgICAgICAgIGJlY2F1c2UgdGhlIGNoYXJhY3RlcnMgYXJlIGxpa2VseSB0byBiZSBub24tZGlnaXRzLiAqLwotICAgICAgICBuX3JlbWFpbmRlciA9IDE7Ci0gICAgfQotICAgIGVsc2UgewotICAgICAgICBpbnQgYmFzZTsKLSAgICAgICAgaW50IGxlYWRpbmdfY2hhcnNfdG9fc2tpcCA9IDA7ICAvKiBOdW1iZXIgb2YgY2hhcmFjdGVycyBhZGRlZCBieQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5TnVtYmVyX1RvQmFzZSB0aGF0IHdlIHdhbnQgdG8KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBza2lwIG92ZXIuICovCi0KLSAgICAgICAgLyogQ29tcHV0ZSB0aGUgYmFzZSBhbmQgaG93IG1hbnkgY2hhcmFjdGVycyB3aWxsIGJlIGFkZGVkIGJ5Ci0gICAgICAgICAgIFB5TnVtYmVyX1RvQmFzZSAqLwotICAgICAgICBzd2l0Y2ggKGZvcm1hdC0+dHlwZSkgewotICAgICAgICBjYXNlICdiJzoKLSAgICAgICAgICAgIGJhc2UgPSAyOwotICAgICAgICAgICAgbGVhZGluZ19jaGFyc190b19za2lwID0gMjsgLyogMGIgKi8KLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlICdvJzoKLSAgICAgICAgICAgIGJhc2UgPSA4OwotICAgICAgICAgICAgbGVhZGluZ19jaGFyc190b19za2lwID0gMjsgLyogMG8gKi8KLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlICd4JzoKLSAgICAgICAgY2FzZSAnWCc6Ci0gICAgICAgICAgICBiYXNlID0gMTY7Ci0gICAgICAgICAgICBsZWFkaW5nX2NoYXJzX3RvX3NraXAgPSAyOyAvKiAweCAqLwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGRlZmF1bHQ6ICAvKiBzaG91bGRuJ3QgYmUgbmVlZGVkLCBidXQgc3RvcHMgYSBjb21waWxlciB3YXJuaW5nICovCi0gICAgICAgIGNhc2UgJ2QnOgotICAgICAgICBjYXNlICduJzoKLSAgICAgICAgICAgIGJhc2UgPSAxMDsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0KLSAgICAgICAgLyogVGhlIG51bWJlciBvZiBwcmVmaXggY2hhcnMgaXMgdGhlIHNhbWUgYXMgdGhlIGxlYWRpbmcKLSAgICAgICAgICAgY2hhcnMgdG8gc2tpcCAqLwotICAgICAgICBpZiAoZm9ybWF0LT5hbHRlcm5hdGUpCi0gICAgICAgICAgICBuX3ByZWZpeCA9IGxlYWRpbmdfY2hhcnNfdG9fc2tpcDsKLQotICAgICAgICAvKiBEbyB0aGUgaGFyZCBwYXJ0LCBjb252ZXJ0aW5nIHRvIGEgc3RyaW5nIGluIGEgZ2l2ZW4gYmFzZSAqLwotICAgICAgICB0bXAgPSB0b3N0cmluZyh2YWx1ZSwgYmFzZSk7Ci0gICAgICAgIGlmICh0bXAgPT0gTlVMTCkKLSAgICAgICAgICAgIGdvdG8gZG9uZTsKLQotICAgICAgICBwbnVtZXJpY19jaGFycyA9IFNUUklOR0xJQl9TVFIodG1wKTsKLSAgICAgICAgbl9kaWdpdHMgPSBTVFJJTkdMSUJfTEVOKHRtcCk7Ci0KLSAgICAgICAgcHJlZml4ID0gcG51bWVyaWNfY2hhcnM7Ci0KLSAgICAgICAgLyogUmVtZW1iZXIgbm90IHRvIG1vZGlmeSB3aGF0IHBudW1lcmljX2NoYXJzIHBvaW50cyB0by4gIGl0Ci0gICAgICAgICAgIG1pZ2h0IGJlIGludGVybmVkLiAgT25seSBtb2RpZnkgaXQgYWZ0ZXIgd2UgY29weSBpdCBpbnRvIGEKLSAgICAgICAgICAgbmV3bHkgYWxsb2NhdGVkIG91dHB1dCBidWZmZXIuICovCi0KLSAgICAgICAgLyogSXMgYSBzaWduIGNoYXJhY3RlciBwcmVzZW50IGluIHRoZSBvdXRwdXQ/ICBJZiBzbywgcmVtZW1iZXIgaXQKLSAgICAgICAgICAgYW5kIHNraXAgaXQgKi8KLSAgICAgICAgaWYgKHBudW1lcmljX2NoYXJzWzBdID09ICctJykgewotICAgICAgICAgICAgc2lnbl9jaGFyID0gcG51bWVyaWNfY2hhcnNbMF07Ci0gICAgICAgICAgICArK3ByZWZpeDsKLSAgICAgICAgICAgICsrbGVhZGluZ19jaGFyc190b19za2lwOwotICAgICAgICB9Ci0KLSAgICAgICAgLyogU2tpcCBvdmVyIHRoZSBsZWFkaW5nIGNoYXJzICgweCwgMGIsIGV0Yy4pICovCi0gICAgICAgIG5fZGlnaXRzIC09IGxlYWRpbmdfY2hhcnNfdG9fc2tpcDsKLSAgICAgICAgcG51bWVyaWNfY2hhcnMgKz0gbGVhZGluZ19jaGFyc190b19za2lwOwotICAgIH0KLQotICAgIC8qIERldGVybWluZSB0aGUgZ3JvdXBpbmcsIHNlcGFyYXRvciwgYW5kIGRlY2ltYWwgcG9pbnQsIGlmIGFueS4gKi8KLSAgICBnZXRfbG9jYWxlX2luZm8oZm9ybWF0LT50eXBlID09ICduJyA/IExUX0NVUlJFTlRfTE9DQUxFIDoKLSAgICAgICAgICAgICAgICAgICAgKGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMgPwotICAgICAgICAgICAgICAgICAgICAgTFRfREVGQVVMVF9MT0NBTEUgOgotICAgICAgICAgICAgICAgICAgICAgTFRfTk9fTE9DQUxFKSwKLSAgICAgICAgICAgICAgICAgICAgJmxvY2FsZSk7Ci0KLSAgICAvKiBDYWxjdWxhdGUgaG93IG11Y2ggbWVtb3J5IHdlJ2xsIG5lZWQuICovCi0gICAgbl90b3RhbCA9IGNhbGNfbnVtYmVyX3dpZHRocygmc3BlYywgbl9wcmVmaXgsIHNpZ25fY2hhciwgcG51bWVyaWNfY2hhcnMsCi0gICAgICAgICAgICAgICAgICAgICAgIG5fZGlnaXRzLCBuX3JlbWFpbmRlciwgMCwgJmxvY2FsZSwgZm9ybWF0KTsKLQotICAgIC8qIEFsbG9jYXRlIHRoZSBtZW1vcnkuICovCi0gICAgcmVzdWx0ID0gU1RSSU5HTElCX05FVyhOVUxMLCBuX3RvdGFsKTsKLSAgICBpZiAoIXJlc3VsdCkKLSAgICAgICAgZ290byBkb25lOwotCi0gICAgLyogUG9wdWxhdGUgdGhlIG1lbW9yeS4gKi8KLSAgICBmaWxsX251bWJlcihTVFJJTkdMSUJfU1RSKHJlc3VsdCksICZzcGVjLCBwbnVtZXJpY19jaGFycywgbl9kaWdpdHMsCi0gICAgICAgICAgICAgICAgcHJlZml4LCBmb3JtYXQtPmZpbGxfY2hhciA9PSAnXDAnID8gJyAnIDogZm9ybWF0LT5maWxsX2NoYXIsCi0gICAgICAgICAgICAgICAgJmxvY2FsZSwgZm9ybWF0LT50eXBlID09ICdYJyk7Ci0KLWRvbmU6Ci0gICAgUHlfWERFQ1JFRih0bXApOwotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0jZW5kaWYgLyogZGVmaW5lZCBGT1JNQVRfTE9ORyB8fCBkZWZpbmVkIEZPUk1BVF9JTlQgKi8KLQotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qKioqKioqKioqKiBmbG9hdCBmb3JtYXR0aW5nICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotCi0jaWZkZWYgRk9STUFUX0ZMT0FUCi0jaWYgU1RSSU5HTElCX0lTX1VOSUNPREUKLXN0YXRpYyB2b2lkCi1zdHJ0b3VuaWNvZGUoUHlfVU5JQ09ERSAqYnVmZmVyLCBjb25zdCBjaGFyICpjaGFyYnVmZmVyLCBQeV9zc2l6ZV90IGxlbikKLXsKLSAgICBQeV9zc2l6ZV90IGk7Ci0gICAgZm9yIChpID0gMDsgaSA8IGxlbjsgKytpKQotICAgICAgICBidWZmZXJbaV0gPSAoUHlfVU5JQ09ERSljaGFyYnVmZmVyW2ldOwotfQotI2VuZGlmCi0KLS8qIG11Y2ggb2YgdGhpcyBpcyB0YWtlbiBmcm9tIHVuaWNvZGVvYmplY3QuYyAqLwotc3RhdGljIFB5T2JqZWN0ICoKLWZvcm1hdF9mbG9hdF9pbnRlcm5hbChQeU9iamVjdCAqdmFsdWUsCi0gICAgICAgICAgICAgICAgICAgICAgY29uc3QgSW50ZXJuYWxGb3JtYXRTcGVjICpmb3JtYXQpCi17Ci0gICAgY2hhciAqYnVmID0gTlVMTDsgICAgICAgLyogYnVmZmVyIHJldHVybmVkIGZyb20gUHlPU19kb3VibGVfdG9fc3RyaW5nICovCi0gICAgUHlfc3NpemVfdCBuX2RpZ2l0czsKLSAgICBQeV9zc2l6ZV90IG5fcmVtYWluZGVyOwotICAgIFB5X3NzaXplX3Qgbl90b3RhbDsKLSAgICBpbnQgaGFzX2RlY2ltYWw7Ci0gICAgZG91YmxlIHZhbDsKLSAgICBQeV9zc2l6ZV90IHByZWNpc2lvbiA9IGZvcm1hdC0+cHJlY2lzaW9uOwotICAgIFB5X3NzaXplX3QgZGVmYXVsdF9wcmVjaXNpb24gPSA2OwotICAgIFNUUklOR0xJQl9DSEFSIHR5cGUgPSBmb3JtYXQtPnR5cGU7Ci0gICAgaW50IGFkZF9wY3QgPSAwOwotICAgIFNUUklOR0xJQl9DSEFSICpwOwotICAgIE51bWJlckZpZWxkV2lkdGhzIHNwZWM7Ci0gICAgaW50IGZsYWdzID0gMDsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBTVFJJTkdMSUJfQ0hBUiBzaWduX2NoYXIgPSAnXDAnOwotICAgIGludCBmbG9hdF90eXBlOyAvKiBVc2VkIHRvIHNlZSBpZiB3ZSBoYXZlIGEgbmFuLCBpbmYsIG9yIHJlZ3VsYXIgZmxvYXQuICovCi0KLSNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQotICAgIFB5X1VOSUNPREUgKnVuaWNvZGVfdG1wID0gTlVMTDsKLSNlbmRpZgotCi0gICAgLyogTG9jYWxlIHNldHRpbmdzLCBlaXRoZXIgZnJvbSB0aGUgYWN0dWFsIGxvY2FsZSBvcgotICAgICAgIGZyb20gYSBoYXJkLWNvZGUgcHNldWRvLWxvY2FsZSAqLwotICAgIExvY2FsZUluZm8gbG9jYWxlOwotCi0gICAgaWYgKGZvcm1hdC0+YWx0ZXJuYXRlKQotICAgICAgICBmbGFncyB8PSBQeV9EVFNGX0FMVDsKLQotICAgIGlmICh0eXBlID09ICdcMCcpIHsKLSAgICAgICAgLyogT21pdHRlZCB0eXBlIHNwZWNpZmllci4gIEJlaGF2ZXMgaW4gdGhlIHNhbWUgd2F5IGFzIHJlcHIoeCkKLSAgICAgICAgICAgYW5kIHN0cih4KSBpZiBubyBwcmVjaXNpb24gaXMgZ2l2ZW4sIGVsc2UgbGlrZSAnZycsIGJ1dCB3aXRoCi0gICAgICAgICAgIGF0IGxlYXN0IG9uZSBkaWdpdCBhZnRlciB0aGUgZGVjaW1hbCBwb2ludC4gKi8KLSAgICAgICAgZmxhZ3MgfD0gUHlfRFRTRl9BRERfRE9UXzA7Ci0gICAgICAgIHR5cGUgPSAncic7Ci0gICAgICAgIGRlZmF1bHRfcHJlY2lzaW9uID0gMDsKLSAgICB9Ci0KLSAgICBpZiAodHlwZSA9PSAnbicpCi0gICAgICAgIC8qICduJyBpcyB0aGUgc2FtZSBhcyAnZycsIGV4Y2VwdCBmb3IgdGhlIGxvY2FsZSB1c2VkIHRvCi0gICAgICAgICAgIGZvcm1hdCB0aGUgcmVzdWx0LiBXZSB0YWtlIGNhcmUgb2YgdGhhdCBsYXRlci4gKi8KLSAgICAgICAgdHlwZSA9ICdnJzsKLQotICAgIHZhbCA9IFB5RmxvYXRfQXNEb3VibGUodmFsdWUpOwotICAgIGlmICh2YWwgPT0gLTEuMCAmJiBQeUVycl9PY2N1cnJlZCgpKQotICAgICAgICBnb3RvIGRvbmU7Ci0KLSAgICBpZiAodHlwZSA9PSAnJScpIHsKLSAgICAgICAgdHlwZSA9ICdmJzsKLSAgICAgICAgdmFsICo9IDEwMDsKLSAgICAgICAgYWRkX3BjdCA9IDE7Ci0gICAgfQotCi0gICAgaWYgKHByZWNpc2lvbiA8IDApCi0gICAgICAgIHByZWNpc2lvbiA9IGRlZmF1bHRfcHJlY2lzaW9uOwotICAgIGVsc2UgaWYgKHR5cGUgPT0gJ3InKQotICAgICAgICB0eXBlID0gJ2cnOwotCi0gICAgLyogQ2FzdCAidHlwZSIsIGJlY2F1c2UgaWYgd2UncmUgaW4gdW5pY29kZSB3ZSBuZWVkIHRvIHBhc3MgYQotICAgICAgIDgtYml0IGNoYXIuIFRoaXMgaXMgc2FmZSwgYmVjYXVzZSB3ZSd2ZSByZXN0cmljdGVkIHdoYXQgInR5cGUiCi0gICAgICAgY2FuIGJlLiAqLwotICAgIGJ1ZiA9IFB5T1NfZG91YmxlX3RvX3N0cmluZyh2YWwsIChjaGFyKXR5cGUsIHByZWNpc2lvbiwgZmxhZ3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmbG9hdF90eXBlKTsKLSAgICBpZiAoYnVmID09IE5VTEwpCi0gICAgICAgIGdvdG8gZG9uZTsKLSAgICBuX2RpZ2l0cyA9IHN0cmxlbihidWYpOwotCi0gICAgaWYgKGFkZF9wY3QpIHsKLSAgICAgICAgLyogV2Uga25vdyB0aGF0IGJ1ZiBoYXMgYSB0cmFpbGluZyB6ZXJvIChzaW5jZSB3ZSBqdXN0IGNhbGxlZAotICAgICAgICAgICBzdHJsZW4oKSBvbiBpdCksIGFuZCB3ZSBkb24ndCB1c2UgdGhhdCBmYWN0IGFueSBtb3JlLiBTbyB3ZQotICAgICAgICAgICBjYW4ganVzdCB3cml0ZSBvdmVyIHRoZSB0cmFpbGluZyB6ZXJvLiAqLwotICAgICAgICBidWZbbl9kaWdpdHNdID0gJyUnOwotICAgICAgICBuX2RpZ2l0cyArPSAxOwotICAgIH0KLQotICAgIC8qIFNpbmNlIHRoZXJlIGlzIG5vIHVuaWNvZGUgdmVyc2lvbiBvZiBQeU9TX2RvdWJsZV90b19zdHJpbmcsCi0gICAgICAganVzdCB1c2UgdGhlIDggYml0IHZlcnNpb24gYW5kIHRoZW4gY29udmVydCB0byB1bmljb2RlLiAqLwotI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCi0gICAgdW5pY29kZV90bXAgPSAoUHlfVU5JQ09ERSopUHlNZW1fTWFsbG9jKChuX2RpZ2l0cykqc2l6ZW9mKFB5X1VOSUNPREUpKTsKLSAgICBpZiAodW5pY29kZV90bXAgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotICAgIHN0cnRvdW5pY29kZSh1bmljb2RlX3RtcCwgYnVmLCBuX2RpZ2l0cyk7Ci0gICAgcCA9IHVuaWNvZGVfdG1wOwotI2Vsc2UKLSAgICBwID0gYnVmOwotI2VuZGlmCi0KLSAgICAvKiBJcyBhIHNpZ24gY2hhcmFjdGVyIHByZXNlbnQgaW4gdGhlIG91dHB1dD8gIElmIHNvLCByZW1lbWJlciBpdAotICAgICAgIGFuZCBza2lwIGl0ICovCi0gICAgaWYgKCpwID09ICctJykgewotICAgICAgICBzaWduX2NoYXIgPSAqcDsKLSAgICAgICAgKytwOwotICAgICAgICAtLW5fZGlnaXRzOwotICAgIH0KLQotICAgIC8qIERldGVybWluZSBpZiB3ZSBoYXZlIGFueSAicmVtYWluZGVyIiAoYWZ0ZXIgdGhlIGRpZ2l0cywgbWlnaHQgaW5jbHVkZQotICAgICAgIGRlY2ltYWwgb3IgZXhwb25lbnQgb3IgYm90aCAob3IgbmVpdGhlcikpICovCi0gICAgcGFyc2VfbnVtYmVyKHAsIG5fZGlnaXRzLCAmbl9yZW1haW5kZXIsICZoYXNfZGVjaW1hbCk7Ci0KLSAgICAvKiBEZXRlcm1pbmUgdGhlIGdyb3VwaW5nLCBzZXBhcmF0b3IsIGFuZCBkZWNpbWFsIHBvaW50LCBpZiBhbnkuICovCi0gICAgZ2V0X2xvY2FsZV9pbmZvKGZvcm1hdC0+dHlwZSA9PSAnbicgPyBMVF9DVVJSRU5UX0xPQ0FMRSA6Ci0gICAgICAgICAgICAgICAgICAgIChmb3JtYXQtPnRob3VzYW5kc19zZXBhcmF0b3JzID8KLSAgICAgICAgICAgICAgICAgICAgIExUX0RFRkFVTFRfTE9DQUxFIDoKLSAgICAgICAgICAgICAgICAgICAgIExUX05PX0xPQ0FMRSksCi0gICAgICAgICAgICAgICAgICAgICZsb2NhbGUpOwotCi0gICAgLyogQ2FsY3VsYXRlIGhvdyBtdWNoIG1lbW9yeSB3ZSdsbCBuZWVkLiAqLwotICAgIG5fdG90YWwgPSBjYWxjX251bWJlcl93aWR0aHMoJnNwZWMsIDAsIHNpZ25fY2hhciwgcCwgbl9kaWdpdHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuX3JlbWFpbmRlciwgaGFzX2RlY2ltYWwsICZsb2NhbGUsIGZvcm1hdCk7Ci0KLSAgICAvKiBBbGxvY2F0ZSB0aGUgbWVtb3J5LiAqLwotICAgIHJlc3VsdCA9IFNUUklOR0xJQl9ORVcoTlVMTCwgbl90b3RhbCk7Ci0gICAgaWYgKHJlc3VsdCA9PSBOVUxMKQotICAgICAgICBnb3RvIGRvbmU7Ci0KLSAgICAvKiBQb3B1bGF0ZSB0aGUgbWVtb3J5LiAqLwotICAgIGZpbGxfbnVtYmVyKFNUUklOR0xJQl9TVFIocmVzdWx0KSwgJnNwZWMsIHAsIG5fZGlnaXRzLCBOVUxMLAotICAgICAgICAgICAgICAgIGZvcm1hdC0+ZmlsbF9jaGFyID09ICdcMCcgPyAnICcgOiBmb3JtYXQtPmZpbGxfY2hhciwgJmxvY2FsZSwKLSAgICAgICAgICAgICAgICAwKTsKLQotZG9uZToKLSAgICBQeU1lbV9GcmVlKGJ1Zik7Ci0jaWYgU1RSSU5HTElCX0lTX1VOSUNPREUKLSAgICBQeU1lbV9GcmVlKHVuaWNvZGVfdG1wKTsKLSNlbmRpZgotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0jZW5kaWYgLyogRk9STUFUX0ZMT0FUICovCi0KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKioqKioqKioqKiogY29tcGxleCBmb3JtYXR0aW5nICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLQotI2lmZGVmIEZPUk1BVF9DT01QTEVYCi0KLXN0YXRpYyBQeU9iamVjdCAqCi1mb3JtYXRfY29tcGxleF9pbnRlcm5hbChQeU9iamVjdCAqdmFsdWUsCi0gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKLXsKLSAgICBkb3VibGUgcmU7Ci0gICAgZG91YmxlIGltOwotICAgIGNoYXIgKnJlX2J1ZiA9IE5VTEw7ICAgICAgIC8qIGJ1ZmZlciByZXR1cm5lZCBmcm9tIFB5T1NfZG91YmxlX3RvX3N0cmluZyAqLwotICAgIGNoYXIgKmltX2J1ZiA9IE5VTEw7ICAgICAgIC8qIGJ1ZmZlciByZXR1cm5lZCBmcm9tIFB5T1NfZG91YmxlX3RvX3N0cmluZyAqLwotCi0gICAgSW50ZXJuYWxGb3JtYXRTcGVjIHRtcF9mb3JtYXQgPSAqZm9ybWF0OwotICAgIFB5X3NzaXplX3Qgbl9yZV9kaWdpdHM7Ci0gICAgUHlfc3NpemVfdCBuX2ltX2RpZ2l0czsKLSAgICBQeV9zc2l6ZV90IG5fcmVfcmVtYWluZGVyOwotICAgIFB5X3NzaXplX3Qgbl9pbV9yZW1haW5kZXI7Ci0gICAgUHlfc3NpemVfdCBuX3JlX3RvdGFsOwotICAgIFB5X3NzaXplX3Qgbl9pbV90b3RhbDsKLSAgICBpbnQgcmVfaGFzX2RlY2ltYWw7Ci0gICAgaW50IGltX2hhc19kZWNpbWFsOwotICAgIFB5X3NzaXplX3QgcHJlY2lzaW9uID0gZm9ybWF0LT5wcmVjaXNpb247Ci0gICAgUHlfc3NpemVfdCBkZWZhdWx0X3ByZWNpc2lvbiA9IDY7Ci0gICAgU1RSSU5HTElCX0NIQVIgdHlwZSA9IGZvcm1hdC0+dHlwZTsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqcF9yZTsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqcF9pbTsKLSAgICBOdW1iZXJGaWVsZFdpZHRocyByZV9zcGVjOwotICAgIE51bWJlckZpZWxkV2lkdGhzIGltX3NwZWM7Ci0gICAgaW50IGZsYWdzID0gMDsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqcDsKLSAgICBTVFJJTkdMSUJfQ0hBUiByZV9zaWduX2NoYXIgPSAnXDAnOwotICAgIFNUUklOR0xJQl9DSEFSIGltX3NpZ25fY2hhciA9ICdcMCc7Ci0gICAgaW50IHJlX2Zsb2F0X3R5cGU7IC8qIFVzZWQgdG8gc2VlIGlmIHdlIGhhdmUgYSBuYW4sIGluZiwgb3IgcmVndWxhciBmbG9hdC4gKi8KLSAgICBpbnQgaW1fZmxvYXRfdHlwZTsKLSAgICBpbnQgYWRkX3BhcmVucyA9IDA7Ci0gICAgaW50IHNraXBfcmUgPSAwOwotICAgIFB5X3NzaXplX3QgbHBhZDsKLSAgICBQeV9zc2l6ZV90IHJwYWQ7Ci0gICAgUHlfc3NpemVfdCB0b3RhbDsKLQotI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCi0gICAgUHlfVU5JQ09ERSAqcmVfdW5pY29kZV90bXAgPSBOVUxMOwotICAgIFB5X1VOSUNPREUgKmltX3VuaWNvZGVfdG1wID0gTlVMTDsKLSNlbmRpZgotCi0gICAgLyogTG9jYWxlIHNldHRpbmdzLCBlaXRoZXIgZnJvbSB0aGUgYWN0dWFsIGxvY2FsZSBvcgotICAgICAgIGZyb20gYSBoYXJkLWNvZGUgcHNldWRvLWxvY2FsZSAqLwotICAgIExvY2FsZUluZm8gbG9jYWxlOwotCi0gICAgLyogWmVybyBwYWRkaW5nIGlzIG5vdCBhbGxvd2VkLiAqLwotICAgIGlmIChmb3JtYXQtPmZpbGxfY2hhciA9PSAnMCcpIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAiWmVybyBwYWRkaW5nIGlzIG5vdCBhbGxvd2VkIGluIGNvbXBsZXggZm9ybWF0ICIKLSAgICAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZXIiKTsKLSAgICAgICAgZ290byBkb25lOwotICAgIH0KLQotICAgIC8qIE5laXRoZXIgaXMgJz0nIGFsaWdubWVudCAuICovCi0gICAgaWYgKGZvcm1hdC0+YWxpZ24gPT0gJz0nKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgIic9JyBhbGlnbm1lbnQgZmxhZyBpcyBub3QgYWxsb3dlZCBpbiBjb21wbGV4IGZvcm1hdCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAic3BlY2lmaWVyIik7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0KLSAgICByZSA9IFB5Q29tcGxleF9SZWFsQXNEb3VibGUodmFsdWUpOwotICAgIGlmIChyZSA9PSAtMS4wICYmIFB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgIGdvdG8gZG9uZTsKLSAgICBpbSA9IFB5Q29tcGxleF9JbWFnQXNEb3VibGUodmFsdWUpOwotICAgIGlmIChpbSA9PSAtMS4wICYmIFB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgIGdvdG8gZG9uZTsKLQotICAgIGlmIChmb3JtYXQtPmFsdGVybmF0ZSkKLSAgICAgICAgZmxhZ3MgfD0gUHlfRFRTRl9BTFQ7Ci0KLSAgICBpZiAodHlwZSA9PSAnXDAnKSB7Ci0gICAgICAgIC8qIE9taXR0ZWQgdHlwZSBzcGVjaWZpZXIuIFNob3VsZCBiZSBsaWtlIHN0cihzZWxmKS4gKi8KLSAgICAgICAgdHlwZSA9ICdyJzsKLSAgICAgICAgZGVmYXVsdF9wcmVjaXNpb24gPSAwOwotICAgICAgICBpZiAocmUgPT0gMC4wICYmIGNvcHlzaWduKDEuMCwgcmUpID09IDEuMCkKLSAgICAgICAgICAgIHNraXBfcmUgPSAxOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBhZGRfcGFyZW5zID0gMTsKLSAgICB9Ci0KLSAgICBpZiAodHlwZSA9PSAnbicpCi0gICAgICAgIC8qICduJyBpcyB0aGUgc2FtZSBhcyAnZycsIGV4Y2VwdCBmb3IgdGhlIGxvY2FsZSB1c2VkIHRvCi0gICAgICAgICAgIGZvcm1hdCB0aGUgcmVzdWx0LiBXZSB0YWtlIGNhcmUgb2YgdGhhdCBsYXRlci4gKi8KLSAgICAgICAgdHlwZSA9ICdnJzsKLQotICAgIGlmIChwcmVjaXNpb24gPCAwKQotICAgICAgICBwcmVjaXNpb24gPSBkZWZhdWx0X3ByZWNpc2lvbjsKLSAgICBlbHNlIGlmICh0eXBlID09ICdyJykKLSAgICAgICAgdHlwZSA9ICdnJzsKLQotICAgIC8qIENhc3QgInR5cGUiLCBiZWNhdXNlIGlmIHdlJ3JlIGluIHVuaWNvZGUgd2UgbmVlZCB0byBwYXNzIGEKLSAgICAgICA4LWJpdCBjaGFyLiBUaGlzIGlzIHNhZmUsIGJlY2F1c2Ugd2UndmUgcmVzdHJpY3RlZCB3aGF0ICJ0eXBlIgotICAgICAgIGNhbiBiZS4gKi8KLSAgICByZV9idWYgPSBQeU9TX2RvdWJsZV90b19zdHJpbmcocmUsIChjaGFyKXR5cGUsIHByZWNpc2lvbiwgZmxhZ3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyZV9mbG9hdF90eXBlKTsKLSAgICBpZiAocmVfYnVmID09IE5VTEwpCi0gICAgICAgIGdvdG8gZG9uZTsKLSAgICBpbV9idWYgPSBQeU9TX2RvdWJsZV90b19zdHJpbmcoaW0sIChjaGFyKXR5cGUsIHByZWNpc2lvbiwgZmxhZ3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZpbV9mbG9hdF90eXBlKTsKLSAgICBpZiAoaW1fYnVmID09IE5VTEwpCi0gICAgICAgIGdvdG8gZG9uZTsKLQotICAgIG5fcmVfZGlnaXRzID0gc3RybGVuKHJlX2J1Zik7Ci0gICAgbl9pbV9kaWdpdHMgPSBzdHJsZW4oaW1fYnVmKTsKLQotICAgIC8qIFNpbmNlIHRoZXJlIGlzIG5vIHVuaWNvZGUgdmVyc2lvbiBvZiBQeU9TX2RvdWJsZV90b19zdHJpbmcsCi0gICAgICAganVzdCB1c2UgdGhlIDggYml0IHZlcnNpb24gYW5kIHRoZW4gY29udmVydCB0byB1bmljb2RlLiAqLwotI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCi0gICAgcmVfdW5pY29kZV90bXAgPSAoUHlfVU5JQ09ERSopUHlNZW1fTWFsbG9jKChuX3JlX2RpZ2l0cykqc2l6ZW9mKFB5X1VOSUNPREUpKTsKLSAgICBpZiAocmVfdW5pY29kZV90bXAgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotICAgIHN0cnRvdW5pY29kZShyZV91bmljb2RlX3RtcCwgcmVfYnVmLCBuX3JlX2RpZ2l0cyk7Ci0gICAgcF9yZSA9IHJlX3VuaWNvZGVfdG1wOwotCi0gICAgaW1fdW5pY29kZV90bXAgPSAoUHlfVU5JQ09ERSopUHlNZW1fTWFsbG9jKChuX2ltX2RpZ2l0cykqc2l6ZW9mKFB5X1VOSUNPREUpKTsKLSAgICBpZiAoaW1fdW5pY29kZV90bXAgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotICAgIHN0cnRvdW5pY29kZShpbV91bmljb2RlX3RtcCwgaW1fYnVmLCBuX2ltX2RpZ2l0cyk7Ci0gICAgcF9pbSA9IGltX3VuaWNvZGVfdG1wOwotI2Vsc2UKLSAgICBwX3JlID0gcmVfYnVmOwotICAgIHBfaW0gPSBpbV9idWY7Ci0jZW5kaWYKLQotICAgIC8qIElzIGEgc2lnbiBjaGFyYWN0ZXIgcHJlc2VudCBpbiB0aGUgb3V0cHV0PyAgSWYgc28sIHJlbWVtYmVyIGl0Ci0gICAgICAgYW5kIHNraXAgaXQgKi8KLSAgICBpZiAoKnBfcmUgPT0gJy0nKSB7Ci0gICAgICAgIHJlX3NpZ25fY2hhciA9ICpwX3JlOwotICAgICAgICArK3BfcmU7Ci0gICAgICAgIC0tbl9yZV9kaWdpdHM7Ci0gICAgfQotICAgIGlmICgqcF9pbSA9PSAnLScpIHsKLSAgICAgICAgaW1fc2lnbl9jaGFyID0gKnBfaW07Ci0gICAgICAgICsrcF9pbTsKLSAgICAgICAgLS1uX2ltX2RpZ2l0czsKLSAgICB9Ci0KLSAgICAvKiBEZXRlcm1pbmUgaWYgd2UgaGF2ZSBhbnkgInJlbWFpbmRlciIgKGFmdGVyIHRoZSBkaWdpdHMsIG1pZ2h0IGluY2x1ZGUKLSAgICAgICBkZWNpbWFsIG9yIGV4cG9uZW50IG9yIGJvdGggKG9yIG5laXRoZXIpKSAqLwotICAgIHBhcnNlX251bWJlcihwX3JlLCBuX3JlX2RpZ2l0cywgJm5fcmVfcmVtYWluZGVyLCAmcmVfaGFzX2RlY2ltYWwpOwotICAgIHBhcnNlX251bWJlcihwX2ltLCBuX2ltX2RpZ2l0cywgJm5faW1fcmVtYWluZGVyLCAmaW1faGFzX2RlY2ltYWwpOwotCi0gICAgLyogRGV0ZXJtaW5lIHRoZSBncm91cGluZywgc2VwYXJhdG9yLCBhbmQgZGVjaW1hbCBwb2ludCwgaWYgYW55LiAqLwotICAgIGdldF9sb2NhbGVfaW5mbyhmb3JtYXQtPnR5cGUgPT0gJ24nID8gTFRfQ1VSUkVOVF9MT0NBTEUgOgotICAgICAgICAgICAgICAgICAgICAoZm9ybWF0LT50aG91c2FuZHNfc2VwYXJhdG9ycyA/Ci0gICAgICAgICAgICAgICAgICAgICBMVF9ERUZBVUxUX0xPQ0FMRSA6Ci0gICAgICAgICAgICAgICAgICAgICBMVF9OT19MT0NBTEUpLAotICAgICAgICAgICAgICAgICAgICAmbG9jYWxlKTsKLQotICAgIC8qIFR1cm4gb2ZmIGFueSBwYWRkaW5nLiBXZSdsbCBkbyBpdCBsYXRlciBhZnRlciB3ZSd2ZSBjb21wb3NlZAotICAgICAgIHRoZSBudW1iZXJzIHdpdGhvdXQgcGFkZGluZy4gKi8KLSAgICB0bXBfZm9ybWF0LmZpbGxfY2hhciA9ICdcMCc7Ci0gICAgdG1wX2Zvcm1hdC5hbGlnbiA9ICc8JzsKLSAgICB0bXBfZm9ybWF0LndpZHRoID0gLTE7Ci0KLSAgICAvKiBDYWxjdWxhdGUgaG93IG11Y2ggbWVtb3J5IHdlJ2xsIG5lZWQuICovCi0gICAgbl9yZV90b3RhbCA9IGNhbGNfbnVtYmVyX3dpZHRocygmcmVfc3BlYywgMCwgcmVfc2lnbl9jaGFyLCBwX3JlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbl9yZV9kaWdpdHMsIG5fcmVfcmVtYWluZGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVfaGFzX2RlY2ltYWwsICZsb2NhbGUsICZ0bXBfZm9ybWF0KTsKLQotICAgIC8qIFNhbWUgZm9ybWF0dGluZywgYnV0IGFsd2F5cyBpbmNsdWRlIGEgc2lnbiwgdW5sZXNzIHRoZSByZWFsIHBhcnQgaXMKLSAgICAgKiBnb2luZyB0byBiZSBvbWl0dGVkLCBpbiB3aGljaCBjYXNlIHdlIHVzZSB3aGF0ZXZlciBzaWduIGNvbnZlbnRpb24gd2FzCi0gICAgICogcmVxdWVzdGVkIGJ5IHRoZSBvcmlnaW5hbCBmb3JtYXQuICovCi0gICAgaWYgKCFza2lwX3JlKQotICAgICAgICB0bXBfZm9ybWF0LnNpZ24gPSAnKyc7Ci0gICAgbl9pbV90b3RhbCA9IGNhbGNfbnVtYmVyX3dpZHRocygmaW1fc3BlYywgMCwgaW1fc2lnbl9jaGFyLCBwX2ltLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbl9pbV9kaWdpdHMsIG5faW1fcmVtYWluZGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1faGFzX2RlY2ltYWwsICZsb2NhbGUsICZ0bXBfZm9ybWF0KTsKLQotICAgIGlmIChza2lwX3JlKQotICAgICAgICBuX3JlX3RvdGFsID0gMDsKLQotICAgIC8qIEFkZCAxIGZvciB0aGUgJ2onLCBhbmQgb3B0aW9uYWxseSAyIGZvciBwYXJlbnMuICovCi0gICAgY2FsY19wYWRkaW5nKG5fcmVfdG90YWwgKyBuX2ltX3RvdGFsICsgMSArIGFkZF9wYXJlbnMgKiAyLAotICAgICAgICAgICAgICAgICBmb3JtYXQtPndpZHRoLCBmb3JtYXQtPmFsaWduLCAmbHBhZCwgJnJwYWQsICZ0b3RhbCk7Ci0KLSAgICByZXN1bHQgPSBTVFJJTkdMSUJfTkVXKE5VTEwsIHRvdGFsKTsKLSAgICBpZiAocmVzdWx0ID09IE5VTEwpCi0gICAgICAgIGdvdG8gZG9uZTsKLQotICAgIC8qIFBvcHVsYXRlIHRoZSBtZW1vcnkuIEZpcnN0LCB0aGUgcGFkZGluZy4gKi8KLSAgICBwID0gZmlsbF9wYWRkaW5nKFNUUklOR0xJQl9TVFIocmVzdWx0KSwKLSAgICAgICAgICAgICAgICAgICAgIG5fcmVfdG90YWwgKyBuX2ltX3RvdGFsICsgMSArIGFkZF9wYXJlbnMgKiAyLAotICAgICAgICAgICAgICAgICAgICAgZm9ybWF0LT5maWxsX2NoYXI9PSdcMCcgPyAnICcgOiBmb3JtYXQtPmZpbGxfY2hhciwKLSAgICAgICAgICAgICAgICAgICAgIGxwYWQsIHJwYWQpOwotCi0gICAgaWYgKGFkZF9wYXJlbnMpCi0gICAgICAgICpwKysgPSAnKCc7Ci0KLSAgICBpZiAoIXNraXBfcmUpIHsKLSAgICAgICAgZmlsbF9udW1iZXIocCwgJnJlX3NwZWMsIHBfcmUsIG5fcmVfZGlnaXRzLCBOVUxMLCAwLCAmbG9jYWxlLCAwKTsKLSAgICAgICAgcCArPSBuX3JlX3RvdGFsOwotICAgIH0KLSAgICBmaWxsX251bWJlcihwLCAmaW1fc3BlYywgcF9pbSwgbl9pbV9kaWdpdHMsIE5VTEwsIDAsICZsb2NhbGUsIDApOwotICAgIHAgKz0gbl9pbV90b3RhbDsKLSAgICAqcCsrID0gJ2onOwotCi0gICAgaWYgKGFkZF9wYXJlbnMpCi0gICAgICAgICpwKysgPSAnKSc7Ci0KLWRvbmU6Ci0gICAgUHlNZW1fRnJlZShyZV9idWYpOwotICAgIFB5TWVtX0ZyZWUoaW1fYnVmKTsKLSNpZiBTVFJJTkdMSUJfSVNfVU5JQ09ERQotICAgIFB5TWVtX0ZyZWUocmVfdW5pY29kZV90bXApOwotICAgIFB5TWVtX0ZyZWUoaW1fdW5pY29kZV90bXApOwotI2VuZGlmCi0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLSNlbmRpZiAvKiBGT1JNQVRfQ09NUExFWCAqLwotCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwotLyoqKioqKioqKioqIGJ1aWx0IGluIGZvcm1hdHRlcnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi1QeU9iamVjdCAqCi1GT1JNQVRfU1RSSU5HKFB5T2JqZWN0ICpvYmosCi0gICAgICAgICAgICAgIFNUUklOR0xJQl9DSEFSICpmb3JtYXRfc3BlYywKLSAgICAgICAgICAgICAgUHlfc3NpemVfdCBmb3JtYXRfc3BlY19sZW4pCi17Ci0gICAgSW50ZXJuYWxGb3JtYXRTcGVjIGZvcm1hdDsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLQotICAgIC8qIGNoZWNrIGZvciB0aGUgc3BlY2lhbCBjYXNlIG9mIHplcm8gbGVuZ3RoIGZvcm1hdCBzcGVjLCBtYWtlCi0gICAgICAgaXQgZXF1aXZhbGVudCB0byBzdHIob2JqKSAqLwotICAgIGlmIChmb3JtYXRfc3BlY19sZW4gPT0gMCkgewotICAgICAgICByZXN1bHQgPSBTVFJJTkdMSUJfVE9TVFIob2JqKTsKLSAgICAgICAgZ290byBkb25lOwotICAgIH0KLQotICAgIC8qIHBhcnNlIHRoZSBmb3JtYXRfc3BlYyAqLwotICAgIGlmICghcGFyc2VfaW50ZXJuYWxfcmVuZGVyX2Zvcm1hdF9zcGVjKGZvcm1hdF9zcGVjLCBmb3JtYXRfc3BlY19sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZvcm1hdCwgJ3MnLCAnPCcpKQotICAgICAgICBnb3RvIGRvbmU7Ci0KLSAgICAvKiB0eXBlIGNvbnZlcnNpb24/ICovCi0gICAgc3dpdGNoIChmb3JtYXQudHlwZSkgewotICAgIGNhc2UgJ3MnOgotICAgICAgICAvKiBubyB0eXBlIGNvbnZlcnNpb24gbmVlZGVkLCBhbHJlYWR5IGEgc3RyaW5nLiAgZG8gdGhlIGZvcm1hdHRpbmcgKi8KLSAgICAgICAgcmVzdWx0ID0gZm9ybWF0X3N0cmluZ19pbnRlcm5hbChvYmosICZmb3JtYXQpOwotICAgICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICAvKiB1bmtub3duICovCi0gICAgICAgIHVua25vd25fcHJlc2VudGF0aW9uX3R5cGUoZm9ybWF0LnR5cGUsIG9iai0+b2JfdHlwZS0+dHBfbmFtZSk7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0KLWRvbmU6Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotI2lmIGRlZmluZWQgRk9STUFUX0xPTkcgfHwgZGVmaW5lZCBGT1JNQVRfSU5UCi1zdGF0aWMgUHlPYmplY3QqCi1mb3JtYXRfaW50X29yX2xvbmcoUHlPYmplY3QqIG9iaiwKLSAgICAgICAgICAgICAgICAgICBTVFJJTkdMSUJfQ0hBUiAqZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBmb3JtYXRfc3BlY19sZW4sCi0gICAgICAgICAgICAgICAgICAgSW50T3JMb25nVG9TdHJpbmcgdG9zdHJpbmcpCi17Ci0gICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKnRtcCA9IE5VTEw7Ci0gICAgSW50ZXJuYWxGb3JtYXRTcGVjIGZvcm1hdDsKLQotICAgIC8qIGNoZWNrIGZvciB0aGUgc3BlY2lhbCBjYXNlIG9mIHplcm8gbGVuZ3RoIGZvcm1hdCBzcGVjLCBtYWtlCi0gICAgICAgaXQgZXF1aXZhbGVudCB0byBzdHIob2JqKSAqLwotICAgIGlmIChmb3JtYXRfc3BlY19sZW4gPT0gMCkgewotICAgICAgICByZXN1bHQgPSBTVFJJTkdMSUJfVE9TVFIob2JqKTsKLSAgICAgICAgZ290byBkb25lOwotICAgIH0KLQotICAgIC8qIHBhcnNlIHRoZSBmb3JtYXRfc3BlYyAqLwotICAgIGlmICghcGFyc2VfaW50ZXJuYWxfcmVuZGVyX2Zvcm1hdF9zcGVjKGZvcm1hdF9zcGVjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdF9zcGVjX2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9ybWF0LCAnZCcsICc+JykpCi0gICAgICAgIGdvdG8gZG9uZTsKLQotICAgIC8qIHR5cGUgY29udmVyc2lvbj8gKi8KLSAgICBzd2l0Y2ggKGZvcm1hdC50eXBlKSB7Ci0gICAgY2FzZSAnYic6Ci0gICAgY2FzZSAnYyc6Ci0gICAgY2FzZSAnZCc6Ci0gICAgY2FzZSAnbyc6Ci0gICAgY2FzZSAneCc6Ci0gICAgY2FzZSAnWCc6Ci0gICAgY2FzZSAnbic6Ci0gICAgICAgIC8qIG5vIHR5cGUgY29udmVyc2lvbiBuZWVkZWQsIGFscmVhZHkgYW4gaW50IChvciBsb25nKS4gIGRvCi0gICAgICAgICAgIHRoZSBmb3JtYXR0aW5nICovCi0gICAgICAgICAgICByZXN1bHQgPSBmb3JtYXRfaW50X29yX2xvbmdfaW50ZXJuYWwob2JqLCAmZm9ybWF0LCB0b3N0cmluZyk7Ci0gICAgICAgIGJyZWFrOwotCi0gICAgY2FzZSAnZSc6Ci0gICAgY2FzZSAnRSc6Ci0gICAgY2FzZSAnZic6Ci0gICAgY2FzZSAnRic6Ci0gICAgY2FzZSAnZyc6Ci0gICAgY2FzZSAnRyc6Ci0gICAgY2FzZSAnJSc6Ci0gICAgICAgIC8qIGNvbnZlcnQgdG8gZmxvYXQgKi8KLSAgICAgICAgdG1wID0gUHlOdW1iZXJfRmxvYXQob2JqKTsKLSAgICAgICAgaWYgKHRtcCA9PSBOVUxMKQotICAgICAgICAgICAgZ290byBkb25lOwotICAgICAgICByZXN1bHQgPSBmb3JtYXRfZmxvYXRfaW50ZXJuYWwodG1wLCAmZm9ybWF0KTsKLSAgICAgICAgYnJlYWs7Ci0KLSAgICBkZWZhdWx0OgotICAgICAgICAvKiB1bmtub3duICovCi0gICAgICAgIHVua25vd25fcHJlc2VudGF0aW9uX3R5cGUoZm9ybWF0LnR5cGUsIG9iai0+b2JfdHlwZS0+dHBfbmFtZSk7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0KLWRvbmU6Ci0gICAgUHlfWERFQ1JFRih0bXApOwotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0jZW5kaWYgLyogRk9STUFUX0xPTkcgfHwgZGVmaW5lZCBGT1JNQVRfSU5UICovCi0KLSNpZmRlZiBGT1JNQVRfTE9ORwotLyogTmVlZCB0byBkZWZpbmUgbG9uZ19mb3JtYXQgYXMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgY29udmVydCBhIGxvbmcKLSAgIHRvIGEgc3RyaW5nLiAgSW4gMy4wLCBfUHlMb25nX0Zvcm1hdCBoYXMgdGhlIGNvcnJlY3Qgc2lnbmF0dXJlLiAgSW4KLSAgIDIueCwgd2UgbmVlZCB0byBmdWRnZSBhIGZldyBwYXJhbWV0ZXJzICovCi0jaWYgUFlfVkVSU0lPTl9IRVggPj0gMHgwMzAwMDAwMAotI2RlZmluZSBsb25nX2Zvcm1hdCBfUHlMb25nX0Zvcm1hdAotI2Vsc2UKLXN0YXRpYyBQeU9iamVjdCoKLWxvbmdfZm9ybWF0KFB5T2JqZWN0KiB2YWx1ZSwgaW50IGJhc2UpCi17Ci0gICAgLyogQ29udmVydCB0byBiYXNlLCBkb24ndCBhZGQgdHJhaWxpbmcgJ0wnLCBhbmQgdXNlIHRoZSBuZXcgb2N0YWwKLSAgICAgICBmb3JtYXQuIFdlIGFscmVhZHkga25vdyB0aGlzIGlzIGEgbG9uZyBvYmplY3QgKi8KLSAgICBhc3NlcnQoUHlMb25nX0NoZWNrKHZhbHVlKSk7Ci0gICAgLyogY29udmVydCB0byBiYXNlLCBkb24ndCBhZGQgJ0wnLCBhbmQgdXNlIHRoZSBuZXcgb2N0YWwgZm9ybWF0ICovCi0gICAgcmV0dXJuIF9QeUxvbmdfRm9ybWF0KHZhbHVlLCBiYXNlLCAwLCAxKTsKLX0KLSNlbmRpZgotCi1QeU9iamVjdCAqCi1GT1JNQVRfTE9ORyhQeU9iamVjdCAqb2JqLAotICAgICAgICAgICAgU1RSSU5HTElCX0NIQVIgKmZvcm1hdF9zcGVjLAotICAgICAgICAgICAgUHlfc3NpemVfdCBmb3JtYXRfc3BlY19sZW4pCi17Ci0gICAgcmV0dXJuIGZvcm1hdF9pbnRfb3JfbG9uZyhvYmosIGZvcm1hdF9zcGVjLCBmb3JtYXRfc3BlY19sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb25nX2Zvcm1hdCk7Ci19Ci0jZW5kaWYgLyogRk9STUFUX0xPTkcgKi8KLQotI2lmZGVmIEZPUk1BVF9JTlQKLS8qIHRoaXMgaXMgb25seSB1c2VkIGZvciAyLngsIG5vdCAzLjAgKi8KLXN0YXRpYyBQeU9iamVjdCoKLWludF9mb3JtYXQoUHlPYmplY3QqIHZhbHVlLCBpbnQgYmFzZSkKLXsKLSAgICAvKiBDb252ZXJ0IHRvIGJhc2UsIGFuZCB1c2UgdGhlIG5ldyBvY3RhbCBmb3JtYXQuIFdlIGFscmVhZHkKLSAgICAgICBrbm93IHRoaXMgaXMgYW4gaW50IG9iamVjdCAqLwotICAgIGFzc2VydChQeUludF9DaGVjayh2YWx1ZSkpOwotICAgIHJldHVybiBfUHlJbnRfRm9ybWF0KChQeUludE9iamVjdCopdmFsdWUsIGJhc2UsIDEpOwotfQotCi1QeU9iamVjdCAqCi1GT1JNQVRfSU5UKFB5T2JqZWN0ICpvYmosCi0gICAgICAgICAgIFNUUklOR0xJQl9DSEFSICpmb3JtYXRfc3BlYywKLSAgICAgICAgICAgUHlfc3NpemVfdCBmb3JtYXRfc3BlY19sZW4pCi17Ci0gICAgcmV0dXJuIGZvcm1hdF9pbnRfb3JfbG9uZyhvYmosIGZvcm1hdF9zcGVjLCBmb3JtYXRfc3BlY19sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRfZm9ybWF0KTsKLX0KLSNlbmRpZiAvKiBGT1JNQVRfSU5UICovCi0KLSNpZmRlZiBGT1JNQVRfRkxPQVQKLVB5T2JqZWN0ICoKLUZPUk1BVF9GTE9BVChQeU9iamVjdCAqb2JqLAotICAgICAgICAgICAgIFNUUklOR0xJQl9DSEFSICpmb3JtYXRfc3BlYywKLSAgICAgICAgICAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbikKLXsKLSAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKLSAgICBJbnRlcm5hbEZvcm1hdFNwZWMgZm9ybWF0OwotCi0gICAgLyogY2hlY2sgZm9yIHRoZSBzcGVjaWFsIGNhc2Ugb2YgemVybyBsZW5ndGggZm9ybWF0IHNwZWMsIG1ha2UKLSAgICAgICBpdCBlcXVpdmFsZW50IHRvIHN0cihvYmopICovCi0gICAgaWYgKGZvcm1hdF9zcGVjX2xlbiA9PSAwKSB7Ci0gICAgICAgIHJlc3VsdCA9IFNUUklOR0xJQl9UT1NUUihvYmopOwotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotCi0gICAgLyogcGFyc2UgdGhlIGZvcm1hdF9zcGVjICovCi0gICAgaWYgKCFwYXJzZV9pbnRlcm5hbF9yZW5kZXJfZm9ybWF0X3NwZWMoZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0X3NwZWNfbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmb3JtYXQsICdcMCcsICc+JykpCi0gICAgICAgIGdvdG8gZG9uZTsKLQotICAgIC8qIHR5cGUgY29udmVyc2lvbj8gKi8KLSAgICBzd2l0Y2ggKGZvcm1hdC50eXBlKSB7Ci0gICAgY2FzZSAnXDAnOiAvKiBObyBmb3JtYXQgY29kZTogbGlrZSAnZycsIGJ1dCB3aXRoIGF0IGxlYXN0IG9uZSBkZWNpbWFsLiAqLwotICAgIGNhc2UgJ2UnOgotICAgIGNhc2UgJ0UnOgotICAgIGNhc2UgJ2YnOgotICAgIGNhc2UgJ0YnOgotICAgIGNhc2UgJ2cnOgotICAgIGNhc2UgJ0cnOgotICAgIGNhc2UgJ24nOgotICAgIGNhc2UgJyUnOgotICAgICAgICAvKiBubyBjb252ZXJzaW9uLCBhbHJlYWR5IGEgZmxvYXQuICBkbyB0aGUgZm9ybWF0dGluZyAqLwotICAgICAgICByZXN1bHQgPSBmb3JtYXRfZmxvYXRfaW50ZXJuYWwob2JqLCAmZm9ybWF0KTsKLSAgICAgICAgYnJlYWs7Ci0KLSAgICBkZWZhdWx0OgotICAgICAgICAvKiB1bmtub3duICovCi0gICAgICAgIHVua25vd25fcHJlc2VudGF0aW9uX3R5cGUoZm9ybWF0LnR5cGUsIG9iai0+b2JfdHlwZS0+dHBfbmFtZSk7Ci0gICAgICAgIGdvdG8gZG9uZTsKLSAgICB9Ci0KLWRvbmU6Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLSNlbmRpZiAvKiBGT1JNQVRfRkxPQVQgKi8KLQotI2lmZGVmIEZPUk1BVF9DT01QTEVYCi1QeU9iamVjdCAqCi1GT1JNQVRfQ09NUExFWChQeU9iamVjdCAqb2JqLAotICAgICAgICAgICAgICAgU1RSSU5HTElCX0NIQVIgKmZvcm1hdF9zcGVjLAotICAgICAgICAgICAgICAgUHlfc3NpemVfdCBmb3JtYXRfc3BlY19sZW4pCi17Ci0gICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7Ci0gICAgSW50ZXJuYWxGb3JtYXRTcGVjIGZvcm1hdDsKLQotICAgIC8qIGNoZWNrIGZvciB0aGUgc3BlY2lhbCBjYXNlIG9mIHplcm8gbGVuZ3RoIGZvcm1hdCBzcGVjLCBtYWtlCi0gICAgICAgaXQgZXF1aXZhbGVudCB0byBzdHIob2JqKSAqLwotICAgIGlmIChmb3JtYXRfc3BlY19sZW4gPT0gMCkgewotICAgICAgICByZXN1bHQgPSBTVFJJTkdMSUJfVE9TVFIob2JqKTsKLSAgICAgICAgZ290byBkb25lOwotICAgIH0KLQotICAgIC8qIHBhcnNlIHRoZSBmb3JtYXRfc3BlYyAqLwotICAgIGlmICghcGFyc2VfaW50ZXJuYWxfcmVuZGVyX2Zvcm1hdF9zcGVjKGZvcm1hdF9zcGVjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdF9zcGVjX2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9ybWF0LCAnXDAnLCAnPicpKQotICAgICAgICBnb3RvIGRvbmU7Ci0KLSAgICAvKiB0eXBlIGNvbnZlcnNpb24/ICovCi0gICAgc3dpdGNoIChmb3JtYXQudHlwZSkgewotICAgIGNhc2UgJ1wwJzogLyogTm8gZm9ybWF0IGNvZGU6IGxpa2UgJ2cnLCBidXQgd2l0aCBhdCBsZWFzdCBvbmUgZGVjaW1hbC4gKi8KLSAgICBjYXNlICdlJzoKLSAgICBjYXNlICdFJzoKLSAgICBjYXNlICdmJzoKLSAgICBjYXNlICdGJzoKLSAgICBjYXNlICdnJzoKLSAgICBjYXNlICdHJzoKLSAgICBjYXNlICduJzoKLSAgICAgICAgLyogbm8gY29udmVyc2lvbiwgYWxyZWFkeSBhIGNvbXBsZXguICBkbyB0aGUgZm9ybWF0dGluZyAqLwotICAgICAgICByZXN1bHQgPSBmb3JtYXRfY29tcGxleF9pbnRlcm5hbChvYmosICZmb3JtYXQpOwotICAgICAgICBicmVhazsKLQotICAgIGRlZmF1bHQ6Ci0gICAgICAgIC8qIHVua25vd24gKi8KLSAgICAgICAgdW5rbm93bl9wcmVzZW50YXRpb25fdHlwZShmb3JtYXQudHlwZSwgb2JqLT5vYl90eXBlLT50cF9uYW1lKTsKLSAgICAgICAgZ290byBkb25lOwotICAgIH0KLQotZG9uZToKLSAgICByZXR1cm4gcmVzdWx0OwotfQotI2VuZGlmIC8qIEZPUk1BVF9DT01QTEVYICovCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi9sb2NhbGV1dGlsLmggYi9PYmplY3RzL3N0cmluZ2xpYi9sb2NhbGV1dGlsLmgKaW5kZXggZjU0ODEzMy4uZGRjZTY5ZCAxMDA2NDQKLS0tIGEvT2JqZWN0cy9zdHJpbmdsaWIvbG9jYWxldXRpbC5oCisrKyBiL09iamVjdHMvc3RyaW5nbGliL2xvY2FsZXV0aWwuaApAQCAtMSw4ICsxLDUgQEAKIC8qIHN0cmluZ2xpYjogbG9jYWxlIHJlbGF0ZWQgaGVscGVycyBpbXBsZW1lbnRhdGlvbiAqLwogCi0jaWZuZGVmIFNUUklOR0xJQl9MT0NBTEVVVElMX0gKLSNkZWZpbmUgU1RSSU5HTElCX0xPQ0FMRVVUSUxfSAotCiAjaW5jbHVkZSA8bG9jYWxlLmg+CiAKICNkZWZpbmUgTUFYKHgsIHkpICgoeCkgPCAoeSkgPyAoeSkgOiAoeCkpCkBAIC0xMiwxMCArOSwxMCBAQAogICAgIGNvbnN0IGNoYXIgKmdyb3VwaW5nOwogICAgIGNoYXIgcHJldmlvdXM7CiAgICAgUHlfc3NpemVfdCBpOyAvKiBXaGVyZSB3ZSdyZSBjdXJyZW50bHkgcG9pbnRpbmcgaW4gZ3JvdXBpbmcuICovCi19IEdyb3VwR2VuZXJhdG9yOworfSBTVFJJTkdMSUIoR3JvdXBHZW5lcmF0b3IpOwogCiBzdGF0aWMgdm9pZAotX0dyb3VwR2VuZXJhdG9yX2luaXQoR3JvdXBHZW5lcmF0b3IgKnNlbGYsIGNvbnN0IGNoYXIgKmdyb3VwaW5nKQorU1RSSU5HTElCKEdyb3VwR2VuZXJhdG9yX2luaXQpKFNUUklOR0xJQihHcm91cEdlbmVyYXRvcikgKnNlbGYsIGNvbnN0IGNoYXIgKmdyb3VwaW5nKQogewogICAgIHNlbGYtPmdyb3VwaW5nID0gZ3JvdXBpbmc7CiAgICAgc2VsZi0+aSA9IDA7CkBAIC0yNCw3ICsyMSw3IEBACiAKIC8qIFJldHVybnMgdGhlIG5leHQgZ3JvdXBpbmcsIG9yIDAgdG8gc2lnbmlmeSBlbmQuICovCiBzdGF0aWMgUHlfc3NpemVfdAotX0dyb3VwR2VuZXJhdG9yX25leHQoR3JvdXBHZW5lcmF0b3IgKnNlbGYpCitTVFJJTkdMSUIoR3JvdXBHZW5lcmF0b3JfbmV4dCkoU1RSSU5HTElCKEdyb3VwR2VuZXJhdG9yKSAqc2VsZikKIHsKICAgICAvKiBOb3RlIHRoYXQgd2UgZG9uJ3QgcmVhbGx5IGRvIG11Y2ggZXJyb3IgY2hlY2tpbmcgaGVyZS4gSWYgYQogICAgICAgIGdyb3VwaW5nIHN0cmluZyBjb250YWlucyBqdXN0IENIQVJfTUFYLCBmb3IgZXhhbXBsZSwgdGhlbiBqdXN0CkBAIC00OCwxMyArNDUsMTEgQEAKIC8qIEZpbGwgaW4gc29tZSBkaWdpdHMsIGxlYWRpbmcgemVyb3MsIGFuZCB0aG91c2FuZHMgc2VwYXJhdG9yLiBBbGwKICAgIGFyZSBvcHRpb25hbCwgZGVwZW5kaW5nIG9uIHdoZW4gd2UncmUgY2FsbGVkLiAqLwogc3RhdGljIHZvaWQKLWZpbGwoU1RSSU5HTElCX0NIQVIgKipkaWdpdHNfZW5kLCBTVFJJTkdMSUJfQ0hBUiAqKmJ1ZmZlcl9lbmQsCitTVFJJTkdMSUIoZmlsbCkoU1RSSU5HTElCX0NIQVIgKipkaWdpdHNfZW5kLCBTVFJJTkdMSUJfQ0hBUiAqKmJ1ZmZlcl9lbmQsCiAgICAgIFB5X3NzaXplX3Qgbl9jaGFycywgUHlfc3NpemVfdCBuX3plcm9zLCBjb25zdCBjaGFyKiB0aG91c2FuZHNfc2VwLAogICAgICBQeV9zc2l6ZV90IHRob3VzYW5kc19zZXBfbGVuKQogewotI2lmIFNUUklOR0xJQl9JU19VTklDT0RFCiAgICAgUHlfc3NpemVfdCBpOwotI2VuZGlmCiAKICAgICBpZiAodGhvdXNhbmRzX3NlcCkgewogICAgICAgICAqYnVmZmVyX2VuZCAtPSB0aG91c2FuZHNfc2VwX2xlbjsKQEAgLTc2LDcgKzcxLDggQEAKICAgICBtZW1jcHkoKmJ1ZmZlcl9lbmQsICpkaWdpdHNfZW5kLCBuX2NoYXJzICogc2l6ZW9mKFNUUklOR0xJQl9DSEFSKSk7CiAKICAgICAqYnVmZmVyX2VuZCAtPSBuX3plcm9zOwotICAgIFNUUklOR0xJQl9GSUxMKCpidWZmZXJfZW5kLCAnMCcsIG5femVyb3MpOworICAgIGZvciAoaSA9IDA7IGkgPCBuX3plcm9zOyBpKyspCisgICAgICAgICgqYnVmZmVyX2VuZClbaV0gPSAnMCc7CiB9CiAKIC8qKgpAQCAtMTMzLDE1ICsxMjksMTUgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZSBsb29rZWQgYXQgKi8KICAgICAvKiBBIGdlbmVyYXRvciB0aGF0IHJldHVybnMgYWxsIG9mIHRoZSBncm91cGluZyB3aWR0aHMsIHVudGlsIGl0CiAgICAgICAgcmV0dXJucyAwLiAqLwotICAgIEdyb3VwR2VuZXJhdG9yIGdyb3VwZ2VuOwotICAgIF9Hcm91cEdlbmVyYXRvcl9pbml0KCZncm91cGdlbiwgZ3JvdXBpbmcpOworICAgIFNUUklOR0xJQihHcm91cEdlbmVyYXRvcikgZ3JvdXBnZW47CisgICAgU1RSSU5HTElCKEdyb3VwR2VuZXJhdG9yX2luaXQpKCZncm91cGdlbiwgZ3JvdXBpbmcpOwogCiAgICAgaWYgKGJ1ZmZlcikgewogICAgICAgICBidWZmZXJfZW5kID0gYnVmZmVyICsgbl9idWZmZXI7CiAgICAgICAgIGRpZ2l0c19lbmQgPSBkaWdpdHMgKyBuX2RpZ2l0czsKICAgICB9CiAKLSAgICB3aGlsZSAoKGwgPSBfR3JvdXBHZW5lcmF0b3JfbmV4dCgmZ3JvdXBnZW4pKSA+IDApIHsKKyAgICB3aGlsZSAoKGwgPSBTVFJJTkdMSUIoR3JvdXBHZW5lcmF0b3JfbmV4dCkoJmdyb3VwZ2VuKSkgPiAwKSB7CiAgICAgICAgIGwgPSBNSU4obCwgTUFYKE1BWChyZW1haW5pbmcsIG1pbl93aWR0aCksIDEpKTsKICAgICAgICAgbl96ZXJvcyA9IE1BWCgwLCBsIC0gcmVtYWluaW5nKTsKICAgICAgICAgbl9jaGFycyA9IE1BWCgwLCBNSU4ocmVtYWluaW5nLCBsKSk7CkBAIC0xNTMsNyArMTQ5LDcgQEAKIAogICAgICAgICBpZiAoYnVmZmVyKSB7CiAgICAgICAgICAgICAvKiBDb3B5IGludG8gdGhlIG91dHB1dCBidWZmZXIuICovCi0gICAgICAgICAgICBmaWxsKCZkaWdpdHNfZW5kLCAmYnVmZmVyX2VuZCwgbl9jaGFycywgbl96ZXJvcywKKyAgICAgICAgICAgIFNUUklOR0xJQihmaWxsKSgmZGlnaXRzX2VuZCwgJmJ1ZmZlcl9lbmQsIG5fY2hhcnMsIG5femVyb3MsCiAgICAgICAgICAgICAgICAgIHVzZV9zZXBhcmF0b3IgPyB0aG91c2FuZHNfc2VwIDogTlVMTCwgdGhvdXNhbmRzX3NlcF9sZW4pOwogICAgICAgICB9CiAKQEAgLTE4MCw3ICsxNzYsNyBAQAogICAgICAgICBjb3VudCArPSAodXNlX3NlcGFyYXRvciA/IHRob3VzYW5kc19zZXBfbGVuIDogMCkgKyBuX3plcm9zICsgbl9jaGFyczsKICAgICAgICAgaWYgKGJ1ZmZlcikgewogICAgICAgICAgICAgLyogQ29weSBpbnRvIHRoZSBvdXRwdXQgYnVmZmVyLiAqLwotICAgICAgICAgICAgZmlsbCgmZGlnaXRzX2VuZCwgJmJ1ZmZlcl9lbmQsIG5fY2hhcnMsIG5femVyb3MsCisgICAgICAgICAgICBTVFJJTkdMSUIoZmlsbCkoJmRpZ2l0c19lbmQsICZidWZmZXJfZW5kLCBuX2NoYXJzLCBuX3plcm9zLAogICAgICAgICAgICAgICAgICB1c2Vfc2VwYXJhdG9yID8gdGhvdXNhbmRzX3NlcCA6IE5VTEwsIHRob3VzYW5kc19zZXBfbGVuKTsKICAgICAgICAgfQogICAgIH0KQEAgLTIwOSw0ICsyMDUsMyBAQAogICAgICAgICByZXR1cm4gX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nKGJ1ZmZlciwgbl9idWZmZXIsIGRpZ2l0cywgbl9kaWdpdHMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluX3dpZHRoLCBncm91cGluZywgdGhvdXNhbmRzX3NlcCk7CiB9Ci0jZW5kaWYgLyogU1RSSU5HTElCX0xPQ0FMRVVUSUxfSCAqLwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvcGFydGl0aW9uLmggYi9PYmplY3RzL3N0cmluZ2xpYi9wYXJ0aXRpb24uaAppbmRleCAwMTcwYmRkLi40MGNiNTEyIDEwMDY0NAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi9wYXJ0aXRpb24uaAorKysgYi9PYmplY3RzL3N0cmluZ2xpYi9wYXJ0aXRpb24uaApAQCAtMSwxNCArMSwxMSBAQAogLyogc3RyaW5nbGliOiBwYXJ0aXRpb24gaW1wbGVtZW50YXRpb24gKi8KIAotI2lmbmRlZiBTVFJJTkdMSUJfUEFSVElUSU9OX0gKLSNkZWZpbmUgU1RSSU5HTElCX1BBUlRJVElPTl9ICi0KICNpZm5kZWYgU1RSSU5HTElCX0ZBU1RTRUFSQ0hfSAogI2Vycm9yIG11c3QgaW5jbHVkZSAic3RyaW5nbGliL2Zhc3RzZWFyY2guaCIgYmVmb3JlIGluY2x1ZGluZyB0aGlzIG1vZHVsZQogI2VuZGlmCiAKIFB5X0xPQ0FMX0lOTElORShQeU9iamVjdCopCi1zdHJpbmdsaWJfcGFydGl0aW9uKFB5T2JqZWN0KiBzdHJfb2JqLAorU1RSSU5HTElCKHBhcnRpdGlvbikoUHlPYmplY3QqIHN0cl9vYmosCiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QqIHNlcF9vYmosCiAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzZXAsIFB5X3NzaXplX3Qgc2VwX2xlbikKQEAgLTI1LDcgKzIyLDcgQEAKICAgICBpZiAoIW91dCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBwb3MgPSBmYXN0c2VhcmNoKHN0ciwgc3RyX2xlbiwgc2VwLCBzZXBfbGVuLCAtMSwgRkFTVF9TRUFSQ0gpOworICAgIHBvcyA9IEZBU1RTRUFSQ0goc3RyLCBzdHJfbGVuLCBzZXAsIHNlcF9sZW4sIC0xLCBGQVNUX1NFQVJDSCk7CiAKICAgICBpZiAocG9zIDwgMCkgewogI2lmIFNUUklOR0xJQl9NVVRBQkxFCkBAIC01OCw3ICs1NSw3IEBACiB9CiAKIFB5X0xPQ0FMX0lOTElORShQeU9iamVjdCopCi1zdHJpbmdsaWJfcnBhcnRpdGlvbihQeU9iamVjdCogc3RyX29iaiwKK1NUUklOR0xJQihycGFydGl0aW9uKShQeU9iamVjdCogc3RyX29iaiwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0KiBzZXBfb2JqLAogICAgICAgICAgICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHNlcCwgUHlfc3NpemVfdCBzZXBfbGVuKQpAQCAtNzUsNyArNzIsNyBAQAogICAgIGlmICghb3V0KQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHBvcyA9IGZhc3RzZWFyY2goc3RyLCBzdHJfbGVuLCBzZXAsIHNlcF9sZW4sIC0xLCBGQVNUX1JTRUFSQ0gpOworICAgIHBvcyA9IEZBU1RTRUFSQ0goc3RyLCBzdHJfbGVuLCBzZXAsIHNlcF9sZW4sIC0xLCBGQVNUX1JTRUFSQ0gpOwogCiAgICAgaWYgKHBvcyA8IDApIHsKICNpZiBTVFJJTkdMSUJfTVVUQUJMRQpAQCAtMTA3LDQgKzEwNCwzIEBACiAgICAgcmV0dXJuIG91dDsKIH0KIAotI2VuZGlmCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi9zcGxpdC5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvc3BsaXQuaAppbmRleCA2MGU3NzY3Li45NDdkZDI4IDEwMDY0NAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi9zcGxpdC5oCisrKyBiL09iamVjdHMvc3RyaW5nbGliL3NwbGl0LmgKQEAgLTEsOCArMSw1IEBACiAvKiBzdHJpbmdsaWI6IHNwbGl0IGltcGxlbWVudGF0aW9uICovCiAKLSNpZm5kZWYgU1RSSU5HTElCX1NQTElUX0gKLSNkZWZpbmUgU1RSSU5HTElCX1NQTElUX0gKLQogI2lmbmRlZiBTVFJJTkdMSUJfRkFTVFNFQVJDSF9ICiAjZXJyb3IgbXVzdCBpbmNsdWRlICJzdHJpbmdsaWIvZmFzdHNlYXJjaC5oIiBiZWZvcmUgaW5jbHVkaW5nIHRoaXMgbW9kdWxlCiAjZW5kaWYKQEAgLTU0LDcgKzUxLDcgQEAKICNkZWZpbmUgRklYX1BSRUFMTE9DX1NJWkUobGlzdCkgUHlfU0laRShsaXN0KSA9IGNvdW50CiAKIFB5X0xPQ0FMX0lOTElORShQeU9iamVjdCAqKQotc3RyaW5nbGliX3NwbGl0X3doaXRlc3BhY2UoUHlPYmplY3QqIHN0cl9vYmosCitTVFJJTkdMSUIoc3BsaXRfd2hpdGVzcGFjZSkoUHlPYmplY3QqIHN0cl9vYmosCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQogewpAQCAtMTAyLDcgKzk5LDcgQEAKIH0KIAogUHlfTE9DQUxfSU5MSU5FKFB5T2JqZWN0ICopCi1zdHJpbmdsaWJfc3BsaXRfY2hhcihQeU9iamVjdCogc3RyX29iaiwKK1NUUklOR0xJQihzcGxpdF9jaGFyKShQeU9iamVjdCogc3RyX29iaiwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSIGNoLAogICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhjb3VudCkKQEAgLTE0NSw3ICsxNDIsNyBAQAogfQogCiBQeV9MT0NBTF9JTkxJTkUoUHlPYmplY3QgKikKLXN0cmluZ2xpYl9zcGxpdChQeU9iamVjdCogc3RyX29iaiwKK1NUUklOR0xJQihzcGxpdCkoUHlPYmplY3QqIHN0cl9vYmosCiAgICAgICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAogICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzZXAsIFB5X3NzaXplX3Qgc2VwX2xlbiwKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQpAQCAtMTU4LDcgKzE1NSw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBlbHNlIGlmIChzZXBfbGVuID09IDEpCi0gICAgICAgIHJldHVybiBzdHJpbmdsaWJfc3BsaXRfY2hhcihzdHJfb2JqLCBzdHIsIHN0cl9sZW4sIHNlcFswXSwgbWF4Y291bnQpOworICAgICAgICByZXR1cm4gU1RSSU5HTElCKHNwbGl0X2NoYXIpKHN0cl9vYmosIHN0ciwgc3RyX2xlbiwgc2VwWzBdLCBtYXhjb3VudCk7CiAKICAgICBsaXN0ID0gUHlMaXN0X05ldyhQUkVBTExPQ19TSVpFKG1heGNvdW50KSk7CiAgICAgaWYgKGxpc3QgPT0gTlVMTCkKQEAgLTE2Niw3ICsxNjMsNyBAQAogCiAgICAgaSA9IGogPSAwOwogICAgIHdoaWxlIChtYXhjb3VudC0tID4gMCkgewotICAgICAgICBwb3MgPSBmYXN0c2VhcmNoKHN0citpLCBzdHJfbGVuLWksIHNlcCwgc2VwX2xlbiwgLTEsIEZBU1RfU0VBUkNIKTsKKyAgICAgICAgcG9zID0gRkFTVFNFQVJDSChzdHIraSwgc3RyX2xlbi1pLCBzZXAsIHNlcF9sZW4sIC0xLCBGQVNUX1NFQVJDSCk7CiAgICAgICAgIGlmIChwb3MgPCAwKQogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGogPSBpICsgcG9zOwpAQCAtMTkzLDcgKzE5MCw3IEBACiB9CiAKIFB5X0xPQ0FMX0lOTElORShQeU9iamVjdCAqKQotc3RyaW5nbGliX3JzcGxpdF93aGl0ZXNwYWNlKFB5T2JqZWN0KiBzdHJfb2JqLAorU1RSSU5HTElCKHJzcGxpdF93aGl0ZXNwYWNlKShQeU9iamVjdCogc3RyX29iaiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTVFJJTkdMSUJfQ0hBUiogc3RyLCBQeV9zc2l6ZV90IHN0cl9sZW4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhjb3VudCkKIHsKQEAgLTI0Myw3ICsyNDAsNyBAQAogfQogCiBQeV9MT0NBTF9JTkxJTkUoUHlPYmplY3QgKikKLXN0cmluZ2xpYl9yc3BsaXRfY2hhcihQeU9iamVjdCogc3RyX29iaiwKK1NUUklOR0xJQihyc3BsaXRfY2hhcikoUHlPYmplY3QqIHN0cl9vYmosCiAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAogICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSIGNoLAogICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbWF4Y291bnQpCkBAIC0yODcsNyArMjg0LDcgQEAKIH0KIAogUHlfTE9DQUxfSU5MSU5FKFB5T2JqZWN0ICopCi1zdHJpbmdsaWJfcnNwbGl0KFB5T2JqZWN0KiBzdHJfb2JqLAorU1RSSU5HTElCKHJzcGxpdCkoUHlPYmplY3QqIHN0cl9vYmosCiAgICAgICAgICAgICAgICAgIGNvbnN0IFNUUklOR0xJQl9DSEFSKiBzdHIsIFB5X3NzaXplX3Qgc3RyX2xlbiwKICAgICAgICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHNlcCwgUHlfc3NpemVfdCBzZXBfbGVuLAogICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQpAQCAtMzAwLDcgKzI5Nyw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBlbHNlIGlmIChzZXBfbGVuID09IDEpCi0gICAgICAgIHJldHVybiBzdHJpbmdsaWJfcnNwbGl0X2NoYXIoc3RyX29iaiwgc3RyLCBzdHJfbGVuLCBzZXBbMF0sIG1heGNvdW50KTsKKyAgICAgICAgcmV0dXJuIFNUUklOR0xJQihyc3BsaXRfY2hhcikoc3RyX29iaiwgc3RyLCBzdHJfbGVuLCBzZXBbMF0sIG1heGNvdW50KTsKIAogICAgIGxpc3QgPSBQeUxpc3RfTmV3KFBSRUFMTE9DX1NJWkUobWF4Y291bnQpKTsKICAgICBpZiAobGlzdCA9PSBOVUxMKQpAQCAtMzA4LDcgKzMwNSw3IEBACiAKICAgICBqID0gc3RyX2xlbjsKICAgICB3aGlsZSAobWF4Y291bnQtLSA+IDApIHsKLSAgICAgICAgcG9zID0gZmFzdHNlYXJjaChzdHIsIGosIHNlcCwgc2VwX2xlbiwgLTEsIEZBU1RfUlNFQVJDSCk7CisgICAgICAgIHBvcyA9IEZBU1RTRUFSQ0goc3RyLCBqLCBzZXAsIHNlcF9sZW4sIC0xLCBGQVNUX1JTRUFSQ0gpOwogICAgICAgICBpZiAocG9zIDwgMCkKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBTUExJVF9BREQoc3RyLCBwb3MgKyBzZXBfbGVuLCBqKTsKQEAgLTMzNiw3ICszMzMsNyBAQAogfQogCiBQeV9MT0NBTF9JTkxJTkUoUHlPYmplY3QgKikKLXN0cmluZ2xpYl9zcGxpdGxpbmVzKFB5T2JqZWN0KiBzdHJfb2JqLAorU1RSSU5HTElCKHNwbGl0bGluZXMpKFB5T2JqZWN0KiBzdHJfb2JqLAogICAgICAgICAgICAgICAgICAgICAgY29uc3QgU1RSSU5HTElCX0NIQVIqIHN0ciwgUHlfc3NpemVfdCBzdHJfbGVuLAogICAgICAgICAgICAgICAgICAgICAgaW50IGtlZXBlbmRzKQogewpAQCAtMzkxLDQgKzM4OCwzIEBACiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLSNlbmRpZgpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvc3RyaW5nZGVmcy5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvc3RyaW5nZGVmcy5oCmluZGV4IDFjNDk0MjYuLmZlYzlmMTggMTAwNjQ0Ci0tLSBhL09iamVjdHMvc3RyaW5nbGliL3N0cmluZ2RlZnMuaAorKysgYi9PYmplY3RzL3N0cmluZ2xpYi9zdHJpbmdkZWZzLmgKQEAgLTYsNyArNiwxMCBAQAogICAgY29tcGlsZWQgYXMgdW5pY29kZS4gKi8KICNkZWZpbmUgU1RSSU5HTElCX0lTX1VOSUNPREUgICAgIDAKIAorI2RlZmluZSBGQVNUU0VBUkNIIGZhc3RzZWFyY2gKKyNkZWZpbmUgU1RSSU5HTElCKEYpIHN0cmluZ2xpYl8jI0YKICNkZWZpbmUgU1RSSU5HTElCX09CSkVDVCAgICAgICAgIFB5Qnl0ZXNPYmplY3QKKyNkZWZpbmUgU1RSSU5HTElCX1NJWkVPRl9DSEFSICAgIDEKICNkZWZpbmUgU1RSSU5HTElCX0NIQVIgICAgICAgICAgIGNoYXIKICNkZWZpbmUgU1RSSU5HTElCX1RZUEVfTkFNRSAgICAgICJzdHJpbmciCiAjZGVmaW5lIFNUUklOR0xJQl9QQVJTRV9DT0RFICAgICAiUyIKQEAgLTE1LDkgKzE4LDYgQEAKICNkZWZpbmUgU1RSSU5HTElCX0lTTElORUJSRUFLKHgpICgoeCA9PSAnXG4nKSB8fCAoeCA9PSAnXHInKSkKICNkZWZpbmUgU1RSSU5HTElCX0lTREVDSU1BTCh4KSAgICgoeCA+PSAnMCcpICYmICh4IDw9ICc5JykpCiAjZGVmaW5lIFNUUklOR0xJQl9UT0RFQ0lNQUwoeCkgICAoU1RSSU5HTElCX0lTREVDSU1BTCh4KSA/ICh4IC0gJzAnKSA6IC0xKQotI2RlZmluZSBTVFJJTkdMSUJfVE9VUFBFUiAgICAgICAgUHlfVE9VUFBFUgotI2RlZmluZSBTVFJJTkdMSUJfVE9MT1dFUiAgICAgICAgUHlfVE9MT1dFUgotI2RlZmluZSBTVFJJTkdMSUJfRklMTCAgICAgICAgICAgbWVtc2V0CiAjZGVmaW5lIFNUUklOR0xJQl9TVFIgICAgICAgICAgICBQeUJ5dGVzX0FTX1NUUklORwogI2RlZmluZSBTVFJJTkdMSUJfTEVOICAgICAgICAgICAgUHlCeXRlc19HRVRfU0laRQogI2RlZmluZSBTVFJJTkdMSUJfTkVXICAgICAgICAgICAgUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZQpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvdWNzMWxpYi5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvdWNzMWxpYi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQyYjlkOTEKLS0tIC9kZXYvbnVsbAorKysgYi9PYmplY3RzL3N0cmluZ2xpYi91Y3MxbGliLmgKQEAgLTAsMCArMSwzMyBAQAorLyogdGhpcyBpcyBzb3J0IG9mIGEgaGFjay4gIHRoZXJlJ3MgYXQgbGVhc3Qgb25lIHBsYWNlIChmb3JtYXR0aW5nCisgICBmbG9hdHMpIHdoZXJlIHNvbWUgc3RyaW5nbGliIGNvZGUgdGFrZXMgYSBkaWZmZXJlbnQgcGF0aCBpZiBpdCdzCisgICBjb21waWxlZCBhcyB1bmljb2RlLiAqLworI2RlZmluZSBTVFJJTkdMSUJfSVNfVU5JQ09ERSAgICAgMQorCisjZGVmaW5lIEZBU1RTRUFSQ0ggICAgICAgICAgICAgICB1Y3MxbGliX2Zhc3RzZWFyY2gKKyNkZWZpbmUgU1RSSU5HTElCKEYpICAgICAgICAgICAgIHVjczFsaWJfIyNGCisjZGVmaW5lIFNUUklOR0xJQl9PQkpFQ1QgICAgICAgICBQeVVuaWNvZGVPYmplY3QKKyNkZWZpbmUgU1RSSU5HTElCX1NJWkVPRl9DSEFSICAgIDEKKyNkZWZpbmUgU1RSSU5HTElCX0NIQVIgICAgICAgICAgIFB5X1VDUzEKKyNkZWZpbmUgU1RSSU5HTElCX1RZUEVfTkFNRSAgICAgICJ1bmljb2RlIgorI2RlZmluZSBTVFJJTkdMSUJfUEFSU0VfQ09ERSAgICAgIlUiCisjZGVmaW5lIFNUUklOR0xJQl9FTVBUWSAgICAgICAgICB1bmljb2RlX2VtcHR5CisjZGVmaW5lIFNUUklOR0xJQl9JU1NQQUNFICAgICAgICBQeV9VTklDT0RFX0lTU1BBQ0UKKyNkZWZpbmUgU1RSSU5HTElCX0lTTElORUJSRUFLICAgIEJMT09NX0xJTkVCUkVBSworI2RlZmluZSBTVFJJTkdMSUJfSVNERUNJTUFMICAgICAgUHlfVU5JQ09ERV9JU0RFQ0lNQUwKKyNkZWZpbmUgU1RSSU5HTElCX1RPREVDSU1BTCAgICAgIFB5X1VOSUNPREVfVE9ERUNJTUFMCisjZGVmaW5lIFNUUklOR0xJQl9TVFIgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQQorI2RlZmluZSBTVFJJTkdMSUJfTEVOICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgKKyNkZWZpbmUgU1RSSU5HTElCX05FVyAgICAgICAgICAgIF9QeVVuaWNvZGVfRnJvbVVDUzEKKyNkZWZpbmUgU1RSSU5HTElCX1JFU0laRSAgICAgICAgIG5vdF9zdXBwb3J0ZWQKKyNkZWZpbmUgU1RSSU5HTElCX0NIRUNLICAgICAgICAgIFB5VW5pY29kZV9DaGVjaworI2RlZmluZSBTVFJJTkdMSUJfQ0hFQ0tfRVhBQ1QgICAgUHlVbmljb2RlX0NoZWNrRXhhY3QKKyNkZWZpbmUgU1RSSU5HTElCX0dST1VQSU5HICAgICAgIF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcKKyNkZWZpbmUgU1RSSU5HTElCX0dST1VQSU5HX0xPQ0FMRSBfUHlVbmljb2RlX0luc2VydFRob3VzYW5kc0dyb3VwaW5nTG9jYWxlCisKKyNkZWZpbmUgU1RSSU5HTElCX1RPU1RSICAgICAgICAgIFB5T2JqZWN0X1N0cgorI2RlZmluZSBTVFJJTkdMSUJfVE9BU0NJSSAgICAgICAgUHlPYmplY3RfQVNDSUkKKworI2RlZmluZSBfUHlfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcgX1B5VW5pY29kZV91Y3MxX0luc2VydFRob3VzYW5kc0dyb3VwaW5nCisjZGVmaW5lIF9QeV9JbnNlcnRUaG91c2FuZHNHcm91cGluZ0xvY2FsZSBfUHlVbmljb2RlX3VjczFfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmdMb2NhbGUKKworCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi91Y3MybGliLmggYi9PYmplY3RzL3N0cmluZ2xpYi91Y3MybGliLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjExZTc0MQotLS0gL2Rldi9udWxsCisrKyBiL09iamVjdHMvc3RyaW5nbGliL3VjczJsaWIuaApAQCAtMCwwICsxLDMyIEBACisvKiB0aGlzIGlzIHNvcnQgb2YgYSBoYWNrLiAgdGhlcmUncyBhdCBsZWFzdCBvbmUgcGxhY2UgKGZvcm1hdHRpbmcKKyAgIGZsb2F0cykgd2hlcmUgc29tZSBzdHJpbmdsaWIgY29kZSB0YWtlcyBhIGRpZmZlcmVudCBwYXRoIGlmIGl0J3MKKyAgIGNvbXBpbGVkIGFzIHVuaWNvZGUuICovCisjZGVmaW5lIFNUUklOR0xJQl9JU19VTklDT0RFICAgICAxCisKKyNkZWZpbmUgRkFTVFNFQVJDSCAgICAgICAgICAgICAgIHVjczJsaWJfZmFzdHNlYXJjaAorI2RlZmluZSBTVFJJTkdMSUIoRikgICAgICAgICAgICAgdWNzMmxpYl8jI0YKKyNkZWZpbmUgU1RSSU5HTElCX09CSkVDVCAgICAgICAgIFB5VW5pY29kZU9iamVjdAorI2RlZmluZSBTVFJJTkdMSUJfU0laRU9GX0NIQVIgICAgMgorI2RlZmluZSBTVFJJTkdMSUJfQ0hBUiAgICAgICAgICAgUHlfVUNTMgorI2RlZmluZSBTVFJJTkdMSUJfVFlQRV9OQU1FICAgICAgInVuaWNvZGUiCisjZGVmaW5lIFNUUklOR0xJQl9QQVJTRV9DT0RFICAgICAiVSIKKyNkZWZpbmUgU1RSSU5HTElCX0VNUFRZICAgICAgICAgIHVuaWNvZGVfZW1wdHkKKyNkZWZpbmUgU1RSSU5HTElCX0lTU1BBQ0UgICAgICAgIFB5X1VOSUNPREVfSVNTUEFDRQorI2RlZmluZSBTVFJJTkdMSUJfSVNMSU5FQlJFQUsgICAgQkxPT01fTElORUJSRUFLCisjZGVmaW5lIFNUUklOR0xJQl9JU0RFQ0lNQUwgICAgICBQeV9VTklDT0RFX0lTREVDSU1BTAorI2RlZmluZSBTVFJJTkdMSUJfVE9ERUNJTUFMICAgICAgUHlfVU5JQ09ERV9UT0RFQ0lNQUwKKyNkZWZpbmUgU1RSSU5HTElCX1NUUiAgICAgICAgICAgIFB5VW5pY29kZV8yQllURV9EQVRBCisjZGVmaW5lIFNUUklOR0xJQl9MRU4gICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSAorI2RlZmluZSBTVFJJTkdMSUJfTkVXICAgICAgICAgICAgX1B5VW5pY29kZV9Gcm9tVUNTMgorI2RlZmluZSBTVFJJTkdMSUJfUkVTSVpFICAgICAgICAgbm90X3N1cHBvcnRlZAorI2RlZmluZSBTVFJJTkdMSUJfQ0hFQ0sgICAgICAgICAgUHlVbmljb2RlX0NoZWNrCisjZGVmaW5lIFNUUklOR0xJQl9DSEVDS19FWEFDVCAgICBQeVVuaWNvZGVfQ2hlY2tFeGFjdAorI2RlZmluZSBTVFJJTkdMSUJfR1JPVVBJTkcgICAgICAgX1B5VW5pY29kZV9JbnNlcnRUaG91c2FuZHNHcm91cGluZworI2RlZmluZSBTVFJJTkdMSUJfR1JPVVBJTkdfTE9DQUxFIF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmdMb2NhbGUKKworI2RlZmluZSBTVFJJTkdMSUJfVE9TVFIgICAgICAgICAgUHlPYmplY3RfU3RyCisjZGVmaW5lIFNUUklOR0xJQl9UT0FTQ0lJICAgICAgICBQeU9iamVjdF9BU0NJSQorCisjZGVmaW5lIF9QeV9JbnNlcnRUaG91c2FuZHNHcm91cGluZyBfUHlVbmljb2RlX3VjczJfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcKKyNkZWZpbmUgX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nTG9jYWxlIF9QeVVuaWNvZGVfdWNzMl9JbnNlcnRUaG91c2FuZHNHcm91cGluZ0xvY2FsZQorCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi91Y3M0bGliLmggYi9PYmplY3RzL3N0cmluZ2xpYi91Y3M0bGliLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzMwYjI5MgotLS0gL2Rldi9udWxsCisrKyBiL09iamVjdHMvc3RyaW5nbGliL3VjczRsaWIuaApAQCAtMCwwICsxLDMyIEBACisvKiB0aGlzIGlzIHNvcnQgb2YgYSBoYWNrLiAgdGhlcmUncyBhdCBsZWFzdCBvbmUgcGxhY2UgKGZvcm1hdHRpbmcKKyAgIGZsb2F0cykgd2hlcmUgc29tZSBzdHJpbmdsaWIgY29kZSB0YWtlcyBhIGRpZmZlcmVudCBwYXRoIGlmIGl0J3MKKyAgIGNvbXBpbGVkIGFzIHVuaWNvZGUuICovCisjZGVmaW5lIFNUUklOR0xJQl9JU19VTklDT0RFICAgICAxCisKKyNkZWZpbmUgRkFTVFNFQVJDSCAgICAgICAgICAgICAgIHVjczRsaWJfZmFzdHNlYXJjaAorI2RlZmluZSBTVFJJTkdMSUIoRikgICAgICAgICAgICAgdWNzNGxpYl8jI0YKKyNkZWZpbmUgU1RSSU5HTElCX09CSkVDVCAgICAgICAgIFB5VW5pY29kZU9iamVjdAorI2RlZmluZSBTVFJJTkdMSUJfU0laRU9GX0NIQVIgICAgNAorI2RlZmluZSBTVFJJTkdMSUJfQ0hBUiAgICAgICAgICAgUHlfVUNTNAorI2RlZmluZSBTVFJJTkdMSUJfVFlQRV9OQU1FICAgICAgInVuaWNvZGUiCisjZGVmaW5lIFNUUklOR0xJQl9QQVJTRV9DT0RFICAgICAiVSIKKyNkZWZpbmUgU1RSSU5HTElCX0VNUFRZICAgICAgICAgIHVuaWNvZGVfZW1wdHkKKyNkZWZpbmUgU1RSSU5HTElCX0lTU1BBQ0UgICAgICAgIFB5X1VOSUNPREVfSVNTUEFDRQorI2RlZmluZSBTVFJJTkdMSUJfSVNMSU5FQlJFQUsgICAgQkxPT01fTElORUJSRUFLCisjZGVmaW5lIFNUUklOR0xJQl9JU0RFQ0lNQUwgICAgICBQeV9VTklDT0RFX0lTREVDSU1BTAorI2RlZmluZSBTVFJJTkdMSUJfVE9ERUNJTUFMICAgICAgUHlfVU5JQ09ERV9UT0RFQ0lNQUwKKyNkZWZpbmUgU1RSSU5HTElCX1NUUiAgICAgICAgICAgIFB5VW5pY29kZV80QllURV9EQVRBCisjZGVmaW5lIFNUUklOR0xJQl9MRU4gICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSAorI2RlZmluZSBTVFJJTkdMSUJfTkVXICAgICAgICAgICAgX1B5VW5pY29kZV9Gcm9tVUNTNAorI2RlZmluZSBTVFJJTkdMSUJfUkVTSVpFICAgICAgICAgbm90X3N1cHBvcnRlZAorI2RlZmluZSBTVFJJTkdMSUJfQ0hFQ0sgICAgICAgICAgUHlVbmljb2RlX0NoZWNrCisjZGVmaW5lIFNUUklOR0xJQl9DSEVDS19FWEFDVCAgICBQeVVuaWNvZGVfQ2hlY2tFeGFjdAorI2RlZmluZSBTVFJJTkdMSUJfR1JPVVBJTkcgICAgICAgX1B5VW5pY29kZV9JbnNlcnRUaG91c2FuZHNHcm91cGluZworI2RlZmluZSBTVFJJTkdMSUJfR1JPVVBJTkdfTE9DQUxFIF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmdMb2NhbGUKKworI2RlZmluZSBTVFJJTkdMSUJfVE9TVFIgICAgICAgICAgUHlPYmplY3RfU3RyCisjZGVmaW5lIFNUUklOR0xJQl9UT0FTQ0lJICAgICAgICBQeU9iamVjdF9BU0NJSQorCisjZGVmaW5lIF9QeV9JbnNlcnRUaG91c2FuZHNHcm91cGluZyBfUHlVbmljb2RlX3VjczRfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcKKyNkZWZpbmUgX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nTG9jYWxlIF9QeVVuaWNvZGVfdWNzNF9JbnNlcnRUaG91c2FuZHNHcm91cGluZ0xvY2FsZQorCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi91bmRlZi5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvdW5kZWYuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZDg3ZTU2Ci0tLSAvZGV2L251bGwKKysrIGIvT2JqZWN0cy9zdHJpbmdsaWIvdW5kZWYuaApAQCAtMCwwICsxLDExIEBACisjdW5kZWYgIEZBU1RTRUFSQ0gKKyN1bmRlZiAgU1RSSU5HTElCCisjdW5kZWYgIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUgorI3VuZGVmICBTVFJJTkdMSUJfQ0hBUgorI3VuZGVmICBTVFJJTkdMSUJfU1RSCisjdW5kZWYgIFNUUklOR0xJQl9MRU4KKyN1bmRlZiAgU1RSSU5HTElCX05FVworI3VuZGVmICBTVFJJTkdMSUJfUkVTSVpFCisjdW5kZWYgIF9QeV9JbnNlcnRUaG91c2FuZHNHcm91cGluZworI3VuZGVmICBfUHlfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmdMb2NhbGUKKwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy9zdHJpbmdsaWIvc3RyaW5nX2Zvcm1hdC5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvdW5pY29kZV9mb3JtYXQuaApzaW1pbGFyaXR5IGluZGV4IDc5JQpyZW5hbWUgZnJvbSBPYmplY3RzL3N0cmluZ2xpYi9zdHJpbmdfZm9ybWF0LmgKcmVuYW1lIHRvIE9iamVjdHMvc3RyaW5nbGliL3VuaWNvZGVfZm9ybWF0LmgKaW5kZXggNmM3YWRjYi4uZjA1ODQ3YSAxMDA2NDQKLS0tIGEvT2JqZWN0cy9zdHJpbmdsaWIvc3RyaW5nX2Zvcm1hdC5oCisrKyBiL09iamVjdHMvc3RyaW5nbGliL3VuaWNvZGVfZm9ybWF0LmgKQEAgLTEsMTYgKzEsOCBAQAogLyoKLSAgICBzdHJpbmdfZm9ybWF0LmggLS0gaW1wbGVtZW50YXRpb24gb2Ygc3RyaW5nLmZvcm1hdCgpLgotCi0gICAgSXQgdXNlcyB0aGUgT2JqZWN0cy9zdHJpbmdsaWIgY29udmVudGlvbnMsIHNvIHRoYXQgaXQgY2FuIGJlCi0gICAgY29tcGlsZWQgZm9yIGJvdGggdW5pY29kZSBhbmQgc3RyaW5nIG9iamVjdHMuCisgICAgdW5pY29kZV9mb3JtYXQuaCAtLSBpbXBsZW1lbnRhdGlvbiBvZiBzdHIuZm9ybWF0KCkuCiAqLwogCiAKLS8qIERlZmluZXMgZm9yIFB5dGhvbiAyLjYgY29tcGF0aWJpbGl0eSAqLwotI2lmIFBZX1ZFUlNJT05fSEVYIDwgMHgwMzAwMDAwMAotI2RlZmluZSBQeUxvbmdfRnJvbVNzaXplX3QgX1B5TG9uZ19Gcm9tU3NpemVfdAotI2VuZGlmCi0KIC8qIERlZmluZXMgZm9yIG1vcmUgZWZmaWNpZW50bHkgcmVhbGxvY2F0aW5nIHRoZSBzdHJpbmcgYnVmZmVyICovCiAjZGVmaW5lIElOSVRJQUxfU0laRV9JTkNSRU1FTlQgMTAwCiAjZGVmaW5lIFNJWkVfTVVMVElQTElFUiAyCkBAIC0yNiw4ICsxOCw4IEBACiAgICB1bmljb2RlIHBvaW50ZXJzLgogKi8KIHR5cGVkZWYgc3RydWN0IHsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqcHRyOwotICAgIFNUUklOR0xJQl9DSEFSICplbmQ7CisgICAgUHlPYmplY3QgKnN0cjsgLyogYm9ycm93ZWQgcmVmZXJlbmNlICovCisgICAgUHlfc3NpemVfdCBzdGFydCwgZW5kOwogfSBTdWJTdHJpbmc7CiAKIApAQCAtNjQsMzQgKzU2LDMyIEBACiAKIC8qIGZpbGwgaW4gYSBTdWJTdHJpbmcgZnJvbSBhIHBvaW50ZXIgYW5kIGxlbmd0aCAqLwogUHlfTE9DQUxfSU5MSU5FKHZvaWQpCi1TdWJTdHJpbmdfaW5pdChTdWJTdHJpbmcgKnN0ciwgU1RSSU5HTElCX0NIQVIgKnAsIFB5X3NzaXplX3QgbGVuKQorU3ViU3RyaW5nX2luaXQoU3ViU3RyaW5nICpzdHIsIFB5T2JqZWN0ICpzLCBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCkKIHsKLSAgICBzdHItPnB0ciA9IHA7Ci0gICAgaWYgKHAgPT0gTlVMTCkKLSAgICAgICAgc3RyLT5lbmQgPSBOVUxMOwotICAgIGVsc2UKLSAgICAgICAgc3RyLT5lbmQgPSBzdHItPnB0ciArIGxlbjsKKyAgICBzdHItPnN0ciA9IHM7CisgICAgc3RyLT5zdGFydCA9IHN0YXJ0OworICAgIHN0ci0+ZW5kID0gZW5kOwogfQogCi0vKiByZXR1cm4gYSBuZXcgc3RyaW5nLiAgaWYgc3RyLT5wdHIgaXMgTlVMTCwgcmV0dXJuIE5vbmUgKi8KKy8qIHJldHVybiBhIG5ldyBzdHJpbmcuICBpZiBzdHItPnN0ciBpcyBOVUxMLCByZXR1cm4gTm9uZSAqLwogUHlfTE9DQUxfSU5MSU5FKFB5T2JqZWN0ICopCiBTdWJTdHJpbmdfbmV3X29iamVjdChTdWJTdHJpbmcgKnN0cikKIHsKLSAgICBpZiAoc3RyLT5wdHIgPT0gTlVMTCkgeworICAgIGlmIChzdHItPnN0ciA9PSBOVUxMKSB7CiAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICAgICAgcmV0dXJuIFB5X05vbmU7CiAgICAgfQotICAgIHJldHVybiBTVFJJTkdMSUJfTkVXKHN0ci0+cHRyLCBzdHItPmVuZCAtIHN0ci0+cHRyKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX1N1YnN0cmluZyhzdHItPnN0ciwgc3RyLT5zdGFydCwgc3RyLT5lbmQpOwogfQogCi0vKiByZXR1cm4gYSBuZXcgc3RyaW5nLiAgaWYgc3RyLT5wdHIgaXMgTlVMTCwgcmV0dXJuIE5vbmUgKi8KKy8qIHJldHVybiBhIG5ldyBzdHJpbmcuICBpZiBzdHItPnN0ciBpcyBOVUxMLCByZXR1cm4gTm9uZSAqLwogUHlfTE9DQUxfSU5MSU5FKFB5T2JqZWN0ICopCiBTdWJTdHJpbmdfbmV3X29iamVjdF9vcl9lbXB0eShTdWJTdHJpbmcgKnN0cikKIHsKLSAgICBpZiAoc3RyLT5wdHIgPT0gTlVMTCkgewotICAgICAgICByZXR1cm4gU1RSSU5HTElCX05FVyhOVUxMLCAwKTsKKyAgICBpZiAoc3RyLT5zdHIgPT0gTlVMTCkgeworICAgICAgICByZXR1cm4gUHlVbmljb2RlX05ldygwLCAwKTsKICAgICB9Ci0gICAgcmV0dXJuIFNUUklOR0xJQl9ORVcoc3RyLT5wdHIsIHN0ci0+ZW5kIC0gc3RyLT5wdHIpOworICAgIHJldHVybiBTdWJTdHJpbmdfbmV3X29iamVjdChzdHIpOwogfQogCiAvKiBSZXR1cm4gMSBpZiBhbiBlcnJvciBoYXMgYmVlbiBkZXRlY3RlZCBzd2l0Y2hpbmcgYmV0d2VlbiBhdXRvbWF0aWMKQEAgLTEyNCw1MSArMTE0LDYgQEAKIC8qKioqKioqKioqKiAgICBPdXRwdXQgc3RyaW5nIG1hbmFnZW1lbnQgZnVuY3Rpb25zICAgICAgICoqKioqKioqKioqKioqKiovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogCi10eXBlZGVmIHN0cnVjdCB7Ci0gICAgU1RSSU5HTElCX0NIQVIgKnB0cjsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqZW5kOwotICAgIFB5T2JqZWN0ICpvYmo7Ci0gICAgUHlfc3NpemVfdCBzaXplX2luY3JlbWVudDsKLX0gT3V0cHV0U3RyaW5nOwotCi0vKiBpbml0aWFsaXplIGFuIE91dHB1dFN0cmluZyBvYmplY3QsIHJlc2VydmluZyBzaXplIGNoYXJhY3RlcnMgKi8KLXN0YXRpYyBpbnQKLW91dHB1dF9pbml0aWFsaXplKE91dHB1dFN0cmluZyAqb3V0cHV0LCBQeV9zc2l6ZV90IHNpemUpCi17Ci0gICAgb3V0cHV0LT5vYmogPSBTVFJJTkdMSUJfTkVXKE5VTEwsIHNpemUpOwotICAgIGlmIChvdXRwdXQtPm9iaiA9PSBOVUxMKQotICAgICAgICByZXR1cm4gMDsKLQotICAgIG91dHB1dC0+cHRyID0gU1RSSU5HTElCX1NUUihvdXRwdXQtPm9iaik7Ci0gICAgb3V0cHV0LT5lbmQgPSBTVFJJTkdMSUJfTEVOKG91dHB1dC0+b2JqKSArIG91dHB1dC0+cHRyOwotICAgIG91dHB1dC0+c2l6ZV9pbmNyZW1lbnQgPSBJTklUSUFMX1NJWkVfSU5DUkVNRU5UOwotCi0gICAgcmV0dXJuIDE7Ci19Ci0KLS8qCi0gICAgb3V0cHV0X2V4dGVuZCByZWFsbG9jYXRlcyB0aGUgb3V0cHV0IHN0cmluZyBidWZmZXIuCi0gICAgSXQgcmV0dXJucyBhIHN0YXR1czogIDAgZm9yIGEgZmFpbGVkIHJlYWxsb2NhdGlvbiwKLSAgICAxIGZvciBzdWNjZXNzLgotKi8KLQotc3RhdGljIGludAotb3V0cHV0X2V4dGVuZChPdXRwdXRTdHJpbmcgKm91dHB1dCwgUHlfc3NpemVfdCBjb3VudCkKLXsKLSAgICBTVFJJTkdMSUJfQ0hBUiAqc3RhcnRwdHIgPSBTVFJJTkdMSUJfU1RSKG91dHB1dC0+b2JqKTsKLSAgICBQeV9zc2l6ZV90IGN1cmxlbiA9IG91dHB1dC0+cHRyIC0gc3RhcnRwdHI7Ci0gICAgUHlfc3NpemVfdCBtYXhsZW4gPSBjdXJsZW4gKyBjb3VudCArIG91dHB1dC0+c2l6ZV9pbmNyZW1lbnQ7Ci0KLSAgICBpZiAoU1RSSU5HTElCX1JFU0laRSgmb3V0cHV0LT5vYmosIG1heGxlbikgPCAwKQotICAgICAgICByZXR1cm4gMDsKLSAgICBzdGFydHB0ciA9IFNUUklOR0xJQl9TVFIob3V0cHV0LT5vYmopOwotICAgIG91dHB1dC0+cHRyID0gc3RhcnRwdHIgKyBjdXJsZW47Ci0gICAgb3V0cHV0LT5lbmQgPSBzdGFydHB0ciArIG1heGxlbjsKLSAgICBpZiAob3V0cHV0LT5zaXplX2luY3JlbWVudCA8IE1BWF9TSVpFX0lOQ1JFTUVOVCkKLSAgICAgICAgb3V0cHV0LT5zaXplX2luY3JlbWVudCAqPSBTSVpFX01VTFRJUExJRVI7Ci0gICAgcmV0dXJuIDE7Ci19Ci0KIC8qCiAgICAgb3V0cHV0X2RhdGEgZHVtcHMgY2hhcmFjdGVycyBpbnRvIG91ciBvdXRwdXQgc3RyaW5nCiAgICAgYnVmZmVyLgpAQCAtMTc5LDEzICsxMjQsMTcgQEAKICAgICAxIGZvciBzdWNjZXNzLgogKi8KIHN0YXRpYyBpbnQKLW91dHB1dF9kYXRhKE91dHB1dFN0cmluZyAqb3V0cHV0LCBjb25zdCBTVFJJTkdMSUJfQ0hBUiAqcywgUHlfc3NpemVfdCBjb3VudCkKK291dHB1dF9kYXRhKF9QeUFjY3UgKmFjYywgUHlPYmplY3QgKnMsIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kKQogewotICAgIGlmICgoY291bnQgPiBvdXRwdXQtPmVuZCAtIG91dHB1dC0+cHRyKSAmJiAhb3V0cHV0X2V4dGVuZChvdXRwdXQsIGNvdW50KSkKKyAgICBQeU9iamVjdCAqc3Vic3RyaW5nOworICAgIGludCByOworCisgICAgc3Vic3RyaW5nID0gUHlVbmljb2RlX1N1YnN0cmluZyhzLCBzdGFydCwgZW5kKTsKKyAgICBpZiAoc3Vic3RyaW5nID09IE5VTEwpCiAgICAgICAgIHJldHVybiAwOwotICAgIG1lbWNweShvdXRwdXQtPnB0ciwgcywgY291bnQgKiBzaXplb2YoU1RSSU5HTElCX0NIQVIpKTsKLSAgICBvdXRwdXQtPnB0ciArPSBjb3VudDsKLSAgICByZXR1cm4gMTsKKyAgICByID0gX1B5QWNjdV9BY2N1bXVsYXRlKGFjYywgc3Vic3RyaW5nKTsKKyAgICBQeV9ERUNSRUYoc3Vic3RyaW5nKTsKKyAgICByZXR1cm4gciA9PSAwOwogfQogCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwpAQCAtMTk3LDMxICsxNDYsMjggQEAKIHsKICAgICBQeV9zc2l6ZV90IGFjY3VtdWxhdG9yID0gMDsKICAgICBQeV9zc2l6ZV90IGRpZ2l0dmFsOwotICAgIFB5X3NzaXplX3Qgb2xkYWNjdW11bGF0b3I7Ci0gICAgU1RSSU5HTElCX0NIQVIgKnA7CisgICAgUHlfc3NpemVfdCBpOwogCiAgICAgLyogZW1wdHkgc3RyaW5nIGlzIGFuIGVycm9yICovCi0gICAgaWYgKHN0ci0+cHRyID49IHN0ci0+ZW5kKQorICAgIGlmIChzdHItPnN0YXJ0ID49IHN0ci0+ZW5kKQogICAgICAgICByZXR1cm4gLTE7CiAKLSAgICBmb3IgKHAgPSBzdHItPnB0cjsgcCA8IHN0ci0+ZW5kOyBwKyspIHsKLSAgICAgICAgZGlnaXR2YWwgPSBTVFJJTkdMSUJfVE9ERUNJTUFMKCpwKTsKKyAgICBmb3IgKGkgPSBzdHItPnN0YXJ0OyBpIDwgc3RyLT5lbmQ7IGkrKykgeworICAgICAgICBkaWdpdHZhbCA9IFB5X1VOSUNPREVfVE9ERUNJTUFMKFB5VW5pY29kZV9SRUFEX0NIQVIoc3RyLT5zdHIsIGkpKTsKICAgICAgICAgaWYgKGRpZ2l0dmFsIDwgMCkKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgLyoKLSAgICAgICAgICAgVGhpcyB0cmljayB3YXMgY29waWVkIGZyb20gb2xkIFVuaWNvZGUgZm9ybWF0IGNvZGUuICBJdCdzIGN1dGUsCi0gICAgICAgICAgIGJ1dCB3b3VsZCByZWFsbHkgc3VjayBvbiBhbiBvbGQgbWFjaGluZSB3aXRoIGEgc2xvdyBkaXZpZGUKLSAgICAgICAgICAgaW1wbGVtZW50YXRpb24uICBGb3J0dW5hdGVseSwgaW4gdGhlIG5vcm1hbCBjYXNlIHdlIGRvIG5vdAotICAgICAgICAgICBleHBlY3QgdG9vIG1hbnkgZGlnaXRzLgorICAgICAgICAgICBEZXRlY3QgcG9zc2libGUgb3ZlcmZsb3cgYmVmb3JlIGl0IGhhcHBlbnM6CisKKyAgICAgICAgICAgICAgYWNjdW11bGF0b3IgKiAxMCArIGRpZ2l0dmFsID4gUFlfU1NJWkVfVF9NQVggaWYgYW5kIG9ubHkgaWYKKyAgICAgICAgICAgICAgYWNjdW11bGF0b3IgPiAoUFlfU1NJWkVfVF9NQVggLSBkaWdpdHZhbCkgLyAxMC4KICAgICAgICAgKi8KLSAgICAgICAgb2xkYWNjdW11bGF0b3IgPSBhY2N1bXVsYXRvcjsKLSAgICAgICAgYWNjdW11bGF0b3IgKj0gMTA7Ci0gICAgICAgIGlmICgoYWNjdW11bGF0b3IrMTApLzEwICE9IG9sZGFjY3VtdWxhdG9yKzEpIHsKKyAgICAgICAgaWYgKGFjY3VtdWxhdG9yID4gKFBZX1NTSVpFX1RfTUFYIC0gZGlnaXR2YWwpIC8gMTApIHsKICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICJUb28gbWFueSBkZWNpbWFsIGRpZ2l0cyBpbiBmb3JtYXQgc3RyaW5nIik7CiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIH0KLSAgICAgICAgYWNjdW11bGF0b3IgKz0gZGlnaXR2YWw7CisgICAgICAgIGFjY3VtdWxhdG9yID0gYWNjdW11bGF0b3IgKiAxMCArIGRpZ2l0dmFsOwogICAgIH0KICAgICByZXR1cm4gYWNjdW11bGF0b3I7CiB9CkBAIC0yODIsMzQgKzIyOCwzNiBAQAogICAgICAgIGxpZmV0aW1lIG9mIHRoZSBpdGVyYXRvci4gIGNhbiBiZSBlbXB0eSAqLwogICAgIFN1YlN0cmluZyBzdHI7CiAKLSAgICAvKiBwb2ludGVyIHRvIHdoZXJlIHdlIGFyZSBpbnNpZGUgZmllbGRfbmFtZSAqLwotICAgIFNUUklOR0xJQl9DSEFSICpwdHI7CisgICAgLyogaW5kZXggdG8gd2hlcmUgd2UgYXJlIGluc2lkZSBmaWVsZF9uYW1lICovCisgICAgUHlfc3NpemVfdCBpbmRleDsKIH0gRmllbGROYW1lSXRlcmF0b3I7CiAKIAogc3RhdGljIGludAotRmllbGROYW1lSXRlcmF0b3JfaW5pdChGaWVsZE5hbWVJdGVyYXRvciAqc2VsZiwgU1RSSU5HTElCX0NIQVIgKnB0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW4pCitGaWVsZE5hbWVJdGVyYXRvcl9pbml0KEZpZWxkTmFtZUl0ZXJhdG9yICpzZWxmLCBQeU9iamVjdCAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQpCiB7Ci0gICAgU3ViU3RyaW5nX2luaXQoJnNlbGYtPnN0ciwgcHRyLCBsZW4pOwotICAgIHNlbGYtPnB0ciA9IHNlbGYtPnN0ci5wdHI7CisgICAgU3ViU3RyaW5nX2luaXQoJnNlbGYtPnN0ciwgcywgc3RhcnQsIGVuZCk7CisgICAgc2VsZi0+aW5kZXggPSBzdGFydDsKICAgICByZXR1cm4gMTsKIH0KIAogc3RhdGljIGludAogX0ZpZWxkTmFtZUl0ZXJhdG9yX2F0dHIoRmllbGROYW1lSXRlcmF0b3IgKnNlbGYsIFN1YlN0cmluZyAqbmFtZSkKIHsKLSAgICBTVFJJTkdMSUJfQ0hBUiBjOworICAgIFB5X1VDUzQgYzsKIAotICAgIG5hbWUtPnB0ciA9IHNlbGYtPnB0cjsKKyAgICBuYW1lLT5zdHIgPSBzZWxmLT5zdHIuc3RyOworICAgIG5hbWUtPnN0YXJ0ID0gc2VsZi0+aW5kZXg7CiAKICAgICAvKiByZXR1cm4gZXZlcnl0aGluZyB1bnRpbCAnLicgb3IgJ1snICovCi0gICAgd2hpbGUgKHNlbGYtPnB0ciA8IHNlbGYtPnN0ci5lbmQpIHsKLSAgICAgICAgc3dpdGNoIChjID0gKnNlbGYtPnB0cisrKSB7CisgICAgd2hpbGUgKHNlbGYtPmluZGV4IDwgc2VsZi0+c3RyLmVuZCkgeworICAgICAgICBjID0gUHlVbmljb2RlX1JFQURfQ0hBUihzZWxmLT5zdHIuc3RyLCBzZWxmLT5pbmRleCsrKTsKKyAgICAgICAgc3dpdGNoIChjKSB7CiAgICAgICAgIGNhc2UgJ1snOgogICAgICAgICBjYXNlICcuJzoKICAgICAgICAgICAgIC8qIGJhY2t1cCBzbyB0aGF0IHdlIHRoaXMgY2hhcmFjdGVyIHdpbGwgYmUgc2VlbiBuZXh0IHRpbWUgKi8KLSAgICAgICAgICAgIHNlbGYtPnB0ci0tOworICAgICAgICAgICAgc2VsZi0+aW5kZXgtLTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgY29udGludWU7CkBAIC0zMTcsNyArMjY1LDcgQEAKICAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIC8qIGVuZCBvZiBzdHJpbmcgaXMgb2theSAqLwotICAgIG5hbWUtPmVuZCA9IHNlbGYtPnB0cjsKKyAgICBuYW1lLT5lbmQgPSBzZWxmLT5pbmRleDsKICAgICByZXR1cm4gMTsKIH0KIApAQCAtMzI1LDEzICsyNzMsMTUgQEAKIF9GaWVsZE5hbWVJdGVyYXRvcl9pdGVtKEZpZWxkTmFtZUl0ZXJhdG9yICpzZWxmLCBTdWJTdHJpbmcgKm5hbWUpCiB7CiAgICAgaW50IGJyYWNrZXRfc2VlbiA9IDA7Ci0gICAgU1RSSU5HTElCX0NIQVIgYzsKKyAgICBQeV9VQ1M0IGM7CiAKLSAgICBuYW1lLT5wdHIgPSBzZWxmLT5wdHI7CisgICAgbmFtZS0+c3RyID0gc2VsZi0+c3RyLnN0cjsKKyAgICBuYW1lLT5zdGFydCA9IHNlbGYtPmluZGV4OwogCiAgICAgLyogcmV0dXJuIGV2ZXJ5dGhpbmcgdW50aWwgJ10nICovCi0gICAgd2hpbGUgKHNlbGYtPnB0ciA8IHNlbGYtPnN0ci5lbmQpIHsKLSAgICAgICAgc3dpdGNoIChjID0gKnNlbGYtPnB0cisrKSB7CisgICAgd2hpbGUgKHNlbGYtPmluZGV4IDwgc2VsZi0+c3RyLmVuZCkgeworICAgICAgICBjID0gUHlVbmljb2RlX1JFQURfQ0hBUihzZWxmLT5zdHIuc3RyLCBzZWxmLT5pbmRleCsrKTsKKyAgICAgICAgc3dpdGNoIChjKSB7CiAgICAgICAgIGNhc2UgJ10nOgogICAgICAgICAgICAgYnJhY2tldF9zZWVuID0gMTsKICAgICAgICAgICAgIGJyZWFrOwpAQCAtMzQ4LDcgKzI5OCw3IEBACiAKICAgICAvKiBlbmQgb2Ygc3RyaW5nIGlzIG9rYXkgKi8KICAgICAvKiBkb24ndCBpbmNsdWRlIHRoZSAnXScgKi8KLSAgICBuYW1lLT5lbmQgPSBzZWxmLT5wdHItMTsKKyAgICBuYW1lLT5lbmQgPSBzZWxmLT5pbmRleC0xOwogICAgIHJldHVybiAxOwogfQogCkBAIC0zNTgsMTAgKzMwOCwxMCBAQAogICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpuYW1lX2lkeCwgU3ViU3RyaW5nICpuYW1lKQogewogICAgIC8qIGNoZWNrIGF0IGVuZCBvZiBpbnB1dCAqLwotICAgIGlmIChzZWxmLT5wdHIgPj0gc2VsZi0+c3RyLmVuZCkKKyAgICBpZiAoc2VsZi0+aW5kZXggPj0gc2VsZi0+c3RyLmVuZCkKICAgICAgICAgcmV0dXJuIDE7CiAKLSAgICBzd2l0Y2ggKCpzZWxmLT5wdHIrKykgeworICAgIHN3aXRjaCAoUHlVbmljb2RlX1JFQURfQ0hBUihzZWxmLT5zdHIuc3RyLCBzZWxmLT5pbmRleCsrKSkgewogICAgIGNhc2UgJy4nOgogICAgICAgICAqaXNfYXR0cmlidXRlID0gMTsKICAgICAgICAgaWYgKF9GaWVsZE5hbWVJdGVyYXRvcl9hdHRyKHNlbGYsIG5hbWUpID09IDApCkBAIC0zODQsNyArMzM0LDcgQEAKICAgICB9CiAKICAgICAvKiBlbXB0eSBzdHJpbmcgaXMgYW4gZXJyb3IgKi8KLSAgICBpZiAobmFtZS0+cHRyID09IG5hbWUtPmVuZCkgeworICAgIGlmIChuYW1lLT5zdGFydCA9PSBuYW1lLT5lbmQpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJFbXB0eSBhdHRyaWJ1dGUgaW4gZm9ybWF0IHN0cmluZyIpOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CkBAIC00MDAsMjQgKzM1MCwyMyBAQAogICAgICAgICAgICAncmVzdCcgaXMgYW4gaXRlcmF0b3IgdG8gcmV0dXJuIHRoZSByZXN0CiAqLwogc3RhdGljIGludAotZmllbGRfbmFtZV9zcGxpdChTVFJJTkdMSUJfQ0hBUiAqcHRyLCBQeV9zc2l6ZV90IGxlbiwgU3ViU3RyaW5nICpmaXJzdCwKK2ZpZWxkX25hbWVfc3BsaXQoUHlPYmplY3QgKnN0ciwgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQsIFN1YlN0cmluZyAqZmlyc3QsCiAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKmZpcnN0X2lkeCwgRmllbGROYW1lSXRlcmF0b3IgKnJlc3QsCiAgICAgICAgICAgICAgICAgIEF1dG9OdW1iZXIgKmF1dG9fbnVtYmVyKQogewotICAgIFNUUklOR0xJQl9DSEFSIGM7Ci0gICAgU1RSSU5HTElCX0NIQVIgKnAgPSBwdHI7Ci0gICAgU1RSSU5HTElCX0NIQVIgKmVuZCA9IHB0ciArIGxlbjsKKyAgICBQeV9VQ1M0IGM7CisgICAgUHlfc3NpemVfdCBpID0gc3RhcnQ7CiAgICAgaW50IGZpZWxkX25hbWVfaXNfZW1wdHk7CiAgICAgaW50IHVzaW5nX251bWVyaWNfaW5kZXg7CiAKICAgICAvKiBmaW5kIHRoZSBwYXJ0IHVwIHVudGlsIHRoZSBmaXJzdCAnLicgb3IgJ1snICovCi0gICAgd2hpbGUgKHAgPCBlbmQpIHsKLSAgICAgICAgc3dpdGNoIChjID0gKnArKykgeworICAgIHdoaWxlIChpIDwgZW5kKSB7CisgICAgICAgIHN3aXRjaCAoYyA9IFB5VW5pY29kZV9SRUFEX0NIQVIoc3RyLCBpKyspKSB7CiAgICAgICAgIGNhc2UgJ1snOgogICAgICAgICBjYXNlICcuJzoKICAgICAgICAgICAgIC8qIGJhY2t1cCBzbyB0aGF0IHdlIHRoaXMgY2hhcmFjdGVyIGlzIGF2YWlsYWJsZSB0byB0aGUKICAgICAgICAgICAgICAgICJyZXN0IiBpdGVyYXRvciAqLwotICAgICAgICAgICAgcC0tOworICAgICAgICAgICAgaS0tOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICBjb250aW51ZTsKQEAgLTQyNiwxNSArMzc1LDE1IEBACiAgICAgfQogCiAgICAgLyogc2V0IHVwIHRoZSByZXR1cm4gdmFsdWVzICovCi0gICAgU3ViU3RyaW5nX2luaXQoZmlyc3QsIHB0ciwgcCAtIHB0cik7Ci0gICAgRmllbGROYW1lSXRlcmF0b3JfaW5pdChyZXN0LCBwLCBlbmQgLSBwKTsKKyAgICBTdWJTdHJpbmdfaW5pdChmaXJzdCwgc3RyLCBzdGFydCwgaSk7CisgICAgRmllbGROYW1lSXRlcmF0b3JfaW5pdChyZXN0LCBzdHIsIGksIGVuZCk7CiAKICAgICAvKiBzZWUgaWYgImZpcnN0IiBpcyBhbiBpbnRlZ2VyLCBpbiB3aGljaCBjYXNlIGl0J3MgdXNlZCBhcyBhbiBpbmRleCAqLwogICAgICpmaXJzdF9pZHggPSBnZXRfaW50ZWdlcihmaXJzdCk7CiAgICAgaWYgKCpmaXJzdF9pZHggPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBmaWVsZF9uYW1lX2lzX2VtcHR5ID0gZmlyc3QtPnB0ciA+PSBmaXJzdC0+ZW5kOworICAgIGZpZWxkX25hbWVfaXNfZW1wdHkgPSBmaXJzdC0+c3RhcnQgPj0gZmlyc3QtPmVuZDsKIAogICAgIC8qIElmIHRoZSBmaWVsZCBuYW1lIGlzIG9taXR0ZWQgb3IgaWYgd2UgaGF2ZSBhIG51bWVyaWMgaW5kZXgKICAgICAgICBzcGVjaWZpZWQsIHRoZW4gd2UncmUgZG9pbmcgbnVtZXJpYyBpbmRleGluZyBpbnRvIGFyZ3MuICovCkBAIC00ODksNyArNDM4LDcgQEAKICAgICBQeV9zc2l6ZV90IGluZGV4OwogICAgIEZpZWxkTmFtZUl0ZXJhdG9yIHJlc3Q7CiAKLSAgICBpZiAoIWZpZWxkX25hbWVfc3BsaXQoaW5wdXQtPnB0ciwgaW5wdXQtPmVuZCAtIGlucHV0LT5wdHIsICZmaXJzdCwKKyAgICBpZiAoIWZpZWxkX25hbWVfc3BsaXQoaW5wdXQtPnN0ciwgaW5wdXQtPnN0YXJ0LCBpbnB1dC0+ZW5kLCAmZmlyc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZpbmRleCwgJnJlc3QsIGF1dG9fbnVtYmVyKSkgewogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KQEAgLTU3MywxNiArNTIyLDEyIEBACiAgICAgYXBwZW5kcyB0byB0aGUgb3V0cHV0LgogKi8KIHN0YXRpYyBpbnQKLXJlbmRlcl9maWVsZChQeU9iamVjdCAqZmllbGRvYmosIFN1YlN0cmluZyAqZm9ybWF0X3NwZWMsIE91dHB1dFN0cmluZyAqb3V0cHV0KQorcmVuZGVyX2ZpZWxkKFB5T2JqZWN0ICpmaWVsZG9iaiwgU3ViU3RyaW5nICpmb3JtYXRfc3BlYywgX1B5QWNjdSAqYWNjKQogewogICAgIGludCBvayA9IDA7CiAgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmZvcm1hdF9zcGVjX29iamVjdCA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKigqZm9ybWF0dGVyKShQeU9iamVjdCAqLCBTVFJJTkdMSUJfQ0hBUiAqLCBQeV9zc2l6ZV90KSA9IE5VTEw7Ci0gICAgU1RSSU5HTElCX0NIQVIqIGZvcm1hdF9zcGVjX3N0YXJ0ID0gZm9ybWF0X3NwZWMtPnB0ciA/Ci0gICAgICAgICAgICBmb3JtYXRfc3BlYy0+cHRyIDogTlVMTDsKLSAgICBQeV9zc2l6ZV90IGZvcm1hdF9zcGVjX2xlbiA9IGZvcm1hdF9zcGVjLT5wdHIgPwotICAgICAgICAgICAgZm9ybWF0X3NwZWMtPmVuZCAtIGZvcm1hdF9zcGVjLT5wdHIgOiAwOworICAgIFB5T2JqZWN0ICooKmZvcm1hdHRlcikoUHlPYmplY3QgKiwgUHlPYmplY3QgKiwgUHlfc3NpemVfdCwgUHlfc3NpemVfdCkgPSBOVUxMOwogCiAgICAgLyogSWYgd2Uga25vdyB0aGUgdHlwZSBleGFjdGx5LCBza2lwIHRoZSBsb29rdXAgb2YgX19mb3JtYXRfXyBhbmQganVzdAogICAgICAgIGNhbGwgdGhlIGZvcm1hdHRlciBkaXJlY3RseS4gKi8KQEAgLTU5OSwzOSArNTQ0LDI4IEBACiAgICAgaWYgKGZvcm1hdHRlcikgewogICAgICAgICAvKiB3ZSBrbm93IGV4YWN0bHkgd2hpY2ggZm9ybWF0dGVyIHdpbGwgYmUgY2FsbGVkIHdoZW4gX19mb3JtYXRfXyBpcwogICAgICAgICAgICBsb29rZWQgdXAsIHNvIGNhbGwgaXQgZGlyZWN0bHksIGluc3RlYWQuICovCi0gICAgICAgIHJlc3VsdCA9IGZvcm1hdHRlcihmaWVsZG9iaiwgZm9ybWF0X3NwZWNfc3RhcnQsIGZvcm1hdF9zcGVjX2xlbik7CisgICAgICAgIHJlc3VsdCA9IGZvcm1hdHRlcihmaWVsZG9iaiwgZm9ybWF0X3NwZWMtPnN0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdF9zcGVjLT5zdGFydCwgZm9ybWF0X3NwZWMtPmVuZCk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICAvKiBXZSBuZWVkIHRvIGNyZWF0ZSBhbiBvYmplY3Qgb3V0IG9mIHRoZSBwb2ludGVycyB3ZSBoYXZlLCBiZWNhdXNlCiAgICAgICAgICAgIF9fZm9ybWF0X18gdGFrZXMgYSBzdHJpbmcvdW5pY29kZSBvYmplY3QgZm9yIGZvcm1hdF9zcGVjLiAqLwotICAgICAgICBmb3JtYXRfc3BlY19vYmplY3QgPSBTVFJJTkdMSUJfTkVXKGZvcm1hdF9zcGVjX3N0YXJ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdF9zcGVjX2xlbik7CisgICAgICAgIGlmIChmb3JtYXRfc3BlYy0+c3RyKQorICAgICAgICAgICAgZm9ybWF0X3NwZWNfb2JqZWN0ID0gUHlVbmljb2RlX1N1YnN0cmluZyhmb3JtYXRfc3BlYy0+c3RyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXRfc3BlYy0+c3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdF9zcGVjLT5lbmQpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBmb3JtYXRfc3BlY19vYmplY3QgPSBQeVVuaWNvZGVfTmV3KDAsIDApOwogICAgICAgICBpZiAoZm9ybWF0X3NwZWNfb2JqZWN0ID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGRvbmU7CiAKICAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfRm9ybWF0KGZpZWxkb2JqLCBmb3JtYXRfc3BlY19vYmplY3QpOwogICAgIH0KLSAgICBpZiAocmVzdWx0ID09IE5VTEwpCisgICAgaWYgKHJlc3VsdCA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShyZXN1bHQpID09IC0xKQogICAgICAgICBnb3RvIGRvbmU7CiAKLSNpZiBQWV9WRVJTSU9OX0hFWCA+PSAweDAzMDAwMDAwCiAgICAgYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhyZXN1bHQpKTsKLSNlbHNlCi0gICAgYXNzZXJ0KFB5Qnl0ZXNfQ2hlY2socmVzdWx0KSB8fCBQeVVuaWNvZGVfQ2hlY2socmVzdWx0KSk7Ci0KLSAgICAvKiBDb252ZXJ0IHJlc3VsdCB0byBvdXIgdHlwZS4gIFdlIGNvdWxkIGJlIHN0ciwgYW5kIHJlc3VsdCBjb3VsZAotICAgICAgIGJlIHVuaWNvZGUgKi8KLSAgICB7Ci0gICAgICAgIFB5T2JqZWN0ICp0bXAgPSBTVFJJTkdMSUJfVE9TVFIocmVzdWx0KTsKLSAgICAgICAgaWYgKHRtcCA9PSBOVUxMKQotICAgICAgICAgICAgZ290byBkb25lOwotICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKLSAgICAgICAgcmVzdWx0ID0gdG1wOwotICAgIH0KLSNlbmRpZgotCi0gICAgb2sgPSBvdXRwdXRfZGF0YShvdXRwdXQsCi0gICAgICAgICAgICAgICAgICAgICBTVFJJTkdMSUJfU1RSKHJlc3VsdCksIFNUUklOR0xJQl9MRU4ocmVzdWx0KSk7CisgICAgb2sgPSBvdXRwdXRfZGF0YShhY2MsIHJlc3VsdCwgMCwgUHlVbmljb2RlX0dFVF9MRU5HVEgocmVzdWx0KSk7CiBkb25lOgogICAgIFB5X1hERUNSRUYoZm9ybWF0X3NwZWNfb2JqZWN0KTsKICAgICBQeV9YREVDUkVGKHJlc3VsdCk7CkBAIC02NDAsMjMgKzU3NCwyNCBAQAogCiBzdGF0aWMgaW50CiBwYXJzZV9maWVsZChTdWJTdHJpbmcgKnN0ciwgU3ViU3RyaW5nICpmaWVsZF9uYW1lLCBTdWJTdHJpbmcgKmZvcm1hdF9zcGVjLAotICAgICAgICAgICAgU1RSSU5HTElCX0NIQVIgKmNvbnZlcnNpb24pCisgICAgICAgICAgICBQeV9VQ1M0ICpjb252ZXJzaW9uKQogewogICAgIC8qIE5vdGUgdGhpcyBmdW5jdGlvbiB3b3JrcyBpZiB0aGUgZmllbGQgbmFtZSBpcyB6ZXJvIGxlbmd0aCwKICAgICAgICB3aGljaCBpcyBnb29kLiAgWmVybyBsZW5ndGggZmllbGQgbmFtZXMgYXJlIGhhbmRsZWQgbGF0ZXIsIGluCiAgICAgICAgZmllbGRfbmFtZV9zcGxpdC4gKi8KIAotICAgIFNUUklOR0xJQl9DSEFSIGMgPSAwOworICAgIFB5X1VDUzQgYyA9IDA7CiAKICAgICAvKiBpbml0aWFsaXplIHRoZXNlLCBhcyB0aGV5IG1heSBiZSBlbXB0eSAqLwogICAgICpjb252ZXJzaW9uID0gJ1wwJzsKLSAgICBTdWJTdHJpbmdfaW5pdChmb3JtYXRfc3BlYywgTlVMTCwgMCk7CisgICAgU3ViU3RyaW5nX2luaXQoZm9ybWF0X3NwZWMsIE5VTEwsIDAsIDApOwogCiAgICAgLyogU2VhcmNoIGZvciB0aGUgZmllbGQgbmFtZS4gIGl0J3MgdGVybWluYXRlZCBieSB0aGUgZW5kIG9mCiAgICAgICAgdGhlIHN0cmluZywgb3IgYSAnOicgb3IgJyEnICovCi0gICAgZmllbGRfbmFtZS0+cHRyID0gc3RyLT5wdHI7Ci0gICAgd2hpbGUgKHN0ci0+cHRyIDwgc3RyLT5lbmQpIHsKLSAgICAgICAgc3dpdGNoIChjID0gKihzdHItPnB0cisrKSkgeworICAgIGZpZWxkX25hbWUtPnN0ciA9IHN0ci0+c3RyOworICAgIGZpZWxkX25hbWUtPnN0YXJ0ID0gc3RyLT5zdGFydDsKKyAgICB3aGlsZSAoc3RyLT5zdGFydCA8IHN0ci0+ZW5kKSB7CisgICAgICAgIHN3aXRjaCAoKGMgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHN0ci0+c3RyLCBzdHItPnN0YXJ0KyspKSkgewogICAgICAgICBjYXNlICc6JzoKICAgICAgICAgY2FzZSAnISc6CiAgICAgICAgICAgICBicmVhazsKQEAgLTY2OSwyNiArNjA0LDI3IEBACiAgICAgaWYgKGMgPT0gJyEnIHx8IGMgPT0gJzonKSB7CiAgICAgICAgIC8qIHdlIGhhdmUgYSBmb3JtYXQgc3BlY2lmaWVyIGFuZC9vciBhIGNvbnZlcnNpb24gKi8KICAgICAgICAgLyogZG9uJ3QgaW5jbHVkZSB0aGUgbGFzdCBjaGFyYWN0ZXIgKi8KLSAgICAgICAgZmllbGRfbmFtZS0+ZW5kID0gc3RyLT5wdHItMTsKKyAgICAgICAgZmllbGRfbmFtZS0+ZW5kID0gc3RyLT5zdGFydC0xOwogCiAgICAgICAgIC8qIHRoZSBmb3JtYXQgc3BlY2lmaWVyIGlzIHRoZSByZXN0IG9mIHRoZSBzdHJpbmcgKi8KLSAgICAgICAgZm9ybWF0X3NwZWMtPnB0ciA9IHN0ci0+cHRyOworICAgICAgICBmb3JtYXRfc3BlYy0+c3RyID0gc3RyLT5zdHI7CisgICAgICAgIGZvcm1hdF9zcGVjLT5zdGFydCA9IHN0ci0+c3RhcnQ7CiAgICAgICAgIGZvcm1hdF9zcGVjLT5lbmQgPSBzdHItPmVuZDsKIAogICAgICAgICAvKiBzZWUgaWYgdGhlcmUncyBhIGNvbnZlcnNpb24gc3BlY2lmaWVyICovCiAgICAgICAgIGlmIChjID09ICchJykgewogICAgICAgICAgICAgLyogdGhlcmUgbXVzdCBiZSBhbm90aGVyIGNoYXJhY3RlciBwcmVzZW50ICovCi0gICAgICAgICAgICBpZiAoZm9ybWF0X3NwZWMtPnB0ciA+PSBmb3JtYXRfc3BlYy0+ZW5kKSB7CisgICAgICAgICAgICBpZiAoZm9ybWF0X3NwZWMtPnN0YXJ0ID49IGZvcm1hdF9zcGVjLT5lbmQpIHsKICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImVuZCBvZiBmb3JtYXQgd2hpbGUgbG9va2luZyBmb3IgY29udmVyc2lvbiAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZXIiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICpjb252ZXJzaW9uID0gKihmb3JtYXRfc3BlYy0+cHRyKyspOworICAgICAgICAgICAgKmNvbnZlcnNpb24gPSBQeVVuaWNvZGVfUkVBRF9DSEFSKGZvcm1hdF9zcGVjLT5zdHIsIGZvcm1hdF9zcGVjLT5zdGFydCsrKTsKIAogICAgICAgICAgICAgLyogaWYgdGhlcmUgaXMgYW5vdGhlciBjaGFyYWN0ZXIsIGl0IG11c3QgYmUgYSBjb2xvbiAqLwotICAgICAgICAgICAgaWYgKGZvcm1hdF9zcGVjLT5wdHIgPCBmb3JtYXRfc3BlYy0+ZW5kKSB7Ci0gICAgICAgICAgICAgICAgYyA9ICooZm9ybWF0X3NwZWMtPnB0cisrKTsKKyAgICAgICAgICAgIGlmIChmb3JtYXRfc3BlYy0+c3RhcnQgPCBmb3JtYXRfc3BlYy0+ZW5kKSB7CisgICAgICAgICAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEX0NIQVIoZm9ybWF0X3NwZWMtPnN0ciwgZm9ybWF0X3NwZWMtPnN0YXJ0KyspOwogICAgICAgICAgICAgICAgIGlmIChjICE9ICc6JykgewogICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJleHBlY3RlZCAnOicgYWZ0ZXIgZm9ybWF0IHNwZWNpZmllciIpOwpAQCAtNjk5LDcgKzYzNSw3IEBACiAgICAgfQogICAgIGVsc2UKICAgICAgICAgLyogZW5kIG9mIHN0cmluZywgdGhlcmUncyBubyBmb3JtYXRfc3BlYyBvciBjb252ZXJzaW9uICovCi0gICAgICAgIGZpZWxkX25hbWUtPmVuZCA9IHN0ci0+cHRyOworICAgICAgICBmaWVsZF9uYW1lLT5lbmQgPSBzdHItPnN0YXJ0OwogCiAgICAgcmV0dXJuIDE7CiB9CkBAIC03MTgsOSArNjU0LDEwIEBACiB9IE1hcmt1cEl0ZXJhdG9yOwogCiBzdGF0aWMgaW50Ci1NYXJrdXBJdGVyYXRvcl9pbml0KE1hcmt1cEl0ZXJhdG9yICpzZWxmLCBTVFJJTkdMSUJfQ0hBUiAqcHRyLCBQeV9zc2l6ZV90IGxlbikKK01hcmt1cEl0ZXJhdG9yX2luaXQoTWFya3VwSXRlcmF0b3IgKnNlbGYsIFB5T2JqZWN0ICpzdHIsCisgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kKQogewotICAgIFN1YlN0cmluZ19pbml0KCZzZWxmLT5zdHIsIHB0ciwgbGVuKTsKKyAgICBTdWJTdHJpbmdfaW5pdCgmc2VsZi0+c3RyLCBzdHIsIHN0YXJ0LCBlbmQpOwogICAgIHJldHVybiAxOwogfQogCkBAIC03MjksMzAgKzY2NiwzMCBAQAogc3RhdGljIGludAogTWFya3VwSXRlcmF0b3JfbmV4dChNYXJrdXBJdGVyYXRvciAqc2VsZiwgU3ViU3RyaW5nICpsaXRlcmFsLAogICAgICAgICAgICAgICAgICAgICBpbnQgKmZpZWxkX3ByZXNlbnQsIFN1YlN0cmluZyAqZmllbGRfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgU3ViU3RyaW5nICpmb3JtYXRfc3BlYywgU1RSSU5HTElCX0NIQVIgKmNvbnZlcnNpb24sCisgICAgICAgICAgICAgICAgICAgIFN1YlN0cmluZyAqZm9ybWF0X3NwZWMsIFB5X1VDUzQgKmNvbnZlcnNpb24sCiAgICAgICAgICAgICAgICAgICAgIGludCAqZm9ybWF0X3NwZWNfbmVlZHNfZXhwYW5kaW5nKQogewogICAgIGludCBhdF9lbmQ7Ci0gICAgU1RSSU5HTElCX0NIQVIgYyA9IDA7Ci0gICAgU1RSSU5HTElCX0NIQVIgKnN0YXJ0OworICAgIFB5X1VDUzQgYyA9IDA7CisgICAgUHlfc3NpemVfdCBzdGFydDsKICAgICBpbnQgY291bnQ7CiAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgaW50IG1hcmt1cF9mb2xsb3dzID0gMDsKIAogICAgIC8qIGluaXRpYWxpemUgYWxsIG9mIHRoZSBvdXRwdXQgdmFyaWFibGVzICovCi0gICAgU3ViU3RyaW5nX2luaXQobGl0ZXJhbCwgTlVMTCwgMCk7Ci0gICAgU3ViU3RyaW5nX2luaXQoZmllbGRfbmFtZSwgTlVMTCwgMCk7Ci0gICAgU3ViU3RyaW5nX2luaXQoZm9ybWF0X3NwZWMsIE5VTEwsIDApOworICAgIFN1YlN0cmluZ19pbml0KGxpdGVyYWwsIE5VTEwsIDAsIDApOworICAgIFN1YlN0cmluZ19pbml0KGZpZWxkX25hbWUsIE5VTEwsIDAsIDApOworICAgIFN1YlN0cmluZ19pbml0KGZvcm1hdF9zcGVjLCBOVUxMLCAwLCAwKTsKICAgICAqY29udmVyc2lvbiA9ICdcMCc7CiAgICAgKmZvcm1hdF9zcGVjX25lZWRzX2V4cGFuZGluZyA9IDA7CiAgICAgKmZpZWxkX3ByZXNlbnQgPSAwOwogCiAgICAgLyogTm8gbW9yZSBpbnB1dCwgZW5kIG9mIGl0ZXJhdG9yLiAgVGhpcyBpcyB0aGUgbm9ybWFsIGV4aXQKICAgICAgICBwYXRoLiAqLwotICAgIGlmIChzZWxmLT5zdHIucHRyID49IHNlbGYtPnN0ci5lbmQpCisgICAgaWYgKHNlbGYtPnN0ci5zdGFydCA+PSBzZWxmLT5zdHIuZW5kKQogICAgICAgICByZXR1cm4gMTsKIAotICAgIHN0YXJ0ID0gc2VsZi0+c3RyLnB0cjsKKyAgICBzdGFydCA9IHNlbGYtPnN0ci5zdGFydDsKIAogICAgIC8qIEZpcnN0IHJlYWQgYW55IGxpdGVyYWwgdGV4dC4gUmVhZCB1bnRpbCB0aGUgZW5kIG9mIHN0cmluZywgYW4KICAgICAgICBlc2NhcGVkICd7JyBvciAnfScsIG9yIGFuIHVuZXNjYXBlZCAneycuICBJbiBvcmRlciB0byBuZXZlcgpAQCAtNzYxLDggKzY5OCw4IEBACiAgICAgICAgaW5jbHVkaW5nIHRoZSBicmFjZSwgYnV0IG5vIGZvcm1hdCBvYmplY3QuICBUaGUgbmV4dCB0aW1lCiAgICAgICAgdGhyb3VnaCwgd2UnbGwgcmV0dXJuIHRoZSByZXN0IG9mIHRoZSBsaXRlcmFsLCBza2lwcGluZyBwYXN0CiAgICAgICAgdGhlIHNlY29uZCBjb25zZWN1dGl2ZSBicmFjZS4gKi8KLSAgICB3aGlsZSAoc2VsZi0+c3RyLnB0ciA8IHNlbGYtPnN0ci5lbmQpIHsKLSAgICAgICAgc3dpdGNoIChjID0gKihzZWxmLT5zdHIucHRyKyspKSB7CisgICAgd2hpbGUgKHNlbGYtPnN0ci5zdGFydCA8IHNlbGYtPnN0ci5lbmQpIHsKKyAgICAgICAgc3dpdGNoIChjID0gUHlVbmljb2RlX1JFQURfQ0hBUihzZWxmLT5zdHIuc3RyLCBzZWxmLT5zdHIuc3RhcnQrKykpIHsKICAgICAgICAgY2FzZSAneyc6CiAgICAgICAgIGNhc2UgJ30nOgogICAgICAgICAgICAgbWFya3VwX2ZvbGxvd3MgPSAxOwpAQCAtNzczLDEwICs3MTAsMTIgQEAKICAgICAgICAgYnJlYWs7CiAgICAgfQogCi0gICAgYXRfZW5kID0gc2VsZi0+c3RyLnB0ciA+PSBzZWxmLT5zdHIuZW5kOwotICAgIGxlbiA9IHNlbGYtPnN0ci5wdHIgLSBzdGFydDsKKyAgICBhdF9lbmQgPSBzZWxmLT5zdHIuc3RhcnQgPj0gc2VsZi0+c3RyLmVuZDsKKyAgICBsZW4gPSBzZWxmLT5zdHIuc3RhcnQgLSBzdGFydDsKIAotICAgIGlmICgoYyA9PSAnfScpICYmIChhdF9lbmQgfHwgKGMgIT0gKnNlbGYtPnN0ci5wdHIpKSkgeworICAgIGlmICgoYyA9PSAnfScpICYmIChhdF9lbmQgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgKGMgIT0gUHlVbmljb2RlX1JFQURfQ0hBUihzZWxmLT5zdHIuc3RyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYtPnN0ci5zdGFydCkpKSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIlNpbmdsZSAnfScgZW5jb3VudGVyZWQgIgogICAgICAgICAgICAgICAgICAgICAgICAgImluIGZvcm1hdCBzdHJpbmciKTsKICAgICAgICAgcmV0dXJuIDA7CkBAIC03ODcsMTAgKzcyNiwxMCBAQAogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAgICAgaWYgKCFhdF9lbmQpIHsKLSAgICAgICAgaWYgKGMgPT0gKnNlbGYtPnN0ci5wdHIpIHsKKyAgICAgICAgaWYgKGMgPT0gUHlVbmljb2RlX1JFQURfQ0hBUihzZWxmLT5zdHIuc3RyLCBzZWxmLT5zdHIuc3RhcnQpKSB7CiAgICAgICAgICAgICAvKiBlc2NhcGVkIH0gb3Igeywgc2tpcCBpdCBpbiB0aGUgaW5wdXQuICB0aGVyZSBpcyBubwogICAgICAgICAgICAgICAgbWFya3VwIG9iamVjdCBmb2xsb3dpbmcgdXMsIGp1c3QgdGhpcyBsaXRlcmFsIHRleHQgKi8KLSAgICAgICAgICAgIHNlbGYtPnN0ci5wdHIrKzsKKyAgICAgICAgICAgIHNlbGYtPnN0ci5zdGFydCsrOwogICAgICAgICAgICAgbWFya3VwX2ZvbGxvd3MgPSAwOwogICAgICAgICB9CiAgICAgICAgIGVsc2UKQEAgLTc5OCw3ICs3MzcsOCBAQAogICAgIH0KIAogICAgIC8qIHJlY29yZCB0aGUgbGl0ZXJhbCB0ZXh0ICovCi0gICAgbGl0ZXJhbC0+cHRyID0gc3RhcnQ7CisgICAgbGl0ZXJhbC0+c3RyID0gc2VsZi0+c3RyLnN0cjsKKyAgICBsaXRlcmFsLT5zdGFydCA9IHN0YXJ0OwogICAgIGxpdGVyYWwtPmVuZCA9IHN0YXJ0ICsgbGVuOwogCiAgICAgaWYgKCFtYXJrdXBfZm9sbG93cykKQEAgLTgxMCwxMiArNzUwLDEyIEBACiAgICAgKmZpZWxkX3ByZXNlbnQgPSAxOwogICAgIGNvdW50ID0gMTsKIAotICAgIHN0YXJ0ID0gc2VsZi0+c3RyLnB0cjsKKyAgICBzdGFydCA9IHNlbGYtPnN0ci5zdGFydDsKIAogICAgIC8qIHdlIGtub3cgd2UgY2FuJ3QgaGF2ZSBhIHplcm8gbGVuZ3RoIHN0cmluZywgc28gZG9uJ3Qgd29ycnkKICAgICAgICBhYm91dCB0aGF0IGNhc2UgKi8KLSAgICB3aGlsZSAoc2VsZi0+c3RyLnB0ciA8IHNlbGYtPnN0ci5lbmQpIHsKLSAgICAgICAgc3dpdGNoIChjID0gKihzZWxmLT5zdHIucHRyKyspKSB7CisgICAgd2hpbGUgKHNlbGYtPnN0ci5zdGFydCA8IHNlbGYtPnN0ci5lbmQpIHsKKyAgICAgICAgc3dpdGNoIChjID0gUHlVbmljb2RlX1JFQURfQ0hBUihzZWxmLT5zdHIuc3RyLCBzZWxmLT5zdHIuc3RhcnQrKykpIHsKICAgICAgICAgY2FzZSAneyc6CiAgICAgICAgICAgICAvKiB0aGUgZm9ybWF0IHNwZWMgbmVlZHMgdG8gYmUgcmVjdXJzaXZlbHkgZXhwYW5kZWQuCiAgICAgICAgICAgICAgICB0aGlzIGlzIGFuIG9wdGltaXphdGlvbiwgYW5kIG5vdCBzdHJpY3RseSBuZWVkZWQgKi8KQEAgLTgyOCw3ICs3NjgsNyBAQAogICAgICAgICAgICAgICAgIC8qIHdlJ3JlIGRvbmUuICBwYXJzZSBhbmQgZ2V0IG91dCAqLwogICAgICAgICAgICAgICAgIFN1YlN0cmluZyBzOwogCi0gICAgICAgICAgICAgICAgU3ViU3RyaW5nX2luaXQoJnMsIHN0YXJ0LCBzZWxmLT5zdHIucHRyIC0gMSAtIHN0YXJ0KTsKKyAgICAgICAgICAgICAgICBTdWJTdHJpbmdfaW5pdCgmcywgc2VsZi0+c3RyLnN0ciwgc3RhcnQsIHNlbGYtPnN0ci5zdGFydCAtIDEpOwogICAgICAgICAgICAgICAgIGlmIChwYXJzZV9maWVsZCgmcywgZmllbGRfbmFtZSwgZm9ybWF0X3NwZWMsIGNvbnZlcnNpb24pID09IDApCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiAwOwogCkBAIC04NDcsNyArNzg3LDcgQEAKIAogLyogZG8gdGhlICFyIG9yICFzIGNvbnZlcnNpb24gb24gb2JqICovCiBzdGF0aWMgUHlPYmplY3QgKgotZG9fY29udmVyc2lvbihQeU9iamVjdCAqb2JqLCBTVFJJTkdMSUJfQ0hBUiBjb252ZXJzaW9uKQorZG9fY29udmVyc2lvbihQeU9iamVjdCAqb2JqLCBQeV9VQ1M0IGNvbnZlcnNpb24pCiB7CiAgICAgLyogWFhYIGluIHByZS0zLjAsIGRvIHdlIG5lZWQgdG8gY29udmVydCB0aGlzIHRvIHVuaWNvZGUsIHNpbmNlIGl0CiAgICAgICAgbWlnaHQgaGF2ZSByZXR1cm5lZCBhIHN0cmluZz8gKi8KQEAgLTg1NSwxMSArNzk1LDkgQEAKICAgICBjYXNlICdyJzoKICAgICAgICAgcmV0dXJuIFB5T2JqZWN0X1JlcHIob2JqKTsKICAgICBjYXNlICdzJzoKLSAgICAgICAgcmV0dXJuIFNUUklOR0xJQl9UT1NUUihvYmopOwotI2lmIFBZX1ZFUlNJT05fSEVYID49IDB4MDMwMDAwMDAKKyAgICAgICAgcmV0dXJuIFB5T2JqZWN0X1N0cihvYmopOwogICAgIGNhc2UgJ2EnOgotICAgICAgICByZXR1cm4gU1RSSU5HTElCX1RPQVNDSUkob2JqKTsKLSNlbmRpZgorICAgICAgICByZXR1cm4gUHlPYmplY3RfQVNDSUkob2JqKTsKICAgICBkZWZhdWx0OgogICAgICAgICBpZiAoY29udmVyc2lvbiA+IDMyICYmIGNvbnZlcnNpb24gPCAxMjcpIHsKICAgICAgICAgICAgICAgICAvKiBJdCdzIHRoZSBBU0NJSSBzdWJyYW5nZTsgY2FzdGluZyB0byBjaGFyIGlzIHNhZmUKQEAgLTg5MSw4ICs4MjksOCBAQAogCiBzdGF0aWMgaW50CiBvdXRwdXRfbWFya3VwKFN1YlN0cmluZyAqZmllbGRfbmFtZSwgU3ViU3RyaW5nICpmb3JtYXRfc3BlYywKLSAgICAgICAgICAgICAgaW50IGZvcm1hdF9zcGVjX25lZWRzX2V4cGFuZGluZywgU1RSSU5HTElCX0NIQVIgY29udmVyc2lvbiwKLSAgICAgICAgICAgICAgT3V0cHV0U3RyaW5nICpvdXRwdXQsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzLAorICAgICAgICAgICAgICBpbnQgZm9ybWF0X3NwZWNfbmVlZHNfZXhwYW5kaW5nLCBQeV9VQ1M0IGNvbnZlcnNpb24sCisgICAgICAgICAgICAgIF9QeUFjY3UgKmFjYywgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MsCiAgICAgICAgICAgICAgIGludCByZWN1cnNpb25fZGVwdGgsIEF1dG9OdW1iZXIgKmF1dG9fbnVtYmVyKQogewogICAgIFB5T2JqZWN0ICp0bXAgPSBOVUxMOwpAQCAtOTA4LDcgKzg0Niw3IEBACiAKICAgICBpZiAoY29udmVyc2lvbiAhPSAnXDAnKSB7CiAgICAgICAgIHRtcCA9IGRvX2NvbnZlcnNpb24oZmllbGRvYmosIGNvbnZlcnNpb24pOwotICAgICAgICBpZiAodG1wID09IE5VTEwpCisgICAgICAgIGlmICh0bXAgPT0gTlVMTCB8fCBQeVVuaWNvZGVfUkVBRFkodG1wKSA9PSAtMSkKICAgICAgICAgICAgIGdvdG8gZG9uZTsKIAogICAgICAgICAvKiBkbyB0aGUgYXNzaWdubWVudCwgdHJhbnNmZXJyaW5nIG93bmVyc2hpcDogZmllbGRvYmogPSB0bXAgKi8KQEAgLTkyMSwyMCArODU5LDE5IEBACiAgICAgaWYgKGZvcm1hdF9zcGVjX25lZWRzX2V4cGFuZGluZykgewogICAgICAgICB0bXAgPSBidWlsZF9zdHJpbmcoZm9ybWF0X3NwZWMsIGFyZ3MsIGt3YXJncywgcmVjdXJzaW9uX2RlcHRoLTEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvX251bWJlcik7Ci0gICAgICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgaWYgKHRtcCA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWSh0bXApID09IC0xKQogICAgICAgICAgICAgZ290byBkb25lOwogCiAgICAgICAgIC8qIG5vdGUgdGhhdCBpbiB0aGUgY2FzZSB3ZSdyZSBleHBhbmRpbmcgdGhlIGZvcm1hdCBzdHJpbmcsCiAgICAgICAgICAgIHRtcCBtdXN0IGJlIGtlcHQgYXJvdW5kIHVudGlsIGFmdGVyIHRoZSBjYWxsIHRvCiAgICAgICAgICAgIHJlbmRlcl9maWVsZC4gKi8KLSAgICAgICAgU3ViU3RyaW5nX2luaXQoJmV4cGFuZGVkX2Zvcm1hdF9zcGVjLAotICAgICAgICAgICAgICAgICAgICAgICBTVFJJTkdMSUJfU1RSKHRtcCksIFNUUklOR0xJQl9MRU4odG1wKSk7CisgICAgICAgIFN1YlN0cmluZ19pbml0KCZleHBhbmRlZF9mb3JtYXRfc3BlYywgdG1wLCAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSCh0bXApKTsKICAgICAgICAgYWN0dWFsX2Zvcm1hdF9zcGVjID0gJmV4cGFuZGVkX2Zvcm1hdF9zcGVjOwogICAgIH0KICAgICBlbHNlCiAgICAgICAgIGFjdHVhbF9mb3JtYXRfc3BlYyA9IGZvcm1hdF9zcGVjOwogCi0gICAgaWYgKHJlbmRlcl9maWVsZChmaWVsZG9iaiwgYWN0dWFsX2Zvcm1hdF9zcGVjLCBvdXRwdXQpID09IDApCisgICAgaWYgKHJlbmRlcl9maWVsZChmaWVsZG9iaiwgYWN0dWFsX2Zvcm1hdF9zcGVjLCBhY2MpID09IDApCiAgICAgICAgIGdvdG8gZG9uZTsKIAogICAgIHJlc3VsdCA9IDE7CkBAIC05NTQsNyArODkxLDcgQEAKICovCiBzdGF0aWMgaW50CiBkb19tYXJrdXAoU3ViU3RyaW5nICppbnB1dCwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2FyZ3MsCi0gICAgICAgICAgT3V0cHV0U3RyaW5nICpvdXRwdXQsIGludCByZWN1cnNpb25fZGVwdGgsIEF1dG9OdW1iZXIgKmF1dG9fbnVtYmVyKQorICAgICAgICAgIF9QeUFjY3UgKmFjYywgaW50IHJlY3Vyc2lvbl9kZXB0aCwgQXV0b051bWJlciAqYXV0b19udW1iZXIpCiB7CiAgICAgTWFya3VwSXRlcmF0b3IgaXRlcjsKICAgICBpbnQgZm9ybWF0X3NwZWNfbmVlZHNfZXhwYW5kaW5nOwpAQCAtOTYzLDE4ICs5MDAsMTggQEAKICAgICBTdWJTdHJpbmcgbGl0ZXJhbDsKICAgICBTdWJTdHJpbmcgZmllbGRfbmFtZTsKICAgICBTdWJTdHJpbmcgZm9ybWF0X3NwZWM7Ci0gICAgU1RSSU5HTElCX0NIQVIgY29udmVyc2lvbjsKKyAgICBQeV9VQ1M0IGNvbnZlcnNpb247CiAKLSAgICBNYXJrdXBJdGVyYXRvcl9pbml0KCZpdGVyLCBpbnB1dC0+cHRyLCBpbnB1dC0+ZW5kIC0gaW5wdXQtPnB0cik7CisgICAgTWFya3VwSXRlcmF0b3JfaW5pdCgmaXRlciwgaW5wdXQtPnN0ciwgaW5wdXQtPnN0YXJ0LCBpbnB1dC0+ZW5kKTsKICAgICB3aGlsZSAoKHJlc3VsdCA9IE1hcmt1cEl0ZXJhdG9yX25leHQoJml0ZXIsICZsaXRlcmFsLCAmZmllbGRfcHJlc2VudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZpZWxkX25hbWUsICZmb3JtYXRfc3BlYywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNvbnZlcnNpb24sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmb3JtYXRfc3BlY19uZWVkc19leHBhbmRpbmcpKSA9PSAyKSB7Ci0gICAgICAgIGlmICghb3V0cHV0X2RhdGEob3V0cHV0LCBsaXRlcmFsLnB0ciwgbGl0ZXJhbC5lbmQgLSBsaXRlcmFsLnB0cikpCisgICAgICAgIGlmICghb3V0cHV0X2RhdGEoYWNjLCBsaXRlcmFsLnN0ciwgbGl0ZXJhbC5zdGFydCwgbGl0ZXJhbC5lbmQpKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIGlmIChmaWVsZF9wcmVzZW50KQogICAgICAgICAgICAgaWYgKCFvdXRwdXRfbWFya3VwKCZmaWVsZF9uYW1lLCAmZm9ybWF0X3NwZWMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0X3NwZWNfbmVlZHNfZXhwYW5kaW5nLCBjb252ZXJzaW9uLCBvdXRwdXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0X3NwZWNfbmVlZHNfZXhwYW5kaW5nLCBjb252ZXJzaW9uLCBhY2MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncywga3dhcmdzLCByZWN1cnNpb25fZGVwdGgsIGF1dG9fbnVtYmVyKSkKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICB9CkBAIC05OTAsNDMgKzkyNywyNSBAQAogYnVpbGRfc3RyaW5nKFN1YlN0cmluZyAqaW5wdXQsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzLAogICAgICAgICAgICAgIGludCByZWN1cnNpb25fZGVwdGgsIEF1dG9OdW1iZXIgKmF1dG9fbnVtYmVyKQogewotICAgIE91dHB1dFN0cmluZyBvdXRwdXQ7Ci0gICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7Ci0gICAgUHlfc3NpemVfdCBjb3VudDsKLQotICAgIG91dHB1dC5vYmogPSBOVUxMOyAvKiBuZWVkZWQgc28gY2xlYW51cCBjb2RlIGFsd2F5cyB3b3JrcyAqLworICAgIF9QeUFjY3UgYWNjOwogCiAgICAgLyogY2hlY2sgdGhlIHJlY3Vyc2lvbiBsZXZlbCAqLwogICAgIGlmIChyZWN1cnNpb25fZGVwdGggPD0gMCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJNYXggc3RyaW5nIHJlY3Vyc2lvbiBleGNlZWRlZCIpOwotICAgICAgICBnb3RvIGRvbmU7CisgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIC8qIGluaXRpYWwgc2l6ZSBpcyB0aGUgbGVuZ3RoIG9mIHRoZSBmb3JtYXQgc3RyaW5nLCBwbHVzIHRoZSBzaXplCi0gICAgICAgaW5jcmVtZW50LiAgc2VlbXMgbGlrZSBhIHJlYXNvbmFibGUgZGVmYXVsdCAqLwotICAgIGlmICghb3V0cHV0X2luaXRpYWxpemUoJm91dHB1dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0LT5lbmQgLSBpbnB1dC0+cHRyICsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIElOSVRJQUxfU0laRV9JTkNSRU1FTlQpKQotICAgICAgICBnb3RvIGRvbmU7CisgICAgaWYgKF9QeUFjY3VfSW5pdCgmYWNjKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoIWRvX21hcmt1cChpbnB1dCwgYXJncywga3dhcmdzLCAmb3V0cHV0LCByZWN1cnNpb25fZGVwdGgsCisgICAgaWYgKCFkb19tYXJrdXAoaW5wdXQsIGFyZ3MsIGt3YXJncywgJmFjYywgcmVjdXJzaW9uX2RlcHRoLAogICAgICAgICAgICAgICAgICAgIGF1dG9fbnVtYmVyKSkgewotICAgICAgICBnb3RvIGRvbmU7CisgICAgICAgIF9QeUFjY3VfRGVzdHJveSgmYWNjKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgY291bnQgPSBvdXRwdXQucHRyIC0gU1RSSU5HTElCX1NUUihvdXRwdXQub2JqKTsKLSAgICBpZiAoU1RSSU5HTElCX1JFU0laRSgmb3V0cHV0Lm9iaiwgY291bnQpIDwgMCkgewotICAgICAgICBnb3RvIGRvbmU7Ci0gICAgfQotCi0gICAgLyogdHJhbnNmZXIgb3duZXJzaGlwIHRvIHJlc3VsdCAqLwotICAgIHJlc3VsdCA9IG91dHB1dC5vYmo7Ci0gICAgb3V0cHV0Lm9iaiA9IE5VTEw7Ci0KLWRvbmU6Ci0gICAgUHlfWERFQ1JFRihvdXRwdXQub2JqKTsKLSAgICByZXR1cm4gcmVzdWx0OworICAgIHJldHVybiBfUHlBY2N1X0ZpbmlzaCgmYWNjKTsKIH0KIAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KQEAgLTEwNDcsOCArOTY2LDExIEBACiAKICAgICBBdXRvTnVtYmVyIGF1dG9fbnVtYmVyOwogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBBdXRvTnVtYmVyX0luaXQoJmF1dG9fbnVtYmVyKTsKLSAgICBTdWJTdHJpbmdfaW5pdCgmaW5wdXQsIFNUUklOR0xJQl9TVFIoc2VsZiksIFNUUklOR0xJQl9MRU4oc2VsZikpOworICAgIFN1YlN0cmluZ19pbml0KCZpbnB1dCwgc2VsZiwgMCwgUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZikpOwogICAgIHJldHVybiBidWlsZF9zdHJpbmcoJmlucHV0LCBhcmdzLCBrd2FyZ3MsIHJlY3Vyc2lvbl9kZXB0aCwgJmF1dG9fbnVtYmVyKTsKIH0KIApAQCAtMTA3MCw5ICs5OTIsNyBAQAogCiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgUHlPYmplY3RfSEVBRAotCi0gICAgU1RSSU5HTElCX09CSkVDVCAqc3RyOwotCisgICAgUHlPYmplY3QgKnN0cjsKICAgICBNYXJrdXBJdGVyYXRvciBpdF9tYXJrdXA7CiB9IGZvcm1hdHRlcml0ZXJvYmplY3Q7CiAKQEAgLTEwOTcsNyArMTAxNyw3IEBACiAgICAgU3ViU3RyaW5nIGxpdGVyYWw7CiAgICAgU3ViU3RyaW5nIGZpZWxkX25hbWU7CiAgICAgU3ViU3RyaW5nIGZvcm1hdF9zcGVjOwotICAgIFNUUklOR0xJQl9DSEFSIGNvbnZlcnNpb247CisgICAgUHlfVUNTNCBjb252ZXJzaW9uOwogICAgIGludCBmb3JtYXRfc3BlY19uZWVkc19leHBhbmRpbmc7CiAgICAgaW50IGZpZWxkX3ByZXNlbnQ7CiAgICAgaW50IHJlc3VsdCA9IE1hcmt1cEl0ZXJhdG9yX25leHQoJml0LT5pdF9tYXJrdXAsICZsaXRlcmFsLCAmZmllbGRfcHJlc2VudCwKQEAgLTExNDEsNyArMTA2MSw4IEBACiAgICAgICAgICAgICBQeV9JTkNSRUYoY29udmVyc2lvbl9zdHIpOwogICAgICAgICB9CiAgICAgICAgIGVsc2UKLSAgICAgICAgICAgIGNvbnZlcnNpb25fc3RyID0gU1RSSU5HTElCX05FVygmY29udmVyc2lvbiwgMSk7CisgICAgICAgICAgICBjb252ZXJzaW9uX3N0ciA9IFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoUHlVbmljb2RlXzRCWVRFX0tJTkQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNvbnZlcnNpb24sIDEpOwogICAgICAgICBpZiAoY29udmVyc2lvbl9zdHIgPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gZG9uZTsKIApAQCAtMTE5OCw3ICsxMTE5LDcgQEAKICAgIGRlc2NyaWJpbmcgdGhlIHBhcnNlZCBlbGVtZW50cy4gIEl0J3MgYSB3cmFwcGVyIGFyb3VuZAogICAgc3RyaW5nbGliL3N0cmluZ19mb3JtYXQuaCdzIE1hcmt1cEl0ZXJhdG9yICovCiBzdGF0aWMgUHlPYmplY3QgKgotZm9ybWF0dGVyX3BhcnNlcihQeU9iamVjdCAqaWdub3JlZCwgU1RSSU5HTElCX09CSkVDVCAqc2VsZikKK2Zvcm1hdHRlcl9wYXJzZXIoUHlPYmplY3QgKmlnbm9yZWQsIFB5T2JqZWN0ICpzZWxmKQogewogICAgIGZvcm1hdHRlcml0ZXJvYmplY3QgKml0OwogCkBAIC0xMjA3LDYgKzExMjgsOSBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGl0ID0gUHlPYmplY3RfTmV3KGZvcm1hdHRlcml0ZXJvYmplY3QsICZQeUZvcm1hdHRlckl0ZXJfVHlwZSk7CiAgICAgaWYgKGl0ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTIxNiwxMCArMTE0MCw3IEBACiAgICAgaXQtPnN0ciA9IHNlbGY7CiAKICAgICAvKiBpbml0aWFsaXplIHRoZSBjb250YWluZWQgTWFya3VwSXRlcmF0b3IgKi8KLSAgICBNYXJrdXBJdGVyYXRvcl9pbml0KCZpdC0+aXRfbWFya3VwLAotICAgICAgICAgICAgICAgICAgICAgICAgU1RSSU5HTElCX1NUUihzZWxmKSwKLSAgICAgICAgICAgICAgICAgICAgICAgIFNUUklOR0xJQl9MRU4oc2VsZikpOwotCisgICAgTWFya3VwSXRlcmF0b3JfaW5pdCgmaXQtPml0X21hcmt1cCwgKFB5T2JqZWN0KilzZWxmLCAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSk7CiAgICAgcmV0dXJuIChQeU9iamVjdCAqKWl0OwogfQogCkBAIC0xMjM1LDkgKzExNTYsNyBAQAogCiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgUHlPYmplY3RfSEVBRAotCi0gICAgU1RSSU5HTElCX09CSkVDVCAqc3RyOwotCisgICAgUHlPYmplY3QgKnN0cjsKICAgICBGaWVsZE5hbWVJdGVyYXRvciBpdF9maWVsZDsKIH0gZmllbGRuYW1laXRlcm9iamVjdDsKIApAQCAtMTMzOCw3ICsxMjU3LDcgQEAKICAgIGZpZWxkX25hbWVfc3BsaXQuICBUaGUgaXRlcmF0b3IgaXQgcmV0dXJucyBpcyBhCiAgICBGaWVsZE5hbWVJdGVyYXRvciAqLwogc3RhdGljIFB5T2JqZWN0ICoKLWZvcm1hdHRlcl9maWVsZF9uYW1lX3NwbGl0KFB5T2JqZWN0ICppZ25vcmVkLCBTVFJJTkdMSUJfT0JKRUNUICpzZWxmKQorZm9ybWF0dGVyX2ZpZWxkX25hbWVfc3BsaXQoUHlPYmplY3QgKmlnbm9yZWQsIFB5T2JqZWN0ICpzZWxmKQogewogICAgIFN1YlN0cmluZyBmaXJzdDsKICAgICBQeV9zc2l6ZV90IGZpcnN0X2lkeDsKQEAgLTEzNTIsNiArMTI3MSw5IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgaXQgPSBQeU9iamVjdF9OZXcoZmllbGRuYW1laXRlcm9iamVjdCwgJlB5RmllbGROYW1lSXRlcl9UeXBlKTsKICAgICBpZiAoaXQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xMzYzLDggKzEyODUsNyBAQAogCiAgICAgLyogUGFzcyBpbiBhdXRvX251bWJlciA9IE5VTEwuIFdlJ2xsIHJldHVybiBhbiBlbXB0eSBzdHJpbmcgZm9yCiAgICAgICAgZmlyc3Rfb2JqIGluIHRoYXQgY2FzZS4gKi8KLSAgICBpZiAoIWZpZWxkX25hbWVfc3BsaXQoU1RSSU5HTElCX1NUUihzZWxmKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgU1RSSU5HTElCX0xFTihzZWxmKSwKKyAgICBpZiAoIWZpZWxkX25hbWVfc3BsaXQoKFB5T2JqZWN0KilzZWxmLCAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZpcnN0LCAmZmlyc3RfaWR4LCAmaXQtPml0X2ZpZWxkLCBOVUxMKSkKICAgICAgICAgZ290byBkb25lOwogCmRpZmYgLS1naXQgYS9PYmplY3RzL3N0cmluZ2xpYi91bmljb2RlZGVmcy5oIGIvT2JqZWN0cy9zdHJpbmdsaWIvdW5pY29kZWRlZnMuaAppbmRleCAwOWRhZTZkLi4zY2NjNTdlIDEwMDY0NAotLS0gYS9PYmplY3RzL3N0cmluZ2xpYi91bmljb2RlZGVmcy5oCisrKyBiL09iamVjdHMvc3RyaW5nbGliL3VuaWNvZGVkZWZzLmgKQEAgLTYsNyArNiwxMCBAQAogICAgY29tcGlsZWQgYXMgdW5pY29kZS4gKi8KICNkZWZpbmUgU1RSSU5HTElCX0lTX1VOSUNPREUgICAgIDEKIAorI2RlZmluZSBGQVNUU0VBUkNIICAgICAgICAgICAgICAgZmFzdHNlYXJjaAorI2RlZmluZSBTVFJJTkdMSUIoRikgICAgICAgICAgICAgc3RyaW5nbGliXyMjRgogI2RlZmluZSBTVFJJTkdMSUJfT0JKRUNUICAgICAgICAgUHlVbmljb2RlT2JqZWN0CisjZGVmaW5lIFNUUklOR0xJQl9TSVpFT0ZfQ0hBUiAgICBQeV9VTklDT0RFX1NJWkUKICNkZWZpbmUgU1RSSU5HTElCX0NIQVIgICAgICAgICAgIFB5X1VOSUNPREUKICNkZWZpbmUgU1RSSU5HTElCX1RZUEVfTkFNRSAgICAgICJ1bmljb2RlIgogI2RlZmluZSBTVFJJTkdMSUJfUEFSU0VfQ09ERSAgICAgIlUiCkBAIC0xNSw5ICsxOCw2IEBACiAjZGVmaW5lIFNUUklOR0xJQl9JU0xJTkVCUkVBSyAgICBCTE9PTV9MSU5FQlJFQUsKICNkZWZpbmUgU1RSSU5HTElCX0lTREVDSU1BTCAgICAgIFB5X1VOSUNPREVfSVNERUNJTUFMCiAjZGVmaW5lIFNUUklOR0xJQl9UT0RFQ0lNQUwgICAgICBQeV9VTklDT0RFX1RPREVDSU1BTAotI2RlZmluZSBTVFJJTkdMSUJfVE9VUFBFUiAgICAgICAgUHlfVU5JQ09ERV9UT1VQUEVSCi0jZGVmaW5lIFNUUklOR0xJQl9UT0xPV0VSICAgICAgICBQeV9VTklDT0RFX1RPTE9XRVIKLSNkZWZpbmUgU1RSSU5HTElCX0ZJTEwgICAgICAgICAgIFB5X1VOSUNPREVfRklMTAogI2RlZmluZSBTVFJJTkdMSUJfU1RSICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUKICNkZWZpbmUgU1RSSU5HTElCX0xFTiAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRQogI2RlZmluZSBTVFJJTkdMSUJfTkVXICAgICAgICAgICAgUHlVbmljb2RlX0Zyb21Vbmljb2RlCmRpZmYgLS1naXQgYS9PYmplY3RzL3R1cGxlb2JqZWN0LmMgYi9PYmplY3RzL3R1cGxlb2JqZWN0LmMKaW5kZXggZjZkYmMzMS4uZDU4ODM5ZSAxMDA2NDQKLS0tIGEvT2JqZWN0cy90dXBsZW9iamVjdC5jCisrKyBiL09iamVjdHMvdHVwbGVvYmplY3QuYwpAQCAtODYsNyArODYsNyBAQAogICAgICAgICB7CiAgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgfQotICAgICAgICBuYnl0ZXMgKz0gc2l6ZW9mKFB5VHVwbGVPYmplY3QpIC0gc2l6ZW9mKFB5T2JqZWN0ICopOworICAgICAgICAvKiBuYnl0ZXMgKz0gc2l6ZW9mKFB5VHVwbGVPYmplY3QpIC0gc2l6ZW9mKFB5T2JqZWN0ICopOyAqLwogCiAgICAgICAgIG9wID0gUHlPYmplY3RfR0NfTmV3VmFyKFB5VHVwbGVPYmplY3QsICZQeVR1cGxlX1R5cGUsIHNpemUpOwogICAgICAgICBpZiAob3AgPT0gTlVMTCkKQEAgLTMxMiwxMSArMzEyLDEyIEBACiBzdGF0aWMgUHlfaGFzaF90CiB0dXBsZWhhc2goUHlUdXBsZU9iamVjdCAqdikKIHsKLSAgICByZWdpc3RlciBQeV9oYXNoX3QgeCwgeTsKKyAgICByZWdpc3RlciBQeV91aGFzaF90IHg7CisgICAgcmVnaXN0ZXIgUHlfaGFzaF90IHk7CiAgICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBsZW4gPSBQeV9TSVpFKHYpOwogICAgIHJlZ2lzdGVyIFB5T2JqZWN0ICoqcDsKLSAgICBQeV9oYXNoX3QgbXVsdCA9IF9QeUhBU0hfTVVMVElQTElFUjsKLSAgICB4ID0gMHgzNDU2NzhMOworICAgIFB5X3VoYXNoX3QgbXVsdCA9IF9QeUhBU0hfTVVMVElQTElFUjsKKyAgICB4ID0gMHgzNDU2Nzg7CiAgICAgcCA9IHYtPm9iX2l0ZW07CiAgICAgd2hpbGUgKC0tbGVuID49IDApIHsKICAgICAgICAgeSA9IFB5T2JqZWN0X0hhc2goKnArKyk7CkBAIC0zMjcsNyArMzI4LDcgQEAKICAgICAgICAgbXVsdCArPSAoUHlfaGFzaF90KSg4MjUyMEwgKyBsZW4gKyBsZW4pOwogICAgIH0KICAgICB4ICs9IDk3NTMxTDsKLSAgICBpZiAoeCA9PSAtMSkKKyAgICBpZiAoeCA9PSAoUHlfdWhhc2hfdCktMSkKICAgICAgICAgeCA9IC0yOwogICAgIHJldHVybiB4OwogfQpAQCAtNTQzLDEwICs1NDQsOCBAQAogICAgIFB5X3NzaXplX3QgaTsKICAgICBQeV9zc2l6ZV90IHZsZW4sIHdsZW47CiAKLSAgICBpZiAoIVB5VHVwbGVfQ2hlY2sodikgfHwgIVB5VHVwbGVfQ2hlY2sodykpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBpZiAoIVB5VHVwbGVfQ2hlY2sodikgfHwgIVB5VHVwbGVfQ2hlY2sodykpCisgICAgICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsKIAogICAgIHZ0ID0gKFB5VHVwbGVPYmplY3QgKil2OwogICAgIHd0ID0gKFB5VHVwbGVPYmplY3QgKil3OwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy90eXBlb2JqZWN0LmMgYi9PYmplY3RzL3R5cGVvYmplY3QuYwppbmRleCBjMzgyMmFiLi40OTVjYzZkIDEwMDY0NAotLS0gYS9PYmplY3RzL3R5cGVvYmplY3QuYworKysgYi9PYmplY3RzL3R5cGVvYmplY3QuYwpAQCAtMjAsMTAgKzIwLDExIEBACiAgICAgICAgICA+PiAoOCpzaXplb2YodW5zaWduZWQgaW50KSAtIE1DQUNIRV9TSVpFX0VYUCkpCiAjZGVmaW5lIE1DQUNIRV9IQVNIX01FVEhPRCh0eXBlLCBuYW1lKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgIE1DQUNIRV9IQVNIKCh0eXBlKS0+dHBfdmVyc2lvbl90YWcsICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAgICAgICAgICAgICAoKFB5VW5pY29kZU9iamVjdCAqKShuYW1lKSktPmhhc2gpCisgICAgICAgICAgICAgICAgICAgICgoUHlBU0NJSU9iamVjdCAqKShuYW1lKSktPmhhc2gpCiAjZGVmaW5lIE1DQUNIRV9DQUNIRUFCTEVfTkFNRShuYW1lKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgIFB5VW5pY29kZV9DaGVja0V4YWN0KG5hbWUpICYmICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKG5hbWUpIDw9IE1DQUNIRV9NQVhfQVRUUl9TSVpFCisgICAgICAgIFB5VW5pY29kZV9SRUFEWShuYW1lKSAhPSAtMSAmJiAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWUpIDw9IE1DQUNIRV9NQVhfQVRUUl9TSVpFCiAKIHN0cnVjdCBtZXRob2RfY2FjaGVfZW50cnkgewogICAgIHVuc2lnbmVkIGludCB2ZXJzaW9uOwpAQCAtMzQsNiArMzUsOSBAQAogc3RhdGljIHN0cnVjdCBtZXRob2RfY2FjaGVfZW50cnkgbWV0aG9kX2NhY2hlWzEgPDwgTUNBQ0hFX1NJWkVfRVhQXTsKIHN0YXRpYyB1bnNpZ25lZCBpbnQgbmV4dF92ZXJzaW9uX3RhZyA9IDA7CiAKK19QeV9JREVOVElGSUVSKF9fZGljdF9fKTsKK19QeV9JREVOVElGSUVSKF9fY2xhc3NfXyk7CisKIHVuc2lnbmVkIGludAogUHlUeXBlX0NsZWFyQ2FjaGUodm9pZCkKIHsKQEAgLTk2LDE1ICsxMDAsMTMgQEAKIHN0YXRpYyB2b2lkCiB0eXBlX21yb19tb2RpZmllZChQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICpiYXNlcykgewogICAgIC8qCi0gICAgICAgQ2hlY2sgdGhhdCBhbGwgYmFzZSBjbGFzc2VzIG9yIGVsZW1lbnRzIG9mIHRoZSBtcm8gb2YgdHlwZSBhcmUKKyAgICAgICBDaGVjayB0aGF0IGFsbCBiYXNlIGNsYXNzZXMgb3IgZWxlbWVudHMgb2YgdGhlIE1STyBvZiB0eXBlIGFyZQogICAgICAgIGFibGUgdG8gYmUgY2FjaGVkLiAgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgYWZ0ZXIgdGhlIGJhc2UKICAgICAgICBjbGFzc2VzIG9yIG1ybyBvZiB0aGUgdHlwZSBhcmUgYWx0ZXJlZC4KIAogICAgICAgIFVuc2V0IEhBVkVfVkVSU0lPTl9UQUcgYW5kIFZBTElEX1ZFUlNJT05fVEFHIGlmIHRoZSB0eXBlCi0gICAgICAgaW5oZXJpdHMgZnJvbSBhbiBvbGQtc3R5bGUgY2xhc3MsIGVpdGhlciBkaXJlY3RseSBvciBpZiBpdAotICAgICAgIGFwcGVhcnMgaW4gdGhlIE1STyBvZiBhIG5ldy1zdHlsZSBjbGFzcy4gIE5vIHN1cHBvcnQgZWl0aGVyIGZvcgotICAgICAgIGN1c3RvbSBNUk9zIHRoYXQgaW5jbHVkZSB0eXBlcyB0aGF0IGFyZSBub3Qgb2ZmaWNpYWxseSBzdXBlcgotICAgICAgIHR5cGVzLgorICAgICAgIGhhcyBhIGN1c3RvbSBNUk8gdGhhdCBpbmNsdWRlcyBhIHR5cGUgd2hpY2ggaXMgbm90IG9mZmljaWFsbHkKKyAgICAgICBzdXBlciB0eXBlLgogCiAgICAgICAgQ2FsbGVkIGZyb20gbXJvX2ludGVybmFsLCB3aGljaCB3aWxsIHN1YnNlcXVlbnRseSBiZSBjYWxsZWQgb24KICAgICAgICBlYWNoIHN1YmNsYXNzIHdoZW4gdGhlaXIgbXJvIGlzIHJlY3Vyc2l2ZWx5IHVwZGF0ZWQuCkBAIC0xMjAsMTEgKzEyMiw3IEBACiAgICAgICAgIFB5T2JqZWN0ICpiID0gUHlUdXBsZV9HRVRfSVRFTShiYXNlcywgaSk7CiAgICAgICAgIFB5VHlwZU9iamVjdCAqY2xzOwogCi0gICAgICAgIGlmICghUHlUeXBlX0NoZWNrKGIpICkgewotICAgICAgICAgICAgY2xlYXIgPSAxOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH0KLQorICAgICAgICBhc3NlcnQoUHlUeXBlX0NoZWNrKGIpKTsKICAgICAgICAgY2xzID0gKFB5VHlwZU9iamVjdCAqKWI7CiAKICAgICAgICAgaWYgKCFQeVR5cGVfSGFzRmVhdHVyZShjbHMsIFB5X1RQRkxBR1NfSEFWRV9WRVJTSU9OX1RBRykgfHwKQEAgLTIwMSw2ICsxOTksMjIgQEAKICAgICB7MH0KIH07CiAKK3N0YXRpYyBpbnQKK2NoZWNrX3NldF9zcGVjaWFsX3R5cGVfYXR0cihQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICp2YWx1ZSwgY29uc3QgY2hhciAqbmFtZSkKK3sKKyAgICBpZiAoISh0eXBlLT50cF9mbGFncyAmIFB5X1RQRkxBR1NfSEVBUFRZUEUpKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiY2FuJ3Qgc2V0ICVzLiVzIiwgdHlwZS0+dHBfbmFtZSwgbmFtZSk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBpZiAoIXZhbHVlKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiY2FuJ3QgZGVsZXRlICVzLiVzIiwgdHlwZS0+dHBfbmFtZSwgbmFtZSk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICByZXR1cm4gMTsKK30KKwogc3RhdGljIFB5T2JqZWN0ICoKIHR5cGVfbmFtZShQeVR5cGVPYmplY3QgKnR5cGUsIHZvaWQgKmNvbnRleHQpCiB7CkBAIC0yMjIsNiArMjM2LDE5IEBACiAgICAgfQogfQogCitzdGF0aWMgUHlPYmplY3QgKgordHlwZV9xdWFsbmFtZShQeVR5cGVPYmplY3QgKnR5cGUsIHZvaWQgKmNvbnRleHQpCit7CisgICAgaWYgKHR5cGUtPnRwX2ZsYWdzICYgUHlfVFBGTEFHU19IRUFQVFlQRSkgeworICAgICAgICBQeUhlYXBUeXBlT2JqZWN0KiBldCA9IChQeUhlYXBUeXBlT2JqZWN0Kil0eXBlOworICAgICAgICBQeV9JTkNSRUYoZXQtPmh0X3F1YWxuYW1lKTsKKyAgICAgICAgcmV0dXJuIGV0LT5odF9xdWFsbmFtZTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHJldHVybiB0eXBlX25hbWUodHlwZSwgY29udGV4dCk7CisgICAgfQorfQorCiBzdGF0aWMgaW50CiB0eXBlX3NldF9uYW1lKFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKnZhbHVlLCB2b2lkICpjb250ZXh0KQogewpAQCAtMjI5LDE2ICsyNTYsOCBAQAogICAgIGNoYXIgKnRwX25hbWU7CiAgICAgUHlPYmplY3QgKnRtcDsKIAotICAgIGlmICghKHR5cGUtPnRwX2ZsYWdzICYgUHlfVFBGTEFHU19IRUFQVFlQRSkpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJjYW4ndCBzZXQgJXMuX19uYW1lX18iLCB0eXBlLT50cF9uYW1lKTsKKyAgICBpZiAoIWNoZWNrX3NldF9zcGVjaWFsX3R5cGVfYXR0cih0eXBlLCB2YWx1ZSwgIl9fbmFtZV9fIikpCiAgICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgaWYgKCF2YWx1ZSkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgImNhbid0IGRlbGV0ZSAlcy5fX25hbWVfXyIsIHR5cGUtPnRwX25hbWUpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQogICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHZhbHVlKSkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgImNhbiBvbmx5IGFzc2lnbiBzdHJpbmcgdG8gJXMuX19uYW1lX18sIG5vdCAnJXMnIiwKQEAgLTI3NCw2ICsyOTMsMjUgQEAKICAgICByZXR1cm4gMDsKIH0KIAorc3RhdGljIGludAordHlwZV9zZXRfcXVhbG5hbWUoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqdmFsdWUsIHZvaWQgKmNvbnRleHQpCit7CisgICAgUHlIZWFwVHlwZU9iamVjdCogZXQ7CisKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh2YWx1ZSkpIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJjYW4gb25seSBhc3NpZ24gc3RyaW5nIHRvICVzLl9fcXVhbG5hbWVfXywgbm90ICclcyciLAorICAgICAgICAgICAgICAgICAgICAgdHlwZS0+dHBfbmFtZSwgUHlfVFlQRSh2YWx1ZSktPnRwX25hbWUpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgZXQgPSAoUHlIZWFwVHlwZU9iamVjdCopdHlwZTsKKyAgICBQeV9JTkNSRUYodmFsdWUpOworICAgIFB5X0RFQ1JFRihldC0+aHRfcXVhbG5hbWUpOworICAgIGV0LT5odF9xdWFsbmFtZSA9IHZhbHVlOworICAgIHJldHVybiAwOworfQorCiBzdGF0aWMgUHlPYmplY3QgKgogdHlwZV9tb2R1bGUoUHlUeXBlT2JqZWN0ICp0eXBlLCB2b2lkICpjb250ZXh0KQogewpAQCAtMzAxLDE2ICszMzksOCBAQAogc3RhdGljIGludAogdHlwZV9zZXRfbW9kdWxlKFB5VHlwZU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKnZhbHVlLCB2b2lkICpjb250ZXh0KQogewotICAgIGlmICghKHR5cGUtPnRwX2ZsYWdzICYgUHlfVFBGTEFHU19IRUFQVFlQRSkpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJjYW4ndCBzZXQgJXMuX19tb2R1bGVfXyIsIHR5cGUtPnRwX25hbWUpOworICAgIGlmICghY2hlY2tfc2V0X3NwZWNpYWxfdHlwZV9hdHRyKHR5cGUsIHZhbHVlLCAiX19tb2R1bGVfXyIpKQogICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIGlmICghdmFsdWUpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJjYW4ndCBkZWxldGUgJXMuX19tb2R1bGVfXyIsIHR5cGUtPnRwX25hbWUpOwotICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQogCiAgICAgUHlUeXBlX01vZGlmaWVkKHR5cGUpOwogCkBAIC00MzMsMTYgKzQ2Myw4IEBACiAgICAgUHlUeXBlT2JqZWN0ICpuZXdfYmFzZSwgKm9sZF9iYXNlOwogICAgIFB5T2JqZWN0ICpvbGRfYmFzZXMsICpvbGRfbXJvOwogCi0gICAgaWYgKCEodHlwZS0+dHBfZmxhZ3MgJiBQeV9UUEZMQUdTX0hFQVBUWVBFKSkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgImNhbid0IHNldCAlcy5fX2Jhc2VzX18iLCB0eXBlLT50cF9uYW1lKTsKKyAgICBpZiAoIWNoZWNrX3NldF9zcGVjaWFsX3R5cGVfYXR0cih0eXBlLCB2YWx1ZSwgIl9fYmFzZXNfXyIpKQogICAgICAgICByZXR1cm4gLTE7Ci0gICAgfQotICAgIGlmICghdmFsdWUpIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJjYW4ndCBkZWxldGUgJXMuX19iYXNlc19fIiwgdHlwZS0+dHBfbmFtZSk7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9CiAgICAgaWYgKCFQeVR1cGxlX0NoZWNrKHZhbHVlKSkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICJjYW4gb25seSBhc3NpZ24gdHVwbGUgdG8gJXMuX19iYXNlc19fLCBub3QgJXMiLApAQCAtNDYwLDcgKzQ4Miw3IEBACiAgICAgICAgIGlmICghUHlUeXBlX0NoZWNrKG9iKSkgewogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KAogICAgICAgICAgICAgICAgIFB5RXhjX1R5cGVFcnJvciwKLSAgICAiJXMuX19iYXNlc19fIG11c3QgYmUgdHVwbGUgb2Ygb2xkLSBvciBuZXctc3R5bGUgY2xhc3Nlcywgbm90ICclcyciLAorICAgICIlcy5fX2Jhc2VzX18gbXVzdCBiZSB0dXBsZSBvZiBjbGFzc2VzLCBub3QgJyVzJyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZS0+dHBfbmFtZSwgUHlfVFlQRShvYiktPnRwX25hbWUpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIH0KQEAgLTU5Niw2ICs2MTgsMTUgQEAKICAgICByZXR1cm4gcmVzdWx0OwogfQogCitzdGF0aWMgaW50Cit0eXBlX3NldF9kb2MoUHlUeXBlT2JqZWN0ICp0eXBlLCBQeU9iamVjdCAqdmFsdWUsIHZvaWQgKmNvbnRleHQpCit7CisgICAgaWYgKCFjaGVja19zZXRfc3BlY2lhbF90eXBlX2F0dHIodHlwZSwgdmFsdWUsICJfX2RvY19fIikpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBQeVR5cGVfTW9kaWZpZWQodHlwZSk7CisgICAgcmV0dXJuIFB5RGljdF9TZXRJdGVtU3RyaW5nKHR5cGUtPnRwX2RpY3QsICJfX2RvY19fIiwgdmFsdWUpOworfQorCiBzdGF0aWMgUHlPYmplY3QgKgogdHlwZV9fX2luc3RhbmNlY2hlY2tfXyhQeU9iamVjdCAqdHlwZSwgUHlPYmplY3QgKmluc3QpCiB7CkBAIC02MjYsMTIgKzY1NywxMyBAQAogCiBzdGF0aWMgUHlHZXRTZXREZWYgdHlwZV9nZXRzZXRzW10gPSB7CiAgICAgeyJfX25hbWVfXyIsIChnZXR0ZXIpdHlwZV9uYW1lLCAoc2V0dGVyKXR5cGVfc2V0X25hbWUsIE5VTEx9LAorICAgIHsiX19xdWFsbmFtZV9fIiwgKGdldHRlcil0eXBlX3F1YWxuYW1lLCAoc2V0dGVyKXR5cGVfc2V0X3F1YWxuYW1lLCBOVUxMfSwKICAgICB7Il9fYmFzZXNfXyIsIChnZXR0ZXIpdHlwZV9nZXRfYmFzZXMsIChzZXR0ZXIpdHlwZV9zZXRfYmFzZXMsIE5VTEx9LAogICAgIHsiX19tb2R1bGVfXyIsIChnZXR0ZXIpdHlwZV9tb2R1bGUsIChzZXR0ZXIpdHlwZV9zZXRfbW9kdWxlLCBOVUxMfSwKICAgICB7Il9fYWJzdHJhY3RtZXRob2RzX18iLCAoZ2V0dGVyKXR5cGVfYWJzdHJhY3RtZXRob2RzLAogICAgICAoc2V0dGVyKXR5cGVfc2V0X2Fic3RyYWN0bWV0aG9kcywgTlVMTH0sCiAgICAgeyJfX2RpY3RfXyIsICAoZ2V0dGVyKXR5cGVfZGljdCwgIE5VTEwsIE5VTEx9LAotICAgIHsiX19kb2NfXyIsIChnZXR0ZXIpdHlwZV9nZXRfZG9jLCBOVUxMLCBOVUxMfSwKKyAgICB7Il9fZG9jX18iLCAoZ2V0dGVyKXR5cGVfZ2V0X2RvYywgKHNldHRlcil0eXBlX3NldF9kb2MsIE5VTEx9LAogICAgIHswfQogfTsKIApAQCAtNjQ3LDcgKzY3OSw3IEBACiAgICAgICAgIFB5X0RFQ1JFRihtb2QpOwogICAgICAgICBtb2QgPSBOVUxMOwogICAgIH0KLSAgICBuYW1lID0gdHlwZV9uYW1lKHR5cGUsIE5VTEwpOworICAgIG5hbWUgPSB0eXBlX3F1YWxuYW1lKHR5cGUsIE5VTEwpOwogICAgIGlmIChuYW1lID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCkBAIC05MDIsNyArOTM0LDcgQEAKIAogICAgIC8qIEZpbmQgdGhlIG5lYXJlc3QgYmFzZSB3aXRoIGEgZGlmZmVyZW50IHRwX2RlYWxsb2MgKi8KICAgICBiYXNlID0gdHlwZTsKLSAgICB3aGlsZSAoKGJhc2VkZWFsbG9jID0gYmFzZS0+dHBfZGVhbGxvYykgPT0gc3VidHlwZV9kZWFsbG9jKSB7CisgICAgd2hpbGUgKCgvKmJhc2VkZWFsbG9jID0qLyBiYXNlLT50cF9kZWFsbG9jKSA9PSBzdWJ0eXBlX2RlYWxsb2MpIHsKICAgICAgICAgYmFzZSA9IGJhc2UtPnRwX2Jhc2U7CiAgICAgICAgIGFzc2VydChiYXNlKTsKICAgICB9CkBAIC0xMTI1LDE2ICsxMTU3LDE0IEBACiAqLwogCiBzdGF0aWMgUHlPYmplY3QgKgotbG9va3VwX21heWJlKFB5T2JqZWN0ICpzZWxmLCBjaGFyICphdHRyc3RyLCBQeU9iamVjdCAqKmF0dHJvYmopCitsb29rdXBfbWF5YmUoUHlPYmplY3QgKnNlbGYsIF9QeV9JZGVudGlmaWVyICphdHRyaWQpCiB7Ci0gICAgUHlPYmplY3QgKnJlczsKKyAgICBQeU9iamVjdCAqYXR0ciwgKnJlczsKIAotICAgIGlmICgqYXR0cm9iaiA9PSBOVUxMKSB7Ci0gICAgICAgICphdHRyb2JqID0gUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcoYXR0cnN0cik7Ci0gICAgICAgIGlmICgqYXR0cm9iaiA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotICAgIHJlcyA9IF9QeVR5cGVfTG9va3VwKFB5X1RZUEUoc2VsZiksICphdHRyb2JqKTsKKyAgICBhdHRyID0gX1B5VW5pY29kZV9Gcm9tSWQoYXR0cmlkKTsKKyAgICBpZiAoYXR0ciA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXMgPSBfUHlUeXBlX0xvb2t1cChQeV9UWVBFKHNlbGYpLCBhdHRyKTsKICAgICBpZiAocmVzICE9IE5VTEwpIHsKICAgICAgICAgZGVzY3JnZXRmdW5jIGY7CiAgICAgICAgIGlmICgoZiA9IFB5X1RZUEUocmVzKS0+dHBfZGVzY3JfZ2V0KSA9PSBOVUxMKQpAQCAtMTE0NiwxOCArMTE3NiwxOCBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotbG9va3VwX21ldGhvZChQeU9iamVjdCAqc2VsZiwgY2hhciAqYXR0cnN0ciwgUHlPYmplY3QgKiphdHRyb2JqKQorbG9va3VwX21ldGhvZChQeU9iamVjdCAqc2VsZiwgX1B5X0lkZW50aWZpZXIgKmF0dHJpZCkKIHsKLSAgICBQeU9iamVjdCAqcmVzID0gbG9va3VwX21heWJlKHNlbGYsIGF0dHJzdHIsIGF0dHJvYmopOworICAgIFB5T2JqZWN0ICpyZXMgPSBsb29rdXBfbWF5YmUoc2VsZiwgYXR0cmlkKTsKICAgICBpZiAocmVzID09IE5VTEwgJiYgIVB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgIFB5RXJyX1NldE9iamVjdChQeUV4Y19BdHRyaWJ1dGVFcnJvciwgKmF0dHJvYmopOworICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNfQXR0cmlidXRlRXJyb3IsIGF0dHJpZC0+b2JqZWN0KTsKICAgICByZXR1cm4gcmVzOwogfQogCiBQeU9iamVjdCAqCi1fUHlPYmplY3RfTG9va3VwU3BlY2lhbChQeU9iamVjdCAqc2VsZiwgY2hhciAqYXR0cnN0ciwgUHlPYmplY3QgKiphdHRyb2JqKQorX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwoUHlPYmplY3QgKnNlbGYsIF9QeV9JZGVudGlmaWVyICphdHRyaWQpCiB7Ci0gICAgcmV0dXJuIGxvb2t1cF9tYXliZShzZWxmLCBhdHRyc3RyLCBhdHRyb2JqKTsKKyAgICByZXR1cm4gbG9va3VwX21heWJlKHNlbGYsIGF0dHJpZCk7CiB9CiAKIC8qIEEgdmFyaWF0aW9uIG9mIFB5T2JqZWN0X0NhbGxNZXRob2QgdGhhdCB1c2VzIGxvb2t1cF9tZXRob2QoKQpAQCAtMTE2NSwxNyArMTE5NSwxNyBAQAogICAgYXMgbG9va3VwX21ldGhvZCB0byBjYWNoZSB0aGUgaW50ZXJuZWQgbmFtZSBzdHJpbmcgb2JqZWN0LiAqLwogCiBzdGF0aWMgUHlPYmplY3QgKgotY2FsbF9tZXRob2QoUHlPYmplY3QgKm8sIGNoYXIgKm5hbWUsIFB5T2JqZWN0ICoqbmFtZW9iaiwgY2hhciAqZm9ybWF0LCAuLi4pCitjYWxsX21ldGhvZChQeU9iamVjdCAqbywgX1B5X0lkZW50aWZpZXIgKm5hbWVpZCwgY2hhciAqZm9ybWF0LCAuLi4pCiB7CiAgICAgdmFfbGlzdCB2YTsKICAgICBQeU9iamVjdCAqYXJncywgKmZ1bmMgPSAwLCAqcmV0dmFsOwogICAgIHZhX3N0YXJ0KHZhLCBmb3JtYXQpOwogCi0gICAgZnVuYyA9IGxvb2t1cF9tYXliZShvLCBuYW1lLCBuYW1lb2JqKTsKKyAgICBmdW5jID0gbG9va3VwX21heWJlKG8sIG5hbWVpZCk7CiAgICAgaWYgKGZ1bmMgPT0gTlVMTCkgewogICAgICAgICB2YV9lbmQodmEpOwogICAgICAgICBpZiAoIVB5RXJyX09jY3VycmVkKCkpCi0gICAgICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNfQXR0cmlidXRlRXJyb3IsICpuYW1lb2JqKTsKKyAgICAgICAgICAgIFB5RXJyX1NldE9iamVjdChQeUV4Y19BdHRyaWJ1dGVFcnJvciwgbmFtZWlkLT5vYmplY3QpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKQEAgLTEyMDEsMTkgKzEyMzEsMTcgQEAKIC8qIENsb25lIG9mIGNhbGxfbWV0aG9kKCkgdGhhdCByZXR1cm5zIE5vdEltcGxlbWVudGVkIHdoZW4gdGhlIGxvb2t1cCBmYWlscy4gKi8KIAogc3RhdGljIFB5T2JqZWN0ICoKLWNhbGxfbWF5YmUoUHlPYmplY3QgKm8sIGNoYXIgKm5hbWUsIFB5T2JqZWN0ICoqbmFtZW9iaiwgY2hhciAqZm9ybWF0LCAuLi4pCitjYWxsX21heWJlKFB5T2JqZWN0ICpvLCBfUHlfSWRlbnRpZmllciAqbmFtZWlkLCBjaGFyICpmb3JtYXQsIC4uLikKIHsKICAgICB2YV9saXN0IHZhOwogICAgIFB5T2JqZWN0ICphcmdzLCAqZnVuYyA9IDAsICpyZXR2YWw7CiAgICAgdmFfc3RhcnQodmEsIGZvcm1hdCk7CiAKLSAgICBmdW5jID0gbG9va3VwX21heWJlKG8sIG5hbWUsIG5hbWVvYmopOworICAgIGZ1bmMgPSBsb29rdXBfbWF5YmUobywgbmFtZWlkKTsKICAgICBpZiAoZnVuYyA9PSBOVUxMKSB7CiAgICAgICAgIHZhX2VuZCh2YSk7Ci0gICAgICAgIGlmICghUHlFcnJfT2NjdXJyZWQoKSkgewotICAgICAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKLSAgICAgICAgfQorICAgICAgICBpZiAoIVB5RXJyX09jY3VycmVkKCkpCisgICAgICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIApAQCAtMTI3OSw3ICsxMzA3LDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBjbGFzc19uYW1lKFB5T2JqZWN0ICpjbHMpCiB7Ci0gICAgUHlPYmplY3QgKm5hbWUgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGNscywgIl9fbmFtZV9fIik7CisgICAgX1B5X0lERU5USUZJRVIoX19uYW1lX18pOworICAgIFB5T2JqZWN0ICpuYW1lID0gX1B5T2JqZWN0X0dldEF0dHJJZChjbHMsICZQeUlkX19fbmFtZV9fKTsKICAgICBpZiAobmFtZSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIFB5X1hERUNSRUYobmFtZSk7CkBAIC0xNTM0LDkgKzE1NjMsOSBAQAogICAgICAgICByZXN1bHQgPSBtcm9faW1wbGVtZW50YXRpb24odHlwZSk7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICBzdGF0aWMgUHlPYmplY3QgKm1yb19zdHI7CisgICAgICAgIF9QeV9JREVOVElGSUVSKG1ybyk7CiAgICAgICAgIGNoZWNraXQgPSAxOwotICAgICAgICBtcm8gPSBsb29rdXBfbWV0aG9kKChQeU9iamVjdCAqKXR5cGUsICJtcm8iLCAmbXJvX3N0cik7CisgICAgICAgIG1ybyA9IGxvb2t1cF9tZXRob2QoKFB5T2JqZWN0ICopdHlwZSwgJlB5SWRfbXJvKTsKICAgICAgICAgaWYgKG1ybyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsT2JqZWN0KG1ybywgTlVMTCk7CkBAIC0xNTgwLDcgKzE2MDksNyBAQAogICAgIHR5cGUtPnRwX21ybyA9IHR1cGxlOwogCiAgICAgdHlwZV9tcm9fbW9kaWZpZWQodHlwZSwgdHlwZS0+dHBfbXJvKTsKLSAgICAvKiBjb3JuZXIgY2FzZTogdGhlIG9sZC1zdHlsZSBzdXBlciBjbGFzcyBtaWdodCBoYXZlIGJlZW4gaGlkZGVuCisgICAgLyogY29ybmVyIGNhc2U6IHRoZSBzdXBlciBjbGFzcyBtaWdodCBoYXZlIGJlZW4gaGlkZGVuCiAgICAgICAgZnJvbSB0aGUgY3VzdG9tIE1STyAqLwogICAgIHR5cGVfbXJvX21vZGlmaWVkKHR5cGUsIHR5cGUtPnRwX2Jhc2VzKTsKIApAQCAtMTYzNyw5ICsxNjY2LDggQEAKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CiAgICAgfQotICAgIGlmIChiYXNlID09IE5VTEwpCi0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAiYSBuZXctc3R5bGUgY2xhc3MgY2FuJ3QgaGF2ZSBvbmx5IGNsYXNzaWMgYmFzZXMiKTsKKyAgICBhc3NlcnQgKGJhc2UgIT0gTlVMTCk7CisKICAgICByZXR1cm4gYmFzZTsKIH0KIApAQCAtMTcwNywxNCArMTczNSwxMiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGdldF9kaWN0X2Rlc2NyaXB0b3IoUHlUeXBlT2JqZWN0ICp0eXBlKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqZGljdF9zdHI7CisgICAgUHlPYmplY3QgKmRpY3Rfc3RyOwogICAgIFB5T2JqZWN0ICpkZXNjcjsKIAotICAgIGlmIChkaWN0X3N0ciA9PSBOVUxMKSB7Ci0gICAgICAgIGRpY3Rfc3RyID0gUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcoIl9fZGljdF9fIik7Ci0gICAgICAgIGlmIChkaWN0X3N0ciA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQorICAgIGRpY3Rfc3RyID0gX1B5VW5pY29kZV9Gcm9tSWQoJlB5SWRfX19kaWN0X18pOyAvKiBib3Jyb3dlZCAqLworICAgIGlmIChkaWN0X3N0ciA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKICAgICBkZXNjciA9IF9QeVR5cGVfTG9va3VwKHR5cGUsIGRpY3Rfc3RyKTsKICAgICBpZiAoZGVzY3IgPT0gTlVMTCB8fCAhUHlEZXNjcl9Jc0RhdGEoZGVzY3IpKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTE5NTEsNyArMTk3Nyw3IEBACiB7CiAgICAgUHlPYmplY3QgKm5hbWUsICpiYXNlcywgKmRpY3Q7CiAgICAgc3RhdGljIGNoYXIgKmt3bGlzdFtdID0geyJuYW1lIiwgImJhc2VzIiwgImRpY3QiLCAwfTsKLSAgICBQeU9iamVjdCAqc2xvdHMsICp0bXAsICpuZXdzbG90czsKKyAgICBQeU9iamVjdCAqcXVhbG5hbWUsICpzbG90cywgKnRtcCwgKm5ld3Nsb3RzOwogICAgIFB5VHlwZU9iamVjdCAqdHlwZSwgKmJhc2UsICp0bXB0eXBlLCAqd2lubmVyOwogICAgIFB5SGVhcFR5cGVPYmplY3QgKmV0OwogICAgIFB5TWVtYmVyRGVmICptcDsKQEAgLTIwMjgsNiArMjA1NCwxOCBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKKyAgICAvKiBDaGVjayBmb3IgYSBfX3F1YWxuYW1lX18gdmFyaWFibGUgaW4gZGljdCAqLworICAgIHF1YWxuYW1lID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcoZGljdCwgIl9fcXVhbG5hbWVfXyIpOworICAgIGlmIChxdWFsbmFtZSA9PSBOVUxMKSB7CisgICAgICAgIHF1YWxuYW1lID0gbmFtZTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGlmIChQeURpY3RfRGVsSXRlbVN0cmluZyhkaWN0LCAiX19xdWFsbmFtZV9fIikgPCAwKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoYmFzZXMpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICB9CisKICAgICAvKiBDaGVjayBmb3IgYSBfX3Nsb3RzX18gc2VxdWVuY2UgdmFyaWFibGUgaW4gZGljdCwgYW5kIGNvdW50IGl0ICovCiAgICAgc2xvdHMgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhkaWN0LCAiX19zbG90c19fIik7CiAgICAgbnNsb3RzID0gMDsKQEAgLTIxMTcsNiArMjE1NSwxMyBAQAogICAgICAgICAgICAgICAgIGdvdG8gYmFkX3Nsb3RzOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgUHlMaXN0X1NFVF9JVEVNKG5ld3Nsb3RzLCBqLCB0bXApOworICAgICAgICAgICAgaWYgKFB5RGljdF9HZXRJdGVtKGRpY3QsIHRtcCkpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiVSIGluIF9fc2xvdHNfXyBjb25mbGljdHMgd2l0aCBjbGFzcyB2YXJpYWJsZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRtcCk7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKG5ld3Nsb3RzKTsKKyAgICAgICAgICAgICAgICBnb3RvIGJhZF9zbG90czsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIGorKzsKICAgICAgICAgfQogICAgICAgICBhc3NlcnQoaiA9PSBuc2xvdHMgLSBhZGRfZGljdCAtIGFkZF93ZWFrKTsKQEAgLTIxNzQsNyArMjIxOSw5IEBACiAgICAgLyogS2VlcCBuYW1lIGFuZCBzbG90cyBhbGl2ZSBpbiB0aGUgZXh0ZW5kZWQgdHlwZSBvYmplY3QgKi8KICAgICBldCA9IChQeUhlYXBUeXBlT2JqZWN0ICopdHlwZTsKICAgICBQeV9JTkNSRUYobmFtZSk7CisgICAgUHlfSU5DUkVGKHF1YWxuYW1lKTsKICAgICBldC0+aHRfbmFtZSA9IG5hbWU7CisgICAgZXQtPmh0X3F1YWxuYW1lID0gcXVhbG5hbWU7CiAgICAgZXQtPmh0X3Nsb3RzID0gc2xvdHM7CiAKICAgICAvKiBJbml0aWFsaXplIHRwX2ZsYWdzICovCkBAIC0yMzU4LDIxICsyNDA1LDIzIEBACiAgICAgICByZXR1cm4gTlVMTDsKICAgICByZXMtPmh0X25hbWUgPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhzcGVjLT5uYW1lKTsKICAgICBpZiAoIXJlcy0+aHRfbmFtZSkKLQlnb3RvIGZhaWw7CisgICAgICAgIGdvdG8gZmFpbDsKKyAgICByZXMtPmh0X3F1YWxuYW1lID0gcmVzLT5odF9uYW1lOworICAgIFB5X0lOQ1JFRihyZXMtPmh0X3F1YWxuYW1lKTsKICAgICByZXMtPmh0X3R5cGUudHBfbmFtZSA9IF9QeVVuaWNvZGVfQXNTdHJpbmcocmVzLT5odF9uYW1lKTsKICAgICBpZiAoIXJlcy0+aHRfdHlwZS50cF9uYW1lKQotCWdvdG8gZmFpbDsKKyAgICAgICAgZ290byBmYWlsOwogCiAgICAgcmVzLT5odF90eXBlLnRwX2Jhc2ljc2l6ZSA9IHNwZWMtPmJhc2ljc2l6ZTsKICAgICByZXMtPmh0X3R5cGUudHBfaXRlbXNpemUgPSBzcGVjLT5pdGVtc2l6ZTsKICAgICByZXMtPmh0X3R5cGUudHBfZmxhZ3MgPSBzcGVjLT5mbGFncyB8IFB5X1RQRkxBR1NfSEVBUFRZUEU7CiAKICAgICBmb3IgKHNsb3QgPSBzcGVjLT5zbG90czsgc2xvdC0+c2xvdDsgc2xvdCsrKSB7Ci0JaWYgKHNsb3QtPnNsb3QgPj0gc2l6ZW9mKHNsb3RvZmZzZXRzKS9zaXplb2Yoc2xvdG9mZnNldHNbMF0pKSB7Ci0JICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsICJpbnZhbGlkIHNsb3Qgb2Zmc2V0Iik7Ci0JICAgIGdvdG8gZmFpbDsKLQl9Ci0JKih2b2lkKiopKHJlc19zdGFydCArIHNsb3RvZmZzZXRzW3Nsb3QtPnNsb3RdKSA9IHNsb3QtPnBmdW5jOworICAgICAgICBpZiAoc2xvdC0+c2xvdCA+PSBQeV9BUlJBWV9MRU5HVEgoc2xvdG9mZnNldHMpKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLCAiaW52YWxpZCBzbG90IG9mZnNldCIpOworICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICB9CisgICAgICAgICoodm9pZCoqKShyZXNfc3RhcnQgKyBzbG90b2Zmc2V0c1tzbG90LT5zbG90XSkgPSBzbG90LT5wZnVuYzsKIAogICAgICAgICAvKiBuZWVkIHRvIG1ha2UgYSBjb3B5IG9mIHRoZSBkb2NzdHJpbmcgc2xvdCwgd2hpY2ggdXN1YWxseQogICAgICAgICAgICBwb2ludHMgdG8gYSBzdGF0aWMgc3RyaW5nIGxpdGVyYWwgKi8KQEAgLTIzODAsNyArMjQyOSw3IEBACiAgICAgICAgICAgICBzc2l6ZV90IGxlbiA9IHN0cmxlbihzbG90LT5wZnVuYykrMTsKICAgICAgICAgICAgIGNoYXIgKnRwX2RvYyA9IFB5T2JqZWN0X01BTExPQyhsZW4pOwogICAgICAgICAgICAgaWYgKHRwX2RvYyA9PSBOVUxMKQotCSAgICAJZ290byBmYWlsOworICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKICAgICAgICAgICAgIG1lbWNweSh0cF9kb2MsIHNsb3QtPnBmdW5jLCBsZW4pOwogICAgICAgICAgICAgcmVzLT5odF90eXBlLnRwX2RvYyA9IHRwX2RvYzsKICAgICAgICAgfQpAQCAtMjU2MSw2ICsyNjEwLDcgQEAKICAgICAgKi8KICAgICBQeU9iamVjdF9GcmVlKChjaGFyICopdHlwZS0+dHBfZG9jKTsKICAgICBQeV9YREVDUkVGKGV0LT5odF9uYW1lKTsKKyAgICBQeV9YREVDUkVGKGV0LT5odF9xdWFsbmFtZSk7CiAgICAgUHlfWERFQ1JFRihldC0+aHRfc2xvdHMpOwogICAgIFB5X1RZUEUodHlwZSktPnRwX2ZyZWUoKFB5T2JqZWN0ICopdHlwZSk7CiB9CkBAIC0yNTk5LDYgKzI2NDksODMgQEAKICAgICByZXR1cm4gUHlEaWN0X05ldygpOwogfQogCisvKgorICAgTWVyZ2UgdGhlIF9fZGljdF9fIG9mIGFjbGFzcyBpbnRvIGRpY3QsIGFuZCByZWN1cnNpdmVseSBhbHNvIGFsbAorICAgdGhlIF9fZGljdF9fcyBvZiBhY2xhc3MncyBiYXNlIGNsYXNzZXMuICBUaGUgb3JkZXIgb2YgbWVyZ2luZyBpc24ndAorICAgZGVmaW5lZCwgYXMgaXQncyBleHBlY3RlZCB0aGF0IG9ubHkgdGhlIGZpbmFsIHNldCBvZiBkaWN0IGtleXMgaXMKKyAgIGludGVyZXN0aW5nLgorICAgUmV0dXJuIDAgb24gc3VjY2VzcywgLTEgb24gZXJyb3IuCisqLworCitzdGF0aWMgaW50CittZXJnZV9jbGFzc19kaWN0KFB5T2JqZWN0ICpkaWN0LCBQeU9iamVjdCAqYWNsYXNzKQoreworICAgIFB5T2JqZWN0ICpjbGFzc2RpY3Q7CisgICAgUHlPYmplY3QgKmJhc2VzOworICAgIF9QeV9JREVOVElGSUVSKF9fYmFzZXNfXyk7CisKKyAgICBhc3NlcnQoUHlEaWN0X0NoZWNrKGRpY3QpKTsKKyAgICBhc3NlcnQoYWNsYXNzKTsKKworICAgIC8qIE1lcmdlIGluIHRoZSB0eXBlJ3MgZGljdCAoaWYgYW55KS4gKi8KKyAgICBjbGFzc2RpY3QgPSBfUHlPYmplY3RfR2V0QXR0cklkKGFjbGFzcywgJlB5SWRfX19kaWN0X18pOworICAgIGlmIChjbGFzc2RpY3QgPT0gTlVMTCkKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICBlbHNlIHsKKyAgICAgICAgaW50IHN0YXR1cyA9IFB5RGljdF9VcGRhdGUoZGljdCwgY2xhc3NkaWN0KTsKKyAgICAgICAgUHlfREVDUkVGKGNsYXNzZGljdCk7CisgICAgICAgIGlmIChzdGF0dXMgPCAwKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIC8qIFJlY3Vyc2l2ZWx5IG1lcmdlIGluIHRoZSBiYXNlIHR5cGVzJyAoaWYgYW55KSBkaWN0cy4gKi8KKyAgICBiYXNlcyA9IF9QeU9iamVjdF9HZXRBdHRySWQoYWNsYXNzLCAmUHlJZF9fX2Jhc2VzX18pOworICAgIGlmIChiYXNlcyA9PSBOVUxMKQorICAgICAgICBQeUVycl9DbGVhcigpOworICAgIGVsc2UgeworICAgICAgICAvKiBXZSBoYXZlIG5vIGd1YXJhbnRlZSB0aGF0IGJhc2VzIGlzIGEgcmVhbCB0dXBsZSAqLworICAgICAgICBQeV9zc2l6ZV90IGksIG47CisgICAgICAgIG4gPSBQeVNlcXVlbmNlX1NpemUoYmFzZXMpOyAvKiBUaGlzIGJldHRlciBiZSByaWdodCAqLworICAgICAgICBpZiAobiA8IDApCisgICAgICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspIHsKKyAgICAgICAgICAgICAgICBpbnQgc3RhdHVzOworICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpiYXNlID0gUHlTZXF1ZW5jZV9HZXRJdGVtKGJhc2VzLCBpKTsKKyAgICAgICAgICAgICAgICBpZiAoYmFzZSA9PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihiYXNlcyk7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgc3RhdHVzID0gbWVyZ2VfY2xhc3NfZGljdChkaWN0LCBiYXNlKTsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYoYmFzZSk7CisgICAgICAgICAgICAgICAgaWYgKHN0YXR1cyA8IDApIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGJhc2VzKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYoYmFzZXMpOworICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworLyogX19kaXJfXyBmb3IgdHlwZSBvYmplY3RzOiByZXR1cm5zIF9fZGljdF9fIGFuZCBfX2Jhc2VzX18uCisgICBXZSBkZWxpYmVyYXRlbHkgZG9uJ3Qgc3VjayB1cCBpdHMgX19jbGFzc19fLCBhcyBtZXRob2RzIGJlbG9uZ2luZyB0byB0aGUKKyAgIG1ldGFjbGFzcyB3b3VsZCBwcm9iYWJseSBiZSBtb3JlIGNvbmZ1c2luZyB0aGFuIGhlbHBmdWwuCisqLworc3RhdGljIFB5T2JqZWN0ICoKK3R5cGVfZGlyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKKyAgICBQeU9iamVjdCAqZGljdCA9IFB5RGljdF9OZXcoKTsKKworICAgIGlmIChkaWN0ICE9IE5VTEwgJiYgbWVyZ2VfY2xhc3NfZGljdChkaWN0LCBzZWxmKSA9PSAwKQorICAgICAgICByZXN1bHQgPSBQeURpY3RfS2V5cyhkaWN0KTsKKworICAgIFB5X1hERUNSRUYoZGljdCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogc3RhdGljIFB5TWV0aG9kRGVmIHR5cGVfbWV0aG9kc1tdID0gewogICAgIHsibXJvIiwgKFB5Q0Z1bmN0aW9uKW1yb19leHRlcm5hbCwgTUVUSF9OT0FSR1MsCiAgICAgIFB5RG9jX1NUUigibXJvKCkgLT4gbGlzdFxucmV0dXJuIGEgdHlwZSdzIG1ldGhvZCByZXNvbHV0aW9uIG9yZGVyIil9LApAQCAtMjYxMiw2ICsyNzM5LDggQEAKICAgICAgUHlEb2NfU1RSKCJfX2luc3RhbmNlY2hlY2tfXygpIC0+IGJvb2xcbmNoZWNrIGlmIGFuIG9iamVjdCBpcyBhbiBpbnN0YW5jZSIpfSwKICAgICB7Il9fc3ViY2xhc3NjaGVja19fIiwgdHlwZV9fX3N1YmNsYXNzY2hlY2tfXywgTUVUSF9PLAogICAgICBQeURvY19TVFIoIl9fc3ViY2xhc3NjaGVja19fKCkgLT4gYm9vbFxuY2hlY2sgaWYgYSBjbGFzcyBpcyBhIHN1YmNsYXNzIil9LAorICAgIHsiX19kaXJfXyIsIHR5cGVfZGlyLCBNRVRIX05PQVJHUywKKyAgICAgUHlEb2NfU1RSKCJfX2Rpcl9fKCkgLT4gbGlzdFxuc3BlY2lhbGl6ZWQgX19kaXJfXyBpbXBsZW1lbnRhdGlvbiBmb3IgdHlwZXMiKX0sCiAgICAgezB9CiB9OwogCkBAIC0yODM5LDYgKzI5NjgsNyBAQAogICAgICAgICBQeU9iamVjdCAqc29ydGVkOwogICAgICAgICBQeU9iamVjdCAqc29ydGVkX21ldGhvZHMgPSBOVUxMOwogICAgICAgICBQeU9iamVjdCAqam9pbmVkID0gTlVMTDsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoam9pbik7CiAKICAgICAgICAgLyogQ29tcHV0ZSAiLCAiLmpvaW4oc29ydGVkKHR5cGUuX19hYnN0cmFjdG1ldGhvZHNfXykpCiAgICAgICAgICAgIGludG8gam9pbmVkLiAqLwpAQCAtMjg2MSw3ICsyOTkxLDcgQEAKICAgICAgICAgICAgIGlmIChjb21tYSA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIH0KLSAgICAgICAgam9pbmVkID0gUHlPYmplY3RfQ2FsbE1ldGhvZChjb21tYSwgImpvaW4iLAorICAgICAgICBqb2luZWQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGNvbW1hLCAmUHlJZF9qb2luLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJPIiwgIHNvcnRlZF9tZXRob2RzKTsKICAgICAgICAgaWYgKGpvaW5lZCA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlcnJvcjsKQEAgLTI5MDAsNyArMzAzMCw3IEBACiAgICAgICAgIFB5X0RFQ1JFRihtb2QpOwogICAgICAgICBtb2QgPSBOVUxMOwogICAgIH0KLSAgICBuYW1lID0gdHlwZV9uYW1lKHR5cGUsIE5VTEwpOworICAgIG5hbWUgPSB0eXBlX3F1YWxuYW1lKHR5cGUsIE5VTEwpOwogICAgIGlmIChuYW1lID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChtb2QgIT0gTlVMTCAmJiBQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhtb2QsICJidWlsdGlucyIpKQpAQCAtMzA2Myw3ICszMTkzLDcgQEAKICAgICB9CiAgICAgaWYgKCFQeVR5cGVfQ2hlY2sodmFsdWUpKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgIl9fY2xhc3NfXyBtdXN0IGJlIHNldCB0byBuZXctc3R5bGUgY2xhc3MsIG5vdCAnJXMnIG9iamVjdCIsCisgICAgICAgICAgIl9fY2xhc3NfXyBtdXN0IGJlIHNldCB0byBhIGNsYXNzLCBub3QgJyVzJyBvYmplY3QiLAogICAgICAgICAgIFB5X1RZUEUodmFsdWUpLT50cF9uYW1lKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KQEAgLTMxMDQsMTQgKzMyMzQsMTkgQEAKIGltcG9ydF9jb3B5cmVnKHZvaWQpCiB7CiAgICAgc3RhdGljIFB5T2JqZWN0ICpjb3B5cmVnX3N0cjsKKyAgICBzdGF0aWMgUHlPYmplY3QgKm1vZF9jb3B5cmVnID0gTlVMTDsKIAogICAgIGlmICghY29weXJlZ19zdHIpIHsKICAgICAgICAgY29weXJlZ19zdHIgPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZygiY29weXJlZyIpOwogICAgICAgICBpZiAoY29weXJlZ19zdHIgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KKyAgICBpZiAoIW1vZF9jb3B5cmVnKSB7CisgICAgICAgIG1vZF9jb3B5cmVnID0gUHlJbXBvcnRfSW1wb3J0KGNvcHlyZWdfc3RyKTsKKyAgICB9CiAKLSAgICByZXR1cm4gUHlJbXBvcnRfSW1wb3J0KGNvcHlyZWdfc3RyKTsKKyAgICBQeV9YSU5DUkVGKG1vZF9jb3B5cmVnKTsKKyAgICByZXR1cm4gbW9kX2NvcHlyZWc7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC0zMTIwLDE0ICszMjU1LDE3IEBACiAgICAgUHlPYmplY3QgKmNsc2RpY3Q7CiAgICAgUHlPYmplY3QgKmNvcHlyZWc7CiAgICAgUHlPYmplY3QgKnNsb3RuYW1lczsKKyAgICBzdGF0aWMgUHlPYmplY3QgKnN0cl9zbG90bmFtZXM7CisgICAgX1B5X0lERU5USUZJRVIoX3Nsb3RuYW1lcyk7CiAKLSAgICBpZiAoIVB5VHlwZV9DaGVjayhjbHMpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKLSAgICAgICAgcmV0dXJuIFB5X05vbmU7CisgICAgaWYgKHN0cl9zbG90bmFtZXMgPT0gTlVMTCkgeworICAgICAgICBzdHJfc2xvdG5hbWVzID0gUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcoIl9fc2xvdG5hbWVzX18iKTsKKyAgICAgICAgaWYgKHN0cl9zbG90bmFtZXMgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAogICAgIGNsc2RpY3QgPSAoKFB5VHlwZU9iamVjdCAqKWNscyktPnRwX2RpY3Q7Ci0gICAgc2xvdG5hbWVzID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcoY2xzZGljdCwgIl9fc2xvdG5hbWVzX18iKTsKKyAgICBzbG90bmFtZXMgPSBQeURpY3RfR2V0SXRlbShjbHNkaWN0LCBzdHJfc2xvdG5hbWVzKTsKICAgICBpZiAoc2xvdG5hbWVzICE9IE5VTEwgJiYgUHlMaXN0X0NoZWNrKHNsb3RuYW1lcykpIHsKICAgICAgICAgUHlfSU5DUkVGKHNsb3RuYW1lcyk7CiAgICAgICAgIHJldHVybiBzbG90bmFtZXM7CkBAIC0zMTM3LDcgKzMyNzUsNyBAQAogICAgIGlmIChjb3B5cmVnID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgc2xvdG5hbWVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChjb3B5cmVnLCAiX3Nsb3RuYW1lcyIsICJPIiwgY2xzKTsKKyAgICBzbG90bmFtZXMgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGNvcHlyZWcsICZQeUlkX19zbG90bmFtZXMsICJPIiwgY2xzKTsKICAgICBQeV9ERUNSRUYoY29weXJlZyk7CiAgICAgaWYgKHNsb3RuYW1lcyAhPSBOVUxMICYmCiAgICAgICAgIHNsb3RuYW1lcyAhPSBQeV9Ob25lICYmCkBAIC0zMTYxLDEyICszMjk5LDIwIEBACiAgICAgUHlPYmplY3QgKnNsb3RzID0gTlVMTCwgKmxpc3RpdGVtcyA9IE5VTEwsICpkaWN0aXRlbXMgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpjb3B5cmVnID0gTlVMTCwgKm5ld29iaiA9IE5VTEwsICpyZXMgPSBOVUxMOwogICAgIFB5X3NzaXplX3QgaSwgbjsKKyAgICBzdGF0aWMgUHlPYmplY3QgKnN0cl9nZXRuZXdhcmdzID0gTlVMTCwgKnN0cl9nZXRzdGF0ZSA9IE5VTEwsCisgICAgICAgICAgICAgICAgICAgICpzdHJfbmV3b2JqID0gTlVMTDsKIAotICAgIGNscyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiX19jbGFzc19fIik7Ci0gICAgaWYgKGNscyA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoc3RyX2dldG5ld2FyZ3MgPT0gTlVMTCkgeworICAgICAgICBzdHJfZ2V0bmV3YXJncyA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX2dldG5ld2FyZ3NfXyIpOworICAgICAgICBzdHJfZ2V0c3RhdGUgPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZygiX19nZXRzdGF0ZV9fIik7CisgICAgICAgIHN0cl9uZXdvYmogPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZygiX19uZXdvYmpfXyIpOworICAgICAgICBpZiAoIXN0cl9nZXRuZXdhcmdzIHx8ICFzdHJfZ2V0c3RhdGUgfHwgIXN0cl9uZXdvYmopCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAKLSAgICBnZXRuZXdhcmdzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJfX2dldG5ld2FyZ3NfXyIpOworICAgIGNscyA9IChQeU9iamVjdCAqKSBQeV9UWVBFKG9iaik7CisKKyAgICBnZXRuZXdhcmdzID0gUHlPYmplY3RfR2V0QXR0cihvYmosIHN0cl9nZXRuZXdhcmdzKTsKICAgICBpZiAoZ2V0bmV3YXJncyAhPSBOVUxMKSB7CiAgICAgICAgIGFyZ3MgPSBQeU9iamVjdF9DYWxsT2JqZWN0KGdldG5ld2FyZ3MsIE5VTEwpOwogICAgICAgICBQeV9ERUNSRUYoZ2V0bmV3YXJncyk7CkBAIC0zMTg0LDcgKzMzMzAsNyBAQAogICAgIGlmIChhcmdzID09IE5VTEwpCiAgICAgICAgIGdvdG8gZW5kOwogCi0gICAgZ2V0c3RhdGUgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIl9fZ2V0c3RhdGVfXyIpOworICAgIGdldHN0YXRlID0gUHlPYmplY3RfR2V0QXR0cihvYmosIHN0cl9nZXRzdGF0ZSk7CiAgICAgaWYgKGdldHN0YXRlICE9IE5VTEwpIHsKICAgICAgICAgc3RhdGUgPSBQeU9iamVjdF9DYWxsT2JqZWN0KGdldHN0YXRlLCBOVUxMKTsKICAgICAgICAgUHlfREVDUkVGKGdldHN0YXRlKTsKQEAgLTMxOTIsMTcgKzMzMzgsMTggQEAKICAgICAgICAgICAgIGdvdG8gZW5kOwogICAgIH0KICAgICBlbHNlIHsKKyAgICAgICAgUHlPYmplY3QgKipkaWN0OwogICAgICAgICBQeUVycl9DbGVhcigpOwotICAgICAgICBzdGF0ZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiX19kaWN0X18iKTsKLSAgICAgICAgaWYgKHN0YXRlID09IE5VTEwpIHsKLSAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIGRpY3QgPSBfUHlPYmplY3RfR2V0RGljdFB0cihvYmopOworICAgICAgICBpZiAoZGljdCAmJiAqZGljdCkKKyAgICAgICAgICAgIHN0YXRlID0gKmRpY3Q7CisgICAgICAgIGVsc2UKICAgICAgICAgICAgIHN0YXRlID0gUHlfTm9uZTsKLSAgICAgICAgICAgIFB5X0lOQ1JFRihzdGF0ZSk7Ci0gICAgICAgIH0KKyAgICAgICAgUHlfSU5DUkVGKHN0YXRlKTsKICAgICAgICAgbmFtZXMgPSBzbG90bmFtZXMoY2xzKTsKICAgICAgICAgaWYgKG5hbWVzID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVuZDsKLSAgICAgICAgaWYgKG5hbWVzICE9IFB5X05vbmUpIHsKKyAgICAgICAgaWYgKG5hbWVzICE9IFB5X05vbmUgJiYgUHlMaXN0X0dFVF9TSVpFKG5hbWVzKSA+IDApIHsKICAgICAgICAgICAgIGFzc2VydChQeUxpc3RfQ2hlY2sobmFtZXMpKTsKICAgICAgICAgICAgIHNsb3RzID0gUHlEaWN0X05ldygpOwogICAgICAgICAgICAgaWYgKHNsb3RzID09IE5VTEwpCkBAIC0zMjQ5LDcgKzMzOTYsOCBAQAogICAgICAgICBQeV9JTkNSRUYoZGljdGl0ZW1zKTsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIFB5T2JqZWN0ICppdGVtcyA9IFB5T2JqZWN0X0NhbGxNZXRob2Qob2JqLCAiaXRlbXMiLCAiIik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKGl0ZW1zKTsKKyAgICAgICAgUHlPYmplY3QgKml0ZW1zID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChvYmosICZQeUlkX2l0ZW1zLCAiIik7CiAgICAgICAgIGlmIChpdGVtcyA9PSBOVUxMKQogICAgICAgICAgICAgZ290byBlbmQ7CiAgICAgICAgIGRpY3RpdGVtcyA9IFB5T2JqZWN0X0dldEl0ZXIoaXRlbXMpOwpAQCAtMzI2MSw3ICszNDA5LDcgQEAKICAgICBjb3B5cmVnID0gaW1wb3J0X2NvcHlyZWcoKTsKICAgICBpZiAoY29weXJlZyA9PSBOVUxMKQogICAgICAgICBnb3RvIGVuZDsKLSAgICBuZXdvYmogPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGNvcHlyZWcsICJfX25ld29ial9fIik7CisgICAgbmV3b2JqID0gUHlPYmplY3RfR2V0QXR0cihjb3B5cmVnLCBzdHJfbmV3b2JqKTsKICAgICBpZiAobmV3b2JqID09IE5VTEwpCiAgICAgICAgIGdvdG8gZW5kOwogCkBAIC0zMjY5LDggKzM0MTcsOCBAQAogICAgIGFyZ3MyID0gUHlUdXBsZV9OZXcobisxKTsKICAgICBpZiAoYXJnczIgPT0gTlVMTCkKICAgICAgICAgZ290byBlbmQ7CisgICAgUHlfSU5DUkVGKGNscyk7CiAgICAgUHlUdXBsZV9TRVRfSVRFTShhcmdzMiwgMCwgY2xzKTsKLSAgICBjbHMgPSBOVUxMOwogICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspIHsKICAgICAgICAgUHlPYmplY3QgKnYgPSBQeVR1cGxlX0dFVF9JVEVNKGFyZ3MsIGkpOwogICAgICAgICBQeV9JTkNSRUYodik7CkBAIC0zMjgwLDcgKzM0MjgsNiBAQAogICAgIHJlcyA9IFB5VHVwbGVfUGFjayg1LCBuZXdvYmosIGFyZ3MyLCBzdGF0ZSwgbGlzdGl0ZW1zLCBkaWN0aXRlbXMpOwogCiAgIGVuZDoKLSAgICBQeV9YREVDUkVGKGNscyk7CiAgICAgUHlfWERFQ1JFRihhcmdzKTsKICAgICBQeV9YREVDUkVGKGFyZ3MyKTsKICAgICBQeV9YREVDUkVGKHNsb3RzKTsKQEAgLTMzNDAsMzEgKzM0ODcsMzQgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBvYmplY3RfcmVkdWNlX2V4KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKKyAgICBzdGF0aWMgUHlPYmplY3QgKnN0cl9yZWR1Y2UgPSBOVUxMLCAqb2JqcmVkdWNlOwogICAgIFB5T2JqZWN0ICpyZWR1Y2UsICpyZXM7CiAgICAgaW50IHByb3RvID0gMDsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifGk6X19yZWR1Y2VfZXhfXyIsICZwcm90bykpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgcmVkdWNlID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhzZWxmLCAiX19yZWR1Y2VfXyIpOworICAgIGlmIChzdHJfcmVkdWNlID09IE5VTEwpIHsKKyAgICAgICAgc3RyX3JlZHVjZSA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJfX3JlZHVjZV9fIik7CisgICAgICAgIG9ianJlZHVjZSA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKFB5QmFzZU9iamVjdF9UeXBlLnRwX2RpY3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJfX3JlZHVjZV9fIik7CisgICAgICAgIGlmIChzdHJfcmVkdWNlID09IE5VTEwgfHwgb2JqcmVkdWNlID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICByZWR1Y2UgPSBQeU9iamVjdF9HZXRBdHRyKHNlbGYsIHN0cl9yZWR1Y2UpOwogICAgIGlmIChyZWR1Y2UgPT0gTlVMTCkKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICBlbHNlIHsKLSAgICAgICAgUHlPYmplY3QgKmNscywgKmNsc3JlZHVjZSwgKm9ianJlZHVjZTsKKyAgICAgICAgUHlPYmplY3QgKmNscywgKmNsc3JlZHVjZTsKICAgICAgICAgaW50IG92ZXJyaWRlOwotICAgICAgICBjbHMgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHNlbGYsICJfX2NsYXNzX18iKTsKLSAgICAgICAgaWYgKGNscyA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocmVkdWNlKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIGNsc3JlZHVjZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoY2xzLCAiX19yZWR1Y2VfXyIpOwotICAgICAgICBQeV9ERUNSRUYoY2xzKTsKKworICAgICAgICBjbHMgPSAoUHlPYmplY3QgKikgUHlfVFlQRShzZWxmKTsKKyAgICAgICAgY2xzcmVkdWNlID0gUHlPYmplY3RfR2V0QXR0cihjbHMsIHN0cl9yZWR1Y2UpOwogICAgICAgICBpZiAoY2xzcmVkdWNlID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihyZWR1Y2UpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KLSAgICAgICAgb2JqcmVkdWNlID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcoUHlCYXNlT2JqZWN0X1R5cGUudHBfZGljdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIl9fcmVkdWNlX18iKTsKICAgICAgICAgb3ZlcnJpZGUgPSAoY2xzcmVkdWNlICE9IG9ianJlZHVjZSk7CiAgICAgICAgIFB5X0RFQ1JFRihjbHNyZWR1Y2UpOwogICAgICAgICBpZiAob3ZlcnJpZGUpIHsKQEAgLTMzODIsOCArMzUzMiw3IEBACiBzdGF0aWMgUHlPYmplY3QgKgogb2JqZWN0X3N1YmNsYXNzaG9vayhQeU9iamVjdCAqY2xzLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKIFB5RG9jX1NUUlZBUihvYmplY3Rfc3ViY2xhc3Nob29rX2RvYywKQEAgLTM0MTQsMjEgKzM1NjMsMjEgQEAKICAgICBzZWxmX2FzX3N0ciA9IFB5T2JqZWN0X1N0cihzZWxmKTsKICAgICBpZiAoc2VsZl9hc19zdHIgIT0gTlVMTCkgewogICAgICAgICAvKiBJc3N1ZSA3OTk0OiBJZiB3ZSdyZSBjb252ZXJ0aW5nIHRvIGEgc3RyaW5nLCB3ZQotCSAgIHNob3VsZCByZWplY3QgZm9ybWF0IHNwZWNpZmljYXRpb25zICovCi0gICAgICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoZm9ybWF0X3NwZWMpID4gMCkgewotCSAgICBpZiAoUHlFcnJfV2FybkV4KFB5RXhjX1BlbmRpbmdEZXByZWNhdGlvbldhcm5pbmcsCi0JCQkgICAgICJvYmplY3QuX19mb3JtYXRfXyB3aXRoIGEgbm9uLWVtcHR5IGZvcm1hdCAiCi0JCQkgICAgICJzdHJpbmcgaXMgZGVwcmVjYXRlZCIsIDEpIDwgMCkgewotCSAgICAgIGdvdG8gZG9uZTsKLQkgICAgfQotCSAgICAvKiBFdmVudHVhbGx5IHRoaXMgd2lsbCBiZWNvbWUgYW4gZXJyb3I6Ci0JICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0JICAgICAgICJub24tZW1wdHkgZm9ybWF0IHN0cmluZyBwYXNzZWQgdG8gb2JqZWN0Ll9fZm9ybWF0X18iKTsKLQkgICAgICAgZ290byBkb25lOwotCSAgICAqLwotCX0KKyAgICAgICAgICAgc2hvdWxkIHJlamVjdCBmb3JtYXQgc3BlY2lmaWNhdGlvbnMgKi8KKyAgICAgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGZvcm1hdF9zcGVjKSA+IDApIHsKKyAgICAgICAgICAgIGlmIChQeUVycl9XYXJuRXgoUHlFeGNfRGVwcmVjYXRpb25XYXJuaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib2JqZWN0Ll9fZm9ybWF0X18gd2l0aCBhIG5vbi1lbXB0eSBmb3JtYXQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaW5nIGlzIGRlcHJlY2F0ZWQiLCAxKSA8IDApIHsKKyAgICAgICAgICAgICAgZ290byBkb25lOworICAgICAgICAgICAgfQorICAgICAgICAgICAgLyogRXZlbnR1YWxseSB0aGlzIHdpbGwgYmVjb21lIGFuIGVycm9yOgorICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICJub24tZW1wdHkgZm9ybWF0IHN0cmluZyBwYXNzZWQgdG8gb2JqZWN0Ll9fZm9ybWF0X18iKTsKKyAgICAgICAgICAgICAgIGdvdG8gZG9uZTsKKyAgICAgICAgICAgICovCisgICAgICAgIH0KIAotCXJlc3VsdCA9IFB5T2JqZWN0X0Zvcm1hdChzZWxmX2FzX3N0ciwgZm9ybWF0X3NwZWMpOworICAgICAgICByZXN1bHQgPSBQeU9iamVjdF9Gb3JtYXQoc2VsZl9hc19zdHIsIGZvcm1hdF9zcGVjKTsKICAgICB9CiAKIGRvbmU6CkBAIC0zNDUxLDYgKzM2MDAsNTMgQEAKICAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KHJlcyk7CiB9CiAKKy8qIF9fZGlyX18gZm9yIGdlbmVyaWMgb2JqZWN0czogcmV0dXJucyBfX2RpY3RfXywgX19jbGFzc19fLAorICAgYW5kIHJlY3Vyc2l2ZWx5IHVwIHRoZSBfX2NsYXNzX18uX19iYXNlc19fIGNoYWluLgorKi8KK3N0YXRpYyBQeU9iamVjdCAqCitvYmplY3RfZGlyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3sKKyAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKKyAgICBQeU9iamVjdCAqZGljdCA9IE5VTEw7CisgICAgUHlPYmplY3QgKml0c2NsYXNzID0gTlVMTDsKKworICAgIC8qIEdldCBfX2RpY3RfXyAod2hpY2ggbWF5IG9yIG1heSBub3QgYmUgYSByZWFsIGRpY3QuLi4pICovCisgICAgZGljdCA9IF9QeU9iamVjdF9HZXRBdHRySWQoc2VsZiwgJlB5SWRfX19kaWN0X18pOworICAgIGlmIChkaWN0ID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgZGljdCA9IFB5RGljdF9OZXcoKTsKKyAgICB9CisgICAgZWxzZSBpZiAoIVB5RGljdF9DaGVjayhkaWN0KSkgeworICAgICAgICBQeV9ERUNSRUYoZGljdCk7CisgICAgICAgIGRpY3QgPSBQeURpY3RfTmV3KCk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICAvKiBDb3B5IF9fZGljdF9fIHRvIGF2b2lkIG11dGF0aW5nIGl0LiAqLworICAgICAgICBQeU9iamVjdCAqdGVtcCA9IFB5RGljdF9Db3B5KGRpY3QpOworICAgICAgICBQeV9ERUNSRUYoZGljdCk7CisgICAgICAgIGRpY3QgPSB0ZW1wOworICAgIH0KKworICAgIGlmIChkaWN0ID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICAvKiBNZXJnZSBpbiBhdHRycyByZWFjaGFibGUgZnJvbSBpdHMgY2xhc3MuICovCisgICAgaXRzY2xhc3MgPSBfUHlPYmplY3RfR2V0QXR0cklkKHNlbGYsICZQeUlkX19fY2xhc3NfXyk7CisgICAgaWYgKGl0c2NsYXNzID09IE5VTEwpCisgICAgICAgIC8qIFhYWCh0b21lcik6IFBlcmhhcHMgZmFsbCBiYWNrIHRvIG9iai0+b2JfdHlwZSBpZiBubworICAgICAgICAgICAgICAgICAgICAgICBfX2NsYXNzX18gZXhpc3RzPyAqLworICAgICAgICBQeUVycl9DbGVhcigpOworICAgIGVsc2UgaWYgKG1lcmdlX2NsYXNzX2RpY3QoZGljdCwgaXRzY2xhc3MpICE9IDApCisgICAgICAgIGdvdG8gZXJyb3I7CisKKyAgICByZXN1bHQgPSBQeURpY3RfS2V5cyhkaWN0KTsKKyAgICAvKiBmYWxsIHRocm91Z2ggKi8KK2Vycm9yOgorICAgIFB5X1hERUNSRUYoaXRzY2xhc3MpOworICAgIFB5X1hERUNSRUYoZGljdCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogc3RhdGljIFB5TWV0aG9kRGVmIG9iamVjdF9tZXRob2RzW10gPSB7CiAgICAgeyJfX3JlZHVjZV9leF9fIiwgb2JqZWN0X3JlZHVjZV9leCwgTUVUSF9WQVJBUkdTLAogICAgICBQeURvY19TVFIoImhlbHBlciBmb3IgcGlja2xlIil9LApAQCAtMzQ2Miw2ICszNjU4LDggQEAKICAgICAgUHlEb2NfU1RSKCJkZWZhdWx0IG9iamVjdCBmb3JtYXR0ZXIiKX0sCiAgICAgeyJfX3NpemVvZl9fIiwgb2JqZWN0X3NpemVvZiwgTUVUSF9OT0FSR1MsCiAgICAgIFB5RG9jX1NUUigiX19zaXplb2ZfXygpIC0+IGludFxuc2l6ZSBvZiBvYmplY3QgaW4gbWVtb3J5LCBpbiBieXRlcyIpfSwKKyAgICB7Il9fZGlyX18iLCBvYmplY3RfZGlyLCBNRVRIX05PQVJHUywKKyAgICAgUHlEb2NfU1RSKCJfX2Rpcl9fKCkgLT4gbGlzdFxuZGVmYXVsdCBkaXIoKSBpbXBsZW1lbnRhdGlvbiIpfSwKICAgICB7MH0KIH07CiAKQEAgLTM1MzAsNyArMzcyOCw3IEBACiAgICAgICAgICAgICBkZXNjciA9IFB5RGVzY3JfTmV3Q2xhc3NNZXRob2QodHlwZSwgbWV0aCk7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAobWV0aC0+bWxfZmxhZ3MgJiBNRVRIX1NUQVRJQykgewotICAgICAgICAgICAgUHlPYmplY3QgKmNmdW5jID0gUHlDRnVuY3Rpb25fTmV3KG1ldGgsIE5VTEwpOworICAgICAgICAgICAgUHlPYmplY3QgKmNmdW5jID0gUHlDRnVuY3Rpb25fTmV3KG1ldGgsIChQeU9iamVjdCopdHlwZSk7CiAgICAgICAgICAgICBpZiAoY2Z1bmMgPT0gTlVMTCkKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICBkZXNjciA9IFB5U3RhdGljTWV0aG9kX05ldyhjZnVuYyk7CkBAIC0zNjEwLDggKzM4MDgsOCBAQAogICAgICAgICAgICB0aGF0IHRoZSBleHRlbnNpb24gdHlwZSdzIG93biBmYWN0b3J5IGZ1bmN0aW9uIGVuc3VyZXMpLgogICAgICAgICAgICBIZWFwIHR5cGVzLCBvZiBjb3Vyc2UsIGFyZSB1bmRlciBvdXIgY29udHJvbCwgc28gdGhleSBkbwogICAgICAgICAgICBpbmhlcml0IHRwX25ldzsgc3RhdGljIGV4dGVuc2lvbiB0eXBlcyB0aGF0IHNwZWNpZnkgc29tZQotICAgICAgICAgICBvdGhlciBidWlsdC1pbiB0eXBlIGFzIHRoZSBkZWZhdWx0IGFyZSBjb25zaWRlcmVkCi0gICAgICAgICAgIG5ldy1zdHlsZS1hd2FyZSBzbyB0aGV5IGFsc28gaW5oZXJpdCBvYmplY3QuX19uZXdfXy4gKi8KKyAgICAgICAgICAgb3RoZXIgYnVpbHQtaW4gdHlwZSBhcyB0aGUgZGVmYXVsdCBhbHNvCisgICAgICAgICAgIGluaGVyaXQgb2JqZWN0Ll9fbmV3X18uICovCiAgICAgICAgIGlmIChiYXNlICE9ICZQeUJhc2VPYmplY3RfVHlwZSB8fAogICAgICAgICAgICAgKHR5cGUtPnRwX2ZsYWdzICYgUHlfVFBGTEFHU19IRUFQVFlQRSkpIHsKICAgICAgICAgICAgIGlmICh0eXBlLT50cF9uZXcgPT0gTlVMTCkKQEAgLTQ2MjMsMTYgKzQ4MjEsMTYgQEAKIHN0YXRpYyBQeU9iamVjdCAqIFwKIEZVTkNOQU1FKFB5T2JqZWN0ICpzZWxmKSBcCiB7IFwKLSAgICBzdGF0aWMgUHlPYmplY3QgKmNhY2hlX3N0cjsgXAotICAgIHJldHVybiBjYWxsX21ldGhvZChzZWxmLCBPUFNUUiwgJmNhY2hlX3N0ciwgIigpIik7IFwKKyAgICBfUHlfc3RhdGljX3N0cmluZyhpZCwgT1BTVFIpOyBcCisgICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsICZpZCwgIigpIik7IFwKIH0KIAogI2RlZmluZSBTTE9UMShGVU5DTkFNRSwgT1BTVFIsIEFSRzFUWVBFLCBBUkdDT0RFUykgXAogc3RhdGljIFB5T2JqZWN0ICogXAogRlVOQ05BTUUoUHlPYmplY3QgKnNlbGYsIEFSRzFUWVBFIGFyZzEpIFwKIHsgXAotICAgIHN0YXRpYyBQeU9iamVjdCAqY2FjaGVfc3RyOyBcCi0gICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsIE9QU1RSLCAmY2FjaGVfc3RyLCAiKCIgQVJHQ09ERVMgIikiLCBhcmcxKTsgXAorICAgIF9QeV9zdGF0aWNfc3RyaW5nKGlkLCBPUFNUUik7IFwKKyAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgJmlkLCAiKCIgQVJHQ09ERVMgIikiLCBhcmcxKTsgXAogfQogCiAvKiBCb29sZWFuIGhlbHBlciBmb3IgU0xPVDFCSU5GVUxMKCkuCkBAIC00Njc0LDcgKzQ4NzIsOCBAQAogc3RhdGljIFB5T2JqZWN0ICogXAogRlVOQ05BTUUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpvdGhlcikgXAogeyBcCi0gICAgc3RhdGljIFB5T2JqZWN0ICpjYWNoZV9zdHIsICpyY2FjaGVfc3RyOyBcCisgICAgX1B5X3N0YXRpY19zdHJpbmcob3BfaWQsIE9QU1RSKTsgXAorICAgIF9QeV9zdGF0aWNfc3RyaW5nKHJvcF9pZCwgUk9QU1RSKTsgXAogICAgIGludCBkb19vdGhlciA9IFB5X1RZUEUoc2VsZikgIT0gUHlfVFlQRShvdGhlcikgJiYgXAogICAgICAgICBQeV9UWVBFKG90aGVyKS0+dHBfYXNfbnVtYmVyICE9IE5VTEwgJiYgXAogICAgICAgICBQeV9UWVBFKG90aGVyKS0+dHBfYXNfbnVtYmVyLT5TTE9UTkFNRSA9PSBURVNURlVOQzsgXApAQCAtNDY4NCwyNiArNDg4MywyMiBAQAogICAgICAgICBpZiAoZG9fb3RoZXIgJiYgXAogICAgICAgICAgICAgUHlUeXBlX0lzU3VidHlwZShQeV9UWVBFKG90aGVyKSwgUHlfVFlQRShzZWxmKSkgJiYgXAogICAgICAgICAgICAgbWV0aG9kX2lzX292ZXJsb2FkZWQoc2VsZiwgb3RoZXIsIFJPUFNUUikpIHsgXAotICAgICAgICAgICAgciA9IGNhbGxfbWF5YmUoIFwKLSAgICAgICAgICAgICAgICBvdGhlciwgUk9QU1RSLCAmcmNhY2hlX3N0ciwgIihPKSIsIHNlbGYpOyBcCisgICAgICAgICAgICByID0gY2FsbF9tYXliZShvdGhlciwgJnJvcF9pZCwgIihPKSIsIHNlbGYpOyBcCiAgICAgICAgICAgICBpZiAociAhPSBQeV9Ob3RJbXBsZW1lbnRlZCkgXAogICAgICAgICAgICAgICAgIHJldHVybiByOyBcCiAgICAgICAgICAgICBQeV9ERUNSRUYocik7IFwKICAgICAgICAgICAgIGRvX290aGVyID0gMDsgXAogICAgICAgICB9IFwKLSAgICAgICAgciA9IGNhbGxfbWF5YmUoIFwKLSAgICAgICAgICAgIHNlbGYsIE9QU1RSLCAmY2FjaGVfc3RyLCAiKE8pIiwgb3RoZXIpOyBcCisgICAgICAgIHIgPSBjYWxsX21heWJlKHNlbGYsICZvcF9pZCwgIihPKSIsIG90aGVyKTsgXAogICAgICAgICBpZiAociAhPSBQeV9Ob3RJbXBsZW1lbnRlZCB8fCBcCiAgICAgICAgICAgICBQeV9UWVBFKG90aGVyKSA9PSBQeV9UWVBFKHNlbGYpKSBcCiAgICAgICAgICAgICByZXR1cm4gcjsgXAogICAgICAgICBQeV9ERUNSRUYocik7IFwKICAgICB9IFwKICAgICBpZiAoZG9fb3RoZXIpIHsgXAotICAgICAgICByZXR1cm4gY2FsbF9tYXliZSggXAotICAgICAgICAgICAgb3RoZXIsIFJPUFNUUiwgJnJjYWNoZV9zdHIsICIoTykiLCBzZWxmKTsgXAorICAgICAgICByZXR1cm4gY2FsbF9tYXliZShvdGhlciwgJnJvcF9pZCwgIihPKSIsIHNlbGYpOyBcCiAgICAgfSBcCi0gICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsgXAotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsgXAorICAgIFB5X1JFVFVSTl9OT1RJTVBMRU1FTlRFRDsgXAogfQogCiAjZGVmaW5lIFNMT1QxQklOKEZVTkNOQU1FLCBTTE9UTkFNRSwgT1BTVFIsIFJPUFNUUikgXApAQCAtNDcxMywxNiArNDkwOCwxNSBAQAogc3RhdGljIFB5T2JqZWN0ICogXAogRlVOQ05BTUUoUHlPYmplY3QgKnNlbGYsIEFSRzFUWVBFIGFyZzEsIEFSRzJUWVBFIGFyZzIpIFwKIHsgXAotICAgIHN0YXRpYyBQeU9iamVjdCAqY2FjaGVfc3RyOyBcCi0gICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsIE9QU1RSLCAmY2FjaGVfc3RyLCBcCi0gICAgICAgICAgICAgICAgICAgICAgICIoIiBBUkdDT0RFUyAiKSIsIGFyZzEsIGFyZzIpOyBcCisgICAgX1B5X3N0YXRpY19zdHJpbmcoaWQsICNPUFNUUik7IFwKKyAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgJmlkLCAiKCIgQVJHQ09ERVMgIikiLCBhcmcxLCBhcmcyKTsgXAogfQogCiBzdGF0aWMgUHlfc3NpemVfdAogc2xvdF9zcV9sZW5ndGgoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpsZW5fc3RyOwotICAgIFB5T2JqZWN0ICpyZXMgPSBjYWxsX21ldGhvZChzZWxmLCAiX19sZW5fXyIsICZsZW5fc3RyLCAiKCkiKTsKKyAgICBfUHlfSURFTlRJRklFUihfX2xlbl9fKTsKKyAgICBQeU9iamVjdCAqcmVzID0gY2FsbF9tZXRob2Qoc2VsZiwgJlB5SWRfX19sZW5fXywgIigpIik7CiAgICAgUHlfc3NpemVfdCBsZW47CiAKICAgICBpZiAocmVzID09IE5VTEwpCkBAIC00Nzg3LDE0ICs0OTgxLDEzIEBACiBzbG90X3NxX2Fzc19pdGVtKFB5T2JqZWN0ICpzZWxmLCBQeV9zc2l6ZV90IGluZGV4LCBQeU9iamVjdCAqdmFsdWUpCiB7CiAgICAgUHlPYmplY3QgKnJlczsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmRlbGl0ZW1fc3RyLCAqc2V0aXRlbV9zdHI7CisgICAgX1B5X0lERU5USUZJRVIoX19kZWxpdGVtX18pOworICAgIF9QeV9JREVOVElGSUVSKF9fc2V0aXRlbV9fKTsKIAogICAgIGlmICh2YWx1ZSA9PSBOVUxMKQotICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAiX19kZWxpdGVtX18iLCAmZGVsaXRlbV9zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICIobikiLCBpbmRleCk7CisgICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19fZGVsaXRlbV9fLCAiKG4pIiwgaW5kZXgpOwogICAgIGVsc2UKLSAgICAgICAgcmVzID0gY2FsbF9tZXRob2Qoc2VsZiwgIl9fc2V0aXRlbV9fIiwgJnNldGl0ZW1fc3RyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAiKG5PKSIsIGluZGV4LCB2YWx1ZSk7CisgICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19fc2V0aXRlbV9fLCAiKG5PKSIsIGluZGV4LCB2YWx1ZSk7CiAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gLTE7CiAgICAgUHlfREVDUkVGKHJlcyk7CkBAIC00ODA2LDEwICs0OTk5LDkgQEAKIHsKICAgICBQeU9iamVjdCAqZnVuYywgKnJlcywgKmFyZ3M7CiAgICAgaW50IHJlc3VsdCA9IC0xOworICAgIF9QeV9JREVOVElGSUVSKF9fY29udGFpbnNfXyk7CiAKLSAgICBzdGF0aWMgUHlPYmplY3QgKmNvbnRhaW5zX3N0cjsKLQotICAgIGZ1bmMgPSBsb29rdXBfbWF5YmUoc2VsZiwgIl9fY29udGFpbnNfXyIsICZjb250YWluc19zdHIpOworICAgIGZ1bmMgPSBsb29rdXBfbWF5YmUoc2VsZiwgJlB5SWRfX19jb250YWluc19fKTsKICAgICBpZiAoZnVuYyAhPSBOVUxMKSB7CiAgICAgICAgIGFyZ3MgPSBQeVR1cGxlX1BhY2soMSwgdmFsdWUpOwogICAgICAgICBpZiAoYXJncyA9PSBOVUxMKQpAQCAtNDg0MCwxNCArNTAzMiwxNCBAQAogc2xvdF9tcF9hc3Nfc3Vic2NyaXB0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqa2V5LCBQeU9iamVjdCAqdmFsdWUpCiB7CiAgICAgUHlPYmplY3QgKnJlczsKLSAgICBzdGF0aWMgUHlPYmplY3QgKmRlbGl0ZW1fc3RyLCAqc2V0aXRlbV9zdHI7CisgICAgX1B5X0lERU5USUZJRVIoX19kZWxpdGVtX18pOworICAgIF9QeV9JREVOVElGSUVSKF9fc2V0aXRlbV9fKTsKIAogICAgIGlmICh2YWx1ZSA9PSBOVUxMKQotICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAiX19kZWxpdGVtX18iLCAmZGVsaXRlbV9zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICIoTykiLCBrZXkpOworICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAmUHlJZF9fX2RlbGl0ZW1fXywgIihPKSIsIGtleSk7CiAgICAgZWxzZQotICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAiX19zZXRpdGVtX18iLCAmc2V0aXRlbV9zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIihPTykiLCBrZXksIHZhbHVlKTsKKyAgICAgICAgcmVzID0gY2FsbF9tZXRob2Qoc2VsZiwgJlB5SWRfX19zZXRpdGVtX18sICIoT08pIiwga2V5LCB2YWx1ZSk7CisKICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgIHJldHVybiAtMTsKICAgICBQeV9ERUNSRUYocmVzKTsKQEAgLTQ4NjgsNyArNTA2MCw3IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc2xvdF9uYl9wb3dlcihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm90aGVyLCBQeU9iamVjdCAqbW9kdWx1cykKIHsKLSAgICBzdGF0aWMgUHlPYmplY3QgKnBvd19zdHI7CisgICAgX1B5X0lERU5USUZJRVIoX19wb3dfXyk7CiAKICAgICBpZiAobW9kdWx1cyA9PSBQeV9Ob25lKQogICAgICAgICByZXR1cm4gc2xvdF9uYl9wb3dlcl9iaW5hcnkoc2VsZiwgb3RoZXIpOwpAQCAtNDg3NywxMSArNTA2OSw5IEBACiAgICAgICAgc2xvdF9uYl9wb3dlciwgc28gY2hlY2sgYmVmb3JlIGNhbGxpbmcgc2VsZi5fX3Bvd19fLiAqLwogICAgIGlmIChQeV9UWVBFKHNlbGYpLT50cF9hc19udW1iZXIgIT0gTlVMTCAmJgogICAgICAgICBQeV9UWVBFKHNlbGYpLT50cF9hc19udW1iZXItPm5iX3Bvd2VyID09IHNsb3RfbmJfcG93ZXIpIHsKLSAgICAgICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsICJfX3Bvd19fIiwgJnBvd19zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAiKE9PKSIsIG90aGVyLCBtb2R1bHVzKTsKKyAgICAgICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19fcG93X18sICIoT08pIiwgb3RoZXIsIG1vZHVsdXMpOwogICAgIH0KLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKIFNMT1QwKHNsb3RfbmJfbmVnYXRpdmUsICJfX25lZ19fIikKQEAgLTQ4OTIsMTUgKzUwODIsMTYgQEAKIHNsb3RfbmJfYm9vbChQeU9iamVjdCAqc2VsZikKIHsKICAgICBQeU9iamVjdCAqZnVuYywgKmFyZ3M7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpib29sX3N0ciwgKmxlbl9zdHI7CiAgICAgaW50IHJlc3VsdCA9IC0xOwogICAgIGludCB1c2luZ19sZW4gPSAwOworICAgIF9QeV9JREVOVElGSUVSKF9fbGVuX18pOworICAgIF9QeV9JREVOVElGSUVSKF9fYm9vbF9fKTsKIAotICAgIGZ1bmMgPSBsb29rdXBfbWF5YmUoc2VsZiwgIl9fYm9vbF9fIiwgJmJvb2xfc3RyKTsKKyAgICBmdW5jID0gbG9va3VwX21heWJlKHNlbGYsICZQeUlkX19fYm9vbF9fKTsKICAgICBpZiAoZnVuYyA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICBmdW5jID0gbG9va3VwX21heWJlKHNlbGYsICJfX2xlbl9fIiwgJmxlbl9zdHIpOworICAgICAgICBmdW5jID0gbG9va3VwX21heWJlKHNlbGYsICZQeUlkX19fbGVuX18pOwogICAgICAgICBpZiAoZnVuYyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIFB5RXJyX09jY3VycmVkKCkgPyAtMSA6IDE7CiAgICAgICAgIHVzaW5nX2xlbiA9IDE7CkBAIC00OTM1LDggKzUxMjYsOCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIHNsb3RfbmJfaW5kZXgoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICppbmRleF9zdHI7Ci0gICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsICJfX2luZGV4X18iLCAmaW5kZXhfc3RyLCAiKCkiKTsKKyAgICBfUHlfSURFTlRJRklFUihfX2luZGV4X18pOworICAgIHJldHVybiBjYWxsX21ldGhvZChzZWxmLCAmUHlJZF9fX2luZGV4X18sICIoKSIpOwogfQogCiAKQEAgLTQ5NTcsOCArNTE0OCw4IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc2xvdF9uYl9pbnBsYWNlX3Bvd2VyKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqIGFyZzEsIFB5T2JqZWN0ICphcmcyKQogewotICBzdGF0aWMgUHlPYmplY3QgKmNhY2hlX3N0cjsKLSAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsICJfX2lwb3dfXyIsICZjYWNoZV9zdHIsICIoIiAiTyIgIikiLCBhcmcxKTsKKyAgICBfUHlfSURFTlRJRklFUihfX2lwb3dfXyk7CisgICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19faXBvd19fLCAiKCIgIk8iICIpIiwgYXJnMSk7CiB9CiBTTE9UMShzbG90X25iX2lucGxhY2VfbHNoaWZ0LCAiX19pbHNoaWZ0X18iLCBQeU9iamVjdCAqLCAiTyIpCiBTTE9UMShzbG90X25iX2lucGxhY2VfcnNoaWZ0LCAiX19pcnNoaWZ0X18iLCBQeU9iamVjdCAqLCAiTyIpCkBAIC00OTc1LDkgKzUxNjYsOSBAQAogc2xvdF90cF9yZXByKFB5T2JqZWN0ICpzZWxmKQogewogICAgIFB5T2JqZWN0ICpmdW5jLCAqcmVzOwotICAgIHN0YXRpYyBQeU9iamVjdCAqcmVwcl9zdHI7CisgICAgX1B5X0lERU5USUZJRVIoX19yZXByX18pOwogCi0gICAgZnVuYyA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgIl9fcmVwcl9fIiwgJnJlcHJfc3RyKTsKKyAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCAmUHlJZF9fX3JlcHJfXyk7CiAgICAgaWYgKGZ1bmMgIT0gTlVMTCkgewogICAgICAgICByZXMgPSBQeUV2YWxfQ2FsbE9iamVjdChmdW5jLCBOVUxMKTsKICAgICAgICAgUHlfREVDUkVGKGZ1bmMpOwpAQCAtNDk5MiwyMyArNTE4MywzMCBAQAogc2xvdF90cF9zdHIoUHlPYmplY3QgKnNlbGYpCiB7CiAgICAgUHlPYmplY3QgKmZ1bmMsICpyZXM7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpzdHJfc3RyOworICAgIF9QeV9JREVOVElGSUVSKF9fc3RyX18pOwogCi0gICAgZnVuYyA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgIl9fc3RyX18iLCAmc3RyX3N0cik7CisgICAgZnVuYyA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgJlB5SWRfX19zdHJfXyk7CiAgICAgaWYgKGZ1bmMgIT0gTlVMTCkgewogICAgICAgICByZXMgPSBQeUV2YWxfQ2FsbE9iamVjdChmdW5jLCBOVUxMKTsKICAgICAgICAgUHlfREVDUkVGKGZ1bmMpOwogICAgICAgICByZXR1cm4gcmVzOwogICAgIH0KICAgICBlbHNlIHsKLSAgICAgICAgUHlPYmplY3QgKnJlc3M7CisgICAgICAgIC8qIFB5T2JqZWN0ICpyZXNzOyAqLwogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICByZXMgPSBzbG90X3RwX3JlcHIoc2VsZik7CiAgICAgICAgIGlmICghcmVzKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIHJlc3MgPSBfUHlVbmljb2RlX0FzRGVmYXVsdEVuY29kZWRTdHJpbmcocmVzLCBOVUxMKTsKKyAgICAgICAgLyogWFhYIHRoaXMgaXMgbm9uLXNlbnNpY2FsLiBXaHkgc2hvdWxkIHdlIHJldHVybgorICAgICAgICAgICBhIGJ5dGVzIG9iamVjdCBmcm9tIF9fc3RyX18uIElzIHRoaXMgY29kZSBldmVuCisgICAgICAgICAgIHVzZWQ/IC0gbXZsICovCisgICAgICAgIGFzc2VydCgwKTsKKyAgICAgICAgcmV0dXJuIHJlczsKKyAgICAgICAgLyoKKyAgICAgICAgcmVzcyA9IF9QeVVuaWNvZGVfQXNEZWZhdWx0RW5jb2RlZFN0cmluZyhyZXMpOwogICAgICAgICBQeV9ERUNSRUYocmVzKTsKICAgICAgICAgcmV0dXJuIHJlc3M7CisgICAgICAgICovCiAgICAgfQogfQogCkBAIC01MDE2LDEwICs1MjE0LDEwIEBACiBzbG90X3RwX2hhc2goUHlPYmplY3QgKnNlbGYpCiB7CiAgICAgUHlPYmplY3QgKmZ1bmMsICpyZXM7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpoYXNoX3N0cjsKICAgICBQeV9zc2l6ZV90IGg7CisgICAgX1B5X0lERU5USUZJRVIoX19oYXNoX18pOwogCi0gICAgZnVuYyA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgIl9faGFzaF9fIiwgJmhhc2hfc3RyKTsKKyAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCAmUHlJZF9fX2hhc2hfXyk7CiAKICAgICBpZiAoZnVuYyA9PSBQeV9Ob25lKSB7CiAgICAgICAgIFB5X0RFQ1JFRihmdW5jKTsKQEAgLTUwNjMsOCArNTI2MSw4IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc2xvdF90cF9jYWxsKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpjYWxsX3N0cjsKLSAgICBQeU9iamVjdCAqbWV0aCA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgIl9fY2FsbF9fIiwgJmNhbGxfc3RyKTsKKyAgICBfUHlfSURFTlRJRklFUihfX2NhbGxfXyk7CisgICAgUHlPYmplY3QgKm1ldGggPSBsb29rdXBfbWV0aG9kKHNlbGYsICZQeUlkX19fY2FsbF9fKTsKICAgICBQeU9iamVjdCAqcmVzOwogCiAgICAgaWYgKG1ldGggPT0gTlVMTCkKQEAgLTUwOTAsOSArNTI4OCw4IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc2xvdF90cF9nZXRhdHRybyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm5hbWUpCiB7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpnZXRhdHRyaWJ1dGVfc3RyID0gTlVMTDsKLSAgICByZXR1cm4gY2FsbF9tZXRob2Qoc2VsZiwgIl9fZ2V0YXR0cmlidXRlX18iLCAmZ2V0YXR0cmlidXRlX3N0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgIihPKSIsIG5hbWUpOworICAgIF9QeV9JREVOVElGSUVSKF9fZ2V0YXR0cmlidXRlX18pOworICAgIHJldHVybiBjYWxsX21ldGhvZChzZWxmLCAmUHlJZF9fX2dldGF0dHJpYnV0ZV9fLCAiKE8pIiwgbmFtZSk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC01MTcyLDQwICs1MzY5LDM3IEBACiBzbG90X3RwX3NldGF0dHJvKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqbmFtZSwgUHlPYmplY3QgKnZhbHVlKQogewogICAgIFB5T2JqZWN0ICpyZXM7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpkZWxhdHRyX3N0ciwgKnNldGF0dHJfc3RyOworICAgIF9QeV9JREVOVElGSUVSKF9fZGVsYXR0cl9fKTsKKyAgICBfUHlfSURFTlRJRklFUihfX3NldGF0dHJfXyk7CiAKICAgICBpZiAodmFsdWUgPT0gTlVMTCkKLSAgICAgICAgcmVzID0gY2FsbF9tZXRob2Qoc2VsZiwgIl9fZGVsYXR0cl9fIiwgJmRlbGF0dHJfc3RyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAiKE8pIiwgbmFtZSk7CisgICAgICAgIHJlcyA9IGNhbGxfbWV0aG9kKHNlbGYsICZQeUlkX19fZGVsYXR0cl9fLCAiKE8pIiwgbmFtZSk7CiAgICAgZWxzZQotICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAiX19zZXRhdHRyX18iLCAmc2V0YXR0cl9zdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICIoT08pIiwgbmFtZSwgdmFsdWUpOworICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAmUHlJZF9fX3NldGF0dHJfXywgIihPTykiLCBuYW1lLCB2YWx1ZSk7CiAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gLTE7CiAgICAgUHlfREVDUkVGKHJlcyk7CiAgICAgcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBjaGFyICpuYW1lX29wW10gPSB7Ci0gICAgIl9fbHRfXyIsCi0gICAgIl9fbGVfXyIsCi0gICAgIl9fZXFfXyIsCi0gICAgIl9fbmVfXyIsCi0gICAgIl9fZ3RfXyIsCi0gICAgIl9fZ2VfXyIsCitzdGF0aWMgX1B5X0lkZW50aWZpZXIgbmFtZV9vcFtdID0geworICAgIHswLCAiX19sdF9fIiwgMH0sCisgICAgezAsICJfX2xlX18iLCAwfSwKKyAgICB7MCwgIl9fZXFfXyIsIDB9LAorICAgIHswLCAiX19uZV9fIiwgMH0sCisgICAgezAsICJfX2d0X18iLCAwfSwKKyAgICB7MCwgIl9fZ2VfXyIsIDB9CiB9OwogCiBzdGF0aWMgUHlPYmplY3QgKgogc2xvdF90cF9yaWNoY29tcGFyZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKm90aGVyLCBpbnQgb3ApCiB7CiAgICAgUHlPYmplY3QgKmZ1bmMsICphcmdzLCAqcmVzOwotICAgIHN0YXRpYyBQeU9iamVjdCAqb3Bfc3RyWzZdOwogCi0gICAgZnVuYyA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgbmFtZV9vcFtvcF0sICZvcF9zdHJbb3BdKTsKKyAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCAmbmFtZV9vcFtvcF0pOwogICAgIGlmIChmdW5jID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOworICAgICAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiAgICAgfQogICAgIGFyZ3MgPSBQeVR1cGxlX1BhY2soMSwgb3RoZXIpOwogICAgIGlmIChhcmdzID09IE5VTEwpCkBAIC01MjIyLDkgKzU0MTYsMTAgQEAKIHNsb3RfdHBfaXRlcihQeU9iamVjdCAqc2VsZikKIHsKICAgICBQeU9iamVjdCAqZnVuYywgKnJlczsKLSAgICBzdGF0aWMgUHlPYmplY3QgKml0ZXJfc3RyLCAqZ2V0aXRlbV9zdHI7CisgICAgX1B5X0lERU5USUZJRVIoX19pdGVyX18pOworICAgIF9QeV9JREVOVElGSUVSKF9fZ2V0aXRlbV9fKTsKIAotICAgIGZ1bmMgPSBsb29rdXBfbWV0aG9kKHNlbGYsICJfX2l0ZXJfXyIsICZpdGVyX3N0cik7CisgICAgZnVuYyA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgJlB5SWRfX19pdGVyX18pOwogICAgIGlmIChmdW5jICE9IE5VTEwpIHsKICAgICAgICAgUHlPYmplY3QgKmFyZ3M7CiAgICAgICAgIGFyZ3MgPSByZXMgPSBQeVR1cGxlX05ldygwKTsKQEAgLTUyMzYsNyArNTQzMSw3IEBACiAgICAgICAgIHJldHVybiByZXM7CiAgICAgfQogICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgZnVuYyA9IGxvb2t1cF9tZXRob2Qoc2VsZiwgIl9fZ2V0aXRlbV9fIiwgJmdldGl0ZW1fc3RyKTsKKyAgICBmdW5jID0gbG9va3VwX21ldGhvZChzZWxmLCAmUHlJZF9fX2dldGl0ZW1fXyk7CiAgICAgaWYgKGZ1bmMgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgIiclLjIwMHMnIG9iamVjdCBpcyBub3QgaXRlcmFibGUiLApAQCAtNTI1MCw4ICs1NDQ1LDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBzbG90X3RwX2l0ZXJuZXh0KFB5T2JqZWN0ICpzZWxmKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqbmV4dF9zdHI7Ci0gICAgcmV0dXJuIGNhbGxfbWV0aG9kKHNlbGYsICJfX25leHRfXyIsICZuZXh0X3N0ciwgIigpIik7CisgICAgX1B5X0lERU5USUZJRVIoX19uZXh0X18pOworICAgIHJldHVybiBjYWxsX21ldGhvZChzZWxmLCAmUHlJZF9fX25leHRfXywgIigpIik7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCkBAIC01Mjg1LDE0ICs1NDgwLDEzIEBACiBzbG90X3RwX2Rlc2NyX3NldChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnRhcmdldCwgUHlPYmplY3QgKnZhbHVlKQogewogICAgIFB5T2JqZWN0ICpyZXM7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpkZWxfc3RyLCAqc2V0X3N0cjsKKyAgICBfUHlfSURFTlRJRklFUihfX2RlbGV0ZV9fKTsKKyAgICBfUHlfSURFTlRJRklFUihfX3NldF9fKTsKIAogICAgIGlmICh2YWx1ZSA9PSBOVUxMKQotICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAiX19kZWxldGVfXyIsICZkZWxfc3RyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAiKE8pIiwgdGFyZ2V0KTsKKyAgICAgICAgcmVzID0gY2FsbF9tZXRob2Qoc2VsZiwgJlB5SWRfX19kZWxldGVfXywgIihPKSIsIHRhcmdldCk7CiAgICAgZWxzZQotICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAiX19zZXRfXyIsICZzZXRfc3RyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAiKE9PKSIsIHRhcmdldCwgdmFsdWUpOworICAgICAgICByZXMgPSBjYWxsX21ldGhvZChzZWxmLCAmUHlJZF9fX3NldF9fLCAiKE9PKSIsIHRhcmdldCwgdmFsdWUpOwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwogICAgIFB5X0RFQ1JFRihyZXMpOwpAQCAtNTMwMiw4ICs1NDk2LDggQEAKIHN0YXRpYyBpbnQKIHNsb3RfdHBfaW5pdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqaW5pdF9zdHI7Ci0gICAgUHlPYmplY3QgKm1ldGggPSBsb29rdXBfbWV0aG9kKHNlbGYsICJfX2luaXRfXyIsICZpbml0X3N0cik7CisgICAgX1B5X0lERU5USUZJRVIoX19pbml0X18pOworICAgIFB5T2JqZWN0ICptZXRoID0gbG9va3VwX21ldGhvZChzZWxmLCAmUHlJZF9fX2luaXRfXyk7CiAgICAgUHlPYmplY3QgKnJlczsKIAogICAgIGlmIChtZXRoID09IE5VTEwpCkBAIC01MzYwLDcgKzU1NTQsNyBAQAogc3RhdGljIHZvaWQKIHNsb3RfdHBfZGVsKFB5T2JqZWN0ICpzZWxmKQogewotICAgIHN0YXRpYyBQeU9iamVjdCAqZGVsX3N0ciA9IE5VTEw7CisgICAgX1B5X0lERU5USUZJRVIoX19kZWxfXyk7CiAgICAgUHlPYmplY3QgKmRlbCwgKnJlczsKICAgICBQeU9iamVjdCAqZXJyb3JfdHlwZSwgKmVycm9yX3ZhbHVlLCAqZXJyb3JfdHJhY2ViYWNrOwogCkBAIC01MzcyLDcgKzU1NjYsNyBAQAogICAgIFB5RXJyX0ZldGNoKCZlcnJvcl90eXBlLCAmZXJyb3JfdmFsdWUsICZlcnJvcl90cmFjZWJhY2spOwogCiAgICAgLyogRXhlY3V0ZSBfX2RlbF9fIG1ldGhvZCwgaWYgYW55LiAqLwotICAgIGRlbCA9IGxvb2t1cF9tYXliZShzZWxmLCAiX19kZWxfXyIsICZkZWxfc3RyKTsKKyAgICBkZWwgPSBsb29rdXBfbWF5YmUoc2VsZiwgJlB5SWRfX19kZWxfXyk7CiAgICAgaWYgKGRlbCAhPSBOVUxMKSB7CiAgICAgICAgIHJlcyA9IFB5RXZhbF9DYWxsT2JqZWN0KGRlbCwgTlVMTCk7CiAgICAgICAgIGlmIChyZXMgPT0gTlVMTCkKQEAgLTYwODYsNyArNjI4MCw3IEBACiAgICAgICAgIC8qIFdlIHdhbnQgX19jbGFzc19fIHRvIHJldHVybiB0aGUgY2xhc3Mgb2YgdGhlIHN1cGVyIG9iamVjdAogICAgICAgICAgICAoaS5lLiBzdXBlciwgb3IgYSBzdWJjbGFzcyksIG5vdCB0aGUgY2xhc3Mgb2Ygc3UtPm9iai4gKi8KICAgICAgICAgc2tpcCA9IChQeVVuaWNvZGVfQ2hlY2sobmFtZSkgJiYKLSAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShuYW1lKSA9PSA5ICYmCisgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChuYW1lKSA9PSA5ICYmCiAgICAgICAgICAgICBQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhuYW1lLCAiX19jbGFzc19fIikgPT0gMCk7CiAgICAgfQogCkBAIC02MTQ3LDcgKzYzNDEsNyBAQAogewogICAgIC8qIENoZWNrIHRoYXQgYSBzdXBlcigpIGNhbGwgbWFrZXMgc2Vuc2UuICBSZXR1cm4gYSB0eXBlIG9iamVjdC4KIAotICAgICAgIG9iaiBjYW4gYmUgYSBuZXctc3R5bGUgY2xhc3MsIG9yIGFuIGluc3RhbmNlIG9mIG9uZToKKyAgICAgICBvYmogY2FuIGJlIGEgY2xhc3MsIG9yIGFuIGluc3RhbmNlIG9mIG9uZToKIAogICAgICAgIC0gSWYgaXQgaXMgYSBjbGFzcywgaXQgbXVzdCBiZSBhIHN1YmNsYXNzIG9mICd0eXBlJy4gICAgICBUaGlzIGNhc2UgaXMKICAgICAgICAgIHVzZWQgZm9yIGNsYXNzIG1ldGhvZHM7IHRoZSByZXR1cm4gdmFsdWUgaXMgb2JqLgpAQCAtNjE3MywxNyArNjM2Nyw5IEBACiAgICAgfQogICAgIGVsc2UgewogICAgICAgICAvKiBUcnkgdGhlIHNsb3cgd2F5ICovCi0gICAgICAgIHN0YXRpYyBQeU9iamVjdCAqY2xhc3Nfc3RyID0gTlVMTDsKICAgICAgICAgUHlPYmplY3QgKmNsYXNzX2F0dHI7CiAKLSAgICAgICAgaWYgKGNsYXNzX3N0ciA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBjbGFzc19zdHIgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiX19jbGFzc19fIik7Ci0gICAgICAgICAgICBpZiAoY2xhc3Nfc3RyID09IE5VTEwpCi0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLQotICAgICAgICBjbGFzc19hdHRyID0gUHlPYmplY3RfR2V0QXR0cihvYmosIGNsYXNzX3N0cik7Ci0KKyAgICAgICAgY2xhc3NfYXR0ciA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9fX2NsYXNzX18pOwogICAgICAgICBpZiAoY2xhc3NfYXR0ciAhPSBOVUxMICYmCiAgICAgICAgICAgICBQeVR5cGVfQ2hlY2soY2xhc3NfYXR0cikgJiYKICAgICAgICAgICAgIChQeVR5cGVPYmplY3QgKiljbGFzc19hdHRyICE9IFB5X1RZUEUob2JqKSkKQEAgLTYyODUsNyArNjQ3MSw3IEBACiAgICAgICAgICAgICBQeU9iamVjdCAqbmFtZSA9IFB5VHVwbGVfR0VUX0lURU0oY28tPmNvX2ZyZWV2YXJzLCBpKTsKICAgICAgICAgICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2sobmFtZSkpOwogICAgICAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX19jbGFzc19fIikpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkBfX2NsYXNzX18iKSkgewogICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaW5kZXggPSBjby0+Y29fbmxvY2FscyArCiAgICAgICAgICAgICAgICAgICAgIFB5VHVwbGVfR0VUX1NJWkUoY28tPmNvX2NlbGx2YXJzKSArIGk7CiAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmNlbGwgPSBmLT5mX2xvY2Fsc3BsdXNbaW5kZXhdOwpkaWZmIC0tZ2l0IGEvT2JqZWN0cy90eXBlc2xvdHMuaW5jIGIvT2JqZWN0cy90eXBlc2xvdHMuaW5jCmluZGV4IDUxODZkY2YuLmNhYTFlMDMgMTAwNjQ0Ci0tLSBhL09iamVjdHMvdHlwZXNsb3RzLmluYworKysgYi9PYmplY3RzL3R5cGVzbG90cy5pbmMKQEAgLTEsNCArMSw0IEBACi0vKiBHZW5lcmF0ZWQgYnkgdHlwZXNsb3RzLnB5ICRSZXZpc2lvbiQgKi8KKy8qIEdlbmVyYXRlZCBieSB0eXBlc2xvdHMucHkgKi8KIDAsCiAwLAogb2Zmc2V0b2YoUHlIZWFwVHlwZU9iamVjdCwgYXNfbWFwcGluZy5tcF9hc3Nfc3Vic2NyaXB0KSwKZGlmZiAtLWdpdCBhL09iamVjdHMvdHlwZXNsb3RzLnB5IGIvT2JqZWN0cy90eXBlc2xvdHMucHkKaW5kZXggMmUwMGM4MC4uYjI0YzdmNCAxMDA2NDQKLS0tIGEvT2JqZWN0cy90eXBlc2xvdHMucHkKKysrIGIvT2JqZWN0cy90eXBlc2xvdHMucHkKQEAgLTMsNyArMyw3IEBACiAKIGltcG9ydCBzeXMsIHJlCiAKLXByaW50KCIvKiBHZW5lcmF0ZWQgYnkgdHlwZXNsb3RzLnB5ICRSZXZpc2lvbiQgKi8iKQorcHJpbnQoIi8qIEdlbmVyYXRlZCBieSB0eXBlc2xvdHMucHkgKi8iKQogcmVzID0ge30KIGZvciBsaW5lIGluIHN5cy5zdGRpbjoKICAgICBtID0gcmUubWF0Y2goIiNkZWZpbmUgUHlfKFthLXpfXSspIChbMC05XSspIiwgbGluZSkKZGlmZiAtLWdpdCBhL09iamVjdHMvdW5pY29kZWN0eXBlLmMgYi9PYmplY3RzL3VuaWNvZGVjdHlwZS5jCmluZGV4IDlmNmFjODkuLmE1NzJjMTIgMTAwNjQ0Ci0tLSBhL09iamVjdHMvdW5pY29kZWN0eXBlLmMKKysrIGIvT2JqZWN0cy91bmljb2RlY3R5cGUuYwpAQCAtMjEsMTMgKzIxLDIwIEBACiAjZGVmaW5lIFhJRF9TVEFSVF9NQVNLIDB4MTAwCiAjZGVmaW5lIFhJRF9DT05USU5VRV9NQVNLIDB4MjAwCiAjZGVmaW5lIFBSSU5UQUJMRV9NQVNLIDB4NDAwCi0jZGVmaW5lIE5PREVMVEFfTUFTSyAweDgwMAotI2RlZmluZSBOVU1FUklDX01BU0sgMHgxMDAwCisjZGVmaW5lIE5VTUVSSUNfTUFTSyAweDgwMAorI2RlZmluZSBDQVNFX0lHTk9SQUJMRV9NQVNLIDB4MTAwMAorI2RlZmluZSBDQVNFRF9NQVNLIDB4MjAwMAorI2RlZmluZSBFWFRFTkRFRF9DQVNFX01BU0sgMHg0MDAwCiAKIHR5cGVkZWYgc3RydWN0IHsKLSAgICBjb25zdCBQeV9VQ1M0IHVwcGVyOwotICAgIGNvbnN0IFB5X1VDUzQgbG93ZXI7Ci0gICAgY29uc3QgUHlfVUNTNCB0aXRsZTsKKyAgICAvKiAKKyAgICAgICBUaGVzZSBhcmUgZWl0aGVyIGRlbHRhcyB0byB0aGUgY2hhcmFjdGVyIG9yIG9mZnNldHMgaW4KKyAgICAgICBfUHlVbmljb2RlX0V4dGVuZGVkQ2FzZS4KKyAgICAqLworICAgIGNvbnN0IGludCB1cHBlcjsKKyAgICBjb25zdCBpbnQgbG93ZXI7CisgICAgY29uc3QgaW50IHRpdGxlOworICAgIC8qIE5vdGUgaWYgbW9yZSBmbGFnIHNwYWNlIGlzIG5lZWRlZCwgZGVjaW1hbCBhbmQgZGlnaXQgY291bGQgYmUgdW5pZmllZC4gKi8KICAgICBjb25zdCB1bnNpZ25lZCBjaGFyIGRlY2ltYWw7CiAgICAgY29uc3QgdW5zaWduZWQgY2hhciBkaWdpdDsKICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBmbGFnczsKQEAgLTU3LDE1ICs2NCwxMCBAQAogUHlfVUNTNCBfUHlVbmljb2RlX1RvVGl0bGVjYXNlKHJlZ2lzdGVyIFB5X1VDUzQgY2gpCiB7CiAgICAgY29uc3QgX1B5VW5pY29kZV9UeXBlUmVjb3JkICpjdHlwZSA9IGdldHR5cGVyZWNvcmQoY2gpOwotICAgIGludCBkZWx0YSA9IGN0eXBlLT50aXRsZTsKIAotICAgIGlmIChjdHlwZS0+ZmxhZ3MgJiBOT0RFTFRBX01BU0spCi0gICAgICAgIHJldHVybiBkZWx0YTsKLQotICAgIGlmIChkZWx0YSA+PSAzMjc2OCkKLSAgICAgICAgICAgIGRlbHRhIC09IDY1NTM2OwotCi0gICAgcmV0dXJuIGNoICsgZGVsdGE7CisgICAgaWYgKGN0eXBlLT5mbGFncyAmIEVYVEVOREVEX0NBU0VfTUFTSykKKyAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfRXh0ZW5kZWRDYXNlW2N0eXBlLT50aXRsZSAmIDB4RkZGRl07CisgICAgcmV0dXJuIGNoICsgY3R5cGUtPnRpdGxlOwogfQogCiAvKiBSZXR1cm5zIDEgZm9yIFVuaWNvZGUgY2hhcmFjdGVycyBoYXZpbmcgdGhlIGNhdGVnb3J5ICdMdCcsIDAKQEAgLTE4OCwxMiArMTkwLDEwIEBACiBQeV9VQ1M0IF9QeVVuaWNvZGVfVG9VcHBlcmNhc2UoUHlfVUNTNCBjaCkKIHsKICAgICBjb25zdCBfUHlVbmljb2RlX1R5cGVSZWNvcmQgKmN0eXBlID0gZ2V0dHlwZXJlY29yZChjaCk7Ci0gICAgaW50IGRlbHRhID0gY3R5cGUtPnVwcGVyOwotICAgIGlmIChjdHlwZS0+ZmxhZ3MgJiBOT0RFTFRBX01BU0spCi0gICAgICAgIHJldHVybiBkZWx0YTsKLSAgICBpZiAoZGVsdGEgPj0gMzI3NjgpCi0gICAgICAgICAgICBkZWx0YSAtPSA2NTUzNjsKLSAgICByZXR1cm4gY2ggKyBkZWx0YTsKKworICAgIGlmIChjdHlwZS0+ZmxhZ3MgJiBFWFRFTkRFRF9DQVNFX01BU0spCisgICAgICAgIHJldHVybiBfUHlVbmljb2RlX0V4dGVuZGVkQ2FzZVtjdHlwZS0+dXBwZXIgJiAweEZGRkZdOworICAgIHJldHVybiBjaCArIGN0eXBlLT51cHBlcjsKIH0KIAogLyogUmV0dXJucyB0aGUgbG93ZXJjYXNlIFVuaWNvZGUgY2hhcmFjdGVycyBjb3JyZXNwb25kaW5nIHRvIGNoIG9yIGp1c3QKQEAgLTIwMiwxMiArMjAyLDg3IEBACiBQeV9VQ1M0IF9QeVVuaWNvZGVfVG9Mb3dlcmNhc2UoUHlfVUNTNCBjaCkKIHsKICAgICBjb25zdCBfUHlVbmljb2RlX1R5cGVSZWNvcmQgKmN0eXBlID0gZ2V0dHlwZXJlY29yZChjaCk7Ci0gICAgaW50IGRlbHRhID0gY3R5cGUtPmxvd2VyOwotICAgIGlmIChjdHlwZS0+ZmxhZ3MgJiBOT0RFTFRBX01BU0spCi0gICAgICAgIHJldHVybiBkZWx0YTsKLSAgICBpZiAoZGVsdGEgPj0gMzI3NjgpCi0gICAgICAgICAgICBkZWx0YSAtPSA2NTUzNjsKLSAgICByZXR1cm4gY2ggKyBkZWx0YTsKKworICAgIGlmIChjdHlwZS0+ZmxhZ3MgJiBFWFRFTkRFRF9DQVNFX01BU0spCisgICAgICAgIHJldHVybiBfUHlVbmljb2RlX0V4dGVuZGVkQ2FzZVtjdHlwZS0+bG93ZXIgJiAweEZGRkZdOworICAgIHJldHVybiBjaCArIGN0eXBlLT5sb3dlcjsKK30KKworaW50IF9QeVVuaWNvZGVfVG9Mb3dlckZ1bGwoUHlfVUNTNCBjaCwgUHlfVUNTNCAqcmVzKQoreworICAgIGNvbnN0IF9QeVVuaWNvZGVfVHlwZVJlY29yZCAqY3R5cGUgPSBnZXR0eXBlcmVjb3JkKGNoKTsKKworICAgIGlmIChjdHlwZS0+ZmxhZ3MgJiBFWFRFTkRFRF9DQVNFX01BU0spIHsKKyAgICAgICAgaW50IGluZGV4ID0gY3R5cGUtPmxvd2VyICYgMHhGRkZGOworICAgICAgICBpbnQgbiA9IGN0eXBlLT5sb3dlciA+PiAyNDsKKyAgICAgICAgaW50IGk7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspCisgICAgICAgICAgICByZXNbaV0gPSBfUHlVbmljb2RlX0V4dGVuZGVkQ2FzZVtpbmRleCArIGldOworICAgICAgICByZXR1cm4gbjsKKyAgICB9CisgICAgcmVzWzBdID0gY2ggKyBjdHlwZS0+bG93ZXI7CisgICAgcmV0dXJuIDE7Cit9CisKK2ludCBfUHlVbmljb2RlX1RvVGl0bGVGdWxsKFB5X1VDUzQgY2gsIFB5X1VDUzQgKnJlcykKK3sKKyAgICBjb25zdCBfUHlVbmljb2RlX1R5cGVSZWNvcmQgKmN0eXBlID0gZ2V0dHlwZXJlY29yZChjaCk7CisKKyAgICBpZiAoY3R5cGUtPmZsYWdzICYgRVhURU5ERURfQ0FTRV9NQVNLKSB7CisgICAgICAgIGludCBpbmRleCA9IGN0eXBlLT50aXRsZSAmIDB4RkZGRjsKKyAgICAgICAgaW50IG4gPSBjdHlwZS0+dGl0bGUgPj4gMjQ7CisgICAgICAgIGludCBpOworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKQorICAgICAgICAgICAgcmVzW2ldID0gX1B5VW5pY29kZV9FeHRlbmRlZENhc2VbaW5kZXggKyBpXTsKKyAgICAgICAgcmV0dXJuIG47CisgICAgfQorICAgIHJlc1swXSA9IGNoICsgY3R5cGUtPnRpdGxlOworICAgIHJldHVybiAxOworfQorCitpbnQgX1B5VW5pY29kZV9Ub1VwcGVyRnVsbChQeV9VQ1M0IGNoLCBQeV9VQ1M0ICpyZXMpCit7CisgICAgY29uc3QgX1B5VW5pY29kZV9UeXBlUmVjb3JkICpjdHlwZSA9IGdldHR5cGVyZWNvcmQoY2gpOworCisgICAgaWYgKGN0eXBlLT5mbGFncyAmIEVYVEVOREVEX0NBU0VfTUFTSykgeworICAgICAgICBpbnQgaW5kZXggPSBjdHlwZS0+dXBwZXIgJiAweEZGRkY7CisgICAgICAgIGludCBuID0gY3R5cGUtPnVwcGVyID4+IDI0OworICAgICAgICBpbnQgaTsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IG47IGkrKykKKyAgICAgICAgICAgIHJlc1tpXSA9IF9QeVVuaWNvZGVfRXh0ZW5kZWRDYXNlW2luZGV4ICsgaV07CisgICAgICAgIHJldHVybiBuOworICAgIH0KKyAgICByZXNbMF0gPSBjaCArIGN0eXBlLT51cHBlcjsKKyAgICByZXR1cm4gMTsKK30KKworaW50IF9QeVVuaWNvZGVfVG9Gb2xkZWRGdWxsKFB5X1VDUzQgY2gsIFB5X1VDUzQgKnJlcykKK3sKKyAgICBjb25zdCBfUHlVbmljb2RlX1R5cGVSZWNvcmQgKmN0eXBlID0gZ2V0dHlwZXJlY29yZChjaCk7CisKKyAgICBpZiAoY3R5cGUtPmZsYWdzICYgRVhURU5ERURfQ0FTRV9NQVNLICYmIChjdHlwZS0+bG93ZXIgPj4gMjApICYgNykgeworICAgICAgICBpbnQgaW5kZXggPSAoY3R5cGUtPmxvd2VyICYgMHhGRkZGKSArIChjdHlwZS0+bG93ZXIgPj4gMjQpOworICAgICAgICBpbnQgbiA9IChjdHlwZS0+bG93ZXIgPj4gMjApICYgNzsKKyAgICAgICAgaW50IGk7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspCisgICAgICAgICAgICByZXNbaV0gPSBfUHlVbmljb2RlX0V4dGVuZGVkQ2FzZVtpbmRleCArIGldOworICAgICAgICByZXR1cm4gbjsKKyAgICB9CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfVG9Mb3dlckZ1bGwoY2gsIHJlcyk7Cit9CisKK2ludCBfUHlVbmljb2RlX0lzQ2FzZWQoUHlfVUNTNCBjaCkKK3sKKyAgICBjb25zdCBfUHlVbmljb2RlX1R5cGVSZWNvcmQgKmN0eXBlID0gZ2V0dHlwZXJlY29yZChjaCk7CisKKyAgICByZXR1cm4gKGN0eXBlLT5mbGFncyAmIENBU0VEX01BU0spICE9IDA7Cit9CisKK2ludCBfUHlVbmljb2RlX0lzQ2FzZUlnbm9yYWJsZShQeV9VQ1M0IGNoKQoreworICAgIGNvbnN0IF9QeVVuaWNvZGVfVHlwZVJlY29yZCAqY3R5cGUgPSBnZXR0eXBlcmVjb3JkKGNoKTsKKworICAgIHJldHVybiAoY3R5cGUtPmZsYWdzICYgQ0FTRV9JR05PUkFCTEVfTUFTSykgIT0gMDsKIH0KIAogLyogUmV0dXJucyAxIGZvciBVbmljb2RlIGNoYXJhY3RlcnMgaGF2aW5nIHRoZSBjYXRlZ29yeSAnTGwnLCAnTHUnLCAnTHQnLApkaWZmIC0tZ2l0IGEvT2JqZWN0cy91bmljb2Rlb2JqZWN0LmMgYi9PYmplY3RzL3VuaWNvZGVvYmplY3QuYwppbmRleCBmNTFkNGQwLi42NzMzNmJmIDEwMDY0NAotLS0gYS9PYmplY3RzL3VuaWNvZGVvYmplY3QuYworKysgYi9PYmplY3RzL3VuaWNvZGVvYmplY3QuYwpAQCAtMSw4ICsxLDcgQEAKIC8qCiAKIFVuaWNvZGUgaW1wbGVtZW50YXRpb24gYmFzZWQgb24gb3JpZ2luYWwgY29kZSBieSBGcmVkcmlrIEx1bmRoLAotbW9kaWZpZWQgYnkgTWFyYy1BbmRyZSBMZW1idXJnIDxtYWxAbGVtYnVyZy5jb20+IGFjY29yZGluZyB0byB0aGUKLVVuaWNvZGUgSW50ZWdyYXRpb24gUHJvcG9zYWwgKHNlZSBmaWxlIE1pc2MvdW5pY29kZS50eHQpLgorbW9kaWZpZWQgYnkgTWFyYy1BbmRyZSBMZW1idXJnIDxtYWxAbGVtYnVyZy5jb20+LgogCiBNYWpvciBzcGVlZCB1cGdyYWRlcyB0byB0aGUgbWV0aG9kIGltcGxlbWVudGF0aW9ucyBhdCB0aGUgUmV5a2phdmlrCiBOZWVkRm9yU3BlZWQgc3ByaW50LCBieSBGcmVkcmlrIEx1bmRoIGFuZCBBbmRyZXcgRGFsa2UuCkBAIC00MiwzNCArNDEsMTIgQEAKICNkZWZpbmUgUFlfU1NJWkVfVF9DTEVBTgogI2luY2x1ZGUgIlB5dGhvbi5oIgogI2luY2x1ZGUgInVjbmhhc2guaCIKKyNpbmNsdWRlICJieXRlc19tZXRob2RzLmgiCiAKICNpZmRlZiBNU19XSU5ET1dTCiAjaW5jbHVkZSA8d2luZG93cy5oPgogI2VuZGlmCiAKLS8qIExpbWl0IGZvciB0aGUgVW5pY29kZSBvYmplY3QgZnJlZSBsaXN0ICovCi0KLSNkZWZpbmUgUHlVbmljb2RlX01BWEZSRUVMSVNUICAgICAgIDEwMjQKLQotLyogTGltaXQgZm9yIHRoZSBVbmljb2RlIG9iamVjdCBmcmVlIGxpc3Qgc3RheSBhbGl2ZSBvcHRpbWl6YXRpb24uCi0KLSAgIFRoZSBpbXBsZW1lbnRhdGlvbiB3aWxsIGtlZXAgYWxsb2NhdGVkIFVuaWNvZGUgbWVtb3J5IGludGFjdCBmb3IKLSAgIGFsbCBvYmplY3RzIG9uIHRoZSBmcmVlIGxpc3QgaGF2aW5nIGEgc2l6ZSBsZXNzIHRoYW4gdGhpcwotICAgbGltaXQuIFRoaXMgcmVkdWNlcyBtYWxsb2MoKSBvdmVyaGVhZCBmb3Igc21hbGwgVW5pY29kZSBvYmplY3RzLgotCi0gICBBdCB3b3JzdCB0aGlzIHdpbGwgcmVzdWx0IGluIFB5VW5pY29kZV9NQVhGUkVFTElTVCAqCi0gICAoc2l6ZW9mKFB5VW5pY29kZU9iamVjdCkgKyBLRUVQQUxJVkVfU0laRV9MSU1JVCArCi0gICBtYWxsb2MoKS1vdmVyaGVhZCkgYnl0ZXMgb2YgdW51c2VkIGdhcmJhZ2UuCi0KLSAgIFNldHRpbmcgdGhlIGxpbWl0IHRvIDAgZWZmZWN0aXZlbHkgdHVybnMgdGhlIGZlYXR1cmUgb2ZmLgotCi0gICBOb3RlOiBUaGlzIGlzIGFuIGV4cGVyaW1lbnRhbCBmZWF0dXJlICEgSWYgeW91IGdldCBjb3JlIGR1bXBzIHdoZW4KLSAgIHVzaW5nIFVuaWNvZGUgb2JqZWN0cywgdHVybiB0aGlzIGZlYXR1cmUgb2ZmLgotCi0qLwotCi0jZGVmaW5lIEtFRVBBTElWRV9TSVpFX0xJTUlUICAgICAgIDkKLQogLyogRW5kaWFubmVzcyBzd2l0Y2hlczsgZGVmYXVsdHMgdG8gbGl0dGxlIGVuZGlhbiAqLwogCiAjaWZkZWYgV09SRFNfQklHRU5ESUFOCkBAIC05MCw2ICs2NywxMDUgQEAKIGV4dGVybiAiQyIgewogI2VuZGlmCiAKKy8qIE1heGltdW0gY29kZSBwb2ludCBvZiBVbmljb2RlIDYuMDogMHgxMGZmZmYgKDEsMTE0LDExMSkgKi8KKyNkZWZpbmUgTUFYX1VOSUNPREUgMHgxMGZmZmYKKworI2lmZGVmIFB5X0RFQlVHCisjICBkZWZpbmUgX1B5VW5pY29kZV9DSEVDSyhvcCkgX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KG9wLCAwKQorI2Vsc2UKKyMgIGRlZmluZSBfUHlVbmljb2RlX0NIRUNLKG9wKSBQeVVuaWNvZGVfQ2hlY2sob3ApCisjZW5kaWYKKworI2RlZmluZSBfUHlVbmljb2RlX1VURjgob3ApICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoUHlDb21wYWN0VW5pY29kZU9iamVjdCopKG9wKSktPnV0ZjgpCisjZGVmaW5lIFB5VW5pY29kZV9VVEY4KG9wKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sob3ApKSwgICAgICAgICAgICAgICAgICAgICAgXAorICAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKG9wKSksICAgICAgICAgICAgICAgICAgICBcCisgICAgIFB5VW5pY29kZV9JU19DT01QQUNUX0FTQ0lJKG9wKSA/ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICgoY2hhciopKChQeUFTQ0lJT2JqZWN0Kikob3ApICsgMSkpIDogICAgICAgICAgXAorICAgICAgICAgX1B5VW5pY29kZV9VVEY4KG9wKSkKKyNkZWZpbmUgX1B5VW5pY29kZV9VVEY4X0xFTkdUSChvcCkgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgoKFB5Q29tcGFjdFVuaWNvZGVPYmplY3QqKShvcCkpLT51dGY4X2xlbmd0aCkKKyNkZWZpbmUgUHlVbmljb2RlX1VURjhfTEVOR1RIKG9wKSAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIChhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyhvcCkpLCAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIGFzc2VydChQeVVuaWNvZGVfSVNfUkVBRFkob3ApKSwgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgUHlVbmljb2RlX0lTX0NPTVBBQ1RfQVNDSUkob3ApID8gICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgKChQeUFTQ0lJT2JqZWN0Kikob3ApKS0+bGVuZ3RoIDogICAgICAgICAgICAgICBcCisgICAgICAgICBfUHlVbmljb2RlX1VURjhfTEVOR1RIKG9wKSkKKyNkZWZpbmUgX1B5VW5pY29kZV9XU1RSKG9wKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgoKFB5QVNDSUlPYmplY3QqKShvcCkpLT53c3RyKQorI2RlZmluZSBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKG9wKSAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoUHlDb21wYWN0VW5pY29kZU9iamVjdCopKG9wKSktPndzdHJfbGVuZ3RoKQorI2RlZmluZSBfUHlVbmljb2RlX0xFTkdUSChvcCkgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoUHlBU0NJSU9iamVjdCAqKShvcCkpLT5sZW5ndGgpCisjZGVmaW5lIF9QeVVuaWNvZGVfU1RBVEUob3ApICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKChQeUFTQ0lJT2JqZWN0ICopKG9wKSktPnN0YXRlKQorI2RlZmluZSBfUHlVbmljb2RlX0hBU0gob3ApICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoUHlBU0NJSU9iamVjdCAqKShvcCkpLT5oYXNoKQorI2RlZmluZSBfUHlVbmljb2RlX0tJTkQob3ApICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKGFzc2VydChfUHlVbmljb2RlX0NIRUNLKG9wKSksICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKChQeUFTQ0lJT2JqZWN0ICopKG9wKSktPnN0YXRlLmtpbmQpCisjZGVmaW5lIF9QeVVuaWNvZGVfR0VUX0xFTkdUSChvcCkgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sob3ApKSwgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoKFB5QVNDSUlPYmplY3QgKikob3ApKS0+bGVuZ3RoKQorI2RlZmluZSBfUHlVbmljb2RlX0RBVEFfQU5ZKG9wKSAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoUHlVbmljb2RlT2JqZWN0Kikob3ApKS0+ZGF0YS5hbnkpCisKKyN1bmRlZiBQeVVuaWNvZGVfUkVBRFkKKyNkZWZpbmUgUHlVbmljb2RlX1JFQURZKG9wKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIChhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyhvcCkpLCAgICAgICAgICAgICAgICAgICAgICBcCisgICAgIChQeVVuaWNvZGVfSVNfUkVBRFkob3ApID8gICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgIDAgOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgX1B5VW5pY29kZV9SZWFkeShvcCkpKQorCisjZGVmaW5lIF9QeVVuaWNvZGVfU0hBUkVfVVRGOChvcCkgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sob3ApKSwgICAgICAgICAgICAgICAgICAgICAgXAorICAgICBhc3NlcnQoIVB5VW5pY29kZV9JU19DT01QQUNUX0FTQ0lJKG9wKSksICAgICAgICAgICBcCisgICAgIChfUHlVbmljb2RlX1VURjgob3ApID09IFB5VW5pY29kZV9EQVRBKG9wKSkpCisjZGVmaW5lIF9QeVVuaWNvZGVfU0hBUkVfV1NUUihvcCkgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sob3ApKSwgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID09IFB5VW5pY29kZV9EQVRBKG9wKSkpCisKKy8qIHRydWUgaWYgdGhlIFVuaWNvZGUgb2JqZWN0IGhhcyBhbiBhbGxvY2F0ZWQgVVRGLTggbWVtb3J5IGJsb2NrCisgICAobm90IHNoYXJlZCB3aXRoIG90aGVyIGRhdGEpICovCisjZGVmaW5lIF9QeVVuaWNvZGVfSEFTX1VURjhfTUVNT1JZKG9wKSAgICAgICAgICAgICAgICAgIFwKKyAgICAoYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sob3ApKSwgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoIVB5VW5pY29kZV9JU19DT01QQUNUX0FTQ0lJKG9wKSAgICAgICAgICAgICAgICAgICBcCisgICAgICAmJiBfUHlVbmljb2RlX1VURjgob3ApICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICYmIF9QeVVuaWNvZGVfVVRGOChvcCkgIT0gUHlVbmljb2RlX0RBVEEob3ApKSkKKworLyogdHJ1ZSBpZiB0aGUgVW5pY29kZSBvYmplY3QgaGFzIGFuIGFsbG9jYXRlZCB3c3RyIG1lbW9yeSBibG9jaworICAgKG5vdCBzaGFyZWQgd2l0aCBvdGhlciBkYXRhKSAqLworI2RlZmluZSBfUHlVbmljb2RlX0hBU19XU1RSX01FTU9SWShvcCkgICAgICAgICAgICAgICAgICBcCisgICAgKGFzc2VydChfUHlVbmljb2RlX0NIRUNLKG9wKSksICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKF9QeVVuaWNvZGVfV1NUUihvcCkgJiYgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgKCFQeVVuaWNvZGVfSVNfUkVBRFkob3ApIHx8ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgX1B5VW5pY29kZV9XU1RSKG9wKSAhPSBQeVVuaWNvZGVfREFUQShvcCkpKSkKKworLyogR2VuZXJpYyBoZWxwZXIgbWFjcm8gdG8gY29udmVydCBjaGFyYWN0ZXJzIG9mIGRpZmZlcmVudCB0eXBlcy4KKyAgIGZyb21fdHlwZSBhbmQgdG9fdHlwZSBoYXZlIHRvIGJlIHZhbGlkIHR5cGUgbmFtZXMsIGJlZ2luIGFuZCBlbmQKKyAgIGFyZSBwb2ludGVycyB0byB0aGUgc291cmNlIGNoYXJhY3RlcnMgd2hpY2ggc2hvdWxkIGJlIG9mIHR5cGUKKyAgICJmcm9tX3R5cGUgKiIuICB0byBpcyBhIHBvaW50ZXIgb2YgdHlwZSAidG9fdHlwZSAqIiBhbmQgcG9pbnRzIHRvIHRoZQorICAgYnVmZmVyIHdoZXJlIHRoZSByZXN1bHQgY2hhcmFjdGVycyBhcmUgd3JpdHRlbiB0by4gKi8KKyNkZWZpbmUgX1B5VW5pY29kZV9DT05WRVJUX0JZVEVTKGZyb21fdHlwZSwgdG9fdHlwZSwgYmVnaW4sIGVuZCwgdG8pIFwKKyAgICBkbyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB0b190eXBlICpfdG8gPSAodG9fdHlwZSAqKSB0bzsgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGNvbnN0IGZyb21fdHlwZSAqX2l0ZXIgPSAoYmVnaW4pOyAgICAgICAgICAgICAgIFwKKyAgICAgICAgY29uc3QgZnJvbV90eXBlICpfZW5kID0gKGVuZCk7ICAgICAgICAgICAgICAgICAgXAorICAgICAgICBQeV9zc2l6ZV90IG4gPSAoX2VuZCkgLSAoX2l0ZXIpOyAgICAgICAgICAgICAgICBcCisgICAgICAgIGNvbnN0IGZyb21fdHlwZSAqX3Vucm9sbGVkX2VuZCA9ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIF9pdGVyICsgKG4gJiB+IChQeV9zc2l6ZV90KSAzKTsgICAgICAgICAgICAgXAorICAgICAgICB3aGlsZSAoX2l0ZXIgPCAoX3Vucm9sbGVkX2VuZCkpIHsgICAgICAgICAgICAgICBcCisgICAgICAgICAgICBfdG9bMF0gPSAodG9fdHlwZSkgX2l0ZXJbMF07ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIF90b1sxXSA9ICh0b190eXBlKSBfaXRlclsxXTsgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgX3RvWzJdID0gKHRvX3R5cGUpIF9pdGVyWzJdOyAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICBfdG9bM10gPSAodG9fdHlwZSkgX2l0ZXJbM107ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIF9pdGVyICs9IDQ7IF90byArPSA0OyAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIHdoaWxlIChfaXRlciA8IChfZW5kKSkgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgICpfdG8rKyA9ICh0b190eXBlKSAqX2l0ZXIrKzsgICAgICAgICAgICAgICAgXAorICAgIH0gd2hpbGUgKDApCisKIC8qIFRoaXMgZGljdGlvbmFyeSBob2xkcyBhbGwgaW50ZXJuZWQgdW5pY29kZSBzdHJpbmdzLiAgTm90ZSB0aGF0IHJlZmVyZW5jZXMKICAgIHRvIHN0cmluZ3MgaW4gdGhpcyBkaWN0aW9uYXJ5IGFyZSAqbm90KiBjb3VudGVkIGluIHRoZSBzdHJpbmcncyBvYl9yZWZjbnQuCiAgICBXaGVuIHRoZSBpbnRlcm5lZCBzdHJpbmcgcmVhY2hlcyBhIHJlZmNudCBvZiAwIHRoZSBzdHJpbmcgZGVhbGxvY2F0aW9uCkBAIC0xMDAsMTYgKzE3NiwxNSBAQAogKi8KIHN0YXRpYyBQeU9iamVjdCAqaW50ZXJuZWQ7CiAKLS8qIEZyZWUgbGlzdCBmb3IgVW5pY29kZSBvYmplY3RzICovCi1zdGF0aWMgUHlVbmljb2RlT2JqZWN0ICpmcmVlX2xpc3Q7Ci1zdGF0aWMgaW50IG51bWZyZWU7Ci0KIC8qIFRoZSBlbXB0eSBVbmljb2RlIG9iamVjdCBpcyBzaGFyZWQgdG8gaW1wcm92ZSBwZXJmb3JtYW5jZS4gKi8KLXN0YXRpYyBQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGVfZW1wdHk7CitzdGF0aWMgUHlPYmplY3QgKnVuaWNvZGVfZW1wdHk7CisKKy8qIExpc3Qgb2Ygc3RhdGljIHN0cmluZ3MuICovCitzdGF0aWMgX1B5X0lkZW50aWZpZXIgKnN0YXRpY19zdHJpbmdzOwogCiAvKiBTaW5nbGUgY2hhcmFjdGVyIFVuaWNvZGUgc3RyaW5ncyBpbiB0aGUgTGF0aW4tMSByYW5nZSBhcmUgYmVpbmcKICAgIHNoYXJlZCBhcyB3ZWxsLiAqLwotc3RhdGljIFB5VW5pY29kZU9iamVjdCAqdW5pY29kZV9sYXRpbjFbMjU2XTsKK3N0YXRpYyBQeU9iamVjdCAqdW5pY29kZV9sYXRpbjFbMjU2XTsKIAogLyogRmFzdCBkZXRlY3Rpb24gb2YgdGhlIG1vc3QgZnJlcXVlbnQgd2hpdGVzcGFjZSBjaGFyYWN0ZXJzICovCiBjb25zdCB1bnNpZ25lZCBjaGFyIF9QeV9hc2NpaV93aGl0ZXNwYWNlW10gPSB7CkBAIC0xNDIsMTYgKzIxNywzNyBAQAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAKIH07CiAKLXN0YXRpYyBQeU9iamVjdCAqdW5pY29kZV9lbmNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoY29uc3QgY2hhciAqZXJyb3JzLAorLyogZm9yd2FyZCAqLworc3RhdGljIFB5VW5pY29kZU9iamVjdCAqX1B5VW5pY29kZV9OZXcoUHlfc3NpemVfdCBsZW5ndGgpOworc3RhdGljIFB5T2JqZWN0KiBnZXRfbGF0aW4xX2NoYXIodW5zaWduZWQgY2hhciBjaCk7CitzdGF0aWMgdm9pZCBjb3B5X2NoYXJhY3RlcnMoCisgICAgUHlPYmplY3QgKnRvLCBQeV9zc2l6ZV90IHRvX3N0YXJ0LAorICAgIFB5T2JqZWN0ICpmcm9tLCBQeV9zc2l6ZV90IGZyb21fc3RhcnQsCisgICAgUHlfc3NpemVfdCBob3dfbWFueSk7CitzdGF0aWMgaW50IHVuaWNvZGVfbW9kaWZpYWJsZShQeU9iamVjdCAqdW5pY29kZSk7CisKKworc3RhdGljIFB5T2JqZWN0ICoKK3VuaWNvZGVfZnJvbWFzY2lpKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSk7CitzdGF0aWMgUHlPYmplY3QgKgorX1B5VW5pY29kZV9Gcm9tVUNTMShjb25zdCB1bnNpZ25lZCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUpOworc3RhdGljIFB5T2JqZWN0ICoKK19QeVVuaWNvZGVfRnJvbVVDUzIoY29uc3QgUHlfVUNTMiAqcywgUHlfc3NpemVfdCBzaXplKTsKK3N0YXRpYyBQeU9iamVjdCAqCitfUHlVbmljb2RlX0Zyb21VQ1M0KGNvbnN0IFB5X1VDUzQgKnMsIFB5X3NzaXplX3Qgc2l6ZSk7CisKK3N0YXRpYyBQeU9iamVjdCAqCit1bmljb2RlX2VuY29kZV9jYWxsX2Vycm9yaGFuZGxlcihjb25zdCBjaGFyICplcnJvcnMsCiAgICAgICAgUHlPYmplY3QgKiplcnJvckhhbmRsZXIsY29uc3QgY2hhciAqZW5jb2RpbmcsIGNvbnN0IGNoYXIgKnJlYXNvbiwKLSAgICAgICBjb25zdCBQeV9VTklDT0RFICp1bmljb2RlLCBQeV9zc2l6ZV90IHNpemUsIFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAorICAgICAgIFB5T2JqZWN0ICp1bmljb2RlLCBQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0cG9zLCBQeV9zc2l6ZV90IGVuZHBvcywgUHlfc3NpemVfdCAqbmV3cG9zKTsKIAotc3RhdGljIHZvaWQgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKnVuaWNvZGUsIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydHBvcywgUHlfc3NpemVfdCBlbmRwb3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnJlYXNvbik7CitzdGF0aWMgdm9pZAorcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCisgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp1bmljb2RlLAorICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0cG9zLCBQeV9zc2l6ZV90IGVuZHBvcywKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcmVhc29uKTsKIAogLyogU2FtZSBmb3IgbGluZWJyZWFrcyAqLwogc3RhdGljIHVuc2lnbmVkIGNoYXIgYXNjaWlfbGluZWJyZWFrW10gPSB7CkBAIC0xODEsNyArMjc3LDggQEAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwCiB9OwogCi0KKy8qIFRoZSBtYXggdW5pY29kZSB2YWx1ZSBpcyBhbHdheXMgMHgxMEZGRkYgd2hpbGUgdXNpbmcgdGhlIFBFUC0zOTMgQVBJLgorICAgVGhpcyBmdW5jdGlvbiBpcyBrZXB0IGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpdGggdGhlIG9sZCBBUEkuICovCiBQeV9VTklDT0RFCiBQeVVuaWNvZGVfR2V0TWF4KHZvaWQpCiB7CkBAIC0xOTQsNiArMjkxLDIyMCBAQAogI2VuZGlmCiB9CiAKKyNpZmRlZiBQeV9ERUJVRworaW50CitfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3koUHlPYmplY3QgKm9wLCBpbnQgY2hlY2tfY29udGVudCkKK3sKKyAgICBQeUFTQ0lJT2JqZWN0ICphc2NpaTsKKyAgICB1bnNpZ25lZCBpbnQga2luZDsKKworICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob3ApKTsKKworICAgIGFzY2lpID0gKFB5QVNDSUlPYmplY3QgKilvcDsKKyAgICBraW5kID0gYXNjaWktPnN0YXRlLmtpbmQ7CisKKyAgICBpZiAoYXNjaWktPnN0YXRlLmFzY2lpID09IDEgJiYgYXNjaWktPnN0YXRlLmNvbXBhY3QgPT0gMSkgeworICAgICAgICBhc3NlcnQoa2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCk7CisgICAgICAgIGFzc2VydChhc2NpaS0+c3RhdGUucmVhZHkgPT0gMSk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBQeUNvbXBhY3RVbmljb2RlT2JqZWN0ICpjb21wYWN0ID0gKFB5Q29tcGFjdFVuaWNvZGVPYmplY3QgKilvcDsKKyAgICAgICAgdm9pZCAqZGF0YTsKKworICAgICAgICBpZiAoYXNjaWktPnN0YXRlLmNvbXBhY3QgPT0gMSkgeworICAgICAgICAgICAgZGF0YSA9IGNvbXBhY3QgKyAxOworICAgICAgICAgICAgYXNzZXJ0KGtpbmQgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQKKyAgICAgICAgICAgICAgICAgICB8fCBraW5kID09IFB5VW5pY29kZV8yQllURV9LSU5ECisgICAgICAgICAgICAgICAgICAgfHwga2luZCA9PSBQeVVuaWNvZGVfNEJZVEVfS0lORCk7CisgICAgICAgICAgICBhc3NlcnQoYXNjaWktPnN0YXRlLmFzY2lpID09IDApOworICAgICAgICAgICAgYXNzZXJ0KGFzY2lpLT5zdGF0ZS5yZWFkeSA9PSAxKTsKKyAgICAgICAgICAgIGFzc2VydCAoY29tcGFjdC0+dXRmOCAhPSBkYXRhKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIFB5VW5pY29kZU9iamVjdCAqdW5pY29kZSA9IChQeVVuaWNvZGVPYmplY3QgKilvcDsKKworICAgICAgICAgICAgZGF0YSA9IHVuaWNvZGUtPmRhdGEuYW55OworICAgICAgICAgICAgaWYgKGtpbmQgPT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpIHsKKyAgICAgICAgICAgICAgICBhc3NlcnQoYXNjaWktPmxlbmd0aCA9PSAwKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoYXNjaWktPmhhc2ggPT0gLTEpOworICAgICAgICAgICAgICAgIGFzc2VydChhc2NpaS0+c3RhdGUuY29tcGFjdCA9PSAwKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoYXNjaWktPnN0YXRlLmFzY2lpID09IDApOworICAgICAgICAgICAgICAgIGFzc2VydChhc2NpaS0+c3RhdGUucmVhZHkgPT0gMCk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGFzY2lpLT5zdGF0ZS5pbnRlcm5lZCA9PSBTU1RBVEVfTk9UX0lOVEVSTkVEKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoYXNjaWktPndzdHIgIT0gTlVMTCk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGRhdGEgPT0gTlVMTCk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGNvbXBhY3QtPnV0ZjggPT0gTlVMTCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBhc3NlcnQoa2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORAorICAgICAgICAgICAgICAgICAgICAgICB8fCBraW5kID09IFB5VW5pY29kZV8yQllURV9LSU5ECisgICAgICAgICAgICAgICAgICAgICAgIHx8IGtpbmQgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpOworICAgICAgICAgICAgICAgIGFzc2VydChhc2NpaS0+c3RhdGUuY29tcGFjdCA9PSAwKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoYXNjaWktPnN0YXRlLnJlYWR5ID09IDEpOworICAgICAgICAgICAgICAgIGFzc2VydChkYXRhICE9IE5VTEwpOworICAgICAgICAgICAgICAgIGlmIChhc2NpaS0+c3RhdGUuYXNjaWkpIHsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0IChjb21wYWN0LT51dGY4ID09IGRhdGEpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnQgKGNvbXBhY3QtPnV0ZjhfbGVuZ3RoID09IGFzY2lpLT5sZW5ndGgpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIGFzc2VydCAoY29tcGFjdC0+dXRmOCAhPSBkYXRhKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiAoa2luZCAhPSBQeVVuaWNvZGVfV0NIQVJfS0lORCkgeworICAgICAgICAgICAgaWYgKAorI2lmIFNJWkVPRl9XQ0hBUl9UID09IDIKKyAgICAgICAgICAgICAgICBraW5kID09IFB5VW5pY29kZV8yQllURV9LSU5ECisjZWxzZQorICAgICAgICAgICAgICAgIGtpbmQgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQKKyNlbmRpZgorICAgICAgICAgICAgICAgKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGFzc2VydChhc2NpaS0+d3N0ciA9PSBkYXRhKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoY29tcGFjdC0+d3N0cl9sZW5ndGggPT0gYXNjaWktPmxlbmd0aCk7CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICBhc3NlcnQoYXNjaWktPndzdHIgIT0gZGF0YSk7CisgICAgICAgIH0KKworICAgICAgICBpZiAoY29tcGFjdC0+dXRmOCA9PSBOVUxMKQorICAgICAgICAgICAgYXNzZXJ0KGNvbXBhY3QtPnV0ZjhfbGVuZ3RoID09IDApOworICAgICAgICBpZiAoYXNjaWktPndzdHIgPT0gTlVMTCkKKyAgICAgICAgICAgIGFzc2VydChjb21wYWN0LT53c3RyX2xlbmd0aCA9PSAwKTsKKyAgICB9CisgICAgLyogY2hlY2sgdGhhdCB0aGUgYmVzdCBraW5kIGlzIHVzZWQgKi8KKyAgICBpZiAoY2hlY2tfY29udGVudCAmJiBraW5kICE9IFB5VW5pY29kZV9XQ0hBUl9LSU5EKQorICAgIHsKKyAgICAgICAgUHlfc3NpemVfdCBpOworICAgICAgICBQeV9VQ1M0IG1heGNoYXIgPSAwOworICAgICAgICB2b2lkICpkYXRhID0gUHlVbmljb2RlX0RBVEEoYXNjaWkpOworICAgICAgICBmb3IgKGk9MDsgaSA8IGFzY2lpLT5sZW5ndGg7IGkrKykKKyAgICAgICAgeworICAgICAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICAgICAgaWYgKGNoID4gbWF4Y2hhcikKKyAgICAgICAgICAgICAgICBtYXhjaGFyID0gY2g7CisgICAgICAgIH0KKyAgICAgICAgaWYgKGtpbmQgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQpIHsKKyAgICAgICAgICAgIGlmIChhc2NpaS0+c3RhdGUuYXNjaWkgPT0gMCkgeworICAgICAgICAgICAgICAgIGFzc2VydChtYXhjaGFyID49IDEyOCk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KG1heGNoYXIgPD0gMjU1KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBhc3NlcnQobWF4Y2hhciA8IDEyOCk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoa2luZCA9PSBQeVVuaWNvZGVfMkJZVEVfS0lORCkgeworICAgICAgICAgICAgYXNzZXJ0KG1heGNoYXIgPj0gMHgxMDApOworICAgICAgICAgICAgYXNzZXJ0KG1heGNoYXIgPD0gMHhGRkZGKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGFzc2VydChtYXhjaGFyID49IDB4MTAwMDApOworICAgICAgICAgICAgYXNzZXJ0KG1heGNoYXIgPD0gTUFYX1VOSUNPREUpOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiAxOworfQorI2VuZGlmCisKK3N0YXRpYyBQeU9iamVjdCoKK3VuaWNvZGVfcmVzdWx0X3djaGFyKFB5T2JqZWN0ICp1bmljb2RlKQoreworI2lmbmRlZiBQeV9ERUJVRworICAgIFB5X3NzaXplX3QgbGVuOworCisgICAgYXNzZXJ0KFB5X1JFRkNOVCh1bmljb2RlKSA9PSAxKTsKKworICAgIGxlbiA9IF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSk7CisgICAgaWYgKGxlbiA9PSAwKSB7CisgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKKyAgICAgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgICAgICByZXR1cm4gdW5pY29kZV9lbXB0eTsKKyAgICB9CisKKyAgICBpZiAobGVuID09IDEpIHsKKyAgICAgICAgd2NoYXJfdCBjaCA9IF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKVswXTsKKyAgICAgICAgaWYgKGNoIDwgMjU2KSB7CisgICAgICAgICAgICBQeU9iamVjdCAqbGF0aW4xX2NoYXIgPSBnZXRfbGF0aW4xX2NoYXIoKHVuc2lnbmVkIGNoYXIpY2gpOworICAgICAgICAgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgICAgICAgICAgcmV0dXJuIGxhdGluMV9jaGFyOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKF9QeVVuaWNvZGVfUmVhZHkodW5pY29kZSkgPCAwKSB7CisgICAgICAgIFB5X1hERUNSRUYodW5pY29kZSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyNlbHNlCisgICAgLyogZG9uJ3QgbWFrZSB0aGUgcmVzdWx0IHJlYWR5IGluIGRlYnVnIG1vZGUgdG8gZW5zdXJlIHRoYXQgdGhlIGNhbGxlcgorICAgICAgIG1ha2VzIHRoZSBzdHJpbmcgcmVhZHkgYmVmb3JlIHVzaW5nIGl0ICovCisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1bmljb2RlLCAxKSk7CisjZW5kaWYKKyAgICByZXR1cm4gdW5pY29kZTsKK30KKworc3RhdGljIFB5T2JqZWN0KgordW5pY29kZV9yZXN1bHRfcmVhZHkoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgUHlfc3NpemVfdCBsZW5ndGg7CisKKyAgICBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKTsKKyAgICBpZiAobGVuZ3RoID09IDApIHsKKyAgICAgICAgaWYgKHVuaWNvZGUgIT0gdW5pY29kZV9lbXB0eSkgeworICAgICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICAgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgICAgICB9CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgIH0KKworICAgIGlmIChsZW5ndGggPT0gMSkgeworICAgICAgICBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQURfQ0hBUih1bmljb2RlLCAwKTsKKyAgICAgICAgaWYgKGNoIDwgMjU2KSB7CisgICAgICAgICAgICBQeU9iamVjdCAqbGF0aW4xX2NoYXIgPSB1bmljb2RlX2xhdGluMVtjaF07CisgICAgICAgICAgICBpZiAobGF0aW4xX2NoYXIgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgIGlmICh1bmljb2RlICE9IGxhdGluMV9jaGFyKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihsYXRpbjFfY2hhcik7CisgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgcmV0dXJuIGxhdGluMV9jaGFyOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1bmljb2RlLCAxKSk7CisgICAgICAgICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGUpOworICAgICAgICAgICAgICAgIHVuaWNvZGVfbGF0aW4xW2NoXSA9IHVuaWNvZGU7CisgICAgICAgICAgICAgICAgcmV0dXJuIHVuaWNvZGU7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHVuaWNvZGUsIDEpKTsKKyAgICByZXR1cm4gdW5pY29kZTsKK30KKworc3RhdGljIFB5T2JqZWN0KgordW5pY29kZV9yZXN1bHQoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0sodW5pY29kZSkpOworICAgIGlmIChQeVVuaWNvZGVfSVNfUkVBRFkodW5pY29kZSkpCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF9yZWFkeSh1bmljb2RlKTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF93Y2hhcih1bmljb2RlKTsKK30KKworc3RhdGljIFB5T2JqZWN0KgordW5pY29kZV9yZXN1bHRfdW5jaGFuZ2VkKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIGlmIChQeVVuaWNvZGVfQ2hlY2tFeGFjdCh1bmljb2RlKSkgeworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlKTsKKyAgICAgICAgcmV0dXJuIHVuaWNvZGU7CisgICAgfQorICAgIGVsc2UKKyAgICAgICAgLyogU3VidHlwZSAtLSByZXR1cm4gZ2VudWluZSB1bmljb2RlIHN0cmluZyB3aXRoIHRoZSBzYW1lIHZhbHVlLiAqLworICAgICAgICByZXR1cm4gX1B5VW5pY29kZV9Db3B5KHVuaWNvZGUpOworfQorCisjaWZkZWYgSEFWRV9NQkNTCitzdGF0aWMgT1NWRVJTSU9OSU5GT0VYIHdpbnZlcjsKKyNlbmRpZgorCiAvKiAtLS0gQmxvb20gRmlsdGVycyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCiAvKiBzdHVmZiB0byBpbXBsZW1lbnQgc2ltcGxlICJibG9vbSBmaWx0ZXJzIiBmb3IgVW5pY29kZSBjaGFyYWN0ZXJzLgpAQCAtMjIzLDcgKzUzNCw4IEBACiAgICAgKChjaCkgPCAxMjhVID8gYXNjaWlfbGluZWJyZWFrWyhjaCldIDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgIChCTE9PTShibG9vbV9saW5lYnJlYWssIChjaCkpICYmIFB5X1VOSUNPREVfSVNMSU5FQlJFQUsoY2gpKSkKIAotUHlfTE9DQUxfSU5MSU5FKEJMT09NX01BU0spIG1ha2VfYmxvb21fbWFzayhQeV9VTklDT0RFKiBwdHIsIFB5X3NzaXplX3QgbGVuKQorUHlfTE9DQUxfSU5MSU5FKEJMT09NX01BU0spCittYWtlX2Jsb29tX21hc2soaW50IGtpbmQsIHZvaWQqIHB0ciwgUHlfc3NpemVfdCBsZW4pCiB7CiAgICAgLyogY2FsY3VsYXRlIHNpbXBsZSBibG9vbS1zdHlsZSBiaXRtYXNrIGZvciBhIGdpdmVuIHVuaWNvZGUgc3RyaW5nICovCiAKQEAgLTIzMiw3NiArNTQ0LDI1MSBAQAogCiAgICAgbWFzayA9IDA7CiAgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKQotICAgICAgICBCTE9PTV9BREQobWFzaywgcHRyW2ldKTsKKyAgICAgICAgQkxPT01fQUREKG1hc2ssIFB5VW5pY29kZV9SRUFEKGtpbmQsIHB0ciwgaSkpOwogCiAgICAgcmV0dXJuIG1hc2s7CiB9CiAKLVB5X0xPQ0FMX0lOTElORShpbnQpIHVuaWNvZGVfbWVtYmVyKFB5X1VOSUNPREUgY2hyLCBQeV9VTklDT0RFKiBzZXQsIFB5X3NzaXplX3Qgc2V0bGVuKQotewotICAgIFB5X3NzaXplX3QgaTsKKyNkZWZpbmUgQkxPT01fTUVNQkVSKG1hc2ssIGNociwgc3RyKSBcCisgICAgKEJMT09NKG1hc2ssIGNocikgXAorICAgICAmJiAoUHlVbmljb2RlX0ZpbmRDaGFyKHN0ciwgY2hyLCAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpLCAxKSA+PSAwKSkKIAotICAgIGZvciAoaSA9IDA7IGkgPCBzZXRsZW47IGkrKykKLSAgICAgICAgaWYgKHNldFtpXSA9PSBjaHIpCi0gICAgICAgICAgICByZXR1cm4gMTsKKy8qIENvbXBpbGF0aW9uIG9mIHRlbXBsYXRlZCByb3V0aW5lcyAqLwogCi0gICAgcmV0dXJuIDA7Ci19CisjaW5jbHVkZSAic3RyaW5nbGliL2FzY2lpbGliLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2Zhc3RzZWFyY2guaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvcGFydGl0aW9uLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3NwbGl0LmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2NvdW50LmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2ZpbmQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvZmluZF9tYXhfY2hhci5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9sb2NhbGV1dGlsLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3VuZGVmLmgiCiAKLSNkZWZpbmUgQkxPT01fTUVNQkVSKG1hc2ssIGNociwgc2V0LCBzZXRsZW4pICAgICAgICAgICAgICAgICAgICBcCi0gICAgQkxPT00obWFzaywgY2hyKSAmJiB1bmljb2RlX21lbWJlcihjaHIsIHNldCwgc2V0bGVuKQorI2luY2x1ZGUgInN0cmluZ2xpYi91Y3MxbGliLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2Zhc3RzZWFyY2guaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvcGFydGl0aW9uLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3NwbGl0LmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2NvdW50LmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2ZpbmQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvZmluZF9tYXhfY2hhci5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9sb2NhbGV1dGlsLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3VuZGVmLmgiCisKKyNpbmNsdWRlICJzdHJpbmdsaWIvdWNzMmxpYi5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9mYXN0c2VhcmNoLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3BhcnRpdGlvbi5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9zcGxpdC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9jb3VudC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9maW5kLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2ZpbmRfbWF4X2NoYXIuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvbG9jYWxldXRpbC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi91bmRlZi5oIgorCisjaW5jbHVkZSAic3RyaW5nbGliL3VjczRsaWIuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvZmFzdHNlYXJjaC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9wYXJ0aXRpb24uaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvc3BsaXQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvY291bnQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvZmluZC5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9maW5kX21heF9jaGFyLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2xvY2FsZXV0aWwuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvdW5kZWYuaCIKKworI2luY2x1ZGUgInN0cmluZ2xpYi91bmljb2RlZGVmcy5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9mYXN0c2VhcmNoLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2NvdW50LmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2ZpbmQuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvdW5kZWYuaCIKIAogLyogLS0tIFVuaWNvZGUgT2JqZWN0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKLXN0YXRpYwotaW50IHVuaWNvZGVfcmVzaXplKHJlZ2lzdGVyIFB5VW5pY29kZU9iamVjdCAqdW5pY29kZSwKLSAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbmd0aCkKK3N0YXRpYyBQeU9iamVjdCAqCitmaXh1cChQeU9iamVjdCAqc2VsZiwgUHlfVUNTNCAoKmZpeGZjdCkoUHlPYmplY3QgKnMpKTsKKworUHlfTE9DQUxfSU5MSU5FKFB5X3NzaXplX3QpIGZpbmRjaGFyKHZvaWQgKnMsIGludCBraW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwgUHlfVUNTNCBjaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZGlyZWN0aW9uKQogewotICAgIHZvaWQgKm9sZHN0cjsKKyAgICBpbnQgbW9kZSA9IChkaXJlY3Rpb24gPT0gMSkgPyBGQVNUX1NFQVJDSCA6IEZBU1RfUlNFQVJDSDsKIAotICAgIC8qIFNob3J0Y3V0IGlmIHRoZXJlJ3Mgbm90aGluZyBtdWNoIHRvIGRvLiAqLwotICAgIGlmICh1bmljb2RlLT5sZW5ndGggPT0gbGVuZ3RoKQotICAgICAgICBnb3RvIHJlc2V0OwotCi0gICAgLyogUmVzaXppbmcgc2hhcmVkIG9iamVjdCAodW5pY29kZV9lbXB0eSBvciBzaW5nbGUgY2hhcmFjdGVyCi0gICAgICAgb2JqZWN0cykgaW4tcGxhY2UgaXMgbm90IGFsbG93ZWQuIFVzZSBQeVVuaWNvZGVfUmVzaXplKCkKLSAgICAgICBpbnN0ZWFkICEgKi8KLQotICAgIGlmICh1bmljb2RlID09IHVuaWNvZGVfZW1wdHkgfHwKLSAgICAgICAgKHVuaWNvZGUtPmxlbmd0aCA9PSAxICYmCi0gICAgICAgICB1bmljb2RlLT5zdHJbMF0gPCAyNTZVICYmCi0gICAgICAgICB1bmljb2RlX2xhdGluMVt1bmljb2RlLT5zdHJbMF1dID09IHVuaWNvZGUpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJjYW4ndCByZXNpemUgc2hhcmVkIHN0ciBvYmplY3RzIik7CisgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgeworICAgICAgICAgICAgUHlfVUNTMSBjaDEgPSAoUHlfVUNTMSkgY2g7CisgICAgICAgICAgICBpZiAoY2gxID09IGNoKQorICAgICAgICAgICAgICAgIHJldHVybiB1Y3MxbGliX2Zhc3RzZWFyY2goKFB5X1VDUzEgKikgcywgc2l6ZSwgJmNoMSwgMSwgMCwgbW9kZSk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgeworICAgICAgICAgICAgUHlfVUNTMiBjaDIgPSAoUHlfVUNTMikgY2g7CisgICAgICAgICAgICBpZiAoY2gyID09IGNoKQorICAgICAgICAgICAgICAgIHJldHVybiB1Y3MybGliX2Zhc3RzZWFyY2goKFB5X1VDUzIgKikgcywgc2l6ZSwgJmNoMiwgMSwgMCwgbW9kZSk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIHVjczRsaWJfZmFzdHNlYXJjaCgoUHlfVUNTNCAqKSBzLCBzaXplLCAmY2gsIDEsIDAsIG1vZGUpOworICAgIGRlZmF1bHQ6CisgICAgICAgIGFzc2VydCgwKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KK30KIAotICAgIC8qIFdlIGFsbG9jYXRlIG9uZSBtb3JlIGJ5dGUgdG8gbWFrZSBzdXJlIHRoZSBzdHJpbmcgaXMgVXgwMDAwIHRlcm1pbmF0ZWQuCi0gICAgICAgVGhlIG92ZXJhbGxvY2F0aW9uIGlzIGFsc28gdXNlZCBieSBmYXN0c2VhcmNoLCB3aGljaCBhc3N1bWVzIHRoYXQgaXQncwotICAgICAgIHNhZmUgdG8gbG9vayBhdCBzdHJbbGVuZ3RoXSAod2l0aG91dCBtYWtpbmcgYW55IGFzc3VtcHRpb25zIGFib3V0IHdoYXQKLSAgICAgICBpdCBjb250YWlucykuICovCitzdGF0aWMgUHlPYmplY3QqCityZXNpemVfY29tcGFjdChQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCBsZW5ndGgpCit7CisgICAgUHlfc3NpemVfdCBjaGFyX3NpemU7CisgICAgUHlfc3NpemVfdCBzdHJ1Y3Rfc2l6ZTsKKyAgICBQeV9zc2l6ZV90IG5ld19zaXplOworICAgIGludCBzaGFyZV93c3RyOworICAgIFB5T2JqZWN0ICpuZXdfdW5pY29kZTsKKyAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKHVuaWNvZGUpKTsKKyAgICBhc3NlcnQoUHlVbmljb2RlX0lTX0NPTVBBQ1QodW5pY29kZSkpOwogCi0gICAgb2xkc3RyID0gdW5pY29kZS0+c3RyOwotICAgIHVuaWNvZGUtPnN0ciA9IFB5T2JqZWN0X1JFQUxMT0ModW5pY29kZS0+c3RyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKFB5X1VOSUNPREUpICogKGxlbmd0aCArIDEpKTsKLSAgICBpZiAoIXVuaWNvZGUtPnN0cikgewotICAgICAgICB1bmljb2RlLT5zdHIgPSAoUHlfVU5JQ09ERSAqKW9sZHN0cjsKKyAgICBjaGFyX3NpemUgPSBQeVVuaWNvZGVfS0lORCh1bmljb2RlKTsKKyAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHVuaWNvZGUpKQorICAgICAgICBzdHJ1Y3Rfc2l6ZSA9IHNpemVvZihQeUFTQ0lJT2JqZWN0KTsKKyAgICBlbHNlCisgICAgICAgIHN0cnVjdF9zaXplID0gc2l6ZW9mKFB5Q29tcGFjdFVuaWNvZGVPYmplY3QpOworICAgIHNoYXJlX3dzdHIgPSBfUHlVbmljb2RlX1NIQVJFX1dTVFIodW5pY29kZSk7CisKKyAgICBpZiAobGVuZ3RoID4gKChQWV9TU0laRV9UX01BWCAtIHN0cnVjdF9zaXplKSAvIGNoYXJfc2l6ZSAtIDEpKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBuZXdfc2l6ZSA9IChzdHJ1Y3Rfc2l6ZSArIChsZW5ndGggKyAxKSAqIGNoYXJfc2l6ZSk7CisKKyAgICBfUHlfREVDX1JFRlRPVEFMOworICAgIF9QeV9Gb3JnZXRSZWZlcmVuY2UodW5pY29kZSk7CisKKyAgICBuZXdfdW5pY29kZSA9IChQeU9iamVjdCAqKVB5T2JqZWN0X1JFQUxMT0MoKGNoYXIgKil1bmljb2RlLCBuZXdfc2l6ZSk7CisgICAgaWYgKG5ld191bmljb2RlID09IE5VTEwpIHsKKyAgICAgICAgX1B5X05ld1JlZmVyZW5jZSh1bmljb2RlKTsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHVuaWNvZGUgPSBuZXdfdW5pY29kZTsKKyAgICBfUHlfTmV3UmVmZXJlbmNlKHVuaWNvZGUpOworCisgICAgX1B5VW5pY29kZV9MRU5HVEgodW5pY29kZSkgPSBsZW5ndGg7CisgICAgaWYgKHNoYXJlX3dzdHIpIHsKKyAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gUHlVbmljb2RlX0RBVEEodW5pY29kZSk7CisgICAgICAgIGlmICghUHlVbmljb2RlX0lTX0FTQ0lJKHVuaWNvZGUpKQorICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSA9IGxlbmd0aDsKKyAgICB9CisgICAgUHlVbmljb2RlX1dSSVRFKFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpLCBQeVVuaWNvZGVfREFUQSh1bmljb2RlKSwKKyAgICAgICAgICAgICAgICAgICAgbGVuZ3RoLCAwKTsKKyAgICByZXR1cm4gdW5pY29kZTsKK30KKworc3RhdGljIGludAorcmVzaXplX2lucGxhY2UoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3QgbGVuZ3RoKQoreworICAgIHdjaGFyX3QgKndzdHI7CisgICAgUHlfc3NpemVfdCBuZXdfc2l6ZTsKKyAgICBhc3NlcnQoIVB5VW5pY29kZV9JU19DT01QQUNUKHVuaWNvZGUpKTsKKyAgICBhc3NlcnQoUHlfUkVGQ05UKHVuaWNvZGUpID09IDEpOworCisgICAgaWYgKFB5VW5pY29kZV9JU19SRUFEWSh1bmljb2RlKSkgeworICAgICAgICBQeV9zc2l6ZV90IGNoYXJfc2l6ZTsKKyAgICAgICAgaW50IHNoYXJlX3dzdHIsIHNoYXJlX3V0Zjg7CisgICAgICAgIHZvaWQgKmRhdGE7CisKKyAgICAgICAgZGF0YSA9IF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSk7CisgICAgICAgIGNoYXJfc2l6ZSA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgICAgICBzaGFyZV93c3RyID0gX1B5VW5pY29kZV9TSEFSRV9XU1RSKHVuaWNvZGUpOworICAgICAgICBzaGFyZV91dGY4ID0gX1B5VW5pY29kZV9TSEFSRV9VVEY4KHVuaWNvZGUpOworCisgICAgICAgIGlmIChsZW5ndGggPiAoUFlfU1NJWkVfVF9NQVggLyBjaGFyX3NpemUgLSAxKSkgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBuZXdfc2l6ZSA9IChsZW5ndGggKyAxKSAqIGNoYXJfc2l6ZTsKKworICAgICAgICBpZiAoIXNoYXJlX3V0ZjggJiYgX1B5VW5pY29kZV9IQVNfVVRGOF9NRU1PUlkodW5pY29kZSkpCisgICAgICAgIHsKKyAgICAgICAgICAgIFB5T2JqZWN0X0RFTChfUHlVbmljb2RlX1VURjgodW5pY29kZSkpOworICAgICAgICAgICAgX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID0gTlVMTDsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfVVRGOF9MRU5HVEgodW5pY29kZSkgPSAwOworICAgICAgICB9CisKKyAgICAgICAgZGF0YSA9IChQeU9iamVjdCAqKVB5T2JqZWN0X1JFQUxMT0MoZGF0YSwgbmV3X3NpemUpOworICAgICAgICBpZiAoZGF0YSA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkgPSBkYXRhOworICAgICAgICBpZiAoc2hhcmVfd3N0cikgeworICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gZGF0YTsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSkgPSBsZW5ndGg7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHNoYXJlX3V0ZjgpIHsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfVVRGOCh1bmljb2RlKSA9IGRhdGE7CisgICAgICAgICAgICBfUHlVbmljb2RlX1VURjhfTEVOR1RIKHVuaWNvZGUpID0gbGVuZ3RoOworICAgICAgICB9CisgICAgICAgIF9QeVVuaWNvZGVfTEVOR1RIKHVuaWNvZGUpID0gbGVuZ3RoOworICAgICAgICBQeVVuaWNvZGVfV1JJVEUoUHlVbmljb2RlX0tJTkQodW5pY29kZSksIGRhdGEsIGxlbmd0aCwgMCk7CisgICAgICAgIGlmIChzaGFyZV93c3RyIHx8IF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSA9PSBOVUxMKSB7CisgICAgICAgICAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHVuaWNvZGUsIDApKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgfQorICAgIGFzc2VydChfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgIT0gTlVMTCk7CisKKyAgICAvKiBjaGVjayBmb3IgaW50ZWdlciBvdmVyZmxvdyAqLworICAgIGlmIChsZW5ndGggPiBQWV9TU0laRV9UX01BWCAvIHNpemVvZih3Y2hhcl90KSAtIDEpIHsKICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KLSAgICB1bmljb2RlLT5zdHJbbGVuZ3RoXSA9IDA7Ci0gICAgdW5pY29kZS0+bGVuZ3RoID0gbGVuZ3RoOwotCi0gIHJlc2V0OgotICAgIC8qIFJlc2V0IHRoZSBvYmplY3QgY2FjaGVzICovCi0gICAgaWYgKHVuaWNvZGUtPmRlZmVuYykgewotICAgICAgICBQeV9DTEVBUih1bmljb2RlLT5kZWZlbmMpOworICAgIG5ld19zaXplID0gc2l6ZW9mKHdjaGFyX3QpICogKGxlbmd0aCArIDEpOworICAgIHdzdHIgPSAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpOworICAgIHdzdHIgPSBQeU9iamVjdF9SRUFMTE9DKHdzdHIsIG5ld19zaXplKTsKKyAgICBpZiAoIXdzdHIpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KLSAgICB1bmljb2RlLT5oYXNoID0gLTE7Ci0KKyAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSB3c3RyOworICAgIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKVtsZW5ndGhdID0gMDsKKyAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpID0gbGVuZ3RoOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kodW5pY29kZSwgMCkpOwogICAgIHJldHVybiAwOwogfQogCitzdGF0aWMgUHlPYmplY3QqCityZXNpemVfY29weShQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCBsZW5ndGgpCit7CisgICAgUHlfc3NpemVfdCBjb3B5X2xlbmd0aDsKKyAgICBpZiAoX1B5VW5pY29kZV9LSU5EKHVuaWNvZGUpICE9IFB5VW5pY29kZV9XQ0hBUl9LSU5EKSB7CisgICAgICAgIFB5T2JqZWN0ICpjb3B5OworCisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodW5pY29kZSkgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKworICAgICAgICBjb3B5ID0gUHlVbmljb2RlX05ldyhsZW5ndGgsIFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRSh1bmljb2RlKSk7CisgICAgICAgIGlmIChjb3B5ID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKworICAgICAgICBjb3B5X2xlbmd0aCA9IFB5X01JTihsZW5ndGgsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpKTsKKyAgICAgICAgY29weV9jaGFyYWN0ZXJzKGNvcHksIDAsIHVuaWNvZGUsIDAsIGNvcHlfbGVuZ3RoKTsKKyAgICAgICAgcmV0dXJuIGNvcHk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBQeU9iamVjdCAqdzsKKworICAgICAgICB3ID0gKFB5T2JqZWN0KilfUHlVbmljb2RlX05ldyhsZW5ndGgpOworICAgICAgICBpZiAodyA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGNvcHlfbGVuZ3RoID0gX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKTsKKyAgICAgICAgY29weV9sZW5ndGggPSBQeV9NSU4oY29weV9sZW5ndGgsIGxlbmd0aCk7CisgICAgICAgIFB5X1VOSUNPREVfQ09QWShfUHlVbmljb2RlX1dTVFIodyksIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvcHlfbGVuZ3RoKTsKKyAgICAgICAgcmV0dXJuIHc7CisgICAgfQorfQorCiAvKiBXZSBhbGxvY2F0ZSBvbmUgbW9yZSBieXRlIHRvIG1ha2Ugc3VyZSB0aGUgc3RyaW5nIGlzCiAgICBVeDAwMDAgdGVybWluYXRlZDsgc29tZSBjb2RlIChlLmcuIG5ld19pZGVudGlmaWVyKQogICAgcmVsaWVzIG9uIHRoYXQuCkBAIC0zMTEsNTUgKzc5OCw0NyBAQAogCiAqLwogCi1zdGF0aWMKLVB5VW5pY29kZU9iamVjdCAqX1B5VW5pY29kZV9OZXcoUHlfc3NpemVfdCBsZW5ndGgpCisjaWZkZWYgUHlfREVCVUcKK3N0YXRpYyBpbnQgdW5pY29kZV9vbGRfbmV3X2NhbGxzID0gMDsKKyNlbmRpZgorCitzdGF0aWMgUHlVbmljb2RlT2JqZWN0ICoKK19QeVVuaWNvZGVfTmV3KFB5X3NzaXplX3QgbGVuZ3RoKQogewogICAgIHJlZ2lzdGVyIFB5VW5pY29kZU9iamVjdCAqdW5pY29kZTsKKyAgICBzaXplX3QgbmV3X3NpemU7CiAKICAgICAvKiBPcHRpbWl6YXRpb24gZm9yIGVtcHR5IHN0cmluZ3MgKi8KICAgICBpZiAobGVuZ3RoID09IDAgJiYgdW5pY29kZV9lbXB0eSAhPSBOVUxMKSB7CiAgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKLSAgICAgICAgcmV0dXJuIHVuaWNvZGVfZW1wdHk7CisgICAgICAgIHJldHVybiAoUHlVbmljb2RlT2JqZWN0Kil1bmljb2RlX2VtcHR5OwogICAgIH0KIAogICAgIC8qIEVuc3VyZSB3ZSB3b24ndCBvdmVyZmxvdyB0aGUgc2l6ZS4gKi8KICAgICBpZiAobGVuZ3RoID4gKChQWV9TU0laRV9UX01BWCAvIHNpemVvZihQeV9VTklDT0RFKSkgLSAxKSkgewogICAgICAgICByZXR1cm4gKFB5VW5pY29kZU9iamVjdCAqKVB5RXJyX05vTWVtb3J5KCk7CiAgICAgfQotCi0gICAgLyogVW5pY29kZSBmcmVlbGlzdCAmIG1lbW9yeSBhbGxvY2F0aW9uICovCi0gICAgaWYgKGZyZWVfbGlzdCkgewotICAgICAgICB1bmljb2RlID0gZnJlZV9saXN0OwotICAgICAgICBmcmVlX2xpc3QgPSAqKFB5VW5pY29kZU9iamVjdCAqKil1bmljb2RlOwotICAgICAgICBudW1mcmVlLS07Ci0gICAgICAgIGlmICh1bmljb2RlLT5zdHIpIHsKLSAgICAgICAgICAgIC8qIEtlZXAtQWxpdmUgb3B0aW1pemF0aW9uOiB3ZSBvbmx5IHVwc2l6ZSB0aGUgYnVmZmVyLAotICAgICAgICAgICAgICAgbmV2ZXIgZG93bnNpemUgaXQuICovCi0gICAgICAgICAgICBpZiAoKHVuaWNvZGUtPmxlbmd0aCA8IGxlbmd0aCkgJiYKLSAgICAgICAgICAgICAgICB1bmljb2RlX3Jlc2l6ZSh1bmljb2RlLCBsZW5ndGgpIDwgMCkgewotICAgICAgICAgICAgICAgIFB5T2JqZWN0X0RFTCh1bmljb2RlLT5zdHIpOwotICAgICAgICAgICAgICAgIHVuaWNvZGUtPnN0ciA9IE5VTEw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBzaXplX3QgbmV3X3NpemUgPSBzaXplb2YoUHlfVU5JQ09ERSkgKiAoKHNpemVfdClsZW5ndGggKyAxKTsKLSAgICAgICAgICAgIHVuaWNvZGUtPnN0ciA9IChQeV9VTklDT0RFKikgUHlPYmplY3RfTUFMTE9DKG5ld19zaXplKTsKLSAgICAgICAgfQotICAgICAgICBQeU9iamVjdF9JTklUKHVuaWNvZGUsICZQeVVuaWNvZGVfVHlwZSk7Ci0gICAgfQotICAgIGVsc2UgewotICAgICAgICBzaXplX3QgbmV3X3NpemU7Ci0gICAgICAgIHVuaWNvZGUgPSBQeU9iamVjdF9OZXcoUHlVbmljb2RlT2JqZWN0LCAmUHlVbmljb2RlX1R5cGUpOwotICAgICAgICBpZiAodW5pY29kZSA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIG5ld19zaXplID0gc2l6ZW9mKFB5X1VOSUNPREUpICogKChzaXplX3QpbGVuZ3RoICsgMSk7Ci0gICAgICAgIHVuaWNvZGUtPnN0ciA9IChQeV9VTklDT0RFKikgUHlPYmplY3RfTUFMTE9DKG5ld19zaXplKTsKKyAgICBpZiAobGVuZ3RoIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfU3lzdGVtRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiTmVnYXRpdmUgc2l6ZSBwYXNzZWQgdG8gX1B5VW5pY29kZV9OZXciKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgaWYgKCF1bmljb2RlLT5zdHIpIHsKKyNpZmRlZiBQeV9ERUJVRworICAgICsrdW5pY29kZV9vbGRfbmV3X2NhbGxzOworI2VuZGlmCisKKyAgICB1bmljb2RlID0gUHlPYmplY3RfTmV3KFB5VW5pY29kZU9iamVjdCwgJlB5VW5pY29kZV9UeXBlKTsKKyAgICBpZiAodW5pY29kZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBuZXdfc2l6ZSA9IHNpemVvZihQeV9VTklDT0RFKSAqICgoc2l6ZV90KWxlbmd0aCArIDEpOworICAgIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSA9IChQeV9VTklDT0RFKikgUHlPYmplY3RfTUFMTE9DKG5ld19zaXplKTsKKyAgICBpZiAoIV9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSkgeworICAgICAgICBQeV9ERUNSRUYodW5pY29kZSk7CiAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorCiAgICAgLyogSW5pdGlhbGl6ZSB0aGUgZmlyc3QgZWxlbWVudCB0byBndWFyZCBhZ2FpbnN0IGNhc2VzIHdoZXJlCiAgICAgICogdGhlIGNhbGxlciBmYWlscyBiZWZvcmUgaW5pdGlhbGl6aW5nIHN0ciAtLSB1bmljb2RlX3Jlc2l6ZSgpCiAgICAgICogcmVhZHMgc3RyWzBdLCBhbmQgdGhlIEtlZXAtQWxpdmUgb3B0aW1pemF0aW9uIGNhbiBrZWVwIG1lbW9yeQpAQCAtMzY3LDI0ICs4NDYsNjM1IEBACiAgICAgICogV2UgZG9uJ3Qgd2FudCB1bmljb2RlX3Jlc2l6ZSB0byByZWFkIHVuaW5pdGlhbGl6ZWQgbWVtb3J5IGluCiAgICAgICogdGhhdCBjYXNlLgogICAgICAqLwotICAgIHVuaWNvZGUtPnN0clswXSA9IDA7Ci0gICAgdW5pY29kZS0+c3RyW2xlbmd0aF0gPSAwOwotICAgIHVuaWNvZGUtPmxlbmd0aCA9IGxlbmd0aDsKLSAgICB1bmljb2RlLT5oYXNoID0gLTE7Ci0gICAgdW5pY29kZS0+c3RhdGUgPSAwOwotICAgIHVuaWNvZGUtPmRlZmVuYyA9IE5VTEw7CisgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpWzBdID0gMDsKKyAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSlbbGVuZ3RoXSA9IDA7CisgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSA9IGxlbmd0aDsKKyAgICBfUHlVbmljb2RlX0hBU0godW5pY29kZSkgPSAtMTsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmludGVybmVkID0gMDsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmtpbmQgPSAwOworICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkuY29tcGFjdCA9IDA7CisgICAgX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5yZWFkeSA9IDA7CisgICAgX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5hc2NpaSA9IDA7CisgICAgX1B5VW5pY29kZV9EQVRBX0FOWSh1bmljb2RlKSA9IE5VTEw7CisgICAgX1B5VW5pY29kZV9MRU5HVEgodW5pY29kZSkgPSAwOworICAgIF9QeVVuaWNvZGVfVVRGOCh1bmljb2RlKSA9IE5VTEw7CisgICAgX1B5VW5pY29kZV9VVEY4X0xFTkdUSCh1bmljb2RlKSA9IDA7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSgoUHlPYmplY3QgKil1bmljb2RlLCAwKSk7CiAgICAgcmV0dXJuIHVuaWNvZGU7Ci0KLSAgb25FcnJvcjoKLSAgICAvKiBYWFggVU5SRUYvTkVXUkVGIGludGVyZmFjZSBzaG91bGQgYmUgbW9yZSBzeW1tZXRyaWNhbCAqLwotICAgIF9QeV9ERUNfUkVGVE9UQUw7Ci0gICAgX1B5X0ZvcmdldFJlZmVyZW5jZSgoUHlPYmplY3QgKil1bmljb2RlKTsKLSAgICBQeU9iamVjdF9EZWwodW5pY29kZSk7Ci0gICAgcmV0dXJuIE5VTEw7CiB9CiAKLXN0YXRpYwotdm9pZCB1bmljb2RlX2RlYWxsb2MocmVnaXN0ZXIgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlKQorc3RhdGljIGNvbnN0IGNoYXIqCit1bmljb2RlX2tpbmRfbmFtZShQeU9iamVjdCAqdW5pY29kZSkKK3sKKyAgICAvKiBkb24ndCBjaGVjayBjb25zaXN0ZW5jeTogdW5pY29kZV9raW5kX25hbWUoKSBpcyBjYWxsZWQgZnJvbQorICAgICAgIF9QeVVuaWNvZGVfRHVtcCgpICovCisgICAgaWYgKCFQeVVuaWNvZGVfSVNfQ09NUEFDVCh1bmljb2RlKSkKKyAgICB7CisgICAgICAgIGlmICghUHlVbmljb2RlX0lTX1JFQURZKHVuaWNvZGUpKQorICAgICAgICAgICAgcmV0dXJuICJ3c3RyIjsKKyAgICAgICAgc3dpdGNoIChQeVVuaWNvZGVfS0lORCh1bmljb2RlKSkKKyAgICAgICAgeworICAgICAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSSh1bmljb2RlKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gImxlZ2FjeSBhc2NpaSI7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmV0dXJuICJsZWdhY3kgbGF0aW4xIjsKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgICAgIHJldHVybiAibGVnYWN5IFVDUzIiOworICAgICAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICAgICAgcmV0dXJuICJsZWdhY3kgVUNTNCI7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICByZXR1cm4gIjxsZWdhY3kgaW52YWxpZCBraW5kPiI7CisgICAgICAgIH0KKyAgICB9CisgICAgYXNzZXJ0KFB5VW5pY29kZV9JU19SRUFEWSh1bmljb2RlKSk7CisgICAgc3dpdGNoIChQeVVuaWNvZGVfS0lORCh1bmljb2RlKSkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgIGlmIChQeVVuaWNvZGVfSVNfQVNDSUkodW5pY29kZSkpCisgICAgICAgICAgICByZXR1cm4gImFzY2lpIjsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmV0dXJuICJsYXRpbjEiOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIHJldHVybiAiVUNTMiI7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuICJVQ1M0IjsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gIjxpbnZhbGlkIGNvbXBhY3Qga2luZD4iOworICAgIH0KK30KKworI2lmZGVmIFB5X0RFQlVHCitzdGF0aWMgaW50IHVuaWNvZGVfbmV3X25ld19jYWxscyA9IDA7CisKKy8qIEZ1bmN0aW9ucyB3cmFwcGluZyBtYWNyb3MgZm9yIHVzZSBpbiBkZWJ1Z2dlciAqLworY2hhciAqX1B5VW5pY29kZV91dGY4KHZvaWQgKnVuaWNvZGUpeworICAgIHJldHVybiBQeVVuaWNvZGVfVVRGOCh1bmljb2RlKTsKK30KKwordm9pZCAqX1B5VW5pY29kZV9jb21wYWN0X2RhdGEodm9pZCAqdW5pY29kZSkgeworICAgIHJldHVybiBfUHlVbmljb2RlX0NPTVBBQ1RfREFUQSh1bmljb2RlKTsKK30KK3ZvaWQgKl9QeVVuaWNvZGVfZGF0YSh2b2lkICp1bmljb2RlKXsKKyAgICBwcmludGYoIm9iaiAlcFxuIiwgdW5pY29kZSk7CisgICAgcHJpbnRmKCJjb21wYWN0ICVkXG4iLCBQeVVuaWNvZGVfSVNfQ09NUEFDVCh1bmljb2RlKSk7CisgICAgcHJpbnRmKCJjb21wYWN0IGFzY2lpICVkXG4iLCBQeVVuaWNvZGVfSVNfQ09NUEFDVF9BU0NJSSh1bmljb2RlKSk7CisgICAgcHJpbnRmKCJhc2NpaSBvcCAlcFxuIiwgKCh2b2lkKikoKFB5QVNDSUlPYmplY3QqKSh1bmljb2RlKSArIDEpKSk7CisgICAgcHJpbnRmKCJjb21wYWN0IG9wICVwXG4iLCAoKHZvaWQqKSgoUHlDb21wYWN0VW5pY29kZU9iamVjdCopKHVuaWNvZGUpICsgMSkpKTsKKyAgICBwcmludGYoImNvbXBhY3QgZGF0YSAlcFxuIiwgX1B5VW5pY29kZV9DT01QQUNUX0RBVEEodW5pY29kZSkpOworICAgIHJldHVybiBQeVVuaWNvZGVfREFUQSh1bmljb2RlKTsKK30KKwordm9pZAorX1B5VW5pY29kZV9EdW1wKFB5T2JqZWN0ICpvcCkKK3sKKyAgICBQeUFTQ0lJT2JqZWN0ICphc2NpaSA9IChQeUFTQ0lJT2JqZWN0ICopb3A7CisgICAgUHlDb21wYWN0VW5pY29kZU9iamVjdCAqY29tcGFjdCA9IChQeUNvbXBhY3RVbmljb2RlT2JqZWN0ICopb3A7CisgICAgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlID0gKFB5VW5pY29kZU9iamVjdCAqKW9wOworICAgIHZvaWQgKmRhdGE7CisKKyAgICBpZiAoYXNjaWktPnN0YXRlLmNvbXBhY3QpCisgICAgeworICAgICAgICBpZiAoYXNjaWktPnN0YXRlLmFzY2lpKQorICAgICAgICAgICAgZGF0YSA9IChhc2NpaSArIDEpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBkYXRhID0gKGNvbXBhY3QgKyAxKTsKKyAgICB9CisgICAgZWxzZQorICAgICAgICBkYXRhID0gdW5pY29kZS0+ZGF0YS5hbnk7CisgICAgcHJpbnRmKCIlczogbGVuPSV6dSwgIix1bmljb2RlX2tpbmRfbmFtZShvcCksIGFzY2lpLT5sZW5ndGgpOworCisgICAgaWYgKGFzY2lpLT53c3RyID09IGRhdGEpCisgICAgICAgIHByaW50Zigic2hhcmVkICIpOworICAgIHByaW50Zigid3N0cj0lcCIsIGFzY2lpLT53c3RyKTsKKworICAgIGlmICghKGFzY2lpLT5zdGF0ZS5hc2NpaSA9PSAxICYmIGFzY2lpLT5zdGF0ZS5jb21wYWN0ID09IDEpKSB7CisgICAgICAgIHByaW50ZigiICglenUpLCAiLCBjb21wYWN0LT53c3RyX2xlbmd0aCk7CisgICAgICAgIGlmICghYXNjaWktPnN0YXRlLmNvbXBhY3QgJiYgY29tcGFjdC0+dXRmOCA9PSB1bmljb2RlLT5kYXRhLmFueSkKKyAgICAgICAgICAgIHByaW50Zigic2hhcmVkICIpOworICAgICAgICBwcmludGYoInV0Zjg9JXAgKCV6dSkiLCBjb21wYWN0LT51dGY4LCBjb21wYWN0LT51dGY4X2xlbmd0aCk7CisgICAgfQorICAgIHByaW50ZigiLCBkYXRhPSVwXG4iLCBkYXRhKTsKK30KKyNlbmRpZgorCitQeU9iamVjdCAqCitQeVVuaWNvZGVfTmV3KFB5X3NzaXplX3Qgc2l6ZSwgUHlfVUNTNCBtYXhjaGFyKQoreworICAgIFB5T2JqZWN0ICpvYmo7CisgICAgUHlDb21wYWN0VW5pY29kZU9iamVjdCAqdW5pY29kZTsKKyAgICB2b2lkICpkYXRhOworICAgIGludCBraW5kX3N0YXRlOworICAgIGludCBpc19zaGFyaW5nLCBpc19hc2NpaTsKKyAgICBQeV9zc2l6ZV90IGNoYXJfc2l6ZTsKKyAgICBQeV9zc2l6ZV90IHN0cnVjdF9zaXplOworCisgICAgLyogT3B0aW1pemF0aW9uIGZvciBlbXB0eSBzdHJpbmdzICovCisgICAgaWYgKHNpemUgPT0gMCAmJiB1bmljb2RlX2VtcHR5ICE9IE5VTEwpIHsKKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICByZXR1cm4gdW5pY29kZV9lbXB0eTsKKyAgICB9CisKKyNpZmRlZiBQeV9ERUJVRworICAgICsrdW5pY29kZV9uZXdfbmV3X2NhbGxzOworI2VuZGlmCisKKyAgICBpc19hc2NpaSA9IDA7CisgICAgaXNfc2hhcmluZyA9IDA7CisgICAgc3RydWN0X3NpemUgPSBzaXplb2YoUHlDb21wYWN0VW5pY29kZU9iamVjdCk7CisgICAgaWYgKG1heGNoYXIgPCAxMjgpIHsKKyAgICAgICAga2luZF9zdGF0ZSA9IFB5VW5pY29kZV8xQllURV9LSU5EOworICAgICAgICBjaGFyX3NpemUgPSAxOworICAgICAgICBpc19hc2NpaSA9IDE7CisgICAgICAgIHN0cnVjdF9zaXplID0gc2l6ZW9mKFB5QVNDSUlPYmplY3QpOworICAgIH0KKyAgICBlbHNlIGlmIChtYXhjaGFyIDwgMjU2KSB7CisgICAgICAgIGtpbmRfc3RhdGUgPSBQeVVuaWNvZGVfMUJZVEVfS0lORDsKKyAgICAgICAgY2hhcl9zaXplID0gMTsKKyAgICB9CisgICAgZWxzZSBpZiAobWF4Y2hhciA8IDY1NTM2KSB7CisgICAgICAgIGtpbmRfc3RhdGUgPSBQeVVuaWNvZGVfMkJZVEVfS0lORDsKKyAgICAgICAgY2hhcl9zaXplID0gMjsKKyAgICAgICAgaWYgKHNpemVvZih3Y2hhcl90KSA9PSAyKQorICAgICAgICAgICAgaXNfc2hhcmluZyA9IDE7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBraW5kX3N0YXRlID0gUHlVbmljb2RlXzRCWVRFX0tJTkQ7CisgICAgICAgIGNoYXJfc2l6ZSA9IDQ7CisgICAgICAgIGlmIChzaXplb2Yod2NoYXJfdCkgPT0gNCkKKyAgICAgICAgICAgIGlzX3NoYXJpbmcgPSAxOworICAgIH0KKworICAgIC8qIEVuc3VyZSB3ZSB3b24ndCBvdmVyZmxvdyB0aGUgc2l6ZS4gKi8KKyAgICBpZiAoc2l6ZSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1N5c3RlbUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIk5lZ2F0aXZlIHNpemUgcGFzc2VkIHRvIFB5VW5pY29kZV9OZXciKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmIChzaXplID4gKChQWV9TU0laRV9UX01BWCAtIHN0cnVjdF9zaXplKSAvIGNoYXJfc2l6ZSAtIDEpKQorICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKworICAgIC8qIER1cGxpY2F0ZWQgYWxsb2NhdGlvbiBjb2RlIGZyb20gX1B5T2JqZWN0X05ldygpIGluc3RlYWQgb2YgYSBjYWxsIHRvCisgICAgICogUHlPYmplY3RfTmV3KCkgc28gd2UgYXJlIGFibGUgdG8gYWxsb2NhdGUgc3BhY2UgZm9yIHRoZSBvYmplY3QgYW5kCisgICAgICogaXQncyBkYXRhIGJ1ZmZlci4KKyAgICAgKi8KKyAgICBvYmogPSAoUHlPYmplY3QgKikgUHlPYmplY3RfTUFMTE9DKHN0cnVjdF9zaXplICsgKHNpemUgKyAxKSAqIGNoYXJfc2l6ZSk7CisgICAgaWYgKG9iaiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKyAgICBvYmogPSBQeU9iamVjdF9JTklUKG9iaiwgJlB5VW5pY29kZV9UeXBlKTsKKyAgICBpZiAob2JqID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgdW5pY29kZSA9IChQeUNvbXBhY3RVbmljb2RlT2JqZWN0ICopb2JqOworICAgIGlmIChpc19hc2NpaSkKKyAgICAgICAgZGF0YSA9ICgoUHlBU0NJSU9iamVjdCopb2JqKSArIDE7CisgICAgZWxzZQorICAgICAgICBkYXRhID0gdW5pY29kZSArIDE7CisgICAgX1B5VW5pY29kZV9MRU5HVEgodW5pY29kZSkgPSBzaXplOworICAgIF9QeVVuaWNvZGVfSEFTSCh1bmljb2RlKSA9IC0xOworICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkuaW50ZXJuZWQgPSAwOworICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkua2luZCA9IGtpbmRfc3RhdGU7CisgICAgX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5jb21wYWN0ID0gMTsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLnJlYWR5ID0gMTsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmFzY2lpID0gaXNfYXNjaWk7CisgICAgaWYgKGlzX2FzY2lpKSB7CisgICAgICAgICgoY2hhciopZGF0YSlbc2l6ZV0gPSAwOworICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSBOVUxMOworICAgIH0KKyAgICBlbHNlIGlmIChraW5kX3N0YXRlID09IFB5VW5pY29kZV8xQllURV9LSU5EKSB7CisgICAgICAgICgoY2hhciopZGF0YSlbc2l6ZV0gPSAwOworICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSBOVUxMOworICAgICAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpID0gMDsKKyAgICAgICAgdW5pY29kZS0+dXRmOCA9IE5VTEw7CisgICAgICAgIHVuaWNvZGUtPnV0ZjhfbGVuZ3RoID0gMDsKKyAgICAgICAgfQorICAgIGVsc2UgeworICAgICAgICB1bmljb2RlLT51dGY4ID0gTlVMTDsKKyAgICAgICAgdW5pY29kZS0+dXRmOF9sZW5ndGggPSAwOworICAgICAgICBpZiAoa2luZF9zdGF0ZSA9PSBQeVVuaWNvZGVfMkJZVEVfS0lORCkKKyAgICAgICAgICAgICgoUHlfVUNTMiopZGF0YSlbc2l6ZV0gPSAwOworICAgICAgICBlbHNlIC8qIGtpbmRfc3RhdGUgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQgKi8KKyAgICAgICAgICAgICgoUHlfVUNTNCopZGF0YSlbc2l6ZV0gPSAwOworICAgICAgICBpZiAoaXNfc2hhcmluZykgeworICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSA9IHNpemU7CisgICAgICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSAod2NoYXJfdCAqKWRhdGE7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpID0gMDsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSA9IE5VTEw7CisgICAgICAgIH0KKyAgICB9CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSgoUHlPYmplY3QqKXVuaWNvZGUsIDApKTsKKyAgICByZXR1cm4gb2JqOworfQorCisjaWYgU0laRU9GX1dDSEFSX1QgPT0gMgorLyogSGVscGVyIGZ1bmN0aW9uIHRvIGNvbnZlcnQgYSAxNi1iaXRzIHdjaGFyX3QgcmVwcmVzZW50YXRpb24gdG8gVUNTNCwgdGhpcworICAgd2lsbCBkZWNvZGUgc3Vycm9nYXRlIHBhaXJzLCB0aGUgb3RoZXIgY29udmVyc2lvbnMgYXJlIGltcGxlbWVudGVkIGFzIG1hY3JvcworICAgZm9yIGVmZmljaWVuY3kuCisKKyAgIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0IHVuaWNvZGUgY2FuIGhvbGQgb25lIG1vcmUgY29kZSBwb2ludCB0aGFuIHdzdHIKKyAgIGNoYXJhY3RlcnMgZm9yIGEgdGVybWluYXRpbmcgbnVsbCBjaGFyYWN0ZXIuICovCitzdGF0aWMgdm9pZAordW5pY29kZV9jb252ZXJ0X3djaGFyX3RvX3VjczQoY29uc3Qgd2NoYXJfdCAqYmVnaW4sIGNvbnN0IHdjaGFyX3QgKmVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIGNvbnN0IHdjaGFyX3QgKml0ZXI7CisgICAgUHlfVUNTNCAqdWNzNF9vdXQ7CisKKyAgICBhc3NlcnQodW5pY29kZSAhPSBOVUxMKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyh1bmljb2RlKSk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfS0lORCh1bmljb2RlKSA9PSBQeVVuaWNvZGVfNEJZVEVfS0lORCk7CisgICAgdWNzNF9vdXQgPSBQeVVuaWNvZGVfNEJZVEVfREFUQSh1bmljb2RlKTsKKworICAgIGZvciAoaXRlciA9IGJlZ2luOyBpdGVyIDwgZW5kOyApIHsKKyAgICAgICAgYXNzZXJ0KHVjczRfb3V0IDwgKFB5VW5pY29kZV80QllURV9EQVRBKHVuaWNvZGUpICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIF9QeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKSkpOworICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU19ISUdIX1NVUlJPR0FURShpdGVyWzBdKQorICAgICAgICAgICAgJiYgKGl0ZXIrMSkgPCBlbmQKKyAgICAgICAgICAgICYmIFB5X1VOSUNPREVfSVNfTE9XX1NVUlJPR0FURShpdGVyWzFdKSkKKyAgICAgICAgeworICAgICAgICAgICAgKnVjczRfb3V0KysgPSBQeV9VTklDT0RFX0pPSU5fU1VSUk9HQVRFUyhpdGVyWzBdLCBpdGVyWzFdKTsKKyAgICAgICAgICAgIGl0ZXIgKz0gMjsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICp1Y3M0X291dCsrID0gKml0ZXI7CisgICAgICAgICAgICBpdGVyKys7CisgICAgICAgIH0KKyAgICB9CisgICAgYXNzZXJ0KHVjczRfb3V0ID09IChQeVVuaWNvZGVfNEJZVEVfREFUQSh1bmljb2RlKSArCisgICAgICAgICAgICAgICAgICAgICAgICBfUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkpKTsKKworfQorI2VuZGlmCisKK3N0YXRpYyBpbnQKK3VuaWNvZGVfY2hlY2tfbW9kaWZpYWJsZShQeU9iamVjdCAqdW5pY29kZSkKK3sKKyAgICBpZiAoIXVuaWNvZGVfbW9kaWZpYWJsZSh1bmljb2RlKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfU3lzdGVtRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiQ2Fubm90IG1vZGlmeSBhIHN0cmluZyBjdXJyZW50bHkgdXNlZCIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50CitfY29weV9jaGFyYWN0ZXJzKFB5T2JqZWN0ICp0bywgUHlfc3NpemVfdCB0b19zdGFydCwKKyAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmZyb20sIFB5X3NzaXplX3QgZnJvbV9zdGFydCwKKyAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBob3dfbWFueSwgaW50IGNoZWNrX21heGNoYXIpCit7CisgICAgdW5zaWduZWQgaW50IGZyb21fa2luZCwgdG9fa2luZDsKKyAgICB2b2lkICpmcm9tX2RhdGEsICp0b19kYXRhOworICAgIGludCBmYXN0OworCisgICAgYXNzZXJ0KFB5VW5pY29kZV9DaGVjayhmcm9tKSk7CisgICAgYXNzZXJ0KFB5VW5pY29kZV9DaGVjayh0bykpOworICAgIGFzc2VydChQeVVuaWNvZGVfSVNfUkVBRFkoZnJvbSkpOworICAgIGFzc2VydChQeVVuaWNvZGVfSVNfUkVBRFkodG8pKTsKKworICAgIGFzc2VydChQeVVuaWNvZGVfR0VUX0xFTkdUSChmcm9tKSA+PSBob3dfbWFueSk7CisgICAgYXNzZXJ0KHRvX3N0YXJ0ICsgaG93X21hbnkgPD0gUHlVbmljb2RlX0dFVF9MRU5HVEgodG8pKTsKKyAgICBhc3NlcnQoMCA8PSBob3dfbWFueSk7CisKKyAgICBpZiAoaG93X21hbnkgPT0gMCkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBmcm9tX2tpbmQgPSBQeVVuaWNvZGVfS0lORChmcm9tKTsKKyAgICBmcm9tX2RhdGEgPSBQeVVuaWNvZGVfREFUQShmcm9tKTsKKyAgICB0b19raW5kID0gUHlVbmljb2RlX0tJTkQodG8pOworICAgIHRvX2RhdGEgPSBQeVVuaWNvZGVfREFUQSh0byk7CisKKyNpZmRlZiBQeV9ERUJVRworICAgIGlmICghY2hlY2tfbWF4Y2hhcgorICAgICAgICAmJiAoZnJvbV9raW5kID4gdG9fa2luZAorICAgICAgICAgICAgfHwgKCFQeVVuaWNvZGVfSVNfQVNDSUkoZnJvbSkgJiYgUHlVbmljb2RlX0lTX0FTQ0lJKHRvKSkpKQorICAgIHsKKyAgICAgICAgY29uc3QgUHlfVUNTNCB0b19tYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHRvKTsKKyAgICAgICAgUHlfVUNTNCBjaDsKKyAgICAgICAgUHlfc3NpemVfdCBpOworICAgICAgICBmb3IgKGk9MDsgaSA8IGhvd19tYW55OyBpKyspIHsKKyAgICAgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQUQoZnJvbV9raW5kLCBmcm9tX2RhdGEsIGZyb21fc3RhcnQgKyBpKTsKKyAgICAgICAgICAgIGFzc2VydChjaCA8PSB0b19tYXhjaGFyKTsKKyAgICAgICAgfQorICAgIH0KKyNlbmRpZgorICAgIGZhc3QgPSAoZnJvbV9raW5kID09IHRvX2tpbmQpOworICAgIGlmIChjaGVja19tYXhjaGFyCisgICAgICAgICYmICghUHlVbmljb2RlX0lTX0FTQ0lJKGZyb20pICYmIFB5VW5pY29kZV9JU19BU0NJSSh0bykpKQorICAgIHsKKyAgICAgICAgLyogZGVueSBsYXRpbjEgPT4gYXNjaWkgKi8KKyAgICAgICAgZmFzdCA9IDA7CisgICAgfQorCisgICAgaWYgKGZhc3QpIHsKKyAgICAgICAgUHlfTUVNQ1BZKChjaGFyKil0b19kYXRhICsgdG9fa2luZCAqIHRvX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgKGNoYXIqKWZyb21fZGF0YSArIGZyb21fa2luZCAqIGZyb21fc3RhcnQsCisgICAgICAgICAgICAgICAgICB0b19raW5kICogaG93X21hbnkpOworICAgIH0KKyAgICBlbHNlIGlmIChmcm9tX2tpbmQgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQKKyAgICAgICAgICAgICAmJiB0b19raW5kID09IFB5VW5pY29kZV8yQllURV9LSU5EKQorICAgIHsKKyAgICAgICAgX1B5VW5pY29kZV9DT05WRVJUX0JZVEVTKAorICAgICAgICAgICAgUHlfVUNTMSwgUHlfVUNTMiwKKyAgICAgICAgICAgIFB5VW5pY29kZV8xQllURV9EQVRBKGZyb20pICsgZnJvbV9zdGFydCwKKyAgICAgICAgICAgIFB5VW5pY29kZV8xQllURV9EQVRBKGZyb20pICsgZnJvbV9zdGFydCArIGhvd19tYW55LAorICAgICAgICAgICAgUHlVbmljb2RlXzJCWVRFX0RBVEEodG8pICsgdG9fc3RhcnQKKyAgICAgICAgICAgICk7CisgICAgfQorICAgIGVsc2UgaWYgKGZyb21fa2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORAorICAgICAgICAgICAgICYmIHRvX2tpbmQgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpCisgICAgeworICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoCisgICAgICAgICAgICBQeV9VQ1MxLCBQeV9VQ1M0LAorICAgICAgICAgICAgUHlVbmljb2RlXzFCWVRFX0RBVEEoZnJvbSkgKyBmcm9tX3N0YXJ0LAorICAgICAgICAgICAgUHlVbmljb2RlXzFCWVRFX0RBVEEoZnJvbSkgKyBmcm9tX3N0YXJ0ICsgaG93X21hbnksCisgICAgICAgICAgICBQeVVuaWNvZGVfNEJZVEVfREFUQSh0bykgKyB0b19zdGFydAorICAgICAgICAgICAgKTsKKyAgICB9CisgICAgZWxzZSBpZiAoZnJvbV9raW5kID09IFB5VW5pY29kZV8yQllURV9LSU5ECisgICAgICAgICAgICAgJiYgdG9fa2luZCA9PSBQeVVuaWNvZGVfNEJZVEVfS0lORCkKKyAgICB7CisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUygKKyAgICAgICAgICAgIFB5X1VDUzIsIFB5X1VDUzQsCisgICAgICAgICAgICBQeVVuaWNvZGVfMkJZVEVfREFUQShmcm9tKSArIGZyb21fc3RhcnQsCisgICAgICAgICAgICBQeVVuaWNvZGVfMkJZVEVfREFUQShmcm9tKSArIGZyb21fc3RhcnQgKyBob3dfbWFueSwKKyAgICAgICAgICAgIFB5VW5pY29kZV80QllURV9EQVRBKHRvKSArIHRvX3N0YXJ0CisgICAgICAgICAgICApOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgLyogY2hlY2sgaWYgbWF4X2NoYXIoZnJvbSBzdWJzdHJpbmcpIDw9IG1heF9jaGFyKHRvKSAqLworICAgICAgICBpZiAoZnJvbV9raW5kID4gdG9fa2luZAorICAgICAgICAgICAgICAgIC8qIGxhdGluMSA9PiBhc2NpaSAqLworICAgICAgICAgICAgfHwgKCFQeVVuaWNvZGVfSVNfQVNDSUkoZnJvbSkgJiYgUHlVbmljb2RlX0lTX0FTQ0lJKHRvKSkpCisgICAgICAgIHsKKyAgICAgICAgICAgIC8qIHNsb3cgcGF0aCB0byBjaGVjayBmb3IgY2hhcmFjdGVyIG92ZXJmbG93ICovCisgICAgICAgICAgICBjb25zdCBQeV9VQ1M0IHRvX21heGNoYXIgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUodG8pOworICAgICAgICAgICAgUHlfVUNTNCBjaDsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKKworI2lmZGVmIFB5X0RFQlVHCisgICAgICAgICAgICBmb3IgKGk9MDsgaSA8IGhvd19tYW55OyBpKyspIHsKKyAgICAgICAgICAgICAgICBjaCA9IFB5VW5pY29kZV9SRUFEKGZyb21fa2luZCwgZnJvbV9kYXRhLCBmcm9tX3N0YXJ0ICsgaSk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGNoIDw9IHRvX21heGNoYXIpOworICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURSh0b19raW5kLCB0b19kYXRhLCB0b19zdGFydCArIGksIGNoKTsKKyAgICAgICAgICAgIH0KKyNlbHNlCisgICAgICAgICAgICBpZiAoIWNoZWNrX21heGNoYXIpIHsKKyAgICAgICAgICAgICAgICBmb3IgKGk9MDsgaSA8IGhvd19tYW55OyBpKyspIHsKKyAgICAgICAgICAgICAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRChmcm9tX2tpbmQsIGZyb21fZGF0YSwgZnJvbV9zdGFydCArIGkpOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUodG9fa2luZCwgdG9fZGF0YSwgdG9fc3RhcnQgKyBpLCBjaCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgZm9yIChpPTA7IGkgPCBob3dfbWFueTsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQUQoZnJvbV9raW5kLCBmcm9tX2RhdGEsIGZyb21fc3RhcnQgKyBpKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGNoID4gdG9fbWF4Y2hhcikKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUodG9fa2luZCwgdG9fZGF0YSwgdG9fc3RhcnQgKyBpLCBjaCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorI2VuZGlmCisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBhc3NlcnQoMCAmJiAiaW5jb25zaXN0ZW50IHN0YXRlIik7CisgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQKK2NvcHlfY2hhcmFjdGVycyhQeU9iamVjdCAqdG8sIFB5X3NzaXplX3QgdG9fc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmcm9tLCBQeV9zc2l6ZV90IGZyb21fc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaG93X21hbnkpCit7CisgICAgKHZvaWQpX2NvcHlfY2hhcmFjdGVycyh0bywgdG9fc3RhcnQsIGZyb20sIGZyb21fc3RhcnQsIGhvd19tYW55LCAwKTsKK30KKworUHlfc3NpemVfdAorUHlVbmljb2RlX0NvcHlDaGFyYWN0ZXJzKFB5T2JqZWN0ICp0bywgUHlfc3NpemVfdCB0b19zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZnJvbSwgUHlfc3NpemVfdCBmcm9tX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaG93X21hbnkpCit7CisgICAgaW50IGVycjsKKworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKGZyb20pIHx8ICFQeVVuaWNvZGVfQ2hlY2sodG8pKSB7CisgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShmcm9tKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodG8pID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBob3dfbWFueSA9IFB5X01JTihQeVVuaWNvZGVfR0VUX0xFTkdUSChmcm9tKSwgaG93X21hbnkpOworICAgIGlmICh0b19zdGFydCArIGhvd19tYW55ID4gUHlVbmljb2RlX0dFVF9MRU5HVEgodG8pKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19TeXN0ZW1FcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJDYW5ub3Qgd3JpdGUgJXppIGNoYXJhY3RlcnMgYXQgJXppICIKKyAgICAgICAgICAgICAgICAgICAgICJpbiBhIHN0cmluZyBvZiAlemkgY2hhcmFjdGVycyIsCisgICAgICAgICAgICAgICAgICAgICBob3dfbWFueSwgdG9fc3RhcnQsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHRvKSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBpZiAoaG93X21hbnkgPT0gMCkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAodW5pY29kZV9jaGVja19tb2RpZmlhYmxlKHRvKSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgZXJyID0gX2NvcHlfY2hhcmFjdGVycyh0bywgdG9fc3RhcnQsIGZyb20sIGZyb21fc3RhcnQsIGhvd19tYW55LCAxKTsKKyAgICBpZiAoZXJyKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19TeXN0ZW1FcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJDYW5ub3QgY29weSAlcyBjaGFyYWN0ZXJzICIKKyAgICAgICAgICAgICAgICAgICAgICJpbnRvIGEgc3RyaW5nIG9mICVzIGNoYXJhY3RlcnMiLAorICAgICAgICAgICAgICAgICAgICAgdW5pY29kZV9raW5kX25hbWUoZnJvbSksCisgICAgICAgICAgICAgICAgICAgICB1bmljb2RlX2tpbmRfbmFtZSh0bykpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIHJldHVybiBob3dfbWFueTsKK30KKworLyogRmluZCB0aGUgbWF4aW11bSBjb2RlIHBvaW50IGFuZCBjb3VudCB0aGUgbnVtYmVyIG9mIHN1cnJvZ2F0ZSBwYWlycyBzbyBhCisgICBjb3JyZWN0IHN0cmluZyBsZW5ndGggY2FuIGJlIGNvbXB1dGVkIGJlZm9yZSBjb252ZXJ0aW5nIGEgc3RyaW5nIHRvIFVDUzQuCisgICBUaGlzIGZ1bmN0aW9uIGNvdW50cyBzaW5nbGUgc3Vycm9nYXRlcyBhcyBhIGNoYXJhY3RlciBhbmQgbm90IGFzIGEgcGFpci4KKworICAgUmV0dXJuIDAgb24gc3VjY2Vzcywgb3IgLTEgb24gZXJyb3IuICovCitzdGF0aWMgaW50CitmaW5kX21heGNoYXJfc3Vycm9nYXRlcyhjb25zdCB3Y2hhcl90ICpiZWdpbiwgY29uc3Qgd2NoYXJfdCAqZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfVUNTNCAqbWF4Y2hhciwgUHlfc3NpemVfdCAqbnVtX3N1cnJvZ2F0ZXMpCit7CisgICAgY29uc3Qgd2NoYXJfdCAqaXRlcjsKKyAgICBQeV9VQ1M0IGNoOworCisgICAgYXNzZXJ0KG51bV9zdXJyb2dhdGVzICE9IE5VTEwgJiYgbWF4Y2hhciAhPSBOVUxMKTsKKyAgICAqbnVtX3N1cnJvZ2F0ZXMgPSAwOworICAgICptYXhjaGFyID0gMDsKKworICAgIGZvciAoaXRlciA9IGJlZ2luOyBpdGVyIDwgZW5kOyApIHsKKyNpZiBTSVpFT0ZfV0NIQVJfVCA9PSAyCisgICAgICAgIGlmIChQeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFKGl0ZXJbMF0pCisgICAgICAgICAgICAmJiAoaXRlcisxKSA8IGVuZAorICAgICAgICAgICAgJiYgUHlfVU5JQ09ERV9JU19MT1dfU1VSUk9HQVRFKGl0ZXJbMV0pKQorICAgICAgICB7CisgICAgICAgICAgICBjaCA9IFB5X1VOSUNPREVfSk9JTl9TVVJST0dBVEVTKGl0ZXJbMF0sIGl0ZXJbMV0pOworICAgICAgICAgICAgKysoKm51bV9zdXJyb2dhdGVzKTsKKyAgICAgICAgICAgIGl0ZXIgKz0gMjsKKyAgICAgICAgfQorICAgICAgICBlbHNlCisjZW5kaWYKKyAgICAgICAgeworICAgICAgICAgICAgY2ggPSAqaXRlcjsKKyAgICAgICAgICAgIGl0ZXIrKzsKKyAgICAgICAgfQorICAgICAgICBpZiAoY2ggPiAqbWF4Y2hhcikgeworICAgICAgICAgICAgKm1heGNoYXIgPSBjaDsKKyAgICAgICAgICAgIGlmICgqbWF4Y2hhciA+IE1BWF9VTklDT0RFKSB7CisgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjaGFyYWN0ZXIgVSsleCBpcyBub3QgaW4gcmFuZ2UgW1UrMDAwMDsgVSsxMGZmZmZdIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2gpOworICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworI2lmZGVmIFB5X0RFQlVHCitzdGF0aWMgaW50IHVuaWNvZGVfcmVhZHlfY2FsbHMgPSAwOworI2VuZGlmCisKK2ludAorX1B5VW5pY29kZV9SZWFkeShQeU9iamVjdCAqdW5pY29kZSkKK3sKKyAgICB3Y2hhcl90ICplbmQ7CisgICAgUHlfVUNTNCBtYXhjaGFyID0gMDsKKyAgICBQeV9zc2l6ZV90IG51bV9zdXJyb2dhdGVzOworI2lmIFNJWkVPRl9XQ0hBUl9UID09IDIKKyAgICBQeV9zc2l6ZV90IGxlbmd0aF93b19zdXJyb2dhdGVzOworI2VuZGlmCisKKyAgICAvKiBfUHlVbmljb2RlX1JlYWR5KCkgaXMgb25seSBpbnRlbmRlZCBmb3Igb2xkLXN0eWxlIEFQSSB1c2FnZSB3aGVyZQorICAgICAgIHN0cmluZ3Mgd2VyZSBjcmVhdGVkIHVzaW5nIF9QeU9iamVjdF9OZXcoKSBhbmQgd2hlcmUgbm8gY2Fub25pY2FsCisgICAgICAgcmVwcmVzZW50YXRpb24gKHRoZSBzdHIgZmllbGQpIGhhcyBiZWVuIHNldCB5ZXQgYWthIHN0cmluZ3MKKyAgICAgICB3aGljaCBhcmUgbm90IHlldCByZWFkeS4gKi8KKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyh1bmljb2RlKSk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfS0lORCh1bmljb2RlKSA9PSBQeVVuaWNvZGVfV0NIQVJfS0lORCk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSAhPSBOVUxMKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9EQVRBX0FOWSh1bmljb2RlKSA9PSBOVUxMKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID09IE5VTEwpOworICAgIC8qIEFjdHVhbGx5LCBpdCBzaG91bGQgbmVpdGhlciBiZSBpbnRlcm5lZCBub3IgYmUgYW55dGhpbmcgZWxzZTogKi8KKyAgICBhc3NlcnQoX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5pbnRlcm5lZCA9PSBTU1RBVEVfTk9UX0lOVEVSTkVEKTsKKworI2lmZGVmIFB5X0RFQlVHCisgICAgKyt1bmljb2RlX3JlYWR5X2NhbGxzOworI2VuZGlmCisKKyAgICBlbmQgPSBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgKyBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpOworICAgIGlmIChmaW5kX21heGNoYXJfc3Vycm9nYXRlcyhfUHlVbmljb2RlX1dTVFIodW5pY29kZSksIGVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1heGNoYXIsICZudW1fc3Vycm9nYXRlcykgPT0gLTEpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGlmIChtYXhjaGFyIDwgMjU2KSB7CisgICAgICAgIF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkgPSBQeU9iamVjdF9NQUxMT0MoX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSArIDEpOworICAgICAgICBpZiAoIV9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkpIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgX1B5VW5pY29kZV9DT05WRVJUX0JZVEVTKHdjaGFyX3QsIHVuc2lnbmVkIGNoYXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSwgZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQSh1bmljb2RlKSk7CisgICAgICAgIFB5VW5pY29kZV8xQllURV9EQVRBKHVuaWNvZGUpW19QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSldID0gJ1wwJzsKKyAgICAgICAgX1B5VW5pY29kZV9MRU5HVEgodW5pY29kZSkgPSBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpOworICAgICAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLmtpbmQgPSBQeVVuaWNvZGVfMUJZVEVfS0lORDsKKyAgICAgICAgaWYgKG1heGNoYXIgPCAxMjgpIHsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkuYXNjaWkgPSAxOworICAgICAgICAgICAgX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID0gX1B5VW5pY29kZV9EQVRBX0FOWSh1bmljb2RlKTsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfVVRGOF9MRU5HVEgodW5pY29kZSkgPSBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5hc2NpaSA9IDA7CisgICAgICAgICAgICBfUHlVbmljb2RlX1VURjgodW5pY29kZSkgPSBOVUxMOworICAgICAgICAgICAgX1B5VW5pY29kZV9VVEY4X0xFTkdUSCh1bmljb2RlKSA9IDA7CisgICAgICAgIH0KKyAgICAgICAgUHlPYmplY3RfRlJFRShfUHlVbmljb2RlX1dTVFIodW5pY29kZSkpOworICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSBOVUxMOworICAgICAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpID0gMDsKKyAgICB9CisgICAgLyogSW4gdGhpcyBjYXNlIHdlIG1pZ2h0IGhhdmUgdG8gY29udmVydCBkb3duIGZyb20gNC1ieXRlIG5hdGl2ZQorICAgICAgIHdjaGFyX3QgdG8gMi1ieXRlIHVuaWNvZGUuICovCisgICAgZWxzZSBpZiAobWF4Y2hhciA8IDY1NTM2KSB7CisgICAgICAgIGFzc2VydChudW1fc3Vycm9nYXRlcyA9PSAwICYmCisgICAgICAgICAgICAgICAiRmluZE1heENoYXJBbmROdW1TdXJyb2dhdGVQYWlycygpIG1lc3NlZCB1cCIpOworCisjaWYgU0laRU9GX1dDSEFSX1QgPT0gMgorICAgICAgICAvKiBXZSBjYW4gc2hhcmUgcmVwcmVzZW50YXRpb25zIGFuZCBhcmUgZG9uZS4gKi8KKyAgICAgICAgX1B5VW5pY29kZV9EQVRBX0FOWSh1bmljb2RlKSA9IF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKTsKKyAgICAgICAgUHlVbmljb2RlXzJCWVRFX0RBVEEodW5pY29kZSlbX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKV0gPSAnXDAnOworICAgICAgICBfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKSA9IF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSk7CisgICAgICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkua2luZCA9IFB5VW5pY29kZV8yQllURV9LSU5EOworICAgICAgICBfUHlVbmljb2RlX1VURjgodW5pY29kZSkgPSBOVUxMOworICAgICAgICBfUHlVbmljb2RlX1VURjhfTEVOR1RIKHVuaWNvZGUpID0gMDsKKyNlbHNlCisgICAgICAgIC8qIHNpemVvZih3Y2hhcl90KSA9PSA0ICovCisgICAgICAgIF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkgPSBQeU9iamVjdF9NQUxMT0MoCisgICAgICAgICAgICAyICogKF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSkgKyAxKSk7CisgICAgICAgIGlmICghX1B5VW5pY29kZV9EQVRBX0FOWSh1bmljb2RlKSkgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMod2NoYXJfdCwgUHlfVUNTMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpLCBlbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV8yQllURV9EQVRBKHVuaWNvZGUpKTsKKyAgICAgICAgUHlVbmljb2RlXzJCWVRFX0RBVEEodW5pY29kZSlbX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKV0gPSAnXDAnOworICAgICAgICBfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKSA9IF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSk7CisgICAgICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkua2luZCA9IFB5VW5pY29kZV8yQllURV9LSU5EOworICAgICAgICBfUHlVbmljb2RlX1VURjgodW5pY29kZSkgPSBOVUxMOworICAgICAgICBfUHlVbmljb2RlX1VURjhfTEVOR1RIKHVuaWNvZGUpID0gMDsKKyAgICAgICAgUHlPYmplY3RfRlJFRShfUHlVbmljb2RlX1dTVFIodW5pY29kZSkpOworICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSBOVUxMOworICAgICAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpID0gMDsKKyNlbmRpZgorICAgIH0KKyAgICAvKiBtYXhjaGFyIGV4ZWVkcyAxNiBiaXQsIHdlZSBuZWVkIDQgYnl0ZXMgZm9yIHVuaWNvZGUgY2hhcmFjdGVycyAqLworICAgIGVsc2UgeworI2lmIFNJWkVPRl9XQ0hBUl9UID09IDIKKyAgICAgICAgLyogaW4gY2FzZSB0aGUgbmF0aXZlIHJlcHJlc2VudGF0aW9uIGlzIDItYnl0ZXMsIHdlIG5lZWQgdG8gYWxsb2NhdGUgYQorICAgICAgICAgICBuZXcgbm9ybWFsaXplZCA0LWJ5dGUgdmVyc2lvbi4gKi8KKyAgICAgICAgbGVuZ3RoX3dvX3N1cnJvZ2F0ZXMgPSBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpIC0gbnVtX3N1cnJvZ2F0ZXM7CisgICAgICAgIF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkgPSBQeU9iamVjdF9NQUxMT0MoNCAqIChsZW5ndGhfd29fc3Vycm9nYXRlcyArIDEpKTsKKyAgICAgICAgaWYgKCFfUHlVbmljb2RlX0RBVEFfQU5ZKHVuaWNvZGUpKSB7CisgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIF9QeVVuaWNvZGVfTEVOR1RIKHVuaWNvZGUpID0gbGVuZ3RoX3dvX3N1cnJvZ2F0ZXM7CisgICAgICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkua2luZCA9IFB5VW5pY29kZV80QllURV9LSU5EOworICAgICAgICBfUHlVbmljb2RlX1VURjgodW5pY29kZSkgPSBOVUxMOworICAgICAgICBfUHlVbmljb2RlX1VURjhfTEVOR1RIKHVuaWNvZGUpID0gMDsKKyAgICAgICAgLyogdW5pY29kZV9jb252ZXJ0X3djaGFyX3RvX3VjczQoKSByZXF1aXJlcyBhIHJlYWR5IHN0cmluZyAqLworICAgICAgICBfUHlVbmljb2RlX1NUQVRFKHVuaWNvZGUpLnJlYWR5ID0gMTsKKyAgICAgICAgdW5pY29kZV9jb252ZXJ0X3djaGFyX3RvX3VjczQoX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpLCBlbmQsIHVuaWNvZGUpOworICAgICAgICBQeU9iamVjdF9GUkVFKF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSk7CisgICAgICAgIF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSA9IE5VTEw7CisgICAgICAgIF9QeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSkgPSAwOworI2Vsc2UKKyAgICAgICAgYXNzZXJ0KG51bV9zdXJyb2dhdGVzID09IDApOworCisgICAgICAgIF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkgPSBfUHlVbmljb2RlX1dTVFIodW5pY29kZSk7CisgICAgICAgIF9QeVVuaWNvZGVfTEVOR1RIKHVuaWNvZGUpID0gX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKTsKKyAgICAgICAgX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpID0gTlVMTDsKKyAgICAgICAgX1B5VW5pY29kZV9VVEY4X0xFTkdUSCh1bmljb2RlKSA9IDA7CisgICAgICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkua2luZCA9IFB5VW5pY29kZV80QllURV9LSU5EOworI2VuZGlmCisgICAgICAgIFB5VW5pY29kZV80QllURV9EQVRBKHVuaWNvZGUpW19QeVVuaWNvZGVfTEVOR1RIKHVuaWNvZGUpXSA9ICdcMCc7CisgICAgfQorICAgIF9QeVVuaWNvZGVfU1RBVEUodW5pY29kZSkucmVhZHkgPSAxOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kodW5pY29kZSwgMSkpOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgdm9pZAordW5pY29kZV9kZWFsbG9jKHJlZ2lzdGVyIFB5T2JqZWN0ICp1bmljb2RlKQogewogICAgIHN3aXRjaCAoUHlVbmljb2RlX0NIRUNLX0lOVEVSTkVEKHVuaWNvZGUpKSB7CiAgICAgY2FzZSBTU1RBVEVfTk9UX0lOVEVSTkVEOgpAQCAtMzkzLDcgKzE0ODMsNyBAQAogICAgIGNhc2UgU1NUQVRFX0lOVEVSTkVEX01PUlRBTDoKICAgICAgICAgLyogcmV2aXZlIGRlYWQgb2JqZWN0IHRlbXBvcmFyaWx5IGZvciBEZWxJdGVtICovCiAgICAgICAgIFB5X1JFRkNOVCh1bmljb2RlKSA9IDM7Ci0gICAgICAgIGlmIChQeURpY3RfRGVsSXRlbShpbnRlcm5lZCwgKFB5T2JqZWN0ICopdW5pY29kZSkgIT0gMCkKKyAgICAgICAgaWYgKFB5RGljdF9EZWxJdGVtKGludGVybmVkLCB1bmljb2RlKSAhPSAwKQogICAgICAgICAgICAgUHlfRmF0YWxFcnJvcigKICAgICAgICAgICAgICAgICAiZGVsZXRpb24gb2YgaW50ZXJuZWQgc3RyaW5nIGZhaWxlZCIpOwogICAgICAgICBicmVhazsKQEAgLTQwNSwyNDAgKzE0OTUsNjIzIEBACiAgICAgICAgIFB5X0ZhdGFsRXJyb3IoIkluY29uc2lzdGVudCBpbnRlcm5lZCBzdHJpbmcgc3RhdGUuIik7CiAgICAgfQogCi0gICAgaWYgKFB5VW5pY29kZV9DaGVja0V4YWN0KHVuaWNvZGUpICYmCi0gICAgICAgIG51bWZyZWUgPCBQeVVuaWNvZGVfTUFYRlJFRUxJU1QpIHsKLSAgICAgICAgLyogS2VlcC1BbGl2ZSBvcHRpbWl6YXRpb24gKi8KLSAgICAgICAgaWYgKHVuaWNvZGUtPmxlbmd0aCA+PSBLRUVQQUxJVkVfU0laRV9MSU1JVCkgewotICAgICAgICAgICAgUHlPYmplY3RfREVMKHVuaWNvZGUtPnN0cik7Ci0gICAgICAgICAgICB1bmljb2RlLT5zdHIgPSBOVUxMOwotICAgICAgICAgICAgdW5pY29kZS0+bGVuZ3RoID0gMDsKLSAgICAgICAgfQotICAgICAgICBpZiAodW5pY29kZS0+ZGVmZW5jKSB7Ci0gICAgICAgICAgICBQeV9DTEVBUih1bmljb2RlLT5kZWZlbmMpOwotICAgICAgICB9Ci0gICAgICAgIC8qIEFkZCB0byBmcmVlIGxpc3QgKi8KLSAgICAgICAgKihQeVVuaWNvZGVPYmplY3QgKiopdW5pY29kZSA9IGZyZWVfbGlzdDsKLSAgICAgICAgZnJlZV9saXN0ID0gdW5pY29kZTsKLSAgICAgICAgbnVtZnJlZSsrOwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgUHlPYmplY3RfREVMKHVuaWNvZGUtPnN0cik7Ci0gICAgICAgIFB5X1hERUNSRUYodW5pY29kZS0+ZGVmZW5jKTsKLSAgICAgICAgUHlfVFlQRSh1bmljb2RlKS0+dHBfZnJlZSgoUHlPYmplY3QgKil1bmljb2RlKTsKLSAgICB9CisgICAgaWYgKF9QeVVuaWNvZGVfSEFTX1dTVFJfTUVNT1JZKHVuaWNvZGUpKQorICAgICAgICBQeU9iamVjdF9ERUwoX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpKTsKKyAgICBpZiAoX1B5VW5pY29kZV9IQVNfVVRGOF9NRU1PUlkodW5pY29kZSkpCisgICAgICAgIFB5T2JqZWN0X0RFTChfUHlVbmljb2RlX1VURjgodW5pY29kZSkpOworICAgIGlmICghUHlVbmljb2RlX0lTX0NPTVBBQ1QodW5pY29kZSkgJiYgX1B5VW5pY29kZV9EQVRBX0FOWSh1bmljb2RlKSkKKyAgICAgICAgUHlPYmplY3RfREVMKF9QeVVuaWNvZGVfREFUQV9BTlkodW5pY29kZSkpOworCisgICAgUHlfVFlQRSh1bmljb2RlKS0+dHBfZnJlZSh1bmljb2RlKTsKIH0KIAotc3RhdGljCi1pbnQgX1B5VW5pY29kZV9SZXNpemUoUHlVbmljb2RlT2JqZWN0ICoqdW5pY29kZSwgUHlfc3NpemVfdCBsZW5ndGgpCisjaWZkZWYgUHlfREVCVUcKK3N0YXRpYyBpbnQKK3VuaWNvZGVfaXNfc2luZ2xldG9uKFB5T2JqZWN0ICp1bmljb2RlKQogewotICAgIHJlZ2lzdGVyIFB5VW5pY29kZU9iamVjdCAqdjsKLQotICAgIC8qIEFyZ3VtZW50IGNoZWNrcyAqLwotICAgIGlmICh1bmljb2RlID09IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7Ci0gICAgICAgIHJldHVybiAtMTsKKyAgICBQeUFTQ0lJT2JqZWN0ICphc2NpaSA9IChQeUFTQ0lJT2JqZWN0ICopdW5pY29kZTsKKyAgICBpZiAodW5pY29kZSA9PSB1bmljb2RlX2VtcHR5KQorICAgICAgICByZXR1cm4gMTsKKyAgICBpZiAoYXNjaWktPnN0YXRlLmtpbmQgIT0gUHlVbmljb2RlX1dDSEFSX0tJTkQgJiYgYXNjaWktPmxlbmd0aCA9PSAxKQorICAgIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEX0NIQVIodW5pY29kZSwgMCk7CisgICAgICAgIGlmIChjaCA8IDI1NiAmJiB1bmljb2RlX2xhdGluMVtjaF0gPT0gdW5pY29kZSkKKyAgICAgICAgICAgIHJldHVybiAxOwogICAgIH0KLSAgICB2ID0gKnVuaWNvZGU7Ci0gICAgaWYgKHYgPT0gTlVMTCB8fCAhUHlVbmljb2RlX0NoZWNrKHYpIHx8IFB5X1JFRkNOVCh2KSAhPSAxIHx8IGxlbmd0aCA8IDApIHsKLSAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9CisgICAgcmV0dXJuIDA7Cit9CisjZW5kaWYKIAotICAgIC8qIFJlc2l6aW5nIHVuaWNvZGVfZW1wdHkgYW5kIHNpbmdsZSBjaGFyYWN0ZXIgb2JqZWN0cyBpcyBub3QKLSAgICAgICBwb3NzaWJsZSBzaW5jZSB0aGVzZSBhcmUgYmVpbmcgc2hhcmVkLiBXZSBzaW1wbHkgcmV0dXJuIGEgZnJlc2gKLSAgICAgICBjb3B5IHdpdGggdGhlIHNhbWUgVW5pY29kZSBjb250ZW50LiAqLwotICAgIGlmICh2LT5sZW5ndGggIT0gbGVuZ3RoICYmCi0gICAgICAgICh2ID09IHVuaWNvZGVfZW1wdHkgfHwgdi0+bGVuZ3RoID09IDEpKSB7Ci0gICAgICAgIFB5VW5pY29kZU9iamVjdCAqdyA9IF9QeVVuaWNvZGVfTmV3KGxlbmd0aCk7Ci0gICAgICAgIGlmICh3ID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIFB5X1VOSUNPREVfQ09QWSh3LT5zdHIsIHYtPnN0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgIGxlbmd0aCA8IHYtPmxlbmd0aCA/IGxlbmd0aCA6IHYtPmxlbmd0aCk7Ci0gICAgICAgIFB5X0RFQ1JFRigqdW5pY29kZSk7Ci0gICAgICAgICp1bmljb2RlID0gdzsKK3N0YXRpYyBpbnQKK3VuaWNvZGVfbW9kaWZpYWJsZShQeU9iamVjdCAqdW5pY29kZSkKK3sKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyh1bmljb2RlKSk7CisgICAgaWYgKFB5X1JFRkNOVCh1bmljb2RlKSAhPSAxKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoX1B5VW5pY29kZV9IQVNIKHVuaWNvZGUpICE9IC0xKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoUHlVbmljb2RlX0NIRUNLX0lOVEVSTkVEKHVuaWNvZGUpKQorICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVja0V4YWN0KHVuaWNvZGUpKQorICAgICAgICByZXR1cm4gMDsKKyNpZmRlZiBQeV9ERUJVRworICAgIC8qIHNpbmdsZXRvbiByZWZjb3VudCBpcyBncmVhdGVyIHRoYW4gMSAqLworICAgIGFzc2VydCghdW5pY29kZV9pc19zaW5nbGV0b24odW5pY29kZSkpOworI2VuZGlmCisgICAgcmV0dXJuIDE7Cit9CisKK3N0YXRpYyBpbnQKK3VuaWNvZGVfcmVzaXplKFB5T2JqZWN0ICoqcF91bmljb2RlLCBQeV9zc2l6ZV90IGxlbmd0aCkKK3sKKyAgICBQeU9iamVjdCAqdW5pY29kZTsKKyAgICBQeV9zc2l6ZV90IG9sZF9sZW5ndGg7CisKKyAgICBhc3NlcnQocF91bmljb2RlICE9IE5VTEwpOworICAgIHVuaWNvZGUgPSAqcF91bmljb2RlOworCisgICAgYXNzZXJ0KHVuaWNvZGUgIT0gTlVMTCk7CisgICAgYXNzZXJ0KFB5VW5pY29kZV9DaGVjayh1bmljb2RlKSk7CisgICAgYXNzZXJ0KDAgPD0gbGVuZ3RoKTsKKworICAgIGlmIChfUHlVbmljb2RlX0tJTkQodW5pY29kZSkgPT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpCisgICAgICAgIG9sZF9sZW5ndGggPSBQeVVuaWNvZGVfV1NUUl9MRU5HVEgodW5pY29kZSk7CisgICAgZWxzZQorICAgICAgICBvbGRfbGVuZ3RoID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSk7CisgICAgaWYgKG9sZF9sZW5ndGggPT0gbGVuZ3RoKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmIChsZW5ndGggPT0gMCkgeworICAgICAgICBQeV9ERUNSRUYoKnBfdW5pY29kZSk7CisgICAgICAgICpwX3VuaWNvZGUgPSB1bmljb2RlX2VtcHR5OworICAgICAgICBQeV9JTkNSRUYoKnBfdW5pY29kZSk7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KIAotICAgIC8qIE5vdGUgdGhhdCB3ZSBkb24ndCBoYXZlIHRvIG1vZGlmeSAqdW5pY29kZSBmb3IgdW5zaGFyZWQgVW5pY29kZQotICAgICAgIG9iamVjdHMsIHNpbmNlIHdlIGNhbiBtb2RpZnkgdGhlbSBpbi1wbGFjZS4gKi8KLSAgICByZXR1cm4gdW5pY29kZV9yZXNpemUodiwgbGVuZ3RoKTsKKyAgICBpZiAoIXVuaWNvZGVfbW9kaWZpYWJsZSh1bmljb2RlKSkgeworICAgICAgICBQeU9iamVjdCAqY29weSA9IHJlc2l6ZV9jb3B5KHVuaWNvZGUsIGxlbmd0aCk7CisgICAgICAgIGlmIChjb3B5ID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIFB5X0RFQ1JFRigqcF91bmljb2RlKTsKKyAgICAgICAgKnBfdW5pY29kZSA9IGNvcHk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIGlmIChQeVVuaWNvZGVfSVNfQ09NUEFDVCh1bmljb2RlKSkgeworICAgICAgICBQeU9iamVjdCAqbmV3X3VuaWNvZGUgPSByZXNpemVfY29tcGFjdCh1bmljb2RlLCBsZW5ndGgpOworICAgICAgICBpZiAobmV3X3VuaWNvZGUgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgKnBfdW5pY29kZSA9IG5ld191bmljb2RlOworICAgICAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KCpwX3VuaWNvZGUsIDApKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIHJldHVybiByZXNpemVfaW5wbGFjZSh1bmljb2RlLCBsZW5ndGgpOwogfQogCi1pbnQgUHlVbmljb2RlX1Jlc2l6ZShQeU9iamVjdCAqKnVuaWNvZGUsIFB5X3NzaXplX3QgbGVuZ3RoKQoraW50CitQeVVuaWNvZGVfUmVzaXplKFB5T2JqZWN0ICoqcF91bmljb2RlLCBQeV9zc2l6ZV90IGxlbmd0aCkKIHsKLSAgICByZXR1cm4gX1B5VW5pY29kZV9SZXNpemUoKFB5VW5pY29kZU9iamVjdCAqKil1bmljb2RlLCBsZW5ndGgpOworICAgIFB5T2JqZWN0ICp1bmljb2RlOworICAgIGlmIChwX3VuaWNvZGUgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICB1bmljb2RlID0gKnBfdW5pY29kZTsKKyAgICBpZiAodW5pY29kZSA9PSBOVUxMIHx8ICFQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkgfHwgbGVuZ3RoIDwgMCkKKyAgICB7CisgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIHJldHVybiB1bmljb2RlX3Jlc2l6ZShwX3VuaWNvZGUsIGxlbmd0aCk7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRnJvbVVuaWNvZGUoY29uc3QgUHlfVU5JQ09ERSAqdSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplKQorc3RhdGljIGludAordW5pY29kZV93aWRlbihQeU9iamVjdCAqKnBfdW5pY29kZSwgdW5zaWduZWQgaW50IG1heGNoYXIpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgYXNzZXJ0KFB5VW5pY29kZV9JU19SRUFEWSgqcF91bmljb2RlKSk7CisgICAgaWYgKG1heGNoYXIgPD0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKCpwX3VuaWNvZGUpKQorICAgICAgICByZXR1cm4gMDsKKyAgICByZXN1bHQgPSBQeVVuaWNvZGVfTmV3KFB5VW5pY29kZV9HRVRfTEVOR1RIKCpwX3VuaWNvZGUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4Y2hhcik7CisgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisgICAgUHlVbmljb2RlX0NvcHlDaGFyYWN0ZXJzKHJlc3VsdCwgMCwgKnBfdW5pY29kZSwgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoKnBfdW5pY29kZSkpOworICAgIFB5X0RFQ1JFRigqcF91bmljb2RlKTsKKyAgICAqcF91bmljb2RlID0gcmVzdWx0OworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50Cit1bmljb2RlX3B1dGNoYXIoUHlPYmplY3QgKipwX3VuaWNvZGUsIFB5X3NzaXplX3QgKnBvcywKKyAgICAgICAgICAgICAgICBQeV9VQ1M0IGNoKQoreworICAgIGlmICh1bmljb2RlX3dpZGVuKHBfdW5pY29kZSwgY2gpIDwgMCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIFB5VW5pY29kZV9XUklURShQeVVuaWNvZGVfS0lORCgqcF91bmljb2RlKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0RBVEEoKnBfdW5pY29kZSksCisgICAgICAgICAgICAgICAgICAgICgqcG9zKSsrLCBjaCk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBQeU9iamVjdCoKK2dldF9sYXRpbjFfY2hhcih1bnNpZ25lZCBjaGFyIGNoKQoreworICAgIFB5T2JqZWN0ICp1bmljb2RlID0gdW5pY29kZV9sYXRpbjFbY2hdOworICAgIGlmICghdW5pY29kZSkgeworICAgICAgICB1bmljb2RlID0gUHlVbmljb2RlX05ldygxLCBjaCk7CisgICAgICAgIGlmICghdW5pY29kZSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQSh1bmljb2RlKVswXSA9IGNoOworICAgICAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHVuaWNvZGUsIDEpKTsKKyAgICAgICAgdW5pY29kZV9sYXRpbjFbY2hdID0gdW5pY29kZTsKKyAgICB9CisgICAgUHlfSU5DUkVGKHVuaWNvZGUpOworICAgIHJldHVybiB1bmljb2RlOworfQorCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRnJvbVVuaWNvZGUoY29uc3QgUHlfVU5JQ09ERSAqdSwgUHlfc3NpemVfdCBzaXplKQoreworICAgIFB5T2JqZWN0ICp1bmljb2RlOworICAgIFB5X1VDUzQgbWF4Y2hhciA9IDA7CisgICAgUHlfc3NpemVfdCBudW1fc3Vycm9nYXRlczsKKworICAgIGlmICh1ID09IE5VTEwpCisgICAgICAgIHJldHVybiAoUHlPYmplY3QqKV9QeVVuaWNvZGVfTmV3KHNpemUpOwogCiAgICAgLyogSWYgdGhlIFVuaWNvZGUgZGF0YSBpcyBrbm93biBhdCBjb25zdHJ1Y3Rpb24gdGltZSwgd2UgY2FuIGFwcGx5CiAgICAgICAgc29tZSBvcHRpbWl6YXRpb25zIHdoaWNoIHNoYXJlIGNvbW1vbmx5IHVzZWQgb2JqZWN0cy4gKi8KLSAgICBpZiAodSAhPSBOVUxMKSB7CiAKLSAgICAgICAgLyogT3B0aW1pemF0aW9uIGZvciBlbXB0eSBzdHJpbmdzICovCi0gICAgICAgIGlmIChzaXplID09IDAgJiYgdW5pY29kZV9lbXB0eSAhPSBOVUxMKSB7Ci0gICAgICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7Ci0gICAgICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdW5pY29kZV9lbXB0eTsKLSAgICAgICAgfQotCi0gICAgICAgIC8qIFNpbmdsZSBjaGFyYWN0ZXIgVW5pY29kZSBvYmplY3RzIGluIHRoZSBMYXRpbi0xIHJhbmdlIGFyZQotICAgICAgICAgICBzaGFyZWQgd2hlbiB1c2luZyB0aGlzIGNvbnN0cnVjdG9yICovCi0gICAgICAgIGlmIChzaXplID09IDEgJiYgKnUgPCAyNTYpIHsKLSAgICAgICAgICAgIHVuaWNvZGUgPSB1bmljb2RlX2xhdGluMVsqdV07Ci0gICAgICAgICAgICBpZiAoIXVuaWNvZGUpIHsKLSAgICAgICAgICAgICAgICB1bmljb2RlID0gX1B5VW5pY29kZV9OZXcoMSk7Ci0gICAgICAgICAgICAgICAgaWYgKCF1bmljb2RlKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgICAgICB1bmljb2RlLT5zdHJbMF0gPSAqdTsKLSAgICAgICAgICAgICAgICB1bmljb2RlX2xhdGluMVsqdV0gPSB1bmljb2RlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGUpOwotICAgICAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7Ci0gICAgICAgIH0KKyAgICAvKiBPcHRpbWl6YXRpb24gZm9yIGVtcHR5IHN0cmluZ3MgKi8KKyAgICBpZiAoc2l6ZSA9PSAwICYmIHVuaWNvZGVfZW1wdHkgIT0gTlVMTCkgeworICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OwogICAgIH0KIAotICAgIHVuaWNvZGUgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKKyAgICAvKiBTaW5nbGUgY2hhcmFjdGVyIFVuaWNvZGUgb2JqZWN0cyBpbiB0aGUgTGF0aW4tMSByYW5nZSBhcmUKKyAgICAgICBzaGFyZWQgd2hlbiB1c2luZyB0aGlzIGNvbnN0cnVjdG9yICovCisgICAgaWYgKHNpemUgPT0gMSAmJiAqdSA8IDI1NikKKyAgICAgICAgcmV0dXJuIGdldF9sYXRpbjFfY2hhcigodW5zaWduZWQgY2hhcikqdSk7CisKKyAgICAvKiBJZiBub3QgZW1wdHkgYW5kIG5vdCBzaW5nbGUgY2hhcmFjdGVyLCBjb3B5IHRoZSBVbmljb2RlIGRhdGEKKyAgICAgICBpbnRvIHRoZSBuZXcgb2JqZWN0ICovCisgICAgaWYgKGZpbmRfbWF4Y2hhcl9zdXJyb2dhdGVzKHUsIHUgKyBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWF4Y2hhciwgJm51bV9zdXJyb2dhdGVzKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICB1bmljb2RlID0gUHlVbmljb2RlX05ldyhzaXplIC0gbnVtX3N1cnJvZ2F0ZXMsIG1heGNoYXIpOwogICAgIGlmICghdW5pY29kZSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICAvKiBDb3B5IHRoZSBVbmljb2RlIGRhdGEgaW50byB0aGUgbmV3IG9iamVjdCAqLwotICAgIGlmICh1ICE9IE5VTEwpCi0gICAgICAgIFB5X1VOSUNPREVfQ09QWSh1bmljb2RlLT5zdHIsIHUsIHNpemUpOworICAgIHN3aXRjaCAoUHlVbmljb2RlX0tJTkQodW5pY29kZSkpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoUHlfVU5JQ09ERSwgdW5zaWduZWQgY2hhciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdSwgdSArIHNpemUsIFB5VW5pY29kZV8xQllURV9EQVRBKHVuaWNvZGUpKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyNpZiBQeV9VTklDT0RFX1NJWkUgPT0gMgorICAgICAgICBQeV9NRU1DUFkoUHlVbmljb2RlXzJCWVRFX0RBVEEodW5pY29kZSksIHUsIHNpemUgKiAyKTsKKyNlbHNlCisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUyhQeV9VTklDT0RFLCBQeV9VQ1MyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1LCB1ICsgc2l6ZSwgUHlVbmljb2RlXzJCWVRFX0RBVEEodW5pY29kZSkpOworI2VuZGlmCisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisjaWYgU0laRU9GX1dDSEFSX1QgPT0gMgorICAgICAgICAvKiBUaGlzIGlzIHRoZSBvbmx5IGNhc2Ugd2hpY2ggaGFzIHRvIHByb2Nlc3Mgc3Vycm9nYXRlcywgdGh1cworICAgICAgICAgICBhIHNpbXBsZSBjb3B5IGxvb3AgaXMgbm90IGVub3VnaCBhbmQgd2UgbmVlZCBhIGZ1bmN0aW9uLiAqLworICAgICAgICB1bmljb2RlX2NvbnZlcnRfd2NoYXJfdG9fdWNzNCh1LCB1ICsgc2l6ZSwgdW5pY29kZSk7CisjZWxzZQorICAgICAgICBhc3NlcnQobnVtX3N1cnJvZ2F0ZXMgPT0gMCk7CisgICAgICAgIFB5X01FTUNQWShQeVVuaWNvZGVfNEJZVEVfREFUQSh1bmljb2RlKSwgdSwgc2l6ZSAqIDQpOworI2VuZGlmCisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIGFzc2VydCgwICYmICJJbXBvc3NpYmxlIHN0YXRlIik7CisgICAgfQogCi0gICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHVuaWNvZGUpOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKGNvbnN0IGNoYXIgKnUsIFB5X3NzaXplX3Qgc2l6ZSkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShjb25zdCBjaGFyICp1LCBQeV9zc2l6ZV90IHNpemUpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlOwotCiAgICAgaWYgKHNpemUgPCAwKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJOZWdhdGl2ZSBzaXplIHBhc3NlZCB0byBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotCi0gICAgLyogSWYgdGhlIFVuaWNvZGUgZGF0YSBpcyBrbm93biBhdCBjb25zdHJ1Y3Rpb24gdGltZSwgd2UgY2FuIGFwcGx5Ci0gICAgICAgc29tZSBvcHRpbWl6YXRpb25zIHdoaWNoIHNoYXJlIGNvbW1vbmx5IHVzZWQgb2JqZWN0cy4KLSAgICAgICBBbHNvLCB0aGlzIG1lYW5zIHRoZSBpbnB1dCBtdXN0IGJlIFVURi04LCBzbyBmYWxsIGJhY2sgdG8gdGhlCi0gICAgICAgVVRGLTggZGVjb2RlciBhdCB0aGUgZW5kLiAqLwotICAgIGlmICh1ICE9IE5VTEwpIHsKLQotICAgICAgICAvKiBPcHRpbWl6YXRpb24gZm9yIGVtcHR5IHN0cmluZ3MgKi8KLSAgICAgICAgaWYgKHNpemUgPT0gMCAmJiB1bmljb2RlX2VtcHR5ICE9IE5VTEwpIHsKLSAgICAgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKLSAgICAgICAgICAgIHJldHVybiAoUHlPYmplY3QgKil1bmljb2RlX2VtcHR5OwotICAgICAgICB9Ci0KLSAgICAgICAgLyogU2luZ2xlIGNoYXJhY3RlcnMgYXJlIHNoYXJlZCB3aGVuIHVzaW5nIHRoaXMgY29uc3RydWN0b3IuCi0gICAgICAgICAgIFJlc3RyaWN0IHRvIEFTQ0lJLCBzaW5jZSB0aGUgaW5wdXQgbXVzdCBiZSBVVEYtOC4gKi8KLSAgICAgICAgaWYgKHNpemUgPT0gMSAmJiBQeV9DSEFSTUFTSygqdSkgPCAxMjgpIHsKLSAgICAgICAgICAgIHVuaWNvZGUgPSB1bmljb2RlX2xhdGluMVtQeV9DSEFSTUFTSygqdSldOwotICAgICAgICAgICAgaWYgKCF1bmljb2RlKSB7Ci0gICAgICAgICAgICAgICAgdW5pY29kZSA9IF9QeVVuaWNvZGVfTmV3KDEpOwotICAgICAgICAgICAgICAgIGlmICghdW5pY29kZSkKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICAgICAgdW5pY29kZS0+c3RyWzBdID0gUHlfQ0hBUk1BU0soKnUpOwotICAgICAgICAgICAgICAgIHVuaWNvZGVfbGF0aW4xW1B5X0NIQVJNQVNLKCp1KV0gPSB1bmljb2RlOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGUpOwotICAgICAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7Ci0gICAgICAgIH0KLQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZVVURjgodSwgc2l6ZSwgTlVMTCk7Ci0gICAgfQotCi0gICAgdW5pY29kZSA9IF9QeVVuaWNvZGVfTmV3KHNpemUpOwotICAgIGlmICghdW5pY29kZSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICByZXR1cm4gKFB5T2JqZWN0ICopdW5pY29kZTsKKyAgICBpZiAodSAhPSBOVUxMKQorICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bCh1LCBzaXplLCBOVUxMLCBOVUxMKTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiAoUHlPYmplY3QgKilfUHlVbmljb2RlX05ldyhzaXplKTsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9Gcm9tU3RyaW5nKGNvbnN0IGNoYXIgKnUpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRnJvbVN0cmluZyhjb25zdCBjaGFyICp1KQogewogICAgIHNpemVfdCBzaXplID0gc3RybGVuKHUpOwogICAgIGlmIChzaXplID4gUFlfU1NJWkVfVF9NQVgpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsICJpbnB1dCB0b28gbG9uZyIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CisgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWwodSwgKFB5X3NzaXplX3Qpc2l6ZSwgTlVMTCwgTlVMTCk7Cit9CiAKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKHUsIHNpemUpOworUHlPYmplY3QgKgorX1B5VW5pY29kZV9Gcm9tSWQoX1B5X0lkZW50aWZpZXIgKmlkKQoreworICAgIGlmICghaWQtPm9iamVjdCkgeworICAgICAgICBpZC0+b2JqZWN0ID0gUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChpZC0+c3RyaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJsZW4oaWQtPnN0cmluZyksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwpOworICAgICAgICBpZiAoIWlkLT5vYmplY3QpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgUHlVbmljb2RlX0ludGVybkluUGxhY2UoJmlkLT5vYmplY3QpOworICAgICAgICBhc3NlcnQoIWlkLT5uZXh0KTsKKyAgICAgICAgaWQtPm5leHQgPSBzdGF0aWNfc3RyaW5nczsKKyAgICAgICAgc3RhdGljX3N0cmluZ3MgPSBpZDsKKyAgICB9CisgICAgcmV0dXJuIGlkLT5vYmplY3Q7Cit9CisKK3ZvaWQKK19QeVVuaWNvZGVfQ2xlYXJTdGF0aWNTdHJpbmdzKCkKK3sKKyAgICBfUHlfSWRlbnRpZmllciAqaTsKKyAgICBmb3IgKGkgPSBzdGF0aWNfc3RyaW5nczsgaTsgaSA9IGktPm5leHQpIHsKKyAgICAgICAgUHlfREVDUkVGKGktPm9iamVjdCk7CisgICAgICAgIGktPm9iamVjdCA9IE5VTEw7CisgICAgICAgIGktPm5leHQgPSBOVUxMOworICAgIH0KK30KKworLyogSW50ZXJuYWwgZnVuY3Rpb24sIGRvbid0IGNoZWNrIG1heGltdW0gY2hhcmFjdGVyICovCisKK3N0YXRpYyBQeU9iamVjdCoKK3VuaWNvZGVfZnJvbWFzY2lpKGNvbnN0IHVuc2lnbmVkIGNoYXIqIHMsIFB5X3NzaXplX3Qgc2l6ZSkKK3sKKyAgICBQeU9iamVjdCAqdW5pY29kZTsKKyAgICBpZiAoc2l6ZSA9PSAxKSB7CisjaWZkZWYgUHlfREVCVUcKKyAgICAgICAgYXNzZXJ0KHNbMF0gPCAxMjgpOworI2VuZGlmCisgICAgICAgIHJldHVybiBnZXRfbGF0aW4xX2NoYXIoc1swXSk7CisgICAgfQorICAgIHVuaWNvZGUgPSBQeVVuaWNvZGVfTmV3KHNpemUsIDEyNyk7CisgICAgaWYgKCF1bmljb2RlKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBtZW1jcHkoUHlVbmljb2RlXzFCWVRFX0RBVEEodW5pY29kZSksIHMsIHNpemUpOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kodW5pY29kZSwgMSkpOworICAgIHJldHVybiB1bmljb2RlOworfQorCitzdGF0aWMgUHlfVUNTNAora2luZF9tYXhjaGFyX2xpbWl0KHVuc2lnbmVkIGludCBraW5kKQoreworICAgIHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgIHJldHVybiAweDgwOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIHJldHVybiAweDEwMDsKKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICByZXR1cm4gMHgxMDAwMDsKKyAgICBkZWZhdWx0OgorICAgICAgICBhc3NlcnQoMCAmJiAiaW52YWxpZCBraW5kIik7CisgICAgICAgIHJldHVybiBNQVhfVU5JQ09ERTsKKyAgICB9Cit9CisKK3N0YXRpYyBQeU9iamVjdCoKK19QeVVuaWNvZGVfRnJvbVVDUzEoY29uc3QgdW5zaWduZWQgY2hhciogdSwgUHlfc3NpemVfdCBzaXplKQoreworICAgIFB5T2JqZWN0ICpyZXM7CisgICAgdW5zaWduZWQgY2hhciBtYXhfY2hhcjsKKworICAgIGlmIChzaXplID09IDApIHsKKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICByZXR1cm4gdW5pY29kZV9lbXB0eTsKKyAgICB9CisgICAgYXNzZXJ0KHNpemUgPiAwKTsKKyAgICBpZiAoc2l6ZSA9PSAxKQorICAgICAgICByZXR1cm4gZ2V0X2xhdGluMV9jaGFyKHVbMF0pOworCisgICAgbWF4X2NoYXIgPSB1Y3MxbGliX2ZpbmRfbWF4X2NoYXIodSwgdSArIHNpemUpOworICAgIHJlcyA9IFB5VW5pY29kZV9OZXcoc2l6ZSwgbWF4X2NoYXIpOworICAgIGlmICghcmVzKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBtZW1jcHkoUHlVbmljb2RlXzFCWVRFX0RBVEEocmVzKSwgdSwgc2l6ZSk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeShyZXMsIDEpKTsKKyAgICByZXR1cm4gcmVzOworfQorCitzdGF0aWMgUHlPYmplY3QqCitfUHlVbmljb2RlX0Zyb21VQ1MyKGNvbnN0IFB5X1VDUzIgKnUsIFB5X3NzaXplX3Qgc2l6ZSkKK3sKKyAgICBQeU9iamVjdCAqcmVzOworICAgIFB5X1VDUzIgbWF4X2NoYXI7CisKKyAgICBpZiAoc2l6ZSA9PSAwKSB7CisgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfZW1wdHk7CisgICAgfQorICAgIGFzc2VydChzaXplID4gMCk7CisgICAgaWYgKHNpemUgPT0gMSAmJiB1WzBdIDwgMjU2KQorICAgICAgICByZXR1cm4gZ2V0X2xhdGluMV9jaGFyKCh1bnNpZ25lZCBjaGFyKXVbMF0pOworCisgICAgbWF4X2NoYXIgPSB1Y3MybGliX2ZpbmRfbWF4X2NoYXIodSwgdSArIHNpemUpOworICAgIHJlcyA9IFB5VW5pY29kZV9OZXcoc2l6ZSwgbWF4X2NoYXIpOworICAgIGlmICghcmVzKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAobWF4X2NoYXIgPj0gMjU2KQorICAgICAgICBtZW1jcHkoUHlVbmljb2RlXzJCWVRFX0RBVEEocmVzKSwgdSwgc2l6ZW9mKFB5X1VDUzIpKnNpemUpOworICAgIGVsc2UgeworICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoCisgICAgICAgICAgICBQeV9VQ1MyLCBQeV9VQ1MxLCB1LCB1ICsgc2l6ZSwgUHlVbmljb2RlXzFCWVRFX0RBVEEocmVzKSk7CisgICAgfQorICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzLCAxKSk7CisgICAgcmV0dXJuIHJlczsKK30KKworc3RhdGljIFB5T2JqZWN0KgorX1B5VW5pY29kZV9Gcm9tVUNTNChjb25zdCBQeV9VQ1M0ICp1LCBQeV9zc2l6ZV90IHNpemUpCit7CisgICAgUHlPYmplY3QgKnJlczsKKyAgICBQeV9VQ1M0IG1heF9jaGFyOworCisgICAgaWYgKHNpemUgPT0gMCkgeworICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgIH0KKyAgICBhc3NlcnQoc2l6ZSA+IDApOworICAgIGlmIChzaXplID09IDEgJiYgdVswXSA8IDI1NikKKyAgICAgICAgcmV0dXJuIGdldF9sYXRpbjFfY2hhcigodW5zaWduZWQgY2hhcil1WzBdKTsKKworICAgIG1heF9jaGFyID0gdWNzNGxpYl9maW5kX21heF9jaGFyKHUsIHUgKyBzaXplKTsKKyAgICByZXMgPSBQeVVuaWNvZGVfTmV3KHNpemUsIG1heF9jaGFyKTsKKyAgICBpZiAoIXJlcykKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKG1heF9jaGFyIDwgMjU2KQorICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoUHlfVUNTNCwgUHlfVUNTMSwgdSwgdSArIHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQShyZXMpKTsKKyAgICBlbHNlIGlmIChtYXhfY2hhciA8IDB4MTAwMDApCisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUyhQeV9VQ1M0LCBQeV9VQ1MyLCB1LCB1ICsgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV8yQllURV9EQVRBKHJlcykpOworICAgIGVsc2UKKyAgICAgICAgbWVtY3B5KFB5VW5pY29kZV80QllURV9EQVRBKHJlcyksIHUsIHNpemVvZihQeV9VQ1M0KSpzaXplKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHJlcywgMSkpOworICAgIHJldHVybiByZXM7Cit9CisKK1B5T2JqZWN0KgorUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShpbnQga2luZCwgY29uc3Qgdm9pZCAqYnVmZmVyLCBQeV9zc2l6ZV90IHNpemUpCit7CisgICAgaWYgKHNpemUgPCAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAic2l6ZSBtdXN0IGJlIHBvc2l0aXZlIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICByZXR1cm4gX1B5VW5pY29kZV9Gcm9tVUNTMShidWZmZXIsIHNpemUpOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIHJldHVybiBfUHlVbmljb2RlX0Zyb21VQ1MyKGJ1ZmZlciwgc2l6ZSk7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfRnJvbVVDUzQoYnVmZmVyLCBzaXplKTsKKyAgICBkZWZhdWx0OgorICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfU3lzdGVtRXJyb3IsICJpbnZhbGlkIGtpbmQiKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorfQorCisvKiBFbnN1cmUgdGhhdCBhIHN0cmluZyB1c2VzIHRoZSBtb3N0IGVmZmljaWVudCBzdG9yYWdlLCBpZiBpdCBpcyBub3QgdGhlCisgICBjYXNlOiBjcmVhdGUgYSBuZXcgc3RyaW5nIHdpdGggb2YgdGhlIHJpZ2h0IGtpbmQuIFdyaXRlIE5VTEwgaW50byAqcF91bmljb2RlCisgICBvbiBlcnJvci4gKi8KK3N0YXRpYyB2b2lkCit1bmljb2RlX2FkanVzdF9tYXhjaGFyKFB5T2JqZWN0ICoqcF91bmljb2RlKQoreworICAgIFB5T2JqZWN0ICp1bmljb2RlLCAqY29weTsKKyAgICBQeV9VQ1M0IG1heF9jaGFyOworICAgIFB5X3NzaXplX3QgbGVuOworICAgIHVuc2lnbmVkIGludCBraW5kOworCisgICAgYXNzZXJ0KHBfdW5pY29kZSAhPSBOVUxMKTsKKyAgICB1bmljb2RlID0gKnBfdW5pY29kZTsKKyAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKHVuaWNvZGUpKTsKKyAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHVuaWNvZGUpKQorICAgICAgICByZXR1cm47CisKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgaWYgKGtpbmQgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQpIHsKKyAgICAgICAgY29uc3QgUHlfVUNTMSAqdSA9IFB5VW5pY29kZV8xQllURV9EQVRBKHVuaWNvZGUpOworICAgICAgICBtYXhfY2hhciA9IHVjczFsaWJfZmluZF9tYXhfY2hhcih1LCB1ICsgbGVuKTsKKyAgICAgICAgaWYgKG1heF9jaGFyID49IDEyOCkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgZWxzZSBpZiAoa2luZCA9PSBQeVVuaWNvZGVfMkJZVEVfS0lORCkgeworICAgICAgICBjb25zdCBQeV9VQ1MyICp1ID0gUHlVbmljb2RlXzJCWVRFX0RBVEEodW5pY29kZSk7CisgICAgICAgIG1heF9jaGFyID0gdWNzMmxpYl9maW5kX21heF9jaGFyKHUsIHUgKyBsZW4pOworICAgICAgICBpZiAobWF4X2NoYXIgPj0gMjU2KQorICAgICAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgY29uc3QgUHlfVUNTNCAqdSA9IFB5VW5pY29kZV80QllURV9EQVRBKHVuaWNvZGUpOworICAgICAgICBhc3NlcnQoa2luZCA9PSBQeVVuaWNvZGVfNEJZVEVfS0lORCk7CisgICAgICAgIG1heF9jaGFyID0gdWNzNGxpYl9maW5kX21heF9jaGFyKHUsIHUgKyBsZW4pOworICAgICAgICBpZiAobWF4X2NoYXIgPj0gMHgxMDAwMCkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgY29weSA9IFB5VW5pY29kZV9OZXcobGVuLCBtYXhfY2hhcik7CisgICAgY29weV9jaGFyYWN0ZXJzKGNvcHksIDAsIHVuaWNvZGUsIDAsIGxlbik7CisgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgICpwX3VuaWNvZGUgPSBjb3B5OworfQorCitQeU9iamVjdCoKK19QeVVuaWNvZGVfQ29weShQeU9iamVjdCAqdW5pY29kZSkKK3sKKyAgICBQeV9zc2l6ZV90IGxlbmd0aDsKKyAgICBQeU9iamVjdCAqY29weTsKKworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKTsKKyAgICBjb3B5ID0gUHlVbmljb2RlX05ldyhsZW5ndGgsIFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRSh1bmljb2RlKSk7CisgICAgaWYgKCFjb3B5KQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBhc3NlcnQoUHlVbmljb2RlX0tJTkQoY29weSkgPT0gUHlVbmljb2RlX0tJTkQodW5pY29kZSkpOworCisgICAgUHlfTUVNQ1BZKFB5VW5pY29kZV9EQVRBKGNvcHkpLCBQeVVuaWNvZGVfREFUQSh1bmljb2RlKSwKKyAgICAgICAgICAgICAgbGVuZ3RoICogUHlVbmljb2RlX0tJTkQodW5pY29kZSkpOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3koY29weSwgMSkpOworICAgIHJldHVybiBjb3B5OworfQorCisKKy8qIFdpZGVuIFVuaWNvZGUgb2JqZWN0cyB0byBsYXJnZXIgYnVmZmVycy4gRG9uJ3Qgd3JpdGUgdGVybWluYXRpbmcgbnVsbAorICAgY2hhcmFjdGVyLiBSZXR1cm4gTlVMTCBvbiBlcnJvci4gKi8KKwordm9pZCoKK19QeVVuaWNvZGVfQXNLaW5kKFB5T2JqZWN0ICpzLCB1bnNpZ25lZCBpbnQga2luZCkKK3sKKyAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICB2b2lkICpyZXN1bHQ7CisgICAgdW5zaWduZWQgaW50IHNraW5kOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzKTsKKyAgICBza2luZCA9IFB5VW5pY29kZV9LSU5EKHMpOworICAgIGlmIChza2luZCA+PSBraW5kKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwgImludmFsaWQgd2lkZW5pbmcgYXR0ZW1wdCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgcmVzdWx0ID0gUHlNZW1fTWFsbG9jKGxlbiAqIHNpemVvZihQeV9VQ1MyKSk7CisgICAgICAgIGlmICghcmVzdWx0KQorICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIGFzc2VydChza2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCk7CisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUygKKyAgICAgICAgICAgIFB5X1VDUzEsIFB5X1VDUzIsCisgICAgICAgICAgICBQeVVuaWNvZGVfMUJZVEVfREFUQShzKSwKKyAgICAgICAgICAgIFB5VW5pY29kZV8xQllURV9EQVRBKHMpICsgbGVuLAorICAgICAgICAgICAgcmVzdWx0KTsKKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICByZXN1bHQgPSBQeU1lbV9NYWxsb2MobGVuICogc2l6ZW9mKFB5X1VDUzQpKTsKKyAgICAgICAgaWYgKCFyZXN1bHQpCisgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgaWYgKHNraW5kID09IFB5VW5pY29kZV8yQllURV9LSU5EKSB7CisgICAgICAgICAgICBfUHlVbmljb2RlX0NPTlZFUlRfQllURVMoCisgICAgICAgICAgICAgICAgUHlfVUNTMiwgUHlfVUNTNCwKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfMkJZVEVfREFUQShzKSwKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfMkJZVEVfREFUQShzKSArIGxlbiwKKyAgICAgICAgICAgICAgICByZXN1bHQpOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgYXNzZXJ0KHNraW5kID09IFB5VW5pY29kZV8xQllURV9LSU5EKTsKKyAgICAgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUygKKyAgICAgICAgICAgICAgICBQeV9VQ1MxLCBQeV9VQ1M0LAorICAgICAgICAgICAgICAgIFB5VW5pY29kZV8xQllURV9EQVRBKHMpLAorICAgICAgICAgICAgICAgIFB5VW5pY29kZV8xQllURV9EQVRBKHMpICsgbGVuLAorICAgICAgICAgICAgICAgIHJlc3VsdCk7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICBkZWZhdWx0OgorICAgICAgICBicmVhazsKKyAgICB9CisgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1N5c3RlbUVycm9yLCAiaW52YWxpZCBraW5kIik7CisgICAgcmV0dXJuIE5VTEw7Cit9CisKK3N0YXRpYyBQeV9VQ1M0KgorYXNfdWNzNChQeU9iamVjdCAqc3RyaW5nLCBQeV9VQ1M0ICp0YXJnZXQsIFB5X3NzaXplX3QgdGFyZ2V0c2l6ZSwKKyAgICAgICAgaW50IGNvcHlfbnVsbCkKK3sKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X3NzaXplX3QgbGVuLCB0YXJnZXRsZW47CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzdHJpbmcpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc3RyaW5nKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc3RyaW5nKTsKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHJpbmcpOworICAgIHRhcmdldGxlbiA9IGxlbjsKKyAgICBpZiAoY29weV9udWxsKQorICAgICAgICB0YXJnZXRsZW4rKzsKKyAgICBpZiAoIXRhcmdldCkgeworICAgICAgICBpZiAoUFlfU1NJWkVfVF9NQVggLyBzaXplb2YoUHlfVUNTNCkgPCB0YXJnZXRsZW4pIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICB0YXJnZXQgPSBQeU1lbV9NYWxsb2ModGFyZ2V0bGVuICogc2l6ZW9mKFB5X1VDUzQpKTsKKyAgICAgICAgaWYgKCF0YXJnZXQpIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKHRhcmdldHNpemUgPCB0YXJnZXRsZW4pIHsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19TeXN0ZW1FcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAic3RyaW5nIGlzIGxvbmdlciB0aGFuIHRoZSBidWZmZXIiKTsKKyAgICAgICAgICAgIGlmIChjb3B5X251bGwgJiYgMCA8IHRhcmdldHNpemUpCisgICAgICAgICAgICAgICAgdGFyZ2V0WzBdID0gMDsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgfQorICAgIGlmIChraW5kID09IFB5VW5pY29kZV8xQllURV9LSU5EKSB7CisgICAgICAgIFB5X1VDUzEgKnN0YXJ0ID0gKFB5X1VDUzEgKikgZGF0YTsKKyAgICAgICAgX1B5VW5pY29kZV9DT05WRVJUX0JZVEVTKFB5X1VDUzEsIFB5X1VDUzQsIHN0YXJ0LCBzdGFydCArIGxlbiwgdGFyZ2V0KTsKKyAgICB9CisgICAgZWxzZSBpZiAoa2luZCA9PSBQeVVuaWNvZGVfMkJZVEVfS0lORCkgeworICAgICAgICBQeV9VQ1MyICpzdGFydCA9IChQeV9VQ1MyICopIGRhdGE7CisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUyhQeV9VQ1MyLCBQeV9VQ1M0LCBzdGFydCwgc3RhcnQgKyBsZW4sIHRhcmdldCk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBhc3NlcnQoa2luZCA9PSBQeVVuaWNvZGVfNEJZVEVfS0lORCk7CisgICAgICAgIFB5X01FTUNQWSh0YXJnZXQsIGRhdGEsIGxlbiAqIHNpemVvZihQeV9VQ1M0KSk7CisgICAgfQorICAgIGlmIChjb3B5X251bGwpCisgICAgICAgIHRhcmdldFtsZW5dID0gMDsKKyAgICByZXR1cm4gdGFyZ2V0OworfQorCitQeV9VQ1M0KgorUHlVbmljb2RlX0FzVUNTNChQeU9iamVjdCAqc3RyaW5nLCBQeV9VQ1M0ICp0YXJnZXQsIFB5X3NzaXplX3QgdGFyZ2V0c2l6ZSwKKyAgICAgICAgICAgICAgICAgaW50IGNvcHlfbnVsbCkKK3sKKyAgICBpZiAodGFyZ2V0ID09IE5VTEwgfHwgdGFyZ2V0c2l6ZSA8IDApIHsKKyAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICByZXR1cm4gYXNfdWNzNChzdHJpbmcsIHRhcmdldCwgdGFyZ2V0c2l6ZSwgY29weV9udWxsKTsKK30KKworUHlfVUNTNCoKK1B5VW5pY29kZV9Bc1VDUzRDb3B5KFB5T2JqZWN0ICpzdHJpbmcpCit7CisgICAgcmV0dXJuIGFzX3VjczQoc3RyaW5nLCBOVUxMLCAwLCAxKTsKIH0KIAogI2lmZGVmIEhBVkVfV0NIQVJfSAogCi0jaWYgKFB5X1VOSUNPREVfU0laRSA9PSAyKSAmJiBkZWZpbmVkKFNJWkVPRl9XQ0hBUl9UKSAmJiAoU0laRU9GX1dDSEFSX1QgPT0gNCkKLSMgZGVmaW5lIENPTlZFUlRfV0NIQVJfVE9fU1VSUk9HQVRFUwotI2VuZGlmCi0KLSNpZmRlZiBDT05WRVJUX1dDSEFSX1RPX1NVUlJPR0FURVMKLQotLyogSGVyZSBzaXplb2Yod2NoYXJfdCkgaXMgNCBidXQgUHlfVU5JQ09ERV9TSVpFID09IDIsIHNvIHdlIG5lZWQKLSAgIHRvIGNvbnZlcnQgZnJvbSBVVEYzMiB0byBVVEYxNi4gKi8KLQotUHlPYmplY3QgKlB5VW5pY29kZV9Gcm9tV2lkZUNoYXIocmVnaXN0ZXIgY29uc3Qgd2NoYXJfdCAqdywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Gcm9tV2lkZUNoYXIocmVnaXN0ZXIgY29uc3Qgd2NoYXJfdCAqdywgUHlfc3NpemVfdCBzaXplKQogewotICAgIFB5VW5pY29kZU9iamVjdCAqdW5pY29kZTsKLSAgICByZWdpc3RlciBQeV9zc2l6ZV90IGk7Ci0gICAgUHlfc3NpemVfdCBhbGxvYzsKLSAgICBjb25zdCB3Y2hhcl90ICpvcmlnX3c7Ci0KICAgICBpZiAodyA9PSBOVUxMKSB7Ci0gICAgICAgIGlmIChzaXplID09IDApCi0gICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOwotICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgaWYgKHNpemUgPT0gLTEpIHsKLSAgICAgICAgc2l6ZSA9IHdjc2xlbih3KTsKLSAgICB9Ci0KLSAgICBhbGxvYyA9IHNpemU7Ci0gICAgb3JpZ193ID0gdzsKLSAgICBmb3IgKGkgPSBzaXplOyBpID4gMDsgaS0tKSB7Ci0gICAgICAgIGlmICgqdyA+IDB4RkZGRikKLSAgICAgICAgICAgIGFsbG9jKys7Ci0gICAgICAgIHcrKzsKLSAgICB9Ci0gICAgdyA9IG9yaWdfdzsKLSAgICB1bmljb2RlID0gX1B5VW5pY29kZV9OZXcoYWxsb2MpOwotICAgIGlmICghdW5pY29kZSkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0KLSAgICAvKiBDb3B5IHRoZSB3Y2hhcl90IGRhdGEgaW50byB0aGUgbmV3IG9iamVjdCAqLwotICAgIHsKLSAgICAgICAgcmVnaXN0ZXIgUHlfVU5JQ09ERSAqdTsKLSAgICAgICAgdSA9IFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOwotICAgICAgICBmb3IgKGkgPSBzaXplOyBpID4gMDsgaS0tKSB7Ci0gICAgICAgICAgICBpZiAoKncgPiAweEZGRkYpIHsKLSAgICAgICAgICAgICAgICB3Y2hhcl90IG9yZGluYWwgPSAqdysrOwotICAgICAgICAgICAgICAgIG9yZGluYWwgLT0gMHgxMDAwMDsKLSAgICAgICAgICAgICAgICAqdSsrID0gMHhEODAwIHwgKG9yZGluYWwgPj4gMTApOwotICAgICAgICAgICAgICAgICp1KysgPSAweERDMDAgfCAob3JkaW5hbCAmIDB4M0ZGKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAqdSsrID0gKncrKzsKKyAgICAgICAgaWYgKHNpemUgPT0gMCkgeworICAgICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICAgICAgcmV0dXJuIHVuaWNvZGVfZW1wdHk7CiAgICAgICAgIH0KLSAgICB9Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7Ci19Ci0KLSNlbHNlCi0KLVB5T2JqZWN0ICpQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHJlZ2lzdGVyIGNvbnN0IHdjaGFyX3QgKncsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUpCi17Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlOwotCi0gICAgaWYgKHcgPT0gTlVMTCkgewotICAgICAgICBpZiAoc2l6ZSA9PSAwKQotICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCAwKTsKICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KQEAgLTY0NywyOSArMjEyMCwxMCBAQAogICAgICAgICBzaXplID0gd2NzbGVuKHcpOwogICAgIH0KIAotICAgIHVuaWNvZGUgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKLSAgICBpZiAoIXVuaWNvZGUpCi0gICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgLyogQ29weSB0aGUgd2NoYXJfdCBkYXRhIGludG8gdGhlIG5ldyBvYmplY3QgKi8KLSNpZiBQeV9VTklDT0RFX1NJWkUgPT0gU0laRU9GX1dDSEFSX1QKLSAgICBtZW1jcHkodW5pY29kZS0+c3RyLCB3LCBzaXplICogc2l6ZW9mKHdjaGFyX3QpKTsKLSNlbHNlCi0gICAgewotICAgICAgICByZWdpc3RlciBQeV9VTklDT0RFICp1OwotICAgICAgICByZWdpc3RlciBQeV9zc2l6ZV90IGk7Ci0gICAgICAgIHUgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKTsKLSAgICAgICAgZm9yIChpID0gc2l6ZTsgaSA+IDA7IGktLSkKLSAgICAgICAgICAgICp1KysgPSAqdysrOwotICAgIH0KLSNlbmRpZgotCi0gICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZSh3LCBzaXplKTsKIH0KIAotI2VuZGlmIC8qIENPTlZFUlRfV0NIQVJfVE9fU1VSUk9HQVRFUyAqLwotCi0jdW5kZWYgQ09OVkVSVF9XQ0hBUl9UT19TVVJST0dBVEVTCisjZW5kaWYgLyogSEFWRV9XQ0hBUl9IICovCiAKIHN0YXRpYyB2b2lkCiBtYWtlZm10KGNoYXIgKmZtdCwgaW50IGxvbmdmbGFnLCBpbnQgbG9uZ2xvbmdmbGFnLCBpbnQgc2l6ZV90ZmxhZywKQEAgLTcwNywxMCArMjE2MSw3MSBAQAogICAgICpmbXQgPSAnXDAnOwogfQogCi0jZGVmaW5lIGFwcGVuZHN0cmluZyhzdHJpbmcpIHtmb3IgKGNvcHkgPSBzdHJpbmc7KmNvcHk7KSAqcysrID0gKmNvcHkrKzt9CisvKiBoZWxwZXIgZm9yIFB5VW5pY29kZV9Gcm9tRm9ybWF0VigpICovCiAKLS8qIHNpemUgb2YgZml4ZWQtc2l6ZSBidWZmZXIgZm9yIGZvcm1hdHRpbmcgc2luZ2xlIGFyZ3VtZW50cyAqLwotI2RlZmluZSBJVEVNX0JVRkZFUl9MRU4gMjEKK3N0YXRpYyBjb25zdCBjaGFyKgorcGFyc2VfZm9ybWF0X2ZsYWdzKGNvbnN0IGNoYXIgKmYsCisgICAgICAgICAgICAgICAgICAgaW50ICpwX3dpZHRoLCBpbnQgKnBfcHJlY2lzaW9uLAorICAgICAgICAgICAgICAgICAgIGludCAqcF9sb25nZmxhZywgaW50ICpwX2xvbmdsb25nZmxhZywgaW50ICpwX3NpemVfdGZsYWcpCit7CisgICAgaW50IHdpZHRoLCBwcmVjaXNpb24sIGxvbmdmbGFnLCBsb25nbG9uZ2ZsYWcsIHNpemVfdGZsYWc7CisKKyAgICAvKiBwYXJzZSB0aGUgd2lkdGgucHJlY2lzaW9uIHBhcnQsIGUuZy4gIiUyLjVzIiA9PiB3aWR0aD0yLCBwcmVjaXNpb249NSAqLworICAgIGYrKzsKKyAgICB3aWR0aCA9IDA7CisgICAgd2hpbGUgKFB5X0lTRElHSVQoKHVuc2lnbmVkKSpmKSkKKyAgICAgICAgd2lkdGggPSAod2lkdGgqMTApICsgKmYrKyAtICcwJzsKKyAgICBwcmVjaXNpb24gPSAwOworICAgIGlmICgqZiA9PSAnLicpIHsKKyAgICAgICAgZisrOworICAgICAgICB3aGlsZSAoUHlfSVNESUdJVCgodW5zaWduZWQpKmYpKQorICAgICAgICAgICAgcHJlY2lzaW9uID0gKHByZWNpc2lvbioxMCkgKyAqZisrIC0gJzAnOworICAgICAgICBpZiAoKmYgPT0gJyUnKSB7CisgICAgICAgICAgICAvKiAiJS4zJXMiID0+IGYgcG9pbnRzIHRvICIzIiAqLworICAgICAgICAgICAgZi0tOworICAgICAgICB9CisgICAgfQorICAgIGlmICgqZiA9PSAnXDAnKSB7CisgICAgICAgIC8qIGJvZ3VzIGZvcm1hdCAiJS4xIiA9PiBnbyBiYWNrd2FyZCwgZiBwb2ludHMgdG8gIjEiICovCisgICAgICAgIGYtLTsKKyAgICB9CisgICAgaWYgKHBfd2lkdGggIT0gTlVMTCkKKyAgICAgICAgKnBfd2lkdGggPSB3aWR0aDsKKyAgICBpZiAocF9wcmVjaXNpb24gIT0gTlVMTCkKKyAgICAgICAgKnBfcHJlY2lzaW9uID0gcHJlY2lzaW9uOworCisgICAgLyogSGFuZGxlICVsZCwgJWx1LCAlbGxkIGFuZCAlbGx1LiAqLworICAgIGxvbmdmbGFnID0gMDsKKyAgICBsb25nbG9uZ2ZsYWcgPSAwOworICAgIHNpemVfdGZsYWcgPSAwOworCisgICAgaWYgKCpmID09ICdsJykgeworICAgICAgICBpZiAoZlsxXSA9PSAnZCcgfHwgZlsxXSA9PSAndScgfHwgZlsxXSA9PSAnaScpIHsKKyAgICAgICAgICAgIGxvbmdmbGFnID0gMTsKKyAgICAgICAgICAgICsrZjsKKyAgICAgICAgfQorI2lmZGVmIEhBVkVfTE9OR19MT05HCisgICAgICAgIGVsc2UgaWYgKGZbMV0gPT0gJ2wnICYmCisgICAgICAgICAgICAgICAgIChmWzJdID09ICdkJyB8fCBmWzJdID09ICd1JyB8fCBmWzJdID09ICdpJykpIHsKKyAgICAgICAgICAgIGxvbmdsb25nZmxhZyA9IDE7CisgICAgICAgICAgICBmICs9IDI7CisgICAgICAgIH0KKyNlbmRpZgorICAgIH0KKyAgICAvKiBoYW5kbGUgdGhlIHNpemVfdCBmbGFnLiAqLworICAgIGVsc2UgaWYgKCpmID09ICd6JyAmJiAoZlsxXSA9PSAnZCcgfHwgZlsxXSA9PSAndScgfHwgZlsxXSA9PSAnaScpKSB7CisgICAgICAgIHNpemVfdGZsYWcgPSAxOworICAgICAgICArK2Y7CisgICAgfQorICAgIGlmIChwX2xvbmdmbGFnICE9IE5VTEwpCisgICAgICAgICpwX2xvbmdmbGFnID0gbG9uZ2ZsYWc7CisgICAgaWYgKHBfbG9uZ2xvbmdmbGFnICE9IE5VTEwpCisgICAgICAgICpwX2xvbmdsb25nZmxhZyA9IGxvbmdsb25nZmxhZzsKKyAgICBpZiAocF9zaXplX3RmbGFnICE9IE5VTEwpCisgICAgICAgICpwX3NpemVfdGZsYWcgPSBzaXplX3RmbGFnOworICAgIHJldHVybiBmOworfQorCiAvKiBtYXhpbXVtIG51bWJlciBvZiBjaGFyYWN0ZXJzIHJlcXVpcmVkIGZvciBvdXRwdXQgb2YgJWxkLiAgMjEgY2hhcmFjdGVycwogICAgYWxsb3dzIGZvciA2NC1iaXQgaW50ZWdlcnMgKGluIGRlY2ltYWwpIGFuZCBhbiBvcHRpb25hbCBzaWduLiAqLwogI2RlZmluZSBNQVhfTE9OR19DSEFSUyAyMQpAQCAtNzMxLDEwNiArMjI0NiwzNSBAQAogICAgIGludCBwcmVjaXNpb24gPSAwOwogICAgIGludCB6ZXJvcGFkOwogICAgIGNvbnN0IGNoYXIqIGY7Ci0gICAgUHlfVU5JQ09ERSAqczsKICAgICBQeU9iamVjdCAqc3RyaW5nOwogICAgIC8qIHVzZWQgYnkgc3ByaW50ZiAqLwotICAgIGNoYXIgYnVmZmVyW0lURU1fQlVGRkVSX0xFTisxXTsKLSAgICAvKiB1c2UgYWJ1ZmZlciBpbnN0ZWFkIG9mIGJ1ZmZlciwgaWYgd2UgbmVlZCBtb3JlIHNwYWNlCi0gICAgICogKHdoaWNoIGNhbiBoYXBwZW4gaWYgdGhlcmUncyBhIGZvcm1hdCBzcGVjaWZpZXIgd2l0aCB3aWR0aCkuICovCi0gICAgY2hhciAqYWJ1ZmZlciA9IE5VTEw7Ci0gICAgY2hhciAqcmVhbGJ1ZmZlcjsKLSAgICBQeV9zc2l6ZV90IGFidWZmZXJzaXplID0gMDsKICAgICBjaGFyIGZtdFs2MV07IC8qIHNob3VsZCBiZSBlbm91Z2ggZm9yICUwd2lkdGgucHJlY2lzaW9ubGxkICovCi0gICAgY29uc3QgY2hhciAqY29weTsKKyAgICBQeV9VQ1M0IG1heGNoYXIgPSAxMjc7IC8qIHJlc3VsdCBpcyBBU0NJSSBieSBkZWZhdWx0ICovCisgICAgUHlfVUNTNCBhcmdtYXhjaGFyOworICAgIFB5X3NzaXplX3QgbnVtYmVyc2l6ZSA9IDA7CisgICAgY2hhciAqbnVtYmVycmVzdWx0cyA9IE5VTEw7CisgICAgY2hhciAqbnVtYmVycmVzdWx0ID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGk7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKIAogICAgIFB5X1ZBX0NPUFkoY291bnQsIHZhcmdzKTsKICAgICAvKiBzdGVwIDE6IGNvdW50IHRoZSBudW1iZXIgb2YgJVMvJVIvJUEvJXMgZm9ybWF0IHNwZWNpZmljYXRpb25zCiAgICAgICogKHdlIGNhbGwgUHlPYmplY3RfU3RyKCkvUHlPYmplY3RfUmVwcigpL1B5T2JqZWN0X0FTQ0lJKCkvCiAgICAgICogUHlVbmljb2RlX0RlY29kZVVURjgoKSBmb3IgdGhlc2Ugb2JqZWN0cyBvbmNlIGR1cmluZyBzdGVwIDMgYW5kIHB1dCB0aGUKLSAgICAgKiByZXN1bHQgaW4gYW4gYXJyYXkpICovCi0gICAgZm9yIChmID0gZm9ybWF0OyAqZjsgZisrKSB7Ci0gICAgICAgICBpZiAoKmYgPT0gJyUnKSB7Ci0gICAgICAgICAgICAgaWYgKCooZisxKT09JyUnKQotICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICBpZiAoKihmKzEpPT0nUycgfHwgKihmKzEpPT0nUicgfHwgKihmKzEpPT0nQScgfHwgKihmKzEpID09ICdWJykKLSAgICAgICAgICAgICAgICAgKytjYWxsY291bnQ7Ci0gICAgICAgICAgICAgd2hpbGUgKFB5X0lTRElHSVQoKHVuc2lnbmVkKSpmKSkKLSAgICAgICAgICAgICAgICAgd2lkdGggPSAod2lkdGgqMTApICsgKmYrKyAtICcwJzsKLSAgICAgICAgICAgICB3aGlsZSAoKisrZiAmJiAqZiAhPSAnJScgJiYgIVB5X0lTQUxQSEEoKHVuc2lnbmVkKSpmKSkKLSAgICAgICAgICAgICAgICAgOwotICAgICAgICAgICAgIGlmICgqZiA9PSAncycpCi0gICAgICAgICAgICAgICAgICsrY2FsbGNvdW50OwotICAgICAgICAgfQotICAgICAgICAgZWxzZSBpZiAoMTI4IDw9ICh1bnNpZ25lZCBjaGFyKSpmKSB7Ci0gICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgIlB5VW5pY29kZV9Gcm9tRm9ybWF0VigpIGV4cGVjdHMgYW4gQVNDSUktZW5jb2RlZCBmb3JtYXQgIgotICAgICAgICAgICAgICAgICJzdHJpbmcsIGdvdCBhIG5vbi1BU0NJSSBieXRlOiAweCUwMngiLAotICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyKSpmKTsKLSAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgIH0KLSAgICB9Ci0gICAgLyogc3RlcCAyOiBhbGxvY2F0ZSBtZW1vcnkgZm9yIHRoZSByZXN1bHRzIG9mCi0gICAgICogUHlPYmplY3RfU3RyKCkvUHlPYmplY3RfUmVwcigpL1B5VW5pY29kZV9EZWNvZGVVVEY4KCkgY2FsbHMgKi8KLSAgICBpZiAoY2FsbGNvdW50KSB7Ci0gICAgICAgIGNhbGxyZXN1bHRzID0gUHlPYmplY3RfTWFsbG9jKHNpemVvZihQeU9iamVjdCAqKSpjYWxsY291bnQpOwotICAgICAgICBpZiAoIWNhbGxyZXN1bHRzKSB7Ci0gICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgY2FsbHJlc3VsdCA9IGNhbGxyZXN1bHRzOwotICAgIH0KLSAgICAvKiBzdGVwIDM6IGZpZ3VyZSBvdXQgaG93IGxhcmdlIGEgYnVmZmVyIHdlIG5lZWQgKi8KKyAgICAgKiByZXN1bHQgaW4gYW4gYXJyYXkpCisgICAgICogYWxzbyBlc3RpbWF0ZSBhIHVwcGVyIGJvdW5kIGZvciBhbGwgdGhlIG51bWJlciBmb3JtYXRzIGluIHRoZSBzdHJpbmcsCisgICAgICogbnVtYmVycyB3aWxsIGJlIGZvcm1hdHRlZCBpbiBzdGVwIDMgYW5kIGJlIGtlcHQgaW4gYSAnXDAnLXNlcGFyYXRlZAorICAgICAqIGJ1ZmZlciBiZWZvcmUgcHV0dGluZyBldmVyeXRoaW5nIHRvZ2V0aGVyLiAqLwogICAgIGZvciAoZiA9IGZvcm1hdDsgKmY7IGYrKykgewogICAgICAgICBpZiAoKmYgPT0gJyUnKSB7Ci0jaWZkZWYgSEFWRV9MT05HX0xPTkcKLSAgICAgICAgICAgIGludCBsb25nbG9uZ2ZsYWcgPSAwOwotI2VuZGlmCi0gICAgICAgICAgICBjb25zdCBjaGFyKiBwID0gZjsKLSAgICAgICAgICAgIHdpZHRoID0gMDsKLSAgICAgICAgICAgIHdoaWxlIChQeV9JU0RJR0lUKCh1bnNpZ25lZCkqZikpCi0gICAgICAgICAgICAgICAgd2lkdGggPSAod2lkdGgqMTApICsgKmYrKyAtICcwJzsKLSAgICAgICAgICAgIHdoaWxlICgqKytmICYmICpmICE9ICclJyAmJiAhUHlfSVNBTFBIQSgodW5zaWduZWQpKmYpKQotICAgICAgICAgICAgICAgIDsKKyAgICAgICAgICAgIGludCBsb25nbG9uZ2ZsYWc7CisgICAgICAgICAgICAvKiBza2lwIHdpZHRoIG9yIHdpZHRoLnByZWNpc2lvbiAoZWcuICIxLjIiIG9mICIlMS4yZiIpICovCisgICAgICAgICAgICBmID0gcGFyc2VfZm9ybWF0X2ZsYWdzKGYsICZ3aWR0aCwgTlVMTCwgTlVMTCwgJmxvbmdsb25nZmxhZywgTlVMTCk7CisgICAgICAgICAgICBpZiAoKmYgPT0gJ3MnIHx8ICpmPT0nUycgfHwgKmY9PSdSJyB8fCAqZj09J0EnIHx8ICpmPT0nVicpCisgICAgICAgICAgICAgICAgKytjYWxsY291bnQ7CiAKLSAgICAgICAgICAgIC8qIHNraXAgdGhlICdsJyBvciAneicgaW4geyVsZCwgJXpkLCAlbHUsICV6dX0gc2luY2UKLSAgICAgICAgICAgICAqIHRoZXkgZG9uJ3QgYWZmZWN0IHRoZSBhbW91bnQgb2Ygc3BhY2Ugd2UgcmVzZXJ2ZS4KLSAgICAgICAgICAgICAqLwotICAgICAgICAgICAgaWYgKCpmID09ICdsJykgewotICAgICAgICAgICAgICAgIGlmIChmWzFdID09ICdkJyB8fCBmWzFdID09ICd1JykgewotICAgICAgICAgICAgICAgICAgICArK2Y7Ci0gICAgICAgICAgICAgICAgfQotI2lmZGVmIEhBVkVfTE9OR19MT05HCi0gICAgICAgICAgICAgICAgZWxzZSBpZiAoZlsxXSA9PSAnbCcgJiYKLSAgICAgICAgICAgICAgICAgICAgICAgICAoZlsyXSA9PSAnZCcgfHwgZlsyXSA9PSAndScpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGxvbmdsb25nZmxhZyA9IDE7Ci0gICAgICAgICAgICAgICAgICAgIGYgKz0gMjsKLSAgICAgICAgICAgICAgICB9Ci0jZW5kaWYKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgaWYgKCpmID09ICd6JyAmJiAoZlsxXSA9PSAnZCcgfHwgZlsxXSA9PSAndScpKSB7Ci0gICAgICAgICAgICAgICAgKytmOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBzd2l0Y2ggKCpmKSB7Ci0gICAgICAgICAgICBjYXNlICdjJzoKLSAgICAgICAgICAgIHsKLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgICAgICAgICAgICAgaW50IG9yZGluYWwgPSB2YV9hcmcoY291bnQsIGludCk7Ci0gICAgICAgICAgICAgICAgaWYgKG9yZGluYWwgPiAweGZmZmYpCi0gICAgICAgICAgICAgICAgICAgIG4gKz0gMjsKLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIG4rKzsKLSNlbHNlCi0gICAgICAgICAgICAgICAgKHZvaWQpdmFfYXJnKGNvdW50LCBpbnQpOwotICAgICAgICAgICAgICAgIG4rKzsKLSNlbmRpZgotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgY2FzZSAnJSc6Ci0gICAgICAgICAgICAgICAgbisrOwotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgY2FzZSAnZCc6IGNhc2UgJ3UnOiBjYXNlICdpJzogY2FzZSAneCc6Ci0gICAgICAgICAgICAgICAgKHZvaWQpIHZhX2FyZyhjb3VudCwgaW50KTsKKyAgICAgICAgICAgIGVsc2UgaWYgKCpmID09ICdkJyB8fCAqZj09J3UnIHx8ICpmPT0naScgfHwgKmY9PSd4JyB8fCAqZj09J3AnKSB7CiAjaWZkZWYgSEFWRV9MT05HX0xPTkcKICAgICAgICAgICAgICAgICBpZiAobG9uZ2xvbmdmbGFnKSB7CiAgICAgICAgICAgICAgICAgICAgIGlmICh3aWR0aCA8IE1BWF9MT05HX0xPTkdfQ0hBUlMpCkBAIC04NDQsMTkgKzIyODgsMTU1IEBACiAgICAgICAgICAgICAgICAgICAgICAgIG5lZWQgbW9yZSAod2hpY2ggd2UgYWxsb2NhdGUgbGF0ZXIpLiAqLwogICAgICAgICAgICAgICAgICAgICBpZiAod2lkdGggPCBNQVhfTE9OR19DSEFSUykKICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoID0gTUFYX0xPTkdfQ0hBUlM7Ci0gICAgICAgICAgICAgICAgbiArPSB3aWR0aDsKLSAgICAgICAgICAgICAgICAvKiBYWFggc2hvdWxkIGFsbG93IGZvciBsYXJnZSBwcmVjaXNpb24gaGVyZSB0b28uICovCi0gICAgICAgICAgICAgICAgaWYgKGFidWZmZXJzaXplIDwgd2lkdGgpCi0gICAgICAgICAgICAgICAgICAgIGFidWZmZXJzaXplID0gd2lkdGg7CisKKyAgICAgICAgICAgICAgICAvKiBhY2NvdW50IGZvciB0aGUgc2l6ZSArICdcMCcgdG8gc2VwYXJhdGUgbnVtYmVycworICAgICAgICAgICAgICAgICAgIGluc2lkZSBvZiB0aGUgbnVtYmVycmVzdWx0cyBidWZmZXIgKi8KKyAgICAgICAgICAgICAgICBudW1iZXJzaXplICs9ICh3aWR0aCArIDEpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKCh1bnNpZ25lZCBjaGFyKSpmID4gMTI3KSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAiUHlVbmljb2RlX0Zyb21Gb3JtYXRWKCkgZXhwZWN0cyBhbiBBU0NJSS1lbmNvZGVkIGZvcm1hdCAiCisgICAgICAgICAgICAgICAgInN0cmluZywgZ290IGEgbm9uLUFTQ0lJIGJ5dGU6IDB4JTAyeCIsCisgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIpKmYpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICB9CisgICAgLyogc3RlcCAyOiBhbGxvY2F0ZSBtZW1vcnkgZm9yIHRoZSByZXN1bHRzIG9mCisgICAgICogUHlPYmplY3RfU3RyKCkvUHlPYmplY3RfUmVwcigpL1B5VW5pY29kZV9EZWNvZGVVVEY4KCkgY2FsbHMgKi8KKyAgICBpZiAoY2FsbGNvdW50KSB7CisgICAgICAgIGNhbGxyZXN1bHRzID0gUHlPYmplY3RfTWFsbG9jKHNpemVvZihQeU9iamVjdCAqKSAqIGNhbGxjb3VudCk7CisgICAgICAgIGlmICghY2FsbHJlc3VsdHMpIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBjYWxscmVzdWx0ID0gY2FsbHJlc3VsdHM7CisgICAgfQorICAgIC8qIHN0ZXAgMi41OiBhbGxvY2F0ZSBtZW1vcnkgZm9yIHRoZSByZXN1bHRzIG9mIGZvcm1hdGluZyBudW1iZXJzICovCisgICAgaWYgKG51bWJlcnNpemUpIHsKKyAgICAgICAgbnVtYmVycmVzdWx0cyA9IFB5T2JqZWN0X01hbGxvYyhudW1iZXJzaXplKTsKKyAgICAgICAgaWYgKCFudW1iZXJyZXN1bHRzKSB7CisgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICB9CisgICAgICAgIG51bWJlcnJlc3VsdCA9IG51bWJlcnJlc3VsdHM7CisgICAgfQorCisgICAgLyogc3RlcCAzOiBmb3JtYXQgbnVtYmVycyBhbmQgZmlndXJlIG91dCBob3cgbGFyZ2UgYSBidWZmZXIgd2UgbmVlZCAqLworICAgIGZvciAoZiA9IGZvcm1hdDsgKmY7IGYrKykgeworICAgICAgICBpZiAoKmYgPT0gJyUnKSB7CisgICAgICAgICAgICBjb25zdCBjaGFyKiBwOworICAgICAgICAgICAgaW50IGxvbmdmbGFnOworICAgICAgICAgICAgaW50IGxvbmdsb25nZmxhZzsKKyAgICAgICAgICAgIGludCBzaXplX3RmbGFnOworICAgICAgICAgICAgaW50IG51bXByaW50ZWQ7CisKKyAgICAgICAgICAgIHAgPSBmOworICAgICAgICAgICAgemVyb3BhZCA9IChmWzFdID09ICcwJyk7CisgICAgICAgICAgICBmID0gcGFyc2VfZm9ybWF0X2ZsYWdzKGYsICZ3aWR0aCwgJnByZWNpc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmxvbmdmbGFnLCAmbG9uZ2xvbmdmbGFnLCAmc2l6ZV90ZmxhZyk7CisgICAgICAgICAgICBzd2l0Y2ggKCpmKSB7CisgICAgICAgICAgICBjYXNlICdjJzoKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBQeV9VQ1M0IG9yZGluYWwgPSB2YV9hcmcoY291bnQsIGludCk7CisgICAgICAgICAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBvcmRpbmFsKTsKKyAgICAgICAgICAgICAgICBuKys7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBjYXNlICclJzoKKyAgICAgICAgICAgICAgICBuKys7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlICdpJzoKKyAgICAgICAgICAgIGNhc2UgJ2QnOgorICAgICAgICAgICAgICAgIG1ha2VmbXQoZm10LCBsb25nZmxhZywgbG9uZ2xvbmdmbGFnLCBzaXplX3RmbGFnLCB6ZXJvcGFkLAorICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGgsIHByZWNpc2lvbiwgKmYpOworICAgICAgICAgICAgICAgIGlmIChsb25nZmxhZykKKyAgICAgICAgICAgICAgICAgICAgbnVtcHJpbnRlZCA9IHNwcmludGYobnVtYmVycmVzdWx0LCBmbXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhX2FyZyhjb3VudCwgbG9uZykpOworI2lmZGVmIEhBVkVfTE9OR19MT05HCisgICAgICAgICAgICAgICAgZWxzZSBpZiAobG9uZ2xvbmdmbGFnKQorICAgICAgICAgICAgICAgICAgICBudW1wcmludGVkID0gc3ByaW50ZihudW1iZXJyZXN1bHQsIGZtdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFfYXJnKGNvdW50LCBQWV9MT05HX0xPTkcpKTsKKyNlbmRpZgorICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNpemVfdGZsYWcpCisgICAgICAgICAgICAgICAgICAgIG51bXByaW50ZWQgPSBzcHJpbnRmKG51bWJlcnJlc3VsdCwgZm10LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YV9hcmcoY291bnQsIFB5X3NzaXplX3QpKTsKKyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIG51bXByaW50ZWQgPSBzcHJpbnRmKG51bWJlcnJlc3VsdCwgZm10LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YV9hcmcoY291bnQsIGludCkpOworICAgICAgICAgICAgICAgIG4gKz0gbnVtcHJpbnRlZDsKKyAgICAgICAgICAgICAgICAvKiBhZHZhbmNlIGJ5ICsxIHRvIHNraXAgb3ZlciB0aGUgJ1wwJyAqLworICAgICAgICAgICAgICAgIG51bWJlcnJlc3VsdCArPSAobnVtcHJpbnRlZCArIDEpOworICAgICAgICAgICAgICAgIGFzc2VydCgqKG51bWJlcnJlc3VsdCAtIDEpID09ICdcMCcpOworICAgICAgICAgICAgICAgIGFzc2VydCgqKG51bWJlcnJlc3VsdCAtIDIpICE9ICdcMCcpOworICAgICAgICAgICAgICAgIGFzc2VydChudW1wcmludGVkID49IDApOworICAgICAgICAgICAgICAgIGFzc2VydChudW1iZXJyZXN1bHQgPD0gbnVtYmVycmVzdWx0cyArIG51bWJlcnNpemUpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSAndSc6CisgICAgICAgICAgICAgICAgbWFrZWZtdChmbXQsIGxvbmdmbGFnLCBsb25nbG9uZ2ZsYWcsIHNpemVfdGZsYWcsIHplcm9wYWQsCisgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCwgcHJlY2lzaW9uLCAndScpOworICAgICAgICAgICAgICAgIGlmIChsb25nZmxhZykKKyAgICAgICAgICAgICAgICAgICAgbnVtcHJpbnRlZCA9IHNwcmludGYobnVtYmVycmVzdWx0LCBmbXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhX2FyZyhjb3VudCwgdW5zaWduZWQgbG9uZykpOworI2lmZGVmIEhBVkVfTE9OR19MT05HCisgICAgICAgICAgICAgICAgZWxzZSBpZiAobG9uZ2xvbmdmbGFnKQorICAgICAgICAgICAgICAgICAgICBudW1wcmludGVkID0gc3ByaW50ZihudW1iZXJyZXN1bHQsIGZtdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFfYXJnKGNvdW50LCB1bnNpZ25lZCBQWV9MT05HX0xPTkcpKTsKKyNlbmRpZgorICAgICAgICAgICAgICAgIGVsc2UgaWYgKHNpemVfdGZsYWcpCisgICAgICAgICAgICAgICAgICAgIG51bXByaW50ZWQgPSBzcHJpbnRmKG51bWJlcnJlc3VsdCwgZm10LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YV9hcmcoY291bnQsIHNpemVfdCkpOworICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgbnVtcHJpbnRlZCA9IHNwcmludGYobnVtYmVycmVzdWx0LCBmbXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhX2FyZyhjb3VudCwgdW5zaWduZWQgaW50KSk7CisgICAgICAgICAgICAgICAgbiArPSBudW1wcmludGVkOworICAgICAgICAgICAgICAgIG51bWJlcnJlc3VsdCArPSAobnVtcHJpbnRlZCArIDEpOworICAgICAgICAgICAgICAgIGFzc2VydCgqKG51bWJlcnJlc3VsdCAtIDEpID09ICdcMCcpOworICAgICAgICAgICAgICAgIGFzc2VydCgqKG51bWJlcnJlc3VsdCAtIDIpICE9ICdcMCcpOworICAgICAgICAgICAgICAgIGFzc2VydChudW1wcmludGVkID49IDApOworICAgICAgICAgICAgICAgIGFzc2VydChudW1iZXJyZXN1bHQgPD0gbnVtYmVycmVzdWx0cyArIG51bWJlcnNpemUpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSAneCc6CisgICAgICAgICAgICAgICAgbWFrZWZtdChmbXQsIDAsIDAsIDAsIHplcm9wYWQsIHdpZHRoLCBwcmVjaXNpb24sICd4Jyk7CisgICAgICAgICAgICAgICAgbnVtcHJpbnRlZCA9IHNwcmludGYobnVtYmVycmVzdWx0LCBmbXQsIHZhX2FyZyhjb3VudCwgaW50KSk7CisgICAgICAgICAgICAgICAgbiArPSBudW1wcmludGVkOworICAgICAgICAgICAgICAgIG51bWJlcnJlc3VsdCArPSAobnVtcHJpbnRlZCArIDEpOworICAgICAgICAgICAgICAgIGFzc2VydCgqKG51bWJlcnJlc3VsdCAtIDEpID09ICdcMCcpOworICAgICAgICAgICAgICAgIGFzc2VydCgqKG51bWJlcnJlc3VsdCAtIDIpICE9ICdcMCcpOworICAgICAgICAgICAgICAgIGFzc2VydChudW1wcmludGVkID49IDApOworICAgICAgICAgICAgICAgIGFzc2VydChudW1iZXJyZXN1bHQgPD0gbnVtYmVycmVzdWx0cyArIG51bWJlcnNpemUpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSAncCc6CisgICAgICAgICAgICAgICAgbnVtcHJpbnRlZCA9IHNwcmludGYobnVtYmVycmVzdWx0LCAiJXAiLCB2YV9hcmcoY291bnQsIHZvaWQqKSk7CisgICAgICAgICAgICAgICAgLyogJXAgaXMgaWxsLWRlZmluZWQ6ICBlbnN1cmUgbGVhZGluZyAweC4gKi8KKyAgICAgICAgICAgICAgICBpZiAobnVtYmVycmVzdWx0WzFdID09ICdYJykKKyAgICAgICAgICAgICAgICAgICAgbnVtYmVycmVzdWx0WzFdID0gJ3gnOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKG51bWJlcnJlc3VsdFsxXSAhPSAneCcpIHsKKyAgICAgICAgICAgICAgICAgICAgbWVtbW92ZShudW1iZXJyZXN1bHQgKyAyLCBudW1iZXJyZXN1bHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RybGVuKG51bWJlcnJlc3VsdCkgKyAxKTsKKyAgICAgICAgICAgICAgICAgICAgbnVtYmVycmVzdWx0WzBdID0gJzAnOworICAgICAgICAgICAgICAgICAgICBudW1iZXJyZXN1bHRbMV0gPSAneCc7CisgICAgICAgICAgICAgICAgICAgIG51bXByaW50ZWQgKz0gMjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgbiArPSBudW1wcmludGVkOworICAgICAgICAgICAgICAgIG51bWJlcnJlc3VsdCArPSAobnVtcHJpbnRlZCArIDEpOworICAgICAgICAgICAgICAgIGFzc2VydCgqKG51bWJlcnJlc3VsdCAtIDEpID09ICdcMCcpOworICAgICAgICAgICAgICAgIGFzc2VydCgqKG51bWJlcnJlc3VsdCAtIDIpICE9ICdcMCcpOworICAgICAgICAgICAgICAgIGFzc2VydChudW1wcmludGVkID49IDApOworICAgICAgICAgICAgICAgIGFzc2VydChudW1iZXJyZXN1bHQgPD0gbnVtYmVycmVzdWx0cyArIG51bWJlcnNpemUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgY2FzZSAncyc6CiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgLyogVVRGLTggKi8KICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzID0gdmFfYXJnKGNvdW50LCBjb25zdCBjaGFyKik7Ci0gICAgICAgICAgICAgICAgUHlPYmplY3QgKnN0ciA9IFB5VW5pY29kZV9EZWNvZGVVVEY4KHMsIHN0cmxlbihzKSwgInJlcGxhY2UiKTsKKyAgICAgICAgICAgICAgICBQeU9iamVjdCAqc3RyID0gUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChzLCBzdHJsZW4ocyksICJyZXBsYWNlIiwgTlVMTCk7CiAgICAgICAgICAgICAgICAgaWYgKCFzdHIpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgICAgICBuICs9IFB5VW5pY29kZV9HRVRfU0laRShzdHIpOworICAgICAgICAgICAgICAgIC8qIHNpbmNlIFB5VW5pY29kZV9EZWNvZGVVVEY4IHJldHVybnMgYWxyZWFkeSBmbGV4aWJsZQorICAgICAgICAgICAgICAgICAgIHVuaWNvZGUgb2JqZWN0cywgdGhlcmUgaXMgbm8gbmVlZCB0byBjYWxsIHJlYWR5IG9uIHRoZW0gKi8KKyAgICAgICAgICAgICAgICBhcmdtYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHN0cik7CisgICAgICAgICAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBhcmdtYXhjaGFyKTsKKyAgICAgICAgICAgICAgICBuICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cik7CiAgICAgICAgICAgICAgICAgLyogUmVtZW1iZXIgdGhlIHN0ciBhbmQgc3dpdGNoIHRvIHRoZSBuZXh0IHNsb3QgKi8KICAgICAgICAgICAgICAgICAqY2FsbHJlc3VsdCsrID0gc3RyOwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtODY0LDggKzI0NDQsMTIgQEAKICAgICAgICAgICAgIGNhc2UgJ1UnOgogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpvYmogPSB2YV9hcmcoY291bnQsIFB5T2JqZWN0ICopOwotICAgICAgICAgICAgICAgIGFzc2VydChvYmogJiYgUHlVbmljb2RlX0NoZWNrKG9iaikpOwotICAgICAgICAgICAgICAgIG4gKz0gUHlVbmljb2RlX0dFVF9TSVpFKG9iaik7CisgICAgICAgICAgICAgICAgYXNzZXJ0KG9iaiAmJiBfUHlVbmljb2RlX0NIRUNLKG9iaikpOworICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSA9PSAtMSkKKyAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICAgICAgICAgIGFyZ21heGNoYXIgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUob2JqKTsKKyAgICAgICAgICAgICAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIGFyZ21heGNoYXIpOworICAgICAgICAgICAgICAgIG4gKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGNhc2UgJ1YnOgpAQCAtODc0LDE2ICsyNDU4LDI2IEBACiAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqc3RyID0gdmFfYXJnKGNvdW50LCBjb25zdCBjaGFyICopOwogICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdHJfb2JqOwogICAgICAgICAgICAgICAgIGFzc2VydChvYmogfHwgc3RyKTsKLSAgICAgICAgICAgICAgICBhc3NlcnQoIW9iaiB8fCBQeVVuaWNvZGVfQ2hlY2sob2JqKSk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KCFvYmogfHwgX1B5VW5pY29kZV9DSEVDSyhvYmopKTsKICAgICAgICAgICAgICAgICBpZiAob2JqKSB7Ci0gICAgICAgICAgICAgICAgICAgIG4gKz0gUHlVbmljb2RlX0dFVF9TSVpFKG9iaik7CisgICAgICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkob2JqKSA9PSAtMSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgICAgICAgICAgICAgYXJnbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShvYmopOworICAgICAgICAgICAgICAgICAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIGFyZ21heGNoYXIpOworICAgICAgICAgICAgICAgICAgICBuICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKG9iaik7CiAgICAgICAgICAgICAgICAgICAgICpjYWxscmVzdWx0KysgPSBOVUxMOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgc3RyX29iaiA9IFB5VW5pY29kZV9EZWNvZGVVVEY4KHN0ciwgc3RybGVuKHN0ciksICJyZXBsYWNlIik7CisgICAgICAgICAgICAgICAgICAgIHN0cl9vYmogPSBQeVVuaWNvZGVfRGVjb2RlVVRGOFN0YXRlZnVsKHN0ciwgc3RybGVuKHN0ciksICJyZXBsYWNlIiwgTlVMTCk7CiAgICAgICAgICAgICAgICAgICAgIGlmICghc3RyX29iaikKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyX29iaik7CisgICAgICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3RyX29iaikgPT0gLTEpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihzdHJfb2JqKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBhcmdtYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHN0cl9vYmopOworICAgICAgICAgICAgICAgICAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIGFyZ21heGNoYXIpOworICAgICAgICAgICAgICAgICAgICBuICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cl9vYmopOwogICAgICAgICAgICAgICAgICAgICAqY2FsbHJlc3VsdCsrID0gc3RyX29iajsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC04OTYsNyArMjQ5MCwxMyBAQAogICAgICAgICAgICAgICAgIHN0ciA9IFB5T2JqZWN0X1N0cihvYmopOwogICAgICAgICAgICAgICAgIGlmICghc3RyKQogICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKTsKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN0cikgPT0gLTEpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHN0cik7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgYXJnbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShzdHIpOworICAgICAgICAgICAgICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgYXJnbWF4Y2hhcik7CisgICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpOwogICAgICAgICAgICAgICAgIC8qIFJlbWVtYmVyIHRoZSBzdHIgYW5kIHN3aXRjaCB0byB0aGUgbmV4dCBzbG90ICovCiAgICAgICAgICAgICAgICAgKmNhbGxyZXN1bHQrKyA9IHN0cjsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTkwOSw3ICsyNTA5LDEzIEBACiAgICAgICAgICAgICAgICAgcmVwciA9IFB5T2JqZWN0X1JlcHIob2JqKTsKICAgICAgICAgICAgICAgICBpZiAoIXJlcHIpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgICAgICBuICs9IFB5VW5pY29kZV9HRVRfU0laRShyZXByKTsKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHJlcHIpID09IC0xKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXByKTsKKyAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBhcmdtYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHJlcHIpOworICAgICAgICAgICAgICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgYXJnbWF4Y2hhcik7CisgICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZXByKTsKICAgICAgICAgICAgICAgICAvKiBSZW1lbWJlciB0aGUgcmVwciBhbmQgc3dpdGNoIHRvIHRoZSBuZXh0IHNsb3QgKi8KICAgICAgICAgICAgICAgICAqY2FsbHJlc3VsdCsrID0gcmVwcjsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTkyMiwyMCArMjUyOCwxNyBAQAogICAgICAgICAgICAgICAgIGFzY2lpID0gUHlPYmplY3RfQVNDSUkob2JqKTsKICAgICAgICAgICAgICAgICBpZiAoIWFzY2lpKQogICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICAgICAgbiArPSBQeVVuaWNvZGVfR0VUX1NJWkUoYXNjaWkpOworICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoYXNjaWkpID09IC0xKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihhc2NpaSk7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgYXJnbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShhc2NpaSk7CisgICAgICAgICAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBhcmdtYXhjaGFyKTsKKyAgICAgICAgICAgICAgICBuICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGFzY2lpKTsKICAgICAgICAgICAgICAgICAvKiBSZW1lbWJlciB0aGUgcmVwciBhbmQgc3dpdGNoIHRvIHRoZSBuZXh0IHNsb3QgKi8KICAgICAgICAgICAgICAgICAqY2FsbHJlc3VsdCsrID0gYXNjaWk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBjYXNlICdwJzoKLSAgICAgICAgICAgICAgICAodm9pZCkgdmFfYXJnKGNvdW50LCBpbnQpOwotICAgICAgICAgICAgICAgIC8qIG1heGltdW0gNjQtYml0IHBvaW50ZXIgcmVwcmVzZW50YXRpb246Ci0gICAgICAgICAgICAgICAgICogMHhmZmZmZmZmZmZmZmZmZmZmCi0gICAgICAgICAgICAgICAgICogc28gMTkgY2hhcmFjdGVycyBpcyBlbm91Z2guCi0gICAgICAgICAgICAgICAgICogWFhYIEkgY291bnQgMTggLS0gd2hhdCdzIHRoZSBleHRyYSBmb3I/Ci0gICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgbiArPSAxOTsKLSAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgLyogaWYgd2Ugc3R1bWJsZSB1cG9uIGFuIHVua25vd24KICAgICAgICAgICAgICAgICAgICBmb3JtYXR0aW5nIGNvZGUsIGNvcHkgdGhlIHJlc3Qgb2YKQEAgLTk1MCwxMjcgKzI1NTMsNjMgQEAKICAgICAgICAgICAgIG4rKzsKICAgICB9CiAgIGV4cGFuZDoKLSAgICBpZiAoYWJ1ZmZlcnNpemUgPiBJVEVNX0JVRkZFUl9MRU4pIHsKLSAgICAgICAgLyogYWRkIDEgZm9yIHNwcmludGYncyB0cmFpbGluZyBudWxsIGJ5dGUgKi8KLSAgICAgICAgYWJ1ZmZlciA9IFB5T2JqZWN0X01hbGxvYyhhYnVmZmVyc2l6ZSArIDEpOwotICAgICAgICBpZiAoIWFidWZmZXIpIHsKLSAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgIH0KLSAgICAgICAgcmVhbGJ1ZmZlciA9IGFidWZmZXI7Ci0gICAgfQotICAgIGVsc2UKLSAgICAgICAgcmVhbGJ1ZmZlciA9IGJ1ZmZlcjsKICAgICAvKiBzdGVwIDQ6IGZpbGwgdGhlIGJ1ZmZlciAqLwotICAgIC8qIFNpbmNlIHdlJ3ZlIGFuYWx5emVkIGhvdyBtdWNoIHNwYWNlIHdlIG5lZWQgZm9yIHRoZSB3b3JzdCBjYXNlLAorICAgIC8qIFNpbmNlIHdlJ3ZlIGFuYWx5emVkIGhvdyBtdWNoIHNwYWNlIHdlIG5lZWQsCiAgICAgICAgd2UgZG9uJ3QgaGF2ZSB0byByZXNpemUgdGhlIHN0cmluZy4KICAgICAgICBUaGVyZSBjYW4gYmUgbm8gZXJyb3JzIGJleW9uZCB0aGlzIHBvaW50LiAqLwotICAgIHN0cmluZyA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBuKTsKKyAgICBzdHJpbmcgPSBQeVVuaWNvZGVfTmV3KG4sIG1heGNoYXIpOwogICAgIGlmICghc3RyaW5nKQogICAgICAgICBnb3RvIGZhaWw7Ci0KLSAgICBzID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyaW5nKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc3RyaW5nKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc3RyaW5nKTsKICAgICBjYWxscmVzdWx0ID0gY2FsbHJlc3VsdHM7CisgICAgbnVtYmVycmVzdWx0ID0gbnVtYmVycmVzdWx0czsKIAotICAgIGZvciAoZiA9IGZvcm1hdDsgKmY7IGYrKykgeworICAgIGZvciAoaSA9IDAsIGYgPSBmb3JtYXQ7ICpmOyBmKyspIHsKICAgICAgICAgaWYgKCpmID09ICclJykgewotICAgICAgICAgICAgY29uc3QgY2hhciogcCA9IGYrKzsKLSAgICAgICAgICAgIGludCBsb25nZmxhZyA9IDA7Ci0gICAgICAgICAgICBpbnQgbG9uZ2xvbmdmbGFnID0gMDsKLSAgICAgICAgICAgIGludCBzaXplX3RmbGFnID0gMDsKLSAgICAgICAgICAgIHplcm9wYWQgPSAoKmYgPT0gJzAnKTsKLSAgICAgICAgICAgIC8qIHBhcnNlIHRoZSB3aWR0aC5wcmVjaXNpb24gcGFydCAqLwotICAgICAgICAgICAgd2lkdGggPSAwOwotICAgICAgICAgICAgd2hpbGUgKFB5X0lTRElHSVQoKHVuc2lnbmVkKSpmKSkKLSAgICAgICAgICAgICAgICB3aWR0aCA9ICh3aWR0aCoxMCkgKyAqZisrIC0gJzAnOwotICAgICAgICAgICAgcHJlY2lzaW9uID0gMDsKLSAgICAgICAgICAgIGlmICgqZiA9PSAnLicpIHsKLSAgICAgICAgICAgICAgICBmKys7Ci0gICAgICAgICAgICAgICAgd2hpbGUgKFB5X0lTRElHSVQoKHVuc2lnbmVkKSpmKSkKLSAgICAgICAgICAgICAgICAgICAgcHJlY2lzaW9uID0gKHByZWNpc2lvbioxMCkgKyAqZisrIC0gJzAnOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLyogSGFuZGxlICVsZCwgJWx1LCAlbGxkIGFuZCAlbGx1LiAqLwotICAgICAgICAgICAgaWYgKCpmID09ICdsJykgewotICAgICAgICAgICAgICAgIGlmIChmWzFdID09ICdkJyB8fCBmWzFdID09ICd1JykgewotICAgICAgICAgICAgICAgICAgICBsb25nZmxhZyA9IDE7Ci0gICAgICAgICAgICAgICAgICAgICsrZjsKLSAgICAgICAgICAgICAgICB9Ci0jaWZkZWYgSEFWRV9MT05HX0xPTkcKLSAgICAgICAgICAgICAgICBlbHNlIGlmIChmWzFdID09ICdsJyAmJgotICAgICAgICAgICAgICAgICAgICAgICAgIChmWzJdID09ICdkJyB8fCBmWzJdID09ICd1JykpIHsKLSAgICAgICAgICAgICAgICAgICAgbG9uZ2xvbmdmbGFnID0gMTsKLSAgICAgICAgICAgICAgICAgICAgZiArPSAyOwotICAgICAgICAgICAgICAgIH0KLSNlbmRpZgotICAgICAgICAgICAgfQotICAgICAgICAgICAgLyogaGFuZGxlIHRoZSBzaXplX3QgZmxhZy4gKi8KLSAgICAgICAgICAgIGlmICgqZiA9PSAneicgJiYgKGZbMV0gPT0gJ2QnIHx8IGZbMV0gPT0gJ3UnKSkgewotICAgICAgICAgICAgICAgIHNpemVfdGZsYWcgPSAxOwotICAgICAgICAgICAgICAgICsrZjsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGNvbnN0IGNoYXIqIHA7CisKKyAgICAgICAgICAgIHAgPSBmOworICAgICAgICAgICAgZiA9IHBhcnNlX2Zvcm1hdF9mbGFncyhmLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMKTsKKyAgICAgICAgICAgIC8qIGNoZWNraW5nIGZvciA9PSBiZWNhdXNlIHRoZSBsYXN0IGFyZ3VtZW50IGNvdWxkIGJlIGEgZW1wdHkKKyAgICAgICAgICAgICAgIHN0cmluZywgd2hpY2ggY2F1c2VzIGkgdG8gcG9pbnQgdG8gZW5kLCB0aGUgYXNzZXJ0IGF0IHRoZSBlbmQgb2YKKyAgICAgICAgICAgICAgIHRoZSBsb29wICovCisgICAgICAgICAgICBhc3NlcnQoaSA8PSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHJpbmcpKTsKIAogICAgICAgICAgICAgc3dpdGNoICgqZikgewogICAgICAgICAgICAgY2FzZSAnYyc6CiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgaW50IG9yZGluYWwgPSB2YV9hcmcodmFyZ3MsIGludCk7Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgICAgIGlmIChvcmRpbmFsID4gMHhmZmZmKSB7Ci0gICAgICAgICAgICAgICAgICAgIG9yZGluYWwgLT0gMHgxMDAwMDsKLSAgICAgICAgICAgICAgICAgICAgKnMrKyA9IDB4RDgwMCB8IChvcmRpbmFsID4+IDEwKTsKLSAgICAgICAgICAgICAgICAgICAgKnMrKyA9IDB4REMwMCB8IChvcmRpbmFsICYgMHgzRkYpOwotICAgICAgICAgICAgICAgIH0gZWxzZQotI2VuZGlmCi0gICAgICAgICAgICAgICAgKnMrKyA9IG9yZGluYWw7CisgICAgICAgICAgICAgICAgY29uc3QgaW50IG9yZGluYWwgPSB2YV9hcmcodmFyZ3MsIGludCk7CisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIGkrKywgb3JkaW5hbCk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBjYXNlICdkJzoKLSAgICAgICAgICAgICAgICBtYWtlZm10KGZtdCwgbG9uZ2ZsYWcsIGxvbmdsb25nZmxhZywgc2l6ZV90ZmxhZywgemVyb3BhZCwKLSAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoLCBwcmVjaXNpb24sICdkJyk7Ci0gICAgICAgICAgICAgICAgaWYgKGxvbmdmbGFnKQotICAgICAgICAgICAgICAgICAgICBzcHJpbnRmKHJlYWxidWZmZXIsIGZtdCwgdmFfYXJnKHZhcmdzLCBsb25nKSk7Ci0jaWZkZWYgSEFWRV9MT05HX0xPTkcKLSAgICAgICAgICAgICAgICBlbHNlIGlmIChsb25nbG9uZ2ZsYWcpCi0gICAgICAgICAgICAgICAgICAgIHNwcmludGYocmVhbGJ1ZmZlciwgZm10LCB2YV9hcmcodmFyZ3MsIFBZX0xPTkdfTE9ORykpOwotI2VuZGlmCi0gICAgICAgICAgICAgICAgZWxzZSBpZiAoc2l6ZV90ZmxhZykKLSAgICAgICAgICAgICAgICAgICAgc3ByaW50ZihyZWFsYnVmZmVyLCBmbXQsIHZhX2FyZyh2YXJncywgUHlfc3NpemVfdCkpOwotICAgICAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICAgICAgc3ByaW50ZihyZWFsYnVmZmVyLCBmbXQsIHZhX2FyZyh2YXJncywgaW50KSk7Ci0gICAgICAgICAgICAgICAgYXBwZW5kc3RyaW5nKHJlYWxidWZmZXIpOwotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgY2FzZSAndSc6Ci0gICAgICAgICAgICAgICAgbWFrZWZtdChmbXQsIGxvbmdmbGFnLCBsb25nbG9uZ2ZsYWcsIHNpemVfdGZsYWcsIHplcm9wYWQsCi0gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCwgcHJlY2lzaW9uLCAndScpOwotICAgICAgICAgICAgICAgIGlmIChsb25nZmxhZykKLSAgICAgICAgICAgICAgICAgICAgc3ByaW50ZihyZWFsYnVmZmVyLCBmbXQsIHZhX2FyZyh2YXJncywgdW5zaWduZWQgbG9uZykpOwotI2lmZGVmIEhBVkVfTE9OR19MT05HCi0gICAgICAgICAgICAgICAgZWxzZSBpZiAobG9uZ2xvbmdmbGFnKQotICAgICAgICAgICAgICAgICAgICBzcHJpbnRmKHJlYWxidWZmZXIsIGZtdCwgdmFfYXJnKHZhcmdzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIFBZX0xPTkdfTE9ORykpOwotI2VuZGlmCi0gICAgICAgICAgICAgICAgZWxzZSBpZiAoc2l6ZV90ZmxhZykKLSAgICAgICAgICAgICAgICAgICAgc3ByaW50ZihyZWFsYnVmZmVyLCBmbXQsIHZhX2FyZyh2YXJncywgc2l6ZV90KSk7Ci0gICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICBzcHJpbnRmKHJlYWxidWZmZXIsIGZtdCwgdmFfYXJnKHZhcmdzLCB1bnNpZ25lZCBpbnQpKTsKLSAgICAgICAgICAgICAgICBhcHBlbmRzdHJpbmcocmVhbGJ1ZmZlcik7Ci0gICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlICdpJzoKLSAgICAgICAgICAgICAgICBtYWtlZm10KGZtdCwgMCwgMCwgMCwgemVyb3BhZCwgd2lkdGgsIHByZWNpc2lvbiwgJ2knKTsKLSAgICAgICAgICAgICAgICBzcHJpbnRmKHJlYWxidWZmZXIsIGZtdCwgdmFfYXJnKHZhcmdzLCBpbnQpKTsKLSAgICAgICAgICAgICAgICBhcHBlbmRzdHJpbmcocmVhbGJ1ZmZlcik7Ci0gICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlICdkJzoKKyAgICAgICAgICAgIGNhc2UgJ3UnOgogICAgICAgICAgICAgY2FzZSAneCc6Ci0gICAgICAgICAgICAgICAgbWFrZWZtdChmbXQsIDAsIDAsIDAsIHplcm9wYWQsIHdpZHRoLCBwcmVjaXNpb24sICd4Jyk7Ci0gICAgICAgICAgICAgICAgc3ByaW50ZihyZWFsYnVmZmVyLCBmbXQsIHZhX2FyZyh2YXJncywgaW50KSk7Ci0gICAgICAgICAgICAgICAgYXBwZW5kc3RyaW5nKHJlYWxidWZmZXIpOworICAgICAgICAgICAgY2FzZSAncCc6CisgICAgICAgICAgICAgICAgLyogdW51c2VkLCBzaW5jZSB3ZSBhbHJlYWR5IGhhdmUgdGhlIHJlc3VsdCAqLworICAgICAgICAgICAgICAgIGlmICgqZiA9PSAncCcpCisgICAgICAgICAgICAgICAgICAgICh2b2lkKSB2YV9hcmcodmFyZ3MsIHZvaWQgKik7CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAodm9pZCkgdmFfYXJnKHZhcmdzLCBpbnQpOworICAgICAgICAgICAgICAgIC8qIGV4dHJhY3QgdGhlIHJlc3VsdCBmcm9tIG51bWJlcnJlc3VsdHMgYW5kIGFwcGVuZC4gKi8KKyAgICAgICAgICAgICAgICBmb3IgKDsgKm51bWJlcnJlc3VsdDsgKytpLCArK251bWJlcnJlc3VsdCkKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIGksICpudW1iZXJyZXN1bHQpOworICAgICAgICAgICAgICAgIC8qIHNraXAgb3ZlciB0aGUgc2VwYXJhdGluZyAnXDAnICovCisgICAgICAgICAgICAgICAgYXNzZXJ0KCpudW1iZXJyZXN1bHQgPT0gJ1wwJyk7CisgICAgICAgICAgICAgICAgbnVtYmVycmVzdWx0Kys7CisgICAgICAgICAgICAgICAgYXNzZXJ0KG51bWJlcnJlc3VsdCA8PSBudW1iZXJyZXN1bHRzICsgbnVtYmVyc2l6ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlICdzJzoKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAvKiB1bnVzZWQsIHNpbmNlIHdlIGFscmVhZHkgaGF2ZSB0aGUgcmVzdWx0ICovCisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplOwogICAgICAgICAgICAgICAgICh2b2lkKSB2YV9hcmcodmFyZ3MsIGNoYXIgKik7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHMsIFB5VW5pY29kZV9BU19VTklDT0RFKCpjYWxscmVzdWx0KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKCpjYWxscmVzdWx0KSk7Ci0gICAgICAgICAgICAgICAgcyArPSBQeVVuaWNvZGVfR0VUX1NJWkUoKmNhbGxyZXN1bHQpOworICAgICAgICAgICAgICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCgqY2FsbHJlc3VsdCk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKCpjYWxscmVzdWx0KSA8PSBQeVVuaWNvZGVfS0lORChzdHJpbmcpKTsKKyAgICAgICAgICAgICAgICBjb3B5X2NoYXJhY3RlcnMoc3RyaW5nLCBpLCAqY2FsbHJlc3VsdCwgMCwgc2l6ZSk7CisgICAgICAgICAgICAgICAgaSArPSBzaXplOwogICAgICAgICAgICAgICAgIC8qIFdlJ3JlIGRvbmUgd2l0aCB0aGUgdW5pY29kZSgpL3JlcHIoKSA9PiBmb3JnZXQgaXQgKi8KICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoKmNhbGxyZXN1bHQpOwogICAgICAgICAgICAgICAgIC8qIHN3aXRjaCB0byBuZXh0IHVuaWNvZGUoKS9yZXByKCkgcmVzdWx0ICovCkBAIC0xMDgwLDIzICsyNjE5LDI5IEBACiAgICAgICAgICAgICBjYXNlICdVJzoKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBQeU9iamVjdCAqb2JqID0gdmFfYXJnKHZhcmdzLCBQeU9iamVjdCAqKTsKLSAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUob2JqKTsKLSAgICAgICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkocywgUHlVbmljb2RlX0FTX1VOSUNPREUob2JqKSwgc2l6ZSk7Ci0gICAgICAgICAgICAgICAgcyArPSBzaXplOworICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoUHlVbmljb2RlX0tJTkQob2JqKSA8PSBQeVVuaWNvZGVfS0lORChzdHJpbmcpKTsKKyAgICAgICAgICAgICAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgob2JqKTsKKyAgICAgICAgICAgICAgICBjb3B5X2NoYXJhY3RlcnMoc3RyaW5nLCBpLCBvYmosIDAsIHNpemUpOworICAgICAgICAgICAgICAgIGkgKz0gc2l6ZTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGNhc2UgJ1YnOgogICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZTsKICAgICAgICAgICAgICAgICBQeU9iamVjdCAqb2JqID0gdmFfYXJnKHZhcmdzLCBQeU9iamVjdCAqKTsKICAgICAgICAgICAgICAgICB2YV9hcmcodmFyZ3MsIGNvbnN0IGNoYXIgKik7CiAgICAgICAgICAgICAgICAgaWYgKG9iaikgewotICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUob2JqKTsKLSAgICAgICAgICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHMsIFB5VW5pY29kZV9BU19VTklDT0RFKG9iaiksIHNpemUpOwotICAgICAgICAgICAgICAgICAgICBzICs9IHNpemU7CisgICAgICAgICAgICAgICAgICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvYmopOworICAgICAgICAgICAgICAgICAgICBhc3NlcnQoUHlVbmljb2RlX0tJTkQob2JqKSA8PSBQeVVuaWNvZGVfS0lORChzdHJpbmcpKTsKKyAgICAgICAgICAgICAgICAgICAgY29weV9jaGFyYWN0ZXJzKHN0cmluZywgaSwgb2JqLCAwLCBzaXplKTsKKyAgICAgICAgICAgICAgICAgICAgaSArPSBzaXplOwogICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfQ09QWShzLCBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqY2FsbHJlc3VsdCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoKmNhbGxyZXN1bHQpKTsKLSAgICAgICAgICAgICAgICAgICAgcyArPSBQeVVuaWNvZGVfR0VUX1NJWkUoKmNhbGxyZXN1bHQpOworICAgICAgICAgICAgICAgICAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoKmNhbGxyZXN1bHQpOworICAgICAgICAgICAgICAgICAgICBhc3NlcnQoUHlVbmljb2RlX0tJTkQoKmNhbGxyZXN1bHQpIDw9CisgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfS0lORChzdHJpbmcpKTsKKyAgICAgICAgICAgICAgICAgICAgY29weV9jaGFyYWN0ZXJzKHN0cmluZywgaSwgKmNhbGxyZXN1bHQsIDAsIHNpemUpOworICAgICAgICAgICAgICAgICAgICBpICs9IHNpemU7CiAgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRigqY2FsbHJlc3VsdCk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICsrY2FsbHJlc3VsdDsKQEAgLTExMDYsNTIgKzI2NTEsNDEgQEAKICAgICAgICAgICAgIGNhc2UgJ1InOgogICAgICAgICAgICAgY2FzZSAnQSc6CiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSAqdWNvcHk7Ci0gICAgICAgICAgICAgICAgUHlfc3NpemVfdCB1c2l6ZTsKLSAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHVwb3M7CisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoKmNhbGxyZXN1bHQpOwogICAgICAgICAgICAgICAgIC8qIHVudXNlZCwgc2luY2Ugd2UgYWxyZWFkeSBoYXZlIHRoZSByZXN1bHQgKi8KICAgICAgICAgICAgICAgICAodm9pZCkgdmFfYXJnKHZhcmdzLCBQeU9iamVjdCAqKTsKLSAgICAgICAgICAgICAgICB1Y29weSA9IFB5VW5pY29kZV9BU19VTklDT0RFKCpjYWxscmVzdWx0KTsKLSAgICAgICAgICAgICAgICB1c2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRSgqY2FsbHJlc3VsdCk7Ci0gICAgICAgICAgICAgICAgZm9yICh1cG9zID0gMDsgdXBvczx1c2l6ZTspCi0gICAgICAgICAgICAgICAgICAgICpzKysgPSB1Y29weVt1cG9zKytdOworICAgICAgICAgICAgICAgIGFzc2VydChQeVVuaWNvZGVfS0lORCgqY2FsbHJlc3VsdCkgPD0gUHlVbmljb2RlX0tJTkQoc3RyaW5nKSk7CisgICAgICAgICAgICAgICAgY29weV9jaGFyYWN0ZXJzKHN0cmluZywgaSwgKmNhbGxyZXN1bHQsIDAsICBzaXplKTsKKyAgICAgICAgICAgICAgICBpICs9IHNpemU7CiAgICAgICAgICAgICAgICAgLyogV2UncmUgZG9uZSB3aXRoIHRoZSB1bmljb2RlKCkvcmVwcigpID0+IGZvcmdldCBpdCAqLwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRigqY2FsbHJlc3VsdCk7CiAgICAgICAgICAgICAgICAgLyogc3dpdGNoIHRvIG5leHQgdW5pY29kZSgpL3JlcHIoKSByZXN1bHQgKi8KICAgICAgICAgICAgICAgICArK2NhbGxyZXN1bHQ7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBjYXNlICdwJzoKLSAgICAgICAgICAgICAgICBzcHJpbnRmKGJ1ZmZlciwgIiVwIiwgdmFfYXJnKHZhcmdzLCB2b2lkKikpOwotICAgICAgICAgICAgICAgIC8qICVwIGlzIGlsbC1kZWZpbmVkOiAgZW5zdXJlIGxlYWRpbmcgMHguICovCi0gICAgICAgICAgICAgICAgaWYgKGJ1ZmZlclsxXSA9PSAnWCcpCi0gICAgICAgICAgICAgICAgICAgIGJ1ZmZlclsxXSA9ICd4JzsKLSAgICAgICAgICAgICAgICBlbHNlIGlmIChidWZmZXJbMV0gIT0gJ3gnKSB7Ci0gICAgICAgICAgICAgICAgICAgIG1lbW1vdmUoYnVmZmVyKzIsIGJ1ZmZlciwgc3RybGVuKGJ1ZmZlcikrMSk7Ci0gICAgICAgICAgICAgICAgICAgIGJ1ZmZlclswXSA9ICcwJzsKLSAgICAgICAgICAgICAgICAgICAgYnVmZmVyWzFdID0gJ3gnOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBhcHBlbmRzdHJpbmcoYnVmZmVyKTsKLSAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgJyUnOgotICAgICAgICAgICAgICAgICpzKysgPSAnJSc7CisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIGkrKywgJyUnKTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICAgICAgYXBwZW5kc3RyaW5nKHApOworICAgICAgICAgICAgICAgIGZvciAoOyAqcDsgKytwLCArK2kpCisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBpLCAqcCk7CisgICAgICAgICAgICAgICAgYXNzZXJ0KGkgPT0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyaW5nKSk7CiAgICAgICAgICAgICAgICAgZ290byBlbmQ7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KLSAgICAgICAgZWxzZQotICAgICAgICAgICAgKnMrKyA9ICpmOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGFzc2VydChpIDwgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyaW5nKSk7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgaSsrLCAqZik7CisgICAgICAgIH0KICAgICB9CisgICAgYXNzZXJ0KGkgPT0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyaW5nKSk7CiAKICAgZW5kOgogICAgIGlmIChjYWxscmVzdWx0cykKICAgICAgICAgUHlPYmplY3RfRnJlZShjYWxscmVzdWx0cyk7Ci0gICAgaWYgKGFidWZmZXIpCi0gICAgICAgIFB5T2JqZWN0X0ZyZWUoYWJ1ZmZlcik7Ci0gICAgUHlVbmljb2RlX1Jlc2l6ZSgmc3RyaW5nLCBzIC0gUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyaW5nKSk7Ci0gICAgcmV0dXJuIHN0cmluZzsKKyAgICBpZiAobnVtYmVycmVzdWx0cykKKyAgICAgICAgUHlPYmplY3RfRnJlZShudW1iZXJyZXN1bHRzKTsKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHQoc3RyaW5nKTsKICAgZmFpbDoKICAgICBpZiAoY2FsbHJlc3VsdHMpIHsKICAgICAgICAgUHlPYmplY3QgKipjYWxscmVzdWx0MiA9IGNhbGxyZXN1bHRzOwpAQCAtMTE2MSwxMyArMjY5NSwxMSBAQAogICAgICAgICB9CiAgICAgICAgIFB5T2JqZWN0X0ZyZWUoY2FsbHJlc3VsdHMpOwogICAgIH0KLSAgICBpZiAoYWJ1ZmZlcikKLSAgICAgICAgUHlPYmplY3RfRnJlZShhYnVmZmVyKTsKKyAgICBpZiAobnVtYmVycmVzdWx0cykKKyAgICAgICAgUHlPYmplY3RfRnJlZShudW1iZXJyZXN1bHRzKTsKICAgICByZXR1cm4gTlVMTDsKIH0KIAotI3VuZGVmIGFwcGVuZHN0cmluZwotCiBQeU9iamVjdCAqCiBQeVVuaWNvZGVfRnJvbUZvcm1hdChjb25zdCBjaGFyICpmb3JtYXQsIC4uLikKIHsKQEAgLTExODQsNiArMjcxNiw4IEBACiAgICAgcmV0dXJuIHJldDsKIH0KIAorI2lmZGVmIEhBVkVfV0NIQVJfSAorCiAvKiBIZWxwZXIgZnVuY3Rpb24gZm9yIFB5VW5pY29kZV9Bc1dpZGVDaGFyKCkgYW5kIFB5VW5pY29kZV9Bc1dpZGVDaGFyU3RyaW5nKCk6CiAgICBjb252ZXJ0IGEgVW5pY29kZSBvYmplY3QgdG8gYSB3aWRlIGNoYXJhY3RlciBzdHJpbmcuCiAKQEAgLTExOTQsMTAzICsyNzI4LDI3IEBACiAgICAgIGNoYXJhY3Rlcikgd3JpdHRlbiBpbnRvIHcuIFdyaXRlIGF0IG1vc3Qgc2l6ZSB3aWRlIGNoYXJhY3RlcnMgKGluY2x1ZGluZwogICAgICB0aGUgbnVsbCBjaGFyYWN0ZXIpLiAqLwogc3RhdGljIFB5X3NzaXplX3QKLXVuaWNvZGVfYXN3aWRlY2hhcihQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGUsCit1bmljb2RlX2Fzd2lkZWNoYXIoUHlPYmplY3QgKnVuaWNvZGUsCiAgICAgICAgICAgICAgICAgICAgd2NoYXJfdCAqdywKICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUpCiB7Ci0jaWYgUHlfVU5JQ09ERV9TSVpFID09IFNJWkVPRl9XQ0hBUl9UCiAgICAgUHlfc3NpemVfdCByZXM7CisgICAgY29uc3Qgd2NoYXJfdCAqd3N0cjsKKworICAgIHdzdHIgPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZSh1bmljb2RlLCAmcmVzKTsKKyAgICBpZiAod3N0ciA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisKICAgICBpZiAodyAhPSBOVUxMKSB7Ci0gICAgICAgIHJlcyA9IFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKTsKICAgICAgICAgaWYgKHNpemUgPiByZXMpCiAgICAgICAgICAgICBzaXplID0gcmVzICsgMTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgcmVzID0gc2l6ZTsKLSAgICAgICAgbWVtY3B5KHcsIHVuaWNvZGUtPnN0ciwgc2l6ZSAqIHNpemVvZih3Y2hhcl90KSk7CisgICAgICAgIFB5X01FTUNQWSh3LCB3c3RyLCBzaXplICogc2l6ZW9mKHdjaGFyX3QpKTsKICAgICAgICAgcmV0dXJuIHJlczsKICAgICB9CiAgICAgZWxzZQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpICsgMTsKLSNlbGlmIFB5X1VOSUNPREVfU0laRSA9PSAyICYmIFNJWkVPRl9XQ0hBUl9UID09IDQKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICp1OwotICAgIGNvbnN0IFB5X1VOSUNPREUgKnVlbmQ7Ci0gICAgY29uc3Qgd2NoYXJfdCAqd29yaWcsICp3ZW5kOwotICAgIFB5X3NzaXplX3QgbmNoYXI7Ci0KLSAgICB1ID0gUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSk7Ci0gICAgdWVuZCA9IHUgKyBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSk7Ci0gICAgaWYgKHcgIT0gTlVMTCkgewotICAgICAgICB3b3JpZyA9IHc7Ci0gICAgICAgIHdlbmQgPSB3ICsgc2l6ZTsKLSAgICAgICAgd2hpbGUgKHUgIT0gdWVuZCAmJiB3ICE9IHdlbmQpIHsKLSAgICAgICAgICAgIGlmICgweEQ4MDAgPD0gdVswXSAmJiB1WzBdIDw9IDB4REJGRgotICAgICAgICAgICAgICAgICYmIDB4REMwMCA8PSB1WzFdICYmIHVbMV0gPD0gMHhERkZGKQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgICp3ID0gKCgodVswXSAmIDB4M0ZGKSA8PCAxMCkgfCAodVsxXSAmIDB4M0ZGKSkgKyAweDEwMDAwOwotICAgICAgICAgICAgICAgIHUgKz0gMjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgICp3ID0gKnU7Ci0gICAgICAgICAgICAgICAgdSsrOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgdysrOwotICAgICAgICB9Ci0gICAgICAgIGlmICh3ICE9IHdlbmQpCi0gICAgICAgICAgICAqdyA9IEwnXDAnOwotICAgICAgICByZXR1cm4gdyAtIHdvcmlnOwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgbmNoYXIgPSAxOyAvKiBudWxsIGNoYXJhY3RlciBhdCB0aGUgZW5kICovCi0gICAgICAgIHdoaWxlICh1ICE9IHVlbmQpIHsKLSAgICAgICAgICAgIGlmICgweEQ4MDAgPD0gdVswXSAmJiB1WzBdIDw9IDB4REJGRgotICAgICAgICAgICAgICAgICYmIDB4REMwMCA8PSB1WzFdICYmIHVbMV0gPD0gMHhERkZGKQotICAgICAgICAgICAgICAgIHUgKz0gMjsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICB1Kys7Ci0gICAgICAgICAgICBuY2hhcisrOwotICAgICAgICB9Ci0gICAgfQotICAgIHJldHVybiBuY2hhcjsKLSNlbGlmIFB5X1VOSUNPREVfU0laRSA9PSA0ICYmIFNJWkVPRl9XQ0hBUl9UID09IDIKLSAgICByZWdpc3RlciBQeV9VTklDT0RFICp1LCAqdWVuZCwgb3JkaW5hbDsKLSAgICByZWdpc3RlciBQeV9zc2l6ZV90IGk7Ci0gICAgd2NoYXJfdCAqd29yaWcsICp3ZW5kOwotICAgIFB5X3NzaXplX3QgbmNoYXI7Ci0KLSAgICB1ID0gUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSk7Ci0gICAgdWVuZCA9IHUgKyBQeVVuaWNvZGVfR0VUX1NJWkUodSk7Ci0gICAgaWYgKHcgIT0gTlVMTCkgewotICAgICAgICB3b3JpZyA9IHc7Ci0gICAgICAgIHdlbmQgPSB3ICsgc2l6ZTsKLSAgICAgICAgd2hpbGUgKHUgIT0gdWVuZCAmJiB3ICE9IHdlbmQpIHsKLSAgICAgICAgICAgIG9yZGluYWwgPSAqdTsKLSAgICAgICAgICAgIGlmIChvcmRpbmFsID4gMHhmZmZmKSB7Ci0gICAgICAgICAgICAgICAgb3JkaW5hbCAtPSAweDEwMDAwOwotICAgICAgICAgICAgICAgICp3KysgPSAweEQ4MDAgfCAob3JkaW5hbCA+PiAxMCk7Ci0gICAgICAgICAgICAgICAgKncrKyA9IDB4REMwMCB8IChvcmRpbmFsICYgMHgzRkYpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICp3KysgPSBvcmRpbmFsOwotICAgICAgICAgICAgdSsrOwotICAgICAgICB9Ci0gICAgICAgIGlmICh3ICE9IHdlbmQpCi0gICAgICAgICAgICAqdyA9IDA7Ci0gICAgICAgIHJldHVybiB3IC0gd29yaWc7Ci0gICAgfQotICAgIGVsc2UgewotICAgICAgICBuY2hhciA9IDE7IC8qIG51bGwgY2hhcmFjdGVyICovCi0gICAgICAgIHdoaWxlICh1ICE9IHVlbmQpIHsKLSAgICAgICAgICAgIGlmICgqdSA+IDB4ZmZmZikKLSAgICAgICAgICAgICAgICBuY2hhciArPSAyOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIG5jaGFyKys7Ci0gICAgICAgICAgICB1Kys7Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIG5jaGFyOwotICAgIH0KLSNlbHNlCi0jICBlcnJvciAidW5zdXBwb3J0ZWQgd2NoYXJfdCBhbmQgUHlfVU5JQ09ERSBzaXplcywgc2VlIGlzc3VlICM4NjcwIgotI2VuZGlmCisgICAgICAgIHJldHVybiByZXMgKyAxOwogfQogCiBQeV9zc2l6ZV90CkBAIC0xMzAyLDcgKzI3NjAsNyBAQAogICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KLSAgICByZXR1cm4gdW5pY29kZV9hc3dpZGVjaGFyKChQeVVuaWNvZGVPYmplY3QqKXVuaWNvZGUsIHcsIHNpemUpOworICAgIHJldHVybiB1bmljb2RlX2Fzd2lkZWNoYXIodW5pY29kZSwgdywgc2l6ZSk7CiB9CiAKIHdjaGFyX3QqCkBAIC0xMzE3LDcgKzI3NzUsOSBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBidWZsZW4gPSB1bmljb2RlX2Fzd2lkZWNoYXIoKFB5VW5pY29kZU9iamVjdCAqKXVuaWNvZGUsIE5VTEwsIDApOworICAgIGJ1ZmxlbiA9IHVuaWNvZGVfYXN3aWRlY2hhcih1bmljb2RlLCBOVUxMLCAwKTsKKyAgICBpZiAoYnVmbGVuID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoUFlfU1NJWkVfVF9NQVggLyBzaXplb2Yod2NoYXJfdCkgPCBidWZsZW4pIHsKICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0xMzI4LDUwICsyNzg4LDUyIEBACiAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBidWZsZW4gPSB1bmljb2RlX2Fzd2lkZWNoYXIoKFB5VW5pY29kZU9iamVjdCAqKXVuaWNvZGUsIGJ1ZmZlciwgYnVmbGVuKTsKKyAgICBidWZsZW4gPSB1bmljb2RlX2Fzd2lkZWNoYXIodW5pY29kZSwgYnVmZmVyLCBidWZsZW4pOworICAgIGlmIChidWZsZW4gPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChzaXplICE9IE5VTEwpCiAgICAgICAgICpzaXplID0gYnVmbGVuOwogICAgIHJldHVybiBidWZmZXI7CiB9CiAKLSNlbmRpZgorI2VuZGlmIC8qIEhBVkVfV0NIQVJfSCAqLwogCi1QeU9iamVjdCAqUHlVbmljb2RlX0Zyb21PcmRpbmFsKGludCBvcmRpbmFsKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0Zyb21PcmRpbmFsKGludCBvcmRpbmFsKQogewotICAgIFB5X1VOSUNPREUgc1syXTsKLQotICAgIGlmIChvcmRpbmFsIDwgMCB8fCBvcmRpbmFsID4gMHgxMGZmZmYpIHsKKyAgICBQeU9iamVjdCAqdjsKKyAgICBpZiAob3JkaW5hbCA8IDAgfHwgb3JkaW5hbCA+IE1BWF9VTklDT0RFKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgImNocigpIGFyZyBub3QgaW4gcmFuZ2UoMHgxMTAwMDApIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICBpZiAob3JkaW5hbCA+IDB4ZmZmZikgewotICAgICAgICBvcmRpbmFsIC09IDB4MTAwMDA7Ci0gICAgICAgIHNbMF0gPSAweEQ4MDAgfCAob3JkaW5hbCA+PiAxMCk7Ci0gICAgICAgIHNbMV0gPSAweERDMDAgfCAob3JkaW5hbCAmIDB4M0ZGKTsKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShzLCAyKTsKLSAgICB9Ci0jZW5kaWYKKyAgICBpZiAob3JkaW5hbCA8IDI1NikKKyAgICAgICAgcmV0dXJuIGdldF9sYXRpbjFfY2hhcihvcmRpbmFsKTsKIAotICAgIHNbMF0gPSAoUHlfVU5JQ09ERSlvcmRpbmFsOwotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocywgMSk7CisgICAgdiA9IFB5VW5pY29kZV9OZXcoMSwgb3JkaW5hbCk7CisgICAgaWYgKHYgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgUHlVbmljb2RlX1dSSVRFKFB5VW5pY29kZV9LSU5EKHYpLCBQeVVuaWNvZGVfREFUQSh2KSwgMCwgb3JkaW5hbCk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh2LCAxKSk7CisgICAgcmV0dXJuIHY7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRnJvbU9iamVjdChyZWdpc3RlciBQeU9iamVjdCAqb2JqKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0Zyb21PYmplY3QocmVnaXN0ZXIgUHlPYmplY3QgKm9iaikKIHsKICAgICAvKiBYWFggUGVyaGFwcyB3ZSBzaG91bGQgbWFrZSB0aGlzIEFQSSBhbiBhbGlhcyBvZgogICAgICAgIFB5T2JqZWN0X1N0cigpIGluc3RlYWQgPyEgKi8KICAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3Qob2JqKSkgeworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKG9iaikgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgUHlfSU5DUkVGKG9iaik7CiAgICAgICAgIHJldHVybiBvYmo7CiAgICAgfQogICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sob2JqKSkgewogICAgICAgICAvKiBGb3IgYSBVbmljb2RlIHN1YnR5cGUgdGhhdCdzIG5vdCBhIFVuaWNvZGUgb2JqZWN0LAogICAgICAgICAgICByZXR1cm4gYSB0cnVlIFVuaWNvZGUgb2JqZWN0IHdpdGggdGhlIHNhbWUgZGF0YS4gKi8KLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShQeVVuaWNvZGVfQVNfVU5JQ09ERShvYmopLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShvYmopKTsKKyAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfQ29weShvYmopOwogICAgIH0KICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAiQ2FuJ3QgY29udmVydCAnJS4xMDBzJyBvYmplY3QgdG8gc3RyIGltcGxpY2l0bHkiLApAQCAtMTM3OSw5ICsyODQxLDEwIEBACiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRnJvbUVuY29kZWRPYmplY3QocmVnaXN0ZXIgUHlPYmplY3QgKm9iaiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Gcm9tRW5jb2RlZE9iamVjdChyZWdpc3RlciBQeU9iamVjdCAqb2JqLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBQeV9idWZmZXIgYnVmZmVyOwogICAgIFB5T2JqZWN0ICp2OwpAQCAtMTM5NSw3ICsyODU4LDcgQEAKICAgICBpZiAoUHlCeXRlc19DaGVjayhvYmopKSB7CiAgICAgICAgIGlmIChQeUJ5dGVzX0dFVF9TSVpFKG9iaikgPT0gMCkgewogICAgICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOwotICAgICAgICAgICAgdiA9IChQeU9iamVjdCAqKSB1bmljb2RlX2VtcHR5OworICAgICAgICAgICAgdiA9IHVuaWNvZGVfZW1wdHk7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICB2ID0gUHlVbmljb2RlX0RlY29kZSgKQEAgLTE0MjIsNyArMjg4NSw3IEBACiAKICAgICBpZiAoYnVmZmVyLmxlbiA9PSAwKSB7CiAgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKLSAgICAgICAgdiA9IChQeU9iamVjdCAqKSB1bmljb2RlX2VtcHR5OworICAgICAgICB2ID0gdW5pY29kZV9lbXB0eTsKICAgICB9CiAgICAgZWxzZQogICAgICAgICB2ID0gUHlVbmljb2RlX0RlY29kZSgoY2hhciopIGJ1ZmZlci5idWYsIGJ1ZmZlci5sZW4sIGVuY29kaW5nLCBlcnJvcnMpOwpAQCAtMTQ0Myw2ICsyOTA2LDEwIEBACiAgICAgY2hhciAqbDsKICAgICBjaGFyICpsX2VuZDsKIAorICAgIGlmIChlbmNvZGluZyA9PSBOVUxMKSB7CisgICAgICAgIHN0cmNweShsb3dlciwgInV0Zi04Iik7CisgICAgICAgIHJldHVybiAxOworICAgIH0KICAgICBlID0gZW5jb2Rpbmc7CiAgICAgbCA9IGxvd2VyOwogICAgIGxfZW5kID0gJmxvd2VyW2xvd2VyX2xlbiAtIDFdOwpAQCAtMTQ2NCwyNiArMjkzMSwyNiBAQAogICAgIHJldHVybiAxOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0RlY29kZShjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlKGNvbnN0IGNoYXIgKnMsCisgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCisgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBQeU9iamVjdCAqYnVmZmVyID0gTlVMTCwgKnVuaWNvZGU7CiAgICAgUHlfYnVmZmVyIGluZm87CiAgICAgY2hhciBsb3dlclsxMV07ICAvKiBFbm91Z2ggZm9yIGFueSBlbmNvZGluZyBzaG9ydGN1dCAqLwogCi0gICAgaWYgKGVuY29kaW5nID09IE5VTEwpCi0gICAgICAgIGVuY29kaW5nID0gUHlVbmljb2RlX0dldERlZmF1bHRFbmNvZGluZygpOwotCiAgICAgLyogU2hvcnRjdXRzIGZvciBjb21tb24gZGVmYXVsdCBlbmNvZGluZ3MgKi8KICAgICBpZiAobm9ybWFsaXplX2VuY29kaW5nKGVuY29kaW5nLCBsb3dlciwgc2l6ZW9mKGxvd2VyKSkpIHsKLSAgICAgICAgaWYgKHN0cmNtcChsb3dlciwgInV0Zi04IikgPT0gMCkKLSAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlVVRGOChzLCBzaXplLCBlcnJvcnMpOworICAgICAgICBpZiAoKHN0cmNtcChsb3dlciwgInV0Zi04IikgPT0gMCkgfHwKKyAgICAgICAgICAgIChzdHJjbXAobG93ZXIsICJ1dGY4IikgPT0gMCkpCisgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChzLCBzaXplLCBlcnJvcnMsIE5VTEwpOwogICAgICAgICBlbHNlIGlmICgoc3RyY21wKGxvd2VyLCAibGF0aW4tMSIpID09IDApIHx8CisgICAgICAgICAgICAgICAgIChzdHJjbXAobG93ZXIsICJsYXRpbjEiKSA9PSAwKSB8fAogICAgICAgICAgICAgICAgICAoc3RyY21wKGxvd2VyLCAiaXNvLTg4NTktMSIpID09IDApKQogICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVMYXRpbjEocywgc2l6ZSwgZXJyb3JzKTsKLSNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpICYmIGRlZmluZWQoSEFWRV9VU0FCTEVfV0NIQVJfVCkKKyNpZmRlZiBIQVZFX01CQ1MKICAgICAgICAgZWxzZSBpZiAoc3RyY21wKGxvd2VyLCAibWJjcyIpID09IDApCiAgICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZU1CQ1Mocywgc2l6ZSwgZXJyb3JzKTsKICNlbmRpZgpAQCAtMTUxMywxNiArMjk4MCwxNyBAQAogICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgfQogICAgIFB5X0RFQ1JFRihidWZmZXIpOwotICAgIHJldHVybiB1bmljb2RlOworICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdCh1bmljb2RlKTsKIAogICBvbkVycm9yOgogICAgIFB5X1hERUNSRUYoYnVmZmVyKTsKICAgICByZXR1cm4gTlVMTDsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9Bc0RlY29kZWRPYmplY3QoUHlPYmplY3QgKnVuaWNvZGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Bc0RlY29kZWRPYmplY3QoUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgUHlPYmplY3QgKnY7CiAKQEAgLTE1MzgsMTUgKzMwMDYsMTYgQEAKICAgICB2ID0gUHlDb2RlY19EZWNvZGUodW5pY29kZSwgZW5jb2RpbmcsIGVycm9ycyk7CiAgICAgaWYgKHYgPT0gTlVMTCkKICAgICAgICAgZ290byBvbkVycm9yOwotICAgIHJldHVybiB2OworICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdCh2KTsKIAogICBvbkVycm9yOgogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzRGVjb2RlZFVuaWNvZGUoUHlPYmplY3QgKnVuaWNvZGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0FzRGVjb2RlZFVuaWNvZGUoUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBQeU9iamVjdCAqdjsKIApAQCAtMTU2OSwxNiArMzAzOCwxNyBAQAogICAgICAgICBQeV9ERUNSRUYodik7CiAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICB9Ci0gICAgcmV0dXJuIHY7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHYpOwogCiAgIG9uRXJyb3I6CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRW5jb2RlKGNvbnN0IFB5X1VOSUNPREUgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9FbmNvZGUoY29uc3QgUHlfVU5JQ09ERSAqcywKKyAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIFB5T2JqZWN0ICp2LCAqdW5pY29kZTsKIApAQCAtMTU5MCw5ICszMDYwLDEwIEBACiAgICAgcmV0dXJuIHY7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfQXNFbmNvZGVkT2JqZWN0KFB5T2JqZWN0ICp1bmljb2RlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfQXNFbmNvZGVkT2JqZWN0KFB5T2JqZWN0ICp1bmljb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIFB5T2JqZWN0ICp2OwogCkBAIC0xNjE0LDE3ICszMDg1LDE5MiBAQAogICAgIHJldHVybiBOVUxMOwogfQogCitzdGF0aWMgc2l6ZV90Cit3Y3N0b21ic19lcnJvcnBvcyhjb25zdCB3Y2hhcl90ICp3c3RyKQoreworICAgIHNpemVfdCBsZW47CisjaWYgU0laRU9GX1dDSEFSX1QgPT0gMgorICAgIHdjaGFyX3QgYnVmWzNdOworI2Vsc2UKKyAgICB3Y2hhcl90IGJ1ZlsyXTsKKyNlbmRpZgorICAgIGNoYXIgb3V0YnVmW01CX0xFTl9NQVhdOworICAgIGNvbnN0IHdjaGFyX3QgKnN0YXJ0LCAqcHJldmlvdXM7CisKKyNpZiBTSVpFT0ZfV0NIQVJfVCA9PSAyCisgICAgYnVmWzJdID0gMDsKKyNlbHNlCisgICAgYnVmWzFdID0gMDsKKyNlbmRpZgorICAgIHN0YXJ0ID0gd3N0cjsKKyAgICB3aGlsZSAoKndzdHIgIT0gTCdcMCcpCisgICAgeworICAgICAgICBwcmV2aW91cyA9IHdzdHI7CisjaWYgU0laRU9GX1dDSEFSX1QgPT0gMgorICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU19ISUdIX1NVUlJPR0FURSh3c3RyWzBdKQorICAgICAgICAgICAgJiYgUHlfVU5JQ09ERV9JU19MT1dfU1VSUk9HQVRFKHdzdHJbMV0pKQorICAgICAgICB7CisgICAgICAgICAgICBidWZbMF0gPSB3c3RyWzBdOworICAgICAgICAgICAgYnVmWzFdID0gd3N0clsxXTsKKyAgICAgICAgICAgIHdzdHIgKz0gMjsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGJ1ZlswXSA9ICp3c3RyOworICAgICAgICAgICAgYnVmWzFdID0gMDsKKyAgICAgICAgICAgIHdzdHIrKzsKKyAgICAgICAgfQorI2Vsc2UKKyAgICAgICAgYnVmWzBdID0gKndzdHI7CisgICAgICAgIHdzdHIrKzsKKyNlbmRpZgorICAgICAgICBsZW4gPSB3Y3N0b21icyhvdXRidWYsIGJ1Ziwgc2l6ZW9mKG91dGJ1ZikpOworICAgICAgICBpZiAobGVuID09IChzaXplX3QpLTEpCisgICAgICAgICAgICByZXR1cm4gcHJldmlvdXMgLSBzdGFydDsKKyAgICB9CisKKyAgICAvKiBmYWlsZWQgdG8gZmluZCB0aGUgdW5lbmNvZGFibGUgY2hhcmFjdGVyICovCisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBpbnQKK2xvY2FsZV9lcnJvcl9oYW5kbGVyKGNvbnN0IGNoYXIgKmVycm9ycywgaW50ICpzdXJyb2dhdGVlc2NhcGUpCit7CisgICAgaWYgKGVycm9ycyA9PSBOVUxMKSB7CisgICAgICAgICpzdXJyb2dhdGVlc2NhcGUgPSAwOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBpZiAoc3RyY21wKGVycm9ycywgInN0cmljdCIpID09IDApIHsKKyAgICAgICAgKnN1cnJvZ2F0ZWVzY2FwZSA9IDA7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBpZiAoc3RyY21wKGVycm9ycywgInN1cnJvZ2F0ZWVzY2FwZSIpID09IDApIHsKKyAgICAgICAgKnN1cnJvZ2F0ZWVzY2FwZSA9IDE7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgIm9ubHkgJ3N0cmljdCcgYW5kICdzdXJyb2dhdGVlc2NhcGUnIGVycm9yIGhhbmRsZXJzICIKKyAgICAgICAgICAgICAgICAgImFyZSBzdXBwb3J0ZWQsIG5vdCAnJXMnIiwKKyAgICAgICAgICAgICAgICAgZXJyb3JzKTsKKyAgICByZXR1cm4gLTE7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9FbmNvZGVMb2NhbGUoUHlPYmplY3QgKnVuaWNvZGUsIGNvbnN0IGNoYXIgKmVycm9ycykKK3sKKyAgICBQeV9zc2l6ZV90IHdsZW4sIHdsZW4yOworICAgIHdjaGFyX3QgKndzdHI7CisgICAgUHlPYmplY3QgKmJ5dGVzID0gTlVMTDsKKyAgICBjaGFyICplcnJtc2c7CisgICAgUHlPYmplY3QgKnJlYXNvbjsKKyAgICBQeU9iamVjdCAqZXhjOworICAgIHNpemVfdCBlcnJvcl9wb3M7CisgICAgaW50IHN1cnJvZ2F0ZWVzY2FwZTsKKworICAgIGlmIChsb2NhbGVfZXJyb3JfaGFuZGxlcihlcnJvcnMsICZzdXJyb2dhdGVlc2NhcGUpIDwgMCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICB3c3RyID0gUHlVbmljb2RlX0FzV2lkZUNoYXJTdHJpbmcodW5pY29kZSwgJndsZW4pOworICAgIGlmICh3c3RyID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgd2xlbjIgPSB3Y3NsZW4od3N0cik7CisgICAgaWYgKHdsZW4yICE9IHdsZW4pIHsKKyAgICAgICAgUHlNZW1fRnJlZSh3c3RyKTsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImVtYmVkZGVkIG51bGwgY2hhcmFjdGVyIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGlmIChzdXJyb2dhdGVlc2NhcGUpIHsKKyAgICAgICAgLyogbG9jYWxlIGVuY29kaW5nIHdpdGggc3Vycm9nYXRlZXNjYXBlICovCisgICAgICAgIGNoYXIgKnN0cjsKKworICAgICAgICBzdHIgPSBfUHlfd2NoYXIyY2hhcih3c3RyLCAmZXJyb3JfcG9zKTsKKyAgICAgICAgaWYgKHN0ciA9PSBOVUxMKSB7CisgICAgICAgICAgICBpZiAoZXJyb3JfcG9zID09IChzaXplX3QpLTEpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgICAgIFB5TWVtX0ZyZWUod3N0cik7CisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBnb3RvIGVuY29kZV9lcnJvcjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBQeU1lbV9GcmVlKHdzdHIpOworCisgICAgICAgIGJ5dGVzID0gUHlCeXRlc19Gcm9tU3RyaW5nKHN0cik7CisgICAgICAgIFB5TWVtX0ZyZWUoc3RyKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHNpemVfdCBsZW4sIGxlbjI7CisKKyAgICAgICAgbGVuID0gd2NzdG9tYnMoTlVMTCwgd3N0ciwgMCk7CisgICAgICAgIGlmIChsZW4gPT0gKHNpemVfdCktMSkgeworICAgICAgICAgICAgZXJyb3JfcG9zID0gKHNpemVfdCktMTsKKyAgICAgICAgICAgIGdvdG8gZW5jb2RlX2Vycm9yOworICAgICAgICB9CisKKyAgICAgICAgYnl0ZXMgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGxlbik7CisgICAgICAgIGlmIChieXRlcyA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeU1lbV9GcmVlKHdzdHIpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKworICAgICAgICBsZW4yID0gd2NzdG9tYnMoUHlCeXRlc19BU19TVFJJTkcoYnl0ZXMpLCB3c3RyLCBsZW4rMSk7CisgICAgICAgIGlmIChsZW4yID09IChzaXplX3QpLTEgfHwgbGVuMiA+IGxlbikgeworICAgICAgICAgICAgZXJyb3JfcG9zID0gKHNpemVfdCktMTsKKyAgICAgICAgICAgIGdvdG8gZW5jb2RlX2Vycm9yOworICAgICAgICB9CisgICAgICAgIFB5TWVtX0ZyZWUod3N0cik7CisgICAgfQorICAgIHJldHVybiBieXRlczsKKworZW5jb2RlX2Vycm9yOgorICAgIGVycm1zZyA9IHN0cmVycm9yKGVycm5vKTsKKyAgICBhc3NlcnQoZXJybXNnICE9IE5VTEwpOworCisgICAgaWYgKGVycm9yX3BvcyA9PSAoc2l6ZV90KS0xKQorICAgICAgICBlcnJvcl9wb3MgPSB3Y3N0b21ic19lcnJvcnBvcyh3c3RyKTsKKworICAgIFB5TWVtX0ZyZWUod3N0cik7CisgICAgUHlfWERFQ1JFRihieXRlcyk7CisKKyAgICBpZiAoZXJybXNnICE9IE5VTEwpIHsKKyAgICAgICAgc2l6ZV90IGVycmxlbjsKKyAgICAgICAgd3N0ciA9IF9QeV9jaGFyMndjaGFyKGVycm1zZywgJmVycmxlbik7CisgICAgICAgIGlmICh3c3RyICE9IE5VTEwpIHsKKyAgICAgICAgICAgIHJlYXNvbiA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIod3N0ciwgZXJybGVuKTsKKyAgICAgICAgICAgIFB5TWVtX0ZyZWUod3N0cik7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgZXJybXNnID0gTlVMTDsKKyAgICB9CisgICAgaWYgKGVycm1zZyA9PSBOVUxMKQorICAgICAgICByZWFzb24gPSBQeVVuaWNvZGVfRnJvbVN0cmluZygKKyAgICAgICAgICAgICJ3Y3N0b21icygpIGVuY291bnRlcmVkIGFuIHVuZW5jb2RhYmxlICIKKyAgICAgICAgICAgICJ3aWRlIGNoYXJhY3RlciIpOworICAgIGlmIChyZWFzb24gPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBleGMgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb24oUHlFeGNfVW5pY29kZUVuY29kZUVycm9yLCAic09ubk8iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxlIiwgdW5pY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFB5X3NzaXplX3QpZXJyb3JfcG9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlfc3NpemVfdCkoZXJyb3JfcG9zKzEpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWFzb24pOworICAgIFB5X0RFQ1JFRihyZWFzb24pOworICAgIGlmIChleGMgIT0gTlVMTCkgeworICAgICAgICBQeUNvZGVjX1N0cmljdEVycm9ycyhleGMpOworICAgICAgICBQeV9YREVDUkVGKGV4Yyk7CisgICAgfQorICAgIHJldHVybiBOVUxMOworfQorCiBQeU9iamVjdCAqCiBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KFB5T2JqZWN0ICp1bmljb2RlKQogewotI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgZGVmaW5lZChIQVZFX1VTQUJMRV9XQ0hBUl9UKQotICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlTUJDUyhQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyNpZmRlZiBIQVZFX01CQ1MKKyAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZUNvZGVQYWdlKENQX0FDUCwgdW5pY29kZSwgTlVMTCk7CiAjZWxpZiBkZWZpbmVkKF9fQVBQTEVfXykKLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZVVURjgoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN1cnJvZ2F0ZWVzY2FwZSIpOworICAgIHJldHVybiBfUHlVbmljb2RlX0FzVVRGOFN0cmluZyh1bmljb2RlLCAic3Vycm9nYXRlZXNjYXBlIik7CiAjZWxzZQogICAgIFB5SW50ZXJwcmV0ZXJTdGF0ZSAqaW50ZXJwID0gUHlUaHJlYWRTdGF0ZV9HRVQoKS0+aW50ZXJwOwogICAgIC8qIEJvb3RzdHJhcCBjaGVjazogaWYgdGhlIGZpbGVzeXN0ZW0gY29kZWMgaXMgaW1wbGVtZW50ZWQgaW4gUHl0aG9uLCB3ZQpAQCAtMTY0Miw0NiArMzI4OCwxNSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3Vycm9nYXRlZXNjYXBlIik7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICAvKiBsb2NhbGUgZW5jb2Rpbmcgd2l0aCBzdXJyb2dhdGVlc2NhcGUgKi8KLSAgICAgICAgd2NoYXJfdCAqd2NoYXI7Ci0gICAgICAgIGNoYXIgKmJ5dGVzOwotICAgICAgICBQeU9iamVjdCAqYnl0ZXNfb2JqOwotICAgICAgICBzaXplX3QgZXJyb3JfcG9zOwotCi0gICAgICAgIHdjaGFyID0gUHlVbmljb2RlX0FzV2lkZUNoYXJTdHJpbmcodW5pY29kZSwgTlVMTCk7Ci0gICAgICAgIGlmICh3Y2hhciA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGJ5dGVzID0gX1B5X3djaGFyMmNoYXIod2NoYXIsICZlcnJvcl9wb3MpOwotICAgICAgICBpZiAoYnl0ZXMgPT0gTlVMTCkgewotICAgICAgICAgICAgaWYgKGVycm9yX3BvcyAhPSAoc2l6ZV90KS0xKSB7Ci0gICAgICAgICAgICAgICAgY2hhciAqZXJybXNnID0gc3RyZXJyb3IoZXJybm8pOwotICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOwotICAgICAgICAgICAgICAgIGlmIChlcnJtc2cgPT0gTlVMTCkKLSAgICAgICAgICAgICAgICAgICAgZXJybXNnID0gIlB5X3djaGFyMmNoYXIoKSBmYWlsZWQiOwotICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oJmV4YywKLSAgICAgICAgICAgICAgICAgICAgImZpbGVzeXN0ZW1lbmNvZGluZyIsCi0gICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLCBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgIGVycm9yX3BvcywgZXJyb3JfcG9zKzEsCi0gICAgICAgICAgICAgICAgICAgIGVycm1zZyk7Ci0gICAgICAgICAgICAgICAgUHlfWERFQ1JFRihleGMpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgICAgICBQeU1lbV9GcmVlKHdjaGFyKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIFB5TWVtX0ZyZWUod2NoYXIpOwotCi0gICAgICAgIGJ5dGVzX29iaiA9IFB5Qnl0ZXNfRnJvbVN0cmluZyhieXRlcyk7Ci0gICAgICAgIFB5TWVtX0ZyZWUoYnl0ZXMpOwotICAgICAgICByZXR1cm4gYnl0ZXNfb2JqOworICAgICAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZUxvY2FsZSh1bmljb2RlLCAic3Vycm9nYXRlZXNjYXBlIik7CiAgICAgfQogI2VuZGlmCiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIFB5T2JqZWN0ICp2OwogICAgIGNoYXIgbG93ZXJbMTFdOyAgLyogRW5vdWdoIGZvciBhbnkgZW5jb2Rpbmcgc2hvcnRjdXQgKi8KQEAgLTE2OTEsNDYgKzMzMDYsMjcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAgaWYgKGVuY29kaW5nID09IE5VTEwpCi0gICAgICAgIGVuY29kaW5nID0gUHlVbmljb2RlX0dldERlZmF1bHRFbmNvZGluZygpOwotCiAgICAgLyogU2hvcnRjdXRzIGZvciBjb21tb24gZGVmYXVsdCBlbmNvZGluZ3MgKi8KICAgICBpZiAobm9ybWFsaXplX2VuY29kaW5nKGVuY29kaW5nLCBsb3dlciwgc2l6ZW9mKGxvd2VyKSkpIHsKLSAgICAgICAgaWYgKHN0cmNtcChsb3dlciwgInV0Zi04IikgPT0gMCkKLSAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlVVRGOChQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKTsKKyAgICAgICAgaWYgKChzdHJjbXAobG93ZXIsICJ1dGYtOCIpID09IDApIHx8CisgICAgICAgICAgICAoc3RyY21wKGxvd2VyLCAidXRmOCIpID09IDApKQorICAgICAgICB7CisgICAgICAgICAgICBpZiAoZXJyb3JzID09IE5VTEwgfHwgc3RyY21wKGVycm9ycywgInN0cmljdCIpID09IDApCisgICAgICAgICAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfQXNVVEY4U3RyaW5nKHVuaWNvZGUsIE5VTEwpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJldHVybiBfUHlVbmljb2RlX0FzVVRGOFN0cmluZyh1bmljb2RlLCBlcnJvcnMpOworICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKChzdHJjbXAobG93ZXIsICJsYXRpbi0xIikgPT0gMCkgfHwKKyAgICAgICAgICAgICAgICAgKHN0cmNtcChsb3dlciwgImxhdGluMSIpID09IDApIHx8CiAgICAgICAgICAgICAgICAgIChzdHJjbXAobG93ZXIsICJpc28tODg1OS0xIikgPT0gMCkpCi0gICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZUxhdGluMShQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyk7Ci0jaWYgZGVmaW5lZChNU19XSU5ET1dTKSAmJiBkZWZpbmVkKEhBVkVfVVNBQkxFX1dDSEFSX1QpCisgICAgICAgICAgICByZXR1cm4gX1B5VW5pY29kZV9Bc0xhdGluMVN0cmluZyh1bmljb2RlLCBlcnJvcnMpOworI2lmZGVmIEhBVkVfTUJDUwogICAgICAgICBlbHNlIGlmIChzdHJjbXAobG93ZXIsICJtYmNzIikgPT0gMCkKLSAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlTUJDUyhQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKTsKKyAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlQ29kZVBhZ2UoQ1BfQUNQLCB1bmljb2RlLCBlcnJvcnMpOwogI2VuZGlmCiAgICAgICAgIGVsc2UgaWYgKHN0cmNtcChsb3dlciwgImFzY2lpIikgPT0gMCkKLSAgICAgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlQVNDSUkoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKTsKKyAgICAgICAgICAgIHJldHVybiBfUHlVbmljb2RlX0FzQVNDSUlTdHJpbmcodW5pY29kZSwgZXJyb3JzKTsKICAgICB9Ci0gICAgLyogRHVyaW5nIGJvb3RzdHJhcCwgd2UgbWF5IG5lZWQgdG8gZmluZCB0aGUgZW5jb2RpbmdzCi0gICAgICAgcGFja2FnZSwgdG8gbG9hZCB0aGUgZmlsZSBzeXN0ZW0gZW5jb2RpbmcsIGFuZCByZXF1aXJlIHRoZQotICAgICAgIGZpbGUgc3lzdGVtIGVuY29kaW5nIGluIG9yZGVyIHRvIGxvYWQgdGhlIGVuY29kaW5ncwotICAgICAgIHBhY2thZ2UuCi0KLSAgICAgICBCcmVhayBvdXQgb2YgdGhpcyBkZXBlbmRlbmN5IGJ5IGFzc3VtaW5nIHRoYXQgdGhlIHBhdGggdG8KLSAgICAgICB0aGUgZW5jb2RpbmdzIG1vZHVsZSBpcyBBU0NJSS1vbmx5LiAgWFhYIGNvdWxkIHRyeSB3Y3N0b21icwotICAgICAgIGluc3RlYWQsIGlmIHRoZSBmaWxlIHN5c3RlbSBlbmNvZGluZyBpcyB0aGUgbG9jYWxlJ3MKLSAgICAgICBlbmNvZGluZy4gKi8KLSAgICBpZiAoUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyAmJgotICAgICAgICAgICAgIHN0cmNtcChlbmNvZGluZywgUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZykgPT0gMCAmJgotICAgICAgICAgICAgICFQeVRocmVhZFN0YXRlX0dFVCgpLT5pbnRlcnAtPmNvZGVjc19pbml0aWFsaXplZCkKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVBU0NJSShQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKTsKIAogICAgIC8qIEVuY29kZSB2aWEgdGhlIGNvZGVjIHJlZ2lzdHJ5ICovCiAgICAgdiA9IFB5Q29kZWNfRW5jb2RlKHVuaWNvZGUsIGVuY29kaW5nLCBlcnJvcnMpOwpAQCAtMTc2Niw5ICszMzYyLDEwIEBACiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfQXNFbmNvZGVkVW5pY29kZShQeU9iamVjdCAqdW5pY29kZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfQXNFbmNvZGVkVW5pY29kZShQeU9iamVjdCAqdW5pY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIFB5T2JqZWN0ICp2OwogCkBAIC0xNzk3LDI0ICszMzk0LDE1MSBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqX1B5VW5pY29kZV9Bc0RlZmF1bHRFbmNvZGVkU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitzdGF0aWMgc2l6ZV90CittYnN0b3djc19lcnJvcnBvcyhjb25zdCBjaGFyICpzdHIsIHNpemVfdCBsZW4pCiB7Ci0gICAgUHlPYmplY3QgKnYgPSAoKFB5VW5pY29kZU9iamVjdCAqKXVuaWNvZGUpLT5kZWZlbmM7Ci0gICAgaWYgKHYpCi0gICAgICAgIHJldHVybiB2OwotICAgIGlmIChlcnJvcnMgIT0gTlVMTCkKLSAgICAgICAgUHlfRmF0YWxFcnJvcigibm9uLU5VTEwgZW5jb2RpbmcgaW4gX1B5VW5pY29kZV9Bc0RlZmF1bHRFbmNvZGVkU3RyaW5nIik7Ci0gICAgdiA9IFB5VW5pY29kZV9FbmNvZGVVVEY4KFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOwotICAgIGlmICghdikKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgKChQeVVuaWNvZGVPYmplY3QgKil1bmljb2RlKS0+ZGVmZW5jID0gdjsKLSAgICByZXR1cm4gdjsKKyNpZmRlZiBIQVZFX01CUlRPV0MKKyAgICBjb25zdCBjaGFyICpzdGFydCA9IHN0cjsKKyAgICBtYnN0YXRlX3QgbWJzOworICAgIHNpemVfdCBjb252ZXJ0ZWQ7CisgICAgd2NoYXJfdCBjaDsKKworICAgIG1lbXNldCgmbWJzLCAwLCBzaXplb2YgbWJzKTsKKyAgICB3aGlsZSAobGVuKQorICAgIHsKKyAgICAgICAgY29udmVydGVkID0gbWJydG93YygmY2gsIChjaGFyKilzdHIsIGxlbiwgJm1icyk7CisgICAgICAgIGlmIChjb252ZXJ0ZWQgPT0gMCkKKyAgICAgICAgICAgIC8qIFJlYWNoZWQgZW5kIG9mIHN0cmluZyAqLworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGlmIChjb252ZXJ0ZWQgPT0gKHNpemVfdCktMSB8fCBjb252ZXJ0ZWQgPT0gKHNpemVfdCktMikgeworICAgICAgICAgICAgLyogQ29udmVyc2lvbiBlcnJvciBvciBpbmNvbXBsZXRlIGNoYXJhY3RlciAqLworICAgICAgICAgICAgcmV0dXJuIHN0ciAtIHN0YXJ0OworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgc3RyICs9IGNvbnZlcnRlZDsKKyAgICAgICAgICAgIGxlbiAtPSBjb252ZXJ0ZWQ7CisgICAgICAgIH0KKyAgICB9CisgICAgLyogZmFpbGVkIHRvIGZpbmQgdGhlIHVuZGVjb2RhYmxlIGJ5dGUgc2VxdWVuY2UgKi8KKyAgICByZXR1cm4gMDsKKyNlbmRpZgorICAgIHJldHVybiAwOwogfQogCiBQeU9iamVjdCoKK1B5VW5pY29kZV9EZWNvZGVMb2NhbGVBbmRTaXplKGNvbnN0IGNoYXIgKnN0ciwgUHlfc3NpemVfdCBsZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCit7CisgICAgd2NoYXJfdCBzbWFsbGJ1ZlsyNTZdOworICAgIHNpemVfdCBzbWFsbGJ1Zl9sZW4gPSBQeV9BUlJBWV9MRU5HVEgoc21hbGxidWYpOworICAgIHdjaGFyX3QgKndzdHI7CisgICAgc2l6ZV90IHdsZW4sIHdsZW4yOworICAgIFB5T2JqZWN0ICp1bmljb2RlOworICAgIGludCBzdXJyb2dhdGVlc2NhcGU7CisgICAgc2l6ZV90IGVycm9yX3BvczsKKyAgICBjaGFyICplcnJtc2c7CisgICAgUHlPYmplY3QgKnJlYXNvbiwgKmV4YzsKKworICAgIGlmIChsb2NhbGVfZXJyb3JfaGFuZGxlcihlcnJvcnMsICZzdXJyb2dhdGVlc2NhcGUpIDwgMCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoc3RyW2xlbl0gIT0gJ1wwJyB8fCBsZW4gIT0gc3RybGVuKHN0cikpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImVtYmVkZGVkIG51bGwgY2hhcmFjdGVyIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGlmIChzdXJyb2dhdGVlc2NhcGUpCisgICAgeworICAgICAgICB3c3RyID0gX1B5X2NoYXIyd2NoYXIoc3RyLCAmd2xlbik7CisgICAgICAgIGlmICh3c3RyID09IE5VTEwpIHsKKyAgICAgICAgICAgIGlmICh3bGVuID09IChzaXplX3QpLTEpCisgICAgICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorCisgICAgICAgIHVuaWNvZGUgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHdzdHIsIHdsZW4pOworICAgICAgICBQeU1lbV9GcmVlKHdzdHIpOworICAgIH0KKyAgICBlbHNlIHsKKyNpZm5kZWYgSEFWRV9CUk9LRU5fTUJTVE9XQ1MKKyAgICAgICAgd2xlbiA9IG1ic3Rvd2NzKE5VTEwsIHN0ciwgMCk7CisjZWxzZQorICAgICAgICB3bGVuID0gbGVuOworI2VuZGlmCisgICAgICAgIGlmICh3bGVuID09IChzaXplX3QpLTEpCisgICAgICAgICAgICBnb3RvIGRlY29kZV9lcnJvcjsKKyAgICAgICAgaWYgKHdsZW4rMSA8PSBzbWFsbGJ1Zl9sZW4pIHsKKyAgICAgICAgICAgIHdzdHIgPSBzbWFsbGJ1ZjsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGlmICh3bGVuID4gUFlfU1NJWkVfVF9NQVggLyBzaXplb2Yod2NoYXJfdCkgLSAxKQorICAgICAgICAgICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOworCisgICAgICAgICAgICB3c3RyID0gUHlNZW1fTWFsbG9jKCh3bGVuKzEpICogc2l6ZW9mKHdjaGFyX3QpKTsKKyAgICAgICAgICAgIGlmICghd3N0cikKKyAgICAgICAgICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgfQorCisgICAgICAgIC8qIFRoaXMgc2hvdWxkbid0IGZhaWwgbm93ICovCisgICAgICAgIHdsZW4yID0gbWJzdG93Y3Mod3N0ciwgc3RyLCB3bGVuKzEpOworICAgICAgICBpZiAod2xlbjIgPT0gKHNpemVfdCktMSkgeworICAgICAgICAgICAgaWYgKHdzdHIgIT0gc21hbGxidWYpCisgICAgICAgICAgICAgICAgUHlNZW1fRnJlZSh3c3RyKTsKKyAgICAgICAgICAgIGdvdG8gZGVjb2RlX2Vycm9yOworICAgICAgICB9CisjaWZkZWYgSEFWRV9CUk9LRU5fTUJTVE9XQ1MKKyAgICAgICAgYXNzZXJ0KHdsZW4yID09IHdsZW4pOworI2VuZGlmCisgICAgICAgIHVuaWNvZGUgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHdzdHIsIHdsZW4yKTsKKyAgICAgICAgaWYgKHdzdHIgIT0gc21hbGxidWYpCisgICAgICAgICAgICBQeU1lbV9GcmVlKHdzdHIpOworICAgIH0KKyAgICByZXR1cm4gdW5pY29kZTsKKworZGVjb2RlX2Vycm9yOgorICAgIGVycm1zZyA9IHN0cmVycm9yKGVycm5vKTsKKyAgICBhc3NlcnQoZXJybXNnICE9IE5VTEwpOworCisgICAgZXJyb3JfcG9zID0gbWJzdG93Y3NfZXJyb3Jwb3Moc3RyLCBsZW4pOworICAgIGlmIChlcnJtc2cgIT0gTlVMTCkgeworICAgICAgICBzaXplX3QgZXJybGVuOworICAgICAgICB3c3RyID0gX1B5X2NoYXIyd2NoYXIoZXJybXNnLCAmZXJybGVuKTsKKyAgICAgICAgaWYgKHdzdHIgIT0gTlVMTCkgeworICAgICAgICAgICAgcmVhc29uID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcih3c3RyLCBlcnJsZW4pOworICAgICAgICAgICAgUHlNZW1fRnJlZSh3c3RyKTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBlcnJtc2cgPSBOVUxMOworICAgIH0KKyAgICBpZiAoZXJybXNnID09IE5VTEwpCisgICAgICAgIHJlYXNvbiA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKAorICAgICAgICAgICAgIm1ic3Rvd2NzKCkgZW5jb3VudGVyZWQgYW4gaW52YWxpZCBtdWx0aWJ5dGUgc2VxdWVuY2UiKTsKKyAgICBpZiAocmVhc29uID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgZXhjID0gUHlPYmplY3RfQ2FsbEZ1bmN0aW9uKFB5RXhjX1VuaWNvZGVEZWNvZGVFcnJvciwgInN5I25uTyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhbGUiLCBzdHIsIGxlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFB5X3NzaXplX3QpZXJyb3JfcG9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlfc3NpemVfdCkoZXJyb3JfcG9zKzEpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWFzb24pOworICAgIFB5X0RFQ1JFRihyZWFzb24pOworICAgIGlmIChleGMgIT0gTlVMTCkgeworICAgICAgICBQeUNvZGVjX1N0cmljdEVycm9ycyhleGMpOworICAgICAgICBQeV9YREVDUkVGKGV4Yyk7CisgICAgfQorICAgIHJldHVybiBOVUxMOworfQorCitQeU9iamVjdCoKK1B5VW5pY29kZV9EZWNvZGVMb2NhbGUoY29uc3QgY2hhciAqc3RyLCBjb25zdCBjaGFyICplcnJvcnMpCit7CisgICAgUHlfc3NpemVfdCBzaXplID0gKFB5X3NzaXplX3Qpc3RybGVuKHN0cik7CisgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVMb2NhbGVBbmRTaXplKHN0ciwgc2l6ZSwgZXJyb3JzKTsKK30KKworCitQeU9iamVjdCoKIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQoY29uc3QgY2hhciAqcykgewogICAgIFB5X3NzaXplX3Qgc2l6ZSA9IChQeV9zc2l6ZV90KXN0cmxlbihzKTsKICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemUocywgc2l6ZSk7CkBAIC0xODIzLDEwICszNTQ3LDEwIEBACiBQeU9iamVjdCoKIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHRBbmRTaXplKGNvbnN0IGNoYXIgKnMsIFB5X3NzaXplX3Qgc2l6ZSkKIHsKLSNpZiBkZWZpbmVkKE1TX1dJTkRPV1MpICYmIGRlZmluZWQoSEFWRV9VU0FCTEVfV0NIQVJfVCkKKyNpZmRlZiBIQVZFX01CQ1MKICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZU1CQ1Mocywgc2l6ZSwgTlVMTCk7CiAjZWxpZiBkZWZpbmVkKF9fQVBQTEVfXykKLSAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZVVURjgocywgc2l6ZSwgInN1cnJvZ2F0ZWVzY2FwZSIpOworICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlVVRGOFN0YXRlZnVsKHMsIHNpemUsICJzdXJyb2dhdGVlc2NhcGUiLCBOVUxMKTsKICNlbHNlCiAgICAgUHlJbnRlcnByZXRlclN0YXRlICppbnRlcnAgPSBQeVRocmVhZFN0YXRlX0dFVCgpLT5pbnRlcnA7CiAgICAgLyogQm9vdHN0cmFwIGNoZWNrOiBpZiB0aGUgZmlsZXN5c3RlbSBjb2RlYyBpcyBpbXBsZW1lbnRlZCBpbiBQeXRob24sIHdlCkBAIC0xODQ0LDIzICszNTY4LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN1cnJvZ2F0ZWVzY2FwZSIpOwogICAgIH0KICAgICBlbHNlIHsKLSAgICAgICAgLyogbG9jYWxlIGVuY29kaW5nIHdpdGggc3Vycm9nYXRlZXNjYXBlICovCi0gICAgICAgIHdjaGFyX3QgKndjaGFyOwotICAgICAgICBQeU9iamVjdCAqdW5pY29kZTsKLSAgICAgICAgc2l6ZV90IGxlbjsKLQotICAgICAgICBpZiAoc1tzaXplXSAhPSAnXDAnIHx8IHNpemUgIT0gc3RybGVuKHMpKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiZW1iZWRkZWQgTlVMIGNoYXJhY3RlciIpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLQotICAgICAgICB3Y2hhciA9IF9QeV9jaGFyMndjaGFyKHMsICZsZW4pOwotICAgICAgICBpZiAod2NoYXIgPT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOwotCi0gICAgICAgIHVuaWNvZGUgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHdjaGFyLCBsZW4pOwotICAgICAgICBQeU1lbV9GcmVlKHdjaGFyKTsKLSAgICAgICAgcmV0dXJuIHVuaWNvZGU7CisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlTG9jYWxlQW5kU2l6ZShzLCBzaXplLCAic3Vycm9nYXRlZXNjYXBlIik7CiAgICAgfQogI2VuZGlmCiB9CkBAIC0xOTIzLDEzICszNjMxLDEzIEBACiBQeVVuaWNvZGVfRlNEZWNvZGVyKFB5T2JqZWN0KiBhcmcsIHZvaWQqIGFkZHIpCiB7CiAgICAgUHlPYmplY3QgKm91dHB1dCA9IE5VTEw7Ci0gICAgUHlfc3NpemVfdCBzaXplOwotICAgIHZvaWQgKmRhdGE7CiAgICAgaWYgKGFyZyA9PSBOVUxMKSB7CiAgICAgICAgIFB5X0RFQ1JFRigqKFB5T2JqZWN0KiopYWRkcik7CiAgICAgICAgIHJldHVybiAxOwogICAgIH0KICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKGFyZykpIHsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShhcmcpID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIG91dHB1dCA9IGFyZzsKICAgICAgICAgUHlfSU5DUkVGKG91dHB1dCk7CiAgICAgfQpAQCAtMTk0OCw5ICszNjU2LDEyIEBACiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQogICAgIH0KLSAgICBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKG91dHB1dCk7Ci0gICAgZGF0YSA9IFB5VW5pY29kZV9BU19VTklDT0RFKG91dHB1dCk7Ci0gICAgaWYgKHNpemUgIT0gUHlfVU5JQ09ERV9zdHJsZW4oZGF0YSkpIHsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKG91dHB1dCkgPT0gLTEpIHsKKyAgICAgICAgUHlfREVDUkVGKG91dHB1dCk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBpZiAoZmluZGNoYXIoUHlVbmljb2RlX0RBVEEob3V0cHV0KSwgUHlVbmljb2RlX0tJTkQob3V0cHV0KSwKKyAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgob3V0cHV0KSwgMCwgMSkgPj0gMCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAiZW1iZWRkZWQgTlVMIGNoYXJhY3RlciIpOwogICAgICAgICBQeV9ERUNSRUYob3V0cHV0KTsKICAgICAgICAgcmV0dXJuIDA7CkBAIC0xOTYxLDQwICszNjcyLDE3NSBAQAogCiAKIGNoYXIqCi1fUHlVbmljb2RlX0FzU3RyaW5nQW5kU2l6ZShQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCAqcHNpemUpCitQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZShQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCAqcHNpemUpCiB7CiAgICAgUHlPYmplY3QgKmJ5dGVzOworCiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkpIHsKICAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIGJ5dGVzID0gX1B5VW5pY29kZV9Bc0RlZmF1bHRFbmNvZGVkU3RyaW5nKHVuaWNvZGUsIE5VTEwpOwotICAgIGlmIChieXRlcyA9PSBOVUxMKQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodW5pY29kZSkgPT0gLTEpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmIChwc2l6ZSAhPSBOVUxMKQotICAgICAgICAqcHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKGJ5dGVzKTsKLSAgICByZXR1cm4gUHlCeXRlc19BU19TVFJJTkcoYnl0ZXMpOworCisgICAgaWYgKFB5VW5pY29kZV9VVEY4KHVuaWNvZGUpID09IE5VTEwpIHsKKyAgICAgICAgYXNzZXJ0KCFQeVVuaWNvZGVfSVNfQ09NUEFDVF9BU0NJSSh1bmljb2RlKSk7CisgICAgICAgIGJ5dGVzID0gX1B5VW5pY29kZV9Bc1VURjhTdHJpbmcodW5pY29kZSwgInN0cmljdCIpOworICAgICAgICBpZiAoYnl0ZXMgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBfUHlVbmljb2RlX1VURjgodW5pY29kZSkgPSBQeU9iamVjdF9NQUxMT0MoUHlCeXRlc19HRVRfU0laRShieXRlcykgKyAxKTsKKyAgICAgICAgaWYgKF9QeVVuaWNvZGVfVVRGOCh1bmljb2RlKSA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoYnl0ZXMpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgX1B5VW5pY29kZV9VVEY4X0xFTkdUSCh1bmljb2RlKSA9IFB5Qnl0ZXNfR0VUX1NJWkUoYnl0ZXMpOworICAgICAgICBQeV9NRU1DUFkoX1B5VW5pY29kZV9VVEY4KHVuaWNvZGUpLAorICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoYnl0ZXMpLAorICAgICAgICAgICAgICAgICAgX1B5VW5pY29kZV9VVEY4X0xFTkdUSCh1bmljb2RlKSArIDEpOworICAgICAgICBQeV9ERUNSRUYoYnl0ZXMpOworICAgIH0KKworICAgIGlmIChwc2l6ZSkKKyAgICAgICAgKnBzaXplID0gUHlVbmljb2RlX1VURjhfTEVOR1RIKHVuaWNvZGUpOworICAgIHJldHVybiBQeVVuaWNvZGVfVVRGOCh1bmljb2RlKTsKIH0KIAogY2hhcioKLV9QeVVuaWNvZGVfQXNTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCitQeVVuaWNvZGVfQXNVVEY4KFB5T2JqZWN0ICp1bmljb2RlKQogewotICAgIHJldHVybiBfUHlVbmljb2RlX0FzU3RyaW5nQW5kU2l6ZSh1bmljb2RlLCBOVUxMKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0FzVVRGOEFuZFNpemUodW5pY29kZSwgTlVMTCk7CiB9CiAKLVB5X1VOSUNPREUgKlB5VW5pY29kZV9Bc1VuaWNvZGUoUHlPYmplY3QgKnVuaWNvZGUpCisjaWZkZWYgUHlfREVCVUcKK3N0YXRpYyBpbnQgdW5pY29kZV9hc191bmljb2RlX2NhbGxzID0gMDsKKyNlbmRpZgorCisKK1B5X1VOSUNPREUgKgorUHlVbmljb2RlX0FzVW5pY29kZUFuZFNpemUoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3QgKnNpemUpCiB7CisgICAgY29uc3QgdW5zaWduZWQgY2hhciAqb25lX2J5dGU7CisjaWYgU0laRU9GX1dDSEFSX1QgPT0gNAorICAgIGNvbnN0IFB5X1VDUzIgKnR3b19ieXRlczsKKyNlbHNlCisgICAgY29uc3QgUHlfVUNTNCAqZm91cl9ieXRlczsKKyAgICBjb25zdCBQeV9VQ1M0ICp1Y3M0X2VuZDsKKyAgICBQeV9zc2l6ZV90IG51bV9zdXJyb2dhdGVzOworI2VuZGlmCisgICAgd2NoYXJfdCAqdzsKKyAgICB3Y2hhcl90ICp3Y2hhcl9lbmQ7CisKICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwotICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXR1cm4gUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSk7CisgICAgaWYgKF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSA9PSBOVUxMKSB7CisgICAgICAgIC8qIE5vbi1BU0NJSSBjb21wYWN0IHVuaWNvZGUgb2JqZWN0ICovCisgICAgICAgIGFzc2VydChfUHlVbmljb2RlX0tJTkQodW5pY29kZSkgIT0gMCk7CisgICAgICAgIGFzc2VydChQeVVuaWNvZGVfSVNfUkVBRFkodW5pY29kZSkpOwogCi0gIG9uRXJyb3I6Ci0gICAgcmV0dXJuIE5VTEw7CisjaWZkZWYgUHlfREVCVUcKKyAgICAgICAgKyt1bmljb2RlX2FzX3VuaWNvZGVfY2FsbHM7CisjZW5kaWYKKworICAgICAgICBpZiAoUHlVbmljb2RlX0tJTkQodW5pY29kZSkgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpIHsKKyNpZiBTSVpFT0ZfV0NIQVJfVCA9PSAyCisgICAgICAgICAgICBmb3VyX2J5dGVzID0gUHlVbmljb2RlXzRCWVRFX0RBVEEodW5pY29kZSk7CisgICAgICAgICAgICB1Y3M0X2VuZCA9IGZvdXJfYnl0ZXMgKyBfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKTsKKyAgICAgICAgICAgIG51bV9zdXJyb2dhdGVzID0gMDsKKworICAgICAgICAgICAgZm9yICg7IGZvdXJfYnl0ZXMgPCB1Y3M0X2VuZDsgKytmb3VyX2J5dGVzKSB7CisgICAgICAgICAgICAgICAgaWYgKCpmb3VyX2J5dGVzID4gMHhGRkZGKQorICAgICAgICAgICAgICAgICAgICArK251bV9zdXJyb2dhdGVzOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSAod2NoYXJfdCAqKSBQeU9iamVjdF9NQUxMT0MoCisgICAgICAgICAgICAgICAgICAgIHNpemVvZih3Y2hhcl90KSAqIChfUHlVbmljb2RlX0xFTkdUSCh1bmljb2RlKSArIDEgKyBudW1fc3Vycm9nYXRlcykpOworICAgICAgICAgICAgaWYgKCFfUHlVbmljb2RlX1dTVFIodW5pY29kZSkpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgfQorICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKSA9IF9QeVVuaWNvZGVfTEVOR1RIKHVuaWNvZGUpICsgbnVtX3N1cnJvZ2F0ZXM7CisKKyAgICAgICAgICAgIHcgPSBfUHlVbmljb2RlX1dTVFIodW5pY29kZSk7CisgICAgICAgICAgICB3Y2hhcl9lbmQgPSB3ICsgX1B5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKTsKKyAgICAgICAgICAgIGZvdXJfYnl0ZXMgPSBQeVVuaWNvZGVfNEJZVEVfREFUQSh1bmljb2RlKTsKKyAgICAgICAgICAgIGZvciAoOyBmb3VyX2J5dGVzIDwgdWNzNF9lbmQ7ICsrZm91cl9ieXRlcywgKyt3KSB7CisgICAgICAgICAgICAgICAgaWYgKCpmb3VyX2J5dGVzID4gMHhGRkZGKSB7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydCgqZm91cl9ieXRlcyA8PSBNQVhfVU5JQ09ERSk7CisgICAgICAgICAgICAgICAgICAgIC8qIGVuY29kZSBzdXJyb2dhdGUgcGFpciBpbiB0aGlzIGNhc2UgKi8KKyAgICAgICAgICAgICAgICAgICAgKncrKyA9IFB5X1VOSUNPREVfSElHSF9TVVJST0dBVEUoKmZvdXJfYnl0ZXMpOworICAgICAgICAgICAgICAgICAgICAqdyAgID0gUHlfVU5JQ09ERV9MT1dfU1VSUk9HQVRFKCpmb3VyX2J5dGVzKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAqdyA9ICpmb3VyX2J5dGVzOworCisgICAgICAgICAgICAgICAgaWYgKHcgPiB3Y2hhcl9lbmQpIHsKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KDAgJiYgIk1pc2NhbGN1bGF0ZWQgc3RyaW5nIGVuZCIpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICp3ID0gMDsKKyNlbHNlCisgICAgICAgICAgICAvKiBzaXplb2Yod2NoYXJfdCkgPT0gNCAqLworICAgICAgICAgICAgUHlfRmF0YWxFcnJvcigiSW1wb3NzaWJsZSB1bmljb2RlIG9iamVjdCBzdGF0ZSwgd3N0ciBhbmQgc3RyICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgInNob3VsZCBzaGFyZSBtZW1vcnkgYWxyZWFkeS4iKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworI2VuZGlmCisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBfUHlVbmljb2RlX1dTVFIodW5pY29kZSkgPSAod2NoYXJfdCAqKSBQeU9iamVjdF9NQUxMT0Moc2l6ZW9mKHdjaGFyX3QpICoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKF9QeVVuaWNvZGVfTEVOR1RIKHVuaWNvZGUpICsgMSkpOworICAgICAgICAgICAgaWYgKCFfUHlVbmljb2RlX1dTVFIodW5pY29kZSkpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKCFQeVVuaWNvZGVfSVNfQ09NUEFDVF9BU0NJSSh1bmljb2RlKSkKKyAgICAgICAgICAgICAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHVuaWNvZGUpID0gX1B5VW5pY29kZV9MRU5HVEgodW5pY29kZSk7CisgICAgICAgICAgICB3ID0gX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpOworICAgICAgICAgICAgd2NoYXJfZW5kID0gdyArIF9QeVVuaWNvZGVfTEVOR1RIKHVuaWNvZGUpOworCisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0tJTkQodW5pY29kZSkgPT0gUHlVbmljb2RlXzFCWVRFX0tJTkQpIHsKKyAgICAgICAgICAgICAgICBvbmVfYnl0ZSA9IFB5VW5pY29kZV8xQllURV9EQVRBKHVuaWNvZGUpOworICAgICAgICAgICAgICAgIGZvciAoOyB3IDwgd2NoYXJfZW5kOyArK29uZV9ieXRlLCArK3cpCisgICAgICAgICAgICAgICAgICAgICp3ID0gKm9uZV9ieXRlOworICAgICAgICAgICAgICAgIC8qIG51bGwtdGVybWluYXRlIHRoZSB3c3RyICovCisgICAgICAgICAgICAgICAgKncgPSAwOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX0tJTkQodW5pY29kZSkgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQpIHsKKyNpZiBTSVpFT0ZfV0NIQVJfVCA9PSA0CisgICAgICAgICAgICAgICAgdHdvX2J5dGVzID0gUHlVbmljb2RlXzJCWVRFX0RBVEEodW5pY29kZSk7CisgICAgICAgICAgICAgICAgZm9yICg7IHcgPCB3Y2hhcl9lbmQ7ICsrdHdvX2J5dGVzLCArK3cpCisgICAgICAgICAgICAgICAgICAgICp3ID0gKnR3b19ieXRlczsKKyAgICAgICAgICAgICAgICAvKiBudWxsLXRlcm1pbmF0ZSB0aGUgd3N0ciAqLworICAgICAgICAgICAgICAgICp3ID0gMDsKKyNlbHNlCisgICAgICAgICAgICAgICAgLyogc2l6ZW9mKHdjaGFyX3QpID09IDIgKi8KKyAgICAgICAgICAgICAgICBQeU9iamVjdF9GUkVFKF9QeVVuaWNvZGVfV1NUUih1bmljb2RlKSk7CisgICAgICAgICAgICAgICAgX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpID0gTlVMTDsKKyAgICAgICAgICAgICAgICBQeV9GYXRhbEVycm9yKCJJbXBvc3NpYmxlIHVuaWNvZGUgb2JqZWN0IHN0YXRlLCB3c3RyICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbmQgc3RyIHNob3VsZCBzaGFyZSBtZW1vcnkgYWxyZWFkeS4iKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyNlbmRpZgorICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgYXNzZXJ0KDAgJiYgIlRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbi4iKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoc2l6ZSAhPSBOVUxMKQorICAgICAgICAqc2l6ZSA9IFB5VW5pY29kZV9XU1RSX0xFTkdUSCh1bmljb2RlKTsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9XU1RSKHVuaWNvZGUpOwogfQogCi1QeV9zc2l6ZV90IFB5VW5pY29kZV9HZXRTaXplKFB5T2JqZWN0ICp1bmljb2RlKQorUHlfVU5JQ09ERSAqCitQeVVuaWNvZGVfQXNVbmljb2RlKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIHJldHVybiBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZSh1bmljb2RlLCBOVUxMKTsKK30KKworCitQeV9zc2l6ZV90CitQeVVuaWNvZGVfR2V0U2l6ZShQeU9iamVjdCAqdW5pY29kZSkKIHsKICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwpAQCAtMjAwNiw3ICszODUyLDUyIEBACiAgICAgcmV0dXJuIC0xOwogfQogCi1jb25zdCBjaGFyICpQeVVuaWNvZGVfR2V0RGVmYXVsdEVuY29kaW5nKHZvaWQpCitQeV9zc2l6ZV90CitQeVVuaWNvZGVfR2V0TGVuZ3RoKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpIHx8IFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkgeworICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgcmV0dXJuIFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworfQorCitQeV9VQ1M0CitQeVVuaWNvZGVfUmVhZENoYXIoUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3QgaW5kZXgpCit7CisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkgfHwgUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKSB7CisgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CisgICAgICAgIHJldHVybiAoUHlfVUNTNCktMTsKKyAgICB9CisgICAgaWYgKGluZGV4IDwgMCB8fCBpbmRleCA+PSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSW5kZXhFcnJvciwgInN0cmluZyBpbmRleCBvdXQgb2YgcmFuZ2UiKTsKKyAgICAgICAgcmV0dXJuIChQeV9VQ1M0KS0xOworICAgIH0KKyAgICByZXR1cm4gUHlVbmljb2RlX1JFQURfQ0hBUih1bmljb2RlLCBpbmRleCk7Cit9CisKK2ludAorUHlVbmljb2RlX1dyaXRlQ2hhcihQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCBpbmRleCwgUHlfVUNTNCBjaCkKK3sKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSB8fCAhUHlVbmljb2RlX0lTX0NPTVBBQ1QodW5pY29kZSkpIHsKKyAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKHVuaWNvZGUpKTsKKyAgICBpZiAoaW5kZXggPCAwIHx8IGluZGV4ID49IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JbmRleEVycm9yLCAic3RyaW5nIGluZGV4IG91dCBvZiByYW5nZSIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmICh1bmljb2RlX2NoZWNrX21vZGlmaWFibGUodW5pY29kZSkpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBQeVVuaWNvZGVfV1JJVEUoUHlVbmljb2RlX0tJTkQodW5pY29kZSksIFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpLAorICAgICAgICAgICAgICAgICAgICBpbmRleCwgY2gpOworICAgIHJldHVybiAwOworfQorCitjb25zdCBjaGFyICoKK1B5VW5pY29kZV9HZXREZWZhdWx0RW5jb2Rpbmcodm9pZCkKIHsKICAgICByZXR1cm4gInV0Zi04IjsKIH0KQEAgLTIwNDUsMjYgKzM5MzYsMjkgQEAKICAgIHJldHVybiAwIG9uIHN1Y2Nlc3MsIC0xIG9uIGVycm9yCiAqLwogCi1zdGF0aWMKLWludCB1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcihjb25zdCBjaGFyICplcnJvcnMsIFB5T2JqZWN0ICoqZXJyb3JIYW5kbGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLCBjb25zdCBjaGFyICpyZWFzb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqKmlucHV0LCBjb25zdCBjaGFyICoqaW5lbmQsIFB5X3NzaXplX3QgKnN0YXJ0aW5wb3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqZW5kaW5wb3MsIFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LCBjb25zdCBjaGFyICoqaW5wdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlT2JqZWN0ICoqb3V0cHV0LCBQeV9zc2l6ZV90ICpvdXRwb3MsIFB5X1VOSUNPREUgKipvdXRwdHIpCitzdGF0aWMgaW50Cit1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcihjb25zdCBjaGFyICplcnJvcnMsIFB5T2JqZWN0ICoqZXJyb3JIYW5kbGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsIGNvbnN0IGNoYXIgKnJlYXNvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKippbnB1dCwgY29uc3QgY2hhciAqKmluZW5kLCBQeV9zc2l6ZV90ICpzdGFydGlucG9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqZW5kaW5wb3MsIFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LCBjb25zdCBjaGFyICoqaW5wdHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKm91dHB1dCwgUHlfc3NpemVfdCAqb3V0cG9zKQogewogICAgIHN0YXRpYyBjaGFyICphcmdwYXJzZSA9ICJPIW47ZGVjb2RpbmcgZXJyb3IgaGFuZGxlciBtdXN0IHJldHVybiAoc3RyLCBpbnQpIHR1cGxlIjsKIAogICAgIFB5T2JqZWN0ICpyZXN0dXBsZSA9IE5VTEw7CiAgICAgUHlPYmplY3QgKnJlcHVuaWNvZGUgPSBOVUxMOwotICAgIFB5X3NzaXplX3Qgb3V0c2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRSgqb3V0cHV0KTsKKyAgICBQeV9zc2l6ZV90IG91dHNpemU7CiAgICAgUHlfc3NpemVfdCBpbnNpemU7CiAgICAgUHlfc3NpemVfdCByZXF1aXJlZHNpemU7CiAgICAgUHlfc3NpemVfdCBuZXdwb3M7Ci0gICAgUHlfVU5JQ09ERSAqcmVwcHRyOwogICAgIFB5T2JqZWN0ICppbnB1dG9iaiA9IE5VTEw7Ci0gICAgUHlfc3NpemVfdCByZXBzaXplOwogICAgIGludCByZXMgPSAtMTsKIAorICAgIGlmIChfUHlVbmljb2RlX0tJTkQoKm91dHB1dCkgIT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpCisgICAgICAgIG91dHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCgqb3V0cHV0KTsKKyAgICBlbHNlCisgICAgICAgIG91dHNpemUgPSBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKCpvdXRwdXQpOworCiAgICAgaWYgKCplcnJvckhhbmRsZXIgPT0gTlVMTCkgewogICAgICAgICAqZXJyb3JIYW5kbGVyID0gUHlDb2RlY19Mb29rdXBFcnJvcihlcnJvcnMpOwogICAgICAgICBpZiAoKmVycm9ySGFuZGxlciA9PSBOVUxMKQpAQCAtMjA4OCw2ICszOTgyLDggQEAKICAgICB9CiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKHJlc3R1cGxlLCBhcmdwYXJzZSwgJlB5VW5pY29kZV9UeXBlLCAmcmVwdW5pY29kZSwgJm5ld3BvcykpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHJlcHVuaWNvZGUpID09IC0xKQorICAgICAgICBnb3RvIG9uRXJyb3I7CiAKICAgICAvKiBDb3B5IGJhY2sgdGhlIGJ5dGVzIHZhcmlhYmxlcywgd2hpY2ggbWlnaHQgaGF2ZSBiZWVuIG1vZGlmaWVkIGJ5IHRoZQogICAgICAgIGNhbGxiYWNrICovCkBAIC0yMTExLDI1ICs0MDA3LDQ2IEBACiAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICB9CiAKLSAgICAvKiBuZWVkIG1vcmUgc3BhY2U/IChhdCBsZWFzdCBlbm91Z2ggZm9yIHdoYXQgd2UKLSAgICAgICBoYXZlK3RoZSByZXBsYWNlbWVudCt0aGUgcmVzdCBvZiB0aGUgc3RyaW5nIChzdGFydGluZwotICAgICAgIGF0IHRoZSBuZXcgaW5wdXQgcG9zaXRpb24pLCBzbyB3ZSB3b24ndCBoYXZlIHRvIGNoZWNrIHNwYWNlCi0gICAgICAgd2hlbiB0aGVyZSBhcmUgbm8gZXJyb3JzIGluIHRoZSByZXN0IG9mIHRoZSBzdHJpbmcpICovCi0gICAgcmVwcHRyID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVwdW5pY29kZSk7Ci0gICAgcmVwc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShyZXB1bmljb2RlKTsKLSAgICByZXF1aXJlZHNpemUgPSAqb3V0cG9zICsgcmVwc2l6ZSArIGluc2l6ZS1uZXdwb3M7Ci0gICAgaWYgKHJlcXVpcmVkc2l6ZSA+IG91dHNpemUpIHsKLSAgICAgICAgaWYgKHJlcXVpcmVkc2l6ZTwyKm91dHNpemUpCi0gICAgICAgICAgICByZXF1aXJlZHNpemUgPSAyKm91dHNpemU7Ci0gICAgICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZShvdXRwdXQsIHJlcXVpcmVkc2l6ZSkgPCAwKQorICAgIGlmIChfUHlVbmljb2RlX0tJTkQoKm91dHB1dCkgIT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpIHsKKyAgICAgICAgLyogbmVlZCBtb3JlIHNwYWNlPyAoYXQgbGVhc3QgZW5vdWdoIGZvciB3aGF0IHdlCisgICAgICAgICAgIGhhdmUrdGhlIHJlcGxhY2VtZW50K3RoZSByZXN0IG9mIHRoZSBzdHJpbmcgKHN0YXJ0aW5nCisgICAgICAgICAgIGF0IHRoZSBuZXcgaW5wdXQgcG9zaXRpb24pLCBzbyB3ZSB3b24ndCBoYXZlIHRvIGNoZWNrIHNwYWNlCisgICAgICAgICAgIHdoZW4gdGhlcmUgYXJlIG5vIGVycm9ycyBpbiB0aGUgcmVzdCBvZiB0aGUgc3RyaW5nKSAqLworICAgICAgICBQeV9zc2l6ZV90IHJlcGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlcHVuaWNvZGUpOworICAgICAgICByZXF1aXJlZHNpemUgPSAqb3V0cG9zICsgcmVwbGVuICsgaW5zaXplLW5ld3BvczsKKyAgICAgICAgaWYgKHJlcXVpcmVkc2l6ZSA+IG91dHNpemUpIHsKKyAgICAgICAgICAgIGlmIChyZXF1aXJlZHNpemU8MipvdXRzaXplKQorICAgICAgICAgICAgICAgIHJlcXVpcmVkc2l6ZSA9IDIqb3V0c2l6ZTsKKyAgICAgICAgICAgIGlmICh1bmljb2RlX3Jlc2l6ZShvdXRwdXQsIHJlcXVpcmVkc2l6ZSkgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgfQorICAgICAgICBpZiAodW5pY29kZV93aWRlbihvdXRwdXQsIFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShyZXB1bmljb2RlKSkgPCAwKQogICAgICAgICAgICAgZ290byBvbkVycm9yOwotICAgICAgICAqb3V0cHRyID0gUHlVbmljb2RlX0FTX1VOSUNPREUoKm91dHB1dCkgKyAqb3V0cG9zOworICAgICAgICBjb3B5X2NoYXJhY3RlcnMoKm91dHB1dCwgKm91dHBvcywgcmVwdW5pY29kZSwgMCwgcmVwbGVuKTsKKyAgICAgICAgKm91dHBvcyArPSByZXBsZW47CisgICAgfQorICAgIGVsc2UgeworICAgICAgICB3Y2hhcl90ICpyZXB3c3RyOworICAgICAgICBQeV9zc2l6ZV90IHJlcHdsZW47CisgICAgICAgIHJlcHdzdHIgPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZShyZXB1bmljb2RlLCAmcmVwd2xlbik7CisgICAgICAgIGlmIChyZXB3c3RyID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgIC8qIG5lZWQgbW9yZSBzcGFjZT8gKGF0IGxlYXN0IGVub3VnaCBmb3Igd2hhdCB3ZQorICAgICAgICAgICBoYXZlK3RoZSByZXBsYWNlbWVudCt0aGUgcmVzdCBvZiB0aGUgc3RyaW5nIChzdGFydGluZworICAgICAgICAgICBhdCB0aGUgbmV3IGlucHV0IHBvc2l0aW9uKSwgc28gd2Ugd29uJ3QgaGF2ZSB0byBjaGVjayBzcGFjZQorICAgICAgICAgICB3aGVuIHRoZXJlIGFyZSBubyBlcnJvcnMgaW4gdGhlIHJlc3Qgb2YgdGhlIHN0cmluZykgKi8KKyAgICAgICAgcmVxdWlyZWRzaXplID0gKm91dHBvcyArIHJlcHdsZW4gKyBpbnNpemUtbmV3cG9zOworICAgICAgICBpZiAocmVxdWlyZWRzaXplID4gb3V0c2l6ZSkgeworICAgICAgICAgICAgaWYgKHJlcXVpcmVkc2l6ZSA8IDIqb3V0c2l6ZSkKKyAgICAgICAgICAgICAgICByZXF1aXJlZHNpemUgPSAyKm91dHNpemU7CisgICAgICAgICAgICBpZiAodW5pY29kZV9yZXNpemUob3V0cHV0LCByZXF1aXJlZHNpemUpIDwgMCkKKyAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgIH0KKyAgICAgICAgd2NzbmNweShfUHlVbmljb2RlX1dTVFIoKm91dHB1dCkgKyAqb3V0cG9zLCByZXB3c3RyLCByZXB3bGVuKTsKKyAgICAgICAgKm91dHBvcyArPSByZXB3bGVuOwogICAgIH0KICAgICAqZW5kaW5wb3MgPSBuZXdwb3M7CiAgICAgKmlucHRyID0gKmlucHV0ICsgbmV3cG9zOwotICAgIFB5X1VOSUNPREVfQ09QWSgqb3V0cHRyLCByZXBwdHIsIHJlcHNpemUpOwotICAgICpvdXRwdHIgKz0gcmVwc2l6ZTsKLSAgICAqb3V0cG9zICs9IHJlcHNpemU7CiAKICAgICAvKiB3ZSBtYWRlIGl0ISAqLwogICAgIHJlcyA9IDA7CkBAIC0yMjIwLDkgKzQxMzcsMTAgQEAKICAgICAgIChkaXJlY3RXUyAmJiAodXRmN19jYXRlZ29yeVsoYyldID09IDIpKSB8fCAgICAgICAgXAogICAgICAgKGRpcmVjdE8gJiYgKHV0ZjdfY2F0ZWdvcnlbKGMpXSA9PSAxKSkpKQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0RlY29kZVVURjcoY29uc3QgY2hhciAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0RlY29kZVVURjcoY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZVVURjdTdGF0ZWZ1bChzLCBzaXplLCBlcnJvcnMsIE5VTEwpOwogfQpAQCAtMjIzNCw0MiArNDE1Miw0MiBAQAogICogYWxsIHRoZSBzaGlmdCBzdGF0ZSAoc2VlbiBiaXRzLCBudW1iZXIgb2YgYml0cyBzZWVuLCBoaWdoCiAgKiBzdXJyb2dhdGUpLiAqLwogCi1QeU9iamVjdCAqUHlVbmljb2RlX0RlY29kZVVURjdTdGF0ZWZ1bChjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqY29uc3VtZWQpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlVVRGN1N0YXRlZnVsKGNvbnN0IGNoYXIgKnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpjb25zdW1lZCkKIHsKICAgICBjb25zdCBjaGFyICpzdGFydHMgPSBzOwogICAgIFB5X3NzaXplX3Qgc3RhcnRpbnBvczsKICAgICBQeV9zc2l6ZV90IGVuZGlucG9zOwogICAgIFB5X3NzaXplX3Qgb3V0cG9zOwogICAgIGNvbnN0IGNoYXIgKmU7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlOwotICAgIFB5X1VOSUNPREUgKnA7CisgICAgUHlPYmplY3QgKnVuaWNvZGU7CiAgICAgY29uc3QgY2hhciAqZXJybXNnID0gIiI7CiAgICAgaW50IGluU2hpZnQgPSAwOwotICAgIFB5X1VOSUNPREUgKnNoaWZ0T3V0U3RhcnQ7CisgICAgUHlfc3NpemVfdCBzaGlmdE91dFN0YXJ0OwogICAgIHVuc2lnbmVkIGludCBiYXNlNjRiaXRzID0gMDsKICAgICB1bnNpZ25lZCBsb25nIGJhc2U2NGJ1ZmZlciA9IDA7Ci0gICAgUHlfVU5JQ09ERSBzdXJyb2dhdGUgPSAwOworICAgIFB5X1VDUzQgc3Vycm9nYXRlID0gMDsKICAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKICAgICBQeU9iamVjdCAqZXhjID0gTlVMTDsKIAotICAgIHVuaWNvZGUgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKKyAgICAvKiBTdGFydCBvZmYgYXNzdW1pbmcgaXQncyBhbGwgQVNDSUkuIFdpZGVuIGxhdGVyIGFzIG5lY2Vzc2FyeS4gKi8KKyAgICB1bmljb2RlID0gUHlVbmljb2RlX05ldyhzaXplLCAxMjcpOwogICAgIGlmICghdW5pY29kZSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKHNpemUgPT0gMCkgewogICAgICAgICBpZiAoY29uc3VtZWQpCiAgICAgICAgICAgICAqY29uc3VtZWQgPSAwOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdW5pY29kZTsKKyAgICAgICAgcmV0dXJuIHVuaWNvZGU7CiAgICAgfQogCi0gICAgcCA9IHVuaWNvZGUtPnN0cjsKLSAgICBzaGlmdE91dFN0YXJ0ID0gcDsKKyAgICBzaGlmdE91dFN0YXJ0ID0gb3V0cG9zID0gMDsKICAgICBlID0gcyArIHNpemU7CiAKICAgICB3aGlsZSAocyA8IGUpIHsKLSAgICAgICAgUHlfVU5JQ09ERSBjaDsKKyAgICAgICAgUHlfVUNTNCBjaDsKICAgICAgIHJlc3RhcnQ6CiAgICAgICAgIGNoID0gKHVuc2lnbmVkIGNoYXIpICpzOwogCkBAIC0yMjgwLDM0ICs0MTk4LDMxIEBACiAgICAgICAgICAgICAgICAgcysrOwogICAgICAgICAgICAgICAgIGlmIChiYXNlNjRiaXRzID49IDE2KSB7CiAgICAgICAgICAgICAgICAgICAgIC8qIHdlIGhhdmUgZW5vdWdoIGJpdHMgZm9yIGEgVVRGLTE2IHZhbHVlICovCi0gICAgICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgb3V0Q2ggPSAoUHlfVU5JQ09ERSkKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChiYXNlNjRidWZmZXIgPj4gKGJhc2U2NGJpdHMtMTYpKTsKKyAgICAgICAgICAgICAgICAgICAgUHlfVUNTNCBvdXRDaCA9IChQeV9VQ1M0KShiYXNlNjRidWZmZXIgPj4gKGJhc2U2NGJpdHMtMTYpKTsKICAgICAgICAgICAgICAgICAgICAgYmFzZTY0Yml0cyAtPSAxNjsKICAgICAgICAgICAgICAgICAgICAgYmFzZTY0YnVmZmVyICY9ICgxIDw8IGJhc2U2NGJpdHMpIC0gMTsgLyogY2xlYXIgaGlnaCBiaXRzICovCiAgICAgICAgICAgICAgICAgICAgIGlmIChzdXJyb2dhdGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGV4cGVjdGluZyBhIHNlY29uZCBzdXJyb2dhdGUgKi8KLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChvdXRDaCA+PSAweERDMDAgJiYgb3V0Q2ggPD0gMHhERkZGKSB7Ci0jaWZkZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgKnArKyA9ICgoKHN1cnJvZ2F0ZSAmIDB4M0ZGKTw8MTApCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IChvdXRDaCAmIDB4M0ZGKSkgKyAweDEwMDAwOwotI2Vsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqcCsrID0gc3Vycm9nYXRlOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICpwKysgPSBvdXRDaDsKLSNlbmRpZgorICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFB5X1VOSUNPREVfSVNfTE9XX1NVUlJPR0FURShvdXRDaCkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9VQ1M0IGNoMiA9IFB5X1VOSUNPREVfSk9JTl9TVVJST0dBVEVTKHN1cnJvZ2F0ZSwgb3V0Q2gpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnVuaWNvZGUsICZvdXRwb3MsIGNoMikgPCAwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Vycm9nYXRlID0gMDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgICAgICAgICAgICAgICpwKysgPSBzdXJyb2dhdGU7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdW5pY29kZSwgJm91dHBvcywgc3Vycm9nYXRlKSA8IDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdXJyb2dhdGUgPSAwOwogICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIGlmIChvdXRDaCA+PSAweEQ4MDAgJiYgb3V0Q2ggPD0gMHhEQkZGKSB7CisgICAgICAgICAgICAgICAgICAgIGlmIChQeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFKG91dENoKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgLyogZmlyc3Qgc3Vycm9nYXRlICovCiAgICAgICAgICAgICAgICAgICAgICAgICBzdXJyb2dhdGUgPSBvdXRDaDsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICpwKysgPSBvdXRDaDsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnVuaWNvZGUsICZvdXRwb3MsIG91dENoKSA8IDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQpAQCAtMjMxNSw3ICs0MjMwLDggQEAKICAgICAgICAgICAgICAgICBpblNoaWZ0ID0gMDsKICAgICAgICAgICAgICAgICBzKys7CiAgICAgICAgICAgICAgICAgaWYgKHN1cnJvZ2F0ZSkgewotICAgICAgICAgICAgICAgICAgICAqcCsrID0gc3Vycm9nYXRlOworICAgICAgICAgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ1bmljb2RlLCAmb3V0cG9zLCBzdXJyb2dhdGUpIDwgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICAgICAgc3Vycm9nYXRlID0gMDsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgaWYgKGJhc2U2NGJpdHMgPiAwKSB7IC8qIGxlZnQtb3ZlciBiaXRzICovCkBAIC0yMzM1LDcgKzQyNTEsOCBAQAogICAgICAgICAgICAgICAgIGlmIChjaCAhPSAnLScpIHsKICAgICAgICAgICAgICAgICAgICAgLyogJy0nIGlzIGFic29yYmVkOyBvdGhlciB0ZXJtaW5hdGluZwogICAgICAgICAgICAgICAgICAgICAgICBjaGFyYWN0ZXJzIGFyZSBwcmVzZXJ2ZWQgKi8KLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGNoOworICAgICAgICAgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ1bmljb2RlLCAmb3V0cG9zLCBjaCkgPCAwKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtMjM0NCwxNiArNDI2MSwxOCBAQAogICAgICAgICAgICAgcysrOyAvKiBjb25zdW1lICcrJyAqLwogICAgICAgICAgICAgaWYgKHMgPCBlICYmICpzID09ICctJykgeyAvKiAnKy0nIGVuY29kZXMgJysnICovCiAgICAgICAgICAgICAgICAgcysrOwotICAgICAgICAgICAgICAgICpwKysgPSAnKyc7CisgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdW5pY29kZSwgJm91dHBvcywgJysnKSA8IDApCisgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UgeyAvKiBiZWdpbiBiYXNlNjQtZW5jb2RlZCBzZWN0aW9uICovCiAgICAgICAgICAgICAgICAgaW5TaGlmdCA9IDE7Ci0gICAgICAgICAgICAgICAgc2hpZnRPdXRTdGFydCA9IHA7CisgICAgICAgICAgICAgICAgc2hpZnRPdXRTdGFydCA9IG91dHBvczsKICAgICAgICAgICAgICAgICBiYXNlNjRiaXRzID0gMDsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICBlbHNlIGlmIChERUNPREVfRElSRUNUKGNoKSkgeyAvKiBjaGFyYWN0ZXIgZGVjb2RlcyBhcyBpdHNlbGYgKi8KLSAgICAgICAgICAgICpwKysgPSBjaDsKKyAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnVuaWNvZGUsICZvdXRwb3MsIGNoKSA8IDApCisgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgcysrOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewpAQCAtMjM2NCwxMyArNDI4MywxMiBAQAogICAgICAgICB9CiAgICAgICAgIGNvbnRpbnVlOwogdXRmN0Vycm9yOgotICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOwogICAgICAgICBlbmRpbnBvcyA9IHMtc3RhcnRzOwogICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAogICAgICAgICAgICAgICAgICJ1dGY3IiwgZXJybXNnLAogICAgICAgICAgICAgICAgICZzdGFydHMsICZlLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmcywKLSAgICAgICAgICAgICAgICAmdW5pY29kZSwgJm91dHBvcywgJnApKQorICAgICAgICAgICAgICAgICZ1bmljb2RlLCAmb3V0cG9zKSkKICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICB9CiAKQEAgLTIzODEsMTMgKzQyOTksMTIgQEAKICAgICAgICAgaWYgKHN1cnJvZ2F0ZSB8fAogICAgICAgICAgICAgICAgIChiYXNlNjRiaXRzID49IDYpIHx8CiAgICAgICAgICAgICAgICAgKGJhc2U2NGJpdHMgPiAwICYmIGJhc2U2NGJ1ZmZlciAhPSAwKSkgewotICAgICAgICAgICAgb3V0cG9zID0gcC1QeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKTsKICAgICAgICAgICAgIGVuZGlucG9zID0gc2l6ZTsKICAgICAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAogICAgICAgICAgICAgICAgICAgICAidXRmNyIsICJ1bnRlcm1pbmF0ZWQgc2hpZnQgc2VxdWVuY2UiLAogICAgICAgICAgICAgICAgICAgICAmc3RhcnRzLCAmZSwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgJnMsCi0gICAgICAgICAgICAgICAgICAgICZ1bmljb2RlLCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICZ1bmljb2RlLCAmb3V0cG9zKSkKICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICBpZiAocyA8IGUpCiAgICAgICAgICAgICAgICAgZ290byByZXN0YXJ0OwpAQCAtMjM5Nyw3ICs0MzE0LDcgQEAKICAgICAvKiByZXR1cm4gc3RhdGUgKi8KICAgICBpZiAoY29uc3VtZWQpIHsKICAgICAgICAgaWYgKGluU2hpZnQpIHsKLSAgICAgICAgICAgIHAgPSBzaGlmdE91dFN0YXJ0OyAvKiBiYWNrIG9mZiBvdXRwdXQgKi8KKyAgICAgICAgICAgIG91dHBvcyA9IHNoaWZ0T3V0U3RhcnQ7IC8qIGJhY2sgb2ZmIG91dHB1dCAqLwogICAgICAgICAgICAgKmNvbnN1bWVkID0gc3RhcnRpbnBvczsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKQEAgLTI0MDUsMTIgKzQzMjIsMTIgQEAKICAgICAgICAgfQogICAgIH0KIAotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdW5pY29kZSwgcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpKSA8IDApCisgICAgaWYgKHVuaWNvZGVfcmVzaXplKCZ1bmljb2RlLCBvdXRwb3MpIDwgMCkKICAgICAgICAgZ290byBvbkVycm9yOwogCiAgICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOwogICAgIFB5X1hERUNSRUYoZXhjKTsKLSAgICByZXR1cm4gKFB5T2JqZWN0ICopdW5pY29kZTsKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHQodW5pY29kZSk7CiAKICAgb25FcnJvcjoKICAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7CkBAIC0yNDIwLDI2ICs0MzM3LDM2IEBACiB9CiAKIAotUHlPYmplY3QgKlB5VW5pY29kZV9FbmNvZGVVVEY3KGNvbnN0IFB5X1VOSUNPREUgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBiYXNlNjRTZXRPLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBiYXNlNjRXaGl0ZVNwYWNlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK1B5T2JqZWN0ICoKK19QeVVuaWNvZGVfRW5jb2RlVVRGNyhQeU9iamVjdCAqc3RyLAorICAgICAgICAgICAgICAgICAgICAgIGludCBiYXNlNjRTZXRPLAorICAgICAgICAgICAgICAgICAgICAgIGludCBiYXNlNjRXaGl0ZVNwYWNlLAorICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X3NzaXplX3QgbGVuOwogICAgIFB5T2JqZWN0ICp2OwotICAgIC8qIEl0IG1pZ2h0IGJlIHBvc3NpYmxlIHRvIHRpZ2h0ZW4gdGhpcyB3b3JzdCBjYXNlICovCi0gICAgUHlfc3NpemVfdCBhbGxvY2F0ZWQgPSA4ICogc2l6ZTsKKyAgICBQeV9zc2l6ZV90IGFsbG9jYXRlZDsKICAgICBpbnQgaW5TaGlmdCA9IDA7Ci0gICAgUHlfc3NpemVfdCBpID0gMDsKKyAgICBQeV9zc2l6ZV90IGk7CiAgICAgdW5zaWduZWQgaW50IGJhc2U2NGJpdHMgPSAwOwogICAgIHVuc2lnbmVkIGxvbmcgYmFzZTY0YnVmZmVyID0gMDsKICAgICBjaGFyICogb3V0OwogICAgIGNoYXIgKiBzdGFydDsKIAotICAgIGlmIChzaXplID09IDApCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzdHIpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc3RyKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc3RyKTsKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpOworCisgICAgaWYgKGxlbiA9PSAwKQogICAgICAgICByZXR1cm4gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCAwKTsKIAotICAgIGlmIChhbGxvY2F0ZWQgLyA4ICE9IHNpemUpCisgICAgLyogSXQgbWlnaHQgYmUgcG9zc2libGUgdG8gdGlnaHRlbiB0aGlzIHdvcnN0IGNhc2UgKi8KKyAgICBhbGxvY2F0ZWQgPSA4ICogbGVuOworICAgIGlmIChhbGxvY2F0ZWQgLyA4ICE9IGxlbikKICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CiAKICAgICB2ID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBhbGxvY2F0ZWQpOwpAQCAtMjQ0Nyw4ICs0Mzc0LDggQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBzdGFydCA9IG91dCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHYpOwotICAgIGZvciAoO2kgPCBzaXplOyArK2kpIHsKLSAgICAgICAgUHlfVU5JQ09ERSBjaCA9IHNbaV07CisgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgKytpKSB7CisgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKIAogICAgICAgICBpZiAoaW5TaGlmdCkgewogICAgICAgICAgICAgaWYgKEVOQ09ERV9ESVJFQ1QoY2gsICFiYXNlNjRTZXRPLCAhYmFzZTY0V2hpdGVTcGFjZSkpIHsKQEAgLTI0ODYsOCArNDQxMyw5IEBACiAgICAgICAgIH0KICAgICAgICAgY29udGludWU7CiBlbmNvZGVfY2hhcjoKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKICAgICAgICAgaWYgKGNoID49IDB4MTAwMDApIHsKKyAgICAgICAgICAgIGFzc2VydChjaCA8PSBNQVhfVU5JQ09ERSk7CisKICAgICAgICAgICAgIC8qIGNvZGUgZmlyc3Qgc3Vycm9nYXRlICovCiAgICAgICAgICAgICBiYXNlNjRiaXRzICs9IDE2OwogICAgICAgICAgICAgYmFzZTY0YnVmZmVyID0gKGJhc2U2NGJ1ZmZlciA8PCAxNikgfCAweGQ4MDAgfCAoKGNoLTB4MTAwMDApID4+IDEwKTsKQEAgLTI0OTYsOSArNDQyNCw4IEBACiAgICAgICAgICAgICAgICAgYmFzZTY0Yml0cyAtPSA2OwogICAgICAgICAgICAgfQogICAgICAgICAgICAgLyogcHJlcGFyZSBzZWNvbmQgc3Vycm9nYXRlICovCi0gICAgICAgICAgICBjaCA9ICAweERDMDAgfCAoKGNoLTB4MTAwMDApICYgMHgzRkYpOworICAgICAgICAgICAgY2ggPSBQeV9VTklDT0RFX0xPV19TVVJST0dBVEUoY2gpOwogICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgYmFzZTY0Yml0cyArPSAxNjsKICAgICAgICAgYmFzZTY0YnVmZmVyID0gKGJhc2U2NGJ1ZmZlciA8PCAxNikgfCBjaDsKICAgICAgICAgd2hpbGUgKGJhc2U2NGJpdHMgPj0gNikgewpAQCAtMjUxNCw2ICs0NDQxLDIyIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHJldHVybiB2OwogfQorUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZVVURjcoY29uc3QgUHlfVU5JQ09ERSAqcywKKyAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgIGludCBiYXNlNjRTZXRPLAorICAgICAgICAgICAgICAgICAgICAgaW50IGJhc2U2NFdoaXRlU3BhY2UsCisgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCit7CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBQeU9iamVjdCAqdG1wID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHMsIHNpemUpOworICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzdWx0ID0gX1B5VW5pY29kZV9FbmNvZGVVVEY3KHRtcCwgYmFzZTY0U2V0TywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZTY0V2hpdGVTcGFjZSwgZXJyb3JzKTsKKyAgICBQeV9ERUNSRUYodG1wKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQogCiAjdW5kZWYgSVNfQkFTRTY0CiAjdW5kZWYgRlJPTV9CQVNFNjQKQEAgLTI1NDUsMTMgKzQ0ODgsMjYgQEAKICAgICA0LCA0LCA0LCA0LCA0LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwICAvKiBGMC1GNCArIEY1LUZGICovCiB9OwogCi1QeU9iamVjdCAqUHlVbmljb2RlX0RlY29kZVVURjgoY29uc3QgY2hhciAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0RlY29kZVVURjgoY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChzLCBzaXplLCBlcnJvcnMsIE5VTEwpOwogfQogCisjaW5jbHVkZSAic3RyaW5nbGliL3VjczFsaWIuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvY29kZWNzLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3VuZGVmLmgiCisKKyNpbmNsdWRlICJzdHJpbmdsaWIvdWNzMmxpYi5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi9jb2RlY3MuaCIKKyNpbmNsdWRlICJzdHJpbmdsaWIvdW5kZWYuaCIKKworI2luY2x1ZGUgInN0cmluZ2xpYi91Y3M0bGliLmgiCisjaW5jbHVkZSAic3RyaW5nbGliL2NvZGVjcy5oIgorI2luY2x1ZGUgInN0cmluZ2xpYi91bmRlZi5oIgorCiAvKiBNYXNrIHRvIGNoZWNrIG9yIGZvcmNlIGFsaWdubWVudCBvZiBhIHBvaW50ZXIgdG8gQyAnbG9uZycgYm91bmRhcmllcyAqLwogI2RlZmluZSBMT05HX1BUUl9NQVNLIChzaXplX3QpIChTSVpFT0ZfTE9ORyAtIDEpCiAKQEAgLTI1NjUsMzggKzQ1MjEsMTI3IEBACiAjIGVycm9yIEMgJ2xvbmcnIHNpemUgc2hvdWxkIGJlIGVpdGhlciA0IG9yIDghCiAjZW5kaWYKIAotUHlPYmplY3QgKlB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWwoY29uc3QgY2hhciAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkKQorLyogU2NhbnMgYSBVVEYtOCBzdHJpbmcgYW5kIHJldHVybnMgdGhlIG1heGltdW0gY2hhcmFjdGVyIHRvIGJlIGV4cGVjdGVkCisgICBhbmQgdGhlIHNpemUgb2YgdGhlIGRlY29kZWQgdW5pY29kZSBzdHJpbmcuCisKKyAgIFRoaXMgZnVuY3Rpb24gZG9lc24ndCBjaGVjayBmb3IgZXJyb3JzLCB0aGVzZSBjaGVja3MgYXJlIHBlcmZvcm1lZCBpbgorICAgUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bC4KKyAgICovCitzdGF0aWMgUHlfVUNTNAordXRmOF9zY2FubmVyKGNvbnN0IHVuc2lnbmVkIGNoYXIgKnAsIFB5X3NzaXplX3Qgc3RyaW5nX3NpemUsIFB5X3NzaXplX3QgKnVuaWNvZGVfc2l6ZSkKIHsKLSAgICBjb25zdCBjaGFyICpzdGFydHMgPSBzOworICAgIFB5X3NzaXplX3QgY2hhcl9jb3VudCA9IDA7CisgICAgY29uc3QgdW5zaWduZWQgY2hhciAqZW5kID0gcCArIHN0cmluZ19zaXplOworICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmFsaWduZWRfZW5kID0gKGNvbnN0IHVuc2lnbmVkIGNoYXIgKikgKChzaXplX3QpIGVuZCAmIH5MT05HX1BUUl9NQVNLKTsKKworICAgIGFzc2VydCh1bmljb2RlX3NpemUgIT0gTlVMTCk7CisKKyAgICAvKiBCeSBoYXZpbmcgYSBjYXNjYWRlIG9mIGluZGVwZW5kZW50IGxvb3BzIHdoaWNoIGZhbGxiYWNrIG9udG8gZWFjaAorICAgICAgIG90aGVyLCB3ZSBtaW5pbWl6ZSB0aGUgYW1vdW50IG9mIHdvcmsgZG9uZSBpbiB0aGUgYXZlcmFnZSBsb29wCisgICAgICAgaXRlcmF0aW9uLCBhbmQgd2UgYWxzbyBtYXhpbWl6ZSB0aGUgQ1BVJ3MgYWJpbGl0eSB0byBwcmVkaWN0CisgICAgICAgYnJhbmNoZXMgY29ycmVjdGx5IChiZWNhdXNlIGEgZ2l2ZW4gY29uZGl0aW9uIHdpbGwgaGF2ZSBhbHdheXMgdGhlCisgICAgICAgc2FtZSBib29sZWFuIG91dGNvbWUgZXhjZXB0IHBlcmhhcHMgaW4gdGhlIGxhc3QgaXRlcmF0aW9uIG9mIHRoZQorICAgICAgIGNvcnJlc3BvbmRpbmcgbG9vcCkuCisgICAgICAgSW4gdGhlIGdlbmVyYWwgY2FzZSB0aGlzIGJyaW5ncyB1cyByYXRoZXIgY2xvc2UgdG8gZGVjb2RpbmcKKyAgICAgICBwZXJmb3JtYW5jZSBwcmUtUEVQIDM5MywgZGVzcGl0ZSB0aGUgdHdvLXBhc3MgZGVjb2RpbmcuCisKKyAgICAgICBOb3RlIHRoYXQgdGhlIHB1cmUgQVNDSUkgbG9vcCBpcyBub3QgZHVwbGljYXRlZCBvbmNlIGEgbm9uLUFTQ0lJCisgICAgICAgY2hhcmFjdGVyIGhhcyBiZWVuIGVuY291bnRlcmVkLiBJdCBpcyBhY3R1YWxseSBhIHBlc3NpbWl6YXRpb24gKGJ5CisgICAgICAgYSBzaWduaWZpY2FudCBmYWN0b3IpIHRvIHVzZSB0aGlzIGxvb3Agb24gdGV4dCB3aXRoIG1hbnkgbm9uLUFTQ0lJCisgICAgICAgY2hhcmFjdGVycywgYW5kIGl0IGlzIGltcG9ydGFudCB0byBhdm9pZCBiYWQgcGVyZm9ybWFuY2Ugb24gdmFsaWQKKyAgICAgICB1dGYtOCBkYXRhIChpbnZhbGlkIHV0Zi04IGJlaW5nIGEgZGlmZmVyZW50IGNhbiBvZiB3b3JtcykuCisgICAgKi8KKworICAgIC8qIEFTQ0lJICovCisgICAgZm9yICg7IHAgPCBlbmQ7ICsrcCkgeworICAgICAgICAvKiBPbmx5IGNoZWNrIHZhbHVlIGlmIGl0J3Mgbm90IGEgQVNDSUkgY2hhci4uLiAqLworICAgICAgICBpZiAoKnAgPCAweDgwKSB7CisgICAgICAgICAgICAvKiBGYXN0IHBhdGgsIHNlZSBiZWxvdyBpbiBQeVVuaWNvZGVfRGVjb2RlVVRGOFN0YXRlZnVsIGZvcgorICAgICAgICAgICAgICAgYW4gZXhwbGFuYXRpb24uICovCisgICAgICAgICAgICBpZiAoISgoc2l6ZV90KSBwICYgTE9OR19QVFJfTUFTSykpIHsKKyAgICAgICAgICAgICAgICAvKiBIZWxwIHJlZ2lzdGVyIGFsbG9jYXRpb24gKi8KKyAgICAgICAgICAgICAgICByZWdpc3RlciBjb25zdCB1bnNpZ25lZCBjaGFyICpfcCA9IHA7CisgICAgICAgICAgICAgICAgd2hpbGUgKF9wIDwgYWxpZ25lZF9lbmQpIHsKKyAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyB2YWx1ZSA9ICoodW5zaWduZWQgbG9uZyAqKSBfcDsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlICYgQVNDSUlfQ0hBUl9NQVNLKQorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgICAgIF9wICs9IFNJWkVPRl9MT05HOworICAgICAgICAgICAgICAgICAgICBjaGFyX2NvdW50ICs9IFNJWkVPRl9MT05HOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBwID0gX3A7CisgICAgICAgICAgICAgICAgaWYgKHAgPT0gZW5kKQorICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiAoKnAgPCAweDgwKQorICAgICAgICAgICAgKytjaGFyX2NvdW50OworICAgICAgICBlbHNlCisgICAgICAgICAgICBnb3RvIF91Y3MxbG9vcDsKKyAgICB9CisgICAgKnVuaWNvZGVfc2l6ZSA9IGNoYXJfY291bnQ7CisgICAgcmV0dXJuIDEyNzsKKworX3VjczFsb29wOgorICAgIGZvciAoOyBwIDwgZW5kOyArK3ApIHsKKyAgICAgICAgaWYgKCpwIDwgMHhjNCkKKyAgICAgICAgICAgIGNoYXJfY291bnQgKz0gKCgqcCAmIDB4YzApICE9IDB4ODApOworICAgICAgICBlbHNlCisgICAgICAgICAgICBnb3RvIF91Y3MybG9vcDsKKyAgICB9CisgICAgKnVuaWNvZGVfc2l6ZSA9IGNoYXJfY291bnQ7CisgICAgcmV0dXJuIDI1NTsKKworX3VjczJsb29wOgorICAgIGZvciAoOyBwIDwgZW5kOyArK3ApIHsKKyAgICAgICAgaWYgKCpwIDwgMHhmMCkKKyAgICAgICAgICAgIGNoYXJfY291bnQgKz0gKCgqcCAmIDB4YzApICE9IDB4ODApOworICAgICAgICBlbHNlCisgICAgICAgICAgICBnb3RvIF91Y3M0bG9vcDsKKyAgICB9CisgICAgKnVuaWNvZGVfc2l6ZSA9IGNoYXJfY291bnQ7CisgICAgcmV0dXJuIDY1NTM1OworCitfdWNzNGxvb3A6CisgICAgZm9yICg7IHAgPCBlbmQ7ICsrcCkgeworICAgICAgICBjaGFyX2NvdW50ICs9ICgoKnAgJiAweGMwKSAhPSAweDgwKTsKKyAgICB9CisgICAgKnVuaWNvZGVfc2l6ZSA9IGNoYXJfY291bnQ7CisgICAgcmV0dXJuIDY1NTM3OworfQorCisvKiBTaW1pbGFyIHRvIFB5VW5pY29kZV9XUklURSBidXQgbWF5IGF0dGVtcHQgdG8gd2lkZW4gYW5kIHJlc2l6ZSB0aGUgc3RyaW5nCisgICBpbiBjYXNlIG9mIGVycm9ycy4gSW1wbGljaXQgcGFyYW1ldGVyczogdW5pY29kZSwga2luZCwgZGF0YSwgb25FcnJvci4KKyAgIFBvdGVudGlhbCByZXNpemluZyBvdmVyYWxsb2NhdGVzLCBzbyB0aGUgcmVzdWx0IG5lZWRzIHRvIHNocmluayBhdCB0aGUgZW5kLgorKi8KKyNkZWZpbmUgV1JJVEVfTUFZQkVfRkFJTChpbmRleCwgdmFsdWUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIFB5X3NzaXplX3QgcG9zID0gaW5kZXg7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgaWYgKHBvcyA+IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpICYmICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgdW5pY29kZV9yZXNpemUoJnVuaWNvZGUsIHBvcyArIHBvcy84KSA8IDApICAgICAgICAgICAgICBcCisgICAgICAgICAgICBnb3RvIG9uRXJyb3I7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdW5pY29kZSwgJnBvcywgdmFsdWUpIDwgMCkgICAgICAgICAgICAgXAorICAgICAgICAgICAgZ290byBvbkVycm9yOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgfSB3aGlsZSAoMCkKKworc3RhdGljIFB5T2JqZWN0ICoKK2RlY29kZV91dGY4X2Vycm9ycyhjb25zdCBjaGFyICpzdGFydHMsCisgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKKyAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpjb25zdW1lZCwKKyAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp1bmljb2RlLAorICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaSkKK3sKICAgICBpbnQgbjsKICAgICBpbnQgazsKICAgICBQeV9zc2l6ZV90IHN0YXJ0aW5wb3M7CiAgICAgUHlfc3NpemVfdCBlbmRpbnBvczsKLSAgICBQeV9zc2l6ZV90IG91dHBvczsKLSAgICBjb25zdCBjaGFyICplLCAqYWxpZ25lZF9lbmQ7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp1bmljb2RlOwotICAgIFB5X1VOSUNPREUgKnA7CisgICAgY29uc3QgY2hhciAqZSA9IHN0YXJ0cyArIHNpemU7CisgICAgY29uc3QgY2hhciAqYWxpZ25lZF9lbmQ7CiAgICAgY29uc3QgY2hhciAqZXJybXNnID0gIiI7CiAgICAgUHlPYmplY3QgKmVycm9ySGFuZGxlciA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmV4YyA9IE5VTEw7CiAKLSAgICAvKiBOb3RlOiBzaXplIHdpbGwgYWx3YXlzIGJlIGxvbmdlciB0aGFuIHRoZSByZXN1bHRpbmcgVW5pY29kZQotICAgICAgIGNoYXJhY3RlciBjb3VudCAqLwotICAgIHVuaWNvZGUgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKLSAgICBpZiAoIXVuaWNvZGUpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmIChzaXplID09IDApIHsKLSAgICAgICAgaWYgKGNvbnN1bWVkKQotICAgICAgICAgICAgKmNvbnN1bWVkID0gMDsKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7Ci0gICAgfQotCi0gICAgLyogVW5wYWNrIFVURi04IGVuY29kZWQgZGF0YSAqLwotICAgIHAgPSB1bmljb2RlLT5zdHI7Ci0gICAgZSA9IHMgKyBzaXplOwogICAgIGFsaWduZWRfZW5kID0gKGNvbnN0IGNoYXIgKikgKChzaXplX3QpIGUgJiB+TE9OR19QVFJfTUFTSyk7CiAKICAgICB3aGlsZSAocyA8IGUpIHsKQEAgLTI2MTMsMjkgKzQ2NTgsMjkgQEAKICAgICAgICAgICAgIGlmICghKChzaXplX3QpIHMgJiBMT05HX1BUUl9NQVNLKSkgewogICAgICAgICAgICAgICAgIC8qIEhlbHAgcmVnaXN0ZXIgYWxsb2NhdGlvbiAqLwogICAgICAgICAgICAgICAgIHJlZ2lzdGVyIGNvbnN0IGNoYXIgKl9zID0gczsKLSAgICAgICAgICAgICAgICByZWdpc3RlciBQeV9VTklDT0RFICpfcCA9IHA7CisgICAgICAgICAgICAgICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBfaSA9IGk7CiAgICAgICAgICAgICAgICAgd2hpbGUgKF9zIDwgYWxpZ25lZF9lbmQpIHsKICAgICAgICAgICAgICAgICAgICAgLyogUmVhZCBhIHdob2xlIGxvbmcgYXQgYSB0aW1lIChlaXRoZXIgNCBvciA4IGJ5dGVzKSwKICAgICAgICAgICAgICAgICAgICAgICAgYW5kIGRvIGEgZmFzdCB1bnJvbGxlZCBjb3B5IGlmIGl0IG9ubHkgY29udGFpbnMgQVNDSUkKICAgICAgICAgICAgICAgICAgICAgICAgY2hhcmFjdGVycy4gKi8KLSAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBkYXRhID0gKih1bnNpZ25lZCBsb25nICopIF9zOwotICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YSAmIEFTQ0lJX0NIQVJfTUFTSykKKyAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyB2YWx1ZSA9ICoodW5zaWduZWQgbG9uZyAqKSBfczsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlICYgQVNDSUlfQ0hBUl9NQVNLKQogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgICAgIF9wWzBdID0gKHVuc2lnbmVkIGNoYXIpIF9zWzBdOwotICAgICAgICAgICAgICAgICAgICBfcFsxXSA9ICh1bnNpZ25lZCBjaGFyKSBfc1sxXTsKLSAgICAgICAgICAgICAgICAgICAgX3BbMl0gPSAodW5zaWduZWQgY2hhcikgX3NbMl07Ci0gICAgICAgICAgICAgICAgICAgIF9wWzNdID0gKHVuc2lnbmVkIGNoYXIpIF9zWzNdOworICAgICAgICAgICAgICAgICAgICBXUklURV9NQVlCRV9GQUlMKF9pKzAsIF9zWzBdKTsKKyAgICAgICAgICAgICAgICAgICAgV1JJVEVfTUFZQkVfRkFJTChfaSsxLCBfc1sxXSk7CisgICAgICAgICAgICAgICAgICAgIFdSSVRFX01BWUJFX0ZBSUwoX2krMiwgX3NbMl0pOworICAgICAgICAgICAgICAgICAgICBXUklURV9NQVlCRV9GQUlMKF9pKzMsIF9zWzNdKTsKICNpZiAoU0laRU9GX0xPTkcgPT0gOCkKLSAgICAgICAgICAgICAgICAgICAgX3BbNF0gPSAodW5zaWduZWQgY2hhcikgX3NbNF07Ci0gICAgICAgICAgICAgICAgICAgIF9wWzVdID0gKHVuc2lnbmVkIGNoYXIpIF9zWzVdOwotICAgICAgICAgICAgICAgICAgICBfcFs2XSA9ICh1bnNpZ25lZCBjaGFyKSBfc1s2XTsKLSAgICAgICAgICAgICAgICAgICAgX3BbN10gPSAodW5zaWduZWQgY2hhcikgX3NbN107CisgICAgICAgICAgICAgICAgICAgIFdSSVRFX01BWUJFX0ZBSUwoX2krNCwgX3NbNF0pOworICAgICAgICAgICAgICAgICAgICBXUklURV9NQVlCRV9GQUlMKF9pKzUsIF9zWzVdKTsKKyAgICAgICAgICAgICAgICAgICAgV1JJVEVfTUFZQkVfRkFJTChfaSs2LCBfc1s2XSk7CisgICAgICAgICAgICAgICAgICAgIFdSSVRFX01BWUJFX0ZBSUwoX2krNywgX3NbN10pOwogI2VuZGlmCiAgICAgICAgICAgICAgICAgICAgIF9zICs9IFNJWkVPRl9MT05HOwotICAgICAgICAgICAgICAgICAgICBfcCArPSBTSVpFT0ZfTE9ORzsKKyAgICAgICAgICAgICAgICAgICAgX2kgKz0gU0laRU9GX0xPTkc7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIHMgPSBfczsKLSAgICAgICAgICAgICAgICBwID0gX3A7CisgICAgICAgICAgICAgICAgaSA9IF9pOwogICAgICAgICAgICAgICAgIGlmIChzID09IGUpCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIGNoID0gKHVuc2lnbmVkIGNoYXIpKnM7CkBAIC0yNjQzLDcgKzQ2ODgsNyBAQAogICAgICAgICB9CiAKICAgICAgICAgaWYgKGNoIDwgMHg4MCkgewotICAgICAgICAgICAgKnArKyA9IChQeV9VTklDT0RFKWNoOworICAgICAgICAgICAgV1JJVEVfTUFZQkVfRkFJTChpKyssIGNoKTsKICAgICAgICAgICAgIHMrKzsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CkBAIC0yNjg2LDcgKzQ3MzEsNyBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgY2ggPSAoKHNbMF0gJiAweDFmKSA8PCA2KSArIChzWzFdICYgMHgzZik7CiAgICAgICAgICAgICBhc3NlcnQgKChjaCA+IDB4MDA3RikgJiYgKGNoIDw9IDB4MDdGRikpOwotICAgICAgICAgICAgKnArKyA9IChQeV9VTklDT0RFKWNoOworICAgICAgICAgICAgV1JJVEVfTUFZQkVfRkFJTChpKyssIGNoKTsKICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgIGNhc2UgMzoKQEAgLTI3MTUsNyArNDc2MCw3IEBACiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBjaCA9ICgoc1swXSAmIDB4MGYpIDw8IDEyKSArICgoc1sxXSAmIDB4M2YpIDw8IDYpICsgKHNbMl0gJiAweDNmKTsKICAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHgwN0ZGKSAmJiAoY2ggPD0gMHhGRkZGKSk7Ci0gICAgICAgICAgICAqcCsrID0gKFB5X1VOSUNPREUpY2g7CisgICAgICAgICAgICBXUklURV9NQVlCRV9GQUlMKGkrKywgY2gpOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSA0OgpAQCAtMjczOCw1NiArNDc4MywxMTYgQEAKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGNoID0gKChzWzBdICYgMHg3KSA8PCAxOCkgKyAoKHNbMV0gJiAweDNmKSA8PCAxMikgKwogICAgICAgICAgICAgICAgICAoKHNbMl0gJiAweDNmKSA8PCA2KSArIChzWzNdICYgMHgzZik7Ci0gICAgICAgICAgICBhc3NlcnQgKChjaCA+IDB4RkZGRikgJiYgKGNoIDw9IDB4MTBmZmZmKSk7CisgICAgICAgICAgICBhc3NlcnQgKChjaCA+IDB4RkZGRikgJiYgKGNoIDw9IE1BWF9VTklDT0RFKSk7CiAKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICpwKysgPSAoUHlfVU5JQ09ERSljaDsKLSNlbHNlCi0gICAgICAgICAgICAvKiAgY29tcHV0ZSBhbmQgYXBwZW5kIHRoZSB0d28gc3Vycm9nYXRlczogKi8KLQotICAgICAgICAgICAgLyogIHRyYW5zbGF0ZSBmcm9tIDEwMDAwLi4xMEZGRkYgdG8gMC4uRkZGRiAqLwotICAgICAgICAgICAgY2ggLT0gMHgxMDAwMDsKLQotICAgICAgICAgICAgLyogIGhpZ2ggc3Vycm9nYXRlID0gdG9wIDEwIGJpdHMgYWRkZWQgdG8gRDgwMCAqLwotICAgICAgICAgICAgKnArKyA9IChQeV9VTklDT0RFKSgweEQ4MDAgKyAoY2ggPj4gMTApKTsKLQotICAgICAgICAgICAgLyogIGxvdyBzdXJyb2dhdGUgPSBib3R0b20gMTAgYml0cyBhZGRlZCB0byBEQzAwICovCi0gICAgICAgICAgICAqcCsrID0gKFB5X1VOSUNPREUpKDB4REMwMCArIChjaCAmIDB4MDNGRikpOwotI2VuZGlmCisgICAgICAgICAgICBXUklURV9NQVlCRV9GQUlMKGkrKywgY2gpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgcyArPSBuOwogICAgICAgICBjb250aW51ZTsKIAogICAgICAgdXRmOEVycm9yOgotICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOwogICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAogICAgICAgICAgICAgICAgICJ1dGY4IiwgZXJybXNnLAogICAgICAgICAgICAgICAgICZzdGFydHMsICZlLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmcywKLSAgICAgICAgICAgICAgICAmdW5pY29kZSwgJm91dHBvcywgJnApKQorICAgICAgICAgICAgICAgICZ1bmljb2RlLCAmaSkpCiAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgIC8qIFVwZGF0ZSBkYXRhIGJlY2F1c2UgdW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIgbWlnaHQgaGF2ZQorICAgICAgICAgICByZS1jcmVhdGVkIG9yIHJlc2l6ZWQgdGhlIHVuaWNvZGUgb2JqZWN0LiAqLwogICAgICAgICBhbGlnbmVkX2VuZCA9IChjb25zdCBjaGFyICopICgoc2l6ZV90KSBlICYgfkxPTkdfUFRSX01BU0spOwogICAgIH0KICAgICBpZiAoY29uc3VtZWQpCiAgICAgICAgICpjb25zdW1lZCA9IHMtc3RhcnRzOwogCi0gICAgLyogQWRqdXN0IGxlbmd0aCAqLwotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdW5pY29kZSwgcCAtIHVuaWNvZGUtPnN0cikgPCAwKQorICAgIC8qIEFkanVzdCBsZW5ndGggYW5kIHJlYWR5IHN0cmluZyB3aGVuIGl0IGNvbnRhaW5lZCBlcnJvcnMgYW5kCisgICAgICAgaXMgb2YgdGhlIG9sZCByZXNpemFibGUga2luZC4gKi8KKyAgICBpZiAodW5pY29kZV9yZXNpemUoJnVuaWNvZGUsIGkpIDwgMCkKKyAgICAgICAgZ290byBvbkVycm9yOworICAgIHVuaWNvZGVfYWRqdXN0X21heGNoYXIoJnVuaWNvZGUpOworICAgIGlmICh1bmljb2RlID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKIAogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1bmljb2RlLCAxKSk7CisgICAgcmV0dXJuIHVuaWNvZGU7CiAKICAgb25FcnJvcjoKICAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7CiAgICAgUHlfWERFQ1JFRihleGMpOwotICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICBQeV9YREVDUkVGKHVuaWNvZGUpOwogICAgIHJldHVybiBOVUxMOwogfQorI3VuZGVmIFdSSVRFX01BWUJFX0ZBSUwKIAotI3VuZGVmIEFTQ0lJX0NIQVJfTUFTSworUHlPYmplY3QgKgorUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bChjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqY29uc3VtZWQpCit7CisgICAgUHlfVUNTNCBtYXhjaGFyID0gMDsKKyAgICBQeV9zc2l6ZV90IHVuaWNvZGVfc2l6ZTsKKyAgICBpbnQgaGFzX2Vycm9ycyA9IDA7CisgICAgUHlPYmplY3QgKnVuaWNvZGU7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKyAgICBjb25zdCBjaGFyICpzdGFydHMgPSBzOworICAgIGNvbnN0IGNoYXIgKmU7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgaWYgKHNpemUgPT0gMCkgeworICAgICAgICBpZiAoY29uc3VtZWQpCisgICAgICAgICAgICAqY29uc3VtZWQgPSAwOworICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgIH0KKworICAgIG1heGNoYXIgPSB1dGY4X3NjYW5uZXIoKGNvbnN0IHVuc2lnbmVkIGNoYXIgKilzLCBzaXplLCAmdW5pY29kZV9zaXplKTsKKworICAgIC8qIFdoZW4gdGhlIHN0cmluZyBpcyBBU0NJSSBvbmx5LCBqdXN0IHVzZSBtZW1jcHkgYW5kIHJldHVybi4KKyAgICAgICB1bmljb2RlX3NpemUgbWF5IGJlICE9IHNpemUgaWYgdGhlcmUgaXMgYW4gaW5jb21wbGV0ZSBVVEYtOAorICAgICAgIHNlcXVlbmNlIGF0IHRoZSBlbmQgb2YgdGhlIEFTQ0lJIGJsb2NrLiAgKi8KKyAgICBpZiAobWF4Y2hhciA8IDEyOCAmJiBzaXplID09IHVuaWNvZGVfc2l6ZSkgeworICAgICAgICBpZiAoY29uc3VtZWQpCisgICAgICAgICAgICAqY29uc3VtZWQgPSBzaXplOworICAgICAgICByZXR1cm4gdW5pY29kZV9mcm9tYXNjaWkoKGNvbnN0IHVuc2lnbmVkIGNoYXIgKilzLCBzaXplKTsKKyAgICB9CisKKyAgICB1bmljb2RlID0gUHlVbmljb2RlX05ldyh1bmljb2RlX3NpemUsIG1heGNoYXIpOworICAgIGlmICghdW5pY29kZSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSh1bmljb2RlKTsKKworICAgIC8qIFVucGFjayBVVEYtOCBlbmNvZGVkIGRhdGEgKi8KKyAgICBpID0gMDsKKyAgICBlID0gc3RhcnRzICsgc2l6ZTsKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICBoYXNfZXJyb3JzID0gdWNzMWxpYl91dGY4X3RyeV9kZWNvZGUocywgZSwgKFB5X1VDUzEgKikgZGF0YSwgJnMsICZpKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgaGFzX2Vycm9ycyA9IHVjczJsaWJfdXRmOF90cnlfZGVjb2RlKHMsIGUsIChQeV9VQ1MyICopIGRhdGEsICZzLCAmaSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIGhhc19lcnJvcnMgPSB1Y3M0bGliX3V0ZjhfdHJ5X2RlY29kZShzLCBlLCAoUHlfVUNTNCAqKSBkYXRhLCAmcywgJmkpOworICAgICAgICBicmVhazsKKyAgICB9CisgICAgaWYgKCFoYXNfZXJyb3JzKSB7CisgICAgICAgIC8qIEVuc3VyZSB0aGUgdW5pY29kZSBzaXplIGNhbGN1bGF0aW9uIHdhcyBjb3JyZWN0ICovCisgICAgICAgIGFzc2VydChpID09IHVuaWNvZGVfc2l6ZSk7CisgICAgICAgIGFzc2VydChzID09IGUpOworICAgICAgICBpZiAoY29uc3VtZWQpCisgICAgICAgICAgICAqY29uc3VtZWQgPSBzaXplOworICAgICAgICByZXR1cm4gdW5pY29kZTsKKyAgICB9CisKKyAgICAvKiBJbiBjYXNlIG9mIGVycm9ycywgbWF4Y2hhciBhbmQgc2l6ZSBjb21wdXRhdGlvbiBtaWdodCBiZSBpbmNvcnJlY3Q7CisgICAgICAgY29kZSBiZWxvdyByZWZpdHMgYW5kIHJlc2l6ZXMgYXMgbmVjZXNzYXJ5LiAqLworICAgIHJldHVybiBkZWNvZGVfdXRmOF9lcnJvcnMoc3RhcnRzLCBzaXplLCBlcnJvcnMsIGNvbnN1bWVkLCBzLCB1bmljb2RlLCBpKTsKK30KIAogI2lmZGVmIF9fQVBQTEVfXwogCkBAIC0yODU4LDcgKzQ5NjMsNyBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgY2ggPSAoKHNbMF0gJiAweDBmKSA8PCAxMikgKyAoKHNbMV0gJiAweDNmKSA8PCA2KSArIChzWzJdICYgMHgzZik7CiAgICAgICAgICAgICBhc3NlcnQgKChjaCA+IDB4MDdGRikgJiYgKGNoIDw9IDB4RkZGRikpOwotICAgICAgICAgICAgKnArKyA9IChQeV9VTklDT0RFKWNoOworICAgICAgICAgICAgKnArKyA9ICh3Y2hhcl90KWNoOwogICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgY2FzZSA0OgpAQCAtMjg3MywyMSArNDk3OCwxNCBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgY2ggPSAoKHNbMF0gJiAweDcpIDw8IDE4KSArICgoc1sxXSAmIDB4M2YpIDw8IDEyKSArCiAgICAgICAgICAgICAgICAgICgoc1syXSAmIDB4M2YpIDw8IDYpICsgKHNbM10gJiAweDNmKTsKLSAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHhGRkZGKSAmJiAoY2ggPD0gMHgxMGZmZmYpKTsKKyAgICAgICAgICAgIGFzc2VydCAoKGNoID4gMHhGRkZGKSAmJiAoY2ggPD0gTUFYX1VOSUNPREUpKTsKIAogI2lmIFNJWkVPRl9XQ0hBUl9UID09IDQKICAgICAgICAgICAgICpwKysgPSAod2NoYXJfdCljaDsKICNlbHNlCiAgICAgICAgICAgICAvKiAgY29tcHV0ZSBhbmQgYXBwZW5kIHRoZSB0d28gc3Vycm9nYXRlczogKi8KLQotICAgICAgICAgICAgLyogIHRyYW5zbGF0ZSBmcm9tIDEwMDAwLi4xMEZGRkYgdG8gMC4uRkZGRiAqLwotICAgICAgICAgICAgY2ggLT0gMHgxMDAwMDsKLQotICAgICAgICAgICAgLyogIGhpZ2ggc3Vycm9nYXRlID0gdG9wIDEwIGJpdHMgYWRkZWQgdG8gRDgwMCAqLwotICAgICAgICAgICAgKnArKyA9ICh3Y2hhcl90KSgweEQ4MDAgKyAoY2ggPj4gMTApKTsKLQotICAgICAgICAgICAgLyogIGxvdyBzdXJyb2dhdGUgPSBib3R0b20gMTAgYml0cyBhZGRlZCB0byBEQzAwICovCi0gICAgICAgICAgICAqcCsrID0gKHdjaGFyX3QpKDB4REMwMCArIChjaCAmIDB4MDNGRikpOworICAgICAgICAgICAgKnArKyA9ICh3Y2hhcl90KVB5X1VOSUNPREVfSElHSF9TVVJST0dBVEUoY2gpOworICAgICAgICAgICAgKnArKyA9ICh3Y2hhcl90KVB5X1VOSUNPREVfTE9XX1NVUlJPR0FURShjaCk7CiAjZW5kaWYKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CkBAIC0yOTA0LDE4NSArNTAwMiw2OSBAQAogCiAjZW5kaWYgLyogX19BUFBMRV9fICovCiAKLS8qIEFsbG9jYXRpb24gc3RyYXRlZ3k6ICBpZiB0aGUgc3RyaW5nIGlzIHNob3J0LCBjb252ZXJ0IGludG8gYSBzdGFjayBidWZmZXIKKy8qIFByaW1hcnkgaW50ZXJuYWwgZnVuY3Rpb24gd2hpY2ggY3JlYXRlcyB1dGY4IGVuY29kZWQgYnl0ZXMgb2JqZWN0cy4KKworICAgQWxsb2NhdGlvbiBzdHJhdGVneTogIGlmIHRoZSBzdHJpbmcgaXMgc2hvcnQsIGNvbnZlcnQgaW50byBhIHN0YWNrIGJ1ZmZlcgogICAgYW5kIGFsbG9jYXRlIGV4YWN0bHkgYXMgbXVjaCBzcGFjZSBuZWVkZWQgYXQgdGhlIGVuZC4gIEVsc2UgYWxsb2NhdGUgdGhlCiAgICBtYXhpbXVtIHBvc3NpYmxlIG5lZWRlZCAoNCByZXN1bHQgYnl0ZXMgcGVyIFVuaWNvZGUgY2hhcmFjdGVyKSwgYW5kIHJldHVybgogICAgdGhlIGV4Y2VzcyBtZW1vcnkgYXQgdGhlIGVuZC4KICovCiBQeU9iamVjdCAqCi1QeVVuaWNvZGVfRW5jb2RlVVRGOChjb25zdCBQeV9VTklDT0RFICpzLAotICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorX1B5VW5pY29kZV9Bc1VURjhTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUsIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKLSNkZWZpbmUgTUFYX1NIT1JUX1VOSUNIQVJTIDMwMCAgLyogbGFyZ2VzdCBzaXplIHdlJ2xsIGRvIG9uIHRoZSBzdGFjayAqLworICAgIGVudW0gUHlVbmljb2RlX0tpbmQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X3NzaXplX3Qgc2l6ZTsKIAotICAgIFB5X3NzaXplX3QgaTsgICAgICAgICAgICAgICAgLyogaW5kZXggaW50byBzIG9mIG5leHQgaW5wdXQgYnl0ZSAqLwotICAgIFB5T2JqZWN0ICpyZXN1bHQ7ICAgICAgICAgICAgLyogcmVzdWx0IHN0cmluZyBvYmplY3QgKi8KLSAgICBjaGFyICpwOyAgICAgICAgICAgICAgICAgICAgIC8qIG5leHQgZnJlZSBieXRlIGluIG91dHB1dCBidWZmZXIgKi8KLSAgICBQeV9zc2l6ZV90IG5hbGxvY2F0ZWQ7ICAgICAgLyogbnVtYmVyIG9mIHJlc3VsdCBieXRlcyBhbGxvY2F0ZWQgKi8KLSAgICBQeV9zc2l6ZV90IG5uZWVkZWQ7ICAgICAgICAgICAgLyogbnVtYmVyIG9mIHJlc3VsdCBieXRlcyBuZWVkZWQgKi8KLSAgICBjaGFyIHN0YWNrYnVmW01BWF9TSE9SVF9VTklDSEFSUyAqIDRdOwotICAgIFB5T2JqZWN0ICplcnJvckhhbmRsZXIgPSBOVUxMOwotICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOwotCi0gICAgYXNzZXJ0KHMgIT0gTlVMTCk7Ci0gICAgYXNzZXJ0KHNpemUgPj0gMCk7Ci0KLSAgICBpZiAoc2l6ZSA8PSBNQVhfU0hPUlRfVU5JQ0hBUlMpIHsKLSAgICAgICAgLyogV3JpdGUgaW50byB0aGUgc3RhY2sgYnVmZmVyOyBuYWxsb2NhdGVkIGNhbid0IG92ZXJmbG93LgotICAgICAgICAgKiBBdCB0aGUgZW5kLCB3ZSdsbCBhbGxvY2F0ZSBleGFjdGx5IGFzIG11Y2ggaGVhcCBzcGFjZSBhcyBpdAotICAgICAgICAgKiB0dXJucyBvdXQgd2UgbmVlZC4KLSAgICAgICAgICovCi0gICAgICAgIG5hbGxvY2F0ZWQgPSBQeV9TQUZFX0RPV05DQVNUKHNpemVvZihzdGFja2J1ZiksIHNpemVfdCwgaW50KTsKLSAgICAgICAgcmVzdWx0ID0gTlVMTDsgICAvKiB3aWxsIGFsbG9jYXRlIGFmdGVyIHdlJ3JlIGRvbmUgKi8KLSAgICAgICAgcCA9IHN0YWNrYnVmOwotICAgIH0KLSAgICBlbHNlIHsKLSAgICAgICAgLyogT3ZlcmFsbG9jYXRlIG9uIHRoZSBoZWFwLCBhbmQgZ2l2ZSB0aGUgZXhjZXNzIGJhY2sgYXQgdGhlIGVuZC4gKi8KLSAgICAgICAgbmFsbG9jYXRlZCA9IHNpemUgKiA0OwotICAgICAgICBpZiAobmFsbG9jYXRlZCAvIDQgIT0gc2l6ZSkgIC8qIG92ZXJmbG93ISAqLwotICAgICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgIHJlc3VsdCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgbmFsbG9jYXRlZCk7Ci0gICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBwID0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKLSAgICB9Ci0KLSAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZTspIHsKLSAgICAgICAgUHlfVUNTNCBjaCA9IHNbaSsrXTsKLQotICAgICAgICBpZiAoY2ggPCAweDgwKQotICAgICAgICAgICAgLyogRW5jb2RlIEFTQ0lJICovCi0gICAgICAgICAgICAqcCsrID0gKGNoYXIpIGNoOwotCi0gICAgICAgIGVsc2UgaWYgKGNoIDwgMHgwODAwKSB7Ci0gICAgICAgICAgICAvKiBFbmNvZGUgTGF0aW4tMSAqLwotICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweGMwIHwgKGNoID4+IDYpKTsKLSAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHg4MCB8IChjaCAmIDB4M2YpKTsKLSAgICAgICAgfSBlbHNlIGlmICgweEQ4MDAgPD0gY2ggJiYgY2ggPD0gMHhERkZGKSB7Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgLyogU3BlY2lhbCBjYXNlOiBjaGVjayBmb3IgaGlnaCBhbmQgbG93IHN1cnJvZ2F0ZSAqLwotICAgICAgICAgICAgaWYgKGNoIDw9IDB4REJGRiAmJiBpICE9IHNpemUgJiYgMHhEQzAwIDw9IHNbaV0gJiYgc1tpXSA8PSAweERGRkYpIHsKLSAgICAgICAgICAgICAgICBQeV9VQ1M0IGNoMiA9IHNbaV07Ci0gICAgICAgICAgICAgICAgLyogQ29tYmluZSB0aGUgdHdvIHN1cnJvZ2F0ZXMgdG8gZm9ybSBhIFVDUzQgdmFsdWUgKi8KLSAgICAgICAgICAgICAgICBjaCA9ICgoY2ggLSAweEQ4MDApIDw8IDEwIHwgKGNoMiAtIDB4REMwMCkpICsgMHgxMDAwMDsKLSAgICAgICAgICAgICAgICBpKys7Ci0KLSAgICAgICAgICAgICAgICAvKiBFbmNvZGUgVUNTNCBVbmljb2RlIG9yZGluYWxzICovCi0gICAgICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweGYwIHwgKGNoID4+IDE4KSk7Ci0gICAgICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKChjaCA+PiAxMikgJiAweDNmKSk7Ci0gICAgICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKChjaCA+PiA2KSAmIDB4M2YpKTsKLSAgICAgICAgICAgICAgICAqcCsrID0gKGNoYXIpKDB4ODAgfCAoY2ggJiAweDNmKSk7Ci0gICAgICAgICAgICB9IGVsc2UgewotI2VuZGlmCi0gICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuZXdwb3M7Ci0gICAgICAgICAgICAgICAgUHlPYmplY3QgKnJlcDsKLSAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHJlcHNpemUsIGs7Ci0gICAgICAgICAgICAgICAgcmVwID0gdW5pY29kZV9lbmNvZGVfY2FsbF9lcnJvcmhhbmRsZXIKLSAgICAgICAgICAgICAgICAgICAgKGVycm9ycywgJmVycm9ySGFuZGxlciwgInV0Zi04IiwgInN1cnJvZ2F0ZXMgbm90IGFsbG93ZWQiLAotICAgICAgICAgICAgICAgICAgICAgcywgc2l6ZSwgJmV4YywgaS0xLCBpLCAmbmV3cG9zKTsKLSAgICAgICAgICAgICAgICBpZiAoIXJlcCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLQotICAgICAgICAgICAgICAgIGlmIChQeUJ5dGVzX0NoZWNrKHJlcCkpCi0gICAgICAgICAgICAgICAgICAgIHJlcHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKHJlcCk7Ci0gICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICByZXBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKHJlcCk7Ci0KLSAgICAgICAgICAgICAgICBpZiAocmVwc2l6ZSA+IDQpIHsKLSAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBvZmZzZXQ7Ci0KLSAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQotICAgICAgICAgICAgICAgICAgICAgICAgb2Zmc2V0ID0gcCAtIHN0YWNrYnVmOwotICAgICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXQgPSBwIC0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KTsKLQotICAgICAgICAgICAgICAgICAgICBpZiAobmFsbG9jYXRlZCA+IFBZX1NTSVpFX1RfTUFYIC0gcmVwc2l6ZSArIDQpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIC8qIGludGVnZXIgb3ZlcmZsb3cgKi8KLSAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIG5hbGxvY2F0ZWQgKz0gcmVwc2l6ZSAtIDQ7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgIT0gTlVMTCkgewotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmVzdWx0LCBuYWxsb2NhdGVkKSA8IDApCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgbmFsbG9jYXRlZCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzdWx0ID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5X01FTUNQWShQeUJ5dGVzX0FTX1NUUklORyhyZXN1bHQpLCBzdGFja2J1Ziwgb2Zmc2V0KTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICBwID0gUHlCeXRlc19BU19TVFJJTkcocmVzdWx0KSArIG9mZnNldDsKLSAgICAgICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgICAgICBpZiAoUHlCeXRlc19DaGVjayhyZXApKSB7Ci0gICAgICAgICAgICAgICAgICAgIGNoYXIgKnByZXAgPSBQeUJ5dGVzX0FTX1NUUklORyhyZXApOwotICAgICAgICAgICAgICAgICAgICBmb3IoayA9IHJlcHNpemU7IGsgPiAwOyBrLS0pCi0gICAgICAgICAgICAgICAgICAgICAgICAqcCsrID0gKnByZXArKzsKLSAgICAgICAgICAgICAgICB9IGVsc2UgLyogcmVwIGlzIHVuaWNvZGUgKi8gewotICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFICpwcmVwID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVwKTsKLSAgICAgICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjOwotCi0gICAgICAgICAgICAgICAgICAgIGZvcihrPTA7IGs8cmVwc2l6ZTsgaysrKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBjID0gcHJlcFtrXTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmICgweDgwIDw9IGMpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsICJ1dGYtOCIsIHMsIHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpLTEsIGksICJzdXJyb2dhdGVzIG5vdCBhbGxvd2VkIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICAgICpwKysgPSAoY2hhcilwcmVwW2tdOwotICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXApOwotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgIH0KLSNlbmRpZgotICAgICAgICB9IGVsc2UgaWYgKGNoIDwgMHgxMDAwMCkgewotICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweGUwIHwgKGNoID4+IDEyKSk7Ci0gICAgICAgICAgICAqcCsrID0gKGNoYXIpKDB4ODAgfCAoKGNoID4+IDYpICYgMHgzZikpOwotICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKGNoICYgMHgzZikpOwotICAgICAgICB9IGVsc2UgLyogY2ggPj0gMHgxMDAwMCAqLyB7Ci0gICAgICAgICAgICAvKiBFbmNvZGUgVUNTNCBVbmljb2RlIG9yZGluYWxzICovCi0gICAgICAgICAgICAqcCsrID0gKGNoYXIpKDB4ZjAgfCAoY2ggPj4gMTgpKTsKLSAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHg4MCB8ICgoY2ggPj4gMTIpICYgMHgzZikpOwotICAgICAgICAgICAgKnArKyA9IChjaGFyKSgweDgwIHwgKChjaCA+PiA2KSAmIDB4M2YpKTsKLSAgICAgICAgICAgICpwKysgPSAoY2hhcikoMHg4MCB8IChjaCAmIDB4M2YpKTsKLSAgICAgICAgfQotICAgIH0KLQotICAgIGlmIChyZXN1bHQgPT0gTlVMTCkgewotICAgICAgICAvKiBUaGlzIHdhcyBzdGFjayBhbGxvY2F0ZWQuICovCi0gICAgICAgIG5uZWVkZWQgPSBwIC0gc3RhY2tidWY7Ci0gICAgICAgIGFzc2VydChubmVlZGVkIDw9IG5hbGxvY2F0ZWQpOwotICAgICAgICByZXN1bHQgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKHN0YWNrYnVmLCBubmVlZGVkKTsKLSAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8qIEN1dCBiYWNrIHRvIHNpemUgYWN0dWFsbHkgbmVlZGVkLiAqLwotICAgICAgICBubmVlZGVkID0gcCAtIFB5Qnl0ZXNfQVNfU1RSSU5HKHJlc3VsdCk7Ci0gICAgICAgIGFzc2VydChubmVlZGVkIDw9IG5hbGxvY2F0ZWQpOwotICAgICAgICBfUHlCeXRlc19SZXNpemUoJnJlc3VsdCwgbm5lZWRlZCk7Ci0gICAgfQotICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKLSAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIHJlc3VsdDsKLSBlcnJvcjoKLSAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7Ci0gICAgUHlfWERFQ1JFRihleGMpOwotICAgIFB5X1hERUNSRUYocmVzdWx0KTsKLSAgICByZXR1cm4gTlVMTDsKLQotI3VuZGVmIE1BWF9TSE9SVF9VTklDSEFSUwotfQotCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzVVRGOFN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKLXsKICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVVVEY4KFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBpZiAoUHlVbmljb2RlX1VURjgodW5pY29kZSkpCisgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKFB5VW5pY29kZV9VVEY4KHVuaWNvZGUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfVVRGOF9MRU5HVEgodW5pY29kZSkpOworCisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSh1bmljb2RlKTsKKyAgICBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSk7CisKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBkZWZhdWx0OgorICAgICAgICBhc3NlcnQoMCk7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgLyogdGhlIHN0cmluZyBjYW5ub3QgYmUgQVNDSUksIG9yIFB5VW5pY29kZV9VVEY4KCkgd291bGQgYmUgc2V0ICovCisgICAgICAgIGFzc2VydCghUHlVbmljb2RlX0lTX0FTQ0lJKHVuaWNvZGUpKTsKKyAgICAgICAgcmV0dXJuIHVjczFsaWJfdXRmOF9lbmNvZGVyKHVuaWNvZGUsIGRhdGEsIHNpemUsIGVycm9ycyk7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIHVjczJsaWJfdXRmOF9lbmNvZGVyKHVuaWNvZGUsIGRhdGEsIHNpemUsIGVycm9ycyk7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIHVjczRsaWJfdXRmOF9lbmNvZGVyKHVuaWNvZGUsIGRhdGEsIHNpemUsIGVycm9ycyk7CisgICAgfQorfQorCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRW5jb2RlVVRGOChjb25zdCBQeV9VTklDT0RFICpzLAorICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQoreworICAgIFB5T2JqZWN0ICp2LCAqdW5pY29kZTsKKworICAgIHVuaWNvZGUgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocywgc2l6ZSk7CisgICAgaWYgKHVuaWNvZGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgdiA9IF9QeVVuaWNvZGVfQXNVVEY4U3RyaW5nKHVuaWNvZGUsIGVycm9ycyk7CisgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgIHJldHVybiB2OworfQorCitQeU9iamVjdCAqCitQeVVuaWNvZGVfQXNVVEY4U3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIHJldHVybiBfUHlVbmljb2RlX0FzVVRGOFN0cmluZyh1bmljb2RlLCBOVUxMKTsKIH0KIAogLyogLS0tIFVURi0zMiBDb2RlYyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCkBAIC0zMTA3LDE0ICs1MDg5LDcgQEAKICAgICBQeV9zc2l6ZV90IHN0YXJ0aW5wb3M7CiAgICAgUHlfc3NpemVfdCBlbmRpbnBvczsKICAgICBQeV9zc2l6ZV90IG91dHBvczsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGU7Ci0gICAgUHlfVU5JQ09ERSAqcDsKLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgaW50IHBhaXJzID0gMDsKLSAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpxcTsKLSNlbHNlCi0gICAgY29uc3QgaW50IHBhaXJzID0gMDsKLSNlbmRpZgorICAgIFB5T2JqZWN0ICp1bmljb2RlOwogICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnEsICplOwogICAgIGludCBibyA9IDA7ICAgICAgIC8qIGFzc3VtZSBuYXRpdmUgb3JkZXJpbmcgYnkgZGVmYXVsdCAqLwogICAgIGNvbnN0IGNoYXIgKmVycm1zZyA9ICIiOwpAQCAtMzE3OCwyMyArNTE1MywxMyBAQAogICAgICAgICBpb3JkZXJbM10gPSAwOwogICAgIH0KIAotICAgIC8qIE9uIG5hcnJvdyBidWlsZHMgd2Ugc3BsaXQgY2hhcmFjdGVycyBvdXRzaWRlIHRoZSBCTVAgaW50byB0d28KLSAgICAgICBjb2RlcG9pbnRzID0+IGNvdW50IGhvdyBtdWNoIGV4dHJhIHNwYWNlIHdlIG5lZWQuICovCi0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgIGZvciAocXEgPSBxOyBxcSA8IGU7IHFxICs9IDQpCi0gICAgICAgIGlmIChxcVtpb3JkZXJbMl1dICE9IDAgfHwgcXFbaW9yZGVyWzNdXSAhPSAwKQotICAgICAgICAgICAgcGFpcnMrKzsKLSNlbmRpZgotCiAgICAgLyogVGhpcyBtaWdodCBiZSBvbmUgdG8gbXVjaCwgYmVjYXVzZSBvZiBhIEJPTSAqLwotICAgIHVuaWNvZGUgPSBfUHlVbmljb2RlX05ldygoc2l6ZSszKS80K3BhaXJzKTsKKyAgICB1bmljb2RlID0gUHlVbmljb2RlX05ldygoc2l6ZSszKS80LCAxMjcpOwogICAgIGlmICghdW5pY29kZSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKHNpemUgPT0gMCkKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7Ci0KLSAgICAvKiBVbnBhY2sgVVRGLTMyIGVuY29kZWQgZGF0YSAqLwotICAgIHAgPSB1bmljb2RlLT5zdHI7CisgICAgICAgIHJldHVybiB1bmljb2RlOworICAgIG91dHBvcyA9IDA7CiAKICAgICB3aGlsZSAocSA8IGUpIHsKICAgICAgICAgUHlfVUNTNCBjaDsKQEAgLTMyMTksMjQgKzUxODQsMTYgQEAKICAgICAgICAgICAgIGVuZGlucG9zID0gc3RhcnRpbnBvcys0OwogICAgICAgICAgICAgZ290byB1dGYzMkVycm9yOwogICAgICAgICB9Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICBpZiAoY2ggPj0gMHgxMDAwMCkKLSAgICAgICAgewotICAgICAgICAgICAgKnArKyA9IDB4RDgwMCB8ICgoY2gtMHgxMDAwMCkgPj4gMTApOwotICAgICAgICAgICAgKnArKyA9IDB4REMwMCB8ICgoY2gtMHgxMDAwMCkgJiAweDNGRik7Ci0gICAgICAgIH0KLSAgICAgICAgZWxzZQotI2VuZGlmCi0gICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnVuaWNvZGUsICZvdXRwb3MsIGNoKSA8IDApCisgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgIHEgKz0gNDsKICAgICAgICAgY29udGludWU7CiAgICAgICB1dGYzMkVycm9yOgotICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOwogICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAogICAgICAgICAgICAgICAgICJ1dGYzMiIsIGVycm1zZywKICAgICAgICAgICAgICAgICAmc3RhcnRzLCAoY29uc3QgY2hhciAqKikmZSwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgKGNvbnN0IGNoYXIgKiopJnEsCi0gICAgICAgICAgICAgICAgJnVuaWNvZGUsICZvdXRwb3MsICZwKSkKKyAgICAgICAgICAgICAgICAmdW5pY29kZSwgJm91dHBvcykpCiAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgfQogCkBAIC0zMjQ3LDEyICs1MjA0LDEyIEBACiAgICAgICAgICpjb25zdW1lZCA9IChjb25zdCBjaGFyICopcS1zdGFydHM7CiAKICAgICAvKiBBZGp1c3QgbGVuZ3RoICovCi0gICAgaWYgKF9QeVVuaWNvZGVfUmVzaXplKCZ1bmljb2RlLCBwIC0gdW5pY29kZS0+c3RyKSA8IDApCisgICAgaWYgKHVuaWNvZGVfcmVzaXplKCZ1bmljb2RlLCBvdXRwb3MpIDwgMCkKICAgICAgICAgZ290byBvbkVycm9yOwogCiAgICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOwogICAgIFB5X1hERUNSRUYoZXhjKTsKLSAgICByZXR1cm4gKFB5T2JqZWN0ICopdW5pY29kZTsKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHQodW5pY29kZSk7CiAKICAgb25FcnJvcjoKICAgICBQeV9ERUNSRUYodW5pY29kZSk7CkBAIC0zMjYyLDE5ICs1MjE5LDE2IEBACiB9CiAKIFB5T2JqZWN0ICoKLVB5VW5pY29kZV9FbmNvZGVVVEYzMihjb25zdCBQeV9VTklDT0RFICpzLAotICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgaW50IGJ5dGVvcmRlcikKK19QeVVuaWNvZGVfRW5jb2RlVVRGMzIoUHlPYmplY3QgKnN0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLAorICAgICAgICAgICAgICAgICAgICAgICBpbnQgYnl0ZW9yZGVyKQogeworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBsZW47CiAgICAgUHlPYmplY3QgKnY7CiAgICAgdW5zaWduZWQgY2hhciAqcDsKLSAgICBQeV9zc2l6ZV90IG5zaXplLCBieXRlc2l6ZTsKLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgUHlfc3NpemVfdCBpLCBwYWlyczsKLSNlbHNlCi0gICAgY29uc3QgaW50IHBhaXJzID0gMDsKLSNlbmRpZgorICAgIFB5X3NzaXplX3QgbnNpemUsIGJ5dGVzaXplLCBpOwogICAgIC8qIE9mZnNldHMgZnJvbSBwIGZvciBzdG9yaW5nIGJ5dGUgcGFpcnMgaW4gdGhlIHJpZ2h0IG9yZGVyLiAqLwogI2lmZGVmIEJZVEVPUkRFUl9JU19MSVRUTEVfRU5ESUFOCiAgICAgaW50IGlvcmRlcltdID0gezAsIDEsIDIsIDN9OwpAQCAtMzI5MSwxNSArNTI0NSwxNyBAQAogICAgICAgICBwICs9IDQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0gd2hpbGUoMCkKIAotICAgIC8qIEluIG5hcnJvdyBidWlsZHMgd2UgY2FuIG91dHB1dCBzdXJyb2dhdGUgcGFpcnMgYXMgb25lIGNvZGVwb2ludCwKLSAgICAgICBzbyB3ZSBuZWVkIGxlc3Mgc3BhY2UuICovCi0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgIGZvciAoaSA9IHBhaXJzID0gMDsgaSA8IHNpemUtMTsgaSsrKQotICAgICAgICBpZiAoMHhEODAwIDw9IHNbaV0gJiYgc1tpXSA8PSAweERCRkYgJiYKLSAgICAgICAgICAgIDB4REMwMCA8PSBzW2krMV0gJiYgc1tpKzFdIDw9IDB4REZGRikKLSAgICAgICAgICAgIHBhaXJzKys7Ci0jZW5kaWYKLSAgICBuc2l6ZSA9IChzaXplIC0gcGFpcnMgKyAoYnl0ZW9yZGVyID09IDApKTsKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhzdHIpKSB7CisgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN0cikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzdHIpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShzdHIpOworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cik7CisKKyAgICBuc2l6ZSA9IGxlbiArIChieXRlb3JkZXIgPT0gMCk7CiAgICAgYnl0ZXNpemUgPSBuc2l6ZSAqIDQ7CiAgICAgaWYgKGJ5dGVzaXplIC8gNCAhPSBuc2l6ZSkKICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CkBAIC0zMzEwLDcgKzUyNjYsNyBAQAogICAgIHAgPSAodW5zaWduZWQgY2hhciAqKVB5Qnl0ZXNfQVNfU1RSSU5HKHYpOwogICAgIGlmIChieXRlb3JkZXIgPT0gMCkKICAgICAgICAgU1RPUkVDSEFSKDB4RkVGRik7Ci0gICAgaWYgKHNpemUgPT0gMCkKKyAgICBpZiAobGVuID09IDApCiAgICAgICAgIGdvdG8gZG9uZTsKIAogICAgIGlmIChieXRlb3JkZXIgPT0gLTEpIHsKQEAgLTMzMjgsMzYgKzUyODQsMzMgQEAKICAgICAgICAgaW9yZGVyWzNdID0gMDsKICAgICB9CiAKLSAgICB3aGlsZSAoc2l6ZS0tID4gMCkgewotICAgICAgICBQeV9VQ1M0IGNoID0gKnMrKzsKLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgICAgIGlmICgweEQ4MDAgPD0gY2ggJiYgY2ggPD0gMHhEQkZGICYmIHNpemUgPiAwKSB7Ci0gICAgICAgICAgICBQeV9VQ1M0IGNoMiA9ICpzOwotICAgICAgICAgICAgaWYgKDB4REMwMCA8PSBjaDIgJiYgY2gyIDw9IDB4REZGRikgewotICAgICAgICAgICAgICAgIGNoID0gKCgoY2ggJiAweDNGRik8PDEwKSB8IChjaDIgJiAweDNGRikpICsgMHgxMDAwMDsKLSAgICAgICAgICAgICAgICBzKys7Ci0gICAgICAgICAgICAgICAgc2l6ZS0tOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0jZW5kaWYKLSAgICAgICAgU1RPUkVDSEFSKGNoKTsKLSAgICB9CisgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKQorICAgICAgICBTVE9SRUNIQVIoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpOwogCiAgIGRvbmU6CiAgICAgcmV0dXJuIHY7CiAjdW5kZWYgU1RPUkVDSEFSCiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfQXNVVEYzMlN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9FbmNvZGVVVEYzMihjb25zdCBQeV9VTklDT0RFICpzLAorICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCisgICAgICAgICAgICAgICAgICAgICAgaW50IGJ5dGVvcmRlcikKIHsKLSAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewotICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgUHlPYmplY3QgKnRtcCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShzLCBzaXplKTsKKyAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZVVURjMyKFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOworICAgIHJlc3VsdCA9IF9QeVVuaWNvZGVfRW5jb2RlVVRGMzIodG1wLCBlcnJvcnMsIGJ5dGVvcmRlcik7CisgICAgUHlfREVDUkVGKHRtcCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworUHlPYmplY3QgKgorUHlVbmljb2RlX0FzVVRGMzJTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfRW5jb2RlVVRGMzIodW5pY29kZSwgTlVMTCwgMCk7CiB9CiAKIC8qIC0tLSBVVEYtMTYgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwpAQCAtMzM5OSw4ICs1MzUyLDcgQEAKICAgICBQeV9zc2l6ZV90IHN0YXJ0aW5wb3M7CiAgICAgUHlfc3NpemVfdCBlbmRpbnBvczsKICAgICBQeV9zc2l6ZV90IG91dHBvczsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnVuaWNvZGU7Ci0gICAgUHlfVU5JQ09ERSAqcDsKKyAgICBQeU9iamVjdCAqdW5pY29kZTsKICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpxLCAqZSwgKmFsaWduZWRfZW5kOwogICAgIGludCBibyA9IDA7ICAgICAgIC8qIGFzc3VtZSBuYXRpdmUgb3JkZXJpbmcgYnkgZGVmYXVsdCAqLwogICAgIGludCBuYXRpdmVfb3JkZXJpbmcgPSAwOwpAQCAtMzQxNiwxNCArNTM2OCwxMyBAQAogCiAgICAgLyogTm90ZTogc2l6ZSB3aWxsIGFsd2F5cyBiZSBsb25nZXIgdGhhbiB0aGUgcmVzdWx0aW5nIFVuaWNvZGUKICAgICAgICBjaGFyYWN0ZXIgY291bnQgKi8KLSAgICB1bmljb2RlID0gX1B5VW5pY29kZV9OZXcoc2l6ZSk7CisgICAgdW5pY29kZSA9IFB5VW5pY29kZV9OZXcoc2l6ZSwgMTI3KTsKICAgICBpZiAoIXVuaWNvZGUpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChzaXplID09IDApCi0gICAgICAgIHJldHVybiAoUHlPYmplY3QgKil1bmljb2RlOworICAgICAgICByZXR1cm4gdW5pY29kZTsKKyAgICBvdXRwb3MgPSAwOwogCi0gICAgLyogVW5wYWNrIFVURi0xNiBlbmNvZGVkIGRhdGEgKi8KLSAgICBwID0gdW5pY29kZS0+c3RyOwogICAgIHEgPSAodW5zaWduZWQgY2hhciAqKXM7CiAgICAgZSA9IHEgKyBzaXplIC0gMTsKIApAQCAtMzQzNiw3ICs1Mzg3LDcgQEAKICAgICAgICBzdHJlYW0gYXMtaXMgKGdpdmluZyBhIFpXTkJTUCBjaGFyYWN0ZXIpLiAqLwogICAgIGlmIChibyA9PSAwKSB7CiAgICAgICAgIGlmIChzaXplID49IDIpIHsKLSAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgYm9tID0gKHFbaWhpXSA8PCA4KSB8IHFbaWxvXTsKKyAgICAgICAgICAgIGNvbnN0IFB5X1VDUzQgYm9tID0gKHFbaWhpXSA8PCA4KSB8IHFbaWxvXTsKICNpZmRlZiBCWVRFT1JERVJfSVNfTElUVExFX0VORElBTgogICAgICAgICAgICAgaWYgKGJvbSA9PSAweEZFRkYpIHsKICAgICAgICAgICAgICAgICBxICs9IDI7CkBAIC0zNDc3LDc0ICs1NDI4LDU3IEBACiAKICAgICBhbGlnbmVkX2VuZCA9IChjb25zdCB1bnNpZ25lZCBjaGFyICopICgoc2l6ZV90KSBlICYgfkxPTkdfUFRSX01BU0spOwogICAgIHdoaWxlIChxIDwgZSkgewotICAgICAgICBQeV9VTklDT0RFIGNoOworICAgICAgICBQeV9VQ1M0IGNoOwogICAgICAgICAvKiBGaXJzdCBjaGVjayBmb3IgcG9zc2libGUgYWxpZ25lZCByZWFkIG9mIGEgQyAnbG9uZycuIFVuYWxpZ25lZAogICAgICAgICAgICByZWFkcyBhcmUgbW9yZSBleHBlbnNpdmUsIGJldHRlciB0byBkZWZlciB0byBhbm90aGVyIGl0ZXJhdGlvbi4gKi8KICAgICAgICAgaWYgKCEoKHNpemVfdCkgcSAmIExPTkdfUFRSX01BU0spKSB7CiAgICAgICAgICAgICAvKiBGYXN0IHBhdGggZm9yIHJ1bnMgb2Ygbm9uLXN1cnJvZ2F0ZSBjaGFycy4gKi8KICAgICAgICAgICAgIHJlZ2lzdGVyIGNvbnN0IHVuc2lnbmVkIGNoYXIgKl9xID0gcTsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKl9wID0gcDsKLSAgICAgICAgICAgIGlmIChuYXRpdmVfb3JkZXJpbmcpIHsKLSAgICAgICAgICAgICAgICAvKiBOYXRpdmUgb3JkZXJpbmcgaXMgc2ltcGxlOiBhcyBsb25nIGFzIHRoZSBpbnB1dCBjYW5ub3QKLSAgICAgICAgICAgICAgICAgICBwb3NzaWJseSBjb250YWluIGEgc3Vycm9nYXRlIGNoYXIsIGRvIGFuIHVucm9sbGVkIGNvcHkKLSAgICAgICAgICAgICAgICAgICBvZiBzZXZlcmFsIDE2LWJpdCBjb2RlIHBvaW50cyB0byB0aGUgdGFyZ2V0IG9iamVjdC4KLSAgICAgICAgICAgICAgICAgICBUaGUgbm9uLXN1cnJvZ2F0ZSBjaGVjayBpcyBkb25lIG9uIHNldmVyYWwgaW5wdXQgYnl0ZXMKLSAgICAgICAgICAgICAgICAgICBhdCBhIHRpbWUgKGFzIG1hbnkgYXMgYSBDICdsb25nJyBjYW4gY29udGFpbikuICovCi0gICAgICAgICAgICAgICAgd2hpbGUgKF9xIDwgYWxpZ25lZF9lbmQpIHsKLSAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBkYXRhID0gKiAodW5zaWduZWQgbG9uZyAqKSBfcTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEgJiBGQVNUX0NIQVJfTUFTSykKKyAgICAgICAgICAgIGludCBraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgICAgICAgICB2b2lkICpkYXRhID0gUHlVbmljb2RlX0RBVEEodW5pY29kZSk7CisgICAgICAgICAgICB3aGlsZSAoX3EgPCBhbGlnbmVkX2VuZCkgeworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgYmxvY2sgPSAqICh1bnNpZ25lZCBsb25nICopIF9xOworICAgICAgICAgICAgICAgIHVuc2lnbmVkIHNob3J0ICpwYmxvY2sgPSAodW5zaWduZWQgc2hvcnQqKSZibG9jazsKKyAgICAgICAgICAgICAgICBQeV9VQ1M0IG1heGNoOworICAgICAgICAgICAgICAgIGlmIChuYXRpdmVfb3JkZXJpbmcpIHsKKyAgICAgICAgICAgICAgICAgICAgLyogQ2FuIHVzZSBidWZmZXIgZGlyZWN0bHkgKi8KKyAgICAgICAgICAgICAgICAgICAgaWYgKGJsb2NrICYgRkFTVF9DSEFSX01BU0spCiAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgX3BbMF0gPSAoKHVuc2lnbmVkIHNob3J0ICopIF9xKVswXTsKLSAgICAgICAgICAgICAgICAgICAgX3BbMV0gPSAoKHVuc2lnbmVkIHNob3J0ICopIF9xKVsxXTsKLSNpZiAoU0laRU9GX0xPTkcgPT0gOCkKLSAgICAgICAgICAgICAgICAgICAgX3BbMl0gPSAoKHVuc2lnbmVkIHNob3J0ICopIF9xKVsyXTsKLSAgICAgICAgICAgICAgICAgICAgX3BbM10gPSAoKHVuc2lnbmVkIHNob3J0ICopIF9xKVszXTsKLSNlbmRpZgotICAgICAgICAgICAgICAgICAgICBfcSArPSBTSVpFT0ZfTE9ORzsKLSAgICAgICAgICAgICAgICAgICAgX3AgKz0gU0laRU9GX0xPTkcgLyAyOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgICAgIC8qIEJ5dGVzd2FwcGVkIG9yZGVyaW5nIGlzIHNpbWlsYXIsIGJ1dCB3ZSBtdXN0IGRlY29tcG9zZQotICAgICAgICAgICAgICAgICAgIHRoZSBjb3B5IGJ5dGV3aXNlLCBhbmQgdGFrZSBjYXJlIG9mIHplcm8naW5nIG91dCB0aGUKLSAgICAgICAgICAgICAgICAgICB1cHBlciBieXRlcyBpZiB0aGUgdGFyZ2V0IG9iamVjdCBpcyBpbiAzMi1iaXQgdW5pdHMKLSAgICAgICAgICAgICAgICAgICAodGhhdCBpcywgaW4gVUNTLTQgYnVpbGRzKS4gKi8KLSAgICAgICAgICAgICAgICB3aGlsZSAoX3EgPCBhbGlnbmVkX2VuZCkgewotICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIGRhdGEgPSAqICh1bnNpZ25lZCBsb25nICopIF9xOwotICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YSAmIFNXQVBQRURfRkFTVF9DSEFSX01BU0spCisgICAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIC8qIE5lZWQgdG8gYnl0ZS1zd2FwICovCisgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKl9wID0gKHVuc2lnbmVkIGNoYXIqKXBibG9jazsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGJsb2NrICYgU1dBUFBFRF9GQVNUX0NIQVJfTUFTSykKICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICAgICAvKiBaZXJvIHVwcGVyIGJ5dGVzIGluIFVDUy00IGJ1aWxkcyAqLwotI2lmIChQeV9VTklDT0RFX1NJWkUgPiAyKQotICAgICAgICAgICAgICAgICAgICBfcFswXSA9IDA7Ci0gICAgICAgICAgICAgICAgICAgIF9wWzFdID0gMDsKKyAgICAgICAgICAgICAgICAgICAgX3BbMF0gPSBfcVsxXTsKKyAgICAgICAgICAgICAgICAgICAgX3BbMV0gPSBfcVswXTsKKyAgICAgICAgICAgICAgICAgICAgX3BbMl0gPSBfcVszXTsKKyAgICAgICAgICAgICAgICAgICAgX3BbM10gPSBfcVsyXTsKICNpZiAoU0laRU9GX0xPTkcgPT0gOCkKLSAgICAgICAgICAgICAgICAgICAgX3BbMl0gPSAwOwotICAgICAgICAgICAgICAgICAgICBfcFszXSA9IDA7CisgICAgICAgICAgICAgICAgICAgIF9wWzRdID0gX3FbNV07CisgICAgICAgICAgICAgICAgICAgIF9wWzVdID0gX3FbNF07CisgICAgICAgICAgICAgICAgICAgIF9wWzZdID0gX3FbN107CisgICAgICAgICAgICAgICAgICAgIF9wWzddID0gX3FbNl07CiAjZW5kaWYKLSNlbmRpZgotICAgICAgICAgICAgICAgICAgICAvKiBJc3N1ZSAjNDkxNjsgVUNTLTQgYnVpbGRzIG9uIGJpZyBlbmRpYW4gbWFjaGluZXMgbXVzdAotICAgICAgICAgICAgICAgICAgICAgICBmaWxsIHRoZSB0d28gbGFzdCBieXRlcyBvZiBlYWNoIDQtYnl0ZSB1bml0LiAqLwotI2lmICghZGVmaW5lZChCWVRFT1JERVJfSVNfTElUVExFX0VORElBTikgJiYgUHlfVU5JQ09ERV9TSVpFID4gMikKLSMgZGVmaW5lIE9GRiAyCi0jZWxzZQotIyBkZWZpbmUgT0ZGIDAKLSNlbmRpZgotICAgICAgICAgICAgICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikgX3ApW09GRiArIDFdID0gX3FbMF07Ci0gICAgICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhciAqKSBfcClbT0ZGICsgMF0gPSBfcVsxXTsKLSAgICAgICAgICAgICAgICAgICAgKCh1bnNpZ25lZCBjaGFyICopIF9wKVtPRkYgKyAxICsgUHlfVU5JQ09ERV9TSVpFXSA9IF9xWzJdOwotICAgICAgICAgICAgICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikgX3ApW09GRiArIDAgKyBQeV9VTklDT0RFX1NJWkVdID0gX3FbM107Ci0jaWYgKFNJWkVPRl9MT05HID09IDgpCi0gICAgICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhciAqKSBfcClbT0ZGICsgMSArIDIgKiBQeV9VTklDT0RFX1NJWkVdID0gX3FbNF07Ci0gICAgICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhciAqKSBfcClbT0ZGICsgMCArIDIgKiBQeV9VTklDT0RFX1NJWkVdID0gX3FbNV07Ci0gICAgICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhciAqKSBfcClbT0ZGICsgMSArIDMgKiBQeV9VTklDT0RFX1NJWkVdID0gX3FbNl07Ci0gICAgICAgICAgICAgICAgICAgICgodW5zaWduZWQgY2hhciAqKSBfcClbT0ZGICsgMCArIDMgKiBQeV9VTklDT0RFX1NJWkVdID0gX3FbN107Ci0jZW5kaWYKLSN1bmRlZiBPRkYKLSAgICAgICAgICAgICAgICAgICAgX3EgKz0gU0laRU9GX0xPTkc7Ci0gICAgICAgICAgICAgICAgICAgIF9wICs9IFNJWkVPRl9MT05HIC8gMjsKICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgbWF4Y2ggPSBQeV9NQVgocGJsb2NrWzBdLCBwYmxvY2tbMV0pOworI2lmIFNJWkVPRl9MT05HID09IDgKKyAgICAgICAgICAgICAgICBtYXhjaCA9IFB5X01BWChtYXhjaCwgUHlfTUFYKHBibG9ja1syXSwgcGJsb2NrWzNdKSk7CisjZW5kaWYKKyAgICAgICAgICAgICAgICBpZiAobWF4Y2ggPiBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUodW5pY29kZSkpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfd2lkZW4oJnVuaWNvZGUsIG1heGNoKSA8IDApCisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICAgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh1bmljb2RlKTsKKyAgICAgICAgICAgICAgICAgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgb3V0cG9zKyssIHBibG9ja1swXSk7CisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIG91dHBvcysrLCBwYmxvY2tbMV0pOworI2lmIFNJWkVPRl9MT05HID09IDgKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgb3V0cG9zKyssIHBibG9ja1syXSk7CisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIG91dHBvcysrLCBwYmxvY2tbM10pOworI2VuZGlmCisgICAgICAgICAgICAgICAgX3EgKz0gU0laRU9GX0xPTkc7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBwID0gX3A7CiAgICAgICAgICAgICBxID0gX3E7CiAgICAgICAgICAgICBpZiAocSA+PSBlKQogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMzU1Myw4ICs1NDg3LDkgQEAKIAogICAgICAgICBxICs9IDI7CiAKLSAgICAgICAgaWYgKGNoIDwgMHhEODAwIHx8IGNoID4gMHhERkZGKSB7Ci0gICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgIGlmICghUHlfVU5JQ09ERV9JU19TVVJST0dBVEUoY2gpKSB7CisgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ1bmljb2RlLCAmb3V0cG9zLCBjaCkgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAKQEAgLTM1NjUsMTYgKzU1MDAsMTMgQEAKICAgICAgICAgICAgIGVuZGlucG9zID0gKChjb25zdCBjaGFyICopZSkgKyAxIC0gc3RhcnRzOwogICAgICAgICAgICAgZ290byB1dGYxNkVycm9yOwogICAgICAgICB9Ci0gICAgICAgIGlmICgweEQ4MDAgPD0gY2ggJiYgY2ggPD0gMHhEQkZGKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIGNoMiA9IChxW2loaV0gPDwgOCkgfCBxW2lsb107CisgICAgICAgIGlmIChQeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFKGNoKSkgeworICAgICAgICAgICAgUHlfVUNTNCBjaDIgPSAocVtpaGldIDw8IDgpIHwgcVtpbG9dOwogICAgICAgICAgICAgcSArPSAyOwotICAgICAgICAgICAgaWYgKDB4REMwMCA8PSBjaDIgJiYgY2gyIDw9IDB4REZGRikgewotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICAgICAqcCsrID0gY2g7Ci0gICAgICAgICAgICAgICAgKnArKyA9IGNoMjsKLSNlbHNlCi0gICAgICAgICAgICAgICAgKnArKyA9ICgoKGNoICYgMHgzRkYpPDwxMCkgfCAoY2gyICYgMHgzRkYpKSArIDB4MTAwMDA7Ci0jZW5kaWYKKyAgICAgICAgICAgIGlmIChQeV9VTklDT0RFX0lTX0xPV19TVVJST0dBVEUoY2gyKSkgeworICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnVuaWNvZGUsICZvdXRwb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFX0pPSU5fU1VSUk9HQVRFUyhjaCwgY2gyKSkgPCAwKQorICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIHsKQEAgLTM1OTEsNyArNTUyMyw2IEBACiAgICAgICAgIC8qIEZhbGwgdGhyb3VnaCB0byByZXBvcnQgdGhlIGVycm9yICovCiAKICAgICAgIHV0ZjE2RXJyb3I6Ci0gICAgICAgIG91dHBvcyA9IHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKTsKICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgIGVycm9ycywKICAgICAgICAgICAgICAgICAmZXJyb3JIYW5kbGVyLApAQCAtMzYwMyw4ICs1NTM0LDcgQEAKICAgICAgICAgICAgICAgICAmZXhjLAogICAgICAgICAgICAgICAgIChjb25zdCBjaGFyICoqKSZxLAogICAgICAgICAgICAgICAgICZ1bmljb2RlLAotICAgICAgICAgICAgICAgICZvdXRwb3MsCi0gICAgICAgICAgICAgICAgJnApKQorICAgICAgICAgICAgICAgICZvdXRwb3MpKQogICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgIH0KICAgICAvKiByZW1haW5pbmcgYnl0ZSBhdCB0aGUgZW5kPyAoc2l6ZSBzaG91bGQgYmUgZXZlbikgKi8KQEAgLTM2MTMsNyArNTU0Myw2IEBACiAgICAgICAgICAgICBlcnJtc2cgPSAidHJ1bmNhdGVkIGRhdGEiOwogICAgICAgICAgICAgc3RhcnRpbnBvcyA9ICgoY29uc3QgY2hhciAqKXEpIC0gc3RhcnRzOwogICAgICAgICAgICAgZW5kaW5wb3MgPSAoKGNvbnN0IGNoYXIgKillKSArIDEgLSBzdGFydHM7Ci0gICAgICAgICAgICBvdXRwb3MgPSBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSk7CiAgICAgICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgICAgIGVycm9ycywKICAgICAgICAgICAgICAgICAgICAgJmVycm9ySGFuZGxlciwKQEAgLTM2MjUsOCArNTU1NCw3IEBACiAgICAgICAgICAgICAgICAgICAgICZleGMsCiAgICAgICAgICAgICAgICAgICAgIChjb25zdCBjaGFyICoqKSZxLAogICAgICAgICAgICAgICAgICAgICAmdW5pY29kZSwKLSAgICAgICAgICAgICAgICAgICAgJm91dHBvcywKLSAgICAgICAgICAgICAgICAgICAgJnApKQorICAgICAgICAgICAgICAgICAgICAmb3V0cG9zKSkKICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAvKiBUaGUgcmVtYWluaW5nIGlucHV0IGNoYXJzIGFyZSBpZ25vcmVkIGlmIHRoZSBjYWxsYmFjawogICAgICAgICAgICAgICAgY2hvb3NlcyB0byBza2lwIHRoZSBpbnB1dCAqLwpAQCAtMzY0MCwxMiArNTU2OCwxMiBAQAogICAgICAgICAqY29uc3VtZWQgPSAoY29uc3QgY2hhciAqKXEtc3RhcnRzOwogCiAgICAgLyogQWRqdXN0IGxlbmd0aCAqLwotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdW5pY29kZSwgcCAtIHVuaWNvZGUtPnN0cikgPCAwKQorICAgIGlmICh1bmljb2RlX3Jlc2l6ZSgmdW5pY29kZSwgb3V0cG9zKSA8IDApCiAgICAgICAgIGdvdG8gb25FcnJvcjsKIAogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXVuaWNvZGU7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHVuaWNvZGUpOwogCiAgIG9uRXJyb3I6CiAgICAgUHlfREVDUkVGKHVuaWNvZGUpOwpAQCAtMzY1OCwxOSArNTU4NiwxNyBAQAogI3VuZGVmIFNXQVBQRURfRkFTVF9DSEFSX01BU0sKIAogUHlPYmplY3QgKgotUHlVbmljb2RlX0VuY29kZVVURjE2KGNvbnN0IFB5X1VOSUNPREUgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKLSAgICAgICAgICAgICAgICAgICAgICBpbnQgYnl0ZW9yZGVyKQorX1B5VW5pY29kZV9FbmNvZGVVVEYxNihQeU9iamVjdCAqc3RyLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCisgICAgICAgICAgICAgICAgICAgICAgIGludCBieXRlb3JkZXIpCiB7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKyAgICBQeV9zc2l6ZV90IGxlbjsKICAgICBQeU9iamVjdCAqdjsKICAgICB1bnNpZ25lZCBjaGFyICpwOwogICAgIFB5X3NzaXplX3QgbnNpemUsIGJ5dGVzaXplOwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQogICAgIFB5X3NzaXplX3QgaSwgcGFpcnM7Ci0jZWxzZQotICAgIGNvbnN0IGludCBwYWlycyA9IDA7Ci0jZW5kaWYKICAgICAvKiBPZmZzZXRzIGZyb20gcCBmb3Igc3RvcmluZyBieXRlIHBhaXJzIGluIHRoZSByaWdodCBvcmRlci4gKi8KICNpZmRlZiBCWVRFT1JERVJfSVNfTElUVExFX0VORElBTgogICAgIGludCBpaGkgPSAxLCBpbG8gPSAwOwpAQCAtMzY4NSwxNiArNTYxMSwyNSBAQAogICAgICAgICBwICs9IDI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0gd2hpbGUoMCkKIAotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgIGZvciAoaSA9IHBhaXJzID0gMDsgaSA8IHNpemU7IGkrKykKLSAgICAgICAgaWYgKHNbaV0gPj0gMHgxMDAwMCkKLSAgICAgICAgICAgIHBhaXJzKys7Ci0jZW5kaWYKLSAgICAvKiAyICogKHNpemUgKyBwYWlycyArIChieXRlb3JkZXIgPT0gMCkpICovCi0gICAgaWYgKHNpemUgPiBQWV9TU0laRV9UX01BWCB8fAotICAgICAgICBzaXplID4gUFlfU1NJWkVfVF9NQVggLSBwYWlycyAtIChieXRlb3JkZXIgPT0gMCkpCisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2soc3RyKSkgeworICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzdHIpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc3RyKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc3RyKTsKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpOworCisgICAgcGFpcnMgPSAwOworICAgIGlmIChraW5kID09IFB5VW5pY29kZV80QllURV9LSU5EKQorICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspCisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkgPj0gMHgxMDAwMCkKKyAgICAgICAgICAgICAgICBwYWlycysrOworICAgIC8qIDIgKiAobGVuICsgcGFpcnMgKyAoYnl0ZW9yZGVyID09IDApKSAqLworICAgIGlmIChsZW4gPiBQWV9TU0laRV9UX01BWCAtIHBhaXJzIC0gKGJ5dGVvcmRlciA9PSAwKSkKICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgbnNpemUgPSBzaXplICsgcGFpcnMgKyAoYnl0ZW9yZGVyID09IDApOworICAgIG5zaXplID0gbGVuICsgcGFpcnMgKyAoYnl0ZW9yZGVyID09IDApOwogICAgIGJ5dGVzaXplID0gbnNpemUgKiAyOwogICAgIGlmIChieXRlc2l6ZSAvIDIgIT0gbnNpemUpCiAgICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOwpAQCAtMzcwNSw3ICs1NjQwLDcgQEAKICAgICBwID0gKHVuc2lnbmVkIGNoYXIgKilQeUJ5dGVzX0FTX1NUUklORyh2KTsKICAgICBpZiAoYnl0ZW9yZGVyID09IDApCiAgICAgICAgIFNUT1JFQ0hBUigweEZFRkYpOwotICAgIGlmIChzaXplID09IDApCisgICAgaWYgKGxlbiA9PSAwKQogICAgICAgICBnb3RvIGRvbmU7CiAKICAgICBpZiAoYnl0ZW9yZGVyID09IC0xKSB7CkBAIC0zNzE5LDE1ICs1NjU0LDEzIEBACiAgICAgICAgIGlsbyA9IDE7CiAgICAgfQogCi0gICAgd2hpbGUgKHNpemUtLSA+IDApIHsKLSAgICAgICAgUHlfVU5JQ09ERSBjaCA9ICpzKys7Ci0gICAgICAgIFB5X1VOSUNPREUgY2gyID0gMDsKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICBQeV9VQ1M0IGNoMiA9IDA7CiAgICAgICAgIGlmIChjaCA+PSAweDEwMDAwKSB7Ci0gICAgICAgICAgICBjaDIgPSAweERDMDAgfCAoKGNoLTB4MTAwMDApICYgMHgzRkYpOwotICAgICAgICAgICAgY2ggID0gMHhEODAwIHwgKChjaC0weDEwMDAwKSA+PiAxMCk7CisgICAgICAgICAgICBjaDIgPSBQeV9VTklDT0RFX0xPV19TVVJST0dBVEUoY2gpOworICAgICAgICAgICAgY2ggID0gUHlfVU5JQ09ERV9ISUdIX1NVUlJPR0FURShjaCk7CiAgICAgICAgIH0KLSNlbmRpZgogICAgICAgICBTVE9SRUNIQVIoY2gpOwogICAgICAgICBpZiAoY2gyKQogICAgICAgICAgICAgU1RPUkVDSEFSKGNoMik7CkBAIC0zNzM4LDYxICs1NjcxLDE0NyBAQAogI3VuZGVmIFNUT1JFQ0hBUgogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzVVRGMTZTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRW5jb2RlVVRGMTYoY29uc3QgUHlfVU5JQ09ERSAqcywKKyAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzLAorICAgICAgICAgICAgICAgICAgICAgIGludCBieXRlb3JkZXIpCiB7Ci0gICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkpIHsKLSAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKKyAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICp0bXAgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocywgc2l6ZSk7CisgICAgaWYgKHRtcCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVVVEYxNihQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsKKyAgICByZXN1bHQgPSBfUHlVbmljb2RlX0VuY29kZVVURjE2KHRtcCwgZXJyb3JzLCBieXRlb3JkZXIpOworICAgIFB5X0RFQ1JFRih0bXApOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Bc1VURjE2U3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIHJldHVybiBfUHlVbmljb2RlX0VuY29kZVVURjE2KHVuaWNvZGUsIE5VTEwsIDApOwogfQogCiAvKiAtLS0gVW5pY29kZSBFc2NhcGUgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIAorLyogSGVscGVyIGZ1bmN0aW9uIGZvciBQeVVuaWNvZGVfRGVjb2RlVW5pY29kZUVzY2FwZSwgZGV0ZXJtaW5lcworICAgaWYgYWxsIHRoZSBlc2NhcGVzIGluIHRoZSBzdHJpbmcgbWFrZSBpdCBzdGlsbCBhIHZhbGlkIEFTQ0lJIHN0cmluZy4KKyAgIFJldHVybnMgLTEgaWYgYW55IGVzY2FwZXMgd2VyZSBmb3VuZCB3aGljaCBjYXVzZSB0aGUgc3RyaW5nIHRvCisgICBwb3Agb3V0IG9mIEFTQ0lJIHJhbmdlLiAgT3RoZXJ3aXNlIHJldHVybnMgdGhlIGxlbmd0aCBvZiB0aGUKKyAgIHJlcXVpcmVkIGJ1ZmZlciB0byBob2xkIHRoZSBzdHJpbmcuCisgICAqLworc3RhdGljIFB5X3NzaXplX3QKK2xlbmd0aF9vZl9lc2NhcGVkX2FzY2lpX3N0cmluZyhjb25zdCBjaGFyICpzLCBQeV9zc2l6ZV90IHNpemUpCit7CisgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcCA9IChjb25zdCB1bnNpZ25lZCBjaGFyICopczsKKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICplbmQgPSBwICsgc2l6ZTsKKyAgICBQeV9zc2l6ZV90IGxlbmd0aCA9IDA7CisKKyAgICBpZiAoc2l6ZSA8IDApCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGZvciAoOyBwIDwgZW5kOyArK3ApIHsKKyAgICAgICAgaWYgKCpwID4gMTI3KSB7CisgICAgICAgICAgICAvKiBOb24tQVNDSUkgKi8KKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmICgqcCAhPSAnXFwnKSB7CisgICAgICAgICAgICAvKiBOb3JtYWwgY2hhcmFjdGVyICovCisgICAgICAgICAgICArK2xlbmd0aDsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIC8qIEJhY2tzbGFzaC1lc2NhcGUsIGNoZWNrIG5leHQgY2hhciAqLworICAgICAgICAgICAgKytwOworICAgICAgICAgICAgLyogRXNjYXBlIHNlcXVlbmNlIHJlYWNoZXMgdGlsbCBlbmQgb2Ygc3RyaW5nIG9yCisgICAgICAgICAgICAgICBub24tQVNDSUkgZm9sbG93LXVwLiAqLworICAgICAgICAgICAgaWYgKHAgPj0gZW5kIHx8ICpwID4gMTI3KQorICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIHN3aXRjaCAoKnApIHsKKyAgICAgICAgICAgIGNhc2UgJ1xuJzoKKyAgICAgICAgICAgICAgICAvKiBiYWNrc2xhc2ggKyBcbiByZXN1bHQgaW4gemVybyBjaGFyYWN0ZXJzICovCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBjYXNlICdcXCc6IGNhc2UgJ1wnJzogY2FzZSAnXCInOgorICAgICAgICAgICAgY2FzZSAnYic6IGNhc2UgJ2YnOiBjYXNlICd0JzoKKyAgICAgICAgICAgIGNhc2UgJ24nOiBjYXNlICdyJzogY2FzZSAndic6IGNhc2UgJ2EnOgorICAgICAgICAgICAgICAgICsrbGVuZ3RoOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSAnMCc6IGNhc2UgJzEnOiBjYXNlICcyJzogY2FzZSAnMyc6CisgICAgICAgICAgICBjYXNlICc0JzogY2FzZSAnNSc6IGNhc2UgJzYnOiBjYXNlICc3JzoKKyAgICAgICAgICAgIGNhc2UgJ3gnOiBjYXNlICd1JzogY2FzZSAnVSc6IGNhc2UgJ04nOgorICAgICAgICAgICAgICAgIC8qIHRoZXNlIGRvIG5vdCBndWFyYW50ZWUgQVNDSUkgY2hhcmFjdGVycyAqLworICAgICAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICAgICAgLyogY291bnQgdGhlIGJhY2tzbGFzaCArIHRoZSBvdGhlciBjaGFyYWN0ZXIgKi8KKyAgICAgICAgICAgICAgICBsZW5ndGggKz0gMjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gbGVuZ3RoOworfQorCiBzdGF0aWMgX1B5VW5pY29kZV9OYW1lX0NBUEkgKnVjbmhhc2hfQ0FQSSA9IE5VTEw7CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlVW5pY29kZUVzY2FwZShjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlVW5pY29kZUVzY2FwZShjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIGNvbnN0IGNoYXIgKnN0YXJ0cyA9IHM7CiAgICAgUHlfc3NpemVfdCBzdGFydGlucG9zOwogICAgIFB5X3NzaXplX3QgZW5kaW5wb3M7Ci0gICAgUHlfc3NpemVfdCBvdXRwb3M7Ci0gICAgaW50IGk7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp2OwotICAgIFB5X1VOSUNPREUgKnA7CisgICAgaW50IGo7CisgICAgUHlPYmplY3QgKnY7CiAgICAgY29uc3QgY2hhciAqZW5kOwogICAgIGNoYXIqIG1lc3NhZ2U7CiAgICAgUHlfVUNTNCBjaHIgPSAweGZmZmZmZmZmOyAvKiBpbiBjYXNlICdnZXRjb2RlJyBtZXNzZXMgdXAgKi8KICAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKICAgICBQeU9iamVjdCAqZXhjID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICBQeV9zc2l6ZV90IGk7CiAKLSAgICAvKiBFc2NhcGVkIHN0cmluZ3Mgd2lsbCBhbHdheXMgYmUgbG9uZ2VyIHRoYW4gdGhlIHJlc3VsdGluZwotICAgICAgIFVuaWNvZGUgc3RyaW5nLCBzbyB3ZSBzdGFydCB3aXRoIHNpemUgaGVyZSBhbmQgdGhlbiByZWR1Y2UgdGhlCi0gICAgICAgbGVuZ3RoIGFmdGVyIGNvbnZlcnNpb24gdG8gdGhlIHRydWUgdmFsdWUuCi0gICAgICAgKGJ1dCBpZiB0aGUgZXJyb3IgY2FsbGJhY2sgcmV0dXJucyBhIGxvbmcgcmVwbGFjZW1lbnQgc3RyaW5nCi0gICAgICAgd2UnbGwgaGF2ZSB0byBhbGxvY2F0ZSBtb3JlIHNwYWNlKSAqLwotICAgIHYgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKLSAgICBpZiAodiA9PSBOVUxMKQotICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgbGVuID0gbGVuZ3RoX29mX2VzY2FwZWRfYXNjaWlfc3RyaW5nKHMsIHNpemUpOworCisgICAgLyogQWZ0ZXIgbGVuZ3RoX29mX2VzY2FwZWRfYXNjaWlfc3RyaW5nKCkgdGhlcmUgYXJlIHR3byBhbHRlcm5hdGl2ZXMsCisgICAgICAgZWl0aGVyIHRoZSBzdHJpbmcgaXMgcHVyZSBBU0NJSSB3aXRoIG5hbWVkIGVzY2FwZXMgbGlrZSBcbiwgZXRjLgorICAgICAgIGFuZCB3ZSBkZXRlcm1pbmVkIGl0J3MgZXhhY3Qgc2l6ZSAoY29tbW9uIGNhc2UpCisgICAgICAgb3IgaXQgY29udGFpbnMgXHgsIFx1LCAuLi4gZXNjYXBlIHNlcXVlbmNlcy4gIHRoZW4gd2UgY3JlYXRlIGEKKyAgICAgICBsZWdhY3kgd2NoYXIgc3RyaW5nIGFuZCByZXNpemUgaXQgYXQgdGhlIGVuZCBvZiB0aGlzIGZ1bmN0aW9uLiAqLworICAgIGlmIChsZW4gPj0gMCkgeworICAgICAgICB2ID0gUHlVbmljb2RlX05ldyhsZW4sIDEyNyk7CisgICAgICAgIGlmICghdikKKyAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKHYpID09IFB5VW5pY29kZV8xQllURV9LSU5EKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIC8qIEVzY2FwZWQgc3RyaW5ncyB3aWxsIGFsd2F5cyBiZSBsb25nZXIgdGhhbiB0aGUgcmVzdWx0aW5nCisgICAgICAgICAgIFVuaWNvZGUgc3RyaW5nLCBzbyB3ZSBzdGFydCB3aXRoIHNpemUgaGVyZSBhbmQgdGhlbiByZWR1Y2UgdGhlCisgICAgICAgICAgIGxlbmd0aCBhZnRlciBjb252ZXJzaW9uIHRvIHRoZSB0cnVlIHZhbHVlLgorICAgICAgICAgICAoYnV0IGlmIHRoZSBlcnJvciBjYWxsYmFjayByZXR1cm5zIGEgbG9uZyByZXBsYWNlbWVudCBzdHJpbmcKKyAgICAgICAgICAgd2UnbGwgaGF2ZSB0byBhbGxvY2F0ZSBtb3JlIHNwYWNlKSAqLworICAgICAgICB2ID0gUHlVbmljb2RlX05ldyhzaXplLCAxMjcpOworICAgICAgICBpZiAoIXYpCisgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgIGxlbiA9IHNpemU7CisgICAgfQorCiAgICAgaWYgKHNpemUgPT0gMCkKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXY7Ci0KLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7CisgICAgICAgIHJldHVybiB2OworICAgIGkgPSAwOwogICAgIGVuZCA9IHMgKyBzaXplOwogCiAgICAgd2hpbGUgKHMgPCBlbmQpIHsKICAgICAgICAgdW5zaWduZWQgY2hhciBjOwotICAgICAgICBQeV9VTklDT0RFIHg7CisgICAgICAgIFB5X1VDUzQgeDsKICAgICAgICAgaW50IGRpZ2l0czsKIAorICAgICAgICAvKiBUaGUgb25seSBjYXNlIGluIHdoaWNoIGkgPT0gYXNjaWlfbGVuZ3RoIGlzIGEgYmFja3NsYXNoCisgICAgICAgICAgIGZvbGxvd2VkIGJ5IGEgbmV3bGluZS4gKi8KKyAgICAgICAgYXNzZXJ0KGkgPD0gbGVuKTsKKwogICAgICAgICAvKiBOb24tZXNjYXBlIGNoYXJhY3RlcnMgYXJlIGludGVycHJldGVkIGFzIFVuaWNvZGUgb3JkaW5hbHMgKi8KICAgICAgICAgaWYgKCpzICE9ICdcXCcpIHsKLSAgICAgICAgICAgICpwKysgPSAodW5zaWduZWQgY2hhcikgKnMrKzsKKyAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnYsICZpLCAodW5zaWduZWQgY2hhcikgKnMrKykgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAKQEAgLTM4MDIsMjAgKzU4MjEsMzQgQEAKICAgICAgICAgYyA9ICpzKys7CiAgICAgICAgIGlmIChzID4gZW5kKQogICAgICAgICAgICAgYyA9ICdcMCc7IC8qIEludmFsaWQgYWZ0ZXIgXCAqLworCisgICAgICAgIC8qIFRoZSBvbmx5IGNhc2UgaW4gd2hpY2ggaSA9PSBhc2NpaV9sZW5ndGggaXMgYSBiYWNrc2xhc2gKKyAgICAgICAgICAgZm9sbG93ZWQgYnkgYSBuZXdsaW5lLiAqLworICAgICAgICBhc3NlcnQoaSA8IGxlbiB8fCAoaSA9PSBsZW4gJiYgYyA9PSAnXG4nKSk7CisKICAgICAgICAgc3dpdGNoIChjKSB7CiAKICAgICAgICAgICAgIC8qIFx4IGVzY2FwZXMgKi8KKyNkZWZpbmUgV1JJVEVDSEFSKGNoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdiwgJmksIGNoKSA8IDApICAgIFwKKyAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOyAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgfXdoaWxlKDApCisKICAgICAgICAgY2FzZSAnXG4nOiBicmVhazsKLSAgICAgICAgY2FzZSAnXFwnOiAqcCsrID0gJ1xcJzsgYnJlYWs7Ci0gICAgICAgIGNhc2UgJ1wnJzogKnArKyA9ICdcJyc7IGJyZWFrOwotICAgICAgICBjYXNlICdcIic6ICpwKysgPSAnXCInOyBicmVhazsKLSAgICAgICAgY2FzZSAnYic6ICpwKysgPSAnXGInOyBicmVhazsKLSAgICAgICAgY2FzZSAnZic6ICpwKysgPSAnXDAxNCc7IGJyZWFrOyAvKiBGRiAqLwotICAgICAgICBjYXNlICd0JzogKnArKyA9ICdcdCc7IGJyZWFrOwotICAgICAgICBjYXNlICduJzogKnArKyA9ICdcbic7IGJyZWFrOwotICAgICAgICBjYXNlICdyJzogKnArKyA9ICdccic7IGJyZWFrOwotICAgICAgICBjYXNlICd2JzogKnArKyA9ICdcMDEzJzsgYnJlYWs7IC8qIFZUICovCi0gICAgICAgIGNhc2UgJ2EnOiAqcCsrID0gJ1wwMDcnOyBicmVhazsgLyogQkVMLCBub3QgY2xhc3NpYyBDICovCisgICAgICAgIGNhc2UgJ1xcJzogV1JJVEVDSEFSKCdcXCcpOyBicmVhazsKKyAgICAgICAgY2FzZSAnXCcnOiBXUklURUNIQVIoJ1wnJyk7IGJyZWFrOworICAgICAgICBjYXNlICdcIic6IFdSSVRFQ0hBUignXCInKTsgYnJlYWs7CisgICAgICAgIGNhc2UgJ2InOiBXUklURUNIQVIoJ1xiJyk7IGJyZWFrOworICAgICAgICAvKiBGRiAqLworICAgICAgICBjYXNlICdmJzogV1JJVEVDSEFSKCdcMDE0Jyk7IGJyZWFrOworICAgICAgICBjYXNlICd0JzogV1JJVEVDSEFSKCdcdCcpOyBicmVhazsKKyAgICAgICAgY2FzZSAnbic6IFdSSVRFQ0hBUignXG4nKTsgYnJlYWs7CisgICAgICAgIGNhc2UgJ3InOiBXUklURUNIQVIoJ1xyJyk7IGJyZWFrOworICAgICAgICAvKiBWVCAqLworICAgICAgICBjYXNlICd2JzogV1JJVEVDSEFSKCdcMDEzJyk7IGJyZWFrOworICAgICAgICAvKiBCRUwsIG5vdCBjbGFzc2ljIEMgKi8KKyAgICAgICAgY2FzZSAnYSc6IFdSSVRFQ0hBUignXDAwNycpOyBicmVhazsKIAogICAgICAgICAgICAgLyogXE9PTyAob2N0YWwpIGVzY2FwZXMgKi8KICAgICAgICAgY2FzZSAnMCc6IGNhc2UgJzEnOiBjYXNlICcyJzogY2FzZSAnMyc6CkBAIC0zODI2LDcgKzU4NTksNyBAQAogICAgICAgICAgICAgICAgIGlmIChzIDwgZW5kICYmICcwJyA8PSAqcyAmJiAqcyA8PSAnNycpCiAgICAgICAgICAgICAgICAgICAgIHggPSAoeDw8MykgKyAqcysrIC0gJzAnOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgKnArKyA9IHg7CisgICAgICAgICAgICBXUklURUNIQVIoeCk7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAgICAgLyogaGV4IGVzY2FwZXMgKi8KQEAgLTM4NDgsMjcgKzU4ODEsMjcgQEAKICAgICAgICAgICAgIG1lc3NhZ2UgPSAidHJ1bmNhdGVkIFxcVVhYWFhYWFhYIGVzY2FwZSI7CiAgICAgICAgIGhleGVzY2FwZToKICAgICAgICAgICAgIGNociA9IDA7Ci0gICAgICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHYpOwogICAgICAgICAgICAgaWYgKHMrZGlnaXRzPmVuZCkgewogICAgICAgICAgICAgICAgIGVuZGlucG9zID0gc2l6ZTsKICAgICAgICAgICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAidW5pY29kZWVzY2FwZSIsICJlbmQgb2Ygc3RyaW5nIGluIGVzY2FwZSBzZXF1ZW5jZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnRzLCAmZW5kLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmcywKLSAgICAgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICAgICAmdiwgJmkpKQogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgZ290byBuZXh0Qnl0ZTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBkaWdpdHM7ICsraSkgewotICAgICAgICAgICAgICAgIGMgPSAodW5zaWduZWQgY2hhcikgc1tpXTsKKyAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCBkaWdpdHM7ICsraikgeworICAgICAgICAgICAgICAgIGMgPSAodW5zaWduZWQgY2hhcikgc1tqXTsKICAgICAgICAgICAgICAgICBpZiAoIVB5X0lTWERJR0lUKGMpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGVuZGlucG9zID0gKHMraSsxKS1zdGFydHM7CisgICAgICAgICAgICAgICAgICAgIGVuZGlucG9zID0gKHMraisxKS1zdGFydHM7CiAgICAgICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVlc2NhcGUiLCBtZXNzYWdlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdGFydHMsICZlbmQsICZzdGFydGlucG9zLCAmZW5kaW5wb3MsICZleGMsICZzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnYsICZpKSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodik7CiAgICAgICAgICAgICAgICAgICAgIGdvdG8gbmV4dEJ5dGU7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGNociA9IChjaHI8PDQpICYgfjB4RjsKQEAgLTM4NzksMzQgKzU5MTIsMjIgQEAKICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgIGNociArPSAxMCArIGMgLSAnQSc7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBzICs9IGk7CisgICAgICAgICAgICBzICs9IGo7CiAgICAgICAgICAgICBpZiAoY2hyID09IDB4ZmZmZmZmZmYgJiYgUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgICAgICAgICAvKiBfZGVjb2RpbmdfZXJyb3Igd2lsbCBoYXZlIGFscmVhZHkgd3JpdHRlbiBpbnRvIHRoZQogICAgICAgICAgICAgICAgICAgIHRhcmdldCBidWZmZXIuICovCiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIHN0b3JlOgogICAgICAgICAgICAgLyogd2hlbiB3ZSBnZXQgaGVyZSwgY2hyIGlzIGEgMzItYml0IHVuaWNvZGUgY2hhcmFjdGVyICovCi0gICAgICAgICAgICBpZiAoY2hyIDw9IDB4ZmZmZikKLSAgICAgICAgICAgICAgICAvKiBVQ1MtMiBjaGFyYWN0ZXIgKi8KLSAgICAgICAgICAgICAgICAqcCsrID0gKFB5X1VOSUNPREUpIGNocjsKLSAgICAgICAgICAgIGVsc2UgaWYgKGNociA8PSAweDEwZmZmZikgewotICAgICAgICAgICAgICAgIC8qIFVDUy00IGNoYXJhY3Rlci4gRWl0aGVyIHN0b3JlIGRpcmVjdGx5LCBvciBhcwotICAgICAgICAgICAgICAgICAgIHN1cnJvZ2F0ZSBwYWlyLiAqLwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgICAgICpwKysgPSBjaHI7Ci0jZWxzZQotICAgICAgICAgICAgICAgIGNociAtPSAweDEwMDAwTDsKLSAgICAgICAgICAgICAgICAqcCsrID0gMHhEODAwICsgKFB5X1VOSUNPREUpIChjaHIgPj4gMTApOwotICAgICAgICAgICAgICAgICpwKysgPSAweERDMDAgKyAoUHlfVU5JQ09ERSkgKGNociAmIDB4MDNGRik7Ci0jZW5kaWYKKyAgICAgICAgICAgIGlmIChjaHIgPD0gTUFYX1VOSUNPREUpIHsKKyAgICAgICAgICAgICAgICBXUklURUNIQVIoY2hyKTsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgZW5kaW5wb3MgPSBzLXN0YXJ0czsKLSAgICAgICAgICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHYpOwogICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycywgJmVycm9ySGFuZGxlciwKICAgICAgICAgICAgICAgICAgICAgICAgICJ1bmljb2RlZXNjYXBlIiwgImlsbGVnYWwgVW5pY29kZSBjaGFyYWN0ZXIiLAogICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmVuZCwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgJnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcywgJnApKQorICAgICAgICAgICAgICAgICAgICAgICAgJnYsICZpKSkKICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgYnJlYWs7CkBAIC0zOTE2LDcgKzU5MzcsOCBAQAogICAgICAgICAgICAgbWVzc2FnZSA9ICJtYWxmb3JtZWQgXFxOIGNoYXJhY3RlciBlc2NhcGUiOwogICAgICAgICAgICAgaWYgKHVjbmhhc2hfQ0FQSSA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgLyogbG9hZCB0aGUgdW5pY29kZSBkYXRhIG1vZHVsZSAqLwotICAgICAgICAgICAgICAgIHVjbmhhc2hfQ0FQSSA9IChfUHlVbmljb2RlX05hbWVfQ0FQSSAqKVB5Q2Fwc3VsZV9JbXBvcnQoUHlVbmljb2RlRGF0YV9DQVBTVUxFX05BTUUsIDEpOworICAgICAgICAgICAgICAgIHVjbmhhc2hfQ0FQSSA9IChfUHlVbmljb2RlX05hbWVfQ0FQSSAqKVB5Q2Fwc3VsZV9JbXBvcnQoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVEYXRhX0NBUFNVTEVfTkFNRSwgMSk7CiAgICAgICAgICAgICAgICAgaWYgKHVjbmhhc2hfQ0FQSSA9PSBOVUxMKQogICAgICAgICAgICAgICAgICAgICBnb3RvIHVjbmhhc2hFcnJvcjsKICAgICAgICAgICAgIH0KQEAgLTM5MjksMTcgKzU5NTEsMTcgQEAKICAgICAgICAgICAgICAgICAgICAgLyogZm91bmQgYSBuYW1lLiAgbG9vayBpdCB1cCBpbiB0aGUgdW5pY29kZSBkYXRhYmFzZSAqLwogICAgICAgICAgICAgICAgICAgICBtZXNzYWdlID0gInVua25vd24gVW5pY29kZSBjaGFyYWN0ZXIgbmFtZSI7CiAgICAgICAgICAgICAgICAgICAgIHMrKzsKLSAgICAgICAgICAgICAgICAgICAgaWYgKHVjbmhhc2hfQ0FQSS0+Z2V0Y29kZShOVUxMLCBzdGFydCwgKGludCkocy1zdGFydC0xKSwgJmNocikpCisgICAgICAgICAgICAgICAgICAgIGlmICh1Y25oYXNoX0NBUEktPmdldGNvZGUoTlVMTCwgc3RhcnQsIChpbnQpKHMtc3RhcnQtMSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNociwgMCkpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIHN0b3JlOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVuZGlucG9zID0gcy1zdGFydHM7Ci0gICAgICAgICAgICBvdXRwb3MgPSBwLVB5VW5pY29kZV9BU19VTklDT0RFKHYpOwogICAgICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICJ1bmljb2RlZXNjYXBlIiwgbWVzc2FnZSwKICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmVuZCwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgJnMsCi0gICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICZ2LCAmaSkpCiAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgYnJlYWs7CiAKQEAgLTM5NDgsMjggKzU5NzAsMjkgQEAKICAgICAgICAgICAgICAgICBtZXNzYWdlID0gIlxcIGF0IGVuZCBvZiBzdHJpbmciOwogICAgICAgICAgICAgICAgIHMtLTsKICAgICAgICAgICAgICAgICBlbmRpbnBvcyA9IHMtc3RhcnRzOwotICAgICAgICAgICAgICAgIG91dHBvcyA9IHAtUHlVbmljb2RlX0FTX1VOSUNPREUodik7CiAgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVlc2NhcGUiLCBtZXNzYWdlLAogICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmVuZCwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgJnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcywgJnApKQorICAgICAgICAgICAgICAgICAgICAgICAgJnYsICZpKSkKICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAgICAgKnArKyA9ICh1bnNpZ25lZCBjaGFyKXNbLTFdOworICAgICAgICAgICAgICAgIFdSSVRFQ0hBUignXFwnKTsKKyAgICAgICAgICAgICAgICBXUklURUNIQVIoc1stMV0pOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgIG5leHRCeXRlOgogICAgICAgICA7CiAgICAgfQotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdiwgcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA8IDApCisjdW5kZWYgV1JJVEVDSEFSCisKKyAgICBpZiAodW5pY29kZV9yZXNpemUoJnYsIGkpIDwgMCkKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHYpOwogCiAgIHVjbmhhc2hFcnJvcjoKICAgICBQeUVycl9TZXRTdHJpbmcoCkBAIC0zOTk1LDM5ICs2MDE4LDE2IEBACiAKICovCiAKLVB5X0xPQ0FMX0lOTElORShjb25zdCBQeV9VTklDT0RFICopIGZpbmRjaGFyKGNvbnN0IFB5X1VOSUNPREUgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFIGNoKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0FzVW5pY29kZUVzY2FwZVN0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKIHsKLSAgICAvKiBsaWtlIHdjc2NociwgYnV0IGRvZXNuJ3Qgc3RvcCBhdCBOVUxMIGNoYXJhY3RlcnMgKi8KLQotICAgIHdoaWxlIChzaXplLS0gPiAwKSB7Ci0gICAgICAgIGlmICgqcyA9PSBjaCkKLSAgICAgICAgICAgIHJldHVybiBzOwotICAgICAgICBzKys7Ci0gICAgfQotCi0gICAgcmV0dXJuIE5VTEw7Ci19Ci0KLXN0YXRpYyBjb25zdCBjaGFyICpoZXhkaWdpdHMgPSAiMDEyMzQ1Njc4OWFiY2RlZiI7Ci0KLVB5T2JqZWN0ICpQeVVuaWNvZGVfRW5jb2RlVW5pY29kZUVzY2FwZShjb25zdCBQeV9VTklDT0RFICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSkKLXsKKyAgICBQeV9zc2l6ZV90IGksIGxlbjsKICAgICBQeU9iamVjdCAqcmVwcjsKICAgICBjaGFyICpwOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBleHBhbmRzaXplID0gMDsKIAotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgIGNvbnN0IFB5X3NzaXplX3QgZXhwYW5kc2l6ZSA9IDEwOwotI2Vsc2UKLSAgICBjb25zdCBQeV9zc2l6ZV90IGV4cGFuZHNpemUgPSA2OwotI2VuZGlmCi0KLSAgICAvKiBYWFgobm5vcndpdHopOiByYXRoZXIgdGhhbiBvdmVyLWFsbG9jYXRpbmcsIGl0IHdvdWxkIGJlCi0gICAgICAgYmV0dGVyIHRvIGNob29zZSBhIGRpZmZlcmVudCBzY2hlbWUuICBQZXJoYXBzIHNjYW4gdGhlCi0gICAgICAgZmlyc3QgTi1jaGFycyBvZiB0aGUgc3RyaW5nIGFuZCBhbGxvY2F0ZSBiYXNlZCBvbiB0aGF0IHNpemUuCi0gICAgKi8KICAgICAvKiBJbml0aWFsIGFsbG9jYXRpb24gaXMgYmFzZWQgb24gdGhlIGxvbmdlc3QtcG9zc2libGUgdW5pY2hyCiAgICAgICAgZXNjYXBlLgogCkBAIC00MDQyLDIzICs2MDQyLDM4IEBACiAgICAgICAgZXNjYXBlLgogICAgICovCiAKLSAgICBpZiAoc2l6ZSA9PSAwKQorICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpOworICAgIHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6IGV4cGFuZHNpemUgPSA0OyBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOiBleHBhbmRzaXplID0gNjsgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDogZXhwYW5kc2l6ZSA9IDEwOyBicmVhazsKKyAgICB9CisKKyAgICBpZiAobGVuID09IDApCiAgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOwogCi0gICAgaWYgKHNpemUgPiAoUFlfU1NJWkVfVF9NQVggLSAyIC0gMSkgLyBleHBhbmRzaXplKQorICAgIGlmIChsZW4gPiAoUFlfU1NJWkVfVF9NQVggLSAyIC0gMSkgLyBleHBhbmRzaXplKQogICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKIAogICAgIHJlcHIgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgZXhwYW5kc2l6ZSpzaXplCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBleHBhbmRzaXplKmxlbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgMSk7CiAgICAgaWYgKHJlcHIgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBwID0gUHlCeXRlc19BU19TVFJJTkcocmVwcik7CiAKLSAgICB3aGlsZSAoc2l6ZS0tID4gMCkgewotICAgICAgICBQeV9VTklDT0RFIGNoID0gKnMrKzsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOwogCiAgICAgICAgIC8qIEVzY2FwZSBiYWNrc2xhc2hlcyAqLwogICAgICAgICBpZiAoY2ggPT0gJ1xcJykgewpAQCAtNDA2Nyw1NyArNjA4MiwzMCBAQAogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KIAotI2lmZGVmIFB5X1VOSUNPREVfV0lERQogICAgICAgICAvKiBNYXAgMjEtYml0IGNoYXJhY3RlcnMgdG8gJ1xVMDB4eHh4eHgnICovCiAgICAgICAgIGVsc2UgaWYgKGNoID49IDB4MTAwMDApIHsKKyAgICAgICAgICAgIGFzc2VydChjaCA8PSBNQVhfVU5JQ09ERSk7CiAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKICAgICAgICAgICAgICpwKysgPSAnVSc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAyOCkgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDI0KSAmIDB4MDAwMDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gMjApICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxNikgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDEyKSAmIDB4MDAwMDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gOCkgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDQpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW2NoICYgMHgwMDAwMDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAyOCkgJiAweDAwMDAwMDBGXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDI0KSAmIDB4MDAwMDAwMEZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gMjApICYgMHgwMDAwMDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAxNikgJiAweDAwMDAwMDBGXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDEyKSAmIDB4MDAwMDAwMEZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gOCkgJiAweDAwMDAwMDBGXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDQpICYgMHgwMDAwMDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzW2NoICYgMHgwMDAwMDAwRl07CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQotI2Vsc2UKLSAgICAgICAgLyogTWFwIFVURi0xNiBzdXJyb2dhdGUgcGFpcnMgdG8gJ1xVMDB4eHh4eHgnICovCi0gICAgICAgIGVsc2UgaWYgKGNoID49IDB4RDgwMCAmJiBjaCA8IDB4REMwMCkgewotICAgICAgICAgICAgUHlfVU5JQ09ERSBjaDI7Ci0gICAgICAgICAgICBQeV9VQ1M0IHVjczsKLQotICAgICAgICAgICAgY2gyID0gKnMrKzsKLSAgICAgICAgICAgIHNpemUtLTsKLSAgICAgICAgICAgIGlmIChjaDIgPj0gMHhEQzAwICYmIGNoMiA8PSAweERGRkYpIHsKLSAgICAgICAgICAgICAgICB1Y3MgPSAoKChjaCAmIDB4MDNGRikgPDwgMTApIHwgKGNoMiAmIDB4MDNGRikpICsgMHgwMDAxMDAwMDsKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICAgICAqcCsrID0gJ1UnOwotICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAyOCkgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMjQpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDIwKSAmIDB4MDAwMDAwMEZdOwotICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAxNikgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMTIpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDgpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDQpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1t1Y3MgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIEZhbGwgdGhyb3VnaDogaXNvbGF0ZWQgc3Vycm9nYXRlcyBhcmUgY29waWVkIGFzLWlzICovCi0gICAgICAgICAgICBzLS07Ci0gICAgICAgICAgICBzaXplKys7Ci0gICAgICAgIH0KLSNlbmRpZgogCiAgICAgICAgIC8qIE1hcCAxNi1iaXQgY2hhcmFjdGVycyB0byAnXHV4eHh4JyAqLwogICAgICAgICBpZiAoY2ggPj0gMjU2KSB7CiAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKICAgICAgICAgICAgICpwKysgPSAndSc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gOCkgJiAweDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gNCkgJiAweDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDB4MDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweDAwMEZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gOCkgJiAweDAwMEZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gNCkgJiAweDAwMEZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1tjaCAmIDB4MDAwRl07CiAgICAgICAgIH0KIAogICAgICAgICAvKiBNYXAgc3BlY2lhbCB3aGl0ZXNwYWNlIHRvICdcdCcsIFxuJywgJ1xyJyAqLwpAQCAtNDEzOCw4ICs2MTI2LDggQEAKICAgICAgICAgZWxzZSBpZiAoY2ggPCAnICcgfHwgY2ggPj0gMHg3RikgewogICAgICAgICAgICAgKnArKyA9ICdcXCc7CiAgICAgICAgICAgICAqcCsrID0gJ3gnOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gNCkgJiAweDAwMEZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDB4MDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiA0KSAmIDB4MDAwRl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzW2NoICYgMHgwMDBGXTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIENvcHkgZXZlcnl0aGluZyBlbHNlIGFzLWlzICovCkBAIC00MTUzLDMwICs2MTQxLDMxIEBACiAgICAgcmV0dXJuIHJlcHI7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZVVuaWNvZGVFc2NhcGUoY29uc3QgUHlfVU5JQ09ERSAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSkKIHsKLSAgICBQeU9iamVjdCAqczsKLSAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewotICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgUHlPYmplY3QgKnRtcCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShzLCBzaXplKTsKKyAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBzID0gUHlVbmljb2RlX0VuY29kZVVuaWNvZGVFc2NhcGUoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSk7Ci0gICAgcmV0dXJuIHM7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX0FzVW5pY29kZUVzY2FwZVN0cmluZyh0bXApOworICAgIFB5X0RFQ1JFRih0bXApOworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIC8qIC0tLSBSYXcgVW5pY29kZSBFc2NhcGUgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCi1QeU9iamVjdCAqUHlVbmljb2RlX0RlY29kZVJhd1VuaWNvZGVFc2NhcGUoY29uc3QgY2hhciAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0RlY29kZVJhd1VuaWNvZGVFc2NhcGUoY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBjb25zdCBjaGFyICpzdGFydHMgPSBzOwogICAgIFB5X3NzaXplX3Qgc3RhcnRpbnBvczsKICAgICBQeV9zc2l6ZV90IGVuZGlucG9zOwogICAgIFB5X3NzaXplX3Qgb3V0cG9zOwotICAgIFB5VW5pY29kZU9iamVjdCAqdjsKLSAgICBQeV9VTklDT0RFICpwOworICAgIFB5T2JqZWN0ICp2OwogICAgIGNvbnN0IGNoYXIgKmVuZDsKICAgICBjb25zdCBjaGFyICpiczsKICAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKQEAgLTQxODYsMTIgKzYxNzUsMTIgQEAKICAgICAgICBVbmljb2RlIHN0cmluZywgc28gd2Ugc3RhcnQgd2l0aCBzaXplIGhlcmUgYW5kIHRoZW4gcmVkdWNlIHRoZQogICAgICAgIGxlbmd0aCBhZnRlciBjb252ZXJzaW9uIHRvIHRoZSB0cnVlIHZhbHVlLiAoQnV0IGRlY29kaW5nIGVycm9yCiAgICAgICAgaGFuZGxlciBtaWdodCBoYXZlIHRvIHJlc2l6ZSB0aGUgc3RyaW5nKSAqLwotICAgIHYgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKKyAgICB2ID0gUHlVbmljb2RlX05ldyhzaXplLCAxMjcpOwogICAgIGlmICh2ID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICBpZiAoc2l6ZSA9PSAwKQotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdjsKLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7CisgICAgICAgIHJldHVybiB2OworICAgIG91dHBvcyA9IDA7CiAgICAgZW5kID0gcyArIHNpemU7CiAgICAgd2hpbGUgKHMgPCBlbmQpIHsKICAgICAgICAgdW5zaWduZWQgY2hhciBjOwpAQCAtNDIwMSw3ICs2MTkwLDggQEAKIAogICAgICAgICAvKiBOb24tZXNjYXBlIGNoYXJhY3RlcnMgYXJlIGludGVycHJldGVkIGFzIFVuaWNvZGUgb3JkaW5hbHMgKi8KICAgICAgICAgaWYgKCpzICE9ICdcXCcpIHsKLSAgICAgICAgICAgICpwKysgPSAodW5zaWduZWQgY2hhcikqcysrOworICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdiwgJm91dHBvcywgKHVuc2lnbmVkIGNoYXIpKnMrKykgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAgICAgICAgIHN0YXJ0aW5wb3MgPSBzLXN0YXJ0czsKQEAgLTQyMTIsMTkgKzYyMDIsMTkgQEAKICAgICAgICAgZm9yICg7cyA8IGVuZDspIHsKICAgICAgICAgICAgIGlmICgqcyAhPSAnXFwnKQogICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgKnArKyA9ICh1bnNpZ25lZCBjaGFyKSpzKys7CisgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ2LCAmb3V0cG9zLCAodW5zaWduZWQgY2hhcikqcysrKSA8IDApCisgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICB9CiAgICAgICAgIGlmICgoKHMgLSBicykgJiAxKSA9PSAwIHx8CiAgICAgICAgICAgICBzID49IGVuZCB8fAogICAgICAgICAgICAgKCpzICE9ICd1JyAmJiAqcyAhPSAnVScpKSB7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQotICAgICAgICBwLS07CisgICAgICAgIG91dHBvcy0tOwogICAgICAgICBjb3VudCA9ICpzPT0ndScgPyA0IDogODsKICAgICAgICAgcysrOwogCiAgICAgICAgIC8qIFx1WFhYWCB3aXRoIDQgaGV4IGRpZ2l0cywgXFV4eHh4eHh4eCB3aXRoIDggKi8KLSAgICAgICAgb3V0cG9zID0gcC1QeVVuaWNvZGVfQVNfVU5JQ09ERSh2KTsKICAgICAgICAgZm9yICh4ID0gMCwgaSA9IDA7IGkgPCBjb3VudDsgKytpLCArK3MpIHsKICAgICAgICAgICAgIGMgPSAodW5zaWduZWQgY2hhcikqczsKICAgICAgICAgICAgIGlmICghUHlfSVNYRElHSVQoYykpIHsKQEAgLTQyMzMsNyArNjIyMyw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICAgICAicmF3dW5pY29kZWVzY2FwZSIsICJ0cnVuY2F0ZWQgXFx1WFhYWCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnRzLCAmZW5kLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmcywKLSAgICAgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcykpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICBnb3RvIG5leHRCeXRlOwogICAgICAgICAgICAgfQpAQCAtNDI0NSwzNyArNjIzNSwyNiBAQAogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIHggKz0gMTAgKyBjIC0gJ0EnOwogICAgICAgICB9Ci0gICAgICAgIGlmICh4IDw9IDB4ZmZmZikKLSAgICAgICAgICAgIC8qIFVDUy0yIGNoYXJhY3RlciAqLwotICAgICAgICAgICAgKnArKyA9IChQeV9VTklDT0RFKSB4OwotICAgICAgICBlbHNlIGlmICh4IDw9IDB4MTBmZmZmKSB7Ci0gICAgICAgICAgICAvKiBVQ1MtNCBjaGFyYWN0ZXIuIEVpdGhlciBzdG9yZSBkaXJlY3RseSwgb3IgYXMKLSAgICAgICAgICAgICAgIHN1cnJvZ2F0ZSBwYWlyLiAqLwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgKnArKyA9IChQeV9VTklDT0RFKSB4OwotI2Vsc2UKLSAgICAgICAgICAgIHggLT0gMHgxMDAwMEw7Ci0gICAgICAgICAgICAqcCsrID0gMHhEODAwICsgKFB5X1VOSUNPREUpICh4ID4+IDEwKTsKLSAgICAgICAgICAgICpwKysgPSAweERDMDAgKyAoUHlfVU5JQ09ERSkgKHggJiAweDAzRkYpOwotI2VuZGlmCisgICAgICAgIGlmICh4IDw9IE1BWF9VTklDT0RFKSB7CisgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ2LCAmb3V0cG9zLCB4KSA8IDApCisgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgZW5kaW5wb3MgPSBzLXN0YXJ0czsKLSAgICAgICAgICAgIG91dHBvcyA9IHAtUHlVbmljb2RlX0FTX1VOSUNPREUodik7CiAgICAgICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgICAgIGVycm9ycywgJmVycm9ySGFuZGxlciwKICAgICAgICAgICAgICAgICAgICAgInJhd3VuaWNvZGVlc2NhcGUiLCAiXFxVeHh4eHh4eHggb3V0IG9mIHJhbmdlIiwKICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmVuZCwgJnN0YXJ0aW5wb3MsICZlbmRpbnBvcywgJmV4YywgJnMsCi0gICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpCisgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zKSkKICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgIH0KICAgICAgIG5leHRCeXRlOgogICAgICAgICA7CiAgICAgfQotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdiwgcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA8IDApCisgICAgaWYgKHVuaWNvZGVfcmVzaXplKCZ2LCBvdXRwb3MpIDwgMCkKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHYpOwogCiAgIG9uRXJyb3I6CiAgICAgUHlfWERFQ1JFRih2KTsKQEAgLTQyODQsMTQ0ICs2MjYzLDEzOSBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGUoY29uc3QgUHlfVU5JQ09ERSAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUpCisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Bc1Jhd1VuaWNvZGVFc2NhcGVTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCiB7CiAgICAgUHlPYmplY3QgKnJlcHI7CiAgICAgY2hhciAqcDsKICAgICBjaGFyICpxOworICAgIFB5X3NzaXplX3QgZXhwYW5kc2l6ZSwgcG9zOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBsZW47CiAKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICBjb25zdCBQeV9zc2l6ZV90IGV4cGFuZHNpemUgPSAxMDsKLSNlbHNlCi0gICAgY29uc3QgUHlfc3NpemVfdCBleHBhbmRzaXplID0gNjsKLSNlbmRpZgorICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpOworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworICAgIC8qIDQgYnl0ZSBjaGFyYWN0ZXJzIGNhbiB0YWtlIHVwIDEwIGJ5dGVzLCAyIGJ5dGUgY2hhcmFjdGVycyBjYW4gdGFrZSB1cCA2CisgICAgICAgYnl0ZXMsIGFuZCAxIGJ5dGUgY2hhcmFjdGVycyA0LiAqLworICAgIGV4cGFuZHNpemUgPSBraW5kICogMiArIDI7CiAKLSAgICBpZiAoc2l6ZSA+IFBZX1NTSVpFX1RfTUFYIC8gZXhwYW5kc2l6ZSkKKyAgICBpZiAobGVuID4gUFlfU1NJWkVfVF9NQVggLyBleHBhbmRzaXplKQogICAgICAgICByZXR1cm4gUHlFcnJfTm9NZW1vcnkoKTsKIAotICAgIHJlcHIgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIGV4cGFuZHNpemUgKiBzaXplKTsKKyAgICByZXByID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBleHBhbmRzaXplICogbGVuKTsKICAgICBpZiAocmVwciA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoc2l6ZSA9PSAwKQorICAgIGlmIChsZW4gPT0gMCkKICAgICAgICAgcmV0dXJuIHJlcHI7CiAKICAgICBwID0gcSA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHJlcHIpOwotICAgIHdoaWxlIChzaXplLS0gPiAwKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgY2ggPSAqcysrOwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQorICAgIGZvciAocG9zID0gMDsgcG9zIDwgbGVuOyBwb3MrKykgeworICAgICAgICBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgcG9zKTsKICAgICAgICAgLyogTWFwIDMyLWJpdCBjaGFyYWN0ZXJzIHRvICdcVXh4eHh4eHh4JyAqLwogICAgICAgICBpZiAoY2ggPj0gMHgxMDAwMCkgeworICAgICAgICAgICAgYXNzZXJ0KGNoIDw9IE1BWF9VTklDT0RFKTsKICAgICAgICAgICAgICpwKysgPSAnXFwnOwogICAgICAgICAgICAgKnArKyA9ICdVJzsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDI4KSAmIDB4Zl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAyNCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gMjApICYgMHhmXTsKLSAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDE2KSAmIDB4Zl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gOCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gNCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDE1XTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDI4KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAyNCkgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gMjApICYgMHhmXTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDE2KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gOCkgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1soY2ggPj4gNCkgJiAweGZdOworICAgICAgICAgICAgKnArKyA9IFB5X2hleGRpZ2l0c1tjaCAmIDE1XTsKICAgICAgICAgfQotICAgICAgICBlbHNlCi0jZWxzZQotICAgICAgICAgICAgLyogTWFwIFVURi0xNiBzdXJyb2dhdGUgcGFpcnMgdG8gJ1xVMDB4eHh4eHgnICovCi0gICAgICAgICAgICBpZiAoY2ggPj0gMHhEODAwICYmIGNoIDwgMHhEQzAwKSB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjaDI7Ci0gICAgICAgICAgICAgICAgUHlfVUNTNCB1Y3M7Ci0KLSAgICAgICAgICAgICAgICBjaDIgPSAqcysrOwotICAgICAgICAgICAgICAgIHNpemUtLTsKLSAgICAgICAgICAgICAgICBpZiAoY2gyID49IDB4REMwMCAmJiBjaDIgPD0gMHhERkZGKSB7Ci0gICAgICAgICAgICAgICAgICAgIHVjcyA9ICgoKGNoICYgMHgwM0ZGKSA8PCAxMCkgfCAoY2gyICYgMHgwM0ZGKSkgKyAweDAwMDEwMDAwOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9ICdVJzsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDI4KSAmIDB4Zl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAyNCkgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMjApICYgMHhmXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDE2KSAmIDB4Zl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAxMikgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gOCkgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gNCkgJiAweGZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW3VjcyAmIDB4Zl07Ci0gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAvKiBGYWxsIHRocm91Z2g6IGlzb2xhdGVkIHN1cnJvZ2F0ZXMgYXJlIGNvcGllZCBhcy1pcyAqLwotICAgICAgICAgICAgICAgIHMtLTsKLSAgICAgICAgICAgICAgICBzaXplKys7Ci0gICAgICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgLyogTWFwIDE2LWJpdCBjaGFyYWN0ZXJzIHRvICdcdXh4eHgnICovCi0gICAgICAgIGlmIChjaCA+PSAyNTYpIHsKKyAgICAgICAgZWxzZSBpZiAoY2ggPj0gMjU2KSB7CiAgICAgICAgICAgICAqcCsrID0gJ1xcJzsKICAgICAgICAgICAgICpwKysgPSAndSc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gOCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1soY2ggPj4gNCkgJiAweGZdOwotICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDE1XTsKKyAgICAgICAgICAgICpwKysgPSBQeV9oZXhkaWdpdHNbKGNoID4+IDEyKSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiA4KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzWyhjaCA+PiA0KSAmIDB4Zl07CisgICAgICAgICAgICAqcCsrID0gUHlfaGV4ZGlnaXRzW2NoICYgMTVdOwogICAgICAgICB9CiAgICAgICAgIC8qIENvcHkgZXZlcnl0aGluZyBlbHNlIGFzLWlzICovCiAgICAgICAgIGVsc2UKICAgICAgICAgICAgICpwKysgPSAoY2hhcikgY2g7CiAgICAgfQotICAgIHNpemUgPSBwIC0gcTsKIAotICAgIGFzc2VydChzaXplID4gMCk7Ci0gICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmVwciwgc2l6ZSkgPCAwKQorICAgIGFzc2VydChwID4gcSk7CisgICAgaWYgKF9QeUJ5dGVzX1Jlc2l6ZSgmcmVwciwgcCAtIHEpIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcmV0dXJuIHJlcHI7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGUoY29uc3QgUHlfVU5JQ09ERSAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSkKIHsKLSAgICBQeU9iamVjdCAqczsKLSAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewotICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgUHlPYmplY3QgKnRtcCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShzLCBzaXplKTsKKyAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBzID0gUHlVbmljb2RlX0VuY29kZVJhd1VuaWNvZGVFc2NhcGUoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKSk7Ci0KLSAgICByZXR1cm4gczsKKyAgICByZXN1bHQgPSBQeVVuaWNvZGVfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nKHRtcCk7CisgICAgUHlfREVDUkVGKHRtcCk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogLyogLS0tIFVuaWNvZGUgSW50ZXJuYWwgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCi1QeU9iamVjdCAqX1B5VW5pY29kZV9EZWNvZGVVbmljb2RlSW50ZXJuYWwoY29uc3QgY2hhciAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorX1B5VW5pY29kZV9EZWNvZGVVbmljb2RlSW50ZXJuYWwoY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBjb25zdCBjaGFyICpzdGFydHMgPSBzOwogICAgIFB5X3NzaXplX3Qgc3RhcnRpbnBvczsKICAgICBQeV9zc2l6ZV90IGVuZGlucG9zOwogICAgIFB5X3NzaXplX3Qgb3V0cG9zOwotICAgIFB5VW5pY29kZU9iamVjdCAqdjsKLSAgICBQeV9VTklDT0RFICpwOworICAgIFB5T2JqZWN0ICp2OwogICAgIGNvbnN0IGNoYXIgKmVuZDsKICAgICBjb25zdCBjaGFyICpyZWFzb247CiAgICAgUHlPYmplY3QgKmVycm9ySGFuZGxlciA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmV4YyA9IE5VTEw7CiAKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICBQeV9VTklDT0RFIHVuaW1heCA9IFB5VW5pY29kZV9HZXRNYXgoKTsKLSNlbmRpZgorICAgIGlmIChQeUVycl9XYXJuRXgoUHlFeGNfRGVwcmVjYXRpb25XYXJuaW5nLAorICAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVfaW50ZXJuYWwgY29kZWMgaGFzIGJlZW4gZGVwcmVjYXRlZCIsCisgICAgICAgICAgICAgICAgICAgICAxKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICAvKiBYWFggb3ZlcmZsb3cgZGV0ZWN0aW9uIG1pc3NpbmcgKi8KLSAgICB2ID0gX1B5VW5pY29kZV9OZXcoKHNpemUrUHlfVU5JQ09ERV9TSVpFLTEpLyBQeV9VTklDT0RFX1NJWkUpOworICAgIHYgPSBQeVVuaWNvZGVfTmV3KChzaXplK1B5X1VOSUNPREVfU0laRS0xKS8gUHlfVU5JQ09ERV9TSVpFLCAxMjcpOwogICAgIGlmICh2ID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICBpZiAoUHlVbmljb2RlX0dldFNpemUoKFB5T2JqZWN0ICopdikgPT0gMCkKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKXY7Ci0gICAgcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHYpOworICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSCh2KSA9PSAwKQorICAgICAgICByZXR1cm4gdjsKKyAgICBvdXRwb3MgPSAwOwogICAgIGVuZCA9IHMgKyBzaXplOwogCiAgICAgd2hpbGUgKHMgPCBlbmQpIHsKLSAgICAgICAgbWVtY3B5KHAsIHMsIHNpemVvZihQeV9VTklDT0RFKSk7CisgICAgICAgIFB5X1VOSUNPREUgdWNoOworICAgICAgICBQeV9VQ1M0IGNoOworICAgICAgICAvKiBXZSBjb3B5IHRoZSByYXcgcmVwcmVzZW50YXRpb24gb25lIGJ5dGUgYXQgYSB0aW1lIGJlY2F1c2UgdGhlCisgICAgICAgICAgIHBvaW50ZXIgbWF5IGJlIHVuYWxpZ25lZCAoc2VlIHRlc3RfY29kZWNjYWxsYmFja3MpLiAqLworICAgICAgICAoKGNoYXIgKikgJnVjaClbMF0gPSBzWzBdOworICAgICAgICAoKGNoYXIgKikgJnVjaClbMV0gPSBzWzFdOworI2lmZGVmIFB5X1VOSUNPREVfV0lERQorICAgICAgICAoKGNoYXIgKikgJnVjaClbMl0gPSBzWzJdOworICAgICAgICAoKGNoYXIgKikgJnVjaClbM10gPSBzWzNdOworI2VuZGlmCisgICAgICAgIGNoID0gdWNoOworCiAgICAgICAgIC8qIFdlIGhhdmUgdG8gc2FuaXR5IGNoZWNrIHRoZSByYXcgZGF0YSwgb3RoZXJ3aXNlIGRvb20gbG9vbXMgZm9yCiAgICAgICAgICAgIHNvbWUgbWFsZm9ybWVkIFVDUy00IGRhdGEuICovCiAgICAgICAgIGlmICgKICNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICpwID4gdW5pbWF4IHx8ICpwIDwgMCB8fAorICAgICAgICAgICAgY2ggPiAweDEwZmZmZiB8fAogI2VuZGlmCiAgICAgICAgICAgICBlbmQtcyA8IFB5X1VOSUNPREVfU0laRQogICAgICAgICAgICAgKQpAQCAtNDQzNSwyNiArNjQwOSwzOSBAQAogICAgICAgICAgICAgICAgIGVuZGlucG9zID0gcyAtIHN0YXJ0cyArIFB5X1VOSUNPREVfU0laRTsKICAgICAgICAgICAgICAgICByZWFzb24gPSAiaWxsZWdhbCBjb2RlIHBvaW50ICg+IDB4MTBGRkZGKSI7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBvdXRwb3MgPSBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7CiAgICAgICAgICAgICBpZiAodW5pY29kZV9kZWNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoCiAgICAgICAgICAgICAgICAgICAgIGVycm9ycywgJmVycm9ySGFuZGxlciwKICAgICAgICAgICAgICAgICAgICAgInVuaWNvZGVfaW50ZXJuYWwiLCByZWFzb24sCiAgICAgICAgICAgICAgICAgICAgICZzdGFydHMsICZlbmQsICZzdGFydGlucG9zLCAmZW5kaW5wb3MsICZleGMsICZzLAotICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcywgJnApKSB7CisgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zKSkKICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgfQorCisgICAgICAgIHMgKz0gUHlfVU5JQ09ERV9TSVpFOworI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKKyAgICAgICAgaWYgKFB5X1VOSUNPREVfSVNfSElHSF9TVVJST0dBVEUoY2gpICYmIHMgPCBlbmQpCisgICAgICAgIHsKKyAgICAgICAgICAgIFB5X1VOSUNPREUgdWNoMjsKKyAgICAgICAgICAgICgoY2hhciAqKSAmdWNoMilbMF0gPSBzWzBdOworICAgICAgICAgICAgKChjaGFyICopICZ1Y2gyKVsxXSA9IHNbMV07CisgICAgICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU19MT1dfU1VSUk9HQVRFKHVjaDIpKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGNoID0gUHlfVU5JQ09ERV9KT0lOX1NVUlJPR0FURVModWNoLCB1Y2gyKTsKKyAgICAgICAgICAgICAgICBzICs9IFB5X1VOSUNPREVfU0laRTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIHArKzsKLSAgICAgICAgICAgIHMgKz0gUHlfVU5JQ09ERV9TSVpFOwotICAgICAgICB9CisjZW5kaWYKKworICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ2LCAmb3V0cG9zLCBjaCkgPCAwKQorICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgIH0KIAotICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdiwgcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA8IDApCisgICAgaWYgKHVuaWNvZGVfcmVzaXplKCZ2LCBvdXRwb3MpIDwgMCkKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHYpOwogCiAgIG9uRXJyb3I6CiAgICAgUHlfWERFQ1JFRih2KTsKQEAgLTQ0NjUsNTcgKzY0NTIsMjcgQEAKIAogLyogLS0tIExhdGluLTEgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlTGF0aW4xKGNvbnN0IGNoYXIgKnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlTGF0aW4xKGNvbnN0IGNoYXIgKnMsCisgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewotICAgIFB5VW5pY29kZU9iamVjdCAqdjsKLSAgICBQeV9VTklDT0RFICpwOwotICAgIGNvbnN0IGNoYXIgKmUsICp1bnJvbGxlZF9lbmQ7Ci0KICAgICAvKiBMYXRpbi0xIGlzIGVxdWl2YWxlbnQgdG8gdGhlIGZpcnN0IDI1NiBvcmRpbmFscyBpbiBVbmljb2RlLiAqLwotICAgIGlmIChzaXplID09IDEpIHsKLSAgICAgICAgUHlfVU5JQ09ERSByID0gKih1bnNpZ25lZCBjaGFyKilzOwotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKCZyLCAxKTsKLSAgICB9Ci0KLSAgICB2ID0gX1B5VW5pY29kZV9OZXcoc2l6ZSk7Ci0gICAgaWYgKHYgPT0gTlVMTCkKLSAgICAgICAgZ290byBvbkVycm9yOwotICAgIGlmIChzaXplID09IDApCi0gICAgICAgIHJldHVybiAoUHlPYmplY3QgKil2OwotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KTsKLSAgICBlID0gcyArIHNpemU7Ci0gICAgLyogVW5yb2xsaW5nIHRoZSBjb3B5IG1ha2VzIGl0IG11Y2ggZmFzdGVyIGJ5IHJlZHVjaW5nIHRoZSBsb29waW5nCi0gICAgICAgb3ZlcmhlYWQuIFRoaXMgaXMgc2ltaWxhciB0byB3aGF0IG1hbnkgbWVtY3B5KCkgaW1wbGVtZW50YXRpb25zIGRvLiAqLwotICAgIHVucm9sbGVkX2VuZCA9IGUgLSA0OwotICAgIHdoaWxlIChzIDwgdW5yb2xsZWRfZW5kKSB7Ci0gICAgICAgIHBbMF0gPSAodW5zaWduZWQgY2hhcikgc1swXTsKLSAgICAgICAgcFsxXSA9ICh1bnNpZ25lZCBjaGFyKSBzWzFdOwotICAgICAgICBwWzJdID0gKHVuc2lnbmVkIGNoYXIpIHNbMl07Ci0gICAgICAgIHBbM10gPSAodW5zaWduZWQgY2hhcikgc1szXTsKLSAgICAgICAgcyArPSA0OwotICAgICAgICBwICs9IDQ7Ci0gICAgfQotICAgIHdoaWxlIChzIDwgZSkKLSAgICAgICAgKnArKyA9ICh1bnNpZ25lZCBjaGFyKSAqcysrOwotICAgIHJldHVybiAoUHlPYmplY3QgKil2OwotCi0gIG9uRXJyb3I6Ci0gICAgUHlfWERFQ1JFRih2KTsKLSAgICByZXR1cm4gTlVMTDsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9Gcm9tVUNTMSgodW5zaWduZWQgY2hhciopcywgc2l6ZSk7CiB9CiAKIC8qIGNyZWF0ZSBvciBhZGp1c3QgYSBVbmljb2RlRW5jb2RlRXJyb3IgKi8KLXN0YXRpYyB2b2lkIG1ha2VfZW5jb2RlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQeV9VTklDT0RFICp1bmljb2RlLCBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydHBvcywgUHlfc3NpemVfdCBlbmRwb3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcmVhc29uKQorc3RhdGljIHZvaWQKK21ha2VfZW5jb2RlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdW5pY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0cG9zLCBQeV9zc2l6ZV90IGVuZHBvcywKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pCiB7CiAgICAgaWYgKCpleGNlcHRpb25PYmplY3QgPT0gTlVMTCkgewotICAgICAgICAqZXhjZXB0aW9uT2JqZWN0ID0gUHlVbmljb2RlRW5jb2RlRXJyb3JfQ3JlYXRlKAotICAgICAgICAgICAgZW5jb2RpbmcsIHVuaWNvZGUsIHNpemUsIHN0YXJ0cG9zLCBlbmRwb3MsIHJlYXNvbik7CisgICAgICAgICpleGNlcHRpb25PYmplY3QgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb24oCisgICAgICAgICAgICBQeUV4Y19Vbmljb2RlRW5jb2RlRXJyb3IsICJzT25ucyIsCisgICAgICAgICAgICBlbmNvZGluZywgdW5pY29kZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIGlmIChQeVVuaWNvZGVFbmNvZGVFcnJvcl9TZXRTdGFydCgqZXhjZXB0aW9uT2JqZWN0LCBzdGFydHBvcykpCkBAIC00NTMyLDE0ICs2NDg5LDE1IEBACiB9CiAKIC8qIHJhaXNlcyBhIFVuaWNvZGVFbmNvZGVFcnJvciAqLwotc3RhdGljIHZvaWQgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZW5jb2RpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKnVuaWNvZGUsIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydHBvcywgUHlfc3NpemVfdCBlbmRwb3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnJlYXNvbikKK3N0YXRpYyB2b2lkCityYWlzZV9lbmNvZGVfZXhjZXB0aW9uKFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAorICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pCiB7CiAgICAgbWFrZV9lbmNvZGVfZXhjZXB0aW9uKGV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIHVuaWNvZGUsIHNpemUsIHN0YXJ0cG9zLCBlbmRwb3MsIHJlYXNvbik7CisgICAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nLCB1bmljb2RlLCBzdGFydHBvcywgZW5kcG9zLCByZWFzb24pOwogICAgIGlmICgqZXhjZXB0aW9uT2JqZWN0ICE9IE5VTEwpCiAgICAgICAgIFB5Q29kZWNfU3RyaWN0RXJyb3JzKCpleGNlcHRpb25PYmplY3QpOwogfQpAQCAtNDU0OCwxNSArNjUwNiwxNiBAQAogICAgYnVpbGQgYXJndW1lbnRzLCBjYWxsIHRoZSBjYWxsYmFjayBhbmQgY2hlY2sgdGhlIGFyZ3VtZW50cywKICAgIHB1dCB0aGUgcmVzdWx0IGludG8gbmV3cG9zIGFuZCByZXR1cm4gdGhlIHJlcGxhY2VtZW50IHN0cmluZywgd2hpY2gKICAgIGhhcyB0byBiZSBmcmVlZCBieSB0aGUgY2FsbGVyICovCi1zdGF0aWMgUHlPYmplY3QgKnVuaWNvZGVfZW5jb2RlX2NhbGxfZXJyb3JoYW5kbGVyKGNvbnN0IGNoYXIgKmVycm9ycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKiplcnJvckhhbmRsZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nLCBjb25zdCBjaGFyICpyZWFzb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKnVuaWNvZGUsIFB5X3NzaXplX3Qgc2l6ZSwgUHlPYmplY3QgKipleGNlcHRpb25PYmplY3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpuZXdwb3MpCitzdGF0aWMgUHlPYmplY3QgKgordW5pY29kZV9lbmNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoY29uc3QgY2hhciAqZXJyb3JzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKiplcnJvckhhbmRsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplbmNvZGluZywgY29uc3QgY2hhciAqcmVhc29uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsIFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydHBvcywgUHlfc3NpemVfdCBlbmRwb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpuZXdwb3MpCiB7CiAgICAgc3RhdGljIGNoYXIgKmFyZ3BhcnNlID0gIk9uO2VuY29kaW5nIGVycm9yIGhhbmRsZXIgbXVzdCByZXR1cm4gKHN0ci9ieXRlcywgaW50KSB0dXBsZSI7Ci0KKyAgICBQeV9zc2l6ZV90IGxlbjsKICAgICBQeU9iamVjdCAqcmVzdHVwbGU7CiAgICAgUHlPYmplY3QgKnJlc3VuaWNvZGU7CiAKQEAgLTQ1NjYsOCArNjUyNSwxMiBAQAogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSk7CisKICAgICBtYWtlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGluZywgdW5pY29kZSwgc2l6ZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIHVuaWNvZGUsIHN0YXJ0cG9zLCBlbmRwb3MsIHJlYXNvbik7CiAgICAgaWYgKCpleGNlcHRpb25PYmplY3QgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKQEAgLTQ1OTEsOCArNjU1NCw4IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBpZiAoKm5ld3BvczwwKQotICAgICAgICAqbmV3cG9zID0gc2l6ZSsqbmV3cG9zOwotICAgIGlmICgqbmV3cG9zPDAgfHwgKm5ld3Bvcz5zaXplKSB7CisgICAgICAgICpuZXdwb3MgPSBsZW4gKyAqbmV3cG9zOworICAgIGlmICgqbmV3cG9zPDAgfHwgKm5ld3Bvcz5sZW4pIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0luZGV4RXJyb3IsICJwb3NpdGlvbiAlemQgZnJvbSBlcnJvciBoYW5kbGVyIG91dCBvZiBib3VuZHMiLCAqbmV3cG9zKTsKICAgICAgICAgUHlfREVDUkVGKHJlc3R1cGxlKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC00NjAyLDE4ICs2NTY1LDE3IEBACiAgICAgcmV0dXJuIHJlc3VuaWNvZGU7CiB9CiAKLXN0YXRpYyBQeU9iamVjdCAqdW5pY29kZV9lbmNvZGVfdWNzMShjb25zdCBQeV9VTklDT0RFICpwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGxpbWl0KQorc3RhdGljIFB5T2JqZWN0ICoKK3VuaWNvZGVfZW5jb2RlX3VjczEoUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKKyAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGxpbWl0KQogeworICAgIC8qIGlucHV0IHN0YXRlICovCisgICAgUHlfc3NpemVfdCBwb3M9MCwgc2l6ZTsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogICAgIC8qIG91dHB1dCBvYmplY3QgKi8KICAgICBQeU9iamVjdCAqcmVzOwotICAgIC8qIHBvaW50ZXJzIHRvIHRoZSBiZWdpbm5pbmcgYW5kIGVuZCsxIG9mIGlucHV0ICovCi0gICAgY29uc3QgUHlfVU5JQ09ERSAqc3RhcnRwID0gcDsKLSAgICBjb25zdCBQeV9VTklDT0RFICplbmRwID0gcCArIHNpemU7Ci0gICAgLyogcG9pbnRlciB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSB1bmVuY29kYWJsZSBjaGFyYWN0ZXJzICovCi0gICAgLyogY29uc3QgUHlfVU5JQ09ERSAqYmFkcCA9IE5VTEw7ICovCiAgICAgLyogcG9pbnRlciBpbnRvIHRoZSBvdXRwdXQgKi8KICAgICBjaGFyICpzdHI7CiAgICAgLyogY3VycmVudCBvdXRwdXQgcG9zaXRpb24gKi8KQEAgLTQ2MjYsNiArNjU4OCwxMSBAQAogICAgICAqIC0xPW5vdCBpbml0aWFsaXplZCwgMD11bmtub3duLCAxPXN0cmljdCwgMj1yZXBsYWNlLCAzPWlnbm9yZSwgND14bWxjaGFycmVmcmVwbGFjZSAqLwogICAgIGludCBrbm93bl9lcnJvckhhbmRsZXIgPSAtMTsKIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodW5pY29kZSkgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpOwogICAgIC8qIGFsbG9jYXRlIGVub3VnaCBmb3IgYSBzaW1wbGUgZW5jb2Rpbmcgd2l0aG91dAogICAgICAgIHJlcGxhY2VtZW50cywgaWYgd2UgbmVlZCBtb3JlLCB3ZSdsbCByZXNpemUgKi8KICAgICBpZiAoc2l6ZSA9PSAwKQpAQCAtNDYzNiwyOCArNjYwMywyNCBAQAogICAgIHN0ciA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHJlcyk7CiAgICAgcmVzc2l6ZSA9IHNpemU7CiAKLSAgICB3aGlsZSAocDxlbmRwKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgYyA9ICpwOworICAgIHdoaWxlIChwb3MgPCBzaXplKSB7CisgICAgICAgIFB5X1VDUzQgYyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIHBvcyk7CiAKICAgICAgICAgLyogY2FuIHdlIGVuY29kZSB0aGlzPyAqLwogICAgICAgICBpZiAoYzxsaW1pdCkgewogICAgICAgICAgICAgLyogbm8gb3ZlcmZsb3cgY2hlY2ssIGJlY2F1c2Ugd2Uga25vdyB0aGF0IHRoZSBzcGFjZSBpcyBlbm91Z2ggKi8KICAgICAgICAgICAgICpzdHIrKyA9IChjaGFyKWM7Ci0gICAgICAgICAgICArK3A7CisgICAgICAgICAgICArK3BvczsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIFB5X3NzaXplX3QgdW5pY29kZXBvcyA9IHAtc3RhcnRwOwogICAgICAgICAgICAgUHlfc3NpemVfdCByZXF1aXJlZHNpemU7CiAgICAgICAgICAgICBQeU9iamVjdCAqcmVwdW5pY29kZTsKLSAgICAgICAgICAgIFB5X3NzaXplX3QgcmVwc2l6ZTsKLSAgICAgICAgICAgIFB5X3NzaXplX3QgbmV3cG9zOwotICAgICAgICAgICAgUHlfc3NpemVfdCByZXNwb3M7Ci0gICAgICAgICAgICBQeV9VTklDT0RFICp1bmkyOworICAgICAgICAgICAgUHlfc3NpemVfdCByZXBzaXplLCBuZXdwb3MsIHJlc3BvcywgaTsKICAgICAgICAgICAgIC8qIHN0YXJ0cG9zIGZvciBjb2xsZWN0aW5nIHVuZW5jb2RhYmxlIGNoYXJzICovCi0gICAgICAgICAgICBjb25zdCBQeV9VTklDT0RFICpjb2xsc3RhcnQgPSBwOwotICAgICAgICAgICAgY29uc3QgUHlfVU5JQ09ERSAqY29sbGVuZCA9IHA7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGNvbGxzdGFydCA9IHBvczsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgY29sbGVuZCA9IHBvczsKICAgICAgICAgICAgIC8qIGZpbmQgYWxsIHVuZWNvZGFibGUgY2hhcmFjdGVycyAqLwotICAgICAgICAgICAgd2hpbGUgKChjb2xsZW5kIDwgZW5kcCkgJiYgKCgqY29sbGVuZCk+PWxpbWl0KSkKKyAgICAgICAgICAgIHdoaWxlICgoY29sbGVuZCA8IHNpemUpICYmIChQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBjb2xsZW5kKT49bGltaXQpKQogICAgICAgICAgICAgICAgICsrY29sbGVuZDsKICAgICAgICAgICAgIC8qIGNhY2hlIGNhbGxiYWNrIG5hbWUgbG9va3VwIChpZiBub3QgZG9uZSB5ZXQsIGkuZS4gaXQncyB0aGUgZmlyc3QgZXJyb3IpICovCiAgICAgICAgICAgICBpZiAoa25vd25fZXJyb3JIYW5kbGVyPT0tMSkgewpAQCAtNDY3NCwzOSArNjYzNywzNyBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgc3dpdGNoIChrbm93bl9lcnJvckhhbmRsZXIpIHsKICAgICAgICAgICAgIGNhc2UgMTogLyogc3RyaWN0ICovCi0gICAgICAgICAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbigmZXhjLCBlbmNvZGluZywgc3RhcnRwLCBzaXplLCBjb2xsc3RhcnQtc3RhcnRwLCBjb2xsZW5kLXN0YXJ0cCwgcmVhc29uKTsKKyAgICAgICAgICAgICAgICByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsIGVuY29kaW5nLCB1bmljb2RlLCBjb2xsc3RhcnQsIGNvbGxlbmQsIHJlYXNvbik7CiAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgY2FzZSAyOiAvKiByZXBsYWNlICovCiAgICAgICAgICAgICAgICAgd2hpbGUgKGNvbGxzdGFydCsrPGNvbGxlbmQpCiAgICAgICAgICAgICAgICAgICAgICpzdHIrKyA9ICc/JzsgLyogZmFsbCB0aHJvdWdoICovCiAgICAgICAgICAgICBjYXNlIDM6IC8qIGlnbm9yZSAqLwotICAgICAgICAgICAgICAgIHAgPSBjb2xsZW5kOworICAgICAgICAgICAgICAgIHBvcyA9IGNvbGxlbmQ7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBjYXNlIDQ6IC8qIHhtbGNoYXJyZWZyZXBsYWNlICovCiAgICAgICAgICAgICAgICAgcmVzcG9zID0gc3RyIC0gUHlCeXRlc19BU19TVFJJTkcocmVzKTsKLSAgICAgICAgICAgICAgICAvKiBkZXRlcm1pbmUgcmVwbGFjZW1lbnQgc2l6ZSAodGVtcG9yYXJpbHkgKG1pcyl1c2VzIHApICovCi0gICAgICAgICAgICAgICAgZm9yIChwID0gY29sbHN0YXJ0LCByZXBzaXplID0gMDsgcCA8IGNvbGxlbmQ7ICsrcCkgewotICAgICAgICAgICAgICAgICAgICBpZiAoKnA8MTApCisgICAgICAgICAgICAgICAgLyogZGV0ZXJtaW5lIHJlcGxhY2VtZW50IHNpemUgKi8KKyAgICAgICAgICAgICAgICBmb3IgKGkgPSBjb2xsc3RhcnQsIHJlcHNpemUgPSAwOyBpIDwgY29sbGVuZDsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKGNoIDwgMTApCiAgICAgICAgICAgICAgICAgICAgICAgICByZXBzaXplICs9IDIrMSsxOwotICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgqcDwxMDApCisgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoIDwgMTAwKQogICAgICAgICAgICAgICAgICAgICAgICAgcmVwc2l6ZSArPSAyKzIrMTsKLSAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwMCkKKyAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoY2ggPCAxMDAwKQogICAgICAgICAgICAgICAgICAgICAgICAgcmVwc2l6ZSArPSAyKzMrMTsKLSAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwMDApCisgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoIDwgMTAwMDApCiAgICAgICAgICAgICAgICAgICAgICAgICByZXBzaXplICs9IDIrNCsxOwotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChjaCA8IDEwMDAwMCkKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcHNpemUgKz0gMis1KzE7Ci0jZWxzZQotICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgqcDwxMDAwMDApCi0gICAgICAgICAgICAgICAgICAgICAgICByZXBzaXplICs9IDIrNSsxOwotICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgqcDwxMDAwMDAwKQorICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChjaCA8IDEwMDAwMDApCiAgICAgICAgICAgICAgICAgICAgICAgICByZXBzaXplICs9IDIrNisxOwotICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KGNoIDw9IE1BWF9VTklDT0RFKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcHNpemUgKz0gMis3KzE7Ci0jZW5kaWYKKyAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICByZXF1aXJlZHNpemUgPSByZXNwb3MrcmVwc2l6ZSsoZW5kcC1jb2xsZW5kKTsKKyAgICAgICAgICAgICAgICByZXF1aXJlZHNpemUgPSByZXNwb3MrcmVwc2l6ZSsoc2l6ZS1jb2xsZW5kKTsKICAgICAgICAgICAgICAgICBpZiAocmVxdWlyZWRzaXplID4gcmVzc2l6ZSkgewogICAgICAgICAgICAgICAgICAgICBpZiAocmVxdWlyZWRzaXplPDIqcmVzc2l6ZSkKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkc2l6ZSA9IDIqcmVzc2l6ZTsKQEAgLTQ3MTUsMTcgKzY2NzYsMTggQEAKICAgICAgICAgICAgICAgICAgICAgc3RyID0gUHlCeXRlc19BU19TVFJJTkcocmVzKSArIHJlc3BvczsKICAgICAgICAgICAgICAgICAgICAgcmVzc2l6ZSA9IHJlcXVpcmVkc2l6ZTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgLyogZ2VuZXJhdGUgcmVwbGFjZW1lbnQgKHRlbXBvcmFyaWx5IChtaXMpdXNlcyBwKSAqLwotICAgICAgICAgICAgICAgIGZvciAocCA9IGNvbGxzdGFydDsgcCA8IGNvbGxlbmQ7ICsrcCkgewotICAgICAgICAgICAgICAgICAgICBzdHIgKz0gc3ByaW50ZihzdHIsICImIyVkOyIsIChpbnQpKnApOworICAgICAgICAgICAgICAgIC8qIGdlbmVyYXRlIHJlcGxhY2VtZW50ICovCisgICAgICAgICAgICAgICAgZm9yIChpID0gY29sbHN0YXJ0OyBpIDwgY29sbGVuZDsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgIHN0ciArPSBzcHJpbnRmKHN0ciwgIiYjJWQ7IiwgUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBwID0gY29sbGVuZDsKKyAgICAgICAgICAgICAgICBwb3MgPSBjb2xsZW5kOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICByZXB1bmljb2RlID0gdW5pY29kZV9lbmNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGluZywgcmVhc29uLCBzdGFydHAsIHNpemUsICZleGMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbGxzdGFydC1zdGFydHAsIGNvbGxlbmQtc3RhcnRwLCAmbmV3cG9zKTsKLSAgICAgICAgICAgICAgICBpZiAocmVwdW5pY29kZSA9PSBOVUxMKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGluZywgcmVhc29uLCB1bmljb2RlLCAmZXhjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xsc3RhcnQsIGNvbGxlbmQsICZuZXdwb3MpOworICAgICAgICAgICAgICAgIGlmIChyZXB1bmljb2RlID09IE5VTEwgfHwgKFB5VW5pY29kZV9DaGVjayhyZXB1bmljb2RlKSAmJgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEWShyZXB1bmljb2RlKSA9PSAtMSkpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICBpZiAoUHlCeXRlc19DaGVjayhyZXB1bmljb2RlKSkgewogICAgICAgICAgICAgICAgICAgICAvKiBEaXJlY3RseSBjb3B5IGJ5dGVzIHJlc3VsdCB0byBvdXRwdXQuICovCkBAIC00NzQyLDcgKzY3MDQsNyBAQAogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIG1lbWNweShzdHIsIFB5Qnl0ZXNfQXNTdHJpbmcocmVwdW5pY29kZSksIHJlcHNpemUpOwogICAgICAgICAgICAgICAgICAgICBzdHIgKz0gcmVwc2l6ZTsKLSAgICAgICAgICAgICAgICAgICAgcCA9IHN0YXJ0cCArIG5ld3BvczsKKyAgICAgICAgICAgICAgICAgICAgcG9zID0gbmV3cG9zOwogICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwdW5pY29kZSk7CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIH0KQEAgLTQ3NTAsOCArNjcxMiw4IEBACiAgICAgICAgICAgICAgICAgICAgaGF2ZSt0aGUgcmVwbGFjZW1lbnQrdGhlIHJlc3Qgb2YgdGhlIHN0cmluZywgc28KICAgICAgICAgICAgICAgICAgICB3ZSB3b24ndCBoYXZlIHRvIGNoZWNrIHNwYWNlIGZvciBlbmNvZGFibGUgY2hhcmFjdGVycykgKi8KICAgICAgICAgICAgICAgICByZXNwb3MgPSBzdHIgLSBQeUJ5dGVzX0FTX1NUUklORyhyZXMpOwotICAgICAgICAgICAgICAgIHJlcHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUocmVwdW5pY29kZSk7Ci0gICAgICAgICAgICAgICAgcmVxdWlyZWRzaXplID0gcmVzcG9zK3JlcHNpemUrKGVuZHAtY29sbGVuZCk7CisgICAgICAgICAgICAgICAgcmVwc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlcHVuaWNvZGUpOworICAgICAgICAgICAgICAgIHJlcXVpcmVkc2l6ZSA9IHJlc3BvcytyZXBzaXplKyhzaXplLWNvbGxlbmQpOwogICAgICAgICAgICAgICAgIGlmIChyZXF1aXJlZHNpemUgPiByZXNzaXplKSB7CiAgICAgICAgICAgICAgICAgICAgIGlmIChyZXF1aXJlZHNpemU8MipyZXNzaXplKQogICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRzaXplID0gMipyZXNzaXplOwpAQCAtNDc2NCwxNyArNjcyNiwxNyBAQAogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAvKiBjaGVjayBpZiB0aGVyZSBpcyBhbnl0aGluZyB1bmVuY29kYWJsZSBpbiB0aGUgcmVwbGFjZW1lbnQKICAgICAgICAgICAgICAgICAgICBhbmQgY29weSBpdCB0byB0aGUgb3V0cHV0ICovCi0gICAgICAgICAgICAgICAgZm9yICh1bmkyID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVwdW5pY29kZSk7cmVwc2l6ZS0tPjA7ICsrdW5pMiwgKytzdHIpIHsKLSAgICAgICAgICAgICAgICAgICAgYyA9ICp1bmkyOworICAgICAgICAgICAgICAgIGZvciAoaSA9IDA7IHJlcHNpemUtLT4wOyArK2ksICsrc3RyKSB7CisgICAgICAgICAgICAgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHJlcHVuaWNvZGUsIGkpOwogICAgICAgICAgICAgICAgICAgICBpZiAoYyA+PSBsaW1pdCkgewotICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbigmZXhjLCBlbmNvZGluZywgc3RhcnRwLCBzaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmljb2RlcG9zLCB1bmljb2RlcG9zKzEsIHJlYXNvbik7CisgICAgICAgICAgICAgICAgICAgICAgICByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsIGVuY29kaW5nLCB1bmljb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MsIHBvcysxLCByZWFzb24pOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcHVuaWNvZGUpOwogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICpzdHIgPSAoY2hhciljOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBwID0gc3RhcnRwICsgbmV3cG9zOworICAgICAgICAgICAgICAgIHBvcyA9IG5ld3BvczsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwdW5pY29kZSk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KQEAgLTQ3OTgsNzcgKzY3NjAsMTQzIEBACiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRW5jb2RlTGF0aW4xKGNvbnN0IFB5X1VOSUNPREUgKnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCisvKiBEZXByZWNhdGVkICovCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRW5jb2RlTGF0aW4xKGNvbnN0IFB5X1VOSUNPREUgKnAsCisgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQogewotICAgIHJldHVybiB1bmljb2RlX2VuY29kZV91Y3MxKHAsIHNpemUsIGVycm9ycywgMjU2KTsKKyAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICp1bmljb2RlID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHAsIHNpemUpOworICAgIGlmICh1bmljb2RlID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJlc3VsdCA9IHVuaWNvZGVfZW5jb2RlX3VjczEodW5pY29kZSwgZXJyb3JzLCAyNTYpOworICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICByZXR1cm4gcmVzdWx0OwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorUHlPYmplY3QgKgorX1B5VW5pY29kZV9Bc0xhdGluMVN0cmluZyhQeU9iamVjdCAqdW5pY29kZSwgY29uc3QgY2hhciAqZXJyb3JzKQogewogICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CiAgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXR1cm4gUHlVbmljb2RlX0VuY29kZUxhdGluMShQeVVuaWNvZGVfQVNfVU5JQ09ERSh1bmljb2RlKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgLyogRmFzdCBwYXRoOiBpZiBpdCBpcyBhIG9uZS1ieXRlIHN0cmluZywgY29uc3RydWN0CisgICAgICAgYnl0ZXMgb2JqZWN0IGRpcmVjdGx5LiAqLworICAgIGlmIChQeVVuaWNvZGVfS0lORCh1bmljb2RlKSA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCkKKyAgICAgICAgcmV0dXJuIFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoUHlVbmljb2RlX0RBVEEodW5pY29kZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpKTsKKyAgICAvKiBOb24tTGF0aW4tMSBjaGFyYWN0ZXJzIHByZXNlbnQuIERlZmVyIHRvIGFib3ZlIGZ1bmN0aW9uIHRvCisgICAgICAgcmFpc2UgdGhlIGV4Y2VwdGlvbi4gKi8KKyAgICByZXR1cm4gdW5pY29kZV9lbmNvZGVfdWNzMSh1bmljb2RlLCBlcnJvcnMsIDI1Nik7Cit9CisKK1B5T2JqZWN0KgorUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIHJldHVybiBfUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nKHVuaWNvZGUsIE5VTEwpOwogfQogCiAvKiAtLS0gNy1iaXQgQVNDSUkgQ29kZWMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIAotUHlPYmplY3QgKlB5VW5pY29kZV9EZWNvZGVBU0NJSShjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9EZWNvZGVBU0NJSShjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgY29uc3QgY2hhciAqc3RhcnRzID0gczsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnY7Ci0gICAgUHlfVU5JQ09ERSAqcDsKKyAgICBQeU9iamVjdCAqdjsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogICAgIFB5X3NzaXplX3Qgc3RhcnRpbnBvczsKICAgICBQeV9zc2l6ZV90IGVuZGlucG9zOwogICAgIFB5X3NzaXplX3Qgb3V0cG9zOwogICAgIGNvbnN0IGNoYXIgKmU7CisgICAgaW50IGhhc19lcnJvcjsKKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpwID0gKGNvbnN0IHVuc2lnbmVkIGNoYXIgKilzOworICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmVuZCA9IHAgKyBzaXplOworICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmFsaWduZWRfZW5kID0gKGNvbnN0IHVuc2lnbmVkIGNoYXIgKikgKChzaXplX3QpIGVuZCAmIH5MT05HX1BUUl9NQVNLKTsKICAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKICAgICBQeU9iamVjdCAqZXhjID0gTlVMTDsKIAotICAgIC8qIEFTQ0lJIGlzIGVxdWl2YWxlbnQgdG8gdGhlIGZpcnN0IDEyOCBvcmRpbmFscyBpbiBVbmljb2RlLiAqLwotICAgIGlmIChzaXplID09IDEgJiYgKih1bnNpZ25lZCBjaGFyKilzIDwgMTI4KSB7Ci0gICAgICAgIFB5X1VOSUNPREUgciA9ICoodW5zaWduZWQgY2hhciopczsKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZSgmciwgMSk7CisgICAgaWYgKHNpemUgPT0gMCkgeworICAgICAgICBQeV9JTkNSRUYodW5pY29kZV9lbXB0eSk7CisgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OwogICAgIH0KIAotICAgIHYgPSBfUHlVbmljb2RlX05ldyhzaXplKTsKKyAgICAvKiBBU0NJSSBpcyBlcXVpdmFsZW50IHRvIHRoZSBmaXJzdCAxMjggb3JkaW5hbHMgaW4gVW5pY29kZS4gKi8KKyAgICBpZiAoc2l6ZSA9PSAxICYmICh1bnNpZ25lZCBjaGFyKXNbMF0gPCAxMjgpCisgICAgICAgIHJldHVybiBnZXRfbGF0aW4xX2NoYXIoKHVuc2lnbmVkIGNoYXIpc1swXSk7CisKKyAgICBoYXNfZXJyb3IgPSAwOworICAgIHdoaWxlIChwIDwgZW5kICYmICFoYXNfZXJyb3IpIHsKKyAgICAgICAgLyogRmFzdCBwYXRoLCBzZWUgYmVsb3cgaW4gUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bCBmb3IKKyAgICAgICAgICAgYW4gZXhwbGFuYXRpb24uICovCisgICAgICAgIGlmICghKChzaXplX3QpIHAgJiBMT05HX1BUUl9NQVNLKSkgeworICAgICAgICAgICAgLyogSGVscCByZWdpc3RlciBhbGxvY2F0aW9uICovCisgICAgICAgICAgICByZWdpc3RlciBjb25zdCB1bnNpZ25lZCBjaGFyICpfcCA9IHA7CisgICAgICAgICAgICB3aGlsZSAoX3AgPCBhbGlnbmVkX2VuZCkgeworICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgdmFsdWUgPSAqKHVuc2lnbmVkIGxvbmcgKikgX3A7CisgICAgICAgICAgICAgICAgaWYgKHZhbHVlICYgQVNDSUlfQ0hBUl9NQVNLKSB7CisgICAgICAgICAgICAgICAgICAgIGhhc19lcnJvciA9IDE7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBfcCArPSBTSVpFT0ZfTE9ORzsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChfcCA9PSBlbmQpCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBpZiAoaGFzX2Vycm9yKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgcCA9IF9wOworICAgICAgICB9CisgICAgICAgIGlmICgqcCAmIDB4ODApIHsKKyAgICAgICAgICAgIGhhc19lcnJvciA9IDE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICsrcDsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAoIWhhc19lcnJvcikKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfZnJvbWFzY2lpKChjb25zdCB1bnNpZ25lZCBjaGFyICopcywgc2l6ZSk7CisKKyAgICB2ID0gUHlVbmljb2RlX05ldyhzaXplLCAxMjcpOwogICAgIGlmICh2ID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICBpZiAoc2l6ZSA9PSAwKQotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdjsKLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7CisgICAgICAgIHJldHVybiB2OworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh2KTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEodik7CisgICAgb3V0cG9zID0gMDsKICAgICBlID0gcyArIHNpemU7CiAgICAgd2hpbGUgKHMgPCBlKSB7CiAgICAgICAgIHJlZ2lzdGVyIHVuc2lnbmVkIGNoYXIgYyA9ICh1bnNpZ25lZCBjaGFyKSpzOwogICAgICAgICBpZiAoYyA8IDEyOCkgewotICAgICAgICAgICAgKnArKyA9IGM7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgb3V0cG9zKyssIGMpOwogICAgICAgICAgICAgKytzOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgc3RhcnRpbnBvcyA9IHMtc3RhcnRzOwogICAgICAgICAgICAgZW5kaW5wb3MgPSBzdGFydGlucG9zICsgMTsKLSAgICAgICAgICAgIG91dHBvcyA9IHAgLSAoUHlfVU5JQ09ERSAqKVB5VW5pY29kZV9BU19VTklDT0RFKHYpOwogICAgICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgICAgICBlcnJvcnMsICZlcnJvckhhbmRsZXIsCiAgICAgICAgICAgICAgICAgICAgICJhc2NpaSIsICJvcmRpbmFsIG5vdCBpbiByYW5nZSgxMjgpIiwKICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmUsICZzdGFydGlucG9zLCAmZW5kaW5wb3MsICZleGMsICZzLAotICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcywgJnApKQorICAgICAgICAgICAgICAgICAgICAmdiwgJm91dHBvcykpCiAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHYpOworICAgICAgICAgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHYpOwogICAgICAgICB9CiAgICAgfQotICAgIGlmIChwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodikgPCBQeVVuaWNvZGVfR0VUX1NJWkUodikpCi0gICAgICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSgmdiwgcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKHYpKSA8IDApCi0gICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgaWYgKHVuaWNvZGVfcmVzaXplKCZ2LCBvdXRwb3MpIDwgMCkKKyAgICAgICAgZ290byBvbkVycm9yOwogICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKICAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh2LCAxKSk7CisgICAgcmV0dXJuIHY7CiAKICAgb25FcnJvcjoKICAgICBQeV9YREVDUkVGKHYpOwpAQCAtNDg3NywyNSArNjkwNSw0NSBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0VuY29kZUFTQ0lJKGNvbnN0IFB5X1VOSUNPREUgKnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorLyogRGVwcmVjYXRlZCAqLworUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZUFTQ0lJKGNvbnN0IFB5X1VOSUNPREUgKnAsCisgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKLSAgICByZXR1cm4gdW5pY29kZV9lbmNvZGVfdWNzMShwLCBzaXplLCBlcnJvcnMsIDEyOCk7CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBQeU9iamVjdCAqdW5pY29kZSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShwLCBzaXplKTsKKyAgICBpZiAodW5pY29kZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXN1bHQgPSB1bmljb2RlX2VuY29kZV91Y3MxKHVuaWNvZGUsIGVycm9ycywgMTI4KTsKKyAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlKQorUHlPYmplY3QgKgorX1B5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nKFB5T2JqZWN0ICp1bmljb2RlLCBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodW5pY29kZSkpIHsKICAgICAgICAgUHlFcnJfQmFkQXJndW1lbnQoKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlQVNDSUkoUHlVbmljb2RlX0FTX1VOSUNPREUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAvKiBGYXN0IHBhdGg6IGlmIGl0IGlzIGFuIEFTQ0lJLW9ubHkgc3RyaW5nLCBjb25zdHJ1Y3QgYnl0ZXMgb2JqZWN0CisgICAgICAgZGlyZWN0bHkuIEVsc2UgZGVmZXIgdG8gYWJvdmUgZnVuY3Rpb24gdG8gcmFpc2UgdGhlIGV4Y2VwdGlvbi4gKi8KKyAgICBpZiAoUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHVuaWNvZGUpIDwgMTI4KQorICAgICAgICByZXR1cm4gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShQeVVuaWNvZGVfREFUQSh1bmljb2RlKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkpOworICAgIHJldHVybiB1bmljb2RlX2VuY29kZV91Y3MxKHVuaWNvZGUsIGVycm9ycywgMTI4KTsKIH0KIAotI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgZGVmaW5lZChIQVZFX1VTQUJMRV9XQ0hBUl9UKQorUHlPYmplY3QgKgorUHlVbmljb2RlX0FzQVNDSUlTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUpCit7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfQXNBU0NJSVN0cmluZyh1bmljb2RlLCBOVUxMKTsKK30KKworI2lmZGVmIEhBVkVfTUJDUwogCiAvKiAtLS0gTUJDUyBjb2RlY3MgZm9yIFdpbmRvd3MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KIApAQCAtNDkwMywzMzYgKzY5NTEsODEzIEBACiAjZGVmaW5lIE5FRURfUkVUUlkKICNlbmRpZgogCi0vKiBYWFggVGhpcyBjb2RlIGlzIGxpbWl0ZWQgdG8gInRydWUiIGRvdWJsZS1ieXRlIGVuY29kaW5ncywgYXMKLSAgIGEpIGl0IGFzc3VtZXMgYW4gaW5jb21wbGV0ZSBjaGFyYWN0ZXIgY29uc2lzdHMgb2YgYSBzaW5nbGUgYnl0ZSwgYW5kCi0gICBiKSBJc0RCQ1NMZWFkQnl0ZSAocHJvYmFibHkpIGRvZXMgbm90IHdvcmsgZm9yIG5vbi1EQkNTIG11bHRpLWJ5dGUKLSAgIGVuY29kaW5ncywgc2VlIElzREJDU0xlYWRCeXRlRXggZG9jdW1lbnRhdGlvbi4gKi8KKyNpZm5kZWYgV0NfRVJSX0lOVkFMSURfQ0hBUlMKKyMgIGRlZmluZSBXQ19FUlJfSU5WQUxJRF9DSEFSUyAweDAwODAKKyNlbmRpZgogCi1zdGF0aWMgaW50IGlzX2RiY3NfbGVhZF9ieXRlKGNvbnN0IGNoYXIgKnMsIGludCBvZmZzZXQpCitzdGF0aWMgY2hhcioKK2NvZGVfcGFnZV9uYW1lKFVJTlQgY29kZV9wYWdlLCBQeU9iamVjdCAqKm9iaikKK3sKKyAgICAqb2JqID0gTlVMTDsKKyAgICBpZiAoY29kZV9wYWdlID09IENQX0FDUCkKKyAgICAgICAgcmV0dXJuICJtYmNzIjsKKyAgICBpZiAoY29kZV9wYWdlID09IENQX1VURjcpCisgICAgICAgIHJldHVybiAiQ1BfVVRGNyI7CisgICAgaWYgKGNvZGVfcGFnZSA9PSBDUF9VVEY4KQorICAgICAgICByZXR1cm4gIkNQX1VURjgiOworCisgICAgKm9iaiA9IFB5Qnl0ZXNfRnJvbUZvcm1hdCgiY3AldSIsIGNvZGVfcGFnZSk7CisgICAgaWYgKCpvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIFB5Qnl0ZXNfQVNfU1RSSU5HKCpvYmopOworfQorCitzdGF0aWMgaW50Citpc19kYmNzX2xlYWRfYnl0ZShVSU5UIGNvZGVfcGFnZSwgY29uc3QgY2hhciAqcywgaW50IG9mZnNldCkKIHsKICAgICBjb25zdCBjaGFyICpjdXJyID0gcyArIG9mZnNldDsKKyAgICBjb25zdCBjaGFyICpwcmV2OwogCi0gICAgaWYgKElzREJDU0xlYWRCeXRlKCpjdXJyKSkgewotICAgICAgICBjb25zdCBjaGFyICpwcmV2ID0gQ2hhclByZXYocywgY3Vycik7Ci0gICAgICAgIHJldHVybiAocHJldiA9PSBjdXJyKSB8fCAhSXNEQkNTTGVhZEJ5dGUoKnByZXYpIHx8IChjdXJyIC0gcHJldiA9PSAyKTsKLSAgICB9CisgICAgaWYgKCFJc0RCQ1NMZWFkQnl0ZUV4KGNvZGVfcGFnZSwgKmN1cnIpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHByZXYgPSBDaGFyUHJldkV4QShjb2RlX3BhZ2UsIHMsIGN1cnIsIDApOworICAgIGlmIChwcmV2ID09IGN1cnIpCisgICAgICAgIHJldHVybiAxOworICAgIC8qIEZJWE1FOiBUaGlzIGNvZGUgaXMgbGltaXRlZCB0byAidHJ1ZSIgZG91YmxlLWJ5dGUgZW5jb2RpbmdzLAorICAgICAgIGFzIGl0IGFzc3VtZXMgYW4gaW5jb21wbGV0ZSBjaGFyYWN0ZXIgY29uc2lzdHMgb2YgYSBzaW5nbGUKKyAgICAgICBieXRlLiAqLworICAgIGlmIChjdXJyIC0gcHJldiA9PSAyKQorICAgICAgICByZXR1cm4gMTsKKyAgICBpZiAoIUlzREJDU0xlYWRCeXRlRXgoY29kZV9wYWdlLCAqcHJldikpCisgICAgICAgIHJldHVybiAxOwogICAgIHJldHVybiAwOwogfQogCi0vKgotICogRGVjb2RlIE1CQ1Mgc3RyaW5nIGludG8gdW5pY29kZSBvYmplY3QuIElmICdmaW5hbCcgaXMgc2V0LCBjb252ZXJ0cwotICogdHJhaWxpbmcgbGVhZC1ieXRlIHRvby4gUmV0dXJucyBjb25zdW1lZCBzaXplIGlmIHN1Y2NlZWQsIC0xIG90aGVyd2lzZS4KLSAqLwotc3RhdGljIGludCBkZWNvZGVfbWJjcyhQeVVuaWNvZGVPYmplY3QgKip2LAotICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzLCAvKiBNQkNTIHN0cmluZyAqLwotICAgICAgICAgICAgICAgICAgICAgICBpbnQgc2l6ZSwgLyogc2l6ZW9mIE1CQ1Mgc3RyaW5nICovCi0gICAgICAgICAgICAgICAgICAgICAgIGludCBmaW5hbCwKLSAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorc3RhdGljIERXT1JECitkZWNvZGVfY29kZV9wYWdlX2ZsYWdzKFVJTlQgY29kZV9wYWdlKQogewotICAgIFB5X1VOSUNPREUgKnA7Ci0gICAgUHlfc3NpemVfdCBuOwotICAgIERXT1JEIHVzaXplOwotICAgIERXT1JEIGZsYWdzOwotCi0gICAgYXNzZXJ0KHNpemUgPj0gMCk7Ci0KLSAgICAvKiBjaGVjayBhbmQgaGFuZGxlICdlcnJvcnMnIGFyZyAqLwotICAgIGlmIChlcnJvcnM9PU5VTEwgfHwgc3RyY21wKGVycm9ycywgInN0cmljdCIpPT0wKQotICAgICAgICBmbGFncyA9IE1CX0VSUl9JTlZBTElEX0NIQVJTOwotICAgIGVsc2UgaWYgKHN0cmNtcChlcnJvcnMsICJpZ25vcmUiKT09MCkKLSAgICAgICAgZmxhZ3MgPSAwOwotICAgIGVsc2UgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJtYmNzIGVuY29kaW5nIGRvZXMgbm90IHN1cHBvcnQgZXJyb3JzPSclcyciLAotICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKTsKLSAgICAgICAgcmV0dXJuIC0xOworICAgIGlmIChjb2RlX3BhZ2UgPT0gQ1BfVVRGNykgeworICAgICAgICAvKiBUaGUgQ1BfVVRGNyBkZWNvZGVyIG9ubHkgc3VwcG9ydHMgZmxhZ3M9MCAqLworICAgICAgICByZXR1cm4gMDsKICAgICB9CisgICAgZWxzZQorICAgICAgICByZXR1cm4gTUJfRVJSX0lOVkFMSURfQ0hBUlM7Cit9CiAKLSAgICAvKiBTa2lwIHRyYWlsaW5nIGxlYWQtYnl0ZSB1bmxlc3MgJ2ZpbmFsJyBpcyBzZXQgKi8KLSAgICBpZiAoIWZpbmFsICYmIHNpemUgPj0gMSAmJiBpc19kYmNzX2xlYWRfYnl0ZShzLCBzaXplIC0gMSkpCi0gICAgICAgIC0tc2l6ZTsKKy8qCisgKiBEZWNvZGUgYSBieXRlIHN0cmluZyBmcm9tIGEgV2luZG93cyBjb2RlIHBhZ2UgaW50byB1bmljb2RlIG9iamVjdCBpbiBzdHJpY3QKKyAqIG1vZGUuCisgKgorICogUmV0dXJucyBjb25zdW1lZCBzaXplIGlmIHN1Y2NlZWQsIHJldHVybnMgLTIgb24gZGVjb2RlIGVycm9yLCBvciByYWlzZSBhCisgKiBXaW5kb3dzRXJyb3IgYW5kIHJldHVybnMgLTEgb24gb3RoZXIgZXJyb3IuCisgKi8KK3N0YXRpYyBpbnQKK2RlY29kZV9jb2RlX3BhZ2Vfc3RyaWN0KFVJTlQgY29kZV9wYWdlLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKip2LAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaW4sCisgICAgICAgICAgICAgICAgICAgICAgICBpbnQgaW5zaXplKQoreworICAgIGNvbnN0IERXT1JEIGZsYWdzID0gZGVjb2RlX2NvZGVfcGFnZV9mbGFncyhjb2RlX3BhZ2UpOworICAgIHdjaGFyX3QgKm91dDsKKyAgICBEV09SRCBvdXRzaXplOwogCiAgICAgLyogRmlyc3QgZ2V0IHRoZSBzaXplIG9mIHRoZSByZXN1bHQgKi8KLSAgICBpZiAoc2l6ZSA+IDApIHsKLSAgICAgICAgdXNpemUgPSBNdWx0aUJ5dGVUb1dpZGVDaGFyKENQX0FDUCwgZmxhZ3MsIHMsIHNpemUsIE5VTEwsIDApOwotICAgICAgICBpZiAodXNpemU9PTApCi0gICAgICAgICAgICBnb3RvIG1iY3NfZGVjb2RlX2Vycm9yOwotICAgIH0gZWxzZQotICAgICAgICB1c2l6ZSA9IDA7CisgICAgYXNzZXJ0KGluc2l6ZSA+IDApOworICAgIG91dHNpemUgPSBNdWx0aUJ5dGVUb1dpZGVDaGFyKGNvZGVfcGFnZSwgZmxhZ3MsIGluLCBpbnNpemUsIE5VTEwsIDApOworICAgIGlmIChvdXRzaXplIDw9IDApCisgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICBpZiAoKnYgPT0gTlVMTCkgewogICAgICAgICAvKiBDcmVhdGUgdW5pY29kZSBvYmplY3QgKi8KLSAgICAgICAgKnYgPSBfUHlVbmljb2RlX05ldyh1c2l6ZSk7CisgICAgICAgIC8qIEZJWE1FOiBkb24ndCB1c2UgX1B5VW5pY29kZV9OZXcoKSwgYnV0IGFsbG9jYXRlIGEgd2NoYXJfdCogYnVmZmVyICovCisgICAgICAgICp2ID0gKFB5T2JqZWN0KilfUHlVbmljb2RlX05ldyhvdXRzaXplKTsKICAgICAgICAgaWYgKCp2ID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIG4gPSAwOworICAgICAgICBvdXQgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqdik7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICAvKiBFeHRlbmQgdW5pY29kZSBvYmplY3QgKi8KLSAgICAgICAgbiA9IFB5VW5pY29kZV9HRVRfU0laRSgqdik7Ci0gICAgICAgIGlmIChfUHlVbmljb2RlX1Jlc2l6ZSh2LCBuICsgdXNpemUpIDwgMCkKKyAgICAgICAgUHlfc3NpemVfdCBuID0gUHlVbmljb2RlX0dFVF9TSVpFKCp2KTsKKyAgICAgICAgaWYgKHVuaWNvZGVfcmVzaXplKHYsIG4gKyBvdXRzaXplKSA8IDApCiAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIG91dCA9IFB5VW5pY29kZV9BU19VTklDT0RFKCp2KSArIG47CiAgICAgfQogCiAgICAgLyogRG8gdGhlIGNvbnZlcnNpb24gKi8KLSAgICBpZiAodXNpemUgPiAwKSB7Ci0gICAgICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqdikgKyBuOwotICAgICAgICBpZiAoMCA9PSBNdWx0aUJ5dGVUb1dpZGVDaGFyKENQX0FDUCwgZmxhZ3MsIHMsIHNpemUsIHAsIHVzaXplKSkgewotICAgICAgICAgICAgZ290byBtYmNzX2RlY29kZV9lcnJvcjsKLSAgICAgICAgfQotICAgIH0KLSAgICByZXR1cm4gc2l6ZTsKKyAgICBvdXRzaXplID0gTXVsdGlCeXRlVG9XaWRlQ2hhcihjb2RlX3BhZ2UsIGZsYWdzLCBpbiwgaW5zaXplLCBvdXQsIG91dHNpemUpOworICAgIGlmIChvdXRzaXplIDw9IDApCisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgcmV0dXJuIGluc2l6ZTsKIAotbWJjc19kZWNvZGVfZXJyb3I6Ci0gICAgLyogSWYgdGhlIGxhc3QgZXJyb3Igd2FzIEVSUk9SX05PX1VOSUNPREVfVFJBTlNMQVRJT04sIHRoZW4KLSAgICAgICB3ZSByYWlzZSBhIFVuaWNvZGVEZWNvZGVFcnJvciAtIGVsc2UgaXQgaXMgYSAnZ2VuZXJpYycKLSAgICAgICB3aW5kb3dzIGVycm9yCi0gICAgICovCi0gICAgaWYgKEdldExhc3RFcnJvcigpPT1FUlJPUl9OT19VTklDT0RFX1RSQU5TTEFUSU9OKSB7Ci0gICAgICAgIC8qIElkZWFsbHksIHdlIHNob3VsZCBnZXQgcmVhc29uIGZyb20gRm9ybWF0TWVzc2FnZSAtIHRoaXMKLSAgICAgICAgICAgaXMgdGhlIFdpbmRvd3MgMjAwMCBFbmdsaXNoIHZlcnNpb24gb2YgdGhlIG1lc3NhZ2UKLSAgICAgICAgKi8KLSAgICAgICAgUHlPYmplY3QgKmV4YyA9IE5VTEw7Ci0gICAgICAgIGNvbnN0IGNoYXIgKnJlYXNvbiA9ICJObyBtYXBwaW5nIGZvciB0aGUgVW5pY29kZSBjaGFyYWN0ZXIgZXhpc3RzICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImluIHRoZSB0YXJnZXQgbXVsdGktYnl0ZSBjb2RlIHBhZ2UuIjsKLSAgICAgICAgbWFrZV9kZWNvZGVfZXhjZXB0aW9uKCZleGMsICJtYmNzIiwgcywgc2l6ZSwgMCwgMCwgcmVhc29uKTsKLSAgICAgICAgaWYgKGV4YyAhPSBOVUxMKSB7Ci0gICAgICAgICAgICBQeUNvZGVjX1N0cmljdEVycm9ycyhleGMpOwotICAgICAgICAgICAgUHlfREVDUkVGKGV4Yyk7Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgewotICAgICAgICBQeUVycl9TZXRGcm9tV2luZG93c0VycldpdGhGaWxlbmFtZSgwLCBOVUxMKTsKLSAgICB9CitlcnJvcjoKKyAgICBpZiAoR2V0TGFzdEVycm9yKCkgPT0gRVJST1JfTk9fVU5JQ09ERV9UUkFOU0xBVElPTikKKyAgICAgICAgcmV0dXJuIC0yOworICAgIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKDApOwogICAgIHJldHVybiAtMTsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9EZWNvZGVNQkNTU3RhdGVmdWwoY29uc3QgY2hhciAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkKQorLyoKKyAqIERlY29kZSBhIGJ5dGUgc3RyaW5nIGZyb20gYSBjb2RlIHBhZ2UgaW50byB1bmljb2RlIG9iamVjdCB3aXRoIGFuIGVycm9yCisgKiBoYW5kbGVyLgorICoKKyAqIFJldHVybnMgY29uc3VtZWQgc2l6ZSBpZiBzdWNjZWVkLCBvciByYWlzZSBhIFdpbmRvd3NFcnJvciBvcgorICogVW5pY29kZURlY29kZUVycm9yIGV4Y2VwdGlvbiBhbmQgcmV0dXJucyAtMSBvbiBlcnJvci4KKyAqLworc3RhdGljIGludAorZGVjb2RlX2NvZGVfcGFnZV9lcnJvcnMoVUlOVCBjb2RlX3BhZ2UsCisgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnYsCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICppbiwgY29uc3QgaW50IHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp2ID0gTlVMTDsKLSAgICBpbnQgZG9uZTsKKyAgICBjb25zdCBjaGFyICpzdGFydGluID0gaW47CisgICAgY29uc3QgY2hhciAqZW5kaW4gPSBpbiArIHNpemU7CisgICAgY29uc3QgRFdPUkQgZmxhZ3MgPSBkZWNvZGVfY29kZV9wYWdlX2ZsYWdzKGNvZGVfcGFnZSk7CisgICAgLyogSWRlYWxseSwgd2Ugc2hvdWxkIGdldCByZWFzb24gZnJvbSBGb3JtYXRNZXNzYWdlLiBUaGlzIGlzIHRoZSBXaW5kb3dzCisgICAgICAgMjAwMCBFbmdsaXNoIHZlcnNpb24gb2YgdGhlIG1lc3NhZ2UuICovCisgICAgY29uc3QgY2hhciAqcmVhc29uID0gIk5vIG1hcHBpbmcgZm9yIHRoZSBVbmljb2RlIGNoYXJhY3RlciBleGlzdHMgIgorICAgICAgICAgICAgICAgICAgICAgICAgICJpbiB0aGUgdGFyZ2V0IGNvZGUgcGFnZS4iOworICAgIC8qIGVhY2ggc3RlcCBjYW5ub3QgZGVjb2RlIG1vcmUgdGhhbiAxIGNoYXJhY3RlciwgYnV0IGEgY2hhcmFjdGVyIGNhbiBiZQorICAgICAgIHJlcHJlc2VudGVkIGFzIGEgc3Vycm9nYXRlIHBhaXIgKi8KKyAgICB3Y2hhcl90IGJ1ZmZlclsyXSwgKnN0YXJ0b3V0LCAqb3V0OworICAgIGludCBpbnNpemUsIG91dHNpemU7CisgICAgUHlPYmplY3QgKmVycm9ySGFuZGxlciA9IE5VTEw7CisgICAgUHlPYmplY3QgKmV4YyA9IE5VTEw7CisgICAgUHlPYmplY3QgKmVuY29kaW5nX29iaiA9IE5VTEw7CisgICAgY2hhciAqZW5jb2Rpbmc7CisgICAgRFdPUkQgZXJyOworICAgIGludCByZXQgPSAtMTsKKworICAgIGFzc2VydChzaXplID4gMCk7CisKKyAgICBlbmNvZGluZyA9IGNvZGVfcGFnZV9uYW1lKGNvZGVfcGFnZSwgJmVuY29kaW5nX29iaik7CisgICAgaWYgKGVuY29kaW5nID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGlmIChlcnJvcnMgPT0gTlVMTCB8fCBzdHJjbXAoZXJyb3JzLCAic3RyaWN0IikgPT0gMCkgeworICAgICAgICAvKiBUaGUgbGFzdCBlcnJvciB3YXMgRVJST1JfTk9fVU5JQ09ERV9UUkFOU0xBVElPTiwgdGhlbiB3ZSByYWlzZSBhCisgICAgICAgICAgIFVuaWNvZGVEZWNvZGVFcnJvci4gKi8KKyAgICAgICAgbWFrZV9kZWNvZGVfZXhjZXB0aW9uKCZleGMsIGVuY29kaW5nLCBpbiwgc2l6ZSwgMCwgMCwgcmVhc29uKTsKKyAgICAgICAgaWYgKGV4YyAhPSBOVUxMKSB7CisgICAgICAgICAgICBQeUNvZGVjX1N0cmljdEVycm9ycyhleGMpOworICAgICAgICAgICAgUHlfQ0xFQVIoZXhjKTsKKyAgICAgICAgfQorICAgICAgICBnb3RvIGVycm9yOworICAgIH0KKworICAgIGlmICgqdiA9PSBOVUxMKSB7CisgICAgICAgIC8qIENyZWF0ZSB1bmljb2RlIG9iamVjdCAqLworICAgICAgICBpZiAoc2l6ZSA+IFBZX1NTSVpFX1RfTUFYIC8gKFB5X3NzaXplX3QpUHlfQVJSQVlfTEVOR1RIKGJ1ZmZlcikpIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgICAgIC8qIEZJWE1FOiBkb24ndCB1c2UgX1B5VW5pY29kZV9OZXcoKSwgYnV0IGFsbG9jYXRlIGEgd2NoYXJfdCogYnVmZmVyICovCisgICAgICAgICp2ID0gKFB5T2JqZWN0KilfUHlVbmljb2RlX05ldyhzaXplICogUHlfQVJSQVlfTEVOR1RIKGJ1ZmZlcikpOworICAgICAgICBpZiAoKnYgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIHN0YXJ0b3V0ID0gUHlVbmljb2RlX0FTX1VOSUNPREUoKnYpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgLyogRXh0ZW5kIHVuaWNvZGUgb2JqZWN0ICovCisgICAgICAgIFB5X3NzaXplX3QgbiA9IFB5VW5pY29kZV9HRVRfU0laRSgqdik7CisgICAgICAgIGlmIChzaXplID4gKFBZX1NTSVpFX1RfTUFYIC0gbikgLyAoUHlfc3NpemVfdClQeV9BUlJBWV9MRU5HVEgoYnVmZmVyKSkgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIH0KKyAgICAgICAgaWYgKHVuaWNvZGVfcmVzaXplKHYsIG4gKyBzaXplICogUHlfQVJSQVlfTEVOR1RIKGJ1ZmZlcikpIDwgMCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIHN0YXJ0b3V0ID0gUHlVbmljb2RlX0FTX1VOSUNPREUoKnYpICsgbjsKKyAgICB9CisKKyAgICAvKiBEZWNvZGUgdGhlIGJ5dGUgc3RyaW5nIGNoYXJhY3RlciBwZXIgY2hhcmFjdGVyICovCisgICAgb3V0ID0gc3RhcnRvdXQ7CisgICAgd2hpbGUgKGluIDwgZW5kaW4pCisgICAgeworICAgICAgICAvKiBEZWNvZGUgYSBjaGFyYWN0ZXIgKi8KKyAgICAgICAgaW5zaXplID0gMTsKKyAgICAgICAgZG8KKyAgICAgICAgeworICAgICAgICAgICAgb3V0c2l6ZSA9IE11bHRpQnl0ZVRvV2lkZUNoYXIoY29kZV9wYWdlLCBmbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluLCBpbnNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIsIFB5X0FSUkFZX0xFTkdUSChidWZmZXIpKTsKKyAgICAgICAgICAgIGlmIChvdXRzaXplID4gMCkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGVyciA9IEdldExhc3RFcnJvcigpOworICAgICAgICAgICAgaWYgKGVyciAhPSBFUlJPUl9OT19VTklDT0RFX1RSQU5TTEFUSU9OCisgICAgICAgICAgICAgICAgJiYgZXJyICE9IEVSUk9SX0lOU1VGRklDSUVOVF9CVUZGRVIpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnIoMCk7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGluc2l6ZSsrOworICAgICAgICB9CisgICAgICAgIC8qIDQ9bWF4aW11bSBsZW5ndGggb2YgYSBVVEYtOCBzZXF1ZW5jZSAqLworICAgICAgICB3aGlsZSAoaW5zaXplIDw9IDQgJiYgKGluICsgaW5zaXplKSA8PSBlbmRpbik7CisKKyAgICAgICAgaWYgKG91dHNpemUgPD0gMCkgeworICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydGlucG9zLCBlbmRpbnBvcywgb3V0cG9zOworCisgICAgICAgICAgICBzdGFydGlucG9zID0gaW4gLSBzdGFydGluOworICAgICAgICAgICAgZW5kaW5wb3MgPSBzdGFydGlucG9zICsgMTsKKyAgICAgICAgICAgIG91dHBvcyA9IG91dCAtIFB5VW5pY29kZV9BU19VTklDT0RFKCp2KTsKKyAgICAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKKyAgICAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAorICAgICAgICAgICAgICAgICAgICBlbmNvZGluZywgcmVhc29uLAorICAgICAgICAgICAgICAgICAgICAmc3RhcnRpbiwgJmVuZGluLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmaW4sCisgICAgICAgICAgICAgICAgICAgIHYsICZvdXRwb3MpKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBvdXQgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqdikgKyBvdXRwb3M7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBpbiArPSBpbnNpemU7CisgICAgICAgICAgICBtZW1jcHkob3V0LCBidWZmZXIsIG91dHNpemUgKiBzaXplb2Yod2NoYXJfdCkpOworICAgICAgICAgICAgb3V0ICs9IG91dHNpemU7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvKiB3cml0ZSBhIE5VTCBjaGFyYWN0ZXIgYXQgdGhlIGVuZCAqLworICAgICpvdXQgPSAwOworCisgICAgLyogRXh0ZW5kIHVuaWNvZGUgb2JqZWN0ICovCisgICAgb3V0c2l6ZSA9IG91dCAtIHN0YXJ0b3V0OworICAgIGFzc2VydChvdXRzaXplIDw9IFB5VW5pY29kZV9XU1RSX0xFTkdUSCgqdikpOworICAgIGlmICh1bmljb2RlX3Jlc2l6ZSh2LCBvdXRzaXplKSA8IDApCisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgcmV0ID0gc2l6ZTsKKworZXJyb3I6CisgICAgUHlfWERFQ1JFRihlbmNvZGluZ19vYmopOworICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKKyAgICBQeV9YREVDUkVGKGV4Yyk7CisgICAgcmV0dXJuIHJldDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2RlY29kZV9jb2RlX3BhZ2Vfc3RhdGVmdWwoaW50IGNvZGVfcGFnZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcywgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsIFB5X3NzaXplX3QgKmNvbnN1bWVkKQoreworICAgIFB5T2JqZWN0ICp2ID0gTlVMTDsKKyAgICBpbnQgY2h1bmtfc2l6ZSwgZmluYWwsIGNvbnZlcnRlZCwgZG9uZTsKKworICAgIGlmIChjb2RlX3BhZ2UgPCAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiaW52YWxpZCBjb2RlIHBhZ2UgbnVtYmVyIik7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KIAogICAgIGlmIChjb25zdW1lZCkKICAgICAgICAgKmNvbnN1bWVkID0gMDsKIAorICAgIGRvCisgICAgewogI2lmZGVmIE5FRURfUkVUUlkKLSAgcmV0cnk6Ci0gICAgaWYgKHNpemUgPiBJTlRfTUFYKQotICAgICAgICBkb25lID0gZGVjb2RlX21iY3MoJnYsIHMsIElOVF9NQVgsIDAsIGVycm9ycyk7Ci0gICAgZWxzZQorICAgICAgICBpZiAoc2l6ZSA+IElOVF9NQVgpIHsKKyAgICAgICAgICAgIGNodW5rX3NpemUgPSBJTlRfTUFYOworICAgICAgICAgICAgZmluYWwgPSAwOworICAgICAgICAgICAgZG9uZSA9IDA7CisgICAgICAgIH0KKyAgICAgICAgZWxzZQogI2VuZGlmCi0gICAgICAgIGRvbmUgPSBkZWNvZGVfbWJjcygmdiwgcywgKGludClzaXplLCAhY29uc3VtZWQsIGVycm9ycyk7CisgICAgICAgIHsKKyAgICAgICAgICAgIGNodW5rX3NpemUgPSAoaW50KXNpemU7CisgICAgICAgICAgICBmaW5hbCA9IChjb25zdW1lZCA9PSBOVUxMKTsKKyAgICAgICAgICAgIGRvbmUgPSAxOworICAgICAgICB9CiAKLSAgICBpZiAoZG9uZSA8IDApIHsKLSAgICAgICAgUHlfWERFQ1JFRih2KTsKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQorICAgICAgICAvKiBTa2lwIHRyYWlsaW5nIGxlYWQtYnl0ZSB1bmxlc3MgJ2ZpbmFsJyBpcyBzZXQgKi8KKyAgICAgICAgaWYgKCFmaW5hbCAmJiBpc19kYmNzX2xlYWRfYnl0ZShjb2RlX3BhZ2UsIHMsIGNodW5rX3NpemUgLSAxKSkKKyAgICAgICAgICAgIC0tY2h1bmtfc2l6ZTsKIAotICAgIGlmIChjb25zdW1lZCkKLSAgICAgICAgKmNvbnN1bWVkICs9IGRvbmU7CisgICAgICAgIGlmIChjaHVua19zaXplID09IDAgJiYgZG9uZSkgeworICAgICAgICAgICAgaWYgKHYgIT0gTlVMTCkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKKyAgICAgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgICAgICB9CiAKLSNpZmRlZiBORUVEX1JFVFJZCi0gICAgaWYgKHNpemUgPiBJTlRfTUFYKSB7Ci0gICAgICAgIHMgKz0gZG9uZTsKLSAgICAgICAgc2l6ZSAtPSBkb25lOwotICAgICAgICBnb3RvIHJldHJ5OwotICAgIH0KLSNlbmRpZgogCi0gICAgcmV0dXJuIChQeU9iamVjdCAqKXY7CisgICAgICAgIGNvbnZlcnRlZCA9IGRlY29kZV9jb2RlX3BhZ2Vfc3RyaWN0KGNvZGVfcGFnZSwgJnYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMsIGNodW5rX3NpemUpOworICAgICAgICBpZiAoY29udmVydGVkID09IC0yKQorICAgICAgICAgICAgY29udmVydGVkID0gZGVjb2RlX2NvZGVfcGFnZV9lcnJvcnMoY29kZV9wYWdlLCAmdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMsIGNodW5rX3NpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcnMpOworICAgICAgICBhc3NlcnQoY29udmVydGVkICE9IDApOworCisgICAgICAgIGlmIChjb252ZXJ0ZWQgPCAwKSB7CisgICAgICAgICAgICBQeV9YREVDUkVGKHYpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKworICAgICAgICBpZiAoY29uc3VtZWQpCisgICAgICAgICAgICAqY29uc3VtZWQgKz0gY29udmVydGVkOworCisgICAgICAgIHMgKz0gY29udmVydGVkOworICAgICAgICBzaXplIC09IGNvbnZlcnRlZDsKKyAgICB9IHdoaWxlICghZG9uZSk7CisKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHQodik7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlTUJDUyhjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlQ29kZVBhZ2VTdGF0ZWZ1bChpbnQgY29kZV9wYWdlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkKQoreworICAgIHJldHVybiBkZWNvZGVfY29kZV9wYWdlX3N0YXRlZnVsKGNvZGVfcGFnZSwgcywgc2l6ZSwgZXJyb3JzLCBjb25zdW1lZCk7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9EZWNvZGVNQkNTU3RhdGVmdWwoY29uc3QgY2hhciAqcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKmNvbnN1bWVkKQoreworICAgIHJldHVybiBkZWNvZGVfY29kZV9wYWdlX3N0YXRlZnVsKENQX0FDUCwgcywgc2l6ZSwgZXJyb3JzLCBjb25zdW1lZCk7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9EZWNvZGVNQkNTKGNvbnN0IGNoYXIgKnMsCisgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVNQkNTU3RhdGVmdWwocywgc2l6ZSwgZXJyb3JzLCBOVUxMKTsKIH0KIAorc3RhdGljIERXT1JECitlbmNvZGVfY29kZV9wYWdlX2ZsYWdzKFVJTlQgY29kZV9wYWdlLCBjb25zdCBjaGFyICplcnJvcnMpCit7CisgICAgaWYgKGNvZGVfcGFnZSA9PSBDUF9VVEY4KSB7CisgICAgICAgIGlmICh3aW52ZXIuZHdNYWpvclZlcnNpb24gPj0gNikKKyAgICAgICAgICAgIC8qIENQX1VURjggc3VwcG9ydHMgV0NfRVJSX0lOVkFMSURfQ0hBUlMgb24gV2luZG93cyBWaXN0YQorICAgICAgICAgICAgICAgYW5kIGxhdGVyICovCisgICAgICAgICAgICByZXR1cm4gV0NfRVJSX0lOVkFMSURfQ0hBUlM7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIC8qIENQX1VURjggb25seSBzdXBwb3J0cyBmbGFncz0wIG9uIFdpbmRvd3Mgb2xkZXIgdGhhbiBWaXN0YSAqLworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIGVsc2UgaWYgKGNvZGVfcGFnZSA9PSBDUF9VVEY3KSB7CisgICAgICAgIC8qIENQX1VURjcgb25seSBzdXBwb3J0cyBmbGFncz0wICovCisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaWYgKGVycm9ycyAhPSBOVUxMICYmIHN0cmNtcChlcnJvcnMsICJyZXBsYWNlIikgPT0gMCkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBlbHNlCisgICAgICAgICAgICByZXR1cm4gV0NfTk9fQkVTVF9GSVRfQ0hBUlM7CisgICAgfQorfQorCiAvKgotICogQ29udmVydCB1bmljb2RlIGludG8gc3RyaW5nIG9iamVjdCAoTUJDUykuCi0gKiBSZXR1cm5zIDAgaWYgc3VjY2VlZCwgLTEgb3RoZXJ3aXNlLgorICogRW5jb2RlIGEgVW5pY29kZSBzdHJpbmcgdG8gYSBXaW5kb3dzIGNvZGUgcGFnZSBpbnRvIGEgYnl0ZSBzdHJpbmcgaW4gc3RyaWN0CisgKiBtb2RlLgorICoKKyAqIFJldHVybnMgY29uc3VtZWQgY2hhcmFjdGVycyBpZiBzdWNjZWVkLCByZXR1cm5zIC0yIG9uIGVuY29kZSBlcnJvciwgb3IgcmFpc2UKKyAqIGEgV2luZG93c0Vycm9yIGFuZCByZXR1cm5zIC0xIG9uIG90aGVyIGVycm9yLgogICovCi1zdGF0aWMgaW50IGVuY29kZV9tYmNzKFB5T2JqZWN0ICoqcmVwciwKLSAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUHlfVU5JQ09ERSAqcCwgLyogdW5pY29kZSAqLwotICAgICAgICAgICAgICAgICAgICAgICBpbnQgc2l6ZSwgLyogc2l6ZSBvZiB1bmljb2RlICovCi0gICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIGVycm9ycykKK3N0YXRpYyBpbnQKK2VuY29kZV9jb2RlX3BhZ2Vfc3RyaWN0KFVJTlQgY29kZV9wYWdlLCBQeU9iamVjdCAqKm91dGJ5dGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsIFB5X3NzaXplX3Qgb2Zmc2V0LCBpbnQgbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciogZXJyb3JzKQogewogICAgIEJPT0wgdXNlZERlZmF1bHRDaGFyID0gRkFMU0U7Ci0gICAgQk9PTCAqcHVzZWREZWZhdWx0Q2hhcjsKLSAgICBpbnQgbWJjc3NpemU7Ci0gICAgUHlfc3NpemVfdCBuOworICAgIEJPT0wgKnB1c2VkRGVmYXVsdENoYXIgPSAmdXNlZERlZmF1bHRDaGFyOworICAgIGludCBvdXRzaXplOwogICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOwotICAgIERXT1JEIGZsYWdzOworICAgIHdjaGFyX3QgKnA7CisgICAgUHlfc3NpemVfdCBzaXplOworICAgIGNvbnN0IERXT1JEIGZsYWdzID0gZW5jb2RlX2NvZGVfcGFnZV9mbGFncyhjb2RlX3BhZ2UsIE5VTEwpOworICAgIGNoYXIgKm91dDsKKyAgICAvKiBDcmVhdGUgYSBzdWJzdHJpbmcgc28gdGhhdCB3ZSBjYW4gZ2V0IHRoZSBVVEYtMTYgcmVwcmVzZW50YXRpb24KKyAgICAgICBvZiBqdXN0IHRoZSBzbGljZSB1bmRlciBjb25zaWRlcmF0aW9uLiAqLworICAgIFB5T2JqZWN0ICpzdWJzdHJpbmc7CiAKLSAgICBhc3NlcnQoc2l6ZSA+PSAwKTsKKyAgICBhc3NlcnQobGVuID4gMCk7CiAKLSAgICAvKiBjaGVjayBhbmQgaGFuZGxlICdlcnJvcnMnIGFyZyAqLwotICAgIGlmIChlcnJvcnM9PU5VTEwgfHwgc3RyY21wKGVycm9ycywgInN0cmljdCIpPT0wKSB7Ci0gICAgICAgIGZsYWdzID0gV0NfTk9fQkVTVF9GSVRfQ0hBUlM7CisgICAgaWYgKGNvZGVfcGFnZSAhPSBDUF9VVEY4ICYmIGNvZGVfcGFnZSAhPSBDUF9VVEY3KQogICAgICAgICBwdXNlZERlZmF1bHRDaGFyID0gJnVzZWREZWZhdWx0Q2hhcjsKLSAgICB9IGVsc2UgaWYgKHN0cmNtcChlcnJvcnMsICJyZXBsYWNlIik9PTApIHsKLSAgICAgICAgZmxhZ3MgPSAwOworICAgIGVsc2UKICAgICAgICAgcHVzZWREZWZhdWx0Q2hhciA9IE5VTEw7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICJtYmNzIGVuY29kaW5nIGRvZXMgbm90IHN1cHBvcnQgZXJyb3JzPSclcyciLAotICAgICAgICAgICAgICAgICAgICAgIGVycm9ycyk7Ci0gICAgICAgICByZXR1cm4gLTE7CisKKyAgICBzdWJzdHJpbmcgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKHVuaWNvZGUsIG9mZnNldCwgb2Zmc2V0K2xlbik7CisgICAgaWYgKHN1YnN0cmluZyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisgICAgcCA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKHN1YnN0cmluZywgJnNpemUpOworICAgIGlmIChwID09IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKHN1YnN0cmluZyk7CisgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAKICAgICAvKiBGaXJzdCBnZXQgdGhlIHNpemUgb2YgdGhlIHJlc3VsdCAqLwotICAgIGlmIChzaXplID4gMCkgewotICAgICAgICBtYmNzc2l6ZSA9IFdpZGVDaGFyVG9NdWx0aUJ5dGUoQ1BfQUNQLCBmbGFncywgcCwgc2l6ZSwgTlVMTCwgMCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIHB1c2VkRGVmYXVsdENoYXIpOwotICAgICAgICBpZiAobWJjc3NpemUgPT0gMCkgewotICAgICAgICAgICAgUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnJXaXRoRmlsZW5hbWUoMCwgTlVMTCk7Ci0gICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgIH0KLSAgICAgICAgLyogSWYgd2UgdXNlZCBhIGRlZmF1bHQgY2hhciwgdGhlbiB3ZSBmYWlsZWQhICovCi0gICAgICAgIGlmIChwdXNlZERlZmF1bHRDaGFyICYmICpwdXNlZERlZmF1bHRDaGFyKQotICAgICAgICAgICAgZ290byBtYmNzX2VuY29kZV9lcnJvcjsKLSAgICB9IGVsc2UgewotICAgICAgICBtYmNzc2l6ZSA9IDA7CisgICAgb3V0c2l6ZSA9IFdpZGVDaGFyVG9NdWx0aUJ5dGUoY29kZV9wYWdlLCBmbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwLCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgcHVzZWREZWZhdWx0Q2hhcik7CisgICAgaWYgKG91dHNpemUgPD0gMCkKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICAvKiBJZiB3ZSB1c2VkIGEgZGVmYXVsdCBjaGFyLCB0aGVuIHdlIGZhaWxlZCEgKi8KKyAgICBpZiAocHVzZWREZWZhdWx0Q2hhciAmJiAqcHVzZWREZWZhdWx0Q2hhcikgeworICAgICAgICBQeV9ERUNSRUYoc3Vic3RyaW5nKTsKKyAgICAgICAgcmV0dXJuIC0yOwogICAgIH0KIAotICAgIGlmICgqcmVwciA9PSBOVUxMKSB7CisgICAgaWYgKCpvdXRieXRlcyA9PSBOVUxMKSB7CiAgICAgICAgIC8qIENyZWF0ZSBzdHJpbmcgb2JqZWN0ICovCi0gICAgICAgICpyZXByID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCBtYmNzc2l6ZSk7Ci0gICAgICAgIGlmICgqcmVwciA9PSBOVUxMKQorICAgICAgICAqb3V0Ynl0ZXMgPSBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIG91dHNpemUpOworICAgICAgICBpZiAoKm91dGJ5dGVzID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOwogICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICBuID0gMDsKKyAgICAgICAgfQorICAgICAgICBvdXQgPSBQeUJ5dGVzX0FTX1NUUklORygqb3V0Ynl0ZXMpOwogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgLyogRXh0ZW5kIHN0cmluZyBvYmplY3QgKi8KLSAgICAgICAgbiA9IFB5Qnl0ZXNfU2l6ZSgqcmVwcik7Ci0gICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUocmVwciwgbiArIG1iY3NzaXplKSA8IDApCisgICAgICAgIGNvbnN0IFB5X3NzaXplX3QgbiA9IFB5Qnl0ZXNfU2l6ZSgqb3V0Ynl0ZXMpOworICAgICAgICBpZiAob3V0c2l6ZSA+IFBZX1NTSVpFX1RfTUFYIC0gbikgeworICAgICAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOwogICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUob3V0Ynl0ZXMsIG4gKyBvdXRzaXplKSA8IDApIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIG91dCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKCpvdXRieXRlcykgKyBuOwogICAgIH0KIAogICAgIC8qIERvIHRoZSBjb252ZXJzaW9uICovCi0gICAgaWYgKHNpemUgPiAwKSB7Ci0gICAgICAgIGNoYXIgKnMgPSBQeUJ5dGVzX0FTX1NUUklORygqcmVwcikgKyBuOwotICAgICAgICBpZiAoMCA9PSBXaWRlQ2hhclRvTXVsdGlCeXRlKENQX0FDUCwgZmxhZ3MsIHAsIHNpemUsIHMsIG1iY3NzaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIHB1c2VkRGVmYXVsdENoYXIpKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRGcm9tV2luZG93c0VycldpdGhGaWxlbmFtZSgwLCBOVUxMKTsKLSAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgfQotICAgICAgICBpZiAocHVzZWREZWZhdWx0Q2hhciAmJiAqcHVzZWREZWZhdWx0Q2hhcikKLSAgICAgICAgICAgIGdvdG8gbWJjc19lbmNvZGVfZXJyb3I7Ci0gICAgfQorICAgIG91dHNpemUgPSBXaWRlQ2hhclRvTXVsdGlCeXRlKGNvZGVfcGFnZSwgZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcCwgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXQsIG91dHNpemUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgcHVzZWREZWZhdWx0Q2hhcik7CisgICAgUHlfQ0xFQVIoc3Vic3RyaW5nKTsKKyAgICBpZiAob3V0c2l6ZSA8PSAwKQorICAgICAgICBnb3RvIGVycm9yOworICAgIGlmIChwdXNlZERlZmF1bHRDaGFyICYmICpwdXNlZERlZmF1bHRDaGFyKQorICAgICAgICByZXR1cm4gLTI7CiAgICAgcmV0dXJuIDA7CiAKLW1iY3NfZW5jb2RlX2Vycm9yOgotICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oJmV4YywgIm1iY3MiLCBwLCBzaXplLCAwLCAwLCAiaW52YWxpZCBjaGFyYWN0ZXIiKTsKLSAgICBQeV9YREVDUkVGKGV4Yyk7CitlcnJvcjoKKyAgICBQeV9YREVDUkVGKHN1YnN0cmluZyk7CisgICAgaWYgKEdldExhc3RFcnJvcigpID09IEVSUk9SX05PX1VOSUNPREVfVFJBTlNMQVRJT04pCisgICAgICAgIHJldHVybiAtMjsKKyAgICBQeUVycl9TZXRGcm9tV2luZG93c0VycigwKTsKICAgICByZXR1cm4gLTE7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRW5jb2RlTUJDUyhjb25zdCBQeV9VTklDT0RFICpwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCisvKgorICogRW5jb2RlIGEgVW5pY29kZSBzdHJpbmcgdG8gYSBXaW5kb3dzIGNvZGUgcGFnZSBpbnRvIGEgYnl0ZSBzdHJpbmcgdXNpbmcgYQorICogZXJyb3IgaGFuZGxlci4KKyAqCisgKiBSZXR1cm5zIGNvbnN1bWVkIGNoYXJhY3RlcnMgaWYgc3VjY2VlZCwgb3IgcmFpc2UgYSBXaW5kb3dzRXJyb3IgYW5kIHJldHVybnMKKyAqIC0xIG9uIG90aGVyIGVycm9yLgorICovCitzdGF0aWMgaW50CitlbmNvZGVfY29kZV9wYWdlX2Vycm9ycyhVSU5UIGNvZGVfcGFnZSwgUHlPYmplY3QgKipvdXRieXRlcywKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp1bmljb2RlLCBQeV9zc2l6ZV90IHVuaWNvZGVfb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpbnNpemUsIGNvbnN0IGNoYXIqIGVycm9ycykKIHsKLSAgICBQeU9iamVjdCAqcmVwciA9IE5VTEw7Ci0gICAgaW50IHJldDsKKyAgICBjb25zdCBEV09SRCBmbGFncyA9IGVuY29kZV9jb2RlX3BhZ2VfZmxhZ3MoY29kZV9wYWdlLCBlcnJvcnMpOworICAgIFB5X3NzaXplX3QgcG9zID0gdW5pY29kZV9vZmZzZXQ7CisgICAgUHlfc3NpemVfdCBlbmRpbiA9IHVuaWNvZGVfb2Zmc2V0ICsgaW5zaXplOworICAgIC8qIElkZWFsbHksIHdlIHNob3VsZCBnZXQgcmVhc29uIGZyb20gRm9ybWF0TWVzc2FnZS4gVGhpcyBpcyB0aGUgV2luZG93cworICAgICAgIDIwMDAgRW5nbGlzaCB2ZXJzaW9uIG9mIHRoZSBtZXNzYWdlLiAqLworICAgIGNvbnN0IGNoYXIgKnJlYXNvbiA9ICJpbnZhbGlkIGNoYXJhY3RlciI7CisgICAgLyogND1tYXhpbXVtIGxlbmd0aCBvZiBhIFVURi04IHNlcXVlbmNlICovCisgICAgY2hhciBidWZmZXJbNF07CisgICAgQk9PTCB1c2VkRGVmYXVsdENoYXIgPSBGQUxTRSwgKnB1c2VkRGVmYXVsdENoYXI7CisgICAgUHlfc3NpemVfdCBvdXRzaXplOworICAgIGNoYXIgKm91dDsKKyAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKKyAgICBQeU9iamVjdCAqZXhjID0gTlVMTDsKKyAgICBQeU9iamVjdCAqZW5jb2Rpbmdfb2JqID0gTlVMTDsKKyAgICBjaGFyICplbmNvZGluZzsKKyAgICBQeV9zc2l6ZV90IG5ld3BvcywgbmV3b3V0c2l6ZTsKKyAgICBQeU9iamVjdCAqcmVwOworICAgIGludCByZXQgPSAtMTsKIAotI2lmZGVmIE5FRURfUkVUUlkKLSAgcmV0cnk6Ci0gICAgaWYgKHNpemUgPiBJTlRfTUFYKQotICAgICAgICByZXQgPSBlbmNvZGVfbWJjcygmcmVwciwgcCwgSU5UX01BWCwgZXJyb3JzKTsKKyAgICBhc3NlcnQoaW5zaXplID4gMCk7CisKKyAgICBlbmNvZGluZyA9IGNvZGVfcGFnZV9uYW1lKGNvZGVfcGFnZSwgJmVuY29kaW5nX29iaik7CisgICAgaWYgKGVuY29kaW5nID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIGlmIChlcnJvcnMgPT0gTlVMTCB8fCBzdHJjbXAoZXJyb3JzLCAic3RyaWN0IikgPT0gMCkgeworICAgICAgICAvKiBUaGUgbGFzdCBlcnJvciB3YXMgRVJST1JfTk9fVU5JQ09ERV9UUkFOU0xBVElPTiwKKyAgICAgICAgICAgdGhlbiB3ZSByYWlzZSBhIFVuaWNvZGVFbmNvZGVFcnJvci4gKi8KKyAgICAgICAgbWFrZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsIGVuY29kaW5nLCB1bmljb2RlLCAwLCAwLCByZWFzb24pOworICAgICAgICBpZiAoZXhjICE9IE5VTEwpIHsKKyAgICAgICAgICAgIFB5Q29kZWNfU3RyaWN0RXJyb3JzKGV4Yyk7CisgICAgICAgICAgICBQeV9ERUNSRUYoZXhjKTsKKyAgICAgICAgfQorICAgICAgICBQeV9YREVDUkVGKGVuY29kaW5nX29iaik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBpZiAoY29kZV9wYWdlICE9IENQX1VURjggJiYgY29kZV9wYWdlICE9IENQX1VURjcpCisgICAgICAgIHB1c2VkRGVmYXVsdENoYXIgPSAmdXNlZERlZmF1bHRDaGFyOwogICAgIGVsc2UKLSNlbmRpZgotICAgICAgICByZXQgPSBlbmNvZGVfbWJjcygmcmVwciwgcCwgKGludClzaXplLCBlcnJvcnMpOworICAgICAgICBwdXNlZERlZmF1bHRDaGFyID0gTlVMTDsKIAotICAgIGlmIChyZXQgPCAwKSB7Ci0gICAgICAgIFB5X1hERUNSRUYocmVwcik7CisgICAgaWYgKFB5X0FSUkFZX0xFTkdUSChidWZmZXIpID4gUFlfU1NJWkVfVF9NQVggLyBpbnNpemUpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICB9CisgICAgb3V0c2l6ZSA9IGluc2l6ZSAqIFB5X0FSUkFZX0xFTkdUSChidWZmZXIpOworCisgICAgaWYgKCpvdXRieXRlcyA9PSBOVUxMKSB7CisgICAgICAgIC8qIENyZWF0ZSBzdHJpbmcgb2JqZWN0ICovCisgICAgICAgICpvdXRieXRlcyA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgb3V0c2l6ZSk7CisgICAgICAgIGlmICgqb3V0Ynl0ZXMgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIG91dCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKCpvdXRieXRlcyk7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICAvKiBFeHRlbmQgc3RyaW5nIG9iamVjdCAqLworICAgICAgICBQeV9zc2l6ZV90IG4gPSBQeUJ5dGVzX1NpemUoKm91dGJ5dGVzKTsKKyAgICAgICAgaWYgKG4gPiBQWV9TU0laRV9UX01BWCAtIG91dHNpemUpIHsKKyAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUob3V0Ynl0ZXMsIG4gKyBvdXRzaXplKSA8IDApCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICBvdXQgPSBQeUJ5dGVzX0FTX1NUUklORygqb3V0Ynl0ZXMpICsgbjsKKyAgICB9CisKKyAgICAvKiBFbmNvZGUgdGhlIHN0cmluZyBjaGFyYWN0ZXIgcGVyIGNoYXJhY3RlciAqLworICAgIHdoaWxlIChwb3MgPCBlbmRpbikKKyAgICB7CisgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGUsIHBvcyk7CisgICAgICAgIHdjaGFyX3QgY2hhcnNbMl07CisgICAgICAgIGludCBjaGFyc2l6ZTsKKyAgICAgICAgaWYgKGNoIDwgMHgxMDAwMCkgeworICAgICAgICAgICAgY2hhcnNbMF0gPSAod2NoYXJfdCljaDsKKyAgICAgICAgICAgIGNoYXJzaXplID0gMTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIGNoIC09IDB4MTAwMDA7CisgICAgICAgICAgICBjaGFyc1swXSA9IDB4ZDgwMCArIChjaCA+PiAxMCk7CisgICAgICAgICAgICBjaGFyc1sxXSA9IDB4ZGMwMCArIChjaCAmIDB4M2ZmKTsKKyAgICAgICAgICAgIGNoYXJzaXplID0gMjsKKyAgICAgICAgfQorCisgICAgICAgIG91dHNpemUgPSBXaWRlQ2hhclRvTXVsdGlCeXRlKGNvZGVfcGFnZSwgZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXJzLCBjaGFyc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyLCBQeV9BUlJBWV9MRU5HVEgoYnVmZmVyKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgcHVzZWREZWZhdWx0Q2hhcik7CisgICAgICAgIGlmIChvdXRzaXplID4gMCkgeworICAgICAgICAgICAgaWYgKHB1c2VkRGVmYXVsdENoYXIgPT0gTlVMTCB8fCAhKCpwdXNlZERlZmF1bHRDaGFyKSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBwb3MrKzsKKyAgICAgICAgICAgICAgICBtZW1jcHkob3V0LCBidWZmZXIsIG91dHNpemUpOworICAgICAgICAgICAgICAgIG91dCArPSBvdXRzaXplOworICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKEdldExhc3RFcnJvcigpICE9IEVSUk9SX05PX1VOSUNPREVfVFJBTlNMQVRJT04pIHsKKyAgICAgICAgICAgIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKDApOworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorCisgICAgICAgIHJlcCA9IHVuaWNvZGVfZW5jb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAorICAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLCBlbmNvZGluZywgcmVhc29uLAorICAgICAgICAgICAgICAgICAgdW5pY29kZSwgJmV4YywKKyAgICAgICAgICAgICAgICAgIHBvcywgcG9zICsgMSwgJm5ld3Bvcyk7CisgICAgICAgIGlmIChyZXAgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIHBvcyA9IG5ld3BvczsKKworICAgICAgICBpZiAoUHlCeXRlc19DaGVjayhyZXApKSB7CisgICAgICAgICAgICBvdXRzaXplID0gUHlCeXRlc19HRVRfU0laRShyZXApOworICAgICAgICAgICAgaWYgKG91dHNpemUgIT0gMSkgeworICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgb2Zmc2V0ID0gb3V0IC0gUHlCeXRlc19BU19TVFJJTkcoKm91dGJ5dGVzKTsKKyAgICAgICAgICAgICAgICBuZXdvdXRzaXplID0gUHlCeXRlc19HRVRfU0laRSgqb3V0Ynl0ZXMpICsgKG91dHNpemUgLSAxKTsKKyAgICAgICAgICAgICAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKG91dGJ5dGVzLCBuZXdvdXRzaXplKSA8IDApIHsKKyAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcCk7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIG91dCA9IFB5Qnl0ZXNfQVNfU1RSSU5HKCpvdXRieXRlcykgKyBvZmZzZXQ7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBtZW1jcHkob3V0LCBQeUJ5dGVzX0FTX1NUUklORyhyZXApLCBvdXRzaXplKTsKKyAgICAgICAgICAgIG91dCArPSBvdXRzaXplOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgUHlfc3NpemVfdCBpOworICAgICAgICAgICAgZW51bSBQeVVuaWNvZGVfS2luZCBraW5kOworICAgICAgICAgICAgdm9pZCAqZGF0YTsKKworICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShyZXApID09IC0xKSB7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcCk7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgb3V0c2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlcCk7CisgICAgICAgICAgICBpZiAob3V0c2l6ZSAhPSAxKSB7CisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBvZmZzZXQgPSBvdXQgLSBQeUJ5dGVzX0FTX1NUUklORygqb3V0Ynl0ZXMpOworICAgICAgICAgICAgICAgIG5ld291dHNpemUgPSBQeUJ5dGVzX0dFVF9TSVpFKCpvdXRieXRlcykgKyAob3V0c2l6ZSAtIDEpOworICAgICAgICAgICAgICAgIGlmIChfUHlCeXRlc19SZXNpemUob3V0Ynl0ZXMsIG5ld291dHNpemUpIDwgMCkgeworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwKTsKKyAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgb3V0ID0gUHlCeXRlc19BU19TVFJJTkcoKm91dGJ5dGVzKSArIG9mZnNldDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXApOworICAgICAgICAgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHJlcCk7CisgICAgICAgICAgICBmb3IgKGk9MDsgaSA8IG91dHNpemU7IGkrKykgeworICAgICAgICAgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgICAgICAgICAgICBpZiAoY2ggPiAxMjcpIHsKKyAgICAgICAgICAgICAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbigmZXhjLAorICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIHVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICBwb3MsIHBvcyArIDEsCisgICAgICAgICAgICAgICAgICAgICAgICAidW5hYmxlIHRvIGVuY29kZSBlcnJvciBoYW5kbGVyIHJlc3VsdCB0byBBU0NJSSIpOworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwKTsKKyAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgKm91dCA9ICh1bnNpZ25lZCBjaGFyKWNoOworICAgICAgICAgICAgICAgIG91dCsrOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRihyZXApOworICAgIH0KKyAgICAvKiB3cml0ZSBhIE5VTCBieXRlICovCisgICAgKm91dCA9IDA7CisgICAgb3V0c2l6ZSA9IG91dCAtIFB5Qnl0ZXNfQVNfU1RSSU5HKCpvdXRieXRlcyk7CisgICAgYXNzZXJ0KG91dHNpemUgPD0gUHlCeXRlc19HRVRfU0laRSgqb3V0Ynl0ZXMpKTsKKyAgICBpZiAoX1B5Qnl0ZXNfUmVzaXplKG91dGJ5dGVzLCBvdXRzaXplKSA8IDApCisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgcmV0ID0gMDsKKworZXJyb3I6CisgICAgUHlfWERFQ1JFRihlbmNvZGluZ19vYmopOworICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKKyAgICBQeV9YREVDUkVGKGV4Yyk7CisgICAgcmV0dXJuIHJldDsKK30KKworc3RhdGljIFB5T2JqZWN0ICoKK2VuY29kZV9jb2RlX3BhZ2UoaW50IGNvZGVfcGFnZSwKKyAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKK3sKKyAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICBQeU9iamVjdCAqb3V0Ynl0ZXMgPSBOVUxMOworICAgIFB5X3NzaXplX3Qgb2Zmc2V0OworICAgIGludCBjaHVua19sZW4sIHJldCwgZG9uZTsKKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodW5pY29kZSkgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworCisgICAgaWYgKGNvZGVfcGFnZSA8IDApIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJpbnZhbGlkIGNvZGUgcGFnZSBudW1iZXIiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0jaWZkZWYgTkVFRF9SRVRSWQotICAgIGlmIChzaXplID4gSU5UX01BWCkgewotICAgICAgICBwICs9IElOVF9NQVg7Ci0gICAgICAgIHNpemUgLT0gSU5UX01BWDsKLSAgICAgICAgZ290byByZXRyeTsKLSAgICB9Ci0jZW5kaWYKKyAgICBpZiAobGVuID09IDApCisgICAgICAgIHJldHVybiBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplKE5VTEwsIDApOwogCi0gICAgcmV0dXJuIHJlcHI7CisgICAgb2Zmc2V0ID0gMDsKKyAgICBkbworICAgIHsKKyNpZmRlZiBORUVEX1JFVFJZCisgICAgICAgIC8qIFVURi0xNiBlbmNvZGluZyBtYXkgZG91YmxlIHRoZSBzaXplLCBzbyB1c2Ugb25seSBJTlRfTUFYLzIKKyAgICAgICAgICAgY2h1bmtzLiAqLworICAgICAgICBpZiAobGVuID4gSU5UX01BWC8yKSB7CisgICAgICAgICAgICBjaHVua19sZW4gPSBJTlRfTUFYLzI7CisgICAgICAgICAgICBkb25lID0gMDsKKyAgICAgICAgfQorICAgICAgICBlbHNlCisjZW5kaWYKKyAgICAgICAgeworICAgICAgICAgICAgY2h1bmtfbGVuID0gKGludClsZW47CisgICAgICAgICAgICBkb25lID0gMTsKKyAgICAgICAgfQorCisgICAgICAgIHJldCA9IGVuY29kZV9jb2RlX3BhZ2Vfc3RyaWN0KGNvZGVfcGFnZSwgJm91dGJ5dGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmljb2RlLCBvZmZzZXQsIGNodW5rX2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKTsKKyAgICAgICAgaWYgKHJldCA9PSAtMikKKyAgICAgICAgICAgIHJldCA9IGVuY29kZV9jb2RlX3BhZ2VfZXJyb3JzKGNvZGVfcGFnZSwgJm91dGJ5dGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwgb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2h1bmtfbGVuLCBlcnJvcnMpOworICAgICAgICBpZiAocmV0IDwgMCkgeworICAgICAgICAgICAgUHlfWERFQ1JFRihvdXRieXRlcyk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorCisgICAgICAgIG9mZnNldCArPSBjaHVua19sZW47CisgICAgICAgIGxlbiAtPSBjaHVua19sZW47CisgICAgfSB3aGlsZSAoIWRvbmUpOworCisgICAgcmV0dXJuIG91dGJ5dGVzOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzTUJDU1N0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9FbmNvZGVNQkNTKGNvbnN0IFB5X1VOSUNPREUgKnAsCisgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCisgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCit7CisgICAgUHlPYmplY3QgKnVuaWNvZGUsICpyZXM7CisgICAgdW5pY29kZSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShwLCBzaXplKTsKKyAgICBpZiAodW5pY29kZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXMgPSBlbmNvZGVfY29kZV9wYWdlKENQX0FDUCwgdW5pY29kZSwgZXJyb3JzKTsKKyAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgcmV0dXJuIHJlczsKK30KKworUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZUNvZGVQYWdlKGludCBjb2RlX3BhZ2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQoreworICAgIHJldHVybiBlbmNvZGVfY29kZV9wYWdlKGNvZGVfcGFnZSwgdW5pY29kZSwgZXJyb3JzKTsKK30KKworUHlPYmplY3QgKgorUHlVbmljb2RlX0FzTUJDU1N0cmluZyhQeU9iamVjdCAqdW5pY29kZSkKIHsKICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgewogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVNQkNTKFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgIHJldHVybiBQeVVuaWNvZGVfRW5jb2RlQ29kZVBhZ2UoQ1BfQUNQLCB1bmljb2RlLCBOVUxMKTsKIH0KIAogI3VuZGVmIE5FRURfUkVUUlkKIAotI2VuZGlmIC8qIE1TX1dJTkRPV1MgKi8KKyNlbmRpZiAvKiBIQVZFX01CQ1MgKi8KIAogLyogLS0tIENoYXJhY3RlciBNYXBwaW5nIENvZGVjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfRGVjb2RlQ2hhcm1hcChjb25zdCBjaGFyICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqbWFwcGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRGVjb2RlQ2hhcm1hcChjb25zdCBjaGFyICpzLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm1hcHBpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCiB7CiAgICAgY29uc3QgY2hhciAqc3RhcnRzID0gczsKICAgICBQeV9zc2l6ZV90IHN0YXJ0aW5wb3M7CiAgICAgUHlfc3NpemVfdCBlbmRpbnBvczsKICAgICBQeV9zc2l6ZV90IG91dHBvczsKICAgICBjb25zdCBjaGFyICplOwotICAgIFB5VW5pY29kZU9iamVjdCAqdjsKLSAgICBQeV9VTklDT0RFICpwOworICAgIFB5T2JqZWN0ICp2OwogICAgIFB5X3NzaXplX3QgZXh0cmFjaGFycyA9IDA7CiAgICAgUHlPYmplY3QgKmVycm9ySGFuZGxlciA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmV4YyA9IE5VTEw7Ci0gICAgUHlfVU5JQ09ERSAqbWFwc3RyaW5nID0gTlVMTDsKLSAgICBQeV9zc2l6ZV90IG1hcGxlbiA9IDA7CiAKICAgICAvKiBEZWZhdWx0IHRvIExhdGluLTEgKi8KICAgICBpZiAobWFwcGluZyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gUHlVbmljb2RlX0RlY29kZUxhdGluMShzLCBzaXplLCBlcnJvcnMpOwogCi0gICAgdiA9IF9QeVVuaWNvZGVfTmV3KHNpemUpOworICAgIHYgPSBQeVVuaWNvZGVfTmV3KHNpemUsIDEyNyk7CiAgICAgaWYgKHYgPT0gTlVMTCkKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIGlmIChzaXplID09IDApCi0gICAgICAgIHJldHVybiAoUHlPYmplY3QgKil2OwotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KTsKKyAgICAgICAgcmV0dXJuIHY7CisgICAgb3V0cG9zID0gMDsKICAgICBlID0gcyArIHNpemU7CiAgICAgaWYgKFB5VW5pY29kZV9DaGVja0V4YWN0KG1hcHBpbmcpKSB7Ci0gICAgICAgIG1hcHN0cmluZyA9IFB5VW5pY29kZV9BU19VTklDT0RFKG1hcHBpbmcpOwotICAgICAgICBtYXBsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUobWFwcGluZyk7CisgICAgICAgIFB5X3NzaXplX3QgbWFwbGVuOworICAgICAgICBlbnVtIFB5VW5pY29kZV9LaW5kIGtpbmQ7CisgICAgICAgIHZvaWQgKmRhdGE7CisgICAgICAgIFB5X1VDUzQgeDsKKworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKG1hcHBpbmcpID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAgICAgbWFwbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgobWFwcGluZyk7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShtYXBwaW5nKTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKG1hcHBpbmcpOwogICAgICAgICB3aGlsZSAocyA8IGUpIHsKICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgY2ggPSAqczsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgeCA9IDB4ZmZmZTsgLyogaWxsZWdhbCB2YWx1ZSAqLwogCiAgICAgICAgICAgICBpZiAoY2ggPCBtYXBsZW4pCi0gICAgICAgICAgICAgICAgeCA9IG1hcHN0cmluZ1tjaF07CisgICAgICAgICAgICAgICAgeCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGNoKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICB4ID0gMHhmZmZlOyAvKiBpbnZhbGlkIHZhbHVlICovCiAKLSAgICAgICAgICAgIGlmICh4ID09IDB4ZmZmZSkgeworICAgICAgICAgICAgaWYgKHggPT0gMHhmZmZlKQorICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIC8qIHVuZGVmaW5lZCBtYXBwaW5nICovCi0gICAgICAgICAgICAgICAgb3V0cG9zID0gcC1QeVVuaWNvZGVfQVNfVU5JQ09ERSh2KTsKICAgICAgICAgICAgICAgICBzdGFydGlucG9zID0gcy1zdGFydHM7CiAgICAgICAgICAgICAgICAgZW5kaW5wb3MgPSBzdGFydGlucG9zKzE7CiAgICAgICAgICAgICAgICAgaWYgKHVuaWNvZGVfZGVjb2RlX2NhbGxfZXJyb3JoYW5kbGVyKAogICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgImNoYXJtYXAiLCAiY2hhcmFjdGVyIG1hcHMgdG8gPHVuZGVmaW5lZD4iLAogICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0cywgJmUsICZzdGFydGlucG9zLCAmZW5kaW5wb3MsICZleGMsICZzLAotICAgICAgICAgICAgICAgICAgICAgICAgJnYsICZvdXRwb3MsICZwKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgJnYsICZvdXRwb3MpKSB7CiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAqcCsrID0geDsKKworICAgICAgICAgICAgaWYgKHVuaWNvZGVfcHV0Y2hhcigmdiwgJm91dHBvcywgeCkgPCAwKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICsrczsKICAgICAgICAgfQogICAgIH0KQEAgLTUyNjYsMTggKzc3OTEsMTggQEAKICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHgpOwogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICpwKysgPSAoUHlfVU5JQ09ERSl2YWx1ZTsKKyAgICAgICAgICAgICAgICBpZiAodW5pY29kZV9wdXRjaGFyKCZ2LCAmb3V0cG9zLCB2YWx1ZSkgPCAwKQorICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmICh4ID09IFB5X05vbmUpIHsKICAgICAgICAgICAgICAgICAvKiB1bmRlZmluZWQgbWFwcGluZyAqLwotICAgICAgICAgICAgICAgIG91dHBvcyA9IHAtUHlVbmljb2RlX0FTX1VOSUNPREUodik7CiAgICAgICAgICAgICAgICAgc3RhcnRpbnBvcyA9IHMtc3RhcnRzOwogICAgICAgICAgICAgICAgIGVuZGlucG9zID0gc3RhcnRpbnBvcysxOwogICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX2RlY29kZV9jYWxsX2Vycm9yaGFuZGxlcigKICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9ycywgJmVycm9ySGFuZGxlciwKICAgICAgICAgICAgICAgICAgICAgICAgICJjaGFybWFwIiwgImNoYXJhY3RlciBtYXBzIHRvIDx1bmRlZmluZWQ+IiwKICAgICAgICAgICAgICAgICAgICAgICAgICZzdGFydHMsICZlLCAmc3RhcnRpbnBvcywgJmVuZGlucG9zLCAmZXhjLCAmcywKLSAgICAgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zLCAmcCkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICZ2LCAmb3V0cG9zKSkgewogICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoeCk7CiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICB9CkBAIC01Mjg1LDMyICs3ODEwLDM3IEBACiAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2soeCkpIHsKLSAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHRhcmdldHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUoeCk7CisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCB0YXJnZXRzaXplOwogCi0gICAgICAgICAgICAgICAgaWYgKHRhcmdldHNpemUgPT0gMSkKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHgpID09IC0xKQorICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICAgICAgdGFyZ2V0c2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHgpOworCisgICAgICAgICAgICAgICAgaWYgKHRhcmdldHNpemUgPT0gMSkgewogICAgICAgICAgICAgICAgICAgICAvKiAxLTEgbWFwcGluZyAqLwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gKlB5VW5pY29kZV9BU19VTklDT0RFKHgpOwotCisgICAgICAgICAgICAgICAgICAgIGlmICh1bmljb2RlX3B1dGNoYXIoJnYsICZvdXRwb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQURfQ0hBUih4LCAwKSkgPCAwKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbHNlIGlmICh0YXJnZXRzaXplID4gMSkgewogICAgICAgICAgICAgICAgICAgICAvKiAxLW4gbWFwcGluZyAqLwogICAgICAgICAgICAgICAgICAgICBpZiAodGFyZ2V0c2l6ZSA+IGV4dHJhY2hhcnMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHJlc2l6ZSBmaXJzdCAqLwotICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBvbGRwb3MgPSBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodik7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG5lZWRlZCA9ICh0YXJnZXRzaXplIC0gZXh0cmFjaGFycykgKyBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHRhcmdldHNpemUgPDwgMik7CiAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYWNoYXJzICs9IG5lZWRlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFhYWCBvdmVyZmxvdyBkZXRlY3Rpb24gbWlzc2luZyAqLwotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF9QeVVuaWNvZGVfUmVzaXplKCZ2LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh2KSArIG5lZWRlZCkgPCAwKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAodW5pY29kZV9yZXNpemUoJnYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgodikgKyBuZWVkZWQpIDwgMCkKKyAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoeCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAgICAgcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHYpICsgb2xkcG9zOwogICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfQ09QWShwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoeCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRzaXplKTsKLSAgICAgICAgICAgICAgICAgICAgcCArPSB0YXJnZXRzaXplOworICAgICAgICAgICAgICAgICAgICBpZiAodW5pY29kZV93aWRlbigmdiwgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHgpKSA8IDApCisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyh2LCBvdXRwb3MsIHgsIDAsIHRhcmdldHNpemUpOworICAgICAgICAgICAgICAgICAgICBvdXRwb3MgKz0gdGFyZ2V0c2l6ZTsKICAgICAgICAgICAgICAgICAgICAgZXh0cmFjaGFycyAtPSB0YXJnZXRzaXplOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAvKiAxLTAgbWFwcGluZzogc2tpcCB0aGUgY2hhcmFjdGVyICovCkBAIC01MzI2LDEyICs3ODU2LDExIEBACiAgICAgICAgICAgICArK3M7CiAgICAgICAgIH0KICAgICB9Ci0gICAgaWYgKHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSA8IFB5VW5pY29kZV9HRVRfU0laRSh2KSkKLSAgICAgICAgaWYgKF9QeVVuaWNvZGVfUmVzaXplKCZ2LCBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUodikpIDwgMCkKLSAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICBpZiAodW5pY29kZV9yZXNpemUoJnYsIG91dHBvcykgPCAwKQorICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOwogICAgIFB5X1hERUNSRUYoZXhjKTsKLSAgICByZXR1cm4gKFB5T2JqZWN0ICopdjsKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHQodik7CiAKICAgb25FcnJvcjoKICAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7CkBAIC01MzQyLDcgKzc4NzEsNyBAQAogCiAvKiBDaGFybWFwIGVuY29kaW5nOiB0aGUgbG9va3VwIHRhYmxlICovCiAKLXN0cnVjdCBlbmNvZGluZ19tYXB7CitzdHJ1Y3QgZW5jb2RpbmdfbWFwIHsKICAgICBQeU9iamVjdF9IRUFECiAgICAgdW5zaWduZWQgY2hhciBsZXZlbDFbMzJdOwogICAgIGludCBjb3VudDIsIGNvdW50MzsKQEAgLTU0MTYsNyArNzk0NSw2IEBACiBQeU9iamVjdCoKIFB5VW5pY29kZV9CdWlsZEVuY29kaW5nTWFwKFB5T2JqZWN0KiBzdHJpbmcpCiB7Ci0gICAgUHlfVU5JQ09ERSAqZGVjb2RlOwogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAgICAgc3RydWN0IGVuY29kaW5nX21hcCAqbXJlc3VsdDsKICAgICBpbnQgaTsKQEAgLTU0MjUsMzUgKzc5NTMsMzYgQEAKICAgICB1bnNpZ25lZCBjaGFyIGxldmVsMls1MTJdOwogICAgIHVuc2lnbmVkIGNoYXIgKm1sZXZlbDEsICptbGV2ZWwyLCAqbWxldmVsMzsKICAgICBpbnQgY291bnQyID0gMCwgY291bnQzID0gMDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X1VDUzQgY2g7CiAKLSAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhzdHJpbmcpIHx8IFB5VW5pY29kZV9HZXRTaXplKHN0cmluZykgIT0gMjU2KSB7CisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2soc3RyaW5nKSB8fCBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHJpbmcpICE9IDI1NikgewogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgZGVjb2RlID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyaW5nKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc3RyaW5nKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc3RyaW5nKTsKICAgICBtZW1zZXQobGV2ZWwxLCAweEZGLCBzaXplb2YgbGV2ZWwxKTsKICAgICBtZW1zZXQobGV2ZWwyLCAweEZGLCBzaXplb2YgbGV2ZWwyKTsKIAogICAgIC8qIElmIHRoZXJlIGlzbid0IGEgb25lLXRvLW9uZSBtYXBwaW5nIG9mIE5VTEwgdG8gXDAsCiAgICAgICAgb3IgaWYgdGhlcmUgYXJlIG5vbi1CTVAgY2hhcmFjdGVycywgd2UgbmVlZCB0byB1c2UKICAgICAgICBhIG1hcHBpbmcgZGljdGlvbmFyeS4gKi8KLSAgICBpZiAoZGVjb2RlWzBdICE9IDApCisgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIDApICE9IDApCiAgICAgICAgIG5lZWRfZGljdCA9IDE7CiAgICAgZm9yIChpID0gMTsgaSA8IDI1NjsgaSsrKSB7CiAgICAgICAgIGludCBsMSwgbDI7Ci0gICAgICAgIGlmIChkZWNvZGVbaV0gPT0gMAotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgfHwgZGVjb2RlW2ldID4gMHhGRkZGCi0jZW5kaWYKLSAgICAgICAgICAgICkgeworICAgICAgICBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICBpZiAoY2ggPT0gMCB8fCBjaCA+IDB4RkZGRikgewogICAgICAgICAgICAgbmVlZF9kaWN0ID0gMTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0gICAgICAgIGlmIChkZWNvZGVbaV0gPT0gMHhGRkZFKQorICAgICAgICBpZiAoY2ggPT0gMHhGRkZFKQogICAgICAgICAgICAgLyogdW5tYXBwZWQgY2hhcmFjdGVyICovCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgbDEgPSBkZWNvZGVbaV0gPj4gMTE7Ci0gICAgICAgIGwyID0gZGVjb2RlW2ldID4+IDc7CisgICAgICAgIGwxID0gY2ggPj4gMTE7CisgICAgICAgIGwyID0gY2ggPj4gNzsKICAgICAgICAgaWYgKGxldmVsMVtsMV0gPT0gMHhGRikKICAgICAgICAgICAgIGxldmVsMVtsMV0gPSBjb3VudDIrKzsKICAgICAgICAgaWYgKGxldmVsMltsMl0gPT0gMHhGRikKQEAgLTU0NjksOCArNzk5OCw3IEBACiAgICAgICAgIGlmICghcmVzdWx0KQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCAyNTY7IGkrKykgewotICAgICAgICAgICAga2V5ID0gdmFsdWUgPSBOVUxMOwotICAgICAgICAgICAga2V5ID0gUHlMb25nX0Zyb21Mb25nKGRlY29kZVtpXSk7CisgICAgICAgICAgICBrZXkgPSBQeUxvbmdfRnJvbUxvbmcoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpOwogICAgICAgICAgICAgdmFsdWUgPSBQeUxvbmdfRnJvbUxvbmcoaSk7CiAgICAgICAgICAgICBpZiAoIWtleSB8fCAhdmFsdWUpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQxOwpAQCAtNTUwNSwxNSArODAzMywxNSBAQAogICAgIGNvdW50MyA9IDA7CiAgICAgZm9yIChpID0gMTsgaSA8IDI1NjsgaSsrKSB7CiAgICAgICAgIGludCBvMSwgbzIsIG8zLCBpMiwgaTM7Ci0gICAgICAgIGlmIChkZWNvZGVbaV0gPT0gMHhGRkZFKQorICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkgPT0gMHhGRkZFKQogICAgICAgICAgICAgLyogdW5tYXBwZWQgY2hhcmFjdGVyICovCiAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgbzEgPSBkZWNvZGVbaV0+PjExOwotICAgICAgICBvMiA9IChkZWNvZGVbaV0+PjcpICYgMHhGOworICAgICAgICBvMSA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpPj4xMTsKKyAgICAgICAgbzIgPSAoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk+PjcpICYgMHhGOwogICAgICAgICBpMiA9IDE2Km1sZXZlbDFbbzFdICsgbzI7CiAgICAgICAgIGlmIChtbGV2ZWwyW2kyXSA9PSAweEZGKQogICAgICAgICAgICAgbWxldmVsMltpMl0gPSBjb3VudDMrKzsKLSAgICAgICAgbzMgPSBkZWNvZGVbaV0gJiAweDdGOworICAgICAgICBvMyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpICYgMHg3RjsKICAgICAgICAgaTMgPSAxMjgqbWxldmVsMltpMl0gKyBvMzsKICAgICAgICAgbWxldmVsM1tpM10gPSBpOwogICAgIH0KQEAgLTU1MjEsNyArODA0OSw3IEBACiB9CiAKIHN0YXRpYyBpbnQKLWVuY29kaW5nX21hcF9sb29rdXAoUHlfVU5JQ09ERSBjLCBQeU9iamVjdCAqbWFwcGluZykKK2VuY29kaW5nX21hcF9sb29rdXAoUHlfVUNTNCBjLCBQeU9iamVjdCAqbWFwcGluZykKIHsKICAgICBzdHJ1Y3QgZW5jb2RpbmdfbWFwICptYXAgPSAoc3RydWN0IGVuY29kaW5nX21hcCopbWFwcGluZzsKICAgICBpbnQgbDEgPSBjPj4xMTsKQEAgLTU1MjksMTEgKzgwNTcsOCBAQAogICAgIGludCBsMyA9IGMgJiAweDdGOwogICAgIGludCBpOwogCi0jaWZkZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgaWYgKGMgPiAweEZGRkYpIHsKKyAgICBpZiAoYyA+IDB4RkZGRikKICAgICAgICAgcmV0dXJuIC0xOwotICAgIH0KLSNlbmRpZgogICAgIGlmIChjID09IDApCiAgICAgICAgIHJldHVybiAwOwogICAgIC8qIGxldmVsIDEqLwpAQCAtNTU1Nyw3ICs4MDgyLDggQEAKIC8qIExvb2t1cCB0aGUgY2hhcmFjdGVyIGNoIGluIHRoZSBtYXBwaW5nLiBJZiB0aGUgY2hhcmFjdGVyCiAgICBjYW4ndCBiZSBmb3VuZCwgUHlfTm9uZSBpcyByZXR1cm5lZCAob3IgTlVMTCwgaWYgYW5vdGhlcgogICAgZXJyb3Igb2NjdXJyZWQpLiAqLwotc3RhdGljIFB5T2JqZWN0ICpjaGFybWFwZW5jb2RlX2xvb2t1cChQeV9VTklDT0RFIGMsIFB5T2JqZWN0ICptYXBwaW5nKQorc3RhdGljIFB5T2JqZWN0ICoKK2NoYXJtYXBlbmNvZGVfbG9va3VwKFB5X1VDUzQgYywgUHlPYmplY3QgKm1hcHBpbmcpCiB7CiAgICAgUHlPYmplY3QgKncgPSBQeUxvbmdfRnJvbUxvbmcoKGxvbmcpYyk7CiAgICAgUHlPYmplY3QgKng7CkBAIC01NjE0LDE2ICs4MTQwLDE2IEBACiAKIHR5cGVkZWYgZW51bSBjaGFybWFwZW5jb2RlX3Jlc3VsdCB7CiAgICAgZW5jX1NVQ0NFU1MsIGVuY19GQUlMRUQsIGVuY19FWENFUFRJT04KLX1jaGFybWFwZW5jb2RlX3Jlc3VsdDsKK30gY2hhcm1hcGVuY29kZV9yZXN1bHQ7CiAvKiBsb29rdXAgdGhlIGNoYXJhY3RlciwgcHV0IHRoZSByZXN1bHQgaW4gdGhlIG91dHB1dCBzdHJpbmcgYW5kIGFkanVzdAogICAgdmFyaW91cyBzdGF0ZSB2YXJpYWJsZXMuIFJlc2l6ZSB0aGUgb3V0cHV0IGJ5dGVzIG9iamVjdCBpZiBub3QgZW5vdWdoCiAgICBzcGFjZSBpcyBhdmFpbGFibGUuIFJldHVybiBhIG5ldyByZWZlcmVuY2UgdG8gdGhlIG9iamVjdCB0aGF0CiAgICB3YXMgcHV0IGluIHRoZSBvdXRwdXQgYnVmZmVyLCBvciBQeV9Ob25lLCBpZiB0aGUgbWFwcGluZyB3YXMgdW5kZWZpbmVkCiAgICAoaW4gd2hpY2ggY2FzZSBubyBjaGFyYWN0ZXIgd2FzIHdyaXR0ZW4pIG9yIE5VTEwsIGlmIGEKICAgIHJlYWxsb2NhdGlvbiBlcnJvciBvY2N1cnJlZC4gVGhlIGNhbGxlciBtdXN0IGRlY3JlZiB0aGUgcmVzdWx0ICovCi1zdGF0aWMKLWNoYXJtYXBlbmNvZGVfcmVzdWx0IGNoYXJtYXBlbmNvZGVfb3V0cHV0KFB5X1VOSUNPREUgYywgUHlPYmplY3QgKm1hcHBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKm91dG9iaiwgUHlfc3NpemVfdCAqb3V0cG9zKQorc3RhdGljIGNoYXJtYXBlbmNvZGVfcmVzdWx0CitjaGFybWFwZW5jb2RlX291dHB1dChQeV9VQ1M0IGMsIFB5T2JqZWN0ICptYXBwaW5nLAorICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipvdXRvYmosIFB5X3NzaXplX3QgKm91dHBvcykKIHsKICAgICBQeU9iamVjdCAqcmVwOwogICAgIGNoYXIgKm91dHN0YXJ0OwpAQCAtNTY3OSwxNyArODIwNSwxOSBAQAogCiAvKiBoYW5kbGUgYW4gZXJyb3IgaW4gUHlVbmljb2RlX0VuY29kZUNoYXJtYXAKICAgIFJldHVybiAwIG9uIHN1Y2Nlc3MsIC0xIG9uIGVycm9yICovCi1zdGF0aWMKLWludCBjaGFybWFwX2VuY29kaW5nX2Vycm9yKAotICAgIGNvbnN0IFB5X1VOSUNPREUgKnAsIFB5X3NzaXplX3Qgc2l6ZSwgUHlfc3NpemVfdCAqaW5wb3MsIFB5T2JqZWN0ICptYXBwaW5nLAorc3RhdGljIGludAorY2hhcm1hcF9lbmNvZGluZ19lcnJvcigKKyAgICBQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCAqaW5wb3MsIFB5T2JqZWN0ICptYXBwaW5nLAogICAgIFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAogICAgIGludCAqa25vd25fZXJyb3JIYW5kbGVyLCBQeU9iamVjdCAqKmVycm9ySGFuZGxlciwgY29uc3QgY2hhciAqZXJyb3JzLAogICAgIFB5T2JqZWN0ICoqcmVzLCBQeV9zc2l6ZV90ICpyZXNwb3MpCiB7CiAgICAgUHlPYmplY3QgKnJlcHVuaWNvZGUgPSBOVUxMOyAvKiBpbml0aWFsaXplIHRvIHByZXZlbnQgZ2NjIHdhcm5pbmcgKi8KLSAgICBQeV9zc2l6ZV90IHJlcHNpemU7CisgICAgUHlfc3NpemVfdCBzaXplLCByZXBzaXplOwogICAgIFB5X3NzaXplX3QgbmV3cG9zOwotICAgIFB5X1VOSUNPREUgKnVuaTI7CisgICAgZW51bSBQeVVuaWNvZGVfS2luZCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBpbmRleDsKICAgICAvKiBzdGFydHBvcyBmb3IgY29sbGVjdGluZyB1bmVuY29kYWJsZSBjaGFycyAqLwogICAgIFB5X3NzaXplX3QgY29sbHN0YXJ0cG9zID0gKmlucG9zOwogICAgIFB5X3NzaXplX3QgY29sbGVuZHBvcyA9ICppbnBvcysxOwpAQCAtNTY5NywxOSArODIyNSwyNiBAQAogICAgIGNoYXIgKmVuY29kaW5nID0gImNoYXJtYXAiOwogICAgIGNoYXIgKnJlYXNvbiA9ICJjaGFyYWN0ZXIgbWFwcyB0byA8dW5kZWZpbmVkPiI7CiAgICAgY2hhcm1hcGVuY29kZV9yZXN1bHQgeDsKKyAgICBQeV9VQ1M0IGNoOworICAgIGludCB2YWw7CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOwogICAgIC8qIGZpbmQgYWxsIHVuZW5jb2RhYmxlIGNoYXJhY3RlcnMgKi8KICAgICB3aGlsZSAoY29sbGVuZHBvcyA8IHNpemUpIHsKICAgICAgICAgUHlPYmplY3QgKnJlcDsKICAgICAgICAgaWYgKFB5X1RZUEUobWFwcGluZykgPT0gJkVuY29kaW5nTWFwVHlwZSkgewotICAgICAgICAgICAgaW50IHJlcyA9IGVuY29kaW5nX21hcF9sb29rdXAocFtjb2xsZW5kcG9zXSwgbWFwcGluZyk7Ci0gICAgICAgICAgICBpZiAocmVzICE9IC0xKQorICAgICAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGUsIGNvbGxlbmRwb3MpOworICAgICAgICAgICAgdmFsID0gZW5jb2RpbmdfbWFwX2xvb2t1cChjaCwgbWFwcGluZyk7CisgICAgICAgICAgICBpZiAodmFsICE9IC0xKQogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgKytjb2xsZW5kcG9zOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KIAotICAgICAgICByZXAgPSBjaGFybWFwZW5jb2RlX2xvb2t1cChwW2NvbGxlbmRwb3NdLCBtYXBwaW5nKTsKKyAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGUsIGNvbGxlbmRwb3MpOworICAgICAgICByZXAgPSBjaGFybWFwZW5jb2RlX2xvb2t1cChjaCwgbWFwcGluZyk7CiAgICAgICAgIGlmIChyZXA9PU5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIGVsc2UgaWYgKHJlcCE9UHlfTm9uZSkgewpAQCAtNTczNSw3ICs4MjcwLDcgQEAKICAgICB9CiAgICAgc3dpdGNoICgqa25vd25fZXJyb3JIYW5kbGVyKSB7CiAgICAgY2FzZSAxOiAvKiBzdHJpY3QgKi8KLSAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbihleGNlcHRpb25PYmplY3QsIGVuY29kaW5nLCBwLCBzaXplLCBjb2xsc3RhcnRwb3MsIGNvbGxlbmRwb3MsIHJlYXNvbik7CisgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgdW5pY29kZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgY2FzZSAyOiAvKiByZXBsYWNlICovCiAgICAgICAgIGZvciAoY29sbHBvcyA9IGNvbGxzdGFydHBvczsgY29sbHBvczxjb2xsZW5kcG9zOyArK2NvbGxwb3MpIHsKQEAgLTU3NDQsNyArODI3OSw3IEBACiAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBpZiAoeD09ZW5jX0ZBSUxFRCkgewotICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgcCwgc2l6ZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOworICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgdW5pY29kZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOwogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtNTc1NywxMyArODI5MiwxMyBAQAogICAgICAgICBmb3IgKGNvbGxwb3MgPSBjb2xsc3RhcnRwb3M7IGNvbGxwb3MgPCBjb2xsZW5kcG9zOyArK2NvbGxwb3MpIHsKICAgICAgICAgICAgIGNoYXIgYnVmZmVyWzIrMjkrMSsxXTsKICAgICAgICAgICAgIGNoYXIgKmNwOwotICAgICAgICAgICAgc3ByaW50ZihidWZmZXIsICImIyVkOyIsIChpbnQpcFtjb2xscG9zXSk7CisgICAgICAgICAgICBzcHJpbnRmKGJ1ZmZlciwgIiYjJWQ7IiwgKGludClQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGUsIGNvbGxwb3MpKTsKICAgICAgICAgICAgIGZvciAoY3AgPSBidWZmZXI7ICpjcDsgKytjcCkgewogICAgICAgICAgICAgICAgIHggPSBjaGFybWFwZW5jb2RlX291dHB1dCgqY3AsIG1hcHBpbmcsIHJlcywgcmVzcG9zKTsKICAgICAgICAgICAgICAgICBpZiAoeD09ZW5jX0VYQ0VQVElPTikKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICAgICAgICAgIGVsc2UgaWYgKHg9PWVuY19GQUlMRUQpIHsKLSAgICAgICAgICAgICAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbihleGNlcHRpb25PYmplY3QsIGVuY29kaW5nLCBwLCBzaXplLCBjb2xsc3RhcnRwb3MsIGNvbGxlbmRwb3MsIHJlYXNvbik7CisgICAgICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgdW5pY29kZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOwogICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQpAQCAtNTc3Miw3ICs4MzA3LDcgQEAKICAgICAgICAgYnJlYWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAgcmVwdW5pY29kZSA9IHVuaWNvZGVfZW5jb2RlX2NhbGxfZXJyb3JoYW5kbGVyKGVycm9ycywgZXJyb3JIYW5kbGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIHJlYXNvbiwgcCwgc2l6ZSwgZXhjZXB0aW9uT2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5jb2RpbmcsIHJlYXNvbiwgdW5pY29kZSwgZXhjZXB0aW9uT2JqZWN0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCAmbmV3cG9zKTsKICAgICAgICAgaWYgKHJlcHVuaWNvZGUgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKQEAgLTU3OTYsMTUgKzgzMzEsMjMgQEAKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIC8qIGdlbmVyYXRlIHJlcGxhY2VtZW50ICAqLwotICAgICAgICByZXBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKHJlcHVuaWNvZGUpOwotICAgICAgICBmb3IgKHVuaTIgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXB1bmljb2RlKTsgcmVwc2l6ZS0tPjA7ICsrdW5pMikgewotICAgICAgICAgICAgeCA9IGNoYXJtYXBlbmNvZGVfb3V0cHV0KCp1bmkyLCBtYXBwaW5nLCByZXMsIHJlc3Bvcyk7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocmVwdW5pY29kZSkgPT0gLTEpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihyZXB1bmljb2RlKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICByZXBzaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocmVwdW5pY29kZSk7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShyZXB1bmljb2RlKTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHJlcHVuaWNvZGUpOworICAgICAgICBmb3IgKGluZGV4ID0gMDsgaW5kZXggPCByZXBzaXplOyBpbmRleCsrKSB7CisgICAgICAgICAgICBQeV9VQ1M0IHJlcGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaW5kZXgpOworICAgICAgICAgICAgeCA9IGNoYXJtYXBlbmNvZGVfb3V0cHV0KHJlcGNoLCBtYXBwaW5nLCByZXMsIHJlc3Bvcyk7CiAgICAgICAgICAgICBpZiAoeD09ZW5jX0VYQ0VQVElPTikgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXB1bmljb2RlKTsKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmICh4PT1lbmNfRkFJTEVEKSB7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcHVuaWNvZGUpOwotICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgcCwgc2l6ZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOworICAgICAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oZXhjZXB0aW9uT2JqZWN0LCBlbmNvZGluZywgdW5pY29kZSwgY29sbHN0YXJ0cG9zLCBjb2xsZW5kcG9zLCByZWFzb24pOwogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtNTgxNCwxNSArODM1NywxNiBAQAogICAgIHJldHVybiAwOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0VuY29kZUNoYXJtYXAoY29uc3QgUHlfVU5JQ09ERSAqcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm1hcHBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQorUHlPYmplY3QgKgorX1B5VW5pY29kZV9FbmNvZGVDaGFybWFwKFB5T2JqZWN0ICp1bmljb2RlLAorICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICAvKiBvdXRwdXQgb2JqZWN0ICovCiAgICAgUHlPYmplY3QgKnJlcyA9IE5VTEw7CiAgICAgLyogY3VycmVudCBpbnB1dCBwb3NpdGlvbiAqLwogICAgIFB5X3NzaXplX3QgaW5wb3MgPSAwOworICAgIFB5X3NzaXplX3Qgc2l6ZTsKICAgICAvKiBjdXJyZW50IG91dHB1dCBwb3NpdGlvbiAqLwogICAgIFB5X3NzaXplX3QgcmVzcG9zID0gMDsKICAgICBQeU9iamVjdCAqZXJyb3JIYW5kbGVyID0gTlVMTDsKQEAgLTU4MzIsOSArODM3NiwxMyBAQAogICAgICAqIDM9aWdub3JlLCA0PXhtbGNoYXJyZWZyZXBsYWNlICovCiAgICAgaW50IGtub3duX2Vycm9ySGFuZGxlciA9IC0xOwogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworCiAgICAgLyogRGVmYXVsdCB0byBMYXRpbi0xICovCiAgICAgaWYgKG1hcHBpbmcgPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVMYXRpbjEocCwgc2l6ZSwgZXJyb3JzKTsKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfZW5jb2RlX3VjczEodW5pY29kZSwgZXJyb3JzLCAyNTYpOwogCiAgICAgLyogYWxsb2NhdGUgZW5vdWdoIGZvciBhIHNpbXBsZSBlbmNvZGluZyB3aXRob3V0CiAgICAgICAgcmVwbGFjZW1lbnRzLCBpZiB3ZSBuZWVkIG1vcmUsIHdlJ2xsIHJlc2l6ZSAqLwpAQCAtNTg0NSwxMiArODM5MywxMyBAQAogICAgICAgICByZXR1cm4gcmVzOwogCiAgICAgd2hpbGUgKGlucG9zPHNpemUpIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEX0NIQVIodW5pY29kZSwgaW5wb3MpOwogICAgICAgICAvKiB0cnkgdG8gZW5jb2RlIGl0ICovCi0gICAgICAgIGNoYXJtYXBlbmNvZGVfcmVzdWx0IHggPSBjaGFybWFwZW5jb2RlX291dHB1dChwW2lucG9zXSwgbWFwcGluZywgJnJlcywgJnJlc3Bvcyk7CisgICAgICAgIGNoYXJtYXBlbmNvZGVfcmVzdWx0IHggPSBjaGFybWFwZW5jb2RlX291dHB1dChjaCwgbWFwcGluZywgJnJlcywgJnJlc3Bvcyk7CiAgICAgICAgIGlmICh4PT1lbmNfRVhDRVBUSU9OKSAvKiBlcnJvciAqLwogICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICBpZiAoeD09ZW5jX0ZBSUxFRCkgeyAvKiB1bmVuY29kYWJsZSBjaGFyYWN0ZXIgKi8KLSAgICAgICAgICAgIGlmIChjaGFybWFwX2VuY29kaW5nX2Vycm9yKHAsIHNpemUsICZpbnBvcywgbWFwcGluZywKKyAgICAgICAgICAgIGlmIChjaGFybWFwX2VuY29kaW5nX2Vycm9yKHVuaWNvZGUsICZpbnBvcywgbWFwcGluZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZleGMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAma25vd25fZXJyb3JIYW5kbGVyLCAmZXJyb3JIYW5kbGVyLCBlcnJvcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcmVzLCAmcmVzcG9zKSkgewpAQCAtNTg3OCwyOCArODQyNyw0MyBAQAogICAgIHJldHVybiBOVUxMOwogfQogCi1QeU9iamVjdCAqUHlVbmljb2RlX0FzQ2hhcm1hcFN0cmluZyhQeU9iamVjdCAqdW5pY29kZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nKQorLyogRGVwcmVjYXRlZCAqLworUHlPYmplY3QgKgorUHlVbmljb2RlX0VuY29kZUNoYXJtYXAoY29uc3QgUHlfVU5JQ09ERSAqcCwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZXJyb3JzKQoreworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgUHlPYmplY3QgKnVuaWNvZGUgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocCwgc2l6ZSk7CisgICAgaWYgKHVuaWNvZGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzdWx0ID0gX1B5VW5pY29kZV9FbmNvZGVDaGFybWFwKHVuaWNvZGUsIG1hcHBpbmcsIGVycm9ycyk7CisgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9Bc0NoYXJtYXBTdHJpbmcoUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nKQogewogICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpIHx8IG1hcHBpbmcgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9FbmNvZGVDaGFybWFwKFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUodW5pY29kZSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcHBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOworICAgIHJldHVybiBfUHlVbmljb2RlX0VuY29kZUNoYXJtYXAodW5pY29kZSwgbWFwcGluZywgTlVMTCk7CiB9CiAKIC8qIGNyZWF0ZSBvciBhZGp1c3QgYSBVbmljb2RlVHJhbnNsYXRlRXJyb3IgKi8KLXN0YXRpYyB2b2lkIG1ha2VfdHJhbnNsYXRlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQeV9VTklDT0RFICp1bmljb2RlLCBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydHBvcywgUHlfc3NpemVfdCBlbmRwb3MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcmVhc29uKQorc3RhdGljIHZvaWQKK21ha2VfdHJhbnNsYXRlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdW5pY29kZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0cG9zLCBQeV9zc2l6ZV90IGVuZHBvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pCiB7CiAgICAgaWYgKCpleGNlcHRpb25PYmplY3QgPT0gTlVMTCkgewotICAgICAgICAqZXhjZXB0aW9uT2JqZWN0ID0gUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfQ3JlYXRlKAotICAgICAgICAgICAgdW5pY29kZSwgc2l6ZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKKyAgICAgICAgKmV4Y2VwdGlvbk9iamVjdCA9IF9QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9DcmVhdGUoCisgICAgICAgICAgICB1bmljb2RlLCBzdGFydHBvcywgZW5kcG9zLCByZWFzb24pOwogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgaWYgKFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX1NldFN0YXJ0KCpleGNlcHRpb25PYmplY3QsIHN0YXJ0cG9zKSkKQEAgLTU5MTYsMTMgKzg0ODAsMTQgQEAKIH0KIAogLyogcmFpc2VzIGEgVW5pY29kZVRyYW5zbGF0ZUVycm9yICovCi1zdGF0aWMgdm9pZCByYWlzZV90cmFuc2xhdGVfZXhjZXB0aW9uKFB5T2JqZWN0ICoqZXhjZXB0aW9uT2JqZWN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBQeV9VTklDT0RFICp1bmljb2RlLCBQeV9zc2l6ZV90IHNpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pCitzdGF0aWMgdm9pZAorcmFpc2VfdHJhbnNsYXRlX2V4Y2VwdGlvbihQeU9iamVjdCAqKmV4Y2VwdGlvbk9iamVjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24pCiB7CiAgICAgbWFrZV90cmFuc2xhdGVfZXhjZXB0aW9uKGV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwgc2l6ZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKICAgICBpZiAoKmV4Y2VwdGlvbk9iamVjdCAhPSBOVUxMKQogICAgICAgICBQeUNvZGVjX1N0cmljdEVycm9ycygqZXhjZXB0aW9uT2JqZWN0KTsKIH0KQEAgLTU5MzEsMTIgKzg0OTYsMTMgQEAKICAgIGJ1aWxkIGFyZ3VtZW50cywgY2FsbCB0aGUgY2FsbGJhY2sgYW5kIGNoZWNrIHRoZSBhcmd1bWVudHMsCiAgICBwdXQgdGhlIHJlc3VsdCBpbnRvIG5ld3BvcyBhbmQgcmV0dXJuIHRoZSByZXBsYWNlbWVudCBzdHJpbmcsIHdoaWNoCiAgICBoYXMgdG8gYmUgZnJlZWQgYnkgdGhlIGNhbGxlciAqLwotc3RhdGljIFB5T2JqZWN0ICp1bmljb2RlX3RyYW5zbGF0ZV9jYWxsX2Vycm9yaGFuZGxlcihjb25zdCBjaGFyICplcnJvcnMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICoqZXJyb3JIYW5kbGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKnVuaWNvZGUsIFB5X3NzaXplX3Qgc2l6ZSwgUHlPYmplY3QgKipleGNlcHRpb25PYmplY3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3MsIFB5X3NzaXplX3QgZW5kcG9zLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90ICpuZXdwb3MpCitzdGF0aWMgUHlPYmplY3QgKgordW5pY29kZV90cmFuc2xhdGVfY2FsbF9lcnJvcmhhbmRsZXIoY29uc3QgY2hhciAqZXJyb3JzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKiplcnJvckhhbmRsZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpyZWFzb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdW5pY29kZSwgUHlPYmplY3QgKipleGNlcHRpb25PYmplY3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0cG9zLCBQeV9zc2l6ZV90IGVuZHBvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKm5ld3BvcykKIHsKICAgICBzdGF0aWMgY2hhciAqYXJncGFyc2UgPSAiTyFuO3RyYW5zbGF0aW5nIGVycm9yIGhhbmRsZXIgbXVzdCByZXR1cm4gKHN0ciwgaW50KSB0dXBsZSI7CiAKQEAgLTU5NTEsNyArODUxNyw3IEBACiAgICAgfQogCiAgICAgbWFrZV90cmFuc2xhdGVfZXhjZXB0aW9uKGV4Y2VwdGlvbk9iamVjdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwgc2l6ZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5pY29kZSwgc3RhcnRwb3MsIGVuZHBvcywgcmVhc29uKTsKICAgICBpZiAoKmV4Y2VwdGlvbk9iamVjdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIApAQCAtNTk3MCwxMCArODUzNiwxMCBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgaWYgKGlfbmV3cG9zPDApCi0gICAgICAgICpuZXdwb3MgPSBzaXplK2lfbmV3cG9zOworICAgICAgICAqbmV3cG9zID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkraV9uZXdwb3M7CiAgICAgZWxzZQogICAgICAgICAqbmV3cG9zID0gaV9uZXdwb3M7Ci0gICAgaWYgKCpuZXdwb3M8MCB8fCAqbmV3cG9zPnNpemUpIHsKKyAgICBpZiAoKm5ld3BvczwwIHx8ICpuZXdwb3M+UHlVbmljb2RlX0dFVF9MRU5HVEgodW5pY29kZSkpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0luZGV4RXJyb3IsICJwb3NpdGlvbiAlemQgZnJvbSBlcnJvciBoYW5kbGVyIG91dCBvZiBib3VuZHMiLCAqbmV3cG9zKTsKICAgICAgICAgUHlfREVDUkVGKHJlc3R1cGxlKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC01OTg2LDggKzg1NTIsOCBAQAogLyogTG9va3VwIHRoZSBjaGFyYWN0ZXIgY2ggaW4gdGhlIG1hcHBpbmcgYW5kIHB1dCB0aGUgcmVzdWx0IGluIHJlc3VsdCwKICAgIHdoaWNoIG11c3QgYmUgZGVjcmVmZWQgYnkgdGhlIGNhbGxlci4KICAgIFJldHVybiAwIG9uIHN1Y2Nlc3MsIC0xIG9uIGVycm9yICovCi1zdGF0aWMKLWludCBjaGFybWFwdHJhbnNsYXRlX2xvb2t1cChQeV9VTklDT0RFIGMsIFB5T2JqZWN0ICptYXBwaW5nLCBQeU9iamVjdCAqKnJlc3VsdCkKK3N0YXRpYyBpbnQKK2NoYXJtYXB0cmFuc2xhdGVfbG9va3VwKFB5X1VDUzQgYywgUHlPYmplY3QgKm1hcHBpbmcsIFB5T2JqZWN0ICoqcmVzdWx0KQogewogICAgIFB5T2JqZWN0ICp3ID0gUHlMb25nX0Zyb21Mb25nKChsb25nKWMpOwogICAgIFB5T2JqZWN0ICp4OwpAQCAtNjAzNiwyMCArODYwMiwxOSBAQAogLyogZW5zdXJlIHRoYXQgKm91dG9iaiBpcyBhdCBsZWFzdCByZXF1aXJlZHNpemUgY2hhcmFjdGVycyBsb25nLAogICAgaWYgbm90IHJlYWxsb2NhdGUgYW5kIGFkanVzdCB2YXJpb3VzIHN0YXRlIHZhcmlhYmxlcy4KICAgIFJldHVybiAwIG9uIHN1Y2Nlc3MsIC0xIG9uIGVycm9yICovCi1zdGF0aWMKLWludCBjaGFybWFwdHJhbnNsYXRlX21ha2VzcGFjZShQeU9iamVjdCAqKm91dG9iaiwgUHlfVU5JQ09ERSAqKm91dHAsCitzdGF0aWMgaW50CitjaGFybWFwdHJhbnNsYXRlX21ha2VzcGFjZShQeV9VQ1M0ICoqb3V0b2JqLCBQeV9zc2l6ZV90ICpwc2l6ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHJlcXVpcmVkc2l6ZSkKIHsKLSAgICBQeV9zc2l6ZV90IG9sZHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUoKm91dG9iaik7CisgICAgUHlfc3NpemVfdCBvbGRzaXplID0gKnBzaXplOwogICAgIGlmIChyZXF1aXJlZHNpemUgPiBvbGRzaXplKSB7Ci0gICAgICAgIC8qIHJlbWVtYmVyIG9sZCBvdXRwdXQgcG9zaXRpb24gKi8KLSAgICAgICAgUHlfc3NpemVfdCBvdXRwb3MgPSAqb3V0cC1QeVVuaWNvZGVfQVNfVU5JQ09ERSgqb3V0b2JqKTsKICAgICAgICAgLyogZXhwb25lbnRpYWxseSBvdmVyYWxsb2NhdGUgdG8gbWluaW1pemUgcmVhbGxvY2F0aW9ucyAqLwogICAgICAgICBpZiAocmVxdWlyZWRzaXplIDwgMiAqIG9sZHNpemUpCiAgICAgICAgICAgICByZXF1aXJlZHNpemUgPSAyICogb2xkc2l6ZTsKLSAgICAgICAgaWYgKFB5VW5pY29kZV9SZXNpemUob3V0b2JqLCByZXF1aXJlZHNpemUpIDwgMCkKKyAgICAgICAgKm91dG9iaiA9IFB5TWVtX1JlYWxsb2MoKm91dG9iaiwgcmVxdWlyZWRzaXplICogc2l6ZW9mKFB5X1VDUzQpKTsKKyAgICAgICAgaWYgKCpvdXRvYmogPT0gMCkKICAgICAgICAgICAgIHJldHVybiAtMTsKLSAgICAgICAgKm91dHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSgqb3V0b2JqKSArIG91dHBvczsKKyAgICAgICAgKnBzaXplID0gcmVxdWlyZWRzaXplOwogICAgIH0KICAgICByZXR1cm4gMDsKIH0KQEAgLTYwNTksMzggKzg2MjQsNDQgQEAKICAgIHVuZGVmaW5lZCAoaW4gd2hpY2ggY2FzZSBubyBjaGFyYWN0ZXIgd2FzIHdyaXR0ZW4pLgogICAgVGhlIGNhbGxlZCBtdXN0IGRlY3JlZiByZXN1bHQuCiAgICBSZXR1cm4gMCBvbiBzdWNjZXNzLCAtMSBvbiBlcnJvci4gKi8KLXN0YXRpYwotaW50IGNoYXJtYXB0cmFuc2xhdGVfb3V0cHV0KGNvbnN0IFB5X1VOSUNPREUgKnN0YXJ0aW5wLCBjb25zdCBQeV9VTklDT0RFICpjdXJpbnAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpbnNpemUsIFB5T2JqZWN0ICptYXBwaW5nLCBQeU9iamVjdCAqKm91dG9iaiwgUHlfVU5JQ09ERSAqKm91dHAsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipyZXMpCitzdGF0aWMgaW50CitjaGFybWFwdHJhbnNsYXRlX291dHB1dChQeU9iamVjdCAqaW5wdXQsIFB5X3NzaXplX3QgaXBvcywKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nLCBQeV9VQ1M0ICoqb3V0cHV0LAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqb3NpemUsIFB5X3NzaXplX3QgKm9wb3MsCisgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnJlcykKIHsKLSAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9sb29rdXAoKmN1cmlucCwgbWFwcGluZywgcmVzKSkKKyAgICBQeV9VQ1M0IGN1cmlucCA9IFB5VW5pY29kZV9SRUFEX0NIQVIoaW5wdXQsIGlwb3MpOworICAgIGlmIChjaGFybWFwdHJhbnNsYXRlX2xvb2t1cChjdXJpbnAsIG1hcHBpbmcsIHJlcykpCiAgICAgICAgIHJldHVybiAtMTsKICAgICBpZiAoKnJlcz09TlVMTCkgewogICAgICAgICAvKiBub3QgZm91bmQgPT4gZGVmYXVsdCB0byAxOjEgbWFwcGluZyAqLwotICAgICAgICAqKCpvdXRwKSsrID0gKmN1cmlucDsKKyAgICAgICAgKCpvdXRwdXQpWygqb3BvcykrK10gPSBjdXJpbnA7CiAgICAgfQogICAgIGVsc2UgaWYgKCpyZXM9PVB5X05vbmUpCiAgICAgICAgIDsKICAgICBlbHNlIGlmIChQeUxvbmdfQ2hlY2soKnJlcykpIHsKICAgICAgICAgLyogbm8gb3ZlcmZsb3cgY2hlY2ssIGJlY2F1c2Ugd2Uga25vdyB0aGF0IHRoZSBzcGFjZSBpcyBlbm91Z2ggKi8KLSAgICAgICAgKigqb3V0cCkrKyA9IChQeV9VTklDT0RFKVB5TG9uZ19BU19MT05HKCpyZXMpOworICAgICAgICAoKm91dHB1dClbKCpvcG9zKSsrXSA9IChQeV9VQ1M0KVB5TG9uZ19BU19MT05HKCpyZXMpOwogICAgIH0KICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2soKnJlcykpIHsKLSAgICAgICAgUHlfc3NpemVfdCByZXBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKCpyZXMpOworICAgICAgICBQeV9zc2l6ZV90IHJlcHNpemU7CisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoKnJlcykgPT0gLTEpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIHJlcHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCgqcmVzKTsKICAgICAgICAgaWYgKHJlcHNpemU9PTEpIHsKICAgICAgICAgICAgIC8qIG5vIG92ZXJmbG93IGNoZWNrLCBiZWNhdXNlIHdlIGtub3cgdGhhdCB0aGUgc3BhY2UgaXMgZW5vdWdoICovCi0gICAgICAgICAgICAqKCpvdXRwKSsrID0gKlB5VW5pY29kZV9BU19VTklDT0RFKCpyZXMpOworICAgICAgICAgICAgKCpvdXRwdXQpWygqb3BvcykrK10gPSBQeVVuaWNvZGVfUkVBRF9DSEFSKCpyZXMsIDApOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKHJlcHNpemUhPTApIHsKICAgICAgICAgICAgIC8qIG1vcmUgdGhhbiBvbmUgY2hhcmFjdGVyICovCi0gICAgICAgICAgICBQeV9zc2l6ZV90IHJlcXVpcmVkc2l6ZSA9ICgqb3V0cC1QeVVuaWNvZGVfQVNfVU5JQ09ERSgqb3V0b2JqKSkgKwotICAgICAgICAgICAgICAgIChpbnNpemUgLSAoY3VyaW5wLXN0YXJ0aW5wKSkgKworICAgICAgICAgICAgUHlfc3NpemVfdCByZXF1aXJlZHNpemUgPSAqb3BvcyArCisgICAgICAgICAgICAgICAgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGlucHV0KSAtIGlwb3MpICsKICAgICAgICAgICAgICAgICByZXBzaXplIC0gMTsKLSAgICAgICAgICAgIGlmIChjaGFybWFwdHJhbnNsYXRlX21ha2VzcGFjZShvdXRvYmosIG91dHAsIHJlcXVpcmVkc2l6ZSkpCisgICAgICAgICAgICBQeV9zc2l6ZV90IGk7CisgICAgICAgICAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9tYWtlc3BhY2Uob3V0cHV0LCBvc2l6ZSwgcmVxdWlyZWRzaXplKSkKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7Ci0gICAgICAgICAgICBtZW1jcHkoKm91dHAsIFB5VW5pY29kZV9BU19VTklDT0RFKCpyZXMpLCBzaXplb2YoUHlfVU5JQ09ERSkqcmVwc2l6ZSk7Ci0gICAgICAgICAgICAqb3V0cCArPSByZXBzaXplOworICAgICAgICAgICAgZm9yKGkgPSAwOyBpIDwgcmVwc2l6ZTsgaSsrKQorICAgICAgICAgICAgICAgICgqb3V0cHV0KVsoKm9wb3MpKytdID0gUHlVbmljb2RlX1JFQURfQ0hBUigqcmVzLCBpKTsKICAgICAgICAgfQogICAgIH0KICAgICBlbHNlCkBAIC02MDk4LDIwICs4NjY5LDIxIEBACiAgICAgcmV0dXJuIDA7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcChjb25zdCBQeV9VTklDT0RFICpwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqbWFwcGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitQeU9iamVjdCAqCitfUHlVbmljb2RlX1RyYW5zbGF0ZUNoYXJtYXAoUHlPYmplY3QgKmlucHV0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICptYXBwaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKLSAgICAvKiBvdXRwdXQgb2JqZWN0ICovCi0gICAgUHlPYmplY3QgKnJlcyA9IE5VTEw7Ci0gICAgLyogcG9pbnRlcnMgdG8gdGhlIGJlZ2lubmluZyBhbmQgZW5kKzEgb2YgaW5wdXQgKi8KLSAgICBjb25zdCBQeV9VTklDT0RFICpzdGFydHAgPSBwOwotICAgIGNvbnN0IFB5X1VOSUNPREUgKmVuZHAgPSBwICsgc2l6ZTsKLSAgICAvKiBwb2ludGVyIGludG8gdGhlIG91dHB1dCAqLwotICAgIFB5X1VOSUNPREUgKnN0cjsKKyAgICAvKiBpbnB1dCBvYmplY3QgKi8KKyAgICBjaGFyICppZGF0YTsKKyAgICBQeV9zc2l6ZV90IHNpemUsIGk7CisgICAgaW50IGtpbmQ7CisgICAgLyogb3V0cHV0IGJ1ZmZlciAqLworICAgIFB5X1VDUzQgKm91dHB1dCA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBvc2l6ZTsKKyAgICBQeU9iamVjdCAqcmVzOwogICAgIC8qIGN1cnJlbnQgb3V0cHV0IHBvc2l0aW9uICovCi0gICAgUHlfc3NpemVfdCByZXNwb3MgPSAwOworICAgIFB5X3NzaXplX3Qgb3BvczsKICAgICBjaGFyICpyZWFzb24gPSAiY2hhcmFjdGVyIG1hcHMgdG8gPHVuZGVmaW5lZD4iOwogICAgIFB5T2JqZWN0ICplcnJvckhhbmRsZXIgPSBOVUxMOwogICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOwpAQCAtNjEyNSwzOCArODY5Nyw1MiBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKGlucHV0KSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWRhdGEgPSAoY2hhciopUHlVbmljb2RlX0RBVEEoaW5wdXQpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChpbnB1dCk7CisgICAgc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGlucHV0KTsKKyAgICBpID0gMDsKKworICAgIGlmIChzaXplID09IDApIHsKKyAgICAgICAgUHlfSU5DUkVGKGlucHV0KTsKKyAgICAgICAgcmV0dXJuIGlucHV0OworICAgIH0KKwogICAgIC8qIGFsbG9jYXRlIGVub3VnaCBmb3IgYSBzaW1wbGUgMToxIHRyYW5zbGF0aW9uIHdpdGhvdXQKICAgICAgICByZXBsYWNlbWVudHMsIGlmIHdlIG5lZWQgbW9yZSwgd2UnbGwgcmVzaXplICovCi0gICAgcmVzID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHNpemUpOwotICAgIGlmIChyZXMgPT0gTlVMTCkKKyAgICBvc2l6ZSA9IHNpemU7CisgICAgb3V0cHV0ID0gUHlNZW1fTWFsbG9jKG9zaXplICogc2l6ZW9mKFB5X1VDUzQpKTsKKyAgICBvcG9zID0gMDsKKyAgICBpZiAob3V0cHV0ID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsKICAgICAgICAgZ290byBvbkVycm9yOwotICAgIGlmIChzaXplID09IDApCi0gICAgICAgIHJldHVybiByZXM7Ci0gICAgc3RyID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzKTsKKyAgICB9CiAKLSAgICB3aGlsZSAocDxlbmRwKSB7CisgICAgd2hpbGUgKGk8c2l6ZSkgewogICAgICAgICAvKiB0cnkgdG8gZW5jb2RlIGl0ICovCiAgICAgICAgIFB5T2JqZWN0ICp4ID0gTlVMTDsKLSAgICAgICAgaWYgKGNoYXJtYXB0cmFuc2xhdGVfb3V0cHV0KHN0YXJ0cCwgcCwgc2l6ZSwgbWFwcGluZywgJnJlcywgJnN0ciwgJngpKSB7CisgICAgICAgIGlmIChjaGFybWFwdHJhbnNsYXRlX291dHB1dChpbnB1dCwgaSwgbWFwcGluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZvdXRwdXQsICZvc2l6ZSwgJm9wb3MsICZ4KSkgewogICAgICAgICAgICAgUHlfWERFQ1JFRih4KTsKICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgfQogICAgICAgICBQeV9YREVDUkVGKHgpOwogICAgICAgICBpZiAoeCE9UHlfTm9uZSkgLyogaXQgd29ya2VkID0+IGFkanVzdCBpbnB1dCBwb2ludGVyICovCi0gICAgICAgICAgICArK3A7CisgICAgICAgICAgICArK2k7CiAgICAgICAgIGVsc2UgeyAvKiB1bnRyYW5zbGF0YWJsZSBjaGFyYWN0ZXIgKi8KICAgICAgICAgICAgIFB5T2JqZWN0ICpyZXB1bmljb2RlID0gTlVMTDsgLyogaW5pdGlhbGl6ZSB0byBwcmV2ZW50IGdjYyB3YXJuaW5nICovCiAgICAgICAgICAgICBQeV9zc2l6ZV90IHJlcHNpemU7CiAgICAgICAgICAgICBQeV9zc2l6ZV90IG5ld3BvczsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKnVuaTI7CisgICAgICAgICAgICBQeV9zc2l6ZV90IHVuaTI7CiAgICAgICAgICAgICAvKiBzdGFydHBvcyBmb3IgY29sbGVjdGluZyB1bnRyYW5zbGF0YWJsZSBjaGFycyAqLwotICAgICAgICAgICAgY29uc3QgUHlfVU5JQ09ERSAqY29sbHN0YXJ0ID0gcDsKLSAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKmNvbGxlbmQgPSBwKzE7Ci0gICAgICAgICAgICBjb25zdCBQeV9VTklDT0RFICpjb2xsOworICAgICAgICAgICAgUHlfc3NpemVfdCBjb2xsc3RhcnQgPSBpOworICAgICAgICAgICAgUHlfc3NpemVfdCBjb2xsZW5kID0gaSsxOworICAgICAgICAgICAgUHlfc3NpemVfdCBjb2xsOwogCiAgICAgICAgICAgICAvKiBmaW5kIGFsbCB1bnRyYW5zbGF0YWJsZSBjaGFyYWN0ZXJzICovCi0gICAgICAgICAgICB3aGlsZSAoY29sbGVuZCA8IGVuZHApIHsKLSAgICAgICAgICAgICAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9sb29rdXAoKmNvbGxlbmQsIG1hcHBpbmcsICZ4KSkKKyAgICAgICAgICAgIHdoaWxlIChjb2xsZW5kIDwgc2l6ZSkgeworICAgICAgICAgICAgICAgIGlmIChjaGFybWFwdHJhbnNsYXRlX2xvb2t1cChQeVVuaWNvZGVfUkVBRChraW5kLGlkYXRhLCBjb2xsZW5kKSwgbWFwcGluZywgJngpKQogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgUHlfWERFQ1JFRih4KTsKICAgICAgICAgICAgICAgICBpZiAoeCE9UHlfTm9uZSkKQEAgLTYxNzksODAgKzg3NjUsOTQgQEAKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHN3aXRjaCAoa25vd25fZXJyb3JIYW5kbGVyKSB7CiAgICAgICAgICAgICBjYXNlIDE6IC8qIHN0cmljdCAqLwotICAgICAgICAgICAgICAgIHJhaXNlX3RyYW5zbGF0ZV9leGNlcHRpb24oJmV4Yywgc3RhcnRwLCBzaXplLCBjb2xsc3RhcnQtc3RhcnRwLCBjb2xsZW5kLXN0YXJ0cCwgcmVhc29uKTsKKyAgICAgICAgICAgICAgICByYWlzZV90cmFuc2xhdGVfZXhjZXB0aW9uKCZleGMsIGlucHV0LCBjb2xsc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xsZW5kLCByZWFzb24pOwogICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIGNhc2UgMjogLyogcmVwbGFjZSAqLwogICAgICAgICAgICAgICAgIC8qIE5vIG5lZWQgdG8gY2hlY2sgZm9yIHNwYWNlLCB0aGlzIGlzIGEgMToxIHJlcGxhY2VtZW50ICovCi0gICAgICAgICAgICAgICAgZm9yIChjb2xsID0gY29sbHN0YXJ0OyBjb2xsPGNvbGxlbmQ7ICsrY29sbCkKLSAgICAgICAgICAgICAgICAgICAgKnN0cisrID0gJz8nOworICAgICAgICAgICAgICAgIGZvciAoY29sbCA9IGNvbGxzdGFydDsgY29sbDxjb2xsZW5kOyBjb2xsKyspCisgICAgICAgICAgICAgICAgICAgIG91dHB1dFtvcG9zKytdID0gJz8nOwogICAgICAgICAgICAgICAgIC8qIGZhbGwgdGhyb3VnaCAqLwogICAgICAgICAgICAgY2FzZSAzOiAvKiBpZ25vcmUgKi8KLSAgICAgICAgICAgICAgICBwID0gY29sbGVuZDsKKyAgICAgICAgICAgICAgICBpID0gY29sbGVuZDsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgNDogLyogeG1sY2hhcnJlZnJlcGxhY2UgKi8KLSAgICAgICAgICAgICAgICAvKiBnZW5lcmF0ZSByZXBsYWNlbWVudCAodGVtcG9yYXJpbHkgKG1pcyl1c2VzIHApICovCi0gICAgICAgICAgICAgICAgZm9yIChwID0gY29sbHN0YXJ0OyBwIDwgY29sbGVuZDsgKytwKSB7CisgICAgICAgICAgICAgICAgLyogZ2VuZXJhdGUgcmVwbGFjZW1lbnQgKHRlbXBvcmFyaWx5IChtaXMpdXNlcyBpKSAqLworICAgICAgICAgICAgICAgIGZvciAoaSA9IGNvbGxzdGFydDsgaSA8IGNvbGxlbmQ7ICsraSkgewogICAgICAgICAgICAgICAgICAgICBjaGFyIGJ1ZmZlclsyKzI5KzErMV07CiAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmNwOwotICAgICAgICAgICAgICAgICAgICBzcHJpbnRmKGJ1ZmZlciwgIiYjJWQ7IiwgKGludCkqcCk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChjaGFybWFwdHJhbnNsYXRlX21ha2VzcGFjZSgmcmVzLCAmc3RyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0ci1QeVVuaWNvZGVfQVNfVU5JQ09ERShyZXMpKStzdHJsZW4oYnVmZmVyKSsoZW5kcC1jb2xsZW5kKSkpCisgICAgICAgICAgICAgICAgICAgIHNwcmludGYoYnVmZmVyLCAiJiMlZDsiLCBQeVVuaWNvZGVfUkVBRChraW5kLCBpZGF0YSwgaSkpOworICAgICAgICAgICAgICAgICAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9tYWtlc3BhY2UoJm91dHB1dCwgJm9zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BvcytzdHJsZW4oYnVmZmVyKSsoc2l6ZS1jb2xsZW5kKSkpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgICAgIGZvciAoY3AgPSBidWZmZXI7ICpjcDsgKytjcCkKLSAgICAgICAgICAgICAgICAgICAgICAgICpzdHIrKyA9ICpjcDsKKyAgICAgICAgICAgICAgICAgICAgICAgIG91dHB1dFtvcG9zKytdID0gKmNwOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBwID0gY29sbGVuZDsKKyAgICAgICAgICAgICAgICBpID0gY29sbGVuZDsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgcmVwdW5pY29kZSA9IHVuaWNvZGVfdHJhbnNsYXRlX2NhbGxfZXJyb3JoYW5kbGVyKGVycm9ycywgJmVycm9ySGFuZGxlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhc29uLCBzdGFydHAsIHNpemUsICZleGMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbGxzdGFydC1zdGFydHAsIGNvbGxlbmQtc3RhcnRwLCAmbmV3cG9zKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhc29uLCBpbnB1dCwgJmV4YywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sbHN0YXJ0LCBjb2xsZW5kLCAmbmV3cG9zKTsKICAgICAgICAgICAgICAgICBpZiAocmVwdW5pY29kZSA9PSBOVUxMKQogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7Ci0gICAgICAgICAgICAgICAgLyogZ2VuZXJhdGUgcmVwbGFjZW1lbnQgICovCi0gICAgICAgICAgICAgICAgcmVwc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShyZXB1bmljb2RlKTsKLSAgICAgICAgICAgICAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9tYWtlc3BhY2UoJnJlcywgJnN0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0ci1QeVVuaWNvZGVfQVNfVU5JQ09ERShyZXMpKStyZXBzaXplKyhlbmRwLWNvbGxlbmQpKSkgeworICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocmVwdW5pY29kZSkgPT0gLTEpIHsKICAgICAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcHVuaWNvZGUpOwogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGZvciAodW5pMiA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlcHVuaWNvZGUpOyByZXBzaXplLS0+MDsgKyt1bmkyKQotICAgICAgICAgICAgICAgICAgICAqc3RyKysgPSAqdW5pMjsKLSAgICAgICAgICAgICAgICBwID0gc3RhcnRwICsgbmV3cG9zOworICAgICAgICAgICAgICAgIC8qIGdlbmVyYXRlIHJlcGxhY2VtZW50ICAqLworICAgICAgICAgICAgICAgIHJlcHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZXB1bmljb2RlKTsKKyAgICAgICAgICAgICAgICBpZiAoY2hhcm1hcHRyYW5zbGF0ZV9tYWtlc3BhY2UoJm91dHB1dCwgJm9zaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcG9zK3JlcHNpemUrKHNpemUtY29sbGVuZCkpKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihyZXB1bmljb2RlKTsKKyAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBmb3IgKHVuaTIgPSAwOyByZXBzaXplLS0+MDsgKyt1bmkyKQorICAgICAgICAgICAgICAgICAgICBvdXRwdXRbb3BvcysrXSA9IFB5VW5pY29kZV9SRUFEX0NIQVIocmVwdW5pY29kZSwgdW5pMik7CisgICAgICAgICAgICAgICAgaSA9IG5ld3BvczsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwdW5pY29kZSk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9Ci0gICAgLyogUmVzaXplIGlmIHdlIGFsbG9jYXRlZCB0byBtdWNoICovCi0gICAgcmVzcG9zID0gc3RyLVB5VW5pY29kZV9BU19VTklDT0RFKHJlcyk7Ci0gICAgaWYgKHJlc3BvczxQeVVuaWNvZGVfR0VUX1NJWkUocmVzKSkgewotICAgICAgICBpZiAoUHlVbmljb2RlX1Jlc2l6ZSgmcmVzLCByZXNwb3MpIDwgMCkKLSAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICB9CisgICAgcmVzID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwgb3V0cHV0LCBvcG9zKTsKKyAgICBpZiAoIXJlcykKKyAgICAgICAgZ290byBvbkVycm9yOworICAgIFB5TWVtX0ZyZWUob3V0cHV0KTsKICAgICBQeV9YREVDUkVGKGV4Yyk7CiAgICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOwogICAgIHJldHVybiByZXM7CiAKICAgb25FcnJvcjoKLSAgICBQeV9YREVDUkVGKHJlcyk7CisgICAgUHlNZW1fRnJlZShvdXRwdXQpOwogICAgIFB5X1hERUNSRUYoZXhjKTsKICAgICBQeV9YREVDUkVGKGVycm9ySGFuZGxlcik7CiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfVHJhbnNsYXRlKFB5T2JqZWN0ICpzdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqbWFwcGluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKKy8qIERlcHJlY2F0ZWQuIFVzZSBQeVVuaWNvZGVfVHJhbnNsYXRlIGluc3RlYWQuICovCitQeU9iamVjdCAqCitQeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcChjb25zdCBQeV9VTklDT0RFICpwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm1hcHBpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCit7CisgICAgUHlPYmplY3QgKnVuaWNvZGUgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocCwgc2l6ZSk7CisgICAgaWYgKCF1bmljb2RlKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXR1cm4gX1B5VW5pY29kZV9UcmFuc2xhdGVDaGFybWFwKHVuaWNvZGUsIG1hcHBpbmcsIGVycm9ycyk7Cit9CisKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9UcmFuc2xhdGUoUHlPYmplY3QgKnN0ciwKKyAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKm1hcHBpbmcsCisgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogCiAgICAgc3RyID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyKTsKICAgICBpZiAoc3RyID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICByZXN1bHQgPSBQeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcChQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcHBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzKTsKKyAgICByZXN1bHQgPSBfUHlVbmljb2RlX1RyYW5zbGF0ZUNoYXJtYXAoc3RyLCBtYXBwaW5nLCBlcnJvcnMpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiByZXN1bHQ7CiAKQEAgLTYyNjEsMTc5ICs4ODYxLDI3NSBAQAogICAgIHJldHVybiBOVUxMOwogfQogCitzdGF0aWMgUHlfVUNTNAorZml4X2RlY2ltYWxfYW5kX3NwYWNlX3RvX2FzY2lpKFB5T2JqZWN0ICpzZWxmKQoreworICAgIC8qIE5vIG5lZWQgdG8gY2FsbCBQeVVuaWNvZGVfUkVBRFkoc2VsZikgYmVjYXVzZSB0aGlzIGZ1bmN0aW9uIGlzIG9ubHkKKyAgICAgICBjYWxsZWQgYXMgYSBjYWxsYmFjayBmcm9tIGZpeHVwKCkgd2hpY2ggZG9lcyBpdCBhbHJlYWR5LiAqLworICAgIGNvbnN0IFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgY29uc3QgaW50IGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICB2b2lkICpkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgUHlfVUNTNCBtYXhjaGFyID0gMCwgY2gsIGZpeGVkOworICAgIGludCBtb2RpZmllZCA9IDA7CisgICAgUHlfc3NpemVfdCBpOworCisgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgKytpKSB7CisgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICAgIGZpeGVkID0gMDsKKyAgICAgICAgaWYgKGNoID4gMTI3KSB7CisgICAgICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU1NQQUNFKGNoKSkKKyAgICAgICAgICAgICAgICBmaXhlZCA9ICcgJzsKKyAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgIGNvbnN0IGludCBkZWNpbWFsID0gUHlfVU5JQ09ERV9UT0RFQ0lNQUwoY2gpOworICAgICAgICAgICAgICAgIGlmIChkZWNpbWFsID49IDApCisgICAgICAgICAgICAgICAgICAgIGZpeGVkID0gJzAnICsgZGVjaW1hbDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChmaXhlZCAhPSAwKSB7CisgICAgICAgICAgICAgICAgbW9kaWZpZWQgPSAxOworICAgICAgICAgICAgICAgIGlmIChmaXhlZCA+IG1heGNoYXIpCisgICAgICAgICAgICAgICAgICAgIG1heGNoYXIgPSBmaXhlZDsKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgaSwgZml4ZWQpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSBpZiAoY2ggPiBtYXhjaGFyKQorICAgICAgICAgICAgICAgIG1heGNoYXIgPSBjaDsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmIChjaCA+IG1heGNoYXIpCisgICAgICAgICAgICBtYXhjaGFyID0gY2g7CisgICAgfQorCisgICAgcmV0dXJuIChtb2RpZmllZCkgPyBtYXhjaGFyIDogMDsKK30KKworUHlPYmplY3QgKgorX1B5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsQW5kU3BhY2VUb0FTQ0lJKFB5T2JqZWN0ICp1bmljb2RlKQoreworICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHVuaWNvZGUpKSB7CisgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRSh1bmljb2RlKSA8PSAxMjcpIHsKKyAgICAgICAgLyogSWYgdGhlIHN0cmluZyBpcyBhbHJlYWR5IEFTQ0lJLCBqdXN0IHJldHVybiB0aGUgc2FtZSBzdHJpbmcgKi8KKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGUpOworICAgICAgICByZXR1cm4gdW5pY29kZTsKKyAgICB9CisgICAgcmV0dXJuIGZpeHVwKHVuaWNvZGUsIGZpeF9kZWNpbWFsX2FuZF9zcGFjZV90b19hc2NpaSk7Cit9CisKIFB5T2JqZWN0ICoKIFB5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsVG9BU0NJSShQeV9VTklDT0RFICpzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuZ3RoKQogewotICAgIFB5T2JqZWN0ICpyZXN1bHQ7Ci0gICAgUHlfVU5JQ09ERSAqcDsgLyogd3JpdGUgcG9pbnRlciBpbnRvIHJlc3VsdCAqLworICAgIFB5T2JqZWN0ICpkZWNpbWFsOwogICAgIFB5X3NzaXplX3QgaTsKLSAgICAvKiBDb3B5IHRvIGEgbmV3IHN0cmluZyAqLwotICAgIHJlc3VsdCA9IChQeU9iamVjdCAqKV9QeVVuaWNvZGVfTmV3KGxlbmd0aCk7Ci0gICAgUHlfVU5JQ09ERV9DT1BZKFB5VW5pY29kZV9BU19VTklDT0RFKHJlc3VsdCksIHMsIGxlbmd0aCk7Ci0gICAgaWYgKHJlc3VsdCA9PSBOVUxMKQotICAgICAgICByZXR1cm4gcmVzdWx0OwotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXN1bHQpOwotICAgIC8qIEl0ZXJhdGUgb3ZlciBjb2RlIHBvaW50cyAqLworICAgIFB5X1VDUzQgbWF4Y2hhcjsKKyAgICBlbnVtIFB5VW5pY29kZV9LaW5kIGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKworICAgIG1heGNoYXIgPSAwOwogICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgewotICAgICAgICBQeV9VTklDT0RFIGNoID1zW2ldOworICAgICAgICBQeV9VTklDT0RFIGNoID0gc1tpXTsKICAgICAgICAgaWYgKGNoID4gMTI3KSB7CiAgICAgICAgICAgICBpbnQgZGVjaW1hbCA9IFB5X1VOSUNPREVfVE9ERUNJTUFMKGNoKTsKICAgICAgICAgICAgIGlmIChkZWNpbWFsID49IDApCi0gICAgICAgICAgICAgICAgcFtpXSA9ICcwJyArIGRlY2ltYWw7CisgICAgICAgICAgICAgICAgY2ggPSAnMCcgKyBkZWNpbWFsOwogICAgICAgICB9CisgICAgICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgY2gpOwogICAgIH0KLSAgICByZXR1cm4gcmVzdWx0OworCisgICAgLyogQ29weSB0byBhIG5ldyBzdHJpbmcgKi8KKyAgICBkZWNpbWFsID0gUHlVbmljb2RlX05ldyhsZW5ndGgsIG1heGNoYXIpOworICAgIGlmIChkZWNpbWFsID09IE5VTEwpCisgICAgICAgIHJldHVybiBkZWNpbWFsOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChkZWNpbWFsKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoZGVjaW1hbCk7CisgICAgLyogSXRlcmF0ZSBvdmVyIGNvZGUgcG9pbnRzICovCisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIFB5X1VOSUNPREUgY2ggPSBzW2ldOworICAgICAgICBpZiAoY2ggPiAxMjcpIHsKKyAgICAgICAgICAgIGludCBkZWNpbWFsID0gUHlfVU5JQ09ERV9UT0RFQ0lNQUwoY2gpOworICAgICAgICAgICAgaWYgKGRlY2ltYWwgPj0gMCkKKyAgICAgICAgICAgICAgICBjaCA9ICcwJyArIGRlY2ltYWw7CisgICAgICAgIH0KKyAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIGksIGNoKTsKKyAgICB9CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KGRlY2ltYWwpOwogfQogLyogLS0tIERlY2ltYWwgRW5jb2RlciAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKLWludCBQeVVuaWNvZGVfRW5jb2RlRGVjaW1hbChQeV9VTklDT0RFICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuZ3RoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKm91dHB1dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICplcnJvcnMpCitpbnQKK1B5VW5pY29kZV9FbmNvZGVEZWNpbWFsKFB5X1VOSUNPREUgKnMsCisgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbmd0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKm91dHB1dCwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmVycm9ycykKIHsKLSAgICBQeV9VTklDT0RFICpwLCAqZW5kOwotICAgIFB5T2JqZWN0ICplcnJvckhhbmRsZXIgPSBOVUxMOwotICAgIFB5T2JqZWN0ICpleGMgPSBOVUxMOwotICAgIGNvbnN0IGNoYXIgKmVuY29kaW5nID0gImRlY2ltYWwiOwotICAgIGNvbnN0IGNoYXIgKnJlYXNvbiA9ICJpbnZhbGlkIGRlY2ltYWwgVW5pY29kZSBzdHJpbmciOwotICAgIC8qIHRoZSBmb2xsb3dpbmcgdmFyaWFibGUgaXMgdXNlZCBmb3IgY2FjaGluZyBzdHJpbmcgY29tcGFyaXNvbnMKLSAgICAgKiAtMT1ub3QgaW5pdGlhbGl6ZWQsIDA9dW5rbm93biwgMT1zdHJpY3QsIDI9cmVwbGFjZSwgMz1pZ25vcmUsIDQ9eG1sY2hhcnJlZnJlcGxhY2UgKi8KLSAgICBpbnQga25vd25fZXJyb3JIYW5kbGVyID0gLTE7CisgICAgUHlPYmplY3QgKnVuaWNvZGU7CisgICAgUHlfc3NpemVfdCBpOworICAgIGVudW0gUHlVbmljb2RlX0tpbmQga2luZDsKKyAgICB2b2lkICpkYXRhOwogCiAgICAgaWYgKG91dHB1dCA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0JhZEFyZ3VtZW50KCk7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAKLSAgICBwID0gczsKLSAgICBlbmQgPSBzICsgbGVuZ3RoOwotICAgIHdoaWxlIChwIDwgZW5kKSB7Ci0gICAgICAgIHJlZ2lzdGVyIFB5X1VOSUNPREUgY2ggPSAqcDsKKyAgICB1bmljb2RlID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHMsIGxlbmd0aCk7CisgICAgaWYgKHVuaWNvZGUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkgeworICAgICAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHVuaWNvZGUpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSh1bmljb2RlKTsKKworICAgIGZvciAoaT0wOyBpIDwgbGVuZ3RoOyApIHsKKyAgICAgICAgUHlPYmplY3QgKmV4YzsKKyAgICAgICAgUHlfVUNTNCBjaDsKICAgICAgICAgaW50IGRlY2ltYWw7Ci0gICAgICAgIFB5T2JqZWN0ICpyZXB1bmljb2RlOwotICAgICAgICBQeV9zc2l6ZV90IHJlcHNpemU7Ci0gICAgICAgIFB5X3NzaXplX3QgbmV3cG9zOwotICAgICAgICBQeV9VTklDT0RFICp1bmkyOwotICAgICAgICBQeV9VTklDT0RFICpjb2xsc3RhcnQ7Ci0gICAgICAgIFB5X1VOSUNPREUgKmNvbGxlbmQ7CisgICAgICAgIFB5X3NzaXplX3Qgc3RhcnRwb3M7CisKKyAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKIAogICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU1NQQUNFKGNoKSkgewogICAgICAgICAgICAgKm91dHB1dCsrID0gJyAnOwotICAgICAgICAgICAgKytwOworICAgICAgICAgICAgaSsrOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KICAgICAgICAgZGVjaW1hbCA9IFB5X1VOSUNPREVfVE9ERUNJTUFMKGNoKTsKICAgICAgICAgaWYgKGRlY2ltYWwgPj0gMCkgewogICAgICAgICAgICAgKm91dHB1dCsrID0gJzAnICsgZGVjaW1hbDsKLSAgICAgICAgICAgICsrcDsKKyAgICAgICAgICAgIGkrKzsKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICB9CiAgICAgICAgIGlmICgwIDwgY2ggJiYgY2ggPCAyNTYpIHsKICAgICAgICAgICAgICpvdXRwdXQrKyA9IChjaGFyKWNoOwotICAgICAgICAgICAgKytwOworICAgICAgICAgICAgaSsrOwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIH0KLSAgICAgICAgLyogQWxsIG90aGVyIGNoYXJhY3RlcnMgYXJlIGNvbnNpZGVyZWQgdW5lbmNvZGFibGUgKi8KLSAgICAgICAgY29sbHN0YXJ0ID0gcDsKLSAgICAgICAgZm9yIChjb2xsZW5kID0gcCsxOyBjb2xsZW5kIDwgZW5kOyBjb2xsZW5kKyspIHsKLSAgICAgICAgICAgIGlmICgoMCA8ICpjb2xsZW5kICYmICpjb2xsZW5kIDwgMjU2KSB8fAotICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfSVNTUEFDRSgqY29sbGVuZCkgfHwKLSAgICAgICAgICAgICAgICAwIDw9IFB5X1VOSUNPREVfVE9ERUNJTUFMKCpjb2xsZW5kKSkKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgICAgICAvKiBjYWNoZSBjYWxsYmFjayBuYW1lIGxvb2t1cAotICAgICAgICAgKiAoaWYgbm90IGRvbmUgeWV0LCBpLmUuIGl0J3MgdGhlIGZpcnN0IGVycm9yKSAqLwotICAgICAgICBpZiAoa25vd25fZXJyb3JIYW5kbGVyPT0tMSkgewotICAgICAgICAgICAgaWYgKChlcnJvcnM9PU5VTEwpIHx8ICghc3RyY21wKGVycm9ycywgInN0cmljdCIpKSkKLSAgICAgICAgICAgICAgICBrbm93bl9lcnJvckhhbmRsZXIgPSAxOwotICAgICAgICAgICAgZWxzZSBpZiAoIXN0cmNtcChlcnJvcnMsICJyZXBsYWNlIikpCi0gICAgICAgICAgICAgICAga25vd25fZXJyb3JIYW5kbGVyID0gMjsKLSAgICAgICAgICAgIGVsc2UgaWYgKCFzdHJjbXAoZXJyb3JzLCAiaWdub3JlIikpCi0gICAgICAgICAgICAgICAga25vd25fZXJyb3JIYW5kbGVyID0gMzsKLSAgICAgICAgICAgIGVsc2UgaWYgKCFzdHJjbXAoZXJyb3JzLCAieG1sY2hhcnJlZnJlcGxhY2UiKSkKLSAgICAgICAgICAgICAgICBrbm93bl9lcnJvckhhbmRsZXIgPSA0OwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIGtub3duX2Vycm9ySGFuZGxlciA9IDA7Ci0gICAgICAgIH0KLSAgICAgICAgc3dpdGNoIChrbm93bl9lcnJvckhhbmRsZXIpIHsKLSAgICAgICAgY2FzZSAxOiAvKiBzdHJpY3QgKi8KLSAgICAgICAgICAgIHJhaXNlX2VuY29kZV9leGNlcHRpb24oJmV4YywgZW5jb2RpbmcsIHMsIGxlbmd0aCwgY29sbHN0YXJ0LXMsIGNvbGxlbmQtcywgcmVhc29uKTsKLSAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICAgICAgY2FzZSAyOiAvKiByZXBsYWNlICovCi0gICAgICAgICAgICBmb3IgKHAgPSBjb2xsc3RhcnQ7IHAgPCBjb2xsZW5kOyArK3ApCi0gICAgICAgICAgICAgICAgKm91dHB1dCsrID0gJz8nOwotICAgICAgICAgICAgLyogZmFsbCB0aHJvdWdoICovCi0gICAgICAgIGNhc2UgMzogLyogaWdub3JlICovCi0gICAgICAgICAgICBwID0gY29sbGVuZDsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIDQ6IC8qIHhtbGNoYXJyZWZyZXBsYWNlICovCi0gICAgICAgICAgICAvKiBnZW5lcmF0ZSByZXBsYWNlbWVudCAodGVtcG9yYXJpbHkgKG1pcyl1c2VzIHApICovCi0gICAgICAgICAgICBmb3IgKHAgPSBjb2xsc3RhcnQ7IHAgPCBjb2xsZW5kOyArK3ApCi0gICAgICAgICAgICAgICAgb3V0cHV0ICs9IHNwcmludGYob3V0cHV0LCAiJiMlZDsiLCAoaW50KSpwKTsKLSAgICAgICAgICAgIHAgPSBjb2xsZW5kOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgICByZXB1bmljb2RlID0gdW5pY29kZV9lbmNvZGVfY2FsbF9lcnJvcmhhbmRsZXIoZXJyb3JzLCAmZXJyb3JIYW5kbGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuY29kaW5nLCByZWFzb24sIHMsIGxlbmd0aCwgJmV4YywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xsc3RhcnQtcywgY29sbGVuZC1zLCAmbmV3cG9zKTsKLSAgICAgICAgICAgIGlmIChyZXB1bmljb2RlID09IE5VTEwpCi0gICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwotICAgICAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2socmVwdW5pY29kZSkpIHsKLSAgICAgICAgICAgICAgICAvKiBCeXRlIHJlc3VsdHMgbm90IHN1cHBvcnRlZCwgc2luY2UgdGhleSBoYXZlIG5vIGRlY2ltYWwgcHJvcGVydHkuICovCi0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImVycm9yIGhhbmRsZXIgc2hvdWxkIHJldHVybiB1bmljb2RlIik7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlcHVuaWNvZGUpOwotICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIGdlbmVyYXRlIHJlcGxhY2VtZW50ICAqLwotICAgICAgICAgICAgcmVwc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRShyZXB1bmljb2RlKTsKLSAgICAgICAgICAgIGZvciAodW5pMiA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlcHVuaWNvZGUpOyByZXBzaXplLS0+MDsgKyt1bmkyKSB7Ci0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERSBjaCA9ICp1bmkyOwotICAgICAgICAgICAgICAgIGlmIChQeV9VTklDT0RFX0lTU1BBQ0UoY2gpKQotICAgICAgICAgICAgICAgICAgICAqb3V0cHV0KysgPSAnICc7Ci0gICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgIGRlY2ltYWwgPSBQeV9VTklDT0RFX1RPREVDSU1BTChjaCk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChkZWNpbWFsID49IDApCi0gICAgICAgICAgICAgICAgICAgICAgICAqb3V0cHV0KysgPSAnMCcgKyBkZWNpbWFsOwotICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgwIDwgY2ggJiYgY2ggPCAyNTYpCi0gICAgICAgICAgICAgICAgICAgICAgICAqb3V0cHV0KysgPSAoY2hhciljaDsKLSAgICAgICAgICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocmVwdW5pY29kZSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICByYWlzZV9lbmNvZGVfZXhjZXB0aW9uKCZleGMsIGVuY29kaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLCBsZW5ndGgsIGNvbGxzdGFydC1zLCBjb2xsZW5kLXMsIHJlYXNvbik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBwID0gcyArIG5ld3BvczsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihyZXB1bmljb2RlKTsKLSAgICAgICAgfQorCisgICAgICAgIHN0YXJ0cG9zID0gaTsKKyAgICAgICAgZXhjID0gTlVMTDsKKyAgICAgICAgcmFpc2VfZW5jb2RlX2V4Y2VwdGlvbigmZXhjLCAiZGVjaW1hbCIsIHVuaWNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRwb3MsIHN0YXJ0cG9zKzEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImludmFsaWQgZGVjaW1hbCBVbmljb2RlIHN0cmluZyIpOworICAgICAgICBQeV9YREVDUkVGKGV4Yyk7CisgICAgICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KICAgICAvKiAwLXRlcm1pbmF0ZSB0aGUgb3V0cHV0IHN0cmluZyAqLwogICAgICpvdXRwdXQrKyA9ICdcMCc7Ci0gICAgUHlfWERFQ1JFRihleGMpOwotICAgIFB5X1hERUNSRUYoZXJyb3JIYW5kbGVyKTsKKyAgICBQeV9ERUNSRUYodW5pY29kZSk7CiAgICAgcmV0dXJuIDA7Ci0KLSAgb25FcnJvcjoKLSAgICBQeV9YREVDUkVGKGV4Yyk7Ci0gICAgUHlfWERFQ1JFRihlcnJvckhhbmRsZXIpOwotICAgIHJldHVybiAtMTsKIH0KIAogLyogLS0tIEhlbHBlcnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCiAKLSNpbmNsdWRlICJzdHJpbmdsaWIvdW5pY29kZWRlZnMuaCIKLSNpbmNsdWRlICJzdHJpbmdsaWIvZmFzdHNlYXJjaC5oIgorc3RhdGljIFB5X3NzaXplX3QKK2FueV9maW5kX3NsaWNlKGludCBkaXJlY3Rpb24sIFB5T2JqZWN0KiBzMSwgUHlPYmplY3QqIHMyLAorICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwKKyAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kKQoreworICAgIGludCBraW5kMSwga2luZDIsIGtpbmQ7CisgICAgdm9pZCAqYnVmMSwgKmJ1ZjI7CisgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yLCByZXN1bHQ7CiAKLSNpbmNsdWRlICJzdHJpbmdsaWIvY291bnQuaCIKLSNpbmNsdWRlICJzdHJpbmdsaWIvZmluZC5oIgotI2luY2x1ZGUgInN0cmluZ2xpYi9wYXJ0aXRpb24uaCIKLSNpbmNsdWRlICJzdHJpbmdsaWIvc3BsaXQuaCIKKyAgICBraW5kMSA9IFB5VW5pY29kZV9LSU5EKHMxKTsKKyAgICBraW5kMiA9IFB5VW5pY29kZV9LSU5EKHMyKTsKKyAgICBraW5kID0ga2luZDEgPiBraW5kMiA/IGtpbmQxIDoga2luZDI7CisgICAgYnVmMSA9IFB5VW5pY29kZV9EQVRBKHMxKTsKKyAgICBidWYyID0gUHlVbmljb2RlX0RBVEEoczIpOworICAgIGlmIChraW5kMSAhPSBraW5kKQorICAgICAgICBidWYxID0gX1B5VW5pY29kZV9Bc0tpbmQoczEsIGtpbmQpOworICAgIGlmICghYnVmMSkKKyAgICAgICAgcmV0dXJuIC0yOworICAgIGlmIChraW5kMiAhPSBraW5kKQorICAgICAgICBidWYyID0gX1B5VW5pY29kZV9Bc0tpbmQoczIsIGtpbmQpOworICAgIGlmICghYnVmMikgeworICAgICAgICBpZiAoa2luZDEgIT0ga2luZCkgUHlNZW1fRnJlZShidWYxKTsKKyAgICAgICAgcmV0dXJuIC0yOworICAgIH0KKyAgICBsZW4xID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoczEpOworICAgIGxlbjIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzMik7CiAKLSNkZWZpbmUgX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nIF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcKLSNkZWZpbmUgX1B5X0luc2VydFRob3VzYW5kc0dyb3VwaW5nTG9jYWxlIF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmdMb2NhbGUKLSNpbmNsdWRlICJzdHJpbmdsaWIvbG9jYWxldXRpbC5oIgorICAgIGlmIChkaXJlY3Rpb24gPiAwKSB7CisgICAgICAgIHN3aXRjaCAoa2luZCkgeworICAgICAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzMSkgJiYgUHlVbmljb2RlX0lTX0FTQ0lJKHMyKSkKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBhc2NpaWxpYl9maW5kX3NsaWNlKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIHN0YXJ0LCBlbmQpOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHJlc3VsdCA9IHVjczFsaWJfZmluZF9zbGljZShidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBzdGFydCwgZW5kKTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICAgICAgcmVzdWx0ID0gdWNzMmxpYl9maW5kX3NsaWNlKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIHN0YXJ0LCBlbmQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgICAgICByZXN1bHQgPSB1Y3M0bGliX2ZpbmRfc2xpY2UoYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgc3RhcnQsIGVuZCk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIGFzc2VydCgwKTsgcmVzdWx0ID0gLTI7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHN3aXRjaCAoa2luZCkgeworICAgICAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzMSkgJiYgUHlVbmljb2RlX0lTX0FTQ0lJKHMyKSkKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBhc2NpaWxpYl9yZmluZF9zbGljZShidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBzdGFydCwgZW5kKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXN1bHQgPSB1Y3MxbGliX3JmaW5kX3NsaWNlKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIHN0YXJ0LCBlbmQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgICAgICByZXN1bHQgPSB1Y3MybGliX3JmaW5kX3NsaWNlKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIHN0YXJ0LCBlbmQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgICAgICByZXN1bHQgPSB1Y3M0bGliX3JmaW5kX3NsaWNlKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIHN0YXJ0LCBlbmQpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBhc3NlcnQoMCk7IHJlc3VsdCA9IC0yOworICAgICAgICB9CisgICAgfQorCisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMik7CisKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitQeV9zc2l6ZV90CitfUHlVbmljb2RlX0luc2VydFRob3VzYW5kc0dyb3VwaW5nKFB5T2JqZWN0ICp1bmljb2RlLCBpbnQga2luZCwgdm9pZCAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuX2J1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGlnaXRzLCBQeV9zc2l6ZV90IG5fZGlnaXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1pbl93aWR0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZ3JvdXBpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnRob3VzYW5kc19zZXApCit7CisgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgaWYgKHVuaWNvZGUgIT0gTlVMTCAmJiBQeVVuaWNvZGVfSVNfQVNDSUkodW5pY29kZSkpCisgICAgICAgICAgICByZXR1cm4gX1B5VW5pY29kZV9hc2NpaV9JbnNlcnRUaG91c2FuZHNHcm91cGluZygKKyAgICAgICAgICAgICAgICAoUHlfVUNTMSopZGF0YSwgbl9idWZmZXIsIChQeV9VQ1MxKilkaWdpdHMsIG5fZGlnaXRzLAorICAgICAgICAgICAgICAgIG1pbl93aWR0aCwgZ3JvdXBpbmcsIHRob3VzYW5kc19zZXApOworICAgICAgICBlbHNlCisgICAgICAgICAgICByZXR1cm4gX1B5VW5pY29kZV91Y3MxX0luc2VydFRob3VzYW5kc0dyb3VwaW5nKAorICAgICAgICAgICAgICAgIChQeV9VQ1MxKilkYXRhLCBuX2J1ZmZlciwgKFB5X1VDUzEqKWRpZ2l0cywgbl9kaWdpdHMsCisgICAgICAgICAgICAgICAgbWluX3dpZHRoLCBncm91cGluZywgdGhvdXNhbmRzX3NlcCk7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfdWNzMl9JbnNlcnRUaG91c2FuZHNHcm91cGluZygKKyAgICAgICAgICAgIChQeV9VQ1MyKilkYXRhLCBuX2J1ZmZlciwgKFB5X1VDUzIqKWRpZ2l0cywgbl9kaWdpdHMsCisgICAgICAgICAgICBtaW5fd2lkdGgsIGdyb3VwaW5nLCB0aG91c2FuZHNfc2VwKTsKKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICByZXR1cm4gX1B5VW5pY29kZV91Y3M0X0luc2VydFRob3VzYW5kc0dyb3VwaW5nKAorICAgICAgICAgICAgKFB5X1VDUzQqKWRhdGEsIG5fYnVmZmVyLCAoUHlfVUNTNCopZGlnaXRzLCBuX2RpZ2l0cywKKyAgICAgICAgICAgIG1pbl93aWR0aCwgZ3JvdXBpbmcsIHRob3VzYW5kc19zZXApOworICAgIH0KKyAgICBhc3NlcnQoMCk7CisgICAgcmV0dXJuIC0xOworfQorCiAKIC8qIGhlbHBlciBtYWNybyB0byBmaXh1cCBzdGFydC9lbmQgc2xpY2UgdmFsdWVzICovCiAjZGVmaW5lIEFESlVTVF9JTkRJQ0VTKHN0YXJ0LCBlbmQsIGxlbikgICAgICAgICBcCkBAIC02NDUwLDcyICs5MTQ2LDEwNCBAQAogICAgICAgICAgICAgc3RhcnQgPSAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0KIAotLyogX1B5X1VOSUNPREVfTkVYVCBpcyBhIHByaXZhdGUgbWFjcm8gdXNlZCB0byByZXRyaWV2ZSB0aGUgY2hhcmFjdGVyIHBvaW50ZWQKLSAqIGJ5ICdwdHInLCBwb3NzaWJseSBjb21iaW5pbmcgc3Vycm9nYXRlIHBhaXJzIG9uIG5hcnJvdyBidWlsZHMuCi0gKiAncHRyJyBhbmQgJ2VuZCcgbXVzdCBiZSBQeV9VTklDT0RFKiwgd2l0aCAncHRyJyBwb2ludGluZyBhdCB0aGUgY2hhcmFjdGVyCi0gKiB0aGF0IHNob3VsZCBiZSByZXR1cm5lZCBhbmQgJ2VuZCcgcG9pbnRpbmcgdG8gdGhlIGVuZCBvZiB0aGUgYnVmZmVyLgotICogKCdlbmQnIGlzIHVzZWQgb24gbmFycm93IGJ1aWxkcyB0byBkZXRlY3QgYSBsb25lIHN1cnJvZ2F0ZSBhdCB0aGUKLSAqIGVuZCBvZiB0aGUgYnVmZmVyIHRoYXQgc2hvdWxkIGJlIHJldHVybmVkIHVuY2hhbmdlZC4pCi0gKiBUaGUgcHRyIGFuZCBlbmQgYXJndW1lbnRzIHNob3VsZCBiZSBzaWRlLWVmZmVjdCBmcmVlIGFuZCBwdHIgbXVzdCBhbiBsdmFsdWUuCi0gKiBUaGUgdHlwZSBvZiB0aGUgcmV0dXJuZWQgY2hhciBpcyBhbHdheXMgUHlfVUNTNC4KLSAqCi0gKiBOb3RlOiB0aGUgbWFjcm8gYWR2YW5jZXMgcHRyIHRvIG5leHQgY2hhciwgc28gaXQgbWlnaHQgaGF2ZSBzaWRlLWVmZmVjdHMKLSAqICAgICAgIChlc3BlY2lhbGx5IGlmIHVzZWQgd2l0aCBvdGhlciBtYWNyb3MpLgotICovCi0KLS8qIGhlbHBlciBtYWNyb3MgdXNlZCBieSBfUHlfVU5JQ09ERV9ORVhUICovCi0jZGVmaW5lIF9QeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFKGNoKSAoMHhEODAwIDw9IGNoICYmIGNoIDw9IDB4REJGRikKLSNkZWZpbmUgX1B5X1VOSUNPREVfSVNfTE9XX1NVUlJPR0FURShjaCkgKDB4REMwMCA8PSBjaCAmJiBjaCA8PSAweERGRkYpCi0vKiBKb2luIHR3byBzdXJyb2dhdGUgY2hhcmFjdGVycyBhbmQgcmV0dXJuIGEgc2luZ2xlIFB5X1VDUzQgdmFsdWUuICovCi0jZGVmaW5lIF9QeV9VTklDT0RFX0pPSU5fU1VSUk9HQVRFUyhoaWdoLCBsb3cpICBcCi0gICAgKCgoKChQeV9VQ1M0KShoaWdoKSAmIDB4MDNGRikgPDwgMTApIHwgICAgICBcCi0gICAgICAoKFB5X1VDUzQpKGxvdykgJiAweDAzRkYpKSArIDB4MTAwMDApCi0KLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSNkZWZpbmUgX1B5X1VOSUNPREVfTkVYVChwdHIsIGVuZCkgKihwdHIpKysKLSNlbHNlCi0jZGVmaW5lIF9QeV9VTklDT0RFX05FWFQocHRyLCBlbmQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICgoKF9QeV9VTklDT0RFX0lTX0hJR0hfU1VSUk9HQVRFKCoocHRyKSkgJiYgKHB0cikgPCAoZW5kKSkgJiYgICAgICBcCi0gICAgICAgIF9QeV9VTklDT0RFX0lTX0xPV19TVVJST0dBVEUoKHB0cilbMV0pKSA/ICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgKChwdHIpICs9IDIsX1B5X1VOSUNPREVfSk9JTl9TVVJST0dBVEVTKChwdHIpWy0yXSwgKHB0cilbLTFdKSkgOiBcCi0gICAgICAgKFB5X1VDUzQpKihwdHIpKyspCi0jZW5kaWYKLQotUHlfc3NpemVfdCBQeVVuaWNvZGVfQ291bnQoUHlPYmplY3QgKnN0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWJzdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQpCitQeV9zc2l6ZV90CitQeVVuaWNvZGVfQ291bnQoUHlPYmplY3QgKnN0ciwKKyAgICAgICAgICAgICAgICBQeU9iamVjdCAqc3Vic3RyLAorICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQpCiB7CiAgICAgUHlfc3NpemVfdCByZXN1bHQ7Ci0gICAgUHlVbmljb2RlT2JqZWN0KiBzdHJfb2JqOwotICAgIFB5VW5pY29kZU9iamVjdCogc3ViX29iajsKKyAgICBQeU9iamVjdCogc3RyX29iajsKKyAgICBQeU9iamVjdCogc3ViX29iajsKKyAgICBpbnQga2luZDEsIGtpbmQyLCBraW5kOworICAgIHZvaWQgKmJ1ZjEgPSBOVUxMLCAqYnVmMiA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yOwogCi0gICAgc3RyX29iaiA9IChQeVVuaWNvZGVPYmplY3QqKSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOworICAgIHN0cl9vYmogPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHIpOwogICAgIGlmICghc3RyX29iaikKICAgICAgICAgcmV0dXJuIC0xOwotICAgIHN1Yl9vYmogPSAoUHlVbmljb2RlT2JqZWN0KikgUHlVbmljb2RlX0Zyb21PYmplY3Qoc3Vic3RyKTsKKyAgICBzdWJfb2JqID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3Vic3RyKTsKICAgICBpZiAoIXN1Yl9vYmopIHsKICAgICAgICAgUHlfREVDUkVGKHN0cl9vYmopOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3ViX29iaikgPT0gLTEgfHwgUHlVbmljb2RlX1JFQURZKHN0cl9vYmopID09IC0xKSB7CisgICAgICAgIFB5X0RFQ1JFRihzdWJfb2JqKTsKKyAgICAgICAgUHlfREVDUkVGKHN0cl9vYmopOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQogCi0gICAgQURKVVNUX0lORElDRVMoc3RhcnQsIGVuZCwgc3RyX29iai0+bGVuZ3RoKTsKLSAgICByZXN1bHQgPSBzdHJpbmdsaWJfY291bnQoCi0gICAgICAgIHN0cl9vYmotPnN0ciArIHN0YXJ0LCBlbmQgLSBzdGFydCwgc3ViX29iai0+c3RyLCBzdWJfb2JqLT5sZW5ndGgsCi0gICAgICAgIFBZX1NTSVpFX1RfTUFYCi0gICAgICAgICk7CisgICAga2luZDEgPSBQeVVuaWNvZGVfS0lORChzdHJfb2JqKTsKKyAgICBraW5kMiA9IFB5VW5pY29kZV9LSU5EKHN1Yl9vYmopOworICAgIGtpbmQgPSBraW5kMSA+IGtpbmQyID8ga2luZDEgOiBraW5kMjsKKyAgICBidWYxID0gUHlVbmljb2RlX0RBVEEoc3RyX29iaik7CisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIGJ1ZjEgPSBfUHlVbmljb2RlX0FzS2luZChzdHJfb2JqLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjEpCisgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICBidWYyID0gUHlVbmljb2RlX0RBVEEoc3ViX29iaik7CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIGJ1ZjIgPSBfUHlVbmljb2RlX0FzS2luZChzdWJfb2JqLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjIpCisgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICBsZW4xID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyX29iaik7CisgICAgbGVuMiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN1Yl9vYmopOworCisgICAgQURKVVNUX0lORElDRVMoc3RhcnQsIGVuZCwgbGVuMSk7CisgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzdHJfb2JqKSAmJiBQeVVuaWNvZGVfSVNfQVNDSUkoc3ViX29iaikpCisgICAgICAgICAgICByZXN1bHQgPSBhc2NpaWxpYl9jb3VudCgKKyAgICAgICAgICAgICAgICAoKFB5X1VDUzEqKWJ1ZjEpICsgc3RhcnQsIGVuZCAtIHN0YXJ0LAorICAgICAgICAgICAgICAgIGJ1ZjIsIGxlbjIsIFBZX1NTSVpFX1RfTUFYCisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmVzdWx0ID0gdWNzMWxpYl9jb3VudCgKKyAgICAgICAgICAgICAgICAoKFB5X1VDUzEqKWJ1ZjEpICsgc3RhcnQsIGVuZCAtIHN0YXJ0LAorICAgICAgICAgICAgICAgIGJ1ZjIsIGxlbjIsIFBZX1NTSVpFX1RfTUFYCisgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgcmVzdWx0ID0gdWNzMmxpYl9jb3VudCgKKyAgICAgICAgICAgICgoUHlfVUNTMiopYnVmMSkgKyBzdGFydCwgZW5kIC0gc3RhcnQsCisgICAgICAgICAgICBidWYyLCBsZW4yLCBQWV9TU0laRV9UX01BWAorICAgICAgICAgICAgKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmVzdWx0ID0gdWNzNGxpYl9jb3VudCgKKyAgICAgICAgICAgICgoUHlfVUNTNCopYnVmMSkgKyBzdGFydCwgZW5kIC0gc3RhcnQsCisgICAgICAgICAgICBidWYyLCBsZW4yLCBQWV9TU0laRV9UX01BWAorICAgICAgICAgICAgKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYXNzZXJ0KDApOyByZXN1bHQgPSAwOworICAgIH0KIAogICAgIFB5X0RFQ1JFRihzdWJfb2JqKTsKICAgICBQeV9ERUNSRUYoc3RyX29iaik7CiAKKyAgICBpZiAoa2luZDEgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYxKTsKKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYyKTsKKwogICAgIHJldHVybiByZXN1bHQ7CisgIG9uRXJyb3I6CisgICAgUHlfREVDUkVGKHN1Yl9vYmopOworICAgIFB5X0RFQ1JFRihzdHJfb2JqKTsKKyAgICBpZiAoa2luZDEgIT0ga2luZCAmJiBidWYxKQorICAgICAgICBQeU1lbV9GcmVlKGJ1ZjEpOworICAgIGlmIChraW5kMiAhPSBraW5kICYmIGJ1ZjIpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMik7CisgICAgcmV0dXJuIC0xOwogfQogCi1QeV9zc2l6ZV90IFB5VW5pY29kZV9GaW5kKFB5T2JqZWN0ICpzdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kLAotICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZGlyZWN0aW9uKQorUHlfc3NpemVfdAorUHlVbmljb2RlX0ZpbmQoUHlPYmplY3QgKnN0ciwKKyAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWIsCisgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LAorICAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQsCisgICAgICAgICAgICAgICBpbnQgZGlyZWN0aW9uKQogewogICAgIFB5X3NzaXplX3QgcmVzdWx0OwogCkBAIC02NTI3LDE5ICs5MjU1LDE1IEBACiAgICAgICAgIFB5X0RFQ1JFRihzdHIpOwogICAgICAgICByZXR1cm4gLTI7CiAgICAgfQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3ViKSA9PSAtMSB8fCBQeVVuaWNvZGVfUkVBRFkoc3RyKSA9PSAtMSkgeworICAgICAgICBQeV9ERUNSRUYoc3ViKTsKKyAgICAgICAgUHlfREVDUkVGKHN0cik7CisgICAgICAgIHJldHVybiAtMjsKKyAgICB9CiAKLSAgICBpZiAoZGlyZWN0aW9uID4gMCkKLSAgICAgICAgcmVzdWx0ID0gc3RyaW5nbGliX2ZpbmRfc2xpY2UoCi0gICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHIpLCBQeVVuaWNvZGVfR0VUX1NJWkUoc3RyKSwKLSAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHN1YiksIFB5VW5pY29kZV9HRVRfU0laRShzdWIpLAotICAgICAgICAgICAgc3RhcnQsIGVuZAotICAgICAgICAgICAgKTsKLSAgICBlbHNlCi0gICAgICAgIHJlc3VsdCA9IHN0cmluZ2xpYl9yZmluZF9zbGljZSgKLSAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHN0ciksIFB5VW5pY29kZV9HRVRfU0laRShzdHIpLAotICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc3ViKSwgUHlVbmljb2RlX0dFVF9TSVpFKHN1YiksCi0gICAgICAgICAgICBzdGFydCwgZW5kCi0gICAgICAgICAgICApOworICAgIHJlc3VsdCA9IGFueV9maW5kX3NsaWNlKGRpcmVjdGlvbiwKKyAgICAgICAgc3RyLCBzdWIsIHN0YXJ0LCBlbmQKKyAgICAgICAgKTsKIAogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIFB5X0RFQ1JFRihzdWIpOwpAQCAtNjU0NywzNyArOTI3MSwxMDQgQEAKICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1zdGF0aWMKLWludCB0YWlsbWF0Y2goUHlVbmljb2RlT2JqZWN0ICpzZWxmLAotICAgICAgICAgICAgICBQeVVuaWNvZGVPYmplY3QgKnN1YnN0cmluZywKLSAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwKLSAgICAgICAgICAgICAgUHlfc3NpemVfdCBlbmQsCi0gICAgICAgICAgICAgIGludCBkaXJlY3Rpb24pCitQeV9zc2l6ZV90CitQeVVuaWNvZGVfRmluZENoYXIoUHlPYmplY3QgKnN0ciwgUHlfVUNTNCBjaCwKKyAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCwKKyAgICAgICAgICAgICAgICAgICBpbnQgZGlyZWN0aW9uKQogewotICAgIGlmIChzdWJzdHJpbmctPmxlbmd0aCA9PSAwKQorICAgIGludCBraW5kOworICAgIFB5X3NzaXplX3QgcmVzdWx0OworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3RyKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIC0yOworICAgIGlmIChzdGFydCA8IDAgfHwgZW5kIDwgMCkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSW5kZXhFcnJvciwgInN0cmluZyBpbmRleCBvdXQgb2YgcmFuZ2UiKTsKKyAgICAgICAgcmV0dXJuIC0yOworICAgIH0KKyAgICBpZiAoZW5kID4gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKSkKKyAgICAgICAgZW5kID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc3RyKTsKKyAgICByZXN1bHQgPSBmaW5kY2hhcihQeVVuaWNvZGVfMUJZVEVfREFUQShzdHIpICsga2luZCpzdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICBraW5kLCBlbmQtc3RhcnQsIGNoLCBkaXJlY3Rpb24pOworICAgIGlmIChyZXN1bHQgPT0gLTEpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiBzdGFydCArIHJlc3VsdDsKK30KKworc3RhdGljIGludAordGFpbG1hdGNoKFB5T2JqZWN0ICpzZWxmLAorICAgICAgICAgIFB5T2JqZWN0ICpzdWJzdHJpbmcsCisgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwKKyAgICAgICAgICBQeV9zc2l6ZV90IGVuZCwKKyAgICAgICAgICBpbnQgZGlyZWN0aW9uKQoreworICAgIGludCBraW5kX3NlbGY7CisgICAgaW50IGtpbmRfc3ViOworICAgIHZvaWQgKmRhdGFfc2VsZjsKKyAgICB2b2lkICpkYXRhX3N1YjsKKyAgICBQeV9zc2l6ZV90IG9mZnNldDsKKyAgICBQeV9zc2l6ZV90IGk7CisgICAgUHlfc3NpemVfdCBlbmRfc3ViOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSB8fAorICAgICAgICBQeVVuaWNvZGVfUkVBRFkoc3Vic3RyaW5nKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoc3Vic3RyaW5nKSA9PSAwKQogICAgICAgICByZXR1cm4gMTsKIAotICAgIEFESlVTVF9JTkRJQ0VTKHN0YXJ0LCBlbmQsIHNlbGYtPmxlbmd0aCk7Ci0gICAgZW5kIC09IHN1YnN0cmluZy0+bGVuZ3RoOworICAgIEFESlVTVF9JTkRJQ0VTKHN0YXJ0LCBlbmQsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpKTsKKyAgICBlbmQgLT0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3Vic3RyaW5nKTsKICAgICBpZiAoZW5kIDwgc3RhcnQpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgaWYgKGRpcmVjdGlvbiA+IDApIHsKLSAgICAgICAgaWYgKFB5X1VOSUNPREVfTUFUQ0goc2VsZiwgZW5kLCBzdWJzdHJpbmcpKQorICAgIGtpbmRfc2VsZiA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgIGRhdGFfc2VsZiA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOworICAgIGtpbmRfc3ViID0gUHlVbmljb2RlX0tJTkQoc3Vic3RyaW5nKTsKKyAgICBkYXRhX3N1YiA9IFB5VW5pY29kZV9EQVRBKHN1YnN0cmluZyk7CisgICAgZW5kX3N1YiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN1YnN0cmluZykgLSAxOworCisgICAgaWYgKGRpcmVjdGlvbiA+IDApCisgICAgICAgIG9mZnNldCA9IGVuZDsKKyAgICBlbHNlCisgICAgICAgIG9mZnNldCA9IHN0YXJ0OworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmRfc2VsZiwgZGF0YV9zZWxmLCBvZmZzZXQpID09CisgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmRfc3ViLCBkYXRhX3N1YiwgMCkgJiYKKyAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZF9zZWxmLCBkYXRhX3NlbGYsIG9mZnNldCArIGVuZF9zdWIpID09CisgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmRfc3ViLCBkYXRhX3N1YiwgZW5kX3N1YikpIHsKKyAgICAgICAgLyogSWYgYm90aCBhcmUgb2YgdGhlIHNhbWUga2luZCwgbWVtY21wIGlzIHN1ZmZpY2llbnQgKi8KKyAgICAgICAgaWYgKGtpbmRfc2VsZiA9PSBraW5kX3N1YikgeworICAgICAgICAgICAgcmV0dXJuICEgbWVtY21wKChjaGFyICopZGF0YV9zZWxmICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9mZnNldCAqIFB5VW5pY29kZV9LSU5EKHN1YnN0cmluZykpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFfc3ViLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN1YnN0cmluZykgKgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfS0lORChzdWJzdHJpbmcpKTsKKyAgICAgICAgfQorICAgICAgICAvKiBvdGhlcndpc2Ugd2UgaGF2ZSB0byBjb21wYXJlIGVhY2ggY2hhcmFjdGVyIGJ5IGZpcnN0IGFjY2VzaW5nIGl0ICovCisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgLyogV2UgZG8gbm90IG5lZWQgdG8gY29tcGFyZSAwIGFuZCBsZW4oc3Vic3RyaW5nKS0xIGJlY2F1c2UKKyAgICAgICAgICAgICAgIHRoZSBpZiBzdGF0ZW1lbnQgYWJvdmUgZW5zdXJlZCBhbHJlYWR5IHRoYXQgdGhleSBhcmUgZXF1YWwKKyAgICAgICAgICAgICAgIHdoZW4gd2UgZW5kIHVwIGhlcmUuICovCisgICAgICAgICAgICAvLyBUT0RPOiBob25vciBkaXJlY3Rpb24gYW5kIGRvIGEgZm9yd2FyZCBvciBiYWNrd2FyZHMgc2VhcmNoCisgICAgICAgICAgICBmb3IgKGkgPSAxOyBpIDwgZW5kX3N1YjsgKytpKSB7CisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmRfc2VsZiwgZGF0YV9zZWxmLCBvZmZzZXQgKyBpKSAhPQorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChraW5kX3N1YiwgZGF0YV9zdWIsIGkpKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIHJldHVybiAxOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGlmIChQeV9VTklDT0RFX01BVENIKHNlbGYsIHN0YXJ0LCBzdWJzdHJpbmcpKQotICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIH0KICAgICB9CiAKICAgICByZXR1cm4gMDsKIH0KIAotUHlfc3NpemVfdCBQeVVuaWNvZGVfVGFpbG1hdGNoKFB5T2JqZWN0ICpzdHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnN1YnN0ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBkaXJlY3Rpb24pCitQeV9zc2l6ZV90CitQeVVuaWNvZGVfVGFpbG1hdGNoKFB5T2JqZWN0ICpzdHIsCisgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWJzdHIsCisgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsCisgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgZW5kLAorICAgICAgICAgICAgICAgICAgICBpbnQgZGlyZWN0aW9uKQogewogICAgIFB5X3NzaXplX3QgcmVzdWx0OwogCkBAIC02NTkwLDggKzkzODEsNyBAQAogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogCi0gICAgcmVzdWx0ID0gdGFpbG1hdGNoKChQeVVuaWNvZGVPYmplY3QgKilzdHIsCi0gICAgICAgICAgICAgICAgICAgICAgIChQeVVuaWNvZGVPYmplY3QgKilzdWJzdHIsCisgICAgcmVzdWx0ID0gdGFpbG1hdGNoKHN0ciwgc3Vic3RyLAogICAgICAgICAgICAgICAgICAgICAgICBzdGFydCwgZW5kLCBkaXJlY3Rpb24pOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIFB5X0RFQ1JFRihzdWJzdHIpOwpAQCAtNjYwMSwxNjggKzkzOTEsMzIzIEBACiAvKiBBcHBseSBmaXhmY3QgZmlsdGVyIHRvIHRoZSBVbmljb2RlIG9iamVjdCBzZWxmIGFuZCByZXR1cm4gYQogICAgcmVmZXJlbmNlIHRvIHRoZSBtb2RpZmllZCBvYmplY3QgKi8KIAotc3RhdGljCi1QeU9iamVjdCAqZml4dXAoUHlVbmljb2RlT2JqZWN0ICpzZWxmLAotICAgICAgICAgICAgICAgIGludCAoKmZpeGZjdCkoUHlVbmljb2RlT2JqZWN0ICpzKSkKK3N0YXRpYyBQeU9iamVjdCAqCitmaXh1cChQeU9iamVjdCAqc2VsZiwKKyAgICAgIFB5X1VDUzQgKCpmaXhmY3QpKFB5T2JqZWN0ICpzKSkKIHsKKyAgICBQeU9iamVjdCAqdTsKKyAgICBQeV9VQ1M0IG1heGNoYXJfb2xkLCBtYXhjaGFyX25ldyA9IDA7CisgICAgUHlPYmplY3QgKnY7CiAKLSAgICBQeVVuaWNvZGVPYmplY3QgKnU7Ci0KLSAgICB1ID0gKFB5VW5pY29kZU9iamVjdCopIFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBzZWxmLT5sZW5ndGgpOworICAgIHUgPSBfUHlVbmljb2RlX0NvcHkoc2VsZik7CiAgICAgaWYgKHUgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbWF4Y2hhcl9vbGQgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUodSk7CiAKLSAgICBQeV9VTklDT0RFX0NPUFkodS0+c3RyLCBzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCk7CisgICAgLyogZml4IGZ1bmN0aW9ucyByZXR1cm4gdGhlIG5ldyBtYXhpbXVtIGNoYXJhY3RlciBpbiBhIHN0cmluZywKKyAgICAgICBpZiB0aGUga2luZCBvZiB0aGUgcmVzdWx0aW5nIHVuaWNvZGUgb2JqZWN0IGRvZXMgbm90IGNoYW5nZSwKKyAgICAgICBldmVyeXRoaW5nIGlzIGZpbmUuICBPdGhlcndpc2Ugd2UgbmVlZCB0byBjaGFuZ2UgdGhlIHN0cmluZyBraW5kCisgICAgICAgYW5kIHJlLXJ1biB0aGUgZml4IGZ1bmN0aW9uLiAqLworICAgIG1heGNoYXJfbmV3ID0gZml4ZmN0KHUpOwogCi0gICAgaWYgKCFmaXhmY3QodSkgJiYgUHlVbmljb2RlX0NoZWNrRXhhY3Qoc2VsZikpIHsKLSAgICAgICAgLyogZml4ZmN0IHNob3VsZCByZXR1cm4gVFJVRSBpZiBpdCBtb2RpZmllZCB0aGUgYnVmZmVyLiBJZgotICAgICAgICAgICBGQUxTRSwgcmV0dXJuIGEgcmVmZXJlbmNlIHRvIHRoZSBvcmlnaW5hbCBidWZmZXIgaW5zdGVhZAotICAgICAgICAgICAodG8gc2F2ZSBzcGFjZSwgbm90IHRpbWUpICovCi0gICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKKyAgICBpZiAobWF4Y2hhcl9uZXcgPT0gMCkgeworICAgICAgICAvKiBubyBjaGFuZ2VzICovOworICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3Qoc2VsZikpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRih1KTsKKyAgICAgICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKKyAgICAgICAgICAgIHJldHVybiBzZWxmOworICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJldHVybiB1OworICAgIH0KKworICAgIGlmIChtYXhjaGFyX25ldyA8PSAxMjcpCisgICAgICAgIG1heGNoYXJfbmV3ID0gMTI3OworICAgIGVsc2UgaWYgKG1heGNoYXJfbmV3IDw9IDI1NSkKKyAgICAgICAgbWF4Y2hhcl9uZXcgPSAyNTU7CisgICAgZWxzZSBpZiAobWF4Y2hhcl9uZXcgPD0gNjU1MzUpCisgICAgICAgIG1heGNoYXJfbmV3ID0gNjU1MzU7CisgICAgZWxzZQorICAgICAgICBtYXhjaGFyX25ldyA9IE1BWF9VTklDT0RFOworCisgICAgaWYgKG1heGNoYXJfbmV3ID09IG1heGNoYXJfb2xkKQorICAgICAgICByZXR1cm4gdTsKKworICAgIC8qIEluIGNhc2UgdGhlIG1heGltdW0gY2hhcmFjdGVyIGNoYW5nZWQsIHdlIG5lZWQgdG8KKyAgICAgICBjb252ZXJ0IHRoZSBzdHJpbmcgdG8gdGhlIG5ldyBjYXRlZ29yeS4gKi8KKyAgICB2ID0gUHlVbmljb2RlX05ldyhQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSwgbWF4Y2hhcl9uZXcpOworICAgIGlmICh2ID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKHUpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0Kikgc2VsZjsKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiAoUHlPYmplY3QqKSB1OworICAgIGlmIChtYXhjaGFyX25ldyA+IG1heGNoYXJfb2xkKSB7CisgICAgICAgIC8qIElmIHRoZSBtYXhjaGFyIGluY3JlYXNlZCBzbyB0aGF0IHRoZSBraW5kIGNoYW5nZWQsIG5vdCBhbGwKKyAgICAgICAgICAgY2hhcmFjdGVycyBhcmUgcmVwcmVzZW50YWJsZSBhbnltb3JlIGFuZCB3ZSBuZWVkIHRvIGZpeCB0aGUKKyAgICAgICAgICAgc3RyaW5nIGFnYWluLiBUaGlzIG9ubHkgaGFwcGVucyBpbiB2ZXJ5IGZldyBjYXNlcy4gKi8KKyAgICAgICAgY29weV9jaGFyYWN0ZXJzKHYsIDAsIHNlbGYsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpKTsKKyAgICAgICAgbWF4Y2hhcl9vbGQgPSBmaXhmY3Qodik7CisgICAgICAgIGFzc2VydChtYXhjaGFyX29sZCA+IDAgJiYgbWF4Y2hhcl9vbGQgPD0gbWF4Y2hhcl9uZXcpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgY29weV9jaGFyYWN0ZXJzKHYsIDAsIHUsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpKTsKKyAgICB9CisgICAgUHlfREVDUkVGKHUpOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kodiwgMSkpOworICAgIHJldHVybiB2OwogfQogCi1zdGF0aWMKLWludCBmaXh1cHBlcihQeVVuaWNvZGVPYmplY3QgKnNlbGYpCitzdGF0aWMgUHlPYmplY3QgKgorYXNjaWlfdXBwZXJfb3JfbG93ZXIoUHlPYmplY3QgKnNlbGYsIGludCBsb3dlcikKIHsKLSAgICBQeV9zc2l6ZV90IGxlbiA9IHNlbGYtPmxlbmd0aDsKLSAgICBQeV9VTklDT0RFICpzID0gc2VsZi0+c3RyOwotICAgIGludCBzdGF0dXMgPSAwOworICAgIFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgY2hhciAqcmVzZGF0YSwgKmRhdGEgPSBQeVVuaWNvZGVfREFUQShzZWxmKTsKKyAgICBQeU9iamVjdCAqcmVzOwogCi0gICAgd2hpbGUgKGxlbi0tID4gMCkgewotICAgICAgICByZWdpc3RlciBQeV9VTklDT0RFIGNoOworICAgIHJlcyA9IFB5VW5pY29kZV9OZXcobGVuLCAxMjcpOworICAgIGlmIChyZXMgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgcmVzZGF0YSA9IFB5VW5pY29kZV9EQVRBKHJlcyk7CisgICAgaWYgKGxvd2VyKQorICAgICAgICBfUHlfYnl0ZXNfbG93ZXIocmVzZGF0YSwgZGF0YSwgbGVuKTsKKyAgICBlbHNlCisgICAgICAgIF9QeV9ieXRlc191cHBlcihyZXNkYXRhLCBkYXRhLCBsZW4pOworICAgIHJldHVybiByZXM7Cit9CiAKLSAgICAgICAgY2ggPSBQeV9VTklDT0RFX1RPVVBQRVIoKnMpOwotICAgICAgICBpZiAoY2ggIT0gKnMpIHsKLSAgICAgICAgICAgIHN0YXR1cyA9IDE7Ci0gICAgICAgICAgICAqcyA9IGNoOworc3RhdGljIFB5X1VDUzQKK2hhbmRsZV9jYXBpdGFsX3NpZ21hKGludCBraW5kLCB2b2lkICpkYXRhLCBQeV9zc2l6ZV90IGxlbmd0aCwgUHlfc3NpemVfdCBpKQoreworICAgIFB5X3NzaXplX3QgajsKKyAgICBpbnQgZmluYWxfc2lnbWE7CisgICAgUHlfVUNTNCBjOworICAgIC8qIFUrMDNBMyBpcyBpbiB0aGUgRmluYWxfU2lnbWEgY29udGV4dCB3aGVuLCBpdCBpcyBmb3VuZCBsaWtlIHRoaXM6CisKKyAgICAgXHB7Y2FzZWR9XHB7Y2FzZS1pZ25vcmFibGV9KlUrMDNBMyEoXHB7Y2FzZS1pZ25vcmFibGV9Klxwe2Nhc2VkfSkKKworICAgIHdoZXJlICEgaXMgYSBuZWdhdGlvbiBhbmQgXHB7eHh4fSBpcyBhIGNoYXJhY3RlciB3aXRoIHByb3BlcnR5IHh4eC4KKyAgICAqLworICAgIGZvciAoaiA9IGkgLSAxOyBqID49IDA7IGotLSkgeworICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaik7CisgICAgICAgIGlmICghX1B5VW5pY29kZV9Jc0Nhc2VJZ25vcmFibGUoYykpCisgICAgICAgICAgICBicmVhazsKKyAgICB9CisgICAgZmluYWxfc2lnbWEgPSBqID49IDAgJiYgX1B5VW5pY29kZV9Jc0Nhc2VkKGMpOworICAgIGlmIChmaW5hbF9zaWdtYSkgeworICAgICAgICBmb3IgKGogPSBpICsgMTsgaiA8IGxlbmd0aDsgaisrKSB7CisgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaik7CisgICAgICAgICAgICBpZiAoIV9QeVVuaWNvZGVfSXNDYXNlSWdub3JhYmxlKGMpKQorICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9Ci0gICAgICAgIHMrKzsKKyAgICAgICAgZmluYWxfc2lnbWEgPSBqID09IGxlbmd0aCB8fCAhX1B5VW5pY29kZV9Jc0Nhc2VkKGMpOwogICAgIH0KLQotICAgIHJldHVybiBzdGF0dXM7CisgICAgcmV0dXJuIChmaW5hbF9zaWdtYSkgPyAweDNDMiA6IDB4M0MzOwogfQogCi1zdGF0aWMKLWludCBmaXhsb3dlcihQeVVuaWNvZGVPYmplY3QgKnNlbGYpCitzdGF0aWMgaW50Citsb3dlcl91Y3M0KGludCBraW5kLCB2b2lkICpkYXRhLCBQeV9zc2l6ZV90IGxlbmd0aCwgUHlfc3NpemVfdCBpLAorICAgICAgICAgICBQeV9VQ1M0IGMsIFB5X1VDUzQgKm1hcHBlZCkKIHsKLSAgICBQeV9zc2l6ZV90IGxlbiA9IHNlbGYtPmxlbmd0aDsKLSAgICBQeV9VTklDT0RFICpzID0gc2VsZi0+c3RyOwotICAgIGludCBzdGF0dXMgPSAwOworICAgIC8qIE9ic2N1cmUgc3BlY2lhbCBjYXNlLiAqLworICAgIGlmIChjID09IDB4M0EzKSB7CisgICAgICAgIG1hcHBlZFswXSA9IGhhbmRsZV9jYXBpdGFsX3NpZ21hKGtpbmQsIGRhdGEsIGxlbmd0aCwgaSk7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICByZXR1cm4gX1B5VW5pY29kZV9Ub0xvd2VyRnVsbChjLCBtYXBwZWQpOworfQogCi0gICAgd2hpbGUgKGxlbi0tID4gMCkgewotICAgICAgICByZWdpc3RlciBQeV9VTklDT0RFIGNoOworc3RhdGljIFB5X3NzaXplX3QKK2RvX2NhcGl0YWxpemUoaW50IGtpbmQsIHZvaWQgKmRhdGEsIFB5X3NzaXplX3QgbGVuZ3RoLCBQeV9VQ1M0ICpyZXMsIFB5X1VDUzQgKm1heGNoYXIpCit7CisgICAgUHlfc3NpemVfdCBpLCBrID0gMDsKKyAgICBpbnQgbl9yZXMsIGo7CisgICAgUHlfVUNTNCBjLCBtYXBwZWRbM107CiAKLSAgICAgICAgY2ggPSBQeV9VTklDT0RFX1RPTE9XRVIoKnMpOwotICAgICAgICBpZiAoY2ggIT0gKnMpIHsKLSAgICAgICAgICAgIHN0YXR1cyA9IDE7Ci0gICAgICAgICAgICAqcyA9IGNoOworICAgIGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCAwKTsKKyAgICBuX3JlcyA9IF9QeVVuaWNvZGVfVG9VcHBlckZ1bGwoYywgbWFwcGVkKTsKKyAgICBmb3IgKGogPSAwOyBqIDwgbl9yZXM7IGorKykgeworICAgICAgICBpZiAobWFwcGVkW2pdID4gKm1heGNoYXIpCisgICAgICAgICAgICAqbWF4Y2hhciA9IG1hcHBlZFtqXTsKKyAgICAgICAgcmVzW2srK10gPSBtYXBwZWRbal07CisgICAgfQorICAgIGZvciAoaSA9IDE7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICAgIG5fcmVzID0gbG93ZXJfdWNzNChraW5kLCBkYXRhLCBsZW5ndGgsIGksIGMsIG1hcHBlZCk7CisgICAgICAgIGZvciAoaiA9IDA7IGogPCBuX3JlczsgaisrKSB7CisgICAgICAgICAgICBpZiAobWFwcGVkW2pdID4gKm1heGNoYXIpCisgICAgICAgICAgICAgICAgKm1heGNoYXIgPSBtYXBwZWRbal07CisgICAgICAgICAgICByZXNbaysrXSA9IG1hcHBlZFtqXTsKICAgICAgICAgfQotICAgICAgICBzKys7CiAgICAgfQotCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICByZXR1cm4gazsKIH0KIAotc3RhdGljCi1pbnQgZml4c3dhcGNhc2UoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQotewotICAgIFB5X3NzaXplX3QgbGVuID0gc2VsZi0+bGVuZ3RoOwotICAgIFB5X1VOSUNPREUgKnMgPSBzZWxmLT5zdHI7Ci0gICAgaW50IHN0YXR1cyA9IDA7CitzdGF0aWMgUHlfc3NpemVfdAorZG9fc3dhcGNhc2UoaW50IGtpbmQsIHZvaWQgKmRhdGEsIFB5X3NzaXplX3QgbGVuZ3RoLCBQeV9VQ1M0ICpyZXMsIFB5X1VDUzQgKm1heGNoYXIpIHsKKyAgICBQeV9zc2l6ZV90IGksIGsgPSAwOwogCi0gICAgd2hpbGUgKGxlbi0tID4gMCkgewotICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU1VQUEVSKCpzKSkgewotICAgICAgICAgICAgKnMgPSBQeV9VTklDT0RFX1RPTE9XRVIoKnMpOwotICAgICAgICAgICAgc3RhdHVzID0gMTsKLSAgICAgICAgfSBlbHNlIGlmIChQeV9VTklDT0RFX0lTTE9XRVIoKnMpKSB7Ci0gICAgICAgICAgICAqcyA9IFB5X1VOSUNPREVfVE9VUFBFUigqcyk7Ci0gICAgICAgICAgICBzdGF0dXMgPSAxOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBQeV9VQ1M0IGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSwgbWFwcGVkWzNdOworICAgICAgICBpbnQgbl9yZXMsIGo7CisgICAgICAgIGlmIChQeV9VTklDT0RFX0lTVVBQRVIoYykpIHsKKyAgICAgICAgICAgIG5fcmVzID0gbG93ZXJfdWNzNChraW5kLCBkYXRhLCBsZW5ndGgsIGksIGMsIG1hcHBlZCk7CiAgICAgICAgIH0KLSAgICAgICAgcysrOwotICAgIH0KLQotICAgIHJldHVybiBzdGF0dXM7Ci19Ci0KLXN0YXRpYwotaW50IGZpeGNhcGl0YWxpemUoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQotewotICAgIFB5X3NzaXplX3QgbGVuID0gc2VsZi0+bGVuZ3RoOwotICAgIFB5X1VOSUNPREUgKnMgPSBzZWxmLT5zdHI7Ci0gICAgaW50IHN0YXR1cyA9IDA7Ci0KLSAgICBpZiAobGVuID09IDApCi0gICAgICAgIHJldHVybiAwOwotICAgIGlmICghUHlfVU5JQ09ERV9JU1VQUEVSKCpzKSkgewotICAgICAgICAqcyA9IFB5X1VOSUNPREVfVE9VUFBFUigqcyk7Ci0gICAgICAgIHN0YXR1cyA9IDE7Ci0gICAgfQotICAgIHMrKzsKLSAgICB3aGlsZSAoLS1sZW4gPiAwKSB7Ci0gICAgICAgIGlmICghUHlfVU5JQ09ERV9JU0xPV0VSKCpzKSkgewotICAgICAgICAgICAgKnMgPSBQeV9VTklDT0RFX1RPTE9XRVIoKnMpOwotICAgICAgICAgICAgc3RhdHVzID0gMTsKKyAgICAgICAgZWxzZSBpZiAoUHlfVU5JQ09ERV9JU0xPV0VSKGMpKSB7CisgICAgICAgICAgICBuX3JlcyA9IF9QeVVuaWNvZGVfVG9VcHBlckZ1bGwoYywgbWFwcGVkKTsKICAgICAgICAgfQotICAgICAgICBzKys7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgbl9yZXMgPSAxOworICAgICAgICAgICAgbWFwcGVkWzBdID0gYzsKKyAgICAgICAgfQorICAgICAgICBmb3IgKGogPSAwOyBqIDwgbl9yZXM7IGorKykgeworICAgICAgICAgICAgaWYgKG1hcHBlZFtqXSA+ICptYXhjaGFyKQorICAgICAgICAgICAgICAgICptYXhjaGFyID0gbWFwcGVkW2pdOworICAgICAgICAgICAgcmVzW2srK10gPSBtYXBwZWRbal07CisgICAgICAgIH0KICAgICB9Ci0gICAgcmV0dXJuIHN0YXR1czsKKyAgICByZXR1cm4gazsKIH0KIAotc3RhdGljCi1pbnQgZml4dGl0bGUoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQorc3RhdGljIFB5X3NzaXplX3QKK2RvX3VwcGVyX29yX2xvd2VyKGludCBraW5kLCB2b2lkICpkYXRhLCBQeV9zc2l6ZV90IGxlbmd0aCwgUHlfVUNTNCAqcmVzLAorICAgICAgICAgICAgICAgICAgUHlfVUNTNCAqbWF4Y2hhciwgaW50IGxvd2VyKQogewotICAgIHJlZ2lzdGVyIFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKTsKLSAgICByZWdpc3RlciBQeV9VTklDT0RFICplOworICAgIFB5X3NzaXplX3QgaSwgayA9IDA7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSksIG1hcHBlZFszXTsKKyAgICAgICAgaW50IG5fcmVzLCBqOworICAgICAgICBpZiAobG93ZXIpCisgICAgICAgICAgICBuX3JlcyA9IGxvd2VyX3VjczQoa2luZCwgZGF0YSwgbGVuZ3RoLCBpLCBjLCBtYXBwZWQpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBuX3JlcyA9IF9QeVVuaWNvZGVfVG9VcHBlckZ1bGwoYywgbWFwcGVkKTsKKyAgICAgICAgZm9yIChqID0gMDsgaiA8IG5fcmVzOyBqKyspIHsKKyAgICAgICAgICAgIGlmIChtYXBwZWRbal0gPiAqbWF4Y2hhcikKKyAgICAgICAgICAgICAgICAqbWF4Y2hhciA9IG1hcHBlZFtqXTsKKyAgICAgICAgICAgIHJlc1trKytdID0gbWFwcGVkW2pdOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiBrOworfQorCitzdGF0aWMgUHlfc3NpemVfdAorZG9fdXBwZXIoaW50IGtpbmQsIHZvaWQgKmRhdGEsIFB5X3NzaXplX3QgbGVuZ3RoLCBQeV9VQ1M0ICpyZXMsIFB5X1VDUzQgKm1heGNoYXIpCit7CisgICAgcmV0dXJuIGRvX3VwcGVyX29yX2xvd2VyKGtpbmQsIGRhdGEsIGxlbmd0aCwgcmVzLCBtYXhjaGFyLCAwKTsKK30KKworc3RhdGljIFB5X3NzaXplX3QKK2RvX2xvd2VyKGludCBraW5kLCB2b2lkICpkYXRhLCBQeV9zc2l6ZV90IGxlbmd0aCwgUHlfVUNTNCAqcmVzLCBQeV9VQ1M0ICptYXhjaGFyKQoreworICAgIHJldHVybiBkb191cHBlcl9vcl9sb3dlcihraW5kLCBkYXRhLCBsZW5ndGgsIHJlcywgbWF4Y2hhciwgMSk7Cit9CisKK3N0YXRpYyBQeV9zc2l6ZV90Citkb19jYXNlZm9sZChpbnQga2luZCwgdm9pZCAqZGF0YSwgUHlfc3NpemVfdCBsZW5ndGgsIFB5X1VDUzQgKnJlcywgUHlfVUNTNCAqbWF4Y2hhcikKK3sKKyAgICBQeV9zc2l6ZV90IGksIGsgPSAwOworCisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIFB5X1VDUzQgYyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICBQeV9VQ1M0IG1hcHBlZFszXTsKKyAgICAgICAgaW50IGosIG5fcmVzID0gX1B5VW5pY29kZV9Ub0ZvbGRlZEZ1bGwoYywgbWFwcGVkKTsKKyAgICAgICAgZm9yIChqID0gMDsgaiA8IG5fcmVzOyBqKyspIHsKKyAgICAgICAgICAgIGlmIChtYXBwZWRbal0gPiAqbWF4Y2hhcikKKyAgICAgICAgICAgICAgICAqbWF4Y2hhciA9IG1hcHBlZFtqXTsKKyAgICAgICAgICAgIHJlc1trKytdID0gbWFwcGVkW2pdOworICAgICAgICB9CisgICAgfQorICAgIHJldHVybiBrOworfQorCitzdGF0aWMgUHlfc3NpemVfdAorZG9fdGl0bGUoaW50IGtpbmQsIHZvaWQgKmRhdGEsIFB5X3NzaXplX3QgbGVuZ3RoLCBQeV9VQ1M0ICpyZXMsIFB5X1VDUzQgKm1heGNoYXIpCit7CisgICAgUHlfc3NpemVfdCBpLCBrID0gMDsKICAgICBpbnQgcHJldmlvdXNfaXNfY2FzZWQ7CiAKLSAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgY2ggPSBQeV9VTklDT0RFX1RPVElUTEUoKnApOwotICAgICAgICBpZiAoKnAgIT0gY2gpIHsKLSAgICAgICAgICAgICpwID0gY2g7Ci0gICAgICAgICAgICByZXR1cm4gMTsKLSAgICAgICAgfQotICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0KLSAgICBlID0gcCArIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKICAgICBwcmV2aW91c19pc19jYXNlZCA9IDA7Ci0gICAgZm9yICg7IHAgPCBlOyBwKyspIHsKLSAgICAgICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSBjaCA9ICpwOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBjb25zdCBQeV9VQ1M0IGMgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKKyAgICAgICAgUHlfVUNTNCBtYXBwZWRbM107CisgICAgICAgIGludCBuX3JlcywgajsKIAogICAgICAgICBpZiAocHJldmlvdXNfaXNfY2FzZWQpCi0gICAgICAgICAgICAqcCA9IFB5X1VOSUNPREVfVE9MT1dFUihjaCk7CisgICAgICAgICAgICBuX3JlcyA9IGxvd2VyX3VjczQoa2luZCwgZGF0YSwgbGVuZ3RoLCBpLCBjLCBtYXBwZWQpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICAqcCA9IFB5X1VOSUNPREVfVE9USVRMRShjaCk7CisgICAgICAgICAgICBuX3JlcyA9IF9QeVVuaWNvZGVfVG9UaXRsZUZ1bGwoYywgbWFwcGVkKTsKIAotICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU0xPV0VSKGNoKSB8fAotICAgICAgICAgICAgUHlfVU5JQ09ERV9JU1VQUEVSKGNoKSB8fAotICAgICAgICAgICAgUHlfVU5JQ09ERV9JU1RJVExFKGNoKSkKLSAgICAgICAgICAgIHByZXZpb3VzX2lzX2Nhc2VkID0gMTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgcHJldmlvdXNfaXNfY2FzZWQgPSAwOworICAgICAgICBmb3IgKGogPSAwOyBqIDwgbl9yZXM7IGorKykgeworICAgICAgICAgICAgaWYgKG1hcHBlZFtqXSA+ICptYXhjaGFyKQorICAgICAgICAgICAgICAgICptYXhjaGFyID0gbWFwcGVkW2pdOworICAgICAgICAgICAgcmVzW2srK10gPSBtYXBwZWRbal07CisgICAgICAgIH0KKworICAgICAgICBwcmV2aW91c19pc19jYXNlZCA9IF9QeVVuaWNvZGVfSXNDYXNlZChjKTsKICAgICB9Ci0gICAgcmV0dXJuIDE7CisgICAgcmV0dXJuIGs7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitjYXNlX29wZXJhdGlvbihQeU9iamVjdCAqc2VsZiwKKyAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKCpwZXJmb3JtKShpbnQsIHZvaWQgKiwgUHlfc3NpemVfdCwgUHlfVUNTNCAqLCBQeV9VQ1M0ICopKQoreworICAgIFB5T2JqZWN0ICpyZXMgPSBOVUxMOworICAgIFB5X3NzaXplX3QgbGVuZ3RoLCBuZXdsZW5ndGggPSAwOworICAgIGludCBraW5kLCBvdXRraW5kOworICAgIHZvaWQgKmRhdGEsICpvdXRkYXRhOworICAgIFB5X1VDUzQgbWF4Y2hhciA9IDAsICp0bXAsICp0bXBlbmQ7CisKKyAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKHNlbGYpKTsKKworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgbGVuZ3RoID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgdG1wID0gUHlNZW1fTUFMTE9DKHNpemVvZihQeV9VQ1M0KSAqIDMgKiBsZW5ndGgpOworICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CisgICAgbmV3bGVuZ3RoID0gcGVyZm9ybShraW5kLCBkYXRhLCBsZW5ndGgsIHRtcCwgJm1heGNoYXIpOworICAgIHJlcyA9IFB5VW5pY29kZV9OZXcobmV3bGVuZ3RoLCBtYXhjaGFyKTsKKyAgICBpZiAocmVzID09IE5VTEwpCisgICAgICAgIGdvdG8gbGVhdmU7CisgICAgdG1wZW5kID0gdG1wICsgbmV3bGVuZ3RoOworICAgIG91dGRhdGEgPSBQeVVuaWNvZGVfREFUQShyZXMpOworICAgIG91dGtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXMpOworICAgIHN3aXRjaCAob3V0a2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUyhQeV9VQ1M0LCBQeV9VQ1MxLCB0bXAsIHRtcGVuZCwgb3V0ZGF0YSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIF9QeVVuaWNvZGVfQ09OVkVSVF9CWVRFUyhQeV9VQ1M0LCBQeV9VQ1MyLCB0bXAsIHRtcGVuZCwgb3V0ZGF0YSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIG1lbWNweShvdXRkYXRhLCB0bXAsIHNpemVvZihQeV9VQ1M0KSAqIG5ld2xlbmd0aCk7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIGFzc2VydCgwKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorICBsZWF2ZToKKyAgICBQeU1lbV9GUkVFKHRtcCk7CisgICAgcmV0dXJuIHJlczsKIH0KIAogUHlPYmplY3QgKgogUHlVbmljb2RlX0pvaW4oUHlPYmplY3QgKnNlcGFyYXRvciwgUHlPYmplY3QgKnNlcSkKIHsKLSAgICBjb25zdCBQeV9VTklDT0RFIGJsYW5rID0gJyAnOwotICAgIGNvbnN0IFB5X1VOSUNPREUgKnNlcCA9ICZibGFuazsKLSAgICBQeV9zc2l6ZV90IHNlcGxlbiA9IDE7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpyZXMgPSBOVUxMOyAvKiB0aGUgcmVzdWx0ICovCi0gICAgUHlfVU5JQ09ERSAqcmVzX3A7ICAgICAgIC8qIHBvaW50ZXIgdG8gZnJlZSBieXRlIGluIHJlcydzIHN0cmluZyBhcmVhICovCisgICAgUHlPYmplY3QgKnNlcCA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBzZXBsZW47CisgICAgUHlPYmplY3QgKnJlcyA9IE5VTEw7IC8qIHRoZSByZXN1bHQgKi8KICAgICBQeU9iamVjdCAqZnNlcTsgICAgICAgICAgLyogUHlTZXF1ZW5jZV9GYXN0KHNlcSkgKi8KICAgICBQeV9zc2l6ZV90IHNlcWxlbjsgICAgICAgLyogbGVuKGZzZXEpIC0tIG51bWJlciBvZiBpdGVtcyBpbiBzZXF1ZW5jZSAqLwogICAgIFB5T2JqZWN0ICoqaXRlbXM7CiAgICAgUHlPYmplY3QgKml0ZW07Ci0gICAgUHlfc3NpemVfdCBzeiwgaTsKKyAgICBQeV9zc2l6ZV90IHN6LCBpLCByZXNfb2Zmc2V0OworICAgIFB5X1VDUzQgbWF4Y2hhcjsKKyAgICBQeV9VQ1M0IGl0ZW1fbWF4Y2hhcjsKKyAgICBpbnQgdXNlX21lbWNweTsKKyAgICB1bnNpZ25lZCBjaGFyICpyZXNfZGF0YSA9IE5VTEwsICpzZXBfZGF0YSA9IE5VTEw7CisgICAgUHlPYmplY3QgKmxhc3Rfb2JqOworICAgIHVuc2lnbmVkIGludCBraW5kID0gMDsKIAogICAgIGZzZXEgPSBQeVNlcXVlbmNlX0Zhc3Qoc2VxLCAiIik7CiAgICAgaWYgKGZzZXEgPT0gTlVMTCkgewpAQCAtNjc3NiwyNCArOTcyMSwzNCBAQAogICAgIHNlcWxlbiA9IFB5U2VxdWVuY2VfRmFzdF9HRVRfU0laRShmc2VxKTsKICAgICAvKiBJZiBlbXB0eSBzZXF1ZW5jZSwgcmV0dXJuIHUiIi4gKi8KICAgICBpZiAoc2VxbGVuID09IDApIHsKLSAgICAgICAgcmVzID0gX1B5VW5pY29kZV9OZXcoMCk7ICAvKiBlbXB0eSBzZXF1ZW5jZTsgcmV0dXJuIHUiIiAqLwotICAgICAgICBnb3RvIERvbmU7CisgICAgICAgIFB5X0RFQ1JFRihmc2VxKTsKKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICByZXMgPSB1bmljb2RlX2VtcHR5OworICAgICAgICByZXR1cm4gcmVzOwogICAgIH0KLSAgICBpdGVtcyA9IFB5U2VxdWVuY2VfRmFzdF9JVEVNUyhmc2VxKTsKKwogICAgIC8qIElmIHNpbmdsZXRvbiBzZXF1ZW5jZSB3aXRoIGFuIGV4YWN0IFVuaWNvZGUsIHJldHVybiB0aGF0LiAqLworICAgIGxhc3Rfb2JqID0gTlVMTDsKKyAgICBpdGVtcyA9IFB5U2VxdWVuY2VfRmFzdF9JVEVNUyhmc2VxKTsKICAgICBpZiAoc2VxbGVuID09IDEpIHsKLSAgICAgICAgaXRlbSA9IGl0ZW1zWzBdOwotICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3QoaXRlbSkpIHsKLSAgICAgICAgICAgIFB5X0lOQ1JFRihpdGVtKTsKLSAgICAgICAgICAgIHJlcyA9IChQeVVuaWNvZGVPYmplY3QgKilpdGVtOwotICAgICAgICAgICAgZ290byBEb25lOworICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3QoaXRlbXNbMF0pKSB7CisgICAgICAgICAgICByZXMgPSBpdGVtc1swXTsKKyAgICAgICAgICAgIFB5X0lOQ1JFRihyZXMpOworICAgICAgICAgICAgUHlfREVDUkVGKGZzZXEpOworICAgICAgICAgICAgcmV0dXJuIHJlczsKICAgICAgICAgfQorICAgICAgICBzZXBsZW4gPSAwOworICAgICAgICBtYXhjaGFyID0gMDsKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIC8qIFNldCB1cCBzZXAgYW5kIHNlcGxlbiAqLwogICAgICAgICBpZiAoc2VwYXJhdG9yID09IE5VTEwpIHsKLSAgICAgICAgICAgIHNlcCA9ICZibGFuazsKKyAgICAgICAgICAgIC8qIGZhbGwgYmFjayB0byBhIGJsYW5rIHNwYWNlIHNlcGFyYXRvciAqLworICAgICAgICAgICAgc2VwID0gUHlVbmljb2RlX0Zyb21PcmRpbmFsKCcgJyk7CisgICAgICAgICAgICBpZiAoIXNlcCkKKyAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICBzZXBsZW4gPSAxOworICAgICAgICAgICAgbWF4Y2hhciA9IDMyOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2soc2VwYXJhdG9yKSkgewpAQCAtNjgwMyw5ICs5NzU4LDE2IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1RZUEUoc2VwYXJhdG9yKS0+dHBfbmFtZSk7CiAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgc2VwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VwYXJhdG9yKTsKLSAgICAgICAgICAgIHNlcGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShzZXBhcmF0b3IpOworICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZXBhcmF0b3IpKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgIHNlcCA9IHNlcGFyYXRvcjsKKyAgICAgICAgICAgIHNlcGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlcGFyYXRvcik7CisgICAgICAgICAgICBtYXhjaGFyID0gUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHNlcGFyYXRvcik7CisgICAgICAgICAgICAvKiBpbmMgcmVmY291bnQgdG8ga2VlcCB0aGlzIGNvZGUgcGF0aCBzeW1tZXRyaWMgd2l0aCB0aGUKKyAgICAgICAgICAgICAgIGFib3ZlIGNhc2Ugb2YgYSBibGFuayBzZXBhcmF0b3IgKi8KKyAgICAgICAgICAgIFB5X0lOQ1JFRihzZXApOwogICAgICAgICB9CisgICAgICAgIGxhc3Rfb2JqID0gc2VwOwogICAgIH0KIAogICAgIC8qIFRoZXJlIGFyZSBhdCBsZWFzdCB0d28gdGhpbmdzIHRvIGpvaW4sIG9yIGVsc2Ugd2UgaGF2ZSBhIHN1YmNsYXNzCkBAIC02ODE0LDYgKzk3NzYsMTEgQEAKICAgICAgKiBuZWVkIChzeiksIGFuZCBzZWUgd2hldGhlciBhbGwgYXJndW1lbnQgYXJlIHN0cmluZ3MuCiAgICAgICovCiAgICAgc3ogPSAwOworI2lmZGVmIFB5X0RFQlVHCisgICAgdXNlX21lbWNweSA9IDA7CisjZWxzZQorICAgIHVzZV9tZW1jcHkgPSAxOworI2VuZGlmCiAgICAgZm9yIChpID0gMDsgaSA8IHNlcWxlbjsgaSsrKSB7CiAgICAgICAgIGNvbnN0IFB5X3NzaXplX3Qgb2xkX3N6ID0gc3o7CiAgICAgICAgIGl0ZW0gPSBpdGVtc1tpXTsKQEAgLTY4MjQsNyArOTc5MSwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgIGksIFB5X1RZUEUoaXRlbSktPnRwX25hbWUpOwogICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICB9Ci0gICAgICAgIHN6ICs9IFB5VW5pY29kZV9HRVRfU0laRShpdGVtKTsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShpdGVtKSA9PSAtMSkKKyAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgc3ogKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgoaXRlbSk7CisgICAgICAgIGl0ZW1fbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShpdGVtKTsKKyAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBpdGVtX21heGNoYXIpOwogICAgICAgICBpZiAoaSAhPSAwKQogICAgICAgICAgICAgc3ogKz0gc2VwbGVuOwogICAgICAgICBpZiAoc3ogPCBvbGRfc3ogfHwgc3ogPiBQWV9TU0laRV9UX01BWCkgewpAQCAtNjgzMiwyNjYgKzk4MDMsNzE0IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImpvaW4oKSByZXN1bHQgaXMgdG9vIGxvbmcgZm9yIGEgUHl0aG9uIHN0cmluZyIpOwogICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICB9CisgICAgICAgIGlmICh1c2VfbWVtY3B5ICYmIGxhc3Rfb2JqICE9IE5VTEwpIHsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfS0lORChsYXN0X29iaikgIT0gUHlVbmljb2RlX0tJTkQoaXRlbSkpCisgICAgICAgICAgICAgICAgdXNlX21lbWNweSA9IDA7CisgICAgICAgIH0KKyAgICAgICAgbGFzdF9vYmogPSBpdGVtOwogICAgIH0KIAotICAgIHJlcyA9IF9QeVVuaWNvZGVfTmV3KHN6KTsKKyAgICByZXMgPSBQeVVuaWNvZGVfTmV3KHN6LCBtYXhjaGFyKTsKICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKIAogICAgIC8qIENhdGVuYXRlIGV2ZXJ5dGhpbmcuICovCi0gICAgcmVzX3AgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXMpOwotICAgIGZvciAoaSA9IDA7IGkgPCBzZXFsZW47ICsraSkgeworI2lmZGVmIFB5X0RFQlVHCisgICAgdXNlX21lbWNweSA9IDA7CisjZWxzZQorICAgIGlmICh1c2VfbWVtY3B5KSB7CisgICAgICAgIHJlc19kYXRhID0gUHlVbmljb2RlXzFCWVRFX0RBVEEocmVzKTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHJlcyk7CisgICAgICAgIGlmIChzZXBsZW4gIT0gMCkKKyAgICAgICAgICAgIHNlcF9kYXRhID0gUHlVbmljb2RlXzFCWVRFX0RBVEEoc2VwKTsKKyAgICB9CisjZW5kaWYKKyAgICBmb3IgKGkgPSAwLCByZXNfb2Zmc2V0ID0gMDsgaSA8IHNlcWxlbjsgKytpKSB7CiAgICAgICAgIFB5X3NzaXplX3QgaXRlbWxlbjsKICAgICAgICAgaXRlbSA9IGl0ZW1zW2ldOwotICAgICAgICBpdGVtbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKGl0ZW0pOwogICAgICAgICAvKiBDb3B5IGl0ZW0sIGFuZCBtYXliZSB0aGUgc2VwYXJhdG9yLiAqLwotICAgICAgICBpZiAoaSkgewotICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHJlc19wLCBzZXAsIHNlcGxlbik7Ci0gICAgICAgICAgICByZXNfcCArPSBzZXBsZW47CisgICAgICAgIGlmIChpICYmIHNlcGxlbiAhPSAwKSB7CisgICAgICAgICAgICBpZiAodXNlX21lbWNweSkgeworICAgICAgICAgICAgICAgIFB5X01FTUNQWShyZXNfZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgc2VwX2RhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGtpbmQgKiBzZXBsZW4pOworICAgICAgICAgICAgICAgIHJlc19kYXRhICs9IGtpbmQgKiBzZXBsZW47CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBjb3B5X2NoYXJhY3RlcnMocmVzLCByZXNfb2Zmc2V0LCBzZXAsIDAsIHNlcGxlbik7CisgICAgICAgICAgICAgICAgcmVzX29mZnNldCArPSBzZXBsZW47CisgICAgICAgICAgICB9CiAgICAgICAgIH0KLSAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHJlc19wLCBQeVVuaWNvZGVfQVNfVU5JQ09ERShpdGVtKSwgaXRlbWxlbik7Ci0gICAgICAgIHJlc19wICs9IGl0ZW1sZW47CisgICAgICAgIGl0ZW1sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChpdGVtKTsKKyAgICAgICAgaWYgKGl0ZW1sZW4gIT0gMCkgeworICAgICAgICAgICAgaWYgKHVzZV9tZW1jcHkpIHsKKyAgICAgICAgICAgICAgICBQeV9NRU1DUFkocmVzX2RhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9EQVRBKGl0ZW0pLAorICAgICAgICAgICAgICAgICAgICAgICAgICBraW5kICogaXRlbWxlbik7CisgICAgICAgICAgICAgICAgcmVzX2RhdGEgKz0ga2luZCAqIGl0ZW1sZW47CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBjb3B5X2NoYXJhY3RlcnMocmVzLCByZXNfb2Zmc2V0LCBpdGVtLCAwLCBpdGVtbGVuKTsKKyAgICAgICAgICAgICAgICByZXNfb2Zmc2V0ICs9IGl0ZW1sZW47CisgICAgICAgICAgICB9CisgICAgICAgIH0KICAgICB9CisgICAgaWYgKHVzZV9tZW1jcHkpCisgICAgICAgIGFzc2VydChyZXNfZGF0YSA9PSBQeVVuaWNvZGVfMUJZVEVfREFUQShyZXMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICArIGtpbmQgKiBQeVVuaWNvZGVfR0VUX0xFTkdUSChyZXMpKTsKKyAgICBlbHNlCisgICAgICAgIGFzc2VydChyZXNfb2Zmc2V0ID09IFB5VW5pY29kZV9HRVRfTEVOR1RIKHJlcykpOwogCi0gIERvbmU6CiAgICAgUHlfREVDUkVGKGZzZXEpOwotICAgIHJldHVybiAoUHlPYmplY3QgKilyZXM7CisgICAgUHlfWERFQ1JFRihzZXApOworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzLCAxKSk7CisgICAgcmV0dXJuIHJlczsKIAogICBvbkVycm9yOgogICAgIFB5X0RFQ1JFRihmc2VxKTsKKyAgICBQeV9YREVDUkVGKHNlcCk7CiAgICAgUHlfWERFQ1JFRihyZXMpOwogICAgIHJldHVybiBOVUxMOwogfQogCi1zdGF0aWMKLVB5VW5pY29kZU9iamVjdCAqcGFkKFB5VW5pY29kZU9iamVjdCAqc2VsZiwKLSAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVmdCwKLSAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgcmlnaHQsCi0gICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFIGZpbGwpCisjZGVmaW5lIEZJTEwoa2luZCwgZGF0YSwgdmFsdWUsIHN0YXJ0LCBsZW5ndGgpIFwKKyAgICBkbyB7IFwKKyAgICAgICAgUHlfc3NpemVfdCBpXyA9IDA7IFwKKyAgICAgICAgYXNzZXJ0KGtpbmQgIT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpOyBcCisgICAgICAgIHN3aXRjaCAoKGtpbmQpKSB7IFwKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDogeyBcCisgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICogdG9fID0gKHVuc2lnbmVkIGNoYXIgKikoKGRhdGEpKSArIChzdGFydCk7IFwKKyAgICAgICAgICAgIG1lbXNldCh0b18sICh1bnNpZ25lZCBjaGFyKXZhbHVlLCBsZW5ndGgpOyBcCisgICAgICAgICAgICBicmVhazsgXAorICAgICAgICB9IFwKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDogeyBcCisgICAgICAgICAgICBQeV9VQ1MyICogdG9fID0gKFB5X1VDUzIgKikoKGRhdGEpKSArIChzdGFydCk7IFwKKyAgICAgICAgICAgIGZvciAoOyBpXyA8IChsZW5ndGgpOyArK2lfLCArK3RvXykgKnRvXyA9ICh2YWx1ZSk7IFwKKyAgICAgICAgICAgIGJyZWFrOyBcCisgICAgICAgIH0gXAorICAgICAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOiB7IFwKKyAgICAgICAgICAgIFB5X1VDUzQgKiB0b18gPSAoUHlfVUNTNCAqKSgoZGF0YSkpICsgKHN0YXJ0KTsgXAorICAgICAgICAgICAgZm9yICg7IGlfIDwgKGxlbmd0aCk7ICsraV8sICsrdG9fKSAqdG9fID0gKHZhbHVlKTsgXAorICAgICAgICAgICAgYnJlYWs7IFwKKyAgICAgICAgZGVmYXVsdDogYXNzZXJ0KDApOyBcCisgICAgICAgIH0gXAorICAgICAgICB9IFwKKyAgICB9IHdoaWxlICgwKQorCitQeV9zc2l6ZV90CitQeVVuaWNvZGVfRmlsbChQeU9iamVjdCAqdW5pY29kZSwgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBsZW5ndGgsCisgICAgICAgICAgICAgICBQeV9VQ1M0IGZpbGxfY2hhcikKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnU7CisgICAgUHlfc3NpemVfdCBtYXhsZW47CisgICAgZW51bSBQeVVuaWNvZGVfS2luZCBraW5kOworICAgIHZvaWQgKmRhdGE7CisKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgeworICAgICAgICBQeUVycl9CYWRJbnRlcm5hbENhbGwoKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaWYgKHVuaWNvZGVfY2hlY2tfbW9kaWZpYWJsZSh1bmljb2RlKSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgaWYgKGZpbGxfY2hhciA+IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRSh1bmljb2RlKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiZmlsbCBjaGFyYWN0ZXIgaXMgYmlnZ2VyIHRoYW4gIgorICAgICAgICAgICAgICAgICAgICAgICAgICJ0aGUgc3RyaW5nIG1heGltdW0gY2hhcmFjdGVyIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICBtYXhsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKSAtIHN0YXJ0OworICAgIGxlbmd0aCA9IFB5X01JTihtYXhsZW4sIGxlbmd0aCk7CisgICAgaWYgKGxlbmd0aCA8PSAwKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh1bmljb2RlKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEodW5pY29kZSk7CisgICAgRklMTChraW5kLCBkYXRhLCBmaWxsX2NoYXIsIHN0YXJ0LCBsZW5ndGgpOworICAgIHJldHVybiBsZW5ndGg7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCitwYWQoUHlPYmplY3QgKnNlbGYsCisgICAgUHlfc3NpemVfdCBsZWZ0LAorICAgIFB5X3NzaXplX3QgcmlnaHQsCisgICAgUHlfVUNTNCBmaWxsKQoreworICAgIFB5T2JqZWN0ICp1OworICAgIFB5X1VDUzQgbWF4Y2hhcjsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogCiAgICAgaWYgKGxlZnQgPCAwKQogICAgICAgICBsZWZ0ID0gMDsKICAgICBpZiAocmlnaHQgPCAwKQogICAgICAgICByaWdodCA9IDA7CiAKLSAgICBpZiAobGVmdCA9PSAwICYmIHJpZ2h0ID09IDAgJiYgUHlVbmljb2RlX0NoZWNrRXhhY3Qoc2VsZikpIHsKLSAgICAgICAgUHlfSU5DUkVGKHNlbGYpOwotICAgICAgICByZXR1cm4gc2VsZjsKLSAgICB9CisgICAgaWYgKGxlZnQgPT0gMCAmJiByaWdodCA9PSAwKQorICAgICAgICByZXR1cm4gdW5pY29kZV9yZXN1bHRfdW5jaGFuZ2VkKHNlbGYpOwogCi0gICAgaWYgKGxlZnQgPiBQWV9TU0laRV9UX01BWCAtIHNlbGYtPmxlbmd0aCB8fAotICAgICAgICByaWdodCA+IFBZX1NTSVpFX1RfTUFYIC0gKGxlZnQgKyBzZWxmLT5sZW5ndGgpKSB7CisgICAgaWYgKGxlZnQgPiBQWV9TU0laRV9UX01BWCAtIF9QeVVuaWNvZGVfTEVOR1RIKHNlbGYpIHx8CisgICAgICAgIHJpZ2h0ID4gUFlfU1NJWkVfVF9NQVggLSAobGVmdCArIF9QeVVuaWNvZGVfTEVOR1RIKHNlbGYpKSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwgInBhZGRlZCBzdHJpbmcgaXMgdG9vIGxvbmciKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHUgPSBfUHlVbmljb2RlX05ldyhsZWZ0ICsgc2VsZi0+bGVuZ3RoICsgcmlnaHQpOwotICAgIGlmICh1KSB7Ci0gICAgICAgIGlmIChsZWZ0KQotICAgICAgICAgICAgUHlfVU5JQ09ERV9GSUxMKHUtPnN0ciwgZmlsbCwgbGVmdCk7Ci0gICAgICAgIFB5X1VOSUNPREVfQ09QWSh1LT5zdHIgKyBsZWZ0LCBzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCk7Ci0gICAgICAgIGlmIChyaWdodCkKLSAgICAgICAgICAgIFB5X1VOSUNPREVfRklMTCh1LT5zdHIgKyBsZWZ0ICsgc2VsZi0+bGVuZ3RoLCBmaWxsLCByaWdodCk7Ci0gICAgfQorICAgIG1heGNoYXIgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUoc2VsZik7CisgICAgaWYgKGZpbGwgPiBtYXhjaGFyKQorICAgICAgICBtYXhjaGFyID0gZmlsbDsKKyAgICB1ID0gUHlVbmljb2RlX05ldyhsZWZ0ICsgX1B5VW5pY29kZV9MRU5HVEgoc2VsZikgKyByaWdodCwgbWF4Y2hhcik7CisgICAgaWYgKCF1KQorICAgICAgICByZXR1cm4gTlVMTDsKIAorICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh1KTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEodSk7CisgICAgaWYgKGxlZnQpCisgICAgICAgIEZJTEwoa2luZCwgZGF0YSwgZmlsbCwgMCwgbGVmdCk7CisgICAgaWYgKHJpZ2h0KQorICAgICAgICBGSUxMKGtpbmQsIGRhdGEsIGZpbGwsIGxlZnQgKyBfUHlVbmljb2RlX0xFTkdUSChzZWxmKSwgcmlnaHQpOworICAgIGNvcHlfY2hhcmFjdGVycyh1LCBsZWZ0LCBzZWxmLCAwLCBfUHlVbmljb2RlX0xFTkdUSChzZWxmKSk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1LCAxKSk7CiAgICAgcmV0dXJuIHU7CiB9CisjdW5kZWYgRklMTAogCi1QeU9iamVjdCAqUHlVbmljb2RlX1NwbGl0bGluZXMoUHlPYmplY3QgKnN0cmluZywgaW50IGtlZXBlbmRzKQorUHlPYmplY3QgKgorUHlVbmljb2RlX1NwbGl0bGluZXMoUHlPYmplY3QgKnN0cmluZywgaW50IGtlZXBlbmRzKQogewogICAgIFB5T2JqZWN0ICpsaXN0OwogCiAgICAgc3RyaW5nID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyaW5nKTsKICAgICBpZiAoc3RyaW5nID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3RyaW5nKSA9PSAtMSkgeworICAgICAgICBQeV9ERUNSRUYoc3RyaW5nKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogCi0gICAgbGlzdCA9IHN0cmluZ2xpYl9zcGxpdGxpbmVzKAotICAgICAgICAoUHlPYmplY3QqKSBzdHJpbmcsIFB5VW5pY29kZV9BU19VTklDT0RFKHN0cmluZyksCi0gICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzdHJpbmcpLCBrZWVwZW5kcyk7Ci0KKyAgICBzd2l0Y2ggKFB5VW5pY29kZV9LSU5EKHN0cmluZykpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHN0cmluZykpCisgICAgICAgICAgICBsaXN0ID0gYXNjaWlsaWJfc3BsaXRsaW5lcygKKyAgICAgICAgICAgICAgICBzdHJpbmcsIFB5VW5pY29kZV8xQllURV9EQVRBKHN0cmluZyksCisgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyaW5nKSwga2VlcGVuZHMpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBsaXN0ID0gdWNzMWxpYl9zcGxpdGxpbmVzKAorICAgICAgICAgICAgICAgIHN0cmluZywgUHlVbmljb2RlXzFCWVRFX0RBVEEoc3RyaW5nKSwKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHJpbmcpLCBrZWVwZW5kcyk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIGxpc3QgPSB1Y3MybGliX3NwbGl0bGluZXMoCisgICAgICAgICAgICBzdHJpbmcsIFB5VW5pY29kZV8yQllURV9EQVRBKHN0cmluZyksCisgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHJpbmcpLCBrZWVwZW5kcyk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIGxpc3QgPSB1Y3M0bGliX3NwbGl0bGluZXMoCisgICAgICAgICAgICBzdHJpbmcsIFB5VW5pY29kZV80QllURV9EQVRBKHN0cmluZyksCisgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHJpbmcpLCBrZWVwZW5kcyk7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIGFzc2VydCgwKTsKKyAgICAgICAgbGlzdCA9IDA7CisgICAgfQogICAgIFB5X0RFQ1JFRihzdHJpbmcpOwogICAgIHJldHVybiBsaXN0OwogfQogCi1zdGF0aWMKLVB5T2JqZWN0ICpzcGxpdChQeVVuaWNvZGVPYmplY3QgKnNlbGYsCi0gICAgICAgICAgICAgICAgUHlVbmljb2RlT2JqZWN0ICpzdWJzdHJpbmcsCi0gICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhjb3VudCkKK3N0YXRpYyBQeU9iamVjdCAqCitzcGxpdChQeU9iamVjdCAqc2VsZiwKKyAgICAgIFB5T2JqZWN0ICpzdWJzdHJpbmcsCisgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQogeworICAgIGludCBraW5kMSwga2luZDIsIGtpbmQ7CisgICAgdm9pZCAqYnVmMSwgKmJ1ZjI7CisgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yOworICAgIFB5T2JqZWN0KiBvdXQ7CisKICAgICBpZiAobWF4Y291bnQgPCAwKQogICAgICAgICBtYXhjb3VudCA9IFBZX1NTSVpFX1RfTUFYOwogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAoc3Vic3RyaW5nID09IE5VTEwpCi0gICAgICAgIHJldHVybiBzdHJpbmdsaWJfc3BsaXRfd2hpdGVzcGFjZSgKLSAgICAgICAgICAgIChQeU9iamVjdCopIHNlbGYsICBzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCwgbWF4Y291bnQKLSAgICAgICAgICAgICk7CisgICAgICAgIHN3aXRjaCAoUHlVbmljb2RlX0tJTkQoc2VsZikpIHsKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfSVNfQVNDSUkoc2VsZikpCisgICAgICAgICAgICAgICAgcmV0dXJuIGFzY2lpbGliX3NwbGl0X3doaXRlc3BhY2UoCisgICAgICAgICAgICAgICAgICAgIHNlbGYsICBQeVVuaWNvZGVfMUJZVEVfREFUQShzZWxmKSwKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZiksIG1heGNvdW50CisgICAgICAgICAgICAgICAgICAgICk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgcmV0dXJuIHVjczFsaWJfc3BsaXRfd2hpdGVzcGFjZSgKKyAgICAgICAgICAgICAgICAgICAgc2VsZiwgIFB5VW5pY29kZV8xQllURV9EQVRBKHNlbGYpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSwgbWF4Y291bnQKKyAgICAgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgICAgIHJldHVybiB1Y3MybGliX3NwbGl0X3doaXRlc3BhY2UoCisgICAgICAgICAgICAgICAgc2VsZiwgIFB5VW5pY29kZV8yQllURV9EQVRBKHNlbGYpLAorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLCBtYXhjb3VudAorICAgICAgICAgICAgICAgICk7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgICAgICByZXR1cm4gdWNzNGxpYl9zcGxpdF93aGl0ZXNwYWNlKAorICAgICAgICAgICAgICAgIHNlbGYsICBQeVVuaWNvZGVfNEJZVEVfREFUQShzZWxmKSwKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSwgbWF4Y291bnQKKyAgICAgICAgICAgICAgICApOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgYXNzZXJ0KDApOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KIAotICAgIHJldHVybiBzdHJpbmdsaWJfc3BsaXQoCi0gICAgICAgIChQeU9iamVjdCopIHNlbGYsICBzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCwKLSAgICAgICAgc3Vic3RyaW5nLT5zdHIsIHN1YnN0cmluZy0+bGVuZ3RoLAotICAgICAgICBtYXhjb3VudAotICAgICAgICApOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3Vic3RyaW5nKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBraW5kMSA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgIGtpbmQyID0gUHlVbmljb2RlX0tJTkQoc3Vic3RyaW5nKTsKKyAgICBraW5kID0ga2luZDEgPiBraW5kMiA/IGtpbmQxIDoga2luZDI7CisgICAgYnVmMSA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOworICAgIGJ1ZjIgPSBQeVVuaWNvZGVfREFUQShzdWJzdHJpbmcpOworICAgIGlmIChraW5kMSAhPSBraW5kKQorICAgICAgICBidWYxID0gX1B5VW5pY29kZV9Bc0tpbmQoc2VsZiwga2luZCk7CisgICAgaWYgKCFidWYxKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgYnVmMiA9IF9QeVVuaWNvZGVfQXNLaW5kKHN1YnN0cmluZywga2luZCk7CisgICAgaWYgKCFidWYyKSB7CisgICAgICAgIGlmIChraW5kMSAhPSBraW5kKSBQeU1lbV9GcmVlKGJ1ZjEpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgbGVuMSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGxlbjIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdWJzdHJpbmcpOworCisgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzZWxmKSAmJiBQeVVuaWNvZGVfSVNfQVNDSUkoc3Vic3RyaW5nKSkKKyAgICAgICAgICAgIG91dCA9IGFzY2lpbGliX3NwbGl0KAorICAgICAgICAgICAgICAgIHNlbGYsICBidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBtYXhjb3VudCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG91dCA9IHVjczFsaWJfc3BsaXQoCisgICAgICAgICAgICAgICAgc2VsZiwgIGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIG1heGNvdW50KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgb3V0ID0gdWNzMmxpYl9zcGxpdCgKKyAgICAgICAgICAgIHNlbGYsICBidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBtYXhjb3VudCk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIG91dCA9IHVjczRsaWJfc3BsaXQoCisgICAgICAgICAgICBzZWxmLCAgYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgbWF4Y291bnQpOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICBvdXQgPSBOVUxMOworICAgIH0KKyAgICBpZiAoa2luZDEgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYxKTsKKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYyKTsKKyAgICByZXR1cm4gb3V0OwogfQogCi1zdGF0aWMKLVB5T2JqZWN0ICpyc3BsaXQoUHlVbmljb2RlT2JqZWN0ICpzZWxmLAotICAgICAgICAgICAgICAgICBQeVVuaWNvZGVPYmplY3QgKnN1YnN0cmluZywKLSAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhjb3VudCkKK3N0YXRpYyBQeU9iamVjdCAqCityc3BsaXQoUHlPYmplY3QgKnNlbGYsCisgICAgICAgUHlPYmplY3QgKnN1YnN0cmluZywKKyAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQogeworICAgIGludCBraW5kMSwga2luZDIsIGtpbmQ7CisgICAgdm9pZCAqYnVmMSwgKmJ1ZjI7CisgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yOworICAgIFB5T2JqZWN0KiBvdXQ7CisKICAgICBpZiAobWF4Y291bnQgPCAwKQogICAgICAgICBtYXhjb3VudCA9IFBZX1NTSVpFX1RfTUFYOwogCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAoc3Vic3RyaW5nID09IE5VTEwpCi0gICAgICAgIHJldHVybiBzdHJpbmdsaWJfcnNwbGl0X3doaXRlc3BhY2UoCi0gICAgICAgICAgICAoUHlPYmplY3QqKSBzZWxmLCAgc2VsZi0+c3RyLCBzZWxmLT5sZW5ndGgsIG1heGNvdW50Ci0gICAgICAgICAgICApOworICAgICAgICBzd2l0Y2ggKFB5VW5pY29kZV9LSU5EKHNlbGYpKSB7CisgICAgICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHNlbGYpKQorICAgICAgICAgICAgICAgIHJldHVybiBhc2NpaWxpYl9yc3BsaXRfd2hpdGVzcGFjZSgKKyAgICAgICAgICAgICAgICAgICAgc2VsZiwgIFB5VW5pY29kZV8xQllURV9EQVRBKHNlbGYpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSwgbWF4Y291bnQKKyAgICAgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICByZXR1cm4gdWNzMWxpYl9yc3BsaXRfd2hpdGVzcGFjZSgKKyAgICAgICAgICAgICAgICAgICAgc2VsZiwgIFB5VW5pY29kZV8xQllURV9EQVRBKHNlbGYpLAorICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSwgbWF4Y291bnQKKyAgICAgICAgICAgICAgICAgICAgKTsKKyAgICAgICAgY2FzZSBQeVVuaWNvZGVfMkJZVEVfS0lORDoKKyAgICAgICAgICAgIHJldHVybiB1Y3MybGliX3JzcGxpdF93aGl0ZXNwYWNlKAorICAgICAgICAgICAgICAgIHNlbGYsICBQeVVuaWNvZGVfMkJZVEVfREFUQShzZWxmKSwKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSwgbWF4Y291bnQKKyAgICAgICAgICAgICAgICApOworICAgICAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICAgICAgcmV0dXJuIHVjczRsaWJfcnNwbGl0X3doaXRlc3BhY2UoCisgICAgICAgICAgICAgICAgc2VsZiwgIFB5VW5pY29kZV80QllURV9EQVRBKHNlbGYpLAorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLCBtYXhjb3VudAorICAgICAgICAgICAgICAgICk7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBhc3NlcnQoMCk7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQogCi0gICAgcmV0dXJuIHN0cmluZ2xpYl9yc3BsaXQoCi0gICAgICAgIChQeU9iamVjdCopIHNlbGYsICBzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCwKLSAgICAgICAgc3Vic3RyaW5nLT5zdHIsIHN1YnN0cmluZy0+bGVuZ3RoLAotICAgICAgICBtYXhjb3VudAotICAgICAgICApOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3Vic3RyaW5nKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBraW5kMSA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgIGtpbmQyID0gUHlVbmljb2RlX0tJTkQoc3Vic3RyaW5nKTsKKyAgICBraW5kID0ga2luZDEgPiBraW5kMiA/IGtpbmQxIDoga2luZDI7CisgICAgYnVmMSA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOworICAgIGJ1ZjIgPSBQeVVuaWNvZGVfREFUQShzdWJzdHJpbmcpOworICAgIGlmIChraW5kMSAhPSBraW5kKQorICAgICAgICBidWYxID0gX1B5VW5pY29kZV9Bc0tpbmQoc2VsZiwga2luZCk7CisgICAgaWYgKCFidWYxKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgYnVmMiA9IF9QeVVuaWNvZGVfQXNLaW5kKHN1YnN0cmluZywga2luZCk7CisgICAgaWYgKCFidWYyKSB7CisgICAgICAgIGlmIChraW5kMSAhPSBraW5kKSBQeU1lbV9GcmVlKGJ1ZjEpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgbGVuMSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGxlbjIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdWJzdHJpbmcpOworCisgICAgc3dpdGNoIChraW5kKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzZWxmKSAmJiBQeVVuaWNvZGVfSVNfQVNDSUkoc3Vic3RyaW5nKSkKKyAgICAgICAgICAgIG91dCA9IGFzY2lpbGliX3JzcGxpdCgKKyAgICAgICAgICAgICAgICBzZWxmLCAgYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgbWF4Y291bnQpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBvdXQgPSB1Y3MxbGliX3JzcGxpdCgKKyAgICAgICAgICAgICAgICBzZWxmLCAgYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgbWF4Y291bnQpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICBvdXQgPSB1Y3MybGliX3JzcGxpdCgKKyAgICAgICAgICAgIHNlbGYsICBidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBtYXhjb3VudCk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzRCWVRFX0tJTkQ6CisgICAgICAgIG91dCA9IHVjczRsaWJfcnNwbGl0KAorICAgICAgICAgICAgc2VsZiwgIGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIG1heGNvdW50KTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgb3V0ID0gTlVMTDsKKyAgICB9CisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMik7CisgICAgcmV0dXJuIG91dDsKIH0KIAotc3RhdGljCi1QeU9iamVjdCAqcmVwbGFjZShQeVVuaWNvZGVPYmplY3QgKnNlbGYsCi0gICAgICAgICAgICAgICAgICBQeVVuaWNvZGVPYmplY3QgKnN0cjEsCi0gICAgICAgICAgICAgICAgICBQeVVuaWNvZGVPYmplY3QgKnN0cjIsCi0gICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQorc3RhdGljIFB5X3NzaXplX3QKK2FueWxpYl9maW5kKGludCBraW5kLCBQeU9iamVjdCAqc3RyMSwgdm9pZCAqYnVmMSwgUHlfc3NpemVfdCBsZW4xLAorICAgICAgICAgICAgUHlPYmplY3QgKnN0cjIsIHZvaWQgKmJ1ZjIsIFB5X3NzaXplX3QgbGVuMiwgUHlfc3NpemVfdCBvZmZzZXQpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp1OworICAgIHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgIGlmIChQeVVuaWNvZGVfSVNfQVNDSUkoc3RyMSkgJiYgUHlVbmljb2RlX0lTX0FTQ0lJKHN0cjIpKQorICAgICAgICAgICAgcmV0dXJuIGFzY2lpbGliX2ZpbmQoYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgb2Zmc2V0KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmV0dXJuIHVjczFsaWJfZmluZChidWYxLCBsZW4xLCBidWYyLCBsZW4yLCBvZmZzZXQpOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIHJldHVybiB1Y3MybGliX2ZpbmQoYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgb2Zmc2V0KTsKKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICByZXR1cm4gdWNzNGxpYl9maW5kKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIG9mZnNldCk7CisgICAgfQorICAgIGFzc2VydCgwKTsKKyAgICByZXR1cm4gLTE7Cit9CisKK3N0YXRpYyBQeV9zc2l6ZV90CithbnlsaWJfY291bnQoaW50IGtpbmQsIFB5T2JqZWN0ICpzc3RyLCB2b2lkKiBzYnVmLCBQeV9zc2l6ZV90IHNsZW4sCisgICAgICAgICAgICAgUHlPYmplY3QgKnN0cjEsIHZvaWQgKmJ1ZjEsIFB5X3NzaXplX3QgbGVuMSwgUHlfc3NpemVfdCBtYXhjb3VudCkKK3sKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHNzdHIpICYmIFB5VW5pY29kZV9JU19BU0NJSShzdHIxKSkKKyAgICAgICAgICAgIHJldHVybiBhc2NpaWxpYl9jb3VudChzYnVmLCBzbGVuLCBidWYxLCBsZW4xLCBtYXhjb3VudCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJldHVybiB1Y3MxbGliX2NvdW50KHNidWYsIHNsZW4sIGJ1ZjEsIGxlbjEsIG1heGNvdW50KTsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICByZXR1cm4gdWNzMmxpYl9jb3VudChzYnVmLCBzbGVuLCBidWYxLCBsZW4xLCBtYXhjb3VudCk7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmV0dXJuIHVjczRsaWJfY291bnQoc2J1Ziwgc2xlbiwgYnVmMSwgbGVuMSwgbWF4Y291bnQpOworICAgIH0KKyAgICBhc3NlcnQoMCk7CisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBQeU9iamVjdCAqCityZXBsYWNlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqc3RyMSwKKyAgICAgICAgUHlPYmplY3QgKnN0cjIsIFB5X3NzaXplX3QgbWF4Y291bnQpCit7CisgICAgUHlPYmplY3QgKnU7CisgICAgY2hhciAqc2J1ZiA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOworICAgIGNoYXIgKmJ1ZjEgPSBQeVVuaWNvZGVfREFUQShzdHIxKTsKKyAgICBjaGFyICpidWYyID0gUHlVbmljb2RlX0RBVEEoc3RyMik7CisgICAgaW50IHNyZWxlYXNlID0gMCwgcmVsZWFzZTEgPSAwLCByZWxlYXNlMiA9IDA7CisgICAgaW50IHNraW5kID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAgaW50IGtpbmQxID0gUHlVbmljb2RlX0tJTkQoc3RyMSk7CisgICAgaW50IGtpbmQyID0gUHlVbmljb2RlX0tJTkQoc3RyMik7CisgICAgUHlfc3NpemVfdCBzbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgUHlfc3NpemVfdCBsZW4xID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyMSk7CisgICAgUHlfc3NpemVfdCBsZW4yID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyMik7CisgICAgaW50IG1heXNocmluazsKKyAgICBQeV9VQ1M0IG1heGNoYXIsIG1heGNoYXJfc3RyMjsKIAogICAgIGlmIChtYXhjb3VudCA8IDApCiAgICAgICAgIG1heGNvdW50ID0gUFlfU1NJWkVfVF9NQVg7Ci0gICAgZWxzZSBpZiAobWF4Y291bnQgPT0gMCB8fCBzZWxmLT5sZW5ndGggPT0gMCkKKyAgICBlbHNlIGlmIChtYXhjb3VudCA9PSAwIHx8IHNsZW4gPT0gMCkKICAgICAgICAgZ290byBub3RoaW5nOwogCi0gICAgaWYgKHN0cjEtPmxlbmd0aCA9PSBzdHIyLT5sZW5ndGgpIHsKLSAgICAgICAgUHlfc3NpemVfdCBpOworICAgIGlmIChzdHIxID09IHN0cjIpCisgICAgICAgIGdvdG8gbm90aGluZzsKKyAgICBpZiAoc2tpbmQgPCBraW5kMSkKKyAgICAgICAgLyogc3Vic3RyaW5nIHRvbyB3aWRlIHRvIGJlIHByZXNlbnQgKi8KKyAgICAgICAgZ290byBub3RoaW5nOworCisgICAgbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShzZWxmKTsKKyAgICBtYXhjaGFyX3N0cjIgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUoc3RyMik7CisgICAgLyogUmVwbGFjaW5nIHN0cjEgd2l0aCBzdHIyIG1heSBjYXVzZSBhIG1heGNoYXIgcmVkdWN0aW9uIGluIHRoZQorICAgICAgIHJlc3VsdCBzdHJpbmcuICovCisgICAgbWF5c2hyaW5rID0gKG1heGNoYXJfc3RyMiA8IG1heGNoYXIpOworICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgbWF4Y2hhcl9zdHIyKTsKKworICAgIGlmIChsZW4xID09IGxlbjIpIHsKICAgICAgICAgLyogc2FtZSBsZW5ndGggKi8KLSAgICAgICAgaWYgKHN0cjEtPmxlbmd0aCA9PSAwKQorICAgICAgICBpZiAobGVuMSA9PSAwKQogICAgICAgICAgICAgZ290byBub3RoaW5nOwotICAgICAgICBpZiAoc3RyMS0+bGVuZ3RoID09IDEpIHsKKyAgICAgICAgaWYgKGxlbjEgPT0gMSkgewogICAgICAgICAgICAgLyogcmVwbGFjZSBjaGFyYWN0ZXJzICovCi0gICAgICAgICAgICBQeV9VTklDT0RFIHUxLCB1MjsKLSAgICAgICAgICAgIGlmICghZmluZGNoYXIoc2VsZi0+c3RyLCBzZWxmLT5sZW5ndGgsIHN0cjEtPnN0clswXSkpCisgICAgICAgICAgICBQeV9VQ1M0IHUxLCB1MjsKKyAgICAgICAgICAgIGludCBya2luZDsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgaW5kZXgsIHBvczsKKyAgICAgICAgICAgIGNoYXIgKnNyYzsKKworICAgICAgICAgICAgdTEgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHN0cjEsIDApOworICAgICAgICAgICAgcG9zID0gZmluZGNoYXIoc2J1ZiwgUHlVbmljb2RlX0tJTkQoc2VsZiksIHNsZW4sIHUxLCAxKTsKKyAgICAgICAgICAgIGlmIChwb3MgPCAwKQogICAgICAgICAgICAgICAgIGdvdG8gbm90aGluZzsKLSAgICAgICAgICAgIHUgPSAoUHlVbmljb2RlT2JqZWN0KikgUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHNlbGYtPmxlbmd0aCk7CisgICAgICAgICAgICB1MiA9IFB5VW5pY29kZV9SRUFEX0NIQVIoc3RyMiwgMCk7CisgICAgICAgICAgICB1ID0gUHlVbmljb2RlX05ldyhzbGVuLCBtYXhjaGFyKTsKICAgICAgICAgICAgIGlmICghdSkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIFB5X1VOSUNPREVfQ09QWSh1LT5zdHIsIHNlbGYtPnN0ciwgc2VsZi0+bGVuZ3RoKTsKLSAgICAgICAgICAgIHUxID0gc3RyMS0+c3RyWzBdOwotICAgICAgICAgICAgdTIgPSBzdHIyLT5zdHJbMF07Ci0gICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgdS0+bGVuZ3RoOyBpKyspCi0gICAgICAgICAgICAgICAgaWYgKHUtPnN0cltpXSA9PSB1MSkgewotICAgICAgICAgICAgICAgICAgICBpZiAoLS1tYXhjb3VudCA8IDApCi0gICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgdS0+c3RyW2ldID0gdTI7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgaSA9IHN0cmluZ2xpYl9maW5kKAotICAgICAgICAgICAgICAgIHNlbGYtPnN0ciwgc2VsZi0+bGVuZ3RoLCBzdHIxLT5zdHIsIHN0cjEtPmxlbmd0aCwgMAotICAgICAgICAgICAgICAgICk7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIGNvcHlfY2hhcmFjdGVycyh1LCAwLCBzZWxmLCAwLCBzbGVuKTsKKyAgICAgICAgICAgIHJraW5kID0gUHlVbmljb2RlX0tJTkQodSk7CisKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShya2luZCwgUHlVbmljb2RlX0RBVEEodSksIHBvcywgdTIpOworICAgICAgICAgICAgaW5kZXggPSAwOworICAgICAgICAgICAgc3JjID0gc2J1ZjsKKyAgICAgICAgICAgIHdoaWxlICgtLW1heGNvdW50KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHBvcysrOworICAgICAgICAgICAgICAgIHNyYyArPSBwb3MgKiBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICAgICAgICAgICAgICBzbGVuIC09IHBvczsKKyAgICAgICAgICAgICAgICBpbmRleCArPSBwb3M7CisgICAgICAgICAgICAgICAgcG9zID0gZmluZGNoYXIoc3JjLCBQeVVuaWNvZGVfS0lORChzZWxmKSwgc2xlbiwgdTEsIDEpOworICAgICAgICAgICAgICAgIGlmIChwb3MgPCAwKQorICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUocmtpbmQsIFB5VW5pY29kZV9EQVRBKHUpLCBpbmRleCArIHBvcywgdTIpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgaW50IHJraW5kID0gc2tpbmQ7CisgICAgICAgICAgICBjaGFyICpyZXM7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGk7CisKKyAgICAgICAgICAgIGlmIChraW5kMSA8IHJraW5kKSB7CisgICAgICAgICAgICAgICAgLyogd2lkZW4gc3Vic3RyaW5nICovCisgICAgICAgICAgICAgICAgYnVmMSA9IF9QeVVuaWNvZGVfQXNLaW5kKHN0cjEsIHJraW5kKTsKKyAgICAgICAgICAgICAgICBpZiAoIWJ1ZjEpIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgcmVsZWFzZTEgPSAxOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaSA9IGFueWxpYl9maW5kKHJraW5kLCBzZWxmLCBzYnVmLCBzbGVuLCBzdHIxLCBidWYxLCBsZW4xLCAwKTsKICAgICAgICAgICAgIGlmIChpIDwgMCkKICAgICAgICAgICAgICAgICBnb3RvIG5vdGhpbmc7Ci0gICAgICAgICAgICB1ID0gKFB5VW5pY29kZU9iamVjdCopIFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCBzZWxmLT5sZW5ndGgpOworICAgICAgICAgICAgaWYgKHJraW5kID4ga2luZDIpIHsKKyAgICAgICAgICAgICAgICAvKiB3aWRlbiByZXBsYWNlbWVudCAqLworICAgICAgICAgICAgICAgIGJ1ZjIgPSBfUHlVbmljb2RlX0FzS2luZChzdHIyLCBya2luZCk7CisgICAgICAgICAgICAgICAgaWYgKCFidWYyKSBnb3RvIGVycm9yOworICAgICAgICAgICAgICAgIHJlbGVhc2UyID0gMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgaWYgKHJraW5kIDwga2luZDIpIHsKKyAgICAgICAgICAgICAgICAvKiB3aWRlbiBzZWxmIGFuZCBidWYxICovCisgICAgICAgICAgICAgICAgcmtpbmQgPSBraW5kMjsKKyAgICAgICAgICAgICAgICBpZiAocmVsZWFzZTEpIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgICAgICAgICAgICAgc2J1ZiA9IF9QeVVuaWNvZGVfQXNLaW5kKHNlbGYsIHJraW5kKTsKKyAgICAgICAgICAgICAgICBpZiAoIXNidWYpIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgc3JlbGVhc2UgPSAxOworICAgICAgICAgICAgICAgIGJ1ZjEgPSBfUHlVbmljb2RlX0FzS2luZChzdHIxLCBya2luZCk7CisgICAgICAgICAgICAgICAgaWYgKCFidWYxKSBnb3RvIGVycm9yOworICAgICAgICAgICAgICAgIHJlbGVhc2UxID0gMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHUgPSBQeVVuaWNvZGVfTmV3KHNsZW4sIG1heGNoYXIpOwogICAgICAgICAgICAgaWYgKCF1KQotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHUtPnN0ciwgc2VsZi0+c3RyLCBzZWxmLT5sZW5ndGgpOworICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICBhc3NlcnQoUHlVbmljb2RlX0tJTkQodSkgPT0gcmtpbmQpOworICAgICAgICAgICAgcmVzID0gUHlVbmljb2RlX0RBVEEodSk7CiAKKyAgICAgICAgICAgIG1lbWNweShyZXMsIHNidWYsIHJraW5kICogc2xlbik7CiAgICAgICAgICAgICAvKiBjaGFuZ2UgZXZlcnl0aGluZyBpbi1wbGFjZSwgc3RhcnRpbmcgd2l0aCB0aGlzIG9uZSAqLwotICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHUtPnN0citpLCBzdHIyLT5zdHIsIHN0cjItPmxlbmd0aCk7Ci0gICAgICAgICAgICBpICs9IHN0cjEtPmxlbmd0aDsKKyAgICAgICAgICAgIG1lbWNweShyZXMgKyBya2luZCAqIGksCisgICAgICAgICAgICAgICAgICAgYnVmMiwKKyAgICAgICAgICAgICAgICAgICBya2luZCAqIGxlbjIpOworICAgICAgICAgICAgaSArPSBsZW4xOwogCiAgICAgICAgICAgICB3aGlsZSAoIC0tbWF4Y291bnQgPiAwKSB7Ci0gICAgICAgICAgICAgICAgaSA9IHN0cmluZ2xpYl9maW5kKHNlbGYtPnN0citpLCBzZWxmLT5sZW5ndGgtaSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyMS0+c3RyLCBzdHIxLT5sZW5ndGgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkpOworICAgICAgICAgICAgICAgIGkgPSBhbnlsaWJfZmluZChya2luZCwgc2VsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2J1Zitya2luZCppLCBzbGVuLWksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cjEsIGJ1ZjEsIGxlbjEsIGkpOwogICAgICAgICAgICAgICAgIGlmIChpID09IC0xKQogICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkodS0+c3RyK2ksIHN0cjItPnN0ciwgc3RyMi0+bGVuZ3RoKTsKLSAgICAgICAgICAgICAgICBpICs9IHN0cjEtPmxlbmd0aDsKKyAgICAgICAgICAgICAgICBtZW1jcHkocmVzICsgcmtpbmQgKiBpLAorICAgICAgICAgICAgICAgICAgICAgICBidWYyLAorICAgICAgICAgICAgICAgICAgICAgICBya2luZCAqIGxlbjIpOworICAgICAgICAgICAgICAgIGkgKz0gbGVuMTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQotICAgIH0gZWxzZSB7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBQeV9zc2l6ZV90IG4sIGksIGosIGlyZXM7CisgICAgICAgIFB5X3NzaXplX3QgcHJvZHVjdCwgbmV3X3NpemU7CisgICAgICAgIGludCBya2luZCA9IHNraW5kOworICAgICAgICBjaGFyICpyZXM7CiAKLSAgICAgICAgUHlfc3NpemVfdCBuLCBpLCBqOwotICAgICAgICBQeV9zc2l6ZV90IHByb2R1Y3QsIG5ld19zaXplLCBkZWx0YTsKLSAgICAgICAgUHlfVU5JQ09ERSAqcDsKLQotICAgICAgICAvKiByZXBsYWNlIHN0cmluZ3MgKi8KLSAgICAgICAgbiA9IHN0cmluZ2xpYl9jb3VudChzZWxmLT5zdHIsIHNlbGYtPmxlbmd0aCwgc3RyMS0+c3RyLCBzdHIxLT5sZW5ndGgsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4Y291bnQpOworICAgICAgICBpZiAoa2luZDEgPCBya2luZCkgeworICAgICAgICAgICAgLyogd2lkZW4gc3Vic3RyaW5nICovCisgICAgICAgICAgICBidWYxID0gX1B5VW5pY29kZV9Bc0tpbmQoc3RyMSwgcmtpbmQpOworICAgICAgICAgICAgaWYgKCFidWYxKSBnb3RvIGVycm9yOworICAgICAgICAgICAgcmVsZWFzZTEgPSAxOworICAgICAgICB9CisgICAgICAgIG4gPSBhbnlsaWJfY291bnQocmtpbmQsIHNlbGYsIHNidWYsIHNsZW4sIHN0cjEsIGJ1ZjEsIGxlbjEsIG1heGNvdW50KTsKICAgICAgICAgaWYgKG4gPT0gMCkKICAgICAgICAgICAgIGdvdG8gbm90aGluZzsKLSAgICAgICAgLyogbmV3X3NpemUgPSBzZWxmLT5sZW5ndGggKyBuICogKHN0cjItPmxlbmd0aCAtIHN0cjEtPmxlbmd0aCkpOyAqLwotICAgICAgICBkZWx0YSA9IChzdHIyLT5sZW5ndGggLSBzdHIxLT5sZW5ndGgpOwotICAgICAgICBpZiAoZGVsdGEgPT0gMCkgewotICAgICAgICAgICAgbmV3X3NpemUgPSBzZWxmLT5sZW5ndGg7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBwcm9kdWN0ID0gbiAqIChzdHIyLT5sZW5ndGggLSBzdHIxLT5sZW5ndGgpOwotICAgICAgICAgICAgaWYgKChwcm9kdWN0IC8gKHN0cjItPmxlbmd0aCAtIHN0cjEtPmxlbmd0aCkpICE9IG4pIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlcGxhY2Ugc3RyaW5nIGlzIHRvbyBsb25nIik7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBuZXdfc2l6ZSA9IHNlbGYtPmxlbmd0aCArIHByb2R1Y3Q7Ci0gICAgICAgICAgICBpZiAobmV3X3NpemUgPCAwKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyZXBsYWNlIHN0cmluZyBpcyB0b28gbG9uZyIpOwotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgfQorICAgICAgICBpZiAoa2luZDIgPCBya2luZCkgeworICAgICAgICAgICAgLyogd2lkZW4gcmVwbGFjZW1lbnQgKi8KKyAgICAgICAgICAgIGJ1ZjIgPSBfUHlVbmljb2RlX0FzS2luZChzdHIyLCBya2luZCk7CisgICAgICAgICAgICBpZiAoIWJ1ZjIpIGdvdG8gZXJyb3I7CisgICAgICAgICAgICByZWxlYXNlMiA9IDE7CiAgICAgICAgIH0KLSAgICAgICAgdSA9IF9QeVVuaWNvZGVfTmV3KG5ld19zaXplKTsKKyAgICAgICAgZWxzZSBpZiAoa2luZDIgPiBya2luZCkgeworICAgICAgICAgICAgLyogd2lkZW4gc2VsZiBhbmQgYnVmMSAqLworICAgICAgICAgICAgcmtpbmQgPSBraW5kMjsKKyAgICAgICAgICAgIHNidWYgPSBfUHlVbmljb2RlX0FzS2luZChzZWxmLCBya2luZCk7CisgICAgICAgICAgICBpZiAoIXNidWYpIGdvdG8gZXJyb3I7CisgICAgICAgICAgICBzcmVsZWFzZSA9IDE7CisgICAgICAgICAgICBpZiAocmVsZWFzZTEpIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgICAgICAgICBidWYxID0gX1B5VW5pY29kZV9Bc0tpbmQoc3RyMSwgcmtpbmQpOworICAgICAgICAgICAgaWYgKCFidWYxKSBnb3RvIGVycm9yOworICAgICAgICAgICAgcmVsZWFzZTEgPSAxOworICAgICAgICB9CisgICAgICAgIC8qIG5ld19zaXplID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZikgKyBuICogKFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cjIpIC0KKyAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyMSkpKTsgKi8KKyAgICAgICAgcHJvZHVjdCA9IG4gKiAobGVuMi1sZW4xKTsKKyAgICAgICAgaWYgKChwcm9kdWN0IC8gKGxlbjItbGVuMSkpICE9IG4pIHsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlcGxhY2Ugc3RyaW5nIGlzIHRvbyBsb25nIik7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorICAgICAgICBuZXdfc2l6ZSA9IHNsZW4gKyBwcm9kdWN0OworICAgICAgICBpZiAobmV3X3NpemUgPT0gMCkgeworICAgICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICAgICAgdSA9IHVuaWNvZGVfZW1wdHk7CisgICAgICAgICAgICBnb3RvIGRvbmU7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG5ld19zaXplIDwgMCB8fCBuZXdfc2l6ZSA+IChQWV9TU0laRV9UX01BWCA+PiAocmtpbmQtMSkpKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmVwbGFjZSBzdHJpbmcgaXMgdG9vIGxvbmciKTsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIH0KKyAgICAgICAgdSA9IFB5VW5pY29kZV9OZXcobmV3X3NpemUsIG1heGNoYXIpOwogICAgICAgICBpZiAoIXUpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgaSA9IDA7Ci0gICAgICAgIHAgPSB1LT5zdHI7Ci0gICAgICAgIGlmIChzdHIxLT5sZW5ndGggPiAwKSB7CisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICBhc3NlcnQoUHlVbmljb2RlX0tJTkQodSkgPT0gcmtpbmQpOworICAgICAgICByZXMgPSBQeVVuaWNvZGVfREFUQSh1KTsKKyAgICAgICAgaXJlcyA9IGkgPSAwOworICAgICAgICBpZiAobGVuMSA+IDApIHsKICAgICAgICAgICAgIHdoaWxlIChuLS0gPiAwKSB7CiAgICAgICAgICAgICAgICAgLyogbG9vayBmb3IgbmV4dCBtYXRjaCAqLwotICAgICAgICAgICAgICAgIGogPSBzdHJpbmdsaWJfZmluZChzZWxmLT5zdHIraSwgc2VsZi0+bGVuZ3RoLWksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cjEtPnN0ciwgc3RyMS0+bGVuZ3RoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpKTsKKyAgICAgICAgICAgICAgICBqID0gYW55bGliX2ZpbmQocmtpbmQsIHNlbGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNidWYgKyBya2luZCAqIGksIHNsZW4taSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyMSwgYnVmMSwgbGVuMSwgaSk7CiAgICAgICAgICAgICAgICAgaWYgKGogPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIGVsc2UgaWYgKGogPiBpKSB7CiAgICAgICAgICAgICAgICAgICAgIC8qIGNvcHkgdW5jaGFuZ2VkIHBhcnQgW2k6al0gKi8KLSAgICAgICAgICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHAsIHNlbGYtPnN0citpLCBqLWkpOwotICAgICAgICAgICAgICAgICAgICBwICs9IGogLSBpOworICAgICAgICAgICAgICAgICAgICBtZW1jcHkocmVzICsgcmtpbmQgKiBpcmVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgc2J1ZiArIHJraW5kICogaSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHJraW5kICogKGotaSkpOworICAgICAgICAgICAgICAgICAgICBpcmVzICs9IGogLSBpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAvKiBjb3B5IHN1YnN0aXR1dGlvbiBzdHJpbmcgKi8KLSAgICAgICAgICAgICAgICBpZiAoc3RyMi0+bGVuZ3RoID4gMCkgewotICAgICAgICAgICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkocCwgc3RyMi0+c3RyLCBzdHIyLT5sZW5ndGgpOwotICAgICAgICAgICAgICAgICAgICBwICs9IHN0cjItPmxlbmd0aDsKKyAgICAgICAgICAgICAgICBpZiAobGVuMiA+IDApIHsKKyAgICAgICAgICAgICAgICAgICAgbWVtY3B5KHJlcyArIHJraW5kICogaXJlcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZjIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBya2luZCAqIGxlbjIpOworICAgICAgICAgICAgICAgICAgICBpcmVzICs9IGxlbjI7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGkgPSBqICsgc3RyMS0+bGVuZ3RoOworICAgICAgICAgICAgICAgIGkgPSBqICsgbGVuMTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChpIDwgc2VsZi0+bGVuZ3RoKQorICAgICAgICAgICAgaWYgKGkgPCBzbGVuKQogICAgICAgICAgICAgICAgIC8qIGNvcHkgdGFpbCBbaTpdICovCi0gICAgICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHAsIHNlbGYtPnN0citpLCBzZWxmLT5sZW5ndGgtaSk7Ci0gICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgbWVtY3B5KHJlcyArIHJraW5kICogaXJlcywKKyAgICAgICAgICAgICAgICAgICAgICAgc2J1ZiArIHJraW5kICogaSwKKyAgICAgICAgICAgICAgICAgICAgICAgcmtpbmQgKiAoc2xlbi1pKSk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAvKiBpbnRlcmxlYXZlICovCiAgICAgICAgICAgICB3aGlsZSAobiA+IDApIHsKLSAgICAgICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkocCwgc3RyMi0+c3RyLCBzdHIyLT5sZW5ndGgpOwotICAgICAgICAgICAgICAgIHAgKz0gc3RyMi0+bGVuZ3RoOworICAgICAgICAgICAgICAgIG1lbWNweShyZXMgKyBya2luZCAqIGlyZXMsCisgICAgICAgICAgICAgICAgICAgICAgIGJ1ZjIsCisgICAgICAgICAgICAgICAgICAgICAgIHJraW5kICogbGVuMik7CisgICAgICAgICAgICAgICAgaXJlcyArPSBsZW4yOwogICAgICAgICAgICAgICAgIGlmICgtLW4gPD0gMCkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICAgICAgKnArKyA9IHNlbGYtPnN0cltpKytdOworICAgICAgICAgICAgICAgIG1lbWNweShyZXMgKyBya2luZCAqIGlyZXMsCisgICAgICAgICAgICAgICAgICAgICAgIHNidWYgKyBya2luZCAqIGksCisgICAgICAgICAgICAgICAgICAgICAgIHJraW5kKTsKKyAgICAgICAgICAgICAgICBpcmVzKys7CisgICAgICAgICAgICAgICAgaSsrOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHAsIHNlbGYtPnN0citpLCBzZWxmLT5sZW5ndGgtaSk7CisgICAgICAgICAgICBtZW1jcHkocmVzICsgcmtpbmQgKiBpcmVzLAorICAgICAgICAgICAgICAgICAgIHNidWYgKyBya2luZCAqIGksCisgICAgICAgICAgICAgICAgICAgcmtpbmQgKiAoc2xlbi1pKSk7CiAgICAgICAgIH0KICAgICB9Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKSB1OworCisgICAgaWYgKG1heXNocmluaykgeworICAgICAgICB1bmljb2RlX2FkanVzdF9tYXhjaGFyKCZ1KTsKKyAgICAgICAgaWYgKHUgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgfQorCisgIGRvbmU6CisgICAgaWYgKHNyZWxlYXNlKQorICAgICAgICBQeU1lbV9GUkVFKHNidWYpOworICAgIGlmIChyZWxlYXNlMSkKKyAgICAgICAgUHlNZW1fRlJFRShidWYxKTsKKyAgICBpZiAocmVsZWFzZTIpCisgICAgICAgIFB5TWVtX0ZSRUUoYnVmMik7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1LCAxKSk7CisgICAgcmV0dXJuIHU7CiAKICAgbm90aGluZzoKICAgICAvKiBub3RoaW5nIHRvIHJlcGxhY2U7IHJldHVybiBvcmlnaW5hbCBzdHJpbmcgKHdoZW4gcG9zc2libGUpICovCi0gICAgaWYgKFB5VW5pY29kZV9DaGVja0V4YWN0KHNlbGYpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKSBzZWxmOwotICAgIH0KLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHNlbGYtPnN0ciwgc2VsZi0+bGVuZ3RoKTsKKyAgICBpZiAoc3JlbGVhc2UpCisgICAgICAgIFB5TWVtX0ZSRUUoc2J1Zik7CisgICAgaWYgKHJlbGVhc2UxKQorICAgICAgICBQeU1lbV9GUkVFKGJ1ZjEpOworICAgIGlmIChyZWxlYXNlMikKKyAgICAgICAgUHlNZW1fRlJFRShidWYyKTsKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHRfdW5jaGFuZ2VkKHNlbGYpOworCisgIGVycm9yOgorICAgIGlmIChzcmVsZWFzZSAmJiBzYnVmKQorICAgICAgICBQeU1lbV9GUkVFKHNidWYpOworICAgIGlmIChyZWxlYXNlMSAmJiBidWYxKQorICAgICAgICBQeU1lbV9GUkVFKGJ1ZjEpOworICAgIGlmIChyZWxlYXNlMiAmJiBidWYyKQorICAgICAgICBQeU1lbV9GUkVFKGJ1ZjIpOworICAgIHJldHVybiBOVUxMOwogfQogCiAvKiAtLS0gVW5pY29kZSBPYmplY3QgTWV0aG9kcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8KQEAgLTcxMDMsOSArMTA1MjIsMTEgQEAKIGNoYXJhY3RlcnMsIGFsbCByZW1haW5pbmcgY2FzZWQgY2hhcmFjdGVycyBoYXZlIGxvd2VyIGNhc2UuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfdGl0bGUoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV90aXRsZShQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZXR1cm4gZml4dXAoc2VsZiwgZml4dGl0bGUpOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJldHVybiBjYXNlX29wZXJhdGlvbihzZWxmLCBkb190aXRsZSk7CiB9CiAKIFB5RG9jX1NUUlZBUihjYXBpdGFsaXplX19kb2NfXywKQEAgLTcxMTUsNTcgKzEwNTM2LDM4IEBACiBoYXZlIHVwcGVyIGNhc2UgYW5kIHRoZSByZXN0IGxvd2VyIGNhc2UuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfY2FwaXRhbGl6ZShQeVVuaWNvZGVPYmplY3QgKnNlbGYpCit1bmljb2RlX2NhcGl0YWxpemUoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmV0dXJuIGZpeHVwKHNlbGYsIGZpeGNhcGl0YWxpemUpOwotfQotCi0jaWYgMAotUHlEb2NfU1RSVkFSKGNhcHdvcmRzX19kb2NfXywKLSAgICAgICAgICAgICAiUy5jYXB3b3JkcygpIC0+IHN0clxuXAotXG5cCi1BcHBseSAuY2FwaXRhbGl6ZSgpIHRvIGFsbCB3b3JkcyBpbiBTIGFuZCByZXR1cm4gdGhlIHJlc3VsdCB3aXRoXG5cCi1ub3JtYWxpemVkIHdoaXRlc3BhY2UgKGFsbCB3aGl0ZXNwYWNlIHN0cmluZ3MgYXJlIHJlcGxhY2VkIGJ5ICcgJykuIik7Ci0KLXN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfY2Fwd29yZHMoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQotewotICAgIFB5T2JqZWN0ICpsaXN0OwotICAgIFB5T2JqZWN0ICppdGVtOwotICAgIFB5X3NzaXplX3QgaTsKLQotICAgIC8qIFNwbGl0IGludG8gd29yZHMgKi8KLSAgICBsaXN0ID0gc3BsaXQoc2VsZiwgTlVMTCwgLTEpOwotICAgIGlmICghbGlzdCkKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQogICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIC8qIENhcGl0YWxpemUgZWFjaCB3b3JkICovCi0gICAgZm9yIChpID0gMDsgaSA8IFB5TGlzdF9HRVRfU0laRShsaXN0KTsgaSsrKSB7Ci0gICAgICAgIGl0ZW0gPSBmaXh1cCgoUHlVbmljb2RlT2JqZWN0ICopUHlMaXN0X0dFVF9JVEVNKGxpc3QsIGkpLAotICAgICAgICAgICAgICAgICAgICAgZml4Y2FwaXRhbGl6ZSk7Ci0gICAgICAgIGlmIChpdGVtID09IE5VTEwpCi0gICAgICAgICAgICBnb3RvIG9uRXJyb3I7Ci0gICAgICAgIFB5X0RFQ1JFRihQeUxpc3RfR0VUX0lURU0obGlzdCwgaSkpOwotICAgICAgICBQeUxpc3RfU0VUX0lURU0obGlzdCwgaSwgaXRlbSk7Ci0gICAgfQotCi0gICAgLyogSm9pbiB0aGUgd29yZHMgdG8gZm9ybSBhIG5ldyBzdHJpbmcgKi8KLSAgICBpdGVtID0gUHlVbmljb2RlX0pvaW4oTlVMTCwgbGlzdCk7Ci0KLSAgb25FcnJvcjoKLSAgICBQeV9ERUNSRUYobGlzdCk7Ci0gICAgcmV0dXJuIChQeU9iamVjdCAqKWl0ZW07CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpID09IDApCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CisgICAgcmV0dXJuIGNhc2Vfb3BlcmF0aW9uKHNlbGYsIGRvX2NhcGl0YWxpemUpOwogfQotI2VuZGlmCisKK1B5RG9jX1NUUlZBUihjYXNlZm9sZF9fZG9jX18sCisgICAgICAgICAgICAgIlMuY2FzZWZvbGQoKSAtPiBzdHJcblwKK1xuXAorUmV0dXJuIGEgdmVyc2lvbiBvZiBTIHN1aXRhYmxlIGZvciBjYXNlbGVzcyBjb21wYXJpc29ucy4iKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK3VuaWNvZGVfY2FzZWZvbGQoUHlPYmplY3QgKnNlbGYpCit7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzZWxmKSkKKyAgICAgICAgcmV0dXJuIGFzY2lpX3VwcGVyX29yX2xvd2VyKHNlbGYsIDEpOworICAgIHJldHVybiBjYXNlX29wZXJhdGlvbihzZWxmLCBkb19jYXNlZm9sZCk7Cit9CisKIAogLyogQXJndW1lbnQgY29udmVydGVyLiAgQ29lcmNlcyB0byBhIHNpbmdsZSB1bmljb2RlIGNoYXJhY3RlciAqLwogCiBzdGF0aWMgaW50CiBjb252ZXJ0X3VjKFB5T2JqZWN0ICpvYmosIHZvaWQgKmFkZHIpCiB7Ci0gICAgUHlfVU5JQ09ERSAqZmlsbGNoYXJsb2MgPSAoUHlfVU5JQ09ERSAqKWFkZHI7CisgICAgUHlfVUNTNCAqZmlsbGNoYXJsb2MgPSAoUHlfVUNTNCAqKWFkZHI7CiAgICAgUHlPYmplY3QgKnVuaW9iajsKLSAgICBQeV9VTklDT0RFICp1bmlzdHI7CiAKICAgICB1bmlvYmogPSBQeVVuaWNvZGVfRnJvbU9iamVjdChvYmopOwogICAgIGlmICh1bmlvYmogPT0gTlVMTCkgewpAQCAtNzE3MywxNCArMTA1NzUsMTMgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICJUaGUgZmlsbCBjaGFyYWN0ZXIgY2Fubm90IGJlIGNvbnZlcnRlZCB0byBVbmljb2RlIik7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHVuaW9iaikgIT0gMSkgeworICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmlvYmopICE9IDEpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJUaGUgZmlsbCBjaGFyYWN0ZXIgbXVzdCBiZSBleGFjdGx5IG9uZSBjaGFyYWN0ZXIgbG9uZyIpOwogICAgICAgICBQeV9ERUNSRUYodW5pb2JqKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAgIHVuaXN0ciA9IFB5VW5pY29kZV9BU19VTklDT0RFKHVuaW9iaik7Ci0gICAgKmZpbGxjaGFybG9jID0gdW5pc3RyWzBdOworICAgICpmaWxsY2hhcmxvYyA9IFB5VW5pY29kZV9SRUFEX0NIQVIodW5pb2JqLCAwKTsKICAgICBQeV9ERUNSRUYodW5pb2JqKTsKICAgICByZXR1cm4gMTsKIH0KQEAgLTcxOTIsMTEyICsxMDU5Myw2NCBAQAogZG9uZSB1c2luZyB0aGUgc3BlY2lmaWVkIGZpbGwgY2hhcmFjdGVyIChkZWZhdWx0IGlzIGEgc3BhY2UpIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX2NlbnRlcihQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9jZW50ZXIoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5X3NzaXplX3QgbWFyZywgbGVmdDsKICAgICBQeV9zc2l6ZV90IHdpZHRoOwotICAgIFB5X1VOSUNPREUgZmlsbGNoYXIgPSAnICc7CisgICAgUHlfVUNTNCBmaWxsY2hhciA9ICcgJzsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAibnxPJjpjZW50ZXIiLCAmd2lkdGgsIGNvbnZlcnRfdWMsICZmaWxsY2hhcikpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKHNlbGYtPmxlbmd0aCA+PSB3aWR0aCAmJiBQeVVuaWNvZGVfQ2hlY2tFeGFjdChzZWxmKSkgewotICAgICAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgICAgIHJldHVybiAoUHlPYmplY3QqKSBzZWxmOwotICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIG1hcmcgPSB3aWR0aCAtIHNlbGYtPmxlbmd0aDsKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZikgPj0gd2lkdGgpCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CisKKyAgICBtYXJnID0gd2lkdGggLSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKICAgICBsZWZ0ID0gbWFyZyAvIDIgKyAobWFyZyAmIHdpZHRoICYgMSk7CiAKLSAgICByZXR1cm4gKFB5T2JqZWN0KikgcGFkKHNlbGYsIGxlZnQsIG1hcmcgLSBsZWZ0LCBmaWxsY2hhcik7CisgICAgcmV0dXJuIHBhZChzZWxmLCBsZWZ0LCBtYXJnIC0gbGVmdCwgZmlsbGNoYXIpOwogfQogCi0jaWYgMAotCi0vKiBUaGlzIGNvZGUgc2hvdWxkIGdvIGludG8gc29tZSBmdXR1cmUgVW5pY29kZSBjb2xsYXRpb24gc3VwcG9ydAotICAgbW9kdWxlLiBUaGUgYmFzaWMgY29tcGFyaXNvbiBzaG91bGQgY29tcGFyZSBvcmRpbmFscyBvbiBhIG5haXZlCi0gICBiYXNpcyAodGhpcyBpcyB3aGF0IEphdmEgZG9lcyBhbmQgdGh1cyBKeXRob24gdG9vKS4gKi8KLQotLyogc3BlZWR5IFVURi0xNiBjb2RlIHBvaW50IG9yZGVyIGNvbXBhcmlzb24gKi8KLS8qIGdsZWFuZWQgZnJvbTogKi8KLS8qIGh0dHA6Ly93d3ctNC5pYm0uY29tL3NvZnR3YXJlL2RldmVsb3Blci9saWJyYXJ5L3V0ZjE2Lmh0bWw/ZHd6b25lPXVuaWNvZGUgKi8KLQotc3RhdGljIHNob3J0IHV0ZjE2Rml4dXBbMzJdID0KLXsKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKLSAgICAwLCAwLCAwLCAweDIwMDAsIC0weDgwMCwgLTB4ODAwLCAtMHg4MDAsIC0weDgwMAotfTsKKy8qIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0IHN0cjEgYW5kIHN0cjIgYXJlIHJlYWRpZWQgYnkgdGhlIGNhbGxlci4gKi8KIAogc3RhdGljIGludAotdW5pY29kZV9jb21wYXJlKFB5VW5pY29kZU9iamVjdCAqc3RyMSwgUHlVbmljb2RlT2JqZWN0ICpzdHIyKQordW5pY29kZV9jb21wYXJlKFB5T2JqZWN0ICpzdHIxLCBQeU9iamVjdCAqc3RyMikKIHsKLSAgICBQeV9zc2l6ZV90IGxlbjEsIGxlbjI7CisgICAgaW50IGtpbmQxLCBraW5kMjsKKyAgICB2b2lkICpkYXRhMSwgKmRhdGEyOworICAgIFB5X3NzaXplX3QgbGVuMSwgbGVuMiwgaTsKIAotICAgIFB5X1VOSUNPREUgKnMxID0gc3RyMS0+c3RyOwotICAgIFB5X1VOSUNPREUgKnMyID0gc3RyMi0+c3RyOworICAgIGtpbmQxID0gUHlVbmljb2RlX0tJTkQoc3RyMSk7CisgICAga2luZDIgPSBQeVVuaWNvZGVfS0lORChzdHIyKTsKKyAgICBkYXRhMSA9IFB5VW5pY29kZV9EQVRBKHN0cjEpOworICAgIGRhdGEyID0gUHlVbmljb2RlX0RBVEEoc3RyMik7CisgICAgbGVuMSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cjEpOworICAgIGxlbjIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIyKTsKIAotICAgIGxlbjEgPSBzdHIxLT5sZW5ndGg7Ci0gICAgbGVuMiA9IHN0cjItPmxlbmd0aDsKLQotICAgIHdoaWxlIChsZW4xID4gMCAmJiBsZW4yID4gMCkgewotICAgICAgICBQeV9VTklDT0RFIGMxLCBjMjsKLQotICAgICAgICBjMSA9ICpzMSsrOwotICAgICAgICBjMiA9ICpzMisrOwotCi0gICAgICAgIGlmIChjMSA+ICgxPDwxMSkgKiAyNikKLSAgICAgICAgICAgIGMxICs9IHV0ZjE2Rml4dXBbYzE+PjExXTsKLSAgICAgICAgaWYgKGMyID4gKDE8PDExKSAqIDI2KQotICAgICAgICAgICAgYzIgKz0gdXRmMTZGaXh1cFtjMj4+MTFdOwotICAgICAgICAvKiBub3cgYzEgYW5kIGMyIGFyZSBpbiBVVEYtMzItY29tcGF0aWJsZSBvcmRlciAqLworICAgIGZvciAoaSA9IDA7IGkgPCBsZW4xICYmIGkgPCBsZW4yOyArK2kpIHsKKyAgICAgICAgUHlfVUNTNCBjMSwgYzI7CisgICAgICAgIGMxID0gUHlVbmljb2RlX1JFQUQoa2luZDEsIGRhdGExLCBpKTsKKyAgICAgICAgYzIgPSBQeVVuaWNvZGVfUkVBRChraW5kMiwgZGF0YTIsIGkpOwogCiAgICAgICAgIGlmIChjMSAhPSBjMikKICAgICAgICAgICAgIHJldHVybiAoYzEgPCBjMikgPyAtMSA6IDE7Ci0KLSAgICAgICAgbGVuMS0tOyBsZW4yLS07CiAgICAgfQogCiAgICAgcmV0dXJuIChsZW4xIDwgbGVuMikgPyAtMSA6IChsZW4xICE9IGxlbjIpOwogfQogCi0jZWxzZQotCi1zdGF0aWMgaW50Ci11bmljb2RlX2NvbXBhcmUoUHlVbmljb2RlT2JqZWN0ICpzdHIxLCBQeVVuaWNvZGVPYmplY3QgKnN0cjIpCitpbnQKK1B5VW5pY29kZV9Db21wYXJlKFB5T2JqZWN0ICpsZWZ0LCBQeU9iamVjdCAqcmlnaHQpCiB7Ci0gICAgcmVnaXN0ZXIgUHlfc3NpemVfdCBsZW4xLCBsZW4yOwotCi0gICAgUHlfVU5JQ09ERSAqczEgPSBzdHIxLT5zdHI7Ci0gICAgUHlfVU5JQ09ERSAqczIgPSBzdHIyLT5zdHI7Ci0KLSAgICBsZW4xID0gc3RyMS0+bGVuZ3RoOwotICAgIGxlbjIgPSBzdHIyLT5sZW5ndGg7Ci0KLSAgICB3aGlsZSAobGVuMSA+IDAgJiYgbGVuMiA+IDApIHsKLSAgICAgICAgUHlfVU5JQ09ERSBjMSwgYzI7Ci0KLSAgICAgICAgYzEgPSAqczErKzsKLSAgICAgICAgYzIgPSAqczIrKzsKLQotICAgICAgICBpZiAoYzEgIT0gYzIpCi0gICAgICAgICAgICByZXR1cm4gKGMxIDwgYzIpID8gLTEgOiAxOwotCi0gICAgICAgIGxlbjEtLTsgbGVuMi0tOworICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sobGVmdCkgJiYgUHlVbmljb2RlX0NoZWNrKHJpZ2h0KSkgeworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKGxlZnQpID09IC0xIHx8CisgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRFkocmlnaHQpID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICByZXR1cm4gdW5pY29kZV9jb21wYXJlKGxlZnQsIHJpZ2h0KTsKICAgICB9Ci0KLSAgICByZXR1cm4gKGxlbjEgPCBsZW4yKSA/IC0xIDogKGxlbjEgIT0gbGVuMik7Ci19Ci0KLSNlbmRpZgotCi1pbnQgUHlVbmljb2RlX0NvbXBhcmUoUHlPYmplY3QgKmxlZnQsCi0gICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnJpZ2h0KQotewotICAgIGlmIChQeVVuaWNvZGVfQ2hlY2sobGVmdCkgJiYgUHlVbmljb2RlX0NoZWNrKHJpZ2h0KSkKLSAgICAgICAgcmV0dXJuIHVuaWNvZGVfY29tcGFyZSgoUHlVbmljb2RlT2JqZWN0ICopbGVmdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlVbmljb2RlT2JqZWN0ICopcmlnaHQpOwogICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICJDYW4ndCBjb21wYXJlICUuMTAwcyBhbmQgJS4xMDBzIiwKICAgICAgICAgICAgICAgICAgbGVmdC0+b2JfdHlwZS0+dHBfbmFtZSwKQEAgLTczMDgsMTcgKzEwNjYxLDIzIEBACiBpbnQKIFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKFB5T2JqZWN0KiB1bmksIGNvbnN0IGNoYXIqIHN0cikKIHsKLSAgICBpbnQgaTsKLSAgICBQeV9VTklDT0RFICppZDsKLSAgICBhc3NlcnQoUHlVbmljb2RlX0NoZWNrKHVuaSkpOwotICAgIGlkID0gUHlVbmljb2RlX0FTX1VOSUNPREUodW5pKTsKKyAgICBQeV9zc2l6ZV90IGk7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKyAgICBQeV9VQ1M0IGNocjsKKworICAgIGFzc2VydChfUHlVbmljb2RlX0NIRUNLKHVuaSkpOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodW5pKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh1bmkpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSh1bmkpOwogICAgIC8qIENvbXBhcmUgVW5pY29kZSBzdHJpbmcgYW5kIHNvdXJjZSBjaGFyYWN0ZXIgc2V0IHN0cmluZyAqLwotICAgIGZvciAoaSA9IDA7IGlkW2ldICYmIHN0cltpXTsgaSsrKQotICAgICAgICBpZiAoaWRbaV0gIT0gc3RyW2ldKQotICAgICAgICAgICAgcmV0dXJuICgoaW50KWlkW2ldIDwgKGludClzdHJbaV0pID8gLTEgOiAxOworICAgIGZvciAoaSA9IDA7IChjaHIgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSkgJiYgc3RyW2ldOyBpKyspCisgICAgICAgIGlmIChjaHIgIT0gc3RyW2ldKQorICAgICAgICAgICAgcmV0dXJuIChjaHIgPCAodW5zaWduZWQgY2hhcikoc3RyW2ldKSkgPyAtMSA6IDE7CiAgICAgLyogVGhpcyBjaGVjayBrZWVwcyBQeXRob24gc3RyaW5ncyB0aGF0IGVuZCBpbiAnXDAnIGZyb20gY29tcGFyaW5nIGVxdWFsCiAgICAgIHRvIEMgc3RyaW5ncyBpZGVudGljYWwgdXAgdG8gdGhhdCBwb2ludC4gKi8KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHVuaSkgIT0gaSB8fCBpZFtpXSkKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgodW5pKSAhPSBpIHx8IGNocikKICAgICAgICAgcmV0dXJuIDE7IC8qIHVuaSBpcyBsb25nZXIgKi8KICAgICBpZiAoc3RyW2ldKQogICAgICAgICByZXR1cm4gLTE7IC8qIHN0ciBpcyBsb25nZXIgKi8KQEAgLTczMjksMTYgKzEwNjg4LDE4IEBACiAjZGVmaW5lIFRFU1RfQ09ORChjb25kKSAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgKChjb25kKSA/IFB5X1RydWUgOiBQeV9GYWxzZSkKIAotUHlPYmplY3QgKlB5VW5pY29kZV9SaWNoQ29tcGFyZShQeU9iamVjdCAqbGVmdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnJpZ2h0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgb3ApCitQeU9iamVjdCAqCitQeVVuaWNvZGVfUmljaENvbXBhcmUoUHlPYmplY3QgKmxlZnQsIFB5T2JqZWN0ICpyaWdodCwgaW50IG9wKQogewogICAgIGludCByZXN1bHQ7CiAKICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKGxlZnQpICYmIFB5VW5pY29kZV9DaGVjayhyaWdodCkpIHsKICAgICAgICAgUHlPYmplY3QgKnY7Ci0gICAgICAgIGlmICgoKFB5VW5pY29kZU9iamVjdCAqKSBsZWZ0KS0+bGVuZ3RoICE9Ci0gICAgICAgICAgICAoKFB5VW5pY29kZU9iamVjdCAqKSByaWdodCktPmxlbmd0aCkgeworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKGxlZnQpID09IC0xIHx8CisgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRFkocmlnaHQpID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSChsZWZ0KSAhPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChyaWdodCkgfHwKKyAgICAgICAgICAgIFB5VW5pY29kZV9LSU5EKGxlZnQpICE9IFB5VW5pY29kZV9LSU5EKHJpZ2h0KSkgewogICAgICAgICAgICAgaWYgKG9wID09IFB5X0VRKSB7CiAgICAgICAgICAgICAgICAgUHlfSU5DUkVGKFB5X0ZhbHNlKTsKICAgICAgICAgICAgICAgICByZXR1cm4gUHlfRmFsc2U7CkBAIC03MzUxLDggKzEwNzEyLDcgQEAKICAgICAgICAgaWYgKGxlZnQgPT0gcmlnaHQpCiAgICAgICAgICAgICByZXN1bHQgPSAwOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICByZXN1bHQgPSB1bmljb2RlX2NvbXBhcmUoKFB5VW5pY29kZU9iamVjdCAqKWxlZnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFB5VW5pY29kZU9iamVjdCAqKXJpZ2h0KTsKKyAgICAgICAgICAgIHJlc3VsdCA9IHVuaWNvZGVfY29tcGFyZShsZWZ0LCByaWdodCk7CiAKICAgICAgICAgLyogQ29udmVydCB0aGUgcmV0dXJuIHZhbHVlIHRvIGEgQm9vbGVhbiAqLwogICAgICAgICBzd2l0Y2ggKG9wKSB7CkBAIC03MzgyLDE0ICsxMDc0MiwxNiBAQAogICAgICAgICByZXR1cm4gdjsKICAgICB9CiAKLSAgICBQeV9JTkNSRUYoUHlfTm90SW1wbGVtZW50ZWQpOwotICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICBQeV9SRVRVUk5fTk9USU1QTEVNRU5URUQ7CiB9CiAKLWludCBQeVVuaWNvZGVfQ29udGFpbnMoUHlPYmplY3QgKmNvbnRhaW5lciwKLSAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmVsZW1lbnQpCitpbnQKK1B5VW5pY29kZV9Db250YWlucyhQeU9iamVjdCAqY29udGFpbmVyLCBQeU9iamVjdCAqZWxlbWVudCkKIHsKICAgICBQeU9iamVjdCAqc3RyLCAqc3ViOworICAgIGludCBraW5kMSwga2luZDIsIGtpbmQ7CisgICAgdm9pZCAqYnVmMSwgKmJ1ZjI7CisgICAgUHlfc3NpemVfdCBsZW4xLCBsZW4yOwogICAgIGludCByZXN1bHQ7CiAKICAgICAvKiBDb2VyY2UgdGhlIHR3byBhcmd1bWVudHMgKi8KQEAgLTc0MDYsNTAgKzEwNzY4LDEwOCBAQAogICAgICAgICBQeV9ERUNSRUYoc3ViKTsKICAgICAgICAgcmV0dXJuIC0xOwogICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN1YikgPT0gLTEgfHwgUHlVbmljb2RlX1JFQURZKHN0cikgPT0gLTEpIHsKKyAgICAgICAgUHlfREVDUkVGKHN1Yik7CisgICAgICAgIFB5X0RFQ1JFRihzdHIpOworICAgIH0KIAotICAgIHJlc3VsdCA9IHN0cmluZ2xpYl9jb250YWluc19vYmooc3RyLCBzdWIpOworICAgIGtpbmQxID0gUHlVbmljb2RlX0tJTkQoc3RyKTsKKyAgICBraW5kMiA9IFB5VW5pY29kZV9LSU5EKHN1Yik7CisgICAga2luZCA9IGtpbmQxID4ga2luZDIgPyBraW5kMSA6IGtpbmQyOworICAgIGJ1ZjEgPSBQeVVuaWNvZGVfREFUQShzdHIpOworICAgIGJ1ZjIgPSBQeVVuaWNvZGVfREFUQShzdWIpOworICAgIGlmIChraW5kMSAhPSBraW5kKQorICAgICAgICBidWYxID0gX1B5VW5pY29kZV9Bc0tpbmQoc3RyLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjEpIHsKKyAgICAgICAgUHlfREVDUkVGKHN1Yik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIGJ1ZjIgPSBfUHlVbmljb2RlX0FzS2luZChzdWIsIGtpbmQpOworICAgIGlmICghYnVmMikgeworICAgICAgICBQeV9ERUNSRUYoc3ViKTsKKyAgICAgICAgaWYgKGtpbmQxICE9IGtpbmQpIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgbGVuMSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cik7CisgICAgbGVuMiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN1Yik7CisKKyAgICBzd2l0Y2ggKGtpbmQpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICByZXN1bHQgPSB1Y3MxbGliX2ZpbmQoYnVmMSwgbGVuMSwgYnVmMiwgbGVuMiwgMCkgIT0gLTE7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIHJlc3VsdCA9IHVjczJsaWJfZmluZChidWYxLCBsZW4xLCBidWYyLCBsZW4yLCAwKSAhPSAtMTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgcmVzdWx0ID0gdWNzNGxpYl9maW5kKGJ1ZjEsIGxlbjEsIGJ1ZjIsIGxlbjIsIDApICE9IC0xOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXN1bHQgPSAtMTsKKyAgICAgICAgYXNzZXJ0KDApOworICAgIH0KIAogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIFB5X0RFQ1JFRihzdWIpOwogCisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMik7CisKICAgICByZXR1cm4gcmVzdWx0OwogfQogCiAvKiBDb25jYXQgdG8gc3RyaW5nIG9yIFVuaWNvZGUgb2JqZWN0IGdpdmluZyBhIG5ldyBVbmljb2RlIG9iamVjdC4gKi8KIAotUHlPYmplY3QgKlB5VW5pY29kZV9Db25jYXQoUHlPYmplY3QgKmxlZnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcmlnaHQpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfQ29uY2F0KFB5T2JqZWN0ICpsZWZ0LCBQeU9iamVjdCAqcmlnaHQpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp1ID0gTlVMTCwgKnYgPSBOVUxMLCAqdzsKKyAgICBQeU9iamVjdCAqdSA9IE5VTEwsICp2ID0gTlVMTCwgKnc7CisgICAgUHlfVUNTNCBtYXhjaGFyLCBtYXhjaGFyMjsKKyAgICBQeV9zc2l6ZV90IHVfbGVuLCB2X2xlbiwgbmV3X2xlbjsKIAogICAgIC8qIENvZXJjZSB0aGUgdHdvIGFyZ3VtZW50cyAqLwotICAgIHUgPSAoUHlVbmljb2RlT2JqZWN0ICopUHlVbmljb2RlX0Zyb21PYmplY3QobGVmdCk7CisgICAgdSA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KGxlZnQpOwogICAgIGlmICh1ID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICB2ID0gKFB5VW5pY29kZU9iamVjdCAqKVB5VW5pY29kZV9Gcm9tT2JqZWN0KHJpZ2h0KTsKKyAgICB2ID0gUHlVbmljb2RlX0Zyb21PYmplY3QocmlnaHQpOwogICAgIGlmICh2ID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKIAogICAgIC8qIFNob3J0Y3V0cyAqLwogICAgIGlmICh2ID09IHVuaWNvZGVfZW1wdHkpIHsKICAgICAgICAgUHlfREVDUkVGKHYpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdTsKKyAgICAgICAgcmV0dXJuIHU7CiAgICAgfQogICAgIGlmICh1ID09IHVuaWNvZGVfZW1wdHkpIHsKICAgICAgICAgUHlfREVDUkVGKHUpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdjsKKyAgICAgICAgcmV0dXJuIHY7CiAgICAgfQogCisgICAgdV9sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1KTsKKyAgICB2X2xlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHYpOworICAgIGlmICh1X2xlbiA+IFBZX1NTSVpFX1RfTUFYIC0gdl9sZW4pIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAic3RyaW5ncyBhcmUgdG9vIGxhcmdlIHRvIGNvbmNhdCIpOworICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgfQorICAgIG5ld19sZW4gPSB1X2xlbiArIHZfbGVuOworCisgICAgbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRSh1KTsKKyAgICBtYXhjaGFyMiA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRSh2KTsKKyAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIG1heGNoYXIyKTsKKwogICAgIC8qIENvbmNhdCB0aGUgdHdvIFVuaWNvZGUgc3RyaW5ncyAqLwotICAgIHcgPSBfUHlVbmljb2RlX05ldyh1LT5sZW5ndGggKyB2LT5sZW5ndGgpOworICAgIHcgPSBQeVVuaWNvZGVfTmV3KG5ld19sZW4sIG1heGNoYXIpOwogICAgIGlmICh3ID09IE5VTEwpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICBQeV9VTklDT0RFX0NPUFkody0+c3RyLCB1LT5zdHIsIHUtPmxlbmd0aCk7Ci0gICAgUHlfVU5JQ09ERV9DT1BZKHctPnN0ciArIHUtPmxlbmd0aCwgdi0+c3RyLCB2LT5sZW5ndGgpOwotCisgICAgY29weV9jaGFyYWN0ZXJzKHcsIDAsIHUsIDAsIHVfbGVuKTsKKyAgICBjb3B5X2NoYXJhY3RlcnModywgdV9sZW4sIHYsIDAsIHZfbGVuKTsKICAgICBQeV9ERUNSRUYodSk7CiAgICAgUHlfREVDUkVGKHYpOwotICAgIHJldHVybiAoUHlPYmplY3QgKil3OworICAgIGFzc2VydChfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kodywgMSkpOworICAgIHJldHVybiB3OwogCiAgIG9uRXJyb3I6CiAgICAgUHlfWERFQ1JFRih1KTsKQEAgLTc0NTgsMTkgKzEwODc4LDg5IEBACiB9CiAKIHZvaWQKLVB5VW5pY29kZV9BcHBlbmQoUHlPYmplY3QgKipwbGVmdCwgUHlPYmplY3QgKnJpZ2h0KQorUHlVbmljb2RlX0FwcGVuZChQeU9iamVjdCAqKnBfbGVmdCwgUHlPYmplY3QgKnJpZ2h0KQogewotICAgIFB5T2JqZWN0ICpuZXc7Ci0gICAgaWYgKCpwbGVmdCA9PSBOVUxMKQotICAgICAgICByZXR1cm47Ci0gICAgaWYgKHJpZ2h0ID09IE5VTEwgfHwgIVB5VW5pY29kZV9DaGVjaygqcGxlZnQpKSB7Ci0gICAgICAgIFB5X0RFQ1JFRigqcGxlZnQpOwotICAgICAgICAqcGxlZnQgPSBOVUxMOworICAgIFB5T2JqZWN0ICpsZWZ0LCAqcmVzOworICAgIFB5X1VDUzQgbWF4Y2hhciwgbWF4Y2hhcjI7CisgICAgUHlfc3NpemVfdCBsZWZ0X2xlbiwgcmlnaHRfbGVuLCBuZXdfbGVuOworCisgICAgaWYgKHBfbGVmdCA9PSBOVUxMKSB7CisgICAgICAgIGlmICghUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwogICAgICAgICByZXR1cm47CiAgICAgfQotICAgIG5ldyA9IFB5VW5pY29kZV9Db25jYXQoKnBsZWZ0LCByaWdodCk7Ci0gICAgUHlfREVDUkVGKCpwbGVmdCk7Ci0gICAgKnBsZWZ0ID0gbmV3OworICAgIGxlZnQgPSAqcF9sZWZ0OworICAgIGlmIChyaWdodCA9PSBOVUxMIHx8ICFQeVVuaWNvZGVfQ2hlY2sobGVmdCkpIHsKKyAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgfQorCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShsZWZ0KSA9PSAtMSkKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHJpZ2h0KSA9PSAtMSkKKyAgICAgICAgZ290byBlcnJvcjsKKworICAgIC8qIFNob3J0Y3V0cyAqLworICAgIGlmIChsZWZ0ID09IHVuaWNvZGVfZW1wdHkpIHsKKyAgICAgICAgUHlfREVDUkVGKGxlZnQpOworICAgICAgICBQeV9JTkNSRUYocmlnaHQpOworICAgICAgICAqcF9sZWZ0ID0gcmlnaHQ7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgaWYgKHJpZ2h0ID09IHVuaWNvZGVfZW1wdHkpCisgICAgICAgIHJldHVybjsKKworICAgIGxlZnRfbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgobGVmdCk7CisgICAgcmlnaHRfbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgocmlnaHQpOworICAgIGlmIChsZWZ0X2xlbiA+IFBZX1NTSVpFX1RfTUFYIC0gcmlnaHRfbGVuKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgInN0cmluZ3MgYXJlIHRvbyBsYXJnZSB0byBjb25jYXQiKTsKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICB9CisgICAgbmV3X2xlbiA9IGxlZnRfbGVuICsgcmlnaHRfbGVuOworCisgICAgaWYgKHVuaWNvZGVfbW9kaWZpYWJsZShsZWZ0KQorICAgICAgICAmJiBQeVVuaWNvZGVfQ2hlY2tFeGFjdChyaWdodCkKKyAgICAgICAgJiYgUHlVbmljb2RlX0tJTkQocmlnaHQpIDw9IFB5VW5pY29kZV9LSU5EKGxlZnQpCisgICAgICAgIC8qIERvbid0IHJlc2l6ZSBmb3IgYXNjaWkgKz0gbGF0aW4xLiBDb252ZXJ0IGFzY2lpIHRvIGxhdGluMSByZXF1aXJlcworICAgICAgICAgICB0byBjaGFuZ2UgdGhlIHN0cnVjdHVyZSBzaXplLCBidXQgY2hhcmFjdGVycyBhcmUgc3RvcmVkIGp1c3QgYWZ0ZXIKKyAgICAgICAgICAgdGhlIHN0cnVjdHVyZSwgYW5kIHNvIGl0IHJlcXVpcmVzIHRvIG1vdmUgYWxsIGNoYXJhY3RlcnMgd2hpY2ggaXMKKyAgICAgICAgICAgbm90IHNvIGRpZmZlcmVudCB0aGFuIGR1cGxpY2F0aW5nIHRoZSBzdHJpbmcuICovCisgICAgICAgICYmICEoUHlVbmljb2RlX0lTX0FTQ0lJKGxlZnQpICYmICFQeVVuaWNvZGVfSVNfQVNDSUkocmlnaHQpKSkKKyAgICB7CisgICAgICAgIC8qIGFwcGVuZCBpbnBsYWNlICovCisgICAgICAgIGlmICh1bmljb2RlX3Jlc2l6ZShwX2xlZnQsIG5ld19sZW4pICE9IDApIHsKKyAgICAgICAgICAgIC8qIFhYWCBpZiBfUHlVbmljb2RlX1Jlc2l6ZSgpIGZhaWxzLCAnbGVmdCcgaGFzIGJlZW4KKyAgICAgICAgICAgICAqIGRlYWxsb2NhdGVkIHNvIGl0IGNhbm5vdCBiZSBwdXQgYmFjayBpbnRvCisgICAgICAgICAgICAgKiAndmFyaWFibGUnLiAgVGhlIE1lbW9yeUVycm9yIGlzIHJhaXNlZCB3aGVuIHRoZXJlCisgICAgICAgICAgICAgKiBpcyBubyB2YWx1ZSBpbiAndmFyaWFibGUnLCB3aGljaCBtaWdodCAodmVyeQorICAgICAgICAgICAgICogcmVtb3RlbHkpIGJlIGEgY2F1c2Ugb2YgaW5jb21wYXRpYmlsaXRpZXMuCisgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIH0KKyAgICAgICAgLyogY29weSAncmlnaHQnIGludG8gdGhlIG5ld2x5IGFsbG9jYXRlZCBhcmVhIG9mICdsZWZ0JyAqLworICAgICAgICBjb3B5X2NoYXJhY3RlcnMoKnBfbGVmdCwgbGVmdF9sZW4sIHJpZ2h0LCAwLCByaWdodF9sZW4pOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShsZWZ0KTsKKyAgICAgICAgbWF4Y2hhcjIgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUocmlnaHQpOworICAgICAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIG1heGNoYXIyKTsKKworICAgICAgICAvKiBDb25jYXQgdGhlIHR3byBVbmljb2RlIHN0cmluZ3MgKi8KKyAgICAgICAgcmVzID0gUHlVbmljb2RlX05ldyhuZXdfbGVuLCBtYXhjaGFyKTsKKyAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgY29weV9jaGFyYWN0ZXJzKHJlcywgMCwgbGVmdCwgMCwgbGVmdF9sZW4pOworICAgICAgICBjb3B5X2NoYXJhY3RlcnMocmVzLCBsZWZ0X2xlbiwgcmlnaHQsIDAsIHJpZ2h0X2xlbik7CisgICAgICAgIFB5X0RFQ1JFRihsZWZ0KTsKKyAgICAgICAgKnBfbGVmdCA9IHJlczsKKyAgICB9CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSgqcF9sZWZ0LCAxKSk7CisgICAgcmV0dXJuOworCitlcnJvcjoKKyAgICBQeV9DTEVBUigqcF9sZWZ0KTsKIH0KIAogdm9pZApAQCAtNzQ4OCwyMyArMTA5NzgsNzEgQEAKIGludGVycHJldGVkIGFzIGluIHNsaWNlIG5vdGF0aW9uLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9jb3VudChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9jb3VudChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpzdWJzdHJpbmc7CisgICAgUHlPYmplY3QgKnN1YnN0cmluZzsKICAgICBQeV9zc2l6ZV90IHN0YXJ0ID0gMDsKICAgICBQeV9zc2l6ZV90IGVuZCA9IFBZX1NTSVpFX1RfTUFYOwogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgaW50IGtpbmQxLCBraW5kMiwga2luZDsKKyAgICB2b2lkICpidWYxLCAqYnVmMjsKKyAgICBQeV9zc2l6ZV90IGxlbjEsIGxlbjIsIGlyZXN1bHQ7CiAKICAgICBpZiAoIXN0cmluZ2xpYl9wYXJzZV9hcmdzX2ZpbmRzX3VuaWNvZGUoImNvdW50IiwgYXJncywgJnN1YnN0cmluZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0LCAmZW5kKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBBREpVU1RfSU5ESUNFUyhzdGFydCwgZW5kLCBzZWxmLT5sZW5ndGgpOwotICAgIHJlc3VsdCA9IFB5TG9uZ19Gcm9tU3NpemVfdCgKLSAgICAgICAgc3RyaW5nbGliX2NvdW50KHNlbGYtPnN0ciArIHN0YXJ0LCBlbmQgLSBzdGFydCwKLSAgICAgICAgICAgICAgICAgICAgICAgIHN1YnN0cmluZy0+c3RyLCBzdWJzdHJpbmctPmxlbmd0aCwKLSAgICAgICAgICAgICAgICAgICAgICAgIFBZX1NTSVpFX1RfTUFYKQotICAgICAgICApOworICAgIGtpbmQxID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAga2luZDIgPSBQeVVuaWNvZGVfS0lORChzdWJzdHJpbmcpOworICAgIGtpbmQgPSBraW5kMSA+IGtpbmQyID8ga2luZDEgOiBraW5kMjsKKyAgICBidWYxID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgYnVmMiA9IFB5VW5pY29kZV9EQVRBKHN1YnN0cmluZyk7CisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIGJ1ZjEgPSBfUHlVbmljb2RlX0FzS2luZChzZWxmLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjEpIHsKKyAgICAgICAgUHlfREVDUkVGKHN1YnN0cmluZyk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgYnVmMiA9IF9QeVVuaWNvZGVfQXNLaW5kKHN1YnN0cmluZywga2luZCk7CisgICAgaWYgKCFidWYyKSB7CisgICAgICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOworICAgICAgICBpZiAoa2luZDEgIT0ga2luZCkgUHlNZW1fRnJlZShidWYxKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGxlbjEgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKKyAgICBsZW4yID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3Vic3RyaW5nKTsKKworICAgIEFESlVTVF9JTkRJQ0VTKHN0YXJ0LCBlbmQsIGxlbjEpOworICAgIHN3aXRjaCAoa2luZCkgeworICAgIGNhc2UgUHlVbmljb2RlXzFCWVRFX0tJTkQ6CisgICAgICAgIGlyZXN1bHQgPSB1Y3MxbGliX2NvdW50KAorICAgICAgICAgICAgKChQeV9VQ1MxKilidWYxKSArIHN0YXJ0LCBlbmQgLSBzdGFydCwKKyAgICAgICAgICAgIGJ1ZjIsIGxlbjIsIFBZX1NTSVpFX1RfTUFYCisgICAgICAgICAgICApOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV8yQllURV9LSU5EOgorICAgICAgICBpcmVzdWx0ID0gdWNzMmxpYl9jb3VudCgKKyAgICAgICAgICAgICgoUHlfVUNTMiopYnVmMSkgKyBzdGFydCwgZW5kIC0gc3RhcnQsCisgICAgICAgICAgICBidWYyLCBsZW4yLCBQWV9TU0laRV9UX01BWAorICAgICAgICAgICAgKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgaXJlc3VsdCA9IHVjczRsaWJfY291bnQoCisgICAgICAgICAgICAoKFB5X1VDUzQqKWJ1ZjEpICsgc3RhcnQsIGVuZCAtIHN0YXJ0LAorICAgICAgICAgICAgYnVmMiwgbGVuMiwgUFlfU1NJWkVfVF9NQVgKKyAgICAgICAgICAgICk7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIGFzc2VydCgwKTsgaXJlc3VsdCA9IDA7CisgICAgfQorCisgICAgcmVzdWx0ID0gUHlMb25nX0Zyb21Tc2l6ZV90KGlyZXN1bHQpOworCisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMik7CiAKICAgICBQeV9ERUNSRUYoc3Vic3RyaW5nKTsKIApAQCAtNzUyMiw3ICsxMTA2MCw3IEBACiBjb2RlY3MucmVnaXN0ZXJfZXJyb3IgdGhhdCBjYW4gaGFuZGxlIFVuaWNvZGVFbmNvZGVFcnJvcnMuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX2VuY29kZShQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQordW5pY29kZV9lbmNvZGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dhcmdzKQogewogICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsiZW5jb2RpbmciLCAiZXJyb3JzIiwgMH07CiAgICAgY2hhciAqZW5jb2RpbmcgPSBOVUxMOwpAQCAtNzUzMSw3ICsxMTA2OSw3IEBACiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dhcmdzLCAifHNzOmVuY29kZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmZW5jb2RpbmcsICZlcnJvcnMpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXR1cm4gUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZygoUHlPYmplY3QgKilzZWxmLCBlbmNvZGluZywgZXJyb3JzKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZyhzZWxmLCBlbmNvZGluZywgZXJyb3JzKTsKIH0KIAogUHlEb2NfU1RSVkFSKGV4cGFuZHRhYnNfX2RvY19fLApAQCAtNzU0MSw4MiArMTEwNzksODQgQEAKIElmIHRhYnNpemUgaXMgbm90IGdpdmVuLCBhIHRhYiBzaXplIG9mIDggY2hhcmFjdGVycyBpcyBhc3N1bWVkLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX2V4cGFuZHRhYnMoUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3VuaWNvZGVfZXhwYW5kdGFicyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlfVU5JQ09ERSAqZTsKLSAgICBQeV9VTklDT0RFICpwOwotICAgIFB5X1VOSUNPREUgKnE7Ci0gICAgUHlfVU5JQ09ERSAqcWU7Ci0gICAgUHlfc3NpemVfdCBpLCBqLCBpbmNyOwotICAgIFB5VW5pY29kZU9iamVjdCAqdTsKKyAgICBQeV9zc2l6ZV90IGksIGosIGxpbmVfcG9zLCBzcmNfbGVuLCBpbmNyOworICAgIFB5X1VDUzQgY2g7CisgICAgUHlPYmplY3QgKnU7CisgICAgdm9pZCAqc3JjX2RhdGEsICpkZXN0X2RhdGE7CiAgICAgaW50IHRhYnNpemUgPSA4OworICAgIGludCBraW5kOworICAgIGludCBmb3VuZDsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifGk6ZXhwYW5kdGFicyIsICZ0YWJzaXplKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIC8qIEZpcnN0IHBhc3M6IGRldGVybWluZSBzaXplIG9mIG91dHB1dCBzdHJpbmcgKi8KLSAgICBpID0gMDsgLyogY2hhcnMgdXAgdG8gYW5kIGluY2x1ZGluZyBtb3N0IHJlY2VudCBcbiBvciBcciAqLwotICAgIGogPSAwOyAvKiBjaGFycyBzaW5jZSBtb3N0IHJlY2VudCBcbiBvciBcciAodXNlIGluIHRhYiBjYWxjdWxhdGlvbnMpICovCi0gICAgZSA9IHNlbGYtPnN0ciArIHNlbGYtPmxlbmd0aDsgLyogZW5kIG9mIGlucHV0ICovCi0gICAgZm9yIChwID0gc2VsZi0+c3RyOyBwIDwgZTsgcCsrKQotICAgICAgICBpZiAoKnAgPT0gJ1x0JykgeworICAgIHNyY19sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKKyAgICBpID0gaiA9IGxpbmVfcG9zID0gMDsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAgc3JjX2RhdGEgPSBQeVVuaWNvZGVfREFUQShzZWxmKTsKKyAgICBmb3VuZCA9IDA7CisgICAgZm9yICg7IGkgPCBzcmNfbGVuOyBpKyspIHsKKyAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBzcmNfZGF0YSwgaSk7CisgICAgICAgIGlmIChjaCA9PSAnXHQnKSB7CisgICAgICAgICAgICBmb3VuZCA9IDE7CiAgICAgICAgICAgICBpZiAodGFic2l6ZSA+IDApIHsKLSAgICAgICAgICAgICAgICBpbmNyID0gdGFic2l6ZSAtIChqICUgdGFic2l6ZSk7IC8qIGNhbm5vdCBvdmVyZmxvdyAqLworICAgICAgICAgICAgICAgIGluY3IgPSB0YWJzaXplIC0gKGxpbmVfcG9zICUgdGFic2l6ZSk7IC8qIGNhbm5vdCBvdmVyZmxvdyAqLwogICAgICAgICAgICAgICAgIGlmIChqID4gUFlfU1NJWkVfVF9NQVggLSBpbmNyKQotICAgICAgICAgICAgICAgICAgICBnb3RvIG92ZXJmbG93MTsKKyAgICAgICAgICAgICAgICAgICAgZ290byBvdmVyZmxvdzsKKyAgICAgICAgICAgICAgICBsaW5lX3BvcyArPSBpbmNyOwogICAgICAgICAgICAgICAgIGogKz0gaW5jcjsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIGlmIChqID4gUFlfU1NJWkVfVF9NQVggLSAxKQotICAgICAgICAgICAgICAgIGdvdG8gb3ZlcmZsb3cxOworICAgICAgICAgICAgICAgIGdvdG8gb3ZlcmZsb3c7CisgICAgICAgICAgICBsaW5lX3BvcysrOwogICAgICAgICAgICAgaisrOwotICAgICAgICAgICAgaWYgKCpwID09ICdcbicgfHwgKnAgPT0gJ1xyJykgewotICAgICAgICAgICAgICAgIGlmIChpID4gUFlfU1NJWkVfVF9NQVggLSBqKQotICAgICAgICAgICAgICAgICAgICBnb3RvIG92ZXJmbG93MTsKLSAgICAgICAgICAgICAgICBpICs9IGo7Ci0gICAgICAgICAgICAgICAgaiA9IDA7Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAoY2ggPT0gJ1xuJyB8fCBjaCA9PSAnXHInKQorICAgICAgICAgICAgICAgIGxpbmVfcG9zID0gMDsKICAgICAgICAgfQotCi0gICAgaWYgKGkgPiBQWV9TU0laRV9UX01BWCAtIGopCi0gICAgICAgIGdvdG8gb3ZlcmZsb3cxOworICAgIH0KKyAgICBpZiAoIWZvdW5kKQorICAgICAgICByZXR1cm4gdW5pY29kZV9yZXN1bHRfdW5jaGFuZ2VkKHNlbGYpOwogCiAgICAgLyogU2Vjb25kIHBhc3M6IGNyZWF0ZSBvdXRwdXQgc3RyaW5nIGFuZCBmaWxsIGl0ICovCi0gICAgdSA9IF9QeVVuaWNvZGVfTmV3KGkgKyBqKTsKKyAgICB1ID0gUHlVbmljb2RlX05ldyhqLCBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUoc2VsZikpOwogICAgIGlmICghdSkKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgZGVzdF9kYXRhID0gUHlVbmljb2RlX0RBVEEodSk7CiAKLSAgICBqID0gMDsgLyogc2FtZSBhcyBpbiBmaXJzdCBwYXNzICovCi0gICAgcSA9IHUtPnN0cjsgLyogbmV4dCBvdXRwdXQgY2hhciAqLwotICAgIHFlID0gdS0+c3RyICsgdS0+bGVuZ3RoOyAvKiBlbmQgb2Ygb3V0cHV0ICovCisgICAgaSA9IGogPSBsaW5lX3BvcyA9IDA7CiAKLSAgICBmb3IgKHAgPSBzZWxmLT5zdHI7IHAgPCBlOyBwKyspCi0gICAgICAgIGlmICgqcCA9PSAnXHQnKSB7CisgICAgZm9yICg7IGkgPCBzcmNfbGVuOyBpKyspIHsKKyAgICAgICAgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBzcmNfZGF0YSwgaSk7CisgICAgICAgIGlmIChjaCA9PSAnXHQnKSB7CiAgICAgICAgICAgICBpZiAodGFic2l6ZSA+IDApIHsKLSAgICAgICAgICAgICAgICBpID0gdGFic2l6ZSAtIChqICUgdGFic2l6ZSk7Ci0gICAgICAgICAgICAgICAgaiArPSBpOwotICAgICAgICAgICAgICAgIHdoaWxlIChpLS0pIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKHEgPj0gcWUpCi0gICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG92ZXJmbG93MjsKLSAgICAgICAgICAgICAgICAgICAgKnErKyA9ICcgJzsKKyAgICAgICAgICAgICAgICBpbmNyID0gdGFic2l6ZSAtIChsaW5lX3BvcyAlIHRhYnNpemUpOworICAgICAgICAgICAgICAgIGxpbmVfcG9zICs9IGluY3I7CisgICAgICAgICAgICAgICAgd2hpbGUgKGluY3ItLSkgeworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGVzdF9kYXRhLCBqLCAnICcpOworICAgICAgICAgICAgICAgICAgICBqKys7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgaWYgKHEgPj0gcWUpCi0gICAgICAgICAgICAgICAgZ290byBvdmVyZmxvdzI7Ci0gICAgICAgICAgICAqcSsrID0gKnA7CisgICAgICAgICAgICBsaW5lX3BvcysrOworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRlc3RfZGF0YSwgaiwgY2gpOwogICAgICAgICAgICAgaisrOwotICAgICAgICAgICAgaWYgKCpwID09ICdcbicgfHwgKnAgPT0gJ1xyJykKLSAgICAgICAgICAgICAgICBqID0gMDsKKyAgICAgICAgICAgIGlmIChjaCA9PSAnXG4nIHx8IGNoID09ICdccicpCisgICAgICAgICAgICAgICAgbGluZV9wb3MgPSAwOwogICAgICAgICB9CisgICAgfQorICAgIGFzc2VydCAoaiA9PSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1KSk7CisgICAgcmV0dXJuIHVuaWNvZGVfcmVzdWx0KHUpOwogCi0gICAgcmV0dXJuIChQeU9iamVjdCopIHU7Ci0KLSAgb3ZlcmZsb3cyOgotICAgIFB5X0RFQ1JFRih1KTsKLSAgb3ZlcmZsb3cxOgorICBvdmVyZmxvdzoKICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwgIm5ldyBzdHJpbmcgaXMgdG9vIGxvbmciKTsKICAgICByZXR1cm4gTlVMTDsKIH0KQEAgLTc2MzEsOSArMTExNzEsOSBAQAogUmV0dXJuIC0xIG9uIGZhaWx1cmUuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX2ZpbmQoUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3VuaWNvZGVfZmluZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpzdWJzdHJpbmc7CisgICAgUHlPYmplY3QgKnN1YnN0cmluZzsKICAgICBQeV9zc2l6ZV90IHN0YXJ0OwogICAgIFB5X3NzaXplX3QgZW5kOwogICAgIFB5X3NzaXplX3QgcmVzdWx0OwpAQCAtNzY0Miw1MCArMTExODIsNzggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0LCAmZW5kKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZXN1bHQgPSBzdHJpbmdsaWJfZmluZF9zbGljZSgKLSAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZiksIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSwKLSAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc3Vic3RyaW5nKSwgUHlVbmljb2RlX0dFVF9TSVpFKHN1YnN0cmluZyksCi0gICAgICAgIHN0YXJ0LCBlbmQKLSAgICAgICAgKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN1YnN0cmluZykgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcmVzdWx0ID0gYW55X2ZpbmRfc2xpY2UoMSwgc2VsZiwgc3Vic3RyaW5nLCBzdGFydCwgZW5kKTsKIAogICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOwogCisgICAgaWYgKHJlc3VsdCA9PSAtMikKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICByZXR1cm4gUHlMb25nX0Zyb21Tc2l6ZV90KHJlc3VsdCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX2dldGl0ZW0oUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeV9zc2l6ZV90IGluZGV4KQordW5pY29kZV9nZXRpdGVtKFB5T2JqZWN0ICpzZWxmLCBQeV9zc2l6ZV90IGluZGV4KQogewotICAgIGlmIChpbmRleCA8IDAgfHwgaW5kZXggPj0gc2VsZi0+bGVuZ3RoKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JbmRleEVycm9yLCAic3RyaW5nIGluZGV4IG91dCBvZiByYW5nZSIpOworICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUmVhZENoYXIoc2VsZiwgaW5kZXgpOworICAgIGlmIChjaCA9PSAoUHlfVUNTNCktMSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgfQotCi0gICAgcmV0dXJuIChQeU9iamVjdCopIFB5VW5pY29kZV9Gcm9tVW5pY29kZSgmc2VsZi0+c3RyW2luZGV4XSwgMSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tT3JkaW5hbChjaCk7CiB9CiAKIC8qIEJlbGlldmUgaXQgb3Igbm90LCB0aGlzIHByb2R1Y2VzIHRoZSBzYW1lIHZhbHVlIGZvciBBU0NJSSBzdHJpbmdzCi0gICBhcyBzdHJpbmdfaGFzaCgpLiAqLworICAgYXMgYnl0ZXNfaGFzaCgpLiAqLwogc3RhdGljIFB5X2hhc2hfdAotdW5pY29kZV9oYXNoKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaGFzaChQeU9iamVjdCAqc2VsZikKIHsKICAgICBQeV9zc2l6ZV90IGxlbjsKLSAgICBQeV9VTklDT0RFICpwOwotICAgIFB5X2hhc2hfdCB4OworICAgIFB5X3VoYXNoX3QgeDsKIAotICAgIGlmIChzZWxmLT5oYXNoICE9IC0xKQotICAgICAgICByZXR1cm4gc2VsZi0+aGFzaDsKLSAgICBsZW4gPSBQeV9TSVpFKHNlbGYpOwotICAgIHAgPSBzZWxmLT5zdHI7Ci0gICAgeCA9ICpwIDw8IDc7Ci0gICAgd2hpbGUgKC0tbGVuID49IDApCi0gICAgICAgIHggPSAoX1B5SEFTSF9NVUxUSVBMSUVSKngpIF4gKnArKzsKLSAgICB4IF49IFB5X1NJWkUoc2VsZik7CisgICAgaWYgKF9QeVVuaWNvZGVfSEFTSChzZWxmKSAhPSAtMSkKKyAgICAgICAgcmV0dXJuIF9QeVVuaWNvZGVfSEFTSChzZWxmKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisKKyAgICAvKiBUaGUgaGFzaCBmdW5jdGlvbiBhcyBhIG1hY3JvLCBnZXRzIGV4cGFuZGVkIHRocmVlIHRpbWVzIGJlbG93LiAqLworI2RlZmluZSBIQVNIKFApIFwKKyAgICB4ID0gKFB5X3VoYXNoX3QpKlAgPDwgNzsgXAorICAgIHdoaWxlICgtLWxlbiA+PSAwKSBcCisgICAgICAgIHggPSAoX1B5SEFTSF9NVUxUSVBMSUVSKngpIF4gKFB5X3VoYXNoX3QpKlArKzsKKworICAgIHN3aXRjaCAoUHlVbmljb2RlX0tJTkQoc2VsZikpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOiB7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmMgPSBQeVVuaWNvZGVfMUJZVEVfREFUQShzZWxmKTsKKyAgICAgICAgSEFTSChjKTsKKyAgICAgICAgYnJlYWs7CisgICAgfQorICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6IHsKKyAgICAgICAgY29uc3QgUHlfVUNTMiAqcyA9IFB5VW5pY29kZV8yQllURV9EQVRBKHNlbGYpOworICAgICAgICBIQVNIKHMpOworICAgICAgICBicmVhazsKKyAgICB9CisgICAgZGVmYXVsdDogeworICAgICAgICBQeV9VQ1M0ICpsOworICAgICAgICBhc3NlcnQoUHlVbmljb2RlX0tJTkQoc2VsZikgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQgJiYKKyAgICAgICAgICAgICAgICJJbXBvc3NpYmxlIHN3aXRjaCBjYXNlIGluIHVuaWNvZGVfaGFzaCIpOworICAgICAgICBsID0gUHlVbmljb2RlXzRCWVRFX0RBVEEoc2VsZik7CisgICAgICAgIEhBU0gobCk7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICB9CisgICAgeCBePSAoUHlfdWhhc2hfdClQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKKwogICAgIGlmICh4ID09IC0xKQogICAgICAgICB4ID0gLTI7Ci0gICAgc2VsZi0+aGFzaCA9IHg7CisgICAgX1B5VW5pY29kZV9IQVNIKHNlbGYpID0geDsKICAgICByZXR1cm4geDsKIH0KKyN1bmRlZiBIQVNICiAKIFB5RG9jX1NUUlZBUihpbmRleF9fZG9jX18sCiAgICAgICAgICAgICAgIlMuaW5kZXgoc3ViWywgc3RhcnRbLCBlbmRdXSkgLT4gaW50XG5cCkBAIC03NjkzLDEwICsxMTI2MSwxMCBAQAogTGlrZSBTLmZpbmQoKSBidXQgcmFpc2UgVmFsdWVFcnJvciB3aGVuIHRoZSBzdWJzdHJpbmcgaXMgbm90IGZvdW5kLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9pbmRleChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9pbmRleChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlfc3NpemVfdCByZXN1bHQ7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpzdWJzdHJpbmc7CisgICAgUHlPYmplY3QgKnN1YnN0cmluZzsKICAgICBQeV9zc2l6ZV90IHN0YXJ0OwogICAgIFB5X3NzaXplX3QgZW5kOwogCkBAIC03NzA0LDE0ICsxMTI3MiwxOCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnQsICZlbmQpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJlc3VsdCA9IHN0cmluZ2xpYl9maW5kX3NsaWNlKAotICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKSwgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpLAotICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdWJzdHJpbmcpLCBQeVVuaWNvZGVfR0VUX1NJWkUoc3Vic3RyaW5nKSwKLSAgICAgICAgc3RhcnQsIGVuZAotICAgICAgICApOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3Vic3RyaW5nKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXN1bHQgPSBhbnlfZmluZF9zbGljZSgxLCBzZWxmLCBzdWJzdHJpbmcsIHN0YXJ0LCBlbmQpOwogCiAgICAgUHlfREVDUkVGKHN1YnN0cmluZyk7CiAKKyAgICBpZiAocmVzdWx0ID09IC0yKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmIChyZXN1bHQgPCAwKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAic3Vic3RyaW5nIG5vdCBmb3VuZCIpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTc3MjcsMjQgKzExMjk5LDMxIEBACiBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyIGluIFMsIEZhbHNlIG90aGVyd2lzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9pc2xvd2VyKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaXNsb3dlcihQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZik7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBQeV9zc2l6ZV90IGksIGxlbmd0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogICAgIGludCBjYXNlZDsKIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisKICAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxKQotICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKFB5X1VOSUNPREVfSVNMT1dFUigqcCkpOworICAgIGlmIChsZW5ndGggPT0gMSkKKyAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygKKyAgICAgICAgICAgIFB5X1VOSUNPREVfSVNMT1dFUihQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCAwKSkpOwogCiAgICAgLyogU3BlY2lhbCBjYXNlIGZvciBlbXB0eSBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAwKQorICAgIGlmIChsZW5ndGggPT0gMCkKICAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygwKTsKIAotICAgIGUgPSBwICsgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpOwogICAgIGNhc2VkID0gMDsKLSAgICB3aGlsZSAocCA8IGUpIHsKLSAgICAgICAgY29uc3QgUHlfVUNTNCBjaCA9IF9QeV9VTklDT0RFX05FWFQocCwgZSk7CisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIGNvbnN0IFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKTsKIAogICAgICAgICBpZiAoUHlfVU5JQ09ERV9JU1VQUEVSKGNoKSB8fCBQeV9VTklDT0RFX0lTVElUTEUoY2gpKQogICAgICAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygwKTsKQEAgLTc3NjEsMjQgKzExMzQwLDMxIEBACiBhdCBsZWFzdCBvbmUgY2FzZWQgY2hhcmFjdGVyIGluIFMsIEZhbHNlIG90aGVyd2lzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9pc3VwcGVyKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaXN1cHBlcihQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZik7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBQeV9zc2l6ZV90IGksIGxlbmd0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogICAgIGludCBjYXNlZDsKIAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisKICAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxKQotICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKFB5X1VOSUNPREVfSVNVUFBFUigqcCkgIT0gMCk7CisgICAgaWYgKGxlbmd0aCA9PSAxKQorICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKAorICAgICAgICAgICAgUHlfVU5JQ09ERV9JU1VQUEVSKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIDApKSAhPSAwKTsKIAogICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgZW1wdHkgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMCkKKyAgICBpZiAobGVuZ3RoID09IDApCiAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAKLSAgICBlID0gcCArIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKICAgICBjYXNlZCA9IDA7Ci0gICAgd2hpbGUgKHAgPCBlKSB7Ci0gICAgICAgIGNvbnN0IFB5X1VDUzQgY2ggPSBfUHlfVU5JQ09ERV9ORVhUKHAsIGUpOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBjb25zdCBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CiAKICAgICAgICAgaWYgKFB5X1VOSUNPREVfSVNMT1dFUihjaCkgfHwgUHlfVU5JQ09ERV9JU1RJVExFKGNoKSkKICAgICAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CkBAIC03Nzk3LDI2ICsxMTM4MywzNCBAQAogUmV0dXJuIEZhbHNlIG90aGVyd2lzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9pc3RpdGxlKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaXN0aXRsZShQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZik7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBQeV9zc2l6ZV90IGksIGxlbmd0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOwogICAgIGludCBjYXNlZCwgcHJldmlvdXNfaXNfY2FzZWQ7CiAKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOworCiAgICAgLyogU2hvcnRjdXQgZm9yIHNpbmdsZSBjaGFyYWN0ZXIgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMSkKLSAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygoUHlfVU5JQ09ERV9JU1RJVExFKCpwKSAhPSAwKSB8fAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChQeV9VTklDT0RFX0lTVVBQRVIoKnApICE9IDApKTsKKyAgICBpZiAobGVuZ3RoID09IDEpIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIDApOworICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKChQeV9VTklDT0RFX0lTVElUTEUoY2gpICE9IDApIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFB5X1VOSUNPREVfSVNVUFBFUihjaCkgIT0gMCkpOworICAgIH0KIAogICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgZW1wdHkgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMCkKKyAgICBpZiAobGVuZ3RoID09IDApCiAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAKLSAgICBlID0gcCArIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKICAgICBjYXNlZCA9IDA7CiAgICAgcHJldmlvdXNfaXNfY2FzZWQgPSAwOwotICAgIHdoaWxlIChwIDwgZSkgewotICAgICAgICBjb25zdCBQeV9VQ1M0IGNoID0gX1B5X1VOSUNPREVfTkVYVChwLCBlKTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgY29uc3QgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOwogCiAgICAgICAgIGlmIChQeV9VTklDT0RFX0lTVVBQRVIoY2gpIHx8IFB5X1VOSUNPREVfSVNUSVRMRShjaCkpIHsKICAgICAgICAgICAgIGlmIChwcmV2aW91c19pc19jYXNlZCkKQEAgLTc4NDMsMjMgKzExNDM3LDI5IEBACiBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIGNoYXJhY3RlciBpbiBTLCBGYWxzZSBvdGhlcndpc2UuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfaXNzcGFjZShQeVVuaWNvZGVPYmplY3QgKnNlbGYpCit1bmljb2RlX2lzc3BhY2UoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYpOwotICAgIHJlZ2lzdGVyIGNvbnN0IFB5X1VOSUNPREUgKmU7CisgICAgUHlfc3NpemVfdCBpLCBsZW5ndGg7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CiAKICAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxICYmCi0gICAgICAgIFB5X1VOSUNPREVfSVNTUEFDRSgqcCkpCi0gICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMSk7CisgICAgaWYgKGxlbmd0aCA9PSAxKQorICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKAorICAgICAgICAgICAgUHlfVU5JQ09ERV9JU1NQQUNFKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIDApKSk7CiAKICAgICAvKiBTcGVjaWFsIGNhc2UgZm9yIGVtcHR5IHN0cmluZ3MgKi8KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpID09IDApCisgICAgaWYgKGxlbmd0aCA9PSAwKQogICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKDApOwogCi0gICAgZSA9IHAgKyBQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZik7Ci0gICAgd2hpbGUgKHAgPCBlKSB7Ci0gICAgICAgIGNvbnN0IFB5X1VDUzQgY2ggPSBfUHlfVU5JQ09ERV9ORVhUKHAsIGUpOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBjb25zdCBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CiAgICAgICAgIGlmICghUHlfVU5JQ09ERV9JU1NQQUNFKGNoKSkKICAgICAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAgICAgfQpAQCAtNzg3MywyMyArMTE0NzMsMjkgQEAKIGFuZCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgY2hhcmFjdGVyIGluIFMsIEZhbHNlIG90aGVyd2lzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9pc2FscGhhKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaXNhbHBoYShQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZik7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBQeV9zc2l6ZV90IGksIGxlbmd0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbGVuZ3RoID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShzZWxmKTsKIAogICAgIC8qIFNob3J0Y3V0IGZvciBzaW5nbGUgY2hhcmFjdGVyIHN0cmluZ3MgKi8KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpID09IDEgJiYKLSAgICAgICAgUHlfVU5JQ09ERV9JU0FMUEhBKCpwKSkKLSAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygxKTsKKyAgICBpZiAobGVuZ3RoID09IDEpCisgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoCisgICAgICAgICAgICBQeV9VTklDT0RFX0lTQUxQSEEoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCkpKTsKIAogICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgZW1wdHkgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMCkKKyAgICBpZiAobGVuZ3RoID09IDApCiAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAKLSAgICBlID0gcCArIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKLSAgICB3aGlsZSAocCA8IGUpIHsKLSAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTQUxQSEEoX1B5X1VOSUNPREVfTkVYVChwLCBlKSkpCisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CisgICAgICAgIGlmICghUHlfVU5JQ09ERV9JU0FMUEhBKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKSkKICAgICAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAgICAgfQogICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMSk7CkBAIC03OTAyLDIzICsxMTUwOCwzMSBAQAogYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIgaW4gUywgRmFsc2Ugb3RoZXJ3aXNlLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX2lzYWxudW0oUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV9pc2FsbnVtKFB5T2JqZWN0ICpzZWxmKQogewotICAgIHJlZ2lzdGVyIGNvbnN0IFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKTsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICplOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBsZW4sIGk7CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CiAKICAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxICYmCi0gICAgICAgIFB5X1VOSUNPREVfSVNBTE5VTSgqcCkpCi0gICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMSk7CisgICAgaWYgKGxlbiA9PSAxKSB7CisgICAgICAgIGNvbnN0IFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCAwKTsKKyAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZyhQeV9VTklDT0RFX0lTQUxOVU0oY2gpKTsKKyAgICB9CiAKICAgICAvKiBTcGVjaWFsIGNhc2UgZm9yIGVtcHR5IHN0cmluZ3MgKi8KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpID09IDApCisgICAgaWYgKGxlbiA9PSAwKQogICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKDApOwogCi0gICAgZSA9IHAgKyBQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZik7Ci0gICAgd2hpbGUgKHAgPCBlKSB7Ci0gICAgICAgIGNvbnN0IFB5X1VDUzQgY2ggPSBfUHlfVU5JQ09ERV9ORVhUKHAsIGUpOworICAgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgeworICAgICAgICBjb25zdCBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CiAgICAgICAgIGlmICghUHlfVU5JQ09ERV9JU0FMTlVNKGNoKSkKICAgICAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAgICAgfQpAQCAtNzkzMiwyMyArMTE1NDYsMjkgQEAKIEZhbHNlIG90aGVyd2lzZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9pc2RlY2ltYWwoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV9pc2RlY2ltYWwoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYpOwotICAgIHJlZ2lzdGVyIGNvbnN0IFB5X1VOSUNPREUgKmU7CisgICAgUHlfc3NpemVfdCBpLCBsZW5ndGg7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbmd0aCA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CiAKICAgICAvKiBTaG9ydGN1dCBmb3Igc2luZ2xlIGNoYXJhY3RlciBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAxICYmCi0gICAgICAgIFB5X1VOSUNPREVfSVNERUNJTUFMKCpwKSkKLSAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygxKTsKKyAgICBpZiAobGVuZ3RoID09IDEpCisgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoCisgICAgICAgICAgICBQeV9VTklDT0RFX0lTREVDSU1BTChQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCAwKSkpOwogCiAgICAgLyogU3BlY2lhbCBjYXNlIGZvciBlbXB0eSBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAwKQorICAgIGlmIChsZW5ndGggPT0gMCkKICAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygwKTsKIAotICAgIGUgPSBwICsgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpOwotICAgIHdoaWxlIChwIDwgZSkgewotICAgICAgICBpZiAoIVB5X1VOSUNPREVfSVNERUNJTUFMKF9QeV9VTklDT0RFX05FWFQocCwgZSkpKQorICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICBpZiAoIVB5X1VOSUNPREVfSVNERUNJTUFMKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKSkKICAgICAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAgICAgfQogICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMSk7CkBAIC03OTYxLDIzICsxMTU4MSwzMCBAQAogYW5kIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIgaW4gUywgRmFsc2Ugb3RoZXJ3aXNlLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX2lzZGlnaXQoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV9pc2RpZ2l0KFB5T2JqZWN0ICpzZWxmKQogewotICAgIHJlZ2lzdGVyIGNvbnN0IFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKTsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICplOworICAgIFB5X3NzaXplX3QgaSwgbGVuZ3RoOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOwogCiAgICAgLyogU2hvcnRjdXQgZm9yIHNpbmdsZSBjaGFyYWN0ZXIgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMSAmJgotICAgICAgICBQeV9VTklDT0RFX0lTRElHSVQoKnApKQotICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKDEpOworICAgIGlmIChsZW5ndGggPT0gMSkgeworICAgICAgICBjb25zdCBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCk7CisgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoUHlfVU5JQ09ERV9JU0RJR0lUKGNoKSk7CisgICAgfQogCiAgICAgLyogU3BlY2lhbCBjYXNlIGZvciBlbXB0eSBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAwKQorICAgIGlmIChsZW5ndGggPT0gMCkKICAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygwKTsKIAotICAgIGUgPSBwICsgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpOwotICAgIHdoaWxlIChwIDwgZSkgewotICAgICAgICBpZiAoIVB5X1VOSUNPREVfSVNESUdJVChfUHlfVU5JQ09ERV9ORVhUKHAsIGUpKSkKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTRElHSVQoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpKQogICAgICAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygwKTsKICAgICB9CiAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygxKTsKQEAgLTc5OTAsMjMgKzExNjE3LDI5IEBACiBGYWxzZSBvdGhlcndpc2UuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfaXNudW1lcmljKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfaXNudW1lcmljKFB5T2JqZWN0ICpzZWxmKQogewotICAgIHJlZ2lzdGVyIGNvbnN0IFB5X1VOSUNPREUgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKTsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICplOworICAgIFB5X3NzaXplX3QgaSwgbGVuZ3RoOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKKyAgICBraW5kID0gUHlVbmljb2RlX0tJTkQoc2VsZik7CisgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHNlbGYpOwogCiAgICAgLyogU2hvcnRjdXQgZm9yIHNpbmdsZSBjaGFyYWN0ZXIgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMSAmJgotICAgICAgICBQeV9VTklDT0RFX0lTTlVNRVJJQygqcCkpCi0gICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMSk7CisgICAgaWYgKGxlbmd0aCA9PSAxKQorICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKAorICAgICAgICAgICAgUHlfVU5JQ09ERV9JU05VTUVSSUMoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCkpKTsKIAogICAgIC8qIFNwZWNpYWwgY2FzZSBmb3IgZW1wdHkgc3RyaW5ncyAqLwotICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikgPT0gMCkKKyAgICBpZiAobGVuZ3RoID09IDApCiAgICAgICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoMCk7CiAKLSAgICBlID0gcCArIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKLSAgICB3aGlsZSAocCA8IGUpIHsKLSAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTTlVNRVJJQyhfUHlfVU5JQ09ERV9ORVhUKHAsIGUpKSkKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTTlVNRVJJQyhQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSkpCiAgICAgICAgICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKDApOwogICAgIH0KICAgICByZXR1cm4gUHlCb29sX0Zyb21Mb25nKDEpOwpAQCAtODAxNSwxMyArMTE2NDgsMjEgQEAKIGludAogUHlVbmljb2RlX0lzSWRlbnRpZmllcihQeU9iamVjdCAqc2VsZikKIHsKLSAgICBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoKFB5VW5pY29kZU9iamVjdCopc2VsZik7Ci0gICAgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X3NzaXplX3QgaTsKICAgICBQeV9VQ1M0IGZpcnN0OwogCi0gICAgLyogU3BlY2lhbCBjYXNlIGZvciBlbXB0eSBzdHJpbmdzICovCi0gICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSA9PSAwKQorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpIHsKKyAgICAgICAgUHlfRmF0YWxFcnJvcigiaWRlbnRpZmllciBub3QgcmVhZHkiKTsKICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCisgICAgLyogU3BlY2lhbCBjYXNlIGZvciBlbXB0eSBzdHJpbmdzICovCisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpID09IDApCisgICAgICAgIHJldHVybiAwOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CiAKICAgICAvKiBQRVAgMzEzMSBzYXlzIHRoYXQgdGhlIGZpcnN0IGNoYXJhY3RlciBtdXN0IGJlIGluCiAgICAgICAgWElEX1N0YXJ0IGFuZCBzdWJzZXF1ZW50IGNoYXJhY3RlcnMgaW4gWElEX0NvbnRpbnVlLApAQCAtODAzMSwxMyArMTE2NzIsMTIgQEAKICAgICAgICBkZWZpbml0aW9uIG9mIFhJRF9TdGFydCBhbmQgWElEX0NvbnRpbnVlLCBpdCBpcyBzdWZmaWNpZW50CiAgICAgICAgdG8gY2hlY2sganVzdCBmb3IgdGhlc2UsIGV4Y2VwdCB0aGF0IF8gbXVzdCBiZSBhbGxvd2VkCiAgICAgICAgYXMgc3RhcnRpbmcgYW4gaWRlbnRpZmllci4gICovCi0gICAgZSA9IHAgKyBQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZik7Ci0gICAgZmlyc3QgPSBfUHlfVU5JQ09ERV9ORVhUKHAsIGUpOworICAgIGZpcnN0ID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCk7CiAgICAgaWYgKCFfUHlVbmljb2RlX0lzWGlkU3RhcnQoZmlyc3QpICYmIGZpcnN0ICE9IDB4NUYgLyogTE9XIExJTkUgKi8pCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgd2hpbGUgKHAgPCBlKQotICAgICAgICBpZiAoIV9QeVVuaWNvZGVfSXNYaWRDb250aW51ZShfUHlfVU5JQ09ERV9ORVhUKHAsIGUpKSkKKyAgICBmb3IgKGkgPSAxOyBpIDwgUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7IGkrKykKKyAgICAgICAgaWYgKCFfUHlVbmljb2RlX0lzWGlkQ29udGludWUoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSkpKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgcmV0dXJuIDE7CiB9CkBAIC04MDYzLDE3ICsxMTcwMywyMyBAQAogc3RhdGljIFB5T2JqZWN0KgogdW5pY29kZV9pc3ByaW50YWJsZShQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZWdpc3RlciBjb25zdCBQeV9VTklDT0RFICpwID0gUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZik7Ci0gICAgcmVnaXN0ZXIgY29uc3QgUHlfVU5JQ09ERSAqZTsKKyAgICBQeV9zc2l6ZV90IGksIGxlbmd0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbGVuZ3RoID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShzZWxmKTsKIAogICAgIC8qIFNob3J0Y3V0IGZvciBzaW5nbGUgY2hhcmFjdGVyIHN0cmluZ3MgKi8KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpID09IDEgJiYgUHlfVU5JQ09ERV9JU1BSSU5UQUJMRSgqcCkpIHsKLSAgICAgICAgUHlfUkVUVVJOX1RSVUU7Ci0gICAgfQorICAgIGlmIChsZW5ndGggPT0gMSkKKyAgICAgICAgcmV0dXJuIFB5Qm9vbF9Gcm9tTG9uZygKKyAgICAgICAgICAgIFB5X1VOSUNPREVfSVNQUklOVEFCTEUoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgMCkpKTsKIAotICAgIGUgPSBwICsgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpOwotICAgIHdoaWxlIChwIDwgZSkgewotICAgICAgICBpZiAoIVB5X1VOSUNPREVfSVNQUklOVEFCTEUoX1B5X1VOSUNPREVfTkVYVChwLCBlKSkpIHsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTUFJJTlRBQkxFKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpKSkgewogICAgICAgICAgICAgUHlfUkVUVVJOX0ZBTFNFOwogICAgICAgICB9CiAgICAgfQpAQCAtODA5Myw5ICsxMTczOSwxMSBAQAogfQogCiBzdGF0aWMgUHlfc3NpemVfdAotdW5pY29kZV9sZW5ndGgoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV9sZW5ndGgoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmV0dXJuIHNlbGYtPmxlbmd0aDsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gLTE7CisgICAgcmV0dXJuIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpOwogfQogCiBQeURvY19TVFJWQVIobGp1c3RfX2RvY19fLApAQCAtODEwNSwyMCArMTE3NTMsMjEgQEAKIGRvbmUgdXNpbmcgdGhlIHNwZWNpZmllZCBmaWxsIGNoYXJhY3RlciAoZGVmYXVsdCBpcyBhIHNwYWNlKS4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfbGp1c3QoUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKK3VuaWNvZGVfbGp1c3QoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewogICAgIFB5X3NzaXplX3Qgd2lkdGg7Ci0gICAgUHlfVU5JQ09ERSBmaWxsY2hhciA9ICcgJzsKKyAgICBQeV9VQ1M0IGZpbGxjaGFyID0gJyAnOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJufE8mOmxqdXN0IiwgJndpZHRoLCBjb252ZXJ0X3VjLCAmZmlsbGNoYXIpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGlmIChzZWxmLT5sZW5ndGggPj0gd2lkdGggJiYgUHlVbmljb2RlX0NoZWNrRXhhY3Qoc2VsZikpIHsKLSAgICAgICAgUHlfSU5DUkVGKHNlbGYpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0Kikgc2VsZjsKLSAgICB9CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZXR1cm4gKFB5T2JqZWN0KikgcGFkKHNlbGYsIDAsIHdpZHRoIC0gc2VsZi0+bGVuZ3RoLCBmaWxsY2hhcik7CisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpID49IHdpZHRoKQorICAgICAgICByZXR1cm4gdW5pY29kZV9yZXN1bHRfdW5jaGFuZ2VkKHNlbGYpOworCisgICAgcmV0dXJuIHBhZChzZWxmLCAwLCB3aWR0aCAtIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLCBmaWxsY2hhcik7CiB9CiAKIFB5RG9jX1NUUlZBUihsb3dlcl9fZG9jX18sCkBAIC04MTI3LDkgKzExNzc2LDEzIEBACiBSZXR1cm4gYSBjb3B5IG9mIHRoZSBzdHJpbmcgUyBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX2xvd2VyKFB5VW5pY29kZU9iamVjdCAqc2VsZikKK3VuaWNvZGVfbG93ZXIoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmV0dXJuIGZpeHVwKHNlbGYsIGZpeGxvd2VyKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHNlbGYpKQorICAgICAgICByZXR1cm4gYXNjaWlfdXBwZXJfb3JfbG93ZXIoc2VsZiwgMSk7CisgICAgcmV0dXJuIGNhc2Vfb3BlcmF0aW9uKHNlbGYsIGRvX2xvd2VyKTsKIH0KIAogI2RlZmluZSBMRUZUU1RSSVAgMApAQCAtODE0MywxOSArMTE3OTYsMjcgQEAKIAogLyogZXh0ZXJuYWxseSB2aXNpYmxlIGZvciBzdHIuc3RyaXAodW5pY29kZSkgKi8KIFB5T2JqZWN0ICoKLV9QeVVuaWNvZGVfWFN0cmlwKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgaW50IHN0cmlwdHlwZSwgUHlPYmplY3QgKnNlcG9iaikKK19QeVVuaWNvZGVfWFN0cmlwKFB5T2JqZWN0ICpzZWxmLCBpbnQgc3RyaXB0eXBlLCBQeU9iamVjdCAqc2Vwb2JqKQogewotICAgIFB5X1VOSUNPREUgKnMgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKTsKLSAgICBQeV9zc2l6ZV90IGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKLSAgICBQeV9VTklDT0RFICpzZXAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZXBvYmopOwotICAgIFB5X3NzaXplX3Qgc2VwbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHNlcG9iaik7Ci0gICAgUHlfc3NpemVfdCBpLCBqOworICAgIHZvaWQgKmRhdGE7CisgICAgaW50IGtpbmQ7CisgICAgUHlfc3NpemVfdCBpLCBqLCBsZW47CisgICAgQkxPT01fTUFTSyBzZXBtYXNrOwogCi0gICAgQkxPT01fTUFTSyBzZXBtYXNrID0gbWFrZV9ibG9vbV9tYXNrKHNlcCwgc2VwbGVuKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xIHx8IFB5VW5pY29kZV9SRUFEWShzZXBvYmopID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CisgICAgc2VwbWFzayA9IG1ha2VfYmxvb21fbWFzayhQeVVuaWNvZGVfS0lORChzZXBvYmopLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0RBVEEoc2Vwb2JqKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlcG9iaikpOwogCiAgICAgaSA9IDA7CiAgICAgaWYgKHN0cmlwdHlwZSAhPSBSSUdIVFNUUklQKSB7Ci0gICAgICAgIHdoaWxlIChpIDwgbGVuICYmIEJMT09NX01FTUJFUihzZXBtYXNrLCBzW2ldLCBzZXAsIHNlcGxlbikpIHsKKyAgICAgICAgd2hpbGUgKGkgPCBsZW4gJiYKKyAgICAgICAgICAgICAgIEJMT09NX01FTUJFUihzZXBtYXNrLCBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSwgc2Vwb2JqKSkgewogICAgICAgICAgICAgaSsrOwogICAgICAgICB9CiAgICAgfQpAQCAtODE2NCwyOCArMTE4MjUsNjkgQEAKICAgICBpZiAoc3RyaXB0eXBlICE9IExFRlRTVFJJUCkgewogICAgICAgICBkbyB7CiAgICAgICAgICAgICBqLS07Ci0gICAgICAgIH0gd2hpbGUgKGogPj0gaSAmJiBCTE9PTV9NRU1CRVIoc2VwbWFzaywgc1tqXSwgc2VwLCBzZXBsZW4pKTsKKyAgICAgICAgfSB3aGlsZSAoaiA+PSBpICYmCisgICAgICAgICAgICAgICAgIEJMT09NX01FTUJFUihzZXBtYXNrLCBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBqKSwgc2Vwb2JqKSk7CiAgICAgICAgIGorKzsKICAgICB9CiAKLSAgICBpZiAoaSA9PSAwICYmIGogPT0gbGVuICYmIFB5VW5pY29kZV9DaGVja0V4YWN0KHNlbGYpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihzZWxmKTsKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCopc2VsZjsKLSAgICB9Ci0gICAgZWxzZQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHMraSwgai1pKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX1N1YnN0cmluZyhzZWxmLCBpLCBqKTsKIH0KIAorUHlPYmplY3QqCitQeVVuaWNvZGVfU3Vic3RyaW5nKFB5T2JqZWN0ICpzZWxmLCBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCkKK3sKKyAgICB1bnNpZ25lZCBjaGFyICpkYXRhOworICAgIGludCBraW5kOworICAgIFB5X3NzaXplX3QgbGVuZ3RoOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBlbmQgPSBQeV9NSU4oZW5kLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKSk7CisKKyAgICBpZiAoc3RhcnQgPT0gMCAmJiBlbmQgPT0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZikpCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CisKKyAgICBsZW5ndGggPSBlbmQgLSBzdGFydDsKKyAgICBpZiAobGVuZ3RoID09IDEpCisgICAgICAgIHJldHVybiB1bmljb2RlX2dldGl0ZW0oc2VsZiwgc3RhcnQpOworCisgICAgaWYgKHN0YXJ0IDwgMCB8fCBlbmQgPCAwKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19JbmRleEVycm9yLCAic3RyaW5nIGluZGV4IG91dCBvZiByYW5nZSIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHNlbGYpKSB7CisgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICAgICAgZGF0YSA9IFB5VW5pY29kZV8xQllURV9EQVRBKHNlbGYpOworICAgICAgICByZXR1cm4gdW5pY29kZV9mcm9tYXNjaWkoZGF0YSArIHN0YXJ0LCBsZW5ndGgpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHNlbGYpOworICAgICAgICBkYXRhID0gUHlVbmljb2RlXzFCWVRFX0RBVEEoc2VsZik7CisgICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUtpbmRBbmREYXRhKGtpbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEgKyBraW5kICogc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbmd0aCk7CisgICAgfQorfQogCiBzdGF0aWMgUHlPYmplY3QgKgotZG9fc3RyaXAoUHlVbmljb2RlT2JqZWN0ICpzZWxmLCBpbnQgc3RyaXB0eXBlKQorZG9fc3RyaXAoUHlPYmplY3QgKnNlbGYsIGludCBzdHJpcHR5cGUpCiB7Ci0gICAgUHlfVU5JQ09ERSAqcyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHNlbGYpOwotICAgIFB5X3NzaXplX3QgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpLCBpLCBqOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfc3NpemVfdCBsZW4sIGksIGo7CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoc2VsZik7CisgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CiAKICAgICBpID0gMDsKICAgICBpZiAoc3RyaXB0eXBlICE9IFJJR0hUU1RSSVApIHsKLSAgICAgICAgd2hpbGUgKGkgPCBsZW4gJiYgUHlfVU5JQ09ERV9JU1NQQUNFKHNbaV0pKSB7CisgICAgICAgIHdoaWxlIChpIDwgbGVuICYmIFB5X1VOSUNPREVfSVNTUEFDRShQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBpKSkpIHsKICAgICAgICAgICAgIGkrKzsKICAgICAgICAgfQogICAgIH0KQEAgLTgxOTQsMjEgKzExODk2LDE2IEBACiAgICAgaWYgKHN0cmlwdHlwZSAhPSBMRUZUU1RSSVApIHsKICAgICAgICAgZG8gewogICAgICAgICAgICAgai0tOwotICAgICAgICB9IHdoaWxlIChqID49IGkgJiYgUHlfVU5JQ09ERV9JU1NQQUNFKHNbal0pKTsKKyAgICAgICAgfSB3aGlsZSAoaiA+PSBpICYmIFB5X1VOSUNPREVfSVNTUEFDRShQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBqKSkpOwogICAgICAgICBqKys7CiAgICAgfQogCi0gICAgaWYgKGkgPT0gMCAmJiBqID09IGxlbiAmJiBQeVVuaWNvZGVfQ2hlY2tFeGFjdChzZWxmKSkgewotICAgICAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgICAgIHJldHVybiAoUHlPYmplY3QqKXNlbGY7Ci0gICAgfQotICAgIGVsc2UKLSAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShzK2ksIGotaSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9TdWJzdHJpbmcoc2VsZiwgaSwgaik7CiB9CiAKIAogc3RhdGljIFB5T2JqZWN0ICoKLWRvX2FyZ3N0cmlwKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgaW50IHN0cmlwdHlwZSwgUHlPYmplY3QgKmFyZ3MpCitkb19hcmdzdHJpcChQeU9iamVjdCAqc2VsZiwgaW50IHN0cmlwdHlwZSwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKnNlcCA9IE5VTEw7CiAKQEAgLTgyMzgsNyArMTE5MzUsNyBAQAogSWYgY2hhcnMgaXMgZ2l2ZW4gYW5kIG5vdCBOb25lLCByZW1vdmUgY2hhcmFjdGVycyBpbiBjaGFycyBpbnN0ZWFkLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9zdHJpcChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9zdHJpcChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoYXJncykgPT0gMCkKICAgICAgICAgcmV0dXJuIGRvX3N0cmlwKHNlbGYsIEJPVEhTVFJJUCk7IC8qIENvbW1vbiBjYXNlICovCkBAIC04MjU0LDcgKzExOTUxLDcgQEAKIElmIGNoYXJzIGlzIGdpdmVuIGFuZCBub3QgTm9uZSwgcmVtb3ZlIGNoYXJhY3RlcnMgaW4gY2hhcnMgaW5zdGVhZC4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfbHN0cmlwKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX2xzdHJpcChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoYXJncykgPT0gMCkKICAgICAgICAgcmV0dXJuIGRvX3N0cmlwKHNlbGYsIExFRlRTVFJJUCk7IC8qIENvbW1vbiBjYXNlICovCkBAIC04MjcwLDcgKzExOTY3LDcgQEAKIElmIGNoYXJzIGlzIGdpdmVuIGFuZCBub3QgTm9uZSwgcmVtb3ZlIGNoYXJhY3RlcnMgaW4gY2hhcnMgaW5zdGVhZC4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfcnN0cmlwKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX3JzdHJpcChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoYXJncykgPT0gMCkKICAgICAgICAgcmV0dXJuIGRvX3N0cmlwKHNlbGYsIFJJR0hUU1RSSVApOyAvKiBDb21tb24gY2FzZSAqLwpAQCAtODI4MCw2NCArMTE5NzcsNzYgQEAKIAogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX3JlcGVhdChQeVVuaWNvZGVPYmplY3QgKnN0ciwgUHlfc3NpemVfdCBsZW4pCit1bmljb2RlX3JlcGVhdChQeU9iamVjdCAqc3RyLCBQeV9zc2l6ZV90IGxlbikKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnU7Ci0gICAgUHlfVU5JQ09ERSAqcDsKLSAgICBQeV9zc2l6ZV90IG5jaGFyczsKLSAgICBzaXplX3QgbmJ5dGVzOworICAgIFB5T2JqZWN0ICp1OworICAgIFB5X3NzaXplX3QgbmNoYXJzLCBuOwogCiAgICAgaWYgKGxlbiA8IDEpIHsKICAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopdW5pY29kZV9lbXB0eTsKKyAgICAgICAgcmV0dXJuIHVuaWNvZGVfZW1wdHk7CiAgICAgfQogCi0gICAgaWYgKGxlbiA9PSAxICYmIFB5VW5pY29kZV9DaGVja0V4YWN0KHN0cikpIHsKLSAgICAgICAgLyogbm8gcmVwZWF0LCByZXR1cm4gb3JpZ2luYWwgc3RyaW5nICovCi0gICAgICAgIFB5X0lOQ1JFRihzdHIpOwotICAgICAgICByZXR1cm4gKFB5T2JqZWN0Kikgc3RyOwotICAgIH0KKyAgICAvKiBubyByZXBlYXQsIHJldHVybiBvcmlnaW5hbCBzdHJpbmcgKi8KKyAgICBpZiAobGVuID09IDEpCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc3RyKTsKIAotICAgIC8qIGVuc3VyZSAjIG9mIGNoYXJzIG5lZWRlZCBkb2Vzbid0IG92ZXJmbG93IGludCBhbmQgIyBvZiBieXRlcwotICAgICAqIG5lZWRlZCBkb2Vzbid0IG92ZXJmbG93IHNpemVfdAotICAgICAqLwotICAgIG5jaGFycyA9IGxlbiAqIHN0ci0+bGVuZ3RoOwotICAgIGlmIChuY2hhcnMgLyBsZW4gIT0gc3RyLT5sZW5ndGgpIHsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN0cikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikgPiBQWV9TU0laRV9UX01BWCAvIGxlbikgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJyZXBlYXRlZCBzdHJpbmcgaXMgdG9vIGxvbmciKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIG5ieXRlcyA9IChuY2hhcnMgKyAxKSAqIHNpemVvZihQeV9VTklDT0RFKTsKLSAgICBpZiAobmJ5dGVzIC8gc2l6ZW9mKFB5X1VOSUNPREUpICE9IChzaXplX3QpKG5jaGFycyArIDEpKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19PdmVyZmxvd0Vycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgInJlcGVhdGVkIHN0cmluZyBpcyB0b28gbG9uZyIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgdSA9IF9QeVVuaWNvZGVfTmV3KG5jaGFycyk7CisgICAgbmNoYXJzID0gbGVuICogUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyKTsKKworICAgIHUgPSBQeVVuaWNvZGVfTmV3KG5jaGFycywgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHN0cikpOwogICAgIGlmICghdSkKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgYXNzZXJ0KFB5VW5pY29kZV9LSU5EKHUpID09IFB5VW5pY29kZV9LSU5EKHN0cikpOwogCi0gICAgcCA9IHUtPnN0cjsKLQotICAgIGlmIChzdHItPmxlbmd0aCA9PSAxKSB7Ci0gICAgICAgIFB5X1VOSUNPREVfRklMTChwLCBzdHItPnN0clswXSwgbGVuKTsKLSAgICB9IGVsc2UgewotICAgICAgICBQeV9zc2l6ZV90IGRvbmUgPSBzdHItPmxlbmd0aDsgLyogbnVtYmVyIG9mIGNoYXJhY3RlcnMgY29waWVkIHRoaXMgZmFyICovCi0gICAgICAgIFB5X1VOSUNPREVfQ09QWShwLCBzdHItPnN0ciwgc3RyLT5sZW5ndGgpOworICAgIGlmIChQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpID09IDEpIHsKKyAgICAgICAgY29uc3QgaW50IGtpbmQgPSBQeVVuaWNvZGVfS0lORChzdHIpOworICAgICAgICBjb25zdCBQeV9VQ1M0IGZpbGxfY2hhciA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIFB5VW5pY29kZV9EQVRBKHN0ciksIDApOworICAgICAgICBpZiAoa2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCkgeworICAgICAgICAgICAgdm9pZCAqdG8gPSBQeVVuaWNvZGVfREFUQSh1KTsKKyAgICAgICAgICAgIG1lbXNldCh0bywgKHVuc2lnbmVkIGNoYXIpZmlsbF9jaGFyLCBsZW4pOworICAgICAgICB9CisgICAgICAgIGVsc2UgaWYgKGtpbmQgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQpIHsKKyAgICAgICAgICAgIFB5X1VDUzIgKnVjczIgPSBQeVVuaWNvZGVfMkJZVEVfREFUQSh1KTsKKyAgICAgICAgICAgIGZvciAobiA9IDA7IG4gPCBsZW47ICsrbikKKyAgICAgICAgICAgICAgICB1Y3MyW25dID0gZmlsbF9jaGFyOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgUHlfVUNTNCAqdWNzNCA9IFB5VW5pY29kZV80QllURV9EQVRBKHUpOworICAgICAgICAgICAgYXNzZXJ0KGtpbmQgPT0gUHlVbmljb2RlXzRCWVRFX0tJTkQpOworICAgICAgICAgICAgZm9yIChuID0gMDsgbiA8IGxlbjsgKytuKQorICAgICAgICAgICAgICAgIHVjczRbbl0gPSBmaWxsX2NoYXI7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIC8qIG51bWJlciBvZiBjaGFyYWN0ZXJzIGNvcGllZCB0aGlzIGZhciAqLworICAgICAgICBQeV9zc2l6ZV90IGRvbmUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzdHIpOworICAgICAgICBjb25zdCBQeV9zc2l6ZV90IGNoYXJfc2l6ZSA9IFB5VW5pY29kZV9LSU5EKHN0cik7CisgICAgICAgIGNoYXIgKnRvID0gKGNoYXIgKikgUHlVbmljb2RlX0RBVEEodSk7CisgICAgICAgIFB5X01FTUNQWSh0bywgUHlVbmljb2RlX0RBVEEoc3RyKSwKKyAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cikgKiBjaGFyX3NpemUpOwogICAgICAgICB3aGlsZSAoZG9uZSA8IG5jaGFycykgewotICAgICAgICAgICAgUHlfc3NpemVfdCBuID0gKGRvbmUgPD0gbmNoYXJzLWRvbmUpID8gZG9uZSA6IG5jaGFycy1kb25lOwotICAgICAgICAgICAgUHlfVU5JQ09ERV9DT1BZKHArZG9uZSwgcCwgbik7CisgICAgICAgICAgICBuID0gKGRvbmUgPD0gbmNoYXJzLWRvbmUpID8gZG9uZSA6IG5jaGFycy1kb25lOworICAgICAgICAgICAgUHlfTUVNQ1BZKHRvICsgKGRvbmUgKiBjaGFyX3NpemUpLCB0bywgbiAqIGNoYXJfc2l6ZSk7CiAgICAgICAgICAgICBkb25lICs9IG47CiAgICAgICAgIH0KICAgICB9CiAKLSAgICByZXR1cm4gKFB5T2JqZWN0KikgdTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHUsIDEpKTsKKyAgICByZXR1cm4gdTsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9SZXBsYWNlKFB5T2JqZWN0ICpvYmosCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnN1Ym9iaiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcmVwbG9iaiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IG1heGNvdW50KQorUHlPYmplY3QgKgorUHlVbmljb2RlX1JlcGxhY2UoUHlPYmplY3QgKm9iaiwKKyAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWJvYmosCisgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcmVwbG9iaiwKKyAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbWF4Y291bnQpCiB7CiAgICAgUHlPYmplY3QgKnNlbGY7CiAgICAgUHlPYmplY3QgKnN0cjE7CkBAIC04MzU4LDEwICsxMjA2NywxMiBAQAogICAgICAgICBQeV9ERUNSRUYoc3RyMSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICByZXN1bHQgPSByZXBsYWNlKChQeVVuaWNvZGVPYmplY3QgKilzZWxmLAotICAgICAgICAgICAgICAgICAgICAgKFB5VW5pY29kZU9iamVjdCAqKXN0cjEsCi0gICAgICAgICAgICAgICAgICAgICAoUHlVbmljb2RlT2JqZWN0ICopc3RyMiwKLSAgICAgICAgICAgICAgICAgICAgIG1heGNvdW50KTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xIHx8CisgICAgICAgIFB5VW5pY29kZV9SRUFEWShzdHIxKSA9PSAtMSB8fAorICAgICAgICBQeVVuaWNvZGVfUkVBRFkoc3RyMikgPT0gLTEpCisgICAgICAgIHJlc3VsdCA9IE5VTEw7CisgICAgZWxzZQorICAgICAgICByZXN1bHQgPSByZXBsYWNlKHNlbGYsIHN0cjEsIHN0cjIsIG1heGNvdW50KTsKICAgICBQeV9ERUNSRUYoc2VsZik7CiAgICAgUHlfREVDUkVGKHN0cjEpOwogICAgIFB5X0RFQ1JFRihzdHIyKTsKQEAgLTgzNzYsMTc3ICsxMjA4NywxODMgQEAKIGdpdmVuLCBvbmx5IHRoZSBmaXJzdCBjb3VudCBvY2N1cnJlbmNlcyBhcmUgcmVwbGFjZWQuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfcmVwbGFjZShQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9yZXBsYWNlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnN0cjE7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpzdHIyOworICAgIFB5T2JqZWN0ICpzdHIxOworICAgIFB5T2JqZWN0ICpzdHIyOwogICAgIFB5X3NzaXplX3QgbWF4Y291bnQgPSAtMTsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJPT3xuOnJlcGxhY2UiLCAmc3RyMSwgJnN0cjIsICZtYXhjb3VudCkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHN0cjEgPSAoUHlVbmljb2RlT2JqZWN0ICopUHlVbmljb2RlX0Zyb21PYmplY3QoKFB5T2JqZWN0ICopc3RyMSk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShzZWxmKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgc3RyMSA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cjEpOwogICAgIGlmIChzdHIxID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHN0cjIgPSAoUHlVbmljb2RlT2JqZWN0ICopUHlVbmljb2RlX0Zyb21PYmplY3QoKFB5T2JqZWN0ICopc3RyMik7CisgICAgc3RyMiA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN0cjIpOwogICAgIGlmIChzdHIyID09IE5VTEwpIHsKICAgICAgICAgUHlfREVDUkVGKHN0cjEpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0KLSAgICByZXN1bHQgPSByZXBsYWNlKHNlbGYsIHN0cjEsIHN0cjIsIG1heGNvdW50KTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN0cjEpID09IC0xIHx8IFB5VW5pY29kZV9SRUFEWShzdHIyKSA9PSAtMSkKKyAgICAgICAgcmVzdWx0ID0gTlVMTDsKKyAgICBlbHNlCisgICAgICAgIHJlc3VsdCA9IHJlcGxhY2Uoc2VsZiwgc3RyMSwgc3RyMiwgbWF4Y291bnQpOwogCiAgICAgUHlfREVDUkVGKHN0cjEpOwogICAgIFB5X0RFQ1JFRihzdHIyKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1zdGF0aWMKLVB5T2JqZWN0ICp1bmljb2RlX3JlcHIoUHlPYmplY3QgKnVuaWNvZGUpCitzdGF0aWMgUHlPYmplY3QgKgordW5pY29kZV9yZXByKFB5T2JqZWN0ICp1bmljb2RlKQogewogICAgIFB5T2JqZWN0ICpyZXByOwotICAgIFB5X1VOSUNPREUgKnA7Ci0gICAgUHlfVU5JQ09ERSAqcyA9IFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpOwotICAgIFB5X3NzaXplX3Qgc2l6ZSA9IFB5VW5pY29kZV9HRVRfU0laRSh1bmljb2RlKTsKKyAgICBQeV9zc2l6ZV90IGlzaXplOworICAgIFB5X3NzaXplX3Qgb3NpemUsIHNxdW90ZSwgZHF1b3RlLCBpLCBvOworICAgIFB5X1VDUzQgbWF4LCBxdW90ZTsKKyAgICBpbnQgaWtpbmQsIG9raW5kOworICAgIHZvaWQgKmlkYXRhLCAqb2RhdGE7CiAKLSAgICAvKiBYWFgobm5vcndpdHopOiByYXRoZXIgdGhhbiBvdmVyLWFsbG9jYXRpbmcsIGl0IHdvdWxkIGJlCi0gICAgICAgYmV0dGVyIHRvIGNob29zZSBhIGRpZmZlcmVudCBzY2hlbWUuICBQZXJoYXBzIHNjYW4gdGhlCi0gICAgICAgZmlyc3QgTi1jaGFycyBvZiB0aGUgc3RyaW5nIGFuZCBhbGxvY2F0ZSBiYXNlZCBvbiB0aGF0IHNpemUuCi0gICAgKi8KLSAgICAvKiBJbml0aWFsIGFsbG9jYXRpb24gaXMgYmFzZWQgb24gdGhlIGxvbmdlc3QtcG9zc2libGUgdW5pY2hyCi0gICAgICAgZXNjYXBlLgotCi0gICAgICAgSW4gd2lkZSAoVVRGLTMyKSBidWlsZHMgJ1xVMDB4eHh4eHgnIGlzIDEwIGNoYXJzIHBlciBzb3VyY2UKLSAgICAgICB1bmljaHIsIHNvIGluIHRoaXMgY2FzZSBpdCdzIHRoZSBsb25nZXN0IHVuaWNociBlc2NhcGUuIEluCi0gICAgICAgbmFycm93IChVVEYtMTYpIGJ1aWxkcyB0aGlzIGlzIGZpdmUgY2hhcnMgcGVyIHNvdXJjZSB1bmljaHIKLSAgICAgICBzaW5jZSB0aGVyZSBhcmUgdHdvIHVuaWNocnMgaW4gdGhlIHN1cnJvZ2F0ZSBwYWlyLCBzbyBpbiBuYXJyb3cKLSAgICAgICAoVVRGLTE2KSBidWlsZHMgaXQncyBub3QgdGhlIGxvbmdlc3QgdW5pY2hyIGVzY2FwZS4KLQotICAgICAgIEluIHdpZGUgb3IgbmFycm93IGJ1aWxkcyAnXHV4eHh4JyBpcyA2IGNoYXJzIHBlciBzb3VyY2UgdW5pY2hyLAotICAgICAgIHNvIGluIHRoZSBuYXJyb3cgKFVURi0xNikgYnVpbGQgY2FzZSBpdCdzIHRoZSBsb25nZXN0IHVuaWNocgotICAgICAgIGVzY2FwZS4KLSAgICAqLwotCi0gICAgcmVwciA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiAvKiBxdW90ZXMgKi8KLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgMTAqc2l6ZQotI2Vsc2UKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgNipzaXplCi0jZW5kaWYKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICsgMSk7Ci0gICAgaWYgKHJlcHIgPT0gTlVMTCkKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHVuaWNvZGUpID09IC0xKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXByKTsKKyAgICBpc2l6ZSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHVuaWNvZGUpOworICAgIGlkYXRhID0gUHlVbmljb2RlX0RBVEEodW5pY29kZSk7CiAKLSAgICAvKiBBZGQgcXVvdGUgKi8KLSAgICAqcCsrID0gKGZpbmRjaGFyKHMsIHNpemUsICdcJycpICYmCi0gICAgICAgICAgICAhZmluZGNoYXIocywgc2l6ZSwgJyInKSkgPyAnIicgOiAnXCcnOwotICAgIHdoaWxlIChzaXplLS0gPiAwKSB7Ci0gICAgICAgIFB5X1VOSUNPREUgY2ggPSAqcysrOworICAgIC8qIENvbXB1dGUgbGVuZ3RoIG9mIG91dHB1dCwgcXVvdGUgY2hhcmFjdGVycywgYW5kCisgICAgICAgbWF4aW11bSBjaGFyYWN0ZXIgKi8KKyAgICBvc2l6ZSA9IDI7IC8qIHF1b3RlcyAqLworICAgIG1heCA9IDEyNzsKKyAgICBzcXVvdGUgPSBkcXVvdGUgPSAwOworICAgIGlraW5kID0gUHlVbmljb2RlX0tJTkQodW5pY29kZSk7CisgICAgZm9yIChpID0gMDsgaSA8IGlzaXplOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGlraW5kLCBpZGF0YSwgaSk7CisgICAgICAgIHN3aXRjaCAoY2gpIHsKKyAgICAgICAgY2FzZSAnXCcnOiBzcXVvdGUrKzsgb3NpemUrKzsgYnJlYWs7CisgICAgICAgIGNhc2UgJyInOiAgZHF1b3RlKys7IG9zaXplKys7IGJyZWFrOworICAgICAgICBjYXNlICdcXCc6IGNhc2UgJ1x0JzogY2FzZSAnXHInOiBjYXNlICdcbic6CisgICAgICAgICAgICBvc2l6ZSArPSAyOyBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIC8qIEZhc3QtcGF0aCBBU0NJSSAqLworICAgICAgICAgICAgaWYgKGNoIDwgJyAnIHx8IGNoID09IDB4N2YpCisgICAgICAgICAgICAgICAgb3NpemUgKz0gNDsgLyogXHhISCAqLworICAgICAgICAgICAgZWxzZSBpZiAoY2ggPCAweDdmKQorICAgICAgICAgICAgICAgIG9zaXplKys7CisgICAgICAgICAgICBlbHNlIGlmIChQeV9VTklDT0RFX0lTUFJJTlRBQkxFKGNoKSkgeworICAgICAgICAgICAgICAgIG9zaXplKys7CisgICAgICAgICAgICAgICAgbWF4ID0gY2ggPiBtYXggPyBjaCA6IG1heDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgaWYgKGNoIDwgMHgxMDApCisgICAgICAgICAgICAgICAgb3NpemUgKz0gNDsgLyogXHhISCAqLworICAgICAgICAgICAgZWxzZSBpZiAoY2ggPCAweDEwMDAwKQorICAgICAgICAgICAgICAgIG9zaXplICs9IDY7IC8qIFx1SEhISCAqLworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIG9zaXplICs9IDEwOyAvKiBcdUhISEhISEhIICovCisgICAgICAgIH0KKyAgICB9CisKKyAgICBxdW90ZSA9ICdcJyc7CisgICAgaWYgKHNxdW90ZSkgeworICAgICAgICBpZiAoZHF1b3RlKQorICAgICAgICAgICAgLyogQm90aCBzcXVvdGUgYW5kIGRxdW90ZSBwcmVzZW50LiBVc2Ugc3F1b3RlLAorICAgICAgICAgICAgICAgYW5kIGVzY2FwZSB0aGVtICovCisgICAgICAgICAgICBvc2l6ZSArPSBzcXVvdGU7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHF1b3RlID0gJyInOworICAgIH0KKworICAgIHJlcHIgPSBQeVVuaWNvZGVfTmV3KG9zaXplLCBtYXgpOworICAgIGlmIChyZXByID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIG9raW5kID0gUHlVbmljb2RlX0tJTkQocmVwcik7CisgICAgb2RhdGEgPSBQeVVuaWNvZGVfREFUQShyZXByKTsKKworICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIDAsIHF1b3RlKTsKKyAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvc2l6ZS0xLCBxdW90ZSk7CisKKyAgICBmb3IgKGkgPSAwLCBvID0gMTsgaSA8IGlzaXplOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGlraW5kLCBpZGF0YSwgaSk7CiAKICAgICAgICAgLyogRXNjYXBlIHF1b3RlcyBhbmQgYmFja3NsYXNoZXMgKi8KLSAgICAgICAgaWYgKChjaCA9PSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXByKVswXSkgfHwgKGNoID09ICdcXCcpKSB7Ci0gICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICpwKysgPSBjaDsKKyAgICAgICAgaWYgKChjaCA9PSBxdW90ZSkgfHwgKGNoID09ICdcXCcpKSB7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssICdcXCcpOworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBjaCk7CiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIE1hcCBzcGVjaWFsIHdoaXRlc3BhY2UgdG8gJ1x0JywgXG4nLCAnXHInICovCiAgICAgICAgIGlmIChjaCA9PSAnXHQnKSB7Ci0gICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICpwKysgPSAndCc7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssICdcXCcpOworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAndCcpOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgaWYgKGNoID09ICdcbicpIHsKLSAgICAgICAgICAgICpwKysgPSAnXFwnOwotICAgICAgICAgICAgKnArKyA9ICduJzsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgJ1xcJyk7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssICduJyk7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAoY2ggPT0gJ1xyJykgewotICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAqcCsrID0gJ3InOworICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAnXFwnKTsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgJ3InKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIE1hcCBub24tcHJpbnRhYmxlIFVTIEFTQ0lJIHRvICdceGhoJyAqLwogICAgICAgICBlbHNlIGlmIChjaCA8ICcgJyB8fCBjaCA9PSAweDdGKSB7Ci0gICAgICAgICAgICAqcCsrID0gJ1xcJzsKLSAgICAgICAgICAgICpwKysgPSAneCc7Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyhjaCA+PiA0KSAmIDB4MDAwRl07Ci0gICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW2NoICYgMHgwMDBGXTsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgJ1xcJyk7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssICd4Jyk7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1soY2ggPj4gNCkgJiAweDAwMEZdKTsKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgUHlfaGV4ZGlnaXRzW2NoICYgMHgwMDBGXSk7CiAgICAgICAgIH0KIAogICAgICAgICAvKiBDb3B5IEFTQ0lJIGNoYXJhY3RlcnMgYXMtaXMgKi8KICAgICAgICAgZWxzZSBpZiAoY2ggPCAweDdGKSB7Ci0gICAgICAgICAgICAqcCsrID0gY2g7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIGNoKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIE5vbi1BU0NJSSBjaGFyYWN0ZXJzICovCiAgICAgICAgIGVsc2UgewotICAgICAgICAgICAgUHlfVUNTNCB1Y3MgPSBjaDsKLQotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgIFB5X1VOSUNPREUgY2gyID0gMDsKLSAgICAgICAgICAgIC8qIEdldCBjb2RlIHBvaW50IGZyb20gc3Vycm9nYXRlIHBhaXIgKi8KLSAgICAgICAgICAgIGlmIChzaXplID4gMCkgewotICAgICAgICAgICAgICAgIGNoMiA9ICpzOwotICAgICAgICAgICAgICAgIGlmIChjaCA+PSAweEQ4MDAgJiYgY2ggPCAweERDMDAgJiYgY2gyID49IDB4REMwMAotICAgICAgICAgICAgICAgICAgICAmJiBjaDIgPD0gMHhERkZGKSB7Ci0gICAgICAgICAgICAgICAgICAgIHVjcyA9ICgoKGNoICYgMHgwM0ZGKSA8PCAxMCkgfCAoY2gyICYgMHgwM0ZGKSkKLSAgICAgICAgICAgICAgICAgICAgICAgICsgMHgwMDAxMDAwMDsKLSAgICAgICAgICAgICAgICAgICAgcysrOwotICAgICAgICAgICAgICAgICAgICBzaXplLS07Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotI2VuZGlmCiAgICAgICAgICAgICAvKiBNYXAgVW5pY29kZSB3aGl0ZXNwYWNlIGFuZCBjb250cm9sIGNoYXJhY3RlcnMKICAgICAgICAgICAgICAgIChjYXRlZ29yaWVzIFoqIGFuZCBDKiBleGNlcHQgQVNDSUkgc3BhY2UpCiAgICAgICAgICAgICAqLwotICAgICAgICAgICAgaWYgKCFQeV9VTklDT0RFX0lTUFJJTlRBQkxFKHVjcykpIHsKKyAgICAgICAgICAgIGlmICghUHlfVU5JQ09ERV9JU1BSSU5UQUJMRShjaCkpIHsKICAgICAgICAgICAgICAgICAvKiBNYXAgOC1iaXQgY2hhcmFjdGVycyB0byAnXHhoaCcgKi8KLSAgICAgICAgICAgICAgICBpZiAodWNzIDw9IDB4ZmYpIHsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSAneCc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKGNoID4+IDQpICYgMHgwMDBGXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1tjaCAmIDB4MDAwRl07CisgICAgICAgICAgICAgICAgaWYgKGNoIDw9IDB4ZmYpIHsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAnXFwnKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAneCcpOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1soY2ggPj4gNCkgJiAweDAwMEZdKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBQeV9oZXhkaWdpdHNbY2ggJiAweDAwMEZdKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgLyogTWFwIDIxLWJpdCBjaGFyYWN0ZXJzIHRvICdcVTAweHh4eHh4JyAqLwotICAgICAgICAgICAgICAgIGVsc2UgaWYgKHVjcyA+PSAweDEwMDAwKSB7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSAnXFwnOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gJ1UnOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMjgpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAyNCkgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDIwKSAmIDB4MDAwMDAwMEZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gMTYpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAxMikgJiAweDAwMDAwMDBGXTsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGhleGRpZ2l0c1sodWNzID4+IDgpICYgMHgwMDAwMDAwRl07Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiA0KSAmIDB4MDAwMDAwMEZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW3VjcyAmIDB4MDAwMDAwMEZdOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKGNoID49IDB4MTAwMDApIHsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAnXFwnKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCAnVScpOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1soY2ggPj4gMjgpICYgMHhGXSk7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgUHlfaGV4ZGlnaXRzWyhjaCA+PiAyNCkgJiAweEZdKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBQeV9oZXhkaWdpdHNbKGNoID4+IDIwKSAmIDB4Rl0pOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1soY2ggPj4gMTYpICYgMHhGXSk7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgUHlfaGV4ZGlnaXRzWyhjaCA+PiAxMikgJiAweEZdKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBQeV9oZXhkaWdpdHNbKGNoID4+IDgpICYgMHhGXSk7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgUHlfaGV4ZGlnaXRzWyhjaCA+PiA0KSAmIDB4Rl0pOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1tjaCAmIDB4Rl0pOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAvKiBNYXAgMTYtYml0IGNoYXJhY3RlcnMgdG8gJ1x1eHh4eCcgKi8KICAgICAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9ICdcXCc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSAndSc7Ci0gICAgICAgICAgICAgICAgICAgICpwKysgPSBoZXhkaWdpdHNbKHVjcyA+PiAxMikgJiAweDAwMEZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gOCkgJiAweDAwMEZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzWyh1Y3MgPj4gNCkgJiAweDAwMEZdOwotICAgICAgICAgICAgICAgICAgICAqcCsrID0gaGV4ZGlnaXRzW3VjcyAmIDB4MDAwRl07CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgJ1xcJyk7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgJ3UnKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBQeV9oZXhkaWdpdHNbKGNoID4+IDEyKSAmIDB4Rl0pOworICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUob2tpbmQsIG9kYXRhLCBvKyssIFB5X2hleGRpZ2l0c1soY2ggPj4gOCkgJiAweEZdKTsKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKG9raW5kLCBvZGF0YSwgbysrLCBQeV9oZXhkaWdpdHNbKGNoID4+IDQpICYgMHhGXSk7CisgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgUHlfaGV4ZGlnaXRzW2NoICYgMHhGXSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAgICAgLyogQ29weSBjaGFyYWN0ZXJzIGFzLWlzICovCiAgICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAqcCsrID0gY2g7Ci0jaWZuZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgICAgIGlmICh1Y3MgPj0gMHgxMDAwMCkKLSAgICAgICAgICAgICAgICAgICAgKnArKyA9IGNoMjsKLSNlbmRpZgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShva2luZCwgb2RhdGEsIG8rKywgY2gpOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQotICAgIC8qIEFkZCBxdW90ZSAqLwotICAgICpwKysgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXByKVswXTsKLQotICAgICpwID0gJ1wwJzsKLSAgICBQeVVuaWNvZGVfUmVzaXplKCZyZXByLCBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVwcikpOworICAgIC8qIENsb3NpbmcgcXVvdGUgYWxyZWFkeSBhZGRlZCBhdCB0aGUgYmVnaW5uaW5nICovCisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeShyZXByLCAxKSk7CiAgICAgcmV0dXJuIHJlcHI7CiB9CiAKQEAgLTg1NjAsOSArMTIyNzcsOSBAQAogUmV0dXJuIC0xIG9uIGZhaWx1cmUuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX3JmaW5kKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX3JmaW5kKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnN1YnN0cmluZzsKKyAgICBQeU9iamVjdCAqc3Vic3RyaW5nOwogICAgIFB5X3NzaXplX3Qgc3RhcnQ7CiAgICAgUHlfc3NpemVfdCBlbmQ7CiAgICAgUHlfc3NpemVfdCByZXN1bHQ7CkBAIC04NTcxLDE0ICsxMjI4OCwxOCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnQsICZlbmQpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJlc3VsdCA9IHN0cmluZ2xpYl9yZmluZF9zbGljZSgKLSAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZiksIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSwKLSAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUoc3Vic3RyaW5nKSwgUHlVbmljb2RlX0dFVF9TSVpFKHN1YnN0cmluZyksCi0gICAgICAgIHN0YXJ0LCBlbmQKLSAgICAgICAgKTsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHN1YnN0cmluZykgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgcmVzdWx0ID0gYW55X2ZpbmRfc2xpY2UoLTEsIHNlbGYsIHN1YnN0cmluZywgc3RhcnQsIGVuZCk7CiAKICAgICBQeV9ERUNSRUYoc3Vic3RyaW5nKTsKIAorICAgIGlmIChyZXN1bHQgPT0gLTIpCisgICAgICAgIHJldHVybiBOVUxMOworCiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdChyZXN1bHQpOwogfQogCkBAIC04NTg4LDkgKzEyMzA5LDkgQEAKIExpa2UgUy5yZmluZCgpIGJ1dCByYWlzZSBWYWx1ZUVycm9yIHdoZW4gdGhlIHN1YnN0cmluZyBpcyBub3QgZm91bmQuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX3JpbmRleChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9yaW5kZXgoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5VW5pY29kZU9iamVjdCAqc3Vic3RyaW5nOworICAgIFB5T2JqZWN0ICpzdWJzdHJpbmc7CiAgICAgUHlfc3NpemVfdCBzdGFydDsKICAgICBQeV9zc2l6ZV90IGVuZDsKICAgICBQeV9zc2l6ZV90IHJlc3VsdDsKQEAgLTg1OTksMTggKzEyMzIwLDIzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdGFydCwgJmVuZCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgcmVzdWx0ID0gc3RyaW5nbGliX3JmaW5kX3NsaWNlKAotICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKSwgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpLAotICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdWJzdHJpbmcpLCBQeVVuaWNvZGVfR0VUX1NJWkUoc3Vic3RyaW5nKSwKLSAgICAgICAgc3RhcnQsIGVuZAotICAgICAgICApOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc3Vic3RyaW5nKSA9PSAtMSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXN1bHQgPSBhbnlfZmluZF9zbGljZSgtMSwgc2VsZiwgc3Vic3RyaW5nLCBzdGFydCwgZW5kKTsKIAogICAgIFB5X0RFQ1JFRihzdWJzdHJpbmcpOwogCisgICAgaWYgKHJlc3VsdCA9PSAtMikKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBpZiAocmVzdWx0IDwgMCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgInN1YnN0cmluZyBub3QgZm91bmQiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorCiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdChyZXN1bHQpOwogfQogCkBAIC04NjIxLDI1ICsxMjM0NywyNSBAQAogZG9uZSB1c2luZyB0aGUgc3BlY2lmaWVkIGZpbGwgY2hhcmFjdGVyIChkZWZhdWx0IGlzIGEgc3BhY2UpLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9yanVzdChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9yanVzdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlfc3NpemVfdCB3aWR0aDsKLSAgICBQeV9VTklDT0RFIGZpbGxjaGFyID0gJyAnOworICAgIFB5X1VDUzQgZmlsbGNoYXIgPSAnICc7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIm58TyY6cmp1c3QiLCAmd2lkdGgsIGNvbnZlcnRfdWMsICZmaWxsY2hhcikpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKHNlbGYtPmxlbmd0aCA+PSB3aWR0aCAmJiBQeVVuaWNvZGVfQ2hlY2tFeGFjdChzZWxmKSkgewotICAgICAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgICAgIHJldHVybiAoUHlPYmplY3QqKSBzZWxmOwotICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJldHVybiAoUHlPYmplY3QqKSBwYWQoc2VsZiwgd2lkdGggLSBzZWxmLT5sZW5ndGgsIDAsIGZpbGxjaGFyKTsKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZikgPj0gd2lkdGgpCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CisKKyAgICByZXR1cm4gcGFkKHNlbGYsIHdpZHRoIC0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZiksIDAsIGZpbGxjaGFyKTsKIH0KIAotUHlPYmplY3QgKlB5VW5pY29kZV9TcGxpdChQeU9iamVjdCAqcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnNlcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBtYXhzcGxpdCkKK1B5T2JqZWN0ICoKK1B5VW5pY29kZV9TcGxpdChQeU9iamVjdCAqcywgUHlPYmplY3QgKnNlcCwgUHlfc3NpemVfdCBtYXhzcGxpdCkKIHsKICAgICBQeU9iamVjdCAqcmVzdWx0OwogCkBAIC04NjU0LDcgKzEyMzgwLDcgQEAKICAgICAgICAgfQogICAgIH0KIAotICAgIHJlc3VsdCA9IHNwbGl0KChQeVVuaWNvZGVPYmplY3QgKilzLCAoUHlVbmljb2RlT2JqZWN0ICopc2VwLCBtYXhzcGxpdCk7CisgICAgcmVzdWx0ID0gc3BsaXQocywgc2VwLCBtYXhzcGxpdCk7CiAKICAgICBQeV9ERUNSRUYocyk7CiAgICAgUHlfWERFQ1JFRihzZXApOwpAQCAtODY3MSw3ICsxMjM5Nyw3IEBACiByZW1vdmVkIGZyb20gdGhlIHJlc3VsdC4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9zcGxpdChQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQordW5pY29kZV9zcGxpdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKnN1YnN0cmluZyA9IFB5X05vbmU7CiAgICAgUHlfc3NpemVfdCBtYXhjb3VudCA9IC0xOwpAQCAtODY4Miw5ICsxMjQwOCw5IEBACiAgICAgaWYgKHN1YnN0cmluZyA9PSBQeV9Ob25lKQogICAgICAgICByZXR1cm4gc3BsaXQoc2VsZiwgTlVMTCwgbWF4Y291bnQpOwogICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjayhzdWJzdHJpbmcpKQotICAgICAgICByZXR1cm4gc3BsaXQoc2VsZiwgKFB5VW5pY29kZU9iamVjdCAqKXN1YnN0cmluZywgbWF4Y291bnQpOworICAgICAgICByZXR1cm4gc3BsaXQoc2VsZiwgc3Vic3RyaW5nLCBtYXhjb3VudCk7CiAgICAgZWxzZQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX1NwbGl0KChQeU9iamVjdCAqKXNlbGYsIHN1YnN0cmluZywgbWF4Y291bnQpOworICAgICAgICByZXR1cm4gUHlVbmljb2RlX1NwbGl0KHNlbGYsIHN1YnN0cmluZywgbWF4Y291bnQpOwogfQogCiBQeU9iamVjdCAqCkBAIC04NjkzLDYgKzEyNDE5LDkgQEAKICAgICBQeU9iamVjdCogc3RyX29iajsKICAgICBQeU9iamVjdCogc2VwX29iajsKICAgICBQeU9iamVjdCogb3V0OworICAgIGludCBraW5kMSwga2luZDIsIGtpbmQ7CisgICAgdm9pZCAqYnVmMSA9IE5VTEwsICpidWYyID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGxlbjEsIGxlbjI7CiAKICAgICBzdHJfb2JqID0gUHlVbmljb2RlX0Zyb21PYmplY3Qoc3RyX2luKTsKICAgICBpZiAoIXN0cl9vYmopCkBAIC04NzAyLDE2ICsxMjQzMSw2MiBAQAogICAgICAgICBQeV9ERUNSRUYoc3RyX29iaik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlcF9vYmopID09IC0xIHx8IFB5VW5pY29kZV9SRUFEWShzdHJfb2JqKSA9PSAtMSkgeworICAgICAgICBQeV9ERUNSRUYoc2VwX29iaik7CisgICAgICAgIFB5X0RFQ1JFRihzdHJfb2JqKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQogCi0gICAgb3V0ID0gc3RyaW5nbGliX3BhcnRpdGlvbigKLSAgICAgICAgc3RyX29iaiwgUHlVbmljb2RlX0FTX1VOSUNPREUoc3RyX29iaiksIFB5VW5pY29kZV9HRVRfU0laRShzdHJfb2JqKSwKLSAgICAgICAgc2VwX29iaiwgUHlVbmljb2RlX0FTX1VOSUNPREUoc2VwX29iaiksIFB5VW5pY29kZV9HRVRfU0laRShzZXBfb2JqKQotICAgICAgICApOworICAgIGtpbmQxID0gUHlVbmljb2RlX0tJTkQoc3RyX29iaik7CisgICAga2luZDIgPSBQeVVuaWNvZGVfS0lORChzZXBfb2JqKTsKKyAgICBraW5kID0gUHlfTUFYKGtpbmQxLCBraW5kMik7CisgICAgYnVmMSA9IFB5VW5pY29kZV9EQVRBKHN0cl9vYmopOworICAgIGlmIChraW5kMSAhPSBraW5kKQorICAgICAgICBidWYxID0gX1B5VW5pY29kZV9Bc0tpbmQoc3RyX29iaiwga2luZCk7CisgICAgaWYgKCFidWYxKQorICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgYnVmMiA9IFB5VW5pY29kZV9EQVRBKHNlcF9vYmopOworICAgIGlmIChraW5kMiAhPSBraW5kKQorICAgICAgICBidWYyID0gX1B5VW5pY29kZV9Bc0tpbmQoc2VwX29iaiwga2luZCk7CisgICAgaWYgKCFidWYyKQorICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgbGVuMSA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHN0cl9vYmopOworICAgIGxlbjIgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZXBfb2JqKTsKKworICAgIHN3aXRjaCAoUHlVbmljb2RlX0tJTkQoc3RyX29iaikpIHsKKyAgICBjYXNlIFB5VW5pY29kZV8xQllURV9LSU5EOgorICAgICAgICBpZiAoUHlVbmljb2RlX0lTX0FTQ0lJKHN0cl9vYmopICYmIFB5VW5pY29kZV9JU19BU0NJSShzZXBfb2JqKSkKKyAgICAgICAgICAgIG91dCA9IGFzY2lpbGliX3BhcnRpdGlvbihzdHJfb2JqLCBidWYxLCBsZW4xLCBzZXBfb2JqLCBidWYyLCBsZW4yKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgb3V0ID0gdWNzMWxpYl9wYXJ0aXRpb24oc3RyX29iaiwgYnVmMSwgbGVuMSwgc2VwX29iaiwgYnVmMiwgbGVuMik7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIG91dCA9IHVjczJsaWJfcGFydGl0aW9uKHN0cl9vYmosIGJ1ZjEsIGxlbjEsIHNlcF9vYmosIGJ1ZjIsIGxlbjIpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFB5VW5pY29kZV80QllURV9LSU5EOgorICAgICAgICBvdXQgPSB1Y3M0bGliX3BhcnRpdGlvbihzdHJfb2JqLCBidWYxLCBsZW4xLCBzZXBfb2JqLCBidWYyLCBsZW4yKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYXNzZXJ0KDApOworICAgICAgICBvdXQgPSAwOworICAgIH0KIAogICAgIFB5X0RFQ1JFRihzZXBfb2JqKTsKICAgICBQeV9ERUNSRUYoc3RyX29iaik7CisgICAgaWYgKGtpbmQxICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMSk7CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMik7CiAKICAgICByZXR1cm4gb3V0OworICBvbkVycm9yOgorICAgIFB5X0RFQ1JFRihzZXBfb2JqKTsKKyAgICBQeV9ERUNSRUYoc3RyX29iaik7CisgICAgaWYgKGtpbmQxICE9IGtpbmQgJiYgYnVmMSkKKyAgICAgICAgUHlNZW1fRnJlZShidWYxKTsKKyAgICBpZiAoa2luZDIgIT0ga2luZCAmJiBidWYyKQorICAgICAgICBQeU1lbV9GcmVlKGJ1ZjIpOworICAgIHJldHVybiBOVUxMOwogfQogCiAKQEAgLTg3MjEsNiArMTI0OTYsOSBAQAogICAgIFB5T2JqZWN0KiBzdHJfb2JqOwogICAgIFB5T2JqZWN0KiBzZXBfb2JqOwogICAgIFB5T2JqZWN0KiBvdXQ7CisgICAgaW50IGtpbmQxLCBraW5kMiwga2luZDsKKyAgICB2b2lkICpidWYxID0gTlVMTCwgKmJ1ZjIgPSBOVUxMOworICAgIFB5X3NzaXplX3QgbGVuMSwgbGVuMjsKIAogICAgIHN0cl9vYmogPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdHJfaW4pOwogICAgIGlmICghc3RyX29iaikKQEAgLTg3MzEsMTUgKzEyNTA5LDU2IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIG91dCA9IHN0cmluZ2xpYl9ycGFydGl0aW9uKAotICAgICAgICBzdHJfb2JqLCBQeVVuaWNvZGVfQVNfVU5JQ09ERShzdHJfb2JqKSwgUHlVbmljb2RlX0dFVF9TSVpFKHN0cl9vYmopLAotICAgICAgICBzZXBfb2JqLCBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZXBfb2JqKSwgUHlVbmljb2RlX0dFVF9TSVpFKHNlcF9vYmopCi0gICAgICAgICk7CisgICAga2luZDEgPSBQeVVuaWNvZGVfS0lORChzdHJfaW4pOworICAgIGtpbmQyID0gUHlVbmljb2RlX0tJTkQoc2VwX29iaik7CisgICAga2luZCA9IFB5X01BWChraW5kMSwga2luZDIpOworICAgIGJ1ZjEgPSBQeVVuaWNvZGVfREFUQShzdHJfaW4pOworICAgIGlmIChraW5kMSAhPSBraW5kKQorICAgICAgICBidWYxID0gX1B5VW5pY29kZV9Bc0tpbmQoc3RyX2luLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjEpCisgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICBidWYyID0gUHlVbmljb2RlX0RBVEEoc2VwX29iaik7CisgICAgaWYgKGtpbmQyICE9IGtpbmQpCisgICAgICAgIGJ1ZjIgPSBfUHlVbmljb2RlX0FzS2luZChzZXBfb2JqLCBraW5kKTsKKyAgICBpZiAoIWJ1ZjIpCisgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICBsZW4xID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc3RyX29iaik7CisgICAgbGVuMiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlcF9vYmopOworCisgICAgc3dpdGNoIChQeVVuaWNvZGVfS0lORChzdHJfaW4pKSB7CisgICAgY2FzZSBQeVVuaWNvZGVfMUJZVEVfS0lORDoKKyAgICAgICAgaWYgKFB5VW5pY29kZV9JU19BU0NJSShzdHJfb2JqKSAmJiBQeVVuaWNvZGVfSVNfQVNDSUkoc2VwX29iaikpCisgICAgICAgICAgICBvdXQgPSBhc2NpaWxpYl9ycGFydGl0aW9uKHN0cl9vYmosIGJ1ZjEsIGxlbjEsIHNlcF9vYmosIGJ1ZjIsIGxlbjIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBvdXQgPSB1Y3MxbGliX3JwYXJ0aXRpb24oc3RyX29iaiwgYnVmMSwgbGVuMSwgc2VwX29iaiwgYnVmMiwgbGVuMik7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgUHlVbmljb2RlXzJCWVRFX0tJTkQ6CisgICAgICAgIG91dCA9IHVjczJsaWJfcnBhcnRpdGlvbihzdHJfb2JqLCBidWYxLCBsZW4xLCBzZXBfb2JqLCBidWYyLCBsZW4yKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBQeVVuaWNvZGVfNEJZVEVfS0lORDoKKyAgICAgICAgb3V0ID0gdWNzNGxpYl9ycGFydGl0aW9uKHN0cl9vYmosIGJ1ZjEsIGxlbjEsIHNlcF9vYmosIGJ1ZjIsIGxlbjIpOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICBhc3NlcnQoMCk7CisgICAgICAgIG91dCA9IDA7CisgICAgfQogCiAgICAgUHlfREVDUkVGKHNlcF9vYmopOwogICAgIFB5X0RFQ1JFRihzdHJfb2JqKTsKKyAgICBpZiAoa2luZDEgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYxKTsKKyAgICBpZiAoa2luZDIgIT0ga2luZCkKKyAgICAgICAgUHlNZW1fRnJlZShidWYyKTsKIAogICAgIHJldHVybiBvdXQ7CisgIG9uRXJyb3I6CisgICAgUHlfREVDUkVGKHNlcF9vYmopOworICAgIFB5X0RFQ1JFRihzdHJfb2JqKTsKKyAgICBpZiAoa2luZDEgIT0ga2luZCAmJiBidWYxKQorICAgICAgICBQeU1lbV9GcmVlKGJ1ZjEpOworICAgIGlmIChraW5kMiAhPSBraW5kICYmIGJ1ZjIpCisgICAgICAgIFB5TWVtX0ZyZWUoYnVmMik7CisgICAgcmV0dXJuIE5VTEw7CiB9CiAKIFB5RG9jX1NUUlZBUihwYXJ0aXRpb25fX2RvY19fLApAQCAtODc1MCw5ICsxMjU2OSw5IEBACiBmb3VuZCwgcmV0dXJuIFMgYW5kIHR3byBlbXB0eSBzdHJpbmdzLiIpOwogCiBzdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX3BhcnRpdGlvbihQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpzZXBhcmF0b3IpCit1bmljb2RlX3BhcnRpdGlvbihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnNlcGFyYXRvcikKIHsKLSAgICByZXR1cm4gUHlVbmljb2RlX1BhcnRpdGlvbigoUHlPYmplY3QgKilzZWxmLCBzZXBhcmF0b3IpOworICAgIHJldHVybiBQeVVuaWNvZGVfUGFydGl0aW9uKHNlbGYsIHNlcGFyYXRvcik7CiB9CiAKIFB5RG9jX1NUUlZBUihycGFydGl0aW9uX19kb2NfXywKQEAgLTg3NjMsMTQgKzEyNTgyLDEzIEBACiBzZXBhcmF0b3IgaXMgbm90IGZvdW5kLCByZXR1cm4gdHdvIGVtcHR5IHN0cmluZ3MgYW5kIFMuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfcnBhcnRpdGlvbihQeVVuaWNvZGVPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpzZXBhcmF0b3IpCit1bmljb2RlX3JwYXJ0aXRpb24oUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICpzZXBhcmF0b3IpCiB7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9SUGFydGl0aW9uKChQeU9iamVjdCAqKXNlbGYsIHNlcGFyYXRvcik7CisgICAgcmV0dXJuIFB5VW5pY29kZV9SUGFydGl0aW9uKHNlbGYsIHNlcGFyYXRvcik7CiB9CiAKLVB5T2JqZWN0ICpQeVVuaWNvZGVfUlNwbGl0KFB5T2JqZWN0ICpzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnNlcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbWF4c3BsaXQpCitQeU9iamVjdCAqCitQeVVuaWNvZGVfUlNwbGl0KFB5T2JqZWN0ICpzLCBQeU9iamVjdCAqc2VwLCBQeV9zc2l6ZV90IG1heHNwbGl0KQogewogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAKQEAgLTg3ODUsNyArMTI2MDMsNyBAQAogICAgICAgICB9CiAgICAgfQogCi0gICAgcmVzdWx0ID0gcnNwbGl0KChQeVVuaWNvZGVPYmplY3QgKilzLCAoUHlVbmljb2RlT2JqZWN0ICopc2VwLCBtYXhzcGxpdCk7CisgICAgcmVzdWx0ID0gcnNwbGl0KHMsIHNlcCwgbWF4c3BsaXQpOwogCiAgICAgUHlfREVDUkVGKHMpOwogICAgIFB5X1hERUNSRUYoc2VwKTsKQEAgLTg4MDIsNyArMTI2MjAsNyBAQAogaXMgYSBzZXBhcmF0b3IuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfcnNwbGl0KFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX3JzcGxpdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKnN1YnN0cmluZyA9IFB5X05vbmU7CiAgICAgUHlfc3NpemVfdCBtYXhjb3VudCA9IC0xOwpAQCAtODgxMyw5ICsxMjYzMSw5IEBACiAgICAgaWYgKHN1YnN0cmluZyA9PSBQeV9Ob25lKQogICAgICAgICByZXR1cm4gcnNwbGl0KHNlbGYsIE5VTEwsIG1heGNvdW50KTsKICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2soc3Vic3RyaW5nKSkKLSAgICAgICAgcmV0dXJuIHJzcGxpdChzZWxmLCAoUHlVbmljb2RlT2JqZWN0ICopc3Vic3RyaW5nLCBtYXhjb3VudCk7CisgICAgICAgIHJldHVybiByc3BsaXQoc2VsZiwgc3Vic3RyaW5nLCBtYXhjb3VudCk7CiAgICAgZWxzZQotICAgICAgICByZXR1cm4gUHlVbmljb2RlX1JTcGxpdCgoUHlPYmplY3QgKilzZWxmLCBzdWJzdHJpbmcsIG1heGNvdW50KTsKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9SU3BsaXQoc2VsZiwgc3Vic3RyaW5nLCBtYXhjb3VudCk7CiB9CiAKIFB5RG9jX1NUUlZBUihzcGxpdGxpbmVzX19kb2NfXywKQEAgLTg4MjYsMjYgKzEyNjQ0LDIyIEBACiBpcyBnaXZlbiBhbmQgdHJ1ZS4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9zcGxpdGxpbmVzKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX3NwbGl0bGluZXMoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKKyAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7ImtlZXBlbmRzIiwgMH07CiAgICAgaW50IGtlZXBlbmRzID0gMDsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAifGk6c3BsaXRsaW5lcyIsICZrZWVwZW5kcykpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInxpOnNwbGl0bGluZXMiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGt3bGlzdCwgJmtlZXBlbmRzKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZXR1cm4gUHlVbmljb2RlX1NwbGl0bGluZXMoKFB5T2JqZWN0ICopc2VsZiwga2VlcGVuZHMpOworICAgIHJldHVybiBQeVVuaWNvZGVfU3BsaXRsaW5lcyhzZWxmLCBrZWVwZW5kcyk7CiB9CiAKIHN0YXRpYwogUHlPYmplY3QgKnVuaWNvZGVfc3RyKFB5T2JqZWN0ICpzZWxmKQogewotICAgIGlmIChQeVVuaWNvZGVfQ2hlY2tFeGFjdChzZWxmKSkgewotICAgICAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgICAgIHJldHVybiBzZWxmOwotICAgIH0gZWxzZQotICAgICAgICAvKiBTdWJ0eXBlIC0tIHJldHVybiBnZW51aW5lIHVuaWNvZGUgc3RyaW5nIHdpdGggdGhlIHNhbWUgdmFsdWUuICovCi0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoUHlVbmljb2RlX0FTX1VOSUNPREUoc2VsZiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9TSVpFKHNlbGYpKTsKKyAgICByZXR1cm4gdW5pY29kZV9yZXN1bHRfdW5jaGFuZ2VkKHNlbGYpOwogfQogCiBQeURvY19TVFJWQVIoc3dhcGNhc2VfX2RvY19fLApAQCAtODg1NSw5ICsxMjY2OSwxMSBAQAogYW5kIHZpY2UgdmVyc2EuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfc3dhcGNhc2UoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV9zd2FwY2FzZShQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZXR1cm4gZml4dXAoc2VsZiwgZml4c3dhcGNhc2UpOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJldHVybiBjYXNlX29wZXJhdGlvbihzZWxmLCBkb19zd2FwY2FzZSk7CiB9CiAKIFB5RG9jX1NUUlZBUihtYWtldHJhbnNfX2RvY19fLApAQCAtODg3Myw3ICsxMjY4OSw3IEBACiBtdXN0IGJlIGEgc3RyaW5nLCB3aG9zZSBjaGFyYWN0ZXJzIHdpbGwgYmUgbWFwcGVkIHRvIE5vbmUgaW4gdGhlIHJlc3VsdC4iKTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9tYWtldHJhbnMoUHlVbmljb2RlT2JqZWN0ICpudWxsLCBQeU9iamVjdCAqYXJncykKK3VuaWNvZGVfbWFrZXRyYW5zKFB5T2JqZWN0ICpudWxsLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBQeU9iamVjdCAqeCwgKnkgPSBOVUxMLCAqeiA9IE5VTEw7CiAgICAgUHlPYmplY3QgKm5ldyA9IE5VTEwsICprZXksICp2YWx1ZTsKQEAgLTg4ODYsMjQgKzEyNzAyLDMwIEBACiAgICAgaWYgKCFuZXcpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmICh5ICE9IE5VTEwpIHsKKyAgICAgICAgaW50IHhfa2luZCwgeV9raW5kLCB6X2tpbmQ7CisgICAgICAgIHZvaWQgKnhfZGF0YSwgKnlfZGF0YSwgKnpfZGF0YTsKKwogICAgICAgICAvKiB4IG11c3QgYmUgYSBzdHJpbmcgdG9vLCBvZiBlcXVhbCBsZW5ndGggKi8KLSAgICAgICAgUHlfc3NpemVfdCB5bGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHkpOwogICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh4KSkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImZpcnN0IG1ha2V0cmFucyBhcmd1bWVudCBtdXN0ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYmUgYSBzdHJpbmcgaWYgdGhlcmUgaXMgYSBzZWNvbmQgYXJndW1lbnQiKTsKICAgICAgICAgICAgIGdvdG8gZXJyOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUoeCkgIT0geWxlbikgeworICAgICAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoeCkgIT0gUHlVbmljb2RlX0dFVF9MRU5HVEgoeSkpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAidGhlIGZpcnN0IHR3byBtYWtldHJhbnMgIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudHMgbXVzdCBoYXZlIGVxdWFsIGxlbmd0aCIpOwogICAgICAgICAgICAgZ290byBlcnI7CiAgICAgICAgIH0KICAgICAgICAgLyogY3JlYXRlIGVudHJpZXMgZm9yIHRyYW5zbGF0aW5nIGNoYXJzIGluIHggdG8gdGhvc2UgaW4geSAqLwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlVbmljb2RlX0dFVF9TSVpFKHgpOyBpKyspIHsKLSAgICAgICAgICAgIGtleSA9IFB5TG9uZ19Gcm9tTG9uZyhQeVVuaWNvZGVfQVNfVU5JQ09ERSh4KVtpXSk7CisgICAgICAgIHhfa2luZCA9IFB5VW5pY29kZV9LSU5EKHgpOworICAgICAgICB5X2tpbmQgPSBQeVVuaWNvZGVfS0lORCh5KTsKKyAgICAgICAgeF9kYXRhID0gUHlVbmljb2RlX0RBVEEoeCk7CisgICAgICAgIHlfZGF0YSA9IFB5VW5pY29kZV9EQVRBKHkpOworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlVbmljb2RlX0dFVF9MRU5HVEgoeCk7IGkrKykgeworICAgICAgICAgICAga2V5ID0gUHlMb25nX0Zyb21Mb25nKFB5VW5pY29kZV9SRUFEKHhfa2luZCwgeF9kYXRhLCBpKSk7CiAgICAgICAgICAgICBpZiAoIWtleSkKICAgICAgICAgICAgICAgICBnb3RvIGVycjsKLSAgICAgICAgICAgIHZhbHVlID0gUHlMb25nX0Zyb21Mb25nKFB5VW5pY29kZV9BU19VTklDT0RFKHkpW2ldKTsKKyAgICAgICAgICAgIHZhbHVlID0gUHlMb25nX0Zyb21Mb25nKFB5VW5pY29kZV9SRUFEKHlfa2luZCwgeV9kYXRhLCBpKSk7CiAgICAgICAgICAgICBpZiAoIXZhbHVlKSB7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKGtleSk7CiAgICAgICAgICAgICAgICAgZ290byBlcnI7CkBAIC04OTE2LDggKzEyNzM4LDEwIEBACiAgICAgICAgIH0KICAgICAgICAgLyogY3JlYXRlIGVudHJpZXMgZm9yIGRlbGV0aW5nIGNoYXJzIGluIHogKi8KICAgICAgICAgaWYgKHogIT0gTlVMTCkgewotICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IFB5VW5pY29kZV9HRVRfU0laRSh6KTsgaSsrKSB7Ci0gICAgICAgICAgICAgICAga2V5ID0gUHlMb25nX0Zyb21Mb25nKFB5VW5pY29kZV9BU19VTklDT0RFKHopW2ldKTsKKyAgICAgICAgICAgIHpfa2luZCA9IFB5VW5pY29kZV9LSU5EKHopOworICAgICAgICAgICAgel9kYXRhID0gUHlVbmljb2RlX0RBVEEoeik7CisgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlVbmljb2RlX0dFVF9MRU5HVEgoeik7IGkrKykgeworICAgICAgICAgICAgICAgIGtleSA9IFB5TG9uZ19Gcm9tTG9uZyhQeVVuaWNvZGVfUkVBRCh6X2tpbmQsIHpfZGF0YSwgaSkpOwogICAgICAgICAgICAgICAgIGlmICgha2V5KQogICAgICAgICAgICAgICAgICAgICBnb3RvIGVycjsKICAgICAgICAgICAgICAgICByZXMgPSBQeURpY3RfU2V0SXRlbShuZXcsIGtleSwgUHlfTm9uZSk7CkBAIC04OTI3LDYgKzEyNzUxLDkgQEAKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0gZWxzZSB7CisgICAgICAgIGludCBraW5kOworICAgICAgICB2b2lkICpkYXRhOworCiAgICAgICAgIC8qIHggbXVzdCBiZSBhIGRpY3QgKi8KICAgICAgICAgaWYgKCFQeURpY3RfQ2hlY2tFeGFjdCh4KSkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgImlmIHlvdSBnaXZlIG9ubHkgb25lIGFyZ3VtZW50ICIKQEAgLTg5MzgsMTIgKzEyNzY1LDE0IEBACiAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKGtleSkpIHsKICAgICAgICAgICAgICAgICAvKiBjb252ZXJ0IHN0cmluZyBrZXlzIHRvIGludGVnZXIga2V5cyAqLwogICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpuZXdrZXk7Ci0gICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9HRVRfU0laRShrZXkpICE9IDEpIHsKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoa2V5KSAhPSAxKSB7CiAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAic3RyaW5nIGtleXMgaW4gdHJhbnNsYXRlICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0YWJsZSBtdXN0IGJlIG9mIGxlbmd0aCAxIik7CiAgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBuZXdrZXkgPSBQeUxvbmdfRnJvbUxvbmcoUHlVbmljb2RlX0FTX1VOSUNPREUoa2V5KVswXSk7CisgICAgICAgICAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKGtleSk7CisgICAgICAgICAgICAgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKGtleSk7CisgICAgICAgICAgICAgICAgbmV3a2V5ID0gUHlMb25nX0Zyb21Mb25nKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIDApKTsKICAgICAgICAgICAgICAgICBpZiAoIW5ld2tleSkKICAgICAgICAgICAgICAgICAgICAgZ290byBlcnI7CiAgICAgICAgICAgICAgICAgcmVzID0gUHlEaWN0X1NldEl0ZW0obmV3LCBuZXdrZXksIHZhbHVlKTsKQEAgLTg5NzcsOSArMTI4MDYsOSBAQAogYXJlIGRlbGV0ZWQuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfdHJhbnNsYXRlKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnRhYmxlKQordW5pY29kZV90cmFuc2xhdGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICp0YWJsZSkKIHsKLSAgICByZXR1cm4gUHlVbmljb2RlX1RyYW5zbGF0ZUNoYXJtYXAoc2VsZi0+c3RyLCBzZWxmLT5sZW5ndGgsIHRhYmxlLCAiaWdub3JlIik7CisgICAgcmV0dXJuIF9QeVVuaWNvZGVfVHJhbnNsYXRlQ2hhcm1hcChzZWxmLCB0YWJsZSwgImlnbm9yZSIpOwogfQogCiBQeURvY19TVFJWQVIodXBwZXJfX2RvY19fLApAQCAtODk4OCw5ICsxMjgxNywxMyBAQAogUmV0dXJuIGEgY29weSBvZiBTIGNvbnZlcnRlZCB0byB1cHBlcmNhc2UuIik7CiAKIHN0YXRpYyBQeU9iamVjdCoKLXVuaWNvZGVfdXBwZXIoUHlVbmljb2RlT2JqZWN0ICpzZWxmKQordW5pY29kZV91cHBlcihQeU9iamVjdCAqc2VsZikKIHsKLSAgICByZXR1cm4gZml4dXAoc2VsZiwgZml4dXBwZXIpOworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoc2VsZikgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmIChQeVVuaWNvZGVfSVNfQVNDSUkoc2VsZikpCisgICAgICAgIHJldHVybiBhc2NpaV91cHBlcl9vcl9sb3dlcihzZWxmLCAwKTsKKyAgICByZXR1cm4gY2FzZV9vcGVyYXRpb24oc2VsZiwgZG9fdXBwZXIpOwogfQogCiBQeURvY19TVFJWQVIoemZpbGxfX2RvY19fLApAQCAtOTAwMCw1NSArMTI4MzMsNTAgQEAKIG9mIHRoZSBzcGVjaWZpZWQgd2lkdGguIFRoZSBzdHJpbmcgUyBpcyBuZXZlciB0cnVuY2F0ZWQuIik7CiAKIHN0YXRpYyBQeU9iamVjdCAqCi11bmljb2RlX3pmaWxsKFB5VW5pY29kZU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit1bmljb2RlX3pmaWxsKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKICAgICBQeV9zc2l6ZV90IGZpbGw7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICp1OwotCisgICAgUHlPYmplY3QgKnU7CiAgICAgUHlfc3NpemVfdCB3aWR0aDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIFB5X1VDUzQgY2hyOworCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJuOnpmaWxsIiwgJndpZHRoKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBpZiAoc2VsZi0+bGVuZ3RoID49IHdpZHRoKSB7Ci0gICAgICAgIGlmIChQeVVuaWNvZGVfQ2hlY2tFeGFjdChzZWxmKSkgewotICAgICAgICAgICAgUHlfSU5DUkVGKHNlbGYpOwotICAgICAgICAgICAgcmV0dXJuIChQeU9iamVjdCopIHNlbGY7Ci0gICAgICAgIH0KLSAgICAgICAgZWxzZQotICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKLSAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKSwKLSAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoc2VsZikKLSAgICAgICAgICAgICAgICApOwotICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGZpbGwgPSB3aWR0aCAtIHNlbGYtPmxlbmd0aDsKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZikgPj0gd2lkdGgpCisgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CisKKyAgICBmaWxsID0gd2lkdGggLSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzZWxmKTsKIAogICAgIHUgPSBwYWQoc2VsZiwgZmlsbCwgMCwgJzAnKTsKIAogICAgIGlmICh1ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaWYgKHUtPnN0cltmaWxsXSA9PSAnKycgfHwgdS0+c3RyW2ZpbGxdID09ICctJykgeworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh1KTsKKyAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEodSk7CisgICAgY2hyID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgZmlsbCk7CisKKyAgICBpZiAoY2hyID09ICcrJyB8fCBjaHIgPT0gJy0nKSB7CiAgICAgICAgIC8qIG1vdmUgc2lnbiB0byBiZWdpbm5pbmcgb2Ygc3RyaW5nICovCi0gICAgICAgIHUtPnN0clswXSA9IHUtPnN0cltmaWxsXTsKLSAgICAgICAgdS0+c3RyW2ZpbGxdID0gJzAnOworICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgMCwgY2hyKTsKKyAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIGZpbGwsICcwJyk7CiAgICAgfQogCi0gICAgcmV0dXJuIChQeU9iamVjdCopIHU7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1LCAxKSk7CisgICAgcmV0dXJuIHU7CiB9CiAKICNpZiAwCi1zdGF0aWMgUHlPYmplY3QqCi11bmljb2RlX2ZyZWVsaXN0c2l6ZShQeVVuaWNvZGVPYmplY3QgKnNlbGYpCi17Ci0gICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhudW1mcmVlKTsKLX0KLQogc3RhdGljIFB5T2JqZWN0ICoKIHVuaWNvZGVfX2RlY2ltYWwyYXNjaWkoUHlPYmplY3QgKnNlbGYpCiB7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsVG9BU0NJSShQeVVuaWNvZGVfQVNfVU5JQ09ERShzZWxmKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9UcmFuc2Zvcm1EZWNpbWFsQW5kU3BhY2VUb0FTQ0lJKHNlbGYpOwogfQogI2VuZGlmCiAKQEAgLTkwNjEsMTEgKzEyODg5LDExIEBACiBwcmVmaXggY2FuIGFsc28gYmUgYSB0dXBsZSBvZiBzdHJpbmdzIHRvIHRyeS4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfc3RhcnRzd2l0aChQeVVuaWNvZGVPYmplY3QgKnNlbGYsCit1bmljb2RlX3N0YXJ0c3dpdGgoUHlPYmplY3QgKnNlbGYsCiAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKnN1Ym9iajsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnN1YnN0cmluZzsKKyAgICBQeU9iamVjdCAqc3Vic3RyaW5nOwogICAgIFB5X3NzaXplX3Qgc3RhcnQgPSAwOwogICAgIFB5X3NzaXplX3QgZW5kID0gUFlfU1NJWkVfVF9NQVg7CiAgICAgaW50IHJlc3VsdDsKQEAgLTkwNzUsOCArMTI5MDMsNyBAQAogICAgIGlmIChQeVR1cGxlX0NoZWNrKHN1Ym9iaikpIHsKICAgICAgICAgUHlfc3NpemVfdCBpOwogICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlUdXBsZV9HRVRfU0laRShzdWJvYmopOyBpKyspIHsKLSAgICAgICAgICAgIHN1YnN0cmluZyA9IChQeVVuaWNvZGVPYmplY3QgKilQeVVuaWNvZGVfRnJvbU9iamVjdCgKLSAgICAgICAgICAgICAgICBQeVR1cGxlX0dFVF9JVEVNKHN1Ym9iaiwgaSkpOworICAgICAgICAgICAgc3Vic3RyaW5nID0gUHlVbmljb2RlX0Zyb21PYmplY3QoUHlUdXBsZV9HRVRfSVRFTShzdWJvYmosIGkpKTsKICAgICAgICAgICAgIGlmIChzdWJzdHJpbmcgPT0gTlVMTCkKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgICAgIHJlc3VsdCA9IHRhaWxtYXRjaChzZWxmLCBzdWJzdHJpbmcsIHN0YXJ0LCBlbmQsIC0xKTsKQEAgLTkwODgsNyArMTI5MTUsNyBAQAogICAgICAgICAvKiBub3RoaW5nIG1hdGNoZWQgKi8KICAgICAgICAgUHlfUkVUVVJOX0ZBTFNFOwogICAgIH0KLSAgICBzdWJzdHJpbmcgPSAoUHlVbmljb2RlT2JqZWN0ICopUHlVbmljb2RlX0Zyb21PYmplY3Qoc3Vib2JqKTsKKyAgICBzdWJzdHJpbmcgPSBQeVVuaWNvZGVfRnJvbU9iamVjdChzdWJvYmopOwogICAgIGlmIChzdWJzdHJpbmcgPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19UeXBlRXJyb3IpKQogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgInN0YXJ0c3dpdGggZmlyc3QgYXJnIG11c3QgYmUgc3RyIG9yICIKQEAgLTkxMTAsMTEgKzEyOTM3LDExIEBACiBzdWZmaXggY2FuIGFsc28gYmUgYSB0dXBsZSBvZiBzdHJpbmdzIHRvIHRyeS4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfZW5kc3dpdGgoUHlVbmljb2RlT2JqZWN0ICpzZWxmLAordW5pY29kZV9lbmRzd2l0aChQeU9iamVjdCAqc2VsZiwKICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmFyZ3MpCiB7CiAgICAgUHlPYmplY3QgKnN1Ym9iajsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnN1YnN0cmluZzsKKyAgICBQeU9iamVjdCAqc3Vic3RyaW5nOwogICAgIFB5X3NzaXplX3Qgc3RhcnQgPSAwOwogICAgIFB5X3NzaXplX3QgZW5kID0gUFlfU1NJWkVfVF9NQVg7CiAgICAgaW50IHJlc3VsdDsKQEAgLTkxMjQsNyArMTI5NTEsNyBAQAogICAgIGlmIChQeVR1cGxlX0NoZWNrKHN1Ym9iaikpIHsKICAgICAgICAgUHlfc3NpemVfdCBpOwogICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlUdXBsZV9HRVRfU0laRShzdWJvYmopOyBpKyspIHsKLSAgICAgICAgICAgIHN1YnN0cmluZyA9IChQeVVuaWNvZGVPYmplY3QgKilQeVVuaWNvZGVfRnJvbU9iamVjdCgKKyAgICAgICAgICAgIHN1YnN0cmluZyA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KAogICAgICAgICAgICAgICAgIFB5VHVwbGVfR0VUX0lURU0oc3Vib2JqLCBpKSk7CiAgICAgICAgICAgICBpZiAoc3Vic3RyaW5nID09IE5VTEwpCiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC05MTM2LDcgKzEyOTYzLDcgQEAKICAgICAgICAgfQogICAgICAgICBQeV9SRVRVUk5fRkFMU0U7CiAgICAgfQotICAgIHN1YnN0cmluZyA9IChQeVVuaWNvZGVPYmplY3QgKilQeVVuaWNvZGVfRnJvbU9iamVjdChzdWJvYmopOworICAgIHN1YnN0cmluZyA9IFB5VW5pY29kZV9Gcm9tT2JqZWN0KHN1Ym9iaik7CiAgICAgaWYgKHN1YnN0cmluZyA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX1R5cGVFcnJvcikpCiAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiZW5kc3dpdGggZmlyc3QgYXJnIG11c3QgYmUgc3RyIG9yICIKQEAgLTkxNDgsNyArMTI5NzUsNyBAQAogICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcocmVzdWx0KTsKIH0KIAotI2luY2x1ZGUgInN0cmluZ2xpYi9zdHJpbmdfZm9ybWF0LmgiCisjaW5jbHVkZSAic3RyaW5nbGliL3VuaWNvZGVfZm9ybWF0LmgiCiAKIFB5RG9jX1NUUlZBUihmb3JtYXRfX2RvY19fLAogICAgICAgICAgICAgICJTLmZvcm1hdCgqYXJncywgKiprd2FyZ3MpIC0+IHN0clxuXApAQCAtOTE2NSwxNCArMTI5OTIsMTQgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiB1bmljb2RlX19mb3JtYXRfXyhQeU9iamVjdCogc2VsZiwgUHlPYmplY3QqIGFyZ3MpCiB7Ci0gICAgUHlPYmplY3QgKmZvcm1hdF9zcGVjOworICAgIFB5T2JqZWN0ICpmb3JtYXRfc3BlYywgKm91dDsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVTpfX2Zvcm1hdF9fIiwgJmZvcm1hdF9zcGVjKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICByZXR1cm4gX1B5VW5pY29kZV9Gb3JtYXRBZHZhbmNlZChzZWxmLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKGZvcm1hdF9zcGVjKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX1NJWkUoZm9ybWF0X3NwZWMpKTsKKyAgICBvdXQgPSBfUHlVbmljb2RlX0Zvcm1hdEFkdmFuY2VkKHNlbGYsIGZvcm1hdF9zcGVjLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKGZvcm1hdF9zcGVjKSk7CisgICAgcmV0dXJuIG91dDsKIH0KIAogUHlEb2NfU1RSVkFSKHBfZm9ybWF0X19kb2NfXywKQEAgLTkxODEsMTkgKzEzMDA4LDQ1IEBACiBSZXR1cm4gYSBmb3JtYXR0ZWQgdmVyc2lvbiBvZiBTIGFzIGRlc2NyaWJlZCBieSBmb3JtYXRfc3BlYy4iKTsKIAogc3RhdGljIFB5T2JqZWN0ICoKLXVuaWNvZGVfX3NpemVvZl9fKFB5VW5pY29kZU9iamVjdCAqdikKK3VuaWNvZGVfX3NpemVvZl9fKFB5T2JqZWN0ICp2KQogewotICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3Qoc2l6ZW9mKFB5VW5pY29kZU9iamVjdCkgKwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKFB5X1VOSUNPREUpICogKHYtPmxlbmd0aCArIDEpKTsKKyAgICBQeV9zc2l6ZV90IHNpemU7CisKKyAgICAvKiBJZiBpdCdzIGEgY29tcGFjdCBvYmplY3QsIGFjY291bnQgZm9yIGJhc2Ugc3RydWN0dXJlICsKKyAgICAgICBjaGFyYWN0ZXIgZGF0YS4gKi8KKyAgICBpZiAoUHlVbmljb2RlX0lTX0NPTVBBQ1RfQVNDSUkodikpCisgICAgICAgIHNpemUgPSBzaXplb2YoUHlBU0NJSU9iamVjdCkgKyBQeVVuaWNvZGVfR0VUX0xFTkdUSCh2KSArIDE7CisgICAgZWxzZSBpZiAoUHlVbmljb2RlX0lTX0NPTVBBQ1QodikpCisgICAgICAgIHNpemUgPSBzaXplb2YoUHlDb21wYWN0VW5pY29kZU9iamVjdCkgKworICAgICAgICAgICAgKFB5VW5pY29kZV9HRVRfTEVOR1RIKHYpICsgMSkgKiBQeVVuaWNvZGVfS0lORCh2KTsKKyAgICBlbHNlIHsKKyAgICAgICAgLyogSWYgaXQgaXMgYSB0d28tYmxvY2sgb2JqZWN0LCBhY2NvdW50IGZvciBiYXNlIG9iamVjdCwgYW5kCisgICAgICAgICAgIGZvciBjaGFyYWN0ZXIgYmxvY2sgaWYgcHJlc2VudC4gKi8KKyAgICAgICAgc2l6ZSA9IHNpemVvZihQeVVuaWNvZGVPYmplY3QpOworICAgICAgICBpZiAoX1B5VW5pY29kZV9EQVRBX0FOWSh2KSkKKyAgICAgICAgICAgIHNpemUgKz0gKFB5VW5pY29kZV9HRVRfTEVOR1RIKHYpICsgMSkgKgorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9LSU5EKHYpOworICAgIH0KKyAgICAvKiBJZiB0aGUgd3N0ciBwb2ludGVyIGlzIHByZXNlbnQsIGFjY291bnQgZm9yIGl0IHVubGVzcyBpdCBpcyBzaGFyZWQKKyAgICAgICB3aXRoIHRoZSBkYXRhIHBvaW50ZXIuIENoZWNrIGlmIHRoZSBkYXRhIGlzIG5vdCBzaGFyZWQuICovCisgICAgaWYgKF9QeVVuaWNvZGVfSEFTX1dTVFJfTUVNT1JZKHYpKQorICAgICAgICBzaXplICs9IChQeVVuaWNvZGVfV1NUUl9MRU5HVEgodikgKyAxKSAqIHNpemVvZih3Y2hhcl90KTsKKyAgICBpZiAoX1B5VW5pY29kZV9IQVNfVVRGOF9NRU1PUlkodikpCisgICAgICAgIHNpemUgKz0gUHlVbmljb2RlX1VURjhfTEVOR1RIKHYpICsgMTsKKworICAgIHJldHVybiBQeUxvbmdfRnJvbVNzaXplX3Qoc2l6ZSk7CiB9CiAKIFB5RG9jX1NUUlZBUihzaXplb2ZfX2RvY19fLAogICAgICAgICAgICAgICJTLl9fc2l6ZW9mX18oKSAtPiBzaXplIG9mIFMgaW4gbWVtb3J5LCBpbiBieXRlcyIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgotdW5pY29kZV9nZXRuZXdhcmdzKFB5VW5pY29kZU9iamVjdCAqdikKK3VuaWNvZGVfZ2V0bmV3YXJncyhQeU9iamVjdCAqdikKIHsKLSAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiKHUjKSIsIHYtPnN0ciwgdi0+bGVuZ3RoKTsKKyAgICBQeU9iamVjdCAqY29weSA9IF9QeVVuaWNvZGVfQ29weSh2KTsKKyAgICBpZiAoIWNvcHkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTikiLCBjb3B5KTsKIH0KIAogc3RhdGljIFB5TWV0aG9kRGVmIHVuaWNvZGVfbWV0aG9kc1tdID0gewpAQCAtOTIwNyw2ICsxMzA2MCw3IEBACiAgICAgeyJyc3BsaXQiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfcnNwbGl0LCBNRVRIX1ZBUkFSR1MsIHJzcGxpdF9fZG9jX199LAogICAgIHsiam9pbiIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9qb2luLCBNRVRIX08sIGpvaW5fX2RvY19ffSwKICAgICB7ImNhcGl0YWxpemUiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfY2FwaXRhbGl6ZSwgTUVUSF9OT0FSR1MsIGNhcGl0YWxpemVfX2RvY19ffSwKKyAgICB7ImNhc2Vmb2xkIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX2Nhc2Vmb2xkLCBNRVRIX05PQVJHUywgY2FzZWZvbGRfX2RvY19ffSwKICAgICB7InRpdGxlIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX3RpdGxlLCBNRVRIX05PQVJHUywgdGl0bGVfX2RvY19ffSwKICAgICB7ImNlbnRlciIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9jZW50ZXIsIE1FVEhfVkFSQVJHUywgY2VudGVyX19kb2NfX30sCiAgICAgeyJjb3VudCIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9jb3VudCwgTUVUSF9WQVJBUkdTLCBjb3VudF9fZG9jX199LApAQCAtOTIyMiw3ICsxMzA3Niw3IEBACiAgICAgeyJyanVzdCIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9yanVzdCwgTUVUSF9WQVJBUkdTLCByanVzdF9fZG9jX199LAogICAgIHsicnN0cmlwIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX3JzdHJpcCwgTUVUSF9WQVJBUkdTLCByc3RyaXBfX2RvY19ffSwKICAgICB7InJwYXJ0aXRpb24iLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfcnBhcnRpdGlvbiwgTUVUSF9PLCBycGFydGl0aW9uX19kb2NfX30sCi0gICAgeyJzcGxpdGxpbmVzIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX3NwbGl0bGluZXMsIE1FVEhfVkFSQVJHUywgc3BsaXRsaW5lc19fZG9jX199LAorICAgIHsic3BsaXRsaW5lcyIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9zcGxpdGxpbmVzLCBNRVRIX1ZBUkFSR1MgfCBNRVRIX0tFWVdPUkRTLCBzcGxpdGxpbmVzX19kb2NfX30sCiAgICAgeyJzdHJpcCIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9zdHJpcCwgTUVUSF9WQVJBUkdTLCBzdHJpcF9fZG9jX199LAogICAgIHsic3dhcGNhc2UiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfc3dhcGNhc2UsIE1FVEhfTk9BUkdTLCBzd2FwY2FzZV9fZG9jX199LAogICAgIHsidHJhbnNsYXRlIiwgKFB5Q0Z1bmN0aW9uKSB1bmljb2RlX3RyYW5zbGF0ZSwgTUVUSF9PLCB0cmFuc2xhdGVfX2RvY19ffSwKQEAgLTkyNDgsMTIgKzEzMTAyLDcgQEAKICAgICAgTUVUSF9WQVJBUkdTIHwgTUVUSF9TVEFUSUMsIG1ha2V0cmFuc19fZG9jX199LAogICAgIHsiX19zaXplb2ZfXyIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9fc2l6ZW9mX18sIE1FVEhfTk9BUkdTLCBzaXplb2ZfX2RvY19ffSwKICNpZiAwCi0gICAgeyJjYXB3b3JkcyIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9jYXB3b3JkcywgTUVUSF9OT0FSR1MsIGNhcHdvcmRzX19kb2NfX30sCi0jZW5kaWYKLQotI2lmIDAKICAgICAvKiBUaGVzZSBtZXRob2RzIGFyZSBqdXN0IHVzZWQgZm9yIGRlYnVnZ2luZyB0aGUgaW1wbGVtZW50YXRpb24uICovCi0gICAgeyJmcmVlbGlzdHNpemUiLCAoUHlDRnVuY3Rpb24pIHVuaWNvZGVfZnJlZWxpc3RzaXplLCBNRVRIX05PQVJHU30sCiAgICAgeyJfZGVjaW1hbDJhc2NpaSIsIChQeUNGdW5jdGlvbikgdW5pY29kZV9fZGVjaW1hbDJhc2NpaSwgTUVUSF9OT0FSR1N9LAogI2VuZGlmCiAKQEAgLTkyNjQsMTAgKzEzMTEzLDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiB1bmljb2RlX21vZChQeU9iamVjdCAqdiwgUHlPYmplY3QgKncpCiB7Ci0gICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodikpIHsKLSAgICAgICAgUHlfSU5DUkVGKFB5X05vdEltcGxlbWVudGVkKTsKLSAgICAgICAgcmV0dXJuIFB5X05vdEltcGxlbWVudGVkOwotICAgIH0KKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh2KSkKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIHJldHVybiBQeVVuaWNvZGVfRm9ybWF0KHYsIHcpOwogfQogCkBAIC05MjkwLDUwICsxMzEzNyw2OSBAQAogfTsKIAogc3RhdGljIFB5T2JqZWN0KgotdW5pY29kZV9zdWJzY3JpcHQoUHlVbmljb2RlT2JqZWN0KiBzZWxmLCBQeU9iamVjdCogaXRlbSkKK3VuaWNvZGVfc3Vic2NyaXB0KFB5T2JqZWN0KiBzZWxmLCBQeU9iamVjdCogaXRlbSkKIHsKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlbGYpID09IC0xKQorICAgICAgICByZXR1cm4gTlVMTDsKKwogICAgIGlmIChQeUluZGV4X0NoZWNrKGl0ZW0pKSB7CiAgICAgICAgIFB5X3NzaXplX3QgaSA9IFB5TnVtYmVyX0FzU3NpemVfdChpdGVtLCBQeUV4Y19JbmRleEVycm9yKTsKICAgICAgICAgaWYgKGkgPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoaSA8IDApCi0gICAgICAgICAgICBpICs9IFB5VW5pY29kZV9HRVRfU0laRShzZWxmKTsKKyAgICAgICAgICAgIGkgKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZik7CiAgICAgICAgIHJldHVybiB1bmljb2RlX2dldGl0ZW0oc2VsZiwgaSk7CiAgICAgfSBlbHNlIGlmIChQeVNsaWNlX0NoZWNrKGl0ZW0pKSB7CiAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIHN0b3AsIHN0ZXAsIHNsaWNlbGVuZ3RoLCBjdXIsIGk7Ci0gICAgICAgIFB5X1VOSUNPREUqIHNvdXJjZV9idWY7Ci0gICAgICAgIFB5X1VOSUNPREUqIHJlc3VsdF9idWY7Ci0gICAgICAgIFB5T2JqZWN0KiByZXN1bHQ7CisgICAgICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgICAgIHZvaWQgKnNyY19kYXRhLCAqZGVzdF9kYXRhOworICAgICAgICBpbnQgc3JjX2tpbmQsIGRlc3Rfa2luZDsKKyAgICAgICAgUHlfVUNTNCBjaCwgbWF4X2NoYXIsIGtpbmRfbGltaXQ7CiAKLSAgICAgICAgaWYgKFB5U2xpY2VfR2V0SW5kaWNlc0V4KGl0ZW0sIFB5VW5pY29kZV9HRVRfU0laRShzZWxmKSwKKyAgICAgICAgaWYgKFB5U2xpY2VfR2V0SW5kaWNlc0V4KGl0ZW0sIFB5VW5pY29kZV9HRVRfTEVOR1RIKHNlbGYpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN0YXJ0LCAmc3RvcCwgJnN0ZXAsICZzbGljZWxlbmd0aCkgPCAwKSB7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogCiAgICAgICAgIGlmIChzbGljZWxlbmd0aCA8PSAwKSB7Ci0gICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIDApOwotICAgICAgICB9IGVsc2UgaWYgKHN0YXJ0ID09IDAgJiYgc3RlcCA9PSAxICYmIHNsaWNlbGVuZ3RoID09IHNlbGYtPmxlbmd0aCAmJgotICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9DaGVja0V4YWN0KHNlbGYpKSB7Ci0gICAgICAgICAgICBQeV9JTkNSRUYoc2VsZik7Ci0gICAgICAgICAgICByZXR1cm4gKFB5T2JqZWN0ICopc2VsZjsKKyAgICAgICAgICAgIFB5X0lOQ1JFRih1bmljb2RlX2VtcHR5KTsKKyAgICAgICAgICAgIHJldHVybiB1bmljb2RlX2VtcHR5OworICAgICAgICB9IGVsc2UgaWYgKHN0YXJ0ID09IDAgJiYgc3RlcCA9PSAxICYmCisgICAgICAgICAgICAgICAgICAgc2xpY2VsZW5ndGggPT0gUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VsZikpIHsKKyAgICAgICAgICAgIHJldHVybiB1bmljb2RlX3Jlc3VsdF91bmNoYW5nZWQoc2VsZik7CiAgICAgICAgIH0gZWxzZSBpZiAoc3RlcCA9PSAxKSB7Ci0gICAgICAgICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHNlbGYtPnN0ciArIHN0YXJ0LCBzbGljZWxlbmd0aCk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBzb3VyY2VfYnVmID0gUHlVbmljb2RlX0FTX1VOSUNPREUoKFB5T2JqZWN0KilzZWxmKTsKLSAgICAgICAgICAgIHJlc3VsdF9idWYgPSAoUHlfVU5JQ09ERSAqKVB5T2JqZWN0X01BTExPQyhzbGljZWxlbmd0aCoKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YoUHlfVU5JQ09ERSkpOwotCi0gICAgICAgICAgICBpZiAocmVzdWx0X2J1ZiA9PSBOVUxMKQotICAgICAgICAgICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOwotCi0gICAgICAgICAgICBmb3IgKGN1ciA9IHN0YXJ0LCBpID0gMDsgaSA8IHNsaWNlbGVuZ3RoOyBjdXIgKz0gc3RlcCwgaSsrKSB7Ci0gICAgICAgICAgICAgICAgcmVzdWx0X2J1ZltpXSA9IHNvdXJjZV9idWZbY3VyXTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAgICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHJlc3VsdF9idWYsIHNsaWNlbGVuZ3RoKTsKLSAgICAgICAgICAgIFB5T2JqZWN0X0ZSRUUocmVzdWx0X2J1Zik7Ci0gICAgICAgICAgICByZXR1cm4gcmVzdWx0OworICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9TdWJzdHJpbmcoc2VsZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0LCBzdGFydCArIHNsaWNlbGVuZ3RoKTsKICAgICAgICAgfQorICAgICAgICAvKiBHZW5lcmFsIGNhc2UgKi8KKyAgICAgICAgc3JjX2tpbmQgPSBQeVVuaWNvZGVfS0lORChzZWxmKTsKKyAgICAgICAgc3JjX2RhdGEgPSBQeVVuaWNvZGVfREFUQShzZWxmKTsKKyAgICAgICAgaWYgKCFQeVVuaWNvZGVfSVNfQVNDSUkoc2VsZikpIHsKKyAgICAgICAgICAgIGtpbmRfbGltaXQgPSBraW5kX21heGNoYXJfbGltaXQoc3JjX2tpbmQpOworICAgICAgICAgICAgbWF4X2NoYXIgPSAwOworICAgICAgICAgICAgZm9yIChjdXIgPSBzdGFydCwgaSA9IDA7IGkgPCBzbGljZWxlbmd0aDsgY3VyICs9IHN0ZXAsIGkrKykgeworICAgICAgICAgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQUQoc3JjX2tpbmQsIHNyY19kYXRhLCBjdXIpOworICAgICAgICAgICAgICAgIGlmIChjaCA+IG1heF9jaGFyKSB7CisgICAgICAgICAgICAgICAgICAgIG1heF9jaGFyID0gY2g7CisgICAgICAgICAgICAgICAgICAgIGlmIChtYXhfY2hhciA+PSBraW5kX2xpbWl0KQorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1heF9jaGFyID0gMTI3OworICAgICAgICByZXN1bHQgPSBQeVVuaWNvZGVfTmV3KHNsaWNlbGVuZ3RoLCBtYXhfY2hhcik7CisgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBkZXN0X2tpbmQgPSBQeVVuaWNvZGVfS0lORChyZXN1bHQpOworICAgICAgICBkZXN0X2RhdGEgPSBQeVVuaWNvZGVfREFUQShyZXN1bHQpOworCisgICAgICAgIGZvciAoY3VyID0gc3RhcnQsIGkgPSAwOyBpIDwgc2xpY2VsZW5ndGg7IGN1ciArPSBzdGVwLCBpKyspIHsKKyAgICAgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRChzcmNfa2luZCwgc3JjX2RhdGEsIGN1cik7CisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoZGVzdF9raW5kLCBkZXN0X2RhdGEsIGksIGNoKTsKKyAgICAgICAgfQorICAgICAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHJlc3VsdCwgMSkpOworICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH0gZWxzZSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJzdHJpbmcgaW5kaWNlcyBtdXN0IGJlIGludGVnZXJzIik7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtOTM4NSw3ICsxMzI1MSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmxhZ3MgJiBGX0FMVCkgPyBQeV9EVFNGX0FMVCA6IDAsIE5VTEwpOwogICAgIGlmIChwID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJlc3VsdCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShwLCBzdHJsZW4ocCkpOworICAgIHJlc3VsdCA9IFB5VW5pY29kZV9EZWNvZGVBU0NJSShwLCBzdHJsZW4ocCksIE5VTEwpOwogICAgIFB5TWVtX0ZyZWUocCk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTk0MDEsMzcgKzEzMjY3LDE5IEBACiAgICAgc3RyID0gX1B5Qnl0ZXNfRm9ybWF0TG9uZyh2YWwsIGZsYWdzLCBwcmVjLCB0eXBlLCAmYnVmLCAmbGVuKTsKICAgICBpZiAoIXN0cikKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKGJ1ZiwgbGVuKTsKKyAgICByZXN1bHQgPSBQeVVuaWNvZGVfRGVjb2RlQVNDSUkoYnVmLCBsZW4sIE5VTEwpOwogICAgIFB5X0RFQ1JFRihzdHIpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKLXN0YXRpYyBpbnQKLWZvcm1hdGNoYXIoUHlfVU5JQ09ERSAqYnVmLAotICAgICAgICAgICBzaXplX3QgYnVmbGVuLAotICAgICAgICAgICBQeU9iamVjdCAqdikKK3N0YXRpYyBQeV9VQ1M0Citmb3JtYXRjaGFyKFB5T2JqZWN0ICp2KQogewogICAgIC8qIHByZXN1bWUgdGhhdCB0aGUgYnVmZmVyIGlzIGF0IGxlYXN0IDMgY2hhcmFjdGVycyBsb25nICovCiAgICAgaWYgKFB5VW5pY29kZV9DaGVjayh2KSkgewotICAgICAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHYpID09IDEpIHsKLSAgICAgICAgICAgIGJ1ZlswXSA9IFB5VW5pY29kZV9BU19VTklDT0RFKHYpWzBdOwotICAgICAgICAgICAgYnVmWzFdID0gJ1wwJzsKLSAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgodikgPT0gMSkgeworICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9SRUFEX0NIQVIodiwgMCk7CiAgICAgICAgIH0KLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi0gICAgICAgIGlmIChQeVVuaWNvZGVfR0VUX1NJWkUodikgPT0gMikgewotICAgICAgICAgICAgLyogRGVjb2RlIGEgdmFsaWQgc3Vycm9nYXRlIHBhaXIgKi8KLSAgICAgICAgICAgIGludCBjMCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHYpWzBdOwotICAgICAgICAgICAgaW50IGMxID0gUHlVbmljb2RlX0FTX1VOSUNPREUodilbMV07Ci0gICAgICAgICAgICBpZiAoMHhEODAwIDw9IGMwICYmIGMwIDw9IDB4REJGRiAmJgotICAgICAgICAgICAgICAgIDB4REMwMCA8PSBjMSAmJiBjMSA8PSAweERGRkYpIHsKLSAgICAgICAgICAgICAgICBidWZbMF0gPSBjMDsKLSAgICAgICAgICAgICAgICBidWZbMV0gPSBjMTsKLSAgICAgICAgICAgICAgICBidWZbMl0gPSAnXDAnOwotICAgICAgICAgICAgICAgIHJldHVybiAyOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgZ290byBvbkVycm9yOwogICAgIH0KICAgICBlbHNlIHsKQEAgLTk0NDEsNDUgKzEzMjg5LDcxIEBACiAgICAgICAgIGlmICh4ID09IC0xICYmIFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAKLSAgICAgICAgaWYgKHggPCAwIHx8IHggPiAweDEwZmZmZikgeworICAgICAgICBpZiAoeCA8IDAgfHwgeCA+IE1BWF9VTklDT0RFKSB7CiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJWMgYXJnIG5vdCBpbiByYW5nZSgweDExMDAwMCkiKTsKLSAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgICAgIHJldHVybiAoUHlfVUNTNCkgLTE7CiAgICAgICAgIH0KIAotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgaWYgKHggPiAweGZmZmYpIHsKLSAgICAgICAgICAgIHggLT0gMHgxMDAwMDsKLSAgICAgICAgICAgIGJ1ZlswXSA9IChQeV9VTklDT0RFKSgweEQ4MDAgfCAoeCA+PiAxMCkpOwotICAgICAgICAgICAgYnVmWzFdID0gKFB5X1VOSUNPREUpKDB4REMwMCB8ICh4ICYgMHgzRkYpKTsKLSAgICAgICAgICAgIHJldHVybiAyOwotICAgICAgICB9Ci0jZW5kaWYKLSAgICAgICAgYnVmWzBdID0gKFB5X1VOSUNPREUpIHg7Ci0gICAgICAgIGJ1ZlsxXSA9ICdcMCc7Ci0gICAgICAgIHJldHVybiAxOworICAgICAgICByZXR1cm4gKFB5X1VDUzQpIHg7CiAgICAgfQogCiAgIG9uRXJyb3I6CiAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgIiVjIHJlcXVpcmVzIGludCBvciBjaGFyIik7Ci0gICAgcmV0dXJuIC0xOworICAgIHJldHVybiAoUHlfVUNTNCkgLTE7CiB9CiAKLS8qIGZtdCUodjEsdjIsLi4uKSBpcyByb3VnaGx5IGVxdWl2YWxlbnQgdG8gc3ByaW50ZihmbXQsIHYxLCB2MiwgLi4uKQotICAgRk9STUFUQlVGTEVOIGlzIHRoZSBsZW5ndGggb2YgdGhlIGJ1ZmZlciBpbiB3aGljaCBjaGFycyBhcmUgZm9ybWF0dGVkLgotKi8KLSNkZWZpbmUgRk9STUFUQlVGTEVOIChzaXplX3QpMTAKLQotUHlPYmplY3QgKlB5VW5pY29kZV9Gb3JtYXQoUHlPYmplY3QgKmZvcm1hdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICphcmdzKQorc3RhdGljIGludAorcmVwZWF0X2FjY3VtdWxhdGUoX1B5QWNjdSAqYWNjLCBQeU9iamVjdCAqb2JqLCBQeV9zc2l6ZV90IGNvdW50KQogewotICAgIFB5X1VOSUNPREUgKmZtdCwgKnJlczsKLSAgICBQeV9zc2l6ZV90IGZtdGNudCwgcmVzY250LCByZXNsZW4sIGFyZ2xlbiwgYXJnaWR4OworICAgIGludCByOworICAgIGFzc2VydChjb3VudCA+IDApOworICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2sob2JqKSk7CisgICAgaWYgKGNvdW50ID4gNSkgeworICAgICAgICBQeU9iamVjdCAqcmVwZWF0ZWQgPSB1bmljb2RlX3JlcGVhdChvYmosIGNvdW50KTsKKyAgICAgICAgaWYgKHJlcGVhdGVkID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIHIgPSBfUHlBY2N1X0FjY3VtdWxhdGUoYWNjLCByZXBlYXRlZCk7CisgICAgICAgIFB5X0RFQ1JFRihyZXBlYXRlZCk7CisgICAgICAgIHJldHVybiByOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgZG8geworICAgICAgICAgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZShhY2MsIG9iaikpCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9IHdoaWxlICgtLWNvdW50KTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorfQorCitQeU9iamVjdCAqCitQeVVuaWNvZGVfRm9ybWF0KFB5T2JqZWN0ICpmb3JtYXQsIFB5T2JqZWN0ICphcmdzKQoreworICAgIHZvaWQgKmZtdDsKKyAgICBpbnQgZm10a2luZDsKKyAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIGludCBraW5kOworICAgIGludCByOworICAgIFB5X3NzaXplX3QgZm10Y250LCBmbXRwb3MsIGFyZ2xlbiwgYXJnaWR4OwogICAgIGludCBhcmdzX293bmVkID0gMDsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnJlc3VsdCA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmRpY3QgPSBOVUxMOworICAgIFB5T2JqZWN0ICp0ZW1wID0gTlVMTDsKKyAgICBQeU9iamVjdCAqc2Vjb25kID0gTlVMTDsKICAgICBQeU9iamVjdCAqdWZvcm1hdDsKKyAgICBfUHlBY2N1IGFjYzsKKyAgICBzdGF0aWMgUHlPYmplY3QgKnBsdXMsICptaW51cywgKmJsYW5rLCAqemVybywgKnBlcmNlbnQ7CisKKyAgICBpZiAoIXBsdXMgJiYgIShwbHVzID0gZ2V0X2xhdGluMV9jaGFyKCcrJykpKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoIW1pbnVzICYmICEobWludXMgPSBnZXRfbGF0aW4xX2NoYXIoJy0nKSkpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICghYmxhbmsgJiYgIShibGFuayA9IGdldF9sYXRpbjFfY2hhcignICcpKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKCF6ZXJvICYmICEoemVybyA9IGdldF9sYXRpbjFfY2hhcignMCcpKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKCFwZXJjZW50ICYmICEocGVyY2VudCA9IGdldF9sYXRpbjFfY2hhcignJScpKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZiAoZm9ybWF0ID09IE5VTEwgfHwgYXJncyA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0JhZEludGVybmFsQ2FsbCgpOwpAQCAtOTQ4OCwxNCArMTMzNjIsMTQgQEAKICAgICB1Zm9ybWF0ID0gUHlVbmljb2RlX0Zyb21PYmplY3QoZm9ybWF0KTsKICAgICBpZiAodWZvcm1hdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBmbXQgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERSh1Zm9ybWF0KTsKLSAgICBmbXRjbnQgPSBQeVVuaWNvZGVfR0VUX1NJWkUodWZvcm1hdCk7Ci0KLSAgICByZXNsZW4gPSByZXNjbnQgPSBmbXRjbnQgKyAxMDA7Ci0gICAgcmVzdWx0ID0gX1B5VW5pY29kZV9OZXcocmVzbGVuKTsKLSAgICBpZiAocmVzdWx0ID09IE5VTEwpCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1Zm9ybWF0KSA9PSAtMSkKKyAgICAgICAgUHlfREVDUkVGKHVmb3JtYXQpOworICAgIGlmIChfUHlBY2N1X0luaXQoJmFjYykpCiAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICByZXMgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXN1bHQpOworICAgIGZtdCA9IFB5VW5pY29kZV9EQVRBKHVmb3JtYXQpOworICAgIGZtdGtpbmQgPSBQeVVuaWNvZGVfS0lORCh1Zm9ybWF0KTsKKyAgICBmbXRjbnQgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1Zm9ybWF0KTsKKyAgICBmbXRwb3MgPSAwOwogCiAgICAgaWYgKFB5VHVwbGVfQ2hlY2soYXJncykpIHsKICAgICAgICAgYXJnbGVuID0gUHlUdXBsZV9TaXplKGFyZ3MpOwpAQCAtOTUxMCwzNSArMTMzODQsMzkgQEAKICAgICAgICAgZGljdCA9IGFyZ3M7CiAKICAgICB3aGlsZSAoLS1mbXRjbnQgPj0gMCkgewotICAgICAgICBpZiAoKmZtdCAhPSAnJScpIHsKLSAgICAgICAgICAgIGlmICgtLXJlc2NudCA8IDApIHsKLSAgICAgICAgICAgICAgICByZXNjbnQgPSBmbXRjbnQgKyAxMDA7Ci0gICAgICAgICAgICAgICAgcmVzbGVuICs9IHJlc2NudDsKLSAgICAgICAgICAgICAgICBpZiAoX1B5VW5pY29kZV9SZXNpemUoJnJlc3VsdCwgcmVzbGVuKSA8IDApCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICAgICAgICAgICAgICByZXMgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShyZXN1bHQpICsgcmVzbGVuIC0gcmVzY250OwotICAgICAgICAgICAgICAgIC0tcmVzY250OworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoZm10a2luZCwgZm10LCBmbXRwb3MpICE9ICclJykgeworICAgICAgICAgICAgUHlPYmplY3QgKm5vbmZtdDsKKyAgICAgICAgICAgIFB5X3NzaXplX3Qgbm9uZm10cG9zOworICAgICAgICAgICAgbm9uZm10cG9zID0gZm10cG9zKys7CisgICAgICAgICAgICB3aGlsZSAoZm10Y250ID49IDAgJiYKKyAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfUkVBRChmbXRraW5kLCBmbXQsIGZtdHBvcykgIT0gJyUnKSB7CisgICAgICAgICAgICAgICAgZm10cG9zKys7CisgICAgICAgICAgICAgICAgZm10Y250LS07CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAqcmVzKysgPSAqZm10Kys7CisgICAgICAgICAgICBub25mbXQgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKHVmb3JtYXQsIG5vbmZtdHBvcywgZm10cG9zKTsKKyAgICAgICAgICAgIGlmIChub25mbXQgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICByID0gX1B5QWNjdV9BY2N1bXVsYXRlKCZhY2MsIG5vbmZtdCk7CisgICAgICAgICAgICBQeV9ERUNSRUYobm9uZm10KTsKKyAgICAgICAgICAgIGlmIChyKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIC8qIEdvdCBhIGZvcm1hdCBzcGVjaWZpZXIgKi8KICAgICAgICAgICAgIGludCBmbGFncyA9IDA7CiAgICAgICAgICAgICBQeV9zc2l6ZV90IHdpZHRoID0gLTE7CiAgICAgICAgICAgICBpbnQgcHJlYyA9IC0xOwotICAgICAgICAgICAgUHlfVU5JQ09ERSBjID0gJ1wwJzsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgZmlsbDsKKyAgICAgICAgICAgIFB5X1VDUzQgYyA9ICdcMCc7CisgICAgICAgICAgICBQeV9VQ1M0IGZpbGwsIHNpZ247CiAgICAgICAgICAgICBpbnQgaXNudW1vazsKICAgICAgICAgICAgIFB5T2JqZWN0ICp2ID0gTlVMTDsKLSAgICAgICAgICAgIFB5T2JqZWN0ICp0ZW1wID0gTlVMTDsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgKnBidWY7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIHNpZ247Ci0gICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgZm9ybWF0YnVmW0ZPUk1BVEJVRkxFTl07IC8qIEZvciBmb3JtYXRjaGFyKCkgKi8KKyAgICAgICAgICAgIHZvaWQgKnBidWYgPSBOVUxMOworICAgICAgICAgICAgUHlfc3NpemVfdCBwaW5kZXgsIGxlbjsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpzaWdub2JqID0gTlVMTCwgKmZpbGxvYmogPSBOVUxMOwogCi0gICAgICAgICAgICBmbXQrKzsKLSAgICAgICAgICAgIGlmICgqZm10ID09ICcoJykgewotICAgICAgICAgICAgICAgIFB5X1VOSUNPREUgKmtleXN0YXJ0OworICAgICAgICAgICAgZm10cG9zKys7CisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoZm10a2luZCwgZm10LCBmbXRwb3MpID09ICcoJykgeworICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qga2V5c3RhcnQ7CiAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBrZXlsZW47CiAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmtleTsKICAgICAgICAgICAgICAgICBpbnQgcGNvdW50ID0gMTsKQEAgLTk1NDgsMzQgKzEzNDI2LDI1IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZm9ybWF0IHJlcXVpcmVzIGEgbWFwcGluZyIpOwogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICsrZm10OworICAgICAgICAgICAgICAgICsrZm10cG9zOwogICAgICAgICAgICAgICAgIC0tZm10Y250OwotICAgICAgICAgICAgICAgIGtleXN0YXJ0ID0gZm10OworICAgICAgICAgICAgICAgIGtleXN0YXJ0ID0gZm10cG9zOwogICAgICAgICAgICAgICAgIC8qIFNraXAgb3ZlciBiYWxhbmNlZCBwYXJlbnRoZXNlcyAqLwogICAgICAgICAgICAgICAgIHdoaWxlIChwY291bnQgPiAwICYmIC0tZm10Y250ID49IDApIHsKLSAgICAgICAgICAgICAgICAgICAgaWYgKCpmbXQgPT0gJyknKQorICAgICAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQUQoZm10a2luZCwgZm10LCBmbXRwb3MpID09ICcpJykKICAgICAgICAgICAgICAgICAgICAgICAgIC0tcGNvdW50OwotICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICgqZm10ID09ICcoJykKKyAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX1JFQUQoZm10a2luZCwgZm10LCBmbXRwb3MpID09ICcoJykKICAgICAgICAgICAgICAgICAgICAgICAgICsrcGNvdW50OwotICAgICAgICAgICAgICAgICAgICBmbXQrKzsKKyAgICAgICAgICAgICAgICAgICAgZm10cG9zKys7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGtleWxlbiA9IGZtdCAtIGtleXN0YXJ0IC0gMTsKKyAgICAgICAgICAgICAgICBrZXlsZW4gPSBmbXRwb3MgLSBrZXlzdGFydCAtIDE7CiAgICAgICAgICAgICAgICAgaWYgKGZtdGNudCA8IDAgfHwgcGNvdW50ID4gMCkgewogICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbmNvbXBsZXRlIGZvcm1hdCBrZXkiKTsKICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgIH0KLSNpZiAwCi0gICAgICAgICAgICAgICAgLyoga2V5cyBhcmUgY29udmVydGVkIHRvIHN0cmluZ3MgdXNpbmcgVVRGLTggYW5kCi0gICAgICAgICAgICAgICAgICAgdGhlbiBsb29rZWQgdXAgc2luY2UgUHl0aG9uIHVzZXMgc3RyaW5ncyB0byBob2xkCi0gICAgICAgICAgICAgICAgICAgdmFyaWFibGVzIG5hbWVzIGV0Yy4gaW4gaXRzIG5hbWVzcGFjZXMgYW5kIHdlCi0gICAgICAgICAgICAgICAgICAgd291bGRuJ3Qgd2FudCB0byBicmVhayBjb21tb24gaWRpb21zLiAqLwotICAgICAgICAgICAgICAgIGtleSA9IFB5VW5pY29kZV9FbmNvZGVVVEY4KGtleXN0YXJ0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleWxlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKLSNlbHNlCi0gICAgICAgICAgICAgICAga2V5ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKGtleXN0YXJ0LCBrZXlsZW4pOwotI2VuZGlmCisgICAgICAgICAgICAgICAga2V5ID0gUHlVbmljb2RlX1N1YnN0cmluZyh1Zm9ybWF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5c3RhcnQsIGtleXN0YXJ0ICsga2V5bGVuKTsKICAgICAgICAgICAgICAgICBpZiAoa2V5ID09IE5VTEwpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgICAgICBpZiAoYXJnc19vd25lZCkgewpAQCAtOTU5Miw3ICsxMzQ2MSw3IEBACiAgICAgICAgICAgICAgICAgYXJnaWR4ID0gLTI7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICB3aGlsZSAoLS1mbXRjbnQgPj0gMCkgewotICAgICAgICAgICAgICAgIHN3aXRjaCAoYyA9ICpmbXQrKykgeworICAgICAgICAgICAgICAgIHN3aXRjaCAoYyA9IFB5VW5pY29kZV9SRUFEKGZtdGtpbmQsIGZtdCwgZm10cG9zKyspKSB7CiAgICAgICAgICAgICAgICAgY2FzZSAnLSc6IGZsYWdzIHw9IEZfTEpVU1Q7IGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIGNhc2UgJysnOiBmbGFncyB8PSBGX1NJR047IGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIGNhc2UgJyAnOiBmbGFncyB8PSBGX0JMQU5LOyBjb250aW51ZTsKQEAgLTk2MTgsMTIgKzEzNDg3LDEyIEBACiAgICAgICAgICAgICAgICAgICAgIHdpZHRoID0gLXdpZHRoOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBpZiAoLS1mbXRjbnQgPj0gMCkKLSAgICAgICAgICAgICAgICAgICAgYyA9ICpmbXQrKzsKKyAgICAgICAgICAgICAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEKGZtdGtpbmQsIGZtdCwgZm10cG9zKyspOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBpZiAoYyA+PSAnMCcgJiYgYyA8PSAnOScpIHsKICAgICAgICAgICAgICAgICB3aWR0aCA9IGMgLSAnMCc7CiAgICAgICAgICAgICAgICAgd2hpbGUgKC0tZm10Y250ID49IDApIHsKLSAgICAgICAgICAgICAgICAgICAgYyA9ICpmbXQrKzsKKyAgICAgICAgICAgICAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEKGZtdGtpbmQsIGZtdCwgZm10cG9zKyspOwogICAgICAgICAgICAgICAgICAgICBpZiAoYyA8ICcwJyB8fCBjID4gJzknKQogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgIGlmICgod2lkdGgqMTApIC8gMTAgIT0gd2lkdGgpIHsKQEAgLTk2MzcsNyArMTM1MDYsNyBAQAogICAgICAgICAgICAgaWYgKGMgPT0gJy4nKSB7CiAgICAgICAgICAgICAgICAgcHJlYyA9IDA7CiAgICAgICAgICAgICAgICAgaWYgKC0tZm10Y250ID49IDApCi0gICAgICAgICAgICAgICAgICAgIGMgPSAqZm10Kys7CisgICAgICAgICAgICAgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRChmbXRraW5kLCBmbXQsIGZtdHBvcysrKTsKICAgICAgICAgICAgICAgICBpZiAoYyA9PSAnKicpIHsKICAgICAgICAgICAgICAgICAgICAgdiA9IGdldG5leHRhcmcoYXJncywgYXJnbGVuLCAmYXJnaWR4KTsKICAgICAgICAgICAgICAgICAgICAgaWYgKHYgPT0gTlVMTCkKQEAgLTk2NTMsMTIgKzEzNTIyLDEyIEBACiAgICAgICAgICAgICAgICAgICAgIGlmIChwcmVjIDwgMCkKICAgICAgICAgICAgICAgICAgICAgICAgIHByZWMgPSAwOwogICAgICAgICAgICAgICAgICAgICBpZiAoLS1mbXRjbnQgPj0gMCkKLSAgICAgICAgICAgICAgICAgICAgICAgIGMgPSAqZm10Kys7CisgICAgICAgICAgICAgICAgICAgICAgICBjID0gUHlVbmljb2RlX1JFQUQoZm10a2luZCwgZm10LCBmbXRwb3MrKyk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGVsc2UgaWYgKGMgPj0gJzAnICYmIGMgPD0gJzknKSB7CiAgICAgICAgICAgICAgICAgICAgIHByZWMgPSBjIC0gJzAnOwogICAgICAgICAgICAgICAgICAgICB3aGlsZSAoLS1mbXRjbnQgPj0gMCkgewotICAgICAgICAgICAgICAgICAgICAgICAgYyA9ICpmbXQrKzsKKyAgICAgICAgICAgICAgICAgICAgICAgIGMgPSBQeVVuaWNvZGVfUkVBRChmbXRraW5kLCBmbXQsIGZtdHBvcysrKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjIDwgJzAnIHx8IGMgPiAnOScpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoKHByZWMqMTApIC8gMTAgIT0gcHJlYykgewpAQCAtOTY3Myw3ICsxMzU0Miw3IEBACiAgICAgICAgICAgICBpZiAoZm10Y250ID49IDApIHsKICAgICAgICAgICAgICAgICBpZiAoYyA9PSAnaCcgfHwgYyA9PSAnbCcgfHwgYyA9PSAnTCcpIHsKICAgICAgICAgICAgICAgICAgICAgaWYgKC0tZm10Y250ID49IDApCi0gICAgICAgICAgICAgICAgICAgICAgICBjID0gKmZtdCsrOworICAgICAgICAgICAgICAgICAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEKGZtdGtpbmQsIGZtdCwgZm10cG9zKyspOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmIChmbXRjbnQgPCAwKSB7CkBAIC05Njg4LDE0ICsxMzU1NywxMiBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgc2lnbiA9IDA7CiAgICAgICAgICAgICBmaWxsID0gJyAnOworICAgICAgICAgICAgZmlsbG9iaiA9IGJsYW5rOwogICAgICAgICAgICAgc3dpdGNoIChjKSB7CiAKICAgICAgICAgICAgIGNhc2UgJyUnOgotICAgICAgICAgICAgICAgIHBidWYgPSBmb3JtYXRidWY7Ci0gICAgICAgICAgICAgICAgLyogcHJlc3VtZSB0aGF0IGJ1ZmZlciBsZW5ndGggaXMgYXQgbGVhc3QgMSAqLwotICAgICAgICAgICAgICAgIHBidWZbMF0gPSAnJSc7Ci0gICAgICAgICAgICAgICAgbGVuID0gMTsKLSAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBfUHlBY2N1X0FjY3VtdWxhdGUoJmFjYywgcGVyY2VudCk7CisgICAgICAgICAgICAgICAgY29udGludWU7CiAKICAgICAgICAgICAgIGNhc2UgJ3MnOgogICAgICAgICAgICAgY2FzZSAncic6CkBAIC05NzIyLDggKzEzNTg5LDEzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgcGJ1ZiA9IFB5VW5pY29kZV9BU19VTklDT0RFKHRlbXApOwotICAgICAgICAgICAgICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRSh0ZW1wKTsKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHRlbXApID09IC0xKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0NMRUFSKHRlbXApOworICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHBidWYgPSBQeVVuaWNvZGVfREFUQSh0ZW1wKTsKKyAgICAgICAgICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodGVtcCk7CisgICAgICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodGVtcCk7CiAgICAgICAgICAgICAgICAgaWYgKHByZWMgPj0gMCAmJiBsZW4gPiBwcmVjKQogICAgICAgICAgICAgICAgICAgICBsZW4gPSBwcmVjOwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtOTc1Miw4ICsxMzYyNCwxMyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihpb2JqKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXRlbXApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYnVmID0gUHlVbmljb2RlX0FTX1VOSUNPREUodGVtcCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHRlbXApOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkodGVtcCkgPT0gLTEpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfQ0xFQVIodGVtcCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGJ1ZiA9IFB5VW5pY29kZV9EQVRBKHRlbXApOworICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh0ZW1wKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh0ZW1wKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaWduID0gMTsKICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgewpAQCAtOTc2Nyw4ICsxMzY0NCwxMCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5vdCAlLjIwMHMiLCAoY2hhciljLCBQeV9UWVBFKHYpLT50cF9uYW1lKTsKICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoZmxhZ3MgJiBGX1pFUk8pCisgICAgICAgICAgICAgICAgaWYgKGZsYWdzICYgRl9aRVJPKSB7CiAgICAgICAgICAgICAgICAgICAgIGZpbGwgPSAnMCc7CisgICAgICAgICAgICAgICAgICAgIGZpbGxvYmogPSB6ZXJvOworICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAgICAgY2FzZSAnZSc6CkBAIC05NzgwLDE5ICsxMzY1OSwzMyBAQAogICAgICAgICAgICAgICAgIHRlbXAgPSBmb3JtYXRmbG9hdCh2LCBmbGFncywgcHJlYywgYyk7CiAgICAgICAgICAgICAgICAgaWYgKCF0ZW1wKQogICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7Ci0gICAgICAgICAgICAgICAgcGJ1ZiA9IFB5VW5pY29kZV9BU19VTklDT0RFKHRlbXApOwotICAgICAgICAgICAgICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRSh0ZW1wKTsKKyAgICAgICAgICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHRlbXApID09IC0xKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0NMRUFSKHRlbXApOworICAgICAgICAgICAgICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHBidWYgPSBQeVVuaWNvZGVfREFUQSh0ZW1wKTsKKyAgICAgICAgICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQodGVtcCk7CisgICAgICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodGVtcCk7CiAgICAgICAgICAgICAgICAgc2lnbiA9IDE7Ci0gICAgICAgICAgICAgICAgaWYgKGZsYWdzICYgRl9aRVJPKQorICAgICAgICAgICAgICAgIGlmIChmbGFncyAmIEZfWkVSTykgewogICAgICAgICAgICAgICAgICAgICBmaWxsID0gJzAnOworICAgICAgICAgICAgICAgICAgICBmaWxsb2JqID0gemVybzsKKyAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKICAgICAgICAgICAgIGNhc2UgJ2MnOgotICAgICAgICAgICAgICAgIHBidWYgPSBmb3JtYXRidWY7Ci0gICAgICAgICAgICAgICAgbGVuID0gZm9ybWF0Y2hhcihwYnVmLCBzaXplb2YoZm9ybWF0YnVmKS9zaXplb2YoUHlfVU5JQ09ERSksIHYpOwotICAgICAgICAgICAgICAgIGlmIChsZW4gPCAwKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIFB5X1VDUzQgY2ggPSBmb3JtYXRjaGFyKHYpOworICAgICAgICAgICAgICAgIGlmIChjaCA9PSAoUHlfVUNTNCkgLTEpCiAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgICAgICB0ZW1wID0gX1B5VW5pY29kZV9Gcm9tVUNTNCgmY2gsIDEpOworICAgICAgICAgICAgICAgIGlmICh0ZW1wID09IE5VTEwpCisgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgICAgICBwYnVmID0gUHlVbmljb2RlX0RBVEEodGVtcCk7CisgICAgICAgICAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKHRlbXApOworICAgICAgICAgICAgICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHRlbXApOwogICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLApAQCAtOTgwMCw5MCArMTM2OTMsMTA4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhdCBpbmRleCAlemQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoMzE8PWMgJiYgYzw9MTI2KSA/IChjaGFyKWMgOiAnPycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbnQpYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFB5X3NzaXplX3QpKGZtdCAtIDEgLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0FTX1VOSUNPREUodWZvcm1hdCkpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm10cG9zIC0gMSk7CiAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOwogICAgICAgICAgICAgfQorICAgICAgICAgICAgLyogcGJ1ZiBpcyBpbml0aWFsaXplZCBoZXJlLiAqLworICAgICAgICAgICAgcGluZGV4ID0gMDsKICAgICAgICAgICAgIGlmIChzaWduKSB7Ci0gICAgICAgICAgICAgICAgaWYgKCpwYnVmID09ICctJyB8fCAqcGJ1ZiA9PSAnKycpIHsKLSAgICAgICAgICAgICAgICAgICAgc2lnbiA9ICpwYnVmKys7CisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEKGtpbmQsIHBidWYsIHBpbmRleCkgPT0gJy0nKSB7CisgICAgICAgICAgICAgICAgICAgIHNpZ25vYmogPSBtaW51czsKICAgICAgICAgICAgICAgICAgICAgbGVuLS07CisgICAgICAgICAgICAgICAgICAgIHBpbmRleCsrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBlbHNlIGlmIChQeVVuaWNvZGVfUkVBRChraW5kLCBwYnVmLCBwaW5kZXgpID09ICcrJykgeworICAgICAgICAgICAgICAgICAgICBzaWdub2JqID0gcGx1czsKKyAgICAgICAgICAgICAgICAgICAgbGVuLS07CisgICAgICAgICAgICAgICAgICAgIHBpbmRleCsrOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbHNlIGlmIChmbGFncyAmIEZfU0lHTikKLSAgICAgICAgICAgICAgICAgICAgc2lnbiA9ICcrJzsKKyAgICAgICAgICAgICAgICAgICAgc2lnbm9iaiA9IHBsdXM7CiAgICAgICAgICAgICAgICAgZWxzZSBpZiAoZmxhZ3MgJiBGX0JMQU5LKQotICAgICAgICAgICAgICAgICAgICBzaWduID0gJyAnOworICAgICAgICAgICAgICAgICAgICBzaWdub2JqID0gYmxhbms7CiAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICBzaWduID0gMDsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmICh3aWR0aCA8IGxlbikKICAgICAgICAgICAgICAgICB3aWR0aCA9IGxlbjsKLSAgICAgICAgICAgIGlmIChyZXNjbnQgLSAoc2lnbiAhPSAwKSA8IHdpZHRoKSB7Ci0gICAgICAgICAgICAgICAgcmVzbGVuIC09IHJlc2NudDsKLSAgICAgICAgICAgICAgICByZXNjbnQgPSB3aWR0aCArIGZtdGNudCArIDEwMDsKLSAgICAgICAgICAgICAgICByZXNsZW4gKz0gcmVzY250OwotICAgICAgICAgICAgICAgIGlmIChyZXNsZW4gPCAwKSB7Ci0gICAgICAgICAgICAgICAgICAgIFB5X1hERUNSRUYodGVtcCk7Ci0gICAgICAgICAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKF9QeVVuaWNvZGVfUmVzaXplKCZyZXN1bHQsIHJlc2xlbikgPCAwKSB7Ci0gICAgICAgICAgICAgICAgICAgIFB5X1hERUNSRUYodGVtcCk7Ci0gICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgcmVzID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzdWx0KQotICAgICAgICAgICAgICAgICAgICArIHJlc2xlbiAtIHJlc2NudDsKLSAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmIChzaWduKSB7Ci0gICAgICAgICAgICAgICAgaWYgKGZpbGwgIT0gJyAnKQotICAgICAgICAgICAgICAgICAgICAqcmVzKysgPSBzaWduOwotICAgICAgICAgICAgICAgIHJlc2NudC0tOworICAgICAgICAgICAgICAgIGlmIChmaWxsICE9ICcgJykgeworICAgICAgICAgICAgICAgICAgICBhc3NlcnQoc2lnbm9iaiAhPSBOVUxMKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKF9QeUFjY3VfQWNjdW11bGF0ZSgmYWNjLCBzaWdub2JqKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgaWYgKHdpZHRoID4gbGVuKQogICAgICAgICAgICAgICAgICAgICB3aWR0aC0tOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKChmbGFncyAmIEZfQUxUKSAmJiAoYyA9PSAneCcgfHwgYyA9PSAnWCcgfHwgYyA9PSAnbycpKSB7Ci0gICAgICAgICAgICAgICAgYXNzZXJ0KHBidWZbMF0gPT0gJzAnKTsKLSAgICAgICAgICAgICAgICBhc3NlcnQocGJ1ZlsxXSA9PSBjKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoUHlVbmljb2RlX1JFQUQoa2luZCwgcGJ1ZiwgcGluZGV4KSA9PSAnMCcpOworICAgICAgICAgICAgICAgIGFzc2VydChQeVVuaWNvZGVfUkVBRChraW5kLCBwYnVmLCBwaW5kZXggKyAxKSA9PSBjKTsKICAgICAgICAgICAgICAgICBpZiAoZmlsbCAhPSAnICcpIHsKLSAgICAgICAgICAgICAgICAgICAgKnJlcysrID0gKnBidWYrKzsKLSAgICAgICAgICAgICAgICAgICAgKnJlcysrID0gKnBidWYrKzsKKyAgICAgICAgICAgICAgICAgICAgc2Vjb25kID0gZ2V0X2xhdGluMV9jaGFyKAorICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX1JFQUQoa2luZCwgcGJ1ZiwgcGluZGV4ICsgMSkpOworICAgICAgICAgICAgICAgICAgICBwaW5kZXggKz0gMjsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHNlY29uZCA9PSBOVUxMIHx8CisgICAgICAgICAgICAgICAgICAgICAgICBfUHlBY2N1X0FjY3VtdWxhdGUoJmFjYywgemVybykgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgIF9QeUFjY3VfQWNjdW11bGF0ZSgmYWNjLCBzZWNvbmQpKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgICAgICBQeV9DTEVBUihzZWNvbmQpOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICByZXNjbnQgLT0gMjsKICAgICAgICAgICAgICAgICB3aWR0aCAtPSAyOwogICAgICAgICAgICAgICAgIGlmICh3aWR0aCA8IDApCiAgICAgICAgICAgICAgICAgICAgIHdpZHRoID0gMDsKICAgICAgICAgICAgICAgICBsZW4gLT0gMjsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmICh3aWR0aCA+IGxlbiAmJiAhKGZsYWdzICYgRl9MSlVTVCkpIHsKLSAgICAgICAgICAgICAgICBkbyB7Ci0gICAgICAgICAgICAgICAgICAgIC0tcmVzY250OwotICAgICAgICAgICAgICAgICAgICAqcmVzKysgPSBmaWxsOwotICAgICAgICAgICAgICAgIH0gd2hpbGUgKC0td2lkdGggPiBsZW4pOworICAgICAgICAgICAgICAgIGFzc2VydChmaWxsb2JqICE9IE5VTEwpOworICAgICAgICAgICAgICAgIGlmIChyZXBlYXRfYWNjdW11bGF0ZSgmYWNjLCBmaWxsb2JqLCB3aWR0aCAtIGxlbikpCisgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgICAgICB3aWR0aCA9IGxlbjsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmIChmaWxsID09ICcgJykgewotICAgICAgICAgICAgICAgIGlmIChzaWduKQotICAgICAgICAgICAgICAgICAgICAqcmVzKysgPSBzaWduOworICAgICAgICAgICAgICAgIGlmIChzaWduKSB7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydChzaWdub2JqICE9IE5VTEwpOworICAgICAgICAgICAgICAgICAgICBpZiAoX1B5QWNjdV9BY2N1bXVsYXRlKCZhY2MsIHNpZ25vYmopKQorICAgICAgICAgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBpZiAoKGZsYWdzICYgRl9BTFQpICYmIChjID09ICd4JyB8fCBjID09ICdYJyB8fCBjID09ICdvJykpIHsKLSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KHBidWZbMF0gPT0gJzAnKTsKLSAgICAgICAgICAgICAgICAgICAgYXNzZXJ0KHBidWZbMV0gPT0gYyk7Ci0gICAgICAgICAgICAgICAgICAgICpyZXMrKyA9ICpwYnVmKys7Ci0gICAgICAgICAgICAgICAgICAgICpyZXMrKyA9ICpwYnVmKys7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydChQeVVuaWNvZGVfUkVBRChraW5kLCBwYnVmLCBwaW5kZXgpID09ICcwJyk7CisgICAgICAgICAgICAgICAgICAgIGFzc2VydChQeVVuaWNvZGVfUkVBRChraW5kLCBwYnVmLCBwaW5kZXgrMSkgPT0gYyk7CisgICAgICAgICAgICAgICAgICAgIHNlY29uZCA9IGdldF9sYXRpbjFfY2hhcigKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIHBidWYsIHBpbmRleCArIDEpKTsKKyAgICAgICAgICAgICAgICAgICAgcGluZGV4ICs9IDI7CisgICAgICAgICAgICAgICAgICAgIGlmIChzZWNvbmQgPT0gTlVMTCB8fAorICAgICAgICAgICAgICAgICAgICAgICAgX1B5QWNjdV9BY2N1bXVsYXRlKCZhY2MsIHplcm8pIHx8CisgICAgICAgICAgICAgICAgICAgICAgICBfUHlBY2N1X0FjY3VtdWxhdGUoJmFjYywgc2Vjb25kKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgICAgICAgICAgUHlfQ0xFQVIoc2Vjb25kKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBQeV9VTklDT0RFX0NPUFkocmVzLCBwYnVmLCBsZW4pOwotICAgICAgICAgICAgcmVzICs9IGxlbjsKLSAgICAgICAgICAgIHJlc2NudCAtPSBsZW47Ci0gICAgICAgICAgICB3aGlsZSAoLS13aWR0aCA+PSBsZW4pIHsKLSAgICAgICAgICAgICAgICAtLXJlc2NudDsKLSAgICAgICAgICAgICAgICAqcmVzKysgPSAnICc7CisgICAgICAgICAgICAvKiBDb3B5IGFsbCBjaGFyYWN0ZXJzLCBwcmVzZXJ2aW5nIGxlbiAqLworICAgICAgICAgICAgaWYgKHRlbXAgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgIGFzc2VydChwYnVmID09IFB5VW5pY29kZV9EQVRBKHRlbXApKTsKKyAgICAgICAgICAgICAgICB2ID0gUHlVbmljb2RlX1N1YnN0cmluZyh0ZW1wLCBwaW5kZXgsIHBpbmRleCArIGxlbik7CiAgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwID0gKGNvbnN0IGNoYXIgKikgcGJ1ZjsKKyAgICAgICAgICAgICAgICBhc3NlcnQocGJ1ZiAhPSBOVUxMKTsKKyAgICAgICAgICAgICAgICBwICs9IGtpbmQgKiBwaW5kZXg7CisgICAgICAgICAgICAgICAgdiA9IFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoa2luZCwgcCwgbGVuKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmICh2ID09IE5VTEwpCisgICAgICAgICAgICAgICAgZ290byBvbkVycm9yOworICAgICAgICAgICAgciA9IF9QeUFjY3VfQWNjdW11bGF0ZSgmYWNjLCB2KTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRih2KTsKKyAgICAgICAgICAgIGlmIChyKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICAgICAgICAgIGlmICh3aWR0aCA+IGxlbiAmJiByZXBlYXRfYWNjdW11bGF0ZSgmYWNjLCBibGFuaywgd2lkdGggLSBsZW4pKQorICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIGlmIChkaWN0ICYmIChhcmdpZHggPCBhcmdsZW4pICYmIGMgIT0gJyUnKSB7CiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5vdCBhbGwgYXJndW1lbnRzIGNvbnZlcnRlZCBkdXJpbmcgc3RyaW5nIGZvcm1hdHRpbmciKTsKLSAgICAgICAgICAgICAgICBQeV9YREVDUkVGKHRlbXApOwogICAgICAgICAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFB5X1hERUNSRUYodGVtcCk7CisgICAgICAgICAgICBQeV9DTEVBUih0ZW1wKTsKICAgICAgICAgfSAvKiAnJScgKi8KICAgICB9IC8qIHVudGlsIGVuZCAqLwogICAgIGlmIChhcmdpZHggPCBhcmdsZW4gJiYgIWRpY3QpIHsKQEAgLTk4OTIsMTcgKzEzODAzLDIwIEBACiAgICAgICAgIGdvdG8gb25FcnJvcjsKICAgICB9CiAKLSAgICBpZiAoX1B5VW5pY29kZV9SZXNpemUoJnJlc3VsdCwgcmVzbGVuIC0gcmVzY250KSA8IDApCi0gICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICByZXN1bHQgPSBfUHlBY2N1X0ZpbmlzaCgmYWNjKTsKICAgICBpZiAoYXJnc19vd25lZCkgewogICAgICAgICBQeV9ERUNSRUYoYXJncyk7CiAgICAgfQogICAgIFB5X0RFQ1JFRih1Zm9ybWF0KTsKLSAgICByZXR1cm4gKFB5T2JqZWN0ICopcmVzdWx0OworICAgIFB5X1hERUNSRUYodGVtcCk7CisgICAgUHlfWERFQ1JFRihzZWNvbmQpOworICAgIHJldHVybiByZXN1bHQ7CiAKICAgb25FcnJvcjoKLSAgICBQeV9YREVDUkVGKHJlc3VsdCk7CiAgICAgUHlfREVDUkVGKHVmb3JtYXQpOworICAgIFB5X1hERUNSRUYodGVtcCk7CisgICAgUHlfWERFQ1JFRihzZWNvbmQpOworICAgIF9QeUFjY3VfRGVzdHJveSgmYWNjKTsKICAgICBpZiAoYXJnc19vd25lZCkgewogICAgICAgICBQeV9ERUNSRUYoYXJncyk7CiAgICAgfQpAQCAtOTkyNSw4ICsxMzgzOSwxMCBAQAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGFyZ3MsIGt3ZHMsICJ8T3NzOnN0ciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmeCwgJmVuY29kaW5nLCAmZXJyb3JzKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaWYgKHggPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIChQeU9iamVjdCAqKV9QeVVuaWNvZGVfTmV3KDApOworICAgIGlmICh4ID09IE5VTEwpIHsKKyAgICAgICAgUHlfSU5DUkVGKHVuaWNvZGVfZW1wdHkpOworICAgICAgICByZXR1cm4gdW5pY29kZV9lbXB0eTsKKyAgICB9CiAgICAgaWYgKGVuY29kaW5nID09IE5VTEwgJiYgZXJyb3JzID09IE5VTEwpCiAgICAgICAgIHJldHVybiBQeU9iamVjdF9TdHIoeCk7CiAgICAgZWxzZQpAQCAtOTkzNiwzMSArMTM4NTIsMTAxIEBACiBzdGF0aWMgUHlPYmplY3QgKgogdW5pY29kZV9zdWJ0eXBlX25ldyhQeVR5cGVPYmplY3QgKnR5cGUsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnRtcCwgKnBuZXc7Ci0gICAgUHlfc3NpemVfdCBuOworICAgIFB5T2JqZWN0ICp1bmljb2RlLCAqc2VsZjsKKyAgICBQeV9zc2l6ZV90IGxlbmd0aCwgY2hhcl9zaXplOworICAgIGludCBzaGFyZV93c3RyLCBzaGFyZV91dGY4OworICAgIHVuc2lnbmVkIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CiAKICAgICBhc3NlcnQoUHlUeXBlX0lzU3VidHlwZSh0eXBlLCAmUHlVbmljb2RlX1R5cGUpKTsKLSAgICB0bXAgPSAoUHlVbmljb2RlT2JqZWN0ICopdW5pY29kZV9uZXcoJlB5VW5pY29kZV9UeXBlLCBhcmdzLCBrd2RzKTsKLSAgICBpZiAodG1wID09IE5VTEwpCisKKyAgICB1bmljb2RlID0gdW5pY29kZV9uZXcoJlB5VW5pY29kZV9UeXBlLCBhcmdzLCBrd2RzKTsKKyAgICBpZiAodW5pY29kZSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBhc3NlcnQoUHlVbmljb2RlX0NoZWNrKHRtcCkpOwotICAgIHBuZXcgPSAoUHlVbmljb2RlT2JqZWN0ICopIHR5cGUtPnRwX2FsbG9jKHR5cGUsIG4gPSB0bXAtPmxlbmd0aCk7Ci0gICAgaWYgKHBuZXcgPT0gTlVMTCkgewotICAgICAgICBQeV9ERUNSRUYodG1wKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DSEVDSyh1bmljb2RlKSk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWSh1bmljb2RlKSA9PSAtMSkgeworICAgICAgICBQeV9ERUNSRUYodW5pY29kZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBwbmV3LT5zdHIgPSAoUHlfVU5JQ09ERSopIFB5T2JqZWN0X01BTExPQyhzaXplb2YoUHlfVU5JQ09ERSkgKiAobisxKSk7Ci0gICAgaWYgKHBuZXctPnN0ciA9PSBOVUxMKSB7Ci0gICAgICAgIF9QeV9Gb3JnZXRSZWZlcmVuY2UoKFB5T2JqZWN0ICopcG5ldyk7Ci0gICAgICAgIFB5T2JqZWN0X0RlbChwbmV3KTsKLSAgICAgICAgUHlfREVDUkVGKHRtcCk7Ci0gICAgICAgIHJldHVybiBQeUVycl9Ob01lbW9yeSgpOworCisgICAgc2VsZiA9IHR5cGUtPnRwX2FsbG9jKHR5cGUsIDApOworICAgIGlmIChzZWxmID09IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKHVuaWNvZGUpOworICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgUHlfVU5JQ09ERV9DT1BZKHBuZXctPnN0ciwgdG1wLT5zdHIsIG4rMSk7Ci0gICAgcG5ldy0+bGVuZ3RoID0gbjsKLSAgICBwbmV3LT5oYXNoID0gdG1wLT5oYXNoOwotICAgIFB5X0RFQ1JFRih0bXApOwotICAgIHJldHVybiAoUHlPYmplY3QgKilwbmV3OworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh1bmljb2RlKTsKKyAgICBsZW5ndGggPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh1bmljb2RlKTsKKworICAgIF9QeVVuaWNvZGVfTEVOR1RIKHNlbGYpID0gbGVuZ3RoOworI2lmZGVmIFB5X0RFQlVHCisgICAgX1B5VW5pY29kZV9IQVNIKHNlbGYpID0gLTE7CisjZWxzZQorICAgIF9QeVVuaWNvZGVfSEFTSChzZWxmKSA9IF9QeVVuaWNvZGVfSEFTSCh1bmljb2RlKTsKKyNlbmRpZgorICAgIF9QeVVuaWNvZGVfU1RBVEUoc2VsZikuaW50ZXJuZWQgPSAwOworICAgIF9QeVVuaWNvZGVfU1RBVEUoc2VsZikua2luZCA9IGtpbmQ7CisgICAgX1B5VW5pY29kZV9TVEFURShzZWxmKS5jb21wYWN0ID0gMDsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHNlbGYpLmFzY2lpID0gX1B5VW5pY29kZV9TVEFURSh1bmljb2RlKS5hc2NpaTsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHNlbGYpLnJlYWR5ID0gMTsKKyAgICBfUHlVbmljb2RlX1dTVFIoc2VsZikgPSBOVUxMOworICAgIF9QeVVuaWNvZGVfVVRGOF9MRU5HVEgoc2VsZikgPSAwOworICAgIF9QeVVuaWNvZGVfVVRGOChzZWxmKSA9IE5VTEw7CisgICAgX1B5VW5pY29kZV9XU1RSX0xFTkdUSChzZWxmKSA9IDA7CisgICAgX1B5VW5pY29kZV9EQVRBX0FOWShzZWxmKSA9IE5VTEw7CisKKyAgICBzaGFyZV91dGY4ID0gMDsKKyAgICBzaGFyZV93c3RyID0gMDsKKyAgICBpZiAoa2luZCA9PSBQeVVuaWNvZGVfMUJZVEVfS0lORCkgeworICAgICAgICBjaGFyX3NpemUgPSAxOworICAgICAgICBpZiAoUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKHVuaWNvZGUpIDwgMTI4KQorICAgICAgICAgICAgc2hhcmVfdXRmOCA9IDE7CisgICAgfQorICAgIGVsc2UgaWYgKGtpbmQgPT0gUHlVbmljb2RlXzJCWVRFX0tJTkQpIHsKKyAgICAgICAgY2hhcl9zaXplID0gMjsKKyAgICAgICAgaWYgKHNpemVvZih3Y2hhcl90KSA9PSAyKQorICAgICAgICAgICAgc2hhcmVfd3N0ciA9IDE7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBhc3NlcnQoa2luZCA9PSBQeVVuaWNvZGVfNEJZVEVfS0lORCk7CisgICAgICAgIGNoYXJfc2l6ZSA9IDQ7CisgICAgICAgIGlmIChzaXplb2Yod2NoYXJfdCkgPT0gNCkKKyAgICAgICAgICAgIHNoYXJlX3dzdHIgPSAxOworICAgIH0KKworICAgIC8qIEVuc3VyZSB3ZSB3b24ndCBvdmVyZmxvdyB0aGUgbGVuZ3RoLiAqLworICAgIGlmIChsZW5ndGggPiAoUFlfU1NJWkVfVF9NQVggLyBjaGFyX3NpemUgLSAxKSkgeworICAgICAgICBQeUVycl9Ob01lbW9yeSgpOworICAgICAgICBnb3RvIG9uRXJyb3I7CisgICAgfQorICAgIGRhdGEgPSBQeU9iamVjdF9NQUxMT0MoKGxlbmd0aCArIDEpICogY2hhcl9zaXplKTsKKyAgICBpZiAoZGF0YSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgIGdvdG8gb25FcnJvcjsKKyAgICB9CisKKyAgICBfUHlVbmljb2RlX0RBVEFfQU5ZKHNlbGYpID0gZGF0YTsKKyAgICBpZiAoc2hhcmVfdXRmOCkgeworICAgICAgICBfUHlVbmljb2RlX1VURjhfTEVOR1RIKHNlbGYpID0gbGVuZ3RoOworICAgICAgICBfUHlVbmljb2RlX1VURjgoc2VsZikgPSBkYXRhOworICAgIH0KKyAgICBpZiAoc2hhcmVfd3N0cikgeworICAgICAgICBfUHlVbmljb2RlX1dTVFJfTEVOR1RIKHNlbGYpID0gbGVuZ3RoOworICAgICAgICBfUHlVbmljb2RlX1dTVFIoc2VsZikgPSAod2NoYXJfdCAqKWRhdGE7CisgICAgfQorCisgICAgUHlfTUVNQ1BZKGRhdGEsIFB5VW5pY29kZV9EQVRBKHVuaWNvZGUpLAorICAgICAgICAgICAgICBraW5kICogKGxlbmd0aCArIDEpKTsKKyAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHNlbGYsIDEpKTsKKyNpZmRlZiBQeV9ERUJVRworICAgIF9QeVVuaWNvZGVfSEFTSChzZWxmKSA9IF9QeVVuaWNvZGVfSEFTSCh1bmljb2RlKTsKKyNlbmRpZgorICAgIFB5X0RFQ1JFRih1bmljb2RlKTsKKyAgICByZXR1cm4gc2VsZjsKKworb25FcnJvcjoKKyAgICBQeV9ERUNSRUYodW5pY29kZSk7CisgICAgUHlfREVDUkVGKHNlbGYpOworICAgIHJldHVybiBOVUxMOwogfQogCiBQeURvY19TVFJWQVIodW5pY29kZV9kb2MsCkBAIC0xMDAxOCwxMiArMTQwMDQsMTIgQEAKIAogLyogSW5pdGlhbGl6ZSB0aGUgVW5pY29kZSBpbXBsZW1lbnRhdGlvbiAqLwogCi12b2lkIF9QeVVuaWNvZGVfSW5pdCh2b2lkKQoraW50IF9QeVVuaWNvZGVfSW5pdCh2b2lkKQogewogICAgIGludCBpOwogCiAgICAgLyogWFhYIC0gbW92ZSB0aGlzIGFycmF5IHRvIHVuaWNvZGVjdHlwZS5jID8gKi8KLSAgICBQeV9VTklDT0RFIGxpbmVicmVha1tdID0geworICAgIFB5X1VDUzIgbGluZWJyZWFrW10gPSB7CiAgICAgICAgIDB4MDAwQSwgLyogTElORSBGRUVEICovCiAgICAgICAgIDB4MDAwRCwgLyogQ0FSUklBR0UgUkVUVVJOICovCiAgICAgICAgIDB4MDAxQywgLyogRklMRSBTRVBBUkFUT1IgKi8KQEAgLTEwMDM1LDExICsxNDAyMSwxMCBAQAogICAgIH07CiAKICAgICAvKiBJbml0IHRoZSBpbXBsZW1lbnRhdGlvbiAqLwotICAgIGZyZWVfbGlzdCA9IE5VTEw7Ci0gICAgbnVtZnJlZSA9IDA7Ci0gICAgdW5pY29kZV9lbXB0eSA9IF9QeVVuaWNvZGVfTmV3KDApOworICAgIHVuaWNvZGVfZW1wdHkgPSBQeVVuaWNvZGVfTmV3KDAsIDApOwogICAgIGlmICghdW5pY29kZV9lbXB0eSkKLSAgICAgICAgcmV0dXJuOworICAgICAgICBQeV9GYXRhbEVycm9yKCJDYW4ndCBjcmVhdGUgZW1wdHkgc3RyaW5nIik7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeSh1bmljb2RlX2VtcHR5LCAxKSk7CiAKICAgICBmb3IgKGkgPSAwOyBpIDwgMjU2OyBpKyspCiAgICAgICAgIHVuaWNvZGVfbGF0aW4xW2ldID0gTlVMTDsKQEAgLTEwMDQ4LDEwICsxNDAzMywxOSBAQAogCiAgICAgLyogaW5pdGlhbGl6ZSB0aGUgbGluZWJyZWFrIGJsb29tIGZpbHRlciAqLwogICAgIGJsb29tX2xpbmVicmVhayA9IG1ha2VfYmxvb21fbWFzaygKLSAgICAgICAgbGluZWJyZWFrLCBzaXplb2YobGluZWJyZWFrKSAvIHNpemVvZihsaW5lYnJlYWtbMF0pCi0gICAgICAgICk7CisgICAgICAgIFB5VW5pY29kZV8yQllURV9LSU5ELCBsaW5lYnJlYWssCisgICAgICAgIFB5X0FSUkFZX0xFTkdUSChsaW5lYnJlYWspKTsKIAogICAgIFB5VHlwZV9SZWFkeSgmRW5jb2RpbmdNYXBUeXBlKTsKKworI2lmZGVmIEhBVkVfTUJDUworICAgIHdpbnZlci5kd09TVmVyc2lvbkluZm9TaXplID0gc2l6ZW9mKHdpbnZlcik7CisgICAgaWYgKCFHZXRWZXJzaW9uRXgoKE9TVkVSU0lPTklORk8qKSZ3aW52ZXIpKSB7CisgICAgICAgIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyKDApOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorI2VuZGlmCisgICAgcmV0dXJuIDA7CiB9CiAKIC8qIEZpbmFsaXplIHRoZSBVbmljb2RlIGltcGxlbWVudGF0aW9uICovCkBAIC0xMDA1OSwyMSArMTQwNTMsNyBAQAogaW50CiBQeVVuaWNvZGVfQ2xlYXJGcmVlTGlzdCh2b2lkKQogewotICAgIGludCBmcmVlbGlzdF9zaXplID0gbnVtZnJlZTsKLSAgICBQeVVuaWNvZGVPYmplY3QgKnU7Ci0KLSAgICBmb3IgKHUgPSBmcmVlX2xpc3Q7IHUgIT0gTlVMTDspIHsKLSAgICAgICAgUHlVbmljb2RlT2JqZWN0ICp2ID0gdTsKLSAgICAgICAgdSA9ICooUHlVbmljb2RlT2JqZWN0ICoqKXU7Ci0gICAgICAgIGlmICh2LT5zdHIpCi0gICAgICAgICAgICBQeU9iamVjdF9ERUwodi0+c3RyKTsKLSAgICAgICAgUHlfWERFQ1JFRih2LT5kZWZlbmMpOwotICAgICAgICBQeU9iamVjdF9EZWwodik7Ci0gICAgICAgIG51bWZyZWUtLTsKLSAgICB9Ci0gICAgZnJlZV9saXN0ID0gTlVMTDsKLSAgICBhc3NlcnQobnVtZnJlZSA9PSAwKTsKLSAgICByZXR1cm4gZnJlZWxpc3Rfc2l6ZTsKKyAgICByZXR1cm4gMDsKIH0KIAogdm9pZApAQCAtMTAwOTAsMTcgKzE0MDcwLDIyIEBACiAgICAgICAgICAgICB1bmljb2RlX2xhdGluMVtpXSA9IE5VTEw7CiAgICAgICAgIH0KICAgICB9CisgICAgX1B5VW5pY29kZV9DbGVhclN0YXRpY1N0cmluZ3MoKTsKICAgICAodm9pZClQeVVuaWNvZGVfQ2xlYXJGcmVlTGlzdCgpOwogfQogCiB2b2lkCiBQeVVuaWNvZGVfSW50ZXJuSW5QbGFjZShQeU9iamVjdCAqKnApCiB7Ci0gICAgcmVnaXN0ZXIgUHlVbmljb2RlT2JqZWN0ICpzID0gKFB5VW5pY29kZU9iamVjdCAqKSgqcCk7CisgICAgcmVnaXN0ZXIgUHlPYmplY3QgKnMgPSAqcDsKICAgICBQeU9iamVjdCAqdDsKKyNpZmRlZiBQeV9ERUJVRworICAgIGFzc2VydChzICE9IE5VTEwpOworICAgIGFzc2VydChfUHlVbmljb2RlX0NIRUNLKHMpKTsKKyNlbHNlCiAgICAgaWYgKHMgPT0gTlVMTCB8fCAhUHlVbmljb2RlX0NoZWNrKHMpKQotICAgICAgICBQeV9GYXRhbEVycm9yKAotICAgICAgICAgICAgIlB5VW5pY29kZV9JbnRlcm5JblBsYWNlOiB1bmljb2RlIHN0cmluZ3Mgb25seSBwbGVhc2UhIik7CisgICAgICAgIHJldHVybjsKKyNlbmRpZgogICAgIC8qIElmIGl0J3MgYSBzdWJjbGFzcywgd2UgZG9uJ3QgcmVhbGx5IGtub3cgd2hhdCBwdXR0aW5nCiAgICAgICAgaXQgaW4gdGhlIGludGVybmVkIGRpY3QgbWlnaHQgZG8uICovCiAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2tFeGFjdChzKSkKQEAgLTEwMTE4LDcgKzE0MTAzLDcgQEAKICAgICAgICB0aG91Z2ggdGhlIGtleSBpcyBwcmVzZW50IGluIHRoZSBkaWN0aW9uYXJ5LAogICAgICAgIG5hbWVseSB3aGVuIHRoaXMgaGFwcGVucyBkdXJpbmcgYSBzdGFjayBvdmVyZmxvdy4gKi8KICAgICBQeV9BTExPV19SRUNVUlNJT04KLSAgICAgICAgdCA9IFB5RGljdF9HZXRJdGVtKGludGVybmVkLCAoUHlPYmplY3QgKilzKTsKKyAgICB0ID0gUHlEaWN0X0dldEl0ZW0oaW50ZXJuZWQsIHMpOwogICAgIFB5X0VORF9BTExPV19SRUNVUlNJT04KIAogICAgICAgICBpZiAodCkgewpAQCAtMTAxMjksNyArMTQxMTQsNyBAQAogICAgICAgICB9CiAKICAgICBQeVRocmVhZFN0YXRlX0dFVCgpLT5yZWN1cnNpb25fY3JpdGljYWwgPSAxOwotICAgIGlmIChQeURpY3RfU2V0SXRlbShpbnRlcm5lZCwgKFB5T2JqZWN0ICopcywgKFB5T2JqZWN0ICopcykgPCAwKSB7CisgICAgaWYgKFB5RGljdF9TZXRJdGVtKGludGVybmVkLCBzLCBzKSA8IDApIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgUHlUaHJlYWRTdGF0ZV9HRVQoKS0+cmVjdXJzaW9uX2NyaXRpY2FsID0gMDsKICAgICAgICAgcmV0dXJuOwpAQCAtMTAxMzgsNyArMTQxMjMsNyBAQAogICAgIC8qIFRoZSB0d28gcmVmZXJlbmNlcyBpbiBpbnRlcm5lZCBhcmUgbm90IGNvdW50ZWQgYnkgcmVmY250LgogICAgICAgIFRoZSBkZWFsbG9jYXRvciB3aWxsIHRha2UgY2FyZSBvZiB0aGlzICovCiAgICAgUHlfUkVGQ05UKHMpIC09IDI7Ci0gICAgUHlVbmljb2RlX0NIRUNLX0lOVEVSTkVEKHMpID0gU1NUQVRFX0lOVEVSTkVEX01PUlRBTDsKKyAgICBfUHlVbmljb2RlX1NUQVRFKHMpLmludGVybmVkID0gU1NUQVRFX0lOVEVSTkVEX01PUlRBTDsKIH0KIAogdm9pZApAQCAtMTAxNDYsNyArMTQxMzEsNyBAQAogewogICAgIFB5VW5pY29kZV9JbnRlcm5JblBsYWNlKHApOwogICAgIGlmIChQeVVuaWNvZGVfQ0hFQ0tfSU5URVJORUQoKnApICE9IFNTVEFURV9JTlRFUk5FRF9JTU1PUlRBTCkgewotICAgICAgICBQeVVuaWNvZGVfQ0hFQ0tfSU5URVJORUQoKnApID0gU1NUQVRFX0lOVEVSTkVEX0lNTU9SVEFMOworICAgICAgICBfUHlVbmljb2RlX1NUQVRFKCpwKS5pbnRlcm5lZCA9IFNTVEFURV9JTlRFUk5FRF9JTU1PUlRBTDsKICAgICAgICAgUHlfSU5DUkVGKCpwKTsKICAgICB9CiB9CkBAIC0xMDE2MSwxMCArMTQxNDYsMTEgQEAKICAgICByZXR1cm4gczsKIH0KIAotdm9pZCBfUHlfUmVsZWFzZUludGVybmVkVW5pY29kZVN0cmluZ3Modm9pZCkKK3ZvaWQKK19QeV9SZWxlYXNlSW50ZXJuZWRVbmljb2RlU3RyaW5ncyh2b2lkKQogewogICAgIFB5T2JqZWN0ICprZXlzOwotICAgIFB5VW5pY29kZU9iamVjdCAqczsKKyAgICBQeU9iamVjdCAqczsKICAgICBQeV9zc2l6ZV90IGksIG47CiAgICAgUHlfc3NpemVfdCBpbW1vcnRhbF9zaXplID0gMCwgbW9ydGFsX3NpemUgPSAwOwogCkBAIC0xMDE4NSwyMyArMTQxNzEsMjcgQEAKICAgICBmcHJpbnRmKHN0ZGVyciwgInJlbGVhc2luZyAlIiBQWV9GT1JNQVRfU0laRV9UICJkIGludGVybmVkIHN0cmluZ3NcbiIsCiAgICAgICAgICAgICBuKTsKICAgICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7Ci0gICAgICAgIHMgPSAoUHlVbmljb2RlT2JqZWN0ICopIFB5TGlzdF9HRVRfSVRFTShrZXlzLCBpKTsKLSAgICAgICAgc3dpdGNoIChzLT5zdGF0ZSkgeworICAgICAgICBzID0gUHlMaXN0X0dFVF9JVEVNKGtleXMsIGkpOworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURZKHMpID09IC0xKSB7CisgICAgICAgICAgICBhc3NlcnQoMCAmJiAiY291bGQgbm90IHJlYWR5IHN0cmluZyIpOworICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJjb3VsZCBub3QgcmVhZHkgc3RyaW5nXG4iKTsKKyAgICAgICAgfQorICAgICAgICBzd2l0Y2ggKFB5VW5pY29kZV9DSEVDS19JTlRFUk5FRChzKSkgewogICAgICAgICBjYXNlIFNTVEFURV9OT1RfSU5URVJORUQ6CiAgICAgICAgICAgICAvKiBYWFggU2hvdWxkbid0IGhhcHBlbiAqLwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgU1NUQVRFX0lOVEVSTkVEX0lNTU9SVEFMOgogICAgICAgICAgICAgUHlfUkVGQ05UKHMpICs9IDE7Ci0gICAgICAgICAgICBpbW1vcnRhbF9zaXplICs9IHMtPmxlbmd0aDsKKyAgICAgICAgICAgIGltbW9ydGFsX3NpemUgKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgocyk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBTU1RBVEVfSU5URVJORURfTU9SVEFMOgogICAgICAgICAgICAgUHlfUkVGQ05UKHMpICs9IDI7Ci0gICAgICAgICAgICBtb3J0YWxfc2l6ZSArPSBzLT5sZW5ndGg7CisgICAgICAgICAgICBtb3J0YWxfc2l6ZSArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChzKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgUHlfRmF0YWxFcnJvcigiSW5jb25zaXN0ZW50IGludGVybmVkIHN0cmluZyBzdGF0ZS4iKTsKICAgICAgICAgfQotICAgICAgICBzLT5zdGF0ZSA9IFNTVEFURV9OT1RfSU5URVJORUQ7CisgICAgICAgIF9QeVVuaWNvZGVfU1RBVEUocykuaW50ZXJuZWQgPSBTU1RBVEVfTk9UX0lOVEVSTkVEOwogICAgIH0KICAgICBmcHJpbnRmKHN0ZGVyciwgInRvdGFsIHNpemUgb2YgYWxsIGludGVybmVkIHN0cmluZ3M6ICIKICAgICAgICAgICAgICIlIiBQWV9GT1JNQVRfU0laRV9UICJkLyUiIFBZX0ZPUk1BVF9TSVpFX1QgImQgIgpAQCAtMTAyMTgsNyArMTQyMDgsNyBAQAogdHlwZWRlZiBzdHJ1Y3QgewogICAgIFB5T2JqZWN0X0hFQUQKICAgICBQeV9zc2l6ZV90IGl0X2luZGV4OwotICAgIFB5VW5pY29kZU9iamVjdCAqaXRfc2VxOyAvKiBTZXQgdG8gTlVMTCB3aGVuIGl0ZXJhdG9yIGlzIGV4aGF1c3RlZCAqLworICAgIFB5T2JqZWN0ICppdF9zZXE7ICAgIC8qIFNldCB0byBOVUxMIHdoZW4gaXRlcmF0b3IgaXMgZXhoYXVzdGVkICovCiB9IHVuaWNvZGVpdGVyb2JqZWN0OwogCiBzdGF0aWMgdm9pZApAQCAtMTAyMzksMTggKzE0MjI5LDE5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogdW5pY29kZWl0ZXJfbmV4dCh1bmljb2RlaXRlcm9iamVjdCAqaXQpCiB7Ci0gICAgUHlVbmljb2RlT2JqZWN0ICpzZXE7Ci0gICAgUHlPYmplY3QgKml0ZW07CisgICAgUHlPYmplY3QgKnNlcSwgKml0ZW07CiAKICAgICBhc3NlcnQoaXQgIT0gTlVMTCk7CiAgICAgc2VxID0gaXQtPml0X3NlcTsKICAgICBpZiAoc2VxID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGFzc2VydChQeVVuaWNvZGVfQ2hlY2soc2VxKSk7CisgICAgYXNzZXJ0KF9QeVVuaWNvZGVfQ0hFQ0soc2VxKSk7CiAKLSAgICBpZiAoaXQtPml0X2luZGV4IDwgUHlVbmljb2RlX0dFVF9TSVpFKHNlcSkpIHsKLSAgICAgICAgaXRlbSA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKLSAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHNlcSkraXQtPml0X2luZGV4LCAxKTsKKyAgICBpZiAoaXQtPml0X2luZGV4IDwgUHlVbmljb2RlX0dFVF9MRU5HVEgoc2VxKSkgeworICAgICAgICBpbnQga2luZCA9IFB5VW5pY29kZV9LSU5EKHNlcSk7CisgICAgICAgIHZvaWQgKmRhdGEgPSBQeVVuaWNvZGVfREFUQShzZXEpOworICAgICAgICBQeV9VQ1M0IGNociA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGl0LT5pdF9pbmRleCk7CisgICAgICAgIGl0ZW0gPSBQeVVuaWNvZGVfRnJvbU9yZGluYWwoY2hyKTsKICAgICAgICAgaWYgKGl0ZW0gIT0gTlVMTCkKICAgICAgICAgICAgICsraXQtPml0X2luZGV4OwogICAgICAgICByZXR1cm4gaXRlbTsKQEAgLTEwMjY2LDcgKzE0MjU3LDcgQEAKIHsKICAgICBQeV9zc2l6ZV90IGxlbiA9IDA7CiAgICAgaWYgKGl0LT5pdF9zZXEpCi0gICAgICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfU0laRShpdC0+aXRfc2VxKSAtIGl0LT5pdF9pbmRleDsKKyAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgoaXQtPml0X3NlcSkgLSBpdC0+aXRfaW5kZXg7CiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tU3NpemVfdChsZW4pOwogfQogCkBAIC0xMDMyMCwxNiArMTQzMTEsMTkgQEAKICAgICAgICAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsKCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHNlcSkgPT0gLTEpCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIGl0ID0gUHlPYmplY3RfR0NfTmV3KHVuaWNvZGVpdGVyb2JqZWN0LCAmUHlVbmljb2RlSXRlcl9UeXBlKTsKICAgICBpZiAoaXQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaXQtPml0X2luZGV4ID0gMDsKICAgICBQeV9JTkNSRUYoc2VxKTsKLSAgICBpdC0+aXRfc2VxID0gKFB5VW5pY29kZU9iamVjdCAqKXNlcTsKKyAgICBpdC0+aXRfc2VxID0gc2VxOwogICAgIF9QeU9iamVjdF9HQ19UUkFDSyhpdCk7CiAgICAgcmV0dXJuIChQeU9iamVjdCAqKWl0OwogfQogCisKIHNpemVfdAogUHlfVU5JQ09ERV9zdHJsZW4oY29uc3QgUHlfVU5JQ09ERSAqdSkKIHsKQEAgLTEwNDIxLDI1ICsxNDQxNSwzMSBAQAogfQogCiBQeV9VTklDT0RFKgotUHlVbmljb2RlX0FzVW5pY29kZUNvcHkoUHlPYmplY3QgKm9iamVjdCkKK1B5VW5pY29kZV9Bc1VuaWNvZGVDb3B5KFB5T2JqZWN0ICp1bmljb2RlKQogewotICAgIFB5VW5pY29kZU9iamVjdCAqdW5pY29kZSA9IChQeVVuaWNvZGVPYmplY3QgKilvYmplY3Q7Ci0gICAgUHlfVU5JQ09ERSAqY29weTsKLSAgICBQeV9zc2l6ZV90IHNpemU7CisgICAgUHlfVU5JQ09ERSAqdSwgKmNvcHk7CisgICAgUHlfc3NpemVfdCBsZW4sIHNpemU7CiAKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh1bmljb2RlKSkgeworICAgICAgICBQeUVycl9CYWRBcmd1bWVudCgpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgdSA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKHVuaWNvZGUsICZsZW4pOworICAgIGlmICh1ID09IE5VTEwpCisgICAgICAgIHJldHVybiBOVUxMOwogICAgIC8qIEVuc3VyZSB3ZSB3b24ndCBvdmVyZmxvdyB0aGUgc2l6ZS4gKi8KLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpID4gKChQWV9TU0laRV9UX01BWCAvIHNpemVvZihQeV9VTklDT0RFKSkgLSAxKSkgeworICAgIGlmIChsZW4gPiAoKFBZX1NTSVpFX1RfTUFYIC8gc2l6ZW9mKFB5X1VOSUNPREUpKSAtIDEpKSB7CiAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKHVuaWNvZGUpICsgMTsgLyogY29weSB0aGUgbnVsIGNoYXJhY3RlciAqLworICAgIHNpemUgPSBsZW4gKyAxOyAvKiBjb3B5IHRoZSBudWxsIGNoYXJhY3RlciAqLwogICAgIHNpemUgKj0gc2l6ZW9mKFB5X1VOSUNPREUpOwogICAgIGNvcHkgPSBQeU1lbV9NYWxsb2Moc2l6ZSk7CiAgICAgaWYgKGNvcHkgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9Ob01lbW9yeSgpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgbWVtY3B5KGNvcHksIFB5VW5pY29kZV9BU19VTklDT0RFKHVuaWNvZGUpLCBzaXplKTsKKyAgICBtZW1jcHkoY29weSwgdSwgc2l6ZSk7CiAgICAgcmV0dXJuIGNvcHk7CiB9CiAKZGlmZiAtLWdpdCBhL09iamVjdHMvdW5pY29kZXR5cGVfZGIuaCBiL09iamVjdHMvdW5pY29kZXR5cGVfZGIuaAppbmRleCA4OGE3OTEyLi5mYjY2N2YwIDEwMDY0NAotLS0gYS9PYmplY3RzL3VuaWNvZGV0eXBlX2RiLmgKKysrIGIvT2JqZWN0cy91bmljb2RldHlwZV9kYi5oCkBAIC04LDE4NCArOCw5OTAgQEAKICAgICB7MCwgMCwgMCwgMCwgMCwgNDh9LAogICAgIHswLCAwLCAwLCAwLCAwLCAxMDU2fSwKICAgICB7MCwgMCwgMCwgMCwgMCwgMTAyNH0sCi0gICAgezAsIDAsIDAsIDAsIDAsIDU2Mzh9LAotICAgIHswLCAwLCAwLCAxLCAxLCA1NjM4fSwKLSAgICB7MCwgMCwgMCwgMiwgMiwgNTYzOH0sCi0gICAgezAsIDAsIDAsIDMsIDMsIDU2Mzh9LAotICAgIHswLCAwLCAwLCA0LCA0LCA1NjM4fSwKLSAgICB7MCwgMCwgMCwgNSwgNSwgNTYzOH0sCi0gICAgezAsIDAsIDAsIDYsIDYsIDU2Mzh9LAotICAgIHswLCAwLCAwLCA3LCA3LCA1NjM4fSwKLSAgICB7MCwgMCwgMCwgOCwgOCwgNTYzOH0sCi0gICAgezAsIDAsIDAsIDksIDksIDU2Mzh9LAotICAgIHswLCAzMiwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDAsIDAsIDAsIDAsIDE1MzZ9LAotICAgIHs2NTUwNCwgMCwgNjU1MDQsIDAsIDAsIDE4MDF9LAotICAgIHswLCAwLCAwLCAwLCAwLCAxODAxfSwKLSAgICB7MCwgMCwgMCwgMCwgMiwgNTEyNH0sCi0gICAgezAsIDAsIDAsIDAsIDMsIDUxMjR9LAotICAgIHs3NDMsIDAsIDc0MywgMCwgMCwgMTgwMX0sCi0gICAgezAsIDAsIDAsIDAsIDEsIDUxMjR9LAogICAgIHswLCAwLCAwLCAwLCAwLCA1MTIwfSwKLSAgICB7MTIxLCAwLCAxMjEsIDAsIDAsIDE4MDF9LAotICAgIHswLCAxLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NjU1MzUsIDAsIDY1NTM1LCAwLCAwLCAxODAxfSwKLSAgICB7MCwgNjUzMzcsIDAsIDAsIDAsIDE5MjF9LAotICAgIHs2NTMwNCwgMCwgNjUzMDQsIDAsIDAsIDE4MDF9LAotICAgIHswLCA2NTQxNSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezY1MjM2LCAwLCA2NTIzNiwgMCwgMCwgMTgwMX0sCi0gICAgezE5NSwgMCwgMTk1LCAwLCAwLCAxODAxfSwKLSAgICB7MCwgMjEwLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgMjA2LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgMjA1LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNzksIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAyMDIsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAyMDMsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAyMDcsIDAsIDAsIDAsIDE5MjF9LAotICAgIHs5NywgMCwgOTcsIDAsIDAsIDE4MDF9LAotICAgIHswLCAyMTEsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAyMDksIDAsIDAsIDAsIDE5MjF9LAotICAgIHsxNjMsIDAsIDE2MywgMCwgMCwgMTgwMX0sCi0gICAgezAsIDIxMywgMCwgMCwgMCwgMTkyMX0sCi0gICAgezEzMCwgMCwgMTMwLCAwLCAwLCAxODAxfSwKLSAgICB7MCwgMjE0LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgMjE4LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgMjE3LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgMjE5LCAwLCAwLCAwLCAxOTIxfSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgMzU5MH0sCisgICAgezAsIDAsIDAsIDEsIDEsIDM1OTB9LAorICAgIHswLCAwLCAwLCAyLCAyLCAzNTkwfSwKKyAgICB7MCwgMCwgMCwgMywgMywgMzU5MH0sCisgICAgezAsIDAsIDAsIDQsIDQsIDM1OTB9LAorICAgIHswLCAwLCAwLCA1LCA1LCAzNTkwfSwKKyAgICB7MCwgMCwgMCwgNiwgNiwgMzU5MH0sCisgICAgezAsIDAsIDAsIDcsIDcsIDM1OTB9LAorICAgIHswLCAwLCAwLCA4LCA4LCAzNTkwfSwKKyAgICB7MCwgMCwgMCwgOSwgOSwgMzU5MH0sCisgICAgezAsIDMyLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDAsIDAsIDAsIDAsIDE1MzZ9LAorICAgIHstMzIsIDAsIC0zMiwgMCwgMCwgOTk5M30sCisgICAgezAsIDAsIDAsIDAsIDAsIDk5OTN9LAorICAgIHswLCAwLCAwLCAwLCAwLCA0MDk2fSwKKyAgICB7MCwgMCwgMCwgMCwgMiwgMzA3Nn0sCisgICAgezAsIDAsIDAsIDAsIDMsIDMwNzZ9LAorICAgIHsxNjc3NzIxOCwgMTc4MjU3OTIsIDE2Nzc3MjE4LCAwLCAwLCAyNjM3N30sCisgICAgezAsIDAsIDAsIDAsIDAsIDU2MzJ9LAorICAgIHswLCAwLCAwLCAwLCAxLCAzMDc2fSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgMzA3Mn0sCisgICAgezMzNTU0NDM4LCAxODg3NDM3MSwgMzM1NTQ0NDAsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MTIxLCAwLCAxMjEsIDAsIDAsIDk5OTN9LAorICAgIHswLCAxLCAwLCAwLCAwLCAxMDExM30sCisgICAgey0xLCAwLCAtMSwgMCwgMCwgOTk5M30sCisgICAgezE2Nzc3MjI4LCAzMzU1NDQ0MiwgMTY3NzcyMjgsIDAsIDAsIDI2NDk3fSwKKyAgICB7LTIzMiwgMCwgLTIzMiwgMCwgMCwgOTk5M30sCisgICAgezMzNTU0NDQ4LCAxODg3NDM4MSwgMzM1NTQ0NDgsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MCwgLTEyMSwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHsxNjc3NzIzNiwgMTc4MjU4MTAsIDE2Nzc3MjM2LCAwLCAwLCAyNjM3N30sCisgICAgezE5NSwgMCwgMTk1LCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgMjEwLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDIwNiwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAyMDUsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgNzksIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMjAyLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDIwMywgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAyMDcsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7OTcsIDAsIDk3LCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgMjExLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDIwOSwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHsxNjMsIDAsIDE2MywgMCwgMCwgOTk5M30sCisgICAgezAsIDIxMywgMCwgMCwgMCwgMTAxMTN9LAorICAgIHsxMzAsIDAsIDEzMCwgMCwgMCwgOTk5M30sCisgICAgezAsIDIxNCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAyMTgsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMjE3LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDIxOSwgMCwgMCwgMCwgMTAxMTN9LAogICAgIHswLCAwLCAwLCAwLCAwLCAxNzkzfSwKLSAgICB7NTYsIDAsIDU2LCAwLCAwLCAxODAxfSwKLSAgICB7MCwgMiwgMSwgMCwgMCwgMTkyMX0sCi0gICAgezY1NTM1LCAxLCAwLCAwLCAwLCAxODU3fSwKLSAgICB7NjU1MzQsIDAsIDY1NTM1LCAwLCAwLCAxODAxfSwKLSAgICB7NjU0NTcsIDAsIDY1NDU3LCAwLCAwLCAxODAxfSwKLSAgICB7MCwgNjU0MzksIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA2NTQ4MCwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDY1NDA2LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgMTA3OTUsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA2NTM3MywgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDEwNzkyLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MTA4MTUsIDAsIDEwODE1LCAwLCAwLCAxODAxfSwKLSAgICB7MCwgNjUzNDEsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA2OSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDcxLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MTA3ODMsIDAsIDEwNzgzLCAwLCAwLCAxODAxfSwKLSAgICB7MTA3ODAsIDAsIDEwNzgwLCAwLCAwLCAxODAxfSwKLSAgICB7MTA3ODIsIDAsIDEwNzgyLCAwLCAwLCAxODAxfSwKLSAgICB7NjUzMjYsIDAsIDY1MzI2LCAwLCAwLCAxODAxfSwKLSAgICB7NjUzMzAsIDAsIDY1MzMwLCAwLCAwLCAxODAxfSwKLSAgICB7NjUzMzEsIDAsIDY1MzMxLCAwLCAwLCAxODAxfSwKLSAgICB7NjUzMzQsIDAsIDY1MzM0LCAwLCAwLCAxODAxfSwKLSAgICB7NjUzMzMsIDAsIDY1MzMzLCAwLCAwLCAxODAxfSwKLSAgICB7NjUzMjksIDAsIDY1MzI5LCAwLCAwLCAxODAxfSwKLSAgICB7NDI4OTMsIDYxMywgNDI4OTMsIDAsIDAsIDM4NDl9LAotICAgIHs2NTMyNywgMCwgNjUzMjcsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMyNSwgMCwgNjUzMjUsIDAsIDAsIDE4MDF9LAotICAgIHsxMDc0MywgMCwgMTA3NDMsIDAsIDAsIDE4MDF9LAotICAgIHsxMDc0OSwgMCwgMTA3NDksIDAsIDAsIDE4MDF9LAotICAgIHs2NTMyMywgMCwgNjUzMjMsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMyMiwgMCwgNjUzMjIsIDAsIDAsIDE4MDF9LAotICAgIHsxMDcyNywgMCwgMTA3MjcsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMxOCwgMCwgNjUzMTgsIDAsIDAsIDE4MDF9LAotICAgIHs2NTQ2NywgMCwgNjU0NjcsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMxOSwgMCwgNjUzMTksIDAsIDAsIDE4MDF9LAotICAgIHs2NTQ2NSwgMCwgNjU0NjUsIDAsIDAsIDE4MDF9LAotICAgIHs2NTMxNywgMCwgNjUzMTcsIDAsIDAsIDE4MDF9LAotICAgIHs4NCwgMCwgODQsIDAsIDAsIDE1MzZ9LAotICAgIHswLCAwLCAwLCAwLCAwLCAxMDI1fSwKLSAgICB7MCwgMzgsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAzNywgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDY0LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNjMsIDAsIDAsIDAsIDE5MjF9LAotICAgIHs2NTQ5OCwgMCwgNjU0OTgsIDAsIDAsIDE4MDF9LAotICAgIHs2NTQ5OSwgMCwgNjU0OTksIDAsIDAsIDE4MDF9LAotICAgIHs2NTUwNSwgMCwgNjU1MDUsIDAsIDAsIDE4MDF9LAotICAgIHs2NTQ3MiwgMCwgNjU0NzIsIDAsIDAsIDE4MDF9LAotICAgIHs2NTQ3MywgMCwgNjU0NzMsIDAsIDAsIDE4MDF9LAotICAgIHswLCA4LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NjU0NzQsIDAsIDY1NDc0LCAwLCAwLCAxODAxfSwKLSAgICB7NjU0NzksIDAsIDY1NDc5LCAwLCAwLCAxODAxfSwKLSAgICB7MCwgMCwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezY1NDg5LCAwLCA2NTQ4OSwgMCwgMCwgMTgwMX0sCi0gICAgezY1NDgyLCAwLCA2NTQ4MiwgMCwgMCwgMTgwMX0sCi0gICAgezY1NTI4LCAwLCA2NTUyOCwgMCwgMCwgMTgwMX0sCi0gICAgezY1NDUwLCAwLCA2NTQ1MCwgMCwgMCwgMTgwMX0sCi0gICAgezY1NDU2LCAwLCA2NTQ1NiwgMCwgMCwgMTgwMX0sCi0gICAgezcsIDAsIDcsIDAsIDAsIDE4MDF9LAotICAgIHswLCA2NTQ3NiwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezY1NDQwLCAwLCA2NTQ0MCwgMCwgMCwgMTgwMX0sCi0gICAgezAsIDY1NTI5LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgODAsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAxNSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezY1NTIxLCAwLCA2NTUyMSwgMCwgMCwgMTgwMX0sCi0gICAgezAsIDQ4LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NjU0ODgsIDAsIDY1NDg4LCAwLCAwLCAxODAxfSwKLSAgICB7MCwgMCwgMCwgMCwgMCwgMTUzN30sCi0gICAgezAsIDcyNjQsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCAwLCAwLCAwLCAxLCA1NjM2fSwKLSAgICB7MCwgMCwgMCwgMCwgMiwgNTYzNn0sCi0gICAgezAsIDAsIDAsIDAsIDMsIDU2MzZ9LAotICAgIHswLCAwLCAwLCAwLCA0LCA1NjM2fSwKLSAgICB7MCwgMCwgMCwgMCwgNSwgNTYzNn0sCi0gICAgezAsIDAsIDAsIDAsIDYsIDU2MzZ9LAotICAgIHswLCAwLCAwLCAwLCA3LCA1NjM2fSwKLSAgICB7MCwgMCwgMCwgMCwgOCwgNTYzNn0sCi0gICAgezAsIDAsIDAsIDAsIDksIDU2MzZ9LAotICAgIHswLCAwLCAwLCAwLCAwLCA1ODg4fSwKLSAgICB7NDI4NzcsIDc1NDUsIDQyODc3LCAwLCAwLCAzODQ5fSwKLSAgICB7MzgxNCwgMCwgMzgxNCwgMCwgMCwgMTgwMX0sCi0gICAgezY1NDc3LCAwLCA2NTQ3NywgMCwgMCwgMTgwMX0sCi0gICAgezAsIDU3OTIxLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7OCwgMCwgOCwgMCwgMCwgMTgwMX0sCi0gICAgezAsIDY1NTI4LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NzQsIDAsIDc0LCAwLCAwLCAxODAxfSwKLSAgICB7ODYsIDAsIDg2LCAwLCAwLCAxODAxfSwKLSAgICB7MTAwLCAwLCAxMDAsIDAsIDAsIDE4MDF9LAotICAgIHsxMjgsIDAsIDEyOCwgMCwgMCwgMTgwMX0sCi0gICAgezExMiwgMCwgMTEyLCAwLCAwLCAxODAxfSwKLSAgICB7MTI2LCAwLCAxMjYsIDAsIDAsIDE4MDF9LAotICAgIHswLCA2NTUyOCwgMCwgMCwgMCwgMTg1N30sCi0gICAgezksIDAsIDksIDAsIDAsIDE4MDF9LAotICAgIHswLCA2NTQ2MiwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDY1NTI3LCAwLCAwLCAwLCAxODU3fSwKLSAgICB7NTgzMzEsIDAsIDU4MzMxLCAwLCAwLCAxODAxfSwKLSAgICB7MCwgNjU0NTAsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA2NTQzNiwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDY1NDI0LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNjU0MDgsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA2NTQxMCwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDAsIDAsIDAsIDAsIDUxMjR9LAotICAgIHswLCAwLCAwLCAwLCA0LCA1MTI0fSwKLSAgICB7MCwgMCwgMCwgMCwgNSwgNTEyNH0sCi0gICAgezAsIDAsIDAsIDAsIDYsIDUxMjR9LAotICAgIHswLCAwLCAwLCAwLCA3LCA1MTI0fSwKLSAgICB7MCwgMCwgMCwgMCwgOCwgNTEyNH0sCi0gICAgezAsIDAsIDAsIDAsIDksIDUxMjR9LAotICAgIHswLCAwLCAwLCAwLCAwLCAxNzkyfSwKLSAgICB7MCwgNTgwMTksIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA1NzE1MywgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDU3Mjc0LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgMjgsIDAsIDAsIDAsIDE5MjF9LAotICAgIHs2NTUwOCwgMCwgNjU1MDgsIDAsIDAsIDE4MDF9LAotICAgIHswLCAxNiwgMCwgMCwgMCwgNTg4OH0sCi0gICAgezY1NTIwLCAwLCA2NTUyMCwgMCwgMCwgNTg4OH0sCi0gICAgezAsIDI2LCAwLCAwLCAwLCAxMDI0fSwKLSAgICB7NjU1MTAsIDAsIDY1NTEwLCAwLCAwLCAxMDI0fSwKLSAgICB7MCwgNTQ3OTMsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA2MTcyMiwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDU0ODA5LCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NTQ3NDEsIDAsIDU0NzQxLCAwLCAwLCAxODAxfSwKLSAgICB7NTQ3NDQsIDAsIDU0NzQ0LCAwLCAwLCAxODAxfSwKLSAgICB7MCwgNTQ3NTYsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA1NDc4NywgMCwgMCwgMCwgMTkyMX0sCi0gICAgezAsIDU0NzUzLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7MCwgNTQ3NTQsIDAsIDAsIDAsIDE5MjF9LAotICAgIHswLCA1NDcyMSwgMCwgMCwgMCwgMTkyMX0sCi0gICAgezU4MjcyLCAwLCA1ODI3MiwgMCwgMCwgMTgwMX0sCisgICAgezU2LCAwLCA1NiwgMCwgMCwgOTk5M30sCisgICAgezAsIDIsIDEsIDAsIDAsIDEwMTEzfSwKKyAgICB7LTEsIDEsIDAsIDAsIDAsIDEwMDQ5fSwKKyAgICB7LTIsIDAsIC0xLCAwLCAwLCA5OTkzfSwKKyAgICB7LTc5LCAwLCAtNzksIDAsIDAsIDk5OTN9LAorICAgIHszMzU1NDQ1NiwgMTg4NzQzODksIDMzNTU0NDU2LCAwLCAwLCAyNjM3N30sCisgICAgezAsIC05NywgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAtNTYsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgLTEzMCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAxMDc5NSwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAtMTYzLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDEwNzkyLCAwLCAwLCAwLCAxMDExM30sCisgICAgezEwODE1LCAwLCAxMDgxNSwgMCwgMCwgOTk5M30sCisgICAgezAsIC0xOTUsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgNjksIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgNzEsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MTA3ODMsIDAsIDEwNzgzLCAwLCAwLCA5OTkzfSwKKyAgICB7MTA3ODAsIDAsIDEwNzgwLCAwLCAwLCA5OTkzfSwKKyAgICB7MTA3ODIsIDAsIDEwNzgyLCAwLCAwLCA5OTkzfSwKKyAgICB7LTIxMCwgMCwgLTIxMCwgMCwgMCwgOTk5M30sCisgICAgey0yMDYsIDAsIC0yMDYsIDAsIDAsIDk5OTN9LAorICAgIHstMjA1LCAwLCAtMjA1LCAwLCAwLCA5OTkzfSwKKyAgICB7LTIwMiwgMCwgLTIwMiwgMCwgMCwgOTk5M30sCisgICAgey0yMDMsIDAsIC0yMDMsIDAsIDAsIDk5OTN9LAorICAgIHstMjA3LCAwLCAtMjA3LCAwLCAwLCA5OTkzfSwKKyAgICB7NDIyODAsIDAsIDQyMjgwLCAwLCAwLCA5OTkzfSwKKyAgICB7LTIwOSwgMCwgLTIwOSwgMCwgMCwgOTk5M30sCisgICAgey0yMTEsIDAsIC0yMTEsIDAsIDAsIDk5OTN9LAorICAgIHsxMDc0MywgMCwgMTA3NDMsIDAsIDAsIDk5OTN9LAorICAgIHsxMDc0OSwgMCwgMTA3NDksIDAsIDAsIDk5OTN9LAorICAgIHstMjEzLCAwLCAtMjEzLCAwLCAwLCA5OTkzfSwKKyAgICB7LTIxNCwgMCwgLTIxNCwgMCwgMCwgOTk5M30sCisgICAgezEwNzI3LCAwLCAxMDcyNywgMCwgMCwgOTk5M30sCisgICAgey0yMTgsIDAsIC0yMTgsIDAsIDAsIDk5OTN9LAorICAgIHstNjksIDAsIC02OSwgMCwgMCwgOTk5M30sCisgICAgey0yMTcsIDAsIC0yMTcsIDAsIDAsIDk5OTN9LAorICAgIHstNzEsIDAsIC03MSwgMCwgMCwgOTk5M30sCisgICAgey0yMTksIDAsIC0yMTksIDAsIDAsIDk5OTN9LAorICAgIHswLCAwLCAwLCAwLCAwLCAxNDA4OX0sCiAgICAgezAsIDAsIDAsIDAsIDAsIDU4ODl9LAotICAgIHs0Mjg3NywgNzU0NSwgNDI4NzcsIDAsIDAsIDM5Njl9LAotICAgIHs0Mjg5MywgNjEzLCA0Mjg5MywgMCwgMCwgMzk2OX0sCi0gICAgezAsIDQwLCAwLCAwLCAwLCAxOTIxfSwKLSAgICB7NjU0OTYsIDAsIDY1NDk2LCAwLCAwLCAxODAxfSwKKyAgICB7MTY3NzcyNDQsIDE3ODI1ODE4LCAxNjc3NzI0NCwgMCwgMCwgMzAyMTZ9LAorICAgIHswLCAwLCAwLCAwLCAwLCAxMzMyMX0sCisgICAgezAsIDM4LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDM3LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDY0LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDYzLCAwLCAwLCAwLCAxMDExM30sCisgICAgezUwMzMxNjgxLCAxOTkyMjk3MywgNTAzMzE2ODEsIDAsIDAsIDI2Mzc3fSwKKyAgICB7LTM4LCAwLCAtMzgsIDAsIDAsIDk5OTN9LAorICAgIHstMzcsIDAsIC0zNywgMCwgMCwgOTk5M30sCisgICAgezUwMzMxNjg4LCAxOTkyMjk4MCwgNTAzMzE2ODgsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MTY3NzcyNjEsIDE3ODI1ODM1LCAxNjc3NzI2MSwgMCwgMCwgMjYzNzd9LAorICAgIHstNjQsIDAsIC02NCwgMCwgMCwgOTk5M30sCisgICAgey02MywgMCwgLTYzLCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgOCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHsxNjc3NzI2NCwgMTc4MjU4MzgsIDE2Nzc3MjY0LCAwLCAwLCAyNjM3N30sCisgICAgezE2Nzc3MjY3LCAxNzgyNTg0MSwgMTY3NzcyNjcsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHsxNjc3NzI3MCwgMTc4MjU4NDQsIDE2Nzc3MjcwLCAwLCAwLCAyNjM3N30sCisgICAgezE2Nzc3MjczLCAxNzgyNTg0NywgMTY3NzcyNzMsIDAsIDAsIDI2Mzc3fSwKKyAgICB7LTgsIDAsIC04LCAwLCAwLCA5OTkzfSwKKyAgICB7MTY3NzcyNzYsIDE3ODI1ODUwLCAxNjc3NzI3NiwgMCwgMCwgMjYzNzd9LAorICAgIHsxNjc3NzI3OSwgMTc4MjU4NTMsIDE2Nzc3Mjc5LCAwLCAwLCAyNjM3N30sCisgICAgezcsIDAsIDcsIDAsIDAsIDk5OTN9LAorICAgIHswLCAtNjAsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MTY3NzcyODIsIDE3ODI1ODU2LCAxNjc3NzI4MiwgMCwgMCwgMjYzNzd9LAorICAgIHswLCAtNywgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCA4MCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHstODAsIDAsIC04MCwgMCwgMCwgOTk5M30sCisgICAgezAsIDE1LCAwLCAwLCAwLCAxMDExM30sCisgICAgey0xNSwgMCwgLTE1LCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgNDgsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7LTQ4LCAwLCAtNDgsIDAsIDAsIDk5OTN9LAorICAgIHszMzU1NDUwMiwgMTg4NzQ0MzUsIDMzNTU0NTA0LCAwLCAwLCAyNjM3N30sCisgICAgezAsIDAsIDAsIDAsIDAsIDE1Mzd9LAorICAgIHswLCA3MjY0LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIDAsIDAsIDAsIDEsIDM1ODh9LAorICAgIHswLCAwLCAwLCAwLCAyLCAzNTg4fSwKKyAgICB7MCwgMCwgMCwgMCwgMywgMzU4OH0sCisgICAgezAsIDAsIDAsIDAsIDQsIDM1ODh9LAorICAgIHswLCAwLCAwLCAwLCA1LCAzNTg4fSwKKyAgICB7MCwgMCwgMCwgMCwgNiwgMzU4OH0sCisgICAgezAsIDAsIDAsIDAsIDcsIDM1ODh9LAorICAgIHswLCAwLCAwLCAwLCA4LCAzNTg4fSwKKyAgICB7MCwgMCwgMCwgMCwgOSwgMzU4OH0sCisgICAgezAsIDAsIDAsIDAsIDAsIDM4NDB9LAorICAgIHszNTMzMiwgMCwgMzUzMzIsIDAsIDAsIDk5OTN9LAorICAgIHszODE0LCAwLCAzODE0LCAwLCAwLCA5OTkzfSwKKyAgICB7MzM1NTQ1MDksIDE4ODc0NDQyLCAzMzU1NDUwOSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDUxNCwgMTg4NzQ0NDcsIDMzNTU0NTE0LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NTE5LCAxODg3NDQ1MiwgMzM1NTQ1MTksIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ1MjQsIDE4ODc0NDU3LCAzMzU1NDUyNCwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDUyOSwgMTg4NzQ0NjIsIDMzNTU0NTI5LCAwLCAwLCAyNjM3N30sCisgICAgezE2Nzc3MzE3LCAxNzgyNTg5MSwgMTY3NzczMTcsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MTY3NzczMjEsIDE4ODc0NDcwLCAxNjc3NzMyMSwgMCwgMCwgMjY0OTd9LAorICAgIHs4LCAwLCA4LCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgLTgsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MzM1NTQ1NDEsIDE4ODc0NDc0LCAzMzU1NDU0MSwgMCwgMCwgMjYzNzd9LAorICAgIHs1MDMzMTc2MywgMTk5MjMwNTUsIDUwMzMxNzYzLCAwLCAwLCAyNjM3N30sCisgICAgezUwMzMxNzcwLCAxOTkyMzA2MiwgNTAzMzE3NzAsIDAsIDAsIDI2Mzc3fSwKKyAgICB7NTAzMzE3NzcsIDE5OTIzMDY5LCA1MDMzMTc3NywgMCwgMCwgMjYzNzd9LAorICAgIHs3NCwgMCwgNzQsIDAsIDAsIDk5OTN9LAorICAgIHs4NiwgMCwgODYsIDAsIDAsIDk5OTN9LAorICAgIHsxMDAsIDAsIDEwMCwgMCwgMCwgOTk5M30sCisgICAgezEyOCwgMCwgMTI4LCAwLCAwLCA5OTkzfSwKKyAgICB7MTEyLCAwLCAxMTIsIDAsIDAsIDk5OTN9LAorICAgIHsxMjYsIDAsIDEyNiwgMCwgMCwgOTk5M30sCisgICAgezMzNTU0NTY3LCAxODg3NDUwMCwgMTY3NzczNTMsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ1NzMsIDE4ODc0NTA2LCAxNjc3NzM1OSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDU3OSwgMTg4NzQ1MTIsIDE2Nzc3MzY1LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NTg1LCAxODg3NDUxOCwgMTY3NzczNzEsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ1OTEsIDE4ODc0NTI0LCAxNjc3NzM3NywgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDU5NywgMTg4NzQ1MzAsIDE2Nzc3MzgzLCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NjAzLCAxODg3NDUzNiwgMTY3NzczODksIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ2MDksIDE4ODc0NTQyLCAxNjc3NzM5NSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDYxNSwgMTg4NzQ1NDgsIDE2Nzc3NDAxLCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0NjIxLCAxODg3NDU1NCwgMTY3Nzc0MDcsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ2MjcsIDE4ODc0NTYwLCAxNjc3NzQxMywgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDYzMywgMTg4NzQ1NjYsIDE2Nzc3NDE5LCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0NjM5LCAxODg3NDU3MiwgMTY3Nzc0MjUsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ2NDUsIDE4ODc0NTc4LCAxNjc3NzQzMSwgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDY1MSwgMTg4NzQ1ODQsIDE2Nzc3NDM3LCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0NjU3LCAxODg3NDU5MCwgMTY3Nzc0NDMsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ2NjMsIDE4ODc0NTk2LCAxNjc3NzQ0OSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDY2OSwgMTg4NzQ2MDIsIDE2Nzc3NDU1LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0Njc1LCAxODg3NDYwOCwgMTY3Nzc0NjEsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ2ODEsIDE4ODc0NjE0LCAxNjc3NzQ2NywgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDY4NywgMTg4NzQ2MjAsIDE2Nzc3NDczLCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NjkzLCAxODg3NDYyNiwgMTY3Nzc0NzksIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ2OTksIDE4ODc0NjMyLCAxNjc3NzQ4NSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDcwNSwgMTg4NzQ2MzgsIDE2Nzc3NDkxLCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NzExLCAxODg3NDY0NCwgMTY3Nzc0OTcsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ3MTcsIDE4ODc0NjUwLCAxNjc3NzUwMywgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDcyMywgMTg4NzQ2NTYsIDE2Nzc3NTA5LCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0NzI5LCAxODg3NDY2MiwgMTY3Nzc1MTUsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ3MzUsIDE4ODc0NjY4LCAxNjc3NzUyMSwgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDc0MSwgMTg4NzQ2NzQsIDE2Nzc3NTI3LCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0NzQ3LCAxODg3NDY4MCwgMTY3Nzc1MzMsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ3NTMsIDE4ODc0Njg2LCAxNjc3NzUzOSwgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDc1OSwgMTg4NzQ2OTIsIDE2Nzc3NTQ1LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NzY1LCAxODg3NDY5OCwgMTY3Nzc1NTEsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ3NzEsIDE4ODc0NzA0LCAxNjc3NzU1NywgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDc3NywgMTg4NzQ3MTAsIDE2Nzc3NTYzLCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0NzgzLCAxODg3NDcxNiwgMTY3Nzc1NjksIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ3ODksIDE4ODc0NzIyLCAxNjc3NzU3NSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDc5NSwgMTg4NzQ3MjgsIDE2Nzc3NTgxLCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0ODAxLCAxODg3NDczNCwgMTY3Nzc1ODcsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ4MDcsIDE4ODc0NzQwLCAxNjc3NzU5MywgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDgxMywgMTg4NzQ3NDYsIDE2Nzc3NTk5LCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0ODE5LCAxODg3NDc1MiwgMTY3Nzc2MDUsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ4MjUsIDE4ODc0NzU4LCAxNjc3NzYxMSwgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDgzMSwgMTg4NzQ3NjQsIDE2Nzc3NjE3LCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0ODM3LCAxODg3NDc3MCwgMTY3Nzc2MjMsIDAsIDAsIDI2NDMzfSwKKyAgICB7MzM1NTQ4NDMsIDE4ODc0Nzc2LCAxNjc3NzYyOSwgMCwgMCwgMjY0MzN9LAorICAgIHszMzU1NDg0OSwgMTg4NzQ3ODIsIDE2Nzc3NjM1LCAwLCAwLCAyNjQzM30sCisgICAgezMzNTU0ODU1LCAxODg3NDc4OCwgMzM1NTQ4NTcsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ4NjIsIDE4ODc0Nzk1LCAxNjc3NzY0OCwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDg2OCwgMTg4NzQ4MDEsIDMzNTU0ODcwLCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0ODc1LCAxODg3NDgwOCwgMzM1NTQ4NzUsIDAsIDAsIDI2Mzc3fSwKKyAgICB7NTAzMzIwOTcsIDE5OTIzMzg5LCA1MDMzMjEwMCwgMCwgMCwgMjYzNzd9LAorICAgIHswLCAtNzQsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MzM1NTQ4OTAsIDE4ODc0ODIzLCAxNjc3NzY3NiwgMCwgMCwgMjY0MzN9LAorICAgIHsxNjc3NzY3OSwgMTc4MjYyNTMsIDE2Nzc3Njc5LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0ODk5LCAxODg3NDgzMiwgMzM1NTQ5MDEsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ5MDYsIDE4ODc0ODM5LCAxNjc3NzY5MiwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NDkxMiwgMTg4NzQ4NDUsIDMzNTU0OTE0LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0OTE5LCAxODg3NDg1MiwgMzM1NTQ5MTksIDAsIDAsIDI2Mzc3fSwKKyAgICB7NTAzMzIxNDEsIDE5OTIzNDMzLCA1MDMzMjE0NCwgMCwgMCwgMjYzNzd9LAorICAgIHswLCAtODYsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MzM1NTQ5MzQsIDE4ODc0ODY3LCAxNjc3NzcyMCwgMCwgMCwgMjY0MzN9LAorICAgIHs1MDMzMjE1NywgMTk5MjM0NDksIDUwMzMyMTU3LCAwLCAwLCAyNjM3N30sCisgICAgezUwMzMyMTY0LCAxOTkyMzQ1NiwgNTAzMzIxNjQsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ5NTQsIDE4ODc0ODg3LCAzMzU1NDk1NCwgMCwgMCwgMjYzNzd9LAorICAgIHs1MDMzMjE3NiwgMTk5MjM0NjgsIDUwMzMyMTc2LCAwLCAwLCAyNjM3N30sCisgICAgezAsIC0xMDAsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7NTAzMzIxODMsIDE5OTIzNDc1LCA1MDMzMjE4MywgMCwgMCwgMjYzNzd9LAorICAgIHs1MDMzMjE5MCwgMTk5MjM0ODIsIDUwMzMyMTkwLCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU0OTgwLCAxODg3NDkxMywgMzM1NTQ5ODAsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTQ5ODUsIDE4ODc0OTE4LCAzMzU1NDk4NSwgMCwgMCwgMjYzNzd9LAorICAgIHs1MDMzMjIwNywgMTk5MjM0OTksIDUwMzMyMjA3LCAwLCAwLCAyNjM3N30sCisgICAgezAsIC0xMTIsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MzM1NTQ5OTcsIDE4ODc0OTMwLCAzMzU1NDk5OSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NTAwNCwgMTg4NzQ5MzcsIDE2Nzc3NzkwLCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU1MDEwLCAxODg3NDk0MywgMzM1NTUwMTIsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTUwMTcsIDE4ODc0OTUwLCAzMzU1NTAxNywgMCwgMCwgMjYzNzd9LAorICAgIHs1MDMzMjIzOSwgMTk5MjM1MzEsIDUwMzMyMjQyLCAwLCAwLCAyNjM3N30sCisgICAgezAsIC0xMjgsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgLTEyNiwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHszMzU1NTAzMiwgMTg4NzQ5NjUsIDE2Nzc3ODE4LCAwLCAwLCAyNjQzM30sCisgICAgezAsIDAsIDAsIDAsIDAsIDMwNzZ9LAorICAgIHswLCAwLCAwLCAwLCA0LCAzMDc2fSwKKyAgICB7MCwgMCwgMCwgMCwgNSwgMzA3Nn0sCisgICAgezAsIDAsIDAsIDAsIDYsIDMwNzZ9LAorICAgIHswLCAwLCAwLCAwLCA3LCAzMDc2fSwKKyAgICB7MCwgMCwgMCwgMCwgOCwgMzA3Nn0sCisgICAgezAsIDAsIDAsIDAsIDksIDMwNzZ9LAorICAgIHswLCAwLCAwLCAwLCAwLCAxNzkyfSwKKyAgICB7MCwgLTc1MTcsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgLTgzODMsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgLTgyNjIsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgMjgsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7LTI4LCAwLCAtMjgsIDAsIDAsIDk5OTN9LAorICAgIHswLCAxNiwgMCwgMCwgMCwgMTIxNjB9LAorICAgIHstMTYsIDAsIC0xNiwgMCwgMCwgMTIwNDB9LAorICAgIHswLCAyNiwgMCwgMCwgMCwgOTM0NH0sCisgICAgey0yNiwgMCwgLTI2LCAwLCAwLCA5MjI0fSwKKyAgICB7MCwgLTEwNzQzLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIC0zODE0LCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIC0xMDcyNywgMCwgMCwgMCwgMTAxMTN9LAorICAgIHstMTA3OTUsIDAsIC0xMDc5NSwgMCwgMCwgOTk5M30sCisgICAgey0xMDc5MiwgMCwgLTEwNzkyLCAwLCAwLCA5OTkzfSwKKyAgICB7MCwgLTEwNzgwLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIC0xMDc0OSwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAtMTA3ODMsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MCwgLTEwNzgyLCAwLCAwLCAwLCAxMDExM30sCisgICAgezAsIC0xMDgxNSwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHstNzI2NCwgMCwgLTcyNjQsIDAsIDAsIDk5OTN9LAorICAgIHswLCAwLCAwLCAwLCAwLCA1MTIxfSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgMzg0MX0sCisgICAgezAsIC0zNTMzMiwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHswLCAtNDIyODAsIDAsIDAsIDAsIDEwMTEzfSwKKyAgICB7MzM1NTUwMzgsIDE4ODc0OTcxLCAzMzU1NTA0MCwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NTA0NSwgMTg4NzQ5NzgsIDMzNTU1MDQ3LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU1MDUyLCAxODg3NDk4NSwgMzM1NTUwNTQsIDAsIDAsIDI2Mzc3fSwKKyAgICB7NTAzMzIyNzYsIDE5OTIzNTY4LCA1MDMzMjI3OSwgMCwgMCwgMjYzNzd9LAorICAgIHs1MDMzMjI4NiwgMTk5MjM1NzgsIDUwMzMyMjg5LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU1MDc5LCAxODg3NTAxMiwgMzM1NTUwODEsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTUwODYsIDE4ODc1MDE5LCAzMzU1NTA4OCwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NTA5MywgMTg4NzUwMjYsIDMzNTU1MDk1LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU1MTAwLCAxODg3NTAzMywgMzM1NTUxMDIsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MzM1NTUxMDcsIDE4ODc1MDQwLCAzMzU1NTEwOSwgMCwgMCwgMjYzNzd9LAorICAgIHszMzU1NTExNCwgMTg4NzUwNDcsIDMzNTU1MTE2LCAwLCAwLCAyNjM3N30sCisgICAgezMzNTU1MTIxLCAxODg3NTA1NCwgMzM1NTUxMjMsIDAsIDAsIDI2Mzc3fSwKKyAgICB7MCwgMCwgMCwgMCwgMCwgMTAyNX0sCisgICAgezAsIDAsIDAsIDAsIDAsIDU2MzN9LAorICAgIHswLCA0MCwgMCwgMCwgMCwgMTAxMTN9LAorICAgIHstNDAsIDAsIC00MCwgMCwgMCwgOTk5M30sCit9OworCisvKiBleHRlbmRlZCBjYXNlIG1hcHBpbmdzICovCisKK2NvbnN0IFB5X1VDUzQgX1B5VW5pY29kZV9FeHRlbmRlZENhc2VbXSA9IHsKKyAgICAxODEsCisgICAgOTU2LAorICAgIDkyNCwKKyAgICAyMjMsCisgICAgMTE1LAorICAgIDExNSwKKyAgICA4MywKKyAgICA4MywKKyAgICA4MywKKyAgICAxMTUsCisgICAgMTA1LAorICAgIDc3NSwKKyAgICAzMDQsCisgICAgMzI5LAorICAgIDcwMCwKKyAgICAxMTAsCisgICAgNzAwLAorICAgIDc4LAorICAgIDM4MywKKyAgICAxMTUsCisgICAgODMsCisgICAgNDk2LAorICAgIDEwNiwKKyAgICA3ODAsCisgICAgNzQsCisgICAgNzgwLAorICAgIDgzNywKKyAgICA5NTMsCisgICAgOTIxLAorICAgIDkxMiwKKyAgICA5NTMsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA5MjEsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA5NDQsCisgICAgOTY1LAorICAgIDc3NiwKKyAgICA3NjksCisgICAgOTMzLAorICAgIDc3NiwKKyAgICA3NjksCisgICAgOTYyLAorICAgIDk2MywKKyAgICA5MzEsCisgICAgOTc2LAorICAgIDk0NiwKKyAgICA5MTQsCisgICAgOTc3LAorICAgIDk1MiwKKyAgICA5MjAsCisgICAgOTgxLAorICAgIDk2NiwKKyAgICA5MzQsCisgICAgOTgyLAorICAgIDk2MCwKKyAgICA5MjgsCisgICAgMTAwOCwKKyAgICA5NTQsCisgICAgOTIyLAorICAgIDEwMDksCisgICAgOTYxLAorICAgIDkyOSwKKyAgICAxMDEzLAorICAgIDk0OSwKKyAgICA5MTcsCisgICAgMTQxNSwKKyAgICAxMzgxLAorICAgIDE0MTAsCisgICAgMTMzMywKKyAgICAxMzYyLAorICAgIDEzMzMsCisgICAgMTQxMCwKKyAgICA3ODMwLAorICAgIDEwNCwKKyAgICA4MTcsCisgICAgNzIsCisgICAgODE3LAorICAgIDc4MzEsCisgICAgMTE2LAorICAgIDc3NiwKKyAgICA4NCwKKyAgICA3NzYsCisgICAgNzgzMiwKKyAgICAxMTksCisgICAgNzc4LAorICAgIDg3LAorICAgIDc3OCwKKyAgICA3ODMzLAorICAgIDEyMSwKKyAgICA3NzgsCisgICAgODksCisgICAgNzc4LAorICAgIDc4MzQsCisgICAgOTcsCisgICAgNzAyLAorICAgIDY1LAorICAgIDcwMiwKKyAgICA3ODM1LAorICAgIDc3NzcsCisgICAgNzc3NiwKKyAgICAyMjMsCisgICAgMTE1LAorICAgIDExNSwKKyAgICA3ODM4LAorICAgIDgwMTYsCisgICAgOTY1LAorICAgIDc4NywKKyAgICA5MzMsCisgICAgNzg3LAorICAgIDgwMTgsCisgICAgOTY1LAorICAgIDc4NywKKyAgICA3NjgsCisgICAgOTMzLAorICAgIDc4NywKKyAgICA3NjgsCisgICAgODAyMCwKKyAgICA5NjUsCisgICAgNzg3LAorICAgIDc2OSwKKyAgICA5MzMsCisgICAgNzg3LAorICAgIDc2OSwKKyAgICA4MDIyLAorICAgIDk2NSwKKyAgICA3ODcsCisgICAgODM0LAorICAgIDkzMywKKyAgICA3ODcsCisgICAgODM0LAorICAgIDgwNjQsCisgICAgNzkzNiwKKyAgICA5NTMsCisgICAgNzk0NCwKKyAgICA5MjEsCisgICAgODA3MiwKKyAgICA4MDY1LAorICAgIDc5MzcsCisgICAgOTUzLAorICAgIDc5NDUsCisgICAgOTIxLAorICAgIDgwNzMsCisgICAgODA2NiwKKyAgICA3OTM4LAorICAgIDk1MywKKyAgICA3OTQ2LAorICAgIDkyMSwKKyAgICA4MDc0LAorICAgIDgwNjcsCisgICAgNzkzOSwKKyAgICA5NTMsCisgICAgNzk0NywKKyAgICA5MjEsCisgICAgODA3NSwKKyAgICA4MDY4LAorICAgIDc5NDAsCisgICAgOTUzLAorICAgIDc5NDgsCisgICAgOTIxLAorICAgIDgwNzYsCisgICAgODA2OSwKKyAgICA3OTQxLAorICAgIDk1MywKKyAgICA3OTQ5LAorICAgIDkyMSwKKyAgICA4MDc3LAorICAgIDgwNzAsCisgICAgNzk0MiwKKyAgICA5NTMsCisgICAgNzk1MCwKKyAgICA5MjEsCisgICAgODA3OCwKKyAgICA4MDcxLAorICAgIDc5NDMsCisgICAgOTUzLAorICAgIDc5NTEsCisgICAgOTIxLAorICAgIDgwNzksCisgICAgODA2NCwKKyAgICA3OTM2LAorICAgIDk1MywKKyAgICA3OTQ0LAorICAgIDkyMSwKKyAgICA4MDcyLAorICAgIDgwNjUsCisgICAgNzkzNywKKyAgICA5NTMsCisgICAgNzk0NSwKKyAgICA5MjEsCisgICAgODA3MywKKyAgICA4MDY2LAorICAgIDc5MzgsCisgICAgOTUzLAorICAgIDc5NDYsCisgICAgOTIxLAorICAgIDgwNzQsCisgICAgODA2NywKKyAgICA3OTM5LAorICAgIDk1MywKKyAgICA3OTQ3LAorICAgIDkyMSwKKyAgICA4MDc1LAorICAgIDgwNjgsCisgICAgNzk0MCwKKyAgICA5NTMsCisgICAgNzk0OCwKKyAgICA5MjEsCisgICAgODA3NiwKKyAgICA4MDY5LAorICAgIDc5NDEsCisgICAgOTUzLAorICAgIDc5NDksCisgICAgOTIxLAorICAgIDgwNzcsCisgICAgODA3MCwKKyAgICA3OTQyLAorICAgIDk1MywKKyAgICA3OTUwLAorICAgIDkyMSwKKyAgICA4MDc4LAorICAgIDgwNzEsCisgICAgNzk0MywKKyAgICA5NTMsCisgICAgNzk1MSwKKyAgICA5MjEsCisgICAgODA3OSwKKyAgICA4MDgwLAorICAgIDc5NjgsCisgICAgOTUzLAorICAgIDc5NzYsCisgICAgOTIxLAorICAgIDgwODgsCisgICAgODA4MSwKKyAgICA3OTY5LAorICAgIDk1MywKKyAgICA3OTc3LAorICAgIDkyMSwKKyAgICA4MDg5LAorICAgIDgwODIsCisgICAgNzk3MCwKKyAgICA5NTMsCisgICAgNzk3OCwKKyAgICA5MjEsCisgICAgODA5MCwKKyAgICA4MDgzLAorICAgIDc5NzEsCisgICAgOTUzLAorICAgIDc5NzksCisgICAgOTIxLAorICAgIDgwOTEsCisgICAgODA4NCwKKyAgICA3OTcyLAorICAgIDk1MywKKyAgICA3OTgwLAorICAgIDkyMSwKKyAgICA4MDkyLAorICAgIDgwODUsCisgICAgNzk3MywKKyAgICA5NTMsCisgICAgNzk4MSwKKyAgICA5MjEsCisgICAgODA5MywKKyAgICA4MDg2LAorICAgIDc5NzQsCisgICAgOTUzLAorICAgIDc5ODIsCisgICAgOTIxLAorICAgIDgwOTQsCisgICAgODA4NywKKyAgICA3OTc1LAorICAgIDk1MywKKyAgICA3OTgzLAorICAgIDkyMSwKKyAgICA4MDk1LAorICAgIDgwODAsCisgICAgNzk2OCwKKyAgICA5NTMsCisgICAgNzk3NiwKKyAgICA5MjEsCisgICAgODA4OCwKKyAgICA4MDgxLAorICAgIDc5NjksCisgICAgOTUzLAorICAgIDc5NzcsCisgICAgOTIxLAorICAgIDgwODksCisgICAgODA4MiwKKyAgICA3OTcwLAorICAgIDk1MywKKyAgICA3OTc4LAorICAgIDkyMSwKKyAgICA4MDkwLAorICAgIDgwODMsCisgICAgNzk3MSwKKyAgICA5NTMsCisgICAgNzk3OSwKKyAgICA5MjEsCisgICAgODA5MSwKKyAgICA4MDg0LAorICAgIDc5NzIsCisgICAgOTUzLAorICAgIDc5ODAsCisgICAgOTIxLAorICAgIDgwOTIsCisgICAgODA4NSwKKyAgICA3OTczLAorICAgIDk1MywKKyAgICA3OTgxLAorICAgIDkyMSwKKyAgICA4MDkzLAorICAgIDgwODYsCisgICAgNzk3NCwKKyAgICA5NTMsCisgICAgNzk4MiwKKyAgICA5MjEsCisgICAgODA5NCwKKyAgICA4MDg3LAorICAgIDc5NzUsCisgICAgOTUzLAorICAgIDc5ODMsCisgICAgOTIxLAorICAgIDgwOTUsCisgICAgODA5NiwKKyAgICA4MDMyLAorICAgIDk1MywKKyAgICA4MDQwLAorICAgIDkyMSwKKyAgICA4MTA0LAorICAgIDgwOTcsCisgICAgODAzMywKKyAgICA5NTMsCisgICAgODA0MSwKKyAgICA5MjEsCisgICAgODEwNSwKKyAgICA4MDk4LAorICAgIDgwMzQsCisgICAgOTUzLAorICAgIDgwNDIsCisgICAgOTIxLAorICAgIDgxMDYsCisgICAgODA5OSwKKyAgICA4MDM1LAorICAgIDk1MywKKyAgICA4MDQzLAorICAgIDkyMSwKKyAgICA4MTA3LAorICAgIDgxMDAsCisgICAgODAzNiwKKyAgICA5NTMsCisgICAgODA0NCwKKyAgICA5MjEsCisgICAgODEwOCwKKyAgICA4MTAxLAorICAgIDgwMzcsCisgICAgOTUzLAorICAgIDgwNDUsCisgICAgOTIxLAorICAgIDgxMDksCisgICAgODEwMiwKKyAgICA4MDM4LAorICAgIDk1MywKKyAgICA4MDQ2LAorICAgIDkyMSwKKyAgICA4MTEwLAorICAgIDgxMDMsCisgICAgODAzOSwKKyAgICA5NTMsCisgICAgODA0NywKKyAgICA5MjEsCisgICAgODExMSwKKyAgICA4MDk2LAorICAgIDgwMzIsCisgICAgOTUzLAorICAgIDgwNDAsCisgICAgOTIxLAorICAgIDgxMDQsCisgICAgODA5NywKKyAgICA4MDMzLAorICAgIDk1MywKKyAgICA4MDQxLAorICAgIDkyMSwKKyAgICA4MTA1LAorICAgIDgwOTgsCisgICAgODAzNCwKKyAgICA5NTMsCisgICAgODA0MiwKKyAgICA5MjEsCisgICAgODEwNiwKKyAgICA4MDk5LAorICAgIDgwMzUsCisgICAgOTUzLAorICAgIDgwNDMsCisgICAgOTIxLAorICAgIDgxMDcsCisgICAgODEwMCwKKyAgICA4MDM2LAorICAgIDk1MywKKyAgICA4MDQ0LAorICAgIDkyMSwKKyAgICA4MTA4LAorICAgIDgxMDEsCisgICAgODAzNywKKyAgICA5NTMsCisgICAgODA0NSwKKyAgICA5MjEsCisgICAgODEwOSwKKyAgICA4MTAyLAorICAgIDgwMzgsCisgICAgOTUzLAorICAgIDgwNDYsCisgICAgOTIxLAorICAgIDgxMTAsCisgICAgODEwMywKKyAgICA4MDM5LAorICAgIDk1MywKKyAgICA4MDQ3LAorICAgIDkyMSwKKyAgICA4MTExLAorICAgIDgxMTQsCisgICAgODA0OCwKKyAgICA5NTMsCisgICAgODEyMiwKKyAgICA5MjEsCisgICAgODEyMiwKKyAgICA4MzcsCisgICAgODExNSwKKyAgICA5NDUsCisgICAgOTUzLAorICAgIDkxMywKKyAgICA5MjEsCisgICAgODEyNCwKKyAgICA4MTE2LAorICAgIDk0MCwKKyAgICA5NTMsCisgICAgOTAyLAorICAgIDkyMSwKKyAgICA5MDIsCisgICAgODM3LAorICAgIDgxMTgsCisgICAgOTQ1LAorICAgIDgzNCwKKyAgICA5MTMsCisgICAgODM0LAorICAgIDgxMTksCisgICAgOTQ1LAorICAgIDgzNCwKKyAgICA5NTMsCisgICAgOTEzLAorICAgIDgzNCwKKyAgICA5MjEsCisgICAgOTEzLAorICAgIDgzNCwKKyAgICA4MzcsCisgICAgODExNSwKKyAgICA5NDUsCisgICAgOTUzLAorICAgIDkxMywKKyAgICA5MjEsCisgICAgODEyNCwKKyAgICA4MTI2LAorICAgIDk1MywKKyAgICA5MjEsCisgICAgODEzMCwKKyAgICA4MDUyLAorICAgIDk1MywKKyAgICA4MTM4LAorICAgIDkyMSwKKyAgICA4MTM4LAorICAgIDgzNywKKyAgICA4MTMxLAorICAgIDk1MSwKKyAgICA5NTMsCisgICAgOTE5LAorICAgIDkyMSwKKyAgICA4MTQwLAorICAgIDgxMzIsCisgICAgOTQyLAorICAgIDk1MywKKyAgICA5MDUsCisgICAgOTIxLAorICAgIDkwNSwKKyAgICA4MzcsCisgICAgODEzNCwKKyAgICA5NTEsCisgICAgODM0LAorICAgIDkxOSwKKyAgICA4MzQsCisgICAgODEzNSwKKyAgICA5NTEsCisgICAgODM0LAorICAgIDk1MywKKyAgICA5MTksCisgICAgODM0LAorICAgIDkyMSwKKyAgICA5MTksCisgICAgODM0LAorICAgIDgzNywKKyAgICA4MTMxLAorICAgIDk1MSwKKyAgICA5NTMsCisgICAgOTE5LAorICAgIDkyMSwKKyAgICA4MTQwLAorICAgIDgxNDYsCisgICAgOTUzLAorICAgIDc3NiwKKyAgICA3NjgsCisgICAgOTIxLAorICAgIDc3NiwKKyAgICA3NjgsCisgICAgODE0NywKKyAgICA5NTMsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA5MjEsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA4MTUwLAorICAgIDk1MywKKyAgICA4MzQsCisgICAgOTIxLAorICAgIDgzNCwKKyAgICA4MTUxLAorICAgIDk1MywKKyAgICA3NzYsCisgICAgODM0LAorICAgIDkyMSwKKyAgICA3NzYsCisgICAgODM0LAorICAgIDgxNjIsCisgICAgOTY1LAorICAgIDc3NiwKKyAgICA3NjgsCisgICAgOTMzLAorICAgIDc3NiwKKyAgICA3NjgsCisgICAgODE2MywKKyAgICA5NjUsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA5MzMsCisgICAgNzc2LAorICAgIDc2OSwKKyAgICA4MTY0LAorICAgIDk2MSwKKyAgICA3ODcsCisgICAgOTI5LAorICAgIDc4NywKKyAgICA4MTY2LAorICAgIDk2NSwKKyAgICA4MzQsCisgICAgOTMzLAorICAgIDgzNCwKKyAgICA4MTY3LAorICAgIDk2NSwKKyAgICA3NzYsCisgICAgODM0LAorICAgIDkzMywKKyAgICA3NzYsCisgICAgODM0LAorICAgIDgxNzgsCisgICAgODA2MCwKKyAgICA5NTMsCisgICAgODE4NiwKKyAgICA5MjEsCisgICAgODE4NiwKKyAgICA4MzcsCisgICAgODE3OSwKKyAgICA5NjksCisgICAgOTUzLAorICAgIDkzNywKKyAgICA5MjEsCisgICAgODE4OCwKKyAgICA4MTgwLAorICAgIDk3NCwKKyAgICA5NTMsCisgICAgOTExLAorICAgIDkyMSwKKyAgICA5MTEsCisgICAgODM3LAorICAgIDgxODIsCisgICAgOTY5LAorICAgIDgzNCwKKyAgICA5MzcsCisgICAgODM0LAorICAgIDgxODMsCisgICAgOTY5LAorICAgIDgzNCwKKyAgICA5NTMsCisgICAgOTM3LAorICAgIDgzNCwKKyAgICA5MjEsCisgICAgOTM3LAorICAgIDgzNCwKKyAgICA4MzcsCisgICAgODE3OSwKKyAgICA5NjksCisgICAgOTUzLAorICAgIDkzNywKKyAgICA5MjEsCisgICAgODE4OCwKKyAgICA2NDI1NiwKKyAgICAxMDIsCisgICAgMTAyLAorICAgIDcwLAorICAgIDcwLAorICAgIDcwLAorICAgIDEwMiwKKyAgICA2NDI1NywKKyAgICAxMDIsCisgICAgMTA1LAorICAgIDcwLAorICAgIDczLAorICAgIDcwLAorICAgIDEwNSwKKyAgICA2NDI1OCwKKyAgICAxMDIsCisgICAgMTA4LAorICAgIDcwLAorICAgIDc2LAorICAgIDcwLAorICAgIDEwOCwKKyAgICA2NDI1OSwKKyAgICAxMDIsCisgICAgMTAyLAorICAgIDEwNSwKKyAgICA3MCwKKyAgICA3MCwKKyAgICA3MywKKyAgICA3MCwKKyAgICAxMDIsCisgICAgMTA1LAorICAgIDY0MjYwLAorICAgIDEwMiwKKyAgICAxMDIsCisgICAgMTA4LAorICAgIDcwLAorICAgIDcwLAorICAgIDc2LAorICAgIDcwLAorICAgIDEwMiwKKyAgICAxMDgsCisgICAgNjQyNjEsCisgICAgMTE1LAorICAgIDExNiwKKyAgICA4MywKKyAgICA4NCwKKyAgICA4MywKKyAgICAxMTYsCisgICAgNjQyNjIsCisgICAgMTE1LAorICAgIDExNiwKKyAgICA4MywKKyAgICA4NCwKKyAgICA4MywKKyAgICAxMTYsCisgICAgNjQyNzUsCisgICAgMTM5NiwKKyAgICAxMzk4LAorICAgIDEzNDgsCisgICAgMTM1MCwKKyAgICAxMzQ4LAorICAgIDEzOTgsCisgICAgNjQyNzYsCisgICAgMTM5NiwKKyAgICAxMzgxLAorICAgIDEzNDgsCisgICAgMTMzMywKKyAgICAxMzQ4LAorICAgIDEzODEsCisgICAgNjQyNzcsCisgICAgMTM5NiwKKyAgICAxMzg3LAorICAgIDEzNDgsCisgICAgMTMzOSwKKyAgICAxMzQ4LAorICAgIDEzODcsCisgICAgNjQyNzgsCisgICAgMTQwNiwKKyAgICAxMzk4LAorICAgIDEzNTgsCisgICAgMTM1MCwKKyAgICAxMzU4LAorICAgIDEzOTgsCisgICAgNjQyNzksCisgICAgMTM5NiwKKyAgICAxMzg5LAorICAgIDEzNDgsCisgICAgMTM0MSwKKyAgICAxMzQ4LAorICAgIDEzODksCiB9OwogCiAvKiB0eXBlIGluZGV4ZXMgKi8KQEAgLTIwOCwzMSArMTAxNCwzMSBAQAogICAgIDM0LCAzNCwgMzQsIDEwMywgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTA1LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTA2LCAxMDcsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKICAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTA4LCAxMDksIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTEwLCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKLSAgICAzNCwgMzQsIDM0LCAxMTEsIDM0LCAzNCwgMTEyLCAxMTMsIDExNCwgMTE1LCAxMTYsIDExNywgMTE4LCAxMTksIDEyMCwgCi0gICAgMTIxLCAxMjIsIDEyMywgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKKyAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDExMCwgMTExLCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDM0LCAzNCwgMzQsIDExMiwgMzQsIDM0LCAxMTMsIDExNCwgMTE1LCAxMTYsIDExNywgMTE4LCAxMTksIDEyMCwgMTIxLCAKKyAgICAxMjIsIDEyMywgMTI0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAogICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAogICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAogICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAogICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAxMjQsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNiwgMTI3LCAxMjgsIAotICAgIDEyOSwgMTMwLCAxMzEsIDEzMiwgMzQsIDEzMywgMTM0LCAxMzUsIDEzNiwgMTM3LCAxMzgsIDEzOSwgMTQwLCAxNDEsIDE0MiwgCi0gICAgMTcsIDE0MywgMTQ0LCAxNDUsIDE0NiwgMTQ3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNDgsIDE3LCAxNDksIDE3LCAKLSAgICAxNTAsIDE3LCAxNTEsIDE3LCAxNTIsIDE3LCAxNywgMTcsIDE1MywgMTcsIDE3LCAxNywgMTU0LCAxNTUsIDE3LCAxNywgMTcsIAorICAgIDM0LCAxMjUsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNywgMTI4LCAxMjksIAorICAgIDEzMCwgMTMxLCAxMzIsIDEzMywgMzQsIDEzNCwgMTM1LCAxMzYsIDEzNywgMTM4LCAxMzksIDE0MCwgMTQxLCAxNDIsIDE0MywgCisgICAgMTcsIDE0NCwgMTQ1LCAxNDYsIDE0NywgMTQ4LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNDksIDE3LCAxNTAsIDE3LCAKKyAgICAxNTEsIDE3LCAxNTIsIDE3LCAxNTMsIDE3LCAxNywgMTcsIDE1NCwgMTcsIDE3LCAxNywgMTU1LCAxNTYsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDE1NiwgMTcsIDE1NywgCisgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTU3LCAxNywgMTU4LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTU4LCAxNywgMTcsIDE3LCAxNywgCisgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDE1OSwgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDM0LCAzNCwgMzQsIDM0LCAxNTksIDE3LCAxNywgMTcsIDE3LCAKKyAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAzNCwgMzQsIDM0LCAzNCwgMTYwLCAxNywgMTcsIDE3LCAxNywgCiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCkBAIC0yNDAsMjcgKzEwNDYsMjcgQEAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNjAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCisgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTYxLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCA2NCwgMTYxLCAxNjIsIDE2MywgMTY0LCAxNywgMTY1LCAxNywgMTY2LCAxNjcsIDE2OCwgMTY5LCAxNzAsIDE3MSwgCi0gICAgMTcyLCAxNzMsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKKyAgICAxNywgNjQsIDE2MiwgMTYzLCAxNjQsIDE2NSwgMTcsIDE2NiwgMTcsIDE2NywgMTY4LCAxNjksIDE3MCwgMTcxLCAxNzIsIAorICAgIDE3MywgMTc0LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNzQsIDE3NSwgMTc2LCAKLSAgICAxNzcsIDE3OCwgMTcsIDE3OSwgMTgwLCAxODEsIDE4MiwgMTgzLCAxODQsIDE4NSwgMTg2LCA2NSwgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxODcsIDE4OCwgMTg5LCAzNCwgCi0gICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCA4NiwgMTkwLCAzNCwgMTkxLCAKLSAgICAxOTIsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCisgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNzUsIDE3NiwgMTc3LCAKKyAgICAxNzgsIDE3OSwgMTcsIDE4MCwgMTgxLCAxODIsIDE4MywgMTg0LCAxODUsIDE4NiwgMTg3LCA2NSwgMTcsIDE3LCAxNywgMTcsIAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxODgsIDE4OSwgMTkwLCAzNCwgCisgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCA4NiwgMTkxLCAzNCwgMTkyLCAKKyAgICAxOTMsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCi0gICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDE5MywgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAxOTQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKKyAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTk0LCAzNCwgMzQsIDM0LCAzNCwgCisgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDE5NSwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAogICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDE5NSwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKKyAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAxOTYsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCi0gICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTk2LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAorICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDE5NywgMzQsIDM0LCAzNCwgMzQsIDM0LCAKICAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKICAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKICAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKQEAgLTI2OCwxNiArMTA3NCwxNiBAQAogICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAogICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAogICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIAotICAgIDM0LCAzNCwgMzQsIDM0LCAzNCwgMTk3LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAKKyAgICAzNCwgMzQsIDM0LCAzNCwgMzQsIDE5OCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCiAgICAgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgMzQsIDM0LCAzNCwgCi0gICAgMzQsIDM0LCAxOTgsIDM0LCAxOTksIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKKyAgICAzNCwgMzQsIDE5OSwgMzQsIDIwMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAogICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDM0LCAxOTMsIDM0LCAzNCwgMTk5LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCisgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMzQsIDE5NCwgMzQsIDM0LCAyMDAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKQEAgLTU5MSw3ICsxMzk3LDcgQEAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKICAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDIwMCwgMTcsIDIwMSwgMjAyLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAorICAgIDE3LCAxNywgMjAxLCAxNywgMjAyLCAyMDMsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCkBAIC02MTksMTQyOCArMTQyNSwxNDM5IEBACiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDIwMywgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgCi0gICAgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIAotICAgIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAKLSAgICAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAxMjUsIDEyNSwgMTI1LCAyMDMsIAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAyMDQsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMjA0LCAKIH07CiAKLXN0YXRpYyB1bnNpZ25lZCBjaGFyIGluZGV4MltdID0geworc3RhdGljIHVuc2lnbmVkIHNob3J0IGluZGV4MltdID0gewogICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDIsIDMsIDMsIDMsIDMsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDMsIDMsIDMsIDIsIDQsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE2LCAxNiwgMTYsIDE2LCAKLSAgICAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAKLSAgICAxNiwgMTYsIDE2LCAxNiwgNSwgNSwgNSwgNSwgMTcsIDUsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIAotICAgIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgNSwgNSwgCisgICAgMSwgMSwgMSwgMSwgMywgMywgMywgMiwgNCwgNSwgNSwgNSwgNSwgNSwgNSwgNiwgNSwgNSwgNSwgNSwgNSwgNSwgNiwgNSwgCisgICAgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDYsIDUsIDUsIDUsIDUsIDUsIDUsIDE3LCAxNywgMTcsIDE3LCAKKyAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKKyAgICAxNywgMTcsIDE3LCAxNywgNSwgNSwgNSwgNiwgMTgsIDYsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAorICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgNSwgNSwgCiAgICAgNSwgNSwgMSwgMSwgMSwgMSwgMSwgMSwgMywgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgCi0gICAgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMiwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTksIDUsIDUsIAotICAgIDEsIDUsIDUsIDUsIDUsIDIwLCAyMSwgNSwgMjIsIDUsIDE3LCA1LCAyMywgMTksIDUsIDI0LCAyNCwgMjQsIDUsIDE2LCAxNiwgCi0gICAgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgCi0gICAgMTYsIDE2LCAxNiwgNSwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE5LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAKLSAgICAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDUsIAotICAgIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAyNSwgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjgsIDI5LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAxOSwgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDE5LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMzAsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDMxLCAzMiwgMzMsIDI2LCAyNywgMjYsIDI3LCAzNCwgMjYsIAotICAgIDI3LCAzNSwgMzUsIDI2LCAyNywgMTksIDM2LCAzNywgMzgsIDI2LCAyNywgMzUsIDM5LCA0MCwgNDEsIDQyLCAyNiwgMjcsIAotICAgIDQzLCAxOSwgNDEsIDQ0LCA0NSwgNDYsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDQ3LCAyNiwgMjcsIDQ3LCAxOSwgMTksIAotICAgIDI2LCAyNywgNDcsIDI2LCAyNywgNDgsIDQ4LCAyNiwgMjcsIDI2LCAyNywgNDksIDI2LCAyNywgMTksIDUwLCAyNiwgMjcsIAotICAgIDE5LCA1MSwgNTAsIDUwLCA1MCwgNTAsIDUyLCA1MywgNTQsIDUyLCA1MywgNTQsIDUyLCA1MywgNTQsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCA1NSwgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMTksIDUyLCA1MywgNTQsIAotICAgIDI2LCAyNywgNTYsIDU3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgNTgsIDE5LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCA1OSwgMjYsIAotICAgIDI3LCA2MCwgNjEsIDYyLCA2MiwgMjYsIDI3LCA2MywgNjQsIDY1LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgNjYsIDY3LCA2OCwgNjksIDcwLCAxOSwgNzEsIDcxLCAxOSwgNzIsIDE5LCA3MywgMTksIDE5LCAxOSwgMTksIAotICAgIDcxLCAxOSwgMTksIDc0LCAxOSwgNzUsIDE5LCAxOSwgNzYsIDc3LCAxOSwgNzgsIDE5LCAxOSwgMTksIDc3LCAxOSwgNzksIAotICAgIDgwLCAxOSwgMTksIDgxLCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgODIsIDE5LCAxOSwgODMsIDE5LCAxOSwgODMsIAotICAgIDE5LCAxOSwgMTksIDE5LCA4MywgODQsIDg1LCA4NSwgODYsIDE5LCAxOSwgMTksIDE5LCAxOSwgODcsIDE5LCA1MCwgMTksIAorICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDIsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDYsIDUsIDIwLCA1LCA1LCAKKyAgICAyMSwgNSwgNiwgNSwgNSwgMjIsIDIzLCA2LCAyNCwgNSwgMjUsIDYsIDI2LCAyMCwgNSwgMjcsIDI3LCAyNywgNSwgMTcsIAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAorICAgIDE3LCAxNywgMTcsIDE3LCA1LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMjgsIDE5LCAxOSwgMTksIDE5LCAxOSwgCiAgICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1LCA1LCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUwLCA1LCA1MCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKKyAgICA1LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMjksIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMyLCAzMywgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMjAsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzNCwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDM1LCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzNiwgMzcsIDM4LCAzMCwgMzEsIDMwLCAzMSwgMzksIAorICAgIDMwLCAzMSwgNDAsIDQwLCAzMCwgMzEsIDIwLCA0MSwgNDIsIDQzLCAzMCwgMzEsIDQwLCA0NCwgNDUsIDQ2LCA0NywgMzAsIAorICAgIDMxLCA0OCwgMjAsIDQ2LCA0OSwgNTAsIDUxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCA1MiwgMzAsIDMxLCA1MiwgMjAsIAorICAgIDIwLCAzMCwgMzEsIDUyLCAzMCwgMzEsIDUzLCA1MywgMzAsIDMxLCAzMCwgMzEsIDU0LCAzMCwgMzEsIDIwLCA1NSwgMzAsIAorICAgIDMxLCAyMCwgNTYsIDU1LCA1NSwgNTUsIDU1LCA1NywgNTgsIDU5LCA1NywgNTgsIDU5LCA1NywgNTgsIDU5LCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgNjAsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDYxLCA1NywgNTgsIAorICAgIDU5LCAzMCwgMzEsIDYyLCA2MywgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDY0LCAyMCwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgNjUsIAorICAgIDMwLCAzMSwgNjYsIDY3LCA2OCwgNjgsIDMwLCAzMSwgNjksIDcwLCA3MSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDcyLCA3MywgNzQsIDc1LCA3NiwgMjAsIDc3LCA3NywgMjAsIDc4LCAyMCwgNzksIDIwLCAyMCwgMjAsIAorICAgIDIwLCA3NywgMjAsIDIwLCA4MCwgMjAsIDgxLCAyMCwgMjAsIDgyLCA4MywgMjAsIDg0LCAyMCwgMjAsIDIwLCA4MywgMjAsIAorICAgIDg1LCA4NiwgMjAsIDIwLCA4NywgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDg4LCAyMCwgMjAsIDg5LCAyMCwgMjAsIAorICAgIDg5LCAyMCwgMjAsIDIwLCAyMCwgODksIDkwLCA5MSwgOTEsIDkyLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDkzLCAyMCwgNTUsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIAorICAgIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NCwgOTQsIDYsIDYsIDYsIDYsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIAorICAgIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDk0LCA5NCwgCisgICAgOTQsIDk0LCA5NCwgNiwgNiwgNiwgNiwgNiwgNiwgNiwgOTUsIDYsIDk1LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCAKKyAgICA2LCA2LCA2LCA2LCA2LCA2LCA2LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCA5NiwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMzAsIDMxLCAzMCwgMzEsIDk1LCA2LCAzMCwgMzEsIDAsIDAsIAorICAgIDk3LCA1MCwgNTAsIDUwLCA1LCAwLCAwLCAwLCAwLCAwLCA2LCA2LCA5OCwgMjUsIDk5LCA5OSwgOTksIDAsIDEwMCwgMCwgCisgICAgMTAxLCAxMDEsIDEwMiwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKKyAgICAxNywgMTcsIDE3LCAwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxMDMsIDEwNCwgMTA0LCAxMDQsIAorICAgIDEwNSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKKyAgICAxMDYsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDEwNywgMTA4LCAxMDgsIDEwOSwgMTEwLCAxMTEsIAorICAgIDExMiwgMTEyLCAxMTIsIDExMywgMTE0LCAxMTUsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgCisgICAgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDExNiwgMTE3LCAxMTgsIDIwLCAKKyAgICAxMTksIDEyMCwgNSwgMzAsIDMxLCAxMjEsIDMwLCAzMSwgMjAsIDY0LCA2NCwgNjQsIDEyMiwgMTIyLCAxMjIsIDEyMiwgCisgICAgMTIyLCAxMjIsIDEyMiwgMTIyLCAxMjIsIDEyMiwgMTIyLCAxMjIsIDEyMiwgMTIyLCAxMjIsIDEyMiwgMTcsIDE3LCAxNywgCiAgICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDg4LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAyNiwgMjcsIDI2LCAyNywgNTAsIDUsIDI2LCAyNywgMCwgMCwgODksIAotICAgIDQ1LCA0NSwgNDUsIDUsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDkwLCAxNywgOTEsIDkxLCA5MSwgMCwgOTIsIDAsIDkzLCA5MywgCi0gICAgMTksIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgCi0gICAgMCwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgOTQsIDk1LCA5NSwgOTUsIDE5LCAxOCwgMTgsIDE4LCAKLSAgICAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDk2LCAxOCwgMTgsIDE4LCAKLSAgICAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCA5NywgOTgsIDk4LCA5OSwgMTAwLCAxMDEsIDEwMiwgMTAyLCAxMDIsIDEwMywgCi0gICAgMTA0LCAxMDUsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDEwNiwgMTA3LCAxMDgsIDE5LCAxMDksIDExMCwgNSwgMjYsIDI3LCAKLSAgICAxMTEsIDI2LCAyNywgMTksIDU4LCA1OCwgNTgsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIAotICAgIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgCi0gICAgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgCi0gICAgMTYsIDE2LCAxNiwgMTYsIDE2LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgCi0gICAgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgCi0gICAgMTgsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAxMDcsIDEwNywgMTA3LCAKLSAgICAxMDcsIDEwNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDUsIDE3LCAxNywgMTcsIDE3LCAxNywgNSwgNSwgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMTEzLCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgCi0gICAgMjYsIDI3LCAyNiwgMjcsIDExNCwgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgCi0gICAgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIAotICAgIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAKLSAgICAxMTUsIDExNSwgMTE1LCAwLCAwLCA1MCwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIAotICAgIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAKLSAgICAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgCi0gICAgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDE5LCAwLCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCAxNywgNSwgMTcsIDE3LCA1LCAxNywgMTcsIDUsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1LCA1LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxLCAxLCAxLCAxLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUsIDAsIDAsIDUsIDUsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAKLSAgICA1LCA1LCA1LCA1LCA1MCwgNTAsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1LCA1MCwgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDEsIDUsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUwLCA1MCwgMTcsIDE3LCA1LCAKLSAgICAxNywgMTcsIDE3LCAxNywgNTAsIDUwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA1MCwgNTAsIDUwLCAKLSAgICA1LCA1LCA1MCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMSwgNTAsIDE3LCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDUwLCA1MCwgNSwgNSwgNSwgNSwgNTAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIAotICAgIDE3LCAxNywgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUwLCAxNywgMTcsIDE3LCA1MCwgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMCwgMCwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDUwLCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1MCwgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDUsIDUsIDYsIAotICAgIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMTcsIDE3LCAxNywgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICAwLCAwLCA1MCwgNTAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIAotICAgIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAxNywgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAwLCAKLSAgICAxNywgMTcsIDAsIDAsIDE3LCAxNywgMTcsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNywgMCwgMCwgMCwgMCwgNTAsIAotICAgIDUwLCAwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDAsIDAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUwLCAKLSAgICA1MCwgNSwgNSwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgMCwgNTAsIDUwLCAwLCA1MCwgNTAsIDAsIDAsIDE3LCAwLCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDAsIDAsIDAsIDAsIDE3LCAxNywgMCwgMCwgMTcsIDE3LCAxNywgMCwgMCwgMCwgMTcsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNiwgNywgOCwgOSwgMTAsIAotICAgIDExLCAxMiwgMTMsIDE0LCAxNSwgMTcsIDE3LCA1MCwgNTAsIDUwLCAxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMTcsIDE3LCAxNywgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgMCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgMCwgMCwgMTcsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDE3LCAxNywgMTcsIDAsIAotICAgIDE3LCAxNywgMTcsIDAsIDAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgCi0gICAgNTAsIDE3LCAxNywgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMCwgNSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgMCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDE3LCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDAsIDAsIDE3LCAxNywgMCwgMCwgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAKLSAgICAwLCAwLCAwLCAwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgCi0gICAgMTMsIDE0LCAxNSwgNSwgNTAsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDE3LCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDAsIDAsIDAsIDUwLCA1MCwgMCwgNTAsIDAsIDUwLCA1MCwgMCwgMCwgMCwgNTAsIDUwLCAwLCAwLCAwLCA1MCwgNTAsIAotICAgIDUwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDAsIDAsIDE3LCAxNywgMTcsIDAsIDE3LCAxNywgMTcsIDE3LCAwLCAwLCA1MCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDYsIDcsIDgsIDksIAotICAgIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDI0LCAyNCwgMjQsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDE3LCAxNywgMTcsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgMCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDE3LCAxNywgMTcsIDAsIAotICAgIDE3LCAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNywgMTcsIDAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgNTAsIDUwLCAxNywgMTcsIDAsIDAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA1LCAwLCAwLCAxNywgMTcsIDAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAxNywgNTAsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAwLCAxNywgMTcsIDE3LCAwLCAxNywgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgMCwgNTAsIDUwLCAxNywgMTcsIDAsIDAsIDYsIDcsIDgsIDksIDEwLCAKLSAgICAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMTcsIDE3LCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgMCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAxNywgMTcsIDE3LCAwLCAxNywgCi0gICAgMTcsIDE3LCAxNywgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgCi0gICAgNTAsIDE3LCAxNywgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMCwgMCwgMCwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMTcsIDE3LCAwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgMCwgMCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDE3LCAwLCAwLCAwLCAwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAwLCAxNywgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNywgMTcsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCA1MCwgMTE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgNSwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgNSwgNSwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCAwLCA1MCwgMCwgMCwgNTAsIDUwLCAwLCA1MCwgMCwgMCwgCi0gICAgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgNTAsIDAsIDUwLCAwLCAwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCAxNywgNTAsIDExNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMCwgMTcsIDE3LCA1MCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgCi0gICAgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMCwgCi0gICAgMCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDE3LCA1LCA1LCA1LCA1LCA1LCA1LCA2LCA3LCA4LCAKLSAgICA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgNSwgMTcsIAotICAgIDUsIDE3LCA1LCAxNywgNSwgNSwgNSwgNSwgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIAotICAgIDAsIDAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgNSwgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgCi0gICAgMTQsIDE1LCA1LCA1LCA1LCA1LCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDE3LCAxNywgMTcsIDUwLCAxNywgMTcsIDE3LCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUwLCAxNywgNiwgNywgOCwgCi0gICAgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTcsIDE3LCAxNywgMTcsIDUsIDUsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAKLSAgICAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgCi0gICAgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAxMTgsIAotICAgIDExOCwgMTE4LCAxMTgsIDExOCwgMTE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNSwgNTAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCAKLSAgICAwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAxNywgMTcsIDE3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCAxMTksIDEyMCwgMTIxLCAxMjIsIDEyMywgMTI0LCAxMjUsIDEyNiwgMTI3LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDIsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgMCwgMCwgMCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNSwgNSwgNSwgMTI4LCAxMjgsIDEyOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCA1LCA1LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCAwLCAxNywgMTcsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxLCAxLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCA1LCA1LCA1LCA1MCwgNSwgNSwgNSwgNSwgNTAsIDE3LCAwLCAwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAKLSAgICAxMywgMTQsIDE1LCAwLCAwLCAwLCAwLCAwLCAwLCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDE3LCAxNywgMiwgMCwgNiwgNywgCi0gICAgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMTcsIDUwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAwLCAwLCAwLCAwLCA1LCAwLCAwLCAwLCA1LCA1LCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAKLSAgICAxMywgMTQsIDE1LCAxMTksIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAwLCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDAsIDE3LCA2LCA3LCA4LCA5LCAxMCwgMTEsIAotICAgIDEyLCAxMywgMTQsIDE1LCAwLCAwLCAwLCAwLCAwLCAwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1MCwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAKLSAgICAxNCwgMTUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDE3LCAxNywgMTcsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAwLCAwLCAwLCA1MCwgNTAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIAotICAgIDUsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDYsIDcsIDgsIDksIAotICAgIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3LCAxNywgMTcsIDUsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDUwLCA1MCwgNTAsIDUwLCAxNywgNTAsIDUwLCA1MCwgNTAsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAogICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCA1MCwgMTI5LCAKLSAgICAxOSwgMTksIDE5LCAxMzAsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAxOSwgMTksIDE5LCAxOSwgMTksIDEzMSwgMTksIDE5LCAxMzIsIAotICAgIDE5LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTM0LCAKLSAgICAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDAsIDAsIAotICAgIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzQsIDAsIDAsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgCi0gICAgMTMzLCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIAotICAgIDEzMywgMTMzLCAxMzMsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzMsIDEzMywgMTMzLCAKLSAgICAxMzMsIDEzMywgMTMzLCAwLCAwLCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAwLCAwLCAxOSwgMTMzLCAxOSwgCi0gICAgMTMzLCAxOSwgMTMzLCAxOSwgMTMzLCAwLCAxMzQsIDAsIDEzNCwgMCwgMTM0LCAwLCAxMzQsIDEzMywgMTMzLCAxMzMsIAotICAgIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM0LCAxMzQsIDEzNCwgMTM1LCAKLSAgICAxMzUsIDEzNiwgMTM2LCAxMzYsIDEzNiwgMTM3LCAxMzcsIDEzOCwgMTM4LCAxMzksIDEzOSwgMTQwLCAxNDAsIDAsIDAsIAotICAgIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAKLSAgICAxNDEsIDE0MSwgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDE0MSwgMTQxLCAxNDEsIDE0MSwgCi0gICAgMTQxLCAxNDEsIDE0MSwgMTQxLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTMzLCAxMzMsIDEzMywgMTQxLCAxNDEsIAotICAgIDE0MSwgMTQxLCAxNDEsIDE0MSwgMTQxLCAxNDEsIDEzMywgMTMzLCAxOSwgMTQyLCAxOSwgMCwgMTksIDE5LCAxMzQsIDEzNCwgCi0gICAgMTQzLCAxNDMsIDE0NCwgNSwgMTQ1LCA1LCA1LCA1LCAxOSwgMTQyLCAxOSwgMCwgMTksIDE5LCAxNDYsIDE0NiwgMTQ2LCAKLSAgICAxNDYsIDE0NCwgNSwgNSwgNSwgMTMzLCAxMzMsIDE5LCAxOSwgMCwgMCwgMTksIDE5LCAxMzQsIDEzNCwgMTQ3LCAxNDcsIDAsIAotICAgIDUsIDUsIDUsIDEzMywgMTMzLCAxOSwgMTksIDE5LCAxMDgsIDE5LCAxOSwgMTM0LCAxMzQsIDE0OCwgMTQ4LCAxMTEsIDUsIAotICAgIDUsIDUsIDAsIDAsIDE5LCAxNDIsIDE5LCAwLCAxOSwgMTksIDE0OSwgMTQ5LCAxNTAsIDE1MCwgMTQ0LCA1LCA1LCAwLCAyLCAKLSAgICAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAyLCAxLCAxLCAxLCAxLCAxLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAzLCAzLCAxLCAxLCAxLCAxLCAxLCAyLCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAxNywgMTcsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyLCAxLCAKLSAgICAxLCAxLCAxLCAxLCAwLCAwLCAwLCAwLCAwLCAxLCAxLCAxLCAxLCAxLCAxLCAxNTEsIDUwLCAwLCAwLCAxNTIsIDE1MywgCi0gICAgMTU0LCAxNTUsIDE1NiwgMTU3LCA1LCA1LCA1LCA1LCA1LCA1MCwgMTUxLCAyMywgMjAsIDIxLCAxNTIsIDE1MywgMTU0LCAKLSAgICAxNTUsIDE1NiwgMTU3LCA1LCA1LCA1LCA1LCA1LCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDUsIDUsIDUsIDUsIDE3LCA1LCA1LCA1LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCAxMDIsIDUsIDUsIDUsIDUsIDEwMiwgCi0gICAgNSwgNSwgMTksIDEwMiwgMTAyLCAxMDIsIDE5LCAxOSwgMTAyLCAxMDIsIDEwMiwgMTksIDUsIDEwMiwgNSwgNSwgMTU4LCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgNSwgNSwgNSwgNSwgNSwgNSwgMTAyLCA1LCAxNTksIDUsIDEwMiwgNSwgMTYwLCAKLSAgICAxNjEsIDEwMiwgMTAyLCAxNTgsIDE5LCAxMDIsIDEwMiwgMTYyLCAxMDIsIDE5LCA1MCwgNTAsIDUwLCA1MCwgMTksIDUsIDUsIAotICAgIDE5LCAxOSwgMTAyLCAxMDIsIDUsIDUsIDUsIDUsIDUsIDEwMiwgMTksIDE5LCAxOSwgMTksIDUsIDUsIDUsIDUsIDE2MywgNSwgCi0gICAgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDE2NCwgMTY0LCAKLSAgICAxNjQsIDE2NCwgMTY0LCAxNjQsIDE2NCwgMTY0LCAxNjQsIDE2NCwgMTY0LCAxNjQsIDE2NCwgMTY0LCAxNjQsIDE2NCwgCi0gICAgMTY1LCAxNjUsIDE2NSwgMTY1LCAxNjUsIDE2NSwgMTY1LCAxNjUsIDE2NSwgMTY1LCAxNjUsIDE2NSwgMTY1LCAxNjUsIAotICAgIDE2NSwgMTY1LCAxMjgsIDEyOCwgMTI4LCAyNiwgMjcsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMjQsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIzLCAyMCwgMjEsIDE1MiwgMTUzLCAxNTQsIDE1NSwgMTU2LCAxNTcsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjMsIDIwLCAyMSwgMTUyLCAxNTMsIDE1NCwgMTU1LCAKLSAgICAxNTYsIDE1NywgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyMywgMjAsIDIxLCAxNTIsIAotICAgIDE1MywgMTU0LCAxNTUsIDE1NiwgMTU3LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAKLSAgICAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjYsIDE2NiwgMTY2LCAxNjcsIDE2NywgCi0gICAgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIAotICAgIDE2NywgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIDE2NywgMTY3LCAxNjcsIDE2NywgMTUxLCAyNCwgMjQsIDI0LCAyNCwgCi0gICAgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjMsIDIwLCAyMSwgMTUyLCAxNTMsIDE1NCwgMTU1LCAxNTYsIDE1NywgMjQsIAotICAgIDE1MSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMjMsIAotICAgIDIwLCAyMSwgMTUyLCAxNTMsIDE1NCwgMTU1LCAxNTYsIDE1NywgMjQsIDIzLCAyMCwgMjEsIDE1MiwgMTUzLCAxNTQsIDE1NSwgCi0gICAgMTU2LCAxNTcsIDI0LCAyMywgMjAsIDIxLCAxNTIsIDE1MywgMTU0LCAxNTUsIDE1NiwgMTU3LCAyNCwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgMCwgNSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIAotICAgIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAKLSAgICAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgCi0gICAgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDExNSwgMTE1LCAxMTUsIDAsIAotICAgIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAKLSAgICAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgCi0gICAgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAxMTYsIAotICAgIDExNiwgMTE2LCAxMTYsIDExNiwgMTE2LCAwLCAyNiwgMjcsIDE2OCwgMTY5LCAxNzAsIDE3MSwgMTcyLCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAxNzMsIDE3NCwgMTc1LCAxNzYsIDE5LCAyNiwgMjcsIDE5LCAyNiwgMjcsIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDUwLCAxNzcsIDE3NywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIAotICAgIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDE5LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCAyNiwgMjcsIDI2LCAyNywgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgMjQsIAotICAgIDUsIDUsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgCi0gICAgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIAotICAgIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAxNzgsIDE3OCwgMTc4LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMTcsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDg5LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTIzLCAxMjMsIDEyMywgMTIzLCAxMjMsIDEyMywgMTIzLCAxMjMsIDEyMywgCisgICAgMTIzLCAxMjMsIDEyMywgMTIzLCAxMjMsIDEyMywgMTIzLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCA2LCA2LCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgCisgICAgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAxMjQsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMTI1LCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAKKyAgICAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAKKyAgICAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAKKyAgICAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAKKyAgICAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAKKyAgICAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDAsIDAsIDk1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICAwLCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI4LCAwLCA1LCA1LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCA1LCAyNSwgNSwgMjUsIDI1LCA1LCAyNSwgMjUsIAorICAgIDUsIDI1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAKKyAgICAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1LCA2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyMSwgMjEsIDIxLCAKKyAgICAyMSwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCA1LCAwLCAwLCA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDk1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNywgOCwgCisgICAgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDUsIDUsIDUsIDUsIDU1LCA1NSwgMjUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDUsIDU1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjEsIDUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDk1LCA5NSwgMjUsIDI1LCA1LCAyNSwgMjUsIDI1LCAyNSwgNTUsIDU1LCA3LCA4LCA5LCAxMCwgMTEsIAorICAgIDEyLCAxMywgMTQsIDE1LCAxNiwgNTUsIDU1LCA1NSwgNSwgNSwgNTUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDAsIDIxLCA1NSwgMjUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgOCwgOSwgMTAsIAorICAgIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDk1LCA5NSwgNSwgNSwgNSwgNSwgOTUsIAorICAgIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMjUsIDI1LCAyNSwgOTUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDk1LCAyNSwgMjUsIDI1LCA5NSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAwLCAwLCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDI1LCAKKyAgICAyNSwgMCwgMCwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIDI1LCAKKyAgICAyNSwgMTgsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDI1LCAxOCwgMjUsIDU1LCAxOCwgMTgsIDE4LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDE4LCAKKyAgICAxOCwgMTgsIDE4LCAyNSwgMTgsIDE4LCA1NSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMjUsIDUsIDUsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIAorICAgIDE2LCA1LCA5NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDI1LCAKKyAgICAxOCwgMTgsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCAwLCAwLCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgMCwgCisgICAgMCwgMjUsIDU1LCAxOCwgMTgsIDE4LCAyNSwgMjUsIDI1LCAyNSwgMCwgMCwgMTgsIDE4LCAwLCAwLCAxOCwgMTgsIDI1LCAKKyAgICA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgMjUsIAorICAgIDI1LCAwLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgNTUsIDU1LCA1LCA1LCAyNywgMjcsIDI3LCAKKyAgICAyNywgMjcsIDI3LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAyNSwgMjUsIDE4LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICAwLCAwLCAwLCAwLCA1NSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgCisgICAgNTUsIDU1LCAwLCA1NSwgNTUsIDAsIDU1LCA1NSwgMCwgMCwgMjUsIDAsIDE4LCAxOCwgMTgsIDI1LCAyNSwgMCwgMCwgMCwgCisgICAgMCwgMjUsIDI1LCAwLCAwLCAyNSwgMjUsIDI1LCAwLCAwLCAwLCAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDAsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgCisgICAgMjUsIDI1LCA1NSwgNTUsIDU1LCAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIDI1LCAxOCwgMCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMjUsIAorICAgIDU1LCAxOCwgMTgsIDE4LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDI1LCAyNSwgMTgsIDAsIDE4LCAxOCwgMjUsIDAsIDAsIAorICAgIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDI1LCAyNSwgMCwgMCwgNywgCisgICAgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDAsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDI1LCAxOCwgMTgsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCAKKyAgICAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgMCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCAwLCAwLCAyNSwgNTUsIDE4LCAyNSwgMTgsIDI1LCAyNSwgMjUsIDI1LCAwLCAwLCAxOCwgMTgsIDAsIDAsIAorICAgIDE4LCAxOCwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1LCAxOCwgMCwgMCwgMCwgMCwgNTUsIDU1LCAwLCA1NSwgCisgICAgNTUsIDU1LCAyNSwgMjUsIDAsIDAsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCA1LCA1NSwgMjcsIDI3LCAKKyAgICAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCAwLCAwLCAwLCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgNTUsIDU1LCAwLCA1NSwgCisgICAgMCwgNTUsIDU1LCAwLCAwLCAwLCA1NSwgNTUsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDE4LCAxOCwgMjUsIDE4LCAxOCwgMCwgMCwgMCwgCisgICAgMTgsIDE4LCAxOCwgMCwgMTgsIDE4LCAxOCwgMjUsIDAsIDAsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDI3LCAKKyAgICAyNywgMjcsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAxOCwgMTgsIDAsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCA1NSwgMjUsIAorICAgIDI1LCAyNSwgMTgsIDE4LCAxOCwgMTgsIDAsIDI1LCAyNSwgMjUsIDAsIDI1LCAyNSwgMjUsIDI1LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAyNSwgMjUsIDAsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCAyNSwgMjUsIDAsIDAsIDcsIDgsIDksIAorICAgIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIAorICAgIDI3LCAyNywgNSwgMCwgMCwgMTgsIDE4LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgCisgICAgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMjUsIDU1LCAxOCwgMjUsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMCwgMjUsIDE4LCAKKyAgICAxOCwgMCwgMTgsIDE4LCAyNSwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE4LCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNTUsIDAsIDU1LCA1NSwgMjUsIDI1LCAwLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgMCwgNTUsIAorICAgIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgMTgsIDAsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgMTgsIDE4LCAKKyAgICAxOCwgMjUsIDI1LCAyNSwgMjUsIDAsIDE4LCAxOCwgMTgsIDAsIDE4LCAxOCwgMTgsIDI1LCA1NSwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgMjUsIDI1LCAwLCAwLCA3LCA4LCA5LCAxMCwgCisgICAgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgNSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgMCwgMCwgMTgsIDE4LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIAorICAgIDAsIDAsIDI1LCAwLCAwLCAwLCAwLCAxOCwgMTgsIDE4LCAyNSwgMjUsIDI1LCAwLCAyNSwgMCwgMTgsIDE4LCAxOCwgMTgsIAorICAgIDE4LCAxOCwgMTgsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOCwgCisgICAgMTgsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCA1NSwgMTI5LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMCwgMCwgMCwgMCwgCisgICAgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgOTUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNSwgNywgOCwgCisgICAgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDU1LCA1NSwgMCwgNTUsIDAsIDAsIDU1LCA1NSwgMCwgNTUsIDAsIDAsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgCisgICAgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDAsIDU1LCAwLCA1NSwgCisgICAgMCwgMCwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgMjUsIDU1LCAxMjksIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIAorICAgIDI1LCAyNSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgOTUsIDAsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDAsIDAsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDU1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCAyNSwgMjUsIDUsIDUsIDUsIDUsIDUsIDUsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIAorICAgIDE2LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgNSwgMjUsIDUsIDI1LCA1LCAyNSwgNSwgNSwgNSwgCisgICAgNSwgMTgsIDE4LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMTgsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNSwgMjUsIAorICAgIDI1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMCwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMjUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCAxOCwgMTgsIDI1LCAyNSwgMjUsIDI1LCAxOCwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMTgsIDI1LCAKKyAgICAyNSwgMTgsIDE4LCAyNSwgMjUsIDU1LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMTgsIDE4LCAyNSwgMjUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMjUsIDI1LCAKKyAgICA1NSwgMTgsIDE4LCAxOCwgNTUsIDU1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgNTUsIDU1LCA1NSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMTgsIDE4LCAKKyAgICAyNSwgMjUsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDI1LCA1NSwgMTgsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgCisgICAgMTUsIDE2LCAxOCwgMTgsIDE4LCAyNSwgNSwgNSwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIAorICAgIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAKKyAgICAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgMTMwLCAxMzAsIDEzMCwgCisgICAgMTMwLCAxMzAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1LCAKKyAgICA5NSwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCAwLCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIAorICAgIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDAsIDU1LCA1NSwgNTUsIAorICAgIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDI1LCAyNSwgMjUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDEzMSwgMTMyLCAKKyAgICAxMzMsIDEzNCwgMTM1LCAxMzYsIDEzNywgMTM4LCAxMzksIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAorICAgIDI3LCAyNywgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDUsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgMiwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1LCA1LCAwLCAwLCAwLCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1LCA1LCA1LCAxNDAsIDE0MCwgMTQwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDI1LCAKKyAgICAyNSwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAyNSwgMjUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDI1LCAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDAsIDI1LCAyNSwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDIxLCAyMSwgMTgsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAxOCwgMTgsIDE4LCAxOCwgCisgICAgMTgsIDE4LCAxOCwgMTgsIDI1LCAxOCwgMTgsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgNSwgNSwgNSwgOTUsIDUsIDUsIDUsIDUsIDU1LCAyNSwgMCwgMCwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgCisgICAgMTYsIDAsIDAsIDAsIDAsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNSwgMjUsIDI1LCAyLCAwLCA3LCA4LCA5LCAxMCwgMTEsIAorICAgIDEyLCAxMywgMTQsIDE1LCAxNiwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA5NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgMjUsIDU1LCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAyNSwgMjUsIDI1LCAxOCwgMTgsIDE4LCAxOCwgMjUsIDI1LCAxOCwgMTgsIDE4LCAKKyAgICAwLCAwLCAwLCAwLCAxOCwgMTgsIDI1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAyNSwgMjUsIDI1LCAwLCAwLCAwLCAwLCAKKyAgICA1LCAwLCAwLCAwLCA1LCA1LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDE4LCAxOCwgMTgsIAorICAgIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDE4LCAxOCwgMCwgMCwgMCwgMCwgMCwgMCwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgCisgICAgMTYsIDEzMSwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgCisgICAgMjUsIDE4LCAxOCwgMTgsIDAsIDAsIDUsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMTgsIDI1LCAxOCwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDI1LCAKKyAgICAxOCwgMjUsIDE4LCAxOCwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMCwgMCwgMjUsIDcsIDgsIDksIDEwLCAxMSwgMTIsIAorICAgIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCAwLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgOTUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDI1LCAyNSwgMjUsIDI1LCAxOCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCAyNSwgMTgsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMTgsIDI1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDI1LCAxOCwgCisgICAgMTgsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIAorICAgIDE1LCAxNiwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMjUsIDI1LCAxOCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMTgsIDI1LCAyNSwgMjUsIDI1LCAxOCwgCisgICAgMTgsIDI1LCAyNSwgMTgsIDAsIDAsIDAsIDU1LCA1NSwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIDE4LCAyNSwgMjUsIDE4LCAxOCwgMTgsIDI1LCAxOCwgMjUsIDI1LCAyNSwgCisgICAgMTgsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgCisgICAgMTgsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMTgsIDE4LCAyNSwgMjUsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIAorICAgIDUsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA3LCA4LCA5LCAxMCwgCisgICAgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIDI1LCAyNSwgNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDE4LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgNTUsIDU1LCA1NSwgNTUsIDI1LCA1NSwgNTUsIDU1LCA1NSwgMTgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgCisgICAgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgCisgICAgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgCisgICAgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDk0LCAxNDEsIAorICAgIDIwLCAyMCwgMjAsIDE0MiwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCA5NCwgOTQsIDk0LCAKKyAgICA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCAKKyAgICA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTQsIDk0LCA5NCwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDE0MywgMTQ0LCAxNDUsIDE0NiwgMTQ3LCAxNDgsIDIwLCAyMCwgCisgICAgMTQ5LCAyMCwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMTUwLCAxNTAsIDE1MCwgMTUwLCAxNTAsIDE1MCwgMTUwLCAxNTAsIAorICAgIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTAsIDE1MCwgMTUwLCAxNTAsIDE1MCwgMTUwLCAwLCAKKyAgICAwLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAwLCAwLCAxNTAsIDE1MCwgMTUwLCAxNTAsIDE1MCwgMTUwLCAxNTAsIAorICAgIDE1MCwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MCwgMTUwLCAxNTAsIDE1MCwgMTUwLCAKKyAgICAxNTAsIDE1MCwgMTUwLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUwLCAxNTAsIDE1MCwgCisgICAgMTUwLCAxNTAsIDE1MCwgMCwgMCwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMCwgMCwgMTUyLCAxNTAsIDE1MywgCisgICAgMTUwLCAxNTQsIDE1MCwgMTU1LCAxNTAsIDAsIDE1MSwgMCwgMTUxLCAwLCAxNTEsIDAsIDE1MSwgMTUwLCAxNTAsIDE1MCwgCisgICAgMTUwLCAxNTAsIDE1MCwgMTUwLCAxNTAsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTEsIDE1MSwgMTUxLCAxNTYsIAorICAgIDE1NiwgMTU3LCAxNTcsIDE1NywgMTU3LCAxNTgsIDE1OCwgMTU5LCAxNTksIDE2MCwgMTYwLCAxNjEsIDE2MSwgMCwgMCwgCisgICAgMTYyLCAxNjMsIDE2NCwgMTY1LCAxNjYsIDE2NywgMTY4LCAxNjksIDE3MCwgMTcxLCAxNzIsIDE3MywgMTc0LCAxNzUsIAorICAgIDE3NiwgMTc3LCAxNzgsIDE3OSwgMTgwLCAxODEsIDE4MiwgMTgzLCAxODQsIDE4NSwgMTg2LCAxODcsIDE4OCwgMTg5LCAKKyAgICAxOTAsIDE5MSwgMTkyLCAxOTMsIDE5NCwgMTk1LCAxOTYsIDE5NywgMTk4LCAxOTksIDIwMCwgMjAxLCAyMDIsIDIwMywgCisgICAgMjA0LCAyMDUsIDIwNiwgMjA3LCAyMDgsIDIwOSwgMTUwLCAxNTAsIDIxMCwgMjExLCAyMTIsIDAsIDIxMywgMjE0LCAxNTEsIAorICAgIDE1MSwgMjE1LCAyMTUsIDIxNiwgNiwgMjE3LCA2LCA2LCA2LCAyMTgsIDIxOSwgMjIwLCAwLCAyMjEsIDIyMiwgMjIzLCAKKyAgICAyMjMsIDIyMywgMjIzLCAyMjQsIDYsIDYsIDYsIDE1MCwgMTUwLCAyMjUsIDIyNiwgMCwgMCwgMjI3LCAyMjgsIDE1MSwgCisgICAgMTUxLCAyMjksIDIyOSwgMCwgNiwgNiwgNiwgMTUwLCAxNTAsIDIzMCwgMjMxLCAyMzIsIDExOCwgMjMzLCAyMzQsIDE1MSwgCisgICAgMTUxLCAyMzUsIDIzNSwgMTIxLCA2LCA2LCA2LCAwLCAwLCAyMzYsIDIzNywgMjM4LCAwLCAyMzksIDI0MCwgMjQxLCAyNDEsIAorICAgIDI0MiwgMjQyLCAyNDMsIDYsIDYsIDAsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIsIDIxLCAyMSwgMjEsIDIxLCAKKyAgICAyMSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNiwgNiwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNiwgNSwgNSwgCisgICAgNiwgMywgMywgMjEsIDIxLCAyMSwgMjEsIDIxLCAyLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCAxOCwgMTgsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE4LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDAsIDAsIDAsIDAsIDAsIDIxLCAKKyAgICAyMSwgMjEsIDIxLCAyMSwgMjEsIDI0NCwgOTUsIDAsIDAsIDI0NSwgMjQ2LCAyNDcsIDI0OCwgMjQ5LCAyNTAsIDUsIDUsIDUsIAorICAgIDUsIDUsIDk1LCAyNDQsIDI2LCAyMiwgMjMsIDI0NSwgMjQ2LCAyNDcsIDI0OCwgMjQ5LCAyNTAsIDUsIDUsIDUsIDUsIDUsIAorICAgIDAsIDk0LCA5NCwgOTQsIDk0LCA5NCwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCAwLCAwLCAwLCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNiwgNiwgNiwgNiwgMjUsIDYsIDYsIDYsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDExMiwgNSwgNSwgNSwgNSwgMTEyLCA1LCA1LCAyMCwgMTEyLCAxMTIsIDExMiwgMjAsIAorICAgIDIwLCAxMTIsIDExMiwgMTEyLCAyMCwgNSwgMTEyLCA1LCA1LCAyNTEsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCAxMTIsIDUsIDI1MiwgNSwgMTEyLCA1LCAyNTMsIDI1NCwgMTEyLCAxMTIsIDI1MSwgMjAsIDExMiwgCisgICAgMTEyLCAyNTUsIDExMiwgMjAsIDU1LCA1NSwgNTUsIDU1LCAyMCwgNSwgNSwgMjAsIDIwLCAxMTIsIDExMiwgNSwgNSwgNSwgCisgICAgNSwgNSwgMTEyLCAyMCwgMjAsIDIwLCAyMCwgNSwgNSwgNSwgNSwgMjU2LCA1LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKKyAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgCisgICAgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTcsIDI1NywgMjU3LCAyNTgsIDI1OCwgMjU4LCAyNTgsIAorICAgIDI1OCwgMjU4LCAyNTgsIDI1OCwgMjU4LCAyNTgsIDI1OCwgMjU4LCAyNTgsIDI1OCwgMjU4LCAyNTgsIDE0MCwgMTQwLCAKKyAgICAxNDAsIDMwLCAzMSwgMTQwLCAxNDAsIDE0MCwgMTQwLCAyNywgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCiAgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgCi0gICAgMCwgMCwgMiwgNSwgNSwgNSwgNSwgNTAsIDUwLCAxMjgsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgMTI4LCAxMjgsIAotICAgIDEyOCwgNTAsIDUwLCA1LCA1LCA1LCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDAsIDAsIDE3LCAxNywgNSwgNSwgNTAsIDUwLCA1MCwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUsIDUsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgCi0gICAgMjQsIDI0LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNCwgMjQsIDI0LCAyNCwgMjQsIAotICAgIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAxNzksIDUwLCA1MCwgMTc5LCAKLSAgICA1MCwgNTAsIDUwLCAxNzksIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgMTc5LCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCAKLSAgICA1MCwgMTc5LCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDE3OSwgCi0gICAgMTc5LCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICAxNzksIDE3OSwgMTc5LCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgMTc5LCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDE3OSwgMTc5LCA1MCwgMTc5LCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDUsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAKLSAgICA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCA1MCwgMTcsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDE3LCAxNywgNSwgNTAsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAKLSAgICAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDE3LCAxNywgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAxOSwgMTksIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIAotICAgIDI2LCAyNywgNTAsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMjYsIDI3LCAyNiwgMjcsIDE4MCwgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAyNiwgMjcsIDUwLCA1LCA1LCAyNiwgMjcsIDE4MSwgMTksIDAsIDI2LCAyNywgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjYsIDI3LCAyNiwgMjcsIDI2LCAyNywgMjYsIDI3LCAKLSAgICAyNiwgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDUwLCA1MCwgCi0gICAgNTAsIDE3LCA1MCwgNTAsIDUwLCA1MCwgMTcsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCA1LCAKLSAgICA1LCA1LCAwLCAwLCAwLCAwLCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgNSwgCi0gICAgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgCi0gICAgMTMsIDE0LCAxNSwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNSwgNSwgNSwgNTAsIDAsIDAsIDAsIAotICAgIDAsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAKLSAgICAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMTcsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1MCwgCi0gICAgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMCwgMCwgMCwgMCwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAKLSAgICAxNywgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDE3LCAxNywgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMCwgMCwgNSwgNSwgCi0gICAgNSwgNSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1LCA1LCA1LCA1MCwgMTcsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3LCA1MCwgMTcsIDE3LCAxNywgNTAsIDUwLCAxNywgMTcsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMTcsIDE3LCA1MCwgMTcsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCAxNywgMTcsIDAsIDAsIAotICAgIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIAotICAgIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDEsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxOSwgMTksIDE5LCAxOSwgMTksIDAsIDAsIDAsIDAsIAotICAgIDAsIDUwLCAxNywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCAwLCA1MCwgNTAsIAotICAgIDAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDg5LCA4OSwgODksIDg5LCA4OSwgODksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgODksIDg5LCA1LCA1LCAwLCAwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDE3LCAxNywgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDE3LCAKLSAgICAxNywgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgMCwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgODksIDUwLCA4OSwgNTAsIDg5LCAwLCA4OSwgNTAsIDg5LCA1MCwgODksIDUwLCAKLSAgICA4OSwgNTAsIDg5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAwLCAwLCAxLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA2LCAKLSAgICA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAxNiwgMTYsIDE2LCAxNiwgMTYsIAotICAgIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIDE2LCAxNiwgMTYsIAotICAgIDE2LCAxNiwgMTYsIDUsIDUsIDUsIDUsIDE3LCA1LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgCi0gICAgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTE3LCAxMTcsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAxLCAxLCAxLCA1LCA1LCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1MCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgMCwgMCwgCi0gICAgMCwgMCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDI0LCAyNCwgMjQsIDI0LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAyNCwgMjQsIDI0LCAyNCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxMjgsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTI4LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1LCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCAKLSAgICAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgCi0gICAgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIAotICAgIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAKLSAgICAxODIsIDE4MiwgMTgyLCAxODIsIDE4MiwgMTgyLCAxODIsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgCi0gICAgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIAotICAgIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgMTgzLCAKLSAgICAxODMsIDE4MywgMTgzLCAxODMsIDE4MywgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgNiwgNywgOCwgOSwgMTAsIDExLCAKLSAgICAxMiwgMTMsIDE0LCAxNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgMCwgMCwgNTAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCAwLCAwLCAwLCAKLSAgICA1MCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCA1LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAwLCAwLCAwLCA1LCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIDAsIDAsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCAxNywgMTcsIDE3LCAwLCAxNywgMTcsIDAsIDAsIDAsIDAsIDAsIDE3LCAxNywgCi0gICAgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgMCwgMCwgMCwgMCwgMTcsIDE3LCAxNywgMCwgMCwgMCwgMCwgMTcsIDIzLCAyMCwgMjEsIDE1MiwgMjQsIDI0LCAyNCwgCi0gICAgMjQsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMjQsIDI0LCA1LCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAwLCAwLCAwLCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMjMsIDIwLCAyMSwgMTUyLCAxNTMsIDE1NCwgMTU1LCAxNTYsIDE1NywgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAKLSAgICAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDAsIDE3LCAxNywgMTcsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgMCwgMCwgMCwgMCwgMjMsIDIwLCAyMSwgMTUyLCAxNTMsIDE1NCwgMTU1LCAxNTYsIDE1NywgMjQsIDI0LCAyNCwgMjQsIAotICAgIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNywgMTcsIDE3LCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDUsIDUsIDEsIDUsIAotICAgIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxNTgsIDE1OCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAKLSAgICAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgCi0gICAgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxNTgsIDE1OCwgMTI4LCAxMjgsIAotICAgIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDEyOCwgMTI4LCAxMjgsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTAsIDUwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAyNiwgMjIsIDIzLCAyNDUsIDI0NiwgMjQ3LCAyNDgsIDI0OSwgMjUwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKKyAgICAyNywgMjcsIDI3LCAyNywgMjcsIDI2LCAyMiwgMjMsIDI0NSwgMjQ2LCAyNDcsIDI0OCwgMjQ5LCAyNTAsIDI3LCAyNywgMjcsIAorICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjYsIDIyLCAyMywgMjQ1LCAyNDYsIDI0NywgMjQ4LCAyNDksIDI1MCwgCisgICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgCisgICAgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIAorICAgIDI1OSwgMjU5LCAyNTksIDI1OSwgMjU5LCAyNTksIDI1OSwgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgMjYwLCAKKyAgICAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI2MCwgCisgICAgMjYwLCAyNjAsIDI2MCwgMjYwLCAyNjAsIDI0NCwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI2LCAKKyAgICAyMiwgMjMsIDI0NSwgMjQ2LCAyNDcsIDI0OCwgMjQ5LCAyNTAsIDI3LCAyNDQsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDI2LCAyMiwgMjMsIDI0NSwgMjQ2LCAyNDcsIDI0OCwgCisgICAgMjQ5LCAyNTAsIDI3LCAyNiwgMjIsIDIzLCAyNDUsIDI0NiwgMjQ3LCAyNDgsIDI0OSwgMjUwLCAyNywgMjYsIDIyLCAyMywgCisgICAgMjQ1LCAyNDYsIDI0NywgMjQ4LCAyNDksIDI1MCwgMjcsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDUsIDAsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE3LCAxNywgMTcsIDE3LCAxNywgCi0gICAgNSwgNSwgNSwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMSwgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCA1LCA1LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTcsIDE3LCAKLSAgICAxNywgMTcsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgCisgICAgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIAorICAgIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAKKyAgICAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAxMjYsIDEyNiwgMTI2LCAwLCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgCisgICAgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIAorICAgIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAKKyAgICAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMTI3LCAxMjcsIDEyNywgMCwgCisgICAgMzAsIDMxLCAyNjEsIDI2MiwgMjYzLCAyNjQsIDI2NSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMjY2LCAyNjcsIDI2OCwgCisgICAgMjY5LCAyMCwgMzAsIDMxLCAyMCwgMzAsIDMxLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCA5NCwgMjcwLCAyNzAsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAKKyAgICAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAyMCwgNSwgNSwgNSwgNSwgNSwgNSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDI1LCAyNSwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDI3LCA1LCA1LCAyNzEsIDI3MSwgMjcxLCAKKyAgICAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgCisgICAgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIAorICAgIDI3MSwgMjcxLCAyNzEsIDI3MSwgMjcxLCAyNzEsIDI3MSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgOTUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgMCwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAyNzIsIDUsIDUsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAogICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAotICAgIDUsIDUsIDUsIDUsIDUsIDUsIDE3LCAxNywgMTcsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDIsIDUsIDUsIDUsIAorICAgIDUsIDk1LCA1NSwgMTQwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCA1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDUsIDUsIDE0MCwgMTQwLCAxNDAsIDk1LCA1NSwgNSwgNSwgCisgICAgNSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAyNSwgMjUsIAorICAgIDYsIDYsIDk1LCA5NSwgNTUsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDUsIDk1LCA5NSwgOTUsIDU1LCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1LCA1LCAyNywgMjcsIDI3LCAyNywgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDI3LCAyNywgCisgICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAKKyAgICAyNywgMjcsIDI3LCAyNywgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgMjczLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMjczLCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgMjczLCA1NSwgMjczLCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDI3MywgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDI3MywgMjczLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgMjczLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDI3MywgNTUsIDI3MywgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCAyNzMsIDI3MywgMjczLCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCAyNzMsIDI3MywgCisgICAgMjczLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgMjczLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDI3MywgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCAyNzMsIDI3MywgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA5NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNCwgMjQsIAotICAgIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAyNCwgMjQsIDI0LCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDAsIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDEwMiwgMCwgMTAyLCAxMDIsIDAsIDAsIDEwMiwgMCwgMCwgMTAyLCAxMDIsIDAsIDAsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMCwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDE5LCAxOSwgCi0gICAgMTksIDE5LCAwLCAxOSwgMCwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDAsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTAyLCAxMDIsIDAsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMCwgMCwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDAsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMCwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMDIsIDEwMiwgMCwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAwLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMCwgMTAyLCAwLCAwLCAwLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDAsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAwLCAwLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDUsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCA1LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDUsIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCA1LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAKLSAgICAxMDIsIDEwMiwgMTAyLCAxMDIsIDUsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCA1LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDUsIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCi0gICAgMTksIDE5LCAxOSwgMTksIDE5LCA1LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgCi0gICAgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIAotICAgIDEwMiwgMTAyLCAxMDIsIDEwMiwgMTAyLCAxMDIsIDUsIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAKLSAgICAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCA1LCAxOSwgMTksIAotICAgIDE5LCAxOSwgMTksIDE5LCAxMDIsIDE5LCAwLCAwLCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA2LCA3LCAKLSAgICA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA2LCA3LCAKLSAgICA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA2LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxNTEsIDE1MSwgMjMsIDIwLCAyMSwgMTUyLCAxNTMsIAotICAgIDE1NCwgMTU1LCAxNTYsIDE1NywgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDUsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDk1LCA1LCA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDU1LCA1NSwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIAorICAgIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDU1LCAyNSwgNiwgNiwgNiwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIAorICAgIDI1LCA1LCA5NSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgCisgICAgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDE0MCwgMTQwLCAxNDAsIDE0MCwgCisgICAgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMjUsIDI1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCA2LCAKKyAgICA2LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA5NSwgOTUsIDk1LCA2LCA2LCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgCisgICAgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDIwLCAyMCwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgCisgICAgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgCisgICAgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgCisgICAgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCA5NCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAzMCwgMzEsIDMwLCAzMSwgMjc0LCAzMCwgMzEsIDMwLCAzMSwgMzAsIAorICAgIDMxLCAzMCwgMzEsIDMwLCAzMSwgOTUsIDYsIDYsIDMwLCAzMSwgMjc1LCAyMCwgMCwgMzAsIDMxLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAzMCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMCwgMzEsIDMwLCAzMSwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCi0gICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMjAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgNTUsIDU1LCA1NSwgMjUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCAyNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAxOCwgMTgsIDI1LCAyNSwgMTgsIDUsIDUsIDUsIDUsIDAsIDAsIAorICAgIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAxOCwgMTgsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIDE4LCAxOCwgMTgsIAorICAgIDI1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNSwgNSwgNSwgNTUsIDAsIDAsIDAsIDAsIDcsIDgsIDksIAorICAgIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMTgsIDE4LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDI1LCAyNSwgMjUsIDE4LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAxOCwgMTgsIDI1LCAyNSwgMjUsIDI1LCAxOCwgMTgsIAorICAgIDI1LCAxOCwgMTgsIDE4LCAxOCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgOTUsIDcsIDgsIAorICAgIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDE4LCAxOCwgMjUsIDI1LCAxOCwgMTgsIDI1LCAKKyAgICAyNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgMjUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgMjUsIDE4LCAwLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgMCwgMCwgNSwgNSwgNSwgCisgICAgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDk1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1LCA1LCA1LCA1NSwgMTgsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI1LCA1NSwgMjUsIDI1LCAyNSwgNTUsIDU1LCAyNSwgMjUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgMjUsIDI1LCA1NSwgMjUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDk1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMTgsIDE4LCAyNSwgMTgsIDE4LCAyNSwgMTgsIDE4LCA1LCAxOCwgMjUsIDAsIDAsIAorICAgIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKKyAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKKyAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKKyAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKKyAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKKyAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNzYsIDI3NywgMjc4LCAyNzksIDI4MCwgCisgICAgMjgxLCAyODIsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI4MywgMjg0LCAyODUsIDI4NiwgMjg3LCAwLCAKKyAgICAwLCAwLCAwLCAwLCA1NSwgMjUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgCisgICAgMCwgNTUsIDU1LCAwLCA1NSwgNTUsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIDYsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyODgsIDI4OCwgMjg4LCAyODgsIDI4OCwgMjg4LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1LCA1LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI4OCwgMjg4LCA1LCA1LCAwLCAwLCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAKKyAgICAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgNSwgNSwgNSwgNiwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIAorICAgIDUsIDUsIDE4LCAxOCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgMTgsIDE4LCAxOCwgNSwgNSwgNiwgMCwgNSwgNiwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMjg4LCA1NSwgMjg4LCA1NSwgMjg4LCAwLCAKKyAgICAyODgsIDU1LCAyODgsIDU1LCAyODgsIDU1LCAyODgsIDU1LCAyODgsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDIxLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA2LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA2LCA1LCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgNiwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAorICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCA1LCA1LCA1LCA2LCAxOCwgNiwgMTksIDE5LCAxOSwgCisgICAgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgMTksIDE5LCAxOSwgCisgICAgMTksIDE5LCAxOSwgMTksIDE5LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgOTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI4OSwgMjg5LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgCisgICAgNTUsIDU1LCA1NSwgMCwgMCwgMCwgNSwgNSwgNSwgNiwgNSwgNSwgNSwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMjEsIDIxLCAyMSwgNSwgNSwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgCisgICAgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAKKyAgICAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCisgICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCisgICAgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCisgICAgMjcsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIAorICAgIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAKKyAgICAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgCisgICAgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIAorICAgIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAyNywgMjcsIDI3LCAyNywgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgMjcsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDI1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMjcsIDI3LCAyNywgMjcsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgMTQwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDE0MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgNSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1LCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMjkwLCAyOTAsIDI5MCwgMjkwLCAyOTAsIDI5MCwgMjkwLCAyOTAsIDI5MCwgMjkwLCAyOTAsIAorICAgIDI5MCwgMjkwLCAyOTAsIDI5MCwgMjkwLCAyOTAsIDI5MCwgMjkwLCAyOTAsIDI5MCwgMjkwLCAyOTAsIDI5MCwgMjkwLCAKKyAgICAyOTAsIDI5MCwgMjkwLCAyOTAsIDI5MCwgMjkwLCAyOTAsIDI5MCwgMjkwLCAyOTAsIDI5MCwgMjkwLCAyOTAsIDI5MCwgCisgICAgMjkwLCAyOTEsIDI5MSwgMjkxLCAyOTEsIDI5MSwgMjkxLCAyOTEsIDI5MSwgMjkxLCAyOTEsIDI5MSwgMjkxLCAyOTEsIAorICAgIDI5MSwgMjkxLCAyOTEsIDI5MSwgMjkxLCAyOTEsIDI5MSwgMjkxLCAyOTEsIDI5MSwgMjkxLCAyOTEsIDI5MSwgMjkxLCAKKyAgICAyOTEsIDI5MSwgMjkxLCAyOTEsIDI5MSwgMjkxLCAyOTEsIDI5MSwgMjkxLCAyOTEsIDI5MSwgMjkxLCAyOTEsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCA1NSwgMCwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgNTUsIDAsIDAsIDAsIDU1LCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDAsIDUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDAsIDAsIDAsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgMCwgMCwgMCwgMCwgMCwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDI1LCAKKyAgICAyNSwgMjUsIDAsIDI1LCAyNSwgMCwgMCwgMCwgMCwgMCwgMjUsIDI1LCAyNSwgMjUsIDU1LCA1NSwgNTUsIDU1LCAwLCA1NSwgCisgICAgNTUsIDU1LCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAyNSwgMjUsIDI1LCAKKyAgICAwLCAwLCAwLCAwLCAyNSwgMjYsIDIyLCAyMywgMjQ1LCAyNywgMjcsIDI3LCAyNywgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNywgMjcsIDUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAyNywgMjcsIDI3LCAKKyAgICAyNywgMjcsIDI3LCAyNywgMjcsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNiwgMjIsIDIzLCAyNDUsIDI0NiwgMjQ3LCAKKyAgICAyNDgsIDI0OSwgMjUwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIAorICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMCwgMTgsIDI1LCAxOCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAyNiwgMjIsIAorICAgIDIzLCAyNDUsIDI0NiwgMjQ3LCAyNDgsIDI0OSwgMjUwLCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgCisgICAgMjcsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAyNSwgMjUsIDE4LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAxOCwgMTgsIAorICAgIDE4LCAyNSwgMjUsIDI1LCAyNSwgMTgsIDE4LCAyNSwgMjUsIDUsIDUsIDIxLCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgCisgICAgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIAorICAgIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAKKyAgICAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMjUxLCAyNTEsIDE0MCwgCisgICAgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIAorICAgIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAKKyAgICAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMjUxLCAyNTEsIDE0MCwgMTQwLCAxNDAsIDE0MCwgMTQwLCAxNDAsIDE0MCwgCisgICAgMTQwLCAxNDAsIDE0MCwgMTQwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDU1LCA1NSwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMCwgMCwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgCisgICAgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgNSwgMTgsIDE4LCAyNSwgMjUsIDI1LCA1LCA1LCA1LCAxOCwgMTgsIDE4LCAxOCwgCisgICAgMTgsIDE4LCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgCisgICAgNSwgNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDI1LCAyNSwgMjUsIDI1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAKLSAgICAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICAwLCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCAyNSwgMjUsIDI1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCAwLCA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAyNywgMjcsIDI3LCAyNywgMjcsIAorICAgIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAyNywgMjcsIDI3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIAorICAgIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAKKyAgICAxMTIsIDExMiwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAKKyAgICAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDExMiwgMTEyLCAKKyAgICAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDExMiwgMCwgMTEyLCAxMTIsIDAsIDAsIDExMiwgMCwgMCwgMTEyLCAxMTIsIDAsIDAsIDExMiwgMTEyLCAxMTIsIAorICAgIDExMiwgMCwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDIwLCAyMCwgMjAsIDIwLCAwLCAyMCwgMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIAorICAgIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEyLCAxMTIsIDAsIDExMiwgMTEyLCAxMTIsIDExMiwgMCwgMCwgMTEyLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDAsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAxMTIsIDExMiwgMCwgMTEyLCAxMTIsIDExMiwgMTEyLCAwLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDExMiwgMCwgMTEyLCAwLCAwLCAwLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIAorICAgIDExMiwgMTEyLCAxMTIsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIAorICAgIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAKKyAgICAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEyLCAKKyAgICAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIAorICAgIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAKKyAgICAxMTIsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAKKyAgICAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMTEyLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIAorICAgIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAwLCAwLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDUsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCA1LCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAxMTIsIDExMiwgMTEyLCAKKyAgICAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDUsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAKKyAgICA1LCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAKKyAgICAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgCisgICAgMTEyLCAxMTIsIDUsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCA1LCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAxMTIsIAorICAgIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAKKyAgICAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDUsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCA1LCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIAorICAgIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAxMTIsIDExMiwgMTEyLCAKKyAgICAxMTIsIDExMiwgMTEyLCAxMTIsIDUsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIAorICAgIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCAyMCwgMjAsIDIwLCA1LCAyMCwgMjAsIDIwLCAyMCwgCisgICAgMjAsIDIwLCAxMTIsIDIwLCAwLCAwLCA3LCA4LCA5LCAxMCwgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgNywgOCwgOSwgMTAsIAorICAgIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2LCA3LCA4LCA5LCAxMCwgCisgICAgMTEsIDEyLCAxMywgMTQsIDE1LCAxNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDAsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDAsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDAsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIDUsIAorICAgIDUsIDUsIDUsIDUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDI0NCwgMjQ0LCAyNiwgMjIsIDIzLCAyNDUsIDI0NiwgMjQ3LCAKKyAgICAyNDgsIDI0OSwgMjUwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAKKyAgICAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAKKyAgICAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAKKyAgICA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCAwLCA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCA1LCAKLSAgICAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCA1LCAwLCAKKyAgICAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCAwLCA1LCAwLCA1LCAwLCA1LCAwLCA1LCAKLSAgICA1LCA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCA1LCA1LCA1LCA1LCAwLCA1LCAwLCAwLCA1LCA1LCA1LCA1LCAwLCAKLSAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCA1LCA1LCA1LCAwLCA1LCAwLCA1LCAwLCA1LCAwLCA1LCA1LCAKKyAgICA1LCAwLCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCA1LCA1LCA1LCA1LCAwLCA1LCAwLCAwLCA1LCA1LCA1LCA1LCAwLCA1LCAKKyAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAwLCAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICA1LCA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKKyAgICAwLCAwLCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKICAgICA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCA1LCAKLSAgICA1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICAxNzksIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAxNzksIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMTc5LCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIAotICAgIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDE3OSwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCiAgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCi0gICAgMCwgMCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCAKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgCi0gICAgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgNTAsIDUwLCA1MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgMjczLCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgMjczLCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDI3MywgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAKKyAgICA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCAyNzMsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgCisgICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIAorICAgIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDU1LCA1NSwgNTUsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAogICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIAotICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDEsIDAsIDAsIDAsIDAsIAorICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDIxLCAwLCAwLCAwLCAwLCAKICAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAwLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKLSAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKLSAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKLSAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKLSAgICAxLCAxLCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIAotICAgIDE3LCAxNywgMTcsIDE3LCAxNywgMTcsIDE3LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKLSAgICAwLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKKyAgICAwLCAwLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIAorICAgIDIxLCAyMSwgMjEsIDIxLCAyMSwgMjEsIDIxLCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIAorICAgIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAyNSwgMjUsIDI1LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAKKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKICAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKICAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKICAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKICAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAKLSAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAwLCAwLCAKKyAgICAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAxLCAwLCAwLCAKIH07CiAKIC8qIFJldHVybnMgdGhlIG51bWVyaWMgdmFsdWUgYXMgZG91YmxlIGZvciBVbmljb2RlIGNoYXJhY3RlcnMKZGlmZiAtLWdpdCBhL09iamVjdHMvd2Vha3JlZm9iamVjdC5jIGIvT2JqZWN0cy93ZWFrcmVmb2JqZWN0LmMKaW5kZXggMTMzMjNjZi4uZTA3YWRiMiAxMDA2NDQKLS0tIGEvT2JqZWN0cy93ZWFrcmVmb2JqZWN0LmMKKysrIGIvT2JqZWN0cy93ZWFrcmVmb2JqZWN0LmMKQEAgLTE1NiwyOCArMTU2LDMyIEBACiBzdGF0aWMgUHlPYmplY3QgKgogd2Vha3JlZl9yZXByKFB5V2Vha1JlZmVyZW5jZSAqc2VsZikKIHsKLSAgICBjaGFyIGJ1ZmZlclsyNTZdOwotICAgIGlmIChQeVdlYWtyZWZfR0VUX09CSkVDVChzZWxmKSA9PSBQeV9Ob25lKSB7Ci0gICAgICAgIFB5T1Nfc25wcmludGYoYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwgIjx3ZWFrcmVmIGF0ICVwOyBkZWFkPiIsIHNlbGYpOworICAgIFB5T2JqZWN0ICpuYW1lLCAqcmVwcjsKKyAgICBfUHlfSURFTlRJRklFUihfX25hbWVfXyk7CisKKyAgICBpZiAoUHlXZWFrcmVmX0dFVF9PQkpFQ1Qoc2VsZikgPT0gUHlfTm9uZSkKKyAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tRm9ybWF0KCI8d2Vha3JlZiBhdCAlcDsgZGVhZD4iLCBzZWxmKTsKKworICAgIG5hbWUgPSBfUHlPYmplY3RfR2V0QXR0cklkKFB5V2Vha3JlZl9HRVRfT0JKRUNUKHNlbGYpLCAmUHlJZF9fX25hbWVfXyk7CisgICAgaWYgKG5hbWUgPT0gTlVMTCB8fCAhUHlVbmljb2RlX0NoZWNrKG5hbWUpKSB7CisgICAgICAgIGlmIChuYW1lID09IE5VTEwpCisgICAgICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICByZXByID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoCisgICAgICAgICAgICAiPHdlYWtyZWYgYXQgJXA7IHRvICclcycgYXQgJXA+IiwKKyAgICAgICAgICAgIHNlbGYsCisgICAgICAgICAgICBQeV9UWVBFKFB5V2Vha3JlZl9HRVRfT0JKRUNUKHNlbGYpKS0+dHBfbmFtZSwKKyAgICAgICAgICAgIFB5V2Vha3JlZl9HRVRfT0JKRUNUKHNlbGYpKTsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIGNoYXIgKm5hbWUgPSBOVUxMOwotICAgICAgICBQeU9iamVjdCAqbmFtZW9iaiA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoUHlXZWFrcmVmX0dFVF9PQkpFQ1Qoc2VsZiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX19uYW1lX18iKTsKLSAgICAgICAgaWYgKG5hbWVvYmogPT0gTlVMTCkKLSAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwotICAgICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2sobmFtZW9iaikpCi0gICAgICAgICAgICAgICAgbmFtZSA9IF9QeVVuaWNvZGVfQXNTdHJpbmcobmFtZW9iaik7Ci0gICAgICAgIFB5T1Nfc25wcmludGYoYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwKLSAgICAgICAgICAgICAgICAgICAgICBuYW1lID8gIjx3ZWFrcmVmIGF0ICVwOyB0byAnJS41MHMnIGF0ICVwICglcyk+IgotICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAiPHdlYWtyZWYgYXQgJXA7IHRvICclLjUwcycgYXQgJXA+IiwKLSAgICAgICAgICAgICAgICAgICAgICBzZWxmLAotICAgICAgICAgICAgICAgICAgICAgIFB5X1RZUEUoUHlXZWFrcmVmX0dFVF9PQkpFQ1Qoc2VsZikpLT50cF9uYW1lLAotICAgICAgICAgICAgICAgICAgICAgIFB5V2Vha3JlZl9HRVRfT0JKRUNUKHNlbGYpLAotICAgICAgICAgICAgICAgICAgICAgIG5hbWUpOwotICAgICAgICBQeV9YREVDUkVGKG5hbWVvYmopOworICAgICAgICByZXByID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoCisgICAgICAgICAgICAiPHdlYWtyZWYgYXQgJXA7IHRvICclcycgYXQgJXAgKCVVKT4iLAorICAgICAgICAgICAgc2VsZiwKKyAgICAgICAgICAgIFB5X1RZUEUoUHlXZWFrcmVmX0dFVF9PQkpFQ1Qoc2VsZikpLT50cF9uYW1lLAorICAgICAgICAgICAgUHlXZWFrcmVmX0dFVF9PQkpFQ1Qoc2VsZiksCisgICAgICAgICAgICBuYW1lKTsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tU3RyaW5nKGJ1ZmZlcik7CisgICAgUHlfWERFQ1JFRihuYW1lKTsKKyAgICByZXR1cm4gcmVwcjsKIH0KIAogLyogV2VhayByZWZlcmVuY2VzIG9ubHkgc3VwcG9ydCBlcXVhbGl0eSwgbm90IG9yZGVyaW5nLiBUd28gd2VhayByZWZlcmVuY2VzCkBAIC0xOTAsOCArMTk0LDcgQEAKICAgICBpZiAoKG9wICE9IFB5X0VRICYmIG9wICE9IFB5X05FKSB8fAogICAgICAgICAhUHlXZWFrcmVmX0NoZWNrKHNlbGYpIHx8CiAgICAgICAgICFQeVdlYWtyZWZfQ2hlY2sob3RoZXIpKSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob3RJbXBsZW1lbnRlZCk7Ci0gICAgICAgIHJldHVybiBQeV9Ob3RJbXBsZW1lbnRlZDsKKyAgICAgICAgUHlfUkVUVVJOX05PVElNUExFTUVOVEVEOwogICAgIH0KICAgICBpZiAoUHlXZWFrcmVmX0dFVF9PQkpFQ1Qoc2VsZikgPT0gUHlfTm9uZQogICAgICAgICB8fCBQeVdlYWtyZWZfR0VUX09CSkVDVChvdGhlcikgPT0gUHlfTm9uZSkgewpAQCAtNDM4LDggKzQ0MSw5IEBACiAjZGVmaW5lIFdSQVBfTUVUSE9EKG1ldGhvZCwgc3BlY2lhbCkgXAogICAgIHN0YXRpYyBQeU9iamVjdCAqIFwKICAgICBtZXRob2QoUHlPYmplY3QgKnByb3h5KSB7IFwKKyAgICAgICAgICAgIF9QeV9JREVOVElGSUVSKHNwZWNpYWwpOyBcCiAgICAgICAgICAgICBVTldSQVAocHJveHkpOyBcCi0gICAgICAgICAgICAgICAgcmV0dXJuIFB5T2JqZWN0X0NhbGxNZXRob2QocHJveHksIHNwZWNpYWwsICIiKTsgXAorICAgICAgICAgICAgICAgIHJldHVybiBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHByb3h5LCAmUHlJZF8jI3NwZWNpYWwsICIiKTsgXAogICAgICAgICB9CiAKIApAQCAtNDUyLDEyICs0NTYsMTEgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBwcm94eV9yZXByKFB5V2Vha1JlZmVyZW5jZSAqcHJveHkpCiB7Ci0gICAgY2hhciBidWZbMTYwXTsKLSAgICBQeU9TX3NucHJpbnRmKGJ1Ziwgc2l6ZW9mKGJ1ZiksCi0gICAgICAgICAgICAgICAgICAiPHdlYWtwcm94eSBhdCAlcCB0byAlLjEwMHMgYXQgJXA+IiwgcHJveHksCi0gICAgICAgICAgICAgICAgICBQeV9UWVBFKFB5V2Vha3JlZl9HRVRfT0JKRUNUKHByb3h5KSktPnRwX25hbWUsCi0gICAgICAgICAgICAgICAgICBQeVdlYWtyZWZfR0VUX09CSkVDVChwcm94eSkpOwotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVN0cmluZyhidWYpOworICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbUZvcm1hdCgKKyAgICAgICAgIjx3ZWFrcHJveHkgYXQgJXAgdG8gJXMgYXQgJXA+IiwKKyAgICAgICAgcHJveHksCisgICAgICAgIFB5X1RZUEUoUHlXZWFrcmVmX0dFVF9PQkpFQ1QocHJveHkpKS0+dHBfbmFtZSwKKyAgICAgICAgUHlXZWFrcmVmX0dFVF9PQkpFQ1QocHJveHkpKTsKIH0KIAogCkBAIC01ODMsNyArNTg2LDcgQEAKIH0KIAogCi1XUkFQX01FVEhPRChwcm94eV9ieXRlcywgIl9fYnl0ZXNfXyIpCitXUkFQX01FVEhPRChwcm94eV9ieXRlcywgX19ieXRlc19fKQogCiAKIHN0YXRpYyBQeU1ldGhvZERlZiBwcm94eV9tZXRob2RzW10gPSB7CmRpZmYgLS1naXQgYS9QQy9WQzYvX211bHRpcHJvY2Vzc2luZy5kc3AgYi9QQy9WQzYvX211bHRpcHJvY2Vzc2luZy5kc3AKaW5kZXggMmRjYWY4My4uZTFiODQ3MCAxMDA2NDQKLS0tIGEvUEMvVkM2L19tdWx0aXByb2Nlc3NpbmcuZHNwCisrKyBiL1BDL1ZDNi9fbXVsdGlwcm9jZXNzaW5nLmRzcApAQCAtOTcsMTggKzk3LDEwIEBACiAjIEVuZCBTb3VyY2UgRmlsZQ0KICMgQmVnaW4gU291cmNlIEZpbGUNCiANCi1TT1VSQ0U9Li5cLi5cTW9kdWxlc1xfbXVsdGlwcm9jZXNzaW5nXHBpcGVfY29ubmVjdGlvbi5jDQotIyBFbmQgU291cmNlIEZpbGUNCi0jIEJlZ2luIFNvdXJjZSBGaWxlDQotDQogU09VUkNFPS4uXC4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1xzZW1hcGhvcmUuYw0KICMgRW5kIFNvdXJjZSBGaWxlDQogIyBCZWdpbiBTb3VyY2UgRmlsZQ0KIA0KLVNPVVJDRT0uLlwuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3Npbmdcc29ja2V0X2Nvbm5lY3Rpb24uYw0KLSMgRW5kIFNvdXJjZSBGaWxlDQotIyBCZWdpbiBTb3VyY2UgRmlsZQ0KLQ0KIFNPVVJDRT0uLlwuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3Npbmdcd2luMzJfZnVuY3Rpb25zLmMNCiAjIEVuZCBTb3VyY2UgRmlsZQ0KICMgRW5kIFRhcmdldA0KZGlmZiAtLWdpdCBhL1BDL1ZDNi9weXRob25jb3JlLmRzcCBiL1BDL1ZDNi9weXRob25jb3JlLmRzcAppbmRleCAyYWZhMzIyLi42MTI0N2I3IDEwMDY0NAotLS0gYS9QQy9WQzYvcHl0aG9uY29yZS5kc3AKKysrIGIvUEMvVkM2L3B5dGhvbmNvcmUuZHNwCkBAIC01NCw3ICs1NCw3IEBACiAjIEFERCBCU0MzMiAvbm9sb2dvDQogTElOSzMyPWxpbmsuZXhlDQogIyBBREQgQkFTRSBMSU5LMzIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgL25vbG9nbyAvc3Vic3lzdGVtOndpbmRvd3MgL2RsbCAvbWFjaGluZTpJMzg2DQotIyBBREQgTElOSzMyIGxhcmdlaW50LmxpYiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgL25vbG9nbyAvYmFzZToiMHgxZTAwMDAwMCIgL3N1YnN5c3RlbTp3aW5kb3dzIC9kbGwgL2RlYnVnIC9tYWNoaW5lOkkzODYgL25vZGVmYXVsdGxpYjoibGliYyIgL291dDoiLi9weXRob24zMi5kbGwiDQorIyBBREQgTElOSzMyIGxhcmdlaW50LmxpYiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgL25vbG9nbyAvYmFzZToiMHgxZTAwMDAwMCIgL3N1YnN5c3RlbTp3aW5kb3dzIC9kbGwgL2RlYnVnIC9tYWNoaW5lOkkzODYgL25vZGVmYXVsdGxpYjoibGliYyIgL291dDoiLi9weXRob24zMy5kbGwiDQogIyBTVUJUUkFDVCBMSU5LMzIgL3BkYjpub25lDQogDQogIUVMU0VJRiAgIiQoQ0ZHKSIgPT0gInB5dGhvbmNvcmUgLSBXaW4zMiBEZWJ1ZyINCkBAIC04Miw3ICs4Miw3IEBACiAjIEFERCBCU0MzMiAvbm9sb2dvDQogTElOSzMyPWxpbmsuZXhlDQogIyBBREQgQkFTRSBMSU5LMzIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgL25vbG9nbyAvc3Vic3lzdGVtOndpbmRvd3MgL2RsbCAvZGVidWcgL21hY2hpbmU6STM4NiAvcGRidHlwZTpzZXB0DQotIyBBREQgTElOSzMyIGxhcmdlaW50LmxpYiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgL25vbG9nbyAvYmFzZToiMHgxZTAwMDAwMCIgL3N1YnN5c3RlbTp3aW5kb3dzIC9kbGwgL2RlYnVnIC9tYWNoaW5lOkkzODYgL25vZGVmYXVsdGxpYjoibGliYyIgL291dDoiLi9weXRob24zMl9kLmRsbCIgL3BkYnR5cGU6c2VwdA0KKyMgQUREIExJTkszMiBsYXJnZWludC5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIC9ub2xvZ28gL2Jhc2U6IjB4MWUwMDAwMDAiIC9zdWJzeXN0ZW06d2luZG93cyAvZGxsIC9kZWJ1ZyAvbWFjaGluZTpJMzg2IC9ub2RlZmF1bHRsaWI6ImxpYmMiIC9vdXQ6Ii4vcHl0aG9uMzNfZC5kbGwiIC9wZGJ0eXBlOnNlcHQNCiAjIFNVQlRSQUNUIExJTkszMiAvcGRiOm5vbmUNCiANCiAhRU5ESUYgDQpkaWZmIC0tZ2l0IGEvUEMvVkM2L3JlYWRtZS50eHQgYi9QQy9WQzYvcmVhZG1lLnR4dAppbmRleCA0ZThkMjM3Li5hNjgzNTI3IDEwMDY0NAotLS0gYS9QQy9WQzYvcmVhZG1lLnR4dAorKysgYi9QQy9WQzYvcmVhZG1lLnR4dApAQCAtMTIsNyArMTIsNyBAQAogVGhlIHByb3BlciBvcmRlciB0byBidWlsZCBzdWJwcm9qZWN0czoKIAogMSkgcHl0aG9uY29yZSAodGhpcyBidWlsZHMgdGhlIG1haW4gUHl0aG9uIERMTCBhbmQgbGlicmFyeSBmaWxlcywKLSAgICAgICAgICAgICAgIHB5dGhvbjMyLntkbGwsIGxpYn0gaW4gUmVsZWFzZSBtb2RlKQorICAgICAgICAgICAgICAgcHl0aG9uMzMue2RsbCwgbGlifSBpbiBSZWxlYXNlIG1vZGUpCiAKIDIpIHB5dGhvbiAodGhpcyBidWlsZHMgdGhlIG1haW4gUHl0aG9uIGV4ZWN1dGFibGUsCiAgICAgICAgICAgIHB5dGhvbi5leGUgaW4gUmVsZWFzZSBtb2RlKQpAQCAtMjMsNyArMjMsNyBAQAogICAgdG8gdGhlIHN1YnN5c3RlbXMgdGhleSBpbXBsZW1lbnQ7IHNlZSBTVUJQUk9KRUNUUyBiZWxvdykKIAogV2hlbiB1c2luZyB0aGUgRGVidWcgc2V0dGluZywgdGhlIG91dHB1dCBmaWxlcyBoYXZlIGEgX2QgYWRkZWQgdG8KLXRoZWlyIG5hbWU6ICBweXRob24zMl9kLmRsbCwgcHl0aG9uX2QuZXhlLCBweWV4cGF0X2QucHlkLCBhbmQgc28gb24uCit0aGVpciBuYW1lOiAgcHl0aG9uMzNfZC5kbGwsIHB5dGhvbl9kLmV4ZSwgcHlleHBhdF9kLnB5ZCwgYW5kIHNvIG9uLgogCiBTVUJQUk9KRUNUUwogLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL1BDL1ZTNy4xL3B5dGhvbmNvcmUudmNwcm9qIGIvUEMvVlM3LjEvcHl0aG9uY29yZS52Y3Byb2oKaW5kZXggYjYyOWRmNC4uZDg4MjkxMSAxMDA2NDQKLS0tIGEvUEMvVlM3LjEvcHl0aG9uY29yZS52Y3Byb2oKKysrIGIvUEMvVlM3LjEvcHl0aG9uY29yZS52Y3Byb2oKQEAgLTM5LDE1ICszOSwxNSBAQAogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNMaW5rZXJUb29sIg0KIAkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSJnZXRidWlsZGluZm8ubyINCi0JCQkJT3V0cHV0RmlsZT0iLi9weXRob24zMi5kbGwiDQorCQkJCU91dHB1dEZpbGU9Ii4vcHl0aG9uMzMuZGxsIg0KIAkJCQlMaW5rSW5jcmVtZW50YWw9IjEiDQogCQkJCVN1cHByZXNzU3RhcnR1cEJhbm5lcj0iVFJVRSINCiAJCQkJSWdub3JlRGVmYXVsdExpYnJhcnlOYW1lcz0ibGliYyINCiAJCQkJR2VuZXJhdGVEZWJ1Z0luZm9ybWF0aW9uPSJUUlVFIg0KLQkJCQlQcm9ncmFtRGF0YWJhc2VGaWxlPSIuXC4vcHl0aG9uMzIucGRiIg0KKwkJCQlQcm9ncmFtRGF0YWJhc2VGaWxlPSIuXC4vcHl0aG9uMzMucGRiIg0KIAkJCQlTdWJTeXN0ZW09IjIiDQogCQkJCUJhc2VBZGRyZXNzPSIweDFlMDAwMDAwIg0KLQkJCQlJbXBvcnRMaWJyYXJ5PSIuXC4vcHl0aG9uMzIubGliIg0KKwkJCQlJbXBvcnRMaWJyYXJ5PSIuXC4vcHl0aG9uMzMubGliIg0KIAkJCQlUYXJnZXRNYWNoaW5lPSIxIi8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNNSURMVG9vbCIvPg0KQEAgLTk5LDE1ICs5OSwxNSBAQAogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNMaW5rZXJUb29sIg0KIAkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSJnZXRidWlsZGluZm8ubyINCi0JCQkJT3V0cHV0RmlsZT0iLi9weXRob24zMl9kLmRsbCINCisJCQkJT3V0cHV0RmlsZT0iLi9weXRob24zM19kLmRsbCINCiAJCQkJTGlua0luY3JlbWVudGFsPSIxIg0KIAkJCQlTdXBwcmVzc1N0YXJ0dXBCYW5uZXI9IlRSVUUiDQogCQkJCUlnbm9yZURlZmF1bHRMaWJyYXJ5TmFtZXM9ImxpYmMiDQogCQkJCUdlbmVyYXRlRGVidWdJbmZvcm1hdGlvbj0iVFJVRSINCi0JCQkJUHJvZ3JhbURhdGFiYXNlRmlsZT0iLlwuL3B5dGhvbjMyX2QucGRiIg0KKwkJCQlQcm9ncmFtRGF0YWJhc2VGaWxlPSIuXC4vcHl0aG9uMzNfZC5wZGIiDQogCQkJCVN1YlN5c3RlbT0iMiINCiAJCQkJQmFzZUFkZHJlc3M9IjB4MWUwMDAwMDAiDQotCQkJCUltcG9ydExpYnJhcnk9Ii5cLi9weXRob24zMl9kLmxpYiINCisJCQkJSW1wb3J0TGlicmFyeT0iLlwuL3B5dGhvbjMzX2QubGliIg0KIAkJCQlUYXJnZXRNYWNoaW5lPSIxIi8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNNSURMVG9vbCIvPg0KQEAgLTE2NiwxNSArMTY2LDE1IEBACiAJCQkJTmFtZT0iVkNMaW5rZXJUb29sIg0KIAkJCQlBZGRpdGlvbmFsT3B0aW9ucz0iIC9NQUNISU5FOklBNjQgL1VTRUxJTks6TVNfU0RLIg0KIAkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSJnZXRidWlsZGluZm8ubyINCi0JCQkJT3V0cHV0RmlsZT0iLi9weXRob24zMi5kbGwiDQorCQkJCU91dHB1dEZpbGU9Ii4vcHl0aG9uMzMuZGxsIg0KIAkJCQlMaW5rSW5jcmVtZW50YWw9IjEiDQogCQkJCVN1cHByZXNzU3RhcnR1cEJhbm5lcj0iRkFMU0UiDQogCQkJCUlnbm9yZURlZmF1bHRMaWJyYXJ5TmFtZXM9ImxpYmMiDQogCQkJCUdlbmVyYXRlRGVidWdJbmZvcm1hdGlvbj0iVFJVRSINCi0JCQkJUHJvZ3JhbURhdGFiYXNlRmlsZT0iLlwuL3B5dGhvbjMyLnBkYiINCisJCQkJUHJvZ3JhbURhdGFiYXNlRmlsZT0iLlwuL3B5dGhvbjMzLnBkYiINCiAJCQkJU3ViU3lzdGVtPSIyIg0KIAkJCQlCYXNlQWRkcmVzcz0iMHgxZTAwMDAwMCINCi0JCQkJSW1wb3J0TGlicmFyeT0iLlwuL3B5dGhvbjMyLmxpYiINCisJCQkJSW1wb3J0TGlicmFyeT0iLlwuL3B5dGhvbjMzLmxpYiINCiAJCQkJVGFyZ2V0TWFjaGluZT0iMCIvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTUlETFRvb2wiLz4NCkBAIC0yMzMsMTUgKzIzMywxNSBAQAogCQkJCU5hbWU9IlZDTGlua2VyVG9vbCINCiAJCQkJQWRkaXRpb25hbE9wdGlvbnM9IiAvTUFDSElORTpBTUQ2NCAvVVNFTElOSzpNU19TREsiDQogCQkJCUFkZGl0aW9uYWxEZXBlbmRlbmNpZXM9ImdldGJ1aWxkaW5mby5vIg0KLQkJCQlPdXRwdXRGaWxlPSIuL3B5dGhvbjMyLmRsbCINCisJCQkJT3V0cHV0RmlsZT0iLi9weXRob24zMy5kbGwiDQogCQkJCUxpbmtJbmNyZW1lbnRhbD0iMSINCiAJCQkJU3VwcHJlc3NTdGFydHVwQmFubmVyPSJUUlVFIg0KIAkJCQlJZ25vcmVEZWZhdWx0TGlicmFyeU5hbWVzPSJsaWJjIg0KIAkJCQlHZW5lcmF0ZURlYnVnSW5mb3JtYXRpb249IlRSVUUiDQotCQkJCVByb2dyYW1EYXRhYmFzZUZpbGU9Ii5cLi9weXRob24zMi5wZGIiDQorCQkJCVByb2dyYW1EYXRhYmFzZUZpbGU9Ii5cLi9weXRob24zMy5wZGIiDQogCQkJCVN1YlN5c3RlbT0iMiINCiAJCQkJQmFzZUFkZHJlc3M9IjB4MWUwMDAwMDAiDQotCQkJCUltcG9ydExpYnJhcnk9Ii5cLi9weXRob24zMi5saWIiDQorCQkJCUltcG9ydExpYnJhcnk9Ii5cLi9weXRob24zMy5saWIiDQogCQkJCVRhcmdldE1hY2hpbmU9IjAiLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ01JRExUb29sIi8+DQpkaWZmIC0tZ2l0IGEvUEMvVlM3LjEvcmVhZG1lLnR4dCBiL1BDL1ZTNy4xL3JlYWRtZS50eHQKaW5kZXggOGZiMDY5Zi4uYmZkOGE3MCAxMDA2NDQKLS0tIGEvUEMvVlM3LjEvcmVhZG1lLnR4dAorKysgYi9QQy9WUzcuMS9yZWFkbWUudHh0CkBAIC0xMiw3ICsxMiw3IEBACiBUaGUgcHJvcGVyIG9yZGVyIHRvIGJ1aWxkIHN1YnByb2plY3RzOgogCiAxKSBweXRob25jb3JlICh0aGlzIGJ1aWxkcyB0aGUgbWFpbiBQeXRob24gRExMIGFuZCBsaWJyYXJ5IGZpbGVzLAotICAgICAgICAgICAgICAgcHl0aG9uMjYue2RsbCwgbGlifSBpbiBSZWxlYXNlIG1vZGUpCisgICAgICAgICAgICAgICBweXRob24zMy57ZGxsLCBsaWJ9IGluIFJlbGVhc2UgbW9kZSkKICAgICAgICAgICAgICAgTk9URTogIGluIHByZXZpb3VzIHJlbGVhc2VzLCB0aGlzIHN1YnByb2plY3Qgd2FzCiAgICAgICAgICAgICAgIG5hbWVkIGFmdGVyIHRoZSByZWxlYXNlIG51bWJlciwgZS5nLiBweXRob24yMC4KIApAQCAtMjYsNyArMjYsNyBAQAogICAgdGVzdCBzbGF2ZTsgc2VlIFNVQlBST0pFQ1RTIGJlbG93KQogCiBXaGVuIHVzaW5nIHRoZSBEZWJ1ZyBzZXR0aW5nLCB0aGUgb3V0cHV0IGZpbGVzIGhhdmUgYSBfZCBhZGRlZCB0bwotdGhlaXIgbmFtZTogIHB5dGhvbjI2X2QuZGxsLCBweXRob25fZC5leGUsIHBhcnNlcl9kLnB5ZCwgYW5kIHNvIG9uLgordGhlaXIgbmFtZTogIHB5dGhvbjMzX2QuZGxsLCBweXRob25fZC5leGUsIHBhcnNlcl9kLnB5ZCwgYW5kIHNvIG9uLgogCiBTVUJQUk9KRUNUUwogLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL1BDL1ZTOC4wL19tdWx0aXByb2Nlc3NpbmcudmNwcm9qIGIvUEMvVlM4LjAvX211bHRpcHJvY2Vzc2luZy52Y3Byb2oKaW5kZXggYzJiYmVjNC4uOGYxY2FmYyAxMDA2NDQKLS0tIGEvUEMvVlM4LjAvX211bHRpcHJvY2Vzc2luZy52Y3Byb2oKKysrIGIvUEMvVlM4LjAvX211bHRpcHJvY2Vzc2luZy52Y3Byb2oKQEAgLTUyMiwxMCArNTIyLDYgQEAKIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXC4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1xtdWx0aXByb2Nlc3NpbmcuaCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXC4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1xjb25uZWN0aW9uLmgiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQogCQk8L0ZpbHRlcj4NCiAJCTxGaWx0ZXINCiAJCQlOYW1lPSJTb3VyY2UgRmlsZXMiDQpAQCAtNTM1LDE4ICs1MzEsMTAgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cLi5cTW9kdWxlc1xfbXVsdGlwcm9jZXNzaW5nXHBpcGVfY29ubmVjdGlvbi5jIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iLi5cLi5cTW9kdWxlc1xfbXVsdGlwcm9jZXNzaW5nXHNlbWFwaG9yZS5jIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cLi5cTW9kdWxlc1xfbXVsdGlwcm9jZXNzaW5nXHNvY2tldF9jb25uZWN0aW9uLmMiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlwuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3Npbmdcd2luMzJfZnVuY3Rpb25zLmMiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpkaWZmIC0tZ2l0IGEvUEMvVlM4LjAvYnVpbGRfc3NsLmJhdCBiL1BDL1ZTOC4wL2J1aWxkX3NzbC5iYXQKaW5kZXggMzljMWZmMC4uMzU3YjA4YiAxMDA2NDQKLS0tIGEvUEMvVlM4LjAvYnVpbGRfc3NsLmJhdAorKysgYi9QQy9WUzguMC9idWlsZF9zc2wuYmF0CkBAIC0yLDEwICsyLDEwIEBACiBpZiBub3QgZGVmaW5lZCBIT1NUX1BZVEhPTiAoCiAgIGlmICUxIEVRVSBEZWJ1ZyAoCiAgICAgc2V0IEhPU1RfUFlUSE9OPXB5dGhvbl9kLmV4ZQotICAgIGlmIG5vdCBleGlzdCBweXRob24zMl9kLmRsbCBleGl0IDEKKyAgICBpZiBub3QgZXhpc3QgcHl0aG9uMzNfZC5kbGwgZXhpdCAxCiAgICkgRUxTRSAoCiAgICAgc2V0IEhPU1RfUFlUSE9OPXB5dGhvbi5leGUKLSAgICBpZiBub3QgZXhpc3QgcHl0aG9uMzIuZGxsIGV4aXQgMQorICAgIGlmIG5vdCBleGlzdCBweXRob24zMy5kbGwgZXhpdCAxCiAgICkKICkKICVIT1NUX1BZVEhPTiUgYnVpbGRfc3NsLnB5ICUxICUyICUzCmRpZmYgLS1naXQgYS9QQy9WUzguMC9raWxsX3B5dGhvbi5jIGIvUEMvVlM4LjAva2lsbF9weXRob24uYwppbmRleCA2YjkxNjc4Li5iYjMyM2QzIDEwMDY0NAotLS0gYS9QQy9WUzguMC9raWxsX3B5dGhvbi5jCisrKyBiL1BDL1ZTOC4wL2tpbGxfcHl0aG9uLmMKQEAgLTEwNiw3ICsxMDYsNyBAQAogICAgICAgICAvKgogICAgICAgICAgKiBYWFggVE9ETzogaWYgd2UgcmVhbGx5IHdhbnRlZCB0byBiZSBmYW5jeSwgd2UgY291bGQgY2hlY2sgdGhlIAogICAgICAgICAgKiBtb2R1bGVzIGZvciBhbGwgcHJvY2Vzc2VzIChub3QganVzdCB0aGUgcHl0aG9uW19kXS5leGUgb25lcykKLSAgICAgICAgICogYW5kIHNlZSBpZiBhbnkgb2Ygb3VyIERMTHMgYXJlIGxvYWRlZCAoaS5lLiBweXRob24zMltfZF0uZGxsKSwKKyAgICAgICAgICogYW5kIHNlZSBpZiBhbnkgb2Ygb3VyIERMTHMgYXJlIGxvYWRlZCAoaS5lLiBweXRob24zM1tfZF0uZGxsKSwKICAgICAgICAgICogYXMgdGhhdCB3b3VsZCBhbHNvIGluaGliaXQgb3VyIGFiaWxpdHkgdG8gcmVidWlsZCB0aGUgc29sdXRpb24uCiAgICAgICAgICAqIE5vdCB3b3J0aCBsb29zaW5nIHNsZWVwIG92ZXIgdGhvdWdoOyBmb3Igbm93LCBhIHNpbXBsZSBjaGVjayAKICAgICAgICAgICogZm9yIGp1c3QgdGhlIHB5dGhvbiBleGVjdXRhYmxlIHNob3VsZCBiZSBzdWZmaWNpZW50LgpkaWZmIC0tZ2l0IGEvUEMvVlM4LjAvcHlwcm9qZWN0LnZzcHJvcHMgYi9QQy9WUzguMC9weXByb2plY3QudnNwcm9wcwppbmRleCA2NDk0MjE2Li40YTU4MmYxIDEwMDY0NAotLS0gYS9QQy9WUzguMC9weXByb2plY3QudnNwcm9wcworKysgYi9QQy9WUzguMC9weXByb2plY3QudnNwcm9wcwpAQCAtMzgsNyArMzgsNyBAQAogCS8+DQogCTxVc2VyTWFjcm8NCiAJCU5hbWU9IlB5RGxsTmFtZSINCi0JCVZhbHVlPSJweXRob24zMiINCisJCVZhbHVlPSJweXRob24zMyINCiAJLz4NCiAJPFVzZXJNYWNybw0KIAkJTmFtZT0iUHl0aG9uRXhlIg0KZGlmZiAtLWdpdCBhL1BDL19tc2kuYyBiL1BDL19tc2kuYwppbmRleCBkNGQ4NDgzLi4wYjViOTRlIDEwMDY0NAotLS0gYS9QQy9fbXNpLmMKKysrIGIvUEMvX21zaS5jCkBAIC0xOCw3ICsxOCw3IEBACiB1dWlkY3JlYXRlKFB5T2JqZWN0KiBvYmosIFB5T2JqZWN0KmFyZ3MpCiB7CiAgICAgVVVJRCByZXN1bHQ7Ci0gICAgdW5zaWduZWQgc2hvcnQgKmNyZXN1bHQ7CisgICAgd2NoYXJfdCAqY3Jlc3VsdDsKICAgICBQeU9iamVjdCAqb3Jlc3VsdDsKIAogICAgIC8qIE1heSByZXR1cm4gb2ssIGxvY2FsIG9ubHksIGFuZCBubyBhZGRyZXNzLgpAQCAtMzUsNyArMzUsNyBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBvcmVzdWx0ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKGNyZXN1bHQsIHdjc2xlbihjcmVzdWx0KSk7CisgICAgb3Jlc3VsdCA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIoY3Jlc3VsdCwgd2NzbGVuKGNyZXN1bHQpKTsKICAgICBScGNTdHJpbmdGcmVlVygmY3Jlc3VsdCk7CiAgICAgcmV0dXJuIG9yZXN1bHQ7CiAKQEAgLTEyMiw3ICsxMjIsOSBAQAogc3RhdGljIEZORkNJU1RBVFVTKGNiX3N0YXR1cykKIHsKICAgICBpZiAocHYpIHsKLSAgICAgICAgUHlPYmplY3QgKnJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QocHYsICJzdGF0dXMiLCAiaWlpIiwgdHlwZVN0YXR1cywgY2IxLCBjYjIpOworICAgICAgICBfUHlfSURFTlRJRklFUihzdGF0dXMpOworCisgICAgICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKHB2LCAmUHlJZF9zdGF0dXMsICJpaWkiLCB0eXBlU3RhdHVzLCBjYjEsIGNiMik7CiAgICAgICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CkBAIC0xMzMsNyArMTM1LDkgQEAKIHN0YXRpYyBGTkZDSUdFVE5FWFRDQUJJTkVUKGNiX2dldG5leHRjYWJpbmV0KQogewogICAgIGlmIChwdikgewotICAgICAgICBQeU9iamVjdCAqcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChwdiwgImdldG5leHRjYWJpbmV0IiwgImkiLCBwY2NhYi0+aUNhYik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKGdldG5leHRjYWJpbmV0KTsKKworICAgICAgICBQeU9iamVjdCAqcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChwdiwgJlB5SWRfZ2V0bmV4dGNhYmluZXQsICJpIiwgcGNjYWItPmlDYWIpOwogICAgICAgICBpZiAocmVzdWx0ID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIGlmICghUHlCeXRlc19DaGVjayhyZXN1bHQpKSB7CkBAIC0zNzUsNyArMzc5LDcgQEAKICAgICB9CiAgICAgaWYgKHN0YXR1cyAhPSBFUlJPUl9TVUNDRVNTKQogICAgICAgICByZXR1cm4gbXNpZXJyb3IoKGludCkgc3RhdHVzKTsKLSAgICBzdHJpbmcgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocmVzLCBzaXplKTsKKyAgICBzdHJpbmcgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHJlcywgc2l6ZSk7CiAgICAgaWYgKGJ1ZiAhPSByZXMpCiAgICAgICAgIGZyZWUocmVzKTsKICAgICByZXR1cm4gc3RyaW5nOwpAQCAtMzk3LDcgKzQwMSw3IEBACiB7CiAgICAgaW50IHN0YXR1czsKICAgICBpbnQgZmllbGQ7Ci0gICAgUHlfVU5JQ09ERSAqZGF0YTsKKyAgICB3Y2hhcl90ICpkYXRhOwogCiAgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpdTpTZXRTdHJpbmciLCAmZmllbGQsICZkYXRhKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC00MTQsNyArNDE4LDcgQEAKIHsKICAgICBpbnQgc3RhdHVzOwogICAgIGludCBmaWVsZDsKLSAgICBQeV9VTklDT0RFICpkYXRhOworICAgIHdjaGFyX3QgKmRhdGE7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIml1OlNldFN0cmVhbSIsICZmaWVsZCwgJmRhdGEpKQogICAgICAgICByZXR1cm4gTlVMTDsKZGlmZiAtLWdpdCBhL1BDL19zdWJwcm9jZXNzLmMgYi9QQy9fc3VicHJvY2Vzcy5jCmluZGV4IDIzMzhmMzAuLjkzZTUxZDMgMTAwNjQ0Ci0tLSBhL1BDL19zdWJwcm9jZXNzLmMKKysrIGIvUEMvX3N1YnByb2Nlc3MuYwpAQCAtMzI5LDEyICszMjksOSBAQAogc3RhdGljIFB5T2JqZWN0KgogZ2V0ZW52aXJvbm1lbnQoUHlPYmplY3QqIGVudmlyb25tZW50KQogewotICAgIGludCBpOwotICAgIFB5X3NzaXplX3QgZW52c2l6ZTsKLSAgICBQeU9iamVjdCogb3V0ID0gTlVMTDsKLSAgICBQeU9iamVjdCoga2V5czsKLSAgICBQeU9iamVjdCogdmFsdWVzOwotICAgIFB5X1VOSUNPREUqIHA7CisgICAgUHlfc3NpemVfdCBpLCBlbnZzaXplLCB0b3RhbHNpemU7CisgICAgUHlfVUNTNCAqYnVmZmVyID0gTlVMTCwgKnAsICplbmQ7CisgICAgUHlPYmplY3QgKmtleXMsICp2YWx1ZXMsICpyZXM7CiAKICAgICAvKiBjb252ZXJ0IGVudmlyb25tZW50IGRpY3Rpb25hcnkgdG8gd2luZG93cyBlbnZpcm9tZW50IHN0cmluZyAqLwogICAgIGlmICghIFB5TWFwcGluZ19DaGVjayhlbnZpcm9ubWVudCkpIHsKQEAgLTM1MCwxNCArMzQ3LDggQEAKICAgICBpZiAoIWtleXMgfHwgIXZhbHVlcykKICAgICAgICAgZ290byBlcnJvcjsKIAotICAgIG91dCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCAyMDQ4KTsKLSAgICBpZiAoISBvdXQpCi0gICAgICAgIGdvdG8gZXJyb3I7Ci0KLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUob3V0KTsKLQorICAgIHRvdGFsc2l6ZSA9IDE7IC8qIHRyYWlsaW5nIG51bGwgY2hhcmFjdGVyICovCiAgICAgZm9yIChpID0gMDsgaSA8IGVudnNpemU7IGkrKykgewotICAgICAgICBQeV9zc2l6ZV90IGtzaXplLCB2c2l6ZSwgdG90YWxzaXplOwogICAgICAgICBQeU9iamVjdCoga2V5ID0gUHlMaXN0X0dFVF9JVEVNKGtleXMsIGkpOwogICAgICAgICBQeU9iamVjdCogdmFsdWUgPSBQeUxpc3RfR0VUX0lURU0odmFsdWVzLCBpKTsKIApAQCAtMzY2LDM2ICszNTcsNDIgQEAKICAgICAgICAgICAgICAgICAiZW52aXJvbm1lbnQgY2FuIG9ubHkgY29udGFpbiBzdHJpbmdzIik7CiAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICB9Ci0gICAgICAgIGtzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKGtleSk7Ci0gICAgICAgIHZzaXplID0gUHlVbmljb2RlX0dFVF9TSVpFKHZhbHVlKTsKLSAgICAgICAgdG90YWxzaXplID0gKHAgLSBQeVVuaWNvZGVfQVNfVU5JQ09ERShvdXQpKSArIGtzaXplICsgMSArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZzaXplICsgMSArIDE7Ci0gICAgICAgIGlmICh0b3RhbHNpemUgPiBQeVVuaWNvZGVfR0VUX1NJWkUob3V0KSkgewotICAgICAgICAgICAgUHlfc3NpemVfdCBvZmZzZXQgPSBwIC0gUHlVbmljb2RlX0FTX1VOSUNPREUob3V0KTsKLSAgICAgICAgICAgIFB5VW5pY29kZV9SZXNpemUoJm91dCwgdG90YWxzaXplICsgMTAyNCk7Ci0gICAgICAgICAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUob3V0KSArIG9mZnNldDsKLSAgICAgICAgfQotICAgICAgICBQeV9VTklDT0RFX0NPUFkocCwgUHlVbmljb2RlX0FTX1VOSUNPREUoa2V5KSwga3NpemUpOwotICAgICAgICBwICs9IGtzaXplOworICAgICAgICB0b3RhbHNpemUgKz0gUHlVbmljb2RlX0dFVF9MRU5HVEgoa2V5KSArIDE7ICAgIC8qICsxIGZvciAnPScgKi8KKyAgICAgICAgdG90YWxzaXplICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHZhbHVlKSArIDE7ICAvKiArMSBmb3IgJ1wwJyAqLworICAgIH0KKworICAgIGJ1ZmZlciA9IFB5TWVtX01hbGxvYyh0b3RhbHNpemUgKiBzaXplb2YoUHlfVUNTNCkpOworICAgIGlmICghIGJ1ZmZlcikKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICBwID0gYnVmZmVyOworICAgIGVuZCA9IGJ1ZmZlciArIHRvdGFsc2l6ZTsKKworICAgIGZvciAoaSA9IDA7IGkgPCBlbnZzaXplOyBpKyspIHsKKyAgICAgICAgUHlPYmplY3QqIGtleSA9IFB5TGlzdF9HRVRfSVRFTShrZXlzLCBpKTsKKyAgICAgICAgUHlPYmplY3QqIHZhbHVlID0gUHlMaXN0X0dFVF9JVEVNKHZhbHVlcywgaSk7CisgICAgICAgIGlmICghUHlVbmljb2RlX0FzVUNTNChrZXksIHAsIGVuZCAtIHAsIDApKQorICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgcCArPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChrZXkpOwogICAgICAgICAqcCsrID0gJz0nOwotICAgICAgICBQeV9VTklDT0RFX0NPUFkocCwgUHlVbmljb2RlX0FTX1VOSUNPREUodmFsdWUpLCB2c2l6ZSk7Ci0gICAgICAgIHAgKz0gdnNpemU7CisgICAgICAgIGlmICghUHlVbmljb2RlX0FzVUNTNCh2YWx1ZSwgcCwgZW5kIC0gcCwgMCkpCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICBwICs9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHZhbHVlKTsKICAgICAgICAgKnArKyA9ICdcMCc7CiAgICAgfQogCiAgICAgLyogYWRkIHRyYWlsaW5nIG51bGwgYnl0ZSAqLwogICAgICpwKysgPSAnXDAnOwotICAgIFB5VW5pY29kZV9SZXNpemUoJm91dCwgcCAtIFB5VW5pY29kZV9BU19VTklDT0RFKG91dCkpOwotCi0gICAgLyogUHlPYmplY3RfUHJpbnQob3V0LCBzdGRvdXQsIDApOyAqLworICAgIGFzc2VydChwID09IGVuZCk7CiAKICAgICBQeV9YREVDUkVGKGtleXMpOwogICAgIFB5X1hERUNSRUYodmFsdWVzKTsKIAotICAgIHJldHVybiBvdXQ7CisgICAgcmVzID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwgYnVmZmVyLCBwIC0gYnVmZmVyKTsKKyAgICBQeU1lbV9GcmVlKGJ1ZmZlcik7CisgICAgcmV0dXJuIHJlczsKIAogIGVycm9yOgotICAgIFB5X1hERUNSRUYob3V0KTsKKyAgICBQeU1lbV9GcmVlKGJ1ZmZlcik7CiAgICAgUHlfWERFQ1JFRihrZXlzKTsKICAgICBQeV9YREVDUkVGKHZhbHVlcyk7CiAgICAgcmV0dXJuIE5VTEw7CkBAIC00MjAsMTUgKzQxNywxNiBAQAogICAgIFBST0NFU1NfSU5GT1JNQVRJT04gcGk7CiAgICAgU1RBUlRVUElORk9XIHNpOwogICAgIFB5T2JqZWN0KiBlbnZpcm9ubWVudDsKKyAgICB3Y2hhcl90ICp3ZW52aXJvbm1lbnQ7CiAKLSAgICBQeV9VTklDT0RFKiBhcHBsaWNhdGlvbl9uYW1lOwotICAgIFB5X1VOSUNPREUqIGNvbW1hbmRfbGluZTsKKyAgICB3Y2hhcl90KiBhcHBsaWNhdGlvbl9uYW1lOworICAgIHdjaGFyX3QqIGNvbW1hbmRfbGluZTsKICAgICBQeU9iamVjdCogcHJvY2Vzc19hdHRyaWJ1dGVzOyAvKiBpZ25vcmVkICovCiAgICAgUHlPYmplY3QqIHRocmVhZF9hdHRyaWJ1dGVzOyAvKiBpZ25vcmVkICovCiAgICAgaW50IGluaGVyaXRfaGFuZGxlczsKICAgICBpbnQgY3JlYXRpb25fZmxhZ3M7CiAgICAgUHlPYmplY3QqIGVudl9tYXBwaW5nOwotICAgIFB5X1VOSUNPREUqIGN1cnJlbnRfZGlyZWN0b3J5OworICAgIHdjaGFyX3QqIGN1cnJlbnRfZGlyZWN0b3J5OwogICAgIFB5T2JqZWN0KiBzdGFydHVwX2luZm87CiAKICAgICBpZiAoISBQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJaWk9PaWlPWk86Q3JlYXRlUHJvY2VzcyIsCkBAIC00NTYsMTIgKzQ1NCwyMCBAQAogICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGlmIChlbnZfbWFwcGluZyA9PSBQeV9Ob25lKQotICAgICAgICBlbnZpcm9ubWVudCA9IE5VTEw7Ci0gICAgZWxzZSB7CisgICAgaWYgKGVudl9tYXBwaW5nICE9IFB5X05vbmUpIHsKICAgICAgICAgZW52aXJvbm1lbnQgPSBnZXRlbnZpcm9ubWVudChlbnZfbWFwcGluZyk7CiAgICAgICAgIGlmICghIGVudmlyb25tZW50KQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHdlbnZpcm9ubWVudCA9IFB5VW5pY29kZV9Bc1VuaWNvZGUoZW52aXJvbm1lbnQpOworICAgICAgICBpZiAod2Vudmlyb25tZW50ID09IE5VTEwpCisgICAgICAgIHsKKyAgICAgICAgICAgIFB5X1hERUNSRUYoZW52aXJvbm1lbnQpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIGVudmlyb25tZW50ID0gTlVMTDsKKyAgICAgICAgd2Vudmlyb25tZW50ID0gTlVMTDsKICAgICB9CiAKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCkBAIC00NzEsNyArNDc3LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0X2hhbmRsZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcmVhdGlvbl9mbGFncyB8IENSRUFURV9VTklDT0RFX0VOVklST05NRU5ULAotICAgICAgICAgICAgICAgICAgICAgICAgICAgZW52aXJvbm1lbnQgPyBQeVVuaWNvZGVfQVNfVU5JQ09ERShlbnZpcm9ubWVudCkgOiBOVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgd2Vudmlyb25tZW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudF9kaXJlY3RvcnksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2ksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcGkpOwpAQCAtNjA5LDcgKzYxNSw3IEBACiAgICAgaWYgKCEgcmVzdWx0KQogICAgICAgICByZXR1cm4gUHlFcnJfU2V0RnJvbVdpbmRvd3NFcnIoR2V0TGFzdEVycm9yKCkpOwogCi0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZShmaWxlbmFtZSwgUHlfVU5JQ09ERV9zdHJsZW4oZmlsZW5hbWUpKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihmaWxlbmFtZSwgd2NzbGVuKGZpbGVuYW1lKSk7CiB9CiAKIHN0YXRpYyBQeU1ldGhvZERlZiBzcF9mdW5jdGlvbnNbXSA9IHsKQEAgLTY4Miw2ICs2ODgsNyBAQAogICAgIGRlZmludChkLCAiU1dfSElERSIsIFNXX0hJREUpOwogICAgIGRlZmludChkLCAiSU5GSU5JVEUiLCBJTkZJTklURSk7CiAgICAgZGVmaW50KGQsICJXQUlUX09CSkVDVF8wIiwgV0FJVF9PQkpFQ1RfMCk7CisgICAgZGVmaW50KGQsICJXQUlUX1RJTUVPVVQiLCBXQUlUX1RJTUVPVVQpOwogICAgIGRlZmludChkLCAiQ1JFQVRFX05FV19DT05TT0xFIiwgQ1JFQVRFX05FV19DT05TT0xFKTsKICAgICBkZWZpbnQoZCwgIkNSRUFURV9ORVdfUFJPQ0VTU19HUk9VUCIsIENSRUFURV9ORVdfUFJPQ0VTU19HUk9VUCk7CiAKZGlmZiAtLWdpdCBhL1BDL2NvbmZpZy5jIGIvUEMvY29uZmlnLmMKaW5kZXggMWZjMmI0MC4uYmU1MWI1NSAxMDA2NDQKLS0tIGEvUEMvY29uZmlnLmMKKysrIGIvUEMvY29uZmlnLmMKQEAgLTEyLDYgKzEyLDcgQEAKIGV4dGVybiBQeU9iamVjdCogUHlJbml0X2JpbmFzY2lpKHZvaWQpOwogZXh0ZXJuIFB5T2JqZWN0KiBQeUluaXRfY21hdGgodm9pZCk7CiBleHRlcm4gUHlPYmplY3QqIFB5SW5pdF9lcnJubyh2b2lkKTsKK2V4dGVybiBQeU9iamVjdCogUHlJbml0X2ZhdWx0aGFuZGxlcih2b2lkKTsKIGV4dGVybiBQeU9iamVjdCogUHlJbml0X2djKHZvaWQpOwogZXh0ZXJuIFB5T2JqZWN0KiBQeUluaXRfbWF0aCh2b2lkKTsKIGV4dGVybiBQeU9iamVjdCogUHlJbml0X19tZDUodm9pZCk7CkBAIC04Miw2ICs4Myw3IEBACiAgICAgeyJiaW5hc2NpaSIsIFB5SW5pdF9iaW5hc2NpaX0sCiAgICAgeyJjbWF0aCIsIFB5SW5pdF9jbWF0aH0sCiAgICAgeyJlcnJubyIsIFB5SW5pdF9lcnJub30sCisgICAgeyJmYXVsdGhhbmRsZXIiLCBQeUluaXRfZmF1bHRoYW5kbGVyfSwKICAgICB7ImdjIiwgUHlJbml0X2djfSwKICAgICB7Im1hdGgiLCBQeUluaXRfbWF0aH0sCiAgICAgeyJudCIsIFB5SW5pdF9udH0sIC8qIFVzZSB0aGUgTlQgb3MgZnVuY3Rpb25zLCBub3QgcG9zaXggKi8KZGlmZiAtLWdpdCBhL1BDL2V4YW1wbGVfbnQvZXhhbXBsZS52Y3Byb2ogYi9QQy9leGFtcGxlX250L2V4YW1wbGUudmNwcm9qCmluZGV4IGY5MjRjN2QuLmZiYTAwYjYgMTAwNjQ0Ci0tLSBhL1BDL2V4YW1wbGVfbnQvZXhhbXBsZS52Y3Byb2oKKysrIGIvUEMvZXhhbXBsZV9udC9leGFtcGxlLnZjcHJvagpAQCAtMzksNyArMzksNyBAQAogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNMaW5rZXJUb29sIg0KIAkJCQlBZGRpdGlvbmFsT3B0aW9ucz0iL2V4cG9ydDppbml0ZXhhbXBsZSINCi0JCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0ib2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgcHl0aG9uMjYubGliIg0KKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSJvZGJjMzIubGliIG9kYmNjcDMyLmxpYiBweXRob24zMy5saWIiDQogCQkJCU91dHB1dEZpbGU9Ii5cUmVsZWFzZS9leGFtcGxlLnB5ZCINCiAJCQkJTGlua0luY3JlbWVudGFsPSIxIg0KIAkJCQlTdXBwcmVzc1N0YXJ0dXBCYW5uZXI9IlRSVUUiDQpAQCAtMTA1LDcgKzEwNSw3IEBACiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQogCQkJCUFkZGl0aW9uYWxPcHRpb25zPSIvZXhwb3J0OmluaXRleGFtcGxlIg0KLQkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSJvZGJjMzIubGliIG9kYmNjcDMyLmxpYiBweXRob24yNl9kLmxpYiINCisJCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0ib2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgcHl0aG9uMzNfZC5saWIiDQogCQkJCU91dHB1dEZpbGU9Ii5cRGVidWcvZXhhbXBsZV9kLnB5ZCINCiAJCQkJTGlua0luY3JlbWVudGFsPSIxIg0KIAkJCQlTdXBwcmVzc1N0YXJ0dXBCYW5uZXI9IlRSVUUiDQpkaWZmIC0tZ2l0IGEvUEMvZnJvemVuX2RsbG1haW4uYyBiL1BDL2Zyb3plbl9kbGxtYWluLmMKaW5kZXggYThjYzg4NS4uMDE1NmM1MCAxMDA2NDQKLS0tIGEvUEMvZnJvemVuX2RsbG1haW4uYworKysgYi9QQy9mcm96ZW5fZGxsbWFpbi5jCkBAIC03Nyw3ICs3Nyw3IEBACiB7CiAgICAgLy8gTXVzdCBnbyBiYWNrd2FyZHMKICAgICBjaGFyICoqbW9kTmFtZTsKLSAgICBmb3IgKG1vZE5hbWUgPSBwb3NzaWJsZU1vZHVsZXMrKHNpemVvZihwb3NzaWJsZU1vZHVsZXMpIC8gc2l6ZW9mKGNoYXIgKikpLTI7CisgICAgZm9yIChtb2ROYW1lID0gcG9zc2libGVNb2R1bGVzK1B5X0FSUkFZX0xFTkdUSChwb3NzaWJsZU1vZHVsZXMpLTI7CiAgICAgICAgICBtb2ROYW1lID49IHBvc3NpYmxlTW9kdWxlczsKICAgICAgICAgICptb2ROYW1lLS0pIHsKIC8qICAgICAgICAgICAgICBwcmludGYoIlRlcm1pbmF0aW5nICclcydcbiIsICptb2ROYW1lKTsqLwpAQCAtMTAzLDcgKzEwMyw3IEBACiAgICAgICAgIHsKICAgICAgICAgICAgIC8vIE11c3QgZ28gYmFja3dhcmRzCiAgICAgICAgICAgICBjaGFyICoqbW9kTmFtZTsKLSAgICAgICAgICAgIGZvciAobW9kTmFtZSA9IHBvc3NpYmxlTW9kdWxlcysoc2l6ZW9mKHBvc3NpYmxlTW9kdWxlcykgLyBzaXplb2YoY2hhciAqKSktMjsKKyAgICAgICAgICAgIGZvciAobW9kTmFtZSA9IHBvc3NpYmxlTW9kdWxlcytQeV9BUlJBWV9MRU5HVEgocG9zc2libGVNb2R1bGVzKS0yOwogICAgICAgICAgICAgICAgICBtb2ROYW1lID49IHBvc3NpYmxlTW9kdWxlczsKICAgICAgICAgICAgICAgICAgKm1vZE5hbWUtLSkKICAgICAgICAgICAgICAgICBDYWxsTW9kdWxlRGxsTWFpbigqbW9kTmFtZSwgRExMX1BST0NFU1NfREVUQUNIKTsKQEAgLTExOCw3ICsxMTgsNyBAQAogICAgIEJPT0wgKFdJTkFQSSAqIHBmbmRsbG1haW4pKEhJTlNUQU5DRSwgRFdPUkQsIExQVk9JRCk7CiAKICAgICBjaGFyIGZ1bmNOYW1lWzI1NV07Ci0gICAgSE1PRFVMRSBobW9kID0gR2V0TW9kdWxlSGFuZGxlKE5VTEwpOworICAgIEhNT0RVTEUgaG1vZCA9IEdldE1vZHVsZUhhbmRsZVcoTlVMTCk7CiAgICAgc3RyY3B5KGZ1bmNOYW1lLCAiX0RsbE1haW4iKTsKICAgICBzdHJjYXQoZnVuY05hbWUsIG1vZE5hbWUpOwogICAgIHN0cmNhdChmdW5jTmFtZSwgIkAxMiIpOyAvLyBzdGRjYWxsIGNvbnZlbnRpb24uCmRpZmYgLS1naXQgYS9QQy9nZXRwYXRocC5jIGIvUEMvZ2V0cGF0aHAuYwppbmRleCBjZDNhNGIyLi44OTIxYWEwIDEwMDY0NAotLS0gYS9QQy9nZXRwYXRocC5jCisrKyBiL1BDL2dldHBhdGhwLmMKQEAgLTI1MSw3ICsyNTEsNyBAQAogICAgIGlmIChrZXlCdWY9PU5VTEwpIGdvdG8gZG9uZTsKIAogICAgIG1lbWNweShrZXlCdWZQdHIsIGtleVByZWZpeCwgc2l6ZW9mKGtleVByZWZpeCktc2l6ZW9mKFdDSEFSKSk7Ci0gICAga2V5QnVmUHRyICs9IHNpemVvZihrZXlQcmVmaXgpL3NpemVvZihXQ0hBUikgLSAxOworICAgIGtleUJ1ZlB0ciArPSBQeV9BUlJBWV9MRU5HVEgoa2V5UHJlZml4KSAtIDE7CiAgICAgbWJzdG93Y3Moa2V5QnVmUHRyLCBQeVdpbl9ETExWZXJzaW9uU3RyaW5nLCB2ZXJzaW9uTGVuKTsKICAgICBrZXlCdWZQdHIgKz0gdmVyc2lvbkxlbjsKICAgICAvKiBOVUxMIGNvbWVzIHdpdGggdGhpcyBvbmUhICovCkBAIC03MDgsOCArNzA4LDggQEAKICAgICByZXR1cm4gcHJvZ3BhdGg7CiB9CiAKLS8qIExvYWQgcHl0aG9uMy5kbGwgYmVmb3JlIGxvYWRpbmcgYW55IGV4dGVuc2lvbiBtb2R1bGUgdGhhdCBtaWdodCByZWZlciAKLSAgIHRvIGl0LiBUaGF0IHdheSwgd2UgY2FuIGJlIHN1cmUgdGhhdCBhbHdheXMgdGhlIHB5dGhvbjMuZGxsIGNvcnJlc3BvbmRpbmcgCisvKiBMb2FkIHB5dGhvbjMuZGxsIGJlZm9yZSBsb2FkaW5nIGFueSBleHRlbnNpb24gbW9kdWxlIHRoYXQgbWlnaHQgcmVmZXIKKyAgIHRvIGl0LiBUaGF0IHdheSwgd2UgY2FuIGJlIHN1cmUgdGhhdCBhbHdheXMgdGhlIHB5dGhvbjMuZGxsIGNvcnJlc3BvbmRpbmcKICAgIHRvIHRoaXMgcHl0aG9uIERMTCBpcyBsb2FkZWQsIG5vdCBhIHB5dGhvbjMuZGxsIHRoYXQgbWlnaHQgYmUgb24gdGhlIHBhdGgKICAgIGJ5IGNoYW5jZS4KICAgIFJldHVybiB3aGV0aGVyIHRoZSBETEwgd2FzIGZvdW5kLgpkaWZmIC0tZ2l0IGEvUEMvaW1wb3J0X250LmMgYi9QQy9pbXBvcnRfbnQuYwppbmRleCAxOTZhNzc0Li5iOWIzNmRjIDEwMDY0NAotLS0gYS9QQy9pbXBvcnRfbnQuYworKysgYi9QQy9pbXBvcnRfbnQuYwpAQCAtMTUsNzIgKzE1LDEwMyBAQAogLyogYSBzdHJpbmcgbG9hZGVkIGZyb20gdGhlIERMTCBhdCBzdGFydHVwICovCiBleHRlcm4gY29uc3QgY2hhciAqUHlXaW5fRExMVmVyc2lvblN0cmluZzsKIAotRklMRSAqUHlXaW5fRmluZFJlZ2lzdGVyZWRNb2R1bGUoY29uc3QgY2hhciAqbW9kdWxlTmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBmaWxlZGVzY3IgKipwcEZpbGVEZXNjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqcGF0aEJ1ZiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgcGF0aExlbikKKy8qIEZpbmQgYSBtb2R1bGUgb24gV2luZG93cy4KKworICAgUmVhZCB0aGUgcmVnaXN0cnkgU29mdHdhcmVcUHl0aG9uXFB5dGhvbkNvcmVcPHZlcnNpb24+XE1vZHVsZXNcPG5hbWU+IChvcgorICAgU29mdHdhcmVcUHl0aG9uXFB5dGhvbkNvcmVcPHZlcnNpb24+XE1vZHVsZXNcPG5hbWU+XERlYnVnIGluIGRlYnVnIG1vZGUpCisgICBmcm9tIEhLRVlfQ1VSUkVOVF9VU0VSLCBvciBIS0VZX0xPQ0FMX01BQ0hJTkUuIEZpbmQgdGhlIGZpbGUgZGVzY3JpcHRvciB1c2luZworICAgdGhlIGZpbGUgZXh0ZW5zaW9uLiBPcGVuIHRoZSBmaWxlLgorCisgICBPbiBzdWNjZXNzLCB3cml0ZSB0aGUgZmlsZSBkZXNjcmlwdG9yIGludG8gKnBwRmlsZURlc2MsIHRoZSBtb2R1bGUgcGF0aAorICAgKFVuaWNvZGUgb2JqZWN0KSBpbnRvICpwUGF0aCwgYW5kIHJldHVybiB0aGUgb3BlbmVkIGZpbGUgb2JqZWN0LiBJZiB0aGUKKyAgIG1vZHVsZSBjYW5ub3QgYmUgZm91bmQgKGUuZy4gbm8gcmVnaXN0cnkga2V5IG9yIHRoZSBmaWxlIGRvZXNuJ3QgZXhpc3QpLAorICAgcmV0dXJuIE5VTEwuIE9uIGVycm9yLCByYWlzZSBhIFB5dGhvbiBleGNlcHRpb24gYW5kIHJldHVybiBOVUxMLgorICovCitGSUxFICoKK19QeVdpbl9GaW5kUmVnaXN0ZXJlZE1vZHVsZShQeU9iamVjdCAqbW9kdWxlTmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZmlsZWRlc2NyICoqcHBGaWxlRGVzYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnBQYXRoKQogewotICAgIGNoYXIgKm1vZHVsZUtleTsKLSAgICBjb25zdCBjaGFyIGtleVByZWZpeFtdID0gIlNvZnR3YXJlXFxQeXRob25cXFB5dGhvbkNvcmVcXCI7Ci0gICAgY29uc3QgY2hhciBrZXlTdWZmaXhbXSA9ICJcXE1vZHVsZXNcXCI7Ci0jaWZkZWYgX0RFQlVHCi0gICAgLyogSW4gZGVidWdnaW5nIGJ1aWxkcywgd2UgX211c3RfIGhhdmUgdGhlIGRlYnVnIHZlcnNpb24KLSAgICAgKiByZWdpc3RlcmVkLgotICAgICAqLwotICAgIGNvbnN0IGNoYXIgZGVidWdTdHJpbmdbXSA9ICJcXERlYnVnIjsKLSNlbHNlCi0gICAgY29uc3QgY2hhciBkZWJ1Z1N0cmluZ1tdID0gIiI7Ci0jZW5kaWYKLSAgICBzdHJ1Y3QgZmlsZWRlc2NyICpmZHAgPSBOVUxMOwotICAgIEZJTEUgKmZwOwotICAgIEhLRVkga2V5QmFzZSA9IEhLRVlfQ1VSUkVOVF9VU0VSOworICAgIHdjaGFyX3QgcGF0aEJ1ZltNQVhQQVRITEVOKzFdOworICAgIGludCBwYXRoTGVuID0gTUFYUEFUSExFTisxOworICAgIFB5T2JqZWN0ICpwYXRoLCAqbW9kdWxlS2V5LCAqc3VmZml4OworICAgIHdjaGFyX3QgKndtb2R1bGVLZXksICp3c3VmZml4OworICAgIHN0cnVjdCBmaWxlZGVzY3IgKmZkcDsKKyAgICBIS0VZIGtleUJhc2U7CiAgICAgaW50IG1vZE5hbWVTaXplOwogICAgIGxvbmcgcmVnU3RhdDsKKyAgICBQeV9zc2l6ZV90IGV4dExlbjsKKyAgICBGSUxFICpmcDsKIAotICAgIC8qIENhbGN1bGF0ZSB0aGUgc2l6ZSBmb3IgdGhlIHNwcmludGYgYnVmZmVyLgotICAgICAqIEdldCB0aGUgc2l6ZSBvZiB0aGUgY2hhcnMgb25seSwgcGx1cyAxIE5VTEwuCi0gICAgICovCi0gICAgc2l6ZV90IGJ1ZlNpemUgPSBzaXplb2Yoa2V5UHJlZml4KS0xICsKLSAgICAgICAgICAgICAgICAgICAgIHN0cmxlbihQeVdpbl9ETExWZXJzaW9uU3RyaW5nKSArCi0gICAgICAgICAgICAgICAgICAgICBzaXplb2Yoa2V5U3VmZml4KSArCi0gICAgICAgICAgICAgICAgICAgICBzdHJsZW4obW9kdWxlTmFtZSkgKwotICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGRlYnVnU3RyaW5nKSAtIDE7Ci0gICAgLyogYWxsb2NhID09IG5vIGZyZWUgcmVxdWlyZWQsIGJ1dCBtZW1vcnkgb25seSBsb2NhbCB0byBmbiwKLSAgICAgKiBhbHNvIG5vIGhlYXAgZnJhZ21lbnRhdGlvbiEKLSAgICAgKi8KLSAgICBtb2R1bGVLZXkgPSBhbGxvY2EoYnVmU2l6ZSk7Ci0gICAgUHlPU19zbnByaW50Zihtb2R1bGVLZXksIGJ1ZlNpemUsCi0gICAgICAgICAgICAgICAgICAiU29mdHdhcmVcXFB5dGhvblxcUHl0aG9uQ29yZVxcJXNcXE1vZHVsZXNcXCVzJXMiLAotICAgICAgICAgICAgICAgICAgUHlXaW5fRExMVmVyc2lvblN0cmluZywgbW9kdWxlTmFtZSwgZGVidWdTdHJpbmcpOworICAgIG1vZHVsZUtleSA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KAorI2lmZGVmIF9ERUJVRworICAgICAgICAvKiBJbiBkZWJ1Z2dpbmcgYnVpbGRzLCB3ZSBfbXVzdF8gaGF2ZSB0aGUgZGVidWcgdmVyc2lvbiByZWdpc3RlcmVkICovCisgICAgICAgICJTb2Z0d2FyZVxcUHl0aG9uXFxQeXRob25Db3JlXFwlc1xcTW9kdWxlc1xcJVVcXERlYnVnIiwKKyNlbHNlCisgICAgICAgICJTb2Z0d2FyZVxcUHl0aG9uXFxQeXRob25Db3JlXFwlc1xcTW9kdWxlc1xcJVUiLAorI2VuZGlmCisgICAgICAgIFB5V2luX0RMTFZlcnNpb25TdHJpbmcsIG1vZHVsZU5hbWUpOworICAgIGlmIChtb2R1bGVLZXkgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgd21vZHVsZUtleSA9IFB5VW5pY29kZV9Bc1VuaWNvZGUobW9kdWxlS2V5KTsKKyAgICBpZiAod21vZHVsZUtleSA9PSBOVUxMKSB7CisgICAgICAgIFB5X0RFQ1JFRihtb2R1bGVLZXkpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAKLSAgICBhc3NlcnQocGF0aExlbiA8IElOVF9NQVgpOwotICAgIG1vZE5hbWVTaXplID0gKGludClwYXRoTGVuOwotICAgIHJlZ1N0YXQgPSBSZWdRdWVyeVZhbHVlKGtleUJhc2UsIG1vZHVsZUtleSwgcGF0aEJ1ZiwgJm1vZE5hbWVTaXplKTsKKyAgICBrZXlCYXNlID0gSEtFWV9DVVJSRU5UX1VTRVI7CisgICAgbW9kTmFtZVNpemUgPSBwYXRoTGVuOworICAgIHJlZ1N0YXQgPSBSZWdRdWVyeVZhbHVlVyhrZXlCYXNlLCB3bW9kdWxlS2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoQnVmLCAmbW9kTmFtZVNpemUpOwogICAgIGlmIChyZWdTdGF0ICE9IEVSUk9SX1NVQ0NFU1MpIHsKICAgICAgICAgLyogTm8gdXNlciBzZXR0aW5nIC0gbG9va3VwIGluIG1hY2hpbmUgc2V0dGluZ3MgKi8KICAgICAgICAga2V5QmFzZSA9IEhLRVlfTE9DQUxfTUFDSElORTsKICAgICAgICAgLyogYmUgYW5hbCAtIGZhaWx1cmUgbWF5IGhhdmUgcmVzZXQgc2l6ZSBwYXJhbSAqLwotICAgICAgICBtb2ROYW1lU2l6ZSA9IChpbnQpcGF0aExlbjsKLSAgICAgICAgcmVnU3RhdCA9IFJlZ1F1ZXJ5VmFsdWUoa2V5QmFzZSwgbW9kdWxlS2V5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoQnVmLCAmbW9kTmFtZVNpemUpOwotCi0gICAgICAgIGlmIChyZWdTdGF0ICE9IEVSUk9SX1NVQ0NFU1MpCisgICAgICAgIG1vZE5hbWVTaXplID0gcGF0aExlbjsKKyAgICAgICAgcmVnU3RhdCA9IFJlZ1F1ZXJ5VmFsdWVXKGtleUJhc2UsIHdtb2R1bGVLZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoQnVmLCAmbW9kTmFtZVNpemUpOworICAgICAgICBpZiAocmVnU3RhdCAhPSBFUlJPUl9TVUNDRVNTKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYobW9kdWxlS2V5KTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgfQorICAgIFB5X0RFQ1JFRihtb2R1bGVLZXkpOworICAgIGlmIChtb2ROYW1lU2l6ZSA8IDMpIHsKKyAgICAgICAgLyogcGF0aCBzaG9ydGVyIHRoYW4gImEubyIgb3IgbmVnYXRpdmUgbGVuZ3RoIChjYXN0IHRvCisgICAgICAgICAgIHNpemVfdCBpcyB3cm9uZykgKi8KKyAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIC8qIHVzZSB0aGUgZmlsZSBleHRlbnNpb24gdG8gbG9jYXRlIHRoZSB0eXBlIGVudHJ5LiAqLwogICAgIGZvciAoZmRwID0gX1B5SW1wb3J0X0ZpbGV0YWI7IGZkcC0+c3VmZml4ICE9IE5VTEw7IGZkcCsrKSB7Ci0gICAgICAgIHNpemVfdCBleHRMZW4gPSBzdHJsZW4oZmRwLT5zdWZmaXgpOwotICAgICAgICBhc3NlcnQobW9kTmFtZVNpemUgPj0gMCk7IC8qIGVsc2UgY2FzdCB0byBzaXplX3QgaXMgd3JvbmcgKi8KLSAgICAgICAgaWYgKChzaXplX3QpbW9kTmFtZVNpemUgPiBleHRMZW4gJiYKLSAgICAgICAgICAgIHN0cm5pY21wKHBhdGhCdWYgKyAoKHNpemVfdCltb2ROYW1lU2l6ZS1leHRMZW4tMSksCi0gICAgICAgICAgICAgICAgICAgICBmZHAtPnN1ZmZpeCwKLSAgICAgICAgICAgICAgICAgICAgIGV4dExlbikgPT0gMCkKKyAgICAgICAgc3VmZml4ID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoZmRwLT5zdWZmaXgpOworICAgICAgICBpZiAoc3VmZml4ID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgd3N1ZmZpeCA9IFB5VW5pY29kZV9Bc1VuaWNvZGVBbmRTaXplKHN1ZmZpeCwgJmV4dExlbik7CisgICAgICAgIGlmICh3c3VmZml4ID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzdWZmaXgpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgaWYgKChQeV9zc2l6ZV90KW1vZE5hbWVTaXplID4gZXh0TGVuICYmCisgICAgICAgICAgICBfd2NzbmljbXAocGF0aEJ1ZiArICgoUHlfc3NpemVfdCltb2ROYW1lU2l6ZS1leHRMZW4tMSksCisgICAgICAgICAgICAgICAgICAgICAgd3N1ZmZpeCwKKyAgICAgICAgICAgICAgICAgICAgICBleHRMZW4pID09IDApCisgICAgICAgIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzdWZmaXgpOwogICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgUHlfREVDUkVGKHN1ZmZpeCk7CiAgICAgfQogICAgIGlmIChmZHAtPnN1ZmZpeCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBmcCA9IGZvcGVuKHBhdGhCdWYsIGZkcC0+bW9kZSk7Ci0gICAgaWYgKGZwICE9IE5VTEwpCi0gICAgICAgICpwcEZpbGVEZXNjID0gZmRwOworICAgIHBhdGggPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHBhdGhCdWYsIHdjc2xlbihwYXRoQnVmKSk7CisgICAgaWYgKHBhdGggPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgZnAgPSBfUHlfZm9wZW4ocGF0aCwgZmRwLT5tb2RlKTsKKyAgICBpZiAoZnAgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYocGF0aCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICAqcFBhdGggPSBwYXRoOworICAgICpwcEZpbGVEZXNjID0gZmRwOwogICAgIHJldHVybiBmcDsKIH0KZGlmZiAtLWdpdCBhL1BDL21zdmNydG1vZHVsZS5jIGIvUEMvbXN2Y3J0bW9kdWxlLmMKaW5kZXggMTY2ZGYwMy4uZjI3N2IwYSAxMDA3NTUKLS0tIGEvUEMvbXN2Y3J0bW9kdWxlLmMKKysrIGIvUEMvbXN2Y3J0bW9kdWxlLmMKQEAgLTIxMSw4ICsyMTEsNyBAQAogc3RhdGljIFB5T2JqZWN0ICoKIG1zdmNydF9nZXR3Y2goUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIFB5X1VOSUNPREUgY2g7Ci0gICAgUHlfVU5JQ09ERSB1WzFdOworICAgIHdjaGFyX3QgY2g7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIjpnZXR3Y2giKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yMjAsOCArMjE5LDcgQEAKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgY2ggPSBfZ2V0d2NoKCk7CiAgICAgUHlfRU5EX0FMTE9XX1RIUkVBRFMKLSAgICB1WzBdID0gY2g7Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tVW5pY29kZSh1LCAxKTsKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21PcmRpbmFsKGNoKTsKIH0KIAogUHlEb2NfU1RSVkFSKGdldHdjaF9kb2MsCkBAIC0yNTYsOCArMjU0LDcgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBtc3ZjcnRfZ2V0d2NoZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlfVU5JQ09ERSBjaDsKLSAgICBQeV9VTklDT0RFIHNbMV07CisgICAgd2NoYXJfdCBjaDsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiOmdldHdjaGUiKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0yNjUsOCArMjYyLDcgQEAKICAgICBQeV9CRUdJTl9BTExPV19USFJFQURTCiAgICAgY2ggPSBfZ2V0d2NoZSgpOwogICAgIFB5X0VORF9BTExPV19USFJFQURTCi0gICAgc1swXSA9IGNoOwotICAgIHJldHVybiBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocywgMSk7CisgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tT3JkaW5hbChjaCk7CiB9CiAKIFB5RG9jX1NUUlZBUihnZXR3Y2hlX2RvYywKZGlmZiAtLWdpdCBhL1BDL29zMmVteC9NYWtlZmlsZSBiL1BDL29zMmVteC9NYWtlZmlsZQppbmRleCBkOWNkZWQ3Li44MDA2MTBlIDEwMDY0NAotLS0gYS9QQy9vczJlbXgvTWFrZWZpbGUKKysrIGIvUEMvb3MyZW14L01ha2VmaWxlCkBAIC0yMzcsNyArMjM3LDcgQEAKIAogIyBPdXRwdXQgZmlsZSBuYW1lcwogUFlUSE9OX1ZFUj0JMi42Ci1QWVRIT05fTElCPQlweXRob24yNgorUFlUSE9OX0xJQj0JcHl0aG9uMzMKIFBZVEhPTi5MSUI9CSQoUFlUSE9OX0xJQilfcyRBCiBQWVRIT04uSU1QTElCPQkkKFBZVEhPTl9MSUIpJEEKIGlmZXEgKCQoRVhFT01GKSx5ZXMpCmRpZmYgLS1naXQgYS9QQy9vczJlbXgvUkVBRE1FLm9zMmVteCBiL1BDL29zMmVteC9SRUFETUUub3MyZW14CmluZGV4IGZjZjU1ZDIuLjYxY2Y2ZGYgMTAwNjQ0Ci0tLSBhL1BDL29zMmVteC9SRUFETUUub3MyZW14CisrKyBiL1BDL29zMmVteC9SRUFETUUub3MyZW14CkBAIC0zMDUsNyArMzA1LDcgQEAKICAgIHRvIGJlIGluc3RhbGxlZCBpbiBhIGRpcmVjdG9yeSBvdGhlciB0aGFuIHRoZSBQWVRIT05IT01FIGRpcmVjdG9yeSwgc2V0IAogICAgdGhlIHZhbHVlIG9mIHRoZSBNYWtlZmlsZSB2YXJpYWJsZSBFWEVfRElSIHRvIHRoZSBhcHByb3ByaWF0ZSBkaXJlY3RvcnkuCiAKLTMuIElmIHlvdSB3aXNoIHRoZSBQeXRob24gY29yZSBETEwgKHB5dGhvbjI2LmRsbCkgdG8gYmUgaW5zdGFsbGVkIGluIGEgCiszLiBJZiB5b3Ugd2lzaCB0aGUgUHl0aG9uIGNvcmUgRExMIChweXRob24zMy5kbGwpIHRvIGJlIGluc3RhbGxlZCBpbiBhIAogICAgZGlyZWN0b3J5IG90aGVyIHRoYW4gdGhlIGRpcmVjdG9yeSBpbiB3aGljaCB0aGUgUHl0aG9uIGV4ZWN1dGFibGVzIGFyZSAKICAgIGluc3RhbGxlZCAoYnkgZGVmYXVsdCwgdGhlIFBZVEhPTkhPTUUgZGlyZWN0b3J5KSwgc2V0IHRoZSB2YWx1ZSBvZiB0aGUgCiAgICBNYWtlZmlsZSB2YXJpYWJsZSBETExfRElSIHRvIHRoZSBhcHByb3ByaWF0ZSBkaXJlY3RvcnkuICBUaGlzIERMTCBtdXN0IApkaWZmIC0tZ2l0IGEvUEMvb3MyZW14L3B5Y29uZmlnLmggYi9QQy9vczJlbXgvcHljb25maWcuaAppbmRleCAzODBlMTljLi5lNTYxMDVhIDEwMDY0NAotLS0gYS9QQy9vczJlbXgvcHljb25maWcuaAorKysgYi9QQy9vczJlbXgvcHljb25maWcuaApAQCAtMSw2ICsxLDggQEAKICNpZm5kZWYgUHlfQ09ORklHX0gKICNkZWZpbmUgUHlfQ09ORklHX0gKIAorI2Vycm9yICJQRVAgMTE6IE9TLzIgaXMgbm93IHVuc3VwcG9ydGVkLCBjb2RlIHdpbGwgYmUgcmVtb3ZlZCBpbiBQeXRob24gMy40IgorCiAvKiBjb25maWcuaC4KICAqIEF0IHNvbWUgdGltZSBpbiB0aGUgcGFzdCwgZ2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkvZnJvbSBjb25maWd1cmUuCiAgKiBub3cgbWFpbnRhaW5lZCBtYW51YWxseS4KZGlmZiAtLWdpdCBhL1BDL29zMmVteC9weXRob24yNy5kZWYgYi9QQy9vczJlbXgvcHl0aG9uMzMuZGVmCnNpbWlsYXJpdHkgaW5kZXggODUlCnJlbmFtZSBmcm9tIFBDL29zMmVteC9weXRob24yNy5kZWYKcmVuYW1lIHRvIFBDL29zMmVteC9weXRob24zMy5kZWYKaW5kZXggZDg3ZGQ3Ni4uMjU2NzI2YiAxMDA2NDQKLS0tIGEvUEMvb3MyZW14L3B5dGhvbjI3LmRlZgorKysgYi9QQy9vczJlbXgvcHl0aG9uMzMuZGVmCkBAIC0xLDcyICsxLDcyIEBACi1MSUJSQVJZIHB5dGhvbjI2IElOSVRJTlNUQU5DRSBURVJNSU5TVEFOQ0UgCitMSUJSQVJZIHB5dGhvbjMzIElOSVRJTlNUQU5DRSBURVJNSU5TVEFOQ0UgCiBERVNDUklQVElPTiAiUHl0aG9uIDIuNiBDb3JlIERMTCIgCiBQUk9UTU9ERSAKIERBVEEgTVVMVElQTEUgTk9OU0hBUkVEIAogRVhQT1JUUyAKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGNvbmZpZykKKzsgRnJvbSBweXRob24zM19zLmxpYihjb25maWcpCiAgICJfUHlJbXBvcnRfSW5pdHRhYiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGRsZmNuKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGRsZmNuKQogOyAgImRsb3BlbiIKIDsgICJkbHN5bSIKIDsgICJkbGNsb3NlIgogOyAgImRsZXJyb3IiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihnZXRwYXRocCkKKzsgRnJvbSBweXRob24zM19zLmxpYihnZXRwYXRocCkKICAgIlB5X0dldFByb2dyYW1GdWxsUGF0aCIKICAgIlB5X0dldFByZWZpeCIKICAgIlB5X0dldEV4ZWNQcmVmaXgiCiAgICJQeV9HZXRQYXRoIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZ2V0YnVpbGRpbmZvKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGdldGJ1aWxkaW5mbykKICAgIlB5X0dldEJ1aWxkSW5mbyIKICAgIl9QeV9zdm52ZXJzaW9uIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobWFpbikKKzsgRnJvbSBweXRob24zM19zLmxpYihtYWluKQogICAiUHlfTWFpbiIKICAgIlB5X0dldEFyZ2NBcmd2IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoYWNjZWxlcikKKzsgRnJvbSBweXRob24zM19zLmxpYihhY2NlbGVyKQogICAiUHlHcmFtbWFyX0FkZEFjY2VsZXJhdG9ycyIKICAgIlB5R3JhbW1hcl9SZW1vdmVBY2NlbGVyYXRvcnMiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihncmFtbWFyMSkKKzsgRnJvbSBweXRob24zM19zLmxpYihncmFtbWFyMSkKICAgIlB5R3JhbW1hcl9GaW5kREZBIgogICAiUHlHcmFtbWFyX0xhYmVsUmVwciIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGxpc3Rub2RlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGxpc3Rub2RlKQogICAiUHlOb2RlX0xpc3RUcmVlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobm9kZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihub2RlKQogICAiUHlOb2RlX05ldyIKICAgIlB5Tm9kZV9BZGRDaGlsZCIKICAgIlB5Tm9kZV9GcmVlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIocGFyc2VyKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHBhcnNlcikKICAgIlB5UGFyc2VyX0FkZFRva2VuIgogICAiUHlQYXJzZXJfTmV3IgogICAiUHlQYXJzZXJfRGVsZXRlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIocGFyc2V0b2spCis7IEZyb20gcHl0aG9uMzNfcy5saWIocGFyc2V0b2spCiAgICJQeVBhcnNlcl9QYXJzZVN0cmluZyIKICAgIlB5UGFyc2VyX1BhcnNlU3RyaW5nRmxhZ3NGaWxlbmFtZSIKICAgIlB5UGFyc2VyX1BhcnNlRmlsZSIKICAgIlB5UGFyc2VyX1BhcnNlRmlsZUZsYWdzIgogICAiUHlQYXJzZXJfUGFyc2VTdHJpbmdGbGFncyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGJpdHNldCkKKzsgRnJvbSBweXRob24zM19zLmxpYihiaXRzZXQpCiAgICJfUHlfbmV3Yml0c2V0IgogICAiX1B5X2RlbGJpdHNldCIKICAgIl9QeV9hZGRiaXQiCiAgICJfUHlfc2FtZWJpdHNldCIKICAgIl9QeV9tZXJnZWJpdHNldCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG1ldGFncmFtbWFyKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKG1ldGFncmFtbWFyKQogICAiX1B5X21ldGFfZ3JhbW1hciIKICAgIlB5X21ldGFfZ3JhbW1hciIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHRva2VuaXplcikKKzsgRnJvbSBweXRob24zM19zLmxpYih0b2tlbml6ZXIpCiAgICJQeVRva2VuX09uZUNoYXIiCiAgICJQeVRva2VuX1R3b0NoYXJzIgogICAiUHlUb2tlbl9UaHJlZUNoYXJzIgpAQCAtNzYsMTQgKzc2LDE0IEBACiAgICJQeVRva2VuaXplcl9HZXQiCiAgICJfUHlQYXJzZXJfVG9rZW5OYW1lcyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG15cmVhZGxpbmUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIobXlyZWFkbGluZSkKICAgIl9QeU9TX1JlYWRsaW5lVFN0YXRlIgogICAiUHlPU19SZWFkbGluZUZ1bmN0aW9uUG9pbnRlciIKICAgIlB5T1NfU3RkaW9SZWFkbGluZSIKICAgIlB5T1NfUmVhZGxpbmUiCiAgICJQeU9TX0lucHV0SG9vayIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGFic3RyYWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGFic3RyYWN0KQogICAiX1B5T2JqZWN0X0xlbmd0aEhpbnQiCiAgICJQeU1hcHBpbmdfU2l6ZSIKICAgIlB5T2JqZWN0X0NhbGxNZXRob2QiCkBAIC0xNzQsMTMgKzE3NCwxMyBAQAogICAiUHlPYmplY3RfSXNJbnN0YW5jZSIKICAgIlB5T2JqZWN0X0lzU3ViY2xhc3MiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihib29sb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGJvb2xvYmplY3QpCiAgICJQeUJvb2xfRnJvbUxvbmciCiAgICJQeUJvb2xfVHlwZSIKICAgIl9QeV9aZXJvU3RydWN0IgogICAiX1B5X1RydWVTdHJ1Y3QiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihidWZmZXJvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoYnVmZmVyb2JqZWN0KQogICAiUHlCdWZmZXJfRnJvbU9iamVjdCIKICAgIlB5QnVmZmVyX0Zyb21SZWFkV3JpdGVPYmplY3QiCiAgICJQeUJ1ZmZlcl9Gcm9tTWVtb3J5IgpAQCAtMTg4LDEzICsxODgsMTMgQEAKICAgIlB5QnVmZmVyX05ldyIKICAgIlB5QnVmZmVyX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjZWxsb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNlbGxvYmplY3QpCiAgICJQeUNlbGxfTmV3IgogICAiUHlDZWxsX0dldCIKICAgIlB5Q2VsbF9TZXQiCiAgICJQeUNlbGxfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGNsYXNzb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNsYXNzb2JqZWN0KQogICAiUHlDbGFzc19OZXciCiAgICJQeUNsYXNzX0lzU3ViY2xhc3MiCiAgICJQeUluc3RhbmNlX05ldyIKQEAgLTIwOSw3ICsyMDksNyBAQAogICAiUHlJbnN0YW5jZV9UeXBlIgogICAiUHlNZXRob2RfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGNhcHN1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoY2Fwc3VsZSkKICAgIlB5Q2Fwc3VsZV9HZXRDb250ZXh0IgogICAiUHlDYXBzdWxlX0dldERlc3RydWN0b3IiCiAgICJQeUNhcHN1bGVfR2V0TmFtZSIKQEAgLTIyMiw3ICsyMjIsNyBAQAogICAiUHlDYXBzdWxlX1NldE5hbWUiCiAgICJQeUNhcHN1bGVfU2V0UG9pbnRlciIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGNvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoY29iamVjdCkKICAgIlB5Q09iamVjdF9Gcm9tVm9pZFB0ciIKICAgIlB5Q09iamVjdF9Gcm9tVm9pZFB0ckFuZERlc2MiCiAgICJQeUNPYmplY3RfQXNWb2lkUHRyIgpAQCAtMjMxLDEzICsyMzEsMTMgQEAKICAgIlB5Q09iamVjdF9TZXRWb2lkUHRyIgogICAiUHlDT2JqZWN0X1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjb2Rlb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNvZGVvYmplY3QpCiAgICJQeUNvZGVfTmV3IgogICAiUHlDb2RlX0FkZHIyTGluZSIKICAgIlB5Q29kZV9DaGVja0xpbmVOdW1iZXIiCiAgICJQeUNvZGVfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGNvbXBsZXhvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoY29tcGxleG9iamVjdCkKICAgIl9QeV9jX3BvdyIKICAgIl9QeV9jX3N1bSIKICAgIl9QeV9jX2RpZmYiCkBAIC0yNTEsNyArMjUxLDcgQEAKICAgIlB5Q29tcGxleF9Bc0NDb21wbGV4IgogICAiUHlDb21wbGV4X1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihkZXNjcm9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihkZXNjcm9iamVjdCkKICAgIlB5V3JhcHBlcl9OZXciCiAgICJQeURlc2NyX05ld01ldGhvZCIKICAgIlB5RGVzY3JfTmV3Q2xhc3NNZXRob2QiCkBAIC0yNjIsNyArMjYyLDcgQEAKICAgIlB5V3JhcHBlckRlc2NyX1R5cGUiCiAgICJQeVByb3BlcnR5X1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihkaWN0b2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGRpY3RvYmplY3QpCiAgICJQeURpY3RfTmV3IgogICAiUHlEaWN0X0dldEl0ZW0iCiAgICJQeURpY3RfU2V0SXRlbSIKQEAgLTI4NiwxMSArMjg2LDExIEBACiAgICJQeURpY3RJdGVyVmFsdWVfVHlwZSIKICAgIlB5RGljdEl0ZXJJdGVtX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihlbnVtb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGVudW1vYmplY3QpCiAgICJQeUVudW1fVHlwZSIKICAgIlB5UmV2ZXJzZWRfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGZpbGVvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZmlsZW9iamVjdCkKICAgIlB5RmlsZV9Gcm9tU3RyaW5nIgogICAiUHlfVW5pdmVyc2FsTmV3bGluZUZyZWFkIgogICAiUHlGaWxlX0dldExpbmUiCkBAIC0zMDYsNyArMzA2LDcgQEAKICAgIlB5RmlsZV9OYW1lIgogICAiUHlGaWxlX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihmbG9hdG9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihmbG9hdG9iamVjdCkKICAgIlB5RmxvYXRfRnJvbVN0cmluZyIKICAgIlB5RmxvYXRfQXNEb3VibGUiCiAgICJQeUZsb2F0X0ZpbmkiCkBAIC0zMjEsNyArMzIxLDcgQEAKICAgIlB5RmxvYXRfQXNTdHJpbmdFeCIKICAgIlB5RmxvYXRfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGZyYW1lb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGZyYW1lb2JqZWN0KQogICAiUHlGcmFtZV9OZXciCiAgICJQeUZyYW1lX0Zhc3RUb0xvY2FscyIKICAgIlB5RnJhbWVfTG9jYWxzVG9GYXN0IgpAQCAtMzMxLDcgKzMzMSw3IEBACiAgICJQeUZyYW1lX0Jsb2NrUG9wIgogICAiUHlGcmFtZV9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZnVuY29iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihmdW5jb2JqZWN0KQogICAiUHlGdW5jdGlvbl9OZXciCiAgICJQeUZ1bmN0aW9uX0dldENvZGUiCiAgICJQeUZ1bmN0aW9uX0dldEdsb2JhbHMiCkBAIC0zNDYsMTIgKzM0NiwxMiBAQAogICAiUHlDbGFzc01ldGhvZF9UeXBlIgogICAiUHlTdGF0aWNNZXRob2RfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGdlbm9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihnZW5vYmplY3QpCiAgICJQeUdlbl9OZXciCiAgICJQeUdlbl9OZWVkc0ZpbmFsaXppbmciCiAgICJQeUdlbl9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoaW50b2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGludG9iamVjdCkKICAgIlB5SW50X0FzTG9uZyIKICAgIlB5SW50X0FzVW5zaWduZWRMb25nTWFzayIKICAgIlB5SW50X0FzVW5zaWduZWRMb25nTG9uZ01hc2siCkBAIC0zNjYsMTMgKzM2NiwxMyBAQAogICAiX1B5SW50X0luaXQiCiAgICJQeUludF9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoaXRlcm9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihpdGVyb2JqZWN0KQogICAiUHlTZXFJdGVyX05ldyIKICAgIlB5Q2FsbEl0ZXJfTmV3IgogICAiUHlTZXFJdGVyX1R5cGUiCiAgICJQeUNhbGxJdGVyX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihsaXN0b2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGxpc3RvYmplY3QpCiAgICJQeUxpc3RfTmV3IgogICAiUHlMaXN0X0FwcGVuZCIKICAgIlB5TGlzdF9TaXplIgpAQCAtMzkwLDcgKzM5MCw3IEBACiAgICJQeUxpc3RJdGVyX1R5cGUiCiAgICJQeUxpc3RSZXZJdGVyX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihsb25nb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGxvbmdvYmplY3QpCiAgICJQeUxvbmdfRnJvbURvdWJsZSIKICAgIlB5TG9uZ19Bc0xvbmciCiAgICJfUHlMb25nX0FzU3NpemVfdCIKQEAgLTQyMCw3ICs0MjAsNyBAQAogICAiUHlMb25nX1R5cGUiCiAgICJfUHlMb25nX0RpZ2l0VmFsdWUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihtZXRob2RvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIobWV0aG9kb2JqZWN0KQogICAiUHlDRnVuY3Rpb25fQ2FsbCIKICAgIlB5X0ZpbmRNZXRob2RJbkNoYWluIgogICAiUHlDRnVuY3Rpb25fR2V0RnVuY3Rpb24iCkBAIC00MzIsNyArNDMyLDcgQEAKICAgIlB5Q0Z1bmN0aW9uX05ldyIKICAgIlB5Q0Z1bmN0aW9uX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihtb2R1bGVvYmplY3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIobW9kdWxlb2JqZWN0KQogICAiUHlNb2R1bGVfTmV3IgogICAiX1B5TW9kdWxlX0NsZWFyIgogICAiUHlNb2R1bGVfR2V0RGljdCIKQEAgLTQ0MCw3ICs0NDAsNyBAQAogICAiUHlNb2R1bGVfR2V0RmlsZW5hbWUiCiAgICJQeU1vZHVsZV9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIob2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKG9iamVjdCkKICAgIlB5X0RpdmlzaW9uV2FybmluZ0ZsYWciCiAgICJQeU9iamVjdF9TdHIiCiAgICJQeU9iamVjdF9SZXByIgpAQCAtNDkzLDE1ICs0OTMsMTUgQEAKICAgIl9QeVRyYXNoX2RlbGV0ZV9uZXN0aW5nIgogICAiX1B5VHJhc2hfZGVsZXRlX2xhdGVyIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIob2JtYWxsb2MpCis7IEZyb20gcHl0aG9uMzNfcy5saWIob2JtYWxsb2MpCiAgICJQeU9iamVjdF9NYWxsb2MiCiAgICJQeU9iamVjdF9GcmVlIgogICAiUHlPYmplY3RfUmVhbGxvYyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHJhbmdlb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHJhbmdlb2JqZWN0KQogICAiUHlSYW5nZV9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoc2V0b2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHNldG9iamVjdCkKICAgIlB5U2V0X1BvcCIKICAgIlB5U2V0X05ldyIKICAgIlB5RnJvemVuU2V0X05ldyIKQEAgLTUxNiw3ICs1MTYsNyBAQAogICAiUHlTZXRfVHlwZSIKICAgIlB5RnJvemVuU2V0X1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihzbGljZW9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihzbGljZW9iamVjdCkKICAgIl9QeVNsaWNlX0Zyb21JbmRpY2VzIgogICAiUHlTbGljZV9HZXRJbmRpY2VzIgogICAiUHlTbGljZV9HZXRJbmRpY2VzRXgiCkBAIC01MjQsNyArNTI0LDcgQEAKICAgIl9QeV9FbGxpcHNpc09iamVjdCIKICAgIlB5U2xpY2VfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHN0cmluZ29iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihzdHJpbmdvYmplY3QpCiAgICJQeVN0cmluZ19Gcm9tU3RyaW5nQW5kU2l6ZSIKICAgIlB5U3RyaW5nX0ludGVybkluUGxhY2UiCiAgICJQeVN0cmluZ19Gcm9tU3RyaW5nIgpAQCAtNTU1LDEyICs1NTUsMTIgQEAKICAgIlB5U3RyaW5nX1R5cGUiCiAgICJQeUJhc2VTdHJpbmdfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHN0cnVjdHNlcSkKKzsgRnJvbSBweXRob24zM19zLmxpYihzdHJ1Y3RzZXEpCiAgICJQeVN0cnVjdFNlcXVlbmNlX0luaXRUeXBlIgogICAiUHlTdHJ1Y3RTZXF1ZW5jZV9OZXciCiAgICJQeVN0cnVjdFNlcXVlbmNlX1VubmFtZWRGaWVsZCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHR1cGxlb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHR1cGxlb2JqZWN0KQogICAiUHlUdXBsZV9OZXciCiAgICJQeVR1cGxlX1BhY2siCiAgICJfUHlUdXBsZV9SZXNpemUiCkBAIC01NzIsNyArNTcyLDcgQEAKICAgIlB5VHVwbGVfVHlwZSIKICAgIlB5VHVwbGVJdGVyX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYih0eXBlb2JqZWN0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHR5cGVvYmplY3QpCiAgICJQeVR5cGVfSXNTdWJ0eXBlIgogICAiX1B5VHlwZV9Mb29rdXAiCiAgICJQeVR5cGVfUmVhZHkiCkBAIC01ODMsNyArNTgzLDcgQEAKICAgIlB5QmFzZU9iamVjdF9UeXBlIgogICAiUHlTdXBlcl9UeXBlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIodW5pY29kZW9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYih1bmljb2Rlb2JqZWN0KQogICAiUHlVbmljb2RlVUNTMl9SZXNpemUiCiAgICJQeVVuaWNvZGVVQ1MyX0Zyb21PcmRpbmFsIgogICAiUHlVbmljb2RlVUNTMl9Gcm9tT2JqZWN0IgpAQCAtNjQ5LDcgKzY0OSw3IEBACiAgICJQeVVuaWNvZGVfQXNEZWNvZGVkT2JqZWN0IgogICAiUHlVbmljb2RlX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYih1bmljb2RlY3R5cGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIodW5pY29kZWN0eXBlKQogICAiX1B5VW5pY29kZV9UeXBlUmVjb3JkcyIKICAgIl9QeVVuaWNvZGVVQ1MyX1RvTnVtZXJpYyIKICAgIl9QeVVuaWNvZGVVQ1MyX0lzTG93ZXJjYXNlIgpAQCAtNjY3LDcgKzY2Nyw3IEBACiAgICJfUHlVbmljb2RlVUNTMl9Jc051bWVyaWMiCiAgICJfUHlVbmljb2RlVUNTMl9Jc0FscGhhIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIod2Vha3JlZm9iamVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYih3ZWFrcmVmb2JqZWN0KQogICAiUHlXZWFrcmVmX05ld1JlZiIKICAgIlB5V2Vha3JlZl9OZXdQcm94eSIKICAgIlB5T2JqZWN0X0NsZWFyV2Vha1JlZnMiCkBAIC02NzgsNyArNjc4LDcgQEAKICAgIl9QeVdlYWtyZWZfUHJveHlUeXBlIgogICAiX1B5V2Vha3JlZl9DYWxsYWJsZVByb3h5VHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKFB5dGhvbi1hc3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoUHl0aG9uLWFzdCkKIDsgICJpbml0X2FzdCIKICAgIk1vZHVsZSIKICAgIkludGVyYWN0aXZlIgpAQCAtNzM3LDE4ICs3MzcsMTggQEAKICAgImFsaWFzIgogICAiUHlBU1RfbW9kMm9iaiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGFzZGwpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoYXNkbCkKICAgImFzZGxfc2VxX25ldyIKICAgImFzZGxfaW50X3NlcV9uZXciCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihhc3QpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoYXN0KQogICAiUHlBU1RfRnJvbU5vZGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihibHRpbm1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihibHRpbm1vZHVsZSkKICAgIl9QeUJ1aWx0aW5fSW5pdCIKICAgIlB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmciCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihleGNlcHRpb25zKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGV4Y2VwdGlvbnMpCiAgICJQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRTdGFydCIKICAgIlB5VW5pY29kZURlY29kZUVycm9yX0dldFN0YXJ0IgogICAiUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5kIgpAQCAtODI0LDcgKzgyNCw3IEBACiAgICJQeUV4Y19JbXBvcnRXYXJuaW5nIgogICAiUHlFeGNfTWVtb3J5RXJyb3JJbnN0IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoY2V2YWwpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoY2V2YWwpCiAgICJQeUV2YWxfRXZhbEZyYW1lRXgiCiAgICJQeUV2YWxfQ2FsbE9iamVjdFdpdGhLZXl3b3JkcyIKICAgIlB5RXZhbF9FdmFsQ29kZUV4IgpAQCAtODYzLDEzICs4NjMsMTMgQEAKICAgIl9QeV9DaGVja0ludGVydmFsIgogICAiX1B5X1RpY2tlciIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGNvbXBpbGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoY29tcGlsZSkKICAgIl9QeV9NYW5nbGUiCiAgICJQeUFTVF9Db21waWxlIgogICAiUHlOb2RlX0NvbXBpbGUiCiAgICJQeV9PcHRpbWl6ZUZsYWciCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjb2RlY3MpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoY29kZWNzKQogICAiX1B5Q29kZWNfTG9va3VwIgogICAiUHlDb2RlY19FbmNvZGUiCiAgICJQeUNvZGVjX0RlY29kZSIKQEAgLTg4OCw3ICs4ODgsNyBAQAogICAiUHlDb2RlY19Mb29rdXBFcnJvciIKICAgIlB5Q29kZWNfU3RyaWN0RXJyb3JzIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZXJyb3JzKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGVycm9ycykKICAgIlB5RXJyX1NldE5vbmUiCiAgICJQeUVycl9TZXRTdHJpbmciCiAgICJQeUVycl9HaXZlbkV4Y2VwdGlvbk1hdGNoZXMiCkBAIC05MTQsMTYgKzkxNCwxNiBAQAogICAiUHlFcnJfV2FybiIKICAgIlB5RXJyX1dhcm5FeHBsaWNpdCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGZyb3plbikKKzsgRnJvbSBweXRob24zM19zLmxpYihmcm96ZW4pCiAgICJQeUltcG9ydF9Gcm96ZW5Nb2R1bGVzIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZnJvemVubWFpbikKKzsgRnJvbSBweXRob24zM19zLmxpYihmcm96ZW5tYWluKQogICAiUHlfRnJvemVuTWFpbiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGZ1dHVyZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihmdXR1cmUpCiAgICJQeUZ1dHVyZV9Gcm9tQVNUIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZ2V0YXJncykKKzsgRnJvbSBweXRob24zM19zLmxpYihnZXRhcmdzKQogICAiUHlBcmdfUGFyc2UiCiAgICJfUHlBcmdfUGFyc2VfU2l6ZVQiCiAgICJQeUFyZ19QYXJzZVR1cGxlIgpAQCAtOTM3LDIyICs5MzcsMjIgQEAKICAgIl9QeUFyZ19WYVBhcnNlX1NpemVUIgogICAiX1B5QXJnX1ZhUGFyc2VUdXBsZUFuZEtleXdvcmRzX1NpemVUIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZ2V0Y29tcGlsZXIpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZ2V0Y29tcGlsZXIpCiAgICJQeV9HZXRDb21waWxlciIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGdldGNvcHlyaWdodCkKKzsgRnJvbSBweXRob24zM19zLmxpYihnZXRjb3B5cmlnaHQpCiAgICJQeV9HZXRDb3B5cmlnaHQiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihnZXRwbGF0Zm9ybSkKKzsgRnJvbSBweXRob24zM19zLmxpYihnZXRwbGF0Zm9ybSkKICAgIlB5X0dldFBsYXRmb3JtIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZ2V0dmVyc2lvbikKKzsgRnJvbSBweXRob24zM19zLmxpYihnZXR2ZXJzaW9uKQogICAiUHlfR2V0VmVyc2lvbiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGdyYW1pbml0KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGdyYW1pbml0KQogICAiX1B5UGFyc2VyX0dyYW1tYXIiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihpbXBvcnQpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoaW1wb3J0KQogICAiX1B5SW1wb3J0X0luaXQiCiAgICJfUHlJbXBvcnRIb29rc19Jbml0IgogICAiUHlJbXBvcnRfSW1wb3J0TW9kdWxlIgpAQCAtOTc5LDEwICs5NzksMTAgQEAKICAgIlB5SW1wb3J0X0luaXR0YWIiCiAgICJfUHlJbXBvcnRfRmlsZXRhYiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGltcG9ydGRsKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGltcG9ydGRsKQogICAiX1B5SW1wb3J0X0xvYWREeW5hbWljTW9kdWxlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobWFyc2hhbCkKKzsgRnJvbSBweXRob24zM19zLmxpYihtYXJzaGFsKQogICAiUHlNYXJzaGFsX1JlYWRMb25nRnJvbUZpbGUiCiAgICJQeU1hcnNoYWxfV3JpdGVPYmplY3RUb1N0cmluZyIKICAgIlB5TWFyc2hhbF9Xcml0ZUxvbmdUb0ZpbGUiCkBAIC05OTMsNyArOTkzLDcgQEAKICAgIlB5TWFyc2hhbF9SZWFkT2JqZWN0RnJvbVN0cmluZyIKICAgIlB5TWFyc2hhbF9Jbml0IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobW9kc3VwcG9ydCkKKzsgRnJvbSBweXRob24zM19zLmxpYihtb2RzdXBwb3J0KQogICAiUHlfSW5pdE1vZHVsZTQiCiAgICJQeV9CdWlsZFZhbHVlIgogICAiX1B5X0J1aWxkVmFsdWVfU2l6ZVQiCkBAIC0xMDA2LDI0ICsxMDA2LDI0IEBACiAgICJQeU1vZHVsZV9BZGRTdHJpbmdDb25zdGFudCIKICAgIl9QeV9QYWNrYWdlQ29udGV4dCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG15c25wcmludGYpCis7IEZyb20gcHl0aG9uMzNfcy5saWIobXlzbnByaW50ZikKICAgIlB5T1Nfc25wcmludGYiCiAgICJQeU9TX3ZzbnByaW50ZiIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKG15c3RydG91bCkKKzsgRnJvbSBweXRob24zM19zLmxpYihteXN0cnRvdWwpCiAgICJQeU9TX3N0cnRvdWwiCiAgICJQeU9TX3N0cnRvbCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHB5YXJlbmEpCis7IEZyb20gcHl0aG9uMzNfcy5saWIocHlhcmVuYSkKICAgIlB5QXJlbmFfTmV3IgogICAiUHlBcmVuYV9GcmVlIgogICAiUHlBcmVuYV9NYWxsb2MiCiAgICJQeUFyZW5hX0FkZFB5T2JqZWN0IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIocHlmcGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIocHlmcGUpCiAgICJQeUZQRV9kdW1teSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHB5c3RhdGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIocHlzdGF0ZSkKICAgIlB5SW50ZXJwcmV0ZXJTdGF0ZV9DbGVhciIKICAgIlB5VGhyZWFkU3RhdGVfQ2xlYXIiCiAgICJfUHlUaHJlYWRfQ3VycmVudEZyYW1lcyIKQEAgLTEwNDgsNyArMTA0OCw3IEBACiAgICJfUHlUaHJlYWRTdGF0ZV9DdXJyZW50IgogICAiX1B5VGhyZWFkU3RhdGVfR2V0RnJhbWUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihweXRob25ydW4pCis7IEZyb20gcHl0aG9uMzNfcy5saWIocHl0aG9ucnVuKQogICAiUHlfSWdub3JlRW52aXJvbm1lbnRGbGFnIgogICAiUHlfRGVidWdGbGFnIgogICAiUHlfVmVyYm9zZUZsYWciCkBAIC0xMTEwLDIwICsxMTEwLDIwIEBACiAgICJQeV9Vbmljb2RlRmxhZyIKICAgIl9QeV9RbmV3RmxhZyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHN0cnVjdG1lbWJlcikKKzsgRnJvbSBweXRob24zM19zLmxpYihzdHJ1Y3RtZW1iZXIpCiAgICJQeU1lbWJlcl9HZXQiCiAgICJQeU1lbWJlcl9HZXRPbmUiCiAgICJQeU1lbWJlcl9TZXRPbmUiCiAgICJQeU1lbWJlcl9TZXQiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihzeW10YWJsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihzeW10YWJsZSkKICAgIlB5U3ltdGFibGVfQnVpbGQiCiAgICJQeVN5bXRhYmxlX0ZyZWUiCiAgICJQeVNUX0dldFNjb3BlIgogICAiUHlTeW10YWJsZV9Mb29rdXAiCiAgICJQeVNURW50cnlfVHlwZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHN5c21vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihzeXNtb2R1bGUpCiAgICJfUHlTeXNfSW5pdCIKICAgIlB5U3lzX1dyaXRlU3RkZXJyIgogICAiUHlTeXNfU2V0UGF0aCIKQEAgLTExMzcsMjIgKzExMzcsMjIgQEAKICAgIlB5U3lzX1Jlc2V0V2Fybk9wdGlvbnMiCiAgICJQeVN5c19BZGRXYXJuT3B0aW9uIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIodHJhY2ViYWNrKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHRyYWNlYmFjaykKICAgIlB5VHJhY2VCYWNrX0hlcmUiCiAgICJQeVRyYWNlQmFja19QcmludCIKICAgIlB5VHJhY2VCYWNrX1R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihnZXRvcHQpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZ2V0b3B0KQogICAiX1B5T1NfR2V0T3B0IgogICAiX1B5T1Nfb3B0ZXJyIgogICAiX1B5T1Nfb3B0aW5kIgogICAiX1B5T1Nfb3B0YXJnIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZHlubG9hZF9zaGxpYikKKzsgRnJvbSBweXRob24zM19zLmxpYihkeW5sb2FkX3NobGliKQogICAiX1B5SW1wb3J0X0R5bkxvYWRGaWxldGFiIgogICAiX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIodGhyZWFkKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHRocmVhZCkKICAgIlB5VGhyZWFkX2RlbGV0ZV9rZXlfdmFsdWUiCiAgICJQeVRocmVhZF9pbml0X3RocmVhZCIKICAgIlB5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQiCkBAIC0xMTY5LDcgKzExNjksNyBAQAogICAiUHlUaHJlYWRfc2V0X2tleV92YWx1ZSIKICAgIlB5VGhyZWFkX2dldF9rZXlfdmFsdWUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihnY21vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihnY21vZHVsZSkKIDsgICJpbml0Z2MiCiAgICJfUHlPYmplY3RfR0NfTmV3IgogICAiX1B5T2JqZWN0X0dDX05ld1ZhciIKQEAgLTExODUsNyArMTE4NSw3IEBACiAgICJfUHlPYmplY3RfR0NfRGVsIgogICAiX1B5R0NfZ2VuZXJhdGlvbjAiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihzaWduYWxtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc2lnbmFsbW9kdWxlKQogOyAgImluaXRzaWduYWwiCiAgICJQeUVycl9DaGVja1NpZ25hbHMiCiAgICJQeUVycl9TZXRJbnRlcnJ1cHQiCkBAIC0xMTk0LDEyMSArMTE5NCwxMjEgQEAKICAgIlB5T1NfSW5pdEludGVycnVwdHMiCiAgICJQeU9TX0FmdGVyRm9yayIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHBvc2l4bW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHBvc2l4bW9kdWxlKQogOyAgImluaXRvczIiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihfdGhyZWFkbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKF90aHJlYWRtb2R1bGUpCiA7ICAiaW5pdF90aHJlYWQiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihhcnJheW1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihhcnJheW1vZHVsZSkKIDsgICJpbml0YXJyYXkiCiA7ICAiYXJyYXlfbWV0aG9kcyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGJpbmFzY2lpKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGJpbmFzY2lpKQogOyAgImluaXRiaW5hc2NpaSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGNtYXRobW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNtYXRobW9kdWxlKQogOyAgImluaXRjbWF0aCIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKF9jb2RlY3Ntb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoX2NvZGVjc21vZHVsZSkKIDsgICJpbml0X2NvZGVjcyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKGNvbGxlY3Rpb25zbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNvbGxlY3Rpb25zbW9kdWxlKQogOyAgImluaXRjb2xsZWN0aW9ucyIKICAgImRlcXVlaXRlcl90eXBlIgogICAiZGVxdWVyZXZpdGVyX3R5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihjUGlja2xlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGNQaWNrbGUpCiA7ICAiaW5pdGNQaWNrbGUiCiA7ICAiZmFzdF9zYXZlX2xlYXZlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoX2NzdikKKzsgRnJvbSBweXRob24zM19zLmxpYihfY3N2KQogOyAgImluaXRfY3N2IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZGF0ZXRpbWVtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZGF0ZXRpbWVtb2R1bGUpCiA7ICAiaW5pdGRhdGV0aW1lIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZGxtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZGxtb2R1bGUpCiA7ICAiaW5pdGRsIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZXJybm9tb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZXJybm9tb2R1bGUpCiA7ICAiaW5pdGVycm5vIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoZmNudGxtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoZmNudGxtb2R1bGUpCiA7ICAiaW5pdGZjbnRsIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoX2Z1bmN0b29sc21vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihfZnVuY3Rvb2xzbW9kdWxlKQogOyAgImluaXRfZnVuY3Rvb2xzIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoX2hlYXBxbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKF9oZWFwcW1vZHVsZSkKIDsgICJpbml0X2hlYXBxIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoaW1hZ2VvcCkKKzsgRnJvbSBweXRob24zM19zLmxpYihpbWFnZW9wKQogOyAgImluaXRpbWFnZW9wIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoaXRlcnRvb2xzbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKGl0ZXJ0b29sc21vZHVsZSkKIDsgICJpbml0aXRlcnRvb2xzIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoX2xvY2FsZW1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihfbG9jYWxlbW9kdWxlKQogOyAgImluaXRfbG9jYWxlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobWF0aG1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihtYXRobW9kdWxlKQogOyAgImluaXRtYXRoIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIobWQ1KQorOyBGcm9tIHB5dGhvbjMzX3MubGliKG1kNSkKICAgIm1kNV9maW5pc2giCiAgICJtZDVfaW5pdCIKICAgIm1kNV9hcHBlbmQiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihtZDVtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIobWQ1bW9kdWxlKQogOyAgImluaXRfbWQ1IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIob3BlcmF0b3IpCis7IEZyb20gcHl0aG9uMzNfcy5saWIob3BlcmF0b3IpCiA7ICAiaW5pdG9wZXJhdG9yIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoX3JhbmRvbW1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihfcmFuZG9tbW9kdWxlKQogOyAgImluaXRfcmFuZG9tIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIocmdiaW1nbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHJnYmltZ21vZHVsZSkKIDsgICJpbml0cmdiaW1nIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoc2hhbW9kdWxlKQorOyBGcm9tIHB5dGhvbjMzX3MubGliKHNoYW1vZHVsZSkKIDsgICJpbml0X3NoYSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHNoYTI1Nm1vZHVsZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihzaGEyNTZtb2R1bGUpCiA7ICAiaW5pdF9zaGEyNTYiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihzaGE1MTJtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc2hhNTEybW9kdWxlKQogOyAgImluaXRfc2hhNTEyIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoX3NyZSkKKzsgRnJvbSBweXRob24zM19zLmxpYihfc3JlKQogOyAgImluaXRfc3JlIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoc3Ryb3Btb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc3Ryb3Btb2R1bGUpCiA7ICAiaW5pdHN0cm9wIgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoX3N0cnVjdCkKKzsgRnJvbSBweXRob24zM19zLmxpYihfc3RydWN0KQogOyAgImluaXRfc3RydWN0IgogCi07IEZyb20gcHl0aG9uMjZfcy5saWIoc3ltdGFibGVtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoc3ltdGFibGVtb2R1bGUpCiA7ICAiaW5pdF9zeW10YWJsZSIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHRlcm1pb3MpCis7IEZyb20gcHl0aG9uMzNfcy5saWIodGVybWlvcykKIDsgICJpbml0dGVybWlvcyIKIAotOyBGcm9tIHB5dGhvbjI2X3MubGliKHRpbWVtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIodGltZW1vZHVsZSkKIDsgICJpbml0dGltZSIKICAgIl9QeVRpbWVfRG91YmxlVG9UaW1ldCIKIDsgICJpbml0dGltZXpvbmUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYih0aW1pbmdtb2R1bGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIodGltaW5nbW9kdWxlKQogOyAgImluaXR0aW1pbmciCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYihfd2Vha3JlZikKKzsgRnJvbSBweXRob24zM19zLmxpYihfd2Vha3JlZikKIDsgICJpbml0X3dlYWtyZWYiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYih4eHN1YnR5cGUpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoeHhzdWJ0eXBlKQogOyAgImluaXR4eHN1YnR5cGUiCiAKLTsgRnJvbSBweXRob24yNl9zLmxpYih6aXBpbXBvcnQpCis7IEZyb20gcHl0aG9uMzNfcy5saWIoemlwaW1wb3J0KQogOyAgImluaXR6aXBpbXBvcnQiCmRpZmYgLS1naXQgYS9QQy9weWNvbmZpZy5oIGIvUEMvcHljb25maWcuaAppbmRleCAxMzhkOGZhLi4zNDdmMWNjIDEwMDY0NAotLS0gYS9QQy9weWNvbmZpZy5oCisrKyBiL1BDL3B5Y29uZmlnLmgKQEAgLTMxOSwxMSArMzE5LDExIEBACiAJCQl0aGVpciBNYWtlZmlsZSAob3RoZXIgY29tcGlsZXJzIGFyZSBnZW5lcmFsbHkKIAkJCXRha2VuIGNhcmUgb2YgYnkgZGlzdHV0aWxzLikgKi8KICMJCQlpZiBkZWZpbmVkKF9ERUJVRykKLSMJCQkJcHJhZ21hIGNvbW1lbnQobGliLCJweXRob24zMl9kLmxpYiIpCisjCQkJCXByYWdtYSBjb21tZW50KGxpYiwicHl0aG9uMzNfZC5saWIiKQogIwkJCWVsaWYgZGVmaW5lZChQeV9MSU1JVEVEX0FQSSkKICMJCQkJcHJhZ21hIGNvbW1lbnQobGliLCJweXRob24zLmxpYiIpCiAjCQkJZWxzZQotIwkJCQlwcmFnbWEgY29tbWVudChsaWIsInB5dGhvbjMyLmxpYiIpCisjCQkJCXByYWdtYSBjb21tZW50KGxpYiwicHl0aG9uMzMubGliIikKICMJCQllbmRpZiAvKiBfREVCVUcgKi8KICMJCWVuZGlmIC8qIF9NU0NfVkVSICovCiAjCWVuZGlmIC8qIFB5X0JVSUxEX0NPUkUgKi8KQEAgLTU1MCwxMCArNTUwLDYgQEAKIC8qIERlZmluZSBpZiB5b3Ugd2FudCB0byB1c2UgdGhlIEdOVSByZWFkbGluZSBsaWJyYXJ5ICovCiAvKiAjZGVmaW5lIFdJVEhfUkVBRExJTkUgMSAqLwogCi0vKiBEZWZpbmUgYXMgdGhlIHNpemUgb2YgdGhlIHVuaWNvZGUgdHlwZS4gKi8KLS8qIFRoaXMgaXMgZW5vdWdoIGZvciB1bmljb2Rlb2JqZWN0LmggdG8gZG8gdGhlICJyaWdodCB0aGluZyIgb24gV2luZG93cy4gKi8KLSNkZWZpbmUgUHlfVU5JQ09ERV9TSVpFIDIKLQogLyogVXNlIFB5dGhvbidzIG93biBzbWFsbC1ibG9jayBtZW1vcnktYWxsb2NhdG9yLiAqLwogI2RlZmluZSBXSVRIX1BZTUFMTE9DIDEKIApAQCAtNzE0LDkgKzcxMCw2IEBACiAvKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlIDxzeXMvdXRzbmFtZS5oPiBoZWFkZXIgZmlsZS4gICovCiAvKiAjZGVmaW5lIEhBVkVfU1lTX1VUU05BTUVfSCAxICovCiAKLS8qIERlZmluZSBpZiB5b3UgaGF2ZSB0aGUgPHRocmVhZC5oPiBoZWFkZXIgZmlsZS4gICovCi0vKiAjdW5kZWYgSEFWRV9USFJFQURfSCAqLwotCiAvKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlIDx1bmlzdGQuaD4gaGVhZGVyIGZpbGUuICAqLwogLyogI2RlZmluZSBIQVZFX1VOSVNURF9IIDEgKi8KIApkaWZmIC0tZ2l0IGEvUEMvcHl0aG9uMy5kZWYgYi9QQy9weXRob24zLmRlZgppbmRleCBhODQ1MzM1Li41NGIyODhmIDEwMDY0NAotLS0gYS9QQy9weXRob24zLmRlZgorKysgYi9QQy9weXRob24zLmRlZgpAQCAtMSw2ODkgKzEsNjg5IEBACiBMSUJSQVJZCSJweXRob24zIgogRVhQT1JUUwotICBQeUFyZ19QYXJzZT1weXRob24zMi5QeUFyZ19QYXJzZQotICBQeUFyZ19QYXJzZVR1cGxlPXB5dGhvbjMyLlB5QXJnX1BhcnNlVHVwbGUKLSAgUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzPXB5dGhvbjMyLlB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcwotICBQeUFyZ19VbnBhY2tUdXBsZT1weXRob24zMi5QeUFyZ19VbnBhY2tUdXBsZQotICBQeUFyZ19WYVBhcnNlPXB5dGhvbjMyLlB5QXJnX1ZhUGFyc2UKLSAgUHlBcmdfVmFQYXJzZVR1cGxlQW5kS2V5d29yZHM9cHl0aG9uMzIuUHlBcmdfVmFQYXJzZVR1cGxlQW5kS2V5d29yZHMKLSAgUHlBcmdfVmFsaWRhdGVLZXl3b3JkQXJndW1lbnRzPXB5dGhvbjMyLlB5QXJnX1ZhbGlkYXRlS2V5d29yZEFyZ3VtZW50cwotICBQeUJhc2VPYmplY3RfVHlwZT1weXRob24zMi5QeUJhc2VPYmplY3RfVHlwZSBEQVRBCi0gIFB5Qm9vbF9Gcm9tTG9uZz1weXRob24zMi5QeUJvb2xfRnJvbUxvbmcKLSAgUHlCb29sX1R5cGU9cHl0aG9uMzIuUHlCb29sX1R5cGUgREFUQQotICBQeUJ5dGVBcnJheUl0ZXJfVHlwZT1weXRob24zMi5QeUJ5dGVBcnJheUl0ZXJfVHlwZSBEQVRBCi0gIFB5Qnl0ZUFycmF5X0FzU3RyaW5nPXB5dGhvbjMyLlB5Qnl0ZUFycmF5X0FzU3RyaW5nCi0gIFB5Qnl0ZUFycmF5X0NvbmNhdD1weXRob24zMi5QeUJ5dGVBcnJheV9Db25jYXQKLSAgUHlCeXRlQXJyYXlfRnJvbU9iamVjdD1weXRob24zMi5QeUJ5dGVBcnJheV9Gcm9tT2JqZWN0Ci0gIFB5Qnl0ZUFycmF5X0Zyb21TdHJpbmdBbmRTaXplPXB5dGhvbjMyLlB5Qnl0ZUFycmF5X0Zyb21TdHJpbmdBbmRTaXplCi0gIFB5Qnl0ZUFycmF5X1Jlc2l6ZT1weXRob24zMi5QeUJ5dGVBcnJheV9SZXNpemUKLSAgUHlCeXRlQXJyYXlfU2l6ZT1weXRob24zMi5QeUJ5dGVBcnJheV9TaXplCi0gIFB5Qnl0ZUFycmF5X1R5cGU9cHl0aG9uMzIuUHlCeXRlQXJyYXlfVHlwZSBEQVRBCi0gIFB5Qnl0ZXNJdGVyX1R5cGU9cHl0aG9uMzIuUHlCeXRlc0l0ZXJfVHlwZSBEQVRBCi0gIFB5Qnl0ZXNfQXNTdHJpbmc9cHl0aG9uMzIuUHlCeXRlc19Bc1N0cmluZwotICBQeUJ5dGVzX0FzU3RyaW5nQW5kU2l6ZT1weXRob24zMi5QeUJ5dGVzX0FzU3RyaW5nQW5kU2l6ZQotICBQeUJ5dGVzX0NvbmNhdD1weXRob24zMi5QeUJ5dGVzX0NvbmNhdAotICBQeUJ5dGVzX0NvbmNhdEFuZERlbD1weXRob24zMi5QeUJ5dGVzX0NvbmNhdEFuZERlbAotICBQeUJ5dGVzX0RlY29kZUVzY2FwZT1weXRob24zMi5QeUJ5dGVzX0RlY29kZUVzY2FwZQotICBQeUJ5dGVzX0Zyb21Gb3JtYXQ9cHl0aG9uMzIuUHlCeXRlc19Gcm9tRm9ybWF0Ci0gIFB5Qnl0ZXNfRnJvbUZvcm1hdFY9cHl0aG9uMzIuUHlCeXRlc19Gcm9tRm9ybWF0VgotICBQeUJ5dGVzX0Zyb21PYmplY3Q9cHl0aG9uMzIuUHlCeXRlc19Gcm9tT2JqZWN0Ci0gIFB5Qnl0ZXNfRnJvbVN0cmluZz1weXRob24zMi5QeUJ5dGVzX0Zyb21TdHJpbmcKLSAgUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZT1weXRob24zMi5QeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplCi0gIFB5Qnl0ZXNfUmVwcj1weXRob24zMi5QeUJ5dGVzX1JlcHIKLSAgUHlCeXRlc19TaXplPXB5dGhvbjMyLlB5Qnl0ZXNfU2l6ZQotICBQeUJ5dGVzX1R5cGU9cHl0aG9uMzIuUHlCeXRlc19UeXBlIERBVEEKLSAgUHlDRnVuY3Rpb25fQ2FsbD1weXRob24zMi5QeUNGdW5jdGlvbl9DYWxsCi0gIFB5Q0Z1bmN0aW9uX0NsZWFyRnJlZUxpc3Q9cHl0aG9uMzIuUHlDRnVuY3Rpb25fQ2xlYXJGcmVlTGlzdAotICBQeUNGdW5jdGlvbl9HZXRGbGFncz1weXRob24zMi5QeUNGdW5jdGlvbl9HZXRGbGFncwotICBQeUNGdW5jdGlvbl9HZXRGdW5jdGlvbj1weXRob24zMi5QeUNGdW5jdGlvbl9HZXRGdW5jdGlvbgotICBQeUNGdW5jdGlvbl9HZXRTZWxmPXB5dGhvbjMyLlB5Q0Z1bmN0aW9uX0dldFNlbGYKLSAgUHlDRnVuY3Rpb25fTmV3RXg9cHl0aG9uMzIuUHlDRnVuY3Rpb25fTmV3RXgKLSAgUHlDRnVuY3Rpb25fVHlwZT1weXRob24zMi5QeUNGdW5jdGlvbl9UeXBlIERBVEEKLSAgUHlDYWxsSXRlcl9OZXc9cHl0aG9uMzIuUHlDYWxsSXRlcl9OZXcKLSAgUHlDYWxsSXRlcl9UeXBlPXB5dGhvbjMyLlB5Q2FsbEl0ZXJfVHlwZSBEQVRBCi0gIFB5Q2FsbGFibGVfQ2hlY2s9cHl0aG9uMzIuUHlDYWxsYWJsZV9DaGVjawotICBQeUNhcHN1bGVfR2V0Q29udGV4dD1weXRob24zMi5QeUNhcHN1bGVfR2V0Q29udGV4dAotICBQeUNhcHN1bGVfR2V0RGVzdHJ1Y3Rvcj1weXRob24zMi5QeUNhcHN1bGVfR2V0RGVzdHJ1Y3RvcgotICBQeUNhcHN1bGVfR2V0TmFtZT1weXRob24zMi5QeUNhcHN1bGVfR2V0TmFtZQotICBQeUNhcHN1bGVfR2V0UG9pbnRlcj1weXRob24zMi5QeUNhcHN1bGVfR2V0UG9pbnRlcgotICBQeUNhcHN1bGVfSW1wb3J0PXB5dGhvbjMyLlB5Q2Fwc3VsZV9JbXBvcnQKLSAgUHlDYXBzdWxlX0lzVmFsaWQ9cHl0aG9uMzIuUHlDYXBzdWxlX0lzVmFsaWQKLSAgUHlDYXBzdWxlX05ldz1weXRob24zMi5QeUNhcHN1bGVfTmV3Ci0gIFB5Q2Fwc3VsZV9TZXRDb250ZXh0PXB5dGhvbjMyLlB5Q2Fwc3VsZV9TZXRDb250ZXh0Ci0gIFB5Q2Fwc3VsZV9TZXREZXN0cnVjdG9yPXB5dGhvbjMyLlB5Q2Fwc3VsZV9TZXREZXN0cnVjdG9yCi0gIFB5Q2Fwc3VsZV9TZXROYW1lPXB5dGhvbjMyLlB5Q2Fwc3VsZV9TZXROYW1lCi0gIFB5Q2Fwc3VsZV9TZXRQb2ludGVyPXB5dGhvbjMyLlB5Q2Fwc3VsZV9TZXRQb2ludGVyCi0gIFB5Q2Fwc3VsZV9UeXBlPXB5dGhvbjMyLlB5Q2Fwc3VsZV9UeXBlIERBVEEKLSAgUHlDbGFzc01ldGhvZERlc2NyX1R5cGU9cHl0aG9uMzIuUHlDbGFzc01ldGhvZERlc2NyX1R5cGUgREFUQQotICBQeUNvZGVjX0JhY2tzbGFzaFJlcGxhY2VFcnJvcnM9cHl0aG9uMzIuUHlDb2RlY19CYWNrc2xhc2hSZXBsYWNlRXJyb3JzCi0gIFB5Q29kZWNfRGVjb2RlPXB5dGhvbjMyLlB5Q29kZWNfRGVjb2RlCi0gIFB5Q29kZWNfRGVjb2Rlcj1weXRob24zMi5QeUNvZGVjX0RlY29kZXIKLSAgUHlDb2RlY19FbmNvZGU9cHl0aG9uMzIuUHlDb2RlY19FbmNvZGUKLSAgUHlDb2RlY19FbmNvZGVyPXB5dGhvbjMyLlB5Q29kZWNfRW5jb2RlcgotICBQeUNvZGVjX0lnbm9yZUVycm9ycz1weXRob24zMi5QeUNvZGVjX0lnbm9yZUVycm9ycwotICBQeUNvZGVjX0luY3JlbWVudGFsRGVjb2Rlcj1weXRob24zMi5QeUNvZGVjX0luY3JlbWVudGFsRGVjb2RlcgotICBQeUNvZGVjX0luY3JlbWVudGFsRW5jb2Rlcj1weXRob24zMi5QeUNvZGVjX0luY3JlbWVudGFsRW5jb2RlcgotICBQeUNvZGVjX0tub3duRW5jb2Rpbmc9cHl0aG9uMzIuUHlDb2RlY19Lbm93bkVuY29kaW5nCi0gIFB5Q29kZWNfTG9va3VwRXJyb3I9cHl0aG9uMzIuUHlDb2RlY19Mb29rdXBFcnJvcgotICBQeUNvZGVjX1JlZ2lzdGVyPXB5dGhvbjMyLlB5Q29kZWNfUmVnaXN0ZXIKLSAgUHlDb2RlY19SZWdpc3RlckVycm9yPXB5dGhvbjMyLlB5Q29kZWNfUmVnaXN0ZXJFcnJvcgotICBQeUNvZGVjX1JlcGxhY2VFcnJvcnM9cHl0aG9uMzIuUHlDb2RlY19SZXBsYWNlRXJyb3JzCi0gIFB5Q29kZWNfU3RyZWFtUmVhZGVyPXB5dGhvbjMyLlB5Q29kZWNfU3RyZWFtUmVhZGVyCi0gIFB5Q29kZWNfU3RyZWFtV3JpdGVyPXB5dGhvbjMyLlB5Q29kZWNfU3RyZWFtV3JpdGVyCi0gIFB5Q29kZWNfU3RyaWN0RXJyb3JzPXB5dGhvbjMyLlB5Q29kZWNfU3RyaWN0RXJyb3JzCi0gIFB5Q29kZWNfWE1MQ2hhclJlZlJlcGxhY2VFcnJvcnM9cHl0aG9uMzIuUHlDb2RlY19YTUxDaGFyUmVmUmVwbGFjZUVycm9ycwotICBQeUNvbXBsZXhfRnJvbURvdWJsZXM9cHl0aG9uMzIuUHlDb21wbGV4X0Zyb21Eb3VibGVzCi0gIFB5Q29tcGxleF9JbWFnQXNEb3VibGU9cHl0aG9uMzIuUHlDb21wbGV4X0ltYWdBc0RvdWJsZQotICBQeUNvbXBsZXhfUmVhbEFzRG91YmxlPXB5dGhvbjMyLlB5Q29tcGxleF9SZWFsQXNEb3VibGUKLSAgUHlDb21wbGV4X1R5cGU9cHl0aG9uMzIuUHlDb21wbGV4X1R5cGUgREFUQQotICBQeURlc2NyX05ld0NsYXNzTWV0aG9kPXB5dGhvbjMyLlB5RGVzY3JfTmV3Q2xhc3NNZXRob2QKLSAgUHlEZXNjcl9OZXdHZXRTZXQ9cHl0aG9uMzIuUHlEZXNjcl9OZXdHZXRTZXQKLSAgUHlEZXNjcl9OZXdNZW1iZXI9cHl0aG9uMzIuUHlEZXNjcl9OZXdNZW1iZXIKLSAgUHlEZXNjcl9OZXdNZXRob2Q9cHl0aG9uMzIuUHlEZXNjcl9OZXdNZXRob2QKLSAgUHlEaWN0SXRlbXNfVHlwZT1weXRob24zMi5QeURpY3RJdGVtc19UeXBlIERBVEEKLSAgUHlEaWN0SXRlckl0ZW1fVHlwZT1weXRob24zMi5QeURpY3RJdGVySXRlbV9UeXBlIERBVEEKLSAgUHlEaWN0SXRlcktleV9UeXBlPXB5dGhvbjMyLlB5RGljdEl0ZXJLZXlfVHlwZSBEQVRBCi0gIFB5RGljdEl0ZXJWYWx1ZV9UeXBlPXB5dGhvbjMyLlB5RGljdEl0ZXJWYWx1ZV9UeXBlIERBVEEKLSAgUHlEaWN0S2V5c19UeXBlPXB5dGhvbjMyLlB5RGljdEtleXNfVHlwZSBEQVRBCi0gIFB5RGljdFByb3h5X05ldz1weXRob24zMi5QeURpY3RQcm94eV9OZXcKLSAgUHlEaWN0UHJveHlfVHlwZT1weXRob24zMi5QeURpY3RQcm94eV9UeXBlIERBVEEKLSAgUHlEaWN0VmFsdWVzX1R5cGU9cHl0aG9uMzIuUHlEaWN0VmFsdWVzX1R5cGUgREFUQQotICBQeURpY3RfQ2xlYXI9cHl0aG9uMzIuUHlEaWN0X0NsZWFyCi0gIFB5RGljdF9Db250YWlucz1weXRob24zMi5QeURpY3RfQ29udGFpbnMKLSAgUHlEaWN0X0NvcHk9cHl0aG9uMzIuUHlEaWN0X0NvcHkKLSAgUHlEaWN0X0RlbEl0ZW09cHl0aG9uMzIuUHlEaWN0X0RlbEl0ZW0KLSAgUHlEaWN0X0RlbEl0ZW1TdHJpbmc9cHl0aG9uMzIuUHlEaWN0X0RlbEl0ZW1TdHJpbmcKLSAgUHlEaWN0X0dldEl0ZW09cHl0aG9uMzIuUHlEaWN0X0dldEl0ZW0KLSAgUHlEaWN0X0dldEl0ZW1TdHJpbmc9cHl0aG9uMzIuUHlEaWN0X0dldEl0ZW1TdHJpbmcKLSAgUHlEaWN0X0dldEl0ZW1XaXRoRXJyb3I9cHl0aG9uMzIuUHlEaWN0X0dldEl0ZW1XaXRoRXJyb3IKLSAgUHlEaWN0X0l0ZW1zPXB5dGhvbjMyLlB5RGljdF9JdGVtcwotICBQeURpY3RfS2V5cz1weXRob24zMi5QeURpY3RfS2V5cwotICBQeURpY3RfTWVyZ2U9cHl0aG9uMzIuUHlEaWN0X01lcmdlCi0gIFB5RGljdF9NZXJnZUZyb21TZXEyPXB5dGhvbjMyLlB5RGljdF9NZXJnZUZyb21TZXEyCi0gIFB5RGljdF9OZXc9cHl0aG9uMzIuUHlEaWN0X05ldwotICBQeURpY3RfTmV4dD1weXRob24zMi5QeURpY3RfTmV4dAotICBQeURpY3RfU2V0SXRlbT1weXRob24zMi5QeURpY3RfU2V0SXRlbQotICBQeURpY3RfU2V0SXRlbVN0cmluZz1weXRob24zMi5QeURpY3RfU2V0SXRlbVN0cmluZwotICBQeURpY3RfU2l6ZT1weXRob24zMi5QeURpY3RfU2l6ZQotICBQeURpY3RfVHlwZT1weXRob24zMi5QeURpY3RfVHlwZSBEQVRBCi0gIFB5RGljdF9VcGRhdGU9cHl0aG9uMzIuUHlEaWN0X1VwZGF0ZQotICBQeURpY3RfVmFsdWVzPXB5dGhvbjMyLlB5RGljdF9WYWx1ZXMKLSAgUHlFbGxpcHNpc19UeXBlPXB5dGhvbjMyLlB5RWxsaXBzaXNfVHlwZSBEQVRBCi0gIFB5RW51bV9UeXBlPXB5dGhvbjMyLlB5RW51bV9UeXBlIERBVEEKLSAgUHlFcnJfQmFkQXJndW1lbnQ9cHl0aG9uMzIuUHlFcnJfQmFkQXJndW1lbnQKLSAgUHlFcnJfQmFkSW50ZXJuYWxDYWxsPXB5dGhvbjMyLlB5RXJyX0JhZEludGVybmFsQ2FsbAotICBQeUVycl9DaGVja1NpZ25hbHM9cHl0aG9uMzIuUHlFcnJfQ2hlY2tTaWduYWxzCi0gIFB5RXJyX0NsZWFyPXB5dGhvbjMyLlB5RXJyX0NsZWFyCi0gIFB5RXJyX0Rpc3BsYXk9cHl0aG9uMzIuUHlFcnJfRGlzcGxheQotICBQeUVycl9FeGNlcHRpb25NYXRjaGVzPXB5dGhvbjMyLlB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMKLSAgUHlFcnJfRmV0Y2g9cHl0aG9uMzIuUHlFcnJfRmV0Y2gKLSAgUHlFcnJfRm9ybWF0PXB5dGhvbjMyLlB5RXJyX0Zvcm1hdAotICBQeUVycl9HaXZlbkV4Y2VwdGlvbk1hdGNoZXM9cHl0aG9uMzIuUHlFcnJfR2l2ZW5FeGNlcHRpb25NYXRjaGVzCi0gIFB5RXJyX05ld0V4Y2VwdGlvbj1weXRob24zMi5QeUVycl9OZXdFeGNlcHRpb24KLSAgUHlFcnJfTmV3RXhjZXB0aW9uV2l0aERvYz1weXRob24zMi5QeUVycl9OZXdFeGNlcHRpb25XaXRoRG9jCi0gIFB5RXJyX05vTWVtb3J5PXB5dGhvbjMyLlB5RXJyX05vTWVtb3J5Ci0gIFB5RXJyX05vcm1hbGl6ZUV4Y2VwdGlvbj1weXRob24zMi5QeUVycl9Ob3JtYWxpemVFeGNlcHRpb24KLSAgUHlFcnJfT2NjdXJyZWQ9cHl0aG9uMzIuUHlFcnJfT2NjdXJyZWQKLSAgUHlFcnJfUHJpbnQ9cHl0aG9uMzIuUHlFcnJfUHJpbnQKLSAgUHlFcnJfUHJpbnRFeD1weXRob24zMi5QeUVycl9QcmludEV4Ci0gIFB5RXJyX1Byb2dyYW1UZXh0PXB5dGhvbjMyLlB5RXJyX1Byb2dyYW1UZXh0Ci0gIFB5RXJyX1Jlc3RvcmU9cHl0aG9uMzIuUHlFcnJfUmVzdG9yZQotICBQeUVycl9TZXRGcm9tRXJybm89cHl0aG9uMzIuUHlFcnJfU2V0RnJvbUVycm5vCi0gIFB5RXJyX1NldEZyb21FcnJub1dpdGhGaWxlbmFtZT1weXRob24zMi5QeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWUKLSAgUHlFcnJfU2V0RnJvbUVycm5vV2l0aEZpbGVuYW1lT2JqZWN0PXB5dGhvbjMyLlB5RXJyX1NldEZyb21FcnJub1dpdGhGaWxlbmFtZU9iamVjdAotICBQeUVycl9TZXRJbnRlcnJ1cHQ9cHl0aG9uMzIuUHlFcnJfU2V0SW50ZXJydXB0Ci0gIFB5RXJyX1NldE5vbmU9cHl0aG9uMzIuUHlFcnJfU2V0Tm9uZQotICBQeUVycl9TZXRPYmplY3Q9cHl0aG9uMzIuUHlFcnJfU2V0T2JqZWN0Ci0gIFB5RXJyX1NldFN0cmluZz1weXRob24zMi5QeUVycl9TZXRTdHJpbmcKLSAgUHlFcnJfU3ludGF4TG9jYXRpb249cHl0aG9uMzIuUHlFcnJfU3ludGF4TG9jYXRpb24KLSAgUHlFcnJfV2FybkV4PXB5dGhvbjMyLlB5RXJyX1dhcm5FeAotICBQeUVycl9XYXJuRXhwbGljaXQ9cHl0aG9uMzIuUHlFcnJfV2FybkV4cGxpY2l0Ci0gIFB5RXJyX1dhcm5Gb3JtYXQ9cHl0aG9uMzIuUHlFcnJfV2FybkZvcm1hdAotICBQeUVycl9Xcml0ZVVucmFpc2FibGU9cHl0aG9uMzIuUHlFcnJfV3JpdGVVbnJhaXNhYmxlCi0gIFB5RXZhbF9BY3F1aXJlTG9jaz1weXRob24zMi5QeUV2YWxfQWNxdWlyZUxvY2sKLSAgUHlFdmFsX0FjcXVpcmVUaHJlYWQ9cHl0aG9uMzIuUHlFdmFsX0FjcXVpcmVUaHJlYWQKLSAgUHlFdmFsX0NhbGxGdW5jdGlvbj1weXRob24zMi5QeUV2YWxfQ2FsbEZ1bmN0aW9uCi0gIFB5RXZhbF9DYWxsTWV0aG9kPXB5dGhvbjMyLlB5RXZhbF9DYWxsTWV0aG9kCi0gIFB5RXZhbF9DYWxsT2JqZWN0V2l0aEtleXdvcmRzPXB5dGhvbjMyLlB5RXZhbF9DYWxsT2JqZWN0V2l0aEtleXdvcmRzCi0gIFB5RXZhbF9FdmFsQ29kZT1weXRob24zMi5QeUV2YWxfRXZhbENvZGUKLSAgUHlFdmFsX0V2YWxDb2RlRXg9cHl0aG9uMzIuUHlFdmFsX0V2YWxDb2RlRXgKLSAgUHlFdmFsX0V2YWxGcmFtZT1weXRob24zMi5QeUV2YWxfRXZhbEZyYW1lCi0gIFB5RXZhbF9FdmFsRnJhbWVFeD1weXRob24zMi5QeUV2YWxfRXZhbEZyYW1lRXgKLSAgUHlFdmFsX0dldEJ1aWx0aW5zPXB5dGhvbjMyLlB5RXZhbF9HZXRCdWlsdGlucwotICBQeUV2YWxfR2V0Q2FsbFN0YXRzPXB5dGhvbjMyLlB5RXZhbF9HZXRDYWxsU3RhdHMKLSAgUHlFdmFsX0dldEZyYW1lPXB5dGhvbjMyLlB5RXZhbF9HZXRGcmFtZQotICBQeUV2YWxfR2V0RnVuY0Rlc2M9cHl0aG9uMzIuUHlFdmFsX0dldEZ1bmNEZXNjCi0gIFB5RXZhbF9HZXRGdW5jTmFtZT1weXRob24zMi5QeUV2YWxfR2V0RnVuY05hbWUKLSAgUHlFdmFsX0dldEdsb2JhbHM9cHl0aG9uMzIuUHlFdmFsX0dldEdsb2JhbHMKLSAgUHlFdmFsX0dldExvY2Fscz1weXRob24zMi5QeUV2YWxfR2V0TG9jYWxzCi0gIFB5RXZhbF9Jbml0VGhyZWFkcz1weXRob24zMi5QeUV2YWxfSW5pdFRocmVhZHMKLSAgUHlFdmFsX1JlSW5pdFRocmVhZHM9cHl0aG9uMzIuUHlFdmFsX1JlSW5pdFRocmVhZHMKLSAgUHlFdmFsX1JlbGVhc2VMb2NrPXB5dGhvbjMyLlB5RXZhbF9SZWxlYXNlTG9jawotICBQeUV2YWxfUmVsZWFzZVRocmVhZD1weXRob24zMi5QeUV2YWxfUmVsZWFzZVRocmVhZAotICBQeUV2YWxfUmVzdG9yZVRocmVhZD1weXRob24zMi5QeUV2YWxfUmVzdG9yZVRocmVhZAotICBQeUV2YWxfU2F2ZVRocmVhZD1weXRob24zMi5QeUV2YWxfU2F2ZVRocmVhZAotICBQeUV2YWxfVGhyZWFkc0luaXRpYWxpemVkPXB5dGhvbjMyLlB5RXZhbF9UaHJlYWRzSW5pdGlhbGl6ZWQKLSAgUHlFeGNfQXJpdGhtZXRpY0Vycm9yPXB5dGhvbjMyLlB5RXhjX0FyaXRobWV0aWNFcnJvciBEQVRBCi0gIFB5RXhjX0Fzc2VydGlvbkVycm9yPXB5dGhvbjMyLlB5RXhjX0Fzc2VydGlvbkVycm9yIERBVEEKLSAgUHlFeGNfQXR0cmlidXRlRXJyb3I9cHl0aG9uMzIuUHlFeGNfQXR0cmlidXRlRXJyb3IgREFUQQotICBQeUV4Y19CYXNlRXhjZXB0aW9uPXB5dGhvbjMyLlB5RXhjX0Jhc2VFeGNlcHRpb24gREFUQQotICBQeUV4Y19CdWZmZXJFcnJvcj1weXRob24zMi5QeUV4Y19CdWZmZXJFcnJvciBEQVRBCi0gIFB5RXhjX0J5dGVzV2FybmluZz1weXRob24zMi5QeUV4Y19CeXRlc1dhcm5pbmcgREFUQQotICBQeUV4Y19EZXByZWNhdGlvbldhcm5pbmc9cHl0aG9uMzIuUHlFeGNfRGVwcmVjYXRpb25XYXJuaW5nIERBVEEKLSAgUHlFeGNfRU9GRXJyb3I9cHl0aG9uMzIuUHlFeGNfRU9GRXJyb3IgREFUQQotICBQeUV4Y19FbnZpcm9ubWVudEVycm9yPXB5dGhvbjMyLlB5RXhjX0Vudmlyb25tZW50RXJyb3IgREFUQQotICBQeUV4Y19FeGNlcHRpb249cHl0aG9uMzIuUHlFeGNfRXhjZXB0aW9uIERBVEEKLSAgUHlFeGNfRmxvYXRpbmdQb2ludEVycm9yPXB5dGhvbjMyLlB5RXhjX0Zsb2F0aW5nUG9pbnRFcnJvciBEQVRBCi0gIFB5RXhjX0Z1dHVyZVdhcm5pbmc9cHl0aG9uMzIuUHlFeGNfRnV0dXJlV2FybmluZyBEQVRBCi0gIFB5RXhjX0dlbmVyYXRvckV4aXQ9cHl0aG9uMzIuUHlFeGNfR2VuZXJhdG9yRXhpdCBEQVRBCi0gIFB5RXhjX0lPRXJyb3I9cHl0aG9uMzIuUHlFeGNfSU9FcnJvciBEQVRBCi0gIFB5RXhjX0ltcG9ydEVycm9yPXB5dGhvbjMyLlB5RXhjX0ltcG9ydEVycm9yIERBVEEKLSAgUHlFeGNfSW1wb3J0V2FybmluZz1weXRob24zMi5QeUV4Y19JbXBvcnRXYXJuaW5nIERBVEEKLSAgUHlFeGNfSW5kZW50YXRpb25FcnJvcj1weXRob24zMi5QeUV4Y19JbmRlbnRhdGlvbkVycm9yIERBVEEKLSAgUHlFeGNfSW5kZXhFcnJvcj1weXRob24zMi5QeUV4Y19JbmRleEVycm9yIERBVEEKLSAgUHlFeGNfS2V5RXJyb3I9cHl0aG9uMzIuUHlFeGNfS2V5RXJyb3IgREFUQQotICBQeUV4Y19LZXlib2FyZEludGVycnVwdD1weXRob24zMi5QeUV4Y19LZXlib2FyZEludGVycnVwdCBEQVRBCi0gIFB5RXhjX0xvb2t1cEVycm9yPXB5dGhvbjMyLlB5RXhjX0xvb2t1cEVycm9yIERBVEEKLSAgUHlFeGNfTWVtb3J5RXJyb3I9cHl0aG9uMzIuUHlFeGNfTWVtb3J5RXJyb3IgREFUQQotICBQeUV4Y19NZW1vcnlFcnJvckluc3Q9cHl0aG9uMzIuUHlFeGNfTWVtb3J5RXJyb3JJbnN0IERBVEEKLSAgUHlFeGNfTmFtZUVycm9yPXB5dGhvbjMyLlB5RXhjX05hbWVFcnJvciBEQVRBCi0gIFB5RXhjX05vdEltcGxlbWVudGVkRXJyb3I9cHl0aG9uMzIuUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvciBEQVRBCi0gIFB5RXhjX09TRXJyb3I9cHl0aG9uMzIuUHlFeGNfT1NFcnJvciBEQVRBCi0gIFB5RXhjX092ZXJmbG93RXJyb3I9cHl0aG9uMzIuUHlFeGNfT3ZlcmZsb3dFcnJvciBEQVRBCi0gIFB5RXhjX1BlbmRpbmdEZXByZWNhdGlvbldhcm5pbmc9cHl0aG9uMzIuUHlFeGNfUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZyBEQVRBCi0gIFB5RXhjX1JlY3Vyc2lvbkVycm9ySW5zdD1weXRob24zMi5QeUV4Y19SZWN1cnNpb25FcnJvckluc3QgREFUQQotICBQeUV4Y19SZWZlcmVuY2VFcnJvcj1weXRob24zMi5QeUV4Y19SZWZlcmVuY2VFcnJvciBEQVRBCi0gIFB5RXhjX1J1bnRpbWVFcnJvcj1weXRob24zMi5QeUV4Y19SdW50aW1lRXJyb3IgREFUQQotICBQeUV4Y19SdW50aW1lV2FybmluZz1weXRob24zMi5QeUV4Y19SdW50aW1lV2FybmluZyBEQVRBCi0gIFB5RXhjX1N0b3BJdGVyYXRpb249cHl0aG9uMzIuUHlFeGNfU3RvcEl0ZXJhdGlvbiBEQVRBCi0gIFB5RXhjX1N5bnRheEVycm9yPXB5dGhvbjMyLlB5RXhjX1N5bnRheEVycm9yIERBVEEKLSAgUHlFeGNfU3ludGF4V2FybmluZz1weXRob24zMi5QeUV4Y19TeW50YXhXYXJuaW5nIERBVEEKLSAgUHlFeGNfU3lzdGVtRXJyb3I9cHl0aG9uMzIuUHlFeGNfU3lzdGVtRXJyb3IgREFUQQotICBQeUV4Y19TeXN0ZW1FeGl0PXB5dGhvbjMyLlB5RXhjX1N5c3RlbUV4aXQgREFUQQotICBQeUV4Y19UYWJFcnJvcj1weXRob24zMi5QeUV4Y19UYWJFcnJvciBEQVRBCi0gIFB5RXhjX1R5cGVFcnJvcj1weXRob24zMi5QeUV4Y19UeXBlRXJyb3IgREFUQQotICBQeUV4Y19VbmJvdW5kTG9jYWxFcnJvcj1weXRob24zMi5QeUV4Y19VbmJvdW5kTG9jYWxFcnJvciBEQVRBCi0gIFB5RXhjX1VuaWNvZGVEZWNvZGVFcnJvcj1weXRob24zMi5QeUV4Y19Vbmljb2RlRGVjb2RlRXJyb3IgREFUQQotICBQeUV4Y19Vbmljb2RlRW5jb2RlRXJyb3I9cHl0aG9uMzIuUHlFeGNfVW5pY29kZUVuY29kZUVycm9yIERBVEEKLSAgUHlFeGNfVW5pY29kZUVycm9yPXB5dGhvbjMyLlB5RXhjX1VuaWNvZGVFcnJvciBEQVRBCi0gIFB5RXhjX1VuaWNvZGVUcmFuc2xhdGVFcnJvcj1weXRob24zMi5QeUV4Y19Vbmljb2RlVHJhbnNsYXRlRXJyb3IgREFUQQotICBQeUV4Y19Vbmljb2RlV2FybmluZz1weXRob24zMi5QeUV4Y19Vbmljb2RlV2FybmluZyBEQVRBCi0gIFB5RXhjX1VzZXJXYXJuaW5nPXB5dGhvbjMyLlB5RXhjX1VzZXJXYXJuaW5nIERBVEEKLSAgUHlFeGNfVmFsdWVFcnJvcj1weXRob24zMi5QeUV4Y19WYWx1ZUVycm9yIERBVEEKLSAgUHlFeGNfV2FybmluZz1weXRob24zMi5QeUV4Y19XYXJuaW5nIERBVEEKLSAgUHlFeGNfWmVyb0RpdmlzaW9uRXJyb3I9cHl0aG9uMzIuUHlFeGNfWmVyb0RpdmlzaW9uRXJyb3IgREFUQQotICBQeUV4Y2VwdGlvbl9HZXRDYXVzZT1weXRob24zMi5QeUV4Y2VwdGlvbl9HZXRDYXVzZQotICBQeUV4Y2VwdGlvbl9HZXRDb250ZXh0PXB5dGhvbjMyLlB5RXhjZXB0aW9uX0dldENvbnRleHQKLSAgUHlFeGNlcHRpb25fR2V0VHJhY2ViYWNrPXB5dGhvbjMyLlB5RXhjZXB0aW9uX0dldFRyYWNlYmFjawotICBQeUV4Y2VwdGlvbl9TZXRDYXVzZT1weXRob24zMi5QeUV4Y2VwdGlvbl9TZXRDYXVzZQotICBQeUV4Y2VwdGlvbl9TZXRDb250ZXh0PXB5dGhvbjMyLlB5RXhjZXB0aW9uX1NldENvbnRleHQKLSAgUHlFeGNlcHRpb25fU2V0VHJhY2ViYWNrPXB5dGhvbjMyLlB5RXhjZXB0aW9uX1NldFRyYWNlYmFjawotICBQeUZpbGVfRnJvbUZkPXB5dGhvbjMyLlB5RmlsZV9Gcm9tRmQKLSAgUHlGaWxlX0dldExpbmU9cHl0aG9uMzIuUHlGaWxlX0dldExpbmUKLSAgUHlGaWxlX1dyaXRlT2JqZWN0PXB5dGhvbjMyLlB5RmlsZV9Xcml0ZU9iamVjdAotICBQeUZpbGVfV3JpdGVTdHJpbmc9cHl0aG9uMzIuUHlGaWxlX1dyaXRlU3RyaW5nCi0gIFB5RmlsdGVyX1R5cGU9cHl0aG9uMzIuUHlGaWx0ZXJfVHlwZSBEQVRBCi0gIFB5RmxvYXRfQXNEb3VibGU9cHl0aG9uMzIuUHlGbG9hdF9Bc0RvdWJsZQotICBQeUZsb2F0X0Zyb21Eb3VibGU9cHl0aG9uMzIuUHlGbG9hdF9Gcm9tRG91YmxlCi0gIFB5RmxvYXRfRnJvbVN0cmluZz1weXRob24zMi5QeUZsb2F0X0Zyb21TdHJpbmcKLSAgUHlGbG9hdF9HZXRJbmZvPXB5dGhvbjMyLlB5RmxvYXRfR2V0SW5mbwotICBQeUZsb2F0X0dldE1heD1weXRob24zMi5QeUZsb2F0X0dldE1heAotICBQeUZsb2F0X0dldE1pbj1weXRob24zMi5QeUZsb2F0X0dldE1pbgotICBQeUZsb2F0X1R5cGU9cHl0aG9uMzIuUHlGbG9hdF9UeXBlIERBVEEKLSAgUHlGcm96ZW5TZXRfTmV3PXB5dGhvbjMyLlB5RnJvemVuU2V0X05ldwotICBQeUZyb3plblNldF9UeXBlPXB5dGhvbjMyLlB5RnJvemVuU2V0X1R5cGUgREFUQQotICBQeUdDX0NvbGxlY3Q9cHl0aG9uMzIuUHlHQ19Db2xsZWN0Ci0gIFB5R0lMU3RhdGVfRW5zdXJlPXB5dGhvbjMyLlB5R0lMU3RhdGVfRW5zdXJlCi0gIFB5R0lMU3RhdGVfR2V0VGhpc1RocmVhZFN0YXRlPXB5dGhvbjMyLlB5R0lMU3RhdGVfR2V0VGhpc1RocmVhZFN0YXRlCi0gIFB5R0lMU3RhdGVfUmVsZWFzZT1weXRob24zMi5QeUdJTFN0YXRlX1JlbGVhc2UKLSAgUHlHZXRTZXREZXNjcl9UeXBlPXB5dGhvbjMyLlB5R2V0U2V0RGVzY3JfVHlwZSBEQVRBCi0gIFB5SW1wb3J0X0FkZE1vZHVsZT1weXRob24zMi5QeUltcG9ydF9BZGRNb2R1bGUKLSAgUHlJbXBvcnRfQXBwZW5kSW5pdHRhYj1weXRob24zMi5QeUltcG9ydF9BcHBlbmRJbml0dGFiCi0gIFB5SW1wb3J0X0NsZWFudXA9cHl0aG9uMzIuUHlJbXBvcnRfQ2xlYW51cAotICBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZT1weXRob24zMi5QeUltcG9ydF9FeGVjQ29kZU1vZHVsZQotICBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZUV4PXB5dGhvbjMyLlB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlRXgKLSAgUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVXaXRoUGF0aG5hbWVzPXB5dGhvbjMyLlB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlV2l0aFBhdGhuYW1lcwotICBQeUltcG9ydF9HZXRJbXBvcnRlcj1weXRob24zMi5QeUltcG9ydF9HZXRJbXBvcnRlcgotICBQeUltcG9ydF9HZXRNYWdpY051bWJlcj1weXRob24zMi5QeUltcG9ydF9HZXRNYWdpY051bWJlcgotICBQeUltcG9ydF9HZXRNYWdpY1RhZz1weXRob24zMi5QeUltcG9ydF9HZXRNYWdpY1RhZwotICBQeUltcG9ydF9HZXRNb2R1bGVEaWN0PXB5dGhvbjMyLlB5SW1wb3J0X0dldE1vZHVsZURpY3QKLSAgUHlJbXBvcnRfSW1wb3J0PXB5dGhvbjMyLlB5SW1wb3J0X0ltcG9ydAotICBQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGU9cHl0aG9uMzIuUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlCi0gIFB5SW1wb3J0X0ltcG9ydE1vZHVsZT1weXRob24zMi5QeUltcG9ydF9JbXBvcnRNb2R1bGUKLSAgUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWw9cHl0aG9uMzIuUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWwKLSAgUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaz1weXRob24zMi5QeUltcG9ydF9JbXBvcnRNb2R1bGVOb0Jsb2NrCi0gIFB5SW1wb3J0X1JlbG9hZE1vZHVsZT1weXRob24zMi5QeUltcG9ydF9SZWxvYWRNb2R1bGUKLSAgUHlJbnRlcnByZXRlclN0YXRlX0NsZWFyPXB5dGhvbjMyLlB5SW50ZXJwcmV0ZXJTdGF0ZV9DbGVhcgotICBQeUludGVycHJldGVyU3RhdGVfRGVsZXRlPXB5dGhvbjMyLlB5SW50ZXJwcmV0ZXJTdGF0ZV9EZWxldGUKLSAgUHlJbnRlcnByZXRlclN0YXRlX05ldz1weXRob24zMi5QeUludGVycHJldGVyU3RhdGVfTmV3Ci0gIFB5SXRlcl9OZXh0PXB5dGhvbjMyLlB5SXRlcl9OZXh0Ci0gIFB5TGlzdEl0ZXJfVHlwZT1weXRob24zMi5QeUxpc3RJdGVyX1R5cGUgREFUQQotICBQeUxpc3RSZXZJdGVyX1R5cGU9cHl0aG9uMzIuUHlMaXN0UmV2SXRlcl9UeXBlIERBVEEKLSAgUHlMaXN0X0FwcGVuZD1weXRob24zMi5QeUxpc3RfQXBwZW5kCi0gIFB5TGlzdF9Bc1R1cGxlPXB5dGhvbjMyLlB5TGlzdF9Bc1R1cGxlCi0gIFB5TGlzdF9HZXRJdGVtPXB5dGhvbjMyLlB5TGlzdF9HZXRJdGVtCi0gIFB5TGlzdF9HZXRTbGljZT1weXRob24zMi5QeUxpc3RfR2V0U2xpY2UKLSAgUHlMaXN0X0luc2VydD1weXRob24zMi5QeUxpc3RfSW5zZXJ0Ci0gIFB5TGlzdF9OZXc9cHl0aG9uMzIuUHlMaXN0X05ldwotICBQeUxpc3RfUmV2ZXJzZT1weXRob24zMi5QeUxpc3RfUmV2ZXJzZQotICBQeUxpc3RfU2V0SXRlbT1weXRob24zMi5QeUxpc3RfU2V0SXRlbQotICBQeUxpc3RfU2V0U2xpY2U9cHl0aG9uMzIuUHlMaXN0X1NldFNsaWNlCi0gIFB5TGlzdF9TaXplPXB5dGhvbjMyLlB5TGlzdF9TaXplCi0gIFB5TGlzdF9Tb3J0PXB5dGhvbjMyLlB5TGlzdF9Tb3J0Ci0gIFB5TGlzdF9UeXBlPXB5dGhvbjMyLlB5TGlzdF9UeXBlIERBVEEKLSAgUHlMb25nUmFuZ2VJdGVyX1R5cGU9cHl0aG9uMzIuUHlMb25nUmFuZ2VJdGVyX1R5cGUgREFUQQotICBQeUxvbmdfQXNEb3VibGU9cHl0aG9uMzIuUHlMb25nX0FzRG91YmxlCi0gIFB5TG9uZ19Bc0xvbmc9cHl0aG9uMzIuUHlMb25nX0FzTG9uZwotICBQeUxvbmdfQXNMb25nQW5kT3ZlcmZsb3c9cHl0aG9uMzIuUHlMb25nX0FzTG9uZ0FuZE92ZXJmbG93Ci0gIFB5TG9uZ19Bc0xvbmdMb25nPXB5dGhvbjMyLlB5TG9uZ19Bc0xvbmdMb25nCi0gIFB5TG9uZ19Bc0xvbmdMb25nQW5kT3ZlcmZsb3c9cHl0aG9uMzIuUHlMb25nX0FzTG9uZ0xvbmdBbmRPdmVyZmxvdwotICBQeUxvbmdfQXNTaXplX3Q9cHl0aG9uMzIuUHlMb25nX0FzU2l6ZV90Ci0gIFB5TG9uZ19Bc1NzaXplX3Q9cHl0aG9uMzIuUHlMb25nX0FzU3NpemVfdAotICBQeUxvbmdfQXNVbnNpZ25lZExvbmc9cHl0aG9uMzIuUHlMb25nX0FzVW5zaWduZWRMb25nCi0gIFB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ0xvbmc9cHl0aG9uMzIuUHlMb25nX0FzVW5zaWduZWRMb25nTG9uZwotICBQeUxvbmdfQXNVbnNpZ25lZExvbmdMb25nTWFzaz1weXRob24zMi5QeUxvbmdfQXNVbnNpZ25lZExvbmdMb25nTWFzawotICBQeUxvbmdfQXNVbnNpZ25lZExvbmdNYXNrPXB5dGhvbjMyLlB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ01hc2sKLSAgUHlMb25nX0FzVm9pZFB0cj1weXRob24zMi5QeUxvbmdfQXNWb2lkUHRyCi0gIFB5TG9uZ19Gcm9tRG91YmxlPXB5dGhvbjMyLlB5TG9uZ19Gcm9tRG91YmxlCi0gIFB5TG9uZ19Gcm9tTG9uZz1weXRob24zMi5QeUxvbmdfRnJvbUxvbmcKLSAgUHlMb25nX0Zyb21Mb25nTG9uZz1weXRob24zMi5QeUxvbmdfRnJvbUxvbmdMb25nCi0gIFB5TG9uZ19Gcm9tU2l6ZV90PXB5dGhvbjMyLlB5TG9uZ19Gcm9tU2l6ZV90Ci0gIFB5TG9uZ19Gcm9tU3NpemVfdD1weXRob24zMi5QeUxvbmdfRnJvbVNzaXplX3QKLSAgUHlMb25nX0Zyb21TdHJpbmc9cHl0aG9uMzIuUHlMb25nX0Zyb21TdHJpbmcKLSAgUHlMb25nX0Zyb21VbnNpZ25lZExvbmc9cHl0aG9uMzIuUHlMb25nX0Zyb21VbnNpZ25lZExvbmcKLSAgUHlMb25nX0Zyb21VbnNpZ25lZExvbmdMb25nPXB5dGhvbjMyLlB5TG9uZ19Gcm9tVW5zaWduZWRMb25nTG9uZwotICBQeUxvbmdfRnJvbVZvaWRQdHI9cHl0aG9uMzIuUHlMb25nX0Zyb21Wb2lkUHRyCi0gIFB5TG9uZ19HZXRJbmZvPXB5dGhvbjMyLlB5TG9uZ19HZXRJbmZvCi0gIFB5TG9uZ19UeXBlPXB5dGhvbjMyLlB5TG9uZ19UeXBlIERBVEEKLSAgUHlNYXBfVHlwZT1weXRob24zMi5QeU1hcF9UeXBlIERBVEEKLSAgUHlNYXBwaW5nX0NoZWNrPXB5dGhvbjMyLlB5TWFwcGluZ19DaGVjawotICBQeU1hcHBpbmdfR2V0SXRlbVN0cmluZz1weXRob24zMi5QeU1hcHBpbmdfR2V0SXRlbVN0cmluZwotICBQeU1hcHBpbmdfSGFzS2V5PXB5dGhvbjMyLlB5TWFwcGluZ19IYXNLZXkKLSAgUHlNYXBwaW5nX0hhc0tleVN0cmluZz1weXRob24zMi5QeU1hcHBpbmdfSGFzS2V5U3RyaW5nCi0gIFB5TWFwcGluZ19JdGVtcz1weXRob24zMi5QeU1hcHBpbmdfSXRlbXMKLSAgUHlNYXBwaW5nX0tleXM9cHl0aG9uMzIuUHlNYXBwaW5nX0tleXMKLSAgUHlNYXBwaW5nX0xlbmd0aD1weXRob24zMi5QeU1hcHBpbmdfTGVuZ3RoCi0gIFB5TWFwcGluZ19TZXRJdGVtU3RyaW5nPXB5dGhvbjMyLlB5TWFwcGluZ19TZXRJdGVtU3RyaW5nCi0gIFB5TWFwcGluZ19TaXplPXB5dGhvbjMyLlB5TWFwcGluZ19TaXplCi0gIFB5TWFwcGluZ19WYWx1ZXM9cHl0aG9uMzIuUHlNYXBwaW5nX1ZhbHVlcwotICBQeU1lbV9GcmVlPXB5dGhvbjMyLlB5TWVtX0ZyZWUKLSAgUHlNZW1fTWFsbG9jPXB5dGhvbjMyLlB5TWVtX01hbGxvYwotICBQeU1lbV9SZWFsbG9jPXB5dGhvbjMyLlB5TWVtX1JlYWxsb2MKLSAgUHlNZW1iZXJEZXNjcl9UeXBlPXB5dGhvbjMyLlB5TWVtYmVyRGVzY3JfVHlwZSBEQVRBCi0gIFB5TWVtb3J5Vmlld19Gcm9tT2JqZWN0PXB5dGhvbjMyLlB5TWVtb3J5Vmlld19Gcm9tT2JqZWN0Ci0gIFB5TWVtb3J5Vmlld19HZXRDb250aWd1b3VzPXB5dGhvbjMyLlB5TWVtb3J5Vmlld19HZXRDb250aWd1b3VzCi0gIFB5TWVtb3J5Vmlld19UeXBlPXB5dGhvbjMyLlB5TWVtb3J5Vmlld19UeXBlIERBVEEKLSAgUHlNZXRob2REZXNjcl9UeXBlPXB5dGhvbjMyLlB5TWV0aG9kRGVzY3JfVHlwZSBEQVRBCi0gIFB5TW9kdWxlX0FkZEludENvbnN0YW50PXB5dGhvbjMyLlB5TW9kdWxlX0FkZEludENvbnN0YW50Ci0gIFB5TW9kdWxlX0FkZE9iamVjdD1weXRob24zMi5QeU1vZHVsZV9BZGRPYmplY3QKLSAgUHlNb2R1bGVfQWRkU3RyaW5nQ29uc3RhbnQ9cHl0aG9uMzIuUHlNb2R1bGVfQWRkU3RyaW5nQ29uc3RhbnQKLSAgUHlNb2R1bGVfQ3JlYXRlMj1weXRob24zMi5QeU1vZHVsZV9DcmVhdGUyCi0gIFB5TW9kdWxlX0dldERlZj1weXRob24zMi5QeU1vZHVsZV9HZXREZWYKLSAgUHlNb2R1bGVfR2V0RGljdD1weXRob24zMi5QeU1vZHVsZV9HZXREaWN0Ci0gIFB5TW9kdWxlX0dldEZpbGVuYW1lPXB5dGhvbjMyLlB5TW9kdWxlX0dldEZpbGVuYW1lCi0gIFB5TW9kdWxlX0dldEZpbGVuYW1lT2JqZWN0PXB5dGhvbjMyLlB5TW9kdWxlX0dldEZpbGVuYW1lT2JqZWN0Ci0gIFB5TW9kdWxlX0dldE5hbWU9cHl0aG9uMzIuUHlNb2R1bGVfR2V0TmFtZQotICBQeU1vZHVsZV9HZXRTdGF0ZT1weXRob24zMi5QeU1vZHVsZV9HZXRTdGF0ZQotICBQeU1vZHVsZV9OZXc9cHl0aG9uMzIuUHlNb2R1bGVfTmV3Ci0gIFB5TW9kdWxlX1R5cGU9cHl0aG9uMzIuUHlNb2R1bGVfVHlwZSBEQVRBCi0gIFB5TnVsbEltcG9ydGVyX1R5cGU9cHl0aG9uMzIuUHlOdWxsSW1wb3J0ZXJfVHlwZSBEQVRBCi0gIFB5TnVtYmVyX0Fic29sdXRlPXB5dGhvbjMyLlB5TnVtYmVyX0Fic29sdXRlCi0gIFB5TnVtYmVyX0FkZD1weXRob24zMi5QeU51bWJlcl9BZGQKLSAgUHlOdW1iZXJfQW5kPXB5dGhvbjMyLlB5TnVtYmVyX0FuZAotICBQeU51bWJlcl9Bc1NzaXplX3Q9cHl0aG9uMzIuUHlOdW1iZXJfQXNTc2l6ZV90Ci0gIFB5TnVtYmVyX0NoZWNrPXB5dGhvbjMyLlB5TnVtYmVyX0NoZWNrCi0gIFB5TnVtYmVyX0Rpdm1vZD1weXRob24zMi5QeU51bWJlcl9EaXZtb2QKLSAgUHlOdW1iZXJfRmxvYXQ9cHl0aG9uMzIuUHlOdW1iZXJfRmxvYXQKLSAgUHlOdW1iZXJfRmxvb3JEaXZpZGU9cHl0aG9uMzIuUHlOdW1iZXJfRmxvb3JEaXZpZGUKLSAgUHlOdW1iZXJfSW5QbGFjZUFkZD1weXRob24zMi5QeU51bWJlcl9JblBsYWNlQWRkCi0gIFB5TnVtYmVyX0luUGxhY2VBbmQ9cHl0aG9uMzIuUHlOdW1iZXJfSW5QbGFjZUFuZAotICBQeU51bWJlcl9JblBsYWNlRmxvb3JEaXZpZGU9cHl0aG9uMzIuUHlOdW1iZXJfSW5QbGFjZUZsb29yRGl2aWRlCi0gIFB5TnVtYmVyX0luUGxhY2VMc2hpZnQ9cHl0aG9uMzIuUHlOdW1iZXJfSW5QbGFjZUxzaGlmdAotICBQeU51bWJlcl9JblBsYWNlTXVsdGlwbHk9cHl0aG9uMzIuUHlOdW1iZXJfSW5QbGFjZU11bHRpcGx5Ci0gIFB5TnVtYmVyX0luUGxhY2VPcj1weXRob24zMi5QeU51bWJlcl9JblBsYWNlT3IKLSAgUHlOdW1iZXJfSW5QbGFjZVBvd2VyPXB5dGhvbjMyLlB5TnVtYmVyX0luUGxhY2VQb3dlcgotICBQeU51bWJlcl9JblBsYWNlUmVtYWluZGVyPXB5dGhvbjMyLlB5TnVtYmVyX0luUGxhY2VSZW1haW5kZXIKLSAgUHlOdW1iZXJfSW5QbGFjZVJzaGlmdD1weXRob24zMi5QeU51bWJlcl9JblBsYWNlUnNoaWZ0Ci0gIFB5TnVtYmVyX0luUGxhY2VTdWJ0cmFjdD1weXRob24zMi5QeU51bWJlcl9JblBsYWNlU3VidHJhY3QKLSAgUHlOdW1iZXJfSW5QbGFjZVRydWVEaXZpZGU9cHl0aG9uMzIuUHlOdW1iZXJfSW5QbGFjZVRydWVEaXZpZGUKLSAgUHlOdW1iZXJfSW5QbGFjZVhvcj1weXRob24zMi5QeU51bWJlcl9JblBsYWNlWG9yCi0gIFB5TnVtYmVyX0luZGV4PXB5dGhvbjMyLlB5TnVtYmVyX0luZGV4Ci0gIFB5TnVtYmVyX0ludmVydD1weXRob24zMi5QeU51bWJlcl9JbnZlcnQKLSAgUHlOdW1iZXJfTG9uZz1weXRob24zMi5QeU51bWJlcl9Mb25nCi0gIFB5TnVtYmVyX0xzaGlmdD1weXRob24zMi5QeU51bWJlcl9Mc2hpZnQKLSAgUHlOdW1iZXJfTXVsdGlwbHk9cHl0aG9uMzIuUHlOdW1iZXJfTXVsdGlwbHkKLSAgUHlOdW1iZXJfTmVnYXRpdmU9cHl0aG9uMzIuUHlOdW1iZXJfTmVnYXRpdmUKLSAgUHlOdW1iZXJfT3I9cHl0aG9uMzIuUHlOdW1iZXJfT3IKLSAgUHlOdW1iZXJfUG9zaXRpdmU9cHl0aG9uMzIuUHlOdW1iZXJfUG9zaXRpdmUKLSAgUHlOdW1iZXJfUG93ZXI9cHl0aG9uMzIuUHlOdW1iZXJfUG93ZXIKLSAgUHlOdW1iZXJfUmVtYWluZGVyPXB5dGhvbjMyLlB5TnVtYmVyX1JlbWFpbmRlcgotICBQeU51bWJlcl9Sc2hpZnQ9cHl0aG9uMzIuUHlOdW1iZXJfUnNoaWZ0Ci0gIFB5TnVtYmVyX1N1YnRyYWN0PXB5dGhvbjMyLlB5TnVtYmVyX1N1YnRyYWN0Ci0gIFB5TnVtYmVyX1RvQmFzZT1weXRob24zMi5QeU51bWJlcl9Ub0Jhc2UKLSAgUHlOdW1iZXJfVHJ1ZURpdmlkZT1weXRob24zMi5QeU51bWJlcl9UcnVlRGl2aWRlCi0gIFB5TnVtYmVyX1hvcj1weXRob24zMi5QeU51bWJlcl9Yb3IKLSAgUHlPU19BZnRlckZvcms9cHl0aG9uMzIuUHlPU19BZnRlckZvcmsKLSAgUHlPU19Jbml0SW50ZXJydXB0cz1weXRob24zMi5QeU9TX0luaXRJbnRlcnJ1cHRzCi0gIFB5T1NfSW5wdXRIb29rPXB5dGhvbjMyLlB5T1NfSW5wdXRIb29rIERBVEEKLSAgUHlPU19JbnRlcnJ1cHRPY2N1cnJlZD1weXRob24zMi5QeU9TX0ludGVycnVwdE9jY3VycmVkCi0gIFB5T1NfUmVhZGxpbmVGdW5jdGlvblBvaW50ZXI9cHl0aG9uMzIuUHlPU19SZWFkbGluZUZ1bmN0aW9uUG9pbnRlciBEQVRBCi0gIFB5T1NfZG91YmxlX3RvX3N0cmluZz1weXRob24zMi5QeU9TX2RvdWJsZV90b19zdHJpbmcKLSAgUHlPU19nZXRzaWc9cHl0aG9uMzIuUHlPU19nZXRzaWcKLSAgUHlPU19teXN0cmljbXA9cHl0aG9uMzIuUHlPU19teXN0cmljbXAKLSAgUHlPU19teXN0cm5pY21wPXB5dGhvbjMyLlB5T1NfbXlzdHJuaWNtcAotICBQeU9TX3NldHNpZz1weXRob24zMi5QeU9TX3NldHNpZwotICBQeU9TX3NucHJpbnRmPXB5dGhvbjMyLlB5T1Nfc25wcmludGYKLSAgUHlPU19zdHJpbmdfdG9fZG91YmxlPXB5dGhvbjMyLlB5T1Nfc3RyaW5nX3RvX2RvdWJsZQotICBQeU9TX3N0cnRvbD1weXRob24zMi5QeU9TX3N0cnRvbAotICBQeU9TX3N0cnRvdWw9cHl0aG9uMzIuUHlPU19zdHJ0b3VsCi0gIFB5T1NfdnNucHJpbnRmPXB5dGhvbjMyLlB5T1NfdnNucHJpbnRmCi0gIFB5T2JqZWN0X0FTQ0lJPXB5dGhvbjMyLlB5T2JqZWN0X0FTQ0lJCi0gIFB5T2JqZWN0X0FzQ2hhckJ1ZmZlcj1weXRob24zMi5QeU9iamVjdF9Bc0NoYXJCdWZmZXIKLSAgUHlPYmplY3RfQXNGaWxlRGVzY3JpcHRvcj1weXRob24zMi5QeU9iamVjdF9Bc0ZpbGVEZXNjcmlwdG9yCi0gIFB5T2JqZWN0X0FzUmVhZEJ1ZmZlcj1weXRob24zMi5QeU9iamVjdF9Bc1JlYWRCdWZmZXIKLSAgUHlPYmplY3RfQXNXcml0ZUJ1ZmZlcj1weXRob24zMi5QeU9iamVjdF9Bc1dyaXRlQnVmZmVyCi0gIFB5T2JqZWN0X0J5dGVzPXB5dGhvbjMyLlB5T2JqZWN0X0J5dGVzCi0gIFB5T2JqZWN0X0NhbGw9cHl0aG9uMzIuUHlPYmplY3RfQ2FsbAotICBQeU9iamVjdF9DYWxsRnVuY3Rpb249cHl0aG9uMzIuUHlPYmplY3RfQ2FsbEZ1bmN0aW9uCi0gIFB5T2JqZWN0X0NhbGxGdW5jdGlvbk9iakFyZ3M9cHl0aG9uMzIuUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncwotICBQeU9iamVjdF9DYWxsTWV0aG9kPXB5dGhvbjMyLlB5T2JqZWN0X0NhbGxNZXRob2QKLSAgUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3M9cHl0aG9uMzIuUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3MKLSAgUHlPYmplY3RfQ2FsbE9iamVjdD1weXRob24zMi5QeU9iamVjdF9DYWxsT2JqZWN0Ci0gIFB5T2JqZWN0X0NoZWNrUmVhZEJ1ZmZlcj1weXRob24zMi5QeU9iamVjdF9DaGVja1JlYWRCdWZmZXIKLSAgUHlPYmplY3RfQ2xlYXJXZWFrUmVmcz1weXRob24zMi5QeU9iamVjdF9DbGVhcldlYWtSZWZzCi0gIFB5T2JqZWN0X0RlbEl0ZW09cHl0aG9uMzIuUHlPYmplY3RfRGVsSXRlbQotICBQeU9iamVjdF9EZWxJdGVtU3RyaW5nPXB5dGhvbjMyLlB5T2JqZWN0X0RlbEl0ZW1TdHJpbmcKLSAgUHlPYmplY3RfRGlyPXB5dGhvbjMyLlB5T2JqZWN0X0RpcgotICBQeU9iamVjdF9Gb3JtYXQ9cHl0aG9uMzIuUHlPYmplY3RfRm9ybWF0Ci0gIFB5T2JqZWN0X0ZyZWU9cHl0aG9uMzIuUHlPYmplY3RfRnJlZQotICBQeU9iamVjdF9HQ19EZWw9cHl0aG9uMzIuUHlPYmplY3RfR0NfRGVsCi0gIFB5T2JqZWN0X0dDX1RyYWNrPXB5dGhvbjMyLlB5T2JqZWN0X0dDX1RyYWNrCi0gIFB5T2JqZWN0X0dDX1VuVHJhY2s9cHl0aG9uMzIuUHlPYmplY3RfR0NfVW5UcmFjawotICBQeU9iamVjdF9HZW5lcmljR2V0QXR0cj1weXRob24zMi5QeU9iamVjdF9HZW5lcmljR2V0QXR0cgotICBQeU9iamVjdF9HZW5lcmljU2V0QXR0cj1weXRob24zMi5QeU9iamVjdF9HZW5lcmljU2V0QXR0cgotICBQeU9iamVjdF9HZXRBdHRyPXB5dGhvbjMyLlB5T2JqZWN0X0dldEF0dHIKLSAgUHlPYmplY3RfR2V0QXR0clN0cmluZz1weXRob24zMi5QeU9iamVjdF9HZXRBdHRyU3RyaW5nCi0gIFB5T2JqZWN0X0dldEl0ZW09cHl0aG9uMzIuUHlPYmplY3RfR2V0SXRlbQotICBQeU9iamVjdF9HZXRJdGVyPXB5dGhvbjMyLlB5T2JqZWN0X0dldEl0ZXIKLSAgUHlPYmplY3RfSGFzQXR0cj1weXRob24zMi5QeU9iamVjdF9IYXNBdHRyCi0gIFB5T2JqZWN0X0hhc0F0dHJTdHJpbmc9cHl0aG9uMzIuUHlPYmplY3RfSGFzQXR0clN0cmluZwotICBQeU9iamVjdF9IYXNoPXB5dGhvbjMyLlB5T2JqZWN0X0hhc2gKLSAgUHlPYmplY3RfSGFzaE5vdEltcGxlbWVudGVkPXB5dGhvbjMyLlB5T2JqZWN0X0hhc2hOb3RJbXBsZW1lbnRlZAotICBQeU9iamVjdF9Jbml0PXB5dGhvbjMyLlB5T2JqZWN0X0luaXQKLSAgUHlPYmplY3RfSW5pdFZhcj1weXRob24zMi5QeU9iamVjdF9Jbml0VmFyCi0gIFB5T2JqZWN0X0lzSW5zdGFuY2U9cHl0aG9uMzIuUHlPYmplY3RfSXNJbnN0YW5jZQotICBQeU9iamVjdF9Jc1N1YmNsYXNzPXB5dGhvbjMyLlB5T2JqZWN0X0lzU3ViY2xhc3MKLSAgUHlPYmplY3RfSXNUcnVlPXB5dGhvbjMyLlB5T2JqZWN0X0lzVHJ1ZQotICBQeU9iamVjdF9MZW5ndGg9cHl0aG9uMzIuUHlPYmplY3RfTGVuZ3RoCi0gIFB5T2JqZWN0X01hbGxvYz1weXRob24zMi5QeU9iamVjdF9NYWxsb2MKLSAgUHlPYmplY3RfTm90PXB5dGhvbjMyLlB5T2JqZWN0X05vdAotICBQeU9iamVjdF9SZWFsbG9jPXB5dGhvbjMyLlB5T2JqZWN0X1JlYWxsb2MKLSAgUHlPYmplY3RfUmVwcj1weXRob24zMi5QeU9iamVjdF9SZXByCi0gIFB5T2JqZWN0X1JpY2hDb21wYXJlPXB5dGhvbjMyLlB5T2JqZWN0X1JpY2hDb21wYXJlCi0gIFB5T2JqZWN0X1JpY2hDb21wYXJlQm9vbD1weXRob24zMi5QeU9iamVjdF9SaWNoQ29tcGFyZUJvb2wKLSAgUHlPYmplY3RfU2VsZkl0ZXI9cHl0aG9uMzIuUHlPYmplY3RfU2VsZkl0ZXIKLSAgUHlPYmplY3RfU2V0QXR0cj1weXRob24zMi5QeU9iamVjdF9TZXRBdHRyCi0gIFB5T2JqZWN0X1NldEF0dHJTdHJpbmc9cHl0aG9uMzIuUHlPYmplY3RfU2V0QXR0clN0cmluZwotICBQeU9iamVjdF9TZXRJdGVtPXB5dGhvbjMyLlB5T2JqZWN0X1NldEl0ZW0KLSAgUHlPYmplY3RfU2l6ZT1weXRob24zMi5QeU9iamVjdF9TaXplCi0gIFB5T2JqZWN0X1N0cj1weXRob24zMi5QeU9iamVjdF9TdHIKLSAgUHlPYmplY3RfVHlwZT1weXRob24zMi5QeU9iamVjdF9UeXBlIERBVEEKLSAgUHlQYXJzZXJfU2ltcGxlUGFyc2VGaWxlRmxhZ3M9cHl0aG9uMzIuUHlQYXJzZXJfU2ltcGxlUGFyc2VGaWxlRmxhZ3MKLSAgUHlQYXJzZXJfU2ltcGxlUGFyc2VTdHJpbmdGbGFncz1weXRob24zMi5QeVBhcnNlcl9TaW1wbGVQYXJzZVN0cmluZ0ZsYWdzCi0gIFB5UHJvcGVydHlfVHlwZT1weXRob24zMi5QeVByb3BlcnR5X1R5cGUgREFUQQotICBQeVJhbmdlSXRlcl9UeXBlPXB5dGhvbjMyLlB5UmFuZ2VJdGVyX1R5cGUgREFUQQotICBQeVJhbmdlX1R5cGU9cHl0aG9uMzIuUHlSYW5nZV9UeXBlIERBVEEKLSAgUHlSZXZlcnNlZF9UeXBlPXB5dGhvbjMyLlB5UmV2ZXJzZWRfVHlwZSBEQVRBCi0gIFB5U2VxSXRlcl9OZXc9cHl0aG9uMzIuUHlTZXFJdGVyX05ldwotICBQeVNlcUl0ZXJfVHlwZT1weXRob24zMi5QeVNlcUl0ZXJfVHlwZSBEQVRBCi0gIFB5U2VxdWVuY2VfQ2hlY2s9cHl0aG9uMzIuUHlTZXF1ZW5jZV9DaGVjawotICBQeVNlcXVlbmNlX0NvbmNhdD1weXRob24zMi5QeVNlcXVlbmNlX0NvbmNhdAotICBQeVNlcXVlbmNlX0NvbnRhaW5zPXB5dGhvbjMyLlB5U2VxdWVuY2VfQ29udGFpbnMKLSAgUHlTZXF1ZW5jZV9Db3VudD1weXRob24zMi5QeVNlcXVlbmNlX0NvdW50Ci0gIFB5U2VxdWVuY2VfRGVsSXRlbT1weXRob24zMi5QeVNlcXVlbmNlX0RlbEl0ZW0KLSAgUHlTZXF1ZW5jZV9EZWxTbGljZT1weXRob24zMi5QeVNlcXVlbmNlX0RlbFNsaWNlCi0gIFB5U2VxdWVuY2VfRmFzdD1weXRob24zMi5QeVNlcXVlbmNlX0Zhc3QKLSAgUHlTZXF1ZW5jZV9HZXRJdGVtPXB5dGhvbjMyLlB5U2VxdWVuY2VfR2V0SXRlbQotICBQeVNlcXVlbmNlX0dldFNsaWNlPXB5dGhvbjMyLlB5U2VxdWVuY2VfR2V0U2xpY2UKLSAgUHlTZXF1ZW5jZV9Jbj1weXRob24zMi5QeVNlcXVlbmNlX0luCi0gIFB5U2VxdWVuY2VfSW5QbGFjZUNvbmNhdD1weXRob24zMi5QeVNlcXVlbmNlX0luUGxhY2VDb25jYXQKLSAgUHlTZXF1ZW5jZV9JblBsYWNlUmVwZWF0PXB5dGhvbjMyLlB5U2VxdWVuY2VfSW5QbGFjZVJlcGVhdAotICBQeVNlcXVlbmNlX0luZGV4PXB5dGhvbjMyLlB5U2VxdWVuY2VfSW5kZXgKLSAgUHlTZXF1ZW5jZV9MZW5ndGg9cHl0aG9uMzIuUHlTZXF1ZW5jZV9MZW5ndGgKLSAgUHlTZXF1ZW5jZV9MaXN0PXB5dGhvbjMyLlB5U2VxdWVuY2VfTGlzdAotICBQeVNlcXVlbmNlX1JlcGVhdD1weXRob24zMi5QeVNlcXVlbmNlX1JlcGVhdAotICBQeVNlcXVlbmNlX1NldEl0ZW09cHl0aG9uMzIuUHlTZXF1ZW5jZV9TZXRJdGVtCi0gIFB5U2VxdWVuY2VfU2V0U2xpY2U9cHl0aG9uMzIuUHlTZXF1ZW5jZV9TZXRTbGljZQotICBQeVNlcXVlbmNlX1NpemU9cHl0aG9uMzIuUHlTZXF1ZW5jZV9TaXplCi0gIFB5U2VxdWVuY2VfVHVwbGU9cHl0aG9uMzIuUHlTZXF1ZW5jZV9UdXBsZQotICBQeVNldEl0ZXJfVHlwZT1weXRob24zMi5QeVNldEl0ZXJfVHlwZSBEQVRBCi0gIFB5U2V0X0FkZD1weXRob24zMi5QeVNldF9BZGQKLSAgUHlTZXRfQ2xlYXI9cHl0aG9uMzIuUHlTZXRfQ2xlYXIKLSAgUHlTZXRfQ29udGFpbnM9cHl0aG9uMzIuUHlTZXRfQ29udGFpbnMKLSAgUHlTZXRfRGlzY2FyZD1weXRob24zMi5QeVNldF9EaXNjYXJkCi0gIFB5U2V0X05ldz1weXRob24zMi5QeVNldF9OZXcKLSAgUHlTZXRfUG9wPXB5dGhvbjMyLlB5U2V0X1BvcAotICBQeVNldF9TaXplPXB5dGhvbjMyLlB5U2V0X1NpemUKLSAgUHlTZXRfVHlwZT1weXRob24zMi5QeVNldF9UeXBlIERBVEEKLSAgUHlTbGljZV9HZXRJbmRpY2VzPXB5dGhvbjMyLlB5U2xpY2VfR2V0SW5kaWNlcwotICBQeVNsaWNlX0dldEluZGljZXNFeD1weXRob24zMi5QeVNsaWNlX0dldEluZGljZXNFeAotICBQeVNsaWNlX05ldz1weXRob24zMi5QeVNsaWNlX05ldwotICBQeVNsaWNlX1R5cGU9cHl0aG9uMzIuUHlTbGljZV9UeXBlIERBVEEKLSAgUHlTb3J0V3JhcHBlcl9UeXBlPXB5dGhvbjMyLlB5U29ydFdyYXBwZXJfVHlwZSBEQVRBCi0gIFB5U3RhdGVfRmluZE1vZHVsZT1weXRob24zMi5QeVN0YXRlX0ZpbmRNb2R1bGUKLSAgUHlTdHJ1Y3RTZXF1ZW5jZV9HZXRJdGVtPXB5dGhvbjMyLlB5U3RydWN0U2VxdWVuY2VfR2V0SXRlbQotICBQeVN0cnVjdFNlcXVlbmNlX05ldz1weXRob24zMi5QeVN0cnVjdFNlcXVlbmNlX05ldwotICBQeVN0cnVjdFNlcXVlbmNlX05ld1R5cGU9cHl0aG9uMzIuUHlTdHJ1Y3RTZXF1ZW5jZV9OZXdUeXBlCi0gIFB5U3RydWN0U2VxdWVuY2VfU2V0SXRlbT1weXRob24zMi5QeVN0cnVjdFNlcXVlbmNlX1NldEl0ZW0KLSAgUHlTdXBlcl9UeXBlPXB5dGhvbjMyLlB5U3VwZXJfVHlwZSBEQVRBCi0gIFB5U3lzX0FkZFdhcm5PcHRpb249cHl0aG9uMzIuUHlTeXNfQWRkV2Fybk9wdGlvbgotICBQeVN5c19BZGRXYXJuT3B0aW9uVW5pY29kZT1weXRob24zMi5QeVN5c19BZGRXYXJuT3B0aW9uVW5pY29kZQotICBQeVN5c19Gb3JtYXRTdGRlcnI9cHl0aG9uMzIuUHlTeXNfRm9ybWF0U3RkZXJyCi0gIFB5U3lzX0Zvcm1hdFN0ZG91dD1weXRob24zMi5QeVN5c19Gb3JtYXRTdGRvdXQKLSAgUHlTeXNfR2V0T2JqZWN0PXB5dGhvbjMyLlB5U3lzX0dldE9iamVjdAotICBQeVN5c19IYXNXYXJuT3B0aW9ucz1weXRob24zMi5QeVN5c19IYXNXYXJuT3B0aW9ucwotICBQeVN5c19SZXNldFdhcm5PcHRpb25zPXB5dGhvbjMyLlB5U3lzX1Jlc2V0V2Fybk9wdGlvbnMKLSAgUHlTeXNfU2V0QXJndj1weXRob24zMi5QeVN5c19TZXRBcmd2Ci0gIFB5U3lzX1NldEFyZ3ZFeD1weXRob24zMi5QeVN5c19TZXRBcmd2RXgKLSAgUHlTeXNfU2V0T2JqZWN0PXB5dGhvbjMyLlB5U3lzX1NldE9iamVjdAotICBQeVN5c19TZXRQYXRoPXB5dGhvbjMyLlB5U3lzX1NldFBhdGgKLSAgUHlTeXNfV3JpdGVTdGRlcnI9cHl0aG9uMzIuUHlTeXNfV3JpdGVTdGRlcnIKLSAgUHlTeXNfV3JpdGVTdGRvdXQ9cHl0aG9uMzIuUHlTeXNfV3JpdGVTdGRvdXQKLSAgUHlUaHJlYWRTdGF0ZV9DbGVhcj1weXRob24zMi5QeVRocmVhZFN0YXRlX0NsZWFyCi0gIFB5VGhyZWFkU3RhdGVfRGVsZXRlPXB5dGhvbjMyLlB5VGhyZWFkU3RhdGVfRGVsZXRlCi0gIFB5VGhyZWFkU3RhdGVfRGVsZXRlQ3VycmVudD1weXRob24zMi5QeVRocmVhZFN0YXRlX0RlbGV0ZUN1cnJlbnQKLSAgUHlUaHJlYWRTdGF0ZV9HZXQ9cHl0aG9uMzIuUHlUaHJlYWRTdGF0ZV9HZXQKLSAgUHlUaHJlYWRTdGF0ZV9HZXREaWN0PXB5dGhvbjMyLlB5VGhyZWFkU3RhdGVfR2V0RGljdAotICBQeVRocmVhZFN0YXRlX05ldz1weXRob24zMi5QeVRocmVhZFN0YXRlX05ldwotICBQeVRocmVhZFN0YXRlX1NldEFzeW5jRXhjPXB5dGhvbjMyLlB5VGhyZWFkU3RhdGVfU2V0QXN5bmNFeGMKLSAgUHlUaHJlYWRTdGF0ZV9Td2FwPXB5dGhvbjMyLlB5VGhyZWFkU3RhdGVfU3dhcAotICBQeVRyYWNlQmFja19IZXJlPXB5dGhvbjMyLlB5VHJhY2VCYWNrX0hlcmUKLSAgUHlUcmFjZUJhY2tfUHJpbnQ9cHl0aG9uMzIuUHlUcmFjZUJhY2tfUHJpbnQKLSAgUHlUcmFjZUJhY2tfVHlwZT1weXRob24zMi5QeVRyYWNlQmFja19UeXBlIERBVEEKLSAgUHlUdXBsZUl0ZXJfVHlwZT1weXRob24zMi5QeVR1cGxlSXRlcl9UeXBlIERBVEEKLSAgUHlUdXBsZV9DbGVhckZyZWVMaXN0PXB5dGhvbjMyLlB5VHVwbGVfQ2xlYXJGcmVlTGlzdAotICBQeVR1cGxlX0dldEl0ZW09cHl0aG9uMzIuUHlUdXBsZV9HZXRJdGVtCi0gIFB5VHVwbGVfR2V0U2xpY2U9cHl0aG9uMzIuUHlUdXBsZV9HZXRTbGljZQotICBQeVR1cGxlX05ldz1weXRob24zMi5QeVR1cGxlX05ldwotICBQeVR1cGxlX1BhY2s9cHl0aG9uMzIuUHlUdXBsZV9QYWNrCi0gIFB5VHVwbGVfU2V0SXRlbT1weXRob24zMi5QeVR1cGxlX1NldEl0ZW0KLSAgUHlUdXBsZV9TaXplPXB5dGhvbjMyLlB5VHVwbGVfU2l6ZQotICBQeVR1cGxlX1R5cGU9cHl0aG9uMzIuUHlUdXBsZV9UeXBlIERBVEEKLSAgUHlUeXBlX0NsZWFyQ2FjaGU9cHl0aG9uMzIuUHlUeXBlX0NsZWFyQ2FjaGUKLSAgUHlUeXBlX0Zyb21TcGVjPXB5dGhvbjMyLlB5VHlwZV9Gcm9tU3BlYwotICBQeVR5cGVfR2VuZXJpY0FsbG9jPXB5dGhvbjMyLlB5VHlwZV9HZW5lcmljQWxsb2MKLSAgUHlUeXBlX0dlbmVyaWNOZXc9cHl0aG9uMzIuUHlUeXBlX0dlbmVyaWNOZXcKLSAgUHlUeXBlX0dldEZsYWdzPXB5dGhvbjMyLlB5VHlwZV9HZXRGbGFncwotICBQeVR5cGVfSXNTdWJ0eXBlPXB5dGhvbjMyLlB5VHlwZV9Jc1N1YnR5cGUKLSAgUHlUeXBlX01vZGlmaWVkPXB5dGhvbjMyLlB5VHlwZV9Nb2RpZmllZAotICBQeVR5cGVfUmVhZHk9cHl0aG9uMzIuUHlUeXBlX1JlYWR5Ci0gIFB5VHlwZV9UeXBlPXB5dGhvbjMyLlB5VHlwZV9UeXBlIERBVEEKLSAgUHlVbmljb2RlRGVjb2RlRXJyb3JfQ3JlYXRlPXB5dGhvbjMyLlB5VW5pY29kZURlY29kZUVycm9yX0NyZWF0ZQotICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRFbmNvZGluZz1weXRob24zMi5QeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRFbmNvZGluZwotICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRFbmQ9cHl0aG9uMzIuUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0RW5kCi0gIFB5VW5pY29kZURlY29kZUVycm9yX0dldE9iamVjdD1weXRob24zMi5QeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRPYmplY3QKLSAgUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0UmVhc29uPXB5dGhvbjMyLlB5VW5pY29kZURlY29kZUVycm9yX0dldFJlYXNvbgotICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRTdGFydD1weXRob24zMi5QeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRTdGFydAotICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9TZXRFbmQ9cHl0aG9uMzIuUHlVbmljb2RlRGVjb2RlRXJyb3JfU2V0RW5kCi0gIFB5VW5pY29kZURlY29kZUVycm9yX1NldFJlYXNvbj1weXRob24zMi5QeVVuaWNvZGVEZWNvZGVFcnJvcl9TZXRSZWFzb24KLSAgUHlVbmljb2RlRGVjb2RlRXJyb3JfU2V0U3RhcnQ9cHl0aG9uMzIuUHlVbmljb2RlRGVjb2RlRXJyb3JfU2V0U3RhcnQKLSAgUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5jb2Rpbmc9cHl0aG9uMzIuUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5jb2RpbmcKLSAgUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5kPXB5dGhvbjMyLlB5VW5pY29kZUVuY29kZUVycm9yX0dldEVuZAotICBQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRPYmplY3Q9cHl0aG9uMzIuUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0T2JqZWN0Ci0gIFB5VW5pY29kZUVuY29kZUVycm9yX0dldFJlYXNvbj1weXRob24zMi5QeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRSZWFzb24KLSAgUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0U3RhcnQ9cHl0aG9uMzIuUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0U3RhcnQKLSAgUHlVbmljb2RlRW5jb2RlRXJyb3JfU2V0RW5kPXB5dGhvbjMyLlB5VW5pY29kZUVuY29kZUVycm9yX1NldEVuZAotICBQeVVuaWNvZGVFbmNvZGVFcnJvcl9TZXRSZWFzb249cHl0aG9uMzIuUHlVbmljb2RlRW5jb2RlRXJyb3JfU2V0UmVhc29uCi0gIFB5VW5pY29kZUVuY29kZUVycm9yX1NldFN0YXJ0PXB5dGhvbjMyLlB5VW5pY29kZUVuY29kZUVycm9yX1NldFN0YXJ0Ci0gIFB5VW5pY29kZUl0ZXJfVHlwZT1weXRob24zMi5QeVVuaWNvZGVJdGVyX1R5cGUgREFUQQotICBQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRFbmQ9cHl0aG9uMzIuUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0RW5kCi0gIFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldE9iamVjdD1weXRob24zMi5QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRPYmplY3QKLSAgUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0UmVhc29uPXB5dGhvbjMyLlB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldFJlYXNvbgotICBQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRTdGFydD1weXRob24zMi5QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRTdGFydAotICBQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9TZXRFbmQ9cHl0aG9uMzIuUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfU2V0RW5kCi0gIFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX1NldFJlYXNvbj1weXRob24zMi5QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9TZXRSZWFzb24KLSAgUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfU2V0U3RhcnQ9cHl0aG9uMzIuUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfU2V0U3RhcnQKLSAgUHlVbmljb2RlX0FwcGVuZD1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FwcGVuZAotICBQeVVuaWNvZGVfQXBwZW5kQW5kRGVsPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQXBwZW5kQW5kRGVsCi0gIFB5VW5pY29kZV9Bc0FTQ0lJU3RyaW5nPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQXNBU0NJSVN0cmluZwotICBQeVVuaWNvZGVfQXNDaGFybWFwU3RyaW5nPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQXNDaGFybWFwU3RyaW5nCi0gIFB5VW5pY29kZV9Bc0RlY29kZWRPYmplY3Q9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc0RlY29kZWRPYmplY3QKLSAgUHlVbmljb2RlX0FzRGVjb2RlZFVuaWNvZGU9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc0RlY29kZWRVbmljb2RlCi0gIFB5VW5pY29kZV9Bc0VuY29kZWRPYmplY3Q9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc0VuY29kZWRPYmplY3QKLSAgUHlVbmljb2RlX0FzRW5jb2RlZFN0cmluZz1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FzRW5jb2RlZFN0cmluZwotICBQeVVuaWNvZGVfQXNFbmNvZGVkVW5pY29kZT1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FzRW5jb2RlZFVuaWNvZGUKLSAgUHlVbmljb2RlX0FzTGF0aW4xU3RyaW5nPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQXNMYXRpbjFTdHJpbmcKLSAgUHlVbmljb2RlX0FzUmF3VW5pY29kZUVzY2FwZVN0cmluZz1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FzUmF3VW5pY29kZUVzY2FwZVN0cmluZwotICBQeVVuaWNvZGVfQXNVVEYxNlN0cmluZz1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FzVVRGMTZTdHJpbmcKLSAgUHlVbmljb2RlX0FzVVRGMzJTdHJpbmc9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc1VURjMyU3RyaW5nCi0gIFB5VW5pY29kZV9Bc1VURjhTdHJpbmc9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Bc1VURjhTdHJpbmcKLSAgUHlVbmljb2RlX0FzVW5pY29kZUVzY2FwZVN0cmluZz1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FzVW5pY29kZUVzY2FwZVN0cmluZwotICBQeVVuaWNvZGVfQXNXaWRlQ2hhcj1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0FzV2lkZUNoYXIKLSAgUHlVbmljb2RlX0NsZWFyRnJlZWxpc3Q9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9DbGVhckZyZWVsaXN0Ci0gIFB5VW5pY29kZV9Db21wYXJlPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQ29tcGFyZQotICBQeVVuaWNvZGVfQ29uY2F0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfQ29uY2F0Ci0gIFB5VW5pY29kZV9Db250YWlucz1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0NvbnRhaW5zCi0gIFB5VW5pY29kZV9Db3VudD1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0NvdW50Ci0gIFB5VW5pY29kZV9EZWNvZGU9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGUKLSAgUHlVbmljb2RlX0RlY29kZUFTQ0lJPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlQVNDSUkKLSAgUHlVbmljb2RlX0RlY29kZUNoYXJtYXA9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVDaGFybWFwCi0gIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQ9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVGU0RlZmF1bHQKLSAgUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdEFuZFNpemU9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVGU0RlZmF1bHRBbmRTaXplCi0gIFB5VW5pY29kZV9EZWNvZGVMYXRpbjE9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVMYXRpbjEKLSAgUHlVbmljb2RlX0RlY29kZVJhd1VuaWNvZGVFc2NhcGU9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVSYXdVbmljb2RlRXNjYXBlCi0gIFB5VW5pY29kZV9EZWNvZGVVVEYxNj1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0RlY29kZVVURjE2Ci0gIFB5VW5pY29kZV9EZWNvZGVVVEYxNlN0YXRlZnVsPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRGVjb2RlVVRGMTZTdGF0ZWZ1bAotICBQeVVuaWNvZGVfRGVjb2RlVVRGMzI9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVVVEYzMgotICBQeVVuaWNvZGVfRGVjb2RlVVRGMzJTdGF0ZWZ1bD1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0RlY29kZVVURjMyU3RhdGVmdWwKLSAgUHlVbmljb2RlX0RlY29kZVVURjg9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVVVEY4Ci0gIFB5VW5pY29kZV9EZWNvZGVVVEY4U3RhdGVmdWw9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVVVEY4U3RhdGVmdWwKLSAgUHlVbmljb2RlX0RlY29kZVVuaWNvZGVFc2NhcGU9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9EZWNvZGVVbmljb2RlRXNjYXBlCi0gIFB5VW5pY29kZV9GU0NvbnZlcnRlcj1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0ZTQ29udmVydGVyCi0gIFB5VW5pY29kZV9GU0RlY29kZXI9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9GU0RlY29kZXIKLSAgUHlVbmljb2RlX0ZpbmQ9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9GaW5kCi0gIFB5VW5pY29kZV9Gb3JtYXQ9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Gb3JtYXQKLSAgUHlVbmljb2RlX0Zyb21FbmNvZGVkT2JqZWN0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRnJvbUVuY29kZWRPYmplY3QKLSAgUHlVbmljb2RlX0Zyb21Gb3JtYXQ9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Gcm9tRm9ybWF0Ci0gIFB5VW5pY29kZV9Gcm9tRm9ybWF0Vj1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0Zyb21Gb3JtYXRWCi0gIFB5VW5pY29kZV9Gcm9tT2JqZWN0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRnJvbU9iamVjdAotICBQeVVuaWNvZGVfRnJvbU9yZGluYWw9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9Gcm9tT3JkaW5hbAotICBQeVVuaWNvZGVfRnJvbVN0cmluZz1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0Zyb21TdHJpbmcKLSAgUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfRnJvbVN0cmluZ0FuZFNpemUKLSAgUHlVbmljb2RlX0Zyb21XaWRlQ2hhcj1weXRob24zMi5QeVVuaWNvZGVVQ1MyX0Zyb21XaWRlQ2hhcgotICBQeVVuaWNvZGVfR2V0RGVmYXVsdEVuY29kaW5nPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfR2V0RGVmYXVsdEVuY29kaW5nCi0gIFB5VW5pY29kZV9HZXRTaXplPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfR2V0U2l6ZQotICBQeVVuaWNvZGVfSXNJZGVudGlmaWVyPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfSXNJZGVudGlmaWVyCi0gIFB5VW5pY29kZV9Kb2luPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfSm9pbgotICBQeVVuaWNvZGVfUGFydGl0aW9uPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfUGFydGl0aW9uCi0gIFB5VW5pY29kZV9SUGFydGl0aW9uPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfUlBhcnRpdGlvbgotICBQeVVuaWNvZGVfUlNwbGl0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfUlNwbGl0Ci0gIFB5VW5pY29kZV9SZXBsYWNlPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfUmVwbGFjZQotICBQeVVuaWNvZGVfUmVzaXplPXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfUmVzaXplCi0gIFB5VW5pY29kZV9SaWNoQ29tcGFyZT1weXRob24zMi5QeVVuaWNvZGVVQ1MyX1JpY2hDb21wYXJlCi0gIFB5VW5pY29kZV9TZXREZWZhdWx0RW5jb2Rpbmc9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9TZXREZWZhdWx0RW5jb2RpbmcKLSAgUHlVbmljb2RlX1NwbGl0PXB5dGhvbjMyLlB5VW5pY29kZVVDUzJfU3BsaXQKLSAgUHlVbmljb2RlX1NwbGl0bGluZXM9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9TcGxpdGxpbmVzCi0gIFB5VW5pY29kZV9UYWlsbWF0Y2g9cHl0aG9uMzIuUHlVbmljb2RlVUNTMl9UYWlsbWF0Y2gKLSAgUHlVbmljb2RlX1RyYW5zbGF0ZT1weXRob24zMi5QeVVuaWNvZGVVQ1MyX1RyYW5zbGF0ZQotICBQeVVuaWNvZGVfQnVpbGRFbmNvZGluZ01hcD1weXRob24zMi5QeVVuaWNvZGVfQnVpbGRFbmNvZGluZ01hcAotICBQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZz1weXRob24zMi5QeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZwotICBQeVVuaWNvZGVfRGVjb2RlVVRGNz1weXRob24zMi5QeVVuaWNvZGVfRGVjb2RlVVRGNwotICBQeVVuaWNvZGVfRGVjb2RlVVRGN1N0YXRlZnVsPXB5dGhvbjMyLlB5VW5pY29kZV9EZWNvZGVVVEY3U3RhdGVmdWwKLSAgUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdD1weXRob24zMi5QeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0Ci0gIFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nPXB5dGhvbjMyLlB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nCi0gIFB5VW5pY29kZV9JbnRlcm5JbW1vcnRhbD1weXRob24zMi5QeVVuaWNvZGVfSW50ZXJuSW1tb3J0YWwKLSAgUHlVbmljb2RlX0ludGVybkluUGxhY2U9cHl0aG9uMzIuUHlVbmljb2RlX0ludGVybkluUGxhY2UKLSAgUHlVbmljb2RlX1R5cGU9cHl0aG9uMzIuUHlVbmljb2RlX1R5cGUgREFUQQotICBQeVdlYWtyZWZfR2V0T2JqZWN0PXB5dGhvbjMyLlB5V2Vha3JlZl9HZXRPYmplY3QgREFUQQotICBQeVdlYWtyZWZfTmV3UHJveHk9cHl0aG9uMzIuUHlXZWFrcmVmX05ld1Byb3h5Ci0gIFB5V2Vha3JlZl9OZXdSZWY9cHl0aG9uMzIuUHlXZWFrcmVmX05ld1JlZgotICBQeVdyYXBwZXJEZXNjcl9UeXBlPXB5dGhvbjMyLlB5V3JhcHBlckRlc2NyX1R5cGUgREFUQQotICBQeVdyYXBwZXJfTmV3PXB5dGhvbjMyLlB5V3JhcHBlcl9OZXcKLSAgUHlaaXBfVHlwZT1weXRob24zMi5QeVppcF9UeXBlIERBVEEKLSAgUHlfQWRkUGVuZGluZ0NhbGw9cHl0aG9uMzIuUHlfQWRkUGVuZGluZ0NhbGwKLSAgUHlfQXRFeGl0PXB5dGhvbjMyLlB5X0F0RXhpdAotICBQeV9CdWlsZFZhbHVlPXB5dGhvbjMyLlB5X0J1aWxkVmFsdWUKLSAgUHlfQ29tcGlsZVN0cmluZz1weXRob24zMi5QeV9Db21waWxlU3RyaW5nCi0gIFB5X0RlY1JlZj1weXRob24zMi5QeV9EZWNSZWYKLSAgUHlfRW5kSW50ZXJwcmV0ZXI9cHl0aG9uMzIuUHlfRW5kSW50ZXJwcmV0ZXIKLSAgUHlfRXhpdD1weXRob24zMi5QeV9FeGl0Ci0gIFB5X0ZhdGFsRXJyb3I9cHl0aG9uMzIuUHlfRmF0YWxFcnJvcgotICBQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nPXB5dGhvbjMyLlB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgREFUQQotICBQeV9GaW5hbGl6ZT1weXRob24zMi5QeV9GaW5hbGl6ZQotICBQeV9HZXRCdWlsZEluZm89cHl0aG9uMzIuUHlfR2V0QnVpbGRJbmZvCi0gIFB5X0dldENvbXBpbGVyPXB5dGhvbjMyLlB5X0dldENvbXBpbGVyCi0gIFB5X0dldENvcHlyaWdodD1weXRob24zMi5QeV9HZXRDb3B5cmlnaHQKLSAgUHlfR2V0RXhlY1ByZWZpeD1weXRob24zMi5QeV9HZXRFeGVjUHJlZml4Ci0gIFB5X0dldFBhdGg9cHl0aG9uMzIuUHlfR2V0UGF0aAotICBQeV9HZXRQbGF0Zm9ybT1weXRob24zMi5QeV9HZXRQbGF0Zm9ybQotICBQeV9HZXRQcmVmaXg9cHl0aG9uMzIuUHlfR2V0UHJlZml4Ci0gIFB5X0dldFByb2dyYW1GdWxsUGF0aD1weXRob24zMi5QeV9HZXRQcm9ncmFtRnVsbFBhdGgKLSAgUHlfR2V0UHJvZ3JhbU5hbWU9cHl0aG9uMzIuUHlfR2V0UHJvZ3JhbU5hbWUKLSAgUHlfR2V0UHl0aG9uSG9tZT1weXRob24zMi5QeV9HZXRQeXRob25Ib21lCi0gIFB5X0dldFJlY3Vyc2lvbkxpbWl0PXB5dGhvbjMyLlB5X0dldFJlY3Vyc2lvbkxpbWl0Ci0gIFB5X0dldFZlcnNpb249cHl0aG9uMzIuUHlfR2V0VmVyc2lvbgotICBQeV9IYXNGaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nPXB5dGhvbjMyLlB5X0hhc0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgREFUQQotICBQeV9JbmNSZWY9cHl0aG9uMzIuUHlfSW5jUmVmCi0gIFB5X0luaXRpYWxpemU9cHl0aG9uMzIuUHlfSW5pdGlhbGl6ZQotICBQeV9Jbml0aWFsaXplRXg9cHl0aG9uMzIuUHlfSW5pdGlhbGl6ZUV4Ci0gIFB5X0lzSW5pdGlhbGl6ZWQ9cHl0aG9uMzIuUHlfSXNJbml0aWFsaXplZAotICBQeV9NYWluPXB5dGhvbjMyLlB5X01haW4KLSAgUHlfTWFrZVBlbmRpbmdDYWxscz1weXRob24zMi5QeV9NYWtlUGVuZGluZ0NhbGxzCi0gIFB5X05ld0ludGVycHJldGVyPXB5dGhvbjMyLlB5X05ld0ludGVycHJldGVyCi0gIFB5X1JlcHJFbnRlcj1weXRob24zMi5QeV9SZXByRW50ZXIKLSAgUHlfUmVwckxlYXZlPXB5dGhvbjMyLlB5X1JlcHJMZWF2ZQotICBQeV9TZXRQcm9ncmFtTmFtZT1weXRob24zMi5QeV9TZXRQcm9ncmFtTmFtZQotICBQeV9TZXRQeXRob25Ib21lPXB5dGhvbjMyLlB5X1NldFB5dGhvbkhvbWUKLSAgUHlfU2V0UmVjdXJzaW9uTGltaXQ9cHl0aG9uMzIuUHlfU2V0UmVjdXJzaW9uTGltaXQKLSAgUHlfU3ltdGFibGVTdHJpbmc9cHl0aG9uMzIuUHlfU3ltdGFibGVTdHJpbmcKLSAgUHlfVmFCdWlsZFZhbHVlPXB5dGhvbjMyLlB5X1ZhQnVpbGRWYWx1ZQotICBfUHlFcnJfQmFkSW50ZXJuYWxDYWxsPXB5dGhvbjMyLl9QeUVycl9CYWRJbnRlcm5hbENhbGwKLSAgX1B5T2JqZWN0X0NhbGxGdW5jdGlvbl9TaXplVD1weXRob24zMi5fUHlPYmplY3RfQ2FsbEZ1bmN0aW9uX1NpemVUCi0gIF9QeU9iamVjdF9DYWxsTWV0aG9kX1NpemVUPXB5dGhvbjMyLl9QeU9iamVjdF9DYWxsTWV0aG9kX1NpemVUCi0gIF9QeU9iamVjdF9HQ19NYWxsb2M9cHl0aG9uMzIuX1B5T2JqZWN0X0dDX01hbGxvYwotICBfUHlPYmplY3RfR0NfTmV3PXB5dGhvbjMyLl9QeU9iamVjdF9HQ19OZXcKLSAgX1B5T2JqZWN0X0dDX05ld1Zhcj1weXRob24zMi5fUHlPYmplY3RfR0NfTmV3VmFyCi0gIF9QeU9iamVjdF9HQ19SZXNpemU9cHl0aG9uMzIuX1B5T2JqZWN0X0dDX1Jlc2l6ZQotICBfUHlPYmplY3RfTmV3PXB5dGhvbjMyLl9QeU9iamVjdF9OZXcKLSAgX1B5T2JqZWN0X05ld1Zhcj1weXRob24zMi5fUHlPYmplY3RfTmV3VmFyCi0gIF9QeVN0YXRlX0FkZE1vZHVsZT1weXRob24zMi5fUHlTdGF0ZV9BZGRNb2R1bGUKLSAgX1B5VGhyZWFkU3RhdGVfSW5pdD1weXRob24zMi5fUHlUaHJlYWRTdGF0ZV9Jbml0Ci0gIF9QeVRocmVhZFN0YXRlX1ByZWFsbG9jPXB5dGhvbjMyLl9QeVRocmVhZFN0YXRlX1ByZWFsbG9jCi0gIF9QeVRyYXNoX2RlbGV0ZV9sYXRlcj1weXRob24zMi5fUHlUcmFzaF9kZWxldGVfbGF0ZXIgREFUQQotICBfUHlUcmFzaF9kZWxldGVfbmVzdGluZz1weXRob24zMi5fUHlUcmFzaF9kZWxldGVfbmVzdGluZyBEQVRBCi0gIF9QeVRyYXNoX2RlcG9zaXRfb2JqZWN0PXB5dGhvbjMyLl9QeVRyYXNoX2RlcG9zaXRfb2JqZWN0Ci0gIF9QeVRyYXNoX2Rlc3Ryb3lfY2hhaW49cHl0aG9uMzIuX1B5VHJhc2hfZGVzdHJveV9jaGFpbgotICBfUHlXZWFrcmVmX0NhbGxhYmxlUHJveHlUeXBlPXB5dGhvbjMyLl9QeVdlYWtyZWZfQ2FsbGFibGVQcm94eVR5cGUgREFUQQotICBfUHlXZWFrcmVmX1Byb3h5VHlwZT1weXRob24zMi5fUHlXZWFrcmVmX1Byb3h5VHlwZSBEQVRBCi0gIF9QeVdlYWtyZWZfUmVmVHlwZT1weXRob24zMi5fUHlXZWFrcmVmX1JlZlR5cGUgREFUQQotICBfUHlfQnVpbGRWYWx1ZV9TaXplVD1weXRob24zMi5fUHlfQnVpbGRWYWx1ZV9TaXplVAotICBfUHlfQ2hlY2tSZWN1cnNpb25MaW1pdD1weXRob24zMi5fUHlfQ2hlY2tSZWN1cnNpb25MaW1pdCBEQVRBCi0gIF9QeV9DaGVja1JlY3Vyc2l2ZUNhbGw9cHl0aG9uMzIuX1B5X0NoZWNrUmVjdXJzaXZlQ2FsbAotICBfUHlfRGVhbGxvYz1weXRob24zMi5fUHlfRGVhbGxvYwotICBfUHlfRWxsaXBzaXNPYmplY3Q9cHl0aG9uMzIuX1B5X0VsbGlwc2lzT2JqZWN0IERBVEEKLSAgX1B5X0ZhbHNlU3RydWN0PXB5dGhvbjMyLl9QeV9GYWxzZVN0cnVjdCBEQVRBCi0gIF9QeV9Ob25lU3RydWN0PXB5dGhvbjMyLl9QeV9Ob25lU3RydWN0IERBVEEKLSAgX1B5X05vdEltcGxlbWVudGVkU3RydWN0PXB5dGhvbjMyLl9QeV9Ob3RJbXBsZW1lbnRlZFN0cnVjdCBEQVRBCi0gIF9QeV9Td2FwcGVkT3A9cHl0aG9uMzIuX1B5X1N3YXBwZWRPcCBEQVRBCi0gIF9QeV9UcnVlU3RydWN0PXB5dGhvbjMyLl9QeV9UcnVlU3RydWN0IERBVEEKLSAgX1B5X1ZhQnVpbGRWYWx1ZV9TaXplVD1weXRob24zMi5fUHlfVmFCdWlsZFZhbHVlX1NpemVUCisgIFB5QXJnX1BhcnNlPXB5dGhvbjMzLlB5QXJnX1BhcnNlCisgIFB5QXJnX1BhcnNlVHVwbGU9cHl0aG9uMzMuUHlBcmdfUGFyc2VUdXBsZQorICBQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHM9cHl0aG9uMzMuUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzCisgIFB5QXJnX1VucGFja1R1cGxlPXB5dGhvbjMzLlB5QXJnX1VucGFja1R1cGxlCisgIFB5QXJnX1ZhUGFyc2U9cHl0aG9uMzMuUHlBcmdfVmFQYXJzZQorICBQeUFyZ19WYVBhcnNlVHVwbGVBbmRLZXl3b3Jkcz1weXRob24zMy5QeUFyZ19WYVBhcnNlVHVwbGVBbmRLZXl3b3JkcworICBQeUFyZ19WYWxpZGF0ZUtleXdvcmRBcmd1bWVudHM9cHl0aG9uMzMuUHlBcmdfVmFsaWRhdGVLZXl3b3JkQXJndW1lbnRzCisgIFB5QmFzZU9iamVjdF9UeXBlPXB5dGhvbjMzLlB5QmFzZU9iamVjdF9UeXBlIERBVEEKKyAgUHlCb29sX0Zyb21Mb25nPXB5dGhvbjMzLlB5Qm9vbF9Gcm9tTG9uZworICBQeUJvb2xfVHlwZT1weXRob24zMy5QeUJvb2xfVHlwZSBEQVRBCisgIFB5Qnl0ZUFycmF5SXRlcl9UeXBlPXB5dGhvbjMzLlB5Qnl0ZUFycmF5SXRlcl9UeXBlIERBVEEKKyAgUHlCeXRlQXJyYXlfQXNTdHJpbmc9cHl0aG9uMzMuUHlCeXRlQXJyYXlfQXNTdHJpbmcKKyAgUHlCeXRlQXJyYXlfQ29uY2F0PXB5dGhvbjMzLlB5Qnl0ZUFycmF5X0NvbmNhdAorICBQeUJ5dGVBcnJheV9Gcm9tT2JqZWN0PXB5dGhvbjMzLlB5Qnl0ZUFycmF5X0Zyb21PYmplY3QKKyAgUHlCeXRlQXJyYXlfRnJvbVN0cmluZ0FuZFNpemU9cHl0aG9uMzMuUHlCeXRlQXJyYXlfRnJvbVN0cmluZ0FuZFNpemUKKyAgUHlCeXRlQXJyYXlfUmVzaXplPXB5dGhvbjMzLlB5Qnl0ZUFycmF5X1Jlc2l6ZQorICBQeUJ5dGVBcnJheV9TaXplPXB5dGhvbjMzLlB5Qnl0ZUFycmF5X1NpemUKKyAgUHlCeXRlQXJyYXlfVHlwZT1weXRob24zMy5QeUJ5dGVBcnJheV9UeXBlIERBVEEKKyAgUHlCeXRlc0l0ZXJfVHlwZT1weXRob24zMy5QeUJ5dGVzSXRlcl9UeXBlIERBVEEKKyAgUHlCeXRlc19Bc1N0cmluZz1weXRob24zMy5QeUJ5dGVzX0FzU3RyaW5nCisgIFB5Qnl0ZXNfQXNTdHJpbmdBbmRTaXplPXB5dGhvbjMzLlB5Qnl0ZXNfQXNTdHJpbmdBbmRTaXplCisgIFB5Qnl0ZXNfQ29uY2F0PXB5dGhvbjMzLlB5Qnl0ZXNfQ29uY2F0CisgIFB5Qnl0ZXNfQ29uY2F0QW5kRGVsPXB5dGhvbjMzLlB5Qnl0ZXNfQ29uY2F0QW5kRGVsCisgIFB5Qnl0ZXNfRGVjb2RlRXNjYXBlPXB5dGhvbjMzLlB5Qnl0ZXNfRGVjb2RlRXNjYXBlCisgIFB5Qnl0ZXNfRnJvbUZvcm1hdD1weXRob24zMy5QeUJ5dGVzX0Zyb21Gb3JtYXQKKyAgUHlCeXRlc19Gcm9tRm9ybWF0Vj1weXRob24zMy5QeUJ5dGVzX0Zyb21Gb3JtYXRWCisgIFB5Qnl0ZXNfRnJvbU9iamVjdD1weXRob24zMy5QeUJ5dGVzX0Zyb21PYmplY3QKKyAgUHlCeXRlc19Gcm9tU3RyaW5nPXB5dGhvbjMzLlB5Qnl0ZXNfRnJvbVN0cmluZworICBQeUJ5dGVzX0Zyb21TdHJpbmdBbmRTaXplPXB5dGhvbjMzLlB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUKKyAgUHlCeXRlc19SZXByPXB5dGhvbjMzLlB5Qnl0ZXNfUmVwcgorICBQeUJ5dGVzX1NpemU9cHl0aG9uMzMuUHlCeXRlc19TaXplCisgIFB5Qnl0ZXNfVHlwZT1weXRob24zMy5QeUJ5dGVzX1R5cGUgREFUQQorICBQeUNGdW5jdGlvbl9DYWxsPXB5dGhvbjMzLlB5Q0Z1bmN0aW9uX0NhbGwKKyAgUHlDRnVuY3Rpb25fQ2xlYXJGcmVlTGlzdD1weXRob24zMy5QeUNGdW5jdGlvbl9DbGVhckZyZWVMaXN0CisgIFB5Q0Z1bmN0aW9uX0dldEZsYWdzPXB5dGhvbjMzLlB5Q0Z1bmN0aW9uX0dldEZsYWdzCisgIFB5Q0Z1bmN0aW9uX0dldEZ1bmN0aW9uPXB5dGhvbjMzLlB5Q0Z1bmN0aW9uX0dldEZ1bmN0aW9uCisgIFB5Q0Z1bmN0aW9uX0dldFNlbGY9cHl0aG9uMzMuUHlDRnVuY3Rpb25fR2V0U2VsZgorICBQeUNGdW5jdGlvbl9OZXdFeD1weXRob24zMy5QeUNGdW5jdGlvbl9OZXdFeAorICBQeUNGdW5jdGlvbl9UeXBlPXB5dGhvbjMzLlB5Q0Z1bmN0aW9uX1R5cGUgREFUQQorICBQeUNhbGxJdGVyX05ldz1weXRob24zMy5QeUNhbGxJdGVyX05ldworICBQeUNhbGxJdGVyX1R5cGU9cHl0aG9uMzMuUHlDYWxsSXRlcl9UeXBlIERBVEEKKyAgUHlDYWxsYWJsZV9DaGVjaz1weXRob24zMy5QeUNhbGxhYmxlX0NoZWNrCisgIFB5Q2Fwc3VsZV9HZXRDb250ZXh0PXB5dGhvbjMzLlB5Q2Fwc3VsZV9HZXRDb250ZXh0CisgIFB5Q2Fwc3VsZV9HZXREZXN0cnVjdG9yPXB5dGhvbjMzLlB5Q2Fwc3VsZV9HZXREZXN0cnVjdG9yCisgIFB5Q2Fwc3VsZV9HZXROYW1lPXB5dGhvbjMzLlB5Q2Fwc3VsZV9HZXROYW1lCisgIFB5Q2Fwc3VsZV9HZXRQb2ludGVyPXB5dGhvbjMzLlB5Q2Fwc3VsZV9HZXRQb2ludGVyCisgIFB5Q2Fwc3VsZV9JbXBvcnQ9cHl0aG9uMzMuUHlDYXBzdWxlX0ltcG9ydAorICBQeUNhcHN1bGVfSXNWYWxpZD1weXRob24zMy5QeUNhcHN1bGVfSXNWYWxpZAorICBQeUNhcHN1bGVfTmV3PXB5dGhvbjMzLlB5Q2Fwc3VsZV9OZXcKKyAgUHlDYXBzdWxlX1NldENvbnRleHQ9cHl0aG9uMzMuUHlDYXBzdWxlX1NldENvbnRleHQKKyAgUHlDYXBzdWxlX1NldERlc3RydWN0b3I9cHl0aG9uMzMuUHlDYXBzdWxlX1NldERlc3RydWN0b3IKKyAgUHlDYXBzdWxlX1NldE5hbWU9cHl0aG9uMzMuUHlDYXBzdWxlX1NldE5hbWUKKyAgUHlDYXBzdWxlX1NldFBvaW50ZXI9cHl0aG9uMzMuUHlDYXBzdWxlX1NldFBvaW50ZXIKKyAgUHlDYXBzdWxlX1R5cGU9cHl0aG9uMzMuUHlDYXBzdWxlX1R5cGUgREFUQQorICBQeUNsYXNzTWV0aG9kRGVzY3JfVHlwZT1weXRob24zMy5QeUNsYXNzTWV0aG9kRGVzY3JfVHlwZSBEQVRBCisgIFB5Q29kZWNfQmFja3NsYXNoUmVwbGFjZUVycm9ycz1weXRob24zMy5QeUNvZGVjX0JhY2tzbGFzaFJlcGxhY2VFcnJvcnMKKyAgUHlDb2RlY19EZWNvZGU9cHl0aG9uMzMuUHlDb2RlY19EZWNvZGUKKyAgUHlDb2RlY19EZWNvZGVyPXB5dGhvbjMzLlB5Q29kZWNfRGVjb2RlcgorICBQeUNvZGVjX0VuY29kZT1weXRob24zMy5QeUNvZGVjX0VuY29kZQorICBQeUNvZGVjX0VuY29kZXI9cHl0aG9uMzMuUHlDb2RlY19FbmNvZGVyCisgIFB5Q29kZWNfSWdub3JlRXJyb3JzPXB5dGhvbjMzLlB5Q29kZWNfSWdub3JlRXJyb3JzCisgIFB5Q29kZWNfSW5jcmVtZW50YWxEZWNvZGVyPXB5dGhvbjMzLlB5Q29kZWNfSW5jcmVtZW50YWxEZWNvZGVyCisgIFB5Q29kZWNfSW5jcmVtZW50YWxFbmNvZGVyPXB5dGhvbjMzLlB5Q29kZWNfSW5jcmVtZW50YWxFbmNvZGVyCisgIFB5Q29kZWNfS25vd25FbmNvZGluZz1weXRob24zMy5QeUNvZGVjX0tub3duRW5jb2RpbmcKKyAgUHlDb2RlY19Mb29rdXBFcnJvcj1weXRob24zMy5QeUNvZGVjX0xvb2t1cEVycm9yCisgIFB5Q29kZWNfUmVnaXN0ZXI9cHl0aG9uMzMuUHlDb2RlY19SZWdpc3RlcgorICBQeUNvZGVjX1JlZ2lzdGVyRXJyb3I9cHl0aG9uMzMuUHlDb2RlY19SZWdpc3RlckVycm9yCisgIFB5Q29kZWNfUmVwbGFjZUVycm9ycz1weXRob24zMy5QeUNvZGVjX1JlcGxhY2VFcnJvcnMKKyAgUHlDb2RlY19TdHJlYW1SZWFkZXI9cHl0aG9uMzMuUHlDb2RlY19TdHJlYW1SZWFkZXIKKyAgUHlDb2RlY19TdHJlYW1Xcml0ZXI9cHl0aG9uMzMuUHlDb2RlY19TdHJlYW1Xcml0ZXIKKyAgUHlDb2RlY19TdHJpY3RFcnJvcnM9cHl0aG9uMzMuUHlDb2RlY19TdHJpY3RFcnJvcnMKKyAgUHlDb2RlY19YTUxDaGFyUmVmUmVwbGFjZUVycm9ycz1weXRob24zMy5QeUNvZGVjX1hNTENoYXJSZWZSZXBsYWNlRXJyb3JzCisgIFB5Q29tcGxleF9Gcm9tRG91Ymxlcz1weXRob24zMy5QeUNvbXBsZXhfRnJvbURvdWJsZXMKKyAgUHlDb21wbGV4X0ltYWdBc0RvdWJsZT1weXRob24zMy5QeUNvbXBsZXhfSW1hZ0FzRG91YmxlCisgIFB5Q29tcGxleF9SZWFsQXNEb3VibGU9cHl0aG9uMzMuUHlDb21wbGV4X1JlYWxBc0RvdWJsZQorICBQeUNvbXBsZXhfVHlwZT1weXRob24zMy5QeUNvbXBsZXhfVHlwZSBEQVRBCisgIFB5RGVzY3JfTmV3Q2xhc3NNZXRob2Q9cHl0aG9uMzMuUHlEZXNjcl9OZXdDbGFzc01ldGhvZAorICBQeURlc2NyX05ld0dldFNldD1weXRob24zMy5QeURlc2NyX05ld0dldFNldAorICBQeURlc2NyX05ld01lbWJlcj1weXRob24zMy5QeURlc2NyX05ld01lbWJlcgorICBQeURlc2NyX05ld01ldGhvZD1weXRob24zMy5QeURlc2NyX05ld01ldGhvZAorICBQeURpY3RJdGVtc19UeXBlPXB5dGhvbjMzLlB5RGljdEl0ZW1zX1R5cGUgREFUQQorICBQeURpY3RJdGVySXRlbV9UeXBlPXB5dGhvbjMzLlB5RGljdEl0ZXJJdGVtX1R5cGUgREFUQQorICBQeURpY3RJdGVyS2V5X1R5cGU9cHl0aG9uMzMuUHlEaWN0SXRlcktleV9UeXBlIERBVEEKKyAgUHlEaWN0SXRlclZhbHVlX1R5cGU9cHl0aG9uMzMuUHlEaWN0SXRlclZhbHVlX1R5cGUgREFUQQorICBQeURpY3RLZXlzX1R5cGU9cHl0aG9uMzMuUHlEaWN0S2V5c19UeXBlIERBVEEKKyAgUHlEaWN0UHJveHlfTmV3PXB5dGhvbjMzLlB5RGljdFByb3h5X05ldworICBQeURpY3RQcm94eV9UeXBlPXB5dGhvbjMzLlB5RGljdFByb3h5X1R5cGUgREFUQQorICBQeURpY3RWYWx1ZXNfVHlwZT1weXRob24zMy5QeURpY3RWYWx1ZXNfVHlwZSBEQVRBCisgIFB5RGljdF9DbGVhcj1weXRob24zMy5QeURpY3RfQ2xlYXIKKyAgUHlEaWN0X0NvbnRhaW5zPXB5dGhvbjMzLlB5RGljdF9Db250YWlucworICBQeURpY3RfQ29weT1weXRob24zMy5QeURpY3RfQ29weQorICBQeURpY3RfRGVsSXRlbT1weXRob24zMy5QeURpY3RfRGVsSXRlbQorICBQeURpY3RfRGVsSXRlbVN0cmluZz1weXRob24zMy5QeURpY3RfRGVsSXRlbVN0cmluZworICBQeURpY3RfR2V0SXRlbT1weXRob24zMy5QeURpY3RfR2V0SXRlbQorICBQeURpY3RfR2V0SXRlbVN0cmluZz1weXRob24zMy5QeURpY3RfR2V0SXRlbVN0cmluZworICBQeURpY3RfR2V0SXRlbVdpdGhFcnJvcj1weXRob24zMy5QeURpY3RfR2V0SXRlbVdpdGhFcnJvcgorICBQeURpY3RfSXRlbXM9cHl0aG9uMzMuUHlEaWN0X0l0ZW1zCisgIFB5RGljdF9LZXlzPXB5dGhvbjMzLlB5RGljdF9LZXlzCisgIFB5RGljdF9NZXJnZT1weXRob24zMy5QeURpY3RfTWVyZ2UKKyAgUHlEaWN0X01lcmdlRnJvbVNlcTI9cHl0aG9uMzMuUHlEaWN0X01lcmdlRnJvbVNlcTIKKyAgUHlEaWN0X05ldz1weXRob24zMy5QeURpY3RfTmV3CisgIFB5RGljdF9OZXh0PXB5dGhvbjMzLlB5RGljdF9OZXh0CisgIFB5RGljdF9TZXRJdGVtPXB5dGhvbjMzLlB5RGljdF9TZXRJdGVtCisgIFB5RGljdF9TZXRJdGVtU3RyaW5nPXB5dGhvbjMzLlB5RGljdF9TZXRJdGVtU3RyaW5nCisgIFB5RGljdF9TaXplPXB5dGhvbjMzLlB5RGljdF9TaXplCisgIFB5RGljdF9UeXBlPXB5dGhvbjMzLlB5RGljdF9UeXBlIERBVEEKKyAgUHlEaWN0X1VwZGF0ZT1weXRob24zMy5QeURpY3RfVXBkYXRlCisgIFB5RGljdF9WYWx1ZXM9cHl0aG9uMzMuUHlEaWN0X1ZhbHVlcworICBQeUVsbGlwc2lzX1R5cGU9cHl0aG9uMzMuUHlFbGxpcHNpc19UeXBlIERBVEEKKyAgUHlFbnVtX1R5cGU9cHl0aG9uMzMuUHlFbnVtX1R5cGUgREFUQQorICBQeUVycl9CYWRBcmd1bWVudD1weXRob24zMy5QeUVycl9CYWRBcmd1bWVudAorICBQeUVycl9CYWRJbnRlcm5hbENhbGw9cHl0aG9uMzMuUHlFcnJfQmFkSW50ZXJuYWxDYWxsCisgIFB5RXJyX0NoZWNrU2lnbmFscz1weXRob24zMy5QeUVycl9DaGVja1NpZ25hbHMKKyAgUHlFcnJfQ2xlYXI9cHl0aG9uMzMuUHlFcnJfQ2xlYXIKKyAgUHlFcnJfRGlzcGxheT1weXRob24zMy5QeUVycl9EaXNwbGF5CisgIFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXM9cHl0aG9uMzMuUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcworICBQeUVycl9GZXRjaD1weXRob24zMy5QeUVycl9GZXRjaAorICBQeUVycl9Gb3JtYXQ9cHl0aG9uMzMuUHlFcnJfRm9ybWF0CisgIFB5RXJyX0dpdmVuRXhjZXB0aW9uTWF0Y2hlcz1weXRob24zMy5QeUVycl9HaXZlbkV4Y2VwdGlvbk1hdGNoZXMKKyAgUHlFcnJfTmV3RXhjZXB0aW9uPXB5dGhvbjMzLlB5RXJyX05ld0V4Y2VwdGlvbgorICBQeUVycl9OZXdFeGNlcHRpb25XaXRoRG9jPXB5dGhvbjMzLlB5RXJyX05ld0V4Y2VwdGlvbldpdGhEb2MKKyAgUHlFcnJfTm9NZW1vcnk9cHl0aG9uMzMuUHlFcnJfTm9NZW1vcnkKKyAgUHlFcnJfTm9ybWFsaXplRXhjZXB0aW9uPXB5dGhvbjMzLlB5RXJyX05vcm1hbGl6ZUV4Y2VwdGlvbgorICBQeUVycl9PY2N1cnJlZD1weXRob24zMy5QeUVycl9PY2N1cnJlZAorICBQeUVycl9QcmludD1weXRob24zMy5QeUVycl9QcmludAorICBQeUVycl9QcmludEV4PXB5dGhvbjMzLlB5RXJyX1ByaW50RXgKKyAgUHlFcnJfUHJvZ3JhbVRleHQ9cHl0aG9uMzMuUHlFcnJfUHJvZ3JhbVRleHQKKyAgUHlFcnJfUmVzdG9yZT1weXRob24zMy5QeUVycl9SZXN0b3JlCisgIFB5RXJyX1NldEZyb21FcnJubz1weXRob24zMy5QeUVycl9TZXRGcm9tRXJybm8KKyAgUHlFcnJfU2V0RnJvbUVycm5vV2l0aEZpbGVuYW1lPXB5dGhvbjMzLlB5RXJyX1NldEZyb21FcnJub1dpdGhGaWxlbmFtZQorICBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWVPYmplY3Q9cHl0aG9uMzMuUHlFcnJfU2V0RnJvbUVycm5vV2l0aEZpbGVuYW1lT2JqZWN0CisgIFB5RXJyX1NldEludGVycnVwdD1weXRob24zMy5QeUVycl9TZXRJbnRlcnJ1cHQKKyAgUHlFcnJfU2V0Tm9uZT1weXRob24zMy5QeUVycl9TZXROb25lCisgIFB5RXJyX1NldE9iamVjdD1weXRob24zMy5QeUVycl9TZXRPYmplY3QKKyAgUHlFcnJfU2V0U3RyaW5nPXB5dGhvbjMzLlB5RXJyX1NldFN0cmluZworICBQeUVycl9TeW50YXhMb2NhdGlvbj1weXRob24zMy5QeUVycl9TeW50YXhMb2NhdGlvbgorICBQeUVycl9XYXJuRXg9cHl0aG9uMzMuUHlFcnJfV2FybkV4CisgIFB5RXJyX1dhcm5FeHBsaWNpdD1weXRob24zMy5QeUVycl9XYXJuRXhwbGljaXQKKyAgUHlFcnJfV2FybkZvcm1hdD1weXRob24zMy5QeUVycl9XYXJuRm9ybWF0CisgIFB5RXJyX1dyaXRlVW5yYWlzYWJsZT1weXRob24zMy5QeUVycl9Xcml0ZVVucmFpc2FibGUKKyAgUHlFdmFsX0FjcXVpcmVMb2NrPXB5dGhvbjMzLlB5RXZhbF9BY3F1aXJlTG9jaworICBQeUV2YWxfQWNxdWlyZVRocmVhZD1weXRob24zMy5QeUV2YWxfQWNxdWlyZVRocmVhZAorICBQeUV2YWxfQ2FsbEZ1bmN0aW9uPXB5dGhvbjMzLlB5RXZhbF9DYWxsRnVuY3Rpb24KKyAgUHlFdmFsX0NhbGxNZXRob2Q9cHl0aG9uMzMuUHlFdmFsX0NhbGxNZXRob2QKKyAgUHlFdmFsX0NhbGxPYmplY3RXaXRoS2V5d29yZHM9cHl0aG9uMzMuUHlFdmFsX0NhbGxPYmplY3RXaXRoS2V5d29yZHMKKyAgUHlFdmFsX0V2YWxDb2RlPXB5dGhvbjMzLlB5RXZhbF9FdmFsQ29kZQorICBQeUV2YWxfRXZhbENvZGVFeD1weXRob24zMy5QeUV2YWxfRXZhbENvZGVFeAorICBQeUV2YWxfRXZhbEZyYW1lPXB5dGhvbjMzLlB5RXZhbF9FdmFsRnJhbWUKKyAgUHlFdmFsX0V2YWxGcmFtZUV4PXB5dGhvbjMzLlB5RXZhbF9FdmFsRnJhbWVFeAorICBQeUV2YWxfR2V0QnVpbHRpbnM9cHl0aG9uMzMuUHlFdmFsX0dldEJ1aWx0aW5zCisgIFB5RXZhbF9HZXRDYWxsU3RhdHM9cHl0aG9uMzMuUHlFdmFsX0dldENhbGxTdGF0cworICBQeUV2YWxfR2V0RnJhbWU9cHl0aG9uMzMuUHlFdmFsX0dldEZyYW1lCisgIFB5RXZhbF9HZXRGdW5jRGVzYz1weXRob24zMy5QeUV2YWxfR2V0RnVuY0Rlc2MKKyAgUHlFdmFsX0dldEZ1bmNOYW1lPXB5dGhvbjMzLlB5RXZhbF9HZXRGdW5jTmFtZQorICBQeUV2YWxfR2V0R2xvYmFscz1weXRob24zMy5QeUV2YWxfR2V0R2xvYmFscworICBQeUV2YWxfR2V0TG9jYWxzPXB5dGhvbjMzLlB5RXZhbF9HZXRMb2NhbHMKKyAgUHlFdmFsX0luaXRUaHJlYWRzPXB5dGhvbjMzLlB5RXZhbF9Jbml0VGhyZWFkcworICBQeUV2YWxfUmVJbml0VGhyZWFkcz1weXRob24zMy5QeUV2YWxfUmVJbml0VGhyZWFkcworICBQeUV2YWxfUmVsZWFzZUxvY2s9cHl0aG9uMzMuUHlFdmFsX1JlbGVhc2VMb2NrCisgIFB5RXZhbF9SZWxlYXNlVGhyZWFkPXB5dGhvbjMzLlB5RXZhbF9SZWxlYXNlVGhyZWFkCisgIFB5RXZhbF9SZXN0b3JlVGhyZWFkPXB5dGhvbjMzLlB5RXZhbF9SZXN0b3JlVGhyZWFkCisgIFB5RXZhbF9TYXZlVGhyZWFkPXB5dGhvbjMzLlB5RXZhbF9TYXZlVGhyZWFkCisgIFB5RXZhbF9UaHJlYWRzSW5pdGlhbGl6ZWQ9cHl0aG9uMzMuUHlFdmFsX1RocmVhZHNJbml0aWFsaXplZAorICBQeUV4Y19Bcml0aG1ldGljRXJyb3I9cHl0aG9uMzMuUHlFeGNfQXJpdGhtZXRpY0Vycm9yIERBVEEKKyAgUHlFeGNfQXNzZXJ0aW9uRXJyb3I9cHl0aG9uMzMuUHlFeGNfQXNzZXJ0aW9uRXJyb3IgREFUQQorICBQeUV4Y19BdHRyaWJ1dGVFcnJvcj1weXRob24zMy5QeUV4Y19BdHRyaWJ1dGVFcnJvciBEQVRBCisgIFB5RXhjX0Jhc2VFeGNlcHRpb249cHl0aG9uMzMuUHlFeGNfQmFzZUV4Y2VwdGlvbiBEQVRBCisgIFB5RXhjX0J1ZmZlckVycm9yPXB5dGhvbjMzLlB5RXhjX0J1ZmZlckVycm9yIERBVEEKKyAgUHlFeGNfQnl0ZXNXYXJuaW5nPXB5dGhvbjMzLlB5RXhjX0J5dGVzV2FybmluZyBEQVRBCisgIFB5RXhjX0RlcHJlY2F0aW9uV2FybmluZz1weXRob24zMy5QeUV4Y19EZXByZWNhdGlvbldhcm5pbmcgREFUQQorICBQeUV4Y19FT0ZFcnJvcj1weXRob24zMy5QeUV4Y19FT0ZFcnJvciBEQVRBCisgIFB5RXhjX0Vudmlyb25tZW50RXJyb3I9cHl0aG9uMzMuUHlFeGNfRW52aXJvbm1lbnRFcnJvciBEQVRBCisgIFB5RXhjX0V4Y2VwdGlvbj1weXRob24zMy5QeUV4Y19FeGNlcHRpb24gREFUQQorICBQeUV4Y19GbG9hdGluZ1BvaW50RXJyb3I9cHl0aG9uMzMuUHlFeGNfRmxvYXRpbmdQb2ludEVycm9yIERBVEEKKyAgUHlFeGNfRnV0dXJlV2FybmluZz1weXRob24zMy5QeUV4Y19GdXR1cmVXYXJuaW5nIERBVEEKKyAgUHlFeGNfR2VuZXJhdG9yRXhpdD1weXRob24zMy5QeUV4Y19HZW5lcmF0b3JFeGl0IERBVEEKKyAgUHlFeGNfSU9FcnJvcj1weXRob24zMy5QeUV4Y19JT0Vycm9yIERBVEEKKyAgUHlFeGNfSW1wb3J0RXJyb3I9cHl0aG9uMzMuUHlFeGNfSW1wb3J0RXJyb3IgREFUQQorICBQeUV4Y19JbXBvcnRXYXJuaW5nPXB5dGhvbjMzLlB5RXhjX0ltcG9ydFdhcm5pbmcgREFUQQorICBQeUV4Y19JbmRlbnRhdGlvbkVycm9yPXB5dGhvbjMzLlB5RXhjX0luZGVudGF0aW9uRXJyb3IgREFUQQorICBQeUV4Y19JbmRleEVycm9yPXB5dGhvbjMzLlB5RXhjX0luZGV4RXJyb3IgREFUQQorICBQeUV4Y19LZXlFcnJvcj1weXRob24zMy5QeUV4Y19LZXlFcnJvciBEQVRBCisgIFB5RXhjX0tleWJvYXJkSW50ZXJydXB0PXB5dGhvbjMzLlB5RXhjX0tleWJvYXJkSW50ZXJydXB0IERBVEEKKyAgUHlFeGNfTG9va3VwRXJyb3I9cHl0aG9uMzMuUHlFeGNfTG9va3VwRXJyb3IgREFUQQorICBQeUV4Y19NZW1vcnlFcnJvcj1weXRob24zMy5QeUV4Y19NZW1vcnlFcnJvciBEQVRBCisgIFB5RXhjX01lbW9yeUVycm9ySW5zdD1weXRob24zMy5QeUV4Y19NZW1vcnlFcnJvckluc3QgREFUQQorICBQeUV4Y19OYW1lRXJyb3I9cHl0aG9uMzMuUHlFeGNfTmFtZUVycm9yIERBVEEKKyAgUHlFeGNfTm90SW1wbGVtZW50ZWRFcnJvcj1weXRob24zMy5QeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yIERBVEEKKyAgUHlFeGNfT1NFcnJvcj1weXRob24zMy5QeUV4Y19PU0Vycm9yIERBVEEKKyAgUHlFeGNfT3ZlcmZsb3dFcnJvcj1weXRob24zMy5QeUV4Y19PdmVyZmxvd0Vycm9yIERBVEEKKyAgUHlFeGNfUGVuZGluZ0RlcHJlY2F0aW9uV2FybmluZz1weXRob24zMy5QeUV4Y19QZW5kaW5nRGVwcmVjYXRpb25XYXJuaW5nIERBVEEKKyAgUHlFeGNfUmVjdXJzaW9uRXJyb3JJbnN0PXB5dGhvbjMzLlB5RXhjX1JlY3Vyc2lvbkVycm9ySW5zdCBEQVRBCisgIFB5RXhjX1JlZmVyZW5jZUVycm9yPXB5dGhvbjMzLlB5RXhjX1JlZmVyZW5jZUVycm9yIERBVEEKKyAgUHlFeGNfUnVudGltZUVycm9yPXB5dGhvbjMzLlB5RXhjX1J1bnRpbWVFcnJvciBEQVRBCisgIFB5RXhjX1J1bnRpbWVXYXJuaW5nPXB5dGhvbjMzLlB5RXhjX1J1bnRpbWVXYXJuaW5nIERBVEEKKyAgUHlFeGNfU3RvcEl0ZXJhdGlvbj1weXRob24zMy5QeUV4Y19TdG9wSXRlcmF0aW9uIERBVEEKKyAgUHlFeGNfU3ludGF4RXJyb3I9cHl0aG9uMzMuUHlFeGNfU3ludGF4RXJyb3IgREFUQQorICBQeUV4Y19TeW50YXhXYXJuaW5nPXB5dGhvbjMzLlB5RXhjX1N5bnRheFdhcm5pbmcgREFUQQorICBQeUV4Y19TeXN0ZW1FcnJvcj1weXRob24zMy5QeUV4Y19TeXN0ZW1FcnJvciBEQVRBCisgIFB5RXhjX1N5c3RlbUV4aXQ9cHl0aG9uMzMuUHlFeGNfU3lzdGVtRXhpdCBEQVRBCisgIFB5RXhjX1RhYkVycm9yPXB5dGhvbjMzLlB5RXhjX1RhYkVycm9yIERBVEEKKyAgUHlFeGNfVHlwZUVycm9yPXB5dGhvbjMzLlB5RXhjX1R5cGVFcnJvciBEQVRBCisgIFB5RXhjX1VuYm91bmRMb2NhbEVycm9yPXB5dGhvbjMzLlB5RXhjX1VuYm91bmRMb2NhbEVycm9yIERBVEEKKyAgUHlFeGNfVW5pY29kZURlY29kZUVycm9yPXB5dGhvbjMzLlB5RXhjX1VuaWNvZGVEZWNvZGVFcnJvciBEQVRBCisgIFB5RXhjX1VuaWNvZGVFbmNvZGVFcnJvcj1weXRob24zMy5QeUV4Y19Vbmljb2RlRW5jb2RlRXJyb3IgREFUQQorICBQeUV4Y19Vbmljb2RlRXJyb3I9cHl0aG9uMzMuUHlFeGNfVW5pY29kZUVycm9yIERBVEEKKyAgUHlFeGNfVW5pY29kZVRyYW5zbGF0ZUVycm9yPXB5dGhvbjMzLlB5RXhjX1VuaWNvZGVUcmFuc2xhdGVFcnJvciBEQVRBCisgIFB5RXhjX1VuaWNvZGVXYXJuaW5nPXB5dGhvbjMzLlB5RXhjX1VuaWNvZGVXYXJuaW5nIERBVEEKKyAgUHlFeGNfVXNlcldhcm5pbmc9cHl0aG9uMzMuUHlFeGNfVXNlcldhcm5pbmcgREFUQQorICBQeUV4Y19WYWx1ZUVycm9yPXB5dGhvbjMzLlB5RXhjX1ZhbHVlRXJyb3IgREFUQQorICBQeUV4Y19XYXJuaW5nPXB5dGhvbjMzLlB5RXhjX1dhcm5pbmcgREFUQQorICBQeUV4Y19aZXJvRGl2aXNpb25FcnJvcj1weXRob24zMy5QeUV4Y19aZXJvRGl2aXNpb25FcnJvciBEQVRBCisgIFB5RXhjZXB0aW9uX0dldENhdXNlPXB5dGhvbjMzLlB5RXhjZXB0aW9uX0dldENhdXNlCisgIFB5RXhjZXB0aW9uX0dldENvbnRleHQ9cHl0aG9uMzMuUHlFeGNlcHRpb25fR2V0Q29udGV4dAorICBQeUV4Y2VwdGlvbl9HZXRUcmFjZWJhY2s9cHl0aG9uMzMuUHlFeGNlcHRpb25fR2V0VHJhY2ViYWNrCisgIFB5RXhjZXB0aW9uX1NldENhdXNlPXB5dGhvbjMzLlB5RXhjZXB0aW9uX1NldENhdXNlCisgIFB5RXhjZXB0aW9uX1NldENvbnRleHQ9cHl0aG9uMzMuUHlFeGNlcHRpb25fU2V0Q29udGV4dAorICBQeUV4Y2VwdGlvbl9TZXRUcmFjZWJhY2s9cHl0aG9uMzMuUHlFeGNlcHRpb25fU2V0VHJhY2ViYWNrCisgIFB5RmlsZV9Gcm9tRmQ9cHl0aG9uMzMuUHlGaWxlX0Zyb21GZAorICBQeUZpbGVfR2V0TGluZT1weXRob24zMy5QeUZpbGVfR2V0TGluZQorICBQeUZpbGVfV3JpdGVPYmplY3Q9cHl0aG9uMzMuUHlGaWxlX1dyaXRlT2JqZWN0CisgIFB5RmlsZV9Xcml0ZVN0cmluZz1weXRob24zMy5QeUZpbGVfV3JpdGVTdHJpbmcKKyAgUHlGaWx0ZXJfVHlwZT1weXRob24zMy5QeUZpbHRlcl9UeXBlIERBVEEKKyAgUHlGbG9hdF9Bc0RvdWJsZT1weXRob24zMy5QeUZsb2F0X0FzRG91YmxlCisgIFB5RmxvYXRfRnJvbURvdWJsZT1weXRob24zMy5QeUZsb2F0X0Zyb21Eb3VibGUKKyAgUHlGbG9hdF9Gcm9tU3RyaW5nPXB5dGhvbjMzLlB5RmxvYXRfRnJvbVN0cmluZworICBQeUZsb2F0X0dldEluZm89cHl0aG9uMzMuUHlGbG9hdF9HZXRJbmZvCisgIFB5RmxvYXRfR2V0TWF4PXB5dGhvbjMzLlB5RmxvYXRfR2V0TWF4CisgIFB5RmxvYXRfR2V0TWluPXB5dGhvbjMzLlB5RmxvYXRfR2V0TWluCisgIFB5RmxvYXRfVHlwZT1weXRob24zMy5QeUZsb2F0X1R5cGUgREFUQQorICBQeUZyb3plblNldF9OZXc9cHl0aG9uMzMuUHlGcm96ZW5TZXRfTmV3CisgIFB5RnJvemVuU2V0X1R5cGU9cHl0aG9uMzMuUHlGcm96ZW5TZXRfVHlwZSBEQVRBCisgIFB5R0NfQ29sbGVjdD1weXRob24zMy5QeUdDX0NvbGxlY3QKKyAgUHlHSUxTdGF0ZV9FbnN1cmU9cHl0aG9uMzMuUHlHSUxTdGF0ZV9FbnN1cmUKKyAgUHlHSUxTdGF0ZV9HZXRUaGlzVGhyZWFkU3RhdGU9cHl0aG9uMzMuUHlHSUxTdGF0ZV9HZXRUaGlzVGhyZWFkU3RhdGUKKyAgUHlHSUxTdGF0ZV9SZWxlYXNlPXB5dGhvbjMzLlB5R0lMU3RhdGVfUmVsZWFzZQorICBQeUdldFNldERlc2NyX1R5cGU9cHl0aG9uMzMuUHlHZXRTZXREZXNjcl9UeXBlIERBVEEKKyAgUHlJbXBvcnRfQWRkTW9kdWxlPXB5dGhvbjMzLlB5SW1wb3J0X0FkZE1vZHVsZQorICBQeUltcG9ydF9BcHBlbmRJbml0dGFiPXB5dGhvbjMzLlB5SW1wb3J0X0FwcGVuZEluaXR0YWIKKyAgUHlJbXBvcnRfQ2xlYW51cD1weXRob24zMy5QeUltcG9ydF9DbGVhbnVwCisgIFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlPXB5dGhvbjMzLlB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlCisgIFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlRXg9cHl0aG9uMzMuUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVFeAorICBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZVdpdGhQYXRobmFtZXM9cHl0aG9uMzMuUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVXaXRoUGF0aG5hbWVzCisgIFB5SW1wb3J0X0dldEltcG9ydGVyPXB5dGhvbjMzLlB5SW1wb3J0X0dldEltcG9ydGVyCisgIFB5SW1wb3J0X0dldE1hZ2ljTnVtYmVyPXB5dGhvbjMzLlB5SW1wb3J0X0dldE1hZ2ljTnVtYmVyCisgIFB5SW1wb3J0X0dldE1hZ2ljVGFnPXB5dGhvbjMzLlB5SW1wb3J0X0dldE1hZ2ljVGFnCisgIFB5SW1wb3J0X0dldE1vZHVsZURpY3Q9cHl0aG9uMzMuUHlJbXBvcnRfR2V0TW9kdWxlRGljdAorICBQeUltcG9ydF9JbXBvcnQ9cHl0aG9uMzMuUHlJbXBvcnRfSW1wb3J0CisgIFB5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZT1weXRob24zMy5QeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGUKKyAgUHlJbXBvcnRfSW1wb3J0TW9kdWxlPXB5dGhvbjMzLlB5SW1wb3J0X0ltcG9ydE1vZHVsZQorICBQeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbD1weXRob24zMy5QeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbAorICBQeUltcG9ydF9JbXBvcnRNb2R1bGVOb0Jsb2NrPXB5dGhvbjMzLlB5SW1wb3J0X0ltcG9ydE1vZHVsZU5vQmxvY2sKKyAgUHlJbXBvcnRfUmVsb2FkTW9kdWxlPXB5dGhvbjMzLlB5SW1wb3J0X1JlbG9hZE1vZHVsZQorICBQeUludGVycHJldGVyU3RhdGVfQ2xlYXI9cHl0aG9uMzMuUHlJbnRlcnByZXRlclN0YXRlX0NsZWFyCisgIFB5SW50ZXJwcmV0ZXJTdGF0ZV9EZWxldGU9cHl0aG9uMzMuUHlJbnRlcnByZXRlclN0YXRlX0RlbGV0ZQorICBQeUludGVycHJldGVyU3RhdGVfTmV3PXB5dGhvbjMzLlB5SW50ZXJwcmV0ZXJTdGF0ZV9OZXcKKyAgUHlJdGVyX05leHQ9cHl0aG9uMzMuUHlJdGVyX05leHQKKyAgUHlMaXN0SXRlcl9UeXBlPXB5dGhvbjMzLlB5TGlzdEl0ZXJfVHlwZSBEQVRBCisgIFB5TGlzdFJldkl0ZXJfVHlwZT1weXRob24zMy5QeUxpc3RSZXZJdGVyX1R5cGUgREFUQQorICBQeUxpc3RfQXBwZW5kPXB5dGhvbjMzLlB5TGlzdF9BcHBlbmQKKyAgUHlMaXN0X0FzVHVwbGU9cHl0aG9uMzMuUHlMaXN0X0FzVHVwbGUKKyAgUHlMaXN0X0dldEl0ZW09cHl0aG9uMzMuUHlMaXN0X0dldEl0ZW0KKyAgUHlMaXN0X0dldFNsaWNlPXB5dGhvbjMzLlB5TGlzdF9HZXRTbGljZQorICBQeUxpc3RfSW5zZXJ0PXB5dGhvbjMzLlB5TGlzdF9JbnNlcnQKKyAgUHlMaXN0X05ldz1weXRob24zMy5QeUxpc3RfTmV3CisgIFB5TGlzdF9SZXZlcnNlPXB5dGhvbjMzLlB5TGlzdF9SZXZlcnNlCisgIFB5TGlzdF9TZXRJdGVtPXB5dGhvbjMzLlB5TGlzdF9TZXRJdGVtCisgIFB5TGlzdF9TZXRTbGljZT1weXRob24zMy5QeUxpc3RfU2V0U2xpY2UKKyAgUHlMaXN0X1NpemU9cHl0aG9uMzMuUHlMaXN0X1NpemUKKyAgUHlMaXN0X1NvcnQ9cHl0aG9uMzMuUHlMaXN0X1NvcnQKKyAgUHlMaXN0X1R5cGU9cHl0aG9uMzMuUHlMaXN0X1R5cGUgREFUQQorICBQeUxvbmdSYW5nZUl0ZXJfVHlwZT1weXRob24zMy5QeUxvbmdSYW5nZUl0ZXJfVHlwZSBEQVRBCisgIFB5TG9uZ19Bc0RvdWJsZT1weXRob24zMy5QeUxvbmdfQXNEb3VibGUKKyAgUHlMb25nX0FzTG9uZz1weXRob24zMy5QeUxvbmdfQXNMb25nCisgIFB5TG9uZ19Bc0xvbmdBbmRPdmVyZmxvdz1weXRob24zMy5QeUxvbmdfQXNMb25nQW5kT3ZlcmZsb3cKKyAgUHlMb25nX0FzTG9uZ0xvbmc9cHl0aG9uMzMuUHlMb25nX0FzTG9uZ0xvbmcKKyAgUHlMb25nX0FzTG9uZ0xvbmdBbmRPdmVyZmxvdz1weXRob24zMy5QeUxvbmdfQXNMb25nTG9uZ0FuZE92ZXJmbG93CisgIFB5TG9uZ19Bc1NpemVfdD1weXRob24zMy5QeUxvbmdfQXNTaXplX3QKKyAgUHlMb25nX0FzU3NpemVfdD1weXRob24zMy5QeUxvbmdfQXNTc2l6ZV90CisgIFB5TG9uZ19Bc1Vuc2lnbmVkTG9uZz1weXRob24zMy5QeUxvbmdfQXNVbnNpZ25lZExvbmcKKyAgUHlMb25nX0FzVW5zaWduZWRMb25nTG9uZz1weXRob24zMy5QeUxvbmdfQXNVbnNpZ25lZExvbmdMb25nCisgIFB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ0xvbmdNYXNrPXB5dGhvbjMzLlB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ0xvbmdNYXNrCisgIFB5TG9uZ19Bc1Vuc2lnbmVkTG9uZ01hc2s9cHl0aG9uMzMuUHlMb25nX0FzVW5zaWduZWRMb25nTWFzaworICBQeUxvbmdfQXNWb2lkUHRyPXB5dGhvbjMzLlB5TG9uZ19Bc1ZvaWRQdHIKKyAgUHlMb25nX0Zyb21Eb3VibGU9cHl0aG9uMzMuUHlMb25nX0Zyb21Eb3VibGUKKyAgUHlMb25nX0Zyb21Mb25nPXB5dGhvbjMzLlB5TG9uZ19Gcm9tTG9uZworICBQeUxvbmdfRnJvbUxvbmdMb25nPXB5dGhvbjMzLlB5TG9uZ19Gcm9tTG9uZ0xvbmcKKyAgUHlMb25nX0Zyb21TaXplX3Q9cHl0aG9uMzMuUHlMb25nX0Zyb21TaXplX3QKKyAgUHlMb25nX0Zyb21Tc2l6ZV90PXB5dGhvbjMzLlB5TG9uZ19Gcm9tU3NpemVfdAorICBQeUxvbmdfRnJvbVN0cmluZz1weXRob24zMy5QeUxvbmdfRnJvbVN0cmluZworICBQeUxvbmdfRnJvbVVuc2lnbmVkTG9uZz1weXRob24zMy5QeUxvbmdfRnJvbVVuc2lnbmVkTG9uZworICBQeUxvbmdfRnJvbVVuc2lnbmVkTG9uZ0xvbmc9cHl0aG9uMzMuUHlMb25nX0Zyb21VbnNpZ25lZExvbmdMb25nCisgIFB5TG9uZ19Gcm9tVm9pZFB0cj1weXRob24zMy5QeUxvbmdfRnJvbVZvaWRQdHIKKyAgUHlMb25nX0dldEluZm89cHl0aG9uMzMuUHlMb25nX0dldEluZm8KKyAgUHlMb25nX1R5cGU9cHl0aG9uMzMuUHlMb25nX1R5cGUgREFUQQorICBQeU1hcF9UeXBlPXB5dGhvbjMzLlB5TWFwX1R5cGUgREFUQQorICBQeU1hcHBpbmdfQ2hlY2s9cHl0aG9uMzMuUHlNYXBwaW5nX0NoZWNrCisgIFB5TWFwcGluZ19HZXRJdGVtU3RyaW5nPXB5dGhvbjMzLlB5TWFwcGluZ19HZXRJdGVtU3RyaW5nCisgIFB5TWFwcGluZ19IYXNLZXk9cHl0aG9uMzMuUHlNYXBwaW5nX0hhc0tleQorICBQeU1hcHBpbmdfSGFzS2V5U3RyaW5nPXB5dGhvbjMzLlB5TWFwcGluZ19IYXNLZXlTdHJpbmcKKyAgUHlNYXBwaW5nX0l0ZW1zPXB5dGhvbjMzLlB5TWFwcGluZ19JdGVtcworICBQeU1hcHBpbmdfS2V5cz1weXRob24zMy5QeU1hcHBpbmdfS2V5cworICBQeU1hcHBpbmdfTGVuZ3RoPXB5dGhvbjMzLlB5TWFwcGluZ19MZW5ndGgKKyAgUHlNYXBwaW5nX1NldEl0ZW1TdHJpbmc9cHl0aG9uMzMuUHlNYXBwaW5nX1NldEl0ZW1TdHJpbmcKKyAgUHlNYXBwaW5nX1NpemU9cHl0aG9uMzMuUHlNYXBwaW5nX1NpemUKKyAgUHlNYXBwaW5nX1ZhbHVlcz1weXRob24zMy5QeU1hcHBpbmdfVmFsdWVzCisgIFB5TWVtX0ZyZWU9cHl0aG9uMzMuUHlNZW1fRnJlZQorICBQeU1lbV9NYWxsb2M9cHl0aG9uMzMuUHlNZW1fTWFsbG9jCisgIFB5TWVtX1JlYWxsb2M9cHl0aG9uMzMuUHlNZW1fUmVhbGxvYworICBQeU1lbWJlckRlc2NyX1R5cGU9cHl0aG9uMzMuUHlNZW1iZXJEZXNjcl9UeXBlIERBVEEKKyAgUHlNZW1vcnlWaWV3X0Zyb21PYmplY3Q9cHl0aG9uMzMuUHlNZW1vcnlWaWV3X0Zyb21PYmplY3QKKyAgUHlNZW1vcnlWaWV3X0dldENvbnRpZ3VvdXM9cHl0aG9uMzMuUHlNZW1vcnlWaWV3X0dldENvbnRpZ3VvdXMKKyAgUHlNZW1vcnlWaWV3X1R5cGU9cHl0aG9uMzMuUHlNZW1vcnlWaWV3X1R5cGUgREFUQQorICBQeU1ldGhvZERlc2NyX1R5cGU9cHl0aG9uMzMuUHlNZXRob2REZXNjcl9UeXBlIERBVEEKKyAgUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQ9cHl0aG9uMzMuUHlNb2R1bGVfQWRkSW50Q29uc3RhbnQKKyAgUHlNb2R1bGVfQWRkT2JqZWN0PXB5dGhvbjMzLlB5TW9kdWxlX0FkZE9iamVjdAorICBQeU1vZHVsZV9BZGRTdHJpbmdDb25zdGFudD1weXRob24zMy5QeU1vZHVsZV9BZGRTdHJpbmdDb25zdGFudAorICBQeU1vZHVsZV9DcmVhdGUyPXB5dGhvbjMzLlB5TW9kdWxlX0NyZWF0ZTIKKyAgUHlNb2R1bGVfR2V0RGVmPXB5dGhvbjMzLlB5TW9kdWxlX0dldERlZgorICBQeU1vZHVsZV9HZXREaWN0PXB5dGhvbjMzLlB5TW9kdWxlX0dldERpY3QKKyAgUHlNb2R1bGVfR2V0RmlsZW5hbWU9cHl0aG9uMzMuUHlNb2R1bGVfR2V0RmlsZW5hbWUKKyAgUHlNb2R1bGVfR2V0RmlsZW5hbWVPYmplY3Q9cHl0aG9uMzMuUHlNb2R1bGVfR2V0RmlsZW5hbWVPYmplY3QKKyAgUHlNb2R1bGVfR2V0TmFtZT1weXRob24zMy5QeU1vZHVsZV9HZXROYW1lCisgIFB5TW9kdWxlX0dldFN0YXRlPXB5dGhvbjMzLlB5TW9kdWxlX0dldFN0YXRlCisgIFB5TW9kdWxlX05ldz1weXRob24zMy5QeU1vZHVsZV9OZXcKKyAgUHlNb2R1bGVfVHlwZT1weXRob24zMy5QeU1vZHVsZV9UeXBlIERBVEEKKyAgUHlOdWxsSW1wb3J0ZXJfVHlwZT1weXRob24zMy5QeU51bGxJbXBvcnRlcl9UeXBlIERBVEEKKyAgUHlOdW1iZXJfQWJzb2x1dGU9cHl0aG9uMzMuUHlOdW1iZXJfQWJzb2x1dGUKKyAgUHlOdW1iZXJfQWRkPXB5dGhvbjMzLlB5TnVtYmVyX0FkZAorICBQeU51bWJlcl9BbmQ9cHl0aG9uMzMuUHlOdW1iZXJfQW5kCisgIFB5TnVtYmVyX0FzU3NpemVfdD1weXRob24zMy5QeU51bWJlcl9Bc1NzaXplX3QKKyAgUHlOdW1iZXJfQ2hlY2s9cHl0aG9uMzMuUHlOdW1iZXJfQ2hlY2sKKyAgUHlOdW1iZXJfRGl2bW9kPXB5dGhvbjMzLlB5TnVtYmVyX0Rpdm1vZAorICBQeU51bWJlcl9GbG9hdD1weXRob24zMy5QeU51bWJlcl9GbG9hdAorICBQeU51bWJlcl9GbG9vckRpdmlkZT1weXRob24zMy5QeU51bWJlcl9GbG9vckRpdmlkZQorICBQeU51bWJlcl9JblBsYWNlQWRkPXB5dGhvbjMzLlB5TnVtYmVyX0luUGxhY2VBZGQKKyAgUHlOdW1iZXJfSW5QbGFjZUFuZD1weXRob24zMy5QeU51bWJlcl9JblBsYWNlQW5kCisgIFB5TnVtYmVyX0luUGxhY2VGbG9vckRpdmlkZT1weXRob24zMy5QeU51bWJlcl9JblBsYWNlRmxvb3JEaXZpZGUKKyAgUHlOdW1iZXJfSW5QbGFjZUxzaGlmdD1weXRob24zMy5QeU51bWJlcl9JblBsYWNlTHNoaWZ0CisgIFB5TnVtYmVyX0luUGxhY2VNdWx0aXBseT1weXRob24zMy5QeU51bWJlcl9JblBsYWNlTXVsdGlwbHkKKyAgUHlOdW1iZXJfSW5QbGFjZU9yPXB5dGhvbjMzLlB5TnVtYmVyX0luUGxhY2VPcgorICBQeU51bWJlcl9JblBsYWNlUG93ZXI9cHl0aG9uMzMuUHlOdW1iZXJfSW5QbGFjZVBvd2VyCisgIFB5TnVtYmVyX0luUGxhY2VSZW1haW5kZXI9cHl0aG9uMzMuUHlOdW1iZXJfSW5QbGFjZVJlbWFpbmRlcgorICBQeU51bWJlcl9JblBsYWNlUnNoaWZ0PXB5dGhvbjMzLlB5TnVtYmVyX0luUGxhY2VSc2hpZnQKKyAgUHlOdW1iZXJfSW5QbGFjZVN1YnRyYWN0PXB5dGhvbjMzLlB5TnVtYmVyX0luUGxhY2VTdWJ0cmFjdAorICBQeU51bWJlcl9JblBsYWNlVHJ1ZURpdmlkZT1weXRob24zMy5QeU51bWJlcl9JblBsYWNlVHJ1ZURpdmlkZQorICBQeU51bWJlcl9JblBsYWNlWG9yPXB5dGhvbjMzLlB5TnVtYmVyX0luUGxhY2VYb3IKKyAgUHlOdW1iZXJfSW5kZXg9cHl0aG9uMzMuUHlOdW1iZXJfSW5kZXgKKyAgUHlOdW1iZXJfSW52ZXJ0PXB5dGhvbjMzLlB5TnVtYmVyX0ludmVydAorICBQeU51bWJlcl9Mb25nPXB5dGhvbjMzLlB5TnVtYmVyX0xvbmcKKyAgUHlOdW1iZXJfTHNoaWZ0PXB5dGhvbjMzLlB5TnVtYmVyX0xzaGlmdAorICBQeU51bWJlcl9NdWx0aXBseT1weXRob24zMy5QeU51bWJlcl9NdWx0aXBseQorICBQeU51bWJlcl9OZWdhdGl2ZT1weXRob24zMy5QeU51bWJlcl9OZWdhdGl2ZQorICBQeU51bWJlcl9Pcj1weXRob24zMy5QeU51bWJlcl9PcgorICBQeU51bWJlcl9Qb3NpdGl2ZT1weXRob24zMy5QeU51bWJlcl9Qb3NpdGl2ZQorICBQeU51bWJlcl9Qb3dlcj1weXRob24zMy5QeU51bWJlcl9Qb3dlcgorICBQeU51bWJlcl9SZW1haW5kZXI9cHl0aG9uMzMuUHlOdW1iZXJfUmVtYWluZGVyCisgIFB5TnVtYmVyX1JzaGlmdD1weXRob24zMy5QeU51bWJlcl9Sc2hpZnQKKyAgUHlOdW1iZXJfU3VidHJhY3Q9cHl0aG9uMzMuUHlOdW1iZXJfU3VidHJhY3QKKyAgUHlOdW1iZXJfVG9CYXNlPXB5dGhvbjMzLlB5TnVtYmVyX1RvQmFzZQorICBQeU51bWJlcl9UcnVlRGl2aWRlPXB5dGhvbjMzLlB5TnVtYmVyX1RydWVEaXZpZGUKKyAgUHlOdW1iZXJfWG9yPXB5dGhvbjMzLlB5TnVtYmVyX1hvcgorICBQeU9TX0FmdGVyRm9yaz1weXRob24zMy5QeU9TX0FmdGVyRm9yaworICBQeU9TX0luaXRJbnRlcnJ1cHRzPXB5dGhvbjMzLlB5T1NfSW5pdEludGVycnVwdHMKKyAgUHlPU19JbnB1dEhvb2s9cHl0aG9uMzMuUHlPU19JbnB1dEhvb2sgREFUQQorICBQeU9TX0ludGVycnVwdE9jY3VycmVkPXB5dGhvbjMzLlB5T1NfSW50ZXJydXB0T2NjdXJyZWQKKyAgUHlPU19SZWFkbGluZUZ1bmN0aW9uUG9pbnRlcj1weXRob24zMy5QeU9TX1JlYWRsaW5lRnVuY3Rpb25Qb2ludGVyIERBVEEKKyAgUHlPU19kb3VibGVfdG9fc3RyaW5nPXB5dGhvbjMzLlB5T1NfZG91YmxlX3RvX3N0cmluZworICBQeU9TX2dldHNpZz1weXRob24zMy5QeU9TX2dldHNpZworICBQeU9TX215c3RyaWNtcD1weXRob24zMy5QeU9TX215c3RyaWNtcAorICBQeU9TX215c3RybmljbXA9cHl0aG9uMzMuUHlPU19teXN0cm5pY21wCisgIFB5T1Nfc2V0c2lnPXB5dGhvbjMzLlB5T1Nfc2V0c2lnCisgIFB5T1Nfc25wcmludGY9cHl0aG9uMzMuUHlPU19zbnByaW50ZgorICBQeU9TX3N0cmluZ190b19kb3VibGU9cHl0aG9uMzMuUHlPU19zdHJpbmdfdG9fZG91YmxlCisgIFB5T1Nfc3RydG9sPXB5dGhvbjMzLlB5T1Nfc3RydG9sCisgIFB5T1Nfc3RydG91bD1weXRob24zMy5QeU9TX3N0cnRvdWwKKyAgUHlPU192c25wcmludGY9cHl0aG9uMzMuUHlPU192c25wcmludGYKKyAgUHlPYmplY3RfQVNDSUk9cHl0aG9uMzMuUHlPYmplY3RfQVNDSUkKKyAgUHlPYmplY3RfQXNDaGFyQnVmZmVyPXB5dGhvbjMzLlB5T2JqZWN0X0FzQ2hhckJ1ZmZlcgorICBQeU9iamVjdF9Bc0ZpbGVEZXNjcmlwdG9yPXB5dGhvbjMzLlB5T2JqZWN0X0FzRmlsZURlc2NyaXB0b3IKKyAgUHlPYmplY3RfQXNSZWFkQnVmZmVyPXB5dGhvbjMzLlB5T2JqZWN0X0FzUmVhZEJ1ZmZlcgorICBQeU9iamVjdF9Bc1dyaXRlQnVmZmVyPXB5dGhvbjMzLlB5T2JqZWN0X0FzV3JpdGVCdWZmZXIKKyAgUHlPYmplY3RfQnl0ZXM9cHl0aG9uMzMuUHlPYmplY3RfQnl0ZXMKKyAgUHlPYmplY3RfQ2FsbD1weXRob24zMy5QeU9iamVjdF9DYWxsCisgIFB5T2JqZWN0X0NhbGxGdW5jdGlvbj1weXRob24zMy5QeU9iamVjdF9DYWxsRnVuY3Rpb24KKyAgUHlPYmplY3RfQ2FsbEZ1bmN0aW9uT2JqQXJncz1weXRob24zMy5QeU9iamVjdF9DYWxsRnVuY3Rpb25PYmpBcmdzCisgIFB5T2JqZWN0X0NhbGxNZXRob2Q9cHl0aG9uMzMuUHlPYmplY3RfQ2FsbE1ldGhvZAorICBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncz1weXRob24zMy5QeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncworICBQeU9iamVjdF9DYWxsT2JqZWN0PXB5dGhvbjMzLlB5T2JqZWN0X0NhbGxPYmplY3QKKyAgUHlPYmplY3RfQ2hlY2tSZWFkQnVmZmVyPXB5dGhvbjMzLlB5T2JqZWN0X0NoZWNrUmVhZEJ1ZmZlcgorICBQeU9iamVjdF9DbGVhcldlYWtSZWZzPXB5dGhvbjMzLlB5T2JqZWN0X0NsZWFyV2Vha1JlZnMKKyAgUHlPYmplY3RfRGVsSXRlbT1weXRob24zMy5QeU9iamVjdF9EZWxJdGVtCisgIFB5T2JqZWN0X0RlbEl0ZW1TdHJpbmc9cHl0aG9uMzMuUHlPYmplY3RfRGVsSXRlbVN0cmluZworICBQeU9iamVjdF9EaXI9cHl0aG9uMzMuUHlPYmplY3RfRGlyCisgIFB5T2JqZWN0X0Zvcm1hdD1weXRob24zMy5QeU9iamVjdF9Gb3JtYXQKKyAgUHlPYmplY3RfRnJlZT1weXRob24zMy5QeU9iamVjdF9GcmVlCisgIFB5T2JqZWN0X0dDX0RlbD1weXRob24zMy5QeU9iamVjdF9HQ19EZWwKKyAgUHlPYmplY3RfR0NfVHJhY2s9cHl0aG9uMzMuUHlPYmplY3RfR0NfVHJhY2sKKyAgUHlPYmplY3RfR0NfVW5UcmFjaz1weXRob24zMy5QeU9iamVjdF9HQ19VblRyYWNrCisgIFB5T2JqZWN0X0dlbmVyaWNHZXRBdHRyPXB5dGhvbjMzLlB5T2JqZWN0X0dlbmVyaWNHZXRBdHRyCisgIFB5T2JqZWN0X0dlbmVyaWNTZXRBdHRyPXB5dGhvbjMzLlB5T2JqZWN0X0dlbmVyaWNTZXRBdHRyCisgIFB5T2JqZWN0X0dldEF0dHI9cHl0aG9uMzMuUHlPYmplY3RfR2V0QXR0cgorICBQeU9iamVjdF9HZXRBdHRyU3RyaW5nPXB5dGhvbjMzLlB5T2JqZWN0X0dldEF0dHJTdHJpbmcKKyAgUHlPYmplY3RfR2V0SXRlbT1weXRob24zMy5QeU9iamVjdF9HZXRJdGVtCisgIFB5T2JqZWN0X0dldEl0ZXI9cHl0aG9uMzMuUHlPYmplY3RfR2V0SXRlcgorICBQeU9iamVjdF9IYXNBdHRyPXB5dGhvbjMzLlB5T2JqZWN0X0hhc0F0dHIKKyAgUHlPYmplY3RfSGFzQXR0clN0cmluZz1weXRob24zMy5QeU9iamVjdF9IYXNBdHRyU3RyaW5nCisgIFB5T2JqZWN0X0hhc2g9cHl0aG9uMzMuUHlPYmplY3RfSGFzaAorICBQeU9iamVjdF9IYXNoTm90SW1wbGVtZW50ZWQ9cHl0aG9uMzMuUHlPYmplY3RfSGFzaE5vdEltcGxlbWVudGVkCisgIFB5T2JqZWN0X0luaXQ9cHl0aG9uMzMuUHlPYmplY3RfSW5pdAorICBQeU9iamVjdF9Jbml0VmFyPXB5dGhvbjMzLlB5T2JqZWN0X0luaXRWYXIKKyAgUHlPYmplY3RfSXNJbnN0YW5jZT1weXRob24zMy5QeU9iamVjdF9Jc0luc3RhbmNlCisgIFB5T2JqZWN0X0lzU3ViY2xhc3M9cHl0aG9uMzMuUHlPYmplY3RfSXNTdWJjbGFzcworICBQeU9iamVjdF9Jc1RydWU9cHl0aG9uMzMuUHlPYmplY3RfSXNUcnVlCisgIFB5T2JqZWN0X0xlbmd0aD1weXRob24zMy5QeU9iamVjdF9MZW5ndGgKKyAgUHlPYmplY3RfTWFsbG9jPXB5dGhvbjMzLlB5T2JqZWN0X01hbGxvYworICBQeU9iamVjdF9Ob3Q9cHl0aG9uMzMuUHlPYmplY3RfTm90CisgIFB5T2JqZWN0X1JlYWxsb2M9cHl0aG9uMzMuUHlPYmplY3RfUmVhbGxvYworICBQeU9iamVjdF9SZXByPXB5dGhvbjMzLlB5T2JqZWN0X1JlcHIKKyAgUHlPYmplY3RfUmljaENvbXBhcmU9cHl0aG9uMzMuUHlPYmplY3RfUmljaENvbXBhcmUKKyAgUHlPYmplY3RfUmljaENvbXBhcmVCb29sPXB5dGhvbjMzLlB5T2JqZWN0X1JpY2hDb21wYXJlQm9vbAorICBQeU9iamVjdF9TZWxmSXRlcj1weXRob24zMy5QeU9iamVjdF9TZWxmSXRlcgorICBQeU9iamVjdF9TZXRBdHRyPXB5dGhvbjMzLlB5T2JqZWN0X1NldEF0dHIKKyAgUHlPYmplY3RfU2V0QXR0clN0cmluZz1weXRob24zMy5QeU9iamVjdF9TZXRBdHRyU3RyaW5nCisgIFB5T2JqZWN0X1NldEl0ZW09cHl0aG9uMzMuUHlPYmplY3RfU2V0SXRlbQorICBQeU9iamVjdF9TaXplPXB5dGhvbjMzLlB5T2JqZWN0X1NpemUKKyAgUHlPYmplY3RfU3RyPXB5dGhvbjMzLlB5T2JqZWN0X1N0cgorICBQeU9iamVjdF9UeXBlPXB5dGhvbjMzLlB5T2JqZWN0X1R5cGUgREFUQQorICBQeVBhcnNlcl9TaW1wbGVQYXJzZUZpbGVGbGFncz1weXRob24zMy5QeVBhcnNlcl9TaW1wbGVQYXJzZUZpbGVGbGFncworICBQeVBhcnNlcl9TaW1wbGVQYXJzZVN0cmluZ0ZsYWdzPXB5dGhvbjMzLlB5UGFyc2VyX1NpbXBsZVBhcnNlU3RyaW5nRmxhZ3MKKyAgUHlQcm9wZXJ0eV9UeXBlPXB5dGhvbjMzLlB5UHJvcGVydHlfVHlwZSBEQVRBCisgIFB5UmFuZ2VJdGVyX1R5cGU9cHl0aG9uMzMuUHlSYW5nZUl0ZXJfVHlwZSBEQVRBCisgIFB5UmFuZ2VfVHlwZT1weXRob24zMy5QeVJhbmdlX1R5cGUgREFUQQorICBQeVJldmVyc2VkX1R5cGU9cHl0aG9uMzMuUHlSZXZlcnNlZF9UeXBlIERBVEEKKyAgUHlTZXFJdGVyX05ldz1weXRob24zMy5QeVNlcUl0ZXJfTmV3CisgIFB5U2VxSXRlcl9UeXBlPXB5dGhvbjMzLlB5U2VxSXRlcl9UeXBlIERBVEEKKyAgUHlTZXF1ZW5jZV9DaGVjaz1weXRob24zMy5QeVNlcXVlbmNlX0NoZWNrCisgIFB5U2VxdWVuY2VfQ29uY2F0PXB5dGhvbjMzLlB5U2VxdWVuY2VfQ29uY2F0CisgIFB5U2VxdWVuY2VfQ29udGFpbnM9cHl0aG9uMzMuUHlTZXF1ZW5jZV9Db250YWlucworICBQeVNlcXVlbmNlX0NvdW50PXB5dGhvbjMzLlB5U2VxdWVuY2VfQ291bnQKKyAgUHlTZXF1ZW5jZV9EZWxJdGVtPXB5dGhvbjMzLlB5U2VxdWVuY2VfRGVsSXRlbQorICBQeVNlcXVlbmNlX0RlbFNsaWNlPXB5dGhvbjMzLlB5U2VxdWVuY2VfRGVsU2xpY2UKKyAgUHlTZXF1ZW5jZV9GYXN0PXB5dGhvbjMzLlB5U2VxdWVuY2VfRmFzdAorICBQeVNlcXVlbmNlX0dldEl0ZW09cHl0aG9uMzMuUHlTZXF1ZW5jZV9HZXRJdGVtCisgIFB5U2VxdWVuY2VfR2V0U2xpY2U9cHl0aG9uMzMuUHlTZXF1ZW5jZV9HZXRTbGljZQorICBQeVNlcXVlbmNlX0luPXB5dGhvbjMzLlB5U2VxdWVuY2VfSW4KKyAgUHlTZXF1ZW5jZV9JblBsYWNlQ29uY2F0PXB5dGhvbjMzLlB5U2VxdWVuY2VfSW5QbGFjZUNvbmNhdAorICBQeVNlcXVlbmNlX0luUGxhY2VSZXBlYXQ9cHl0aG9uMzMuUHlTZXF1ZW5jZV9JblBsYWNlUmVwZWF0CisgIFB5U2VxdWVuY2VfSW5kZXg9cHl0aG9uMzMuUHlTZXF1ZW5jZV9JbmRleAorICBQeVNlcXVlbmNlX0xlbmd0aD1weXRob24zMy5QeVNlcXVlbmNlX0xlbmd0aAorICBQeVNlcXVlbmNlX0xpc3Q9cHl0aG9uMzMuUHlTZXF1ZW5jZV9MaXN0CisgIFB5U2VxdWVuY2VfUmVwZWF0PXB5dGhvbjMzLlB5U2VxdWVuY2VfUmVwZWF0CisgIFB5U2VxdWVuY2VfU2V0SXRlbT1weXRob24zMy5QeVNlcXVlbmNlX1NldEl0ZW0KKyAgUHlTZXF1ZW5jZV9TZXRTbGljZT1weXRob24zMy5QeVNlcXVlbmNlX1NldFNsaWNlCisgIFB5U2VxdWVuY2VfU2l6ZT1weXRob24zMy5QeVNlcXVlbmNlX1NpemUKKyAgUHlTZXF1ZW5jZV9UdXBsZT1weXRob24zMy5QeVNlcXVlbmNlX1R1cGxlCisgIFB5U2V0SXRlcl9UeXBlPXB5dGhvbjMzLlB5U2V0SXRlcl9UeXBlIERBVEEKKyAgUHlTZXRfQWRkPXB5dGhvbjMzLlB5U2V0X0FkZAorICBQeVNldF9DbGVhcj1weXRob24zMy5QeVNldF9DbGVhcgorICBQeVNldF9Db250YWlucz1weXRob24zMy5QeVNldF9Db250YWlucworICBQeVNldF9EaXNjYXJkPXB5dGhvbjMzLlB5U2V0X0Rpc2NhcmQKKyAgUHlTZXRfTmV3PXB5dGhvbjMzLlB5U2V0X05ldworICBQeVNldF9Qb3A9cHl0aG9uMzMuUHlTZXRfUG9wCisgIFB5U2V0X1NpemU9cHl0aG9uMzMuUHlTZXRfU2l6ZQorICBQeVNldF9UeXBlPXB5dGhvbjMzLlB5U2V0X1R5cGUgREFUQQorICBQeVNsaWNlX0dldEluZGljZXM9cHl0aG9uMzMuUHlTbGljZV9HZXRJbmRpY2VzCisgIFB5U2xpY2VfR2V0SW5kaWNlc0V4PXB5dGhvbjMzLlB5U2xpY2VfR2V0SW5kaWNlc0V4CisgIFB5U2xpY2VfTmV3PXB5dGhvbjMzLlB5U2xpY2VfTmV3CisgIFB5U2xpY2VfVHlwZT1weXRob24zMy5QeVNsaWNlX1R5cGUgREFUQQorICBQeVNvcnRXcmFwcGVyX1R5cGU9cHl0aG9uMzMuUHlTb3J0V3JhcHBlcl9UeXBlIERBVEEKKyAgUHlTdGF0ZV9GaW5kTW9kdWxlPXB5dGhvbjMzLlB5U3RhdGVfRmluZE1vZHVsZQorICBQeVN0cnVjdFNlcXVlbmNlX0dldEl0ZW09cHl0aG9uMzMuUHlTdHJ1Y3RTZXF1ZW5jZV9HZXRJdGVtCisgIFB5U3RydWN0U2VxdWVuY2VfTmV3PXB5dGhvbjMzLlB5U3RydWN0U2VxdWVuY2VfTmV3CisgIFB5U3RydWN0U2VxdWVuY2VfTmV3VHlwZT1weXRob24zMy5QeVN0cnVjdFNlcXVlbmNlX05ld1R5cGUKKyAgUHlTdHJ1Y3RTZXF1ZW5jZV9TZXRJdGVtPXB5dGhvbjMzLlB5U3RydWN0U2VxdWVuY2VfU2V0SXRlbQorICBQeVN1cGVyX1R5cGU9cHl0aG9uMzMuUHlTdXBlcl9UeXBlIERBVEEKKyAgUHlTeXNfQWRkV2Fybk9wdGlvbj1weXRob24zMy5QeVN5c19BZGRXYXJuT3B0aW9uCisgIFB5U3lzX0FkZFdhcm5PcHRpb25Vbmljb2RlPXB5dGhvbjMzLlB5U3lzX0FkZFdhcm5PcHRpb25Vbmljb2RlCisgIFB5U3lzX0Zvcm1hdFN0ZGVycj1weXRob24zMy5QeVN5c19Gb3JtYXRTdGRlcnIKKyAgUHlTeXNfRm9ybWF0U3Rkb3V0PXB5dGhvbjMzLlB5U3lzX0Zvcm1hdFN0ZG91dAorICBQeVN5c19HZXRPYmplY3Q9cHl0aG9uMzMuUHlTeXNfR2V0T2JqZWN0CisgIFB5U3lzX0hhc1dhcm5PcHRpb25zPXB5dGhvbjMzLlB5U3lzX0hhc1dhcm5PcHRpb25zCisgIFB5U3lzX1Jlc2V0V2Fybk9wdGlvbnM9cHl0aG9uMzMuUHlTeXNfUmVzZXRXYXJuT3B0aW9ucworICBQeVN5c19TZXRBcmd2PXB5dGhvbjMzLlB5U3lzX1NldEFyZ3YKKyAgUHlTeXNfU2V0QXJndkV4PXB5dGhvbjMzLlB5U3lzX1NldEFyZ3ZFeAorICBQeVN5c19TZXRPYmplY3Q9cHl0aG9uMzMuUHlTeXNfU2V0T2JqZWN0CisgIFB5U3lzX1NldFBhdGg9cHl0aG9uMzMuUHlTeXNfU2V0UGF0aAorICBQeVN5c19Xcml0ZVN0ZGVycj1weXRob24zMy5QeVN5c19Xcml0ZVN0ZGVycgorICBQeVN5c19Xcml0ZVN0ZG91dD1weXRob24zMy5QeVN5c19Xcml0ZVN0ZG91dAorICBQeVRocmVhZFN0YXRlX0NsZWFyPXB5dGhvbjMzLlB5VGhyZWFkU3RhdGVfQ2xlYXIKKyAgUHlUaHJlYWRTdGF0ZV9EZWxldGU9cHl0aG9uMzMuUHlUaHJlYWRTdGF0ZV9EZWxldGUKKyAgUHlUaHJlYWRTdGF0ZV9EZWxldGVDdXJyZW50PXB5dGhvbjMzLlB5VGhyZWFkU3RhdGVfRGVsZXRlQ3VycmVudAorICBQeVRocmVhZFN0YXRlX0dldD1weXRob24zMy5QeVRocmVhZFN0YXRlX0dldAorICBQeVRocmVhZFN0YXRlX0dldERpY3Q9cHl0aG9uMzMuUHlUaHJlYWRTdGF0ZV9HZXREaWN0CisgIFB5VGhyZWFkU3RhdGVfTmV3PXB5dGhvbjMzLlB5VGhyZWFkU3RhdGVfTmV3CisgIFB5VGhyZWFkU3RhdGVfU2V0QXN5bmNFeGM9cHl0aG9uMzMuUHlUaHJlYWRTdGF0ZV9TZXRBc3luY0V4YworICBQeVRocmVhZFN0YXRlX1N3YXA9cHl0aG9uMzMuUHlUaHJlYWRTdGF0ZV9Td2FwCisgIFB5VHJhY2VCYWNrX0hlcmU9cHl0aG9uMzMuUHlUcmFjZUJhY2tfSGVyZQorICBQeVRyYWNlQmFja19QcmludD1weXRob24zMy5QeVRyYWNlQmFja19QcmludAorICBQeVRyYWNlQmFja19UeXBlPXB5dGhvbjMzLlB5VHJhY2VCYWNrX1R5cGUgREFUQQorICBQeVR1cGxlSXRlcl9UeXBlPXB5dGhvbjMzLlB5VHVwbGVJdGVyX1R5cGUgREFUQQorICBQeVR1cGxlX0NsZWFyRnJlZUxpc3Q9cHl0aG9uMzMuUHlUdXBsZV9DbGVhckZyZWVMaXN0CisgIFB5VHVwbGVfR2V0SXRlbT1weXRob24zMy5QeVR1cGxlX0dldEl0ZW0KKyAgUHlUdXBsZV9HZXRTbGljZT1weXRob24zMy5QeVR1cGxlX0dldFNsaWNlCisgIFB5VHVwbGVfTmV3PXB5dGhvbjMzLlB5VHVwbGVfTmV3CisgIFB5VHVwbGVfUGFjaz1weXRob24zMy5QeVR1cGxlX1BhY2sKKyAgUHlUdXBsZV9TZXRJdGVtPXB5dGhvbjMzLlB5VHVwbGVfU2V0SXRlbQorICBQeVR1cGxlX1NpemU9cHl0aG9uMzMuUHlUdXBsZV9TaXplCisgIFB5VHVwbGVfVHlwZT1weXRob24zMy5QeVR1cGxlX1R5cGUgREFUQQorICBQeVR5cGVfQ2xlYXJDYWNoZT1weXRob24zMy5QeVR5cGVfQ2xlYXJDYWNoZQorICBQeVR5cGVfRnJvbVNwZWM9cHl0aG9uMzMuUHlUeXBlX0Zyb21TcGVjCisgIFB5VHlwZV9HZW5lcmljQWxsb2M9cHl0aG9uMzMuUHlUeXBlX0dlbmVyaWNBbGxvYworICBQeVR5cGVfR2VuZXJpY05ldz1weXRob24zMy5QeVR5cGVfR2VuZXJpY05ldworICBQeVR5cGVfR2V0RmxhZ3M9cHl0aG9uMzMuUHlUeXBlX0dldEZsYWdzCisgIFB5VHlwZV9Jc1N1YnR5cGU9cHl0aG9uMzMuUHlUeXBlX0lzU3VidHlwZQorICBQeVR5cGVfTW9kaWZpZWQ9cHl0aG9uMzMuUHlUeXBlX01vZGlmaWVkCisgIFB5VHlwZV9SZWFkeT1weXRob24zMy5QeVR5cGVfUmVhZHkKKyAgUHlUeXBlX1R5cGU9cHl0aG9uMzMuUHlUeXBlX1R5cGUgREFUQQorICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9DcmVhdGU9cHl0aG9uMzMuUHlVbmljb2RlRGVjb2RlRXJyb3JfQ3JlYXRlCisgIFB5VW5pY29kZURlY29kZUVycm9yX0dldEVuY29kaW5nPXB5dGhvbjMzLlB5VW5pY29kZURlY29kZUVycm9yX0dldEVuY29kaW5nCisgIFB5VW5pY29kZURlY29kZUVycm9yX0dldEVuZD1weXRob24zMy5QeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRFbmQKKyAgUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0T2JqZWN0PXB5dGhvbjMzLlB5VW5pY29kZURlY29kZUVycm9yX0dldE9iamVjdAorICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRSZWFzb249cHl0aG9uMzMuUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0UmVhc29uCisgIFB5VW5pY29kZURlY29kZUVycm9yX0dldFN0YXJ0PXB5dGhvbjMzLlB5VW5pY29kZURlY29kZUVycm9yX0dldFN0YXJ0CisgIFB5VW5pY29kZURlY29kZUVycm9yX1NldEVuZD1weXRob24zMy5QeVVuaWNvZGVEZWNvZGVFcnJvcl9TZXRFbmQKKyAgUHlVbmljb2RlRGVjb2RlRXJyb3JfU2V0UmVhc29uPXB5dGhvbjMzLlB5VW5pY29kZURlY29kZUVycm9yX1NldFJlYXNvbgorICBQeVVuaWNvZGVEZWNvZGVFcnJvcl9TZXRTdGFydD1weXRob24zMy5QeVVuaWNvZGVEZWNvZGVFcnJvcl9TZXRTdGFydAorICBQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRFbmNvZGluZz1weXRob24zMy5QeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRFbmNvZGluZworICBQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRFbmQ9cHl0aG9uMzMuUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5kCisgIFB5VW5pY29kZUVuY29kZUVycm9yX0dldE9iamVjdD1weXRob24zMy5QeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRPYmplY3QKKyAgUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0UmVhc29uPXB5dGhvbjMzLlB5VW5pY29kZUVuY29kZUVycm9yX0dldFJlYXNvbgorICBQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRTdGFydD1weXRob24zMy5QeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRTdGFydAorICBQeVVuaWNvZGVFbmNvZGVFcnJvcl9TZXRFbmQ9cHl0aG9uMzMuUHlVbmljb2RlRW5jb2RlRXJyb3JfU2V0RW5kCisgIFB5VW5pY29kZUVuY29kZUVycm9yX1NldFJlYXNvbj1weXRob24zMy5QeVVuaWNvZGVFbmNvZGVFcnJvcl9TZXRSZWFzb24KKyAgUHlVbmljb2RlRW5jb2RlRXJyb3JfU2V0U3RhcnQ9cHl0aG9uMzMuUHlVbmljb2RlRW5jb2RlRXJyb3JfU2V0U3RhcnQKKyAgUHlVbmljb2RlSXRlcl9UeXBlPXB5dGhvbjMzLlB5VW5pY29kZUl0ZXJfVHlwZSBEQVRBCisgIFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldEVuZD1weXRob24zMy5QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRFbmQKKyAgUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0T2JqZWN0PXB5dGhvbjMzLlB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldE9iamVjdAorICBQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9HZXRSZWFzb249cHl0aG9uMzMuUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0UmVhc29uCisgIFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldFN0YXJ0PXB5dGhvbjMzLlB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldFN0YXJ0CisgIFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX1NldEVuZD1weXRob24zMy5QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9TZXRFbmQKKyAgUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfU2V0UmVhc29uPXB5dGhvbjMzLlB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX1NldFJlYXNvbgorICBQeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9TZXRTdGFydD1weXRob24zMy5QeVVuaWNvZGVUcmFuc2xhdGVFcnJvcl9TZXRTdGFydAorICBQeVVuaWNvZGVfQXBwZW5kPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXBwZW5kCisgIFB5VW5pY29kZV9BcHBlbmRBbmREZWw9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9BcHBlbmRBbmREZWwKKyAgUHlVbmljb2RlX0FzQVNDSUlTdHJpbmc9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Bc0FTQ0lJU3RyaW5nCisgIFB5VW5pY29kZV9Bc0NoYXJtYXBTdHJpbmc9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Bc0NoYXJtYXBTdHJpbmcKKyAgUHlVbmljb2RlX0FzRGVjb2RlZE9iamVjdD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzRGVjb2RlZE9iamVjdAorICBQeVVuaWNvZGVfQXNEZWNvZGVkVW5pY29kZT1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzRGVjb2RlZFVuaWNvZGUKKyAgUHlVbmljb2RlX0FzRW5jb2RlZE9iamVjdD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzRW5jb2RlZE9iamVjdAorICBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXNFbmNvZGVkU3RyaW5nCisgIFB5VW5pY29kZV9Bc0VuY29kZWRVbmljb2RlPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXNFbmNvZGVkVW5pY29kZQorICBQeVVuaWNvZGVfQXNMYXRpbjFTdHJpbmc9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Bc0xhdGluMVN0cmluZworICBQeVVuaWNvZGVfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXNSYXdVbmljb2RlRXNjYXBlU3RyaW5nCisgIFB5VW5pY29kZV9Bc1VURjE2U3RyaW5nPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXNVVEYxNlN0cmluZworICBQeVVuaWNvZGVfQXNVVEYzMlN0cmluZz1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzVVRGMzJTdHJpbmcKKyAgUHlVbmljb2RlX0FzVVRGOFN0cmluZz1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0FzVVRGOFN0cmluZworICBQeVVuaWNvZGVfQXNVbmljb2RlRXNjYXBlU3RyaW5nPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXNVbmljb2RlRXNjYXBlU3RyaW5nCisgIFB5VW5pY29kZV9Bc1dpZGVDaGFyPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQXNXaWRlQ2hhcgorICBQeVVuaWNvZGVfQ2xlYXJGcmVlbGlzdD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0NsZWFyRnJlZWxpc3QKKyAgUHlVbmljb2RlX0NvbXBhcmU9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Db21wYXJlCisgIFB5VW5pY29kZV9Db25jYXQ9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Db25jYXQKKyAgUHlVbmljb2RlX0NvbnRhaW5zPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQ29udGFpbnMKKyAgUHlVbmljb2RlX0NvdW50PXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfQ291bnQKKyAgUHlVbmljb2RlX0RlY29kZT1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZQorICBQeVVuaWNvZGVfRGVjb2RlQVNDSUk9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVBU0NJSQorICBQeVVuaWNvZGVfRGVjb2RlQ2hhcm1hcD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZUNoYXJtYXAKKyAgUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZUZTRGVmYXVsdAorICBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZT1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZUZTRGVmYXVsdEFuZFNpemUKKyAgUHlVbmljb2RlX0RlY29kZUxhdGluMT1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZUxhdGluMQorICBQeVVuaWNvZGVfRGVjb2RlUmF3VW5pY29kZUVzY2FwZT1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZVJhd1VuaWNvZGVFc2NhcGUKKyAgUHlVbmljb2RlX0RlY29kZVVURjE2PXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRGVjb2RlVVRGMTYKKyAgUHlVbmljb2RlX0RlY29kZVVURjE2U3RhdGVmdWw9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9EZWNvZGVVVEYxNlN0YXRlZnVsCisgIFB5VW5pY29kZV9EZWNvZGVVVEYzMj1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZVVURjMyCisgIFB5VW5pY29kZV9EZWNvZGVVVEYzMlN0YXRlZnVsPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRGVjb2RlVVRGMzJTdGF0ZWZ1bAorICBQeVVuaWNvZGVfRGVjb2RlVVRGOD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZVVURjgKKyAgUHlVbmljb2RlX0RlY29kZVVURjhTdGF0ZWZ1bD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZVVURjhTdGF0ZWZ1bAorICBQeVVuaWNvZGVfRGVjb2RlVW5pY29kZUVzY2FwZT1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0RlY29kZVVuaWNvZGVFc2NhcGUKKyAgUHlVbmljb2RlX0ZTQ29udmVydGVyPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRlNDb252ZXJ0ZXIKKyAgUHlVbmljb2RlX0ZTRGVjb2Rlcj1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0ZTRGVjb2RlcgorICBQeVVuaWNvZGVfRmluZD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0ZpbmQKKyAgUHlVbmljb2RlX0Zvcm1hdD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0Zvcm1hdAorICBQeVVuaWNvZGVfRnJvbUVuY29kZWRPYmplY3Q9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Gcm9tRW5jb2RlZE9iamVjdAorICBQeVVuaWNvZGVfRnJvbUZvcm1hdD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0Zyb21Gb3JtYXQKKyAgUHlVbmljb2RlX0Zyb21Gb3JtYXRWPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRnJvbUZvcm1hdFYKKyAgUHlVbmljb2RlX0Zyb21PYmplY3Q9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Gcm9tT2JqZWN0CisgIFB5VW5pY29kZV9Gcm9tT3JkaW5hbD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX0Zyb21PcmRpbmFsCisgIFB5VW5pY29kZV9Gcm9tU3RyaW5nPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRnJvbVN0cmluZworICBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemU9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Gcm9tU3RyaW5nQW5kU2l6ZQorICBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfRnJvbVdpZGVDaGFyCisgIFB5VW5pY29kZV9HZXREZWZhdWx0RW5jb2Rpbmc9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9HZXREZWZhdWx0RW5jb2RpbmcKKyAgUHlVbmljb2RlX0dldFNpemU9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9HZXRTaXplCisgIFB5VW5pY29kZV9Jc0lkZW50aWZpZXI9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Jc0lkZW50aWZpZXIKKyAgUHlVbmljb2RlX0pvaW49cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9Kb2luCisgIFB5VW5pY29kZV9QYXJ0aXRpb249cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9QYXJ0aXRpb24KKyAgUHlVbmljb2RlX1JQYXJ0aXRpb249cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9SUGFydGl0aW9uCisgIFB5VW5pY29kZV9SU3BsaXQ9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9SU3BsaXQKKyAgUHlVbmljb2RlX1JlcGxhY2U9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9SZXBsYWNlCisgIFB5VW5pY29kZV9SZXNpemU9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9SZXNpemUKKyAgUHlVbmljb2RlX1JpY2hDb21wYXJlPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfUmljaENvbXBhcmUKKyAgUHlVbmljb2RlX1NldERlZmF1bHRFbmNvZGluZz1weXRob24zMy5QeVVuaWNvZGVVQ1MyX1NldERlZmF1bHRFbmNvZGluZworICBQeVVuaWNvZGVfU3BsaXQ9cHl0aG9uMzMuUHlVbmljb2RlVUNTMl9TcGxpdAorICBQeVVuaWNvZGVfU3BsaXRsaW5lcz1weXRob24zMy5QeVVuaWNvZGVVQ1MyX1NwbGl0bGluZXMKKyAgUHlVbmljb2RlX1RhaWxtYXRjaD1weXRob24zMy5QeVVuaWNvZGVVQ1MyX1RhaWxtYXRjaAorICBQeVVuaWNvZGVfVHJhbnNsYXRlPXB5dGhvbjMzLlB5VW5pY29kZVVDUzJfVHJhbnNsYXRlCisgIFB5VW5pY29kZV9CdWlsZEVuY29kaW5nTWFwPXB5dGhvbjMzLlB5VW5pY29kZV9CdWlsZEVuY29kaW5nTWFwCisgIFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nPXB5dGhvbjMzLlB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nCisgIFB5VW5pY29kZV9EZWNvZGVVVEY3PXB5dGhvbjMzLlB5VW5pY29kZV9EZWNvZGVVVEY3CisgIFB5VW5pY29kZV9EZWNvZGVVVEY3U3RhdGVmdWw9cHl0aG9uMzMuUHlVbmljb2RlX0RlY29kZVVURjdTdGF0ZWZ1bAorICBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0PXB5dGhvbjMzLlB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQKKyAgUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmc9cHl0aG9uMzMuUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcKKyAgUHlVbmljb2RlX0ludGVybkltbW9ydGFsPXB5dGhvbjMzLlB5VW5pY29kZV9JbnRlcm5JbW1vcnRhbAorICBQeVVuaWNvZGVfSW50ZXJuSW5QbGFjZT1weXRob24zMy5QeVVuaWNvZGVfSW50ZXJuSW5QbGFjZQorICBQeVVuaWNvZGVfVHlwZT1weXRob24zMy5QeVVuaWNvZGVfVHlwZSBEQVRBCisgIFB5V2Vha3JlZl9HZXRPYmplY3Q9cHl0aG9uMzMuUHlXZWFrcmVmX0dldE9iamVjdCBEQVRBCisgIFB5V2Vha3JlZl9OZXdQcm94eT1weXRob24zMy5QeVdlYWtyZWZfTmV3UHJveHkKKyAgUHlXZWFrcmVmX05ld1JlZj1weXRob24zMy5QeVdlYWtyZWZfTmV3UmVmCisgIFB5V3JhcHBlckRlc2NyX1R5cGU9cHl0aG9uMzMuUHlXcmFwcGVyRGVzY3JfVHlwZSBEQVRBCisgIFB5V3JhcHBlcl9OZXc9cHl0aG9uMzMuUHlXcmFwcGVyX05ldworICBQeVppcF9UeXBlPXB5dGhvbjMzLlB5WmlwX1R5cGUgREFUQQorICBQeV9BZGRQZW5kaW5nQ2FsbD1weXRob24zMy5QeV9BZGRQZW5kaW5nQ2FsbAorICBQeV9BdEV4aXQ9cHl0aG9uMzMuUHlfQXRFeGl0CisgIFB5X0J1aWxkVmFsdWU9cHl0aG9uMzMuUHlfQnVpbGRWYWx1ZQorICBQeV9Db21waWxlU3RyaW5nPXB5dGhvbjMzLlB5X0NvbXBpbGVTdHJpbmcKKyAgUHlfRGVjUmVmPXB5dGhvbjMzLlB5X0RlY1JlZgorICBQeV9FbmRJbnRlcnByZXRlcj1weXRob24zMy5QeV9FbmRJbnRlcnByZXRlcgorICBQeV9FeGl0PXB5dGhvbjMzLlB5X0V4aXQKKyAgUHlfRmF0YWxFcnJvcj1weXRob24zMy5QeV9GYXRhbEVycm9yCisgIFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2Rpbmc9cHl0aG9uMzMuUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyBEQVRBCisgIFB5X0ZpbmFsaXplPXB5dGhvbjMzLlB5X0ZpbmFsaXplCisgIFB5X0dldEJ1aWxkSW5mbz1weXRob24zMy5QeV9HZXRCdWlsZEluZm8KKyAgUHlfR2V0Q29tcGlsZXI9cHl0aG9uMzMuUHlfR2V0Q29tcGlsZXIKKyAgUHlfR2V0Q29weXJpZ2h0PXB5dGhvbjMzLlB5X0dldENvcHlyaWdodAorICBQeV9HZXRFeGVjUHJlZml4PXB5dGhvbjMzLlB5X0dldEV4ZWNQcmVmaXgKKyAgUHlfR2V0UGF0aD1weXRob24zMy5QeV9HZXRQYXRoCisgIFB5X0dldFBsYXRmb3JtPXB5dGhvbjMzLlB5X0dldFBsYXRmb3JtCisgIFB5X0dldFByZWZpeD1weXRob24zMy5QeV9HZXRQcmVmaXgKKyAgUHlfR2V0UHJvZ3JhbUZ1bGxQYXRoPXB5dGhvbjMzLlB5X0dldFByb2dyYW1GdWxsUGF0aAorICBQeV9HZXRQcm9ncmFtTmFtZT1weXRob24zMy5QeV9HZXRQcm9ncmFtTmFtZQorICBQeV9HZXRQeXRob25Ib21lPXB5dGhvbjMzLlB5X0dldFB5dGhvbkhvbWUKKyAgUHlfR2V0UmVjdXJzaW9uTGltaXQ9cHl0aG9uMzMuUHlfR2V0UmVjdXJzaW9uTGltaXQKKyAgUHlfR2V0VmVyc2lvbj1weXRob24zMy5QeV9HZXRWZXJzaW9uCisgIFB5X0hhc0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2Rpbmc9cHl0aG9uMzMuUHlfSGFzRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyBEQVRBCisgIFB5X0luY1JlZj1weXRob24zMy5QeV9JbmNSZWYKKyAgUHlfSW5pdGlhbGl6ZT1weXRob24zMy5QeV9Jbml0aWFsaXplCisgIFB5X0luaXRpYWxpemVFeD1weXRob24zMy5QeV9Jbml0aWFsaXplRXgKKyAgUHlfSXNJbml0aWFsaXplZD1weXRob24zMy5QeV9Jc0luaXRpYWxpemVkCisgIFB5X01haW49cHl0aG9uMzMuUHlfTWFpbgorICBQeV9NYWtlUGVuZGluZ0NhbGxzPXB5dGhvbjMzLlB5X01ha2VQZW5kaW5nQ2FsbHMKKyAgUHlfTmV3SW50ZXJwcmV0ZXI9cHl0aG9uMzMuUHlfTmV3SW50ZXJwcmV0ZXIKKyAgUHlfUmVwckVudGVyPXB5dGhvbjMzLlB5X1JlcHJFbnRlcgorICBQeV9SZXByTGVhdmU9cHl0aG9uMzMuUHlfUmVwckxlYXZlCisgIFB5X1NldFByb2dyYW1OYW1lPXB5dGhvbjMzLlB5X1NldFByb2dyYW1OYW1lCisgIFB5X1NldFB5dGhvbkhvbWU9cHl0aG9uMzMuUHlfU2V0UHl0aG9uSG9tZQorICBQeV9TZXRSZWN1cnNpb25MaW1pdD1weXRob24zMy5QeV9TZXRSZWN1cnNpb25MaW1pdAorICBQeV9TeW10YWJsZVN0cmluZz1weXRob24zMy5QeV9TeW10YWJsZVN0cmluZworICBQeV9WYUJ1aWxkVmFsdWU9cHl0aG9uMzMuUHlfVmFCdWlsZFZhbHVlCisgIF9QeUVycl9CYWRJbnRlcm5hbENhbGw9cHl0aG9uMzMuX1B5RXJyX0JhZEludGVybmFsQ2FsbAorICBfUHlPYmplY3RfQ2FsbEZ1bmN0aW9uX1NpemVUPXB5dGhvbjMzLl9QeU9iamVjdF9DYWxsRnVuY3Rpb25fU2l6ZVQKKyAgX1B5T2JqZWN0X0NhbGxNZXRob2RfU2l6ZVQ9cHl0aG9uMzMuX1B5T2JqZWN0X0NhbGxNZXRob2RfU2l6ZVQKKyAgX1B5T2JqZWN0X0dDX01hbGxvYz1weXRob24zMy5fUHlPYmplY3RfR0NfTWFsbG9jCisgIF9QeU9iamVjdF9HQ19OZXc9cHl0aG9uMzMuX1B5T2JqZWN0X0dDX05ldworICBfUHlPYmplY3RfR0NfTmV3VmFyPXB5dGhvbjMzLl9QeU9iamVjdF9HQ19OZXdWYXIKKyAgX1B5T2JqZWN0X0dDX1Jlc2l6ZT1weXRob24zMy5fUHlPYmplY3RfR0NfUmVzaXplCisgIF9QeU9iamVjdF9OZXc9cHl0aG9uMzMuX1B5T2JqZWN0X05ldworICBfUHlPYmplY3RfTmV3VmFyPXB5dGhvbjMzLl9QeU9iamVjdF9OZXdWYXIKKyAgX1B5U3RhdGVfQWRkTW9kdWxlPXB5dGhvbjMzLl9QeVN0YXRlX0FkZE1vZHVsZQorICBfUHlUaHJlYWRTdGF0ZV9Jbml0PXB5dGhvbjMzLl9QeVRocmVhZFN0YXRlX0luaXQKKyAgX1B5VGhyZWFkU3RhdGVfUHJlYWxsb2M9cHl0aG9uMzMuX1B5VGhyZWFkU3RhdGVfUHJlYWxsb2MKKyAgX1B5VHJhc2hfZGVsZXRlX2xhdGVyPXB5dGhvbjMzLl9QeVRyYXNoX2RlbGV0ZV9sYXRlciBEQVRBCisgIF9QeVRyYXNoX2RlbGV0ZV9uZXN0aW5nPXB5dGhvbjMzLl9QeVRyYXNoX2RlbGV0ZV9uZXN0aW5nIERBVEEKKyAgX1B5VHJhc2hfZGVwb3NpdF9vYmplY3Q9cHl0aG9uMzMuX1B5VHJhc2hfZGVwb3NpdF9vYmplY3QKKyAgX1B5VHJhc2hfZGVzdHJveV9jaGFpbj1weXRob24zMy5fUHlUcmFzaF9kZXN0cm95X2NoYWluCisgIF9QeVdlYWtyZWZfQ2FsbGFibGVQcm94eVR5cGU9cHl0aG9uMzMuX1B5V2Vha3JlZl9DYWxsYWJsZVByb3h5VHlwZSBEQVRBCisgIF9QeVdlYWtyZWZfUHJveHlUeXBlPXB5dGhvbjMzLl9QeVdlYWtyZWZfUHJveHlUeXBlIERBVEEKKyAgX1B5V2Vha3JlZl9SZWZUeXBlPXB5dGhvbjMzLl9QeVdlYWtyZWZfUmVmVHlwZSBEQVRBCisgIF9QeV9CdWlsZFZhbHVlX1NpemVUPXB5dGhvbjMzLl9QeV9CdWlsZFZhbHVlX1NpemVUCisgIF9QeV9DaGVja1JlY3Vyc2lvbkxpbWl0PXB5dGhvbjMzLl9QeV9DaGVja1JlY3Vyc2lvbkxpbWl0IERBVEEKKyAgX1B5X0NoZWNrUmVjdXJzaXZlQ2FsbD1weXRob24zMy5fUHlfQ2hlY2tSZWN1cnNpdmVDYWxsCisgIF9QeV9EZWFsbG9jPXB5dGhvbjMzLl9QeV9EZWFsbG9jCisgIF9QeV9FbGxpcHNpc09iamVjdD1weXRob24zMy5fUHlfRWxsaXBzaXNPYmplY3QgREFUQQorICBfUHlfRmFsc2VTdHJ1Y3Q9cHl0aG9uMzMuX1B5X0ZhbHNlU3RydWN0IERBVEEKKyAgX1B5X05vbmVTdHJ1Y3Q9cHl0aG9uMzMuX1B5X05vbmVTdHJ1Y3QgREFUQQorICBfUHlfTm90SW1wbGVtZW50ZWRTdHJ1Y3Q9cHl0aG9uMzMuX1B5X05vdEltcGxlbWVudGVkU3RydWN0IERBVEEKKyAgX1B5X1N3YXBwZWRPcD1weXRob24zMy5fUHlfU3dhcHBlZE9wIERBVEEKKyAgX1B5X1RydWVTdHJ1Y3Q9cHl0aG9uMzMuX1B5X1RydWVTdHJ1Y3QgREFUQQorICBfUHlfVmFCdWlsZFZhbHVlX1NpemVUPXB5dGhvbjMzLl9QeV9WYUJ1aWxkVmFsdWVfU2l6ZVQKZGlmZiAtLWdpdCBhL1BDL3B5dGhvbjMubWFrIGIvUEMvcHl0aG9uMy5tYWsKaW5kZXggMjU2MTY3Zi4uY2U2NWZiYSAxMDA2NDQKLS0tIGEvUEMvcHl0aG9uMy5tYWsKKysrIGIvUEMvcHl0aG9uMy5tYWsKQEAgLTEsMTAgKzEsMTAgQEAKLSQoT3V0RGlyKXB5dGhvbjMyLmRsbDoJcHl0aG9uMy5kZWYgJChPdXREaXIpcHl0aG9uMzJzdHViLmxpYgotCWNsIC9MRCAvRmUkKE91dERpcilweXRob24zLmRsbCBweXRob24zZGxsLmMgcHl0aG9uMy5kZWYgJChPdXREaXIpcHl0aG9uMzJzdHViLmxpYgorJChPdXREaXIpcHl0aG9uMzMuZGxsOglweXRob24zLmRlZiAkKE91dERpcilweXRob24zM3N0dWIubGliCisJY2wgL0xEIC9GZSQoT3V0RGlyKXB5dGhvbjMuZGxsIHB5dGhvbjNkbGwuYyBweXRob24zLmRlZiAkKE91dERpcilweXRob24zM3N0dWIubGliCiAKLSQoT3V0RGlyKXB5dGhvbjMyc3R1Yi5saWI6CXB5dGhvbjMyc3R1Yi5kZWYKLQlsaWIgL2RlZjpweXRob24zMnN0dWIuZGVmIC9vdXQ6JChPdXREaXIpcHl0aG9uMzJzdHViLmxpYiAvTUFDSElORTokKE1BQ0hJTkUpCiskKE91dERpcilweXRob24zM3N0dWIubGliOglweXRob24zM3N0dWIuZGVmCisJbGliIC9kZWY6cHl0aG9uMzNzdHViLmRlZiAvb3V0OiQoT3V0RGlyKXB5dGhvbjMzc3R1Yi5saWIgL01BQ0hJTkU6JChNQUNISU5FKQogCiBjbGVhbjoKLQlkZWwgJChPdXREaXIpcHl0aG9uMy5kbGwgJChPdXREaXIpcHl0aG9uMy5saWIgJChPdXREaXIpcHl0aG9uMzJzdHViLmxpYiAkKE91dERpcilweXRob24zLmV4cCAkKE91dERpcilweXRob24zMnN0dWIuZXhwCisJZGVsICQoT3V0RGlyKXB5dGhvbjMuZGxsICQoT3V0RGlyKXB5dGhvbjMubGliICQoT3V0RGlyKXB5dGhvbjMzc3R1Yi5saWIgJChPdXREaXIpcHl0aG9uMy5leHAgJChPdXREaXIpcHl0aG9uMzNzdHViLmV4cAogCi1yZWJ1aWxkOiBjbGVhbiAkKE91dERpcilweXRob24zMi5kbGwKK3JlYnVpbGQ6IGNsZWFuICQoT3V0RGlyKXB5dGhvbjMzLmRsbApkaWZmIC0tZ2l0IGEvUEMvcHl0aG9uMzJnZW4ucHkgYi9QQy9weXRob24zM2dlbi5weQpzaW1pbGFyaXR5IGluZGV4IDc0JQpyZW5hbWUgZnJvbSBQQy9weXRob24zMmdlbi5weQpyZW5hbWUgdG8gUEMvcHl0aG9uMzNnZW4ucHkKaW5kZXggOTE4MmQ1NC4uYTg1ZjQxNyAxMDA2NDQKLS0tIGEvUEMvcHl0aG9uMzJnZW4ucHkKKysrIGIvUEMvcHl0aG9uMzNnZW4ucHkKQEAgLTEsOSArMSw5IEBACi0jIEdlbmVyYXRlIHB5dGhvbjMyc3R1Yi5kZWYgb3V0IG9mIHB5dGhvbjMuZGVmCisjIEdlbmVyYXRlIHB5dGhvbjMzc3R1Yi5kZWYgb3V0IG9mIHB5dGhvbjMuZGVmCiAjIFRoZSByZWd1bGFyIGltcG9ydCBsaWJyYXJ5IGNhbm5vdCBiZSB1c2VkLAogIyBzaW5jZSBpdCBkb2Vzbid0IHByb3ZpZGUgdGhlIHJpZ2h0IHN5bWJvbHMgZm9yCiAjIGRhdGEgZm9yd2FyZGluZwotb3V0ID0gb3BlbigicHl0aG9uMzJzdHViLmRlZiIsICJ3IikKLW91dC53cml0ZSgnTElCUkFSWSAicHl0aG9uMzIiXG4nKQorb3V0ID0gb3BlbigicHl0aG9uMzNzdHViLmRlZiIsICJ3IikKK291dC53cml0ZSgnTElCUkFSWSAicHl0aG9uMzMiXG4nKQogb3V0LndyaXRlKCdFWFBPUlRTXG4nKQogCiBpbnAgPSBvcGVuKCJweXRob24zLmRlZiIpCkBAIC0xMiw3ICsxMiw3IEBACiBhc3NlcnQgbGluZS5zdHJpcCgpPT0nRVhQT1JUUycKIAogZm9yIGxpbmUgaW4gaW5wOgotICAgICMgU1lNMT1weXRob24zMi5TWU0yWyBEQVRBXQorICAgICMgU1lNMT1weXRob24zMy5TWU0yWyBEQVRBXQogICAgIGhlYWQsIHRhaWwgPSBsaW5lLnNwbGl0KCcuJykKICAgICBpZiAnREFUQScgaW4gdGFpbDoKICAgICAgICAgc3ltYm9sLCB0YWlsID0gdGFpbC5zcGxpdCgnICcpCkBAIC0yMiw0ICsyMiwzIEBACiAKIGlucC5jbG9zZSgpCiBvdXQuY2xvc2UoKQotCmRpZmYgLS1naXQgYS9QQy9weXRob24zMnN0dWIuZGVmIGIvUEMvcHl0aG9uMzNzdHViLmRlZgpzaW1pbGFyaXR5IGluZGV4IDk5JQpyZW5hbWUgZnJvbSBQQy9weXRob24zMnN0dWIuZGVmCnJlbmFtZSB0byBQQy9weXRob24zM3N0dWIuZGVmCmluZGV4IDA5NDNlZjAuLjZlNGVkOWYgMTAwNjQ0Ci0tLSBhL1BDL3B5dGhvbjMyc3R1Yi5kZWYKKysrIGIvUEMvcHl0aG9uMzNzdHViLmRlZgpAQCAtMSw0ICsxLDQgQEAKLUxJQlJBUlkgInB5dGhvbjMyIgorTElCUkFSWSAicHl0aG9uMzMiCiBFWFBPUlRTCiBQeUFyZ19QYXJzZQogUHlBcmdfUGFyc2VUdXBsZQpkaWZmIC0tZ2l0IGEvUEMvd2lucmVnLmMgYi9QQy93aW5yZWcuYwppbmRleCAxYmM0N2I5Li40NTFjZWQyIDEwMDY0NAotLS0gYS9QQy93aW5yZWcuYworKysgYi9QQy93aW5yZWcuYwpAQCAtNzYwLDI2ICs3NjAsMjcgQEAKICAgICAgICAgY2FzZSBSRUdfU1o6CiAgICAgICAgIGNhc2UgUkVHX0VYUEFORF9TWjoKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgIGlmICh2YWx1ZSA9PSBQeV9Ob25lKQotICAgICAgICAgICAgICAgICpyZXREYXRhU2l6ZSA9IDE7Ci0gICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayh2YWx1ZSkpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBGQUxTRTsKLSAgICAgICAgICAgICAgICAqcmV0RGF0YVNpemUgPSBQeV9TQUZFX0RPV05DQVNUKAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyICsgUHlVbmljb2RlX0dFVF9EQVRBX1NJWkUodmFsdWUpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QsIERXT1JEKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgICpyZXREYXRhQnVmID0gKEJZVEUgKilQeU1lbV9ORVcoRFdPUkQsICpyZXREYXRhU2l6ZSk7Ci0gICAgICAgICAgICBpZiAoKnJldERhdGFCdWY9PU5VTEwpewotICAgICAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKHZhbHVlID09IFB5X05vbmUpCi0gICAgICAgICAgICAgICAgd2NzY3B5KCh3Y2hhcl90ICopKnJldERhdGFCdWYsIEwiIik7Ci0gICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgd2NzY3B5KCh3Y2hhcl90ICopKnJldERhdGFCdWYsCi0gICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHZhbHVlKSk7Ci0gICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBpZiAodmFsdWUgIT0gUHlfTm9uZSkgeworICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICAgICAgICAgICAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodmFsdWUpKQorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEZBTFNFOworICAgICAgICAgICAgICAgICAgICAqcmV0RGF0YUJ1ZiA9IChCWVRFKilQeVVuaWNvZGVfQXNXaWRlQ2hhclN0cmluZyh2YWx1ZSwgJmxlbik7CisgICAgICAgICAgICAgICAgICAgIGlmICgqcmV0RGF0YUJ1ZiA9PSBOVUxMKQorICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEZBTFNFOworICAgICAgICAgICAgICAgICAgICAqcmV0RGF0YVNpemUgPSBQeV9TQUZFX0RPV05DQVNUKAorICAgICAgICAgICAgICAgICAgICAgICAgKGxlbiArIDEpICogc2l6ZW9mKHdjaGFyX3QpLAorICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCwgRFdPUkQpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgKnJldERhdGFCdWYgPSAoQllURSAqKVB5TWVtX05FVyh3Y2hhcl90LCAxKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKCpyZXREYXRhQnVmID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX05vTWVtb3J5KCk7CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRkFMU0U7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgKCh3Y2hhcl90ICopKnJldERhdGFCdWYpWzBdID0gTCdcMCc7CisgICAgICAgICAgICAgICAgICAgICpyZXREYXRhU2l6ZSA9IDEgKiBzaXplb2Yod2NoYXJfdCk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgfQogICAgICAgICBjYXNlIFJFR19NVUxUSV9TWjoKICAgICAgICAgICAgIHsKQEAgLTc5NiwxMCArNzk3LDE2IEBACiAgICAgICAgICAgICAgICAgZm9yIChqID0gMDsgaiA8IGk7IGorKykKICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp0OworICAgICAgICAgICAgICAgICAgICB3Y2hhcl90ICp3c3RyOworICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKKwogICAgICAgICAgICAgICAgICAgICB0ID0gUHlMaXN0X0dFVF9JVEVNKHZhbHVlLCBqKTsKICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2sodCkpCiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRkFMU0U7Ci0gICAgICAgICAgICAgICAgICAgIHNpemUgKz0gUHlfU0FGRV9ET1dOQ0FTVCgyICsgUHlVbmljb2RlX0dFVF9EQVRBX1NJWkUodCksCisgICAgICAgICAgICAgICAgICAgIHdzdHIgPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZSh0LCAmbGVuKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHdzdHIgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBGQUxTRTsKKyAgICAgICAgICAgICAgICAgICAgc2l6ZSArPSBQeV9TQUZFX0RPV05DQVNUKChsZW4gKyAxKSAqIHNpemVvZih3Y2hhcl90KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCwgRFdPUkQpOwogICAgICAgICAgICAgICAgIH0KIApAQCAtODE1LDEwICs4MjIsMTUgQEAKICAgICAgICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgaTsgaisrKQogICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKnQ7CisgICAgICAgICAgICAgICAgICAgIHdjaGFyX3QgKndzdHI7CisgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOworCiAgICAgICAgICAgICAgICAgICAgIHQgPSBQeUxpc3RfR0VUX0lURU0odmFsdWUsIGopOwotICAgICAgICAgICAgICAgICAgICB3Y3NjcHkoUCwgUHlVbmljb2RlX0FTX1VOSUNPREUodCkpOwotICAgICAgICAgICAgICAgICAgICBQICs9IDEgKyB3Y3NsZW4oCi0gICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfQVNfVU5JQ09ERSh0KSk7CisgICAgICAgICAgICAgICAgICAgIHdzdHIgPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZSh0LCAmbGVuKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHdzdHIgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBGQUxTRTsKKyAgICAgICAgICAgICAgICAgICAgd2NzY3B5KFAsIHdzdHIpOworICAgICAgICAgICAgICAgICAgICBQICs9IChsZW4gKyAxKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgLyogQW5kIGRvdWJseS10ZXJtaW5hdGUgdGhlIGxpc3QuLi4gKi8KICAgICAgICAgICAgICAgICAqUCA9ICdcMCc7CkBAIC04ODIsNyArODk0LDcgQEAKICAgICAgICAgICAgICAgICAgICAgcmV0RGF0YVNpemUgLT0gMjsKICAgICAgICAgICAgICAgICBpZiAocmV0RGF0YVNpemUgPD0gMCkKICAgICAgICAgICAgICAgICAgICAgZGF0YSA9IEwiIjsKLSAgICAgICAgICAgICAgICBvYkRhdGEgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoZGF0YSwgcmV0RGF0YVNpemUvMik7CisgICAgICAgICAgICAgICAgb2JEYXRhID0gUHlVbmljb2RlX0Zyb21XaWRlQ2hhcihkYXRhLCByZXREYXRhU2l6ZS8yKTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KICAgICAgICAgY2FzZSBSRUdfTVVMVElfU1o6CkBAIC05MTMsNyArOTI1LDcgQEAKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICBQeUxpc3RfU2V0SXRlbShvYkRhdGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoc3RyW2luZGV4XSwgbGVuKSk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIoc3RyW2luZGV4XSwgbGVuKSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGZyZWUoc3RyKTsKIApAQCAtMTA1NCw3ICsxMDY2LDcgQEAKIAogICAgIC8qIE9ubHkgYXZhaWxhYmxlIG9uIDY0Yml0IHBsYXRmb3Jtcywgc28gd2UgbXVzdCBsb2FkIGl0CiAgICAgICAgZHluYW1pY2FsbHkuICovCi0gICAgaE1vZCA9IEdldE1vZHVsZUhhbmRsZSgiYWR2YXBpMzIuZGxsIik7CisgICAgaE1vZCA9IEdldE1vZHVsZUhhbmRsZVcoTCJhZHZhcGkzMi5kbGwiKTsKICAgICBpZiAoaE1vZCkKICAgICAgICAgcGZuID0gKFJES0VGdW5jKUdldFByb2NBZGRyZXNzKGhNb2QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJlZ0RlbGV0ZUtleUV4VyIpOwpAQCAtMTEyMyw3ICsxMTM1LDcgQEAKICAgICBpZiAocmMgIT0gRVJST1JfU1VDQ0VTUykKICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyV2l0aEZ1bmN0aW9uKHJjLCAiUmVnRW51bUtleUV4Iik7CiAKLSAgICByZXRTdHIgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUodG1wYnVmLCBsZW4pOworICAgIHJldFN0ciA9IFB5VW5pY29kZV9Gcm9tV2lkZUNoYXIodG1wYnVmLCBsZW4pOwogICAgIHJldHVybiByZXRTdHI7ICAvKiBjYW4gYmUgTlVMTCAqLwogfQogCkBAIC0xMjE1LDggKzEyMjcsOCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIFB5RXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeV9VTklDT0RFICpyZXRWYWx1ZSA9IE5VTEw7Ci0gICAgUHlfVU5JQ09ERSAqc3JjOworICAgIHdjaGFyX3QgKnJldFZhbHVlID0gTlVMTDsKKyAgICB3Y2hhcl90ICpzcmM7CiAgICAgRFdPUkQgcmV0VmFsdWVTaXplOwogICAgIERXT1JEIHJjOwogICAgIFB5T2JqZWN0ICpvOwpAQCAtMTIyOSw3ICsxMjQxLDcgQEAKICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyV2l0aEZ1bmN0aW9uKHJldFZhbHVlU2l6ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzIik7CiAgICAgfQotICAgIHJldFZhbHVlID0gKFB5X1VOSUNPREUgKilQeU1lbV9NYWxsb2MocmV0VmFsdWVTaXplICogc2l6ZW9mKFB5X1VOSUNPREUpKTsKKyAgICByZXRWYWx1ZSA9ICh3Y2hhcl90ICopUHlNZW1fTWFsbG9jKHJldFZhbHVlU2l6ZSAqIHNpemVvZih3Y2hhcl90KSk7CiAgICAgaWYgKHJldFZhbHVlID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIFB5RXJyX05vTWVtb3J5KCk7CiAgICAgfQpAQCAtMTI0MCw3ICsxMjUyLDcgQEAKICAgICAgICAgcmV0dXJuIFB5RXJyX1NldEZyb21XaW5kb3dzRXJyV2l0aEZ1bmN0aW9uKHJldFZhbHVlU2l6ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzIik7CiAgICAgfQotICAgIG8gPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUocmV0VmFsdWUsIHdjc2xlbihyZXRWYWx1ZSkpOworICAgIG8gPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHJldFZhbHVlLCB3Y3NsZW4ocmV0VmFsdWUpKTsKICAgICBQeU1lbV9GcmVlKHJldFZhbHVlKTsKICAgICByZXR1cm4gbzsKIH0KQEAgLTEzOTQsNyArMTQwNiw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUmVnUXVlcnlWYWx1ZSIpOwogICAgIH0KIAotICAgIHJldFN0ciA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShyZXRCdWYsIHdjc2xlbihyZXRCdWYpKTsKKyAgICByZXRTdHIgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHJldEJ1Ziwgd2NzbGVuKHJldEJ1ZikpOwogICAgIFB5TWVtX0ZyZWUocmV0QnVmKTsKICAgICByZXR1cm4gcmV0U3RyOwogfQpAQCAtMTUyNSw3ICsxNTM3LDcgQEAKIHsKICAgICBIS0VZIGhLZXk7CiAgICAgUHlPYmplY3QgKm9iS2V5OwotICAgIFB5X1VOSUNPREUgKnZhbHVlTmFtZTsKKyAgICB3Y2hhcl90ICp2YWx1ZU5hbWU7CiAgICAgUHlPYmplY3QgKm9iUmVzOwogICAgIFB5T2JqZWN0ICp2YWx1ZTsKICAgICBCWVRFICpkYXRhOwpAQCAtMTU3OCw3ICsxNTkwLDcgQEAKIAogICAgIC8qIE9ubHkgYXZhaWxhYmxlIG9uIDY0Yml0IHBsYXRmb3Jtcywgc28gd2UgbXVzdCBsb2FkIGl0CiAgICAgICAgZHluYW1pY2FsbHkuKi8KLSAgICBoTW9kID0gR2V0TW9kdWxlSGFuZGxlKCJhZHZhcGkzMi5kbGwiKTsKKyAgICBoTW9kID0gR2V0TW9kdWxlSGFuZGxlVyhMImFkdmFwaTMyLmRsbCIpOwogICAgIGlmIChoTW9kKQogICAgICAgICBwZm4gPSAoUkRSS0Z1bmMpR2V0UHJvY0FkZHJlc3MoaE1vZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSZWdEaXNhYmxlUmVmbGVjdGlvbktleSIpOwpAQCAtMTYxNCw3ICsxNjI2LDcgQEAKIAogICAgIC8qIE9ubHkgYXZhaWxhYmxlIG9uIDY0Yml0IHBsYXRmb3Jtcywgc28gd2UgbXVzdCBsb2FkIGl0CiAgICAgICAgZHluYW1pY2FsbHkuKi8KLSAgICBoTW9kID0gR2V0TW9kdWxlSGFuZGxlKCJhZHZhcGkzMi5kbGwiKTsKKyAgICBoTW9kID0gR2V0TW9kdWxlSGFuZGxlVyhMImFkdmFwaTMyLmRsbCIpOwogICAgIGlmIChoTW9kKQogICAgICAgICBwZm4gPSAoUkVSS0Z1bmMpR2V0UHJvY0FkZHJlc3MoaE1vZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSZWdFbmFibGVSZWZsZWN0aW9uS2V5Iik7CkBAIC0xNjUxLDcgKzE2NjMsNyBAQAogCiAgICAgLyogT25seSBhdmFpbGFibGUgb24gNjRiaXQgcGxhdGZvcm1zLCBzbyB3ZSBtdXN0IGxvYWQgaXQKICAgICAgICBkeW5hbWljYWxseS4qLwotICAgIGhNb2QgPSBHZXRNb2R1bGVIYW5kbGUoImFkdmFwaTMyLmRsbCIpOworICAgIGhNb2QgPSBHZXRNb2R1bGVIYW5kbGVXKEwiYWR2YXBpMzIuZGxsIik7CiAgICAgaWYgKGhNb2QpCiAgICAgICAgIHBmbiA9IChSUVJLRnVuYylHZXRQcm9jQWRkcmVzcyhoTW9kLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlJlZ1F1ZXJ5UmVmbGVjdGlvbktleSIpOwpkaWZmIC0tZ2l0IGEvUEMvd2luc291bmQuYyBiL1BDL3dpbnNvdW5kLmMKaW5kZXggMWVkOTViYS4uYjU2NGVhYiAxMDA2NDQKLS0tIGEvUEMvd2luc291bmQuYworKysgYi9QQy93aW5zb3VuZC5jCkBAIC03Miw3ICs3Miw3IEBACiBzdGF0aWMgUHlPYmplY3QgKgogc291bmRfcGxheXNvdW5kKFB5T2JqZWN0ICpzLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBQeV9VTklDT0RFICp3c291bmQ7CisgICAgd2NoYXJfdCAqd3NvdW5kOwogICAgIGludCBmbGFnczsKICAgICBpbnQgb2s7CiAKZGlmZiAtLWdpdCBhL1BDYnVpbGQvYnoyLnZjcHJvaiBiL1BDYnVpbGQvX2J6Mi52Y3Byb2oKc2ltaWxhcml0eSBpbmRleCA5OSUKcmVuYW1lIGZyb20gUENidWlsZC9iejIudmNwcm9qCnJlbmFtZSB0byBQQ2J1aWxkL19iejIudmNwcm9qCmluZGV4IDAzNTczNmUuLmU2YjljODggMTAwNjQ0Ci0tLSBhL1BDYnVpbGQvYnoyLnZjcHJvagorKysgYi9QQ2J1aWxkL19iejIudmNwcm9qCkBAIC0yLDcgKzIsNyBAQAogPFZpc3VhbFN0dWRpb1Byb2plY3QNCiAJUHJvamVjdFR5cGU9IlZpc3VhbCBDKysiDQogCVZlcnNpb249IjksMDAiDQotCU5hbWU9ImJ6MiINCisJTmFtZT0iX2J6MiINCiAJUHJvamVjdEdVSUQ9Ins3M0ZDRDJCRC1GMTMzLTQ2QjctOEVDMS0xNDRDRDgyQTU5RDV9Ig0KIAlSb290TmFtZXNwYWNlPSJiejIiDQogCUtleXdvcmQ9IldpbjMyUHJvaiINCkBAIC01MjcsNyArNTI3LDcgQEAKIAkJCU5hbWU9IlNvdXJjZSBGaWxlcyINCiAJCQk+DQogCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxNb2R1bGVzXGJ6Mm1vZHVsZS5jIg0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNcX2J6Mm1vZHVsZS5jIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJPC9GaWx0ZXI+DQpkaWZmIC0tZ2l0IGEvUENidWlsZC9iejIudmNwcm9qIGIvUENidWlsZC9fbHptYS52Y3Byb2oKc2ltaWxhcml0eSBpbmRleCA4MiUKY29weSBmcm9tIFBDYnVpbGQvYnoyLnZjcHJvagpjb3B5IHRvIFBDYnVpbGQvX2x6bWEudmNwcm9qCmluZGV4IDAzNTczNmUuLjEwZjM3MjIgMTAwNjQ0Ci0tLSBhL1BDYnVpbGQvYnoyLnZjcHJvagorKysgYi9QQ2J1aWxkL19sem1hLnZjcHJvagpAQCAtMiw5ICsyLDkgQEAKIDxWaXN1YWxTdHVkaW9Qcm9qZWN0DQogCVByb2plY3RUeXBlPSJWaXN1YWwgQysrIg0KIAlWZXJzaW9uPSI5LDAwIg0KLQlOYW1lPSJiejIiDQotCVByb2plY3RHVUlEPSJ7NzNGQ0QyQkQtRjEzMy00NkI3LThFQzEtMTQ0Q0Q4MkE1OUQ1fSINCi0JUm9vdE5hbWVzcGFjZT0iYnoyIg0KKwlOYW1lPSJfbHptYSINCisJUHJvamVjdEdVSUQ9IntGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9Ig0KKwlSb290TmFtZXNwYWNlPSJsem1hIg0KIAlLZXl3b3JkPSJXaW4zMlByb2oiDQogCVRhcmdldEZyYW1ld29ya1ZlcnNpb249IjE5NjYxMyINCiAJPg0KQEAgLTQyLDggKzQyLDggQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCi0JCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChiejJEaXIpIg0KLQkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEUiDQorCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQobHptYURpcilcaW5jbHVkZSINCisJCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFO0xaTUFfQVBJX1NUQVRJQyINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTU2LDcgKzU2LDcgQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNMaW5rZXJUb29sIg0KLQkJCQlCYXNlQWRkcmVzcz0iMHgxRDE3MDAwMCINCisJCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0iJChsem1hRGlyKVxiaW5faTQ4NlxsaWJsem1hLmEiDQogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0FMaW5rVG9vbCINCkBAIC0xMDQsOCArMTA0LDggQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCi0JCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChiejJEaXIpIg0KLQkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEUiDQorCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQobHptYURpcilcaW5jbHVkZSINCisJCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFO0xaTUFfQVBJX1NUQVRJQyINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTExOCw3ICsxMTgsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIkKGx6bWFEaXIpXGJpbl94ODYtNjRcbGlibHptYS5hIg0KIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNBTGlua1Rvb2wiDQpAQCAtMTY2LDggKzE2Niw4IEBACiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQotCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQoYnoyRGlyKSINCi0JCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFIg0KKwkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGx6bWFEaXIpXGluY2x1ZGUiDQorCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURTtMWk1BX0FQSV9TVEFUSUMiDQogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ01hbmFnZWRSZXNvdXJjZUNvbXBpbGVyVG9vbCINCkBAIC0xODAsNyArMTgwLDcgQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNMaW5rZXJUb29sIg0KLQkJCQlCYXNlQWRkcmVzcz0iMHgxRDE3MDAwMCINCisJCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0iJChsem1hRGlyKVxiaW5faTQ4NlxsaWJsem1hLmEiDQogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0FMaW5rVG9vbCINCkBAIC0yMjksOCArMjI5LDggQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCi0JCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChiejJEaXIpIg0KLQkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEUiDQorCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQobHptYURpcilcaW5jbHVkZSINCisJCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFO0xaTUFfQVBJX1NUQVRJQyINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTI0Myw3ICsyNDMsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIkKGx6bWFEaXIpXGJpbl94ODYtNjRcbGlibHptYS5hIg0KIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNBTGlua1Rvb2wiDQpAQCAtMjkxLDggKzI5MSw4IEBACiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQotCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQoYnoyRGlyKSINCi0JCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFIg0KKwkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGx6bWFEaXIpXGluY2x1ZGUiDQorCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURTtMWk1BX0FQSV9TVEFUSUMiDQogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ01hbmFnZWRSZXNvdXJjZUNvbXBpbGVyVG9vbCINCkBAIC0zMDUsNyArMzA1LDcgQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNMaW5rZXJUb29sIg0KLQkJCQlCYXNlQWRkcmVzcz0iMHgxRDE3MDAwMCINCisJCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0iJChsem1hRGlyKVxiaW5faTQ4NlxsaWJsem1hLmEiDQogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0FMaW5rVG9vbCINCkBAIC0zNTQsOCArMzU0LDggQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCi0JCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChiejJEaXIpIg0KLQkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEUiDQorCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQobHptYURpcilcaW5jbHVkZSINCisJCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFO0xaTUFfQVBJX1NUQVRJQyINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTM2OCw3ICszNjgsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIkKGx6bWFEaXIpXGJpbl94ODYtNjRcbGlibHptYS5hIg0KIAkJCQlUYXJnZXRNYWNoaW5lPSIxNyINCiAJCQkvPg0KIAkJCTxUb29sDQpAQCAtNDE3LDggKzQxNyw4IEBACiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQotCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQoYnoyRGlyKSINCi0JCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFIg0KKwkJCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSIkKGx6bWFEaXIpXGluY2x1ZGUiDQorCQkJCVByZXByb2Nlc3NvckRlZmluaXRpb25zPSJXSU4zMjtfRklMRV9PRkZTRVRfQklUUz02NDtfQ1JUX1NFQ1VSRV9OT19ERVBSRUNBVEU7X0NSVF9OT05TVERDX05PX0RFUFJFQ0FURTtMWk1BX0FQSV9TVEFUSUMiDQogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ01hbmFnZWRSZXNvdXJjZUNvbXBpbGVyVG9vbCINCkBAIC00MzEsNyArNDMxLDcgQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNMaW5rZXJUb29sIg0KLQkJCQlCYXNlQWRkcmVzcz0iMHgxRDE3MDAwMCINCisJCQkJQWRkaXRpb25hbERlcGVuZGVuY2llcz0iJChsem1hRGlyKVxiaW5faTQ4NlxsaWJsem1hLmEiDQogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0FMaW5rVG9vbCINCkBAIC00ODAsOCArNDgwLDggQEAKIAkJCS8+DQogCQkJPFRvb2wNCiAJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCi0JCQkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJChiejJEaXIpIg0KLQkJCQlQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iV0lOMzI7X0ZJTEVfT0ZGU0VUX0JJVFM9NjQ7X0NSVF9TRUNVUkVfTk9fREVQUkVDQVRFO19DUlRfTk9OU1REQ19OT19ERVBSRUNBVEUiDQorCQkJCUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiQobHptYURpcilcaW5jbHVkZSINCisJCQkJUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM9IldJTjMyO19GSUxFX09GRlNFVF9CSVRTPTY0O19DUlRfU0VDVVJFX05PX0RFUFJFQ0FURTtfQ1JUX05PTlNURENfTk9fREVQUkVDQVRFO0xaTUFfQVBJX1NUQVRJQyINCiAJCQkvPg0KIAkJCTxUb29sDQogCQkJCU5hbWU9IlZDTWFuYWdlZFJlc291cmNlQ29tcGlsZXJUb29sIg0KQEAgLTQ5NCw3ICs0OTQsNyBAQAogCQkJLz4NCiAJCQk8VG9vbA0KIAkJCQlOYW1lPSJWQ0xpbmtlclRvb2wiDQotCQkJCUJhc2VBZGRyZXNzPSIweDFEMTcwMDAwIg0KKwkJCQlBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIkKGx6bWFEaXIpXGJpbl94ODYtNjRcbGlibHptYS5hIg0KIAkJCQlUYXJnZXRNYWNoaW5lPSIxNyINCiAJCQkvPg0KIAkJCTxUb29sDQpAQCAtNTI3LDUxICs1MjcsNyBAQAogCQkJTmFtZT0iU291cmNlIEZpbGVzIg0KIAkJCT4NCiAJCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNcYnoybW9kdWxlLmMiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQk8L0ZpbHRlcj4NCi0JCTxGaWx0ZXINCi0JCQlOYW1lPSJiemlwMiAxLjAuNSBIZWFkZXIgRmlsZXMiDQotCQkJPg0KLQkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iJChiejJEaXIpXGJ6bGliLmgiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIkKGJ6MkRpcilcYnpsaWJfcHJpdmF0ZS5oIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJPC9GaWx0ZXI+DQotCQk8RmlsdGVyDQotCQkJTmFtZT0iYnppcDIgMS4wLjUgU291cmNlIEZpbGVzIg0KLQkJCT4NCi0JCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9IiQoYnoyRGlyKVxibG9ja3NvcnQuYyINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9IiQoYnoyRGlyKVxiemxpYi5jIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iJChiejJEaXIpXGNvbXByZXNzLmMiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIkKGJ6MkRpcilcY3JjdGFibGUuYyINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KLQkJCQlSZWxhdGl2ZVBhdGg9IiQoYnoyRGlyKVxkZWNvbXByZXNzLmMiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIkKGJ6MkRpcilcaHVmZm1hbi5jIg0KLQkJCQk+DQotCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iJChiejJEaXIpXHJhbmR0YWJsZS5jIg0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNcX2x6bWFtb2R1bGUuYyINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCTwvRmlsdGVyPg0KZGlmZiAtLWdpdCBhL1BDYnVpbGQvX211bHRpcHJvY2Vzc2luZy52Y3Byb2ogYi9QQ2J1aWxkL19tdWx0aXByb2Nlc3NpbmcudmNwcm9qCmluZGV4IDVkNjMzN2QuLmU5Y2QzYTggMTAwNjQ0Ci0tLSBhL1BDYnVpbGQvX211bHRpcHJvY2Vzc2luZy52Y3Byb2oKKysrIGIvUENidWlsZC9fbXVsdGlwcm9jZXNzaW5nLnZjcHJvagpAQCAtNTIyLDEwICs1MjIsNiBAQAogCQkJCVJlbGF0aXZlUGF0aD0iLi5cTW9kdWxlc1xfbXVsdGlwcm9jZXNzaW5nXG11bHRpcHJvY2Vzc2luZy5oIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KLQkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cTW9kdWxlc1xfbXVsdGlwcm9jZXNzaW5nXGNvbm5lY3Rpb24uaCINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCiAJCTwvRmlsdGVyPg0KIAkJPEZpbHRlcg0KIAkJCU5hbWU9IlNvdXJjZSBGaWxlcyINCkBAIC01MzUsMTggKzUzMSwxMCBAQAogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3NpbmdccGlwZV9jb25uZWN0aW9uLmMiDQotCQkJCT4NCi0JCQk8L0ZpbGU+DQotCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3Npbmdcc2VtYXBob3JlLmMiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxNb2R1bGVzXF9tdWx0aXByb2Nlc3Npbmdcc29ja2V0X2Nvbm5lY3Rpb24uYyINCi0JCQkJPg0KLQkJCTwvRmlsZT4NCi0JCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNcX211bHRpcHJvY2Vzc2luZ1x3aW4zMl9mdW5jdGlvbnMuYyINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCmRpZmYgLS1naXQgYS9QQ2J1aWxkL2J1aWxkX3NzbC5iYXQgYi9QQ2J1aWxkL2J1aWxkX3NzbC5iYXQKaW5kZXggY2VlNjRhOC4uMzU3YjA4YiAxMDA2NDQKLS0tIGEvUENidWlsZC9idWlsZF9zc2wuYmF0CisrKyBiL1BDYnVpbGQvYnVpbGRfc3NsLmJhdApAQCAtMiwxMCArMiwxMCBAQAogaWYgbm90IGRlZmluZWQgSE9TVF9QWVRIT04gKAogICBpZiAlMSBFUVUgRGVidWcgKAogICAgIHNldCBIT1NUX1BZVEhPTj1weXRob25fZC5leGUKLSAgICBpZiBub3QgZXhpc3QgcHl0aG9uMzFfZC5kbGwgZXhpdCAxCisgICAgaWYgbm90IGV4aXN0IHB5dGhvbjMzX2QuZGxsIGV4aXQgMQogICApIEVMU0UgKAogICAgIHNldCBIT1NUX1BZVEhPTj1weXRob24uZXhlCi0gICAgaWYgbm90IGV4aXN0IHB5dGhvbjMxLmRsbCBleGl0IDEKKyAgICBpZiBub3QgZXhpc3QgcHl0aG9uMzMuZGxsIGV4aXQgMQogICApCiApCiAlSE9TVF9QWVRIT04lIGJ1aWxkX3NzbC5weSAlMSAlMiAlMwpkaWZmIC0tZ2l0IGEvUENidWlsZC9raWxsX3B5dGhvbi5jIGIvUENidWlsZC9raWxsX3B5dGhvbi5jCmluZGV4IDZiOTE2NzguLmJiMzIzZDMgMTAwNjQ0Ci0tLSBhL1BDYnVpbGQva2lsbF9weXRob24uYworKysgYi9QQ2J1aWxkL2tpbGxfcHl0aG9uLmMKQEAgLTEwNiw3ICsxMDYsNyBAQAogICAgICAgICAvKgogICAgICAgICAgKiBYWFggVE9ETzogaWYgd2UgcmVhbGx5IHdhbnRlZCB0byBiZSBmYW5jeSwgd2UgY291bGQgY2hlY2sgdGhlIAogICAgICAgICAgKiBtb2R1bGVzIGZvciBhbGwgcHJvY2Vzc2VzIChub3QganVzdCB0aGUgcHl0aG9uW19kXS5leGUgb25lcykKLSAgICAgICAgICogYW5kIHNlZSBpZiBhbnkgb2Ygb3VyIERMTHMgYXJlIGxvYWRlZCAoaS5lLiBweXRob24zMltfZF0uZGxsKSwKKyAgICAgICAgICogYW5kIHNlZSBpZiBhbnkgb2Ygb3VyIERMTHMgYXJlIGxvYWRlZCAoaS5lLiBweXRob24zM1tfZF0uZGxsKSwKICAgICAgICAgICogYXMgdGhhdCB3b3VsZCBhbHNvIGluaGliaXQgb3VyIGFiaWxpdHkgdG8gcmVidWlsZCB0aGUgc29sdXRpb24uCiAgICAgICAgICAqIE5vdCB3b3J0aCBsb29zaW5nIHNsZWVwIG92ZXIgdGhvdWdoOyBmb3Igbm93LCBhIHNpbXBsZSBjaGVjayAKICAgICAgICAgICogZm9yIGp1c3QgdGhlIHB5dGhvbiBleGVjdXRhYmxlIHNob3VsZCBiZSBzdWZmaWNpZW50LgpkaWZmIC0tZ2l0IGEvUENidWlsZC9wY2J1aWxkLnNsbiBiL1BDYnVpbGQvcGNidWlsZC5zbG4KaW5kZXggMWRlNGVhMS4uOWVmYjZkOSAxMDA2NDQKLS0tIGEvUENidWlsZC9wY2J1aWxkLnNsbgorKysgYi9QQ2J1aWxkL3BjYnVpbGQuc2xuCkBAIC04Nyw3ICs4NywxMiBAQAogCQl7Q0Y3QUMzRDEtRTJERi00MUQyLUJFQTYtMUUyNTU2Q0RFQTI2fSA9IHtDRjdBQzNEMS1FMkRGLTQxRDItQkVBNi0xRTI1NTZDREVBMjZ9DQogCUVuZFByb2plY3RTZWN0aW9uDQogRW5kUHJvamVjdA0KLVByb2plY3QoIns4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAiYnoyIiwgImJ6Mi52Y3Byb2oiLCAiezczRkNEMkJELUYxMzMtNDZCNy04RUMxLTE0NENEODJBNTlENX0iDQorUHJvamVjdCgiezhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0Mn0iKSA9ICJfYnoyIiwgIl9iejIudmNwcm9qIiwgIns3M0ZDRDJCRC1GMTMzLTQ2QjctOEVDMS0xNDRDRDgyQTU5RDV9Ig0KKwlQcm9qZWN0U2VjdGlvbihQcm9qZWN0RGVwZW5kZW5jaWVzKSA9IHBvc3RQcm9qZWN0DQorCQl7Q0Y3QUMzRDEtRTJERi00MUQyLUJFQTYtMUUyNTU2Q0RFQTI2fSA9IHtDRjdBQzNEMS1FMkRGLTQxRDItQkVBNi0xRTI1NTZDREVBMjZ9DQorCUVuZFByb2plY3RTZWN0aW9uDQorRW5kUHJvamVjdA0KK1Byb2plY3QoIns4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAiX2x6bWEiLCAiX2x6bWEudmNwcm9qIiwgIntGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9Ig0KIAlQcm9qZWN0U2VjdGlvbihQcm9qZWN0RGVwZW5kZW5jaWVzKSA9IHBvc3RQcm9qZWN0DQogCQl7Q0Y3QUMzRDEtRTJERi00MUQyLUJFQTYtMUUyNTU2Q0RFQTI2fSA9IHtDRjdBQzNEMS1FMkRGLTQxRDItQkVBNi0xRTI1NTZDREVBMjZ9DQogCUVuZFByb2plY3RTZWN0aW9uDQpAQCAtNDIxLDYgKzQyNiwyMiBAQAogCQl7NzNGQ0QyQkQtRjEzMy00NkI3LThFQzEtMTQ0Q0Q4MkE1OUQ1fS5SZWxlYXNlfFdpbjMyLkJ1aWxkLjAgPSBSZWxlYXNlfFdpbjMyDQogCQl7NzNGQ0QyQkQtRjEzMy00NkI3LThFQzEtMTQ0Q0Q4MkE1OUQ1fS5SZWxlYXNlfHg2NC5BY3RpdmVDZmcgPSBSZWxlYXNlfHg2NA0KIAkJezczRkNEMkJELUYxMzMtNDZCNy04RUMxLTE0NENEODJBNTlENX0uUmVsZWFzZXx4NjQuQnVpbGQuMCA9IFJlbGVhc2V8eDY0DQorCQl7RjlENzE3ODAtRjM5My0xMUUwLUJFNTAtMDgwMDIwMEM5QTY2fS5EZWJ1Z3xXaW4zMi5BY3RpdmVDZmcgPSBEZWJ1Z3xXaW4zMg0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uRGVidWd8V2luMzIuQnVpbGQuMCA9IERlYnVnfFdpbjMyDQorCQl7RjlENzE3ODAtRjM5My0xMUUwLUJFNTAtMDgwMDIwMEM5QTY2fS5EZWJ1Z3x4NjQuQWN0aXZlQ2ZnID0gRGVidWd8eDY0DQorCQl7RjlENzE3ODAtRjM5My0xMUUwLUJFNTAtMDgwMDIwMEM5QTY2fS5EZWJ1Z3x4NjQuQnVpbGQuMCA9IERlYnVnfHg2NA0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uUEdJbnN0cnVtZW50fFdpbjMyLkFjdGl2ZUNmZyA9IFBHSW5zdHJ1bWVudHxXaW4zMg0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uUEdJbnN0cnVtZW50fFdpbjMyLkJ1aWxkLjAgPSBQR0luc3RydW1lbnR8V2luMzINCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlBHSW5zdHJ1bWVudHx4NjQuQWN0aXZlQ2ZnID0gUEdJbnN0cnVtZW50fHg2NA0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uUEdJbnN0cnVtZW50fHg2NC5CdWlsZC4wID0gUEdJbnN0cnVtZW50fHg2NA0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uUEdVcGRhdGV8V2luMzIuQWN0aXZlQ2ZnID0gUEdVcGRhdGV8V2luMzINCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlBHVXBkYXRlfFdpbjMyLkJ1aWxkLjAgPSBQR1VwZGF0ZXxXaW4zMg0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uUEdVcGRhdGV8eDY0LkFjdGl2ZUNmZyA9IFBHVXBkYXRlfHg2NA0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uUEdVcGRhdGV8eDY0LkJ1aWxkLjAgPSBQR1VwZGF0ZXx4NjQNCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlJlbGVhc2V8V2luMzIuQWN0aXZlQ2ZnID0gUmVsZWFzZXxXaW4zMg0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uUmVsZWFzZXxXaW4zMi5CdWlsZC4wID0gUmVsZWFzZXxXaW4zMg0KKwkJe0Y5RDcxNzgwLUYzOTMtMTFFMC1CRTUwLTA4MDAyMDBDOUE2Nn0uUmVsZWFzZXx4NjQuQWN0aXZlQ2ZnID0gUmVsZWFzZXx4NjQNCisJCXtGOUQ3MTc4MC1GMzkzLTExRTAtQkU1MC0wODAwMjAwQzlBNjZ9LlJlbGVhc2V8eDY0LkJ1aWxkLjAgPSBSZWxlYXNlfHg2NA0KIAkJezE4Q0FFMjhDLUI0NTQtNDZDMS04N0EwLTQ5M0Q5MUQ5N0YwM30uRGVidWd8V2luMzIuQWN0aXZlQ2ZnID0gRGVidWd8V2luMzINCiAJCXsxOENBRTI4Qy1CNDU0LTQ2QzEtODdBMC00OTNEOTFEOTdGMDN9LkRlYnVnfFdpbjMyLkJ1aWxkLjAgPSBEZWJ1Z3xXaW4zMg0KIAkJezE4Q0FFMjhDLUI0NTQtNDZDMS04N0EwLTQ5M0Q5MUQ5N0YwM30uRGVidWd8eDY0LkFjdGl2ZUNmZyA9IERlYnVnfHg2NA0KZGlmZiAtLWdpdCBhL1BDYnVpbGQvcHlwcm9qZWN0LnZzcHJvcHMgYi9QQ2J1aWxkL3B5cHJvamVjdC52c3Byb3BzCmluZGV4IDNmNjlhNDIuLjQ0MWY5NWYgMTAwNjQ0Ci0tLSBhL1BDYnVpbGQvcHlwcm9qZWN0LnZzcHJvcHMKKysrIGIvUENidWlsZC9weXByb2plY3QudnNwcm9wcwpAQCAtMzgsNyArMzgsNyBAQAogCS8+DQogCTxVc2VyTWFjcm8NCiAJCU5hbWU9IlB5RGxsTmFtZSINCi0JCVZhbHVlPSJweXRob24zMiINCisJCVZhbHVlPSJweXRob24zMyINCiAJLz4NCiAJPFVzZXJNYWNybw0KIAkJTmFtZT0iUHl0aG9uRXhlIg0KQEAgLTU3LDYgKzU3LDEwIEBACiAJCVZhbHVlPSIkKGV4dGVybmFsc0RpcilcYnppcDItMS4wLjUiDQogCS8+DQogCTxVc2VyTWFjcm8NCisJCU5hbWU9Imx6bWFEaXIiDQorCQlWYWx1ZT0iJChleHRlcm5hbHNEaXIpXHh6LTUuMC4zIg0KKwkvPg0KKwk8VXNlck1hY3JvDQogCQlOYW1lPSJvcGVuc3NsRGlyIg0KIAkJVmFsdWU9IiQoZXh0ZXJuYWxzRGlyKVxvcGVuc3NsLTEuMC4wYSINCiAJLz4NCmRpZmYgLS1naXQgYS9QQ2J1aWxkL3B5dGhvbmNvcmUudmNwcm9qIGIvUENidWlsZC9weXRob25jb3JlLnZjcHJvagppbmRleCBmODNmNmIxLi42OWE4Y2E4IDEwMDY0NAotLS0gYS9QQ2J1aWxkL3B5dGhvbmNvcmUudmNwcm9qCisrKyBiL1BDYnVpbGQvcHl0aG9uY29yZS52Y3Byb2oKQEAgLTg5MSw2ICs4OTEsMTAgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cSW5jbHVkZVxweW1hY3JvLmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxJbmNsdWRlXHB5bWVtLmgiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpAQCAtMTA5MSw2ICsxMDk1LDEwIEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNcZmF1bHRoYW5kbGVyLmMiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxNb2R1bGVzXGdjbW9kdWxlLmMiDQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpkaWZmIC0tZ2l0IGEvUENidWlsZC9yZWFkbWUudHh0IGIvUENidWlsZC9yZWFkbWUudHh0CmluZGV4IGRiZTAzMWYuLmY0N2Q1NTUgMTAwNjQ0Ci0tLSBhL1BDYnVpbGQvcmVhZG1lLnR4dAorKysgYi9QQ2J1aWxkL3JlYWRtZS50eHQKQEAgLTM3LDcgKzM3LDcgQEAKICAgIHJ1bm5pbmcgYSBQeXRob24gY29yZSBidWlsZGJvdCB0ZXN0IHNsYXZlOyBzZWUgU1VCUFJPSkVDVFMgYmVsb3cpCiAKIFdoZW4gdXNpbmcgdGhlIERlYnVnIHNldHRpbmcsIHRoZSBvdXRwdXQgZmlsZXMgaGF2ZSBhIF9kIGFkZGVkIHRvCi10aGVpciBuYW1lOiAgcHl0aG9uMzJfZC5kbGwsIHB5dGhvbl9kLmV4ZSwgcGFyc2VyX2QucHlkLCBhbmQgc28gb24uIEJvdGgKK3RoZWlyIG5hbWU6ICBweXRob24zM19kLmRsbCwgcHl0aG9uX2QuZXhlLCBwYXJzZXJfZC5weWQsIGFuZCBzbyBvbi4gQm90aAogdGhlIGJ1aWxkIGFuZCBydCBiYXRjaCBmaWxlcyBhY2NlcHQgYSAtZCBvcHRpb24gZm9yIGRlYnVnIGJ1aWxkcy4KIAogVGhlIDMyYml0IGJ1aWxkcyBlbmQgdXAgaW4gdGhlIHNvbHV0aW9uIGZvbGRlciBQQ2J1aWxkIHdoaWxlIHRoZSB4NjQgYnVpbGRzCkBAIC0xMTIsOSArMTEyLDkgQEAKICAgICBwcmUtYnVpbHQgVGNsL1RrIGluIGVpdGhlciAuLlwuLlx0Y2x0ayBmb3IgMzItYml0IG9yIC4uXC4uXHRjbHRrNjQgZm9yCiAgICAgNjQtYml0IChyZWxhdGl2ZSB0byB0aGlzIGRpcmVjdG9yeSkuICBTZWUgYmVsb3cgZm9yIGluc3RydWN0aW9ucyB0byBidWlsZAogICAgIFRjbC9Uay4gCi1iejIKLSAgICBQeXRob24gd3JhcHBlciBmb3IgdGhlIGxpYmJ6MiBjb21wcmVzc2lvbiBsaWJyYXJ5LiAgSG9tZXBhZ2UKLSAgICAgICAgaHR0cDovL3NvdXJjZXMucmVkaGF0LmNvbS9iemlwMi8KK19iejIKKyAgICBQeXRob24gd3JhcHBlciBmb3IgdGhlIGxpYmJ6aXAyIGNvbXByZXNzaW9uIGxpYnJhcnkuICBIb21lcGFnZQorICAgICAgICBodHRwOi8vd3d3LmJ6aXAub3JnLwogICAgIERvd25sb2FkIHRoZSBzb3VyY2UgZnJvbSB0aGUgcHl0aG9uLm9yZyBjb3B5IGludG8gdGhlIGRpc3QKICAgICBkaXJlY3Rvcnk6CiAKQEAgLTEzMyw2ICsxMzMsMTIgQEAKIAogICAgIEFsbCBvZiB0aGlzIG1hbmFnZWQgdG8gYnVpbGQgbGliYnoyLmxpYiBpbiAKICAgICBiemlwMi0xLjAuNVwkcGxhdGZvcm0tJGNvbmZpZ3VyYXRpb25cLCB3aGljaCB0aGUgUHl0aG9uIHByb2plY3QgbGlua3MgaW4uCitfbHptYQorICAgIFB5dGhvbiB3cmFwcGVyIGZvciB0aGUgbGlibHptYSBjb21wcmVzc2lvbiBsaWJyYXJ5LgorCisgICAgRG93bmxvYWQgdGhlIHByZS1idWlsdCBXaW5kb3dzIGJpbmFyaWVzIGZyb20gaHR0cDovL3R1a2Fhbmkub3JnL3h6LywgYW5kCisgICAgZXh0cmFjdCB0byAuLlx4ei01LjAuMy4gSWYgeW91IGFyZSB1c2luZyBhIG1vcmUgcmVjZW50IHZlcnNpb24gb2YgbGlibHptYSwKKyAgICBpdCB3aWxsIGJlIG5lY2Vzc2FyeSB0byByZW5hbWUgdGhlIGRpcmVjdG9yeSBmcm9tIHh6LTxWRVJTSU9OPiB0byB4ei01LjAuMy4KIAogX3NzbAogICAgIFB5dGhvbiB3cmFwcGVyIGZvciB0aGUgc2VjdXJlIHNvY2tldHMgbGlicmFyeS4KZGlmZiAtLWdpdCBhL1BhcnNlci9QeXRob24uYXNkbCBiL1BhcnNlci9QeXRob24uYXNkbAppbmRleCA5NDA3YjJmLi42YjA2ZGVjIDEwMDY0NAotLS0gYS9QYXJzZXIvUHl0aG9uLmFzZGwKKysrIGIvUGFyc2VyL1B5dGhvbi5hc2RsCkBAIC0xLDExOSArMSwxMjAgQEAKLS0tIEFTREwncyBmb3VyIGJ1aWx0aW4gdHlwZXMgYXJlIGlkZW50aWZpZXIsIGludCwgc3RyaW5nLCBvYmplY3QKKy0tIEFTREwncyBmaXZlIGJ1aWx0aW4gdHlwZXMgYXJlIGlkZW50aWZpZXIsIGludCwgc3RyaW5nLCBieXRlcywgb2JqZWN0CiAKLW1vZHVsZSBQeXRob24gdmVyc2lvbiAiJFJldmlzaW9uJCIKK21vZHVsZSBQeXRob24KIHsKLQltb2QgPSBNb2R1bGUoc3RtdCogYm9keSkKLQkgICAgfCBJbnRlcmFjdGl2ZShzdG10KiBib2R5KQotCSAgICB8IEV4cHJlc3Npb24oZXhwciBib2R5KQorICAgIG1vZCA9IE1vZHVsZShzdG10KiBib2R5KQorICAgICAgICB8IEludGVyYWN0aXZlKHN0bXQqIGJvZHkpCisgICAgICAgIHwgRXhwcmVzc2lvbihleHByIGJvZHkpCiAKLQkgICAgLS0gbm90IHJlYWxseSBhbiBhY3R1YWwgbm9kZSBidXQgdXNlZnVsIGluIEp5dGhvbidzIHR5cGVzeXN0ZW0uCi0JICAgIHwgU3VpdGUoc3RtdCogYm9keSkKKyAgICAgICAgLS0gbm90IHJlYWxseSBhbiBhY3R1YWwgbm9kZSBidXQgdXNlZnVsIGluIEp5dGhvbidzIHR5cGVzeXN0ZW0uCisgICAgICAgIHwgU3VpdGUoc3RtdCogYm9keSkKIAotCXN0bXQgPSBGdW5jdGlvbkRlZihpZGVudGlmaWVyIG5hbWUsIGFyZ3VtZW50cyBhcmdzLCAKKyAgICBzdG10ID0gRnVuY3Rpb25EZWYoaWRlbnRpZmllciBuYW1lLCBhcmd1bWVudHMgYXJncywgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdG10KiBib2R5LCBleHByKiBkZWNvcmF0b3JfbGlzdCwgZXhwcj8gcmV0dXJucykKLQkgICAgICB8IENsYXNzRGVmKGlkZW50aWZpZXIgbmFtZSwgCi0JCQkgZXhwciogYmFzZXMsCi0JCQkga2V5d29yZCoga2V5d29yZHMsCi0JCQkgZXhwcj8gc3RhcmFyZ3MsCi0JCQkgZXhwcj8ga3dhcmdzLAotCQkJIHN0bXQqIGJvZHksCi0JCQkgZXhwciogZGVjb3JhdG9yX2xpc3QpCi0JICAgICAgfCBSZXR1cm4oZXhwcj8gdmFsdWUpCisgICAgICAgICAgfCBDbGFzc0RlZihpZGVudGlmaWVyIG5hbWUsIAorICAgICAgICAgICAgIGV4cHIqIGJhc2VzLAorICAgICAgICAgICAgIGtleXdvcmQqIGtleXdvcmRzLAorICAgICAgICAgICAgIGV4cHI/IHN0YXJhcmdzLAorICAgICAgICAgICAgIGV4cHI/IGt3YXJncywKKyAgICAgICAgICAgICBzdG10KiBib2R5LAorICAgICAgICAgICAgIGV4cHIqIGRlY29yYXRvcl9saXN0KQorICAgICAgICAgIHwgUmV0dXJuKGV4cHI/IHZhbHVlKQogCi0JICAgICAgfCBEZWxldGUoZXhwciogdGFyZ2V0cykKLQkgICAgICB8IEFzc2lnbihleHByKiB0YXJnZXRzLCBleHByIHZhbHVlKQotCSAgICAgIHwgQXVnQXNzaWduKGV4cHIgdGFyZ2V0LCBvcGVyYXRvciBvcCwgZXhwciB2YWx1ZSkKKyAgICAgICAgICB8IERlbGV0ZShleHByKiB0YXJnZXRzKQorICAgICAgICAgIHwgQXNzaWduKGV4cHIqIHRhcmdldHMsIGV4cHIgdmFsdWUpCisgICAgICAgICAgfCBBdWdBc3NpZ24oZXhwciB0YXJnZXQsIG9wZXJhdG9yIG9wLCBleHByIHZhbHVlKQogCi0JICAgICAgLS0gdXNlICdvcmVsc2UnIGJlY2F1c2UgZWxzZSBpcyBhIGtleXdvcmQgaW4gdGFyZ2V0IGxhbmd1YWdlcwotCSAgICAgIHwgRm9yKGV4cHIgdGFyZ2V0LCBleHByIGl0ZXIsIHN0bXQqIGJvZHksIHN0bXQqIG9yZWxzZSkKLQkgICAgICB8IFdoaWxlKGV4cHIgdGVzdCwgc3RtdCogYm9keSwgc3RtdCogb3JlbHNlKQotCSAgICAgIHwgSWYoZXhwciB0ZXN0LCBzdG10KiBib2R5LCBzdG10KiBvcmVsc2UpCi0JICAgICAgfCBXaXRoKGV4cHIgY29udGV4dF9leHByLCBleHByPyBvcHRpb25hbF92YXJzLCBzdG10KiBib2R5KQorICAgICAgICAgIC0tIHVzZSAnb3JlbHNlJyBiZWNhdXNlIGVsc2UgaXMgYSBrZXl3b3JkIGluIHRhcmdldCBsYW5ndWFnZXMKKyAgICAgICAgICB8IEZvcihleHByIHRhcmdldCwgZXhwciBpdGVyLCBzdG10KiBib2R5LCBzdG10KiBvcmVsc2UpCisgICAgICAgICAgfCBXaGlsZShleHByIHRlc3QsIHN0bXQqIGJvZHksIHN0bXQqIG9yZWxzZSkKKyAgICAgICAgICB8IElmKGV4cHIgdGVzdCwgc3RtdCogYm9keSwgc3RtdCogb3JlbHNlKQorICAgICAgICAgIHwgV2l0aCh3aXRoaXRlbSogaXRlbXMsIHN0bXQqIGJvZHkpCiAKLQkgICAgICB8IFJhaXNlKGV4cHI/IGV4YywgZXhwcj8gY2F1c2UpCi0JICAgICAgfCBUcnlFeGNlcHQoc3RtdCogYm9keSwgZXhjZXB0aGFuZGxlciogaGFuZGxlcnMsIHN0bXQqIG9yZWxzZSkKLQkgICAgICB8IFRyeUZpbmFsbHkoc3RtdCogYm9keSwgc3RtdCogZmluYWxib2R5KQotCSAgICAgIHwgQXNzZXJ0KGV4cHIgdGVzdCwgZXhwcj8gbXNnKQorICAgICAgICAgIHwgUmFpc2UoZXhwcj8gZXhjLCBleHByPyBjYXVzZSkKKyAgICAgICAgICB8IFRyeShzdG10KiBib2R5LCBleGNlcHRoYW5kbGVyKiBoYW5kbGVycywgc3RtdCogb3JlbHNlLCBzdG10KiBmaW5hbGJvZHkpCisgICAgICAgICAgfCBBc3NlcnQoZXhwciB0ZXN0LCBleHByPyBtc2cpCiAKLQkgICAgICB8IEltcG9ydChhbGlhcyogbmFtZXMpCi0JICAgICAgfCBJbXBvcnRGcm9tKGlkZW50aWZpZXI/IG1vZHVsZSwgYWxpYXMqIG5hbWVzLCBpbnQ/IGxldmVsKQorICAgICAgICAgIHwgSW1wb3J0KGFsaWFzKiBuYW1lcykKKyAgICAgICAgICB8IEltcG9ydEZyb20oaWRlbnRpZmllcj8gbW9kdWxlLCBhbGlhcyogbmFtZXMsIGludD8gbGV2ZWwpCiAKLQkgICAgICB8IEdsb2JhbChpZGVudGlmaWVyKiBuYW1lcykKLQkgICAgICB8IE5vbmxvY2FsKGlkZW50aWZpZXIqIG5hbWVzKQotCSAgICAgIHwgRXhwcihleHByIHZhbHVlKQotCSAgICAgIHwgUGFzcyB8IEJyZWFrIHwgQ29udGludWUKKyAgICAgICAgICB8IEdsb2JhbChpZGVudGlmaWVyKiBuYW1lcykKKyAgICAgICAgICB8IE5vbmxvY2FsKGlkZW50aWZpZXIqIG5hbWVzKQorICAgICAgICAgIHwgRXhwcihleHByIHZhbHVlKQorICAgICAgICAgIHwgUGFzcyB8IEJyZWFrIHwgQ29udGludWUKIAotCSAgICAgIC0tIFhYWCBKeXRob24gd2lsbCBiZSBkaWZmZXJlbnQKLQkgICAgICAtLSBjb2xfb2Zmc2V0IGlzIHRoZSBieXRlIG9mZnNldCBpbiB0aGUgdXRmOCBzdHJpbmcgdGhlIHBhcnNlciB1c2VzCi0JICAgICAgYXR0cmlidXRlcyAoaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQpCisgICAgICAgICAgLS0gWFhYIEp5dGhvbiB3aWxsIGJlIGRpZmZlcmVudAorICAgICAgICAgIC0tIGNvbF9vZmZzZXQgaXMgdGhlIGJ5dGUgb2Zmc2V0IGluIHRoZSB1dGY4IHN0cmluZyB0aGUgcGFyc2VyIHVzZXMKKyAgICAgICAgICBhdHRyaWJ1dGVzIChpbnQgbGluZW5vLCBpbnQgY29sX29mZnNldCkKIAotCSAgICAgIC0tIEJvb2xPcCgpIGNhbiB1c2UgbGVmdCAmIHJpZ2h0PwotCWV4cHIgPSBCb29sT3AoYm9vbG9wIG9wLCBleHByKiB2YWx1ZXMpCi0JICAgICB8IEJpbk9wKGV4cHIgbGVmdCwgb3BlcmF0b3Igb3AsIGV4cHIgcmlnaHQpCi0JICAgICB8IFVuYXJ5T3AodW5hcnlvcCBvcCwgZXhwciBvcGVyYW5kKQotCSAgICAgfCBMYW1iZGEoYXJndW1lbnRzIGFyZ3MsIGV4cHIgYm9keSkKLQkgICAgIHwgSWZFeHAoZXhwciB0ZXN0LCBleHByIGJvZHksIGV4cHIgb3JlbHNlKQotCSAgICAgfCBEaWN0KGV4cHIqIGtleXMsIGV4cHIqIHZhbHVlcykKLQkgICAgIHwgU2V0KGV4cHIqIGVsdHMpCi0JICAgICB8IExpc3RDb21wKGV4cHIgZWx0LCBjb21wcmVoZW5zaW9uKiBnZW5lcmF0b3JzKQotCSAgICAgfCBTZXRDb21wKGV4cHIgZWx0LCBjb21wcmVoZW5zaW9uKiBnZW5lcmF0b3JzKQotCSAgICAgfCBEaWN0Q29tcChleHByIGtleSwgZXhwciB2YWx1ZSwgY29tcHJlaGVuc2lvbiogZ2VuZXJhdG9ycykKLQkgICAgIHwgR2VuZXJhdG9yRXhwKGV4cHIgZWx0LCBjb21wcmVoZW5zaW9uKiBnZW5lcmF0b3JzKQotCSAgICAgLS0gdGhlIGdyYW1tYXIgY29uc3RyYWlucyB3aGVyZSB5aWVsZCBleHByZXNzaW9ucyBjYW4gb2NjdXIKLQkgICAgIHwgWWllbGQoZXhwcj8gdmFsdWUpCi0JICAgICAtLSBuZWVkIHNlcXVlbmNlcyBmb3IgY29tcGFyZSB0byBkaXN0aW5ndWlzaCBiZXR3ZWVuCi0JICAgICAtLSB4IDwgNCA8IDMgYW5kICh4IDwgNCkgPCAzCi0JICAgICB8IENvbXBhcmUoZXhwciBsZWZ0LCBjbXBvcCogb3BzLCBleHByKiBjb21wYXJhdG9ycykKLQkgICAgIHwgQ2FsbChleHByIGZ1bmMsIGV4cHIqIGFyZ3MsIGtleXdvcmQqIGtleXdvcmRzLAotCQkJIGV4cHI/IHN0YXJhcmdzLCBleHByPyBrd2FyZ3MpCi0JICAgICB8IE51bShvYmplY3QgbikgLS0gYSBudW1iZXIgYXMgYSBQeU9iamVjdC4KLQkgICAgIHwgU3RyKHN0cmluZyBzKSAtLSBuZWVkIHRvIHNwZWNpZnkgcmF3LCB1bmljb2RlLCBldGM/Ci0JICAgICB8IEJ5dGVzKHN0cmluZyBzKQotCSAgICAgfCBFbGxpcHNpcwotCSAgICAgLS0gb3RoZXIgbGl0ZXJhbHM/IGJvb2xzPworICAgICAgICAgIC0tIEJvb2xPcCgpIGNhbiB1c2UgbGVmdCAmIHJpZ2h0PworICAgIGV4cHIgPSBCb29sT3AoYm9vbG9wIG9wLCBleHByKiB2YWx1ZXMpCisgICAgICAgICB8IEJpbk9wKGV4cHIgbGVmdCwgb3BlcmF0b3Igb3AsIGV4cHIgcmlnaHQpCisgICAgICAgICB8IFVuYXJ5T3AodW5hcnlvcCBvcCwgZXhwciBvcGVyYW5kKQorICAgICAgICAgfCBMYW1iZGEoYXJndW1lbnRzIGFyZ3MsIGV4cHIgYm9keSkKKyAgICAgICAgIHwgSWZFeHAoZXhwciB0ZXN0LCBleHByIGJvZHksIGV4cHIgb3JlbHNlKQorICAgICAgICAgfCBEaWN0KGV4cHIqIGtleXMsIGV4cHIqIHZhbHVlcykKKyAgICAgICAgIHwgU2V0KGV4cHIqIGVsdHMpCisgICAgICAgICB8IExpc3RDb21wKGV4cHIgZWx0LCBjb21wcmVoZW5zaW9uKiBnZW5lcmF0b3JzKQorICAgICAgICAgfCBTZXRDb21wKGV4cHIgZWx0LCBjb21wcmVoZW5zaW9uKiBnZW5lcmF0b3JzKQorICAgICAgICAgfCBEaWN0Q29tcChleHByIGtleSwgZXhwciB2YWx1ZSwgY29tcHJlaGVuc2lvbiogZ2VuZXJhdG9ycykKKyAgICAgICAgIHwgR2VuZXJhdG9yRXhwKGV4cHIgZWx0LCBjb21wcmVoZW5zaW9uKiBnZW5lcmF0b3JzKQorICAgICAgICAgLS0gdGhlIGdyYW1tYXIgY29uc3RyYWlucyB3aGVyZSB5aWVsZCBleHByZXNzaW9ucyBjYW4gb2NjdXIKKyAgICAgICAgIHwgWWllbGQoZXhwcj8gdmFsdWUpCisgICAgICAgICAgICAgfCBZaWVsZEZyb20oZXhwcj8gdmFsdWUpCisgICAgICAgICAtLSBuZWVkIHNlcXVlbmNlcyBmb3IgY29tcGFyZSB0byBkaXN0aW5ndWlzaCBiZXR3ZWVuCisgICAgICAgICAtLSB4IDwgNCA8IDMgYW5kICh4IDwgNCkgPCAzCisgICAgICAgICB8IENvbXBhcmUoZXhwciBsZWZ0LCBjbXBvcCogb3BzLCBleHByKiBjb21wYXJhdG9ycykKKyAgICAgICAgIHwgQ2FsbChleHByIGZ1bmMsIGV4cHIqIGFyZ3MsIGtleXdvcmQqIGtleXdvcmRzLAorICAgICAgICAgICAgIGV4cHI/IHN0YXJhcmdzLCBleHByPyBrd2FyZ3MpCisgICAgICAgICB8IE51bShvYmplY3QgbikgLS0gYSBudW1iZXIgYXMgYSBQeU9iamVjdC4KKyAgICAgICAgIHwgU3RyKHN0cmluZyBzKSAtLSBuZWVkIHRvIHNwZWNpZnkgcmF3LCB1bmljb2RlLCBldGM/CisgICAgICAgICB8IEJ5dGVzKGJ5dGVzIHMpCisgICAgICAgICB8IEVsbGlwc2lzCisgICAgICAgICAtLSBvdGhlciBsaXRlcmFscz8gYm9vbHM/CiAKLQkgICAgIC0tIHRoZSBmb2xsb3dpbmcgZXhwcmVzc2lvbiBjYW4gYXBwZWFyIGluIGFzc2lnbm1lbnQgY29udGV4dAotCSAgICAgfCBBdHRyaWJ1dGUoZXhwciB2YWx1ZSwgaWRlbnRpZmllciBhdHRyLCBleHByX2NvbnRleHQgY3R4KQotCSAgICAgfCBTdWJzY3JpcHQoZXhwciB2YWx1ZSwgc2xpY2Ugc2xpY2UsIGV4cHJfY29udGV4dCBjdHgpCi0JICAgICB8IFN0YXJyZWQoZXhwciB2YWx1ZSwgZXhwcl9jb250ZXh0IGN0eCkKLQkgICAgIHwgTmFtZShpZGVudGlmaWVyIGlkLCBleHByX2NvbnRleHQgY3R4KQotCSAgICAgfCBMaXN0KGV4cHIqIGVsdHMsIGV4cHJfY29udGV4dCBjdHgpIAotCSAgICAgfCBUdXBsZShleHByKiBlbHRzLCBleHByX2NvbnRleHQgY3R4KQorICAgICAgICAgLS0gdGhlIGZvbGxvd2luZyBleHByZXNzaW9uIGNhbiBhcHBlYXIgaW4gYXNzaWdubWVudCBjb250ZXh0CisgICAgICAgICB8IEF0dHJpYnV0ZShleHByIHZhbHVlLCBpZGVudGlmaWVyIGF0dHIsIGV4cHJfY29udGV4dCBjdHgpCisgICAgICAgICB8IFN1YnNjcmlwdChleHByIHZhbHVlLCBzbGljZSBzbGljZSwgZXhwcl9jb250ZXh0IGN0eCkKKyAgICAgICAgIHwgU3RhcnJlZChleHByIHZhbHVlLCBleHByX2NvbnRleHQgY3R4KQorICAgICAgICAgfCBOYW1lKGlkZW50aWZpZXIgaWQsIGV4cHJfY29udGV4dCBjdHgpCisgICAgICAgICB8IExpc3QoZXhwciogZWx0cywgZXhwcl9jb250ZXh0IGN0eCkgCisgICAgICAgICB8IFR1cGxlKGV4cHIqIGVsdHMsIGV4cHJfY29udGV4dCBjdHgpCiAKLQkgICAgICAtLSBjb2xfb2Zmc2V0IGlzIHRoZSBieXRlIG9mZnNldCBpbiB0aGUgdXRmOCBzdHJpbmcgdGhlIHBhcnNlciB1c2VzCi0JICAgICAgYXR0cmlidXRlcyAoaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQpCisgICAgICAgICAgLS0gY29sX29mZnNldCBpcyB0aGUgYnl0ZSBvZmZzZXQgaW4gdGhlIHV0Zjggc3RyaW5nIHRoZSBwYXJzZXIgdXNlcworICAgICAgICAgIGF0dHJpYnV0ZXMgKGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0KQogCi0JZXhwcl9jb250ZXh0ID0gTG9hZCB8IFN0b3JlIHwgRGVsIHwgQXVnTG9hZCB8IEF1Z1N0b3JlIHwgUGFyYW0KKyAgICBleHByX2NvbnRleHQgPSBMb2FkIHwgU3RvcmUgfCBEZWwgfCBBdWdMb2FkIHwgQXVnU3RvcmUgfCBQYXJhbQogCi0Jc2xpY2UgPSBTbGljZShleHByPyBsb3dlciwgZXhwcj8gdXBwZXIsIGV4cHI/IHN0ZXApIAotCSAgICAgIHwgRXh0U2xpY2Uoc2xpY2UqIGRpbXMpIAotCSAgICAgIHwgSW5kZXgoZXhwciB2YWx1ZSkgCisgICAgc2xpY2UgPSBTbGljZShleHByPyBsb3dlciwgZXhwcj8gdXBwZXIsIGV4cHI/IHN0ZXApIAorICAgICAgICAgIHwgRXh0U2xpY2Uoc2xpY2UqIGRpbXMpIAorICAgICAgICAgIHwgSW5kZXgoZXhwciB2YWx1ZSkgCiAKLQlib29sb3AgPSBBbmQgfCBPciAKKyAgICBib29sb3AgPSBBbmQgfCBPciAKIAotCW9wZXJhdG9yID0gQWRkIHwgU3ViIHwgTXVsdCB8IERpdiB8IE1vZCB8IFBvdyB8IExTaGlmdCAKKyAgICBvcGVyYXRvciA9IEFkZCB8IFN1YiB8IE11bHQgfCBEaXYgfCBNb2QgfCBQb3cgfCBMU2hpZnQgCiAgICAgICAgICAgICAgICAgIHwgUlNoaWZ0IHwgQml0T3IgfCBCaXRYb3IgfCBCaXRBbmQgfCBGbG9vckRpdgogCi0JdW5hcnlvcCA9IEludmVydCB8IE5vdCB8IFVBZGQgfCBVU3ViCisgICAgdW5hcnlvcCA9IEludmVydCB8IE5vdCB8IFVBZGQgfCBVU3ViCiAKLQljbXBvcCA9IEVxIHwgTm90RXEgfCBMdCB8IEx0RSB8IEd0IHwgR3RFIHwgSXMgfCBJc05vdCB8IEluIHwgTm90SW4KKyAgICBjbXBvcCA9IEVxIHwgTm90RXEgfCBMdCB8IEx0RSB8IEd0IHwgR3RFIHwgSXMgfCBJc05vdCB8IEluIHwgTm90SW4KIAotCWNvbXByZWhlbnNpb24gPSAoZXhwciB0YXJnZXQsIGV4cHIgaXRlciwgZXhwciogaWZzKQorICAgIGNvbXByZWhlbnNpb24gPSAoZXhwciB0YXJnZXQsIGV4cHIgaXRlciwgZXhwciogaWZzKQogCi0JLS0gbm90IHN1cmUgd2hhdCB0byBjYWxsIHRoZSBmaXJzdCBhcmd1bWVudCBmb3IgcmFpc2UgYW5kIGV4Y2VwdAotCWV4Y2VwdGhhbmRsZXIgPSBFeGNlcHRIYW5kbGVyKGV4cHI/IHR5cGUsIGlkZW50aWZpZXI/IG5hbWUsIHN0bXQqIGJvZHkpCi0JICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMgKGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0KQorICAgIGV4Y2VwdGhhbmRsZXIgPSBFeGNlcHRIYW5kbGVyKGV4cHI/IHR5cGUsIGlkZW50aWZpZXI/IG5hbWUsIHN0bXQqIGJvZHkpCisgICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXMgKGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0KQogCi0JYXJndW1lbnRzID0gKGFyZyogYXJncywgaWRlbnRpZmllcj8gdmFyYXJnLCBleHByPyB2YXJhcmdhbm5vdGF0aW9uLAorICAgIGFyZ3VtZW50cyA9IChhcmcqIGFyZ3MsIGlkZW50aWZpZXI/IHZhcmFyZywgZXhwcj8gdmFyYXJnYW5ub3RhdGlvbiwKICAgICAgICAgICAgICAgICAgICAgIGFyZyoga3dvbmx5YXJncywgaWRlbnRpZmllcj8ga3dhcmcsCiAgICAgICAgICAgICAgICAgICAgICBleHByPyBrd2FyZ2Fubm90YXRpb24sIGV4cHIqIGRlZmF1bHRzLAogICAgICAgICAgICAgICAgICAgICAgZXhwcioga3dfZGVmYXVsdHMpCi0JYXJnID0gKGlkZW50aWZpZXIgYXJnLCBleHByPyBhbm5vdGF0aW9uKQorICAgIGFyZyA9IChpZGVudGlmaWVyIGFyZywgZXhwcj8gYW5ub3RhdGlvbikKIAotICAgICAgICAtLSBrZXl3b3JkIGFyZ3VtZW50cyBzdXBwbGllZCB0byBjYWxsCi0gICAgICAgIGtleXdvcmQgPSAoaWRlbnRpZmllciBhcmcsIGV4cHIgdmFsdWUpCisgICAgLS0ga2V5d29yZCBhcmd1bWVudHMgc3VwcGxpZWQgdG8gY2FsbAorICAgIGtleXdvcmQgPSAoaWRlbnRpZmllciBhcmcsIGV4cHIgdmFsdWUpCiAKLSAgICAgICAgLS0gaW1wb3J0IG5hbWUgd2l0aCBvcHRpb25hbCAnYXMnIGFsaWFzLgotICAgICAgICBhbGlhcyA9IChpZGVudGlmaWVyIG5hbWUsIGlkZW50aWZpZXI/IGFzbmFtZSkKKyAgICAtLSBpbXBvcnQgbmFtZSB3aXRoIG9wdGlvbmFsICdhcycgYWxpYXMuCisgICAgYWxpYXMgPSAoaWRlbnRpZmllciBuYW1lLCBpZGVudGlmaWVyPyBhc25hbWUpCisKKyAgICB3aXRoaXRlbSA9IChleHByIGNvbnRleHRfZXhwciwgZXhwcj8gb3B0aW9uYWxfdmFycykKIH0KIApkaWZmIC0tZ2l0IGEvUGFyc2VyL2FzZGwucHkgYi9QYXJzZXIvYXNkbC5weQppbmRleCA3YjRlMmRjLi4wMWE4YjVlIDEwMDY0NAotLS0gYS9QYXJzZXIvYXNkbC5weQorKysgYi9QYXJzZXIvYXNkbC5weQpAQCAtMTE0LDI4ICsxMTQsMjAgQEAKICAgICAgICAgcmFpc2UgQVNETFN5bnRheEVycm9yKHRvay5saW5lbm8sIHRvaykKIAogICAgIGRlZiBwX21vZHVsZV8wKHNlbGYsIGluZm8pOgotICAgICAgICAiIG1vZHVsZSA6Oj0gSWQgSWQgdmVyc2lvbiB7IH0gIgotICAgICAgICBtb2R1bGUsIG5hbWUsIHZlcnNpb24sIF8wLCBfMSA9IGluZm8KKyAgICAgICAgIiBtb2R1bGUgOjo9IElkIElkIHsgfSAiCisgICAgICAgIG1vZHVsZSwgbmFtZSwgXzAsIF8xID0gaW5mbwogICAgICAgICBpZiBtb2R1bGUudmFsdWUgIT0gIm1vZHVsZSI6CiAgICAgICAgICAgICByYWlzZSBBU0RMU3ludGF4RXJyb3IobW9kdWxlLmxpbmVubywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2c9ImV4cGVjdGVkICdtb2R1bGUnLCBmb3VuZCAlcyIgJSBtb2R1bGUpCi0gICAgICAgIHJldHVybiBNb2R1bGUobmFtZSwgTm9uZSwgdmVyc2lvbikKKyAgICAgICAgcmV0dXJuIE1vZHVsZShuYW1lLCBOb25lKQogCiAgICAgZGVmIHBfbW9kdWxlKHNlbGYsIGluZm8pOgotICAgICAgICAiIG1vZHVsZSA6Oj0gSWQgSWQgdmVyc2lvbiB7IGRlZmluaXRpb25zIH0gIgotICAgICAgICBtb2R1bGUsIG5hbWUsIHZlcnNpb24sIF8wLCBkZWZpbml0aW9ucywgXzEgPSBpbmZvCisgICAgICAgICIgbW9kdWxlIDo6PSBJZCBJZCB7IGRlZmluaXRpb25zIH0gIgorICAgICAgICBtb2R1bGUsIG5hbWUsIF8wLCBkZWZpbml0aW9ucywgXzEgPSBpbmZvCiAgICAgICAgIGlmIG1vZHVsZS52YWx1ZSAhPSAibW9kdWxlIjoKICAgICAgICAgICAgIHJhaXNlIEFTRExTeW50YXhFcnJvcihtb2R1bGUubGluZW5vLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZz0iZXhwZWN0ZWQgJ21vZHVsZScsIGZvdW5kICVzIiAlIG1vZHVsZSkKLSAgICAgICAgcmV0dXJuIE1vZHVsZShuYW1lLCBkZWZpbml0aW9ucywgdmVyc2lvbikKLQotICAgIGRlZiBwX3ZlcnNpb24oc2VsZiwgaW5mbyk6Ci0gICAgICAgICJ2ZXJzaW9uIDo6PSBJZCBTdHJpbmciCi0gICAgICAgIHZlcnNpb24sIFYgPSBpbmZvCi0gICAgICAgIGlmIHZlcnNpb24udmFsdWUgIT0gInZlcnNpb24iOgotICAgICAgICAgICAgcmFpc2UgQVNETFN5bnRheEVycm9yKHZlcnNpb24ubGluZW5vLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZz0iZXhwZWN0ZWQgJ3ZlcnNpb24nLCBmb3VuZCAlIiAlIHZlcnNpb24pCi0gICAgICAgIHJldHVybiBWCisgICAgICAgIHJldHVybiBNb2R1bGUobmFtZSwgZGVmaW5pdGlvbnMpCiAKICAgICBkZWYgcF9kZWZpbml0aW9uXzAoc2VsZiwgZGVmaW5pdGlvbik6CiAgICAgICAgICIgZGVmaW5pdGlvbnMgOjo9IGRlZmluaXRpb24gIgpAQCAtMjM2LDcgKzIyOCw3IEBACiAgICAgICAgICIgZmllbGQgOjo9IElkID8gIgogICAgICAgICByZXR1cm4gRmllbGQodHlwZVswXSwgb3B0PVRydWUpCiAKLWJ1aWx0aW5fdHlwZXMgPSAoImlkZW50aWZpZXIiLCAic3RyaW5nIiwgImludCIsICJib29sIiwgIm9iamVjdCIpCitidWlsdGluX3R5cGVzID0gKCJpZGVudGlmaWVyIiwgInN0cmluZyIsICJieXRlcyIsICJpbnQiLCAib2JqZWN0IikKIAogIyBiZWxvdyBpcyBhIGNvbGxlY3Rpb24gb2YgY2xhc3NlcyB0byBjYXB0dXJlIHRoZSBBU1Qgb2YgYW4gQVNUIDotKQogIyBub3Qgc3VyZSBpZiBhbnkgb2YgdGhlIG1ldGhvZHMgYXJlIHVzZWZ1bCB5ZXQsIGJ1dCBJJ20gYWRkaW5nIHRoZW0KQEAgLTI0NiwxMCArMjM4LDkgQEAKICAgICBwYXNzICMgYSBtYXJrZXIgY2xhc3MKIAogY2xhc3MgTW9kdWxlKEFTVCk6Ci0gICAgZGVmIF9faW5pdF9fKHNlbGYsIG5hbWUsIGRmbnMsIHZlcnNpb24pOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBuYW1lLCBkZm5zKToKICAgICAgICAgc2VsZi5uYW1lID0gbmFtZQogICAgICAgICBzZWxmLmRmbnMgPSBkZm5zCi0gICAgICAgIHNlbGYudmVyc2lvbiA9IHZlcnNpb24KICAgICAgICAgc2VsZi50eXBlcyA9IHt9ICMgbWFwcyB0eXBlIG5hbWUgdG8gdmFsdWUgKGZyb20gZGZucykKICAgICAgICAgZm9yIHR5cGUgaW4gZGZuczoKICAgICAgICAgICAgIHNlbGYudHlwZXNbdHlwZS5uYW1lLnZhbHVlXSA9IHR5cGUudmFsdWUKZGlmZiAtLWdpdCBhL1BhcnNlci9hc2RsX2MucHkgYi9QYXJzZXIvYXNkbF9jLnB5CmluZGV4IGI4NWMwN2UuLjA3YzA2ZGUgMTAwNzU1Ci0tLSBhL1BhcnNlci9hc2RsX2MucHkKKysrIGIvUGFyc2VyL2FzZGxfYy5weQpAQCAtNSw2ICs1LDcgQEAKICMgaGFuZGxlIGZpZWxkcyB0aGF0IGhhdmUgYSB0eXBlIGJ1dCBubyBuYW1lCiAKIGltcG9ydCBvcywgc3lzCitpbXBvcnQgc3VicHJvY2VzcwogCiBpbXBvcnQgYXNkbAogCkBAIC04NCw4ICs4NSwxNiBAQAogCiAgICAgZGVmIF9faW5pdF9fKHNlbGYsIGZpbGUpOgogICAgICAgICBzZWxmLmZpbGUgPSBmaWxlCisgICAgICAgIHNlbGYuaWRlbnRpZmllcnMgPSBzZXQoKQogICAgICAgICBzdXBlcihFbWl0VmlzaXRvciwgc2VsZikuX19pbml0X18oKQogCisgICAgZGVmIGVtaXRfaWRlbnRpZmllcihzZWxmLCBuYW1lKToKKyAgICAgICAgbmFtZSA9IHN0cihuYW1lKQorICAgICAgICBpZiBuYW1lIGluIHNlbGYuaWRlbnRpZmllcnM6CisgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgc2VsZi5lbWl0KCJfUHlfSURFTlRJRklFUiglcyk7IiAlIG5hbWUsIDApCisgICAgICAgIHNlbGYuaWRlbnRpZmllcnMuYWRkKG5hbWUpCisKICAgICBkZWYgZW1pdChzZWxmLCBzLCBkZXB0aCwgcmVmbG93PVRydWUpOgogICAgICAgICAjIFhYWCByZWZsb3cgbG9uZyBsaW5lcz8KICAgICAgICAgaWYgcmVmbG93OgpAQCAtNDg1LDEyICs0OTQsMTIgQEAKIAogICAgIGRlZiB2aXNpdEZpZWxkKHNlbGYsIGZpZWxkLCBuYW1lLCBzdW09Tm9uZSwgcHJvZD1Ob25lLCBkZXB0aD0wKToKICAgICAgICAgY3R5cGUgPSBnZXRfY190eXBlKGZpZWxkLnR5cGUpCi0gICAgICAgIHNlbGYuZW1pdCgiaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCBcIiVzXCIpKSB7IiAlIGZpZWxkLm5hbWUsIGRlcHRoKQorICAgICAgICBzZWxmLmVtaXQoImlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfJXMpKSB7IiAlIGZpZWxkLm5hbWUsIGRlcHRoKQogICAgICAgICBzZWxmLmVtaXQoImludCByZXM7IiwgZGVwdGgrMSkKICAgICAgICAgaWYgZmllbGQuc2VxOgogICAgICAgICAgICAgc2VsZi5lbWl0KCJQeV9zc2l6ZV90IGxlbjsiLCBkZXB0aCsxKQogICAgICAgICAgICAgc2VsZi5lbWl0KCJQeV9zc2l6ZV90IGk7IiwgZGVwdGgrMSkKLSAgICAgICAgc2VsZi5lbWl0KCJ0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgXCIlc1wiKTsiICUgZmllbGQubmFtZSwgZGVwdGgrMSkKKyAgICAgICAgc2VsZi5lbWl0KCJ0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfJXMpOyIgJSBmaWVsZC5uYW1lLCBkZXB0aCsxKQogICAgICAgICBzZWxmLmVtaXQoImlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7IiwgZGVwdGgrMSkKICAgICAgICAgaWYgZmllbGQuc2VxOgogICAgICAgICAgICAgc2VsZi5lbWl0KCJpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7IiwgZGVwdGgrMSkKQEAgLTU1Miw2ICs1NjEsOCBAQAogICAgICAgICBzZWxmLmVtaXQoInN0YXRpYyBQeVR5cGVPYmplY3QgKiVzX3R5cGU7IiAlIG5hbWUsIDApCiAgICAgICAgIHNlbGYuZW1pdCgic3RhdGljIFB5T2JqZWN0KiBhc3Qyb2JqXyVzKHZvaWQqKTsiICUgbmFtZSwgMCkKICAgICAgICAgaWYgcHJvZC5maWVsZHM6CisgICAgICAgICAgICBmb3IgZiBpbiBwcm9kLmZpZWxkczoKKyAgICAgICAgICAgICAgICBzZWxmLmVtaXRfaWRlbnRpZmllcihmLm5hbWUpCiAgICAgICAgICAgICBzZWxmLmVtaXQoInN0YXRpYyBjaGFyIColc19maWVsZHNbXT17IiAlIG5hbWUsMCkKICAgICAgICAgICAgIGZvciBmIGluIHByb2QuZmllbGRzOgogICAgICAgICAgICAgICAgIHNlbGYuZW1pdCgnIiVzIiwnICUgZi5uYW1lLCAxKQpAQCAtNTYwLDYgKzU3MSw4IEBACiAgICAgZGVmIHZpc2l0U3VtKHNlbGYsIHN1bSwgbmFtZSk6CiAgICAgICAgIHNlbGYuZW1pdCgic3RhdGljIFB5VHlwZU9iamVjdCAqJXNfdHlwZTsiICUgbmFtZSwgMCkKICAgICAgICAgaWYgc3VtLmF0dHJpYnV0ZXM6CisgICAgICAgICAgICBmb3IgYSBpbiBzdW0uYXR0cmlidXRlczoKKyAgICAgICAgICAgICAgICBzZWxmLmVtaXRfaWRlbnRpZmllcihhLm5hbWUpCiAgICAgICAgICAgICBzZWxmLmVtaXQoInN0YXRpYyBjaGFyIColc19hdHRyaWJ1dGVzW10gPSB7IiAlIG5hbWUsIDApCiAgICAgICAgICAgICBmb3IgYSBpbiBzdW0uYXR0cmlidXRlczoKICAgICAgICAgICAgICAgICBzZWxmLmVtaXQoJyIlcyIsJyAlIGEubmFtZSwgMSkKQEAgLTU3OSw2ICs1OTIsOCBAQAogICAgIGRlZiB2aXNpdENvbnN0cnVjdG9yKHNlbGYsIGNvbnMsIG5hbWUpOgogICAgICAgICBzZWxmLmVtaXQoInN0YXRpYyBQeVR5cGVPYmplY3QgKiVzX3R5cGU7IiAlIGNvbnMubmFtZSwgMCkKICAgICAgICAgaWYgY29ucy5maWVsZHM6CisgICAgICAgICAgICBmb3IgdCBpbiBjb25zLmZpZWxkczoKKyAgICAgICAgICAgICAgICBzZWxmLmVtaXRfaWRlbnRpZmllcih0Lm5hbWUpCiAgICAgICAgICAgICBzZWxmLmVtaXQoInN0YXRpYyBjaGFyIColc19maWVsZHNbXT17IiAlIGNvbnMubmFtZSwgMCkKICAgICAgICAgICAgIGZvciB0IGluIGNvbnMuZmllbGRzOgogICAgICAgICAgICAgICAgIHNlbGYuZW1pdCgnIiVzIiwnICUgdC5uYW1lLCAxKQpAQCAtNTkxLDEwICs2MDYsMTEgQEAKIHN0YXRpYyBpbnQKIGFzdF90eXBlX2luaXQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3cpCiB7CisgICAgX1B5X0lERU5USUZJRVIoX2ZpZWxkcyk7CiAgICAgUHlfc3NpemVfdCBpLCBudW1maWVsZHMgPSAwOwogICAgIGludCByZXMgPSAtMTsKICAgICBQeU9iamVjdCAqa2V5LCAqdmFsdWUsICpmaWVsZHM7Ci0gICAgZmllbGRzID0gUHlPYmplY3RfR2V0QXR0clN0cmluZygoUHlPYmplY3QqKVB5X1RZUEUoc2VsZiksICJfZmllbGRzIik7CisgICAgZmllbGRzID0gX1B5T2JqZWN0X0dldEF0dHJJZCgoUHlPYmplY3QqKVB5X1RZUEUoc2VsZiksICZQeUlkX19maWVsZHMpOwogICAgIGlmICghZmllbGRzKQogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgIGlmIChmaWVsZHMpIHsKQEAgLTY0NCw3ICs2NjAsOCBAQAogYXN0X3R5cGVfcmVkdWNlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqdW51c2VkKQogewogICAgIFB5T2JqZWN0ICpyZXM7Ci0gICAgUHlPYmplY3QgKmRpY3QgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHNlbGYsICJfX2RpY3RfXyIpOworICAgIF9QeV9JREVOVElGSUVSKF9fZGljdF9fKTsKKyAgICBQeU9iamVjdCAqZGljdCA9IF9QeU9iamVjdF9HZXRBdHRySWQoc2VsZiwgJlB5SWRfX19kaWN0X18pOwogICAgIGlmIChkaWN0ID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKQEAgLTczMCw2ICs3NDcsNyBAQAogc3RhdGljIGludCBhZGRfYXR0cmlidXRlcyhQeVR5cGVPYmplY3QqIHR5cGUsIGNoYXIqKmF0dHJzLCBpbnQgbnVtX2ZpZWxkcykKIHsKICAgICBpbnQgaSwgcmVzdWx0OworICAgIF9QeV9JREVOVElGSUVSKF9hdHRyaWJ1dGVzKTsKICAgICBQeU9iamVjdCAqcywgKmwgPSBQeVR1cGxlX05ldyhudW1fZmllbGRzKTsKICAgICBpZiAoIWwpCiAgICAgICAgIHJldHVybiAwOwpAQCAtNzQxLDcgKzc1OSw3IEBACiAgICAgICAgIH0KICAgICAgICAgUHlUdXBsZV9TRVRfSVRFTShsLCBpLCBzKTsKICAgICB9Ci0gICAgcmVzdWx0ID0gUHlPYmplY3RfU2V0QXR0clN0cmluZygoUHlPYmplY3QqKXR5cGUsICJfYXR0cmlidXRlcyIsIGwpID49IDA7CisgICAgcmVzdWx0ID0gX1B5T2JqZWN0X1NldEF0dHJJZCgoUHlPYmplY3QqKXR5cGUsICZQeUlkX19hdHRyaWJ1dGVzLCBsKSA+PSAwOwogICAgIFB5X0RFQ1JFRihsKTsKICAgICByZXR1cm4gcmVzdWx0OwogfQpAQCAtNzc1LDYgKzc5Myw3IEBACiB9CiAjZGVmaW5lIGFzdDJvYmpfaWRlbnRpZmllciBhc3Qyb2JqX29iamVjdAogI2RlZmluZSBhc3Qyb2JqX3N0cmluZyBhc3Qyb2JqX29iamVjdAorI2RlZmluZSBhc3Qyb2JqX2J5dGVzIGFzdDJvYmpfb2JqZWN0CiAKIHN0YXRpYyBQeU9iamVjdCogYXN0Mm9ial9pbnQobG9uZyBiKQogewpAQCAtODEyLDYgKzgzMSwxNSBAQAogICAgIHJldHVybiBvYmoyYXN0X29iamVjdChvYmosIG91dCwgYXJlbmEpOwogfQogCitzdGF0aWMgaW50IG9iajJhc3RfYnl0ZXMoUHlPYmplY3QqIG9iaiwgUHlPYmplY3QqKiBvdXQsIFB5QXJlbmEqIGFyZW5hKQoreworICAgIGlmICghUHlCeXRlc19DaGVja0V4YWN0KG9iaikpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgIkFTVCBieXRlcyBtdXN0IGJlIG9mIHR5cGUgYnl0ZXMiKTsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIHJldHVybiBvYmoyYXN0X29iamVjdChvYmosIG91dCwgYXJlbmEpOworfQorCiBzdGF0aWMgaW50IG9iajJhc3RfaW50KFB5T2JqZWN0KiBvYmosIGludCogb3V0LCBQeUFyZW5hKiBhcmVuYSkKIHsKICAgICBpbnQgaTsKQEAgLTkxMCwxMCArOTM4LDYgQEAKICAgICAgICAgc2VsZi5lbWl0KCdpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIkFTVCIsIChQeU9iamVjdCopJkFTVF90eXBlKSA8IDApIHJldHVybiBOVUxMOycsIDEpCiAgICAgICAgIHNlbGYuZW1pdCgnaWYgKFB5TW9kdWxlX0FkZEludENvbnN0YW50KG0sICJQeUNGX09OTFlfQVNUIiwgUHlDRl9PTkxZX0FTVCkgPCAwKScsIDEpCiAgICAgICAgIHNlbGYuZW1pdCgicmV0dXJuIE5VTEw7IiwgMikKLSAgICAgICAgIyBWYWx1ZSBvZiB2ZXJzaW9uOiAiJFJldmlzaW9uJCIKLSAgICAgICAgc2VsZi5lbWl0KCdpZiAoUHlNb2R1bGVfQWRkU3RyaW5nQ29uc3RhbnQobSwgIl9fdmVyc2lvbl9fIiwgIiVzIikgPCAwKScKLSAgICAgICAgICAgICAgICAlIG1vZC52ZXJzaW9uLCAxKQotICAgICAgICBzZWxmLmVtaXQoInJldHVybiBOVUxMOyIsIDIpCiAgICAgICAgIGZvciBkZm4gaW4gbW9kLmRmbnM6CiAgICAgICAgICAgICBzZWxmLnZpc2l0KGRmbikKICAgICAgICAgc2VsZi5lbWl0KCJyZXR1cm4gbTsiLCAxKQpAQCAtOTk3LDcgKzEwMjEsNyBAQAogICAgICAgICBmb3IgYSBpbiBzdW0uYXR0cmlidXRlczoKICAgICAgICAgICAgIHNlbGYuZW1pdCgidmFsdWUgPSBhc3Qyb2JqXyVzKG8tPiVzKTsiICUgKGEudHlwZSwgYS5uYW1lKSwgMSkKICAgICAgICAgICAgIHNlbGYuZW1pdCgiaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7IiwgMSkKLSAgICAgICAgICAgIHNlbGYuZW1pdCgnaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiJXMiLCB2YWx1ZSkgPCAwKScgJSBhLm5hbWUsIDEpCisgICAgICAgICAgICBzZWxmLmVtaXQoJ2lmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfJXMsIHZhbHVlKSA8IDApJyAlIGEubmFtZSwgMSkKICAgICAgICAgICAgIHNlbGYuZW1pdCgnZ290byBmYWlsZWQ7JywgMikKICAgICAgICAgICAgIHNlbGYuZW1pdCgnUHlfREVDUkVGKHZhbHVlKTsnLCAxKQogICAgICAgICBzZWxmLmZ1bmNfZW5kKCkKQEAgLTEwNDMsNyArMTA2Nyw3IEBACiAgICAgICAgICAgICB2YWx1ZSA9ICJvLT52LiVzLiVzIiAlIChuYW1lLCBmaWVsZC5uYW1lKQogICAgICAgICBzZWxmLnNldChmaWVsZCwgdmFsdWUsIGRlcHRoKQogICAgICAgICBlbWl0KCJpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsiLCAwKQotICAgICAgICBlbWl0KCdpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICIlcyIsIHZhbHVlKSA9PSAtMSknICUgZmllbGQubmFtZSwgMCkKKyAgICAgICAgZW1pdCgnaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF8lcywgdmFsdWUpID09IC0xKScgJSBmaWVsZC5uYW1lLCAwKQogICAgICAgICBlbWl0KCJnb3RvIGZhaWxlZDsiLCAxKQogICAgICAgICBlbWl0KCJQeV9ERUNSRUYodmFsdWUpOyIsIDApCiAKQEAgLTExMzQsMjQgKzExNTgsMTIgQEAKIAogY29tbW9uX21zZyA9ICIvKiBGaWxlIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5ICVzLiAqL1xuXG4iCiAKLWNfZmlsZV9tc2cgPSAiIiIKLS8qCi0gICBfX3ZlcnNpb25fXyAlcy4KLQotICAgVGhpcyBtb2R1bGUgbXVzdCBiZSBjb21taXR0ZWQgc2VwYXJhdGVseSBhZnRlciBlYWNoIEFTVCBncmFtbWFyIGNoYW5nZTsKLSAgIFRoZSBfX3ZlcnNpb25fXyBudW1iZXIgaXMgc2V0IHRvIHRoZSByZXZpc2lvbiBudW1iZXIgb2YgdGhlIGNvbW1pdAotICAgY29udGFpbmluZyB0aGUgZ3JhbW1hciBjaGFuZ2UuCi0qLwotCi0iIiIKLQogZGVmIG1haW4oc3JjZmlsZSk6CiAgICAgYXJndjAgPSBzeXMuYXJndlswXQogICAgIGNvbXBvbmVudHMgPSBhcmd2MC5zcGxpdChvcy5zZXApCiAgICAgYXJndjAgPSBvcy5zZXAuam9pbihjb21wb25lbnRzWy0yOl0pCiAgICAgYXV0b19nZW5fbXNnID0gY29tbW9uX21zZyAlIGFyZ3YwCiAgICAgbW9kID0gYXNkbC5wYXJzZShzcmNmaWxlKQotICAgIG1vZC52ZXJzaW9uID0gIjgyMTYzIgogICAgIGlmIG5vdCBhc2RsLmNoZWNrKG1vZCk6CiAgICAgICAgIHN5cy5leGl0KDEpCiAgICAgaWYgSU5DX0RJUjoKQEAgLTExNzMsNyArMTE4NSw2IEBACiAgICAgICAgIHAgPSBvcy5wYXRoLmpvaW4oU1JDX0RJUiwgc3RyKG1vZC5uYW1lKSArICItYXN0LmMiKQogICAgICAgICBmID0gb3BlbihwLCAidyIpCiAgICAgICAgIGYud3JpdGUoYXV0b19nZW5fbXNnKQotICAgICAgICBmLndyaXRlKGNfZmlsZV9tc2cgJSBtb2QudmVyc2lvbikKICAgICAgICAgZi53cml0ZSgnI2luY2x1ZGUgIlB5dGhvbi5oIlxuJykKICAgICAgICAgZi53cml0ZSgnI2luY2x1ZGUgIiVzLWFzdC5oIlxuJyAlIG1vZC5uYW1lKQogICAgICAgICBmLndyaXRlKCdcbicpCmRpZmYgLS1naXQgYS9QYXJzZXIvaW50cmNoZWNrLmMgYi9QYXJzZXIvaW50cmNoZWNrLmMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ0Mzk4NjQuLjAwMDAwMDAKLS0tIGEvUGFyc2VyL2ludHJjaGVjay5jCisrKyAvZGV2L251bGwKQEAgLTEsMTc0ICswLDAgQEAKLQotLyogQ2hlY2sgZm9yIGludGVycnVwdHMgKi8KLQotI2luY2x1ZGUgIlB5dGhvbi5oIgotI2luY2x1ZGUgInB5dGhyZWFkLmgiCi0KLSNpZmRlZiBRVUlDS1dJTgotCi0jaW5jbHVkZSA8aW8uaD4KLQotdm9pZAotUHlPU19Jbml0SW50ZXJydXB0cyh2b2lkKQotewotfQotCi12b2lkCi1QeU9TX0ZpbmlJbnRlcnJ1cHRzKHZvaWQpCi17Ci19Ci0KLWludAotUHlPU19JbnRlcnJ1cHRPY2N1cnJlZCh2b2lkKQotewotICAgIF93eWllbGQoKTsKLX0KLQotI2RlZmluZSBPSwotCi0jZW5kaWYgLyogUVVJQ0tXSU4gKi8KLQotI2lmIGRlZmluZWQoX01fSVg4NikgJiYgIWRlZmluZWQoX19RTlhfXykKLSNpbmNsdWRlIDxpby5oPgotI2VuZGlmCi0KLSNpZiBkZWZpbmVkKE1TRE9TKSAmJiAhZGVmaW5lZChRVUlDS1dJTikKLQotI2lmZGVmIF9fR05VQ19fCi0KLS8qIFRoaXMgaXMgZm9yIERKR1BQJ3MgR08zMiBleHRlbmRlci4gIEkgZG9uJ3Qga25vdyBob3cgdG8gdHJhcAotICogY29udHJvbC1DICAoVGhlcmUncyBubyBBUEkgZm9yIGN0cmwtQywgYW5kIEkgZG9uJ3Qgd2FudCB0byBtZXNzIHdpdGgKLSAqIHRoZSBpbnRlcnJ1cHQgdmVjdG9ycy4pICBIb3dldmVyLCB0aGlzIERPRVMgY2F0Y2ggY29udHJvbC1icmVhay4KLSAqIC0tQW1yaXQKLSAqLwotCi0jaW5jbHVkZSA8Z28zMi5oPgotCi12b2lkCi1QeU9TX0luaXRJbnRlcnJ1cHRzKHZvaWQpCi17Ci0gICAgX2dvMzJfd2FudF9jdHJsX2JyZWFrKDEgLyogVFJVRSAqLyk7Ci19Ci0KLXZvaWQKLVB5T1NfRmluaUludGVycnVwdHModm9pZCkKLXsKLX0KLQotaW50Ci1QeU9TX0ludGVycnVwdE9jY3VycmVkKHZvaWQpCi17Ci0gICAgcmV0dXJuIF9nbzMyX3dhc19jdHJsX2JyZWFrX2hpdCgpOwotfQotCi0jZWxzZSAvKiAhX19HTlVDX18gKi8KLQotLyogVGhpcyBtaWdodCB3b3JrIGZvciBNUy1ET1MgKHVudGVzdGVkIHRob3VnaCk6ICovCi0KLXZvaWQKLVB5T1NfSW5pdEludGVycnVwdHModm9pZCkKLXsKLX0KLQotdm9pZAotUHlPU19GaW5pSW50ZXJydXB0cyh2b2lkKQotewotfQotCi1pbnQKLVB5T1NfSW50ZXJydXB0T2NjdXJyZWQodm9pZCkKLXsKLSAgICBpbnQgaW50ZXJydXB0ZWQgPSAwOwotICAgIHdoaWxlIChrYmhpdCgpKSB7Ci0gICAgICAgIGlmIChnZXRjaCgpID09ICdcMDAzJykKLSAgICAgICAgICAgIGludGVycnVwdGVkID0gMTsKLSAgICB9Ci0gICAgcmV0dXJuIGludGVycnVwdGVkOwotfQotCi0jZW5kaWYgLyogX19HTlVDX18gKi8KLQotI2RlZmluZSBPSwotCi0jZW5kaWYgLyogTVNET1MgJiYgIVFVSUNLV0lOICovCi0KLQotI2lmbmRlZiBPSwotCi0vKiBEZWZhdWx0IHZlcnNpb24gLS0gZm9yIHJlYWwgb3BlcmF0aW5nIHN5c3RlbXMgYW5kIGZvciBTdGFuZGFyZCBDICovCi0KLSNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgotI2luY2x1ZGUgPHNpZ25hbC5oPgotCi1zdGF0aWMgaW50IGludGVycnVwdGVkOwotCi12b2lkCi1QeUVycl9TZXRJbnRlcnJ1cHQodm9pZCkKLXsKLSAgICBpbnRlcnJ1cHRlZCA9IDE7Ci19Ci0KLWV4dGVybiBpbnQgUHlFcnJfQ2hlY2tTaWduYWxzKHZvaWQpOwotCi1zdGF0aWMgaW50Ci1jaGVja3NpZ25hbHNfd2l0aGFyZyh2b2lkICogYXJnKQotewotICAgIHJldHVybiBQeUVycl9DaGVja1NpZ25hbHMoKTsKLX0KLQotc3RhdGljIHZvaWQKLWludGNhdGNoZXIoaW50IHNpZykKLXsKLSAgICBleHRlcm4gdm9pZCBQeV9FeGl0KGludCk7Ci0gICAgc3RhdGljIGNoYXIgbWVzc2FnZVtdID0KLSJweXRob246IHRvIGludGVycnVwdCBhIHRydWx5IGhhbmdpbmcgUHl0aG9uIHByb2dyYW0sIGludGVycnVwdCBvbmNlIG1vcmUuXG4iOwotICAgIHN3aXRjaCAoaW50ZXJydXB0ZWQrKykgewotICAgIGNhc2UgMDoKLSAgICAgICAgYnJlYWs7Ci0gICAgY2FzZSAxOgotICAgICAgICB3cml0ZSgyLCBtZXNzYWdlLCBzdHJsZW4obWVzc2FnZSkpOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIDI6Ci0gICAgICAgIGludGVycnVwdGVkID0gMDsKLSAgICAgICAgUHlfRXhpdCgxKTsKLSAgICAgICAgYnJlYWs7Ci0gICAgfQotICAgIFB5T1Nfc2V0c2lnKFNJR0lOVCwgaW50Y2F0Y2hlcik7Ci0gICAgUHlfQWRkUGVuZGluZ0NhbGwoY2hlY2tzaWduYWxzX3dpdGhhcmcsIE5VTEwpOwotfQotCi1zdGF0aWMgdm9pZCAoKm9sZF9zaWdpbnRoYW5kbGVyKShpbnQpID0gU0lHX0RGTDsKLQotdm9pZAotUHlPU19Jbml0SW50ZXJydXB0cyh2b2lkKQotewotICAgIGlmICgob2xkX3NpZ2ludGhhbmRsZXIgPSBQeU9TX3NldHNpZyhTSUdJTlQsIFNJR19JR04pKSAhPSBTSUdfSUdOKQotICAgICAgICBQeU9TX3NldHNpZyhTSUdJTlQsIGludGNhdGNoZXIpOwotfQotCi12b2lkCi1QeU9TX0ZpbmlJbnRlcnJ1cHRzKHZvaWQpCi17Ci0gICAgUHlPU19zZXRzaWcoU0lHSU5ULCBvbGRfc2lnaW50aGFuZGxlcik7Ci19Ci0KLWludAotUHlPU19JbnRlcnJ1cHRPY2N1cnJlZCh2b2lkKQotewotICAgIGlmICghaW50ZXJydXB0ZWQpCi0gICAgICAgIHJldHVybiAwOwotICAgIGludGVycnVwdGVkID0gMDsKLSAgICByZXR1cm4gMTsKLX0KLQotI2VuZGlmIC8qICFPSyAqLwotCi12b2lkCi1QeU9TX0FmdGVyRm9yayh2b2lkKQotewotI2lmZGVmIFdJVEhfVEhSRUFECi0gICAgUHlFdmFsX1JlSW5pdFRocmVhZHMoKTsKLSAgICBQeVRocmVhZF9SZUluaXRUTFMoKTsKLSNlbmRpZgotfQpkaWZmIC0tZ2l0IGEvUGFyc2VyL3BhcnNldG9rLmMgYi9QYXJzZXIvcGFyc2V0b2suYwppbmRleCA3M2U3ZTNjLi43YmViNzM1IDEwMDY0NAotLS0gYS9QYXJzZXIvcGFyc2V0b2suYworKysgYi9QYXJzZXIvcGFyc2V0b2suYwpAQCAtMTMsNyArMTMsNyBAQAogCiAvKiBGb3J3YXJkICovCiBzdGF0aWMgbm9kZSAqcGFyc2V0b2soc3RydWN0IHRva19zdGF0ZSAqLCBncmFtbWFyICosIGludCwgcGVycmRldGFpbCAqLCBpbnQgKik7Ci1zdGF0aWMgdm9pZCBpbml0ZXJyKHBlcnJkZXRhaWwgKmVycl9yZXQsIGNvbnN0IGNoYXIqIGZpbGVuYW1lKTsKK3N0YXRpYyBpbnQgaW5pdGVycihwZXJyZGV0YWlsICplcnJfcmV0LCBjb25zdCBjaGFyKiBmaWxlbmFtZSk7CiAKIC8qIFBhcnNlIGlucHV0IGNvbWluZyBmcm9tIGEgc3RyaW5nLiAgUmV0dXJuIGVycm9yIGNvZGUsIHByaW50IHNvbWUgZXJyb3JzLiAqLwogbm9kZSAqCkBAIC00OCw3ICs0OCw4IEBACiAgICAgc3RydWN0IHRva19zdGF0ZSAqdG9rOwogICAgIGludCBleGVjX2lucHV0ID0gc3RhcnQgPT0gZmlsZV9pbnB1dDsKIAotICAgIGluaXRlcnIoZXJyX3JldCwgZmlsZW5hbWUpOworICAgIGlmIChpbml0ZXJyKGVycl9yZXQsIGZpbGVuYW1lKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgaWYgKCpmbGFncyAmIFB5UEFSU0VfSUdOT1JFX0NPT0tJRSkKICAgICAgICAgdG9rID0gUHlUb2tlbml6ZXJfRnJvbVVURjgocywgZXhlY19pbnB1dCk7CkBAIC01OSw3ICs2MCwxMCBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICB0b2stPmZpbGVuYW1lID0gZmlsZW5hbWUgPyBmaWxlbmFtZSA6ICI8c3RyaW5nPiI7CisjaWZuZGVmIFBHRU4KKyAgICBQeV9JTkNSRUYoZXJyX3JldC0+ZmlsZW5hbWUpOworICAgIHRvay0+ZmlsZW5hbWUgPSBlcnJfcmV0LT5maWxlbmFtZTsKKyNlbmRpZgogICAgIHJldHVybiBwYXJzZXRvayh0b2ssIGcsIHN0YXJ0LCBlcnJfcmV0LCBmbGFncyk7CiB9CiAKQEAgLTkwLDEzICs5NCwxNyBAQAogewogICAgIHN0cnVjdCB0b2tfc3RhdGUgKnRvazsKIAotICAgIGluaXRlcnIoZXJyX3JldCwgZmlsZW5hbWUpOworICAgIGlmIChpbml0ZXJyKGVycl9yZXQsIGZpbGVuYW1lKSA8IDApCisgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgaWYgKCh0b2sgPSBQeVRva2VuaXplcl9Gcm9tRmlsZShmcCwgKGNoYXIgKillbmMsIHBzMSwgcHMyKSkgPT0gTlVMTCkgewogICAgICAgICBlcnJfcmV0LT5lcnJvciA9IEVfTk9NRU07CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICB0b2stPmZpbGVuYW1lID0gZmlsZW5hbWU7CisjaWZuZGVmIFBHRU4KKyAgICBQeV9JTkNSRUYoZXJyX3JldC0+ZmlsZW5hbWUpOworICAgIHRvay0+ZmlsZW5hbWUgPSBlcnJfcmV0LT5maWxlbmFtZTsKKyNlbmRpZgogICAgIHJldHVybiBwYXJzZXRvayh0b2ssIGcsIHN0YXJ0LCBlcnJfcmV0LCBmbGFncyk7CiB9CiAKQEAgLTEyNyw3ICsxMzUsNyBAQAogewogICAgIHBhcnNlcl9zdGF0ZSAqcHM7CiAgICAgbm9kZSAqbjsKLSAgICBpbnQgc3RhcnRlZCA9IDAsIGhhbmRsaW5nX2ltcG9ydCA9IDAsIGhhbmRsaW5nX3dpdGggPSAwOworICAgIGludCBzdGFydGVkID0gMDsKIAogICAgIGlmICgocHMgPSBQeVBhcnNlcl9OZXcoZywgc3RhcnQpKSA9PSBOVUxMKSB7CiAgICAgICAgIGZwcmludGYoc3RkZXJyLCAibm8gbWVtIGZvciBuZXcgcGFyc2VyXG4iKTsKQEAgLTE1NCw3ICsxNjIsNiBAQAogICAgICAgICB9CiAgICAgICAgIGlmICh0eXBlID09IEVORE1BUktFUiAmJiBzdGFydGVkKSB7CiAgICAgICAgICAgICB0eXBlID0gTkVXTElORTsgLyogQWRkIGFuIGV4dHJhIG5ld2xpbmUgKi8KLSAgICAgICAgICAgIGhhbmRsaW5nX3dpdGggPSBoYW5kbGluZ19pbXBvcnQgPSAwOwogICAgICAgICAgICAgc3RhcnRlZCA9IDA7CiAgICAgICAgICAgICAvKiBBZGQgdGhlIHJpZ2h0IG51bWJlciBvZiBkZWRlbnQgdG9rZW5zLAogICAgICAgICAgICAgICAgZXhjZXB0IGlmIGEgY2VydGFpbiBmbGFnIGlzIGdpdmVuIC0tCkBAIC0yMTcsNiArMjI0LDM2IEBACiAgICAgaWYgKGVycl9yZXQtPmVycm9yID09IEVfRE9ORSkgewogICAgICAgICBuID0gcHMtPnBfdHJlZTsKICAgICAgICAgcHMtPnBfdHJlZSA9IE5VTEw7CisKKyNpZm5kZWYgUEdFTgorICAgICAgICAvKiBDaGVjayB0aGF0IHRoZSBzb3VyY2UgZm9yIGEgc2luZ2xlIGlucHV0IHN0YXRlbWVudCByZWFsbHkKKyAgICAgICAgICAgaXMgYSBzaW5nbGUgc3RhdGVtZW50IGJ5IGxvb2tpbmcgYXQgd2hhdCBpcyBsZWZ0IGluIHRoZQorICAgICAgICAgICBidWZmZXIgYWZ0ZXIgcGFyc2luZy4gIFRyYWlsaW5nIHdoaXRlc3BhY2UgYW5kIGNvbW1lbnRzCisgICAgICAgICAgIGFyZSBPSy4gICovCisgICAgICAgIGlmIChzdGFydCA9PSBzaW5nbGVfaW5wdXQpIHsKKyAgICAgICAgICAgIGNoYXIgKmN1ciA9IHRvay0+Y3VyOworICAgICAgICAgICAgY2hhciBjID0gKnRvay0+Y3VyOworCisgICAgICAgICAgICBmb3IgKDs7KSB7CisgICAgICAgICAgICAgICAgd2hpbGUgKGMgPT0gJyAnIHx8IGMgPT0gJ1x0JyB8fCBjID09ICdcbicgfHwgYyA9PSAnXDAxNCcpCisgICAgICAgICAgICAgICAgICAgIGMgPSAqKytjdXI7CisKKyAgICAgICAgICAgICAgICBpZiAoIWMpCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworCisgICAgICAgICAgICAgICAgaWYgKGMgIT0gJyMnKSB7CisgICAgICAgICAgICAgICAgICAgIGVycl9yZXQtPmVycm9yID0gRV9CQURTSU5HTEU7CisgICAgICAgICAgICAgICAgICAgIFB5Tm9kZV9GcmVlKG4pOworICAgICAgICAgICAgICAgICAgICBuID0gTlVMTDsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgLyogU3VjayB1cCBjb21tZW50LiAqLworICAgICAgICAgICAgICAgIHdoaWxlIChjICYmIGMgIT0gJ1xuJykKKyAgICAgICAgICAgICAgICAgICAgYyA9ICorK2N1cjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorI2VuZGlmCiAgICAgfQogICAgIGVsc2UKICAgICAgICAgbiA9IE5VTEw7CkBAIC0yMjcsNyArMjY0LDcgQEAKICAgICBQeVBhcnNlcl9EZWxldGUocHMpOwogCiAgICAgaWYgKG4gPT0gTlVMTCkgewotICAgICAgICBpZiAodG9rLT5saW5lbm8gPD0gMSAmJiB0b2stPmRvbmUgPT0gRV9FT0YpCisgICAgICAgIGlmICh0b2stPmRvbmUgPT0gRV9FT0YpCiAgICAgICAgICAgICBlcnJfcmV0LT5lcnJvciA9IEVfRU9GOwogICAgICAgICBlcnJfcmV0LT5saW5lbm8gPSB0b2stPmxpbmVubzsKICAgICAgICAgaWYgKHRvay0+YnVmICE9IE5VTEwpIHsKQEAgLTI3MCwxNCArMzA3LDI0IEBACiAgICAgcmV0dXJuIG47CiB9CiAKLXN0YXRpYyB2b2lkCitzdGF0aWMgaW50CiBpbml0ZXJyKHBlcnJkZXRhaWwgKmVycl9yZXQsIGNvbnN0IGNoYXIgKmZpbGVuYW1lKQogewogICAgIGVycl9yZXQtPmVycm9yID0gRV9PSzsKLSAgICBlcnJfcmV0LT5maWxlbmFtZSA9IGZpbGVuYW1lOwogICAgIGVycl9yZXQtPmxpbmVubyA9IDA7CiAgICAgZXJyX3JldC0+b2Zmc2V0ID0gMDsKICAgICBlcnJfcmV0LT50ZXh0ID0gTlVMTDsKICAgICBlcnJfcmV0LT50b2tlbiA9IC0xOwogICAgIGVycl9yZXQtPmV4cGVjdGVkID0gLTE7CisjaWZuZGVmIFBHRU4KKyAgICBpZiAoZmlsZW5hbWUpCisgICAgICAgIGVycl9yZXQtPmZpbGVuYW1lID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChmaWxlbmFtZSk7CisgICAgZWxzZQorICAgICAgICBlcnJfcmV0LT5maWxlbmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCI8c3RyaW5nPiIpOworICAgIGlmIChlcnJfcmV0LT5maWxlbmFtZSA9PSBOVUxMKSB7CisgICAgICAgIGVycl9yZXQtPmVycm9yID0gRV9FUlJPUjsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyNlbmRpZgorICAgIHJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvUGFyc2VyL3BhcnNldG9rX3BnZW4uYyBiL1BhcnNlci9wYXJzZXRva19wZ2VuLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTdiOTI4OAotLS0gL2Rldi9udWxsCisrKyBiL1BhcnNlci9wYXJzZXRva19wZ2VuLmMKQEAgLTAsMCArMSwyIEBACisjZGVmaW5lIFBHRU4KKyNpbmNsdWRlICJwYXJzZXRvay5jIgpkaWZmIC0tZ2l0IGEvUGFyc2VyL3BnZW5tYWluLmMgYi9QYXJzZXIvcGdlbm1haW4uYwppbmRleCA0YjdiNTVhLi41MmI4MzgwIDEwMDY0NAotLS0gYS9QYXJzZXIvcGdlbm1haW4uYworKysgYi9QYXJzZXIvcGdlbm1haW4uYwpAQCAtMjksNiArMjksOCBAQAogLyogRm9yd2FyZCAqLwogZ3JhbW1hciAqZ2V0Z3JhbW1hcihjaGFyICpmaWxlbmFtZSk7CiAKK3ZvaWQgUHlfRXhpdChpbnQpIF9QeV9OT19SRVRVUk47CisKIHZvaWQKIFB5X0V4aXQoaW50IHN0cykKIHsKZGlmZiAtLWdpdCBhL1BhcnNlci90b2tlbml6ZXIuYyBiL1BhcnNlci90b2tlbml6ZXIuYwppbmRleCA1YmExMmE0Li41NWY0MzEzIDEwMDY0NAotLS0gYS9QYXJzZXIvdG9rZW5pemVyLmMKKysrIGIvUGFyc2VyL3Rva2VuaXplci5jCkBAIC0xMjgsNyArMTI4LDYgQEAKICAgICB0b2stPnByb21wdCA9IHRvay0+bmV4dHByb21wdCA9IE5VTEw7CiAgICAgdG9rLT5saW5lbm8gPSAwOwogICAgIHRvay0+bGV2ZWwgPSAwOwotICAgIHRvay0+ZmlsZW5hbWUgPSBOVUxMOwogICAgIHRvay0+YWx0d2FybmluZyA9IDE7CiAgICAgdG9rLT5hbHRlcnJvciA9IDE7CiAgICAgdG9rLT5hbHR0YWJzaXplID0gMTsKQEAgLTE0MCw2ICsxMzksNyBAQAogICAgIHRvay0+ZW5jb2RpbmcgPSBOVUxMOwogICAgIHRvay0+Y29udF9saW5lID0gMDsKICNpZm5kZWYgUEdFTgorICAgIHRvay0+ZmlsZW5hbWUgPSBOVUxMOwogICAgIHRvay0+ZGVjb2RpbmdfcmVhZGxpbmUgPSBOVUxMOwogICAgIHRvay0+ZGVjb2RpbmdfYnVmZmVyID0gTlVMTDsKICNlbmRpZgpAQCAtNDYyLDYgKzQ2Miw4IEBACiBmcF9zZXRyZWFkbChzdHJ1Y3QgdG9rX3N0YXRlICp0b2ssIGNvbnN0IGNoYXIqIGVuYykKIHsKICAgICBQeU9iamVjdCAqcmVhZGxpbmUgPSBOVUxMLCAqc3RyZWFtID0gTlVMTCwgKmlvID0gTlVMTDsKKyAgICBfUHlfSURFTlRJRklFUihvcGVuKTsKKyAgICBfUHlfSURFTlRJRklFUihyZWFkbGluZSk7CiAgICAgaW50IGZkOwogCiAgICAgaW8gPSBQeUltcG9ydF9JbXBvcnRNb2R1bGVOb0Jsb2NrKCJpbyIpOwpAQCAtNDc0LDEzICs0NzYsMTMgQEAKICAgICAgICAgZ290byBjbGVhbnVwOwogICAgIH0KIAotICAgIHN0cmVhbSA9IFB5T2JqZWN0X0NhbGxNZXRob2QoaW8sICJvcGVuIiwgImlzaXNPT08iLAorICAgIHN0cmVhbSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoaW8sICZQeUlkX29wZW4sICJpc2lzT09PIiwKICAgICAgICAgICAgICAgICAgICAgZmQsICJyIiwgLTEsIGVuYywgUHlfTm9uZSwgUHlfTm9uZSwgUHlfRmFsc2UpOwogICAgIGlmIChzdHJlYW0gPT0gTlVMTCkKICAgICAgICAgZ290byBjbGVhbnVwOwogCiAgICAgUHlfWERFQ1JFRih0b2stPmRlY29kaW5nX3JlYWRsaW5lKTsKLSAgICByZWFkbGluZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoc3RyZWFtLCAicmVhZGxpbmUiKTsKKyAgICByZWFkbGluZSA9IF9QeU9iamVjdF9HZXRBdHRySWQoc3RyZWFtLCAmUHlJZF9yZWFkbGluZSk7CiAgICAgdG9rLT5kZWNvZGluZ19yZWFkbGluZSA9IHJlYWRsaW5lOwogCiAgICAgLyogVGhlIGZpbGUgaGFzIGJlZW4gcmVvcGVuZWQ7IHBhcnNpbmcgd2lsbCByZXN0YXJ0IGZyb20KQEAgLTU0NSw3ICs1NDcsNiBAQAogewogICAgIGNoYXIgKmxpbmUgPSBOVUxMOwogICAgIGludCBiYWRjaGFyID0gMDsKLSAgICBQeU9iamVjdCAqZmlsZW5hbWU7CiAgICAgZm9yICg7OykgewogICAgICAgICBpZiAodG9rLT5kZWNvZGluZ19zdGF0ZSA9PSBTVEFURV9OT1JNQUwpIHsKICAgICAgICAgICAgIC8qIFdlIGFscmVhZHkgaGF2ZSBhIGNvZGVjIGFzc29jaWF0ZWQgd2l0aApAQCAtNTg2LDE5ICs1ODcsMTIgQEAKICAgICBpZiAoYmFkY2hhcikgewogICAgICAgICAvKiBOZWVkIHRvIGFkZCAxIHRvIHRoZSBsaW5lIG51bWJlciwgc2luY2UgdGhpcyBsaW5lCiAgICAgICAgICAgIGhhcyBub3QgYmVlbiBjb3VudGVkLCB5ZXQuICAqLwotICAgICAgICBpZiAodG9rLT5maWxlbmFtZSAhPSBOVUxMKQotICAgICAgICAgICAgZmlsZW5hbWUgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KHRvay0+ZmlsZW5hbWUpOwotICAgICAgICBlbHNlCi0gICAgICAgICAgICBmaWxlbmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCI8ZmlsZT4iKTsKLSAgICAgICAgaWYgKGZpbGVuYW1lICE9IE5VTEwpIHsKLSAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19TeW50YXhFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgIk5vbi1VVEYtOCBjb2RlIHN0YXJ0aW5nIHdpdGggJ1xceCUuMngnICIKLSAgICAgICAgICAgICAgICAgICAgImluIGZpbGUgJVUgb24gbGluZSAlaSwgIgotICAgICAgICAgICAgICAgICAgICAiYnV0IG5vIGVuY29kaW5nIGRlY2xhcmVkOyAiCi0gICAgICAgICAgICAgICAgICAgICJzZWUgaHR0cDovL3B5dGhvbi5vcmcvZGV2L3BlcHMvcGVwLTAyNjMvIGZvciBkZXRhaWxzIiwKLSAgICAgICAgICAgICAgICAgICAgYmFkY2hhciwgZmlsZW5hbWUsIHRvay0+bGluZW5vICsgMSk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYoZmlsZW5hbWUpOwotICAgICAgICB9CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19TeW50YXhFcnJvciwKKyAgICAgICAgICAgICAgICAiTm9uLVVURi04IGNvZGUgc3RhcnRpbmcgd2l0aCAnXFx4JS4yeCcgIgorICAgICAgICAgICAgICAgICJpbiBmaWxlICVVIG9uIGxpbmUgJWksICIKKyAgICAgICAgICAgICAgICAiYnV0IG5vIGVuY29kaW5nIGRlY2xhcmVkOyAiCisgICAgICAgICAgICAgICAgInNlZSBodHRwOi8vcHl0aG9uLm9yZy9kZXYvcGVwcy9wZXAtMDI2My8gZm9yIGRldGFpbHMiLAorICAgICAgICAgICAgICAgIGJhZGNoYXIsIHRvay0+ZmlsZW5hbWUsIHRvay0+bGluZW5vICsgMSk7CiAgICAgICAgIHJldHVybiBlcnJvcl9yZXQodG9rKTsKICAgICB9CiAjZW5kaWYKQEAgLTg1Niw2ICs4NTAsNyBAQAogI2lmbmRlZiBQR0VOCiAgICAgUHlfWERFQ1JFRih0b2stPmRlY29kaW5nX3JlYWRsaW5lKTsKICAgICBQeV9YREVDUkVGKHRvay0+ZGVjb2RpbmdfYnVmZmVyKTsKKyAgICBQeV9YREVDUkVGKHRvay0+ZmlsZW5hbWUpOwogI2VuZGlmCiAgICAgaWYgKHRvay0+ZnAgIT0gTlVMTCAmJiB0b2stPmJ1ZiAhPSBOVUxMKQogICAgICAgICBQeU1lbV9GUkVFKHRvay0+YnVmKTsKQEAgLTEyNTAsOCArMTI0NSwxMyBAQAogICAgICAgICByZXR1cm4gMTsKICAgICB9CiAgICAgaWYgKHRvay0+YWx0d2FybmluZykgewotICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiJXM6IGluY29uc2lzdGVudCB1c2Ugb2YgdGFicyBhbmQgc3BhY2VzICIKKyNpZmRlZiBQR0VOCisgICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCJpbmNvbnNpc3RlbnQgdXNlIG9mIHRhYnMgYW5kIHNwYWNlcyAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICJpbiBpbmRlbnRhdGlvblxuIik7CisjZWxzZQorICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiVVOiBpbmNvbnNpc3RlbnQgdXNlIG9mIHRhYnMgYW5kIHNwYWNlcyAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbiBpbmRlbnRhdGlvblxuIiwgdG9rLT5maWxlbmFtZSk7CisjZW5kaWYKICAgICAgICAgdG9rLT5hbHR3YXJuaW5nID0gMDsKICAgICB9CiAgICAgcmV0dXJuIDA7CkBAIC0xMjYwLDE0ICsxMjYwLDE2IEBACiAjaWZkZWYgUEdFTgogI2RlZmluZSB2ZXJpZnlfaWRlbnRpZmllcih0b2spIDEKICNlbHNlCi0vKiBWZXJpZnkgdGhhdCB0aGUgaWRlbnRpZmllciBmb2xsb3dzIFBFUCAzMTMxLiAqLworLyogVmVyaWZ5IHRoYXQgdGhlIGlkZW50aWZpZXIgZm9sbG93cyBQRVAgMzEzMS4KKyAgIEFsbCBpZGVudGlmaWVyIHN0cmluZ3MgYXJlIGd1YXJhbnRlZWQgdG8gYmUgInJlYWR5IiB1bmljb2RlIG9iamVjdHMuCisgKi8KIHN0YXRpYyBpbnQKIHZlcmlmeV9pZGVudGlmaWVyKHN0cnVjdCB0b2tfc3RhdGUgKnRvaykKIHsKICAgICBQeU9iamVjdCAqczsKICAgICBpbnQgcmVzdWx0OwogICAgIHMgPSBQeVVuaWNvZGVfRGVjb2RlVVRGOCh0b2stPnN0YXJ0LCB0b2stPmN1ciAtIHRvay0+c3RhcnQsIE5VTEwpOwotICAgIGlmIChzID09IE5VTEwpIHsKKyAgICBpZiAocyA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShzKSA9PSAtMSkgewogICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19Vbmljb2RlRGVjb2RlRXJyb3IpKSB7CiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICAgICAgdG9rLT5kb25lID0gRV9JREVOVElGSUVSOwpAQCAtMTQxMCwxMyArMTQxMiwxNSBAQAogICAgIC8qIElkZW50aWZpZXIgKG1vc3QgZnJlcXVlbnQgdG9rZW4hKSAqLwogICAgIG5vbmFzY2lpID0gMDsKICAgICBpZiAoaXNfcG90ZW50aWFsX2lkZW50aWZpZXJfc3RhcnQoYykpIHsKLSAgICAgICAgLyogUHJvY2VzcyBiIiIsIHIiIiBhbmQgYnIiIiAqLwotICAgICAgICBpZiAoYyA9PSAnYicgfHwgYyA9PSAnQicpIHsKLSAgICAgICAgICAgIGMgPSB0b2tfbmV4dGModG9rKTsKLSAgICAgICAgICAgIGlmIChjID09ICciJyB8fCBjID09ICdcJycpCi0gICAgICAgICAgICAgICAgZ290byBsZXR0ZXJfcXVvdGU7Ci0gICAgICAgIH0KLSAgICAgICAgaWYgKGMgPT0gJ3InIHx8IGMgPT0gJ1InKSB7CisgICAgICAgIC8qIFByb2Nlc3MgYiIiLCByIiIsIGJyIiIgYW5kIHJiIiIgKi8KKyAgICAgICAgaW50IHNhd19iID0gMCwgc2F3X3IgPSAwOworICAgICAgICB3aGlsZSAoMSkgeworICAgICAgICAgICAgaWYgKCFzYXdfYiAmJiAoYyA9PSAnYicgfHwgYyA9PSAnQicpKQorICAgICAgICAgICAgICAgIHNhd19iID0gMTsKKyAgICAgICAgICAgIGVsc2UgaWYgKCFzYXdfciAmJiAoYyA9PSAncicgfHwgYyA9PSAnUicpKQorICAgICAgICAgICAgICAgIHNhd19yID0gMTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGMgPSB0b2tfbmV4dGModG9rKTsKICAgICAgICAgICAgIGlmIChjID09ICciJyB8fCBjID09ICdcJycpCiAgICAgICAgICAgICAgICAgZ290byBsZXR0ZXJfcXVvdGU7CkBAIC0xNjkyLDE3ICsxNjk2LDE4IEBACiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotLyogR2V0IC0qLSBlbmNvZGluZyAtKi0gZnJvbSBhIFB5dGhvbiBmaWxlLgorLyogR2V0IHRoZSBlbmNvZGluZyBvZiBhIFB5dGhvbiBmaWxlLiBDaGVjayBmb3IgdGhlIGNvZGluZyBjb29raWUgYW5kIGNoZWNrIGlmCisgICB0aGUgZmlsZSBzdGFydHMgd2l0aCBhIEJPTS4KIAotICAgUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nIHJldHVybnMgTlVMTCB3aGVuIGl0IGNhbid0IGZpbmQgdGhlIGVuY29kaW5nIGluCi0gICB0aGUgZmlyc3Qgb3Igc2Vjb25kIGxpbmUgb2YgdGhlIGZpbGUgKGluIHdoaWNoIGNhc2UgdGhlIGVuY29kaW5nCi0gICBzaG91bGQgYmUgYXNzdW1lZCB0byBiZSBQeVVuaWNvZGVfR2V0RGVmYXVsdEVuY29kaW5nKCkpLgorICAgUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nRmlsZW5hbWUoKSByZXR1cm5zIE5VTEwgd2hlbiBpdCBjYW4ndCBmaW5kIHRoZQorICAgZW5jb2RpbmcgaW4gdGhlIGZpcnN0IG9yIHNlY29uZCBsaW5lIG9mIHRoZSBmaWxlIChpbiB3aGljaCBjYXNlIHRoZSBlbmNvZGluZworICAgc2hvdWxkIGJlIGFzc3VtZWQgdG8gYmUgVVRGLTgpLgogCi0gICBUaGUgY2hhciAqIHJldHVybmVkIGlzIG1hbGxvYydlZCB2aWEgUHlNZW1fTUFMTE9DKCkgYW5kIHRodXMgbXVzdCBiZSBmcmVlZAotICAgYnkgdGhlIGNhbGxlci4KLSovCisgICBUaGUgY2hhciogcmV0dXJuZWQgaXMgbWFsbG9jJ2VkIHZpYSBQeU1lbV9NQUxMT0MoKSBhbmQgdGh1cyBtdXN0IGJlIGZyZWVkCisgICBieSB0aGUgY2FsbGVyLiAqLworCiBjaGFyICoKLVB5VG9rZW5pemVyX0ZpbmRFbmNvZGluZyhpbnQgZmQpCitQeVRva2VuaXplcl9GaW5kRW5jb2RpbmdGaWxlbmFtZShpbnQgZmQsIFB5T2JqZWN0ICpmaWxlbmFtZSkKIHsKICAgICBzdHJ1Y3QgdG9rX3N0YXRlICp0b2s7CiAgICAgRklMRSAqZnA7CkBAIC0xNzIxLDYgKzE3MjYsMjAgQEAKICAgICAgICAgZmNsb3NlKGZwKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorI2lmbmRlZiBQR0VOCisgICAgaWYgKGZpbGVuYW1lICE9IE5VTEwpIHsKKyAgICAgICAgUHlfSU5DUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgdG9rLT5maWxlbmFtZSA9IGZpbGVuYW1lOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgdG9rLT5maWxlbmFtZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCI8c3RyaW5nPiIpOworICAgICAgICBpZiAodG9rLT5maWxlbmFtZSA9PSBOVUxMKSB7CisgICAgICAgICAgICBmY2xvc2UoZnApOworICAgICAgICAgICAgUHlUb2tlbml6ZXJfRnJlZSh0b2spOworICAgICAgICAgICAgcmV0dXJuIGVuY29kaW5nOworICAgICAgICB9CisgICAgfQorI2VuZGlmCiAgICAgd2hpbGUgKHRvay0+bGluZW5vIDwgMiAmJiB0b2stPmRvbmUgPT0gRV9PSykgewogICAgICAgICBQeVRva2VuaXplcl9HZXQodG9rLCAmcF9zdGFydCwgJnBfZW5kKTsKICAgICB9CkBAIC0xNzM0LDYgKzE3NTMsMTIgQEAKICAgICByZXR1cm4gZW5jb2Rpbmc7CiB9CiAKK2NoYXIgKgorUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nKGludCBmZCkKK3sKKyAgICByZXR1cm4gUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nRmlsZW5hbWUoZmQsIE5VTEwpOworfQorCiAjaWZkZWYgUHlfREVCVUcKIAogdm9pZApkaWZmIC0tZ2l0IGEvUGFyc2VyL3Rva2VuaXplci5oIGIvUGFyc2VyL3Rva2VuaXplci5oCmluZGV4IDJiZTNiZjIuLmVkMWYzYWEgMTAwNjQ0Ci0tLSBhL1BhcnNlci90b2tlbml6ZXIuaAorKysgYi9QYXJzZXIvdG9rZW5pemVyLmgKQEAgLTQwLDcgKzQwLDEzIEBACiAgICAgaW50IGxldmVsOyAgICAgICAgICAvKiAoKSBbXSB7fSBQYXJlbnRoZXNlcyBuZXN0aW5nIGxldmVsICovCiAgICAgICAgICAgICAvKiBVc2VkIHRvIGFsbG93IGZyZWUgY29udGludWF0aW9ucyBpbnNpZGUgdGhlbSAqLwogICAgIC8qIFN0dWZmIGZvciBjaGVja2luZyBvbiBkaWZmZXJlbnQgdGFiIHNpemVzICovCi0gICAgY29uc3QgY2hhciAqZmlsZW5hbWU7ICAgLyogZW5jb2RlZCB0byB0aGUgZmlsZXN5c3RlbSBlbmNvZGluZyAqLworI2lmbmRlZiBQR0VOCisgICAgLyogcGdlbiBkb2Vzbid0IGhhdmUgYWNjZXNzIHRvIFB5dGhvbiBjb2RlY3MsIGl0IGNhbm5vdCBkZWNvZGUgdGhlIGlucHV0CisgICAgICAgZmlsZW5hbWUuIFRoZSBieXRlcyBmaWxlbmFtZSBtaWdodCBiZSBrZXB0LCBidXQgaXQgaXMgb25seSB1c2VkIGJ5CisgICAgICAgaW5kZW50ZXJyb3IoKSBhbmQgaXQgaXMgbm90IHJlYWxseSBuZWVkZWQ6IHBnZW4gb25seSBjb21waWxlcyBvbmUgZmlsZQorICAgICAgIChHcmFtbWFyL0dyYW1tYXIpLiAqLworICAgIFB5T2JqZWN0ICpmaWxlbmFtZTsKKyNlbmRpZgogICAgIGludCBhbHR3YXJuaW5nOyAgICAgLyogSXNzdWUgd2FybmluZyBpZiBhbHRlcm5hdGUgdGFicyBkb24ndCBtYXRjaCAqLwogICAgIGludCBhbHRlcnJvcjsgICAgICAgLyogSXNzdWUgZXJyb3IgaWYgYWx0ZXJuYXRlIHRhYnMgZG9uJ3QgbWF0Y2ggKi8KICAgICBpbnQgYWx0dGFic2l6ZTsgICAgIC8qIEFsdGVybmF0ZSB0YWIgc3BhY2luZyAqLwpAQCAtNjksNyArNzUsNiBAQAogZXh0ZXJuIGludCBQeVRva2VuaXplcl9HZXQoc3RydWN0IHRva19zdGF0ZSAqLCBjaGFyICoqLCBjaGFyICoqKTsKIGV4dGVybiBjaGFyICogUHlUb2tlbml6ZXJfUmVzdG9yZUVuY29kaW5nKHN0cnVjdCB0b2tfc3RhdGUqIHRvaywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBsZW4sIGludCAqb2Zmc2V0KTsKLWV4dGVybiBjaGFyICogUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nKGludCk7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL1B5dGhvbi1hc3QuYyBiL1B5dGhvbi9QeXRob24tYXN0LmMKaW5kZXggYTI3NmI2Yy4uMjYwM2I4MSAxMDA2NDQKLS0tIGEvUHl0aG9uL1B5dGhvbi1hc3QuYworKysgYi9QeXRob24vUHl0aG9uLWFzdC5jCkBAIC0xLDE0ICsxLDUgQEAKIC8qIEZpbGUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgYnkgUGFyc2VyL2FzZGxfYy5weS4gKi8KIAotCi0vKgotICAgX192ZXJzaW9uX18gODIxNjMuCi0KLSAgIFRoaXMgbW9kdWxlIG11c3QgYmUgY29tbWl0dGVkIHNlcGFyYXRlbHkgYWZ0ZXIgZWFjaCBBU1QgZ3JhbW1hciBjaGFuZ2U7Ci0gICBUaGUgX192ZXJzaW9uX18gbnVtYmVyIGlzIHNldCB0byB0aGUgcmV2aXNpb24gbnVtYmVyIG9mIHRoZSBjb21taXQKLSAgIGNvbnRhaW5pbmcgdGhlIGdyYW1tYXIgY2hhbmdlLgotKi8KLQogI2luY2x1ZGUgIlB5dGhvbi5oIgogI2luY2x1ZGUgIlB5dGhvbi1hc3QuaCIKIApAQCAtMTYsNiArNyw3IEBACiBzdGF0aWMgUHlUeXBlT2JqZWN0ICptb2RfdHlwZTsKIHN0YXRpYyBQeU9iamVjdCogYXN0Mm9ial9tb2Qodm9pZCopOwogc3RhdGljIFB5VHlwZU9iamVjdCAqTW9kdWxlX3R5cGU7CitfUHlfSURFTlRJRklFUihib2R5KTsKIHN0YXRpYyBjaGFyICpNb2R1bGVfZmllbGRzW109ewogICAgICAgICAiYm9keSIsCiB9OwpAQCAtMzIsMTIgKzI0LDE4IEBACiAgICAgICAgICJib2R5IiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpzdG10X3R5cGU7CitfUHlfSURFTlRJRklFUihsaW5lbm8pOworX1B5X0lERU5USUZJRVIoY29sX29mZnNldCk7CiBzdGF0aWMgY2hhciAqc3RtdF9hdHRyaWJ1dGVzW10gPSB7CiAgICAgICAgICJsaW5lbm8iLAogICAgICAgICAiY29sX29mZnNldCIsCiB9Owogc3RhdGljIFB5T2JqZWN0KiBhc3Qyb2JqX3N0bXQodm9pZCopOwogc3RhdGljIFB5VHlwZU9iamVjdCAqRnVuY3Rpb25EZWZfdHlwZTsKK19QeV9JREVOVElGSUVSKG5hbWUpOworX1B5X0lERU5USUZJRVIoYXJncyk7CitfUHlfSURFTlRJRklFUihkZWNvcmF0b3JfbGlzdCk7CitfUHlfSURFTlRJRklFUihyZXR1cm5zKTsKIHN0YXRpYyBjaGFyICpGdW5jdGlvbkRlZl9maWVsZHNbXT17CiAgICAgICAgICJuYW1lIiwKICAgICAgICAgImFyZ3MiLApAQCAtNDYsNiArNDQsMTAgQEAKICAgICAgICAgInJldHVybnMiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKkNsYXNzRGVmX3R5cGU7CitfUHlfSURFTlRJRklFUihiYXNlcyk7CitfUHlfSURFTlRJRklFUihrZXl3b3Jkcyk7CitfUHlfSURFTlRJRklFUihzdGFyYXJncyk7CitfUHlfSURFTlRJRklFUihrd2FyZ3MpOwogc3RhdGljIGNoYXIgKkNsYXNzRGVmX2ZpZWxkc1tdPXsKICAgICAgICAgIm5hbWUiLAogICAgICAgICAiYmFzZXMiLApAQCAtNTYsMTAgKzU4LDEyIEBACiAgICAgICAgICJkZWNvcmF0b3JfbGlzdCIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqUmV0dXJuX3R5cGU7CitfUHlfSURFTlRJRklFUih2YWx1ZSk7CiBzdGF0aWMgY2hhciAqUmV0dXJuX2ZpZWxkc1tdPXsKICAgICAgICAgInZhbHVlIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpEZWxldGVfdHlwZTsKK19QeV9JREVOVElGSUVSKHRhcmdldHMpOwogc3RhdGljIGNoYXIgKkRlbGV0ZV9maWVsZHNbXT17CiAgICAgICAgICJ0YXJnZXRzIiwKIH07CkBAIC02OSwxMiArNzMsMTYgQEAKICAgICAgICAgInZhbHVlIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpBdWdBc3NpZ25fdHlwZTsKK19QeV9JREVOVElGSUVSKHRhcmdldCk7CitfUHlfSURFTlRJRklFUihvcCk7CiBzdGF0aWMgY2hhciAqQXVnQXNzaWduX2ZpZWxkc1tdPXsKICAgICAgICAgInRhcmdldCIsCiAgICAgICAgICJvcCIsCiAgICAgICAgICJ2YWx1ZSIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqRm9yX3R5cGU7CitfUHlfSURFTlRJRklFUihpdGVyKTsKK19QeV9JREVOVElGSUVSKG9yZWxzZSk7CiBzdGF0aWMgY2hhciAqRm9yX2ZpZWxkc1tdPXsKICAgICAgICAgInRhcmdldCIsCiAgICAgICAgICJpdGVyIiwKQEAgLTgyLDYgKzkwLDcgQEAKICAgICAgICAgIm9yZWxzZSIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqV2hpbGVfdHlwZTsKK19QeV9JREVOVElGSUVSKHRlc3QpOwogc3RhdGljIGNoYXIgKldoaWxlX2ZpZWxkc1tdPXsKICAgICAgICAgInRlc3QiLAogICAgICAgICAiYm9keSIsCkBAIC05NCwzNyArMTAzLDQxIEBACiAgICAgICAgICJvcmVsc2UiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKldpdGhfdHlwZTsKK19QeV9JREVOVElGSUVSKGl0ZW1zKTsKIHN0YXRpYyBjaGFyICpXaXRoX2ZpZWxkc1tdPXsKLSAgICAgICAgImNvbnRleHRfZXhwciIsCi0gICAgICAgICJvcHRpb25hbF92YXJzIiwKKyAgICAgICAgIml0ZW1zIiwKICAgICAgICAgImJvZHkiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKlJhaXNlX3R5cGU7CitfUHlfSURFTlRJRklFUihleGMpOworX1B5X0lERU5USUZJRVIoY2F1c2UpOwogc3RhdGljIGNoYXIgKlJhaXNlX2ZpZWxkc1tdPXsKICAgICAgICAgImV4YyIsCiAgICAgICAgICJjYXVzZSIsCiB9Owotc3RhdGljIFB5VHlwZU9iamVjdCAqVHJ5RXhjZXB0X3R5cGU7Ci1zdGF0aWMgY2hhciAqVHJ5RXhjZXB0X2ZpZWxkc1tdPXsKK3N0YXRpYyBQeVR5cGVPYmplY3QgKlRyeV90eXBlOworX1B5X0lERU5USUZJRVIoaGFuZGxlcnMpOworX1B5X0lERU5USUZJRVIoZmluYWxib2R5KTsKK3N0YXRpYyBjaGFyICpUcnlfZmllbGRzW109ewogICAgICAgICAiYm9keSIsCiAgICAgICAgICJoYW5kbGVycyIsCiAgICAgICAgICJvcmVsc2UiLAotfTsKLXN0YXRpYyBQeVR5cGVPYmplY3QgKlRyeUZpbmFsbHlfdHlwZTsKLXN0YXRpYyBjaGFyICpUcnlGaW5hbGx5X2ZpZWxkc1tdPXsKLSAgICAgICAgImJvZHkiLAogICAgICAgICAiZmluYWxib2R5IiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpBc3NlcnRfdHlwZTsKK19QeV9JREVOVElGSUVSKG1zZyk7CiBzdGF0aWMgY2hhciAqQXNzZXJ0X2ZpZWxkc1tdPXsKICAgICAgICAgInRlc3QiLAogICAgICAgICAibXNnIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpJbXBvcnRfdHlwZTsKK19QeV9JREVOVElGSUVSKG5hbWVzKTsKIHN0YXRpYyBjaGFyICpJbXBvcnRfZmllbGRzW109ewogICAgICAgICAibmFtZXMiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKkltcG9ydEZyb21fdHlwZTsKK19QeV9JREVOVElGSUVSKG1vZHVsZSk7CitfUHlfSURFTlRJRklFUihsZXZlbCk7CiBzdGF0aWMgY2hhciAqSW1wb3J0RnJvbV9maWVsZHNbXT17CiAgICAgICAgICJtb2R1bGUiLAogICAgICAgICAibmFtZXMiLApAQCAtMTUyLDE3ICsxNjUsMjEgQEAKIH07CiBzdGF0aWMgUHlPYmplY3QqIGFzdDJvYmpfZXhwcih2b2lkKik7CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpCb29sT3BfdHlwZTsKK19QeV9JREVOVElGSUVSKHZhbHVlcyk7CiBzdGF0aWMgY2hhciAqQm9vbE9wX2ZpZWxkc1tdPXsKICAgICAgICAgIm9wIiwKICAgICAgICAgInZhbHVlcyIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqQmluT3BfdHlwZTsKK19QeV9JREVOVElGSUVSKGxlZnQpOworX1B5X0lERU5USUZJRVIocmlnaHQpOwogc3RhdGljIGNoYXIgKkJpbk9wX2ZpZWxkc1tdPXsKICAgICAgICAgImxlZnQiLAogICAgICAgICAib3AiLAogICAgICAgICAicmlnaHQiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKlVuYXJ5T3BfdHlwZTsKK19QeV9JREVOVElGSUVSKG9wZXJhbmQpOwogc3RhdGljIGNoYXIgKlVuYXJ5T3BfZmllbGRzW109ewogICAgICAgICAib3AiLAogICAgICAgICAib3BlcmFuZCIsCkBAIC0xNzksMTUgKzE5NiwxOSBAQAogICAgICAgICAib3JlbHNlIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpEaWN0X3R5cGU7CitfUHlfSURFTlRJRklFUihrZXlzKTsKIHN0YXRpYyBjaGFyICpEaWN0X2ZpZWxkc1tdPXsKICAgICAgICAgImtleXMiLAogICAgICAgICAidmFsdWVzIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpTZXRfdHlwZTsKK19QeV9JREVOVElGSUVSKGVsdHMpOwogc3RhdGljIGNoYXIgKlNldF9maWVsZHNbXT17CiAgICAgICAgICJlbHRzIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpMaXN0Q29tcF90eXBlOworX1B5X0lERU5USUZJRVIoZWx0KTsKK19QeV9JREVOVElGSUVSKGdlbmVyYXRvcnMpOwogc3RhdGljIGNoYXIgKkxpc3RDb21wX2ZpZWxkc1tdPXsKICAgICAgICAgImVsdCIsCiAgICAgICAgICJnZW5lcmF0b3JzIiwKQEAgLTE5OCw2ICsyMTksNyBAQAogICAgICAgICAiZ2VuZXJhdG9ycyIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqRGljdENvbXBfdHlwZTsKK19QeV9JREVOVElGSUVSKGtleSk7CiBzdGF0aWMgY2hhciAqRGljdENvbXBfZmllbGRzW109ewogICAgICAgICAia2V5IiwKICAgICAgICAgInZhbHVlIiwKQEAgLTIxMiwxMyArMjM0LDIwIEBACiBzdGF0aWMgY2hhciAqWWllbGRfZmllbGRzW109ewogICAgICAgICAidmFsdWUiLAogfTsKK3N0YXRpYyBQeVR5cGVPYmplY3QgKllpZWxkRnJvbV90eXBlOworc3RhdGljIGNoYXIgKllpZWxkRnJvbV9maWVsZHNbXT17CisgICAgICAgICJ2YWx1ZSIsCit9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqQ29tcGFyZV90eXBlOworX1B5X0lERU5USUZJRVIob3BzKTsKK19QeV9JREVOVElGSUVSKGNvbXBhcmF0b3JzKTsKIHN0YXRpYyBjaGFyICpDb21wYXJlX2ZpZWxkc1tdPXsKICAgICAgICAgImxlZnQiLAogICAgICAgICAib3BzIiwKICAgICAgICAgImNvbXBhcmF0b3JzIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpDYWxsX3R5cGU7CitfUHlfSURFTlRJRklFUihmdW5jKTsKIHN0YXRpYyBjaGFyICpDYWxsX2ZpZWxkc1tdPXsKICAgICAgICAgImZ1bmMiLAogICAgICAgICAiYXJncyIsCkBAIC0yMjcsMTAgKzI1NiwxMiBAQAogICAgICAgICAia3dhcmdzIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpOdW1fdHlwZTsKK19QeV9JREVOVElGSUVSKG4pOwogc3RhdGljIGNoYXIgKk51bV9maWVsZHNbXT17CiAgICAgICAgICJuIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpTdHJfdHlwZTsKK19QeV9JREVOVElGSUVSKHMpOwogc3RhdGljIGNoYXIgKlN0cl9maWVsZHNbXT17CiAgICAgICAgICJzIiwKIH07CkBAIC0yNDAsMTIgKzI3MSwxNSBAQAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKkVsbGlwc2lzX3R5cGU7CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpBdHRyaWJ1dGVfdHlwZTsKK19QeV9JREVOVElGSUVSKGF0dHIpOworX1B5X0lERU5USUZJRVIoY3R4KTsKIHN0YXRpYyBjaGFyICpBdHRyaWJ1dGVfZmllbGRzW109ewogICAgICAgICAidmFsdWUiLAogICAgICAgICAiYXR0ciIsCiAgICAgICAgICJjdHgiLAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKlN1YnNjcmlwdF90eXBlOworX1B5X0lERU5USUZJRVIoc2xpY2UpOwogc3RhdGljIGNoYXIgKlN1YnNjcmlwdF9maWVsZHNbXT17CiAgICAgICAgICJ2YWx1ZSIsCiAgICAgICAgICJzbGljZSIsCkBAIC0yNTcsNiArMjkxLDcgQEAKICAgICAgICAgImN0eCIsCiB9Owogc3RhdGljIFB5VHlwZU9iamVjdCAqTmFtZV90eXBlOworX1B5X0lERU5USUZJRVIoaWQpOwogc3RhdGljIGNoYXIgKk5hbWVfZmllbGRzW109ewogICAgICAgICAiaWQiLAogICAgICAgICAiY3R4IiwKQEAgLTI4NCwxMiArMzE5LDE2IEBACiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpzbGljZV90eXBlOwogc3RhdGljIFB5T2JqZWN0KiBhc3Qyb2JqX3NsaWNlKHZvaWQqKTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKlNsaWNlX3R5cGU7CitfUHlfSURFTlRJRklFUihsb3dlcik7CitfUHlfSURFTlRJRklFUih1cHBlcik7CitfUHlfSURFTlRJRklFUihzdGVwKTsKIHN0YXRpYyBjaGFyICpTbGljZV9maWVsZHNbXT17CiAgICAgICAgICJsb3dlciIsCiAgICAgICAgICJ1cHBlciIsCiAgICAgICAgICJzdGVwIiwKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpFeHRTbGljZV90eXBlOworX1B5X0lERU5USUZJRVIoZGltcyk7CiBzdGF0aWMgY2hhciAqRXh0U2xpY2VfZmllbGRzW109ewogICAgICAgICAiZGltcyIsCiB9OwpAQCAtMzQ1LDYgKzM4NCw3IEBACiBzdGF0aWMgUHlUeXBlT2JqZWN0ICpOb3RJbl90eXBlOwogc3RhdGljIFB5VHlwZU9iamVjdCAqY29tcHJlaGVuc2lvbl90eXBlOwogc3RhdGljIFB5T2JqZWN0KiBhc3Qyb2JqX2NvbXByZWhlbnNpb24odm9pZCopOworX1B5X0lERU5USUZJRVIoaWZzKTsKIHN0YXRpYyBjaGFyICpjb21wcmVoZW5zaW9uX2ZpZWxkc1tdPXsKICAgICAgICAgInRhcmdldCIsCiAgICAgICAgICJpdGVyIiwKQEAgLTM1Nyw2ICszOTcsNyBAQAogfTsKIHN0YXRpYyBQeU9iamVjdCogYXN0Mm9ial9leGNlcHRoYW5kbGVyKHZvaWQqKTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKkV4Y2VwdEhhbmRsZXJfdHlwZTsKK19QeV9JREVOVElGSUVSKHR5cGUpOwogc3RhdGljIGNoYXIgKkV4Y2VwdEhhbmRsZXJfZmllbGRzW109ewogICAgICAgICAidHlwZSIsCiAgICAgICAgICJuYW1lIiwKQEAgLTM2NCw2ICs0MDUsMTMgQEAKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICphcmd1bWVudHNfdHlwZTsKIHN0YXRpYyBQeU9iamVjdCogYXN0Mm9ial9hcmd1bWVudHModm9pZCopOworX1B5X0lERU5USUZJRVIodmFyYXJnKTsKK19QeV9JREVOVElGSUVSKHZhcmFyZ2Fubm90YXRpb24pOworX1B5X0lERU5USUZJRVIoa3dvbmx5YXJncyk7CitfUHlfSURFTlRJRklFUihrd2FyZyk7CitfUHlfSURFTlRJRklFUihrd2FyZ2Fubm90YXRpb24pOworX1B5X0lERU5USUZJRVIoZGVmYXVsdHMpOworX1B5X0lERU5USUZJRVIoa3dfZGVmYXVsdHMpOwogc3RhdGljIGNoYXIgKmFyZ3VtZW50c19maWVsZHNbXT17CiAgICAgICAgICJhcmdzIiwKICAgICAgICAgInZhcmFyZyIsCkBAIC0zNzYsNiArNDI0LDggQEAKIH07CiBzdGF0aWMgUHlUeXBlT2JqZWN0ICphcmdfdHlwZTsKIHN0YXRpYyBQeU9iamVjdCogYXN0Mm9ial9hcmcodm9pZCopOworX1B5X0lERU5USUZJRVIoYXJnKTsKK19QeV9JREVOVElGSUVSKGFubm90YXRpb24pOwogc3RhdGljIGNoYXIgKmFyZ19maWVsZHNbXT17CiAgICAgICAgICJhcmciLAogICAgICAgICAiYW5ub3RhdGlvbiIsCkBAIC0zODgsMTkgKzQzOCwyOSBAQAogfTsKIHN0YXRpYyBQeVR5cGVPYmplY3QgKmFsaWFzX3R5cGU7CiBzdGF0aWMgUHlPYmplY3QqIGFzdDJvYmpfYWxpYXModm9pZCopOworX1B5X0lERU5USUZJRVIoYXNuYW1lKTsKIHN0YXRpYyBjaGFyICphbGlhc19maWVsZHNbXT17CiAgICAgICAgICJuYW1lIiwKICAgICAgICAgImFzbmFtZSIsCiB9Oworc3RhdGljIFB5VHlwZU9iamVjdCAqd2l0aGl0ZW1fdHlwZTsKK3N0YXRpYyBQeU9iamVjdCogYXN0Mm9ial93aXRoaXRlbSh2b2lkKik7CitfUHlfSURFTlRJRklFUihjb250ZXh0X2V4cHIpOworX1B5X0lERU5USUZJRVIob3B0aW9uYWxfdmFycyk7CitzdGF0aWMgY2hhciAqd2l0aGl0ZW1fZmllbGRzW109eworICAgICAgICAiY29udGV4dF9leHByIiwKKyAgICAgICAgIm9wdGlvbmFsX3ZhcnMiLAorfTsKIAogCiBzdGF0aWMgaW50CiBhc3RfdHlwZV9pbml0KFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3KQogeworICAgIF9QeV9JREVOVElGSUVSKF9maWVsZHMpOwogICAgIFB5X3NzaXplX3QgaSwgbnVtZmllbGRzID0gMDsKICAgICBpbnQgcmVzID0gLTE7CiAgICAgUHlPYmplY3QgKmtleSwgKnZhbHVlLCAqZmllbGRzOwotICAgIGZpZWxkcyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoKFB5T2JqZWN0KilQeV9UWVBFKHNlbGYpLCAiX2ZpZWxkcyIpOworICAgIGZpZWxkcyA9IF9QeU9iamVjdF9HZXRBdHRySWQoKFB5T2JqZWN0KilQeV9UWVBFKHNlbGYpLCAmUHlJZF9fZmllbGRzKTsKICAgICBpZiAoIWZpZWxkcykKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICBpZiAoZmllbGRzKSB7CkBAIC00NTAsNyArNTEwLDggQEAKIGFzdF90eXBlX3JlZHVjZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKnVudXNlZCkKIHsKICAgICBQeU9iamVjdCAqcmVzOwotICAgIFB5T2JqZWN0ICpkaWN0ID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhzZWxmLCAiX19kaWN0X18iKTsKKyAgICBfUHlfSURFTlRJRklFUihfX2RpY3RfXyk7CisgICAgUHlPYmplY3QgKmRpY3QgPSBfUHlPYmplY3RfR2V0QXR0cklkKHNlbGYsICZQeUlkX19fZGljdF9fKTsKICAgICBpZiAoZGljdCA9PSBOVUxMKSB7CiAgICAgICAgIGlmIChQeUVycl9FeGNlcHRpb25NYXRjaGVzKFB5RXhjX0F0dHJpYnV0ZUVycm9yKSkKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CkBAIC01MzYsNiArNTk3LDcgQEAKIHN0YXRpYyBpbnQgYWRkX2F0dHJpYnV0ZXMoUHlUeXBlT2JqZWN0KiB0eXBlLCBjaGFyKiphdHRycywgaW50IG51bV9maWVsZHMpCiB7CiAgICAgaW50IGksIHJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihfYXR0cmlidXRlcyk7CiAgICAgUHlPYmplY3QgKnMsICpsID0gUHlUdXBsZV9OZXcobnVtX2ZpZWxkcyk7CiAgICAgaWYgKCFsKQogICAgICAgICByZXR1cm4gMDsKQEAgLTU0Nyw3ICs2MDksNyBAQAogICAgICAgICB9CiAgICAgICAgIFB5VHVwbGVfU0VUX0lURU0obCwgaSwgcyk7CiAgICAgfQotICAgIHJlc3VsdCA9IFB5T2JqZWN0X1NldEF0dHJTdHJpbmcoKFB5T2JqZWN0Kil0eXBlLCAiX2F0dHJpYnV0ZXMiLCBsKSA+PSAwOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9TZXRBdHRySWQoKFB5T2JqZWN0Kil0eXBlLCAmUHlJZF9fYXR0cmlidXRlcywgbCkgPj0gMDsKICAgICBQeV9ERUNSRUYobCk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KQEAgLTU4MSw2ICs2NDMsNyBAQAogfQogI2RlZmluZSBhc3Qyb2JqX2lkZW50aWZpZXIgYXN0Mm9ial9vYmplY3QKICNkZWZpbmUgYXN0Mm9ial9zdHJpbmcgYXN0Mm9ial9vYmplY3QKKyNkZWZpbmUgYXN0Mm9ial9ieXRlcyBhc3Qyb2JqX29iamVjdAogCiBzdGF0aWMgUHlPYmplY3QqIGFzdDJvYmpfaW50KGxvbmcgYikKIHsKQEAgLTYxOCw2ICs2ODEsMTUgQEAKICAgICByZXR1cm4gb2JqMmFzdF9vYmplY3Qob2JqLCBvdXQsIGFyZW5hKTsKIH0KIAorc3RhdGljIGludCBvYmoyYXN0X2J5dGVzKFB5T2JqZWN0KiBvYmosIFB5T2JqZWN0Kiogb3V0LCBQeUFyZW5hKiBhcmVuYSkKK3sKKyAgICBpZiAoIVB5Qnl0ZXNfQ2hlY2tFeGFjdChvYmopKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJBU1QgYnl0ZXMgbXVzdCBiZSBvZiB0eXBlIGJ5dGVzIik7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICByZXR1cm4gb2JqMmFzdF9vYmplY3Qob2JqLCBvdXQsIGFyZW5hKTsKK30KKwogc3RhdGljIGludCBvYmoyYXN0X2ludChQeU9iamVjdCogb2JqLCBpbnQqIG91dCwgUHlBcmVuYSogYXJlbmEpCiB7CiAgICAgaW50IGk7CkBAIC02OTEsMTUgKzc2MywxMiBAQAogICAgICAgICBpZiAoIVdoaWxlX3R5cGUpIHJldHVybiAwOwogICAgICAgICBJZl90eXBlID0gbWFrZV90eXBlKCJJZiIsIHN0bXRfdHlwZSwgSWZfZmllbGRzLCAzKTsKICAgICAgICAgaWYgKCFJZl90eXBlKSByZXR1cm4gMDsKLSAgICAgICAgV2l0aF90eXBlID0gbWFrZV90eXBlKCJXaXRoIiwgc3RtdF90eXBlLCBXaXRoX2ZpZWxkcywgMyk7CisgICAgICAgIFdpdGhfdHlwZSA9IG1ha2VfdHlwZSgiV2l0aCIsIHN0bXRfdHlwZSwgV2l0aF9maWVsZHMsIDIpOwogICAgICAgICBpZiAoIVdpdGhfdHlwZSkgcmV0dXJuIDA7CiAgICAgICAgIFJhaXNlX3R5cGUgPSBtYWtlX3R5cGUoIlJhaXNlIiwgc3RtdF90eXBlLCBSYWlzZV9maWVsZHMsIDIpOwogICAgICAgICBpZiAoIVJhaXNlX3R5cGUpIHJldHVybiAwOwotICAgICAgICBUcnlFeGNlcHRfdHlwZSA9IG1ha2VfdHlwZSgiVHJ5RXhjZXB0Iiwgc3RtdF90eXBlLCBUcnlFeGNlcHRfZmllbGRzLCAzKTsKLSAgICAgICAgaWYgKCFUcnlFeGNlcHRfdHlwZSkgcmV0dXJuIDA7Ci0gICAgICAgIFRyeUZpbmFsbHlfdHlwZSA9IG1ha2VfdHlwZSgiVHJ5RmluYWxseSIsIHN0bXRfdHlwZSwgVHJ5RmluYWxseV9maWVsZHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyKTsKLSAgICAgICAgaWYgKCFUcnlGaW5hbGx5X3R5cGUpIHJldHVybiAwOworICAgICAgICBUcnlfdHlwZSA9IG1ha2VfdHlwZSgiVHJ5Iiwgc3RtdF90eXBlLCBUcnlfZmllbGRzLCA0KTsKKyAgICAgICAgaWYgKCFUcnlfdHlwZSkgcmV0dXJuIDA7CiAgICAgICAgIEFzc2VydF90eXBlID0gbWFrZV90eXBlKCJBc3NlcnQiLCBzdG10X3R5cGUsIEFzc2VydF9maWVsZHMsIDIpOwogICAgICAgICBpZiAoIUFzc2VydF90eXBlKSByZXR1cm4gMDsKICAgICAgICAgSW1wb3J0X3R5cGUgPSBtYWtlX3R5cGUoIkltcG9ydCIsIHN0bXRfdHlwZSwgSW1wb3J0X2ZpZWxkcywgMSk7CkBAIC03NDcsNiArODE2LDggQEAKICAgICAgICAgaWYgKCFHZW5lcmF0b3JFeHBfdHlwZSkgcmV0dXJuIDA7CiAgICAgICAgIFlpZWxkX3R5cGUgPSBtYWtlX3R5cGUoIllpZWxkIiwgZXhwcl90eXBlLCBZaWVsZF9maWVsZHMsIDEpOwogICAgICAgICBpZiAoIVlpZWxkX3R5cGUpIHJldHVybiAwOworICAgICAgICBZaWVsZEZyb21fdHlwZSA9IG1ha2VfdHlwZSgiWWllbGRGcm9tIiwgZXhwcl90eXBlLCBZaWVsZEZyb21fZmllbGRzLCAxKTsKKyAgICAgICAgaWYgKCFZaWVsZEZyb21fdHlwZSkgcmV0dXJuIDA7CiAgICAgICAgIENvbXBhcmVfdHlwZSA9IG1ha2VfdHlwZSgiQ29tcGFyZSIsIGV4cHJfdHlwZSwgQ29tcGFyZV9maWVsZHMsIDMpOwogICAgICAgICBpZiAoIUNvbXBhcmVfdHlwZSkgcmV0dXJuIDA7CiAgICAgICAgIENhbGxfdHlwZSA9IG1ha2VfdHlwZSgiQ2FsbCIsIGV4cHJfdHlwZSwgQ2FsbF9maWVsZHMsIDUpOwpAQCAtOTQ5LDYgKzEwMjAsOCBAQAogICAgICAgICBpZiAoIWtleXdvcmRfdHlwZSkgcmV0dXJuIDA7CiAgICAgICAgIGFsaWFzX3R5cGUgPSBtYWtlX3R5cGUoImFsaWFzIiwgJkFTVF90eXBlLCBhbGlhc19maWVsZHMsIDIpOwogICAgICAgICBpZiAoIWFsaWFzX3R5cGUpIHJldHVybiAwOworICAgICAgICB3aXRoaXRlbV90eXBlID0gbWFrZV90eXBlKCJ3aXRoaXRlbSIsICZBU1RfdHlwZSwgd2l0aGl0ZW1fZmllbGRzLCAyKTsKKyAgICAgICAgaWYgKCF3aXRoaXRlbV90eXBlKSByZXR1cm4gMDsKICAgICAgICAgaW5pdGlhbGl6ZWQgPSAxOwogICAgICAgICByZXR1cm4gMTsKIH0KQEAgLTk3MSw2ICsxMDQ0LDcgQEAKIHN0YXRpYyBpbnQgb2JqMmFzdF9hcmcoUHlPYmplY3QqIG9iaiwgYXJnX3R5KiBvdXQsIFB5QXJlbmEqIGFyZW5hKTsKIHN0YXRpYyBpbnQgb2JqMmFzdF9rZXl3b3JkKFB5T2JqZWN0KiBvYmosIGtleXdvcmRfdHkqIG91dCwgUHlBcmVuYSogYXJlbmEpOwogc3RhdGljIGludCBvYmoyYXN0X2FsaWFzKFB5T2JqZWN0KiBvYmosIGFsaWFzX3R5KiBvdXQsIFB5QXJlbmEqIGFyZW5hKTsKK3N0YXRpYyBpbnQgb2JqMmFzdF93aXRoaXRlbShQeU9iamVjdCogb2JqLCB3aXRoaXRlbV90eSogb3V0LCBQeUFyZW5hKiBhcmVuYSk7CiAKIG1vZF90eQogTW9kdWxlKGFzZGxfc2VxICogYm9keSwgUHlBcmVuYSAqYXJlbmEpCkBAIC0xMjM2LDIxICsxMzEwLDE1IEBACiB9CiAKIHN0bXRfdHkKLVdpdGgoZXhwcl90eSBjb250ZXh0X2V4cHIsIGV4cHJfdHkgb3B0aW9uYWxfdmFycywgYXNkbF9zZXEgKiBib2R5LCBpbnQgbGluZW5vLAotICAgICBpbnQgY29sX29mZnNldCwgUHlBcmVuYSAqYXJlbmEpCitXaXRoKGFzZGxfc2VxICogaXRlbXMsIGFzZGxfc2VxICogYm9keSwgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEKKyAgICAgKmFyZW5hKQogewogICAgICAgICBzdG10X3R5IHA7Ci0gICAgICAgIGlmICghY29udGV4dF9leHByKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmaWVsZCBjb250ZXh0X2V4cHIgaXMgcmVxdWlyZWQgZm9yIFdpdGgiKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQogICAgICAgICBwID0gKHN0bXRfdHkpUHlBcmVuYV9NYWxsb2MoYXJlbmEsIHNpemVvZigqcCkpOwogICAgICAgICBpZiAoIXApCiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIHAtPmtpbmQgPSBXaXRoX2tpbmQ7Ci0gICAgICAgIHAtPnYuV2l0aC5jb250ZXh0X2V4cHIgPSBjb250ZXh0X2V4cHI7Ci0gICAgICAgIHAtPnYuV2l0aC5vcHRpb25hbF92YXJzID0gb3B0aW9uYWxfdmFyczsKKyAgICAgICAgcC0+di5XaXRoLml0ZW1zID0gaXRlbXM7CiAgICAgICAgIHAtPnYuV2l0aC5ib2R5ID0gYm9keTsKICAgICAgICAgcC0+bGluZW5vID0gbGluZW5vOwogICAgICAgICBwLT5jb2xfb2Zmc2V0ID0gY29sX29mZnNldDsKQEAgLTEyNzMsMzMgKzEzNDEsMTggQEAKIH0KIAogc3RtdF90eQotVHJ5RXhjZXB0KGFzZGxfc2VxICogYm9keSwgYXNkbF9zZXEgKiBoYW5kbGVycywgYXNkbF9zZXEgKiBvcmVsc2UsIGludCBsaW5lbm8sCi0gICAgICAgICAgaW50IGNvbF9vZmZzZXQsIFB5QXJlbmEgKmFyZW5hKQorVHJ5KGFzZGxfc2VxICogYm9keSwgYXNkbF9zZXEgKiBoYW5kbGVycywgYXNkbF9zZXEgKiBvcmVsc2UsIGFzZGxfc2VxICoKKyAgICBmaW5hbGJvZHksIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hICphcmVuYSkKIHsKICAgICAgICAgc3RtdF90eSBwOwogICAgICAgICBwID0gKHN0bXRfdHkpUHlBcmVuYV9NYWxsb2MoYXJlbmEsIHNpemVvZigqcCkpOwogICAgICAgICBpZiAoIXApCiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIHAtPmtpbmQgPSBUcnlFeGNlcHRfa2luZDsKLSAgICAgICAgcC0+di5UcnlFeGNlcHQuYm9keSA9IGJvZHk7Ci0gICAgICAgIHAtPnYuVHJ5RXhjZXB0LmhhbmRsZXJzID0gaGFuZGxlcnM7Ci0gICAgICAgIHAtPnYuVHJ5RXhjZXB0Lm9yZWxzZSA9IG9yZWxzZTsKLSAgICAgICAgcC0+bGluZW5vID0gbGluZW5vOwotICAgICAgICBwLT5jb2xfb2Zmc2V0ID0gY29sX29mZnNldDsKLSAgICAgICAgcmV0dXJuIHA7Ci19Ci0KLXN0bXRfdHkKLVRyeUZpbmFsbHkoYXNkbF9zZXEgKiBib2R5LCBhc2RsX3NlcSAqIGZpbmFsYm9keSwgaW50IGxpbmVubywgaW50IGNvbF9vZmZzZXQsCi0gICAgICAgICAgIFB5QXJlbmEgKmFyZW5hKQotewotICAgICAgICBzdG10X3R5IHA7Ci0gICAgICAgIHAgPSAoc3RtdF90eSlQeUFyZW5hX01hbGxvYyhhcmVuYSwgc2l6ZW9mKCpwKSk7Ci0gICAgICAgIGlmICghcCkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgcC0+a2luZCA9IFRyeUZpbmFsbHlfa2luZDsKLSAgICAgICAgcC0+di5UcnlGaW5hbGx5LmJvZHkgPSBib2R5OwotICAgICAgICBwLT52LlRyeUZpbmFsbHkuZmluYWxib2R5ID0gZmluYWxib2R5OworICAgICAgICBwLT5raW5kID0gVHJ5X2tpbmQ7CisgICAgICAgIHAtPnYuVHJ5LmJvZHkgPSBib2R5OworICAgICAgICBwLT52LlRyeS5oYW5kbGVycyA9IGhhbmRsZXJzOworICAgICAgICBwLT52LlRyeS5vcmVsc2UgPSBvcmVsc2U7CisgICAgICAgIHAtPnYuVHJ5LmZpbmFsYm9keSA9IGZpbmFsYm9keTsKICAgICAgICAgcC0+bGluZW5vID0gbGluZW5vOwogICAgICAgICBwLT5jb2xfb2Zmc2V0ID0gY29sX29mZnNldDsKICAgICAgICAgcmV0dXJuIHA7CkBAIC0xNzE0LDYgKzE3NjcsMjAgQEAKIH0KIAogZXhwcl90eQorWWllbGRGcm9tKGV4cHJfdHkgdmFsdWUsIGludCBsaW5lbm8sIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hICphcmVuYSkKK3sKKyAgICAgICAgZXhwcl90eSBwOworICAgICAgICBwID0gKGV4cHJfdHkpUHlBcmVuYV9NYWxsb2MoYXJlbmEsIHNpemVvZigqcCkpOworICAgICAgICBpZiAoIXApCisgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHAtPmtpbmQgPSBZaWVsZEZyb21fa2luZDsKKyAgICAgICAgcC0+di5ZaWVsZEZyb20udmFsdWUgPSB2YWx1ZTsKKyAgICAgICAgcC0+bGluZW5vID0gbGluZW5vOworICAgICAgICBwLT5jb2xfb2Zmc2V0ID0gY29sX29mZnNldDsKKyAgICAgICAgcmV0dXJuIHA7Cit9CisKK2V4cHJfdHkKIENvbXBhcmUoZXhwcl90eSBsZWZ0LCBhc2RsX2ludF9zZXEgKiBvcHMsIGFzZGxfc2VxICogY29tcGFyYXRvcnMsIGludCBsaW5lbm8sCiAgICAgICAgIGludCBjb2xfb2Zmc2V0LCBQeUFyZW5hICphcmVuYSkKIHsKQEAgLTE3OTgsNyArMTg2NSw3IEBACiB9CiAKIGV4cHJfdHkKLUJ5dGVzKHN0cmluZyBzLCBpbnQgbGluZW5vLCBpbnQgY29sX29mZnNldCwgUHlBcmVuYSAqYXJlbmEpCitCeXRlcyhieXRlcyBzLCBpbnQgbGluZW5vLCBpbnQgY29sX29mZnNldCwgUHlBcmVuYSAqYXJlbmEpCiB7CiAgICAgICAgIGV4cHJfdHkgcDsKICAgICAgICAgaWYgKCFzKSB7CkBAIC0yMTQ2LDYgKzIyMTMsMjMgQEAKICAgICAgICAgcmV0dXJuIHA7CiB9CiAKK3dpdGhpdGVtX3R5Cit3aXRoaXRlbShleHByX3R5IGNvbnRleHRfZXhwciwgZXhwcl90eSBvcHRpb25hbF92YXJzLCBQeUFyZW5hICphcmVuYSkKK3sKKyAgICAgICAgd2l0aGl0ZW1fdHkgcDsKKyAgICAgICAgaWYgKCFjb250ZXh0X2V4cHIpIHsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZpZWxkIGNvbnRleHRfZXhwciBpcyByZXF1aXJlZCBmb3Igd2l0aGl0ZW0iKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBwID0gKHdpdGhpdGVtX3R5KVB5QXJlbmFfTWFsbG9jKGFyZW5hLCBzaXplb2YoKnApKTsKKyAgICAgICAgaWYgKCFwKQorICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBwLT5jb250ZXh0X2V4cHIgPSBjb250ZXh0X2V4cHI7CisgICAgICAgIHAtPm9wdGlvbmFsX3ZhcnMgPSBvcHRpb25hbF92YXJzOworICAgICAgICByZXR1cm4gcDsKK30KKwogCiBQeU9iamVjdCoKIGFzdDJvYmpfbW9kKHZvaWQqIF9vKQpAQCAtMjE2Myw3ICsyMjQ3LDcgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5Nb2R1bGUuYm9keSwgYXN0Mm9ial9zdG10KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJib2R5IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfYm9keSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTIxNzIsNyArMjI1Niw3IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuSW50ZXJhY3RpdmUuYm9keSwgYXN0Mm9ial9zdG10KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJib2R5IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfYm9keSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTIxODEsNyArMjI2NSw3IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuRXhwcmVzc2lvbi5ib2R5KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJib2R5IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfYm9keSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTIxOTAsNyArMjI3NCw3IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuU3VpdGUuYm9keSwgYXN0Mm9ial9zdG10KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJib2R5IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfYm9keSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTIyMTgsMjkgKzIzMDIsMjkgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2lkZW50aWZpZXIoby0+di5GdW5jdGlvbkRlZi5uYW1lKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJuYW1lIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfbmFtZSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfYXJndW1lbnRzKG8tPnYuRnVuY3Rpb25EZWYuYXJncyk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiYXJncyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2FyZ3MsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5GdW5jdGlvbkRlZi5ib2R5LCBhc3Qyb2JqX3N0bXQpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImJvZHkiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9ib2R5LCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuRnVuY3Rpb25EZWYuZGVjb3JhdG9yX2xpc3QsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Mm9ial9leHByKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJkZWNvcmF0b3JfbGlzdCIsIHZhbHVlKSA9PQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfZGVjb3JhdG9yX2xpc3QsIHZhbHVlKSA9PQogICAgICAgICAgICAgICAgICAgICAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5GdW5jdGlvbkRlZi5yZXR1cm5zKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJyZXR1cm5zIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfcmV0dXJucywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTIyNDksMzggKzIzMzMsMzggQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2lkZW50aWZpZXIoby0+di5DbGFzc0RlZi5uYW1lKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJuYW1lIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfbmFtZSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LkNsYXNzRGVmLmJhc2VzLCBhc3Qyb2JqX2V4cHIpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImJhc2VzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfYmFzZXMsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5DbGFzc0RlZi5rZXl3b3JkcywgYXN0Mm9ial9rZXl3b3JkKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJrZXl3b3JkcyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2tleXdvcmRzLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuQ2xhc3NEZWYuc3RhcmFyZ3MpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInN0YXJhcmdzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfc3RhcmFyZ3MsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5DbGFzc0RlZi5rd2FyZ3MpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImt3YXJncyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2t3YXJncywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LkNsYXNzRGVmLmJvZHksIGFzdDJvYmpfc3RtdCk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiYm9keSIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2JvZHksIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5DbGFzc0RlZi5kZWNvcmF0b3JfbGlzdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3Qyb2JqX2V4cHIpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImRlY29yYXRvcl9saXN0IiwgdmFsdWUpID09CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9kZWNvcmF0b3JfbGlzdCwgdmFsdWUpID09CiAgICAgICAgICAgICAgICAgICAgIC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKQEAgLTIyOTAsNyArMjM3NCw3IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuUmV0dXJuLnZhbHVlKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJ2YWx1ZSIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX3ZhbHVlLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjI5OSw3ICsyMzgzLDcgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5EZWxldGUudGFyZ2V0cywgYXN0Mm9ial9leHByKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJ0YXJnZXRzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdGFyZ2V0cywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTIzMDgsMTIgKzIzOTIsMTIgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5Bc3NpZ24udGFyZ2V0cywgYXN0Mm9ial9leHByKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJ0YXJnZXRzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdGFyZ2V0cywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LkFzc2lnbi52YWx1ZSk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAidmFsdWUiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF92YWx1ZSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTIzMjIsMTcgKzI0MDYsMTcgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5BdWdBc3NpZ24udGFyZ2V0KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJ0YXJnZXQiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF90YXJnZXQsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX29wZXJhdG9yKG8tPnYuQXVnQXNzaWduLm9wKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJvcCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX29wLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuQXVnQXNzaWduLnZhbHVlKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJ2YWx1ZSIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX3ZhbHVlLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjM0MSwyMiArMjQyNSwyMiBAQAogICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LkZvci50YXJnZXQpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInRhcmdldCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX3RhcmdldCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LkZvci5pdGVyKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJpdGVyIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfaXRlciwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LkZvci5ib2R5LCBhc3Qyb2JqX3N0bXQpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImJvZHkiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9ib2R5LCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuRm9yLm9yZWxzZSwgYXN0Mm9ial9zdG10KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJvcmVsc2UiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9vcmVsc2UsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yMzY1LDE3ICsyNDQ5LDE3IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuV2hpbGUudGVzdCk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAidGVzdCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX3Rlc3QsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5XaGlsZS5ib2R5LCBhc3Qyb2JqX3N0bXQpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImJvZHkiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9ib2R5LCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuV2hpbGUub3JlbHNlLCBhc3Qyb2JqX3N0bXQpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgIm9yZWxzZSIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX29yZWxzZSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTIzODQsMzcgKzI0NjgsMzEgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5JZi50ZXN0KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJ0ZXN0IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdGVzdCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LklmLmJvZHksIGFzdDJvYmpfc3RtdCk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiYm9keSIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2JvZHksIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5JZi5vcmVsc2UsIGFzdDJvYmpfc3RtdCk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAib3JlbHNlIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfb3JlbHNlLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIFdpdGhfa2luZDoKICAgICAgICAgICAgICAgICByZXN1bHQgPSBQeVR5cGVfR2VuZXJpY05ldyhXaXRoX3R5cGUsIE5VTEwsIE5VTEwpOwogICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LldpdGguY29udGV4dF9leHByKTsKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LldpdGguaXRlbXMsIGFzdDJvYmpfd2l0aGl0ZW0pOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImNvbnRleHRfZXhwciIsIHZhbHVlKSA9PSAtMSkKLSAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7Ci0gICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5XaXRoLm9wdGlvbmFsX3ZhcnMpOwotICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgIm9wdGlvbmFsX3ZhcnMiLCB2YWx1ZSkgPT0KLSAgICAgICAgICAgICAgICAgICAgLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9pdGVtcywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LldpdGguYm9keSwgYXN0Mm9ial9zdG10KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJib2R5IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfYm9keSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI0MjMsNDYgKzI1MDEsMzYgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5SYWlzZS5leGMpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImV4YyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2V4YywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LlJhaXNlLmNhdXNlKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJjYXVzZSIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2NhdXNlLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIFRyeUV4Y2VwdF9raW5kOgotICAgICAgICAgICAgICAgIHJlc3VsdCA9IFB5VHlwZV9HZW5lcmljTmV3KFRyeUV4Y2VwdF90eXBlLCBOVUxMLCBOVUxMKTsKKyAgICAgICAgY2FzZSBUcnlfa2luZDoKKyAgICAgICAgICAgICAgICByZXN1bHQgPSBQeVR5cGVfR2VuZXJpY05ldyhUcnlfdHlwZSwgTlVMTCwgTlVMTCk7CiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuVHJ5RXhjZXB0LmJvZHksIGFzdDJvYmpfc3RtdCk7CisgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5UcnkuYm9keSwgYXN0Mm9ial9zdG10KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJib2R5IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfYm9keSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKLSAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LlRyeUV4Y2VwdC5oYW5kbGVycywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3Qyb2JqX2V4Y2VwdGhhbmRsZXIpOworICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuVHJ5LmhhbmRsZXJzLCBhc3Qyb2JqX2V4Y2VwdGhhbmRsZXIpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImhhbmRsZXJzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfaGFuZGxlcnMsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7Ci0gICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5UcnlFeGNlcHQub3JlbHNlLCBhc3Qyb2JqX3N0bXQpOworICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuVHJ5Lm9yZWxzZSwgYXN0Mm9ial9zdG10KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJvcmVsc2UiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9vcmVsc2UsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGNhc2UgVHJ5RmluYWxseV9raW5kOgotICAgICAgICAgICAgICAgIHJlc3VsdCA9IFB5VHlwZV9HZW5lcmljTmV3KFRyeUZpbmFsbHlfdHlwZSwgTlVMTCwgTlVMTCk7Ci0gICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuVHJ5RmluYWxseS5ib2R5LCBhc3Qyb2JqX3N0bXQpOworICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuVHJ5LmZpbmFsYm9keSwgYXN0Mm9ial9zdG10KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJib2R5IiwgdmFsdWUpID09IC0xKQotICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKLSAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LlRyeUZpbmFsbHkuZmluYWxib2R5LCBhc3Qyb2JqX3N0bXQpOwotICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImZpbmFsYm9keSIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2ZpbmFsYm9keSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI0NzEsMTIgKzI1MzksMTIgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5Bc3NlcnQudGVzdCk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAidGVzdCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX3Rlc3QsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5Bc3NlcnQubXNnKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJtc2ciLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9tc2csIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yNDg1LDcgKzI1NTMsNyBAQAogICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LkltcG9ydC5uYW1lcywgYXN0Mm9ial9hbGlhcyk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAibmFtZXMiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9uYW1lcywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI0OTQsMTcgKzI1NjIsMTcgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2lkZW50aWZpZXIoby0+di5JbXBvcnRGcm9tLm1vZHVsZSk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAibW9kdWxlIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfbW9kdWxlLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuSW1wb3J0RnJvbS5uYW1lcywgYXN0Mm9ial9hbGlhcyk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAibmFtZXMiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9uYW1lcywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfaW50KG8tPnYuSW1wb3J0RnJvbS5sZXZlbCk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAibGV2ZWwiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9sZXZlbCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI1MTMsNyArMjU4MSw3IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuR2xvYmFsLm5hbWVzLCBhc3Qyb2JqX2lkZW50aWZpZXIpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgIm5hbWVzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfbmFtZXMsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yNTIyLDcgKzI1OTAsNyBAQAogICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52Lk5vbmxvY2FsLm5hbWVzLCBhc3Qyb2JqX2lkZW50aWZpZXIpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgIm5hbWVzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfbmFtZXMsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yNTMxLDcgKzI1OTksNyBAQAogICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LkV4cHIudmFsdWUpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInZhbHVlIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdmFsdWUsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yNTUwLDEyICsyNjE4LDEyIEBACiAgICAgICAgIH0KICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2ludChvLT5saW5lbm8pOwogICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAibGluZW5vIiwgdmFsdWUpIDwgMCkKKyAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9saW5lbm8sIHZhbHVlKSA8IDApCiAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9pbnQoby0+Y29sX29mZnNldCk7CiAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJjb2xfb2Zmc2V0IiwgdmFsdWUpIDwgMCkKKyAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9jb2xfb2Zmc2V0LCB2YWx1ZSkgPCAwKQogICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMjU4MSwxMiArMjY0OSwxMiBAQAogICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfYm9vbG9wKG8tPnYuQm9vbE9wLm9wKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJvcCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX29wLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuQm9vbE9wLnZhbHVlcywgYXN0Mm9ial9leHByKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJ2YWx1ZXMiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF92YWx1ZXMsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yNTk1LDE3ICsyNjYzLDE3IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuQmluT3AubGVmdCk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAibGVmdCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2xlZnQsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX29wZXJhdG9yKG8tPnYuQmluT3Aub3ApOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgIm9wIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfb3AsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5CaW5PcC5yaWdodCk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAicmlnaHQiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9yaWdodCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI2MTQsMTIgKzI2ODIsMTIgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX3VuYXJ5b3Aoby0+di5VbmFyeU9wLm9wKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJvcCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX29wLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuVW5hcnlPcC5vcGVyYW5kKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJvcGVyYW5kIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfb3BlcmFuZCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI2MjgsMTIgKzI2OTYsMTIgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2FyZ3VtZW50cyhvLT52LkxhbWJkYS5hcmdzKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJhcmdzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfYXJncywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LkxhbWJkYS5ib2R5KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJib2R5IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfYm9keSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI2NDIsMTcgKzI3MTAsMTcgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5JZkV4cC50ZXN0KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJ0ZXN0IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdGVzdCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LklmRXhwLmJvZHkpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImJvZHkiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9ib2R5LCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuSWZFeHAub3JlbHNlKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJvcmVsc2UiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9vcmVsc2UsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yNjYxLDEyICsyNzI5LDEyIEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuRGljdC5rZXlzLCBhc3Qyb2JqX2V4cHIpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImtleXMiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9rZXlzLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuRGljdC52YWx1ZXMsIGFzdDJvYmpfZXhwcik7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAidmFsdWVzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdmFsdWVzLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjY3NSw3ICsyNzQzLDcgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5TZXQuZWx0cywgYXN0Mm9ial9leHByKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJlbHRzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfZWx0cywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI2ODQsMTMgKzI3NTIsMTMgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5MaXN0Q29tcC5lbHQpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImVsdCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2VsdCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52Lkxpc3RDb21wLmdlbmVyYXRvcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Mm9ial9jb21wcmVoZW5zaW9uKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJnZW5lcmF0b3JzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfZ2VuZXJhdG9ycywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI2OTksMTMgKzI3NjcsMTMgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5TZXRDb21wLmVsdCk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiZWx0IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfZWx0LCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuU2V0Q29tcC5nZW5lcmF0b3JzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzdDJvYmpfY29tcHJlaGVuc2lvbik7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiZ2VuZXJhdG9ycyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2dlbmVyYXRvcnMsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yNzE0LDE4ICsyNzgyLDE4IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuRGljdENvbXAua2V5KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJrZXkiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9rZXksIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5EaWN0Q29tcC52YWx1ZSk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAidmFsdWUiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF92YWx1ZSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LkRpY3RDb21wLmdlbmVyYXRvcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXN0Mm9ial9jb21wcmVoZW5zaW9uKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJnZW5lcmF0b3JzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfZ2VuZXJhdG9ycywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI3MzQsMTMgKzI4MDIsMTMgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5HZW5lcmF0b3JFeHAuZWx0KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJlbHQiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9lbHQsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5HZW5lcmF0b3JFeHAuZ2VuZXJhdG9ycywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3Qyb2JqX2NvbXByZWhlbnNpb24pOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImdlbmVyYXRvcnMiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9nZW5lcmF0b3JzLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjc0OSw3ICsyODE3LDE2IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuWWllbGQudmFsdWUpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInZhbHVlIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdmFsdWUsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgWWllbGRGcm9tX2tpbmQ6CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gUHlUeXBlX0dlbmVyaWNOZXcoWWllbGRGcm9tX3R5cGUsIE5VTEwsIE5VTEwpOworICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LllpZWxkRnJvbS52YWx1ZSk7CisgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF92YWx1ZSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI3NTgsNyArMjgzNSw3IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuQ29tcGFyZS5sZWZ0KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJsZWZ0IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfbGVmdCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB7CkBAIC0yNzY5LDEyICsyODQ2LDEyIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5TGlzdF9TRVRfSVRFTSh2YWx1ZSwgaSwgYXN0Mm9ial9jbXBvcCgoY21wb3BfdHkpYXNkbF9zZXFfR0VUKG8tPnYuQ29tcGFyZS5vcHMsIGkpKSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgIm9wcyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX29wcywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52LkNvbXBhcmUuY29tcGFyYXRvcnMsIGFzdDJvYmpfZXhwcik7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiY29tcGFyYXRvcnMiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9jb21wYXJhdG9ycywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI3ODMsMjcgKzI4NjAsMjcgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5DYWxsLmZ1bmMpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImZ1bmMiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9mdW5jLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuQ2FsbC5hcmdzLCBhc3Qyb2JqX2V4cHIpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImFyZ3MiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9hcmdzLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuQ2FsbC5rZXl3b3JkcywgYXN0Mm9ial9rZXl3b3JkKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJrZXl3b3JkcyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2tleXdvcmRzLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuQ2FsbC5zdGFyYXJncyk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAic3RhcmFyZ3MiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9zdGFyYXJncywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LkNhbGwua3dhcmdzKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJrd2FyZ3MiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9rd2FyZ3MsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yODEyLDcgKzI4ODksNyBAQAogICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfb2JqZWN0KG8tPnYuTnVtLm4pOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgIm4iLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9uLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjgyMSwxNiArMjg5OCwxNiBAQAogICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfc3RyaW5nKG8tPnYuU3RyLnMpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInMiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9zLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIEJ5dGVzX2tpbmQ6CiAgICAgICAgICAgICAgICAgcmVzdWx0ID0gUHlUeXBlX0dlbmVyaWNOZXcoQnl0ZXNfdHlwZSwgTlVMTCwgTlVMTCk7CiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9zdHJpbmcoby0+di5CeXRlcy5zKTsKKyAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfYnl0ZXMoby0+di5CeXRlcy5zKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfcywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI4NDMsMTcgKzI5MjAsMTcgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5BdHRyaWJ1dGUudmFsdWUpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInZhbHVlIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdmFsdWUsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2lkZW50aWZpZXIoby0+di5BdHRyaWJ1dGUuYXR0cik7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiYXR0ciIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2F0dHIsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHJfY29udGV4dChvLT52LkF0dHJpYnV0ZS5jdHgpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImN0eCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2N0eCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI4NjIsMTcgKzI5MzksMTcgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5TdWJzY3JpcHQudmFsdWUpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInZhbHVlIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdmFsdWUsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX3NsaWNlKG8tPnYuU3Vic2NyaXB0LnNsaWNlKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJzbGljZSIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX3NsaWNlLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByX2NvbnRleHQoby0+di5TdWJzY3JpcHQuY3R4KTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJjdHgiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9jdHgsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0yODgxLDEyICsyOTU4LDEyIEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuU3RhcnJlZC52YWx1ZSk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAidmFsdWUiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF92YWx1ZSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcl9jb250ZXh0KG8tPnYuU3RhcnJlZC5jdHgpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImN0eCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2N0eCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI4OTUsMTIgKzI5NzIsMTIgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2lkZW50aWZpZXIoby0+di5OYW1lLmlkKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJpZCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2lkLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByX2NvbnRleHQoby0+di5OYW1lLmN0eCk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiY3R4IiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfY3R4LCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMjkwOSwxMiArMjk4NiwxMiBAQAogICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT52Lkxpc3QuZWx0cywgYXN0Mm9ial9leHByKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJlbHRzIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfZWx0cywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcl9jb250ZXh0KG8tPnYuTGlzdC5jdHgpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImN0eCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2N0eCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTI5MjMsMjQgKzMwMDAsMjQgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5UdXBsZS5lbHRzLCBhc3Qyb2JqX2V4cHIpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImVsdHMiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9lbHRzLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByX2NvbnRleHQoby0+di5UdXBsZS5jdHgpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImN0eCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2N0eCwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfaW50KG8tPmxpbmVubyk7CiAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJsaW5lbm8iLCB2YWx1ZSkgPCAwKQorICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2xpbmVubywgdmFsdWUpIDwgMCkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2ludChvLT5jb2xfb2Zmc2V0KTsKICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImNvbF9vZmZzZXQiLCB2YWx1ZSkgPCAwKQorICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2NvbF9vZmZzZXQsIHZhbHVlKSA8IDApCiAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CkBAIC0yOTkzLDE3ICszMDcwLDE3IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuU2xpY2UubG93ZXIpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImxvd2VyIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfbG93ZXIsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+di5TbGljZS51cHBlcik7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAidXBwZXIiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF91cHBlciwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LlNsaWNlLnN0ZXApOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInN0ZXAiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9zdGVwLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwpAQCAtMzAxMiw3ICszMDg5LDcgQEAKICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+di5FeHRTbGljZS5kaW1zLCBhc3Qyb2JqX3NsaWNlKTsKICAgICAgICAgICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJkaW1zIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfZGltcywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgICAgICAgICBicmVhazsKQEAgLTMwMjEsNyArMzA5OCw3IEBACiAgICAgICAgICAgICAgICAgaWYgKCFyZXN1bHQpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPnYuSW5kZXgudmFsdWUpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInZhbHVlIiwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdmFsdWUsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0zMTY3LDE3ICszMjQ0LDE3IEBACiAgICAgICAgIGlmICghcmVzdWx0KSByZXR1cm4gTlVMTDsKICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+dGFyZ2V0KTsKICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInRhcmdldCIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF90YXJnZXQsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+aXRlcik7CiAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJpdGVyIiwgdmFsdWUpID09IC0xKQorICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2l0ZXIsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+aWZzLCBhc3Qyb2JqX2V4cHIpOwogICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiaWZzIiwgdmFsdWUpID09IC0xKQorICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2lmcywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMzIwMywyOSArMzI4MCwyOSBAQAogICAgICAgICAgICAgICAgIGlmICghcmVzdWx0KSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfZXhwcihvLT52LkV4Y2VwdEhhbmRsZXIudHlwZSk7CiAgICAgICAgICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAidHlwZSIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX3R5cGUsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2lkZW50aWZpZXIoby0+di5FeGNlcHRIYW5kbGVyLm5hbWUpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgIm5hbWUiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9uYW1lLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPnYuRXhjZXB0SGFuZGxlci5ib2R5LCBhc3Qyb2JqX3N0bXQpOwogICAgICAgICAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImJvZHkiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9ib2R5LCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9pbnQoby0+bGluZW5vKTsKICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImxpbmVubyIsIHZhbHVlKSA8IDApCisgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfbGluZW5vLCB2YWx1ZSkgPCAwKQogICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfaW50KG8tPmNvbF9vZmZzZXQpOwogICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiY29sX29mZnNldCIsIHZhbHVlKSA8IDApCisgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfY29sX29mZnNldCwgdmFsdWUpIDwgMCkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTMyNDksNDIgKzMzMjYsNDIgQEAKICAgICAgICAgaWYgKCFyZXN1bHQpIHJldHVybiBOVUxMOwogICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfbGlzdChvLT5hcmdzLCBhc3Qyb2JqX2FyZyk7CiAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJhcmdzIiwgdmFsdWUpID09IC0xKQorICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2FyZ3MsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2lkZW50aWZpZXIoby0+dmFyYXJnKTsKICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgInZhcmFyZyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF92YXJhcmcsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+dmFyYXJnYW5ub3RhdGlvbik7CiAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJ2YXJhcmdhbm5vdGF0aW9uIiwgdmFsdWUpID09IC0xKQorICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX3ZhcmFyZ2Fubm90YXRpb24sIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+a3dvbmx5YXJncywgYXN0Mm9ial9hcmcpOwogICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAia3dvbmx5YXJncyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9rd29ubHlhcmdzLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9pZGVudGlmaWVyKG8tPmt3YXJnKTsKICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImt3YXJnIiwgdmFsdWUpID09IC0xKQorICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2t3YXJnLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPmt3YXJnYW5ub3RhdGlvbik7CiAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJrd2FyZ2Fubm90YXRpb24iLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfa3dhcmdhbm5vdGF0aW9uLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9saXN0KG8tPmRlZmF1bHRzLCBhc3Qyb2JqX2V4cHIpOwogICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiZGVmYXVsdHMiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfZGVmYXVsdHMsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2xpc3Qoby0+a3dfZGVmYXVsdHMsIGFzdDJvYmpfZXhwcik7CiAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJrd19kZWZhdWx0cyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9rd19kZWZhdWx0cywgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMzMwOCwxMiArMzM4NSwxMiBAQAogICAgICAgICBpZiAoIXJlc3VsdCkgcmV0dXJuIE5VTEw7CiAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9pZGVudGlmaWVyKG8tPmFyZyk7CiAgICAgICAgIGlmICghdmFsdWUpIGdvdG8gZmFpbGVkOwotICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhyZXN1bHQsICJhcmciLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfYXJnLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPmFubm90YXRpb24pOwogICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiYW5ub3RhdGlvbiIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9hbm5vdGF0aW9uLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CkBAIC0zMzM3LDEyICszNDE0LDEyIEBACiAgICAgICAgIGlmICghcmVzdWx0KSByZXR1cm4gTlVMTDsKICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2lkZW50aWZpZXIoby0+YXJnKTsKICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgImFyZyIsIHZhbHVlKSA9PSAtMSkKKyAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9hcmcsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+dmFsdWUpOwogICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAidmFsdWUiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfdmFsdWUsIHZhbHVlKSA9PSAtMSkKICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgUHlfREVDUkVGKHZhbHVlKTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTMzNjYsMTIgKzM0NDMsNDEgQEAKICAgICAgICAgaWYgKCFyZXN1bHQpIHJldHVybiBOVUxMOwogICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfaWRlbnRpZmllcihvLT5uYW1lKTsKICAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7Ci0gICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHJlc3VsdCwgIm5hbWUiLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfbmFtZSwgdmFsdWUpID09IC0xKQogICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOwogICAgICAgICBQeV9ERUNSRUYodmFsdWUpOwogICAgICAgICB2YWx1ZSA9IGFzdDJvYmpfaWRlbnRpZmllcihvLT5hc25hbWUpOwogICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmVzdWx0LCAiYXNuYW1lIiwgdmFsdWUpID09IC0xKQorICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZChyZXN1bHQsICZQeUlkX2FzbmFtZSwgdmFsdWUpID09IC0xKQorICAgICAgICAgICAgICAgIGdvdG8gZmFpbGVkOworICAgICAgICBQeV9ERUNSRUYodmFsdWUpOworICAgICAgICByZXR1cm4gcmVzdWx0OworZmFpbGVkOgorICAgICAgICBQeV9YREVDUkVGKHZhbHVlKTsKKyAgICAgICAgUHlfWERFQ1JFRihyZXN1bHQpOworICAgICAgICByZXR1cm4gTlVMTDsKK30KKworUHlPYmplY3QqCithc3Qyb2JqX3dpdGhpdGVtKHZvaWQqIF9vKQoreworICAgICAgICB3aXRoaXRlbV90eSBvID0gKHdpdGhpdGVtX3R5KV9vOworICAgICAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTCwgKnZhbHVlID0gTlVMTDsKKyAgICAgICAgaWYgKCFvKSB7CisgICAgICAgICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgICAgICAgICAgICAgIHJldHVybiBQeV9Ob25lOworICAgICAgICB9CisKKyAgICAgICAgcmVzdWx0ID0gUHlUeXBlX0dlbmVyaWNOZXcod2l0aGl0ZW1fdHlwZSwgTlVMTCwgTlVMTCk7CisgICAgICAgIGlmICghcmVzdWx0KSByZXR1cm4gTlVMTDsKKyAgICAgICAgdmFsdWUgPSBhc3Qyb2JqX2V4cHIoby0+Y29udGV4dF9leHByKTsKKyAgICAgICAgaWYgKCF2YWx1ZSkgZ290byBmYWlsZWQ7CisgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHJlc3VsdCwgJlB5SWRfY29udGV4dF9leHByLCB2YWx1ZSkgPT0gLTEpCisgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CisgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CisgICAgICAgIHZhbHVlID0gYXN0Mm9ial9leHByKG8tPm9wdGlvbmFsX3ZhcnMpOworICAgICAgICBpZiAoIXZhbHVlKSBnb3RvIGZhaWxlZDsKKyAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQocmVzdWx0LCAmUHlJZF9vcHRpb25hbF92YXJzLCB2YWx1ZSkgPT0gLTEpCiAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgIHJldHVybiByZXN1bHQ7CkBAIC0zNDAwLDExICszNTA2LDExIEBACiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGJvZHk7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJib2R5IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2JvZHkpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImJvZHkiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9ib2R5KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJNb2R1bGUgZmllbGQgXCJib2R5XCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC0zNDM2LDExICszNTQyLDExIEBACiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGJvZHk7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJib2R5IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2JvZHkpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImJvZHkiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9ib2R5KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJJbnRlcmFjdGl2ZSBmaWVsZCBcImJvZHlcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTM0NzIsOSArMzU3OCw5IEBACiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7CiAgICAgICAgICAgICAgICAgZXhwcl90eSBib2R5OwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiYm9keSIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9ib2R5KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYm9keSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2JvZHkpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZib2R5LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtMzQ5NSwxMSArMzYwMSwxMSBAQAogICAgICAgICBpZiAoaXNpbnN0YW5jZSkgewogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiBib2R5OwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiYm9keSIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9ib2R5KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJib2R5Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfYm9keSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiU3VpdGUgZmllbGQgXCJib2R5XCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC0zNTQ0LDkgKzM2NTAsOSBAQAogICAgICAgICAgICAgICAgICpvdXQgPSBOVUxMOwogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImxpbmVubyIpKSB7CisgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfbGluZW5vKSkgewogICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJsaW5lbm8iKTsKKyAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfbGluZW5vKTsKICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfaW50KHRtcCwgJmxpbmVubywgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC0zNTU2LDkgKzM2NjIsOSBAQAogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImxpbmVub1wiIG1pc3NpbmcgZnJvbSBzdG10Iik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiY29sX29mZnNldCIpKSB7CisgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfY29sX29mZnNldCkpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiY29sX29mZnNldCIpOworICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9jb2xfb2Zmc2V0KTsKICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfaW50KHRtcCwgJmNvbF9vZmZzZXQsIGFyZW5hKTsKICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtMzU3OSw5ICszNjg1LDkgQEAKICAgICAgICAgICAgICAgICBhc2RsX3NlcSogZGVjb3JhdG9yX2xpc3Q7CiAgICAgICAgICAgICAgICAgZXhwcl90eSByZXR1cm5zOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAibmFtZSIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9uYW1lKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAibmFtZSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX25hbWUpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfaWRlbnRpZmllcih0bXAsICZuYW1lLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtMzU5MSw5ICszNjk3LDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcIm5hbWVcIiBtaXNzaW5nIGZyb20gRnVuY3Rpb25EZWYiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJhcmdzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2FyZ3MpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJhcmdzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfYXJncyk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9hcmd1bWVudHModG1wLCAmYXJncywgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTM2MDMsMTEgKzM3MDksMTEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImFyZ3NcIiBtaXNzaW5nIGZyb20gRnVuY3Rpb25EZWYiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJib2R5IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2JvZHkpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImJvZHkiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9ib2R5KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJGdW5jdGlvbkRlZiBmaWVsZCBcImJvZHlcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTM2MjgsMTEgKzM3MzQsMTEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImJvZHlcIiBtaXNzaW5nIGZyb20gRnVuY3Rpb25EZWYiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJkZWNvcmF0b3JfbGlzdCIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9kZWNvcmF0b3JfbGlzdCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiZGVjb3JhdG9yX2xpc3QiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9kZWNvcmF0b3JfbGlzdCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiRnVuY3Rpb25EZWYgZmllbGQgXCJkZWNvcmF0b3JfbGlzdFwiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtMzY1Myw5ICszNzU5LDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImRlY29yYXRvcl9saXN0XCIgbWlzc2luZyBmcm9tIEZ1bmN0aW9uRGVmIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAicmV0dXJucyIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9yZXR1cm5zKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAicmV0dXJucyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3JldHVybnMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZyZXR1cm5zLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtMzY4Miw5ICszNzg4LDkgQEAKICAgICAgICAgICAgICAgICBhc2RsX3NlcSogYm9keTsKICAgICAgICAgICAgICAgICBhc2RsX3NlcSogZGVjb3JhdG9yX2xpc3Q7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJuYW1lIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX25hbWUpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJuYW1lIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfbmFtZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9pZGVudGlmaWVyKHRtcCwgJm5hbWUsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC0zNjk0LDExICszODAwLDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJuYW1lXCIgbWlzc2luZyBmcm9tIENsYXNzRGVmIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiYmFzZXMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfYmFzZXMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImJhc2VzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfYmFzZXMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIkNsYXNzRGVmIGZpZWxkIFwiYmFzZXNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTM3MTksMTEgKzM4MjUsMTEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImJhc2VzXCIgbWlzc2luZyBmcm9tIENsYXNzRGVmIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAia2V5d29yZHMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfa2V5d29yZHMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImtleXdvcmRzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfa2V5d29yZHMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIkNsYXNzRGVmIGZpZWxkIFwia2V5d29yZHNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTM3NDQsOSArMzg1MCw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJrZXl3b3Jkc1wiIG1pc3NpbmcgZnJvbSBDbGFzc0RlZiIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInN0YXJhcmdzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3N0YXJhcmdzKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAic3RhcmFyZ3MiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9zdGFyYXJncyk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnN0YXJhcmdzLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtMzc1NSw5ICszODYxLDkgQEAKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgc3RhcmFyZ3MgPSBOVUxMOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJrd2FyZ3MiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfa3dhcmdzKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAia3dhcmdzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfa3dhcmdzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAma3dhcmdzLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtMzc2NiwxMSArMzg3MiwxMSBAQAogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBrd2FyZ3MgPSBOVUxMOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJib2R5IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2JvZHkpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImJvZHkiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9ib2R5KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJDbGFzc0RlZiBmaWVsZCBcImJvZHlcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTM3OTEsMTEgKzM4OTcsMTEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImJvZHlcIiBtaXNzaW5nIGZyb20gQ2xhc3NEZWYiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJkZWNvcmF0b3JfbGlzdCIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9kZWNvcmF0b3JfbGlzdCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiZGVjb3JhdG9yX2xpc3QiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9kZWNvcmF0b3JfbGlzdCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiQ2xhc3NEZWYgZmllbGQgXCJkZWNvcmF0b3JfbGlzdFwiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtMzgyOCw5ICszOTM0LDkgQEAKICAgICAgICAgaWYgKGlzaW5zdGFuY2UpIHsKICAgICAgICAgICAgICAgICBleHByX3R5IHZhbHVlOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAidmFsdWUiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfdmFsdWUpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJ2YWx1ZSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3ZhbHVlKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmdmFsdWUsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC0zODUwLDExICszOTU2LDExIEBACiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIHRhcmdldHM7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ0YXJnZXRzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3RhcmdldHMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInRhcmdldHMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF90YXJnZXRzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJEZWxldGUgZmllbGQgXCJ0YXJnZXRzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC0zODg3LDExICszOTkzLDExIEBACiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIHRhcmdldHM7CiAgICAgICAgICAgICAgICAgZXhwcl90eSB2YWx1ZTsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInRhcmdldHMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfdGFyZ2V0cykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidGFyZ2V0cyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3RhcmdldHMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIkFzc2lnbiBmaWVsZCBcInRhcmdldHNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTM5MTIsOSArNDAxOCw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJ0YXJnZXRzXCIgbWlzc2luZyBmcm9tIEFzc2lnbiIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInZhbHVlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF92YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhbHVlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtMzkzNyw5ICs0MDQzLDkgQEAKICAgICAgICAgICAgICAgICBvcGVyYXRvcl90eSBvcDsKICAgICAgICAgICAgICAgICBleHByX3R5IHZhbHVlOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAidGFyZ2V0IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3RhcmdldCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInRhcmdldCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3RhcmdldCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnRhcmdldCwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTM5NDksOSArNDA1NSw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJ0YXJnZXRcIiBtaXNzaW5nIGZyb20gQXVnQXNzaWduIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAib3AiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfb3ApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJvcCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX29wKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X29wZXJhdG9yKHRtcCwgJm9wLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtMzk2MSw5ICs0MDY3LDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcIm9wXCIgbWlzc2luZyBmcm9tIEF1Z0Fzc2lnbiIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInZhbHVlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF92YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhbHVlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtMzk4Nyw5ICs0MDkzLDkgQEAKICAgICAgICAgICAgICAgICBhc2RsX3NlcSogYm9keTsKICAgICAgICAgICAgICAgICBhc2RsX3NlcSogb3JlbHNlOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAidGFyZ2V0IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3RhcmdldCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInRhcmdldCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3RhcmdldCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnRhcmdldCwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTM5OTksOSArNDEwNSw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJ0YXJnZXRcIiBtaXNzaW5nIGZyb20gRm9yIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiaXRlciIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9pdGVyKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiaXRlciIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2l0ZXIpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZpdGVyLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNDAxMSwxMSArNDExNywxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiaXRlclwiIG1pc3NpbmcgZnJvbSBGb3IiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJib2R5IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2JvZHkpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImJvZHkiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9ib2R5KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJGb3IgZmllbGQgXCJib2R5XCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC00MDM2LDExICs0MTQyLDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJib2R5XCIgbWlzc2luZyBmcm9tIEZvciIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgIm9yZWxzZSIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9vcmVsc2UpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm9yZWxzZSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX29yZWxzZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiRm9yIGZpZWxkIFwib3JlbHNlXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC00MDc1LDkgKzQxODEsOSBAQAogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiBib2R5OwogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiBvcmVsc2U7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ0ZXN0IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3Rlc3QpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJ0ZXN0Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfdGVzdCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnRlc3QsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC00MDg3LDExICs0MTkzLDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJ0ZXN0XCIgbWlzc2luZyBmcm9tIFdoaWxlIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiYm9keSIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9ib2R5KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJib2R5Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfYm9keSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiV2hpbGUgZmllbGQgXCJib2R5XCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC00MTEyLDExICs0MjE4LDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJib2R5XCIgbWlzc2luZyBmcm9tIFdoaWxlIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAib3JlbHNlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX29yZWxzZSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAib3JlbHNlIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfb3JlbHNlKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJXaGlsZSBmaWVsZCBcIm9yZWxzZVwiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtNDE1MCw5ICs0MjU2LDkgQEAKICAgICAgICAgICAgICAgICBhc2RsX3NlcSogYm9keTsKICAgICAgICAgICAgICAgICBhc2RsX3NlcSogb3JlbHNlOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAidGVzdCIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF90ZXN0KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidGVzdCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3Rlc3QpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZ0ZXN0LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNDE2MiwxMSArNDI2OCwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwidGVzdFwiIG1pc3NpbmcgZnJvbSBJZiIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImJvZHkiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfYm9keSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYm9keSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2JvZHkpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIklmIGZpZWxkIFwiYm9keVwiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtNDE4NywxMSArNDI5MywxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiYm9keVwiIG1pc3NpbmcgZnJvbSBJZiIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgIm9yZWxzZSIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9vcmVsc2UpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm9yZWxzZSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX29yZWxzZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiSWYgZmllbGQgXCJvcmVsc2VcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTQyMjEsMzggKzQzMjcsMzkgQEAKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQogICAgICAgICBpZiAoaXNpbnN0YW5jZSkgewotICAgICAgICAgICAgICAgIGV4cHJfdHkgY29udGV4dF9leHByOwotICAgICAgICAgICAgICAgIGV4cHJfdHkgb3B0aW9uYWxfdmFyczsKKyAgICAgICAgICAgICAgICBhc2RsX3NlcSogaXRlbXM7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGJvZHk7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJjb250ZXh0X2V4cHIiKSkgewotICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiY29udGV4dF9leHByIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJmNvbnRleHRfZXhwciwgYXJlbmEpOwotICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5X1hERUNSRUYodG1wKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IE5VTEw7Ci0gICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImNvbnRleHRfZXhwclwiIG1pc3NpbmcgZnJvbSBXaXRoIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAib3B0aW9uYWxfdmFycyIpKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJvcHRpb25hbF92YXJzIik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJm9wdGlvbmFsX3ZhcnMsIGFyZW5hKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgICAgICAgICBQeV9YREVDUkVGKHRtcCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBOVUxMOwotICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25hbF92YXJzID0gTlVMTDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiYm9keSIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9pdGVtcykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYm9keSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2l0ZW1zKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJXaXRoIGZpZWxkIFwiaXRlbXNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSBQeUxpc3RfR0VUX1NJWkUodG1wKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zID0gYXNkbF9zZXFfbmV3KGxlbiwgYXJlbmEpOworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW1zID09IE5VTEwpIGdvdG8gZmFpbGVkOworICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhpdGVtX3R5IHZhbHVlOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X3dpdGhpdGVtKFB5TGlzdF9HRVRfSVRFTSh0bXAsIGkpLCAmdmFsdWUsIGFyZW5hKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNkbF9zZXFfU0VUKGl0ZW1zLCBpLCB2YWx1ZSk7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICAgICBQeV9YREVDUkVGKHRtcCk7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBOVUxMOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJpdGVtc1wiIG1pc3NpbmcgZnJvbSBXaXRoIik7CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9ib2R5KSkgeworICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOworICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2JvZHkpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIldpdGggZmllbGQgXCJib2R5XCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC00MjczLDggKzQzODAsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiYm9keVwiIG1pc3NpbmcgZnJvbSBXaXRoIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgKm91dCA9IFdpdGgoY29udGV4dF9leHByLCBvcHRpb25hbF92YXJzLCBib2R5LCBsaW5lbm8sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sX29mZnNldCwgYXJlbmEpOworICAgICAgICAgICAgICAgICpvdXQgPSBXaXRoKGl0ZW1zLCBib2R5LCBsaW5lbm8sIGNvbF9vZmZzZXQsIGFyZW5hKTsKICAgICAgICAgICAgICAgICBpZiAoKm91dCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQpAQCAtNDI4Niw5ICs0MzkyLDkgQEAKICAgICAgICAgICAgICAgICBleHByX3R5IGV4YzsKICAgICAgICAgICAgICAgICBleHByX3R5IGNhdXNlOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiZXhjIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2V4YykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImV4YyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2V4Yyk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJmV4YywgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTQyOTcsOSArNDQwMyw5IEBACiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGV4YyA9IE5VTEw7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImNhdXNlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2NhdXNlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiY2F1c2UiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9jYXVzZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJmNhdXNlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNDMxMiw3ICs0NDE4LDcgQEAKICAgICAgICAgICAgICAgICBpZiAoKm91dCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQotICAgICAgICBpc2luc3RhbmNlID0gUHlPYmplY3RfSXNJbnN0YW5jZShvYmosIChQeU9iamVjdCopVHJ5RXhjZXB0X3R5cGUpOworICAgICAgICBpc2luc3RhbmNlID0gUHlPYmplY3RfSXNJbnN0YW5jZShvYmosIChQeU9iamVjdCopVHJ5X3R5cGUpOwogICAgICAgICBpZiAoaXNpbnN0YW5jZSA9PSAtMSkgewogICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9CkBAIC00MzIwLDE1ICs0NDI2LDE2IEBACiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGJvZHk7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGhhbmRsZXJzOwogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiBvcmVsc2U7CisgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGZpbmFsYm9keTsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImJvZHkiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfYm9keSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYm9keSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2JvZHkpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIlRyeUV4Y2VwdCBmaWVsZCBcImJvZHlcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIlRyeSBmaWVsZCBcImJvZHlcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSBQeUxpc3RfR0VUX1NJWkUodG1wKTsKQEAgLTQzNDMsMTcgKzQ0NTAsMTcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1hERUNSRUYodG1wKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IE5VTEw7CiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImJvZHlcIiBtaXNzaW5nIGZyb20gVHJ5RXhjZXB0Iik7CisgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJib2R5XCIgbWlzc2luZyBmcm9tIFRyeSIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImhhbmRsZXJzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2hhbmRsZXJzKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJoYW5kbGVycyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2hhbmRsZXJzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJUcnlFeGNlcHQgZmllbGQgXCJoYW5kbGVyc1wiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiVHJ5IGZpZWxkIFwiaGFuZGxlcnNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSBQeUxpc3RfR0VUX1NJWkUodG1wKTsKQEAgLTQzNjgsMTcgKzQ0NzUsMTcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1hERUNSRUYodG1wKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IE5VTEw7CiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImhhbmRsZXJzXCIgbWlzc2luZyBmcm9tIFRyeUV4Y2VwdCIpOworICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiaGFuZGxlcnNcIiBtaXNzaW5nIGZyb20gVHJ5Iik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAib3JlbHNlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX29yZWxzZSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAib3JlbHNlIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfb3JlbHNlKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJUcnlFeGNlcHQgZmllbGQgXCJvcmVsc2VcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIlRyeSBmaWVsZCBcIm9yZWxzZVwiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA9IFB5TGlzdF9HRVRfU0laRSh0bXApOwpAQCAtNDM5Myw1NSArNDUwMCwxNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlfWERFQ1JFRih0bXApOwogICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gTlVMTDsKICAgICAgICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwib3JlbHNlXCIgbWlzc2luZyBmcm9tIFRyeUV4Y2VwdCIpOworICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwib3JlbHNlXCIgbWlzc2luZyBmcm9tIFRyeSIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICpvdXQgPSBUcnlFeGNlcHQoYm9keSwgaGFuZGxlcnMsIG9yZWxzZSwgbGluZW5vLCBjb2xfb2Zmc2V0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJlbmEpOwotICAgICAgICAgICAgICAgIGlmICgqb3V0ID09IE5VTEwpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICB9Ci0gICAgICAgIGlzaW5zdGFuY2UgPSBQeU9iamVjdF9Jc0luc3RhbmNlKG9iaiwgKFB5T2JqZWN0KilUcnlGaW5hbGx5X3R5cGUpOwotICAgICAgICBpZiAoaXNpbnN0YW5jZSA9PSAtMSkgewotICAgICAgICAgICAgICAgIHJldHVybiAxOwotICAgICAgICB9Ci0gICAgICAgIGlmIChpc2luc3RhbmNlKSB7Ci0gICAgICAgICAgICAgICAgYXNkbF9zZXEqIGJvZHk7Ci0gICAgICAgICAgICAgICAgYXNkbF9zZXEqIGZpbmFsYm9keTsKLQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImJvZHkiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfZmluYWxib2R5KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJib2R5Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfZmluYWxib2R5KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJUcnlGaW5hbGx5IGZpZWxkIFwiYm9keVwiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWxlZDsKLSAgICAgICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA9IFB5TGlzdF9HRVRfU0laRSh0bXApOwotICAgICAgICAgICAgICAgICAgICAgICAgYm9keSA9IGFzZGxfc2VxX25ldyhsZW4sIGFyZW5hKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChib2R5ID09IE5VTEwpIGdvdG8gZmFpbGVkOwotICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0bXRfdHkgdmFsdWU7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3Rfc3RtdChQeUxpc3RfR0VUX0lURU0odG1wLCBpKSwgJnZhbHVlLCBhcmVuYSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxX1NFVChib2R5LCBpLCB2YWx1ZSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgICAgICBQeV9YREVDUkVGKHRtcCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBOVUxMOwotICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJib2R5XCIgbWlzc2luZyBmcm9tIFRyeUZpbmFsbHkiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJmaW5hbGJvZHkiKSkgewotICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwotICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJmaW5hbGJvZHkiKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJUcnlGaW5hbGx5IGZpZWxkIFwiZmluYWxib2R5XCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJUcnkgZmllbGQgXCJmaW5hbGJvZHlcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSBQeUxpc3RfR0VUX1NJWkUodG1wKTsKQEAgLTQ0NTYsMTAgKzQ1MjUsMTEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X1hERUNSRUYodG1wKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IE5VTEw7CiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImZpbmFsYm9keVwiIG1pc3NpbmcgZnJvbSBUcnlGaW5hbGx5Iik7CisgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJmaW5hbGJvZHlcIiBtaXNzaW5nIGZyb20gVHJ5Iik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgKm91dCA9IFRyeUZpbmFsbHkoYm9keSwgZmluYWxib2R5LCBsaW5lbm8sIGNvbF9vZmZzZXQsIGFyZW5hKTsKKyAgICAgICAgICAgICAgICAqb3V0ID0gVHJ5KGJvZHksIGhhbmRsZXJzLCBvcmVsc2UsIGZpbmFsYm9keSwgbGluZW5vLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sX29mZnNldCwgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmICgqb3V0ID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB9CkBAIC00NDcxLDkgKzQ1NDEsOSBAQAogICAgICAgICAgICAgICAgIGV4cHJfdHkgdGVzdDsKICAgICAgICAgICAgICAgICBleHByX3R5IG1zZzsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInRlc3QiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfdGVzdCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInRlc3QiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF90ZXN0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmdGVzdCwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTQ0ODMsOSArNDU1Myw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJ0ZXN0XCIgbWlzc2luZyBmcm9tIEFzc2VydCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgIm1zZyIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9tc2cpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJtc2ciKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9tc2cpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZtc2csIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC00NTA1LDExICs0NTc1LDExIEBACiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIG5hbWVzOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAibmFtZXMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfbmFtZXMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm5hbWVzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfbmFtZXMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIkltcG9ydCBmaWVsZCBcIm5hbWVzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC00NTQzLDkgKzQ2MTMsOSBAQAogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiBuYW1lczsKICAgICAgICAgICAgICAgICBpbnQgbGV2ZWw7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJtb2R1bGUiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfbW9kdWxlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAibW9kdWxlIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfbW9kdWxlKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmbW9kdWxlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNDU1NCwxMSArNDYyNCwxMSBAQAogICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGUgPSBOVUxMOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJuYW1lcyIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9uYW1lcykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAibmFtZXMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9uYW1lcyk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiSW1wb3J0RnJvbSBmaWVsZCBcIm5hbWVzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC00NTc5LDkgKzQ2NDksOSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwibmFtZXNcIiBtaXNzaW5nIGZyb20gSW1wb3J0RnJvbSIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImxldmVsIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2xldmVsKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAibGV2ZWwiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9sZXZlbCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9pbnQodG1wLCAmbGV2ZWwsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC00NjAyLDExICs0NjcyLDExIEBACiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIG5hbWVzOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAibmFtZXMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfbmFtZXMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm5hbWVzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfbmFtZXMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIkdsb2JhbCBmaWVsZCBcIm5hbWVzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC00NjM4LDExICs0NzA4LDExIEBACiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIG5hbWVzOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAibmFtZXMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfbmFtZXMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm5hbWVzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfbmFtZXMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIk5vbmxvY2FsIGZpZWxkIFwibmFtZXNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTQ2NzQsOSArNDc0NCw5IEBACiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7CiAgICAgICAgICAgICAgICAgZXhwcl90eSB2YWx1ZTsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInZhbHVlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF92YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhbHVlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNDc0MCw5ICs0ODEwLDkgQEAKICAgICAgICAgICAgICAgICAqb3V0ID0gTlVMTDsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJsaW5lbm8iKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2xpbmVubykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAibGluZW5vIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2xpbmVubyk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2ludCh0bXAsICZsaW5lbm8sIGFyZW5hKTsKICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNDc1Miw5ICs0ODIyLDkgQEAKICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJsaW5lbm9cIiBtaXNzaW5nIGZyb20gZXhwciIpOwogICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImNvbF9vZmZzZXQiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2NvbF9vZmZzZXQpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImNvbF9vZmZzZXQiKTsKKyAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfY29sX29mZnNldCk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2ludCh0bXAsICZjb2xfb2Zmc2V0LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTQ3NzIsOSArNDg0Miw5IEBACiAgICAgICAgICAgICAgICAgYm9vbG9wX3R5IG9wOwogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiB2YWx1ZXM7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJvcCIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9vcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm9wIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfb3ApOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfYm9vbG9wKHRtcCwgJm9wLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNDc4NCwxMSArNDg1NCwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwib3BcIiBtaXNzaW5nIGZyb20gQm9vbE9wIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAidmFsdWVzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlcykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFsdWVzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfdmFsdWVzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJCb29sT3AgZmllbGQgXCJ2YWx1ZXNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTQ4MjIsOSArNDg5Miw5IEBACiAgICAgICAgICAgICAgICAgb3BlcmF0b3JfdHkgb3A7CiAgICAgICAgICAgICAgICAgZXhwcl90eSByaWdodDsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImxlZnQiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfbGVmdCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImxlZnQiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9sZWZ0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmbGVmdCwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTQ4MzQsOSArNDkwNCw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJsZWZ0XCIgbWlzc2luZyBmcm9tIEJpbk9wIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAib3AiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfb3ApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJvcCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX29wKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X29wZXJhdG9yKHRtcCwgJm9wLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNDg0Niw5ICs0OTE2LDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcIm9wXCIgbWlzc2luZyBmcm9tIEJpbk9wIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAicmlnaHQiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfcmlnaHQpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJyaWdodCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3JpZ2h0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmcmlnaHQsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC00ODcwLDkgKzQ5NDAsOSBAQAogICAgICAgICAgICAgICAgIHVuYXJ5b3BfdHkgb3A7CiAgICAgICAgICAgICAgICAgZXhwcl90eSBvcGVyYW5kOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAib3AiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfb3ApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJvcCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX29wKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X3VuYXJ5b3AodG1wLCAmb3AsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC00ODgyLDkgKzQ5NTIsOSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwib3BcIiBtaXNzaW5nIGZyb20gVW5hcnlPcCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgIm9wZXJhbmQiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfb3BlcmFuZCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm9wZXJhbmQiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9vcGVyYW5kKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmb3BlcmFuZCwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTQ5MDYsOSArNDk3Niw5IEBACiAgICAgICAgICAgICAgICAgYXJndW1lbnRzX3R5IGFyZ3M7CiAgICAgICAgICAgICAgICAgZXhwcl90eSBib2R5OwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiYXJncyIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9hcmdzKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYXJncyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2FyZ3MpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfYXJndW1lbnRzKHRtcCwgJmFyZ3MsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC00OTE4LDkgKzQ5ODgsOSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiYXJnc1wiIG1pc3NpbmcgZnJvbSBMYW1iZGEiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJib2R5IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2JvZHkpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJib2R5Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfYm9keSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJmJvZHksIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC00OTQzLDkgKzUwMTMsOSBAQAogICAgICAgICAgICAgICAgIGV4cHJfdHkgYm9keTsKICAgICAgICAgICAgICAgICBleHByX3R5IG9yZWxzZTsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInRlc3QiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfdGVzdCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInRlc3QiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF90ZXN0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmdGVzdCwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTQ5NTUsOSArNTAyNSw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJ0ZXN0XCIgbWlzc2luZyBmcm9tIElmRXhwIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiYm9keSIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9ib2R5KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYm9keSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2JvZHkpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZib2R5LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNDk2Nyw5ICs1MDM3LDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImJvZHlcIiBtaXNzaW5nIGZyb20gSWZFeHAiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJvcmVsc2UiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfb3JlbHNlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAib3JlbHNlIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfb3JlbHNlKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmb3JlbHNlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNDk5MSwxMSArNTA2MSwxMSBAQAogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiBrZXlzOwogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiB2YWx1ZXM7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJrZXlzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2tleXMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImtleXMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9rZXlzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJEaWN0IGZpZWxkIFwia2V5c1wiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtNTAxNiwxMSArNTA4NiwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwia2V5c1wiIG1pc3NpbmcgZnJvbSBEaWN0Iik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAidmFsdWVzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlcykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFsdWVzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfdmFsdWVzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJEaWN0IGZpZWxkIFwidmFsdWVzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC01MDUyLDExICs1MTIyLDExIEBACiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGVsdHM7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJlbHRzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2VsdHMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImVsdHMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9lbHRzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJTZXQgZmllbGQgXCJlbHRzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC01MDg5LDkgKzUxNTksOSBAQAogICAgICAgICAgICAgICAgIGV4cHJfdHkgZWx0OwogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiBnZW5lcmF0b3JzOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiZWx0IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2VsdCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImVsdCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2VsdCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJmVsdCwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTUxMDEsMTEgKzUxNzEsMTEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImVsdFwiIG1pc3NpbmcgZnJvbSBMaXN0Q29tcCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImdlbmVyYXRvcnMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfZ2VuZXJhdG9ycykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiZ2VuZXJhdG9ycyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2dlbmVyYXRvcnMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIkxpc3RDb21wIGZpZWxkIFwiZ2VuZXJhdG9yc1wiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtNTEzOCw5ICs1MjA4LDkgQEAKICAgICAgICAgICAgICAgICBleHByX3R5IGVsdDsKICAgICAgICAgICAgICAgICBhc2RsX3NlcSogZ2VuZXJhdG9yczsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImVsdCIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9lbHQpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJlbHQiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9lbHQpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZlbHQsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC01MTUwLDExICs1MjIwLDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJlbHRcIiBtaXNzaW5nIGZyb20gU2V0Q29tcCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImdlbmVyYXRvcnMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfZ2VuZXJhdG9ycykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiZ2VuZXJhdG9ycyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2dlbmVyYXRvcnMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIlNldENvbXAgZmllbGQgXCJnZW5lcmF0b3JzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC01MTg4LDkgKzUyNTgsOSBAQAogICAgICAgICAgICAgICAgIGV4cHJfdHkgdmFsdWU7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGdlbmVyYXRvcnM7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJrZXkiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfa2V5KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAia2V5Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfa2V5KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAma2V5LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTIwMCw5ICs1MjcwLDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImtleVwiIG1pc3NpbmcgZnJvbSBEaWN0Q29tcCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInZhbHVlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF92YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhbHVlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTIxMiwxMSArNTI4MiwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwidmFsdWVcIiBtaXNzaW5nIGZyb20gRGljdENvbXAiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJnZW5lcmF0b3JzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2dlbmVyYXRvcnMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImdlbmVyYXRvcnMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9nZW5lcmF0b3JzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJEaWN0Q29tcCBmaWVsZCBcImdlbmVyYXRvcnNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTUyNTAsOSArNTMyMCw5IEBACiAgICAgICAgICAgICAgICAgZXhwcl90eSBlbHQ7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGdlbmVyYXRvcnM7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJlbHQiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfZWx0KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiZWx0Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfZWx0KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmZWx0LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTI2MiwxMSArNTMzMiwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiZWx0XCIgbWlzc2luZyBmcm9tIEdlbmVyYXRvckV4cCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImdlbmVyYXRvcnMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfZ2VuZXJhdG9ycykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiZ2VuZXJhdG9ycyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2dlbmVyYXRvcnMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIkdlbmVyYXRvckV4cCBmaWVsZCBcImdlbmVyYXRvcnNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTUyOTgsOSArNTM2OCw5IEBACiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7CiAgICAgICAgICAgICAgICAgZXhwcl90eSB2YWx1ZTsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInZhbHVlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF92YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhbHVlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTMxMyw2ICs1MzgzLDI4IEBACiAgICAgICAgICAgICAgICAgaWYgKCpvdXQgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KKyAgICAgICAgaXNpbnN0YW5jZSA9IFB5T2JqZWN0X0lzSW5zdGFuY2Uob2JqLCAoUHlPYmplY3QqKVlpZWxkRnJvbV90eXBlKTsKKyAgICAgICAgaWYgKGlzaW5zdGFuY2UgPT0gLTEpIHsKKyAgICAgICAgICAgICAgICByZXR1cm4gMTsKKyAgICAgICAgfQorICAgICAgICBpZiAoaXNpbnN0YW5jZSkgeworICAgICAgICAgICAgICAgIGV4cHJfdHkgdmFsdWU7CisKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF92YWx1ZSk7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOworICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhbHVlLCBhcmVuYSk7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOworICAgICAgICAgICAgICAgICAgICAgICAgUHlfWERFQ1JFRih0bXApOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gTlVMTDsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBOVUxMOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAqb3V0ID0gWWllbGRGcm9tKHZhbHVlLCBsaW5lbm8sIGNvbF9vZmZzZXQsIGFyZW5hKTsKKyAgICAgICAgICAgICAgICBpZiAoKm91dCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQogICAgICAgICBpc2luc3RhbmNlID0gUHlPYmplY3RfSXNJbnN0YW5jZShvYmosIChQeU9iamVjdCopQ29tcGFyZV90eXBlKTsKICAgICAgICAgaWYgKGlzaW5zdGFuY2UgPT0gLTEpIHsKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKQEAgLTUzMjIsOSArNTQxNCw5IEBACiAgICAgICAgICAgICAgICAgYXNkbF9pbnRfc2VxKiBvcHM7CiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGNvbXBhcmF0b3JzOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAibGVmdCIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9sZWZ0KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAibGVmdCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2xlZnQpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZsZWZ0LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTMzNCwxMSArNTQyNiwxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwibGVmdFwiIG1pc3NpbmcgZnJvbSBDb21wYXJlIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAib3BzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX29wcykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAib3BzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfb3BzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJDb21wYXJlIGZpZWxkIFwib3BzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC01MzU5LDExICs1NDUxLDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJvcHNcIiBtaXNzaW5nIGZyb20gQ29tcGFyZSIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImNvbXBhcmF0b3JzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2NvbXBhcmF0b3JzKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJjb21wYXJhdG9ycyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2NvbXBhcmF0b3JzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJDb21wYXJlIGZpZWxkIFwiY29tcGFyYXRvcnNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTU0MDAsOSArNTQ5Miw5IEBACiAgICAgICAgICAgICAgICAgZXhwcl90eSBzdGFyYXJnczsKICAgICAgICAgICAgICAgICBleHByX3R5IGt3YXJnczsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImZ1bmMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfZnVuYykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImZ1bmMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9mdW5jKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmZnVuYywgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTU0MTIsMTEgKzU1MDQsMTEgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImZ1bmNcIiBtaXNzaW5nIGZyb20gQ2FsbCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImFyZ3MiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfYXJncykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYXJncyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2FyZ3MpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIkNhbGwgZmllbGQgXCJhcmdzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC01NDM3LDExICs1NTI5LDExIEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJhcmdzXCIgbWlzc2luZyBmcm9tIENhbGwiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJrZXl3b3JkcyIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9rZXl3b3JkcykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAia2V5d29yZHMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9rZXl3b3Jkcyk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiQ2FsbCBmaWVsZCBcImtleXdvcmRzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC01NDYyLDkgKzU1NTQsOSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwia2V5d29yZHNcIiBtaXNzaW5nIGZyb20gQ2FsbCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInN0YXJhcmdzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3N0YXJhcmdzKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAic3RhcmFyZ3MiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9zdGFyYXJncyk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnN0YXJhcmdzLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTQ3Myw5ICs1NTY1LDkgQEAKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgc3RhcmFyZ3MgPSBOVUxMOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJrd2FyZ3MiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfa3dhcmdzKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAia3dhcmdzIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfa3dhcmdzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAma3dhcmdzLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTQ5Niw5ICs1NTg4LDkgQEAKICAgICAgICAgaWYgKGlzaW5zdGFuY2UpIHsKICAgICAgICAgICAgICAgICBvYmplY3QgbjsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgIm4iKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfbikpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm4iKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9uKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X29iamVjdCh0bXAsICZuLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTUxOSw5ICs1NjExLDkgQEAKICAgICAgICAgaWYgKGlzaW5zdGFuY2UpIHsKICAgICAgICAgICAgICAgICBzdHJpbmcgczsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfcykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9zKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X3N0cmluZyh0bXAsICZzLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTU0MCwxMyArNTYzMiwxMyBAQAogICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9CiAgICAgICAgIGlmIChpc2luc3RhbmNlKSB7Ci0gICAgICAgICAgICAgICAgc3RyaW5nIHM7CisgICAgICAgICAgICAgICAgYnl0ZXMgczsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfcykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9zKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7Ci0gICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X3N0cmluZyh0bXAsICZzLCBhcmVuYSk7CisgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2J5dGVzKHRtcCwgJnMsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9YREVDUkVGKHRtcCk7CiAgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBOVUxMOwpAQCAtNTU3Nyw5ICs1NjY5LDkgQEAKICAgICAgICAgICAgICAgICBpZGVudGlmaWVyIGF0dHI7CiAgICAgICAgICAgICAgICAgZXhwcl9jb250ZXh0X3R5IGN0eDsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInZhbHVlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF92YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhbHVlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTU4OSw5ICs1NjgxLDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcInZhbHVlXCIgbWlzc2luZyBmcm9tIEF0dHJpYnV0ZSIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImF0dHIiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfYXR0cikpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImF0dHIiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9hdHRyKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmYXR0ciwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTU2MDEsOSArNTY5Myw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJhdHRyXCIgbWlzc2luZyBmcm9tIEF0dHJpYnV0ZSIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImN0eCIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9jdHgpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJjdHgiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9jdHgpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcl9jb250ZXh0KHRtcCwgJmN0eCwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTU2MjYsOSArNTcxOCw5IEBACiAgICAgICAgICAgICAgICAgc2xpY2VfdHkgc2xpY2U7CiAgICAgICAgICAgICAgICAgZXhwcl9jb250ZXh0X3R5IGN0eDsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInZhbHVlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF92YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhbHVlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTYzOCw5ICs1NzMwLDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcInZhbHVlXCIgbWlzc2luZyBmcm9tIFN1YnNjcmlwdCIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInNsaWNlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3NsaWNlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAic2xpY2UiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9zbGljZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9zbGljZSh0bXAsICZzbGljZSwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTU2NTAsOSArNTc0Miw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJzbGljZVwiIG1pc3NpbmcgZnJvbSBTdWJzY3JpcHQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJjdHgiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfY3R4KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiY3R4Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfY3R4KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHJfY29udGV4dCh0bXAsICZjdHgsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC01Njc0LDkgKzU3NjYsOSBAQAogICAgICAgICAgICAgICAgIGV4cHJfdHkgdmFsdWU7CiAgICAgICAgICAgICAgICAgZXhwcl9jb250ZXh0X3R5IGN0eDsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgInZhbHVlIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhbHVlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFsdWUiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF92YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhbHVlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTY4Niw5ICs1Nzc4LDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcInZhbHVlXCIgbWlzc2luZyBmcm9tIFN0YXJyZWQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJjdHgiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfY3R4KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiY3R4Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfY3R4KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHJfY29udGV4dCh0bXAsICZjdHgsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC01NzEwLDkgKzU4MDIsOSBAQAogICAgICAgICAgICAgICAgIGlkZW50aWZpZXIgaWQ7CiAgICAgICAgICAgICAgICAgZXhwcl9jb250ZXh0X3R5IGN0eDsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImlkIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2lkKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiaWQiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9pZCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9pZGVudGlmaWVyKHRtcCwgJmlkLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTcyMiw5ICs1ODE0LDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImlkXCIgbWlzc2luZyBmcm9tIE5hbWUiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJjdHgiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfY3R4KSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiY3R4Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfY3R4KTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHJfY29udGV4dCh0bXAsICZjdHgsIGFyZW5hKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC01NzQ2LDExICs1ODM4LDExIEBACiAgICAgICAgICAgICAgICAgYXNkbF9zZXEqIGVsdHM7CiAgICAgICAgICAgICAgICAgZXhwcl9jb250ZXh0X3R5IGN0eDsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImVsdHMiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfZWx0cykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiZWx0cyIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2VsdHMpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIkxpc3QgZmllbGQgXCJlbHRzXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC01NzcxLDkgKzU4NjMsOSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiZWx0c1wiIG1pc3NpbmcgZnJvbSBMaXN0Iik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiY3R4IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2N0eCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImN0eCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2N0eCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByX2NvbnRleHQodG1wLCAmY3R4LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTc5NSwxMSArNTg4NywxMSBAQAogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiBlbHRzOwogICAgICAgICAgICAgICAgIGV4cHJfY29udGV4dF90eSBjdHg7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJlbHRzIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2VsdHMpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImVsdHMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9lbHRzKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJUdXBsZSBmaWVsZCBcImVsdHNcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTU4MjAsOSArNTkxMiw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJlbHRzXCIgbWlzc2luZyBmcm9tIFR1cGxlIik7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiY3R4IikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2N0eCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImN0eCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2N0eCk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByX2NvbnRleHQodG1wLCAmY3R4LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTkyMSw5ICs2MDEzLDkgQEAKICAgICAgICAgICAgICAgICBleHByX3R5IHVwcGVyOwogICAgICAgICAgICAgICAgIGV4cHJfdHkgc3RlcDsKIAotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImxvd2VyIikpIHsKKyAgICAgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2xvd2VyKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAibG93ZXIiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9sb3dlcik7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJmxvd2VyLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTkzMiw5ICs2MDI0LDkgQEAKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgbG93ZXIgPSBOVUxMOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ1cHBlciIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF91cHBlcikpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInVwcGVyIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfdXBwZXIpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZ1cHBlciwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTU5NDMsOSArNjAzNSw5IEBACiAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgIHVwcGVyID0gTlVMTDsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAic3RlcCIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9zdGVwKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAic3RlcCIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3N0ZXApOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZzdGVwLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNTk2NSwxMSArNjA1NywxMSBAQAogICAgICAgICBpZiAoaXNpbnN0YW5jZSkgewogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiBkaW1zOwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAiZGltcyIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9kaW1zKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpOwotICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJkaW1zIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfZGltcyk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiRXh0U2xpY2UgZmllbGQgXCJkaW1zXCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC02MDAxLDkgKzYwOTMsOSBAQAogICAgICAgICBpZiAoaXNpbnN0YW5jZSkgewogICAgICAgICAgICAgICAgIGV4cHJfdHkgdmFsdWU7CiAKLSAgICAgICAgICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ2YWx1ZSIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF92YWx1ZSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInZhbHVlIik7CisgICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfdmFsdWUpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZ2YWx1ZSwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTYyOTYsOSArNjM4OCw5IEBACiAgICAgICAgIGV4cHJfdHkgaXRlcjsKICAgICAgICAgYXNkbF9zZXEqIGlmczsKIAotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ0YXJnZXQiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3RhcmdldCkpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidGFyZ2V0Iik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3RhcmdldCk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmdGFyZ2V0LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTYzMDgsOSArNjQwMCw5IEBACiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwidGFyZ2V0XCIgbWlzc2luZyBmcm9tIGNvbXByZWhlbnNpb24iKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJpdGVyIikpIHsKKyAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9pdGVyKSkgewogICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJpdGVyIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2l0ZXIpOwogICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJml0ZXIsIGFyZW5hKTsKICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNjMyMCwxMSArNjQxMiwxMSBAQAogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcIml0ZXJcIiBtaXNzaW5nIGZyb20gY29tcHJlaGVuc2lvbiIpOwogICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImlmcyIpKSB7CisgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfaWZzKSkgewogICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBpOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiaWZzIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2lmcyk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICBpZiAoIVB5TGlzdF9DaGVjayh0bXApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLCAiY29tcHJlaGVuc2lvbiBmaWVsZCBcImlmc1wiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtNjM2NSw5ICs2NDU3LDkgQEAKICAgICAgICAgICAgICAgICAqb3V0ID0gTlVMTDsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJsaW5lbm8iKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2xpbmVubykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAibGluZW5vIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2xpbmVubyk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2ludCh0bXAsICZsaW5lbm8sIGFyZW5hKTsKICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNjM3Nyw5ICs2NDY5LDkgQEAKICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAicmVxdWlyZWQgZmllbGQgXCJsaW5lbm9cIiBtaXNzaW5nIGZyb20gZXhjZXB0aGFuZGxlciIpOwogICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImNvbF9vZmZzZXQiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2NvbF9vZmZzZXQpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImNvbF9vZmZzZXQiKTsKKyAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfY29sX29mZnNldCk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2ludCh0bXAsICZjb2xfb2Zmc2V0LCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTYzOTgsOSArNjQ5MCw5IEBACiAgICAgICAgICAgICAgICAgaWRlbnRpZmllciBuYW1lOwogICAgICAgICAgICAgICAgIGFzZGxfc2VxKiBib2R5OwogCi0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcob2JqLCAidHlwZSIpKSB7CisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF90eXBlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidHlwZSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3R5cGUpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZ0eXBlLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNjQwOSw5ICs2NTAxLDkgQEAKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgdHlwZSA9IE5VTEw7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgIm5hbWUiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfbmFtZSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm5hbWUiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9uYW1lKTsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmbmFtZSwgYXJlbmEpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY0MjAsMTEgKzY1MTIsMTEgQEAKICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSA9IE5VTEw7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImJvZHkiKSkgeworICAgICAgICAgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfYm9keSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGludCByZXM7CiAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYm9keSIpOworICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2JvZHkpOwogICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgIkV4Y2VwdEhhbmRsZXIgZmllbGQgXCJib2R5XCIgbXVzdCBiZSBhIGxpc3QsIG5vdCBhICUuMjAwcyIsIHRtcC0+b2JfdHlwZS0+dHBfbmFtZSk7CkBAIC02NDcwLDExICs2NTYyLDExIEBACiAgICAgICAgIGFzZGxfc2VxKiBkZWZhdWx0czsKICAgICAgICAgYXNkbF9zZXEqIGt3X2RlZmF1bHRzOwogCi0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImFyZ3MiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2FyZ3MpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJhcmdzIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2FyZ3MpOwogICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgImFyZ3VtZW50cyBmaWVsZCBcImFyZ3NcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTY0OTUsOSArNjU4Nyw5IEBACiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiYXJnc1wiIG1pc3NpbmcgZnJvbSBhcmd1bWVudHMiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ2YXJhcmciKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX3ZhcmFyZykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAidmFyYXJnIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3ZhcmFyZyk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmdmFyYXJnLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY1MDYsOSArNjU5OCw5IEBACiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgdmFyYXJnID0gTlVMTDsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ2YXJhcmdhbm5vdGF0aW9uIikpIHsKKyAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF92YXJhcmdhbm5vdGF0aW9uKSkgewogICAgICAgICAgICAgICAgIGludCByZXM7Ci0gICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJ2YXJhcmdhbm5vdGF0aW9uIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3ZhcmFyZ2Fubm90YXRpb24pOwogICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJnZhcmFyZ2Fubm90YXRpb24sIGFyZW5hKTsKICAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOwpAQCAtNjUxNywxMSArNjYwOSwxMSBAQAogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIHZhcmFyZ2Fubm90YXRpb24gPSBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImt3b25seWFyZ3MiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2t3b25seWFyZ3MpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGk7Ci0gICAgICAgICAgICAgICAgdG1wID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvYmosICJrd29ubHlhcmdzIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2t3b25seWFyZ3MpOwogICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CiAgICAgICAgICAgICAgICAgaWYgKCFQeUxpc3RfQ2hlY2sodG1wKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwgImFyZ3VtZW50cyBmaWVsZCBcImt3b25seWFyZ3NcIiBtdXN0IGJlIGEgbGlzdCwgbm90IGEgJS4yMDBzIiwgdG1wLT5vYl90eXBlLT50cF9uYW1lKTsKQEAgLTY1NDIsOSArNjYzNCw5IEBACiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwia3dvbmx5YXJnc1wiIG1pc3NpbmcgZnJvbSBhcmd1bWVudHMiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJrd2FyZyIpKSB7CisgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfa3dhcmcpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImt3YXJnIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2t3YXJnKTsKICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfaWRlbnRpZmllcih0bXAsICZrd2FyZywgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC02NTUzLDkgKzY2NDUsOSBAQAogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIGt3YXJnID0gTlVMTDsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJrd2FyZ2Fubm90YXRpb24iKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2t3YXJnYW5ub3RhdGlvbikpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAia3dhcmdhbm5vdGF0aW9uIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2t3YXJnYW5ub3RhdGlvbik7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAma3dhcmdhbm5vdGF0aW9uLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY1NjQsMTEgKzY2NTYsMTEgQEAKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBrd2FyZ2Fubm90YXRpb24gPSBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImRlZmF1bHRzIikpIHsKKyAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9kZWZhdWx0cykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImRlZmF1bHRzIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2RlZmF1bHRzKTsKICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJhcmd1bWVudHMgZmllbGQgXCJkZWZhdWx0c1wiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtNjU4OSwxMSArNjY4MSwxMSBAQAogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcImRlZmF1bHRzXCIgbWlzc2luZyBmcm9tIGFyZ3VtZW50cyIpOwogICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImt3X2RlZmF1bHRzIikpIHsKKyAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9rd19kZWZhdWx0cykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwogICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOwogICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgaTsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImt3X2RlZmF1bHRzIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2t3X2RlZmF1bHRzKTsKICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIGlmICghUHlMaXN0X0NoZWNrKHRtcCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICJhcmd1bWVudHMgZmllbGQgXCJrd19kZWZhdWx0c1wiIG11c3QgYmUgYSBsaXN0LCBub3QgYSAlLjIwMHMiLCB0bXAtPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtNjYyOSw5ICs2NzIxLDkgQEAKICAgICAgICAgaWRlbnRpZmllciBhcmc7CiAgICAgICAgIGV4cHJfdHkgYW5ub3RhdGlvbjsKIAotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJhcmciKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2FyZykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYXJnIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2FyZyk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmYXJnLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY2NDEsOSArNjczMyw5IEBACiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiYXJnXCIgbWlzc2luZyBmcm9tIGFyZyIpOwogICAgICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgImFubm90YXRpb24iKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2Fubm90YXRpb24pKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgImFubm90YXRpb24iKTsKKyAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfYW5ub3RhdGlvbik7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2V4cHIodG1wLCAmYW5ub3RhdGlvbiwgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC02NjY2LDkgKzY3NTgsOSBAQAogICAgICAgICBpZGVudGlmaWVyIGFyZzsKICAgICAgICAgZXhwcl90eSB2YWx1ZTsKIAotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJhcmciKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2FyZykpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYXJnIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2FyZyk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmYXJnLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY2NzgsOSArNjc3MCw5IEBACiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiYXJnXCIgbWlzc2luZyBmcm9tIGtleXdvcmQiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJ2YWx1ZSIpKSB7CisgICAgICAgIGlmIChfUHlPYmplY3RfSGFzQXR0cklkKG9iaiwgJlB5SWRfdmFsdWUpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgInZhbHVlIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX3ZhbHVlKTsKICAgICAgICAgICAgICAgICBpZiAodG1wID09IE5VTEwpIGdvdG8gZmFpbGVkOwogICAgICAgICAgICAgICAgIHJlcyA9IG9iajJhc3RfZXhwcih0bXAsICZ2YWx1ZSwgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC02NzA0LDkgKzY3OTYsOSBAQAogICAgICAgICBpZGVudGlmaWVyIG5hbWU7CiAgICAgICAgIGlkZW50aWZpZXIgYXNuYW1lOwogCi0gICAgICAgIGlmIChQeU9iamVjdF9IYXNBdHRyU3RyaW5nKG9iaiwgIm5hbWUiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX25hbWUpKSB7CiAgICAgICAgICAgICAgICAgaW50IHJlczsKLSAgICAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG9iaiwgIm5hbWUiKTsKKyAgICAgICAgICAgICAgICB0bXAgPSBfUHlPYmplY3RfR2V0QXR0cklkKG9iaiwgJlB5SWRfbmFtZSk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmbmFtZSwgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CkBAIC02NzE2LDkgKzY4MDgsOSBAQAogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJyZXF1aXJlZCBmaWVsZCBcIm5hbWVcIiBtaXNzaW5nIGZyb20gYWxpYXMiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQotICAgICAgICBpZiAoUHlPYmplY3RfSGFzQXR0clN0cmluZyhvYmosICJhc25hbWUiKSkgeworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2FzbmFtZSkpIHsKICAgICAgICAgICAgICAgICBpbnQgcmVzOwotICAgICAgICAgICAgICAgIHRtcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcob2JqLCAiYXNuYW1lIik7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX2FzbmFtZSk7CiAgICAgICAgICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSBnb3RvIGZhaWxlZDsKICAgICAgICAgICAgICAgICByZXMgPSBvYmoyYXN0X2lkZW50aWZpZXIodG1wLCAmYXNuYW1lLCBhcmVuYSk7CiAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPSAwKSBnb3RvIGZhaWxlZDsKQEAgLTY3MzQsNiArNjgyNiw0MyBAQAogICAgICAgICByZXR1cm4gMTsKIH0KIAoraW50CitvYmoyYXN0X3dpdGhpdGVtKFB5T2JqZWN0KiBvYmosIHdpdGhpdGVtX3R5KiBvdXQsIFB5QXJlbmEqIGFyZW5hKQoreworICAgICAgICBQeU9iamVjdCogdG1wID0gTlVMTDsKKyAgICAgICAgZXhwcl90eSBjb250ZXh0X2V4cHI7CisgICAgICAgIGV4cHJfdHkgb3B0aW9uYWxfdmFyczsKKworICAgICAgICBpZiAoX1B5T2JqZWN0X0hhc0F0dHJJZChvYmosICZQeUlkX2NvbnRleHRfZXhwcikpIHsKKyAgICAgICAgICAgICAgICBpbnQgcmVzOworICAgICAgICAgICAgICAgIHRtcCA9IF9QeU9iamVjdF9HZXRBdHRySWQob2JqLCAmUHlJZF9jb250ZXh0X2V4cHIpOworICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CisgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJmNvbnRleHRfZXhwciwgYXJlbmEpOworICAgICAgICAgICAgICAgIGlmIChyZXMgIT0gMCkgZ290byBmYWlsZWQ7CisgICAgICAgICAgICAgICAgUHlfWERFQ1JFRih0bXApOworICAgICAgICAgICAgICAgIHRtcCA9IE5VTEw7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgInJlcXVpcmVkIGZpZWxkIFwiY29udGV4dF9leHByXCIgbWlzc2luZyBmcm9tIHdpdGhpdGVtIik7CisgICAgICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIH0KKyAgICAgICAgaWYgKF9QeU9iamVjdF9IYXNBdHRySWQob2JqLCAmUHlJZF9vcHRpb25hbF92YXJzKSkgeworICAgICAgICAgICAgICAgIGludCByZXM7CisgICAgICAgICAgICAgICAgdG1wID0gX1B5T2JqZWN0X0dldEF0dHJJZChvYmosICZQeUlkX29wdGlvbmFsX3ZhcnMpOworICAgICAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkgZ290byBmYWlsZWQ7CisgICAgICAgICAgICAgICAgcmVzID0gb2JqMmFzdF9leHByKHRtcCwgJm9wdGlvbmFsX3ZhcnMsIGFyZW5hKTsKKyAgICAgICAgICAgICAgICBpZiAocmVzICE9IDApIGdvdG8gZmFpbGVkOworICAgICAgICAgICAgICAgIFB5X1hERUNSRUYodG1wKTsKKyAgICAgICAgICAgICAgICB0bXAgPSBOVUxMOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIG9wdGlvbmFsX3ZhcnMgPSBOVUxMOworICAgICAgICB9CisgICAgICAgICpvdXQgPSB3aXRoaXRlbShjb250ZXh0X2V4cHIsIG9wdGlvbmFsX3ZhcnMsIGFyZW5hKTsKKyAgICAgICAgcmV0dXJuIDA7CitmYWlsZWQ6CisgICAgICAgIFB5X1hERUNSRUYodG1wKTsKKyAgICAgICAgcmV0dXJuIDE7Cit9CisKIAogc3RhdGljIHN0cnVjdCBQeU1vZHVsZURlZiBfYXN0bW9kdWxlID0gewogICBQeU1vZHVsZURlZl9IRUFEX0lOSVQsICJfYXN0IgpAQCAtNjc1MCw4ICs2ODc5LDYgQEAKICAgICAgICAgICAgIE5VTEw7CiAgICAgICAgIGlmIChQeU1vZHVsZV9BZGRJbnRDb25zdGFudChtLCAiUHlDRl9PTkxZX0FTVCIsIFB5Q0ZfT05MWV9BU1QpIDwgMCkKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgaWYgKFB5TW9kdWxlX0FkZFN0cmluZ0NvbnN0YW50KG0sICJfX3ZlcnNpb25fXyIsICI4MjE2MyIpIDwgMCkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJtb2QiLCAoUHlPYmplY3QqKW1vZF90eXBlKSA8IDApIHJldHVybgogICAgICAgICAgICAgTlVMTDsKICAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJNb2R1bGUiLCAoUHlPYmplY3QqKU1vZHVsZV90eXBlKSA8IDApCkBAIC02Nzg1LDEwICs2OTEyLDggQEAKICAgICAgICAgICAgIE5VTEw7CiAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiUmFpc2UiLCAoUHlPYmplY3QqKVJhaXNlX3R5cGUpIDwgMCkgcmV0dXJuCiAgICAgICAgICAgICBOVUxMOwotICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlRyeUV4Y2VwdCIsIChQeU9iamVjdCopVHJ5RXhjZXB0X3R5cGUpIDwKLSAgICAgICAgICAgIDApIHJldHVybiBOVUxMOwotICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIlRyeUZpbmFsbHkiLCAoUHlPYmplY3QqKVRyeUZpbmFsbHlfdHlwZSkgPAotICAgICAgICAgICAgMCkgcmV0dXJuIE5VTEw7CisgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiVHJ5IiwgKFB5T2JqZWN0KilUcnlfdHlwZSkgPCAwKSByZXR1cm4KKyAgICAgICAgICAgIE5VTEw7CiAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiQXNzZXJ0IiwgKFB5T2JqZWN0KilBc3NlcnRfdHlwZSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiSW1wb3J0IiwgKFB5T2JqZWN0KilJbXBvcnRfdHlwZSkgPCAwKQpAQCAtNjgzMyw2ICs2OTU4LDggQEAKICAgICAgICAgICAgIChQeU9iamVjdCopR2VuZXJhdG9yRXhwX3R5cGUpIDwgMCkgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiWWllbGQiLCAoUHlPYmplY3QqKVlpZWxkX3R5cGUpIDwgMCkgcmV0dXJuCiAgICAgICAgICAgICBOVUxMOworICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIllpZWxkRnJvbSIsIChQeU9iamVjdCopWWllbGRGcm9tX3R5cGUpIDwKKyAgICAgICAgICAgIDApIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIkNvbXBhcmUiLCAoUHlPYmplY3QqKUNvbXBhcmVfdHlwZSkgPCAwKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiQ2FsbCIsIChQeU9iamVjdCopQ2FsbF90eXBlKSA8IDApIHJldHVybgpAQCAtNjk1MSw2ICs3MDc4LDggQEAKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgImFsaWFzIiwgKFB5T2JqZWN0KilhbGlhc190eXBlKSA8IDApIHJldHVybgogICAgICAgICAgICAgTlVMTDsKKyAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKGQsICJ3aXRoaXRlbSIsIChQeU9iamVjdCopd2l0aGl0ZW1fdHlwZSkgPCAwKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIHJldHVybiBtOwogfQogCmRpZmYgLS1naXQgYS9QeXRob24vX3dhcm5pbmdzLmMgYi9QeXRob24vX3dhcm5pbmdzLmMKaW5kZXggYzEyZGI0NC4uZjMzZTQ3NyAxMDA2NDQKLS0tIGEvUHl0aG9uL193YXJuaW5ncy5jCisrKyBiL1B5dGhvbi9fd2FybmluZ3MuYwpAQCAtMTgsMTEgKzE4LDEyIEBACiBjaGVja19tYXRjaGVkKFB5T2JqZWN0ICpvYmosIFB5T2JqZWN0ICphcmcpCiB7CiAgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihtYXRjaCk7CiAgICAgaW50IHJjOwogCiAgICAgaWYgKG9iaiA9PSBQeV9Ob25lKQogICAgICAgICByZXR1cm4gMTsKLSAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKG9iaiwgIm1hdGNoIiwgIk8iLCBhcmcpOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQob2JqLCAmUHlJZF9tYXRjaCwgIk8iLCBhcmcpOwogICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwogCkBAIC0yMDIsMTMgKzIwMywxMyBAQAogCiAgICAgbW9kX3N0ciA9IF9QeVVuaWNvZGVfQXNTdHJpbmcoZmlsZW5hbWUpOwogICAgIGlmIChtb2Rfc3RyID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBsZW4gPSBQeVVuaWNvZGVfR2V0U2l6ZShmaWxlbmFtZSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIGxlbiA9IFB5VW5pY29kZV9HZXRMZW5ndGgoZmlsZW5hbWUpOwogICAgIGlmIChsZW4gPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAobGVuID49IDMgJiYKICAgICAgICAgc3RybmNtcChtb2Rfc3RyICsgKGxlbiAtIDMpLCAiLnB5IiwgMykgPT0gMCkgewotICAgICAgICBtb2R1bGUgPSBQeVVuaWNvZGVfRnJvbVN0cmluZ0FuZFNpemUobW9kX3N0ciwgbGVuLTMpOworICAgICAgICBtb2R1bGUgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKGZpbGVuYW1lLCAwLCBsZW4tMyk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBtb2R1bGUgPSBmaWxlbmFtZTsKQEAgLTI0NiwxMCArMjQ3LDExIEBACiAgICAgUHlPYmplY3QgKmZfc3RkZXJyOwogICAgIFB5T2JqZWN0ICpuYW1lOwogICAgIGNoYXIgbGluZW5vX3N0clsxMjhdOworICAgIF9QeV9JREVOVElGSUVSKF9fbmFtZV9fKTsKIAogICAgIFB5T1Nfc25wcmludGYobGluZW5vX3N0ciwgc2l6ZW9mKGxpbmVub19zdHIpLCAiOiVkOiAiLCBsaW5lbm8pOwogCi0gICAgbmFtZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoY2F0ZWdvcnksICJfX25hbWVfXyIpOworICAgIG5hbWUgPSBfUHlPYmplY3RfR2V0QXR0cklkKGNhdGVnb3J5LCAmUHlJZF9fX25hbWVfXyk7CiAgICAgaWYgKG5hbWUgPT0gTlVMTCkgIC8qIFhYWCBDYW4gYW4gb2JqZWN0IGxhY2sgYSAnX19uYW1lX18nIGF0dHJpYnV0ZT8gKi8KICAgICAgICAgcmV0dXJuOwogCkBAIC00MDksMTAgKzQxMSwxMCBAQAogICAgICAgICBlbHNlIHsKICAgICAgICAgICAgIFB5T2JqZWN0ICpyZXM7CiAKLSAgICAgICAgICAgIGlmICghUHlNZXRob2RfQ2hlY2soc2hvd19meG4pICYmICFQeUZ1bmN0aW9uX0NoZWNrKHNob3dfZnhuKSkgeworICAgICAgICAgICAgaWYgKCFQeUNhbGxhYmxlX0NoZWNrKHNob3dfZnhuKSkgewogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ3YXJuaW5ncy5zaG93d2FybmluZygpIG11c3QgYmUgc2V0IHRvIGEgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZnVuY3Rpb24gb3IgbWV0aG9kIik7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjYWxsYWJsZSIpOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihzaG93X2Z4bik7CiAgICAgICAgICAgICAgICAgZ290byBjbGVhbnVwOwogICAgICAgICAgICAgfQpAQCAtNDk3LDE4ICs0OTksMjggQEAKICAgICAvKiBTZXR1cCBmaWxlbmFtZS4gKi8KICAgICAqZmlsZW5hbWUgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhnbG9iYWxzLCAiX19maWxlX18iKTsKICAgICBpZiAoKmZpbGVuYW1lICE9IE5VTEwgJiYgUHlVbmljb2RlX0NoZWNrKCpmaWxlbmFtZSkpIHsKLSAgICAgICAgUHlfc3NpemVfdCBsZW4gPSBQeVVuaWNvZGVfR2V0U2l6ZSgqZmlsZW5hbWUpOwotICAgICAgICBQeV9VTklDT0RFICp1bmljb2RlID0gUHlVbmljb2RlX0FTX1VOSUNPREUoKmZpbGVuYW1lKTsKKyAgICAgICAgUHlfc3NpemVfdCBsZW47CisgICAgICAgIGludCBraW5kOworICAgICAgICB2b2lkICpkYXRhOwogCisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoKmZpbGVuYW1lKSkKKyAgICAgICAgICAgIGdvdG8gaGFuZGxlX2Vycm9yOworCisgICAgICAgIGxlbiA9IFB5VW5pY29kZV9HZXRMZW5ndGgoKmZpbGVuYW1lKTsKKyAgICAgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKCpmaWxlbmFtZSk7CisgICAgICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQSgqZmlsZW5hbWUpOworCisjZGVmaW5lIGFzY2lpX2xvd2VyKGMpICgoYyA8PSAxMjcpID8gUHlfVE9MT1dFUihjKSA6IDApCiAgICAgICAgIC8qIGlmIGZpbGVuYW1lLmxvd2VyKCkuZW5kc3dpdGgoKCIucHljIiwgIi5weW8iKSk6ICovCiAgICAgICAgIGlmIChsZW4gPj0gNCAmJgotICAgICAgICAgICAgdW5pY29kZVtsZW4tNF0gPT0gJy4nICYmCi0gICAgICAgICAgICBQeV9VTklDT0RFX1RPTE9XRVIodW5pY29kZVtsZW4tM10pID09ICdwJyAmJgotICAgICAgICAgICAgUHlfVU5JQ09ERV9UT0xPV0VSKHVuaWNvZGVbbGVuLTJdKSA9PSAneScgJiYKLSAgICAgICAgICAgIChQeV9VTklDT0RFX1RPTE9XRVIodW5pY29kZVtsZW4tMV0pID09ICdjJyB8fAotICAgICAgICAgICAgICAgIFB5X1VOSUNPREVfVE9MT1dFUih1bmljb2RlW2xlbi0xXSkgPT0gJ28nKSkKKyAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGxlbi00KSA9PSAnLicgJiYKKyAgICAgICAgICAgIGFzY2lpX2xvd2VyKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGxlbi0zKSkgPT0gJ3AnICYmCisgICAgICAgICAgICBhc2NpaV9sb3dlcihQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCBsZW4tMikpID09ICd5JyAmJgorICAgICAgICAgICAgKGFzY2lpX2xvd2VyKFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGxlbi0xKSkgPT0gJ2MnIHx8CisgICAgICAgICAgICAgICAgYXNjaWlfbG93ZXIoUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgbGVuLTEpKSA9PSAnbycpKQogICAgICAgICB7Ci0gICAgICAgICAgICAqZmlsZW5hbWUgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUodW5pY29kZSwgbGVuLTEpOworICAgICAgICAgICAgKmZpbGVuYW1lID0gUHlVbmljb2RlX1N1YnN0cmluZygqZmlsZW5hbWUsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKCpmaWxlbmFtZSktMSk7CiAgICAgICAgICAgICBpZiAoKmZpbGVuYW1lID09IE5VTEwpCiAgICAgICAgICAgICAgICAgZ290byBoYW5kbGVfZXJyb3I7CiAgICAgICAgIH0KQEAgLTY0Myw4ICs2NTUsOSBAQAogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIGlmIChtb2R1bGVfZ2xvYmFscykgewotICAgICAgICBzdGF0aWMgUHlPYmplY3QgKmdldF9zb3VyY2VfbmFtZSA9IE5VTEw7Ci0gICAgICAgIHN0YXRpYyBQeU9iamVjdCAqc3BsaXRsaW5lc19uYW1lID0gTlVMTDsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZ2V0X3NvdXJjZSk7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHNwbGl0bGluZXMpOworICAgICAgICBQeU9iamVjdCAqdG1wOwogICAgICAgICBQeU9iamVjdCAqbG9hZGVyOwogICAgICAgICBQeU9iamVjdCAqbW9kdWxlX25hbWU7CiAgICAgICAgIFB5T2JqZWN0ICpzb3VyY2U7CkBAIC02NTIsMTYgKzY2NSwxMCBAQAogICAgICAgICBQeU9iamVjdCAqc291cmNlX2xpbmU7CiAgICAgICAgIFB5T2JqZWN0ICpyZXR1cm5lZDsKIAotICAgICAgICBpZiAoZ2V0X3NvdXJjZV9uYW1lID09IE5VTEwpIHsKLSAgICAgICAgICAgIGdldF9zb3VyY2VfbmFtZSA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJnZXRfc291cmNlIik7Ci0gICAgICAgICAgICBpZiAoIWdldF9zb3VyY2VfbmFtZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBpZiAoc3BsaXRsaW5lc19uYW1lID09IE5VTEwpIHsKLSAgICAgICAgICAgIHNwbGl0bGluZXNfbmFtZSA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJzcGxpdGxpbmVzIik7Ci0gICAgICAgICAgICBpZiAoIXNwbGl0bGluZXNfbmFtZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQorICAgICAgICBpZiAoKHRtcCA9IF9QeVVuaWNvZGVfRnJvbUlkKCZQeUlkX2dldF9zb3VyY2UpKSA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGlmICgodG1wID0gX1B5VW5pY29kZV9Gcm9tSWQoJlB5SWRfc3BsaXRsaW5lcykpID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgICAgICAvKiBDaGVjay9nZXQgdGhlIHJlcXVpc2l0ZSBwaWVjZXMgbmVlZGVkIGZvciB0aGUgbG9hZGVyLiAqLwogICAgICAgICBsb2FkZXIgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhtb2R1bGVfZ2xvYmFscywgIl9fbG9hZGVyX18iKTsKQEAgLTY3MSwxMSArNjc4LDExIEBACiAgICAgICAgICAgICBnb3RvIHN0YW5kYXJkX2NhbGw7CiAKICAgICAgICAgLyogTWFrZSBzdXJlIHRoZSBsb2FkZXIgaW1wbGVtZW50cyB0aGUgb3B0aW9uYWwgZ2V0X3NvdXJjZSgpIG1ldGhvZC4gKi8KLSAgICAgICAgaWYgKCFQeU9iamVjdF9IYXNBdHRyU3RyaW5nKGxvYWRlciwgImdldF9zb3VyY2UiKSkKKyAgICAgICAgaWYgKCFfUHlPYmplY3RfSGFzQXR0cklkKGxvYWRlciwgJlB5SWRfZ2V0X3NvdXJjZSkpCiAgICAgICAgICAgICAgICAgZ290byBzdGFuZGFyZF9jYWxsOwogICAgICAgICAvKiBDYWxsIGdldF9zb3VyY2UoKSB0byBnZXQgdGhlIHNvdXJjZSBjb2RlLiAqLwotICAgICAgICBzb3VyY2UgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhsb2FkZXIsIGdldF9zb3VyY2VfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9uYW1lLCBOVUxMKTsKKyAgICAgICAgc291cmNlID0gUHlPYmplY3RfQ2FsbE1ldGhvZE9iakFyZ3MobG9hZGVyLCBQeUlkX2dldF9zb3VyY2Uub2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVfbmFtZSwgTlVMTCk7CiAgICAgICAgIGlmICghc291cmNlKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGVsc2UgaWYgKHNvdXJjZSA9PSBQeV9Ob25lKSB7CkBAIC02ODQsOCArNjkxLDkgQEAKICAgICAgICAgfQogCiAgICAgICAgIC8qIFNwbGl0IHRoZSBzb3VyY2UgaW50byBsaW5lcy4gKi8KLSAgICAgICAgc291cmNlX2xpc3QgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzb3VyY2UsIHNwbGl0bGluZXNfbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKyAgICAgICAgc291cmNlX2xpc3QgPSBQeU9iamVjdF9DYWxsTWV0aG9kT2JqQXJncyhzb3VyY2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlJZF9zcGxpdGxpbmVzLm9iamVjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKICAgICAgICAgUHlfREVDUkVGKHNvdXJjZSk7CiAgICAgICAgIGlmICghc291cmNlX2xpc3QpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTk1MCwyMyArOTU4LDMwIEBACiAgICAgaWYgKG0gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBfZmlsdGVycyA9IGluaXRfZmlsdGVycygpOwotICAgIGlmIChfZmlsdGVycyA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoX2ZpbHRlcnMgPT0gTlVMTCkgeworICAgICAgICBfZmlsdGVycyA9IGluaXRfZmlsdGVycygpOworICAgICAgICBpZiAoX2ZpbHRlcnMgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KICAgICBQeV9JTkNSRUYoX2ZpbHRlcnMpOwogICAgIGlmIChQeU1vZHVsZV9BZGRPYmplY3QobSwgImZpbHRlcnMiLCBfZmlsdGVycykgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIF9vbmNlX3JlZ2lzdHJ5ID0gUHlEaWN0X05ldygpOwotICAgIGlmIChfb25jZV9yZWdpc3RyeSA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBpZiAoX29uY2VfcmVnaXN0cnkgPT0gTlVMTCkgeworICAgICAgICBfb25jZV9yZWdpc3RyeSA9IFB5RGljdF9OZXcoKTsKKyAgICAgICAgaWYgKF9vbmNlX3JlZ2lzdHJ5ID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAgICAgUHlfSU5DUkVGKF9vbmNlX3JlZ2lzdHJ5KTsKICAgICBpZiAoUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJfb25jZXJlZ2lzdHJ5IiwgX29uY2VfcmVnaXN0cnkpIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKLSAgICBfZGVmYXVsdF9hY3Rpb24gPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiZGVmYXVsdCIpOwotICAgIGlmIChfZGVmYXVsdF9hY3Rpb24gPT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKF9kZWZhdWx0X2FjdGlvbiA9PSBOVUxMKSB7CisgICAgICAgIF9kZWZhdWx0X2FjdGlvbiA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCJkZWZhdWx0Iik7CisgICAgICAgIGlmIChfZGVmYXVsdF9hY3Rpb24gPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBQeV9JTkNSRUYoX2RlZmF1bHRfYWN0aW9uKTsKICAgICBpZiAoUHlNb2R1bGVfQWRkT2JqZWN0KG0sICJfZGVmYXVsdGFjdGlvbiIsIF9kZWZhdWx0X2FjdGlvbikgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICByZXR1cm4gbTsKZGlmZiAtLWdpdCBhL1B5dGhvbi9hc3QuYyBiL1B5dGhvbi9hc3QuYwppbmRleCA2MjY5YzY0Li5jNTY1NjQyIDEwMDY0NAotLS0gYS9QeXRob24vYXN0LmMKKysrIGIvUHl0aG9uL2FzdC5jCkBAIC0xLDI0ICsxLDUwNyBAQAogLyoKICAqIFRoaXMgZmlsZSBpbmNsdWRlcyBmdW5jdGlvbnMgdG8gdHJhbnNmb3JtIGEgY29uY3JldGUgc3ludGF4IHRyZWUgKENTVCkgdG8KLSAqIGFuIGFic3RyYWN0IHN5bnRheCB0cmVlIChBU1QpLiAgVGhlIG1haW4gZnVuY3Rpb24gaXMgUHlBU1RfRnJvbU5vZGUoKS4KKyAqIGFuIGFic3RyYWN0IHN5bnRheCB0cmVlIChBU1QpLiBUaGUgbWFpbiBmdW5jdGlvbiBpcyBQeUFTVF9Gcm9tTm9kZSgpLgogICoKICAqLwogI2luY2x1ZGUgIlB5dGhvbi5oIgogI2luY2x1ZGUgIlB5dGhvbi1hc3QuaCIKLSNpbmNsdWRlICJncmFtbWFyLmgiCiAjaW5jbHVkZSAibm9kZS5oIgogI2luY2x1ZGUgImFzdC5oIgogI2luY2x1ZGUgInRva2VuLmgiCi0jaW5jbHVkZSAicGFyc2V0b2suaCIKLSNpbmNsdWRlICJncmFtaW5pdC5oIgogCiAjaW5jbHVkZSA8YXNzZXJ0Lmg+CiAKK3N0YXRpYyBpbnQgdmFsaWRhdGVfc3RtdHMoYXNkbF9zZXEgKik7CitzdGF0aWMgaW50IHZhbGlkYXRlX2V4cHJzKGFzZGxfc2VxICosIGV4cHJfY29udGV4dF90eSwgaW50KTsKK3N0YXRpYyBpbnQgdmFsaWRhdGVfbm9uZW1wdHlfc2VxKGFzZGxfc2VxICosIGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKK3N0YXRpYyBpbnQgdmFsaWRhdGVfc3RtdChzdG10X3R5KTsKK3N0YXRpYyBpbnQgdmFsaWRhdGVfZXhwcihleHByX3R5LCBleHByX2NvbnRleHRfdHkpOworCitzdGF0aWMgaW50Cit2YWxpZGF0ZV9jb21wcmVoZW5zaW9uKGFzZGxfc2VxICpnZW5zKQoreworICAgIGludCBpOworICAgIGlmICghYXNkbF9zZXFfTEVOKGdlbnMpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiY29tcHJlaGVuc2lvbiB3aXRoIG5vIGdlbmVyYXRvcnMiKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIGZvciAoaSA9IDA7IGkgPCBhc2RsX3NlcV9MRU4oZ2Vucyk7IGkrKykgeworICAgICAgICBjb21wcmVoZW5zaW9uX3R5IGNvbXAgPSBhc2RsX3NlcV9HRVQoZ2VucywgaSk7CisgICAgICAgIGlmICghdmFsaWRhdGVfZXhwcihjb21wLT50YXJnZXQsIFN0b3JlKSB8fAorICAgICAgICAgICAgIXZhbGlkYXRlX2V4cHIoY29tcC0+aXRlciwgTG9hZCkgfHwKKyAgICAgICAgICAgICF2YWxpZGF0ZV9leHBycyhjb21wLT5pZnMsIExvYWQsIDApKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIHJldHVybiAxOworfQorCitzdGF0aWMgaW50Cit2YWxpZGF0ZV9zbGljZShzbGljZV90eSBzbGljZSkKK3sKKyAgICBzd2l0Y2ggKHNsaWNlLT5raW5kKSB7CisgICAgY2FzZSBTbGljZV9raW5kOgorICAgICAgICByZXR1cm4gKCFzbGljZS0+di5TbGljZS5sb3dlciB8fCB2YWxpZGF0ZV9leHByKHNsaWNlLT52LlNsaWNlLmxvd2VyLCBMb2FkKSkgJiYKKyAgICAgICAgICAgICghc2xpY2UtPnYuU2xpY2UudXBwZXIgfHwgdmFsaWRhdGVfZXhwcihzbGljZS0+di5TbGljZS51cHBlciwgTG9hZCkpICYmCisgICAgICAgICAgICAoIXNsaWNlLT52LlNsaWNlLnN0ZXAgfHwgdmFsaWRhdGVfZXhwcihzbGljZS0+di5TbGljZS5zdGVwLCBMb2FkKSk7CisgICAgY2FzZSBFeHRTbGljZV9raW5kOiB7CisgICAgICAgIGludCBpOworICAgICAgICBpZiAoIXZhbGlkYXRlX25vbmVtcHR5X3NlcShzbGljZS0+di5FeHRTbGljZS5kaW1zLCAiZGltcyIsICJFeHRTbGljZSIpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBhc2RsX3NlcV9MRU4oc2xpY2UtPnYuRXh0U2xpY2UuZGltcyk7IGkrKykKKyAgICAgICAgICAgIGlmICghdmFsaWRhdGVfc2xpY2UoYXNkbF9zZXFfR0VUKHNsaWNlLT52LkV4dFNsaWNlLmRpbXMsIGkpKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIGNhc2UgSW5kZXhfa2luZDoKKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX2V4cHIoc2xpY2UtPnYuSW5kZXgudmFsdWUsIExvYWQpOworICAgIGRlZmF1bHQ6CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwgInVua25vd24gc2xpY2Ugbm9kZSIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9Cit9CisKK3N0YXRpYyBpbnQKK3ZhbGlkYXRlX2tleXdvcmRzKGFzZGxfc2VxICprZXl3b3JkcykKK3sKKyAgICBpbnQgaTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgYXNkbF9zZXFfTEVOKGtleXdvcmRzKTsgaSsrKQorICAgICAgICBpZiAoIXZhbGlkYXRlX2V4cHIoKChrZXl3b3JkX3R5KWFzZGxfc2VxX0dFVChrZXl3b3JkcywgaSkpLT52YWx1ZSwgTG9hZCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gMTsKK30KKworc3RhdGljIGludAordmFsaWRhdGVfYXJncyhhc2RsX3NlcSAqYXJncykKK3sKKyAgICBpbnQgaTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgYXNkbF9zZXFfTEVOKGFyZ3MpOyBpKyspIHsKKyAgICAgICAgYXJnX3R5IGFyZyA9IGFzZGxfc2VxX0dFVChhcmdzLCBpKTsKKyAgICAgICAgaWYgKGFyZy0+YW5ub3RhdGlvbiAmJiAhdmFsaWRhdGVfZXhwcihhcmctPmFubm90YXRpb24sIExvYWQpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIHJldHVybiAxOworfQorCitzdGF0aWMgY29uc3QgY2hhciAqCitleHByX2NvbnRleHRfbmFtZShleHByX2NvbnRleHRfdHkgY3R4KQoreworICAgIHN3aXRjaCAoY3R4KSB7CisgICAgY2FzZSBMb2FkOgorICAgICAgICByZXR1cm4gIkxvYWQiOworICAgIGNhc2UgU3RvcmU6CisgICAgICAgIHJldHVybiAiU3RvcmUiOworICAgIGNhc2UgRGVsOgorICAgICAgICByZXR1cm4gIkRlbCI7CisgICAgY2FzZSBBdWdMb2FkOgorICAgICAgICByZXR1cm4gIkF1Z0xvYWQiOworICAgIGNhc2UgQXVnU3RvcmU6CisgICAgICAgIHJldHVybiAiQXVnU3RvcmUiOworICAgIGNhc2UgUGFyYW06CisgICAgICAgIHJldHVybiAiUGFyYW0iOworICAgIGRlZmF1bHQ6CisgICAgICAgIGFzc2VydCgwKTsKKyAgICAgICAgcmV0dXJuICIodW5rbm93bikiOworICAgIH0KK30KKworc3RhdGljIGludAordmFsaWRhdGVfYXJndW1lbnRzKGFyZ3VtZW50c190eSBhcmdzKQoreworICAgIGlmICghdmFsaWRhdGVfYXJncyhhcmdzLT5hcmdzKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKGFyZ3MtPnZhcmFyZ2Fubm90YXRpb24pIHsKKyAgICAgICAgaWYgKCFhcmdzLT52YXJhcmcpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAidmFyYXJnYW5ub3RhdGlvbiBidXQgbm8gdmFyYXJnIG9uIGFyZ3VtZW50cyIpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCF2YWxpZGF0ZV9leHByKGFyZ3MtPnZhcmFyZ2Fubm90YXRpb24sIExvYWQpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIGlmICghdmFsaWRhdGVfYXJncyhhcmdzLT5rd29ubHlhcmdzKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKGFyZ3MtPmt3YXJnYW5ub3RhdGlvbikgeworICAgICAgICBpZiAoIWFyZ3MtPmt3YXJnKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgImt3YXJnYW5ub3RhdGlvbiBidXQgbm8ga3dhcmcgb24gYXJndW1lbnRzIik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICBpZiAoIXZhbGlkYXRlX2V4cHIoYXJncy0+a3dhcmdhbm5vdGF0aW9uLCBMb2FkKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBpZiAoYXNkbF9zZXFfTEVOKGFyZ3MtPmRlZmF1bHRzKSA+IGFzZGxfc2VxX0xFTihhcmdzLT5hcmdzKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIm1vcmUgcG9zaXRpb25hbCBkZWZhdWx0cyB0aGFuIGFyZ3Mgb24gYXJndW1lbnRzIik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICBpZiAoYXNkbF9zZXFfTEVOKGFyZ3MtPmt3X2RlZmF1bHRzKSAhPSBhc2RsX3NlcV9MRU4oYXJncy0+a3dvbmx5YXJncykpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJsZW5ndGggb2Yga3dvbmx5YXJncyBpcyBub3QgdGhlIHNhbWUgYXMgIgorICAgICAgICAgICAgICAgICAgICAgICAgImt3X2RlZmF1bHRzIG9uIGFyZ3VtZW50cyIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisgICAgcmV0dXJuIHZhbGlkYXRlX2V4cHJzKGFyZ3MtPmRlZmF1bHRzLCBMb2FkLCAwKSAmJiB2YWxpZGF0ZV9leHBycyhhcmdzLT5rd19kZWZhdWx0cywgTG9hZCwgMSk7Cit9CisKK3N0YXRpYyBpbnQKK3ZhbGlkYXRlX2V4cHIoZXhwcl90eSBleHAsIGV4cHJfY29udGV4dF90eSBjdHgpCit7CisgICAgaW50IGNoZWNrX2N0eCA9IDE7CisgICAgZXhwcl9jb250ZXh0X3R5IGFjdHVhbF9jdHg7CisKKyAgICAvKiBGaXJzdCBjaGVjayBleHByZXNzaW9uIGNvbnRleHQuICovCisgICAgc3dpdGNoIChleHAtPmtpbmQpIHsKKyAgICBjYXNlIEF0dHJpYnV0ZV9raW5kOgorICAgICAgICBhY3R1YWxfY3R4ID0gZXhwLT52LkF0dHJpYnV0ZS5jdHg7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgU3Vic2NyaXB0X2tpbmQ6CisgICAgICAgIGFjdHVhbF9jdHggPSBleHAtPnYuU3Vic2NyaXB0LmN0eDsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBTdGFycmVkX2tpbmQ6CisgICAgICAgIGFjdHVhbF9jdHggPSBleHAtPnYuU3RhcnJlZC5jdHg7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgTmFtZV9raW5kOgorICAgICAgICBhY3R1YWxfY3R4ID0gZXhwLT52Lk5hbWUuY3R4OworICAgICAgICBicmVhazsKKyAgICBjYXNlIExpc3Rfa2luZDoKKyAgICAgICAgYWN0dWFsX2N0eCA9IGV4cC0+di5MaXN0LmN0eDsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBUdXBsZV9raW5kOgorICAgICAgICBhY3R1YWxfY3R4ID0gZXhwLT52LlR1cGxlLmN0eDsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgaWYgKGN0eCAhPSBMb2FkKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwgImV4cHJlc3Npb24gd2hpY2ggY2FuJ3QgYmUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICJhc3NpZ25lZCB0byBpbiAlcyBjb250ZXh0IiwgZXhwcl9jb250ZXh0X25hbWUoY3R4KSk7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICBjaGVja19jdHggPSAwOworICAgIH0KKyAgICBpZiAoY2hlY2tfY3R4ICYmIGFjdHVhbF9jdHggIT0gY3R4KSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLCAiZXhwcmVzc2lvbiBtdXN0IGhhdmUgJXMgY29udGV4dCBidXQgaGFzICVzIGluc3RlYWQiLAorICAgICAgICAgICAgICAgICAgICAgZXhwcl9jb250ZXh0X25hbWUoY3R4KSwgZXhwcl9jb250ZXh0X25hbWUoYWN0dWFsX2N0eCkpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICAvKiBOb3cgdmFsaWRhdGUgZXhwcmVzc2lvbi4gKi8KKyAgICBzd2l0Y2ggKGV4cC0+a2luZCkgeworICAgIGNhc2UgQm9vbE9wX2tpbmQ6CisgICAgICAgIGlmIChhc2RsX3NlcV9MRU4oZXhwLT52LkJvb2xPcC52YWx1ZXMpIDwgMikgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJCb29sT3Agd2l0aCBsZXNzIHRoYW4gMiB2YWx1ZXMiKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiB2YWxpZGF0ZV9leHBycyhleHAtPnYuQm9vbE9wLnZhbHVlcywgTG9hZCwgMCk7CisgICAgY2FzZSBCaW5PcF9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfZXhwcihleHAtPnYuQmluT3AubGVmdCwgTG9hZCkgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX2V4cHIoZXhwLT52LkJpbk9wLnJpZ2h0LCBMb2FkKTsKKyAgICBjYXNlIFVuYXJ5T3Bfa2luZDoKKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX2V4cHIoZXhwLT52LlVuYXJ5T3Aub3BlcmFuZCwgTG9hZCk7CisgICAgY2FzZSBMYW1iZGFfa2luZDoKKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX2FyZ3VtZW50cyhleHAtPnYuTGFtYmRhLmFyZ3MpICYmCisgICAgICAgICAgICB2YWxpZGF0ZV9leHByKGV4cC0+di5MYW1iZGEuYm9keSwgTG9hZCk7CisgICAgY2FzZSBJZkV4cF9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfZXhwcihleHAtPnYuSWZFeHAudGVzdCwgTG9hZCkgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX2V4cHIoZXhwLT52LklmRXhwLmJvZHksIExvYWQpICYmCisgICAgICAgICAgICB2YWxpZGF0ZV9leHByKGV4cC0+di5JZkV4cC5vcmVsc2UsIExvYWQpOworICAgIGNhc2UgRGljdF9raW5kOgorICAgICAgICBpZiAoYXNkbF9zZXFfTEVOKGV4cC0+di5EaWN0LmtleXMpICE9IGFzZGxfc2VxX0xFTihleHAtPnYuRGljdC52YWx1ZXMpKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRGljdCBkb2Vzbid0IGhhdmUgdGhlIHNhbWUgbnVtYmVyIG9mIGtleXMgYXMgdmFsdWVzIik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gdmFsaWRhdGVfZXhwcnMoZXhwLT52LkRpY3Qua2V5cywgTG9hZCwgMCkgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX2V4cHJzKGV4cC0+di5EaWN0LnZhbHVlcywgTG9hZCwgMCk7CisgICAgY2FzZSBTZXRfa2luZDoKKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX2V4cHJzKGV4cC0+di5TZXQuZWx0cywgTG9hZCwgMCk7CisjZGVmaW5lIENPTVAoTkFNRSkgXAorICAgICAgICBjYXNlIE5BTUUgIyMgX2tpbmQ6IFwKKyAgICAgICAgICAgIHJldHVybiB2YWxpZGF0ZV9jb21wcmVoZW5zaW9uKGV4cC0+di5OQU1FLmdlbmVyYXRvcnMpICYmIFwKKyAgICAgICAgICAgICAgICB2YWxpZGF0ZV9leHByKGV4cC0+di5OQU1FLmVsdCwgTG9hZCk7CisgICAgQ09NUChMaXN0Q29tcCkKKyAgICBDT01QKFNldENvbXApCisgICAgQ09NUChHZW5lcmF0b3JFeHApCisjdW5kZWYgQ09NUAorICAgIGNhc2UgRGljdENvbXBfa2luZDoKKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX2NvbXByZWhlbnNpb24oZXhwLT52LkRpY3RDb21wLmdlbmVyYXRvcnMpICYmCisgICAgICAgICAgICB2YWxpZGF0ZV9leHByKGV4cC0+di5EaWN0Q29tcC5rZXksIExvYWQpICYmCisgICAgICAgICAgICB2YWxpZGF0ZV9leHByKGV4cC0+di5EaWN0Q29tcC52YWx1ZSwgTG9hZCk7CisgICAgY2FzZSBZaWVsZF9raW5kOgorICAgICAgICByZXR1cm4gIWV4cC0+di5ZaWVsZC52YWx1ZSB8fCB2YWxpZGF0ZV9leHByKGV4cC0+di5ZaWVsZC52YWx1ZSwgTG9hZCk7CisgICAgY2FzZSBZaWVsZEZyb21fa2luZDoKKyAgICAgICAgcmV0dXJuICFleHAtPnYuWWllbGRGcm9tLnZhbHVlIHx8CisgICAgICAgICAgICB2YWxpZGF0ZV9leHByKGV4cC0+di5ZaWVsZEZyb20udmFsdWUsIExvYWQpOworICAgIGNhc2UgQ29tcGFyZV9raW5kOgorICAgICAgICBpZiAoIWFzZGxfc2VxX0xFTihleHAtPnYuQ29tcGFyZS5jb21wYXJhdG9ycykpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiQ29tcGFyZSB3aXRoIG5vIGNvbXBhcmF0b3JzIik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICBpZiAoYXNkbF9zZXFfTEVOKGV4cC0+di5Db21wYXJlLmNvbXBhcmF0b3JzKSAhPQorICAgICAgICAgICAgYXNkbF9zZXFfTEVOKGV4cC0+di5Db21wYXJlLm9wcykpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiQ29tcGFyZSBoYXMgYSBkaWZmZXJlbnQgbnVtYmVyICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAib2YgY29tcGFyYXRvcnMgYW5kIG9wZXJhbmRzIik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gdmFsaWRhdGVfZXhwcnMoZXhwLT52LkNvbXBhcmUuY29tcGFyYXRvcnMsIExvYWQsIDApICYmCisgICAgICAgICAgICB2YWxpZGF0ZV9leHByKGV4cC0+di5Db21wYXJlLmxlZnQsIExvYWQpOworICAgIGNhc2UgQ2FsbF9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfZXhwcihleHAtPnYuQ2FsbC5mdW5jLCBMb2FkKSAmJgorICAgICAgICAgICAgdmFsaWRhdGVfZXhwcnMoZXhwLT52LkNhbGwuYXJncywgTG9hZCwgMCkgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX2tleXdvcmRzKGV4cC0+di5DYWxsLmtleXdvcmRzKSAmJgorICAgICAgICAgICAgKCFleHAtPnYuQ2FsbC5zdGFyYXJncyB8fCB2YWxpZGF0ZV9leHByKGV4cC0+di5DYWxsLnN0YXJhcmdzLCBMb2FkKSkgJiYKKyAgICAgICAgICAgICghZXhwLT52LkNhbGwua3dhcmdzIHx8IHZhbGlkYXRlX2V4cHIoZXhwLT52LkNhbGwua3dhcmdzLCBMb2FkKSk7CisgICAgY2FzZSBOdW1fa2luZDogeworICAgICAgICBQeU9iamVjdCAqbiA9IGV4cC0+di5OdW0ubjsKKyAgICAgICAgaWYgKCFQeUxvbmdfQ2hlY2tFeGFjdChuKSAmJiAhUHlGbG9hdF9DaGVja0V4YWN0KG4pICYmCisgICAgICAgICAgICAhUHlDb21wbGV4X0NoZWNrRXhhY3QobikpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJub24tbnVtZXJpYyB0eXBlIGluIE51bSIpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorICAgIGNhc2UgU3RyX2tpbmQ6IHsKKyAgICAgICAgUHlPYmplY3QgKnMgPSBleHAtPnYuU3RyLnM7CisgICAgICAgIGlmICghUHlVbmljb2RlX0NoZWNrRXhhY3QocykpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsICJub24tc3RyaW5nIHR5cGUgaW4gU3RyIik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gMTsKKyAgICB9CisgICAgY2FzZSBCeXRlc19raW5kOiB7CisgICAgICAgIFB5T2JqZWN0ICpiID0gZXhwLT52LkJ5dGVzLnM7CisgICAgICAgIGlmICghUHlCeXRlc19DaGVja0V4YWN0KGIpKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCAibm9uLWJ5dGVzIHR5cGUgaW4gQnl0ZXMiKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiAxOworICAgIH0KKyAgICBjYXNlIEF0dHJpYnV0ZV9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfZXhwcihleHAtPnYuQXR0cmlidXRlLnZhbHVlLCBMb2FkKTsKKyAgICBjYXNlIFN1YnNjcmlwdF9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfc2xpY2UoZXhwLT52LlN1YnNjcmlwdC5zbGljZSkgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX2V4cHIoZXhwLT52LlN1YnNjcmlwdC52YWx1ZSwgTG9hZCk7CisgICAgY2FzZSBTdGFycmVkX2tpbmQ6CisgICAgICAgIHJldHVybiB2YWxpZGF0ZV9leHByKGV4cC0+di5TdGFycmVkLnZhbHVlLCBjdHgpOworICAgIGNhc2UgTGlzdF9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfZXhwcnMoZXhwLT52Lkxpc3QuZWx0cywgY3R4LCAwKTsKKyAgICBjYXNlIFR1cGxlX2tpbmQ6CisgICAgICAgIHJldHVybiB2YWxpZGF0ZV9leHBycyhleHAtPnYuVHVwbGUuZWx0cywgY3R4LCAwKTsKKyAgICAvKiBUaGVzZSBsYXN0IGNhc2VzIGRvbid0IGhhdmUgYW55IGNoZWNraW5nLiAqLworICAgIGNhc2UgTmFtZV9raW5kOgorICAgIGNhc2UgRWxsaXBzaXNfa2luZDoKKyAgICAgICAgcmV0dXJuIDE7CisgICAgZGVmYXVsdDoKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1N5c3RlbUVycm9yLCAidW5leHBlY3RlZCBleHByZXNzaW9uIik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KK30KKworc3RhdGljIGludAordmFsaWRhdGVfbm9uZW1wdHlfc2VxKGFzZGxfc2VxICpzZXEsIGNvbnN0IGNoYXIgKndoYXQsIGNvbnN0IGNoYXIgKm93bmVyKQoreworICAgIGlmIChhc2RsX3NlcV9MRU4oc2VxKSkKKyAgICAgICAgcmV0dXJuIDE7CisgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsICJlbXB0eSAlcyBvbiAlcyIsIHdoYXQsIG93bmVyKTsKKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGludAordmFsaWRhdGVfYXNzaWdubGlzdChhc2RsX3NlcSAqdGFyZ2V0cywgZXhwcl9jb250ZXh0X3R5IGN0eCkKK3sKKyAgICByZXR1cm4gdmFsaWRhdGVfbm9uZW1wdHlfc2VxKHRhcmdldHMsICJ0YXJnZXRzIiwgY3R4ID09IERlbCA/ICJEZWxldGUiIDogIkFzc2lnbiIpICYmCisgICAgICAgIHZhbGlkYXRlX2V4cHJzKHRhcmdldHMsIGN0eCwgMCk7Cit9CisKK3N0YXRpYyBpbnQKK3ZhbGlkYXRlX2JvZHkoYXNkbF9zZXEgKmJvZHksIGNvbnN0IGNoYXIgKm93bmVyKQoreworICAgIHJldHVybiB2YWxpZGF0ZV9ub25lbXB0eV9zZXEoYm9keSwgImJvZHkiLCBvd25lcikgJiYgdmFsaWRhdGVfc3RtdHMoYm9keSk7Cit9CisKK3N0YXRpYyBpbnQKK3ZhbGlkYXRlX3N0bXQoc3RtdF90eSBzdG10KQoreworICAgIGludCBpOworICAgIHN3aXRjaCAoc3RtdC0+a2luZCkgeworICAgIGNhc2UgRnVuY3Rpb25EZWZfa2luZDoKKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX2JvZHkoc3RtdC0+di5GdW5jdGlvbkRlZi5ib2R5LCAiRnVuY3Rpb25EZWYiKSAmJgorICAgICAgICAgICAgdmFsaWRhdGVfYXJndW1lbnRzKHN0bXQtPnYuRnVuY3Rpb25EZWYuYXJncykgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX2V4cHJzKHN0bXQtPnYuRnVuY3Rpb25EZWYuZGVjb3JhdG9yX2xpc3QsIExvYWQsIDApICYmCisgICAgICAgICAgICAoIXN0bXQtPnYuRnVuY3Rpb25EZWYucmV0dXJucyB8fAorICAgICAgICAgICAgIHZhbGlkYXRlX2V4cHIoc3RtdC0+di5GdW5jdGlvbkRlZi5yZXR1cm5zLCBMb2FkKSk7CisgICAgY2FzZSBDbGFzc0RlZl9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfYm9keShzdG10LT52LkNsYXNzRGVmLmJvZHksICJDbGFzc0RlZiIpICYmCisgICAgICAgICAgICB2YWxpZGF0ZV9leHBycyhzdG10LT52LkNsYXNzRGVmLmJhc2VzLCBMb2FkLCAwKSAmJgorICAgICAgICAgICAgdmFsaWRhdGVfa2V5d29yZHMoc3RtdC0+di5DbGFzc0RlZi5rZXl3b3JkcykgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX2V4cHJzKHN0bXQtPnYuQ2xhc3NEZWYuZGVjb3JhdG9yX2xpc3QsIExvYWQsIDApICYmCisgICAgICAgICAgICAoIXN0bXQtPnYuQ2xhc3NEZWYuc3RhcmFyZ3MgfHwgdmFsaWRhdGVfZXhwcihzdG10LT52LkNsYXNzRGVmLnN0YXJhcmdzLCBMb2FkKSkgJiYKKyAgICAgICAgICAgICghc3RtdC0+di5DbGFzc0RlZi5rd2FyZ3MgfHwgdmFsaWRhdGVfZXhwcihzdG10LT52LkNsYXNzRGVmLmt3YXJncywgTG9hZCkpOworICAgIGNhc2UgUmV0dXJuX2tpbmQ6CisgICAgICAgIHJldHVybiAhc3RtdC0+di5SZXR1cm4udmFsdWUgfHwgdmFsaWRhdGVfZXhwcihzdG10LT52LlJldHVybi52YWx1ZSwgTG9hZCk7CisgICAgY2FzZSBEZWxldGVfa2luZDoKKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX2Fzc2lnbmxpc3Qoc3RtdC0+di5EZWxldGUudGFyZ2V0cywgRGVsKTsKKyAgICBjYXNlIEFzc2lnbl9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfYXNzaWdubGlzdChzdG10LT52LkFzc2lnbi50YXJnZXRzLCBTdG9yZSkgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX2V4cHIoc3RtdC0+di5Bc3NpZ24udmFsdWUsIExvYWQpOworICAgIGNhc2UgQXVnQXNzaWduX2tpbmQ6CisgICAgICAgIHJldHVybiB2YWxpZGF0ZV9leHByKHN0bXQtPnYuQXVnQXNzaWduLnRhcmdldCwgU3RvcmUpICYmCisgICAgICAgICAgICB2YWxpZGF0ZV9leHByKHN0bXQtPnYuQXVnQXNzaWduLnZhbHVlLCBMb2FkKTsKKyAgICBjYXNlIEZvcl9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfZXhwcihzdG10LT52LkZvci50YXJnZXQsIFN0b3JlKSAmJgorICAgICAgICAgICAgdmFsaWRhdGVfZXhwcihzdG10LT52LkZvci5pdGVyLCBMb2FkKSAmJgorICAgICAgICAgICAgdmFsaWRhdGVfYm9keShzdG10LT52LkZvci5ib2R5LCAiRm9yIikgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX3N0bXRzKHN0bXQtPnYuRm9yLm9yZWxzZSk7CisgICAgY2FzZSBXaGlsZV9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfZXhwcihzdG10LT52LldoaWxlLnRlc3QsIExvYWQpICYmCisgICAgICAgICAgICB2YWxpZGF0ZV9ib2R5KHN0bXQtPnYuV2hpbGUuYm9keSwgIldoaWxlIikgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX3N0bXRzKHN0bXQtPnYuV2hpbGUub3JlbHNlKTsKKyAgICBjYXNlIElmX2tpbmQ6CisgICAgICAgIHJldHVybiB2YWxpZGF0ZV9leHByKHN0bXQtPnYuSWYudGVzdCwgTG9hZCkgJiYKKyAgICAgICAgICAgIHZhbGlkYXRlX2JvZHkoc3RtdC0+di5JZi5ib2R5LCAiSWYiKSAmJgorICAgICAgICAgICAgdmFsaWRhdGVfc3RtdHMoc3RtdC0+di5JZi5vcmVsc2UpOworICAgIGNhc2UgV2l0aF9raW5kOgorICAgICAgICBpZiAoIXZhbGlkYXRlX25vbmVtcHR5X3NlcShzdG10LT52LldpdGguaXRlbXMsICJpdGVtcyIsICJXaXRoIikpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IGFzZGxfc2VxX0xFTihzdG10LT52LldpdGguaXRlbXMpOyBpKyspIHsKKyAgICAgICAgICAgIHdpdGhpdGVtX3R5IGl0ZW0gPSBhc2RsX3NlcV9HRVQoc3RtdC0+di5XaXRoLml0ZW1zLCBpKTsKKyAgICAgICAgICAgIGlmICghdmFsaWRhdGVfZXhwcihpdGVtLT5jb250ZXh0X2V4cHIsIExvYWQpIHx8CisgICAgICAgICAgICAgICAgKGl0ZW0tPm9wdGlvbmFsX3ZhcnMgJiYgIXZhbGlkYXRlX2V4cHIoaXRlbS0+b3B0aW9uYWxfdmFycywgU3RvcmUpKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gdmFsaWRhdGVfYm9keShzdG10LT52LldpdGguYm9keSwgIldpdGgiKTsKKyAgICBjYXNlIFJhaXNlX2tpbmQ6CisgICAgICAgIGlmIChzdG10LT52LlJhaXNlLmV4YykgeworICAgICAgICAgICAgcmV0dXJuIHZhbGlkYXRlX2V4cHIoc3RtdC0+di5SYWlzZS5leGMsIExvYWQpICYmCisgICAgICAgICAgICAgICAgKCFzdG10LT52LlJhaXNlLmNhdXNlIHx8IHZhbGlkYXRlX2V4cHIoc3RtdC0+di5SYWlzZS5jYXVzZSwgTG9hZCkpOworICAgICAgICB9CisgICAgICAgIGlmIChzdG10LT52LlJhaXNlLmNhdXNlKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwgIlJhaXNlIHdpdGggY2F1c2UgYnV0IG5vIGV4Y2VwdGlvbiIpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIDE7CisgICAgY2FzZSBUcnlfa2luZDoKKyAgICAgICAgaWYgKCF2YWxpZGF0ZV9ib2R5KHN0bXQtPnYuVHJ5LmJvZHksICJUcnkiKSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBpZiAoIWFzZGxfc2VxX0xFTihzdG10LT52LlRyeS5oYW5kbGVycykgJiYKKyAgICAgICAgICAgICFhc2RsX3NlcV9MRU4oc3RtdC0+di5UcnkuZmluYWxib2R5KSkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJUcnkgaGFzIG5laXRoZXIgZXhjZXB0IGhhbmRsZXJzIG5vciBmaW5hbGJvZHkiKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIGlmICghYXNkbF9zZXFfTEVOKHN0bXQtPnYuVHJ5LmhhbmRsZXJzKSAmJgorICAgICAgICAgICAgYXNkbF9zZXFfTEVOKHN0bXQtPnYuVHJ5Lm9yZWxzZSkpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiVHJ5IGhhcyBvcmVsc2UgYnV0IG5vIGV4Y2VwdCBoYW5kbGVycyIpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgZm9yIChpID0gMDsgaSA8IGFzZGxfc2VxX0xFTihzdG10LT52LlRyeS5oYW5kbGVycyk7IGkrKykgeworICAgICAgICAgICAgZXhjZXB0aGFuZGxlcl90eSBoYW5kbGVyID0gYXNkbF9zZXFfR0VUKHN0bXQtPnYuVHJ5LmhhbmRsZXJzLCBpKTsKKyAgICAgICAgICAgIGlmICgoaGFuZGxlci0+di5FeGNlcHRIYW5kbGVyLnR5cGUgJiYKKyAgICAgICAgICAgICAgICAgIXZhbGlkYXRlX2V4cHIoaGFuZGxlci0+di5FeGNlcHRIYW5kbGVyLnR5cGUsIExvYWQpKSB8fAorICAgICAgICAgICAgICAgICF2YWxpZGF0ZV9ib2R5KGhhbmRsZXItPnYuRXhjZXB0SGFuZGxlci5ib2R5LCAiRXhjZXB0SGFuZGxlciIpKQorICAgICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIHJldHVybiAoIWFzZGxfc2VxX0xFTihzdG10LT52LlRyeS5maW5hbGJvZHkpIHx8CisgICAgICAgICAgICAgICAgdmFsaWRhdGVfc3RtdHMoc3RtdC0+di5UcnkuZmluYWxib2R5KSkgJiYKKyAgICAgICAgICAgICghYXNkbF9zZXFfTEVOKHN0bXQtPnYuVHJ5Lm9yZWxzZSkgfHwKKyAgICAgICAgICAgICB2YWxpZGF0ZV9zdG10cyhzdG10LT52LlRyeS5vcmVsc2UpKTsKKyAgICBjYXNlIEFzc2VydF9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfZXhwcihzdG10LT52LkFzc2VydC50ZXN0LCBMb2FkKSAmJgorICAgICAgICAgICAgKCFzdG10LT52LkFzc2VydC5tc2cgfHwgdmFsaWRhdGVfZXhwcihzdG10LT52LkFzc2VydC5tc2csIExvYWQpKTsKKyAgICBjYXNlIEltcG9ydF9raW5kOgorICAgICAgICByZXR1cm4gdmFsaWRhdGVfbm9uZW1wdHlfc2VxKHN0bXQtPnYuSW1wb3J0Lm5hbWVzLCAibmFtZXMiLCAiSW1wb3J0Iik7CisgICAgY2FzZSBJbXBvcnRGcm9tX2tpbmQ6CisgICAgICAgIGlmIChzdG10LT52LkltcG9ydEZyb20ubGV2ZWwgPCAtMSkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJJbXBvcnRGcm9tIGxldmVsIGxlc3MgdGhhbiAtMSIpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX25vbmVtcHR5X3NlcShzdG10LT52LkltcG9ydEZyb20ubmFtZXMsICJuYW1lcyIsICJJbXBvcnRGcm9tIik7CisgICAgY2FzZSBHbG9iYWxfa2luZDoKKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX25vbmVtcHR5X3NlcShzdG10LT52Lkdsb2JhbC5uYW1lcywgIm5hbWVzIiwgIkdsb2JhbCIpOworICAgIGNhc2UgTm9ubG9jYWxfa2luZDoKKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX25vbmVtcHR5X3NlcShzdG10LT52Lk5vbmxvY2FsLm5hbWVzLCAibmFtZXMiLCAiTm9ubG9jYWwiKTsKKyAgICBjYXNlIEV4cHJfa2luZDoKKyAgICAgICAgcmV0dXJuIHZhbGlkYXRlX2V4cHIoc3RtdC0+di5FeHByLnZhbHVlLCBMb2FkKTsKKyAgICBjYXNlIFBhc3Nfa2luZDoKKyAgICBjYXNlIEJyZWFrX2tpbmQ6CisgICAgY2FzZSBDb250aW51ZV9raW5kOgorICAgICAgICByZXR1cm4gMTsKKyAgICBkZWZhdWx0OgorICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfU3lzdGVtRXJyb3IsICJ1bmV4cGVjdGVkIHN0YXRlbWVudCIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9Cit9CisKK3N0YXRpYyBpbnQKK3ZhbGlkYXRlX3N0bXRzKGFzZGxfc2VxICpzZXEpCit7CisgICAgaW50IGk7CisgICAgZm9yIChpID0gMDsgaSA8IGFzZGxfc2VxX0xFTihzZXEpOyBpKyspIHsKKyAgICAgICAgc3RtdF90eSBzdG10ID0gYXNkbF9zZXFfR0VUKHNlcSwgaSk7CisgICAgICAgIGlmIChzdG10KSB7CisgICAgICAgICAgICBpZiAoIXZhbGlkYXRlX3N0bXQoc3RtdCkpCisgICAgICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTm9uZSBkaXNhbGxvd2VkIGluIHN0YXRlbWVudCBsaXN0Iik7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgIH0KKyAgICByZXR1cm4gMTsKK30KKworc3RhdGljIGludAordmFsaWRhdGVfZXhwcnMoYXNkbF9zZXEgKmV4cHJzLCBleHByX2NvbnRleHRfdHkgY3R4LCBpbnQgbnVsbF9vaykKK3sKKyAgICBpbnQgaTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgYXNkbF9zZXFfTEVOKGV4cHJzKTsgaSsrKSB7CisgICAgICAgIGV4cHJfdHkgZXhwciA9IGFzZGxfc2VxX0dFVChleHBycywgaSk7CisgICAgICAgIGlmIChleHByKSB7CisgICAgICAgICAgICBpZiAoIXZhbGlkYXRlX2V4cHIoZXhwciwgY3R4KSkKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICBlbHNlIGlmICghbnVsbF9vaykgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk5vbmUgZGlzYWxsb3dlZCBpbiBleHByZXNzaW9uIGxpc3QiKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgICAgICAKKyAgICB9CisgICAgcmV0dXJuIDE7Cit9CisKK2ludAorUHlBU1RfVmFsaWRhdGUobW9kX3R5IG1vZCkKK3sKKyAgICBpbnQgcmVzID0gMDsKKworICAgIHN3aXRjaCAobW9kLT5raW5kKSB7CisgICAgY2FzZSBNb2R1bGVfa2luZDoKKyAgICAgICAgcmVzID0gdmFsaWRhdGVfc3RtdHMobW9kLT52Lk1vZHVsZS5ib2R5KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBJbnRlcmFjdGl2ZV9raW5kOgorICAgICAgICByZXMgPSB2YWxpZGF0ZV9zdG10cyhtb2QtPnYuSW50ZXJhY3RpdmUuYm9keSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgRXhwcmVzc2lvbl9raW5kOgorICAgICAgICByZXMgPSB2YWxpZGF0ZV9leHByKG1vZC0+di5FeHByZXNzaW9uLmJvZHksIExvYWQpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIFN1aXRlX2tpbmQ6CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiU3VpdGUgaXMgbm90IHZhbGlkIGluIHRoZSBDUHl0aG9uIGNvbXBpbGVyIik7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwgImltcG9zc2libGUgbW9kdWxlIG5vZGUiKTsKKyAgICAgICAgcmVzID0gMDsKKyAgICAgICAgYnJlYWs7CisgICAgfQorICAgIHJldHVybiByZXM7Cit9CisKKy8qIFRoaXMgaXMgZG9uZSBoZXJlLCBzbyBkZWZpbmVzIGxpa2UgInRlc3QiIGRvbid0IGludGVyZmVyZSB3aXRoIEFTVCB1c2UgYWJvdmUuICovCisjaW5jbHVkZSAiZ3JhbW1hci5oIgorI2luY2x1ZGUgInBhcnNldG9rLmgiCisjaW5jbHVkZSAiZ3JhbWluaXQuaCIKKwogLyogRGF0YSBzdHJ1Y3R1cmUgdXNlZCBpbnRlcm5hbGx5ICovCiBzdHJ1Y3QgY29tcGlsaW5nIHsKICAgICBjaGFyICpjX2VuY29kaW5nOyAvKiBzb3VyY2UgZW5jb2RpbmcgKi8KICAgICBQeUFyZW5hICpjX2FyZW5hOyAvKiBhcmVuYSBmb3IgYWxsb2NhdGluZyBtZW1lb3J5ICovCiAgICAgY29uc3QgY2hhciAqY19maWxlbmFtZTsgLyogZmlsZW5hbWUgKi8KKyAgICBQeU9iamVjdCAqY19ub3JtYWxpemU7IC8qIE5vcm1hbGl6YXRpb24gZnVuY3Rpb24gZnJvbSB1bmljb2RlZGF0YS4gKi8KKyAgICBQeU9iamVjdCAqY19ub3JtYWxpemVfYXJnczsgLyogTm9ybWFsaXphdGlvbiBhcmd1bWVudCB0dXBsZS4gKi8KIH07CiAKIHN0YXRpYyBhc2RsX3NlcSAqc2VxX2Zvcl90ZXN0bGlzdChzdHJ1Y3QgY29tcGlsaW5nICosIGNvbnN0IG5vZGUgKik7CkBAIC0zOCw0NSArNTIxLDU4IEBACiBzdGF0aWMgUHlPYmplY3QgKnBhcnNlc3RycGx1cyhzdHJ1Y3QgY29tcGlsaW5nICosIGNvbnN0IG5vZGUgKm4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKmJ5dGVzbW9kZSk7CiAKLSNpZm5kZWYgTElORU5PCi0jZGVmaW5lIExJTkVOTyhuKSAgICAgICAoKG4pLT5uX2xpbmVubykKLSNlbmRpZgotCiAjZGVmaW5lIENPTVBfR0VORVhQICAgMAogI2RlZmluZSBDT01QX0xJU1RDT01QIDEKICNkZWZpbmUgQ09NUF9TRVRDT01QICAyCiAKK3N0YXRpYyBpbnQKK2luaXRfbm9ybWFsaXphdGlvbihzdHJ1Y3QgY29tcGlsaW5nICpjKQoreworICAgIFB5T2JqZWN0ICptID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaygidW5pY29kZWRhdGEiKTsKKyAgICBpZiAoIW0pCisgICAgICAgIHJldHVybiAwOworICAgIGMtPmNfbm9ybWFsaXplID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhtLCAibm9ybWFsaXplIik7CisgICAgUHlfREVDUkVGKG0pOworICAgIGlmICghYy0+Y19ub3JtYWxpemUpCisgICAgICAgIHJldHVybiAwOworICAgIGMtPmNfbm9ybWFsaXplX2FyZ3MgPSBQeV9CdWlsZFZhbHVlKCIoc04pIiwgIk5GS0MiLCBQeV9Ob25lKTsKKyAgICBQeVR1cGxlX1NFVF9JVEVNKGMtPmNfbm9ybWFsaXplX2FyZ3MsIDEsIE5VTEwpOworICAgIGlmICghYy0+Y19ub3JtYWxpemVfYXJncykgeworICAgICAgICBQeV9DTEVBUihjLT5jX25vcm1hbGl6ZSk7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKyAgICByZXR1cm4gMTsKK30KKwogc3RhdGljIGlkZW50aWZpZXIKLW5ld19pZGVudGlmaWVyKGNvbnN0IGNoYXIqIG4sIFB5QXJlbmEgKmFyZW5hKQorbmV3X2lkZW50aWZpZXIoY29uc3QgY2hhciogbiwgc3RydWN0IGNvbXBpbGluZyAqYykKIHsKICAgICBQeU9iamVjdCogaWQgPSBQeVVuaWNvZGVfRGVjb2RlVVRGOChuLCBzdHJsZW4obiksIE5VTEwpOwotICAgIFB5X1VOSUNPREUgKnU7CiAgICAgaWYgKCFpZCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgdSA9IFB5VW5pY29kZV9BU19VTklDT0RFKGlkKTsKKyAgICAvKiBQeVVuaWNvZGVfRGVjb2RlVVRGOCBzaG91bGQgYWx3YXlzIHJldHVybiBhIHJlYWR5IHN0cmluZy4gKi8KKyAgICBhc3NlcnQoUHlVbmljb2RlX0lTX1JFQURZKGlkKSk7CiAgICAgLyogQ2hlY2sgd2hldGhlciB0aGVyZSBhcmUgbm9uLUFTQ0lJIGNoYXJhY3RlcnMgaW4gdGhlCiAgICAgICAgaWRlbnRpZmllcjsgaWYgc28sIG5vcm1hbGl6ZSB0byBORktDLiAqLwotICAgIGZvciAoOyAqdTsgdSsrKSB7Ci0gICAgICAgIGlmICgqdSA+PSAxMjgpIHsKLSAgICAgICAgICAgIFB5T2JqZWN0ICptID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaygidW5pY29kZWRhdGEiKTsKLSAgICAgICAgICAgIFB5T2JqZWN0ICppZDI7Ci0gICAgICAgICAgICBpZiAoIW0pCi0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICBpZDIgPSBQeU9iamVjdF9DYWxsTWV0aG9kKG0sICJub3JtYWxpemUiLCAic08iLCAiTkZLQyIsIGlkKTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihtKTsKLSAgICAgICAgICAgIGlmICghaWQyKQotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIGlmICghUHlVbmljb2RlX0lTX0FTQ0lJKGlkKSkgeworICAgICAgICBQeU9iamVjdCAqaWQyOworICAgICAgICBpZiAoIWMtPmNfbm9ybWFsaXplICYmICFpbml0X25vcm1hbGl6YXRpb24oYykpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihpZCk7Ci0gICAgICAgICAgICBpZCA9IGlkMjsKLSAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KKyAgICAgICAgUHlUdXBsZV9TRVRfSVRFTShjLT5jX25vcm1hbGl6ZV9hcmdzLCAxLCBpZCk7CisgICAgICAgIGlkMiA9IFB5T2JqZWN0X0NhbGwoYy0+Y19ub3JtYWxpemUsIGMtPmNfbm9ybWFsaXplX2FyZ3MsIE5VTEwpOworICAgICAgICBQeV9ERUNSRUYoaWQpOworICAgICAgICBpZiAoIWlkMikKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBpZCA9IGlkMjsKICAgICB9CiAgICAgUHlVbmljb2RlX0ludGVybkluUGxhY2UoJmlkKTsKLSAgICBQeUFyZW5hX0FkZFB5T2JqZWN0KGFyZW5hLCBpZCk7CisgICAgUHlBcmVuYV9BZGRQeU9iamVjdChjLT5jX2FyZW5hLCBpZCk7CiAgICAgcmV0dXJuIGlkOwogfQogCi0jZGVmaW5lIE5FV19JREVOVElGSUVSKG4pIG5ld19pZGVudGlmaWVyKFNUUihuKSwgYy0+Y19hcmVuYSkKKyNkZWZpbmUgTkVXX0lERU5USUZJRVIobikgbmV3X2lkZW50aWZpZXIoU1RSKG4pLCBjKQogCiAvKiBUaGlzIHJvdXRpbmUgcHJvdmlkZXMgYW4gaW52YWxpZCBvYmplY3QgZm9yIHRoZSBzeW50YXggZXJyb3IuCiAgICBUaGUgb3V0ZXJtb3N0IHJvdXRpbmUgbXVzdCB1bnBhY2sgdGhpcyBlcnJvciBhbmQgY3JlYXRlIHRoZQpAQCAtMjI2LDEzICs3MjIsMTQgQEAKICAgICBzdG10X3R5IHM7CiAgICAgbm9kZSAqY2g7CiAgICAgc3RydWN0IGNvbXBpbGluZyBjOworICAgIG1vZF90eSByZXMgPSBOVUxMOwogCiAgICAgaWYgKGZsYWdzICYmIGZsYWdzLT5jZl9mbGFncyAmIFB5Q0ZfU09VUkNFX0lTX1VURjgpIHsKICAgICAgICAgYy5jX2VuY29kaW5nID0gInV0Zi04IjsKICAgICAgICAgaWYgKFRZUEUobikgPT0gZW5jb2RpbmdfZGVjbCkgewogI2lmIDAKICAgICAgICAgICAgIGFzdF9lcnJvcihuLCAiZW5jb2RpbmcgZGVjbGFyYXRpb24gaW4gVW5pY29kZSBzdHJpbmciKTsKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICBnb3RvIG91dDsKICNlbmRpZgogICAgICAgICAgICAgbiA9IENISUxEKG4sIDApOwogICAgICAgICB9CkBAIC0yNDUsMTMgKzc0MiwxNCBAQAogICAgIH0KICAgICBjLmNfYXJlbmEgPSBhcmVuYTsKICAgICBjLmNfZmlsZW5hbWUgPSBmaWxlbmFtZTsKKyAgICBjLmNfbm9ybWFsaXplID0gYy5jX25vcm1hbGl6ZV9hcmdzID0gTlVMTDsKIAogICAgIGsgPSAwOwogICAgIHN3aXRjaCAoVFlQRShuKSkgewogICAgICAgICBjYXNlIGZpbGVfaW5wdXQ6CiAgICAgICAgICAgICBzdG10cyA9IGFzZGxfc2VxX25ldyhudW1fc3RtdHMobiksIGFyZW5hKTsKICAgICAgICAgICAgIGlmICghc3RtdHMpCi0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICAgICAgZ290byBvdXQ7CiAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgTkNIKG4pIC0gMTsgaSsrKSB7CiAgICAgICAgICAgICAgICAgY2ggPSBDSElMRChuLCBpKTsKICAgICAgICAgICAgICAgICBpZiAoVFlQRShjaCkgPT0gTkVXTElORSkKQEAgLTI2MSw3ICs3NTksNyBAQAogICAgICAgICAgICAgICAgIGlmIChudW0gPT0gMSkgewogICAgICAgICAgICAgICAgICAgICBzID0gYXN0X2Zvcl9zdG10KCZjLCBjaCk7CiAgICAgICAgICAgICAgICAgICAgIGlmICghcykKLSAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG91dDsKICAgICAgICAgICAgICAgICAgICAgYXNkbF9zZXFfU0VUKHN0bXRzLCBrKyssIHMpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbHNlIHsKQEAgLTI3MCw0MiArNzY4LDQ0IEBACiAgICAgICAgICAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCBudW07IGorKykgewogICAgICAgICAgICAgICAgICAgICAgICAgcyA9IGFzdF9mb3Jfc3RtdCgmYywgQ0hJTEQoY2gsIGogKiAyKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXMpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG91dDsKICAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxX1NFVChzdG10cywgaysrLCBzKTsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHJldHVybiBNb2R1bGUoc3RtdHMsIGFyZW5hKTsKKyAgICAgICAgICAgIHJlcyA9IE1vZHVsZShzdG10cywgYXJlbmEpOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgZXZhbF9pbnB1dDogewogICAgICAgICAgICAgZXhwcl90eSB0ZXN0bGlzdF9hc3Q7CiAKICAgICAgICAgICAgIC8qIFhYWCBXaHkgbm90IGNvbXBfZm9yIGhlcmU/ICovCiAgICAgICAgICAgICB0ZXN0bGlzdF9hc3QgPSBhc3RfZm9yX3Rlc3RsaXN0KCZjLCBDSElMRChuLCAwKSk7CiAgICAgICAgICAgICBpZiAoIXRlc3RsaXN0X2FzdCkKLSAgICAgICAgICAgICAgICBnb3RvIGVycm9yOwotICAgICAgICAgICAgcmV0dXJuIEV4cHJlc3Npb24odGVzdGxpc3RfYXN0LCBhcmVuYSk7CisgICAgICAgICAgICAgICAgZ290byBvdXQ7CisgICAgICAgICAgICByZXMgPSBFeHByZXNzaW9uKHRlc3RsaXN0X2FzdCwgYXJlbmEpOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgY2FzZSBzaW5nbGVfaW5wdXQ6CiAgICAgICAgICAgICBpZiAoVFlQRShDSElMRChuLCAwKSkgPT0gTkVXTElORSkgewogICAgICAgICAgICAgICAgIHN0bXRzID0gYXNkbF9zZXFfbmV3KDEsIGFyZW5hKTsKICAgICAgICAgICAgICAgICBpZiAoIXN0bXRzKQotICAgICAgICAgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgICAgICAgICBnb3RvIG91dDsKICAgICAgICAgICAgICAgICBhc2RsX3NlcV9TRVQoc3RtdHMsIDAsIFBhc3Mobi0+bl9saW5lbm8sIG4tPm5fY29sX29mZnNldCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJlbmEpKTsKICAgICAgICAgICAgICAgICBpZiAoIWFzZGxfc2VxX0dFVChzdG10cywgMCkpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIEludGVyYWN0aXZlKHN0bXRzLCBhcmVuYSk7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gb3V0OworICAgICAgICAgICAgICAgIHJlcyA9IEludGVyYWN0aXZlKHN0bXRzLCBhcmVuYSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICBuID0gQ0hJTEQobiwgMCk7CiAgICAgICAgICAgICAgICAgbnVtID0gbnVtX3N0bXRzKG4pOwogICAgICAgICAgICAgICAgIHN0bXRzID0gYXNkbF9zZXFfbmV3KG51bSwgYXJlbmEpOwogICAgICAgICAgICAgICAgIGlmICghc3RtdHMpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgICAgICAgICAgICAgIGdvdG8gb3V0OwogICAgICAgICAgICAgICAgIGlmIChudW0gPT0gMSkgewogICAgICAgICAgICAgICAgICAgICBzID0gYXN0X2Zvcl9zdG10KCZjLCBuKTsKICAgICAgICAgICAgICAgICAgICAgaWYgKCFzKQotICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gb3V0OwogICAgICAgICAgICAgICAgICAgICBhc2RsX3NlcV9TRVQoc3RtdHMsIDAsIHMpOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlbHNlIHsKQEAgLTMxNiwyMSArODE2LDI4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgICBzID0gYXN0X2Zvcl9zdG10KCZjLCBDSElMRChuLCBpKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXMpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBnb3RvIG91dDsKICAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxX1NFVChzdG10cywgaSAvIDIsIHMpOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgfQogCi0gICAgICAgICAgICAgICAgcmV0dXJuIEludGVyYWN0aXZlKHN0bXRzLCBhcmVuYSk7CisgICAgICAgICAgICAgICAgcmVzID0gSW50ZXJhY3RpdmUoc3RtdHMsIGFyZW5hKTsKICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1N5c3RlbUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICJpbnZhbGlkIG5vZGUgJWQgZm9yIFB5QVNUX0Zyb21Ob2RlIiwgVFlQRShuKSk7Ci0gICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICAgICAgZ290byBvdXQ7CiAgICAgfQotIGVycm9yOgotICAgIGFzdF9lcnJvcl9maW5pc2goZmlsZW5hbWUpOwotICAgIHJldHVybiBOVUxMOworIG91dDoKKyAgICBpZiAoYy5jX25vcm1hbGl6ZSkgeworICAgICAgICBQeV9ERUNSRUYoYy5jX25vcm1hbGl6ZSk7CisgICAgICAgIFB5VHVwbGVfU0VUX0lURU0oYy5jX25vcm1hbGl6ZV9hcmdzLCAxLCBOVUxMKTsKKyAgICAgICAgUHlfREVDUkVGKGMuY19ub3JtYWxpemVfYXJncyk7CisgICAgfQorICAgIGlmICghcmVzKQorICAgICAgICBhc3RfZXJyb3JfZmluaXNoKGZpbGVuYW1lKTsKKyAgICByZXR1cm4gcmVzOwogfQogCiAvKiBSZXR1cm4gdGhlIEFTVCByZXByLiBvZiB0aGUgb3BlcmF0b3IgcmVwcmVzZW50ZWQgYXMgc3ludGF4ICh8LCBeLCBldGMuKQpAQCAtNDY4LDYgKzk3NSw3IEBACiAgICAgICAgICAgICBleHByX25hbWUgPSAiZ2VuZXJhdG9yIGV4cHJlc3Npb24iOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgWWllbGRfa2luZDoKKyAgICAgICAgY2FzZSBZaWVsZEZyb21fa2luZDoKICAgICAgICAgICAgIGV4cHJfbmFtZSA9ICJ5aWVsZCBleHByZXNzaW9uIjsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIExpc3RDb21wX2tpbmQ6CkBAIC0xODk1LDEyICsyNDAzLDI1IEBACiAgICAgICAgICAgICB9CiAgICAgICAgICAgICByZXR1cm4gYXN0X2Zvcl9iaW5vcChjLCBuKTsKICAgICAgICAgY2FzZSB5aWVsZF9leHByOiB7CisgICAgICAgICAgICBub2RlICphbiA9IE5VTEw7CisgICAgICAgICAgICBub2RlICplbiA9IE5VTEw7CisgICAgICAgICAgICBpbnQgaXNfZnJvbSA9IDA7CiAgICAgICAgICAgICBleHByX3R5IGV4cCA9IE5VTEw7Ci0gICAgICAgICAgICBpZiAoTkNIKG4pID09IDIpIHsKLSAgICAgICAgICAgICAgICBleHAgPSBhc3RfZm9yX3Rlc3RsaXN0KGMsIENISUxEKG4sIDEpKTsKKyAgICAgICAgICAgIGlmIChOQ0gobikgPiAxKQorICAgICAgICAgICAgICAgIGFuID0gQ0hJTEQobiwgMSk7IC8qIHlpZWxkX2FyZyAqLworICAgICAgICAgICAgaWYgKGFuKSB7CisgICAgICAgICAgICAgICAgZW4gPSBDSElMRChhbiwgTkNIKGFuKSAtIDEpOworICAgICAgICAgICAgICAgIGlmIChOQ0goYW4pID09IDIpIHsKKyAgICAgICAgICAgICAgICAgICAgaXNfZnJvbSA9IDE7CisgICAgICAgICAgICAgICAgICAgIGV4cCA9IGFzdF9mb3JfZXhwcihjLCBlbik7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgZXhwID0gYXN0X2Zvcl90ZXN0bGlzdChjLCBlbik7CiAgICAgICAgICAgICAgICAgaWYgKCFleHApCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKGlzX2Zyb20pCisgICAgICAgICAgICAgICAgcmV0dXJuIFlpZWxkRnJvbShleHAsIExJTkVOTyhuKSwgbi0+bl9jb2xfb2Zmc2V0LCBjLT5jX2FyZW5hKTsKICAgICAgICAgICAgIHJldHVybiBZaWVsZChleHAsIExJTkVOTyhuKSwgbi0+bl9jb2xfb2Zmc2V0LCBjLT5jX2FyZW5hKTsKICAgICAgICAgfQogICAgICAgICBjYXNlIGZhY3RvcjoKQEAgLTE5MjUsNyArMjQ0Niw3IEBACiAgICAgLyoKICAgICAgIGFyZ2xpc3Q6IChhcmd1bWVudCAnLCcpKiAoYXJndW1lbnQgWycsJ118ICcqJyB0ZXN0IFsnLCcgJyoqJyB0ZXN0XQogICAgICAgICAgICAgICAgfCAnKionIHRlc3QpCi0gICAgICBhcmd1bWVudDogW3Rlc3QgJz0nXSB0ZXN0IFtjb21wX2Zvcl0gICAgICAgICMgUmVhbGx5IFtrZXl3b3JkICc9J10gdGVzdAorICAgICAgYXJndW1lbnQ6IFt0ZXN0ICc9J10gKHRlc3QpIFtjb21wX2Zvcl0gICAgICAgICMgUmVhbGx5IFtrZXl3b3JkICc9J10gdGVzdAogICAgICovCiAKICAgICBpbnQgaSwgbmFyZ3MsIG5rZXl3b3JkcywgbmdlbnM7CkBAIC0yMDA5LDEzICsyNTMwLDEzIEBACiAgICAgICAgICAgICAgICAgICogdGhlbiBpcyB2ZXJ5IGNvbmZ1c2luZy4KICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICBpZiAoZS0+a2luZCA9PSBMYW1iZGFfa2luZCkgewotICAgICAgICAgICAgICAgICAgYXN0X2Vycm9yKENISUxEKGNoLCAwKSwgImxhbWJkYSBjYW5ub3QgY29udGFpbiBhc3NpZ25tZW50Iik7Ci0gICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgICAgICAgICAgYXN0X2Vycm9yKENISUxEKGNoLCAwKSwgImxhbWJkYSBjYW5ub3QgY29udGFpbiBhc3NpZ25tZW50Iik7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZS0+a2luZCAhPSBOYW1lX2tpbmQpIHsKLSAgICAgICAgICAgICAgICAgIGFzdF9lcnJvcihDSElMRChjaCwgMCksICJrZXl3b3JkIGNhbid0IGJlIGFuIGV4cHJlc3Npb24iKTsKLSAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgICAgICAgICBhc3RfZXJyb3IoQ0hJTEQoY2gsIDApLCAia2V5d29yZCBjYW4ndCBiZSBhbiBleHByZXNzaW9uIik7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZm9yYmlkZGVuX25hbWUoZS0+di5OYW1lLmlkLCBjaCwgMSkpIHsKLSAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAga2V5ID0gZS0+di5OYW1lLmlkOwogICAgICAgICAgICAgICAgIGZvciAoayA9IDA7IGsgPCBua2V5d29yZHM7IGsrKykgewpAQCAtMjIxOSw3ICsyNzQwLDcgQEAKICAgICAgIGNvbnRpbnVlX3N0bXQ6ICdjb250aW51ZScKICAgICAgIHJldHVybl9zdG10OiAncmV0dXJuJyBbdGVzdGxpc3RdCiAgICAgICB5aWVsZF9zdG10OiB5aWVsZF9leHByCi0gICAgICB5aWVsZF9leHByOiAneWllbGQnIHRlc3RsaXN0CisgICAgICB5aWVsZF9leHByOiAneWllbGQnIHRlc3RsaXN0IHwgJ3lpZWxkJyAnZnJvbScgdGVzdAogICAgICAgcmFpc2Vfc3RtdDogJ3JhaXNlJyBbdGVzdCBbJywnIHRlc3QgWycsJyB0ZXN0XV1dCiAgICAgKi8KICAgICBub2RlICpjaDsKQEAgLTI4OTMsNyArMzQxNCw3IEBACiB7CiAgICAgY29uc3QgaW50IG5jaCA9IE5DSChuKTsKICAgICBpbnQgbl9leGNlcHQgPSAobmNoIC0gMykvMzsKLSAgICBhc2RsX3NlcSAqYm9keSwgKm9yZWxzZSA9IE5VTEwsICpmaW5hbGx5ID0gTlVMTDsKKyAgICBhc2RsX3NlcSAqYm9keSwgKmhhbmRsZXJzID0gTlVMTCwgKm9yZWxzZSA9IE5VTEwsICpmaW5hbGx5ID0gTlVMTDsKIAogICAgIFJFUShuLCB0cnlfc3RtdCk7CiAKQEAgLTI5MzQsOSArMzQ1NSw4IEBACiAKICAgICBpZiAobl9leGNlcHQgPiAwKSB7CiAgICAgICAgIGludCBpOwotICAgICAgICBzdG10X3R5IGV4Y2VwdF9zdDsKICAgICAgICAgLyogcHJvY2VzcyBleGNlcHQgc3RhdGVtZW50cyB0byBjcmVhdGUgYSB0cnkgLi4uIGV4Y2VwdCAqLwotICAgICAgICBhc2RsX3NlcSAqaGFuZGxlcnMgPSBhc2RsX3NlcV9uZXcobl9leGNlcHQsIGMtPmNfYXJlbmEpOworICAgICAgICBoYW5kbGVycyA9IGFzZGxfc2VxX25ldyhuX2V4Y2VwdCwgYy0+Y19hcmVuYSk7CiAgICAgICAgIGlmIChoYW5kbGVycyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAKQEAgLTI5NDcsMjggKzM0NjcsMTUgQEAKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgICAgIGFzZGxfc2VxX1NFVChoYW5kbGVycywgaSwgZSk7CiAgICAgICAgIH0KLQotICAgICAgICBleGNlcHRfc3QgPSBUcnlFeGNlcHQoYm9keSwgaGFuZGxlcnMsIG9yZWxzZSwgTElORU5PKG4pLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbi0+bl9jb2xfb2Zmc2V0LCBjLT5jX2FyZW5hKTsKLSAgICAgICAgaWYgKCFmaW5hbGx5KQotICAgICAgICAgICAgcmV0dXJuIGV4Y2VwdF9zdDsKLQotICAgICAgICAvKiBpZiBhICdmaW5hbGx5JyBpcyBwcmVzZW50IHRvbywgd2UgbmVzdCB0aGUgVHJ5RXhjZXB0IHdpdGhpbiBhCi0gICAgICAgICAgIFRyeUZpbmFsbHkgdG8gZW11bGF0ZSB0cnkgLi4uIGV4Y2VwdCAuLi4gZmluYWxseSAqLwotICAgICAgICBib2R5ID0gYXNkbF9zZXFfbmV3KDEsIGMtPmNfYXJlbmEpOwotICAgICAgICBpZiAoYm9keSA9PSBOVUxMKQotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGFzZGxfc2VxX1NFVChib2R5LCAwLCBleGNlcHRfc3QpOwogICAgIH0KIAotICAgIC8qIG11c3QgYmUgYSB0cnkgLi4uIGZpbmFsbHkgKGV4Y2VwdCBjbGF1c2VzIGFyZSBpbiBib2R5LCBpZiBhbnkgZXhpc3QpICovCi0gICAgYXNzZXJ0KGZpbmFsbHkgIT0gTlVMTCk7Ci0gICAgcmV0dXJuIFRyeUZpbmFsbHkoYm9keSwgZmluYWxseSwgTElORU5PKG4pLCBuLT5uX2NvbF9vZmZzZXQsIGMtPmNfYXJlbmEpOworICAgIGFzc2VydChmaW5hbGx5ICE9IE5VTEwgfHwgYXNkbF9zZXFfTEVOKGhhbmRsZXJzKSk7CisgICAgcmV0dXJuIFRyeShib2R5LCBoYW5kbGVycywgb3JlbHNlLCBmaW5hbGx5LCBMSU5FTk8obiksIG4tPm5fY29sX29mZnNldCwgYy0+Y19hcmVuYSk7CiB9CiAKIC8qIHdpdGhfaXRlbTogdGVzdCBbJ2FzJyBleHByXSAqLwotc3RhdGljIHN0bXRfdHkKLWFzdF9mb3Jfd2l0aF9pdGVtKHN0cnVjdCBjb21waWxpbmcgKmMsIGNvbnN0IG5vZGUgKm4sIGFzZGxfc2VxICpjb250ZW50KQorc3RhdGljIHdpdGhpdGVtX3R5Cithc3RfZm9yX3dpdGhfaXRlbShzdHJ1Y3QgY29tcGlsaW5nICpjLCBjb25zdCBub2RlICpuKQogewogICAgIGV4cHJfdHkgY29udGV4dF9leHByLCBvcHRpb25hbF92YXJzID0gTlVMTDsKIApAQCAtMjk4Nyw0MyArMzQ5NCwzMiBAQAogICAgICAgICB9CiAgICAgfQogCi0gICAgcmV0dXJuIFdpdGgoY29udGV4dF9leHByLCBvcHRpb25hbF92YXJzLCBjb250ZW50LCBMSU5FTk8obiksCi0gICAgICAgICAgICAgICAgbi0+bl9jb2xfb2Zmc2V0LCBjLT5jX2FyZW5hKTsKKyAgICByZXR1cm4gd2l0aGl0ZW0oY29udGV4dF9leHByLCBvcHRpb25hbF92YXJzLCBjLT5jX2FyZW5hKTsKIH0KIAogLyogd2l0aF9zdG10OiAnd2l0aCcgd2l0aF9pdGVtICgnLCcgd2l0aF9pdGVtKSogJzonIHN1aXRlICovCiBzdGF0aWMgc3RtdF90eQogYXN0X2Zvcl93aXRoX3N0bXQoc3RydWN0IGNvbXBpbGluZyAqYywgY29uc3Qgbm9kZSAqbikKIHsKLSAgICBpbnQgaTsKLSAgICBzdG10X3R5IHJldDsKLSAgICBhc2RsX3NlcSAqaW5uZXI7CisgICAgaW50IGksIG5faXRlbXM7CisgICAgYXNkbF9zZXEgKml0ZW1zLCAqYm9keTsKIAogICAgIFJFUShuLCB3aXRoX3N0bXQpOwogCi0gICAgLyogcHJvY2VzcyB0aGUgd2l0aCBpdGVtcyBpbnNpZGUtb3V0ICovCi0gICAgaSA9IE5DSChuKSAtIDE7Ci0gICAgLyogdGhlIHN1aXRlIG9mIHRoZSBpbm5lcm1vc3Qgd2l0aCBpdGVtIGlzIHRoZSBzdWl0ZSBvZiB0aGUgd2l0aCBzdG10ICovCi0gICAgaW5uZXIgPSBhc3RfZm9yX3N1aXRlKGMsIENISUxEKG4sIGkpKTsKLSAgICBpZiAoIWlubmVyKQotICAgICAgICByZXR1cm4gTlVMTDsKLQotICAgIGZvciAoOzspIHsKLSAgICAgICAgaSAtPSAyOwotICAgICAgICByZXQgPSBhc3RfZm9yX3dpdGhfaXRlbShjLCBDSElMRChuLCBpKSwgaW5uZXIpOwotICAgICAgICBpZiAoIXJldCkKKyAgICBuX2l0ZW1zID0gKE5DSChuKSAtIDIpIC8gMjsKKyAgICBpdGVtcyA9IGFzZGxfc2VxX25ldyhuX2l0ZW1zLCBjLT5jX2FyZW5hKTsKKyAgICBmb3IgKGkgPSAxOyBpIDwgTkNIKG4pIC0gMjsgaSArPSAyKSB7CisgICAgICAgIHdpdGhpdGVtX3R5IGl0ZW0gPSBhc3RfZm9yX3dpdGhfaXRlbShjLCBDSElMRChuLCBpKSk7CisgICAgICAgIGlmICghaXRlbSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAvKiB3YXMgdGhpcyB0aGUgbGFzdCBpdGVtPyAqLwotICAgICAgICBpZiAoaSA9PSAxKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIC8qIGlmIG5vdCwgd3JhcCB0aGUgcmVzdWx0IHNvIGZhciBpbiBhIG5ldyBzZXF1ZW5jZSAqLwotICAgICAgICBpbm5lciA9IGFzZGxfc2VxX25ldygxLCBjLT5jX2FyZW5hKTsKLSAgICAgICAgaWYgKCFpbm5lcikKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBhc2RsX3NlcV9TRVQoaW5uZXIsIDAsIHJldCk7CisgICAgICAgIGFzZGxfc2VxX1NFVChpdGVtcywgKGkgLSAxKSAvIDIsIGl0ZW0pOwogICAgIH0KIAotICAgIHJldHVybiByZXQ7CisgICAgYm9keSA9IGFzdF9mb3Jfc3VpdGUoYywgQ0hJTEQobiwgTkNIKG4pIC0gMSkpOworICAgIGlmICghYm9keSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXR1cm4gV2l0aChpdGVtcywgYm9keSwgTElORU5PKG4pLCBuLT5uX2NvbF9vZmZzZXQsIGMtPmNfYXJlbmEpOwogfQogCiBzdGF0aWMgc3RtdF90eQpAQCAtMzIwNywyMCArMzcwMywxNCBAQAogfQogCiBzdGF0aWMgUHlPYmplY3QgKgotZGVjb2RlX3V0Zjgoc3RydWN0IGNvbXBpbGluZyAqYywgY29uc3QgY2hhciAqKnNQdHIsIGNvbnN0IGNoYXIgKmVuZCwgY2hhciogZW5jb2RpbmcpCitkZWNvZGVfdXRmOChzdHJ1Y3QgY29tcGlsaW5nICpjLCBjb25zdCBjaGFyICoqc1B0ciwgY29uc3QgY2hhciAqZW5kKQogewotICAgIFB5T2JqZWN0ICp1LCAqdjsKICAgICBjaGFyICpzLCAqdDsKICAgICB0ID0gcyA9IChjaGFyICopKnNQdHI7CiAgICAgLyogd2hpbGUgKHMgPCBlbmQgJiYgKnMgIT0gJ1xcJykgcysrOyAqLyAvKiBpbmVmZmljaWVudCBmb3IgdSIuLiIgKi8KICAgICB3aGlsZSAocyA8IGVuZCAmJiAoKnMgJiAweDgwKSkgcysrOwogICAgICpzUHRyID0gczsKLSAgICB1ID0gUHlVbmljb2RlX0RlY29kZVVURjgodCwgcyAtIHQsIE5VTEwpOwotICAgIGlmICh1ID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOwotICAgIHYgPSBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKHUsIGVuY29kaW5nLCBOVUxMKTsKLSAgICBQeV9ERUNSRUYodSk7Ci0gICAgcmV0dXJuIHY7CisgICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVVVEY4KHQsIHMgLSB0LCBOVUxMKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTMyMzIsNyArMzcyMiw2IEBACiAgICAgY29uc3QgY2hhciAqZW5kOwogCiAgICAgaWYgKGVuY29kaW5nID09IE5VTEwpIHsKLSAgICAgICAgYnVmID0gKGNoYXIgKilzOwogICAgICAgICB1ID0gTlVMTDsKICAgICB9IGVsc2UgewogICAgICAgICAvKiBjaGVjayBmb3IgaW50ZWdlciBvdmVyZmxvdyAqLwpAQCAtMzI1NSwyMiArMzc0NCwyMCBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKCpzICYgMHg4MCkgeyAvKiBYWFggaW5lZmZpY2llbnQgKi8KICAgICAgICAgICAgICAgICBQeU9iamVjdCAqdzsKLSAgICAgICAgICAgICAgICBjaGFyICpyOwotICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgcm4sIGk7Ci0gICAgICAgICAgICAgICAgdyA9IGRlY29kZV91dGY4KGMsICZzLCBlbmQsICJ1dGYtMzItYmUiKTsKKyAgICAgICAgICAgICAgICBpbnQga2luZDsKKyAgICAgICAgICAgICAgICB2b2lkICpkYXRhOworICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuLCBpOworICAgICAgICAgICAgICAgIHcgPSBkZWNvZGVfdXRmOChjLCAmcywgZW5kKTsKICAgICAgICAgICAgICAgICBpZiAodyA9PSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih1KTsKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIHIgPSBQeUJ5dGVzX0FTX1NUUklORyh3KTsKLSAgICAgICAgICAgICAgICBybiA9IFB5X1NJWkUodyk7Ci0gICAgICAgICAgICAgICAgYXNzZXJ0KHJuICUgNCA9PSAwKTsKLSAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgcm47IGkgKz0gNCkgewotICAgICAgICAgICAgICAgICAgICBzcHJpbnRmKHAsICJcXFUlMDJ4JTAyeCUwMnglMDJ4IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByW2kgKyAwXSAmIDB4RkYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcltpICsgMV0gJiAweEZGLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJbaSArIDJdICYgMHhGRiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICByW2kgKyAzXSAmIDB4RkYpOworICAgICAgICAgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORCh3KTsKKyAgICAgICAgICAgICAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEodyk7CisgICAgICAgICAgICAgICAgbGVuID0gUHlVbmljb2RlX0dFVF9MRU5HVEgodyk7CisgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X1VDUzQgY2hyID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICAgICAgICAgICAgICAgIHNwcmludGYocCwgIlxcVSUwOHgiLCBjaHIpOwogICAgICAgICAgICAgICAgICAgICBwICs9IDEwOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAvKiBTaG91bGQgYmUgaW1wb3NzaWJsZSB0byBvdmVyZmxvdyAqLwpAQCAtMzMwNCwxMyArMzc5MSwxOCBAQAogICAgIGludCByYXdtb2RlID0gMDsKICAgICBpbnQgbmVlZF9lbmNvZGluZzsKICAgICBpZiAoaXNhbHBoYShxdW90ZSkpIHsKLSAgICAgICAgaWYgKHF1b3RlID09ICdiJyB8fCBxdW90ZSA9PSAnQicpIHsKLSAgICAgICAgICAgIHF1b3RlID0gKisrczsKLSAgICAgICAgICAgICpieXRlc21vZGUgPSAxOwotICAgICAgICB9Ci0gICAgICAgIGlmIChxdW90ZSA9PSAncicgfHwgcXVvdGUgPT0gJ1InKSB7Ci0gICAgICAgICAgICBxdW90ZSA9ICorK3M7Ci0gICAgICAgICAgICByYXdtb2RlID0gMTsKKyAgICAgICAgd2hpbGUgKCEqYnl0ZXNtb2RlIHx8ICFyYXdtb2RlKSB7CisgICAgICAgICAgICBpZiAocXVvdGUgPT0gJ2InIHx8IHF1b3RlID09ICdCJykgeworICAgICAgICAgICAgICAgIHF1b3RlID0gKisrczsKKyAgICAgICAgICAgICAgICAqYnl0ZXNtb2RlID0gMTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgaWYgKHF1b3RlID09ICdyJyB8fCBxdW90ZSA9PSAnUicpIHsKKyAgICAgICAgICAgICAgICBxdW90ZSA9ICorK3M7CisgICAgICAgICAgICAgICAgcmF3bW9kZSA9IDE7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KICAgICBpZiAocXVvdGUgIT0gJ1wnJyAmJiBxdW90ZSAhPSAnXCInKSB7CmRpZmYgLS1naXQgYS9QeXRob24vYmx0aW5tb2R1bGUuYyBiL1B5dGhvbi9ibHRpbm1vZHVsZS5jCmluZGV4IGUyZmYwYmEuLjgxNDAyZmMgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9ibHRpbm1vZHVsZS5jCisrKyBiL1B5dGhvbi9ibHRpbm1vZHVsZS5jCkBAIC02LDYgKzYsOSBAQAogI2luY2x1ZGUgIm5vZGUuaCIKICNpbmNsdWRlICJjb2RlLmgiCiAKKyNpbmNsdWRlICJhc2RsLmgiCisjaW5jbHVkZSAiYXN0LmgiCisKICNpbmNsdWRlIDxjdHlwZS5oPgogCiAjaWZkZWYgSEFWRV9MQU5HSU5GT19ICkBAIC0xOCwyMCArMjEsMjAgQEAKICAgIERvbid0IGZvcmdldCB0byBtb2RpZnkgUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdCgpIGlmIHlvdSB0b3VjaCBhbnkgb2YgdGhlCiAgICB2YWx1ZXMgZm9yIFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmchCiAqLwotI2lmIGRlZmluZWQoTVNfV0lORE9XUykgJiYgZGVmaW5lZChIQVZFX1VTQUJMRV9XQ0hBUl9UKQorI2lmZGVmIEhBVkVfTUJDUwogY29uc3QgY2hhciAqUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyA9ICJtYmNzIjsKIGludCBQeV9IYXNGaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nID0gMTsKICNlbGlmIGRlZmluZWQoX19BUFBMRV9fKQogY29uc3QgY2hhciAqUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyA9ICJ1dGYtOCI7CiBpbnQgUHlfSGFzRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyA9IDE7Ci0jZWxpZiBkZWZpbmVkKEhBVkVfTEFOR0lORk9fSCkgJiYgZGVmaW5lZChDT0RFU0VUKQorI2Vsc2UKIGNvbnN0IGNoYXIgKlB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPSBOVUxMOyAvKiBzZXQgYnkgaW5pdGZzZW5jb2RpbmcoKSAqLwogaW50IFB5X0hhc0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPSAwOwotI2Vsc2UKLWNvbnN0IGNoYXIgKlB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPSAidXRmLTgiOwotaW50IFB5X0hhc0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPSAxOwogI2VuZGlmCiAKK19QeV9JREVOVElGSUVSKGZpbGVubyk7CitfUHlfSURFTlRJRklFUihmbHVzaCk7CisKIHN0YXRpYyBQeU9iamVjdCAqCiBidWlsdGluX19fYnVpbGRfY2xhc3NfXyhQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MsIFB5T2JqZWN0ICprd2RzKQogewpAQCAtMzksNiArNDIsNyBAQAogICAgIFB5T2JqZWN0ICpjbHMgPSBOVUxMOwogICAgIFB5X3NzaXplX3QgbmFyZ3M7CiAgICAgaW50IGlzY2xhc3M7CisgICAgX1B5X0lERU5USUZJRVIoX19wcmVwYXJlX18pOwogCiAgICAgYXNzZXJ0KGFyZ3MgIT0gTlVMTCk7CiAgICAgaWYgKCFQeVR1cGxlX0NoZWNrKGFyZ3MpKSB7CkBAIC05OSw2ICsxMDMsNyBAQAogICAgICAgICBQeV9JTkNSRUYobWV0YSk7CiAgICAgICAgIGlzY2xhc3MgPSAxOyAgLyogbWV0YSBpcyByZWFsbHkgYSBjbGFzcyAqLwogICAgIH0KKwogICAgIGlmIChpc2NsYXNzKSB7CiAgICAgICAgIC8qIG1ldGEgaXMgcmVhbGx5IGEgY2xhc3MsIHNvIGNoZWNrIGZvciBhIG1vcmUgZGVyaXZlZAogICAgICAgICAgICBtZXRhY2xhc3MsIG9yIHBvc3NpYmxlIG1ldGFjbGFzcyBjb25mbGljdHM6ICovCkBAIC0xMTgsNyArMTIzLDcgQEAKICAgICB9CiAgICAgLyogZWxzZTogbWV0YSBpcyBub3QgYSBjbGFzcywgc28gd2UgY2Fubm90IGRvIHRoZSBtZXRhY2xhc3MKICAgICAgICBjYWxjdWxhdGlvbiwgc28gd2Ugd2lsbCB1c2UgdGhlIGV4cGxpY2l0bHkgZ2l2ZW4gb2JqZWN0IGFzIGl0IGlzICovCi0gICAgcHJlcCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcobWV0YSwgIl9fcHJlcGFyZV9fIik7CisgICAgcHJlcCA9IF9QeU9iamVjdF9HZXRBdHRySWQobWV0YSwgJlB5SWRfX19wcmVwYXJlX18pOwogICAgIGlmIChwcmVwID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKSB7CiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwpAQCAtMTgxLDE3ICsxODYsMTQgQEAKIHsKICAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7Im5hbWUiLCAiZ2xvYmFscyIsICJsb2NhbHMiLCAiZnJvbWxpc3QiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGV2ZWwiLCAwfTsKLSAgICBjaGFyICpuYW1lOwotICAgIFB5T2JqZWN0ICpnbG9iYWxzID0gTlVMTDsKLSAgICBQeU9iamVjdCAqbG9jYWxzID0gTlVMTDsKLSAgICBQeU9iamVjdCAqZnJvbWxpc3QgPSBOVUxMOworICAgIFB5T2JqZWN0ICpuYW1lLCAqZ2xvYmFscyA9IE5VTEwsICpsb2NhbHMgPSBOVUxMLCAqZnJvbWxpc3QgPSBOVUxMOwogICAgIGludCBsZXZlbCA9IC0xOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoYXJncywga3dkcywgInN8T09PaTpfX2ltcG9ydF9fIiwKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAiVXxPT09pOl9faW1wb3J0X18iLAogICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZuYW1lLCAmZ2xvYmFscywgJmxvY2FscywgJmZyb21saXN0LCAmbGV2ZWwpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXR1cm4gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWwobmFtZSwgZ2xvYmFscywgbG9jYWxzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tbGlzdCwgbGV2ZWwpOworICAgIHJldHVybiBQeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbE9iamVjdChuYW1lLCBnbG9iYWxzLCBsb2NhbHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb21saXN0LCBsZXZlbCk7CiB9CiAKIFB5RG9jX1NUUlZBUihpbXBvcnRfZG9jLApAQCAtNTE2LDE3ICs1MTgsMTAgQEAKICAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21PcmRpbmFsKHgpOwogfQogCi1QeURvY19WQVIoY2hyX2RvYykgPSBQeURvY19TVFIoCitQeURvY19TVFJWQVIoY2hyX2RvYywKICJjaHIoaSkgLT4gVW5pY29kZSBjaGFyYWN0ZXJcblwKIFxuXAotUmV0dXJuIGEgVW5pY29kZSBzdHJpbmcgb2Ygb25lIGNoYXJhY3RlciB3aXRoIG9yZGluYWwgaTsgMCA8PSBpIDw9IDB4MTBmZmZmLiIKLSkKLSNpZm5kZWYgUHlfVU5JQ09ERV9XSURFCi1QeURvY19TVFIoCi0iXG5JZiAweDEwMDAwIDw9IGksIGEgc3Vycm9nYXRlIHBhaXIgaXMgcmV0dXJuZWQuIgotKQotI2VuZGlmCi07CitSZXR1cm4gYSBVbmljb2RlIHN0cmluZyBvZiBvbmUgY2hhcmFjdGVyIHdpdGggb3JkaW5hbCBpOyAwIDw9IGkgPD0gMHgxMGZmZmYuIik7CiAKIAogc3RhdGljIGNoYXIgKgpAQCAtNTM3LDggKzUzMiw4IEBACiAKICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKGNtZCkpIHsKICAgICAgICAgY2YtPmNmX2ZsYWdzIHw9IFB5Q0ZfSUdOT1JFX0NPT0tJRTsKLSAgICAgICAgY21kID0gX1B5VW5pY29kZV9Bc0RlZmF1bHRFbmNvZGVkU3RyaW5nKGNtZCwgTlVMTCk7Ci0gICAgICAgIGlmIChjbWQgPT0gTlVMTCkKKyAgICAgICAgc3RyID0gUHlVbmljb2RlX0FzVVRGOEFuZFNpemUoY21kLCAmc2l6ZSk7CisgICAgICAgIGlmIChzdHIgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KICAgICBlbHNlIGlmICghUHlPYmplY3RfQ2hlY2tSZWFkQnVmZmVyKGNtZCkpIHsKQEAgLTU0Nyw5ICs1NDIsMTAgQEAKICAgICAgICAgICBmdW5jbmFtZSwgd2hhdCk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBpZiAoUHlPYmplY3RfQXNSZWFkQnVmZmVyKGNtZCwgKGNvbnN0IHZvaWQgKiopJnN0ciwgJnNpemUpIDwgMCkgeworICAgIGVsc2UgaWYgKFB5T2JqZWN0X0FzUmVhZEJ1ZmZlcihjbWQsIChjb25zdCB2b2lkICoqKSZzdHIsICZzaXplKSA8IDApIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorCiAgICAgaWYgKHN0cmxlbihzdHIpICE9IHNpemUpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJzb3VyY2UgY29kZSBzdHJpbmcgY2Fubm90IGNvbnRhaW4gbnVsbCBieXRlcyIpOwpAQCAtNjM2LDYgKzYzMiwxMCBAQAogICAgICAgICAgICAgICAgIFB5QXJlbmFfRnJlZShhcmVuYSk7CiAgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmICghUHlBU1RfVmFsaWRhdGUobW9kKSkgeworICAgICAgICAgICAgICAgIFB5QXJlbmFfRnJlZShhcmVuYSk7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgICAgIH0KICAgICAgICAgICAgIHJlc3VsdCA9IChQeU9iamVjdCopUHlBU1RfQ29tcGlsZUV4KG1vZCwgZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY2YsIG9wdGltaXplLCBhcmVuYSk7CiAgICAgICAgICAgICBQeUFyZW5hX0ZyZWUoYXJlbmEpOwpAQCAtNzkxLDcgKzc5MSw2IEBACiB7CiAgICAgUHlPYmplY3QgKnY7CiAgICAgUHlPYmplY3QgKnByb2csICpnbG9iYWxzID0gUHlfTm9uZSwgKmxvY2FscyA9IFB5X05vbmU7Ci0gICAgaW50IHBsYWluID0gMDsKIAogICAgIGlmICghUHlBcmdfVW5wYWNrVHVwbGUoYXJncywgImV4ZWMiLCAxLCAzLCAmcHJvZywgJmdsb2JhbHMsICZsb2NhbHMpKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTgwMCw3ICs3OTksNiBAQAogICAgICAgICBnbG9iYWxzID0gUHlFdmFsX0dldEdsb2JhbHMoKTsKICAgICAgICAgaWYgKGxvY2FscyA9PSBQeV9Ob25lKSB7CiAgICAgICAgICAgICBsb2NhbHMgPSBQeUV2YWxfR2V0TG9jYWxzKCk7Ci0gICAgICAgICAgICBwbGFpbiA9IDE7CiAgICAgICAgIH0KICAgICAgICAgaWYgKCFnbG9iYWxzIHx8ICFsb2NhbHMpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwKQEAgLTExMTYsNyArMTExNCw3IEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmICghUHlJdGVyX0NoZWNrKGl0KSkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgIiUuMjAwcyBvYmplY3QgaXMgbm90IGFuIGl0ZXJhdG9yIiwKKyAgICAgICAgICAgICInJS4yMDBzJyBvYmplY3QgaXMgbm90IGFuIGl0ZXJhdG9yIiwKICAgICAgICAgICAgIGl0LT5vYl90eXBlLT50cF9uYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMTQyMiwyNCArMTQyMCwxMyBAQAogICAgICAgICB9CiAgICAgfQogICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjayhvYmopKSB7Ci0gICAgICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX1NJWkUob2JqKTsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShvYmopID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIHNpemUgPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChvYmopOwogICAgICAgICBpZiAoc2l6ZSA9PSAxKSB7Ci0gICAgICAgICAgICBvcmQgPSAobG9uZykqUHlVbmljb2RlX0FTX1VOSUNPREUob2JqKTsKKyAgICAgICAgICAgIG9yZCA9IChsb25nKVB5VW5pY29kZV9SRUFEX0NIQVIob2JqLCAwKTsKICAgICAgICAgICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcob3JkKTsKICAgICAgICAgfQotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgaWYgKHNpemUgPT0gMikgewotICAgICAgICAgICAgLyogRGVjb2RlIGEgdmFsaWQgc3Vycm9nYXRlIHBhaXIgKi8KLSAgICAgICAgICAgIGludCBjMCA9IFB5VW5pY29kZV9BU19VTklDT0RFKG9iailbMF07Ci0gICAgICAgICAgICBpbnQgYzEgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShvYmopWzFdOwotICAgICAgICAgICAgaWYgKDB4RDgwMCA8PSBjMCAmJiBjMCA8PSAweERCRkYgJiYKLSAgICAgICAgICAgICAgICAweERDMDAgPD0gYzEgJiYgYzEgPD0gMHhERkZGKSB7Ci0gICAgICAgICAgICAgICAgb3JkID0gKCgoKGMwICYgMHgwM0ZGKSA8PCAxMCkgfCAoYzEgJiAweDAzRkYpKSArCi0gICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMTAwMDApOwotICAgICAgICAgICAgICAgIHJldHVybiBQeUxvbmdfRnJvbUxvbmcob3JkKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotI2VuZGlmCiAgICAgfQogICAgIGVsc2UgaWYgKFB5Qnl0ZUFycmF5X0NoZWNrKG9iaikpIHsKICAgICAgICAgLyogWFhYIEhvcGVmdWxseSB0aGlzIGlzIHRlbXBvcmFyeSAqLwpAQCAtMTQ5NywxNSArMTQ4NCwxNSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGJ1aWx0aW5fcHJpbnQoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzLCBQeU9iamVjdCAqa3dkcykKIHsKLSAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InNlcCIsICJlbmQiLCAiZmlsZSIsIDB9OworICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsic2VwIiwgImVuZCIsICJmaWxlIiwgImZsdXNoIiwgMH07CiAgICAgc3RhdGljIFB5T2JqZWN0ICpkdW1teV9hcmdzOwotICAgIFB5T2JqZWN0ICpzZXAgPSBOVUxMLCAqZW5kID0gTlVMTCwgKmZpbGUgPSBOVUxMOworICAgIFB5T2JqZWN0ICpzZXAgPSBOVUxMLCAqZW5kID0gTlVMTCwgKmZpbGUgPSBOVUxMLCAqZmx1c2ggPSBOVUxMOwogICAgIGludCBpLCBlcnI7CiAKICAgICBpZiAoZHVtbXlfYXJncyA9PSBOVUxMICYmICEoZHVtbXlfYXJncyA9IFB5VHVwbGVfTmV3KDApKSkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKGR1bW15X2FyZ3MsIGt3ZHMsICJ8T09POnByaW50IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZzZXAsICZlbmQsICZmaWxlKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlQW5kS2V5d29yZHMoZHVtbXlfYXJncywga3dkcywgInxPT09POnByaW50IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrd2xpc3QsICZzZXAsICZlbmQsICZmaWxlLCAmZmx1c2gpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoZmlsZSA9PSBOVUxMIHx8IGZpbGUgPT0gUHlfTm9uZSkgewogICAgICAgICBmaWxlID0gUHlTeXNfR2V0T2JqZWN0KCJzdGRvdXQiKTsKQEAgLTE1NTYsNiArMTU0MywyMCBAQAogICAgIGlmIChlcnIpCiAgICAgICAgIHJldHVybiBOVUxMOwogCisgICAgaWYgKGZsdXNoICE9IE5VTEwpIHsKKyAgICAgICAgUHlPYmplY3QgKnRtcDsKKyAgICAgICAgaW50IGRvX2ZsdXNoID0gUHlPYmplY3RfSXNUcnVlKGZsdXNoKTsKKyAgICAgICAgaWYgKGRvX2ZsdXNoID09IC0xKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGVsc2UgaWYgKGRvX2ZsdXNoKSB7CisgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGZpbGUsICJmbHVzaCIsICIiKTsKKyAgICAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYodG1wKTsKKyAgICAgICAgfQorICAgIH0KKwogICAgIFB5X1JFVFVSTl9OT05FOwogfQogCkBAIC0xNjAyLDcgKzE2MDMsNyBAQAogICAgIH0KIAogICAgIC8qIEZpcnN0IG9mIGFsbCwgZmx1c2ggc3RkZXJyICovCi0gICAgdG1wID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmZXJyLCAiZmx1c2giLCAiIik7CisgICAgdG1wID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmZXJyLCAmUHlJZF9mbHVzaCwgIiIpOwogICAgIGlmICh0bXAgPT0gTlVMTCkKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICBlbHNlCkBAIC0xNjExLDcgKzE2MTIsNyBAQAogICAgIC8qIFdlIHNob3VsZCBvbmx5IHVzZSAoR05VKSByZWFkbGluZSBpZiBQeXRob24ncyBzeXMuc3RkaW4gYW5kCiAgICAgICAgc3lzLnN0ZG91dCBhcmUgdGhlIHNhbWUgYXMgQydzIHN0ZGluIGFuZCBzdGRvdXQsIGJlY2F1c2Ugd2UKICAgICAgICBuZWVkIHRvIHBhc3MgaXQgdGhvc2UuICovCi0gICAgdG1wID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmaW4sICJmaWxlbm8iLCAiIik7CisgICAgdG1wID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmaW4sICZQeUlkX2ZpbGVubywgIiIpOwogICAgIGlmICh0bXAgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICB0dHkgPSAwOwpAQCAtMTYyNCw3ICsxNjI1LDcgQEAKICAgICAgICAgdHR5ID0gZmQgPT0gZmlsZW5vKHN0ZGluKSAmJiBpc2F0dHkoZmQpOwogICAgIH0KICAgICBpZiAodHR5KSB7Ci0gICAgICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZm91dCwgImZpbGVubyIsICIiKTsKKyAgICAgICAgdG1wID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmb3V0LCAmUHlJZF9maWxlbm8sICIiKTsKICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgZWxzZSB7CkBAIC0xNjQ2LDkgKzE2NDcsMTEgQEAKICAgICAgICAgY2hhciAqc3RkaW5fZW5jb2Rpbmdfc3RyLCAqc3RkaW5fZXJyb3JzX3N0cjsKICAgICAgICAgUHlPYmplY3QgKnJlc3VsdDsKICAgICAgICAgc2l6ZV90IGxlbjsKKyAgICAgICAgX1B5X0lERU5USUZJRVIoZW5jb2RpbmcpOworICAgICAgICBfUHlfSURFTlRJRklFUihlcnJvcnMpOwogCi0gICAgICAgIHN0ZGluX2VuY29kaW5nID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhmaW4sICJlbmNvZGluZyIpOwotICAgICAgICBzdGRpbl9lcnJvcnMgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGZpbiwgImVycm9ycyIpOworICAgICAgICBzdGRpbl9lbmNvZGluZyA9IF9QeU9iamVjdF9HZXRBdHRySWQoZmluLCAmUHlJZF9lbmNvZGluZyk7CisgICAgICAgIHN0ZGluX2Vycm9ycyA9IF9QeU9iamVjdF9HZXRBdHRySWQoZmluLCAmUHlJZF9lcnJvcnMpOwogICAgICAgICBpZiAoIXN0ZGluX2VuY29kaW5nIHx8ICFzdGRpbl9lcnJvcnMpCiAgICAgICAgICAgICAvKiBzdGRpbiBpcyBhIHRleHQgc3RyZWFtLCBzbyBpdCBtdXN0IGhhdmUgYW4KICAgICAgICAgICAgICAgIGVuY29kaW5nLiAqLwpAQCAtMTY1Nyw3ICsxNjYwLDcgQEAKICAgICAgICAgc3RkaW5fZXJyb3JzX3N0ciA9IF9QeVVuaWNvZGVfQXNTdHJpbmcoc3RkaW5fZXJyb3JzKTsKICAgICAgICAgaWYgKCFzdGRpbl9lbmNvZGluZ19zdHIgfHwgIXN0ZGluX2Vycm9yc19zdHIpCiAgICAgICAgICAgICBnb3RvIF9yZWFkbGluZV9lcnJvcnM7Ci0gICAgICAgIHRtcCA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZm91dCwgImZsdXNoIiwgIiIpOworICAgICAgICB0bXAgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGZvdXQsICZQeUlkX2ZsdXNoLCAiIik7CiAgICAgICAgIGlmICh0bXAgPT0gTlVMTCkKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIGVsc2UKQEAgLTE2NjYsOCArMTY2OSw4IEBACiAgICAgICAgICAgICAvKiBXZSBoYXZlIGEgcHJvbXB0LCBlbmNvZGUgaXQgYXMgc3Rkb3V0IHdvdWxkICovCiAgICAgICAgICAgICBjaGFyICpzdGRvdXRfZW5jb2Rpbmdfc3RyLCAqc3Rkb3V0X2Vycm9yc19zdHI7CiAgICAgICAgICAgICBQeU9iamVjdCAqc3RyaW5ncG87Ci0gICAgICAgICAgICBzdGRvdXRfZW5jb2RpbmcgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGZvdXQsICJlbmNvZGluZyIpOwotICAgICAgICAgICAgc3Rkb3V0X2Vycm9ycyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZm91dCwgImVycm9ycyIpOworICAgICAgICAgICAgc3Rkb3V0X2VuY29kaW5nID0gX1B5T2JqZWN0X0dldEF0dHJJZChmb3V0LCAmUHlJZF9lbmNvZGluZyk7CisgICAgICAgICAgICBzdGRvdXRfZXJyb3JzID0gX1B5T2JqZWN0X0dldEF0dHJJZChmb3V0LCAmUHlJZF9lcnJvcnMpOwogICAgICAgICAgICAgaWYgKCFzdGRvdXRfZW5jb2RpbmcgfHwgIXN0ZG91dF9lcnJvcnMpCiAgICAgICAgICAgICAgICAgZ290byBfcmVhZGxpbmVfZXJyb3JzOwogICAgICAgICAgICAgc3Rkb3V0X2VuY29kaW5nX3N0ciA9IF9QeVVuaWNvZGVfQXNTdHJpbmcoc3Rkb3V0X2VuY29kaW5nKTsKQEAgLTE3MzcsNyArMTc0MCw3IEBACiAgICAgICAgIGlmIChQeUZpbGVfV3JpdGVPYmplY3QocHJvbXB0YXJnLCBmb3V0LCBQeV9QUklOVF9SQVcpICE9IDApCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgdG1wID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmb3V0LCAiZmx1c2giLCAiIik7CisgICAgdG1wID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmb3V0LCAmUHlJZF9mbHVzaCwgIiIpOwogICAgIGlmICh0bXAgPT0gTlVMTCkKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICBlbHNlCkBAIC0xODE5LDYgKzE4MjIsNyBAQAogICAgIFB5T2JqZWN0ICpjYWxsYWJsZTsKICAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7Iml0ZXJhYmxlIiwgImtleSIsICJyZXZlcnNlIiwgMH07CiAgICAgaW50IHJldmVyc2U7CisgICAgX1B5X0lERU5USUZJRVIoc29ydCk7CiAKICAgICAvKiBhcmdzIDEtMyBzaG91bGQgbWF0Y2ggbGlzdHNvcnQgaW4gT2JqZWN0cy9saXN0b2JqZWN0LmMgKi8KICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAiT3xPaTpzb3J0ZWQiLApAQCAtMTgyOSw3ICsxODMzLDcgQEAKICAgICBpZiAobmV3bGlzdCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGNhbGxhYmxlID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhuZXdsaXN0LCAic29ydCIpOworICAgIGNhbGxhYmxlID0gX1B5T2JqZWN0X0dldEF0dHJJZChuZXdsaXN0LCAmUHlJZF9zb3J0KTsKICAgICBpZiAoY2FsbGFibGUgPT0gTlVMTCkgewogICAgICAgICBQeV9ERUNSRUYobmV3bGlzdCk7CiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTg3NSw3ICsxODc5LDggQEAKICAgICAgICAgICAgIFB5X0lOQ1JFRihkKTsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIGQgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHYsICJfX2RpY3RfXyIpOworICAgICAgICBfUHlfSURFTlRJRklFUihfX2RpY3RfXyk7CisgICAgICAgIGQgPSBfUHlPYmplY3RfR2V0QXR0cklkKHYsICZQeUlkX19fZGljdF9fKTsKICAgICAgICAgaWYgKGQgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAidmFycygpIGFyZ3VtZW50IG11c3QgaGF2ZSBfX2RpY3RfXyBhdHRyaWJ1dGUiKTsKQEAgLTE5MTksMTIgKzE5MjQsMTggQEAKICAgICAgICAgICAgIFB5X0RFQ1JFRihpdGVyKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIGlmIChQeUJ5dGVBcnJheV9DaGVjayhyZXN1bHQpKSB7CisgICAgICAgIGlmIChQeUJ5dGVzX0NoZWNrKHJlc3VsdCkpIHsKICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCiAgICAgICAgICAgICAgICAgInN1bSgpIGNhbid0IHN1bSBieXRlcyBbdXNlIGInJy5qb2luKHNlcSkgaW5zdGVhZF0iKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRihpdGVyKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CisgICAgICAgIGlmIChQeUJ5dGVBcnJheV9DaGVjayhyZXN1bHQpKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICJzdW0oKSBjYW4ndCBzdW0gYnl0ZWFycmF5IFt1c2UgYicnLmpvaW4oc2VxKSBpbnN0ZWFkXSIpOworICAgICAgICAgICAgUHlfREVDUkVGKGl0ZXIpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KIAogICAgICAgICBQeV9JTkNSRUYocmVzdWx0KTsKICAgICB9CmRpZmYgLS1naXQgYS9QeXRob24vY2V2YWwuYyBiL1B5dGhvbi9jZXZhbC5jCmluZGV4IGYwZWE3YzkuLjA2YmZmNGMgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9jZXZhbC5jCisrKyBiL1B5dGhvbi9jZXZhbC5jCkBAIC0xMzgsNyArMTM4LDcgQEAKIHN0YXRpYyB2b2lkIGZvcm1hdF9leGNfdW5ib3VuZChQeUNvZGVPYmplY3QgKmNvLCBpbnQgb3BhcmcpOwogc3RhdGljIFB5T2JqZWN0ICogdW5pY29kZV9jb25jYXRlbmF0ZShQeU9iamVjdCAqLCBQeU9iamVjdCAqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUZyYW1lT2JqZWN0ICosIHVuc2lnbmVkIGNoYXIgKik7Ci1zdGF0aWMgUHlPYmplY3QgKiBzcGVjaWFsX2xvb2t1cChQeU9iamVjdCAqLCBjaGFyICosIFB5T2JqZWN0ICoqKTsKK3N0YXRpYyBQeU9iamVjdCAqIHNwZWNpYWxfbG9va3VwKFB5T2JqZWN0ICosIF9QeV9JZGVudGlmaWVyICopOwogCiAjZGVmaW5lIE5BTUVfRVJST1JfTVNHIFwKICAgICAibmFtZSAnJS4yMDBzJyBpcyBub3QgZGVmaW5lZCIKQEAgLTM3Miw2ICszNzIsNyBAQAogdm9pZAogUHlFdmFsX1JlSW5pdFRocmVhZHModm9pZCkKIHsKKyAgICBfUHlfSURFTlRJRklFUihfYWZ0ZXJfZm9yayk7CiAgICAgUHlPYmplY3QgKnRocmVhZGluZywgKnJlc3VsdDsKICAgICBQeVRocmVhZFN0YXRlICp0c3RhdGUgPSBQeVRocmVhZFN0YXRlX0dFVCgpOwogCkBAIC0zOTIsNyArMzkzLDcgQEAKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsTWV0aG9kKHRocmVhZGluZywgIl9hZnRlcl9mb3JrIiwgTlVMTCk7CisgICAgcmVzdWx0ID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZCh0aHJlYWRpbmcsICZQeUlkX19hZnRlcl9mb3JrLCBOVUxMKTsKICAgICBpZiAocmVzdWx0ID09IE5VTEwpCiAgICAgICAgIFB5RXJyX1dyaXRlVW5yYWlzYWJsZSh0aHJlYWRpbmcpOwogICAgIGVsc2UKQEAgLTQ5MSw3ICs0OTIsNiBAQAogfSBwZW5kaW5nY2FsbHNbTlBFTkRJTkdDQUxMU107CiBzdGF0aWMgaW50IHBlbmRpbmdmaXJzdCA9IDA7CiBzdGF0aWMgaW50IHBlbmRpbmdsYXN0ID0gMDsKLXN0YXRpYyBjaGFyIHBlbmRpbmdidXN5ID0gMDsKIAogaW50CiBQeV9BZGRQZW5kaW5nQ2FsbChpbnQgKCpmdW5jKSh2b2lkICopLCB2b2lkICphcmcpCkBAIC01MzgsNiArNTM4LDcgQEAKIGludAogUHlfTWFrZVBlbmRpbmdDYWxscyh2b2lkKQogeworICAgIHN0YXRpYyBpbnQgYnVzeSA9IDA7CiAgICAgaW50IGk7CiAgICAgaW50IHIgPSAwOwogCkBAIC01NTIsOSArNTUzLDkgQEAKICAgICBpZiAobWFpbl90aHJlYWQgJiYgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpICE9IG1haW5fdGhyZWFkKQogICAgICAgICByZXR1cm4gMDsKICAgICAvKiBkb24ndCBwZXJmb3JtIHJlY3Vyc2l2ZSBwZW5kaW5nIGNhbGxzICovCi0gICAgaWYgKHBlbmRpbmdidXN5KQorICAgIGlmIChidXN5KQogICAgICAgICByZXR1cm4gMDsKLSAgICBwZW5kaW5nYnVzeSA9IDE7CisgICAgYnVzeSA9IDE7CiAgICAgLyogcGVyZm9ybSBhIGJvdW5kZWQgbnVtYmVyIG9mIGNhbGxzLCBpbiBjYXNlIG9mIHJlY3Vyc2lvbiAqLwogICAgIGZvciAoaT0wOyBpPE5QRU5ESU5HQ0FMTFM7IGkrKykgewogICAgICAgICBpbnQgajsKQEAgLTU4Myw3ICs1ODQsNyBAQAogICAgICAgICBpZiAocikKICAgICAgICAgICAgIGJyZWFrOwogICAgIH0KLSAgICBwZW5kaW5nYnVzeSA9IDA7CisgICAgYnVzeSA9IDA7CiAgICAgcmV0dXJuIHI7CiB9CiAKQEAgLTc0OSw2ICs3NTAsOSBAQAogICAgICAgICBXSFlfU0lMRU5DRUQgPSAgMHgwMDgwICAvKiBFeGNlcHRpb24gc2lsZW5jZWQgYnkgJ3dpdGgnICovCiB9OwogCitzdGF0aWMgdm9pZCBzYXZlX2V4Y19zdGF0ZShQeVRocmVhZFN0YXRlICosIFB5RnJhbWVPYmplY3QgKik7CitzdGF0aWMgdm9pZCBzd2FwX2V4Y19zdGF0ZShQeVRocmVhZFN0YXRlICosIFB5RnJhbWVPYmplY3QgKik7CitzdGF0aWMgdm9pZCByZXN0b3JlX2FuZF9jbGVhcl9leGNfc3RhdGUoUHlUaHJlYWRTdGF0ZSAqLCBQeUZyYW1lT2JqZWN0ICopOwogc3RhdGljIGVudW0gd2h5X2NvZGUgZG9fcmFpc2UoUHlPYmplY3QgKiwgUHlPYmplY3QgKik7CiBzdGF0aWMgaW50IHVucGFja19pdGVyYWJsZShQeU9iamVjdCAqLCBpbnQsIGludCwgUHlPYmplY3QgKiopOwogCkBAIC04MTcsMTAgKzgyMSw2IEBACiAgICAgdW5zaWduZWQgY2hhciAqZmlyc3RfaW5zdHI7CiAgICAgUHlPYmplY3QgKm5hbWVzOwogICAgIFB5T2JqZWN0ICpjb25zdHM7Ci0jaWYgZGVmaW5lZChQeV9ERUJVRykgfHwgZGVmaW5lZChMTFRSQUNFKQotICAgIC8qIE1ha2UgaXQgZWFzaWVyIHRvIGZpbmQgb3V0IHdoZXJlIHdlIGFyZSB3aXRoIGEgZGVidWdnZXIgKi8KLSAgICBjaGFyICpmaWxlbmFtZTsKLSNlbmRpZgogCiAvKiBDb21wdXRlZCBHT1RPcywgb3IKICAgICAgICB0aGUtb3B0aW1pemF0aW9uLWNvbW1vbmx5LWJ1dC1pbXByb3Blcmx5LWtub3duLWFzLSJ0aHJlYWRlZCBjb2RlIgpAQCAtMTExNCw1OSArMTExNCw4IEBACiAgICAgICAgIFB5X1hERUNSRUYodHJhY2ViYWNrKTsgXAogICAgIH0KIAotI2RlZmluZSBTQVZFX0VYQ19TVEFURSgpIFwKLSAgICB7IFwKLSAgICAgICAgUHlPYmplY3QgKnR5cGUsICp2YWx1ZSwgKnRyYWNlYmFjazsgXAotICAgICAgICBQeV9YSU5DUkVGKHRzdGF0ZS0+ZXhjX3R5cGUpOyBcCi0gICAgICAgIFB5X1hJTkNSRUYodHN0YXRlLT5leGNfdmFsdWUpOyBcCi0gICAgICAgIFB5X1hJTkNSRUYodHN0YXRlLT5leGNfdHJhY2ViYWNrKTsgXAotICAgICAgICB0eXBlID0gZi0+Zl9leGNfdHlwZTsgXAotICAgICAgICB2YWx1ZSA9IGYtPmZfZXhjX3ZhbHVlOyBcCi0gICAgICAgIHRyYWNlYmFjayA9IGYtPmZfZXhjX3RyYWNlYmFjazsgXAotICAgICAgICBmLT5mX2V4Y190eXBlID0gdHN0YXRlLT5leGNfdHlwZTsgXAotICAgICAgICBmLT5mX2V4Y192YWx1ZSA9IHRzdGF0ZS0+ZXhjX3ZhbHVlOyBcCi0gICAgICAgIGYtPmZfZXhjX3RyYWNlYmFjayA9IHRzdGF0ZS0+ZXhjX3RyYWNlYmFjazsgXAotICAgICAgICBQeV9YREVDUkVGKHR5cGUpOyBcCi0gICAgICAgIFB5X1hERUNSRUYodmFsdWUpOyBcCi0gICAgICAgIFB5X1hERUNSRUYodHJhY2ViYWNrKTsgXAotICAgIH0KLQotI2RlZmluZSBTV0FQX0VYQ19TVEFURSgpIFwKLSAgICB7IFwKLSAgICAgICAgUHlPYmplY3QgKnRtcDsgXAotICAgICAgICB0bXAgPSB0c3RhdGUtPmV4Y190eXBlOyBcCi0gICAgICAgIHRzdGF0ZS0+ZXhjX3R5cGUgPSBmLT5mX2V4Y190eXBlOyBcCi0gICAgICAgIGYtPmZfZXhjX3R5cGUgPSB0bXA7IFwKLSAgICAgICAgdG1wID0gdHN0YXRlLT5leGNfdmFsdWU7IFwKLSAgICAgICAgdHN0YXRlLT5leGNfdmFsdWUgPSBmLT5mX2V4Y192YWx1ZTsgXAotICAgICAgICBmLT5mX2V4Y192YWx1ZSA9IHRtcDsgXAotICAgICAgICB0bXAgPSB0c3RhdGUtPmV4Y190cmFjZWJhY2s7IFwKLSAgICAgICAgdHN0YXRlLT5leGNfdHJhY2ViYWNrID0gZi0+Zl9leGNfdHJhY2ViYWNrOyBcCi0gICAgICAgIGYtPmZfZXhjX3RyYWNlYmFjayA9IHRtcDsgXAotICAgIH0KLQotI2RlZmluZSBSRVNUT1JFX0FORF9DTEVBUl9FWENfU1RBVEUoKSBcCi0gICAgeyBcCi0gICAgICAgIFB5T2JqZWN0ICp0eXBlLCAqdmFsdWUsICp0YjsgXAotICAgICAgICB0eXBlID0gdHN0YXRlLT5leGNfdHlwZTsgXAotICAgICAgICB2YWx1ZSA9IHRzdGF0ZS0+ZXhjX3ZhbHVlOyBcCi0gICAgICAgIHRiID0gdHN0YXRlLT5leGNfdHJhY2ViYWNrOyBcCi0gICAgICAgIHRzdGF0ZS0+ZXhjX3R5cGUgPSBmLT5mX2V4Y190eXBlOyBcCi0gICAgICAgIHRzdGF0ZS0+ZXhjX3ZhbHVlID0gZi0+Zl9leGNfdmFsdWU7IFwKLSAgICAgICAgdHN0YXRlLT5leGNfdHJhY2ViYWNrID0gZi0+Zl9leGNfdHJhY2ViYWNrOyBcCi0gICAgICAgIGYtPmZfZXhjX3R5cGUgPSBOVUxMOyBcCi0gICAgICAgIGYtPmZfZXhjX3ZhbHVlID0gTlVMTDsgXAotICAgICAgICBmLT5mX2V4Y190cmFjZWJhY2sgPSBOVUxMOyBcCi0gICAgICAgIFB5X1hERUNSRUYodHlwZSk7IFwKLSAgICAgICAgUHlfWERFQ1JFRih2YWx1ZSk7IFwKLSAgICAgICAgUHlfWERFQ1JFRih0Yik7IFwKLSAgICB9Ci0KIC8qIFN0YXJ0IG9mIGNvZGUgKi8KIAotICAgIGlmIChmID09IE5VTEwpCi0gICAgICAgIHJldHVybiBOVUxMOwotCiAgICAgLyogcHVzaCBmcmFtZSAqLwogICAgIGlmIChQeV9FbnRlclJlY3Vyc2l2ZUNhbGwoIiIpKQogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTEyNDAsMjggKzExODksMTUgQEAKICAgICAgICAgICAgIC8qIFdlIHdlcmUgaW4gYW4gZXhjZXB0IGhhbmRsZXIgd2hlbiB3ZSBsZWZ0LAogICAgICAgICAgICAgICAgcmVzdG9yZSB0aGUgZXhjZXB0aW9uIHN0YXRlIHdoaWNoIHdhcyBwdXQgYXNpZGUKICAgICAgICAgICAgICAgIChzZWUgWUlFTERfVkFMVUUpLiAqLwotICAgICAgICAgICAgU1dBUF9FWENfU1RBVEUoKTsKKyAgICAgICAgICAgIHN3YXBfZXhjX3N0YXRlKHRzdGF0ZSwgZik7CiAgICAgICAgIH0KLSAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBTQVZFX0VYQ19TVEFURSgpOwotICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHNhdmVfZXhjX3N0YXRlKHRzdGF0ZSwgZik7CiAgICAgfQogCiAjaWZkZWYgTExUUkFDRQogICAgIGxsdHJhY2UgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhmLT5mX2dsb2JhbHMsICJfX2xsdHJhY2VfXyIpICE9IE5VTEw7CiAjZW5kaWYKLSNpZiBkZWZpbmVkKFB5X0RFQlVHKSB8fCBkZWZpbmVkKExMVFJBQ0UpCi0gICAgewotICAgICAgICBQeU9iamVjdCAqZXJyb3JfdHlwZSwgKmVycm9yX3ZhbHVlLCAqZXJyb3JfdHJhY2ViYWNrOwotICAgICAgICBQeUVycl9GZXRjaCgmZXJyb3JfdHlwZSwgJmVycm9yX3ZhbHVlLCAmZXJyb3JfdHJhY2ViYWNrKTsKLSAgICAgICAgZmlsZW5hbWUgPSBfUHlVbmljb2RlX0FzU3RyaW5nKGNvLT5jb19maWxlbmFtZSk7Ci0gICAgICAgIGlmIChmaWxlbmFtZSA9PSBOVUxMICYmIHRzdGF0ZS0+b3ZlcmZsb3dlZCkgewotICAgICAgICAgICAgLyogbWF4aW11bSByZWN1cnNpb24gZGVwdGggZXhjZWVkZWQgKi8KLSAgICAgICAgICAgIGdvdG8gZXhpdF9ldmFsX2ZyYW1lOwotICAgICAgICB9Ci0gICAgICAgIFB5RXJyX1Jlc3RvcmUoZXJyb3JfdHlwZSwgZXJyb3JfdmFsdWUsIGVycm9yX3RyYWNlYmFjayk7Ci0gICAgfQotI2VuZGlmCiAKICAgICB3aHkgPSBXSFlfTk9UOwogICAgIGVyciA9IDA7CkBAIC0xNDEyLDggKzEzNDgsNiBAQAogICAgICAgICAgICB4IHRvIE5VTEwsIGVyciB0byBub256ZXJvLCBvciB3aHkgdG8gYW55dGhpbmcgYnV0IFdIWV9OT1QsCiAgICAgICAgICAgIGFuZCB0aGF0IG5vIG9wZXJhdGlvbiB0aGF0IHN1Y2NlZWRzIGRvZXMgdGhpcyEgKi8KIAotICAgICAgICAvKiBjYXNlIFNUT1BfQ09ERTogdGhpcyBpcyBhbiBlcnJvciEgKi8KLQogICAgICAgICBUQVJHRVQoTk9QKQogICAgICAgICAgICAgRkFTVF9ESVNQQVRDSCgpOwogCkBAIC0xODk0LDYgKzE4MjgsNTMgQEAKICAgICAgICAgICAgIHdoeSA9IFdIWV9SRVRVUk47CiAgICAgICAgICAgICBnb3RvIGZhc3RfYmxvY2tfZW5kOwogCisgICAgICAgIFRBUkdFVChZSUVMRF9GUk9NKQorICAgICAgICAgICAgdSA9IFBPUCgpOworICAgICAgICAgICAgeCA9IFB5T2JqZWN0X0dldEl0ZXIodSk7CisgICAgICAgICAgICBQeV9ERUNSRUYodSk7CisgICAgICAgICAgICBpZiAoeCA9PSBOVUxMKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgLyogeCBpcyBub3cgdGhlIGl0ZXJhdG9yLCBtYWtlIHRoZSBmaXJzdCBuZXh0KCkgY2FsbCAqLworICAgICAgICAgICAgcmV0dmFsID0gKCpQeV9UWVBFKHgpLT50cF9pdGVybmV4dCkoeCk7CisgICAgICAgICAgICBpZiAoIXJldHZhbCkgeworICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpldCwgKmV2LCAqdGI7CisgICAgICAgICAgICAgICAgLyogaXRlciBtYXkgYmUgZXhoYXVzdGVkICovCisgICAgICAgICAgICAgICAgUHlfQ0xFQVIoeCk7CisgICAgICAgICAgICAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkgJiYKKyAgICAgICAgICAgICAgICAgICAgIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfU3RvcEl0ZXJhdGlvbikpIHsKKyAgICAgICAgICAgICAgICAgICAgLyogc29tZSBvdGhlciBleGNlcHRpb24gKi8KKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIC8qIHRyeSB0byBnZXQgcmV0dXJuIHZhbHVlIGZyb20gZXhjZXB0aW9uICovCisgICAgICAgICAgICAgICAgUHlFcnJfRmV0Y2goJmV0LCAmZXYsICZ0Yik7CisgICAgICAgICAgICAgICAgUHlfWERFQ1JFRihldCk7CisgICAgICAgICAgICAgICAgUHlfWERFQ1JFRih0Yik7CisgICAgICAgICAgICAgICAgLyogdSBpcyByZXR1cm4gdmFsdWUgKi8KKyAgICAgICAgICAgICAgICB1ID0gTlVMTDsKKyAgICAgICAgICAgICAgICBpZiAoZXYpIHsKKyAgICAgICAgICAgICAgICAgICAgdSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZXYsICJ2YWx1ZSIpOworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoZXYpOworICAgICAgICAgICAgICAgICAgICBpZiAodSA9PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogc29tZSBvdGhlciBleGNlcHRpb24gKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgaWYgKHUgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgICAgICB1ID0gUHlfTm9uZTsKKyAgICAgICAgICAgICAgICAgICAgUHlfSU5DUkVGKHUpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBQVVNIKHUpOworICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgfQorICAgICAgICAgICAgLyogeCBpcyBpdGVyYXRvciwgcmV0dmFsIGlzIHZhbHVlIHRvIGJlIHlpZWxkZWQgKi8KKyAgICAgICAgICAgIGYtPmZfeWllbGRmcm9tID0geDsKKyAgICAgICAgICAgIGYtPmZfc3RhY2t0b3AgPSBzdGFja19wb2ludGVyOworICAgICAgICAgICAgd2h5ID0gV0hZX1lJRUxEOworICAgICAgICAgICAgZ290byBmYXN0X3lpZWxkOworCiAgICAgICAgIFRBUkdFVChZSUVMRF9WQUxVRSkKICAgICAgICAgICAgIHJldHZhbCA9IFBPUCgpOwogICAgICAgICAgICAgZi0+Zl9zdGFja3RvcCA9IHN0YWNrX3BvaW50ZXI7CkBAIC0yMTIxLDcgKzIxMDIsNyBAQAogICAgICAgICAgICAgICAgIC8qIElubGluZSB0aGUgUHlEaWN0X0dldEl0ZW0oKSBjYWxscy4KICAgICAgICAgICAgICAgICAgICBXQVJOSU5HOiB0aGlzIGlzIGFuIGV4dHJlbWUgc3BlZWQgaGFjay4KICAgICAgICAgICAgICAgICAgICBEbyBub3QgdHJ5IHRoaXMgYXQgaG9tZS4gKi8KLSAgICAgICAgICAgICAgICBQeV9oYXNoX3QgaGFzaCA9ICgoUHlVbmljb2RlT2JqZWN0ICopdyktPmhhc2g7CisgICAgICAgICAgICAgICAgUHlfaGFzaF90IGhhc2ggPSAoKFB5QVNDSUlPYmplY3QgKil3KS0+aGFzaDsKICAgICAgICAgICAgICAgICBpZiAoaGFzaCAhPSAtMSkgewogICAgICAgICAgICAgICAgICAgICBQeURpY3RPYmplY3QgKmQ7CiAgICAgICAgICAgICAgICAgICAgIFB5RGljdEVudHJ5ICplOwpAQCAtMjU1OSwxMyArMjU0MCwxNCBAQAogCiAgICAgICAgIFRBUkdFVChTRVRVUF9XSVRIKQogICAgICAgICB7Ci0gICAgICAgICAgICBzdGF0aWMgUHlPYmplY3QgKmV4aXQsICplbnRlcjsKKyAgICAgICAgICAgIF9QeV9JREVOVElGSUVSKF9fZXhpdF9fKTsKKyAgICAgICAgICAgIF9QeV9JREVOVElGSUVSKF9fZW50ZXJfXyk7CiAgICAgICAgICAgICB3ID0gVE9QKCk7Ci0gICAgICAgICAgICB4ID0gc3BlY2lhbF9sb29rdXAodywgIl9fZXhpdF9fIiwgJmV4aXQpOworICAgICAgICAgICAgeCA9IHNwZWNpYWxfbG9va3VwKHcsICZQeUlkX19fZXhpdF9fKTsKICAgICAgICAgICAgIGlmICgheCkKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIFNFVF9UT1AoeCk7Ci0gICAgICAgICAgICB1ID0gc3BlY2lhbF9sb29rdXAodywgIl9fZW50ZXJfXyIsICZlbnRlcik7CisgICAgICAgICAgICB1ID0gc3BlY2lhbF9sb29rdXAodywgJlB5SWRfX19lbnRlcl9fKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRih3KTsKICAgICAgICAgICAgIGlmICghdSkgewogICAgICAgICAgICAgICAgIHggPSBOVUxMOwpAQCAtMjcyNSw3ICsyNzA3LDcgQEAKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoKnBmdW5jKTsKICAgICAgICAgICAgICAgICAqcGZ1bmMgPSBzZWxmOwogICAgICAgICAgICAgICAgIG5hKys7Ci0gICAgICAgICAgICAgICAgbisrOworICAgICAgICAgICAgICAgIC8qIG4rKzsgKi8KICAgICAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihmdW5jKTsKICAgICAgICAgICAgIHNwID0gc3RhY2tfcG9pbnRlcjsKQEAgLTI3NTMsOSArMjczNSwxMSBAQAogICAgICAgICAgICAgaW50IGt3ZGVmYXVsdHMgPSAob3Bhcmc+PjgpICYgMHhmZjsKICAgICAgICAgICAgIGludCBudW1fYW5ub3RhdGlvbnMgPSAob3BhcmcgPj4gMTYpICYgMHg3ZmZmOwogCisgICAgICAgICAgICB3ID0gUE9QKCk7IC8qIHF1YWxuYW1lICovCiAgICAgICAgICAgICB2ID0gUE9QKCk7IC8qIGNvZGUgb2JqZWN0ICovCi0gICAgICAgICAgICB4ID0gUHlGdW5jdGlvbl9OZXcodiwgZi0+Zl9nbG9iYWxzKTsKKyAgICAgICAgICAgIHggPSBQeUZ1bmN0aW9uX05ld1dpdGhRdWFsTmFtZSh2LCBmLT5mX2dsb2JhbHMsIHcpOwogICAgICAgICAgICAgUHlfREVDUkVGKHYpOworICAgICAgICAgICAgUHlfREVDUkVGKHcpOwogCiAgICAgICAgICAgICBpZiAoeCAhPSBOVUxMICYmIG9wY29kZSA9PSBNQUtFX0NMT1NVUkUpIHsKICAgICAgICAgICAgICAgICB2ID0gUE9QKCk7CkBAIC0zMDQ5LDkgKzMwMzMsOSBAQAogICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBpZiAoaSA9PSBmLT5mX2libG9jaykKICAgICAgICAgICAgIC8qIFdlIGRpZCBub3QgY3JlYXRlIHRoaXMgZXhjZXB0aW9uLiAqLwotICAgICAgICAgICAgUkVTVE9SRV9BTkRfQ0xFQVJfRVhDX1NUQVRFKCkKKyAgICAgICAgICAgIHJlc3RvcmVfYW5kX2NsZWFyX2V4Y19zdGF0ZSh0c3RhdGUsIGYpOwogICAgICAgICBlbHNlCi0gICAgICAgICAgICBTV0FQX0VYQ19TVEFURSgpCisgICAgICAgICAgICBzd2FwX2V4Y19zdGF0ZSh0c3RhdGUsIGYpOwogICAgIH0KIAogICAgIGlmICh0c3RhdGUtPnVzZV90cmFjaW5nKSB7CkBAIC0zMDgxLDcgKzMwNjUsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVRyYWNlX1JFVFVSTiwgcmV0dmFsKSkgewogICAgICAgICAgICAgICAgIFB5X1hERUNSRUYocmV0dmFsKTsKICAgICAgICAgICAgICAgICByZXR2YWwgPSBOVUxMOwotICAgICAgICAgICAgICAgIHdoeSA9IFdIWV9FWENFUFRJT047CisgICAgICAgICAgICAgICAgLyogd2h5ID0gV0hZX0VYQ0VQVElPTjsgKi8KICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KQEAgLTMwOTQsNiArMzA3OCwxNTQgQEAKICAgICByZXR1cm4gcmV0dmFsOwogfQogCitzdGF0aWMgdm9pZAorZm9ybWF0X21pc3NpbmcoY29uc3QgY2hhciAqa2luZCwgUHlDb2RlT2JqZWN0ICpjbywgUHlPYmplY3QgKm5hbWVzKQoreworICAgIGludCBlcnI7CisgICAgUHlfc3NpemVfdCBsZW4gPSBQeUxpc3RfR0VUX1NJWkUobmFtZXMpOworICAgIFB5T2JqZWN0ICpuYW1lX3N0ciwgKmNvbW1hLCAqdGFpbCwgKnRtcDsKKworICAgIGFzc2VydChQeUxpc3RfQ2hlY2tFeGFjdChuYW1lcykpOworICAgIGFzc2VydChsZW4gPj0gMSk7CisgICAgLyogRGVhbCB3aXRoIHRoZSBqb3lzIG9mIG5hdHVyYWwgbGFuZ3VhZ2UuICovCisgICAgc3dpdGNoIChsZW4pIHsKKyAgICBjYXNlIDE6CisgICAgICAgIG5hbWVfc3RyID0gUHlMaXN0X0dFVF9JVEVNKG5hbWVzLCAwKTsKKyAgICAgICAgUHlfSU5DUkVGKG5hbWVfc3RyKTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSAyOgorICAgICAgICBuYW1lX3N0ciA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCIlVSBhbmQgJVUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5TGlzdF9HRVRfSVRFTShuYW1lcywgbGVuIC0gMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlMaXN0X0dFVF9JVEVNKG5hbWVzLCBsZW4gLSAxKSk7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIHRhaWwgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiLCAlVSwgYW5kICVVIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5TGlzdF9HRVRfSVRFTShuYW1lcywgbGVuIC0gMiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeUxpc3RfR0VUX0lURU0obmFtZXMsIGxlbiAtIDEpKTsKKyAgICAgICAgLyogQ2hvcCBvZmYgdGhlIGxhc3QgdHdvIG9iamVjdHMgaW4gdGhlIGxpc3QuIFRoaXMgc2hvdWxkbid0IGFjdHVhbGx5CisgICAgICAgICAgIGZhaWwsIGJ1dCB3ZSBjYW4ndCBiZSB0b28gY2FyZWZ1bC4gKi8KKyAgICAgICAgZXJyID0gUHlMaXN0X1NldFNsaWNlKG5hbWVzLCBsZW4gLSAyLCBsZW4sIE5VTEwpOworICAgICAgICBpZiAoZXJyID09IC0xKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYodGFpbCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgLyogU3RpdGNoIGV2ZXJ5dGhpbmcgdXAgaW50byBhIG5pY2UgY29tbWEtc2VwYXJhdGVkIGxpc3QuICovCisgICAgICAgIGNvbW1hID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoIiwgIik7CisgICAgICAgIGlmIChjb21tYSA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYodGFpbCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgdG1wID0gUHlVbmljb2RlX0pvaW4oY29tbWEsIG5hbWVzKTsKKyAgICAgICAgUHlfREVDUkVGKGNvbW1hKTsKKyAgICAgICAgaWYgKHRtcCA9PSBOVUxMKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYodGFpbCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgbmFtZV9zdHIgPSBQeVVuaWNvZGVfQ29uY2F0KHRtcCwgdGFpbCk7CisgICAgICAgIFB5X0RFQ1JFRih0bXApOworICAgICAgICBQeV9ERUNSRUYodGFpbCk7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBpZiAobmFtZV9zdHIgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuOworICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICIlVSgpIG1pc3NpbmcgJWkgcmVxdWlyZWQgJXMgYXJndW1lbnQlczogJVUiLAorICAgICAgICAgICAgICAgICBjby0+Y29fbmFtZSwKKyAgICAgICAgICAgICAgICAgbGVuLAorICAgICAgICAgICAgICAgICBraW5kLAorICAgICAgICAgICAgICAgICBsZW4gPT0gMSA/ICIiIDogInMiLAorICAgICAgICAgICAgICAgICBuYW1lX3N0cik7CisgICAgUHlfREVDUkVGKG5hbWVfc3RyKTsKK30KKworc3RhdGljIHZvaWQKK21pc3NpbmdfYXJndW1lbnRzKFB5Q29kZU9iamVjdCAqY28sIGludCBtaXNzaW5nLCBpbnQgZGVmY291bnQsCisgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKmZhc3Rsb2NhbHMpCit7CisgICAgaW50IGksIGogPSAwOworICAgIGludCBzdGFydCwgZW5kOworICAgIGludCBwb3NpdGlvbmFsID0gZGVmY291bnQgIT0gLTE7CisgICAgY29uc3QgY2hhciAqa2luZCA9IHBvc2l0aW9uYWwgPyAicG9zaXRpb25hbCIgOiAia2V5d29yZC1vbmx5IjsKKyAgICBQeU9iamVjdCAqbWlzc2luZ19uYW1lczsKKworICAgIC8qIENvbXB1dGUgdGhlIG5hbWVzIG9mIHRoZSBhcmd1bWVudHMgdGhhdCBhcmUgbWlzc2luZy4gKi8KKyAgICBtaXNzaW5nX25hbWVzID0gUHlMaXN0X05ldyhtaXNzaW5nKTsKKyAgICBpZiAobWlzc2luZ19uYW1lcyA9PSBOVUxMKQorICAgICAgICByZXR1cm47CisgICAgaWYgKHBvc2l0aW9uYWwpIHsKKyAgICAgICAgc3RhcnQgPSAwOworICAgICAgICBlbmQgPSBjby0+Y29fYXJnY291bnQgLSBkZWZjb3VudDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHN0YXJ0ID0gY28tPmNvX2FyZ2NvdW50OworICAgICAgICBlbmQgPSBzdGFydCArIGNvLT5jb19rd29ubHlhcmdjb3VudDsKKyAgICB9CisgICAgZm9yIChpID0gc3RhcnQ7IGkgPCBlbmQ7IGkrKykgeworICAgICAgICBpZiAoR0VUTE9DQUwoaSkgPT0gTlVMTCkgeworICAgICAgICAgICAgUHlPYmplY3QgKnJhdyA9IFB5VHVwbGVfR0VUX0lURU0oY28tPmNvX3Zhcm5hbWVzLCBpKTsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpuYW1lID0gUHlPYmplY3RfUmVwcihyYXcpOworICAgICAgICAgICAgaWYgKG5hbWUgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihtaXNzaW5nX25hbWVzKTsKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisgICAgICAgICAgICBQeUxpc3RfU0VUX0lURU0obWlzc2luZ19uYW1lcywgaisrLCBuYW1lKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBhc3NlcnQoaiA9PSBtaXNzaW5nKTsKKyAgICBmb3JtYXRfbWlzc2luZyhraW5kLCBjbywgbWlzc2luZ19uYW1lcyk7CisgICAgUHlfREVDUkVGKG1pc3NpbmdfbmFtZXMpOworfQorCitzdGF0aWMgdm9pZAordG9vX21hbnlfcG9zaXRpb25hbChQeUNvZGVPYmplY3QgKmNvLCBpbnQgZ2l2ZW4sIGludCBkZWZjb3VudCwgUHlPYmplY3QgKipmYXN0bG9jYWxzKQoreworICAgIGludCBwbHVyYWw7CisgICAgaW50IGt3b25seV9naXZlbiA9IDA7CisgICAgaW50IGk7CisgICAgUHlPYmplY3QgKnNpZywgKmt3b25seV9zaWc7CisKKyAgICBhc3NlcnQoKGNvLT5jb19mbGFncyAmIENPX1ZBUkFSR1MpID09IDApOworICAgIC8qIENvdW50IG1pc3Npbmcga2V5d29yZC1vbmx5IGFyZ3MuICovCisgICAgZm9yIChpID0gY28tPmNvX2FyZ2NvdW50OyBpIDwgY28tPmNvX2FyZ2NvdW50ICsgY28tPmNvX2t3b25seWFyZ2NvdW50OyBpKyspCisgICAgICAgIGlmIChHRVRMT0NBTChpKSAhPSBOVUxMKQorICAgICAgICAgICAga3dvbmx5X2dpdmVuKys7CisgICAgaWYgKGRlZmNvdW50KSB7CisgICAgICAgIGludCBhdGxlYXN0ID0gY28tPmNvX2FyZ2NvdW50IC0gZGVmY291bnQ7CisgICAgICAgIHBsdXJhbCA9IDE7CisgICAgICAgIHNpZyA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KCJmcm9tICVkIHRvICVkIiwgYXRsZWFzdCwgY28tPmNvX2FyZ2NvdW50KTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHBsdXJhbCA9IGNvLT5jb19hcmdjb3VudCAhPSAxOworICAgICAgICBzaWcgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJWQiLCBjby0+Y29fYXJnY291bnQpOworICAgIH0KKyAgICBpZiAoc2lnID09IE5VTEwpCisgICAgICAgIHJldHVybjsKKyAgICBpZiAoa3dvbmx5X2dpdmVuKSB7CisgICAgICAgIGNvbnN0IGNoYXIgKmZvcm1hdCA9ICIgcG9zaXRpb25hbCBhcmd1bWVudCVzIChhbmQgJWQga2V5d29yZC1vbmx5IGFyZ3VtZW50JXMpIjsKKyAgICAgICAga3dvbmx5X3NpZyA9IFB5VW5pY29kZV9Gcm9tRm9ybWF0KGZvcm1hdCwgZ2l2ZW4gIT0gMSA/ICJzIiA6ICIiLCBrd29ubHlfZ2l2ZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dvbmx5X2dpdmVuICE9IDEgPyAicyIgOiAiIik7CisgICAgICAgIGlmIChrd29ubHlfc2lnID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihzaWcpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgfQorICAgIGVsc2UgeworICAgICAgICAvKiBUaGlzIHdpbGwgbm90IGZhaWwuICovCisgICAgICAgIGt3b25seV9zaWcgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiIik7CisgICAgICAgIGFzc2VydChrd29ubHlfc2lnICE9IE5VTEwpOworICAgIH0KKyAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAiJVUoKSB0YWtlcyAlVSBwb3NpdGlvbmFsIGFyZ3VtZW50JXMgYnV0ICVkJVUgJXMgZ2l2ZW4iLAorICAgICAgICAgICAgICAgICBjby0+Y29fbmFtZSwKKyAgICAgICAgICAgICAgICAgc2lnLAorICAgICAgICAgICAgICAgICBwbHVyYWwgPyAicyIgOiAiIiwKKyAgICAgICAgICAgICAgICAgZ2l2ZW4sCisgICAgICAgICAgICAgICAgIGt3b25seV9zaWcsCisgICAgICAgICAgICAgICAgIGdpdmVuID09IDEgJiYgIWt3b25seV9naXZlbiA/ICJ3YXMiIDogIndlcmUiKTsKKyAgICBQeV9ERUNSRUYoc2lnKTsKKyAgICBQeV9ERUNSRUYoa3dvbmx5X3NpZyk7Cit9CisKIC8qIFRoaXMgaXMgZ29ubmEgc2VlbSAqcmVhbCB3ZWlyZCosIGJ1dCBpZiB5b3UgcHV0IHNvbWUgb3RoZXIgY29kZSBiZXR3ZWVuCiAgICBQeUV2YWxfRXZhbEZyYW1lKCkgYW5kIFB5RXZhbF9FdmFsQ29kZUV4KCkgeW91IHdpbGwgbmVlZCB0byBhZGp1c3QKICAgIHRoZSB0ZXN0IGluIHRoZSBpZiBzdGF0ZW1lbnRzIGluIE1pc2MvZ2RiaW5pdCAocHlzdGFjayBhbmQgcHlzdGFja3YpLiAqLwpAQCAtMzExMCw2ICszMjQyLDkgQEAKICAgICBQeVRocmVhZFN0YXRlICp0c3RhdGUgPSBQeVRocmVhZFN0YXRlX0dFVCgpOwogICAgIFB5T2JqZWN0ICp4LCAqdTsKICAgICBpbnQgdG90YWxfYXJncyA9IGNvLT5jb19hcmdjb3VudCArIGNvLT5jb19rd29ubHlhcmdjb3VudDsKKyAgICBpbnQgaTsKKyAgICBpbnQgbiA9IGFyZ2NvdW50OworICAgIFB5T2JqZWN0ICprd2RpY3QgPSBOVUxMOwogCiAgICAgaWYgKGdsb2JhbHMgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfU3lzdGVtRXJyb3IsCkBAIC0zMTI2LDIxMiArMzI2MSwxNTMgQEAKICAgICBmYXN0bG9jYWxzID0gZi0+Zl9sb2NhbHNwbHVzOwogICAgIGZyZWV2YXJzID0gZi0+Zl9sb2NhbHNwbHVzICsgY28tPmNvX25sb2NhbHM7CiAKLSAgICBpZiAodG90YWxfYXJncyB8fCBjby0+Y29fZmxhZ3MgJiAoQ09fVkFSQVJHUyB8IENPX1ZBUktFWVdPUkRTKSkgewotICAgICAgICBpbnQgaTsKLSAgICAgICAgaW50IG4gPSBhcmdjb3VudDsKLSAgICAgICAgUHlPYmplY3QgKmt3ZGljdCA9IE5VTEw7Ci0gICAgICAgIGlmIChjby0+Y29fZmxhZ3MgJiBDT19WQVJLRVlXT1JEUykgewotICAgICAgICAgICAga3dkaWN0ID0gUHlEaWN0X05ldygpOwotICAgICAgICAgICAgaWYgKGt3ZGljdCA9PSBOVUxMKQotICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgIGkgPSB0b3RhbF9hcmdzOwotICAgICAgICAgICAgaWYgKGNvLT5jb19mbGFncyAmIENPX1ZBUkFSR1MpCi0gICAgICAgICAgICAgICAgaSsrOwotICAgICAgICAgICAgU0VUTE9DQUwoaSwga3dkaWN0KTsKLSAgICAgICAgfQotICAgICAgICBpZiAoYXJnY291bnQgPiBjby0+Y29fYXJnY291bnQpIHsKLSAgICAgICAgICAgIGlmICghKGNvLT5jb19mbGFncyAmIENPX1ZBUkFSR1MpKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgIiVVKCkgdGFrZXMgJXMgJWQgIgotICAgICAgICAgICAgICAgICAgICAicG9zaXRpb25hbCBhcmd1bWVudCVzICglZCBnaXZlbikiLAotICAgICAgICAgICAgICAgICAgICBjby0+Y29fbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgZGVmY291bnQgPyAiYXQgbW9zdCIgOiAiZXhhY3RseSIsCi0gICAgICAgICAgICAgICAgICAgIGNvLT5jb19hcmdjb3VudCwKLSAgICAgICAgICAgICAgICAgICAgY28tPmNvX2FyZ2NvdW50ID09IDEgPyAiIiA6ICJzIiwKLSAgICAgICAgICAgICAgICAgICAgYXJnY291bnQgKyBrd2NvdW50KTsKLSAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBuID0gY28tPmNvX2FyZ2NvdW50OwotICAgICAgICB9Ci0gICAgICAgIGZvciAoaSA9IDA7IGkgPCBuOyBpKyspIHsKKyAgICAvKiBQYXJzZSBhcmd1bWVudHMuICovCisgICAgaWYgKGNvLT5jb19mbGFncyAmIENPX1ZBUktFWVdPUkRTKSB7CisgICAgICAgIGt3ZGljdCA9IFB5RGljdF9OZXcoKTsKKyAgICAgICAgaWYgKGt3ZGljdCA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICBpID0gdG90YWxfYXJnczsKKyAgICAgICAgaWYgKGNvLT5jb19mbGFncyAmIENPX1ZBUkFSR1MpCisgICAgICAgICAgICBpKys7CisgICAgICAgIFNFVExPQ0FMKGksIGt3ZGljdCk7CisgICAgfQorICAgIGlmIChhcmdjb3VudCA+IGNvLT5jb19hcmdjb3VudCkKKyAgICAgICAgbiA9IGNvLT5jb19hcmdjb3VudDsKKyAgICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CisgICAgICAgIHggPSBhcmdzW2ldOworICAgICAgICBQeV9JTkNSRUYoeCk7CisgICAgICAgIFNFVExPQ0FMKGksIHgpOworICAgIH0KKyAgICBpZiAoY28tPmNvX2ZsYWdzICYgQ09fVkFSQVJHUykgeworICAgICAgICB1ID0gUHlUdXBsZV9OZXcoYXJnY291bnQgLSBuKTsKKyAgICAgICAgaWYgKHUgPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgU0VUTE9DQUwodG90YWxfYXJncywgdSk7CisgICAgICAgIGZvciAoaSA9IG47IGkgPCBhcmdjb3VudDsgaSsrKSB7CiAgICAgICAgICAgICB4ID0gYXJnc1tpXTsKICAgICAgICAgICAgIFB5X0lOQ1JFRih4KTsKLSAgICAgICAgICAgIFNFVExPQ0FMKGksIHgpOworICAgICAgICAgICAgUHlUdXBsZV9TRVRfSVRFTSh1LCBpLW4sIHgpOwogICAgICAgICB9Ci0gICAgICAgIGlmIChjby0+Y29fZmxhZ3MgJiBDT19WQVJBUkdTKSB7Ci0gICAgICAgICAgICB1ID0gUHlUdXBsZV9OZXcoYXJnY291bnQgLSBuKTsKLSAgICAgICAgICAgIGlmICh1ID09IE5VTEwpCi0gICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgU0VUTE9DQUwodG90YWxfYXJncywgdSk7Ci0gICAgICAgICAgICBmb3IgKGkgPSBuOyBpIDwgYXJnY291bnQ7IGkrKykgewotICAgICAgICAgICAgICAgIHggPSBhcmdzW2ldOwotICAgICAgICAgICAgICAgIFB5X0lOQ1JFRih4KTsKLSAgICAgICAgICAgICAgICBQeVR1cGxlX1NFVF9JVEVNKHUsIGktbiwgeCk7Ci0gICAgICAgICAgICB9CisgICAgfQorICAgIGZvciAoaSA9IDA7IGkgPCBrd2NvdW50OyBpKyspIHsKKyAgICAgICAgUHlPYmplY3QgKipjb192YXJuYW1lczsKKyAgICAgICAgUHlPYmplY3QgKmtleXdvcmQgPSBrd3NbMippXTsKKyAgICAgICAgUHlPYmplY3QgKnZhbHVlID0ga3dzWzIqaSArIDFdOworICAgICAgICBpbnQgajsKKyAgICAgICAgaWYgKGtleXdvcmQgPT0gTlVMTCB8fCAhUHlVbmljb2RlX0NoZWNrKGtleXdvcmQpKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICIlVSgpIGtleXdvcmRzIG11c3QgYmUgc3RyaW5ncyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgY28tPmNvX25hbWUpOworICAgICAgICAgICAgZ290byBmYWlsOwogICAgICAgICB9Ci0gICAgICAgIGZvciAoaSA9IDA7IGkgPCBrd2NvdW50OyBpKyspIHsKLSAgICAgICAgICAgIFB5T2JqZWN0ICoqY29fdmFybmFtZXM7Ci0gICAgICAgICAgICBQeU9iamVjdCAqa2V5d29yZCA9IGt3c1syKmldOwotICAgICAgICAgICAgUHlPYmplY3QgKnZhbHVlID0ga3dzWzIqaSArIDFdOwotICAgICAgICAgICAgaW50IGo7Ci0gICAgICAgICAgICBpZiAoa2V5d29yZCA9PSBOVUxMIHx8ICFQeVVuaWNvZGVfQ2hlY2soa2V5d29yZCkpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAiJVUoKSBrZXl3b3JkcyBtdXN0IGJlIHN0cmluZ3MiLAotICAgICAgICAgICAgICAgICAgICBjby0+Y29fbmFtZSk7CisgICAgICAgIC8qIFNwZWVkIGhhY2s6IGRvIHJhdyBwb2ludGVyIGNvbXBhcmVzLiBBcyBuYW1lcyBhcmUKKyAgICAgICAgICAgbm9ybWFsbHkgaW50ZXJuZWQgdGhpcyBzaG91bGQgYWxtb3N0IGFsd2F5cyBoaXQuICovCisgICAgICAgIGNvX3Zhcm5hbWVzID0gKChQeVR1cGxlT2JqZWN0ICopKGNvLT5jb192YXJuYW1lcykpLT5vYl9pdGVtOworICAgICAgICBmb3IgKGogPSAwOyBqIDwgdG90YWxfYXJnczsgaisrKSB7CisgICAgICAgICAgICBQeU9iamVjdCAqbm0gPSBjb192YXJuYW1lc1tqXTsKKyAgICAgICAgICAgIGlmIChubSA9PSBrZXl3b3JkKQorICAgICAgICAgICAgICAgIGdvdG8ga3dfZm91bmQ7CisgICAgICAgIH0KKyAgICAgICAgLyogU2xvdyBmYWxsYmFjaywganVzdCBpbiBjYXNlICovCisgICAgICAgIGZvciAoaiA9IDA7IGogPCB0b3RhbF9hcmdzOyBqKyspIHsKKyAgICAgICAgICAgIFB5T2JqZWN0ICpubSA9IGNvX3Zhcm5hbWVzW2pdOworICAgICAgICAgICAgaW50IGNtcCA9IFB5T2JqZWN0X1JpY2hDb21wYXJlQm9vbCgKKyAgICAgICAgICAgICAgICBrZXl3b3JkLCBubSwgUHlfRVEpOworICAgICAgICAgICAgaWYgKGNtcCA+IDApCisgICAgICAgICAgICAgICAgZ290byBrd19mb3VuZDsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNtcCA8IDApCiAgICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgLyogU3BlZWQgaGFjazogZG8gcmF3IHBvaW50ZXIgY29tcGFyZXMuIEFzIG5hbWVzIGFyZQotICAgICAgICAgICAgICAgbm9ybWFsbHkgaW50ZXJuZWQgdGhpcyBzaG91bGQgYWxtb3N0IGFsd2F5cyBoaXQuICovCi0gICAgICAgICAgICBjb192YXJuYW1lcyA9ICgoUHlUdXBsZU9iamVjdCAqKShjby0+Y29fdmFybmFtZXMpKS0+b2JfaXRlbTsKLSAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCB0b3RhbF9hcmdzOyBqKyspIHsKLSAgICAgICAgICAgICAgICBQeU9iamVjdCAqbm0gPSBjb192YXJuYW1lc1tqXTsKLSAgICAgICAgICAgICAgICBpZiAobm0gPT0ga2V5d29yZCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBrd19mb3VuZDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIFNsb3cgZmFsbGJhY2ssIGp1c3QgaW4gY2FzZSAqLwotICAgICAgICAgICAgZm9yIChqID0gMDsgaiA8IHRvdGFsX2FyZ3M7IGorKykgewotICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpubSA9IGNvX3Zhcm5hbWVzW2pdOwotICAgICAgICAgICAgICAgIGludCBjbXAgPSBQeU9iamVjdF9SaWNoQ29tcGFyZUJvb2woCi0gICAgICAgICAgICAgICAgICAgIGtleXdvcmQsIG5tLCBQeV9FUSk7Ci0gICAgICAgICAgICAgICAgaWYgKGNtcCA+IDApCi0gICAgICAgICAgICAgICAgICAgIGdvdG8ga3dfZm91bmQ7Ci0gICAgICAgICAgICAgICAgZWxzZSBpZiAoY21wIDwgMCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKGogPj0gdG90YWxfYXJncyAmJiBrd2RpY3QgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlVSgpIGdvdCBhbiB1bmV4cGVjdGVkICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImtleXdvcmQgYXJndW1lbnQgJyVTJyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvLT5jb19uYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXl3b3JkKTsKLSAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBQeURpY3RfU2V0SXRlbShrd2RpY3QsIGtleXdvcmQsIHZhbHVlKTsKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgIGt3X2ZvdW5kOgotICAgICAgICAgICAgaWYgKEdFVExPQ0FMKGopICE9IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgICIlVSgpIGdvdCBtdWx0aXBsZSAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlcyBmb3Iga2V5d29yZCAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgImFyZ3VtZW50ICclUyciLAorICAgICAgICB9CisgICAgICAgIGlmIChqID49IHRvdGFsX2FyZ3MgJiYga3dkaWN0ID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIiVVKCkgZ290IGFuIHVuZXhwZWN0ZWQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICJrZXl3b3JkIGFyZ3VtZW50ICclUyciLAogICAgICAgICAgICAgICAgICAgICAgICAgIGNvLT5jb19uYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgIGtleXdvcmQpOwotICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFB5X0lOQ1JFRih2YWx1ZSk7Ci0gICAgICAgICAgICBTRVRMT0NBTChqLCB2YWx1ZSk7CisgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKGNvLT5jb19rd29ubHlhcmdjb3VudCA+IDApIHsKLSAgICAgICAgICAgIGZvciAoaSA9IGNvLT5jb19hcmdjb3VudDsgaSA8IHRvdGFsX2FyZ3M7IGkrKykgewotICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpuYW1lOwotICAgICAgICAgICAgICAgIGlmIChHRVRMT0NBTChpKSAhPSBOVUxMKQotICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgICAgICBuYW1lID0gUHlUdXBsZV9HRVRfSVRFTShjby0+Y29fdmFybmFtZXMsIGkpOwotICAgICAgICAgICAgICAgIGlmIChrd2RlZnMgIT0gTlVMTCkgewotICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZGVmID0gUHlEaWN0X0dldEl0ZW0oa3dkZWZzLCBuYW1lKTsKLSAgICAgICAgICAgICAgICAgICAgaWYgKGRlZikgewotICAgICAgICAgICAgICAgICAgICAgICAgUHlfSU5DUkVGKGRlZik7Ci0gICAgICAgICAgICAgICAgICAgICAgICBTRVRMT0NBTChpLCBkZWYpOwotICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgIiVVKCkgbmVlZHMga2V5d29yZC1vbmx5IGFyZ3VtZW50ICVTIiwKLSAgICAgICAgICAgICAgICAgICAgY28tPmNvX25hbWUsIG5hbWUpOwotICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgIH0KKyAgICAgICAgUHlEaWN0X1NldEl0ZW0oa3dkaWN0LCBrZXl3b3JkLCB2YWx1ZSk7CisgICAgICAgIGNvbnRpbnVlOworICAgICAga3dfZm91bmQ6CisgICAgICAgIGlmIChHRVRMT0NBTChqKSAhPSBOVUxMKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICIlVSgpIGdvdCBtdWx0aXBsZSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgInZhbHVlcyBmb3IgYXJndW1lbnQgJyVTJyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgY28tPmNvX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAga2V5d29yZCk7CisgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKGFyZ2NvdW50IDwgY28tPmNvX2FyZ2NvdW50KSB7Ci0gICAgICAgICAgICBpbnQgbSA9IGNvLT5jb19hcmdjb3VudCAtIGRlZmNvdW50OwotICAgICAgICAgICAgZm9yIChpID0gYXJnY291bnQ7IGkgPCBtOyBpKyspIHsKLSAgICAgICAgICAgICAgICBpZiAoR0VUTE9DQUwoaSkgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgICAgICBpbnQgaiwgZ2l2ZW4gPSAwOwotICAgICAgICAgICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgY28tPmNvX2FyZ2NvdW50OyBqKyspCi0gICAgICAgICAgICAgICAgICAgICAgICBpZiAoR0VUTE9DQUwoaikpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2l2ZW4rKzsKLSAgICAgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICIlVSgpIHRha2VzICVzICVkICIKLSAgICAgICAgICAgICAgICAgICAgICAgICJhcmd1bWVudCVzICIKLSAgICAgICAgICAgICAgICAgICAgICAgICIoJWQgZ2l2ZW4pIiwKLSAgICAgICAgICAgICAgICAgICAgICAgIGNvLT5jb19uYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgKChjby0+Y29fZmxhZ3MgJiBDT19WQVJBUkdTKSB8fAotICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmNvdW50KSA/ICJhdCBsZWFzdCIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAiZXhhY3RseSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG0sIG0gPT0gMSA/ICIiIDogInMiLCBnaXZlbik7Ci0gICAgICAgICAgICAgICAgICAgIGdvdG8gZmFpbDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAobiA+IG0pCi0gICAgICAgICAgICAgICAgaSA9IG4gLSBtOwotICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIGkgPSAwOwotICAgICAgICAgICAgZm9yICg7IGkgPCBkZWZjb3VudDsgaSsrKSB7Ci0gICAgICAgICAgICAgICAgaWYgKEdFVExPQ0FMKG0raSkgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZGVmID0gZGVmc1tpXTsKLSAgICAgICAgICAgICAgICAgICAgUHlfSU5DUkVGKGRlZik7Ci0gICAgICAgICAgICAgICAgICAgIFNFVExPQ0FMKG0raSwgZGVmKTsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KKyAgICAgICAgUHlfSU5DUkVGKHZhbHVlKTsKKyAgICAgICAgU0VUTE9DQUwoaiwgdmFsdWUpOwogICAgIH0KLSAgICBlbHNlIGlmIChhcmdjb3VudCA+IDAgfHwga3djb3VudCA+IDApIHsKLSAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICIlVSgpIHRha2VzIG5vIGFyZ3VtZW50cyAoJWQgZ2l2ZW4pIiwKLSAgICAgICAgICAgICAgICAgICAgIGNvLT5jb19uYW1lLAotICAgICAgICAgICAgICAgICAgICAgYXJnY291bnQgKyBrd2NvdW50KTsKKyAgICBpZiAoYXJnY291bnQgPiBjby0+Y29fYXJnY291bnQgJiYgIShjby0+Y29fZmxhZ3MgJiBDT19WQVJBUkdTKSkgeworICAgICAgICB0b29fbWFueV9wb3NpdGlvbmFsKGNvLCBhcmdjb3VudCwgZGVmY291bnQsIGZhc3Rsb2NhbHMpOwogICAgICAgICBnb3RvIGZhaWw7CiAgICAgfQotICAgIC8qIEFsbG9jYXRlIGFuZCBpbml0aWFsaXplIHN0b3JhZ2UgZm9yIGNlbGwgdmFycywgYW5kIGNvcHkgZnJlZQotICAgICAgIHZhcnMgaW50byBmcmFtZS4gIFRoaXMgaXNuJ3QgdG9vIGVmZmljaWVudCByaWdodCBub3cuICovCi0gICAgaWYgKFB5VHVwbGVfR0VUX1NJWkUoY28tPmNvX2NlbGx2YXJzKSkgewotICAgICAgICBpbnQgaSwgaiwgbmFyZ3MsIGZvdW5kOwotICAgICAgICBQeV9VTklDT0RFICpjZWxsbmFtZSwgKmFyZ25hbWU7Ci0gICAgICAgIFB5T2JqZWN0ICpjOwotCi0gICAgICAgIG5hcmdzID0gdG90YWxfYXJnczsKLSAgICAgICAgaWYgKGNvLT5jb19mbGFncyAmIENPX1ZBUkFSR1MpCi0gICAgICAgICAgICBuYXJncysrOwotICAgICAgICBpZiAoY28tPmNvX2ZsYWdzICYgQ09fVkFSS0VZV09SRFMpCi0gICAgICAgICAgICBuYXJncysrOwotCi0gICAgICAgIC8qIEluaXRpYWxpemUgZWFjaCBjZWxsIHZhciwgdGFraW5nIGludG8gYWNjb3VudAotICAgICAgICAgICBjZWxsIHZhcnMgdGhhdCBhcmUgaW5pdGlhbGl6ZWQgZnJvbSBhcmd1bWVudHMuCi0KLSAgICAgICAgICAgU2hvdWxkIGFycmFuZ2UgZm9yIHRoZSBjb21waWxlciB0byBwdXQgY2VsbHZhcnMKLSAgICAgICAgICAgdGhhdCBhcmUgYXJndW1lbnRzIGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGNlbGx2YXJzCi0gICAgICAgICAgIGxpc3Qgc28gdGhhdCB3ZSBjYW4gbWFyY2ggb3ZlciBpdCBtb3JlIGVmZmljaWVudGx5PwotICAgICAgICAqLwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlUdXBsZV9HRVRfU0laRShjby0+Y29fY2VsbHZhcnMpOyArK2kpIHsKLSAgICAgICAgICAgIGNlbGxuYW1lID0gUHlVbmljb2RlX0FTX1VOSUNPREUoCi0gICAgICAgICAgICAgICAgUHlUdXBsZV9HRVRfSVRFTShjby0+Y29fY2VsbHZhcnMsIGkpKTsKLSAgICAgICAgICAgIGZvdW5kID0gMDsKLSAgICAgICAgICAgIGZvciAoaiA9IDA7IGogPCBuYXJnczsgaisrKSB7Ci0gICAgICAgICAgICAgICAgYXJnbmFtZSA9IFB5VW5pY29kZV9BU19VTklDT0RFKAotICAgICAgICAgICAgICAgICAgICBQeVR1cGxlX0dFVF9JVEVNKGNvLT5jb192YXJuYW1lcywgaikpOwotICAgICAgICAgICAgICAgIGlmIChQeV9VTklDT0RFX3N0cmNtcChjZWxsbmFtZSwgYXJnbmFtZSkgPT0gMCkgewotICAgICAgICAgICAgICAgICAgICBjID0gUHlDZWxsX05ldyhHRVRMT0NBTChqKSk7Ci0gICAgICAgICAgICAgICAgICAgIGlmIChjID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgICAgICAgICAgICAgIEdFVExPQ0FMKGNvLT5jb19ubG9jYWxzICsgaSkgPSBjOwotICAgICAgICAgICAgICAgICAgICBmb3VuZCA9IDE7Ci0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmIChmb3VuZCA9PSAwKSB7Ci0gICAgICAgICAgICAgICAgYyA9IFB5Q2VsbF9OZXcoTlVMTCk7Ci0gICAgICAgICAgICAgICAgaWYgKGMgPT0gTlVMTCkKLSAgICAgICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAgICAgICAgICAgIFNFVExPQ0FMKGNvLT5jb19ubG9jYWxzICsgaSwgYyk7CisgICAgaWYgKGFyZ2NvdW50IDwgY28tPmNvX2FyZ2NvdW50KSB7CisgICAgICAgIGludCBtID0gY28tPmNvX2FyZ2NvdW50IC0gZGVmY291bnQ7CisgICAgICAgIGludCBtaXNzaW5nID0gMDsKKyAgICAgICAgZm9yIChpID0gYXJnY291bnQ7IGkgPCBtOyBpKyspCisgICAgICAgICAgICBpZiAoR0VUTE9DQUwoaSkgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBtaXNzaW5nKys7CisgICAgICAgIGlmIChtaXNzaW5nKSB7CisgICAgICAgICAgICBtaXNzaW5nX2FyZ3VtZW50cyhjbywgbWlzc2luZywgZGVmY291bnQsIGZhc3Rsb2NhbHMpOworICAgICAgICAgICAgZ290byBmYWlsOworICAgICAgICB9CisgICAgICAgIGlmIChuID4gbSkKKyAgICAgICAgICAgIGkgPSBuIC0gbTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgaSA9IDA7CisgICAgICAgIGZvciAoOyBpIDwgZGVmY291bnQ7IGkrKykgeworICAgICAgICAgICAgaWYgKEdFVExPQ0FMKG0raSkgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpkZWYgPSBkZWZzW2ldOworICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihkZWYpOworICAgICAgICAgICAgICAgIFNFVExPQ0FMKG0raSwgZGVmKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KLSAgICBpZiAoUHlUdXBsZV9HRVRfU0laRShjby0+Y29fZnJlZXZhcnMpKSB7Ci0gICAgICAgIGludCBpOwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgUHlUdXBsZV9HRVRfU0laRShjby0+Y29fZnJlZXZhcnMpOyArK2kpIHsKLSAgICAgICAgICAgIFB5T2JqZWN0ICpvID0gUHlUdXBsZV9HRVRfSVRFTShjbG9zdXJlLCBpKTsKLSAgICAgICAgICAgIFB5X0lOQ1JFRihvKTsKLSAgICAgICAgICAgIGZyZWV2YXJzW1B5VHVwbGVfR0VUX1NJWkUoY28tPmNvX2NlbGx2YXJzKSArIGldID0gbzsKKyAgICBpZiAoY28tPmNvX2t3b25seWFyZ2NvdW50ID4gMCkgeworICAgICAgICBpbnQgbWlzc2luZyA9IDA7CisgICAgICAgIGZvciAoaSA9IGNvLT5jb19hcmdjb3VudDsgaSA8IHRvdGFsX2FyZ3M7IGkrKykgeworICAgICAgICAgICAgUHlPYmplY3QgKm5hbWU7CisgICAgICAgICAgICBpZiAoR0VUTE9DQUwoaSkgIT0gTlVMTCkKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgIG5hbWUgPSBQeVR1cGxlX0dFVF9JVEVNKGNvLT5jb192YXJuYW1lcywgaSk7CisgICAgICAgICAgICBpZiAoa3dkZWZzICE9IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBQeU9iamVjdCAqZGVmID0gUHlEaWN0X0dldEl0ZW0oa3dkZWZzLCBuYW1lKTsKKyAgICAgICAgICAgICAgICBpZiAoZGVmKSB7CisgICAgICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihkZWYpOworICAgICAgICAgICAgICAgICAgICBTRVRMT0NBTChpLCBkZWYpOworICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICBtaXNzaW5nKys7CiAgICAgICAgIH0KKyAgICAgICAgaWYgKG1pc3NpbmcpIHsKKyAgICAgICAgICAgIG1pc3NpbmdfYXJndW1lbnRzKGNvLCBtaXNzaW5nLCAtMSwgZmFzdGxvY2Fscyk7CisgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvKiBBbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBzdG9yYWdlIGZvciBjZWxsIHZhcnMsIGFuZCBjb3B5IGZyZWUKKyAgICAgICB2YXJzIGludG8gZnJhbWUuICovCisgICAgZm9yIChpID0gMDsgaSA8IFB5VHVwbGVfR0VUX1NJWkUoY28tPmNvX2NlbGx2YXJzKTsgKytpKSB7CisgICAgICAgIFB5T2JqZWN0ICpjOworICAgICAgICBpbnQgYXJnOworICAgICAgICAvKiBQb3NzaWJseSBhY2NvdW50IGZvciB0aGUgY2VsbCB2YXJpYWJsZSBiZWluZyBhbiBhcmd1bWVudC4gKi8KKyAgICAgICAgaWYgKGNvLT5jb19jZWxsMmFyZyAhPSBOVUxMICYmCisgICAgICAgICAgICAoYXJnID0gY28tPmNvX2NlbGwyYXJnW2ldKSAhPSBDT19DRUxMX05PVF9BTl9BUkcpCisgICAgICAgICAgICBjID0gUHlDZWxsX05ldyhHRVRMT0NBTChhcmcpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgYyA9IFB5Q2VsbF9OZXcoTlVMTCk7CisgICAgICAgIGlmIChjID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGZhaWw7CisgICAgICAgIFNFVExPQ0FMKGNvLT5jb19ubG9jYWxzICsgaSwgYyk7CisgICAgfQorICAgIGZvciAoaSA9IDA7IGkgPCBQeVR1cGxlX0dFVF9TSVpFKGNvLT5jb19mcmVldmFycyk7ICsraSkgeworICAgICAgICBQeU9iamVjdCAqbyA9IFB5VHVwbGVfR0VUX0lURU0oY2xvc3VyZSwgaSk7CisgICAgICAgIFB5X0lOQ1JFRihvKTsKKyAgICAgICAgZnJlZXZhcnNbUHlUdXBsZV9HRVRfU0laRShjby0+Y29fY2VsbHZhcnMpICsgaV0gPSBvOwogICAgIH0KIAogICAgIGlmIChjby0+Y29fZmxhZ3MgJiBDT19HRU5FUkFUT1IpIHsKQEAgLTMzNjUsMTggKzM0NDEsNzIgQEAKIAogCiBzdGF0aWMgUHlPYmplY3QgKgotc3BlY2lhbF9sb29rdXAoUHlPYmplY3QgKm8sIGNoYXIgKm1ldGgsIFB5T2JqZWN0ICoqY2FjaGUpCitzcGVjaWFsX2xvb2t1cChQeU9iamVjdCAqbywgX1B5X0lkZW50aWZpZXIgKmlkKQogewogICAgIFB5T2JqZWN0ICpyZXM7Ci0gICAgcmVzID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobywgbWV0aCwgY2FjaGUpOworICAgIHJlcyA9IF9QeU9iamVjdF9Mb29rdXBTcGVjaWFsKG8sIGlkKTsKICAgICBpZiAocmVzID09IE5VTEwgJiYgIVB5RXJyX09jY3VycmVkKCkpIHsKLSAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjX0F0dHJpYnV0ZUVycm9yLCAqY2FjaGUpOworICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNfQXR0cmlidXRlRXJyb3IsIGlkLT5vYmplY3QpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgcmV0dXJuIHJlczsKIH0KIAogCisvKiBUaGVzZSAzIGZ1bmN0aW9ucyBkZWFsIHdpdGggdGhlIGV4Y2VwdGlvbiBzdGF0ZSBvZiBnZW5lcmF0b3JzLiAqLworCitzdGF0aWMgdm9pZAorc2F2ZV9leGNfc3RhdGUoUHlUaHJlYWRTdGF0ZSAqdHN0YXRlLCBQeUZyYW1lT2JqZWN0ICpmKQoreworICAgIFB5T2JqZWN0ICp0eXBlLCAqdmFsdWUsICp0cmFjZWJhY2s7CisgICAgUHlfWElOQ1JFRih0c3RhdGUtPmV4Y190eXBlKTsKKyAgICBQeV9YSU5DUkVGKHRzdGF0ZS0+ZXhjX3ZhbHVlKTsKKyAgICBQeV9YSU5DUkVGKHRzdGF0ZS0+ZXhjX3RyYWNlYmFjayk7CisgICAgdHlwZSA9IGYtPmZfZXhjX3R5cGU7CisgICAgdmFsdWUgPSBmLT5mX2V4Y192YWx1ZTsKKyAgICB0cmFjZWJhY2sgPSBmLT5mX2V4Y190cmFjZWJhY2s7CisgICAgZi0+Zl9leGNfdHlwZSA9IHRzdGF0ZS0+ZXhjX3R5cGU7CisgICAgZi0+Zl9leGNfdmFsdWUgPSB0c3RhdGUtPmV4Y192YWx1ZTsKKyAgICBmLT5mX2V4Y190cmFjZWJhY2sgPSB0c3RhdGUtPmV4Y190cmFjZWJhY2s7CisgICAgUHlfWERFQ1JFRih0eXBlKTsKKyAgICBQeV9YREVDUkVGKHZhbHVlKTsKKyAgICBQeV9YREVDUkVGKHRyYWNlYmFjayk7Cit9CisKK3N0YXRpYyB2b2lkCitzd2FwX2V4Y19zdGF0ZShQeVRocmVhZFN0YXRlICp0c3RhdGUsIFB5RnJhbWVPYmplY3QgKmYpCit7CisgICAgUHlPYmplY3QgKnRtcDsKKyAgICB0bXAgPSB0c3RhdGUtPmV4Y190eXBlOworICAgIHRzdGF0ZS0+ZXhjX3R5cGUgPSBmLT5mX2V4Y190eXBlOworICAgIGYtPmZfZXhjX3R5cGUgPSB0bXA7CisgICAgdG1wID0gdHN0YXRlLT5leGNfdmFsdWU7CisgICAgdHN0YXRlLT5leGNfdmFsdWUgPSBmLT5mX2V4Y192YWx1ZTsKKyAgICBmLT5mX2V4Y192YWx1ZSA9IHRtcDsKKyAgICB0bXAgPSB0c3RhdGUtPmV4Y190cmFjZWJhY2s7CisgICAgdHN0YXRlLT5leGNfdHJhY2ViYWNrID0gZi0+Zl9leGNfdHJhY2ViYWNrOworICAgIGYtPmZfZXhjX3RyYWNlYmFjayA9IHRtcDsKK30KKworc3RhdGljIHZvaWQKK3Jlc3RvcmVfYW5kX2NsZWFyX2V4Y19zdGF0ZShQeVRocmVhZFN0YXRlICp0c3RhdGUsIFB5RnJhbWVPYmplY3QgKmYpCit7CisgICAgUHlPYmplY3QgKnR5cGUsICp2YWx1ZSwgKnRiOworICAgIHR5cGUgPSB0c3RhdGUtPmV4Y190eXBlOworICAgIHZhbHVlID0gdHN0YXRlLT5leGNfdmFsdWU7CisgICAgdGIgPSB0c3RhdGUtPmV4Y190cmFjZWJhY2s7CisgICAgdHN0YXRlLT5leGNfdHlwZSA9IGYtPmZfZXhjX3R5cGU7CisgICAgdHN0YXRlLT5leGNfdmFsdWUgPSBmLT5mX2V4Y192YWx1ZTsKKyAgICB0c3RhdGUtPmV4Y190cmFjZWJhY2sgPSBmLT5mX2V4Y190cmFjZWJhY2s7CisgICAgZi0+Zl9leGNfdHlwZSA9IE5VTEw7CisgICAgZi0+Zl9leGNfdmFsdWUgPSBOVUxMOworICAgIGYtPmZfZXhjX3RyYWNlYmFjayA9IE5VTEw7CisgICAgUHlfWERFQ1JFRih0eXBlKTsKKyAgICBQeV9YREVDUkVGKHZhbHVlKTsKKyAgICBQeV9YREVDUkVGKHRiKTsKK30KKworCiAvKiBMb2dpYyBmb3IgdGhlIHJhaXNlIHN0YXRlbWVudCAodG9vIGNvbXBsaWNhdGVkIGZvciBpbmxpbmluZykuCiAgICBUaGlzICpjb25zdW1lcyogYSByZWZlcmVuY2UgY291bnQgdG8gZWFjaCBvZiBpdHMgYXJndW1lbnRzLiAqLwogc3RhdGljIGVudW0gd2h5X2NvZGUKQEAgLTQxOTIsNyArNDMyMiw3IEBACiAgICAgICAgICAgICAgICAgaWYgKFB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfVHlwZUVycm9yKSkgewogICAgICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiUuMjAwcyUuMjAwcyBhcmd1bWVudCBhZnRlciAqICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtdXN0IGJlIGEgc2VxdWVuY2UsIG5vdCAlMjAwcyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibXVzdCBiZSBhIHNlcXVlbmNlLCBub3QgJS4yMDBzIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXZhbF9HZXRGdW5jTmFtZShmdW5jKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5RXZhbF9HZXRGdW5jRGVzYyhmdW5jKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJhcmctPm9iX3R5cGUtPnRwX25hbWUpOwpAQCAtNDM0Miw3ICs0NDcyLDkgQEAKIHN0YXRpYyBpbnQKIGltcG9ydF9hbGxfZnJvbShQeU9iamVjdCAqbG9jYWxzLCBQeU9iamVjdCAqdikKIHsKLSAgICBQeU9iamVjdCAqYWxsID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh2LCAiX19hbGxfXyIpOworICAgIF9QeV9JREVOVElGSUVSKF9fYWxsX18pOworICAgIF9QeV9JREVOVElGSUVSKF9fZGljdF9fKTsKKyAgICBQeU9iamVjdCAqYWxsID0gX1B5T2JqZWN0X0dldEF0dHJJZCh2LCAmUHlJZF9fX2FsbF9fKTsKICAgICBQeU9iamVjdCAqZGljdCwgKm5hbWUsICp2YWx1ZTsKICAgICBpbnQgc2tpcF9sZWFkaW5nX3VuZGVyc2NvcmVzID0gMDsKICAgICBpbnQgcG9zLCBlcnI7CkBAIC00MzUxLDcgKzQ0ODMsNyBAQAogICAgICAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfQXR0cmlidXRlRXJyb3IpKQogICAgICAgICAgICAgcmV0dXJuIC0xOyAvKiBVbmV4cGVjdGVkIGVycm9yICovCiAgICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgICAgIGRpY3QgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHYsICJfX2RpY3RfXyIpOworICAgICAgICBkaWN0ID0gX1B5T2JqZWN0X0dldEF0dHJJZCh2LCAmUHlJZF9fX2RpY3RfXyk7CiAgICAgICAgIGlmIChkaWN0ID09IE5VTEwpIHsKICAgICAgICAgICAgIGlmICghUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19BdHRyaWJ1dGVFcnJvcikpCiAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwpAQCAtNDM3Nyw3ICs0NTA5LDggQEAKICAgICAgICAgfQogICAgICAgICBpZiAoc2tpcF9sZWFkaW5nX3VuZGVyc2NvcmVzICYmCiAgICAgICAgICAgICBQeVVuaWNvZGVfQ2hlY2sobmFtZSkgJiYKLSAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKG5hbWUpWzBdID09ICdfJykKKyAgICAgICAgICAgIFB5VW5pY29kZV9SRUFEWShuYW1lKSAhPSAtMSAmJgorICAgICAgICAgICAgUHlVbmljb2RlX1JFQURfQ0hBUihuYW1lLCAwKSA9PSAnXycpCiAgICAgICAgIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihuYW1lKTsKICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtNDQzNywxOSArNDU3MCw5IEBACiAKIHN0YXRpYyBQeU9iamVjdCAqCiB1bmljb2RlX2NvbmNhdGVuYXRlKFB5T2JqZWN0ICp2LCBQeU9iamVjdCAqdywKLSAgICAgICAgICAgICAgICAgICBQeUZyYW1lT2JqZWN0ICpmLCB1bnNpZ25lZCBjaGFyICpuZXh0X2luc3RyKQorICAgICAgICAgICAgICAgICAgICBQeUZyYW1lT2JqZWN0ICpmLCB1bnNpZ25lZCBjaGFyICpuZXh0X2luc3RyKQogewotICAgIC8qIFRoaXMgZnVuY3Rpb24gaW1wbGVtZW50cyAndmFyaWFibGUgKz0gZXhwcicgd2hlbiBib3RoIGFyZ3VtZW50cwotICAgICAgIGFyZSAoVW5pY29kZSkgc3RyaW5ncy4gKi8KLSAgICBQeV9zc2l6ZV90IHZfbGVuID0gUHlVbmljb2RlX0dFVF9TSVpFKHYpOwotICAgIFB5X3NzaXplX3Qgd19sZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUodyk7Ci0gICAgUHlfc3NpemVfdCBuZXdfbGVuID0gdl9sZW4gKyB3X2xlbjsKLSAgICBpZiAobmV3X2xlbiA8IDApIHsKLSAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAic3RyaW5ncyBhcmUgdG9vIGxhcmdlIHRvIGNvbmNhdCIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0KKyAgICBQeU9iamVjdCAqcmVzOwogICAgIGlmIChQeV9SRUZDTlQodikgPT0gMikgewogICAgICAgICAvKiBJbiB0aGUgY29tbW9uIGNhc2UsIHRoZXJlIGFyZSAyIHJlZmVyZW5jZXMgdG8gdGhlIHZhbHVlCiAgICAgICAgICAqIHN0b3JlZCBpbiAndmFyaWFibGUnIHdoZW4gdGhlICs9IGlzIHBlcmZvcm1lZDogb25lIG9uIHRoZQpAQCAtNDQ5MCwzMSArNDYxMyw5IEBACiAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KLQotICAgIGlmIChQeV9SRUZDTlQodikgPT0gMSAmJiAhUHlVbmljb2RlX0NIRUNLX0lOVEVSTkVEKHYpKSB7Ci0gICAgICAgIC8qIE5vdyB3ZSBvd24gdGhlIGxhc3QgcmVmZXJlbmNlIHRvICd2Jywgc28gd2UgY2FuIHJlc2l6ZSBpdAotICAgICAgICAgKiBpbi1wbGFjZS4KLSAgICAgICAgICovCi0gICAgICAgIGlmIChQeVVuaWNvZGVfUmVzaXplKCZ2LCBuZXdfbGVuKSAhPSAwKSB7Ci0gICAgICAgICAgICAvKiBYWFggaWYgUHlVbmljb2RlX1Jlc2l6ZSgpIGZhaWxzLCAndicgaGFzIGJlZW4KLSAgICAgICAgICAgICAqIGRlYWxsb2NhdGVkIHNvIGl0IGNhbm5vdCBiZSBwdXQgYmFjayBpbnRvCi0gICAgICAgICAgICAgKiAndmFyaWFibGUnLiAgVGhlIE1lbW9yeUVycm9yIGlzIHJhaXNlZCB3aGVuIHRoZXJlCi0gICAgICAgICAgICAgKiBpcyBubyB2YWx1ZSBpbiAndmFyaWFibGUnLCB3aGljaCBtaWdodCAodmVyeQotICAgICAgICAgICAgICogcmVtb3RlbHkpIGJlIGEgY2F1c2Ugb2YgaW5jb21wYXRpYmlsaXRpZXMuCi0gICAgICAgICAgICAgKi8KLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICB9Ci0gICAgICAgIC8qIGNvcHkgJ3cnIGludG8gdGhlIG5ld2x5IGFsbG9jYXRlZCBhcmVhIG9mICd2JyAqLwotICAgICAgICBtZW1jcHkoUHlVbmljb2RlX0FTX1VOSUNPREUodikgKyB2X2xlbiwKLSAgICAgICAgICAgICAgIFB5VW5pY29kZV9BU19VTklDT0RFKHcpLCB3X2xlbipzaXplb2YoUHlfVU5JQ09ERSkpOwotICAgICAgICByZXR1cm4gdjsKLSAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8qIFdoZW4gaW4tcGxhY2UgcmVzaXppbmcgaXMgbm90IGFuIG9wdGlvbi4gKi8KLSAgICAgICAgdyA9IFB5VW5pY29kZV9Db25jYXQodiwgdyk7Ci0gICAgICAgIFB5X0RFQ1JFRih2KTsKLSAgICAgICAgcmV0dXJuIHc7Ci0gICAgfQorICAgIHJlcyA9IHY7CisgICAgUHlVbmljb2RlX0FwcGVuZCgmcmVzLCB3KTsKKyAgICByZXR1cm4gcmVzOwogfQogCiAjaWZkZWYgRFlOQU1JQ19FWEVDVVRJT05fUFJPRklMRQpkaWZmIC0tZ2l0IGEvUHl0aG9uL2NvZGVjcy5jIGIvUHl0aG9uL2NvZGVjcy5jCmluZGV4IGM3ZjRhOWMuLjYwN2ZlZWEgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9jb2RlY3MuYworKysgYi9QeXRob24vY29kZWNzLmMKQEAgLTExLDYgKzExLDggQEAKICNpbmNsdWRlICJQeXRob24uaCIKICNpbmNsdWRlIDxjdHlwZS5oPgogCitjb25zdCBjaGFyICpQeV9oZXhkaWdpdHMgPSAiMDEyMzQ1Njc4OWFiY2RlZiI7CisKIC8qIC0tLSBDb2RlYyBSZWdpc3RyeSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwogCiAvKiBJbXBvcnQgdGhlIHN0YW5kYXJkIGVuY29kaW5ncyBwYWNrYWdlIHdoaWNoIHdpbGwgcmVnaXN0ZXIgdGhlIGZpcnN0CkBAIC00NjUsOSArNDY3LDExIEBACiAKIHN0YXRpYyB2b2lkIHdyb25nX2V4Y2VwdGlvbl90eXBlKFB5T2JqZWN0ICpleGMpCiB7Ci0gICAgUHlPYmplY3QgKnR5cGUgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGV4YywgIl9fY2xhc3NfXyIpOworICAgIF9QeV9JREVOVElGSUVSKF9fY2xhc3NfXyk7CisgICAgX1B5X0lERU5USUZJRVIoX19uYW1lX18pOworICAgIFB5T2JqZWN0ICp0eXBlID0gX1B5T2JqZWN0X0dldEF0dHJJZChleGMsICZQeUlkX19fY2xhc3NfXyk7CiAgICAgaWYgKHR5cGUgIT0gTlVMTCkgewotICAgICAgICBQeU9iamVjdCAqbmFtZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcodHlwZSwgIl9fbmFtZV9fIik7CisgICAgICAgIFB5T2JqZWN0ICpuYW1lID0gX1B5T2JqZWN0X0dldEF0dHJJZCh0eXBlLCAmUHlJZF9fX25hbWVfXyk7CiAgICAgICAgIFB5X0RFQ1JFRih0eXBlKTsKICAgICAgICAgaWYgKG5hbWUgIT0gTlVMTCkgewogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKQEAgLTUwNiw1NyArNTEwLDU2IEBACiAgICAgICAgIHdyb25nX2V4Y2VwdGlvbl90eXBlKGV4Yyk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICAvKiBvdWNoOiBwYXNzaW5nIE5VTEwsIDAsIHBvcyBnaXZlcyBOb25lIGluc3RlYWQgb2YgdScnICovCi0gICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIih1I24pIiwgJmVuZCwgMCwgZW5kKTsKKyAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiKE5uKSIsIFB5VW5pY29kZV9OZXcoMCwgMCksIGVuZCk7CiB9CiAKIAogUHlPYmplY3QgKlB5Q29kZWNfUmVwbGFjZUVycm9ycyhQeU9iamVjdCAqZXhjKQogewotICAgIFB5T2JqZWN0ICpyZXN0dXBsZTsKLSAgICBQeV9zc2l6ZV90IHN0YXJ0OwotICAgIFB5X3NzaXplX3QgZW5kOwotICAgIFB5X3NzaXplX3QgaTsKKyAgICBQeV9zc2l6ZV90IHN0YXJ0LCBlbmQsIGksIGxlbjsKIAogICAgIGlmIChQeU9iamVjdF9Jc0luc3RhbmNlKGV4YywgUHlFeGNfVW5pY29kZUVuY29kZUVycm9yKSkgewogICAgICAgICBQeU9iamVjdCAqcmVzOwotICAgICAgICBQeV9VTklDT0RFICpwOworICAgICAgICBpbnQga2luZDsKKyAgICAgICAgdm9pZCAqZGF0YTsKICAgICAgICAgaWYgKFB5VW5pY29kZUVuY29kZUVycm9yX0dldFN0YXJ0KGV4YywgJnN0YXJ0KSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5kKGV4YywgJmVuZCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgcmVzID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIGVuZC1zdGFydCk7CisgICAgICAgIGxlbiA9IGVuZCAtIHN0YXJ0OworICAgICAgICByZXMgPSBQeVVuaWNvZGVfTmV3KGxlbiwgJz8nKTsKICAgICAgICAgaWYgKHJlcyA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGZvciAocCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlcyksIGkgPSBzdGFydDsKLSAgICAgICAgICAgIGk8ZW5kOyArK3AsICsraSkKLSAgICAgICAgICAgICpwID0gJz8nOwotICAgICAgICByZXN0dXBsZSA9IFB5X0J1aWxkVmFsdWUoIihPbikiLCByZXMsIGVuZCk7Ci0gICAgICAgIFB5X0RFQ1JFRihyZXMpOwotICAgICAgICByZXR1cm4gcmVzdHVwbGU7CisgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXMpOworICAgICAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEocmVzKTsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgKytpKQorICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIGksICc/Jyk7CisgICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIoTm4pIiwgcmVzLCBlbmQpOwogICAgIH0KICAgICBlbHNlIGlmIChQeU9iamVjdF9Jc0luc3RhbmNlKGV4YywgUHlFeGNfVW5pY29kZURlY29kZUVycm9yKSkgewotICAgICAgICBQeV9VTklDT0RFIHJlcyA9IFB5X1VOSUNPREVfUkVQTEFDRU1FTlRfQ0hBUkFDVEVSOwogICAgICAgICBpZiAoUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0RW5kKGV4YywgJmVuZCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIih1I24pIiwgJnJlcywgMSwgZW5kKTsKKyAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIihDbikiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW50KVB5X1VOSUNPREVfUkVQTEFDRU1FTlRfQ0hBUkFDVEVSLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmQpOwogICAgIH0KICAgICBlbHNlIGlmIChQeU9iamVjdF9Jc0luc3RhbmNlKGV4YywgUHlFeGNfVW5pY29kZVRyYW5zbGF0ZUVycm9yKSkgewogICAgICAgICBQeU9iamVjdCAqcmVzOwotICAgICAgICBQeV9VTklDT0RFICpwOworICAgICAgICBpbnQga2luZDsKKyAgICAgICAgdm9pZCAqZGF0YTsKICAgICAgICAgaWYgKFB5VW5pY29kZVRyYW5zbGF0ZUVycm9yX0dldFN0YXJ0KGV4YywgJnN0YXJ0KSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoUHlVbmljb2RlVHJhbnNsYXRlRXJyb3JfR2V0RW5kKGV4YywgJmVuZCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgcmVzID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIGVuZC1zdGFydCk7CisgICAgICAgIGxlbiA9IGVuZCAtIHN0YXJ0OworICAgICAgICByZXMgPSBQeVVuaWNvZGVfTmV3KGxlbiwgUHlfVU5JQ09ERV9SRVBMQUNFTUVOVF9DSEFSQUNURVIpOwogICAgICAgICBpZiAocmVzID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgZm9yIChwID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzKSwgaSA9IHN0YXJ0OwotICAgICAgICAgICAgaTxlbmQ7ICsrcCwgKytpKQotICAgICAgICAgICAgKnAgPSBQeV9VTklDT0RFX1JFUExBQ0VNRU5UX0NIQVJBQ1RFUjsKLSAgICAgICAgcmVzdHVwbGUgPSBQeV9CdWlsZFZhbHVlKCIoT24pIiwgcmVzLCBlbmQpOwotICAgICAgICBQeV9ERUNSRUYocmVzKTsKLSAgICAgICAgcmV0dXJuIHJlc3R1cGxlOworICAgICAgICBraW5kID0gUHlVbmljb2RlX0tJTkQocmVzKTsKKyAgICAgICAgZGF0YSA9IFB5VW5pY29kZV9EQVRBKHJlcyk7CisgICAgICAgIGZvciAoaT0wOyBpIDwgbGVuOyBpKyspCisgICAgICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgaSwgUHlfVU5JQ09ERV9SRVBMQUNFTUVOVF9DSEFSQUNURVIpOworICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiKE5uKSIsIHJlcywgZW5kKTsKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIHdyb25nX2V4Y2VwdGlvbl90eXBlKGV4Yyk7CkBAIC01NjksODIgKzU3Miw3MiBAQAogICAgIGlmIChQeU9iamVjdF9Jc0luc3RhbmNlKGV4YywgUHlFeGNfVW5pY29kZUVuY29kZUVycm9yKSkgewogICAgICAgICBQeU9iamVjdCAqcmVzdHVwbGU7CiAgICAgICAgIFB5T2JqZWN0ICpvYmplY3Q7CisgICAgICAgIFB5X3NzaXplX3QgaTsKICAgICAgICAgUHlfc3NpemVfdCBzdGFydDsKICAgICAgICAgUHlfc3NpemVfdCBlbmQ7CiAgICAgICAgIFB5T2JqZWN0ICpyZXM7Ci0gICAgICAgIFB5X1VOSUNPREUgKnA7Ci0gICAgICAgIFB5X1VOSUNPREUgKnN0YXJ0cDsKLSAgICAgICAgUHlfVU5JQ09ERSAqb3V0cDsKKyAgICAgICAgdW5zaWduZWQgY2hhciAqb3V0cDsKICAgICAgICAgaW50IHJlc3NpemU7CisgICAgICAgIFB5X1VDUzQgY2g7CiAgICAgICAgIGlmIChQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRTdGFydChleGMsICZzdGFydCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgaWYgKFB5VW5pY29kZUVuY29kZUVycm9yX0dldEVuZChleGMsICZlbmQpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIGlmICghKG9iamVjdCA9IFB5VW5pY29kZUVuY29kZUVycm9yX0dldE9iamVjdChleGMpKSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBzdGFydHAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShvYmplY3QpOwotICAgICAgICBmb3IgKHAgPSBzdGFydHArc3RhcnQsIHJlc3NpemUgPSAwOyBwIDwgc3RhcnRwK2VuZDsgKytwKSB7Ci0gICAgICAgICAgICBpZiAoKnA8MTApCisgICAgICAgIGZvciAoaSA9IHN0YXJ0LCByZXNzaXplID0gMDsgaSA8IGVuZDsgKytpKSB7CisgICAgICAgICAgICAvKiBvYmplY3QgaXMgZ3VhcmFudGVlZCB0byBiZSAicmVhZHkiICovCisgICAgICAgICAgICBjaCA9IFB5VW5pY29kZV9SRUFEX0NIQVIob2JqZWN0LCBpKTsKKyAgICAgICAgICAgIGlmIChjaDwxMCkKICAgICAgICAgICAgICAgICByZXNzaXplICs9IDIrMSsxOwotICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwKQorICAgICAgICAgICAgZWxzZSBpZiAoY2g8MTAwKQogICAgICAgICAgICAgICAgIHJlc3NpemUgKz0gMisyKzE7Ci0gICAgICAgICAgICBlbHNlIGlmICgqcDwxMDAwKQorICAgICAgICAgICAgZWxzZSBpZiAoY2g8MTAwMCkKICAgICAgICAgICAgICAgICByZXNzaXplICs9IDIrMysxOwotICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwMDApCisgICAgICAgICAgICBlbHNlIGlmIChjaDwxMDAwMCkKICAgICAgICAgICAgICAgICByZXNzaXplICs9IDIrNCsxOwotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoPDEwMDAwMCkKICAgICAgICAgICAgICAgICByZXNzaXplICs9IDIrNSsxOwotI2Vsc2UKLSAgICAgICAgICAgIGVsc2UgaWYgKCpwPDEwMDAwMCkKLSAgICAgICAgICAgICAgICByZXNzaXplICs9IDIrNSsxOwotICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwMDAwMCkKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoPDEwMDAwMDApCiAgICAgICAgICAgICAgICAgcmVzc2l6ZSArPSAyKzYrMTsKICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICByZXNzaXplICs9IDIrNysxOwotI2VuZGlmCiAgICAgICAgIH0KICAgICAgICAgLyogYWxsb2NhdGUgcmVwbGFjZW1lbnQgKi8KLSAgICAgICAgcmVzID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKE5VTEwsIHJlc3NpemUpOworICAgICAgICByZXMgPSBQeVVuaWNvZGVfTmV3KHJlc3NpemUsIDEyNyk7CiAgICAgICAgIGlmIChyZXMgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlfREVDUkVGKG9iamVjdCk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQorICAgICAgICBvdXRwID0gUHlVbmljb2RlXzFCWVRFX0RBVEEocmVzKTsKICAgICAgICAgLyogZ2VuZXJhdGUgcmVwbGFjZW1lbnQgKi8KLSAgICAgICAgZm9yIChwID0gc3RhcnRwK3N0YXJ0LCBvdXRwID0gUHlVbmljb2RlX0FTX1VOSUNPREUocmVzKTsKLSAgICAgICAgICAgIHAgPCBzdGFydHArZW5kOyArK3ApIHsKLSAgICAgICAgICAgIFB5X1VOSUNPREUgYyA9ICpwOworICAgICAgICBmb3IgKGkgPSBzdGFydDsgaSA8IGVuZDsgKytpKSB7CiAgICAgICAgICAgICBpbnQgZGlnaXRzOwogICAgICAgICAgICAgaW50IGJhc2U7CisgICAgICAgICAgICBjaCA9IFB5VW5pY29kZV9SRUFEX0NIQVIob2JqZWN0LCBpKTsKICAgICAgICAgICAgICpvdXRwKysgPSAnJic7CiAgICAgICAgICAgICAqb3V0cCsrID0gJyMnOwotICAgICAgICAgICAgaWYgKCpwPDEwKSB7CisgICAgICAgICAgICBpZiAoY2g8MTApIHsKICAgICAgICAgICAgICAgICBkaWdpdHMgPSAxOwogICAgICAgICAgICAgICAgIGJhc2UgPSAxOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwKSB7CisgICAgICAgICAgICBlbHNlIGlmIChjaDwxMDApIHsKICAgICAgICAgICAgICAgICBkaWdpdHMgPSAyOwogICAgICAgICAgICAgICAgIGJhc2UgPSAxMDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVsc2UgaWYgKCpwPDEwMDApIHsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoPDEwMDApIHsKICAgICAgICAgICAgICAgICBkaWdpdHMgPSAzOwogICAgICAgICAgICAgICAgIGJhc2UgPSAxMDA7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlIGlmICgqcDwxMDAwMCkgeworICAgICAgICAgICAgZWxzZSBpZiAoY2g8MTAwMDApIHsKICAgICAgICAgICAgICAgICBkaWdpdHMgPSA0OwogICAgICAgICAgICAgICAgIGJhc2UgPSAxMDAwOwogICAgICAgICAgICAgfQotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgZWxzZSBpZiAoY2g8MTAwMDAwKSB7CiAgICAgICAgICAgICAgICAgZGlnaXRzID0gNTsKICAgICAgICAgICAgICAgICBiYXNlID0gMTAwMDA7CiAgICAgICAgICAgICB9Ci0jZWxzZQotICAgICAgICAgICAgZWxzZSBpZiAoKnA8MTAwMDAwKSB7Ci0gICAgICAgICAgICAgICAgZGlnaXRzID0gNTsKLSAgICAgICAgICAgICAgICBiYXNlID0gMTAwMDA7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlIGlmICgqcDwxMDAwMDAwKSB7CisgICAgICAgICAgICBlbHNlIGlmIChjaDwxMDAwMDAwKSB7CiAgICAgICAgICAgICAgICAgZGlnaXRzID0gNjsKICAgICAgICAgICAgICAgICBiYXNlID0gMTAwMDAwOwogICAgICAgICAgICAgfQpAQCAtNjUyLDEwICs2NDUsOSBAQAogICAgICAgICAgICAgICAgIGRpZ2l0cyA9IDc7CiAgICAgICAgICAgICAgICAgYmFzZSA9IDEwMDAwMDA7CiAgICAgICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgICAgIHdoaWxlIChkaWdpdHMtLT4wKSB7Ci0gICAgICAgICAgICAgICAgKm91dHArKyA9ICcwJyArIGMvYmFzZTsKLSAgICAgICAgICAgICAgICBjICU9IGJhc2U7CisgICAgICAgICAgICAgICAgKm91dHArKyA9ICcwJyArIGNoL2Jhc2U7CisgICAgICAgICAgICAgICAgY2ggJT0gYmFzZTsKICAgICAgICAgICAgICAgICBiYXNlIC89IDEwOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgKm91dHArKyA9ICc7JzsKQEAgLTY3MSw4MyArNjYzLDYxIEBACiAgICAgfQogfQogCi1zdGF0aWMgUHlfVU5JQ09ERSBoZXhkaWdpdHNbXSA9IHsKLSAgICAnMCcsICcxJywgJzInLCAnMycsICc0JywgJzUnLCAnNicsICc3JywKLSAgICAnOCcsICc5JywgJ2EnLCAnYicsICdjJywgJ2QnLCAnZScsICdmJwotfTsKLQogUHlPYmplY3QgKlB5Q29kZWNfQmFja3NsYXNoUmVwbGFjZUVycm9ycyhQeU9iamVjdCAqZXhjKQogewotI2lmbmRlZiBQeV9VTklDT0RFX1dJREUKLSNkZWZpbmUgSVNfU1VSUk9HQVRFX1BBSVIocCwgZW5kKSBcCi0gICAgKCpwID49IDB4RDgwMCAmJiAqcCA8PSAweERCRkYgJiYgKHAgKyAxKSA8IGVuZCAmJiBcCi0gICAgICoocCArIDEpID49IDB4REMwMCAmJiAqKHAgKyAxKSA8PSAweERGRkYpCi0jZWxzZQotI2RlZmluZSBJU19TVVJST0dBVEVfUEFJUihwLCBlbmQpIDAKLSNlbmRpZgogICAgIGlmIChQeU9iamVjdF9Jc0luc3RhbmNlKGV4YywgUHlFeGNfVW5pY29kZUVuY29kZUVycm9yKSkgewogICAgICAgICBQeU9iamVjdCAqcmVzdHVwbGU7CiAgICAgICAgIFB5T2JqZWN0ICpvYmplY3Q7CisgICAgICAgIFB5X3NzaXplX3QgaTsKICAgICAgICAgUHlfc3NpemVfdCBzdGFydDsKICAgICAgICAgUHlfc3NpemVfdCBlbmQ7CiAgICAgICAgIFB5T2JqZWN0ICpyZXM7Ci0gICAgICAgIFB5X1VOSUNPREUgKnA7Ci0gICAgICAgIFB5X1VOSUNPREUgKnN0YXJ0cDsKLSAgICAgICAgUHlfVU5JQ09ERSAqb3V0cDsKKyAgICAgICAgdW5zaWduZWQgY2hhciAqb3V0cDsKICAgICAgICAgaW50IHJlc3NpemU7CisgICAgICAgIFB5X1VDUzQgYzsKICAgICAgICAgaWYgKFB5VW5pY29kZUVuY29kZUVycm9yX0dldFN0YXJ0KGV4YywgJnN0YXJ0KSkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICBpZiAoUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0RW5kKGV4YywgJmVuZCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgaWYgKCEob2JqZWN0ID0gUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0T2JqZWN0KGV4YykpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIHN0YXJ0cCA9IFB5VW5pY29kZV9BU19VTklDT0RFKG9iamVjdCk7Ci0gICAgICAgIGZvciAocCA9IHN0YXJ0cCtzdGFydCwgcmVzc2l6ZSA9IDA7IHAgPCBzdGFydHArZW5kOyArK3ApIHsKLSNpZmRlZiBQeV9VTklDT0RFX1dJREUKLSAgICAgICAgICAgIGlmICgqcCA+PSAweDAwMDEwMDAwKQorICAgICAgICBmb3IgKGkgPSBzdGFydCwgcmVzc2l6ZSA9IDA7IGkgPCBlbmQ7ICsraSkgeworICAgICAgICAgICAgLyogb2JqZWN0IGlzIGd1YXJhbnRlZWQgdG8gYmUgInJlYWR5IiAqLworICAgICAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEX0NIQVIob2JqZWN0LCBpKTsKKyAgICAgICAgICAgIGlmIChjID49IDB4MTAwMDApIHsKICAgICAgICAgICAgICAgICByZXNzaXplICs9IDErMSs4OwotICAgICAgICAgICAgZWxzZQotI2VuZGlmCi0gICAgICAgICAgICBpZiAoKnAgPj0gMHgxMDApIHsKLSAgICAgICAgICAgICAgICBpZiAoSVNfU1VSUk9HQVRFX1BBSVIocCwgc3RhcnRwK2VuZCkpIHsKLSAgICAgICAgICAgICAgICAgICAgcmVzc2l6ZSArPSAxKzErODsKLSAgICAgICAgICAgICAgICAgICAgKytwOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIHJlc3NpemUgKz0gMSsxKzQ7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlbHNlIGlmIChjID49IDB4MTAwKSB7CisgICAgICAgICAgICAgICAgcmVzc2l6ZSArPSAxKzErNDsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICByZXNzaXplICs9IDErMSsyOwogICAgICAgICB9Ci0gICAgICAgIHJlcyA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShOVUxMLCByZXNzaXplKTsKKyAgICAgICAgcmVzID0gUHlVbmljb2RlX05ldyhyZXNzaXplLCAxMjcpOwogICAgICAgICBpZiAocmVzPT1OVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGZvciAocCA9IHN0YXJ0cCtzdGFydCwgb3V0cCA9IFB5VW5pY29kZV9BU19VTklDT0RFKHJlcyk7Ci0gICAgICAgICAgICBwIDwgc3RhcnRwK2VuZDsgKytwKSB7Ci0gICAgICAgICAgICBQeV9VQ1M0IGMgPSAoUHlfVUNTNCkgKnA7CisgICAgICAgIGZvciAoaSA9IHN0YXJ0LCBvdXRwID0gUHlVbmljb2RlXzFCWVRFX0RBVEEocmVzKTsKKyAgICAgICAgICAgIGkgPCBlbmQ7ICsraSkgeworICAgICAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEX0NIQVIob2JqZWN0LCBpKTsKICAgICAgICAgICAgICpvdXRwKysgPSAnXFwnOwotICAgICAgICAgICAgaWYgKElTX1NVUlJPR0FURV9QQUlSKHAsIHN0YXJ0cCtlbmQpKSB7Ci0gICAgICAgICAgICAgICAgYyA9ICgoKnAgJiAweDNGRikgPDwgMTApICsgKCoocCArIDEpICYgMHgzRkYpICsgMHgxMDAwMDsKLSAgICAgICAgICAgICAgICArK3A7Ci0gICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoYyA+PSAweDAwMDEwMDAwKSB7CiAgICAgICAgICAgICAgICAgKm91dHArKyA9ICdVJzsKLSAgICAgICAgICAgICAgICAqb3V0cCsrID0gaGV4ZGlnaXRzWyhjPj4yOCkmMHhmXTsKLSAgICAgICAgICAgICAgICAqb3V0cCsrID0gaGV4ZGlnaXRzWyhjPj4yNCkmMHhmXTsKLSAgICAgICAgICAgICAgICAqb3V0cCsrID0gaGV4ZGlnaXRzWyhjPj4yMCkmMHhmXTsKLSAgICAgICAgICAgICAgICAqb3V0cCsrID0gaGV4ZGlnaXRzWyhjPj4xNikmMHhmXTsKLSAgICAgICAgICAgICAgICAqb3V0cCsrID0gaGV4ZGlnaXRzWyhjPj4xMikmMHhmXTsKLSAgICAgICAgICAgICAgICAqb3V0cCsrID0gaGV4ZGlnaXRzWyhjPj44KSYweGZdOworICAgICAgICAgICAgICAgICpvdXRwKysgPSBQeV9oZXhkaWdpdHNbKGM+PjI4KSYweGZdOworICAgICAgICAgICAgICAgICpvdXRwKysgPSBQeV9oZXhkaWdpdHNbKGM+PjI0KSYweGZdOworICAgICAgICAgICAgICAgICpvdXRwKysgPSBQeV9oZXhkaWdpdHNbKGM+PjIwKSYweGZdOworICAgICAgICAgICAgICAgICpvdXRwKysgPSBQeV9oZXhkaWdpdHNbKGM+PjE2KSYweGZdOworICAgICAgICAgICAgICAgICpvdXRwKysgPSBQeV9oZXhkaWdpdHNbKGM+PjEyKSYweGZdOworICAgICAgICAgICAgICAgICpvdXRwKysgPSBQeV9oZXhkaWdpdHNbKGM+PjgpJjB4Zl07CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmIChjID49IDB4MTAwKSB7CiAgICAgICAgICAgICAgICAgKm91dHArKyA9ICd1JzsKLSAgICAgICAgICAgICAgICAqb3V0cCsrID0gaGV4ZGlnaXRzWyhjPj4xMikmMHhmXTsKLSAgICAgICAgICAgICAgICAqb3V0cCsrID0gaGV4ZGlnaXRzWyhjPj44KSYweGZdOworICAgICAgICAgICAgICAgICpvdXRwKysgPSBQeV9oZXhkaWdpdHNbKGM+PjEyKSYweGZdOworICAgICAgICAgICAgICAgICpvdXRwKysgPSBQeV9oZXhkaWdpdHNbKGM+PjgpJjB4Zl07CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgKm91dHArKyA9ICd4JzsKLSAgICAgICAgICAgICpvdXRwKysgPSBoZXhkaWdpdHNbKGM+PjQpJjB4Zl07Ci0gICAgICAgICAgICAqb3V0cCsrID0gaGV4ZGlnaXRzW2MmMHhmXTsKKyAgICAgICAgICAgICpvdXRwKysgPSBQeV9oZXhkaWdpdHNbKGM+PjQpJjB4Zl07CisgICAgICAgICAgICAqb3V0cCsrID0gUHlfaGV4ZGlnaXRzW2MmMHhmXTsKICAgICAgICAgfQogCiAgICAgICAgIHJlc3R1cGxlID0gUHlfQnVpbGRWYWx1ZSgiKE9uKSIsIHJlcywgZW5kKTsKQEAgLTc1OSw3ICs3MjksNiBAQAogICAgICAgICB3cm9uZ19leGNlcHRpb25fdHlwZShleGMpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0jdW5kZWYgSVNfU1VSUk9HQVRFX1BBSVIKIH0KIAogLyogVGhpcyBoYW5kbGVyIGlzIGRlY2xhcmVkIHN0YXRpYyB1bnRpbCBzb21lb25lIGRlbW9uc3RyYXRlcwpAQCAtNzY5LDEyICs3MzgsMTEgQEAKIHsKICAgICBQeU9iamVjdCAqcmVzdHVwbGU7CiAgICAgUHlPYmplY3QgKm9iamVjdDsKKyAgICBQeV9zc2l6ZV90IGk7CiAgICAgUHlfc3NpemVfdCBzdGFydDsKICAgICBQeV9zc2l6ZV90IGVuZDsKICAgICBQeU9iamVjdCAqcmVzOwogICAgIGlmIChQeU9iamVjdF9Jc0luc3RhbmNlKGV4YywgUHlFeGNfVW5pY29kZUVuY29kZUVycm9yKSkgewotICAgICAgICBQeV9VTklDT0RFICpwOwotICAgICAgICBQeV9VTklDT0RFICpzdGFydHA7CiAgICAgICAgIGNoYXIgKm91dHA7CiAgICAgICAgIGlmIChQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRTdGFydChleGMsICZzdGFydCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTc4MiwxNSArNzUwLDE1IEBACiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgaWYgKCEob2JqZWN0ID0gUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0T2JqZWN0KGV4YykpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIHN0YXJ0cCA9IFB5VW5pY29kZV9BU19VTklDT0RFKG9iamVjdCk7CiAgICAgICAgIHJlcyA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgMyooZW5kLXN0YXJ0KSk7CiAgICAgICAgIGlmICghcmVzKSB7CiAgICAgICAgICAgICBQeV9ERUNSRUYob2JqZWN0KTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CiAgICAgICAgIG91dHAgPSBQeUJ5dGVzX0FzU3RyaW5nKHJlcyk7Ci0gICAgICAgIGZvciAocCA9IHN0YXJ0cCtzdGFydDsgcCA8IHN0YXJ0cCtlbmQ7IHArKykgewotICAgICAgICAgICAgUHlfVU5JQ09ERSBjaCA9ICpwOworICAgICAgICBmb3IgKGkgPSBzdGFydDsgaSA8IGVuZDsgaSsrKSB7CisgICAgICAgICAgICAvKiBvYmplY3QgaXMgZ3VhcmFudGVlZCB0byBiZSAicmVhZHkiICovCisgICAgICAgICAgICBQeV9VQ1M0IGNoID0gUHlVbmljb2RlX1JFQURfQ0hBUihvYmplY3QsIGkpOwogICAgICAgICAgICAgaWYgKGNoIDwgMHhkODAwIHx8IGNoID4gMHhkZmZmKSB7CiAgICAgICAgICAgICAgICAgLyogTm90IGEgc3Vycm9nYXRlLCBmYWlsIHdpdGggb3JpZ2luYWwgZXhjZXB0aW9uICovCiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjZXB0aW9uSW5zdGFuY2VfQ2xhc3MoZXhjKSwgZXhjKTsKQEAgLTgwOSw3ICs3NzcsNyBAQAogICAgIH0KICAgICBlbHNlIGlmIChQeU9iamVjdF9Jc0luc3RhbmNlKGV4YywgUHlFeGNfVW5pY29kZURlY29kZUVycm9yKSkgewogICAgICAgICB1bnNpZ25lZCBjaGFyICpwOwotICAgICAgICBQeV9VTklDT0RFIGNoID0gMDsKKyAgICAgICAgUHlfVUNTNCBjaCA9IDA7CiAgICAgICAgIGlmIChQeVVuaWNvZGVEZWNvZGVFcnJvcl9HZXRTdGFydChleGMsICZzdGFydCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgaWYgKCEob2JqZWN0ID0gUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0T2JqZWN0KGV4YykpKQpAQCAtODM1LDcgKzgwMywxMCBAQAogICAgICAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjZXB0aW9uSW5zdGFuY2VfQ2xhc3MoZXhjKSwgZXhjKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIHJldHVybiBQeV9CdWlsZFZhbHVlKCIodSNuKSIsICZjaCwgMSwgc3RhcnQrMyk7CisgICAgICAgIHJlcyA9IFB5VW5pY29kZV9Gcm9tT3JkaW5hbChjaCk7CisgICAgICAgIGlmIChyZXMgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiKE5uKSIsIHJlcywgc3RhcnQrMyk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICB3cm9uZ19leGNlcHRpb25fdHlwZShleGMpOwpAQCAtODQ4LDEyICs4MTksMTEgQEAKIHsKICAgICBQeU9iamVjdCAqcmVzdHVwbGU7CiAgICAgUHlPYmplY3QgKm9iamVjdDsKKyAgICBQeV9zc2l6ZV90IGk7CiAgICAgUHlfc3NpemVfdCBzdGFydDsKICAgICBQeV9zc2l6ZV90IGVuZDsKICAgICBQeU9iamVjdCAqcmVzOwogICAgIGlmIChQeU9iamVjdF9Jc0luc3RhbmNlKGV4YywgUHlFeGNfVW5pY29kZUVuY29kZUVycm9yKSkgewotICAgICAgICBQeV9VTklDT0RFICpwOwotICAgICAgICBQeV9VTklDT0RFICpzdGFydHA7CiAgICAgICAgIGNoYXIgKm91dHA7CiAgICAgICAgIGlmIChQeVVuaWNvZGVFbmNvZGVFcnJvcl9HZXRTdGFydChleGMsICZzdGFydCkpCiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTg2MSwxNSArODMxLDE1IEBACiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgaWYgKCEob2JqZWN0ID0gUHlVbmljb2RlRW5jb2RlRXJyb3JfR2V0T2JqZWN0KGV4YykpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIHN0YXJ0cCA9IFB5VW5pY29kZV9BU19VTklDT0RFKG9iamVjdCk7CiAgICAgICAgIHJlcyA9IFB5Qnl0ZXNfRnJvbVN0cmluZ0FuZFNpemUoTlVMTCwgZW5kLXN0YXJ0KTsKICAgICAgICAgaWYgKCFyZXMpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRihvYmplY3QpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICAgICAgb3V0cCA9IFB5Qnl0ZXNfQXNTdHJpbmcocmVzKTsKLSAgICAgICAgZm9yIChwID0gc3RhcnRwK3N0YXJ0OyBwIDwgc3RhcnRwK2VuZDsgcCsrKSB7Ci0gICAgICAgICAgICBQeV9VTklDT0RFIGNoID0gKnA7CisgICAgICAgIGZvciAoaSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHsKKyAgICAgICAgICAgIC8qIG9iamVjdCBpcyBndWFyYW50ZWVkIHRvIGJlICJyZWFkeSIgKi8KKyAgICAgICAgICAgIFB5X1VDUzQgY2ggPSBQeVVuaWNvZGVfUkVBRF9DSEFSKG9iamVjdCwgaSk7CiAgICAgICAgICAgICBpZiAoY2ggPCAweGRjODAgfHwgY2ggPiAweGRjZmYpIHsKICAgICAgICAgICAgICAgICAvKiBOb3QgYSBVVEYtOGIgc3Vycm9nYXRlLCBmYWlsIHdpdGggb3JpZ2luYWwgZXhjZXB0aW9uICovCiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0T2JqZWN0KFB5RXhjZXB0aW9uSW5zdGFuY2VfQ2xhc3MoZXhjKSwgZXhjKTsKQEAgLTg4NSw4ICs4NTUsOSBAQAogICAgICAgICByZXR1cm4gcmVzdHVwbGU7CiAgICAgfQogICAgIGVsc2UgaWYgKFB5T2JqZWN0X0lzSW5zdGFuY2UoZXhjLCBQeUV4Y19Vbmljb2RlRGVjb2RlRXJyb3IpKSB7CisgICAgICAgIFB5T2JqZWN0ICpzdHI7CiAgICAgICAgIHVuc2lnbmVkIGNoYXIgKnA7Ci0gICAgICAgIFB5X1VOSUNPREUgY2hbNF07IC8qIGRlY29kZSB1cCB0byA0IGJhZCBieXRlcy4gKi8KKyAgICAgICAgUHlfVUNTMiBjaFs0XTsgLyogZGVjb2RlIHVwIHRvIDQgYmFkIGJ5dGVzLiAqLwogICAgICAgICBpbnQgY29uc3VtZWQgPSAwOwogICAgICAgICBpZiAoUHlVbmljb2RlRGVjb2RlRXJyb3JfR2V0U3RhcnQoZXhjLCAmc3RhcnQpKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC05MTEsNyArODgyLDEwIEBACiAgICAgICAgICAgICBQeUVycl9TZXRPYmplY3QoUHlFeGNlcHRpb25JbnN0YW5jZV9DbGFzcyhleGMpLCBleGMpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KLSAgICAgICAgcmV0dXJuIFB5X0J1aWxkVmFsdWUoIih1I24pIiwgY2gsIGNvbnN1bWVkLCBzdGFydCtjb25zdW1lZCk7CisgICAgICAgIHN0ciA9IFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoUHlVbmljb2RlXzJCWVRFX0tJTkQsIGNoLCBjb25zdW1lZCk7CisgICAgICAgIGlmIChzdHIgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICByZXR1cm4gUHlfQnVpbGRWYWx1ZSgiKE5uKSIsIHN0ciwgc3RhcnQrY29uc3VtZWQpOwogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgd3JvbmdfZXhjZXB0aW9uX3R5cGUoZXhjKTsKQEAgLTEwNDgsNyArMTAyMiw3IEBACiAgICAgaW50ZXJwLT5jb2RlY19lcnJvcl9yZWdpc3RyeSA9IFB5RGljdF9OZXcoKTsKIAogICAgIGlmIChpbnRlcnAtPmNvZGVjX2Vycm9yX3JlZ2lzdHJ5KSB7Ci0gICAgICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YobWV0aG9kcykvc2l6ZW9mKG1ldGhvZHNbMF0pOyArK2kpIHsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IFB5X0FSUkFZX0xFTkdUSChtZXRob2RzKTsgKytpKSB7CiAgICAgICAgICAgICBQeU9iamVjdCAqZnVuYyA9IFB5Q0Z1bmN0aW9uX05ldygmbWV0aG9kc1tpXS5kZWYsIE5VTEwpOwogICAgICAgICAgICAgaW50IHJlczsKICAgICAgICAgICAgIGlmICghZnVuYykKZGlmZiAtLWdpdCBhL1B5dGhvbi9jb21waWxlLmMgYi9QeXRob24vY29tcGlsZS5jCmluZGV4IGJhNTkzYTAuLmI2NGM4MDAgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9jb21waWxlLmMKKysrIGIvUHl0aG9uL2NvbXBpbGUuYwpAQCAtOTAsNiArOTAsMTMgQEAKICAgICBiYXNpY2Jsb2NrICpmYl9ibG9jazsKIH07CiAKK2VudW0geworICAgIENPTVBJTEVSX1NDT1BFX01PRFVMRSwKKyAgICBDT01QSUxFUl9TQ09QRV9DTEFTUywKKyAgICBDT01QSUxFUl9TQ09QRV9GVU5DVElPTiwKKyAgICBDT01QSUxFUl9TQ09QRV9DT01QUkVIRU5TSU9OLAorfTsKKwogLyogVGhlIGZvbGxvd2luZyBpdGVtcyBjaGFuZ2Ugb24gZW50cnkgYW5kIGV4aXQgb2YgY29kZSBibG9ja3MuCiAgICBUaGV5IG11c3QgYmUgc2F2ZWQgYW5kIHJlc3RvcmVkIHdoZW4gcmV0dXJuaW5nIHRvIGEgYmxvY2suCiAqLwpAQCAtOTcsNiArMTA0LDkgQEAKICAgICBQeVNURW50cnlPYmplY3QgKnVfc3RlOwogCiAgICAgUHlPYmplY3QgKnVfbmFtZTsKKyAgICBQeU9iamVjdCAqdV9xdWFsbmFtZTsgIC8qIGRvdC1zZXBhcmF0ZWQgcXVhbGlmaWVkIG5hbWUgKGxhenkpICovCisgICAgaW50IHVfc2NvcGVfdHlwZTsKKwogICAgIC8qIFRoZSBmb2xsb3dpbmcgZmllbGRzIGFyZSBkaWN0cyB0aGF0IG1hcCBvYmplY3RzIHRvCiAgICAgICAgdGhlIGluZGV4IG9mIHRoZW0gaW4gY29fWFhYLiAgICAgIFRoZSBpbmRleCBpcyB1c2VkIGFzCiAgICAgICAgdGhlIGFyZ3VtZW50IGZvciBvcGNvZGVzIHRoYXQgcmVmZXIgdG8gdGhvc2UgY29sbGVjdGlvbnMuCkBAIC0xMzUsNiArMTQ1LDcgQEAKIAogc3RydWN0IGNvbXBpbGVyIHsKICAgICBjb25zdCBjaGFyICpjX2ZpbGVuYW1lOworICAgIFB5T2JqZWN0ICpjX2ZpbGVuYW1lX29iajsKICAgICBzdHJ1Y3Qgc3ltdGFibGUgKmNfc3Q7CiAgICAgUHlGdXR1cmVGZWF0dXJlcyAqY19mdXR1cmU7IC8qIHBvaW50ZXIgdG8gbW9kdWxlJ3MgX19mdXR1cmVfXyAqLwogICAgIFB5Q29tcGlsZXJGbGFncyAqY19mbGFnczsKQEAgLTE0OCw3ICsxNTksNyBAQAogICAgIFB5QXJlbmEgKmNfYXJlbmE7ICAgICAgICAgICAgLyogcG9pbnRlciB0byBtZW1vcnkgYWxsb2NhdGlvbiBhcmVuYSAqLwogfTsKIAotc3RhdGljIGludCBjb21waWxlcl9lbnRlcl9zY29wZShzdHJ1Y3QgY29tcGlsZXIgKiwgaWRlbnRpZmllciwgdm9pZCAqLCBpbnQpOworc3RhdGljIGludCBjb21waWxlcl9lbnRlcl9zY29wZShzdHJ1Y3QgY29tcGlsZXIgKiwgaWRlbnRpZmllciwgaW50LCB2b2lkICosIGludCk7CiBzdGF0aWMgdm9pZCBjb21waWxlcl9mcmVlKHN0cnVjdCBjb21waWxlciAqKTsKIHN0YXRpYyBiYXNpY2Jsb2NrICpjb21waWxlcl9uZXdfYmxvY2soc3RydWN0IGNvbXBpbGVyICopOwogc3RhdGljIGludCBjb21waWxlcl9uZXh0X2luc3RyKHN0cnVjdCBjb21waWxlciAqLCBiYXNpY2Jsb2NrICopOwpAQCAtMTc4LDEyICsxODksMTMgQEAKIHN0YXRpYyBpbnQgaW5wbGFjZV9iaW5vcChzdHJ1Y3QgY29tcGlsZXIgKiwgb3BlcmF0b3JfdHkpOwogc3RhdGljIGludCBleHByX2NvbnN0YW50KHN0cnVjdCBjb21waWxlciAqLCBleHByX3R5KTsKIAotc3RhdGljIGludCBjb21waWxlcl93aXRoKHN0cnVjdCBjb21waWxlciAqLCBzdG10X3R5KTsKK3N0YXRpYyBpbnQgY29tcGlsZXJfd2l0aChzdHJ1Y3QgY29tcGlsZXIgKiwgc3RtdF90eSwgaW50KTsKIHN0YXRpYyBpbnQgY29tcGlsZXJfY2FsbF9oZWxwZXIoc3RydWN0IGNvbXBpbGVyICpjLCBpbnQgbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNkbF9zZXEgKmFyZ3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzZGxfc2VxICprZXl3b3JkcywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcl90eSBzdGFyYXJncywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwcl90eSBrd2FyZ3MpOworc3RhdGljIGludCBjb21waWxlcl90cnlfZXhjZXB0KHN0cnVjdCBjb21waWxlciAqLCBzdG10X3R5KTsKIAogc3RhdGljIFB5Q29kZU9iamVjdCAqYXNzZW1ibGUoc3RydWN0IGNvbXBpbGVyICosIGludCBhZGROb25lKTsKIHN0YXRpYyBQeU9iamVjdCAqX19kb2NfXzsKQEAgLTE5NSwxNiArMjA3LDE3IEBACiB7CiAgICAgLyogTmFtZSBtYW5nbGluZzogX19wcml2YXRlIGJlY29tZXMgX2NsYXNzbmFtZV9fcHJpdmF0ZS4KICAgICAgICBUaGlzIGlzIGluZGVwZW5kZW50IGZyb20gaG93IHRoZSBuYW1lIGlzIHVzZWQuICovCi0gICAgY29uc3QgUHlfVU5JQ09ERSAqcCwgKm5hbWUgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShpZGVudCk7Ci0gICAgUHlfVU5JQ09ERSAqYnVmZmVyOwotICAgIHNpemVfdCBubGVuLCBwbGVuOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgc2l6ZV90IG5sZW4sIHBsZW4sIGlwcml2OworICAgIFB5X1VDUzQgbWF4Y2hhcjsKICAgICBpZiAocHJpdmF0ZW9iaiA9PSBOVUxMIHx8ICFQeVVuaWNvZGVfQ2hlY2socHJpdmF0ZW9iaikgfHwKLSAgICAgICAgbmFtZSA9PSBOVUxMIHx8IG5hbWVbMF0gIT0gJ18nIHx8IG5hbWVbMV0gIT0gJ18nKSB7CisgICAgICAgIFB5VW5pY29kZV9SRUFEX0NIQVIoaWRlbnQsIDApICE9ICdfJyB8fAorICAgICAgICBQeVVuaWNvZGVfUkVBRF9DSEFSKGlkZW50LCAxKSAhPSAnXycpIHsKICAgICAgICAgUHlfSU5DUkVGKGlkZW50KTsKICAgICAgICAgcmV0dXJuIGlkZW50OwogICAgIH0KLSAgICBwID0gUHlVbmljb2RlX0FTX1VOSUNPREUocHJpdmF0ZW9iaik7Ci0gICAgbmxlbiA9IFB5X1VOSUNPREVfc3RybGVuKG5hbWUpOworICAgIG5sZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChpZGVudCk7CisgICAgcGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHByaXZhdGVvYmopOwogICAgIC8qIERvbid0IG1hbmdsZSBfX2lkX18gb3IgbmFtZXMgd2l0aCBkb3RzLgogCiAgICAgICAgVGhlIG9ubHkgdGltZSBhIG5hbWUgd2l0aCBhIGRvdCBjYW4gb2NjdXIgaXMgd2hlbgpAQCAtMjE0LDMyICsyMjcsNDMgQEAKICAgICAgICBUT0RPKGpoeWx0b24pOiBEZWNpZGUgd2hldGhlciB3ZSB3YW50IHRvIHN1cHBvcnQKICAgICAgICBtYW5nbGluZyBvZiB0aGUgbW9kdWxlIG5hbWUsIGUuZy4gX19NLlguCiAgICAgKi8KLSAgICBpZiAoKG5hbWVbbmxlbi0xXSA9PSAnXycgJiYgbmFtZVtubGVuLTJdID09ICdfJykKLSAgICAgICAgfHwgUHlfVU5JQ09ERV9zdHJjaHIobmFtZSwgJy4nKSkgeworICAgIGlmICgoUHlVbmljb2RlX1JFQURfQ0hBUihpZGVudCwgbmxlbi0xKSA9PSAnXycgJiYKKyAgICAgICAgIFB5VW5pY29kZV9SRUFEX0NIQVIoaWRlbnQsIG5sZW4tMikgPT0gJ18nKSB8fAorICAgICAgICBQeVVuaWNvZGVfRmluZENoYXIoaWRlbnQsICcuJywgMCwgbmxlbiwgMSkgIT0gLTEpIHsKICAgICAgICAgUHlfSU5DUkVGKGlkZW50KTsKICAgICAgICAgcmV0dXJuIGlkZW50OyAvKiBEb24ndCBtYW5nbGUgX193aGF0ZXZlcl9fICovCiAgICAgfQogICAgIC8qIFN0cmlwIGxlYWRpbmcgdW5kZXJzY29yZXMgZnJvbSBjbGFzcyBuYW1lICovCi0gICAgd2hpbGUgKCpwID09ICdfJykKLSAgICAgICAgcCsrOwotICAgIGlmICgqcCA9PSAwKSB7CisgICAgaXByaXYgPSAwOworICAgIHdoaWxlIChQeVVuaWNvZGVfUkVBRF9DSEFSKHByaXZhdGVvYmosIGlwcml2KSA9PSAnXycpCisgICAgICAgIGlwcml2Kys7CisgICAgaWYgKGlwcml2ID09IHBsZW4pIHsKICAgICAgICAgUHlfSU5DUkVGKGlkZW50KTsKICAgICAgICAgcmV0dXJuIGlkZW50OyAvKiBEb24ndCBtYW5nbGUgaWYgY2xhc3MgaXMganVzdCB1bmRlcnNjb3JlcyAqLwogICAgIH0KLSAgICBwbGVuID0gUHlfVU5JQ09ERV9zdHJsZW4ocCk7CisgICAgcGxlbiAtPSBpcHJpdjsKIAogICAgIGFzc2VydCgxIDw9IFBZX1NTSVpFX1RfTUFYIC0gbmxlbik7CiAgICAgYXNzZXJ0KDEgKyBubGVuIDw9IFBZX1NTSVpFX1RfTUFYIC0gcGxlbik7CiAKLSAgICBpZGVudCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nQW5kU2l6ZShOVUxMLCAxICsgbmxlbiArIHBsZW4pOwotICAgIGlmICghaWRlbnQpCisgICAgbWF4Y2hhciA9IFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShpZGVudCk7CisgICAgaWYgKFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShwcml2YXRlb2JqKSA+IG1heGNoYXIpCisgICAgICAgIG1heGNoYXIgPSBQeVVuaWNvZGVfTUFYX0NIQVJfVkFMVUUocHJpdmF0ZW9iaik7CisKKyAgICByZXN1bHQgPSBQeVVuaWNvZGVfTmV3KDEgKyBubGVuICsgcGxlbiwgbWF4Y2hhcik7CisgICAgaWYgKCFyZXN1bHQpCiAgICAgICAgIHJldHVybiAwOwotICAgIC8qIGlkZW50ID0gIl8iICsgcFs6cGxlbl0gKyBuYW1lICMgaS5lLiAxK3BsZW4rbmxlbiBieXRlcyAqLwotICAgIGJ1ZmZlciA9IFB5VW5pY29kZV9BU19VTklDT0RFKGlkZW50KTsKLSAgICBidWZmZXJbMF0gPSAnXyc7Ci0gICAgUHlfVU5JQ09ERV9zdHJuY3B5KGJ1ZmZlcisxLCBwLCBwbGVuKTsKLSAgICBQeV9VTklDT0RFX3N0cmNweShidWZmZXIrMStwbGVuLCBuYW1lKTsKLSAgICByZXR1cm4gaWRlbnQ7CisgICAgLyogaWRlbnQgPSAiXyIgKyBwcml2W2lwcml2Ol0gKyBpZGVudCAjIGkuZS4gMStwbGVuK25sZW4gYnl0ZXMgKi8KKyAgICBQeVVuaWNvZGVfV1JJVEUoUHlVbmljb2RlX0tJTkQocmVzdWx0KSwgUHlVbmljb2RlX0RBVEEocmVzdWx0KSwgMCwgJ18nKTsKKyAgICBpZiAoUHlVbmljb2RlX0NvcHlDaGFyYWN0ZXJzKHJlc3VsdCwgMSwgcHJpdmF0ZW9iaiwgaXByaXYsIHBsZW4pIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGlmIChQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMocmVzdWx0LCBwbGVuKzEsIGlkZW50LCAwLCBubGVuKSA8IDApIHsKKyAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICByZXR1cm4gcmVzdWx0OwogfQogCiBzdGF0aWMgaW50CkBAIC0yNzIsNiArMjk2LDkgQEAKICAgICBpZiAoIWNvbXBpbGVyX2luaXQoJmMpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBjLmNfZmlsZW5hbWUgPSBmaWxlbmFtZTsKKyAgICBjLmNfZmlsZW5hbWVfb2JqID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChmaWxlbmFtZSk7CisgICAgaWYgKCFjLmNfZmlsZW5hbWVfb2JqKQorICAgICAgICBnb3RvIGZpbmFsbHk7CiAgICAgYy5jX2FyZW5hID0gYXJlbmE7CiAgICAgYy5jX2Z1dHVyZSA9IFB5RnV0dXJlX0Zyb21BU1QobW9kLCBmaWxlbmFtZSk7CiAgICAgaWYgKGMuY19mdXR1cmUgPT0gTlVMTCkKQEAgLTMyNCw2ICszNTEsOCBAQAogICAgICAgICBQeVN5bXRhYmxlX0ZyZWUoYy0+Y19zdCk7CiAgICAgaWYgKGMtPmNfZnV0dXJlKQogICAgICAgICBQeU9iamVjdF9GcmVlKGMtPmNfZnV0dXJlKTsKKyAgICBpZiAoYy0+Y19maWxlbmFtZV9vYmopCisgICAgICAgIFB5X0RFQ1JFRihjLT5jX2ZpbGVuYW1lX29iaik7CiAgICAgUHlfREVDUkVGKGMtPmNfc3RhY2spOwogfQogCkBAIC00MzgsNiArNDY3LDcgQEAKICAgICB9CiAgICAgUHlfQ0xFQVIodS0+dV9zdGUpOwogICAgIFB5X0NMRUFSKHUtPnVfbmFtZSk7CisgICAgUHlfQ0xFQVIodS0+dV9xdWFsbmFtZSk7CiAgICAgUHlfQ0xFQVIodS0+dV9jb25zdHMpOwogICAgIFB5X0NMRUFSKHUtPnVfbmFtZXMpOwogICAgIFB5X0NMRUFSKHUtPnVfdmFybmFtZXMpOwpAQCAtNDQ4LDggKzQ3OCw4IEBACiB9CiAKIHN0YXRpYyBpbnQKLWNvbXBpbGVyX2VudGVyX3Njb3BlKHN0cnVjdCBjb21waWxlciAqYywgaWRlbnRpZmllciBuYW1lLCB2b2lkICprZXksCi0gICAgICAgICAgICAgICAgICAgICBpbnQgbGluZW5vKQorY29tcGlsZXJfZW50ZXJfc2NvcGUoc3RydWN0IGNvbXBpbGVyICpjLCBpZGVudGlmaWVyIG5hbWUsCisgICAgICAgICAgICAgICAgICAgICBpbnQgc2NvcGVfdHlwZSwgdm9pZCAqa2V5LCBpbnQgbGluZW5vKQogewogICAgIHN0cnVjdCBjb21waWxlcl91bml0ICp1OwogCkBAIC00NjAsNiArNDkwLDcgQEAKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQogICAgIG1lbXNldCh1LCAwLCBzaXplb2Yoc3RydWN0IGNvbXBpbGVyX3VuaXQpKTsKKyAgICB1LT51X3Njb3BlX3R5cGUgPSBzY29wZV90eXBlOwogICAgIHUtPnVfYXJnY291bnQgPSAwOwogICAgIHUtPnVfa3dvbmx5YXJnY291bnQgPSAwOwogICAgIHUtPnVfc3RlID0gUHlTeW10YWJsZV9Mb29rdXAoYy0+Y19zdCwga2V5KTsKQEAgLTU0Nyw2ICs1NzgsNTkgQEAKIAogfQogCitzdGF0aWMgUHlPYmplY3QgKgorY29tcGlsZXJfc2NvcGVfcXVhbG5hbWUoc3RydWN0IGNvbXBpbGVyICpjKQoreworICAgIFB5X3NzaXplX3Qgc3RhY2tfc2l6ZSwgaTsKKyAgICBfUHlfc3RhdGljX3N0cmluZyhkb3QsICIuIik7CisgICAgX1B5X3N0YXRpY19zdHJpbmcobG9jYWxzLCAiPGxvY2Fscz4iKTsKKyAgICBzdHJ1Y3QgY29tcGlsZXJfdW5pdCAqdTsKKyAgICBQeU9iamVjdCAqY2Fwc3VsZSwgKm5hbWUsICpzZXEsICpkb3Rfc3RyLCAqbG9jYWxzX3N0cjsKKworICAgIHUgPSBjLT51OworICAgIGlmICh1LT51X3F1YWxuYW1lICE9IE5VTEwpIHsKKyAgICAgICAgUHlfSU5DUkVGKHUtPnVfcXVhbG5hbWUpOworICAgICAgICByZXR1cm4gdS0+dV9xdWFsbmFtZTsKKyAgICB9CisKKyAgICBzZXEgPSBQeUxpc3RfTmV3KDApOworICAgIGlmIChzZXEgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBzdGFja19zaXplID0gUHlMaXN0X0dFVF9TSVpFKGMtPmNfc3RhY2spOworICAgIGZvciAoaSA9IDA7IGkgPCBzdGFja19zaXplOyBpKyspIHsKKyAgICAgICAgY2Fwc3VsZSA9IFB5TGlzdF9HRVRfSVRFTShjLT5jX3N0YWNrLCBpKTsKKyAgICAgICAgdSA9IChzdHJ1Y3QgY29tcGlsZXJfdW5pdCAqKVB5Q2Fwc3VsZV9HZXRQb2ludGVyKGNhcHN1bGUsIENPTVBJTEVSX0NBUFNVTEVfTkFNRV9DT01QSUxFUl9VTklUKTsKKyAgICAgICAgYXNzZXJ0KHUpOworICAgICAgICBpZiAodS0+dV9zY29wZV90eXBlID09IENPTVBJTEVSX1NDT1BFX01PRFVMRSkKKyAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICBpZiAoUHlMaXN0X0FwcGVuZChzZXEsIHUtPnVfbmFtZSkpCisgICAgICAgICAgICBnb3RvIF9lcnJvcjsKKyAgICAgICAgaWYgKHUtPnVfc2NvcGVfdHlwZSA9PSBDT01QSUxFUl9TQ09QRV9GVU5DVElPTikgeworICAgICAgICAgICAgbG9jYWxzX3N0ciA9IF9QeVVuaWNvZGVfRnJvbUlkKCZsb2NhbHMpOworICAgICAgICAgICAgaWYgKGxvY2Fsc19zdHIgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBnb3RvIF9lcnJvcjsKKyAgICAgICAgICAgIGlmIChQeUxpc3RfQXBwZW5kKHNlcSwgbG9jYWxzX3N0cikpCisgICAgICAgICAgICAgICAgZ290byBfZXJyb3I7CisgICAgICAgIH0KKyAgICB9CisgICAgdSA9IGMtPnU7CisgICAgaWYgKFB5TGlzdF9BcHBlbmQoc2VxLCB1LT51X25hbWUpKQorICAgICAgICBnb3RvIF9lcnJvcjsKKyAgICBkb3Rfc3RyID0gX1B5VW5pY29kZV9Gcm9tSWQoJmRvdCk7CisgICAgaWYgKGRvdF9zdHIgPT0gTlVMTCkKKyAgICAgICAgZ290byBfZXJyb3I7CisgICAgbmFtZSA9IFB5VW5pY29kZV9Kb2luKGRvdF9zdHIsIHNlcSk7CisgICAgUHlfREVDUkVGKHNlcSk7CisgICAgdS0+dV9xdWFsbmFtZSA9IG5hbWU7CisgICAgUHlfWElOQ1JFRihuYW1lKTsKKyAgICByZXR1cm4gbmFtZTsKKworX2Vycm9yOgorICAgIFB5X1hERUNSRUYoc2VxKTsKKyAgICByZXR1cm4gTlVMTDsKK30KKwogLyogQWxsb2NhdGUgYSBuZXcgYmxvY2sgYW5kIHJldHVybiBhIHBvaW50ZXIgdG8gaXQuCiAgICBSZXR1cm5zIE5VTEwgb24gZXJyb3IuCiAqLwpAQCAtNzU2LDYgKzg0MCw3IEBACiAgICAgICAgIGNhc2UgSU1QT1JUX1NUQVI6CiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIGNhc2UgWUlFTERfVkFMVUU6CisgICAgICAgIGNhc2UgWUlFTERfRlJPTToKICAgICAgICAgICAgIHJldHVybiAwOwogCiAgICAgICAgIGNhc2UgUE9QX0JMT0NLOgpAQCAtODQzLDkgKzkyOCw5IEBACiAgICAgICAgIGNhc2UgQ0FMTF9GVU5DVElPTl9WQVJfS1c6CiAgICAgICAgICAgICByZXR1cm4gLU5BUkdTKG9wYXJnKS0yOwogICAgICAgICBjYXNlIE1BS0VfRlVOQ1RJT046Ci0gICAgICAgICAgICByZXR1cm4gLU5BUkdTKG9wYXJnKSAtICgob3BhcmcgPj4gMTYpICYgMHhmZmZmKTsKKyAgICAgICAgICAgIHJldHVybiAtMSAtTkFSR1Mob3BhcmcpIC0gKChvcGFyZyA+PiAxNikgJiAweGZmZmYpOwogICAgICAgICBjYXNlIE1BS0VfQ0xPU1VSRToKLSAgICAgICAgICAgIHJldHVybiAtMSAtIE5BUkdTKG9wYXJnKSAtICgob3BhcmcgPj4gMTYpICYgMHhmZmZmKTsKKyAgICAgICAgICAgIHJldHVybiAtMiAtIE5BUkdTKG9wYXJnKSAtICgob3BhcmcgPj4gMTYpICYgMHhmZmZmKTsKICN1bmRlZiBOQVJHUwogICAgICAgICBjYXNlIEJVSUxEX1NMSUNFOgogICAgICAgICAgICAgaWYgKG9wYXJnID09IDMpCkBAIC0xMTc1LDcgKzEyNjAsNyBAQAogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIC8qIFVzZSAwIGZvciBmaXJzdGxpbmVubyBpbml0aWFsbHksIHdpbGwgZml4dXAgaW4gYXNzZW1ibGUoKS4gKi8KLSAgICBpZiAoIWNvbXBpbGVyX2VudGVyX3Njb3BlKGMsIG1vZHVsZSwgbW9kLCAwKSkKKyAgICBpZiAoIWNvbXBpbGVyX2VudGVyX3Njb3BlKGMsIG1vZHVsZSwgQ09NUElMRVJfU0NPUEVfTU9EVUxFLCBtb2QsIDApKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBzd2l0Y2ggKG1vZC0+a2luZCkgewogICAgIGNhc2UgTW9kdWxlX2tpbmQ6CkBAIC0xMjUxLDExICsxMzM2LDE1IEBACiB9CiAKIHN0YXRpYyBpbnQKLWNvbXBpbGVyX21ha2VfY2xvc3VyZShzdHJ1Y3QgY29tcGlsZXIgKmMsIFB5Q29kZU9iamVjdCAqY28sIGludCBhcmdzKQorY29tcGlsZXJfbWFrZV9jbG9zdXJlKHN0cnVjdCBjb21waWxlciAqYywgUHlDb2RlT2JqZWN0ICpjbywgaW50IGFyZ3MsIFB5T2JqZWN0ICpxdWFsbmFtZSkKIHsKICAgICBpbnQgaSwgZnJlZSA9IFB5Q29kZV9HZXROdW1GcmVlKGNvKTsKKyAgICBpZiAocXVhbG5hbWUgPT0gTlVMTCkKKyAgICAgICAgcXVhbG5hbWUgPSBjby0+Y29fbmFtZTsKKwogICAgIGlmIChmcmVlID09IDApIHsKICAgICAgICAgQURET1BfTyhjLCBMT0FEX0NPTlNULCAoUHlPYmplY3QqKWNvLCBjb25zdHMpOworICAgICAgICBBRERPUF9PKGMsIExPQURfQ09OU1QsIHF1YWxuYW1lLCBjb25zdHMpOwogICAgICAgICBBRERPUF9JKGMsIE1BS0VfRlVOQ1RJT04sIGFyZ3MpOwogICAgICAgICByZXR1cm4gMTsKICAgICB9CkBAIC0xMjkyLDYgKzEzODEsNyBAQAogICAgIH0KICAgICBBRERPUF9JKGMsIEJVSUxEX1RVUExFLCBmcmVlKTsKICAgICBBRERPUF9PKGMsIExPQURfQ09OU1QsIChQeU9iamVjdCopY28sIGNvbnN0cyk7CisgICAgQURET1BfTyhjLCBMT0FEX0NPTlNULCBxdWFsbmFtZSwgY29uc3RzKTsKICAgICBBRERPUF9JKGMsIE1BS0VfQ0xPU1VSRSwgYXJncyk7CiAgICAgcmV0dXJuIDE7CiB9CkBAIC0xNDMzLDcgKzE1MjMsNyBAQAogY29tcGlsZXJfZnVuY3Rpb24oc3RydWN0IGNvbXBpbGVyICpjLCBzdG10X3R5IHMpCiB7CiAgICAgUHlDb2RlT2JqZWN0ICpjbzsKLSAgICBQeU9iamVjdCAqZmlyc3RfY29uc3QgPSBQeV9Ob25lOworICAgIFB5T2JqZWN0ICpxdWFsbmFtZSwgKmZpcnN0X2NvbnN0ID0gUHlfTm9uZTsKICAgICBhcmd1bWVudHNfdHkgYXJncyA9IHMtPnYuRnVuY3Rpb25EZWYuYXJnczsKICAgICBleHByX3R5IHJldHVybnMgPSBzLT52LkZ1bmN0aW9uRGVmLnJldHVybnM7CiAgICAgYXNkbF9zZXEqIGRlY29zID0gcy0+di5GdW5jdGlvbkRlZi5kZWNvcmF0b3JfbGlzdDsKQEAgLTE0NTksNyArMTU0OSw4IEBACiAgICAgICAgIHJldHVybiAwOwogICAgIGFzc2VydCgobnVtX2Fubm90YXRpb25zICYgMHhGRkZGKSA9PSBudW1fYW5ub3RhdGlvbnMpOwogCi0gICAgaWYgKCFjb21waWxlcl9lbnRlcl9zY29wZShjLCBzLT52LkZ1bmN0aW9uRGVmLm5hbWUsICh2b2lkICopcywKKyAgICBpZiAoIWNvbXBpbGVyX2VudGVyX3Njb3BlKGMsIHMtPnYuRnVuY3Rpb25EZWYubmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENPTVBJTEVSX1NDT1BFX0ZVTkNUSU9OLCAodm9pZCAqKXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLT5saW5lbm8pKQogICAgICAgICByZXR1cm4gMDsKIApAQCAtMTQ4MSwxNCArMTU3MiwxOSBAQAogICAgICAgICBWSVNJVF9JTl9TQ09QRShjLCBzdG10LCBzdCk7CiAgICAgfQogICAgIGNvID0gYXNzZW1ibGUoYywgMSk7CisgICAgcXVhbG5hbWUgPSBjb21waWxlcl9zY29wZV9xdWFsbmFtZShjKTsKICAgICBjb21waWxlcl9leGl0X3Njb3BlKGMpOwotICAgIGlmIChjbyA9PSBOVUxMKQorICAgIGlmIChxdWFsbmFtZSA9PSBOVUxMIHx8IGNvID09IE5VTEwpIHsKKyAgICAgICAgUHlfWERFQ1JFRihxdWFsbmFtZSk7CisgICAgICAgIFB5X1hERUNSRUYoY28pOwogICAgICAgICByZXR1cm4gMDsKKyAgICB9CiAKICAgICBhcmdsZW5ndGggPSBhc2RsX3NlcV9MRU4oYXJncy0+ZGVmYXVsdHMpOwogICAgIGFyZ2xlbmd0aCB8PSBrd19kZWZhdWx0X2NvdW50IDw8IDg7CiAgICAgYXJnbGVuZ3RoIHw9IG51bV9hbm5vdGF0aW9ucyA8PCAxNjsKLSAgICBjb21waWxlcl9tYWtlX2Nsb3N1cmUoYywgY28sIGFyZ2xlbmd0aCk7CisgICAgY29tcGlsZXJfbWFrZV9jbG9zdXJlKGMsIGNvLCBhcmdsZW5ndGgsIHF1YWxuYW1lKTsKKyAgICBQeV9ERUNSRUYocXVhbG5hbWUpOwogICAgIFB5X0RFQ1JFRihjbyk7CiAKICAgICAvKiBkZWNvcmF0b3JzICovCkBAIC0xNTIzLDcgKzE2MTksOCBAQAogICAgICovCiAKICAgICAvKiAxLiBjb21waWxlIHRoZSBjbGFzcyBib2R5IGludG8gYSBjb2RlIG9iamVjdCAqLwotICAgIGlmICghY29tcGlsZXJfZW50ZXJfc2NvcGUoYywgcy0+di5DbGFzc0RlZi5uYW1lLCAodm9pZCAqKXMsIHMtPmxpbmVubykpCisgICAgaWYgKCFjb21waWxlcl9lbnRlcl9zY29wZShjLCBzLT52LkNsYXNzRGVmLm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDT01QSUxFUl9TQ09QRV9DTEFTUywgKHZvaWQgKilzLCBzLT5saW5lbm8pKQogICAgICAgICByZXR1cm4gMDsKICAgICAvKiB0aGlzIGJsb2NrIHJlcHJlc2VudHMgd2hhdCB3ZSBkbyBpbiB0aGUgbmV3IHNjb3BlICovCiAgICAgewpAQCAtMTU1MywxMyArMTY1MCwyOCBAQAogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KICAgICAgICAgUHlfREVDUkVGKHN0cik7CisgICAgICAgIC8qIHN0b3JlIHRoZSBfX3F1YWxuYW1lX18gKi8KKyAgICAgICAgc3RyID0gY29tcGlsZXJfc2NvcGVfcXVhbG5hbWUoYyk7CisgICAgICAgIGlmICghc3RyKSB7CisgICAgICAgICAgICBjb21waWxlcl9leGl0X3Njb3BlKGMpOworICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0KKyAgICAgICAgQURET1BfTyhjLCBMT0FEX0NPTlNULCBzdHIsIGNvbnN0cyk7CisgICAgICAgIFB5X0RFQ1JFRihzdHIpOworICAgICAgICBzdHIgPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZygiX19xdWFsbmFtZV9fIik7CisgICAgICAgIGlmICghc3RyIHx8ICFjb21waWxlcl9uYW1lb3AoYywgc3RyLCBTdG9yZSkpIHsKKyAgICAgICAgICAgIFB5X1hERUNSRUYoc3RyKTsKKyAgICAgICAgICAgIGNvbXBpbGVyX2V4aXRfc2NvcGUoYyk7CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgfQorICAgICAgICBQeV9ERUNSRUYoc3RyKTsKICAgICAgICAgLyogY29tcGlsZSB0aGUgYm9keSBwcm9wZXIgKi8KICAgICAgICAgaWYgKCFjb21waWxlcl9ib2R5KGMsIHMtPnYuQ2xhc3NEZWYuYm9keSkpIHsKICAgICAgICAgICAgIGNvbXBpbGVyX2V4aXRfc2NvcGUoYyk7CiAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQogICAgICAgICAvKiByZXR1cm4gdGhlIChlbXB0eSkgX19jbGFzc19fIGNlbGwgKi8KLSAgICAgICAgc3RyID0gUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcoIl9fY2xhc3NfXyIpOworICAgICAgICBzdHIgPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZygiQF9fY2xhc3NfXyIpOwogICAgICAgICBpZiAoc3RyID09IE5VTEwpIHsKICAgICAgICAgICAgIGNvbXBpbGVyX2V4aXRfc2NvcGUoYyk7CiAgICAgICAgICAgICByZXR1cm4gMDsKQEAgLTE1ODksNyArMTcwMSw3IEBACiAgICAgQURET1AoYywgTE9BRF9CVUlMRF9DTEFTUyk7CiAKICAgICAvKiAzLiBsb2FkIGEgZnVuY3Rpb24gKG9yIGNsb3N1cmUpIG1hZGUgZnJvbSB0aGUgY29kZSBvYmplY3QgKi8KLSAgICBjb21waWxlcl9tYWtlX2Nsb3N1cmUoYywgY28sIDApOworICAgIGNvbXBpbGVyX21ha2VfY2xvc3VyZShjLCBjbywgMCwgTlVMTCk7CiAgICAgUHlfREVDUkVGKGNvKTsKIAogICAgIC8qIDQuIGxvYWQgY2xhc3MgbmFtZSAqLwpAQCAtMTY0MCw2ICsxNzUyLDcgQEAKIGNvbXBpbGVyX2xhbWJkYShzdHJ1Y3QgY29tcGlsZXIgKmMsIGV4cHJfdHkgZSkKIHsKICAgICBQeUNvZGVPYmplY3QgKmNvOworICAgIFB5T2JqZWN0ICpxdWFsbmFtZTsKICAgICBzdGF0aWMgaWRlbnRpZmllciBuYW1lOwogICAgIGludCBrd19kZWZhdWx0X2NvdW50ID0gMCwgYXJnbGVuZ3RoOwogICAgIGFyZ3VtZW50c190eSBhcmdzID0gZS0+di5MYW1iZGEuYXJnczsKQEAgLTE2NTksNyArMTc3Miw4IEBACiAgICAgfQogICAgIGlmIChhcmdzLT5kZWZhdWx0cykKICAgICAgICAgVklTSVRfU0VRKGMsIGV4cHIsIGFyZ3MtPmRlZmF1bHRzKTsKLSAgICBpZiAoIWNvbXBpbGVyX2VudGVyX3Njb3BlKGMsIG5hbWUsICh2b2lkICopZSwgZS0+bGluZW5vKSkKKyAgICBpZiAoIWNvbXBpbGVyX2VudGVyX3Njb3BlKGMsIG5hbWUsIENPTVBJTEVSX1NDT1BFX0ZVTkNUSU9OLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZvaWQgKillLCBlLT5saW5lbm8pKQogICAgICAgICByZXR1cm4gMDsKIAogICAgIC8qIE1ha2UgTm9uZSB0aGUgZmlyc3QgY29uc3RhbnQsIHNvIHRoZSBsYW1iZGEgY2FuJ3QgaGF2ZSBhCkBAIC0xNjc3LDEzICsxNzkxLDE1IEBACiAgICAgICAgIEFERE9QX0lOX1NDT1BFKGMsIFJFVFVSTl9WQUxVRSk7CiAgICAgfQogICAgIGNvID0gYXNzZW1ibGUoYywgMSk7CisgICAgcXVhbG5hbWUgPSBjb21waWxlcl9zY29wZV9xdWFsbmFtZShjKTsKICAgICBjb21waWxlcl9leGl0X3Njb3BlKGMpOwotICAgIGlmIChjbyA9PSBOVUxMKQorICAgIGlmIChxdWFsbmFtZSA9PSBOVUxMIHx8IGNvID09IE5VTEwpCiAgICAgICAgIHJldHVybiAwOwogCiAgICAgYXJnbGVuZ3RoID0gYXNkbF9zZXFfTEVOKGFyZ3MtPmRlZmF1bHRzKTsKICAgICBhcmdsZW5ndGggfD0ga3dfZGVmYXVsdF9jb3VudCA8PCA4OwotICAgIGNvbXBpbGVyX21ha2VfY2xvc3VyZShjLCBjbywgYXJnbGVuZ3RoKTsKKyAgICBjb21waWxlcl9tYWtlX2Nsb3N1cmUoYywgY28sIGFyZ2xlbmd0aCwgcXVhbG5hbWUpOworICAgIFB5X0RFQ1JFRihxdWFsbmFtZSk7CiAgICAgUHlfREVDUkVGKGNvKTsKIAogICAgIHJldHVybiAxOwpAQCAtMTg5Miw3ICsyMDA4LDEzIEBACiAgICAgY29tcGlsZXJfdXNlX25leHRfYmxvY2soYywgYm9keSk7CiAgICAgaWYgKCFjb21waWxlcl9wdXNoX2ZibG9jayhjLCBGSU5BTExZX1RSWSwgYm9keSkpCiAgICAgICAgIHJldHVybiAwOwotICAgIFZJU0lUX1NFUShjLCBzdG10LCBzLT52LlRyeUZpbmFsbHkuYm9keSk7CisgICAgaWYgKHMtPnYuVHJ5LmhhbmRsZXJzICYmIGFzZGxfc2VxX0xFTihzLT52LlRyeS5oYW5kbGVycykpIHsKKyAgICAgICAgaWYgKCFjb21waWxlcl90cnlfZXhjZXB0KGMsIHMpKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBWSVNJVF9TRVEoYywgc3RtdCwgcy0+di5UcnkuYm9keSk7CisgICAgfQogICAgIEFERE9QKGMsIFBPUF9CTE9DSyk7CiAgICAgY29tcGlsZXJfcG9wX2ZibG9jayhjLCBGSU5BTExZX1RSWSwgYm9keSk7CiAKQEAgLTE5MDAsNyArMjAyMiw3IEBACiAgICAgY29tcGlsZXJfdXNlX25leHRfYmxvY2soYywgZW5kKTsKICAgICBpZiAoIWNvbXBpbGVyX3B1c2hfZmJsb2NrKGMsIEZJTkFMTFlfRU5ELCBlbmQpKQogICAgICAgICByZXR1cm4gMDsKLSAgICBWSVNJVF9TRVEoYywgc3RtdCwgcy0+di5UcnlGaW5hbGx5LmZpbmFsYm9keSk7CisgICAgVklTSVRfU0VRKGMsIHN0bXQsIHMtPnYuVHJ5LmZpbmFsYm9keSk7CiAgICAgQURET1AoYywgRU5EX0ZJTkFMTFkpOwogICAgIGNvbXBpbGVyX3BvcF9mYmxvY2soYywgRklOQUxMWV9FTkQsIGVuZCk7CiAKQEAgLTE5NTQsMTUgKzIwNzYsMTUgQEAKICAgICBjb21waWxlcl91c2VfbmV4dF9ibG9jayhjLCBib2R5KTsKICAgICBpZiAoIWNvbXBpbGVyX3B1c2hfZmJsb2NrKGMsIEVYQ0VQVCwgYm9keSkpCiAgICAgICAgIHJldHVybiAwOwotICAgIFZJU0lUX1NFUShjLCBzdG10LCBzLT52LlRyeUV4Y2VwdC5ib2R5KTsKKyAgICBWSVNJVF9TRVEoYywgc3RtdCwgcy0+di5UcnkuYm9keSk7CiAgICAgQURET1AoYywgUE9QX0JMT0NLKTsKICAgICBjb21waWxlcl9wb3BfZmJsb2NrKGMsIEVYQ0VQVCwgYm9keSk7CiAgICAgQURET1BfSlJFTChjLCBKVU1QX0ZPUldBUkQsIG9yZWxzZSk7Ci0gICAgbiA9IGFzZGxfc2VxX0xFTihzLT52LlRyeUV4Y2VwdC5oYW5kbGVycyk7CisgICAgbiA9IGFzZGxfc2VxX0xFTihzLT52LlRyeS5oYW5kbGVycyk7CiAgICAgY29tcGlsZXJfdXNlX25leHRfYmxvY2soYywgZXhjZXB0KTsKICAgICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgIGV4Y2VwdGhhbmRsZXJfdHkgaGFuZGxlciA9IChleGNlcHRoYW5kbGVyX3R5KWFzZGxfc2VxX0dFVCgKLSAgICAgICAgICAgIHMtPnYuVHJ5RXhjZXB0LmhhbmRsZXJzLCBpKTsKKyAgICAgICAgICAgIHMtPnYuVHJ5LmhhbmRsZXJzLCBpKTsKICAgICAgICAgaWYgKCFoYW5kbGVyLT52LkV4Y2VwdEhhbmRsZXIudHlwZSAmJiBpIDwgbi0xKQogICAgICAgICAgICAgcmV0dXJuIGNvbXBpbGVyX2Vycm9yKGMsICJkZWZhdWx0ICdleGNlcHQ6JyBtdXN0IGJlIGxhc3QiKTsKICAgICAgICAgYy0+dS0+dV9saW5lbm9fc2V0ID0gMDsKQEAgLTIwNDksMTIgKzIxNzEsMjEgQEAKICAgICB9CiAgICAgQURET1AoYywgRU5EX0ZJTkFMTFkpOwogICAgIGNvbXBpbGVyX3VzZV9uZXh0X2Jsb2NrKGMsIG9yZWxzZSk7Ci0gICAgVklTSVRfU0VRKGMsIHN0bXQsIHMtPnYuVHJ5RXhjZXB0Lm9yZWxzZSk7CisgICAgVklTSVRfU0VRKGMsIHN0bXQsIHMtPnYuVHJ5Lm9yZWxzZSk7CiAgICAgY29tcGlsZXJfdXNlX25leHRfYmxvY2soYywgZW5kKTsKICAgICByZXR1cm4gMTsKIH0KIAogc3RhdGljIGludAorY29tcGlsZXJfdHJ5KHN0cnVjdCBjb21waWxlciAqYywgc3RtdF90eSBzKSB7CisgICAgaWYgKHMtPnYuVHJ5LmZpbmFsYm9keSAmJiBhc2RsX3NlcV9MRU4ocy0+di5UcnkuZmluYWxib2R5KSkKKyAgICAgICAgcmV0dXJuIGNvbXBpbGVyX3RyeV9maW5hbGx5KGMsIHMpOworICAgIGVsc2UKKyAgICAgICAgcmV0dXJuIGNvbXBpbGVyX3RyeV9leGNlcHQoYywgcyk7Cit9CisKKworc3RhdGljIGludAogY29tcGlsZXJfaW1wb3J0X2FzKHN0cnVjdCBjb21waWxlciAqYywgaWRlbnRpZmllciBuYW1lLCBpZGVudGlmaWVyIGFzbmFtZSkKIHsKICAgICAvKiBUaGUgSU1QT1JUX05BTUUgb3Bjb2RlIHdhcyBhbHJlYWR5IGdlbmVyYXRlZC4gIFRoaXMgZnVuY3Rpb24KQEAgLTIwNjMsMjIgKzIxOTQsMjcgQEAKICAgICAgICBJZiB0aGVyZSBpcyBhIGRvdCBpbiBuYW1lLCB3ZSBuZWVkIHRvIHNwbGl0IGl0IGFuZCBlbWl0IGEKICAgICAgICBMT0FEX0FUVFIgZm9yIGVhY2ggbmFtZS4KICAgICAqLwotICAgIGNvbnN0IFB5X1VOSUNPREUgKnNyYyA9IFB5VW5pY29kZV9BU19VTklDT0RFKG5hbWUpOwotICAgIGNvbnN0IFB5X1VOSUNPREUgKmRvdCA9IFB5X1VOSUNPREVfc3RyY2hyKHNyYywgJy4nKTsKLSAgICBpZiAoZG90KSB7CisgICAgUHlfc3NpemVfdCBkb3QgPSBQeVVuaWNvZGVfRmluZENoYXIobmFtZSwgJy4nLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWUpLCAxKTsKKyAgICBpZiAoZG90ID09IC0yKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaWYgKGRvdCAhPSAtMSkgewogICAgICAgICAvKiBDb25zdW1lIHRoZSBiYXNlIG1vZHVsZSBuYW1lIHRvIGdldCB0aGUgZmlyc3QgYXR0cmlidXRlICovCi0gICAgICAgIHNyYyA9IGRvdCArIDE7Ci0gICAgICAgIHdoaWxlIChkb3QpIHsKLSAgICAgICAgICAgIC8qIE5CIHNyYyBpcyBvbmx5IGRlZmluZWQgd2hlbiBkb3QgIT0gTlVMTCAqLworICAgICAgICBQeV9zc2l6ZV90IHBvcyA9IGRvdCArIDE7CisgICAgICAgIHdoaWxlIChkb3QgIT0gLTEpIHsKICAgICAgICAgICAgIFB5T2JqZWN0ICphdHRyOwotICAgICAgICAgICAgZG90ID0gUHlfVU5JQ09ERV9zdHJjaHIoc3JjLCAnLicpOwotICAgICAgICAgICAgYXR0ciA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShzcmMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdCA/IGRvdCAtIHNyYyA6IFB5X1VOSUNPREVfc3RybGVuKHNyYykpOworICAgICAgICAgICAgZG90ID0gUHlVbmljb2RlX0ZpbmRDaGFyKG5hbWUsICcuJywgcG9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWUpLCAxKTsKKyAgICAgICAgICAgIGlmIChkb3QgPT0gLTIpCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgYXR0ciA9IFB5VW5pY29kZV9TdWJzdHJpbmcobmFtZSwgcG9zLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRvdCAhPSAtMSkgPyBkb3QgOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgobmFtZSkpOwogICAgICAgICAgICAgaWYgKCFhdHRyKQogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIEFERE9QX08oYywgTE9BRF9BVFRSLCBhdHRyLCBuYW1lcyk7CiAgICAgICAgICAgICBQeV9ERUNSRUYoYXR0cik7Ci0gICAgICAgICAgICBzcmMgPSBkb3QgKyAxOworICAgICAgICAgICAgcG9zID0gZG90ICsgMTsKICAgICAgICAgfQogICAgIH0KICAgICByZXR1cm4gY29tcGlsZXJfbmFtZW9wKGMsIGFzbmFtZSwgU3RvcmUpOwpAQCAtMjExNywxMyArMjI1MywxMiBAQAogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgaWRlbnRpZmllciB0bXAgPSBhbGlhcy0+bmFtZTsKLSAgICAgICAgICAgIGNvbnN0IFB5X1VOSUNPREUgKmJhc2UgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShhbGlhcy0+bmFtZSk7Ci0gICAgICAgICAgICBQeV9VTklDT0RFICpkb3QgPSBQeV9VTklDT0RFX3N0cmNocihiYXNlLCAnLicpOwotICAgICAgICAgICAgaWYgKGRvdCkKLSAgICAgICAgICAgICAgICB0bXAgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoYmFzZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG90IC0gYmFzZSk7CisgICAgICAgICAgICBQeV9zc2l6ZV90IGRvdCA9IFB5VW5pY29kZV9GaW5kQ2hhcigKKyAgICAgICAgICAgICAgICBhbGlhcy0+bmFtZSwgJy4nLCAwLCBQeVVuaWNvZGVfR0VUX0xFTkdUSChhbGlhcy0+bmFtZSksIDEpOworICAgICAgICAgICAgaWYgKGRvdCAhPSAtMSkKKyAgICAgICAgICAgICAgICB0bXAgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKGFsaWFzLT5uYW1lLCAwLCBkb3QpOwogICAgICAgICAgICAgciA9IGNvbXBpbGVyX25hbWVvcChjLCB0bXAsIFN0b3JlKTsKLSAgICAgICAgICAgIGlmIChkb3QpIHsKKyAgICAgICAgICAgIGlmIChkb3QgIT0gLTEpIHsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYodG1wKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmICghcikKQEAgLTIxODYsNyArMjMyMSw3IEBACiAgICAgICAgIGFsaWFzX3R5IGFsaWFzID0gKGFsaWFzX3R5KWFzZGxfc2VxX0dFVChzLT52LkltcG9ydEZyb20ubmFtZXMsIGkpOwogICAgICAgICBpZGVudGlmaWVyIHN0b3JlX25hbWU7CiAKLSAgICAgICAgaWYgKGkgPT0gMCAmJiAqUHlVbmljb2RlX0FTX1VOSUNPREUoYWxpYXMtPm5hbWUpID09ICcqJykgeworICAgICAgICBpZiAoaSA9PSAwICYmIFB5VW5pY29kZV9SRUFEX0NIQVIoYWxpYXMtPm5hbWUsIDApID09ICcqJykgewogICAgICAgICAgICAgYXNzZXJ0KG4gPT0gMSk7CiAgICAgICAgICAgICBBRERPUChjLCBJTVBPUlRfU1RBUik7CiAgICAgICAgICAgICByZXR1cm4gMTsKQEAgLTIzMDEsMTAgKzI0MzYsOCBAQAogICAgICAgICB9CiAgICAgICAgIEFERE9QX0koYywgUkFJU0VfVkFSQVJHUywgbik7CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgVHJ5RXhjZXB0X2tpbmQ6Ci0gICAgICAgIHJldHVybiBjb21waWxlcl90cnlfZXhjZXB0KGMsIHMpOwotICAgIGNhc2UgVHJ5RmluYWxseV9raW5kOgotICAgICAgICByZXR1cm4gY29tcGlsZXJfdHJ5X2ZpbmFsbHkoYywgcyk7CisgICAgY2FzZSBUcnlfa2luZDoKKyAgICAgICAgcmV0dXJuIGNvbXBpbGVyX3RyeShjLCBzKTsKICAgICBjYXNlIEFzc2VydF9raW5kOgogICAgICAgICByZXR1cm4gY29tcGlsZXJfYXNzZXJ0KGMsIHMpOwogICAgIGNhc2UgSW1wb3J0X2tpbmQ6CkBAIC0yMzM1LDcgKzI0NjgsNyBAQAogICAgIGNhc2UgQ29udGludWVfa2luZDoKICAgICAgICAgcmV0dXJuIGNvbXBpbGVyX2NvbnRpbnVlKGMpOwogICAgIGNhc2UgV2l0aF9raW5kOgotICAgICAgICByZXR1cm4gY29tcGlsZXJfd2l0aChjLCBzKTsKKyAgICAgICAgcmV0dXJuIGNvbXBpbGVyX3dpdGgoYywgcywgMCk7CiAgICAgfQogICAgIHJldHVybiAxOwogfQpAQCAtMjUwMiw3ICsyNjM1LDcgQEAKICAgICB9CiAKICAgICAvKiBYWFggTGVhdmUgYXNzZXJ0IGhlcmUsIGJ1dCBoYW5kbGUgX19kb2NfXyBhbmQgdGhlIGxpa2UgYmV0dGVyICovCi0gICAgYXNzZXJ0KHNjb3BlIHx8IFB5VW5pY29kZV9BU19VTklDT0RFKG5hbWUpWzBdID09ICdfJyk7CisgICAgYXNzZXJ0KHNjb3BlIHx8IFB5VW5pY29kZV9SRUFEX0NIQVIobmFtZSwgMCkgPT0gJ18nKTsKIAogICAgIHN3aXRjaCAob3B0eXBlKSB7CiAgICAgY2FzZSBPUF9ERVJFRjoKQEAgLTI4ODAsMTEgKzMwMTMsMTMgQEAKIHsKICAgICBQeUNvZGVPYmplY3QgKmNvID0gTlVMTDsKICAgICBleHByX3R5IG91dGVybW9zdF9pdGVyOworICAgIFB5T2JqZWN0ICpxdWFsbmFtZSA9IE5VTEw7CiAKICAgICBvdXRlcm1vc3RfaXRlciA9ICgoY29tcHJlaGVuc2lvbl90eSkKICAgICAgICAgICAgICAgICAgICAgICBhc2RsX3NlcV9HRVQoZ2VuZXJhdG9ycywgMCkpLT5pdGVyOwogCi0gICAgaWYgKCFjb21waWxlcl9lbnRlcl9zY29wZShjLCBuYW1lLCAodm9pZCAqKWUsIGUtPmxpbmVubykpCisgICAgaWYgKCFjb21waWxlcl9lbnRlcl9zY29wZShjLCBuYW1lLCBDT01QSUxFUl9TQ09QRV9DT01QUkVIRU5TSU9OLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHZvaWQgKillLCBlLT5saW5lbm8pKQogICAgICAgICBnb3RvIGVycm9yOwogCiAgICAgaWYgKHR5cGUgIT0gQ09NUF9HRU5FWFApIHsKQEAgLTI5MTcsMTIgKzMwNTIsMTQgQEAKICAgICB9CiAKICAgICBjbyA9IGFzc2VtYmxlKGMsIDEpOworICAgIHF1YWxuYW1lID0gY29tcGlsZXJfc2NvcGVfcXVhbG5hbWUoYyk7CiAgICAgY29tcGlsZXJfZXhpdF9zY29wZShjKTsKLSAgICBpZiAoY28gPT0gTlVMTCkKKyAgICBpZiAocXVhbG5hbWUgPT0gTlVMTCB8fCBjbyA9PSBOVUxMKQogICAgICAgICBnb3RvIGVycm9yOwogCi0gICAgaWYgKCFjb21waWxlcl9tYWtlX2Nsb3N1cmUoYywgY28sIDApKQorICAgIGlmICghY29tcGlsZXJfbWFrZV9jbG9zdXJlKGMsIGNvLCAwLCBxdWFsbmFtZSkpCiAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgUHlfREVDUkVGKHF1YWxuYW1lKTsKICAgICBQeV9ERUNSRUYoY28pOwogCiAgICAgVklTSVQoYywgZXhwciwgb3V0ZXJtb3N0X2l0ZXIpOwpAQCAtMjkzMiw2ICszMDY5LDcgQEAKIGVycm9yX2luX3Njb3BlOgogICAgIGNvbXBpbGVyX2V4aXRfc2NvcGUoYyk7CiBlcnJvcjoKKyAgICBQeV9YREVDUkVGKHF1YWxuYW1lKTsKICAgICBQeV9YREVDUkVGKGNvKTsKICAgICByZXR1cm4gMDsKIH0KQEAgLTMwMjUsOCArMzE2Myw3IEBACiAgICAgICAgIHJldHVybiBQeU9iamVjdF9Jc1RydWUoZS0+di5TdHIucyk7CiAgICAgY2FzZSBOYW1lX2tpbmQ6CiAgICAgICAgIC8qIG9wdGltaXplIGF3YXkgbmFtZXMgdGhhdCBjYW4ndCBiZSByZWFzc2lnbmVkICovCi0gICAgICAgIGlkID0gUHlCeXRlc19BU19TVFJJTkcoCi0gICAgICAgICAgICBfUHlVbmljb2RlX0FzRGVmYXVsdEVuY29kZWRTdHJpbmcoZS0+di5OYW1lLmlkLCBOVUxMKSk7CisgICAgICAgIGlkID0gUHlVbmljb2RlX0FzVVRGOChlLT52Lk5hbWUuaWQpOwogICAgICAgICBpZiAoc3RyY21wKGlkLCAiVHJ1ZSIpID09IDApIHJldHVybiAxOwogICAgICAgICBpZiAoc3RyY21wKGlkLCAiRmFsc2UiKSA9PSAwKSByZXR1cm4gMDsKICAgICAgICAgaWYgKHN0cmNtcChpZCwgIk5vbmUiKSA9PSAwKSByZXR1cm4gMDsKQEAgLTMwNjIsOSArMzE5OSwxMCBAQAogICAgICAgIGV4aXQoKmV4YykKICAqLwogc3RhdGljIGludAotY29tcGlsZXJfd2l0aChzdHJ1Y3QgY29tcGlsZXIgKmMsIHN0bXRfdHkgcykKK2NvbXBpbGVyX3dpdGgoc3RydWN0IGNvbXBpbGVyICpjLCBzdG10X3R5IHMsIGludCBwb3MpCiB7CiAgICAgYmFzaWNibG9jayAqYmxvY2ssICpmaW5hbGx5OworICAgIHdpdGhpdGVtX3R5IGl0ZW0gPSBhc2RsX3NlcV9HRVQocy0+di5XaXRoLml0ZW1zLCBwb3MpOwogCiAgICAgYXNzZXJ0KHMtPmtpbmQgPT0gV2l0aF9raW5kKTsKIApAQCAtMzA3NCw3ICszMjEyLDcgQEAKICAgICAgICAgcmV0dXJuIDA7CiAKICAgICAvKiBFdmFsdWF0ZSBFWFBSICovCi0gICAgVklTSVQoYywgZXhwciwgcy0+di5XaXRoLmNvbnRleHRfZXhwcik7CisgICAgVklTSVQoYywgZXhwciwgaXRlbS0+Y29udGV4dF9leHByKTsKICAgICBBRERPUF9KUkVMKGMsIFNFVFVQX1dJVEgsIGZpbmFsbHkpOwogCiAgICAgLyogU0VUVVBfV0lUSCBwdXNoZXMgYSBmaW5hbGx5IGJsb2NrLiAqLwpAQCAtMzA4MywxNiArMzIyMSwyMCBAQAogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKLSAgICBpZiAocy0+di5XaXRoLm9wdGlvbmFsX3ZhcnMpIHsKLSAgICAgICAgVklTSVQoYywgZXhwciwgcy0+di5XaXRoLm9wdGlvbmFsX3ZhcnMpOworICAgIGlmIChpdGVtLT5vcHRpb25hbF92YXJzKSB7CisgICAgICAgIFZJU0lUKGMsIGV4cHIsIGl0ZW0tPm9wdGlvbmFsX3ZhcnMpOwogICAgIH0KICAgICBlbHNlIHsKICAgICAvKiBEaXNjYXJkIHJlc3VsdCBmcm9tIGNvbnRleHQuX19lbnRlcl9fKCkgKi8KICAgICAgICAgQURET1AoYywgUE9QX1RPUCk7CiAgICAgfQogCi0gICAgLyogQkxPQ0sgY29kZSAqLwotICAgIFZJU0lUX1NFUShjLCBzdG10LCBzLT52LldpdGguYm9keSk7CisgICAgcG9zKys7CisgICAgaWYgKHBvcyA9PSBhc2RsX3NlcV9MRU4ocy0+di5XaXRoLml0ZW1zKSkKKyAgICAgICAgLyogQkxPQ0sgY29kZSAqLworICAgICAgICBWSVNJVF9TRVEoYywgc3RtdCwgcy0+di5XaXRoLmJvZHkpCisgICAgZWxzZSBpZiAoIWNvbXBpbGVyX3dpdGgoYywgcywgcG9zKSkKKyAgICAgICAgICAgIHJldHVybiAwOwogCiAgICAgLyogRW5kIG9mIHRyeSBibG9jazsgc3RhcnQgdGhlIGZpbmFsbHkgYmxvY2sgKi8KICAgICBBRERPUChjLCBQT1BfQkxPQ0spOwpAQCAtMzE2OSwxNiArMzMxMSwyNSBAQAogICAgIGNhc2UgRGljdENvbXBfa2luZDoKICAgICAgICAgcmV0dXJuIGNvbXBpbGVyX2RpY3Rjb21wKGMsIGUpOwogICAgIGNhc2UgWWllbGRfa2luZDoKKyAgICBjYXNlIFlpZWxkRnJvbV9raW5kOiB7CisgICAgICAgIGV4cHJfdHkgdmFsdWU7CiAgICAgICAgIGlmIChjLT51LT51X3N0ZS0+c3RlX3R5cGUgIT0gRnVuY3Rpb25CbG9jaykKICAgICAgICAgICAgIHJldHVybiBjb21waWxlcl9lcnJvcihjLCAiJ3lpZWxkJyBvdXRzaWRlIGZ1bmN0aW9uIik7Ci0gICAgICAgIGlmIChlLT52LllpZWxkLnZhbHVlKSB7Ci0gICAgICAgICAgICBWSVNJVChjLCBleHByLCBlLT52LllpZWxkLnZhbHVlKTsKKyAgICAgICAgdmFsdWUgPSAoZS0+a2luZCA9PSBZaWVsZEZyb21fa2luZCkgPyBlLT52LllpZWxkRnJvbS52YWx1ZSA6IGUtPnYuWWllbGQudmFsdWU7CisgICAgICAgIGlmICh2YWx1ZSkgeworICAgICAgICAgICAgVklTSVQoYywgZXhwciwgdmFsdWUpOwogICAgICAgICB9CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgQURET1BfTyhjLCBMT0FEX0NPTlNULCBQeV9Ob25lLCBjb25zdHMpOwogICAgICAgICB9Ci0gICAgICAgIEFERE9QKGMsIFlJRUxEX1ZBTFVFKTsKKyAgICAgICAgaWYgKGUtPmtpbmQgPT0gWWllbGRGcm9tX2tpbmQpIHsKKyAgICAgICAgICAgIEFERE9QKGMsIFlJRUxEX0ZST00pOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgQURET1AoYywgWUlFTERfVkFMVUUpOworICAgICAgICB9CiAgICAgICAgIGJyZWFrOworICAgIH0KICAgICBjYXNlIENvbXBhcmVfa2luZDoKICAgICAgICAgcmV0dXJuIGNvbXBpbGVyX2NvbXBhcmUoYywgZSk7CiAgICAgY2FzZSBDYWxsX2tpbmQ6CkBAIC0zMzYxLDcgKzM1MTIsNyBAQAogc3RhdGljIGludAogY29tcGlsZXJfZXJyb3Ioc3RydWN0IGNvbXBpbGVyICpjLCBjb25zdCBjaGFyICplcnJzdHIpCiB7Ci0gICAgUHlPYmplY3QgKmxvYywgKmZpbGVuYW1lOworICAgIFB5T2JqZWN0ICpsb2M7CiAgICAgUHlPYmplY3QgKnUgPSBOVUxMLCAqdiA9IE5VTEw7CiAKICAgICBsb2MgPSBQeUVycl9Qcm9ncmFtVGV4dChjLT5jX2ZpbGVuYW1lLCBjLT51LT51X2xpbmVubyk7CkBAIC0zMzY5LDE2ICszNTIwLDcgQEAKICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgICAgICBsb2MgPSBQeV9Ob25lOwogICAgIH0KLSAgICBpZiAoYy0+Y19maWxlbmFtZSAhPSBOVUxMKSB7Ci0gICAgICAgIGZpbGVuYW1lID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChjLT5jX2ZpbGVuYW1lKTsKLSAgICAgICAgaWYgKCFmaWxlbmFtZSkKLSAgICAgICAgICAgIGdvdG8gZXhpdDsKLSAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKLSAgICAgICAgZmlsZW5hbWUgPSBQeV9Ob25lOwotICAgIH0KLSAgICB1ID0gUHlfQnVpbGRWYWx1ZSgiKE5paU8pIiwgZmlsZW5hbWUsIGMtPnUtPnVfbGluZW5vLAorICAgIHUgPSBQeV9CdWlsZFZhbHVlKCIoT2lpTykiLCBjLT5jX2ZpbGVuYW1lX29iaiwgYy0+dS0+dV9saW5lbm8sCiAgICAgICAgICAgICAgICAgICAgICAgYy0+dS0+dV9jb2xfb2Zmc2V0LCBsb2MpOwogICAgIGlmICghdSkKICAgICAgICAgZ290byBleGl0OwpAQCAtMzkyNyw3ICs0MDY5LDYgQEAKICAgICBQeU9iamVjdCAqY29uc3RzID0gTlVMTDsKICAgICBQeU9iamVjdCAqbmFtZXMgPSBOVUxMOwogICAgIFB5T2JqZWN0ICp2YXJuYW1lcyA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKmZpbGVuYW1lID0gTlVMTDsKICAgICBQeU9iamVjdCAqbmFtZSA9IE5VTEw7CiAgICAgUHlPYmplY3QgKmZyZWV2YXJzID0gTlVMTDsKICAgICBQeU9iamVjdCAqY2VsbHZhcnMgPSBOVUxMOwpAQCAtMzk1MSwxMCArNDA5Miw2IEBACiAgICAgZnJlZXZhcnMgPSBkaWN0X2tleXNfaW5vcmRlcihjLT51LT51X2ZyZWV2YXJzLCBQeVR1cGxlX1NpemUoY2VsbHZhcnMpKTsKICAgICBpZiAoIWZyZWV2YXJzKQogICAgICAgICBnb3RvIGVycm9yOwotICAgIGZpbGVuYW1lID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChjLT5jX2ZpbGVuYW1lKTsKLSAgICBpZiAoIWZpbGVuYW1lKQotICAgICAgICBnb3RvIGVycm9yOwotCiAgICAgbmxvY2FscyA9IFB5RGljdF9TaXplKGMtPnUtPnVfdmFybmFtZXMpOwogICAgIGZsYWdzID0gY29tcHV0ZV9jb2RlX2ZsYWdzKGMpOwogICAgIGlmIChmbGFncyA8IDApCkBAIC0zOTc0LDE0ICs0MTExLDEzIEBACiAgICAgICAgICAgICAgICAgICAgIG5sb2NhbHMsIHN0YWNrZGVwdGgoYyksIGZsYWdzLAogICAgICAgICAgICAgICAgICAgICBieXRlY29kZSwgY29uc3RzLCBuYW1lcywgdmFybmFtZXMsCiAgICAgICAgICAgICAgICAgICAgIGZyZWV2YXJzLCBjZWxsdmFycywKLSAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWUsIGMtPnUtPnVfbmFtZSwKKyAgICAgICAgICAgICAgICAgICAgYy0+Y19maWxlbmFtZV9vYmosIGMtPnUtPnVfbmFtZSwKICAgICAgICAgICAgICAgICAgICAgYy0+dS0+dV9maXJzdGxpbmVubywKICAgICAgICAgICAgICAgICAgICAgYS0+YV9sbm90YWIpOwogIGVycm9yOgogICAgIFB5X1hERUNSRUYoY29uc3RzKTsKICAgICBQeV9YREVDUkVGKG5hbWVzKTsKICAgICBQeV9YREVDUkVGKHZhcm5hbWVzKTsKLSAgICBQeV9YREVDUkVGKGZpbGVuYW1lKTsKICAgICBQeV9YREVDUkVGKG5hbWUpOwogICAgIFB5X1hERUNSRUYoZnJlZXZhcnMpOwogICAgIFB5X1hERUNSRUYoY2VsbHZhcnMpOwpkaWZmIC0tZ2l0IGEvUHl0aG9uL2R0b2EuYyBiL1B5dGhvbi9kdG9hLmMKaW5kZXggNDRkYzAxZi4uODJiNmZhYSAxMDA2NDQKLS0tIGEvUHl0aG9uL2R0b2EuYworKysgYi9QeXRob24vZHRvYS5jCkBAIC0yMDU1LDcgKzIwNTUsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgKyBFeHBfbXNrMQogICAgICAgICAgICAgICAgICAgICAgICAgOwogICAgICAgICAgICAgICAgICAgICB3b3JkMSgmcnYpID0gMDsKLSAgICAgICAgICAgICAgICAgICAgZHNpZ24gPSAwOworICAgICAgICAgICAgICAgICAgICAvKiBkc2lnbiA9IDA7ICovCiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0KQEAgLTIwOTIsNyArMjA5Miw3IEBACiAgICAgICAgICAgICAgICAgICAgIGdvdG8gdW5kZmw7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQotICAgICAgICAgICAgZHNpZ24gPSAxIC0gZHNpZ247CisgICAgICAgICAgICAvKiBkc2lnbiA9IDEgLSBkc2lnbjsgKi8KICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAgICAgICAgIGlmICgoYWFkaiA9IHJhdGlvKGRlbHRhLCBicykpIDw9IDIuKSB7CmRpZmYgLS1naXQgYS9QeXRob24vZHlubG9hZF9haXguYyBiL1B5dGhvbi9keW5sb2FkX2FpeC5jCmluZGV4IDE0OTk5MGQuLjYyODdjODYgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9keW5sb2FkX2FpeC5jCisrKyBiL1B5dGhvbi9keW5sb2FkX2FpeC5jCkBAIC0xMjksNyArMTI5LDYgQEAKICAgICAgICAge0xfRVJST1JfRVJSTk8sICAgICAgICAgICAgICAgICBOVUxMfQogICAgIH07CiAKLSNkZWZpbmUgTE9BRF9FUlJUQUJfTEVOIChzaXplb2YobG9hZF9lcnJ0YWIpL3NpemVvZihsb2FkX2VycnRhYlswXSkpCiAjZGVmaW5lIEVSUkJVRl9BUFBFTkQocykgc3RybmNhdChlcnJidWYsIHMsIHNpemVvZihlcnJidWYpLXN0cmxlbihlcnJidWYpLTEpCiAKICAgICBQeU9TX3NucHJpbnRmKGVycmJ1Ziwgc2l6ZW9mKGVycmJ1ZiksICJmcm9tIG1vZHVsZSAlLjIwMHMgIiwgcGF0aG5hbWUpOwpAQCAtMTQwLDcgKzEzOSw3IEBACiAgICAgfQogICAgIGZvcihpID0gMDsgbWVzc2FnZVtpXSAmJiAqbWVzc2FnZVtpXTsgaSsrKSB7CiAgICAgICAgIGludCBuZXJyID0gYXRvaShtZXNzYWdlW2ldKTsKLSAgICAgICAgZm9yIChqPTA7IGo8TE9BRF9FUlJUQUJfTEVOIDsgaisrKSB7CisgICAgICAgIGZvciAoaj0wOyBqIDwgUHlfQVJSQVlfTEVOR1RIKGxvYWRfZXJydGFiKTsgaisrKSB7CiAgICAgICAgICAgICBpZiAobmVyciA9PSBsb2FkX2VycnRhYltqXS5lcnJObyAmJiBsb2FkX2VycnRhYltqXS5lcnJzdHIpCiAgICAgICAgICAgICBFUlJCVUZfQVBQRU5EKGxvYWRfZXJydGFiW2pdLmVycnN0cik7CiAgICAgICAgIH0KQEAgLTE1NCw3ICsxNTMsNyBAQAogfQogCiAKLWRsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKmZxbmFtZSwgY29uc3QgY2hhciAqc2hvcnRuYW1lLAorZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqc2hvcnRuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcGF0aG5hbWUsIEZJTEUgKmZwKQogewogICAgIGRsX2Z1bmNwdHIgcDsKZGlmZiAtLWdpdCBhL1B5dGhvbi9keW5sb2FkX2RsLmMgYi9QeXRob24vZHlubG9hZF9kbC5jCmluZGV4IDI2MDZlMWUuLjM3NTE5YjIgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9keW5sb2FkX2RsLmMKKysrIGIvUHl0aG9uL2R5bmxvYWRfZGwuYwpAQCAtMTAsMTcgKzEwLDE3IEBACiBleHRlcm4gY2hhciAqUHlfR2V0UHJvZ3JhbU5hbWUodm9pZCk7CiAKIGNvbnN0IHN0cnVjdCBmaWxlZGVzY3IgX1B5SW1wb3J0X0R5bkxvYWRGaWxldGFiW10gPSB7Ci0JeyIubyIsICJyYiIsIENfRVhURU5TSU9OfSwKLQl7Im1vZHVsZS5vIiwgInJiIiwgQ19FWFRFTlNJT059LAotCXswLCAwfQorICAgIHsiLm8iLCAicmIiLCBDX0VYVEVOU0lPTn0sCisgICAgeyJtb2R1bGUubyIsICJyYiIsIENfRVhURU5TSU9OfSwKKyAgICB7MCwgMH0KIH07CiAKIAotZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqZnFuYW1lLCBjb25zdCBjaGFyICpzaG9ydG5hbWUsCi0JCQkJICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCkKK2RsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKnNob3J0bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCkKIHsKLQljaGFyIGZ1bmNuYW1lWzI1OF07CisgICAgY2hhciBmdW5jbmFtZVsyNThdOwogCi0JUHlPU19zbnByaW50ZihmdW5jbmFtZSwgc2l6ZW9mKGZ1bmNuYW1lKSwgIlB5SW5pdF8lLjIwMHMiLCBzaG9ydG5hbWUpOwotCXJldHVybiBkbF9sb2FkbW9kKFB5X0dldFByb2dyYW1OYW1lKCksIHBhdGhuYW1lLCBmdW5jbmFtZSk7CisgICAgUHlPU19zbnByaW50ZihmdW5jbmFtZSwgc2l6ZW9mKGZ1bmNuYW1lKSwgIlB5SW5pdF8lLjIwMHMiLCBzaG9ydG5hbWUpOworICAgIHJldHVybiBkbF9sb2FkbW9kKFB5X0dldFByb2dyYW1OYW1lKCksIHBhdGhuYW1lLCBmdW5jbmFtZSk7CiB9CmRpZmYgLS1naXQgYS9QeXRob24vZHlubG9hZF9ocHV4LmMgYi9QeXRob24vZHlubG9hZF9ocHV4LmMKaW5kZXggMThhODEzNy4uM2ViYmJhZCAxMDA2NDQKLS0tIGEvUHl0aG9uL2R5bmxvYWRfaHB1eC5jCisrKyBiL1B5dGhvbi9keW5sb2FkX2hwdXguYwpAQCAtMTksNyArMTksNyBAQAogICAgIHswLCAwfQogfTsKIAotZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqZnFuYW1lLCBjb25zdCBjaGFyICpzaG9ydG5hbWUsCitkbF9mdW5jcHRyIF9QeUltcG9ydF9HZXREeW5Mb2FkRnVuYyhjb25zdCBjaGFyICpzaG9ydG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwYXRobmFtZSwgRklMRSAqZnApCiB7CiAgICAgZGxfZnVuY3B0ciBwOwpkaWZmIC0tZ2l0IGEvUHl0aG9uL2R5bmxvYWRfbmV4dC5jIGIvUHl0aG9uL2R5bmxvYWRfbmV4dC5jCmluZGV4IGNhYmY5YjkuLmViMTc5NTAgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9keW5sb2FkX25leHQuYworKysgYi9QeXRob24vZHlubG9hZF9uZXh0LmMKQEAgLTMxLDggKzMxLDggQEAKICNkZWZpbmUgTElOS09QVElPTlMgTlNMSU5LTU9EVUxFX09QVElPTl9CSU5ETk9XfCBcCiAgICAgTlNMSU5LTU9EVUxFX09QVElPTl9SRVRVUk5fT05fRVJST1J8TlNMSU5LTU9EVUxFX09QVElPTl9QUklWQVRFCiAjZW5kaWYKLWRsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKmZxbmFtZSwgY29uc3QgY2hhciAqc2hvcnRuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCkKK2RsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKnNob3J0bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCkKIHsKICAgICBkbF9mdW5jcHRyIHAgPSBOVUxMOwogICAgIGNoYXIgZnVuY25hbWVbMjU4XTsKZGlmZiAtLWdpdCBhL1B5dGhvbi9keW5sb2FkX29zMi5jIGIvUHl0aG9uL2R5bmxvYWRfb3MyLmMKaW5kZXggMTAxYzAyNC4uZjcyNjRkYSAxMDA2NDQKLS0tIGEvUHl0aG9uL2R5bmxvYWRfb3MyLmMKKysrIGIvUHl0aG9uL2R5bmxvYWRfb3MyLmMKQEAgLTE1LDcgKzE1LDcgQEAKICAgICB7MCwgMH0KIH07CiAKLWRsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRGdW5jKGNvbnN0IGNoYXIgKmZxbmFtZSwgY29uc3QgY2hhciAqc2hvcnRuYW1lLAorZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqc2hvcnRuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcGF0aG5hbWUsIEZJTEUgKmZwKQogewogICAgIGRsX2Z1bmNwdHIgcDsKZGlmZiAtLWdpdCBhL1B5dGhvbi9keW5sb2FkX3NobGliLmMgYi9QeXRob24vZHlubG9hZF9zaGxpYi5jCmluZGV4IDdlYTUxMGUuLjFjMjE1YzMgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9keW5sb2FkX3NobGliLmMKKysrIGIvUHl0aG9uL2R5bmxvYWRfc2hsaWIuYwpAQCAtNzUsNyArNzUsNyBAQAogc3RhdGljIGludCBuaGFuZGxlcyA9IDA7CiAKIAotZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqZnFuYW1lLCBjb25zdCBjaGFyICpzaG9ydG5hbWUsCitkbF9mdW5jcHRyIF9QeUltcG9ydF9HZXREeW5Mb2FkRnVuYyhjb25zdCBjaGFyICpzaG9ydG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwYXRobmFtZSwgRklMRSAqZnApCiB7CiAgICAgZGxfZnVuY3B0ciBwOwpkaWZmIC0tZ2l0IGEvUHl0aG9uL2R5bmxvYWRfd2luLmMgYi9QeXRob24vZHlubG9hZF93aW4uYwppbmRleCA3M2ExZGNmLi4yY2JmZTlmIDEwMDY0NAotLS0gYS9QeXRob24vZHlubG9hZF93aW4uYworKysgYi9QeXRob24vZHlubG9hZF93aW4uYwpAQCAtMTcxLDQzICsxNzEsMzggQEAKICAgICByZXR1cm4gTlVMTDsKIH0KIAotZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqZnFuYW1lLCBjb25zdCBjaGFyICpzaG9ydG5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwYXRobmFtZSwgRklMRSAqZnApCitkbF9mdW5jcHRyIF9QeUltcG9ydF9HZXREeW5Mb2FkV2luZG93cyhjb25zdCBjaGFyICpzaG9ydG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcGF0aG5hbWUsIEZJTEUgKmZwKQogewogICAgIGRsX2Z1bmNwdHIgcDsKICAgICBjaGFyIGZ1bmNuYW1lWzI1OF0sICppbXBvcnRfcHl0aG9uOworICAgIHdjaGFyX3QgKndwYXRobmFtZTsKIAogI2lmbmRlZiBfREVCVUcKICAgICBfUHlfQ2hlY2tQeXRob24zKCk7CiAjZW5kaWYKIAorICAgIHdwYXRobmFtZSA9IFB5VW5pY29kZV9Bc1VuaWNvZGUocGF0aG5hbWUpOworICAgIGlmICh3cGF0aG5hbWUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICBQeU9TX3NucHJpbnRmKGZ1bmNuYW1lLCBzaXplb2YoZnVuY25hbWUpLCAiUHlJbml0XyUuMjAwcyIsIHNob3J0bmFtZSk7CiAKICAgICB7CiAgICAgICAgIEhJTlNUQU5DRSBoRExMID0gTlVMTDsKLSAgICAgICAgY2hhciBwYXRoYnVmWzI2MF07Ci0gICAgICAgIExQVFNUUiBkdW1teTsKICAgICAgICAgdW5zaWduZWQgaW50IG9sZF9tb2RlOwogICAgICAgICBVTE9OR19QVFIgY29va2llID0gMDsKLSAgICAgICAgLyogV2UgdXNlIExvYWRMaWJyYXJ5RXggc28gV2luZG93cyBsb29rcyBmb3IgZGVwZW5kZW50IERMTHMKLSAgICAgICAgICAgIGluIGRpcmVjdG9yeSBvZiBwYXRobmFtZSBmaXJzdC4gIEhvd2V2ZXIsIFdpbmRvd3M5NQotICAgICAgICAgICAgY2FuIHNvbWV0aW1lcyBub3Qgd29yayBjb3JyZWN0bHkgdW5sZXNzIHRoZSBhYnNvbHV0ZQotICAgICAgICAgICAgcGF0aCBpcyB1c2VkLiAgSWYgR2V0RnVsbFBhdGhOYW1lKCkgZmFpbHMsIHRoZSBMb2FkTGlicmFyeQotICAgICAgICAgICAgd2lsbCBjZXJ0YWlubHkgZmFpbCB0b28sIHNvIHVzZSBpdHMgZXJyb3IgY29kZSAqLwogCiAgICAgICAgIC8qIERvbid0IGRpc3BsYXkgYSBtZXNzYWdlIGJveCB3aGVuIFB5dGhvbiBjYW4ndCBsb2FkIGEgRExMICovCiAgICAgICAgIG9sZF9tb2RlID0gU2V0RXJyb3JNb2RlKFNFTV9GQUlMQ1JJVElDQUxFUlJPUlMpOwogCi0gICAgICAgIGlmIChHZXRGdWxsUGF0aE5hbWUocGF0aG5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHBhdGhidWYpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGhidWYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgJmR1bW15KSkgewotICAgICAgICAgICAgVUxPTkdfUFRSIGNvb2tpZSA9IF9QeV9BY3RpdmF0ZUFjdEN0eCgpOwotICAgICAgICAgICAgLyogWFhYIFRoaXMgY2FsbCBkb2Vzbid0IGV4aXN0IGluIFdpbmRvd3MgQ0UgKi8KLSAgICAgICAgICAgIGhETEwgPSBMb2FkTGlicmFyeUV4KHBhdGhuYW1lLCBOVUxMLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTE9BRF9XSVRIX0FMVEVSRURfU0VBUkNIX1BBVEgpOwotICAgICAgICAgICAgX1B5X0RlYWN0aXZhdGVBY3RDdHgoY29va2llKTsKLSAgICAgICAgfQorICAgICAgICBjb29raWUgPSBfUHlfQWN0aXZhdGVBY3RDdHgoKTsKKyAgICAgICAgLyogV2UgdXNlIExvYWRMaWJyYXJ5RXggc28gV2luZG93cyBsb29rcyBmb3IgZGVwZW5kZW50IERMTHMKKyAgICAgICAgICAgIGluIGRpcmVjdG9yeSBvZiBwYXRobmFtZSBmaXJzdC4gKi8KKyAgICAgICAgLyogWFhYIFRoaXMgY2FsbCBkb2Vzbid0IGV4aXN0IGluIFdpbmRvd3MgQ0UgKi8KKyAgICAgICAgaERMTCA9IExvYWRMaWJyYXJ5RXhXKHdwYXRobmFtZSwgTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIExPQURfV0lUSF9BTFRFUkVEX1NFQVJDSF9QQVRIKTsKKyAgICAgICAgX1B5X0RlYWN0aXZhdGVBY3RDdHgoY29va2llKTsKIAogICAgICAgICAvKiByZXN0b3JlIG9sZCBlcnJvciBtb2RlIHNldHRpbmdzICovCiAgICAgICAgIFNldEVycm9yTW9kZShvbGRfbW9kZSk7CkBAIC0yNTQsMzEgKzI0OSwzMyBAQAogICAgICAgICAgICAgICAgICAgICAiRExMIGxvYWQgZmFpbGVkOiAiKTsKIAogICAgICAgICAgICAgICAgIFB5VW5pY29kZV9BcHBlbmRBbmREZWwoJm1lc3NhZ2UsCi0gICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9Gcm9tVW5pY29kZSgKKyAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0Zyb21XaWRlQ2hhcigKICAgICAgICAgICAgICAgICAgICAgICAgIHRoZUluZm8sCiAgICAgICAgICAgICAgICAgICAgICAgICB0aGVMZW5ndGgpKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFB5RXJyX1NldE9iamVjdChQeUV4Y19JbXBvcnRFcnJvciwgbWVzc2FnZSk7Ci0gICAgICAgICAgICBQeV9YREVDUkVGKG1lc3NhZ2UpOworICAgICAgICAgICAgaWYgKG1lc3NhZ2UgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgIFB5RXJyX1NldE9iamVjdChQeUV4Y19JbXBvcnRFcnJvciwgbWVzc2FnZSk7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKG1lc3NhZ2UpOworICAgICAgICAgICAgfQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBjaGFyIGJ1ZmZlclsyNTZdOwogCisgICAgICAgICAgICBQeU9TX3NucHJpbnRmKGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlciksCiAjaWZkZWYgX0RFQlVHCi0gICAgICAgICAgICBQeU9TX3NucHJpbnRmKGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlciksICJweXRob24lZCVkX2QuZGxsIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgInB5dGhvbiVkJWRfZC5kbGwiLAogI2Vsc2UKLSAgICAgICAgICAgIFB5T1Nfc25wcmludGYoYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwgInB5dGhvbiVkJWQuZGxsIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgInB5dGhvbiVkJWQuZGxsIiwKICNlbmRpZgogICAgICAgICAgICAgICAgICAgICAgICAgICBQWV9NQUpPUl9WRVJTSU9OLFBZX01JTk9SX1ZFUlNJT04pOwogICAgICAgICAgICAgaW1wb3J0X3B5dGhvbiA9IEdldFB5dGhvbkltcG9ydChoRExMKTsKIAogICAgICAgICAgICAgaWYgKGltcG9ydF9weXRob24gJiYKICAgICAgICAgICAgICAgICBzdHJjYXNlY21wKGJ1ZmZlcixpbXBvcnRfcHl0aG9uKSkgewotICAgICAgICAgICAgICAgIFB5T1Nfc25wcmludGYoYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJNb2R1bGUgdXNlIG9mICUuMTUwcyBjb25mbGljdHMgIgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIndpdGggdGhpcyB2ZXJzaW9uIG9mIFB5dGhvbi4iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1wb3J0X3B5dGhvbik7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0ltcG9ydEVycm9yLGJ1ZmZlcik7CisgICAgICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTW9kdWxlIHVzZSBvZiAlLjE1MHMgY29uZmxpY3RzICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIndpdGggdGhpcyB2ZXJzaW9uIG9mIFB5dGhvbi4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbXBvcnRfcHl0aG9uKTsKICAgICAgICAgICAgICAgICBGcmVlTGlicmFyeShoRExMKTsKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1B5dGhvbi9lcnJvcnMuYyBiL1B5dGhvbi9lcnJvcnMuYwppbmRleCA1YTlhNjI0Li4zMWZhOWUyIDEwMDY0NAotLS0gYS9QeXRob24vZXJyb3JzLmMKKysrIGIvUHl0aG9uL2Vycm9ycy5jCkBAIC0zNDEsMTEgKzM0MSw5IEBACiBQeUVycl9TZXRGcm9tRXJybm9XaXRoRmlsZW5hbWVPYmplY3QoUHlPYmplY3QgKmV4YywgUHlPYmplY3QgKmZpbGVuYW1lT2JqZWN0KQogewogICAgIFB5T2JqZWN0ICptZXNzYWdlOwotICAgIFB5T2JqZWN0ICp2OworICAgIFB5T2JqZWN0ICp2LCAqYXJnczsKICAgICBpbnQgaSA9IGVycm5vOwotI2lmbmRlZiBNU19XSU5ET1dTCi0gICAgY2hhciAqczsKLSNlbHNlCisjaWZkZWYgTVNfV0lORE9XUwogICAgIFdDSEFSICpzX2J1ZiA9IE5VTEw7CiAjZW5kaWYgLyogVW5peC9XaW5kb3dzICovCiAKQEAgLTM1NSwxMSArMzUzLDE0IEBACiAjZW5kaWYKIAogI2lmbmRlZiBNU19XSU5ET1dTCi0gICAgaWYgKGkgPT0gMCkKLSAgICAgICAgcyA9ICJFcnJvciI7IC8qIFNvbWV0aW1lcyBlcnJubyBkaWRuJ3QgZ2V0IHNldCAqLwotICAgIGVsc2UKLSAgICAgICAgcyA9IHN0cmVycm9yKGkpOwotICAgIG1lc3NhZ2UgPSBQeVVuaWNvZGVfRGVjb2RlVVRGOChzLCBzdHJsZW4ocyksICJpZ25vcmUiKTsKKyAgICBpZiAoaSAhPSAwKSB7CisgICAgICAgIGNoYXIgKnMgPSBzdHJlcnJvcihpKTsKKyAgICAgICAgbWVzc2FnZSA9IFB5VW5pY29kZV9EZWNvZGVMb2NhbGUocywgInN1cnJvZ2F0ZWVzY2FwZSIpOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgLyogU29tZXRpbWVzIGVycm5vIGRpZG4ndCBnZXQgc2V0ICovCisgICAgICAgIG1lc3NhZ2UgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiRXJyb3IiKTsKKyAgICB9CiAjZWxzZQogICAgIGlmIChpID09IDApCiAgICAgICAgIG1lc3NhZ2UgPSBQeVVuaWNvZGVfRnJvbVN0cmluZygiRXJyb3IiKTsgLyogU29tZXRpbWVzIGVycm5vIGRpZG4ndCBnZXQgc2V0ICovCkBAIC0zOTUsNyArMzk2LDcgQEAKICAgICAgICAgICAgICAgICAvKiByZW1vdmUgdHJhaWxpbmcgY3IvbGYgYW5kIGRvdHMgKi8KICAgICAgICAgICAgICAgICB3aGlsZSAobGVuID4gMCAmJiAoc19idWZbbGVuLTFdIDw9IEwnICcgfHwgc19idWZbbGVuLTFdID09IEwnLicpKQogICAgICAgICAgICAgICAgICAgICBzX2J1ZlstLWxlbl0gPSBMJ1wwJzsKLSAgICAgICAgICAgICAgICBtZXNzYWdlID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHNfYnVmLCBsZW4pOworICAgICAgICAgICAgICAgIG1lc3NhZ2UgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHNfYnVmLCBsZW4pOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQpAQCAtNDEwLDE0ICs0MTEsMTggQEAKICAgICB9CiAKICAgICBpZiAoZmlsZW5hbWVPYmplY3QgIT0gTlVMTCkKLSAgICAgICAgdiA9IFB5X0J1aWxkVmFsdWUoIihpT08pIiwgaSwgbWVzc2FnZSwgZmlsZW5hbWVPYmplY3QpOworICAgICAgICBhcmdzID0gUHlfQnVpbGRWYWx1ZSgiKGlPTykiLCBpLCBtZXNzYWdlLCBmaWxlbmFtZU9iamVjdCk7CiAgICAgZWxzZQotICAgICAgICB2ID0gUHlfQnVpbGRWYWx1ZSgiKGlPKSIsIGksIG1lc3NhZ2UpOworICAgICAgICBhcmdzID0gUHlfQnVpbGRWYWx1ZSgiKGlPKSIsIGksIG1lc3NhZ2UpOwogICAgIFB5X0RFQ1JFRihtZXNzYWdlKTsKIAotICAgIGlmICh2ICE9IE5VTEwpIHsKLSAgICAgICAgUHlFcnJfU2V0T2JqZWN0KGV4Yywgdik7Ci0gICAgICAgIFB5X0RFQ1JFRih2KTsKKyAgICBpZiAoYXJncyAhPSBOVUxMKSB7CisgICAgICAgIHYgPSBQeU9iamVjdF9DYWxsKGV4YywgYXJncywgTlVMTCk7CisgICAgICAgIFB5X0RFQ1JFRihhcmdzKTsKKyAgICAgICAgaWYgKHYgIT0gTlVMTCkgeworICAgICAgICAgICAgUHlFcnJfU2V0T2JqZWN0KChQeU9iamVjdCAqKSBQeV9UWVBFKHYpLCB2KTsKKyAgICAgICAgICAgIFB5X0RFQ1JFRih2KTsKKyAgICAgICAgfQogICAgIH0KICNpZmRlZiBNU19XSU5ET1dTCiAgICAgTG9jYWxGcmVlKHNfYnVmKTsKQEAgLTQ2NCw3ICs0NjksNyBAQAogICAgIGludCBsZW47CiAgICAgV0NIQVIgKnNfYnVmID0gTlVMTDsgLyogRnJlZSB2aWEgTG9jYWxGcmVlICovCiAgICAgUHlPYmplY3QgKm1lc3NhZ2U7Ci0gICAgUHlPYmplY3QgKnY7CisgICAgUHlPYmplY3QgKmFyZ3MsICp2OwogICAgIERXT1JEIGVyciA9IChEV09SRClpZXJyOwogICAgIGlmIChlcnI9PTApIGVyciA9IEdldExhc3RFcnJvcigpOwogICAgIGxlbiA9IEZvcm1hdE1lc3NhZ2VXKApAQCAtNDg3LDcgKzQ5Miw3IEBACiAgICAgICAgIC8qIHJlbW92ZSB0cmFpbGluZyBjci9sZiBhbmQgZG90cyAqLwogICAgICAgICB3aGlsZSAobGVuID4gMCAmJiAoc19idWZbbGVuLTFdIDw9IEwnICcgfHwgc19idWZbbGVuLTFdID09IEwnLicpKQogICAgICAgICAgICAgc19idWZbLS1sZW5dID0gTCdcMCc7Ci0gICAgICAgIG1lc3NhZ2UgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoc19idWYsIGxlbik7CisgICAgICAgIG1lc3NhZ2UgPSBQeVVuaWNvZGVfRnJvbVdpZGVDaGFyKHNfYnVmLCBsZW4pOwogICAgIH0KIAogICAgIGlmIChtZXNzYWdlID09IE5VTEwpCkBAIC00OTYsMTUgKzUwMSwyMCBAQAogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAKLSAgICBpZiAoZmlsZW5hbWVPYmplY3QgIT0gTlVMTCkKLSAgICAgICAgdiA9IFB5X0J1aWxkVmFsdWUoIihpT08pIiwgZXJyLCBtZXNzYWdlLCBmaWxlbmFtZU9iamVjdCk7Ci0gICAgZWxzZQotICAgICAgICB2ID0gUHlfQnVpbGRWYWx1ZSgiKGlPKSIsIGVyciwgbWVzc2FnZSk7CisgICAgaWYgKGZpbGVuYW1lT2JqZWN0ID09IE5VTEwpCisgICAgICAgIGZpbGVuYW1lT2JqZWN0ID0gUHlfTm9uZTsKKyAgICAvKiBUaGlzIGlzIHRoZSBjb25zdHJ1Y3RvciBzaWduYXR1cmUgZm9yIHBhc3NpbmcgYSBXaW5kb3dzIGVycm9yIGNvZGUuCisgICAgICAgVGhlIFBPU0lYIHRyYW5zbGF0aW9uIHdpbGwgYmUgZmlndXJlZCBvdXQgYnkgdGhlIGNvbnN0cnVjdG9yLiAqLworICAgIGFyZ3MgPSBQeV9CdWlsZFZhbHVlKCIoaU9PaSkiLCAwLCBtZXNzYWdlLCBmaWxlbmFtZU9iamVjdCwgZXJyKTsKICAgICBQeV9ERUNSRUYobWVzc2FnZSk7CiAKLSAgICBpZiAodiAhPSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX1NldE9iamVjdChleGMsIHYpOwotICAgICAgICBQeV9ERUNSRUYodik7CisgICAgaWYgKGFyZ3MgIT0gTlVMTCkgeworICAgICAgICB2ID0gUHlPYmplY3RfQ2FsbChleGMsIGFyZ3MsIE5VTEwpOworICAgICAgICBQeV9ERUNSRUYoYXJncyk7CisgICAgICAgIGlmICh2ICE9IE5VTEwpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldE9iamVjdCgoUHlPYmplY3QgKikgUHlfVFlQRSh2KSwgdik7CisgICAgICAgICAgICBQeV9ERUNSRUYodik7CisgICAgICAgIH0KICAgICB9CiAgICAgTG9jYWxGcmVlKHNfYnVmKTsKICAgICByZXR1cm4gTlVMTDsKQEAgLTY1Niw3ICs2NjYsNyBAQAogICAgICAgICBpZiAoYmFzZXMgPT0gTlVMTCkKICAgICAgICAgICAgIGdvdG8gZmFpbHVyZTsKICAgICB9Ci0gICAgLyogQ3JlYXRlIGEgcmVhbCBuZXctc3R5bGUgY2xhc3MuICovCisgICAgLyogQ3JlYXRlIGEgcmVhbCBjbGFzcy4gKi8KICAgICByZXN1bHQgPSBQeU9iamVjdF9DYWxsRnVuY3Rpb24oKFB5T2JqZWN0ICopJlB5VHlwZV9UeXBlLCAic09PIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG90KzEsIGJhc2VzLCBkaWN0KTsKICAgZmFpbHVyZToKQEAgLTcwNyw2ICs3MTcsNyBAQAogdm9pZAogUHlFcnJfV3JpdGVVbnJhaXNhYmxlKFB5T2JqZWN0ICpvYmopCiB7CisgICAgX1B5X0lERU5USUZJRVIoX19tb2R1bGVfXyk7CiAgICAgUHlPYmplY3QgKmYsICp0LCAqdiwgKnRiOwogICAgIFB5RXJyX0ZldGNoKCZ0LCAmdiwgJnRiKTsKICAgICBmID0gUHlTeXNfR2V0T2JqZWN0KCJzdGRlcnIiKTsKQEAgLTcyMyw3ICs3MzQsNyBAQAogICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWUgPSBkb3QrMTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgbW9kdWxlTmFtZSA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcodCwgIl9fbW9kdWxlX18iKTsKKyAgICAgICAgICAgIG1vZHVsZU5hbWUgPSBfUHlPYmplY3RfR2V0QXR0cklkKHQsICZQeUlkX19fbW9kdWxlX18pOwogICAgICAgICAgICAgaWYgKG1vZHVsZU5hbWUgPT0gTlVMTCkKICAgICAgICAgICAgICAgICBQeUZpbGVfV3JpdGVTdHJpbmcoIjx1bmtub3duPiIsIGYpOwogICAgICAgICAgICAgZWxzZSB7CkBAIC03NzQsNiArNzg1LDEyIEBACiBQeUVycl9TeW50YXhMb2NhdGlvbkV4KGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBpbnQgbGluZW5vLCBpbnQgY29sX29mZnNldCkKIHsKICAgICBQeU9iamVjdCAqZXhjLCAqdiwgKnRiLCAqdG1wOworICAgIF9QeV9JREVOVElGSUVSKGZpbGVuYW1lKTsKKyAgICBfUHlfSURFTlRJRklFUihsaW5lbm8pOworICAgIF9QeV9JREVOVElGSUVSKG1zZyk7CisgICAgX1B5X0lERU5USUZJRVIob2Zmc2V0KTsKKyAgICBfUHlfSURFTlRJRklFUihwcmludF9maWxlX2FuZF9saW5lKTsKKyAgICBfUHlfSURFTlRJRklFUih0ZXh0KTsKIAogICAgIC8qIGFkZCBhdHRyaWJ1dGVzIGZvciB0aGUgbGluZSBudW1iZXIgYW5kIGZpbGVuYW1lIGZvciB0aGUgZXJyb3IgKi8KICAgICBQeUVycl9GZXRjaCgmZXhjLCAmdiwgJnRiKTsKQEAgLTc4NCw3ICs4MDEsNyBAQAogICAgIGlmICh0bXAgPT0gTlVMTCkKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICBlbHNlIHsKLSAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcodiwgImxpbmVubyIsIHRtcCkpCisgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHYsICZQeUlkX2xpbmVubywgdG1wKSkKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgIFB5X0RFQ1JFRih0bXApOwogICAgIH0KQEAgLTc5Myw3ICs4MTAsNyBAQAogICAgICAgICBpZiAodG1wID09IE5VTEwpCiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHYsICJvZmZzZXQiLCB0bXApKQorICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQodiwgJlB5SWRfb2Zmc2V0LCB0bXApKQogICAgICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgICAgICBQeV9ERUNSRUYodG1wKTsKICAgICAgICAgfQpAQCAtODAzLDM1ICs4MjAsMzUgQEAKICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyh2LCAiZmlsZW5hbWUiLCB0bXApKQorICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQodiwgJlB5SWRfZmlsZW5hbWUsIHRtcCkpCiAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRih0bXApOwogICAgICAgICB9CiAKICAgICAgICAgdG1wID0gUHlFcnJfUHJvZ3JhbVRleHQoZmlsZW5hbWUsIGxpbmVubyk7CiAgICAgICAgIGlmICh0bXApIHsKLSAgICAgICAgICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHYsICJ0ZXh0IiwgdG1wKSkKKyAgICAgICAgICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHYsICZQeUlkX3RleHQsIHRtcCkpCiAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRih0bXApOwogICAgICAgICB9CiAgICAgfQotICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHYsICJvZmZzZXQiLCBQeV9Ob25lKSkgeworICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKHYsICZQeUlkX29mZnNldCwgUHlfTm9uZSkpIHsKICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICB9CiAgICAgaWYgKGV4YyAhPSBQeUV4Y19TeW50YXhFcnJvcikgewotICAgICAgICBpZiAoIVB5T2JqZWN0X0hhc0F0dHJTdHJpbmcodiwgIm1zZyIpKSB7CisgICAgICAgIGlmICghX1B5T2JqZWN0X0hhc0F0dHJJZCh2LCAmUHlJZF9tc2cpKSB7CiAgICAgICAgICAgICB0bXAgPSBQeU9iamVjdF9TdHIodik7CiAgICAgICAgICAgICBpZiAodG1wKSB7Ci0gICAgICAgICAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcodiwgIm1zZyIsIHRtcCkpCisgICAgICAgICAgICAgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQodiwgJlB5SWRfbXNnLCB0bXApKQogICAgICAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRih0bXApOwogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIGlmICghUHlPYmplY3RfSGFzQXR0clN0cmluZyh2LCAicHJpbnRfZmlsZV9hbmRfbGluZSIpKSB7Ci0gICAgICAgICAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyh2LCAicHJpbnRfZmlsZV9hbmRfbGluZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9Ob25lKSkKKyAgICAgICAgaWYgKCFfUHlPYmplY3RfSGFzQXR0cklkKHYsICZQeUlkX3ByaW50X2ZpbGVfYW5kX2xpbmUpKSB7CisgICAgICAgICAgICBpZiAoX1B5T2JqZWN0X1NldEF0dHJJZCh2LCAmUHlJZF9wcmludF9maWxlX2FuZF9saW5lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfTm9uZSkpCiAgICAgICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgfQogICAgIH0KZGlmZiAtLWdpdCBhL1B5dGhvbi9maWxldXRpbHMuYyBiL1B5dGhvbi9maWxldXRpbHMuYwppbmRleCBjNTYzZWFhLi44OTkzYzhjIDEwMDY0NAotLS0gYS9QeXRob24vZmlsZXV0aWxzLmMKKysrIGIvUHl0aG9uL2ZpbGV1dGlscy5jCkBAIC0xNiw3ICsxNiw5IEBACiAgICBSZXR1cm4gYSBwb2ludGVyIHRvIGEgbmV3bHkgYWxsb2NhdGVkIHdpZGUgY2hhcmFjdGVyIHN0cmluZyAodXNlCiAgICBQeU1lbV9GcmVlKCkgdG8gZnJlZSB0aGUgbWVtb3J5KSBhbmQgd3JpdGUgdGhlIG51bWJlciBvZiB3cml0dGVuIHdpZGUKICAgIGNoYXJhY3RlcnMgZXhjbHVkaW5nIHRoZSBudWxsIGNoYXJhY3RlciBpbnRvICpzaXplIGlmIHNpemUgaXMgbm90IE5VTEwsIG9yCi0gICBOVUxMIG9uIGVycm9yIChjb252ZXJzaW9uIG9yIG1lbW9yeSBhbGxvY2F0aW9uIGVycm9yKS4KKyAgIE5VTEwgb24gZXJyb3IgKGRlY29kaW5nIG9yIG1lbW9yeSBhbGxvY2F0aW9uIGVycm9yKS4gSWYgc2l6ZSBpcyBub3QgTlVMTCwKKyAgICpzaXplIGlzIHNldCB0byAoc2l6ZV90KS0xIG9uIG1lbW9yeSBlcnJvciBhbmQgKHNpemVfdCktMiBvbiBkZWNvZGluZworICAgZXJyb3IuCiAKICAgIENvbnZlcnNpb24gZXJyb3JzIHNob3VsZCBuZXZlciBoYXBwZW4sIHVubGVzcyB0aGVyZSBpcyBhIGJ1ZyBpbiB0aGUgQwogICAgbGlicmFyeS4gKi8KQEAgLTgyLDggKzg0LDkgQEAKICAgICAgICAgICAgICAgIHNpbmNlIHdlIHByb3ZpZGUgZXZlcnl0aGluZyB0aGF0IHdlIGhhdmUgLQogICAgICAgICAgICAgICAgdW5sZXNzIHRoZXJlIGlzIGEgYnVnIGluIHRoZSBDIGxpYnJhcnksIG9yIEkKICAgICAgICAgICAgICAgIG1pc3VuZGVyc3Rvb2QgaG93IG1icnRvd2Mgd29ya3MuICovCi0gICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgInVuZXhwZWN0ZWQgbWJydG93YyByZXN1bHQgLTJcbiIpOwogICAgICAgICAgICAgUHlNZW1fRnJlZShyZXMpOworICAgICAgICAgICAgaWYgKHNpemUgIT0gTlVMTCkKKyAgICAgICAgICAgICAgICAqc2l6ZSA9IChzaXplX3QpLTI7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgICAgICBpZiAoY29udmVydGVkID09IChzaXplX3QpLTEpIHsKQEAgLTExMiw3ICsxMTUsOCBAQAogICAgICAgIGlzIEFTQ0lJIChpLmUuIGVzY2FwZSBhbGwgYnl0ZXMgPiAxMjguIFRoaXMgd2lsbCBzdGlsbCByb3VuZHRyaXAKICAgICAgICBjb3JyZWN0bHkgaW4gdGhlIGxvY2FsZSdzIGNoYXJzZXQsIHdoaWNoIG11c3QgYmUgYW4gQVNDSUkgc3VwZXJzZXQuICovCiAgICAgcmVzID0gUHlNZW1fTWFsbG9jKChzdHJsZW4oYXJnKSsxKSpzaXplb2Yod2NoYXJfdCkpOwotICAgIGlmICghcmVzKSBnb3RvIG9vbTsKKyAgICBpZiAoIXJlcykKKyAgICAgICAgZ290byBvb207CiAgICAgaW4gPSAodW5zaWduZWQgY2hhciopYXJnOwogICAgIG91dCA9IHJlczsKICAgICB3aGlsZSgqaW4pCkBAIC0xMjYsNyArMTMwLDggQEAKICAgICAgICAgKnNpemUgPSBvdXQgLSByZXM7CiAgICAgcmV0dXJuIHJlczsKIG9vbToKLSAgICBmcHJpbnRmKHN0ZGVyciwgIm91dCBvZiBtZW1vcnlcbiIpOworICAgIGlmIChzaXplICE9IE5VTEwpCisgICAgICAgICpzaXplID0gKHNpemVfdCktMTsKICAgICByZXR1cm4gTlVMTDsKIH0KIApAQCAtMTM3LDEwICsxNDIsMTAgQEAKICAgIFRoaXMgZnVuY3Rpb24gaXMgdGhlIHJldmVyc2Ugb2YgX1B5X2NoYXIyd2NoYXIoKS4KIAogICAgUmV0dXJuIGEgcG9pbnRlciB0byBhIG5ld2x5IGFsbG9jYXRlZCBieXRlIHN0cmluZyAodXNlIFB5TWVtX0ZyZWUoKSB0byBmcmVlCi0gICB0aGUgbWVtb3J5KSwgb3IgTlVMTCBvbiBjb252ZXJzaW9uIG9yIG1lbW9yeSBhbGxvY2F0aW9uIGVycm9yLgorICAgdGhlIG1lbW9yeSksIG9yIE5VTEwgb24gZW5jb2Rpbmcgb3IgbWVtb3J5IGFsbG9jYXRpb24gZXJyb3IuCiAKICAgIElmIGVycm9yX3BvcyBpcyBub3QgTlVMTDogKmVycm9yX3BvcyBpcyB0aGUgaW5kZXggb2YgdGhlIGludmFsaWQgY2hhcmFjdGVyCi0gICBvbiBjb252ZXJzaW9uIGVycm9yLCBvciAoc2l6ZV90KS0xIG90aGVyd2lzZS4gKi8KKyAgIG9uIGVuY29kaW5nIGVycm9yLCBvciAoc2l6ZV90KS0xIG90aGVyd2lzZS4gKi8KIGNoYXIqCiBfUHlfd2NoYXIyY2hhcihjb25zdCB3Y2hhcl90ICp0ZXh0LCBzaXplX3QgKmVycm9yX3BvcykKIHsKQEAgLTIzNSw4ICsyNDAsOCBAQAogLyogQ2FsbCBfd3N0YXQoKSBvbiBXaW5kb3dzLCBvciBlbmNvZGUgdGhlIHBhdGggdG8gdGhlIGZpbGVzeXN0ZW0gZW5jb2RpbmcgYW5kCiAgICBjYWxsIHN0YXQoKSBvdGhlcndpc2UuIE9ubHkgZmlsbCBzdF9tb2RlIGF0dHJpYnV0ZSBvbiBXaW5kb3dzLgogCi0gICBSZXR1cm4gMCBvbiBzdWNjZXNzLCAtMSBvbiBfd3N0YXQoKSAvIHN0YXQoKSBlcnJvciBvciAoaWYgUHlFcnJfT2NjdXJyZWQoKSkKLSAgIHVuaWNvZGUgZXJyb3IuICovCisgICBSZXR1cm4gMCBvbiBzdWNjZXNzLCAtMSBvbiBfd3N0YXQoKSAvIHN0YXQoKSBlcnJvciwgLTIgaWYgYW4gZXhjZXB0aW9uIHdhcworICAgcmFpc2VkLiAqLwogCiBpbnQKIF9QeV9zdGF0KFB5T2JqZWN0ICpwYXRoLCBzdHJ1Y3Qgc3RhdCAqc3RhdGJ1ZikKQEAgLTI0NCw4ICsyNDksMTIgQEAKICNpZmRlZiBNU19XSU5ET1dTCiAgICAgaW50IGVycjsKICAgICBzdHJ1Y3QgX3N0YXQgd3N0YXRidWY7CisgICAgd2NoYXJfdCAqd3BhdGg7CiAKLSAgICBlcnIgPSBfd3N0YXQoUHlVbmljb2RlX0FTX1VOSUNPREUocGF0aCksICZ3c3RhdGJ1Zik7CisgICAgd3BhdGggPSBQeVVuaWNvZGVfQXNVbmljb2RlKHBhdGgpOworICAgIGlmICh3cGF0aCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTI7CisgICAgZXJyID0gX3dzdGF0KHdwYXRoLCAmd3N0YXRidWYpOwogICAgIGlmICghZXJyKQogICAgICAgICBzdGF0YnVmLT5zdF9tb2RlID0gd3N0YXRidWYuc3RfbW9kZTsKICAgICByZXR1cm4gZXJyOwpAQCAtMjUzLDcgKzI2Miw3IEBACiAgICAgaW50IHJldDsKICAgICBQeU9iamVjdCAqYnl0ZXMgPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KHBhdGgpOwogICAgIGlmIChieXRlcyA9PSBOVUxMKQotICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIHJldHVybiAtMjsKICAgICByZXQgPSBzdGF0KFB5Qnl0ZXNfQVNfU1RSSU5HKGJ5dGVzKSwgc3RhdGJ1Zik7CiAgICAgUHlfREVDUkVGKGJ5dGVzKTsKICAgICByZXR1cm4gcmV0OwpAQCAtMjk3LDE4ICszMDYsMjkgQEAKIF9QeV9mb3BlbihQeU9iamVjdCAqcGF0aCwgY29uc3QgY2hhciAqbW9kZSkKIHsKICNpZmRlZiBNU19XSU5ET1dTCisgICAgd2NoYXJfdCAqd3BhdGg7CiAgICAgd2NoYXJfdCB3bW9kZVsxMF07CiAgICAgaW50IHVzaXplOwogCisgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2socGF0aCkpIHsKKyAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICJzdHIgZmlsZSBwYXRoIGV4cGVjdGVkIHVuZGVyIFdpbmRvd3MsIGdvdCAlUiIsCisgICAgICAgICAgICAgICAgICAgICBQeV9UWVBFKHBhdGgpKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIHdwYXRoID0gUHlVbmljb2RlX0FzVW5pY29kZShwYXRoKTsKKyAgICBpZiAod3BhdGggPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKICAgICB1c2l6ZSA9IE11bHRpQnl0ZVRvV2lkZUNoYXIoQ1BfQUNQLCAwLCBtb2RlLCAtMSwgd21vZGUsIHNpemVvZih3bW9kZSkpOwogICAgIGlmICh1c2l6ZSA9PSAwKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJldHVybiBfd2ZvcGVuKFB5VW5pY29kZV9BU19VTklDT0RFKHBhdGgpLCB3bW9kZSk7CisgICAgcmV0dXJuIF93Zm9wZW4od3BhdGgsIHdtb2RlKTsKICNlbHNlCiAgICAgRklMRSAqZjsKLSAgICBQeU9iamVjdCAqYnl0ZXMgPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KHBhdGgpOwotICAgIGlmIChieXRlcyA9PSBOVUxMKQorICAgIFB5T2JqZWN0ICpieXRlczsKKyAgICBpZiAoIVB5VW5pY29kZV9GU0NvbnZlcnRlcihwYXRoLCAmYnl0ZXMpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBmID0gZm9wZW4oUHlCeXRlc19BU19TVFJJTkcoYnl0ZXMpLCBtb2RlKTsKICAgICBQeV9ERUNSRUYoYnl0ZXMpOwpAQCAtMzE5LDcgKzMzOSw3IEBACiAjaWZkZWYgSEFWRV9SRUFETElOSwogCiAvKiBSZWFkIHZhbHVlIG9mIHN5bWJvbGljIGxpbmsuIEVuY29kZSB0aGUgcGF0aCB0byB0aGUgbG9jYWxlIGVuY29kaW5nLCBkZWNvZGUKLSAgIHRoZSByZXN1bHQgZnJvbSB0aGUgbG9jYWxlIGVuY29kaW5nLiAqLworICAgdGhlIHJlc3VsdCBmcm9tIHRoZSBsb2NhbGUgZW5jb2RpbmcuIFJldHVybiAtMSBvbiBlcnJvci4gKi8KIAogaW50CiBfUHlfd3JlYWRsaW5rKGNvbnN0IHdjaGFyX3QgKnBhdGgsIHdjaGFyX3QgKmJ1Ziwgc2l6ZV90IGJ1ZnNpeikKQEAgLTM2Myw3ICszODMsOCBAQAogI2lmZGVmIEhBVkVfUkVBTFBBVEgKIAogLyogUmV0dXJuIHRoZSBjYW5vbmljYWxpemVkIGFic29sdXRlIHBhdGhuYW1lLiBFbmNvZGUgcGF0aCB0byB0aGUgbG9jYWxlCi0gICBlbmNvZGluZywgZGVjb2RlIHRoZSByZXN1bHQgZnJvbSB0aGUgbG9jYWxlIGVuY29kaW5nLiAqLworICAgZW5jb2RpbmcsIGRlY29kZSB0aGUgcmVzdWx0IGZyb20gdGhlIGxvY2FsZSBlbmNvZGluZy4KKyAgIFJldHVybiBOVUxMIG9uIGVycm9yLiAqLwogCiB3Y2hhcl90KgogX1B5X3dyZWFscGF0aChjb25zdCB3Y2hhcl90ICpwYXRoLApAQCAtNDAxLDcgKzQyMiw4IEBACiAjZW5kaWYKIAogLyogR2V0IHRoZSBjdXJyZW50IGRpcmVjdG9yeS4gc2l6ZSBpcyB0aGUgYnVmZmVyIHNpemUgaW4gd2lkZSBjaGFyYWN0ZXJzCi0gICBpbmNsdWRpbmcgdGhlIG51bGwgY2hhcmFjdGVyLiBEZWNvZGUgdGhlIHBhdGggZnJvbSB0aGUgbG9jYWxlIGVuY29kaW5nLiAqLworICAgaW5jbHVkaW5nIHRoZSBudWxsIGNoYXJhY3Rlci4gRGVjb2RlIHRoZSBwYXRoIGZyb20gdGhlIGxvY2FsZSBlbmNvZGluZy4KKyAgIFJldHVybiBOVUxMIG9uIGVycm9yLiAqLwogCiB3Y2hhcl90KgogX1B5X3dnZXRjd2Qod2NoYXJfdCAqYnVmLCBzaXplX3Qgc2l6ZSkKZGlmZiAtLWdpdCBhL1B5dGhvbi9mb3JtYXR0ZXJfdW5pY29kZS5jIGIvUHl0aG9uL2Zvcm1hdHRlcl91bmljb2RlLmMKaW5kZXggYzM1MDkwNy4uZWQ3MTZhNSAxMDA2NDQKLS0tIGEvUHl0aG9uL2Zvcm1hdHRlcl91bmljb2RlLmMKKysrIGIvUHl0aG9uL2Zvcm1hdHRlcl91bmljb2RlLmMKQEAgLTMsMTIgKzMsMTQ3NyBAQAogICAgb2YgaW50Ll9fZmxvYXRfXywgZXRjLiwgdGhhdCB0YWtlIGFuZCByZXR1cm4gdW5pY29kZSBvYmplY3RzICovCiAKICNpbmNsdWRlICJQeXRob24uaCIKLSNpbmNsdWRlICIuLi9PYmplY3RzL3N0cmluZ2xpYi91bmljb2RlZGVmcy5oIgorI2luY2x1ZGUgPGxvY2FsZS5oPgorCisvKiBSYWlzZXMgYW4gZXhjZXB0aW9uIGFib3V0IGFuIHVua25vd24gcHJlc2VudGF0aW9uIHR5cGUgZm9yIHRoaXMKKyAqIHR5cGUuICovCisKK3N0YXRpYyB2b2lkCit1bmtub3duX3ByZXNlbnRhdGlvbl90eXBlKFB5X1VDUzQgcHJlc2VudGF0aW9uX3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIqIHR5cGVfbmFtZSkKK3sKKyAgICAvKiAlYyBtaWdodCBiZSBvdXQtb2YtcmFuZ2UsIGhlbmNlIHRoZSB0d28gY2FzZXMuICovCisgICAgaWYgKHByZXNlbnRhdGlvbl90eXBlID4gMzIgJiYgcHJlc2VudGF0aW9uX3R5cGUgPCAxMjgpCisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgIlVua25vd24gZm9ybWF0IGNvZGUgJyVjJyAiCisgICAgICAgICAgICAgICAgICAgICAiZm9yIG9iamVjdCBvZiB0eXBlICclLjIwMHMnIiwKKyAgICAgICAgICAgICAgICAgICAgIChjaGFyKXByZXNlbnRhdGlvbl90eXBlLAorICAgICAgICAgICAgICAgICAgICAgdHlwZV9uYW1lKTsKKyAgICBlbHNlCisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgIlVua25vd24gZm9ybWF0IGNvZGUgJ1xceCV4JyAiCisgICAgICAgICAgICAgICAgICAgICAiZm9yIG9iamVjdCBvZiB0eXBlICclLjIwMHMnIiwKKyAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBpbnQpcHJlc2VudGF0aW9uX3R5cGUsCisgICAgICAgICAgICAgICAgICAgICB0eXBlX25hbWUpOworfQorCitzdGF0aWMgdm9pZAoraW52YWxpZF9jb21tYV90eXBlKFB5X1VDUzQgcHJlc2VudGF0aW9uX3R5cGUpCit7CisgICAgaWYgKHByZXNlbnRhdGlvbl90eXBlID4gMzIgJiYgcHJlc2VudGF0aW9uX3R5cGUgPCAxMjgpCisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBzcGVjaWZ5ICcsJyB3aXRoICclYycuIiwKKyAgICAgICAgICAgICAgICAgICAgIChjaGFyKXByZXNlbnRhdGlvbl90eXBlKTsKKyAgICBlbHNlCisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCBzcGVjaWZ5ICcsJyB3aXRoICdcXHgleCcuIiwKKyAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBpbnQpcHJlc2VudGF0aW9uX3R5cGUpOworfQorCisvKgorICAgIGdldF9pbnRlZ2VyIGNvbnN1bWVzIDAgb3IgbW9yZSBkZWNpbWFsIGRpZ2l0IGNoYXJhY3RlcnMgZnJvbSBhbgorICAgIGlucHV0IHN0cmluZywgdXBkYXRlcyAqcmVzdWx0IHdpdGggdGhlIGNvcnJlc3BvbmRpbmcgcG9zaXRpdmUKKyAgICBpbnRlZ2VyLCBhbmQgcmV0dXJucyB0aGUgbnVtYmVyIG9mIGRpZ2l0cyBjb25zdW1lZC4KKworICAgIHJldHVybnMgLTEgb24gZXJyb3IuCisqLworc3RhdGljIGludAorZ2V0X2ludGVnZXIoUHlPYmplY3QgKnN0ciwgUHlfc3NpemVfdCAqcG9zLCBQeV9zc2l6ZV90IGVuZCwKKyAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgKnJlc3VsdCkKK3sKKyAgICBQeV9zc2l6ZV90IGFjY3VtdWxhdG9yLCBkaWdpdHZhbDsKKyAgICBpbnQgbnVtZGlnaXRzOworICAgIGFjY3VtdWxhdG9yID0gbnVtZGlnaXRzID0gMDsKKyAgICBmb3IgKDs7KCpwb3MpKyssIG51bWRpZ2l0cysrKSB7CisgICAgICAgIGlmICgqcG9zID49IGVuZCkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkaWdpdHZhbCA9IFB5X1VOSUNPREVfVE9ERUNJTUFMKFB5VW5pY29kZV9SRUFEX0NIQVIoc3RyLCAqcG9zKSk7CisgICAgICAgIGlmIChkaWdpdHZhbCA8IDApCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgLyoKKyAgICAgICAgICAgRGV0ZWN0IHBvc3NpYmxlIG92ZXJmbG93IGJlZm9yZSBpdCBoYXBwZW5zOgorCisgICAgICAgICAgICAgIGFjY3VtdWxhdG9yICogMTAgKyBkaWdpdHZhbCA+IFBZX1NTSVpFX1RfTUFYIGlmIGFuZCBvbmx5IGlmCisgICAgICAgICAgICAgIGFjY3VtdWxhdG9yID4gKFBZX1NTSVpFX1RfTUFYIC0gZGlnaXR2YWwpIC8gMTAuCisgICAgICAgICovCisgICAgICAgIGlmIChhY2N1bXVsYXRvciA+IChQWV9TU0laRV9UX01BWCAtIGRpZ2l0dmFsKSAvIDEwKSB7CisgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAiVG9vIG1hbnkgZGVjaW1hbCBkaWdpdHMgaW4gZm9ybWF0IHN0cmluZyIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIGFjY3VtdWxhdG9yID0gYWNjdW11bGF0b3IgKiAxMCArIGRpZ2l0dmFsOworICAgIH0KKyAgICAqcmVzdWx0ID0gYWNjdW11bGF0b3I7CisgICAgcmV0dXJuIG51bWRpZ2l0czsKK30KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKiBzdGFuZGFyZCBmb3JtYXQgc3BlY2lmaWVyIHBhcnNpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisvKiByZXR1cm5zIHRydWUgaWYgdGhpcyBjaGFyYWN0ZXIgaXMgYSBzcGVjaWZpZXIgYWxpZ25tZW50IHRva2VuICovCitQeV9MT0NBTF9JTkxJTkUoaW50KQoraXNfYWxpZ25tZW50X3Rva2VuKFB5X1VDUzQgYykKK3sKKyAgICBzd2l0Y2ggKGMpIHsKKyAgICBjYXNlICc8JzogY2FzZSAnPic6IGNhc2UgJz0nOiBjYXNlICdeJzoKKyAgICAgICAgcmV0dXJuIDE7CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorfQorCisvKiByZXR1cm5zIHRydWUgaWYgdGhpcyBjaGFyYWN0ZXIgaXMgYSBzaWduIGVsZW1lbnQgKi8KK1B5X0xPQ0FMX0lOTElORShpbnQpCitpc19zaWduX2VsZW1lbnQoUHlfVUNTNCBjKQoreworICAgIHN3aXRjaCAoYykgeworICAgIGNhc2UgJyAnOiBjYXNlICcrJzogY2FzZSAnLSc6CisgICAgICAgIHJldHVybiAxOworICAgIGRlZmF1bHQ6CisgICAgICAgIHJldHVybiAwOworICAgIH0KK30KIAogCi0jZGVmaW5lIEZPUk1BVF9TVFJJTkcgIF9QeVVuaWNvZGVfRm9ybWF0QWR2YW5jZWQKLSNkZWZpbmUgRk9STUFUX0xPTkcgICAgX1B5TG9uZ19Gb3JtYXRBZHZhbmNlZAotI2RlZmluZSBGT1JNQVRfRkxPQVQgICBfUHlGbG9hdF9Gb3JtYXRBZHZhbmNlZAotI2RlZmluZSBGT1JNQVRfQ09NUExFWCBfUHlDb21wbGV4X0Zvcm1hdEFkdmFuY2VkCit0eXBlZGVmIHN0cnVjdCB7CisgICAgUHlfVUNTNCBmaWxsX2NoYXI7CisgICAgUHlfVUNTNCBhbGlnbjsKKyAgICBpbnQgYWx0ZXJuYXRlOworICAgIFB5X1VDUzQgc2lnbjsKKyAgICBQeV9zc2l6ZV90IHdpZHRoOworICAgIGludCB0aG91c2FuZHNfc2VwYXJhdG9yczsKKyAgICBQeV9zc2l6ZV90IHByZWNpc2lvbjsKKyAgICBQeV9VQ1M0IHR5cGU7Cit9IEludGVybmFsRm9ybWF0U3BlYzsKIAotI2luY2x1ZGUgIi4uL09iamVjdHMvc3RyaW5nbGliL2Zvcm1hdHRlci5oIgorI2lmIDAKKy8qIE9jY2Fzc2lvbmFsbHkgdXNlZnVsIGZvciBkZWJ1Z2dpbmcuIFNob3VsZCBub3JtYWxseSBiZSBjb21tZW50ZWQgb3V0LiAqLworc3RhdGljIHZvaWQKK0RFQlVHX1BSSU5UX0ZPUk1BVF9TUEVDKEludGVybmFsRm9ybWF0U3BlYyAqZm9ybWF0KQoreworICAgIHByaW50ZigiaW50ZXJuYWwgZm9ybWF0IHNwZWM6IGZpbGxfY2hhciAlZFxuIiwgZm9ybWF0LT5maWxsX2NoYXIpOworICAgIHByaW50ZigiaW50ZXJuYWwgZm9ybWF0IHNwZWM6IGFsaWduICVkXG4iLCBmb3JtYXQtPmFsaWduKTsKKyAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiBhbHRlcm5hdGUgJWRcbiIsIGZvcm1hdC0+YWx0ZXJuYXRlKTsKKyAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiBzaWduICVkXG4iLCBmb3JtYXQtPnNpZ24pOworICAgIHByaW50ZigiaW50ZXJuYWwgZm9ybWF0IHNwZWM6IHdpZHRoICV6ZFxuIiwgZm9ybWF0LT53aWR0aCk7CisgICAgcHJpbnRmKCJpbnRlcm5hbCBmb3JtYXQgc3BlYzogdGhvdXNhbmRzX3NlcGFyYXRvcnMgJWRcbiIsCisgICAgICAgICAgIGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMpOworICAgIHByaW50ZigiaW50ZXJuYWwgZm9ybWF0IHNwZWM6IHByZWNpc2lvbiAlemRcbiIsIGZvcm1hdC0+cHJlY2lzaW9uKTsKKyAgICBwcmludGYoImludGVybmFsIGZvcm1hdCBzcGVjOiB0eXBlICVjXG4iLCBmb3JtYXQtPnR5cGUpOworICAgIHByaW50ZigiXG4iKTsKK30KKyNlbmRpZgorCisKKy8qCisgIHB0ciBwb2ludHMgdG8gdGhlIHN0YXJ0IG9mIHRoZSBmb3JtYXRfc3BlYywgZW5kIHBvaW50cyBqdXN0IHBhc3QgaXRzIGVuZC4KKyAgZmlsbHMgaW4gZm9ybWF0IHdpdGggdGhlIHBhcnNlZCBpbmZvcm1hdGlvbi4KKyAgcmV0dXJucyAxIG9uIHN1Y2Nlc3MsIDAgb24gZmFpbHVyZS4KKyAgaWYgZmFpbHVyZSwgc2V0cyB0aGUgZXhjZXB0aW9uCisqLworc3RhdGljIGludAorcGFyc2VfaW50ZXJuYWxfcmVuZGVyX2Zvcm1hdF9zcGVjKFB5T2JqZWN0ICpmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IHN0YXJ0LCBQeV9zc2l6ZV90IGVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyIGRlZmF1bHRfdHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyIGRlZmF1bHRfYWxpZ24pCit7CisgICAgUHlfc3NpemVfdCBwb3MgPSBzdGFydDsKKyAgICAvKiBlbmQtcG9zIGlzIHVzZWQgdGhyb3VnaG91dCB0aGlzIGNvZGUgdG8gc3BlY2lmeSB0aGUgbGVuZ3RoIG9mCisgICAgICAgdGhlIGlucHV0IHN0cmluZyAqLworI2RlZmluZSBSRUFEX3NwZWMoaW5kZXgpIFB5VW5pY29kZV9SRUFEX0NIQVIoZm9ybWF0X3NwZWMsIGluZGV4KQorCisgICAgUHlfc3NpemVfdCBjb25zdW1lZDsKKyAgICBpbnQgYWxpZ25fc3BlY2lmaWVkID0gMDsKKworICAgIGZvcm1hdC0+ZmlsbF9jaGFyID0gJ1wwJzsKKyAgICBmb3JtYXQtPmFsaWduID0gZGVmYXVsdF9hbGlnbjsKKyAgICBmb3JtYXQtPmFsdGVybmF0ZSA9IDA7CisgICAgZm9ybWF0LT5zaWduID0gJ1wwJzsKKyAgICBmb3JtYXQtPndpZHRoID0gLTE7CisgICAgZm9ybWF0LT50aG91c2FuZHNfc2VwYXJhdG9ycyA9IDA7CisgICAgZm9ybWF0LT5wcmVjaXNpb24gPSAtMTsKKyAgICBmb3JtYXQtPnR5cGUgPSBkZWZhdWx0X3R5cGU7CisKKyAgICAvKiBJZiB0aGUgc2Vjb25kIGNoYXIgaXMgYW4gYWxpZ25tZW50IHRva2VuLAorICAgICAgIHRoZW4gcGFyc2UgdGhlIGZpbGwgY2hhciAqLworICAgIGlmIChlbmQtcG9zID49IDIgJiYgaXNfYWxpZ25tZW50X3Rva2VuKFJFQURfc3BlYyhwb3MrMSkpKSB7CisgICAgICAgIGZvcm1hdC0+YWxpZ24gPSBSRUFEX3NwZWMocG9zKzEpOworICAgICAgICBmb3JtYXQtPmZpbGxfY2hhciA9IFJFQURfc3BlYyhwb3MpOworICAgICAgICBhbGlnbl9zcGVjaWZpZWQgPSAxOworICAgICAgICBwb3MgKz0gMjsKKyAgICB9CisgICAgZWxzZSBpZiAoZW5kLXBvcyA+PSAxICYmIGlzX2FsaWdubWVudF90b2tlbihSRUFEX3NwZWMocG9zKSkpIHsKKyAgICAgICAgZm9ybWF0LT5hbGlnbiA9IFJFQURfc3BlYyhwb3MpOworICAgICAgICBhbGlnbl9zcGVjaWZpZWQgPSAxOworICAgICAgICArK3BvczsKKyAgICB9CisKKyAgICAvKiBQYXJzZSB0aGUgdmFyaW91cyBzaWduIG9wdGlvbnMgKi8KKyAgICBpZiAoZW5kLXBvcyA+PSAxICYmIGlzX3NpZ25fZWxlbWVudChSRUFEX3NwZWMocG9zKSkpIHsKKyAgICAgICAgZm9ybWF0LT5zaWduID0gUkVBRF9zcGVjKHBvcyk7CisgICAgICAgICsrcG9zOworICAgIH0KKworICAgIC8qIElmIHRoZSBuZXh0IGNoYXJhY3RlciBpcyAjLCB3ZSdyZSBpbiBhbHRlcm5hdGUgbW9kZS4gIFRoaXMgb25seQorICAgICAgIGFwcGxpZXMgdG8gaW50ZWdlcnMuICovCisgICAgaWYgKGVuZC1wb3MgPj0gMSAmJiBSRUFEX3NwZWMocG9zKSA9PSAnIycpIHsKKyAgICAgICAgZm9ybWF0LT5hbHRlcm5hdGUgPSAxOworICAgICAgICArK3BvczsKKyAgICB9CisKKyAgICAvKiBUaGUgc3BlY2lhbCBjYXNlIGZvciAwLXBhZGRpbmcgKGJhY2t3YXJkcyBjb21wYXQpICovCisgICAgaWYgKGZvcm1hdC0+ZmlsbF9jaGFyID09ICdcMCcgJiYgZW5kLXBvcyA+PSAxICYmIFJFQURfc3BlYyhwb3MpID09ICcwJykgeworICAgICAgICBmb3JtYXQtPmZpbGxfY2hhciA9ICcwJzsKKyAgICAgICAgaWYgKCFhbGlnbl9zcGVjaWZpZWQpIHsKKyAgICAgICAgICAgIGZvcm1hdC0+YWxpZ24gPSAnPSc7CisgICAgICAgIH0KKyAgICAgICAgKytwb3M7CisgICAgfQorCisgICAgY29uc3VtZWQgPSBnZXRfaW50ZWdlcihmb3JtYXRfc3BlYywgJnBvcywgZW5kLCAmZm9ybWF0LT53aWR0aCk7CisgICAgaWYgKGNvbnN1bWVkID09IC0xKQorICAgICAgICAvKiBPdmVyZmxvdyBlcnJvci4gRXhjZXB0aW9uIGFscmVhZHkgc2V0LiAqLworICAgICAgICByZXR1cm4gMDsKKworICAgIC8qIElmIGNvbnN1bWVkIGlzIDAsIHdlIGRpZG4ndCBjb25zdW1lIGFueSBjaGFyYWN0ZXJzIGZvciB0aGUKKyAgICAgICB3aWR0aC4gSW4gdGhhdCBjYXNlLCByZXNldCB0aGUgd2lkdGggdG8gLTEsIGJlY2F1c2UKKyAgICAgICBnZXRfaW50ZWdlcigpIHdpbGwgaGF2ZSBzZXQgaXQgdG8gemVyby4gLTEgaXMgaG93IHdlIHJlY29yZAorICAgICAgIHRoYXQgdGhlIHdpZHRoIHdhc24ndCBzcGVjaWZpZWQuICovCisgICAgaWYgKGNvbnN1bWVkID09IDApCisgICAgICAgIGZvcm1hdC0+d2lkdGggPSAtMTsKKworICAgIC8qIENvbW1hIHNpZ25pZmllcyBhZGQgdGhvdXNhbmRzIHNlcGFyYXRvcnMgKi8KKyAgICBpZiAoZW5kLXBvcyAmJiBSRUFEX3NwZWMocG9zKSA9PSAnLCcpIHsKKyAgICAgICAgZm9ybWF0LT50aG91c2FuZHNfc2VwYXJhdG9ycyA9IDE7CisgICAgICAgICsrcG9zOworICAgIH0KKworICAgIC8qIFBhcnNlIGZpZWxkIHByZWNpc2lvbiAqLworICAgIGlmIChlbmQtcG9zICYmIFJFQURfc3BlYyhwb3MpID09ICcuJykgeworICAgICAgICArK3BvczsKKworICAgICAgICBjb25zdW1lZCA9IGdldF9pbnRlZ2VyKGZvcm1hdF9zcGVjLCAmcG9zLCBlbmQsICZmb3JtYXQtPnByZWNpc2lvbik7CisgICAgICAgIGlmIChjb25zdW1lZCA9PSAtMSkKKyAgICAgICAgICAgIC8qIE92ZXJmbG93IGVycm9yLiBFeGNlcHRpb24gYWxyZWFkeSBzZXQuICovCisgICAgICAgICAgICByZXR1cm4gMDsKKworICAgICAgICAvKiBOb3QgaGF2aW5nIGEgcHJlY2lzaW9uIGFmdGVyIGEgZG90IGlzIGFuIGVycm9yLiAqLworICAgICAgICBpZiAoY29uc3VtZWQgPT0gMCkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIkZvcm1hdCBzcGVjaWZpZXIgbWlzc2luZyBwcmVjaXNpb24iKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisKKyAgICB9CisKKyAgICAvKiBGaW5hbGx5LCBwYXJzZSB0aGUgdHlwZSBmaWVsZC4gKi8KKworICAgIGlmIChlbmQtcG9zID4gMSkgeworICAgICAgICAvKiBNb3JlIHRoYW4gb25lIGNoYXIgcmVtYWluLCBpbnZhbGlkIGZvcm1hdCBzcGVjaWZpZXIuICovCisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLCAiSW52YWxpZCBmb3JtYXQgc3BlY2lmaWVyIik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIGlmIChlbmQtcG9zID09IDEpIHsKKyAgICAgICAgZm9ybWF0LT50eXBlID0gUkVBRF9zcGVjKHBvcyk7CisgICAgICAgICsrcG9zOworICAgIH0KKworICAgIC8qIERvIGFzIG11Y2ggdmFsaWRhdGluZyBhcyB3ZSBjYW4sIGp1c3QgYnkgbG9va2luZyBhdCB0aGUgZm9ybWF0CisgICAgICAgc3BlY2lmaWVyLiAgRG8gbm90IHRha2UgaW50byBhY2NvdW50IHdoYXQgdHlwZSBvZiBmb3JtYXR0aW5nCisgICAgICAgd2UncmUgZG9pbmcgKGludCwgZmxvYXQsIHN0cmluZykuICovCisKKyAgICBpZiAoZm9ybWF0LT50aG91c2FuZHNfc2VwYXJhdG9ycykgeworICAgICAgICBzd2l0Y2ggKGZvcm1hdC0+dHlwZSkgeworICAgICAgICBjYXNlICdkJzoKKyAgICAgICAgY2FzZSAnZSc6CisgICAgICAgIGNhc2UgJ2YnOgorICAgICAgICBjYXNlICdnJzoKKyAgICAgICAgY2FzZSAnRSc6CisgICAgICAgIGNhc2UgJ0cnOgorICAgICAgICBjYXNlICclJzoKKyAgICAgICAgY2FzZSAnRic6CisgICAgICAgIGNhc2UgJ1wwJzoKKyAgICAgICAgICAgIC8qIFRoZXNlIGFyZSBhbGxvd2VkLiBTZWUgUEVQIDM3OC4qLworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBpbnZhbGlkX2NvbW1hX3R5cGUoZm9ybWF0LT50eXBlKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgfQorCisgICAgYXNzZXJ0IChmb3JtYXQtPmFsaWduIDw9IDEyNyk7CisgICAgYXNzZXJ0IChmb3JtYXQtPnNpZ24gPD0gMTI3KTsKKyAgICByZXR1cm4gMTsKK30KKworLyogQ2FsY3VsYXRlIHRoZSBwYWRkaW5nIG5lZWRlZC4gKi8KK3N0YXRpYyB2b2lkCitjYWxjX3BhZGRpbmcoUHlfc3NpemVfdCBuY2hhcnMsIFB5X3NzaXplX3Qgd2lkdGgsIFB5X1VDUzQgYWxpZ24sCisgICAgICAgICAgICAgUHlfc3NpemVfdCAqbl9scGFkZGluZywgUHlfc3NpemVfdCAqbl9ycGFkZGluZywKKyAgICAgICAgICAgICBQeV9zc2l6ZV90ICpuX3RvdGFsKQoreworICAgIGlmICh3aWR0aCA+PSAwKSB7CisgICAgICAgIGlmIChuY2hhcnMgPiB3aWR0aCkKKyAgICAgICAgICAgICpuX3RvdGFsID0gbmNoYXJzOworICAgICAgICBlbHNlCisgICAgICAgICAgICAqbl90b3RhbCA9IHdpZHRoOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgLyogbm90IHNwZWNpZmllZCwgdXNlIGFsbCBvZiB0aGUgY2hhcnMgYW5kIG5vIG1vcmUgKi8KKyAgICAgICAgKm5fdG90YWwgPSBuY2hhcnM7CisgICAgfQorCisgICAgLyogRmlndXJlIG91dCBob3cgbXVjaCBsZWFkaW5nIHNwYWNlIHdlIG5lZWQsIGJhc2VkIG9uIHRoZQorICAgICAgIGFsaWduaW5nICovCisgICAgaWYgKGFsaWduID09ICc+JykKKyAgICAgICAgKm5fbHBhZGRpbmcgPSAqbl90b3RhbCAtIG5jaGFyczsKKyAgICBlbHNlIGlmIChhbGlnbiA9PSAnXicpCisgICAgICAgICpuX2xwYWRkaW5nID0gKCpuX3RvdGFsIC0gbmNoYXJzKSAvIDI7CisgICAgZWxzZSBpZiAoYWxpZ24gPT0gJzwnIHx8IGFsaWduID09ICc9JykKKyAgICAgICAgKm5fbHBhZGRpbmcgPSAwOworICAgIGVsc2UgeworICAgICAgICAvKiBXZSBzaG91bGQgbmV2ZXIgaGF2ZSBhbiB1bnNwZWNpZmllZCBhbGlnbm1lbnQuICovCisgICAgICAgICpuX2xwYWRkaW5nID0gMDsKKyAgICAgICAgYXNzZXJ0KDApOworICAgIH0KKworICAgICpuX3JwYWRkaW5nID0gKm5fdG90YWwgLSBuY2hhcnMgLSAqbl9scGFkZGluZzsKK30KKworLyogRG8gdGhlIHBhZGRpbmcsIGFuZCByZXR1cm4gYSBwb2ludGVyIHRvIHdoZXJlIHRoZSBjYWxsZXItc3VwcGxpZWQKKyAgIGNvbnRlbnQgZ29lcy4gKi8KK3N0YXRpYyBQeV9zc2l6ZV90CitmaWxsX3BhZGRpbmcoUHlPYmplY3QgKnMsIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgbmNoYXJzLAorICAgICAgICAgICAgIFB5X1VDUzQgZmlsbF9jaGFyLCBQeV9zc2l6ZV90IG5fbHBhZGRpbmcsCisgICAgICAgICAgICAgUHlfc3NpemVfdCBuX3JwYWRkaW5nKQoreworICAgIC8qIFBhZCBvbiBsZWZ0LiAqLworICAgIGlmIChuX2xwYWRkaW5nKQorICAgICAgICBQeVVuaWNvZGVfRmlsbChzLCBzdGFydCwgc3RhcnQgKyBuX2xwYWRkaW5nLCBmaWxsX2NoYXIpOworCisgICAgLyogUGFkIG9uIHJpZ2h0LiAqLworICAgIGlmIChuX3JwYWRkaW5nKQorICAgICAgICBQeVVuaWNvZGVfRmlsbChzLCBzdGFydCArIG5jaGFycyArIG5fbHBhZGRpbmcsCisgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0ICsgbmNoYXJzICsgbl9scGFkZGluZyArIG5fcnBhZGRpbmcsIGZpbGxfY2hhcik7CisKKyAgICAvKiBQb2ludGVyIHRvIHRoZSB1c2VyIGNvbnRlbnQuICovCisgICAgcmV0dXJuIHN0YXJ0ICsgbl9scGFkZGluZzsKK30KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKiBjb21tb24gcm91dGluZXMgZm9yIG51bWVyaWMgZm9ybWF0dGluZyAqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCisvKiBMb2NhbGUgdHlwZSBjb2Rlcy4gKi8KKyNkZWZpbmUgTFRfQ1VSUkVOVF9MT0NBTEUgMAorI2RlZmluZSBMVF9ERUZBVUxUX0xPQ0FMRSAxCisjZGVmaW5lIExUX05PX0xPQ0FMRSAyCisKKy8qIExvY2FsZSBpbmZvIG5lZWRlZCBmb3IgZm9ybWF0dGluZyBpbnRlZ2VycyBhbmQgdGhlIHBhcnQgb2YgZmxvYXRzCisgICBiZWZvcmUgYW5kIGluY2x1ZGluZyB0aGUgZGVjaW1hbC4gTm90ZSB0aGF0IGxvY2FsZXMgb25seSBzdXBwb3J0CisgICA4LWJpdCBjaGFycywgbm90IHVuaWNvZGUuICovCit0eXBlZGVmIHN0cnVjdCB7CisgICAgY2hhciAqZGVjaW1hbF9wb2ludDsKKyAgICBjaGFyICp0aG91c2FuZHNfc2VwOworICAgIGNoYXIgKmdyb3VwaW5nOworfSBMb2NhbGVJbmZvOworCisvKiBkZXNjcmliZXMgdGhlIGxheW91dCBmb3IgYW4gaW50ZWdlciwgc2VlIHRoZSBjb21tZW50IGluCisgICBjYWxjX251bWJlcl93aWR0aHMoKSBmb3IgZGV0YWlscyAqLwordHlwZWRlZiBzdHJ1Y3QgeworICAgIFB5X3NzaXplX3Qgbl9scGFkZGluZzsKKyAgICBQeV9zc2l6ZV90IG5fcHJlZml4OworICAgIFB5X3NzaXplX3Qgbl9zcGFkZGluZzsKKyAgICBQeV9zc2l6ZV90IG5fcnBhZGRpbmc7CisgICAgY2hhciBzaWduOworICAgIFB5X3NzaXplX3Qgbl9zaWduOyAgICAgIC8qIG51bWJlciBvZiBkaWdpdHMgbmVlZGVkIGZvciBzaWduICgwLzEpICovCisgICAgUHlfc3NpemVfdCBuX2dyb3VwZWRfZGlnaXRzOyAvKiBTcGFjZSB0YWtlbiB1cCBieSB0aGUgZGlnaXRzLCBpbmNsdWRpbmcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFueSBncm91cGluZyBjaGFycy4gKi8KKyAgICBQeV9zc2l6ZV90IG5fZGVjaW1hbDsgICAvKiAwIGlmIG9ubHkgYW4gaW50ZWdlciAqLworICAgIFB5X3NzaXplX3Qgbl9yZW1haW5kZXI7IC8qIERpZ2l0cyBpbiBkZWNpbWFsIGFuZC9vciBleHBvbmVudCBwYXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4Y2x1ZGluZyB0aGUgZGVjaW1hbCBpdHNlbGYsIGlmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlc2VudC4gKi8KKworICAgIC8qIFRoZXNlIDIgYXJlIG5vdCB0aGUgd2lkdGhzIG9mIGZpZWxkcywgYnV0IGFyZSBuZWVkZWQgYnkKKyAgICAgICBTVFJJTkdMSUJfR1JPVVBJTkcuICovCisgICAgUHlfc3NpemVfdCBuX2RpZ2l0czsgICAgLyogVGhlIG51bWJlciBvZiBkaWdpdHMgYmVmb3JlIGEgZGVjaW1hbAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yIGV4cG9uZW50LiAqLworICAgIFB5X3NzaXplX3Qgbl9taW5fd2lkdGg7IC8qIFRoZSBtaW5fd2lkdGggd2UgdXNlZCB3aGVuIHdlIGNvbXB1dGVkCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIG5fZ3JvdXBlZF9kaWdpdHMgd2lkdGguICovCit9IE51bWJlckZpZWxkV2lkdGhzOworCisKKy8qIEdpdmVuIGEgbnVtYmVyIG9mIHRoZSBmb3JtOgorICAgZGlnaXRzW3JlbWFpbmRlcl0KKyAgIHdoZXJlIHB0ciBwb2ludHMgdG8gdGhlIHN0YXJ0IGFuZCBlbmQgcG9pbnRzIHRvIHRoZSBlbmQsIGZpbmQgd2hlcmUKKyAgICB0aGUgaW50ZWdlciBwYXJ0IGVuZHMuIFRoaXMgY291bGQgYmUgYSBkZWNpbWFsLCBhbiBleHBvbmVudCwgYm90aCwKKyAgICBvciBuZWl0aGVyLgorICAgSWYgYSBkZWNpbWFsIHBvaW50IGlzIHByZXNlbnQsIHNldCAqaGFzX2RlY2ltYWwgYW5kIGluY3JlbWVudAorICAgIHJlbWFpbmRlciBiZXlvbmQgaXQuCisgICBSZXN1bHRzIGFyZSB1bmRlZmluZWQgKGJ1dCBzaG91bGRuJ3QgY3Jhc2gpIGZvciBpbXByb3Blcmx5CisgICAgZm9ybWF0dGVkIHN0cmluZ3MuCisqLworc3RhdGljIHZvaWQKK3BhcnNlX251bWJlcihQeU9iamVjdCAqcywgUHlfc3NpemVfdCBwb3MsIFB5X3NzaXplX3QgZW5kLAorICAgICAgICAgICAgIFB5X3NzaXplX3QgKm5fcmVtYWluZGVyLCBpbnQgKmhhc19kZWNpbWFsKQoreworICAgIFB5X3NzaXplX3QgcmVtYWluZGVyOworCisgICAgd2hpbGUgKHBvczxlbmQgJiYgaXNkaWdpdChQeVVuaWNvZGVfUkVBRF9DSEFSKHMsIHBvcykpKQorICAgICAgICArK3BvczsKKyAgICByZW1haW5kZXIgPSBwb3M7CisKKyAgICAvKiBEb2VzIHJlbWFpbmRlciBzdGFydCB3aXRoIGEgZGVjaW1hbCBwb2ludD8gKi8KKyAgICAqaGFzX2RlY2ltYWwgPSBwb3M8ZW5kICYmIFB5VW5pY29kZV9SRUFEX0NIQVIocywgcmVtYWluZGVyKSA9PSAnLic7CisKKyAgICAvKiBTa2lwIHRoZSBkZWNpbWFsIHBvaW50LiAqLworICAgIGlmICgqaGFzX2RlY2ltYWwpCisgICAgICAgIHJlbWFpbmRlcisrOworCisgICAgKm5fcmVtYWluZGVyID0gZW5kIC0gcmVtYWluZGVyOworfQorCisvKiBub3QgYWxsIGZpZWxkcyBvZiBmb3JtYXQgYXJlIHVzZWQuICBmb3IgZXhhbXBsZSwgcHJlY2lzaW9uIGlzCisgICB1bnVzZWQuICBzaG91bGQgdGhpcyB0YWtlIGRpc2NyZXRlIHBhcmFtcyBpbiBvcmRlciB0byBiZSBtb3JlIGNsZWFyCisgICBhYm91dCB3aGF0IGl0IGRvZXM/ICBvciBpcyBwYXNzaW5nIGEgc2luZ2xlIGZvcm1hdCBwYXJhbWV0ZXIgZWFzaWVyCisgICBhbmQgbW9yZSBlZmZpY2llbnQgZW5vdWdoIHRvIGp1c3RpZnkgYSBsaXR0bGUgb2JmdXNjYXRpb24/ICovCitzdGF0aWMgUHlfc3NpemVfdAorY2FsY19udW1iZXJfd2lkdGhzKE51bWJlckZpZWxkV2lkdGhzICpzcGVjLCBQeV9zc2l6ZV90IG5fcHJlZml4LAorICAgICAgICAgICAgICAgICAgIFB5X1VDUzQgc2lnbl9jaGFyLCBQeU9iamVjdCAqbnVtYmVyLCBQeV9zc2l6ZV90IG5fc3RhcnQsCisgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBuX2VuZCwgUHlfc3NpemVfdCBuX3JlbWFpbmRlciwKKyAgICAgICAgICAgICAgICAgICBpbnQgaGFzX2RlY2ltYWwsIGNvbnN0IExvY2FsZUluZm8gKmxvY2FsZSwKKyAgICAgICAgICAgICAgICAgICBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKK3sKKyAgICBQeV9zc2l6ZV90IG5fbm9uX2RpZ2l0X25vbl9wYWRkaW5nOworICAgIFB5X3NzaXplX3Qgbl9wYWRkaW5nOworCisgICAgc3BlYy0+bl9kaWdpdHMgPSBuX2VuZCAtIG5fc3RhcnQgLSBuX3JlbWFpbmRlciAtIChoYXNfZGVjaW1hbD8xOjApOworICAgIHNwZWMtPm5fbHBhZGRpbmcgPSAwOworICAgIHNwZWMtPm5fcHJlZml4ID0gbl9wcmVmaXg7CisgICAgc3BlYy0+bl9kZWNpbWFsID0gaGFzX2RlY2ltYWwgPyBzdHJsZW4obG9jYWxlLT5kZWNpbWFsX3BvaW50KSA6IDA7CisgICAgc3BlYy0+bl9yZW1haW5kZXIgPSBuX3JlbWFpbmRlcjsKKyAgICBzcGVjLT5uX3NwYWRkaW5nID0gMDsKKyAgICBzcGVjLT5uX3JwYWRkaW5nID0gMDsKKyAgICBzcGVjLT5zaWduID0gJ1wwJzsKKyAgICBzcGVjLT5uX3NpZ24gPSAwOworCisgICAgLyogdGhlIG91dHB1dCB3aWxsIGxvb2sgbGlrZToKKyAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgICAgICAgfCA8bHBhZGRpbmc+IDxzaWduPiA8cHJlZml4PiA8c3BhZGRpbmc+IDxncm91cGVkX2RpZ2l0cz4gPGRlY2ltYWw+IDxyZW1haW5kZXI+IDxycGFkZGluZz4gfAorICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKworICAgICAgIHNpZ24gaXMgY29tcHV0ZWQgZnJvbSBmb3JtYXQtPnNpZ24gYW5kIHRoZSBhY3R1YWwKKyAgICAgICBzaWduIG9mIHRoZSBudW1iZXIKKworICAgICAgIHByZWZpeCBpcyBnaXZlbiAoaXQncyBmb3IgdGhlICcweCcgcHJlZml4KQorCisgICAgICAgZGlnaXRzIGlzIGFscmVhZHkga25vd24KKworICAgICAgIHRoZSB0b3RhbCB3aWR0aCBpcyBlaXRoZXIgZ2l2ZW4sIG9yIGNvbXB1dGVkIGZyb20gdGhlCisgICAgICAgYWN0dWFsIGRpZ2l0cworCisgICAgICAgb25seSBvbmUgb2YgbHBhZGRpbmcsIHNwYWRkaW5nLCBhbmQgcnBhZGRpbmcgY2FuIGJlIG5vbi16ZXJvLAorICAgICAgIGFuZCBpdCdzIGNhbGN1bGF0ZWQgZnJvbSB0aGUgd2lkdGggYW5kIG90aGVyIGZpZWxkcworICAgICovCisKKyAgICAvKiBjb21wdXRlIHRoZSB2YXJpb3VzIHBhcnRzIHdlJ3JlIGdvaW5nIHRvIHdyaXRlICovCisgICAgc3dpdGNoIChmb3JtYXQtPnNpZ24pIHsKKyAgICBjYXNlICcrJzoKKyAgICAgICAgLyogYWx3YXlzIHB1dCBhICsgb3IgLSAqLworICAgICAgICBzcGVjLT5uX3NpZ24gPSAxOworICAgICAgICBzcGVjLT5zaWduID0gKHNpZ25fY2hhciA9PSAnLScgPyAnLScgOiAnKycpOworICAgICAgICBicmVhazsKKyAgICBjYXNlICcgJzoKKyAgICAgICAgc3BlYy0+bl9zaWduID0gMTsKKyAgICAgICAgc3BlYy0+c2lnbiA9IChzaWduX2NoYXIgPT0gJy0nID8gJy0nIDogJyAnKTsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgLyogTm90IHNwZWNpZmllZCwgb3IgdGhlIGRlZmF1bHQgKC0pICovCisgICAgICAgIGlmIChzaWduX2NoYXIgPT0gJy0nKSB7CisgICAgICAgICAgICBzcGVjLT5uX3NpZ24gPSAxOworICAgICAgICAgICAgc3BlYy0+c2lnbiA9ICctJzsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8qIFRoZSBudW1iZXIgb2YgY2hhcnMgdXNlZCBmb3Igbm9uLWRpZ2l0cyBhbmQgbm9uLXBhZGRpbmcuICovCisgICAgbl9ub25fZGlnaXRfbm9uX3BhZGRpbmcgPSBzcGVjLT5uX3NpZ24gKyBzcGVjLT5uX3ByZWZpeCArIHNwZWMtPm5fZGVjaW1hbCArCisgICAgICAgIHNwZWMtPm5fcmVtYWluZGVyOworCisgICAgLyogbWluX3dpZHRoIGNhbiBnbyBuZWdhdGl2ZSwgdGhhdCdzIG9rYXkuIGZvcm1hdC0+d2lkdGggPT0gLTEgbWVhbnMKKyAgICAgICB3ZSBkb24ndCBjYXJlLiAqLworICAgIGlmIChmb3JtYXQtPmZpbGxfY2hhciA9PSAnMCcgJiYgZm9ybWF0LT5hbGlnbiA9PSAnPScpCisgICAgICAgIHNwZWMtPm5fbWluX3dpZHRoID0gZm9ybWF0LT53aWR0aCAtIG5fbm9uX2RpZ2l0X25vbl9wYWRkaW5nOworICAgIGVsc2UKKyAgICAgICAgc3BlYy0+bl9taW5fd2lkdGggPSAwOworCisgICAgaWYgKHNwZWMtPm5fZGlnaXRzID09IDApCisgICAgICAgIC8qIFRoaXMgY2FzZSBvbmx5IG9jY3VycyB3aGVuIHVzaW5nICdjJyBmb3JtYXR0aW5nLCB3ZSBuZWVkCisgICAgICAgICAgIHRvIHNwZWNpYWwgY2FzZSBpdCBiZWNhdXNlIHRoZSBncm91cGluZyBjb2RlIGFsd2F5cyB3YW50cworICAgICAgICAgICB0byBoYXZlIGF0IGxlYXN0IG9uZSBjaGFyYWN0ZXIuICovCisgICAgICAgIHNwZWMtPm5fZ3JvdXBlZF9kaWdpdHMgPSAwOworICAgIGVsc2UKKyAgICAgICAgc3BlYy0+bl9ncm91cGVkX2RpZ2l0cyA9IF9QeVVuaWNvZGVfSW5zZXJ0VGhvdXNhbmRzR3JvdXBpbmcoCisgICAgICAgICAgICBOVUxMLCBQeVVuaWNvZGVfMUJZVEVfS0lORCwgTlVMTCwgMCwgTlVMTCwKKyAgICAgICAgICAgIHNwZWMtPm5fZGlnaXRzLCBzcGVjLT5uX21pbl93aWR0aCwKKyAgICAgICAgICAgIGxvY2FsZS0+Z3JvdXBpbmcsIGxvY2FsZS0+dGhvdXNhbmRzX3NlcCk7CisKKyAgICAvKiBHaXZlbiB0aGUgZGVzaXJlZCB3aWR0aCBhbmQgdGhlIHRvdGFsIG9mIGRpZ2l0IGFuZCBub24tZGlnaXQKKyAgICAgICBzcGFjZSB3ZSBjb25zdW1lLCBzZWUgaWYgd2UgbmVlZCBhbnkgcGFkZGluZy4gZm9ybWF0LT53aWR0aCBjYW4KKyAgICAgICBiZSBuZWdhdGl2ZSAobWVhbmluZyBubyBwYWRkaW5nKSwgYnV0IHRoaXMgY29kZSBzdGlsbCB3b3JrcyBpbgorICAgICAgIHRoYXQgY2FzZS4gKi8KKyAgICBuX3BhZGRpbmcgPSBmb3JtYXQtPndpZHRoIC0KKyAgICAgICAgICAgICAgICAgICAgICAgIChuX25vbl9kaWdpdF9ub25fcGFkZGluZyArIHNwZWMtPm5fZ3JvdXBlZF9kaWdpdHMpOworICAgIGlmIChuX3BhZGRpbmcgPiAwKSB7CisgICAgICAgIC8qIFNvbWUgcGFkZGluZyBpcyBuZWVkZWQuIERldGVybWluZSBpZiBpdCdzIGxlZnQsIHNwYWNlLCBvciByaWdodC4gKi8KKyAgICAgICAgc3dpdGNoIChmb3JtYXQtPmFsaWduKSB7CisgICAgICAgIGNhc2UgJzwnOgorICAgICAgICAgICAgc3BlYy0+bl9ycGFkZGluZyA9IG5fcGFkZGluZzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdeJzoKKyAgICAgICAgICAgIHNwZWMtPm5fbHBhZGRpbmcgPSBuX3BhZGRpbmcgLyAyOworICAgICAgICAgICAgc3BlYy0+bl9ycGFkZGluZyA9IG5fcGFkZGluZyAtIHNwZWMtPm5fbHBhZGRpbmc7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnPSc6CisgICAgICAgICAgICBzcGVjLT5uX3NwYWRkaW5nID0gbl9wYWRkaW5nOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJz4nOgorICAgICAgICAgICAgc3BlYy0+bl9scGFkZGluZyA9IG5fcGFkZGluZzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgLyogU2hvdWxkbid0IGdldCBoZXJlLCBidXQgdHJlYXQgaXQgYXMgJz4nICovCisgICAgICAgICAgICBzcGVjLT5uX2xwYWRkaW5nID0gbl9wYWRkaW5nOworICAgICAgICAgICAgYXNzZXJ0KDApOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIHNwZWMtPm5fbHBhZGRpbmcgKyBzcGVjLT5uX3NpZ24gKyBzcGVjLT5uX3ByZWZpeCArCisgICAgICAgIHNwZWMtPm5fc3BhZGRpbmcgKyBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzICsgc3BlYy0+bl9kZWNpbWFsICsKKyAgICAgICAgc3BlYy0+bl9yZW1haW5kZXIgKyBzcGVjLT5uX3JwYWRkaW5nOworfQorCisvKiBGaWxsIGluIHRoZSBkaWdpdCBwYXJ0cyBvZiBhIG51bWJlcnMncyBzdHJpbmcgcmVwcmVzZW50YXRpb24sCisgICBhcyBkZXRlcm1pbmVkIGluIGNhbGNfbnVtYmVyX3dpZHRocygpLgorICAgUmV0dXJuIC0xIG9uIGVycm9yLCBvciAwIG9uIHN1Y2Nlc3MuICovCitzdGF0aWMgaW50CitmaWxsX251bWJlcihQeU9iamVjdCAqb3V0LCBQeV9zc2l6ZV90IHBvcywgY29uc3QgTnVtYmVyRmllbGRXaWR0aHMgKnNwZWMsCisgICAgICAgICAgICBQeU9iamVjdCAqZGlnaXRzLCBQeV9zc2l6ZV90IGRfc3RhcnQsIFB5X3NzaXplX3QgZF9lbmQsCisgICAgICAgICAgICBQeU9iamVjdCAqcHJlZml4LCBQeV9zc2l6ZV90IHBfc3RhcnQsCisgICAgICAgICAgICBQeV9VQ1M0IGZpbGxfY2hhciwKKyAgICAgICAgICAgIExvY2FsZUluZm8gKmxvY2FsZSwgaW50IHRvdXBwZXIpCit7CisgICAgLyogVXNlZCB0byBrZWVwIHRyYWNrIG9mIGRpZ2l0cywgZGVjaW1hbCwgYW5kIHJlbWFpbmRlci4gKi8KKyAgICBQeV9zc2l6ZV90IGRfcG9zID0gZF9zdGFydDsKKyAgICB1bnNpZ25lZCBpbnQga2luZCA9IFB5VW5pY29kZV9LSU5EKG91dCk7CisgICAgdm9pZCAqZGF0YSA9IFB5VW5pY29kZV9EQVRBKG91dCk7CisKKyNpZm5kZWYgTkRFQlVHCisgICAgUHlfc3NpemVfdCByOworI2VuZGlmCisKKyAgICBpZiAoc3BlYy0+bl9scGFkZGluZykgeworICAgICAgICBQeVVuaWNvZGVfRmlsbChvdXQsIHBvcywgcG9zICsgc3BlYy0+bl9scGFkZGluZywgZmlsbF9jaGFyKTsKKyAgICAgICAgcG9zICs9IHNwZWMtPm5fbHBhZGRpbmc7CisgICAgfQorICAgIGlmIChzcGVjLT5uX3NpZ24gPT0gMSkgeworICAgICAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgcG9zKyssIHNwZWMtPnNpZ24pOworICAgIH0KKyAgICBpZiAoc3BlYy0+bl9wcmVmaXgpIHsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyhvdXQsIHBvcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVmaXgsIHBfc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BlYy0+bl9wcmVmaXgpIDwgMCkKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgaWYgKHRvdXBwZXIpIHsKKyAgICAgICAgICAgIFB5X3NzaXplX3QgdDsKKyAgICAgICAgICAgIGZvciAodCA9IDA7IHQgPCBzcGVjLT5uX3ByZWZpeDsgdCsrKSB7CisgICAgICAgICAgICAgICAgUHlfVUNTNCBjID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgcG9zICsgdCk7CisgICAgICAgICAgICAgICAgYyA9IFB5X1RPVVBQRVIoYyk7CisgICAgICAgICAgICAgICAgYXNzZXJ0IChjIDw9IDEyNyk7CisgICAgICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIHBvcyArIHQsIGMpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIHBvcyArPSBzcGVjLT5uX3ByZWZpeDsKKyAgICB9CisgICAgaWYgKHNwZWMtPm5fc3BhZGRpbmcpIHsKKyAgICAgICAgUHlVbmljb2RlX0ZpbGwob3V0LCBwb3MsIHBvcyArIHNwZWMtPm5fc3BhZGRpbmcsIGZpbGxfY2hhcik7CisgICAgICAgIHBvcyArPSBzcGVjLT5uX3NwYWRkaW5nOworICAgIH0KKworICAgIC8qIE9ubHkgZm9yIHR5cGUgJ2MnIHNwZWNpYWwgY2FzZSwgaXQgaGFzIG5vIGRpZ2l0cy4gKi8KKyAgICBpZiAoc3BlYy0+bl9kaWdpdHMgIT0gMCkgeworICAgICAgICAvKiBGaWxsIHRoZSBkaWdpdHMgd2l0aCBJbnNlcnRUaG91c2FuZHNHcm91cGluZy4gKi8KKyAgICAgICAgY2hhciAqcGRpZ2l0czsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEWShkaWdpdHMpKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICBwZGlnaXRzID0gUHlVbmljb2RlX0RBVEEoZGlnaXRzKTsKKyAgICAgICAgaWYgKFB5VW5pY29kZV9LSU5EKGRpZ2l0cykgPCBraW5kKSB7CisgICAgICAgICAgICBwZGlnaXRzID0gX1B5VW5pY29kZV9Bc0tpbmQoZGlnaXRzLCBraW5kKTsKKyAgICAgICAgICAgIGlmIChwZGlnaXRzID09IE5VTEwpCisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisjaWZuZGVmIE5ERUJVRworICAgICAgICByID0KKyNlbmRpZgorICAgICAgICAgICAgX1B5VW5pY29kZV9JbnNlcnRUaG91c2FuZHNHcm91cGluZygKKyAgICAgICAgICAgICAgICBvdXQsIGtpbmQsCisgICAgICAgICAgICAgICAgKGNoYXIqKWRhdGEgKyBraW5kICogcG9zLAorICAgICAgICAgICAgICAgIHNwZWMtPm5fZ3JvdXBlZF9kaWdpdHMsCisgICAgICAgICAgICAgICAgcGRpZ2l0cyArIGtpbmQgKiBkX3BvcywKKyAgICAgICAgICAgICAgICBzcGVjLT5uX2RpZ2l0cywgc3BlYy0+bl9taW5fd2lkdGgsCisgICAgICAgICAgICAgICAgbG9jYWxlLT5ncm91cGluZywgbG9jYWxlLT50aG91c2FuZHNfc2VwKTsKKyNpZm5kZWYgTkRFQlVHCisgICAgICAgIGFzc2VydChyID09IHNwZWMtPm5fZ3JvdXBlZF9kaWdpdHMpOworI2VuZGlmCisgICAgICAgIGlmIChQeVVuaWNvZGVfS0lORChkaWdpdHMpIDwga2luZCkKKyAgICAgICAgICAgIFB5TWVtX0ZyZWUocGRpZ2l0cyk7CisgICAgICAgIGRfcG9zICs9IHNwZWMtPm5fZGlnaXRzOworICAgIH0KKyAgICBpZiAodG91cHBlcikgeworICAgICAgICBQeV9zc2l6ZV90IHQ7CisgICAgICAgIGZvciAodCA9IDA7IHQgPCBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzOyB0KyspIHsKKyAgICAgICAgICAgIFB5X1VDUzQgYyA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIHBvcyArIHQpOworICAgICAgICAgICAgYyA9IFB5X1RPVVBQRVIoYyk7CisgICAgICAgICAgICBpZiAoYyA+IDEyNykgeworICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19TeXN0ZW1FcnJvciwgIm5vbi1hc2NpaSBncm91cGVkIGRpZ2l0Iik7CisgICAgICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgfQorICAgICAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIHBvcyArIHQsIGMpOworICAgICAgICB9CisgICAgfQorICAgIHBvcyArPSBzcGVjLT5uX2dyb3VwZWRfZGlnaXRzOworCisgICAgaWYgKHNwZWMtPm5fZGVjaW1hbCkgeworICAgICAgICBQeV9zc2l6ZV90IHQ7CisgICAgICAgIGZvciAodCA9IDA7IHQgPCBzcGVjLT5uX2RlY2ltYWw7ICsrdCkKKyAgICAgICAgICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBwb3MgKyB0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZS0+ZGVjaW1hbF9wb2ludFt0XSk7CisgICAgICAgIHBvcyArPSBzcGVjLT5uX2RlY2ltYWw7CisgICAgICAgIGRfcG9zICs9IDE7CisgICAgfQorCisgICAgaWYgKHNwZWMtPm5fcmVtYWluZGVyKSB7CisgICAgICAgIGlmIChQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMob3V0LCBwb3MsIGRpZ2l0cywgZF9wb3MsIHNwZWMtPm5fcmVtYWluZGVyKSA8IDApCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgIHBvcyArPSBzcGVjLT5uX3JlbWFpbmRlcjsKKyAgICAgICAgZF9wb3MgKz0gc3BlYy0+bl9yZW1haW5kZXI7CisgICAgfQorCisgICAgaWYgKHNwZWMtPm5fcnBhZGRpbmcpIHsKKyAgICAgICAgUHlVbmljb2RlX0ZpbGwob3V0LCBwb3MsIHBvcyArIHNwZWMtPm5fcnBhZGRpbmcsIGZpbGxfY2hhcik7CisgICAgICAgIHBvcyArPSBzcGVjLT5uX3JwYWRkaW5nOworICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworc3RhdGljIGNoYXIgbm9fZ3JvdXBpbmdbMV0gPSB7Q0hBUl9NQVh9OworCisvKiBGaW5kIHRoZSBkZWNpbWFsIHBvaW50IGNoYXJhY3RlcihzPyksIHRob3VzYW5kc19zZXBhcmF0b3Iocz8pLCBhbmQKKyAgIGdyb3VwaW5nIGRlc2NyaXB0aW9uLCBlaXRoZXIgZm9yIHRoZSBjdXJyZW50IGxvY2FsZSBpZiB0eXBlIGlzCisgICBMVF9DVVJSRU5UX0xPQ0FMRSwgYSBoYXJkLWNvZGVkIGxvY2FsZSBpZiBMVF9ERUZBVUxUX0xPQ0FMRSwgb3IKKyAgIG5vbmUgaWYgTFRfTk9fTE9DQUxFLiAqLworc3RhdGljIHZvaWQKK2dldF9sb2NhbGVfaW5mbyhpbnQgdHlwZSwgTG9jYWxlSW5mbyAqbG9jYWxlX2luZm8pCit7CisgICAgc3dpdGNoICh0eXBlKSB7CisgICAgY2FzZSBMVF9DVVJSRU5UX0xPQ0FMRTogeworICAgICAgICBzdHJ1Y3QgbGNvbnYgKmxvY2FsZV9kYXRhID0gbG9jYWxlY29udigpOworICAgICAgICBsb2NhbGVfaW5mby0+ZGVjaW1hbF9wb2ludCA9IGxvY2FsZV9kYXRhLT5kZWNpbWFsX3BvaW50OworICAgICAgICBsb2NhbGVfaW5mby0+dGhvdXNhbmRzX3NlcCA9IGxvY2FsZV9kYXRhLT50aG91c2FuZHNfc2VwOworICAgICAgICBsb2NhbGVfaW5mby0+Z3JvdXBpbmcgPSBsb2NhbGVfZGF0YS0+Z3JvdXBpbmc7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBjYXNlIExUX0RFRkFVTFRfTE9DQUxFOgorICAgICAgICBsb2NhbGVfaW5mby0+ZGVjaW1hbF9wb2ludCA9ICIuIjsKKyAgICAgICAgbG9jYWxlX2luZm8tPnRob3VzYW5kc19zZXAgPSAiLCI7CisgICAgICAgIGxvY2FsZV9pbmZvLT5ncm91cGluZyA9ICJcMyI7IC8qIEdyb3VwIGV2ZXJ5IDMgY2hhcmFjdGVycy4gIFRoZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW1wbGljaXQpIHRyYWlsaW5nIDAgbWVhbnMgcmVwZWF0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZmluaXRlbHkuICovCisgICAgICAgIGJyZWFrOworICAgIGNhc2UgTFRfTk9fTE9DQUxFOgorICAgICAgICBsb2NhbGVfaW5mby0+ZGVjaW1hbF9wb2ludCA9ICIuIjsKKyAgICAgICAgbG9jYWxlX2luZm8tPnRob3VzYW5kc19zZXAgPSAiIjsKKyAgICAgICAgbG9jYWxlX2luZm8tPmdyb3VwaW5nID0gbm9fZ3JvdXBpbmc7CisgICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIGFzc2VydCgwKTsKKyAgICB9Cit9CisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKiogc3RyaW5nIGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKworc3RhdGljIFB5T2JqZWN0ICoKK2Zvcm1hdF9zdHJpbmdfaW50ZXJuYWwoUHlPYmplY3QgKnZhbHVlLCBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKK3sKKyAgICBQeV9zc2l6ZV90IGxwYWQ7CisgICAgUHlfc3NpemVfdCBycGFkOworICAgIFB5X3NzaXplX3QgdG90YWw7CisgICAgUHlfc3NpemVfdCBwb3M7CisgICAgUHlfc3NpemVfdCBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSCh2YWx1ZSk7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisgICAgUHlfVUNTNCBtYXhjaGFyID0gMTI3OworCisgICAgLyogc2lnbiBpcyBub3QgYWxsb3dlZCBvbiBzdHJpbmdzICovCisgICAgaWYgKGZvcm1hdC0+c2lnbiAhPSAnXDAnKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIlNpZ24gbm90IGFsbG93ZWQgaW4gc3RyaW5nIGZvcm1hdCBzcGVjaWZpZXIiKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworICAgIC8qIGFsdGVybmF0ZSBpcyBub3QgYWxsb3dlZCBvbiBzdHJpbmdzICovCisgICAgaWYgKGZvcm1hdC0+YWx0ZXJuYXRlKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgIkFsdGVybmF0ZSBmb3JtICgjKSBub3QgYWxsb3dlZCBpbiBzdHJpbmcgZm9ybWF0ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZXIiKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworICAgIC8qICc9JyBhbGlnbm1lbnQgbm90IGFsbG93ZWQgb24gc3RyaW5ncyAqLworICAgIGlmIChmb3JtYXQtPmFsaWduID09ICc9JykgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICInPScgYWxpZ25tZW50IG5vdCBhbGxvd2VkICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJpbiBzdHJpbmcgZm9ybWF0IHNwZWNpZmllciIpOworICAgICAgICBnb3RvIGRvbmU7CisgICAgfQorCisgICAgLyogaWYgcHJlY2lzaW9uIGlzIHNwZWNpZmllZCwgb3V0cHV0IG5vIG1vcmUgdGhhdCBmb3JtYXQucHJlY2lzaW9uCisgICAgICAgY2hhcmFjdGVycyAqLworICAgIGlmIChmb3JtYXQtPnByZWNpc2lvbiA+PSAwICYmIGxlbiA+PSBmb3JtYXQtPnByZWNpc2lvbikgeworICAgICAgICBsZW4gPSBmb3JtYXQtPnByZWNpc2lvbjsKKyAgICB9CisKKyAgICBjYWxjX3BhZGRpbmcobGVuLCBmb3JtYXQtPndpZHRoLCBmb3JtYXQtPmFsaWduLCAmbHBhZCwgJnJwYWQsICZ0b3RhbCk7CisKKyAgICBpZiAobHBhZCAhPSAwIHx8IHJwYWQgIT0gMCkKKyAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCBmb3JtYXQtPmZpbGxfY2hhcik7CisKKyAgICAvKiBhbGxvY2F0ZSB0aGUgcmVzdWx0aW5nIHN0cmluZyAqLworICAgIHJlc3VsdCA9IFB5VW5pY29kZV9OZXcodG90YWwsIG1heGNoYXIpOworICAgIGlmIChyZXN1bHQgPT0gTlVMTCkKKyAgICAgICAgZ290byBkb25lOworCisgICAgLyogV3JpdGUgaW50byB0aGF0IHNwYWNlLiBGaXJzdCB0aGUgcGFkZGluZy4gKi8KKyAgICBwb3MgPSBmaWxsX3BhZGRpbmcocmVzdWx0LCAwLCBsZW4sCisgICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdC0+ZmlsbF9jaGFyPT0nXDAnPycgJzpmb3JtYXQtPmZpbGxfY2hhciwKKyAgICAgICAgICAgICAgICAgICAgICAgbHBhZCwgcnBhZCk7CisKKyAgICAvKiBUaGVuIHRoZSBzb3VyY2Ugc3RyaW5nLiAqLworICAgIGlmIChQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMocmVzdWx0LCBwb3MsIHZhbHVlLCAwLCBsZW4pIDwgMCkKKyAgICAgICAgUHlfQ0xFQVIocmVzdWx0KTsKKworZG9uZToKKyAgICBhc3NlcnQoIXJlc3VsdCB8fCBfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzdWx0LCAxKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqIGxvbmcgZm9ybWF0dGluZyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKK3R5cGVkZWYgUHlPYmplY3QqCisoKkludE9yTG9uZ1RvU3RyaW5nKShQeU9iamVjdCAqdmFsdWUsIGludCBiYXNlKTsKKworc3RhdGljIFB5T2JqZWN0ICoKK2Zvcm1hdF9pbnRfb3JfbG9uZ19pbnRlcm5hbChQeU9iamVjdCAqdmFsdWUsIGNvbnN0IEludGVybmFsRm9ybWF0U3BlYyAqZm9ybWF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIEludE9yTG9uZ1RvU3RyaW5nIHRvc3RyaW5nKQoreworICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOworICAgIFB5X1VDUzQgbWF4Y2hhciA9IDEyNzsKKyAgICBQeU9iamVjdCAqdG1wID0gTlVMTDsKKyAgICBQeV9zc2l6ZV90IGludW1lcmljX2NoYXJzOworICAgIFB5X1VDUzQgc2lnbl9jaGFyID0gJ1wwJzsKKyAgICBQeV9zc2l6ZV90IG5fZGlnaXRzOyAgICAgICAvKiBjb3VudCBvZiBkaWdpdHMgbmVlZCBmcm9tIHRoZSBjb21wdXRlZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZyAqLworICAgIFB5X3NzaXplX3Qgbl9yZW1haW5kZXIgPSAwOyAvKiBVc2VkIG9ubHkgZm9yICdjJyBmb3JtYXR0aW5nLCB3aGljaAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWNlcyBub24tZGlnaXRzICovCisgICAgUHlfc3NpemVfdCBuX3ByZWZpeCA9IDA7ICAgLyogQ291bnQgb2YgcHJlZml4IGNoYXJzLCAoZS5nLiwgJzB4JykgKi8KKyAgICBQeV9zc2l6ZV90IG5fdG90YWw7CisgICAgUHlfc3NpemVfdCBwcmVmaXggPSAwOworICAgIE51bWJlckZpZWxkV2lkdGhzIHNwZWM7CisgICAgbG9uZyB4OworICAgIGludCBlcnI7CisKKyAgICAvKiBMb2NhbGUgc2V0dGluZ3MsIGVpdGhlciBmcm9tIHRoZSBhY3R1YWwgbG9jYWxlIG9yCisgICAgICAgZnJvbSBhIGhhcmQtY29kZSBwc2V1ZG8tbG9jYWxlICovCisgICAgTG9jYWxlSW5mbyBsb2NhbGU7CisKKyAgICAvKiBubyBwcmVjaXNpb24gYWxsb3dlZCBvbiBpbnRlZ2VycyAqLworICAgIGlmIChmb3JtYXQtPnByZWNpc2lvbiAhPSAtMSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJQcmVjaXNpb24gbm90IGFsbG93ZWQgaW4gaW50ZWdlciBmb3JtYXQgc3BlY2lmaWVyIik7CisgICAgICAgIGdvdG8gZG9uZTsKKyAgICB9CisKKyAgICAvKiBzcGVjaWFsIGNhc2UgZm9yIGNoYXJhY3RlciBmb3JtYXR0aW5nICovCisgICAgaWYgKGZvcm1hdC0+dHlwZSA9PSAnYycpIHsKKyAgICAgICAgLyogZXJyb3IgdG8gc3BlY2lmeSBhIHNpZ24gKi8KKyAgICAgICAgaWYgKGZvcm1hdC0+c2lnbiAhPSAnXDAnKSB7CisgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU2lnbiBub3QgYWxsb3dlZCB3aXRoIGludGVnZXIiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiBmb3JtYXQgc3BlY2lmaWVyICdjJyIpOworICAgICAgICAgICAgZ290byBkb25lOworICAgICAgICB9CisKKyAgICAgICAgLyogdGFrZW4gZnJvbSB1bmljb2Rlb2JqZWN0LmMgZm9ybWF0Y2hhcigpICovCisgICAgICAgIC8qIEludGVnZXIgaW5wdXQgdHJ1bmNhdGVkIHRvIGEgY2hhcmFjdGVyICovCisgICAgICAgIHggPSBQeUxvbmdfQXNMb25nKHZhbHVlKTsKKyAgICAgICAgaWYgKHggPT0gLTEgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIGdvdG8gZG9uZTsKKyAgICAgICAgaWYgKHggPCAwIHx8IHggPiAweDEwZmZmZikgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiVjIGFyZyBub3QgaW4gcmFuZ2UoMHgxMTAwMDApIik7CisgICAgICAgICAgICBnb3RvIGRvbmU7CisgICAgICAgIH0KKyAgICAgICAgdG1wID0gUHlVbmljb2RlX0Zyb21PcmRpbmFsKHgpOworICAgICAgICBpbnVtZXJpY19jaGFycyA9IDA7CisgICAgICAgIG5fZGlnaXRzID0gMTsKKyAgICAgICAgbWF4Y2hhciA9IFB5X01BWChtYXhjaGFyLCAoUHlfVUNTNCl4KTsKKworICAgICAgICAvKiBBcyBhIHNvcnQtb2YgaGFjaywgd2UgdGVsbCBjYWxjX251bWJlcl93aWR0aHMgdGhhdCB3ZSBvbmx5CisgICAgICAgICAgIGhhdmUgInJlbWFpbmRlciIgY2hhcmFjdGVycy4gY2FsY19udW1iZXJfd2lkdGhzIHRoaW5rcworICAgICAgICAgICB0aGVzZSBhcmUgY2hhcmFjdGVycyB0aGF0IGRvbid0IGdldCBmb3JtYXR0ZWQsIG9ubHkgY29waWVkCisgICAgICAgICAgIGludG8gdGhlIG91dHB1dCBzdHJpbmcuIFdlIGRvIHRoaXMgZm9yICdjJyBmb3JtYXR0aW5nLAorICAgICAgICAgICBiZWNhdXNlIHRoZSBjaGFyYWN0ZXJzIGFyZSBsaWtlbHkgdG8gYmUgbm9uLWRpZ2l0cy4gKi8KKyAgICAgICAgbl9yZW1haW5kZXIgPSAxOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgaW50IGJhc2U7CisgICAgICAgIGludCBsZWFkaW5nX2NoYXJzX3RvX3NraXAgPSAwOyAgLyogTnVtYmVyIG9mIGNoYXJhY3RlcnMgYWRkZWQgYnkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU51bWJlcl9Ub0Jhc2UgdGhhdCB3ZSB3YW50IHRvCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2tpcCBvdmVyLiAqLworCisgICAgICAgIC8qIENvbXB1dGUgdGhlIGJhc2UgYW5kIGhvdyBtYW55IGNoYXJhY3RlcnMgd2lsbCBiZSBhZGRlZCBieQorICAgICAgICAgICBQeU51bWJlcl9Ub0Jhc2UgKi8KKyAgICAgICAgc3dpdGNoIChmb3JtYXQtPnR5cGUpIHsKKyAgICAgICAgY2FzZSAnYic6CisgICAgICAgICAgICBiYXNlID0gMjsKKyAgICAgICAgICAgIGxlYWRpbmdfY2hhcnNfdG9fc2tpcCA9IDI7IC8qIDBiICovCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnbyc6CisgICAgICAgICAgICBiYXNlID0gODsKKyAgICAgICAgICAgIGxlYWRpbmdfY2hhcnNfdG9fc2tpcCA9IDI7IC8qIDBvICovCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAneCc6CisgICAgICAgIGNhc2UgJ1gnOgorICAgICAgICAgICAgYmFzZSA9IDE2OworICAgICAgICAgICAgbGVhZGluZ19jaGFyc190b19za2lwID0gMjsgLyogMHggKi8KKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OiAgLyogc2hvdWxkbid0IGJlIG5lZWRlZCwgYnV0IHN0b3BzIGEgY29tcGlsZXIgd2FybmluZyAqLworICAgICAgICBjYXNlICdkJzoKKyAgICAgICAgY2FzZSAnbic6CisgICAgICAgICAgICBiYXNlID0gMTA7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorCisgICAgICAgIC8qIFRoZSBudW1iZXIgb2YgcHJlZml4IGNoYXJzIGlzIHRoZSBzYW1lIGFzIHRoZSBsZWFkaW5nCisgICAgICAgICAgIGNoYXJzIHRvIHNraXAgKi8KKyAgICAgICAgaWYgKGZvcm1hdC0+YWx0ZXJuYXRlKQorICAgICAgICAgICAgbl9wcmVmaXggPSBsZWFkaW5nX2NoYXJzX3RvX3NraXA7CisKKyAgICAgICAgLyogRG8gdGhlIGhhcmQgcGFydCwgY29udmVydGluZyB0byBhIHN0cmluZyBpbiBhIGdpdmVuIGJhc2UgKi8KKyAgICAgICAgdG1wID0gdG9zdHJpbmcodmFsdWUsIGJhc2UpOworICAgICAgICBpZiAodG1wID09IE5VTEwgfHwgUHlVbmljb2RlX1JFQURZKHRtcCkgPT0gLTEpCisgICAgICAgICAgICBnb3RvIGRvbmU7CisKKyAgICAgICAgaW51bWVyaWNfY2hhcnMgPSAwOworICAgICAgICBuX2RpZ2l0cyA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHRtcCk7CisKKyAgICAgICAgcHJlZml4ID0gaW51bWVyaWNfY2hhcnM7CisKKyAgICAgICAgLyogSXMgYSBzaWduIGNoYXJhY3RlciBwcmVzZW50IGluIHRoZSBvdXRwdXQ/ICBJZiBzbywgcmVtZW1iZXIgaXQKKyAgICAgICAgICAgYW5kIHNraXAgaXQgKi8KKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEX0NIQVIodG1wLCBpbnVtZXJpY19jaGFycykgPT0gJy0nKSB7CisgICAgICAgICAgICBzaWduX2NoYXIgPSAnLSc7CisgICAgICAgICAgICArK3ByZWZpeDsKKyAgICAgICAgICAgICsrbGVhZGluZ19jaGFyc190b19za2lwOworICAgICAgICB9CisKKyAgICAgICAgLyogU2tpcCBvdmVyIHRoZSBsZWFkaW5nIGNoYXJzICgweCwgMGIsIGV0Yy4pICovCisgICAgICAgIG5fZGlnaXRzIC09IGxlYWRpbmdfY2hhcnNfdG9fc2tpcDsKKyAgICAgICAgaW51bWVyaWNfY2hhcnMgKz0gbGVhZGluZ19jaGFyc190b19za2lwOworICAgIH0KKworICAgIC8qIERldGVybWluZSB0aGUgZ3JvdXBpbmcsIHNlcGFyYXRvciwgYW5kIGRlY2ltYWwgcG9pbnQsIGlmIGFueS4gKi8KKyAgICBnZXRfbG9jYWxlX2luZm8oZm9ybWF0LT50eXBlID09ICduJyA/IExUX0NVUlJFTlRfTE9DQUxFIDoKKyAgICAgICAgICAgICAgICAgICAgKGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMgPworICAgICAgICAgICAgICAgICAgICAgTFRfREVGQVVMVF9MT0NBTEUgOgorICAgICAgICAgICAgICAgICAgICAgTFRfTk9fTE9DQUxFKSwKKyAgICAgICAgICAgICAgICAgICAgJmxvY2FsZSk7CisKKyAgICAvKiBDYWxjdWxhdGUgaG93IG11Y2ggbWVtb3J5IHdlJ2xsIG5lZWQuICovCisgICAgbl90b3RhbCA9IGNhbGNfbnVtYmVyX3dpZHRocygmc3BlYywgbl9wcmVmaXgsIHNpZ25fY2hhciwgdG1wLCBpbnVtZXJpY19jaGFycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludW1lcmljX2NoYXJzICsgbl9kaWdpdHMsIG5fcmVtYWluZGVyLCAwLCAmbG9jYWxlLCBmb3JtYXQpOworCisgICAgaWYgKHNwZWMubl9scGFkZGluZyB8fCBzcGVjLm5fc3BhZGRpbmcgfHwgc3BlYy5uX3JwYWRkaW5nKQorICAgICAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIGZvcm1hdC0+ZmlsbF9jaGFyKTsKKworICAgIC8qIEFsbG9jYXRlIHRoZSBtZW1vcnkuICovCisgICAgcmVzdWx0ID0gUHlVbmljb2RlX05ldyhuX3RvdGFsLCBtYXhjaGFyKTsKKyAgICBpZiAoIXJlc3VsdCkKKyAgICAgICAgZ290byBkb25lOworCisgICAgLyogUG9wdWxhdGUgdGhlIG1lbW9yeS4gKi8KKyAgICBlcnIgPSBmaWxsX251bWJlcihyZXN1bHQsIDAsICZzcGVjLAorICAgICAgICAgICAgICAgICAgICAgIHRtcCwgaW51bWVyaWNfY2hhcnMsIGludW1lcmljX2NoYXJzICsgbl9kaWdpdHMsCisgICAgICAgICAgICAgICAgICAgICAgdG1wLCBwcmVmaXgsCisgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0LT5maWxsX2NoYXIgPT0gJ1wwJyA/ICcgJyA6IGZvcm1hdC0+ZmlsbF9jaGFyLAorICAgICAgICAgICAgICAgICAgICAgICZsb2NhbGUsIGZvcm1hdC0+dHlwZSA9PSAnWCcpOworICAgIGlmIChlcnIpCisgICAgICAgIFB5X0NMRUFSKHJlc3VsdCk7CisKK2RvbmU6CisgICAgUHlfWERFQ1JFRih0bXApOworICAgIGFzc2VydCghcmVzdWx0IHx8IF9QeVVuaWNvZGVfQ2hlY2tDb25zaXN0ZW5jeShyZXN1bHQsIDEpKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoqKioqKioqKioqIGZsb2F0IGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKK3N0YXRpYyBQeU9iamVjdCoKK3N0cnRvdW5pY29kZShjaGFyICpjaGFyYnVmZmVyLCBQeV9zc2l6ZV90IGxlbikKK3sKKyAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfMUJZVEVfS0lORCwgY2hhcmJ1ZmZlciwgbGVuKTsKK30KKworLyogbXVjaCBvZiB0aGlzIGlzIHRha2VuIGZyb20gdW5pY29kZW9iamVjdC5jICovCitzdGF0aWMgUHlPYmplY3QgKgorZm9ybWF0X2Zsb2F0X2ludGVybmFsKFB5T2JqZWN0ICp2YWx1ZSwKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBJbnRlcm5hbEZvcm1hdFNwZWMgKmZvcm1hdCkKK3sKKyAgICBjaGFyICpidWYgPSBOVUxMOyAgICAgICAvKiBidWZmZXIgcmV0dXJuZWQgZnJvbSBQeU9TX2RvdWJsZV90b19zdHJpbmcgKi8KKyAgICBQeV9zc2l6ZV90IG5fZGlnaXRzOworICAgIFB5X3NzaXplX3Qgbl9yZW1haW5kZXI7CisgICAgUHlfc3NpemVfdCBuX3RvdGFsOworICAgIGludCBoYXNfZGVjaW1hbDsKKyAgICBkb3VibGUgdmFsOworICAgIFB5X3NzaXplX3QgcHJlY2lzaW9uID0gZm9ybWF0LT5wcmVjaXNpb247CisgICAgUHlfc3NpemVfdCBkZWZhdWx0X3ByZWNpc2lvbiA9IDY7CisgICAgUHlfVUNTNCB0eXBlID0gZm9ybWF0LT50eXBlOworICAgIGludCBhZGRfcGN0ID0gMDsKKyAgICBQeV9zc2l6ZV90IGluZGV4OworICAgIE51bWJlckZpZWxkV2lkdGhzIHNwZWM7CisgICAgaW50IGZsYWdzID0gMDsKKyAgICBQeU9iamVjdCAqcmVzdWx0ID0gTlVMTDsKKyAgICBQeV9VQ1M0IG1heGNoYXIgPSAxMjc7CisgICAgUHlfVUNTNCBzaWduX2NoYXIgPSAnXDAnOworICAgIGludCBmbG9hdF90eXBlOyAvKiBVc2VkIHRvIHNlZSBpZiB3ZSBoYXZlIGEgbmFuLCBpbmYsIG9yIHJlZ3VsYXIgZmxvYXQuICovCisgICAgUHlPYmplY3QgKnVuaWNvZGVfdG1wID0gTlVMTDsKKyAgICBpbnQgZXJyOworCisgICAgLyogTG9jYWxlIHNldHRpbmdzLCBlaXRoZXIgZnJvbSB0aGUgYWN0dWFsIGxvY2FsZSBvcgorICAgICAgIGZyb20gYSBoYXJkLWNvZGUgcHNldWRvLWxvY2FsZSAqLworICAgIExvY2FsZUluZm8gbG9jYWxlOworCisgICAgaWYgKGZvcm1hdC0+YWx0ZXJuYXRlKQorICAgICAgICBmbGFncyB8PSBQeV9EVFNGX0FMVDsKKworICAgIGlmICh0eXBlID09ICdcMCcpIHsKKyAgICAgICAgLyogT21pdHRlZCB0eXBlIHNwZWNpZmllci4gIEJlaGF2ZXMgaW4gdGhlIHNhbWUgd2F5IGFzIHJlcHIoeCkKKyAgICAgICAgICAgYW5kIHN0cih4KSBpZiBubyBwcmVjaXNpb24gaXMgZ2l2ZW4sIGVsc2UgbGlrZSAnZycsIGJ1dCB3aXRoCisgICAgICAgICAgIGF0IGxlYXN0IG9uZSBkaWdpdCBhZnRlciB0aGUgZGVjaW1hbCBwb2ludC4gKi8KKyAgICAgICAgZmxhZ3MgfD0gUHlfRFRTRl9BRERfRE9UXzA7CisgICAgICAgIHR5cGUgPSAncic7CisgICAgICAgIGRlZmF1bHRfcHJlY2lzaW9uID0gMDsKKyAgICB9CisKKyAgICBpZiAodHlwZSA9PSAnbicpCisgICAgICAgIC8qICduJyBpcyB0aGUgc2FtZSBhcyAnZycsIGV4Y2VwdCBmb3IgdGhlIGxvY2FsZSB1c2VkIHRvCisgICAgICAgICAgIGZvcm1hdCB0aGUgcmVzdWx0LiBXZSB0YWtlIGNhcmUgb2YgdGhhdCBsYXRlci4gKi8KKyAgICAgICAgdHlwZSA9ICdnJzsKKworICAgIHZhbCA9IFB5RmxvYXRfQXNEb3VibGUodmFsdWUpOworICAgIGlmICh2YWwgPT0gLTEuMCAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICBnb3RvIGRvbmU7CisKKyAgICBpZiAodHlwZSA9PSAnJScpIHsKKyAgICAgICAgdHlwZSA9ICdmJzsKKyAgICAgICAgdmFsICo9IDEwMDsKKyAgICAgICAgYWRkX3BjdCA9IDE7CisgICAgfQorCisgICAgaWYgKHByZWNpc2lvbiA8IDApCisgICAgICAgIHByZWNpc2lvbiA9IGRlZmF1bHRfcHJlY2lzaW9uOworICAgIGVsc2UgaWYgKHR5cGUgPT0gJ3InKQorICAgICAgICB0eXBlID0gJ2cnOworCisgICAgLyogQ2FzdCAidHlwZSIsIGJlY2F1c2UgaWYgd2UncmUgaW4gdW5pY29kZSB3ZSBuZWVkIHRvIHBhc3MgYQorICAgICAgIDgtYml0IGNoYXIuIFRoaXMgaXMgc2FmZSwgYmVjYXVzZSB3ZSd2ZSByZXN0cmljdGVkIHdoYXQgInR5cGUiCisgICAgICAgY2FuIGJlLiAqLworICAgIGJ1ZiA9IFB5T1NfZG91YmxlX3RvX3N0cmluZyh2YWwsIChjaGFyKXR5cGUsIHByZWNpc2lvbiwgZmxhZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmbG9hdF90eXBlKTsKKyAgICBpZiAoYnVmID09IE5VTEwpCisgICAgICAgIGdvdG8gZG9uZTsKKyAgICBuX2RpZ2l0cyA9IHN0cmxlbihidWYpOworCisgICAgaWYgKGFkZF9wY3QpIHsKKyAgICAgICAgLyogV2Uga25vdyB0aGF0IGJ1ZiBoYXMgYSB0cmFpbGluZyB6ZXJvIChzaW5jZSB3ZSBqdXN0IGNhbGxlZAorICAgICAgICAgICBzdHJsZW4oKSBvbiBpdCksIGFuZCB3ZSBkb24ndCB1c2UgdGhhdCBmYWN0IGFueSBtb3JlLiBTbyB3ZQorICAgICAgICAgICBjYW4ganVzdCB3cml0ZSBvdmVyIHRoZSB0cmFpbGluZyB6ZXJvLiAqLworICAgICAgICBidWZbbl9kaWdpdHNdID0gJyUnOworICAgICAgICBuX2RpZ2l0cyArPSAxOworICAgIH0KKworICAgIC8qIFNpbmNlIHRoZXJlIGlzIG5vIHVuaWNvZGUgdmVyc2lvbiBvZiBQeU9TX2RvdWJsZV90b19zdHJpbmcsCisgICAgICAganVzdCB1c2UgdGhlIDggYml0IHZlcnNpb24gYW5kIHRoZW4gY29udmVydCB0byB1bmljb2RlLiAqLworICAgIHVuaWNvZGVfdG1wID0gc3RydG91bmljb2RlKGJ1Ziwgbl9kaWdpdHMpOworICAgIGlmICh1bmljb2RlX3RtcCA9PSBOVUxMKQorICAgICAgICBnb3RvIGRvbmU7CisgICAgaW5kZXggPSAwOworCisgICAgLyogSXMgYSBzaWduIGNoYXJhY3RlciBwcmVzZW50IGluIHRoZSBvdXRwdXQ/ICBJZiBzbywgcmVtZW1iZXIgaXQKKyAgICAgICBhbmQgc2tpcCBpdCAqLworICAgIGlmIChQeVVuaWNvZGVfUkVBRF9DSEFSKHVuaWNvZGVfdG1wLCBpbmRleCkgPT0gJy0nKSB7CisgICAgICAgIHNpZ25fY2hhciA9ICctJzsKKyAgICAgICAgKytpbmRleDsKKyAgICAgICAgLS1uX2RpZ2l0czsKKyAgICB9CisKKyAgICAvKiBEZXRlcm1pbmUgaWYgd2UgaGF2ZSBhbnkgInJlbWFpbmRlciIgKGFmdGVyIHRoZSBkaWdpdHMsIG1pZ2h0IGluY2x1ZGUKKyAgICAgICBkZWNpbWFsIG9yIGV4cG9uZW50IG9yIGJvdGggKG9yIG5laXRoZXIpKSAqLworICAgIHBhcnNlX251bWJlcih1bmljb2RlX3RtcCwgaW5kZXgsIGluZGV4ICsgbl9kaWdpdHMsICZuX3JlbWFpbmRlciwgJmhhc19kZWNpbWFsKTsKKworICAgIC8qIERldGVybWluZSB0aGUgZ3JvdXBpbmcsIHNlcGFyYXRvciwgYW5kIGRlY2ltYWwgcG9pbnQsIGlmIGFueS4gKi8KKyAgICBnZXRfbG9jYWxlX2luZm8oZm9ybWF0LT50eXBlID09ICduJyA/IExUX0NVUlJFTlRfTE9DQUxFIDoKKyAgICAgICAgICAgICAgICAgICAgKGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMgPworICAgICAgICAgICAgICAgICAgICAgTFRfREVGQVVMVF9MT0NBTEUgOgorICAgICAgICAgICAgICAgICAgICAgTFRfTk9fTE9DQUxFKSwKKyAgICAgICAgICAgICAgICAgICAgJmxvY2FsZSk7CisKKyAgICAvKiBDYWxjdWxhdGUgaG93IG11Y2ggbWVtb3J5IHdlJ2xsIG5lZWQuICovCisgICAgbl90b3RhbCA9IGNhbGNfbnVtYmVyX3dpZHRocygmc3BlYywgMCwgc2lnbl9jaGFyLCB1bmljb2RlX3RtcCwgaW5kZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmRleCArIG5fZGlnaXRzLCBuX3JlbWFpbmRlciwgaGFzX2RlY2ltYWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbG9jYWxlLCBmb3JtYXQpOworCisgICAgaWYgKHNwZWMubl9scGFkZGluZyB8fCBzcGVjLm5fc3BhZGRpbmcgfHwgc3BlYy5uX3JwYWRkaW5nKQorICAgICAgICBtYXhjaGFyID0gUHlfTUFYKG1heGNoYXIsIGZvcm1hdC0+ZmlsbF9jaGFyKTsKKworICAgIC8qIEFsbG9jYXRlIHRoZSBtZW1vcnkuICovCisgICAgcmVzdWx0ID0gUHlVbmljb2RlX05ldyhuX3RvdGFsLCBtYXhjaGFyKTsKKyAgICBpZiAocmVzdWx0ID09IE5VTEwpCisgICAgICAgIGdvdG8gZG9uZTsKKworICAgIC8qIFBvcHVsYXRlIHRoZSBtZW1vcnkuICovCisgICAgZXJyID0gZmlsbF9udW1iZXIocmVzdWx0LCAwLCAmc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICB1bmljb2RlX3RtcCwgaW5kZXgsIGluZGV4ICsgbl9kaWdpdHMsCisgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCwKKyAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQtPmZpbGxfY2hhciA9PSAnXDAnID8gJyAnIDogZm9ybWF0LT5maWxsX2NoYXIsCisgICAgICAgICAgICAgICAgICAgICAgJmxvY2FsZSwgMCk7CisgICAgaWYgKGVycikKKyAgICAgICAgUHlfQ0xFQVIocmVzdWx0KTsKKworZG9uZToKKyAgICBQeU1lbV9GcmVlKGJ1Zik7CisgICAgUHlfREVDUkVGKHVuaWNvZGVfdG1wKTsKKyAgICBhc3NlcnQoIXJlc3VsdCB8fCBfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzdWx0LCAxKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKiBjb21wbGV4IGZvcm1hdHRpbmcgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworCitzdGF0aWMgUHlPYmplY3QgKgorZm9ybWF0X2NvbXBsZXhfaW50ZXJuYWwoUHlPYmplY3QgKnZhbHVlLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgSW50ZXJuYWxGb3JtYXRTcGVjICpmb3JtYXQpCit7CisgICAgZG91YmxlIHJlOworICAgIGRvdWJsZSBpbTsKKyAgICBjaGFyICpyZV9idWYgPSBOVUxMOyAgICAgICAvKiBidWZmZXIgcmV0dXJuZWQgZnJvbSBQeU9TX2RvdWJsZV90b19zdHJpbmcgKi8KKyAgICBjaGFyICppbV9idWYgPSBOVUxMOyAgICAgICAvKiBidWZmZXIgcmV0dXJuZWQgZnJvbSBQeU9TX2RvdWJsZV90b19zdHJpbmcgKi8KKworICAgIEludGVybmFsRm9ybWF0U3BlYyB0bXBfZm9ybWF0ID0gKmZvcm1hdDsKKyAgICBQeV9zc2l6ZV90IG5fcmVfZGlnaXRzOworICAgIFB5X3NzaXplX3Qgbl9pbV9kaWdpdHM7CisgICAgUHlfc3NpemVfdCBuX3JlX3JlbWFpbmRlcjsKKyAgICBQeV9zc2l6ZV90IG5faW1fcmVtYWluZGVyOworICAgIFB5X3NzaXplX3Qgbl9yZV90b3RhbDsKKyAgICBQeV9zc2l6ZV90IG5faW1fdG90YWw7CisgICAgaW50IHJlX2hhc19kZWNpbWFsOworICAgIGludCBpbV9oYXNfZGVjaW1hbDsKKyAgICBQeV9zc2l6ZV90IHByZWNpc2lvbiA9IGZvcm1hdC0+cHJlY2lzaW9uOworICAgIFB5X3NzaXplX3QgZGVmYXVsdF9wcmVjaXNpb24gPSA2OworICAgIFB5X1VDUzQgdHlwZSA9IGZvcm1hdC0+dHlwZTsKKyAgICBQeV9zc2l6ZV90IGlfcmU7CisgICAgUHlfc3NpemVfdCBpX2ltOworICAgIE51bWJlckZpZWxkV2lkdGhzIHJlX3NwZWM7CisgICAgTnVtYmVyRmllbGRXaWR0aHMgaW1fc3BlYzsKKyAgICBpbnQgZmxhZ3MgPSAwOworICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOworICAgIFB5X1VDUzQgbWF4Y2hhciA9IDEyNzsKKyAgICBpbnQgcmtpbmQ7CisgICAgdm9pZCAqcmRhdGE7CisgICAgUHlfc3NpemVfdCBpbmRleDsKKyAgICBQeV9VQ1M0IHJlX3NpZ25fY2hhciA9ICdcMCc7CisgICAgUHlfVUNTNCBpbV9zaWduX2NoYXIgPSAnXDAnOworICAgIGludCByZV9mbG9hdF90eXBlOyAvKiBVc2VkIHRvIHNlZSBpZiB3ZSBoYXZlIGEgbmFuLCBpbmYsIG9yIHJlZ3VsYXIgZmxvYXQuICovCisgICAgaW50IGltX2Zsb2F0X3R5cGU7CisgICAgaW50IGFkZF9wYXJlbnMgPSAwOworICAgIGludCBza2lwX3JlID0gMDsKKyAgICBQeV9zc2l6ZV90IGxwYWQ7CisgICAgUHlfc3NpemVfdCBycGFkOworICAgIFB5X3NzaXplX3QgdG90YWw7CisgICAgUHlPYmplY3QgKnJlX3VuaWNvZGVfdG1wID0gTlVMTDsKKyAgICBQeU9iamVjdCAqaW1fdW5pY29kZV90bXAgPSBOVUxMOworICAgIGludCBlcnI7CisKKyAgICAvKiBMb2NhbGUgc2V0dGluZ3MsIGVpdGhlciBmcm9tIHRoZSBhY3R1YWwgbG9jYWxlIG9yCisgICAgICAgZnJvbSBhIGhhcmQtY29kZSBwc2V1ZG8tbG9jYWxlICovCisgICAgTG9jYWxlSW5mbyBsb2NhbGU7CisKKyAgICAvKiBaZXJvIHBhZGRpbmcgaXMgbm90IGFsbG93ZWQuICovCisgICAgaWYgKGZvcm1hdC0+ZmlsbF9jaGFyID09ICcwJykgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJaZXJvIHBhZGRpbmcgaXMgbm90IGFsbG93ZWQgaW4gY29tcGxleCBmb3JtYXQgIgorICAgICAgICAgICAgICAgICAgICAgICAgInNwZWNpZmllciIpOworICAgICAgICBnb3RvIGRvbmU7CisgICAgfQorCisgICAgLyogTmVpdGhlciBpcyAnPScgYWxpZ25tZW50IC4gKi8KKyAgICBpZiAoZm9ybWF0LT5hbGlnbiA9PSAnPScpIHsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAiJz0nIGFsaWdubWVudCBmbGFnIGlzIG5vdCBhbGxvd2VkIGluIGNvbXBsZXggZm9ybWF0ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJzcGVjaWZpZXIiKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworICAgIHJlID0gUHlDb21wbGV4X1JlYWxBc0RvdWJsZSh2YWx1ZSk7CisgICAgaWYgKHJlID09IC0xLjAgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgZ290byBkb25lOworICAgIGltID0gUHlDb21wbGV4X0ltYWdBc0RvdWJsZSh2YWx1ZSk7CisgICAgaWYgKGltID09IC0xLjAgJiYgUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgZ290byBkb25lOworCisgICAgaWYgKGZvcm1hdC0+YWx0ZXJuYXRlKQorICAgICAgICBmbGFncyB8PSBQeV9EVFNGX0FMVDsKKworICAgIGlmICh0eXBlID09ICdcMCcpIHsKKyAgICAgICAgLyogT21pdHRlZCB0eXBlIHNwZWNpZmllci4gU2hvdWxkIGJlIGxpa2Ugc3RyKHNlbGYpLiAqLworICAgICAgICB0eXBlID0gJ3InOworICAgICAgICBkZWZhdWx0X3ByZWNpc2lvbiA9IDA7CisgICAgICAgIGlmIChyZSA9PSAwLjAgJiYgY29weXNpZ24oMS4wLCByZSkgPT0gMS4wKQorICAgICAgICAgICAgc2tpcF9yZSA9IDE7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGFkZF9wYXJlbnMgPSAxOworICAgIH0KKworICAgIGlmICh0eXBlID09ICduJykKKyAgICAgICAgLyogJ24nIGlzIHRoZSBzYW1lIGFzICdnJywgZXhjZXB0IGZvciB0aGUgbG9jYWxlIHVzZWQgdG8KKyAgICAgICAgICAgZm9ybWF0IHRoZSByZXN1bHQuIFdlIHRha2UgY2FyZSBvZiB0aGF0IGxhdGVyLiAqLworICAgICAgICB0eXBlID0gJ2cnOworCisgICAgaWYgKHByZWNpc2lvbiA8IDApCisgICAgICAgIHByZWNpc2lvbiA9IGRlZmF1bHRfcHJlY2lzaW9uOworICAgIGVsc2UgaWYgKHR5cGUgPT0gJ3InKQorICAgICAgICB0eXBlID0gJ2cnOworCisgICAgLyogQ2FzdCAidHlwZSIsIGJlY2F1c2UgaWYgd2UncmUgaW4gdW5pY29kZSB3ZSBuZWVkIHRvIHBhc3MgYQorICAgICAgIDgtYml0IGNoYXIuIFRoaXMgaXMgc2FmZSwgYmVjYXVzZSB3ZSd2ZSByZXN0cmljdGVkIHdoYXQgInR5cGUiCisgICAgICAgY2FuIGJlLiAqLworICAgIHJlX2J1ZiA9IFB5T1NfZG91YmxlX3RvX3N0cmluZyhyZSwgKGNoYXIpdHlwZSwgcHJlY2lzaW9uLCBmbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJlX2Zsb2F0X3R5cGUpOworICAgIGlmIChyZV9idWYgPT0gTlVMTCkKKyAgICAgICAgZ290byBkb25lOworICAgIGltX2J1ZiA9IFB5T1NfZG91YmxlX3RvX3N0cmluZyhpbSwgKGNoYXIpdHlwZSwgcHJlY2lzaW9uLCBmbGFncywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmltX2Zsb2F0X3R5cGUpOworICAgIGlmIChpbV9idWYgPT0gTlVMTCkKKyAgICAgICAgZ290byBkb25lOworCisgICAgbl9yZV9kaWdpdHMgPSBzdHJsZW4ocmVfYnVmKTsKKyAgICBuX2ltX2RpZ2l0cyA9IHN0cmxlbihpbV9idWYpOworCisgICAgLyogU2luY2UgdGhlcmUgaXMgbm8gdW5pY29kZSB2ZXJzaW9uIG9mIFB5T1NfZG91YmxlX3RvX3N0cmluZywKKyAgICAgICBqdXN0IHVzZSB0aGUgOCBiaXQgdmVyc2lvbiBhbmQgdGhlbiBjb252ZXJ0IHRvIHVuaWNvZGUuICovCisgICAgcmVfdW5pY29kZV90bXAgPSBzdHJ0b3VuaWNvZGUocmVfYnVmLCBuX3JlX2RpZ2l0cyk7CisgICAgaWYgKHJlX3VuaWNvZGVfdG1wID09IE5VTEwpCisgICAgICAgIGdvdG8gZG9uZTsKKyAgICBpX3JlID0gMDsKKworICAgIGltX3VuaWNvZGVfdG1wID0gc3RydG91bmljb2RlKGltX2J1Ziwgbl9pbV9kaWdpdHMpOworICAgIGlmIChpbV91bmljb2RlX3RtcCA9PSBOVUxMKQorICAgICAgICBnb3RvIGRvbmU7CisgICAgaV9pbSA9IDA7CisKKyAgICAvKiBJcyBhIHNpZ24gY2hhcmFjdGVyIHByZXNlbnQgaW4gdGhlIG91dHB1dD8gIElmIHNvLCByZW1lbWJlciBpdAorICAgICAgIGFuZCBza2lwIGl0ICovCisgICAgaWYgKFB5VW5pY29kZV9SRUFEX0NIQVIocmVfdW5pY29kZV90bXAsIGlfcmUpID09ICctJykgeworICAgICAgICByZV9zaWduX2NoYXIgPSAnLSc7CisgICAgICAgICsraV9yZTsKKyAgICAgICAgLS1uX3JlX2RpZ2l0czsKKyAgICB9CisgICAgaWYgKFB5VW5pY29kZV9SRUFEX0NIQVIoaW1fdW5pY29kZV90bXAsIGlfaW0pID09ICctJykgeworICAgICAgICBpbV9zaWduX2NoYXIgPSAnLSc7CisgICAgICAgICsraV9pbTsKKyAgICAgICAgLS1uX2ltX2RpZ2l0czsKKyAgICB9CisKKyAgICAvKiBEZXRlcm1pbmUgaWYgd2UgaGF2ZSBhbnkgInJlbWFpbmRlciIgKGFmdGVyIHRoZSBkaWdpdHMsIG1pZ2h0IGluY2x1ZGUKKyAgICAgICBkZWNpbWFsIG9yIGV4cG9uZW50IG9yIGJvdGggKG9yIG5laXRoZXIpKSAqLworICAgIHBhcnNlX251bWJlcihyZV91bmljb2RlX3RtcCwgaV9yZSwgaV9yZSArIG5fcmVfZGlnaXRzLAorICAgICAgICAgICAgICAgICAmbl9yZV9yZW1haW5kZXIsICZyZV9oYXNfZGVjaW1hbCk7CisgICAgcGFyc2VfbnVtYmVyKGltX3VuaWNvZGVfdG1wLCBpX2ltLCBpX2ltICsgbl9pbV9kaWdpdHMsCisgICAgICAgICAgICAgICAgICZuX2ltX3JlbWFpbmRlciwgJmltX2hhc19kZWNpbWFsKTsKKworICAgIC8qIERldGVybWluZSB0aGUgZ3JvdXBpbmcsIHNlcGFyYXRvciwgYW5kIGRlY2ltYWwgcG9pbnQsIGlmIGFueS4gKi8KKyAgICBnZXRfbG9jYWxlX2luZm8oZm9ybWF0LT50eXBlID09ICduJyA/IExUX0NVUlJFTlRfTE9DQUxFIDoKKyAgICAgICAgICAgICAgICAgICAgKGZvcm1hdC0+dGhvdXNhbmRzX3NlcGFyYXRvcnMgPworICAgICAgICAgICAgICAgICAgICAgTFRfREVGQVVMVF9MT0NBTEUgOgorICAgICAgICAgICAgICAgICAgICAgTFRfTk9fTE9DQUxFKSwKKyAgICAgICAgICAgICAgICAgICAgJmxvY2FsZSk7CisKKyAgICAvKiBUdXJuIG9mZiBhbnkgcGFkZGluZy4gV2UnbGwgZG8gaXQgbGF0ZXIgYWZ0ZXIgd2UndmUgY29tcG9zZWQKKyAgICAgICB0aGUgbnVtYmVycyB3aXRob3V0IHBhZGRpbmcuICovCisgICAgdG1wX2Zvcm1hdC5maWxsX2NoYXIgPSAnXDAnOworICAgIHRtcF9mb3JtYXQuYWxpZ24gPSAnPCc7CisgICAgdG1wX2Zvcm1hdC53aWR0aCA9IC0xOworCisgICAgLyogQ2FsY3VsYXRlIGhvdyBtdWNoIG1lbW9yeSB3ZSdsbCBuZWVkLiAqLworICAgIG5fcmVfdG90YWwgPSBjYWxjX251bWJlcl93aWR0aHMoJnJlX3NwZWMsIDAsIHJlX3NpZ25fY2hhciwgcmVfdW5pY29kZV90bXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpX3JlLCBpX3JlICsgbl9yZV9kaWdpdHMsIG5fcmVfcmVtYWluZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVfaGFzX2RlY2ltYWwsICZsb2NhbGUsICZ0bXBfZm9ybWF0KTsKKworICAgIC8qIFNhbWUgZm9ybWF0dGluZywgYnV0IGFsd2F5cyBpbmNsdWRlIGEgc2lnbiwgdW5sZXNzIHRoZSByZWFsIHBhcnQgaXMKKyAgICAgKiBnb2luZyB0byBiZSBvbWl0dGVkLCBpbiB3aGljaCBjYXNlIHdlIHVzZSB3aGF0ZXZlciBzaWduIGNvbnZlbnRpb24gd2FzCisgICAgICogcmVxdWVzdGVkIGJ5IHRoZSBvcmlnaW5hbCBmb3JtYXQuICovCisgICAgaWYgKCFza2lwX3JlKQorICAgICAgICB0bXBfZm9ybWF0LnNpZ24gPSAnKyc7CisgICAgbl9pbV90b3RhbCA9IGNhbGNfbnVtYmVyX3dpZHRocygmaW1fc3BlYywgMCwgaW1fc2lnbl9jaGFyLCBpbV91bmljb2RlX3RtcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlfaW0sIGlfaW0gKyBuX2ltX2RpZ2l0cywgbl9pbV9yZW1haW5kZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbV9oYXNfZGVjaW1hbCwgJmxvY2FsZSwgJnRtcF9mb3JtYXQpOworCisgICAgaWYgKHNraXBfcmUpCisgICAgICAgIG5fcmVfdG90YWwgPSAwOworCisgICAgLyogQWRkIDEgZm9yIHRoZSAnaicsIGFuZCBvcHRpb25hbGx5IDIgZm9yIHBhcmVucy4gKi8KKyAgICBjYWxjX3BhZGRpbmcobl9yZV90b3RhbCArIG5faW1fdG90YWwgKyAxICsgYWRkX3BhcmVucyAqIDIsCisgICAgICAgICAgICAgICAgIGZvcm1hdC0+d2lkdGgsIGZvcm1hdC0+YWxpZ24sICZscGFkLCAmcnBhZCwgJnRvdGFsKTsKKworICAgIGlmIChyZV9zcGVjLm5fbHBhZGRpbmcgfHwgcmVfc3BlYy5uX3NwYWRkaW5nIHx8IHJlX3NwZWMubl9ycGFkZGluZworICAgICAgICB8fCBpbV9zcGVjLm5fbHBhZGRpbmcgfHwgaW1fc3BlYy5uX3NwYWRkaW5nIHx8IGltX3NwZWMubl9ycGFkZGluZworICAgICAgICB8fCBscGFkIHx8IHJwYWQpCisgICAgICAgIG1heGNoYXIgPSBQeV9NQVgobWF4Y2hhciwgZm9ybWF0LT5maWxsX2NoYXIpOworCisgICAgcmVzdWx0ID0gUHlVbmljb2RlX05ldyh0b3RhbCwgbWF4Y2hhcik7CisgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQorICAgICAgICBnb3RvIGRvbmU7CisgICAgcmtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXN1bHQpOworICAgIHJkYXRhID0gUHlVbmljb2RlX0RBVEEocmVzdWx0KTsKKworICAgIC8qIFBvcHVsYXRlIHRoZSBtZW1vcnkuIEZpcnN0LCB0aGUgcGFkZGluZy4gKi8KKyAgICBpbmRleCA9IGZpbGxfcGFkZGluZyhyZXN1bHQsIDAsCisgICAgICAgICAgICAgICAgICAgICAgICAgbl9yZV90b3RhbCArIG5faW1fdG90YWwgKyAxICsgYWRkX3BhcmVucyAqIDIsCisgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0LT5maWxsX2NoYXI9PSdcMCcgPyAnICcgOiBmb3JtYXQtPmZpbGxfY2hhciwKKyAgICAgICAgICAgICAgICAgICAgICAgICBscGFkLCBycGFkKTsKKworICAgIGlmIChhZGRfcGFyZW5zKQorICAgICAgICBQeVVuaWNvZGVfV1JJVEUocmtpbmQsIHJkYXRhLCBpbmRleCsrLCAnKCcpOworCisgICAgaWYgKCFza2lwX3JlKSB7CisgICAgICAgIGVyciA9IGZpbGxfbnVtYmVyKHJlc3VsdCwgaW5kZXgsICZyZV9zcGVjLAorICAgICAgICAgICAgICAgICAgICAgICAgICByZV91bmljb2RlX3RtcCwgaV9yZSwgaV9yZSArIG5fcmVfZGlnaXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmbG9jYWxlLCAwKTsKKyAgICAgICAgaWYgKGVycikgeworICAgICAgICAgICAgUHlfQ0xFQVIocmVzdWx0KTsKKyAgICAgICAgICAgIGdvdG8gZG9uZTsKKyAgICAgICAgfQorICAgICAgICBpbmRleCArPSBuX3JlX3RvdGFsOworICAgIH0KKyAgICBlcnIgPSBmaWxsX251bWJlcihyZXN1bHQsIGluZGV4LCAmaW1fc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICBpbV91bmljb2RlX3RtcCwgaV9pbSwgaV9pbSArIG5faW1fZGlnaXRzLAorICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIDAsCisgICAgICAgICAgICAgICAgICAgICAgMCwKKyAgICAgICAgICAgICAgICAgICAgICAmbG9jYWxlLCAwKTsKKyAgICBpZiAoZXJyKSB7CisgICAgICAgIFB5X0NMRUFSKHJlc3VsdCk7CisgICAgICAgIGdvdG8gZG9uZTsKKyAgICB9CisgICAgaW5kZXggKz0gbl9pbV90b3RhbDsKKyAgICBQeVVuaWNvZGVfV1JJVEUocmtpbmQsIHJkYXRhLCBpbmRleCsrLCAnaicpOworCisgICAgaWYgKGFkZF9wYXJlbnMpCisgICAgICAgIFB5VW5pY29kZV9XUklURShya2luZCwgcmRhdGEsIGluZGV4KyssICcpJyk7CisKK2RvbmU6CisgICAgUHlNZW1fRnJlZShyZV9idWYpOworICAgIFB5TWVtX0ZyZWUoaW1fYnVmKTsKKyAgICBQeV9YREVDUkVGKHJlX3VuaWNvZGVfdG1wKTsKKyAgICBQeV9YREVDUkVGKGltX3VuaWNvZGVfdG1wKTsKKyAgICBhc3NlcnQoIXJlc3VsdCB8fCBfUHlVbmljb2RlX0NoZWNrQ29uc2lzdGVuY3kocmVzdWx0LCAxKSk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qKioqKioqKioqKiBidWlsdCBpbiBmb3JtYXR0ZXJzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworUHlPYmplY3QgKgorX1B5VW5pY29kZV9Gb3JtYXRBZHZhbmNlZChQeU9iamVjdCAqb2JqLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZm9ybWF0X3NwZWMsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kKQoreworICAgIEludGVybmFsRm9ybWF0U3BlYyBmb3JtYXQ7CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKworICAgIC8qIGNoZWNrIGZvciB0aGUgc3BlY2lhbCBjYXNlIG9mIHplcm8gbGVuZ3RoIGZvcm1hdCBzcGVjLCBtYWtlCisgICAgICAgaXQgZXF1aXZhbGVudCB0byBzdHIob2JqKSAqLworICAgIGlmIChzdGFydCA9PSBlbmQpCisgICAgICAgIHJldHVybiBQeU9iamVjdF9TdHIob2JqKTsKKworICAgIC8qIHBhcnNlIHRoZSBmb3JtYXRfc3BlYyAqLworICAgIGlmICghcGFyc2VfaW50ZXJuYWxfcmVuZGVyX2Zvcm1hdF9zcGVjKGZvcm1hdF9zcGVjLCBzdGFydCwgZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZmb3JtYXQsICdzJywgJzwnKSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICAvKiB0eXBlIGNvbnZlcnNpb24/ICovCisgICAgc3dpdGNoIChmb3JtYXQudHlwZSkgeworICAgIGNhc2UgJ3MnOgorICAgICAgICAvKiBubyB0eXBlIGNvbnZlcnNpb24gbmVlZGVkLCBhbHJlYWR5IGEgc3RyaW5nLiAgZG8gdGhlIGZvcm1hdHRpbmcgKi8KKyAgICAgICAgcmVzdWx0ID0gZm9ybWF0X3N0cmluZ19pbnRlcm5hbChvYmosICZmb3JtYXQpOworICAgICAgICBpZiAocmVzdWx0ICE9IE5VTEwpCisgICAgICAgICAgICBhc3NlcnQoX1B5VW5pY29kZV9DaGVja0NvbnNpc3RlbmN5KHJlc3VsdCwgMSkpOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICAvKiB1bmtub3duICovCisgICAgICAgIHVua25vd25fcHJlc2VudGF0aW9uX3R5cGUoZm9ybWF0LnR5cGUsIG9iai0+b2JfdHlwZS0+dHBfbmFtZSk7CisgICAgICAgIHJlc3VsdCA9IE5VTEw7CisgICAgfQorICAgIHJldHVybiByZXN1bHQ7Cit9CisKK3N0YXRpYyBQeU9iamVjdCoKK2Zvcm1hdF9pbnRfb3JfbG9uZyhQeU9iamVjdCogb2JqLCBQeU9iamVjdCogZm9ybWF0X3NwZWMsCisgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQsCisgICAgICAgICAgICAgICAgICAgSW50T3JMb25nVG9TdHJpbmcgdG9zdHJpbmcpCit7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisgICAgUHlPYmplY3QgKnRtcCA9IE5VTEw7CisgICAgSW50ZXJuYWxGb3JtYXRTcGVjIGZvcm1hdDsKKworICAgIC8qIGNoZWNrIGZvciB0aGUgc3BlY2lhbCBjYXNlIG9mIHplcm8gbGVuZ3RoIGZvcm1hdCBzcGVjLCBtYWtlCisgICAgICAgaXQgZXF1aXZhbGVudCB0byBzdHIob2JqKSAqLworICAgIGlmIChzdGFydCA9PSBlbmQpIHsKKyAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfU3RyKG9iaik7CisgICAgICAgIGdvdG8gZG9uZTsKKyAgICB9CisKKyAgICAvKiBwYXJzZSB0aGUgZm9ybWF0X3NwZWMgKi8KKyAgICBpZiAoIXBhcnNlX2ludGVybmFsX3JlbmRlcl9mb3JtYXRfc3BlYyhmb3JtYXRfc3BlYywgc3RhcnQsIGVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9ybWF0LCAnZCcsICc+JykpCisgICAgICAgIGdvdG8gZG9uZTsKKworICAgIC8qIHR5cGUgY29udmVyc2lvbj8gKi8KKyAgICBzd2l0Y2ggKGZvcm1hdC50eXBlKSB7CisgICAgY2FzZSAnYic6CisgICAgY2FzZSAnYyc6CisgICAgY2FzZSAnZCc6CisgICAgY2FzZSAnbyc6CisgICAgY2FzZSAneCc6CisgICAgY2FzZSAnWCc6CisgICAgY2FzZSAnbic6CisgICAgICAgIC8qIG5vIHR5cGUgY29udmVyc2lvbiBuZWVkZWQsIGFscmVhZHkgYW4gaW50IChvciBsb25nKS4gIGRvCisgICAgICAgICAgIHRoZSBmb3JtYXR0aW5nICovCisgICAgICAgICAgICByZXN1bHQgPSBmb3JtYXRfaW50X29yX2xvbmdfaW50ZXJuYWwob2JqLCAmZm9ybWF0LCB0b3N0cmluZyk7CisgICAgICAgIGJyZWFrOworCisgICAgY2FzZSAnZSc6CisgICAgY2FzZSAnRSc6CisgICAgY2FzZSAnZic6CisgICAgY2FzZSAnRic6CisgICAgY2FzZSAnZyc6CisgICAgY2FzZSAnRyc6CisgICAgY2FzZSAnJSc6CisgICAgICAgIC8qIGNvbnZlcnQgdG8gZmxvYXQgKi8KKyAgICAgICAgdG1wID0gUHlOdW1iZXJfRmxvYXQob2JqKTsKKyAgICAgICAgaWYgKHRtcCA9PSBOVUxMKQorICAgICAgICAgICAgZ290byBkb25lOworICAgICAgICByZXN1bHQgPSBmb3JtYXRfZmxvYXRfaW50ZXJuYWwodG1wLCAmZm9ybWF0KTsKKyAgICAgICAgYnJlYWs7CisKKyAgICBkZWZhdWx0OgorICAgICAgICAvKiB1bmtub3duICovCisgICAgICAgIHVua25vd25fcHJlc2VudGF0aW9uX3R5cGUoZm9ybWF0LnR5cGUsIG9iai0+b2JfdHlwZS0+dHBfbmFtZSk7CisgICAgICAgIGdvdG8gZG9uZTsKKyAgICB9CisKK2RvbmU6CisgICAgUHlfWERFQ1JFRih0bXApOworICAgIHJldHVybiByZXN1bHQ7Cit9CisKKy8qIE5lZWQgdG8gZGVmaW5lIGxvbmdfZm9ybWF0IGFzIGEgZnVuY3Rpb24gdGhhdCB3aWxsIGNvbnZlcnQgYSBsb25nCisgICB0byBhIHN0cmluZy4gIEluIDMuMCwgX1B5TG9uZ19Gb3JtYXQgaGFzIHRoZSBjb3JyZWN0IHNpZ25hdHVyZS4gKi8KKyNkZWZpbmUgbG9uZ19mb3JtYXQgX1B5TG9uZ19Gb3JtYXQKKworUHlPYmplY3QgKgorX1B5TG9uZ19Gb3JtYXRBZHZhbmNlZChQeU9iamVjdCAqb2JqLAorICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZm9ybWF0X3NwZWMsCisgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kKQoreworICAgIHJldHVybiBmb3JtYXRfaW50X29yX2xvbmcob2JqLCBmb3JtYXRfc3BlYywgc3RhcnQsIGVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvbmdfZm9ybWF0KTsKK30KKworUHlPYmplY3QgKgorX1B5RmxvYXRfRm9ybWF0QWR2YW5jZWQoUHlPYmplY3QgKm9iaiwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kKQoreworICAgIFB5T2JqZWN0ICpyZXN1bHQgPSBOVUxMOworICAgIEludGVybmFsRm9ybWF0U3BlYyBmb3JtYXQ7CisKKyAgICAvKiBjaGVjayBmb3IgdGhlIHNwZWNpYWwgY2FzZSBvZiB6ZXJvIGxlbmd0aCBmb3JtYXQgc3BlYywgbWFrZQorICAgICAgIGl0IGVxdWl2YWxlbnQgdG8gc3RyKG9iaikgKi8KKyAgICBpZiAoc3RhcnQgPT0gZW5kKSB7CisgICAgICAgIHJlc3VsdCA9IFB5T2JqZWN0X1N0cihvYmopOworICAgICAgICBnb3RvIGRvbmU7CisgICAgfQorCisgICAgLyogcGFyc2UgdGhlIGZvcm1hdF9zcGVjICovCisgICAgaWYgKCFwYXJzZV9pbnRlcm5hbF9yZW5kZXJfZm9ybWF0X3NwZWMoZm9ybWF0X3NwZWMsIHN0YXJ0LCBlbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmZvcm1hdCwgJ1wwJywgJz4nKSkKKyAgICAgICAgZ290byBkb25lOworCisgICAgLyogdHlwZSBjb252ZXJzaW9uPyAqLworICAgIHN3aXRjaCAoZm9ybWF0LnR5cGUpIHsKKyAgICBjYXNlICdcMCc6IC8qIE5vIGZvcm1hdCBjb2RlOiBsaWtlICdnJywgYnV0IHdpdGggYXQgbGVhc3Qgb25lIGRlY2ltYWwuICovCisgICAgY2FzZSAnZSc6CisgICAgY2FzZSAnRSc6CisgICAgY2FzZSAnZic6CisgICAgY2FzZSAnRic6CisgICAgY2FzZSAnZyc6CisgICAgY2FzZSAnRyc6CisgICAgY2FzZSAnbic6CisgICAgY2FzZSAnJSc6CisgICAgICAgIC8qIG5vIGNvbnZlcnNpb24sIGFscmVhZHkgYSBmbG9hdC4gIGRvIHRoZSBmb3JtYXR0aW5nICovCisgICAgICAgIHJlc3VsdCA9IGZvcm1hdF9mbG9hdF9pbnRlcm5hbChvYmosICZmb3JtYXQpOworICAgICAgICBicmVhazsKKworICAgIGRlZmF1bHQ6CisgICAgICAgIC8qIHVua25vd24gKi8KKyAgICAgICAgdW5rbm93bl9wcmVzZW50YXRpb25fdHlwZShmb3JtYXQudHlwZSwgb2JqLT5vYl90eXBlLT50cF9uYW1lKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworZG9uZToKKyAgICByZXR1cm4gcmVzdWx0OworfQorCitQeU9iamVjdCAqCitfUHlDb21wbGV4X0Zvcm1hdEFkdmFuY2VkKFB5T2JqZWN0ICpvYmosCisgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmb3JtYXRfc3BlYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBzdGFydCwgUHlfc3NpemVfdCBlbmQpCit7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisgICAgSW50ZXJuYWxGb3JtYXRTcGVjIGZvcm1hdDsKKworICAgIC8qIGNoZWNrIGZvciB0aGUgc3BlY2lhbCBjYXNlIG9mIHplcm8gbGVuZ3RoIGZvcm1hdCBzcGVjLCBtYWtlCisgICAgICAgaXQgZXF1aXZhbGVudCB0byBzdHIob2JqKSAqLworICAgIGlmIChzdGFydCA9PSBlbmQpIHsKKyAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfU3RyKG9iaik7CisgICAgICAgIGdvdG8gZG9uZTsKKyAgICB9CisKKyAgICAvKiBwYXJzZSB0aGUgZm9ybWF0X3NwZWMgKi8KKyAgICBpZiAoIXBhcnNlX2ludGVybmFsX3JlbmRlcl9mb3JtYXRfc3BlYyhmb3JtYXRfc3BlYywgc3RhcnQsIGVuZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9ybWF0LCAnXDAnLCAnPicpKQorICAgICAgICBnb3RvIGRvbmU7CisKKyAgICAvKiB0eXBlIGNvbnZlcnNpb24/ICovCisgICAgc3dpdGNoIChmb3JtYXQudHlwZSkgeworICAgIGNhc2UgJ1wwJzogLyogTm8gZm9ybWF0IGNvZGU6IGxpa2UgJ2cnLCBidXQgd2l0aCBhdCBsZWFzdCBvbmUgZGVjaW1hbC4gKi8KKyAgICBjYXNlICdlJzoKKyAgICBjYXNlICdFJzoKKyAgICBjYXNlICdmJzoKKyAgICBjYXNlICdGJzoKKyAgICBjYXNlICdnJzoKKyAgICBjYXNlICdHJzoKKyAgICBjYXNlICduJzoKKyAgICAgICAgLyogbm8gY29udmVyc2lvbiwgYWxyZWFkeSBhIGNvbXBsZXguICBkbyB0aGUgZm9ybWF0dGluZyAqLworICAgICAgICByZXN1bHQgPSBmb3JtYXRfY29tcGxleF9pbnRlcm5hbChvYmosICZmb3JtYXQpOworICAgICAgICBicmVhazsKKworICAgIGRlZmF1bHQ6CisgICAgICAgIC8qIHVua25vd24gKi8KKyAgICAgICAgdW5rbm93bl9wcmVzZW50YXRpb25fdHlwZShmb3JtYXQudHlwZSwgb2JqLT5vYl90eXBlLT50cF9uYW1lKTsKKyAgICAgICAgZ290byBkb25lOworICAgIH0KKworZG9uZToKKyAgICByZXR1cm4gcmVzdWx0OworfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL2dldGFyZ3MuYyBiL1B5dGhvbi9nZXRhcmdzLmMKaW5kZXggNjAwOTQxZC4uNzdmMjdiZSAxMDA2NDQKLS0tIGEvUHl0aG9uL2dldGFyZ3MuYworKysgYi9QeXRob24vZ2V0YXJncy5jCkBAIC0zMTAsMjAgKzMxMCwxOCBAQAogICAgICAgICBpZiAobWF4ID09IDApIHsKICAgICAgICAgICAgIGlmIChhcmdzID09IE5VTEwpCiAgICAgICAgICAgICAgICAgcmV0dXJuIDE7Ci0gICAgICAgICAgICBQeU9TX3NucHJpbnRmKG1zZ2J1Ziwgc2l6ZW9mKG1zZ2J1ZiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICIlLjIwMHMlcyB0YWtlcyBubyBhcmd1bWVudHMiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBmbmFtZT09TlVMTCA/ICJmdW5jdGlvbiIgOiBmbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZm5hbWU9PU5VTEwgPyAiIiA6ICIoKSIpOwotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgbXNnYnVmKTsKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIiUuMjAwcyVzIHRha2VzIG5vIGFyZ3VtZW50cyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgZm5hbWU9PU5VTEwgPyAiZnVuY3Rpb24iIDogZm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgZm5hbWU9PU5VTEwgPyAiIiA6ICIoKSIpOwogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KICAgICAgICAgZWxzZSBpZiAobWluID09IDEgJiYgbWF4ID09IDEpIHsKICAgICAgICAgICAgIGlmIChhcmdzID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBQeU9TX3NucHJpbnRmKG1zZ2J1Ziwgc2l6ZW9mKG1zZ2J1ZiksCi0gICAgICAgICAgICAgICAgICAgICAgIiUuMjAwcyVzIHRha2VzIGF0IGxlYXN0IG9uZSBhcmd1bWVudCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGZuYW1lPT1OVUxMID8gImZ1bmN0aW9uIiA6IGZuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICBmbmFtZT09TlVMTCA/ICIiIDogIigpIik7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgbXNnYnVmKTsKKyAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiJS4yMDBzJXMgdGFrZXMgYXQgbGVhc3Qgb25lIGFyZ3VtZW50IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm5hbWU9PU5VTEwgPyAiZnVuY3Rpb24iIDogZm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZuYW1lPT1OVUxMID8gIiIgOiAiKCkiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIG1zZyA9IGNvbnZlcnRpdGVtKGFyZ3MsICZmb3JtYXQsIHBfdmEsIGZsYWdzLCBsZXZlbHMsCkBAIC0zNDksMjAgKzM0NywxOCBAQAogICAgIGxlbiA9IFB5VHVwbGVfR0VUX1NJWkUoYXJncyk7CiAKICAgICBpZiAobGVuIDwgbWluIHx8IG1heCA8IGxlbikgewotICAgICAgICBpZiAobWVzc2FnZSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBQeU9TX3NucHJpbnRmKG1zZ2J1Ziwgc2l6ZW9mKG1zZ2J1ZiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICIlLjE1MHMlcyB0YWtlcyAlcyAlZCBhcmd1bWVudCVzICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIiglbGQgZ2l2ZW4pIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZm5hbWU9PU5VTEwgPyAiZnVuY3Rpb24iIDogZm5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGZuYW1lPT1OVUxMID8gIiIgOiAiKCkiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBtaW49PW1heCA/ICJleGFjdGx5IgotICAgICAgICAgICAgICAgICAgICAgICAgICA6IGxlbiA8IG1pbiA/ICJhdCBsZWFzdCIgOiAiYXQgbW9zdCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA8IG1pbiA/IG1pbiA6IG1heCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgKGxlbiA8IG1pbiA/IG1pbiA6IG1heCkgPT0gMSA/ICIiIDogInMiLAotICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9TQUZFX0RPV05DQVNUKGxlbiwgUHlfc3NpemVfdCwgbG9uZykpOwotICAgICAgICAgICAgbWVzc2FnZSA9IG1zZ2J1ZjsKLSAgICAgICAgfQotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLCBtZXNzYWdlKTsKKyAgICAgICAgaWYgKG1lc3NhZ2UgPT0gTlVMTCkKKyAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgIiUuMTUwcyVzIHRha2VzICVzICVkIGFyZ3VtZW50JXMgKCVsZCBnaXZlbikiLAorICAgICAgICAgICAgICAgICAgICAgICAgIGZuYW1lPT1OVUxMID8gImZ1bmN0aW9uIiA6IGZuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgIGZuYW1lPT1OVUxMID8gIiIgOiAiKCkiLAorICAgICAgICAgICAgICAgICAgICAgICAgIG1pbj09bWF4ID8gImV4YWN0bHkiCisgICAgICAgICAgICAgICAgICAgICAgICAgOiBsZW4gPCBtaW4gPyAiYXQgbGVhc3QiIDogImF0IG1vc3QiLAorICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA8IG1pbiA/IG1pbiA6IG1heCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAobGVuIDwgbWluID8gbWluIDogbWF4KSA9PSAxID8gIiIgOiAicyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgUHlfU0FGRV9ET1dOQ0FTVChsZW4sIFB5X3NzaXplX3QsIGxvbmcpKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwgbWVzc2FnZSk7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KIApAQCAtNTUwLDkgKzU0Niw2IEBACiAKIAogCi0jZGVmaW5lIFVOSUNPREVfREVGQVVMVF9FTkNPRElORyhhcmcpIFwKLSAgICBfUHlVbmljb2RlX0FzRGVmYXVsdEVuY29kZWRTdHJpbmcoYXJnLCBOVUxMKQotCiAvKiBGb3JtYXQgYW4gZXJyb3IgbWVzc2FnZSBnZW5lcmF0ZWQgYnkgY29udmVydHNpbXBsZSgpLiAqLwogCiBzdGF0aWMgY2hhciAqCkBAIC02MTUsNyArNjA4LDcgQEAKIAogICAgIGNvbnN0IGNoYXIgKmZvcm1hdCA9ICpwX2Zvcm1hdDsKICAgICBjaGFyIGMgPSAqZm9ybWF0Kys7Ci0gICAgUHlPYmplY3QgKnVhcmc7CisgICAgY2hhciAqc2FyZzsKIAogICAgIHN3aXRjaCAoYykgewogCkBAIC04MzIsNiArODI1LDggQEAKICAgICAgICAgY2hhciAqcCA9IHZhX2FyZygqcF92YSwgY2hhciAqKTsKICAgICAgICAgaWYgKFB5Qnl0ZXNfQ2hlY2soYXJnKSAmJiBQeUJ5dGVzX1NpemUoYXJnKSA9PSAxKQogICAgICAgICAgICAgKnAgPSBQeUJ5dGVzX0FTX1NUUklORyhhcmcpWzBdOworICAgICAgICBlbHNlIGlmIChQeUJ5dGVBcnJheV9DaGVjayhhcmcpICYmIFB5Qnl0ZUFycmF5X1NpemUoYXJnKSA9PSAxKQorICAgICAgICAgICAgKnAgPSBQeUJ5dGVBcnJheV9BU19TVFJJTkcoYXJnKVswXTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRlcnIoImEgYnl0ZSBzdHJpbmcgb2YgbGVuZ3RoIDEiLCBhcmcsIG1zZ2J1ZiwgYnVmc2l6ZSk7CiAgICAgICAgIGJyZWFrOwpAQCAtODM5LDExICs4MzQsMjEgQEAKIAogICAgIGNhc2UgJ0MnOiB7LyogdW5pY29kZSBjaGFyICovCiAgICAgICAgIGludCAqcCA9IHZhX2FyZygqcF92YSwgaW50ICopOwotICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKGFyZykgJiYKLSAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRShhcmcpID09IDEpCi0gICAgICAgICAgICAqcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKGFyZylbMF07Ci0gICAgICAgIGVsc2UKKyAgICAgICAgaW50IGtpbmQ7CisgICAgICAgIHZvaWQgKmRhdGE7CisKKyAgICAgICAgaWYgKCFQeVVuaWNvZGVfQ2hlY2soYXJnKSkKICAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZXJyKCJhIHVuaWNvZGUgY2hhcmFjdGVyIiwgYXJnLCBtc2didWYsIGJ1ZnNpemUpOworCisgICAgICAgIGlmIChQeVVuaWNvZGVfUkVBRFkoYXJnKSkKKyAgICAgICAgICAgIFJFVFVSTl9FUlJfT0NDVVJSRUQ7CisKKyAgICAgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKGFyZykgIT0gMSkKKyAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZXJyKCJhIHVuaWNvZGUgY2hhcmFjdGVyIiwgYXJnLCBtc2didWYsIGJ1ZnNpemUpOworCisgICAgICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChhcmcpOworICAgICAgICBkYXRhID0gUHlVbmljb2RlX0RBVEEoYXJnKTsKKyAgICAgICAgKnAgPSBQeVVuaWNvZGVfUkVBRChraW5kLCBkYXRhLCAwKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogCkBAIC04OTEsMTMgKzg5NiwxMiBAQAogICAgICAgICAgICAgaWYgKGMgPT0gJ3onICYmIGFyZyA9PSBQeV9Ob25lKQogICAgICAgICAgICAgICAgIFB5QnVmZmVyX0ZpbGxJbmZvKHAsIE5VTEwsIE5VTEwsIDAsIDEsIDApOwogICAgICAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrKGFyZykpIHsKLSAgICAgICAgICAgICAgICB1YXJnID0gVU5JQ09ERV9ERUZBVUxUX0VOQ09ESU5HKGFyZyk7Ci0gICAgICAgICAgICAgICAgaWYgKHVhcmcgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICAgICAgICAgICAgICBzYXJnID0gUHlVbmljb2RlX0FzVVRGOEFuZFNpemUoYXJnLCAmbGVuKTsKKyAgICAgICAgICAgICAgICBpZiAoc2FyZyA9PSBOVUxMKQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gY29udmVydGVycihDT05WX1VOSUNPREUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZywgbXNnYnVmLCBidWZzaXplKTsKLSAgICAgICAgICAgICAgICBQeUJ1ZmZlcl9GaWxsSW5mbyhwLCBhcmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcodWFyZyksIFB5Qnl0ZXNfR0VUX1NJWkUodWFyZyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSwgMCk7CisgICAgICAgICAgICAgICAgUHlCdWZmZXJfRmlsbEluZm8ocCwgYXJnLCBzYXJnLCBsZW4sIDEsIDApOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSB7IC8qIGFueSBidWZmZXItbGlrZSBvYmplY3QgKi8KICAgICAgICAgICAgICAgICBjaGFyICpidWY7CkBAIC05MjAsMTIgKzkyNCwxMyBAQAogICAgICAgICAgICAgICAgIFNUT1JFX1NJWkUoMCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlIGlmIChQeVVuaWNvZGVfQ2hlY2soYXJnKSkgewotICAgICAgICAgICAgICAgIHVhcmcgPSBVTklDT0RFX0RFRkFVTFRfRU5DT0RJTkcoYXJnKTsKLSAgICAgICAgICAgICAgICBpZiAodWFyZyA9PSBOVUxMKQorICAgICAgICAgICAgICAgIFB5X3NzaXplX3QgbGVuOworICAgICAgICAgICAgICAgIHNhcmcgPSBQeVVuaWNvZGVfQXNVVEY4QW5kU2l6ZShhcmcsICZsZW4pOworICAgICAgICAgICAgICAgIGlmIChzYXJnID09IE5VTEwpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjb252ZXJ0ZXJyKENPTlZfVU5JQ09ERSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnLCBtc2didWYsIGJ1ZnNpemUpOwotICAgICAgICAgICAgICAgICpwID0gUHlCeXRlc19BU19TVFJJTkcodWFyZyk7Ci0gICAgICAgICAgICAgICAgU1RPUkVfU0laRShQeUJ5dGVzX0dFVF9TSVpFKHVhcmcpKTsKKyAgICAgICAgICAgICAgICAqcCA9IHNhcmc7CisgICAgICAgICAgICAgICAgU1RPUkVfU0laRShsZW4pOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSB7IC8qIGFueSBidWZmZXItbGlrZSBvYmplY3QgKi8KICAgICAgICAgICAgICAgICAvKiBYWFggUmVhbGx5PyAqLwpAQCAtOTM5LDI1ICs5NDQsMjUgQEAKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8qICJzIiBvciAieiIgKi8KICAgICAgICAgICAgIGNoYXIgKipwID0gdmFfYXJnKCpwX3ZhLCBjaGFyICoqKTsKLSAgICAgICAgICAgIHVhcmcgPSBOVUxMOworICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CisgICAgICAgICAgICBzYXJnID0gTlVMTDsKIAogICAgICAgICAgICAgaWYgKGMgPT0gJ3onICYmIGFyZyA9PSBQeV9Ob25lKQogICAgICAgICAgICAgICAgICpwID0gTlVMTDsKICAgICAgICAgICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjayhhcmcpKSB7Ci0gICAgICAgICAgICAgICAgdWFyZyA9IFVOSUNPREVfREVGQVVMVF9FTkNPRElORyhhcmcpOwotICAgICAgICAgICAgICAgIGlmICh1YXJnID09IE5VTEwpCisgICAgICAgICAgICAgICAgc2FyZyA9IFB5VW5pY29kZV9Bc1VURjhBbmRTaXplKGFyZywgJmxlbik7CisgICAgICAgICAgICAgICAgaWYgKHNhcmcgPT0gTlVMTCkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRlcnIoQ09OVl9VTklDT0RFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmcsIG1zZ2J1ZiwgYnVmc2l6ZSk7Ci0gICAgICAgICAgICAgICAgKnAgPSBQeUJ5dGVzX0FTX1NUUklORyh1YXJnKTsKKyAgICAgICAgICAgICAgICAqcCA9IHNhcmc7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRlcnIoYyA9PSAneicgPyAic3RyIG9yIE5vbmUiIDogInN0ciIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnLCBtc2didWYsIGJ1ZnNpemUpOwotICAgICAgICAgICAgaWYgKCpwICE9IE5VTEwgJiYgdWFyZyAhPSBOVUxMICYmCi0gICAgICAgICAgICAgICAgKFB5X3NzaXplX3QpIHN0cmxlbigqcCkgIT0gUHlCeXRlc19HRVRfU0laRSh1YXJnKSkKKyAgICAgICAgICAgIGlmICgqcCAhPSBOVUxMICYmIHNhcmcgIT0gTlVMTCAmJiAoUHlfc3NpemVfdCkgc3RybGVuKCpwKSAhPSBsZW4pCiAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRlcnIoCi0gICAgICAgICAgICAgICAgICAgIGMgPT0gJ3onID8gInN0ciB3aXRob3V0IG51bGwgYnl0ZXMgb3IgTm9uZSIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAic3RyIHdpdGhvdXQgbnVsbCBieXRlcyIsCisgICAgICAgICAgICAgICAgICAgIGMgPT0gJ3onID8gInN0ciB3aXRob3V0IG51bGwgY2hhcmFjdGVycyBvciBOb25lIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICJzdHIgd2l0aG91dCBudWxsIGNoYXJhY3RlcnMiLAogICAgICAgICAgICAgICAgICAgICBhcmcsIG1zZ2J1ZiwgYnVmc2l6ZSk7CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CkBAIC05NjYsOSArOTcxLDEwIEBACiAgICAgY2FzZSAndSc6IC8qIHJhdyB1bmljb2RlIGJ1ZmZlciAoUHlfVU5JQ09ERSAqKSAqLwogICAgIGNhc2UgJ1onOiAvKiByYXcgdW5pY29kZSBidWZmZXIgb3IgTm9uZSAqLwogICAgIHsKKyAgICAgICAgUHlfVU5JQ09ERSAqKnAgPSB2YV9hcmcoKnBfdmEsIFB5X1VOSUNPREUgKiopOworCiAgICAgICAgIGlmICgqZm9ybWF0ID09ICcjJykgeyAvKiBhbnkgYnVmZmVyLWxpa2Ugb2JqZWN0ICovCiAgICAgICAgICAgICAvKiAicyMiIG9yICJaIyIgKi8KLSAgICAgICAgICAgIFB5X1VOSUNPREUgKipwID0gdmFfYXJnKCpwX3ZhLCBQeV9VTklDT0RFICoqKTsKICAgICAgICAgICAgIEZFVENIX1NJWkU7CiAKICAgICAgICAgICAgIGlmIChjID09ICdaJyAmJiBhcmcgPT0gUHlfTm9uZSkgewpAQCAtOTc2LDIzICs5ODIsMjcgQEAKICAgICAgICAgICAgICAgICBTVE9SRV9TSVpFKDApOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrKGFyZykpIHsKLSAgICAgICAgICAgICAgICAqcCA9IFB5VW5pY29kZV9BU19VTklDT0RFKGFyZyk7Ci0gICAgICAgICAgICAgICAgU1RPUkVfU0laRShQeVVuaWNvZGVfR0VUX1NJWkUoYXJnKSk7CisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CisgICAgICAgICAgICAgICAgKnAgPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZShhcmcsICZsZW4pOworICAgICAgICAgICAgICAgIGlmICgqcCA9PSBOVUxMKQorICAgICAgICAgICAgICAgICAgICBSRVRVUk5fRVJSX09DQ1VSUkVEOworICAgICAgICAgICAgICAgIFNUT1JFX1NJWkUobGVuKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICByZXR1cm4gY29udmVydGVycigic3RyIG9yIE5vbmUiLCBhcmcsIG1zZ2J1ZiwgYnVmc2l6ZSk7CiAgICAgICAgICAgICBmb3JtYXQrKzsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8qICJzIiBvciAiWiIgKi8KLSAgICAgICAgICAgIFB5X1VOSUNPREUgKipwID0gdmFfYXJnKCpwX3ZhLCBQeV9VTklDT0RFICoqKTsKLQogICAgICAgICAgICAgaWYgKGMgPT0gJ1onICYmIGFyZyA9PSBQeV9Ob25lKQogICAgICAgICAgICAgICAgICpwID0gTlVMTDsKICAgICAgICAgICAgIGVsc2UgaWYgKFB5VW5pY29kZV9DaGVjayhhcmcpKSB7Ci0gICAgICAgICAgICAgICAgKnAgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShhcmcpOwotICAgICAgICAgICAgICAgIGlmIChQeV9VTklDT0RFX3N0cmxlbigqcCkgIT0gUHlVbmljb2RlX0dFVF9TSVpFKGFyZykpCisgICAgICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CisgICAgICAgICAgICAgICAgKnAgPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZShhcmcsICZsZW4pOworICAgICAgICAgICAgICAgIGlmICgqcCA9PSBOVUxMKQorICAgICAgICAgICAgICAgICAgICBSRVRVUk5fRVJSX09DQ1VSUkVEOworICAgICAgICAgICAgICAgIGlmIChQeV9VTklDT0RFX3N0cmxlbigqcCkgIT0gbGVuKQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gY29udmVydGVycigKLSAgICAgICAgICAgICAgICAgICAgICAgICJzdHIgd2l0aG91dCBudWxsIGNoYXJhY3RlciBvciBOb25lIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICJzdHIgd2l0aG91dCBudWxsIGNoYXJhY3RlcnMgb3IgTm9uZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICBhcmcsIG1zZ2J1ZiwgYnVmc2l6ZSk7CiAgICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAgICByZXR1cm4gY29udmVydGVycihjID09ICdaJyA/ICJzdHIgb3IgTm9uZSIgOiAic3RyIiwKQEAgLTE0NTksOCArMTQ2OSw4IEBACiAgICAgbmFyZ3MgPSBQeVR1cGxlX0dFVF9TSVpFKGFyZ3MpOwogICAgIG5rZXl3b3JkcyA9IChrZXl3b3JkcyA9PSBOVUxMKSA/IDAgOiBQeURpY3RfU2l6ZShrZXl3b3Jkcyk7CiAgICAgaWYgKG5hcmdzICsgbmtleXdvcmRzID4gbGVuKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsICIlcyVzIHRha2VzIGF0IG1vc3QgJWQgIgotICAgICAgICAgICAgICAgICAgICAgImFyZ3VtZW50JXMgKCVkIGdpdmVuKSIsCisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAiJXMlcyB0YWtlcyBhdCBtb3N0ICVkIGFyZ3VtZW50JXMgKCVkIGdpdmVuKSIsCiAgICAgICAgICAgICAgICAgICAgICAoZm5hbWUgPT0gTlVMTCkgPyAiZnVuY3Rpb24iIDogZm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAoZm5hbWUgPT0gTlVMTCkgPyAiIiA6ICIoKSIsCiAgICAgICAgICAgICAgICAgICAgICBsZW4sCmRpZmYgLS1naXQgYS9QeXRob24vZ3JhbWluaXQuYyBiL1B5dGhvbi9ncmFtaW5pdC5jCmluZGV4IGNhYmM0ZDYuLmUwNDk5OWIgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9ncmFtaW5pdC5jCisrKyBiL1B5dGhvbi9ncmFtaW5pdC5jCkBAIC0xNzkxLDcgKzE3OTEsNyBAQAogICAgIHsxNjcsIDF9LAogfTsKIHN0YXRpYyBhcmMgYXJjc184MF8xWzJdID0gewotICAgIHs5LCAyfSwKKyAgICB7MTY4LCAyfSwKICAgICB7MCwgMX0sCiB9Owogc3RhdGljIGFyYyBhcmNzXzgwXzJbMV0gPSB7CkBAIC0xODAyLDE3MSArMTgwMiwxODggQEAKICAgICB7MiwgYXJjc184MF8xfSwKICAgICB7MSwgYXJjc184MF8yfSwKIH07Ci1zdGF0aWMgZGZhIGRmYXNbODFdID0gewotICAgIHsyNTYsICJzaW5nbGVfaW5wdXQiLCAwLCAzLCBzdGF0ZXNfMCwKLSAgICAgIlwwMDRcMDUwXDA2MFwyMDBcMDAwXDAwMFwwMDBcMjQwXDM0MFwyMjNcMTYwXDIyMFwwNDVcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDIwNCJ9LAotICAgIHsyNTcsICJmaWxlX2lucHV0IiwgMCwgMiwgc3RhdGVzXzEsCi0gICAgICJcMjA0XDA1MFwwNjBcMjAwXDAwMFwwMDBcMDAwXDI0MFwzNDBcMjIzXDE2MFwyMjBcMDQ1XDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwyMDQifSwKLSAgICB7MjU4LCAiZXZhbF9pbnB1dCIsIDAsIDMsIHN0YXRlc18yLAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezI1OSwgImRlY29yYXRvciIsIDAsIDcsIHN0YXRlc18zLAotICAgICAiXDAwMFwwMTBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI2MCwgImRlY29yYXRvcnMiLCAwLCAyLCBzdGF0ZXNfNCwKLSAgICAgIlwwMDBcMDEwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyNjEsICJkZWNvcmF0ZWQiLCAwLCAzLCBzdGF0ZXNfNSwKLSAgICAgIlwwMDBcMDEwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyNjIsICJmdW5jZGVmIiwgMCwgOCwgc3RhdGVzXzYsCi0gICAgICJcMDAwXDAwMFwwMjBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjYzLCAicGFyYW1ldGVycyIsIDAsIDQsIHN0YXRlc183LAotICAgICAiXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI2NCwgInR5cGVkYXJnc2xpc3QiLCAwLCAxOCwgc3RhdGVzXzgsCi0gICAgICJcMDAwXDAwMFwwNDBcMjAwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjY1LCAidGZwZGVmIiwgMCwgNCwgc3RhdGVzXzksCi0gICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjY2LCAidmFyYXJnc2xpc3QiLCAwLCAxOCwgc3RhdGVzXzEwLAotICAgICAiXDAwMFwwMDBcMDQwXDIwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI2NywgInZmcGRlZiIsIDAsIDIsIHN0YXRlc18xMSwKLSAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyNjgsICJzdG10IiwgMCwgMiwgc3RhdGVzXzEyLAotICAgICAiXDAwMFwwNTBcMDYwXDIwMFwwMDBcMDAwXDAwMFwyNDBcMzQwXDIyM1wxNjBcMjIwXDA0NVwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMjA0In0sCi0gICAgezI2OSwgInNpbXBsZV9zdG10IiwgMCwgNCwgc3RhdGVzXzEzLAotICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDBcMDAwXDAwMFwyNDBcMzQwXDIyM1wxNjBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMjAwIn0sCi0gICAgezI3MCwgInNtYWxsX3N0bXQiLCAwLCAyLCBzdGF0ZXNfMTQsCi0gICAgICJcMDAwXDA0MFwwNDBcMjAwXDAwMFwwMDBcMDAwXDI0MFwzNDBcMjIzXDE2MFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwyMDAifSwKLSAgICB7MjcxLCAiZXhwcl9zdG10IiwgMCwgNiwgc3RhdGVzXzE1LAotICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezI3MiwgInRlc3RsaXN0X3N0YXJfZXhwciIsIDAsIDMsIHN0YXRlc18xNiwKLSAgICAgIlwwMDBcMDQwXDA0MFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHsyNzMsICJhdWdhc3NpZ24iLCAwLCAyLCBzdGF0ZXNfMTcsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMzc2XDAzN1wwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7Mjc0LCAiZGVsX3N0bXQiLCAwLCAzLCBzdGF0ZXNfMTgsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7Mjc1LCAicGFzc19zdG10IiwgMCwgMiwgc3RhdGVzXzE5LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI3NiwgImZsb3dfc3RtdCIsIDAsIDIsIHN0YXRlc18yMCwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDM0MFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMCJ9LAotICAgIHsyNzcsICJicmVha19zdG10IiwgMCwgMiwgc3RhdGVzXzIxLAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI3OCwgImNvbnRpbnVlX3N0bXQiLCAwLCAyLCBzdGF0ZXNfMjIsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwxMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7Mjc5LCAicmV0dXJuX3N0bXQiLCAwLCAzLCBzdGF0ZXNfMjMsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjgwLCAieWllbGRfc3RtdCIsIDAsIDIsIHN0YXRlc18yNCwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMCJ9LAotICAgIHsyODEsICJyYWlzZV9zdG10IiwgMCwgNSwgc3RhdGVzXzI1LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI4MiwgImltcG9ydF9zdG10IiwgMCwgMiwgc3RhdGVzXzI2LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI4MywgImltcG9ydF9uYW1lIiwgMCwgMywgc3RhdGVzXzI3LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI4NCwgImltcG9ydF9mcm9tIiwgMCwgOCwgc3RhdGVzXzI4LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI4NSwgImltcG9ydF9hc19uYW1lIiwgMCwgNCwgc3RhdGVzXzI5LAotICAgICAiXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI4NiwgImRvdHRlZF9hc19uYW1lIiwgMCwgNCwgc3RhdGVzXzMwLAotICAgICAiXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI4NywgImltcG9ydF9hc19uYW1lcyIsIDAsIDMsIHN0YXRlc18zMSwKLSAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyODgsICJkb3R0ZWRfYXNfbmFtZXMiLCAwLCAyLCBzdGF0ZXNfMzIsCi0gICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7Mjg5LCAiZG90dGVkX25hbWUiLCAwLCAyLCBzdGF0ZXNfMzMsCi0gICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjkwLCAiZ2xvYmFsX3N0bXQiLCAwLCAzLCBzdGF0ZXNfMzQsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MjkxLCAibm9ubG9jYWxfc3RtdCIsIDAsIDMsIHN0YXRlc18zNSwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyOTIsICJhc3NlcnRfc3RtdCIsIDAsIDUsIHN0YXRlc18zNiwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMTAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyOTMsICJjb21wb3VuZF9zdG10IiwgMCwgMiwgc3RhdGVzXzM3LAotICAgICAiXDAwMFwwMTBcMDIwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjIwXDA0NVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDA0In0sCi0gICAgezI5NCwgImlmX3N0bXQiLCAwLCA4LCBzdGF0ZXNfMzgsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7Mjk1LCAid2hpbGVfc3RtdCIsIDAsIDgsIHN0YXRlc18zOSwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyOTYsICJmb3Jfc3RtdCIsIDAsIDEwLCBzdGF0ZXNfNDAsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAxXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7Mjk3LCAidHJ5X3N0bXQiLCAwLCAxMywgc3RhdGVzXzQxLAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwNFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezI5OCwgIndpdGhfc3RtdCIsIDAsIDUsIHN0YXRlc180MiwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHsyOTksICJ3aXRoX2l0ZW0iLCAwLCA0LCBzdGF0ZXNfNDMsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzAwLCAiZXhjZXB0X2NsYXVzZSIsIDAsIDUsIHN0YXRlc180NCwKLSAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAxXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHszMDEsICJzdWl0ZSIsIDAsIDUsIHN0YXRlc180NSwKLSAgICAgIlwwMDRcMDQwXDA0MFwyMDBcMDAwXDAwMFwwMDBcMjQwXDM0MFwyMjNcMTYwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDIwMCJ9LAotICAgIHszMDIsICJ0ZXN0IiwgMCwgNiwgc3RhdGVzXzQ2LAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMwMywgInRlc3Rfbm9jb25kIiwgMCwgMiwgc3RhdGVzXzQ3LAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMwNCwgImxhbWJkZWYiLCAwLCA1LCBzdGF0ZXNfNDgsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MzA1LCAibGFtYmRlZl9ub2NvbmQiLCAwLCA1LCBzdGF0ZXNfNDksCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MzA2LCAib3JfdGVzdCIsIDAsIDIsIHN0YXRlc181MCwKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMDcsICJhbmRfdGVzdCIsIDAsIDIsIHN0YXRlc181MSwKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMDgsICJub3RfdGVzdCIsIDAsIDMsIHN0YXRlc181MiwKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMDksICJjb21wYXJpc29uIiwgMCwgMiwgc3RhdGVzXzUzLAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMxMCwgImNvbXBfb3AiLCAwLCA0LCBzdGF0ZXNfNTQsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAyXDAwMFwyMjBcMTc3XDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MzExLCAic3Rhcl9leHByIiwgMCwgMywgc3RhdGVzXzU1LAotICAgICAiXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezMxMiwgImV4cHIiLCAwLCAyLCBzdGF0ZXNfNTYsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzEzLCAieG9yX2V4cHIiLCAwLCAyLCBzdGF0ZXNfNTcsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzE0LCAiYW5kX2V4cHIiLCAwLCAyLCBzdGF0ZXNfNTgsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzE1LCAic2hpZnRfZXhwciIsIDAsIDIsIHN0YXRlc181OSwKLSAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMTYsICJhcml0aF9leHByIiwgMCwgMiwgc3RhdGVzXzYwLAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMxNywgInRlcm0iLCAwLCAyLCBzdGF0ZXNfNjEsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzE4LCAiZmFjdG9yIiwgMCwgMywgc3RhdGVzXzYyLAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMxOSwgInBvd2VyIiwgMCwgNCwgc3RhdGVzXzYzLAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDEyMFwwNzZcMDAwIn0sCi0gICAgezMyMCwgImF0b20iLCAwLCA5LCBzdGF0ZXNfNjQsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMTIwXDA3NlwwMDAifSwKLSAgICB7MzIxLCAidGVzdGxpc3RfY29tcCIsIDAsIDUsIHN0YXRlc182NSwKLSAgICAgIlwwMDBcMDQwXDA0MFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMCJ9LAotICAgIHszMjIsICJ0cmFpbGVyIiwgMCwgNywgc3RhdGVzXzY2LAotICAgICAiXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDEwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwIn0sCi0gICAgezMyMywgInN1YnNjcmlwdGxpc3QiLCAwLCAzLCBzdGF0ZXNfNjcsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAyXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzI0LCAic3Vic2NyaXB0IiwgMCwgNSwgc3RhdGVzXzY4LAotICAgICAiXDAwMFwwNDBcMDQwXDAwMlwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMyNSwgInNsaWNlb3AiLCAwLCAzLCBzdGF0ZXNfNjksCi0gICAgICJcMDAwXDAwMFwwMDBcMDAyXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MzI2LCAiZXhwcmxpc3QiLCAwLCAzLCBzdGF0ZXNfNzAsCi0gICAgICJcMDAwXDA0MFwwNDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzI3LCAidGVzdGxpc3QiLCAwLCAzLCBzdGF0ZXNfNzEsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzI4LCAiZGljdG9yc2V0bWFrZXIiLCAwLCAxMSwgc3RhdGVzXzcyLAotICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwIn0sCi0gICAgezMyOSwgImNsYXNzZGVmIiwgMCwgOCwgc3RhdGVzXzczLAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDA0In0sCi0gICAgezMzMCwgImFyZ2xpc3QiLCAwLCA4LCBzdGF0ZXNfNzQsCi0gICAgICJcMDAwXDA0MFwwNDBcMjAwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzMxLCAiYXJndW1lbnQiLCAwLCA0LCBzdGF0ZXNfNzUsCi0gICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDAifSwKLSAgICB7MzMyLCAiY29tcF9pdGVyIiwgMCwgMiwgc3RhdGVzXzc2LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDIwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezMzMywgImNvbXBfZm9yIiwgMCwgNiwgc3RhdGVzXzc3LAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCi0gICAgezMzNCwgImNvbXBfaWYiLCAwLCA0LCBzdGF0ZXNfNzgsCi0gICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKLSAgICB7MzM1LCAiZW5jb2RpbmdfZGVjbCIsIDAsIDIsIHN0YXRlc183OSwKLSAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAotICAgIHszMzYsICJ5aWVsZF9leHByIiwgMCwgMywgc3RhdGVzXzgwLAotICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwIn0sCitzdGF0aWMgYXJjIGFyY3NfODFfMFsyXSA9IHsKKyAgICB7NzMsIDF9LAorICAgIHs5LCAyfSwKIH07Ci1zdGF0aWMgbGFiZWwgbGFiZWxzWzE2OF0gPSB7CitzdGF0aWMgYXJjIGFyY3NfODFfMVsxXSA9IHsKKyAgICB7MjQsIDJ9LAorfTsKK3N0YXRpYyBhcmMgYXJjc184MV8yWzFdID0geworICAgIHswLCAyfSwKK307CitzdGF0aWMgc3RhdGUgc3RhdGVzXzgxWzNdID0geworICAgIHsyLCBhcmNzXzgxXzB9LAorICAgIHsxLCBhcmNzXzgxXzF9LAorICAgIHsxLCBhcmNzXzgxXzJ9LAorfTsKK3N0YXRpYyBkZmEgZGZhc1s4Ml0gPSB7CisgICAgezI1NiwgInNpbmdsZV9pbnB1dCIsIDAsIDMsIHN0YXRlc18wLAorICAgICAiXDAwNFwwNTBcMDYwXDIwMFwwMDBcMDAwXDAwMFwyNDBcMzQwXDIyM1wxNjBcMjIwXDA0NVwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMjA0XDAwMCJ9LAorICAgIHsyNTcsICJmaWxlX2lucHV0IiwgMCwgMiwgc3RhdGVzXzEsCisgICAgICJcMjA0XDA1MFwwNjBcMjAwXDAwMFwwMDBcMDAwXDI0MFwzNDBcMjIzXDE2MFwyMjBcMDQ1XDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwyMDRcMDAwIn0sCisgICAgezI1OCwgImV2YWxfaW5wdXQiLCAwLCAzLCBzdGF0ZXNfMiwKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MjU5LCAiZGVjb3JhdG9yIiwgMCwgNywgc3RhdGVzXzMsCisgICAgICJcMDAwXDAxMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI2MCwgImRlY29yYXRvcnMiLCAwLCAyLCBzdGF0ZXNfNCwKKyAgICAgIlwwMDBcMDEwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjYxLCAiZGVjb3JhdGVkIiwgMCwgMywgc3RhdGVzXzUsCisgICAgICJcMDAwXDAxMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI2MiwgImZ1bmNkZWYiLCAwLCA4LCBzdGF0ZXNfNiwKKyAgICAgIlwwMDBcMDAwXDAyMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjYzLCAicGFyYW1ldGVycyIsIDAsIDQsIHN0YXRlc183LAorICAgICAiXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyNjQsICJ0eXBlZGFyZ3NsaXN0IiwgMCwgMTgsIHN0YXRlc184LAorICAgICAiXDAwMFwwMDBcMDQwXDIwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyNjUsICJ0ZnBkZWYiLCAwLCA0LCBzdGF0ZXNfOSwKKyAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjY2LCAidmFyYXJnc2xpc3QiLCAwLCAxOCwgc3RhdGVzXzEwLAorICAgICAiXDAwMFwwMDBcMDQwXDIwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyNjcsICJ2ZnBkZWYiLCAwLCAyLCBzdGF0ZXNfMTEsCisgICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI2OCwgInN0bXQiLCAwLCAyLCBzdGF0ZXNfMTIsCisgICAgICJcMDAwXDA1MFwwNjBcMjAwXDAwMFwwMDBcMDAwXDI0MFwzNDBcMjIzXDE2MFwyMjBcMDQ1XDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwyMDRcMDAwIn0sCisgICAgezI2OSwgInNpbXBsZV9zdG10IiwgMCwgNCwgc3RhdGVzXzEzLAorICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDBcMDAwXDAwMFwyNDBcMzQwXDIyM1wxNjBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMjAwXDAwMCJ9LAorICAgIHsyNzAsICJzbWFsbF9zdG10IiwgMCwgMiwgc3RhdGVzXzE0LAorICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDBcMDAwXDAwMFwyNDBcMzQwXDIyM1wxNjBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMjAwXDAwMCJ9LAorICAgIHsyNzEsICJleHByX3N0bXQiLCAwLCA2LCBzdGF0ZXNfMTUsCisgICAgICJcMDAwXDA0MFwwNDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezI3MiwgInRlc3RsaXN0X3N0YXJfZXhwciIsIDAsIDMsIHN0YXRlc18xNiwKKyAgICAgIlwwMDBcMDQwXDA0MFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MjczLCAiYXVnYXNzaWduIiwgMCwgMiwgc3RhdGVzXzE3LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDM3NlwwMzdcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyNzQsICJkZWxfc3RtdCIsIDAsIDMsIHN0YXRlc18xOCwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjc1LCAicGFzc19zdG10IiwgMCwgMiwgc3RhdGVzXzE5LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyNzYsICJmbG93X3N0bXQiLCAwLCAyLCBzdGF0ZXNfMjAsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwzNDBcMDAxXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwIn0sCisgICAgezI3NywgImJyZWFrX3N0bXQiLCAwLCAyLCBzdGF0ZXNfMjEsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI3OCwgImNvbnRpbnVlX3N0bXQiLCAwLCAyLCBzdGF0ZXNfMjIsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwxMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI3OSwgInJldHVybl9zdG10IiwgMCwgMywgc3RhdGVzXzIzLAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyODAsICJ5aWVsZF9zdG10IiwgMCwgMiwgc3RhdGVzXzI0LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMCJ9LAorICAgIHsyODEsICJyYWlzZV9zdG10IiwgMCwgNSwgc3RhdGVzXzI1LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyODIsICJpbXBvcnRfc3RtdCIsIDAsIDIsIHN0YXRlc18yNiwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMjJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjgzLCAiaW1wb3J0X25hbWUiLCAwLCAzLCBzdGF0ZXNfMjcsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDIwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI4NCwgImltcG9ydF9mcm9tIiwgMCwgOCwgc3RhdGVzXzI4LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyODUsICJpbXBvcnRfYXNfbmFtZSIsIDAsIDQsIHN0YXRlc18yOSwKKyAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjg2LCAiZG90dGVkX2FzX25hbWUiLCAwLCA0LCBzdGF0ZXNfMzAsCisgICAgICJcMDAwXDAwMFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI4NywgImltcG9ydF9hc19uYW1lcyIsIDAsIDMsIHN0YXRlc18zMSwKKyAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjg4LCAiZG90dGVkX2FzX25hbWVzIiwgMCwgMiwgc3RhdGVzXzMyLAorICAgICAiXDAwMFwwMDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyODksICJkb3R0ZWRfbmFtZSIsIDAsIDIsIHN0YXRlc18zMywKKyAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MjkwLCAiZ2xvYmFsX3N0bXQiLCAwLCAzLCBzdGF0ZXNfMzQsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI5MSwgIm5vbmxvY2FsX3N0bXQiLCAwLCAzLCBzdGF0ZXNfMzUsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI5MiwgImFzc2VydF9zdG10IiwgMCwgNSwgc3RhdGVzXzM2LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwxMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyOTMsICJjb21wb3VuZF9zdG10IiwgMCwgMiwgc3RhdGVzXzM3LAorICAgICAiXDAwMFwwMTBcMDIwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjIwXDA0NVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDA0XDAwMCJ9LAorICAgIHsyOTQsICJpZl9zdG10IiwgMCwgOCwgc3RhdGVzXzM4LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDIwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyOTUsICJ3aGlsZV9zdG10IiwgMCwgOCwgc3RhdGVzXzM5LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyOTYsICJmb3Jfc3RtdCIsIDAsIDEwLCBzdGF0ZXNfNDAsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAxXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezI5NywgInRyeV9zdG10IiwgMCwgMTMsIHN0YXRlc180MSwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDRcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7Mjk4LCAid2l0aF9zdG10IiwgMCwgNSwgc3RhdGVzXzQyLAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHsyOTksICJ3aXRoX2l0ZW0iLCAwLCA0LCBzdGF0ZXNfNDMsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMwMCwgImV4Y2VwdF9jbGF1c2UiLCAwLCA1LCBzdGF0ZXNfNDQsCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezMwMSwgInN1aXRlIiwgMCwgNSwgc3RhdGVzXzQ1LAorICAgICAiXDAwNFwwNDBcMDQwXDIwMFwwMDBcMDAwXDAwMFwyNDBcMzQwXDIyM1wxNjBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMjAwXDAwMCJ9LAorICAgIHszMDIsICJ0ZXN0IiwgMCwgNiwgc3RhdGVzXzQ2LAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMDMsICJ0ZXN0X25vY29uZCIsIDAsIDIsIHN0YXRlc180NywKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzA0LCAibGFtYmRlZiIsIDAsIDUsIHN0YXRlc180OCwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MzA1LCAibGFtYmRlZl9ub2NvbmQiLCAwLCA1LCBzdGF0ZXNfNDksCisgICAgICJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwIn0sCisgICAgezMwNiwgIm9yX3Rlc3QiLCAwLCAyLCBzdGF0ZXNfNTAsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMwNywgImFuZF90ZXN0IiwgMCwgMiwgc3RhdGVzXzUxLAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMDgsICJub3RfdGVzdCIsIDAsIDMsIHN0YXRlc181MiwKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzA5LCAiY29tcGFyaXNvbiIsIDAsIDIsIHN0YXRlc181MywKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzEwLCAiY29tcF9vcCIsIDAsIDQsIHN0YXRlc181NCwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDJcMDAwXDIyMFwxNzdcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MzExLCAic3Rhcl9leHByIiwgMCwgMywgc3RhdGVzXzU1LAorICAgICAiXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHszMTIsICJleHByIiwgMCwgMiwgc3RhdGVzXzU2LAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMTMsICJ4b3JfZXhwciIsIDAsIDIsIHN0YXRlc181NywKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzE0LCAiYW5kX2V4cHIiLCAwLCAyLCBzdGF0ZXNfNTgsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMxNSwgInNoaWZ0X2V4cHIiLCAwLCAyLCBzdGF0ZXNfNTksCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMxNiwgImFyaXRoX2V4cHIiLCAwLCAyLCBzdGF0ZXNfNjAsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMxNywgInRlcm0iLCAwLCAyLCBzdGF0ZXNfNjEsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMxOCwgImZhY3RvciIsIDAsIDMsIHN0YXRlc182MiwKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzE5LCAicG93ZXIiLCAwLCA0LCBzdGF0ZXNfNjMsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMyMCwgImF0b20iLCAwLCA5LCBzdGF0ZXNfNjQsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMyMSwgInRlc3RsaXN0X2NvbXAiLCAwLCA1LCBzdGF0ZXNfNjUsCisgICAgICJcMDAwXDA0MFwwNDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMyMiwgInRyYWlsZXIiLCAwLCA3LCBzdGF0ZXNfNjYsCisgICAgICJcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMTAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDIwXDAwMFwwMDBcMDAwIn0sCisgICAgezMyMywgInN1YnNjcmlwdGxpc3QiLCAwLCAzLCBzdGF0ZXNfNjcsCisgICAgICJcMDAwXDA0MFwwNDBcMDAyXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMyNCwgInN1YnNjcmlwdCIsIDAsIDUsIHN0YXRlc182OCwKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDJcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzI1LCAic2xpY2VvcCIsIDAsIDMsIHN0YXRlc182OSwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDJcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MzI2LCAiZXhwcmxpc3QiLCAwLCAzLCBzdGF0ZXNfNzAsCisgICAgICJcMDAwXDA0MFwwNDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMyNywgInRlc3RsaXN0IiwgMCwgMywgc3RhdGVzXzcxLAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMjgsICJkaWN0b3JzZXRtYWtlciIsIDAsIDExLCBzdGF0ZXNfNzIsCisgICAgICJcMDAwXDA0MFwwNDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMjAwXDAwMFwwMDBcMDAwXDIwMFwwMjBcMDAwXDAwMFwyMDZcMTIwXDA3NlwwMDBcMDAwIn0sCisgICAgezMyOSwgImNsYXNzZGVmIiwgMCwgOCwgc3RhdGVzXzczLAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDA0XDAwMCJ9LAorICAgIHszMzAsICJhcmdsaXN0IiwgMCwgOCwgc3RhdGVzXzc0LAorICAgICAiXDAwMFwwNDBcMDQwXDIwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorICAgIHszMzEsICJhcmd1bWVudCIsIDAsIDQsIHN0YXRlc183NSwKKyAgICAgIlwwMDBcMDQwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwyMDBcMDAwXDAwMFwwMDBcMjAwXDAyMFwwMDBcMDAwXDIwNlwxMjBcMDc2XDAwMFwwMDAifSwKKyAgICB7MzMyLCAiY29tcF9pdGVyIiwgMCwgMiwgc3RhdGVzXzc2LAorICAgICAiXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDIwXDAwMVwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMCJ9LAorICAgIHszMzMsICJjb21wX2ZvciIsIDAsIDYsIHN0YXRlc183NywKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDFcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MzM0LCAiY29tcF9pZiIsIDAsIDQsIHN0YXRlc183OCwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAyMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MzM1LCAiZW5jb2RpbmdfZGVjbCIsIDAsIDIsIHN0YXRlc183OSwKKyAgICAgIlwwMDBcMDAwXDA0MFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDAifSwKKyAgICB7MzM2LCAieWllbGRfZXhwciIsIDAsIDMsIHN0YXRlc184MCwKKyAgICAgIlwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMFwwMDAifSwKKyAgICB7MzM3LCAieWllbGRfYXJnIiwgMCwgMywgc3RhdGVzXzgxLAorICAgICAiXDAwMFwwNDBcMDQwXDAwMFwwMDBcMDAwXDAwMFwwMDBcMDAwXDIwMlwwMDBcMDAwXDAwMFwyMDBcMDIwXDAwMFwwMDBcMjA2XDEyMFwwNzZcMDAwXDAwMCJ9LAorfTsKK3N0YXRpYyBsYWJlbCBsYWJlbHNbMTY5XSA9IHsKICAgICB7MCwgIkVNUFRZIn0sCiAgICAgezI1NiwgMH0sCiAgICAgezQsIDB9LApAQCAtMjEzNSwxMCArMjE1MiwxMSBAQAogICAgIHszMzQsIDB9LAogICAgIHszMzUsIDB9LAogICAgIHsxLCAieWllbGQifSwKKyAgICB7MzM3LCAwfSwKIH07CiBncmFtbWFyIF9QeVBhcnNlcl9HcmFtbWFyID0gewotICAgIDgxLAorICAgIDgyLAogICAgIGRmYXMsCi0gICAgezE2OCwgbGFiZWxzfSwKKyAgICB7MTY5LCBsYWJlbHN9LAogICAgIDI1NgogfTsKZGlmZiAtLWdpdCBhL1B5dGhvbi9pbXBvcnQuYyBiL1B5dGhvbi9pbXBvcnQuYwppbmRleCBiZWRhN2Y5Li44YmQ3YTYxIDEwMDY0NAotLS0gYS9QeXRob24vaW1wb3J0LmMKKysrIGIvUHl0aG9uL2ltcG9ydC5jCkBAIC0xMDIsNiArMTAyLDkgQEAKICAgICAgICBQeXRob24gMy4yYTE6IDMxNzAgKGFkZCBEVVBfVE9QX1RXTywgcmVtb3ZlIERVUF9UT1BYIGFuZCBST1RfRk9VUikKICAgICAgICAgICAgICAgICAgICAgIHRhZzogY3B5dGhvbi0zMgogICAgICAgIFB5dGhvbiAzLjJhMiAgMzE4MCAoYWRkIERFTEVURV9ERVJFRikKKyAgICAgICBQeXRob24gMy4zYTAgIDMxOTAgX19jbGFzc19fIHN1cGVyIGNsb3N1cmUgY2hhbmdlZAorICAgICAgIFB5dGhvbiAzLjNhMCAgMzIwMCAoX19xdWFsbmFtZV9fIGFkZGVkKQorICAgICAgICAgICAgICAgICAgICAgMzIxMCAoYWRkZWQgc2l6ZSBtb2R1bG8gMioqMzIgdG8gdGhlIHB5YyBoZWFkZXIpCiAqLwogCiAvKiBNQUdJQyBtdXN0IGNoYW5nZSB3aGVuZXZlciB0aGUgYnl0ZWNvZGUgZW1pdHRlZCBieSB0aGUgY29tcGlsZXIgbWF5IG5vCkBAIC0xMTAsMjIgKzExMywzMCBAQAogICAgVEFHIG11c3QgY2hhbmdlIGZvciBlYWNoIG1ham9yIFB5dGhvbiByZWxlYXNlLiBUaGUgbWFnaWMgbnVtYmVyIHdpbGwgdGFrZQogICAgY2FyZSBvZiBhbnkgYnl0ZWNvZGUgY2hhbmdlcyB0aGF0IG9jY3VyIGR1cmluZyBkZXZlbG9wbWVudC4KICovCi0jZGVmaW5lIE1BR0lDICgzMTgwIHwgKChsb25nKSdccic8PDE2KSB8ICgobG9uZyknXG4nPDwyNCkpCi0jZGVmaW5lIFRBRyAiY3B5dGhvbi0zMiIKKyNkZWZpbmUgUVVPVEUoYXJnKSAjYXJnCisjZGVmaW5lIFNUUklGWShuYW1lKSBRVU9URShuYW1lKQorI2RlZmluZSBNQUpPUiBTVFJJRlkoUFlfTUFKT1JfVkVSU0lPTikKKyNkZWZpbmUgTUlOT1IgU1RSSUZZKFBZX01JTk9SX1ZFUlNJT04pCisjZGVmaW5lIE1BR0lDICgzMjEwIHwgKChsb25nKSdccic8PDE2KSB8ICgobG9uZyknXG4nPDwyNCkpCisjZGVmaW5lIFRBRyAiY3B5dGhvbi0iIE1BSk9SIE1JTk9SOwogI2RlZmluZSBDQUNIRURJUiAiX19weWNhY2hlX18iCiAvKiBDdXJyZW50IG1hZ2ljIHdvcmQgYW5kIHN0cmluZyB0YWcgYXMgZ2xvYmFscy4gKi8KIHN0YXRpYyBsb25nIHB5Y19tYWdpYyA9IE1BR0lDOwogc3RhdGljIGNvbnN0IGNoYXIgKnB5Y190YWcgPSBUQUc7CisjdW5kZWYgUVVPVEUKKyN1bmRlZiBTVFJJRlkKKyN1bmRlZiBNQUpPUgorI3VuZGVmIE1JTk9SCiAKLS8qIFNlZSBfUHlJbXBvcnRfRml4dXBFeHRlbnNpb25Vbmljb2RlKCkgYmVsb3cgKi8KKy8qIFNlZSBfUHlJbXBvcnRfRml4dXBFeHRlbnNpb25PYmplY3QoKSBiZWxvdyAqLwogc3RhdGljIFB5T2JqZWN0ICpleHRlbnNpb25zID0gTlVMTDsKIAorLyogRnVuY3Rpb24gZnJvbSBQYXJzZXIvdG9rZW5pemVyLmMgKi8KK2V4dGVybiBjaGFyICogUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nRmlsZW5hbWUoaW50LCBQeU9iamVjdCAqKTsKKwogLyogVGhpcyB0YWJsZSBpcyBkZWZpbmVkIGluIGNvbmZpZy5jOiAqLwogZXh0ZXJuIHN0cnVjdCBfaW5pdHRhYiBfUHlJbXBvcnRfSW5pdHRhYltdOwogCi0vKiBNZXRob2QgZnJvbSBQYXJzZXIvdG9rZW5pemVyLmMgKi8KLWV4dGVybiBjaGFyICogUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nKGludCk7Ci0KIHN0cnVjdCBfaW5pdHRhYiAqUHlJbXBvcnRfSW5pdHRhYiA9IF9QeUltcG9ydF9Jbml0dGFiOwogCiAvKiB0aGVzZSB0YWJsZXMgZGVmaW5lIHRoZSBtb2R1bGUgc3VmZml4ZXMgdGhhdCBQeXRob24gcmVjb2duaXplcyAqLwpAQCAtMTQwLDYgKzE1MSw4IEBACiAgICAgezAsIDB9CiB9OwogCitzdGF0aWMgUHlPYmplY3QgKmluaXRzdHIgPSBOVUxMOworX1B5X0lERU5USUZJRVIoX19wYXRoX18pOwogCiAvKiBJbml0aWFsaXplIHRoaW5ncyAqLwogCkBAIC0xNTEsNiArMTY0LDEwIEBACiAgICAgaW50IGNvdW50RCA9IDA7CiAgICAgaW50IGNvdW50UyA9IDA7CiAKKyAgICBpbml0c3RyID0gUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcoIl9faW5pdF9fIik7CisgICAgaWYgKGluaXRzdHIgPT0gTlVMTCkKKyAgICAgICAgUHlfRmF0YWxFcnJvcigiQ2FuJ3QgaW5pdGlhbGl6ZSBpbXBvcnQgdmFyaWFibGVzIik7CisKICAgICAvKiBwcmVwYXJlIF9QeUltcG9ydF9GaWxldGFiOiBjb3B5IGVudHJpZXMgZnJvbQogICAgICAgIF9QeUltcG9ydF9EeW5Mb2FkRmlsZXRhYiBhbmQgX1B5SW1wb3J0X1N0YW5kYXJkRmlsZXRhYi4KICAgICAgKi8KQEAgLTIyOSw4ICsyNDYsOSBAQAogICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoIiMgY2FuJ3QgaW1wb3J0IHppcGltcG9ydFxuIik7CiAgICAgfQogICAgIGVsc2UgewotICAgICAgICBQeU9iamVjdCAqemlwaW1wb3J0ZXIgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHppbXBpbXBvcnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInppcGltcG9ydGVyIik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHppcGltcG9ydGVyKTsKKyAgICAgICAgUHlPYmplY3QgKnppcGltcG9ydGVyID0gX1B5T2JqZWN0X0dldEF0dHJJZCh6aW1waW1wb3J0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZQeUlkX3ppcGltcG9ydGVyKTsKICAgICAgICAgUHlfREVDUkVGKHppbXBpbXBvcnQpOwogICAgICAgICBpZiAoemlwaW1wb3J0ZXIgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsgLyogTm8gemlwaW1wb3J0ZXIgb2JqZWN0IC0tIG9rYXkgKi8KQEAgLTMxOSw3ICszMzcsNyBAQAogICAgICAgICAvKiBGb3JrZWQgYXMgYSBzaWRlIGVmZmVjdCBvZiBpbXBvcnQgKi8KICAgICAgICAgbG9uZyBtZSA9IFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQoKTsKICAgICAgICAgUHlUaHJlYWRfYWNxdWlyZV9sb2NrKGltcG9ydF9sb2NrLCAwKTsKLQkvKiBYWFg6IGNhbiB0aGUgcHJldmlvdXMgbGluZSBmYWlsPyAqLworICAgICAgICAvKiBYWFg6IGNhbiB0aGUgcHJldmlvdXMgbGluZSBmYWlsPyAqLwogICAgICAgICBpbXBvcnRfbG9ja190aHJlYWQgPSBtZTsKICAgICAgICAgaW1wb3J0X2xvY2tfbGV2ZWwtLTsKICAgICB9IGVsc2UgewpAQCAtNDIzLDcgKzQ0MSw2IEBACiBQeUltcG9ydF9DbGVhbnVwKHZvaWQpCiB7CiAgICAgUHlfc3NpemVfdCBwb3MsIG5kb25lOwotICAgIGNoYXIgKm5hbWU7CiAgICAgUHlPYmplY3QgKmtleSwgKnZhbHVlLCAqZGljdDsKICAgICBQeUludGVycHJldGVyU3RhdGUgKmludGVycCA9IFB5VGhyZWFkU3RhdGVfR0VUKCktPmludGVycDsKICAgICBQeU9iamVjdCAqbW9kdWxlcyA9IGludGVycC0+bW9kdWxlczsKQEAgLTQ5NiwxNCArNTEzLDEzIEBACiAgICAgICAgICAgICBpZiAodmFsdWUtPm9iX3JlZmNudCAhPSAxKQogICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9DaGVjayhrZXkpICYmIFB5TW9kdWxlX0NoZWNrKHZhbHVlKSkgewotICAgICAgICAgICAgICAgIG5hbWUgPSBfUHlVbmljb2RlX0FzU3RyaW5nKGtleSk7Ci0gICAgICAgICAgICAgICAgaWYgKHN0cmNtcChuYW1lLCAiYnVpbHRpbnMiKSA9PSAwKQorICAgICAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfQ29tcGFyZVdpdGhBU0NJSVN0cmluZyhrZXksICJidWlsdGlucyIpID09IDApCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgIGlmIChzdHJjbXAobmFtZSwgInN5cyIpID09IDApCisgICAgICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKGtleSwgInN5cyIpID09IDApCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoCi0gICAgICAgICAgICAgICAgICAgICAgICAiIyBjbGVhbnVwWzFdICVzXG4iLCBuYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKAorICAgICAgICAgICAgICAgICAgICAgICAgIiMgY2xlYW51cFsxXSAlVVxuIiwga2V5KTsKICAgICAgICAgICAgICAgICBfUHlNb2R1bGVfQ2xlYXIodmFsdWUpOwogICAgICAgICAgICAgICAgIFB5RGljdF9TZXRJdGVtKG1vZHVsZXMsIGtleSwgUHlfTm9uZSk7CiAgICAgICAgICAgICAgICAgbmRvbmUrKzsKQEAgLTUxNSwxMyArNTMxLDEyIEBACiAgICAgcG9zID0gMDsKICAgICB3aGlsZSAoUHlEaWN0X05leHQobW9kdWxlcywgJnBvcywgJmtleSwgJnZhbHVlKSkgewogICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKGtleSkgJiYgUHlNb2R1bGVfQ2hlY2sodmFsdWUpKSB7Ci0gICAgICAgICAgICBuYW1lID0gX1B5VW5pY29kZV9Bc1N0cmluZyhrZXkpOwotICAgICAgICAgICAgaWYgKHN0cmNtcChuYW1lLCAiYnVpbHRpbnMiKSA9PSAwKQorICAgICAgICAgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKGtleSwgImJ1aWx0aW5zIikgPT0gMCkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgICAgIGlmIChzdHJjbXAobmFtZSwgInN5cyIpID09IDApCisgICAgICAgICAgICBpZiAoUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcoa2V5LCAic3lzIikgPT0gMCkKICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiIyBjbGVhbnVwWzJdICVzXG4iLCBuYW1lKTsKKyAgICAgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiMgY2xlYW51cFsyXSAlVVxuIiwga2V5KTsKICAgICAgICAgICAgIF9QeU1vZHVsZV9DbGVhcih2YWx1ZSk7CiAgICAgICAgICAgICBQeURpY3RfU2V0SXRlbShtb2R1bGVzLCBrZXksIFB5X05vbmUpOwogICAgICAgICB9CkBAIC01NzEsMTAgKzU4NiwxMCBAQAogICAgb25jZSwgd2Uga2VlcCBhIHN0YXRpYyBkaWN0aW9uYXJ5ICdleHRlbnNpb25zJyBrZXllZCBieSBtb2R1bGUgbmFtZQogICAgKGZvciBidWlsdC1pbiBtb2R1bGVzKSBvciBieSBmaWxlbmFtZSAoZm9yIGR5bmFtaWNhbGx5IGxvYWRlZAogICAgbW9kdWxlcyksIGNvbnRhaW5pbmcgdGhlc2UgbW9kdWxlcy4gIEEgY29weSBvZiB0aGUgbW9kdWxlJ3MKLSAgIGRpY3Rpb25hcnkgaXMgc3RvcmVkIGJ5IGNhbGxpbmcgX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uVW5pY29kZSgpCisgICBkaWN0aW9uYXJ5IGlzIHN0b3JlZCBieSBjYWxsaW5nIF9QeUltcG9ydF9GaXh1cEV4dGVuc2lvbk9iamVjdCgpCiAgICBpbW1lZGlhdGVseSBhZnRlciB0aGUgbW9kdWxlIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uIHN1Y2NlZWRzLiAgQQogICAgY29weSBjYW4gYmUgcmV0cmlldmVkIGZyb20gdGhlcmUgYnkgY2FsbGluZwotICAgX1B5SW1wb3J0X0ZpbmRFeHRlbnNpb25Vbmljb2RlKCkuCisgICBfUHlJbXBvcnRfRmluZEV4dGVuc2lvbk9iamVjdCgpLgogCiAgICBNb2R1bGVzIHdoaWNoIGRvIHN1cHBvcnQgbXVsdGlwbGUgaW5pdGlhbGl6YXRpb24gc2V0IHRoZWlyIG1fc2l6ZQogICAgZmllbGQgdG8gYSBub24tbmVnYXRpdmUgbnVtYmVyIChpbmRpY2F0aW5nIHRoZSBzaXplIG9mIHRoZQpAQCAtNTgzLDcgKzU5OCw4IEBACiAqLwogCiBpbnQKLV9QeUltcG9ydF9GaXh1cEV4dGVuc2lvblVuaWNvZGUoUHlPYmplY3QgKm1vZCwgY2hhciAqbmFtZSwgUHlPYmplY3QgKmZpbGVuYW1lKQorX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uT2JqZWN0KFB5T2JqZWN0ICptb2QsIFB5T2JqZWN0ICpuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmaWxlbmFtZSkKIHsKICAgICBQeU9iamVjdCAqbW9kdWxlcywgKmRpY3Q7CiAgICAgc3RydWN0IFB5TW9kdWxlRGVmICpkZWY7CkBAIC02MDIsMTAgKzYxOCwxMCBAQAogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQogICAgIG1vZHVsZXMgPSBQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCk7Ci0gICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKG1vZHVsZXMsIG5hbWUsIG1vZCkgPCAwKQorICAgIGlmIChQeURpY3RfU2V0SXRlbShtb2R1bGVzLCBuYW1lLCBtb2QpIDwgMCkKICAgICAgICAgcmV0dXJuIC0xOwogICAgIGlmIChfUHlTdGF0ZV9BZGRNb2R1bGUobW9kLCBkZWYpIDwgMCkgewotICAgICAgICBQeURpY3RfRGVsSXRlbVN0cmluZyhtb2R1bGVzLCBuYW1lKTsKKyAgICAgICAgUHlEaWN0X0RlbEl0ZW0obW9kdWxlcywgbmFtZSk7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAgICAgaWYgKGRlZi0+bV9zaXplID09IC0xKSB7CkBAIC02MzEsMTcgKzY0NywxNyBAQAogX1B5SW1wb3J0X0ZpeHVwQnVpbHRpbihQeU9iamVjdCAqbW9kLCBjaGFyICpuYW1lKQogewogICAgIGludCByZXM7Ci0gICAgUHlPYmplY3QgKmZpbGVuYW1lOwotICAgIGZpbGVuYW1lID0gUHlVbmljb2RlX0Zyb21TdHJpbmcobmFtZSk7Ci0gICAgaWYgKGZpbGVuYW1lID09IE5VTEwpCisgICAgUHlPYmplY3QgKm5hbWVvYmo7CisgICAgbmFtZW9iaiA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKG5hbWUpOworICAgIGlmIChuYW1lb2JqID09IE5VTEwpCiAgICAgICAgIHJldHVybiAtMTsKLSAgICByZXMgPSBfUHlJbXBvcnRfRml4dXBFeHRlbnNpb25Vbmljb2RlKG1vZCwgbmFtZSwgZmlsZW5hbWUpOwotICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CisgICAgcmVzID0gX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uT2JqZWN0KG1vZCwgbmFtZW9iaiwgbmFtZW9iaik7CisgICAgUHlfREVDUkVGKG5hbWVvYmopOwogICAgIHJldHVybiByZXM7CiB9CiAKIFB5T2JqZWN0ICoKLV9QeUltcG9ydF9GaW5kRXh0ZW5zaW9uVW5pY29kZShjaGFyICpuYW1lLCBQeU9iamVjdCAqZmlsZW5hbWUpCitfUHlJbXBvcnRfRmluZEV4dGVuc2lvbk9iamVjdChQeU9iamVjdCAqbmFtZSwgUHlPYmplY3QgKmZpbGVuYW1lKQogewogICAgIFB5T2JqZWN0ICptb2QsICptZGljdDsKICAgICBQeU1vZHVsZURlZiogZGVmOwpAQCAtNjU0LDcgKzY3MCw3IEBACiAgICAgICAgIC8qIE1vZHVsZSBkb2VzIG5vdCBzdXBwb3J0IHJlcGVhdGVkIGluaXRpYWxpemF0aW9uICovCiAgICAgICAgIGlmIChkZWYtPm1fYmFzZS5tX2NvcHkgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBtb2QgPSBQeUltcG9ydF9BZGRNb2R1bGUobmFtZSk7CisgICAgICAgIG1vZCA9IFB5SW1wb3J0X0FkZE1vZHVsZU9iamVjdChuYW1lKTsKICAgICAgICAgaWYgKG1vZCA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIG1kaWN0ID0gUHlNb2R1bGVfR2V0RGljdChtb2QpOwpAQCAtNjY5LDMwICs2ODUsMzAgQEAKICAgICAgICAgbW9kID0gZGVmLT5tX2Jhc2UubV9pbml0KCk7CiAgICAgICAgIGlmIChtb2QgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBQeURpY3RfU2V0SXRlbVN0cmluZyhQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCksIG5hbWUsIG1vZCk7CisgICAgICAgIFB5RGljdF9TZXRJdGVtKFB5SW1wb3J0X0dldE1vZHVsZURpY3QoKSwgbmFtZSwgbW9kKTsKICAgICAgICAgUHlfREVDUkVGKG1vZCk7CiAgICAgfQogICAgIGlmIChfUHlTdGF0ZV9BZGRNb2R1bGUobW9kLCBkZWYpIDwgMCkgewotICAgICAgICBQeURpY3RfRGVsSXRlbVN0cmluZyhQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCksIG5hbWUpOworICAgICAgICBQeURpY3RfRGVsSXRlbShQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCksIG5hbWUpOwogICAgICAgICBQeV9ERUNSRUYobW9kKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCJpbXBvcnQgJXMgIyBwcmV2aW91c2x5IGxvYWRlZCAoJVUpXG4iLAorICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoImltcG9ydCAlVSAjIHByZXZpb3VzbHkgbG9hZGVkICglUilcbiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUsIGZpbGVuYW1lKTsKICAgICByZXR1cm4gbW9kOwogCiB9CiAKIFB5T2JqZWN0ICoKLV9QeUltcG9ydF9GaW5kQnVpbHRpbihjaGFyICpuYW1lKQorX1B5SW1wb3J0X0ZpbmRCdWlsdGluKGNvbnN0IGNoYXIgKm5hbWUpCiB7Ci0gICAgUHlPYmplY3QgKnJlcywgKmZpbGVuYW1lOwotICAgIGZpbGVuYW1lID0gUHlVbmljb2RlX0Zyb21TdHJpbmcobmFtZSk7Ci0gICAgaWYgKGZpbGVuYW1lID09IE5VTEwpCisgICAgUHlPYmplY3QgKnJlcywgKm5hbWVvYmo7CisgICAgbmFtZW9iaiA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKG5hbWUpOworICAgIGlmIChuYW1lb2JqID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJlcyA9IF9QeUltcG9ydF9GaW5kRXh0ZW5zaW9uVW5pY29kZShuYW1lLCBmaWxlbmFtZSk7Ci0gICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICByZXMgPSBfUHlJbXBvcnRfRmluZEV4dGVuc2lvbk9iamVjdChuYW1lb2JqLCBuYW1lb2JqKTsKKyAgICBQeV9ERUNSRUYobmFtZW9iaik7CiAgICAgcmV0dXJuIHJlczsKIH0KIApAQCAtNzAzLDE4ICs3MTksMTggQEAKICAgICdORVcnIFJFRkVSRU5DRSEgKi8KIAogUHlPYmplY3QgKgotUHlJbXBvcnRfQWRkTW9kdWxlKGNvbnN0IGNoYXIgKm5hbWUpCitQeUltcG9ydF9BZGRNb2R1bGVPYmplY3QoUHlPYmplY3QgKm5hbWUpCiB7CiAgICAgUHlPYmplY3QgKm1vZHVsZXMgPSBQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCk7CiAgICAgUHlPYmplY3QgKm07CiAKLSAgICBpZiAoKG0gPSBQeURpY3RfR2V0SXRlbVN0cmluZyhtb2R1bGVzLCBuYW1lKSkgIT0gTlVMTCAmJgorICAgIGlmICgobSA9IFB5RGljdF9HZXRJdGVtKG1vZHVsZXMsIG5hbWUpKSAhPSBOVUxMICYmCiAgICAgICAgIFB5TW9kdWxlX0NoZWNrKG0pKQogICAgICAgICByZXR1cm4gbTsKLSAgICBtID0gUHlNb2R1bGVfTmV3KG5hbWUpOworICAgIG0gPSBQeU1vZHVsZV9OZXdPYmplY3QobmFtZSk7CiAgICAgaWYgKG0gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaWYgKFB5RGljdF9TZXRJdGVtU3RyaW5nKG1vZHVsZXMsIG5hbWUsIG0pICE9IDApIHsKKyAgICBpZiAoUHlEaWN0X1NldEl0ZW0obW9kdWxlcywgbmFtZSwgbSkgIT0gMCkgewogICAgICAgICBQeV9ERUNSRUYobSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KQEAgLTcyMywyMiArNzM5LDM0IEBACiAgICAgcmV0dXJuIG07CiB9CiAKK1B5T2JqZWN0ICoKK1B5SW1wb3J0X0FkZE1vZHVsZShjb25zdCBjaGFyICpuYW1lKQoreworICAgIFB5T2JqZWN0ICpuYW1lb2JqLCAqbW9kdWxlOworICAgIG5hbWVvYmogPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhuYW1lKTsKKyAgICBpZiAobmFtZW9iaiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICBtb2R1bGUgPSBQeUltcG9ydF9BZGRNb2R1bGVPYmplY3QobmFtZW9iaik7CisgICAgUHlfREVDUkVGKG5hbWVvYmopOworICAgIHJldHVybiBtb2R1bGU7Cit9CisKKwogLyogUmVtb3ZlIG5hbWUgZnJvbSBzeXMubW9kdWxlcywgaWYgaXQncyB0aGVyZS4gKi8KIHN0YXRpYyB2b2lkCi1yZW1vdmVfbW9kdWxlKGNvbnN0IGNoYXIgKm5hbWUpCityZW1vdmVfbW9kdWxlKFB5T2JqZWN0ICpuYW1lKQogewogICAgIFB5T2JqZWN0ICptb2R1bGVzID0gUHlJbXBvcnRfR2V0TW9kdWxlRGljdCgpOwotICAgIGlmIChQeURpY3RfR2V0SXRlbVN0cmluZyhtb2R1bGVzLCBuYW1lKSA9PSBOVUxMKQorICAgIGlmIChQeURpY3RfR2V0SXRlbShtb2R1bGVzLCBuYW1lKSA9PSBOVUxMKQogICAgICAgICByZXR1cm47Ci0gICAgaWYgKFB5RGljdF9EZWxJdGVtU3RyaW5nKG1vZHVsZXMsIG5hbWUpIDwgMCkKKyAgICBpZiAoUHlEaWN0X0RlbEl0ZW0obW9kdWxlcywgbmFtZSkgPCAwKQogICAgICAgICBQeV9GYXRhbEVycm9yKCJpbXBvcnQ6ICBkZWxldGluZyBleGlzdGluZyBrZXkgaW4iCiAgICAgICAgICAgICAgICAgICAgICAgInN5cy5tb2R1bGVzIGZhaWxlZCIpOwogfQogCi1zdGF0aWMgUHlPYmplY3QgKiBnZXRfc291cmNlZmlsZShjaGFyICpmaWxlKTsKLXN0YXRpYyBjaGFyICptYWtlX3NvdXJjZV9wYXRobmFtZShjaGFyICpwYXRobmFtZSwgY2hhciAqYnVmKTsKLXN0YXRpYyBjaGFyICptYWtlX2NvbXBpbGVkX3BhdGhuYW1lKGNoYXIgKnBhdGhuYW1lLCBjaGFyICpidWYsIHNpemVfdCBidWZsZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZGVidWcpOworc3RhdGljIFB5T2JqZWN0ICogZ2V0X3NvdXJjZWZpbGUoUHlPYmplY3QgKmZpbGVuYW1lKTsKK3N0YXRpYyBQeU9iamVjdCAqbWFrZV9zb3VyY2VfcGF0aG5hbWUoUHlPYmplY3QgKnBhdGhuYW1lKTsKK3N0YXRpYyBQeU9iamVjdCogbWFrZV9jb21waWxlZF9wYXRobmFtZShQeU9iamVjdCAqcGF0aG5hbWUsIGludCBkZWJ1Zyk7CiAKIC8qIEV4ZWN1dGUgYSBjb2RlIG9iamVjdCBpbiBhIG1vZHVsZSBhbmQgcmV0dXJuIHRoZSBtb2R1bGUgb2JqZWN0CiAgKiBXSVRIIElOQ1JFTUVOVEVEIFJFRkVSRU5DRSBDT1VOVC4gIElmIGFuIGVycm9yIG9jY3VycywgbmFtZSBpcwpAQCAtNzY4LDEwICs3OTYsNDEgQEAKIFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlV2l0aFBhdGhuYW1lcyhjaGFyICpuYW1lLCBQeU9iamVjdCAqY28sIGNoYXIgKnBhdGhuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmNwYXRobmFtZSkKIHsKKyAgICBQeU9iamVjdCAqbSA9IE5VTEw7CisgICAgUHlPYmplY3QgKm5hbWVvYmosICpwYXRob2JqID0gTlVMTCwgKmNwYXRob2JqID0gTlVMTDsKKworICAgIG5hbWVvYmogPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhuYW1lKTsKKyAgICBpZiAobmFtZW9iaiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChwYXRobmFtZSAhPSBOVUxMKSB7CisgICAgICAgIHBhdGhvYmogPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KHBhdGhuYW1lKTsKKyAgICAgICAgaWYgKHBhdGhvYmogPT0gTlVMTCkKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgfSBlbHNlCisgICAgICAgIHBhdGhvYmogPSBOVUxMOworICAgIGlmIChjcGF0aG5hbWUgIT0gTlVMTCkgeworICAgICAgICBjcGF0aG9iaiA9IFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQoY3BhdGhuYW1lKTsKKyAgICAgICAgaWYgKGNwYXRob2JqID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgIH0gZWxzZQorICAgICAgICBjcGF0aG9iaiA9IE5VTEw7CisgICAgbSA9IFB5SW1wb3J0X0V4ZWNDb2RlTW9kdWxlT2JqZWN0KG5hbWVvYmosIGNvLCBwYXRob2JqLCBjcGF0aG9iaik7CitlcnJvcjoKKyAgICBQeV9ERUNSRUYobmFtZW9iaik7CisgICAgUHlfWERFQ1JFRihwYXRob2JqKTsKKyAgICBQeV9YREVDUkVGKGNwYXRob2JqKTsKKyAgICByZXR1cm4gbTsKK30KKworUHlPYmplY3QqCitQeUltcG9ydF9FeGVjQ29kZU1vZHVsZU9iamVjdChQeU9iamVjdCAqbmFtZSwgUHlPYmplY3QgKmNvLCBQeU9iamVjdCAqcGF0aG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqY3BhdGhuYW1lKQorewogICAgIFB5T2JqZWN0ICptb2R1bGVzID0gUHlJbXBvcnRfR2V0TW9kdWxlRGljdCgpOwogICAgIFB5T2JqZWN0ICptLCAqZCwgKnY7CiAKLSAgICBtID0gUHlJbXBvcnRfQWRkTW9kdWxlKG5hbWUpOworICAgIG0gPSBQeUltcG9ydF9BZGRNb2R1bGVPYmplY3QobmFtZSk7CiAgICAgaWYgKG0gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgLyogSWYgdGhlIG1vZHVsZSBpcyBiZWluZyByZWxvYWRlZCwgd2UgZ2V0IHRoZSBvbGQgbW9kdWxlIGJhY2sKQEAgLTc4MywxMiArODQyLDEzIEBACiAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KICAgICAvKiBSZW1lbWJlciB0aGUgZmlsZW5hbWUgYXMgdGhlIF9fZmlsZV9fIGF0dHJpYnV0ZSAqLwotICAgIHYgPSBOVUxMOwogICAgIGlmIChwYXRobmFtZSAhPSBOVUxMKSB7CiAgICAgICAgIHYgPSBnZXRfc291cmNlZmlsZShwYXRobmFtZSk7CiAgICAgICAgIGlmICh2ID09IE5VTEwpCiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgIH0KKyAgICBlbHNlCisgICAgICAgIHYgPSBOVUxMOwogICAgIGlmICh2ID09IE5VTEwpIHsKICAgICAgICAgdiA9ICgoUHlDb2RlT2JqZWN0ICopY28pLT5jb19maWxlbmFtZTsKICAgICAgICAgUHlfSU5DUkVGKHYpOwpAQCAtNzk4LDI3ICs4NTgsMjEgQEAKICAgICBQeV9ERUNSRUYodik7CiAKICAgICAvKiBSZW1lbWJlciB0aGUgcHljIHBhdGggbmFtZSBhcyB0aGUgX19jYWNoZWRfXyBhdHRyaWJ1dGUuICovCi0gICAgaWYgKGNwYXRobmFtZSA9PSBOVUxMKSB7CisgICAgaWYgKGNwYXRobmFtZSAhPSBOVUxMKQorICAgICAgICB2ID0gY3BhdGhuYW1lOworICAgIGVsc2UKICAgICAgICAgdiA9IFB5X05vbmU7Ci0gICAgICAgIFB5X0lOQ1JFRih2KTsKLSAgICB9Ci0gICAgZWxzZSBpZiAoKHYgPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhjcGF0aG5hbWUpKSA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX0NsZWFyKCk7IC8qIE5vdCBpbXBvcnRhbnQgZW5vdWdoIHRvIHJlcG9ydCAqLwotICAgICAgICB2ID0gUHlfTm9uZTsKLSAgICAgICAgUHlfSU5DUkVGKHYpOwotICAgIH0KICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIl9fY2FjaGVkX18iLCB2KSAhPSAwKQogICAgICAgICBQeUVycl9DbGVhcigpOyAvKiBOb3QgaW1wb3J0YW50IGVub3VnaCB0byByZXBvcnQgKi8KLSAgICBQeV9ERUNSRUYodik7CiAKICAgICB2ID0gUHlFdmFsX0V2YWxDb2RlKGNvLCBkLCBkKTsKICAgICBpZiAodiA9PSBOVUxMKQogICAgICAgICBnb3RvIGVycm9yOwogICAgIFB5X0RFQ1JFRih2KTsKIAotICAgIGlmICgobSA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKG1vZHVsZXMsIG5hbWUpKSA9PSBOVUxMKSB7CisgICAgaWYgKChtID0gUHlEaWN0X0dldEl0ZW0obW9kdWxlcywgbmFtZSkpID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIkxvYWRlZCBtb2R1bGUgJS4yMDBzIG5vdCBmb3VuZCBpbiBzeXMubW9kdWxlcyIsCisgICAgICAgICAgICAgICAgICAgICAiTG9hZGVkIG1vZHVsZSAlUiBub3QgZm91bmQgaW4gc3lzLm1vZHVsZXMiLAogICAgICAgICAgICAgICAgICAgICAgbmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KQEAgLTgzNiwxMCArODkwLDEwIEBACiAvKiBMaWtlIHN0cnJjaHIoc3RyaW5nLCAnLycpIGJ1dCBzZWFyY2hlcyBmb3IgdGhlIHJpZ2h0bW9zdCBvZiBlaXRoZXIgU0VQCiAgICBvciBBTFRTRVAsIGlmIHRoZSBsYXR0ZXIgaXMgZGVmaW5lZC4KICovCi1zdGF0aWMgY2hhciAqCi1yaWdodG1vc3Rfc2VwKGNoYXIgKnMpCitzdGF0aWMgUHlfVUNTNCoKK3JpZ2h0bW9zdF9zZXAoUHlfVUNTNCAqcykKIHsKLSAgICBjaGFyICpmb3VuZCwgYzsKKyAgICBQeV9VQ1M0ICpmb3VuZCwgYzsKICAgICBmb3IgKGZvdW5kID0gTlVMTDsgKGMgPSAqcyk7IHMrKykgewogICAgICAgICBpZiAoYyA9PSBTRVAKICNpZmRlZiBBTFRTRVAKQEAgLTg1MywxMTMgKzkwNyw4OSBAQAogICAgIHJldHVybiBmb3VuZDsKIH0KIAorLyogTGlrZSByaWdodG1vc3Rfc2VwLCBidXQgb3BlcmF0ZSBvbiB1bmljb2RlIG9iamVjdHMuICovCitzdGF0aWMgUHlfc3NpemVfdAorcmlnaHRtb3N0X3NlcF9vYmooUHlPYmplY3QqIG8sIFB5X3NzaXplX3Qgc3RhcnQsIFB5X3NzaXplX3QgZW5kKQoreworICAgIFB5X3NzaXplX3QgZm91bmQsIGk7CisgICAgUHlfVUNTNCBjOworICAgIGZvciAoZm91bmQgPSAtMSwgaSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHsKKyAgICAgICAgYyA9IFB5VW5pY29kZV9SRUFEX0NIQVIobywgaSk7CisgICAgICAgIGlmIChjID09IFNFUAorI2lmZGVmIEFMVFNFUAorICAgICAgICAgICAgfHwgYyA9PSBBTFRTRVAKKyNlbmRpZgorICAgICAgICAgICAgKQorICAgICAgICB7CisgICAgICAgICAgICBmb3VuZCA9IGk7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0dXJuIGZvdW5kOworfQogCiAvKiBHaXZlbiBhIHBhdGhuYW1lIGZvciBhIFB5dGhvbiBzb3VyY2UgZmlsZSwgZmlsbCBhIGJ1ZmZlciB3aXRoIHRoZQogICAgcGF0aG5hbWUgZm9yIHRoZSBjb3JyZXNwb25kaW5nIGNvbXBpbGVkIGZpbGUuICBSZXR1cm4gdGhlIHBhdGhuYW1lCiAgICBmb3IgdGhlIGNvbXBpbGVkIGZpbGUsIG9yIE5VTEwgaWYgdGhlcmUncyBubyBzcGFjZSBpbiB0aGUgYnVmZmVyLgotICAgRG9lc24ndCBzZXQgYW4gZXhjZXB0aW9uLiAqLworICAgRG9lc24ndCBzZXQgYW4gZXhjZXB0aW9uLgogCi1zdGF0aWMgY2hhciAqCi1tYWtlX2NvbXBpbGVkX3BhdGhuYW1lKGNoYXIgKnBhdGhuYW1lLCBjaGFyICpidWYsIHNpemVfdCBidWZsZW4sIGludCBkZWJ1ZykKKyAgIGZvby5weSAtPiBfX3B5Y2FjaGVfXy9mb28uPHRhZz4ucHljCisKKyAgIHBhdGhzdHIgaXMgYXNzdW1lZCB0byBiZSAicmVhZHkiLgorKi8KKworc3RhdGljIFB5T2JqZWN0KgorbWFrZV9jb21waWxlZF9wYXRobmFtZShQeU9iamVjdCAqcGF0aHN0ciwgaW50IGRlYnVnKQogewotICAgIC8qIGZvby5weSAtPiBfX3B5Y2FjaGVfXy9mb28uPHRhZz4ucHljICovCi0gICAgc2l6ZV90IGxlbiA9IHN0cmxlbihwYXRobmFtZSk7Ci0gICAgc2l6ZV90IGksIHNhdmU7Ci0gICAgY2hhciAqcG9zOwotICAgIGludCBzZXAgPSBTRVA7CisgICAgUHlPYmplY3QgKnJlc3VsdDsKKyAgICBQeV9zc2l6ZV90IGZuYW1lLCBleHQsIGxlbiwgaSwgcG9zLCB0YWdsZW47CisgICAgUHlfc3NpemVfdCBweWNhY2hlX2xlbiA9IHNpemVvZihDQUNIRURJUikgLSAxOworICAgIGludCBraW5kOworICAgIHZvaWQgKmRhdGE7CisgICAgUHlfVUNTNCBsYXN0c2VwOwogCi0gICAgLyogU2FuaXR5IGNoZWNrIHRoYXQgdGhlIGJ1ZmZlciBoYXMgcm91Z2hseSBlbm91Z2ggc3BhY2UgdG8gaG9sZCB3aGF0Ci0gICAgICAgd2lsbCBldmVudHVhbGx5IGJlIHRoZSBmdWxsIHBhdGggdG8gdGhlIGNvbXBpbGVkIGZpbGUuICBUaGUgNSBleHRyYQotICAgICAgIGJ5dGVzIGluY2x1ZGUgdGhlIHNsYXNoIGFmZXIgX19weWNhY2hlX18sIHRoZSB0d28gZXh0cmEgZG90cywgdGhlCi0gICAgICAgZXh0cmEgdHJhaWxpbmcgY2hhcmFjdGVyICgnYycgb3IgJ28nKSBhbmQgbnVsbC4gIFRoaXMgaXNuJ3QgZXhhY3QKLSAgICAgICBiZWNhdXNlIHRoZSBjb250ZW50cyBvZiB0aGUgYnVmZmVyIGNhbiBhZmZlY3QgaG93IG1hbnkgYWN0dWFsCi0gICAgICAgY2hhcmFjdGVycyBvZiB0aGUgc3RyaW5nIGdldCBpbnRvIHRoZSBidWZmZXIuICBXZSdsbCBkbyBhIGZpbmFsCi0gICAgICAgc2FuaXR5IGNoZWNrIGJlZm9yZSB3cml0aW5nIHRoZSBleHRlbnNpb24gdG8gZW5zdXJlIHdlIGRvIG5vdAotICAgICAgIG92ZXJmbG93IHRoZSBidWZmZXIuCi0gICAgKi8KLSAgICBpZiAobGVuICsgc3RybGVuKENBQ0hFRElSKSArIHN0cmxlbihweWNfdGFnKSArIDUgPiBidWZsZW4pCisgICAgLyogQ29tcHV0ZSB0aGUgb3V0cHV0IHN0cmluZyBzaXplLiAqLworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHBhdGhzdHIpOworICAgIC8qIElmIHRoZXJlIGlzIG5vIHNlcGFyYXRvciwgdGhpcyByZXR1cm5zIC0xLCBzbworICAgICAgIGZuYW1lIHdpbGwgYmUgMC4gKi8KKyAgICBmbmFtZSA9IHJpZ2h0bW9zdF9zZXBfb2JqKHBhdGhzdHIsIDAsIGxlbikgKyAxOworICAgIC8qIFdpbmRvd3M6IHJlLXVzZSB0aGUgbGFzdCBzZXBhcmF0b3IgY2hhcmFjdGVyICgvIG9yIFxcKSB3aGVuCisgICAgICAgYXBwZW5kaW5nIHRoZSBfX3B5Y2FjaGVfXyBwYXRoLiAqLworICAgIGlmIChmbmFtZSA+IDApCisgICAgICAgIGxhc3RzZXAgPSBQeVVuaWNvZGVfUkVBRF9DSEFSKHBhdGhzdHIsIGZuYW1lIC0xKTsKKyAgICBlbHNlCisgICAgICAgIGxhc3RzZXAgPSBTRVA7CisgICAgZXh0ID0gZm5hbWUgLSAxOworICAgIGZvcihpID0gZm5hbWU7IGkgPCBsZW47IGkrKykKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEX0NIQVIocGF0aHN0ciwgaSkgPT0gJy4nKQorICAgICAgICAgICAgZXh0ID0gaSArIDE7CisgICAgaWYgKGV4dCA8IGZuYW1lKQorICAgICAgICAvKiBObyBkb3QgaW4gZmlsZW5hbWU7IHVzZSBlbnRpcmUgZmlsZW5hbWUgKi8KKyAgICAgICAgZXh0ID0gbGVuOworCisgICAgLyogcmVzdWx0ID0gcGF0aHN0cls6Zm5hbWVdICsgIl9fcHljYWNoZV9fIiArIFNFUCArCisgICAgICAgICAgICAgICAgcGF0aHN0cltmbmFtZTpleHRdICsgdGFnICsgIi5weVtjb10iICovCisgICAgdGFnbGVuID0gc3RybGVuKHB5Y190YWcpOworICAgIHJlc3VsdCA9IFB5VW5pY29kZV9OZXcoZXh0ICsgcHljYWNoZV9sZW4gKyAxICsgdGFnbGVuICsgNCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShwYXRoc3RyKSk7CisgICAgaWYgKCFyZXN1bHQpCiAgICAgICAgIHJldHVybiBOVUxMOwotCi0gICAgLyogRmluZCB0aGUgbGFzdCBwYXRoIHNlcGFyYXRvciBhbmQgY29weSBldmVyeXRoaW5nIGZyb20gdGhlIHN0YXJ0IG9mCi0gICAgICAgdGhlIHNvdXJjZSBzdHJpbmcgdXAgdG8gYW5kIGluY2x1ZGluZyB0aGUgc2VwYXJhdG9yLgotICAgICovCi0gICAgaWYgKChwb3MgPSByaWdodG1vc3Rfc2VwKHBhdGhuYW1lKSkgPT0gTlVMTCkgewotICAgICAgICBpID0gMDsKLSAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIHNlcCA9ICpwb3M7Ci0gICAgICAgIGkgPSBwb3MgLSBwYXRobmFtZSArIDE7Ci0gICAgICAgIHN0cm5jcHkoYnVmLCBwYXRobmFtZSwgaSk7Ci0gICAgfQotCi0gICAgc2F2ZSA9IGk7Ci0gICAgYnVmW2krK10gPSAnXDAnOwotICAgIC8qIEFkZCBfX3B5Y2FjaGVfXy8gKi8KLSAgICBzdHJjYXQoYnVmLCBDQUNIRURJUik7Ci0gICAgaSArPSBzdHJsZW4oQ0FDSEVESVIpIC0gMTsKLSAgICBidWZbaSsrXSA9IHNlcDsKLSAgICBidWZbaSsrXSA9ICdcMCc7Ci0gICAgLyogQWRkIHRoZSBiYXNlIGZpbGVuYW1lLCBidXQgcmVtb3ZlIHRoZSAucHkgb3IgLnB5dyBleHRlbnNpb24sIHNpbmNlCi0gICAgICAgdGhlIHRhZyBuYW1lIG11c3QgZ28gYmVmb3JlIHRoZSBleHRlbnNpb24uCi0gICAgKi8KLSAgICBzdHJjYXQoYnVmLCBwYXRobmFtZSArIHNhdmUpOwotICAgIGlmICgocG9zID0gc3RycmNocihidWYsICcuJykpICE9IE5VTEwpCi0gICAgICAgICorK3BvcyA9ICdcMCc7Ci0gICAgc3RyY2F0KGJ1ZiwgcHljX3RhZyk7Ci0gICAgLyogVGhlIGxlbmd0aCB0ZXN0IGFib3ZlIGFzc3VtZXMgdGhhdCB3ZSdyZSBvbmx5IGFkZGluZyBvbmUgY2hhcmFjdGVyCi0gICAgICAgdG8gdGhlIGVuZCBvZiB3aGF0IHdvdWxkIG5vcm1hbGx5IGJlIHRoZSBleHRlbnNpb24uICBXaGF0IGlmIHRoZXJlCi0gICAgICAgaXMgbm8gZXh0ZW5zaW9uLCBvciB0aGUgc3RyaW5nIGVuZHMgaW4gJy4nIG9yICcucCcsIGFuZCBvdGhlcndpc2UKLSAgICAgICBmaWxscyB0aGUgYnVmZmVyPyAgQnkgYXBwZW5kaW5nIDQgbW9yZSBjaGFyYWN0ZXJzIG9udG8gdGhlIHN0cmluZwotICAgICAgIGhlcmUsIHdlIGNvdWxkIG92ZXJydW4gdGhlIGJ1ZmZlci4KLQotICAgICAgIEFzIGEgc2ltcGxlIGV4YW1wbGUsIGxldCdzIHNheSBidWZsZW49MzIgYW5kIHRoZSBpbnB1dCBzdHJpbmcgaXMKLSAgICAgICAneHh4LnB5Jy4gIHN0cmxlbigpIHdvdWxkIGJlIDYgYW5kIHRoZSB0ZXN0IGFib3ZlIHdvdWxkIHlpZWxkOgotCi0gICAgICAgKDYgKyAxMSArIDEwICsgNSA9PSAzMikgPiAzMgotCi0gICAgICAgd2hpY2ggaXMgZmFsc2UgYW5kIHNvIHRoZSBuYW1lIG1hbmdsaW5nIHdvdWxkIGNvbnRpbnVlLiAgVGhpcyB3b3VsZAotICAgICAgIGJlIGZpbmUgYmVjYXVzZSB3ZSdkIGVuZCB1cCB3aXRoIHRoaXMgc3RyaW5nIGluIGJ1ZjoKLQotICAgICAgIF9fcHljYWNoZV9fL3h4eC5jcHl0aG9uLTMyLnB5Y1wwCi0KLSAgICAgICBzdHJsZW4ob2YgdGhhdCkgPT0gMzAgKyB0aGUgbnVsIGZpdHMgaW5zaWRlIGEgMzIgY2hhcmFjdGVyIGJ1ZmZlci4KLSAgICAgICBXZSBjYW4gZXZlbiBoYW5kbGUgYW4gaW5wdXQgc3RyaW5nIG9mIHNheSAneHh4eHgnIGFib3ZlIGJlY2F1c2UKLSAgICAgICB0aGF0J3MgKDUgKyAxMSArIDEwICsgNSA9PSAzMSkgPiAzMiB3aGljaCBpcyBhbHNvIGZhbHNlLiAgTmFtZQotICAgICAgIG1hbmdsaW5nIHRoYXQgeWllbGRzOgotCi0gICAgICAgX19weWNhY2hlX18veHh4eHhjcHl0aG9uLTMyLnB5Y1wwCi0KLSAgICAgICB3aGljaCBpcyAzMiBjaGFyYWN0ZXJzIGluY2x1ZGluZyB0aGUgbnVsLCBhbmQgdGh1cyBmaXRzIGluIHRoZQotICAgICAgIGJ1ZmZlci4gSG93ZXZlciwgYW4gaW5wdXQgc3RyaW5nIG9mICd4eHh4eHgnIHdvdWxkIHlpZWxkIGEgcmVzdWx0Ci0gICAgICAgc3RyaW5nIG9mOgotCi0gICAgICAgX19weWNhY2hlX18veHh4eHh4Y3B5dGhvbi0zMi5weWNcMAotCi0gICAgICAgd2hpY2ggaXMgMzMgY2hhcmFjdGVycyBsb25nIChpbmNsdWRpbmcgdGhlIG51bCksIHRodXMgb3ZlcmZsb3dpbmcKLSAgICAgICB0aGUgYnVmZmVyLCBldmVuIHRob3VnaCB0aGUgZmlyc3QgdGVzdCB3b3VsZCBmYWlsLCBpLmUuOiB0aGUgaW5wdXQKLSAgICAgICBzdHJpbmcgaXMgYWxzbyA2IGNoYXJhY3RlcnMgbG9uZywgc28gMzIgPiAzMiBpcyBmYWxzZS4KLQotICAgICAgIFRoZSByZWFzb24gdGhlIGZpcnN0IHRlc3QgZmFpbHMgYnV0IHdlIHN0aWxsIG92ZXJmbG93IHRoZSBidWZmZXIgaXMKLSAgICAgICB0aGF0IHRoZSB0ZXN0IGFib3ZlIG9ubHkgZXhwZWN0cyB0byBhZGQgb25lIGV4dHJhIGNoYXJhY3RlciB0byBiZQotICAgICAgIGFkZGVkIHRvIHRoZSBleHRlbnNpb24sIGFuZCBoZXJlIHdlJ3JlIGFkZGluZyB0aHJlZSAocHljKS4gIFdlCi0gICAgICAgZG9uJ3QgYWRkIHRoZSBmaXJzdCBkb3QsIHNvIHRoYXQgcmVjbGFpbXMgb25lIG9mIGV4cGVjdGVkCi0gICAgICAgcG9zaXRpb25zLCBsZWF2aW5nIHVzIG92ZXJmbG93aW5nIGJ5IDEgYnl0ZSAoMyBleHRyYSAtIDEgcmVjbGFpbWVkCi0gICAgICAgZG90IC0gMSBleHBlY3RlZCBleHRyYSA9PSAxIG92ZXJmbG93ZWQpLgotCi0gICAgICAgVGhlIGJlc3Qgd2UgY2FuIGRvIGlzIGVuc3VyZSB0aGF0IHdlIHN0aWxsIGhhdmUgZW5vdWdoIHJvb20gaW4gdGhlCi0gICAgICAgdGFyZ2V0IGJ1ZmZlciBiZWZvcmUgd2Ugd3JpdGUgdGhlIGV4dGVuc2lvbi4gIEJlY2F1c2UgaXQncyBhbHdheXMKLSAgICAgICBvbmx5IHRoZSBleHRlbnNpb24gdGhhdCBjYW4gY2F1c2UgdGhlIG92ZXJmbG93LCBhbmQgbmV2ZXIgdGhlIG90aGVyCi0gICAgICAgcGF0aCBieXRlcyB3ZSd2ZSB3cml0dGVuLCBpdCdzIHN1ZmZpY2llbnQgdG8ganVzdCBkbyBvbmUgbW9yZSB0ZXN0Ci0gICAgICAgaGVyZS4gIFN0aWxsLCB0aGUgYXNzZXJ0aW9uIHRoYXQgZm9sbG93cyBjYW4ndCBodXJ0LgotICAgICovCi0jaWYgMAotICAgIHByaW50Zigic3RybGVuKGJ1Zik6ICVkOyBidWZsZW46ICVkXG4iLCAoaW50KXN0cmxlbihidWYpLCAoaW50KWJ1Zmxlbik7Ci0jZW5kaWYKLSAgICBpZiAoc3RybGVuKGJ1ZikgKyA1ID4gYnVmbGVuKQotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBzdHJjYXQoYnVmLCBkZWJ1ZyA/ICIucHljIiA6ICIucHlvIik7Ci0gICAgYXNzZXJ0KHN0cmxlbihidWYpIDwgYnVmbGVuKTsKLSAgICByZXR1cm4gYnVmOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXN1bHQpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShyZXN1bHQpOworICAgIFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyhyZXN1bHQsIDAsIHBhdGhzdHIsIDAsIGZuYW1lKTsKKyAgICBwb3MgPSBmbmFtZTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgcHljYWNoZV9sZW47IGkrKykKKyAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIHBvcysrLCBDQUNIRURJUltpXSk7CisgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIHBvcysrLCBsYXN0c2VwKTsKKyAgICBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMocmVzdWx0LCBwb3MsIHBhdGhzdHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZuYW1lLCBleHQgLSBmbmFtZSk7CisgICAgcG9zICs9IGV4dCAtIGZuYW1lOworICAgIGZvciAoaSA9IDA7IHB5Y190YWdbaV07IGkrKykKKyAgICAgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIHBvcysrLCBweWNfdGFnW2ldKTsKKyAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgcG9zKyssICcuJyk7CisgICAgUHlVbmljb2RlX1dSSVRFKGtpbmQsIGRhdGEsIHBvcysrLCAncCcpOworICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBwb3MrKywgJ3knKTsKKyAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgcG9zKyssIGRlYnVnID8gJ2MnIDogJ28nKTsKKyAgICByZXR1cm4gcmVzdWx0OwogfQogCiAKQEAgLTk2Nyw0MiArOTk3LDUyIEBACiAgICBzb3VyY2UgZmlsZSwgaWYgdGhlIHBhdGggbWF0Y2hlcyB0aGUgUEVQIDMxNDcgZm9ybWF0LiAgVGhpcyBkb2VzIG5vdCBjaGVjawogICAgZm9yIGFueSBmaWxlIGV4aXN0ZW5jZSwgaG93ZXZlciwgaWYgdGhlIHB5YyBmaWxlIG5hbWUgZG9lcyBub3QgbWF0Y2ggUEVQCiAgICAzMTQ3IHN0eWxlLCBOVUxMIGlzIHJldHVybmVkLiAgYnVmIG11c3QgYmUgYXQgbGVhc3QgYXMgYmlnIGFzIHBhdGhuYW1lOwotICAgdGhlIHJlc3VsdGluZyBwYXRoIHdpbGwgYWx3YXlzIGJlIHNob3J0ZXIuICovCisgICB0aGUgcmVzdWx0aW5nIHBhdGggd2lsbCBhbHdheXMgYmUgc2hvcnRlci4KIAotc3RhdGljIGNoYXIgKgotbWFrZV9zb3VyY2VfcGF0aG5hbWUoY2hhciAqcGF0aG5hbWUsIGNoYXIgKmJ1ZikKKyAgICguLi4pL19fcHljYWNoZV9fL2Zvby48dGFnPi5weWMgLT4gKC4uLikvZm9vLnB5ICovCisKK3N0YXRpYyBQeU9iamVjdCoKK21ha2Vfc291cmNlX3BhdGhuYW1lKFB5T2JqZWN0ICpwYXRoKQogewotICAgIC8qIF9fcHljYWNoZV9fL2Zvby48dGFnPi5weWMgLT4gZm9vLnB5ICovCi0gICAgc2l6ZV90IGksIGo7Ci0gICAgY2hhciAqbGVmdCwgKnJpZ2h0LCAqZG90MCwgKmRvdDEsIHNlcDsKKyAgICBQeV9zc2l6ZV90IGxlZnQsIHJpZ2h0LCBkb3QwLCBkb3QxLCBsZW47CisgICAgUHlfc3NpemVfdCBpLCBqOworICAgIFB5T2JqZWN0ICpyZXN1bHQ7CisgICAgaW50IGtpbmQ7CisgICAgdm9pZCAqZGF0YTsKKworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKHBhdGgpOworICAgIGlmIChsZW4gPiBNQVhQQVRITEVOKQorICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIC8qIExvb2sgYmFjayB0d28gc2xhc2hlcyBmcm9tIHRoZSBlbmQuICBJbiBiZXR3ZWVuIHRoZXNlIHR3byBzbGFzaGVzCiAgICAgICAgbXVzdCBiZSB0aGUgc3RyaW5nIF9fcHljYWNoZV9fIG9yIHRoaXMgaXMgbm90IGEgUEVQIDMxNDcgc3R5bGUKICAgICAgICBwYXRoLiAgSXQncyBwb3NzaWJsZSBmb3IgdGhlcmUgdG8gYmUgb25seSBvbmUgc2xhc2guCiAgICAgKi8KLSAgICBpZiAoKHJpZ2h0ID0gcmlnaHRtb3N0X3NlcChwYXRobmFtZSkpID09IE5VTEwpCisgICAgcmlnaHQgPSByaWdodG1vc3Rfc2VwX29iaihwYXRoLCAwLCBsZW4pOworICAgIGlmIChyaWdodCA9PSAtMSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgc2VwID0gKnJpZ2h0OwotICAgICpyaWdodCA9ICdcMCc7Ci0gICAgbGVmdCA9IHJpZ2h0bW9zdF9zZXAocGF0aG5hbWUpOwotICAgICpyaWdodCA9IHNlcDsKLSAgICBpZiAobGVmdCA9PSBOVUxMKQotICAgICAgICBsZWZ0ID0gcGF0aG5hbWU7CisgICAgbGVmdCA9IHJpZ2h0bW9zdF9zZXBfb2JqKHBhdGgsIDAsIHJpZ2h0KTsKKyAgICBpZiAobGVmdCA9PSAtMSkKKyAgICAgICAgbGVmdCA9IDA7CiAgICAgZWxzZQogICAgICAgICBsZWZ0Kys7Ci0gICAgaWYgKHJpZ2h0LWxlZnQgIT0gc3RybGVuKENBQ0hFRElSKSB8fAotICAgICAgICBzdHJuY21wKGxlZnQsIENBQ0hFRElSLCByaWdodC1sZWZ0KSAhPSAwKQorICAgIGlmIChyaWdodC1sZWZ0ICE9ICBzaXplb2YoQ0FDSEVESVIpLTEpCiAgICAgICAgIHJldHVybiBOVUxMOworICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YoQ0FDSEVESVIpLTE7IGkrKykKKyAgICAgICAgaWYgKFB5VW5pY29kZV9SRUFEX0NIQVIocGF0aCwgbGVmdCtpKSAhPSBDQUNIRURJUltpXSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogCiAgICAgLyogTm93IHZlcmlmeSB0aGF0IHRoZSBwYXRoIGNvbXBvbmVudCB0byB0aGUgcmlnaHQgb2YgdGhlIGxhc3Qgc2xhc2gKICAgICAgICBoYXMgdHdvIGRvdHMgaW4gaXQuCiAgICAgKi8KLSAgICBpZiAoKGRvdDAgPSBzdHJjaHIocmlnaHQgKyAxLCAnLicpKSA9PSBOVUxMKQorICAgIGRvdDAgPSBQeVVuaWNvZGVfRmluZENoYXIocGF0aCwgJy4nLCByaWdodCsxLCBsZW4sIDEpOworICAgIGlmIChkb3QwIDwgMCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaWYgKChkb3QxID0gc3RyY2hyKGRvdDAgKyAxLCAnLicpKSA9PSBOVUxMKQorICAgIGRvdDEgPSBQeVVuaWNvZGVfRmluZENoYXIocGF0aCwgJy4nLCBkb3QwKzEsIGxlbiwgMSk7CisgICAgaWYgKGRvdDEgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICAvKiBUb28gbWFueSBkb3RzPyAqLwotICAgIGlmIChzdHJjaHIoZG90MSArIDEsICcuJykgIT0gTlVMTCkKKyAgICBpZiAoUHlVbmljb2RlX0ZpbmRDaGFyKHBhdGgsICcuJywgZG90MSsxLCBsZW4sIDEpICE9IC0xKQogICAgICAgICByZXR1cm4gTlVMTDsKIAogICAgIC8qIFRoaXMgaXMgYSBQRVAgMzE0NyBwYXRoLiAgU3RhcnQgYnkgY29weWluZyBldmVyeXRoaW5nIGZyb20gdGhlCkBAIC0xMDEwLDEwICsxMDUwLDE4IEBACiAgICAgICAgY29weSB0aGUgZmlsZSdzIGJhc2VuYW1lLCByZW1vdmluZyB0aGUgbWFnaWMgdGFnIGFuZCBhZGRpbmcgYSAucHkKICAgICAgICBzdWZmaXguCiAgICAgKi8KLSAgICBzdHJuY3B5KGJ1ZiwgcGF0aG5hbWUsIChpPWxlZnQtcGF0aG5hbWUpKTsKLSAgICBzdHJuY3B5KGJ1ZitpLCByaWdodCsxLCAoaj1kb3QwLXJpZ2h0KSk7Ci0gICAgc3RyY3B5KGJ1ZitpK2osICJweSIpOwotICAgIHJldHVybiBidWY7CisgICAgcmVzdWx0ID0gUHlVbmljb2RlX05ldyhsZWZ0ICsgKGRvdDAtcmlnaHQpICsgMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShwYXRoKSk7CisgICAgaWYgKCFyZXN1bHQpCisgICAgICAgIHJldHVybiBOVUxMOworICAgIGtpbmQgPSBQeVVuaWNvZGVfS0lORChyZXN1bHQpOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShyZXN1bHQpOworICAgIFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyhyZXN1bHQsIDAsIHBhdGgsIDAsIChpID0gbGVmdCkpOworICAgIFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyhyZXN1bHQsIGxlZnQsIHBhdGgsIHJpZ2h0KzEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChqID0gZG90MC1yaWdodCkpOworICAgIFB5VW5pY29kZV9XUklURShraW5kLCBkYXRhLCBpK2osICAgJ3AnKTsKKyAgICBQeVVuaWNvZGVfV1JJVEUoa2luZCwgZGF0YSwgaStqKzEsICd5Jyk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogLyogR2l2ZW4gYSBwYXRobmFtZSBmb3IgYSBQeXRob24gc291cmNlIGZpbGUsIGl0cyB0aW1lIG9mIGxhc3QKQEAgLTEwMjQsMzEgKzEwNzIsMzkgQEAKICAgIERvZXNuJ3Qgc2V0IGFuIGV4Y2VwdGlvbi4gKi8KIAogc3RhdGljIEZJTEUgKgotY2hlY2tfY29tcGlsZWRfbW9kdWxlKGNoYXIgKnBhdGhuYW1lLCB0aW1lX3QgbXRpbWUsIGNoYXIgKmNwYXRobmFtZSkKK2NoZWNrX2NvbXBpbGVkX21vZHVsZShQeU9iamVjdCAqcGF0aG5hbWUsIHN0cnVjdCBzdGF0ICpzcmNzdGF0LCBQeU9iamVjdCAqY3BhdGhuYW1lKQogewogICAgIEZJTEUgKmZwOwogICAgIGxvbmcgbWFnaWM7CiAgICAgbG9uZyBweWNfbXRpbWU7CisgICAgbG9uZyBweWNfc2l6ZTsKIAotICAgIGZwID0gZm9wZW4oY3BhdGhuYW1lLCAicmIiKTsKKyAgICBmcCA9IF9QeV9mb3BlbihjcGF0aG5hbWUsICJyYiIpOwogICAgIGlmIChmcCA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBtYWdpYyA9IFB5TWFyc2hhbF9SZWFkTG9uZ0Zyb21GaWxlKGZwKTsKICAgICBpZiAobWFnaWMgIT0gcHljX21hZ2ljKSB7CiAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCIjICVzIGhhcyBiYWQgbWFnaWNcbiIsIGNwYXRobmFtZSk7CisgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiMgJVIgaGFzIGJhZCBtYWdpY1xuIiwgY3BhdGhuYW1lKTsKICAgICAgICAgZmNsb3NlKGZwKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHB5Y19tdGltZSA9IFB5TWFyc2hhbF9SZWFkTG9uZ0Zyb21GaWxlKGZwKTsKLSAgICBpZiAocHljX210aW1lICE9IG10aW1lKSB7CisgICAgaWYgKHB5Y19tdGltZSAhPSBzcmNzdGF0LT5zdF9tdGltZSkgewogICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiIyAlcyBoYXMgYmFkIG10aW1lXG4iLCBjcGF0aG5hbWUpOworICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjICVSIGhhcyBiYWQgbXRpbWVcbiIsIGNwYXRobmFtZSk7CisgICAgICAgIGZjbG9zZShmcCk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBweWNfc2l6ZSA9IFB5TWFyc2hhbF9SZWFkTG9uZ0Zyb21GaWxlKGZwKTsKKyAgICBpZiAocHljX3NpemUgIT0gKHNyY3N0YXQtPnN0X3NpemUgJiAweEZGRkZGRkZGKSkgeworICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCisgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiMgJVIgaGFzIGJhZCBzaXplXG4iLCBjcGF0aG5hbWUpOwogICAgICAgICBmY2xvc2UoZnApOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiIyAlcyBtYXRjaGVzICVzXG4iLCBjcGF0aG5hbWUsIHBhdGhuYW1lKTsKKyAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjICVSIG1hdGNoZXMgJVJcbiIsIGNwYXRobmFtZSwgcGF0aG5hbWUpOwogICAgIHJldHVybiBmcDsKIH0KIApAQCAtMTA1Niw3ICsxMTEyLDcgQEAKIC8qIFJlYWQgYSBjb2RlIG9iamVjdCBmcm9tIGEgZmlsZSBhbmQgY2hlY2sgaXQgZm9yIHZhbGlkaXR5ICovCiAKIHN0YXRpYyBQeUNvZGVPYmplY3QgKgotcmVhZF9jb21waWxlZF9tb2R1bGUoY2hhciAqY3BhdGhuYW1lLCBGSUxFICpmcCkKK3JlYWRfY29tcGlsZWRfbW9kdWxlKFB5T2JqZWN0ICpjcGF0aG5hbWUsIEZJTEUgKmZwKQogewogICAgIFB5T2JqZWN0ICpjbzsKIApAQCAtMTA2NSw3ICsxMTIxLDcgQEAKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKCFQeUNvZGVfQ2hlY2soY28pKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19JbXBvcnRFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJOb24tY29kZSBvYmplY3QgaW4gJS4yMDBzIiwgY3BhdGhuYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgICJOb24tY29kZSBvYmplY3QgaW4gJVIiLCBjcGF0aG5hbWUpOwogICAgICAgICBQeV9ERUNSRUYoY28pOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC0xMDc3LDcgKzExMzMsNyBAQAogICAgbW9kdWxlIG9iamVjdCBXSVRIIElOQ1JFTUVOVEVEIFJFRkVSRU5DRSBDT1VOVCAqLwogCiBzdGF0aWMgUHlPYmplY3QgKgotbG9hZF9jb21waWxlZF9tb2R1bGUoY2hhciAqbmFtZSwgY2hhciAqY3BhdGhuYW1lLCBGSUxFICpmcCkKK2xvYWRfY29tcGlsZWRfbW9kdWxlKFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqY3BhdGhuYW1lLCBGSUxFICpmcCkKIHsKICAgICBsb25nIG1hZ2ljOwogICAgIFB5Q29kZU9iamVjdCAqY287CkBAIC0xMDg2LDE4ICsxMTQyLDIwIEBACiAgICAgbWFnaWMgPSBQeU1hcnNoYWxfUmVhZExvbmdGcm9tRmlsZShmcCk7CiAgICAgaWYgKG1hZ2ljICE9IHB5Y19tYWdpYykgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiQmFkIG1hZ2ljIG51bWJlciBpbiAlLjIwMHMiLCBjcGF0aG5hbWUpOworICAgICAgICAgICAgICAgICAgICAgIkJhZCBtYWdpYyBudW1iZXIgaW4gJVIiLCBjcGF0aG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CisgICAgLyogU2tpcCBtdGltZSBhbmQgc2l6ZSAqLworICAgICh2b2lkKSBQeU1hcnNoYWxfUmVhZExvbmdGcm9tRmlsZShmcCk7CiAgICAgKHZvaWQpIFB5TWFyc2hhbF9SZWFkTG9uZ0Zyb21GaWxlKGZwKTsKICAgICBjbyA9IHJlYWRfY29tcGlsZWRfbW9kdWxlKGNwYXRobmFtZSwgZnApOwogICAgIGlmIChjbyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCJpbXBvcnQgJXMgIyBwcmVjb21waWxlZCBmcm9tICVzXG4iLAotICAgICAgICAgICAgbmFtZSwgY3BhdGhuYW1lKTsKLSAgICBtID0gUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVXaXRoUGF0aG5hbWVzKAotICAgICAgICBuYW1lLCAoUHlPYmplY3QgKiljbywgY3BhdGhuYW1lLCBjcGF0aG5hbWUpOworICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoImltcG9ydCAlVSAjIHByZWNvbXBpbGVkIGZyb20gJVJcbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lLCBjcGF0aG5hbWUpOworICAgIG0gPSBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZU9iamVjdChuYW1lLCAoUHlPYmplY3QgKiljbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3BhdGhuYW1lLCBjcGF0aG5hbWUpOwogICAgIFB5X0RFQ1JFRihjbyk7CiAKICAgICByZXR1cm4gbTsKQEAgLTExMDYsMTM0ICsxMTY0LDIzMyBAQAogLyogUGFyc2UgYSBzb3VyY2UgZmlsZSBhbmQgcmV0dXJuIHRoZSBjb3JyZXNwb25kaW5nIGNvZGUgb2JqZWN0ICovCiAKIHN0YXRpYyBQeUNvZGVPYmplY3QgKgotcGFyc2Vfc291cmNlX21vZHVsZShjb25zdCBjaGFyICpwYXRobmFtZSwgRklMRSAqZnApCitwYXJzZV9zb3VyY2VfbW9kdWxlKFB5T2JqZWN0ICpwYXRobmFtZSwgRklMRSAqZnApCiB7Ci0gICAgUHlDb2RlT2JqZWN0ICpjbyA9IE5VTEw7CisgICAgUHlDb2RlT2JqZWN0ICpjbzsKKyAgICBQeU9iamVjdCAqcGF0aGJ5dGVzOwogICAgIG1vZF90eSBtb2Q7CiAgICAgUHlDb21waWxlckZsYWdzIGZsYWdzOwotICAgIFB5QXJlbmEgKmFyZW5hID0gUHlBcmVuYV9OZXcoKTsKLSAgICBpZiAoYXJlbmEgPT0gTlVMTCkKKyAgICBQeUFyZW5hICphcmVuYTsKKworICAgIHBhdGhieXRlcyA9IFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQocGF0aG5hbWUpOworICAgIGlmIChwYXRoYnl0ZXMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKKyAgICBhcmVuYSA9IFB5QXJlbmFfTmV3KCk7CisgICAgaWYgKGFyZW5hID09IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKHBhdGhieXRlcyk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKwogICAgIGZsYWdzLmNmX2ZsYWdzID0gMDsKLSAgICBtb2QgPSBQeVBhcnNlcl9BU1RGcm9tRmlsZShmcCwgcGF0aG5hbWUsIE5VTEwsCisgICAgbW9kID0gUHlQYXJzZXJfQVNURnJvbUZpbGUoZnAsIFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGhieXRlcyksIE5VTEwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfZmlsZV9pbnB1dCwgMCwgMCwgJmZsYWdzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIGFyZW5hKTsKLSAgICBpZiAobW9kKSB7Ci0gICAgICAgIGNvID0gUHlBU1RfQ29tcGlsZShtb2QsIHBhdGhuYW1lLCBOVUxMLCBhcmVuYSk7Ci0gICAgfQorICAgIGlmIChtb2QgIT0gTlVMTCkKKyAgICAgICAgY28gPSBQeUFTVF9Db21waWxlKG1vZCwgUHlCeXRlc19BU19TVFJJTkcocGF0aGJ5dGVzKSwgTlVMTCwgYXJlbmEpOworICAgIGVsc2UKKyAgICAgICAgY28gPSBOVUxMOworICAgIFB5X0RFQ1JFRihwYXRoYnl0ZXMpOwogICAgIFB5QXJlbmFfRnJlZShhcmVuYSk7CiAgICAgcmV0dXJuIGNvOwogfQogCi0KLS8qIEhlbHBlciB0byBvcGVuIGEgYnl0ZWNvZGUgZmlsZSBmb3Igd3JpdGluZyBpbiBleGNsdXNpdmUgbW9kZSAqLwotCi1zdGF0aWMgRklMRSAqCi1vcGVuX2V4Y2x1c2l2ZShjaGFyICpmaWxlbmFtZSwgbW9kZV90IG1vZGUpCi17Ci0jaWYgZGVmaW5lZChPX0VYQ0wpJiZkZWZpbmVkKE9fQ1JFQVQpJiZkZWZpbmVkKE9fV1JPTkxZKSYmZGVmaW5lZChPX1RSVU5DKQotICAgIC8qIFVzZSBPX0VYQ0wgdG8gYXZvaWQgYSByYWNlIGNvbmRpdGlvbiB3aGVuIGFub3RoZXIgcHJvY2VzcyB0cmllcyB0bwotICAgICAgIHdyaXRlIHRoZSBzYW1lIGZpbGUuICBXaGVuIHRoYXQgaGFwcGVucywgb3VyIG9wZW4oKSBjYWxsIGZhaWxzLAotICAgICAgIHdoaWNoIGlzIGp1c3QgZmluZSAoc2luY2UgaXQncyBvbmx5IGEgY2FjaGUpLgotICAgICAgIFhYWCBJZiB0aGUgZmlsZSBleGlzdHMgYW5kIGlzIHdyaXRhYmxlIGJ1dCB0aGUgZGlyZWN0b3J5IGlzIG5vdAotICAgICAgIHdyaXRhYmxlLCB0aGUgZmlsZSB3aWxsIG5ldmVyIGJlIHdyaXR0ZW4uICBPaCB3ZWxsLgotICAgICovCi0gICAgaW50IGZkOwotICAgICh2b2lkKSB1bmxpbmsoZmlsZW5hbWUpOwotICAgIGZkID0gb3BlbihmaWxlbmFtZSwgT19FWENMfE9fQ1JFQVR8T19XUk9OTFl8T19UUlVOQwotI2lmZGVmIE9fQklOQVJZCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgfE9fQklOQVJZICAgLyogbmVjZXNzYXJ5IGZvciBXaW5kb3dzICovCi0jZW5kaWYKLSNpZmRlZiBfX1ZNUwotICAgICAgICAgICAgLCBtb2RlLCAiY3R4dD1iaW4iLCAic2hyPW5pbCIKLSNlbHNlCi0gICAgICAgICAgICAsIG1vZGUKLSNlbmRpZgotICAgICAgICAgICk7Ci0gICAgaWYgKGZkIDwgMCkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmV0dXJuIGZkb3BlbihmZCwgIndiIik7Ci0jZWxzZQotICAgIC8qIEJlc3Qgd2UgY2FuIGRvIC0tIG9uIFdpbmRvd3MgdGhpcyBjYW4ndCBoYXBwZW4gYW55d2F5ICovCi0gICAgcmV0dXJuIGZvcGVuKGZpbGVuYW1lLCAid2IiKTsKLSNlbmRpZgotfQotCi0KIC8qIFdyaXRlIGEgY29tcGlsZWQgbW9kdWxlIHRvIGEgZmlsZSwgcGxhY2luZyB0aGUgdGltZSBvZiBsYXN0CiAgICBtb2RpZmljYXRpb24gb2YgaXRzIHNvdXJjZSBpbnRvIHRoZSBoZWFkZXIuCiAgICBFcnJvcnMgYXJlIGlnbm9yZWQsIGlmIGEgd3JpdGUgZXJyb3Igb2NjdXJzIGFuIGF0dGVtcHQgaXMgbWFkZSB0bwogICAgcmVtb3ZlIHRoZSBmaWxlLiAqLwogCiBzdGF0aWMgdm9pZAotd3JpdGVfY29tcGlsZWRfbW9kdWxlKFB5Q29kZU9iamVjdCAqY28sIGNoYXIgKmNwYXRobmFtZSwgc3RydWN0IHN0YXQgKnNyY3N0YXQpCit3cml0ZV9jb21waWxlZF9tb2R1bGUoUHlDb2RlT2JqZWN0ICpjbywgUHlPYmplY3QgKmNwYXRobmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc3RhdCAqc3Jjc3RhdCkKIHsKKyAgICBQeV9VQ1M0ICpjcGF0aG5hbWVfdWNzNDsKICAgICBGSUxFICpmcDsKLSAgICBjaGFyICpkaXJwYXRoOwogICAgIHRpbWVfdCBtdGltZSA9IHNyY3N0YXQtPnN0X210aW1lOworICAgIGxvbmcgc2l6ZSA9IHNyY3N0YXQtPnN0X3NpemUgJiAweEZGRkZGRkZGOworICAgIFB5T2JqZWN0ICpjcGF0aG5hbWVfdG1wOwogI2lmZGVmIE1TX1dJTkRPV1MgICAvKiBzaW5jZSBXaW5kb3dzIHVzZXMgZGlmZmVyZW50IHBlcm1pc3Npb25zICAqLwogICAgIG1vZGVfdCBtb2RlID0gc3Jjc3RhdC0+c3RfbW9kZSAmIH5TX0lFWEVDOworICAgIHdjaGFyX3QgKndkaXJuYW1lLCAqd3BhdGhuYW1lLCAqd3BhdGhuYW1lX3RtcDsKICNlbHNlCi0gICAgbW9kZV90IG1vZGUgPSBzcmNzdGF0LT5zdF9tb2RlICYgflNfSVhVU1IgJiB+U19JWEdSUCAmIH5TX0lYT1RIOwogICAgIG1vZGVfdCBkaXJtb2RlID0gKHNyY3N0YXQtPnN0X21vZGUgfAogICAgICAgICAgICAgICAgICAgICAgIFNfSVhVU1IgfCBTX0lYR1JQIHwgU19JWE9USCB8CiAgICAgICAgICAgICAgICAgICAgICAgU19JV1VTUiB8IFNfSVdHUlAgfCBTX0lXT1RIKTsKKyAgICBQeU9iamVjdCAqZGlyYnl0ZXM7CisgICAgUHlPYmplY3QgKmNwYXRoYnl0ZXMsICpjcGF0aGJ5dGVzX3RtcDsKICNlbmRpZgotICAgIGludCBzYXZlZDsKKyAgICBpbnQgZmQ7CisgICAgUHlPYmplY3QgKmRpcm5hbWU7CisgICAgUHlfVUNTNCAqZGlyc2VwOworICAgIGludCByZXMsIG9rOwogCiAgICAgLyogRW5zdXJlIHRoYXQgdGhlIF9fcHljYWNoZV9fIGRpcmVjdG9yeSBleGlzdHMuICovCi0gICAgZGlycGF0aCA9IHJpZ2h0bW9zdF9zZXAoY3BhdGhuYW1lKTsKLSAgICBpZiAoZGlycGF0aCA9PSBOVUxMKSB7CisgICAgY3BhdGhuYW1lX3VjczQgPSBQeVVuaWNvZGVfQXNVQ1M0Q29weShjcGF0aG5hbWUpOworICAgIGlmICghY3BhdGhuYW1lX3VjczQpCisgICAgICAgIHJldHVybjsKKyAgICBkaXJzZXAgPSByaWdodG1vc3Rfc2VwKGNwYXRobmFtZV91Y3M0KTsKKyAgICBpZiAoZGlyc2VwID09IE5VTEwpIHsKICAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoCi0gICAgICAgICAgICAgICAgIiMgbm8gJXMgcGF0aCBmb3VuZCAlc1xuIiwKLSAgICAgICAgICAgICAgICBDQUNIRURJUiwgY3BhdGhuYW1lKTsKKyAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiIyBubyAlcyBwYXRoIGZvdW5kICVSXG4iLCBDQUNIRURJUiwgY3BhdGhuYW1lKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBzYXZlZCA9ICpkaXJwYXRoOwotICAgICpkaXJwYXRoID0gJ1wwJzsKKyAgICBkaXJuYW1lID0gUHlVbmljb2RlX0Zyb21LaW5kQW5kRGF0YShQeVVuaWNvZGVfNEJZVEVfS0lORCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcGF0aG5hbWVfdWNzNCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJzZXAgLSBjcGF0aG5hbWVfdWNzNCk7CisgICAgUHlNZW1fRnJlZShjcGF0aG5hbWVfdWNzNCk7CisgICAgaWYgKGRpcm5hbWUgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICByZXR1cm47CisgICAgfQogCiAjaWZkZWYgTVNfV0lORE9XUwotICAgIGlmIChfbWtkaXIoY3BhdGhuYW1lKSA8IDAgJiYgZXJybm8gIT0gRUVYSVNUKSB7Ci0jZWxzZQotICAgIGlmIChta2RpcihjcGF0aG5hbWUsIGRpcm1vZGUpIDwgMCAmJiBlcnJubyAhPSBFRVhJU1QpIHsKLSNlbmRpZgotICAgICAgICAqZGlycGF0aCA9IHNhdmVkOwotICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigKLSAgICAgICAgICAgICAgICAiIyBjYW5ub3QgY3JlYXRlIGNhY2hlIGRpciAlc1xuIiwgY3BhdGhuYW1lKTsKKyAgICB3ZGlybmFtZSA9IFB5VW5pY29kZV9Bc1VuaWNvZGUoZGlybmFtZSk7CisgICAgaWYgKHdkaXJuYW1lID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICAqZGlycGF0aCA9IHNhdmVkOworICAgIHJlcyA9IENyZWF0ZURpcmVjdG9yeVcod2Rpcm5hbWUsIE5VTEwpOworICAgIG9rID0gKHJlcyAhPSAwKTsKKyAgICBpZiAoIW9rICYmIEdldExhc3RFcnJvcigpID09IEVSUk9SX0FMUkVBRFlfRVhJU1RTKQorICAgICAgICBvayA9IDE7CisjZWxzZQorICAgIGRpcmJ5dGVzID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChkaXJuYW1lKTsKKyAgICBpZiAoZGlyYnl0ZXMgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIHJlcyA9IG1rZGlyKFB5Qnl0ZXNfQVNfU1RSSU5HKGRpcmJ5dGVzKSwgZGlybW9kZSk7CisgICAgUHlfREVDUkVGKGRpcmJ5dGVzKTsKKyAgICBpZiAoMCA8PSByZXMpCisgICAgICAgIG9rID0gMTsKKyAgICBlbHNlCisgICAgICAgIG9rID0gKGVycm5vID09IEVFWElTVCk7CisjZW5kaWYKKyAgICBpZiAoIW9rKSB7CisgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKKyAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiIyBjYW5ub3QgY3JlYXRlIGNhY2hlIGRpciAlUlxuIiwgZGlybmFtZSk7CisgICAgICAgIFB5X0RFQ1JFRihkaXJuYW1lKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBQeV9ERUNSRUYoZGlybmFtZSk7CiAKLSAgICBmcCA9IG9wZW5fZXhjbHVzaXZlKGNwYXRobmFtZSwgbW9kZSk7CisgICAgLyogV2UgZmlyc3Qgd3JpdGUgdG8gYSB0bXAgZmlsZSBhbmQgdGhlbiB0YWtlIGFkdmFudGFnZQorICAgICAgIG9mIGF0b21pYyByZW5hbWluZyAod2hpY2ggKnNob3VsZCogYmUgdHJ1ZSBldmVuIHVuZGVyIFdpbmRvd3MpLgorICAgICAgIEFzIGluIGltcG9ydGxpYiwgd2UgdXNlIGlkKHNvbWV0aGluZykgdG8gZ2VuZXJhdGUgYSBwc2V1ZG8tcmFuZG9tCisgICAgICAgZmlsZW5hbWUuICBta3N0ZW1wKCkgY2FuJ3QgYmUgdXNlZCBzaW5jZSBpdCBkb2Vzbid0IGFsbG93IHNwZWNpZnlpbmcKKyAgICAgICB0aGUgZmlsZSBhY2Nlc3MgcGVybWlzc2lvbnMuCisgICAgKi8KKyAgICBjcGF0aG5hbWVfdG1wID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVLiV6ZCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNwYXRobmFtZSwgKFB5X3NzaXplX3QpIGNvKTsKKyAgICBpZiAoY3BhdGhuYW1lX3RtcCA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisjaWZkZWYgTVNfV0lORE9XUworICAgIHdwYXRobmFtZSA9IFB5VW5pY29kZV9Bc1VuaWNvZGUoY3BhdGhuYW1lKTsKKyAgICBpZiAod3BhdGhuYW1lID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICB3cGF0aG5hbWVfdG1wID0gUHlVbmljb2RlX0FzVW5pY29kZShjcGF0aG5hbWVfdG1wKTsKKyAgICBpZiAod3BhdGhuYW1lX3RtcCA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAodm9pZClEZWxldGVGaWxlVyh3cGF0aG5hbWVfdG1wKTsKKyAgICBmZCA9IF93b3Blbih3cGF0aG5hbWVfdG1wLAorICAgICAgICAgICAgICAgIE9fRVhDTCB8IE9fQ1JFQVQgfCBPX1dST05MWSB8IE9fQklOQVJZLAorICAgICAgICAgICAgICAgIG1vZGUpOworICAgIGlmICgwIDw9IGZkKQorICAgICAgICBmcCA9IGZkb3BlbihmZCwgIndiIik7CisgICAgZWxzZQorICAgICAgICBmcCA9IE5VTEw7CisjZWxzZQorICAgIGNwYXRoYnl0ZXNfdG1wID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChjcGF0aG5hbWVfdG1wKTsKKyAgICBQeV9ERUNSRUYoY3BhdGhuYW1lX3RtcCk7CisgICAgaWYgKGNwYXRoYnl0ZXNfdG1wID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBjcGF0aGJ5dGVzID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChjcGF0aG5hbWUpOworICAgIGlmIChjcGF0aGJ5dGVzID09IE5VTEwpIHsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBmZCA9IG9wZW4oUHlCeXRlc19BU19TVFJJTkcoY3BhdGhieXRlc190bXApLAorICAgICAgICAgICAgICBPX0NSRUFUIHwgT19FWENMIHwgT19XUk9OTFksIDA2NjYpOworICAgIGlmICgwIDw9IGZkKQorICAgICAgICBmcCA9IGZkb3BlbihmZCwgIndiIik7CisgICAgZWxzZQorICAgICAgICBmcCA9IE5VTEw7CisjZW5kaWYKICAgICBpZiAoZnAgPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigKLSAgICAgICAgICAgICAgICAiIyBjYW4ndCBjcmVhdGUgJXNcbiIsIGNwYXRobmFtZSk7CisgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoCisgICAgICAgICAgICAgICAgIiMgY2FuJ3QgY3JlYXRlICVSXG4iLCBjcGF0aG5hbWUpOworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICAgICAgUHlfREVDUkVGKGNwYXRobmFtZV90bXApOworI2Vsc2UKKyAgICAgICAgUHlfREVDUkVGKGNwYXRoYnl0ZXMpOworICAgICAgICBQeV9ERUNSRUYoY3BhdGhieXRlc190bXApOworI2VuZGlmCiAgICAgICAgIHJldHVybjsKICAgICB9CiAgICAgUHlNYXJzaGFsX1dyaXRlTG9uZ1RvRmlsZShweWNfbWFnaWMsIGZwLCBQeV9NQVJTSEFMX1ZFUlNJT04pOwotICAgIC8qIEZpcnN0IHdyaXRlIGEgMCBmb3IgbXRpbWUgKi8KKyAgICAvKiBGaXJzdCB3cml0ZSBhIDAgZm9yIG10aW1lIGFuZCBzaXplICovCisgICAgUHlNYXJzaGFsX1dyaXRlTG9uZ1RvRmlsZSgwTCwgZnAsIFB5X01BUlNIQUxfVkVSU0lPTik7CiAgICAgUHlNYXJzaGFsX1dyaXRlTG9uZ1RvRmlsZSgwTCwgZnAsIFB5X01BUlNIQUxfVkVSU0lPTik7CiAgICAgUHlNYXJzaGFsX1dyaXRlT2JqZWN0VG9GaWxlKChQeU9iamVjdCAqKWNvLCBmcCwgUHlfTUFSU0hBTF9WRVJTSU9OKTsKLSAgICBpZiAoZmZsdXNoKGZwKSAhPSAwIHx8IGZlcnJvcihmcCkpIHsKLSAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoIiMgY2FuJ3Qgd3JpdGUgJXNcbiIsIGNwYXRobmFtZSk7Ci0gICAgICAgIC8qIERvbid0IGtlZXAgcGFydGlhbCBmaWxlICovCi0gICAgICAgIGZjbG9zZShmcCk7Ci0gICAgICAgICh2b2lkKSB1bmxpbmsoY3BhdGhuYW1lKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLSAgICAvKiBOb3cgd3JpdGUgdGhlIHRydWUgbXRpbWUgKGFzIGEgMzItYml0IGZpZWxkKSAqLworICAgIGZmbHVzaChmcCk7CisgICAgLyogTm93IHdyaXRlIHRoZSB0cnVlIG10aW1lIGFuZCBzaXplIChhcyAzMi1iaXQgZmllbGRzKSAqLwogICAgIGZzZWVrKGZwLCA0TCwgMCk7CiAgICAgYXNzZXJ0KG10aW1lIDw9IDB4RkZGRkZGRkYpOwogICAgIFB5TWFyc2hhbF9Xcml0ZUxvbmdUb0ZpbGUoKGxvbmcpbXRpbWUsIGZwLCBQeV9NQVJTSEFMX1ZFUlNJT04pOwotICAgIGZmbHVzaChmcCk7CisgICAgUHlNYXJzaGFsX1dyaXRlTG9uZ1RvRmlsZShzaXplLCBmcCwgUHlfTUFSU0hBTF9WRVJTSU9OKTsKKyAgICBpZiAoZmZsdXNoKGZwKSAhPSAwIHx8IGZlcnJvcihmcCkpIHsKKyAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQorICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjIGNhbid0IHdyaXRlICVSXG4iLCBjcGF0aG5hbWUpOworICAgICAgICAvKiBEb24ndCBrZWVwIHBhcnRpYWwgZmlsZSAqLworICAgICAgICBmY2xvc2UoZnApOworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICAgICAgKHZvaWQpRGVsZXRlRmlsZVcod3BhdGhuYW1lX3RtcCk7CisgICAgICAgIFB5X0RFQ1JFRihjcGF0aG5hbWVfdG1wKTsKKyNlbHNlCisgICAgICAgICh2b2lkKSB1bmxpbmsoUHlCeXRlc19BU19TVFJJTkcoY3BhdGhieXRlc190bXApKTsKKyAgICAgICAgUHlfREVDUkVGKGNwYXRoYnl0ZXMpOworICAgICAgICBQeV9ERUNSRUYoY3BhdGhieXRlc190bXApOworI2VuZGlmCisgICAgICAgIHJldHVybjsKKyAgICB9CiAgICAgZmNsb3NlKGZwKTsKKyAgICAvKiBEbyBhIChob3BlZnVsbHkpIGF0b21pYyByZW5hbWUgKi8KKyNpZmRlZiBNU19XSU5ET1dTCisgICAgaWYgKCFNb3ZlRmlsZUV4Vyh3cGF0aG5hbWVfdG1wLCB3cGF0aG5hbWUsIE1PVkVGSUxFX1JFUExBQ0VfRVhJU1RJTkcpKSB7CisgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKKyAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiIyBjYW4ndCB3cml0ZSAlUlxuIiwgY3BhdGhuYW1lKTsKKyAgICAgICAgLyogRG9uJ3Qga2VlcCB0bXAgZmlsZSAqLworICAgICAgICAodm9pZCkgRGVsZXRlRmlsZVcod3BhdGhuYW1lX3RtcCk7CisgICAgICAgIFB5X0RFQ1JFRihjcGF0aG5hbWVfdG1wKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBQeV9ERUNSRUYoY3BhdGhuYW1lX3RtcCk7CisjZWxzZQorICAgIGlmIChyZW5hbWUoUHlCeXRlc19BU19TVFJJTkcoY3BhdGhieXRlc190bXApLAorICAgICAgICAgICAgICAgUHlCeXRlc19BU19TVFJJTkcoY3BhdGhieXRlcykpKSB7CisgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKKyAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiIyBjYW4ndCB3cml0ZSAlUlxuIiwgY3BhdGhuYW1lKTsKKyAgICAgICAgLyogRG9uJ3Qga2VlcCB0bXAgZmlsZSAqLworICAgICAgICB1bmxpbmsoUHlCeXRlc19BU19TVFJJTkcoY3BhdGhieXRlc190bXApKTsKKyAgICAgICAgUHlfREVDUkVGKGNwYXRoYnl0ZXMpOworICAgICAgICBQeV9ERUNSRUYoY3BhdGhieXRlc190bXApOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIFB5X0RFQ1JFRihjcGF0aGJ5dGVzKTsKKyAgICBQeV9ERUNSRUYoY3BhdGhieXRlc190bXApOworI2VuZGlmCiAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiIyB3cm90ZSAlc1xuIiwgY3BhdGhuYW1lKTsKKyAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCIjIHdyb3RlICVSXG4iLCBjcGF0aG5hbWUpOwogfQogCiBzdGF0aWMgdm9pZApAQCAtMTI2MCwyNiArMTQxNyw0NCBAQAogICAgIH0KIH0KIAotc3RhdGljIGludAotdXBkYXRlX2NvbXBpbGVkX21vZHVsZShQeUNvZGVPYmplY3QgKmNvLCBjaGFyICpwYXRobmFtZSkKK3N0YXRpYyB2b2lkCit1cGRhdGVfY29tcGlsZWRfbW9kdWxlKFB5Q29kZU9iamVjdCAqY28sIFB5T2JqZWN0ICpuZXduYW1lKQogewotICAgIFB5T2JqZWN0ICpvbGRuYW1lLCAqbmV3bmFtZTsKKyAgICBQeU9iamVjdCAqb2xkbmFtZTsKIAotICAgIG5ld25hbWUgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KHBhdGhuYW1lKTsKLSAgICBpZiAobmV3bmFtZSA9PSBOVUxMKQotICAgICAgICByZXR1cm4gLTE7Ci0KLSAgICBpZiAoIVB5VW5pY29kZV9Db21wYXJlKGNvLT5jb19maWxlbmFtZSwgbmV3bmFtZSkpIHsKLSAgICAgICAgUHlfREVDUkVGKG5ld25hbWUpOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9CisgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlKGNvLT5jb19maWxlbmFtZSwgbmV3bmFtZSkgPT0gMCkKKyAgICAgICAgcmV0dXJuOwogCiAgICAgb2xkbmFtZSA9IGNvLT5jb19maWxlbmFtZTsKICAgICBQeV9JTkNSRUYob2xkbmFtZSk7CiAgICAgdXBkYXRlX2NvZGVfZmlsZW5hbWVzKGNvLCBvbGRuYW1lLCBuZXduYW1lKTsKICAgICBQeV9ERUNSRUYob2xkbmFtZSk7Ci0gICAgUHlfREVDUkVGKG5ld25hbWUpOwotICAgIHJldHVybiAxOworfQorCitzdGF0aWMgUHlPYmplY3QgKgoraW1wX2ZpeF9jb19maWxlbmFtZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCit7CisgICAgUHlPYmplY3QgKmNvOworICAgIFB5T2JqZWN0ICpmaWxlX3BhdGg7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9POl9maXhfY29fZmlsZW5hbWUiLCAmY28sICZmaWxlX3BhdGgpKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmICghUHlDb2RlX0NoZWNrKGNvKSkgeworICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVHlwZUVycm9yLAorICAgICAgICAgICAgICAgICAgICAgICAgImZpcnN0IGFyZ3VtZW50IG11c3QgYmUgYSBjb2RlIG9iamVjdCIpOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhmaWxlX3BhdGgpKSB7CisgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19UeXBlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAic2Vjb25kIGFyZ3VtZW50IG11c3QgYmUgYSBzdHJpbmciKTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorCisgICAgdXBkYXRlX2NvbXBpbGVkX21vZHVsZSgoUHlDb2RlT2JqZWN0KiljbywgZmlsZV9wYXRoKTsKKworICAgIFB5X1JFVFVSTl9OT05FOwogfQogCiAvKiBMb2FkIGEgc291cmNlIG1vZHVsZSBmcm9tIGEgZ2l2ZW4gZmlsZSBhbmQgcmV0dXJuIGl0cyBtb2R1bGUKQEAgLTEyODcsMjAgKzE0NjIsMTkgQEAKICAgIGJ5dGUtY29tcGlsZWQgZmlsZSwgdXNlIHRoYXQgaW5zdGVhZC4gKi8KIAogc3RhdGljIFB5T2JqZWN0ICoKLWxvYWRfc291cmNlX21vZHVsZShjaGFyICpuYW1lLCBjaGFyICpwYXRobmFtZSwgRklMRSAqZnApCitsb2FkX3NvdXJjZV9tb2R1bGUoUHlPYmplY3QgKm5hbWUsIFB5T2JqZWN0ICpwYXRobmFtZSwgRklMRSAqZnApCiB7CiAgICAgc3RydWN0IHN0YXQgc3Q7CiAgICAgRklMRSAqZnBjOwotICAgIGNoYXIgYnVmW01BWFBBVEhMRU4rMV07Ci0gICAgY2hhciAqY3BhdGhuYW1lOworICAgIFB5T2JqZWN0ICpjcGF0aG5hbWUgPSBOVUxMLCAqY3BhdGhieXRlcyA9IE5VTEw7CiAgICAgUHlDb2RlT2JqZWN0ICpjbzsKLSAgICBQeU9iamVjdCAqbTsKKyAgICBQeU9iamVjdCAqbSA9IE5VTEw7CiAKICAgICBpZiAoZnN0YXQoZmlsZW5vKGZwKSwgJnN0KSAhPSAwKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19SdW50aW1lRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAidW5hYmxlIHRvIGdldCBmaWxlIHN0YXR1cyBmcm9tICclcyciLAorICAgICAgICAgICAgICAgICAgICAgInVuYWJsZSB0byBnZXQgZmlsZSBzdGF0dXMgZnJvbSAlUiIsCiAgICAgICAgICAgICAgICAgICAgICBwYXRobmFtZSk7Ci0gICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KICAgICBpZiAoc2l6ZW9mIHN0LnN0X210aW1lID4gNCkgewogICAgICAgICAvKiBQeXRob24ncyAucHljIHRpbWVzdGFtcCBoYW5kbGluZyBwcmVzdW1lcyB0aGF0IHRoZSB0aW1lc3RhbXAgZml0cwpAQCAtMTMxMCwzOCArMTQ4NCw0NyBAQAogICAgICAgICAgKi8KICAgICAgICAgc3Quc3RfbXRpbWUgJj0gMHhGRkZGRkZGRjsKICAgICB9Ci0gICAgY3BhdGhuYW1lID0gbWFrZV9jb21waWxlZF9wYXRobmFtZSgKLSAgICAgICAgcGF0aG5hbWUsIGJ1ZiwgKHNpemVfdClNQVhQQVRITEVOICsgMSwgIVB5X09wdGltaXplRmxhZyk7Ci0gICAgaWYgKGNwYXRobmFtZSAhPSBOVUxMICYmCi0gICAgICAgIChmcGMgPSBjaGVja19jb21waWxlZF9tb2R1bGUocGF0aG5hbWUsIHN0LnN0X210aW1lLCBjcGF0aG5hbWUpKSkgeworICAgIGlmIChQeVVuaWNvZGVfUkVBRFkocGF0aG5hbWUpIDwgMCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgY3BhdGhuYW1lID0gbWFrZV9jb21waWxlZF9wYXRobmFtZShwYXRobmFtZSwgIVB5X09wdGltaXplRmxhZyk7CisKKyAgICBpZiAoY3BhdGhuYW1lICE9IE5VTEwpCisgICAgICAgIGZwYyA9IGNoZWNrX2NvbXBpbGVkX21vZHVsZShwYXRobmFtZSwgJnN0LCBjcGF0aG5hbWUpOworICAgIGVsc2UKKyAgICAgICAgZnBjID0gTlVMTDsKKworICAgIGlmIChmcGMpIHsKICAgICAgICAgY28gPSByZWFkX2NvbXBpbGVkX21vZHVsZShjcGF0aG5hbWUsIGZwYyk7CiAgICAgICAgIGZjbG9zZShmcGMpOwogICAgICAgICBpZiAoY28gPT0gTlVMTCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBpZiAodXBkYXRlX2NvbXBpbGVkX21vZHVsZShjbywgcGF0aG5hbWUpIDwgMCkKLSAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgdXBkYXRlX2NvbXBpbGVkX21vZHVsZShjbywgcGF0aG5hbWUpOwogICAgICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiaW1wb3J0ICVzICMgcHJlY29tcGlsZWQgZnJvbSAlc1xuIiwKLSAgICAgICAgICAgICAgICBuYW1lLCBjcGF0aG5hbWUpOwotICAgICAgICBwYXRobmFtZSA9IGNwYXRobmFtZTsKKyAgICAgICAgICAgIFB5U3lzX0Zvcm1hdFN0ZGVycigiaW1wb3J0ICVVICMgcHJlY29tcGlsZWQgZnJvbSAlUlxuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lLCBjcGF0aG5hbWUpOworICAgICAgICBtID0gUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVPYmplY3QobmFtZSwgKFB5T2JqZWN0ICopY28sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjcGF0aG5hbWUsIGNwYXRobmFtZSk7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBjbyA9IHBhcnNlX3NvdXJjZV9tb2R1bGUocGF0aG5hbWUsIGZwKTsKICAgICAgICAgaWYgKGNvID09IE5VTEwpCi0gICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKCJpbXBvcnQgJXMgIyBmcm9tICVzXG4iLAotICAgICAgICAgICAgICAgIG5hbWUsIHBhdGhuYW1lKTsKLSAgICAgICAgaWYgKGNwYXRobmFtZSkgeworICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCJpbXBvcnQgJVUgIyBmcm9tICVSXG4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUsIHBhdGhuYW1lKTsKKyAgICAgICAgaWYgKGNwYXRobmFtZSAhPSBOVUxMKSB7CiAgICAgICAgICAgICBQeU9iamVjdCAqcm8gPSBQeVN5c19HZXRPYmplY3QoImRvbnRfd3JpdGVfYnl0ZWNvZGUiKTsKICAgICAgICAgICAgIGlmIChybyA9PSBOVUxMIHx8ICFQeU9iamVjdF9Jc1RydWUocm8pKQogICAgICAgICAgICAgICAgIHdyaXRlX2NvbXBpbGVkX21vZHVsZShjbywgY3BhdGhuYW1lLCAmc3QpOwogICAgICAgICB9CisgICAgICAgIG0gPSBQeUltcG9ydF9FeGVjQ29kZU1vZHVsZU9iamVjdChuYW1lLCAoUHlPYmplY3QgKiljbywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGhuYW1lLCBjcGF0aG5hbWUpOwogICAgIH0KLSAgICBtID0gUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVXaXRoUGF0aG5hbWVzKAotICAgICAgICBuYW1lLCAoUHlPYmplY3QgKiljbywgcGF0aG5hbWUsIGNwYXRobmFtZSk7CiAgICAgUHlfREVDUkVGKGNvKTsKIAorZXJyb3I6CisgICAgUHlfWERFQ1JFRihjcGF0aGJ5dGVzKTsKKyAgICBQeV9YREVDUkVGKGNwYXRobmFtZSk7CiAgICAgcmV0dXJuIG07CiB9CiAKQEAgLTEzNDksMTAxICsxNTMyLDExNSBAQAogICogUmV0dXJucyB0aGUgcGF0aCB0byB0aGUgcHkgZmlsZSBpZiBhdmFpbGFibGUsIGVsc2UgdGhlIGdpdmVuIHBhdGgKICAqLwogc3RhdGljIFB5T2JqZWN0ICoKLWdldF9zb3VyY2VmaWxlKGNoYXIgKmZpbGUpCitnZXRfc291cmNlZmlsZShQeU9iamVjdCAqZmlsZW5hbWUpCiB7Ci0gICAgY2hhciBweVtNQVhQQVRITEVOICsgMV07CiAgICAgUHlfc3NpemVfdCBsZW47Ci0gICAgUHlPYmplY3QgKnU7CisgICAgUHlfVUNTNCAqZmlsZXVuaTsKKyAgICBQeU9iamVjdCAqcHk7CiAgICAgc3RydWN0IHN0YXQgc3RhdGJ1ZjsKKyAgICBpbnQgZXJyOwogCi0gICAgaWYgKCFmaWxlIHx8ICEqZmlsZSkgeworICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKGZpbGVuYW1lKTsKKyAgICBpZiAobGVuID09IDApCiAgICAgICAgIFB5X1JFVFVSTl9OT05FOwotICAgIH0KIAotICAgIGxlbiA9IHN0cmxlbihmaWxlKTsKLSAgICAvKiBtYXRjaCAnKi5weT8nICovCi0gICAgaWYgKGxlbiA+IE1BWFBBVEhMRU4gfHwgUHlPU19zdHJuaWNtcCgmZmlsZVtsZW4tNF0sICIucHkiLCAzKSAhPSAwKSB7Ci0gICAgICAgIHJldHVybiBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGZpbGUpOwotICAgIH0KKyAgICAvKiBkb24ndCBtYXRjaCAqLnB5YyBvciAqLnB5bz8gKi8KKyAgICBmaWxldW5pID0gUHlVbmljb2RlX0FzVUNTNENvcHkoZmlsZW5hbWUpOworICAgIGlmICghZmlsZXVuaSkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKGxlbiA8IDUKKyAgICAgICAgfHwgZmlsZXVuaVtsZW4tNF0gIT0gJy4nCisgICAgICAgIHx8IChmaWxldW5pW2xlbi0zXSAhPSAncCcgJiYgZmlsZXVuaVtsZW4tM10gIT0gJ1AnKQorICAgICAgICB8fCAoZmlsZXVuaVtsZW4tMl0gIT0gJ3knICYmIGZpbGV1bmlbbGVuLTJdICE9ICdZJykpCisgICAgICAgIGdvdG8gdW5jaGFuZ2VkOwogCiAgICAgLyogU3RhcnQgYnkgdHJ5aW5nIHRvIHR1cm4gUEVQIDMxNDcgcGF0aCBpbnRvIHNvdXJjZSBwYXRoLiAgSWYgdGhhdAogICAgICAqIGZhaWxzLCBqdXN0IGNob3Agb2ZmIHRoZSB0cmFpbGluZyBjaGFyYWN0ZXIsIGkuZS4gbGVnYWN5IHB5YyBwYXRoCiAgICAgICogdG8gcHkuCiAgICAgICovCi0gICAgaWYgKG1ha2Vfc291cmNlX3BhdGhuYW1lKGZpbGUsIHB5KSA9PSBOVUxMKSB7Ci0gICAgICAgIHN0cm5jcHkocHksIGZpbGUsIGxlbi0xKTsKLSAgICAgICAgcHlbbGVuLTFdID0gJ1wwJzsKKyAgICBweSA9IG1ha2Vfc291cmNlX3BhdGhuYW1lKGZpbGVuYW1lKTsKKyAgICBpZiAocHkgPT0gTlVMTCkgeworICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICBweSA9IFB5VW5pY29kZV9Gcm9tS2luZEFuZERhdGEoUHlVbmljb2RlXzRCWVRFX0tJTkQsIGZpbGV1bmksIGxlbiAtIDEpOwogICAgIH0KKyAgICBpZiAocHkgPT0gTlVMTCkKKyAgICAgICAgZ290byBlcnJvcjsKIAotICAgIGlmIChzdGF0KHB5LCAmc3RhdGJ1ZikgPT0gMCAmJgotICAgICAgICBTX0lTUkVHKHN0YXRidWYuc3RfbW9kZSkpIHsKLSAgICAgICAgdSA9IFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQocHkpOworICAgIGVyciA9IF9QeV9zdGF0KHB5LCAmc3RhdGJ1Zik7CisgICAgaWYgKGVyciA9PSAtMikKKyAgICAgICAgZ290byBlcnJvcjsKKyAgICBpZiAoZXJyID09IDAgJiYgU19JU1JFRyhzdGF0YnVmLnN0X21vZGUpKSB7CisgICAgICAgIFB5TWVtX0ZyZWUoZmlsZXVuaSk7CisgICAgICAgIHJldHVybiBweTsKICAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIHUgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGZpbGUpOwotICAgIH0KLSAgICByZXR1cm4gdTsKKyAgICBQeV9ERUNSRUYocHkpOworICAgIGdvdG8gdW5jaGFuZ2VkOworCitlcnJvcjoKKyAgICBQeUVycl9DbGVhcigpOwordW5jaGFuZ2VkOgorICAgIFB5TWVtX0ZyZWUoZmlsZXVuaSk7CisgICAgUHlfSU5DUkVGKGZpbGVuYW1lKTsKKyAgICByZXR1cm4gZmlsZW5hbWU7CiB9CiAKIC8qIEZvcndhcmQgKi8KLXN0YXRpYyBQeU9iamVjdCAqbG9hZF9tb2R1bGUoY2hhciAqLCBGSUxFICosIGNoYXIgKiwgaW50LCBQeU9iamVjdCAqKTsKLXN0YXRpYyBzdHJ1Y3QgZmlsZWRlc2NyICpmaW5kX21vZHVsZShjaGFyICosIGNoYXIgKiwgUHlPYmplY3QgKiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyICosIHNpemVfdCwgRklMRSAqKiwgUHlPYmplY3QgKiopOwotc3RhdGljIHN0cnVjdCBfZnJvemVuICogZmluZF9mcm96ZW4oY2hhciAqKTsKK3N0YXRpYyBQeU9iamVjdCAqbG9hZF9tb2R1bGUoUHlPYmplY3QgKiwgRklMRSAqLCBQeU9iamVjdCAqLCBpbnQsIFB5T2JqZWN0ICopOworc3RhdGljIHN0cnVjdCBmaWxlZGVzY3IgKmZpbmRfbW9kdWxlKFB5T2JqZWN0ICosIFB5T2JqZWN0ICosIFB5T2JqZWN0ICosCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKiosIEZJTEUgKiosIFB5T2JqZWN0ICoqKTsKK3N0YXRpYyBzdHJ1Y3QgX2Zyb3plbiAqIGZpbmRfZnJvemVuKFB5T2JqZWN0ICopOwogCiAvKiBMb2FkIGEgcGFja2FnZSBhbmQgcmV0dXJuIGl0cyBtb2R1bGUgb2JqZWN0IFdJVEggSU5DUkVNRU5URUQKICAgIFJFRkVSRU5DRSBDT1VOVCAqLwogCiBzdGF0aWMgUHlPYmplY3QgKgotbG9hZF9wYWNrYWdlKGNoYXIgKm5hbWUsIGNoYXIgKnBhdGhuYW1lKQorbG9hZF9wYWNrYWdlKFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqcGF0aG5hbWUpCiB7Ci0gICAgUHlPYmplY3QgKm0sICpkOwotICAgIFB5T2JqZWN0ICpmaWxlID0gTlVMTDsKLSAgICBQeU9iamVjdCAqcGF0aCA9IE5VTEw7CisgICAgUHlPYmplY3QgKm0sICpkLCAqYnVmb2JqOworICAgIFB5T2JqZWN0ICpmaWxlID0gTlVMTCwgKnBhdGhfbGlzdCA9IE5VTEw7CiAgICAgaW50IGVycjsKLSAgICBjaGFyIGJ1ZltNQVhQQVRITEVOKzFdOwogICAgIEZJTEUgKmZwID0gTlVMTDsKICAgICBzdHJ1Y3QgZmlsZWRlc2NyICpmZHA7CiAKLSAgICBtID0gUHlJbXBvcnRfQWRkTW9kdWxlKG5hbWUpOworICAgIG0gPSBQeUltcG9ydF9BZGRNb2R1bGVPYmplY3QobmFtZSk7CiAgICAgaWYgKG0gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnKQotICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiaW1wb3J0ICVzICMgZGlyZWN0b3J5ICVzXG4iLAotICAgICAgICAgICAgbmFtZSwgcGF0aG5hbWUpOwotICAgIGQgPSBQeU1vZHVsZV9HZXREaWN0KG0pOworICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoImltcG9ydCAlVSAjIGRpcmVjdG9yeSAlUlxuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUsIHBhdGhuYW1lKTsKICAgICBmaWxlID0gZ2V0X3NvdXJjZWZpbGUocGF0aG5hbWUpOwogICAgIGlmIChmaWxlID09IE5VTEwpCi0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgcGF0aCA9IFB5X0J1aWxkVmFsdWUoIltPXSIsIGZpbGUpOwotICAgIGlmIChwYXRoID09IE5VTEwpCi0gICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIHBhdGhfbGlzdCA9IFB5X0J1aWxkVmFsdWUoIltPXSIsIGZpbGUpOworICAgIGlmIChwYXRoX2xpc3QgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYoZmlsZSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICBkID0gUHlNb2R1bGVfR2V0RGljdChtKTsKICAgICBlcnIgPSBQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiX19maWxlX18iLCBmaWxlKTsKKyAgICBQeV9ERUNSRUYoZmlsZSk7CiAgICAgaWYgKGVyciA9PSAwKQotICAgICAgICBlcnIgPSBQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiX19wYXRoX18iLCBwYXRoKTsKLSAgICBpZiAoZXJyICE9IDApCi0gICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgYnVmWzBdID0gJ1wwJzsKLSAgICBmZHAgPSBmaW5kX21vZHVsZShuYW1lLCAiX19pbml0X18iLCBwYXRoLCBidWYsIHNpemVvZihidWYpLCAmZnAsIE5VTEwpOworICAgICAgICBlcnIgPSBQeURpY3RfU2V0SXRlbVN0cmluZyhkLCAiX19wYXRoX18iLCBwYXRoX2xpc3QpOworICAgIGlmIChlcnIgIT0gMCkgeworICAgICAgICBQeV9ERUNSRUYocGF0aF9saXN0KTsKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgfQorICAgIGZkcCA9IGZpbmRfbW9kdWxlKG5hbWUsIGluaXRzdHIsIHBhdGhfbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAmYnVmb2JqLCAmZnAsIE5VTEwpOworICAgIFB5X0RFQ1JFRihwYXRoX2xpc3QpOwogICAgIGlmIChmZHAgPT0gTlVMTCkgewogICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19JbXBvcnRFcnJvcikpIHsKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgICAgICBQeV9JTkNSRUYobSk7CisgICAgICAgICAgICByZXR1cm4gbTsKICAgICAgICAgfQogICAgICAgICBlbHNlCi0gICAgICAgICAgICBtID0gTlVMTDsKLSAgICAgICAgZ290byBjbGVhbnVwOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIG0gPSBsb2FkX21vZHVsZShuYW1lLCBmcCwgYnVmLCBmZHAtPnR5cGUsIE5VTEwpOworICAgIG0gPSBsb2FkX21vZHVsZShuYW1lLCBmcCwgYnVmb2JqLCBmZHAtPnR5cGUsIE5VTEwpOworICAgIFB5X1hERUNSRUYoYnVmb2JqKTsKICAgICBpZiAoZnAgIT0gTlVMTCkKICAgICAgICAgZmNsb3NlKGZwKTsKLSAgICBnb3RvIGNsZWFudXA7Ci0KLSAgZXJyb3I6Ci0gICAgbSA9IE5VTEw7Ci0gIGNsZWFudXA6Ci0gICAgUHlfWERFQ1JFRihwYXRoKTsKLSAgICBQeV9YREVDUkVGKGZpbGUpOwogICAgIHJldHVybiBtOwogfQogCkBAIC0xNDUxLDExICsxNjQ4LDEyIEBACiAvKiBIZWxwZXIgdG8gdGVzdCBmb3IgYnVpbHQtaW4gbW9kdWxlICovCiAKIHN0YXRpYyBpbnQKLWlzX2J1aWx0aW4oY2hhciAqbmFtZSkKK2lzX2J1aWx0aW4oUHlPYmplY3QgKm5hbWUpCiB7Ci0gICAgaW50IGk7CisgICAgaW50IGksIGNtcDsKICAgICBmb3IgKGkgPSAwOyBQeUltcG9ydF9Jbml0dGFiW2ldLm5hbWUgIT0gTlVMTDsgaSsrKSB7Ci0gICAgICAgIGlmIChzdHJjbXAobmFtZSwgUHlJbXBvcnRfSW5pdHRhYltpXS5uYW1lKSA9PSAwKSB7CisgICAgICAgIGNtcCA9IFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKG5hbWUsIFB5SW1wb3J0X0luaXR0YWJbaV0ubmFtZSk7CisgICAgICAgIGlmIChjbXAgPT0gMCkgewogICAgICAgICAgICAgaWYgKFB5SW1wb3J0X0luaXR0YWJbaV0uaW5pdGZ1bmMgPT0gTlVMTCkKICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICBlbHNlCkBAIC0xNTQ5LDQ2ICsxNzQ3LDMxNCBAQAogICAgcGF0aG5hbWUgYW5kIGFuIG9wZW4gZmlsZS4gIFJldHVybiBOVUxMIGlmIHRoZSBtb2R1bGUgaXMgbm90IGZvdW5kLiAqLwogCiAjaWZkZWYgTVNfQ09SRURMTAotZXh0ZXJuIEZJTEUgKlB5V2luX0ZpbmRSZWdpc3RlcmVkTW9kdWxlKGNvbnN0IGNoYXIgKiwgc3RydWN0IGZpbGVkZXNjciAqKiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyICosIFB5X3NzaXplX3QpOworZXh0ZXJuIEZJTEUgKl9QeVdpbl9GaW5kUmVnaXN0ZXJlZE1vZHVsZShQeU9iamVjdCAqLCBzdHJ1Y3QgZmlsZWRlc2NyICoqLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnBfcGF0aCk7CiAjZW5kaWYKIAotc3RhdGljIGludCBjYXNlX29rKGNoYXIgKiwgUHlfc3NpemVfdCwgUHlfc3NpemVfdCwgY2hhciAqKTsKLXN0YXRpYyBpbnQgZmluZF9pbml0X21vZHVsZShjaGFyICopOyAvKiBGb3J3YXJkICovCisvKiBGb3J3YXJkICovCitzdGF0aWMgaW50IGNhc2Vfb2soUHlPYmplY3QgKiwgUHlfc3NpemVfdCwgUHlPYmplY3QgKik7CitzdGF0aWMgaW50IGZpbmRfaW5pdF9tb2R1bGUoUHlPYmplY3QgKik7CiBzdGF0aWMgc3RydWN0IGZpbGVkZXNjciBpbXBvcnRob29rZGVzY3IgPSB7IiIsICIiLCBJTVBfSE9PS307CiAKLXN0YXRpYyBzdHJ1Y3QgZmlsZWRlc2NyICoKLWZpbmRfbW9kdWxlKGNoYXIgKmZ1bGxuYW1lLCBjaGFyICpzdWJuYW1lLCBQeU9iamVjdCAqcGF0aCwgY2hhciAqYnVmLAotICAgICAgICAgICAgc2l6ZV90IGJ1ZmxlbiwgRklMRSAqKnBfZnAsIFB5T2JqZWN0ICoqcF9sb2FkZXIpCisvKiBHZXQgdGhlIHBhdGggb2YgYSBtb2R1bGU6IGdldCBpdHMgaW1wb3J0ZXIgYW5kIGNhbGwgaW1wb3J0ZXIuZmluZF9tb2R1bGUoKQorICAgaG9vaywgb3IgY2hlY2sgaWYgdGhlIG1vZHVsZSBpZiBhIHBhY2thZ2UgKGlmIHBhdGgvX19pbml0X18ucHkgZXhpc3RzKS4KKworICAgIC0xOiBlcnJvcjogYSBQeXRob24gZXJyb3Igb2NjdXJyZWQKKyAgICAgMDogaWdub3JlOiBhbiBlcnJvciBvY2N1cnJlZCBiZWNhdXNlIG9mIGludmFsaWQgZGF0YSwgYnV0IHRoZSBlcnJvciBpcyBub3QKKyAgICAgICAgaW1wb3J0YW50IGVub3VnaCB0byBiZSByZXBvcnRlZC4KKyAgICAgMTogZ2V0IHBhdGg6IG1vZHVsZSBub3QgZm91bmQsIGJ1dCAqYnVmIGNvbnRhaW5zIGl0cyBwYXRoCisgICAgIDI6IGZvdW5kOiAqcF9mZCBpcyB0aGUgZmlsZSBkZXNjcmlwdG9yIChJTVBfSE9PSyBvciBQS0dfRElSRUNUT1JZKQorICAgICAgICBhbmQgKmJ1ZiBpcyB0aGUgcGF0aCAqLworCitzdGF0aWMgaW50CitmaW5kX21vZHVsZV9wYXRoKFB5T2JqZWN0ICpmdWxsbmFtZSwgUHlPYmplY3QgKm5hbWUsIFB5T2JqZWN0ICpwYXRoLAorICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcGF0aF9ob29rcywgUHlPYmplY3QgKnBhdGhfaW1wb3J0ZXJfY2FjaGUsCisgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICoqcF9wYXRoLCBQeU9iamVjdCAqKnBfbG9hZGVyLCBzdHJ1Y3QgZmlsZWRlc2NyICoqcF9mZCkKK3sKKyAgICBQeU9iamVjdCAqcGF0aF91bmljb2RlLCAqZmlsZW5hbWUgPSBOVUxMOworICAgIFB5X3NzaXplX3QgbGVuLCBwb3M7CisgICAgc3RydWN0IHN0YXQgc3RhdGJ1ZjsKKyAgICBzdGF0aWMgc3RydWN0IGZpbGVkZXNjciBmZF9wYWNrYWdlID0geyIiLCAiIiwgUEtHX0RJUkVDVE9SWX07CisgICAgaW50IGVyciwgcmVzdWx0LCBhZGRzZXA7CisKKyAgICBpZiAoUHlVbmljb2RlX0NoZWNrKHBhdGgpKSB7CisgICAgICAgIFB5X0lOQ1JFRihwYXRoKTsKKyAgICAgICAgcGF0aF91bmljb2RlID0gcGF0aDsKKyAgICB9CisgICAgZWxzZSBpZiAoUHlCeXRlc19DaGVjayhwYXRoKSkgeworICAgICAgICBwYXRoX3VuaWNvZGUgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZSgKKyAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGgpLCBQeUJ5dGVzX0dFVF9TSVpFKHBhdGgpKTsKKyAgICAgICAgaWYgKHBhdGhfdW5pY29kZSA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBlbHNlCisgICAgICAgIHJldHVybiAwOworCisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShwYXRoX3VuaWNvZGUpKQorICAgICAgICByZXR1cm4gLTE7CisKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChwYXRoX3VuaWNvZGUpOworICAgIGlmIChQeVVuaWNvZGVfRmluZENoYXIocGF0aF91bmljb2RlLCAwLCAwLCBsZW4sIDEpICE9IC0xKSB7CisgICAgICAgIHJlc3VsdCA9IDA7CisgICAgICAgIGdvdG8gb3V0OyAgLyogcGF0aCBjb250YWlucyAnXDAnICovCisgICAgfQorCisgICAgLyogc3lzLnBhdGhfaG9va3MgaW1wb3J0IGhvb2sgKi8KKyAgICBpZiAocF9sb2FkZXIgIT0gTlVMTCkgeworICAgICAgICBfUHlfSURFTlRJRklFUihmaW5kX21vZHVsZSk7CisgICAgICAgIFB5T2JqZWN0ICppbXBvcnRlcjsKKworICAgICAgICBpbXBvcnRlciA9IGdldF9wYXRoX2ltcG9ydGVyKHBhdGhfaW1wb3J0ZXJfY2FjaGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aF9ob29rcywgcGF0aCk7CisgICAgICAgIGlmIChpbXBvcnRlciA9PSBOVUxMKSB7CisgICAgICAgICAgICByZXN1bHQgPSAtMTsKKyAgICAgICAgICAgIGdvdG8gb3V0OworICAgICAgICB9CisgICAgICAgIC8qIE5vdGU6IGltcG9ydGVyIGlzIGEgYm9ycm93ZWQgcmVmZXJlbmNlICovCisgICAgICAgIGlmIChpbXBvcnRlciAhPSBQeV9Ob25lKSB7CisgICAgICAgICAgICBQeU9iamVjdCAqbG9hZGVyOworICAgICAgICAgICAgbG9hZGVyID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChpbXBvcnRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlB5SWRfZmluZF9tb2R1bGUsICJPIiwgZnVsbG5hbWUpOworICAgICAgICAgICAgaWYgKGxvYWRlciA9PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgcmVzdWx0ID0gLTE7IC8qIGVycm9yICovCisgICAgICAgICAgICAgICAgZ290byBvdXQ7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAobG9hZGVyICE9IFB5X05vbmUpIHsKKyAgICAgICAgICAgICAgICAvKiBhIGxvYWRlciB3YXMgZm91bmQgKi8KKyAgICAgICAgICAgICAgICAqcF9sb2FkZXIgPSBsb2FkZXI7CisgICAgICAgICAgICAgICAgKnBfZmQgPSAmaW1wb3J0aG9va2Rlc2NyOworICAgICAgICAgICAgICAgIHJlc3VsdCA9IDI7CisgICAgICAgICAgICAgICAgZ290byBvdXQ7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBQeV9ERUNSRUYobG9hZGVyKTsKKyAgICAgICAgICAgIHJlc3VsdCA9IDA7CisgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgfQorICAgIH0KKyAgICAvKiBubyBob29rIHdhcyBmb3VuZCwgdXNlIGJ1aWx0aW4gaW1wb3J0ICovCisKKyAgICBhZGRzZXAgPSAwOworICAgIGlmIChsZW4gPiAwICYmIFB5VW5pY29kZV9SRUFEX0NIQVIocGF0aF91bmljb2RlLCBsZW4tMSkgIT0gU0VQCisjaWZkZWYgQUxUU0VQCisgICAgICAgICYmIFB5VW5pY29kZV9SRUFEX0NIQVIocGF0aF91bmljb2RlLCBsZW4tMSkgIT0gQUxUU0VQCisjZW5kaWYKKyAgICAgICAgKQorICAgICAgICBhZGRzZXAgPSAxOworICAgIGZpbGVuYW1lID0gUHlVbmljb2RlX05ldyhsZW4gKyBQeVVuaWNvZGVfR0VUX0xFTkdUSChuYW1lKSArIGFkZHNlcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfTUFYKFB5VW5pY29kZV9NQVhfQ0hBUl9WQUxVRShwYXRoX3VuaWNvZGUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX01BWF9DSEFSX1ZBTFVFKG5hbWUpKSk7CisgICAgaWYgKGZpbGVuYW1lID09IE5VTEwpIHsKKyAgICAgICAgcmVzdWx0ID0gLTE7CisgICAgICAgIGdvdG8gb3V0OworICAgIH0KKyAgICBQeVVuaWNvZGVfQ29weUNoYXJhY3RlcnMoZmlsZW5hbWUsIDAsIHBhdGhfdW5pY29kZSwgMCwgbGVuKTsKKyAgICBwb3MgPSBsZW47CisgICAgaWYgKGFkZHNlcCkKKyAgICAgICAgUHlVbmljb2RlX1dSSVRFKFB5VW5pY29kZV9LSU5EKGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9EQVRBKGZpbGVuYW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHBvcysrLCBTRVApOworICAgIFB5VW5pY29kZV9Db3B5Q2hhcmFjdGVycyhmaWxlbmFtZSwgcG9zLCBuYW1lLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfR0VUX0xFTkdUSChuYW1lKSk7CisKKyAgICAvKiBDaGVjayBmb3IgcGFja2FnZSBpbXBvcnQgKGJ1ZiBob2xkcyBhIGRpcmVjdG9yeSBuYW1lLAorICAgICAgIGFuZCB0aGVyZSdzIGFuIF9faW5pdF9fIG1vZHVsZSBpbiB0aGF0IGRpcmVjdG9yeSAqLworI2lmZGVmIEhBVkVfU1RBVAorICAgIGVyciA9IF9QeV9zdGF0KGZpbGVuYW1lLCAmc3RhdGJ1Zik7CisgICAgaWYgKGVyciA9PSAtMikgeworICAgICAgICByZXN1bHQgPSAtMTsKKyAgICAgICAgZ290byBvdXQ7CisgICAgfQorICAgIGlmIChlcnIgPT0gMCAmJiAgICAgICAgIC8qIGl0IGV4aXN0cyAqLworICAgICAgICBTX0lTRElSKHN0YXRidWYuc3RfbW9kZSkpICAgICAgICAgICAvKiBpdCdzIGEgZGlyZWN0b3J5ICovCisgICAgeworICAgICAgICBpbnQgbWF0Y2g7CisKKyAgICAgICAgbWF0Y2ggPSBjYXNlX29rKGZpbGVuYW1lLCAwLCBuYW1lKTsKKyAgICAgICAgaWYgKG1hdGNoIDwgMCkgeworICAgICAgICAgICAgcmVzdWx0ID0gLTE7CisgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgfQorICAgICAgICBpZiAobWF0Y2gpIHsgLyogY2FzZSBtYXRjaGVzICovCisgICAgICAgICAgICBpZiAoZmluZF9pbml0X21vZHVsZShmaWxlbmFtZSkpIHsgLyogYW5kIGhhcyBfX2luaXRfXy5weSAqLworICAgICAgICAgICAgICAgICpwX3BhdGggPSBmaWxlbmFtZTsKKyAgICAgICAgICAgICAgICBmaWxlbmFtZSA9IE5VTEw7CisgICAgICAgICAgICAgICAgKnBfZmQgPSAmZmRfcGFja2FnZTsKKyAgICAgICAgICAgICAgICByZXN1bHQgPSAyOworICAgICAgICAgICAgICAgIGdvdG8gb3V0OworICAgICAgICAgICAgfQorICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgaW50IGVycjsKKyAgICAgICAgICAgICAgICBlcnIgPSBQeUVycl9XYXJuRm9ybWF0KFB5RXhjX0ltcG9ydFdhcm5pbmcsIDEsCisgICAgICAgICAgICAgICAgICAgICJOb3QgaW1wb3J0aW5nIGRpcmVjdG9yeSAlUjogbWlzc2luZyBfX2luaXRfXy5weSIsCisgICAgICAgICAgICAgICAgICAgIGZpbGVuYW1lKTsKKyAgICAgICAgICAgICAgICBpZiAoZXJyKSB7CisgICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IC0xOworICAgICAgICAgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisjZW5kaWYKKyAgICAqcF9wYXRoID0gZmlsZW5hbWU7CisgICAgZmlsZW5hbWUgPSBOVUxMOworICAgIHJlc3VsdCA9IDE7CisgIG91dDoKKyAgICBQeV9ERUNSRUYocGF0aF91bmljb2RlKTsKKyAgICBQeV9YREVDUkVGKGZpbGVuYW1lKTsKKyAgICByZXR1cm4gcmVzdWx0OworfQorCisvKiBGaW5kIGEgbW9kdWxlIGluIHNlYXJjaF9wYXRoX2xpc3QuIEZvciBlYWNoIHBhdGgsIHRyeQorICAgZmluZF9tb2R1bGVfcGF0aCgpIG9yIHRyeSBlYWNoIF9QeUltcG9ydF9GaWxldGFiIHN1ZmZpeC4KKworICAgSWYgdGhlIG1vZHVsZSBpcyBmb3VuZCwgcmV0dXJuIGEgZmlsZSBkZXNjcmlwdG9yLCB3cml0ZSB0aGUgcGF0aCBpbgorICAgKnBfZmlsZW5hbWUsIHdyaXRlIHRoZSBwb2ludGVyIHRvIHRoZSBmaWxlIG9iamVjdCBpbnRvICpwX2ZwLCBhbmQgKGlmCisgICBwX2xvYWRlciBpcyBub3QgTlVMTCkgdGhlIGxvYWRlciBpbnRvICpwX2xvYWRlci4KKworICAgT3RoZXJ3aXNlLCByYWlzZSBhbiBleGNlcHRpb24gYW5kIHJldHVybiBOVUxMLiAqLworCitzdGF0aWMgc3RydWN0IGZpbGVkZXNjcioKK2ZpbmRfbW9kdWxlX3BhdGhfbGlzdChQeU9iamVjdCAqZnVsbG5hbWUsIFB5T2JqZWN0ICpuYW1lLAorICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpzZWFyY2hfcGF0aF9saXN0LCBQeU9iamVjdCAqcGF0aF9ob29rcywKKyAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcGF0aF9pbXBvcnRlcl9jYWNoZSwKKyAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnBfcGF0aCwgRklMRSAqKnBfZnAsIFB5T2JqZWN0ICoqcF9sb2FkZXIpCiB7CiAgICAgUHlfc3NpemVfdCBpLCBucGF0aDsKLSAgICBzaXplX3QgbGVuLCBuYW1lbGVuOwogICAgIHN0cnVjdCBmaWxlZGVzY3IgKmZkcCA9IE5VTEw7CiAgICAgY2hhciAqZmlsZW1vZGU7CiAgICAgRklMRSAqZnAgPSBOVUxMOwotICAgIFB5T2JqZWN0ICpwYXRoX2hvb2tzLCAqcGF0aF9pbXBvcnRlcl9jYWNoZTsKLSAgICBzdHJ1Y3Qgc3RhdCBzdGF0YnVmOworICAgIFB5T2JqZWN0ICpwcmVmaXgsICpmaWxlbmFtZTsKKyAgICBpbnQgbWF0Y2g7CisgICAgaW50IGVycjsKKworICAgIG5wYXRoID0gUHlMaXN0X1NpemUoc2VhcmNoX3BhdGhfbGlzdCk7CisgICAgZm9yIChpID0gMDsgaSA8IG5wYXRoOyBpKyspIHsKKyAgICAgICAgUHlPYmplY3QgKnBhdGg7CisgICAgICAgIGludCBvazsKKworICAgICAgICBwYXRoID0gUHlMaXN0X0dldEl0ZW0oc2VhcmNoX3BhdGhfbGlzdCwgaSk7CisgICAgICAgIGlmIChwYXRoID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKworICAgICAgICBwcmVmaXggPSBOVUxMOworICAgICAgICBvayA9IGZpbmRfbW9kdWxlX3BhdGgoZnVsbG5hbWUsIG5hbWUsIHBhdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXRoX2hvb2tzLCBwYXRoX2ltcG9ydGVyX2NhY2hlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnByZWZpeCwgcF9sb2FkZXIsICZmZHApOworICAgICAgICBpZiAob2sgPCAwKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIGlmIChvayA9PSAwKQorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIGlmIChvayA9PSAyKSB7CisgICAgICAgICAgICAqcF9wYXRoID0gcHJlZml4OworICAgICAgICAgICAgcmV0dXJuIGZkcDsKKyAgICAgICAgfQorCisgICAgICAgIGZvciAoZmRwID0gX1B5SW1wb3J0X0ZpbGV0YWI7IGZkcC0+c3VmZml4ICE9IE5VTEw7IGZkcCsrKSB7CisgICAgICAgICAgICBzdHJ1Y3Qgc3RhdCBzdGF0YnVmOworCisgICAgICAgICAgICBmaWxlbW9kZSA9IGZkcC0+bW9kZTsKKyAgICAgICAgICAgIGlmIChmaWxlbW9kZVswXSA9PSAnVScpCisgICAgICAgICAgICAgICAgZmlsZW1vZGUgPSAiciIgUFlfU1RESU9URVhUTU9ERTsKKworICAgICAgICAgICAgZmlsZW5hbWUgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVUlcyIsIHByZWZpeCwgZmRwLT5zdWZmaXgpOworICAgICAgICAgICAgaWYgKGZpbGVuYW1lID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYocHJlZml4KTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaWYgKFB5X1ZlcmJvc2VGbGFnID4gMSkKKyAgICAgICAgICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoIiMgdHJ5aW5nICVSXG4iLCBmaWxlbmFtZSk7CisKKyAgICAgICAgICAgIGVyciA9IF9QeV9zdGF0KGZpbGVuYW1lLCAmc3RhdGJ1Zik7CisgICAgICAgICAgICBpZiAoZXJyID09IC0yKSB7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHByZWZpeCk7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChlcnIgIT0gMCB8fCBTX0lTRElSKHN0YXRidWYuc3RfbW9kZSkpIHsKKyAgICAgICAgICAgICAgICAvKiBpdCBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIGEgZGlyZWN0b3J5ICovCisgICAgICAgICAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnAgPSBfUHlfZm9wZW4oZmlsZW5hbWUsIGZpbGVtb2RlKTsKKyAgICAgICAgICAgIGlmIChmcCA9PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgICAgICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkgeworICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYocHJlZml4KTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgfQorICAgICAgICAgICAgbWF0Y2ggPSBjYXNlX29rKGZpbGVuYW1lLCAtKFB5X3NzaXplX3Qpc3RybGVuKGZkcC0+c3VmZml4KSwgbmFtZSk7CisgICAgICAgICAgICBpZiAobWF0Y2ggPCAwKSB7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKHByZWZpeCk7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlmIChtYXRjaCkgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihwcmVmaXgpOworICAgICAgICAgICAgICAgICpwX3BhdGggPSBmaWxlbmFtZTsKKyAgICAgICAgICAgICAgICAqcF9mcCA9IGZwOworICAgICAgICAgICAgICAgIHJldHVybiBmZHA7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBQeV9ERUNSRUYoZmlsZW5hbWUpOworCisgICAgICAgICAgICBmY2xvc2UoZnApOworICAgICAgICAgICAgZnAgPSBOVUxMOworICAgICAgICB9CisgICAgICAgIFB5X0RFQ1JFRihwcmVmaXgpOworICAgIH0KKyAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCisgICAgICAgICAgICAgICAgICJObyBtb2R1bGUgbmFtZWQgJVIiLCBuYW1lKTsKKyAgICByZXR1cm4gTlVMTDsKK30KKworLyogRmluZCBhIG1vZHVsZToKKworICAgLSB0cnkgZmluZF9tb2R1bGUoKSBvZiBlYWNoIHN5cy5tZXRhX3BhdGggaG9vaworICAgLSB0cnkgZmluZF9mcm96ZW4oKQorICAgLSB0cnkgaXNfYnVpbHRpbigpCisgICAtIHRyeSBfUHlXaW5fRmluZFJlZ2lzdGVyZWRNb2R1bGUoKSAoV2luZG93cyBvbmx5KQorICAgLSBvdGhlcndpc2UsIGNhbGwgZmluZF9tb2R1bGVfcGF0aF9saXN0KCkgd2l0aCBzZWFyY2hfcGF0aF9saXN0IChpZiBub3QKKyAgICAgTlVMTCkgb3Igc3lzLnBhdGgKKworICAgZnVsbG5hbWUgY2FuIGJlIE5VTEwsIGJ1dCBvbmx5IGlmIHBfbG9hZGVyIGlzIE5VTEwuCisKKyAgIFJldHVybjoKKworICAgLSAmZmRfYnVpbHRpbiAoQ19CVUlMVElOKSBpZiBpdCBpcyBhIGJ1aWx0aW4KKyAgIC0gJmZkX2Zyb3plbiAoUFlfRlJPWkVOKSBpZiBpdCBpcyBmcm96ZW4KKyAgIC0gJmZkX3BhY2thZ2UgKFBLR19ESVJFQ1RPUlkpIGFuZCB3cml0ZSB0aGUgZmlsZW5hbWUgaW50byAqcF9wYXRoCisgICAgIGlmIGl0IGlzIGEgcGFja2FnZQorICAgLSAmaW1wb3J0aG9va2Rlc2NyIChJTVBfSE9PSykgYW5kIHdyaXRlIHRoZSBsb2FkZXIgaW50byAqcF9sb2FkZXIgaWYgYQorICAgICBpbXBvcnRlciBsb2FkZXIgd2FzIGZvdW5kCisgICAtIGEgZmlsZSBkZXNjcmlwdG9yIChQWV9TT1VSQ0UsIFBZX0NPTVBJTEVELCBDX0VYVEVOU0lPTiwgUFlfUkVTT1VSQ0Ugb3IKKyAgICAgUFlfQ09ERVJFU09VUkNFOiBzZWUgX1B5SW1wb3J0X0ZpbGV0YWIpLCB3cml0ZSB0aGUgZmlsZW5hbWUgaW50bworICAgICAqcF9wYXRoIGFuZCB0aGUgcG9pbnRlciB0byB0aGUgb3BlbiBmaWxlIGludG8gKnBfZnAKKyAgIC0gTlVMTCBvbiBlcnJvcgorCisgICBCeSBkZWZhdWx0LCAqcF9wYXRoLCAqcF9mcCBhbmQgKnBfbG9hZGVyIChpZiBzZXQpIGFyZSBzZXQgdG8gTlVMTC4KKyAgIEVnLiAqcF9wYXRoIGlzIHNldCB0byBOVUxMIGZvciBhIGJ1aWx0aW4gcGFja2FnZS4KKyovCisKK3N0YXRpYyBzdHJ1Y3QgZmlsZWRlc2NyICoKK2ZpbmRfbW9kdWxlKFB5T2JqZWN0ICpmdWxsbmFtZSwgUHlPYmplY3QgKm5hbWUsIFB5T2JqZWN0ICpzZWFyY2hfcGF0aF9saXN0LAorICAgICAgICAgICAgUHlPYmplY3QgKipwX3BhdGgsIEZJTEUgKipwX2ZwLCBQeU9iamVjdCAqKnBfbG9hZGVyKQoreworICAgIFB5X3NzaXplX3QgaSwgbnBhdGg7CiAgICAgc3RhdGljIHN0cnVjdCBmaWxlZGVzY3IgZmRfZnJvemVuID0geyIiLCAiIiwgUFlfRlJPWkVOfTsKICAgICBzdGF0aWMgc3RydWN0IGZpbGVkZXNjciBmZF9idWlsdGluID0geyIiLCAiIiwgQ19CVUlMVElOfTsKLSAgICBzdGF0aWMgc3RydWN0IGZpbGVkZXNjciBmZF9wYWNrYWdlID0geyIiLCAiIiwgUEtHX0RJUkVDVE9SWX07Ci0gICAgY2hhciBuYW1lW01BWFBBVEhMRU4rMV07Ci0jaWYgZGVmaW5lZChQWU9TX09TMikKLSAgICBzaXplX3Qgc2F2ZWRfbGVuOwotICAgIHNpemVfdCBzYXZlZF9uYW1lbGVuOwotICAgIGNoYXIgKnNhdmVkX2J1ZiA9IE5VTEw7Ci0jZW5kaWYKKyAgICBQeU9iamVjdCAqcGF0aF9ob29rcywgKnBhdGhfaW1wb3J0ZXJfY2FjaGU7CisKKyAgICAqcF9wYXRoID0gTlVMTDsKKyAgICAqcF9mcCA9IE5VTEw7CiAgICAgaWYgKHBfbG9hZGVyICE9IE5VTEwpCiAgICAgICAgICpwX2xvYWRlciA9IE5VTEw7CiAKLSAgICBpZiAoc3RybGVuKHN1Ym5hbWUpID4gTUFYUEFUSExFTikgewotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfT3ZlcmZsb3dFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJtb2R1bGUgbmFtZSBpcyB0b28gbG9uZyIpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgc3RyY3B5KG5hbWUsIHN1Ym5hbWUpOwotCiAgICAgLyogc3lzLm1ldGFfcGF0aCBpbXBvcnQgaG9vayAqLwogICAgIGlmIChwX2xvYWRlciAhPSBOVUxMKSB7CisgICAgICAgIF9QeV9JREVOVElGSUVSKGZpbmRfbW9kdWxlKTsKICAgICAgICAgUHlPYmplY3QgKm1ldGFfcGF0aDsKIAogICAgICAgICBtZXRhX3BhdGggPSBQeVN5c19HZXRPYmplY3QoIm1ldGFfcGF0aCIpOwpAQCAtMTYwMywxMCArMjA2OSwxMCBAQAogICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbnBhdGg7IGkrKykgewogICAgICAgICAgICAgUHlPYmplY3QgKmxvYWRlcjsKICAgICAgICAgICAgIFB5T2JqZWN0ICpob29rID0gUHlMaXN0X0dldEl0ZW0obWV0YV9wYXRoLCBpKTsKLSAgICAgICAgICAgIGxvYWRlciA9IFB5T2JqZWN0X0NhbGxNZXRob2QoaG9vaywgImZpbmRfbW9kdWxlIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNPIiwgZnVsbG5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGggIT0gTlVMTCA/Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhdGggOiBQeV9Ob25lKTsKKyAgICAgICAgICAgIGxvYWRlciA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoaG9vaywgJlB5SWRfZmluZF9tb2R1bGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJPTyIsIGZ1bGxuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hfcGF0aF9saXN0ICE9IE5VTEwgPworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hfcGF0aF9saXN0IDogUHlfTm9uZSk7CiAgICAgICAgICAgICBpZiAobG9hZGVyID09IE5VTEwpIHsKICAgICAgICAgICAgICAgICBQeV9ERUNSRUYobWV0YV9wYXRoKTsKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsgIC8qIHRydWUgZXJyb3IgKi8KQEAgLTE2MjIsMjcgKzIwODgsMjkgQEAKICAgICAgICAgUHlfREVDUkVGKG1ldGFfcGF0aCk7CiAgICAgfQogCi0gICAgaWYgKGZpbmRfZnJvemVuKGZ1bGxuYW1lKSAhPSBOVUxMKSB7Ci0gICAgICAgIHN0cmNweShidWYsIGZ1bGxuYW1lKTsKKyAgICBpZiAoZmluZF9mcm96ZW4oZnVsbG5hbWUpICE9IE5VTEwpCiAgICAgICAgIHJldHVybiAmZmRfZnJvemVuOwotICAgIH0KIAotICAgIGlmIChwYXRoID09IE5VTEwpIHsKLSAgICAgICAgaWYgKGlzX2J1aWx0aW4obmFtZSkpIHsKLSAgICAgICAgICAgIHN0cmNweShidWYsIG5hbWUpOwotICAgICAgICAgICAgcmV0dXJuICZmZF9idWlsdGluOwotICAgICAgICB9CisgICAgaWYgKHNlYXJjaF9wYXRoX2xpc3QgPT0gTlVMTCkgewogI2lmZGVmIE1TX0NPUkVETEwKLSAgICAgICAgZnAgPSBQeVdpbl9GaW5kUmVnaXN0ZXJlZE1vZHVsZShuYW1lLCAmZmRwLCBidWYsIGJ1Zmxlbik7CisgICAgICAgIEZJTEUgKmZwOworICAgICAgICBzdHJ1Y3QgZmlsZWRlc2NyICpmZHA7CisjZW5kaWYKKyAgICAgICAgaWYgKGlzX2J1aWx0aW4obmFtZSkpCisgICAgICAgICAgICByZXR1cm4gJmZkX2J1aWx0aW47CisjaWZkZWYgTVNfQ09SRURMTAorICAgICAgICBmcCA9IF9QeVdpbl9GaW5kUmVnaXN0ZXJlZE1vZHVsZShuYW1lLCAmZmRwLCBwX3BhdGgpOwogICAgICAgICBpZiAoZnAgIT0gTlVMTCkgewogICAgICAgICAgICAgKnBfZnAgPSBmcDsKICAgICAgICAgICAgIHJldHVybiBmZHA7CiAgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoUHlFcnJfT2NjdXJyZWQoKSkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOwogI2VuZGlmCi0gICAgICAgIHBhdGggPSBQeVN5c19HZXRPYmplY3QoInBhdGgiKTsKKyAgICAgICAgc2VhcmNoX3BhdGhfbGlzdCA9IFB5U3lzX0dldE9iamVjdCgicGF0aCIpOwogICAgIH0KIAotICAgIGlmIChwYXRoID09IE5VTEwgfHwgIVB5TGlzdF9DaGVjayhwYXRoKSkgeworICAgIGlmIChzZWFyY2hfcGF0aF9saXN0ID09IE5VTEwgfHwgIVB5TGlzdF9DaGVjayhzZWFyY2hfcGF0aF9saXN0KSkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfUnVudGltZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgInN5cy5wYXRoIG11c3QgYmUgYSBsaXN0IG9mIGRpcmVjdG9yeSBuYW1lcyIpOwogICAgICAgICByZXR1cm4gTlVMTDsKQEAgLTE2NjMsMTgzICsyMTMxLDEzIEBACiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIG5wYXRoID0gUHlMaXN0X1NpemUocGF0aCk7Ci0gICAgbmFtZWxlbiA9IHN0cmxlbihuYW1lKTsKLSAgICBmb3IgKGkgPSAwOyBpIDwgbnBhdGg7IGkrKykgewotICAgICAgICBQeU9iamVjdCAqdiA9IFB5TGlzdF9HZXRJdGVtKHBhdGgsIGkpOwotICAgICAgICBQeU9iamVjdCAqb3JpZ3YgPSB2OwotICAgICAgICBjb25zdCBjaGFyICpiYXNlOwotICAgICAgICBQeV9zc2l6ZV90IHNpemU7Ci0gICAgICAgIGlmICghdikKLSAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICBpZiAoUHlVbmljb2RlX0NoZWNrKHYpKSB7Ci0gICAgICAgICAgICB2ID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdCh2KTsKLSAgICAgICAgICAgIGlmICh2ID09IE5VTEwpCi0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgZWxzZSBpZiAoIVB5Qnl0ZXNfQ2hlY2sodikpCi0gICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgUHlfSU5DUkVGKHYpOwotCi0gICAgICAgIGJhc2UgPSBQeUJ5dGVzX0FTX1NUUklORyh2KTsKLSAgICAgICAgc2l6ZSA9IFB5Qnl0ZXNfR0VUX1NJWkUodik7Ci0gICAgICAgIGxlbiA9IHNpemU7Ci0gICAgICAgIGlmIChsZW4gKyAyICsgbmFtZWxlbiArIE1BWFNVRkZJWFNJWkUgPj0gYnVmbGVuKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYodik7Ci0gICAgICAgICAgICBjb250aW51ZTsgLyogVG9vIGxvbmcgKi8KLSAgICAgICAgfQotICAgICAgICBzdHJjcHkoYnVmLCBiYXNlKTsKLSAgICAgICAgUHlfREVDUkVGKHYpOwotCi0gICAgICAgIGlmIChzdHJsZW4oYnVmKSAhPSBsZW4pIHsKLSAgICAgICAgICAgIGNvbnRpbnVlOyAvKiB2IGNvbnRhaW5zICdcMCcgKi8KLSAgICAgICAgfQotCi0gICAgICAgIC8qIHN5cy5wYXRoX2hvb2tzIGltcG9ydCBob29rICovCi0gICAgICAgIGlmIChwX2xvYWRlciAhPSBOVUxMKSB7Ci0gICAgICAgICAgICBQeU9iamVjdCAqaW1wb3J0ZXI7Ci0KLSAgICAgICAgICAgIGltcG9ydGVyID0gZ2V0X3BhdGhfaW1wb3J0ZXIocGF0aF9pbXBvcnRlcl9jYWNoZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aF9ob29rcywgb3JpZ3YpOwotICAgICAgICAgICAgaWYgKGltcG9ydGVyID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIC8qIE5vdGU6IGltcG9ydGVyIGlzIGEgYm9ycm93ZWQgcmVmZXJlbmNlICovCi0gICAgICAgICAgICBpZiAoaW1wb3J0ZXIgIT0gUHlfTm9uZSkgewotICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpsb2FkZXI7Ci0gICAgICAgICAgICAgICAgbG9hZGVyID0gUHlPYmplY3RfQ2FsbE1ldGhvZChpbXBvcnRlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJmaW5kX21vZHVsZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyIsIGZ1bGxuYW1lKTsKLSAgICAgICAgICAgICAgICBpZiAobG9hZGVyID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOyAgLyogZXJyb3IgKi8KLSAgICAgICAgICAgICAgICBpZiAobG9hZGVyICE9IFB5X05vbmUpIHsKLSAgICAgICAgICAgICAgICAgICAgLyogYSBsb2FkZXIgd2FzIGZvdW5kICovCi0gICAgICAgICAgICAgICAgICAgICpwX2xvYWRlciA9IGxvYWRlcjsKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuICZpbXBvcnRob29rZGVzY3I7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihsb2FkZXIpOwotICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICAgIC8qIG5vIGhvb2sgd2FzIGZvdW5kLCB1c2UgYnVpbHRpbiBpbXBvcnQgKi8KLQotICAgICAgICBpZiAobGVuID4gMCAmJiBidWZbbGVuLTFdICE9IFNFUAotI2lmZGVmIEFMVFNFUAotICAgICAgICAgICAgJiYgYnVmW2xlbi0xXSAhPSBBTFRTRVAKLSNlbmRpZgotICAgICAgICAgICAgKQotICAgICAgICAgICAgYnVmW2xlbisrXSA9IFNFUDsKLSAgICAgICAgc3RyY3B5KGJ1ZitsZW4sIG5hbWUpOwotICAgICAgICBsZW4gKz0gbmFtZWxlbjsKLQotICAgICAgICAvKiBDaGVjayBmb3IgcGFja2FnZSBpbXBvcnQgKGJ1ZiBob2xkcyBhIGRpcmVjdG9yeSBuYW1lLAotICAgICAgICAgICBhbmQgdGhlcmUncyBhbiBfX2luaXRfXyBtb2R1bGUgaW4gdGhhdCBkaXJlY3RvcnkgKi8KLSNpZmRlZiBIQVZFX1NUQVQKLSAgICAgICAgaWYgKHN0YXQoYnVmLCAmc3RhdGJ1ZikgPT0gMCAmJiAgICAgICAgIC8qIGl0IGV4aXN0cyAqLwotICAgICAgICAgICAgU19JU0RJUihzdGF0YnVmLnN0X21vZGUpICYmICAgICAgICAgLyogaXQncyBhIGRpcmVjdG9yeSAqLwotICAgICAgICAgICAgY2FzZV9vayhidWYsIGxlbiwgbmFtZWxlbiwgbmFtZSkpIHsgLyogY2FzZSBtYXRjaGVzICovCi0gICAgICAgICAgICBpZiAoZmluZF9pbml0X21vZHVsZShidWYpKSB7IC8qIGFuZCBoYXMgX19pbml0X18ucHkgKi8KLSAgICAgICAgICAgICAgICByZXR1cm4gJmZkX3BhY2thZ2U7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICBpbnQgZXJyOwotICAgICAgICAgICAgICAgIFB5T2JqZWN0ICp1bmljb2RlID0gUHlVbmljb2RlX0RlY29kZUZTRGVmYXVsdChidWYpOwotICAgICAgICAgICAgICAgIGlmICh1bmljb2RlID09IE5VTEwpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgICAgIGVyciA9IFB5RXJyX1dhcm5Gb3JtYXQoUHlFeGNfSW1wb3J0V2FybmluZywgMSwKLSAgICAgICAgICAgICAgICAgICAgIk5vdCBpbXBvcnRpbmcgZGlyZWN0b3J5ICclVSc6IG1pc3NpbmcgX19pbml0X18ucHkiLAotICAgICAgICAgICAgICAgICAgICB1bmljb2RlKTsKLSAgICAgICAgICAgICAgICBQeV9ERUNSRUYodW5pY29kZSk7Ci0gICAgICAgICAgICAgICAgaWYgKGVycikKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSNlbmRpZgotI2lmIGRlZmluZWQoUFlPU19PUzIpCi0gICAgICAgIC8qIHRha2UgYSBzbmFwc2hvdCBvZiB0aGUgbW9kdWxlIHNwZWMgZm9yIHJlc3RvcmF0aW9uCi0gICAgICAgICAqIGFmdGVyIHRoZSA4IGNoYXJhY3RlciBETEwgaGFja2VyeQotICAgICAgICAgKi8KLSAgICAgICAgc2F2ZWRfYnVmID0gc3RyZHVwKGJ1Zik7Ci0gICAgICAgIHNhdmVkX2xlbiA9IGxlbjsKLSAgICAgICAgc2F2ZWRfbmFtZWxlbiA9IG5hbWVsZW47Ci0jZW5kaWYgLyogUFlPU19PUzIgKi8KLSAgICAgICAgZm9yIChmZHAgPSBfUHlJbXBvcnRfRmlsZXRhYjsgZmRwLT5zdWZmaXggIT0gTlVMTDsgZmRwKyspIHsKLSAgICAgICAgICAgIHN0cnVjdCBzdGF0IHN0YXRidWY7Ci0jaWYgZGVmaW5lZChQWU9TX09TMikgJiYgZGVmaW5lZChIQVZFX0RZTkFNSUNfTE9BRElORykKLSAgICAgICAgICAgIC8qIE9TLzIgbGltaXRzIERMTHMgdG8gOCBjaGFyYWN0ZXIgbmFtZXMgKHcvbwotICAgICAgICAgICAgICAgZXh0ZW5zaW9uKQotICAgICAgICAgICAgICogc28gaWYgdGhlIG5hbWUgaXMgbG9uZ2VyIHRoYW4gdGhhdCBhbmQgaXRzIGEKLSAgICAgICAgICAgICAqIGR5bmFtaWNhbGx5IGxvYWRlZCBtb2R1bGUgd2UncmUgZ29pbmcgdG8gdHJ5LAotICAgICAgICAgICAgICogdHJ1bmNhdGUgdGhlIG5hbWUgYmVmb3JlIHRyeWluZwotICAgICAgICAgICAgICovCi0gICAgICAgICAgICBpZiAoc3RybGVuKHN1Ym5hbWUpID4gOCkgewotICAgICAgICAgICAgICAgIC8qIGlzIHRoaXMgYW4gYXR0ZW1wdCB0byBsb2FkIGEgQyBleHRlbnNpb24/ICovCi0gICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IGZpbGVkZXNjciAqc2NhbjsKLSAgICAgICAgICAgICAgICBzY2FuID0gX1B5SW1wb3J0X0R5bkxvYWRGaWxldGFiOwotICAgICAgICAgICAgICAgIHdoaWxlIChzY2FuLT5zdWZmaXggIT0gTlVMTCkgewotICAgICAgICAgICAgICAgICAgICBpZiAoIXN0cmNtcChzY2FuLT5zdWZmaXgsIGZkcC0+c3VmZml4KSkKLSAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgICAgICBzY2FuKys7Ci0gICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgIGlmIChzY2FuLT5zdWZmaXggIT0gTlVMTCkgewotICAgICAgICAgICAgICAgICAgICAvKiB5ZXMsIHNvIHRydW5jYXRlIHRoZSBuYW1lICovCi0gICAgICAgICAgICAgICAgICAgIG5hbWVsZW4gPSA4OwotICAgICAgICAgICAgICAgICAgICBsZW4gLT0gc3RybGVuKHN1Ym5hbWUpIC0gbmFtZWxlbjsKLSAgICAgICAgICAgICAgICAgICAgYnVmW2xlbl0gPSAnXDAnOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLSNlbmRpZiAvKiBQWU9TX09TMiAqLwotICAgICAgICAgICAgc3RyY3B5KGJ1ZitsZW4sIGZkcC0+c3VmZml4KTsKLSAgICAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZyA+IDEpCi0gICAgICAgICAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoIiMgdHJ5aW5nICVzXG4iLCBidWYpOwotCi0gICAgICAgICAgICBmaWxlbW9kZSA9IGZkcC0+bW9kZTsKLSAgICAgICAgICAgIGlmIChmaWxlbW9kZVswXSA9PSAnVScpCi0gICAgICAgICAgICAgICAgZmlsZW1vZGUgPSAiciIgUFlfU1RESU9URVhUTU9ERTsKLQotICAgICAgICAgICAgaWYgKHN0YXQoYnVmLCAmc3RhdGJ1ZikgPT0gMCAmJiBTX0lTRElSKHN0YXRidWYuc3RfbW9kZSkpCi0gICAgICAgICAgICAgICAgLyogaXQncyBhIGRpcmVjdG9yeSAqLwotICAgICAgICAgICAgICAgIGZwID0gTlVMTDsKLSAgICAgICAgICAgIGVsc2UKLSAgICAgICAgICAgICAgICBmcCA9IGZvcGVuKGJ1ZiwgZmlsZW1vZGUpOwotICAgICAgICAgICAgaWYgKGZwICE9IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBpZiAoY2FzZV9vayhidWYsIGxlbiwgbmFtZWxlbiwgbmFtZSkpCi0gICAgICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgICAgIGVsc2UgeyAgICAgICAgICAgICAgICAgICAvKiBjb250aW51ZSBzZWFyY2ggKi8KLSAgICAgICAgICAgICAgICAgICAgZmNsb3NlKGZwKTsKLSAgICAgICAgICAgICAgICAgICAgZnAgPSBOVUxMOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KLSNpZiBkZWZpbmVkKFBZT1NfT1MyKQotICAgICAgICAgICAgLyogcmVzdG9yZSB0aGUgc2F2ZWQgc25hcHNob3QgKi8KLSAgICAgICAgICAgIHN0cmNweShidWYsIHNhdmVkX2J1Zik7Ci0gICAgICAgICAgICBsZW4gPSBzYXZlZF9sZW47Ci0gICAgICAgICAgICBuYW1lbGVuID0gc2F2ZWRfbmFtZWxlbjsKLSNlbmRpZgotICAgICAgICB9Ci0jaWYgZGVmaW5lZChQWU9TX09TMikKLSAgICAgICAgLyogZG9uJ3QgbmVlZC93YW50IHRoZSBtb2R1bGUgbmFtZSBzbmFwc2hvdCBhbnltb3JlICovCi0gICAgICAgIGlmIChzYXZlZF9idWYpCi0gICAgICAgIHsKLSAgICAgICAgICAgIGZyZWUoc2F2ZWRfYnVmKTsKLSAgICAgICAgICAgIHNhdmVkX2J1ZiA9IE5VTEw7Ci0gICAgICAgIH0KLSNlbmRpZgotICAgICAgICBpZiAoZnAgIT0gTlVMTCkKLSAgICAgICAgICAgIGJyZWFrOwotICAgIH0KLSAgICBpZiAoZnAgPT0gTlVMTCkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiTm8gbW9kdWxlIG5hbWVkICUuMjAwcyIsIG5hbWUpOwotICAgICAgICByZXR1cm4gTlVMTDsKLSAgICB9Ci0gICAgKnBfZnAgPSBmcDsKLSAgICByZXR1cm4gZmRwOworICAgIHJldHVybiBmaW5kX21vZHVsZV9wYXRoX2xpc3QoZnVsbG5hbWUsIG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWFyY2hfcGF0aF9saXN0LCBwYXRoX2hvb2tzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGF0aF9pbXBvcnRlcl9jYWNoZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBfcGF0aCwgcF9mcCwgcF9sb2FkZXIpOwogfQogCi0vKiBjYXNlX29rKGNoYXIqIGJ1ZiwgUHlfc3NpemVfdCBsZW4sIFB5X3NzaXplX3QgbmFtZWxlbiwgY2hhciogbmFtZSkKKy8qIGNhc2VfYnl0ZXMoY2hhciogYnVmLCBQeV9zc2l6ZV90IGxlbiwgUHlfc3NpemVfdCBuYW1lbGVuLCBjaGFyKiBuYW1lKQogICogVGhlIGFyZ3VtZW50cyBoZXJlIGFyZSB0cmlja3ksIGJlc3Qgc2hvd24gYnkgZXhhbXBsZToKICAqICAgIC9hL2IvYy9kL2UvZi9nL2gvaS9qL2svc29tZV9sb25nX21vZHVsZV9uYW1lLnB5XDAKICAqICAgIF4gICAgICAgICAgICAgICAgICAgICAgXiAgICAgICAgICAgICAgICAgICBeICAgIF4KQEAgLTE4NTMsMTggKzIxNTEsMTggQEAKICAqIFdlJ3ZlIGFscmVhZHkgZG9uZSBhIHN1Y2Nlc3NmdWwgc3RhdCgpIG9yIGZvcGVuKCkgb24gYnVmLCBzbyBrbm93IHRoYXQKICAqIHRoZXJlJ3Mgc29tZSBtYXRjaCwgcG9zc2libHkgY2FzZS1pbnNlbnNpdGl2ZS4KICAqCi0gKiBjYXNlX29rKCkgaXMgdG8gcmV0dXJuIDEgaWYgdGhlcmUncyBhIGNhc2Utc2Vuc2l0aXZlIG1hdGNoIGZvcgotICogbmFtZSwgZWxzZSAwLiAgY2FzZV9vaygpIGlzIGFsc28gdG8gcmV0dXJuIDEgaWYgZW52YXIgUFlUSE9OQ0FTRU9LCisgKiBjYXNlX2J5dGVzKCkgaXMgdG8gcmV0dXJuIDEgaWYgdGhlcmUncyBhIGNhc2Utc2Vuc2l0aXZlIG1hdGNoIGZvcgorICogbmFtZSwgZWxzZSAwLiAgY2FzZV9ieXRlcygpIGlzIGFsc28gdG8gcmV0dXJuIDEgaWYgZW52YXIgUFlUSE9OQ0FTRU9LCiAgKiBleGlzdHMuCiAgKgotICogY2FzZV9vaygpIGlzIHVzZWQgdG8gaW1wbGVtZW50IGNhc2Utc2Vuc2l0aXZlIGltcG9ydCBzZW1hbnRpY3MgZXZlbgorICogY2FzZV9ieXRlcygpIGlzIHVzZWQgdG8gaW1wbGVtZW50IGNhc2Utc2Vuc2l0aXZlIGltcG9ydCBzZW1hbnRpY3MgZXZlbgogICogb24gcGxhdGZvcm1zIHdpdGggY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtcy4gIEl0J3MgdHJpdmlhbCB0byBpbXBsZW1lbnQKICAqIGZvciBjYXNlLXNlbnNpdGl2ZSBmaWxlc3lzdGVtcy4gIEl0J3MgcHJldHR5IG11Y2ggYSBjcm9zcy1wbGF0Zm9ybQogICogbmlnaHRtYXJlIGZvciBzeXN0ZW1zIHdpdGggY2FzZS1pbnNlbnNpdGl2ZSBmaWxlc3lzdGVtcy4KICAqLwogCiAvKiBGaXJzdCB3ZSBtYXkgbmVlZCBhIHBpbGUgb2YgcGxhdGZvcm0tc3BlY2lmaWMgaGVhZGVyIGZpbGVzOyB0aGUgc2VxdWVuY2UKLSAqIG9mICNpZidzIGhlcmUgc2hvdWxkIG1hdGNoIHRoZSBzZXF1ZW5jZSBpbiB0aGUgYm9keSBvZiBjYXNlX29rKCkuCisgKiBvZiAjaWYncyBoZXJlIHNob3VsZCBtYXRjaCB0aGUgc2VxdWVuY2UgaW4gdGhlIGJvZHkgb2YgY2FzZV9ieXRlcygpLgogICovCiAjaWYgZGVmaW5lZChNU19XSU5ET1dTKQogI2luY2x1ZGUgPHdpbmRvd3MuaD4KQEAgLTE4ODMsMzMgKzIxODEsMjQgQEAKICNpbmNsdWRlIDxvczIuaD4KICNlbmRpZgogCisjaWYgZGVmaW5lZChESkdQUCkgXAorICAgIHx8ICgoZGVmaW5lZChfX01BQ0hfXykgJiYgZGVmaW5lZChfX0FQUExFX18pIHx8IGRlZmluZWQoX19DWUdXSU5fXykpIFwKKyAgICAgICAgJiYgZGVmaW5lZChIQVZFX0RJUkVOVF9IKSkgXAorICAgIHx8IGRlZmluZWQoUFlPU19PUzIpCisjICBkZWZpbmUgVVNFX0NBU0VfT0tfQllURVMKKyNlbmRpZgorCisKKyNpZmRlZiBVU0VfQ0FTRV9PS19CWVRFUwogc3RhdGljIGludAotY2FzZV9vayhjaGFyICpidWYsIFB5X3NzaXplX3QgbGVuLCBQeV9zc2l6ZV90IG5hbWVsZW4sIGNoYXIgKm5hbWUpCitjYXNlX2J5dGVzKGNoYXIgKmJ1ZiwgUHlfc3NpemVfdCBsZW4sIFB5X3NzaXplX3QgbmFtZWxlbiwgY29uc3QgY2hhciAqbmFtZSkKIHsKIC8qIFBpY2sgYSBwbGF0Zm9ybS1zcGVjaWZpYyBpbXBsZW1lbnRhdGlvbjsgdGhlIHNlcXVlbmNlIG9mICNpZidzIGhlcmUgc2hvdWxkCiAgKiBtYXRjaCB0aGUgc2VxdWVuY2UganVzdCBhYm92ZS4KICAqLwogCi0vKiBNU19XSU5ET1dTICovCi0jaWYgZGVmaW5lZChNU19XSU5ET1dTKQotICAgIFdJTjMyX0ZJTkRfREFUQSBkYXRhOwotICAgIEhBTkRMRSBoOwotCi0gICAgaWYgKFB5X0dFVEVOVigiUFlUSE9OQ0FTRU9LIikgIT0gTlVMTCkKLSAgICAgICAgcmV0dXJuIDE7Ci0KLSAgICBoID0gRmluZEZpcnN0RmlsZShidWYsICZkYXRhKTsKLSAgICBpZiAoaCA9PSBJTlZBTElEX0hBTkRMRV9WQUxVRSkgewotICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfTmFtZUVycm9yLAotICAgICAgICAgICJDYW4ndCBmaW5kIGZpbGUgZm9yIG1vZHVsZSAlLjEwMHNcbihmaWxlbmFtZSAlLjMwMHMpIiwKLSAgICAgICAgICBuYW1lLCBidWYpOwotICAgICAgICByZXR1cm4gMDsKLSAgICB9Ci0gICAgRmluZENsb3NlKGgpOwotICAgIHJldHVybiBzdHJuY21wKGRhdGEuY0ZpbGVOYW1lLCBuYW1lLCBuYW1lbGVuKSA9PSAwOwotCiAvKiBESkdQUCAqLwotI2VsaWYgZGVmaW5lZChESkdQUCkKKyNpZiBkZWZpbmVkKERKR1BQKQogICAgIHN0cnVjdCBmZmJsayBmZmJsazsKICAgICBpbnQgZG9uZTsKIApAQCAtMTkyMSw3ICsyMjEwLDcgQEAKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX05hbWVFcnJvciwKICAgICAgICAgICAiQ2FuJ3QgZmluZCBmaWxlIGZvciBtb2R1bGUgJS4xMDBzXG4oZmlsZW5hbWUgJS4zMDBzKSIsCiAgICAgICAgICAgbmFtZSwgYnVmKTsKLSAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiAtMTsKICAgICB9CiAgICAgcmV0dXJuIHN0cm5jbXAoZmZibGsuZmZfbmFtZSwgbmFtZSwgbmFtZWxlbikgPT0gMDsKIApAQCAtMTk4OCw2ICsyMjc3LDc5IEBACiAKIC8qIGFzc3VtaW5nIGl0J3MgYSBjYXNlLXNlbnNpdGl2ZSBmaWxlc3lzdGVtLCBzbyB0aGVyZSdzIG5vdGhpbmcgdG8gZG8hICovCiAjZWxzZQorIyAgIGVycm9yICJVU0VfQ0FTRV9PS19CWVRFUyBpcyBub3QgY29ycmVjdGx5IGRlZmluZWQiCisjZW5kaWYKK30KKyNlbmRpZgorCisvKgorICogQ2hlY2sgaWYgYSBmaWxlbmFtZSBjYXNlIG1hdGNocyB0aGUgbmFtZSBjYXNlLiBXZSd2ZSBhbHJlYWR5IGRvbmUgYQorICogc3VjY2Vzc2Z1bCBzdGF0KCkgb3IgZm9wZW4oKSBvbiBidWYsIHNvIGtub3cgdGhhdCB0aGVyZSdzIHNvbWUgbWF0Y2gsCisgKiBwb3NzaWJseSBjYXNlLWluc2Vuc2l0aXZlLgorICoKKyAqIGNhc2Vfb2soKSBpcyB0byByZXR1cm4gMSBpZiB0aGVyZSdzIGEgY2FzZS1zZW5zaXRpdmUgbWF0Y2ggZm9yIG5hbWUsIDAgaWYgaXQKKyAqIHRoZSBmaWxlbmFtZSBkb2Vzbid0IG1hdGNoLCBvciAtMSBvbiBlcnJvci4gIGNhc2Vfb2soKSBpcyBhbHNvIHRvIHJldHVybiAxCisgKiBpZiBlbnZhciBQWVRIT05DQVNFT0sgZXhpc3RzLgorICoKKyAqIGNhc2Vfb2soKSBpcyB1c2VkIHRvIGltcGxlbWVudCBjYXNlLXNlbnNpdGl2ZSBpbXBvcnQgc2VtYW50aWNzIGV2ZW4KKyAqIG9uIHBsYXRmb3JtcyB3aXRoIGNhc2UtaW5zZW5zaXRpdmUgZmlsZXN5c3RlbXMuICBJdCdzIHRyaXZpYWwgdG8gaW1wbGVtZW50CisgKiBmb3IgY2FzZS1zZW5zaXRpdmUgZmlsZXN5c3RlbXMuICBJdCdzIHByZXR0eSBtdWNoIGEgY3Jvc3MtcGxhdGZvcm0KKyAqIG5pZ2h0bWFyZSBmb3Igc3lzdGVtcyB3aXRoIGNhc2UtaW5zZW5zaXRpdmUgZmlsZXN5c3RlbXMuCisgKi8KKworc3RhdGljIGludAorY2FzZV9vayhQeU9iamVjdCAqZmlsZW5hbWUsIFB5X3NzaXplX3QgcHJlZml4X2RlbHRhLCBQeU9iamVjdCAqbmFtZSkKK3sKKyNpZmRlZiBNU19XSU5ET1dTCisgICAgV0lOMzJfRklORF9EQVRBVyBkYXRhOworICAgIEhBTkRMRSBoOworICAgIGludCBjbXA7CisgICAgd2NoYXJfdCAqd2ZpbGVuYW1lLCAqd25hbWU7CisgICAgUHlfc3NpemVfdCB3bmFtZV9sZW47CisKKyAgICBpZiAoUHlfR0VURU5WKCJQWVRIT05DQVNFT0siKSAhPSBOVUxMKQorICAgICAgICByZXR1cm4gMTsKKworICAgIHdmaWxlbmFtZSA9IFB5VW5pY29kZV9Bc1VuaWNvZGUoZmlsZW5hbWUpOworICAgIGlmICh3ZmlsZW5hbWUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgaCA9IEZpbmRGaXJzdEZpbGVXKHdmaWxlbmFtZSwgJmRhdGEpOworICAgIGlmIChoID09IElOVkFMSURfSEFORExFX1ZBTFVFKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19OYW1lRXJyb3IsCisgICAgICAgICAgIkNhbid0IGZpbmQgZmlsZSBmb3IgbW9kdWxlICVSXG4oZmlsZW5hbWUgJVIpIiwKKyAgICAgICAgICBuYW1lLCBmaWxlbmFtZSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgRmluZENsb3NlKGgpOworCisgICAgd25hbWUgPSBQeVVuaWNvZGVfQXNVbmljb2RlQW5kU2l6ZShuYW1lLCAmd25hbWVfbGVuKTsKKyAgICBpZiAod25hbWUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgY21wID0gd2NzbmNtcChkYXRhLmNGaWxlTmFtZSwgd25hbWUsIHduYW1lX2xlbik7CisgICAgcmV0dXJuIGNtcCA9PSAwOworI2VsaWYgZGVmaW5lZChVU0VfQ0FTRV9PS19CWVRFUykKKyAgICBpbnQgbWF0Y2g7CisgICAgUHlPYmplY3QgKmZpbGVieXRlcywgKm5hbWVieXRlczsKKyAgICBmaWxlYnl0ZXMgPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KGZpbGVuYW1lKTsKKyAgICBpZiAoZmlsZWJ5dGVzID09IE5VTEwpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBuYW1lYnl0ZXMgPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KG5hbWUpOworICAgIGlmIChuYW1lYnl0ZXMgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYoZmlsZWJ5dGVzKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKyAgICBtYXRjaCA9IGNhc2VfYnl0ZXMoCisgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKGZpbGVieXRlcyksCisgICAgICAgIFB5Qnl0ZXNfR0VUX1NJWkUoZmlsZWJ5dGVzKSArIHByZWZpeF9kZWx0YSwKKyAgICAgICAgUHlCeXRlc19HRVRfU0laRShuYW1lYnl0ZXMpLAorICAgICAgICBQeUJ5dGVzX0FTX1NUUklORyhuYW1lYnl0ZXMpKTsKKyAgICBQeV9ERUNSRUYoZmlsZWJ5dGVzKTsKKyAgICBQeV9ERUNSRUYobmFtZWJ5dGVzKTsKKyAgICByZXR1cm4gbWF0Y2g7CisjZWxzZQorICAgIC8qIGFzc3VtaW5nIGl0J3MgYSBjYXNlLXNlbnNpdGl2ZSBmaWxlc3lzdGVtLCBzbyB0aGVyZSdzIG5vdGhpbmcgdG8gZG8hICovCiAgICAgcmV0dXJuIDE7CiAKICNlbmRpZgpAQCAtMTk5NSw4OSArMjM1Nyw5MyBAQAogCiAjaWZkZWYgSEFWRV9TVEFUCiAKLS8qIEhlbHBlciB0byBsb29rIGZvciBfX2luaXRfXy5weSBvciBfX2luaXRfXy5weVtjb10gaW4gcG90ZW50aWFsIHBhY2thZ2UgKi8KKy8qIEhlbHBlciB0byBsb29rIGZvciBfX2luaXRfXy5weSBvciBfX2luaXRfXy5weVtjb10gaW4gcG90ZW50aWFsIHBhY2thZ2UuCisgICBSZXR1cm4gMSBpZiBfX2luaXRfXyB3YXMgZm91bmQsIDAgaWYgbm90LCBvciAtMSBvbiBlcnJvci4gKi8KIHN0YXRpYyBpbnQKLWZpbmRfaW5pdF9tb2R1bGUoY2hhciAqYnVmKQorZmluZF9pbml0X21vZHVsZShQeU9iamVjdCAqZGlyZWN0b3J5KQogewotICAgIGNvbnN0IHNpemVfdCBzYXZlX2xlbiA9IHN0cmxlbihidWYpOwotICAgIHNpemVfdCBpID0gc2F2ZV9sZW47Ci0gICAgY2hhciAqcG5hbWU7ICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIF9faW5pdF9fICovCiAgICAgc3RydWN0IHN0YXQgc3RhdGJ1ZjsKKyAgICBQeU9iamVjdCAqZmlsZW5hbWU7CisgICAgaW50IG1hdGNoOworICAgIGludCBlcnI7CiAKLS8qICAgICAgRm9yIGNhbGxpbmcgY2FzZV9vayhidWYsIGxlbiwgbmFtZWxlbiwgbmFtZSk6Ci0gKiAgICAgIC9hL2IvYy9kL2UvZi9nL2gvaS9qL2svc29tZV9sb25nX21vZHVsZV9uYW1lLnB5XDAKLSAqICAgICAgXiAgICAgICAgICAgICAgICAgICAgICBeICAgICAgICAgICAgICAgICAgIF4gICAgXgotICogICAgICB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tIGJ1ZiAtLS0tLS0tLS0tLS0tLS0tLS0tLS18Ci0gKiAgICAgIHwtLS0tLS0tLS0tLS0tLS0tLS0tIGxlbiAtLS0tLS0tLS0tLS0tLS0tLS18Ci0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfC0tLS0tLSBuYW1lIC0tLS0tLS18Ci0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfC0tLS0tIG5hbWVsZW4gLS0tLS18Ci0gKi8KLSAgICBpZiAoc2F2ZV9sZW4gKyAxMyA+PSBNQVhQQVRITEVOKQotICAgICAgICByZXR1cm4gMDsKLSAgICBidWZbaSsrXSA9IFNFUDsKLSAgICBwbmFtZSA9IGJ1ZiArIGk7Ci0gICAgc3RyY3B5KHBuYW1lLCAiX19pbml0X18ucHkiKTsKLSAgICBpZiAoc3RhdChidWYsICZzdGF0YnVmKSA9PSAwKSB7Ci0gICAgICAgIGlmIChjYXNlX29rKGJ1ZiwKLSAgICAgICAgICAgICAgICAgICAgc2F2ZV9sZW4gKyA5LCAgICAgICAgICAgICAgIC8qIGxlbigiL19faW5pdF9fIikgKi8KLSAgICAgICAgICAgICAgICA4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGxlbigiX19pbml0X18iKSAqLwotICAgICAgICAgICAgICAgIHBuYW1lKSkgewotICAgICAgICAgICAgYnVmW3NhdmVfbGVuXSA9ICdcMCc7CisgICAgZmlsZW5hbWUgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVUlY19faW5pdF9fLnB5IiwgZGlyZWN0b3J5LCBTRVApOworICAgIGlmIChmaWxlbmFtZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisgICAgZXJyID0gX1B5X3N0YXQoZmlsZW5hbWUsICZzdGF0YnVmKTsKKyAgICBpZiAoZXJyID09IC0yKQorICAgICAgICByZXR1cm4gLTE7CisgICAgaWYgKGVyciA9PSAwKSB7CisgICAgICAgIC8qIDM9bGVuKCIucHkiKSAqLworICAgICAgICBtYXRjaCA9IGNhc2Vfb2soZmlsZW5hbWUsIC0zLCBpbml0c3RyKTsKKyAgICAgICAgaWYgKG1hdGNoIDwgMCkgeworICAgICAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBpZiAobWF0Y2gpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CiAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgfQogICAgIH0KLSAgICBpICs9IHN0cmxlbihwbmFtZSk7Ci0gICAgc3RyY3B5KGJ1ZitpLCBQeV9PcHRpbWl6ZUZsYWcgPyAibyIgOiAiYyIpOwotICAgIGlmIChzdGF0KGJ1ZiwgJnN0YXRidWYpID09IDApIHsKLSAgICAgICAgaWYgKGNhc2Vfb2soYnVmLAotICAgICAgICAgICAgICAgICAgICBzYXZlX2xlbiArIDksICAgICAgICAgICAgICAgLyogbGVuKCIvX19pbml0X18iKSAqLwotICAgICAgICAgICAgICAgIDgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbGVuKCJfX2luaXRfXyIpICovCi0gICAgICAgICAgICAgICAgcG5hbWUpKSB7Ci0gICAgICAgICAgICBidWZbc2F2ZV9sZW5dID0gJ1wwJzsKKyAgICBQeV9ERUNSRUYoZmlsZW5hbWUpOworCisgICAgZmlsZW5hbWUgPSBQeVVuaWNvZGVfRnJvbUZvcm1hdCgiJVUlY19faW5pdF9fLnB5JWMiLAorICAgICAgICBkaXJlY3RvcnksIFNFUCwgUHlfT3B0aW1pemVGbGFnID8gJ28nIDogJ2MnKTsKKyAgICBpZiAoZmlsZW5hbWUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIC0xOworICAgIGVyciA9IF9QeV9zdGF0KGZpbGVuYW1lLCAmc3RhdGJ1Zik7CisgICAgaWYgKGVyciA9PSAtMikgeworICAgICAgICBQeV9ERUNSRUYoZmlsZW5hbWUpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIGlmIChlcnIgPT0gMCkgeworICAgICAgICAvKiA0PWxlbigiLnB5YyIpICovCisgICAgICAgIG1hdGNoID0gY2FzZV9vayhmaWxlbmFtZSwgLTQsIGluaXRzdHIpOworICAgICAgICBpZiAobWF0Y2ggPCAwKSB7CisgICAgICAgICAgICBQeV9ERUNSRUYoZmlsZW5hbWUpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIGlmIChtYXRjaCkgeworICAgICAgICAgICAgUHlfREVDUkVGKGZpbGVuYW1lKTsKICAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9CiAgICAgfQotICAgIGJ1ZltzYXZlX2xlbl0gPSAnXDAnOworICAgIFB5X0RFQ1JFRihmaWxlbmFtZSk7CiAgICAgcmV0dXJuIDA7CiB9CiAKICNlbmRpZiAvKiBIQVZFX1NUQVQgKi8KIAogCi1zdGF0aWMgaW50IGluaXRfYnVpbHRpbihjaGFyICopOyAvKiBGb3J3YXJkICovCitzdGF0aWMgaW50IGluaXRfYnVpbHRpbihQeU9iamVjdCAqKTsgLyogRm9yd2FyZCAqLwogCiBzdGF0aWMgUHlPYmplY3QqCi1sb2FkX2J1aWx0aW4oY2hhciAqbmFtZSwgY2hhciAqcGF0aG5hbWUsIGludCB0eXBlKQorbG9hZF9idWlsdGluKFB5T2JqZWN0ICpuYW1lLCBpbnQgdHlwZSkKIHsKICAgICBQeU9iamVjdCAqbSwgKm1vZHVsZXM7CiAgICAgaW50IGVycjsKIAotICAgIGlmIChwYXRobmFtZSAhPSBOVUxMICYmIHBhdGhuYW1lWzBdICE9ICdcMCcpCi0gICAgICAgIG5hbWUgPSBwYXRobmFtZTsKLQogICAgIGlmICh0eXBlID09IENfQlVJTFRJTikKICAgICAgICAgZXJyID0gaW5pdF9idWlsdGluKG5hbWUpOwogICAgIGVsc2UKLSAgICAgICAgZXJyID0gUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlKG5hbWUpOworICAgICAgICBlcnIgPSBQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGVPYmplY3QobmFtZSk7CiAgICAgaWYgKGVyciA8IDApCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChlcnIgPT0gMCkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCi0gICAgICAgICAgICAgICAgIlB1cnBvcnRlZCAlcyBtb2R1bGUgJS4yMDBzIG5vdCBmb3VuZCIsCi0gICAgICAgICAgICAgICAgdHlwZSA9PSBDX0JVSUxUSU4gPwotICAgICAgICAgICAgICAgICJidWlsdGluIiA6ICJmcm96ZW4iLAorICAgICAgICAgICAgICAgICJQdXJwb3J0ZWQgJXMgbW9kdWxlICVSIG5vdCBmb3VuZCIsCisgICAgICAgICAgICAgICAgdHlwZSA9PSBDX0JVSUxUSU4gPyAiYnVpbHRpbiIgOiAiZnJvemVuIiwKICAgICAgICAgICAgICAgICBuYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCiAgICAgbW9kdWxlcyA9IFB5SW1wb3J0X0dldE1vZHVsZURpY3QoKTsKLSAgICBtID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcobW9kdWxlcywgbmFtZSk7CisgICAgbSA9IFB5RGljdF9HZXRJdGVtKG1vZHVsZXMsIG5hbWUpOwogICAgIGlmIChtID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KAogICAgICAgICAgICAgICAgIFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICIlcyBtb2R1bGUgJS4yMDBzIG5vdCBwcm9wZXJseSBpbml0aWFsaXplZCIsCi0gICAgICAgICAgICAgICAgdHlwZSA9PSBDX0JVSUxUSU4gPwotICAgICAgICAgICAgICAgICJidWlsdGluIiA6ICJmcm96ZW4iLAorICAgICAgICAgICAgICAgICIlcyBtb2R1bGUgJVIgbm90IHByb3Blcmx5IGluaXRpYWxpemVkIiwKKyAgICAgICAgICAgICAgICB0eXBlID09IENfQlVJTFRJTiA/ICJidWlsdGluIiA6ICJmcm96ZW4iLAogICAgICAgICAgICAgICAgIG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC0yMDg5LDcgKzI0NTUsNyBAQAogICAgaXRzIG1vZHVsZSBvYmplY3QgV0lUSCBJTkNSRU1FTlRFRCBSRUZFUkVOQ0UgQ09VTlQgKi8KIAogc3RhdGljIFB5T2JqZWN0ICoKLWxvYWRfbW9kdWxlKGNoYXIgKm5hbWUsIEZJTEUgKmZwLCBjaGFyICpwYXRobmFtZSwgaW50IHR5cGUsIFB5T2JqZWN0ICpsb2FkZXIpCitsb2FkX21vZHVsZShQeU9iamVjdCAqbmFtZSwgRklMRSAqZnAsIFB5T2JqZWN0ICpwYXRobmFtZSwgaW50IHR5cGUsIFB5T2JqZWN0ICpsb2FkZXIpCiB7CiAgICAgUHlPYmplY3QgKm07CiAKQEAgLTIwOTksNyArMjQ2NSw3IEBACiAgICAgY2FzZSBQWV9DT01QSUxFRDoKICAgICAgICAgaWYgKGZwID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgImZpbGUgb2JqZWN0IHJlcXVpcmVkIGZvciBpbXBvcnQgKHR5cGUgY29kZSAlZCkiLAorICAgICAgICAgICAgICAgICAgICAgICAgICJmaWxlIG9iamVjdCByZXF1aXJlZCBmb3IgaW1wb3J0ICh0eXBlIGNvZGUgJWQpIiwKICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9CkBAIC0yMTI3LDIyICsyNDkzLDIzIEBACiAKICAgICBjYXNlIENfQlVJTFRJTjoKICAgICBjYXNlIFBZX0ZST1pFTjoKLSAgICAgICAgbSA9IGxvYWRfYnVpbHRpbihuYW1lLCBwYXRobmFtZSwgdHlwZSk7CisgICAgICAgIG0gPSBsb2FkX2J1aWx0aW4obmFtZSwgdHlwZSk7CiAgICAgICAgIGJyZWFrOwogCiAgICAgY2FzZSBJTVBfSE9PSzogeworICAgICAgICBfUHlfSURFTlRJRklFUihsb2FkX21vZHVsZSk7CiAgICAgICAgIGlmIChsb2FkZXIgPT0gTlVMTCkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX0ltcG9ydEVycm9yLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbXBvcnQgaG9vayB3aXRob3V0IGxvYWRlciIpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KLSAgICAgICAgbSA9IFB5T2JqZWN0X0NhbGxNZXRob2QobG9hZGVyLCAibG9hZF9tb2R1bGUiLCAicyIsIG5hbWUpOworICAgICAgICBtID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChsb2FkZXIsICZQeUlkX2xvYWRfbW9kdWxlLCAiTyIsIG5hbWUpOwogICAgICAgICBicmVhazsKICAgICB9CiAKICAgICBkZWZhdWx0OgogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiRG9uJ3Qga25vdyBob3cgdG8gaW1wb3J0ICUuMjAwcyAodHlwZSBjb2RlICVkKSIsCisgICAgICAgICAgICAgICAgICAgICAiRG9uJ3Qga25vdyBob3cgdG8gaW1wb3J0ICVSICh0eXBlIGNvZGUgJWQpIiwKICAgICAgICAgICAgICAgICAgICAgICBuYW1lLCB0eXBlKTsKICAgICAgICAgbSA9IE5VTEw7CiAKQEAgLTIxNTcsMzIgKzI1MjQsMzIgQEAKICAgIGFuIGV4Y2VwdGlvbiBzZXQgaWYgdGhlIGluaXRpYWxpemF0aW9uIGZhaWxlZC4gKi8KIAogc3RhdGljIGludAotaW5pdF9idWlsdGluKGNoYXIgKm5hbWUpCitpbml0X2J1aWx0aW4oUHlPYmplY3QgKm5hbWUpCiB7CiAgICAgc3RydWN0IF9pbml0dGFiICpwOwogCi0gICAgaWYgKF9QeUltcG9ydF9GaW5kQnVpbHRpbihuYW1lKSAhPSBOVUxMKQorICAgIGlmIChfUHlJbXBvcnRfRmluZEV4dGVuc2lvbk9iamVjdChuYW1lLCBuYW1lKSAhPSBOVUxMKQogICAgICAgICByZXR1cm4gMTsKIAogICAgIGZvciAocCA9IFB5SW1wb3J0X0luaXR0YWI7IHAtPm5hbWUgIT0gTlVMTDsgcCsrKSB7CiAgICAgICAgIFB5T2JqZWN0ICptb2Q7CiAgICAgICAgIFB5TW9kdWxlRGVmICpkZWY7Ci0gICAgICAgIGlmIChzdHJjbXAobmFtZSwgcC0+bmFtZSkgPT0gMCkgeworICAgICAgICBpZiAoUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcobmFtZSwgcC0+bmFtZSkgPT0gMCkgewogICAgICAgICAgICAgaWYgKHAtPmluaXRmdW5jID09IE5VTEwpIHsKICAgICAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICJDYW5ub3QgcmUtaW5pdCBpbnRlcm5hbCBtb2R1bGUgJS4yMDBzIiwKKyAgICAgICAgICAgICAgICAgICAgIkNhbm5vdCByZS1pbml0IGludGVybmFsIG1vZHVsZSAlUiIsCiAgICAgICAgICAgICAgICAgICAgIG5hbWUpOwogICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgICAgICAgICBQeVN5c19Xcml0ZVN0ZGVycigiaW1wb3J0ICVzICMgYnVpbHRpblxuIiwgbmFtZSk7CisgICAgICAgICAgICAgICAgUHlTeXNfRm9ybWF0U3RkZXJyKCJpbXBvcnQgJVUgIyBidWlsdGluXG4iLCBuYW1lKTsKICAgICAgICAgICAgIG1vZCA9ICgqcC0+aW5pdGZ1bmMpKCk7CiAgICAgICAgICAgICBpZiAobW9kID09IDApCiAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICAgICAgLyogUmVtZW1iZXIgcG9pbnRlciB0byBtb2R1bGUgaW5pdCBmdW5jdGlvbi4gKi8KICAgICAgICAgICAgIGRlZiA9IFB5TW9kdWxlX0dldERlZihtb2QpOwogICAgICAgICAgICAgZGVmLT5tX2Jhc2UubV9pbml0ID0gcC0+aW5pdGZ1bmM7Ci0gICAgICAgICAgICBpZiAoX1B5SW1wb3J0X0ZpeHVwQnVpbHRpbihtb2QsIG5hbWUpIDwgMCkKKyAgICAgICAgICAgIGlmIChfUHlJbXBvcnRfRml4dXBFeHRlbnNpb25PYmplY3QobW9kLCBuYW1lLCBuYW1lKSA8IDApCiAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICAgICAgLyogRml4dXBFeHRlbnNpb24gaGFzIHB1dCB0aGUgbW9kdWxlIGludG8gc3lzLm1vZHVsZXMsCiAgICAgICAgICAgICAgICBzbyB3ZSBjYW4gcmVsZWFzZSBvdXIgb3duIHJlZmVyZW5jZS4gKi8KQEAgLTIxOTcsMzcgKzI1NjQsMzcgQEAKIC8qIEZyb3plbiBtb2R1bGVzICovCiAKIHN0YXRpYyBzdHJ1Y3QgX2Zyb3plbiAqCi1maW5kX2Zyb3plbihjaGFyICpuYW1lKQorZmluZF9mcm96ZW4oUHlPYmplY3QgKm5hbWUpCiB7CiAgICAgc3RydWN0IF9mcm96ZW4gKnA7CiAKLSAgICBpZiAoIW5hbWUpCisgICAgaWYgKG5hbWUgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBmb3IgKHAgPSBQeUltcG9ydF9Gcm96ZW5Nb2R1bGVzOyA7IHArKykgewogICAgICAgICBpZiAocC0+bmFtZSA9PSBOVUxMKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGlmIChzdHJjbXAocC0+bmFtZSwgbmFtZSkgPT0gMCkKKyAgICAgICAgaWYgKFB5VW5pY29kZV9Db21wYXJlV2l0aEFTQ0lJU3RyaW5nKG5hbWUsIHAtPm5hbWUpID09IDApCiAgICAgICAgICAgICBicmVhazsKICAgICB9CiAgICAgcmV0dXJuIHA7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCi1nZXRfZnJvemVuX29iamVjdChjaGFyICpuYW1lKQorZ2V0X2Zyb3plbl9vYmplY3QoUHlPYmplY3QgKm5hbWUpCiB7CiAgICAgc3RydWN0IF9mcm96ZW4gKnAgPSBmaW5kX2Zyb3plbihuYW1lKTsKICAgICBpbnQgc2l6ZTsKIAogICAgIGlmIChwID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIk5vIHN1Y2ggZnJvemVuIG9iamVjdCBuYW1lZCAlLjIwMHMiLAorICAgICAgICAgICAgICAgICAgICAgIk5vIHN1Y2ggZnJvemVuIG9iamVjdCBuYW1lZCAlUiIsCiAgICAgICAgICAgICAgICAgICAgICBuYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIGlmIChwLT5jb2RlID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIkV4Y2x1ZGVkIGZyb3plbiBvYmplY3QgbmFtZWQgJS4yMDBzIiwKKyAgICAgICAgICAgICAgICAgICAgICJFeGNsdWRlZCBmcm96ZW4gb2JqZWN0IG5hbWVkICVSIiwKICAgICAgICAgICAgICAgICAgICAgIG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CkBAIC0yMjM4LDE0ICsyNjA1LDE0IEBACiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCi1pc19mcm96ZW5fcGFja2FnZShjaGFyICpuYW1lKQoraXNfZnJvemVuX3BhY2thZ2UoUHlPYmplY3QgKm5hbWUpCiB7CiAgICAgc3RydWN0IF9mcm96ZW4gKnAgPSBmaW5kX2Zyb3plbihuYW1lKTsKICAgICBpbnQgc2l6ZTsKIAogICAgIGlmIChwID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIk5vIHN1Y2ggZnJvemVuIG9iamVjdCBuYW1lZCAlLjIwMHMiLAorICAgICAgICAgICAgICAgICAgICAgIk5vIHN1Y2ggZnJvemVuIG9iamVjdCBuYW1lZCAlUiIsCiAgICAgICAgICAgICAgICAgICAgICBuYW1lKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQpAQCAtMjI2NSwxOSArMjYzMiwyMCBAQAogICAgVGhpcyBmdW5jdGlvbiBpcyBhbHNvIHVzZWQgZnJvbSBmcm96ZW5tYWluLmMgKi8KIAogaW50Ci1QeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGUoY2hhciAqbmFtZSkKK1B5SW1wb3J0X0ltcG9ydEZyb3plbk1vZHVsZU9iamVjdChQeU9iamVjdCAqbmFtZSkKIHsKLSAgICBzdHJ1Y3QgX2Zyb3plbiAqcCA9IGZpbmRfZnJvemVuKG5hbWUpOwotICAgIFB5T2JqZWN0ICpjbzsKLSAgICBQeU9iamVjdCAqbTsKKyAgICBzdHJ1Y3QgX2Zyb3plbiAqcDsKKyAgICBQeU9iamVjdCAqY28sICptLCAqcGF0aDsKICAgICBpbnQgaXNwYWNrYWdlOwogICAgIGludCBzaXplOwogCisgICAgcCA9IGZpbmRfZnJvemVuKG5hbWUpOworCiAgICAgaWYgKHAgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgaWYgKHAtPmNvZGUgPT0gTlVMTCkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiRXhjbHVkZWQgZnJvemVuIG9iamVjdCBuYW1lZCAlLjIwMHMiLAorICAgICAgICAgICAgICAgICAgICAgIkV4Y2x1ZGVkIGZyb3plbiBvYmplY3QgbmFtZWQgJVIiLAogICAgICAgICAgICAgICAgICAgICAgbmFtZSk7CiAgICAgICAgIHJldHVybiAtMTsKICAgICB9CkBAIC0yMjg2LDQwICsyNjU0LDQxIEBACiAgICAgaWYgKGlzcGFja2FnZSkKICAgICAgICAgc2l6ZSA9IC1zaXplOwogICAgIGlmIChQeV9WZXJib3NlRmxhZykKLSAgICAgICAgUHlTeXNfV3JpdGVTdGRlcnIoImltcG9ydCAlcyAjIGZyb3plbiVzXG4iLAorICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoImltcG9ydCAlVSAjIGZyb3plbiVzXG4iLAogICAgICAgICAgICAgbmFtZSwgaXNwYWNrYWdlID8gIiBwYWNrYWdlIiA6ICIiKTsKICAgICBjbyA9IFB5TWFyc2hhbF9SZWFkT2JqZWN0RnJvbVN0cmluZygoY2hhciAqKXAtPmNvZGUsIHNpemUpOwogICAgIGlmIChjbyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gLTE7CiAgICAgaWYgKCFQeUNvZGVfQ2hlY2soY28pKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19UeXBlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAiZnJvemVuIG9iamVjdCAlLjIwMHMgaXMgbm90IGEgY29kZSBvYmplY3QiLAorICAgICAgICAgICAgICAgICAgICAgImZyb3plbiBvYmplY3QgJVIgaXMgbm90IGEgY29kZSBvYmplY3QiLAogICAgICAgICAgICAgICAgICAgICAgbmFtZSk7CiAgICAgICAgIGdvdG8gZXJyX3JldHVybjsKICAgICB9CiAgICAgaWYgKGlzcGFja2FnZSkgewogICAgICAgICAvKiBTZXQgX19wYXRoX18gdG8gdGhlIHBhY2thZ2UgbmFtZSAqLwotICAgICAgICBQeU9iamVjdCAqZCwgKnMsICpsOworICAgICAgICBQeU9iamVjdCAqZCwgKmw7CiAgICAgICAgIGludCBlcnI7Ci0gICAgICAgIG0gPSBQeUltcG9ydF9BZGRNb2R1bGUobmFtZSk7CisgICAgICAgIG0gPSBQeUltcG9ydF9BZGRNb2R1bGVPYmplY3QobmFtZSk7CiAgICAgICAgIGlmIChtID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVycl9yZXR1cm47CiAgICAgICAgIGQgPSBQeU1vZHVsZV9HZXREaWN0KG0pOwotICAgICAgICBzID0gUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcobmFtZSk7Ci0gICAgICAgIGlmIChzID09IE5VTEwpCi0gICAgICAgICAgICBnb3RvIGVycl9yZXR1cm47CiAgICAgICAgIGwgPSBQeUxpc3RfTmV3KDEpOwogICAgICAgICBpZiAobCA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocyk7CiAgICAgICAgICAgICBnb3RvIGVycl9yZXR1cm47CiAgICAgICAgIH0KLSAgICAgICAgUHlMaXN0X1NFVF9JVEVNKGwsIDAsIHMpOworICAgICAgICBQeV9JTkNSRUYobmFtZSk7CisgICAgICAgIFB5TGlzdF9TRVRfSVRFTShsLCAwLCBuYW1lKTsKICAgICAgICAgZXJyID0gUHlEaWN0X1NldEl0ZW1TdHJpbmcoZCwgIl9fcGF0aF9fIiwgbCk7CiAgICAgICAgIFB5X0RFQ1JFRihsKTsKICAgICAgICAgaWYgKGVyciAhPSAwKQogICAgICAgICAgICAgZ290byBlcnJfcmV0dXJuOwogICAgIH0KLSAgICBtID0gUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVFeChuYW1lLCBjbywgIjxmcm96ZW4+Iik7CisgICAgcGF0aCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCI8ZnJvemVuPiIpOworICAgIGlmIChwYXRoID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyX3JldHVybjsKKyAgICBtID0gUHlJbXBvcnRfRXhlY0NvZGVNb2R1bGVPYmplY3QobmFtZSwgY28sIHBhdGgsIE5VTEwpOworICAgIFB5X0RFQ1JFRihwYXRoKTsKICAgICBpZiAobSA9PSBOVUxMKQogICAgICAgICBnb3RvIGVycl9yZXR1cm47CiAgICAgUHlfREVDUkVGKGNvKTsKQEAgLTIzMzAsNiArMjY5OSwxOSBAQAogICAgIHJldHVybiAtMTsKIH0KIAoraW50CitQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGUoY2hhciAqbmFtZSkKK3sKKyAgICBQeU9iamVjdCAqbmFtZW9iajsKKyAgICBpbnQgcmV0OworICAgIG5hbWVvYmogPSBQeVVuaWNvZGVfSW50ZXJuRnJvbVN0cmluZyhuYW1lKTsKKyAgICBpZiAobmFtZW9iaiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gLTE7CisgICAgcmV0ID0gUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlT2JqZWN0KG5hbWVvYmopOworICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKKyAgICByZXR1cm4gcmV0OworfQorCiAKIC8qIEltcG9ydCBhIG1vZHVsZSwgZWl0aGVyIGJ1aWx0LWluLCBmcm96ZW4sIG9yIGV4dGVybmFsLCBhbmQgcmV0dXJuCiAgICBpdHMgbW9kdWxlIG9iamVjdCBXSVRIIElOQ1JFTUVOVEVEIFJFRkVSRU5DRSBDT1VOVCAqLwpAQCAtMjM2MCw4ICsyNzQyLDcgQEAKIFB5T2JqZWN0ICoKIFB5SW1wb3J0X0ltcG9ydE1vZHVsZU5vQmxvY2soY29uc3QgY2hhciAqbmFtZSkKIHsKLSAgICBQeU9iamVjdCAqcmVzdWx0OwotICAgIFB5T2JqZWN0ICptb2R1bGVzOworICAgIFB5T2JqZWN0ICpuYW1lb2JqLCAqbW9kdWxlcywgKnJlc3VsdDsKICNpZmRlZiBXSVRIX1RIUkVBRAogICAgIGxvbmcgbWU7CiAjZW5kaWYKQEAgLTIzNzEsMTQgKzI3NTIsMTYgQEAKICAgICBpZiAobW9kdWxlcyA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIHJlc3VsdCA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKG1vZHVsZXMsIG5hbWUpOworICAgIG5hbWVvYmogPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhuYW1lKTsKKyAgICBpZiAobmFtZW9iaiA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICByZXN1bHQgPSBQeURpY3RfR2V0SXRlbShtb2R1bGVzLCBuYW1lb2JqKTsKICAgICBpZiAocmVzdWx0ICE9IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKG5hbWVvYmopOwogICAgICAgICBQeV9JTkNSRUYocmVzdWx0KTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0gICAgZWxzZSB7Ci0gICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgfQorICAgIFB5RXJyX0NsZWFyKCk7CiAjaWZkZWYgV0lUSF9USFJFQUQKICAgICAvKiBjaGVjayB0aGUgaW1wb3J0IGxvY2sKICAgICAgKiBtZSBtaWdodCBiZSAtMSBidXQgSSBpZ25vcmUgdGhlIGVycm9yIGhlcmUsIHRoZSBsb2NrIGZ1bmN0aW9uCkBAIC0yMzg2LDc5ICsyNzY5LDEwNiBAQAogICAgIG1lID0gUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpOwogICAgIGlmIChpbXBvcnRfbG9ja190aHJlYWQgPT0gLTEgfHwgaW1wb3J0X2xvY2tfdGhyZWFkID09IG1lKSB7CiAgICAgICAgIC8qIG5vIHRocmVhZCBvciBtZSBpcyBob2xkaW5nIHRoZSBsb2NrICovCi0gICAgICAgIHJldHVybiBQeUltcG9ydF9JbXBvcnRNb2R1bGUobmFtZSk7CisgICAgICAgIHJlc3VsdCA9IFB5SW1wb3J0X0ltcG9ydChuYW1lb2JqKTsKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19JbXBvcnRFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICJGYWlsZWQgdG8gaW1wb3J0ICUuMjAwcyBiZWNhdXNlIHRoZSBpbXBvcnQgbG9jayIKKyAgICAgICAgICAgICAgICAgICAgICJGYWlsZWQgdG8gaW1wb3J0ICVSIGJlY2F1c2UgdGhlIGltcG9ydCBsb2NrIgogICAgICAgICAgICAgICAgICAgICAgImlzIGhlbGQgYnkgYW5vdGhlciB0aHJlYWQuIiwKLSAgICAgICAgICAgICAgICAgICAgIG5hbWUpOwotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgICAgICAgICAgICAgIG5hbWVvYmopOworICAgICAgICByZXN1bHQgPSBOVUxMOwogICAgIH0KICNlbHNlCi0gICAgcmV0dXJuIFB5SW1wb3J0X0ltcG9ydE1vZHVsZShuYW1lKTsKKyAgICByZXN1bHQgPSBQeUltcG9ydF9JbXBvcnQobmFtZW9iaik7CiAjZW5kaWYKKyAgICBQeV9ERUNSRUYobmFtZW9iaik7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogLyogRm9yd2FyZCBkZWNsYXJhdGlvbnMgZm9yIGhlbHBlciByb3V0aW5lcyAqLwotc3RhdGljIFB5T2JqZWN0ICpnZXRfcGFyZW50KFB5T2JqZWN0ICpnbG9iYWxzLCBjaGFyICpidWYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlfc3NpemVfdCAqcF9idWZsZW4sIGludCBsZXZlbCk7CitzdGF0aWMgUHlPYmplY3QgKmdldF9wYXJlbnQoUHlPYmplY3QgKmdsb2JhbHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKipwX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGxldmVsKTsKIHN0YXRpYyBQeU9iamVjdCAqbG9hZF9uZXh0KFB5T2JqZWN0ICptb2QsIFB5T2JqZWN0ICphbHRtb2QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyICoqcF9uYW1lLCBjaGFyICpidWYsIFB5X3NzaXplX3QgKnBfYnVmbGVuKTsKLXN0YXRpYyBpbnQgbWFya19taXNzKGNoYXIgKm5hbWUpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmlucHV0bmFtZSwgUHlPYmplY3QgKipwX291dHB1dG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqKnBfcHJlZml4KTsKK3N0YXRpYyBpbnQgbWFya19taXNzKFB5T2JqZWN0ICpuYW1lKTsKIHN0YXRpYyBpbnQgZW5zdXJlX2Zyb21saXN0KFB5T2JqZWN0ICptb2QsIFB5T2JqZWN0ICpmcm9tbGlzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmJ1ZiwgUHlfc3NpemVfdCBidWZsZW4sIGludCByZWN1cnNpdmUpOwotc3RhdGljIFB5T2JqZWN0ICogaW1wb3J0X3N1Ym1vZHVsZShQeU9iamVjdCAqbW9kLCBjaGFyICpuYW1lLCBjaGFyICpmdWxsbmFtZSk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqYnVmLCBpbnQgcmVjdXJzaXZlKTsKK3N0YXRpYyBQeU9iamVjdCAqIGltcG9ydF9zdWJtb2R1bGUoUHlPYmplY3QgKm1vZCwgUHlPYmplY3QgKm5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmdWxsbmFtZSk7CiAKIC8qIFRoZSBNYWdudW0gT3B1cyBvZiBkb3R0ZWQtbmFtZSBpbXBvcnQgOi0pICovCiAKIHN0YXRpYyBQeU9iamVjdCAqCi1pbXBvcnRfbW9kdWxlX2xldmVsKGNoYXIgKm5hbWUsIFB5T2JqZWN0ICpnbG9iYWxzLCBQeU9iamVjdCAqbG9jYWxzLAoraW1wb3J0X21vZHVsZV9sZXZlbChQeU9iamVjdCAqbmFtZSwgUHlPYmplY3QgKmdsb2JhbHMsIFB5T2JqZWN0ICpsb2NhbHMsCiAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpmcm9tbGlzdCwgaW50IGxldmVsKQogewotICAgIGNoYXIgYnVmW01BWFBBVEhMRU4rMV07Ci0gICAgUHlfc3NpemVfdCBidWZsZW4gPSAwOwotICAgIFB5T2JqZWN0ICpwYXJlbnQsICpoZWFkLCAqbmV4dCwgKnRhaWw7CisgICAgUHlPYmplY3QgKnBhcmVudCwgKm5leHQsICppbnB1dG5hbWUsICpvdXRwdXRuYW1lOworICAgIFB5T2JqZWN0ICpoZWFkID0gTlVMTDsKKyAgICBQeU9iamVjdCAqdGFpbCA9IE5VTEw7CisgICAgUHlPYmplY3QgKnByZWZpeCA9IE5VTEw7CisgICAgUHlPYmplY3QgKnJlc3VsdCA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBzZXAsIGFsdHNlcDsKIAotICAgIGlmIChzdHJjaHIobmFtZSwgJy8nKSAhPSBOVUxMCi0jaWZkZWYgTVNfV0lORE9XUwotICAgICAgICB8fCBzdHJjaHIobmFtZSwgJ1xcJykgIT0gTlVMTAorICAgIGlmIChQeVVuaWNvZGVfUkVBRFkobmFtZSkpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgc2VwID0gUHlVbmljb2RlX0ZpbmRDaGFyKG5hbWUsIFNFUCwgMCwgUHlVbmljb2RlX0dFVF9MRU5HVEgobmFtZSksIDEpOworICAgIGlmIChzZXAgPT0gLTIpCisgICAgICAgIHJldHVybiBOVUxMOworI2lmZGVmIEFMVFNFUAorICAgIGFsdHNlcCA9IFB5VW5pY29kZV9GaW5kQ2hhcihuYW1lLCBBTFRTRVAsIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWUpLCAxKTsKKyAgICBpZiAoYWx0c2VwID09IC0yKQorICAgICAgICByZXR1cm4gTlVMTDsKKyNlbHNlCisgICAgYWx0c2VwID0gLTE7CiAjZW5kaWYKLSAgICAgICAgKSB7CisgICAgaWYgKHNlcCAhPSAtMSB8fCBhbHRzZXAgIT0gLTEpCisgICAgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSW1wb3J0RXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAiSW1wb3J0IGJ5IGZpbGVuYW1lIGlzIG5vdCBzdXBwb3J0ZWQuIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIHBhcmVudCA9IGdldF9wYXJlbnQoZ2xvYmFscywgYnVmLCAmYnVmbGVuLCBsZXZlbCk7Ci0gICAgaWYgKHBhcmVudCA9PSBOVUxMKQorICAgIHBhcmVudCA9IGdldF9wYXJlbnQoZ2xvYmFscywgJnByZWZpeCwgbGV2ZWwpOworICAgIGlmIChwYXJlbnQgPT0gTlVMTCkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoUHlVbmljb2RlX1JFQURZKHByZWZpeCkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgaGVhZCA9IGxvYWRfbmV4dChwYXJlbnQsIGxldmVsIDwgMCA/IFB5X05vbmUgOiBwYXJlbnQsICZuYW1lLCBidWYsCi0gICAgICAgICAgICAgICAgICAgICAgICAmYnVmbGVuKTsKKyAgICBoZWFkID0gbG9hZF9uZXh0KHBhcmVudCwgbGV2ZWwgPCAwID8gUHlfTm9uZSA6IHBhcmVudCwgbmFtZSwgJm91dHB1dG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAmcHJlZml4KTsKICAgICBpZiAoaGVhZCA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgZ290byBvdXQ7CiAKICAgICB0YWlsID0gaGVhZDsKICAgICBQeV9JTkNSRUYodGFpbCk7Ci0gICAgd2hpbGUgKG5hbWUpIHsKLSAgICAgICAgbmV4dCA9IGxvYWRfbmV4dCh0YWlsLCB0YWlsLCAmbmFtZSwgYnVmLCAmYnVmbGVuKTsKLSAgICAgICAgUHlfREVDUkVGKHRhaWwpOwotICAgICAgICBpZiAobmV4dCA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYoaGVhZCk7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGlmIChvdXRwdXRuYW1lICE9IE5VTEwpIHsKKyAgICAgICAgd2hpbGUgKDEpIHsKKyAgICAgICAgICAgIGlucHV0bmFtZSA9IG91dHB1dG5hbWU7CisgICAgICAgICAgICBuZXh0ID0gbG9hZF9uZXh0KHRhaWwsIHRhaWwsIGlucHV0bmFtZSwgJm91dHB1dG5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcmVmaXgpOworICAgICAgICAgICAgUHlfQ0xFQVIodGFpbCk7CisgICAgICAgICAgICBQeV9DTEVBUihpbnB1dG5hbWUpOworICAgICAgICAgICAgaWYgKG5leHQgPT0gTlVMTCkKKyAgICAgICAgICAgICAgICBnb3RvIG91dDsKKyAgICAgICAgICAgIHRhaWwgPSBuZXh0OworCisgICAgICAgICAgICBpZiAob3V0cHV0bmFtZSA9PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CiAgICAgICAgIH0KLSAgICAgICAgdGFpbCA9IG5leHQ7CiAgICAgfQogICAgIGlmICh0YWlsID09IFB5X05vbmUpIHsKICAgICAgICAgLyogSWYgdGFpbCBpcyBQeV9Ob25lLCBib3RoIGdldF9wYXJlbnQgYW5kIGxvYWRfbmV4dCBmb3VuZAogICAgICAgICAgICBhbiBlbXB0eSBtb2R1bGUgbmFtZTogc29tZW9uZSBjYWxsZWQgX19pbXBvcnRfXygiIikgb3IKICAgICAgICAgICAgZG9jdG9yZWQgZmF1bHR5IGJ5dGVjb2RlICovCi0gICAgICAgIFB5X0RFQ1JFRih0YWlsKTsKLSAgICAgICAgUHlfREVDUkVGKGhlYWQpOwotICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICJFbXB0eSBtb2R1bGUgbmFtZSIpOwotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJFbXB0eSBtb2R1bGUgbmFtZSIpOworICAgICAgICBnb3RvIG91dDsKICAgICB9CiAKICAgICBpZiAoZnJvbWxpc3QgIT0gTlVMTCkgewpAQCAtMjQ2Nyw0OSArMjg3Nyw3MCBAQAogICAgIH0KIAogICAgIGlmIChmcm9tbGlzdCA9PSBOVUxMKSB7Ci0gICAgICAgIFB5X0RFQ1JFRih0YWlsKTsKLSAgICAgICAgcmV0dXJuIGhlYWQ7CisgICAgICAgIHJlc3VsdCA9IGhlYWQ7CisgICAgICAgIFB5X0lOQ1JFRihyZXN1bHQpOworICAgICAgICBnb3RvIG91dDsKICAgICB9CiAKLSAgICBQeV9ERUNSRUYoaGVhZCk7Ci0gICAgaWYgKCFlbnN1cmVfZnJvbWxpc3QodGFpbCwgZnJvbWxpc3QsIGJ1ZiwgYnVmbGVuLCAwKSkgewotICAgICAgICBQeV9ERUNSRUYodGFpbCk7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KKyAgICBpZiAoIWVuc3VyZV9mcm9tbGlzdCh0YWlsLCBmcm9tbGlzdCwgcHJlZml4LCAwKSkKKyAgICAgICAgZ290byBvdXQ7CiAKLSAgICByZXR1cm4gdGFpbDsKKyAgICByZXN1bHQgPSB0YWlsOworICAgIFB5X0lOQ1JFRihyZXN1bHQpOworICBvdXQ6CisgICAgUHlfWERFQ1JFRihoZWFkKTsKKyAgICBQeV9YREVDUkVGKHRhaWwpOworICAgIFB5X1hERUNSRUYocHJlZml4KTsKKyAgICByZXR1cm4gcmVzdWx0OwogfQogCiBQeU9iamVjdCAqCi1QeUltcG9ydF9JbXBvcnRNb2R1bGVMZXZlbChjaGFyICpuYW1lLCBQeU9iamVjdCAqZ2xvYmFscywgUHlPYmplY3QgKmxvY2FscywKLSAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZnJvbWxpc3QsIGludCBsZXZlbCkKK1B5SW1wb3J0X0ltcG9ydE1vZHVsZUxldmVsT2JqZWN0KFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqZ2xvYmFscywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5T2JqZWN0ICpsb2NhbHMsIFB5T2JqZWN0ICpmcm9tbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBsZXZlbCkKIHsKLSAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5T2JqZWN0ICptb2Q7CiAgICAgX1B5SW1wb3J0X0FjcXVpcmVMb2NrKCk7Ci0gICAgcmVzdWx0ID0gaW1wb3J0X21vZHVsZV9sZXZlbChuYW1lLCBnbG9iYWxzLCBsb2NhbHMsIGZyb21saXN0LCBsZXZlbCk7CisgICAgbW9kID0gaW1wb3J0X21vZHVsZV9sZXZlbChuYW1lLCBnbG9iYWxzLCBsb2NhbHMsIGZyb21saXN0LCBsZXZlbCk7CiAgICAgaWYgKF9QeUltcG9ydF9SZWxlYXNlTG9jaygpIDwgMCkgewotICAgICAgICBQeV9YREVDUkVGKHJlc3VsdCk7CisgICAgICAgIFB5X1hERUNSRUYobW9kKTsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1J1bnRpbWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJub3QgaG9sZGluZyB0aGUgaW1wb3J0IGxvY2siKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQotICAgIHJldHVybiByZXN1bHQ7CisgICAgcmV0dXJuIG1vZDsKIH0KIAorUHlPYmplY3QgKgorUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWwoY29uc3QgY2hhciAqbmFtZSwgUHlPYmplY3QgKmdsb2JhbHMsIFB5T2JqZWN0ICpsb2NhbHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqZnJvbWxpc3QsIGludCBsZXZlbCkKK3sKKyAgICBQeU9iamVjdCAqbmFtZW9iaiwgKm1vZDsKKyAgICBuYW1lb2JqID0gUHlVbmljb2RlX0Zyb21TdHJpbmcobmFtZSk7CisgICAgaWYgKG5hbWVvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgbW9kID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTGV2ZWxPYmplY3QobmFtZW9iaiwgZ2xvYmFscywgbG9jYWxzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZyb21saXN0LCBsZXZlbCk7CisgICAgUHlfREVDUkVGKG5hbWVvYmopOworICAgIHJldHVybiBtb2Q7Cit9CisKKwogLyogUmV0dXJuIHRoZSBwYWNrYWdlIHRoYXQgYW4gaW1wb3J0IGlzIGJlaW5nIHBlcmZvcm1lZCBpbi4gIElmIGdsb2JhbHMgY29tZXMKICAgIGZyb20gdGhlIG1vZHVsZSBmb28uYmFyLmJhdCAobm90IGl0c2VsZiBhIHBhY2thZ2UpLCB0aGlzIHJldHVybnMgdGhlCiAgICBzeXMubW9kdWxlcyBlbnRyeSBmb3IgZm9vLmJhci4gIElmIGdsb2JhbHMgaXMgZnJvbSBhIHBhY2thZ2UncyBfX2luaXRfXy5weSwKICAgIHRoZSBwYWNrYWdlJ3MgZW50cnkgaW4gc3lzLm1vZHVsZXMgaXMgcmV0dXJuZWQsIGFzIGEgYm9ycm93ZWQgcmVmZXJlbmNlLgogCi0gICBUaGUgKm5hbWUqIG9mIHRoZSByZXR1cm5lZCBwYWNrYWdlIGlzIHJldHVybmVkIGluIGJ1Ziwgd2l0aCB0aGUgbGVuZ3RoIG9mCi0gICB0aGUgbmFtZSBpbiAqcF9idWZsZW4uCisgICBUaGUgbmFtZSBvZiB0aGUgcmV0dXJuZWQgcGFja2FnZSBpcyByZXR1cm5lZCBpbiAqcF9uYW1lLgogCiAgICBJZiBnbG9iYWxzIGRvZXNuJ3QgY29tZSBmcm9tIGEgcGFja2FnZSBvciBhIG1vZHVsZSBpbiBhIHBhY2thZ2UsIG9yIGEKICAgIGNvcnJlc3BvbmRpbmcgZW50cnkgaXMgbm90IGZvdW5kIGluIHN5cy5tb2R1bGVzLCBQeV9Ob25lIGlzIHJldHVybmVkLgogKi8KIHN0YXRpYyBQeU9iamVjdCAqCi1nZXRfcGFyZW50KFB5T2JqZWN0ICpnbG9iYWxzLCBjaGFyICpidWYsIFB5X3NzaXplX3QgKnBfYnVmbGVuLCBpbnQgbGV2ZWwpCitnZXRfcGFyZW50KFB5T2JqZWN0ICpnbG9iYWxzLCBQeU9iamVjdCAqKnBfbmFtZSwgaW50IGxldmVsKQogeworICAgIFB5T2JqZWN0ICpuYW1lb2JqOworCiAgICAgc3RhdGljIFB5T2JqZWN0ICpuYW1lc3RyID0gTlVMTDsKICAgICBzdGF0aWMgUHlPYmplY3QgKnBhdGhzdHIgPSBOVUxMOwogICAgIHN0YXRpYyBQeU9iamVjdCAqcGtnc3RyID0gTlVMTDsKQEAgLTI1MTcsNyArMjk0OCw3IEBACiAgICAgaW50IG9yaWdfbGV2ZWwgPSBsZXZlbDsKIAogICAgIGlmIChnbG9iYWxzID09IE5VTEwgfHwgIVB5RGljdF9DaGVjayhnbG9iYWxzKSB8fCAhbGV2ZWwpCi0gICAgICAgIHJldHVybiBQeV9Ob25lOworICAgICAgICBnb3RvIHJldHVybl9ub25lOwogCiAgICAgaWYgKG5hbWVzdHIgPT0gTlVMTCkgewogICAgICAgICBuYW1lc3RyID0gUHlVbmljb2RlX0ludGVybkZyb21TdHJpbmcoIl9fbmFtZV9fIik7CkBAIC0yNTM1LDI2MCArMjk2NiwyNzQgQEAKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgICpidWYgPSAnXDAnOwotICAgICpwX2J1ZmxlbiA9IDA7CiAgICAgcGtnbmFtZSA9IFB5RGljdF9HZXRJdGVtKGdsb2JhbHMsIHBrZ3N0cik7CiAKICAgICBpZiAoKHBrZ25hbWUgIT0gTlVMTCkgJiYgKHBrZ25hbWUgIT0gUHlfTm9uZSkpIHsKICAgICAgICAgLyogX19wYWNrYWdlX18gaXMgc2V0LCBzbyB1c2UgaXQgKi8KLSAgICAgICAgY2hhciAqcGtnbmFtZV9zdHI7Ci0gICAgICAgIFB5X3NzaXplX3QgbGVuOwotCiAgICAgICAgIGlmICghUHlVbmljb2RlX0NoZWNrKHBrZ25hbWUpKSB7CiAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiX19wYWNrYWdlX18gc2V0IHRvIG5vbi1zdHJpbmciKTsKICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICB9Ci0gICAgICAgIHBrZ25hbWVfc3RyID0gX1B5VW5pY29kZV9Bc1N0cmluZ0FuZFNpemUocGtnbmFtZSwgJmxlbik7Ci0gICAgICAgIGlmIChsZW4gPT0gMCkgeworICAgICAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgocGtnbmFtZSkgPT0gMCkgewogICAgICAgICAgICAgaWYgKGxldmVsID4gMCkgewogICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAogICAgICAgICAgICAgICAgICAgICAiQXR0ZW1wdGVkIHJlbGF0aXZlIGltcG9ydCBpbiBub24tcGFja2FnZSIpOwogICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcmV0dXJuIFB5X05vbmU7CisgICAgICAgICAgICBnb3RvIHJldHVybl9ub25lOwogICAgICAgICB9Ci0gICAgICAgIGlmIChsZW4gPiBNQVhQQVRITEVOKSB7Ci0gICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUGFja2FnZSBuYW1lIHRvbyBsb25nIik7Ci0gICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgfQotICAgICAgICBzdHJjcHkoYnVmLCBwa2duYW1lX3N0cik7CisgICAgICAgIFB5X0lOQ1JFRihwa2duYW1lKTsKKyAgICAgICAgbmFtZW9iaiA9IHBrZ25hbWU7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLyogX19wYWNrYWdlX18gbm90IHNldCwgc28gZmlndXJlIGl0IG91dCBhbmQgc2V0IGl0ICovCiAgICAgICAgIG1vZG5hbWUgPSBQeURpY3RfR2V0SXRlbShnbG9iYWxzLCBuYW1lc3RyKTsKICAgICAgICAgaWYgKG1vZG5hbWUgPT0gTlVMTCB8fCAhUHlVbmljb2RlX0NoZWNrKG1vZG5hbWUpKQotICAgICAgICAgICAgcmV0dXJuIFB5X05vbmU7CisgICAgICAgICAgICBnb3RvIHJldHVybl9ub25lOwogCiAgICAgICAgIG1vZHBhdGggPSBQeURpY3RfR2V0SXRlbShnbG9iYWxzLCBwYXRoc3RyKTsKICAgICAgICAgaWYgKG1vZHBhdGggIT0gTlVMTCkgewogICAgICAgICAgICAgLyogX19wYXRoX18gaXMgc2V0LCBzbyBtb2RuYW1lIGlzIGFscmVhZHkgdGhlIHBhY2thZ2UgbmFtZSAqLwotICAgICAgICAgICAgY2hhciAqbW9kbmFtZV9zdHI7Ci0gICAgICAgICAgICBQeV9zc2l6ZV90IGxlbjsKICAgICAgICAgICAgIGludCBlcnJvcjsKIAotICAgICAgICAgICAgbW9kbmFtZV9zdHIgPSBfUHlVbmljb2RlX0FzU3RyaW5nQW5kU2l6ZShtb2RuYW1lLCAmbGVuKTsKLSAgICAgICAgICAgIGlmIChsZW4gPiBNQVhQQVRITEVOKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJNb2R1bGUgbmFtZSB0b28gbG9uZyIpOwotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgc3RyY3B5KGJ1ZiwgbW9kbmFtZV9zdHIpOwogICAgICAgICAgICAgZXJyb3IgPSBQeURpY3RfU2V0SXRlbShnbG9iYWxzLCBwa2dzdHIsIG1vZG5hbWUpOwogICAgICAgICAgICAgaWYgKGVycm9yKSB7CiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJDb3VsZCBub3Qgc2V0IF9fcGFja2FnZV9fIik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgICAgICB9CisgICAgICAgICAgICBQeV9JTkNSRUYobW9kbmFtZSk7CisgICAgICAgICAgICBuYW1lb2JqID0gbW9kbmFtZTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIC8qIE5vcm1hbCBtb2R1bGUsIHNvIHdvcmsgb3V0IHRoZSBwYWNrYWdlIG5hbWUgaWYgYW55ICovCi0gICAgICAgICAgICBjaGFyICpzdGFydCA9IF9QeVVuaWNvZGVfQXNTdHJpbmcobW9kbmFtZSk7Ci0gICAgICAgICAgICBjaGFyICpsYXN0ZG90ID0gc3RycmNocihzdGFydCwgJy4nKTsKLSAgICAgICAgICAgIHNpemVfdCBsZW47Ci0gICAgICAgICAgICBpbnQgZXJyb3I7Ci0gICAgICAgICAgICBpZiAobGFzdGRvdCA9PSBOVUxMICYmIGxldmVsID4gMCkgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAiQXR0ZW1wdGVkIHJlbGF0aXZlIGltcG9ydCBpbiBub24tcGFja2FnZSIpOworICAgICAgICAgICAgUHlfc3NpemVfdCBsZW47CisgICAgICAgICAgICBsZW4gPSBQeVVuaWNvZGVfRmluZENoYXIobW9kbmFtZSwgJy4nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsIFB5VW5pY29kZV9HRVRfTEVOR1RIKG1vZG5hbWUpLCAtMSk7CisgICAgICAgICAgICBpZiAobGVuID09IC0yKQogICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgaWYgKGxhc3Rkb3QgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgIGVycm9yID0gUHlEaWN0X1NldEl0ZW0oZ2xvYmFscywgcGtnc3RyLCBQeV9Ob25lKTsKLSAgICAgICAgICAgICAgICBpZiAoZXJyb3IpIHsKKyAgICAgICAgICAgIGlmIChsZW4gPCAwKSB7CisgICAgICAgICAgICAgICAgaWYgKGxldmVsID4gMCkgeworICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgICAgICJBdHRlbXB0ZWQgcmVsYXRpdmUgaW1wb3J0IGluIG5vbi1wYWNrYWdlIik7CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW0oZ2xvYmFscywgcGtnc3RyLCBQeV9Ob25lKSkgewogICAgICAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICJDb3VsZCBub3Qgc2V0IF9fcGFja2FnZV9fIik7CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwogICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgICByZXR1cm4gUHlfTm9uZTsKKyAgICAgICAgICAgICAgICBnb3RvIHJldHVybl9ub25lOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgbGVuID0gbGFzdGRvdCAtIHN0YXJ0OwotICAgICAgICAgICAgaWYgKGxlbiA+PSBNQVhQQVRITEVOKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJNb2R1bGUgbmFtZSB0b28gbG9uZyIpOworICAgICAgICAgICAgcGtnbmFtZSA9IFB5VW5pY29kZV9TdWJzdHJpbmcobW9kbmFtZSwgMCwgbGVuKTsKKyAgICAgICAgICAgIGlmIChwa2duYW1lID09IE5VTEwpCiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBzdHJuY3B5KGJ1Ziwgc3RhcnQsIGxlbik7Ci0gICAgICAgICAgICBidWZbbGVuXSA9ICdcMCc7Ci0gICAgICAgICAgICBwa2duYW1lID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoYnVmKTsKLSAgICAgICAgICAgIGlmIChwa2duYW1lID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGVycm9yID0gUHlEaWN0X1NldEl0ZW0oZ2xvYmFscywgcGtnc3RyLCBwa2duYW1lKTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihwa2duYW1lKTsKLSAgICAgICAgICAgIGlmIChlcnJvcikgeworICAgICAgICAgICAgaWYgKFB5RGljdF9TZXRJdGVtKGdsb2JhbHMsIHBrZ3N0ciwgcGtnbmFtZSkpIHsKKyAgICAgICAgICAgICAgICBQeV9ERUNSRUYocGtnbmFtZSk7CiAgICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJDb3VsZCBub3Qgc2V0IF9fcGFja2FnZV9fIik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgICAgICB9CisgICAgICAgICAgICBuYW1lb2JqID0gcGtnbmFtZTsKICAgICAgICAgfQogICAgIH0KLSAgICB3aGlsZSAoLS1sZXZlbCA+IDApIHsKLSAgICAgICAgY2hhciAqZG90ID0gc3RycmNocihidWYsICcuJyk7Ci0gICAgICAgIGlmIChkb3QgPT0gTlVMTCkgewotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCi0gICAgICAgICAgICAgICAgIkF0dGVtcHRlZCByZWxhdGl2ZSBpbXBvcnQgYmV5b25kICIKLSAgICAgICAgICAgICAgICAidG9wbGV2ZWwgcGFja2FnZSIpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIH0KLSAgICAgICAgKmRvdCA9ICdcMCc7Ci0gICAgfQotICAgICpwX2J1ZmxlbiA9IHN0cmxlbihidWYpOwotCi0gICAgbW9kdWxlcyA9IFB5SW1wb3J0X0dldE1vZHVsZURpY3QoKTsKLSAgICBwYXJlbnQgPSBQeURpY3RfR2V0SXRlbVN0cmluZyhtb2R1bGVzLCBidWYpOwotICAgIGlmIChwYXJlbnQgPT0gTlVMTCkgewotICAgICAgICBpZiAob3JpZ19sZXZlbCA8IDEpIHsKLSAgICAgICAgICAgIFB5T2JqZWN0ICplcnJfbXNnID0gUHlCeXRlc19Gcm9tRm9ybWF0KAotICAgICAgICAgICAgICAgICJQYXJlbnQgbW9kdWxlICclLjIwMHMnIG5vdCBmb3VuZCAiCi0gICAgICAgICAgICAgICAgIndoaWxlIGhhbmRsaW5nIGFic29sdXRlIGltcG9ydCIsIGJ1Zik7Ci0gICAgICAgICAgICBpZiAoZXJyX21zZyA9PSBOVUxMKSB7CisgICAgaWYgKGxldmVsID4gMSkgeworICAgICAgICBQeV9zc2l6ZV90IGRvdCwgZW5kID0gUHlVbmljb2RlX0dFVF9MRU5HVEgobmFtZW9iaik7CisgICAgICAgIFB5T2JqZWN0ICpuZXduYW1lOworICAgICAgICB3aGlsZSAoLS1sZXZlbCA+IDApIHsKKyAgICAgICAgICAgIGRvdCA9IFB5VW5pY29kZV9GaW5kQ2hhcihuYW1lb2JqLCAnLicsIDAsIGVuZCwgLTEpOworICAgICAgICAgICAgaWYgKGRvdCA9PSAtMikgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKICAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGlmICghUHlFcnJfV2FybkV4KFB5RXhjX1J1bnRpbWVXYXJuaW5nLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlCeXRlc19Bc1N0cmluZyhlcnJfbXNnKSwgMSkpIHsKLSAgICAgICAgICAgICAgICAqYnVmID0gJ1wwJzsKLSAgICAgICAgICAgICAgICAqcF9idWZsZW4gPSAwOwotICAgICAgICAgICAgICAgIHBhcmVudCA9IFB5X05vbmU7CisgICAgICAgICAgICBpZiAoZG90IDwgMCkgeworICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKKyAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKKyAgICAgICAgICAgICAgICAgICAgIkF0dGVtcHRlZCByZWxhdGl2ZSBpbXBvcnQgYmV5b25kICIKKyAgICAgICAgICAgICAgICAgICAgInRvcGxldmVsIHBhY2thZ2UiKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIFB5X0RFQ1JFRihlcnJfbXNnKTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19TeXN0ZW1FcnJvciwKLSAgICAgICAgICAgICAgICAiUGFyZW50IG1vZHVsZSAnJS4yMDBzJyBub3QgbG9hZGVkLCAiCi0gICAgICAgICAgICAgICAgImNhbm5vdCBwZXJmb3JtIHJlbGF0aXZlIGltcG9ydCIsIGJ1Zik7CisgICAgICAgICAgICBlbmQgPSBkb3Q7CiAgICAgICAgIH0KKyAgICAgICAgbmV3bmFtZSA9IFB5VW5pY29kZV9TdWJzdHJpbmcobmFtZW9iaiwgMCwgZW5kKTsKKyAgICAgICAgUHlfREVDUkVGKG5hbWVvYmopOworICAgICAgICBpZiAobmV3bmFtZSA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIG5hbWVvYmogPSBuZXduYW1lOwogICAgIH0KKworICAgIG1vZHVsZXMgPSBQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCk7CisgICAgcGFyZW50ID0gUHlEaWN0X0dldEl0ZW0obW9kdWxlcywgbmFtZW9iaik7CisgICAgaWYgKHBhcmVudCA9PSBOVUxMKSB7CisgICAgICAgIGludCBlcnI7CisKKyAgICAgICAgaWYgKG9yaWdfbGV2ZWwgPj0gMSkgeworICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1N5c3RlbUVycm9yLAorICAgICAgICAgICAgICAgICJQYXJlbnQgbW9kdWxlICVSIG5vdCBsb2FkZWQsICIKKyAgICAgICAgICAgICAgICAiY2Fubm90IHBlcmZvcm0gcmVsYXRpdmUgaW1wb3J0IiwgbmFtZW9iaik7CisgICAgICAgICAgICBQeV9ERUNSRUYobmFtZW9iaik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQorCisgICAgICAgIGVyciA9IFB5RXJyX1dhcm5Gb3JtYXQoCisgICAgICAgICAgICBQeUV4Y19SdW50aW1lV2FybmluZywgMSwKKyAgICAgICAgICAgICJQYXJlbnQgbW9kdWxlICVSIG5vdCBmb3VuZCB3aGlsZSBoYW5kbGluZyBhYnNvbHV0ZSBpbXBvcnQiLAorICAgICAgICAgICAgbmFtZW9iaik7CisgICAgICAgIFB5X0RFQ1JFRihuYW1lb2JqKTsKKyAgICAgICAgaWYgKGVycikKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworCisgICAgICAgIGdvdG8gcmV0dXJuX25vbmU7CisgICAgfQorICAgICpwX25hbWUgPSBuYW1lb2JqOwogICAgIHJldHVybiBwYXJlbnQ7CiAgICAgLyogV2UgZXhwZWN0LCBidXQgY2FuJ3QgZ3VhcmFudGVlLCBpZiBwYXJlbnQgIT0gTm9uZSwgdGhhdDoKLSAgICAgICAtIHBhcmVudC5fX25hbWVfXyA9PSBidWYKKyAgICAgICAtIHBhcmVudC5fX25hbWVfXyA9PSBuYW1lCiAgICAgICAgLSBwYXJlbnQuX19kaWN0X18gaXMgZ2xvYmFscwogICAgICAgIElmIHRoaXMgaXMgdmlvbGF0ZWQuLi4gIFdobyBjYXJlcz8gKi8KKworcmV0dXJuX25vbmU6CisgICAgbmFtZW9iaiA9IFB5VW5pY29kZV9OZXcoMCwgMCk7CisgICAgaWYgKG5hbWVvYmogPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgKnBfbmFtZSA9IG5hbWVvYmo7CisgICAgcmV0dXJuIFB5X05vbmU7CiB9CiAKIC8qIGFsdG1vZCBpcyBlaXRoZXIgTm9uZSBvciBzYW1lIGFzIG1vZCAqLwogc3RhdGljIFB5T2JqZWN0ICoKLWxvYWRfbmV4dChQeU9iamVjdCAqbW9kLCBQeU9iamVjdCAqYWx0bW9kLCBjaGFyICoqcF9uYW1lLCBjaGFyICpidWYsCi0gICAgICAgICAgUHlfc3NpemVfdCAqcF9idWZsZW4pCitsb2FkX25leHQoUHlPYmplY3QgKm1vZCwgUHlPYmplY3QgKmFsdG1vZCwKKyAgICAgICAgICBQeU9iamVjdCAqaW5wdXRuYW1lLCBQeU9iamVjdCAqKnBfb3V0cHV0bmFtZSwKKyAgICAgICAgICBQeU9iamVjdCAqKnBfcHJlZml4KQogewotICAgIGNoYXIgKm5hbWUgPSAqcF9uYW1lOwotICAgIGNoYXIgKmRvdCA9IHN0cmNocihuYW1lLCAnLicpOwotICAgIHNpemVfdCBsZW47Ci0gICAgY2hhciAqcDsKLSAgICBQeU9iamVjdCAqcmVzdWx0OworICAgIFB5X3NzaXplX3QgZG90OworICAgIFB5X3NzaXplX3QgbGVuOworICAgIFB5T2JqZWN0ICpmdWxsbmFtZSwgKm5hbWUgPSBOVUxMLCAqcmVzdWx0OwogCi0gICAgaWYgKHN0cmxlbihuYW1lKSA9PSAwKSB7CisgICAgKnBfb3V0cHV0bmFtZSA9IE5VTEw7CisKKyAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX0xFTkdUSChpbnB1dG5hbWUpOworICAgIGlmIChsZW4gPT0gMCkgewogICAgICAgICAvKiBjb21wbGV0ZWx5IGVtcHR5IG1vZHVsZSBuYW1lIHNob3VsZCBvbmx5IGhhcHBlbiBpbgogICAgICAgICAgICAnZnJvbSAuIGltcG9ydCcgKG9yICdfX2ltcG9ydF9fKCIiKScpKi8KICAgICAgICAgUHlfSU5DUkVGKG1vZCk7Ci0gICAgICAgICpwX25hbWUgPSBOVUxMOwogICAgICAgICByZXR1cm4gbW9kOwogICAgIH0KIAotICAgIGlmIChkb3QgPT0gTlVMTCkgewotICAgICAgICAqcF9uYW1lID0gTlVMTDsKLSAgICAgICAgbGVuID0gc3RybGVuKG5hbWUpOworCisgICAgZG90ID0gUHlVbmljb2RlX0ZpbmRDaGFyKGlucHV0bmFtZSwgJy4nLCAwLCBsZW4sIDEpOworICAgIGlmIChkb3QgPj0gMCkgeworICAgICAgICBsZW4gPSBkb3Q7CisgICAgICAgIGlmIChsZW4gPT0gMCkgeworICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkVtcHR5IG1vZHVsZSBuYW1lIik7CisgICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICB9CisgICAgfQorCisgICAgLyogbmFtZSA9IGlucHV0bmFtZVs6bGVuXSAqLworICAgIG5hbWUgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKGlucHV0bmFtZSwgMCwgbGVuKTsKKyAgICBpZiAobmFtZSA9PSBOVUxMKQorICAgICAgICBnb3RvIGVycm9yOworCisgICAgaWYgKFB5VW5pY29kZV9HRVRfTEVOR1RIKCpwX3ByZWZpeCkpIHsKKyAgICAgICAgLyogZnVsbG5hbWUgPSBwcmVmaXggKyAiLiIgKyBuYW1lICovCisgICAgICAgIGZ1bGxuYW1lID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVLiVVIiwgKnBfcHJlZml4LCBuYW1lKTsKKyAgICAgICAgaWYgKGZ1bGxuYW1lID09IE5VTEwpCisgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KICAgICBlbHNlIHsKLSAgICAgICAgKnBfbmFtZSA9IGRvdCsxOwotICAgICAgICBsZW4gPSBkb3QtbmFtZTsKLSAgICB9Ci0gICAgaWYgKGxlbiA9PSAwKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgIkVtcHR5IG1vZHVsZSBuYW1lIik7Ci0gICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBmdWxsbmFtZSA9IG5hbWU7CisgICAgICAgIFB5X0lOQ1JFRihmdWxsbmFtZSk7CiAgICAgfQogCi0gICAgcCA9IGJ1ZiArICpwX2J1ZmxlbjsKLSAgICBpZiAocCAhPSBidWYpCi0gICAgICAgICpwKysgPSAnLic7Ci0gICAgaWYgKHArbGVuLWJ1ZiA+PSBNQVhQQVRITEVOKSB7Ci0gICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLAotICAgICAgICAgICAgICAgICAgICAgICAgIk1vZHVsZSBuYW1lIHRvbyBsb25nIik7Ci0gICAgICAgIHJldHVybiBOVUxMOwotICAgIH0KLSAgICBzdHJuY3B5KHAsIG5hbWUsIGxlbik7Ci0gICAgcFtsZW5dID0gJ1wwJzsKLSAgICAqcF9idWZsZW4gPSBwK2xlbi1idWY7Ci0KLSAgICByZXN1bHQgPSBpbXBvcnRfc3VibW9kdWxlKG1vZCwgcCwgYnVmKTsKKyAgICByZXN1bHQgPSBpbXBvcnRfc3VibW9kdWxlKG1vZCwgbmFtZSwgZnVsbG5hbWUpOworICAgIFB5X0RFQ1JFRigqcF9wcmVmaXgpOworICAgIC8qIFRyYW5zZmVyIHJlZmVyZW5jZS4gKi8KKyAgICAqcF9wcmVmaXggPSBmdWxsbmFtZTsKICAgICBpZiAocmVzdWx0ID09IFB5X05vbmUgJiYgYWx0bW9kICE9IG1vZCkgewogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKICAgICAgICAgLyogSGVyZSwgYWx0bW9kIG11c3QgYmUgTm9uZSBhbmQgbW9kIG11c3Qgbm90IGJlIE5vbmUgKi8KLSAgICAgICAgcmVzdWx0ID0gaW1wb3J0X3N1Ym1vZHVsZShhbHRtb2QsIHAsIHApOworICAgICAgICByZXN1bHQgPSBpbXBvcnRfc3VibW9kdWxlKGFsdG1vZCwgbmFtZSwgbmFtZSk7CiAgICAgICAgIGlmIChyZXN1bHQgIT0gTlVMTCAmJiByZXN1bHQgIT0gUHlfTm9uZSkgewotICAgICAgICAgICAgaWYgKG1hcmtfbWlzcyhidWYpICE9IDApIHsKKyAgICAgICAgICAgIGlmIChtYXJrX21pc3MoKnBfcHJlZml4KSAhPSAwKSB7CiAgICAgICAgICAgICAgICAgUHlfREVDUkVGKHJlc3VsdCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHN0cm5jcHkoYnVmLCBuYW1lLCBsZW4pOwotICAgICAgICAgICAgYnVmW2xlbl0gPSAnXDAnOwotICAgICAgICAgICAgKnBfYnVmbGVuID0gbGVuOworICAgICAgICAgICAgUHlfREVDUkVGKCpwX3ByZWZpeCk7CisgICAgICAgICAgICAqcF9wcmVmaXggPSBuYW1lOworICAgICAgICAgICAgUHlfSU5DUkVGKCpwX3ByZWZpeCk7CiAgICAgICAgIH0KICAgICB9CiAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgZ290byBlcnJvcjsKIAogICAgIGlmIChyZXN1bHQgPT0gUHlfTm9uZSkgewogICAgICAgICBQeV9ERUNSRUYocmVzdWx0KTsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAgICAgICAgICAgIk5vIG1vZHVsZSBuYW1lZCAlLjIwMHMiLCBuYW1lKTsKLSAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICAgICAgICAgICAiTm8gbW9kdWxlIG5hbWVkICVSIiwgaW5wdXRuYW1lKTsKKyAgICAgICAgZ290byBlcnJvcjsKICAgICB9CiAKKyAgICBpZiAoZG90ID49IDApIHsKKyAgICAgICAgKnBfb3V0cHV0bmFtZSA9IFB5VW5pY29kZV9TdWJzdHJpbmcoaW5wdXRuYW1lLCBkb3QrMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0dFVF9MRU5HVEgoaW5wdXRuYW1lKSk7CisgICAgICAgIGlmICgqcF9vdXRwdXRuYW1lID09IE5VTEwpIHsKKyAgICAgICAgICAgIFB5X0RFQ1JFRihyZXN1bHQpOworICAgICAgICAgICAgZ290byBlcnJvcjsKKyAgICAgICAgfQorICAgIH0KKworICAgIFB5X0RFQ1JFRihuYW1lKTsKICAgICByZXR1cm4gcmVzdWx0OworCitlcnJvcjoKKyAgICBQeV9YREVDUkVGKG5hbWUpOworICAgIHJldHVybiBOVUxMOwogfQogCiBzdGF0aWMgaW50Ci1tYXJrX21pc3MoY2hhciAqbmFtZSkKK21hcmtfbWlzcyhQeU9iamVjdCAqbmFtZSkKIHsKICAgICBQeU9iamVjdCAqbW9kdWxlcyA9IFB5SW1wb3J0X0dldE1vZHVsZURpY3QoKTsKLSAgICByZXR1cm4gUHlEaWN0X1NldEl0ZW1TdHJpbmcobW9kdWxlcywgbmFtZSwgUHlfTm9uZSk7CisgICAgcmV0dXJuIFB5RGljdF9TZXRJdGVtKG1vZHVsZXMsIG5hbWUsIFB5X05vbmUpOwogfQogCiBzdGF0aWMgaW50Ci1lbnN1cmVfZnJvbWxpc3QoUHlPYmplY3QgKm1vZCwgUHlPYmplY3QgKmZyb21saXN0LCBjaGFyICpidWYsIFB5X3NzaXplX3QgYnVmbGVuLAorZW5zdXJlX2Zyb21saXN0KFB5T2JqZWN0ICptb2QsIFB5T2JqZWN0ICpmcm9tbGlzdCwgUHlPYmplY3QgKm5hbWUsCiAgICAgICAgICAgICAgICAgaW50IHJlY3Vyc2l2ZSkKIHsKICAgICBpbnQgaTsKKyAgICBQeU9iamVjdCAqZnVsbG5hbWU7CisgICAgUHlfc3NpemVfdCBmcm9tbGlzdF9sZW47CiAKLSAgICBpZiAoIVB5T2JqZWN0X0hhc0F0dHJTdHJpbmcobW9kLCAiX19wYXRoX18iKSkKKyAgICBpZiAoIV9QeU9iamVjdF9IYXNBdHRySWQobW9kLCAmUHlJZF9fX3BhdGhfXykpCiAgICAgICAgIHJldHVybiAxOwogCi0gICAgZm9yIChpID0gMDsgOyBpKyspIHsKKyAgICBmcm9tbGlzdF9sZW4gPSBQeVNlcXVlbmNlX1NpemUoZnJvbWxpc3QpOworCisgICAgZm9yIChpID0gMDsgaSA8IGZyb21saXN0X2xlbjsgaSsrKSB7CiAgICAgICAgIFB5T2JqZWN0ICppdGVtID0gUHlTZXF1ZW5jZV9HZXRJdGVtKGZyb21saXN0LCBpKTsKICAgICAgICAgaW50IGhhc2l0OwotICAgICAgICBpZiAoaXRlbSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBpZiAoUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19JbmRleEVycm9yKSkgewotICAgICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIDE7Ci0gICAgICAgICAgICB9CisgICAgICAgIGlmIChpdGVtID09IE5VTEwpCiAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgfQogICAgICAgICBpZiAoIVB5VW5pY29kZV9DaGVjayhpdGVtKSkgewogICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1R5cGVFcnJvciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiSXRlbSBpbiBgYGZyb20gbGlzdCcnIG5vdCBhIHN0cmluZyIpOwogICAgICAgICAgICAgUHlfREVDUkVGKGl0ZW0pOwogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKFB5VW5pY29kZV9BU19VTklDT0RFKGl0ZW0pWzBdID09ICcqJykgeworICAgICAgICBpZiAoUHlVbmljb2RlX1JFQURfQ0hBUihpdGVtLCAwKSA9PSAnKicpIHsKICAgICAgICAgICAgIFB5T2JqZWN0ICphbGw7CisgICAgICAgICAgICBfUHlfSURFTlRJRklFUihfX2FsbF9fKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRihpdGVtKTsKICAgICAgICAgICAgIC8qIFNlZSBpZiB0aGUgcGFja2FnZSBkZWZpbmVzIF9fYWxsX18gKi8KICAgICAgICAgICAgIGlmIChyZWN1cnNpdmUpCiAgICAgICAgICAgICAgICAgY29udGludWU7IC8qIEF2b2lkIGVuZGxlc3MgcmVjdXJzaW9uICovCi0gICAgICAgICAgICBhbGwgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG1vZCwgIl9fYWxsX18iKTsKKyAgICAgICAgICAgIGFsbCA9IF9QeU9iamVjdF9HZXRBdHRySWQobW9kLCAmUHlJZF9fX2FsbF9fKTsKICAgICAgICAgICAgIGlmIChhbGwgPT0gTlVMTCkKICAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICAgICAgZWxzZSB7Ci0gICAgICAgICAgICAgICAgaW50IHJldCA9IGVuc3VyZV9mcm9tbGlzdChtb2QsIGFsbCwgYnVmLCBidWZsZW4sIDEpOworICAgICAgICAgICAgICAgIGludCByZXQgPSBlbnN1cmVfZnJvbWxpc3QobW9kLCBhbGwsIG5hbWUsIDEpOwogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihhbGwpOwogICAgICAgICAgICAgICAgIGlmICghcmV0KQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKQEAgLTI3OTcsMjcgKzMyNDIsMTQgQEAKICAgICAgICAgfQogICAgICAgICBoYXNpdCA9IFB5T2JqZWN0X0hhc0F0dHIobW9kLCBpdGVtKTsKICAgICAgICAgaWYgKCFoYXNpdCkgewotICAgICAgICAgICAgUHlPYmplY3QgKml0ZW04OwotICAgICAgICAgICAgY2hhciAqc3VibmFtZTsKICAgICAgICAgICAgIFB5T2JqZWN0ICpzdWJtb2Q7Ci0gICAgICAgICAgICBjaGFyICpwOwotICAgICAgICAgICAgaXRlbTggPSBQeVVuaWNvZGVfRW5jb2RlRlNEZWZhdWx0KGl0ZW0pOwotICAgICAgICAgICAgaWYgKCFpdGVtOCkgewotICAgICAgICAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19WYWx1ZUVycm9yLCAiQ2Fubm90IGVuY29kZSBwYXRoIGl0ZW0iKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgICAgIGZ1bGxuYW1lID0gUHlVbmljb2RlX0Zyb21Gb3JtYXQoIiVVLiVVIiwgbmFtZSwgaXRlbSk7CisgICAgICAgICAgICBpZiAoZnVsbG5hbWUgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgIHN1Ym1vZCA9IGltcG9ydF9zdWJtb2R1bGUobW9kLCBpdGVtLCBmdWxsbmFtZSk7CisgICAgICAgICAgICAgICAgUHlfREVDUkVGKGZ1bGxuYW1lKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHN1Ym5hbWUgPSBQeUJ5dGVzX0FTX1NUUklORyhpdGVtOCk7Ci0gICAgICAgICAgICBpZiAoYnVmbGVuICsgc3RybGVuKHN1Ym5hbWUpID49IE1BWFBBVEhMRU4pIHsKLSAgICAgICAgICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfVmFsdWVFcnJvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIk1vZHVsZSBuYW1lIHRvbyBsb25nIik7Ci0gICAgICAgICAgICAgICAgUHlfREVDUkVGKGl0ZW0pOwotICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgcCA9IGJ1ZiArIGJ1ZmxlbjsKLSAgICAgICAgICAgICpwKysgPSAnLic7Ci0gICAgICAgICAgICBzdHJjcHkocCwgc3VibmFtZSk7Ci0gICAgICAgICAgICBzdWJtb2QgPSBpbXBvcnRfc3VibW9kdWxlKG1vZCwgc3VibmFtZSwgYnVmKTsKLSAgICAgICAgICAgIFB5X0RFQ1JFRihpdGVtOCk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgc3VibW9kID0gTlVMTDsKICAgICAgICAgICAgIFB5X1hERUNSRUYoc3VibW9kKTsKICAgICAgICAgICAgIGlmIChzdWJtb2QgPT0gTlVMTCkgewogICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihpdGVtKTsKQEAgLTI4MjcsMTIgKzMyNTksMTIgQEAKICAgICAgICAgUHlfREVDUkVGKGl0ZW0pOwogICAgIH0KIAotICAgIC8qIE5PVFJFQUNIRUQgKi8KKyAgICByZXR1cm4gMTsKIH0KIAogc3RhdGljIGludAotYWRkX3N1Ym1vZHVsZShQeU9iamVjdCAqbW9kLCBQeU9iamVjdCAqc3VibW9kLCBjaGFyICpmdWxsbmFtZSwgY2hhciAqc3VibmFtZSwKLSAgICAgICAgICAgICAgUHlPYmplY3QgKm1vZHVsZXMpCithZGRfc3VibW9kdWxlKFB5T2JqZWN0ICptb2QsIFB5T2JqZWN0ICpzdWJtb2QsIFB5T2JqZWN0ICpmdWxsbmFtZSwKKyAgICAgICAgICAgICAgUHlPYmplY3QgKnN1Ym5hbWUsIFB5T2JqZWN0ICptb2R1bGVzKQogewogICAgIGlmIChtb2QgPT0gUHlfTm9uZSkKICAgICAgICAgcmV0dXJuIDE7CkBAIC0yODQzLDcgKzMyNzUsNyBAQAogICAgICAgIGxvYWQgZmFpbGVkIHdpdGggYSBTeW50YXhFcnJvciAtLSB0aGVuIHRoZXJlJ3Mgbm8gdHJhY2UgaW4KICAgICAgICBzeXMubW9kdWxlcy4gIEluIHRoYXQgY2FzZSwgb2YgY291cnNlLCBkbyBub3RoaW5nIGV4dHJhLikgKi8KICAgICBpZiAoc3VibW9kID09IE5VTEwpIHsKLSAgICAgICAgc3VibW9kID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcobW9kdWxlcywgZnVsbG5hbWUpOworICAgICAgICBzdWJtb2QgPSBQeURpY3RfR2V0SXRlbShtb2R1bGVzLCBmdWxsbmFtZSk7CiAgICAgICAgIGlmIChzdWJtb2QgPT0gTlVMTCkKICAgICAgICAgICAgIHJldHVybiAxOwogICAgIH0KQEAgLTI4NTQsNjggKzMyODYsNjYgQEAKICAgICAgICAgUHlPYmplY3QgKmRpY3QgPSBQeU1vZHVsZV9HZXREaWN0KG1vZCk7CiAgICAgICAgIGlmICghZGljdCkKICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcoZGljdCwgc3VibmFtZSwgc3VibW9kKSA8IDApCisgICAgICAgIGlmIChQeURpY3RfU2V0SXRlbShkaWN0LCBzdWJuYW1lLCBzdWJtb2QpIDwgMCkKICAgICAgICAgICAgIHJldHVybiAwOwogICAgIH0KICAgICBlbHNlIHsKLSAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHJTdHJpbmcobW9kLCBzdWJuYW1lLCBzdWJtb2QpIDwgMCkKKyAgICAgICAgaWYgKFB5T2JqZWN0X1NldEF0dHIobW9kLCBzdWJuYW1lLCBzdWJtb2QpIDwgMCkKICAgICAgICAgICAgIHJldHVybiAwOwogICAgIH0KICAgICByZXR1cm4gMTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKLWltcG9ydF9zdWJtb2R1bGUoUHlPYmplY3QgKm1vZCwgY2hhciAqc3VibmFtZSwgY2hhciAqZnVsbG5hbWUpCitpbXBvcnRfc3VibW9kdWxlKFB5T2JqZWN0ICptb2QsIFB5T2JqZWN0ICpzdWJuYW1lLCBQeU9iamVjdCAqZnVsbG5hbWUpCiB7CiAgICAgUHlPYmplY3QgKm1vZHVsZXMgPSBQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCk7Ci0gICAgUHlPYmplY3QgKm0gPSBOVUxMOworICAgIFB5T2JqZWN0ICptID0gTlVMTCwgKmJ1Zm9iaiwgKnBhdGhfbGlzdCwgKmxvYWRlcjsKKyAgICBzdHJ1Y3QgZmlsZWRlc2NyICpmZHA7CisgICAgRklMRSAqZnA7CiAKICAgICAvKiBSZXF1aXJlOgogICAgICAgIGlmIG1vZCA9PSBOb25lOiBzdWJuYW1lID09IGZ1bGxuYW1lCiAgICAgICAgZWxzZTogbW9kLl9fbmFtZV9fICsgIi4iICsgc3VibmFtZSA9PSBmdWxsbmFtZQogICAgICovCiAKLSAgICBpZiAoKG0gPSBQeURpY3RfR2V0SXRlbVN0cmluZyhtb2R1bGVzLCBmdWxsbmFtZSkpICE9IE5VTEwpIHsKKyAgICBpZiAoKG0gPSBQeURpY3RfR2V0SXRlbShtb2R1bGVzLCBmdWxsbmFtZSkpICE9IE5VTEwpIHsKICAgICAgICAgUHlfSU5DUkVGKG0pOworICAgICAgICByZXR1cm4gbTsKICAgICB9CisKKyAgICBpZiAobW9kID09IFB5X05vbmUpCisgICAgICAgIHBhdGhfbGlzdCA9IE5VTEw7CiAgICAgZWxzZSB7Ci0gICAgICAgIFB5T2JqZWN0ICpwYXRoLCAqbG9hZGVyID0gTlVMTDsKLSAgICAgICAgY2hhciBidWZbTUFYUEFUSExFTisxXTsKLSAgICAgICAgc3RydWN0IGZpbGVkZXNjciAqZmRwOwotICAgICAgICBGSUxFICpmcCA9IE5VTEw7Ci0KLSAgICAgICAgaWYgKG1vZCA9PSBQeV9Ob25lKQotICAgICAgICAgICAgcGF0aCA9IE5VTEw7Ci0gICAgICAgIGVsc2UgewotICAgICAgICAgICAgcGF0aCA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcobW9kLCAiX19wYXRoX18iKTsKLSAgICAgICAgICAgIGlmIChwYXRoID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBQeUVycl9DbGVhcigpOwotICAgICAgICAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKLSAgICAgICAgICAgICAgICByZXR1cm4gUHlfTm9uZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotCi0gICAgICAgIGJ1ZlswXSA9ICdcMCc7Ci0gICAgICAgIGZkcCA9IGZpbmRfbW9kdWxlKGZ1bGxuYW1lLCBzdWJuYW1lLCBwYXRoLCBidWYsIE1BWFBBVEhMRU4rMSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJmZwLCAmbG9hZGVyKTsKLSAgICAgICAgUHlfWERFQ1JFRihwYXRoKTsKLSAgICAgICAgaWYgKGZkcCA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBpZiAoIVB5RXJyX0V4Y2VwdGlvbk1hdGNoZXMoUHlFeGNfSW1wb3J0RXJyb3IpKQotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBwYXRoX2xpc3QgPSBfUHlPYmplY3RfR2V0QXR0cklkKG1vZCwgJlB5SWRfX19wYXRoX18pOworICAgICAgICBpZiAocGF0aF9saXN0ID09IE5VTEwpIHsKICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CiAgICAgICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgICAgICAgICByZXR1cm4gUHlfTm9uZTsKICAgICAgICAgfQotICAgICAgICBtID0gbG9hZF9tb2R1bGUoZnVsbG5hbWUsIGZwLCBidWYsIGZkcC0+dHlwZSwgbG9hZGVyKTsKLSAgICAgICAgUHlfWERFQ1JFRihsb2FkZXIpOwotICAgICAgICBpZiAoZnApCi0gICAgICAgICAgICBmY2xvc2UoZnApOwotICAgICAgICBpZiAoIWFkZF9zdWJtb2R1bGUobW9kLCBtLCBmdWxsbmFtZSwgc3VibmFtZSwgbW9kdWxlcykpIHsKLSAgICAgICAgICAgIFB5X1hERUNSRUYobSk7Ci0gICAgICAgICAgICBtID0gTlVMTDsKLSAgICAgICAgfQogICAgIH0KIAorICAgIGZkcCA9IGZpbmRfbW9kdWxlKGZ1bGxuYW1lLCBzdWJuYW1lLCBwYXRoX2xpc3QsCisgICAgICAgICAgICAgICAgICAgICAgJmJ1Zm9iaiwgJmZwLCAmbG9hZGVyKTsKKyAgICBQeV9YREVDUkVGKHBhdGhfbGlzdCk7CisgICAgaWYgKGZkcCA9PSBOVUxMKSB7CisgICAgICAgIGlmICghUHlFcnJfRXhjZXB0aW9uTWF0Y2hlcyhQeUV4Y19JbXBvcnRFcnJvcikpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgUHlFcnJfQ2xlYXIoKTsKKyAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgICAgICByZXR1cm4gUHlfTm9uZTsKKyAgICB9CisgICAgbSA9IGxvYWRfbW9kdWxlKGZ1bGxuYW1lLCBmcCwgYnVmb2JqLCBmZHAtPnR5cGUsIGxvYWRlcik7CisgICAgUHlfWERFQ1JFRihidWZvYmopOworICAgIFB5X1hERUNSRUYobG9hZGVyKTsKKyAgICBpZiAoZnApCisgICAgICAgIGZjbG9zZShmcCk7CisgICAgaWYgKG0gPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKCFhZGRfc3VibW9kdWxlKG1vZCwgbSwgZnVsbG5hbWUsIHN1Ym5hbWUsIG1vZHVsZXMpKSB7CisgICAgICAgIFB5X1hERUNSRUYobSk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KICAgICByZXR1cm4gbTsKIH0KIApAQCAtMjkyOSwxMiArMzM1OSwxMiBAQAogICAgIFB5SW50ZXJwcmV0ZXJTdGF0ZSAqaW50ZXJwID0gUHlUaHJlYWRTdGF0ZV9HZXQoKS0+aW50ZXJwOwogICAgIFB5T2JqZWN0ICptb2R1bGVzX3JlbG9hZGluZyA9IGludGVycC0+bW9kdWxlc19yZWxvYWRpbmc7CiAgICAgUHlPYmplY3QgKm1vZHVsZXMgPSBQeUltcG9ydF9HZXRNb2R1bGVEaWN0KCk7Ci0gICAgUHlPYmplY3QgKnBhdGggPSBOVUxMLCAqbG9hZGVyID0gTlVMTCwgKmV4aXN0aW5nX20gPSBOVUxMOwotICAgIGNoYXIgKm5hbWUsICpzdWJuYW1lOwotICAgIGNoYXIgYnVmW01BWFBBVEhMRU4rMV07CisgICAgUHlPYmplY3QgKnBhdGhfbGlzdCA9IE5VTEwsICpsb2FkZXIgPSBOVUxMLCAqZXhpc3RpbmdfbSA9IE5VTEw7CisgICAgUHlPYmplY3QgKm5hbWUsICpidWZvYmosICpzdWJuYW1lOworICAgIFB5X3NzaXplX3Qgc3VibmFtZV9zdGFydDsKICAgICBzdHJ1Y3QgZmlsZWRlc2NyICpmZHA7CiAgICAgRklMRSAqZnAgPSBOVUxMOwotICAgIFB5T2JqZWN0ICpuZXdtOworICAgIFB5T2JqZWN0ICpuZXdtID0gTlVMTDsKIAogICAgIGlmIChtb2R1bGVzX3JlbG9hZGluZyA9PSBOVUxMKSB7CiAgICAgICAgIFB5X0ZhdGFsRXJyb3IoIlB5SW1wb3J0X1JlbG9hZE1vZHVsZTogIgpAQCAtMjk0Nyw2MSArMzM3Nyw3MiBAQAogICAgICAgICAgICAgICAgICAgICAgICAgInJlbG9hZCgpIGFyZ3VtZW50IG11c3QgYmUgbW9kdWxlIik7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBuYW1lID0gKGNoYXIqKVB5TW9kdWxlX0dldE5hbWUobSk7Ci0gICAgaWYgKG5hbWUgPT0gTlVMTCkKKyAgICBuYW1lID0gUHlNb2R1bGVfR2V0TmFtZU9iamVjdChtKTsKKyAgICBpZiAobmFtZSA9PSBOVUxMIHx8IFB5VW5pY29kZV9SRUFEWShuYW1lKSA9PSAtMSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgaWYgKG0gIT0gUHlEaWN0X0dldEl0ZW1TdHJpbmcobW9kdWxlcywgbmFtZSkpIHsKKyAgICBpZiAobSAhPSBQeURpY3RfR2V0SXRlbShtb2R1bGVzLCBuYW1lKSkgewogICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAicmVsb2FkKCk6IG1vZHVsZSAlLjIwMHMgbm90IGluIHN5cy5tb2R1bGVzIiwKKyAgICAgICAgICAgICAgICAgICAgICJyZWxvYWQoKTogbW9kdWxlICVSIG5vdCBpbiBzeXMubW9kdWxlcyIsCiAgICAgICAgICAgICAgICAgICAgICBuYW1lKTsKKyAgICAgICAgUHlfREVDUkVGKG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgZXhpc3RpbmdfbSA9IFB5RGljdF9HZXRJdGVtU3RyaW5nKG1vZHVsZXNfcmVsb2FkaW5nLCBuYW1lKTsKKyAgICBleGlzdGluZ19tID0gUHlEaWN0X0dldEl0ZW0obW9kdWxlc19yZWxvYWRpbmcsIG5hbWUpOwogICAgIGlmIChleGlzdGluZ19tICE9IE5VTEwpIHsKICAgICAgICAgLyogRHVlIHRvIGEgcmVjdXJzaXZlIHJlbG9hZCwgdGhpcyBtb2R1bGUgaXMgYWxyZWFkeQogICAgICAgICAgICBiZWluZyByZWxvYWRlZC4gKi8KKyAgICAgICAgUHlfREVDUkVGKG5hbWUpOwogICAgICAgICBQeV9JTkNSRUYoZXhpc3RpbmdfbSk7CiAgICAgICAgIHJldHVybiBleGlzdGluZ19tOwogICAgIH0KLSAgICBpZiAoUHlEaWN0X1NldEl0ZW1TdHJpbmcobW9kdWxlc19yZWxvYWRpbmcsIG5hbWUsIG0pIDwgMCkKKyAgICBpZiAoUHlEaWN0X1NldEl0ZW0obW9kdWxlc19yZWxvYWRpbmcsIG5hbWUsIG0pIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYobmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KIAotICAgIHN1Ym5hbWUgPSBzdHJyY2hyKG5hbWUsICcuJyk7Ci0gICAgaWYgKHN1Ym5hbWUgPT0gTlVMTCkKKyAgICBzdWJuYW1lX3N0YXJ0ID0gUHlVbmljb2RlX0ZpbmRDaGFyKG5hbWUsICcuJywgMCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWUpLCAtMSk7CisgICAgaWYgKHN1Ym5hbWVfc3RhcnQgPT0gLTEpIHsKKyAgICAgICAgUHlfSU5DUkVGKG5hbWUpOwogICAgICAgICBzdWJuYW1lID0gbmFtZTsKKyAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIFB5T2JqZWN0ICpwYXJlbnRuYW1lLCAqcGFyZW50OwotICAgICAgICBwYXJlbnRuYW1lID0gUHlVbmljb2RlX0Zyb21TdHJpbmdBbmRTaXplKG5hbWUsIChzdWJuYW1lLW5hbWUpKTsKKyAgICAgICAgUHlfc3NpemVfdCBsZW47CisgICAgICAgIHBhcmVudG5hbWUgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKG5hbWUsIDAsIHN1Ym5hbWVfc3RhcnQpOwogICAgICAgICBpZiAocGFyZW50bmFtZSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBpbXBfbW9kdWxlc19yZWxvYWRpbmdfY2xlYXIoKTsKLSAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICAgICAgZ290byBlcnJvcjsKICAgICAgICAgfQogICAgICAgICBwYXJlbnQgPSBQeURpY3RfR2V0SXRlbShtb2R1bGVzLCBwYXJlbnRuYW1lKTsKICAgICAgICAgaWYgKHBhcmVudCA9PSBOVUxMKSB7CiAgICAgICAgICAgICBQeUVycl9Gb3JtYXQoUHlFeGNfSW1wb3J0RXJyb3IsCi0gICAgICAgICAgICAgICAgInJlbG9hZCgpOiBwYXJlbnQgJVUgbm90IGluIHN5cy5tb2R1bGVzIiwKKyAgICAgICAgICAgICAgICAicmVsb2FkKCk6IHBhcmVudCAlUiBub3QgaW4gc3lzLm1vZHVsZXMiLAogICAgICAgICAgICAgICAgICBwYXJlbnRuYW1lKTsKICAgICAgICAgICAgIFB5X0RFQ1JFRihwYXJlbnRuYW1lKTsKLSAgICAgICAgICAgIGltcF9tb2R1bGVzX3JlbG9hZGluZ19jbGVhcigpOwotICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgICAgICB9CiAgICAgICAgIFB5X0RFQ1JFRihwYXJlbnRuYW1lKTsKLSAgICAgICAgc3VibmFtZSsrOwotICAgICAgICBwYXRoID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhwYXJlbnQsICJfX3BhdGhfXyIpOwotICAgICAgICBpZiAocGF0aCA9PSBOVUxMKQorICAgICAgICBwYXRoX2xpc3QgPSBfUHlPYmplY3RfR2V0QXR0cklkKHBhcmVudCwgJlB5SWRfX19wYXRoX18pOworICAgICAgICBpZiAocGF0aF9saXN0ID09IE5VTEwpCiAgICAgICAgICAgICBQeUVycl9DbGVhcigpOworICAgICAgICBzdWJuYW1lX3N0YXJ0Kys7CisgICAgICAgIGxlbiA9IFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWUpIC0gKHN1Ym5hbWVfc3RhcnQgKyAxKTsKKyAgICAgICAgc3VibmFtZSA9IFB5VW5pY29kZV9TdWJzdHJpbmcobmFtZSwgc3VibmFtZV9zdGFydCwgbGVuKTsKICAgICB9Ci0gICAgYnVmWzBdID0gJ1wwJzsKLSAgICBmZHAgPSBmaW5kX21vZHVsZShuYW1lLCBzdWJuYW1lLCBwYXRoLCBidWYsIE1BWFBBVEhMRU4rMSwgJmZwLCAmbG9hZGVyKTsKLSAgICBQeV9YREVDUkVGKHBhdGgpOworICAgIGlmIChzdWJuYW1lID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgZmRwID0gZmluZF9tb2R1bGUobmFtZSwgc3VibmFtZSwgcGF0aF9saXN0LAorICAgICAgICAgICAgICAgICAgICAgICZidWZvYmosICZmcCwgJmxvYWRlcik7CisgICAgUHlfREVDUkVGKHN1Ym5hbWUpOworICAgIFB5X1hERUNSRUYocGF0aF9saXN0KTsKIAogICAgIGlmIChmZHAgPT0gTlVMTCkgewogICAgICAgICBQeV9YREVDUkVGKGxvYWRlcik7Ci0gICAgICAgIGltcF9tb2R1bGVzX3JlbG9hZGluZ19jbGVhcigpOwotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgZ290byBlcnJvcjsKICAgICB9CiAKLSAgICBuZXdtID0gbG9hZF9tb2R1bGUobmFtZSwgZnAsIGJ1ZiwgZmRwLT50eXBlLCBsb2FkZXIpOworICAgIG5ld20gPSBsb2FkX21vZHVsZShuYW1lLCBmcCwgYnVmb2JqLCBmZHAtPnR5cGUsIGxvYWRlcik7CisgICAgUHlfWERFQ1JFRihidWZvYmopOwogICAgIFB5X1hERUNSRUYobG9hZGVyKTsKIAogICAgIGlmIChmcCkKQEAgLTMwMTIsOSArMzQ1MywxMiBAQAogICAgICAgICAgKiBnb2luZyB0byByZXR1cm4gTlVMTCBpbiB0aGlzIGNhc2UgcmVnYXJkbGVzcyBvZiB3aGV0aGVyCiAgICAgICAgICAqIHJlcGxhY2luZyBuYW1lIHN1Y2NlZWRzLCBzbyB0aGUgcmV0dXJuIHZhbHVlIGlzIGlnbm9yZWQuCiAgICAgICAgICAqLwotICAgICAgICBQeURpY3RfU2V0SXRlbVN0cmluZyhtb2R1bGVzLCBuYW1lLCBtKTsKKyAgICAgICAgUHlEaWN0X1NldEl0ZW0obW9kdWxlcywgbmFtZSwgbSk7CiAgICAgfQorCitlcnJvcjoKICAgICBpbXBfbW9kdWxlc19yZWxvYWRpbmdfY2xlYXIoKTsKKyAgICBQeV9ERUNSRUYobmFtZSk7CiAgICAgcmV0dXJuIG5ld207CiB9CiAKQEAgLTMxNjIsMjIgKzM2MDYsMjEgQEAKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKLWNhbGxfZmluZF9tb2R1bGUoY2hhciAqbmFtZSwgUHlPYmplY3QgKnBhdGgpCitjYWxsX2ZpbmRfbW9kdWxlKFB5T2JqZWN0ICpuYW1lLCBQeU9iamVjdCAqcGF0aF9saXN0KQogewogICAgIGV4dGVybiBpbnQgZmNsb3NlKEZJTEUgKik7CiAgICAgUHlPYmplY3QgKmZvYiwgKnJldDsKICAgICBQeU9iamVjdCAqcGF0aG9iajsKICAgICBzdHJ1Y3QgZmlsZWRlc2NyICpmZHA7Ci0gICAgY2hhciBwYXRobmFtZVtNQVhQQVRITEVOKzFdOwotICAgIEZJTEUgKmZwID0gTlVMTDsKKyAgICBGSUxFICpmcDsKICAgICBpbnQgZmQgPSAtMTsKICAgICBjaGFyICpmb3VuZF9lbmNvZGluZyA9IE5VTEw7CiAgICAgY2hhciAqZW5jb2RpbmcgPSBOVUxMOwogCi0gICAgcGF0aG5hbWVbMF0gPSAnXDAnOwotICAgIGlmIChwYXRoID09IFB5X05vbmUpCi0gICAgICAgIHBhdGggPSBOVUxMOwotICAgIGZkcCA9IGZpbmRfbW9kdWxlKE5VTEwsIG5hbWUsIHBhdGgsIHBhdGhuYW1lLCBNQVhQQVRITEVOKzEsICZmcCwgTlVMTCk7CisgICAgaWYgKHBhdGhfbGlzdCA9PSBQeV9Ob25lKQorICAgICAgICBwYXRoX2xpc3QgPSBOVUxMOworICAgIGZkcCA9IGZpbmRfbW9kdWxlKE5VTEwsIG5hbWUsIHBhdGhfbGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAmcGF0aG9iaiwgJmZwLCBOVUxMKTsKICAgICBpZiAoZmRwID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmIChmcCAhPSBOVUxMKSB7CkBAIC0zMTg1LDIyICszNjI4LDI5IEBACiAgICAgICAgIGlmIChmZCAhPSAtMSkKICAgICAgICAgICAgIGZkID0gZHVwKGZkKTsKICAgICAgICAgZmNsb3NlKGZwKTsKKyAgICAgICAgaWYgKGZkID09IC0xKSB7CisgICAgICAgICAgICBQeUVycl9TZXRGcm9tRXJybm8oUHlFeGNfT1NFcnJvcik7CisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgfQogICAgICAgICBmcCA9IE5VTEw7CiAgICAgfQogICAgIGlmIChmZCAhPSAtMSkgewogICAgICAgICBpZiAoc3RyY2hyKGZkcC0+bW9kZSwgJ2InKSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAvKiBQeVRva2VuaXplcl9GaW5kRW5jb2RpbmcoKSByZXR1cm5zIFB5TWVtX01BTExPQydlZAorICAgICAgICAgICAgLyogUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nRmlsZW5hbWUoKSByZXR1cm5zIFB5TWVtX01BTExPQydlZAogICAgICAgICAgICAgICAgbWVtb3J5LiAqLwotICAgICAgICAgICAgZm91bmRfZW5jb2RpbmcgPSBQeVRva2VuaXplcl9GaW5kRW5jb2RpbmcoZmQpOworICAgICAgICAgICAgZm91bmRfZW5jb2RpbmcgPSBQeVRva2VuaXplcl9GaW5kRW5jb2RpbmdGaWxlbmFtZShmZCwgcGF0aG9iaik7CiAgICAgICAgICAgICBsc2VlayhmZCwgMCwgMCk7IC8qIFJlc2V0IHBvc2l0aW9uICovCi0gICAgICAgICAgICBpZiAoZm91bmRfZW5jb2RpbmcgPT0gTlVMTCAmJiBQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgaWYgKGZvdW5kX2VuY29kaW5nID09IE5VTEwgJiYgUHlFcnJfT2NjdXJyZWQoKSkgeworICAgICAgICAgICAgICAgIFB5X1hERUNSRUYocGF0aG9iaik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBlbmNvZGluZyA9IChmb3VuZF9lbmNvZGluZyAhPSBOVUxMKSA/IGZvdW5kX2VuY29kaW5nIDoKICAgICAgICAgICAgICAgICAgICAoY2hhciopUHlVbmljb2RlX0dldERlZmF1bHRFbmNvZGluZygpOwogICAgICAgICB9Ci0gICAgICAgIGZvYiA9IFB5RmlsZV9Gcm9tRmQoZmQsIHBhdGhuYW1lLCBmZHAtPm1vZGUsIC0xLAorICAgICAgICBmb2IgPSBQeUZpbGVfRnJvbUZkKGZkLCBOVUxMLCBmZHAtPm1vZGUsIC0xLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjaGFyKillbmNvZGluZywgTlVMTCwgTlVMTCwgMSk7CiAgICAgICAgIGlmIChmb2IgPT0gTlVMTCkgeworICAgICAgICAgICAgUHlfWERFQ1JFRihwYXRob2JqKTsKICAgICAgICAgICAgIGNsb3NlKGZkKTsKICAgICAgICAgICAgIFB5TWVtX0ZSRUUoZm91bmRfZW5jb2RpbmcpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CkBAIC0zMjEwLDcgKzM2NjAsMTAgQEAKICAgICAgICAgZm9iID0gUHlfTm9uZTsKICAgICAgICAgUHlfSU5DUkVGKGZvYik7CiAgICAgfQotICAgIHBhdGhvYmogPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KHBhdGhuYW1lKTsKKyAgICBpZiAocGF0aG9iaiA9PSBOVUxMKSB7CisgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKKyAgICAgICAgcGF0aG9iaiA9IFB5X05vbmU7CisgICAgfQogICAgIHJldCA9IFB5X0J1aWxkVmFsdWUoIk5OKHNzaSkiLAogICAgICAgICAgICAgICAgICAgZm9iLCBwYXRob2JqLCBmZHAtPnN1ZmZpeCwgZmRwLT5tb2RlLCBmZHAtPnR5cGUpOwogICAgIFB5TWVtX0ZSRUUoZm91bmRfZW5jb2RpbmcpOwpAQCAtMzIyMSwyNCArMzY3NCwyMCBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGltcF9maW5kX21vZHVsZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgUHlPYmplY3QgKm5hbWU7Ci0gICAgUHlPYmplY3QgKnJldCwgKnBhdGggPSBOVUxMOwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiTyZ8TzpmaW5kX21vZHVsZSIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJm5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICZwYXRoKSkKKyAgICBQeU9iamVjdCAqbmFtZSwgKnBhdGhfbGlzdCA9IE5VTEw7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVfE86ZmluZF9tb2R1bGUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmbmFtZSwgJnBhdGhfbGlzdCkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJldCA9IGNhbGxfZmluZF9tb2R1bGUoUHlCeXRlc19BU19TVFJJTkcobmFtZSksIHBhdGgpOwotICAgIFB5X0RFQ1JFRihuYW1lKTsKLSAgICByZXR1cm4gcmV0OworICAgIHJldHVybiBjYWxsX2ZpbmRfbW9kdWxlKG5hbWUsIHBhdGhfbGlzdCk7CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfaW5pdF9idWlsdGluKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBjaGFyICpuYW1lOworICAgIFB5T2JqZWN0ICpuYW1lOwogICAgIGludCByZXQ7CiAgICAgUHlPYmplY3QgKm07Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzOmluaXRfYnVpbHRpbiIsICZuYW1lKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6aW5pdF9idWlsdGluIiwgJm5hbWUpKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICByZXQgPSBpbml0X2J1aWx0aW4obmFtZSk7CiAgICAgaWYgKHJldCA8IDApCkBAIC0zMjQ3LDcgKzM2OTYsNyBAQAogICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgICAgIHJldHVybiBQeV9Ob25lOwogICAgIH0KLSAgICBtID0gUHlJbXBvcnRfQWRkTW9kdWxlKG5hbWUpOworICAgIG0gPSBQeUltcG9ydF9BZGRNb2R1bGVPYmplY3QobmFtZSk7CiAgICAgUHlfWElOQ1JFRihtKTsKICAgICByZXR1cm4gbTsKIH0KQEAgLTMyNTUsMTkgKzM3MDQsMTkgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfaW5pdF9mcm96ZW4oUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIGNoYXIgKm5hbWU7CisgICAgUHlPYmplY3QgKm5hbWU7CiAgICAgaW50IHJldDsKICAgICBQeU9iamVjdCAqbTsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInM6aW5pdF9mcm96ZW4iLCAmbmFtZSkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOmluaXRfZnJvemVuIiwgJm5hbWUpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICByZXQgPSBQeUltcG9ydF9JbXBvcnRGcm96ZW5Nb2R1bGUobmFtZSk7CisgICAgcmV0ID0gUHlJbXBvcnRfSW1wb3J0RnJvemVuTW9kdWxlT2JqZWN0KG5hbWUpOwogICAgIGlmIChyZXQgPCAwKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBpZiAocmV0ID09IDApIHsKICAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOwogICAgICAgICByZXR1cm4gUHlfTm9uZTsKICAgICB9Ci0gICAgbSA9IFB5SW1wb3J0X0FkZE1vZHVsZShuYW1lKTsKKyAgICBtID0gUHlJbXBvcnRfQWRkTW9kdWxlT2JqZWN0KG5hbWUpOwogICAgIFB5X1hJTkNSRUYobSk7CiAgICAgcmV0dXJuIG07CiB9CkBAIC0zMjc1LDkgKzM3MjQsOSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGltcF9nZXRfZnJvemVuX29iamVjdChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqbmFtZTsKKyAgICBQeU9iamVjdCAqbmFtZTsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiczpnZXRfZnJvemVuX29iamVjdCIsICZuYW1lKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6Z2V0X2Zyb3plbl9vYmplY3QiLCAmbmFtZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIHJldHVybiBnZXRfZnJvemVuX29iamVjdChuYW1lKTsKIH0KQEAgLTMyODUsOSArMzczNCw5IEBACiBzdGF0aWMgUHlPYmplY3QgKgogaW1wX2lzX2Zyb3plbl9wYWNrYWdlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBjaGFyICpuYW1lOworICAgIFB5T2JqZWN0ICpuYW1lOwogCi0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzOmlzX2Zyb3plbl9wYWNrYWdlIiwgJm5hbWUpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVTppc19mcm96ZW5fcGFja2FnZSIsICZuYW1lKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcmV0dXJuIGlzX2Zyb3plbl9wYWNrYWdlKG5hbWUpOwogfQpAQCAtMzI5NSw4ICszNzQ0LDggQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfaXNfYnVpbHRpbihQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqbmFtZTsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInM6aXNfYnVpbHRpbiIsICZuYW1lKSkKKyAgICBQeU9iamVjdCAqbmFtZTsKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlU6aXNfYnVpbHRpbiIsICZuYW1lKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcmV0dXJuIFB5TG9uZ19Gcm9tTG9uZyhpc19idWlsdGluKG5hbWUpKTsKIH0KQEAgLTMzMDQsNjMgKzM3NTMsNzQgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfaXNfZnJvemVuKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBjaGFyICpuYW1lOworICAgIFB5T2JqZWN0ICpuYW1lOwogICAgIHN0cnVjdCBfZnJvemVuICpwOwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiczppc19mcm96ZW4iLCAmbmFtZSkpCisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOmlzX2Zyb3plbiIsICZuYW1lKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgcCA9IGZpbmRfZnJvemVuKG5hbWUpOwogICAgIHJldHVybiBQeUJvb2xfRnJvbUxvbmcoKGxvbmcpIChwID09IE5VTEwgPyAwIDogcC0+c2l6ZSkpOwogfQogCiBzdGF0aWMgRklMRSAqCi1nZXRfZmlsZShjaGFyICpwYXRobmFtZSwgUHlPYmplY3QgKmZvYiwgY2hhciAqbW9kZSkKK2dldF9maWxlKFB5T2JqZWN0ICpwYXRobmFtZSwgUHlPYmplY3QgKmZvYiwgY2hhciAqbW9kZSkKIHsKICAgICBGSUxFICpmcDsKICAgICBpZiAobW9kZVswXSA9PSAnVScpCiAgICAgICAgIG1vZGUgPSAiciIgUFlfU1RESU9URVhUTU9ERTsKICAgICBpZiAoZm9iID09IE5VTEwpIHsKLSAgICAgICAgZnAgPSBmb3BlbihwYXRobmFtZSwgbW9kZSk7CisgICAgICAgIGZwID0gX1B5X2ZvcGVuKHBhdGhuYW1lLCBtb2RlKTsKKyAgICAgICAgaWYgKCFmcCkgeworICAgICAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQorICAgICAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisgICAgICAgIHJldHVybiBmcDsKICAgICB9CiAgICAgZWxzZSB7CiAgICAgICAgIGludCBmZCA9IFB5T2JqZWN0X0FzRmlsZURlc2NyaXB0b3IoZm9iKTsKICAgICAgICAgaWYgKGZkID09IC0xKQogICAgICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgICAgIGlmICghX1B5VmVyaWZ5X2ZkKGZkKSkKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7CisgICAgICAgIGlmICghX1B5VmVyaWZ5X2ZkKGZkKSkgeworICAgICAgICAgICAgUHlFcnJfU2V0RnJvbUVycm5vKFB5RXhjX0lPRXJyb3IpOworICAgICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgICAgIH0KKwogICAgICAgICAvKiB0aGUgRklMRSBzdHJ1Y3QgZ2V0cyBhIG5ldyBmZCwgc28gdGhhdCBpdCBjYW4gYmUgY2xvc2VkCiAgICAgICAgICAqIGluZGVwZW5kZW50bHkgb2YgdGhlIGZpbGUgZGVzY3JpcHRvciBnaXZlbgogICAgICAgICAgKi8KICAgICAgICAgZmQgPSBkdXAoZmQpOwotICAgICAgICBpZiAoZmQgPT0gLTEpCi0gICAgICAgICAgICBnb3RvIGVycm9yOworICAgICAgICBpZiAoZmQgPT0gLTEpIHsKKyAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CisKICAgICAgICAgZnAgPSBmZG9wZW4oZmQsIG1vZGUpOwotICAgIH0KLSAgICBpZiAoZnApCisgICAgICAgIGlmICghZnApIHsKKyAgICAgICAgICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgICAgICB9CiAgICAgICAgIHJldHVybiBmcDsKLWVycm9yOgotICAgIFB5RXJyX1NldEZyb21FcnJubyhQeUV4Y19JT0Vycm9yKTsKLSAgICByZXR1cm4gTlVMTDsKKyAgICB9CiB9CiAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfbG9hZF9jb21waWxlZChQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqbmFtZTsKLSAgICBQeU9iamVjdCAqcGF0aG5hbWU7CisgICAgUHlPYmplY3QgKm5hbWUsICpwYXRobmFtZTsKICAgICBQeU9iamVjdCAqZm9iID0gTlVMTDsKICAgICBQeU9iamVjdCAqbTsKICAgICBGSUxFICpmcDsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInNPJnxPOmxvYWRfY29tcGlsZWQiLAorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVU8mfE86bG9hZF9jb21waWxlZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRobmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTRGVjb2RlciwgJnBhdGhuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAmZm9iKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgZnAgPSBnZXRfZmlsZShQeUJ5dGVzX0FTX1NUUklORyhwYXRobmFtZSksIGZvYiwgInJiIik7CisgICAgZnAgPSBnZXRfZmlsZShwYXRobmFtZSwgZm9iLCAicmIiKTsKICAgICBpZiAoZnAgPT0gTlVMTCkgewogICAgICAgICBQeV9ERUNSRUYocGF0aG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgbSA9IGxvYWRfY29tcGlsZWRfbW9kdWxlKG5hbWUsIFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGhuYW1lKSwgZnApOworICAgIG0gPSBsb2FkX2NvbXBpbGVkX21vZHVsZShuYW1lLCBwYXRobmFtZSwgZnApOwogICAgIGZjbG9zZShmcCk7CiAgICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKICAgICByZXR1cm4gbTsKQEAgLTMzNzEsMjggKzM4MzEsMjYgQEAKIHN0YXRpYyBQeU9iamVjdCAqCiBpbXBfbG9hZF9keW5hbWljKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKIHsKLSAgICBjaGFyICpuYW1lOwotICAgIFB5T2JqZWN0ICpwYXRoYnl0ZXM7Ci0gICAgY2hhciAqcGF0aG5hbWU7Ci0gICAgUHlPYmplY3QgKmZvYiA9IE5VTEw7Ci0gICAgUHlPYmplY3QgKm07Ci0gICAgRklMRSAqZnAgPSBOVUxMOwotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAic08mfE86bG9hZF9keW5hbWljIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hbWUsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJnBhdGhieXRlcywgJmZvYikpCisgICAgUHlPYmplY3QgKm5hbWUsICpwYXRobmFtZSwgKmZvYiA9IE5VTEwsICptb2Q7CisgICAgRklMRSAqZnA7CisKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVPJnxPOmxvYWRfZHluYW1pYyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICZuYW1lLCBQeVVuaWNvZGVfRlNEZWNvZGVyLCAmcGF0aG5hbWUsICZmb2IpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBwYXRobmFtZSA9IFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGhieXRlcyk7Ci0gICAgaWYgKGZvYikgewotICAgICAgICBmcCA9IGdldF9maWxlKHBhdGhuYW1lLCBmb2IsICJyIik7CisgICAgaWYgKGZvYiAhPSBOVUxMKSB7CisgICAgICAgIGZwID0gZ2V0X2ZpbGUoTlVMTCwgZm9iLCAiciIpOwogICAgICAgICBpZiAoZnAgPT0gTlVMTCkgewotICAgICAgICAgICAgUHlfREVDUkVGKHBhdGhieXRlcyk7CisgICAgICAgICAgICBQeV9ERUNSRUYocGF0aG5hbWUpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICB9Ci0gICAgbSA9IF9QeUltcG9ydF9Mb2FkRHluYW1pY01vZHVsZShuYW1lLCBwYXRobmFtZSwgZnApOwotICAgIFB5X0RFQ1JFRihwYXRoYnl0ZXMpOworICAgIGVsc2UKKyAgICAgICAgZnAgPSBOVUxMOworICAgIG1vZCA9IF9QeUltcG9ydF9Mb2FkRHluYW1pY01vZHVsZShuYW1lLCBwYXRobmFtZSwgZnApOworICAgIFB5X0RFQ1JFRihwYXRobmFtZSk7CiAgICAgaWYgKGZwKQogICAgICAgICBmY2xvc2UoZnApOwotICAgIHJldHVybiBtOworICAgIHJldHVybiBtb2Q7CiB9CiAKICNlbmRpZiAvKiBIQVZFX0RZTkFNSUNfTE9BRElORyAqLwpAQCAtMzQwMCwyMiArMzg1OCwyMSBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGltcF9sb2FkX3NvdXJjZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqbmFtZTsKLSAgICBQeU9iamVjdCAqcGF0aG5hbWU7CisgICAgUHlPYmplY3QgKm5hbWUsICpwYXRobmFtZTsKICAgICBQeU9iamVjdCAqZm9iID0gTlVMTDsKICAgICBQeU9iamVjdCAqbTsKICAgICBGSUxFICpmcDsKLSAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgInNPJnxPOmxvYWRfc291cmNlIiwKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVPJnxPOmxvYWRfc291cmNlIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJnBhdGhuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNEZWNvZGVyLCAmcGF0aG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICZmb2IpKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBmcCA9IGdldF9maWxlKFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGhuYW1lKSwgZm9iLCAiciIpOworICAgIGZwID0gZ2V0X2ZpbGUocGF0aG5hbWUsIGZvYiwgInIiKTsKICAgICBpZiAoZnAgPT0gTlVMTCkgewogICAgICAgICBQeV9ERUNSRUYocGF0aG5hbWUpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgbSA9IGxvYWRfc291cmNlX21vZHVsZShuYW1lLCBQeUJ5dGVzX0FTX1NUUklORyhwYXRobmFtZSksIGZwKTsKKyAgICBtID0gbG9hZF9zb3VyY2VfbW9kdWxlKG5hbWUsIHBhdGhuYW1lLCBmcCk7CiAgICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKICAgICBmY2xvc2UoZnApOwogICAgIHJldHVybiBtOwpAQCAtMzQyNCwyMCArMzg4MSwyMiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGltcF9sb2FkX21vZHVsZShQeU9iamVjdCAqc2VsZiwgUHlPYmplY3QgKmFyZ3MpCiB7Ci0gICAgY2hhciAqbmFtZTsKLSAgICBQeU9iamVjdCAqZm9iOwotICAgIFB5T2JqZWN0ICpwYXRobmFtZTsKLSAgICBQeU9iamVjdCAqIHJldDsKKyAgICBQeU9iamVjdCAqbmFtZSwgKmZvYiwgKnBhdGhuYW1lLCAqcGF0aG5hbWVfb2JqLCAqcmV0OwogICAgIGNoYXIgKnN1ZmZpeDsgLyogVW51c2VkICovCiAgICAgY2hhciAqbW9kZTsKICAgICBpbnQgdHlwZTsKICAgICBGSUxFICpmcDsKIAotICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAic09PJihzc2kpOmxvYWRfbW9kdWxlIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hbWUsICZmb2IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJnBhdGhuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAmc3VmZml4LCAmbW9kZSwgJnR5cGUpKQorICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZShhcmdzLCAiVU9PKHNzaSk6bG9hZF9tb2R1bGUiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmbmFtZSwgJmZvYiwgJnBhdGhuYW1lX29iaiwgJnN1ZmZpeCwgJm1vZGUsICZ0eXBlKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CisgICAgaWYgKHBhdGhuYW1lX29iaiAhPSBQeV9Ob25lKSB7CisgICAgICAgIGlmICghUHlVbmljb2RlX0ZTRGVjb2RlcihwYXRobmFtZV9vYmosICZwYXRobmFtZSkpCisgICAgICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgZWxzZQorICAgICAgICBwYXRobmFtZSA9IE5VTEw7CisKICAgICBpZiAoKm1vZGUpIHsKICAgICAgICAgLyogTW9kZSBtdXN0IHN0YXJ0IHdpdGggJ3InIG9yICdVJyBhbmQgbXVzdCBub3QgY29udGFpbiAnKycuCiAgICAgICAgICAgIEltcGxpY2l0IGluIHRoaXMgdGVzdCBpcyB0aGUgYXNzdW1wdGlvbiB0aGF0IHRoZSBtb2RlCkBAIC0zNDQ2LDcgKzM5MDUsNyBAQAogICAgICAgICBpZiAoISgqbW9kZSA9PSAncicgfHwgKm1vZGUgPT0gJ1UnKSB8fCBzdHJjaHIobW9kZSwgJysnKSkgewogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1ZhbHVlRXJyb3IsCiAgICAgICAgICAgICAgICAgICAgICAgICAgImludmFsaWQgZmlsZSBvcGVuIG1vZGUgJS4yMDBzIiwgbW9kZSk7Ci0gICAgICAgICAgICBQeV9ERUNSRUYocGF0aG5hbWUpOworICAgICAgICAgICAgUHlfWERFQ1JFRihwYXRobmFtZSk7CiAgICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQogICAgIH0KQEAgLTM0NTUsMTIgKzM5MTQsMTIgQEAKICAgICBlbHNlIHsKICAgICAgICAgZnAgPSBnZXRfZmlsZShOVUxMLCBmb2IsIG1vZGUpOwogICAgICAgICBpZiAoZnAgPT0gTlVMTCkgewotICAgICAgICAgICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKKyAgICAgICAgICAgIFB5X1hERUNSRUYocGF0aG5hbWUpOwogICAgICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgICAgIH0KICAgICB9Ci0gICAgcmV0ID0gbG9hZF9tb2R1bGUobmFtZSwgZnAsIFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGhuYW1lKSwgdHlwZSwgTlVMTCk7Ci0gICAgUHlfREVDUkVGKHBhdGhuYW1lKTsKKyAgICByZXQgPSBsb2FkX21vZHVsZShuYW1lLCBmcCwgcGF0aG5hbWUsIHR5cGUsIE5VTEwpOworICAgIFB5X1hERUNSRUYocGF0aG5hbWUpOwogICAgIGlmIChmcCkKICAgICAgICAgZmNsb3NlKGZwKTsKICAgICByZXR1cm4gcmV0OwpAQCAtMzQ2OSwxMyArMzkyOCwxMiBAQAogc3RhdGljIFB5T2JqZWN0ICoKIGltcF9sb2FkX3BhY2thZ2UoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIGNoYXIgKm5hbWU7Ci0gICAgUHlPYmplY3QgKnBhdGhuYW1lOworICAgIFB5T2JqZWN0ICpuYW1lLCAqcGF0aG5hbWU7CiAgICAgUHlPYmplY3QgKiByZXQ7Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzTyY6bG9hZF9wYWNrYWdlIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJm5hbWUsIFB5VW5pY29kZV9GU0NvbnZlcnRlciwgJnBhdGhuYW1lKSkKKyAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIlVPJjpsb2FkX3BhY2thZ2UiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmbmFtZSwgUHlVbmljb2RlX0ZTRGVjb2RlciwgJnBhdGhuYW1lKSkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmV0ID0gbG9hZF9wYWNrYWdlKG5hbWUsIFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGhuYW1lKSk7CisgICAgcmV0ID0gbG9hZF9wYWNrYWdlKG5hbWUsIHBhdGhuYW1lKTsKICAgICBQeV9ERUNSRUYocGF0aG5hbWUpOwogICAgIHJldHVybiByZXQ7CiB9CkBAIC0zNDgzLDEwICszOTQxLDEwIEBACiBzdGF0aWMgUHlPYmplY3QgKgogaW1wX25ld19tb2R1bGUoUHlPYmplY3QgKnNlbGYsIFB5T2JqZWN0ICphcmdzKQogewotICAgIGNoYXIgKm5hbWU7Ci0gICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJzOm5ld19tb2R1bGUiLCAmbmFtZSkpCisgICAgUHlPYmplY3QgKm5hbWU7CisgICAgaWYgKCFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJVOm5ld19tb2R1bGUiLCAmbmFtZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwotICAgIHJldHVybiBQeU1vZHVsZV9OZXcobmFtZSk7CisgICAgcmV0dXJuIFB5TW9kdWxlX05ld09iamVjdChuYW1lKTsKIH0KIAogc3RhdGljIFB5T2JqZWN0ICoKQEAgLTM1MDUsMzMgKzM5NjMsMzIgQEAKIHsKICAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InBhdGgiLCAiZGVidWdfb3ZlcnJpZGUiLCBOVUxMfTsKIAotICAgIGNoYXIgYnVmW01BWFBBVEhMRU4rMV07Ci0gICAgUHlPYmplY3QgKnBhdGhieXRlczsKLSAgICBjaGFyICpjcGF0aG5hbWU7CisgICAgUHlPYmplY3QgKnBhdGhuYW1lLCAqY3BhdGhuYW1lOwogICAgIFB5T2JqZWN0ICpkZWJ1Z19vdmVycmlkZSA9IE5VTEw7CiAgICAgaW50IGRlYnVnID0gIVB5X09wdGltaXplRmxhZzsKIAogICAgIGlmICghUHlBcmdfUGFyc2VUdXBsZUFuZEtleXdvcmRzKAogICAgICAgICAgICAgICAgIGFyZ3MsIGt3cywgIk8mfE8iLCBrd2xpc3QsCi0gICAgICAgICAgICAgICAgUHlVbmljb2RlX0ZTQ29udmVydGVyLCAmcGF0aGJ5dGVzLCAmZGVidWdfb3ZlcnJpZGUpKQorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0RlY29kZXIsICZwYXRobmFtZSwgJmRlYnVnX292ZXJyaWRlKSkKICAgICAgICAgcmV0dXJuIE5VTEw7CiAKICAgICBpZiAoZGVidWdfb3ZlcnJpZGUgIT0gTlVMTCAmJgogICAgICAgICAoZGVidWcgPSBQeU9iamVjdF9Jc1RydWUoZGVidWdfb3ZlcnJpZGUpKSA8IDApIHsKLSAgICAgICAgUHlfREVDUkVGKHBhdGhieXRlcyk7CisgICAgICAgIFB5X0RFQ1JFRihwYXRobmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KIAotICAgIGNwYXRobmFtZSA9IG1ha2VfY29tcGlsZWRfcGF0aG5hbWUoCi0gICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGhieXRlcyksCi0gICAgICAgIGJ1ZiwgTUFYUEFUSExFTisxLCBkZWJ1Zyk7Ci0gICAgUHlfREVDUkVGKHBhdGhieXRlcyk7CisgICAgaWYgKFB5VW5pY29kZV9SRUFEWShwYXRobmFtZSkgPCAwKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGNwYXRobmFtZSA9IG1ha2VfY29tcGlsZWRfcGF0aG5hbWUocGF0aG5hbWUsIGRlYnVnKTsKKyAgICBQeV9ERUNSRUYocGF0aG5hbWUpOwogCiAgICAgaWYgKGNwYXRobmFtZSA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19TeXN0ZW1FcnJvciwgInBhdGggYnVmZmVyIHRvbyBzaG9ydCIpOwogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9Ci0gICAgcmV0dXJuIFB5VW5pY29kZV9EZWNvZGVGU0RlZmF1bHQoYnVmKTsKKyAgICByZXR1cm4gY3BhdGhuYW1lOwogfQogCiBQeURvY19TVFJWQVIoZG9jX2NhY2hlX2Zyb21fc291cmNlLApAQCAtMzU0OSwyNSArNDAwNiwyMiBAQAogaW1wX3NvdXJjZV9mcm9tX2NhY2hlKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3cykKIHsKICAgICBzdGF0aWMgY2hhciAqa3dsaXN0W10gPSB7InBhdGgiLCBOVUxMfTsKLQotICAgIFB5T2JqZWN0ICpwYXRobmFtZV9vYmo7Ci0gICAgY2hhciAqcGF0aG5hbWU7Ci0gICAgY2hhciBidWZbTUFYUEFUSExFTisxXTsKKyAgICBQeU9iamVjdCAqcGF0aG5hbWUsICpzb3VyY2U7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcygKICAgICAgICAgICAgICAgICBhcmdzLCBrd3MsICJPJiIsIGt3bGlzdCwKLSAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRlNDb252ZXJ0ZXIsICZwYXRobmFtZV9vYmopKQorICAgICAgICAgICAgICAgIFB5VW5pY29kZV9GU0RlY29kZXIsICZwYXRobmFtZSkpCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgcGF0aG5hbWUgPSBQeUJ5dGVzX0FTX1NUUklORyhwYXRobmFtZV9vYmopOwotICAgIGlmIChtYWtlX3NvdXJjZV9wYXRobmFtZShwYXRobmFtZSwgYnVmKSA9PSBOVUxMKSB7Ci0gICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLCAiTm90IGEgUEVQIDMxNDcgcHljIHBhdGg6ICVzIiwKKyAgICBzb3VyY2UgPSBtYWtlX3NvdXJjZV9wYXRobmFtZShwYXRobmFtZSk7CisgICAgaWYgKHNvdXJjZSA9PSBOVUxMKSB7CisgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19WYWx1ZUVycm9yLCAiTm90IGEgUEVQIDMxNDcgcHljIHBhdGg6ICVSIiwKICAgICAgICAgICAgICAgICAgICAgIHBhdGhuYW1lKTsKLSAgICAgICAgUHlfREVDUkVGKHBhdGhuYW1lX29iaik7CisgICAgICAgIFB5X0RFQ1JFRihwYXRobmFtZSk7CiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIH0KLSAgICBQeV9ERUNSRUYocGF0aG5hbWVfb2JqKTsKLSAgICByZXR1cm4gUHlVbmljb2RlX0Zyb21TdHJpbmcoYnVmKTsKKyAgICBQeV9ERUNSRUYocGF0aG5hbWUpOworICAgIHJldHVybiBzb3VyY2U7CiB9CiAKIFB5RG9jX1NUUlZBUihkb2Nfc291cmNlX2Zyb21fY2FjaGUsCkBAIC0zNjU5LDYgKzQxMTMsNyBAQAogI2VuZGlmCiAgICAgeyJsb2FkX3BhY2thZ2UiLCAgICAgICAgICAgIGltcF9sb2FkX3BhY2thZ2UsICAgICAgIE1FVEhfVkFSQVJHU30sCiAgICAgeyJsb2FkX3NvdXJjZSIsICAgICAgICAgICAgIGltcF9sb2FkX3NvdXJjZSwgICAgICAgIE1FVEhfVkFSQVJHU30sCisgICAgeyJfZml4X2NvX2ZpbGVuYW1lIiwgICAgICAgIGltcF9maXhfY29fZmlsZW5hbWUsICAgIE1FVEhfVkFSQVJHU30sCiAgICAge05VTEwsICAgICAgICAgICAgICAgICAgICAgIE5VTEx9ICAgICAgICAgICAvKiBzZW50aW5lbCAqLwogfTsKIApAQCAtMzcyMSw3ICs0MTc2LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgJnBhdGhvYmopKQogICAgICAgICByZXR1cm4gLTE7CiAKLSAgICBpZiAoUHlVbmljb2RlX0dFVF9TSVpFKHBhdGhvYmopID09IDApIHsKKyAgICBpZiAoUHlVbmljb2RlX0dFVF9MRU5HVEgocGF0aG9iaikgPT0gMCkgewogICAgICAgICBQeUVycl9TZXRTdHJpbmcoUHlFeGNfSW1wb3J0RXJyb3IsICJlbXB0eSBwYXRobmFtZSIpOwogICAgICAgICByZXR1cm4gLTE7CiAgICAgfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL2ltcG9ydGRsLmMgYi9QeXRob24vaW1wb3J0ZGwuYwppbmRleCA5Y2FlZDQ1Li45MTI3ZDYxIDEwMDY0NAotLS0gYS9QeXRob24vaW1wb3J0ZGwuYworKysgYi9QeXRob24vaW1wb3J0ZGwuYwpAQCAtMTIsNDkgKzEyLDcxIEBACiAKICNpbmNsdWRlICJpbXBvcnRkbC5oIgogCi1leHRlcm4gZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpzaG9ydG5hbWUsCisjaWZkZWYgTVNfV0lORE9XUworZXh0ZXJuIGRsX2Z1bmNwdHIgX1B5SW1wb3J0X0dldER5bkxvYWRXaW5kb3dzKGNvbnN0IGNoYXIgKnNob3J0bmFtZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeU9iamVjdCAqcGF0aG5hbWUsIEZJTEUgKmZwKTsKKyNlbHNlCitleHRlcm4gZGxfZnVuY3B0ciBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoY29uc3QgY2hhciAqc2hvcnRuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhdGhuYW1lLCBGSUxFICpmcCk7Ci0KLQorI2VuZGlmCiAKIFB5T2JqZWN0ICoKLV9QeUltcG9ydF9Mb2FkRHluYW1pY01vZHVsZShjaGFyICpuYW1lLCBjaGFyICpwYXRobmFtZSwgRklMRSAqZnApCitfUHlJbXBvcnRfTG9hZER5bmFtaWNNb2R1bGUoUHlPYmplY3QgKm5hbWUsIFB5T2JqZWN0ICpwYXRoLCBGSUxFICpmcCkKIHsKLSAgICBQeU9iamVjdCAqbTsKLSAgICBQeU9iamVjdCAqcGF0aDsKLSAgICBjaGFyICpsYXN0ZG90LCAqc2hvcnRuYW1lLCAqcGFja2FnZWNvbnRleHQsICpvbGRjb250ZXh0OworICAgIFB5T2JqZWN0ICptID0gTlVMTDsKKyNpZm5kZWYgTVNfV0lORE9XUworICAgIFB5T2JqZWN0ICpwYXRoYnl0ZXM7CisjZW5kaWYKKyAgICBQeU9iamVjdCAqbmFtZWFzY2lpOworICAgIGNoYXIgKm5hbWVzdHIsICpsYXN0ZG90LCAqc2hvcnRuYW1lLCAqcGFja2FnZWNvbnRleHQsICpvbGRjb250ZXh0OwogICAgIGRsX2Z1bmNwdHIgcDA7CiAgICAgUHlPYmplY3QqICgqcCkodm9pZCk7CiAgICAgc3RydWN0IFB5TW9kdWxlRGVmICpkZWY7Ci0gICAgUHlPYmplY3QgKnJlc3VsdDsKIAotICAgIHBhdGggPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KHBhdGhuYW1lKTsKLSAgICBpZiAocGF0aCA9PSBOVUxMKQorICAgIG0gPSBfUHlJbXBvcnRfRmluZEV4dGVuc2lvbk9iamVjdChuYW1lLCBwYXRoKTsKKyAgICBpZiAobSAhPSBOVUxMKSB7CisgICAgICAgIFB5X0lOQ1JFRihtKTsKKyAgICAgICAgcmV0dXJuIG07CisgICAgfQorCisgICAgLyogbmFtZSBtdXN0IGJlIGVuY29kYWJsZSB0byBBU0NJSSBiZWNhdXNlIGR5bmFtaWMgbW9kdWxlIG11c3QgaGF2ZSBhCisgICAgICAgZnVuY3Rpb24gY2FsbGVkICJQeUluaXRfTkFNRSIsIHRoZXkgYXJlIHdyaXR0ZW4gaW4gQywgYW5kIHRoZSBDIGxhbmd1YWdlCisgICAgICAgZG9lc24ndCBhY2NlcHQgbm9uLUFTQ0lJIGlkZW50aWZpZXJzLiAqLworICAgIG5hbWVhc2NpaSA9IFB5VW5pY29kZV9Bc0VuY29kZWRTdHJpbmcobmFtZSwgImFzY2lpIiwgTlVMTCk7CisgICAgaWYgKG5hbWVhc2NpaSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gTlVMTDsKIAotICAgIGlmICgobSA9IF9QeUltcG9ydF9GaW5kRXh0ZW5zaW9uVW5pY29kZShuYW1lLCBwYXRoKSkgIT0gTlVMTCkgewotICAgICAgICBQeV9JTkNSRUYobSk7Ci0gICAgICAgIHJlc3VsdCA9IG07Ci0gICAgICAgIGdvdG8gZmluYWxseTsKLSAgICB9Ci0gICAgbGFzdGRvdCA9IHN0cnJjaHIobmFtZSwgJy4nKTsKKyAgICBuYW1lc3RyID0gUHlCeXRlc19BU19TVFJJTkcobmFtZWFzY2lpKTsKKyAgICBpZiAobmFtZXN0ciA9PSBOVUxMKQorICAgICAgICBnb3RvIGVycm9yOworCisgICAgbGFzdGRvdCA9IHN0cnJjaHIobmFtZXN0ciwgJy4nKTsKICAgICBpZiAobGFzdGRvdCA9PSBOVUxMKSB7CiAgICAgICAgIHBhY2thZ2Vjb250ZXh0ID0gTlVMTDsKLSAgICAgICAgc2hvcnRuYW1lID0gbmFtZTsKKyAgICAgICAgc2hvcnRuYW1lID0gbmFtZXN0cjsKICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIHBhY2thZ2Vjb250ZXh0ID0gbmFtZTsKKyAgICAgICAgcGFja2FnZWNvbnRleHQgPSBuYW1lc3RyOwogICAgICAgICBzaG9ydG5hbWUgPSBsYXN0ZG90KzE7CiAgICAgfQogCi0gICAgcDAgPSBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMobmFtZSwgc2hvcnRuYW1lLCBwYXRobmFtZSwgZnApOworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICBwMCA9IF9QeUltcG9ydF9HZXREeW5Mb2FkV2luZG93cyhzaG9ydG5hbWUsIHBhdGgsIGZwKTsKKyNlbHNlCisgICAgcGF0aGJ5dGVzID0gUHlVbmljb2RlX0VuY29kZUZTRGVmYXVsdChwYXRoKTsKKyAgICBpZiAocGF0aGJ5dGVzID09IE5VTEwpCisgICAgICAgIGdvdG8gZXJyb3I7CisgICAgcDAgPSBfUHlJbXBvcnRfR2V0RHluTG9hZEZ1bmMoc2hvcnRuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5Qnl0ZXNfQVNfU1RSSU5HKHBhdGhieXRlcyksIGZwKTsKKyAgICBQeV9ERUNSRUYocGF0aGJ5dGVzKTsKKyNlbmRpZgogICAgIHAgPSAoUHlPYmplY3QqKCopKHZvaWQpKXAwOwogICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICBnb3RvIGVycm9yOwogICAgIGlmIChwID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX0ltcG9ydEVycm9yLAotICAgICAgICAgICAiZHluYW1pYyBtb2R1bGUgZG9lcyBub3QgZGVmaW5lIGluaXQgZnVuY3Rpb24gKFB5SW5pdF8lLjIwMHMpIiwKKyAgICAgICAgICAgICAgICAgICAgICJkeW5hbWljIG1vZHVsZSBkb2VzIG5vdCBkZWZpbmUgaW5pdCBmdW5jdGlvbiIKKyAgICAgICAgICAgICAgICAgICAgICIgKFB5SW5pdF8lcykiLAogICAgICAgICAgICAgICAgICAgICAgc2hvcnRuYW1lKTsKICAgICAgICAgZ290byBlcnJvcjsKICAgICB9CkBAIC02Niw3ICs4OCw2IEBACiAgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkgewotICAgICAgICBQeV9ERUNSRUYobSk7CiAgICAgICAgIFB5RXJyX0Zvcm1hdChQeUV4Y19TeXN0ZW1FcnJvciwKICAgICAgICAgICAgICAgICAgICAgICJpbml0aWFsaXphdGlvbiBvZiAlcyByYWlzZWQgdW5yZXBvcnRlZCBleGNlcHRpb24iLAogICAgICAgICAgICAgICAgICAgICAgc2hvcnRuYW1lKTsKQEAgLTgzLDIwICsxMDQsMTkgQEAKICAgICBlbHNlCiAgICAgICAgIFB5X0lOQ1JFRihwYXRoKTsKIAotICAgIGlmIChfUHlJbXBvcnRfRml4dXBFeHRlbnNpb25Vbmljb2RlKG0sIG5hbWUsIHBhdGgpIDwgMCkKKyAgICBpZiAoX1B5SW1wb3J0X0ZpeHVwRXh0ZW5zaW9uT2JqZWN0KG0sIG5hbWUsIHBhdGgpIDwgMCkKICAgICAgICAgZ290byBlcnJvcjsKICAgICBpZiAoUHlfVmVyYm9zZUZsYWcpCi0gICAgICAgIFB5U3lzX1dyaXRlU3RkZXJyKAotICAgICAgICAgICAgImltcG9ydCAlcyAjIGR5bmFtaWNhbGx5IGxvYWRlZCBmcm9tICVzXG4iLAotICAgICAgICAgICAgbmFtZSwgcGF0aG5hbWUpOwotICAgIHJlc3VsdCA9IG07Ci0gICAgZ290byBmaW5hbGx5OworICAgICAgICBQeVN5c19Gb3JtYXRTdGRlcnIoCisgICAgICAgICAgICAiaW1wb3J0ICVVICMgZHluYW1pY2FsbHkgbG9hZGVkIGZyb20gJVJcbiIsCisgICAgICAgICAgICBuYW1lLCBwYXRoKTsKKyAgICBQeV9ERUNSRUYobmFtZWFzY2lpKTsKKyAgICByZXR1cm4gbTsKIAogZXJyb3I6Ci0gICAgcmVzdWx0ID0gTlVMTDsKLWZpbmFsbHk6Ci0gICAgUHlfREVDUkVGKHBhdGgpOwotICAgIHJldHVybiByZXN1bHQ7CisgICAgUHlfREVDUkVGKG5hbWVhc2NpaSk7CisgICAgUHlfWERFQ1JFRihtKTsKKyAgICByZXR1cm4gTlVMTDsKIH0KIAogI2VuZGlmIC8qIEhBVkVfRFlOQU1JQ19MT0FESU5HICovCmRpZmYgLS1naXQgYS9QeXRob24vaW1wb3J0ZGwuaCBiL1B5dGhvbi9pbXBvcnRkbC5oCmluZGV4IGI0ZDIxYmUuLmU1MWU1NTEgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9pbXBvcnRkbC5oCisrKyBiL1B5dGhvbi9pbXBvcnRkbC5oCkBAIC0yOCw3ICsyOCw3IEBACiBleHRlcm4gc3RydWN0IGZpbGVkZXNjciAqIF9QeUltcG9ydF9GaWxldGFiOwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBmaWxlZGVzY3IgX1B5SW1wb3J0X0R5bkxvYWRGaWxldGFiW107CiAKLWV4dGVybiBQeU9iamVjdCAqX1B5SW1wb3J0X0xvYWREeW5hbWljTW9kdWxlKGNoYXIgKm5hbWUsIGNoYXIgKnBhdGhuYW1lLAorZXh0ZXJuIFB5T2JqZWN0ICpfUHlJbXBvcnRfTG9hZER5bmFtaWNNb2R1bGUoUHlPYmplY3QgKm5hbWUsIFB5T2JqZWN0ICpwYXRobmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZJTEUgKik7CiAKIC8qIE1heCBsZW5ndGggb2YgbW9kdWxlIHN1ZmZpeCBzZWFyY2hlZCBmb3IgLS0gYWNjb21tb2RhdGVzICJtb2R1bGUuc2xiIiAqLwpkaWZmIC0tZ2l0IGEvUHl0aG9uL21ha2VvcGNvZGV0YXJnZXRzLnB5IGIvUHl0aG9uL21ha2VvcGNvZGV0YXJnZXRzLnB5CmluZGV4IDVkOGU1YTkuLmQ5YTA4NTUgMTAwNzU1Ci0tLSBhL1B5dGhvbi9tYWtlb3Bjb2RldGFyZ2V0cy5weQorKysgYi9QeXRob24vbWFrZW9wY29kZXRhcmdldHMucHkKQEAgLTIzLDkgKzIzLDYgQEAKICAgICBvcGNvZGUgPSBmaW5kX21vZHVsZSgib3Bjb2RlIikKICAgICB0YXJnZXRzID0gWydfdW5rbm93bl9vcGNvZGUnXSAqIDI1NgogICAgIGZvciBvcG5hbWUsIG9wIGluIG9wY29kZS5vcG1hcC5pdGVtcygpOgotICAgICAgICBpZiBvcG5hbWUgPT0gIlNUT1BfQ09ERSI6Ci0gICAgICAgICAgICAjIFhYWCBvcGNvZGUgbm90IGltcGxlbWVudGVkCi0gICAgICAgICAgICBjb250aW51ZQogICAgICAgICB0YXJnZXRzW29wXSA9ICJUQVJHRVRfJXMiICUgb3BuYW1lCiAgICAgZi53cml0ZSgic3RhdGljIHZvaWQgKm9wY29kZV90YXJnZXRzWzI1Nl0gPSB7XG4iKQogICAgIGYud3JpdGUoIixcbiIuam9pbihbIiAgICAmJiVzIiAlIHMgZm9yIHMgaW4gdGFyZ2V0c10pKQpkaWZmIC0tZ2l0IGEvUHl0aG9uL21hcnNoYWwuYyBiL1B5dGhvbi9tYXJzaGFsLmMKaW5kZXggMDk0ZjczMi4uOThiYmJhZiAxMDA2NDQKLS0tIGEvUHl0aG9uL21hcnNoYWwuYworKysgYi9QeXRob24vbWFyc2hhbC5jCkBAIC01OSw5ICs1OSw5IEBACiAgICAgLyogSWYgZnAgPT0gTlVMTCwgdGhlIGZvbGxvd2luZyBhcmUgdmFsaWQ6ICovCiAgICAgUHlPYmplY3QgKnJlYWRhYmxlOyAgICAvKiBTdHJlYW0tbGlrZSBvYmplY3QgYmVpbmcgcmVhZCBmcm9tICovCiAgICAgUHlPYmplY3QgKnN0cjsKKyAgICBQeU9iamVjdCAqY3VycmVudF9maWxlbmFtZTsKICAgICBjaGFyICpwdHI7CiAgICAgY2hhciAqZW5kOwotICAgIFB5T2JqZWN0ICpzdHJpbmdzOyAvKiBkaWN0IG9uIG1hcnNoYWwsIGxpc3Qgb24gdW5tYXJzaGFsICovCiAgICAgaW50IHZlcnNpb247CiB9IFdGSUxFOwogCkBAIC0zMTEsOSArMzExLDcgQEAKICAgICB9CiAgICAgZWxzZSBpZiAoUHlVbmljb2RlX0NoZWNrRXhhY3QodikpIHsKICAgICAgICAgUHlPYmplY3QgKnV0Zjg7Ci0gICAgICAgIHV0ZjggPSBQeVVuaWNvZGVfRW5jb2RlVVRGOChQeVVuaWNvZGVfQVNfVU5JQ09ERSh2KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfU0laRSh2KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdXJyb2dhdGVwYXNzIik7CisgICAgICAgIHV0ZjggPSBQeVVuaWNvZGVfQXNFbmNvZGVkU3RyaW5nKHYsICJ1dGY4IiwgInN1cnJvZ2F0ZXBhc3MiKTsKICAgICAgICAgaWYgKHV0ZjggPT0gTlVMTCkgewogICAgICAgICAgICAgcC0+ZGVwdGgtLTsKICAgICAgICAgICAgIHAtPmVycm9yID0gV0ZFUlJfVU5NQVJTSEFMTEFCTEU7CkBAIC00NDUsNyArNDQzLDYgQEAKICAgICB3Zi5mcCA9IGZwOwogICAgIHdmLmVycm9yID0gV0ZFUlJfT0s7CiAgICAgd2YuZGVwdGggPSAwOwotICAgIHdmLnN0cmluZ3MgPSBOVUxMOwogICAgIHdmLnZlcnNpb24gPSB2ZXJzaW9uOwogICAgIHdfbG9uZyh4LCAmd2YpOwogfQpAQCAtNDU3LDEwICs0NTQsOCBAQAogICAgIHdmLmZwID0gZnA7CiAgICAgd2YuZXJyb3IgPSBXRkVSUl9PSzsKICAgICB3Zi5kZXB0aCA9IDA7Ci0gICAgd2Yuc3RyaW5ncyA9ICh2ZXJzaW9uID4gMCkgPyBQeURpY3RfTmV3KCkgOiBOVUxMOwogICAgIHdmLnZlcnNpb24gPSB2ZXJzaW9uOwogICAgIHdfb2JqZWN0KHgsICZ3Zik7Ci0gICAgUHlfWERFQ1JFRih3Zi5zdHJpbmdzKTsKIH0KIAogdHlwZWRlZiBXRklMRSBSRklMRTsgLyogU2FtZSBzdHJ1Y3Qgd2l0aCBkaWZmZXJlbnQgaW52YXJpYW50cyAqLwpAQCAtNDg1LDcgKzQ4MCw5IEBACiAgICAgICAgIH0KICAgICB9CiAgICAgZWxzZSB7Ci0gICAgICAgIFB5T2JqZWN0ICpkYXRhID0gUHlPYmplY3RfQ2FsbE1ldGhvZChwLT5yZWFkYWJsZSwgInJlYWQiLCAiaSIsIG4pOworICAgICAgICBfUHlfSURFTlRJRklFUihyZWFkKTsKKworICAgICAgICBQeU9iamVjdCAqZGF0YSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQocC0+cmVhZGFibGUsICZQeUlkX3JlYWQsICJpIiwgbik7CiAgICAgICAgIHJlYWQgPSAwOwogICAgICAgICBpZiAoZGF0YSAhPSBOVUxMKSB7CiAgICAgICAgICAgICBpZiAoIVB5Qnl0ZXNfQ2hlY2soZGF0YSkpIHsKQEAgLTEwNjksNiArMTA2NiwxOCBAQAogICAgICAgICAgICAgZmlsZW5hbWUgPSByX29iamVjdChwKTsKICAgICAgICAgICAgIGlmIChmaWxlbmFtZSA9PSBOVUxMKQogICAgICAgICAgICAgICAgIGdvdG8gY29kZV9lcnJvcjsKKyAgICAgICAgICAgIGlmIChQeVVuaWNvZGVfQ2hlY2tFeGFjdChmaWxlbmFtZSkpIHsKKyAgICAgICAgICAgICAgICBpZiAocC0+Y3VycmVudF9maWxlbmFtZSAhPSBOVUxMKSB7CisgICAgICAgICAgICAgICAgICAgIGlmICghUHlVbmljb2RlX0NvbXBhcmUoZmlsZW5hbWUsIHAtPmN1cnJlbnRfZmlsZW5hbWUpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBQeV9ERUNSRUYoZmlsZW5hbWUpOworICAgICAgICAgICAgICAgICAgICAgICAgUHlfSU5DUkVGKHAtPmN1cnJlbnRfZmlsZW5hbWUpOworICAgICAgICAgICAgICAgICAgICAgICAgZmlsZW5hbWUgPSBwLT5jdXJyZW50X2ZpbGVuYW1lOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGVsc2UgeworICAgICAgICAgICAgICAgICAgICBwLT5jdXJyZW50X2ZpbGVuYW1lID0gZmlsZW5hbWU7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQogICAgICAgICAgICAgbmFtZSA9IHJfb2JqZWN0KHApOwogICAgICAgICAgICAgaWYgKG5hbWUgPT0gTlVMTCkKICAgICAgICAgICAgICAgICBnb3RvIGNvZGVfZXJyb3I7CkBAIC0xMTMxLDcgKzExNDAsNyBAQAogICAgIGFzc2VydChmcCk7CiAgICAgcmYucmVhZGFibGUgPSBOVUxMOwogICAgIHJmLmZwID0gZnA7Ci0gICAgcmYuc3RyaW5ncyA9IE5VTEw7CisgICAgcmYuY3VycmVudF9maWxlbmFtZSA9IE5VTEw7CiAgICAgcmYuZW5kID0gcmYucHRyID0gTlVMTDsKICAgICByZXR1cm4gcl9zaG9ydCgmcmYpOwogfQpAQCAtMTE0Miw3ICsxMTUxLDcgQEAKICAgICBSRklMRSByZjsKICAgICByZi5mcCA9IGZwOwogICAgIHJmLnJlYWRhYmxlID0gTlVMTDsKLSAgICByZi5zdHJpbmdzID0gTlVMTDsKKyAgICByZi5jdXJyZW50X2ZpbGVuYW1lID0gTlVMTDsKICAgICByZi5wdHIgPSByZi5lbmQgPSBOVUxMOwogICAgIHJldHVybiByX2xvbmcoJnJmKTsKIH0KQEAgLTEyMDQsMTEgKzEyMTMsMTAgQEAKICAgICBQeU9iamVjdCAqcmVzdWx0OwogICAgIHJmLmZwID0gZnA7CiAgICAgcmYucmVhZGFibGUgPSBOVUxMOwotICAgIHJmLnN0cmluZ3MgPSBQeUxpc3RfTmV3KDApOworICAgIHJmLmN1cnJlbnRfZmlsZW5hbWUgPSBOVUxMOwogICAgIHJmLmRlcHRoID0gMDsKICAgICByZi5wdHIgPSByZi5lbmQgPSBOVUxMOwogICAgIHJlc3VsdCA9IHJfb2JqZWN0KCZyZik7Ci0gICAgUHlfREVDUkVGKHJmLnN0cmluZ3MpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKQEAgLTEyMTksMTIgKzEyMjcsMTEgQEAKICAgICBQeU9iamVjdCAqcmVzdWx0OwogICAgIHJmLmZwID0gTlVMTDsKICAgICByZi5yZWFkYWJsZSA9IE5VTEw7CisgICAgcmYuY3VycmVudF9maWxlbmFtZSA9IE5VTEw7CiAgICAgcmYucHRyID0gc3RyOwogICAgIHJmLmVuZCA9IHN0ciArIGxlbjsKLSAgICByZi5zdHJpbmdzID0gUHlMaXN0X05ldygwKTsKICAgICByZi5kZXB0aCA9IDA7CiAgICAgcmVzdWx0ID0gcl9vYmplY3QoJnJmKTsKLSAgICBQeV9ERUNSRUYocmYuc3RyaW5ncyk7CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIApAQCAtMTI0NCw5ICsxMjUxLDcgQEAKICAgICB3Zi5lcnJvciA9IFdGRVJSX09LOwogICAgIHdmLmRlcHRoID0gMDsKICAgICB3Zi52ZXJzaW9uID0gdmVyc2lvbjsKLSAgICB3Zi5zdHJpbmdzID0gKHZlcnNpb24gPiAwKSA/IFB5RGljdF9OZXcoKSA6IE5VTEw7CiAgICAgd19vYmplY3QoeCwgJndmKTsKLSAgICBQeV9YREVDUkVGKHdmLnN0cmluZ3MpOwogICAgIGlmICh3Zi5zdHIgIT0gTlVMTCkgewogICAgICAgICBjaGFyICpiYXNlID0gUHlCeXRlc19BU19TVFJJTkcoKFB5Qnl0ZXNPYmplY3QgKil3Zi5zdHIpOwogICAgICAgICBpZiAod2YucHRyIC0gYmFzZSA+IFBZX1NTSVpFX1RfTUFYKSB7CkBAIC0xMjg3LDEyICsxMjkyLDE0IEBACiAgICAgaW50IHZlcnNpb24gPSBQeV9NQVJTSEFMX1ZFUlNJT047CiAgICAgUHlPYmplY3QgKnM7CiAgICAgUHlPYmplY3QgKnJlczsKKyAgICBfUHlfSURFTlRJRklFUih3cml0ZSk7CisKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGUoYXJncywgIk9PfGk6ZHVtcCIsICZ4LCAmZiwgJnZlcnNpb24pKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBzID0gUHlNYXJzaGFsX1dyaXRlT2JqZWN0VG9TdHJpbmcoeCwgdmVyc2lvbik7CiAgICAgaWYgKHMgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmLCAid3JpdGUiLCAiTyIsIHMpOworICAgIHJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZiwgJlB5SWRfd3JpdGUsICJPIiwgcyk7CiAgICAgUHlfREVDUkVGKHMpOwogICAgIHJldHVybiByZXM7CiB9CkBAIC0xMzE0LDYgKzEzMjEsNyBAQAogbWFyc2hhbF9sb2FkKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqZikKIHsKICAgICBQeU9iamVjdCAqZGF0YSwgKnJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihyZWFkKTsKICAgICBSRklMRSByZjsKIAogICAgIC8qCkBAIC0xMzIxLDcgKzEzMjksNyBAQAogICAgICAqIFRoaXMgaXMgdG8gZW5zdXJlIHRoYXQgdGhlIG9iamVjdCBwYXNzZWQgaW4gYXQgbGVhc3QKICAgICAgKiBoYXMgYSByZWFkIG1ldGhvZCB3aGljaCByZXR1cm5zIGJ5dGVzLgogICAgICAqLwotICAgIGRhdGEgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGYsICJyZWFkIiwgImkiLCAwKTsKKyAgICBkYXRhID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmLCAmUHlJZF9yZWFkLCAiaSIsIDApOwogICAgIGlmIChkYXRhID09IE5VTEwpCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIGlmICghUHlCeXRlc19DaGVjayhkYXRhKSkgewpAQCAtMTMzMSwxMiArMTMzOSwxMSBAQAogICAgICAgICByZXN1bHQgPSBOVUxMOwogICAgIH0KICAgICBlbHNlIHsKLSAgICAgICAgcmYuc3RyaW5ncyA9IFB5TGlzdF9OZXcoMCk7CiAgICAgICAgIHJmLmRlcHRoID0gMDsKICAgICAgICAgcmYuZnAgPSBOVUxMOwogICAgICAgICByZi5yZWFkYWJsZSA9IGY7CisgICAgICAgIHJmLmN1cnJlbnRfZmlsZW5hbWUgPSBOVUxMOwogICAgICAgICByZXN1bHQgPSByZWFkX29iamVjdCgmcmYpOwotICAgICAgICBQeV9ERUNSRUYocmYuc3RyaW5ncyk7CiAgICAgfQogICAgIFB5X0RFQ1JFRihkYXRhKTsKICAgICByZXR1cm4gcmVzdWx0OwpAQCAtMTM4OSwxMiArMTM5NiwxMSBAQAogICAgIG4gPSBwLmxlbjsKICAgICByZi5mcCA9IE5VTEw7CiAgICAgcmYucmVhZGFibGUgPSBOVUxMOworICAgIHJmLmN1cnJlbnRfZmlsZW5hbWUgPSBOVUxMOwogICAgIHJmLnB0ciA9IHM7CiAgICAgcmYuZW5kID0gcyArIG47Ci0gICAgcmYuc3RyaW5ncyA9IFB5TGlzdF9OZXcoMCk7CiAgICAgcmYuZGVwdGggPSAwOwogICAgIHJlc3VsdCA9IHJlYWRfb2JqZWN0KCZyZik7Ci0gICAgUHlfREVDUkVGKHJmLnN0cmluZ3MpOwogICAgIFB5QnVmZmVyX1JlbGVhc2UoJnApOwogICAgIHJldHVybiByZXN1bHQ7CiB9CmRpZmYgLS1naXQgYS9QeXRob24vbW9kc3VwcG9ydC5jIGIvUHl0aG9uL21vZHN1cHBvcnQuYwppbmRleCA4NWIwZDY2Li40Mjg5MTRmIDEwMDY0NAotLS0gYS9QeXRob24vbW9kc3VwcG9ydC5jCisrKyBiL1B5dGhvbi9tb2RzdXBwb3J0LmMKQEAgLTE0OCwxNSArMTQ4LDYgQEAKICAgICByZXR1cm4gdjsKIH0KIAotc3RhdGljIGludAotX3VzdHJsZW4oUHlfVU5JQ09ERSAqdSkKLXsKLSAgICBpbnQgaSA9IDA7Ci0gICAgUHlfVU5JQ09ERSAqdiA9IHU7Ci0gICAgd2hpbGUgKCp2ICE9IDApIHsgaSsrOyB2Kys7IH0KLSAgICByZXR1cm4gaTsKLX0KLQogc3RhdGljIFB5T2JqZWN0ICoKIGRvX21rdHVwbGUoY29uc3QgY2hhciAqKnBfZm9ybWF0LCB2YV9saXN0ICpwX3ZhLCBpbnQgZW5kY2hhciwgaW50IG4sIGludCBmbGFncykKIHsKQEAgLTI2OSw3ICsyNjAsNyBAQAogICAgICAgICAgICAgfQogICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgaWYgKG4gPCAwKQotICAgICAgICAgICAgICAgICAgICBuID0gX3VzdHJsZW4odSk7CisgICAgICAgICAgICAgICAgICAgIG4gPSBQeV9VTklDT0RFX3N0cmxlbih1KTsKICAgICAgICAgICAgICAgICB2ID0gUHlVbmljb2RlX0Zyb21Vbmljb2RlKHUsIG4pOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgcmV0dXJuIHY7CkBAIC0yOTIsMTEgKzI4Myw2IEBACiAgICAgICAgIGNhc2UgJ0MnOgogICAgICAgICB7CiAgICAgICAgICAgICBpbnQgaSA9IHZhX2FyZygqcF92YSwgaW50KTsKLSAgICAgICAgICAgIGlmIChpIDwgMCB8fCBpID4gUHlVbmljb2RlX0dldE1heCgpKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX092ZXJmbG93RXJyb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlYyBhcmcgbm90IGluIHJhbmdlKDB4MTEwMDAwKSIpOwotICAgICAgICAgICAgICAgIHJldHVybiBOVUxMOwotICAgICAgICAgICAgfQogICAgICAgICAgICAgcmV0dXJuIFB5VW5pY29kZV9Gcm9tT3JkaW5hbChpKTsKICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9QeXRob24vb3Bjb2RlX3RhcmdldHMuaCBiL1B5dGhvbi9vcGNvZGVfdGFyZ2V0cy5oCmluZGV4IGE5MWRhNzkuLjJkNmJjZGEgMTAwNjQ0Ci0tLSBhL1B5dGhvbi9vcGNvZGVfdGFyZ2V0cy5oCisrKyBiL1B5dGhvbi9vcGNvZGVfdGFyZ2V0cy5oCkBAIC03MSw3ICs3MSw3IEBACiAgICAgJiZUQVJHRVRfU1RPUkVfTE9DQUxTLAogICAgICYmVEFSR0VUX1BSSU5UX0VYUFIsCiAgICAgJiZUQVJHRVRfTE9BRF9CVUlMRF9DTEFTUywKLSAgICAmJl91bmtub3duX29wY29kZSwKKyAgICAmJlRBUkdFVF9ZSUVMRF9GUk9NLAogICAgICYmX3Vua25vd25fb3Bjb2RlLAogICAgICYmX3Vua25vd25fb3Bjb2RlLAogICAgICYmVEFSR0VUX0lOUExBQ0VfTFNISUZULApkaWZmIC0tZ2l0IGEvUHl0aG9uL3BlZXBob2xlLmMgYi9QeXRob24vcGVlcGhvbGUuYwppbmRleCAzNTllZGE4Li41ZDUzNjc3IDEwMDY0NAotLS0gYS9QeXRob24vcGVlcGhvbGUuYworKysgYi9QeXRob24vcGVlcGhvbGUuYwpAQCAtMjMsNiArMjMsNjQgQEAKICNkZWZpbmUgSVNCQVNJQ0JMT0NLKGJsb2Nrcywgc3RhcnQsIGJ5dGVzKSBcCiAgICAgKGJsb2Nrc1tzdGFydF09PWJsb2Nrc1tzdGFydCtieXRlcy0xXSkKIAorCisjZGVmaW5lIENPTlNUX1NUQUNLX0NSRUFURSgpIHsgXAorICAgIGNvbnN0X3N0YWNrX3NpemUgPSAyNTY7IFwKKyAgICBjb25zdF9zdGFjayA9IFB5TWVtX05ldyhQeU9iamVjdCAqLCBjb25zdF9zdGFja19zaXplKTsgXAorICAgIGxvYWRfY29uc3Rfc3RhY2sgPSBQeU1lbV9OZXcoUHlfc3NpemVfdCwgY29uc3Rfc3RhY2tfc2l6ZSk7IFwKKyAgICBpZiAoIWNvbnN0X3N0YWNrIHx8ICFsb2FkX2NvbnN0X3N0YWNrKSB7IFwKKyAgICAgICAgUHlFcnJfTm9NZW1vcnkoKTsgXAorICAgICAgICBnb3RvIGV4aXRFcnJvcjsgXAorICAgIH0gXAorICAgIH0KKworI2RlZmluZSBDT05TVF9TVEFDS19ERUxFVEUoKSBkbyB7IFwKKyAgICBpZiAoY29uc3Rfc3RhY2spIFwKKyAgICAgICAgUHlNZW1fRnJlZShjb25zdF9zdGFjayk7IFwKKyAgICBpZiAobG9hZF9jb25zdF9zdGFjaykgXAorICAgICAgICBQeU1lbV9GcmVlKGxvYWRfY29uc3Rfc3RhY2spOyBcCisgICAgfSB3aGlsZSgwKQorCisjZGVmaW5lIENPTlNUX1NUQUNLX0xFTigpIChjb25zdF9zdGFja190b3AgKyAxKQorCisjZGVmaW5lIENPTlNUX1NUQUNLX1BVU0hfT1AoaSkgZG8geyBcCisgICAgUHlPYmplY3QgKl94OyBcCisgICAgYXNzZXJ0KGNvZGVzdHJbaV0gPT0gTE9BRF9DT05TVCk7IFwKKyAgICBhc3NlcnQoUHlMaXN0X0dFVF9TSVpFKGNvbnN0cykgPiBHRVRBUkcoY29kZXN0ciwgaSkpOyBcCisgICAgX3ggPSBQeUxpc3RfR0VUX0lURU0oY29uc3RzLCBHRVRBUkcoY29kZXN0ciwgaSkpOyBcCisgICAgaWYgKCsrY29uc3Rfc3RhY2tfdG9wID49IGNvbnN0X3N0YWNrX3NpemUpIHsgXAorICAgICAgICBjb25zdF9zdGFja19zaXplICo9IDI7IFwKKyAgICAgICAgUHlNZW1fUmVzaXplKGNvbnN0X3N0YWNrLCBQeU9iamVjdCAqLCBjb25zdF9zdGFja19zaXplKTsgXAorICAgICAgICBQeU1lbV9SZXNpemUobG9hZF9jb25zdF9zdGFjaywgUHlfc3NpemVfdCwgY29uc3Rfc3RhY2tfc2l6ZSk7IFwKKyAgICAgICAgaWYgKCFjb25zdF9zdGFjayB8fCAhbG9hZF9jb25zdF9zdGFjaykgeyBcCisgICAgICAgICAgICBQeUVycl9Ob01lbW9yeSgpOyBcCisgICAgICAgICAgICBnb3RvIGV4aXRFcnJvcjsgXAorICAgICAgICB9IFwKKyAgICB9IFwKKyAgICBsb2FkX2NvbnN0X3N0YWNrW2NvbnN0X3N0YWNrX3RvcF0gPSBpOyBcCisgICAgY29uc3Rfc3RhY2tbY29uc3Rfc3RhY2tfdG9wXSA9IF94OyBcCisgICAgaW5fY29uc3RzID0gMTsgXAorICAgIH0gd2hpbGUoMCkKKworI2RlZmluZSBDT05TVF9TVEFDS19SRVNFVCgpIGRvIHsgXAorICAgIGNvbnN0X3N0YWNrX3RvcCA9IC0xOyBcCisgICAgfSB3aGlsZSgwKQorCisjZGVmaW5lIENPTlNUX1NUQUNLX1RPUCgpIFwKKyAgICBjb25zdF9zdGFja1tjb25zdF9zdGFja190b3BdCisKKyNkZWZpbmUgQ09OU1RfU1RBQ0tfTEFTVE4oaSkgXAorICAgICZjb25zdF9zdGFja1tjb25zdF9zdGFja190b3AgLSBpICsgMV0KKworI2RlZmluZSBDT05TVF9TVEFDS19QT1AoaSkgZG8geyBcCisgICAgYXNzZXJ0KGNvbnN0X3N0YWNrX3RvcCArIDEgPj0gaSk7IFwKKyAgICBjb25zdF9zdGFja190b3AgLT0gaTsgXAorICAgIH0gd2hpbGUoMCkKKworI2RlZmluZSBDT05TVF9TVEFDS19PUF9MQVNUTihpKSBcCisgICAgKChjb25zdF9zdGFja190b3AgPj0gaSAtIDEpID8gbG9hZF9jb25zdF9zdGFja1tjb25zdF9zdGFja190b3AgLSBpICsgMV0gOiAtMSkKKworCiAvKiBSZXBsYWNlIExPQURfQ09OU1QgYzEuIExPQURfQ09OU1QgYzIgLi4uIExPQURfQ09OU1QgY24gQlVJTERfVFVQTEUgbgogICAgd2l0aCAgICBMT0FEX0NPTlNUIChjMSwgYzIsIC4uLiBjbikuCiAgICBUaGUgY29uc3RzIHRhYmxlIG11c3Qgc3RpbGwgYmUgaW4gbGlzdCBmb3JtIHNvIHRoYXQgdGhlCkBAIC0zMywxNyArOTEsMTQgQEAKICAgIHRlc3Q7IGZvciBCVUlMRF9TRVQgaXQgYXNzZW1ibGVzIGEgZnJvemVuc2V0IHJhdGhlciB0aGFuIGEgdHVwbGUuCiAqLwogc3RhdGljIGludAotdHVwbGVfb2ZfY29uc3RhbnRzKHVuc2lnbmVkIGNoYXIgKmNvZGVzdHIsIFB5X3NzaXplX3QgbiwgUHlPYmplY3QgKmNvbnN0cykKK3R1cGxlX29mX2NvbnN0YW50cyh1bnNpZ25lZCBjaGFyICpjb2Rlc3RyLCBQeV9zc2l6ZV90IG4sCisgICAgICAgICAgICAgICAgICAgUHlPYmplY3QgKmNvbnN0cywgUHlPYmplY3QgKipvYmpzKQogewogICAgIFB5T2JqZWN0ICpuZXdjb25zdCwgKmNvbnN0YW50OwotICAgIFB5X3NzaXplX3QgaSwgYXJnLCBsZW5fY29uc3RzOworICAgIFB5X3NzaXplX3QgaSwgbGVuX2NvbnN0czsKIAogICAgIC8qIFByZS1jb25kaXRpb25zICovCiAgICAgYXNzZXJ0KFB5TGlzdF9DaGVja0V4YWN0KGNvbnN0cykpOwotICAgIGFzc2VydChjb2Rlc3RyW24qM10gPT0gQlVJTERfVFVQTEUgfHwgY29kZXN0cltuKjNdID09IEJVSUxEX0xJU1QgfHwgY29kZXN0cltuKjNdID09IEJVSUxEX1NFVCk7Ci0gICAgYXNzZXJ0KEdFVEFSRyhjb2Rlc3RyLCAobiozKSkgPT0gbik7Ci0gICAgZm9yIChpPTAgOyBpPG4gOyBpKyspCi0gICAgICAgIGFzc2VydChjb2Rlc3RyW2kqM10gPT0gTE9BRF9DT05TVCk7CiAKICAgICAvKiBCdWlsZHVwIG5ldyB0dXBsZSBvZiBjb25zdGFudHMgKi8KICAgICBuZXdjb25zdCA9IFB5VHVwbGVfTmV3KG4pOwpAQCAtNTEsMTYgKzEwNiwxNCBAQAogICAgICAgICByZXR1cm4gMDsKICAgICBsZW5fY29uc3RzID0gUHlMaXN0X0dFVF9TSVpFKGNvbnN0cyk7CiAgICAgZm9yIChpPTAgOyBpPG4gOyBpKyspIHsKLSAgICAgICAgYXJnID0gR0VUQVJHKGNvZGVzdHIsIChpKjMpKTsKLSAgICAgICAgYXNzZXJ0KGFyZyA8IGxlbl9jb25zdHMpOwotICAgICAgICBjb25zdGFudCA9IFB5TGlzdF9HRVRfSVRFTShjb25zdHMsIGFyZyk7CisgICAgICAgIGNvbnN0YW50ID0gb2Jqc1tpXTsKICAgICAgICAgUHlfSU5DUkVGKGNvbnN0YW50KTsKICAgICAgICAgUHlUdXBsZV9TRVRfSVRFTShuZXdjb25zdCwgaSwgY29uc3RhbnQpOwogICAgIH0KIAogICAgIC8qIElmIGl0J3MgYSBCVUlMRF9TRVQsIHVzZSB0aGUgUHlUdXBsZSB3ZSBqdXN0IGJ1aWx0IHRvIGNyZWF0ZSBhCiAgICAgICBQeUZyb3plblNldCwgYW5kIHVzZSB0aGF0IGFzIHRoZSBjb25zdGFudCBpbnN0ZWFkOiAqLwotICAgIGlmIChjb2Rlc3RyW24qM10gPT0gQlVJTERfU0VUKSB7CisgICAgaWYgKGNvZGVzdHJbMF0gPT0gQlVJTERfU0VUKSB7CiAgICAgICAgIFB5T2JqZWN0ICp0dXBsZSA9IG5ld2NvbnN0OwogICAgICAgICBuZXdjb25zdCA9IFB5RnJvemVuU2V0X05ldyh0dXBsZSk7CiAgICAgICAgIFB5X0RFQ1JFRih0dXBsZSk7CkBAIC03Nyw5ICsxMzAsOCBAQAogCiAgICAgLyogV3JpdGUgTk9QcyBvdmVyIG9sZCBMT0FEX0NPTlNUUyBhbmQKICAgICAgICBhZGQgYSBuZXcgTE9BRF9DT05TVCBuZXdjb25zdCBvbiB0b3Agb2YgdGhlIEJVSUxEX1RVUExFIG4gKi8KLSAgICBtZW1zZXQoY29kZXN0ciwgTk9QLCBuKjMpOwotICAgIGNvZGVzdHJbbiozXSA9IExPQURfQ09OU1Q7Ci0gICAgU0VUQVJHKGNvZGVzdHIsIChuKjMpLCBsZW5fY29uc3RzKTsKKyAgICBjb2Rlc3RyWzBdID0gTE9BRF9DT05TVDsKKyAgICBTRVRBUkcoY29kZXN0ciwgMCwgbGVuX2NvbnN0cyk7CiAgICAgcmV0dXJuIDE7CiB9CiAKQEAgLTg3LDE0ICsxMzksMTQgQEAKICAgIHdpdGggICAgTE9BRF9DT05TVCBiaW5vcChjMSxjMikKICAgIFRoZSBjb25zdHMgdGFibGUgbXVzdCBzdGlsbCBiZSBpbiBsaXN0IGZvcm0gc28gdGhhdCB0aGUKICAgIG5ldyBjb25zdGFudCBjYW4gYmUgYXBwZW5kZWQuCi0gICBDYWxsZWQgd2l0aCBjb2Rlc3RyIHBvaW50aW5nIHRvIHRoZSBmaXJzdCBMT0FEX0NPTlNULgorICAgQ2FsbGVkIHdpdGggY29kZXN0ciBwb2ludGluZyB0byB0aGUgQklOT1AuCiAgICBBYmFuZG9ucyB0aGUgdHJhbnNmb3JtYXRpb24gaWYgdGhlIGZvbGRpbmcgZmFpbHMgKGkuZS4gIDErJ2EnKS4KICAgIElmIHRoZSBuZXcgY29uc3RhbnQgaXMgYSBzZXF1ZW5jZSwgb25seSBmb2xkcyB3aGVuIHRoZSBzaXplCiAgICBpcyBiZWxvdyBhIHRocmVzaG9sZCB2YWx1ZS4gIFRoYXQga2VlcHMgcHljIGZpbGVzIGZyb20KICAgIGJlY29taW5nIGxhcmdlIGluIHRoZSBwcmVzZW5jZSBvZiBjb2RlIGxpa2U6ICAoTm9uZSwpKjEwMDAuCiAqLwogc3RhdGljIGludAotZm9sZF9iaW5vcHNfb25fY29uc3RhbnRzKHVuc2lnbmVkIGNoYXIgKmNvZGVzdHIsIFB5T2JqZWN0ICpjb25zdHMpCitmb2xkX2Jpbm9wc19vbl9jb25zdGFudHModW5zaWduZWQgY2hhciAqY29kZXN0ciwgUHlPYmplY3QgKmNvbnN0cywgUHlPYmplY3QgKipvYmpzKQogewogICAgIFB5T2JqZWN0ICpuZXdjb25zdCwgKnYsICp3OwogICAgIFB5X3NzaXplX3QgbGVuX2NvbnN0cywgc2l6ZTsKQEAgLTEwMiwxMyArMTU0LDExIEBACiAKICAgICAvKiBQcmUtY29uZGl0aW9ucyAqLwogICAgIGFzc2VydChQeUxpc3RfQ2hlY2tFeGFjdChjb25zdHMpKTsKLSAgICBhc3NlcnQoY29kZXN0clswXSA9PSBMT0FEX0NPTlNUKTsKLSAgICBhc3NlcnQoY29kZXN0clszXSA9PSBMT0FEX0NPTlNUKTsKIAogICAgIC8qIENyZWF0ZSBuZXcgY29uc3RhbnQgKi8KLSAgICB2ID0gUHlMaXN0X0dFVF9JVEVNKGNvbnN0cywgR0VUQVJHKGNvZGVzdHIsIDApKTsKLSAgICB3ID0gUHlMaXN0X0dFVF9JVEVNKGNvbnN0cywgR0VUQVJHKGNvZGVzdHIsIDMpKTsKLSAgICBvcGNvZGUgPSBjb2Rlc3RyWzZdOworICAgIHYgPSBvYmpzWzBdOworICAgIHcgPSBvYmpzWzFdOworICAgIG9wY29kZSA9IGNvZGVzdHJbMF07CiAgICAgc3dpdGNoIChvcGNvZGUpIHsKICAgICAgICAgY2FzZSBCSU5BUllfUE9XRVI6CiAgICAgICAgICAgICBuZXdjb25zdCA9IFB5TnVtYmVyX1Bvd2VyKHYsIHcsIFB5X05vbmUpOwpAQCAtMTMzLDI0ICsxODMsNiBAQAogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGNhc2UgQklOQVJZX1NVQlNDUjoKICAgICAgICAgICAgIG5ld2NvbnN0ID0gUHlPYmplY3RfR2V0SXRlbSh2LCB3KTsKLSAgICAgICAgICAgIC8qICM1MDU3OiBpZiB2IGlzIHVuaWNvZGUsIHRoZXJlIG1pZ2h0IGJlIGRpZmZlcmVuY2VzIGJldHdlZW4KLSAgICAgICAgICAgICAgIHdpZGUgYW5kIG5hcnJvdyBidWlsZHMgaW4gY2FzZXMgbGlrZSAnXFUwMDAxMjM0NSdbMF0uCi0gICAgICAgICAgICAgICBXaWRlIGJ1aWxkcyB3aWxsIHJldHVybiBhIG5vbi1CTVAgY2hhciwgd2hlcmVhcyBuYXJyb3cgYnVpbGRzCi0gICAgICAgICAgICAgICB3aWxsIHJldHVybiBhIHN1cnJvZ2F0ZS4gIEluIGJvdGggdGhlIGNhc2VzIHNraXAgdGhlCi0gICAgICAgICAgICAgICBvcHRpbWl6YXRpb24gaW4gb3JkZXIgdG8gcHJvZHVjZSBjb21wYXRpYmxlIHB5Y3MuCi0gICAgICAgICAgICAgKi8KLSAgICAgICAgICAgIGlmIChuZXdjb25zdCAhPSBOVUxMICYmCi0gICAgICAgICAgICAgICAgUHlVbmljb2RlX0NoZWNrKHYpICYmIFB5VW5pY29kZV9DaGVjayhuZXdjb25zdCkpIHsKLSAgICAgICAgICAgICAgICBQeV9VTklDT0RFIGNoID0gUHlVbmljb2RlX0FTX1VOSUNPREUobmV3Y29uc3QpWzBdOwotI2lmZGVmIFB5X1VOSUNPREVfV0lERQotICAgICAgICAgICAgICAgIGlmIChjaCA+IDB4RkZGRikgewotI2Vsc2UKLSAgICAgICAgICAgICAgICBpZiAoY2ggPj0gMHhEODAwICYmIGNoIDw9IDB4REZGRikgewotI2VuZGlmCi0gICAgICAgICAgICAgICAgICAgIFB5X0RFQ1JFRihuZXdjb25zdCk7Ci0gICAgICAgICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIH0KICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIEJJTkFSWV9MU0hJRlQ6CiAgICAgICAgICAgICBuZXdjb25zdCA9IFB5TnVtYmVyX0xzaGlmdCh2LCB3KTsKQEAgLTE5OCwxNiArMjMwLDE1IEBACiAgICAgUHlfREVDUkVGKG5ld2NvbnN0KTsKIAogICAgIC8qIFdyaXRlIE5PUCBOT1AgTk9QIE5PUCBMT0FEX0NPTlNUIG5ld2NvbnN0ICovCi0gICAgbWVtc2V0KGNvZGVzdHIsIE5PUCwgNCk7Ci0gICAgY29kZXN0cls0XSA9IExPQURfQ09OU1Q7Ci0gICAgU0VUQVJHKGNvZGVzdHIsIDQsIGxlbl9jb25zdHMpOworICAgIGNvZGVzdHJbLTJdID0gTE9BRF9DT05TVDsKKyAgICBTRVRBUkcoY29kZXN0ciwgLTIsIGxlbl9jb25zdHMpOwogICAgIHJldHVybiAxOwogfQogCiBzdGF0aWMgaW50Ci1mb2xkX3VuYXJ5b3BzX29uX2NvbnN0YW50cyh1bnNpZ25lZCBjaGFyICpjb2Rlc3RyLCBQeU9iamVjdCAqY29uc3RzKQorZm9sZF91bmFyeW9wc19vbl9jb25zdGFudHModW5zaWduZWQgY2hhciAqY29kZXN0ciwgUHlPYmplY3QgKmNvbnN0cywgUHlPYmplY3QgKnYpCiB7Ci0gICAgUHlPYmplY3QgKm5ld2NvbnN0PU5VTEwsICp2OworICAgIFB5T2JqZWN0ICpuZXdjb25zdDsKICAgICBQeV9zc2l6ZV90IGxlbl9jb25zdHM7CiAgICAgaW50IG9wY29kZTsKIApAQCAtMjE2LDEzICsyNDcsMTAgQEAKICAgICBhc3NlcnQoY29kZXN0clswXSA9PSBMT0FEX0NPTlNUKTsKIAogICAgIC8qIENyZWF0ZSBuZXcgY29uc3RhbnQgKi8KLSAgICB2ID0gUHlMaXN0X0dFVF9JVEVNKGNvbnN0cywgR0VUQVJHKGNvZGVzdHIsIDApKTsKICAgICBvcGNvZGUgPSBjb2Rlc3RyWzNdOwogICAgIHN3aXRjaCAob3Bjb2RlKSB7CiAgICAgICAgIGNhc2UgVU5BUllfTkVHQVRJVkU6Ci0gICAgICAgICAgICAvKiBQcmVzZXJ2ZSB0aGUgc2lnbiBvZiAtMC4wICovCi0gICAgICAgICAgICBpZiAoUHlPYmplY3RfSXNUcnVlKHYpID09IDEpCi0gICAgICAgICAgICAgICAgbmV3Y29uc3QgPSBQeU51bWJlcl9OZWdhdGl2ZSh2KTsKKyAgICAgICAgICAgIG5ld2NvbnN0ID0gUHlOdW1iZXJfTmVnYXRpdmUodik7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBVTkFSWV9JTlZFUlQ6CiAgICAgICAgICAgICBuZXdjb25zdCA9IFB5TnVtYmVyX0ludmVydCh2KTsKQEAgLTM1OCw3ICszODYsMTEgQEAKICAgICB1bnNpZ25lZCBjaGFyICpsaW5lbm87CiAgICAgaW50ICphZGRybWFwID0gTlVMTDsKICAgICBpbnQgbmV3X2xpbmUsIGN1bV9vcmlnX2xpbmUsIGxhc3RfbGluZSwgdGFic2l6OwotICAgIGludCBjdW1sYz0wLCBsYXN0bGM9MDsgICAgICAvKiBDb3VudCBydW5zIG9mIGNvbnNlY3V0aXZlIExPQURfQ09OU1RzICovCisgICAgUHlPYmplY3QgKipjb25zdF9zdGFjayA9IE5VTEw7CisgICAgUHlfc3NpemVfdCAqbG9hZF9jb25zdF9zdGFjayA9IE5VTEw7CisgICAgUHlfc3NpemVfdCBjb25zdF9zdGFja190b3AgPSAtMTsKKyAgICBQeV9zc2l6ZV90IGNvbnN0X3N0YWNrX3NpemUgPSAwOworICAgIGludCBpbl9jb25zdHMgPSAwOyAgLyogd2hldGhlciB3ZSBhcmUgaW4gYSBMT0FEX0NPTlNUIHNlcXVlbmNlICovCiAgICAgdW5zaWduZWQgaW50ICpibG9ja3MgPSBOVUxMOwogICAgIGNoYXIgKm5hbWU7CiAKQEAgLTQwNCwxMiArNDM2LDE2IEBACiAgICAgICAgIGdvdG8gZXhpdEVycm9yOwogICAgIGFzc2VydChQeUxpc3RfQ2hlY2soY29uc3RzKSk7CiAKKyAgICBDT05TVF9TVEFDS19DUkVBVEUoKTsKKwogICAgIGZvciAoaT0wIDsgaTxjb2RlbGVuIDsgaSArPSBDT0RFU0laRShjb2Rlc3RyW2ldKSkgewogICAgICAgcmVvcHRpbWl6ZV9jdXJyZW50OgogICAgICAgICBvcGNvZGUgPSBjb2Rlc3RyW2ldOwogCi0gICAgICAgIGxhc3RsYyA9IGN1bWxjOwotICAgICAgICBjdW1sYyA9IDA7CisgICAgICAgIGlmICghaW5fY29uc3RzKSB7CisgICAgICAgICAgICBDT05TVF9TVEFDS19SRVNFVCgpOworICAgICAgICB9CisgICAgICAgIGluX2NvbnN0cyA9IDA7CiAKICAgICAgICAgc3dpdGNoIChvcGNvZGUpIHsKICAgICAgICAgICAgIC8qIFJlcGxhY2UgVU5BUllfTk9UIFBPUF9KVU1QX0lGX0ZBTFNFCkBAIC00NTAsMjEgKzQ4NiwyMSBAQAogICAgICAgICAgICAgICAgICAgICBnb3RvIGV4aXRFcnJvcjsKICAgICAgICAgICAgICAgICBlbHNlIGlmIChoID09IDApCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgICAgICAgIGN1bWxjID0gbGFzdGxjICsgMTsKKyAgICAgICAgICAgICAgICBDT05TVF9TVEFDS19QVVNIX09QKGkpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgICAgICAgICAgLyogU2tpcCBvdmVyIExPQURfQ09OU1QgdHJ1ZWNvbnN0CiAgICAgICAgICAgICAgICAgICAgUE9QX0pVTVBfSUZfRkFMU0UgeHguIFRoaXMgaW1wcm92ZXMKICAgICAgICAgICAgICAgICAgICAid2hpbGUgMSIgcGVyZm9ybWFuY2UuICovCiAgICAgICAgICAgICBjYXNlIExPQURfQ09OU1Q6Ci0gICAgICAgICAgICAgICAgY3VtbGMgPSBsYXN0bGMgKyAxOworICAgICAgICAgICAgICAgIENPTlNUX1NUQUNLX1BVU0hfT1AoaSk7CiAgICAgICAgICAgICAgICAgaiA9IEdFVEFSRyhjb2Rlc3RyLCBpKTsKICAgICAgICAgICAgICAgICBpZiAoY29kZXN0cltpKzNdICE9IFBPUF9KVU1QX0lGX0ZBTFNFICB8fAogICAgICAgICAgICAgICAgICAgICAhSVNCQVNJQ0JMT0NLKGJsb2NrcyxpLDYpICB8fAogICAgICAgICAgICAgICAgICAgICAhUHlPYmplY3RfSXNUcnVlKFB5TGlzdF9HRVRfSVRFTShjb25zdHMsIGopKSkKICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgbWVtc2V0KGNvZGVzdHIraSwgTk9QLCA2KTsKLSAgICAgICAgICAgICAgICBjdW1sYyA9IDA7CisgICAgICAgICAgICAgICAgQ09OU1RfU1RBQ0tfUkVTRVQoKTsKICAgICAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAgICAgICAgIC8qIFRyeSB0byBmb2xkIHR1cGxlcyBvZiBjb25zdGFudHMgKGluY2x1ZGVzIGEgY2FzZSBmb3IgbGlzdHMgYW5kIHNldHMKQEAgLTQ3NiwxOSArNTEyLDIzIEBACiAgICAgICAgICAgICBjYXNlIEJVSUxEX0xJU1Q6CiAgICAgICAgICAgICBjYXNlIEJVSUxEX1NFVDoKICAgICAgICAgICAgICAgICBqID0gR0VUQVJHKGNvZGVzdHIsIGkpOwotICAgICAgICAgICAgICAgIGggPSBpIC0gMyAqIGo7Ci0gICAgICAgICAgICAgICAgaWYgKGggPj0gMCAgJiYKLSAgICAgICAgICAgICAgICAgICAgaiA8PSBsYXN0bGMgICAgICAgICAgICAgICAgICAmJgorICAgICAgICAgICAgICAgIGlmIChqID09IDApCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGggPSBDT05TVF9TVEFDS19PUF9MQVNUTihqKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKGggPj0gMCB8fCBDT05TVF9TVEFDS19MRU4oKSA8IGopKTsKKyAgICAgICAgICAgICAgICBpZiAoaCA+PSAwICYmIGogPiAwICYmIGogPD0gQ09OU1RfU1RBQ0tfTEVOKCkgJiYKICAgICAgICAgICAgICAgICAgICAgKChvcGNvZGUgPT0gQlVJTERfVFVQTEUgJiYKLSAgICAgICAgICAgICAgICAgICAgICBJU0JBU0lDQkxPQ0soYmxvY2tzLCBoLCAzKihqKzEpKSkgfHwKKyAgICAgICAgICAgICAgICAgICAgICBJU0JBU0lDQkxPQ0soYmxvY2tzLCBoLCBpLWgrMykpIHx8CiAgICAgICAgICAgICAgICAgICAgICAoKG9wY29kZSA9PSBCVUlMRF9MSVNUIHx8IG9wY29kZSA9PSBCVUlMRF9TRVQpICYmCiAgICAgICAgICAgICAgICAgICAgICAgY29kZXN0cltpKzNdPT1DT01QQVJFX09QICYmCi0gICAgICAgICAgICAgICAgICAgICAgSVNCQVNJQ0JMT0NLKGJsb2NrcywgaCwgMyooaisyKSkgJiYKKyAgICAgICAgICAgICAgICAgICAgICBJU0JBU0lDQkxPQ0soYmxvY2tzLCBoLCBpLWgrNikgJiYKICAgICAgICAgICAgICAgICAgICAgICAoR0VUQVJHKGNvZGVzdHIsaSszKT09NiB8fAogICAgICAgICAgICAgICAgICAgICAgICBHRVRBUkcoY29kZXN0cixpKzMpPT03KSkpICYmCi0gICAgICAgICAgICAgICAgICAgIHR1cGxlX29mX2NvbnN0YW50cygmY29kZXN0cltoXSwgaiwgY29uc3RzKSkgeworICAgICAgICAgICAgICAgICAgICB0dXBsZV9vZl9jb25zdGFudHMoJmNvZGVzdHJbaV0sIGosIGNvbnN0cywgQ09OU1RfU1RBQ0tfTEFTVE4oaikpKSB7CiAgICAgICAgICAgICAgICAgICAgIGFzc2VydChjb2Rlc3RyW2ldID09IExPQURfQ09OU1QpOwotICAgICAgICAgICAgICAgICAgICBjdW1sYyA9IDE7CisgICAgICAgICAgICAgICAgICAgIG1lbXNldCgmY29kZXN0cltoXSwgTk9QLCBpIC0gaCk7CisgICAgICAgICAgICAgICAgICAgIENPTlNUX1NUQUNLX1BPUChqKTsKKyAgICAgICAgICAgICAgICAgICAgQ09OU1RfU1RBQ0tfUFVTSF9PUChpKTsKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGlmIChjb2Rlc3RyW2krM10gIT0gVU5QQUNLX1NFUVVFTkNFICB8fApAQCAtNTAxLDEwICs1NDEsMTIgQEAKICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGogPT0gMikgewogICAgICAgICAgICAgICAgICAgICBjb2Rlc3RyW2ldID0gUk9UX1RXTzsKICAgICAgICAgICAgICAgICAgICAgbWVtc2V0KGNvZGVzdHIraSsxLCBOT1AsIDUpOworICAgICAgICAgICAgICAgICAgICBDT05TVF9TVEFDS19SRVNFVCgpOwogICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaiA9PSAzKSB7CiAgICAgICAgICAgICAgICAgICAgIGNvZGVzdHJbaV0gPSBST1RfVEhSRUU7CiAgICAgICAgICAgICAgICAgICAgIGNvZGVzdHJbaSsxXSA9IFJPVF9UV087CiAgICAgICAgICAgICAgICAgICAgIG1lbXNldChjb2Rlc3RyK2krMiwgTk9QLCA0KTsKKyAgICAgICAgICAgICAgICAgICAgQ09OU1RfU1RBQ0tfUkVTRVQoKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKQEAgLTUyMywxMiArNTY1LDE4IEBACiAgICAgICAgICAgICBjYXNlIEJJTkFSWV9BTkQ6CiAgICAgICAgICAgICBjYXNlIEJJTkFSWV9YT1I6CiAgICAgICAgICAgICBjYXNlIEJJTkFSWV9PUjoKLSAgICAgICAgICAgICAgICBpZiAobGFzdGxjID49IDIgICAgICAgICAgICAgICAgICAmJgotICAgICAgICAgICAgICAgICAgICBJU0JBU0lDQkxPQ0soYmxvY2tzLCBpLTYsIDcpICAmJgotICAgICAgICAgICAgICAgICAgICBmb2xkX2Jpbm9wc19vbl9jb25zdGFudHMoJmNvZGVzdHJbaS02XSwgY29uc3RzKSkgeworICAgICAgICAgICAgICAgIC8qIE5PVEU6IExPQURfQ09OU1QgaXMgc2F2ZWQgYXQgYGktMmAgc2luY2UgaXQgaGFzIGFuIGFyZworICAgICAgICAgICAgICAgICAgIHdoaWxlIEJJTk9QIGhhc24ndCAqLworICAgICAgICAgICAgICAgIGggPSBDT05TVF9TVEFDS19PUF9MQVNUTigyKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKGggPj0gMCB8fCBDT05TVF9TVEFDS19MRU4oKSA8IDIpKTsKKyAgICAgICAgICAgICAgICBpZiAoaCA+PSAwICYmCisgICAgICAgICAgICAgICAgICAgIElTQkFTSUNCTE9DSyhibG9ja3MsIGgsIGktaCsxKSAgJiYKKyAgICAgICAgICAgICAgICAgICAgZm9sZF9iaW5vcHNfb25fY29uc3RhbnRzKCZjb2Rlc3RyW2ldLCBjb25zdHMsIENPTlNUX1NUQUNLX0xBU1ROKDIpKSkgewogICAgICAgICAgICAgICAgICAgICBpIC09IDI7CisgICAgICAgICAgICAgICAgICAgIG1lbXNldCgmY29kZXN0cltoXSwgTk9QLCBpIC0gaCk7CiAgICAgICAgICAgICAgICAgICAgIGFzc2VydChjb2Rlc3RyW2ldID09IExPQURfQ09OU1QpOwotICAgICAgICAgICAgICAgICAgICBjdW1sYyA9IDE7CisgICAgICAgICAgICAgICAgICAgIENPTlNUX1NUQUNLX1BPUCgyKTsKKyAgICAgICAgICAgICAgICAgICAgQ09OU1RfU1RBQ0tfUFVTSF9PUChpKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAKQEAgLTUzNywxMiArNTg1LDE1IEBACiAgICAgICAgICAgICBjYXNlIFVOQVJZX05FR0FUSVZFOgogICAgICAgICAgICAgY2FzZSBVTkFSWV9JTlZFUlQ6CiAgICAgICAgICAgICBjYXNlIFVOQVJZX1BPU0lUSVZFOgotICAgICAgICAgICAgICAgIGlmIChsYXN0bGMgPj0gMSAgICAgICAgICAgICAgICAgICYmCi0gICAgICAgICAgICAgICAgICAgIElTQkFTSUNCTE9DSyhibG9ja3MsIGktMywgNCkgICYmCi0gICAgICAgICAgICAgICAgICAgIGZvbGRfdW5hcnlvcHNfb25fY29uc3RhbnRzKCZjb2Rlc3RyW2ktM10sIGNvbnN0cykpICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGggPSBDT05TVF9TVEFDS19PUF9MQVNUTigxKTsKKyAgICAgICAgICAgICAgICBhc3NlcnQoKGggPj0gMCB8fCBDT05TVF9TVEFDS19MRU4oKSA8IDEpKTsKKyAgICAgICAgICAgICAgICBpZiAoaCA+PSAwICYmCisgICAgICAgICAgICAgICAgICAgIElTQkFTSUNCTE9DSyhibG9ja3MsIGgsIGktaCsxKSAgJiYKKyAgICAgICAgICAgICAgICAgICAgZm9sZF91bmFyeW9wc19vbl9jb25zdGFudHMoJmNvZGVzdHJbaS0zXSwgY29uc3RzLCBDT05TVF9TVEFDS19UT1AoKSkpIHsKICAgICAgICAgICAgICAgICAgICAgaSAtPSAyOwogICAgICAgICAgICAgICAgICAgICBhc3NlcnQoY29kZXN0cltpXSA9PSBMT0FEX0NPTlNUKTsKLSAgICAgICAgICAgICAgICAgICAgY3VtbGMgPSAxOworICAgICAgICAgICAgICAgICAgICBDT05TVF9TVEFDS19QT1AoMSk7CisgICAgICAgICAgICAgICAgICAgIENPTlNUX1NUQUNLX1BVU0hfT1AoaSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIGJyZWFrOwogCkBAIC02OTksNiArNzUwLDcgQEAKICAgICBhc3NlcnQoaCArIG5vcHMgPT0gY29kZWxlbik7CiAKICAgICBjb2RlID0gUHlCeXRlc19Gcm9tU3RyaW5nQW5kU2l6ZSgoY2hhciAqKWNvZGVzdHIsIGgpOworICAgIENPTlNUX1NUQUNLX0RFTEVURSgpOwogICAgIFB5TWVtX0ZyZWUoYWRkcm1hcCk7CiAgICAgUHlNZW1fRnJlZShjb2Rlc3RyKTsKICAgICBQeU1lbV9GcmVlKGJsb2Nrcyk7CkBAIC03MDgsNiArNzYwLDcgQEAKICAgICBjb2RlID0gTlVMTDsKIAogIGV4aXRVbmNoYW5nZWQ6CisgICAgQ09OU1RfU1RBQ0tfREVMRVRFKCk7CiAgICAgaWYgKGJsb2NrcyAhPSBOVUxMKQogICAgICAgICBQeU1lbV9GcmVlKGJsb2Nrcyk7CiAgICAgaWYgKGFkZHJtYXAgIT0gTlVMTCkKZGlmZiAtLWdpdCBhL1B5dGhvbi9weXN0cnRvZC5jIGIvUHl0aG9uL3B5c3RydG9kLmMKaW5kZXggNzVlMzAzMi4uN2JmMjFjMCAxMDA2NDQKLS0tIGEvUHl0aG9uL3B5c3RydG9kLmMKKysrIGIvUHl0aG9uL3B5c3RydG9kLmMKQEAgLTk1NCw3ICs5NTQsNyBAQAogICAgICAgICAgICAgLyogc2hvdWxkbid0IGdldCBoZXJlOiBHYXkncyBjb2RlIHNob3VsZCBhbHdheXMgcmV0dXJuCiAgICAgICAgICAgICAgICBzb21ldGhpbmcgc3RhcnRpbmcgd2l0aCBhIGRpZ2l0LCBhbiAnSScsICBvciAnTicgKi8KICAgICAgICAgICAgIHN0cm5jcHkocCwgIkVSUiIsIDMpOwotICAgICAgICAgICAgcCArPSAzOworICAgICAgICAgICAgLyogcCArPSAzOyAqLwogICAgICAgICAgICAgYXNzZXJ0KDApOwogICAgICAgICB9CiAgICAgICAgIGdvdG8gZXhpdDsKZGlmZiAtLWdpdCBhL1B5dGhvbi9weXRob25ydW4uYyBiL1B5dGhvbi9weXRob25ydW4uYwppbmRleCBlYzY5YmNiLi40NGI4MTdmIDEwMDY0NAotLS0gYS9QeXRob24vcHl0aG9ucnVuLmMKKysrIGIvUHl0aG9uL3B5dGhvbnJ1bi5jCkBAIC02MiwxNCArNjIsMTcgQEAKIHN0YXRpYyBQeU9iamVjdCAqcnVuX3B5Y19maWxlKEZJTEUgKiwgY29uc3QgY2hhciAqLCBQeU9iamVjdCAqLCBQeU9iamVjdCAqLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHlDb21waWxlckZsYWdzICopOwogc3RhdGljIHZvaWQgZXJyX2lucHV0KHBlcnJkZXRhaWwgKik7CitzdGF0aWMgdm9pZCBlcnJfZnJlZShwZXJyZGV0YWlsICopOwogc3RhdGljIHZvaWQgaW5pdHNpZ3Modm9pZCk7CiBzdGF0aWMgdm9pZCBjYWxsX3B5X2V4aXRmdW5jcyh2b2lkKTsKIHN0YXRpYyB2b2lkIHdhaXRfZm9yX3RocmVhZF9zaHV0ZG93bih2b2lkKTsKIHN0YXRpYyB2b2lkIGNhbGxfbGxfZXhpdGZ1bmNzKHZvaWQpOwotZXh0ZXJuIHZvaWQgX1B5VW5pY29kZV9Jbml0KHZvaWQpOworZXh0ZXJuIGludCBfUHlVbmljb2RlX0luaXQodm9pZCk7CiBleHRlcm4gdm9pZCBfUHlVbmljb2RlX0Zpbmkodm9pZCk7CiBleHRlcm4gaW50IF9QeUxvbmdfSW5pdCh2b2lkKTsKIGV4dGVybiB2b2lkIFB5TG9uZ19GaW5pKHZvaWQpOworZXh0ZXJuIGludCBfUHlGYXVsdGhhbmRsZXJfSW5pdCh2b2lkKTsKK2V4dGVybiB2b2lkIF9QeUZhdWx0aGFuZGxlcl9GaW5pKHZvaWQpOwogCiAjaWZkZWYgV0lUSF9USFJFQUQKIGV4dGVybiB2b2lkIF9QeUdJTFN0YXRlX0luaXQoUHlJbnRlcnByZXRlclN0YXRlICosIFB5VGhyZWFkU3RhdGUgKik7CkBAIC0xMzgsMTIgKzE0MSwxMyBAQAogewogICAgIGNoYXIgKm5hbWVfdXRmOCwgKm5hbWVfc3RyOwogICAgIFB5T2JqZWN0ICpjb2RlYywgKm5hbWUgPSBOVUxMOworICAgIF9QeV9JREVOVElGSUVSKG5hbWUpOwogCiAgICAgY29kZWMgPSBfUHlDb2RlY19Mb29rdXAoZW5jb2RpbmcpOwogICAgIGlmICghY29kZWMpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAKLSAgICBuYW1lID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhjb2RlYywgIm5hbWUiKTsKKyAgICBuYW1lID0gX1B5T2JqZWN0X0dldEF0dHJJZChjb2RlYywgJlB5SWRfbmFtZSk7CiAgICAgUHlfQ0xFQVIoY29kZWMpOwogICAgIGlmICghbmFtZSkKICAgICAgICAgZ290byBlcnJvcjsKQEAgLTE2NSwxOCArMTY5LDI1IEBACiAgICAgcmV0dXJuIE5VTEw7CiB9CiAKLSNpZiBkZWZpbmVkKEhBVkVfTEFOR0lORk9fSCkgJiYgZGVmaW5lZChDT0RFU0VUKQogc3RhdGljIGNoYXIqCi1nZXRfY29kZXNldCh2b2lkKQorZ2V0X2xvY2FsZV9lbmNvZGluZyh2b2lkKQogeworI2lmZGVmIE1TX1dJTkRPV1MKKyAgICBjaGFyIGNvZGVwYWdlWzEwMF07CisgICAgUHlPU19zbnByaW50Zihjb2RlcGFnZSwgc2l6ZW9mKGNvZGVwYWdlKSwgImNwJWQiLCBHZXRBQ1AoKSk7CisgICAgcmV0dXJuIGdldF9jb2RlY19uYW1lKGNvZGVwYWdlKTsKKyNlbGlmIGRlZmluZWQoSEFWRV9MQU5HSU5GT19IKSAmJiBkZWZpbmVkKENPREVTRVQpCiAgICAgY2hhciogY29kZXNldCA9IG5sX2xhbmdpbmZvKENPREVTRVQpOwogICAgIGlmICghY29kZXNldCB8fCBjb2Rlc2V0WzBdID09ICdcMCcpIHsKICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1ZhbHVlRXJyb3IsICJDT0RFU0VUIGlzIG5vdCBzZXQgb3IgZW1wdHkiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogICAgIHJldHVybiBnZXRfY29kZWNfbmFtZShjb2Rlc2V0KTsKLX0KKyNlbHNlCisgICAgUHlFcnJfU2V0Tm9uZShQeUV4Y19Ob3RJbXBsZW1lbnRlZEVycm9yKTsKKyAgICByZXR1cm4gTlVMTDsKICNlbmRpZgorfQogCiB2b2lkCiBQeV9Jbml0aWFsaXplRXgoaW50IGluc3RhbGxfc2lncykKQEAgLTI1MCw3ICsyNjEsOCBAQAogICAgICAgICBQeV9GYXRhbEVycm9yKCJQeV9Jbml0aWFsaXplOiBjYW4ndCBtYWtlIG1vZHVsZXNfcmVsb2FkaW5nIGRpY3Rpb25hcnkiKTsKIAogICAgIC8qIEluaXQgVW5pY29kZSBpbXBsZW1lbnRhdGlvbjsgcmVsaWVzIG9uIHRoZSBjb2RlYyByZWdpc3RyeSAqLwotICAgIF9QeVVuaWNvZGVfSW5pdCgpOworICAgIGlmIChfUHlVbmljb2RlX0luaXQoKSA8IDApCisgICAgICAgIFB5X0ZhdGFsRXJyb3IoIlB5X0luaXRpYWxpemU6IGNhbid0IGluaXRpYWxpemUgdW5pY29kZSIpOwogCiAgICAgYmltb2QgPSBfUHlCdWlsdGluX0luaXQoKTsKICAgICBpZiAoYmltb2QgPT0gTlVMTCkKQEAgLTI4OSw2ICszMDEsMTAgQEAKIAogICAgIF9QeUltcG9ydEhvb2tzX0luaXQoKTsKIAorICAgIC8qIGluaXRpYWxpemUgdGhlIGZhdWx0aGFuZGxlciBtb2R1bGUgKi8KKyAgICBpZiAoX1B5RmF1bHRoYW5kbGVyX0luaXQoKSkKKyAgICAgICAgUHlfRmF0YWxFcnJvcigiUHlfSW5pdGlhbGl6ZTogY2FuJ3QgaW5pdGlhbGl6ZSBmYXVsdGhhbmRsZXIiKTsKKwogICAgIC8qIEluaXRpYWxpemUgX3dhcm5pbmdzLiAqLwogICAgIF9QeVdhcm5pbmdzX0luaXQoKTsKIApAQCAtMzU0LDkgKzM3MCwxMCBAQAogICAgIFB5T2JqZWN0ICpmb3V0ID0gUHlTeXNfR2V0T2JqZWN0KCJzdGRvdXQiKTsKICAgICBQeU9iamVjdCAqZmVyciA9IFB5U3lzX0dldE9iamVjdCgic3RkZXJyIik7CiAgICAgUHlPYmplY3QgKnRtcDsKKyAgICBfUHlfSURFTlRJRklFUihmbHVzaCk7CiAKICAgICBpZiAoZm91dCAhPSBOVUxMICYmIGZvdXQgIT0gUHlfTm9uZSAmJiAhZmlsZV9pc19jbG9zZWQoZm91dCkpIHsKLSAgICAgICAgdG1wID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmb3V0LCAiZmx1c2giLCAiIik7CisgICAgICAgIHRtcCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZm91dCwgJlB5SWRfZmx1c2gsICIiKTsKICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKQogICAgICAgICAgICAgUHlFcnJfV3JpdGVVbnJhaXNhYmxlKGZvdXQpOwogICAgICAgICBlbHNlCkBAIC0zNjQsNyArMzgxLDcgQEAKICAgICB9CiAKICAgICBpZiAoZmVyciAhPSBOVUxMICYmIGZlcnIgIT0gUHlfTm9uZSAmJiAhZmlsZV9pc19jbG9zZWQoZmVycikpIHsKLSAgICAgICAgdG1wID0gUHlPYmplY3RfQ2FsbE1ldGhvZChmZXJyLCAiZmx1c2giLCAiIik7CisgICAgICAgIHRtcCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZmVyciwgJlB5SWRfZmx1c2gsICIiKTsKICAgICAgICAgaWYgKHRtcCA9PSBOVUxMKQogICAgICAgICAgICAgUHlFcnJfQ2xlYXIoKTsKICAgICAgICAgZWxzZQpAQCAtNDU3LDcgKzQ3NCw3IEBACiAgICAgZmx1c2hfc3RkX2ZpbGVzKCk7CiAKICAgICAvKiBDb2xsZWN0IGZpbmFsIGdhcmJhZ2UuICBUaGlzIGRpc3Bvc2VzIG9mIGN5Y2xlcyBjcmVhdGVkIGJ5Ci0gICAgICogbmV3LXN0eWxlIGNsYXNzIGRlZmluaXRpb25zLCBmb3IgZXhhbXBsZS4KKyAgICAgKiBjbGFzcyBkZWZpbml0aW9ucywgZm9yIGV4YW1wbGUuCiAgICAgICogWFhYIFRoaXMgaXMgZGlzYWJsZWQgYmVjYXVzZSBpdCBjYXVzZWQgdG9vIG1hbnkgcHJvYmxlbXMuICBJZgogICAgICAqIFhYWCBhIF9fZGVsX18gb3Igd2Vha3JlZiBjYWxsYmFjayB0cmlnZ2VycyBoZXJlLCBQeXRob24gY29kZSBoYXMKICAgICAgKiBYWFggYSBoYXJkIHRpbWUgcnVubmluZywgYmVjYXVzZSBldmVuIHRoZSBzeXMgbW9kdWxlIGhhcyBiZWVuCkBAIC00NzgsNiArNDk1LDkgQEAKICAgICAvKiBEZXN0cm95IHRoZSBkYXRhYmFzZSB1c2VkIGJ5IF9QeUltcG9ydF97Rml4dXAsRmluZH1FeHRlbnNpb24gKi8KICAgICBfUHlJbXBvcnRfRmluaSgpOwogCisgICAgLyogdW5sb2FkIGZhdWx0aGFuZGxlciBtb2R1bGUgKi8KKyAgICBfUHlGYXVsdGhhbmRsZXJfRmluaSgpOworCiAgICAgLyogRGVidWdnaW5nIHN0dWZmICovCiAjaWZkZWYgQ09VTlRfQUxMT0NTCiAgICAgZHVtcF9jb3VudHMoc3Rkb3V0KTsKQEAgLTUyNyw2ICs1NDcsNyBAQAogICAgIFB5TG9uZ19GaW5pKCk7CiAgICAgUHlGbG9hdF9GaW5pKCk7CiAgICAgUHlEaWN0X0ZpbmkoKTsKKyAgICBQeVNsaWNlX0ZpbmkoKTsKIAogICAgIC8qIENsZWFudXAgVW5pY29kZSBpbXBsZW1lbnRhdGlvbiAqLwogICAgIF9QeVVuaWNvZGVfRmluaSgpOwpAQCAtNzUyLDI0ICs3NzMsMTcgQEAKIGluaXRmc2VuY29kaW5nKFB5SW50ZXJwcmV0ZXJTdGF0ZSAqaW50ZXJwKQogewogICAgIFB5T2JqZWN0ICpjb2RlYzsKLSNpZiBkZWZpbmVkKEhBVkVfTEFOR0lORk9fSCkgJiYgZGVmaW5lZChDT0RFU0VUKQotICAgIGNoYXIgKmNvZGVzZXQgPSBOVUxMOwogCi0gICAgaWYgKFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPT0gTlVMTCkgewotICAgICAgICAvKiBPbiBVbml4LCBzZXQgdGhlIGZpbGUgc3lzdGVtIGVuY29kaW5nIGFjY29yZGluZyB0byB0aGUKLSAgICAgICAgICAgdXNlcidzIHByZWZlcmVuY2UsIGlmIHRoZSBDT0RFU0VUIG5hbWVzIGEgd2VsbC1rbm93bgotICAgICAgICAgICBQeXRob24gY29kZWMsIGFuZCBQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nIGlzbid0Ci0gICAgICAgICAgIGluaXRpYWxpemVkIGJ5IG90aGVyIG1lYW5zLiAqLwotICAgICAgICBjb2Rlc2V0ID0gZ2V0X2NvZGVzZXQoKTsKLSAgICAgICAgaWYgKGNvZGVzZXQgPT0gTlVMTCkKKyAgICBpZiAoUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyA9PSBOVUxMKQorICAgIHsKKyAgICAgICAgUHlfRmlsZVN5c3RlbURlZmF1bHRFbmNvZGluZyA9IGdldF9sb2NhbGVfZW5jb2RpbmcoKTsKKyAgICAgICAgaWYgKFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPT0gTlVMTCkKICAgICAgICAgICAgIFB5X0ZhdGFsRXJyb3IoIlB5X0luaXRpYWxpemU6IFVuYWJsZSB0byBnZXQgdGhlIGxvY2FsZSBlbmNvZGluZyIpOwogCi0gICAgICAgIFB5X0ZpbGVTeXN0ZW1EZWZhdWx0RW5jb2RpbmcgPSBjb2Rlc2V0OwogICAgICAgICBQeV9IYXNGaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nID0gMDsKICAgICAgICAgaW50ZXJwLT5mc2NvZGVjX2luaXRpYWxpemVkID0gMTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotI2VuZGlmCiAKICAgICAvKiB0aGUgZW5jb2RpbmcgaXMgbWJjcywgdXRmLTggb3IgYXNjaWkgKi8KICAgICBjb2RlYyA9IF9QeUNvZGVjX0xvb2t1cChQeV9GaWxlU3lzdGVtRGVmYXVsdEVuY29kaW5nKTsKQEAgLTgxMSw2ICs4MjUsMTEgQEAKICAgICBjb25zdCBjaGFyKiBuZXdsaW5lOwogICAgIFB5T2JqZWN0ICpsaW5lX2J1ZmZlcmluZzsKICAgICBpbnQgYnVmZmVyaW5nLCBpc2F0dHk7CisgICAgX1B5X0lERU5USUZJRVIob3Blbik7CisgICAgX1B5X0lERU5USUZJRVIoaXNhdHR5KTsKKyAgICBfUHlfSURFTlRJRklFUihUZXh0SU9XcmFwcGVyKTsKKyAgICBfUHlfSURFTlRJRklFUihuYW1lKTsKKyAgICBfUHlfSURFTlRJRklFUihtb2RlKTsKIAogICAgIC8qIHN0ZGluIGlzIGFsd2F5cyBvcGVuZWQgaW4gYnVmZmVyZWQgbW9kZSwgZmlyc3QgYmVjYXVzZSBpdCBzaG91bGRuJ3QKICAgICAgICBtYWtlIGEgZGlmZmVyZW5jZSBpbiBjb21tb24gdXNlIGNhc2VzLCBzZWNvbmQgYmVjYXVzZSBUZXh0SU9XcmFwcGVyCkBAIC04MjUsMTQgKzg0NCwxNSBAQAogICAgICAgICBtb2RlID0gIndiIjsKICAgICBlbHNlCiAgICAgICAgIG1vZGUgPSAicmIiOwotICAgIGJ1ZiA9IFB5T2JqZWN0X0NhbGxNZXRob2QoaW8sICJvcGVuIiwgImlzaU9PT2kiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQsIG1vZGUsIGJ1ZmZlcmluZywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X05vbmUsIFB5X05vbmUsIFB5X05vbmUsIDApOworICAgIGJ1ZiA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoaW8sICZQeUlkX29wZW4sICJpc2lPT09pIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLCBtb2RlLCBidWZmZXJpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQeV9Ob25lLCBQeV9Ob25lLCBQeV9Ob25lLCAwKTsKICAgICBpZiAoYnVmID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CiAKICAgICBpZiAoYnVmZmVyaW5nKSB7Ci0gICAgICAgIHJhdyA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoYnVmLCAicmF3Iik7CisgICAgICAgIF9QeV9JREVOVElGSUVSKHJhdyk7CisgICAgICAgIHJhdyA9IF9QeU9iamVjdF9HZXRBdHRySWQoYnVmLCAmUHlJZF9yYXcpOwogICAgICAgICBpZiAocmF3ID09IE5VTEwpCiAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KQEAgLTg0Miw5ICs4NjIsOSBAQAogICAgIH0KIAogICAgIHRleHQgPSBQeVVuaWNvZGVfRnJvbVN0cmluZyhuYW1lKTsKLSAgICBpZiAodGV4dCA9PSBOVUxMIHx8IFB5T2JqZWN0X1NldEF0dHJTdHJpbmcocmF3LCAibmFtZSIsIHRleHQpIDwgMCkKKyAgICBpZiAodGV4dCA9PSBOVUxMIHx8IF9QeU9iamVjdF9TZXRBdHRySWQocmF3LCAmUHlJZF9uYW1lLCB0ZXh0KSA8IDApCiAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgcmVzID0gUHlPYmplY3RfQ2FsbE1ldGhvZChyYXcsICJpc2F0dHkiLCAiIik7CisgICAgcmVzID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChyYXcsICZQeUlkX2lzYXR0eSwgIiIpOwogICAgIGlmIChyZXMgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKICAgICBpc2F0dHkgPSBQeU9iamVjdF9Jc1RydWUocmVzKTsKQEAgLTg2Nyw5ICs4ODcsOSBAQAogICAgIH0KICNlbmRpZgogCi0gICAgc3RyZWFtID0gUHlPYmplY3RfQ2FsbE1ldGhvZChpbywgIlRleHRJT1dyYXBwZXIiLCAiT3Nzc08iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmLCBlbmNvZGluZywgZXJyb3JzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3bGluZSwgbGluZV9idWZmZXJpbmcpOworICAgIHN0cmVhbSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoaW8sICZQeUlkX1RleHRJT1dyYXBwZXIsICJPc3NzTyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWYsIGVuY29kaW5nLCBlcnJvcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdsaW5lLCBsaW5lX2J1ZmZlcmluZyk7CiAgICAgUHlfQ0xFQVIoYnVmKTsKICAgICBpZiAoc3RyZWFtID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7CkBAIC04NzksNyArODk5LDcgQEAKICAgICBlbHNlCiAgICAgICAgIG1vZGUgPSAiciI7CiAgICAgdGV4dCA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKG1vZGUpOwotICAgIGlmICghdGV4dCB8fCBQeU9iamVjdF9TZXRBdHRyU3RyaW5nKHN0cmVhbSwgIm1vZGUiLCB0ZXh0KSA8IDApCisgICAgaWYgKCF0ZXh0IHx8IF9QeU9iamVjdF9TZXRBdHRySWQoc3RyZWFtLCAmUHlJZF9tb2RlLCB0ZXh0KSA8IDApCiAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgUHlfQ0xFQVIodGV4dCk7CiAgICAgcmV0dXJuIHN0cmVhbTsKQEAgLTExMTksMTMgKzExMzksMTQgQEAKICAgICBQeUFyZW5hICphcmVuYTsKICAgICBjaGFyICpwczEgPSAiIiwgKnBzMiA9ICIiLCAqZW5jID0gTlVMTDsKICAgICBpbnQgZXJyY29kZSA9IDA7CisgICAgX1B5X0lERU5USUZJRVIoZW5jb2RpbmcpOwogCiAgICAgaWYgKGZwID09IHN0ZGluKSB7CiAgICAgICAgIC8qIEZldGNoIGVuY29kaW5nIGZyb20gc3lzLnN0ZGluICovCiAgICAgICAgIHYgPSBQeVN5c19HZXRPYmplY3QoInN0ZGluIik7CiAgICAgICAgIGlmICh2ID09IE5VTEwgfHwgdiA9PSBQeV9Ob25lKQogICAgICAgICAgICAgcmV0dXJuIC0xOwotICAgICAgICBvZW5jID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh2LCAiZW5jb2RpbmciKTsKKyAgICAgICAgb2VuYyA9IF9QeU9iamVjdF9HZXRBdHRySWQodiwgJlB5SWRfZW5jb2RpbmcpOwogICAgICAgICBpZiAoIW9lbmMpCiAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgIGVuYyA9IF9QeVVuaWNvZGVfQXNTdHJpbmcob2VuYyk7CkBAIC0xMzIyLDE5ICsxMzQzLDE5IEBACiB7CiAgICAgbG9uZyBob2xkOwogICAgIFB5T2JqZWN0ICp2OwotCi0gICAgLyogb2xkIHN0eWxlIGVycm9ycyAqLwotICAgIGlmIChQeVR1cGxlX0NoZWNrKGVycikpCi0gICAgICAgIHJldHVybiBQeUFyZ19QYXJzZVR1cGxlKGVyciwgIk8oemlpeikiLCBtZXNzYWdlLCBmaWxlbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZW5vLCBvZmZzZXQsIHRleHQpOworICAgIF9QeV9JREVOVElGSUVSKG1zZyk7CisgICAgX1B5X0lERU5USUZJRVIoZmlsZW5hbWUpOworICAgIF9QeV9JREVOVElGSUVSKGxpbmVubyk7CisgICAgX1B5X0lERU5USUZJRVIob2Zmc2V0KTsKKyAgICBfUHlfSURFTlRJRklFUih0ZXh0KTsKIAogICAgIC8qIG5ldyBzdHlsZSBlcnJvcnMuICBgZXJyJyBpcyBhbiBpbnN0YW5jZSAqLwogCi0gICAgaWYgKCEgKHYgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGVyciwgIm1zZyIpKSkKKyAgICBpZiAoISAodiA9IF9QeU9iamVjdF9HZXRBdHRySWQoZXJyLCAmUHlJZF9tc2cpKSkKICAgICAgICAgZ290byBmaW5hbGx5OwogICAgICptZXNzYWdlID0gdjsKIAotICAgIGlmICghKHYgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGVyciwgImZpbGVuYW1lIikpKQorICAgIGlmICghKHYgPSBfUHlPYmplY3RfR2V0QXR0cklkKGVyciwgJlB5SWRfZmlsZW5hbWUpKSkKICAgICAgICAgZ290byBmaW5hbGx5OwogICAgIGlmICh2ID09IFB5X05vbmUpCiAgICAgICAgICpmaWxlbmFtZSA9IE5VTEw7CkBAIC0xMzQyLDcgKzEzNjMsNyBAQAogICAgICAgICBnb3RvIGZpbmFsbHk7CiAKICAgICBQeV9ERUNSRUYodik7Ci0gICAgaWYgKCEodiA9IFB5T2JqZWN0X0dldEF0dHJTdHJpbmcoZXJyLCAibGluZW5vIikpKQorICAgIGlmICghKHYgPSBfUHlPYmplY3RfR2V0QXR0cklkKGVyciwgJlB5SWRfbGluZW5vKSkpCiAgICAgICAgIGdvdG8gZmluYWxseTsKICAgICBob2xkID0gUHlMb25nX0FzTG9uZyh2KTsKICAgICBQeV9ERUNSRUYodik7CkBAIC0xMzUxLDcgKzEzNzIsNyBAQAogICAgICAgICBnb3RvIGZpbmFsbHk7CiAgICAgKmxpbmVubyA9IChpbnQpaG9sZDsKIAotICAgIGlmICghKHYgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGVyciwgIm9mZnNldCIpKSkKKyAgICBpZiAoISh2ID0gX1B5T2JqZWN0X0dldEF0dHJJZChlcnIsICZQeUlkX29mZnNldCkpKQogICAgICAgICBnb3RvIGZpbmFsbHk7CiAgICAgaWYgKHYgPT0gUHlfTm9uZSkgewogICAgICAgICAqb2Zmc2V0ID0gLTE7CkBAIC0xMzY2LDcgKzEzODcsNyBAQAogICAgICAgICAqb2Zmc2V0ID0gKGludClob2xkOwogICAgIH0KIAotICAgIGlmICghKHYgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGVyciwgInRleHQiKSkpCisgICAgaWYgKCEodiA9IF9QeU9iamVjdF9HZXRBdHRySWQoZXJyLCAmUHlJZF90ZXh0KSkpCiAgICAgICAgIGdvdG8gZmluYWxseTsKICAgICBpZiAodiA9PSBQeV9Ob25lKQogICAgICAgICAqdGV4dCA9IE5VTEw7CkBAIC0xNDM1LDcgKzE0NTYsOCBAQAogICAgICAgICBnb3RvIGRvbmU7CiAgICAgaWYgKFB5RXhjZXB0aW9uSW5zdGFuY2VfQ2hlY2sodmFsdWUpKSB7CiAgICAgICAgIC8qIFRoZSBlcnJvciBjb2RlIHNob3VsZCBiZSBpbiB0aGUgYGNvZGUnIGF0dHJpYnV0ZS4gKi8KLSAgICAgICAgUHlPYmplY3QgKmNvZGUgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKHZhbHVlLCAiY29kZSIpOworICAgICAgICBfUHlfSURFTlRJRklFUihjb2RlKTsKKyAgICAgICAgUHlPYmplY3QgKmNvZGUgPSBfUHlPYmplY3RfR2V0QXR0cklkKHZhbHVlLCAmUHlJZF9jb2RlKTsKICAgICAgICAgaWYgKGNvZGUpIHsKICAgICAgICAgICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgICAgICAgICB2YWx1ZSA9IGNvZGU7CkBAIC0xNTQyLDYgKzE1NjQsNyBAQAogewogICAgIGludCBlcnIgPSAwOwogICAgIFB5T2JqZWN0ICp0eXBlLCAqdGI7CisgICAgX1B5X0lERU5USUZJRVIocHJpbnRfZmlsZV9hbmRfbGluZSk7CiAKICAgICBpZiAoIVB5RXhjZXB0aW9uSW5zdGFuY2VfQ2hlY2sodmFsdWUpKSB7CiAgICAgICAgIFB5RmlsZV9Xcml0ZVN0cmluZygiVHlwZUVycm9yOiBwcmludF9leGNlcHRpb24oKTogRXhjZXB0aW9uIGV4cGVjdGVkIGZvciB2YWx1ZSwgIiwgZik7CkBAIC0xNTU3LDcgKzE1ODAsNyBAQAogICAgIGlmICh0YiAmJiB0YiAhPSBQeV9Ob25lKQogICAgICAgICBlcnIgPSBQeVRyYWNlQmFja19QcmludCh0YiwgZik7CiAgICAgaWYgKGVyciA9PSAwICYmCi0gICAgICAgIFB5T2JqZWN0X0hhc0F0dHJTdHJpbmcodmFsdWUsICJwcmludF9maWxlX2FuZF9saW5lIikpCisgICAgICAgIF9QeU9iamVjdF9IYXNBdHRySWQodmFsdWUsICZQeUlkX3ByaW50X2ZpbGVfYW5kX2xpbmUpKQogICAgIHsKICAgICAgICAgUHlPYmplY3QgKm1lc3NhZ2U7CiAgICAgICAgIGNvbnN0IGNoYXIgKmZpbGVuYW1lLCAqdGV4dDsKQEAgLTE1OTIsNiArMTYxNSw3IEBACiAgICAgZWxzZSB7CiAgICAgICAgIFB5T2JqZWN0KiBtb2R1bGVOYW1lOwogICAgICAgICBjaGFyKiBjbGFzc05hbWU7CisgICAgICAgIF9QeV9JREVOVElGSUVSKF9fbW9kdWxlX18pOwogICAgICAgICBhc3NlcnQoUHlFeGNlcHRpb25DbGFzc19DaGVjayh0eXBlKSk7CiAgICAgICAgIGNsYXNzTmFtZSA9IFB5RXhjZXB0aW9uQ2xhc3NfTmFtZSh0eXBlKTsKICAgICAgICAgaWYgKGNsYXNzTmFtZSAhPSBOVUxMKSB7CkBAIC0xNjAwLDEwICsxNjI0LDEwIEBACiAgICAgICAgICAgICAgICAgY2xhc3NOYW1lID0gZG90KzE7CiAgICAgICAgIH0KIAotICAgICAgICBtb2R1bGVOYW1lID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyh0eXBlLCAiX19tb2R1bGVfXyIpOworICAgICAgICBtb2R1bGVOYW1lID0gX1B5T2JqZWN0X0dldEF0dHJJZCh0eXBlLCAmUHlJZF9fX21vZHVsZV9fKTsKICAgICAgICAgaWYgKG1vZHVsZU5hbWUgPT0gTlVMTCB8fCAhUHlVbmljb2RlX0NoZWNrKG1vZHVsZU5hbWUpKQogICAgICAgICB7Ci0gICAgICAgICAgICBQeV9ERUNSRUYobW9kdWxlTmFtZSk7CisgICAgICAgICAgICBQeV9YREVDUkVGKG1vZHVsZU5hbWUpOwogICAgICAgICAgICAgZXJyID0gUHlGaWxlX1dyaXRlU3RyaW5nKCI8dW5rbm93bj4iLCBmKTsKICAgICAgICAgfQogICAgICAgICBlbHNlIHsKQEAgLTE2MzAsNyArMTY1NCw3IEBACiAgICAgICAgIGlmIChzID09IE5VTEwpCiAgICAgICAgICAgICBlcnIgPSAtMTsKICAgICAgICAgZWxzZSBpZiAoIVB5VW5pY29kZV9DaGVjayhzKSB8fAotICAgICAgICAgICAgUHlVbmljb2RlX0dldFNpemUocykgIT0gMCkKKyAgICAgICAgICAgIFB5VW5pY29kZV9HZXRMZW5ndGgocykgIT0gMCkKICAgICAgICAgICAgIGVyciA9IFB5RmlsZV9Xcml0ZVN0cmluZygiOiAiLCBmKTsKICAgICAgICAgaWYgKGVyciA9PSAwKQogICAgICAgICAgIGVyciA9IFB5RmlsZV9Xcml0ZU9iamVjdChzLCBmLCBQeV9QUklOVF9SQVcpOwpAQCAtMTc2NywxMyArMTc5MSwxNCBAQAogewogICAgIFB5T2JqZWN0ICpmLCAqcjsKICAgICBQeU9iamVjdCAqdHlwZSwgKnZhbHVlLCAqdHJhY2ViYWNrOworICAgIF9QeV9JREVOVElGSUVSKGZsdXNoKTsKIAogICAgIC8qIFNhdmUgdGhlIGN1cnJlbnQgZXhjZXB0aW9uICovCiAgICAgUHlFcnJfRmV0Y2goJnR5cGUsICZ2YWx1ZSwgJnRyYWNlYmFjayk7CiAKICAgICBmID0gUHlTeXNfR2V0T2JqZWN0KCJzdGRlcnIiKTsKICAgICBpZiAoZiAhPSBOVUxMKSB7Ci0gICAgICAgIHIgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGYsICJmbHVzaCIsICIiKTsKKyAgICAgICAgciA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZiwgJlB5SWRfZmx1c2gsICIiKTsKICAgICAgICAgaWYgKHIpCiAgICAgICAgICAgICBQeV9ERUNSRUYocik7CiAgICAgICAgIGVsc2UKQEAgLTE3ODEsNyArMTgwNiw3IEBACiAgICAgfQogICAgIGYgPSBQeVN5c19HZXRPYmplY3QoInN0ZG91dCIpOwogICAgIGlmIChmICE9IE5VTEwpIHsKLSAgICAgICAgciA9IFB5T2JqZWN0X0NhbGxNZXRob2QoZiwgImZsdXNoIiwgIiIpOworICAgICAgICByID0gX1B5T2JqZWN0X0NhbGxNZXRob2RJZChmLCAmUHlJZF9mbHVzaCwgIiIpOwogICAgICAgICBpZiAocikKICAgICAgICAgICAgIFB5X0RFQ1JFRihyKTsKICAgICAgICAgZWxzZQpAQCAtMTgyMCw2ICsxODQ1LDggQEAKICAgICAgICAgICAgICAgICAgICAiQmFkIG1hZ2ljIG51bWJlciBpbiAucHljIGZpbGUiKTsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQorICAgIC8qIFNraXAgbXRpbWUgYW5kIHNpemUgKi8KKyAgICAodm9pZCkgUHlNYXJzaGFsX1JlYWRMb25nRnJvbUZpbGUoZnApOwogICAgICh2b2lkKSBQeU1hcnNoYWxfUmVhZExvbmdGcm9tRmlsZShmcCk7CiAgICAgdiA9IFB5TWFyc2hhbF9SZWFkTGFzdE9iamVjdEZyb21GaWxlKGZwKTsKICAgICBmY2xvc2UoZnApOwpAQCAtMTkxMiwxMiArMTkzOSwxMyBAQAogICAgICAgICBmbGFncy0+Y2ZfZmxhZ3MgfD0gaWZsYWdzICYgUHlDRl9NQVNLOwogICAgICAgICBtb2QgPSBQeUFTVF9Gcm9tTm9kZShuLCBmbGFncywgZmlsZW5hbWUsIGFyZW5hKTsKICAgICAgICAgUHlOb2RlX0ZyZWUobik7Ci0gICAgICAgIHJldHVybiBtb2Q7CiAgICAgfQogICAgIGVsc2UgewogICAgICAgICBlcnJfaW5wdXQoJmVycik7Ci0gICAgICAgIHJldHVybiBOVUxMOworICAgICAgICBtb2QgPSBOVUxMOwogICAgIH0KKyAgICBlcnJfZnJlZSgmZXJyKTsKKyAgICByZXR1cm4gbW9kOwogfQogCiBtb2RfdHkKQEAgLTE5NDIsMTQgKzE5NzAsMTUgQEAKICAgICAgICAgZmxhZ3MtPmNmX2ZsYWdzIHw9IGlmbGFncyAmIFB5Q0ZfTUFTSzsKICAgICAgICAgbW9kID0gUHlBU1RfRnJvbU5vZGUobiwgZmxhZ3MsIGZpbGVuYW1lLCBhcmVuYSk7CiAgICAgICAgIFB5Tm9kZV9GcmVlKG4pOwotICAgICAgICByZXR1cm4gbW9kOwogICAgIH0KICAgICBlbHNlIHsKICAgICAgICAgZXJyX2lucHV0KCZlcnIpOwogICAgICAgICBpZiAoZXJyY29kZSkKICAgICAgICAgICAgICplcnJjb2RlID0gZXJyLmVycm9yOwotICAgICAgICByZXR1cm4gTlVMTDsKKyAgICAgICAgbW9kID0gTlVMTDsKICAgICB9CisgICAgZXJyX2ZyZWUoJmVycik7CisgICAgcmV0dXJuIG1vZDsKIH0KIAogLyogU2ltcGxpZmllZCBpbnRlcmZhY2UgdG8gcGFyc2VmaWxlIC0tIHJldHVybiBub2RlIG9yIHNldCBleGNlcHRpb24gKi8KQEAgLTE5NjMsNiArMTk5Miw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0LCBOVUxMLCBOVUxMLCAmZXJyLCBmbGFncyk7CiAgICAgaWYgKG4gPT0gTlVMTCkKICAgICAgICAgZXJyX2lucHV0KCZlcnIpOworICAgIGVycl9mcmVlKCZlcnIpOwogCiAgICAgcmV0dXJuIG47CiB9CkBAIC0xOTc3LDYgKzIwMDcsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0LCAmZXJyLCBmbGFncyk7CiAgICAgaWYgKG4gPT0gTlVMTCkKICAgICAgICAgZXJyX2lucHV0KCZlcnIpOworICAgIGVycl9mcmVlKCZlcnIpOwogICAgIHJldHVybiBuOwogfQogCkBAIC0xOTg5LDYgKzIwMjAsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICZfUHlQYXJzZXJfR3JhbW1hciwgc3RhcnQsICZlcnIsIGZsYWdzKTsKICAgICBpZiAobiA9PSBOVUxMKQogICAgICAgICBlcnJfaW5wdXQoJmVycik7CisgICAgZXJyX2ZyZWUoJmVycik7CiAgICAgcmV0dXJuIG47CiB9CiAKQEAgLTIwMDIsMTEgKzIwMzQsMjMgQEAKICAgIGV2ZW4gcGFyc2VyIG1vZHVsZXMuICovCiAKIHZvaWQKK1B5UGFyc2VyX0NsZWFyRXJyb3IocGVycmRldGFpbCAqZXJyKQoreworICAgIGVycl9mcmVlKGVycik7Cit9CisKK3ZvaWQKIFB5UGFyc2VyX1NldEVycm9yKHBlcnJkZXRhaWwgKmVycikKIHsKICAgICBlcnJfaW5wdXQoZXJyKTsKIH0KIAorc3RhdGljIHZvaWQKK2Vycl9mcmVlKHBlcnJkZXRhaWwgKmVycikKK3sKKyAgICBQeV9DTEVBUihlcnItPmZpbGVuYW1lKTsKK30KKwogLyogU2V0IHRoZSBlcnJvciBhcHByb3ByaWF0ZSB0byB0aGUgZ2l2ZW4gaW5wdXQgZXJyb3IgY29kZSAoc2VlIGVycmNvZGUuaCkgKi8KIAogc3RhdGljIHZvaWQKQEAgLTIwMTQsNyArMjA1OCw2IEBACiB7CiAgICAgUHlPYmplY3QgKnYsICp3LCAqZXJydHlwZSwgKmVycnRleHQ7CiAgICAgUHlPYmplY3QgKm1zZ19vYmogPSBOVUxMOwotICAgIFB5T2JqZWN0ICpmaWxlbmFtZTsKICAgICBjaGFyICptc2cgPSBOVUxMOwogCiAgICAgZXJydHlwZSA9IFB5RXhjX1N5bnRheEVycm9yOwpAQCAtMjA4Niw2ICsyMTI5LDkgQEAKICAgICBjYXNlIEVfSURFTlRJRklFUjoKICAgICAgICAgbXNnID0gImludmFsaWQgY2hhcmFjdGVyIGluIGlkZW50aWZpZXIiOwogICAgICAgICBicmVhazsKKyAgICBjYXNlIEVfQkFEU0lOR0xFOgorICAgICAgICBtc2cgPSAibXVsdGlwbGUgc3RhdGVtZW50cyBmb3VuZCB3aGlsZSBjb21waWxpbmcgYSBzaW5nbGUgc3RhdGVtZW50IjsKKyAgICAgICAgYnJlYWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcj0lZFxuIiwgZXJyLT5lcnJvcik7CiAgICAgICAgIG1zZyA9ICJ1bmtub3duIHBhcnNpbmcgZXJyb3IiOwpAQCAtMjEwMCwxNyArMjE0Niw4IEBACiAgICAgICAgIGVycnRleHQgPSBQeVVuaWNvZGVfRGVjb2RlVVRGOChlcnItPnRleHQsIHN0cmxlbihlcnItPnRleHQpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlcGxhY2UiKTsKICAgICB9Ci0gICAgaWYgKGVyci0+ZmlsZW5hbWUgIT0gTlVMTCkKLSAgICAgICAgZmlsZW5hbWUgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0KGVyci0+ZmlsZW5hbWUpOwotICAgIGVsc2UgewotICAgICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7Ci0gICAgICAgIGZpbGVuYW1lID0gUHlfTm9uZTsKLSAgICB9Ci0gICAgaWYgKGZpbGVuYW1lICE9IE5VTEwpCi0gICAgICAgIHYgPSBQeV9CdWlsZFZhbHVlKCIoTmlpTikiLCBmaWxlbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyLT5saW5lbm8sIGVyci0+b2Zmc2V0LCBlcnJ0ZXh0KTsKLSAgICBlbHNlCi0gICAgICAgIHYgPSBOVUxMOworICAgIHYgPSBQeV9CdWlsZFZhbHVlKCIoT2lpTikiLCBlcnItPmZpbGVuYW1lLAorICAgICAgICAgICAgICAgICAgICAgIGVyci0+bGluZW5vLCBlcnItPm9mZnNldCwgZXJydGV4dCk7CiAgICAgaWYgKHYgIT0gTlVMTCkgewogICAgICAgICBpZiAobXNnX29iaikKICAgICAgICAgICAgIHcgPSBQeV9CdWlsZFZhbHVlKCIoT08pIiwgbXNnX29iaiwgdik7CkBAIC0yMTM0LDExICsyMTcxLDI0IEBACiB2b2lkCiBQeV9GYXRhbEVycm9yKGNvbnN0IGNoYXIgKm1zZykKIHsKKyAgICBjb25zdCBpbnQgZmQgPSBmaWxlbm8oc3RkZXJyKTsKKyAgICBQeVRocmVhZFN0YXRlICp0c3RhdGU7CisKICAgICBmcHJpbnRmKHN0ZGVyciwgIkZhdGFsIFB5dGhvbiBlcnJvcjogJXNcbiIsIG1zZyk7CiAgICAgZmZsdXNoKHN0ZGVycik7IC8qIGl0IGhlbHBzIGluIFdpbmRvd3MgZGVidWcgYnVpbGQgKi8KICAgICBpZiAoUHlFcnJfT2NjdXJyZWQoKSkgewogICAgICAgICBQeUVycl9QcmludEV4KDApOwogICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgdHN0YXRlID0gX1B5X2F0b21pY19sb2FkX3JlbGF4ZWQoJl9QeVRocmVhZFN0YXRlX0N1cnJlbnQpOworICAgICAgICBpZiAodHN0YXRlICE9IE5VTEwpIHsKKyAgICAgICAgICAgIGZwdXRjKCdcbicsIHN0ZGVycik7CisgICAgICAgICAgICBmZmx1c2goc3RkZXJyKTsKKyAgICAgICAgICAgIF9QeV9EdW1wVHJhY2ViYWNrVGhyZWFkcyhmZCwgdHN0YXRlLT5pbnRlcnAsIHRzdGF0ZSk7CisgICAgICAgIH0KKyAgICAgICAgX1B5RmF1bHRoYW5kbGVyX0ZpbmkoKTsKKyAgICB9CisKICNpZmRlZiBNU19XSU5ET1dTCiAgICAgewogICAgICAgICBzaXplX3QgbGVuID0gc3RybGVuKG1zZyk7CkBAIC0yMTkzLDYgKzIyNDMsNyBAQAogd2FpdF9mb3JfdGhyZWFkX3NodXRkb3duKHZvaWQpCiB7CiAjaWZkZWYgV0lUSF9USFJFQUQKKyAgICBfUHlfSURFTlRJRklFUihfc2h1dGRvd24pOwogICAgIFB5T2JqZWN0ICpyZXN1bHQ7CiAgICAgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlID0gUHlUaHJlYWRTdGF0ZV9HRVQoKTsKICAgICBQeU9iamVjdCAqdGhyZWFkaW5nID0gUHlNYXBwaW5nX0dldEl0ZW1TdHJpbmcodHN0YXRlLT5pbnRlcnAtPm1vZHVsZXMsCkBAIC0yMjAyLDcgKzIyNTMsNyBAQAogICAgICAgICBQeUVycl9DbGVhcigpOwogICAgICAgICByZXR1cm47CiAgICAgfQotICAgIHJlc3VsdCA9IFB5T2JqZWN0X0NhbGxNZXRob2QodGhyZWFkaW5nLCAiX3NodXRkb3duIiwgIiIpOworICAgIHJlc3VsdCA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQodGhyZWFkaW5nLCAmUHlJZF9fc2h1dGRvd24sICIiKTsKICAgICBpZiAocmVzdWx0ID09IE5VTEwpIHsKICAgICAgICAgUHlFcnJfV3JpdGVVbnJhaXNhYmxlKHRocmVhZGluZyk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL3N5bXRhYmxlLmMgYi9QeXRob24vc3ltdGFibGUuYwppbmRleCAxZWM1MWY3Li5iNjIyODM1IDEwMDY0NAotLS0gYS9QeXRob24vc3ltdGFibGUuYworKysgYi9QeXRob24vc3ltdGFibGUuYwpAQCAtMTksMTAgKzE5LDYgQEAKIAogI2RlZmluZSBJTVBPUlRfU1RBUl9XQVJOSU5HICJpbXBvcnQgKiBvbmx5IGFsbG93ZWQgYXQgbW9kdWxlIGxldmVsIgogCi0jZGVmaW5lIFJFVFVSTl9WQUxfSU5fR0VORVJBVE9SIFwKLSAgICAiJ3JldHVybicgd2l0aCBhcmd1bWVudCBpbnNpZGUgZ2VuZXJhdG9yIgotCi0KIHN0YXRpYyBQeVNURW50cnlPYmplY3QgKgogc3RlX25ldyhzdHJ1Y3Qgc3ltdGFibGUgKnN0LCBpZGVudGlmaWVyIG5hbWUsIF9QeV9ibG9ja190eSBibG9jaywKICAgICAgICAgdm9pZCAqa2V5LCBpbnQgbGluZW5vLCBpbnQgY29sX29mZnNldCkKQEAgLTE4NSw2ICsxODEsNyBAQAogc3RhdGljIGludCBzeW10YWJsZV92aXNpdF9hcmdhbm5vdGF0aW9ucyhzdHJ1Y3Qgc3ltdGFibGUgKnN0LCBhc2RsX3NlcSAqYXJncyk7CiBzdGF0aWMgaW50IHN5bXRhYmxlX2ltcGxpY2l0X2FyZyhzdHJ1Y3Qgc3ltdGFibGUgKnN0LCBpbnQgcG9zKTsKIHN0YXRpYyBpbnQgc3ltdGFibGVfdmlzaXRfYW5ub3RhdGlvbnMoc3RydWN0IHN5bXRhYmxlICpzdCwgc3RtdF90eSBzKTsKK3N0YXRpYyBpbnQgc3ltdGFibGVfdmlzaXRfd2l0aGl0ZW0oc3RydWN0IHN5bXRhYmxlICpzdCwgd2l0aGl0ZW1fdHkgaXRlbSk7CiAKIAogc3RhdGljIGlkZW50aWZpZXIgdG9wID0gTlVMTCwgbGFtYmRhID0gTlVMTCwgZ2VuZXhwciA9IE5VTEwsCkBAIC0yMjQsMTAgKzIyMSwxNyBAQAogc3RydWN0IHN5bXRhYmxlICoKIFB5U3ltdGFibGVfQnVpbGQobW9kX3R5IG1vZCwgY29uc3QgY2hhciAqZmlsZW5hbWUsIFB5RnV0dXJlRmVhdHVyZXMgKmZ1dHVyZSkKIHsKLSAgICBzdHJ1Y3Qgc3ltdGFibGUgKnN0ID0gc3ltdGFibGVfbmV3KCk7CisgICAgc3RydWN0IHN5bXRhYmxlICpzdDsKICAgICBhc2RsX3NlcSAqc2VxOwogICAgIGludCBpOwogCisgICAgaWYgKF9fY2xhc3NfXyA9PSBOVUxMKSB7CisgICAgICAgIF9fY2xhc3NfXyA9IFB5VW5pY29kZV9JbnRlcm5Gcm9tU3RyaW5nKCJAX19jbGFzc19fIik7CisgICAgICAgIGlmIChfX2NsYXNzX18gPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHN0ID0gc3ltdGFibGVfbmV3KCk7CiAgICAgaWYgKHN0ID09IE5VTEwpCiAgICAgICAgIHJldHVybiBzdDsKICAgICBzdC0+c3RfZmlsZW5hbWUgPSBmaWxlbmFtZTsKQEAgLTc0MywxNCArNzQ3LDEyIEBACiAgICAgfQogICAgIGVsc2UgewogICAgICAgICAvKiBTcGVjaWFsLWNhc2UgX19jbGFzc19fICovCi0gICAgICAgIGlmICghR0VUX0lERU5USUZJRVIoX19jbGFzc19fKSkKLSAgICAgICAgICAgIGdvdG8gZXJyb3I7CiAgICAgICAgIGFzc2VydChQeVNldF9Db250YWlucyhsb2NhbCwgX19jbGFzc19fKSA9PSAxKTsKICAgICAgICAgaWYgKFB5U2V0X0FkZChuZXdib3VuZCwgX19jbGFzc19fKSA8IDApCiAgICAgICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KIAotICAgIC8qIFJlY3Vyc2l2ZWx5IGNhbGwgYW5hbHl6ZV9ibG9jaygpIG9uIGVhY2ggY2hpbGQgYmxvY2suCisgICAgLyogUmVjdXJzaXZlbHkgY2FsbCBhbmFseXplX2NoaWxkX2Jsb2NrKCkgb24gZWFjaCBjaGlsZCBibG9jay4KIAogICAgICAgIG5ld2JvdW5kLCBuZXdnbG9iYWwgbm93IGNvbnRhaW4gdGhlIG5hbWVzIHZpc2libGUgaW4KICAgICAgICBuZXN0ZWQgYmxvY2tzLiAgVGhlIGZyZWUgdmFyaWFibGVzIGluIHRoZSBjaGlsZHJlbiB3aWxsCkBAIC03ODIsNyArNzg0LDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpKQogICAgICAgICBnb3RvIGVycm9yOwogICAgIGVsc2UgaWYgKHN0ZS0+c3RlX3R5cGUgPT0gQ2xhc3NCbG9jayAmJiAhYW5hbHl6ZV9jZWxscyhzY29wZXMsIG5ld2ZyZWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJfX2NsYXNzX18iKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkBfX2NsYXNzX18iKSkKICAgICAgICAgZ290byBlcnJvcjsKICAgICAvKiBSZWNvcmRzIHRoZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcyBpbiB0aGUgc3ltYm9sIHRhYmxlIGVudHJ5ICovCiAgICAgaWYgKCF1cGRhdGVfc3ltYm9scyhzdGUtPnN0ZV9zeW1ib2xzLCBzY29wZXMsIGJvdW5kLCBuZXdmcmVlLApAQCAtODkzLDE4ICs4OTUsMTUgQEAKIHN0YXRpYyBpbnQKIHN5bXRhYmxlX2V4aXRfYmxvY2soc3RydWN0IHN5bXRhYmxlICpzdCwgdm9pZCAqYXN0KQogewotICAgIFB5X3NzaXplX3QgZW5kOworICAgIFB5X3NzaXplX3Qgc2l6ZTsKIAotICAgIFB5X0NMRUFSKHN0LT5zdF9jdXIpOwotICAgIGVuZCA9IFB5TGlzdF9HRVRfU0laRShzdC0+c3Rfc3RhY2spIC0gMTsKLSAgICBpZiAoZW5kID49IDApIHsKLSAgICAgICAgc3QtPnN0X2N1ciA9IChQeVNURW50cnlPYmplY3QgKilQeUxpc3RfR0VUX0lURU0oc3QtPnN0X3N0YWNrLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmQpOwotICAgICAgICBpZiAoc3QtPnN0X2N1ciA9PSBOVUxMKQorICAgIHN0LT5zdF9jdXIgPSBOVUxMOworICAgIHNpemUgPSBQeUxpc3RfR0VUX1NJWkUoc3QtPnN0X3N0YWNrKTsKKyAgICBpZiAoc2l6ZSkgeworICAgICAgICBpZiAoUHlMaXN0X1NldFNsaWNlKHN0LT5zdF9zdGFjaywgc2l6ZSAtIDEsIHNpemUsIE5VTEwpIDwgMCkKICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBQeV9JTkNSRUYoc3QtPnN0X2N1cik7Ci0gICAgICAgIGlmIChQeVNlcXVlbmNlX0RlbEl0ZW0oc3QtPnN0X3N0YWNrLCBlbmQpIDwgMCkKLSAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBpZiAoLS1zaXplKQorICAgICAgICAgICAgc3QtPnN0X2N1ciA9IChQeVNURW50cnlPYmplY3QgKilQeUxpc3RfR0VUX0lURU0oc3QtPnN0X3N0YWNrLCBzaXplIC0gMSk7CiAgICAgfQogICAgIHJldHVybiAxOwogfQpAQCAtOTEzLDIzICs5MTIsMjMgQEAKIHN5bXRhYmxlX2VudGVyX2Jsb2NrKHN0cnVjdCBzeW10YWJsZSAqc3QsIGlkZW50aWZpZXIgbmFtZSwgX1B5X2Jsb2NrX3R5IGJsb2NrLAogICAgICAgICAgICAgICAgICAgICAgdm9pZCAqYXN0LCBpbnQgbGluZW5vLCBpbnQgY29sX29mZnNldCkKIHsKLSAgICBQeVNURW50cnlPYmplY3QgKnByZXYgPSBOVUxMOworICAgIFB5U1RFbnRyeU9iamVjdCAqcHJldiA9IE5VTEwsICpzdGU7CiAKLSAgICBpZiAoc3QtPnN0X2N1cikgewotICAgICAgICBwcmV2ID0gc3QtPnN0X2N1cjsKLSAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQoc3QtPnN0X3N0YWNrLCAoUHlPYmplY3QgKilzdC0+c3RfY3VyKSA8IDApIHsKLSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICB9Ci0gICAgICAgIFB5X0RFQ1JFRihzdC0+c3RfY3VyKTsKLSAgICB9Ci0gICAgc3QtPnN0X2N1ciA9IHN0ZV9uZXcoc3QsIG5hbWUsIGJsb2NrLCBhc3QsIGxpbmVubywgY29sX29mZnNldCk7Ci0gICAgaWYgKHN0LT5zdF9jdXIgPT0gTlVMTCkKKyAgICBzdGUgPSBzdGVfbmV3KHN0LCBuYW1lLCBibG9jaywgYXN0LCBsaW5lbm8sIGNvbF9vZmZzZXQpOworICAgIGlmIChzdGUgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIDA7CisgICAgaWYgKFB5TGlzdF9BcHBlbmQoc3QtPnN0X3N0YWNrLCAoUHlPYmplY3QgKilzdGUpIDwgMCkgeworICAgICAgICBQeV9ERUNSRUYoc3RlKTsKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorICAgIHByZXYgPSBzdC0+c3RfY3VyOworICAgIC8qIFRoZSBlbnRyeSBpcyBvd25lZCBieSB0aGUgc3RhY2suIEJvcnJvdyBpdCBmb3Igc3RfY3VyLiAqLworICAgIFB5X0RFQ1JFRihzdGUpOworICAgIHN0LT5zdF9jdXIgPSBzdGU7CiAgICAgaWYgKGJsb2NrID09IE1vZHVsZUJsb2NrKQogICAgICAgICBzdC0+c3RfZ2xvYmFsID0gc3QtPnN0X2N1ci0+c3RlX3N5bWJvbHM7CiAgICAgaWYgKHByZXYpIHsKLSAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQocHJldi0+c3RlX2NoaWxkcmVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAoUHlPYmplY3QgKilzdC0+c3RfY3VyKSA8IDApIHsKKyAgICAgICAgaWYgKFB5TGlzdF9BcHBlbmQocHJldi0+c3RlX2NoaWxkcmVuLCAoUHlPYmplY3QgKilzdGUpIDwgMCkgewogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KICAgICB9CkBAIC0xMDIzLDEyICsxMDIyLDYgQEAKICAgICBpZiAoIXN5bXRhYmxlX3Zpc2l0XyAjIyBUWVBFKChTVCksIChWKSkpIFwKICAgICAgICAgcmV0dXJuIDA7CiAKLSNkZWZpbmUgVklTSVRfSU5fQkxPQ0soU1QsIFRZUEUsIFYsIFMpIFwKLSAgICBpZiAoIXN5bXRhYmxlX3Zpc2l0XyAjIyBUWVBFKChTVCksIChWKSkpIHsgXAotICAgICAgICBzeW10YWJsZV9leGl0X2Jsb2NrKChTVCksIChTKSk7IFwKLSAgICAgICAgcmV0dXJuIDA7IFwKLSAgICB9Ci0KICNkZWZpbmUgVklTSVRfU0VRKFNULCBUWVBFLCBTRVEpIHsgXAogICAgIGludCBpOyBcCiAgICAgYXNkbF9zZXEgKnNlcSA9IChTRVEpOyAvKiBhdm9pZCB2YXJpYWJsZSBjYXB0dXJlICovIFwKQEAgLTEwMzksMTggKzEwMzIsNiBAQAogICAgIH0gXAogfQogCi0jZGVmaW5lIFZJU0lUX1NFUV9JTl9CTE9DSyhTVCwgVFlQRSwgU0VRLCBTKSB7IFwKLSAgICBpbnQgaTsgXAotICAgIGFzZGxfc2VxICpzZXEgPSAoU0VRKTsgLyogYXZvaWQgdmFyaWFibGUgY2FwdHVyZSAqLyBcCi0gICAgZm9yIChpID0gMDsgaSA8IGFzZGxfc2VxX0xFTihzZXEpOyBpKyspIHsgXAotICAgICAgICBUWVBFICMjIF90eSBlbHQgPSAoVFlQRSAjIyBfdHkpYXNkbF9zZXFfR0VUKHNlcSwgaSk7IFwKLSAgICAgICAgaWYgKCFzeW10YWJsZV92aXNpdF8gIyMgVFlQRSgoU1QpLCBlbHQpKSB7IFwKLSAgICAgICAgICAgIHN5bXRhYmxlX2V4aXRfYmxvY2soKFNUKSwgKFMpKTsgXAotICAgICAgICAgICAgcmV0dXJuIDA7IFwKLSAgICAgICAgfSBcCi0gICAgfSBcCi19Ci0KICNkZWZpbmUgVklTSVRfU0VRX1RBSUwoU1QsIFRZUEUsIFNFUSwgU1RBUlQpIHsgXAogICAgIGludCBpOyBcCiAgICAgYXNkbF9zZXEgKnNlcSA9IChTRVEpOyAvKiBhdm9pZCB2YXJpYWJsZSBjYXB0dXJlICovIFwKQEAgLTEwNjEsMTggKzEwNDIsNiBAQAogICAgIH0gXAogfQogCi0jZGVmaW5lIFZJU0lUX1NFUV9UQUlMX0lOX0JMT0NLKFNULCBUWVBFLCBTRVEsIFNUQVJULCBTKSB7IFwKLSAgICBpbnQgaTsgXAotICAgIGFzZGxfc2VxICpzZXEgPSAoU0VRKTsgLyogYXZvaWQgdmFyaWFibGUgY2FwdHVyZSAqLyBcCi0gICAgZm9yIChpID0gKFNUQVJUKTsgaSA8IGFzZGxfc2VxX0xFTihzZXEpOyBpKyspIHsgXAotICAgICAgICBUWVBFICMjIF90eSBlbHQgPSAoVFlQRSAjIyBfdHkpYXNkbF9zZXFfR0VUKHNlcSwgaSk7IFwKLSAgICAgICAgaWYgKCFzeW10YWJsZV92aXNpdF8gIyMgVFlQRSgoU1QpLCBlbHQpKSB7IFwKLSAgICAgICAgICAgIHN5bXRhYmxlX2V4aXRfYmxvY2soKFNUKSwgKFMpKTsgXAotICAgICAgICAgICAgcmV0dXJuIDA7IFwKLSAgICAgICAgfSBcCi0gICAgfSBcCi19Ci0KICNkZWZpbmUgVklTSVRfS1dPTkxZREVGQVVMVFMoU1QsIEtXX0RFRkFVTFRTKSB7IFwKICAgICBpbnQgaSA9IDA7IFwKICAgICBhc2RsX3NlcSAqc2VxID0gKEtXX0RFRkFVTFRTKTsgLyogYXZvaWQgdmFyaWFibGUgY2FwdHVyZSAqLyBcCkBAIC0xMTIyLDggKzEwOTEsOCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZ1bmN0aW9uQmxvY2ssICh2b2lkICopcywgcy0+bGluZW5vLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMtPmNvbF9vZmZzZXQpKQogICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIFZJU0lUX0lOX0JMT0NLKHN0LCBhcmd1bWVudHMsIHMtPnYuRnVuY3Rpb25EZWYuYXJncywgcyk7Ci0gICAgICAgIFZJU0lUX1NFUV9JTl9CTE9DSyhzdCwgc3RtdCwgcy0+di5GdW5jdGlvbkRlZi5ib2R5LCBzKTsKKyAgICAgICAgVklTSVQoc3QsIGFyZ3VtZW50cywgcy0+di5GdW5jdGlvbkRlZi5hcmdzKTsKKyAgICAgICAgVklTSVRfU0VRKHN0LCBzdG10LCBzLT52LkZ1bmN0aW9uRGVmLmJvZHkpOwogICAgICAgICBpZiAoIXN5bXRhYmxlX2V4aXRfYmxvY2soc3QsIHMpKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIGJyZWFrOwpAQCAtMTE0Miw4ICsxMTExLDcgQEAKICAgICAgICAgaWYgKCFzeW10YWJsZV9lbnRlcl9ibG9jayhzdCwgcy0+di5DbGFzc0RlZi5uYW1lLCBDbGFzc0Jsb2NrLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh2b2lkICopcywgcy0+bGluZW5vLCBzLT5jb2xfb2Zmc2V0KSkKICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBpZiAoIUdFVF9JREVOVElGSUVSKF9fY2xhc3NfXykgfHwKLSAgICAgICAgICAgICFzeW10YWJsZV9hZGRfZGVmKHN0LCBfX2NsYXNzX18sIERFRl9MT0NBTCkgfHwKKyAgICAgICAgaWYgKCFzeW10YWJsZV9hZGRfZGVmKHN0LCBfX2NsYXNzX18sIERFRl9MT0NBTCkgfHwKICAgICAgICAgICAgICFHRVRfSURFTlRJRklFUihfX2xvY2Fsc19fKSB8fAogICAgICAgICAgICAgIXN5bXRhYmxlX2FkZF9kZWYoc3QsIF9fbG9jYWxzX18sIERFRl9QQVJBTSkpIHsKICAgICAgICAgICAgIHN5bXRhYmxlX2V4aXRfYmxvY2soc3QsIHMpOwpAQCAtMTE1MSw3ICsxMTE5LDcgQEAKICAgICAgICAgfQogICAgICAgICB0bXAgPSBzdC0+c3RfcHJpdmF0ZTsKICAgICAgICAgc3QtPnN0X3ByaXZhdGUgPSBzLT52LkNsYXNzRGVmLm5hbWU7Ci0gICAgICAgIFZJU0lUX1NFUV9JTl9CTE9DSyhzdCwgc3RtdCwgcy0+di5DbGFzc0RlZi5ib2R5LCBzKTsKKyAgICAgICAgVklTSVRfU0VRKHN0LCBzdG10LCBzLT52LkNsYXNzRGVmLmJvZHkpOwogICAgICAgICBzdC0+c3RfcHJpdmF0ZSA9IHRtcDsKICAgICAgICAgaWYgKCFzeW10YWJsZV9leGl0X2Jsb2NrKHN0LCBzKSkKICAgICAgICAgICAgIHJldHVybiAwOwpAQCAtMTE2MSwxNCArMTEyOSw2IEBACiAgICAgICAgIGlmIChzLT52LlJldHVybi52YWx1ZSkgewogICAgICAgICAgICAgVklTSVQoc3QsIGV4cHIsIHMtPnYuUmV0dXJuLnZhbHVlKTsKICAgICAgICAgICAgIHN0LT5zdF9jdXItPnN0ZV9yZXR1cm5zX3ZhbHVlID0gMTsKLSAgICAgICAgICAgIGlmIChzdC0+c3RfY3VyLT5zdGVfZ2VuZXJhdG9yKSB7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1N5bnRheEVycm9yLAotICAgICAgICAgICAgICAgICAgICBSRVRVUk5fVkFMX0lOX0dFTkVSQVRPUik7Ci0gICAgICAgICAgICAgICAgUHlFcnJfU3ludGF4TG9jYXRpb25FeChzdC0+c3RfZmlsZW5hbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLT5saW5lbm8sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzLT5jb2xfb2Zmc2V0KTsKLSAgICAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICBicmVhazsKICAgICBjYXNlIERlbGV0ZV9raW5kOgpAQCAtMTIwNSwxOSArMTE2NSwxNiBAQAogICAgIGNhc2UgUmFpc2Vfa2luZDoKICAgICAgICAgaWYgKHMtPnYuUmFpc2UuZXhjKSB7CiAgICAgICAgICAgICBWSVNJVChzdCwgZXhwciwgcy0+di5SYWlzZS5leGMpOwotICAgICAgICBpZiAocy0+di5SYWlzZS5jYXVzZSkgewotICAgICAgICBWSVNJVChzdCwgZXhwciwgcy0+di5SYWlzZS5jYXVzZSk7Ci0gICAgICAgIH0KKyAgICAgICAgICAgIGlmIChzLT52LlJhaXNlLmNhdXNlKSB7CisgICAgICAgICAgICAgICAgVklTSVQoc3QsIGV4cHIsIHMtPnYuUmFpc2UuY2F1c2UpOworICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgVHJ5RXhjZXB0X2tpbmQ6Ci0gICAgICAgIFZJU0lUX1NFUShzdCwgc3RtdCwgcy0+di5UcnlFeGNlcHQuYm9keSk7Ci0gICAgICAgIFZJU0lUX1NFUShzdCwgc3RtdCwgcy0+di5UcnlFeGNlcHQub3JlbHNlKTsKLSAgICAgICAgVklTSVRfU0VRKHN0LCBleGNlcHRoYW5kbGVyLCBzLT52LlRyeUV4Y2VwdC5oYW5kbGVycyk7Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2UgVHJ5RmluYWxseV9raW5kOgotICAgICAgICBWSVNJVF9TRVEoc3QsIHN0bXQsIHMtPnYuVHJ5RmluYWxseS5ib2R5KTsKLSAgICAgICAgVklTSVRfU0VRKHN0LCBzdG10LCBzLT52LlRyeUZpbmFsbHkuZmluYWxib2R5KTsKKyAgICBjYXNlIFRyeV9raW5kOgorICAgICAgICBWSVNJVF9TRVEoc3QsIHN0bXQsIHMtPnYuVHJ5LmJvZHkpOworICAgICAgICBWSVNJVF9TRVEoc3QsIHN0bXQsIHMtPnYuVHJ5Lm9yZWxzZSk7CisgICAgICAgIFZJU0lUX1NFUShzdCwgZXhjZXB0aGFuZGxlciwgcy0+di5UcnkuaGFuZGxlcnMpOworICAgICAgICBWSVNJVF9TRVEoc3QsIHN0bXQsIHMtPnYuVHJ5LmZpbmFsYm9keSk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgQXNzZXJ0X2tpbmQ6CiAgICAgICAgIFZJU0lUKHN0LCBleHByLCBzLT52LkFzc2VydC50ZXN0KTsKQEAgLTEzMDUsMTAgKzEyNjIsNyBAQAogICAgICAgICAvKiBub3RoaW5nIHRvIGRvIGhlcmUgKi8KICAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBXaXRoX2tpbmQ6Ci0gICAgICAgIFZJU0lUKHN0LCBleHByLCBzLT52LldpdGguY29udGV4dF9leHByKTsKLSAgICAgICAgaWYgKHMtPnYuV2l0aC5vcHRpb25hbF92YXJzKSB7Ci0gICAgICAgICAgICBWSVNJVChzdCwgZXhwciwgcy0+di5XaXRoLm9wdGlvbmFsX3ZhcnMpOwotICAgICAgICB9CisgICAgICAgIFZJU0lUX1NFUShzdCwgd2l0aGl0ZW0sIHMtPnYuV2l0aC5pdGVtcyk7CiAgICAgICAgIFZJU0lUX1NFUShzdCwgc3RtdCwgcy0+di5XaXRoLmJvZHkpOwogICAgICAgICBicmVhazsKICAgICB9CkBAIC0xMzQxLDggKzEyOTUsOCBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZ1bmN0aW9uQmxvY2ssICh2b2lkICopZSwgZS0+bGluZW5vLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGUtPmNvbF9vZmZzZXQpKQogICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIFZJU0lUX0lOX0JMT0NLKHN0LCBhcmd1bWVudHMsIGUtPnYuTGFtYmRhLmFyZ3MsICh2b2lkKillKTsKLSAgICAgICAgVklTSVRfSU5fQkxPQ0soc3QsIGV4cHIsIGUtPnYuTGFtYmRhLmJvZHksICh2b2lkKillKTsKKyAgICAgICAgVklTSVQoc3QsIGFyZ3VtZW50cywgZS0+di5MYW1iZGEuYXJncyk7CisgICAgICAgIFZJU0lUKHN0LCBleHByLCBlLT52LkxhbWJkYS5ib2R5KTsKICAgICAgICAgaWYgKCFzeW10YWJsZV9leGl0X2Jsb2NrKHN0LCAodm9pZCAqKWUpKQogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIGJyZWFrOwpAQCAtMTM3NiwxNyArMTMzMCwxNCBAQAogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgWWllbGRfa2luZDoKLSAgICAgICAgaWYgKGUtPnYuWWllbGQudmFsdWUpCi0gICAgICAgICAgICBWSVNJVChzdCwgZXhwciwgZS0+di5ZaWVsZC52YWx1ZSk7CisgICAgY2FzZSBZaWVsZEZyb21fa2luZDogeworICAgICAgICBleHByX3R5IHZhbHVlOworICAgICAgICB2YWx1ZSA9IChlLT5raW5kID09IFlpZWxkRnJvbV9raW5kKSA/IGUtPnYuWWllbGRGcm9tLnZhbHVlIDogZS0+di5ZaWVsZC52YWx1ZTsKKyAgICAgICAgaWYgKHZhbHVlKQorICAgICAgICAgICAgVklTSVQoc3QsIGV4cHIsIHZhbHVlKTsKICAgICAgICAgc3QtPnN0X2N1ci0+c3RlX2dlbmVyYXRvciA9IDE7Ci0gICAgICAgIGlmIChzdC0+c3RfY3VyLT5zdGVfcmV0dXJuc192YWx1ZSkgewotICAgICAgICAgICAgUHlFcnJfU2V0U3RyaW5nKFB5RXhjX1N5bnRheEVycm9yLAotICAgICAgICAgICAgICAgIFJFVFVSTl9WQUxfSU5fR0VORVJBVE9SKTsKLSAgICAgICAgICAgIFB5RXJyX1N5bnRheExvY2F0aW9uRXgoc3QtPnN0X2ZpbGVuYW1lLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlLT5saW5lbm8sIGUtPmNvbF9vZmZzZXQpOwotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgIH0KICAgICAgICAgYnJlYWs7CisgICAgfQogICAgIGNhc2UgQ29tcGFyZV9raW5kOgogICAgICAgICBWSVNJVChzdCwgZXhwciwgZS0+di5Db21wYXJlLmxlZnQpOwogICAgICAgICBWSVNJVF9TRVEoc3QsIGV4cHIsIGUtPnYuQ29tcGFyZS5jb21wYXJhdG9ycyk7CkBAIC0xNDI1LDggKzEzNzYsNyBAQAogICAgICAgICBpZiAoZS0+di5OYW1lLmN0eCA9PSBMb2FkICYmCiAgICAgICAgICAgICBzdC0+c3RfY3VyLT5zdGVfdHlwZSA9PSBGdW5jdGlvbkJsb2NrICYmCiAgICAgICAgICAgICAhUHlVbmljb2RlX0NvbXBhcmVXaXRoQVNDSUlTdHJpbmcoZS0+di5OYW1lLmlkLCAic3VwZXIiKSkgewotICAgICAgICAgICAgaWYgKCFHRVRfSURFTlRJRklFUihfX2NsYXNzX18pIHx8Ci0gICAgICAgICAgICAgICAgIXN5bXRhYmxlX2FkZF9kZWYoc3QsIF9fY2xhc3NfXywgVVNFKSkKKyAgICAgICAgICAgIGlmICghc3ltdGFibGVfYWRkX2RlZihzdCwgX19jbGFzc19fLCBVU0UpKQogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOwpAQCAtMTU0Myw2ICsxNDkzLDE2IEBACiAgICAgcmV0dXJuIDE7CiB9CiAKK3N0YXRpYyBpbnQKK3N5bXRhYmxlX3Zpc2l0X3dpdGhpdGVtKHN0cnVjdCBzeW10YWJsZSAqc3QsIHdpdGhpdGVtX3R5IGl0ZW0pCit7CisgICAgVklTSVQoc3QsIGV4cHIsIGl0ZW0tPmNvbnRleHRfZXhwcik7CisgICAgaWYgKGl0ZW0tPm9wdGlvbmFsX3ZhcnMpIHsKKyAgICAgICAgVklTSVQoc3QsIGV4cHIsIGl0ZW0tPm9wdGlvbmFsX3ZhcnMpOworICAgIH0KKyAgICByZXR1cm4gMTsKK30KKwogCiBzdGF0aWMgaW50CiBzeW10YWJsZV92aXNpdF9hbGlhcyhzdHJ1Y3Qgc3ltdGFibGUgKnN0LCBhbGlhc190eSBhKQpAQCAtMTU1MywxMCArMTUxMywxMCBAQAogICAgICovCiAgICAgUHlPYmplY3QgKnN0b3JlX25hbWU7CiAgICAgUHlPYmplY3QgKm5hbWUgPSAoYS0+YXNuYW1lID09IE5VTEwpID8gYS0+bmFtZSA6IGEtPmFzbmFtZTsKLSAgICBjb25zdCBQeV9VTklDT0RFICpiYXNlID0gUHlVbmljb2RlX0FTX1VOSUNPREUobmFtZSk7Ci0gICAgUHlfVU5JQ09ERSAqZG90ID0gUHlfVU5JQ09ERV9zdHJjaHIoYmFzZSwgJy4nKTsKLSAgICBpZiAoZG90KSB7Ci0gICAgICAgIHN0b3JlX25hbWUgPSBQeVVuaWNvZGVfRnJvbVVuaWNvZGUoYmFzZSwgZG90IC0gYmFzZSk7CisgICAgUHlfc3NpemVfdCBkb3QgPSBQeVVuaWNvZGVfRmluZENoYXIobmFtZSwgJy4nLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9HRVRfTEVOR1RIKG5hbWUpLCAxKTsKKyAgICBpZiAoZG90ICE9IC0xKSB7CisgICAgICAgIHN0b3JlX25hbWUgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKG5hbWUsIDAsIGRvdCk7CiAgICAgICAgIGlmICghc3RvcmVfbmFtZSkKICAgICAgICAgICAgIHJldHVybiAwOwogICAgIH0KQEAgLTE2NTMsMTMgKzE2MTMsMTIgQEAKICAgICAgICAgc3ltdGFibGVfZXhpdF9ibG9jayhzdCwgKHZvaWQgKillKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQotICAgIFZJU0lUX0lOX0JMT0NLKHN0LCBleHByLCBvdXRlcm1vc3QtPnRhcmdldCwgKHZvaWQqKWUpOwotICAgIFZJU0lUX1NFUV9JTl9CTE9DSyhzdCwgZXhwciwgb3V0ZXJtb3N0LT5pZnMsICh2b2lkKillKTsKLSAgICBWSVNJVF9TRVFfVEFJTF9JTl9CTE9DSyhzdCwgY29tcHJlaGVuc2lvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0b3JzLCAxLCAodm9pZCopZSk7CisgICAgVklTSVQoc3QsIGV4cHIsIG91dGVybW9zdC0+dGFyZ2V0KTsKKyAgICBWSVNJVF9TRVEoc3QsIGV4cHIsIG91dGVybW9zdC0+aWZzKTsKKyAgICBWSVNJVF9TRVFfVEFJTChzdCwgY29tcHJlaGVuc2lvbiwgZ2VuZXJhdG9ycywgMSk7CiAgICAgaWYgKHZhbHVlKQotICAgICAgICBWSVNJVF9JTl9CTE9DSyhzdCwgZXhwciwgdmFsdWUsICh2b2lkKillKTsKLSAgICBWSVNJVF9JTl9CTE9DSyhzdCwgZXhwciwgZWx0LCAodm9pZCopZSk7CisgICAgICAgIFZJU0lUKHN0LCBleHByLCB2YWx1ZSk7CisgICAgVklTSVQoc3QsIGV4cHIsIGVsdCk7CiAgICAgcmV0dXJuIHN5bXRhYmxlX2V4aXRfYmxvY2soc3QsICh2b2lkICopZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1B5dGhvbi9zeXNtb2R1bGUuYyBiL1B5dGhvbi9zeXNtb2R1bGUuYwppbmRleCA4YTY1OWM1Li45NTUyMTlmIDEwMDY0NAotLS0gYS9QeXRob24vc3lzbW9kdWxlLmMKKysrIGIvUHl0aG9uL3N5c21vZHVsZS5jCkBAIC0xNyw2ICsxNyw3IEBACiAjaW5jbHVkZSAiUHl0aG9uLmgiCiAjaW5jbHVkZSAiY29kZS5oIgogI2luY2x1ZGUgImZyYW1lb2JqZWN0LmgiCisjaW5jbHVkZSAicHl0aHJlYWQuaCIKIAogI2luY2x1ZGUgIm9zZGVmcy5oIgogCkBAIC03OCw4ICs3OSwxMCBAQAogICAgIFB5T2JqZWN0ICplbmNvZGVkLCAqZXNjYXBlZF9zdHIsICpyZXByX3N0ciwgKmJ1ZmZlciwgKnJlc3VsdDsKICAgICBjaGFyICpzdGRvdXRfZW5jb2Rpbmdfc3RyOwogICAgIGludCByZXQ7CisgICAgX1B5X0lERU5USUZJRVIoZW5jb2RpbmcpOworICAgIF9QeV9JREVOVElGSUVSKGJ1ZmZlcik7CiAKLSAgICBzdGRvdXRfZW5jb2RpbmcgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKG91dGYsICJlbmNvZGluZyIpOworICAgIHN0ZG91dF9lbmNvZGluZyA9IF9QeU9iamVjdF9HZXRBdHRySWQob3V0ZiwgJlB5SWRfZW5jb2RpbmcpOwogICAgIGlmIChzdGRvdXRfZW5jb2RpbmcgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKICAgICBzdGRvdXRfZW5jb2Rpbmdfc3RyID0gX1B5VW5pY29kZV9Bc1N0cmluZyhzdGRvdXRfZW5jb2RpbmcpOwpAQCAtOTYsOSArOTksMTAgQEAKICAgICBpZiAoZW5jb2RlZCA9PSBOVUxMKQogICAgICAgICBnb3RvIGVycm9yOwogCi0gICAgYnVmZmVyID0gUHlPYmplY3RfR2V0QXR0clN0cmluZyhvdXRmLCAiYnVmZmVyIik7CisgICAgYnVmZmVyID0gX1B5T2JqZWN0X0dldEF0dHJJZChvdXRmLCAmUHlJZF9idWZmZXIpOwogICAgIGlmIChidWZmZXIpIHsKLSAgICAgICAgcmVzdWx0ID0gUHlPYmplY3RfQ2FsbE1ldGhvZChidWZmZXIsICJ3cml0ZSIsICIoTykiLCBlbmNvZGVkKTsKKyAgICAgICAgX1B5X0lERU5USUZJRVIod3JpdGUpOworICAgICAgICByZXN1bHQgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGJ1ZmZlciwgJlB5SWRfd3JpdGUsICIoTykiLCBlbmNvZGVkKTsKICAgICAgICAgUHlfREVDUkVGKGJ1ZmZlcik7CiAgICAgICAgIFB5X0RFQ1JFRihlbmNvZGVkKTsKICAgICAgICAgaWYgKHJlc3VsdCA9PSBOVUxMKQpAQCAtMTM1LDYgKzEzOSw3IEBACiAgICAgUHlPYmplY3QgKm1vZHVsZXMgPSBpbnRlcnAtPm1vZHVsZXM7CiAgICAgUHlPYmplY3QgKmJ1aWx0aW5zID0gUHlEaWN0X0dldEl0ZW1TdHJpbmcobW9kdWxlcywgImJ1aWx0aW5zIik7CiAgICAgaW50IGVycjsKKyAgICBfUHlfSURFTlRJRklFUihfKTsKIAogICAgIGlmIChidWlsdGlucyA9PSBOVUxMKSB7CiAgICAgICAgIFB5RXJyX1NldFN0cmluZyhQeUV4Y19SdW50aW1lRXJyb3IsICJsb3N0IGJ1aWx0aW5zIG1vZHVsZSIpOwpAQCAtMTQ4LDcgKzE1Myw3IEBACiAgICAgICAgIFB5X0lOQ1JFRihQeV9Ob25lKTsKICAgICAgICAgcmV0dXJuIFB5X05vbmU7CiAgICAgfQotICAgIGlmIChQeU9iamVjdF9TZXRBdHRyU3RyaW5nKGJ1aWx0aW5zLCAiXyIsIFB5X05vbmUpICE9IDApCisgICAgaWYgKF9QeU9iamVjdF9TZXRBdHRySWQoYnVpbHRpbnMsICZQeUlkX18sIFB5X05vbmUpICE9IDApCiAgICAgICAgIHJldHVybiBOVUxMOwogICAgIG91dGYgPSBQeVN5c19HZXRPYmplY3QoInN0ZG91dCIpOwogICAgIGlmIChvdXRmID09IE5VTEwgfHwgb3V0ZiA9PSBQeV9Ob25lKSB7CkBAIC0xNzAsNyArMTc1LDcgQEAKICAgICB9CiAgICAgaWYgKFB5RmlsZV9Xcml0ZVN0cmluZygiXG4iLCBvdXRmKSAhPSAwKQogICAgICAgICByZXR1cm4gTlVMTDsKLSAgICBpZiAoUHlPYmplY3RfU2V0QXR0clN0cmluZyhidWlsdGlucywgIl8iLCBvKSAhPSAwKQorICAgIGlmIChfUHlPYmplY3RfU2V0QXR0cklkKGJ1aWx0aW5zLCAmUHlJZF9fLCBvKSAhPSAwKQogICAgICAgICByZXR1cm4gTlVMTDsKICAgICBQeV9JTkNSRUYoUHlfTm9uZSk7CiAgICAgcmV0dXJuIFB5X05vbmU7CkBAIC03NzAsOSArNzc1LDcgQEAKIGEgbGF6eSByZXNvbHZpbmcgb2Ygc3ltYm9scyB3aGVuIGltcG9ydGluZyBhIG1vZHVsZSwgaWYgY2FsbGVkIGFzXG5cCiBzeXMuc2V0ZGxvcGVuZmxhZ3MoMCkuICBUbyBzaGFyZSBzeW1ib2xzIGFjcm9zcyBleHRlbnNpb24gbW9kdWxlcywgY2FsbCBhc1xuXAogc3lzLnNldGRsb3BlbmZsYWdzKGN0eXBlcy5SVExEX0dMT0JBTCkuICBTeW1ib2xpYyBuYW1lcyBmb3IgdGhlIGZsYWcgbW9kdWxlc1xuXAotY2FuIGJlIGVpdGhlciBmb3VuZCBpbiB0aGUgY3R5cGVzIG1vZHVsZSwgb3IgaW4gdGhlIERMRkNOIG1vZHVsZS4gSWYgRExGQ05cblwKLWlzIG5vdCBhdmFpbGFibGUsIGl0IGNhbiBiZSBnZW5lcmF0ZWQgZnJvbSAvdXNyL2luY2x1ZGUvZGxmY24uaCB1c2luZyB0aGVcblwKLWgycHkgc2NyaXB0LiIpOworY2FuIGJlIGZvdW5kIGluIHRoZSBvcyBtb2R1bGUgKFJUTERfeHh4IGNvbnN0YW50cywgZS5nLiBvcy5SVExEX0xBWlkpLiIpOwogCiBzdGF0aWMgUHlPYmplY3QgKgogc3lzX2dldGRsb3BlbmZsYWdzKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncykKQEAgLTgxMSwxMCArODE0LDExIEBACiBzeXNfZ2V0c2l6ZW9mKFB5T2JqZWN0ICpzZWxmLCBQeU9iamVjdCAqYXJncywgUHlPYmplY3QgKmt3ZHMpCiB7CiAgICAgUHlPYmplY3QgKnJlcyA9IE5VTEw7Ci0gICAgc3RhdGljIFB5T2JqZWN0ICpzdHJfX3NpemVvZl9fID0gTlVMTCwgKmdjX2hlYWRfc2l6ZSA9IE5VTEw7CisgICAgc3RhdGljIFB5T2JqZWN0ICpnY19oZWFkX3NpemUgPSBOVUxMOwogICAgIHN0YXRpYyBjaGFyICprd2xpc3RbXSA9IHsib2JqZWN0IiwgImRlZmF1bHQiLCAwfTsKICAgICBQeU9iamVjdCAqbywgKmRmbHQgPSBOVUxMOwogICAgIFB5T2JqZWN0ICptZXRob2Q7CisgICAgX1B5X0lERU5USUZJRVIoX19zaXplb2ZfXyk7CiAKICAgICBpZiAoIVB5QXJnX1BhcnNlVHVwbGVBbmRLZXl3b3JkcyhhcmdzLCBrd2RzLCAiT3xPOmdldHNpemVvZiIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga3dsaXN0LCAmbywgJmRmbHQpKQpAQCAtODMxLDggKzgzNSw3IEBACiAgICAgaWYgKFB5VHlwZV9SZWFkeShQeV9UWVBFKG8pKSA8IDApCiAgICAgICAgIHJldHVybiBOVUxMOwogCi0gICAgbWV0aG9kID0gX1B5T2JqZWN0X0xvb2t1cFNwZWNpYWwobywgIl9fc2l6ZW9mX18iLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdHJfX3NpemVvZl9fKTsKKyAgICBtZXRob2QgPSBfUHlPYmplY3RfTG9va3VwU3BlY2lhbChvLCAmUHlJZF9fX3NpemVvZl9fKTsKICAgICBpZiAobWV0aG9kID09IE5VTEwpIHsKICAgICAgICAgaWYgKCFQeUVycl9PY2N1cnJlZCgpKQogICAgICAgICAgICAgUHlFcnJfRm9ybWF0KFB5RXhjX1R5cGVFcnJvciwKQEAgLTExNzcsNyArMTE4MCw2IEBACiAgICAgUHlPYmplY3QgKm9wdHM7CiAgICAgUHlPYmplY3QgKm5hbWUgPSBOVUxMLCAqdmFsdWUgPSBOVUxMOwogICAgIGNvbnN0IHdjaGFyX3QgKm5hbWVfZW5kOwotICAgIGludCByOwogCiAgICAgb3B0cyA9IGdldF94b3B0aW9ucygpOwogICAgIGlmIChvcHRzID09IE5VTEwpCkBAIC0xMTk1LDcgKzExOTcsNyBAQAogICAgIH0KICAgICBpZiAobmFtZSA9PSBOVUxMIHx8IHZhbHVlID09IE5VTEwpCiAgICAgICAgIGdvdG8gZXJyb3I7Ci0gICAgciA9IFB5RGljdF9TZXRJdGVtKG9wdHMsIG5hbWUsIHZhbHVlKTsKKyAgICBQeURpY3RfU2V0SXRlbShvcHRzLCBuYW1lLCB2YWx1ZSk7CiAgICAgUHlfREVDUkVGKG5hbWUpOwogICAgIFB5X0RFQ1JFRih2YWx1ZSk7CiAgICAgcmV0dXJuOwpAQCAtMTI1MiwyMSArMTI1NCwyMSBAQAogIlxuXAogU3RhdGljIG9iamVjdHM6XG5cCiBcblwKLWZsb2F0X2luZm8gLS0gYSBkaWN0IHdpdGggaW5mb3JtYXRpb24gYWJvdXQgdGhlIGZsb2F0IGltcGxlbWVudGF0aW9uLlxuXAorYnVpbHRpbl9tb2R1bGVfbmFtZXMgLS0gdHVwbGUgb2YgbW9kdWxlIG5hbWVzIGJ1aWx0IGludG8gdGhpcyBpbnRlcnByZXRlclxuXAorY29weXJpZ2h0IC0tIGNvcHlyaWdodCBub3RpY2UgcGVydGFpbmluZyB0byB0aGlzIGludGVycHJldGVyXG5cCitleGVjX3ByZWZpeCAtLSBwcmVmaXggdXNlZCB0byBmaW5kIHRoZSBtYWNoaW5lLXNwZWNpZmljIFB5dGhvbiBsaWJyYXJ5XG5cCitleGVjdXRhYmxlIC0tIGFic29sdXRlIHBhdGggb2YgdGhlIGV4ZWN1dGFibGUgYmluYXJ5IG9mIHRoZSBQeXRob24gaW50ZXJwcmV0ZXJcblwKK2Zsb2F0X2luZm8gLS0gYSBzdHJ1Y3Qgc2VxdWVuY2Ugd2l0aCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZmxvYXQgaW1wbGVtZW50YXRpb24uXG5cCitmbG9hdF9yZXByX3N0eWxlIC0tIHN0cmluZyBpbmRpY2F0aW5nIHRoZSBzdHlsZSBvZiByZXByKCkgb3V0cHV0IGZvciBmbG9hdHNcblwKK2hleHZlcnNpb24gLS0gdmVyc2lvbiBpbmZvcm1hdGlvbiBlbmNvZGVkIGFzIGEgc2luZ2xlIGludGVnZXJcblwKIGludF9pbmZvIC0tIGEgc3RydWN0IHNlcXVlbmNlIHdpdGggaW5mb3JtYXRpb24gYWJvdXQgdGhlIGludCBpbXBsZW1lbnRhdGlvbi5cblwKIG1heHNpemUgLS0gdGhlIGxhcmdlc3Qgc3VwcG9ydGVkIGxlbmd0aCBvZiBjb250YWluZXJzLlxuXAotbWF4dW5pY29kZSAtLSB0aGUgbGFyZ2VzdCBzdXBwb3J0ZWQgY2hhcmFjdGVyXG5cCi1idWlsdGluX21vZHVsZV9uYW1lcyAtLSB0dXBsZSBvZiBtb2R1bGUgbmFtZXMgYnVpbHQgaW50byB0aGlzIGludGVycHJldGVyXG5cCi1zdWJ2ZXJzaW9uIC0tIHN1YnZlcnNpb24gaW5mb3JtYXRpb24gb2YgdGhlIGJ1aWxkIGFzIHR1cGxlXG5cCittYXh1bmljb2RlIC0tIHRoZSB2YWx1ZSBvZiB0aGUgbGFyZ2VzdCBVbmljb2RlIGNvZGVwb2ludFxuXAorcGxhdGZvcm0gLS0gcGxhdGZvcm0gaWRlbnRpZmllclxuXAorcHJlZml4IC0tIHByZWZpeCB1c2VkIHRvIGZpbmQgdGhlIFB5dGhvbiBsaWJyYXJ5XG5cCit0aHJlYWRfaW5mbyAtLSBhIHN0cnVjdCBzZXF1ZW5jZSB3aXRoIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0aHJlYWQgaW1wbGVtZW50YXRpb24uXG5cCiB2ZXJzaW9uIC0tIHRoZSB2ZXJzaW9uIG9mIHRoaXMgaW50ZXJwcmV0ZXIgYXMgYSBzdHJpbmdcblwKIHZlcnNpb25faW5mbyAtLSB2ZXJzaW9uIGluZm9ybWF0aW9uIGFzIGEgbmFtZWQgdHVwbGVcblwKLWhleHZlcnNpb24gLS0gdmVyc2lvbiBpbmZvcm1hdGlvbiBlbmNvZGVkIGFzIGEgc2luZ2xlIGludGVnZXJcblwKLWNvcHlyaWdodCAtLSBjb3B5cmlnaHQgbm90aWNlIHBlcnRhaW5pbmcgdG8gdGhpcyBpbnRlcnByZXRlclxuXAotcGxhdGZvcm0gLS0gcGxhdGZvcm0gaWRlbnRpZmllclxuXAotZXhlY3V0YWJsZSAtLSBhYnNvbHV0ZSBwYXRoIG9mIHRoZSBleGVjdXRhYmxlIGJpbmFyeSBvZiB0aGUgUHl0aG9uIGludGVycHJldGVyXG5cCi1wcmVmaXggLS0gcHJlZml4IHVzZWQgdG8gZmluZCB0aGUgUHl0aG9uIGxpYnJhcnlcblwKLWV4ZWNfcHJlZml4IC0tIHByZWZpeCB1c2VkIHRvIGZpbmQgdGhlIG1hY2hpbmUtc3BlY2lmaWMgUHl0aG9uIGxpYnJhcnlcblwKLWZsb2F0X3JlcHJfc3R5bGUgLS0gc3RyaW5nIGluZGljYXRpbmcgdGhlIHN0eWxlIG9mIHJlcHIoKSBvdXRwdXQgZm9yIGZsb2F0c1xuXAogIgogKQogI2lmZGVmIE1TX1dJTkRPV1MKQEAgLTEzMDUsNDMgKzEzMDcsNiBAQAogKQogLyogZW5kIG9mIHN5c19kb2MgKi8gOwogCi0vKiBTdWJ2ZXJzaW9uIGJyYW5jaCBhbmQgcmV2aXNpb24gbWFuYWdlbWVudCAqLwotc3RhdGljIGludCBzdm5faW5pdGlhbGl6ZWQ7Ci1zdGF0aWMgY2hhciBwYXRjaGxldmVsX3JldmlzaW9uWzUwXTsgLyogSnVzdCB0aGUgbnVtYmVyICovCi1zdGF0aWMgY2hhciBicmFuY2hbNTBdOwotc3RhdGljIGNoYXIgc2hvcnRicmFuY2hbNTBdOwotc3RhdGljIGNvbnN0IGNoYXIgKnN2bl9yZXZpc2lvbjsKLQotc3RhdGljIHZvaWQKLXN2bnZlcnNpb25faW5pdCh2b2lkKQotewotICAgIGlmIChzdm5faW5pdGlhbGl6ZWQpCi0gICAgICAgIHJldHVybjsKLQotICAgIHN2bl9pbml0aWFsaXplZCA9IDE7Ci0gICAgKnBhdGNobGV2ZWxfcmV2aXNpb24gPSAnXDAnOwotICAgIHN0cmNweShicmFuY2gsICIiKTsKLSAgICBzdHJjcHkoc2hvcnRicmFuY2gsICJ1bmtub3duIik7Ci0gICAgc3ZuX3JldmlzaW9uID0gIiI7Ci19Ci0KLS8qIFJldHVybiBzdm52ZXJzaW9uIG91dHB1dCBpZiBhdmFpbGFibGUuCi0gICBFbHNlIHJldHVybiBSZXZpc2lvbiBvZiBwYXRjaGxldmVsLmggaWYgb24gYnJhbmNoLgotICAgRWxzZSByZXR1cm4gZW1wdHkgc3RyaW5nICovCi1jb25zdCBjaGFyKgotUHlfU3VidmVyc2lvblJldmlzaW9uKCkKLXsKLSAgICBzdm52ZXJzaW9uX2luaXQoKTsKLSAgICByZXR1cm4gc3ZuX3JldmlzaW9uOwotfQotCi1jb25zdCBjaGFyKgotUHlfU3VidmVyc2lvblNob3J0QnJhbmNoKCkKLXsKLSAgICBzdm52ZXJzaW9uX2luaXQoKTsKLSAgICByZXR1cm4gc2hvcnRicmFuY2g7Ci19Ci0KIAogUHlEb2NfU1RSVkFSKGZsYWdzX19kb2NfXywKICJzeXMuZmxhZ3NcblwKQEAgLTEzNTIsNyArMTMxNyw2IEBACiAKIHN0YXRpYyBQeVN0cnVjdFNlcXVlbmNlX0ZpZWxkIGZsYWdzX2ZpZWxkc1tdID0gewogICAgIHsiZGVidWciLCAgICAgICAgICAgICAgICAgICAiLWQifSwKLSAgICB7ImRpdmlzaW9uX3dhcm5pbmciLCAgICAgICAgIi1RIn0sCiAgICAgeyJpbnNwZWN0IiwgICAgICAgICAgICAgICAgICItaSJ9LAogICAgIHsiaW50ZXJhY3RpdmUiLCAgICAgICAgICAgICAiLWkifSwKICAgICB7Im9wdGltaXplIiwgICAgICAgICAgICAgICAgIi1PIG9yIC1PTyJ9LApAQCAtMTM3Niw5ICsxMzQwLDkgQEAKICAgICBmbGFnc19fZG9jX18sICAgICAgIC8qIGRvYyAqLwogICAgIGZsYWdzX2ZpZWxkcywgICAgICAgLyogZmllbGRzICovCiAjaWZkZWYgUklTQ09TCi0gICAgMTMKLSNlbHNlCiAgICAgMTIKKyNlbHNlCisgICAgMTEKICNlbmRpZgogfTsKIApAQCAtMTM5Niw3ICsxMzYwLDYgQEAKICAgICBQeVN0cnVjdFNlcXVlbmNlX1NFVF9JVEVNKHNlcSwgcG9zKyssIFB5TG9uZ19Gcm9tTG9uZyhmbGFnKSkKIAogICAgIFNldEZsYWcoUHlfRGVidWdGbGFnKTsKLSAgICBTZXRGbGFnKFB5X0RpdmlzaW9uV2FybmluZ0ZsYWcpOwogICAgIFNldEZsYWcoUHlfSW5zcGVjdEZsYWcpOwogICAgIFNldEZsYWcoUHlfSW50ZXJhY3RpdmVGbGFnKTsKICAgICBTZXRGbGFnKFB5X09wdGltaXplRmxhZyk7CkBAIC0xNTQ1LDEwICsxNTA4LDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICBQeVVuaWNvZGVfRnJvbVN0cmluZyhQeV9HZXRWZXJzaW9uKCkpKTsKICAgICBTRVRfU1lTX0ZST01fU1RSSU5HKCJoZXh2ZXJzaW9uIiwKICAgICAgICAgICAgICAgICAgICAgICAgICBQeUxvbmdfRnJvbUxvbmcoUFlfVkVSU0lPTl9IRVgpKTsKLSAgICBzdm52ZXJzaW9uX2luaXQoKTsKLSAgICBTRVRfU1lTX0ZST01fU1RSSU5HKCJzdWJ2ZXJzaW9uIiwKLSAgICAgICAgICAgICAgICAgICAgICAgIFB5X0J1aWxkVmFsdWUoIihzc3MpIiwgIkNQeXRob24iLCBicmFuY2gsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN2bl9yZXZpc2lvbikpOwogICAgIFNFVF9TWVNfRlJPTV9TVFJJTkcoIl9tZXJjdXJpYWwiLAogICAgICAgICAgICAgICAgICAgICAgICAgUHlfQnVpbGRWYWx1ZSgiKHN6eikiLCAiQ1B5dGhvbiIsIF9QeV9oZ2lkZW50aWZpZXIoKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX1B5X2hndmVyc2lvbigpKSk7CkBAIC0xNTc5LDcgKzE1MzgsNyBAQAogICAgIFNFVF9TWVNfRlJPTV9TVFJJTkcoImhhc2hfaW5mbyIsCiAgICAgICAgICAgICAgICAgICAgICAgICBnZXRfaGFzaF9pbmZvKCkpOwogICAgIFNFVF9TWVNfRlJPTV9TVFJJTkcoIm1heHVuaWNvZGUiLAotICAgICAgICAgICAgICAgICAgICAgICAgUHlMb25nX0Zyb21Mb25nKFB5VW5pY29kZV9HZXRNYXgoKSkpOworICAgICAgICAgICAgICAgICAgICAgICAgUHlMb25nX0Zyb21Mb25nKDB4MTBGRkZGKSk7CiAgICAgU0VUX1NZU19GUk9NX1NUUklORygiYnVpbHRpbl9tb2R1bGVfbmFtZXMiLAogICAgICAgICAgICAgICAgICAgICAgICAgbGlzdF9idWlsdGluX21vZHVsZV9uYW1lcygpKTsKICAgICB7CkBAIC0xNjU2LDYgKzE2MTUsMTAgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIFB5VW5pY29kZV9Gcm9tU3RyaW5nKCJsZWdhY3kiKSk7CiAjZW5kaWYKIAorI2lmZGVmIFdJVEhfVEhSRUFECisgICAgU0VUX1NZU19GUk9NX1NUUklORygidGhyZWFkX2luZm8iLCBQeVRocmVhZF9HZXRJbmZvKCkpOworI2VuZGlmCisKICN1bmRlZiBTRVRfU1lTX0ZST01fU1RSSU5HCiAgICAgaWYgKFB5RXJyX09jY3VycmVkKCkpCiAgICAgICAgIHJldHVybiBOVUxMOwpAQCAtMTgxMCw3ICsxNzczLDcgQEAKICAgICAgICAgdGhlIGFyZ3VtZW50IG11c3QgYmUgdGhlIGZ1bGwgcGF0aCBhbnl3YXkuICovCiAgICAgICAgIHdjaGFyX3QgKnB0ZW1wOwogICAgICAgICBpZiAoR2V0RnVsbFBhdGhOYW1lVyhhcmd2MCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihmdWxscGF0aCkvc2l6ZW9mKGZ1bGxwYXRoWzBdKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5X0FSUkFZX0xFTkdUSChmdWxscGF0aCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxscGF0aCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwdGVtcCkpIHsKICAgICAgICAgICAgIGFyZ3YwID0gZnVsbHBhdGg7CkBAIC0xODc5LDExICsxODQyLDEyIEBACiB7CiAgICAgUHlPYmplY3QgKndyaXRlciA9IE5VTEwsICphcmdzID0gTlVMTCwgKnJlc3VsdCA9IE5VTEw7CiAgICAgaW50IGVycjsKKyAgICBfUHlfSURFTlRJRklFUih3cml0ZSk7CiAKICAgICBpZiAoZmlsZSA9PSBOVUxMKQogICAgICAgICByZXR1cm4gLTE7CiAKLSAgICB3cml0ZXIgPSBQeU9iamVjdF9HZXRBdHRyU3RyaW5nKGZpbGUsICJ3cml0ZSIpOworICAgIHdyaXRlciA9IF9QeU9iamVjdF9HZXRBdHRySWQoZmlsZSwgJlB5SWRfd3JpdGUpOwogICAgIGlmICh3cml0ZXIgPT0gTlVMTCkKICAgICAgICAgZ290byBlcnJvcjsKIApkaWZmIC0tZ2l0IGEvUHl0aG9uL3RocmVhZC5jIGIvUHl0aG9uL3RocmVhZC5jCmluZGV4IGQyMjQwNDYuLmU1NWQzNDIgMTAwNjQ0Ci0tLSBhL1B5dGhvbi90aHJlYWQuYworKysgYi9QeXRob24vdGhyZWFkLmMKQEAgLTcsNyArNyw2IEBACiAKICNpbmNsdWRlICJQeXRob24uaCIKIAotCiAjaWZuZGVmIF9QT1NJWF9USFJFQURTCiAvKiBUaGlzIG1lYW5zIHB0aHJlYWRzIGFyZSBub3QgaW1wbGVtZW50ZWQgaW4gbGliYyBoZWFkZXJzLCBoZW5jZSB0aGUgbWFjcm8KICAgIG5vdCBwcmVzZW50IGluIHVuaXN0ZC5oLiBCdXQgdGhleSBzdGlsbCBjYW4gYmUgaW1wbGVtZW50ZWQgYXMgYW4gZXh0ZXJuYWwKQEAgLTI3LDE4ICsyNiw2IEBACiAKICNpZm5kZWYgX1BPU0lYX1RIUkVBRFMKIAotI2lmZGVmIF9fc2dpCi0jZGVmaW5lIFNHSV9USFJFQURTCi0jZW5kaWYKLQotI2lmZGVmIEhBVkVfVEhSRUFEX0gKLSNkZWZpbmUgU09MQVJJU19USFJFQURTCi0jZW5kaWYKLQotI2lmIGRlZmluZWQoc3VuKSAmJiAhZGVmaW5lZChTT0xBUklTX1RIUkVBRFMpCi0jZGVmaW5lIFNVTl9MV1AKLSNlbmRpZgotCiAvKiBDaGVjayBpZiB3ZSdyZSBydW5uaW5nIG9uIEhQLVVYIGFuZCBfU0NfVEhSRUFEUyBpcyBkZWZpbmVkLiBJZiBzbywgdGhlbgogICAgZW5vdWdoIG9mIHRoZSBQb3NpeCB0aHJlYWRzIHBhY2thZ2UgaXMgaW1wbGVtZW50ZWQgdG8gc3VwcG9ydCBweXRob24KICAgIHRocmVhZHMuCkBAIC05NCw0NyArODEsMjEgQEAKICAgIG9yIHRoZSBzaXplIHNwZWNpZmllZCBieSB0aGUgVEhSRUFEX1NUQUNLX1NJWkUgbWFjcm8uICovCiBzdGF0aWMgc2l6ZV90IF9weXRocmVhZF9zdGFja3NpemUgPSAwOwogCi0jaWZkZWYgU0dJX1RIUkVBRFMKLSNlcnJvciBTR0kgSXJpeCB0aHJlYWRzIGFyZSBub3cgdW5zdXBwb3J0ZWQsIGFuZCBjb2RlIHdpbGwgYmUgcmVtb3ZlZCBpbiAzLjMuCi0jaW5jbHVkZSAidGhyZWFkX3NnaS5oIgotI2VuZGlmCi0KLSNpZmRlZiBTT0xBUklTX1RIUkVBRFMKLSNpbmNsdWRlICJ0aHJlYWRfc29sYXJpcy5oIgotI2VuZGlmCi0KLSNpZmRlZiBTVU5fTFdQCi0jZXJyb3IgU3VuT1MgbGlnaHR3ZWlnaHQgcHJvY2Vzc2VzIGFyZSBub3cgdW5zdXBwb3J0ZWQsIGFuZCBjb2RlIHdpbGwgYmUgcmVtb3ZlZCBpbiAzLjMuCi0jaW5jbHVkZSAidGhyZWFkX2x3cC5oIgotI2VuZGlmCi0KLSNpZmRlZiBIQVZFX1BUSAotI2Vycm9yIEdOVSBwdGggdGhyZWFkcyBhcmUgbm93IHVuc3VwcG9ydGVkLCBhbmQgY29kZSB3aWxsIGJlIHJlbW92ZWQgaW4gMy4zLgotI2luY2x1ZGUgInRocmVhZF9wdGguaCIKLSN1bmRlZiBfUE9TSVhfVEhSRUFEUwotI2VuZGlmCi0KICNpZmRlZiBfUE9TSVhfVEhSRUFEUworI2RlZmluZSBQWVRIUkVBRF9OQU1FICJwdGhyZWFkIgogI2luY2x1ZGUgInRocmVhZF9wdGhyZWFkLmgiCiAjZW5kaWYKIAotI2lmZGVmIENfVEhSRUFEUwotI2Vycm9yIE1hY2ggQyBUaHJlYWRzIGFyZSBub3cgdW5zdXBwb3J0ZWQsIGFuZCBjb2RlIHdpbGwgYmUgcmVtb3ZlZCBpbiAzLjMuCi0jaW5jbHVkZSAidGhyZWFkX2N0aHJlYWQuaCIKLSNlbmRpZgotCiAjaWZkZWYgTlRfVEhSRUFEUworI2RlZmluZSBQWVRIUkVBRF9OQU1FICJudCIKICNpbmNsdWRlICJ0aHJlYWRfbnQuaCIKICNlbmRpZgogCiAjaWZkZWYgT1MyX1RIUkVBRFMKKyNkZWZpbmUgUFlUSFJFQURfTkFNRSAib3MyIgogI2luY2x1ZGUgInRocmVhZF9vczIuaCIKICNlbmRpZgogCi0jaWZkZWYgUExBTjlfVEhSRUFEUwotI2luY2x1ZGUgInRocmVhZF9wbGFuOS5oIgotI2VuZGlmCi0KIC8qCiAjaWZkZWYgRk9PQkFSX1RIUkVBRFMKICNpbmNsdWRlICJ0aHJlYWRfZm9vYmFyLmgiCkBAIC00MDksMyArMzcwLDg0IEBACiB9CiAKICNlbmRpZiAvKiBQeV9IQVZFX05BVElWRV9UTFMgKi8KKworUHlEb2NfU1RSVkFSKHRocmVhZGluZm9fX2RvY19fLAorInN5cy50aHJlYWRfaW5mb1xuXAorXG5cCitBIHN0cnVjdCBzZXF1ZW5jZSBob2xkaW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0aHJlYWQgaW1wbGVtZW50YXRpb24uIik7CisKK3N0YXRpYyBQeVN0cnVjdFNlcXVlbmNlX0ZpZWxkIHRocmVhZGluZm9fZmllbGRzW10gPSB7CisgICAgeyJuYW1lIiwgICAgIm5hbWUgb2YgdGhlIHRocmVhZCBpbXBsZW1lbnRhdGlvbiJ9LAorICAgIHsibG9jayIsICAgICJuYW1lIG9mIHRoZSBsb2NrIGltcGxlbWVudGF0aW9uIn0sCisgICAgeyJ2ZXJzaW9uIiwgIm5hbWUgYW5kIHZlcnNpb24gb2YgdGhlIHRocmVhZCBsaWJyYXJ5In0sCisgICAgezB9Cit9OworCitzdGF0aWMgUHlTdHJ1Y3RTZXF1ZW5jZV9EZXNjIHRocmVhZGluZm9fZGVzYyA9IHsKKyAgICAic3lzLnRocmVhZF9pbmZvIiwgICAgICAgICAgIC8qIG5hbWUgKi8KKyAgICB0aHJlYWRpbmZvX19kb2NfXywgICAgICAgICAgIC8qIGRvYyAqLworICAgIHRocmVhZGluZm9fZmllbGRzLCAgICAgICAgICAgLyogZmllbGRzICovCisgICAgMworfTsKKworc3RhdGljIFB5VHlwZU9iamVjdCBUaHJlYWRJbmZvVHlwZTsKKworUHlPYmplY3QqCitQeVRocmVhZF9HZXRJbmZvKHZvaWQpCit7CisgICAgUHlPYmplY3QgKnRocmVhZGluZm8sICp2YWx1ZTsKKyAgICBpbnQgcG9zID0gMDsKKyNpZiAoZGVmaW5lZChfUE9TSVhfVEhSRUFEUykgJiYgZGVmaW5lZChIQVZFX0NPTkZTVFIpIFwKKyAgICAgJiYgZGVmaW5lZChfQ1NfR05VX0xJQlBUSFJFQURfVkVSU0lPTikpCisgICAgY2hhciBidWZmZXJbMjU1XTsKKyAgICBpbnQgbGVuOworI2VuZGlmCisKKyAgICBpZiAoVGhyZWFkSW5mb1R5cGUudHBfbmFtZSA9PSAwKQorICAgICAgICBQeVN0cnVjdFNlcXVlbmNlX0luaXRUeXBlKCZUaHJlYWRJbmZvVHlwZSwgJnRocmVhZGluZm9fZGVzYyk7CisKKyAgICB0aHJlYWRpbmZvID0gUHlTdHJ1Y3RTZXF1ZW5jZV9OZXcoJlRocmVhZEluZm9UeXBlKTsKKyAgICBpZiAodGhyZWFkaW5mbyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIHZhbHVlID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoUFlUSFJFQURfTkFNRSk7CisgICAgaWYgKHZhbHVlID09IE5VTEwpIHsKKyAgICAgICAgUHlfREVDUkVGKHRocmVhZGluZm8pOworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisgICAgUHlTdHJ1Y3RTZXF1ZW5jZV9TRVRfSVRFTSh0aHJlYWRpbmZvLCBwb3MrKywgdmFsdWUpOworCisjaWZkZWYgX1BPU0lYX1RIUkVBRFMKKyNpZmRlZiBVU0VfU0VNQVBIT1JFUworICAgIHZhbHVlID0gUHlVbmljb2RlX0Zyb21TdHJpbmcoInNlbWFwaG9yZSIpOworI2Vsc2UKKyAgICB2YWx1ZSA9IFB5VW5pY29kZV9Gcm9tU3RyaW5nKCJtdXRleCtjb25kIik7CisjZW5kaWYKKyAgICBpZiAodmFsdWUgPT0gTlVMTCkgeworICAgICAgICBQeV9ERUNSRUYodGhyZWFkaW5mbyk7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyNlbHNlCisgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgIHZhbHVlID0gUHlfTm9uZTsKKyNlbmRpZgorICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0odGhyZWFkaW5mbywgcG9zKyssIHZhbHVlKTsKKworI2lmIChkZWZpbmVkKF9QT1NJWF9USFJFQURTKSAmJiBkZWZpbmVkKEhBVkVfQ09ORlNUUikgXAorICAgICAmJiBkZWZpbmVkKF9DU19HTlVfTElCUFRIUkVBRF9WRVJTSU9OKSkKKyAgICB2YWx1ZSA9IE5VTEw7CisgICAgbGVuID0gY29uZnN0cihfQ1NfR05VX0xJQlBUSFJFQURfVkVSU0lPTiwgYnVmZmVyLCBzaXplb2YoYnVmZmVyKSk7CisgICAgaWYgKDEgPCBsZW4gJiYgbGVuIDwgc2l6ZW9mKGJ1ZmZlcikpIHsKKyAgICAgICAgdmFsdWUgPSBQeVVuaWNvZGVfRGVjb2RlRlNEZWZhdWx0QW5kU2l6ZShidWZmZXIsIGxlbi0xKTsKKyAgICAgICAgaWYgKHZhbHVlID09IE5VTEwpCisgICAgICAgICAgICBQeUVycl9DbGVhcigpOworICAgIH0KKyAgICBpZiAodmFsdWUgPT0gTlVMTCkKKyNlbmRpZgorICAgIHsKKyAgICAgICAgUHlfSU5DUkVGKFB5X05vbmUpOworICAgICAgICB2YWx1ZSA9IFB5X05vbmU7CisgICAgfQorICAgIFB5U3RydWN0U2VxdWVuY2VfU0VUX0lURU0odGhyZWFkaW5mbywgcG9zKyssIHZhbHVlKTsKKyAgICByZXR1cm4gdGhyZWFkaW5mbzsKK30KZGlmZiAtLWdpdCBhL1B5dGhvbi90aHJlYWRfY3RocmVhZC5oIGIvUHl0aG9uL3RocmVhZF9jdGhyZWFkLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFiM2UzOTAuLjAwMDAwMDAKLS0tIGEvUHl0aG9uL3RocmVhZF9jdGhyZWFkLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMTIgKzAsMCBAQAotCi0jaWZkZWYgTUFDSF9DX1RIUkVBRFMKLSNpbmNsdWRlIDxtYWNoL2N0aHJlYWRzLmg+Ci0jZW5kaWYKLQotI2lmZGVmIEhVUkRfQ19USFJFQURTCi0jaW5jbHVkZSA8Y3RocmVhZHMuaD4KLSNlbmRpZgotCi0vKgotICogSW5pdGlhbGl6YXRpb24uCi0gKi8KLXN0YXRpYyB2b2lkCi1QeVRocmVhZF9faW5pdF90aHJlYWQodm9pZCkKLXsKLSNpZm5kZWYgSFVSRF9DX1RIUkVBRFMKLSAgICAvKiBSb2xhbmQgTWNHcmF0aCBzYWlkIHRoaXMgc2hvdWxkIG5vdCBiZSB1c2VkIHNpbmNlIHRoaXMgaXMKLSAgICBkb25lIHdoaWxlIGxpbmtpbmcgdG8gdGhyZWFkcyAqLwotICAgIGN0aHJlYWRfaW5pdCgpOwotI2Vsc2UKLS8qIGRvIG5vdGhpbmcgKi8KLSAgICA7Ci0jZW5kaWYKLX0KLQotLyoKLSAqIFRocmVhZCBzdXBwb3J0LgotICovCi1sb25nCi1QeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkKHZvaWQgKCpmdW5jKSh2b2lkICopLCB2b2lkICphcmcpCi17Ci0gICAgaW50IHN1Y2Nlc3MgPSAwOyAgICAgICAgICAgIC8qIGluaXQgbm90IG5lZWRlZCB3aGVuIFNPTEFSSVNfVEhSRUFEUyBhbmQgKi8KLSAgICAgICAgICAgICAgICAvKiBDX1RIUkVBRFMgaW1wbGVtZW50ZWQgcHJvcGVybHkgKi8KLQotICAgIGRwcmludGYoKCJQeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkIGNhbGxlZFxuIikpOwotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIFB5VGhyZWFkX2luaXRfdGhyZWFkKCk7Ci0gICAgLyogbG9va3MgbGlrZSBzb2xhcmlzIGRldGFjaGVzIHRoZSB0aHJlYWQgdG8gbmV2ZXIgcmVqb2luCi0gICAgICogc28gd2VsbCBkbyBpdCBoZXJlCi0gICAgICovCi0gICAgY3RocmVhZF9kZXRhY2goY3RocmVhZF9mb3JrKChjdGhyZWFkX2ZuX3QpIGZ1bmMsIGFyZykpOwotICAgIHJldHVybiBzdWNjZXNzIDwgMCA/IC0xIDogMDsKLX0KLQotbG9uZwotUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCh2b2lkKQotewotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIFB5VGhyZWFkX2luaXRfdGhyZWFkKCk7Ci0gICAgcmV0dXJuIChsb25nKSBjdGhyZWFkX3NlbGYoKTsKLX0KLQotdm9pZAotUHlUaHJlYWRfZXhpdF90aHJlYWQodm9pZCkKLXsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfZXhpdF90aHJlYWQgY2FsbGVkXG4iKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgZXhpdCgwKTsKLSAgICBjdGhyZWFkX2V4aXQoMCk7Ci19Ci0KLS8qCi0gKiBMb2NrIHN1cHBvcnQuCi0gKi8KLVB5VGhyZWFkX3R5cGVfbG9jawotUHlUaHJlYWRfYWxsb2NhdGVfbG9jayh2b2lkKQotewotICAgIG11dGV4X3QgbG9jazsKLQotICAgIGRwcmludGYoKCJQeVRocmVhZF9hbGxvY2F0ZV9sb2NrIGNhbGxlZFxuIikpOwotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIFB5VGhyZWFkX2luaXRfdGhyZWFkKCk7Ci0KLSAgICBsb2NrID0gbXV0ZXhfYWxsb2MoKTsKLSAgICBpZiAobXV0ZXhfaW5pdChsb2NrKSkgewotICAgICAgICBwZXJyb3IoIm11dGV4X2luaXQiKTsKLSAgICAgICAgZnJlZSgodm9pZCAqKSBsb2NrKTsKLSAgICAgICAgbG9jayA9IDA7Ci0gICAgfQotICAgIGRwcmludGYoKCJQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKCkgLT4gJXBcbiIsIGxvY2spKTsKLSAgICByZXR1cm4gKFB5VGhyZWFkX3R5cGVfbG9jaykgbG9jazsKLX0KLQotdm9pZAotUHlUaHJlYWRfZnJlZV9sb2NrKFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrKQotewotICAgIGRwcmludGYoKCJQeVRocmVhZF9mcmVlX2xvY2soJXApIGNhbGxlZFxuIiwgbG9jaykpOwotICAgIG11dGV4X2ZyZWUobG9jayk7Ci19Ci0KLWludAotUHlUaHJlYWRfYWNxdWlyZV9sb2NrKFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrLCBpbnQgd2FpdGZsYWcpCi17Ci0gICAgaW50IHN1Y2Nlc3MgPSBGQUxTRTsKLQotICAgIGRwcmludGYoKCJQeVRocmVhZF9hY3F1aXJlX2xvY2soJXAsICVkKSBjYWxsZWRcbiIsIGxvY2ssIHdhaXRmbGFnKSk7Ci0gICAgaWYgKHdhaXRmbGFnKSB7ICAgICAgICAgICAgIC8qIGJsb2NraW5nICovCi0gICAgICAgIG11dGV4X2xvY2soKG11dGV4X3QpbG9jayk7Ci0gICAgICAgIHN1Y2Nlc3MgPSBUUlVFOwotICAgIH0gZWxzZSB7ICAgICAgICAgICAgICAgICAgICAvKiBub24gYmxvY2tpbmcgKi8KLSAgICAgICAgc3VjY2VzcyA9IG11dGV4X3RyeV9sb2NrKChtdXRleF90KWxvY2spOwotICAgIH0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWNxdWlyZV9sb2NrKCVwLCAlZCkgLT4gJWRcbiIsIGxvY2ssIHdhaXRmbGFnLCBzdWNjZXNzKSk7Ci0gICAgcmV0dXJuIHN1Y2Nlc3M7Ci19Ci0KLXZvaWQKLVB5VGhyZWFkX3JlbGVhc2VfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgbG9jaykKLXsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfcmVsZWFzZV9sb2NrKCVwKSBjYWxsZWRcbiIsIGxvY2spKTsKLSAgICBtdXRleF91bmxvY2soKG11dGV4X3QgKWxvY2spOwotfQpkaWZmIC0tZ2l0IGEvUHl0aG9uL3RocmVhZF9sd3AuaCBiL1B5dGhvbi90aHJlYWRfbHdwLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJhN2IzN2EuLjAwMDAwMDAKLS0tIGEvUHl0aG9uL3RocmVhZF9sd3AuaAorKysgL2Rldi9udWxsCkBAIC0xLDExMyArMCwwIEBACi0KLSNpbmNsdWRlIDxzdGRsaWIuaD4KLSNpbmNsdWRlIDxsd3AvbHdwLmg+Ci0jaW5jbHVkZSA8bHdwL3N0YWNrZGVwLmg+Ci0KLSNkZWZpbmUgU1RBQ0tTSVpFICAgICAgIDEwMDAgICAgLyogc3RhY2tzaXplIGZvciBhIHRocmVhZCAqLwotI2RlZmluZSBOU1RBQ0tTICAgICAgICAgMiAgICAgICAvKiAjIHN0YWNrcyB0byBiZSBwdXQgaW4gY2FjaGUgaW5pdGlhbGx5ICovCi0KLXN0cnVjdCBsb2NrIHsKLSAgICBpbnQgbG9ja19sb2NrZWQ7Ci0gICAgY3ZfdCBsb2NrX2NvbmR2YXI7Ci0gICAgbW9uX3QgbG9ja19tb25pdG9yOwotfTsKLQotCi0vKgotICogSW5pdGlhbGl6YXRpb24uCi0gKi8KLXN0YXRpYyB2b2lkIFB5VGhyZWFkX19pbml0X3RocmVhZCh2b2lkKQotewotICAgIGx3cF9zZXRzdGtjYWNoZShTVEFDS1NJWkUsIE5TVEFDS1MpOwotfQotCi0vKgotICogVGhyZWFkIHN1cHBvcnQuCi0gKi8KLQotCi1sb25nIFB5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQodm9pZCAoKmZ1bmMpKHZvaWQgKiksIHZvaWQgKmFyZykKLXsKLSAgICB0aHJlYWRfdCB0aWQ7Ci0gICAgaW50IHN1Y2Nlc3M7Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQgY2FsbGVkXG4iKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLSAgICBzdWNjZXNzID0gbHdwX2NyZWF0ZSgmdGlkLCBmdW5jLCBNSU5QUklPLCAwLCBsd3BfbmV3c3RrKCksIDEsIGFyZyk7Ci0gICAgcmV0dXJuIHN1Y2Nlc3MgPCAwID8gLTEgOiAwOwotfQotCi1sb25nIFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQodm9pZCkKLXsKLSAgICB0aHJlYWRfdCB0aWQ7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLSAgICBpZiAobHdwX3NlbGYoJnRpZCkgPCAwKQotICAgICAgICByZXR1cm4gLTE7Ci0gICAgcmV0dXJuIHRpZC50aHJlYWRfaWQ7Ci19Ci0KLXZvaWQgUHlUaHJlYWRfZXhpdF90aHJlYWQodm9pZCkKLXsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfZXhpdF90aHJlYWQgY2FsbGVkXG4iKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgZXhpdCgwKTsKLSAgICBsd3BfZGVzdHJveShTRUxGKTsKLX0KLQotLyoKLSAqIExvY2sgc3VwcG9ydC4KLSAqLwotUHlUaHJlYWRfdHlwZV9sb2NrIFB5VGhyZWFkX2FsbG9jYXRlX2xvY2sodm9pZCkKLXsKLSAgICBzdHJ1Y3QgbG9jayAqbG9jazsKLSAgICBleHRlcm4gY2hhciAqbWFsbG9jKHNpemVfdCk7Ci0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWxsb2NhdGVfbG9jayBjYWxsZWRcbiIpKTsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotCi0gICAgbG9jayA9IChzdHJ1Y3QgbG9jayAqKSBtYWxsb2Moc2l6ZW9mKHN0cnVjdCBsb2NrKSk7Ci0gICAgbG9jay0+bG9ja19sb2NrZWQgPSAwOwotICAgICh2b2lkKSBtb25fY3JlYXRlKCZsb2NrLT5sb2NrX21vbml0b3IpOwotICAgICh2b2lkKSBjdl9jcmVhdGUoJmxvY2stPmxvY2tfY29uZHZhciwgbG9jay0+bG9ja19tb25pdG9yKTsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWxsb2NhdGVfbG9jaygpIC0+ICVwXG4iLCBsb2NrKSk7Ci0gICAgcmV0dXJuIChQeVRocmVhZF90eXBlX2xvY2spIGxvY2s7Ci19Ci0KLXZvaWQgUHlUaHJlYWRfZnJlZV9sb2NrKFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrKQotewotICAgIGRwcmludGYoKCJQeVRocmVhZF9mcmVlX2xvY2soJXApIGNhbGxlZFxuIiwgbG9jaykpOwotICAgIG1vbl9kZXN0cm95KCgoc3RydWN0IGxvY2sgKikgbG9jayktPmxvY2tfbW9uaXRvcik7Ci0gICAgZnJlZSgoY2hhciAqKSBsb2NrKTsKLX0KLQotaW50IFB5VGhyZWFkX2FjcXVpcmVfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgbG9jaywgaW50IHdhaXRmbGFnKQotewotICAgIGludCBzdWNjZXNzOwotCi0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FjcXVpcmVfbG9jayglcCwgJWQpIGNhbGxlZFxuIiwgbG9jaywgd2FpdGZsYWcpKTsKLSAgICBzdWNjZXNzID0gMDsKLQotICAgICh2b2lkKSBtb25fZW50ZXIoKChzdHJ1Y3QgbG9jayAqKSBsb2NrKS0+bG9ja19tb25pdG9yKTsKLSAgICBpZiAod2FpdGZsYWcpCi0gICAgICAgIHdoaWxlICgoKHN0cnVjdCBsb2NrICopIGxvY2spLT5sb2NrX2xvY2tlZCkKLSAgICAgICAgICAgIGN2X3dhaXQoKChzdHJ1Y3QgbG9jayAqKSBsb2NrKS0+bG9ja19jb25kdmFyKTsKLSAgICBpZiAoISgoc3RydWN0IGxvY2sgKikgbG9jayktPmxvY2tfbG9ja2VkKSB7Ci0gICAgICAgIHN1Y2Nlc3MgPSAxOwotICAgICAgICAoKHN0cnVjdCBsb2NrICopIGxvY2spLT5sb2NrX2xvY2tlZCA9IDE7Ci0gICAgfQotICAgIGN2X2Jyb2FkY2FzdCgoKHN0cnVjdCBsb2NrICopIGxvY2spLT5sb2NrX2NvbmR2YXIpOwotICAgIG1vbl9leGl0KCgoc3RydWN0IGxvY2sgKikgbG9jayktPmxvY2tfbW9uaXRvcik7Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FjcXVpcmVfbG9jayglcCwgJWQpIC0+ICVkXG4iLCBsb2NrLCB3YWl0ZmxhZywgc3VjY2VzcykpOwotICAgIHJldHVybiBzdWNjZXNzOwotfQotCi12b2lkIFB5VGhyZWFkX3JlbGVhc2VfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgbG9jaykKLXsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfcmVsZWFzZV9sb2NrKCVwKSBjYWxsZWRcbiIsIGxvY2spKTsKLSAgICAodm9pZCkgbW9uX2VudGVyKCgoc3RydWN0IGxvY2sgKikgbG9jayktPmxvY2tfbW9uaXRvcik7Ci0gICAgKChzdHJ1Y3QgbG9jayAqKSBsb2NrKS0+bG9ja19sb2NrZWQgPSAwOwotICAgIGN2X2Jyb2FkY2FzdCgoKHN0cnVjdCBsb2NrICopIGxvY2spLT5sb2NrX2NvbmR2YXIpOwotICAgIG1vbl9leGl0KCgoc3RydWN0IGxvY2sgKikgbG9jayktPmxvY2tfbW9uaXRvcik7Ci19CmRpZmYgLS1naXQgYS9QeXRob24vdGhyZWFkX3B0aC5oIGIvUHl0aG9uL3RocmVhZF9wdGguaAppbmRleCA4MmEwMGU3Li41NzA0MjY2IDEwMDY0NAotLS0gYS9QeXRob24vdGhyZWFkX3B0aC5oCisrKyBiL1B5dGhvbi90aHJlYWRfcHRoLmgKQEAgLTY5LDkgKzY5LDggQEAKICAgICB2b2xhdGlsZSBwdGhfdCB0aHJlYWRpZDsKICAgICBpZiAoIWluaXRpYWxpemVkKQogICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotICAgIC8qIEp1bXAgdGhyb3VnaCBzb21lIGhvb3BzIGZvciBBbHBoYSBPU0YvMSAqLwogICAgIHRocmVhZGlkID0gcHRoX3NlbGYoKTsKLSAgICByZXR1cm4gKGxvbmcpICoobG9uZyAqKSAmdGhyZWFkaWQ7CisgICAgcmV0dXJuIChsb25nKSB0aHJlYWRpZDsKIH0KIAogdm9pZCBQeVRocmVhZF9leGl0X3RocmVhZCh2b2lkKQpkaWZmIC0tZ2l0IGEvUHl0aG9uL3RocmVhZF9wdGhyZWFkLmggYi9QeXRob24vdGhyZWFkX3B0aHJlYWQuaAppbmRleCAzZWZjY2Y2Li40YjYxZTE4IDEwMDY0NAotLS0gYS9QeXRob24vdGhyZWFkX3B0aHJlYWQuaAorKysgYi9QeXRob24vdGhyZWFkX3B0aHJlYWQuaApAQCAtMTQ0LDcgKzE0NCw3IEBACiAgKiBJbml0aWFsaXphdGlvbi4KICAqLwogCi0jaWZkZWYgX0hBVkVfQlNESQorI2lmIGRlZmluZWQoX0hBVkVfQlNESSkKIHN0YXRpYwogdm9pZCBfbm9vcCh2b2lkKQogewpAQCAtMjQwLDggKzI0MCw3IEBACiAgICBob3NlZCIgYmVjYXVzZToKICAgICAgLSBJdCBkb2VzIG5vdCBndWFyYW50ZWUgdGhlIHByb21pc2UgdGhhdCBhIG5vbi16ZXJvIGludGVnZXIgaXMgcmV0dXJuZWQuCiAgICAgIC0gVGhlIGNhc3QgdG8gbG9uZyBpcyBpbmhlcmVudGx5IHVuc2FmZS4KLSAgICAgLSBJdCBpcyBub3QgY2xlYXIgdGhhdCB0aGUgJ3ZvbGF0aWxlJyAoZm9yIEFJWD8pIGFuZCB1Z2x5IGNhc3RpbmcgaW4gdGhlCi0gICAgICAgbGF0dGVyIHJldHVybiBzdGF0ZW1lbnQgKGZvciBBbHBoYSBPU0YvMSkgYXJlIGFueSBsb25nZXIgbmVjZXNzYXJ5LgorICAgICAtIEl0IGlzIG5vdCBjbGVhciB0aGF0IHRoZSAndm9sYXRpbGUnIChmb3IgQUlYPykgYXJlIGFueSBsb25nZXIgbmVjZXNzYXJ5LgogKi8KIGxvbmcKIFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQodm9pZCkKQEAgLTI0OSwxMyArMjQ4LDggQEAKICAgICB2b2xhdGlsZSBwdGhyZWFkX3QgdGhyZWFkaWQ7CiAgICAgaWYgKCFpbml0aWFsaXplZCkKICAgICAgICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLSAgICAvKiBKdW1wIHRocm91Z2ggc29tZSBob29wcyBmb3IgQWxwaGEgT1NGLzEgKi8KICAgICB0aHJlYWRpZCA9IHB0aHJlYWRfc2VsZigpOwotI2lmIFNJWkVPRl9QVEhSRUFEX1QgPD0gU0laRU9GX0xPTkcKICAgICByZXR1cm4gKGxvbmcpIHRocmVhZGlkOwotI2Vsc2UKLSAgICByZXR1cm4gKGxvbmcpICoobG9uZyAqKSAmdGhyZWFkaWQ7Ci0jZW5kaWYKIH0KIAogdm9pZApkaWZmIC0tZ2l0IGEvUHl0aG9uL3RocmVhZF9zZ2kuaCBiL1B5dGhvbi90aHJlYWRfc2dpLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc3MWFiMmMuLjAwMDAwMDAKLS0tIGEvUHl0aG9uL3RocmVhZF9zZ2kuaAorKysgL2Rldi9udWxsCkBAIC0xLDI1OSArMCwwIEBACi0KLSNpbmNsdWRlIDxzdGRsaWIuaD4KLSNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgPHNpZ25hbC5oPgotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy93YWl0Lmg+Ci0jaW5jbHVkZSA8c3lzL3ByY3RsLmg+Ci0jaW5jbHVkZSA8dWxvY2tzLmg+Ci0jaW5jbHVkZSA8ZXJybm8uaD4KLQotI2RlZmluZSBIRFJfU0laRSAgICAgICAgMjY4MCAgICAvKiBzaXplb2YodXNoZHJfdCkgKi8KLSNkZWZpbmUgTUFYUFJPQyAgICAgICAgIDEwMCAgICAgLyogbWF4ICMgb2YgdGhyZWFkcyB0aGF0IGNhbiBiZSBzdGFydGVkICovCi0KLXN0YXRpYyB1c3B0cl90ICpzaGFyZWRfYXJlbmE7Ci1zdGF0aWMgdWxvY2tfdCBjb3VudF9sb2NrOyAgICAgIC8qIHByb3RlY3Rpb24gZm9yIHNvbWUgdmFyaWFibGVzICovCi1zdGF0aWMgdWxvY2tfdCB3YWl0X2xvY2s7ICAgICAgIC8qIGxvY2sgdXNlZCB0byB3YWl0IGZvciBvdGhlciB0aHJlYWRzICovCi1zdGF0aWMgaW50IHdhaXRpbmdfZm9yX3RocmVhZHM7IC8qIHByb3RlY3RlZCBieSBjb3VudF9sb2NrICovCi1zdGF0aWMgaW50IG50aHJlYWRzOyAgICAgICAgICAgIC8qIHByb3RlY3RlZCBieSBjb3VudF9sb2NrICovCi1zdGF0aWMgaW50IGV4aXRfc3RhdHVzOwotc3RhdGljIGludCBleGl0aW5nOyAgICAgICAgICAgICAvKiB3ZSdyZSBhbHJlYWR5IGV4aXRpbmcgKGZvciBtYXliZV9leGl0KSAqLwotc3RhdGljIHBpZF90IG15X3BpZDsgICAgICAgICAgICAvKiBQSUQgb2YgbWFpbiB0aHJlYWQgKi8KLXN0YXRpYyBzdHJ1Y3QgcGlkbGlzdCB7Ci0gICAgcGlkX3QgcGFyZW50OwotICAgIHBpZF90IGNoaWxkOwotfSBwaWRsaXN0W01BWFBST0NdOyAgICAgLyogUElEcyBvZiBvdGhlciB0aHJlYWRzOyBwcm90ZWN0ZWQgYnkgY291bnRfbG9jayAqLwotc3RhdGljIGludCBtYXhwaWRpbmRleDsgICAgICAgICAvKiAjIG9mIFBJRHMgaW4gcGlkbGlzdCAqLwotLyoKLSAqIEluaXRpYWxpemF0aW9uLgotICovCi1zdGF0aWMgdm9pZCBQeVRocmVhZF9faW5pdF90aHJlYWQodm9pZCkKLXsKLSNpZmRlZiBVU0VfREwKLSAgICBsb25nIGFkZHIsIHNpemU7Ci0jZW5kaWYgLyogVVNFX0RMICovCi0KLQotI2lmZGVmIFVTRV9ETAotICAgIGlmICgoc2l6ZSA9IHVzY29uZmlnKENPTkZfSU5JVFNJWkUsIDY0KjEwMjQpKSA8IDApCi0gICAgICAgIHBlcnJvcigidXNjb25maWcgLSBDT05GX0lOSVRTSVpFIChjaGVjaykiKTsKLSAgICBpZiAodXNjb25maWcoQ09ORl9JTklUU0laRSwgc2l6ZSkgPCAwKQotICAgICAgICBwZXJyb3IoInVzY29uZmlnIC0gQ09ORl9JTklUU0laRSAocmVzZXQpIik7Ci0gICAgYWRkciA9IChsb25nKSBkbF9nZXRyYW5nZShzaXplICsgSERSX1NJWkUpOwotICAgIGRwcmludGYoKCJ0cnlpbmcgdG8gdXNlIGFkZHIgJXAtJXAgZm9yIHNoYXJlZCBhcmVuYVxuIiwgYWRkciwgYWRkcitzaXplKSk7Ci0gICAgZXJybm8gPSAwOwotICAgIGlmICgoYWRkciA9IHVzY29uZmlnKENPTkZfQVRUQUNIQUREUiwgYWRkcikpIDwgMCAmJiBlcnJubyAhPSAwKQotICAgICAgICBwZXJyb3IoInVzY29uZmlnIC0gQ09ORl9BVFRBQ0hBRERSIChzZXQpIik7Ci0jZW5kaWYgLyogVVNFX0RMICovCi0gICAgaWYgKHVzY29uZmlnKENPTkZfSU5JVFVTRVJTLCAxNikgPCAwKQotICAgICAgICBwZXJyb3IoInVzY29uZmlnIC0gQ09ORl9JTklUVVNFUlMiKTsKLSAgICBteV9waWQgPSBnZXRwaWQoKTsgICAgICAgICAgLyogc28gdGhhdCB3ZSBrbm93IHdoaWNoIGlzIHRoZSBtYWluIHRocmVhZCAqLwotICAgIGlmICh1c2NvbmZpZyhDT05GX0FSRU5BVFlQRSwgVVNfU0hBUkVET05MWSkgPCAwKQotICAgICAgICBwZXJyb3IoInVzY29uZmlnIC0gQ09ORl9BUkVOQVRZUEUiKTsKLSAgICB1c2NvbmZpZyhDT05GX0xPQ0tUWVBFLCBVU19ERUJVRyk7IC8qIFhYWCAqLwotI2lmZGVmIFB5X0RFQlVHCi0gICAgaWYgKHRocmVhZF9kZWJ1ZyAmIDQpCi0gICAgICAgIHVzY29uZmlnKENPTkZfTE9DS1RZUEUsIFVTX0RFQlVHUExVUyk7Ci0gICAgZWxzZSBpZiAodGhyZWFkX2RlYnVnICYgMikKLSAgICAgICAgdXNjb25maWcoQ09ORl9MT0NLVFlQRSwgVVNfREVCVUcpOwotI2VuZGlmIC8qIFB5X0RFQlVHICovCi0gICAgaWYgKChzaGFyZWRfYXJlbmEgPSB1c2luaXQodG1wbmFtKDApKSkgPT0gMCkKLSAgICAgICAgcGVycm9yKCJ1c2luaXQiKTsKLSNpZmRlZiBVU0VfREwKLSAgICBpZiAodXNjb25maWcoQ09ORl9BVFRBQ0hBRERSLCBhZGRyKSA8IDApIC8qIHJlc2V0IGFkZHJlc3MgKi8KLSAgICAgICAgcGVycm9yKCJ1c2NvbmZpZyAtIENPTkZfQVRUQUNIQUREUiAocmVzZXQpIik7Ci0jZW5kaWYgLyogVVNFX0RMICovCi0gICAgaWYgKChjb3VudF9sb2NrID0gdXNuZXdsb2NrKHNoYXJlZF9hcmVuYSkpID09IE5VTEwpCi0gICAgICAgIHBlcnJvcigidXNuZXdsb2NrIChjb3VudF9sb2NrKSIpOwotICAgICh2b2lkKSB1c2luaXRsb2NrKGNvdW50X2xvY2spOwotICAgIGlmICgod2FpdF9sb2NrID0gdXNuZXdsb2NrKHNoYXJlZF9hcmVuYSkpID09IE5VTEwpCi0gICAgICAgIHBlcnJvcigidXNuZXdsb2NrICh3YWl0X2xvY2spIik7Ci0gICAgZHByaW50ZigoImFyZW5hIHN0YXJ0OiAlcCwgYXJlbmEgc2l6ZTogJWxkXG4iLCAgc2hhcmVkX2FyZW5hLCAobG9uZykgdXNjb25maWcoQ09ORl9HRVRTSVpFLCBzaGFyZWRfYXJlbmEpKSk7Ci19Ci0KLS8qCi0gKiBUaHJlYWQgc3VwcG9ydC4KLSAqLwotCi1zdGF0aWMgdm9pZCBjbGVhbl90aHJlYWRzKHZvaWQpCi17Ci0gICAgaW50IGksIGo7Ci0gICAgcGlkX3QgbXlwaWQsIHBpZDsKLQotICAgIC8qIGNsZWFuIHVwIGFueSBleGl0ZWQgdGhyZWFkcyAqLwotICAgIG15cGlkID0gZ2V0cGlkKCk7Ci0gICAgaSA9IDA7Ci0gICAgd2hpbGUgKGkgPCBtYXhwaWRpbmRleCkgewotICAgICAgICBpZiAocGlkbGlzdFtpXS5wYXJlbnQgPT0gbXlwaWQgJiYgKHBpZCA9IHBpZGxpc3RbaV0uY2hpbGQpID4gMCkgewotICAgICAgICAgICAgcGlkID0gd2FpdHBpZChwaWQsIDAsIFdOT0hBTkcpOwotICAgICAgICAgICAgaWYgKHBpZCA+IDApIHsKLSAgICAgICAgICAgICAgICAvKiBhIHRocmVhZCBoYXMgZXhpdGVkICovCi0gICAgICAgICAgICAgICAgcGlkbGlzdFtpXSA9IHBpZGxpc3RbLS1tYXhwaWRpbmRleF07Ci0gICAgICAgICAgICAgICAgLyogcmVtb3ZlIHJlZmVyZW5jZXMgdG8gY2hpbGRyZW4gb2YgZGVhZCBwcm9jICovCi0gICAgICAgICAgICAgICAgZm9yIChqID0gMDsgaiA8IG1heHBpZGluZGV4OyBqKyspCi0gICAgICAgICAgICAgICAgICAgIGlmIChwaWRsaXN0W2pdLnBhcmVudCA9PSBwaWQpCi0gICAgICAgICAgICAgICAgICAgICAgICBwaWRsaXN0W2pdLmNoaWxkID0gLTE7Ci0gICAgICAgICAgICAgICAgY29udGludWU7IC8qIGRvbid0IGluY3JlbWVudCBpICovCi0gICAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgaSsrOwotICAgIH0KLSAgICAvKiBjbGVhbiB1cCB0aGUgbGlzdCAqLwotICAgIGkgPSAwOwotICAgIHdoaWxlIChpIDwgbWF4cGlkaW5kZXgpIHsKLSAgICAgICAgaWYgKHBpZGxpc3RbaV0uY2hpbGQgPT0gLTEpIHsKLSAgICAgICAgICAgIHBpZGxpc3RbaV0gPSBwaWRsaXN0Wy0tbWF4cGlkaW5kZXhdOwotICAgICAgICAgICAgY29udGludWU7IC8qIGRvbid0IGluY3JlbWVudCBpICovCi0gICAgICAgIH0KLSAgICAgICAgaSsrOwotICAgIH0KLX0KLQotbG9uZyBQeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkKHZvaWQgKCpmdW5jKSh2b2lkICopLCB2b2lkICphcmcpCi17Ci0jaWZkZWYgVVNFX0RMCi0gICAgbG9uZyBhZGRyLCBzaXplOwotICAgIHN0YXRpYyBpbnQgbG9jYWxfaW5pdGlhbGl6ZWQgPSAwOwotI2VuZGlmIC8qIFVTRV9ETCAqLwotICAgIGludCBzdWNjZXNzID0gMDsgICAgICAgICAgICAvKiBpbml0IG5vdCBuZWVkZWQgd2hlbiBTT0xBUklTX1RIUkVBRFMgYW5kICovCi0gICAgICAgICAgICAgICAgLyogQ19USFJFQURTIGltcGxlbWVudGVkIHByb3Blcmx5ICovCi0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfc3RhcnRfbmV3X3RocmVhZCBjYWxsZWRcbiIpKTsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotICAgIHN3aXRjaCAodXNzZXRsb2NrKGNvdW50X2xvY2spKSB7Ci0gICAgY2FzZSAwOiByZXR1cm4gMDsKLSAgICBjYXNlIC0xOiBwZXJyb3IoInVzc2V0bG9jayAoY291bnRfbG9jaykiKTsKLSAgICB9Ci0gICAgaWYgKG1heHBpZGluZGV4ID49IE1BWFBST0MpCi0gICAgICAgIHN1Y2Nlc3MgPSAtMTsKLSAgICBlbHNlIHsKLSNpZmRlZiBVU0VfREwKLSAgICAgICAgaWYgKCFsb2NhbF9pbml0aWFsaXplZCkgewotICAgICAgICAgICAgaWYgKChzaXplID0gdXNjb25maWcoQ09ORl9JTklUU0laRSwgNjQqMTAyNCkpIDwgMCkKLSAgICAgICAgICAgICAgICBwZXJyb3IoInVzY29uZmlnIC0gQ09ORl9JTklUU0laRSAoY2hlY2spIik7Ci0gICAgICAgICAgICBpZiAodXNjb25maWcoQ09ORl9JTklUU0laRSwgc2l6ZSkgPCAwKQotICAgICAgICAgICAgICAgIHBlcnJvcigidXNjb25maWcgLSBDT05GX0lOSVRTSVpFIChyZXNldCkiKTsKLSAgICAgICAgICAgIGFkZHIgPSAobG9uZykgZGxfZ2V0cmFuZ2Uoc2l6ZSArIEhEUl9TSVpFKTsKLSAgICAgICAgICAgIGRwcmludGYoKCJ0cnlpbmcgdG8gdXNlIGFkZHIgJXAtJXAgZm9yIHNwcm9jXG4iLAotICAgICAgICAgICAgICAgICAgICAgYWRkciwgYWRkcitzaXplKSk7Ci0gICAgICAgICAgICBlcnJubyA9IDA7Ci0gICAgICAgICAgICBpZiAoKGFkZHIgPSB1c2NvbmZpZyhDT05GX0FUVEFDSEFERFIsIGFkZHIpKSA8IDAgJiYKLSAgICAgICAgICAgICAgICBlcnJubyAhPSAwKQotICAgICAgICAgICAgICAgIHBlcnJvcigidXNjb25maWcgLSBDT05GX0FUVEFDSEFERFIgKHNldCkiKTsKLSAgICAgICAgfQotI2VuZGlmIC8qIFVTRV9ETCAqLwotICAgICAgICBjbGVhbl90aHJlYWRzKCk7Ci0gICAgICAgIGlmICgoc3VjY2VzcyA9IHNwcm9jKGZ1bmMsIFBSX1NBTEwsIGFyZykpIDwgMCkKLSAgICAgICAgICAgIHBlcnJvcigic3Byb2MiKTsKLSNpZmRlZiBVU0VfREwKLSAgICAgICAgaWYgKCFsb2NhbF9pbml0aWFsaXplZCkgewotICAgICAgICAgICAgaWYgKHVzY29uZmlnKENPTkZfQVRUQUNIQUREUiwgYWRkcikgPCAwKQotICAgICAgICAgICAgICAgIC8qIHJlc2V0IGFkZHJlc3MgKi8KLSAgICAgICAgICAgICAgICBwZXJyb3IoInVzY29uZmlnIC0gQ09ORl9BVFRBQ0hBRERSIChyZXNldCkiKTsKLSAgICAgICAgICAgIGxvY2FsX2luaXRpYWxpemVkID0gMTsKLSAgICAgICAgfQotI2VuZGlmIC8qIFVTRV9ETCAqLwotICAgICAgICBpZiAoc3VjY2VzcyA+PSAwKSB7Ci0gICAgICAgICAgICBudGhyZWFkcysrOwotICAgICAgICAgICAgcGlkbGlzdFttYXhwaWRpbmRleF0ucGFyZW50ID0gZ2V0cGlkKCk7Ci0gICAgICAgICAgICBwaWRsaXN0W21heHBpZGluZGV4KytdLmNoaWxkID0gc3VjY2VzczsKLSAgICAgICAgICAgIGRwcmludGYoKCJwaWRsaXN0WyVkXSA9ICVkXG4iLAotICAgICAgICAgICAgICAgICAgICAgbWF4cGlkaW5kZXgtMSwgc3VjY2VzcykpOwotICAgICAgICB9Ci0gICAgfQotICAgIGlmICh1c3Vuc2V0bG9jayhjb3VudF9sb2NrKSA8IDApCi0gICAgICAgIHBlcnJvcigidXN1bnNldGxvY2sgKGNvdW50X2xvY2spIik7Ci0gICAgcmV0dXJuIHN1Y2Nlc3M7Ci19Ci0KLWxvbmcgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCh2b2lkKQotewotICAgIHJldHVybiBnZXRwaWQoKTsKLX0KLQotdm9pZCBQeVRocmVhZF9leGl0X3RocmVhZCh2b2lkKQotewotICAgIGRwcmludGYoKCJQeVRocmVhZF9leGl0X3RocmVhZCBjYWxsZWRcbiIpKTsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBleGl0KDApOwotICAgIGlmICh1c3NldGxvY2soY291bnRfbG9jaykgPCAwKQotICAgICAgICBwZXJyb3IoInVzc2V0bG9jayAoY291bnRfbG9jaykiKTsKLSAgICBudGhyZWFkcy0tOwotICAgIGlmIChnZXRwaWQoKSA9PSBteV9waWQpIHsKLSAgICAgICAgLyogbWFpbiB0aHJlYWQ7IHdhaXQgZm9yIG90aGVyIHRocmVhZHMgdG8gZXhpdCAqLwotICAgICAgICBleGl0aW5nID0gMTsKLSAgICAgICAgd2FpdGluZ19mb3JfdGhyZWFkcyA9IDE7Ci0gICAgICAgIGlmICh1c3NldGxvY2sod2FpdF9sb2NrKSA8IDApCi0gICAgICAgICAgICBwZXJyb3IoInVzc2V0bG9jayAod2FpdF9sb2NrKSIpOwotICAgICAgICBmb3IgKDs7KSB7Ci0gICAgICAgICAgICBpZiAobnRocmVhZHMgPCAwKSB7Ci0gICAgICAgICAgICAgICAgZHByaW50ZigoInJlYWxseSBleGl0ICglZClcbiIsIGV4aXRfc3RhdHVzKSk7Ci0gICAgICAgICAgICAgICAgZXhpdChleGl0X3N0YXR1cyk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZiAodXN1bnNldGxvY2soY291bnRfbG9jaykgPCAwKQotICAgICAgICAgICAgICAgIHBlcnJvcigidXN1bnNldGxvY2sgKGNvdW50X2xvY2spIik7Ci0gICAgICAgICAgICBkcHJpbnRmKCgid2FpdGluZyBmb3Igb3RoZXIgdGhyZWFkcyAoJWQpXG4iLCBudGhyZWFkcykpOwotICAgICAgICAgICAgaWYgKHVzc2V0bG9jayh3YWl0X2xvY2spIDwgMCkKLSAgICAgICAgICAgICAgICBwZXJyb3IoInVzc2V0bG9jayAod2FpdF9sb2NrKSIpOwotICAgICAgICAgICAgaWYgKHVzc2V0bG9jayhjb3VudF9sb2NrKSA8IDApCi0gICAgICAgICAgICAgICAgcGVycm9yKCJ1c3NldGxvY2sgKGNvdW50X2xvY2spIik7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgLyogbm90IHRoZSBtYWluIHRocmVhZCAqLwotICAgIGlmICh3YWl0aW5nX2Zvcl90aHJlYWRzKSB7Ci0gICAgICAgIGRwcmludGYoKCJtYWluIHRocmVhZCBpcyB3YWl0aW5nXG4iKSk7Ci0gICAgICAgIGlmICh1c3Vuc2V0bG9jayh3YWl0X2xvY2spIDwgMCkKLSAgICAgICAgICAgIHBlcnJvcigidXN1bnNldGxvY2sgKHdhaXRfbG9jaykiKTsKLSAgICB9Ci0gICAgaWYgKHVzdW5zZXRsb2NrKGNvdW50X2xvY2spIDwgMCkKLSAgICAgICAgcGVycm9yKCJ1c3Vuc2V0bG9jayAoY291bnRfbG9jaykiKTsKLSAgICBfZXhpdCgwKTsKLX0KLQotLyoKLSAqIExvY2sgc3VwcG9ydC4KLSAqLwotUHlUaHJlYWRfdHlwZV9sb2NrIFB5VGhyZWFkX2FsbG9jYXRlX2xvY2sodm9pZCkKLXsKLSAgICB1bG9ja190IGxvY2s7Ci0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWxsb2NhdGVfbG9jayBjYWxsZWRcbiIpKTsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotCi0gICAgaWYgKChsb2NrID0gdXNuZXdsb2NrKHNoYXJlZF9hcmVuYSkpID09IE5VTEwpCi0gICAgICAgIHBlcnJvcigidXNuZXdsb2NrIik7Ci0gICAgKHZvaWQpIHVzaW5pdGxvY2sobG9jayk7Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FsbG9jYXRlX2xvY2soKSAtPiAlcFxuIiwgbG9jaykpOwotICAgIHJldHVybiAoUHlUaHJlYWRfdHlwZV9sb2NrKSBsb2NrOwotfQotCi12b2lkIFB5VGhyZWFkX2ZyZWVfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgbG9jaykKLXsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfZnJlZV9sb2NrKCVwKSBjYWxsZWRcbiIsIGxvY2spKTsKLSAgICB1c2ZyZWVsb2NrKCh1bG9ja190KSBsb2NrLCBzaGFyZWRfYXJlbmEpOwotfQotCi1pbnQgUHlUaHJlYWRfYWNxdWlyZV9sb2NrKFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrLCBpbnQgd2FpdGZsYWcpCi17Ci0gICAgaW50IHN1Y2Nlc3M7Ci0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWNxdWlyZV9sb2NrKCVwLCAlZCkgY2FsbGVkXG4iLCBsb2NrLCB3YWl0ZmxhZykpOwotICAgIGVycm5vID0gMDsgICAgICAgICAgICAgICAgICAvKiBjbGVhciBpdCBqdXN0IGluIGNhc2UgKi8KLSAgICBpZiAod2FpdGZsYWcpCi0gICAgICAgIHN1Y2Nlc3MgPSB1c3NldGxvY2soKHVsb2NrX3QpIGxvY2spOwotICAgIGVsc2UKLSAgICAgICAgc3VjY2VzcyA9IHVzY3NldGxvY2soKHVsb2NrX3QpIGxvY2ssIDEpOyAvKiBUcnkgaXQgb25jZSAqLwotICAgIGlmIChzdWNjZXNzIDwgMCkKLSAgICAgICAgcGVycm9yKHdhaXRmbGFnID8gInVzc2V0bG9jayIgOiAidXNjc2V0bG9jayIpOwotICAgIGRwcmludGYoKCJQeVRocmVhZF9hY3F1aXJlX2xvY2soJXAsICVkKSAtPiAlZFxuIiwgbG9jaywgd2FpdGZsYWcsIHN1Y2Nlc3MpKTsKLSAgICByZXR1cm4gc3VjY2VzczsKLX0KLQotdm9pZCBQeVRocmVhZF9yZWxlYXNlX2xvY2soUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2spCi17Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX3JlbGVhc2VfbG9jayglcCkgY2FsbGVkXG4iLCBsb2NrKSk7Ci0gICAgaWYgKHVzdW5zZXRsb2NrKCh1bG9ja190KSBsb2NrKSA8IDApCi0gICAgICAgIHBlcnJvcigidXN1bnNldGxvY2siKTsKLX0KZGlmZiAtLWdpdCBhL1B5dGhvbi90aHJlYWRfc29sYXJpcy5oIGIvUHl0aG9uL3RocmVhZF9zb2xhcmlzLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFjZTFjZmMuLjAwMDAwMDAKLS0tIGEvUHl0aG9uL3RocmVhZF9zb2xhcmlzLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMzAgKzAsMCBAQAotCi0jaW5jbHVkZSA8c3RkbGliLmg+Ci0jaW5jbHVkZSA8c3RkaW8uaD4KLSNpbmNsdWRlIDxlcnJuby5oPgotI2luY2x1ZGUgPC91c3IvaW5jbHVkZS90aHJlYWQuaD4KLSN1bmRlZiBfUE9TSVhfVEhSRUFEUwotCi0KLS8qCi0gKiBJbml0aWFsaXphdGlvbi4KLSAqLwotc3RhdGljIHZvaWQgUHlUaHJlYWRfX2luaXRfdGhyZWFkKHZvaWQpCi17Ci19Ci0KLS8qCi0gKiBUaHJlYWQgc3VwcG9ydC4KLSAqLwotc3RydWN0IGZ1bmNfYXJnIHsKLSAgICB2b2lkICgqZnVuYykodm9pZCAqKTsKLSAgICB2b2lkICphcmc7Ci19OwotCi1zdGF0aWMgdm9pZCAqCi1uZXdfZnVuYyh2b2lkICpmdW5jYXJnKQotewotICAgIHZvaWQgKCpmdW5jKSh2b2lkICopOwotICAgIHZvaWQgKmFyZzsKLQotICAgIGZ1bmMgPSAoKHN0cnVjdCBmdW5jX2FyZyAqKSBmdW5jYXJnKS0+ZnVuYzsKLSAgICBhcmcgPSAoKHN0cnVjdCBmdW5jX2FyZyAqKSBmdW5jYXJnKS0+YXJnOwotICAgIGZyZWUoZnVuY2FyZyk7Ci0gICAgKCpmdW5jKShhcmcpOwotICAgIHJldHVybiAwOwotfQotCi0KLWxvbmcKLVB5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQodm9pZCAoKmZ1bmMpKHZvaWQgKiksIHZvaWQgKmFyZykKLXsKLSAgICB0aHJlYWRfdCB0aWQ7Ci0gICAgc3RydWN0IGZ1bmNfYXJnICpmdW5jYXJnOwotCi0gICAgZHByaW50ZigoIlB5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQgY2FsbGVkXG4iKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICAgICAgUHlUaHJlYWRfaW5pdF90aHJlYWQoKTsKLSAgICBmdW5jYXJnID0gKHN0cnVjdCBmdW5jX2FyZyAqKSBtYWxsb2Moc2l6ZW9mKHN0cnVjdCBmdW5jX2FyZykpOwotICAgIGZ1bmNhcmctPmZ1bmMgPSBmdW5jOwotICAgIGZ1bmNhcmctPmFyZyA9IGFyZzsKLSAgICBpZiAodGhyX2NyZWF0ZSgwLCAwLCBuZXdfZnVuYywgZnVuY2FyZywKLSAgICAgICAgICAgICAgICAgICBUSFJfREVUQUNIRUQgfCBUSFJfTkVXX0xXUCwgJnRpZCkpIHsKLSAgICAgICAgcGVycm9yKCJ0aHJfY3JlYXRlIik7Ci0gICAgICAgIGZyZWUoKHZvaWQgKikgZnVuY2FyZyk7Ci0gICAgICAgIHJldHVybiAtMTsKLSAgICB9Ci0gICAgcmV0dXJuIHRpZDsKLX0KLQotbG9uZwotUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCh2b2lkKQotewotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIFB5VGhyZWFkX2luaXRfdGhyZWFkKCk7Ci0gICAgcmV0dXJuIHRocl9zZWxmKCk7Ci19Ci0KLXZvaWQKLVB5VGhyZWFkX2V4aXRfdGhyZWFkKHZvaWQpCi17Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX2V4aXRfdGhyZWFkIGNhbGxlZFxuIikpOwotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIGV4aXQoMCk7Ci0gICAgdGhyX2V4aXQoMCk7Ci19Ci0KLS8qCi0gKiBMb2NrIHN1cHBvcnQuCi0gKi8KLVB5VGhyZWFkX3R5cGVfbG9jawotUHlUaHJlYWRfYWxsb2NhdGVfbG9jayh2b2lkKQotewotICAgIG11dGV4X3QgKmxvY2s7Ci0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWxsb2NhdGVfbG9jayBjYWxsZWRcbiIpKTsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotCi0gICAgbG9jayA9IChtdXRleF90ICopIG1hbGxvYyhzaXplb2YobXV0ZXhfdCkpOwotICAgIGlmIChtdXRleF9pbml0KGxvY2ssIFVTWU5DX1RIUkVBRCwgMCkpIHsKLSAgICAgICAgcGVycm9yKCJtdXRleF9pbml0Iik7Ci0gICAgICAgIGZyZWUoKHZvaWQgKikgbG9jayk7Ci0gICAgICAgIGxvY2sgPSAwOwotICAgIH0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWxsb2NhdGVfbG9jaygpIC0+ICVwXG4iLCBsb2NrKSk7Ci0gICAgcmV0dXJuIChQeVRocmVhZF90eXBlX2xvY2spIGxvY2s7Ci19Ci0KLXZvaWQKLVB5VGhyZWFkX2ZyZWVfbG9jayhQeVRocmVhZF90eXBlX2xvY2sgbG9jaykKLXsKLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfZnJlZV9sb2NrKCVwKSBjYWxsZWRcbiIsIGxvY2spKTsKLSAgICBtdXRleF9kZXN0cm95KChtdXRleF90ICopIGxvY2spOwotICAgIGZyZWUoKHZvaWQgKikgbG9jayk7Ci19Ci0KLWludAotUHlUaHJlYWRfYWNxdWlyZV9sb2NrKFB5VGhyZWFkX3R5cGVfbG9jayBsb2NrLCBpbnQgd2FpdGZsYWcpCi17Ci0gICAgaW50IHN1Y2Nlc3M7Ci0KLSAgICBkcHJpbnRmKCgiUHlUaHJlYWRfYWNxdWlyZV9sb2NrKCVwLCAlZCkgY2FsbGVkXG4iLCBsb2NrLCB3YWl0ZmxhZykpOwotICAgIGlmICh3YWl0ZmxhZykKLSAgICAgICAgc3VjY2VzcyA9IG11dGV4X2xvY2soKG11dGV4X3QgKikgbG9jayk7Ci0gICAgZWxzZQotICAgICAgICBzdWNjZXNzID0gbXV0ZXhfdHJ5bG9jaygobXV0ZXhfdCAqKSBsb2NrKTsKLSAgICBpZiAoc3VjY2VzcyA8IDApCi0gICAgICAgIHBlcnJvcih3YWl0ZmxhZyA/ICJtdXRleF9sb2NrIiA6ICJtdXRleF90cnlsb2NrIik7Ci0gICAgZWxzZQotICAgICAgICBzdWNjZXNzID0gIXN1Y2Nlc3M7IC8qIHNvbGFyaXMgZG9lcyBpdCB0aGUgb3RoZXIgd2F5IHJvdW5kICovCi0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FjcXVpcmVfbG9jayglcCwgJWQpIC0+ICVkXG4iLCBsb2NrLCB3YWl0ZmxhZywgc3VjY2VzcykpOwotICAgIHJldHVybiBzdWNjZXNzOwotfQotCi12b2lkCi1QeVRocmVhZF9yZWxlYXNlX2xvY2soUHlUaHJlYWRfdHlwZV9sb2NrIGxvY2spCi17Ci0gICAgZHByaW50ZigoIlB5VGhyZWFkX3JlbGVhc2VfbG9jayglcCkgY2FsbGVkXG4iLCBsb2NrKSk7Ci0gICAgaWYgKG11dGV4X3VubG9jaygobXV0ZXhfdCAqKSBsb2NrKSkKLSAgICAgICAgcGVycm9yKCJtdXRleF91bmxvY2siKTsKLX0KZGlmZiAtLWdpdCBhL1B5dGhvbi90aHJlYWRfd2luY2UuaCBiL1B5dGhvbi90aHJlYWRfd2luY2UuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTFkZGMwMi4uMDAwMDAwMAotLS0gYS9QeXRob24vdGhyZWFkX3dpbmNlLmgKKysrIC9kZXYvbnVsbApAQCAtMSwxMzYgKzAsMCBAQAotCi0vKiBUaGlzIGNvZGUgaW1wbGVtZW50ZWQgYnkgTWFyayBIYW1tb25kIChNSGFtbW9uZEBza2lwcGluZXQuY29tLmF1KSAqLwotCi0jaW5jbHVkZSA8d2luZG93cy5oPgotI2luY2x1ZGUgPGxpbWl0cy5oPgotI2luY2x1ZGUgPHB5ZGVidWcuaD4KLQotbG9uZyBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KHZvaWQpOwotCi0vKgotICogQ2hhbmdlIGFsbCBoZWFkZXJzIHRvIHB1cmUgQU5TSSBhcyBubyBvbmUgd2lsbCB1c2UgSyZSIHN0eWxlIG9uIGFuCi0gKiBOVAotICovCi0KLS8qCi0gKiBJbml0aWFsaXphdGlvbiBvZiB0aGUgQyBwYWNrYWdlLCBzaG91bGQgbm90IGJlIG5lZWRlZC4KLSAqLwotc3RhdGljIHZvaWQgUHlUaHJlYWRfX2luaXRfdGhyZWFkKHZvaWQpCi17Ci19Ci0KLS8qCi0gKiBUaHJlYWQgc3VwcG9ydC4KLSAqLwotbG9uZyBQeVRocmVhZF9zdGFydF9uZXdfdGhyZWFkKHZvaWQgKCpmdW5jKSh2b2lkICopLCB2b2lkICphcmcpCi17Ci0gICAgbG9uZyBydjsKLSAgICBpbnQgc3VjY2VzcyA9IC0xOwotCi0gICAgZHByaW50ZigoIiVsZDogUHlUaHJlYWRfc3RhcnRfbmV3X3RocmVhZCBjYWxsZWRcbiIsIFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQoKSkpOwotICAgIGlmICghaW5pdGlhbGl6ZWQpCi0gICAgICAgIFB5VGhyZWFkX2luaXRfdGhyZWFkKCk7Ci0KLSAgICBydiA9IF9iZWdpbnRocmVhZChmdW5jLCAwLCBhcmcpOyAvKiB1c2UgZGVmYXVsdCBzdGFjayBzaXplICovCi0KLSAgICBpZiAocnYgIT0gLTEpIHsKLSAgICAgICAgc3VjY2VzcyA9IDA7Ci0gICAgICAgIGRwcmludGYoKCIlbGQ6IFB5VGhyZWFkX3N0YXJ0X25ld190aHJlYWQgc3VjY2VlZGVkOlxuIiwgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpKSk7Ci0gICAgfQotCi0gICAgcmV0dXJuIHN1Y2Nlc3M7Ci19Ci0KLS8qCi0gKiBSZXR1cm4gdGhlIHRocmVhZCBJZCBpbnN0ZWFkIG9mIGFuIGhhbmRsZS4gVGhlIElkIGlzIHNhaWQgdG8gdW5pcXVlbHkgaWRlbnRpZnkgdGhlCi0gKiB0aHJlYWQgaW4gdGhlIHN5c3RlbQotICovCi1sb25nIFB5VGhyZWFkX2dldF90aHJlYWRfaWRlbnQodm9pZCkKLXsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotCi0gICAgcmV0dXJuIEdldEN1cnJlbnRUaHJlYWRJZCgpOwotfQotCi12b2lkIFB5VGhyZWFkX2V4aXRfdGhyZWFkKHZvaWQpCi17Ci0gICAgZHByaW50ZigoIiVsZDogUHlUaHJlYWRfZXhpdF90aHJlYWQgY2FsbGVkXG4iLCBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KCkpKTsKLSAgICBpZiAoIWluaXRpYWxpemVkKQotICAgICAgICBleGl0KDApOwotICAgIF9lbmR0aHJlYWQoKTsKLX0KLQotLyoKLSAqIExvY2sgc3VwcG9ydC4gSXQgaGFzIHRvIGJlIGltcGxlbWVudGVkIHVzaW5nIE11dGV4ZXMsIGFzCi0gKiBDRSBkb2VzbnQgc3VwcG9ydCBzZW1hcGhvcmVzLiAgVGhlcmVmb3JlIHdlIHVzZSBzb21lIGhhY2tzIHRvCi0gKiBzaW11bGF0ZSB0aGUgbm9uIHJlZW50cmFudCByZXF1aXJlbWVudHMgb2YgUHl0aG9uIGxvY2tzCi0gKi8KLVB5VGhyZWFkX3R5cGVfbG9jayBQeVRocmVhZF9hbGxvY2F0ZV9sb2NrKHZvaWQpCi17Ci0gICAgSEFORExFIGFMb2NrOwotCi0gICAgZHByaW50ZigoIlB5VGhyZWFkX2FsbG9jYXRlX2xvY2sgY2FsbGVkXG4iKSk7Ci0gICAgaWYgKCFpbml0aWFsaXplZCkKLSAgICBQeVRocmVhZF9pbml0X3RocmVhZCgpOwotCi0gICAgYUxvY2sgPSBDcmVhdGVFdmVudChOVUxMLCAgICAgICAgICAgLyogU2VjdXJpdHkgYXR0cmlidXRlcyAgICAgICovCi0gICAgICAgICAgICAwLCAgICAgICAgICAgICAgLyogTWFudWFsLVJlc2V0ICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAgICAgICAgICAgIDEsICAgICAgICAgICAgICAvKiBJcyBpbml0aWFsbHkgc2lnbmFsbGVkICAqLwotICAgICAgICAgICAgTlVMTCk7ICAgICAgICAgIC8qIE5hbWUgb2YgZXZlbnQgICAgICAgICAgICAqLwotCi0gICAgZHByaW50ZigoIiVsZDogUHlUaHJlYWRfYWxsb2NhdGVfbG9jaygpIC0+ICVwXG4iLCBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KCksIGFMb2NrKSk7Ci0KLSAgICByZXR1cm4gKFB5VGhyZWFkX3R5cGVfbG9jaykgYUxvY2s7Ci19Ci0KLXZvaWQgUHlUaHJlYWRfZnJlZV9sb2NrKFB5VGhyZWFkX3R5cGVfbG9jayBhTG9jaykKLXsKLSAgICBkcHJpbnRmKCgiJWxkOiBQeVRocmVhZF9mcmVlX2xvY2soJXApIGNhbGxlZFxuIiwgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpLGFMb2NrKSk7Ci0KLSAgICBDbG9zZUhhbmRsZShhTG9jayk7Ci19Ci0KLS8qCi0gKiBSZXR1cm4gMSBvbiBzdWNjZXNzIGlmIHRoZSBsb2NrIHdhcyBhY3F1aXJlZAotICoKLSAqIGFuZCAwIGlmIHRoZSBsb2NrIHdhcyBub3QgYWNxdWlyZWQuIFRoaXMgbWVhbnMgYSAwIGlzIHJldHVybmVkCi0gKiBpZiB0aGUgbG9jayBoYXMgYWxyZWFkeSBiZWVuIGFjcXVpcmVkIGJ5IHRoaXMgdGhyZWFkIQotICovCi1pbnQgUHlUaHJlYWRfYWNxdWlyZV9sb2NrKFB5VGhyZWFkX3R5cGVfbG9jayBhTG9jaywgaW50IHdhaXRmbGFnKQotewotICAgIGludCBzdWNjZXNzID0gMTsKLSAgICBEV09SRCB3YWl0UmVzdWx0OwotCi0gICAgZHByaW50ZigoIiVsZDogUHlUaHJlYWRfYWNxdWlyZV9sb2NrKCVwLCAlZCkgY2FsbGVkXG4iLCBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KCksYUxvY2ssIHdhaXRmbGFnKSk7Ci0KLSNpZm5kZWYgREVCVUcKLSAgICB3YWl0UmVzdWx0ID0gV2FpdEZvclNpbmdsZU9iamVjdChhTG9jaywgKHdhaXRmbGFnID8gSU5GSU5JVEUgOiAwKSk7Ci0jZWxzZQotICAgIC8qIFRvIGFpZCBpbiBkZWJ1Z2dpbmcsIHdlIHJlZ3VsYXJseSB3YWtlIHVwLiAgVGhpcyBhbGxvd3MgdXMgdG8KLSAgICBicmVhayBpbnRvIHRoZSBkZWJ1Z2dlciAqLwotICAgIHdoaWxlIChUUlVFKSB7Ci0gICAgICAgIHdhaXRSZXN1bHQgPSBXYWl0Rm9yU2luZ2xlT2JqZWN0KGFMb2NrLCB3YWl0ZmxhZyA/IDMwMDAgOiAwKTsKLSAgICAgICAgaWYgKHdhaXRmbGFnPT0wIHx8ICh3YWl0ZmxhZyAmJiB3YWl0UmVzdWx0ID09IFdBSVRfT0JKRUNUXzApKQotICAgICAgICAgICAgYnJlYWs7Ci0gICAgfQotI2VuZGlmCi0KLSAgICBpZiAod2FpdFJlc3VsdCAhPSBXQUlUX09CSkVDVF8wKSB7Ci0gICAgICAgICAgICAgICAgc3VjY2VzcyA9IDA7ICAgIC8qIFdlIGZhaWxlZCAqLwotICAgIH0KLQotICAgIGRwcmludGYoKCIlbGQ6IFB5VGhyZWFkX2FjcXVpcmVfbG9jayglcCwgJWQpIC0+ICVkXG4iLCBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KCksYUxvY2ssIHdhaXRmbGFnLCBzdWNjZXNzKSk7Ci0KLSAgICByZXR1cm4gc3VjY2VzczsKLX0KLQotdm9pZCBQeVRocmVhZF9yZWxlYXNlX2xvY2soUHlUaHJlYWRfdHlwZV9sb2NrIGFMb2NrKQotewotICAgIGRwcmludGYoKCIlbGQ6IFB5VGhyZWFkX3JlbGVhc2VfbG9jayglcCkgY2FsbGVkXG4iLCBQeVRocmVhZF9nZXRfdGhyZWFkX2lkZW50KCksYUxvY2spKTsKLQotICAgIGlmICghU2V0RXZlbnQoYUxvY2spKQotICAgIGRwcmludGYoKCIlbGQ6IENvdWxkIG5vdCBQeVRocmVhZF9yZWxlYXNlX2xvY2soJXApIGVycm9yOiAlbFxuIiwgUHlUaHJlYWRfZ2V0X3RocmVhZF9pZGVudCgpLCBhTG9jaywgR2V0TGFzdEVycm9yKCkpKTsKLX0KLQotCmRpZmYgLS1naXQgYS9QeXRob24vdHJhY2ViYWNrLmMgYi9QeXRob24vdHJhY2ViYWNrLmMKaW5kZXggNTliYjNmMC4uYzhiM2VlMSAxMDA2NDQKLS0tIGEvUHl0aG9uL3RyYWNlYmFjay5jCisrKyBiL1B5dGhvbi90cmFjZWJhY2suYwpAQCAtMTMsOCArMTMsMTMgQEAKIAogI2RlZmluZSBPRkYoeCkgb2Zmc2V0b2YoUHlUcmFjZWJhY2tPYmplY3QsIHgpCiAKLS8qIE1ldGhvZCBmcm9tIFBhcnNlci90b2tlbml6ZXIuYyAqLwotZXh0ZXJuIGNoYXIgKiBQeVRva2VuaXplcl9GaW5kRW5jb2RpbmcoaW50KTsKKyNkZWZpbmUgUFVUUyhmZCwgc3RyKSB3cml0ZShmZCwgc3RyLCBzdHJsZW4oc3RyKSkKKyNkZWZpbmUgTUFYX1NUUklOR19MRU5HVEggMTAwCisjZGVmaW5lIE1BWF9GUkFNRV9ERVBUSCAxMDAKKyNkZWZpbmUgTUFYX05USFJFQURTIDEwMAorCisvKiBGdW5jdGlvbiBmcm9tIFBhcnNlci90b2tlbml6ZXIuYyAqLworZXh0ZXJuIGNoYXIgKiBQeVRva2VuaXplcl9GaW5kRW5jb2RpbmdGaWxlbmFtZShpbnQsIFB5T2JqZWN0ICopOwogCiBzdGF0aWMgUHlPYmplY3QgKgogdGJfZGlyKFB5VHJhY2ViYWNrT2JqZWN0ICpzZWxmKQpAQCAtMTQ3LDYgKzE1Miw3IEBACiAgICAgY29uc3QgY2hhciogZmlsZXBhdGg7CiAgICAgUHlfc3NpemVfdCBsZW47CiAgICAgUHlPYmplY3QqIHJlc3VsdDsKKyAgICBfUHlfSURFTlRJRklFUihvcGVuKTsKIAogICAgIGZpbGVieXRlcyA9IFB5VW5pY29kZV9FbmNvZGVGU0RlZmF1bHQoZmlsZW5hbWUpOwogICAgIGlmIChmaWxlYnl0ZXMgPT0gTlVMTCkgewpAQCAtMTk0LDcgKzIwMCw3IEBACiAgICAgICAgICAgICBuYW1lYnVmW2xlbisrXSA9IFNFUDsKICAgICAgICAgc3RyY3B5KG5hbWVidWYrbGVuLCB0YWlsKTsKIAotICAgICAgICBiaW5hcnkgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGlvLCAib3BlbiIsICJzcyIsIG5hbWVidWYsICJyYiIpOworICAgICAgICBiaW5hcnkgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGlvLCAmUHlJZF9vcGVuLCAic3MiLCBuYW1lYnVmLCAicmIiKTsKICAgICAgICAgaWYgKGJpbmFyeSAhPSBOVUxMKSB7CiAgICAgICAgICAgICByZXN1bHQgPSBiaW5hcnk7CiAgICAgICAgICAgICBnb3RvIGZpbmFsbHk7CkBAIC0yMjQsOCArMjMwLDExIEBACiAgICAgUHlPYmplY3QgKmxpbmVvYmogPSBOVUxMOwogICAgIFB5T2JqZWN0ICpyZXM7CiAgICAgY2hhciBidWZbTUFYUEFUSExFTisxXTsKLSAgICBQeV9VTklDT0RFICp1LCAqcDsKLSAgICBQeV9zc2l6ZV90IGxlbjsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhOworICAgIF9QeV9JREVOVElGSUVSKGNsb3NlKTsKKyAgICBfUHlfSURFTlRJRklFUihvcGVuKTsKKyAgICBfUHlfSURFTlRJRklFUihUZXh0SU9XcmFwcGVyKTsKIAogICAgIC8qIG9wZW4gdGhlIGZpbGUgKi8KICAgICBpZiAoZmlsZW5hbWUgPT0gTlVMTCkKQEAgLTIzNCw3ICsyNDMsNyBAQAogICAgIGlvID0gUHlJbXBvcnRfSW1wb3J0TW9kdWxlTm9CbG9jaygiaW8iKTsKICAgICBpZiAoaW8gPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIC0xOwotICAgIGJpbmFyeSA9IFB5T2JqZWN0X0NhbGxNZXRob2QoaW8sICJvcGVuIiwgIk9zIiwgZmlsZW5hbWUsICJyYiIpOworICAgIGJpbmFyeSA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoaW8sICZQeUlkX29wZW4sICJPcyIsIGZpbGVuYW1lLCAicmIiKTsKIAogICAgIGlmIChiaW5hcnkgPT0gTlVMTCkgewogICAgICAgICBiaW5hcnkgPSBfUHlfRmluZFNvdXJjZUZpbGUoZmlsZW5hbWUsIGJ1Ziwgc2l6ZW9mKGJ1ZiksIGlvKTsKQEAgLTI0NiwxMCArMjU1LDEwIEBACiAKICAgICAvKiB1c2UgdGhlIHJpZ2h0IGVuY29kaW5nIHRvIGRlY29kZSB0aGUgZmlsZSBhcyB1bmljb2RlICovCiAgICAgZmQgPSBQeU9iamVjdF9Bc0ZpbGVEZXNjcmlwdG9yKGJpbmFyeSk7Ci0gICAgZm91bmRfZW5jb2RpbmcgPSBQeVRva2VuaXplcl9GaW5kRW5jb2RpbmcoZmQpOworICAgIGZvdW5kX2VuY29kaW5nID0gUHlUb2tlbml6ZXJfRmluZEVuY29kaW5nRmlsZW5hbWUoZmQsIGZpbGVuYW1lKTsKICAgICBlbmNvZGluZyA9IChmb3VuZF9lbmNvZGluZyAhPSBOVUxMKSA/IGZvdW5kX2VuY29kaW5nIDogInV0Zi04IjsKICAgICBsc2VlayhmZCwgMCwgMCk7IC8qIFJlc2V0IHBvc2l0aW9uICovCi0gICAgZm9iID0gUHlPYmplY3RfQ2FsbE1ldGhvZChpbywgIlRleHRJT1dyYXBwZXIiLCAiT3MiLCBiaW5hcnksIGVuY29kaW5nKTsKKyAgICBmb2IgPSBfUHlPYmplY3RfQ2FsbE1ldGhvZElkKGlvLCAmUHlJZF9UZXh0SU9XcmFwcGVyLCAiT3MiLCBiaW5hcnksIGVuY29kaW5nKTsKICAgICBQeV9ERUNSRUYoaW8pOwogICAgIFB5X0RFQ1JFRihiaW5hcnkpOwogICAgIFB5TWVtX0ZSRUUoZm91bmRfZW5jb2RpbmcpOwpAQCAtMjY4LDcgKzI3Nyw3IEBACiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgIH0KLSAgICByZXMgPSBQeU9iamVjdF9DYWxsTWV0aG9kKGZvYiwgImNsb3NlIiwgIiIpOworICAgIHJlcyA9IF9QeU9iamVjdF9DYWxsTWV0aG9kSWQoZm9iLCAmUHlJZF9jbG9zZSwgIiIpOwogICAgIGlmIChyZXMpCiAgICAgICAgIFB5X0RFQ1JFRihyZXMpOwogICAgIGVsc2UKQEAgLTI4MCwxMyArMjg5LDE2IEBACiAgICAgfQogCiAgICAgLyogcmVtb3ZlIHRoZSBpbmRlbnRhdGlvbiBvZiB0aGUgbGluZSAqLwotICAgIHUgPSBQeVVuaWNvZGVfQVNfVU5JQ09ERShsaW5lb2JqKTsKLSAgICBsZW4gPSBQeVVuaWNvZGVfR0VUX1NJWkUobGluZW9iaik7Ci0gICAgZm9yIChwPXU7ICpwID09ICcgJyB8fCAqcCA9PSAnXHQnIHx8ICpwID09ICdcMDE0JzsgcCsrKQotICAgICAgICBsZW4tLTsKLSAgICBpZiAodSAhPSBwKSB7CisgICAga2luZCA9IFB5VW5pY29kZV9LSU5EKGxpbmVvYmopOworICAgIGRhdGEgPSBQeVVuaWNvZGVfREFUQShsaW5lb2JqKTsKKyAgICBmb3IgKGk9MDsgaSA8IFB5VW5pY29kZV9HRVRfTEVOR1RIKGxpbmVvYmopOyBpKyspIHsKKyAgICAgICAgUHlfVUNTNCBjaCA9IFB5VW5pY29kZV9SRUFEKGtpbmQsIGRhdGEsIGkpOworICAgICAgICBpZiAoY2ggIT0gJyAnICYmIGNoICE9ICdcdCcgJiYgY2ggIT0gJ1wwMTQnKQorICAgICAgICAgICAgYnJlYWs7CisgICAgfQorICAgIGlmIChpKSB7CiAgICAgICAgIFB5T2JqZWN0ICp0cnVuY2F0ZWQ7Ci0gICAgICAgIHRydW5jYXRlZCA9IFB5VW5pY29kZV9Gcm9tVW5pY29kZShwLCBsZW4pOworICAgICAgICB0cnVuY2F0ZWQgPSBQeVVuaWNvZGVfU3Vic3RyaW5nKGxpbmVvYmosIGksIFB5VW5pY29kZV9HRVRfTEVOR1RIKGxpbmVvYmopKTsKICAgICAgICAgaWYgKHRydW5jYXRlZCkgewogICAgICAgICAgICAgUHlfREVDUkVGKGxpbmVvYmopOwogICAgICAgICAgICAgbGluZW9iaiA9IHRydW5jYXRlZDsKQEAgLTQwMiwzICs0MTQsMjUwIEBACiAgICAgICAgIGVyciA9IHRiX3ByaW50aW50ZXJuYWwoKFB5VHJhY2ViYWNrT2JqZWN0ICopdiwgZiwgbGltaXQpOwogICAgIHJldHVybiBlcnI7CiB9CisKKy8qIFJldmVyc2UgYSBzdHJpbmcuIEZvciBleGFtcGxlLCAiYWJjZCIgYmVjb21lcyAiZGNiYSIuCisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgc2lnbmFsIHNhZmUuICovCisKK3N0YXRpYyB2b2lkCityZXZlcnNlX3N0cmluZyhjaGFyICp0ZXh0LCBjb25zdCBzaXplX3QgbGVuKQoreworICAgIGNoYXIgdG1wOworICAgIHNpemVfdCBpLCBqOworICAgIGlmIChsZW4gPT0gMCkKKyAgICAgICAgcmV0dXJuOworICAgIGZvciAoaT0wLCBqPWxlbi0xOyBpIDwgajsgaSsrLCBqLS0pIHsKKyAgICAgICAgdG1wID0gdGV4dFtpXTsKKyAgICAgICAgdGV4dFtpXSA9IHRleHRbal07CisgICAgICAgIHRleHRbal0gPSB0bXA7CisgICAgfQorfQorCisvKiBGb3JtYXQgYW4gaW50ZWdlciBpbiByYW5nZSBbMDsgOTk5OTk5XSB0byBkZWNpbWFsLAorICAgYW5kIHdyaXRlIGl0IGludG8gdGhlIGZpbGUgZmQuCisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgc2lnbmFsIHNhZmUuICovCisKK3N0YXRpYyB2b2lkCitkdW1wX2RlY2ltYWwoaW50IGZkLCBpbnQgdmFsdWUpCit7CisgICAgY2hhciBidWZmZXJbN107CisgICAgaW50IGxlbjsKKyAgICBpZiAodmFsdWUgPCAwIHx8IDk5OTk5OSA8IHZhbHVlKQorICAgICAgICByZXR1cm47CisgICAgbGVuID0gMDsKKyAgICBkbyB7CisgICAgICAgIGJ1ZmZlcltsZW5dID0gJzAnICsgKHZhbHVlICUgMTApOworICAgICAgICB2YWx1ZSAvPSAxMDsKKyAgICAgICAgbGVuKys7CisgICAgfSB3aGlsZSAodmFsdWUpOworICAgIHJldmVyc2Vfc3RyaW5nKGJ1ZmZlciwgbGVuKTsKKyAgICB3cml0ZShmZCwgYnVmZmVyLCBsZW4pOworfQorCisvKiBGb3JtYXQgYW4gaW50ZWdlciBpbiByYW5nZSBbMDsgMHhmZmZmZmZmZl0gdG8gaGV4ZGVjaW1hbCBvZiAnd2lkdGgnIGRpZ2l0cywKKyAgIGFuZCB3cml0ZSBpdCBpbnRvIHRoZSBmaWxlIGZkLgorCisgICBUaGlzIGZ1bmN0aW9uIGlzIHNpZ25hbCBzYWZlLiAqLworCitzdGF0aWMgdm9pZAorZHVtcF9oZXhhZGVjaW1hbChpbnQgd2lkdGgsIHVuc2lnbmVkIGxvbmcgdmFsdWUsIGludCBmZCkKK3sKKyAgICBpbnQgbGVuOworICAgIGNoYXIgYnVmZmVyW3NpemVvZih1bnNpZ25lZCBsb25nKSAqIDIgKyAxXTsKKyAgICBsZW4gPSAwOworICAgIGRvIHsKKyAgICAgICAgYnVmZmVyW2xlbl0gPSBQeV9oZXhkaWdpdHNbdmFsdWUgJiAxNV07CisgICAgICAgIHZhbHVlID4+PSA0OworICAgICAgICBsZW4rKzsKKyAgICB9IHdoaWxlIChsZW4gPCB3aWR0aCB8fCB2YWx1ZSk7CisgICAgcmV2ZXJzZV9zdHJpbmcoYnVmZmVyLCBsZW4pOworICAgIHdyaXRlKGZkLCBidWZmZXIsIGxlbik7Cit9CisKKy8qIFdyaXRlIGFuIHVuaWNvZGUgb2JqZWN0IGludG8gdGhlIGZpbGUgZmQgdXNpbmcgYXNjaWkrYmFja3NsYXNocmVwbGFjZS4KKworICAgVGhpcyBmdW5jdGlvbiBpcyBzaWduYWwgc2FmZS4gKi8KKworc3RhdGljIHZvaWQKK2R1bXBfYXNjaWkoaW50IGZkLCBQeU9iamVjdCAqdGV4dCkKK3sKKyAgICBQeUFTQ0lJT2JqZWN0ICphc2NpaSA9IChQeUFTQ0lJT2JqZWN0ICopdGV4dDsKKyAgICBQeV9zc2l6ZV90IGksIHNpemU7CisgICAgaW50IHRydW5jYXRlZDsKKyAgICBpbnQga2luZDsKKyAgICB2b2lkICpkYXRhID0gTlVMTDsKKyAgICB3Y2hhcl90ICp3c3RyID0gTlVMTDsKKyAgICBQeV9VQ1M0IGNoOworCisgICAgc2l6ZSA9IGFzY2lpLT5sZW5ndGg7CisgICAga2luZCA9IGFzY2lpLT5zdGF0ZS5raW5kOworICAgIGlmIChhc2NpaS0+c3RhdGUuY29tcGFjdCkgeworICAgICAgICBpZiAoYXNjaWktPnN0YXRlLmFzY2lpKQorICAgICAgICAgICAgZGF0YSA9ICgoUHlBU0NJSU9iamVjdCopdGV4dCkgKyAxOworICAgICAgICBlbHNlCisgICAgICAgICAgICBkYXRhID0gKChQeUNvbXBhY3RVbmljb2RlT2JqZWN0Kil0ZXh0KSArIDE7CisgICAgfQorICAgIGVsc2UgaWYgKGtpbmQgIT0gUHlVbmljb2RlX1dDSEFSX0tJTkQpIHsKKyAgICAgICAgZGF0YSA9ICgoUHlVbmljb2RlT2JqZWN0ICopdGV4dCktPmRhdGEuYW55OworICAgICAgICBpZiAoZGF0YSA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgd3N0ciA9ICgoUHlBU0NJSU9iamVjdCAqKXRleHQpLT53c3RyOworICAgICAgICBpZiAod3N0ciA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBzaXplID0gKChQeUNvbXBhY3RVbmljb2RlT2JqZWN0ICopdGV4dCktPndzdHJfbGVuZ3RoOworICAgIH0KKworICAgIGlmIChNQVhfU1RSSU5HX0xFTkdUSCA8IHNpemUpIHsKKyAgICAgICAgc2l6ZSA9IE1BWF9TVFJJTkdfTEVOR1RIOworICAgICAgICB0cnVuY2F0ZWQgPSAxOworICAgIH0KKyAgICBlbHNlCisgICAgICAgIHRydW5jYXRlZCA9IDA7CisKKyAgICBmb3IgKGk9MDsgaSA8IHNpemU7IGkrKykgeworICAgICAgICBpZiAoa2luZCAhPSBQeVVuaWNvZGVfV0NIQVJfS0lORCkKKyAgICAgICAgICAgIGNoID0gUHlVbmljb2RlX1JFQUQoa2luZCwgZGF0YSwgaSk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGNoID0gd3N0cltpXTsKKyAgICAgICAgaWYgKGNoIDwgMTI4KSB7CisgICAgICAgICAgICBjaGFyIGMgPSAoY2hhciljaDsKKyAgICAgICAgICAgIHdyaXRlKGZkLCAmYywgMSk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoY2ggPCAweGZmKSB7CisgICAgICAgICAgICBQVVRTKGZkLCAiXFx4Iik7CisgICAgICAgICAgICBkdW1wX2hleGFkZWNpbWFsKDIsIGNoLCBmZCk7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoY2ggPCAweGZmZmYpIHsKKyAgICAgICAgICAgIFBVVFMoZmQsICJcXHUiKTsKKyAgICAgICAgICAgIGR1bXBfaGV4YWRlY2ltYWwoNCwgY2gsIGZkKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIFBVVFMoZmQsICJcXFUiKTsKKyAgICAgICAgICAgIGR1bXBfaGV4YWRlY2ltYWwoOCwgY2gsIGZkKTsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAodHJ1bmNhdGVkKQorICAgICAgICBQVVRTKGZkLCAiLi4uIik7Cit9CisKKy8qIFdyaXRlIGEgZnJhbWUgaW50byB0aGUgZmlsZSBmZDogIkZpbGUgInh4eCIsIGxpbmUgeHh4IGluIHh4eCIuCisKKyAgIFRoaXMgZnVuY3Rpb24gaXMgc2lnbmFsIHNhZmUuICovCisKK3N0YXRpYyB2b2lkCitkdW1wX2ZyYW1lKGludCBmZCwgUHlGcmFtZU9iamVjdCAqZnJhbWUpCit7CisgICAgUHlDb2RlT2JqZWN0ICpjb2RlOworICAgIGludCBsaW5lbm87CisKKyAgICBjb2RlID0gZnJhbWUtPmZfY29kZTsKKyAgICBQVVRTKGZkLCAiICBGaWxlICIpOworICAgIGlmIChjb2RlICE9IE5VTEwgJiYgY29kZS0+Y29fZmlsZW5hbWUgIT0gTlVMTAorICAgICAgICAmJiBQeVVuaWNvZGVfQ2hlY2soY29kZS0+Y29fZmlsZW5hbWUpKQorICAgIHsKKyAgICAgICAgd3JpdGUoZmQsICJcIiIsIDEpOworICAgICAgICBkdW1wX2FzY2lpKGZkLCBjb2RlLT5jb19maWxlbmFtZSk7CisgICAgICAgIHdyaXRlKGZkLCAiXCIiLCAxKTsKKyAgICB9IGVsc2UgeworICAgICAgICBQVVRTKGZkLCAiPz8/Iik7CisgICAgfQorCisgICAgLyogUHlGcmFtZV9HZXRMaW5lTnVtYmVyKCkgd2FzIGludHJvZHVjZWQgaW4gUHl0aG9uIDIuNy4wIGFuZCAzLjIuMCAqLworICAgIGxpbmVubyA9IFB5Q29kZV9BZGRyMkxpbmUoY29kZSwgZnJhbWUtPmZfbGFzdGkpOworICAgIFBVVFMoZmQsICIsIGxpbmUgIik7CisgICAgZHVtcF9kZWNpbWFsKGZkLCBsaW5lbm8pOworICAgIFBVVFMoZmQsICIgaW4gIik7CisKKyAgICBpZiAoY29kZSAhPSBOVUxMICYmIGNvZGUtPmNvX25hbWUgIT0gTlVMTAorICAgICAgICAmJiBQeVVuaWNvZGVfQ2hlY2soY29kZS0+Y29fbmFtZSkpCisgICAgICAgIGR1bXBfYXNjaWkoZmQsIGNvZGUtPmNvX25hbWUpOworICAgIGVsc2UKKyAgICAgICAgUFVUUyhmZCwgIj8/PyIpOworCisgICAgd3JpdGUoZmQsICJcbiIsIDEpOworfQorCitzdGF0aWMgdm9pZAorZHVtcF90cmFjZWJhY2soaW50IGZkLCBQeVRocmVhZFN0YXRlICp0c3RhdGUsIGludCB3cml0ZV9oZWFkZXIpCit7CisgICAgUHlGcmFtZU9iamVjdCAqZnJhbWU7CisgICAgdW5zaWduZWQgaW50IGRlcHRoOworCisgICAgaWYgKHdyaXRlX2hlYWRlcikKKyAgICAgICAgUFVUUyhmZCwgIlRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBmaXJzdCk6XG4iKTsKKworICAgIGZyYW1lID0gX1B5VGhyZWFkU3RhdGVfR2V0RnJhbWUodHN0YXRlKTsKKyAgICBpZiAoZnJhbWUgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuOworCisgICAgZGVwdGggPSAwOworICAgIHdoaWxlIChmcmFtZSAhPSBOVUxMKSB7CisgICAgICAgIGlmIChNQVhfRlJBTUVfREVQVEggPD0gZGVwdGgpIHsKKyAgICAgICAgICAgIFBVVFMoZmQsICIgIC4uLlxuIik7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBpZiAoIVB5RnJhbWVfQ2hlY2soZnJhbWUpKQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGR1bXBfZnJhbWUoZmQsIGZyYW1lKTsKKyAgICAgICAgZnJhbWUgPSBmcmFtZS0+Zl9iYWNrOworICAgICAgICBkZXB0aCsrOworICAgIH0KK30KKwordm9pZAorX1B5X0R1bXBUcmFjZWJhY2soaW50IGZkLCBQeVRocmVhZFN0YXRlICp0c3RhdGUpCit7CisgICAgZHVtcF90cmFjZWJhY2soZmQsIHRzdGF0ZSwgMSk7Cit9CisKKy8qIFdyaXRlIHRoZSB0aHJlYWQgaWRlbnRpZmllciBpbnRvIHRoZSBmaWxlICdmZCc6ICJDdXJyZW50IHRocmVhZCAweEhISEg6XCIgaWYKKyAgIGlzX2N1cnJlbnQgaXMgdHJ1ZSwgIlRocmVhZCAweEhISEg6XG4iIG90aGVyd2lzZS4KKworICAgVGhpcyBmdW5jdGlvbiBpcyBzaWduYWwgc2FmZS4gKi8KKworc3RhdGljIHZvaWQKK3dyaXRlX3RocmVhZF9pZChpbnQgZmQsIFB5VGhyZWFkU3RhdGUgKnRzdGF0ZSwgaW50IGlzX2N1cnJlbnQpCit7CisgICAgaWYgKGlzX2N1cnJlbnQpCisgICAgICAgIFBVVFMoZmQsICJDdXJyZW50IHRocmVhZCAweCIpOworICAgIGVsc2UKKyAgICAgICAgUFVUUyhmZCwgIlRocmVhZCAweCIpOworICAgIGR1bXBfaGV4YWRlY2ltYWwoc2l6ZW9mKGxvbmcpKjIsICh1bnNpZ25lZCBsb25nKXRzdGF0ZS0+dGhyZWFkX2lkLCBmZCk7CisgICAgUFVUUyhmZCwgIjpcbiIpOworfQorCitjb25zdCBjaGFyKgorX1B5X0R1bXBUcmFjZWJhY2tUaHJlYWRzKGludCBmZCwgUHlJbnRlcnByZXRlclN0YXRlICppbnRlcnAsCisgICAgICAgICAgICAgICAgICAgICAgICAgUHlUaHJlYWRTdGF0ZSAqY3VycmVudF90aHJlYWQpCit7CisgICAgUHlUaHJlYWRTdGF0ZSAqdHN0YXRlOworICAgIHVuc2lnbmVkIGludCBudGhyZWFkczsKKworICAgIC8qIEdldCB0aGUgY3VycmVudCBpbnRlcnByZXRlciBmcm9tIHRoZSBjdXJyZW50IHRocmVhZCAqLworICAgIHRzdGF0ZSA9IFB5SW50ZXJwcmV0ZXJTdGF0ZV9UaHJlYWRIZWFkKGludGVycCk7CisgICAgaWYgKHRzdGF0ZSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gInVuYWJsZSB0byBnZXQgdGhlIHRocmVhZCBoZWFkIHN0YXRlIjsKKworICAgIC8qIER1bXAgdGhlIHRyYWNlYmFjayBvZiBlYWNoIHRocmVhZCAqLworICAgIHRzdGF0ZSA9IFB5SW50ZXJwcmV0ZXJTdGF0ZV9UaHJlYWRIZWFkKGludGVycCk7CisgICAgbnRocmVhZHMgPSAwOworICAgIGRvCisgICAgeworICAgICAgICBpZiAobnRocmVhZHMgIT0gMCkKKyAgICAgICAgICAgIHdyaXRlKGZkLCAiXG4iLCAxKTsKKyAgICAgICAgaWYgKG50aHJlYWRzID49IE1BWF9OVEhSRUFEUykgeworICAgICAgICAgICAgUFVUUyhmZCwgIi4uLlxuIik7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICB3cml0ZV90aHJlYWRfaWQoZmQsIHRzdGF0ZSwgdHN0YXRlID09IGN1cnJlbnRfdGhyZWFkKTsKKyAgICAgICAgZHVtcF90cmFjZWJhY2soZmQsIHRzdGF0ZSwgMCk7CisgICAgICAgIHRzdGF0ZSA9IFB5VGhyZWFkU3RhdGVfTmV4dCh0c3RhdGUpOworICAgICAgICBudGhyZWFkcysrOworICAgIH0gd2hpbGUgKHRzdGF0ZSAhPSBOVUxMKTsKKworICAgIHJldHVybiBOVUxMOworfQorCmRpZmYgLS1naXQgYS9SRUFETUUgYi9SRUFETUUKaW5kZXggMzRiYzllNC4uM2RmMzI5MiAxMDA2NDQKLS0tIGEvUkVBRE1FCisrKyBiL1JFQURNRQpAQCAtMSw1ICsxLDUgQEAKLVRoaXMgaXMgUHl0aG9uIHZlcnNpb24gMy4yLjIKLT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1RoaXMgaXMgUHl0aG9uIHZlcnNpb24gMy4zIGFscGhhIDAKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIAogQ29weXJpZ2h0IChjKSAyMDAxLCAyMDAyLCAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAyMDEwLCAyMDExLAogMjAxMiBQeXRob24gU29mdHdhcmUgRm91bmRhdGlvbi4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCkBAIC01MCw5ICs1MCw5IEBACiAtLS0tLS0tLS0tCiAKIFdlIHRyeSB0byBoYXZlIGEgY29tcHJlaGVuc2l2ZSBvdmVydmlldyBvZiB0aGUgY2hhbmdlcyBpbiB0aGUgIldoYXQncyBOZXcgaW4KLVB5dGhvbiAzLjIiIGRvY3VtZW50LCBmb3VuZCBhdAorUHl0aG9uIDMuMyIgZG9jdW1lbnQsIGZvdW5kIGF0CiAKLSAgICBodHRwOi8vZG9jcy5weXRob24ub3JnLzMuMi93aGF0c25ldy8zLjIuaHRtbAorICAgIGh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvMy4zL3doYXRzbmV3LzMuMy5odG1sCiAKIEZvciBhIG1vcmUgZGV0YWlsZWQgY2hhbmdlIGxvZywgcmVhZCBNaXNjL05FV1MgKHRob3VnaCB0aGlzIGZpbGUsIHRvbywgaXMKIGluY29tcGxldGUsIGFuZCBhbHNvIGRvZXNuJ3QgbGlzdCBhbnl0aGluZyBtZXJnZWQgaW4gZnJvbSB0aGUgMi43IHJlbGVhc2UgdW5kZXIKQEAgLTY1LDkgKzY1LDkgQEAKIERvY3VtZW50YXRpb24KIC0tLS0tLS0tLS0tLS0KIAotRG9jdW1lbnRhdGlvbiBmb3IgUHl0aG9uIDMuMiBpcyBvbmxpbmUsIHVwZGF0ZWQgZGFpbHk6CitEb2N1bWVudGF0aW9uIGZvciBQeXRob24gMy4zIGlzIG9ubGluZSwgdXBkYXRlZCBkYWlseToKIAotICAgIGh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvMy4yLworICAgIGh0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvMy4zLwogCiBJdCBjYW4gYWxzbyBiZSBkb3dubG9hZGVkIGluIG1hbnkgZm9ybWF0cyBmb3IgZmFzdGVyIGFjY2Vzcy4gIFRoZSBkb2N1bWVudGF0aW9uCiBpcyBkb3dubG9hZGFibGUgaW4gSFRNTCwgUERGLCBhbmQgcmVTdHJ1Y3R1cmVkVGV4dCBmb3JtYXRzOyB0aGUgbGF0dGVyIHZlcnNpb24KQEAgLTg1LDE4ICs4NSwxNiBAQAogQSBzb3VyY2UtdG8tc291cmNlIHRyYW5zbGF0aW9uIHRvb2wsICIydG8zIiwgY2FuIHRha2UgY2FyZSBvZiB0aGUgbXVuZGFuZSB0YXNrCiBvZiBjb252ZXJ0aW5nIGxhcmdlIGFtb3VudHMgb2Ygc291cmNlIGNvZGUuICBJdCBpcyBub3QgYSBjb21wbGV0ZSBzb2x1dGlvbiBidXQKIGlzIGNvbXBsZW1lbnRlZCBieSB0aGUgZGVwcmVjYXRpb24gd2FybmluZ3MgaW4gMi42LiAgU2VlCi1odHRwOi8vZG9jcy5weXRob24ub3JnLzMuMi9saWJyYXJ5LzJ0bzMuaHRtbCBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KK2h0dHA6Ly9kb2NzLnB5dGhvbi5vcmcvMy4zL2xpYnJhcnkvMnRvMy5odG1sIGZvciBtb3JlIGluZm9ybWF0aW9uLgogCiAKIFRlc3RpbmcKIC0tLS0tLS0KIAotVG8gdGVzdCB0aGUgaW50ZXJwcmV0ZXIsIHR5cGUgIm1ha2UgdGVzdCIgaW4gdGhlIHRvcC1sZXZlbCBkaXJlY3RvcnkuICBUaGlzIHJ1bnMKLXRoZSB0ZXN0IHNldCB0d2ljZSAob25jZSB3aXRoIG5vIGNvbXBpbGVkIGZpbGVzLCBvbmNlIHdpdGggdGhlIGNvbXBpbGVkIGZpbGVzCi1sZWZ0IGJ5IHRoZSBwcmV2aW91cyB0ZXN0IHJ1bikuICBUaGUgdGVzdCBzZXQgcHJvZHVjZXMgc29tZSBvdXRwdXQuICBZb3UgY2FuCi1nZW5lcmFsbHkgaWdub3JlIHRoZSBtZXNzYWdlcyBhYm91dCBza2lwcGVkIHRlc3RzIGR1ZSB0byBvcHRpb25hbCBmZWF0dXJlcyB3aGljaAotY2FuJ3QgYmUgaW1wb3J0ZWQuICBJZiBhIG1lc3NhZ2UgaXMgcHJpbnRlZCBhYm91dCBhIGZhaWxlZCB0ZXN0IG9yIGEgdHJhY2ViYWNrCi1vciBjb3JlIGR1bXAgaXMgcHJvZHVjZWQsIHNvbWV0aGluZyBpcyB3cm9uZy4KK1RvIHRlc3QgdGhlIGludGVycHJldGVyLCB0eXBlICJtYWtlIHRlc3QiIGluIHRoZSB0b3AtbGV2ZWwgZGlyZWN0b3J5LiAgVGhlIHRlc3QKK3NldCBwcm9kdWNlcyBzb21lIG91dHB1dC4gIFlvdSBjYW4gZ2VuZXJhbGx5IGlnbm9yZSB0aGUgbWVzc2FnZXMgYWJvdXQgc2tpcHBlZAordGVzdHMgZHVlIHRvIG9wdGlvbmFsIGZlYXR1cmVzIHdoaWNoIGNhbid0IGJlIGltcG9ydGVkLiAgSWYgYSBtZXNzYWdlIGlzIHByaW50ZWQKK2Fib3V0IGEgZmFpbGVkIHRlc3Qgb3IgYSB0cmFjZWJhY2sgb3IgY29yZSBkdW1wIGlzIHByb2R1Y2VkLCBzb21ldGhpbmcgaXMgd3JvbmcuCiAKIEJ5IGRlZmF1bHQsIHRlc3RzIGFyZSBwcmV2ZW50ZWQgZnJvbSBvdmVydXNpbmcgcmVzb3VyY2VzIGxpa2UgZGlzayBzcGFjZSBhbmQKIG1lbW9yeS4gIFRvIGVuYWJsZSB0aGVzZSB0ZXN0cywgcnVuICJtYWtlIHRlc3RhbGwiLgpAQCAtMTI1LDggKzEyMyw4IEBACiBJbnN0YWxsIHRoYXQgdmVyc2lvbiB1c2luZyAibWFrZSBpbnN0YWxsIi4gIEluc3RhbGwgYWxsIG90aGVyIHZlcnNpb25zIHVzaW5nCiAibWFrZSBhbHRpbnN0YWxsIi4KIAotRm9yIGV4YW1wbGUsIGlmIHlvdSB3YW50IHRvIGluc3RhbGwgUHl0aG9uIDIuNSwgMi42IGFuZCAzLjIgd2l0aCAyLjYgYmVpbmcgdGhlCi1wcmltYXJ5IHZlcnNpb24sIHlvdSB3b3VsZCBleGVjdXRlICJtYWtlIGluc3RhbGwiIGluIHlvdXIgMi42IGJ1aWxkIGRpcmVjdG9yeQorRm9yIGV4YW1wbGUsIGlmIHlvdSB3YW50IHRvIGluc3RhbGwgUHl0aG9uIDIuNiwgMi43IGFuZCAzLjMgd2l0aCAyLjcgYmVpbmcgdGhlCitwcmltYXJ5IHZlcnNpb24sIHlvdSB3b3VsZCBleGVjdXRlICJtYWtlIGluc3RhbGwiIGluIHlvdXIgMi43IGJ1aWxkIGRpcmVjdG9yeQogYW5kICJtYWtlIGFsdGluc3RhbGwiIGluIHRoZSBvdGhlcnMuCiAKIApAQCAtMTYxLDcgKzE1OSw3IEBACiBSZWxlYXNlIFNjaGVkdWxlCiAtLS0tLS0tLS0tLS0tLS0tCiAKLVNlZSBQRVAgMzkyIGZvciByZWxlYXNlIGRldGFpbHM6IGh0dHA6Ly93d3cucHl0aG9uLm9yZy9kZXYvcGVwcy9wZXAtMDM5Mi8KK1NlZSBQRVAgMzk4IGZvciByZWxlYXNlIGRldGFpbHM6IGh0dHA6Ly93d3cucHl0aG9uLm9yZy9kZXYvcGVwcy9wZXAtMDM5OC8KIAogCiBDb3B5cmlnaHQgYW5kIExpY2Vuc2UgSW5mb3JtYXRpb24KZGlmZiAtLWdpdCBhL1Rvb2xzL2J1aWxkYm90L2V4dGVybmFsLWNvbW1vbi5iYXQgYi9Ub29scy9idWlsZGJvdC9leHRlcm5hbC1jb21tb24uYmF0CmluZGV4IDFmZjI4MmUuLjI0NGQ1ZjUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL2J1aWxkYm90L2V4dGVybmFsLWNvbW1vbi5iYXQKKysrIGIvVG9vbHMvYnVpbGRib3QvZXh0ZXJuYWwtY29tbW9uLmJhdApAQCAtNDEsMyArNDEsOCBAQAogICByZCAvcy9xIHNxbGl0ZS1zb3VyY2UtMy42LjIxCiAgIHN2biBleHBvcnQgaHR0cDovL3N2bi5weXRob24ub3JnL3Byb2plY3RzL2V4dGVybmFsL3NxbGl0ZS0zLjcuNAogKQorCitAcmVtIGx6bWEKK2lmIG5vdCBleGlzdCB4ei01LjAuMyAoCisgIHN2biBleHBvcnQgaHR0cDovL3N2bi5weXRob24ub3JnL3Byb2plY3RzL2V4dGVybmFsL3h6LTUuMC4zCispCmRpZmYgLS1naXQgYS9Ub29scy9nZGIvbGlicHl0aG9uLnB5IGIvVG9vbHMvZ2RiL2xpYnB5dGhvbi5weQppbmRleCA4YmJiYjEwLi4zMDM0N2NiIDEwMDY0NAotLS0gYS9Ub29scy9nZGIvbGlicHl0aG9uLnB5CisrKyBiL1Rvb2xzL2dkYi9saWJweXRob24ucHkKQEAgLTQ5LDYgKzQ5LDExIEBACiBfdHlwZV9jaGFyX3B0ciA9IGdkYi5sb29rdXBfdHlwZSgnY2hhcicpLnBvaW50ZXIoKSAjIGNoYXIqCiBfdHlwZV91bnNpZ25lZF9jaGFyX3B0ciA9IGdkYi5sb29rdXBfdHlwZSgndW5zaWduZWQgY2hhcicpLnBvaW50ZXIoKSAjIHVuc2lnbmVkIGNoYXIqCiBfdHlwZV92b2lkX3B0ciA9IGdkYi5sb29rdXBfdHlwZSgndm9pZCcpLnBvaW50ZXIoKSAjIHZvaWQqCitfdHlwZV91bnNpZ25lZF9zaG9ydF9wdHIgPSBnZGIubG9va3VwX3R5cGUoJ3Vuc2lnbmVkIHNob3J0JykucG9pbnRlcigpCitfdHlwZV91bnNpZ25lZF9pbnRfcHRyID0gZ2RiLmxvb2t1cF90eXBlKCd1bnNpZ25lZCBpbnQnKS5wb2ludGVyKCkKKworIyB2YWx1ZSBjb21wdXRlZCBsYXRlciwgc2VlIFB5VW5pY29kZU9iamVjdFB0ci5wcm94eSgpCitfaXNfcGVwMzkzID0gTm9uZQogCiBTSVpFT0ZfVk9JRF9QID0gX3R5cGVfdm9pZF9wdHIuc2l6ZW9mCiAKQEAgLTMyMiw3ICszMjcsNiBAQAogCiAgICAgICAgIG5hbWVfbWFwID0geydib29sJzogUHlCb29sT2JqZWN0UHRyLAogICAgICAgICAgICAgICAgICAgICAnY2xhc3NvYmonOiBQeUNsYXNzT2JqZWN0UHRyLAotICAgICAgICAgICAgICAgICAgICAnaW5zdGFuY2UnOiBQeUluc3RhbmNlT2JqZWN0UHRyLAogICAgICAgICAgICAgICAgICAgICAnTm9uZVR5cGUnOiBQeU5vbmVTdHJ1Y3RQdHIsCiAgICAgICAgICAgICAgICAgICAgICdmcmFtZSc6IFB5RnJhbWVPYmplY3RQdHIsCiAgICAgICAgICAgICAgICAgICAgICdzZXQnIDogUHlTZXRPYmplY3RQdHIsCkBAIC0zOTYsNyArNDAwLDcgQEAKIAogCiBkZWYgX3dyaXRlX2luc3RhbmNlX3JlcHIob3V0LCB2aXNpdGVkLCBuYW1lLCBweW9wX2F0dHJkaWN0LCBhZGRyZXNzKToKLSAgICAnJydTaGFyZWQgY29kZSBmb3IgdXNlIGJ5IG9sZC1zdHlsZSBhbmQgbmV3LXN0eWxlIGNsYXNzZXM6CisgICAgJycnU2hhcmVkIGNvZGUgZm9yIHVzZSBieSBhbGwgY2xhc3NlczoKICAgICB3cml0ZSBhIHJlcHJlc2VudGF0aW9uIHRvIGZpbGUtbGlrZSBvYmplY3QgIm91dCInJycKICAgICBvdXQud3JpdGUoJzwnKQogICAgIG91dC53cml0ZShuYW1lKQpAQCAtNDc5LDcgKzQ4Myw3IEBACiAKICAgICBkZWYgcHJveHl2YWwoc2VsZiwgdmlzaXRlZCk6CiAgICAgICAgICcnJwotICAgICAgICBTdXBwb3J0IGZvciBuZXctc3R5bGUgY2xhc3Nlcy4KKyAgICAgICAgU3VwcG9ydCBmb3IgY2xhc3Nlcy4KIAogICAgICAgICBDdXJyZW50bHkgd2UganVzdCBsb2NhdGUgdGhlIGRpY3Rpb25hcnkgdXNpbmcgYSB0cmFuc2xpdGVyYXRpb24gdG8KICAgICAgICAgcHl0aG9uIG9mIF9QeU9iamVjdF9HZXREaWN0UHRyLCBpZ25vcmluZyBkZXNjcmlwdG9ycwpAQCAtNDk2LDcgKzUwMCw3IEBACiAgICAgICAgICAgICBhdHRyX2RpY3QgPSB7fQogICAgICAgICB0cF9uYW1lID0gc2VsZi5zYWZlX3RwX25hbWUoKQogCi0gICAgICAgICMgTmV3LXN0eWxlIGNsYXNzOgorICAgICAgICAjIENsYXNzOgogICAgICAgICByZXR1cm4gSW5zdGFuY2VQcm94eSh0cF9uYW1lLCBhdHRyX2RpY3QsIGxvbmcoc2VsZi5fZ2RidmFsKSkKIAogICAgIGRlZiB3cml0ZV9yZXByKHNlbGYsIG91dCwgdmlzaXRlZCk6CkBAIC02NjgsNDQgKzY3Miw2IEBACiAgICAgICAgICAgICBweW9wX3ZhbHVlLndyaXRlX3JlcHIob3V0LCB2aXNpdGVkKQogICAgICAgICBvdXQud3JpdGUoJ30nKQogCi1jbGFzcyBQeUluc3RhbmNlT2JqZWN0UHRyKFB5T2JqZWN0UHRyKToKLSAgICBfdHlwZW5hbWUgPSAnUHlJbnN0YW5jZU9iamVjdCcKLQotICAgIGRlZiBwcm94eXZhbChzZWxmLCB2aXNpdGVkKToKLSAgICAgICAgIyBHdWFyZCBhZ2FpbnN0IGluZmluaXRlIGxvb3BzOgotICAgICAgICBpZiBzZWxmLmFzX2FkZHJlc3MoKSBpbiB2aXNpdGVkOgotICAgICAgICAgICAgcmV0dXJuIFByb3h5QWxyZWFkeVZpc2l0ZWQoJzwuLi4+JykKLSAgICAgICAgdmlzaXRlZC5hZGQoc2VsZi5hc19hZGRyZXNzKCkpCi0KLSAgICAgICAgIyBHZXQgbmFtZSBvZiBjbGFzczoKLSAgICAgICAgaW5fY2xhc3MgPSBzZWxmLnB5b3BfZmllbGQoJ2luX2NsYXNzJykKLSAgICAgICAgY2xfbmFtZSA9IGluX2NsYXNzLnB5b3BfZmllbGQoJ2NsX25hbWUnKS5wcm94eXZhbCh2aXNpdGVkKQotCi0gICAgICAgICMgR2V0IGRpY3Rpb25hcnkgb2YgaW5zdGFuY2UgYXR0cmlidXRlczoKLSAgICAgICAgaW5fZGljdCA9IHNlbGYucHlvcF9maWVsZCgnaW5fZGljdCcpLnByb3h5dmFsKHZpc2l0ZWQpCi0KLSAgICAgICAgIyBPbGQtc3R5bGUgY2xhc3M6Ci0gICAgICAgIHJldHVybiBJbnN0YW5jZVByb3h5KGNsX25hbWUsIGluX2RpY3QsIGxvbmcoc2VsZi5fZ2RidmFsKSkKLQotICAgIGRlZiB3cml0ZV9yZXByKHNlbGYsIG91dCwgdmlzaXRlZCk6Ci0gICAgICAgICMgR3VhcmQgYWdhaW5zdCBpbmZpbml0ZSBsb29wczoKLSAgICAgICAgaWYgc2VsZi5hc19hZGRyZXNzKCkgaW4gdmlzaXRlZDoKLSAgICAgICAgICAgIG91dC53cml0ZSgnPC4uLj4nKQotICAgICAgICAgICAgcmV0dXJuCi0gICAgICAgIHZpc2l0ZWQuYWRkKHNlbGYuYXNfYWRkcmVzcygpKQotCi0gICAgICAgICMgT2xkLXN0eWxlIGNsYXNzOgotCi0gICAgICAgICMgR2V0IG5hbWUgb2YgY2xhc3M6Ci0gICAgICAgIGluX2NsYXNzID0gc2VsZi5weW9wX2ZpZWxkKCdpbl9jbGFzcycpCi0gICAgICAgIGNsX25hbWUgPSBpbl9jbGFzcy5weW9wX2ZpZWxkKCdjbF9uYW1lJykucHJveHl2YWwodmlzaXRlZCkKLQotICAgICAgICAjIEdldCBkaWN0aW9uYXJ5IG9mIGluc3RhbmNlIGF0dHJpYnV0ZXM6Ci0gICAgICAgIHB5b3BfaW5fZGljdCA9IHNlbGYucHlvcF9maWVsZCgnaW5fZGljdCcpCi0KLSAgICAgICAgX3dyaXRlX2luc3RhbmNlX3JlcHIob3V0LCB2aXNpdGVkLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbF9uYW1lLCBweW9wX2luX2RpY3QsIHNlbGYuYXNfYWRkcmVzcygpKQotCiBjbGFzcyBQeUxpc3RPYmplY3RQdHIoUHlPYmplY3RQdHIpOgogICAgIF90eXBlbmFtZSA9ICdQeUxpc3RPYmplY3QnCiAKQEAgLTExMjMsMTUgKzEwODksNDYgQEAKICAgICAgICAgcmV0dXJuIF90eXBlX1B5X1VOSUNPREUuc2l6ZW9mCiAKICAgICBkZWYgcHJveHl2YWwoc2VsZiwgdmlzaXRlZCk6Ci0gICAgICAgICMgRnJvbSB1bmljb2Rlb2JqZWN0Lmg6Ci0gICAgICAgICMgICAgIFB5X3NzaXplX3QgbGVuZ3RoOyAgLyogTGVuZ3RoIG9mIHJhdyBVbmljb2RlIGRhdGEgaW4gYnVmZmVyICovCi0gICAgICAgICMgICAgIFB5X1VOSUNPREUgKnN0cjsgICAgLyogUmF3IFVuaWNvZGUgYnVmZmVyICovCi0gICAgICAgIGZpZWxkX2xlbmd0aCA9IGxvbmcoc2VsZi5maWVsZCgnbGVuZ3RoJykpCi0gICAgICAgIGZpZWxkX3N0ciA9IHNlbGYuZmllbGQoJ3N0cicpCisgICAgICAgIGdsb2JhbCBfaXNfcGVwMzkzCisgICAgICAgIGlmIF9pc19wZXAzOTMgaXMgTm9uZToKKyAgICAgICAgICAgIGZpZWxkcyA9IGdkYi5sb29rdXBfdHlwZSgnUHlVbmljb2RlT2JqZWN0JykudGFyZ2V0KCkuZmllbGRzKCkKKyAgICAgICAgICAgIF9pc19wZXAzOTMgPSAnZGF0YScgaW4gW2YubmFtZSBmb3IgZiBpbiBmaWVsZHNdCisgICAgICAgIGlmIF9pc19wZXAzOTM6CisgICAgICAgICAgICAjIFB5dGhvbiAzLjMgYW5kIG5ld2VyCisgICAgICAgICAgICBtYXlfaGF2ZV9zdXJyb2dhdGVzID0gRmFsc2UKKyAgICAgICAgICAgIGNvbXBhY3QgPSBzZWxmLmZpZWxkKCdfYmFzZScpCisgICAgICAgICAgICBhc2NpaSA9IGNvbXBhY3RbJ19iYXNlJ10KKyAgICAgICAgICAgIHN0YXRlID0gYXNjaWlbJ3N0YXRlJ10KKyAgICAgICAgICAgIGlzX2NvbXBhY3RfYXNjaWkgPSAoaW50KHN0YXRlWydhc2NpaSddKSBhbmQgaW50KHN0YXRlWydjb21wYWN0J10pKQorICAgICAgICAgICAgaWYgbm90IGludChzdGF0ZVsncmVhZHknXSk6CisgICAgICAgICAgICAgICAgIyBzdHJpbmcgaXMgbm90IHJlYWR5CisgICAgICAgICAgICAgICAgZmllbGRfbGVuZ3RoID0gbG9uZyhjb21wYWN0Wyd3c3RyX2xlbmd0aCddKQorICAgICAgICAgICAgICAgIG1heV9oYXZlX3N1cnJvZ2F0ZXMgPSBUcnVlCisgICAgICAgICAgICAgICAgZmllbGRfc3RyID0gYXNjaWlbJ3dzdHInXQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBmaWVsZF9sZW5ndGggPSBsb25nKGFzY2lpWydsZW5ndGgnXSkKKyAgICAgICAgICAgICAgICBpZiBpc19jb21wYWN0X2FzY2lpOgorICAgICAgICAgICAgICAgICAgICBmaWVsZF9zdHIgPSBhc2NpaS5hZGRyZXNzICsgMQorICAgICAgICAgICAgICAgIGVsaWYgaW50KHN0YXRlWydjb21wYWN0J10pOgorICAgICAgICAgICAgICAgICAgICBmaWVsZF9zdHIgPSBjb21wYWN0LmFkZHJlc3MgKyAxCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgZmllbGRfc3RyID0gc2VsZi5maWVsZCgnZGF0YScpWydhbnknXQorICAgICAgICAgICAgICAgIHJlcHJfa2luZCA9IGludChzdGF0ZVsna2luZCddKQorICAgICAgICAgICAgICAgIGlmIHJlcHJfa2luZCA9PSAxOgorICAgICAgICAgICAgICAgICAgICBmaWVsZF9zdHIgPSBmaWVsZF9zdHIuY2FzdChfdHlwZV91bnNpZ25lZF9jaGFyX3B0cikKKyAgICAgICAgICAgICAgICBlbGlmIHJlcHJfa2luZCA9PSAyOgorICAgICAgICAgICAgICAgICAgICBmaWVsZF9zdHIgPSBmaWVsZF9zdHIuY2FzdChfdHlwZV91bnNpZ25lZF9zaG9ydF9wdHIpCisgICAgICAgICAgICAgICAgZWxpZiByZXByX2tpbmQgPT0gNDoKKyAgICAgICAgICAgICAgICAgICAgZmllbGRfc3RyID0gZmllbGRfc3RyLmNhc3QoX3R5cGVfdW5zaWduZWRfaW50X3B0cikKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgICMgUHl0aG9uIDMuMiBhbmQgZWFybGllcgorICAgICAgICAgICAgZmllbGRfbGVuZ3RoID0gbG9uZyhzZWxmLmZpZWxkKCdsZW5ndGgnKSkKKyAgICAgICAgICAgIGZpZWxkX3N0ciA9IHNlbGYuZmllbGQoJ3N0cicpCisgICAgICAgICAgICBtYXlfaGF2ZV9zdXJyb2dhdGVzID0gc2VsZi5jaGFyX3dpZHRoKCkgPT0gMgogCiAgICAgICAgICMgR2F0aGVyIGEgbGlzdCBvZiBpbnRzIGZyb20gdGhlIFB5X1VOSUNPREUgYXJyYXk7IHRoZXNlIGFyZSBlaXRoZXIKLSAgICAgICAgIyBVQ1MtMiBvciBVQ1MtNCBjb2RlIHBvaW50czoKLSAgICAgICAgaWYgc2VsZi5jaGFyX3dpZHRoKCkgPiAyOgorICAgICAgICAjIFVDUy0xLCBVQ1MtMiBvciBVQ1MtNCBjb2RlIHBvaW50czoKKyAgICAgICAgaWYgbm90IG1heV9oYXZlX3N1cnJvZ2F0ZXM6CiAgICAgICAgICAgICBQeV9VTklDT0RFcyA9IFtpbnQoZmllbGRfc3RyW2ldKSBmb3IgaSBpbiBzYWZlX3JhbmdlKGZpZWxkX2xlbmd0aCldCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAjIEEgbW9yZSBlbGFib3JhdGUgcm91dGluZSBpZiBzaXplb2YoUHlfVU5JQ09ERSkgaXMgMiBpbiB0aGUKZGlmZiAtLWdpdCBhL1Rvb2xzL2lvYmVuY2gvaW9iZW5jaC5weSBiL1Rvb2xzL2lvYmVuY2gvaW9iZW5jaC5weQppbmRleCA1ZWM2ZjE3Li40MDhiZTdiIDEwMDY0NAotLS0gYS9Ub29scy9pb2JlbmNoL2lvYmVuY2gucHkKKysrIGIvVG9vbHMvaW9iZW5jaC9pb2JlbmNoLnB5CkBAIC0xLDEzICsxLDE0IEBACiAjIC0qLSBjb2Rpbmc6IHV0Zi04IC0qLQogIyBUaGlzIGZpbGUgc2hvdWxkIGJlIGtlcHQgY29tcGF0aWJsZSB3aXRoIGJvdGggUHl0aG9uIDIuNiBhbmQgUHl0aG9uID49IDMuMC4KIAotaW1wb3J0IHRpbWUKK2ltcG9ydCBmdW5jdG9vbHMKK2ltcG9ydCBoYXNobGliCitpbXBvcnQgaXRlcnRvb2xzCiBpbXBvcnQgb3MKK2ltcG9ydCBwbGF0Zm9ybQogaW1wb3J0IHJlCiBpbXBvcnQgc3lzCi1pbXBvcnQgaGFzaGxpYgotaW1wb3J0IGZ1bmN0b29scwotaW1wb3J0IGl0ZXJ0b29scworaW1wb3J0IHRpbWUKIGZyb20gb3B0cGFyc2UgaW1wb3J0IE9wdGlvblBhcnNlcgogCiBvdXQgPSBzeXMuc3Rkb3V0CkBAIC0zMDcsNiArMzA4LDE2IEBACiAgICAgICAgICJsYXJnZSI6IDIsCiAgICAgfQogCisgICAgcHJpbnQoIlB5dGhvbiAlcyIgJSBzeXMudmVyc2lvbikKKyAgICBpZiBzeXMudmVyc2lvbl9pbmZvIDwgKDMsIDMpOgorICAgICAgICBpZiBzeXMubWF4dW5pY29kZSA+IDB4ZmZmZjoKKyAgICAgICAgICAgIHRleHQgPSAiVUNTLTQgKHdpZGUgYnVpbGQpIgorICAgICAgICBlbHNlOgorICAgICAgICAgICAgdGV4dCA9ICJVVEYtMTYgKG5hcnJvdyBidWlsZCkiCisgICAgZWxzZToKKyAgICAgICAgdGV4dCA9ICJQRVAgMzkzIgorICAgIHByaW50KCJVbmljb2RlOiAlcyIgJSB0ZXh0KQorICAgIHByaW50KHBsYXRmb3JtLnBsYXRmb3JtKCkpCiAgICAgYmluYXJ5X2ZpbGVzID0gbGlzdChnZXRfYmluYXJ5X2ZpbGVzKCkpCiAgICAgdGV4dF9maWxlcyA9IGxpc3QoZ2V0X3RleHRfZmlsZXMoKSkKICAgICBpZiAiYiIgaW4gb3B0aW9uczoKZGlmZiAtLWdpdCBhL1Rvb2xzL21zaS9tc2kucHkgYi9Ub29scy9tc2kvbXNpLnB5CmluZGV4IDUzZTY1MmQuLmZmNDkwYmUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL21zaS9tc2kucHkKKysrIGIvVG9vbHMvbXNpL21zaS5weQpAQCAtMTE5LDYgKzExOSw3IEBACiAgICAgIjMwIjoiezY5NTNiYzNiLTY3NjgtNDI5MS04NDEwLTc5MTRjZTZlMmNhOH0iLAogICAgICIzMSI6Ins0YWZjYmEwYi0xM2U0LTQ3YzMtYmViZS00Nzc0MjhiNDY5MTN9IiwKICAgICAiMzIiOiJ7M2ZmOTUzMTUtMTA5Ni00ZDMxLWJkODYtNjAxZDU0MzhhZDVlfSIsCisgICAgIjMzIjoie2Y3NTgxY2E0LWQzNjgtNGVlYS04ZjgyLWQ0OGM2NGM0ZjA0N30iLAogICAgIH0gW21ham9yK21pbm9yXQogCiAjIENvbXB1dGUgdGhlIG5hbWUgdGhhdCBTcGhpbnggZ2l2ZXMgdG8gdGhlIGRvY2ZpbGUKQEAgLTEwMTEsNyArMTAxMiw3IEBACiAgICAgICAgICMgcGFja2FnZSBSRUFETUVzIGlmIHByZXNlbnQKICAgICAgICAgbGliLmdsb2IoIlJFQURNRSIpCiAgICAgICAgIGlmIGRpcj09J0xpYic6Ci0gICAgICAgICAgICBsaWIuYWRkX2ZpbGUoJ3dzZ2lyZWYuZWdnLWluZm8nKQorICAgICAgICAgICAgbGliLmFkZF9maWxlKCJzeXNjb25maWcuY2ZnIikKICAgICAgICAgaWYgZGlyPT0ndGVzdCcgYW5kIHBhcmVudC5waHlzaWNhbD09J0xpYic6CiAgICAgICAgICAgICBsaWIuYWRkX2ZpbGUoIjE4NXRlc3QuZGIiKQogICAgICAgICAgICAgbGliLmFkZF9maWxlKCJhdWRpb3Rlc3QuYXUiKQpAQCAtMTA0Nyw3ICsxMDQ4LDcgQEAKICAgICAgICAgaWYgZGlyPT0iSWNvbnMiOgogICAgICAgICAgICAgbGliLmdsb2IoIiouZ2lmIikKICAgICAgICAgICAgIGxpYi5hZGRfZmlsZSgiaWRsZS5pY25zIikKLSAgICAgICAgaWYgZGlyPT0iY29tbWFuZCIgYW5kIHBhcmVudC5waHlzaWNhbD09ImRpc3R1dGlscyI6CisgICAgICAgIGlmIGRpcj09ImNvbW1hbmQiIGFuZCBwYXJlbnQucGh5c2ljYWwgaW4gKCJkaXN0dXRpbHMiLCAicGFja2FnaW5nIik6CiAgICAgICAgICAgICBsaWIuZ2xvYigid2luaW5zdCouZXhlIikKICAgICAgICAgICAgIGxpYi5hZGRfZmlsZSgiY29tbWFuZF90ZW1wbGF0ZSIpCiAgICAgICAgIGlmIGRpcj09ImxpYjJ0bzMiOgpAQCAtMTA1OSwxNCArMTA2MCwxNCBAQAogICAgICAgICAgICAgbGliLmFkZF9maWxlKCJ0dXJ0bGUuY2ZnIikKICAgICAgICAgaWYgZGlyPT0icHlkb2NfZGF0YSI6CiAgICAgICAgICAgICBsaWIuYWRkX2ZpbGUoIl9weWRvYy5jc3MiKQotICAgICAgICBpZiBkaXI9PSJkYXRhIiBhbmQgcGFyZW50LnBoeXNpY2FsPT0idGVzdCIgYW5kIHBhcmVudC5iYXNlZGlyLnBoeXNpY2FsPT0iZW1haWwiOgorICAgICAgICBpZiBkaXI9PSJkYXRhIiBhbmQgcGFyZW50LnBoeXNpY2FsPT0idGVzdF9lbWFpbCI6CiAgICAgICAgICAgICAjIFRoaXMgc2hvdWxkIGNvbnRhaW4gYWxsIG5vbi0uc3ZuIGZpbGVzIGxpc3RlZCBpbiBzdWJ2ZXJzaW9uCiAgICAgICAgICAgICBmb3IgZiBpbiBvcy5saXN0ZGlyKGxpYi5hYnNvbHV0ZSk6CiAgICAgICAgICAgICAgICAgaWYgZi5lbmRzd2l0aCgiLnR4dCIpIG9yIGY9PSIuc3ZuIjpjb250aW51ZQogICAgICAgICAgICAgICAgIGlmIGYuZW5kc3dpdGgoIi5hdSIpIG9yIGYuZW5kc3dpdGgoIi5naWYiKToKICAgICAgICAgICAgICAgICAgICAgbGliLmFkZF9maWxlKGYpCiAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgcHJpbnQoIldBUk5JTkc6IE5ldyBmaWxlICVzIGluIGVtYWlsL3Rlc3QvZGF0YSIgJSBmKQorICAgICAgICAgICAgICAgICAgICBwcmludCgiV0FSTklORzogTmV3IGZpbGUgJXMgaW4gdGVzdC90ZXN0X2VtYWlsL2RhdGEiICUgZikKICAgICAgICAgZm9yIGYgaW4gb3MubGlzdGRpcihsaWIuYWJzb2x1dGUpOgogICAgICAgICAgICAgaWYgb3MucGF0aC5pc2Rpcihvcy5wYXRoLmpvaW4obGliLmFic29sdXRlLCBmKSk6CiAgICAgICAgICAgICAgICAgcHlkaXJzLmFwcGVuZCgobGliLCBmKSkKQEAgLTExNTgsNiArMTE1OSw4IEBACiAgICAgICAgICAgICBsaWIuYWRkX2ZpbGUoIlJFQURNRS50eHQiLCBzcmM9IlJFQURNRSIpCiAgICAgICAgIGlmIGYgPT0gJ1NjcmlwdHMnOgogICAgICAgICAgICAgbGliLmFkZF9maWxlKCIydG8zLnB5Iiwgc3JjPSIydG8zIikKKyAgICAgICAgICAgIGxpYi5hZGRfZmlsZSgicHlkb2MzLnB5Iiwgc3JjPSJweWRvYzMiKQorICAgICAgICAgICAgbGliLmFkZF9maWxlKCJweXNldHVwMy5weSIsIHNyYz0icHlzZXR1cDMiKQogICAgICAgICAgICAgaWYgaGF2ZV90Y2w6CiAgICAgICAgICAgICAgICAgbGliLnN0YXJ0X2NvbXBvbmVudCgicHlkb2NndWkucHl3IiwgdGNsdGssIGtleWZpbGU9InB5ZG9jZ3VpLnB5dyIpCiAgICAgICAgICAgICAgICAgbGliLmFkZF9maWxlKCJweWRvY2d1aS5weXciKQpkaWZmIC0tZ2l0IGEvVG9vbHMvbXNpL3V1aWRzLnB5IGIvVG9vbHMvbXNpL3V1aWRzLnB5CmluZGV4IGUwNmNkZmIuLmI0MDFiMjkgMTAwNjQ0Ci0tLSBhL1Rvb2xzL21zaS91dWlkcy5weQorKysgYi9Ub29scy9tc2kvdXVpZHMucHkKQEAgLTcsNjYgKzcsNiBAQAogIyBnZW5lcmF0ZWQuIEZvciBvZmZpY2lhbCByZWxlYXNlcywgd2UgcmVjb3JkIHRoZSBwcm9kdWN0IGNvZGVzLAogIyBzbyBwZW9wbGUgY2FuIHJlZmVyIHRvIHRoZW0uCiBwcm9kdWN0X2NvZGVzID0gewotICAgICcyLjUuMTAxJzogJ3tiYzE0Y2UzZS01ZTcyLTRhNjQtYWMxZi1iZjU5YTU3MTg5OGN9JywgIyAyLjVhMQotICAgICcyLjUuMTAyJzogJ3s1ZWVkNTFjMS04ZTlkLTQwNzEtOTRjNS1iNDBkZTVkNDliYTV9JywgIyAyLjVhMgotICAgICcyLjUuMTAzJzogJ3s3M2RjZDk2Ni1mZmVjLTQxNWYtYmIzOS04MzQyYzFmNDcwMTd9JywgIyAyLjVhMwotICAgICcyLjUuMTExJzogJ3tjNzk3ZWNmOC1hOGU2LTRmZWMtYmI5OS01MjZiNjVmMjg2MjZ9JywgIyAyLjViMQotICAgICcyLjUuMTEyJzogJ3szMmJlYjc3NC1mNjI1LTQzOWQtYjU4Ny03MTg3NDg3YmFmMTV9JywgIyAyLjViMgotICAgICcyLjUuMTEzJzogJ3s4OWYyMzkxOC0xMWNmLTRmMDgtYmUxMy1iOWIyZTY0NjNmZDl9JywgIyAyLjViMwotICAgICcyLjUuMTIxJzogJ3s4ZTkzMjFiYy02YjI0LTQ4YTMtOGZkNC1jOTVmOGU1MzFlNWZ9JywgIyAyLjVjMQotICAgICcyLjUuMTIyJzogJ3thNmNkNTA4ZC05NTk5LTQ1ZGEtYTQ0MS1jYmZmYTlmN2UwNzB9JywgIyAyLjVjMgotICAgICcyLjUuMTUwJzogJ3swYTJjNTg1NC01NTdlLTQ4YzgtODM1YS0zYjlmMDc0YmRjYWF9JywgIyAyLjUuMAotICAgICcyLjUuMTEyMSc6J3swMzc4YjQzZS02MTg0LTRjMmYtYmUxYS00YTM2Nzc4MWNkNTR9JywgIyAyLjUuMWMxCi0gICAgJzIuNS4xMTUwJzonezMxODAwMDA0LTYzODYtNDk5OS1hNTE5LTUxOGYyZDc4ZDhmMH0nLCAjIDIuNS4xCi0gICAgJzIuNS4yMTUwJzonezYzMDRhN2RhLTExMzItNGU5MS1hMzQzLWEyOTYyNjllYWI4YX0nLCAjIDIuNS4yYzEKLSAgICAnMi41LjIxNTAnOid7NmI5NzZhZGYtOGFlOC00MzRlLWIyODItYTA2YzdmNjI0ZDJmfScsICMgMi41LjIKLSAgICAnMi42LjEwMSc6ICd7MGJhODJlMWItNTJmZC00ZTAzLTg2MTAtYTZjNzYyMzhlOGE4fScsICMgMi42YTEKLSAgICAnMi42LjEwMic6ICd7M2IyN2UxNmMtNTZkYi00NTcwLWEyZDMtZTlhMjYxODBjNjBifScsICMgMi42YTIKLSAgICAnMi42LjEwMyc6ICd7Y2QwNmE5YzUtYmRlNS00YmQ3LTk4NzQtNDg5MzM5OTcxMjJhfScsICMgMi42YTMKLSAgICAnMi42LjEwNCc6ICd7ZGM2ZWQ2MzQtNDc0YS00YTUwLWE1NDctOGRlNGI3NDkxZTUzfScsICMgMi42YTQKLSAgICAnMi42LjExMSc6ICd7M2Y4MjA3OWEtNWJlZS00YzRhLThhNDEtODI5MjM4OWUyNGFlfScsICMgMi42YjEKLSAgICAnMi42LjExMic6ICd7OGEwZTU5NzAtZjNlNi00NzM3LTlhMmItYmM1ZmYwZjE1ZmI1fScsICMgMi42YjIKLSAgICAnMi42LjExMyc6ICd7ZGY0ZjVjMjEtNmZjYy00NTQwLTk1ZGUtODVmZWJhNjM0ZTc2fScsICMgMi42YjMKLSAgICAnMi42LjEyMSc6ICd7YmJkMzQ0NjQtZGRlYi00MDI4LTk5ZTUtZjE2YzRhOGZiZGIzfScsICMgMi42YzEKLSAgICAnMi42LjEyMic6ICd7OGY2NDc4N2UtYTAyMy00YzYwLWJmZWUtMjVkM2EzZjU5MmM2fScsICMgMi42YzIKLSAgICAnMi42LjE1MCc6ICd7MTEwZWI1YzQtZTk5NS00Y2ZiLWFiODAtYTVmMzE1YmVhOWU4fScsICMgMi42LjAKLSAgICAnMi42LjExNTAnOid7OWNjODkxNzAtMDAwYi00NTdkLTkxZjEtNTM2OTFmODViMjIzfScsICMgMi42LjEKLSAgICAnMi42LjIxMjEnOid7YWRhYzQxMmItYjIwOS00YzE1LWI2YWItZGNhMWI2ZTQ3MTQ0fScsICMgMi42LjJjMQotICAgICcyLjYuMjE1MCc6J3syNGFhYjQyMC00ZTMwLTQ0OTYtOTczOS0zZTIxNmYzZGU2YWV9JywgIyAyLjYuMgotICAgICcyLjYuMzEyMSc6J3thNzNlMDI1NC1kY2RhLTRmZTQtYmYzNy1jN2UxYzRmNGViYjZ9JywgIyAyLjYuM2MxCi0gICAgJzIuNi4zMTUwJzonezNkOWFjMDk1LWUxMTUtNGU5NC1iZGVmLTdmN2VkZjE3Njk3ZH0nLCAjIDIuNi4zCi0gICAgJzIuNi40MTIxJzonezcyN2RlNjA1LTAzNTktNDYwNi1hOTRiLWMyMDMzNjUyMzc5Yn0nLCAjIDIuNi40YzEKLSAgICAnMi42LjQxMjInOid7NGY3NjAzYzYtNjM1Mi00Mjk5LWEzOTgtMTUwYTMxYjE5YWNjfScsICMgMi42LjRjMgotICAgICcyLjYuNDE1MCc6J3tlNzM5NGEwZi0zZjgwLTQ1YjEtODdmYy1hYmNkNTE4OTMyNDZ9JywgIyAyLjYuNAotICAgICcyLjYuNTEyMSc6J3tlMGUyNzNkNy03NTk4LTQ3MDEtODMyNS1jOTBjMDY5ZmQ1ZmZ9JywgIyAyLjYuNWMxCi0gICAgJzIuNi41MTIyJzone2ZhMjI3Yjc2LTA2NzEtNGRjNi1iODI2LWMyZmYyYTcwZGZkNX0nLCAjIDIuNi41YzIKLSAgICAnMi42LjUxNTAnOid7NDcyM2YxOTktZmE2NC00MjMzLThlNmUtOWZjY2M5NWExOGVlfScsICMgMi42LjUKLSAgICAnMi43LjEwMSc6ICd7ZWNhMWJiZWYtNDMyYy00OWFlLWE2NjctYzIxM2NjN2JiZjIyfScsICMgMi43YTEKLSAgICAnMi43LjEwMic6ICd7MjFjZTE2ZWQtNzNjNC00NjBkLTliMTEtNTIyZjQxN2IyMDkwfScsICMgMi43YTIKLSAgICAnMi43LjEwMyc6ICd7NmU3ZGJkNTUtYmE0YS00OGFjLWE2ODgtNmM3NWRiNGQ3NTAwfScsICMgMi43YTMKLSAgICAnMi43LjEwNCc6ICd7ZWU3NzRiYTMtNzRhNS00OGQ5LWI0MjUtYjM1YTI4NzI2MGM4fScsICMgMi43YTQKLSAgICAnMi43LjExMSc6ICd7OWNmZDllYzctYTljNy00OTgwLWExYzYtMDU0ZmM2NDkzZWIzfScsICMgMi43YjEKLSAgICAnMi43LjExMic6ICd7OWE3MmZhZjYtYzMwNC00MTY1LTg1OTUtOTI5MWZmMzBjYWM2fScsICMgMi43YjIKLSAgICAnMi43LjEyMSc6ICd7ZjUzMGM5NGEtZGQ1My00ZGU5LTk0OGUtYjYzMmI5Y2I0OGQyfScsICMgMi43YzEKLSAgICAnMi43LjEyMic6ICd7ZjgwOTA1ZDItZGQ4ZC00YjhlLThhNDAtYzIzYzkzZGNhMDdkfScsICMgMi43YzIKLSAgICAnMi43LjE1MCc6ICd7MjBjMzE0MzUtMmEwYS00NTgwLWJlOGItYWMwNmZjMjQzY2E0fScsICMgMi43LjAKLSAgICAnMy4wLjEwMSc6ICd7ODU1NDI2M2EtMzI0Mi00ODU3LTkzNTktYWE4N2JjMmM1OGMyfScsICMgMy4wYTEKLSAgICAnMy4wLjEwMic6ICd7NjkyZDZlMmMtZjBhYy00MGI4LWExMzMtNzE5MWFlZWI2N2Y5fScsICMgMy4wYTIKLSAgICAnMy4wLjEwMyc6ICd7NDljYjI5OTUtNzUxYS00NzUzLWJlN2EtZDBiMWJiNTg1ZTA2fScsICMgMy4wYTMKLSAgICAnMy4wLjEwNCc6ICd7ODdjYjAxOWUtMTlmZC00MjM4LWIxYzctODU3NTE0MzdkNjQ2fScsICMgMy4wYTQKLSAgICAnMy4wLjEwNSc6ICd7Y2YyNjU5YWYtMTllYy00M2QyLThjMzUtMGY2YTA5NDM5ZDQyfScsICMgMy4wYTUKLSAgICAnMy4wLjExMSc6ICd7MzZjMjZmNTUtODM3ZC00NWNmLTg0OGMtNWY1YzBmYjQ3YTI4fScsICMgMy4wYjEKLSAgICAnMy4wLjExMic6ICd7MDU2YTBmYmMtYzhmZS00YzYxLWFhZGUtYzQ0MTFiNzBjOTk4fScsICMgMy4wYjIKLSAgICAnMy4wLjExMyc6ICd7MmIyZTg5YTktODNhZi00M2Y5LWI3ZDUtOTZlODBjNWEzZjI2fScsICMgMy4wYjMKLSAgICAnMy4wLjExNCc6ICd7ZTk1YzMxYWYtNjliZS00ZGQ3LTk2ZTYtZTVmYzg1ZTY2MGU2fScsICMgMy4wYjQKLSAgICAnMy4wLjEyMSc6ICd7ZDA5NzljNWUtY2QzYy00MmVjLWJlNGMtZTI5NGRhNzkzNTczfScsICMgMy4wYzEKLSAgICAnMy4wLjEyMic6ICd7ZjcwN2I4ZTktYTI1Ny00MDQ1LTgxOGUtNDkyM2ZjMjBmYmI2fScsICMgMy4wYzIKLSAgICAnMy4wLjEyMyc6ICd7NWU3MjA4ZjEtODY0My00ZWEyLWFiNWUtNDY0NDg4NzExMmUzfScsICMgMy4wYzMKLSAgICAnMy4wLjE1MCc6ICd7ZTBlNTZlMjEtNTVkZS00Zjc3LWExMDktMWJhYTcyMzQ4NzQzfScsICMgMy4wLjAKLSAgICAnMy4wLjExMjEnOid7ZDM1YjFlYTUtM2Q3MC00ODcyLWJmN2UtY2QwNjZhNzdhOWM5fScsICMgMy4wLjFjMQotICAgICczLjAuMTE1MCc6J3tkZTJmMmQ5Yy01M2UyLTQwZWUtODIwOS03NGRhNjNjYjA2MGV9JywgIyAzLjAuMQotICAgICczLjAuMjEyMSc6J3tjZWY3OWU3Zi05ODA5LTQ5ZTItYWZkMi1lMjQxNDhkN2M4NTV9JywgIyAzLjAuMmMxCi0gICAgJzMuMC4yMTUwJzonezBjZjNiOTVhLTgzODItNDYwNy05Nzc5LWMzNjQwN2ZmMzYyY30nLCAjIDMuMC4yCiAgICAgJzMuMS4xMDEnOiAne2M0MjNlYWRhLWM0OTgtNGQ1MS05ZWI0LWJmZWFlNjQ3ZTBhMH0nLCAjIDMuMWExCiAgICAgJzMuMS4xMDInOiAne2Y2ZTE5OWJmLWRjNjQtNDJmMy04N2Q0LTE1MjU5OTFhMDEzZX0nLCAjIDMuMWEyCiAgICAgJzMuMS4xMTEnOiAne2MzYzgyODkzLTY5YjItNDY3Ni04NTU0LTFiNmVlNmMxOTFlOX0nLCAjIDMuMWIxCmRpZmYgLS1naXQgYS9Ub29scy9weWJlbmNoL3B5YmVuY2gucHkgYi9Ub29scy9weWJlbmNoL3B5YmVuY2gucHkKaW5kZXggOGVhYWQ2My4uY2MxZTU1YyAxMDA3NTUKLS0tIGEvVG9vbHMvcHliZW5jaC9weWJlbmNoLnB5CisrKyBiL1Rvb2xzL3B5YmVuY2gvcHliZW5jaC5weQpAQCAtMTA3LDYgKzEwNyw3IEBACiAgICAgICAgIHByaW50KCdHZXR0aW5nIG1hY2hpbmUgZGV0YWlscy4uLicpCiAgICAgYnVpbGRubywgYnVpbGRkYXRlID0gcGxhdGZvcm0ucHl0aG9uX2J1aWxkKCkKICAgICBweXRob24gPSBwbGF0Zm9ybS5weXRob25fdmVyc2lvbigpCisgICAgIyBYWFggdGhpcyBpcyBub3cgYWx3YXlzIFVDUzQsIG1heWJlIHJlcGxhY2UgaXQgd2l0aCAnUEVQMzkzJyBpbiAzLjMrPwogICAgIGlmIHN5cy5tYXh1bmljb2RlID09IDY1NTM1OgogICAgICAgICAjIFVDUzIgYnVpbGQgKHN0YW5kYXJkKQogICAgICAgICB1bml0eXBlID0gJ1VDUzInCmRpZmYgLS1naXQgYS9Ub29scy9zY3JpcHRzL1JFQURNRSBiL1Rvb2xzL3NjcmlwdHMvUkVBRE1FCmluZGV4IDhjMDI1MjkuLmViMjhhOWUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL3NjcmlwdHMvUkVBRE1FCisrKyBiL1Rvb2xzL3NjcmlwdHMvUkVBRE1FCkBAIC0xNSw3ICsxNSw3IEBACiBkaWZmLnB5ICAgICAgICAgICAgICAgICBQcmludCBmaWxlIGRpZmZzIGluIGNvbnRleHQsIHVuaWZpZWQsIG9yIG5kaWZmIGZvcm1hdHMKIGR1dHJlZS5weSAgICAgICAgICAgICAgIEZvcm1hdCBkdSgxKSBvdXRwdXQgYXMgYSB0cmVlIHNvcnRlZCBieSBzaXplCiBlcHRhZ3MucHkgICAgICAgICAgICAgICBDcmVhdGUgRW1hY3MgVEFHUyBmaWxlIGZvciBQeXRob24gbW9kdWxlcwotZmluZF9yZWN1cnNpb25saW1pdC5weSAgRmluZCB0aGUgbWF4aW11bSByZWN1cnNpb24gbGltaXQgb24gdGhpcyBtYWNoaW5lIAorZmluZF9yZWN1cnNpb25saW1pdC5weSAgRmluZCB0aGUgbWF4aW11bSByZWN1cnNpb24gbGltaXQgb24gdGhpcyBtYWNoaW5lCiBmaW5kZGl2LnB5ICAgICAgICAgICAgICBBIGdyZXAtbGlrZSB0b29sIHRoYXQgbG9va3MgZm9yIGRpdmlzaW9uIG9wZXJhdG9ycwogZmluZGxpbmtzdG8ucHkgICAgICAgICAgUmVjdXJzaXZlbHkgZmluZCBzeW1ib2xpYyBsaW5rcyB0byBhIGdpdmVuIHBhdGggcHJlZml4CiBmaW5kbm9jb2RpbmcucHkgICAgICAgICBGaW5kIHNvdXJjZSBmaWxlcyB3aGljaCBuZWVkIGFuIGVuY29kaW5nIGRlY2xhcmF0aW9uCkBAIC01Myw2ICs1Myw3IEBACiByZWluZGVudC5weSAgICAgICAgICAgICBDaGFuZ2UgLnB5IGZpbGVzIHRvIHVzZSA0LXNwYWNlIGluZGVudHMKIHJlaW5kZW50LXJzdC5weSAgICAgICAgIEZpeC11cCByZVN0cnVjdHVyZWRUZXh0IGZpbGUgd2hpdGVzcGFjZQogcmdyZXAucHkgICAgICAgICAgICAgICAgUmV2ZXJzZSBncmVwIHRocm91Z2ggYSBmaWxlICh1c2VmdWwgZm9yIGJpZyBsb2dmaWxlcykKK3J1bl90ZXN0cy5weSAgICAgICAgICAgIFJ1biB0aGUgdGVzdCBzdWl0ZSB3aXRoIG1vcmUgc2Vuc2libGUgZGVmYXVsdCBvcHRpb25zCiBzZXJ2ZS5weSAgICAgICAgICAgICAgICBTbWFsbCB3c2dpcmVmLWJhc2VkIHdlYiBzZXJ2ZXIsIHVzZWQgaW4gbWFrZSBzZXJ2ZSBpbiBEb2MKIHN1ZmYucHkgICAgICAgICAgICAgICAgIFNvcnQgYSBsaXN0IG9mIGZpbGVzIGJ5IHN1ZmZpeAogc3ZuZW9sLnB5ICAgICAgICAgICAgICAgU2V0IHN2bjplb2wtc3R5bGUgb24gYWxsIGZpbGVzIGluIGRpcmVjdG9yeQpkaWZmIC0tZ2l0IGEvVG9vbHMvc2NyaXB0cy9maW5kbm9jb2RpbmcucHkgYi9Ub29scy9zY3JpcHRzL2ZpbmRub2NvZGluZy5weQppbmRleCA3NzYwN2NlLi5jNDJmYTdjIDEwMDc1NQotLS0gYS9Ub29scy9zY3JpcHRzL2ZpbmRub2NvZGluZy5weQorKysgYi9Ub29scy9zY3JpcHRzL2ZpbmRub2NvZGluZy5weQpAQCAtMiw3ICsyLDcgQEAKIAogIiIiTGlzdCBhbGwgdGhvc2UgUHl0aG9uIGZpbGVzIHRoYXQgcmVxdWlyZSBhIGNvZGluZyBkaXJlY3RpdmUKIAotVXNhZ2U6IG5vY29kaW5nLnB5IGRpcjEgW2RpcjIuLi5dCitVc2FnZTogZmluZG5vY29kaW5nLnB5IGRpcjEgW2RpcjIuLi5dCiAiIiIKIAogX19hdXRob3JfXyA9ICJPbGVnIEJyb3l0bWFubiwgR2VvcmcgQnJhbmRsIgpAQCAtNTAsNyArNTAsNyBAQAogCiBkZWYgbmVlZHNfZGVjbGFyYXRpb24oZnVsbHBhdGgpOgogICAgIHRyeToKLSAgICAgICAgaW5maWxlID0gb3BlbihmdWxscGF0aCwgJ3JVJykKKyAgICAgICAgaW5maWxlID0gb3BlbihmdWxscGF0aCkKICAgICBleGNlcHQgSU9FcnJvcjogIyBPb3BzLCB0aGUgZmlsZSB3YXMgcmVtb3ZlZCAtIGlnbm9yZSBpdAogICAgICAgICByZXR1cm4gTm9uZQogCmRpZmYgLS1naXQgYS9Ub29scy9zY3JpcHRzL3BhdGNoY2hlY2sucHkgYi9Ub29scy9zY3JpcHRzL3BhdGNoY2hlY2sucHkKaW5kZXggZGM2YjkzMi4uM2UwMTU1ZiAxMDA3NTUKLS0tIGEvVG9vbHMvc2NyaXB0cy9wYXRjaGNoZWNrLnB5CisrKyBiL1Rvb2xzL3NjcmlwdHMvcGF0Y2hjaGVjay5weQpAQCAtMzksMjcgKzM5LDEzIEBACiBAc3RhdHVzKCJHZXR0aW5nIHRoZSBsaXN0IG9mIGZpbGVzIHRoYXQgaGF2ZSBiZWVuIGFkZGVkL2NoYW5nZWQiLAogICAgICAgICBpbmZvPWxhbWJkYSB4OiBuX2ZpbGVzX3N0cihsZW4oeCkpKQogZGVmIGNoYW5nZWRfZmlsZXMoKToKLSAgICAiIiJHZXQgdGhlIGxpc3Qgb2YgY2hhbmdlZCBvciBhZGRlZCBmaWxlcyBmcm9tIHRoZSBWQ1MuIiIiCi0gICAgaWYgb3MucGF0aC5pc2Rpcihvcy5wYXRoLmpvaW4oU1JDRElSLCAnLmhnJykpOgotICAgICAgICB2Y3MgPSAnaGcnCi0gICAgICAgIGNtZCA9ICdoZyBzdGF0dXMgLS1hZGRlZCAtLW1vZGlmaWVkIC0tbm8tc3RhdHVzJwotICAgIGVsaWYgb3MucGF0aC5pc2RpcignLnN2bicpOgotICAgICAgICB2Y3MgPSAnc3ZuJwotICAgICAgICBjbWQgPSAnc3ZuIHN0YXR1cyAtLXF1aWV0IC0tbm9uLWludGVyYWN0aXZlIC0taWdub3JlLWV4dGVybmFscycKLSAgICBlbHNlOgorICAgICIiIkdldCB0aGUgbGlzdCBvZiBjaGFuZ2VkIG9yIGFkZGVkIGZpbGVzIGZyb20gTWVyY3VyaWFsLiIiIgorICAgIGlmIG5vdCBvcy5wYXRoLmlzZGlyKG9zLnBhdGguam9pbihTUkNESVIsICcuaGcnKSk6CiAgICAgICAgIHN5cy5leGl0KCduZWVkIGEgY2hlY2tvdXQgdG8gZ2V0IG1vZGlmaWVkIGZpbGVzJykKIAotICAgIHN0ID0gc3VicHJvY2Vzcy5Qb3BlbihjbWQuc3BsaXQoKSwgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSkKLSAgICB0cnk6Ci0gICAgICAgIHN0LndhaXQoKQotICAgICAgICBpZiB2Y3MgPT0gJ2hnJzoKLSAgICAgICAgICAgIHJldHVybiBbeC5kZWNvZGUoKS5yc3RyaXAoKSBmb3IgeCBpbiBzdC5zdGRvdXRdCi0gICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBvdXRwdXQgPSAoeC5kZWNvZGUoKS5yc3RyaXAoKS5yc3BsaXQoTm9uZSwgMSlbLTFdCi0gICAgICAgICAgICAgICAgICAgICAgZm9yIHggaW4gc3Quc3Rkb3V0IGlmIHhbMF0gaW4gYidBTScpCi0gICAgICAgIHJldHVybiBzZXQocGF0aCBmb3IgcGF0aCBpbiBvdXRwdXQgaWYgb3MucGF0aC5pc2ZpbGUocGF0aCkpCi0gICAgZmluYWxseToKLSAgICAgICAgc3Quc3Rkb3V0LmNsb3NlKCkKKyAgICBjbWQgPSAnaGcgc3RhdHVzIC0tYWRkZWQgLS1tb2RpZmllZCAtLW5vLXN0YXR1cycKKyAgICB3aXRoIHN1YnByb2Nlc3MuUG9wZW4oY21kLnNwbGl0KCksIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUpIGFzIHN0OgorICAgICAgICByZXR1cm4gW3guZGVjb2RlKCkucnN0cmlwKCkgZm9yIHggaW4gc3Quc3Rkb3V0XQogCiAKIGRlZiByZXBvcnRfbW9kaWZpZWRfZmlsZXMoZmlsZV9wYXRocyk6CkBAIC03NywxMCArNjMsOCBAQAogZGVmIG5vcm1hbGl6ZV93aGl0ZXNwYWNlKGZpbGVfcGF0aHMpOgogICAgICIiIk1ha2Ugc3VyZSB0aGF0IHRoZSB3aGl0ZXNwYWNlIGZvciAucHkgZmlsZXMgaGF2ZSBiZWVuIG5vcm1hbGl6ZWQuIiIiCiAgICAgcmVpbmRlbnQubWFrZWJhY2t1cCA9IEZhbHNlICAjIE5vIG5lZWQgdG8gY3JlYXRlIGJhY2t1cHMuCi0gICAgZml4ZWQgPSBbXQotICAgIGZvciBwYXRoIGluICh4IGZvciB4IGluIGZpbGVfcGF0aHMgaWYgeC5lbmRzd2l0aCgnLnB5JykpOgotICAgICAgICBpZiByZWluZGVudC5jaGVjayhvcy5wYXRoLmpvaW4oU1JDRElSLCBwYXRoKSk6Ci0gICAgICAgICAgICBmaXhlZC5hcHBlbmQocGF0aCkKKyAgICBmaXhlZCA9IFtwYXRoIGZvciBwYXRoIGluIGZpbGVfcGF0aHMgaWYgcGF0aC5lbmRzd2l0aCgnLnB5JykgYW5kCisgICAgICAgICAgICAgcmVpbmRlbnQuY2hlY2sob3MucGF0aC5qb2luKFNSQ0RJUiwgcGF0aCkpXQogICAgIHJldHVybiBmaXhlZAogCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL3NjcmlwdHMvcHlzZXR1cDMgYi9Ub29scy9zY3JpcHRzL3B5c2V0dXAzCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAuLmU2YTkwOGQKLS0tIC9kZXYvbnVsbAorKysgYi9Ub29scy9zY3JpcHRzL3B5c2V0dXAzCkBAIC0wLDAgKzEsNCBAQAorIyEvdXNyL2Jpbi9lbnYgcHl0aG9uMworaW1wb3J0IHN5cworZnJvbSBwYWNrYWdpbmcucnVuIGltcG9ydCBtYWluCitzeXMuZXhpdChtYWluKCkpCmRpZmYgLS1naXQgYS9Ub29scy9zY3JpcHRzL3B5c291cmNlLnB5IGIvVG9vbHMvc2NyaXB0cy9weXNvdXJjZS5weQppbmRleCAwNDgxMzFlLi5jN2RiZTYwIDEwMDc1NQotLS0gYS9Ub29scy9zY3JpcHRzL3B5c291cmNlLnB5CisrKyBiL1Rvb2xzL3NjcmlwdHMvcHlzb3VyY2UucHkKQEAgLTQyLDcgKzQyLDcgQEAKICAgICAgICAgcmV0dXJuIE5vbmUKIAogICAgIHRyeToKLSAgICAgICAgcmV0dXJuIG9wZW4oZnVsbHBhdGgsICdyVScpCisgICAgICAgIHJldHVybiBvcGVuKGZ1bGxwYXRoKQogICAgIGV4Y2VwdCBJT0Vycm9yIGFzIGVycjogIyBBY2Nlc3MgZGVuaWVkLCBvciBhIHNwZWNpYWwgZmlsZSAtIGlnbm9yZSBpdAogICAgICAgICBwcmludF9kZWJ1ZygiJXM6IGFjY2VzcyBkZW5pZWQ6ICVzIiAlIChmdWxscGF0aCwgZXJyKSkKICAgICAgICAgcmV0dXJuIE5vbmUKZGlmZiAtLWdpdCBhL1Rvb2xzL3NjcmlwdHMvcmVpbmRlbnQucHkgYi9Ub29scy9zY3JpcHRzL3JlaW5kZW50LnB5CmluZGV4IGIxODk5M2IuLjRhOTE2ZWEgMTAwNzU1Ci0tLSBhL1Rvb2xzL3NjcmlwdHMvcmVpbmRlbnQucHkKKysrIGIvVG9vbHMvc2NyaXB0cy9yZWluZGVudC5weQpAQCAtOCw2ICs4LDggQEAKIC1yICgtLXJlY3Vyc2UpICBSZWN1cnNlLiAgIFNlYXJjaCBmb3IgYWxsIC5weSBmaWxlcyBpbiBzdWJkaXJlY3RvcmllcyB0b28uCiAtbiAoLS1ub2JhY2t1cCkgTm8gYmFja3VwLiBEb2VzIG5vdCBtYWtlIGEgIi5iYWsiIGZpbGUgYmVmb3JlIHJlaW5kZW50aW5nLgogLXYgKC0tdmVyYm9zZSkgIFZlcmJvc2UuICAgUHJpbnQgaW5mb3JtYXRpdmUgbXNnczsgZWxzZSBubyBvdXRwdXQuCisgICAoLS1uZXdsaW5lKSAgTmV3bGluZS4gICBTcGVjaWZ5IHRoZSBuZXdsaW5lIGNoYXJhY3RlciB0byB1c2UgKENSTEYsIExGKS4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIERlZmF1bHQgaXMgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIGZpbGUuCiAtaCAoLS1oZWxwKSAgICAgSGVscC4gICAgICBQcmludCB0aGlzIHVzYWdlIGluZm9ybWF0aW9uIGFuZCBleGl0LgogCiBDaGFuZ2UgUHl0aG9uICgucHkpIGZpbGVzIHRvIHVzZSA0LXNwYWNlIGluZGVudHMgYW5kIG5vIGhhcmQgdGFiIGNoYXJhY3RlcnMuCkBAIC01MCw2ICs1Miw4IEBACiByZWN1cnNlID0gRmFsc2UKIGRyeXJ1biA9IEZhbHNlCiBtYWtlYmFja3VwID0gVHJ1ZQorc3BlY19uZXdsaW5lID0gTm9uZQorIiIiQSBzcGVjaWZpZWQgbmV3bGluZSB0byBiZSB1c2VkIGluIHRoZSBvdXRwdXQgKHNldCBieSAtLW5ld2xpbmUgb3B0aW9uKSIiIgogCiAKIGRlZiB1c2FnZShtc2c9Tm9uZSk6CkBAIC02MiwxMyArNjYsMTIgQEAKICAgICBzeXMuc3RkZXJyLndyaXRlKCIgIi5qb2luKHN0cihhcmcpIGZvciBhcmcgaW4gYXJncykpCiAgICAgc3lzLnN0ZGVyci53cml0ZSgiXG4iKQogCi0KIGRlZiBtYWluKCk6CiAgICAgaW1wb3J0IGdldG9wdAotICAgIGdsb2JhbCB2ZXJib3NlLCByZWN1cnNlLCBkcnlydW4sIG1ha2ViYWNrdXAKKyAgICBnbG9iYWwgdmVyYm9zZSwgcmVjdXJzZSwgZHJ5cnVuLCBtYWtlYmFja3VwLCBzcGVjX25ld2xpbmUKICAgICB0cnk6CiAgICAgICAgIG9wdHMsIGFyZ3MgPSBnZXRvcHQuZ2V0b3B0KHN5cy5hcmd2WzE6XSwgImRybnZoIiwKLSAgICAgICAgICAgICAgICAgICAgICAgIFsiZHJ5cnVuIiwgInJlY3Vyc2UiLCAibm9iYWNrdXAiLCAidmVyYm9zZSIsICJoZWxwIl0pCisgICAgICAgICAgICBbImRyeXJ1biIsICJyZWN1cnNlIiwgIm5vYmFja3VwIiwgInZlcmJvc2UiLCAibmV3bGluZT0iLCAiaGVscCJdKQogICAgIGV4Y2VwdCBnZXRvcHQuZXJyb3IgYXMgbXNnOgogICAgICAgICB1c2FnZShtc2cpCiAgICAgICAgIHJldHVybgpAQCAtODEsNiArODQsMTEgQEAKICAgICAgICAgICAgIG1ha2ViYWNrdXAgPSBGYWxzZQogICAgICAgICBlbGlmIG8gaW4gKCctdicsICctLXZlcmJvc2UnKToKICAgICAgICAgICAgIHZlcmJvc2UgPSBUcnVlCisgICAgICAgIGVsaWYgbyBpbiAoJy0tbmV3bGluZScsKToKKyAgICAgICAgICAgIGlmIG5vdCBhLnVwcGVyKCkgaW4gKCdDUkxGJywgJ0xGJyk6CisgICAgICAgICAgICAgICAgdXNhZ2UoKQorICAgICAgICAgICAgICAgIHJldHVybgorICAgICAgICAgICAgc3BlY19uZXdsaW5lID0gZGljdChDUkxGPSdcclxuJywgTEY9J1xuJylbYS51cHBlcigpXQogICAgICAgICBlbGlmIG8gaW4gKCctaCcsICctLWhlbHAnKToKICAgICAgICAgICAgIHVzYWdlKCkKICAgICAgICAgICAgIHJldHVybgpAQCAtMTE4LDkgKzEyNiw5IEBACiAgICAgICAgIGVycnByaW50KCIlczogSS9PIEVycm9yOiAlcyIgJSAoZmlsZSwgc3RyKG1zZykpKQogICAgICAgICByZXR1cm4KIAotICAgIG5ld2xpbmUgPSByLm5ld2xpbmVzCisgICAgbmV3bGluZSA9IHNwZWNfbmV3bGluZSBpZiBzcGVjX25ld2xpbmUgZWxzZSByLm5ld2xpbmVzCiAgICAgaWYgaXNpbnN0YW5jZShuZXdsaW5lLCB0dXBsZSk6Ci0gICAgICAgIGVycnByaW50KCIlczogbWl4ZWQgbmV3bGluZXMgZGV0ZWN0ZWQ7IGNhbm5vdCBwcm9jZXNzIGZpbGUiICUgZmlsZSkKKyAgICAgICAgZXJycHJpbnQoIiVzOiBtaXhlZCBuZXdsaW5lcyBkZXRlY3RlZDsgY2Fubm90IGNvbnRpbnVlIHdpdGhvdXQgLS1uZXdsaW5lIiAlIGZpbGUpCiAgICAgICAgIHJldHVybgogCiAgICAgaWYgci5ydW4oKToKZGlmZiAtLWdpdCBhL1Rvb2xzL3NjcmlwdHMvcnVuX3Rlc3RzLnB5IGIvVG9vbHMvc2NyaXB0cy9ydW5fdGVzdHMucHkKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uZjc1MGUxOQotLS0gL2Rldi9udWxsCisrKyBiL1Rvb2xzL3NjcmlwdHMvcnVuX3Rlc3RzLnB5CkBAIC0wLDAgKzEsNDcgQEAKKyIiIlJ1biBQeXRob24ncyB0ZXN0IHN1aXRlIGluIGEgZmFzdCwgcmlnb3JvdXMgd2F5LgorCitUaGUgZGVmYXVsdHMgYXJlIG1lYW50IHRvIGJlIHJlYXNvbmFibHkgdGhvcm91Z2gsIHdoaWxlIHNraXBwaW5nIGNlcnRhaW4KK3Rlc3RzIHRoYXQgY2FuIGJlIHRpbWUtY29uc3VtaW5nIG9yIHJlc291cmNlLWludGVuc2l2ZSAoZS5nLiBsYXJnZWZpbGUpLAorb3IgZGlzdHJhY3RpbmcgKGUuZy4gYXVkaW8gYW5kIGd1aSkuIFRoZXNlIGRlZmF1bHRzIGNhbiBiZSBvdmVycmlkZGVuIGJ5CitzaW1wbHkgcGFzc2luZyBhIC11IG9wdGlvbiB0byB0aGlzIHNjcmlwdC4KKworIiIiCisKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHRlc3Quc3VwcG9ydAorCisKK2RlZiBpc19tdWx0aXByb2Nlc3NfZmxhZyhhcmcpOgorICAgIHJldHVybiBhcmcuc3RhcnRzd2l0aCgnLWonKSBvciBhcmcuc3RhcnRzd2l0aCgnLS1tdWx0aXByb2Nlc3MnKQorCisKK2RlZiBpc19yZXNvdXJjZV91c2VfZmxhZyhhcmcpOgorICAgIHJldHVybiBhcmcuc3RhcnRzd2l0aCgnLXUnKSBvciBhcmcuc3RhcnRzd2l0aCgnLS11c2UnKQorCisKK2RlZiBtYWluKHJlZ3J0ZXN0X2FyZ3MpOgorICAgIGFyZ3MgPSBbc3lzLmV4ZWN1dGFibGUsCisgICAgICAgICAgICAnLVcnLCAnZGVmYXVsdCcsICAgICAgIyBXYXJuaW5ncyBzZXQgdG8gJ2RlZmF1bHQnCisgICAgICAgICAgICAnLWJiJywgICAgICAgICAgICAgICAgIyBXYXJuaW5ncyBhYm91dCBieXRlcy9ieXRlYXJyYXkKKyAgICAgICAgICAgICctRScsICAgICAgICAgICAgICAgICAjIElnbm9yZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMKKyAgICAgICAgICAgIF0KKyAgICAjIEFsbG93IHVzZXItc3BlY2lmaWVkIGludGVycHJldGVyIG9wdGlvbnMgdG8gb3ZlcnJpZGUgb3VyIGRlZmF1bHRzLgorICAgIGFyZ3MuZXh0ZW5kKHRlc3Quc3VwcG9ydC5hcmdzX2Zyb21faW50ZXJwcmV0ZXJfZmxhZ3MoKSkKKyAgICBhcmdzLmV4dGVuZChbJy1tJywgJ3Rlc3QnLCAgICAjIFJ1biB0aGUgdGVzdCBzdWl0ZQorICAgICAgICAgICAgICAgICAnLXInLCAgICAgICAgICAgICMgUmFuZG9taXplIHRlc3Qgb3JkZXIKKyAgICAgICAgICAgICAgICAgJy13JywgICAgICAgICAgICAjIFJlLXJ1biBmYWlsZWQgdGVzdHMgaW4gdmVyYm9zZSBtb2RlCisgICAgICAgICAgICAgICAgIF0pCisgICAgaWYgc3lzLnBsYXRmb3JtID09ICd3aW4zMic6CisgICAgICAgIGFyZ3MuYXBwZW5kKCctbicpICAgICAgICAgIyBTaWxlbmNlIGFsZXJ0cyB1bmRlciBXaW5kb3dzCisgICAgaWYgbm90IGFueShpc19tdWx0aXByb2Nlc3NfZmxhZyhhcmcpIGZvciBhcmcgaW4gcmVncnRlc3RfYXJncyk6CisgICAgICAgIGFyZ3MuZXh0ZW5kKFsnLWonLCAnMCddKSAgIyBVc2UgYWxsIENQVSBjb3JlcworICAgIGlmIG5vdCBhbnkoaXNfcmVzb3VyY2VfdXNlX2ZsYWcoYXJnKSBmb3IgYXJnIGluIHJlZ3J0ZXN0X2FyZ3MpOgorICAgICAgICBhcmdzLmV4dGVuZChbJy11JywgJ2FsbCwtbGFyZ2VmaWxlLC1hdWRpbywtZ3VpJ10pCisgICAgYXJncy5leHRlbmQocmVncnRlc3RfYXJncykKKyAgICBwcmludCgnICcuam9pbihhcmdzKSkKKyAgICBvcy5leGVjdihzeXMuZXhlY3V0YWJsZSwgYXJncykKKworCitpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgorICAgIG1haW4oc3lzLmFyZ3ZbMTpdKQpkaWZmIC0tZ2l0IGEvVG9vbHMvdW5pY29kZS9jb21wYXJlY29kZWNzLnB5IGIvVG9vbHMvdW5pY29kZS9jb21wYXJlY29kZWNzLnB5CmluZGV4IDBmNWMxZTIuLjdkZTE0ZmQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL3VuaWNvZGUvY29tcGFyZWNvZGVjcy5weQorKysgYi9Ub29scy91bmljb2RlL2NvbXBhcmVjb2RlY3MucHkKQEAgLTE0LDcgKzE0LDcgQEAKICAgICBwcmludCgnQ29tcGFyaW5nIGVuY29kaW5nL2RlY29kaW5nIG9mICAgJXIgYW5kICAgJXInICUgKGVuY29kaW5nMSwgZW5jb2RpbmcyKSkKICAgICBtaXNtYXRjaCA9IDAKICAgICAjIENoZWNrIGVuY29kaW5nCi0gICAgZm9yIGkgaW4gcmFuZ2Uoc3lzLm1heHVuaWNvZGUpOgorICAgIGZvciBpIGluIHJhbmdlKHN5cy5tYXh1bmljb2RlKzEpOgogICAgICAgICB1ID0gY2hyKGkpCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIGMxID0gdS5lbmNvZGUoZW5jb2RpbmcxKQpkaWZmIC0tZ2l0IGEvVG9vbHMvdW5pY29kZS9tYWtldW5pY29kZWRhdGEucHkgYi9Ub29scy91bmljb2RlL21ha2V1bmljb2RlZGF0YS5weQppbmRleCBkNTAzMTkwLi4xN2VkYzNjIDEwMDY0NAotLS0gYS9Ub29scy91bmljb2RlL21ha2V1bmljb2RlZGF0YS5weQorKysgYi9Ub29scy91bmljb2RlL21ha2V1bmljb2RlZGF0YS5weQpAQCAtMjEsMTEgKzIxLDE4IEBACiAjIDIwMDQtMDUtMjkgcGVya3kgYWRkIGVhc3QgYXNpYW4gd2lkdGggaW5mb3JtYXRpb24KICMgMjAwNi0wMy0xMCBtdmwgIHVwZGF0ZSB0byBVbmljb2RlIDQuMTsgYWRkIFVDRCAzLjIgZGVsdGEKICMgMjAwOC0wNi0xMSBnYiAgIGFkZCBQUklOVEFCTEVfTUFTSyBmb3IgQXRzdW8gSXNoaW1vdG8ncyBhc2NpaSgpIHBhdGNoCisjIDIwMTEtMTAtMjEgZXppbyBhZGQgc3VwcG9ydCBmb3IgbmFtZSBhbGlhc2VzIGFuZCBuYW1lZCBzZXF1ZW5jZXMKKyMgMjAxMi0wMSAgICBiZW5qYW1pbiBhZGQgZnVsbCBjYXNlIG1hcHBpbmdzCiAjCiAjIHdyaXR0ZW4gYnkgRnJlZHJpayBMdW5kaCAoZnJlZHJpa0BweXRob253YXJlLmNvbSkKICMKIAotaW1wb3J0IHN5cywgb3MsIHppcGZpbGUKK2ltcG9ydCBvcworaW1wb3J0IHN5cworaW1wb3J0IHppcGZpbGUKKworZnJvbSB0ZXh0d3JhcCBpbXBvcnQgZGVkZW50Citmcm9tIG9wZXJhdG9yIGltcG9ydCBpdGVtZ2V0dGVyCiAKIFNDUklQVCA9IHN5cy5hcmd2WzBdCiBWRVJTSU9OID0gIjMuMiIKQEAgLTM5LDYgKzQ2LDE5IEBACiBERVJJVkVEX0NPUkVfUFJPUEVSVElFUyA9ICJEZXJpdmVkQ29yZVByb3BlcnRpZXMlcy50eHQiCiBERVJJVkVETk9STUFMSVpBVElPTl9QUk9QUyA9ICJEZXJpdmVkTm9ybWFsaXphdGlvblByb3BzJXMudHh0IgogTElORV9CUkVBSyA9ICJMaW5lQnJlYWslcy50eHQiCitOQU1FX0FMSUFTRVMgPSAiTmFtZUFsaWFzZXMlcy50eHQiCitOQU1FRF9TRVFVRU5DRVMgPSAiTmFtZWRTZXF1ZW5jZXMlcy50eHQiCitTUEVDSUFMX0NBU0lORyA9ICJTcGVjaWFsQ2FzaW5nJXMudHh0IgorQ0FTRV9GT0xESU5HID0gIkNhc2VGb2xkaW5nJXMudHh0IgorCisjIFByaXZhdGUgVXNlIEFyZWFzIC0tIGluIHBsYW5lcyAxLCAxNSwgMTYKK1BVQV8xID0gcmFuZ2UoMHhFMDAwLCAweEY5MDApCitQVUFfMTUgPSByYW5nZSgweEYwMDAwLCAweEZGRkZFKQorUFVBXzE2ID0gcmFuZ2UoMHgxMDAwMDAsIDB4MTBGRkZFKQorCisjIHdlIHVzZSB0aGlzIHJhbmdlcyBvZiBQVUFfMTUgdG8gc3RvcmUgbmFtZSBhbGlhc2VzIGFuZCBuYW1lZCBzZXF1ZW5jZXMKK05BTUVfQUxJQVNFU19TVEFSVCA9IDB4RjAwMDAKK05BTUVEX1NFUVVFTkNFU19TVEFSVCA9IDB4RjAxMDAKIAogb2xkX3ZlcnNpb25zID0gWyIzLjIuMCJdCiAKQEAgLTY3LDggKzg3LDEwIEBACiBYSURfU1RBUlRfTUFTSyA9IDB4MTAwCiBYSURfQ09OVElOVUVfTUFTSyA9IDB4MjAwCiBQUklOVEFCTEVfTUFTSyA9IDB4NDAwCi1OT0RFTFRBX01BU0sgPSAweDgwMAotTlVNRVJJQ19NQVNLID0gMHgxMDAwCitOVU1FUklDX01BU0sgPSAweDgwMAorQ0FTRV9JR05PUkFCTEVfTUFTSyA9IDB4MTAwMAorQ0FTRURfTUFTSyA9IDB4MjAwMAorRVhURU5ERURfQ0FTRV9NQVNLID0gMHg0MDAwCiAKICMgdGhlc2UgcmFuZ2VzIG5lZWQgdG8gbWF0Y2ggdW5pY29kZWRhdGEuYzppc191bmlmaWVkX2lkZW9ncmFwaAogY2prX3JhbmdlcyA9IFsKQEAgLTM2Nyw2ICszODksNyBAQAogICAgIG51bWVyaWMgPSB7fQogICAgIHNwYWNlcyA9IFtdCiAgICAgbGluZWJyZWFrcyA9IFtdCisgICAgZXh0cmFfY2FzaW5nID0gW10KIAogICAgIGZvciBjaGFyIGluIHVuaWNvZGUuY2hhcnM6CiAgICAgICAgIHJlY29yZCA9IHVuaWNvZGUudGFibGVbY2hhcl0KQEAgLTM3OSw3ICs0MDIsNyBAQAogICAgICAgICAgICAgZGVsdGEgPSBUcnVlCiAgICAgICAgICAgICBpZiBjYXRlZ29yeSBpbiBbIkxtIiwgIkx0IiwgIkx1IiwgIkxsIiwgIkxvIl06CiAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gQUxQSEFfTUFTSwotICAgICAgICAgICAgaWYgY2F0ZWdvcnkgPT0gIkxsIjoKKyAgICAgICAgICAgIGlmICJMb3dlcmNhc2UiIGluIHByb3BlcnRpZXM6CiAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gTE9XRVJfTUFTSwogICAgICAgICAgICAgaWYgJ0xpbmVfQnJlYWsnIGluIHByb3BlcnRpZXMgb3IgYmlkaXJlY3Rpb25hbCA9PSAiQiI6CiAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gTElORUJSRUFLX01BU0sKQEAgLTM4OSw3ICs0MTIsNyBAQAogICAgICAgICAgICAgICAgIHNwYWNlcy5hcHBlbmQoY2hhcikKICAgICAgICAgICAgIGlmIGNhdGVnb3J5ID09ICJMdCI6CiAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gVElUTEVfTUFTSwotICAgICAgICAgICAgaWYgY2F0ZWdvcnkgPT0gIkx1IjoKKyAgICAgICAgICAgIGlmICJVcHBlcmNhc2UiIGluIHByb3BlcnRpZXM6CiAgICAgICAgICAgICAgICAgZmxhZ3MgfD0gVVBQRVJfTUFTSwogICAgICAgICAgICAgaWYgY2hhciA9PSBvcmQoIiAiKSBvciBjYXRlZ29yeVswXSBub3QgaW4gKCJDIiwgIloiKToKICAgICAgICAgICAgICAgICBmbGFncyB8PSBQUklOVEFCTEVfTUFTSwpAQCAtMzk3LDcgKzQyMCwxMiBAQAogICAgICAgICAgICAgICAgIGZsYWdzIHw9IFhJRF9TVEFSVF9NQVNLCiAgICAgICAgICAgICBpZiAiWElEX0NvbnRpbnVlIiBpbiBwcm9wZXJ0aWVzOgogICAgICAgICAgICAgICAgIGZsYWdzIHw9IFhJRF9DT05USU5VRV9NQVNLCi0gICAgICAgICAgICAjIHVzZSBkZWx0YSBwcmVkaWN0b3IgZm9yIHVwcGVyL2xvd2VyL3RpdGxlIGlmIGl0IGZpdHMKKyAgICAgICAgICAgIGlmICJDYXNlZCIgaW4gcHJvcGVydGllczoKKyAgICAgICAgICAgICAgICBmbGFncyB8PSBDQVNFRF9NQVNLCisgICAgICAgICAgICBpZiAiQ2FzZV9JZ25vcmFibGUiIGluIHByb3BlcnRpZXM6CisgICAgICAgICAgICAgICAgZmxhZ3MgfD0gQ0FTRV9JR05PUkFCTEVfTUFTSworICAgICAgICAgICAgc2MgPSB1bmljb2RlLnNwZWNpYWxfY2FzaW5nLmdldChjaGFyKQorICAgICAgICAgICAgY2YgPSB1bmljb2RlLmNhc2VfZm9sZGluZy5nZXQoY2hhciwgW2NoYXJdKQogICAgICAgICAgICAgaWYgcmVjb3JkWzEyXToKICAgICAgICAgICAgICAgICB1cHBlciA9IGludChyZWNvcmRbMTJdLCAxNikKICAgICAgICAgICAgIGVsc2U6CkBAIC00MDksMjMgKzQzNywzOSBAQAogICAgICAgICAgICAgaWYgcmVjb3JkWzE0XToKICAgICAgICAgICAgICAgICB0aXRsZSA9IGludChyZWNvcmRbMTRdLCAxNikKICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgIyBVQ0QuaHRtbCBzYXlzIHRoYXQgYSBtaXNzaW5nIHRpdGxlIGNoYXIgbWVhbnMgdGhhdAotICAgICAgICAgICAgICAgICMgaXQgZGVmYXVsdHMgdG8gdGhlIHVwcGVyY2FzZSBjaGFyYWN0ZXIsIG5vdCB0byB0aGUKLSAgICAgICAgICAgICAgICAjIGNoYXJhY3RlciBpdHNlbGYuIEFwcGFyZW50bHksIGluIHRoZSBjdXJyZW50IFVDRCAoNS54KQotICAgICAgICAgICAgICAgICMgdGhpcyBmZWF0dXJlIGlzIG5ldmVyIHVzZWQKICAgICAgICAgICAgICAgICB0aXRsZSA9IHVwcGVyCi0gICAgICAgICAgICB1cHBlcl9kID0gdXBwZXIgLSBjaGFyCi0gICAgICAgICAgICBsb3dlcl9kID0gbG93ZXIgLSBjaGFyCi0gICAgICAgICAgICB0aXRsZV9kID0gdGl0bGUgLSBjaGFyCi0gICAgICAgICAgICBpZiAtMzI3NjggPD0gdXBwZXJfZCA8PSAzMjc2NyBhbmQgXAotICAgICAgICAgICAgICAgLTMyNzY4IDw9IGxvd2VyX2QgPD0gMzI3NjcgYW5kIFwKLSAgICAgICAgICAgICAgIC0zMjc2OCA8PSB0aXRsZV9kIDw9IDMyNzY3OgotICAgICAgICAgICAgICAgICMgdXNlIGRlbHRhcwotICAgICAgICAgICAgICAgIHVwcGVyID0gdXBwZXJfZCAmIDB4ZmZmZgotICAgICAgICAgICAgICAgIGxvd2VyID0gbG93ZXJfZCAmIDB4ZmZmZgotICAgICAgICAgICAgICAgIHRpdGxlID0gdGl0bGVfZCAmIDB4ZmZmZgorICAgICAgICAgICAgaWYgc2MgaXMgTm9uZSBhbmQgY2YgIT0gW2xvd2VyXToKKyAgICAgICAgICAgICAgICBzYyA9IChbbG93ZXJdLCBbdGl0bGVdLCBbdXBwZXJdKQorICAgICAgICAgICAgaWYgc2MgaXMgTm9uZToKKyAgICAgICAgICAgICAgICBpZiB1cHBlciA9PSBsb3dlciA9PSB0aXRsZToKKyAgICAgICAgICAgICAgICAgICAgdXBwZXIgPSBsb3dlciA9IHRpdGxlID0gMAorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHVwcGVyID0gdXBwZXIgLSBjaGFyCisgICAgICAgICAgICAgICAgICAgIGxvd2VyID0gbG93ZXIgLSBjaGFyCisgICAgICAgICAgICAgICAgICAgIHRpdGxlID0gdGl0bGUgLSBjaGFyCisgICAgICAgICAgICAgICAgICAgIGFzc2VydCAoYWJzKHVwcGVyKSA8PSAyMTQ3NDgzNjQ3IGFuZAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFicyhsb3dlcikgPD0gMjE0NzQ4MzY0NyBhbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhYnModGl0bGUpIDw9IDIxNDc0ODM2NDcpCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGZsYWdzIHw9IE5PREVMVEFfTUFTSworICAgICAgICAgICAgICAgICMgVGhpcyBoYXBwZW5zIGVpdGhlciB3aGVuIHNvbWUgY2hhcmFjdGVyIG1hcHMgdG8gbW9yZSB0aGFuIG9uZQorICAgICAgICAgICAgICAgICMgY2hhcmFjdGVyIGluIHVwcGVyY2FzZSwgbG93ZXJjYXNlLCBvciB0aXRsZWNhc2Ugb3IgdGhlCisgICAgICAgICAgICAgICAgIyBjYXNlZm9sZGVkIHZlcnNpb24gb2YgdGhlIGNoYXJhY3RlciBpcyBkaWZmZXJlbnQgZnJvbSB0aGUKKyAgICAgICAgICAgICAgICAjIGxvd2VyY2FzZS4gVGhlIGV4dHJhIGNoYXJhY3RlcnMgYXJlIHN0b3JlZCBpbiBhIGRpZmZlcmVudAorICAgICAgICAgICAgICAgICMgYXJyYXkuCisgICAgICAgICAgICAgICAgZmxhZ3MgfD0gRVhURU5ERURfQ0FTRV9NQVNLCisgICAgICAgICAgICAgICAgbG93ZXIgPSBsZW4oZXh0cmFfY2FzaW5nKSB8IChsZW4oc2NbMF0pIDw8IDI0KQorICAgICAgICAgICAgICAgIGV4dHJhX2Nhc2luZy5leHRlbmQoc2NbMF0pCisgICAgICAgICAgICAgICAgaWYgY2YgIT0gc2NbMF06CisgICAgICAgICAgICAgICAgICAgIGxvd2VyIHw9IGxlbihjZikgPDwgMjAKKyAgICAgICAgICAgICAgICAgICAgZXh0cmFfY2FzaW5nLmV4dGVuZChjZikKKyAgICAgICAgICAgICAgICB1cHBlciA9IGxlbihleHRyYV9jYXNpbmcpIHwgKGxlbihzY1syXSkgPDwgMjQpCisgICAgICAgICAgICAgICAgZXh0cmFfY2FzaW5nLmV4dGVuZChzY1syXSkKKyAgICAgICAgICAgICAgICAjIFRpdGxlIGlzIHByb2JhYmx5IGVxdWFsIHRvIHVwcGVyLgorICAgICAgICAgICAgICAgIGlmIHNjWzFdID09IHNjWzJdOgorICAgICAgICAgICAgICAgICAgICB0aXRsZSA9IHVwcGVyCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgdGl0bGUgPSBsZW4oZXh0cmFfY2FzaW5nKSB8IChsZW4oc2NbMV0pIDw8IDI0KQorICAgICAgICAgICAgICAgICAgICBleHRyYV9jYXNpbmcuZXh0ZW5kKHNjWzFdKQogICAgICAgICAgICAgIyBkZWNpbWFsIGRpZ2l0LCBpbnRlZ2VyIGRpZ2l0CiAgICAgICAgICAgICBkZWNpbWFsID0gMAogICAgICAgICAgICAgaWYgcmVjb3JkWzZdOgpAQCAtNDUyLDYgKzQ5Niw3IEBACiAgICAgcHJpbnQoc3VtKG1hcChsZW4sIG51bWVyaWMudmFsdWVzKCkpKSwgIm51bWVyaWMgY29kZSBwb2ludHMiKQogICAgIHByaW50KGxlbihzcGFjZXMpLCAid2hpdGVzcGFjZSBjb2RlIHBvaW50cyIpCiAgICAgcHJpbnQobGVuKGxpbmVicmVha3MpLCAibGluZWJyZWFrIGNvZGUgcG9pbnRzIikKKyAgICBwcmludChsZW4oZXh0cmFfY2FzaW5nKSwgImV4dGVuZGVkIGNhc2UgYXJyYXkiKQogCiAgICAgcHJpbnQoIi0tLSBXcml0aW5nIiwgRklMRSwgIi4uLiIpCiAKQEAgLTQ2NSw2ICs1MTAsMTQgQEAKICAgICBwcmludCgifTsiLCBmaWxlPWZwKQogICAgIHByaW50KGZpbGU9ZnApCiAKKyAgICBwcmludCgiLyogZXh0ZW5kZWQgY2FzZSBtYXBwaW5ncyAqLyIsIGZpbGU9ZnApCisgICAgcHJpbnQoZmlsZT1mcCkKKyAgICBwcmludCgiY29uc3QgUHlfVUNTNCBfUHlVbmljb2RlX0V4dGVuZGVkQ2FzZVtdID0geyIsIGZpbGU9ZnApCisgICAgZm9yIGMgaW4gZXh0cmFfY2FzaW5nOgorICAgICAgICBwcmludCgiICAgICVkLCIgJSBjLCBmaWxlPWZwKQorICAgIHByaW50KCJ9OyIsIGZpbGU9ZnApCisgICAgcHJpbnQoZmlsZT1mcCkKKwogICAgICMgc3BsaXQgZGVjb21wb3NpdGlvbiBpbmRleCB0YWJsZQogICAgIGluZGV4MSwgaW5kZXgyLCBzaGlmdCA9IHNwbGl0YmlucyhpbmRleCwgdHJhY2UpCiAKQEAgLTY5Miw2ICs3NDUsMzkgQEAKICAgICBwcmludCgiLyogbmFtZS0+Y29kZSBkaWN0aW9uYXJ5ICovIiwgZmlsZT1mcCkKICAgICBjb2RlaGFzaC5kdW1wKGZwLCB0cmFjZSkKIAorICAgIHByaW50KGZpbGU9ZnApCisgICAgcHJpbnQoJ3N0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgYWxpYXNlc19zdGFydCA9ICUjeDsnICUKKyAgICAgICAgICBOQU1FX0FMSUFTRVNfU1RBUlQsIGZpbGU9ZnApCisgICAgcHJpbnQoJ3N0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgYWxpYXNlc19lbmQgPSAlI3g7JyAlCisgICAgICAgICAgKE5BTUVfQUxJQVNFU19TVEFSVCArIGxlbih1bmljb2RlLmFsaWFzZXMpKSwgZmlsZT1mcCkKKworICAgIHByaW50KCdzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IG5hbWVfYWxpYXNlc1tdID0geycsIGZpbGU9ZnApCisgICAgZm9yIG5hbWUsIGNvZGVwb2ludCBpbiB1bmljb2RlLmFsaWFzZXM6CisgICAgICAgIHByaW50KCcgICAgMHglMDRYLCcgJSBjb2RlcG9pbnQsIGZpbGU9ZnApCisgICAgcHJpbnQoJ307JywgZmlsZT1mcCkKKworICAgICMgSW4gVW5pY29kZSA2LjAuMCwgdGhlIHNlcXVlbmNlcyBjb250YWluIGF0IG1vc3QgNCBCTVAgY2hhcnMsCisgICAgIyBzbyB3ZSBhcmUgdXNpbmcgUHlfVUNTMiBzZXFbNF0uICBUaGlzIG5lZWRzIHRvIGJlIHVwZGF0ZWQgaWYgbG9uZ2VyCisgICAgIyBzZXF1ZW5jZXMgb3Igc2VxdWVuY2VzIHdpdGggbm9uLUJNUCBjaGFycyBhcmUgYWRkZWQuCisgICAgIyB1bmljb2RlZGF0YV9sb29rdXAgc2hvdWxkIGJlIGFkYXB0ZWQgdG9vLgorICAgIHByaW50KGRlZGVudCgiIiIKKyAgICAgICAgdHlwZWRlZiBzdHJ1Y3QgTmFtZWRTZXF1ZW5jZSB7CisgICAgICAgICAgICBpbnQgc2VxbGVuOworICAgICAgICAgICAgUHlfVUNTMiBzZXFbNF07CisgICAgICAgIH0gbmFtZWRfc2VxdWVuY2U7CisgICAgICAgICIiIiksIGZpbGU9ZnApCisKKyAgICBwcmludCgnc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBuYW1lZF9zZXF1ZW5jZXNfc3RhcnQgPSAlI3g7JyAlCisgICAgICAgICAgTkFNRURfU0VRVUVOQ0VTX1NUQVJULCBmaWxlPWZwKQorICAgIHByaW50KCdzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IG5hbWVkX3NlcXVlbmNlc19lbmQgPSAlI3g7JyAlCisgICAgICAgICAgKE5BTUVEX1NFUVVFTkNFU19TVEFSVCArIGxlbih1bmljb2RlLm5hbWVkX3NlcXVlbmNlcykpLCBmaWxlPWZwKQorCisgICAgcHJpbnQoJ3N0YXRpYyBjb25zdCBuYW1lZF9zZXF1ZW5jZSBuYW1lZF9zZXF1ZW5jZXNbXSA9IHsnLCBmaWxlPWZwKQorICAgIGZvciBuYW1lLCBzZXF1ZW5jZSBpbiB1bmljb2RlLm5hbWVkX3NlcXVlbmNlczoKKyAgICAgICAgc2VxX3N0ciA9ICcsICcuam9pbignMHglMDRYJyAlIGNwIGZvciBjcCBpbiBzZXF1ZW5jZSkKKyAgICAgICAgcHJpbnQoJyAgICB7JWQsIHslc319LCcgJSAobGVuKHNlcXVlbmNlKSwgc2VxX3N0ciksIGZpbGU9ZnApCisgICAgcHJpbnQoJ307JywgZmlsZT1mcCkKKwogICAgIGZwLmNsb3NlKCkKIAogCkBAIC03MjYsNyArODEyLDExIEBACiAgICAgICAgICAgICBmb3IgayBpbiByYW5nZShsZW4ob2xkLnRhYmxlW2ldKSk6CiAgICAgICAgICAgICAgICAgaWYgb2xkLnRhYmxlW2ldW2tdICE9IG5ldy50YWJsZVtpXVtrXToKICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBvbGQudGFibGVbaV1ba10KLSAgICAgICAgICAgICAgICAgICAgaWYgayA9PSAyOgorICAgICAgICAgICAgICAgICAgICBpZiBrID09IDEgYW5kIGkgaW4gUFVBXzE1OgorICAgICAgICAgICAgICAgICAgICAgICAgIyB0aGUgbmFtZSBpcyBub3Qgc2V0IGluIHRoZSBvbGQudGFibGUsIGJ1dCBpbiB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgICMgbmV3LnRhYmxlIHdlIGFyZSB1c2luZyBpdCBmb3IgYWxpYXNlcyBhbmQgbmFtZWQgc2VxCisgICAgICAgICAgICAgICAgICAgICAgICBhc3NlcnQgdmFsdWUgPT0gJycKKyAgICAgICAgICAgICAgICAgICAgZWxpZiBrID09IDI6CiAgICAgICAgICAgICAgICAgICAgICAgICAjcHJpbnQgIkNBVEVHT1JZIixoZXgoaSksIG9sZC50YWJsZVtpXVtrXSwgbmV3LnRhYmxlW2ldW2tdCiAgICAgICAgICAgICAgICAgICAgICAgICBjYXRlZ29yeV9jaGFuZ2VzW2ldID0gQ0FURUdPUllfTkFNRVMuaW5kZXgodmFsdWUpCiAgICAgICAgICAgICAgICAgICAgIGVsaWYgayA9PSA0OgpAQCAtODE2LDE1ICs5MDYsMTUgQEAKICAgICAgICAgICAgICAgICAgZXhwYW5kPTEsCiAgICAgICAgICAgICAgICAgIGNqa19jaGVjaz1UcnVlKToKICAgICAgICAgc2VsZi5jaGFuZ2VkID0gW10KLSAgICAgICAgZmlsZSA9IG9wZW5fZGF0YShVTklDT0RFX0RBVEEsIHZlcnNpb24pCiAgICAgICAgIHRhYmxlID0gW05vbmVdICogMHgxMTAwMDAKLSAgICAgICAgd2hpbGUgMToKLSAgICAgICAgICAgIHMgPSBmaWxlLnJlYWRsaW5lKCkKLSAgICAgICAgICAgIGlmIG5vdCBzOgotICAgICAgICAgICAgICAgIGJyZWFrCi0gICAgICAgICAgICBzID0gcy5zdHJpcCgpLnNwbGl0KCI7IikKLSAgICAgICAgICAgIGNoYXIgPSBpbnQoc1swXSwgMTYpCi0gICAgICAgICAgICB0YWJsZVtjaGFyXSA9IHMKKyAgICAgICAgd2l0aCBvcGVuX2RhdGEoVU5JQ09ERV9EQVRBLCB2ZXJzaW9uKSBhcyBmaWxlOgorICAgICAgICAgICAgd2hpbGUgMToKKyAgICAgICAgICAgICAgICBzID0gZmlsZS5yZWFkbGluZSgpCisgICAgICAgICAgICAgICAgaWYgbm90IHM6CisgICAgICAgICAgICAgICAgICAgIGJyZWFrCisgICAgICAgICAgICAgICAgcyA9IHMuc3RyaXAoKS5zcGxpdCgiOyIpCisgICAgICAgICAgICAgICAgY2hhciA9IGludChzWzBdLCAxNikKKyAgICAgICAgICAgICAgICB0YWJsZVtjaGFyXSA9IHMKIAogICAgICAgICBjamtfcmFuZ2VzX2ZvdW5kID0gW10KIApAQCAtODU1LDMyICs5NDUsNzggQEAKICAgICAgICAgc2VsZi50YWJsZSA9IHRhYmxlCiAgICAgICAgIHNlbGYuY2hhcnMgPSBsaXN0KHJhbmdlKDB4MTEwMDAwKSkgIyB1bmljb2RlIDMuMgogCi0gICAgICAgIGZpbGUgPSBvcGVuX2RhdGEoQ09NUE9TSVRJT05fRVhDTFVTSU9OUywgdmVyc2lvbikKKyAgICAgICAgIyBjaGVjayBmb3IgbmFtZSBhbGlhc2VzIGFuZCBuYW1lZCBzZXF1ZW5jZXMsIHNlZSAjMTI3NTMKKyAgICAgICAgIyBhbGlhc2VzIGFuZCBuYW1lZCBzZXF1ZW5jZXMgYXJlIG5vdCBpbiAzLjIuMAorICAgICAgICBpZiB2ZXJzaW9uICE9ICczLjIuMCc6CisgICAgICAgICAgICBzZWxmLmFsaWFzZXMgPSBbXQorICAgICAgICAgICAgIyBzdG9yZSBhbGlhc2VzIGluIHRoZSBQcml2YXRlIFVzZSBBcmVhIDE1LCBpbiByYW5nZSBVK0YwMDAwLi5VK0YwMEZGLAorICAgICAgICAgICAgIyBpbiBvcmRlciB0byB0YWtlIGFkdmFudGFnZSBvZiB0aGUgY29tcHJlc3Npb24gYW5kIGxvb2t1cAorICAgICAgICAgICAgIyBhbGdvcml0aG1zIHVzZWQgZm9yIHRoZSBvdGhlciBjaGFyYWN0ZXJzCisgICAgICAgICAgICBwdWFfaW5kZXggPSBOQU1FX0FMSUFTRVNfU1RBUlQKKyAgICAgICAgICAgIHdpdGggb3Blbl9kYXRhKE5BTUVfQUxJQVNFUywgdmVyc2lvbikgYXMgZmlsZToKKyAgICAgICAgICAgICAgICBmb3IgcyBpbiBmaWxlOgorICAgICAgICAgICAgICAgICAgICBzID0gcy5zdHJpcCgpCisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBzIG9yIHMuc3RhcnRzd2l0aCgnIycpOgorICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICAgICAgY2hhciwgbmFtZSA9IHMuc3BsaXQoJzsnKQorICAgICAgICAgICAgICAgICAgICBjaGFyID0gaW50KGNoYXIsIDE2KQorICAgICAgICAgICAgICAgICAgICBzZWxmLmFsaWFzZXMuYXBwZW5kKChuYW1lLCBjaGFyKSkKKyAgICAgICAgICAgICAgICAgICAgIyBhbHNvIHN0b3JlIHRoZSBuYW1lIGluIHRoZSBQVUEgMQorICAgICAgICAgICAgICAgICAgICBzZWxmLnRhYmxlW3B1YV9pbmRleF1bMV0gPSBuYW1lCisgICAgICAgICAgICAgICAgICAgIHB1YV9pbmRleCArPSAxCisgICAgICAgICAgICBhc3NlcnQgcHVhX2luZGV4IC0gTkFNRV9BTElBU0VTX1NUQVJUID09IGxlbihzZWxmLmFsaWFzZXMpCisKKyAgICAgICAgICAgIHNlbGYubmFtZWRfc2VxdWVuY2VzID0gW10KKyAgICAgICAgICAgICMgc3RvcmUgbmFtZWQgc2VxZW5jZXMgaW4gdGhlIFBVQSAxLCBpbiByYW5nZSBVK0YwMTAwLi4sCisgICAgICAgICAgICAjIGluIG9yZGVyIHRvIHRha2UgYWR2YW50YWdlIG9mIHRoZSBjb21wcmVzc2lvbiBhbmQgbG9va3VwCisgICAgICAgICAgICAjIGFsZ29yaXRobXMgdXNlZCBmb3IgdGhlIG90aGVyIGNoYXJhY3RlcnMuCisKKyAgICAgICAgICAgIHB1YV9pbmRleCA9IE5BTUVEX1NFUVVFTkNFU19TVEFSVAorICAgICAgICAgICAgd2l0aCBvcGVuX2RhdGEoTkFNRURfU0VRVUVOQ0VTLCB2ZXJzaW9uKSBhcyBmaWxlOgorICAgICAgICAgICAgICAgIGZvciBzIGluIGZpbGU6CisgICAgICAgICAgICAgICAgICAgIHMgPSBzLnN0cmlwKCkKKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IHMgb3Igcy5zdGFydHN3aXRoKCcjJyk6CisgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgICAgICBuYW1lLCBjaGFycyA9IHMuc3BsaXQoJzsnKQorICAgICAgICAgICAgICAgICAgICBjaGFycyA9IHR1cGxlKGludChjaGFyLCAxNikgZm9yIGNoYXIgaW4gY2hhcnMuc3BsaXQoKSkKKyAgICAgICAgICAgICAgICAgICAgIyBjaGVjayB0aGF0IHRoZSBzdHJ1Y3R1cmUgZGVmaW5lZCBpbiBtYWtldW5pY29kZW5hbWUgaXMgT0sKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0IDIgPD0gbGVuKGNoYXJzKSA8PSA0LCAiY2hhbmdlIHRoZSBQeV9VQ1MyIGFycmF5IHNpemUiCisgICAgICAgICAgICAgICAgICAgIGFzc2VydCBhbGwoYyA8PSAweEZGRkYgZm9yIGMgaW4gY2hhcnMpLCAoInVzZSBQeV9VQ1M0IGluICIKKyAgICAgICAgICAgICAgICAgICAgICAgICJ0aGUgTmFtZWRTZXF1ZW5jZSBzdHJ1Y3QgYW5kIGluIHVuaWNvZGVkYXRhX2xvb2t1cCIpCisgICAgICAgICAgICAgICAgICAgIHNlbGYubmFtZWRfc2VxdWVuY2VzLmFwcGVuZCgobmFtZSwgY2hhcnMpKQorICAgICAgICAgICAgICAgICAgICAjIGFsc28gc3RvcmUgdGhlc2UgaW4gdGhlIFBVQSAxCisgICAgICAgICAgICAgICAgICAgIHNlbGYudGFibGVbcHVhX2luZGV4XVsxXSA9IG5hbWUKKyAgICAgICAgICAgICAgICAgICAgcHVhX2luZGV4ICs9IDEKKyAgICAgICAgICAgIGFzc2VydCBwdWFfaW5kZXggLSBOQU1FRF9TRVFVRU5DRVNfU1RBUlQgPT0gbGVuKHNlbGYubmFtZWRfc2VxdWVuY2VzKQorCiAgICAgICAgIHNlbGYuZXhjbHVzaW9ucyA9IHt9Ci0gICAgICAgIGZvciBzIGluIGZpbGU6Ci0gICAgICAgICAgICBzID0gcy5zdHJpcCgpCi0gICAgICAgICAgICBpZiBub3QgczoKLSAgICAgICAgICAgICAgICBjb250aW51ZQotICAgICAgICAgICAgaWYgc1swXSA9PSAnIyc6Ci0gICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgIGNoYXIgPSBpbnQocy5zcGxpdCgpWzBdLDE2KQotICAgICAgICAgICAgc2VsZi5leGNsdXNpb25zW2NoYXJdID0gMQorICAgICAgICB3aXRoIG9wZW5fZGF0YShDT01QT1NJVElPTl9FWENMVVNJT05TLCB2ZXJzaW9uKSBhcyBmaWxlOgorICAgICAgICAgICAgZm9yIHMgaW4gZmlsZToKKyAgICAgICAgICAgICAgICBzID0gcy5zdHJpcCgpCisgICAgICAgICAgICAgICAgaWYgbm90IHM6CisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgaWYgc1swXSA9PSAnIyc6CisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgY2hhciA9IGludChzLnNwbGl0KClbMF0sMTYpCisgICAgICAgICAgICAgICAgc2VsZi5leGNsdXNpb25zW2NoYXJdID0gMQogCiAgICAgICAgIHdpZHRocyA9IFtOb25lXSAqIDB4MTEwMDAwCi0gICAgICAgIGZvciBzIGluIG9wZW5fZGF0YShFQVNUQVNJQU5fV0lEVEgsIHZlcnNpb24pOgotICAgICAgICAgICAgcyA9IHMuc3RyaXAoKQotICAgICAgICAgICAgaWYgbm90IHM6Ci0gICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgIGlmIHNbMF0gPT0gJyMnOgotICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICBzID0gcy5zcGxpdCgpWzBdLnNwbGl0KCc7JykKLSAgICAgICAgICAgIGlmICcuLicgaW4gc1swXToKLSAgICAgICAgICAgICAgICBmaXJzdCwgbGFzdCA9IFtpbnQoYywgMTYpIGZvciBjIGluIHNbMF0uc3BsaXQoJy4uJyldCi0gICAgICAgICAgICAgICAgY2hhcnMgPSBsaXN0KHJhbmdlKGZpcnN0LCBsYXN0KzEpKQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBjaGFycyA9IFtpbnQoc1swXSwgMTYpXQotICAgICAgICAgICAgZm9yIGNoYXIgaW4gY2hhcnM6Ci0gICAgICAgICAgICAgICAgd2lkdGhzW2NoYXJdID0gc1sxXQorICAgICAgICB3aXRoIG9wZW5fZGF0YShFQVNUQVNJQU5fV0lEVEgsIHZlcnNpb24pIGFzIGZpbGU6CisgICAgICAgICAgICBmb3IgcyBpbiBmaWxlOgorICAgICAgICAgICAgICAgIHMgPSBzLnN0cmlwKCkKKyAgICAgICAgICAgICAgICBpZiBub3QgczoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICBpZiBzWzBdID09ICcjJzoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICBzID0gcy5zcGxpdCgpWzBdLnNwbGl0KCc7JykKKyAgICAgICAgICAgICAgICBpZiAnLi4nIGluIHNbMF06CisgICAgICAgICAgICAgICAgICAgIGZpcnN0LCBsYXN0ID0gW2ludChjLCAxNikgZm9yIGMgaW4gc1swXS5zcGxpdCgnLi4nKV0KKyAgICAgICAgICAgICAgICAgICAgY2hhcnMgPSBsaXN0KHJhbmdlKGZpcnN0LCBsYXN0KzEpKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGNoYXJzID0gW2ludChzWzBdLCAxNildCisgICAgICAgICAgICAgICAgZm9yIGNoYXIgaW4gY2hhcnM6CisgICAgICAgICAgICAgICAgICAgIHdpZHRoc1tjaGFyXSA9IHNbMV0KKwogICAgICAgICBmb3IgaSBpbiByYW5nZSgwLCAweDExMDAwMCk6CiAgICAgICAgICAgICBpZiB0YWJsZVtpXSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICB0YWJsZVtpXS5hcHBlbmQod2lkdGhzW2ldKQpAQCAtODg4LDM2ICsxMDI0LDM5IEBACiAgICAgICAgIGZvciBpIGluIHJhbmdlKDAsIDB4MTEwMDAwKToKICAgICAgICAgICAgIGlmIHRhYmxlW2ldIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgICAgIHRhYmxlW2ldLmFwcGVuZChzZXQoKSkKLSAgICAgICAgZm9yIHMgaW4gb3Blbl9kYXRhKERFUklWRURfQ09SRV9QUk9QRVJUSUVTLCB2ZXJzaW9uKToKLSAgICAgICAgICAgIHMgPSBzLnNwbGl0KCcjJywgMSlbMF0uc3RyaXAoKQotICAgICAgICAgICAgaWYgbm90IHM6Ci0gICAgICAgICAgICAgICAgY29udGludWUKIAotICAgICAgICAgICAgciwgcCA9IHMuc3BsaXQoIjsiKQotICAgICAgICAgICAgciA9IHIuc3RyaXAoKQotICAgICAgICAgICAgcCA9IHAuc3RyaXAoKQotICAgICAgICAgICAgaWYgIi4uIiBpbiByOgotICAgICAgICAgICAgICAgIGZpcnN0LCBsYXN0ID0gW2ludChjLCAxNikgZm9yIGMgaW4gci5zcGxpdCgnLi4nKV0KLSAgICAgICAgICAgICAgICBjaGFycyA9IGxpc3QocmFuZ2UoZmlyc3QsIGxhc3QrMSkpCi0gICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIGNoYXJzID0gW2ludChyLCAxNildCi0gICAgICAgICAgICBmb3IgY2hhciBpbiBjaGFyczoKLSAgICAgICAgICAgICAgICBpZiB0YWJsZVtjaGFyXToKLSAgICAgICAgICAgICAgICAgICAgIyBTb21lIHByb3BlcnRpZXMgKGUuZy4gRGVmYXVsdF9JZ25vcmFibGVfQ29kZV9Qb2ludCkKLSAgICAgICAgICAgICAgICAgICAgIyBhcHBseSB0byB1bmFzc2lnbmVkIGNvZGUgcG9pbnRzOyBpZ25vcmUgdGhlbQotICAgICAgICAgICAgICAgICAgICB0YWJsZVtjaGFyXVstMV0uYWRkKHApCisgICAgICAgIHdpdGggb3Blbl9kYXRhKERFUklWRURfQ09SRV9QUk9QRVJUSUVTLCB2ZXJzaW9uKSBhcyBmaWxlOgorICAgICAgICAgICAgZm9yIHMgaW4gZmlsZToKKyAgICAgICAgICAgICAgICBzID0gcy5zcGxpdCgnIycsIDEpWzBdLnN0cmlwKCkKKyAgICAgICAgICAgICAgICBpZiBub3QgczoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKIAotICAgICAgICBmb3IgcyBpbiBvcGVuX2RhdGEoTElORV9CUkVBSywgdmVyc2lvbik6Ci0gICAgICAgICAgICBzID0gcy5wYXJ0aXRpb24oJyMnKVswXQotICAgICAgICAgICAgcyA9IFtpLnN0cmlwKCkgZm9yIGkgaW4gcy5zcGxpdCgnOycpXQotICAgICAgICAgICAgaWYgbGVuKHMpIDwgMiBvciBzWzFdIG5vdCBpbiBNQU5EQVRPUllfTElORV9CUkVBS1M6Ci0gICAgICAgICAgICAgICAgY29udGludWUKLSAgICAgICAgICAgIGlmICcuLicgbm90IGluIHNbMF06Ci0gICAgICAgICAgICAgICAgZmlyc3QgPSBsYXN0ID0gaW50KHNbMF0sIDE2KQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBmaXJzdCwgbGFzdCA9IFtpbnQoYywgMTYpIGZvciBjIGluIHNbMF0uc3BsaXQoJy4uJyldCi0gICAgICAgICAgICBmb3IgY2hhciBpbiByYW5nZShmaXJzdCwgbGFzdCsxKToKLSAgICAgICAgICAgICAgICB0YWJsZVtjaGFyXVstMV0uYWRkKCdMaW5lX0JyZWFrJykKKyAgICAgICAgICAgICAgICByLCBwID0gcy5zcGxpdCgiOyIpCisgICAgICAgICAgICAgICAgciA9IHIuc3RyaXAoKQorICAgICAgICAgICAgICAgIHAgPSBwLnN0cmlwKCkKKyAgICAgICAgICAgICAgICBpZiAiLi4iIGluIHI6CisgICAgICAgICAgICAgICAgICAgIGZpcnN0LCBsYXN0ID0gW2ludChjLCAxNikgZm9yIGMgaW4gci5zcGxpdCgnLi4nKV0KKyAgICAgICAgICAgICAgICAgICAgY2hhcnMgPSBsaXN0KHJhbmdlKGZpcnN0LCBsYXN0KzEpKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGNoYXJzID0gW2ludChyLCAxNildCisgICAgICAgICAgICAgICAgZm9yIGNoYXIgaW4gY2hhcnM6CisgICAgICAgICAgICAgICAgICAgIGlmIHRhYmxlW2NoYXJdOgorICAgICAgICAgICAgICAgICAgICAgICAgIyBTb21lIHByb3BlcnRpZXMgKGUuZy4gRGVmYXVsdF9JZ25vcmFibGVfQ29kZV9Qb2ludCkKKyAgICAgICAgICAgICAgICAgICAgICAgICMgYXBwbHkgdG8gdW5hc3NpZ25lZCBjb2RlIHBvaW50czsgaWdub3JlIHRoZW0KKyAgICAgICAgICAgICAgICAgICAgICAgIHRhYmxlW2NoYXJdWy0xXS5hZGQocCkKKworICAgICAgICB3aXRoIG9wZW5fZGF0YShMSU5FX0JSRUFLLCB2ZXJzaW9uKSBhcyBmaWxlOgorICAgICAgICAgICAgZm9yIHMgaW4gZmlsZToKKyAgICAgICAgICAgICAgICBzID0gcy5wYXJ0aXRpb24oJyMnKVswXQorICAgICAgICAgICAgICAgIHMgPSBbaS5zdHJpcCgpIGZvciBpIGluIHMuc3BsaXQoJzsnKV0KKyAgICAgICAgICAgICAgICBpZiBsZW4ocykgPCAyIG9yIHNbMV0gbm90IGluIE1BTkRBVE9SWV9MSU5FX0JSRUFLUzoKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgICAgICBpZiAnLi4nIG5vdCBpbiBzWzBdOgorICAgICAgICAgICAgICAgICAgICBmaXJzdCA9IGxhc3QgPSBpbnQoc1swXSwgMTYpCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgZmlyc3QsIGxhc3QgPSBbaW50KGMsIDE2KSBmb3IgYyBpbiBzWzBdLnNwbGl0KCcuLicpXQorICAgICAgICAgICAgICAgIGZvciBjaGFyIGluIHJhbmdlKGZpcnN0LCBsYXN0KzEpOgorICAgICAgICAgICAgICAgICAgICB0YWJsZVtjaGFyXVstMV0uYWRkKCdMaW5lX0JyZWFrJykKIAogICAgICAgICAjIFdlIG9ubHkgd2FudCB0aGUgcXVpY2tjaGVjayBwcm9wZXJ0aWVzCiAgICAgICAgICMgRm9ybWF0OiBORj9fUUM7IFkoZXMpL04obykvTShheWJlKQpAQCAtOTI4LDMxICsxMDY3LDMzIEBACiAgICAgICAgICMgZm9yIG9sZGVyIHZlcnNpb25zLCBhbmQgbm8gZGVsdGEgcmVjb3JkcyB3aWxsIGJlIGNyZWF0ZWQuCiAgICAgICAgIHF1aWNrY2hlY2tzID0gWzBdICogMHgxMTAwMDAKICAgICAgICAgcWNfb3JkZXIgPSAnTkZEX1FDIE5GS0RfUUMgTkZDX1FDIE5GS0NfUUMnLnNwbGl0KCkKLSAgICAgICAgZm9yIHMgaW4gb3Blbl9kYXRhKERFUklWRUROT1JNQUxJWkFUSU9OX1BST1BTLCB2ZXJzaW9uKToKLSAgICAgICAgICAgIGlmICcjJyBpbiBzOgotICAgICAgICAgICAgICAgIHMgPSBzWzpzLmluZGV4KCcjJyldCi0gICAgICAgICAgICBzID0gW2kuc3RyaXAoKSBmb3IgaSBpbiBzLnNwbGl0KCc7JyldCi0gICAgICAgICAgICBpZiBsZW4ocykgPCAyIG9yIHNbMV0gbm90IGluIHFjX29yZGVyOgotICAgICAgICAgICAgICAgIGNvbnRpbnVlCi0gICAgICAgICAgICBxdWlja2NoZWNrID0gJ01OJy5pbmRleChzWzJdKSArIDEgIyBNYXliZSBvciBObwotICAgICAgICAgICAgcXVpY2tjaGVja19zaGlmdCA9IHFjX29yZGVyLmluZGV4KHNbMV0pKjIKLSAgICAgICAgICAgIHF1aWNrY2hlY2sgPDw9IHF1aWNrY2hlY2tfc2hpZnQKLSAgICAgICAgICAgIGlmICcuLicgbm90IGluIHNbMF06Ci0gICAgICAgICAgICAgICAgZmlyc3QgPSBsYXN0ID0gaW50KHNbMF0sIDE2KQotICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICBmaXJzdCwgbGFzdCA9IFtpbnQoYywgMTYpIGZvciBjIGluIHNbMF0uc3BsaXQoJy4uJyldCi0gICAgICAgICAgICBmb3IgY2hhciBpbiByYW5nZShmaXJzdCwgbGFzdCsxKToKLSAgICAgICAgICAgICAgICBhc3NlcnQgbm90IChxdWlja2NoZWNrc1tjaGFyXT4+cXVpY2tjaGVja19zaGlmdCkmMwotICAgICAgICAgICAgICAgIHF1aWNrY2hlY2tzW2NoYXJdIHw9IHF1aWNrY2hlY2sKKyAgICAgICAgd2l0aCBvcGVuX2RhdGEoREVSSVZFRE5PUk1BTElaQVRJT05fUFJPUFMsIHZlcnNpb24pIGFzIGZpbGU6CisgICAgICAgICAgICBmb3IgcyBpbiBmaWxlOgorICAgICAgICAgICAgICAgIGlmICcjJyBpbiBzOgorICAgICAgICAgICAgICAgICAgICBzID0gc1s6cy5pbmRleCgnIycpXQorICAgICAgICAgICAgICAgIHMgPSBbaS5zdHJpcCgpIGZvciBpIGluIHMuc3BsaXQoJzsnKV0KKyAgICAgICAgICAgICAgICBpZiBsZW4ocykgPCAyIG9yIHNbMV0gbm90IGluIHFjX29yZGVyOgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIHF1aWNrY2hlY2sgPSAnTU4nLmluZGV4KHNbMl0pICsgMSAjIE1heWJlIG9yIE5vCisgICAgICAgICAgICAgICAgcXVpY2tjaGVja19zaGlmdCA9IHFjX29yZGVyLmluZGV4KHNbMV0pKjIKKyAgICAgICAgICAgICAgICBxdWlja2NoZWNrIDw8PSBxdWlja2NoZWNrX3NoaWZ0CisgICAgICAgICAgICAgICAgaWYgJy4uJyBub3QgaW4gc1swXToKKyAgICAgICAgICAgICAgICAgICAgZmlyc3QgPSBsYXN0ID0gaW50KHNbMF0sIDE2KQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIGZpcnN0LCBsYXN0ID0gW2ludChjLCAxNikgZm9yIGMgaW4gc1swXS5zcGxpdCgnLi4nKV0KKyAgICAgICAgICAgICAgICBmb3IgY2hhciBpbiByYW5nZShmaXJzdCwgbGFzdCsxKToKKyAgICAgICAgICAgICAgICAgICAgYXNzZXJ0IG5vdCAocXVpY2tjaGVja3NbY2hhcl0+PnF1aWNrY2hlY2tfc2hpZnQpJjMKKyAgICAgICAgICAgICAgICAgICAgcXVpY2tjaGVja3NbY2hhcl0gfD0gcXVpY2tjaGVjawogICAgICAgICBmb3IgaSBpbiByYW5nZSgwLCAweDExMDAwMCk6CiAgICAgICAgICAgICBpZiB0YWJsZVtpXSBpcyBub3QgTm9uZToKICAgICAgICAgICAgICAgICB0YWJsZVtpXS5hcHBlbmQocXVpY2tjaGVja3NbaV0pCiAKLSAgICAgICAgemlwID0gemlwZmlsZS5aaXBGaWxlKG9wZW5fZGF0YShVTklIQU4sIHZlcnNpb24pKQotICAgICAgICBpZiB2ZXJzaW9uID09ICczLjIuMCc6Ci0gICAgICAgICAgICBkYXRhID0gemlwLm9wZW4oJ1VuaWhhbi0zLjIuMC50eHQnKS5yZWFkKCkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIGRhdGEgPSB6aXAub3BlbignVW5paGFuX051bWVyaWNWYWx1ZXMudHh0JykucmVhZCgpCisgICAgICAgIHdpdGggb3Blbl9kYXRhKFVOSUhBTiwgdmVyc2lvbikgYXMgZmlsZToKKyAgICAgICAgICAgIHppcCA9IHppcGZpbGUuWmlwRmlsZShmaWxlKQorICAgICAgICAgICAgaWYgdmVyc2lvbiA9PSAnMy4yLjAnOgorICAgICAgICAgICAgICAgIGRhdGEgPSB6aXAub3BlbignVW5paGFuLTMuMi4wLnR4dCcpLnJlYWQoKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBkYXRhID0gemlwLm9wZW4oJ1VuaWhhbl9OdW1lcmljVmFsdWVzLnR4dCcpLnJlYWQoKQogICAgICAgICBmb3IgbGluZSBpbiBkYXRhLmRlY29kZSgidXRmLTgiKS5zcGxpdGxpbmVzKCk6CiAgICAgICAgICAgICBpZiBub3QgbGluZS5zdGFydHN3aXRoKCdVKycpOgogICAgICAgICAgICAgICAgIGNvbnRpbnVlCkBAIC05NjUsNiArMTEwNiwzNCBAQAogICAgICAgICAgICAgIyBQYXRjaCB0aGUgbnVtZXJpYyBmaWVsZAogICAgICAgICAgICAgaWYgdGFibGVbaV0gaXMgbm90IE5vbmU6CiAgICAgICAgICAgICAgICAgdGFibGVbaV1bOF0gPSB2YWx1ZQorICAgICAgICBzYyA9IHNlbGYuc3BlY2lhbF9jYXNpbmcgPSB7fQorICAgICAgICB3aXRoIG9wZW5fZGF0YShTUEVDSUFMX0NBU0lORywgdmVyc2lvbikgYXMgZmlsZToKKyAgICAgICAgICAgIGZvciBzIGluIGZpbGU6CisgICAgICAgICAgICAgICAgcyA9IHNbOi0xXS5zcGxpdCgnIycsIDEpWzBdCisgICAgICAgICAgICAgICAgaWYgbm90IHM6CisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICAgICAgZGF0YSA9IHMuc3BsaXQoIjsgIikKKyAgICAgICAgICAgICAgICBpZiBkYXRhWzRdOgorICAgICAgICAgICAgICAgICAgICAjIFdlIGlnbm9yZSBhbGwgY29uZGl0aW9uYWxzIChzaW5jZSB0aGV5IGRlcGVuZCBvbgorICAgICAgICAgICAgICAgICAgICAjIGxhbmd1YWdlcykgZXhjZXB0IGZvciBvbmUsIHdoaWNoIGlzIGhhcmRjb2RlZC4gU2VlCisgICAgICAgICAgICAgICAgICAgICMgaGFuZGxlX2NhcGl0YWxfc2lnbWEgaW4gdW5pY29kZW9iamVjdC5jLgorICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgIGMgPSBpbnQoZGF0YVswXSwgMTYpCisgICAgICAgICAgICAgICAgbG93ZXIgPSBbaW50KGNoYXIsIDE2KSBmb3IgY2hhciBpbiBkYXRhWzFdLnNwbGl0KCldCisgICAgICAgICAgICAgICAgdGl0bGUgPSBbaW50KGNoYXIsIDE2KSBmb3IgY2hhciBpbiBkYXRhWzJdLnNwbGl0KCldCisgICAgICAgICAgICAgICAgdXBwZXIgPSBbaW50KGNoYXIsIDE2KSBmb3IgY2hhciBpbiBkYXRhWzNdLnNwbGl0KCldCisgICAgICAgICAgICAgICAgc2NbY10gPSAobG93ZXIsIHRpdGxlLCB1cHBlcikKKyAgICAgICAgY2YgPSBzZWxmLmNhc2VfZm9sZGluZyA9IHt9CisgICAgICAgIGlmIHZlcnNpb24gIT0gJzMuMi4wJzoKKyAgICAgICAgICAgIHdpdGggb3Blbl9kYXRhKENBU0VfRk9MRElORywgdmVyc2lvbikgYXMgZmlsZToKKyAgICAgICAgICAgICAgICBmb3IgcyBpbiBmaWxlOgorICAgICAgICAgICAgICAgICAgICBzID0gc1s6LTFdLnNwbGl0KCcjJywgMSlbMF0KKyAgICAgICAgICAgICAgICAgICAgaWYgbm90IHM6CisgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZQorICAgICAgICAgICAgICAgICAgICBkYXRhID0gcy5zcGxpdCgiOyAiKQorICAgICAgICAgICAgICAgICAgICBpZiBkYXRhWzFdIGluICJDRiI6CisgICAgICAgICAgICAgICAgICAgICAgICBjID0gaW50KGRhdGFbMF0sIDE2KQorICAgICAgICAgICAgICAgICAgICAgICAgY2ZbY10gPSBbaW50KGNoYXIsIDE2KSBmb3IgY2hhciBpbiBkYXRhWzJdLnNwbGl0KCldCiAKICAgICBkZWYgdXNlbGF0aW4xKHNlbGYpOgogICAgICAgICAjIHJlc3RyaWN0IGNoYXJhY3RlciByYW5nZSB0byBJU08gTGF0aW4gMQpkaWZmIC0tZ2l0IGEvVG9vbHMvdW5pdHRlc3RndWkvdW5pdHRlc3RndWkucHkgYi9Ub29scy91bml0dGVzdGd1aS91bml0dGVzdGd1aS5weQppbmRleCBiNTI2NjQ2Li4wOWEyMGUyIDEwMDY0NAotLS0gYS9Ub29scy91bml0dGVzdGd1aS91bml0dGVzdGd1aS5weQorKysgYi9Ub29scy91bml0dGVzdGd1aS91bml0dGVzdGd1aS5weQpAQCAtMjgsNyArMjgsNiBAQAogIiIiCiAKIF9fYXV0aG9yX18gPSAiU3RldmUgUHVyY2VsbCAoc3RlcGhlbl9wdXJjZWxsQHlhaG9vLmNvbSkiCi1fX3ZlcnNpb25fXyA9ICIkUmV2aXNpb246IDEuNyAkIlsxMTotMl0KIAogaW1wb3J0IHN5cwogaW1wb3J0IHRyYWNlYmFjawpkaWZmIC0tZ2l0IGEvY29uZmlndXJlIGIvY29uZmlndXJlCmluZGV4IDVmMDBjMWUuLmViYWU4ZjUgMTAwNzU1Ci0tLSBhL2NvbmZpZ3VyZQorKysgYi9jb25maWd1cmUKQEAgLTEsNyArMSw2IEBACiAjISAvYmluL3NoCi0jIEZyb20gY29uZmlndXJlLmluIFJldmlzaW9uLgogIyBHdWVzcyB2YWx1ZXMgZm9yIHN5c3RlbS1kZXBlbmRlbnQgdmFyaWFibGVzIGFuZCBjcmVhdGUgTWFrZWZpbGVzLgotIyBHZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNjggZm9yIHB5dGhvbiAzLjIuCisjIEdlbmVyYXRlZCBieSBHTlUgQXV0b2NvbmYgMi42OCBmb3IgcHl0aG9uIDMuMy4KICMKICMgUmVwb3J0IGJ1Z3MgdG8gPGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvPi4KICMKQEAgLTU2MSw4ICs1NjAsOCBAQAogIyBJZGVudGl0eSBvZiB0aGlzIHBhY2thZ2UuCiBQQUNLQUdFX05BTUU9J3B5dGhvbicKIFBBQ0tBR0VfVEFSTkFNRT0ncHl0aG9uJwotUEFDS0FHRV9WRVJTSU9OPSczLjInCi1QQUNLQUdFX1NUUklORz0ncHl0aG9uIDMuMicKK1BBQ0tBR0VfVkVSU0lPTj0nMy4zJworUEFDS0FHRV9TVFJJTkc9J3B5dGhvbiAzLjMnCiBQQUNLQUdFX0JVR1JFUE9SVD0naHR0cDovL2J1Z3MucHl0aG9uLm9yZy8nCiBQQUNLQUdFX1VSTD0nJwogCkBAIC02NDYsMTEgKzY0NSw2IEBACiBJTlNUQUxMX1BST0dSQU0KIEhBU19QWVRIT04KIERJU0FCTEVfQVNETEdFTgotSEFTX0hHCi1IR0JSQU5DSAotSEdUQUcKLUhHVkVSU0lPTgotU1ZOVkVSU0lPTgogQVJGTEFHUwogQVIKIFJBTkxJQgpAQCAtNzAxLDYgKzY5NSwxMCBAQAogQ09ORklHX0FSR1MKIFNPVkVSU0lPTgogVkVSU0lPTgorSEFTX0hHCitIR0JSQU5DSAorSEdUQUcKK0hHVkVSU0lPTgogdGFyZ2V0X2FsaWFzCiBob3N0X2FsaWFzCiBidWlsZF9hbGlhcwpAQCAtNzU4LDcgKzc1Niw2IEBACiBlbmFibGVfbG9hZGFibGVfc3FsaXRlX2V4dGVuc2lvbnMKIHdpdGhfZGJtbGlib3JkZXIKIHdpdGhfc2lnbmFsX21vZHVsZQotd2l0aF9kZWNfdGhyZWFkcwogd2l0aF90aHJlYWRzCiB3aXRoX3RocmVhZAogZW5hYmxlX2lwdjYKQEAgLTc3MCw3ICs3NjcsNiBAQAogd2l0aF9saWJtCiB3aXRoX2xpYmMKIGVuYWJsZV9iaWdfZGlnaXRzCi13aXRoX3dpZGVfdW5pY29kZQogd2l0aF9jb21wdXRlZF9nb3RvcwogJwogICAgICAgYWNfcHJlY2lvdXNfdmFycz0nYnVpbGRfYWxpYXMKQEAgLTEzMjQsNyArMTMyMCw3IEBACiAgICMgT21pdCBzb21lIGludGVybmFsIG9yIG9ic29sZXRlIG9wdGlvbnMgdG8gbWFrZSB0aGUgbGlzdCBsZXNzIGltcG9zaW5nLgogICAjIFRoaXMgbWVzc2FnZSBpcyB0b28gbG9uZyB0byBiZSBhIHN0cmluZyBpbiB0aGUgQS9VWCAzLjEgc2guCiAgIGNhdCA8PF9BQ0VPRgotXGBjb25maWd1cmUnIGNvbmZpZ3VyZXMgcHl0aG9uIDMuMiB0byBhZGFwdCB0byBtYW55IGtpbmRzIG9mIHN5c3RlbXMuCitcYGNvbmZpZ3VyZScgY29uZmlndXJlcyBweXRob24gMy4zIHRvIGFkYXB0IHRvIG1hbnkga2luZHMgb2Ygc3lzdGVtcy4KIAogVXNhZ2U6ICQwIFtPUFRJT05dLi4uIFtWQVI9VkFMVUVdLi4uCiAKQEAgLTEzODUsNyArMTM4MSw3IEBACiAKIGlmIHRlc3QgLW4gIiRhY19pbml0X2hlbHAiOyB0aGVuCiAgIGNhc2UgJGFjX2luaXRfaGVscCBpbgotICAgICBzaG9ydCB8IHJlY3Vyc2l2ZSApIGVjaG8gIkNvbmZpZ3VyYXRpb24gb2YgcHl0aG9uIDMuMjoiOzsKKyAgICAgc2hvcnQgfCByZWN1cnNpdmUgKSBlY2hvICJDb25maWd1cmF0aW9uIG9mIHB5dGhvbiAzLjM6Ijs7CiAgICBlc2FjCiAgIGNhdCA8PFxfQUNFT0YKIApAQCAtMTQzMCw3ICsxNDI2LDYgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb24gc2VwYXJhdGVkIHN0cmluZyB3aXRoIHRoZSBiYWNrZW5kIG5hbWVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGBuZGJtJywgYGdkYm0nIGFuZCBgYmRiJy4KICAgLS13aXRoLXNpZ25hbC1tb2R1bGUgICAgZGlzYWJsZS9lbmFibGUgc2lnbmFsIG1vZHVsZQotICAtLXdpdGgtZGVjLXRocmVhZHMgICAgICB1c2UgREVDIEFscGhhL09TRjEgdGhyZWFkLXNhZmUgbGlicmFyaWVzCiAgIC0td2l0aChvdXQpLXRocmVhZHNbPURJUkVDVE9SWV0KICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZS9lbmFibGUgdGhyZWFkIHN1cHBvcnQKICAgLS13aXRoKG91dCktdGhyZWFkWz1ESVJFQ1RPUlldCkBAIC0xNDQyLDcgKzE0MzcsNiBAQAogICAtLXdpdGgtZnBlY3RsICAgICAgICAgICBlbmFibGUgU0lHRlBFIGNhdGNoaW5nCiAgIC0td2l0aC1saWJtPVNUUklORyAgICAgIG1hdGggbGlicmFyeQogICAtLXdpdGgtbGliYz1TVFJJTkcgICAgICBDIGxpYnJhcnkKLSAgLS13aXRoLXdpZGUtdW5pY29kZSAgICAgVXNlIDQtYnl0ZSBVbmljb2RlIGNoYXJhY3RlcnMgKGRlZmF1bHQgaXMgMiBieXRlcykKICAgLS13aXRoKG91dCktY29tcHV0ZWQtZ290b3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgVXNlIGNvbXB1dGVkIGdvdG9zIGluIGV2YWx1YXRpb24gbG9vcCAoZW5hYmxlZCBieQogICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0IG9uIHN1cHBvcnRlZCBjb21waWxlcnMpCkBAIC0xNTIzLDcgKzE1MTcsNyBAQAogdGVzdCAtbiAiJGFjX2luaXRfaGVscCIgJiYgZXhpdCAkYWNfc3RhdHVzCiBpZiAkYWNfaW5pdF92ZXJzaW9uOyB0aGVuCiAgIGNhdCA8PFxfQUNFT0YKLXB5dGhvbiBjb25maWd1cmUgMy4yCitweXRob24gY29uZmlndXJlIDMuMwogZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY4CiAKIENvcHlyaWdodCAoQykgMjAxMCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KQEAgLTIzNTQsNyArMjM0OCw3IEBACiBUaGlzIGZpbGUgY29udGFpbnMgYW55IG1lc3NhZ2VzIHByb2R1Y2VkIGJ5IGNvbXBpbGVycyB3aGlsZQogcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1Z2dpbmcgaWYgY29uZmlndXJlIG1ha2VzIGEgbWlzdGFrZS4KIAotSXQgd2FzIGNyZWF0ZWQgYnkgcHl0aG9uICRhc19tZSAzLjIsIHdoaWNoIHdhcworSXQgd2FzIGNyZWF0ZWQgYnkgcHl0aG9uICRhc19tZSAzLjMsIHdoaWNoIHdhcwogZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY4LiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUgd2FzCiAKICAgJCAkMCAkQApAQCAtMjcwMyw2ICsyNjk3LDY1IEBACiAKIAogCisKKworCisKK2lmIHRlc3QgLWUgJHNyY2Rpci8uaGcvZGlyc3RhdGUKK3RoZW4KKyMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAiaGciLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgorc2V0IGR1bW15IGhnOyBhY193b3JkPSQyCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAkYWNfd29yZCIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3IgJGFjX3dvcmQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfcHJvZ19IQVNfSEcrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBpZiB0ZXN0IC1uICIkSEFTX0hHIjsgdGhlbgorICBhY19jdl9wcm9nX0hBU19IRz0iJEhBU19IRyIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCitlbHNlCithc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCitmb3IgYXNfZGlyIGluICRQQVRICitkbworICBJRlM9JGFzX3NhdmVfSUZTCisgIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCisgICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCisgIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KKyAgICBhY19jdl9wcm9nX0hBU19IRz0iZm91bmQiCisgICAgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogZm91bmQgJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgPiY1CisgICAgYnJlYWsgMgorICBmaQorZG9uZQorICBkb25lCitJRlM9JGFzX3NhdmVfSUZTCisKKyAgdGVzdCAteiAiJGFjX2N2X3Byb2dfSEFTX0hHIiAmJiBhY19jdl9wcm9nX0hBU19IRz0ibm90LWZvdW5kIgorZmkKK2ZpCitIQVNfSEc9JGFjX2N2X3Byb2dfSEFTX0hHCitpZiB0ZXN0IC1uICIkSEFTX0hHIjsgdGhlbgorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJEhBU19IRyIgPiY1CiskYXNfZWNobyAiJEhBU19IRyIgPiY2OyB9CitlbHNlCisgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1CiskYXNfZWNobyAibm8iID4mNjsgfQorZmkKKworCitlbHNlCitIQVNfSEc9bm8tcmVwb3NpdG9yeQorZmkKK2lmIHRlc3QgJEhBU19IRyA9IGZvdW5kCit0aGVuCisgICAgSEdWRVJTSU9OPSJoZyBpZCAtaSBcJChzcmNkaXIpIgorICAgIEhHVEFHPSJoZyBpZCAtdCBcJChzcmNkaXIpIgorICAgIEhHQlJBTkNIPSJoZyBpZCAtYiBcJChzcmNkaXIpIgorZWxzZQorICAgIEhHVkVSU0lPTj0iIgorICAgIEhHVEFHPSIiCisgICAgSEdCUkFOQ0g9IiIKK2ZpCisKKwogYWNfY29uZmlnX2hlYWRlcnM9IiRhY19jb25maWdfaGVhZGVycyBweWNvbmZpZy5oIgogCiAKQEAgLTI3MjEsNyArMjc3NCw3IEBACiBtdiBjb25mZGVmcy5oLm5ldyBjb25mZGVmcy5oCiAKIAotVkVSU0lPTj0zLjIKK1ZFUlNJT049My4zCiAKICMgVmVyc2lvbiBudW1iZXIgb2YgUHl0aG9uJ3Mgb3duIHNoYXJlZCBsaWJyYXJ5IGZpbGUuCiAKQEAgLTI5OTcsNyArMzA1MCw3IEBACiAJTUFDSERFUD0iJGFjX21kX3N5c3RlbSRhY19tZF9yZWxlYXNlIgogCiAJY2FzZSAkTUFDSERFUCBpbgotCWxpbnV4KikgTUFDSERFUD0ibGludXgyIjs7CisJbGludXgqKSBNQUNIREVQPSJsaW51eCI7OwogCWN5Z3dpbiopIE1BQ0hERVA9ImN5Z3dpbiI7OwogCWRhcndpbiopIE1BQ0hERVA9ImRhcndpbiI7OwogICAgICAgICBpcml4NjQ2KSBNQUNIREVQPSJpcml4NiI7OwpAQCAtMzA5Myw4ICszMTQ2LDkgQEAKIAogaWYgdGVzdCAkZGVmaW5lX3hvcGVuX3NvdXJjZSA9IHllcwogdGhlbgorICAjIFgvT3BlbiA3LCBpbmNvcnBvcmF0aW5nIFBPU0lYLjEtMjAwOAogCi0kYXNfZWNobyAiI2RlZmluZSBfWE9QRU5fU09VUkNFIDYwMCIgPj5jb25mZGVmcy5oCiskYXNfZWNobyAiI2RlZmluZSBfWE9QRU5fU09VUkNFIDcwMCIgPj5jb25mZGVmcy5oCiAKIAogICAjIE9uIFRydTY0IFVuaXggNC4wRiwgZGVmaW5pbmcgX1hPUEVOX1NPVVJDRSBhbHNvIHJlcXVpcmVzCkBAIC0zMTA2LDggKzMxNjAsNyBAQAogCiAKIAotJGFzX2VjaG8gIiNkZWZpbmUgX1BPU0lYX0NfU09VUkNFIDIwMDExMkwiID4+Y29uZmRlZnMuaAotCiskYXNfZWNobyAiI2RlZmluZSBfUE9TSVhfQ19TT1VSQ0UgMjAwODA5TCIgPj5jb25mZGVmcy5oCiAKIGZpCiAKQEAgLTQ5ODYsMTEgKzUwMzksNiBAQAogCSAgQkxETElCUkFSWT0nLVdsLCtiLCQoTElCRElSKSAtTC4gLWxweXRob24kKExEVkVSU0lPTiknCiAJICBSVU5TSEFSRUQ9U0hMSUJfUEFUSD1gcHdkYDoke1NITElCX1BBVEh9CiAJICA7OwotICAgIE9TRiopCi0JICBMRExJQlJBUlk9J2xpYnB5dGhvbiQoTERWRVJTSU9OKS5zbycKLQkgIEJMRExJQlJBUlk9Jy1ycGF0aCAkKExJQkRJUikgLUwuIC1scHl0aG9uJChMRFZFUlNJT04pJwotCSAgUlVOU0hBUkVEPUxEX0xJQlJBUllfUEFUSD1gcHdkYDoke0xEX0xJQlJBUllfUEFUSH0KLQkgIDs7CiAgICAgRGFyd2luKikKICAgICAJTERMSUJSQVJZPSdsaWJweXRob24kKExEVkVSU0lPTikuZHlsaWInCiAJQkxETElCUkFSWT0nLUwuIC1scHl0aG9uJChMRFZFUlNJT04pJwpAQCAtNTE1OSwxMTAgKzUyMDcsNiBAQAogZmkKIAogCi0jIEV4dHJhY3QgdGhlIGZpcnN0IHdvcmQgb2YgInN2bnZlcnNpb24iLCBzbyBpdCBjYW4gYmUgYSBwcm9ncmFtIG5hbWUgd2l0aCBhcmdzLgotc2V0IGR1bW15IHN2bnZlcnNpb247IGFjX3dvcmQ9JDIKLXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKLSRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQotaWYgJHthY19jdl9wcm9nX1NWTlZFUlNJT04rOn0gZmFsc2U7IHRoZW4gOgotICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgotZWxzZQotICBpZiB0ZXN0IC1uICIkU1ZOVkVSU0lPTiI7IHRoZW4KLSAgYWNfY3ZfcHJvZ19TVk5WRVJTSU9OPSIkU1ZOVkVSU0lPTiIgIyBMZXQgdGhlIHVzZXIgb3ZlcnJpZGUgdGhlIHRlc3QuCi1lbHNlCi1hc19zYXZlX0lGUz0kSUZTOyBJRlM9JFBBVEhfU0VQQVJBVE9SCi1mb3IgYXNfZGlyIGluICRQQVRICi1kbwotICBJRlM9JGFzX3NhdmVfSUZTCi0gIHRlc3QgLXogIiRhc19kaXIiICYmIGFzX2Rpcj0uCi0gICAgZm9yIGFjX2V4ZWNfZXh0IGluICcnICRhY19leGVjdXRhYmxlX2V4dGVuc2lvbnM7IGRvCi0gIGlmIHsgdGVzdCAtZiAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCIgJiYgJGFzX3Rlc3RfeCAiJGFzX2Rpci8kYWNfd29yZCRhY19leGVjX2V4dCI7IH07IHRoZW4KLSAgICBhY19jdl9wcm9nX1NWTlZFUlNJT049ImZvdW5kIgotICAgICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGZvdW5kICRhc19kaXIvJGFjX3dvcmQkYWNfZXhlY19leHQiID4mNQotICAgIGJyZWFrIDIKLSAgZmkKLWRvbmUKLSAgZG9uZQotSUZTPSRhc19zYXZlX0lGUwotCi0gIHRlc3QgLXogIiRhY19jdl9wcm9nX1NWTlZFUlNJT04iICYmIGFjX2N2X3Byb2dfU1ZOVkVSU0lPTj0ibm90LWZvdW5kIgotZmkKLWZpCi1TVk5WRVJTSU9OPSRhY19jdl9wcm9nX1NWTlZFUlNJT04KLWlmIHRlc3QgLW4gIiRTVk5WRVJTSU9OIjsgdGhlbgotICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJFNWTlZFUlNJT04iID4mNQotJGFzX2VjaG8gIiRTVk5WRVJTSU9OIiA+JjY7IH0KLWVsc2UKLSAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKLSRhc19lY2hvICJubyIgPiY2OyB9Ci1maQotCi0KLWlmIHRlc3QgJFNWTlZFUlNJT04gPSBmb3VuZAotdGhlbgotCVNWTlZFUlNJT049InN2bnZlcnNpb24gXCQoc3JjZGlyKSIKLWVsc2UKLQlTVk5WRVJTSU9OPSJlY2hvIFVudmVyc2lvbmVkIGRpcmVjdG9yeSIKLWZpCi0KLQotCi0KLQotaWYgdGVzdCAtZSAkc3JjZGlyLy5oZy9kaXJzdGF0ZQotdGhlbgotIyBFeHRyYWN0IHRoZSBmaXJzdCB3b3JkIG9mICJoZyIsIHNvIGl0IGNhbiBiZSBhIHByb2dyYW0gbmFtZSB3aXRoIGFyZ3MuCi1zZXQgZHVtbXkgaGc7IGFjX3dvcmQ9JDIKLXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yICRhY193b3JkIiA+JjUKLSRhc19lY2hvX24gImNoZWNraW5nIGZvciAkYWNfd29yZC4uLiAiID4mNjsgfQotaWYgJHthY19jdl9wcm9nX0hBU19IRys6fSBmYWxzZTsgdGhlbiA6Ci0gICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2Ci1lbHNlCi0gIGlmIHRlc3QgLW4gIiRIQVNfSEciOyB0aGVuCi0gIGFjX2N2X3Byb2dfSEFTX0hHPSIkSEFTX0hHIiAjIExldCB0aGUgdXNlciBvdmVycmlkZSB0aGUgdGVzdC4KLWVsc2UKLWFzX3NhdmVfSUZTPSRJRlM7IElGUz0kUEFUSF9TRVBBUkFUT1IKLWZvciBhc19kaXIgaW4gJFBBVEgKLWRvCi0gIElGUz0kYXNfc2F2ZV9JRlMKLSAgdGVzdCAteiAiJGFzX2RpciIgJiYgYXNfZGlyPS4KLSAgICBmb3IgYWNfZXhlY19leHQgaW4gJycgJGFjX2V4ZWN1dGFibGVfZXh0ZW5zaW9uczsgZG8KLSAgaWYgeyB0ZXN0IC1mICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiAmJiAkYXNfdGVzdF94ICIkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IjsgfTsgdGhlbgotICAgIGFjX2N2X3Byb2dfSEFTX0hHPSJmb3VuZCIKLSAgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBmb3VuZCAkYXNfZGlyLyRhY193b3JkJGFjX2V4ZWNfZXh0IiA+JjUKLSAgICBicmVhayAyCi0gIGZpCi1kb25lCi0gIGRvbmUKLUlGUz0kYXNfc2F2ZV9JRlMKLQotICB0ZXN0IC16ICIkYWNfY3ZfcHJvZ19IQVNfSEciICYmIGFjX2N2X3Byb2dfSEFTX0hHPSJub3QtZm91bmQiCi1maQotZmkKLUhBU19IRz0kYWNfY3ZfcHJvZ19IQVNfSEcKLWlmIHRlc3QgLW4gIiRIQVNfSEciOyB0aGVuCi0gIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkSEFTX0hHIiA+JjUKLSRhc19lY2hvICIkSEFTX0hHIiA+JjY7IH0KLWVsc2UKLSAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6IG5vIiA+JjUKLSRhc19lY2hvICJubyIgPiY2OyB9Ci1maQotCi0KLWVsc2UKLUhBU19IRz1uby1yZXBvc2l0b3J5Ci1maQotaWYgdGVzdCAkSEFTX0hHID0gZm91bmQKLXRoZW4KLSAgICBIR1ZFUlNJT049ImhnIGlkIC1pIFwkKHNyY2RpcikiCi0gICAgSEdUQUc9ImhnIGlkIC10IFwkKHNyY2RpcikiCi0gICAgSEdCUkFOQ0g9ImhnIGlkIC1iIFwkKHNyY2RpcikiCi1lbHNlCi0gICAgSEdWRVJTSU9OPSIiCi0gICAgSEdUQUc9IiIKLSAgICBIR0JSQU5DSD0iIgotZmkKLQotCiBESVNBQkxFX0FTRExHRU49IiIKICMgRXh0cmFjdCB0aGUgZmlyc3Qgd29yZCBvZiAicHl0aG9uIiwgc28gaXQgY2FuIGJlIGEgcHJvZ3JhbSBuYW1lIHdpdGggYXJncy4KIHNldCBkdW1teSBweXRob247IGFjX3dvcmQ9JDIKQEAgLTU2MTYsNiArNTU2MCw0OSBAQAogICAgICAgQkFTRUNGTEFHUz0iJEJBU0VDRkxBR1MgLWZuby1zdHJpY3QtYWxpYXNpbmciCiAgICAgZmkKIAorICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgaWYgd2UgY2FuIHR1cm4gb2ZmICRDQyB1bnVzZWQgcmVzdWx0IHdhcm5pbmciID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgaWYgd2UgY2FuIHR1cm4gb2ZmICRDQyB1bnVzZWQgcmVzdWx0IHdhcm5pbmcuLi4gIiA+JjY7IH0KKyAgICAgYWNfc2F2ZV9jYz0iJENDIgorICAgICBDQz0iJENDIC1XdW51c2VkLXJlc3VsdCAtV2Vycm9yIgorICAgICBzYXZlX0NGTEFHUz0iJENGTEFHUyIKKyAgICAgaWYgJHthY19jdl9kaXNhYmxlX3VudXNlZF9yZXN1bHRfd2FybmluZys6fSBmYWxzZTsgdGhlbiA6CisgICRhc19lY2hvX24gIihjYWNoZWQpICIgPiY2CitlbHNlCisgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworCitpbnQKK21haW4gKCkKK3sKKworICA7CisgIHJldHVybiAwOworfQorCitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKworICAgICAgICAgICBhY19jdl9kaXNhYmxlX3VudXNlZF9yZXN1bHRfd2FybmluZz15ZXMKKworZWxzZQorCisgICAgICAgICAgIGFjX2N2X2Rpc2FibGVfdW51c2VkX3Jlc3VsdF93YXJuaW5nPW5vCisKK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK2ZpCisKKyAgICAgQ0ZMQUdTPSIkc2F2ZV9DRkxBR1MiCisgICAgIENDPSIkYWNfc2F2ZV9jYyIKKyAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2Rpc2FibGVfdW51c2VkX3Jlc3VsdF93YXJuaW5nIiA+JjUKKyRhc19lY2hvICIkYWNfY3ZfZGlzYWJsZV91bnVzZWRfcmVzdWx0X3dhcm5pbmciID4mNjsgfQorCisgICAgaWYgdGVzdCAkYWNfY3ZfZGlzYWJsZV91bnVzZWRfcmVzdWx0X3dhcm5pbmcgPSB5ZXMKKyAgICB0aGVuCisgICAgICBCQVNFQ0ZMQUdTPSIkQkFTRUNGTEFHUyAtV25vLXVudXNlZC1yZXN1bHQiCisgICAgZmkKKwogICAgICMgaWYgdXNpbmcgZ2NjIG9uIGFscGhhLCB1c2UgLW1pZWVlIHRvIGdldCAobmVhcikgZnVsbCBJRUVFIDc1NAogICAgICMgc3VwcG9ydC4gIFdpdGhvdXQgdGhpcywgdHJlYXRtZW50IG9mIHN1Ym5vcm1hbHMgZG9lc24ndCBmb2xsb3cKICAgICAjIHRoZSBzdGFuZGFyZC4KQEAgLTU3MzQsOSArNTcyMSw2IEBACiAJICAgIEVYUE9SVF9NQUNPU1hfREVQTE9ZTUVOVF9UQVJHRVQ9JycKIAogCSAgICA7OwotCU9TRiopCi0JICAgIEJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1taWVlZSIKLQkgICAgOzsKICAgICBlc2FjCiAgICAgOzsKIApAQCAtNTc0NSw5ICs1NzI5LDYgQEAKICAgICBPcGVuVU5JWCp8VW5peFdhcmUqKQogCUJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1LIHBlbnRpdW0saG9zdCxpbmxpbmUsbG9vcF91bnJvbGwsYWxsb2NhICIKIAk7OwotICAgIE9TRiopCi0JQkFTRUNGTEFHUz0iJEJBU0VDRkxBR1MgLWllZWUgLXN0ZCIKLSAgICAJOzsKICAgICBTQ09fU1YqKQogCUJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1iZWxmIC1LaTQ4NiAtRFNDTzUiCiAJOzsKQEAgLTYxNTksMTUgKzYxNDAsMTYgQEAKIAogZm9yIGFjX2hlYWRlciBpbiBhc20vdHlwZXMuaCBjb25pby5oIGN1cnNlcy5oIGRpcmVjdC5oIGRsZmNuLmggZXJybm8uaCBcCiBmY250bC5oIGdycC5oIFwKLWllZWVmcC5oIGlvLmggbGFuZ2luZm8uaCBsaWJpbnRsLmggbmN1cnNlcy5oIHBvbGwuaCBwcm9jZXNzLmggcHRocmVhZC5oIFwKLXNoYWRvdy5oIHNpZ25hbC5oIHN0ZGludC5oIHN0cm9wdHMuaCB0ZXJtaW9zLmggdGhyZWFkLmggXAoraWVlZWZwLmggaW8uaCBsYW5naW5mby5oIGxpYmludGwuaCBuY3Vyc2VzLmggcHJvY2Vzcy5oIHB0aHJlYWQuaCBcCitzY2hlZC5oIHNoYWRvdy5oIHNpZ25hbC5oIHN0ZGludC5oIHN0cm9wdHMuaCB0ZXJtaW9zLmggXAogdW5pc3RkLmggdXRpbWUuaCBcCi1zeXMvYXVkaW9pby5oIHN5cy9ic2R0dHkuaCBzeXMvZXBvbGwuaCBzeXMvZXZlbnQuaCBzeXMvZmlsZS5oIHN5cy9sb2FkYXZnLmggXAorcG9sbC5oIHN5cy9kZXZwb2xsLmggc3lzL2Vwb2xsLmggc3lzL3BvbGwuaCBcCitzeXMvYXVkaW9pby5oIHN5cy94YXR0ci5oIHN5cy9ic2R0dHkuaCBzeXMvZXZlbnQuaCBzeXMvZmlsZS5oIHN5cy9sb2FkYXZnLmggXAogc3lzL2xvY2suaCBzeXMvbWtkZXYuaCBzeXMvbW9kZW0uaCBcCi1zeXMvcGFyYW0uaCBzeXMvcG9sbC5oIHN5cy9zZWxlY3QuaCBzeXMvc29ja2V0Lmggc3lzL3N0YXR2ZnMuaCBzeXMvc3RhdC5oIFwKLXN5cy9zeXNjYWxsLmggc3lzL3Rlcm1pby5oIHN5cy90aW1lLmggXAotc3lzL3RpbWVzLmggc3lzL3R5cGVzLmggc3lzL3VuLmggc3lzL3V0c25hbWUuaCBzeXMvd2FpdC5oIHB0eS5oIGxpYnV0aWwuaCBcCi1zeXMvcmVzb3VyY2UuaCBuZXRwYWNrZXQvcGFja2V0Lmggc3lzZXhpdHMuaCBibHVldG9vdGguaCBcCitzeXMvcGFyYW0uaCBzeXMvc2VsZWN0Lmggc3lzL3NlbmRmaWxlLmggc3lzL3NvY2tldC5oIHN5cy9zdGF0dmZzLmggXAorc3lzL3N0YXQuaCBzeXMvc3lzY2FsbC5oIHN5cy90ZXJtaW8uaCBzeXMvdGltZS5oIFwKK3N5cy90aW1lcy5oIHN5cy90eXBlcy5oIHN5cy91aW8uaCBzeXMvdW4uaCBzeXMvdXRzbmFtZS5oIHN5cy93YWl0LmggcHR5LmggXAorbGlidXRpbC5oIHN5cy9yZXNvdXJjZS5oIG5ldHBhY2tldC9wYWNrZXQuaCBzeXNleGl0cy5oIGJsdWV0b290aC5oIFwKIGJsdWV0b290aC9ibHVldG9vdGguaCBsaW51eC90aXBjLmggc3Bhd24uaCB1dGlsLmgKIGRvIDoKICAgYXNfYWNfSGVhZGVyPWAkYXNfZWNobyAiYWNfY3ZfaGVhZGVyXyRhY19oZWFkZXIiIHwgJGFzX3RyX3NoYApAQCAtNjM5MCw2ICs2MzcyLDM0IEBACiBmaQogCiAKKyMgT24gRGFyd2luIChPUyBYKSBuZXQvaWYuaCByZXF1aXJlcyBzeXMvc29ja2V0LmggdG8gYmUgaW1wb3J0ZWQgZmlyc3QuCitmb3IgYWNfaGVhZGVyIGluIG5ldC9pZi5oCitkbyA6CisgIGFjX2ZuX2NfY2hlY2tfaGVhZGVyX2NvbXBpbGUgIiRMSU5FTk8iICJuZXQvaWYuaCIgImFjX2N2X2hlYWRlcl9uZXRfaWZfaCIgIiNpbmNsdWRlIDxzdGRpby5oPgorI2lmZGVmIFNURENfSEVBREVSUworIyBpbmNsdWRlIDxzdGRsaWIuaD4KKyMgaW5jbHVkZSA8c3RkZGVmLmg+CisjZWxzZQorIyBpZmRlZiBIQVZFX1NURExJQl9ICisjICBpbmNsdWRlIDxzdGRsaWIuaD4KKyMgZW5kaWYKKyNlbmRpZgorI2lmZGVmIEhBVkVfU1lTX1NPQ0tFVF9ICisjIGluY2x1ZGUgPHN5cy9zb2NrZXQuaD4KKyNlbmRpZgorCisiCitpZiB0ZXN0ICJ4JGFjX2N2X2hlYWRlcl9uZXRfaWZfaCIgPSB4eWVzOyB0aGVuIDoKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBIQVZFX05FVF9JRl9IIDEKK19BQ0VPRgorCitmaQorCitkb25lCisKKworCiAjIE9uIFNvbGFyaXMsIHRlcm0uaCByZXF1aXJlcyBjdXJzZXMuaAogZm9yIGFjX2hlYWRlciBpbiB0ZXJtLmgKIGRvIDoKQEAgLTY0MzEsNiArNjQ0MSwyNiBAQAogZG9uZQogCiAKKyMgT24gTGludXgsIGNhbi5oIGFuZCBjYW4vcmF3LmggcmVxdWlyZSBzeXMvc29ja2V0LmgKK2ZvciBhY19oZWFkZXIgaW4gbGludXgvY2FuLmggbGludXgvY2FuL3Jhdy5oCitkbyA6CisgIGFzX2FjX0hlYWRlcj1gJGFzX2VjaG8gImFjX2N2X2hlYWRlcl8kYWNfaGVhZGVyIiB8ICRhc190cl9zaGAKK2FjX2ZuX2NfY2hlY2tfaGVhZGVyX2NvbXBpbGUgIiRMSU5FTk8iICIkYWNfaGVhZGVyIiAiJGFzX2FjX0hlYWRlciIgIgorI2lmZGVmIEhBVkVfU1lTX1NPQ0tFVF9ICisjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgorI2VuZGlmCisKKyIKK2lmIGV2YWwgdGVzdCBcInhcJCIkYXNfYWNfSGVhZGVyIlwiID0geCJ5ZXMiOyB0aGVuIDoKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBgJGFzX2VjaG8gIkhBVkVfJGFjX2hlYWRlciIgfCAkYXNfdHJfY3BwYCAxCitfQUNFT0YKKworZmkKKworZG9uZQorCisKICMgY2hlY2tzIGZvciB0eXBlZGVmcwogd2FzX2l0X2RlZmluZWQ9bm8KIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGNsb2NrX3QgaW4gdGltZS5oIiA+JjUKQEAgLTY0NTUsNyArNjQ4NSw2IEBACiB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJHdhc19pdF9kZWZpbmVkIiA+JjUKICRhc19lY2hvICIkd2FzX2l0X2RlZmluZWQiID4mNjsgfQogCi0jIENoZWNrIHdoZXRoZXIgdXNpbmcgbWFrZWRldiByZXF1aXJlcyBkZWZpbmluZyBfT1NGX1NPVVJDRQogeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgbWFrZWRldiIgPiY1CiAkYXNfZWNob19uICJjaGVja2luZyBmb3IgbWFrZWRldi4uLiAiID4mNjsgfQogY2F0IGNvbmZkZWZzLmggLSA8PF9BQ0VPRiA+Y29uZnRlc3QuJGFjX2V4dApAQCAtNjQ4NiwzNSArNjUxNSw2IEBACiBmaQogcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCiAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKLWlmIHRlc3QgIiRhY19jdl9oYXNfbWFrZWRldiIgPSAibm8iOyB0aGVuCi0gICAgIyB3ZSBkaWRuJ3QgbGluaywgdHJ5IGlmIF9PU0ZfU09VUkNFIHdpbGwgYWxsb3cgdXMgdG8gbGluawotICAgIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKLS8qIGVuZCBjb25mZGVmcy5oLiAgKi8KLQotI2RlZmluZSBfT1NGX1NPVVJDRSAxCi0jaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0KLWludAotbWFpbiAoKQotewotIG1ha2VkZXYoMCwgMCkKLSAgOwotICByZXR1cm4gMDsKLX0KLV9BQ0VPRgotaWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgotICBhY19jdl9oYXNfbWFrZWRldj15ZXMKLWVsc2UKLSAgYWNfY3ZfaGFzX21ha2VkZXY9bm8KLWZpCi1ybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKLSAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAotICAgIGlmIHRlc3QgIiRhY19jdl9oYXNfbWFrZWRldiIgPSAieWVzIjsgdGhlbgotCi0kYXNfZWNobyAiI2RlZmluZSBfT1NGX1NPVVJDRSAxIiA+PmNvbmZkZWZzLmgKLQotICAgIGZpCi1maQogeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRhY19jdl9oYXNfbWFrZWRldiIgPiY1CiAkYXNfZWNobyAiJGFjX2N2X2hhc19tYWtlZGV2IiA+JjY7IH0KIGlmIHRlc3QgIiRhY19jdl9oYXNfbWFrZWRldiIgPSAieWVzIjsgdGhlbgpAQCAtNzYwMiw3ICs3NjAyLDYgQEAKIAkJZWxzZQogCQkJTERTSEFSRUQ9J2xkIC1iJwogCQlmaSA7OwotCU9TRiopIExEU0hBUkVEPSJsZCAtc2hhcmVkIC1leHBlY3RfdW5yZXNvbHZlZCBcIipcIiI7OwogCURhcndpbi8xLjMqKQogCQlMRFNIQVJFRD0nJChDQykgLWJ1bmRsZScKIAkJTERDWFhTSEFSRUQ9JyQoQ1hYKSAtYnVuZGxlJwpAQCAtNzg0MSw2ICs3ODQwLDUxIEBACiAKIAogIyBjaGVja3MgZm9yIGxpYnJhcmllcworeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3Igc2VuZGZpbGUgaW4gLWxzZW5kZmlsZSIgPiY1CiskYXNfZWNob19uICJjaGVja2luZyBmb3Igc2VuZGZpbGUgaW4gLWxzZW5kZmlsZS4uLiAiID4mNjsgfQoraWYgJHthY19jdl9saWJfc2VuZGZpbGVfc2VuZGZpbGUrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCitMSUJTPSItbHNlbmRmaWxlICAkTElCUyIKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCisgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKKyAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIKKyNlbmRpZgorY2hhciBzZW5kZmlsZSAoKTsKK2ludAorbWFpbiAoKQoreworcmV0dXJuIHNlbmRmaWxlICgpOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X2xpYl9zZW5kZmlsZV9zZW5kZmlsZT15ZXMKK2Vsc2UKKyAgYWNfY3ZfbGliX3NlbmRmaWxlX3NlbmRmaWxlPW5vCitmaQorcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCisgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKK0xJQlM9JGFjX2NoZWNrX2xpYl9zYXZlX0xJQlMKK2ZpCit7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogJGFjX2N2X2xpYl9zZW5kZmlsZV9zZW5kZmlsZSIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2xpYl9zZW5kZmlsZV9zZW5kZmlsZSIgPiY2OyB9CitpZiB0ZXN0ICJ4JGFjX2N2X2xpYl9zZW5kZmlsZV9zZW5kZmlsZSIgPSB4eWVzOyB0aGVuIDoKKyAgY2F0ID4+Y29uZmRlZnMuaCA8PF9BQ0VPRgorI2RlZmluZSBIQVZFX0xJQlNFTkRGSUxFIDEKK19BQ0VPRgorCisgIExJQlM9Ii1sc2VuZGZpbGUgJExJQlMiCisKK2ZpCisKIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGRsb3BlbiBpbiAtbGRsIiA+JjUKICRhc19lY2hvX24gImNoZWNraW5nIGZvciBkbG9wZW4gaW4gLWxkbC4uLiAiID4mNjsgfQogaWYgJHthY19jdl9saWJfZGxfZGxvcGVuKzp9IGZhbHNlOyB0aGVuIDoKQEAgLTgzNzYsMjMgKzg0MjAsNiBAQAogCiBVU0VfVEhSRUFEX01PRFVMRT0iIgogCi17ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAtLXdpdGgtZGVjLXRocmVhZHMiID4mNQotJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIC0td2l0aC1kZWMtdGhyZWFkcy4uLiAiID4mNjsgfQotCi0KLSMgQ2hlY2sgd2hldGhlciAtLXdpdGgtZGVjLXRocmVhZHMgd2FzIGdpdmVuLgotaWYgdGVzdCAiJHt3aXRoX2RlY190aHJlYWRzK3NldH0iID0gc2V0OyB0aGVuIDoKLSAgd2l0aHZhbD0kd2l0aF9kZWNfdGhyZWFkczsKLXsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkd2l0aHZhbCIgPiY1Ci0kYXNfZWNobyAiJHdpdGh2YWwiID4mNjsgfQotTERMQVNUPS10aHJlYWRzCi1pZiB0ZXN0ICIke3dpdGhfdGhyZWFkK3NldH0iICE9IHNldDsgdGhlbgotICAgd2l0aF90aHJlYWQ9IiR3aXRodmFsIjsKLWZpCi1lbHNlCi0gIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiBubyIgPiY1Ci0kYXNfZWNobyAibm8iID4mNjsgfQotZmkKIAogCiAjIFRlbXBsYXRlcyBmb3IgdGhpbmdzIEFDX0RFRklORWQgbW9yZSB0aGFuIG9uY2UuCkBAIC04NDAwLDcgKzg0MjcsNiBAQAogCiAKIAotCiB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciAtLXdpdGgtdGhyZWFkcyIgPiY1CiAkYXNfZWNob19uICJjaGVja2luZyBmb3IgLS13aXRoLXRocmVhZHMuLi4gIiA+JjY7IH0KIApAQCAtODUwMiwzMSArODUyOCw2IEBACiAKICAgICAkYXNfZWNobyAiI2RlZmluZSBfUkVFTlRSQU5UIDEiID4+Y29uZmRlZnMuaAogCi0gICAgYWNfZm5fY19jaGVja19oZWFkZXJfbW9uZ3JlbCAiJExJTkVOTyIgImN0aHJlYWRzLmgiICJhY19jdl9oZWFkZXJfY3RocmVhZHNfaCIgIiRhY19pbmNsdWRlc19kZWZhdWx0IgotaWYgdGVzdCAieCRhY19jdl9oZWFkZXJfY3RocmVhZHNfaCIgPSB4eWVzOyB0aGVuIDoKLSAgJGFzX2VjaG8gIiNkZWZpbmUgV0lUSF9USFJFQUQgMSIgPj5jb25mZGVmcy5oCi0KLSAgICAkYXNfZWNobyAiI2RlZmluZSBDX1RIUkVBRFMgMSIgPj5jb25mZGVmcy5oCi0KLQotJGFzX2VjaG8gIiNkZWZpbmUgSFVSRF9DX1RIUkVBRFMgMSIgPj5jb25mZGVmcy5oCi0KLSAgICBMSUJTPSIkTElCUyAtbHRocmVhZHMiCi0gICAgVEhSRUFET0JKPSJQeXRob24vdGhyZWFkLm8iCi1lbHNlCi0KLSAgICBhY19mbl9jX2NoZWNrX2hlYWRlcl9tb25ncmVsICIkTElORU5PIiAibWFjaC9jdGhyZWFkcy5oIiAiYWNfY3ZfaGVhZGVyX21hY2hfY3RocmVhZHNfaCIgIiRhY19pbmNsdWRlc19kZWZhdWx0IgotaWYgdGVzdCAieCRhY19jdl9oZWFkZXJfbWFjaF9jdGhyZWFkc19oIiA9IHh5ZXM7IHRoZW4gOgotICAkYXNfZWNobyAiI2RlZmluZSBXSVRIX1RIUkVBRCAxIiA+PmNvbmZkZWZzLmgKLQotICAgICRhc19lY2hvICIjZGVmaW5lIENfVEhSRUFEUyAxIiA+PmNvbmZkZWZzLmgKLQotCi0kYXNfZWNobyAiI2RlZmluZSBNQUNIX0NfVEhSRUFEUyAxIiA+PmNvbmZkZWZzLmgKLQotICAgIFRIUkVBRE9CSj0iUHl0aG9uL3RocmVhZC5vIgotZWxzZQotCiAgICAgIyBKdXN0IGxvb2tpbmcgZm9yIHB0aHJlYWRfY3JlYXRlIGluIGxpYnB0aHJlYWQgaXMgbm90IGVub3VnaDoKICAgICAjIG9uIEhQL1VYLCBwdGhyZWFkLmggcmVuYW1lcyBwdGhyZWFkX2NyZWF0ZSB0byBhIGRpZmZlcmVudCBzeW1ib2wgbmFtZS4KICAgICAjIFNvIHdlIHJlYWxseSBoYXZlIHRvIGluY2x1ZGUgcHRocmVhZC5oLCBhbmQgdGhlbiBsaW5rLgpAQCAtODc1OCwxMiArODc1OSw2IEBACiBmaQogcm0gLWYgY29yZSBjb25mdGVzdC5lcnIgY29uZnRlc3QuJGFjX29iamV4dCBcCiAgICAgY29uZnRlc3QkYWNfZXhlZXh0IGNvbmZ0ZXN0LiRhY19leHQKLWZpCi0KLQotZmkKLQotCiAKICAgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciB1c2NvbmZpZyBpbiAtbG1wYyIgPiY1CiAkYXNfZWNob19uICJjaGVja2luZyBmb3IgdXNjb25maWcgaW4gLWxtcGMuLi4gIiA+JjY7IH0KQEAgLTg4NTYsMTUgKzg4NTEsNiBAQAogZmkKIAogICAgIGZpCi0KLSAgICBpZiB0ZXN0ICIkVVNFX1RIUkVBRF9NT0RVTEUiICE9ICIjIgotICAgIHRoZW4KLSAgICAgICAgIyBJZiB0aGUgYWJvdmUgY2hlY2tzIGRpZG4ndCBkaXNhYmxlIHRocmVhZHMsIChhdCBsZWFzdCkgT1NGMQotICAgICAgICAjIG5lZWRzIHRoaXMgJy10aHJlYWRzJyBhcmd1bWVudCBkdXJpbmcgbGlua2luZy4KLSAgICAgICAgY2FzZSAkYWNfc3lzX3N5c3RlbSBpbgotICAgICAgICBPU0YxKSBMRExBU1Q9LXRocmVhZHM7OwotICAgICAgICBlc2FjCi0gICAgZmkKIGZpCiAKIGlmIHRlc3QgIiRwb3NpeF90aHJlYWRzIiA9ICJ5ZXMiOyB0aGVuCkBAIC05NDEwLDE5ICs5Mzk2LDI3IEBACiAKICMgY2hlY2tzIGZvciBsaWJyYXJ5IGZ1bmN0aW9ucwogZm9yIGFjX2Z1bmMgaW4gYWxhcm0gYWNjZXB0NCBzZXRpdGltZXIgZ2V0aXRpbWVyIGJpbmRfdGV4dGRvbWFpbl9jb2Rlc2V0IGNob3duIFwKLSBjbG9jayBjb25mc3RyIGN0ZXJtaWQgZXhlY3YgZmNobW9kIGZjaG93biBmb3JrIGZwYXRoY29uZiBmdGltZSBmdHJ1bmNhdGUgXAotIGdhaV9zdHJlcnJvciBnZXRncm91cHMgZ2V0bG9naW4gZ2V0bG9hZGF2ZyBnZXRwZWVybmFtZSBnZXRwZ2lkIGdldHBpZCBcCisgY2xvY2sgY29uZnN0ciBjdGVybWlkIGV4ZWN2IGZhY2Nlc3NhdCBmY2htb2QgZmNobW9kYXQgZmNob3duIGZjaG93bmF0IFwKKyBmZXhlY3ZlIGZkb3BlbmRpciBmb3JrIGZwYXRoY29uZiBmc3RhdGF0IGZ0aW1lIGZ0cnVuY2F0ZSBmdXRpbWVzYXQgXAorIGZ1dGltZW5zIGZ1dGltZXMgZ2FpX3N0cmVycm9yIFwKKyBnZXRncm91cGxpc3QgZ2V0Z3JvdXBzIGdldGxvZ2luIGdldGxvYWRhdmcgZ2V0cGVlcm5hbWUgZ2V0cGdpZCBnZXRwaWQgXAogIGdldHByaW9yaXR5IGdldHJlc3VpZCBnZXRyZXNnaWQgZ2V0cHdlbnQgZ2V0c3BuYW0gZ2V0c3BlbnQgZ2V0c2lkIGdldHdkIFwKLSBpbml0Z3JvdXBzIGtpbGwga2lsbHBnIGxjaG1vZCBsY2hvd24gbHN0YXQgbWJydG93YyBta2ZpZm8gbWtub2QgbWt0aW1lIFwKLSBtcmVtYXAgbmljZSBwYXRoY29uZiBwYXVzZSBwbG9jayBwb2xsIHB0aHJlYWRfaW5pdCBcCi0gcHV0ZW52IHJlYWRsaW5rIHJlYWxwYXRoIFwKLSBzZWxlY3Qgc2VtX29wZW4gc2VtX3RpbWVkd2FpdCBzZW1fZ2V0dmFsdWUgc2VtX3VubGluayBzZXRlZ2lkIHNldGV1aWQgXAotIHNldGdpZCBcCi0gc2V0bG9jYWxlIHNldHJlZ2lkIHNldHJldWlkIHNldHJlc3VpZCBzZXRyZXNnaWQgc2V0c2lkIHNldHBnaWQgc2V0cGdycCBzZXR1aWQgc2V0dmJ1ZiBcCi0gc2lnYWN0aW9uIHNpZ2ludGVycnVwdCBzaWdyZWxzZSBzbnByaW50ZiBzdHJmdGltZSBzdHJsY3B5IFwKKyBpZl9uYW1laW5kZXggXAorIGluaXRncm91cHMga2lsbCBraWxscGcgbGNobW9kIGxjaG93biBsb2NrZiBsaW5rYXQgbHN0YXQgbHV0aW1lcyBtbWFwIFwKKyBtZW1yY2hyIG1icnRvd2MgbWtkaXJhdCBta2ZpZm8gXAorIG1rZmlmb2F0IG1rbm9kIG1rbm9kYXQgbWt0aW1lIG1yZW1hcCBuaWNlIG9wZW5hdCBwYXRoY29uZiBwYXVzZSBwaXBlMiBwbG9jayBwb2xsIFwKKyBwb3NpeF9mYWxsb2NhdGUgcG9zaXhfZmFkdmlzZSBwcmVhZCBcCisgcHRocmVhZF9pbml0IHB0aHJlYWRfa2lsbCBwdXRlbnYgcHdyaXRlIHJlYWRsaW5rIHJlYWRsaW5rYXQgcmVhZHYgcmVhbHBhdGggcmVuYW1lYXQgXAorIHNlbGVjdCBzZW1fb3BlbiBzZW1fdGltZWR3YWl0IHNlbV9nZXR2YWx1ZSBzZW1fdW5saW5rIHNlbmRmaWxlIHNldGVnaWQgc2V0ZXVpZCBcCisgc2V0Z2lkIHNldGhvc3RuYW1lIFwKKyBzZXRsb2NhbGUgc2V0cmVnaWQgc2V0cmV1aWQgc2V0cmVzdWlkIHNldHJlc2dpZCBzZXRzaWQgc2V0cGdpZCBzZXRwZ3JwIHNldHByaW9yaXR5IHNldHVpZCBzZXR2YnVmIFwKKyBzY2hlZF9nZXRfcHJpb3JpdHlfbWF4IHNjaGVkX3NldGFmZmluaXR5IHNjaGVkX3NldHNjaGVkdWxlciBzY2hlZF9zZXRwYXJhbSBcCisgc2NoZWRfcnJfZ2V0X2ludGVydmFsIFwKKyBzaWdhY3Rpb24gc2lnYWx0c3RhY2sgc2lnaW50ZXJydXB0IHNpZ3BlbmRpbmcgc2lncmVsc2UgXAorIHNpZ3RpbWVkd2FpdCBzaWd3YWl0IHNpZ3dhaXRpbmZvIHNucHJpbnRmIHN0cmZ0aW1lIHN0cmxjcHkgc3ltbGlua2F0IHN5bmMgXAogIHN5c2NvbmYgdGNnZXRwZ3JwIHRjc2V0cGdycCB0ZW1wbmFtIHRpbWVnbSB0aW1lcyB0bXBmaWxlIHRtcG5hbSB0bXBuYW1fciBcCi0gdHJ1bmNhdGUgdW5hbWUgdW5zZXRlbnYgdXRpbWVzIHdhaXRwaWQgd2FpdDMgd2FpdDQgXAotIHdjc2NvbGwgd2NzZnRpbWUgd2NzeGZybSBfZ2V0cHR5CisgdHJ1bmNhdGUgdW5hbWUgdW5saW5rYXQgdW5zZXRlbnYgdXRpbWVuc2F0IHV0aW1lcyB3YWl0aWQgd2FpdHBpZCB3YWl0MyB3YWl0NCBcCisgd2NzY29sbCB3Y3NmdGltZSB3Y3N4ZnJtIHdyaXRldiBfZ2V0cHR5CiBkbyA6CiAgIGFzX2FjX3Zhcj1gJGFzX2VjaG8gImFjX2N2X2Z1bmNfJGFjX2Z1bmMiIHwgJGFzX3RyX3NoYAogYWNfZm5fY19jaGVja19mdW5jICIkTElORU5PIiAiJGFjX2Z1bmMiICIkYXNfYWNfdmFyIgpAQCAtOTYyMiw2ICs5NjE2LDMxIEBACiAKIGZpCiBybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IGNvbmZ0ZXN0LiRhY19leHQKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGVwb2xsX2NyZWF0ZTEiID4mNQorJGFzX2VjaG9fbiAiY2hlY2tpbmcgZm9yIGVwb2xsX2NyZWF0ZTEuLi4gIiA+JjY7IH0KK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKyNpbmNsdWRlIDxzeXMvZXBvbGwuaD4KK2ludAorbWFpbiAoKQorewordm9pZCAqeD1lcG9sbF9jcmVhdGUxCisgIDsKKyAgcmV0dXJuIDA7Cit9CitfQUNFT0YKK2lmIGFjX2ZuX2NfdHJ5X2NvbXBpbGUgIiRMSU5FTk8iOyB0aGVuIDoKKworJGFzX2VjaG8gIiNkZWZpbmUgSEFWRV9FUE9MTF9DUkVBVEUxIDEiID4+Y29uZmRlZnMuaAorCisgICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogeWVzIiA+JjUKKyRhc19lY2hvICJ5ZXMiID4mNjsgfQorZWxzZQorICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IHJlc3VsdDogbm8iID4mNQorJGFzX2VjaG8gIm5vIiA+JjY7IH0KKworZmkKK3JtIC1mIGNvcmUgY29uZnRlc3QuZXJyIGNvbmZ0ZXN0LiRhY19vYmpleHQgY29uZnRlc3QuJGFjX2V4dAogeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3Iga3F1ZXVlIiA+JjUKICRhc19lY2hvX24gImNoZWNraW5nIGZvciBrcXVldWUuLi4gIiA+JjY7IH0KIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKQEAgLTEwNTk2LDYgKzEwNjE1LDEyNSBAQAogZG9uZQogCiAKK2ZvciBhY19mdW5jIGluIGNsb2NrX2dldHRpbWUKK2RvIDoKKyAgYWNfZm5fY19jaGVja19mdW5jICIkTElORU5PIiAiY2xvY2tfZ2V0dGltZSIgImFjX2N2X2Z1bmNfY2xvY2tfZ2V0dGltZSIKK2lmIHRlc3QgIngkYWNfY3ZfZnVuY19jbG9ja19nZXR0aW1lIiA9IHh5ZXM7IHRoZW4gOgorICBjYXQgPj5jb25mZGVmcy5oIDw8X0FDRU9GCisjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxCitfQUNFT0YKKworZWxzZQorCisgICAgeyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBjaGVja2luZyBmb3IgY2xvY2tfZ2V0dGltZSBpbiAtbHJ0IiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBjbG9ja19nZXR0aW1lIGluIC1scnQuLi4gIiA+JjY7IH0KK2lmICR7YWNfY3ZfbGliX3J0X2Nsb2NrX2dldHRpbWUrOn0gZmFsc2U7IHRoZW4gOgorICAkYXNfZWNob19uICIoY2FjaGVkKSAiID4mNgorZWxzZQorICBhY19jaGVja19saWJfc2F2ZV9MSUJTPSRMSUJTCitMSUJTPSItbHJ0ICAkTElCUyIKK2NhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKKy8qIGVuZCBjb25mZGVmcy5oLiAgKi8KKworLyogT3ZlcnJpZGUgYW55IEdDQyBpbnRlcm5hbCBwcm90b3R5cGUgdG8gYXZvaWQgYW4gZXJyb3IuCisgICBVc2UgY2hhciBiZWNhdXNlIGludCBtaWdodCBtYXRjaCB0aGUgcmV0dXJuIHR5cGUgb2YgYSBHQ0MKKyAgIGJ1aWx0aW4gYW5kIHRoZW4gaXRzIGFyZ3VtZW50IHByb3RvdHlwZSB3b3VsZCBzdGlsbCBhcHBseS4gICovCisjaWZkZWYgX19jcGx1c3BsdXMKK2V4dGVybiAiQyIKKyNlbmRpZgorY2hhciBjbG9ja19nZXR0aW1lICgpOworaW50CittYWluICgpCit7CityZXR1cm4gY2xvY2tfZ2V0dGltZSAoKTsKKyAgOworICByZXR1cm4gMDsKK30KK19BQ0VPRgoraWYgYWNfZm5fY190cnlfbGluayAiJExJTkVOTyI7IHRoZW4gOgorICBhY19jdl9saWJfcnRfY2xvY2tfZ2V0dGltZT15ZXMKK2Vsc2UKKyAgYWNfY3ZfbGliX3J0X2Nsb2NrX2dldHRpbWU9bm8KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElCUworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfbGliX3J0X2Nsb2NrX2dldHRpbWUiID4mNQorJGFzX2VjaG8gIiRhY19jdl9saWJfcnRfY2xvY2tfZ2V0dGltZSIgPiY2OyB9CitpZiB0ZXN0ICJ4JGFjX2N2X2xpYl9ydF9jbG9ja19nZXR0aW1lIiA9IHh5ZXM7IHRoZW4gOgorCisgICAgICAgICRhc19lY2hvICIjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUVElNRSAxIiA+PmNvbmZkZWZzLmgKKworCiskYXNfZWNobyAiI2RlZmluZSBUSU1FTU9EVUxFX0xJQiBydCIgPj5jb25mZGVmcy5oCisKKworZmkKKworCitmaQorZG9uZQorCisKK2ZvciBhY19mdW5jIGluIGNsb2NrX2dldHJlcworZG8gOgorICBhY19mbl9jX2NoZWNrX2Z1bmMgIiRMSU5FTk8iICJjbG9ja19nZXRyZXMiICJhY19jdl9mdW5jX2Nsb2NrX2dldHJlcyIKK2lmIHRlc3QgIngkYWNfY3ZfZnVuY19jbG9ja19nZXRyZXMiID0geHllczsgdGhlbiA6CisgIGNhdCA+PmNvbmZkZWZzLmggPDxfQUNFT0YKKyNkZWZpbmUgSEFWRV9DTE9DS19HRVRSRVMgMQorX0FDRU9GCisKK2Vsc2UKKworICAgIHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogY2hlY2tpbmcgZm9yIGNsb2NrX2dldHJlcyBpbiAtbHJ0IiA+JjUKKyRhc19lY2hvX24gImNoZWNraW5nIGZvciBjbG9ja19nZXRyZXMgaW4gLWxydC4uLiAiID4mNjsgfQoraWYgJHthY19jdl9saWJfcnRfY2xvY2tfZ2V0cmVzKzp9IGZhbHNlOyB0aGVuIDoKKyAgJGFzX2VjaG9fbiAiKGNhY2hlZCkgIiA+JjYKK2Vsc2UKKyAgYWNfY2hlY2tfbGliX3NhdmVfTElCUz0kTElCUworTElCUz0iLWxydCAgJExJQlMiCitjYXQgY29uZmRlZnMuaCAtIDw8X0FDRU9GID5jb25mdGVzdC4kYWNfZXh0CisvKiBlbmQgY29uZmRlZnMuaC4gICovCisKKy8qIE92ZXJyaWRlIGFueSBHQ0MgaW50ZXJuYWwgcHJvdG90eXBlIHRvIGF2b2lkIGFuIGVycm9yLgorICAgVXNlIGNoYXIgYmVjYXVzZSBpbnQgbWlnaHQgbWF0Y2ggdGhlIHJldHVybiB0eXBlIG9mIGEgR0NDCisgICBidWlsdGluIGFuZCB0aGVuIGl0cyBhcmd1bWVudCBwcm90b3R5cGUgd291bGQgc3RpbGwgYXBwbHkuICAqLworI2lmZGVmIF9fY3BsdXNwbHVzCitleHRlcm4gIkMiCisjZW5kaWYKK2NoYXIgY2xvY2tfZ2V0cmVzICgpOworaW50CittYWluICgpCit7CityZXR1cm4gY2xvY2tfZ2V0cmVzICgpOworICA7CisgIHJldHVybiAwOworfQorX0FDRU9GCitpZiBhY19mbl9jX3RyeV9saW5rICIkTElORU5PIjsgdGhlbiA6CisgIGFjX2N2X2xpYl9ydF9jbG9ja19nZXRyZXM9eWVzCitlbHNlCisgIGFjX2N2X2xpYl9ydF9jbG9ja19nZXRyZXM9bm8KK2ZpCitybSAtZiBjb3JlIGNvbmZ0ZXN0LmVyciBjb25mdGVzdC4kYWNfb2JqZXh0IFwKKyAgICBjb25mdGVzdCRhY19leGVleHQgY29uZnRlc3QuJGFjX2V4dAorTElCUz0kYWNfY2hlY2tfbGliX3NhdmVfTElCUworZmkKK3sgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0kTElORU5PfTogcmVzdWx0OiAkYWNfY3ZfbGliX3J0X2Nsb2NrX2dldHJlcyIgPiY1CiskYXNfZWNobyAiJGFjX2N2X2xpYl9ydF9jbG9ja19nZXRyZXMiID4mNjsgfQoraWYgdGVzdCAieCRhY19jdl9saWJfcnRfY2xvY2tfZ2V0cmVzIiA9IHh5ZXM7IHRoZW4gOgorCisgICAgICAgICRhc19lY2hvICIjZGVmaW5lIEhBVkVfQ0xPQ0tfR0VUUkVTIDEiID4+Y29uZmRlZnMuaAorCisKK2ZpCisKKworZmkKK2RvbmUKKworCiB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIGZvciBtYWpvciIgPiY1CiAkYXNfZWNob19uICJjaGVja2luZyBmb3IgbWFqb3IuLi4gIiA+JjY7IH0KIGNhdCBjb25mZGVmcy5oIC0gPDxfQUNFT0YgPmNvbmZ0ZXN0LiRhY19leHQKQEAgLTEyMDAwLDcgKzEyMTM4LDcgQEAKIGZpCiBkb25lCiAKLWZvciBhY19mdW5jIGluIGh5cG90IGxnYW1tYSBsb2cxcCByb3VuZCB0Z2FtbWEKK2ZvciBhY19mdW5jIGluIGh5cG90IGxnYW1tYSBsb2cxcCBsb2cyIHJvdW5kIHRnYW1tYQogZG8gOgogICBhc19hY192YXI9YCRhc19lY2hvICJhY19jdl9mdW5jXyRhY19mdW5jIiB8ICRhc190cl9zaGAKIGFjX2ZuX2NfY2hlY2tfZnVuYyAiJExJTkVOTyIgIiRhY19mdW5jIiAiJGFzX2FjX3ZhciIKQEAgLTEyNDA3LDY1ICsxMjU0NSwxOSBAQAogJGFzX2VjaG8gIiRhY19jdl93Y2hhcl90X3NpZ25lZCIgPiY2OyB9CiBmaQogCi17ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHdoYXQgdHlwZSB0byB1c2UgZm9yIHN0ciIgPiY1Ci0kYXNfZWNob19uICJjaGVja2luZyB3aGF0IHR5cGUgdG8gdXNlIGZvciBzdHIuLi4gIiA+JjY7IH0KLQotIyBDaGVjayB3aGV0aGVyIC0td2l0aC13aWRlLXVuaWNvZGUgd2FzIGdpdmVuLgotaWYgdGVzdCAiJHt3aXRoX3dpZGVfdW5pY29kZStzZXR9IiA9IHNldDsgdGhlbiA6Ci0gIHdpdGh2YWw9JHdpdGhfd2lkZV91bmljb2RlOwotaWYgdGVzdCAiJHdpdGh2YWwiICE9IG5vCi10aGVuIHVuaWNvZGVfc2l6ZT0iNCIKLWVsc2UgdW5pY29kZV9zaXplPSIyIgotZmkKLQotZWxzZQotCi1jYXNlICIkaGF2ZV91Y3M0X3RjbCIgaW4KLSAgeWVzKSB1bmljb2RlX3NpemU9IjQiOzsKLSAgKikgICB1bmljb2RlX3NpemU9IjIiIDs7Ci1lc2FjCi0KLWZpCi0KLQotCi1jYXNlICIkdW5pY29kZV9zaXplIiBpbgotICA0KQotICAgICAkYXNfZWNobyAiI2RlZmluZSBQeV9VTklDT0RFX1NJWkUgNCIgPj5jb25mZGVmcy5oCi0KLSAgICAgQUJJRkxBR1M9IiR7QUJJRkxBR1N9dSIKLSAgICAgOzsKLSAgKikgJGFzX2VjaG8gIiNkZWZpbmUgUHlfVU5JQ09ERV9TSVpFIDIiID4+Y29uZmRlZnMuaAotIDs7Ci1lc2FjCi0KLQotCiAjIHdjaGFyX3QgaXMgb25seSB1c2FibGUgaWYgaXQgbWFwcyB0byBhbiB1bnNpZ25lZCB0eXBlCi1pZiB0ZXN0ICIkdW5pY29kZV9zaXplIiA9ICIkYWNfY3Zfc2l6ZW9mX3djaGFyX3QiIFwKK2lmIHRlc3QgIiRhY19jdl9zaXplb2Zfd2NoYXJfdCIgLWdlIDIgXAogICAgICAgICAgIC1hICIkYWNfY3Zfd2NoYXJfdF9zaWduZWQiID0gIm5vIgogdGhlbgotICBQWV9VTklDT0RFX1RZUEU9IndjaGFyX3QiCisgIEhBVkVfVVNBQkxFX1dDSEFSX1Q9InllcyIKIAogJGFzX2VjaG8gIiNkZWZpbmUgSEFWRV9VU0FCTEVfV0NIQVJfVCAxIiA+PmNvbmZkZWZzLmgKIAotICAkYXNfZWNobyAiI2RlZmluZSBQWV9VTklDT0RFX1RZUEUgd2NoYXJfdCIgPj5jb25mZGVmcy5oCi0KLWVsaWYgdGVzdCAiJGFjX2N2X3NpemVvZl9zaG9ydCIgPSAiJHVuaWNvZGVfc2l6ZSIKLXRoZW4KLSAgICAgUFlfVU5JQ09ERV9UWVBFPSJ1bnNpZ25lZCBzaG9ydCIKLSAgICAgJGFzX2VjaG8gIiNkZWZpbmUgUFlfVU5JQ09ERV9UWVBFIHVuc2lnbmVkIHNob3J0IiA+PmNvbmZkZWZzLmgKLQotZWxpZiB0ZXN0ICIkYWNfY3Zfc2l6ZW9mX2xvbmciID0gIiR1bmljb2RlX3NpemUiCi10aGVuCi0gICAgIFBZX1VOSUNPREVfVFlQRT0idW5zaWduZWQgbG9uZyIKLSAgICAgJGFzX2VjaG8gIiNkZWZpbmUgUFlfVU5JQ09ERV9UWVBFIHVuc2lnbmVkIGxvbmciID4+Y29uZmRlZnMuaAotCiBlbHNlCi0gICAgIFBZX1VOSUNPREVfVFlQRT0ibm8gdHlwZSBmb3VuZCIKKyAgSEFWRV9VU0FCTEVfV0NIQVJfVD0ibm8gdXNhYmxlIHdjaGFyX3QgZm91bmQiCiBmaQoteyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRQWV9VTklDT0RFX1RZUEUiID4mNQotJGFzX2VjaG8gIiRQWV9VTklDT0RFX1RZUEUiID4mNjsgfQoreyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiByZXN1bHQ6ICRIQVZFX1VTQUJMRV9XQ0hBUl9UIiA+JjUKKyRhc19lY2hvICIkSEFWRV9VU0FCTEVfV0NIQVJfVCIgPiY2OyB9CiAKICMgY2hlY2sgZm9yIGVuZGlhbm5lc3MKICB7ICRhc19lY2hvICIkYXNfbWU6JHthc19saW5lbm8tJExJTkVOT306IGNoZWNraW5nIHdoZXRoZXIgYnl0ZSBvcmRlcmluZyBpcyBiaWdlbmRpYW4iID4mNQpAQCAtMTM5MzksMTggKzE0MDMxLDYgQEAKIGVzYWMKIAogCi1jYXNlICRhY19zeXNfc3lzdGVtIGluCi0gIE9TRiopIGFzX2ZuX2Vycm9yICQ/ICJPU0YqIHN5c3RlbXMgYXJlIGRlcHJlY2F0ZWQgdW5sZXNzIHNvbWVib2R5IHZvbHVudGVlcnMuIENoZWNrIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvaXNzdWU4NjA2IiAiJExJTkVOTyIgNSA7OwotZXNhYwotCi1hY19mbl9jX2NoZWNrX2Z1bmMgIiRMSU5FTk8iICJwaXBlMiIgImFjX2N2X2Z1bmNfcGlwZTIiCi1pZiB0ZXN0ICJ4JGFjX2N2X2Z1bmNfcGlwZTIiID0geHllczsgdGhlbiA6Ci0KLSRhc19lY2hvICIjZGVmaW5lIEhBVkVfUElQRTIgMSIgPj5jb25mZGVmcy5oCi0KLWZpCi0KLQogCiAKIGZvciBoIGluIGAoY2QgJHNyY2RpcjtlY2hvIFB5dGhvbi90aHJlYWRfKi5oKWAKQEAgLTE0NDk0LDcgKzE0NTc0LDcgQEAKICMgcmVwb3J0IGFjdHVhbCBpbnB1dCB2YWx1ZXMgb2YgQ09ORklHX0ZJTEVTIGV0Yy4gaW5zdGVhZCBvZiB0aGVpcgogIyB2YWx1ZXMgYWZ0ZXIgb3B0aW9ucyBoYW5kbGluZy4KIGFjX2xvZz0iCi1UaGlzIGZpbGUgd2FzIGV4dGVuZGVkIGJ5IHB5dGhvbiAkYXNfbWUgMy4yLCB3aGljaCB3YXMKK1RoaXMgZmlsZSB3YXMgZXh0ZW5kZWQgYnkgcHl0aG9uICRhc19tZSAzLjMsIHdoaWNoIHdhcwogZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAyLjY4LiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUgd2FzCiAKICAgQ09ORklHX0ZJTEVTICAgID0gJENPTkZJR19GSUxFUwpAQCAtMTQ1NTYsNyArMTQ2MzYsNyBAQAogY2F0ID4+JENPTkZJR19TVEFUVVMgPDxfQUNFT0YgfHwgYWNfd3JpdGVfZmFpbD0xCiBhY19jc19jb25maWc9ImAkYXNfZWNobyAiJGFjX2NvbmZpZ3VyZV9hcmdzIiB8IHNlZCAncy9eIC8vOyBzL1tcXCIiXGBcJF0vXFxcXCYvZydgIgogYWNfY3NfdmVyc2lvbj0iXFwKLXB5dGhvbiBjb25maWcuc3RhdHVzIDMuMgorcHl0aG9uIGNvbmZpZy5zdGF0dXMgMy4zCiBjb25maWd1cmVkIGJ5ICQwLCBnZW5lcmF0ZWQgYnkgR05VIEF1dG9jb25mIDIuNjgsCiAgIHdpdGggb3B0aW9ucyBcXCJcJGFjX2NzX2NvbmZpZ1xcIgogCmRpZmYgLS1naXQgYS9jb25maWd1cmUuaW4gYi9jb25maWd1cmUuaW4KaW5kZXggMTM4ZDU2Mi4uZjBiZWI2YiAxMDA2NDQKLS0tIGEvY29uZmlndXJlLmluCisrKyBiL2NvbmZpZ3VyZS5pbgpAQCAtMywxOSArMywzMyBAQAogZG5sICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAKICMgU2V0IFZFUlNJT04gc28gd2Ugb25seSBuZWVkIHRvIGVkaXQgaW4gb25lIHBsYWNlIChpLmUuLCBoZXJlKQotbTRfZGVmaW5lKFBZVEhPTl9WRVJTSU9OLCAzLjIpCittNF9kZWZpbmUoUFlUSE9OX1ZFUlNJT04sIDMuMykKIAotZG5sIFNvbWUgbTQgbWFnaWMgdG8gZW5zdXJlIHRoYXQgdGhlIGNvbmZpZ3VyZSBzY3JpcHQgaXMgZ2VuZXJhdGVkCi1kbmwgYnkgdGhlIGNvcnJlY3QgYXV0b2NvbmYgdmVyc2lvbi4KLW00X2RlZmluZShbdmVyc2lvbl9yZXF1aXJlZF0sCi1bbTRfaWYobTRfdmVyc2lvbl9jb21wYXJlKG00X2RlZm4oW200X1BBQ0tBR0VfVkVSU0lPTl0pLCBbJDFdKSwgMCwKLSAgICAgICBbXSwKLSAgICAgICBbbTRfZmF0YWwoW0F1dG9jb25mIHZlcnNpb24gJDEgaXMgcmVxdWlyZWQgZm9yIFB5dGhvbl0sIDYzKV0pCi1dKQogQUNfUFJFUkVRKDIuNjUpCiAKLUFDX1JFVklTSU9OKCRSZXZpc2lvbiQpCiBBQ19JTklUKHB5dGhvbiwgUFlUSE9OX1ZFUlNJT04sIGh0dHA6Ly9idWdzLnB5dGhvbi5vcmcvKQorCitBQ19TVUJTVChIR1ZFUlNJT04pCitBQ19TVUJTVChIR1RBRykKK0FDX1NVQlNUKEhHQlJBTkNIKQorCitpZiB0ZXN0IC1lICRzcmNkaXIvLmhnL2RpcnN0YXRlCit0aGVuCitBQ19DSEVDS19QUk9HKEhBU19IRywgaGcsIGZvdW5kLCBub3QtZm91bmQpCitlbHNlCitIQVNfSEc9bm8tcmVwb3NpdG9yeQorZmkKK2lmIHRlc3QgJEhBU19IRyA9IGZvdW5kCit0aGVuCisgICAgSEdWRVJTSU9OPSJoZyBpZCAtaSBcJChzcmNkaXIpIgorICAgIEhHVEFHPSJoZyBpZCAtdCBcJChzcmNkaXIpIgorICAgIEhHQlJBTkNIPSJoZyBpZCAtYiBcJChzcmNkaXIpIgorZWxzZQorICAgIEhHVkVSU0lPTj0iIgorICAgIEhHVEFHPSIiCisgICAgSEdCUkFOQ0g9IiIKK2ZpCisKIEFDX0NPTkZJR19TUkNESVIoW0luY2x1ZGUvb2JqZWN0LmhdKQogQUNfQ09ORklHX0hFQURFUihweWNvbmZpZy5oKQogCkBAIC0yOTAsNyArMzA0LDcgQEAKIAlNQUNIREVQPSIkYWNfbWRfc3lzdGVtJGFjX21kX3JlbGVhc2UiCiAKIAljYXNlICRNQUNIREVQIGluCi0JbGludXgqKSBNQUNIREVQPSJsaW51eDIiOzsKKwlsaW51eCopIE1BQ0hERVA9ImxpbnV4Ijs7CiAJY3lnd2luKikgTUFDSERFUD0iY3lnd2luIjs7CiAJZGFyd2luKikgTUFDSERFUD0iZGFyd2luIjs7CiAgICAgICAgIGlyaXg2NDYpIE1BQ0hERVA9ImlyaXg2Ijs7CkBAIC0zODMsNyArMzk3LDggQEAKIAogaWYgdGVzdCAkZGVmaW5lX3hvcGVuX3NvdXJjZSA9IHllcwogdGhlbgotICBBQ19ERUZJTkUoX1hPUEVOX1NPVVJDRSwgNjAwLCAKKyAgIyBYL09wZW4gNywgaW5jb3Jwb3JhdGluZyBQT1NJWC4xLTIwMDgKKyAgQUNfREVGSU5FKF9YT1BFTl9TT1VSQ0UsIDcwMCwKICAgICAgICAgICAgIERlZmluZSB0byB0aGUgbGV2ZWwgb2YgWC9PcGVuIHRoYXQgeW91ciBzeXN0ZW0gc3VwcG9ydHMpCiAKICAgIyBPbiBUcnU2NCBVbml4IDQuMEYsIGRlZmluaW5nIF9YT1BFTl9TT1VSQ0UgYWxzbyByZXF1aXJlcwpAQCAtMzkzLDggKzQwOCw3IEBACiAgIEFDX0RFRklORShfWE9QRU5fU09VUkNFX0VYVEVOREVELCAxLAogICAgCSAgICBEZWZpbmUgdG8gYWN0aXZhdGUgVW5peDk1LWFuZC1lYXJsaWVyIGZlYXR1cmVzKQogCi0gIEFDX0RFRklORShfUE9TSVhfQ19TT1VSQ0UsIDIwMDExMkwsIERlZmluZSB0byBhY3RpdmF0ZSBmZWF0dXJlcyBmcm9tIElFRUUgU3RkcyAxMDAzLjEtMjAwMSkKLSAgCisgIEFDX0RFRklORShfUE9TSVhfQ19TT1VSQ0UsIDIwMDgwOUwsIERlZmluZSB0byBhY3RpdmF0ZSBmZWF0dXJlcyBmcm9tIElFRUUgU3RkcyAxMDAzLjEtMjAwOCkKIGZpCiAKICMKQEAgLTc4MywxMSArNzk3LDYgQEAKIAkgIEJMRExJQlJBUlk9Jy1XbCwrYiwkKExJQkRJUikgLUwuIC1scHl0aG9uJChMRFZFUlNJT04pJwogCSAgUlVOU0hBUkVEPVNITElCX1BBVEg9YHB3ZGA6JHtTSExJQl9QQVRIfQogCSAgOzsKLSAgICBPU0YqKQotCSAgTERMSUJSQVJZPSdsaWJweXRob24kKExEVkVSU0lPTikuc28nCi0JICBCTERMSUJSQVJZPSctcnBhdGggJChMSUJESVIpIC1MLiAtbHB5dGhvbiQoTERWRVJTSU9OKScKLQkgIFJVTlNIQVJFRD1MRF9MSUJSQVJZX1BBVEg9YHB3ZGA6JHtMRF9MSUJSQVJZX1BBVEh9Ci0JICA7OwogICAgIERhcndpbiopCiAgICAgCUxETElCUkFSWT0nbGlicHl0aG9uJChMRFZFUlNJT04pLmR5bGliJwogCUJMRExJQlJBUlk9Jy1MLiAtbHB5dGhvbiQoTERWRVJTSU9OKScKQEAgLTgyMSwzNiArODMwLDYgQEAKICAgICAgICAgQVJGTEFHUz0icmMiCiBmaQogCi1BQ19TVUJTVChTVk5WRVJTSU9OKQotQUNfQ0hFQ0tfUFJPRyhTVk5WRVJTSU9OLCBzdm52ZXJzaW9uLCBmb3VuZCwgbm90LWZvdW5kKQotaWYgdGVzdCAkU1ZOVkVSU0lPTiA9IGZvdW5kCi10aGVuCi0JU1ZOVkVSU0lPTj0ic3ZudmVyc2lvbiBcJChzcmNkaXIpIgotZWxzZQotCVNWTlZFUlNJT049ImVjaG8gVW52ZXJzaW9uZWQgZGlyZWN0b3J5IgotZmkKLQotQUNfU1VCU1QoSEdWRVJTSU9OKQotQUNfU1VCU1QoSEdUQUcpCi1BQ19TVUJTVChIR0JSQU5DSCkKLQotaWYgdGVzdCAtZSAkc3JjZGlyLy5oZy9kaXJzdGF0ZQotdGhlbgotQUNfQ0hFQ0tfUFJPRyhIQVNfSEcsIGhnLCBmb3VuZCwgbm90LWZvdW5kKQotZWxzZQotSEFTX0hHPW5vLXJlcG9zaXRvcnkKLWZpCi1pZiB0ZXN0ICRIQVNfSEcgPSBmb3VuZAotdGhlbgotICAgIEhHVkVSU0lPTj0iaGcgaWQgLWkgXCQoc3JjZGlyKSIKLSAgICBIR1RBRz0iaGcgaWQgLXQgXCQoc3JjZGlyKSIKLSAgICBIR0JSQU5DSD0iaGcgaWQgLWIgXCQoc3JjZGlyKSIKLWVsc2UKLSAgICBIR1ZFUlNJT049IiIKLSAgICBIR1RBRz0iIgotICAgIEhHQlJBTkNIPSIiCi1maQotCiBBQ19TVUJTVChESVNBQkxFX0FTRExHRU4pCiBESVNBQkxFX0FTRExHRU49IiIKIEFDX0NIRUNLX1BST0coSEFTX1BZVEhPTiwgcHl0aG9uLCBmb3VuZCwgbm90LWZvdW5kKQpAQCAtMTAwMyw2ICs5ODIsMjggQEAKICAgICAgIEJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1mbm8tc3RyaWN0LWFsaWFzaW5nIgogICAgIGZpCiAKKyAgICBBQ19NU0dfQ0hFQ0tJTkcoaWYgd2UgY2FuIHR1cm4gb2ZmICRDQyB1bnVzZWQgcmVzdWx0IHdhcm5pbmcpCisgICAgIGFjX3NhdmVfY2M9IiRDQyIKKyAgICAgQ0M9IiRDQyAtV3VudXNlZC1yZXN1bHQgLVdlcnJvciIKKyAgICAgc2F2ZV9DRkxBR1M9IiRDRkxBR1MiCisgICAgIEFDX0NBQ0hFX1ZBTChhY19jdl9kaXNhYmxlX3VudXNlZF9yZXN1bHRfd2FybmluZywKKyAgICAgICBBQ19DT01QSUxFX0lGRUxTRSgKKyAgICAgICAgIFsKKwkgICBBQ19MQU5HX1BST0dSQU0oW1tdXSwgW1tdXSkKKwkgXSxbCisgICAgICAgICAgIGFjX2N2X2Rpc2FibGVfdW51c2VkX3Jlc3VsdF93YXJuaW5nPXllcworCSBdLFsKKyAgICAgICAgICAgYWNfY3ZfZGlzYWJsZV91bnVzZWRfcmVzdWx0X3dhcm5pbmc9bm8KKwkgXSkpCisgICAgIENGTEFHUz0iJHNhdmVfQ0ZMQUdTIgorICAgICBDQz0iJGFjX3NhdmVfY2MiCisgICAgQUNfTVNHX1JFU1VMVCgkYWNfY3ZfZGlzYWJsZV91bnVzZWRfcmVzdWx0X3dhcm5pbmcpCisKKyAgICBpZiB0ZXN0ICRhY19jdl9kaXNhYmxlX3VudXNlZF9yZXN1bHRfd2FybmluZyA9IHllcworICAgIHRoZW4KKyAgICAgIEJBU0VDRkxBR1M9IiRCQVNFQ0ZMQUdTIC1Xbm8tdW51c2VkLXJlc3VsdCIKKyAgICBmaQorCiAgICAgIyBpZiB1c2luZyBnY2Mgb24gYWxwaGEsIHVzZSAtbWllZWUgdG8gZ2V0IChuZWFyKSBmdWxsIElFRUUgNzU0CiAgICAgIyBzdXBwb3J0LiAgV2l0aG91dCB0aGlzLCB0cmVhdG1lbnQgb2Ygc3Vibm9ybWFscyBkb2Vzbid0IGZvbGxvdwogICAgICMgdGhlIHN0YW5kYXJkLgpAQCAtMTExOSw5ICsxMTIwLDYgQEAKIAkgICAgRVhQT1JUX01BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVD0nJwogCiAJICAgIDs7Ci0JT1NGKikKLQkgICAgQkFTRUNGTEFHUz0iJEJBU0VDRkxBR1MgLW1pZWVlIgotCSAgICA7OwogICAgIGVzYWMKICAgICA7OwogCkBAIC0xMTMwLDkgKzExMjgsNiBAQAogICAgIE9wZW5VTklYKnxVbml4V2FyZSopCiAJQkFTRUNGTEFHUz0iJEJBU0VDRkxBR1MgLUsgcGVudGl1bSxob3N0LGlubGluZSxsb29wX3Vucm9sbCxhbGxvY2EgIgogCTs7Ci0gICAgT1NGKikKLQlCQVNFQ0ZMQUdTPSIkQkFTRUNGTEFHUyAtaWVlZSAtc3RkIgotICAgIAk7OwogICAgIFNDT19TViopCiAJQkFTRUNGTEFHUz0iJEJBU0VDRkxBR1MgLWJlbGYgLUtpNDg2IC1EU0NPNSIKIAk7OwpAQCAtMTMzNSwxOSArMTMzMCwzNyBAQAogQUNfSEVBREVSX1NUREMKIEFDX0NIRUNLX0hFQURFUlMoYXNtL3R5cGVzLmggY29uaW8uaCBjdXJzZXMuaCBkaXJlY3QuaCBkbGZjbi5oIGVycm5vLmggXAogZmNudGwuaCBncnAuaCBcCi1pZWVlZnAuaCBpby5oIGxhbmdpbmZvLmggbGliaW50bC5oIG5jdXJzZXMuaCBwb2xsLmggcHJvY2Vzcy5oIHB0aHJlYWQuaCBcCi1zaGFkb3cuaCBzaWduYWwuaCBzdGRpbnQuaCBzdHJvcHRzLmggdGVybWlvcy5oIHRocmVhZC5oIFwKK2llZWVmcC5oIGlvLmggbGFuZ2luZm8uaCBsaWJpbnRsLmggbmN1cnNlcy5oIHByb2Nlc3MuaCBwdGhyZWFkLmggXAorc2NoZWQuaCBzaGFkb3cuaCBzaWduYWwuaCBzdGRpbnQuaCBzdHJvcHRzLmggdGVybWlvcy5oIFwKIHVuaXN0ZC5oIHV0aW1lLmggXAotc3lzL2F1ZGlvaW8uaCBzeXMvYnNkdHR5Lmggc3lzL2Vwb2xsLmggc3lzL2V2ZW50Lmggc3lzL2ZpbGUuaCBzeXMvbG9hZGF2Zy5oIFwKK3BvbGwuaCBzeXMvZGV2cG9sbC5oIHN5cy9lcG9sbC5oIHN5cy9wb2xsLmggXAorc3lzL2F1ZGlvaW8uaCBzeXMveGF0dHIuaCBzeXMvYnNkdHR5Lmggc3lzL2V2ZW50Lmggc3lzL2ZpbGUuaCBzeXMvbG9hZGF2Zy5oIFwKIHN5cy9sb2NrLmggc3lzL21rZGV2Lmggc3lzL21vZGVtLmggXAotc3lzL3BhcmFtLmggc3lzL3BvbGwuaCBzeXMvc2VsZWN0Lmggc3lzL3NvY2tldC5oIHN5cy9zdGF0dmZzLmggc3lzL3N0YXQuaCBcCi1zeXMvc3lzY2FsbC5oIHN5cy90ZXJtaW8uaCBzeXMvdGltZS5oIFwKLXN5cy90aW1lcy5oIHN5cy90eXBlcy5oIHN5cy91bi5oIHN5cy91dHNuYW1lLmggc3lzL3dhaXQuaCBwdHkuaCBsaWJ1dGlsLmggXAotc3lzL3Jlc291cmNlLmggbmV0cGFja2V0L3BhY2tldC5oIHN5c2V4aXRzLmggYmx1ZXRvb3RoLmggXAorc3lzL3BhcmFtLmggc3lzL3NlbGVjdC5oIHN5cy9zZW5kZmlsZS5oIHN5cy9zb2NrZXQuaCBzeXMvc3RhdHZmcy5oIFwKK3N5cy9zdGF0Lmggc3lzL3N5c2NhbGwuaCBzeXMvdGVybWlvLmggc3lzL3RpbWUuaCBcCitzeXMvdGltZXMuaCBzeXMvdHlwZXMuaCBzeXMvdWlvLmggc3lzL3VuLmggc3lzL3V0c25hbWUuaCBzeXMvd2FpdC5oIHB0eS5oIFwKK2xpYnV0aWwuaCBzeXMvcmVzb3VyY2UuaCBuZXRwYWNrZXQvcGFja2V0Lmggc3lzZXhpdHMuaCBibHVldG9vdGguaCBcCiBibHVldG9vdGgvYmx1ZXRvb3RoLmggbGludXgvdGlwYy5oIHNwYXduLmggdXRpbC5oKQogQUNfSEVBREVSX0RJUkVOVAogQUNfSEVBREVSX01BSk9SCiAKKyMgT24gRGFyd2luIChPUyBYKSBuZXQvaWYuaCByZXF1aXJlcyBzeXMvc29ja2V0LmggdG8gYmUgaW1wb3J0ZWQgZmlyc3QuCitBQ19DSEVDS19IRUFERVJTKFtuZXQvaWYuaF0sIFtdLCBbXSwKK1sjaW5jbHVkZSA8c3RkaW8uaD4KKyNpZmRlZiBTVERDX0hFQURFUlMKKyMgaW5jbHVkZSA8c3RkbGliLmg+CisjIGluY2x1ZGUgPHN0ZGRlZi5oPgorI2Vsc2UKKyMgaWZkZWYgSEFWRV9TVERMSUJfSAorIyAgaW5jbHVkZSA8c3RkbGliLmg+CisjIGVuZGlmCisjZW5kaWYKKyNpZmRlZiBIQVZFX1NZU19TT0NLRVRfSAorIyBpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CisjZW5kaWYKK10pCisKKwogIyBPbiBTb2xhcmlzLCB0ZXJtLmggcmVxdWlyZXMgY3Vyc2VzLmgKIEFDX0NIRUNLX0hFQURFUlModGVybS5oLCwsWwogI2lmZGVmIEhBVkVfQ1VSU0VTX0gKQEAgLTEzNjUsNiArMTM3OCwxMyBAQAogI2VuZGlmCiBdKQogCisjIE9uIExpbnV4LCBjYW4uaCBhbmQgY2FuL3Jhdy5oIHJlcXVpcmUgc3lzL3NvY2tldC5oCitBQ19DSEVDS19IRUFERVJTKGxpbnV4L2Nhbi5oIGxpbnV4L2Nhbi9yYXcuaCwsLFsKKyNpZmRlZiBIQVZFX1NZU19TT0NLRVRfSAorI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KKyNlbmRpZgorXSkKKwogIyBjaGVja3MgZm9yIHR5cGVkZWZzCiB3YXNfaXRfZGVmaW5lZD1ubwogQUNfTVNHX0NIRUNLSU5HKGZvciBjbG9ja190IGluIHRpbWUuaCkKQEAgLTEzNzMsNyArMTM5Myw2IEBACiBdKQogQUNfTVNHX1JFU1VMVCgkd2FzX2l0X2RlZmluZWQpCiAKLSMgQ2hlY2sgd2hldGhlciB1c2luZyBtYWtlZGV2IHJlcXVpcmVzIGRlZmluaW5nIF9PU0ZfU09VUkNFCiBBQ19NU0dfQ0hFQ0tJTkcoZm9yIG1ha2VkZXYpCiBBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCiAjaWYgZGVmaW5lZChNQUpPUl9JTl9NS0RFVikKQEAgLTEzODYsMTkgKzE0MDUsNiBAQAogXV0sIFtbCiAgIG1ha2VkZXYoMCwgMCkgXV0pCiBdLFthY19jdl9oYXNfbWFrZWRldj15ZXNdLFthY19jdl9oYXNfbWFrZWRldj1ub10pCi1pZiB0ZXN0ICIkYWNfY3ZfaGFzX21ha2VkZXYiID0gIm5vIjsgdGhlbgotICAgICMgd2UgZGlkbid0IGxpbmssIHRyeSBpZiBfT1NGX1NPVVJDRSB3aWxsIGFsbG93IHVzIHRvIGxpbmsKLSAgICBBQ19MSU5LX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbCi0jZGVmaW5lIF9PU0ZfU09VUkNFIDEKLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSAgICBdXSwKLSAgICBbWyBtYWtlZGV2KDAsIDApIF1dKV0sCi0gICAgW2FjX2N2X2hhc19tYWtlZGV2PXllc10sCi0gICAgW2FjX2N2X2hhc19tYWtlZGV2PW5vXSkKLSAgICBpZiB0ZXN0ICIkYWNfY3ZfaGFzX21ha2VkZXYiID0gInllcyI7IHRoZW4KLSAgICAgICAgQUNfREVGSU5FKF9PU0ZfU09VUkNFLCAxLCBbRGVmaW5lIF9PU0ZfU09VUkNFIHRvIGdldCB0aGUgbWFrZWRldiBtYWNyby5dKQotICAgIGZpCi1maQogQUNfTVNHX1JFU1VMVCgkYWNfY3ZfaGFzX21ha2VkZXYpCiBpZiB0ZXN0ICIkYWNfY3ZfaGFzX21ha2VkZXYiID0gInllcyI7IHRoZW4KICAgICBBQ19ERUZJTkUoSEFWRV9NQUtFREVWLCAxLCBbRGVmaW5lIHRoaXMgaWYgeW91IGhhdmUgdGhlIG1ha2VkZXYgbWFjcm8uXSkKQEAgLTE3MTgsNyArMTcyNCw2IEBACiAJCWVsc2UKIAkJCUxEU0hBUkVEPSdsZCAtYicKIAkJZmkgOzsKLQlPU0YqKSBMRFNIQVJFRD0ibGQgLXNoYXJlZCAtZXhwZWN0X3VucmVzb2x2ZWQgXCIqXCIiOzsKIAlEYXJ3aW4vMS4zKikKIAkJTERTSEFSRUQ9JyQoQ0MpIC1idW5kbGUnCiAJCUxEQ1hYU0hBUkVEPSckKENYWCkgLWJ1bmRsZScKQEAgLTE5NDgsNiArMTk1Myw3IEBACiAKIAogIyBjaGVja3MgZm9yIGxpYnJhcmllcworQUNfQ0hFQ0tfTElCKHNlbmRmaWxlLCBzZW5kZmlsZSkKIEFDX0NIRUNLX0xJQihkbCwgZGxvcGVuKQkjIER5bmFtaWMgbGlua2luZyBmb3IgU3VuT1MvU29sYXJpcyBhbmQgU1lTVgogQUNfQ0hFQ0tfTElCKGRsZCwgc2hsX2xvYWQpCSMgRHluYW1pYyBsaW5raW5nIGZvciBIUC1VWAogCkBAIC0yMDcyLDIxICsyMDc4LDEwIEBACiBBQ19TVUJTVChVU0VfVEhSRUFEX01PRFVMRSkKIFVTRV9USFJFQURfTU9EVUxFPSIiCiAKLUFDX01TR19DSEVDS0lORyhmb3IgLS13aXRoLWRlYy10aHJlYWRzKQogQUNfU1VCU1QoTERMQVNUKQotQUNfQVJHX1dJVEgoZGVjLXRocmVhZHMsCi0gICAgICAgICAgICBBU19IRUxQX1NUUklORyhbLS13aXRoLWRlYy10aHJlYWRzXSwgW3VzZSBERUMgQWxwaGEvT1NGMSB0aHJlYWQtc2FmZSBsaWJyYXJpZXNdKSwKLVsKLUFDX01TR19SRVNVTFQoJHdpdGh2YWwpCi1MRExBU1Q9LXRocmVhZHMKLWlmIHRlc3QgIiR7d2l0aF90aHJlYWQrc2V0fSIgIT0gc2V0OyB0aGVuCi0gICB3aXRoX3RocmVhZD0iJHdpdGh2YWwiOwotZmldLAotW0FDX01TR19SRVNVTFQobm8pXSkKIAogIyBUZW1wbGF0ZXMgZm9yIHRoaW5ncyBBQ19ERUZJTkVkIG1vcmUgdGhhbiBvbmNlLgogIyBGb3IgYSBzaW5nbGUgQUNfREVGSU5FLCBubyB0ZW1wbGF0ZSBpcyBuZWVkZWQuCi1BSF9URU1QTEFURShDX1RIUkVBRFMsW0RlZmluZSBpZiB5b3UgaGF2ZSB0aGUgTWFjaCBjdGhyZWFkcyBwYWNrYWdlXSkKIEFIX1RFTVBMQVRFKF9SRUVOVFJBTlQsCiAgIFtEZWZpbmUgdG8gZm9yY2UgdXNlIG9mIHRocmVhZC1zYWZlIGVycm5vLCBoX2Vycm5vLCBhbmQgb3RoZXIgZnVuY3Rpb25zXSkKIEFIX1RFTVBMQVRFKFdJVEhfVEhSRUFELApAQCAtMjE2OCwxNyArMjE2Myw2IEBACiAgICAgQUNfTVNHX1JFU1VMVCgkdW5pc3RkX2RlZmluZXNfcHRocmVhZHMpCiAKICAgICBBQ19ERUZJTkUoX1JFRU5UUkFOVCkKLSAgICBBQ19DSEVDS19IRUFERVIoY3RocmVhZHMuaCwgW0FDX0RFRklORShXSVRIX1RIUkVBRCkKLSAgICBBQ19ERUZJTkUoQ19USFJFQURTKQotICAgIEFDX0RFRklORShIVVJEX0NfVEhSRUFEUywgMSwKLSAgICBbRGVmaW5lIGlmIHlvdSBhcmUgdXNpbmcgTWFjaCBjdGhyZWFkcyBkaXJlY3RseSB1bmRlciAvaW5jbHVkZV0pCi0gICAgTElCUz0iJExJQlMgLWx0aHJlYWRzIgotICAgIFRIUkVBRE9CSj0iUHl0aG9uL3RocmVhZC5vIl0sWwotICAgIEFDX0NIRUNLX0hFQURFUihtYWNoL2N0aHJlYWRzLmgsIFtBQ19ERUZJTkUoV0lUSF9USFJFQUQpCi0gICAgQUNfREVGSU5FKENfVEhSRUFEUykKLSAgICBBQ19ERUZJTkUoTUFDSF9DX1RIUkVBRFMsIDEsCi0gICAgW0RlZmluZSBpZiB5b3UgYXJlIHVzaW5nIE1hY2ggY3RocmVhZHMgdW5kZXIgbWFjaCAvXSkKLSAgICBUSFJFQURPQko9IlB5dGhvbi90aHJlYWQubyJdLFsKICAgICAjIEp1c3QgbG9va2luZyBmb3IgcHRocmVhZF9jcmVhdGUgaW4gbGlicHRocmVhZCBpcyBub3QgZW5vdWdoOgogICAgICMgb24gSFAvVVgsIHB0aHJlYWQuaCByZW5hbWVzIHB0aHJlYWRfY3JlYXRlIHRvIGEgZGlmZmVyZW50IHN5bWJvbCBuYW1lLgogICAgICMgU28gd2UgcmVhbGx5IGhhdmUgdG8gaW5jbHVkZSBwdGhyZWFkLmgsIGFuZCB0aGVuIGxpbmsuCkBAIC0yMjE0LDcgKzIxOTgsNyBAQAogICAgIExJQlM9IiRMSUJTIC1sY21hIgogICAgIFRIUkVBRE9CSj0iUHl0aG9uL3RocmVhZC5vIl0sWwogICAgIFVTRV9USFJFQURfTU9EVUxFPSIjIl0pCi0gICAgXSldKV0pXSldKV0pXSkKKyAgICBdKV0pXSldKV0pCiAKICAgICBBQ19DSEVDS19MSUIobXBjLCB1c2NvbmZpZywgW0FDX0RFRklORShXSVRIX1RIUkVBRCkKICAgICBMSUJTPSIkTElCUyAtbG1wYyIKQEAgLTIyMjcsMTUgKzIyMTEsNiBAQAogICAgICAgVEhSRUFET0JKPSJQeXRob24vdGhyZWFkLm8iCiAgICAgICBVU0VfVEhSRUFEX01PRFVMRT0iIl0pCiAgICAgZmkKLQotICAgIGlmIHRlc3QgIiRVU0VfVEhSRUFEX01PRFVMRSIgIT0gIiMiCi0gICAgdGhlbgotICAgICAgICAjIElmIHRoZSBhYm92ZSBjaGVja3MgZGlkbid0IGRpc2FibGUgdGhyZWFkcywgKGF0IGxlYXN0KSBPU0YxCi0gICAgICAgICMgbmVlZHMgdGhpcyAnLXRocmVhZHMnIGFyZ3VtZW50IGR1cmluZyBsaW5raW5nLgotICAgICAgICBjYXNlICRhY19zeXNfc3lzdGVtIGluCi0gICAgICAgIE9TRjEpIExETEFTVD0tdGhyZWFkczs7Ci0gICAgICAgIGVzYWMKLSAgICBmaQogZmkKIAogaWYgdGVzdCAiJHBvc2l4X3RocmVhZHMiID0gInllcyI7IHRoZW4KQEAgLTI1ODcsMTkgKzI1NjIsMjcgQEAKIAogIyBjaGVja3MgZm9yIGxpYnJhcnkgZnVuY3Rpb25zCiBBQ19DSEVDS19GVU5DUyhhbGFybSBhY2NlcHQ0IHNldGl0aW1lciBnZXRpdGltZXIgYmluZF90ZXh0ZG9tYWluX2NvZGVzZXQgY2hvd24gXAotIGNsb2NrIGNvbmZzdHIgY3Rlcm1pZCBleGVjdiBmY2htb2QgZmNob3duIGZvcmsgZnBhdGhjb25mIGZ0aW1lIGZ0cnVuY2F0ZSBcCi0gZ2FpX3N0cmVycm9yIGdldGdyb3VwcyBnZXRsb2dpbiBnZXRsb2FkYXZnIGdldHBlZXJuYW1lIGdldHBnaWQgZ2V0cGlkIFwKKyBjbG9jayBjb25mc3RyIGN0ZXJtaWQgZXhlY3YgZmFjY2Vzc2F0IGZjaG1vZCBmY2htb2RhdCBmY2hvd24gZmNob3duYXQgXAorIGZleGVjdmUgZmRvcGVuZGlyIGZvcmsgZnBhdGhjb25mIGZzdGF0YXQgZnRpbWUgZnRydW5jYXRlIGZ1dGltZXNhdCBcCisgZnV0aW1lbnMgZnV0aW1lcyBnYWlfc3RyZXJyb3IgXAorIGdldGdyb3VwbGlzdCBnZXRncm91cHMgZ2V0bG9naW4gZ2V0bG9hZGF2ZyBnZXRwZWVybmFtZSBnZXRwZ2lkIGdldHBpZCBcCiAgZ2V0cHJpb3JpdHkgZ2V0cmVzdWlkIGdldHJlc2dpZCBnZXRwd2VudCBnZXRzcG5hbSBnZXRzcGVudCBnZXRzaWQgZ2V0d2QgXAotIGluaXRncm91cHMga2lsbCBraWxscGcgbGNobW9kIGxjaG93biBsc3RhdCBtYnJ0b3djIG1rZmlmbyBta25vZCBta3RpbWUgXAotIG1yZW1hcCBuaWNlIHBhdGhjb25mIHBhdXNlIHBsb2NrIHBvbGwgcHRocmVhZF9pbml0IFwKLSBwdXRlbnYgcmVhZGxpbmsgcmVhbHBhdGggXAotIHNlbGVjdCBzZW1fb3BlbiBzZW1fdGltZWR3YWl0IHNlbV9nZXR2YWx1ZSBzZW1fdW5saW5rIHNldGVnaWQgc2V0ZXVpZCBcCi0gc2V0Z2lkIFwKLSBzZXRsb2NhbGUgc2V0cmVnaWQgc2V0cmV1aWQgc2V0cmVzdWlkIHNldHJlc2dpZCBzZXRzaWQgc2V0cGdpZCBzZXRwZ3JwIHNldHVpZCBzZXR2YnVmIFwKLSBzaWdhY3Rpb24gc2lnaW50ZXJydXB0IHNpZ3JlbHNlIHNucHJpbnRmIHN0cmZ0aW1lIHN0cmxjcHkgXAorIGlmX25hbWVpbmRleCBcCisgaW5pdGdyb3VwcyBraWxsIGtpbGxwZyBsY2htb2QgbGNob3duIGxvY2tmIGxpbmthdCBsc3RhdCBsdXRpbWVzIG1tYXAgXAorIG1lbXJjaHIgbWJydG93YyBta2RpcmF0IG1rZmlmbyBcCisgbWtmaWZvYXQgbWtub2QgbWtub2RhdCBta3RpbWUgbXJlbWFwIG5pY2Ugb3BlbmF0IHBhdGhjb25mIHBhdXNlIHBpcGUyIHBsb2NrIHBvbGwgXAorIHBvc2l4X2ZhbGxvY2F0ZSBwb3NpeF9mYWR2aXNlIHByZWFkIFwKKyBwdGhyZWFkX2luaXQgcHRocmVhZF9raWxsIHB1dGVudiBwd3JpdGUgcmVhZGxpbmsgcmVhZGxpbmthdCByZWFkdiByZWFscGF0aCByZW5hbWVhdCBcCisgc2VsZWN0IHNlbV9vcGVuIHNlbV90aW1lZHdhaXQgc2VtX2dldHZhbHVlIHNlbV91bmxpbmsgc2VuZGZpbGUgc2V0ZWdpZCBzZXRldWlkIFwKKyBzZXRnaWQgc2V0aG9zdG5hbWUgXAorIHNldGxvY2FsZSBzZXRyZWdpZCBzZXRyZXVpZCBzZXRyZXN1aWQgc2V0cmVzZ2lkIHNldHNpZCBzZXRwZ2lkIHNldHBncnAgc2V0cHJpb3JpdHkgc2V0dWlkIHNldHZidWYgXAorIHNjaGVkX2dldF9wcmlvcml0eV9tYXggc2NoZWRfc2V0YWZmaW5pdHkgc2NoZWRfc2V0c2NoZWR1bGVyIHNjaGVkX3NldHBhcmFtIFwKKyBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwgXAorIHNpZ2FjdGlvbiBzaWdhbHRzdGFjayBzaWdpbnRlcnJ1cHQgc2lncGVuZGluZyBzaWdyZWxzZSBcCisgc2lndGltZWR3YWl0IHNpZ3dhaXQgc2lnd2FpdGluZm8gc25wcmludGYgc3RyZnRpbWUgc3RybGNweSBzeW1saW5rYXQgc3luYyBcCiAgc3lzY29uZiB0Y2dldHBncnAgdGNzZXRwZ3JwIHRlbXBuYW0gdGltZWdtIHRpbWVzIHRtcGZpbGUgdG1wbmFtIHRtcG5hbV9yIFwKLSB0cnVuY2F0ZSB1bmFtZSB1bnNldGVudiB1dGltZXMgd2FpdHBpZCB3YWl0MyB3YWl0NCBcCi0gd2NzY29sbCB3Y3NmdGltZSB3Y3N4ZnJtIF9nZXRwdHkpCisgdHJ1bmNhdGUgdW5hbWUgdW5saW5rYXQgdW5zZXRlbnYgdXRpbWVuc2F0IHV0aW1lcyB3YWl0aWQgd2FpdHBpZCB3YWl0MyB3YWl0NCBcCisgd2NzY29sbCB3Y3NmdGltZSB3Y3N4ZnJtIHdyaXRldiBfZ2V0cHR5KQogCiBBQ19DSEVDS19ERUNMKGRpcmZkLAogICAgIEFDX0RFRklORShIQVZFX0RJUkZELCAxLApAQCAtMjY1MSw2ICsyNjM0LDEyIEBACiAgICBBQ19NU0dfUkVTVUxUKHllcyldLAogICBbQUNfTVNHX1JFU1VMVChubykKIF0pCitBQ19NU0dfQ0hFQ0tJTkcoZm9yIGVwb2xsX2NyZWF0ZTEpCitBQ19DT01QSUxFX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFtbI2luY2x1ZGUgPHN5cy9lcG9sbC5oPl1dLCBbW3ZvaWQgKng9ZXBvbGxfY3JlYXRlMV1dKV0sCisgIFtBQ19ERUZJTkUoSEFWRV9FUE9MTF9DUkVBVEUxLCAxLCBEZWZpbmUgaWYgeW91IGhhdmUgdGhlICdlcG9sbF9jcmVhdGUxJyBmdW5jdGlvbi4pCisgICBBQ19NU0dfUkVTVUxUKHllcyldLAorICBbQUNfTVNHX1JFU1VMVChubykKK10pCiBBQ19NU0dfQ0hFQ0tJTkcoZm9yIGtxdWV1ZSkKIEFDX0NPTVBJTEVfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KQEAgLTI4ODEsNiArMjg3MCwyMCBAQAogICAgIF0pCiApCiAKK0FDX0NIRUNLX0ZVTkNTKGNsb2NrX2dldHRpbWUsIFtdLCBbCisgICAgQUNfQ0hFQ0tfTElCKHJ0LCBjbG9ja19nZXR0aW1lLCBbCisgICAgICAgIEFDX0RFRklORShIQVZFX0NMT0NLX0dFVFRJTUUsIDEpCisgICAgICAgIEFDX0RFRklORShUSU1FTU9EVUxFX0xJQiwgW3J0XSwKKyAgICAgICAgICAgICAgICAgIFtMaWJyYXJ5IG5lZWRlZCBieSB0aW1lbW9kdWxlLmM6IGxpYnJ0IG1heSBiZSBuZWVkZWQgZm9yIGNsb2NrX2dldHRpbWUoKV0pCisgICAgXSkKK10pCisKK0FDX0NIRUNLX0ZVTkNTKGNsb2NrX2dldHJlcywgW10sIFsKKyAgICBBQ19DSEVDS19MSUIocnQsIGNsb2NrX2dldHJlcywgWworICAgICAgICBBQ19ERUZJTkUoSEFWRV9DTE9DS19HRVRSRVMsIDEpCisgICAgXSkKK10pCisKIEFDX01TR19DSEVDS0lORyhmb3IgbWFqb3IsIG1pbm9yLCBhbmQgbWFrZWRldikKIEFDX0xJTktfSUZFTFNFKFtBQ19MQU5HX1BST0dSQU0oW1sKICNpZiBkZWZpbmVkKE1BSk9SX0lOX01LREVWKQpAQCAtMzQ1MCw3ICszNDUzLDcgQEAKIExJQlM9IiRMSUJTICRMSUJNIgogCiBBQ19DSEVDS19GVU5DUyhbYWNvc2ggYXNpbmggYXRhbmggY29weXNpZ24gZXJmIGVyZmMgZXhwbTEgZmluaXRlIGdhbW1hXSkKLUFDX0NIRUNLX0ZVTkNTKFtoeXBvdCBsZ2FtbWEgbG9nMXAgcm91bmQgdGdhbW1hXSkKK0FDX0NIRUNLX0ZVTkNTKFtoeXBvdCBsZ2FtbWEgbG9nMXAgbG9nMiByb3VuZCB0Z2FtbWFdKQogQUNfQ0hFQ0tfREVDTFMoW2lzaW5mLCBpc25hbiwgaXNmaW5pdGVdLCBbXSwgW10sIFtbI2luY2x1ZGUgPG1hdGguaD5dXSkKIAogIyBPbiBGcmVlQlNEIDYuMiwgaXQgYXBwZWFycyB0aGF0IHRhbmgoLTAuKSByZXR1cm5zIDAuIGluc3RlYWQgb2YKQEAgLTM2NDgsNTcgKzM2NTEsMTkgQEAKICAgQUNfTVNHX1JFU1VMVCgkYWNfY3Zfd2NoYXJfdF9zaWduZWQpCiBmaQogCi1BQ19NU0dfQ0hFQ0tJTkcod2hhdCB0eXBlIHRvIHVzZSBmb3Igc3RyKQotQUNfQVJHX1dJVEgod2lkZS11bmljb2RlLCAKLSAgICAgICAgICAgIEFTX0hFTFBfU1RSSU5HKFstLXdpdGgtd2lkZS11bmljb2RlXSwgW1VzZSA0LWJ5dGUgVW5pY29kZSBjaGFyYWN0ZXJzIChkZWZhdWx0IGlzIDIgYnl0ZXMpXSksCi1bCi1pZiB0ZXN0ICIkd2l0aHZhbCIgIT0gbm8KLXRoZW4gdW5pY29kZV9zaXplPSI0IgotZWxzZSB1bmljb2RlX3NpemU9IjIiCi1maQotXSwKLVsKLWNhc2UgIiRoYXZlX3VjczRfdGNsIiBpbgotICB5ZXMpIHVuaWNvZGVfc2l6ZT0iNCI7OwotICAqKSAgIHVuaWNvZGVfc2l6ZT0iMiIgOzsKLWVzYWMKLV0pCi0KLUFIX1RFTVBMQVRFKFB5X1VOSUNPREVfU0laRSwKLSAgW0RlZmluZSBhcyB0aGUgc2l6ZSBvZiB0aGUgdW5pY29kZSB0eXBlLl0pCi1jYXNlICIkdW5pY29kZV9zaXplIiBpbgotICA0KQotICAgICBBQ19ERUZJTkUoUHlfVU5JQ09ERV9TSVpFLCA0KQotICAgICBBQklGTEFHUz0iJHtBQklGTEFHU311IgotICAgICA7OwotICAqKSBBQ19ERUZJTkUoUHlfVU5JQ09ERV9TSVpFLCAyKSA7OwotZXNhYwotCi1BSF9URU1QTEFURShQWV9VTklDT0RFX1RZUEUsCi0gIFtEZWZpbmUgYXMgdGhlIGludGVncmFsIHR5cGUgdXNlZCBmb3IgVW5pY29kZSByZXByZXNlbnRhdGlvbi5dKQotCiAjIHdjaGFyX3QgaXMgb25seSB1c2FibGUgaWYgaXQgbWFwcyB0byBhbiB1bnNpZ25lZCB0eXBlCi1pZiB0ZXN0ICIkdW5pY29kZV9zaXplIiA9ICIkYWNfY3Zfc2l6ZW9mX3djaGFyX3QiIFwKK2lmIHRlc3QgIiRhY19jdl9zaXplb2Zfd2NoYXJfdCIgLWdlIDIgXAogICAgICAgICAgIC1hICIkYWNfY3Zfd2NoYXJfdF9zaWduZWQiID0gIm5vIgogdGhlbgotICBQWV9VTklDT0RFX1RZUEU9IndjaGFyX3QiCisgIEhBVkVfVVNBQkxFX1dDSEFSX1Q9InllcyIKICAgQUNfREVGSU5FKEhBVkVfVVNBQkxFX1dDSEFSX1QsIDEsCiAgIFtEZWZpbmUgaWYgeW91IGhhdmUgYSB1c2VhYmxlIHdjaGFyX3QgdHlwZSBkZWZpbmVkIGluIHdjaGFyLmg7IHVzZWFibGUKICAgIG1lYW5zIHdjaGFyX3QgbXVzdCBiZSBhbiB1bnNpZ25lZCB0eXBlIHdpdGggYXQgbGVhc3QgMTYgYml0cy4gKHNlZQogICAgSW5jbHVkZS91bmljb2Rlb2JqZWN0LmgpLl0pCi0gIEFDX0RFRklORShQWV9VTklDT0RFX1RZUEUsd2NoYXJfdCkKLWVsaWYgdGVzdCAiJGFjX2N2X3NpemVvZl9zaG9ydCIgPSAiJHVuaWNvZGVfc2l6ZSIKLXRoZW4KLSAgICAgUFlfVU5JQ09ERV9UWVBFPSJ1bnNpZ25lZCBzaG9ydCIKLSAgICAgQUNfREVGSU5FKFBZX1VOSUNPREVfVFlQRSx1bnNpZ25lZCBzaG9ydCkKLWVsaWYgdGVzdCAiJGFjX2N2X3NpemVvZl9sb25nIiA9ICIkdW5pY29kZV9zaXplIgotdGhlbgotICAgICBQWV9VTklDT0RFX1RZUEU9InVuc2lnbmVkIGxvbmciCi0gICAgIEFDX0RFRklORShQWV9VTklDT0RFX1RZUEUsdW5zaWduZWQgbG9uZykKIGVsc2UKLSAgICAgUFlfVU5JQ09ERV9UWVBFPSJubyB0eXBlIGZvdW5kIgorICBIQVZFX1VTQUJMRV9XQ0hBUl9UPSJubyB1c2FibGUgd2NoYXJfdCBmb3VuZCIKIGZpCi1BQ19NU0dfUkVTVUxUKCRQWV9VTklDT0RFX1RZUEUpCitBQ19NU0dfUkVTVUxUKCRIQVZFX1VTQUJMRV9XQ0hBUl9UKQogCiAjIGNoZWNrIGZvciBlbmRpYW5uZXNzCiBBQ19DX0JJR0VORElBTgpAQCAtNDMwOCwxMiArNDI3Myw2IEBACiBlc2FjCiAKIAotY2FzZSAkYWNfc3lzX3N5c3RlbSBpbgotICBPU0YqKSBBQ19NU0dfRVJST1IoT1NGKiBzeXN0ZW1zIGFyZSBkZXByZWNhdGVkIHVubGVzcyBzb21lYm9keSB2b2x1bnRlZXJzLiBDaGVjayBodHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlODYwNikgOzsKLWVzYWMKLQotQUNfQ0hFQ0tfRlVOQyhwaXBlMiwgQUNfREVGSU5FKEhBVkVfUElQRTIsIDEsIFtEZWZpbmUgaWYgdGhlIE9TIHN1cHBvcnRzIHBpcGUyKCldKSwgKQotCiBBQ19TVUJTVChUSFJFQURIRUFERVJTKQogCiBmb3IgaCBpbiBgKGNkICRzcmNkaXI7ZWNobyBQeXRob24vdGhyZWFkXyouaClgCmRpZmYgLS1naXQgYS9weWNvbmZpZy5oLmluIGIvcHljb25maWcuaC5pbgppbmRleCA4ZThmMzE5Li5mZDRjZmM3IDEwMDY0NAotLS0gYS9weWNvbmZpZy5oLmluCisrKyBiL3B5Y29uZmlnLmguaW4KQEAgLTEyLDkgKzEyLDYgQEAKICAgIHN1cHBvcnQgZm9yIEFJWCBDKysgc2hhcmVkIGV4dGVuc2lvbiBtb2R1bGVzLiAqLwogI3VuZGVmIEFJWF9HRU5VSU5FX0NQTFVTUExVUwogCi0vKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlIE1hY2ggY3RocmVhZHMgcGFja2FnZSAqLwotI3VuZGVmIENfVEhSRUFEUwotCiAvKiBEZWZpbmUgaWYgQyBkb3VibGVzIGFyZSA2NC1iaXQgSUVFRSA3NTQgYmluYXJ5IGZvcm1hdCwgc3RvcmVkIGluIEFSTQogICAgbWl4ZWQtZW5kaWFuIG9yZGVyIChieXRlIG9yZGVyIDQ1NjcwMTIzKSAqLwogI3VuZGVmIERPVUJMRV9JU19BUk1fTUlYRURfRU5ESUFOX0lFRUU3NTQKQEAgLTExNiw2ICsxMTMsMTIgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgY2xvY2snIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfQ0xPQ0sKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBjbG9ja19nZXRyZXMnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfQ0xPQ0tfR0VUUkVTCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgY2xvY2tfZ2V0dGltZScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9DTE9DS19HRVRUSU1FCisKIC8qIERlZmluZSBpZiB0aGUgQyBjb21waWxlciBzdXBwb3J0cyBjb21wdXRlZCBnb3Rvcy4gKi8KICN1bmRlZiBIQVZFX0NPTVBVVEVEX0dPVE9TCiAKQEAgLTE5Niw2ICsxOTksOSBAQAogLyogRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSAnZXBvbGwnIGZ1bmN0aW9ucy4gKi8KICN1bmRlZiBIQVZFX0VQT0xMCiAKKy8qIERlZmluZSBpZiB5b3UgaGF2ZSB0aGUgJ2Vwb2xsX2NyZWF0ZTEnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRVBPTExfQ1JFQVRFMQorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGVyZicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9FUkYKIApAQCAtMjExLDIxICsyMTcsMzYgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZXhwbTEnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRVhQTTEKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmYWNjZXNzYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRkFDQ0VTU0FUCisKIC8qIERlZmluZSBpZiB5b3UgaGF2ZSB0aGUgJ2ZjaGRpcicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9GQ0hESVIKIAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmY2htb2QnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRkNITU9ECiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZmNobW9kYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRkNITU9EQVQKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmY2hvd24nIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRkNIT1dOCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZmNob3duYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRkNIT1dOQVQKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxmY250bC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX0ZDTlRMX0gKIAogLyogRGVmaW5lIGlmIHlvdSBoYXZlIHRoZSAnZmRhdGFzeW5jJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX0ZEQVRBU1lOQwogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGZkb3BlbmRpcicgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9GRE9QRU5ESVIKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmZXhlY3ZlJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0ZFWEVDVkUKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmaW5pdGUnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRklOSVRFCiAKQEAgLTI0Nyw2ICsyNjgsOSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmc2Vla28nIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRlNFRUtPCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZnN0YXRhdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9GU1RBVEFUCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZnN0YXR2ZnMnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRlNUQVRWRlMKIApAQCAtMjY1LDYgKzI4OSwxNSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmdHJ1bmNhdGUnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfRlRSVU5DQVRFCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZnV0aW1lbnMnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRlVUSU1FTlMKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmdXRpbWVzJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0ZVVElNRVMKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBmdXRpbWVzYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfRlVUSU1FU0FUCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2FpX3N0cmVycm9yJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX0dBSV9TVFJFUlJPUgogCkBAIC0yODQsNiArMzE3LDkgQEAKIC8qIERlZmluZSB0aGlzIGlmIHlvdSBoYXZlIGZsb2NrZmlsZSgpLCBnZXRjX3VubG9ja2VkKCksIGFuZCBmdW5sb2NrZmlsZSgpICovCiAjdW5kZWYgSEFWRV9HRVRDX1VOTE9DS0VECiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgZ2V0Z3JvdXBsaXN0JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0dFVEdST1VQTElTVAorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGdldGdyb3VwcycgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9HRVRHUk9VUFMKIApAQCAtMzY4LDYgKzQwNCw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPGllZWVmcC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX0lFRUVGUF9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgaWZfbmFtZWluZGV4JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0lGX05BTUVJTkRFWAorCiAvKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlICdpbmV0X2F0b24nIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfSU5FVF9BVE9OCiAKQEAgLTQzMSwyMSArNDcwLDM5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHJlc29sdicgbGlicmFyeSAoLWxyZXNvbHYpLiAqLwogI3VuZGVmIEhBVkVfTElCUkVTT0xWCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2VuZGZpbGUnIGxpYnJhcnkgKC1sc2VuZGZpbGUpLiAqLworI3VuZGVmIEhBVkVfTElCU0VOREZJTEUKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxsaWJ1dGlsLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfTElCVVRJTF9ICiAKIC8qIERlZmluZSBpZiB5b3UgaGF2ZSB0aGUgJ2xpbmsnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTElOSwogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGxpbmthdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9MSU5LQVQKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxsaW51eC9jYW4uaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9MSU5VWF9DQU5fSAorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPGxpbnV4L2Nhbi9yYXcuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9MSU5VWF9DQU5fUkFXX0gKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxsaW51eC9uZXRsaW5rLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfTElOVVhfTkVUTElOS19ICiAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8bGludXgvdGlwYy5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX0xJTlVYX1RJUENfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYGxvY2tmJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0xPQ0tGCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbG9nMXAnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTE9HMVAKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBsb2cyJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0xPRzIKKwogLyogRGVmaW5lIHRoaXMgaWYgeW91IGhhdmUgdGhlIHR5cGUgbG9uZyBkb3VibGUuICovCiAjdW5kZWYgSEFWRV9MT05HX0RPVUJMRQogCkBAIC00NTUsNiArNTEyLDkgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbHN0YXQnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTFNUQVQKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBsdXRpbWVzJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX0xVVElNRVMKKwogLyogRGVmaW5lIHRoaXMgaWYgeW91IGhhdmUgdGhlIG1ha2VkZXYgbWFjcm8uICovCiAjdW5kZWYgSEFWRV9NQUtFREVWCiAKQEAgLTQ2NywxNSArNTI3LDMwIEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPG1lbW9yeS5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX01FTU9SWV9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbWVtcmNocicgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9NRU1SQ0hSCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbWtkaXJhdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9NS0RJUkFUCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbWtmaWZvJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX01LRklGTwogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYG1rZmlmb2F0JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX01LRklGT0FUCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbWtub2QnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTUtOT0QKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBta25vZGF0JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX01LTk9EQVQKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBta3RpbWUnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTUtUSU1FCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbW1hcCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9NTUFQCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgbXJlbWFwJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX01SRU1BUAogCkBAIC00ODgsOSArNTYzLDE1IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPG5ldHBhY2tldC9wYWNrZXQuaD4gaGVhZGVyIGZpbGUuICovCiAjdW5kZWYgSEFWRV9ORVRQQUNLRVRfUEFDS0VUX0gKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxuZXQvaWYuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9ORVRfSUZfSAorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYG5pY2UnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfTklDRQogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYG9wZW5hdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9PUEVOQVQKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBvcGVucHR5JyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX09QRU5QVFkKIApAQCAtNTAzLDcgKzU4NCw3IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBhdXNlJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1BBVVNFCiAKLS8qIERlZmluZSBpZiB0aGUgT1Mgc3VwcG9ydHMgcGlwZTIoKSAqLworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBwaXBlMicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9QSVBFMgogCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBsb2NrJyBmdW5jdGlvbi4gKi8KQEAgLTUxNSw2ICs1OTYsMTUgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8cG9sbC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX1BPTExfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBvc2l4X2ZhZHZpc2UnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfUE9TSVhfRkFEVklTRQorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHBvc2l4X2ZhbGxvY2F0ZScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9QT1NJWF9GQUxMT0NBVEUKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBwcmVhZCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9QUkVBRAorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHByb2Nlc3MuaD4gaGVhZGVyIGZpbGUuICovCiAjdW5kZWYgSEFWRV9QUk9DRVNTX0gKIApAQCAtNTMwLDYgKzYyMCw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHB0aHJlYWRfaW5pdCcgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9QVEhSRUFEX0lOSVQKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBwdGhyZWFkX2tpbGwnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfUFRIUkVBRF9LSUxMCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcHRocmVhZF9zaWdtYXNrJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1BUSFJFQURfU0lHTUFTSwogCkBAIC01MzksMTIgKzYzMiwyNCBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBwdXRlbnYnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfUFVURU5WCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcHdyaXRlJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1BXUklURQorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHJlYWRsaW5rJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1JFQURMSU5LCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcmVhZGxpbmthdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9SRUFETElOS0FUCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcmVhZHYnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfUkVBRFYKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGByZWFscGF0aCcgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9SRUFMUEFUSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHJlbmFtZWF0JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1JFTkFNRUFUCisKIC8qIERlZmluZSBpZiB5b3UgaGF2ZSByZWFkbGluZSAyLjEgKi8KICN1bmRlZiBIQVZFX1JMX0NBTExCQUNLCiAKQEAgLTU2OSw2ICs2NzQsMjQgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgcm91bmQnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfUk9VTkQKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzY2hlZF9nZXRfcHJpb3JpdHlfbWF4JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1NDSEVEX0dFVF9QUklPUklUWV9NQVgKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzY2hlZC5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1NDSEVEX0gKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU0NIRURfUlJfR0VUX0lOVEVSVkFMCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2NoZWRfc2V0YWZmaW5pdHknIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU0NIRURfU0VUQUZGSU5JVFkKKworLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzY2hlZF9zZXRwYXJhbScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TQ0hFRF9TRVRQQVJBTQorCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNjaGVkX3NldHNjaGVkdWxlcicgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TQ0hFRF9TRVRTQ0hFRFVMRVIKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZWxlY3QnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU0VMRUNUCiAKQEAgLTU4NCw2ICs3MDcsOSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZW1fdW5saW5rJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1NFTV9VTkxJTksKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZW5kZmlsZScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TRU5ERklMRQorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNldGVnaWQnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU0VURUdJRAogCkBAIC01OTYsNiArNzIyLDkgQEAKIC8qIERlZmluZSBpZiB5b3UgaGF2ZSB0aGUgJ3NldGdyb3VwcycgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9TRVRHUk9VUFMKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzZXRob3N0bmFtZScgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TRVRIT1NUTkFNRQorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNldGl0aW1lcicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9TRVRJVElNRVIKIApAQCAtNjA4LDYgKzczNyw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNldHBncnAnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU0VUUEdSUAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNldHByaW9yaXR5JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1NFVFBSSU9SSVRZCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2V0cmVnaWQnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU0VUUkVHSUQKIApAQCAtNjM1LDE1ICs3NjcsMzAgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lnYWN0aW9uJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1NJR0FDVElPTgogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHNpZ2FsdHN0YWNrJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1NJR0FMVFNUQUNLCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lnaW50ZXJydXB0JyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1NJR0lOVEVSUlVQVAogCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHNpZ25hbC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX1NJR05BTF9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lncGVuZGluZycgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TSUdQRU5ESU5HCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lncmVsc2UnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfU0lHUkVMU0UKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzaWd0aW1lZHdhaXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU0lHVElNRURXQUlUCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lnd2FpdCcgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TSUdXQUlUCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc2lnd2FpdGluZm8nIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU0lHV0FJVElORk8KKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzbnByaW50ZicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9TTlBSSU5URgogCkBAIC03MjcsNiArODc0LDEyIEBACiAvKiBEZWZpbmUgaWYgeW91IGhhdmUgdGhlICdzeW1saW5rJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1NZTUxJTksKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGBzeW1saW5rYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfU1lNTElOS0FUCisKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc3luYycgZnVuY3Rpb24uICovCisjdW5kZWYgSEFWRV9TWU5DCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgc3lzY29uZicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9TWVNDT05GCiAKQEAgLTczOSw2ICs4OTIsOSBAQAogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzeXMvYnNkdHR5Lmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfU1lTX0JTRFRUWV9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL2RldnBvbGwuaD4gaGVhZGVyIGZpbGUuICovCisjdW5kZWYgSEFWRV9TWVNfREVWUE9MTF9ICisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL2Rpci5oPiBoZWFkZXIgZmlsZSwgYW5kIGl0IGRlZmluZXMgYERJUicuCiAgICAqLwogI3VuZGVmIEhBVkVfU1lTX0RJUl9ICkBAIC03ODAsNiArOTM2LDkgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3NlbGVjdC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX1NZU19TRUxFQ1RfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy9zZW5kZmlsZS5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1NZU19TRU5ERklMRV9ICisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3NvY2tldC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX1NZU19TT0NLRVRfSAogCkBAIC04MDQsNiArOTYzLDkgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3R5cGVzLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfU1lTX1RZUEVTX0gKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIDxzeXMvdWlvLmg+IGhlYWRlciBmaWxlLiAqLworI3VuZGVmIEhBVkVfU1lTX1VJT19ICisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSA8c3lzL3VuLmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfU1lTX1VOX0gKIApAQCAtODEzLDYgKzk3NSw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy93YWl0Lmg+IGhlYWRlciBmaWxlLiAqLwogI3VuZGVmIEhBVkVfU1lTX1dBSVRfSAogCisvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHN5cy94YXR0ci5oPiBoZWFkZXIgZmlsZS4gKi8KKyN1bmRlZiBIQVZFX1NZU19YQVRUUl9ICisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgdGNnZXRwZ3JwJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1RDR0VUUEdSUAogCkBAIC04MzEsOSArOTk2LDYgQEAKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgdGdhbW1hJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1RHQU1NQQogCi0vKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHRocmVhZC5oPiBoZWFkZXIgZmlsZS4gKi8KLSN1bmRlZiBIQVZFX1RIUkVBRF9ICi0KIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgdGltZWdtJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1RJTUVHTQogCkBAIC04NzIsNiArMTAzNCw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHVuaXN0ZC5oPiBoZWFkZXIgZmlsZS4gKi8KICN1bmRlZiBIQVZFX1VOSVNURF9ICiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgdW5saW5rYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfVU5MSU5LQVQKKwogLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGB1bnNldGVudicgZnVuY3Rpb24uICovCiAjdW5kZWYgSEFWRV9VTlNFVEVOVgogCkBAIC04ODMsNiArMTA0OCw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgPHV0aWwuaD4gaGVhZGVyIGZpbGUuICovCiAjdW5kZWYgSEFWRV9VVElMX0gKIAorLyogRGVmaW5lIHRvIDEgaWYgeW91IGhhdmUgdGhlIGB1dGltZW5zYXQnIGZ1bmN0aW9uLiAqLworI3VuZGVmIEhBVkVfVVRJTUVOU0FUCisKIC8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgdXRpbWVzJyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1VUSU1FUwogCkBAIC04OTUsNiArMTA2Myw5IEBACiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHdhaXQ0JyBmdW5jdGlvbi4gKi8KICN1bmRlZiBIQVZFX1dBSVQ0CiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgd2FpdGlkJyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1dBSVRJRAorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYHdhaXRwaWQnIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfV0FJVFBJRAogCkBAIC05MTQsMjEgKzEwODUsMTggQEAKICAgICovCiAjdW5kZWYgSEFWRV9XT1JLSU5HX1RaU0VUCiAKKy8qIERlZmluZSB0byAxIGlmIHlvdSBoYXZlIHRoZSBgd3JpdGV2JyBmdW5jdGlvbi4gKi8KKyN1bmRlZiBIQVZFX1dSSVRFVgorCiAvKiBEZWZpbmUgaWYgdGhlIHpsaWIgbGlicmFyeSBoYXMgaW5mbGF0ZUNvcHkgKi8KICN1bmRlZiBIQVZFX1pMSUJfQ09QWQogCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgaGF2ZSB0aGUgYF9nZXRwdHknIGZ1bmN0aW9uLiAqLwogI3VuZGVmIEhBVkVfX0dFVFBUWQogCi0vKiBEZWZpbmUgaWYgeW91IGFyZSB1c2luZyBNYWNoIGN0aHJlYWRzIGRpcmVjdGx5IHVuZGVyIC9pbmNsdWRlICovCi0jdW5kZWYgSFVSRF9DX1RIUkVBRFMKLQogLyogRGVmaW5lIGlmIGxvZzFwKC0wLikgaXMgMC4gcmF0aGVyIHRoYW4gLTAuICovCiAjdW5kZWYgTE9HMVBfRFJPUFNfWkVST19TSUdOCiAKLS8qIERlZmluZSBpZiB5b3UgYXJlIHVzaW5nIE1hY2ggY3RocmVhZHMgdW5kZXIgbWFjaCAvICovCi0jdW5kZWYgTUFDSF9DX1RIUkVBRFMKLQogLyogRGVmaW5lIHRvIDEgaWYgYG1ham9yJywgYG1pbm9yJywgYW5kIGBtYWtlZGV2JyBhcmUgZGVjbGFyZWQgaW4gPG1rZGV2Lmg+LgogICAgKi8KICN1bmRlZiBNQUpPUl9JTl9NS0RFVgpAQCAtOTczLDE4ICsxMTQxLDEyIEBACiAvKiBEZWZpbmUgdG8gcHJpbnRmIGZvcm1hdCBtb2RpZmllciBmb3IgUHlfc3NpemVfdCAqLwogI3VuZGVmIFBZX0ZPUk1BVF9TSVpFX1QKIAotLyogRGVmaW5lIGFzIHRoZSBpbnRlZ3JhbCB0eXBlIHVzZWQgZm9yIFVuaWNvZGUgcmVwcmVzZW50YXRpb24uICovCi0jdW5kZWYgUFlfVU5JQ09ERV9UWVBFCi0KIC8qIERlZmluZSBpZiB5b3Ugd2FudCB0byBidWlsZCBhbiBpbnRlcnByZXRlciB3aXRoIG1hbnkgcnVuLXRpbWUgY2hlY2tzLiAqLwogI3VuZGVmIFB5X0RFQlVHCiAKIC8qIERlZmluZWQgaWYgUHl0aG9uIGlzIGJ1aWx0IGFzIGEgc2hhcmVkIGxpYnJhcnkuICovCiAjdW5kZWYgUHlfRU5BQkxFX1NIQVJFRAogCi0vKiBEZWZpbmUgYXMgdGhlIHNpemUgb2YgdGhlIHVuaWNvZGUgdHlwZS4gKi8KLSN1bmRlZiBQeV9VTklDT0RFX1NJWkUKLQogLyogYXNzdW1lIEM4OSBzZW1hbnRpY3MgdGhhdCBSRVRTSUdUWVBFIGlzIGFsd2F5cyB2b2lkICovCiAjdW5kZWYgUkVUU0lHVFlQRQogCkBAIC0xMDU4LDYgKzEyMjAsOSBAQAogLyogRGVmaW5lIGlmIHRhbmgoLTAuKSBpcyAtMC4sIG9yIGlmIHBsYXRmb3JtIGRvZXNuJ3QgaGF2ZSBzaWduZWQgemVyb3MgKi8KICN1bmRlZiBUQU5IX1BSRVNFUlZFU19aRVJPX1NJR04KIAorLyogTGlicmFyeSBuZWVkZWQgYnkgdGltZW1vZHVsZS5jOiBsaWJydCBtYXkgYmUgbmVlZGVkIGZvciBjbG9ja19nZXR0aW1lKCkgKi8KKyN1bmRlZiBUSU1FTU9EVUxFX0xJQgorCiAvKiBEZWZpbmUgdG8gMSBpZiB5b3UgY2FuIHNhZmVseSBpbmNsdWRlIGJvdGggPHN5cy90aW1lLmg+IGFuZCA8dGltZS5oPi4gKi8KICN1bmRlZiBUSU1FX1dJVEhfU1lTX1RJTUUKIApAQCAtMTE3MCwxNCArMTMzNSwxMSBAQAogLyogRGVmaW5lIG9uIE5ldEJTRCB0byBhY3RpdmF0ZSBhbGwgbGlicmFyeSBmZWF0dXJlcyAqLwogI3VuZGVmIF9ORVRCU0RfU09VUkNFCiAKLS8qIERlZmluZSBfT1NGX1NPVVJDRSB0byBnZXQgdGhlIG1ha2VkZXYgbWFjcm8uICovCi0jdW5kZWYgX09TRl9TT1VSQ0UKLQogLyogRGVmaW5lIHRvIDIgaWYgdGhlIHN5c3RlbSBkb2VzIG5vdCBwcm92aWRlIFBPU0lYLjEgZmVhdHVyZXMgZXhjZXB0IHdpdGgKICAgIHRoaXMgZGVmaW5lZC4gKi8KICN1bmRlZiBfUE9TSVhfMV9TT1VSQ0UKIAotLyogRGVmaW5lIHRvIGFjdGl2YXRlIGZlYXR1cmVzIGZyb20gSUVFRSBTdGRzIDEwMDMuMS0yMDAxICovCisvKiBEZWZpbmUgdG8gYWN0aXZhdGUgZmVhdHVyZXMgZnJvbSBJRUVFIFN0ZHMgMTAwMy4xLTIwMDggKi8KICN1bmRlZiBfUE9TSVhfQ19TT1VSQ0UKIAogLyogRGVmaW5lIHRvIDEgaWYgeW91IG5lZWQgdG8gaW4gb3JkZXIgZm9yIGBzdGF0JyBhbmQgb3RoZXIgdGhpbmdzIHRvIHdvcmsuICovCmRpZmYgLS1naXQgYS9zZXR1cC5weSBiL3NldHVwLnB5CmluZGV4IDEzMThiYzIuLjM5YWZmNjcgMTAwNjQ0Ci0tLSBhL3NldHVwLnB5CisrKyBiL3NldHVwLnB5CkBAIC0xLDggKzEsNiBAQAogIyBBdXRvZGV0ZWN0aW5nIHNldHVwLnB5IHNjcmlwdCBmb3IgYnVpbGRpbmcgdGhlIFB5dGhvbiBleHRlbnNpb25zCiAjCiAKLV9fdmVyc2lvbl9fID0gIiRSZXZpc2lvbiQiCi0KIGltcG9ydCBzeXMsIG9zLCBpbXAsIHJlLCBvcHRwYXJzZQogZnJvbSBnbG9iIGltcG9ydCBnbG9iCiBpbXBvcnQgc3lzY29uZmlnCkBAIC0zNjUsOSArMzYzLDggQEAKIAogICAgIGRlZiBnZXRfcGxhdGZvcm0oc2VsZik6CiAgICAgICAgICMgR2V0IHZhbHVlIG9mIHN5cy5wbGF0Zm9ybQotICAgICAgICBmb3IgcGxhdGZvcm0gaW4gWydjeWd3aW4nLCAnZGFyd2luJywgJ29zZjEnXToKLSAgICAgICAgICAgIGlmIHN5cy5wbGF0Zm9ybS5zdGFydHN3aXRoKHBsYXRmb3JtKToKLSAgICAgICAgICAgICAgICByZXR1cm4gcGxhdGZvcm0KKyAgICAgICAgaWYgc3lzLnBsYXRmb3JtLnN0YXJ0c3dpdGgoJ29zZjEnKToKKyAgICAgICAgICAgIHJldHVybiAnb3NmMScKICAgICAgICAgcmV0dXJuIHN5cy5wbGF0Zm9ybQogCiAgICAgZGVmIGFkZF9tdWx0aWFyY2hfcGF0aHMoc2VsZik6CkBAIC01MDcsMTEgKzUwNCwxNyBAQAogICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCdtYXRoJywgIFsnbWF0aG1vZHVsZS5jJywgJ19tYXRoLmMnXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXBlbmRzPVsnX21hdGguaCddLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcz1tYXRoX2xpYnMpICkKKworICAgICAgICAjIHRpbWUgbGlicmFyaWVzOiBsaWJydCBtYXkgYmUgbmVlZGVkIGZvciBjbG9ja19nZXR0aW1lKCkKKyAgICAgICAgdGltZV9saWJzID0gW10KKyAgICAgICAgbGliID0gc3lzY29uZmlnLmdldF9jb25maWdfdmFyKCdUSU1FTU9EVUxFX0xJQicpCisgICAgICAgIGlmIGxpYjoKKyAgICAgICAgICAgIHRpbWVfbGlicy5hcHBlbmQobGliKQorCiAgICAgICAgICMgdGltZSBvcGVyYXRpb25zIGFuZCB2YXJpYWJsZXMKICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbigndGltZScsIFsndGltZW1vZHVsZS5jJywgJ190aW1lLmMnXSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXM9bWF0aF9saWJzKSApCi0gICAgICAgIGV4dHMuYXBwZW5kKCBFeHRlbnNpb24oJ19kYXRldGltZScsIFsnX2RhdGV0aW1lbW9kdWxlLmMnLCAnX3RpbWUuYyddLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcz1tYXRoX2xpYnMpICkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXM9dGltZV9saWJzKSApCisgICAgICAgIGV4dHMuYXBwZW5kKCBFeHRlbnNpb24oJ19kYXRldGltZScsIFsnX2RhdGV0aW1lbW9kdWxlLmMnLCAnX3RpbWUuYyddKSApCiAgICAgICAgICMgcmFuZG9tIG51bWJlciBnZW5lcmF0b3IgaW1wbGVtZW50ZWQgaW4gQwogICAgICAgICBleHRzLmFwcGVuZCggRXh0ZW5zaW9uKCJfcmFuZG9tIiwgWyJfcmFuZG9tbW9kdWxlLmMiXSkgKQogICAgICAgICAjIGJpc2VjdApAQCAtNjU5LDcgKzY2Miw3IEBACiAgICAgICAgICAgICBsaWJzID0gWydjcnlwdCddCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBsaWJzID0gW10KLSAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignY3J5cHQnLCBbJ2NyeXB0bW9kdWxlLmMnXSwgbGlicmFyaWVzPWxpYnMpICkKKyAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignX2NyeXB0JywgWydfY3J5cHRtb2R1bGUuYyddLCBsaWJyYXJpZXM9bGlicykgKQogCiAgICAgICAgICMgQ1NWIGZpbGVzCiAgICAgICAgIGV4dHMuYXBwZW5kKCBFeHRlbnNpb24oJ19jc3YnLCBbJ19jc3YuYyddKSApCkBAIC0xMDQ3LDEwICsxMDUwLDE1IEBACiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIHNxbGl0ZV9leHRyYV9saW5rX2FyZ3MgPSAoKQogCisgICAgICAgICAgICBpbmNsdWRlX2RpcnMgPSBbIk1vZHVsZXMvX3NxbGl0ZSJdCisgICAgICAgICAgICAjIE9ubHkgaW5jbHVkZSB0aGUgZGlyZWN0b3J5IHdoZXJlIHNxbGl0ZSB3YXMgZm91bmQgaWYgaXQgZG9lcworICAgICAgICAgICAgIyBub3QgYWxyZWFkeSBleGlzdCBpbiBzZXQgaW5jbHVkZSBkaXJlY3Rvcmllcywgb3RoZXJ3aXNlIHlvdQorICAgICAgICAgICAgIyBjYW4gZW5kIHVwIHdpdGggYSBiYWQgc2VhcmNoIHBhdGggb3JkZXIuCisgICAgICAgICAgICBpZiBzcWxpdGVfaW5jZGlyIG5vdCBpbiBzZWxmLmNvbXBpbGVyLmluY2x1ZGVfZGlyczoKKyAgICAgICAgICAgICAgICBpbmNsdWRlX2RpcnMuYXBwZW5kKHNxbGl0ZV9pbmNkaXIpCiAgICAgICAgICAgICBleHRzLmFwcGVuZChFeHRlbnNpb24oJ19zcWxpdGUzJywgc3FsaXRlX3NyY3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmaW5lX21hY3Jvcz1zcWxpdGVfZGVmaW5lcywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlX2RpcnM9WyJNb2R1bGVzL19zcWxpdGUiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3FsaXRlX2luY2Rpcl0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZV9kaXJzPWluY2x1ZGVfZGlycywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJ5X2RpcnM9c3FsaXRlX2xpYmRpciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydW50aW1lX2xpYnJhcnlfZGlycz1zcWxpdGVfbGliZGlyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhX2xpbmtfYXJncz1zcWxpdGVfZXh0cmFfbGlua19hcmdzLApAQCAtMTE2MCwxNCArMTE2OCwyMSBAQAogCiAgICAgICAgICMgQ3Vyc2VzIHN1cHBvcnQsIHJlcXVpcmluZyB0aGUgU3lzdGVtIFYgdmVyc2lvbiBvZiBjdXJzZXMsIG9mdGVuCiAgICAgICAgICMgcHJvdmlkZWQgYnkgdGhlIG5jdXJzZXMgbGlicmFyeS4KKyAgICAgICAgY3Vyc2VzX2RlZmluZXMgPSBbXQorICAgICAgICBjdXJzZXNfaW5jbHVkZXMgPSBbXQogICAgICAgICBwYW5lbF9saWJyYXJ5ID0gJ3BhbmVsJworICAgICAgICBpZiBjdXJzZXNfbGlicmFyeSA9PSAnbmN1cnNlc3cnOgorICAgICAgICAgICAgY3Vyc2VzX2RlZmluZXMuYXBwZW5kKCgnSEFWRV9OQ1VSU0VTVycsICcxJykpCisgICAgICAgICAgICBjdXJzZXNfaW5jbHVkZXMuYXBwZW5kKCcvdXNyL2luY2x1ZGUvbmN1cnNlc3cnKQorICAgICAgICAgICAgIyBCdWcgMTQ2NDA1NjogSWYgX2N1cnNlcy5zbyBsaW5rcyB3aXRoIG5jdXJzZXN3LAorICAgICAgICAgICAgIyBfY3Vyc2VzX3BhbmVsLnNvIG11c3QgbGluayB3aXRoIHBhbmVsdy4KKyAgICAgICAgICAgIHBhbmVsX2xpYnJhcnkgPSAncGFuZWx3JworCiAgICAgICAgIGlmIGN1cnNlc19saWJyYXJ5LnN0YXJ0c3dpdGgoJ25jdXJzZXMnKToKLSAgICAgICAgICAgIGlmIGN1cnNlc19saWJyYXJ5ID09ICduY3Vyc2Vzdyc6Ci0gICAgICAgICAgICAgICAgIyBCdWcgMTQ2NDA1NjogSWYgX2N1cnNlcy5zbyBsaW5rcyB3aXRoIG5jdXJzZXN3LAotICAgICAgICAgICAgICAgICMgX2N1cnNlc19wYW5lbC5zbyBtdXN0IGxpbmsgd2l0aCBwYW5lbHcuCi0gICAgICAgICAgICAgICAgcGFuZWxfbGlicmFyeSA9ICdwYW5lbHcnCiAgICAgICAgICAgICBjdXJzZXNfbGlicyA9IFtjdXJzZXNfbGlicmFyeV0KICAgICAgICAgICAgIGV4dHMuYXBwZW5kKCBFeHRlbnNpb24oJ19jdXJzZXMnLCBbJ19jdXJzZXNtb2R1bGUuYyddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlX2RpcnM9Y3Vyc2VzX2luY2x1ZGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZpbmVfbWFjcm9zPWN1cnNlc19kZWZpbmVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXMgPSBjdXJzZXNfbGlicykgKQogICAgICAgICBlbGlmIGN1cnNlc19saWJyYXJ5ID09ICdjdXJzZXMnIGFuZCBwbGF0Zm9ybSAhPSAnZGFyd2luJzoKICAgICAgICAgICAgICAgICAjIE9TWCBoYXMgYW4gb2xkIEJlcmtlbGV5IGN1cnNlcywgbm90IGdvb2QgZW5vdWdoIGZvcgpAQCAtMTE4MCw2ICsxMTk1LDcgQEAKICAgICAgICAgICAgICAgICBjdXJzZXNfbGlicyA9IFsnY3Vyc2VzJ10KIAogICAgICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignX2N1cnNlcycsIFsnX2N1cnNlc21vZHVsZS5jJ10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmluZV9tYWNyb3M9Y3Vyc2VzX2RlZmluZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcyA9IGN1cnNlc19saWJzKSApCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBtaXNzaW5nLmFwcGVuZCgnX2N1cnNlcycpCkBAIC0xMTg4LDYgKzEyMDQsNyBAQAogICAgICAgICBpZiAobW9kdWxlX2VuYWJsZWQoZXh0cywgJ19jdXJzZXMnKSBhbmQKICAgICAgICAgICAgIHNlbGYuY29tcGlsZXIuZmluZF9saWJyYXJ5X2ZpbGUobGliX2RpcnMsIHBhbmVsX2xpYnJhcnkpKToKICAgICAgICAgICAgIGV4dHMuYXBwZW5kKCBFeHRlbnNpb24oJ19jdXJzZXNfcGFuZWwnLCBbJ19jdXJzZXNfcGFuZWwuYyddLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlX2RpcnM9Y3Vyc2VzX2luY2x1ZGVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJyYXJpZXMgPSBbcGFuZWxfbGlicmFyeV0gKyBjdXJzZXNfbGlicykgKQogICAgICAgICBlbHNlOgogICAgICAgICAgICAgbWlzc2luZy5hcHBlbmQoJ19jdXJzZXNfcGFuZWwnKQpAQCAtMTI1NiwxMSArMTI3MywxOCBAQAogICAgICAgICAgICAgICAgIGJ6Ml9leHRyYV9saW5rX2FyZ3MgPSAoJy1XbCwtc2VhcmNoX3BhdGhzX2ZpcnN0JywpCiAgICAgICAgICAgICBlbHNlOgogICAgICAgICAgICAgICAgIGJ6Ml9leHRyYV9saW5rX2FyZ3MgPSAoKQotICAgICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignYnoyJywgWydiejJtb2R1bGUuYyddLAorICAgICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignX2J6MicsIFsnX2J6Mm1vZHVsZS5jJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnJhcmllcyA9IFsnYnoyJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhX2xpbmtfYXJncyA9IGJ6Ml9leHRyYV9saW5rX2FyZ3MpICkKICAgICAgICAgZWxzZToKLSAgICAgICAgICAgIG1pc3NpbmcuYXBwZW5kKCdiejInKQorICAgICAgICAgICAgbWlzc2luZy5hcHBlbmQoJ19iejInKQorCisgICAgICAgICMgTFpNQSBjb21wcmVzc2lvbiBzdXBwb3J0LgorICAgICAgICBpZiBzZWxmLmNvbXBpbGVyLmZpbmRfbGlicmFyeV9maWxlKGxpYl9kaXJzLCAnbHptYScpOgorICAgICAgICAgICAgZXh0cy5hcHBlbmQoIEV4dGVuc2lvbignX2x6bWEnLCBbJ19sem1hbW9kdWxlLmMnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlicmFyaWVzID0gWydsem1hJ10pICkKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIG1pc3NpbmcuYXBwZW5kKCdfbHptYScpCiAKICAgICAgICAgIyBJbnRlcmZhY2UgdG8gdGhlIEV4cGF0IFhNTCBwYXJzZXIKICAgICAgICAgIwpAQCAtMTM1MywxNCArMTM3NywxMSBAQAogICAgICAgICBpZiBwbGF0Zm9ybSA9PSAnd2luMzInOgogICAgICAgICAgICAgbXVsdGlwcm9jZXNzaW5nX3NyY3MgPSBbICdfbXVsdGlwcm9jZXNzaW5nL211bHRpcHJvY2Vzc2luZy5jJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnX211bHRpcHJvY2Vzc2luZy9zZW1hcGhvcmUuYycsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ19tdWx0aXByb2Nlc3NpbmcvcGlwZV9jb25uZWN0aW9uLmMnLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdfbXVsdGlwcm9jZXNzaW5nL3NvY2tldF9jb25uZWN0aW9uLmMnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdfbXVsdGlwcm9jZXNzaW5nL3dpbjMyX2Z1bmN0aW9ucy5jJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdCiAKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG11bHRpcHJvY2Vzc2luZ19zcmNzID0gWyAnX211bHRpcHJvY2Vzc2luZy9tdWx0aXByb2Nlc3NpbmcuYycsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ19tdWx0aXByb2Nlc3Npbmcvc29ja2V0X2Nvbm5lY3Rpb24uYycKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgaWYgKHN5c2NvbmZpZy5nZXRfY29uZmlnX3ZhcignSEFWRV9TRU1fT1BFTicpIGFuZCBub3QKICAgICAgICAgICAgICAgICBzeXNjb25maWcuZ2V0X2NvbmZpZ192YXIoJ1BPU0lYX1NFTUFQSE9SRVNfTk9UX0VOQUJMRUQnKSk6CkBAIC0xMzc1LDkgKzEzOTYsNyBAQAogICAgICAgICAjIEVuZCBtdWx0aXByb2Nlc3NpbmcKIAogICAgICAgICAjIFBsYXRmb3JtLXNwZWNpZmljIGxpYnJhcmllcwotICAgICAgICBpZiAocGxhdGZvcm0gaW4gKCdsaW51eDInLCAnZnJlZWJzZDQnLCAnZnJlZWJzZDUnLCAnZnJlZWJzZDYnLAotICAgICAgICAgICAgICAgICAgICAgICAgJ2ZyZWVic2Q3JywgJ2ZyZWVic2Q4JykKLSAgICAgICAgICAgIG9yIHBsYXRmb3JtLnN0YXJ0c3dpdGgoImdudWtmcmVlYnNkIikpOgorICAgICAgICBpZiBwbGF0Zm9ybS5zdGFydHN3aXRoKCgnbGludXgnLCAnZnJlZWJzZCcsICdnbnVrZnJlZWJzZCcpKToKICAgICAgICAgICAgIGV4dHMuYXBwZW5kKCBFeHRlbnNpb24oJ29zc2F1ZGlvZGV2JywgWydvc3NhdWRpb2Rldi5jJ10pICkKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIG1pc3NpbmcuYXBwZW5kKCdvc3NhdWRpb2RldicpCkBAIC0xNzgwLDYgKzE3OTksMTMgQEAKICAgICAgICAgaW5zdGFsbC5pbml0aWFsaXplX29wdGlvbnMoc2VsZikKICAgICAgICAgc2VsZi53YXJuX2Rpcj0wCiAKKyAgICAjIEN1c3RvbWl6ZSBzdWJjb21tYW5kcyB0byBub3QgaW5zdGFsbCBhbiBlZ2ctaW5mbyBmaWxlIGZvciBQeXRob24KKyAgICBzdWJfY29tbWFuZHMgPSBbKCdpbnN0YWxsX2xpYicsIGluc3RhbGwuaGFzX2xpYiksCisgICAgICAgICAgICAgICAgICAgICgnaW5zdGFsbF9oZWFkZXJzJywgaW5zdGFsbC5oYXNfaGVhZGVycyksCisgICAgICAgICAgICAgICAgICAgICgnaW5zdGFsbF9zY3JpcHRzJywgaW5zdGFsbC5oYXNfc2NyaXB0cyksCisgICAgICAgICAgICAgICAgICAgICgnaW5zdGFsbF9kYXRhJywgaW5zdGFsbC5oYXNfZGF0YSldCisKKwogY2xhc3MgUHlCdWlsZEluc3RhbGxMaWIoaW5zdGFsbF9saWIpOgogICAgICMgRG8gZXhhY3RseSB3aGF0IGluc3RhbGxfbGliIGRvZXMgYnV0IG1ha2Ugc3VyZSBjb3JyZWN0IGFjY2VzcyBtb2RlcyBnZXQKICAgICAjIHNldCBvbiBpbnN0YWxsZWQgZGlyZWN0b3JpZXMgYW5kIGZpbGVzLiBBbGwgaW5zdGFsbGVkIGZpbGVzIHdpdGggZ2V0CkBAIC0xODkyLDcgKzE5MTgsNyBAQAogICAgICAgICAgICMgY2hlY2sgdGhlIFB5QnVpbGRTY3JpcHRzIGNvbW1hbmQgYWJvdmUsIGFuZCBjaGFuZ2UgdGhlIGxpbmtzCiAgICAgICAgICAgIyBjcmVhdGVkIGJ5IHRoZSBiaW5pbnN0YWxsIHRhcmdldCBpbiBNYWtlZmlsZS5wcmUuaW4KICAgICAgICAgICBzY3JpcHRzID0gWyJUb29scy9zY3JpcHRzL3B5ZG9jMyIsICJUb29scy9zY3JpcHRzL2lkbGUzIiwKLSAgICAgICAgICAgICAgICAgICAgICJUb29scy9zY3JpcHRzLzJ0bzMiXQorICAgICAgICAgICAgICAgICAgICAgIlRvb2xzL3NjcmlwdHMvMnRvMyIsICJUb29scy9zY3JpcHRzL3B5c2V0dXAzIl0KICAgICAgICAgKQogCiAjIC0taW5zdGFsbC1wbGF0bGliCg==